aboutsummaryrefslogtreecommitdiffstats
path: root/testing
diff options
context:
space:
mode:
Diffstat (limited to 'testing')
-rw-r--r--testing/3proxy/APKBUILD15
-rw-r--r--testing/6cord/6cord.post-install4
-rw-r--r--testing/6cord/APKBUILD27
-rw-r--r--testing/a2jmidid/APKBUILD10
-rw-r--r--testing/abc/APKBUILD29
-rw-r--r--testing/acme-tiny/APKBUILD36
-rw-r--r--testing/acmed/APKBUILD74
-rw-r--r--testing/acmed/Cargo.lock853
-rw-r--r--testing/acmed/acmed.confd8
-rw-r--r--testing/acmed/acmed.initd19
-rw-r--r--testing/acmed/acmed.pre-install6
-rw-r--r--testing/acmetool/APKBUILD26
-rw-r--r--testing/acmetool/go.mod16
-rw-r--r--testing/acmetool/go.sum16
-rw-r--r--testing/actionlint/APKBUILD38
-rw-r--r--testing/admesh/APKBUILD11
-rw-r--r--testing/advancemame/APKBUILD56
-rw-r--r--testing/advancemame/formatsec.patch13
-rw-r--r--testing/advancescan/APKBUILD2
-rw-r--r--testing/adwaita-xfce-icon-theme/APKBUILD26
-rw-r--r--testing/aercbook/APKBUILD30
-rw-r--r--testing/aero2solver/APKBUILD64
-rwxr-xr-xtesting/aero2solver/aero2solver.confd14
-rwxr-xr-xtesting/aero2solver/aero2solver.initd27
-rw-r--r--testing/aero2solver/aero2solver.logrotate5
-rwxr-xr-xtesting/aero2solver/aero2solver.pre-install6
-rw-r--r--testing/afetch/APKBUILD4
-rw-r--r--testing/agate/APKBUILD44
-rw-r--r--testing/agate/agate.confd8
-rw-r--r--testing/agate/agate.initd21
-rw-r--r--testing/agate/agate.pre-install6
-rw-r--r--testing/agg/APKBUILD2
-rw-r--r--testing/aide/APKBUILD42
-rw-r--r--testing/airsonic-advanced/APKBUILD13
-rw-r--r--testing/airsonic-advanced/maven.patch8
-rw-r--r--testing/alarmwakeup/APKBUILD43
-rw-r--r--testing/alda/APKBUILD47
-rw-r--r--testing/alda/alda-player3
-rw-r--r--testing/alpine-lift/APKBUILD6
-rw-r--r--testing/alps/APKBUILD45
-rw-r--r--testing/alps/alps.confd11
-rw-r--r--testing/alps/alps.initd23
-rw-r--r--testing/alps/alps.pre-install6
-rw-r--r--testing/alps/fix-statics-dir.patch26
-rw-r--r--testing/alsa-ucm-conf-asahi/APKBUILD20
-rw-r--r--testing/alttab/APKBUILD6
-rw-r--r--testing/amazon-ssm-agent/001_sanitize_makefile.patch74
-rw-r--r--testing/amazon-ssm-agent/APKBUILD58
-rw-r--r--testing/amazon-ssm-agent/amazon-ssm-agent.initd21
-rw-r--r--testing/amdgpu-fan/APKBUILD36
-rw-r--r--testing/ameba/0001-unexpected-token.patch22
-rw-r--r--testing/ameba/APKBUILD32
-rw-r--r--testing/amiitool/APKBUILD10
-rw-r--r--testing/amiitool/zero-gitversion.patch15
-rw-r--r--testing/ampy/APKBUILD8
-rw-r--r--testing/amsynth/APKBUILD42
-rw-r--r--testing/amule/APKBUILD31
-rw-r--r--testing/anarch/APKBUILD2
-rw-r--r--testing/anari-sdk/APKBUILD64
-rw-r--r--testing/android-apkeep/APKBUILD50
-rw-r--r--testing/android-apktool/APKBUILD9
-rw-r--r--testing/android-file-transfer/APKBUILD46
-rw-r--r--testing/android-translation-layer/APKBUILD48
-rw-r--r--testing/android-udev-rules/APKBUILD27
-rw-r--r--testing/angband/APKBUILD54
-rw-r--r--testing/anime4kcpp/APKBUILD66
-rw-r--r--testing/anki/APKBUILD269
-rw-r--r--testing/anki/BUILD.bazel-i18n10
-rw-r--r--testing/anki/BUILD.bazel-pylib-rsbridge12
-rw-r--r--testing/anki/BUILD.bazel-rslib-i18n10
-rw-r--r--testing/anki/BUILD.bazel-rust_output-librsbridge7
-rw-r--r--testing/anki/BUILD.bazel-rust_output-strings_json7
-rw-r--r--testing/anki/disable-git-checks.patch30
-rw-r--r--testing/anki/dprint-update-for-musl-aarch64.patch11
-rw-r--r--testing/anki/local_ftl_repos.patch55
-rw-r--r--testing/anki/no-update.patch13
-rw-r--r--testing/anki/no_orjson.patch24
-rw-r--r--testing/anki/node_repositories.patch24
-rw-r--r--testing/anki/protoc_repository.patch31
-rw-r--r--testing/anki/pylib_musllinux.patch14
-rw-r--r--testing/anki/rust_output.patch25
-rw-r--r--testing/anki/scripts_status.patch7
-rw-r--r--testing/anki/strip-formatter-deps.patch9
-rw-r--r--testing/anki/strip-type-checking-deps.patch23
-rw-r--r--testing/anki/waitress_asyncore_use_poll.patch15
-rw-r--r--testing/ansible-bender/APKBUILD48
-rw-r--r--testing/ansiweather/APKBUILD25
-rw-r--r--testing/antibody/APKBUILD5
-rw-r--r--testing/apache-mod-auth-gssapi/APKBUILD12
-rw-r--r--testing/apache-mod-auth-openidc/APKBUILD29
-rw-r--r--testing/apache-mod-md/APKBUILD36
-rw-r--r--testing/apache2-mod-perl/APKBUILD5
-rw-r--r--testing/aparte/APKBUILD41
-rw-r--r--testing/apk-snap/APKBUILD32
-rwxr-xr-xtesting/apk-snap/apk-snap.post-deinstall36
-rwxr-xr-xtesting/apk-snap/apk-snap.post-install46
-rwxr-xr-xtesting/apk-snap/apk-snap.post-upgrade46
-rw-r--r--testing/apk-tools3/APKBUILD85
-rw-r--r--testing/apko/APKBUILD42
-rw-r--r--testing/apmpkg/APKBUILD9
-rw-r--r--testing/apollo/APKBUILD33
-rw-r--r--testing/apollo/apollo.initd26
-rw-r--r--testing/aports-glmr/APKBUILD6
-rw-r--r--testing/apostrophe/APKBUILD42
-rw-r--r--testing/apostrophe/dont-require-py-gettext.patch13
-rw-r--r--testing/apprise/APKBUILD40
-rw-r--r--testing/apptainer/APKBUILD53
-rw-r--r--testing/aprx/APKBUILD49
-rw-r--r--testing/aprx/aprx.confd5
-rw-r--r--testing/aprx/aprx.initd27
-rw-r--r--testing/aprx/aprx.post-install4
-rw-r--r--testing/aprx/aprx.pre-install8
-rw-r--r--testing/apt-dater/APKBUILD4
-rw-r--r--testing/apt-mirror/APKBUILD23
-rw-r--r--testing/aptdec/APKBUILD52
-rw-r--r--testing/aptdec/soname-dynlink.patch37
-rw-r--r--testing/apulse/APKBUILD2
-rw-r--r--testing/aqemu/APKBUILD36
-rw-r--r--testing/aqemu/appdata.patch13
-rw-r--r--testing/aqemu/fix-qt-segfault.patch121
-rw-r--r--testing/arachsys-containers/APKBUILD29
-rw-r--r--testing/aravis/APKBUILD58
-rw-r--r--testing/aravis/aravis-0.8.22.patch40
-rw-r--r--testing/arc-theme/APKBUILD29
-rw-r--r--testing/archiso/APKBUILD35
-rw-r--r--testing/archlinux-keyring/APKBUILD19
-rw-r--r--testing/archlinux-keyring/archlinux-keyring.post-install7
l---------testing/archlinux-keyring/archlinux-keyring.post-upgrade1
-rw-r--r--testing/arcticons-icon-theme/APKBUILD35
-rw-r--r--testing/ardour/APKBUILD41
-rw-r--r--testing/ardour/always-link-execinfo.patch13
-rw-r--r--testing/ardour/disable-backtrace.patch13
-rw-r--r--testing/arj/APKBUILD4
-rw-r--r--testing/armagetronad/APKBUILD5
-rw-r--r--testing/art_standalone/APKBUILD77
-rw-r--r--testing/artyfx/APKBUILD48
-rw-r--r--testing/artyfx/fix-sse.patch20
-rw-r--r--testing/asahi-audio/APKBUILD31
-rw-r--r--testing/asahi-fwextract/APKBUILD26
-rw-r--r--testing/asahi-scripts/APKBUILD28
-rw-r--r--testing/asciinema-rs/APKBUILD22
-rw-r--r--testing/asciinema-rs/openssl3.patch2546
-rw-r--r--testing/asteroid-alarmclock/APKBUILD14
-rw-r--r--testing/asteroid-btsyncd/APKBUILD17
-rw-r--r--testing/asteroid-calculator/APKBUILD14
-rw-r--r--testing/asteroid-calendar/APKBUILD14
-rw-r--r--testing/asteroid-camera/APKBUILD13
-rw-r--r--testing/asteroid-compass/APKBUILD16
-rw-r--r--testing/asteroid-diamonds/APKBUILD39
-rw-r--r--testing/asteroid-flashlight/APKBUILD14
-rw-r--r--testing/asteroid-hrm/APKBUILD14
-rw-r--r--testing/asteroid-icons-ion/APKBUILD13
-rw-r--r--testing/asteroid-languages/APKBUILD8
-rw-r--r--testing/asteroid-launcher/APKBUILD32
-rw-r--r--testing/asteroid-music/APKBUILD14
-rw-r--r--testing/asteroid-settings/APKBUILD14
-rw-r--r--testing/asteroid-stopwatch/APKBUILD14
-rw-r--r--testing/asteroid-timer/APKBUILD14
-rw-r--r--testing/asteroid-wallpapers/APKBUILD11
-rw-r--r--testing/asteroid-weather/APKBUILD14
-rw-r--r--testing/asuran-cli/APKBUILD41
-rw-r--r--testing/asymptote/APKBUILD17
-rw-r--r--testing/asymptote/fix-nullopt-not-declared.patch14
-rw-r--r--testing/async-profiler/APKBUILD39
-rw-r--r--testing/async-profiler/thread-smoke-test_should_do_some_real_work.patch32
-rw-r--r--testing/atari800/APKBUILD9
-rw-r--r--testing/atlantik/APKBUILD53
-rw-r--r--testing/atlas/APKBUILD53
-rw-r--r--testing/atomicparsley/APKBUILD26
-rw-r--r--testing/atool/APKBUILD2
-rw-r--r--testing/aubio/APKBUILD38
-rw-r--r--testing/aubio/unversioned-python.patch24
-rw-r--r--testing/aufs-util/APKBUILD6
-rw-r--r--testing/authenticator-rs/APKBUILD37
-rw-r--r--testing/autobrr/APKBUILD58
-rw-r--r--testing/autobrr/autobrr.confd9
-rw-r--r--testing/autobrr/autobrr.initd22
-rw-r--r--testing/autobrr/autobrr.pre-install6
-rw-r--r--testing/autorandr/APKBUILD51
-rw-r--r--testing/autorestic/APKBUILD31
-rw-r--r--testing/autoscan/APKBUILD50
-rw-r--r--testing/autoscan/autoscan.confd6
-rw-r--r--testing/autoscan/autoscan.initd29
-rw-r--r--testing/autoscan/autoscan.pre-install6
-rw-r--r--testing/autotiling/APKBUILD30
-rw-r--r--testing/autotrash/APKBUILD16
-rw-r--r--testing/avara/APKBUILD54
-rw-r--r--testing/avara/avara2
-rw-r--r--testing/avara/fix-includes.patch23
-rw-r--r--testing/avara/nullptr.patch17
-rw-r--r--testing/avarice/APKBUILD27
-rw-r--r--testing/avdl/APKBUILD6
-rw-r--r--testing/avida/APKBUILD19
-rw-r--r--testing/avida/musl123.patch13
-rw-r--r--testing/avr-libc-git/APKBUILD41
-rw-r--r--testing/avra/APKBUILD27
-rw-r--r--testing/aws-session-manager-plugin/001_correct_makefile.patch50
-rw-r--r--testing/aws-session-manager-plugin/APKBUILD55
-rw-r--r--testing/aws-session-manager-plugin/session-manager-plugin.initd20
-rw-r--r--testing/aws-session-manager-plugin/ssmcli.initd20
-rw-r--r--testing/awscli-plugin-endpoint/APKBUILD27
-rw-r--r--testing/awslogs/APKBUILD28
-rw-r--r--testing/azorius/APKBUILD74
-rw-r--r--testing/azorius/azorius.confd16
-rw-r--r--testing/azorius/azorius.initd94
-rw-r--r--testing/azorius/azorius.pre-install11
-rw-r--r--testing/azorius/upgradedb.patch11
-rw-r--r--testing/azote/APKBUILD32
-rw-r--r--testing/azpainter/APKBUILD37
-rw-r--r--testing/azure-iot-sdk-c-static/001-c-utility.patch13
-rw-r--r--testing/azure-iot-sdk-c-static/APKBUILD66
-rw-r--r--testing/b2sum/APKBUILD2
-rw-r--r--testing/b3sum/APKBUILD33
-rw-r--r--testing/b4/APKBUILD32
-rw-r--r--testing/babashka/APKBUILD76
-rw-r--r--testing/backup-manager/APKBUILD2
-rw-r--r--testing/baikal/APKBUILD69
-rw-r--r--testing/baikal/baikal_sqlite.post-install10
-rw-r--r--testing/bake/01-no-backtrace-on-musl.patch11
-rw-r--r--testing/bake/APKBUILD29
-rw-r--r--testing/bananui-clock/APKBUILD34
-rw-r--r--testing/bananui-daemons/APKBUILD33
-rw-r--r--testing/bananui-shell/APKBUILD43
-rw-r--r--testing/bananui/APKBUILD60
-rw-r--r--testing/bankstown-lv2/APKBUILD28
-rw-r--r--testing/barcode/APKBUILD17
-rw-r--r--testing/barcode/common.patch25
-rw-r--r--testing/barman/APKBUILD18
-rw-r--r--testing/barnyard2/APKBUILD5
-rw-r--r--testing/barrier/APKBUILD12
-rw-r--r--testing/bartib/APKBUILD14
-rw-r--r--testing/base64c/APKBUILD47
-rw-r--r--testing/base64c/no-valgrind.patch26
-rw-r--r--testing/bazel2/APKBUILD90
-rw-r--r--testing/bazel3/APKBUILD99
-rw-r--r--testing/bazel3/backport-java11-support.patch600
-rw-r--r--testing/bazel3/patch_TEMP_FAILURE_RETRY.patch20
-rw-r--r--testing/bazel4/APKBUILD143
-rw-r--r--testing/bazel4/patch_default_system_java_toolchain.patch68
-rw-r--r--testing/bazel4/patch_do_not_use_glibc_prebuilt.patch64
-rw-r--r--testing/bazel4/patch_fix_jdk_13.patch32
-rw-r--r--testing/bazel4/patch_ftbfs_gcc11_1.patch24
-rw-r--r--testing/bazel4/patch_ftbfs_gcc11_2.patch31
-rw-r--r--testing/bazel4/patch_ftbfs_gcc11_3.patch38
-rw-r--r--testing/bazel4/patch_ftbfs_gcc11_4.patch43
-rw-r--r--testing/bazel4/patch_ftbfs_gcc11_5.patch34
-rw-r--r--testing/bazel4/patch_remove_illegal_reflective.patch29
-rw-r--r--testing/bazel4/patch_stop_hardcoding_verify_none_1.patch78
-rw-r--r--testing/bazel4/patch_stop_hardcoding_verify_none_2.patch53
-rw-r--r--testing/bazel5/0001-Do-not-use-prebuilt-binaries.patch35
-rw-r--r--testing/bazel5/0002-Prefer-local_jdk-instead-of-remote_jdk11.patch75
-rw-r--r--testing/bazel5/0003-Make-generate_bash_completion-compatible-with-busybo.patch28
-rw-r--r--testing/bazel5/0004-Use-nojdk-bazel-for-generating-the-bash-completion.patch34
-rw-r--r--testing/bazel5/APKBUILD70
-rw-r--r--testing/bazel6/0001-Do-not-use-prebuilt-binaries.patch20
-rw-r--r--testing/bazel6/0002-Prefer-local_jdk-instead-of-remote_jdk11.patch61
-rw-r--r--testing/bazel6/0003-Make-generate_bash_completion-compatible-with-busybo.patch13
-rw-r--r--testing/bazel6/0004-Use-nojdk-bazel-for-generating-the-bash-completion.patch22
-rw-r--r--testing/bazel6/APKBUILD68
-rw-r--r--testing/bchunk/APKBUILD2
-rw-r--r--testing/bcnm/APKBUILD8
-rw-r--r--testing/bdfr/APKBUILD45
-rw-r--r--testing/beancount-language-server/APKBUILD30
-rw-r--r--testing/beard/APKBUILD6
-rw-r--r--testing/bees/10-pthread_getname1.patch32
-rw-r--r--testing/bees/APKBUILD14
-rw-r--r--testing/bees/no-werror.patch11
-rw-r--r--testing/bees/ppc64le_fix_min_compare.patch11
-rw-r--r--testing/belcard/APKBUILD31
-rw-r--r--testing/belcard/fix-cmake-path.patch13
-rw-r--r--testing/belle-sip/APKBUILD28
-rw-r--r--testing/belr/APKBUILD19
-rw-r--r--testing/bento4/APKBUILD44
-rw-r--r--testing/bento4/riscv64.patch11
-rw-r--r--testing/berry-lang/APKBUILD31
-rw-r--r--testing/bettercap/APKBUILD7
-rw-r--r--testing/betula/APKBUILD52
-rw-r--r--testing/betula/betula.confd3
-rw-r--r--testing/betula/betula.initd18
-rw-r--r--testing/betula/betula.pre-install9
-rw-r--r--testing/bgpq4/APKBUILD34
-rw-r--r--testing/bgs/APKBUILD2
-rw-r--r--testing/biboumi/APKBUILD36
-rw-r--r--testing/bigbang/APKBUILD61
-rwxr-xr-xtesting/bigbang/cmakelists.patch39
-rw-r--r--testing/bigbang/gcc11.patch10
-rw-r--r--testing/bigbang/werror.patch11
-rw-r--r--testing/bindfs/APKBUILD5
-rw-r--r--testing/binwalk/APKBUILD14
-rw-r--r--testing/biome/APKBUILD42
-rw-r--r--testing/biometryd/0001-Add-missing-headers-for-gcc-13.patch37
-rw-r--r--testing/biometryd/0001-Use-CMAKE_INSTALL_FULL_-for-installing.patch125
-rw-r--r--testing/biometryd/0004-disable_flaky_test.patch13
-rw-r--r--testing/biometryd/0005-add-missing-types-header.patch24
-rw-r--r--testing/biometryd/0006-direct-path-to-qmlplugindump.patch25
-rw-r--r--testing/biometryd/APKBUILD65
-rw-r--r--testing/bionic_translation/APKBUILD39
-rw-r--r--testing/birdtray/APKBUILD2
-rw-r--r--testing/bitlbee-facebook/APKBUILD11
-rw-r--r--testing/bitlbee-mastodon/APKBUILD6
-rw-r--r--testing/bitritter/APKBUILD53
-rw-r--r--testing/bitritter/bitritter.desktop12
-rw-r--r--testing/bitrot/APKBUILD36
-rw-r--r--testing/blackbox/APKBUILD6
-rw-r--r--testing/blackbox_exporter/APKBUILD50
-rw-r--r--testing/blackbox_exporter/blackbox.yml33
-rw-r--r--testing/blackbox_exporter/blackbox_exporter.confd6
-rw-r--r--testing/blackbox_exporter/blackbox_exporter.initd16
-rw-r--r--testing/bliss/APKBUILD36
-rw-r--r--testing/blocky/APKBUILD32
-rw-r--r--testing/bm818-tools/APKBUILD47
-rw-r--r--testing/bmkdep/APKBUILD32
-rw-r--r--testing/boa-cli/APKBUILD38
-rw-r--r--testing/bobcat/APKBUILD12
-rw-r--r--testing/boinc/APKBUILD69
-rw-r--r--testing/bombadillo/APKBUILD32
-rw-r--r--testing/bonzomatic/APKBUILD39
-rw-r--r--testing/booster/0001-Load-efivarfs-before-mounting-the-filesystem.patch64
-rw-r--r--testing/booster/0002-generator-add-drivers-ata-to-the-list-of-default-mod.patch22
-rw-r--r--testing/booster/APKBUILD59
-rw-r--r--testing/booster/README.alpine22
-rw-r--r--testing/booster/booster.trigger34
-rw-r--r--testing/booster/booster.yaml8
-rw-r--r--testing/booster/fix-paths.patch25
-rw-r--r--testing/bootinfo/APKBUILD29
-rw-r--r--testing/bootloose/APKBUILD31
-rw-r--r--testing/bootterm/APKBUILD2
-rw-r--r--testing/bordeaux/APKBUILD73
-rw-r--r--testing/bordeaux/bordeaux.confd9
-rw-r--r--testing/bordeaux/bordeaux.initd27
-rw-r--r--testing/bore/APKBUILD36
-rw-r--r--testing/boringproxy/APKBUILD31
-rw-r--r--testing/boson/APKBUILD25
-rw-r--r--testing/boxed-cpp/APKBUILD35
-rw-r--r--testing/boxes/APKBUILD11
-rw-r--r--testing/boxes/fix-test.patch36
-rw-r--r--testing/brial/APKBUILD36
-rw-r--r--testing/brltty/APKBUILD11
-rw-r--r--testing/bsd-games/APKBUILD33
-rw-r--r--testing/btcd/APKBUILD22
-rw-r--r--testing/btcd/fix-test.patch11
-rw-r--r--testing/btfs/APKBUILD6
-rw-r--r--testing/btpd/APKBUILD6
-rw-r--r--testing/buf/APKBUILD73
-rw-r--r--testing/bugsquish/APKBUILD33
-rw-r--r--testing/bugsquish/bugsquish-icon.xpm59
-rw-r--r--testing/bugsquish/bugsquish.desktop12
-rw-r--r--testing/buildcache/APKBUILD14
-rw-r--r--testing/buildcache/include-cstdint.patch20
-rw-r--r--testing/bump2version/APKBUILD8
-rw-r--r--testing/bumprace/APKBUILD56
-rw-r--r--testing/bumprace/bumprace-icon.xpm134
-rw-r--r--testing/bumprace/bumprace.desktop13
-rw-r--r--testing/burp/APKBUILD17
-rw-r--r--testing/butane/APKBUILD28
-rw-r--r--testing/bwrap-oci/APKBUILD2
-rw-r--r--testing/bzip3/APKBUILD40
-rw-r--r--testing/c2rust/0001-link-clang-dynamic.patch232
-rw-r--r--testing/c2rust/0002-use-system-tinycbor.patch64
-rw-r--r--testing/c2rust/APKBUILD80
-rw-r--r--testing/c2rust/df42b55eae9ecfd4380004a513a10526ef8776cf.patch183
-rw-r--r--testing/cachefilesd-inotify/APKBUILD33
-rw-r--r--testing/cachefilesd-inotify/cachefilesd.initd53
-rw-r--r--testing/cadence/APKBUILD15
-rw-r--r--testing/cadence/fix-QPainterPath.patch34
-rw-r--r--testing/caffeine-ng/APKBUILD52
-rw-r--r--testing/caffeine-ng/mandir.patch13
-rw-r--r--testing/cagebreak/APKBUILD39
-rw-r--r--testing/calf/APKBUILD49
-rw-r--r--testing/calibre/0001-calibre-no-update.patch25
-rw-r--r--testing/calibre/APKBUILD115
-rw-r--r--testing/caps/APKBUILD24
-rw-r--r--testing/caps/patch-basics.h.patch36
-rw-r--r--testing/caps2esc/APKBUILD37
-rw-r--r--testing/carapace/APKBUILD40
-rw-r--r--testing/care/APKBUILD10
-rw-r--r--testing/cargo-c/APKBUILD42
-rw-r--r--testing/cargo-crev/APKBUILD39
-rw-r--r--testing/cargo-crev/use-index-guix-from-crates.io.patch38
-rw-r--r--testing/cargo-generate/APKBUILD47
-rw-r--r--testing/cargo-generate/remove-cargo-husky.patch53
-rw-r--r--testing/cargo-leptos/APKBUILD44
-rw-r--r--testing/cargo-machete/APKBUILD40
-rw-r--r--testing/cargo-run-bin/APKBUILD41
-rw-r--r--testing/cargo-shuttle/APKBUILD49
-rw-r--r--testing/cargo-update/APKBUILD51
-rw-r--r--testing/cargo-vendor-filterer/APKBUILD37
-rw-r--r--testing/castero/APKBUILD5
-rw-r--r--testing/castor/APKBUILD7
-rw-r--r--testing/catdoc/APKBUILD2
-rw-r--r--testing/catfish/APKBUILD50
-rw-r--r--testing/catgirl/APKBUILD28
-rw-r--r--testing/cava/APKBUILD8
-rw-r--r--testing/ccrtp/APKBUILD32
-rw-r--r--testing/ccze/APKBUILD14
-rw-r--r--testing/cdba/APKBUILD50
-rw-r--r--testing/cddlib/APKBUILD45
-rw-r--r--testing/cdist/APKBUILD33
-rw-r--r--testing/cdist/python3.10-support.patch47
-rw-r--r--testing/cdogs-sdl/APKBUILD39
-rw-r--r--testing/cdogs-sdl/no-werror.patch13
-rw-r--r--testing/celery/APKBUILD46
-rw-r--r--testing/celery/celery.confd4
-rw-r--r--testing/celery/celery.initd16
-rw-r--r--testing/celery/celery.pre-install7
-rw-r--r--testing/cemu/APKBUILD107
-rw-r--r--testing/cemu/cmake-fixes.patch21
-rw-r--r--testing/cemu/execinfo.patch42
-rw-r--r--testing/ceph17/10-musl-fixes.patch15
-rw-r--r--testing/ceph17/11-dump_time_header_impl.patch34
-rw-r--r--testing/ceph17/11-parse_rfc1123_alt.patch53
-rw-r--r--testing/ceph17/11-s3_expiration_header.patch30
-rw-r--r--testing/ceph17/12-arrow.patch13
-rw-r--r--testing/ceph17/13-liburing.patch14
-rw-r--r--testing/ceph17/20-pci.patch63
-rw-r--r--testing/ceph17/21-cypress.patch14
-rw-r--r--testing/ceph17/30-32bit_fix.patch.noauto110
-rw-r--r--testing/ceph17/30-ubuntu-32bit-fixes.patch.noauto115
-rw-r--r--testing/ceph17/35-fix_ErasureCodeShec.patch17
-rw-r--r--testing/ceph17/38-aio.patch12
-rw-r--r--testing/ceph17/39-req_bytes.patch13
-rw-r--r--testing/ceph17/40-nasm.patch15
-rw-r--r--testing/ceph17/APKBUILD559
-rw-r--r--testing/ceph17/ceph-user.pre-install5
-rw-r--r--testing/ceph17/ceph.confd17
-rw-r--r--testing/ceph17/ceph.initd118
-rw-r--r--testing/certbot-dns-njalla/APKBUILD38
-rw-r--r--testing/certigo/APKBUILD32
-rw-r--r--testing/certstrap/APKBUILD37
-rw-r--r--testing/cffconvert/APKBUILD32
-rw-r--r--testing/cfssl/APKBUILD16
-rw-r--r--testing/cgal/APKBUILD41
-rw-r--r--testing/cgiirc/APKBUILD2
-rw-r--r--testing/cgiirc/cgiirc.post-install43
-rw-r--r--testing/cglm/APKBUILD41
-rw-r--r--testing/cgo/APKBUILD4
-rw-r--r--testing/chamo/APKBUILD4
-rw-r--r--testing/charls/APKBUILD34
-rw-r--r--testing/chathistorysync/APKBUILD30
-rw-r--r--testing/checkpolicy/APKBUILD9
-rw-r--r--testing/chelf/APKBUILD24
-rw-r--r--testing/cherrytree/APKBUILD13
-rw-r--r--testing/chiaki/APKBUILD32
-rw-r--r--testing/chicago95/APKBUILD38
-rw-r--r--testing/chim/APKBUILD42
-rw-r--r--testing/chocolate-doom/APKBUILD4
-rw-r--r--testing/cicada/APKBUILD47
-rw-r--r--testing/cicada/cicada.post-install4
-rw-r--r--testing/cicada/cicada.pre-deinstall4
-rw-r--r--testing/cicada/ulimit.patch25
-rw-r--r--testing/cicada/unbundle-sqlite.patch25
-rw-r--r--testing/cilium-cli/APKBUILD48
-rw-r--r--testing/cimg/APKBUILD12
-rw-r--r--testing/cinny-web/APKBUILD35
-rw-r--r--testing/cinny/0001-disable-tauri-updater.patch25
-rw-r--r--testing/cinny/APKBUILD83
-rw-r--r--testing/cinny/cinny.desktop13
-rw-r--r--testing/cinny/in.cinny.Cinny.appdata.xml.in59
-rw-r--r--testing/cjose/APKBUILD49
-rw-r--r--testing/ck/APKBUILD56
-rw-r--r--testing/ckb-next/983.patch19
-rw-r--r--testing/ckb-next/APKBUILD63
-rw-r--r--testing/clapper/APKBUILD36
-rw-r--r--testing/clash/APKBUILD30
-rwxr-xr-xtesting/clash/clash.initd11
-rw-r--r--testing/clatd/APKBUILD27
-rw-r--r--testing/clementine/APKBUILD12
-rw-r--r--testing/clementine/cxx17.patch73
-rw-r--r--testing/clevis-extra-pins/APKBUILD26
-rw-r--r--testing/clevis/APKBUILD46
-rw-r--r--testing/click/0001-configure.ac-fix-building-against-BusyBox-sed.patch34
-rw-r--r--testing/click/APKBUILD64
-rw-r--r--testing/clinfo/APKBUILD4
-rw-r--r--testing/cliphist/APKBUILD17
-rw-r--r--testing/clipit/APKBUILD7
-rw-r--r--testing/clipman/APKBUILD26
-rw-r--r--testing/cliquer/APKBUILD44
-rw-r--r--[-rwxr-xr-x]testing/cln/APKBUILD53
-rw-r--r--testing/cloud-hypervisor/APKBUILD37
-rw-r--r--testing/cloudflared/APKBUILD45
-rw-r--r--testing/cloudflared/cloudflared.confd1
-rw-r--r--testing/cloudflared/cloudflared.initd12
-rw-r--r--testing/cloudflared/cloudflared.pre-install6
-rw-r--r--testing/cloudflared/config.yml3
-rw-r--r--testing/cloudflared/goflags.patch13
-rw-r--r--testing/cloudfoundry-cli/APKBUILD17
-rw-r--r--testing/cloudfoundry-cli/fix-cgo.patch30
-rw-r--r--testing/cluster-glue/APKBUILD3
-rw-r--r--testing/cm256cc/APKBUILD46
-rw-r--r--testing/cmusfm/APKBUILD11
-rw-r--r--testing/coccinelle/APKBUILD61
-rw-r--r--testing/coccinelle/unit-test-score.binbin0 -> 18964 bytes
-rw-r--r--testing/cocogitto/APKBUILD64
-rw-r--r--testing/code-oss/APKBUILD160
-rwxr-xr-xtesting/code-oss/code-oss.post-install10
-rw-r--r--testing/code-oss/electron21.patch125
-rw-r--r--testing/code-oss/enable-extensions.patch15
-rw-r--r--testing/code-oss/launcher7
-rw-r--r--testing/code-oss/no-git.patch11
-rw-r--r--testing/code-oss/no-res.patch.noauto15
-rw-r--r--testing/code-oss/no-source-maps.patch23
-rw-r--r--testing/code-oss/system-electron.patch.noauto16
-rw-r--r--testing/code-oss/webpack-hash.patch.noauto11
-rw-r--r--testing/codeberg-cli/APKBUILD47
-rw-r--r--testing/codeblocks/0001-v20.03-r12008.patch22
-rw-r--r--testing/codeblocks/0002-v20.03-r12012.patch140
-rw-r--r--testing/codeblocks/0003-fix-missing-sentinel.patch37
-rw-r--r--testing/codeblocks/0004-delete-wxpropgrid.patch188
-rw-r--r--testing/codeblocks/0005-fix-pkgconfig-codeblocks-version.patch11
-rw-r--r--testing/codeblocks/0006-fix-openfileslistplugin-gcc11.patch25
-rw-r--r--testing/codeblocks/APKBUILD234
-rw-r--r--testing/cog/APKBUILD49
-rw-r--r--testing/coin/APKBUILD10
-rw-r--r--testing/cointop/APKBUILD27
-rw-r--r--testing/colorpicker/APKBUILD2
-rw-r--r--testing/comics-downloader/APKBUILD14
-rw-r--r--testing/commoncpp/APKBUILD47
-rw-r--r--testing/compiz/APKBUILD107
-rw-r--r--testing/compiz/basename.patch25
-rw-r--r--testing/compiz/boost.patch27
-rw-r--r--testing/compiz/gtest.patch101
-rw-r--r--testing/compiz/libgen.patch12
-rw-r--r--testing/compiz/opengl.patch60
-rw-r--r--testing/compiz/protobuf.patch12
-rw-r--r--testing/compiz/startup-notification-long.patch19
-rw-r--r--testing/compton-conf/APKBUILD6
-rw-r--r--testing/conduit/APKBUILD66
-rw-r--r--testing/conduit/conduit.confd5
-rw-r--r--testing/conduit/conduit.initd18
-rw-r--r--testing/conduit/conduit.pre-install6
-rw-r--r--testing/conduit/conduit.toml50
-rw-r--r--testing/conduit/riscv64-ring.patch.noauto52
-rw-r--r--testing/conduit/system-sqlite.patch25
-rw-r--r--testing/confy/APKBUILD35
-rw-r--r--testing/conntracct/APKBUILD20
-rw-r--r--testing/conntracct/conntracct.initd1
-rw-r--r--testing/conntracct/fix-cgo.patch10
-rw-r--r--testing/consolation/APKBUILD31
-rw-r--r--testing/consolation/consolation.initd29
-rw-r--r--testing/console_bridge/APKBUILD6
-rw-r--r--testing/consul-replicate/APKBUILD23
-rw-r--r--testing/contour/APKBUILD82
-rw-r--r--testing/contour/libunicode-fix-catch-in-cmake.patch19
-rw-r--r--testing/convert2json/APKBUILD41
-rw-r--r--testing/copyq/APKBUILD41
-rw-r--r--testing/coq/APKBUILD72
-rw-r--r--testing/coreboot-ectool/APKBUILD26
-rw-r--r--testing/coreboot-ectool/fix-makefile.patch22
-rw-r--r--testing/coreboot-tools/APKBUILD74
-rw-r--r--testing/corectrl/APKBUILD48
-rw-r--r--testing/corerad/APKBUILD43
-rw-r--r--testing/corerad/corerad.initd13
-rw-r--r--testing/corerad/corerad.pre-install6
-rw-r--r--testing/corkscrew/APKBUILD54
-rw-r--r--testing/corkscrew/corkscrew-2.0-from-debian-readme.patch20
-rw-r--r--testing/corkscrew/corkscrew-2.0-typo.patch11
-rw-r--r--testing/corkscrew/corkscrew.197
-rw-r--r--testing/coventry/APKBUILD49
-rw-r--r--testing/coventry/coventry.initd26
-rw-r--r--testing/cowsay/APKBUILD2
-rw-r--r--testing/coxeter/APKBUILD49
-rw-r--r--testing/coxeter/add-sagemath-interface.patch101
-rw-r--r--testing/coxeter/makefile12
-rw-r--r--testing/coxeter/test-input9
-rw-r--r--testing/coxeter/test-output13
-rw-r--r--testing/cozy/APKBUILD58
-rw-r--r--testing/cozy/fix-legacy-version.patch76
-rw-r--r--testing/cpplint/APKBUILD42
-rw-r--r--testing/cproc/APKBUILD35
-rw-r--r--testing/cpu-x/APKBUILD64
-rw-r--r--testing/cpu-x/no-bracktrace.patch41
-rw-r--r--testing/cpuburn/APKBUILD4
-rw-r--r--testing/cpufetch/APKBUILD6
-rw-r--r--testing/crazydiskinfo/APKBUILD2
-rw-r--r--testing/create-tauri-app/APKBUILD43
-rw-r--r--testing/createrepo_c/APKBUILD51
-rw-r--r--testing/createrepo_c/no-bash.patch10
-rw-r--r--testing/cri-o/APKBUILD61
-rw-r--r--testing/cri-o/crio.conf6
-rwxr-xr-xtesting/cri-o/crio.initd2
-rw-r--r--testing/cri-o/fix-test.patch94
-rw-r--r--testing/cri-o/makefile-fix-install.patch20
-rw-r--r--testing/cri-o/remove-systemd-files.patch4
-rw-r--r--testing/cri-tools/APKBUILD24
-rw-r--r--testing/crispy-doom/APKBUILD4
-rw-r--r--testing/criu/APKBUILD68
-rw-r--r--testing/criu/lfs64-test.patch20
-rw-r--r--testing/criu/lfs64.patch58
-rw-r--r--testing/crossplane/APKBUILD29
-rw-r--r--testing/crosstool-ng/0001-sunrpc.diff33
-rw-r--r--testing/crosstool-ng/APKBUILD39
-rw-r--r--testing/crowdsec/APKBUILD97
-rw-r--r--testing/crowdsec/crowdsec.initd18
-rw-r--r--testing/crowdsec/system-sqlite.patch11
-rw-r--r--testing/crust/APKBUILD42
-rw-r--r--testing/crypto++/APKBUILD32
-rw-r--r--testing/cscope/APKBUILD4
-rw-r--r--testing/csfml/APKBUILD16
-rw-r--r--testing/csmith/APKBUILD2
-rw-r--r--testing/csol/20-fix-doc-install.patch10
-rw-r--r--testing/csol/APKBUILD6
-rw-r--r--testing/cssmin/APKBUILD25
-rw-r--r--testing/ctop/APKBUILD25
-rw-r--r--testing/ctorrent-dnh/APKBUILD4
-rw-r--r--testing/ctypes-sh/APKBUILD51
-rw-r--r--testing/cue-cli/APKBUILD52
-rw-r--r--testing/cups-pdf/APKBUILD9
-rw-r--r--testing/cura/APKBUILD43
-rw-r--r--testing/cura/AppDesktopData.patch58
-rw-r--r--testing/cura/CuraVersion.patch16
-rw-r--r--testing/cura/cmake-helpers.patch95
-rw-r--r--testing/cura/cmake.patch85
-rw-r--r--testing/curlftpfs/APKBUILD2
-rw-r--r--testing/curlpp/APKBUILD2
-rw-r--r--testing/curtail/APKBUILD27
-rw-r--r--testing/curtail/fix-bindtextdomain.patch13
-rw-r--r--testing/cutechess/APKBUILD64
-rw-r--r--testing/cvise/APKBUILD71
-rw-r--r--testing/cvs-fast-export/01-compile-flags.patch35
-rw-r--r--testing/cvs-fast-export/APKBUILD29
-rw-r--r--testing/cvs-fast-export/disable-test-sporadic.patch23
-rw-r--r--testing/cvs-fast-export/python3.patch184
-rw-r--r--testing/cxxopts/APKBUILD35
-rw-r--r--testing/cyclone-stage0/APKBUILD38
-rw-r--r--testing/cyclone/APKBUILD49
-rw-r--r--testing/cyrus-sasl-xoauth2/APKBUILD2
-rw-r--r--testing/cz-viator-hourglass-black/APKBUILD1
-rw-r--r--testing/d-spy/APKBUILD30
-rw-r--r--testing/daemontools-encore/APKBUILD39
-rw-r--r--testing/daemontools-encore/add-missing-setuser-man-page.patch68
-rw-r--r--testing/daemontools-encore/svscan.initd28
-rw-r--r--testing/daemontools/APKBUILD2
-rw-r--r--testing/daktilo/APKBUILD50
-rw-r--r--testing/dapr-cli/APKBUILD54
-rw-r--r--testing/darcs/APKBUILD62
-rw-r--r--testing/darcs/cabal.project.freeze217
-rw-r--r--testing/dart-sass/APKBUILD56
-rw-r--r--testing/dart-sass/lock.patch672
-rw-r--r--testing/dart-sass/sass3
-rw-r--r--testing/dart-stage0/APKBUILD62
-rw-r--r--testing/dart/APKBUILD237
-rw-r--r--testing/dart/build-config.patch20
-rw-r--r--testing/dart/gcc13.patch20
-rw-r--r--testing/dart/no-werror.patch13
-rw-r--r--testing/dart/unbundle.patch439
-rw-r--r--testing/dart/where-we-are-heading-prefixes-are-not-needed.patch29
-rw-r--r--testing/darts-clone/APKBUILD1
-rw-r--r--testing/dasht/APKBUILD30
-rw-r--r--testing/datamash/APKBUILD24
-rw-r--r--testing/dbus-broker/APKBUILD29
-rw-r--r--testing/dbus-waiter/APKBUILD35
-rw-r--r--testing/dcmtk/10-offile.patch70
-rw-r--r--testing/dcmtk/20-thai.patch35
-rw-r--r--testing/dcmtk/30-dont_export_all_executables.patch24
-rw-r--r--testing/dcmtk/40-dcmqrscp.patch81
-rw-r--r--testing/dcmtk/APKBUILD105
-rw-r--r--testing/dcmtk/dcmtk.initd21
-rwxr-xr-xtesting/dcmtk/dcmtk.pre-install6
-rw-r--r--testing/dcnnt/APKBUILD33
-rw-r--r--testing/ddcci-driver-linux-src/APKBUILD39
-rw-r--r--testing/ddclient/APKBUILD50
-rwxr-xr-xtesting/ddclient/ddclient.initd22
-rw-r--r--testing/ddclient/ddclient.pre-install4
-rw-r--r--testing/ddclient/pid-path.patch13
-rw-r--r--testing/ddcutil/APKBUILD33
-rw-r--r--testing/ddgr/APKBUILD6
-rw-r--r--testing/ddnrs/APKBUILD38
-rw-r--r--testing/ddnrs/ddnrs.pre-install6
-rw-r--r--testing/ddserver/APKBUILD2
-rw-r--r--testing/deadbeef-soxr/APKBUILD3
-rw-r--r--testing/debconf/APKBUILD4
-rw-r--r--testing/deblob/APKBUILD30
-rw-r--r--testing/dehydrated/APKBUILD6
-rw-r--r--testing/delfin/APKBUILD52
-rw-r--r--testing/delfin/cargo-auditable.patch24
-rw-r--r--testing/delve/APKBUILD37
-rw-r--r--testing/desed/APKBUILD42
-rw-r--r--testing/desed/Cargo.lock473
-rw-r--r--testing/desync/APKBUILD38
-rw-r--r--testing/detox/APKBUILD4
-rw-r--r--testing/devil/APKBUILD45
-rw-r--r--testing/devil/fix_mismatching_signatures.patch21
-rw-r--r--testing/dex/APKBUILD4
-rw-r--r--testing/dfl-applications/APKBUILD27
-rw-r--r--testing/dfl-ipc/APKBUILD26
-rw-r--r--testing/dfl-login1/APKBUILD26
-rw-r--r--testing/dfl-sni/APKBUILD26
-rw-r--r--testing/dfu-programmer/10-add-stdlib.patch10
-rw-r--r--testing/dfu-programmer/APKBUILD22
-rw-r--r--testing/dfu-util/APKBUILD6
-rw-r--r--testing/dhewm3/APKBUILD12
-rw-r--r--testing/dhewm3/dhewm3.pngbin23573 -> 23572 bytes
-rwxr-xr-xtesting/dhex/APKBUILD40
-rw-r--r--testing/diceware/APKBUILD42
-rw-r--r--testing/diceware/no-pkg_resources.patch247
-rw-r--r--testing/diebahn/APKBUILD42
-rw-r--r--testing/difftastic/APKBUILD33
-rw-r--r--testing/digikam/0001-Fix-build-with-akonadi-contacts-22.04.patch28
-rw-r--r--testing/digikam/APKBUILD90
-rw-r--r--testing/ding-libs/APKBUILD18
-rw-r--r--testing/ding-libs/musl-fixes.patch24
-rw-r--r--testing/ding-libs/path_utils_ut-allow-single-as-well.patch36
-rw-r--r--testing/dinit-alpine/APKBUILD27
-rw-r--r--testing/dinit/APKBUILD38
-rw-r--r--testing/disfetch/APKBUILD6
-rw-r--r--testing/diskonaut/APKBUILD14
-rw-r--r--testing/diskus/APKBUILD9
-rw-r--r--testing/dislocker/APKBUILD5
-rw-r--r--testing/dislocker/mbedtls-3.patch23
-rw-r--r--testing/dissent/APKBUILD41
-rw-r--r--testing/dissent/dissent.desktop8
-rw-r--r--testing/distrobox/APKBUILD26
-rw-r--r--testing/distrobuilder/APKBUILD17
-rw-r--r--testing/dive/APKBUILD25
-rw-r--r--testing/dk/APKBUILD31
-rw-r--r--testing/dk/dk.desktop5
-rw-r--r--testing/dk/dk.post-install14
-rw-r--r--testing/dlib/APKBUILD35
-rw-r--r--testing/dma/APKBUILD48
-rw-r--r--testing/dma/dma.cron5
-rw-r--r--testing/dma/musl-fixes.patch37
-rw-r--r--testing/dmarc-metrics-exporter/APKBUILD71
-rwxr-xr-xtesting/dmarc-metrics-exporter/dmarc-metrics-exporter.confd10
-rwxr-xr-xtesting/dmarc-metrics-exporter/dmarc-metrics-exporter.initd15
-rwxr-xr-xtesting/dmarc-metrics-exporter/dmarc-metrics-exporter.pre-install7
-rw-r--r--testing/dmg2img/APKBUILD28
-rw-r--r--testing/dmg2img/openssl-compatibility.patch219
-rw-r--r--testing/dnscontrol/APKBUILD35
-rw-r--r--testing/dnscontrol/dnsconfig.js9
-rw-r--r--testing/dnscrypt-wrapper/APKBUILD4
-rw-r--r--testing/dnsenum/APKBUILD28
-rw-r--r--testing/dnsfunnel/APKBUILD10
-rw-r--r--testing/dnsperf/APKBUILD21
-rw-r--r--testing/dnssec-tools/APKBUILD13
-rw-r--r--testing/dnstap-ldns/APKBUILD41
-rw-r--r--testing/doasedit/APKBUILD22
-rw-r--r--testing/docbook2mdoc/APKBUILD2
-rw-r--r--testing/docker-auth/APKBUILD43
-rw-r--r--testing/docker-auth/docker-auth.confd10
-rw-r--r--testing/docker-auth/docker-auth.initd20
-rw-r--r--testing/docker-auth/docker-auth.pre-install6
-rw-r--r--testing/docker-auth/reference-example.patch905
-rw-r--r--testing/docker-volume-local-persist/APKBUILD34
-rw-r--r--testing/docker-volume-local-persist/gomod.patch84
-rw-r--r--testing/dockerize/APKBUILD24
-rw-r--r--testing/dockerize/go.mod13
-rw-r--r--testing/dockerize/go.sum14
-rw-r--r--testing/doggo/APKBUILD24
-rw-r--r--testing/dolt/APKBUILD34
-rw-r--r--testing/dooit/APKBUILD37
-rw-r--r--testing/dosbox-staging/APKBUILD28
-rw-r--r--testing/dosbox-staging/fix-execinfo.patch17
-rw-r--r--testing/dotenv-linter/APKBUILD34
-rw-r--r--testing/dotnet31-bootstrap/APKBUILD347
-rw-r--r--testing/dotnet31-bootstrap/README.md12
-rw-r--r--testing/dotnet31-bootstrap/application-insights_fix-net40-location.patch21
-rw-r--r--testing/dotnet31-bootstrap/build_darc-fix-alpine.patch32
-rw-r--r--testing/dotnet31-bootstrap/build_ignore-warnings.patch26
-rw-r--r--testing/dotnet31-bootstrap/build_musl-build.patch75
-rw-r--r--testing/dotnet31-bootstrap/cli_add-zsh-compdef-completion-script.patch35
-rw-r--r--testing/dotnet31-bootstrap/core-sdk_generate-layout-core-setup-blob-path-fix.patch30
-rw-r--r--testing/dotnet31-bootstrap/core-setup_rid-plat-generation-on-alpine-fix.patch49
-rw-r--r--testing/dotnet31-bootstrap/coreclr_non-portable-distrorid-fix-alpine.patch32
-rw-r--r--testing/dotnet31-bootstrap/corefx_added-alpine-315-rid.patch114
-rw-r--r--testing/dotnet31-bootstrap/corefx_fix-build-clang10.patch28
-rw-r--r--testing/dotnet31-bootstrap/references_sh-build-fix.patch28
-rw-r--r--testing/dotnet31-build/APKBUILD345
-rw-r--r--testing/dotnet31-build/README.md17
-rw-r--r--testing/dotnet31-build/application-insights_fix-net40-location.patch21
-rw-r--r--testing/dotnet31-build/build_darc-fix-alpine.patch32
-rw-r--r--testing/dotnet31-build/build_ignore-warnings.patch26
-rw-r--r--testing/dotnet31-build/build_musl-build.patch75
-rw-r--r--testing/dotnet31-build/cli_add-zsh-compdef-completion-script.patch35
-rw-r--r--testing/dotnet31-build/core-sdk_generate-layout-core-setup-blob-path-fix.patch30
-rw-r--r--testing/dotnet31-build/core-setup_clang13-no-werror.patch27
-rw-r--r--testing/dotnet31-build/core-setup_rid-plat-generation-on-alpine-fix.patch49
-rw-r--r--testing/dotnet31-build/coreclr_fix-musl-123.patch393
-rw-r--r--testing/dotnet31-build/corefx_add-alpine-316-rid.patch131
-rw-r--r--testing/dotnet31-build/corefx_clang13-no-werror.patch27
-rw-r--r--testing/dotnet31-build/corefx_fix-build-clang13.patch74
-rw-r--r--testing/dotnet31-build/references_sh-build-fix.patch28
-rw-r--r--testing/dotnet31-runtime/APKBUILD139
-rw-r--r--testing/dotnet31-runtime/README.md25
-rw-r--r--testing/dotnet31-runtime/dotnet.sh12
-rw-r--r--testing/dotnet31-sdk/APKBUILD121
-rw-r--r--testing/dotnet31-sdk/README.md19
-rw-r--r--testing/dotnet31-stage0/APKBUILD217
-rw-r--r--testing/dotnet31-stage0/README.md18
-rw-r--r--testing/dovecot-ceph-plugin/1-fixes.patch21
-rw-r--r--testing/dovecot-ceph-plugin/2-fixes.patch21
-rw-r--r--testing/dovecot-ceph-plugin/3-fixes.patch34
-rw-r--r--testing/dovecot-ceph-plugin/6-32bit.patch38
-rw-r--r--testing/dovecot-ceph-plugin/7-sentinel.patch61
-rw-r--r--testing/dovecot-ceph-plugin/APKBUILD85
-rw-r--r--testing/dovi-tool/APKBUILD37
-rw-r--r--testing/downloader-cli/APKBUILD37
-rw-r--r--testing/dpdk/01-ppc.patch71
-rw-r--r--testing/dpdk/APKBUILD57
-rw-r--r--testing/draw/APKBUILD26
-rw-r--r--testing/drawing/APKBUILD7
-rw-r--r--testing/drawpile/APKBUILD116
-rw-r--r--testing/drawpile/drawpile-server.pre-install8
-rwxr-xr-xtesting/drawpile/drawpile.initd18
-rw-r--r--testing/droidcam/APKBUILD53
-rw-r--r--testing/droidcam/droidcam.post-install8
-rw-r--r--testing/droidcam/makefile.patch13
-rw-r--r--testing/droidcam/release-paths.patch29
-rw-r--r--testing/drone-cli/APKBUILD22
-rw-r--r--testing/dropwatch/APKBUILD2
-rw-r--r--testing/drumgizmo/APKBUILD45
-rw-r--r--testing/drumgizmo/gcc13.patch10
-rw-r--r--testing/dsnet/APKBUILD25
-rw-r--r--testing/dsp/APKBUILD9
-rw-r--r--testing/dsp/ffmpeg5.patch177
-rw-r--r--testing/dstask/APKBUILD15
-rw-r--r--testing/dtrx/APKBUILD40
-rw-r--r--testing/dublin-traceroute/APKBUILD30
-rw-r--r--testing/duc/APKBUILD35
-rw-r--r--testing/duf/APKBUILD6
-rw-r--r--testing/dum/APKBUILD9
-rw-r--r--testing/dumb_runtime_dir/APKBUILD24
-rw-r--r--testing/dune-deps/APKBUILD28
-rw-r--r--testing/dustracing2d/APKBUILD2
-rw-r--r--testing/dvdbackup/APKBUILD4
-rw-r--r--testing/dwl/APKBUILD28
-rw-r--r--testing/dwl/xwayland.patch12
-rw-r--r--testing/dxvk/APKBUILD62
-rw-r--r--testing/e2fsimage/APKBUILD27
-rw-r--r--testing/easyeffects/APKBUILD55
-rw-r--r--testing/easyeffects/setlocale.patch102
-rw-r--r--testing/easyloggingpp-dev/APKBUILD50
-rw-r--r--testing/easyloggingpp-dev/musl-compat.patch38
-rw-r--r--testing/eatmemory/APKBUILD2
-rw-r--r--testing/eboard/APKBUILD34
-rw-r--r--testing/ecasound/0001-ecasignalview.cpp-always-use-s-style-format-for-prin.patch45
-rw-r--r--testing/ecasound/APKBUILD12
-rw-r--r--testing/eccodes/APKBUILD54
-rw-r--r--testing/eclib/APKBUILD38
-rw-r--r--testing/eclipse-ecj/10-jar-signature.patch4
-rw-r--r--testing/eclipse-ecj/20-javac-version.patch15
-rw-r--r--testing/eclipse-ecj/APKBUILD15
-rw-r--r--testing/ecm/APKBUILD50
-rw-r--r--testing/editline/APKBUILD34
-rw-r--r--testing/edward/0001-editor-fix-current-address-when-moving-a-single-line.patch60
-rw-r--r--testing/edward/0002-editor-Fix-discarding-of-addrs-for-cmds-expecting-a-.patch65
-rw-r--r--testing/edward/APKBUILD33
-rw-r--r--testing/efl/APKBUILD40
-rw-r--r--testing/efm-langserver/APKBUILD30
-rw-r--r--testing/eiwd/0001-resolving-service-none.patch37
-rw-r--r--testing/eiwd/APKBUILD15
-rw-r--r--testing/eiwd/eiwd.confd24
-rw-r--r--testing/eiwd/eiwd.initd19
-rw-r--r--testing/eiwd/eiwd.post-upgrade6
-rw-r--r--testing/eiwd/main.conf3
-rw-r--r--testing/ejabberd/APKBUILD198
-rw-r--r--testing/ejabberd/dont-leak-destdir.patch209
-rw-r--r--testing/ejabberd/ejabberd.confd5
-rw-r--r--testing/ejabberd/ejabberd.initd54
-rw-r--r--testing/ejabberd/ejabberd.logrotate12
-rw-r--r--testing/ejabberd/ejabberd.pre-install6
-rw-r--r--testing/ejson/APKBUILD45
-rw-r--r--testing/elastic-beats/APKBUILD152
-rw-r--r--testing/elastic-beats/filebeat.confd5
-rw-r--r--testing/elastic-beats/filebeat.initd31
-rw-r--r--testing/elastic-beats/metricbeat.confd5
-rw-r--r--testing/elastic-beats/metricbeat.initd31
-rw-r--r--testing/electron-tasje/APKBUILD35
-rw-r--r--testing/electron/0001-src-fix-HasOnly-capability-in-node-credentials.patch55
-rw-r--r--testing/electron/0002-http-add-maximum-chunk-extension-size.patch273
-rw-r--r--testing/electron/0004-lib-update-undici-to-v5.28.3.patch46
-rw-r--r--testing/electron/0005-zlib-pause-stream-if-outgoing-buffer-is-full.patch146
-rw-r--r--testing/electron/0006-deps-fix-GHSA-f74f-cvh7-c6q6-CVE-2024-24806.patch74
-rw-r--r--testing/electron/APKBUILD589
-rw-r--r--testing/electron/chromium-icu-74.patch20
-rw-r--r--testing/electron/chromium-revert-drop-of-system-java.patch17
-rw-r--r--testing/electron/compiler.patch123
-rw-r--r--testing/electron/default.conf9
-rw-r--r--testing/electron/disable-dns_config_service.patch15
-rw-r--r--testing/electron/disable-failing-tests.patch361
-rw-r--r--testing/electron/electron-launcher.sh20
-rw-r--r--testing/electron/electron.desktop8
-rw-r--r--testing/electron/fc-cache-version.patch13
-rw-r--r--testing/electron/fix-missing-cstdint-include-musl.patch13
-rw-r--r--testing/electron/fix-opus.patch12
-rw-r--r--testing/electron/fstatat-32bit.patch17
-rw-r--r--testing/electron/gdbinit.patch22
-rw-r--r--testing/electron/generic-sensor-include.patch11
-rw-r--r--testing/electron/icon.patch21
-rw-r--r--testing/electron/import-version.patch15
-rw-r--r--testing/electron/libstdc++13.patch279
-rw-r--r--testing/electron/mman.patch13
-rw-r--r--testing/electron/musl-auxv.patch11
-rw-r--r--testing/electron/musl-sandbox.patch124
-rw-r--r--testing/electron/musl-tid-caching.patch85
-rw-r--r--testing/electron/musl-v8-monotonic-pthread-cont_timedwait.patch23
-rw-r--r--testing/electron/no-execinfo.patch69
-rw-r--r--testing/electron/no-mallinfo.patch124
-rw-r--r--testing/electron/no-res-ninit-nclose.patch32
-rw-r--r--testing/electron/no-sandbox-settls.patch14
-rw-r--r--testing/electron/node-configure-distutils.patch52
-rw-r--r--testing/electron/node-gyp-distutils.patch11
-rw-r--r--testing/electron/partalloc-no-tagging-arm64.patch14
-rw-r--r--testing/electron/perfetto-libstdc++.patch20
-rw-r--r--testing/electron/pvalloc.patch33
-rw-r--r--testing/electron/python-jinja-3.10.patch22
-rw-r--r--testing/electron/quiche-array.patch12
-rw-r--r--testing/electron/random-fixes.patch94
-rw-r--r--testing/electron/system-zstd.patch46
-rw-r--r--testing/electron/temp-failure-retry.patch19
-rw-r--r--testing/electron/unbundle-node.patch56
-rw-r--r--testing/electron/webpack-hash.patch12
-rw-r--r--testing/electron/yes-musl.patch11
-rw-r--r--testing/electrs/10-rocksdb.patch16
-rw-r--r--testing/electrs/11-rocksdb-locked.patch167
-rw-r--r--testing/electrs/12-db.rs.patch9
-rw-r--r--testing/electrs/APKBUILD34
-rw-r--r--testing/elektra/APKBUILD57
-rw-r--r--testing/elektra/benchmark-dupe.patch62
-rw-r--r--testing/elektra/gcc12.patch12
-rw-r--r--testing/elektra/musl-1.2.3.patch44
-rw-r--r--testing/element-desktop/APKBUILD170
-rw-r--r--testing/element-desktop/add-alpine-targets.patch52
-rwxr-xr-xtesting/element-desktop/element-desktop3
-rw-r--r--testing/element-desktop/tasje-no-fuses.patch58
-rw-r--r--testing/element-desktop/tasje-one-hak.patch20
-rw-r--r--testing/element-desktop/use-system-fonts.patch.reactsdk169
-rw-r--r--testing/element-desktop/use-system-fonts.patch.web11
-rw-r--r--testing/element-desktop/use-system-headers.patch15
-rw-r--r--testing/elementary-photos/APKBUILD61
-rw-r--r--testing/elf_diff/APKBUILD48
-rwxr-xr-xtesting/elf_diff/elf_diff5
-rw-r--r--testing/elfio/APKBUILD8
-rw-r--r--testing/elfio/fix-cmake-install-dir.patch26
-rw-r--r--testing/elfio/page_size.patch33
-rw-r--r--testing/eludris/APKBUILD34
-rw-r--r--testing/elvish/APKBUILD29
-rw-r--r--testing/emacs-ace-window/APKBUILD38
-rw-r--r--testing/emacs-async-await/APKBUILD40
-rw-r--r--testing/emacs-async/APKBUILD38
-rw-r--r--testing/emacs-avy/APKBUILD39
-rw-r--r--testing/emacs-buttercup/APKBUILD42
-rw-r--r--testing/emacs-cangjie/APKBUILD40
-rw-r--r--testing/emacs-centaur-tabs/APKBUILD38
-rw-r--r--testing/emacs-circe/APKBUILD42
-rw-r--r--testing/emacs-circe/fix-test-tracking.patch27
-rw-r--r--testing/emacs-compat/APKBUILD48
-rw-r--r--testing/emacs-consult/APKBUILD39
-rw-r--r--testing/emacs-dash/APKBUILD40
-rw-r--r--testing/emacs-deferred/APKBUILD33
-rw-r--r--testing/emacs-elfeed/APKBUILD41
-rw-r--r--testing/emacs-embark/APKBUILD63
-rw-r--r--testing/emacs-ement/APKBUILD47
-rw-r--r--testing/emacs-ert-async/APKBUILD36
-rw-r--r--testing/emacs-f/APKBUILD45
-rw-r--r--testing/emacs-fsm/APKBUILD36
-rw-r--r--testing/emacs-git-timemachine/APKBUILD38
-rw-r--r--testing/emacs-hackernews/APKBUILD35
-rw-r--r--testing/emacs-helm/APKBUILD43
-rw-r--r--testing/emacs-helm/remove-autoload-check.patch26
-rw-r--r--testing/emacs-hnreader/APKBUILD48
-rw-r--r--testing/emacs-howdoyou/APKBUILD53
-rw-r--r--testing/emacs-howdoyou/dont-test-against-google.patch23
-rw-r--r--testing/emacs-hydra/APKBUILD46
-rw-r--r--testing/emacs-iter2/APKBUILD39
-rw-r--r--testing/emacs-jabber/APKBUILD59
-rw-r--r--testing/emacs-lab/APKBUILD45
-rw-r--r--testing/emacs-liberime/APKBUILD43
-rw-r--r--testing/emacs-lingva/APKBUILD36
-rw-r--r--testing/emacs-magit/APKBUILD71
-rw-r--r--testing/emacs-memoize/APKBUILD40
-rw-r--r--testing/emacs-persist/APKBUILD40
-rw-r--r--testing/emacs-plz-see/APKBUILD39
-rw-r--r--testing/emacs-plz/APKBUILD47
-rw-r--r--testing/emacs-popup/APKBUILD39
-rw-r--r--testing/emacs-posframe/APKBUILD34
-rw-r--r--testing/emacs-powerline/APKBUILD35
-rw-r--r--testing/emacs-promise/APKBUILD41
-rw-r--r--testing/emacs-pyim-basedict/APKBUILD34
-rw-r--r--testing/emacs-pyim-cangjiedict/APKBUILD36
-rw-r--r--testing/emacs-pyim-smzmdict/APKBUILD36
-rw-r--r--testing/emacs-pyim-wbdict/APKBUILD35
-rw-r--r--testing/emacs-pyim/APKBUILD46
-rw-r--r--testing/emacs-repology/APKBUILD46
-rw-r--r--testing/emacs-request/APKBUILD57
-rw-r--r--testing/emacs-rime/APKBUILD47
-rw-r--r--testing/emacs-s/APKBUILD41
-rw-r--r--testing/emacs-srv/APKBUILD39
-rw-r--r--testing/emacs-srv/optional-dns.el.patch38
-rw-r--r--testing/emacs-svg-lib/APKBUILD35
-rw-r--r--testing/emacs-taxy-magit-section/APKBUILD38
-rw-r--r--testing/emacs-taxy/APKBUILD34
-rw-r--r--testing/emacs-vterm/APKBUILD54
-rw-r--r--testing/emacs-with-editor/APKBUILD38
-rw-r--r--testing/emacs-xr/APKBUILD40
-rw-r--r--testing/emacspeak-server-eflite/APKBUILD48
-rw-r--r--testing/emacspeak/APKBUILD131
-rw-r--r--testing/emacspeak/directories.patch79
-rwxr-xr-xtesting/emacspeak/emacspeak28
-rw-r--r--testing/emacspeak/fix-tclespeak-path.patch13
-rw-r--r--testing/emacspeak/rebuild-pickup-c.patch12
-rw-r--r--testing/emacspeak/remote-espeak-server.patch39
-rw-r--r--testing/embree3/APKBUILD47
-rw-r--r--testing/embree3/fix-install-detection.patch14
-rw-r--r--testing/emby/APKBUILD86
-rw-r--r--testing/emby/emby-migrate56
-rw-r--r--testing/emby/emby-server6
-rw-r--r--testing/emby/emby.confd8
-rw-r--r--testing/emby/emby.initd14
-rw-r--r--testing/emby/emby.pre-install7
-rw-r--r--testing/empede/APKBUILD48
-rw-r--r--testing/empede/empede.confd4
-rw-r--r--testing/empede/empede.initd17
-rw-r--r--testing/empede/empede.pre-install6
-rw-r--r--testing/emulationstation/APKBUILD88
-rw-r--r--testing/emulationstation/emulationstation.pngbin4870 -> 4074 bytes
-rw-r--r--testing/emulationstation/pugixml.patch152
-rw-r--r--testing/endeavour/APKBUILD39
-rw-r--r--testing/endless-sky/APKBUILD48
-rw-r--r--testing/endless-sky/install-path.patch13
-rw-r--r--testing/enigma/APKBUILD39
-rw-r--r--testing/enjoy/APKBUILD4
-rw-r--r--testing/enjoy/correct_udev_rules_path.patch14
-rw-r--r--testing/enlighten/APKBUILD2
-rw-r--r--testing/envconsul/APKBUILD12
-rw-r--r--testing/envsubst/APKBUILD6
-rw-r--r--testing/eolie/APKBUILD55
-rw-r--r--testing/eolie/dont-require-py3-gettext-support.patch20
-rw-r--r--testing/epic5-script-lice/APKBUILD26
-rw-r--r--testing/epic5/APKBUILD68
-rw-r--r--testing/epic5/default-to-oftc.patch13
-rw-r--r--testing/epoch/APKBUILD2
-rw-r--r--testing/epr/APKBUILD16
-rw-r--r--testing/epub2txt/APKBUILD23
-rw-r--r--testing/ergo-ldap/APKBUILD25
-rw-r--r--testing/es-shell/APKBUILD45
-rw-r--r--testing/esbuild/APKBUILD49
-rw-r--r--testing/espeak-ng/APKBUILD54
-rw-r--r--testing/espeak-ng/disable-failing-test-784.patch16
-rw-r--r--testing/espeak-ng/fix-grc-handling-690.patch45
-rw-r--r--testing/espeak-ng/fix-newline-expansion.patch22
-rw-r--r--testing/espeakup/APKBUILD6
-rw-r--r--testing/esptool/APKBUILD39
-rw-r--r--testing/etcd/APKBUILD35
-rw-r--r--testing/etcd/etcd.yaml-3.5.13143
-rw-r--r--testing/etcd/etcd.yaml-3.5.4140
-rw-r--r--testing/ettercap/APKBUILD40
-rw-r--r--testing/eva/APKBUILD18
-rw-r--r--testing/eva/deps.patch156
-rw-r--r--testing/eva/minimize-size.patch14
-rw-r--r--testing/evolution-etesync/APKBUILD32
-rw-r--r--testing/evolution-on/APKBUILD1
-rw-r--r--testing/eww/APKBUILD26
-rw-r--r--testing/eww/update-cargo-lock.patch11
-rw-r--r--testing/exabgp/APKBUILD49
-rw-r--r--testing/exabgp/exabgp.confd3
-rw-r--r--testing/exabgp/exabgp.initd61
-rw-r--r--testing/exabgp/exabgp.pre-install6
-rw-r--r--testing/exabgp/unvendor.patch414
-rw-r--r--testing/exercism/APKBUILD18
-rw-r--r--testing/exoscale/APKBUILD38
-rw-r--r--testing/extrace/APKBUILD25
-rw-r--r--testing/extremetuxracer/APKBUILD6
-rw-r--r--testing/extundelete/APKBUILD4
-rw-r--r--testing/f3/APKBUILD2
-rw-r--r--testing/f_scripts/APKBUILD16
-rw-r--r--testing/fabric/APKBUILD29
-rw-r--r--testing/fakeroot-tcp/APKBUILD30
-rw-r--r--testing/fakeroot-tcp/do-not-redefine-id_t.patch21
-rw-r--r--testing/fakeroot-tcp/fakeroot-skip-ipc-sanity-check.patch59
-rw-r--r--testing/fakeroot-tcp/fix-format.patch25
-rw-r--r--testing/fakeroot-tcp/xstatjunk.patch10
-rw-r--r--testing/fasd/APKBUILD25
-rw-r--r--testing/fast_float/APKBUILD47
-rw-r--r--testing/fastd/APKBUILD8
-rw-r--r--testing/fatback/APKBUILD2
-rw-r--r--testing/fathom/APKBUILD38
-rw-r--r--testing/fatrace/APKBUILD4
-rw-r--r--testing/fatresize/APKBUILD2
-rw-r--r--testing/faultstat/APKBUILD4
-rw-r--r--testing/faust/APKBUILD67
-rw-r--r--testing/faust/busybox.patch28
-rw-r--r--testing/faust/faust-musl-stacktrace.patch16
-rw-r--r--testing/faust/faust-tests-old-libraries.patch35
-rw-r--r--testing/faust/gcc13.patch24
-rw-r--r--testing/faust/no-execinfo.patch22
-rw-r--r--testing/faust/usage.patch866
-rw-r--r--testing/fava/APKBUILD72
-rw-r--r--testing/fbp/APKBUILD1
-rw-r--r--testing/fceux/01-rdtsc.patch76
-rw-r--r--testing/fceux/APKBUILD40
-rw-r--r--testing/fcitx5-anthy/APKBUILD38
-rw-r--r--testing/fcitx5-bamboo/APKBUILD47
-rw-r--r--testing/fcitx5-chewing/APKBUILD47
-rw-r--r--testing/fcitx5-chinese-addons/APKBUILD57
-rw-r--r--testing/fcitx5-configtool/APKBUILD61
-rw-r--r--testing/fcitx5-gtk/APKBUILD40
-rwxr-xr-xtesting/fcitx5-gtk/fcitx5-gtk3.post-install4
-rwxr-xr-xtesting/fcitx5-gtk/fcitx5-gtk3.post-upgrade4
-rw-r--r--testing/fcitx5-hangul/APKBUILD37
-rw-r--r--testing/fcitx5-kkc/APKBUILD42
-rw-r--r--testing/fcitx5-kkc/cxx17.patch14
-rw-r--r--testing/fcitx5-lua/APKBUILD41
-rw-r--r--testing/fcitx5-m17n/APKBUILD39
-rw-r--r--testing/fcitx5-qt/APKBUILD80
-rw-r--r--testing/fcitx5-rime/APKBUILD38
-rw-r--r--testing/fcitx5-table-extra/APKBUILD34
-rw-r--r--testing/fcitx5-table-other/APKBUILD34
-rw-r--r--testing/fcitx5-unikey/APKBUILD49
-rw-r--r--testing/fcitx5/APKBUILD20
-rw-r--r--testing/fclones/APKBUILD41
-rw-r--r--testing/fclones/musl-fix.patch46
-rw-r--r--testing/fdm-materials/APKBUILD27
-rw-r--r--testing/fdm/APKBUILD30
-rw-r--r--testing/fdm/fix-base64.patch52
-rw-r--r--testing/featherpad/APKBUILD22
-rw-r--r--testing/felix/APKBUILD59
-rw-r--r--testing/felix/use-system-libs.patch61
-rw-r--r--testing/fff/APKBUILD23
-rw-r--r--testing/fflas-ffpack/APKBUILD41
-rw-r--r--testing/ffms2/APKBUILD37
-rw-r--r--testing/ffms2/ffmpeg-fix-api.patch355
-rw-r--r--testing/ffsend/APKBUILD57
-rw-r--r--testing/ffsend/wl-clipboard.patch159
-rw-r--r--testing/fheroes2/APKBUILD30
-rw-r--r--testing/fiery/APKBUILD50
-rw-r--r--[-rwxr-xr-x]testing/fig2dev/APKBUILD0
-rw-r--r--testing/filebeat/APKBUILD45
-rw-r--r--testing/filebeat/filebeat.confd2
-rw-r--r--testing/filebeat/filebeat.initd42
-rw-r--r--testing/filebeat/filebeat.yml119
-rw-r--r--testing/filebrowser/APKBUILD53
-rw-r--r--testing/filebrowser/filebrowser.confd1
-rw-r--r--testing/filebrowser/filebrowser.initd13
-rw-r--r--testing/filebrowser/filebrowser.pre-install5
-rw-r--r--testing/fileshelter/APKBUILD20
-rw-r--r--testing/filite/APKBUILD25
-rw-r--r--testing/filite/fix-build.patch3110
-rw-r--r--testing/filite/system-sqlite.patch24
-rw-r--r--testing/findtow/APKBUILD3
-rw-r--r--testing/finger/APKBUILD32
-rw-r--r--testing/firecracker/APKBUILD89
-rw-r--r--testing/firectl/APKBUILD10
-rw-r--r--testing/firefox-developer-edition/APKBUILD251
-rw-r--r--testing/firefox-developer-edition/allow-custom-rust-vendor.patch564
-rw-r--r--testing/firefox-developer-edition/avoid-redefinition.patch15
-rw-r--r--testing/firefox-developer-edition/disable-neon-in-aom.patch39
-rw-r--r--testing/firefox-developer-edition/fix-fortify-system-wrappers.patch22
-rw-r--r--testing/firefox-developer-edition/icu74.patch38
-rw-r--r--testing/firefox-developer-edition/lfs64.patch35
-rw-r--r--testing/firefox-developer-edition/mallinfo.patch20
-rw-r--r--testing/firefox-developer-edition/no-ccache-stats.patch13
-rw-r--r--testing/firefox-developer-edition/python-deps.patch12
-rw-r--r--testing/firefox-developer-edition/rust-lto-thin.patch12
-rw-r--r--testing/firefox-developer-edition/sandbox-sched_setscheduler.patch16
-rw-r--r--testing/firefox-developer-edition/vendor-prefs.js7
-rw-r--r--testing/firehol/APKBUILD12
-rw-r--r--testing/firewalld/APKBUILD84
-rw-r--r--testing/firewalld/firewalld.initd12
-rw-r--r--testing/flamegraph/APKBUILD12
-rw-r--r--testing/flameshot/APKBUILD31
-rw-r--r--testing/flann/APKBUILD6
-rw-r--r--testing/flannel/APKBUILD31
-rw-r--r--testing/flannel/kube-flannel-bin-path.patch26
-rw-r--r--testing/flare-engine/APKBUILD6
-rw-r--r--testing/flare-game/APKBUILD2
-rw-r--r--testing/flarectl/APKBUILD25
-rw-r--r--testing/flatpak-xdg-utils/APKBUILD32
-rw-r--r--testing/flauschige-uhr/APKBUILD2
-rw-r--r--testing/flightgear/APKBUILD35
-rwxr-xr-xtesting/flightgear/flightgear-data-downloader.sh8
-rwxr-xr-xtesting/flightgear/flightgear.post-install2
-rw-r--r--testing/flightgear/musl-fix_backtrace.patch11
-rw-r--r--testing/flightgear/no-execinfo.patch21
-rw-r--r--[-rwxr-xr-x]testing/flint/APKBUILD33
-rw-r--r--testing/flint/fix-sdiv_qrnnd-test.patch22
-rw-r--r--testing/flintqs/APKBUILD41
-rw-r--r--testing/flowd/APKBUILD13
-rw-r--r--testing/flowd/format-security.patch13
-rw-r--r--testing/fluent-bit/10-def-core-stack-size.patch13
-rw-r--r--testing/fluent-bit/APKBUILD28
-rw-r--r--testing/fluent-bit/exclude-luajit.patch12
-rw-r--r--testing/fluent-bit/fluent-bit.confd1
-rw-r--r--testing/fluent-bit/fluent-bit.initd7
-rw-r--r--testing/fluent-bit/stream_suffix.patch189
-rw-r--r--testing/fluent-bit/xsi-strerror.patch15
-rw-r--r--testing/fluffychat/APKBUILD323
-rw-r--r--testing/fluffychat/fluffychat.desktop8
-rw-r--r--testing/fluffychat/gcc13.patch.webrtc10
-rw-r--r--testing/fluffychat/no-sqlcipher.patch.noauto49
-rw-r--r--testing/fluffychat/no-upgrade-debug-info.patch.webrtc11
-rw-r--r--testing/fluffychat/no-werror.patch11
-rw-r--r--testing/fluffychat/sqlite-soname.patch.noauto11
-rw-r--r--testing/fluffychat/still-hive.patch90
-rw-r--r--testing/fluffychat/system-flutter.patch15
-rw-r--r--testing/fluffychat/toolhack.patch.webrtc22
-rw-r--r--testing/fluffychat/use-alpine-target.patch.webrtc15
-rw-r--r--testing/fluffychat/wrapper.patch.webrtc14
-rw-r--r--testing/flutter/APKBUILD505
-rw-r--r--testing/flutter/alpine-target.patch14
-rw-r--r--testing/flutter/doctor.patch17
-rwxr-xr-xtesting/flutter/flutter23
-rw-r--r--testing/flutter/git-revision.patch.engine22
-rw-r--r--testing/flutter/libstdc++13.patch.engine103
-rw-r--r--testing/flutter/musl-no-execinfo.patch.engine11
-rw-r--r--testing/flutter/musl-no-mallinfo.patch.engine29
-rw-r--r--testing/flutter/no-lock.patch19
-rw-r--r--testing/flutter/no-runtime-download.patch38
-rw-r--r--testing/flutter/no-vpython.patch.engine11
-rw-r--r--testing/flutter/opt-in-analytics.patch22
-rw-r--r--testing/flutter/pmos-if-touch-is-a-mouse-then-mouse-is-touch.patch18
-rw-r--r--testing/flutter/shared-libcxx.patch.engine33
-rw-r--r--testing/flutter/system-icu.patch.engine37
-rw-r--r--testing/flutter/target-musl.patch.engine345
-rw-r--r--testing/flutter/unbundle.patch21
-rw-r--r--testing/flutter/unbundle.patch.engine950
-rw-r--r--testing/flutter/version.patch288
-rw-r--r--testing/flux/APKBUILD58
-rw-r--r--testing/flwm/APKBUILD35
-rw-r--r--testing/fnc/APKBUILD39
-rw-r--r--testing/fnc/maybe-uninit.patch56
-rw-r--r--testing/fnf/APKBUILD28
-rw-r--r--testing/foma/APKBUILD35
-rw-r--r--testing/font-anonymous-pro/APKBUILD29
-rw-r--r--testing/font-babelstone-han/APKBUILD21
-rw-r--r--testing/font-chivo/APKBUILD28
-rw-r--r--testing/font-commit-mono/APKBUILD20
-rw-r--r--testing/font-cousine/APKBUILD22
-rw-r--r--testing/font-crosextra-carlito/APKBUILD19
-rw-r--r--testing/font-fira-code/APKBUILD47
-rw-r--r--testing/font-fira-code/fontconfig.conf16
-rw-r--r--testing/font-firamath/APKBUILD20
-rw-r--r--testing/font-fontawesome-4/APKBUILD26
-rw-r--r--testing/font-hanazono/APKBUILD22
-rw-r--r--testing/font-intel-one-mono/APKBUILD22
-rw-r--r--testing/font-inter/APKBUILD20
-rw-r--r--testing/font-juliamono/APKBUILD19
-rw-r--r--testing/font-katex/APKBUILD26
-rw-r--r--testing/font-material-icons/APKBUILD21
-rw-r--r--testing/font-merriweather/APKBUILD7
-rw-r--r--testing/font-monaspace/APKBUILD59
-rw-r--r--testing/font-monocraft/APKBUILD20
-rw-r--r--testing/font-roboto/90-roboto-regular.conf14
-rw-r--r--testing/font-roboto/APKBUILD25
-rw-r--r--testing/font-siji/APKBUILD4
-rw-r--r--testing/font-spleen/APKBUILD31
-rw-r--r--testing/font-stix-otf/APKBUILD29
-rw-r--r--testing/font-tamzen/APKBUILD4
-rw-r--r--testing/font-teluguvijayam/APKBUILD69
-rw-r--r--testing/font-tinos/APKBUILD22
-rw-r--r--testing/font-tiresias/APKBUILD32
-rw-r--r--testing/font-twemoji/APKBUILD21
-rw-r--r--testing/font-wqy-zenhei/44-wqy-zenhei.conf29
-rw-r--r--testing/font-wqy-zenhei/91-wqy-zenhei.conf24
-rw-r--r--testing/font-wqy-zenhei/APKBUILD39
-rw-r--r--testing/fontforge/APKBUILD81
-rw-r--r--testing/fontforge/fix-select.patch27
-rw-r--r--testing/forgejo-runner/APKBUILD47
-rw-r--r--testing/forgejo-runner/forgejo-runner.confd17
-rw-r--r--testing/forgejo-runner/forgejo-runner.initd38
-rw-r--r--testing/forgejo-runner/forgejo-runner.logrotate5
-rw-r--r--testing/forgejo-runner/forgejo-runner.pre-install14
l---------testing/forgejo-runner/forgejo-runner.pre-upgrade1
-rw-r--r--testing/forgejo/APKBUILD105
-rw-r--r--testing/forgejo/forgejo.ini26
-rw-r--r--testing/forgejo/forgejo.initd15
-rw-r--r--testing/forgejo/forgejo.pre-install7
-rw-r--r--testing/fox/APKBUILD73
-rw-r--r--testing/fpc/APKBUILD14
-rw-r--r--testing/fplll/APKBUILD56
-rw-r--r--testing/fq/APKBUILD20
-rw-r--r--testing/fq/enable-cgo.patch17
-rw-r--r--testing/fragments/APKBUILD55
-rw-r--r--testing/fragments/no-cargo-home.patch13
-rw-r--r--testing/freealut/APKBUILD4
-rw-r--r--testing/freecad/APKBUILD74
-rw-r--r--testing/freecad/backtrace.patch32
-rw-r--r--testing/freecad/missing-include-cstdint.patch11
-rw-r--r--testing/freecad/no-execinfo.patch46
-rw-r--r--testing/freecad/no-workaround-spnav.patch69
-rw-r--r--testing/freecad/numpy-1.20.patch25
-rw-r--r--testing/freecad/opencascade-7.8.0.patch877
-rw-r--r--testing/freecad/opencascade76.patch3696
-rw-r--r--testing/freecad/resourceDirectory.patch4
-rw-r--r--testing/freecad/tests.patch138
-rw-r--r--testing/freecad/vtk9.patch830
-rw-r--r--testing/freediameter/APKBUILD54
-rw-r--r--testing/freedoom/APKBUILD18
-rw-r--r--testing/freedoom/support-python-pil-10.patch40
-rw-r--r--testing/freeipmi/APKBUILD67
-rw-r--r--testing/freeipmi/bmc-watchdog.confd44
-rw-r--r--testing/freeipmi/bmc-watchdog.initd26
-rw-r--r--testing/freeipmi/ipmidetectd.confd5
-rw-r--r--testing/freeipmi/ipmidetectd.initd25
-rw-r--r--testing/freeipmi/ipmiseld.confd5
-rw-r--r--testing/freeipmi/ipmiseld.initd25
-rw-r--r--testing/freetube/APKBUILD56
-rw-r--r--testing/freetube/freetube.sh3
-rw-r--r--testing/freetube/tasje-dotdash.patch12
-rw-r--r--testing/frescobaldi/APKBUILD35
-rw-r--r--testing/freshrss/APKBUILD155
-rw-r--r--testing/freshrss/defaults.patch26
-rw-r--r--testing/freshrss/fpm-pool.conf56
-rwxr-xr-xtesting/freshrss/freshrss-openrc.post-install11
-rwxr-xr-xtesting/freshrss/freshrss.confd4
-rw-r--r--testing/freshrss/freshrss.crontab1
-rwxr-xr-xtesting/freshrss/freshrss.pre-install6
-rw-r--r--testing/fscryptctl/APKBUILD26
-rw-r--r--testing/fulcrum/APKBUILD15
-rw-r--r--testing/fulcrum/signet.patch12
-rw-r--r--testing/fusee-nano/APKBUILD40
-rw-r--r--testing/fusee-nano/broken-makefile.patch13
-rw-r--r--testing/fuzzylite/APKBUILD43
-rw-r--r--testing/fuzzylite/no-werror.patch13
-rw-r--r--testing/fwallet/APKBUILD99
-rw-r--r--testing/fwallet/flutter-3.19.patch128
-rw-r--r--testing/fwallet/no-werror.patch11
-rw-r--r--testing/fwallet/system-flutter.patch15
-rw-r--r--testing/fzy/APKBUILD2
-rw-r--r--testing/g4music/APKBUILD39
-rw-r--r--testing/gadget-tool/APKBUILD40
-rw-r--r--testing/galera/APKBUILD71
-rw-r--r--testing/galera/fix_gcomm-test-check_evs2.patch9
-rw-r--r--testing/galera/musl-page-size.patch16
-rw-r--r--testing/galera/musl-sched_param.patch12
-rw-r--r--testing/galera/musl-sys-poll-h.patch11
-rw-r--r--testing/galera/musl-wordsize.patch14
-rw-r--r--testing/gallery-dl/APKBUILD45
-rw-r--r--testing/gambit/APKBUILD42
-rw-r--r--testing/gambit/tests.patch14
-rw-r--r--testing/game-devices-udev/APKBUILD23
-rw-r--r--testing/gamescope/APKBUILD50
-rw-r--r--testing/gamescope/gcc13.patch41
-rw-r--r--testing/gamescope/null.patch47
-rw-r--r--testing/gamja/APKBUILD6
-rw-r--r--testing/gammastep/APKBUILD27
-rw-r--r--testing/gatling/APKBUILD7
-rw-r--r--testing/gaupol/APKBUILD37
-rw-r--r--testing/gb/APKBUILD6
-rw-r--r--testing/gcolor3/APKBUILD35
-rw-r--r--testing/gcolor3/fix-libportal-build.patch56
-rw-r--r--testing/gdb-esp/APKBUILD134
-rw-r--r--testing/gdcm/10-docbook4.patch175
-rw-r--r--testing/gdcm/30-off_t.patch211
-rw-r--r--testing/gdcm/40-java.patch18
-rw-r--r--testing/gdcm/50-use_copyright.patch29
-rw-r--r--testing/gdcm/60-fix_export_variables.patch34
-rw-r--r--testing/gdcm/APKBUILD181
-rw-r--r--testing/gdm-settings/APKBUILD44
-rw-r--r--testing/gearmand/APKBUILD46
-rw-r--r--testing/geckodriver/APKBUILD28
-rw-r--r--testing/gede/APKBUILD18
-rw-r--r--testing/genact/APKBUILD34
-rw-r--r--testing/geodns/APKBUILD14
-rw-r--r--testing/geomyidae/APKBUILD2
-rw-r--r--testing/geonames/APKBUILD40
-rw-r--r--testing/geopard/APKBUILD43
-rw-r--r--testing/geotagging/APKBUILD22
-rw-r--r--testing/geotagging/fix-exiv2.patch11
-rw-r--r--testing/getdns/APKBUILD50
-rw-r--r--testing/getmail6/APKBUILD35
-rw-r--r--testing/getssl/APKBUILD9
-rw-r--r--testing/gettext-tiny/APKBUILD37
-rw-r--r--testing/getting-things-gnome/APKBUILD6
-rw-r--r--[-rwxr-xr-x]testing/gf2x/APKBUILD0
-rw-r--r--testing/gfan/APKBUILD31
-rw-r--r--testing/gfold/APKBUILD33
-rw-r--r--testing/ghidra/APKBUILD116
-rw-r--r--testing/ghidra/ghidra.desktop9
-rw-r--r--testing/ghidra/ghidra.sh3
-rw-r--r--testing/ghidra/use-system-protoc.patch97
-rw-r--r--testing/ghq/APKBUILD46
-rw-r--r--testing/ginac/APKBUILD18
-rw-r--r--testing/ginger/APKBUILD4
-rw-r--r--testing/gingerbase/APKBUILD4
-rw-r--r--testing/git-bug/APKBUILD38
-rw-r--r--testing/git-bug/fix-tests.patch40
-rw-r--r--testing/git-cola/APKBUILD27
-rw-r--r--testing/git-extras/APKBUILD6
-rw-r--r--testing/git-filter-repo/10-no-version-test.patch17
-rw-r--r--testing/git-filter-repo/20-git-filter-repo.patch17
-rw-r--r--testing/git-filter-repo/APKBUILD35
-rw-r--r--testing/git-revise/APKBUILD26
-rw-r--r--testing/git-secret/APKBUILD4
-rw-r--r--testing/git-warp-time/APKBUILD42
-rw-r--r--testing/git2json/APKBUILD21
-rw-r--r--testing/gitoxide/APKBUILD74
-rw-r--r--testing/gitoxide/skip-online-tests.patch20
-rw-r--r--testing/gitoxide/system-curl.patch27
-rw-r--r--testing/gitoxide/zlib-ng.patch52
-rw-r--r--testing/glacier-browser/APKBUILD40
-rw-r--r--testing/glfw-wayland/APKBUILD32
-rw-r--r--testing/glfw-wayland/request-order.patch49
-rw-r--r--testing/glfw-wayland/silence-gigaspam.patch28
-rw-r--r--testing/glmark2/APKBUILD4
-rw-r--r--testing/gloox/APKBUILD35
-rw-r--r--testing/glossaico/APKBUILD42
-rw-r--r--testing/glow/APKBUILD32
-rw-r--r--testing/glslviewer/APKBUILD54
-rw-r--r--testing/gmenuharness/APKBUILD46
-rw-r--r--testing/gmic/APKBUILD66
-rw-r--r--testing/gmic/notune.patch13
-rw-r--r--testing/gmic/rpath.patch26
-rw-r--r--testing/gmid/APKBUILD14
-rw-r--r--testing/gmobile/APKBUILD33
-rw-r--r--testing/gmsh/APKBUILD59
-rw-r--r--testing/gn/APKBUILD32
-rw-r--r--testing/gn/python3.patch236
-rw-r--r--testing/gnome-common/APKBUILD32
-rw-r--r--testing/gnome-latex/APKBUILD61
-rw-r--r--testing/gnome-metronome/APKBUILD15
-rw-r--r--testing/gnomecast/APKBUILD50
-rw-r--r--testing/gnomecast/no-pandoc.patch23
-rw-r--r--testing/gnu-apl/APKBUILD40
-rw-r--r--testing/gnuradio/APKBUILD94
-rw-r--r--testing/gnuradio/disable-test.patch10
-rw-r--r--testing/go-acceptlanguageparser/APKBUILD36
-rw-r--r--testing/go-conf/APKBUILD43
-rw-r--r--testing/go-context/APKBUILD38
-rw-r--r--testing/go-httputils/APKBUILD36
-rw-r--r--testing/go-jsonnet/APKBUILD40
-rw-r--r--testing/go-mtpfs/APKBUILD8
-rw-r--r--testing/go-mux/APKBUILD37
-rw-r--r--testing/go-nats/APKBUILD34
-rw-r--r--testing/go-nuid/APKBUILD36
-rw-r--r--testing/go-passbolt-cli/APKBUILD15
-rw-r--r--testing/go-phoenix/APKBUILD37
-rw-r--r--testing/go-pkac/APKBUILD36
-rw-r--r--testing/go-securecookie/APKBUILD37
-rw-r--r--testing/go-sloth/APKBUILD36
-rw-r--r--testing/go-spreed-turnservicecli/APKBUILD36
-rw-r--r--testing/go-swag/APKBUILD46
-rw-r--r--testing/go-swag/enums-test-32bit.patch22
-rw-r--r--testing/go-uuid/APKBUILD36
-rw-r--r--testing/go-websocket/APKBUILD34
-rw-r--r--testing/gobang/APKBUILD13
-rw-r--r--testing/gobuster/APKBUILD19
-rw-r--r--testing/godot/APKBUILD154
-rw-r--r--testing/godot/crash_handler_x11.patch30
-rw-r--r--testing/godot/gcc13.patch10
-rw-r--r--testing/godot/no-execinfo.patch27
-rw-r--r--testing/gomaildrop/APKBUILD33
-rw-r--r--testing/gomp/APKBUILD26
-rw-r--r--testing/goomwwm/APKBUILD2
-rw-r--r--testing/gopls/APKBUILD32
-rw-r--r--testing/goreman/APKBUILD9
-rw-r--r--testing/gortr/APKBUILD22
-rw-r--r--testing/gosu/APKBUILD39
-rw-r--r--testing/got/APKBUILD33
-rw-r--r--testing/gotestsum/APKBUILD24
-rw-r--r--testing/goxel/APKBUILD21
-rw-r--r--testing/goxel/fix-musl.patch20
-rw-r--r--testing/gpa/APKBUILD2
-rw-r--r--testing/gperftools/APKBUILD108
-rw-r--r--testing/gperftools/failed-tests.patch29
-rw-r--r--testing/gperftools/pkgconfig.patch19
-rw-r--r--testing/gpg-remailer/APKBUILD6
-rw-r--r--testing/gpg-tui/APKBUILD42
-rw-r--r--testing/gping/APKBUILD28
-rw-r--r--testing/gprbuild/APKBUILD29
-rw-r--r--testing/gpsbabel/APKBUILD63
-rw-r--r--testing/gpscorrelate/APKBUILD15
-rw-r--r--testing/gpscorrelate/exiv2-0.28.patch87
-rw-r--r--testing/gqrx/APKBUILD44
-rw-r--r--testing/gr-osmosdr/APKBUILD62
-rw-r--r--testing/gr-osmosdr/add-python-bindings.patch173
-rw-r--r--testing/gr-osmosdr/fix-docstrings.patch40
-rw-r--r--testing/gr-osmosdr/gnuradio-3.9-compat.patch2298
-rw-r--r--testing/gr-osmosdr/use-std-shared-ptr.patch548
-rw-r--r--testing/gr-satellites/APKBUILD39
-rw-r--r--testing/gr-satellites/no-zip-man.patch18
-rw-r--r--testing/gradio/APKBUILD28
-rw-r--r--testing/grafana-image-renderer/APKBUILD31
-rw-r--r--testing/grafana-image-renderer/grafana-image-renderer.json21
-rw-r--r--testing/granite7/APKBUILD49
-rw-r--r--testing/grass/APKBUILD35
-rw-r--r--testing/grcov/APKBUILD23
-rw-r--r--testing/greetd-gtkgreet/APKBUILD29
-rw-r--r--testing/greetd-gtkgreet/fix-for-musl-use-uint-ssize.patch40
-rw-r--r--testing/greetd-mini-wl-greeter/APKBUILD42
-rw-r--r--testing/greetd-regreet/APKBUILD39
-rw-r--r--testing/greetd-wlgreet/APKBUILD43
-rw-r--r--testing/greetd/APKBUILD60
-rw-r--r--testing/greetd/config.patch22
-rw-r--r--testing/greetd/greetd.confd7
-rw-r--r--testing/greetd/greetd.initd18
-rw-r--r--testing/greetd/greetd.pam5
-rw-r--r--testing/greetd/greetd.pre-install9
-rw-r--r--testing/grip/APKBUILD4
-rw-r--r--testing/gron/APKBUILD10
-rw-r--r--testing/grpc-health-check/APKBUILD20
-rw-r--r--testing/grpcui/APKBUILD31
-rw-r--r--testing/grpcurl/APKBUILD31
-rw-r--r--testing/grype/APKBUILD36
-rw-r--r--testing/gsettings-qt/APKBUILD32
-rw-r--r--testing/gsimplecal/APKBUILD28
-rw-r--r--testing/gst-plugins-rs/APKBUILD60
-rw-r--r--testing/gst-plugins-rs/dylib.patch13
-rw-r--r--testing/gst-rtsp-server/APKBUILD20
-rw-r--r--testing/gstreamer-vaapi/APKBUILD31
-rw-r--r--testing/gstreamermm/APKBUILD11
-rw-r--r--testing/gtk4-layer-shell/APKBUILD62
-rw-r--r--testing/gtk4-layer-shell/no-lua-test.patch13
-rw-r--r--testing/gtkgreet/APKBUILD41
-rw-r--r--testing/gtkhash/APKBUILD15
-rw-r--r--testing/gtklock/APKBUILD25
-rw-r--r--[-rwxr-xr-x]testing/gtksourceviewmm3/APKBUILD14
-rw-r--r--[-rwxr-xr-x]testing/gtksourceviewmm4/APKBUILD14
-rw-r--r--testing/gtkwave/APKBUILD46
-rw-r--r--testing/guacamole-server/APKBUILD63
-rw-r--r--testing/guake/APKBUILD45
-rw-r--r--testing/guake/fix-install.patch19
-rw-r--r--[-rwxr-xr-x]testing/guetzli/APKBUILD2
-rw-r--r--testing/gufw/APKBUILD15
-rw-r--r--testing/guile-reader/APKBUILD38
-rw-r--r--testing/guish/APKBUILD31
-rw-r--r--testing/gutenprint/APKBUILD33
-rw-r--r--testing/gx-go/APKBUILD51
-rw-r--r--testing/gx-go/glide.lock86
-rw-r--r--testing/gx-go/glide.yaml12
-rw-r--r--testing/gx-go/gomod.patch190
-rw-r--r--testing/gx/APKBUILD40
-rw-r--r--testing/gx/glide.lock84
-rw-r--r--testing/gx/glide.yaml16
-rw-r--r--testing/gyp/0001-fix-module-collections-has-no-attribute-mutableset-iterable.patch27
-rw-r--r--testing/gyp/APKBUILD36
-rw-r--r--testing/gzdoom/0001-link-zipdir-against-fts.patch10
-rw-r--r--testing/gzdoom/0002-fix-musl-fts.patch10
-rw-r--r--testing/gzdoom/APKBUILD75
-rw-r--r--testing/h1-cli/APKBUILD36
-rw-r--r--testing/h26forge/APKBUILD30
-rw-r--r--testing/h4h5tools/APKBUILD7
-rw-r--r--testing/h4h5tools/h4h5tools-format-security-fix.patch46
-rw-r--r--testing/habitctl/APKBUILD30
-rw-r--r--testing/hackrf/APKBUILD41
-rw-r--r--testing/halp/APKBUILD52
-rw-r--r--testing/hamlib/APKBUILD62
-rw-r--r--testing/hamster-time-tracker/0001-Catch-AttributeError-if-bindtextdomain-isn-t-there.patch35
-rw-r--r--testing/hamster-time-tracker/APKBUILD11
-rw-r--r--testing/hamster-time-tracker/no-version-check.patch24
-rw-r--r--testing/handbrake/APKBUILD116
-rw-r--r--testing/handbrake/fix-missing-x265-link-flag.patch25
-rw-r--r--testing/handbrake/handbrake-9999-remove-dvdnav-dup.patch20
-rw-r--r--testing/handlebars/APKBUILD42
-rw-r--r--testing/handlebars/test_lmdb_cache.patch15
-rw-r--r--testing/hangover-wine/APKBUILD133
-rw-r--r--testing/hangover-wine/rpath.patch57
-rw-r--r--testing/hardened-malloc/APKBUILD8
-rw-r--r--testing/hare-cairo/APKBUILD30
-rw-r--r--testing/hare-madeline/APKBUILD26
-rw-r--r--testing/hare-scfg/APKBUILD28
-rw-r--r--testing/hare-wayland/APKBUILD29
-rw-r--r--testing/hare-xkb/APKBUILD31
-rw-r--r--testing/haredo/APKBUILD31
-rw-r--r--testing/hari/APKBUILD24
-rw-r--r--testing/harminv/APKBUILD20
-rw-r--r--testing/hashcat/APKBUILD4
-rw-r--r--testing/hatop/APKBUILD22
-rw-r--r--testing/hctl/APKBUILD33
-rw-r--r--testing/hdf4/APKBUILD2
-rw-r--r--testing/hdr10plus-tool/APKBUILD37
-rw-r--r--testing/headscale/APKBUILD35
-rw-r--r--testing/heh/APKBUILD40
-rw-r--r--testing/helm-ls/APKBUILD35
-rw-r--r--testing/helm/APKBUILD56
-rw-r--r--testing/helmfile/APKBUILD47
-rw-r--r--testing/helvum/APKBUILD13
-rw-r--r--testing/helvum/pipewire-rs-0.7.2.patch17
-rw-r--r--testing/heplify-server/APKBUILD25
-rw-r--r--testing/heplify-server/fix-go-vet-errors.patch77
-rw-r--r--testing/heplify-server/heplify-server.initd4
-rw-r--r--testing/heplify/APKBUILD34
-rw-r--r--testing/heplify/heplify.initd2
-rw-r--r--testing/herbe/APKBUILD24
-rw-r--r--testing/hex/APKBUILD18
-rw-r--r--testing/hexdiff/APKBUILD2
-rw-r--r--testing/hexedit/APKBUILD41
-rw-r--r--testing/hexer/APKBUILD6
-rw-r--r--testing/hexinject/APKBUILD30
-rw-r--r--testing/hexinject/fix-build.patch15
-rw-r--r--testing/hfst/APKBUILD36
-rw-r--r--testing/hfst/missing_unistd_include.patch10
-rw-r--r--testing/hiawatha/APKBUILD19
-rw-r--r--testing/hiawatha/letsencrypt.helper2
-rw-r--r--testing/hidrd/APKBUILD2
-rw-r--r--testing/highscore/0001-merge-file.patch28
-rw-r--r--testing/highscore/0002-use-tracker-3.0.patch162
-rw-r--r--testing/highscore/APKBUILD46
-rw-r--r--testing/hikari/APKBUILD45
-rw-r--r--testing/hikari/flag-arg.patch17
-rw-r--r--testing/hilbish/APKBUILD41
-rw-r--r--testing/hime/APKBUILD101
-rw-r--r--testing/hime/fix-im-client-ldflags.patch14
-rwxr-xr-xtesting/hime/hime-gtk2.post-install4
-rwxr-xr-xtesting/hime/hime-gtk2.post-upgrade4
-rwxr-xr-xtesting/hime/hime-gtk3.post-install4
-rwxr-xr-xtesting/hime/hime-gtk3.post-upgrade4
-rw-r--r--testing/hime/use-bash-not-sh.patch104
-rw-r--r--testing/himitsu-firefox/APKBUILD26
-rwxr-xr-xtesting/himitsu-firefox/himitsu-firefox.post-install10
-rw-r--r--testing/himitsu-git/APKBUILD28
-rw-r--r--testing/himitsu-keyring/APKBUILD29
-rw-r--r--testing/hinsightd/APKBUILD68
-rw-r--r--testing/hinsightd/compile.patch22
-rw-r--r--testing/hiprompt-gtk-py/APKBUILD30
-rw-r--r--testing/hiredict/APKBUILD51
-rw-r--r--testing/hledger-iadd/APKBUILD40
-rw-r--r--testing/hledger-iadd/cabal.project.freeze179
-rw-r--r--testing/hledger-interest/APKBUILD40
-rw-r--r--testing/hledger-interest/cabal.project.freeze147
-rw-r--r--testing/hledger-stockquotes/APKBUILD40
-rw-r--r--testing/hledger-stockquotes/cabal.project.freeze241
-rw-r--r--testing/hledger-ui/APKBUILD42
-rw-r--r--testing/hledger-ui/cabal.project.freeze199
-rw-r--r--testing/hledger-web/APKBUILD46
-rw-r--r--testing/hledger-web/cabal.project.freeze331
-rw-r--r--testing/hledger-web/hledger-web.initd22
-rw-r--r--testing/hledger-web/hledger-web.pre-install6
-rw-r--r--testing/hledger/APKBUILD44
-rw-r--r--testing/hledger/cabal.project.freeze169
-rw-r--r--testing/homebank/APKBUILD15
-rw-r--r--testing/homer-app/0001-change-web-and-config-paths.patch89
-rw-r--r--testing/homer-app/APKBUILD29
-rw-r--r--testing/homer-app/change-default-locations.patch73
-rw-r--r--testing/homer-app/homer-app.initd2
-rw-r--r--testing/hopalong/APKBUILD16
-rw-r--r--testing/horizon/APKBUILD16
-rw-r--r--testing/horizon/strerror.patch12
-rw-r--r--testing/horust/APKBUILD44
-rw-r--r--testing/hotspot/APKBUILD44
-rw-r--r--testing/howard-bc/APKBUILD8
-rw-r--r--testing/hplip/0025-Remove-all-ImageProcessor-functionality-which-is-clo.patch143
-rw-r--r--testing/hplip/APKBUILD60
-rw-r--r--testing/hplip/fix-includes.patch20
-rw-r--r--testing/hplip/more-imageprocessor-removes.patch67
-rw-r--r--testing/hplip/no-empty-glob.patch18
-rw-r--r--testing/hplip/python-3.8-compat.patch15
-rw-r--r--testing/hr/APKBUILD25
-rw-r--r--testing/hsetroot/APKBUILD2
-rw-r--r--testing/hstdb/APKBUILD52
-rw-r--r--testing/hstdb/default-histfile-path.patch33
-rw-r--r--testing/hstdb/fix-format_duration-panicing.patch332
-rw-r--r--testing/hstdb/rename-text_excluded.patch27
-rw-r--r--testing/hstdb/replace-pretty_env_logger.patch137
-rw-r--r--testing/hstdb/strip-features.patch12
-rw-r--r--testing/htmlcxx/APKBUILD11
-rw-r--r--testing/htmldoc/APKBUILD13
-rw-r--r--testing/htmlmin/APKBUILD25
-rw-r--r--testing/htmlq/APKBUILD24
-rw-r--r--testing/htslib/APKBUILD49
-rw-r--r--testing/httpie-oauth/APKBUILD14
-rw-r--r--testing/httrack/APKBUILD4
-rw-r--r--testing/hub/APKBUILD8
-rw-r--r--testing/hubble-cli/APKBUILD57
-rw-r--r--testing/hubble-cli/byteorder-add-s390x-support.patch11
-rw-r--r--testing/hunspell-ca-es/APKBUILD22
-rw-r--r--testing/hunspell-es-ar/APKBUILD35
-rw-r--r--testing/hurl/APKBUILD30
-rw-r--r--testing/hw-probe/APKBUILD26
-rw-r--r--testing/hwatch/APKBUILD42
-rw-r--r--testing/hx/APKBUILD30
-rw-r--r--testing/hx/broken-makefile.patch40
-rw-r--r--testing/hx/hx.post-install7
-rw-r--r--testing/hy/APKBUILD42
-rw-r--r--testing/hyperlink/APKBUILD40
-rw-r--r--testing/hyperlink/bump-getrandom.patch42
-rw-r--r--testing/hypnotix/0001-fix-locale-has-no-attribute-bindtextdomain.patch11
-rw-r--r--testing/hypnotix/APKBUILD44
-rw-r--r--testing/hyprcursor/APKBUILD50
-rw-r--r--testing/hyprland/APKBUILD99
-rw-r--r--testing/hyprland/bump-soversion.patch.wlroots13
-rw-r--r--testing/hyprland/use-system-installed-udis86.patch15
-rw-r--r--testing/hyx/APKBUILD22
-rw-r--r--testing/i2util/APKBUILD2
-rw-r--r--testing/i3blocks/APKBUILD37
-rw-r--r--testing/i3blocks/fix-makefile.patch15
-rw-r--r--testing/i3status-rust/APKBUILD62
-rw-r--r--testing/i3wm-gaps/APKBUILD31
-rw-r--r--testing/ibus-anthy/APKBUILD32
-rw-r--r--testing/ibus-libpinyin/APKBUILD42
-rw-r--r--testing/ibus-rime/APKBUILD33
-rw-r--r--testing/icdiff/APKBUILD38
-rw-r--r--testing/icdiff/fix-flake8-binary.patch24
-rw-r--r--testing/icestorm/0001-fix-format-specifiers.patch95
-rw-r--r--testing/icestorm/APKBUILD33
-rw-r--r--testing/icewm/APKBUILD59
-rw-r--r--testing/icingaweb2-module-businessprocess/APKBUILD7
-rw-r--r--testing/icingaweb2-module-fileshipper/APKBUILD4
-rw-r--r--testing/icingaweb2-module-generictts/APKBUILD6
-rw-r--r--testing/icingaweb2-module-pnp/APKBUILD2
-rw-r--r--testing/icmake/APKBUILD12
-rw-r--r--testing/icmake/disable-clear-screen.patch26
-rw-r--r--testing/idesk/APKBUILD19
-rw-r--r--testing/idesk/imlib2.patch27
-rw-r--r--testing/ideviceinstaller/APKBUILD6
-rw-r--r--testing/idevicerestore/APKBUILD6
-rw-r--r--testing/idris/APKBUILD160
-rw-r--r--testing/idris/cabal.config98
-rw-r--r--testing/idris2-stage0/APKBUILD42
-rw-r--r--testing/idris2/0001-fix-Flush-standard-when-prompting-for-package-inform.patch56
-rw-r--r--testing/idris2/APKBUILD93
-rw-r--r--testing/iec16022/APKBUILD36
-rw-r--r--testing/ifuse/APKBUILD9
-rw-r--r--testing/igrep/APKBUILD40
-rw-r--r--testing/igt-gpu-tools/APKBUILD55
-rw-r--r--testing/igt-gpu-tools/bash-sh.patch66
-rw-r--r--testing/igt-gpu-tools/fix-meson.patch36
-rw-r--r--testing/igt-gpu-tools/hdmi-vsdb-struct-padding-fix.patch44
-rw-r--r--testing/igt-gpu-tools/musl.patch203
-rw-r--r--testing/iipsrv/APKBUILD63
-rw-r--r--testing/iipsrv/RawTile.patch10
-rw-r--r--testing/iipsrv/apache.iipsrv.conf1
-rw-r--r--testing/iipsrv/iipsrv.confd5
-rw-r--r--testing/iipsrv/iipsrv.initd14
-rw-r--r--testing/iipsrv/iipsrv.pre-install8
-rw-r--r--testing/iipsrv/lighttpd.iipsrv.conf6
-rw-r--r--testing/iir1/APKBUILD41
-rw-r--r--testing/ijq/APKBUILD11
-rw-r--r--testing/ima-evm-utils/APKBUILD54
-rw-r--r--testing/imageflow/APKBUILD65
-rw-r--r--testing/imapfilter/APKBUILD8
-rw-r--r--testing/imath/APKBUILD58
-rw-r--r--testing/imediff/APKBUILD33
-rw-r--r--testing/imgdiff/APKBUILD8
-rw-r--r--testing/imhex/APKBUILD103
-rw-r--r--testing/imrsh/APKBUILD4
-rw-r--r--testing/indi-3rdparty/APKBUILD50
-rw-r--r--testing/initify/APKBUILD2
-rw-r--r--testing/innernet/APKBUILD69
-rw-r--r--testing/innernet/innernet-server.confd4
-rw-r--r--testing/innernet/innernet-server.initd19
-rw-r--r--testing/innernet/innernet.confd4
-rw-r--r--testing/innernet/innernet.initd19
-rw-r--r--testing/innernet/unbundle-sqlite.patch25
-rwxr-xr-xtesting/inspircd/APKBUILD54
-rw-r--r--testing/intel-compute-runtime/APKBUILD43
-rw-r--r--testing/intel-compute-runtime/link-execinfo.patch50
-rw-r--r--testing/intel-compute-runtime/pthread-yield.patch22
-rw-r--r--testing/intel-compute-runtime/remove-rtld-deepbind.patch19
-rw-r--r--testing/intel-compute-runtime/remove-select.patch14
-rw-r--r--testing/intel-graphics-compiler/APKBUILD52
-rw-r--r--testing/intel-graphics-compiler/remove-rtld-deepbind.patch12
-rw-r--r--testing/intel-graphics-compiler/xsi_strerror_r.patch25
-rw-r--r--testing/interception-tools/APKBUILD50
-rw-r--r--testing/interception-tools/modules-load.conf1
-rw-r--r--testing/interception-tools/udevmon.initd11
-rw-r--r--testing/intiface-central/APKBUILD85
-rw-r--r--testing/intiface-central/intiface-central7
-rw-r--r--testing/intiface-central/intiface-central.desktop8
-rw-r--r--testing/intiface-central/no-werror.patch11
-rw-r--r--testing/intiface-central/pmos-fit-screen.patch105
-rw-r--r--testing/intiface-central/system-corrosion.patch24
-rw-r--r--testing/intiface-central/system-flutter.patch15
-rw-r--r--testing/iodine/APKBUILD27
-rw-r--r--testing/iozone/APKBUILD49
-rw-r--r--testing/ip2location/APKBUILD40
-rw-r--r--testing/iprange/APKBUILD2
-rw-r--r--testing/irccd/APKBUILD8
-rw-r--r--[-rwxr-xr-x]testing/ircd-hybrid/APKBUILD6
-rw-r--r--testing/irclog2html/APKBUILD26
-rw-r--r--testing/irssi-tcl/APKBUILD43
-rw-r--r--testing/irssi-tcl/global-scripts-path.patch19
-rw-r--r--testing/irssi-tcl/irssi_dir-returns-home.patch11
-rw-r--r--testing/isa-l/APKBUILD58
-rw-r--r--testing/isa-l/isa-l-ec.patch155
-rw-r--r--testing/isa-l/isa-l-sve-ec.patch3369
-rw-r--r--testing/isoinfo/APKBUILD2
-rw-r--r--testing/isomd5sum/APKBUILD2
-rw-r--r--testing/itd/APKBUILD33
-rw-r--r--testing/iverilog/APKBUILD46
-rw-r--r--testing/iverilog/autoconf-2.70.patch304
-rw-r--r--testing/j4-dmenu-desktop/APKBUILD31
-rw-r--r--testing/jack_capture/APKBUILD8
-rw-r--r--testing/jackal/APKBUILD60
-rw-r--r--testing/jackal/config.yml.tmpl138
-rw-r--r--testing/jackal/init.sql3
-rw-r--r--testing/jackal/jackal.initd18
-rw-r--r--testing/jackal/jackal.logrotate7
-rw-r--r--testing/jackal/jackal.post-install12
-rw-r--r--testing/jackal/jackal.pre-install11
-rw-r--r--testing/jackdaw/APKBUILD46
-rw-r--r--testing/jackett/APKBUILD70
-rw-r--r--testing/jackett/jackett.confd6
-rw-r--r--testing/jackett/jackett.initd26
-rw-r--r--testing/jackett/jackett.pre-install6
-rw-r--r--testing/jackline/APKBUILD37
-rw-r--r--testing/jackline/latest-notty-compat.patch211
-rw-r--r--testing/jalv/APKBUILD55
-rw-r--r--testing/jami-daemon/APKBUILD86
-rw-r--r--testing/jami-daemon/dhtnet-unpack-dir.patch11
-rw-r--r--testing/jami-qt/APKBUILD77
-rw-r--r--testing/jami-qt/drop-qt-version-check.patch19
-rw-r--r--testing/jami-qt/system.patch33
-rw-r--r--testing/janus-gateway/APKBUILD67
-rw-r--r--testing/janus-gateway/janus-gateway.confd3
-rw-r--r--testing/janus-gateway/janus-gateway.initd32
-rw-r--r--testing/janus-gateway/janus-gateway.pre-install5
-rw-r--r--testing/jaq/APKBUILD36
-rw-r--r--testing/jaq/fix-drop-test.patch13
-rw-r--r--testing/jasper/APKBUILD41
-rw-r--r--testing/java-asmtools/APKBUILD15
-rw-r--r--testing/java-asmtools/java-version-check.patch17
-rw-r--r--testing/java-jtharness/APKBUILD24
-rw-r--r--testing/java-jtreg/APKBUILD73
-rw-r--r--testing/java-jtreg/fix-build-script.patch110
-rw-r--r--testing/java-jtreg/fix-build.patch11
-rw-r--r--testing/java-jtreg/fix-version-number.patch27
-rw-r--r--testing/java-jtreg/headless-tests.patch17
-rw-r--r--testing/java-libsignal-client/APKBUILD39
-rwxr-xr-xtesting/java-libsignal-client/java-libsignal-client.post-install8
-rwxr-xr-xtesting/java-libsignal-client/java-libsignal-client.post-upgrade8
-rw-r--r--testing/jbigkit/APKBUILD4
-rw-r--r--testing/jdebp-redo/APKBUILD8
-rw-r--r--testing/jdupes/APKBUILD11
-rw-r--r--testing/jdupes/system-xxhash.patch48
-rw-r--r--testing/jedi-language-server/APKBUILD31
-rw-r--r--testing/jellyfin-web/APKBUILD30
-rw-r--r--testing/jellyfin-web/jellyfin-web.post-install6
-rw-r--r--testing/jellyfin/APKBUILD59
-rw-r--r--testing/jellyfin/jellyfin.confd5
-rw-r--r--testing/jellyfin/jellyfin.initd20
-rw-r--r--testing/jellyfin/jellyfin.pre-install9
-rw-r--r--testing/jfrog-cli/APKBUILD12
-rw-r--r--testing/jhead/APKBUILD25
-rw-r--r--testing/jicofo/APKBUILD63
-rw-r--r--testing/jicofo/jicofo.conf10
-rw-r--r--testing/jicofo/jicofo.confd36
-rw-r--r--testing/jicofo/jicofo.initd28
-rw-r--r--testing/jicofo/jicofo.logrotate10
-rw-r--r--testing/jicofo/jicofo.pre-install6
-rw-r--r--testing/jicofo/sip-communicator.properties1
-rw-r--r--testing/jigasi/APKBUILD55
-rw-r--r--testing/jigasi/jigasi.confd27
-rw-r--r--testing/jigasi/jigasi.initd29
-rw-r--r--testing/jigasi/jigasi.logrotate10
-rw-r--r--testing/jigasi/jigasi.pre-install6
-rw-r--r--testing/jigasi/sip-communicator.properties160
-rw-r--r--testing/jinja2-cli/APKBUILD25
-rw-r--r--testing/jitsi-meet/APKBUILD86
-rw-r--r--testing/jitsi-meet/openssl3.patch13
-rw-r--r--testing/jitsi-videobridge/APKBUILD67
-rw-r--r--testing/jitsi-videobridge/jitsi-videobridge.confd34
-rw-r--r--testing/jitsi-videobridge/jitsi-videobridge.initd28
-rw-r--r--testing/jitsi-videobridge/jitsi-videobridge.logrotate12
-rw-r--r--testing/jitsi-videobridge/jitsi-videobridge.pre-install6
-rw-r--r--testing/jitsi-videobridge/jvb.conf13
-rw-r--r--testing/jitsi-videobridge/sip-communicator.properties20
-rw-r--r--testing/jreleaser/APKBUILD61
-rw-r--r--testing/jrsonnet-cli/APKBUILD36
-rw-r--r--testing/jshon/APKBUILD37
-rw-r--r--testing/jshon/disable-werror.patch10
-rw-r--r--testing/jshon/missing-typesh.patch10
-rw-r--r--testing/jsmn/APKBUILD22
-rw-r--r--testing/json-c0.12/APKBUILD45
-rw-r--r--testing/json2tsv/APKBUILD52
-rw-r--r--testing/jsonnet-bundler/APKBUILD30
-rw-r--r--testing/jsonnet-language-server/APKBUILD30
-rw-r--r--testing/judo/APKBUILD30
-rw-r--r--testing/junit2html/APKBUILD13
-rw-r--r--testing/jwt-cli/APKBUILD34
-rw-r--r--testing/k0sctl/0001-Fix-upload-test-when-tmp-is-empty-318.patch71
-rw-r--r--testing/k0sctl/0001-Use-go-1.18-345.patch33
-rw-r--r--testing/k0sctl/APKBUILD32
-rw-r--r--testing/k2/APKBUILD27
-rw-r--r--testing/k3sup/APKBUILD53
-rw-r--r--testing/kabmat/APKBUILD29
-rw-r--r--testing/kabmat/makefile.patch43
-rw-r--r--testing/kak-lsp/APKBUILD15
-rw-r--r--testing/kakoune-cr/APKBUILD48
-rw-r--r--testing/kakoune-cr/kcr.kak3
-rw-r--r--testing/kanister-tools/APKBUILD62
-rw-r--r--testing/kannel/APKBUILD2
-rw-r--r--testing/kapow/APKBUILD16
-rw-r--r--testing/kapow/fix-cgo.patch11
-rw-r--r--testing/katana/APKBUILD35
-rw-r--r--testing/kbs2/APKBUILD31
-rw-r--r--testing/kbs2/cargo-update-libc-lfs64.patch16
-rw-r--r--testing/kcgi/APKBUILD38
-rw-r--r--testing/kdiskmark/APKBUILD47
-rw-r--r--testing/keama/APKBUILD44
-rw-r--r--testing/keepassxc-browser/APKBUILD30
-rw-r--r--testing/keepassxc-proxy-static/APKBUILD60
-rw-r--r--testing/keepassxc-proxy-static/keepassxc-proxy-install.in100
-rw-r--r--testing/keepassxc-proxy-static/keepassxc-proxy-static.post-install7
-rw-r--r--testing/kerberoast/APKBUILD37
-rw-r--r--testing/kexec-tools/APKBUILD35
-rw-r--r--testing/kexec-tools/fix-build-on-Alpine-linux.patch28
-rw-r--r--testing/keybase-client/APKBUILD14
-rw-r--r--testing/keynav/APKBUILD30
-rw-r--r--testing/keystone/APKBUILD6
-rw-r--r--testing/kfc/APKBUILD26
-rw-r--r--testing/kgeotag/APKBUILD47
-rw-r--r--testing/khal/APKBUILD60
-rw-r--r--testing/khard/APKBUILD46
-rw-r--r--testing/khinsider/APKBUILD34
-rw-r--r--testing/khronos/APKBUILD38
-rw-r--r--testing/kicad-library/APKBUILD58
-rw-r--r--testing/kicad/APKBUILD110
-rw-r--r--testing/kimchi/APKBUILD8
-rw-r--r--testing/kind/APKBUILD47
-rw-r--r--testing/kind/skip-version-test.patch11
-rw-r--r--testing/kine/APKBUILD20
-rw-r--r--testing/kirc/APKBUILD29
-rw-r--r--testing/kismet/APKBUILD55
-rw-r--r--testing/kismet/sqlite3-longlong.patch21
-rw-r--r--testing/kjv/APKBUILD30
-rw-r--r--testing/klfc/APKBUILD37
-rw-r--r--testing/klfc/cabal.config78
-rw-r--r--testing/klfc/ghc9-001.patch22
-rw-r--r--testing/klfc/ghc9-002.patch41
-rw-r--r--testing/klibc/APKBUILD215
-rwxr-xr-xtesting/klibc/libklibc.post-deinstall17
-rwxr-xr-xtesting/klibc/libklibc.post-install18
-rw-r--r--testing/kmscon/APKBUILD47
-rw-r--r--testing/knative-client/APKBUILD49
-rw-r--r--testing/knxd/APKBUILD30
-rw-r--r--testing/ko/APKBUILD47
-rw-r--r--testing/ko/unset-CGO_ENABLED.patch20
-rw-r--r--testing/kodi-audioencoder-flac/APKBUILD23
-rw-r--r--testing/kodi-audioencoder-lame/APKBUILD23
-rw-r--r--testing/kodi-audioencoder-vorbis/APKBUILD23
-rw-r--r--testing/kodi-audioencoder-wav/APKBUILD23
-rw-r--r--testing/kodi-game-libretro-atari800/APKBUILD25
-rw-r--r--testing/kodi-game-libretro-beetle-bsnes/APKBUILD19
-rw-r--r--testing/kodi-game-libretro-beetle-lynx/APKBUILD18
-rw-r--r--testing/kodi-game-libretro-beetle-ngp/APKBUILD19
-rw-r--r--testing/kodi-game-libretro-beetle-pce-fast/APKBUILD19
-rw-r--r--testing/kodi-game-libretro-beetle-pcfx/APKBUILD19
-rw-r--r--testing/kodi-game-libretro-beetle-psx/APKBUILD21
-rw-r--r--testing/kodi-game-libretro-beetle-saturn/APKBUILD18
-rw-r--r--testing/kodi-game-libretro-beetle-supergrafx/APKBUILD18
-rw-r--r--testing/kodi-game-libretro-beetle-vb/APKBUILD19
-rw-r--r--testing/kodi-game-libretro-beetle-wswan/APKBUILD19
-rw-r--r--testing/kodi-game-libretro-desmume/APKBUILD21
-rw-r--r--testing/kodi-game-libretro-dosbox/APKBUILD20
-rw-r--r--testing/kodi-game-libretro-fbneo/APKBUILD14
-rw-r--r--testing/kodi-game-libretro-frodo/APKBUILD19
-rw-r--r--testing/kodi-game-libretro-mame2000/APKBUILD18
-rw-r--r--testing/kodi-game-libretro-mame2003/APKBUILD18
-rw-r--r--testing/kodi-game-libretro-mgba/APKBUILD18
-rw-r--r--testing/kodi-game-libretro-mupen64plus-nx/APKBUILD18
-rw-r--r--testing/kodi-game-libretro-nestopia/APKBUILD18
-rw-r--r--testing/kodi-game-libretro-snes9x/APKBUILD15
-rw-r--r--testing/kodi-game-libretro-theodore/APKBUILD18
-rw-r--r--testing/kodi-game-libretro/APKBUILD17
-rw-r--r--testing/kodi-inputstream-adaptive/APKBUILD31
-rw-r--r--testing/kodi-inputstream-ffmpegdirect/APKBUILD25
-rw-r--r--testing/kodi-inputstream-ffmpegdirect/ctime.patch12
-rw-r--r--testing/kodi-inputstream-ffmpegdirect/gcc13.patch24
-rw-r--r--testing/kodi-inputstream-rtmp/APKBUILD21
-rw-r--r--testing/kodi-peripheral-joystick/APKBUILD17
-rw-r--r--testing/kodi-pvr-hts/APKBUILD24
-rw-r--r--testing/kodi-pvr-hts/ctime.patch12
-rw-r--r--testing/kodi-pvr-iptvsimple/APKBUILD17
-rw-r--r--testing/kodi-vfs-libarchive/APKBUILD17
-rw-r--r--testing/kodi-vfs-rar/APKBUILD17
-rw-r--r--testing/kodi-vfs-sacd/APKBUILD22
-rw-r--r--testing/kodi-vfs-sacd/int-conversion.patch16
-rw-r--r--testing/kodi-vfs-sftp/APKBUILD17
-rw-r--r--testing/komikku/APKBUILD59
-rw-r--r--testing/kompose/APKBUILD24
-rw-r--r--testing/kompose/fix-cgo.patch11
-rw-r--r--testing/kondo/APKBUILD45
-rw-r--r--testing/kooha/APKBUILD71
-rw-r--r--testing/kopano-core/0001-python-Use-libmdbx-instead-of-bsddb.patch228
-rw-r--r--testing/kopano-core/0002-provider.patch20
-rw-r--r--testing/kopano-core/0003-spamd-Correct-owner-and-group-of-spamd-ham_dir-spam_.patch28
-rw-r--r--testing/kopano-core/0004-configure.ac-depend-on-libldap-not-libldap_r-doesn-t.patch26
-rw-r--r--testing/kopano-core/APKBUILD369
-rw-r--r--testing/kopano-core/fix-build-with-musl-1.2.3.patch11
-rw-r--r--testing/kopano-core/fix-icu-70-1.patch13
-rw-r--r--testing/kopano-core/kopano-core.pre-install15
-rw-r--r--testing/kopano-core/kopano-dagent.initd12
-rw-r--r--testing/kopano-core/kopano-gateway.initd8
-rw-r--r--testing/kopano-core/kopano-ical.initd8
-rw-r--r--testing/kopano-core/kopano-monitor.initd8
-rw-r--r--testing/kopano-core/kopano-search.initd12
-rw-r--r--testing/kopano-core/kopano-server.conf1
-rw-r--r--testing/kopano-core/kopano-server.initd12
-rw-r--r--testing/kopano-core/kopano-spamd.initd8
-rw-r--r--testing/kopano-core/kopano-spooler.initd8
-rw-r--r--testing/kopano-webapp-desktopnotifications/APKBUILD112
-rw-r--r--testing/kopano-webapp-fetchmail/APKBUILD109
-rw-r--r--testing/kopano-webapp-filepreviewer/APKBUILD109
-rw-r--r--testing/kopano-webapp-files-backend-owncloud/APKBUILD110
-rw-r--r--testing/kopano-webapp-files-backend-smb/APKBUILD110
-rw-r--r--testing/kopano-webapp-files/APKBUILD119
-rw-r--r--testing/kopano-webapp-files/kopano-webapp-files.ini2
-rw-r--r--testing/kopano-webapp-intranet/APKBUILD110
-rw-r--r--testing/kopano-webapp-mdm/APKBUILD114
-rw-r--r--testing/kopano-webapp-smime/APKBUILD112
-rw-r--r--testing/kopano-webapp-spellchecker-languagepack-de-at/APKBUILD109
-rw-r--r--testing/kopano-webapp-spellchecker-languagepack-de-ch/APKBUILD113
-rw-r--r--testing/kopano-webapp-spellchecker-languagepack-de-de/APKBUILD113
-rw-r--r--testing/kopano-webapp-spellchecker-languagepack-en-gb/APKBUILD113
-rw-r--r--testing/kopano-webapp-spellchecker-languagepack-en-us/APKBUILD109
-rw-r--r--testing/kopano-webapp-spellchecker-languagepack-es-es/APKBUILD109
-rw-r--r--testing/kopano-webapp-spellchecker-languagepack-fr-fr/APKBUILD109
-rw-r--r--testing/kopano-webapp-spellchecker-languagepack-it-it/APKBUILD113
-rw-r--r--testing/kopano-webapp-spellchecker-languagepack-nl-nl/APKBUILD113
-rw-r--r--testing/kopano-webapp-spellchecker-languagepack-pl-pl/APKBUILD113
-rw-r--r--testing/kopano-webapp-spellchecker/APKBUILD111
-rw-r--r--testing/kopano-webapp-spellchecker/kopano-webapp-spellchecker.ini1
-rw-r--r--testing/kopano-webapp/0001-Fix-fatal-errors-in-translation-files.patch42
-rw-r--r--testing/kopano-webapp/APKBUILD242
-rwxr-xr-xtesting/kopano-webapp/compress-static38
-rw-r--r--testing/kopano-webapp/kopano-webapp.conf32
-rw-r--r--testing/kopano-webapp/kopano-webapp.ini3
-rw-r--r--testing/kopano-webapp/kopano-webapp.pre-install7
-rw-r--r--testing/kopano-webapp/nginx-location.conf43
-rw-r--r--testing/kopano-webapp/php-fpm.example.conf6
-rw-r--r--testing/kopia/APKBUILD29
-rw-r--r--testing/kops/APKBUILD20
-rw-r--r--testing/kops/fix-go1.18-segfault.patch36
-rw-r--r--testing/kotlin-language-server/APKBUILD31
-rw-r--r--testing/kpatch/02-argp.patch11
-rw-r--r--testing/kpatch/03-ppc64.patch15
-rw-r--r--testing/kpatch/APKBUILD41
-rw-r--r--testing/kristall/APKBUILD33
-rw-r--r--testing/kristall/set-kristall-version.patch11
-rw-r--r--testing/krita-plugin-gmic/APKBUILD53
-rw-r--r--testing/krita-plugin-gmic/gmic-sys.patch14
-rw-r--r--testing/krita-plugin-gmic/no-qt6.patch11
-rw-r--r--testing/kstars/APKBUILD76
-rw-r--r--testing/kstars/tests-disable-ngc4535-autofocus3.patch12
-rw-r--r--testing/kube-no-trouble/APKBUILD39
-rw-r--r--testing/kubectl-cert-manager/APKBUILD34
-rw-r--r--testing/kubectl-krew/APKBUILD42
-rw-r--r--testing/kubectl-krew/test-use-testing-tmpdir.patch15
-rw-r--r--testing/kubectl-oidc_login/APKBUILD32
-rw-r--r--testing/kubeone/APKBUILD61
-rw-r--r--testing/kubepug/APKBUILD52
-rw-r--r--testing/kubernetes/APKBUILD224
-rw-r--r--testing/kubernetes/kube-apiserver.confd7
-rwxr-xr-xtesting/kubernetes/kube-apiserver.initd21
-rw-r--r--testing/kubernetes/kube-apiserver.logrotated7
-rw-r--r--testing/kubernetes/kube-controller-manager.confd7
-rwxr-xr-xtesting/kubernetes/kube-controller-manager.initd19
-rw-r--r--testing/kubernetes/kube-controller-manager.logrotated7
-rw-r--r--testing/kubernetes/kube-proxy.confd4
-rwxr-xr-xtesting/kubernetes/kube-proxy.initd20
-rw-r--r--testing/kubernetes/kube-proxy.logrotated8
-rw-r--r--testing/kubernetes/kube-scheduler.confd7
-rwxr-xr-xtesting/kubernetes/kube-scheduler.initd19
-rw-r--r--testing/kubernetes/kube-scheduler.logrotated7
-rw-r--r--testing/kubernetes/kubelet.confd1
-rwxr-xr-xtesting/kubernetes/kubelet.initd21
-rw-r--r--testing/kubernetes/kubelet.logrotated7
-rw-r--r--testing/kubernetes/make-e2e_node-run-over-distro-bins.patch12
-rw-r--r--testing/kubernetes/make-test-cmd-run-over-hyperkube-based-kubectl.patch19
-rw-r--r--testing/kubesplit/APKBUILD29
-rw-r--r--testing/kubesplit/remove-hard-pytest-requirement.patch15
-rw-r--r--testing/kumactl/APKBUILD114
-rw-r--r--testing/kumactl/kuma-cp.confd16
-rw-r--r--testing/kumactl/kuma-cp.initd29
-rw-r--r--testing/kumactl/kuma-cp.pre-install6
-rw-r--r--testing/kumactl/kuma-dp.confd16
-rw-r--r--testing/kumactl/kuma-dp.initd28
l---------testing/kumactl/kuma-dp.pre-install1
-rw-r--r--testing/kustomize/APKBUILD50
-rw-r--r--testing/laminar/APKBUILD77
-rw-r--r--testing/laminar/laminar.initd23
-rw-r--r--testing/laminar/laminar.pre-install10
-rw-r--r--testing/laminar/laminard-location.patch13
-rw-r--r--testing/laminar/libstdc++13.patch12
-rw-r--r--testing/laminar/musl.patch12
-rw-r--r--testing/laminar/no-network.patch22
-rw-r--r--testing/lapce/APKBUILD77
-rw-r--r--testing/lapce/lapce.desktop12
-rw-r--r--testing/laze/APKBUILD60
-rw-r--r--testing/lazydocker/APKBUILD27
-rw-r--r--testing/lazymc/APKBUILD45
-rw-r--r--testing/lazymc/lazymc.confd3
-rw-r--r--testing/lazymc/lazymc.initd27
-rw-r--r--testing/lazymc/lazymc.pre-install6
-rw-r--r--testing/lcalc/APKBUILD39
-rw-r--r--testing/lcov/APKBUILD20
-rw-r--r--testing/ldapdomaindump/APKBUILD37
-rw-r--r--testing/ledmon/10-musl-build.patch218
-rw-r--r--testing/ledmon/APKBUILD42
-rw-r--r--testing/legume/APKBUILD34
-rw-r--r--testing/lemmy-ui/APKBUILD97
-rw-r--r--testing/lemmy-ui/lemmy-ui.confd13
-rw-r--r--testing/lemmy-ui/lemmy-ui.initd27
-rw-r--r--testing/lemmy-ui/lemmy-ui.pre-install11
-rw-r--r--testing/lemmy/APKBUILD76
-rw-r--r--testing/lemmy/fix-db-init-script.patch26
-rw-r--r--testing/lemmy/lemmy-localdb.post-install9
-rw-r--r--testing/lemmy/lemmy.initd26
-rw-r--r--testing/lemmy/lemmy.pre-install11
-rw-r--r--testing/lemonbar/APKBUILD2
-rw-r--r--testing/leocad/APKBUILD33
-rw-r--r--testing/leptosfmt/APKBUILD42
-rw-r--r--testing/level-zero/APKBUILD37
-rw-r--r--testing/lexbor/APKBUILD34
-rw-r--r--testing/lf/APKBUILD50
-rw-r--r--testing/lfm/APKBUILD27
-rw-r--r--testing/lfm/interp.patch10
-rw-r--r--testing/lgogdownloader/APKBUILD8
-rw-r--r--testing/lib3mf/APKBUILD46
-rw-r--r--testing/libabigail/APKBUILD96
-rw-r--r--testing/libabigail/apk.patch16
-rw-r--r--testing/libabigail/musl-fts.patch11
-rw-r--r--testing/libantic/APKBUILD40
-rw-r--r--testing/libantlr3c/APKBUILD6
-rw-r--r--testing/libarb/APKBUILD38
-rw-r--r--testing/libaudec/APKBUILD42
-rw-r--r--testing/libbamf/APKBUILD41
-rw-r--r--testing/libbaseencode/APKBUILD29
-rw-r--r--testing/libblastrampoline/APKBUILD4
-rw-r--r--testing/libbloom/APKBUILD10
-rw-r--r--testing/libbraiding/APKBUILD32
-rw-r--r--testing/libbs2b/APKBUILD42
-rw-r--r--testing/libcec-rpi/APKBUILD14
-rw-r--r--testing/libcec-rpi/fix-null-return.patch20
-rw-r--r--testing/libcork/APKBUILD10
-rw-r--r--testing/libcork/format-security.patch13
-rw-r--r--testing/libcork/no-git.patch33
-rw-r--r--testing/libcorkipset/APKBUILD4
-rw-r--r--testing/libcotp/APKBUILD8
-rw-r--r--testing/libctl/APKBUILD2
-rw-r--r--testing/libcyaml/APKBUILD10
-rw-r--r--testing/libcypher-parser/APKBUILD61
-rw-r--r--testing/libdecor/APKBUILD35
-rw-r--r--testing/libdng/APKBUILD36
-rw-r--r--testing/libdotconf/APKBUILD35
-rw-r--r--testing/libeantic/APKBUILD73
-rw-r--r--testing/libeantic/t-init-test.patch20
-rw-r--r--testing/libeatmydata/18.patch26
-rw-r--r--testing/libeatmydata/APKBUILD46
-rw-r--r--testing/libeatmydata/autoconf-2.71.patch12
-rw-r--r--testing/libebur128/APKBUILD32
-rw-r--r--testing/libecap/APKBUILD2
-rw-r--r--testing/libemf2svg/APKBUILD2
-rw-r--r--testing/liberasurecode/APKBUILD8
-rw-r--r--testing/libetebase/APKBUILD36
-rw-r--r--testing/libexosip2/APKBUILD48
-rw-r--r--testing/libfaketime/APKBUILD29
-rw-r--r--testing/libfishsound/APKBUILD2
-rw-r--r--testing/libfm-qt/APKBUILD35
-rw-r--r--testing/libfossil/APKBUILD46
-rw-r--r--testing/libfyaml/APKBUILD7
-rw-r--r--testing/libgdiplus/APKBUILD35
-rw-r--r--testing/libgivaro/APKBUILD41
-rw-r--r--testing/libgivaro/gcc13.patch12
-rw-r--r--testing/libgme/APKBUILD38
-rw-r--r--testing/libgme/ppc-musl.patch17
-rw-r--r--testing/libgpod/0001-323-Segmentation-fault-when-opening-ipod.patch43
-rw-r--r--testing/libgpod/0002-Fix-spelling-errors-in-comments-and-strings-using-co.patch293
-rw-r--r--testing/libgpod/0003-Fixed-PList-deprecation.patch44
-rw-r--r--testing/libgpod/APKBUILD50
-rw-r--r--testing/libgpod/libgpod-0.8.2-pkgconfig_overlinking.patch11
-rw-r--r--testing/libguestfs/APKBUILD197
-rw-r--r--testing/libguestfs/fix-missing-error-h.patch46
-rw-r--r--testing/libguestfs/fix-missing-int64_t.patch22
-rw-r--r--testing/libguestfs/ocaml-m4.patch25
-rw-r--r--testing/libhomfly/APKBUILD37
-rw-r--r--testing/libhwpwm/APKBUILD26
-rw-r--r--testing/libhx/APKBUILD5
-rw-r--r--testing/libibmad/APKBUILD2
-rw-r--r--testing/libibumad/APKBUILD2
-rw-r--r--testing/libideviceactivation/APKBUILD6
-rw-r--r--testing/libigraph/APKBUILD46
-rw-r--r--testing/libiio/APKBUILD63
-rw-r--r--testing/libime/APKBUILD76
-rw-r--r--testing/libiml/APKBUILD44
-rw-r--r--testing/libimobiledevice-glue/APKBUILD35
-rw-r--r--testing/libindi/0001-explicitly-include-sockets.h.patch24
-rw-r--r--testing/libindi/APKBUILD57
-rw-r--r--testing/libirecovery/APKBUILD12
-rw-r--r--testing/libiscsi/APKBUILD2
-rw-r--r--testing/libite/APKBUILD42
-rw-r--r--testing/libjodycode/APKBUILD28
-rw-r--r--testing/libjwt/APKBUILD39
-rw-r--r--testing/libkkc/APKBUILD61
-rw-r--r--testing/liblastfm-qt/APKBUILD2
-rw-r--r--testing/libliftoff/APKBUILD30
-rw-r--r--testing/liblinbox/APKBUILD50
-rw-r--r--testing/liblouis/APKBUILD44
-rw-r--r--testing/liblxqt/APKBUILD57
-rw-r--r--testing/libm4ri/APKBUILD48
-rw-r--r--testing/libm4rie/APKBUILD37
-rw-r--r--testing/libmdbx/APKBUILD22
-rw-r--r--testing/libmdf/APKBUILD20
-rw-r--r--testing/libmedc/APKBUILD31
-rw-r--r--testing/libmedc/cmake-config-dir.patch9
-rw-r--r--testing/libmedc/hdf-version.patch11
-rw-r--r--testing/libmedc/hdf5-1.12.patch92
-rw-r--r--testing/libmedc/hdf5.patch94
-rw-r--r--testing/libmesode/APKBUILD45
-rw-r--r--testing/libmhash/APKBUILD4
-rw-r--r--testing/libmpfi/APKBUILD44
-rw-r--r--testing/libmustache/APKBUILD2
-rw-r--r--testing/libmygpo-qt/APKBUILD2
-rw-r--r--testing/libmysofa/APKBUILD35
-rw-r--r--testing/libmysofa/install-header.patch25
-rw-r--r--testing/libnbd/APKBUILD46
-rw-r--r--testing/libneo4j-client/APKBUILD87
-rw-r--r--testing/libnest2d/APKBUILD2
-rw-r--r--testing/libnfc/APKBUILD47
-rw-r--r--testing/libnova/0001-support-for-linux-musl.patch24
-rw-r--r--testing/libnova/APKBUILD45
-rw-r--r--testing/libntl/APKBUILD50
-rw-r--r--testing/libofx/APKBUILD51
-rw-r--r--testing/liboggz/APKBUILD4
-rw-r--r--testing/libopenraw/APKBUILD52
-rw-r--r--testing/libopenraw/gcc-11.patch37
-rw-r--r--testing/libopensles-standalone/APKBUILD38
-rw-r--r--testing/libosip2/APKBUILD39
-rw-r--r--testing/libqb/APKBUILD18
-rw-r--r--testing/libqd/APKBUILD37
-rw-r--r--testing/libqmycroft/APKBUILD37
-rw-r--r--testing/libqofono/APKBUILD55
-rw-r--r--testing/libqtdbusmock/APKBUILD45
-rw-r--r--testing/libqtdbustest/APKBUILD43
-rw-r--r--testing/libqtxdg/APKBUILD46
-rw-r--r--testing/libreoffice-voikko/APKBUILD27
-rw-r--r--testing/librespot/APKBUILD32
-rw-r--r--testing/librespot/cargo-bump-libc-lfs64.patch16
-rw-r--r--testing/librespot/librespot.confd3
-rw-r--r--testing/librespot/librespot.initd11
-rw-r--r--testing/librespot/librespot.pre-install4
-rw-r--r--testing/libretro-3dengine/APKBUILD30
-rw-r--r--testing/libretro-3dengine/patch-unbundle.patch47
-rw-r--r--testing/libretro-cannonball/APKBUILD2
-rw-r--r--testing/libretro-dolphin/APKBUILD4
-rw-r--r--testing/libretro-genesis-plus-gx/APKBUILD6
-rw-r--r--testing/libretro-picodrive/APKBUILD3
-rw-r--r--testing/libretro-ppsspp/APKBUILD8
-rw-r--r--testing/libretro-ppsspp/gcc12.patch12
-rw-r--r--testing/libretro-ppsspp/gcc13.patch71
-rw-r--r--testing/librewolf/APKBUILD752
-rw-r--r--testing/librewolf/disable-moz-stackwalk.patch28
-rw-r--r--testing/librewolf/distribution.ini9
-rw-r--r--testing/librewolf/fix-fortify-system-wrappers.patch11
-rw-r--r--testing/librewolf/fix-rust-target.patch31
-rw-r--r--testing/librewolf/fix-webrtc-glibcisms.patch20
-rw-r--r--testing/librewolf/force-can-use-pack-relative-relocs.patch11
-rw-r--r--testing/librewolf/icu74.patch37
-rw-r--r--testing/librewolf/lfs64.patch35
-rw-r--r--testing/librewolf/librewolf.desktop386
-rw-r--r--testing/librewolf/no-ccache-stats.patch13
-rw-r--r--testing/librewolf/ppc-musttail.patch30
-rw-r--r--testing/librewolf/python-deps.patch10
-rw-r--r--testing/librewolf/res_nquery.patch17
-rw-r--r--testing/librewolf/riscv64-no-lto.patch16
-rw-r--r--testing/librewolf/rust-lto-thin.patch12
-rw-r--r--testing/librewolf/sandbox-fork.patch15
-rw-r--r--testing/librewolf/sandbox-largefile.patch17
-rw-r--r--testing/librewolf/sandbox-sched_setscheduler.patch24
-rw-r--r--testing/librewolf/sqlite-ppc.patch39
-rw-r--r--testing/librewolf/vendor-prefs.js9
-rw-r--r--testing/librime/APKBUILD71
-rw-r--r--testing/libsemanage/APKBUILD8
-rw-r--r--testing/libsemigroups/APKBUILD39
-rw-r--r--testing/libsigrok/APKBUILD2
-rw-r--r--testing/libsigrokdecode/APKBUILD8
-rw-r--r--testing/libsigrokdecode/python-3.10.patch25
-rw-r--r--testing/libsigrokdecode/python-3.12.patch25
-rw-r--r--testing/libsirocco/APKBUILD36
-rw-r--r--testing/libsixel/APKBUILD33
-rw-r--r--testing/libsmi/APKBUILD35
-rw-r--r--testing/libsoundio/APKBUILD35
-rw-r--r--[-rwxr-xr-x]testing/libspatialindex/APKBUILD4
-rw-r--r--testing/libspiro/APKBUILD38
-rw-r--r--testing/libspnav/APKBUILD44
-rw-r--r--testing/libspnav/configure.patch22
-rw-r--r--testing/libstatgrab/APKBUILD34
-rw-r--r--testing/libstirshaken/0001-eradicate-Werror.patch36
-rwxr-xr-xtesting/libstirshaken/APKBUILD46
-rw-r--r--testing/libstrophe/APKBUILD34
-rw-r--r--testing/libsv/APKBUILD38
-rw-r--r--testing/libsymmetrica/APKBUILD43
-rw-r--r--testing/libsysstat/APKBUILD33
-rw-r--r--testing/libtbox/APKBUILD50
-rw-r--r--testing/libtbox/libtbox.pc9
-rw-r--r--testing/libtickit/APKBUILD46
-rw-r--r--testing/libtickit/missing-include.patch12
-rw-r--r--testing/libtins/APKBUILD8
-rw-r--r--testing/libtommath/APKBUILD31
-rw-r--r--testing/libtpms/APKBUILD40
-rw-r--r--testing/libtsm/APKBUILD33
-rw-r--r--testing/libubox/APKBUILD54
-rw-r--r--testing/libucl/APKBUILD42
-rw-r--r--testing/libuecc/APKBUILD4
-rw-r--r--testing/libui/APKBUILD4
-rw-r--r--testing/libunicode/APKBUILD58
-rw-r--r--testing/libunicode/rm-catch2-supression.patch17
-rw-r--r--testing/libuninameslist/APKBUILD24
-rw-r--r--testing/libupnpp/APKBUILD24
-rw-r--r--testing/libusbgx/APKBUILD55
-rw-r--r--testing/libusbgx/sysmacros.patch37
-rw-r--r--testing/libva-utils/APKBUILD36
-rw-r--r--testing/libvisio2svg/APKBUILD2
-rw-r--r--testing/libvmaf/APKBUILD30
-rw-r--r--testing/libvmime/APKBUILD31
-rw-r--r--testing/libvoikko/APKBUILD40
-rw-r--r--testing/libvolk/APKBUILD47
-rw-r--r--testing/libwhich/APKBUILD9
-rw-r--r--testing/libwhich/make-install.patch37
-rw-r--r--testing/libxaw3d/APKBUILD33
-rw-r--r--testing/libxisf/APKBUILD38
-rw-r--r--testing/libxml++/APKBUILD28
-rw-r--r--testing/libxmp/APKBUILD34
-rw-r--r--testing/libzn_poly/APKBUILD45
-rw-r--r--testing/libzookeeper/APKBUILD32
-rw-r--r--testing/libzookeeper/fix-sprintf-overflow.patch11
-rw-r--r--testing/licenseheaders/APKBUILD13
-rw-r--r--testing/lidarr/0001-disable-restart.patch20
-rw-r--r--testing/lidarr/APKBUILD102
-rw-r--r--testing/lidarr/lidarr.confd10
-rw-r--r--testing/lidarr/lidarr.initd34
-rw-r--r--testing/lidarr/lidarr.pre-install6
-rw-r--r--testing/lidarr/package_info4
-rw-r--r--testing/lightdm-settings/APKBUILD35
-rw-r--r--testing/lighthouse/APKBUILD42
-rw-r--r--testing/lilv/APKBUILD24
-rw-r--r--testing/limkd/APKBUILD35
-rw-r--r--testing/limnoria/APKBUILD12
-rw-r--r--testing/links-graphics/APKBUILD32
-rw-r--r--testing/linphone/APKBUILD74
-rw-r--r--testing/linphone/fix-cmake-path.patch31
-rw-r--r--testing/linux-amlogic/0001-ARM64-defconfig-enable-CEC-support.patch45
-rw-r--r--testing/linux-amlogic/0001-arm64-dts-meson-Fix-IRQ-trigger-type-for-macirq.patch62
-rw-r--r--testing/linux-amlogic/0001-drm-meson-fix-max-mode_config-height-width.patch33
-rw-r--r--testing/linux-amlogic/0002-ASoC-meson-add-meson-audio-core-driver.patch288
-rw-r--r--testing/linux-amlogic/0003-ASoC-meson-add-register-definitions.patch358
-rw-r--r--testing/linux-amlogic/0004-ASoC-meson-add-aiu-i2s-dma-support.patch422
-rw-r--r--testing/linux-amlogic/0005-ASoC-meson-add-initial-i2s-dai-support.patch516
-rw-r--r--testing/linux-amlogic/0006-ASoC-meson-add-aiu-spdif-dma-support.patch443
-rw-r--r--testing/linux-amlogic/0007-ASoC-meson-add-initial-spdif-dai-support.patch430
-rw-r--r--testing/linux-amlogic/0008-ARM64-defconfig-enable-audio-support-for-meson-SoCs-.patch29
-rw-r--r--testing/linux-amlogic/0008-drm-meson-Add-HDMI-1.4-4k-modes.patch165
-rw-r--r--testing/linux-amlogic/0009-ARM64-dts-meson-gx-add-audio-controller-nodes.patch187
-rw-r--r--testing/linux-amlogic/0009-drm-meson-Use-drm_fbdev_generic_setup.patch100
-rw-r--r--testing/linux-amlogic/0010-fixup-drm-meson-Use-optional-canvas-provider.patch21
-rw-r--r--testing/linux-amlogic/0010-snd-meson-activate-HDMI-audio-path.patch53
-rw-r--r--testing/linux-amlogic/0011-drm-meson-select-dw-hdmi-i2s-audio-for-meson-hdmi.patch20
-rw-r--r--testing/linux-amlogic/0012-ARM64-dts-meson-gx-add-sound-dai-cells-to-HDMI-node.patch36
-rw-r--r--testing/linux-amlogic/0012-drm-meson-add-support-for-1080p25-mode.patch21
-rw-r--r--testing/linux-amlogic/0013-ARM64-dts-meson-activate-hdmi-audio-HDMI-enabled-boa.patch861
-rw-r--r--testing/linux-amlogic/0014-drm-bridge-dw-hdmi-Add-SCDC-and-TMDS-Scrambling-supp.patch147
-rw-r--r--testing/linux-amlogic/0014-drm-bridge-dw-hdmi-Use-AUTO-CTS-setup-mode-when-non-.patch76
-rw-r--r--testing/linux-amlogic/0015-drm-meson-add-HDMI-div40-TMDS-mode.patch69
-rw-r--r--testing/linux-amlogic/0016-drm-meson-add-support-for-HDMI2.0-2160p-modes.patch28
-rw-r--r--testing/linux-amlogic/0017-drm-bridge-dw-hdmi-add-support-for-YUV420-output.patch198
-rw-r--r--testing/linux-amlogic/0017-soc-amlogic-add-meson-canvas-driver.patch314
-rw-r--r--testing/linux-amlogic/0018-ARM64-dts-meson-gx-add-dmcbus-and-canvas-nodes.patch39
-rw-r--r--testing/linux-amlogic/0018-drm-bridge-dw-hdmi-support-dynamically-get-input-out.patch102
-rw-r--r--testing/linux-amlogic/0019-drm-bridge-dw-hdmi-allow-ycbcr420-modes-for-0x200a.patch46
-rw-r--r--testing/linux-amlogic/0020-drm-meson-Add-YUV420-output-support.patch582
-rw-r--r--testing/linux-amlogic/0020-drm-meson-Use-optional-canvas-provider.patch172
-rw-r--r--testing/linux-amlogic/0021-arm64-dts-meson-gx-Add-canvas-provider-node-to-the-v.patch25
-rw-r--r--testing/linux-amlogic/0021-drm-meson-Output-in-YUV444-if-sink-supports-it.patch31
-rw-r--r--testing/linux-amlogic/0022-drm-meson-Support-Overlay-plane-for-video-rendering.patch1258
-rw-r--r--testing/linux-amlogic/0023-drm-meson-Fix-an-Alpha-Primary-Plane-bug-on-Meson-GX.patch124
-rw-r--r--testing/linux-amlogic/0023-drm-meson-move-OSD-scaler-management-into-plane-atom.patch198
-rw-r--r--testing/linux-amlogic/0024-drm-meson-Add-primary-plane-scaling.patch285
-rw-r--r--testing/linux-amlogic/0026-pinctrl-meson-gxl-remove-invalid-GPIOX-tsin_a-pins.patch55
-rw-r--r--testing/linux-amlogic/0027-arm64-dts-meson-gx-Add-hdmi_5v-regulator-as-hdmi-tx-.patch79
-rw-r--r--testing/linux-amlogic/0028-arm64-dts-meson-gxl-libretech-cc-fix-GPIO-lines-name.patch38
-rw-r--r--testing/linux-amlogic/0029-arm64-dts-meson-gxbb-nanopi-k2-fix-GPIO-lines-names.patch38
-rw-r--r--testing/linux-amlogic/0030-arm64-dts-meson-gxbb-odroidc2-fix-GPIO-lines-names.patch38
-rw-r--r--testing/linux-amlogic/0031-arm64-dts-meson-gxl-khadas-vim-fix-GPIO-lines-names.patch38
-rw-r--r--testing/linux-amlogic/0032-drm-meson-Add-support-for-VIC-alternate-timings.patch328
-rw-r--r--testing/linux-amlogic/0033-media-meson-add-v4l2-m2m-video-decoder-driver.patch2969
-rw-r--r--testing/linux-amlogic/0034-MAINTAINERS-Add-meson-video-decoder.patch32
-rw-r--r--testing/linux-amlogic/0035-arm64-dts-meson-gx-add-vdec-entry.patch38
-rw-r--r--testing/linux-amlogic/0036-arm64-dts-meson-add-vdec-entries.patch63
-rw-r--r--testing/linux-amlogic/0037-meson-vdec-introduce-controls-and-V4L2_CID_MIN_BUFFE.patch153
-rw-r--r--testing/linux-amlogic/0038-media-videodev2-add-V4L2_FMT_FLAG_NO_SOURCE_CHANGE.patch49
-rw-r--r--testing/linux-amlogic/0039-meson-vdec-allow-subscribing-to-V4L2_EVENT_SOURCE_CH.patch270
-rw-r--r--testing/linux-amlogic/0040-media-meson-vdec-add-H.264-decoding-support.patch591
-rw-r--r--testing/linux-amlogic/0041-media-meson-vdec-add-MPEG4-decoding-support.patch313
-rw-r--r--testing/linux-amlogic/0042-media-meson-vdec-add-MJPEG-decoding-support.patch253
-rw-r--r--testing/linux-amlogic/0043-clk-meson-gxbb-set-fclk_div3-as-CLK_IS_CRITICAL.patch42
-rw-r--r--testing/linux-amlogic/APKBUILD355
-rw-r--r--testing/linux-amlogic/add-phicomm-n1.patch60
-rw-r--r--testing/linux-amlogic/bt-btbcm.patch11
-rw-r--r--testing/linux-amlogic/config-changes-amlogic.aarch6413
-rw-r--r--testing/linux-amlogic/defconfig882
-rw-r--r--testing/linux-amlogic/text_offset.patch26
-rw-r--r--testing/linux-apfs-rw-src/APKBUILD25
-rw-r--r--testing/linux-apfs-rw-src/modules-load.conf1
-rw-r--r--testing/linux-asahi/385ea7b5023486aba7919cec8b6b3f6a843a1013.patch78
-rw-r--r--testing/linux-asahi/6a24102c06c95951ab992e2d41336cc6d4bfdf23.patch47
-rw-r--r--testing/linux-asahi/APKBUILD206
-rw-r--r--testing/linux-asahi/config-asahi.aarch647388
-rw-r--r--testing/linux-elm/APKBUILD74
-rw-r--r--testing/linux-elm/config6836
-rw-r--r--testing/linux-elm/config-elm.aarch646528
-rw-r--r--testing/linux-elm/fix-mmc1-speed.patch13
-rw-r--r--testing/linux-elm/fix-spi-nor-max-frequency.patch11
-rw-r--r--testing/linux-gru/APKBUILD84
-rw-r--r--testing/linux-gru/PATCH-v4-00-11-media-rkvdec-Add-H.264-High-10-and-4-2-2-profile-support.patch2119
-rw-r--r--testing/linux-gru/config7386
-rw-r--r--testing/linux-gru/config-gru.aarch646978
-rw-r--r--testing/linux-openvfd/APKBUILD26
-rw-r--r--testing/linux-sophgo/APKBUILD150
-rw-r--r--testing/linux-sophgo/sophgo.riscv64.config5540
-rw-r--r--testing/linux-starfive/APKBUILD251
-rw-r--r--testing/linux-starfive/aurel32.6.7.y.patch5023
-rw-r--r--testing/linux-starfive/config-starfive.riscv645744
-rw-r--r--testing/linux-timemachine/APKBUILD20
-rw-r--r--testing/linuxkit/APKBUILD41
-rw-r--r--testing/linuxptp/APKBUILD48
-rw-r--r--testing/linuxwave/APKBUILD36
-rw-r--r--testing/lipstick-asteroidos/APKBUILD15
-rw-r--r--testing/liquid-dsp/APKBUILD41
-rw-r--r--testing/listenbrainz-mpd/APKBUILD48
-rw-r--r--testing/lite-xl/APKBUILD15
-rw-r--r--testing/litehtml/APKBUILD49
-rw-r--r--testing/litehtml/fix-gtest-check.patch20
-rw-r--r--testing/litespeed/APKBUILD142
-rw-r--r--testing/litespeed/admin.patch51
-rw-r--r--testing/litespeed/include.patch118
-rw-r--r--testing/litespeed/install.patch215
-rw-r--r--testing/litespeed/litespeed.initd33
-rw-r--r--testing/litespeed/litespeed.pre-install6
-rw-r--r--testing/litespeed/ls_lock.patch34
-rw-r--r--testing/litespeed/thread.patch37
-rw-r--r--testing/litterbox/APKBUILD6
-rw-r--r--testing/livestreamer/APKBUILD26
-rw-r--r--testing/lizardfs/APKBUILD16
-rw-r--r--testing/lizardfs/gcc13.patch12
-rw-r--r--testing/lkrg/AKMBUILD3
-rw-r--r--testing/lkrg/APKBUILD39
-rw-r--r--testing/lkrg/lkrg.post-deinstall2
-rw-r--r--testing/llhttp/APKBUILD42
-rw-r--r--testing/llhttp/soname.patch207
-rw-r--r--testing/llmnrd/APKBUILD2
-rw-r--r--testing/lmms/APKBUILD49
-rw-r--r--testing/lockrun/APKBUILD2
-rw-r--r--testing/log4cpp/APKBUILD13
-rw-r--r--testing/log4cxx/APKBUILD24
-rw-r--r--testing/log4cxx/fix-pkgconfig-install-dir.patch68
-rw-r--r--testing/logc-libs/APKBUILD55
-rw-r--r--testing/logc/APKBUILD54
-rw-r--r--testing/logisim-evolution/APKBUILD45
-rw-r--r--testing/logisim-evolution/Desktop-file.patch13
-rwxr-xr-xtesting/logisim-evolution/logisim-evolution2
-rw-r--r--testing/logstash/APKBUILD85
-rw-r--r--testing/logstash/logstash.conf16
-rw-r--r--testing/logstash/logstash.confd20
-rw-r--r--testing/logstash/logstash.initd43
-rw-r--r--testing/logstash/logstash.pre-install6
-rw-r--r--testing/logstash/logstash.profile3
-rw-r--r--testing/logwatch/APKBUILD10
-rw-r--r--testing/loki/APKBUILD71
-rw-r--r--testing/loki/go-1.18-sigsegv.patch593
-rw-r--r--testing/loki/loki-promtail.confd5
-rw-r--r--testing/loki/loki-promtail.initd25
-rw-r--r--testing/loki/loki.confd5
-rw-r--r--testing/loki/loki.initd11
-rw-r--r--testing/lol-html/APKBUILD56
-rw-r--r--testing/lol-html/lockfile.patch1087
-rw-r--r--testing/lol-html/lol-html.pc.in12
-rw-r--r--testing/lolcat/APKBUILD13
-rw-r--r--testing/lolcat/makefile.patch17
-rw-r--r--testing/lomiri-action-api/0002-Use-qmltestrunner-qt5.patch53
-rw-r--r--testing/lomiri-action-api/APKBUILD43
-rw-r--r--testing/lomiri-api/0001-Add-missing-headers-for-GCC13.patch37
-rw-r--r--testing/lomiri-api/APKBUILD50
-rw-r--r--testing/lomiri-api/qmltestrunner.patch15
-rw-r--r--testing/lomiri-app-launch/0001-liblomiri-app-launch-jobs-posix.cpp-pass-more-enviro.patch27
-rw-r--r--testing/lomiri-app-launch/APKBUILD68
-rw-r--r--testing/lomiri-calculator-app/0001-point-qmlscene-to-qmlscene-qt5.patch35
-rw-r--r--testing/lomiri-calculator-app/APKBUILD53
-rw-r--r--testing/lomiri-clock-app/0001-point-qmlscene-to-qmlscene-qt5.patch37
-rw-r--r--testing/lomiri-clock-app/APKBUILD64
-rw-r--r--testing/lomiri-content-hub/APKBUILD76
-rw-r--r--testing/lomiri-content-hub/qdoc.patch17
-rw-r--r--testing/lomiri-content-hub/qmlplugindump.patch13
-rw-r--r--testing/lomiri-docviewer-app/0001-non-click-mode-install-icon-and-splash.patch85
-rw-r--r--testing/lomiri-docviewer-app/APKBUILD60
-rw-r--r--testing/lomiri-download-manager/0001-Use-CMAKE_INSTALL_FULL_-for-installing.patch218
-rw-r--r--testing/lomiri-download-manager/0001-docs-use-qdoc-qt5-directly-instead-of-qtswitcher.patch29
-rw-r--r--testing/lomiri-download-manager/APKBUILD58
-rw-r--r--testing/lomiri-filemanager-app/0001-include-paths.h.patch25
-rw-r--r--testing/lomiri-filemanager-app/0002-link-libintl.patch25
-rw-r--r--testing/lomiri-filemanager-app/APKBUILD62
-rw-r--r--testing/lomiri-gallery-app/0001-update-for-newer-Exiv2-version.patch66
-rw-r--r--testing/lomiri-gallery-app/0002-disable-werror.patch25
-rw-r--r--testing/lomiri-gallery-app/APKBUILD63
-rw-r--r--testing/lomiri-history-service/0001-CMakeLists.txt-Add-ENABLE_WERROR-CMake-option-defaul.patch38
-rw-r--r--testing/lomiri-history-service/0002-upgrade-to-C-17.patch25
-rw-r--r--testing/lomiri-history-service/0003-remove-systemd-dependency.patch24
-rw-r--r--testing/lomiri-history-service/0004-remove-daemon-directory.patch26
-rw-r--r--testing/lomiri-history-service/APKBUILD65
-rw-r--r--testing/lomiri-indicator-location/0001-manually-disable-tests.patch43
-rw-r--r--testing/lomiri-indicator-location/APKBUILD50
-rw-r--r--testing/lomiri-indicator-network/0001-Use-CMAKE_INSTALL_FULL_-for-installing.patch117
-rw-r--r--testing/lomiri-indicator-network/APKBUILD61
-rw-r--r--testing/lomiri-libusermetrics/0001-Use-CMAKE_INSTALL_FULL_-for-installing.patch135
-rw-r--r--testing/lomiri-libusermetrics/APKBUILD56
-rw-r--r--testing/lomiri-location-service/APKBUILD62
-rw-r--r--testing/lomiri-location-service/cstdint.patch24
-rw-r--r--testing/lomiri-notifications/APKBUILD41
-rw-r--r--testing/lomiri-schemas/0001-data-schemas-com.lomiri.Shell.gschema.xml.in-Add-log.patch31
-rw-r--r--testing/lomiri-schemas/APKBUILD38
-rw-r--r--testing/lomiri-settings-components/APKBUILD42
-rw-r--r--testing/lomiri-settings-components/qmltestrunner.patch29
-rw-r--r--testing/lomiri-sounds/APKBUILD30
-rw-r--r--testing/lomiri-system-settings/0001-Migrate-to-upstream-maliit-keyboard.patch81
-rw-r--r--testing/lomiri-system-settings/0002-Use-qmltestrunner-qt5.patch25
-rw-r--r--testing/lomiri-system-settings/APKBUILD80
-rw-r--r--testing/lomiri-telephony-service/APKBUILD61
-rw-r--r--testing/lomiri-terminal-app/APKBUILD54
-rw-r--r--testing/lomiri-thumbnailer/APKBUILD74
-rw-r--r--testing/lomiri-thumbnailer/disable-qml-and-dbus-tests.patch42
-rw-r--r--testing/lomiri-thumbnailer/fix-googletest.patch14
-rw-r--r--testing/lomiri-thumbnailer/manually-disable-tests.patch24
-rw-r--r--testing/lomiri-trust-store/APKBUILD56
-rw-r--r--testing/lomiri-ui-extras/0004-Disable-tst_printers-unittest.patch25
-rw-r--r--testing/lomiri-ui-extras/APKBUILD51
-rw-r--r--testing/lomiri-ui-toolkit/0001-Remove-debian-isms-from-test-runner.patch31
-rw-r--r--testing/lomiri-ui-toolkit/0002-Don-t-build-app-launch-profiler.patch25
-rw-r--r--testing/lomiri-ui-toolkit/APKBUILD63
-rw-r--r--testing/lomiri-url-dispatcher/0001-remove-systemd.patch64
-rw-r--r--testing/lomiri-url-dispatcher/APKBUILD56
-rw-r--r--testing/lomiri-weather-app/0001-rename-WEATHER_APP_DIR-to-LOMIRI_WEATHER_APP_DIR.patch21
-rw-r--r--testing/lomiri-weather-app/0002-point-qmlscene-to-qmlscene-qt5.patch21
-rw-r--r--testing/lomiri-weather-app/APKBUILD60
-rw-r--r--testing/lomiri/0001-Fix-overwriting-INCLUDE_DIRECTORIES-variable.patch40
-rw-r--r--testing/lomiri/0002-Fix-build-on-32bit-arches-with-64bit-time_t.patch59
-rw-r--r--testing/lomiri/0003-cursor-Always-follow-cursor-position-from-mir.patch32
-rw-r--r--testing/lomiri/0004-Disable-broken-tests-due-to-dropped-mocks-from-mir-2.patch26
-rw-r--r--testing/lomiri/0005-Add-qt5-suffix-to-search-for-Qt-tools.patch47
-rw-r--r--testing/lomiri/0006-No-systemd.patch22
-rw-r--r--testing/lomiri/0007-Disable-lightdm-integration.patch40
-rw-r--r--testing/lomiri/0008-Change-hard-coded-launcher-logo-to-one-set-by-a-reso.patch158
-rw-r--r--testing/lomiri/APKBUILD115
-rw-r--r--testing/lomiri/home.svg72
-rw-r--r--testing/looking-glass/APKBUILD71
-rw-r--r--testing/looking-glass/missing-includes.patch92
-rw-r--r--testing/looking-glass/obs-plugins-lib.patch12
-rw-r--r--testing/looking-glass/werror.patch24
-rw-r--r--testing/loolwsd/APKBUILD7
-rw-r--r--testing/lotide/APKBUILD89
-rw-r--r--testing/lotide/cargo-update-libc_patch14
-rw-r--r--testing/lotide/hitide.confd11
-rw-r--r--testing/lotide/hitide.initd23
-rw-r--r--testing/lotide/hitide.pre-install11
-rw-r--r--testing/lotide/lotide.confd33
-rw-r--r--testing/lotide/lotide.initd80
-rw-r--r--testing/lotide/lotide.post-install7
-rw-r--r--testing/lotide/lotide.pre-install11
-rw-r--r--testing/lottieconverter/APKBUILD49
-rw-r--r--testing/lout/APKBUILD10
-rw-r--r--testing/lout/makefile.patch39
-rw-r--r--testing/lowjs/APKBUILD40
-rw-r--r--testing/lowjs/musl.patch45
-rw-r--r--testing/lowjs/unbundle-duktape.patch36
-rw-r--r--testing/lpac/APKBUILD37
-rw-r--r--testing/lpairs2/APKBUILD50
-rw-r--r--testing/lpairs2/fix-undeclared-uint.patch10
-rw-r--r--testing/lrcalc/APKBUILD35
-rw-r--r--testing/lrdf/APKBUILD36
-rw-r--r--testing/lrzsz/APKBUILD2
-rw-r--r--testing/lsd/APKBUILD45
-rw-r--r--testing/lsdvd/APKBUILD29
-rw-r--r--testing/lshell/APKBUILD14
-rw-r--r--testing/lsip6/APKBUILD30
-rw-r--r--testing/lsix/APKBUILD6
-rw-r--r--testing/lsmash/APKBUILD2
-rw-r--r--testing/lsp-plugins/APKBUILD38
-rw-r--r--testing/lua-ansicolors/APKBUILD51
-rw-r--r--testing/lua-crypt/APKBUILD55
-rw-r--r--testing/lua-etlua/APKBUILD65
-rw-r--r--testing/lua-fn/APKBUILD24
-rw-r--r--testing/lua-inet/APKBUILD3
-rw-r--r--testing/lua-jsonschema/APKBUILD52
-rw-r--r--testing/lua-lanes/APKBUILD14
-rw-r--r--testing/lua-language-server/APKBUILD44
-rwxr-xr-xtesting/lua-language-server/wrapper11
-rw-r--r--testing/lua-lapis/APKBUILD80
-rw-r--r--testing/lua-lapis/lapis-5.13
-rw-r--r--testing/lua-linotify/APKBUILD51
-rw-r--r--testing/lua-linotify/makefile.patch25
-rw-r--r--testing/lua-luastatic/APKBUILD2
-rw-r--r--testing/lua-lupa/APKBUILD1
-rw-r--r--testing/lua-middleclass/APKBUILD33
-rw-r--r--testing/lua-mimetypes/APKBUILD77
-rw-r--r--testing/lua-net-url/APKBUILD55
-rw-r--r--testing/lua-pgmoon/APKBUILD52
-rw-r--r--testing/lua-pgsql/APKBUILD65
-rw-r--r--testing/lua-resty-openssl/APKBUILD36
-rw-r--r--testing/lua-resty-redis/APKBUILD12
-rw-r--r--testing/lua-resty-upload/APKBUILD10
-rw-r--r--testing/lua-xml/APKBUILD7
-rw-r--r--testing/lua5.2-penlight/APKBUILD6
-rw-r--r--testing/luacov-html/APKBUILD7
-rw-r--r--testing/luacov/APKBUILD17
-rw-r--r--testing/luacov/reporter_fix.lua.patch22
-rw-r--r--testing/luakit/APKBUILD36
-rw-r--r--testing/luau/APKBUILD36
-rw-r--r--testing/luksmeta/APKBUILD43
-rw-r--r--testing/luksmeta/force-creation-of-luks1-containers-in-tests.patch26
-rw-r--r--testing/luksmeta/musl.patch175
-rw-r--r--testing/luksmeta/relax-content-tests-in-test-suite.patch150
-rw-r--r--testing/lumina-desktop/APKBUILD23
-rw-r--r--testing/lumins/APKBUILD9
-rw-r--r--testing/lutgen/APKBUILD46
-rw-r--r--testing/lwan/APKBUILD10
-rw-r--r--testing/lwan/gettid.patch76
-rw-r--r--testing/lxappearance/APKBUILD28
-rw-r--r--testing/lxd-feature/32-bit-fix.patch171
-rw-r--r--testing/lxd-feature/APKBUILD101
-rw-r--r--testing/lximage-qt/APKBUILD34
-rw-r--r--testing/lxmenu-data/APKBUILD25
-rw-r--r--testing/lxqt-about/APKBUILD34
-rw-r--r--testing/lxqt-admin/APKBUILD36
-rw-r--r--testing/lxqt-archiver/APKBUILD34
-rw-r--r--testing/lxqt-build-tools/APKBUILD34
-rw-r--r--testing/lxqt-config/APKBUILD37
-rw-r--r--testing/lxqt-core/APKBUILD22
-rw-r--r--testing/lxqt-desktop/APKBUILD17
-rw-r--r--testing/lxqt-globalkeys/APKBUILD35
-rw-r--r--testing/lxqt-notificationd/APKBUILD34
-rw-r--r--testing/lxqt-openssh-askpass/APKBUILD35
-rw-r--r--testing/lxqt-panel/APKBUILD39
-rw-r--r--testing/lxqt-policykit/APKBUILD36
-rw-r--r--testing/lxqt-powermanagement/APKBUILD37
-rw-r--r--testing/lxqt-qtplugin/APKBUILD35
-rw-r--r--testing/lxqt-runner/APKBUILD36
-rw-r--r--testing/lxqt-session/APKBUILD36
-rw-r--r--testing/lxqt-sudo/APKBUILD37
-rw-r--r--testing/lxqt-themes/APKBUILD31
-rw-r--r--testing/lychee/APKBUILD45
-rw-r--r--testing/lynis/APKBUILD5
-rw-r--r--testing/lyrebird/APKBUILD35
-rw-r--r--testing/lzbench/APKBUILD25
-rw-r--r--testing/lzdoom/0001-link-zipdir-against-fts.patch10
-rw-r--r--testing/lzdoom/0002-fix-musl-fts.patch10
-rw-r--r--testing/lzdoom/APKBUILD63
-rw-r--r--testing/lzfse/APKBUILD39
-rw-r--r--testing/lzlib/APKBUILD31
-rw-r--r--testing/lzop/APKBUILD35
-rw-r--r--testing/m17n-db/APKBUILD42
-rw-r--r--testing/m17n-lib/APKBUILD75
-rw-r--r--testing/m1n1/APKBUILD36
-rw-r--r--testing/m2r2/APKBUILD19
-rw-r--r--testing/m2r2/mistune1.patch28
-rw-r--r--testing/ma1sd/APKBUILD2
-rw-r--r--testing/macchina/APKBUILD20
-rw-r--r--testing/macchina/minimize-size.patch16
-rw-r--r--testing/madbomber/0001-makefile.patch10
-rw-r--r--testing/madbomber/APKBUILD31
-rw-r--r--testing/maddy/APKBUILD40
-rw-r--r--testing/maddy/acme-default-hostname.patch21
-rw-r--r--testing/maddy/maddy.initd2
-rw-r--r--testing/madonctl/APKBUILD25
-rw-r--r--testing/mage/APKBUILD15
-rw-r--r--testing/mailctl/APKBUILD65
-rw-r--r--testing/mailctl/cabal.project.freeze203
-rw-r--r--testing/maildir2rss/APKBUILD30
-rw-r--r--testing/mailmunge/APKBUILD66
-rw-r--r--testing/mailmunge/mailmunge.pre-install6
-rw-r--r--testing/mailsec-check/APKBUILD7
-rw-r--r--testing/mailtutan/APKBUILD34
-rw-r--r--testing/mailutils/APKBUILD53
-rw-r--r--testing/mailutils/disable-koi8-r-test.patch4
-rw-r--r--testing/mailutils/fix-build-with-gcc-10.patch26
-rw-r--r--testing/maitreya/APKBUILD33
-rw-r--r--testing/makeself/APKBUILD6
-rw-r--r--testing/mame/APKBUILD225
-rw-r--r--testing/mame/fix-musl.patch10
-rw-r--r--testing/mangal/APKBUILD44
-rw-r--r--testing/mangr0ve/APKBUILD25
-rw-r--r--testing/manifest-tool/APKBUILD37
-rw-r--r--testing/manticore/0001-use-shared-boost-lib.patch13
-rw-r--r--testing/manticore/APKBUILD102
-rw-r--r--testing/manticore/manticore.initd (renamed from testing/manticoresearch/manticoresearch.initd)0
-rwxr-xr-xtesting/manticore/manticore.pre-install (renamed from testing/manticoresearch/manticoresearch.pre-install)0
-rw-r--r--testing/manticoresearch/0001-Documentation-Create-go-md2man-pages-for-indexer.1-i.patch344
-rw-r--r--testing/manticoresearch/APKBUILD128
-rw-r--r--testing/mapnik/APKBUILD11
-rw-r--r--testing/mapnik/gcc13.patch12
-rw-r--r--testing/mapserver/10-musl.patch29
-rw-r--r--testing/mapserver/APKBUILD50
-rw-r--r--testing/mariadb-connector-odbc/APKBUILD39
-rw-r--r--testing/marknote/APKBUILD55
-rw-r--r--testing/marxan/APKBUILD2
-rw-r--r--testing/masky/APKBUILD40
-rw-r--r--testing/mat2/APKBUILD22
-rw-r--r--testing/mat2/manpage-dir.patch13
-rw-r--r--testing/materia-gtk-theme/APKBUILD12
-rw-r--r--testing/materia-kde/APKBUILD4
-rw-r--r--testing/matrix-synapse-rest-password-provider/APKBUILD23
-rw-r--r--testing/mattermost-desktop/APKBUILD80
-rwxr-xr-xtesting/mattermost-desktop/mattermost-desktop3
-rw-r--r--testing/mautrix-discord/APKBUILD56
-rw-r--r--testing/mautrix-discord/default-log-dir.patch17
-rw-r--r--testing/mautrix-discord/mautrix-discord.confd7
-rw-r--r--testing/mautrix-discord/mautrix-discord.initd20
-rw-r--r--testing/mautrix-discord/mautrix-discord.pre-install6
-rw-r--r--testing/mautrix-gmessages/APKBUILD55
-rw-r--r--testing/mautrix-gmessages/default-log-dir.patch17
-rw-r--r--testing/mautrix-gmessages/mautrix-gmessages.confd7
-rw-r--r--testing/mautrix-gmessages/mautrix-gmessages.initd20
-rw-r--r--testing/mautrix-gmessages/mautrix-gmessages.pre-install6
-rw-r--r--testing/mautrix-meta/APKBUILD51
-rw-r--r--testing/mautrix-meta/default-log-dir.patch17
-rw-r--r--testing/mautrix-meta/mautrix-meta.confd7
-rw-r--r--testing/mautrix-meta/mautrix-meta.initd20
-rw-r--r--testing/mautrix-meta/mautrix-meta.pre-install6
-rw-r--r--testing/mautrix-signal/APKBUILD80
-rw-r--r--testing/mautrix-signal/default-log-dir.patch17
-rw-r--r--testing/mautrix-signal/mautrix-signal.confd7
-rw-r--r--testing/mautrix-signal/mautrix-signal.initd20
-rw-r--r--testing/mautrix-signal/mautrix-signal.pre-install6
-rw-r--r--testing/mautrix-slack/APKBUILD56
-rw-r--r--testing/mautrix-slack/default-log-dir.patch17
-rw-r--r--testing/mautrix-slack/mautrix-slack.confd7
-rw-r--r--testing/mautrix-slack/mautrix-slack.initd20
-rw-r--r--testing/mautrix-slack/mautrix-slack.pre-install6
-rw-r--r--testing/mautrix-whatsapp/APKBUILD38
-rw-r--r--testing/mautrix-whatsapp/default-log-dir.patch16
-rw-r--r--testing/mautrix-whatsapp/mautrix-whatsapp.confd7
-rw-r--r--testing/mautrix-whatsapp/mautrix-whatsapp.initd21
-rw-r--r--testing/mautrix-whatsapp/mautrix-whatsapp.pre-install6
l---------testing/mautrix-whatsapp/mautrix-whatsapp.pre-upgrade1
-rw-r--r--testing/maxima/APKBUILD69
-rw-r--r--testing/mbpfan/APKBUILD5
-rw-r--r--testing/mbrola/APKBUILD27
-rw-r--r--testing/mbrola/terrible-makefile.patch22
-rw-r--r--testing/mcjoin/APKBUILD4
-rw-r--r--testing/mcman/APKBUILD37
-rw-r--r--testing/mcqd/APKBUILD29
-rw-r--r--testing/md2gemini/APKBUILD11
-rw-r--r--testing/md5ha1/APKBUILD2
-rw-r--r--testing/mda-lv2/APKBUILD25
-rw-r--r--testing/mdbook-katex/APKBUILD33
-rw-r--r--testing/mdbook/APKBUILD49
-rw-r--r--testing/mdbtools/10-Werror.patch14
-rw-r--r--testing/mdbtools/APKBUILD90
-rw-r--r--testing/mdcat/APKBUILD45
-rw-r--r--testing/mdcat/minimize-size.patch12
-rw-r--r--testing/mdnsd/APKBUILD7
-rw-r--r--testing/mdp/APKBUILD2
-rw-r--r--testing/mediaelch/APKBUILD54
-rw-r--r--testing/mediascanner2/0001-rename-msg-to-message.patch39
-rw-r--r--testing/mediascanner2/0002-point-qmlplugindump-to-qmlplugindump-qt5.patch25
-rw-r--r--testing/mediascanner2/0003-disable-coverage-report.patch58
-rw-r--r--testing/mediascanner2/APKBUILD53
-rw-r--r--testing/mediastreamer2-plugin-openh264/APKBUILD33
-rw-r--r--testing/mediastreamer2-plugin-x264/APKBUILD29
-rw-r--r--testing/mediastreamer2-plugin-x264/fix-cmakelists.patch18
-rw-r--r--testing/mediastreamer2-plugin-x264/no-werror.patch17
-rw-r--r--testing/mediastreamer2/APKBUILD62
-rw-r--r--testing/mediastreamer2/fix-cmake-path.patch14
-rw-r--r--testing/mediastreamer2/fix-soname.patch12
-rw-r--r--testing/mediastreamer2/missing-def-o-binary.patch16
-rw-r--r--testing/mednafen/APKBUILD41
-rw-r--r--testing/mednaffe/APKBUILD27
-rw-r--r--testing/meep/APKBUILD6
-rw-r--r--testing/megatools/APKBUILD57
-rw-r--r--testing/megazeux/APKBUILD40
-rw-r--r--testing/melonds/0000-remove-failing-assertion-x86.patch9
-rw-r--r--testing/melonds/APKBUILD36
-rw-r--r--testing/memdump/APKBUILD2
-rw-r--r--testing/menumaker/APKBUILD33
-rw-r--r--testing/mepo/APKBUILD63
-rw-r--r--testing/mergerfs/APKBUILD9
-rw-r--r--testing/merlin/APKBUILD78
-rw-r--r--testing/mesa-asahi/APKBUILD339
-rw-r--r--testing/meson-tools/APKBUILD4
-rw-r--r--testing/metalang99/APKBUILD6
-rw-r--r--testing/metalog/APKBUILD51
-rw-r--r--testing/metalog/metalog.confd10
-rw-r--r--testing/metalog/metalog.initd28
-rw-r--r--testing/metricbeat/APKBUILD49
-rw-r--r--testing/metricbeat/metricbeat.confd2
-rw-r--r--testing/metricbeat/metricbeat.initd42
-rw-r--r--testing/metricbeat/metricbeat.yml105
-rw-r--r--testing/mgba/APKBUILD68
-rw-r--r--testing/mgba/ffmpeg5.patch118
-rw-r--r--testing/micropython/APKBUILD47
-rw-r--r--testing/micropython/micropython-1.9.4-prevent-stripping.patch14
-rw-r--r--testing/micropython/no-werror.patch11
-rw-r--r--testing/micropython/no_ssl.patch18
-rw-r--r--testing/micropython/no_ussl.patch15
-rw-r--r--testing/milkytracker/APKBUILD36
-rw-r--r--testing/milkytracker/fix-crash.patch16
-rw-r--r--testing/mimalloc1/APKBUILD24
-rw-r--r--testing/mimalloc1/cmake-add-insecure-suffix.patch24
-rw-r--r--testing/mimalloc2/APKBUILD93
-rw-r--r--testing/mimalloc2/cmake-add-insecure-suffix.patch38
-rw-r--r--testing/mimedefang/APKBUILD38
-rw-r--r--testing/mimedefang/date-test.patch11
-rw-r--r--testing/mimedefang/mimedefang.pre-install4
-rw-r--r--testing/mimeo/APKBUILD9
-rw-r--r--testing/mimir/APKBUILD60
-rw-r--r--testing/mimir/mimir.confd5
-rw-r--r--testing/mimir/mimir.initd11
-rwxr-xr-xtesting/mimir/mimir.pre-install6
-rw-r--r--testing/mimir/mimir.yaml50
-rw-r--r--testing/mingw-w64-libusb/APKBUILD6
-rw-r--r--testing/minikube/APKBUILD28
-rw-r--r--testing/minimodem/APKBUILD2
-rw-r--r--testing/minio-client/APKBUILD48
-rw-r--r--testing/minipeg/APKBUILD31
-rw-r--r--testing/minisatip/APKBUILD63
-rw-r--r--testing/minisatip/default_document_root.patch11
-rw-r--r--testing/minisatip/minisatip.confd2
-rw-r--r--testing/minisatip/minisatip.initd13
-rw-r--r--testing/minisatip/minisatip.pre-install7
-rw-r--r--testing/miniserve/APKBUILD46
-rw-r--r--testing/mint-themes/APKBUILD117
-rw-r--r--testing/mint-x-icons/APKBUILD10
-rw-r--r--testing/mint-y-icons/APKBUILD12
-rw-r--r--testing/mir/0001-Fix-the-signature-of-drmModeCrtcSetGamma.patch70
-rw-r--r--testing/mir/APKBUILD111
-rw-r--r--testing/miraclecast/APKBUILD47
-rw-r--r--testing/mitmproxy/APKBUILD55
-rw-r--r--testing/mitmproxy/fix-openssl-tests.patch20
-rw-r--r--testing/mitmproxy/skip-test-optmanager-x86.patch2
-rw-r--r--testing/mitra/APKBUILD100
-rw-r--r--testing/mitra/config.yaml121
-rw-r--r--testing/mitra/init.sql2
-rw-r--r--testing/mitra/mitra.initd27
-rw-r--r--testing/mitra/mitra.post-install7
-rw-r--r--testing/mitra/mitra.pre-install11
-rw-r--r--testing/mixxx/APKBUILD64
-rw-r--r--testing/mjpg-streamer/APKBUILD2
-rw-r--r--testing/mk-configure/APKBUILD27
-rw-r--r--testing/mkcert/APKBUILD10
-rw-r--r--testing/mkdocs-alabaster/APKBUILD25
-rw-r--r--testing/mkdocs-bootstrap/APKBUILD7
-rw-r--r--testing/mkdocs-bootstrap386/APKBUILD5
-rw-r--r--testing/mkdocs-bootstrap4/APKBUILD5
-rw-r--r--testing/mkdocs-bootswatch/APKBUILD5
-rw-r--r--testing/mkdocs-cinder/APKBUILD5
-rw-r--r--testing/mkdocs-cluster/APKBUILD5
-rw-r--r--testing/mkdocs-gitbook/APKBUILD5
-rw-r--r--testing/mkdocs-ivory/APKBUILD5
-rw-r--r--testing/mkdocs-material-extensions/APKBUILD25
-rw-r--r--testing/mkdocs-material/APKBUILD25
-rw-r--r--testing/mkdocs-rtd-dropdown/APKBUILD5
-rw-r--r--testing/mkdocs-windmill-dark/APKBUILD25
-rw-r--r--testing/mkdocs-windmill/APKBUILD15
-rw-r--r--testing/mkdocs/APKBUILD36
-rw-r--r--testing/mkg3a/APKBUILD4
-rw-r--r--testing/mkrundir/APKBUILD27
-rw-r--r--testing/mktorrent-borg/APKBUILD6
-rw-r--r--testing/mle/APKBUILD36
-rw-r--r--testing/mlxl/APKBUILD30
-rw-r--r--testing/mlxl/flags.patch11
-rw-r--r--[-rwxr-xr-x]testing/mm-common/APKBUILD30
-rw-r--r--testing/mm/APKBUILD1
-rw-r--r--testing/mmix/APKBUILD18
-rw-r--r--testing/mml/APKBUILD59
-rw-r--r--testing/mmtc/APKBUILD32
-rw-r--r--testing/mnamer/APKBUILD16
-rw-r--r--testing/mnemosyne/APKBUILD41
-rw-r--r--testing/mnemosyne/fix-loading-icons.patch76
-rw-r--r--testing/mobpass/APKBUILD5
-rw-r--r--testing/moderncli/APKBUILD34
-rw-r--r--testing/moe/APKBUILD8
-rw-r--r--testing/moka-icon-theme/APKBUILD3
-rw-r--r--testing/mold/APKBUILD59
-rw-r--r--testing/monetdb/APKBUILD6
-rw-r--r--testing/mongo-cxx-driver/01-dont-build-mongo-tests.patch10
-rw-r--r--testing/mongo-cxx-driver/APKBUILD45
-rw-r--r--testing/mongo-cxx-driver/no-mongo-tests.patch22
-rw-r--r--testing/mono/APKBUILD72
-rw-r--r--testing/moon-buggy/APKBUILD2
-rw-r--r--testing/moosefs/APKBUILD13
-rw-r--r--testing/morph-browser/APKBUILD61
-rw-r--r--testing/motion/APKBUILD10
-rw-r--r--testing/mp3gain/APKBUILD4
-rw-r--r--testing/mp3val/APKBUILD6
-rw-r--r--testing/mpdcron/APKBUILD2
-rw-r--r--testing/mpdris2-rs/APKBUILD36
-rw-r--r--testing/mpdris2/APKBUILD5
-rw-r--r--testing/mpir/APKBUILD50
-rw-r--r--testing/mpir/mpir.pc12
-rw-r--r--testing/mpir/mpirxx.pc12
-rw-r--r--testing/mpop/APKBUILD4
-rw-r--r--testing/mpv-mpris/APKBUILD25
-rw-r--r--testing/mpv-sponsorblock/APKBUILD39
-rw-r--r--testing/mpvpaper/APKBUILD33
-rw-r--r--testing/mqtt2prometheus/APKBUILD10
-rw-r--r--testing/mrsh/APKBUILD6
-rw-r--r--testing/msh/APKBUILD46
-rw-r--r--testing/msh/msh.confd3
-rw-r--r--testing/msh/msh.initd26
-rw-r--r--testing/msh/msh.pre-install6
-rw-r--r--testing/mspdebug/APKBUILD2
-rw-r--r--testing/msr-tools/APKBUILD2
-rw-r--r--testing/mstflint/0001-fix-musl.patch26
-rw-r--r--testing/mstflint/APKBUILD48
-rw-r--r--testing/mtg/APKBUILD13
-rw-r--r--testing/mtm/APKBUILD27
-rw-r--r--testing/muon/APKBUILD78
-rw-r--r--testing/muon/fix-bootstrap.patch19
-rw-r--r--testing/muon/fix-tests.patch28
-rw-r--r--testing/muparser/APKBUILD50
-rw-r--r--testing/muse/APKBUILD51
-rw-r--r--testing/musikcube/APKBUILD108
-rw-r--r--testing/musikcube/locale.patch15
-rw-r--r--testing/musikcube/sys.patch37
-rw-r--r--testing/musikcube/tinfo.patch16
-rw-r--r--testing/mustach/APKBUILD28
-rw-r--r--testing/mwoffliner/APKBUILD40
-rw-r--r--testing/mxclient/APKBUILD2
-rw-r--r--testing/mycroft-embedded-shell/APKBUILD46
-rw-r--r--testing/mynewt-newt/APKBUILD30
-rw-r--r--testing/mypaint/APKBUILD63
-rw-r--r--testing/mypaint/fix-invalid-mode-ru.patch98
-rw-r--r--testing/n30f/APKBUILD2
-rw-r--r--testing/nano-hare/APKBUILD23
-rw-r--r--testing/nanomsg/APKBUILD33
-rw-r--r--testing/nauty/APKBUILD37
-rw-r--r--testing/navidrome/APKBUILD77
-rw-r--r--testing/navidrome/navidrome.confd3
-rw-r--r--testing/navidrome/navidrome.initd26
-rw-r--r--testing/navidrome/navidrome.pre-install6
-rw-r--r--testing/navidrome/navidrome.toml154
-rw-r--r--testing/nawk/APKBUILD30
-rw-r--r--testing/nb/APKBUILD45
-rw-r--r--testing/nbtscan/APKBUILD36
-rw-r--r--testing/ncdu2/APKBUILD11
-rw-r--r--testing/ncdu2/pie-build.patch10
-rw-r--r--testing/ndpi/APKBUILD4
-rw-r--r--testing/neard/APKBUILD8
-rw-r--r--testing/neatvi/APKBUILD26
-rw-r--r--testing/neatvi/conf.patch14
-rw-r--r--testing/neomutt/APKBUILD65
-rw-r--r--testing/nerdctl/APKBUILD31
-rw-r--r--testing/netcdf-cxx4/APKBUILD38
-rw-r--r--testing/netcdf-fortran/APKBUILD46
-rw-r--r--testing/netdata-go-plugins/APKBUILD36
-rw-r--r--testing/netdiscover/APKBUILD43
-rw-r--r--testing/netifrc/APKBUILD27
-rw-r--r--testing/netpbm/01-makefile.patch11
-rw-r--r--testing/netpbm/02-installnetpbm.patch51
-rw-r--r--testing/netpbm/APKBUILD43
-rw-r--r--testing/netpbm/config.mk14
-rw-r--r--testing/netsed/APKBUILD2
-rw-r--r--testing/netsurf/APKBUILD17
-rw-r--r--testing/netsurf/non-coreutils-install-compatibility.patch18
-rw-r--r--testing/newsyslog/10-compat.patch80
-rw-r--r--testing/newsyslog/20-html.patch23
-rw-r--r--testing/newsyslog/APKBUILD51
-rw-r--r--testing/nextpnr/APKBUILD69
-rw-r--r--testing/nginx-naxsi/APKBUILD193
-rw-r--r--testing/nginx-naxsi/anonymise.patch75
-rw-r--r--testing/nginx-naxsi/default.conf20
-rw-r--r--testing/nginx-naxsi/nginx-naxsi.pre-install9
l---------testing/nginx-naxsi/nginx-naxsi.pre-upgrade1
-rw-r--r--testing/nginx-naxsi/nginx.conf92
-rw-r--r--testing/nginx-naxsi/nginx.initd47
-rw-r--r--testing/nginx-naxsi/nginx.logrotate12
-rw-r--r--testing/nginx-naxsi/sysguard.conf25
-rw-r--r--testing/nginx-naxsi/sysguard.patch10
-rw-r--r--testing/nginx-ultimate-bad-bot-blocker/APKBUILD4
-rw-r--r--testing/ngs/APKBUILD44
-rw-r--r--testing/ngs/cmakelists.patch14
-rw-r--r--testing/ngspice/APKBUILD70
-rw-r--r--testing/ngspice/ngspice.pc12
-rw-r--r--testing/nicotine-plus/APKBUILD34
-rw-r--r--testing/nil/APKBUILD46
-rw-r--r--testing/nilfs-utils/APKBUILD49
-rw-r--r--testing/nilfs-utils/max-input.patch12
-rw-r--r--testing/nitro/APKBUILD34
-rw-r--r--testing/nitro/fix-path-max.patch10
-rw-r--r--testing/nitro/path-max.patch12
-rw-r--r--testing/nitrocli/APKBUILD9
-rw-r--r--testing/nix/APKBUILD99
-rw-r--r--testing/nix/nix-daemon.initd7
-rw-r--r--testing/nix/nix-profile.sh84
-rw-r--r--testing/nix/nix.pre-install10
-rw-r--r--testing/nixpacks/APKBUILD29
-rw-r--r--testing/nkk/APKBUILD12
-rw-r--r--testing/nkk/pc-opengl.patch14
-rw-r--r--testing/nm-tray/APKBUILD39
-rw-r--r--testing/nmail/APKBUILD57
-rw-r--r--testing/nmap-parse-output/APKBUILD33
-rw-r--r--testing/nmon/APKBUILD14
-rw-r--r--testing/noblenote/APKBUILD2
-rw-r--r--testing/node-closurecompiler-externs/APKBUILD29
-rw-r--r--testing/node-closurecompiler-externs/domain.js-fix-type-annotations.patch35
-rw-r--r--testing/node-libpg-query/APKBUILD9
-rw-r--r--testing/node-libpg-query/bump-gyp.patch57
-rw-r--r--testing/nodejs18/APKBUILD222
-rw-r--r--testing/nodejs18/disable-running-gyp-on-shared-deps.patch22
-rw-r--r--testing/nodejs18/fix-build-with-system-c-ares.patch535
-rw-r--r--testing/noggin-model/APKBUILD26
-rw-r--r--testing/noggin/APKBUILD37
-rw-r--r--testing/noice/APKBUILD2
-rw-r--r--testing/nom/APKBUILD41
-rw-r--r--testing/nom/update-go-sqlite3.patch28
-rw-r--r--testing/normaliz/APKBUILD51
-rw-r--r--testing/noson-app/APKBUILD18
-rw-r--r--testing/noson/APKBUILD16
-rw-r--r--testing/noson/gcc12.patch13
-rw-r--r--testing/novnc/APKBUILD46
-rw-r--r--testing/novnc/alpine-specific-launch.js.patch19
-rw-r--r--testing/nsh/APKBUILD11
-rw-r--r--testing/nsjail/APKBUILD43
-rw-r--r--testing/nsjail/protobuf-23.patch24
-rw-r--r--testing/nsq/APKBUILD34
-rw-r--r--testing/nsq/glibc-test.patch13
-rw-r--r--testing/nsq/more-test-procs.patch11
-rw-r--r--testing/nsq/no-fmt.patch11
-rw-r--r--testing/nsss/APKBUILD37
-rw-r--r--testing/nsxiv/APKBUILD37
-rw-r--r--testing/ntfy-alertmanager/APKBUILD38
-rw-r--r--testing/ntfy-alertmanager/ntfy-alertmanager.initd12
-rw-r--r--testing/ntfy-alertmanager/ntfy-alertmanager.pre-install6
-rw-r--r--testing/nuklear/APKBUILD18
-rw-r--r--testing/numbat/APKBUILD41
-rw-r--r--testing/numbat/use-system-openssl.patch368
-rw-r--r--testing/nushell/APKBUILD46
-rw-r--r--testing/nushell/nushell.post-install3
l---------testing/nushell/nushell.post-upgrade1
-rw-r--r--testing/nushell/nushell.pre-deinstall3
-rw-r--r--testing/nuzzle/APKBUILD36
-rw-r--r--testing/nvchecker/APKBUILD59
-rw-r--r--testing/nvidia-src/AKMBUILD14
-rw-r--r--testing/nvidia-src/APKBUILD31
-rw-r--r--testing/nvim-cmp-buffer/APKBUILD25
-rw-r--r--testing/nvim-cmp-cmdline/APKBUILD25
-rw-r--r--testing/nvim-cmp-lsp/APKBUILD30
-rw-r--r--testing/nvim-cmp-luasnip/APKBUILD25
-rw-r--r--testing/nvim-cmp-path/APKBUILD25
-rw-r--r--testing/nvim-cmp/APKBUILD30
-rw-r--r--testing/nvim-gruvbox/APKBUILD12
-rw-r--r--testing/nvim-lspconfig/APKBUILD28
-rw-r--r--testing/nvim-lualine/APKBUILD12
-rw-r--r--testing/nvim-packer/APKBUILD12
-rw-r--r--testing/nvim-treesitter/APKBUILD14
-rw-r--r--testing/nvimpager/APKBUILD26
-rw-r--r--testing/nvtop/APKBUILD49
-rw-r--r--testing/nwg-bar/APKBUILD10
-rw-r--r--testing/nwg-displays/APKBUILD36
-rw-r--r--testing/nwg-dock/APKBUILD31
-rw-r--r--testing/nymphcast-mediaserver/APKBUILD2
-rw-r--r--testing/nyx/APKBUILD27
-rw-r--r--testing/nyxt/APKBUILD42
-rw-r--r--testing/nzbget/APKBUILD7
-rw-r--r--testing/nzbget/openssl3.patch29
-rw-r--r--testing/oauth2-proxy/APKBUILD43
-rw-r--r--testing/oauth2-proxy/make-dont-disable-cgo.patch16
-rw-r--r--testing/oauth2-proxy/oauth2-proxy.confd5
-rw-r--r--testing/oauth2-proxy/oauth2-proxy.initd37
-rw-r--r--testing/oauth2-proxy/oauth2-proxy.pre-install6
-rw-r--r--testing/obconf-qt/APKBUILD36
-rw-r--r--testing/obfs4proxy/APKBUILD29
-rw-r--r--testing/objconv/APKBUILD4
-rw-r--r--testing/ocaml-alcotest/APKBUILD34
-rw-r--r--testing/ocaml-angstrom/APKBUILD40
-rw-r--r--testing/ocaml-arp/APKBUILD43
-rw-r--r--testing/ocaml-asn1-combinators/APKBUILD41
-rw-r--r--testing/ocaml-astring/APKBUILD33
-rw-r--r--testing/ocaml-base/APKBUILD44
-rw-r--r--testing/ocaml-base64/APKBUILD34
-rw-r--r--testing/ocaml-bigarray-compat/APKBUILD34
-rw-r--r--testing/ocaml-bigstringaf/APKBUILD34
-rw-r--r--testing/ocaml-biniou/APKBUILD34
-rw-r--r--testing/ocaml-bisect_ppx/APKBUILD45
-rw-r--r--testing/ocaml-bisect_ppx/ppxlib-0.26-compat.patch51
-rw-r--r--testing/ocaml-bitstring/APKBUILD40
-rw-r--r--testing/ocaml-bos/APKBUILD41
-rw-r--r--testing/ocaml-ca-certs-nss/APKBUILD43
-rw-r--r--testing/ocaml-ca-certs/APKBUILD43
-rw-r--r--testing/ocaml-cairo2/APKBUILD34
-rw-r--r--testing/ocaml-calendar/APKBUILD33
-rw-r--r--testing/ocaml-camlzip/APKBUILD34
-rw-r--r--testing/ocaml-camomile/APKBUILD35
-rw-r--r--testing/ocaml-charinfo_width/APKBUILD34
-rw-r--r--testing/ocaml-cmdliner/APKBUILD34
-rw-r--r--testing/ocaml-compiler-libs-repackaged/APKBUILD34
-rw-r--r--testing/ocaml-containers/APKBUILD35
-rw-r--r--testing/ocaml-cppo/APKBUILD68
-rw-r--r--testing/ocaml-csexp/APKBUILD63
-rw-r--r--testing/ocaml-cstruct/APKBUILD40
-rw-r--r--testing/ocaml-ctypes/APKBUILD35
-rw-r--r--testing/ocaml-curses/APKBUILD34
-rw-r--r--testing/ocaml-dns/APKBUILD62
-rw-r--r--testing/ocaml-domain-name/APKBUILD34
-rw-r--r--testing/ocaml-down/APKBUILD35
-rw-r--r--testing/ocaml-duration/APKBUILD34
-rw-r--r--testing/ocaml-easy-format/APKBUILD36
-rw-r--r--testing/ocaml-eqaf/APKBUILD34
-rw-r--r--testing/ocaml-erm_xml/APKBUILD34
-rw-r--r--testing/ocaml-erm_xmpp/APKBUILD41
-rw-r--r--testing/ocaml-ethernet/APKBUILD41
-rw-r--r--testing/ocaml-extlib/APKBUILD37
-rw-r--r--testing/ocaml-fileutils/APKBUILD42
-rw-r--r--testing/ocaml-fix/APKBUILD34
-rw-r--r--testing/ocaml-fmt/APKBUILD34
-rw-r--r--testing/ocaml-fpath/APKBUILD34
-rw-r--r--testing/ocaml-gen/APKBUILD47
-rw-r--r--testing/ocaml-gen/dont-use-external-seq.patch9
-rw-r--r--testing/ocaml-gettext/APKBUILD34
-rw-r--r--testing/ocaml-gmap/APKBUILD34
-rw-r--r--testing/ocaml-happy-eyeballs-lwt/APKBUILD46
-rw-r--r--testing/ocaml-happy-eyeballs/APKBUILD41
-rw-r--r--testing/ocaml-hex/APKBUILD34
-rw-r--r--testing/ocaml-hkdf/APKBUILD40
-rw-r--r--testing/ocaml-integers/APKBUILD35
-rw-r--r--testing/ocaml-ipaddr/APKBUILD43
-rw-r--r--testing/ocaml-lablgtk3-extras/APKBUILD34
-rw-r--r--testing/ocaml-lablgtk3/APKBUILD42
-rw-r--r--testing/ocaml-labltk/APKBUILD44
-rw-r--r--testing/ocaml-lambda-term/APKBUILD42
-rw-r--r--testing/ocaml-lambdasoup/APKBUILD34
-rw-r--r--testing/ocaml-libvirt/APKBUILD51
-rw-r--r--testing/ocaml-logs/APKBUILD34
-rw-r--r--testing/ocaml-lru/APKBUILD34
-rw-r--r--testing/ocaml-lwd/APKBUILD45
-rw-r--r--testing/ocaml-lwd/notty-latest-git.patch66
-rw-r--r--testing/ocaml-lwt-dllist/APKBUILD34
-rw-r--r--testing/ocaml-lwt/APKBUILD52
-rw-r--r--testing/ocaml-lwt/dont-use-external-seq.patch11
-rw-r--r--testing/ocaml-lwt/result_lseek_noinline.patch20
-rw-r--r--testing/ocaml-lwt_log/APKBUILD38
-rw-r--r--testing/ocaml-markup/APKBUILD34
-rw-r--r--testing/ocaml-menhir/APKBUILD38
-rw-r--r--testing/ocaml-merlin-extend/APKBUILD42
-rw-r--r--testing/ocaml-metrics/APKBUILD42
-rw-r--r--testing/ocaml-mew/APKBUILD34
-rw-r--r--testing/ocaml-mew_vi/APKBUILD34
-rw-r--r--testing/ocaml-mikmatch/APKBUILD30
-rw-r--r--testing/ocaml-mirage-clock/APKBUILD34
-rw-r--r--testing/ocaml-mirage-crypto/APKBUILD43
-rw-r--r--testing/ocaml-mirage-flow/APKBUILD41
-rw-r--r--testing/ocaml-mirage-kv/APKBUILD36
-rw-r--r--testing/ocaml-mirage-net/APKBUILD39
-rw-r--r--testing/ocaml-mirage-profile/APKBUILD42
-rw-r--r--testing/ocaml-mirage-random/APKBUILD34
-rw-r--r--testing/ocaml-mirage-time/APKBUILD34
-rw-r--r--testing/ocaml-mmap/APKBUILD36
-rw-r--r--testing/ocaml-mtime/APKBUILD34
-rw-r--r--testing/ocaml-notty/APKBUILD55
-rw-r--r--testing/ocaml-notty/ocaml-4.14-support.patch40
-rw-r--r--testing/ocaml-num/APKBUILD49
-rw-r--r--testing/ocaml-obuild/APKBUILD32
-rw-r--r--testing/ocaml-obytelib/APKBUILD37
-rw-r--r--testing/ocaml-ocf/APKBUILD36
-rw-r--r--testing/ocaml-ocplib-endian/APKBUILD36
-rw-r--r--testing/ocaml-omake/APKBUILD37
-rw-r--r--testing/ocaml-omod/APKBUILD36
-rw-r--r--testing/ocaml-otr/APKBUILD41
-rw-r--r--testing/ocaml-ounit/APKBUILD43
-rw-r--r--testing/ocaml-parsexp/APKBUILD42
-rw-r--r--testing/ocaml-pbkdf/APKBUILD40
-rw-r--r--testing/ocaml-pcre/APKBUILD40
-rw-r--r--testing/ocaml-perl-bridge/APKBUILD56
-rw-r--r--testing/ocaml-perl-bridge/makefile-site-lib.patch17
-rw-r--r--testing/ocaml-perl-bridge/ocaml-headers-path.patch21
-rw-r--r--testing/ocaml-perl-bridge/ocaml-preprocessor-macros.patch26
-rw-r--r--testing/ocaml-perl-bridge/perl-SVt_RV-missing.patch24
-rw-r--r--testing/ocaml-ppx_derivers/APKBUILD34
-rw-r--r--testing/ocaml-ppx_deriving/APKBUILD40
-rw-r--r--testing/ocaml-ppx_sexp_conv/APKBUILD42
-rw-r--r--testing/ocaml-ppxlib/APKBUILD45
-rw-r--r--testing/ocaml-psq/APKBUILD36
-rw-r--r--testing/ocaml-ptime/APKBUILD34
-rw-r--r--testing/ocaml-ptmap/APKBUILD34
-rw-r--r--testing/ocaml-qcheck/APKBUILD32
-rw-r--r--testing/ocaml-qtest/APKBUILD32
-rw-r--r--testing/ocaml-randomconv/APKBUILD34
-rw-r--r--testing/ocaml-re/APKBUILD36
-rw-r--r--testing/ocaml-react/APKBUILD34
-rw-r--r--testing/ocaml-result/APKBUILD34
-rw-r--r--testing/ocaml-rresult/APKBUILD34
-rw-r--r--testing/ocaml-sedlex/APKBUILD38
-rw-r--r--testing/ocaml-seq/APKBUILD40
-rw-r--r--testing/ocaml-sexplib/APKBUILD49
-rw-r--r--testing/ocaml-sexplib0/APKBUILD40
-rw-r--r--testing/ocaml-sha/APKBUILD41
-rw-r--r--testing/ocaml-stdlib-shims/APKBUILD30
-rw-r--r--testing/ocaml-stringext/APKBUILD34
-rw-r--r--testing/ocaml-tcpip/APKBUILD58
-rw-r--r--testing/ocaml-tls/APKBUILD51
-rw-r--r--testing/ocaml-tophide/APKBUILD29
-rw-r--r--testing/ocaml-topkg/APKBUILD34
-rw-r--r--testing/ocaml-trie/APKBUILD34
-rw-r--r--testing/ocaml-uri/APKBUILD40
-rw-r--r--testing/ocaml-uucd/APKBUILD34
-rw-r--r--testing/ocaml-uucp/APKBUILD36
-rw-r--r--testing/ocaml-uuidm/APKBUILD34
-rw-r--r--testing/ocaml-uunf/APKBUILD36
-rw-r--r--testing/ocaml-uuseg/APKBUILD36
-rw-r--r--testing/ocaml-uutf/APKBUILD34
-rw-r--r--testing/ocaml-x509/APKBUILD47
-rw-r--r--testing/ocaml-xml-light/APKBUILD69
-rw-r--r--testing/ocaml-xml-light/Makefile-explicit-target-fix.patch11
-rw-r--r--testing/ocaml-xmlm/APKBUILD33
-rw-r--r--testing/ocaml-yojson/APKBUILD51
-rw-r--r--testing/ocaml-zarith/APKBUILD44
-rw-r--r--testing/ocaml-zed/APKBUILD39
-rw-r--r--testing/ocaml5/APKBUILD114
-rw-r--r--testing/ocamlclean/APKBUILD31
-rw-r--r--testing/ocamlclean/obytelib-dir.patch11
-rw-r--r--testing/ocamlnet/APKBUILD39
-rw-r--r--testing/ocfs2-tools/APKBUILD6
-rw-r--r--testing/ocfs2-tools/musl-sys-raw.h.patch37
-rw-r--r--testing/ocfs2-tools/new-linux.patch37
-rw-r--r--testing/ocp-indent/APKBUILD41
-rw-r--r--testing/ocp-index/APKBUILD41
-rw-r--r--testing/octoprint-creality2xfix/APKBUILD36
-rw-r--r--testing/octoprint-filecheck/APKBUILD36
-rw-r--r--testing/octoprint-firmwarecheck/APKBUILD36
-rw-r--r--testing/octoprint-pisupport/APKBUILD36
-rw-r--r--testing/octoprint/APKBUILD119
-rw-r--r--testing/octoprint/config.yaml153
-rw-r--r--testing/octoprint/fix-tests.patch9
-rw-r--r--testing/octoprint/netaddr-0.10.patch33
-rw-r--r--testing/octoprint/octoprint.initd24
-rw-r--r--testing/octoprint/octoprint.pre-install6
-rw-r--r--testing/octoprint/py3.12-typeparams.patch49
-rw-r--r--testing/octoprint/pydantic-2.0.patch28
-rw-r--r--testing/odyssey/APKBUILD31
-rw-r--r--testing/odyssey/argp.patch13
-rw-r--r--testing/odyssey/types.patch12
-rw-r--r--testing/oed/APKBUILD29
-rw-r--r--testing/oh-my-zsh/APKBUILD5
-rw-r--r--testing/oil/APKBUILD9
-rw-r--r--testing/ol/APKBUILD35
-rw-r--r--testing/ol/GNUmakefile.patch21
-rw-r--r--testing/ol/memfd_create.patch107
-rw-r--r--testing/ol/tests-Makefile.patch395
-rw-r--r--testing/olsrd/APKBUILD2
-rw-r--r--testing/ombi/APKBUILD89
-rw-r--r--testing/ombi/ombi.confd4
-rw-r--r--testing/ombi/ombi.initd24
-rw-r--r--testing/ombi/ombi.pre-install6
-rw-r--r--testing/one-dnn/APKBUILD15
-rw-r--r--testing/one-dnn/gcc13.patch12
-rw-r--r--testing/onevpl-intel-gpu/APKBUILD40
-rw-r--r--testing/onevpl/APKBUILD46
-rw-r--r--testing/onioncat/APKBUILD36
-rw-r--r--testing/onnxruntime/0001-Remove-MATH_NO_EXCEPT-macro.patch50
-rw-r--r--testing/onnxruntime/APKBUILD99
-rw-r--r--testing/onnxruntime/no-execinfo.patch22
-rw-r--r--testing/onnxruntime/system.patch66
-rw-r--r--testing/opa/APKBUILD77
-rw-r--r--testing/opa/tests-go1.22-compat.patch274
-rw-r--r--testing/opcr-policy/APKBUILD37
-rw-r--r--testing/opencascade/APKBUILD68
-rw-r--r--testing/opencascade/cmake_add_buildtype_none.patch13
-rw-r--r--testing/opencascade/cmake_fix_install_dir.patch30
-rw-r--r--testing/opencascade/fix-tbb-2021.patch45
-rw-r--r--testing/opencascade/no_backtrace.patch63
-rw-r--r--testing/opencascade/no_feenableexcept.patch41
-rw-r--r--testing/opencascade/no_mallinfo.patch61
-rw-r--r--testing/opencc/APKBUILD49
-rw-r--r--testing/opencl-clang/APKBUILD39
-rw-r--r--testing/opencl-clang/cl_headers-clang-include.patch13
-rw-r--r--testing/opencsg/APKBUILD34
-rw-r--r--testing/opendht/APKBUILD29
-rw-r--r--testing/openfire/APKBUILD86
-rw-r--r--testing/openfire/openfire.confd6
-rw-r--r--testing/openfire/openfire.initd24
-rw-r--r--testing/openfire/openfire.logrotate8
-rwxr-xr-xtesting/openfire/openfire.post-install18
l---------testing/openfire/openfire.post-upgrade1
-rwxr-xr-xtesting/openfire/openfire.pre-install6
-rw-r--r--testing/openfortivpn/APKBUILD8
-rw-r--r--testing/openfpgaloader/APKBUILD43
-rw-r--r--testing/openh264/APKBUILD30
-rw-r--r--testing/openjdk18/APKBUILD298
-rw-r--r--testing/openjdk18/Alpine_Bug_10126.java13
-rw-r--r--testing/openjdk18/FixNullPtrCast.patch104
-rw-r--r--testing/openjdk18/HelloWorld.java3
-rw-r--r--testing/openjdk18/TestCryptoLevel.java72
-rw-r--r--testing/openjdk18/TestECDSA.java49
-rw-r--r--testing/openjdk18/detect-busybox-date-as-gnu-date.patch11
-rw-r--r--testing/openjdk18/ppc64le.patch256
-rw-r--r--testing/openjfx/APKBUILD53
-rw-r--r--testing/openjfx/openjfx.profile3
-rw-r--r--testing/openjfx/remove-version-suffix-check.patch42
-rw-r--r--testing/openmg/APKBUILD15
-rw-r--r--testing/openmg/format-security.patch119
-rw-r--r--testing/openocd-esp32/APKBUILD78
-rw-r--r--testing/openocd-esp32/fix-jimtcl-link.patch44
-rw-r--r--testing/openocd-git/APKBUILD53
-rw-r--r--testing/openocd-riscv/APKBUILD49
-rw-r--r--testing/openocd-riscv/fix-dynamic-linking.patch25
-rw-r--r--testing/openra/APKBUILD51
-rw-r--r--testing/openrazer/APKBUILD63
-rw-r--r--testing/openrc-exporter/APKBUILD42
-rw-r--r--testing/openrc-exporter/openrc-exporter.confd3
-rw-r--r--testing/openrc-exporter/openrc-exporter.initd14
-rw-r--r--testing/openrc-exporter/openrc-exporter.pre-install6
-rw-r--r--testing/openresty/APKBUILD157
-rw-r--r--testing/openscad/0001-fix-CVE-2022-0496.patch76
-rw-r--r--testing/openscad/0002-fix-CVE-2022-0497.patch27
-rw-r--r--testing/openscad/0003-fix-build-with-cgal-5.3.patch47
-rw-r--r--testing/openscad/0004-fix-build-with-cgal-5.4.patch38
-rw-r--r--testing/openscad/0005-fix-boost-join.patch62
-rw-r--r--testing/openscad/APKBUILD143
-rw-r--r--testing/openscap-daemon/APKBUILD8
-rw-r--r--testing/openscap/APKBUILD52
-rw-r--r--testing/openscap/fix-ppc64le-path_max.patch34
-rw-r--r--testing/openscap/path_mounted.patch12
-rw-r--r--testing/openslide/APKBUILD52
-rw-r--r--testing/opensm/APKBUILD2
-rw-r--r--testing/opensmtpd-filter-dkimsign/APKBUILD2
-rw-r--r--testing/openspades/APKBUILD55
-rw-r--r--testing/openssl1.1-compat/APKBUILD177
-rw-r--r--testing/openssl1.1-compat/man-section.patch54
-rw-r--r--testing/openssl1.1-compat/ppc64.patch96
-rw-r--r--testing/opensurge/APKBUILD38
-rw-r--r--testing/opensurge/patch-zip.patch21
-rw-r--r--testing/opentelemetry-cpp/APKBUILD108
-rw-r--r--testing/opentelemetry-cpp/gcc13.patch12
-rw-r--r--testing/openttd/APKBUILD11
-rw-r--r--testing/openvino/APKBUILD146
-rw-r--r--testing/openvino/cmake-config.patch94
-rw-r--r--testing/openvino/cmake-dont-force-build-type.patch22
-rw-r--r--testing/openvino/deprecated-copy.patch14
-rw-r--r--testing/openvino/fix-missing-include.patch10
-rw-r--r--testing/openvino/include-stdexcept.patch15
-rw-r--r--testing/openvino/pessimizing-move.patch46
-rw-r--r--testing/openvpn3/APKBUILD11
-rw-r--r--testing/openwsman/APKBUILD54
-rw-r--r--testing/opkg-utils/APKBUILD2
-rw-r--r--testing/opkg/APKBUILD15
-rw-r--r--testing/opmsg/APKBUILD16
-rw-r--r--testing/optee-client/APKBUILD38
-rw-r--r--testing/orage/APKBUILD4
-rw-r--r--testing/oras-cli/APKBUILD53
-rw-r--r--testing/osmctools/APKBUILD34
-rw-r--r--testing/ossp-uuid/APKBUILD37
-rw-r--r--testing/ossp-uuid/uuid.patch208
-rw-r--r--testing/ostinato/APKBUILD49
-rw-r--r--testing/ostinato/ModelTest.patch18
-rw-r--r--testing/otpclient/APKBUILD17
-rw-r--r--testing/otrs/APKBUILD29
-rw-r--r--testing/ouch/APKBUILD44
-rw-r--r--testing/ouch/use-system-libs.patch11
-rw-r--r--testing/ovn/APKBUILD126
-rw-r--r--testing/ovn/ovn-controller.initd22
-rw-r--r--testing/ovn/ovn-ctl.confd3
-rw-r--r--testing/ovn/ovn-northd.initd22
-rw-r--r--testing/ovn/ovn-ovsdb-server-nb.initd22
-rw-r--r--testing/ovn/ovn-ovsdb-server-sb.initd22
-rw-r--r--testing/ovn/ovn.post-install3
-rw-r--r--testing/ovn/ovs-ifupdown-alpine.patch17
-rw-r--r--testing/ovn/ovs-modules.initd20
-rw-r--r--testing/ovn/ovs-vswitchd.confd6
-rw-r--r--testing/ovn/ovs-vswitchd.initd25
-rw-r--r--testing/ovn/ovsdb-server.confd16
-rw-r--r--testing/ovn/ovsdb-server.initd50
-rw-r--r--testing/ovos-audio/APKBUILD53
-rw-r--r--testing/ovos-core/APKBUILD69
-rw-r--r--testing/ovos-core/ovos.conf1
-rw-r--r--testing/ovos-core/profile.sh2
-rw-r--r--testing/ovos-dinkum-listener/APKBUILD51
-rw-r--r--testing/ovos-gui/APKBUILD46
-rw-r--r--testing/ovos-messagebus/APKBUILD40
-rw-r--r--testing/ovos-phal/APKBUILD54
-rw-r--r--testing/ovos-shell/APKBUILD59
-rw-r--r--testing/ovos-skill-hello-world/APKBUILD39
-rw-r--r--testing/ovos-skill-manager/APKBUILD81
-rw-r--r--testing/ovos-skill-manager/appstore-use-last-compatible-archive.patch26
-rw-r--r--testing/ovos-skill-manager/fix-github-main-branch-detection.patch31
-rw-r--r--testing/ovos/APKBUILD28
-rw-r--r--testing/ovpncc/APKBUILD24
-rw-r--r--testing/oxipng/APKBUILD28
-rw-r--r--testing/p0f/APKBUILD2
-rw-r--r--testing/p910nd/APKBUILD6
-rw-r--r--testing/p910nd/p910nd.confd2
-rw-r--r--testing/p910nd/p910nd.initd2
-rw-r--r--testing/pacparser/APKBUILD36
-rw-r--r--testing/pacparser/spidermonkey-make.patch16
-rw-r--r--testing/paho-mqtt-c/APKBUILD42
-rw-r--r--testing/palp/APKBUILD47
-rw-r--r--testing/pam_mount/APKBUILD57
-rw-r--r--testing/pam_mount/rundir.patch13
-rw-r--r--testing/pam_sqlite3/APKBUILD23
-rw-r--r--testing/pam_sqlite3/broken-makefile.patch13
-rw-r--r--testing/pamtester/APKBUILD4
-rw-r--r--testing/pandoc/APKBUILD55
-rw-r--r--testing/pandoc/cabal.project.freeze249
-rw-r--r--testing/pantalaimon/APKBUILD70
-rw-r--r--testing/pantalaimon/fix-media.patch24
-rw-r--r--testing/pantalaimon/fix-presence.patch28
-rw-r--r--testing/pantalaimon/fix-tox.patch24
-rw-r--r--testing/pantalaimon/fix-typo.patch24
-rw-r--r--testing/paperde/APKBUILD46
-rw-r--r--testing/paperkey/APKBUILD4
-rw-r--r--testing/paprefs/APKBUILD10
-rw-r--r--testing/par/APKBUILD2
-rw-r--r--testing/par2cmdline-turbo/APKBUILD37
-rw-r--r--testing/paraexec/APKBUILD8
-rw-r--r--testing/parcellite/APKBUILD27
-rw-r--r--[-rwxr-xr-x]testing/pari/APKBUILD24
-rw-r--r--testing/partclone-utils/10-posix-close.patch24
-rw-r--r--testing/partclone-utils/20-u_int-to-uint.patch215
-rw-r--r--testing/partclone-utils/APKBUILD37
-rw-r--r--testing/pash/APKBUILD2
-rw-r--r--testing/pass2csv/APKBUILD18
-rw-r--r--testing/passt/APKBUILD29
-rw-r--r--testing/pastebinc/APKBUILD2
-rw-r--r--testing/pastel/APKBUILD14
-rw-r--r--testing/pathvector/APKBUILD32
-rw-r--r--testing/pathvector/pathvector.yml1
-rw-r--r--testing/pavucontrol-qt/APKBUILD34
-rw-r--r--testing/pc/APKBUILD25
-rw-r--r--testing/pcaudiolib/APKBUILD37
-rw-r--r--testing/pcem/APKBUILD6
-rw-r--r--testing/pcl/APKBUILD110
-rw-r--r--testing/pcl/fix-broken-flags.patch30
-rw-r--r--testing/pcl/gcc8.patch36
-rw-r--r--testing/pcmanfm-qt/APKBUILD35
-rw-r--r--testing/pcsc-perl/APKBUILD16
-rw-r--r--testing/pcsc-tools/APKBUILD10
-rw-r--r--testing/pcsx2/APKBUILD164
-rw-r--r--testing/pcsx2/PCSX2.desktop15
-rw-r--r--testing/pcsx2/fast-float.patch14
-rw-r--r--testing/pcsx2/fix-iovec-define.patch12
-rw-r--r--testing/pcsx2/fix-lfs64.patch118
-rw-r--r--testing/pcsx2/ryml.patch13
-rw-r--r--testing/pcsx2/unbundle-vulkan.patch26
-rw-r--r--testing/pcsx2/unbundle-zstd.patch11
-rw-r--r--testing/pcsx2/version.patch4
-rw-r--r--testing/pcsx2/zstd.patch10
-rw-r--r--testing/pcsxr/APKBUILD47
-rw-r--r--testing/pcsxr/fix-assert-64bit.patch13
-rw-r--r--testing/pcsxr/fix-musl.patch14
-rw-r--r--testing/pcsxr/fix-uncompress2.patch23
-rw-r--r--testing/pcsxr/fix-undefined-operations.patch194
-rw-r--r--testing/pdal-python-plugins/APKBUILD33
-rw-r--r--testing/pdf2svg/APKBUILD2
-rw-r--r--testing/pdfarranger/APKBUILD27
-rw-r--r--testing/pdfcpu/APKBUILD32
-rw-r--r--testing/pdfcrack/APKBUILD8
-rw-r--r--testing/pdfjs/APKBUILD21
-rw-r--r--testing/pdm/APKBUILD61
-rw-r--r--testing/pebble-le/APKBUILD54
-rw-r--r--testing/pebble-le/pebble-le.pre-install5
-rw-r--r--testing/pebble-le/simpleble.patch45
-rw-r--r--testing/peervpn/APKBUILD4
-rw-r--r--testing/peg/APKBUILD2
-rw-r--r--testing/pegasus-frontend/APKBUILD6
-rw-r--r--testing/pegtl/APKBUILD12
-rw-r--r--testing/pegtl/ignore-type-limits-error.patch19
-rw-r--r--testing/percona-toolkit/APKBUILD4
-rw-r--r--testing/perl-adapter-async/APKBUILD50
-rw-r--r--testing/perl-algorithm-backoff/APKBUILD39
-rw-r--r--testing/perl-algorithm-c3/APKBUILD2
-rw-r--r--testing/perl-algorithm-cron/APKBUILD2
-rw-r--r--testing/perl-aliased/APKBUILD2
-rw-r--r--testing/perl-anyevent-dns-etchosts/APKBUILD11
-rw-r--r--testing/perl-anyevent-future/APKBUILD37
-rw-r--r--testing/perl-anyevent-http/APKBUILD34
-rw-r--r--testing/perl-anyevent-mocktcpserver/APKBUILD38
-rw-r--r--testing/perl-anyevent-mqtt/APKBUILD47
-rw-r--r--testing/perl-anyevent-riperedis/APKBUILD42
-rw-r--r--testing/perl-anyevent-riperedis/test-redisrunner.patch18
-rw-r--r--testing/perl-anyevent-xmpp/APKBUILD46
-rw-r--r--testing/perl-anyevent-xmpp/delivery-receipt-1.patch45
-rw-r--r--testing/perl-anyevent-xmpp/delivery-receipt-2.patch24
-rw-r--r--testing/perl-anyevent-xmpp/doc-typo-fix.patch24
-rw-r--r--testing/perl-archive-cpio/APKBUILD37
-rw-r--r--testing/perl-archive-extract/APKBUILD2
-rw-r--r--testing/perl-autobox/APKBUILD2
-rw-r--r--testing/perl-barcode-zbar/APKBUILD2
-rw-r--r--testing/perl-bind-config-parser/APKBUILD2
-rw-r--r--testing/perl-bsd-resource/APKBUILD28
-rw-r--r--testing/perl-bytes-random-secure/APKBUILD38
-rw-r--r--testing/perl-cache-lru/APKBUILD38
-rw-r--r--testing/perl-cairo-gobject/APKBUILD5
-rw-r--r--testing/perl-cairo/APKBUILD2
-rw-r--r--testing/perl-cgi-expand/APKBUILD2
-rw-r--r--testing/perl-check-unitcheck/APKBUILD42
-rw-r--r--testing/perl-class-accessor-grouped/APKBUILD2
-rw-r--r--testing/perl-class-c3-componentised/APKBUILD2
-rw-r--r--testing/perl-class-c3/APKBUILD2
-rw-r--r--testing/perl-class-inner/APKBUILD29
-rw-r--r--testing/perl-class-xsaccessor/APKBUILD37
-rw-r--r--testing/perl-clone-choose/APKBUILD2
-rw-r--r--testing/perl-clone-pp/APKBUILD2
-rw-r--r--testing/perl-color-ansi-util/APKBUILD38
-rw-r--r--testing/perl-color-rgb-util/APKBUILD39
-rw-r--r--testing/perl-conf-libconfig/APKBUILD8
-rw-r--r--testing/perl-config-ini-reader-ordered/APKBUILD37
-rw-r--r--testing/perl-config-ini/APKBUILD37
-rw-r--r--testing/perl-constant-defer/APKBUILD15
-rw-r--r--testing/perl-constant-generate/APKBUILD15
-rw-r--r--testing/perl-context-preserve/APKBUILD2
-rw-r--r--testing/perl-cpan-changes/APKBUILD41
-rw-r--r--testing/perl-crypt-argon2/APKBUILD36
-rw-r--r--testing/perl-crypt-bcrypt/APKBUILD37
-rw-r--r--testing/perl-crypt-random-seed/APKBUILD38
-rw-r--r--testing/perl-crypt-saltedhash/APKBUILD2
-rw-r--r--testing/perl-crypt-urandom/APKBUILD39
-rw-r--r--testing/perl-css-object/APKBUILD38
-rw-r--r--testing/perl-curry/APKBUILD38
-rw-r--r--testing/perl-daemon-control/APKBUILD2
-rw-r--r--testing/perl-dancer-plugin-auth-extensible/APKBUILD7
-rw-r--r--testing/perl-dancer-plugin-dbic/APKBUILD8
-rw-r--r--testing/perl-dancer-plugin-passphrase/APKBUILD8
-rw-r--r--testing/perl-dancer-session-cookie/APKBUILD4
-rw-r--r--testing/perl-data-dumper-concise/APKBUILD2
-rw-r--r--testing/perl-data-printer/APKBUILD34
-rw-r--r--testing/perl-data-validate-domain/APKBUILD39
-rw-r--r--testing/perl-data-validate-ip/APKBUILD8
-rw-r--r--testing/perl-database-async-engine-postgresql/APKBUILD57
-rw-r--r--testing/perl-database-async/APKBUILD53
-rw-r--r--testing/perl-datetime-format-atom/APKBUILD39
-rw-r--r--testing/perl-datetime-format-flexible/APKBUILD42
-rw-r--r--testing/perl-datetime-format-rfc3339/APKBUILD39
-rw-r--r--testing/perl-datetime-format-sqlite/APKBUILD39
-rw-r--r--testing/perl-datetime-timezone-alias/APKBUILD44
-rw-r--r--testing/perl-datetime-timezone-catalog-extend/APKBUILD39
-rw-r--r--testing/perl-dbicx-sugar/APKBUILD2
-rw-r--r--testing/perl-dbix-class-candy/APKBUILD2
-rw-r--r--testing/perl-dbix-class-helpers/APKBUILD2
-rw-r--r--testing/perl-dbix-class/APKBUILD60
-rw-r--r--testing/perl-dbix-datasource/APKBUILD2
-rw-r--r--testing/perl-dbix-introspector/APKBUILD2
-rw-r--r--testing/perl-devel-caller/APKBUILD37
-rw-r--r--testing/perl-devel-confess/APKBUILD39
-rw-r--r--testing/perl-devel-leak/APKBUILD2
-rw-r--r--testing/perl-devel-lexalias/APKBUILD37
-rw-r--r--testing/perl-devel-refcount/APKBUILD38
-rw-r--r--testing/perl-digest-bcrypt/APKBUILD10
-rw-r--r--testing/perl-digest-crc/APKBUILD39
-rw-r--r--testing/perl-dns-unbound/APKBUILD108
-rw-r--r--testing/perl-email-abstract/APKBUILD6
-rw-r--r--testing/perl-email-mime-attachment-stripper/APKBUILD16
-rw-r--r--testing/perl-email-reply/APKBUILD15
-rw-r--r--testing/perl-ev-hiredis/APKBUILD61
-rw-r--r--testing/perl-ev-hiredis/use-system-hiredis.patch21
-rw-r--r--testing/perl-ev/APKBUILD37
-rw-r--r--testing/perl-extutils-makemaker/APKBUILD15
-rw-r--r--testing/perl-extutils-xsbuilder/APKBUILD14
-rw-r--r--testing/perl-feed-find/APKBUILD39
-rw-r--r--testing/perl-ffi-c/APKBUILD44
-rw-r--r--testing/perl-ffi-platypus-type-enum/APKBUILD39
-rw-r--r--testing/perl-ffi-platypus/APKBUILD48
-rw-r--r--testing/perl-file-desktopentry/APKBUILD41
-rw-r--r--testing/perl-file-homedir/APKBUILD34
-rw-r--r--testing/perl-file-mimeinfo/APKBUILD43
-rw-r--r--testing/perl-file-mmagic-xs/APKBUILD7
-rw-r--r--testing/perl-file-mmagic-xs/format-security.patch13
-rw-r--r--testing/perl-file-rename/APKBUILD14
-rw-r--r--testing/perl-freezethaw/APKBUILD2
-rw-r--r--testing/perl-future-asyncawait/APKBUILD37
-rw-r--r--testing/perl-future-http/APKBUILD42
-rw-r--r--testing/perl-future-q/APKBUILD41
-rw-r--r--testing/perl-future-queue/APKBUILD38
-rw-r--r--testing/perl-gearman/APKBUILD45
-rw-r--r--testing/perl-getopt-long-descriptive/APKBUILD6
-rw-r--r--testing/perl-getopt-tabular/APKBUILD16
-rw-r--r--testing/perl-git-raw/APKBUILD56
-rw-r--r--testing/perl-git-raw/libgit2-1.7.1-tests.patch47
-rw-r--r--testing/perl-git-raw/libgit2-riscv64-tests.patch19
-rw-r--r--testing/perl-git-raw/libgit2-shared.mk.pl213
-rw-r--r--testing/perl-git-raw/libgit2-version-tests.patch64
-rw-r--r--testing/perl-git-repository/APKBUILD54
-rw-r--r--testing/perl-git-repository/git-2.38.1-tests.patch33
-rw-r--r--testing/perl-git-repository/git-2.40.0-tests.patch24
-rw-r--r--testing/perl-git-version-compare/APKBUILD39
-rw-r--r--testing/perl-glib-ex-objectbits/APKBUILD17
-rw-r--r--testing/perl-glib-object-introspection/APKBUILD10
-rw-r--r--testing/perl-graphql-client/APKBUILD53
-rw-r--r--testing/perl-gtk2-ex-listmodelconcat/APKBUILD24
-rw-r--r--testing/perl-gtk2-ex-widgetbits/APKBUILD24
-rw-r--r--testing/perl-gtk2/APKBUILD2
-rw-r--r--testing/perl-gtk3/APKBUILD4
-rw-r--r--testing/perl-guard/APKBUILD37
-rw-r--r--testing/perl-hash-merge/APKBUILD4
-rw-r--r--testing/perl-hash-ordered/APKBUILD46
-rw-r--r--testing/perl-hook-lexwrap/APKBUILD37
-rw-r--r--testing/perl-html-object/APKBUILD51
-rw-r--r--testing/perl-html-selector-xpath/APKBUILD39
-rw-r--r--testing/perl-html-tableextract/APKBUILD6
-rw-r--r--testing/perl-http-thin/APKBUILD41
-rw-r--r--testing/perl-http-xsheaders/APKBUILD42
-rw-r--r--testing/perl-i18n-langinfo-wide/APKBUILD24
-rw-r--r--testing/perl-indirect/APKBUILD39
-rw-r--r--testing/perl-io-async-resolver-dns/APKBUILD37
-rw-r--r--testing/perl-io-lambda/APKBUILD38
-rw-r--r--testing/perl-io-sessiondata/APKBUILD2
-rw-r--r--testing/perl-io-socket-timeout/APKBUILD34
-rw-r--r--testing/perl-json-any/APKBUILD47
-rw-r--r--testing/perl-json-maybeutf8/APKBUILD39
-rw-r--r--testing/perl-json-path/APKBUILD45
-rw-r--r--testing/perl-json-path/no-tie-ixhash.patch36
-rw-r--r--testing/perl-json-validator/APKBUILD51
-rw-r--r--testing/perl-libapreq2/APKBUILD8
-rw-r--r--testing/perl-libintl-perl/APKBUILD28
-rw-r--r--testing/perl-lingua-en-inflect/APKBUILD34
-rw-r--r--testing/perl-linux-pid/APKBUILD6
-rw-r--r--testing/perl-list-binarysearch-xs/APKBUILD39
-rw-r--r--testing/perl-list-binarysearch/APKBUILD42
-rw-r--r--testing/perl-list-binarysearch/documentation.patch24
-rw-r--r--testing/perl-lockfile-simple/APKBUILD39
-rw-r--r--testing/perl-log-fu/APKBUILD24
-rw-r--r--testing/perl-log-message-simple/APKBUILD2
-rw-r--r--testing/perl-log-message/APKBUILD2
-rw-r--r--testing/perl-lv/APKBUILD59
-rw-r--r--testing/perl-lwp-online/APKBUILD38
-rw-r--r--testing/perl-lwp-useragent-cached/APKBUILD2
-rw-r--r--testing/perl-mastodon-client/APKBUILD45
-rw-r--r--testing/perl-math-int64/APKBUILD4
-rw-r--r--testing/perl-math-libm/APKBUILD29
-rw-r--r--testing/perl-math-random-isaac-xs/APKBUILD2
-rw-r--r--testing/perl-mce/APKBUILD8
-rw-r--r--testing/perl-memory-process/APKBUILD36
-rw-r--r--testing/perl-memory-usage/APKBUILD35
-rw-r--r--testing/perl-minion-backend-redis/APKBUILD53
-rw-r--r--testing/perl-minion-backend-sqlite/APKBUILD37
-rw-r--r--testing/perl-minion/APKBUILD54
-rw-r--r--testing/perl-mixin-event-dispatch/APKBUILD47
-rw-r--r--testing/perl-mixin-linewise/APKBUILD37
-rw-r--r--testing/perl-module-build-prereqs-fromcpanfile/APKBUILD36
-rw-r--r--testing/perl-module-find/APKBUILD37
-rw-r--r--testing/perl-module-generic/APKBUILD56
-rw-r--r--testing/perl-module-generic/skip-broken-tests.patch40
-rw-r--r--testing/perl-mojo-pg/APKBUILD38
-rw-r--r--testing/perl-mojo-reactor-ioasync/APKBUILD37
-rw-r--r--testing/perl-mojo-redis/APKBUILD63
-rw-r--r--testing/perl-mojo-sqlite/APKBUILD40
-rw-r--r--testing/perl-mojolicious-plugin-openapi/APKBUILD46
-rw-r--r--testing/perl-musicbrainz-discid/APKBUILD30
-rw-r--r--testing/perl-net-address-ip-local/APKBUILD37
-rw-r--r--testing/perl-net-amqp-rabbitmq/APKBUILD6
-rw-r--r--testing/perl-net-async-redis-xs/APKBUILD64
-rw-r--r--testing/perl-net-async-redis/APKBUILD77
-rw-r--r--testing/perl-net-async-xmpp/APKBUILD50
-rw-r--r--testing/perl-net-curl-promiser/APKBUILD75
-rw-r--r--testing/perl-net-curl/APKBUILD21
-rw-r--r--testing/perl-net-idn-encode/APKBUILD48
-rw-r--r--testing/perl-net-idn-encode/perl-5.38-compat.patch38
-rw-r--r--testing/perl-net-irr/APKBUILD33
-rw-r--r--testing/perl-net-jabber-bot/APKBUILD42
-rw-r--r--testing/perl-net-jabber/APKBUILD50
-rw-r--r--testing/perl-net-jabber/builtin-digest-sha.patch42
-rw-r--r--testing/perl-net-jabber/hash-randomization.patch13
-rw-r--r--testing/perl-net-libresolv/APKBUILD36
-rw-r--r--testing/perl-net-mpd/APKBUILD37
-rw-r--r--testing/perl-net-mqtt-simple/APKBUILD46
-rw-r--r--testing/perl-net-mqtt/APKBUILD53
-rw-r--r--testing/perl-net-netmask/APKBUILD11
-rw-r--r--testing/perl-net-patricia/APKBUILD28
-rw-r--r--testing/perl-net-pcap/APKBUILD39
-rw-r--r--testing/perl-net-xmpp/APKBUILD43
-rw-r--r--testing/perl-net-xmpp/loop-var.patch26
-rw-r--r--testing/perl-net-xmpp/no-gtalk.patch11
-rw-r--r--testing/perl-netaddr-mac/APKBUILD36
-rw-r--r--testing/perl-nice-try/APKBUILD39
-rw-r--r--testing/perl-number-format/APKBUILD14
-rw-r--r--testing/perl-number-misc/APKBUILD32
-rw-r--r--testing/perl-number-tolerant/APKBUILD8
-rw-r--r--testing/perl-object-event/APKBUILD36
-rw-r--r--testing/perl-object-pad/APKBUILD37
-rw-r--r--testing/perl-openapi-client/APKBUILD38
-rw-r--r--testing/perl-opentracing/APKBUILD55
-rw-r--r--testing/perl-pango/APKBUILD29
-rw-r--r--testing/perl-path-iter/APKBUILD11
-rw-r--r--testing/perl-perlio-locale/APKBUILD29
-rw-r--r--testing/perl-perlio-via-timeout/APKBUILD33
-rw-r--r--testing/perl-plack-middleware-expires/APKBUILD2
-rw-r--r--testing/perl-plack-middleware-reverseproxy/APKBUILD2
-rw-r--r--testing/perl-pod-cpandoc/APKBUILD24
-rw-r--r--testing/perl-pod-tidy/APKBUILD37
-rw-r--r--testing/perl-ppi-xs/APKBUILD39
-rw-r--r--testing/perl-proc-guard/APKBUILD30
-rw-r--r--testing/perl-promise-es6/APKBUILD85
-rw-r--r--testing/perl-promise-me/APKBUILD42
-rw-r--r--testing/perl-promise-xs/APKBUILD43
-rw-r--r--testing/perl-protocol-database-postgresql/APKBUILD53
-rw-r--r--testing/perl-protocol-redis-faster/APKBUILD38
-rw-r--r--testing/perl-protocol-redis/APKBUILD42
-rw-r--r--testing/perl-protocol-xmpp/APKBUILD49
-rw-r--r--testing/perl-redis/APKBUILD35
-rw-r--r--testing/perl-ref-util-xs/APKBUILD4
-rw-r--r--testing/perl-regexp-grammars/APKBUILD38
-rw-r--r--testing/perl-reply/APKBUILD51
-rw-r--r--testing/perl-role-eventemitter/APKBUILD39
-rw-r--r--testing/perl-rxperl-anyevent/APKBUILD45
-rw-r--r--testing/perl-rxperl-ioasync/APKBUILD45
-rw-r--r--testing/perl-rxperl-mojo/APKBUILD45
-rw-r--r--testing/perl-rxperl/APKBUILD45
-rw-r--r--testing/perl-ryu-async/APKBUILD54
-rw-r--r--testing/perl-ryu/APKBUILD58
-rw-r--r--testing/perl-scalar-readonly/APKBUILD39
-rw-r--r--testing/perl-sentinel/APKBUILD38
-rw-r--r--testing/perl-session-storage-secure/APKBUILD4
-rw-r--r--testing/perl-snmp-info/APKBUILD15
-rw-r--r--testing/perl-snmp/APKBUILD2
-rw-r--r--testing/perl-soap-lite/APKBUILD2
-rw-r--r--testing/perl-sort-naturally/APKBUILD2
-rw-r--r--testing/perl-sort-versions/APKBUILD38
-rw-r--r--testing/perl-sql-abstract-classic/APKBUILD2
-rw-r--r--testing/perl-sql-abstract-pg/APKBUILD38
-rw-r--r--testing/perl-sql-abstract/APKBUILD2
-rw-r--r--testing/perl-starman/APKBUILD8
-rw-r--r--testing/perl-statistics-descriptive/APKBUILD7
-rw-r--r--testing/perl-storable-improved/APKBUILD39
-rw-r--r--testing/perl-string-camelcase/APKBUILD2
-rw-r--r--testing/perl-string-compare-constanttime/APKBUILD2
-rw-r--r--testing/perl-string-crc32/APKBUILD3
-rw-r--r--testing/perl-string-random/APKBUILD25
-rw-r--r--testing/perl-string-util/APKBUILD33
-rw-r--r--testing/perl-syntax-keyword-defer/APKBUILD36
-rw-r--r--testing/perl-syntax-keyword-match/APKBUILD37
-rw-r--r--testing/perl-syntax-keyword-try/APKBUILD36
-rw-r--r--testing/perl-sys-syscall/0001-restore-missing-changes-from-0.20.0.22.patch125
-rw-r--r--testing/perl-sys-syscall/APKBUILD43
-rw-r--r--testing/perl-sys-syscall/aarch64.patch72
-rw-r--r--testing/perl-sys-syscall/ppc64le.patch31
-rw-r--r--testing/perl-sys-syscall/ppc64le_epoll.patch11
-rw-r--r--testing/perl-sys-syscall/s390x.patch34
-rw-r--r--testing/perl-sys-virt/APKBUILD39
-rw-r--r--testing/perl-system-command/APKBUILD39
-rw-r--r--testing/perl-template-plugin-csv/APKBUILD2
-rw-r--r--testing/perl-template-plugin-number-format/APKBUILD30
-rw-r--r--testing/perl-term-readline-gnu/APKBUILD36
-rw-r--r--testing/perl-term-size/APKBUILD3
-rw-r--r--testing/perl-term-ui/APKBUILD2
-rw-r--r--testing/perl-test-api/APKBUILD2
-rw-r--r--testing/perl-test-checkdeps/APKBUILD36
-rw-r--r--testing/perl-test-class-most/APKBUILD36
-rw-r--r--testing/perl-test-class-tiny/APKBUILD39
-rw-r--r--testing/perl-test-describeme/APKBUILD38
-rw-r--r--testing/perl-test-distribution/APKBUILD2
-rw-r--r--testing/perl-test-expander/APKBUILD55
-rw-r--r--testing/perl-test-file/APKBUILD18
-rw-r--r--testing/perl-test-files/APKBUILD57
-rw-r--r--testing/perl-test-lwp-useragent/APKBUILD46
-rw-r--r--testing/perl-test-memorygrowth/APKBUILD37
-rw-r--r--testing/perl-test-modern/APKBUILD2
-rw-r--r--testing/perl-test-randomresult/APKBUILD38
-rw-r--r--testing/perl-test-redisserver/APKBUILD38
-rw-r--r--testing/perl-test-requires-git/APKBUILD38
-rw-r--r--testing/perl-test-roo/APKBUILD2
-rw-r--r--testing/perl-test-settings/APKBUILD38
-rw-r--r--testing/perl-test-timer/APKBUILD28
-rw-r--r--testing/perl-test-toolbox/APKBUILD24
-rw-r--r--testing/perl-test-trap/APKBUILD6
-rw-r--r--testing/perl-test-unit/20_fix-defined-array-warnings.patch20
-rw-r--r--testing/perl-test-unit/30_fix-xism-test-suite-failures.patch29
-rw-r--r--testing/perl-test-unit/40_make-deep-test-less-fragile.patch23
-rw-r--r--testing/perl-test-unit/APKBUILD41
-rw-r--r--testing/perl-test-unit/testcase.patch11
-rw-r--r--testing/perl-test-useallmodules/APKBUILD2
-rw-r--r--testing/perl-test-utf8/APKBUILD8
-rw-r--r--testing/perl-test2-tools-explain/APKBUILD38
-rw-r--r--testing/perl-text-brew/APKBUILD2
-rw-r--r--testing/perl-text-markdown-hoedown/APKBUILD36
-rw-r--r--testing/perl-text-table-any/APKBUILD39
-rw-r--r--testing/perl-text-table-sprintf/APKBUILD38
-rw-r--r--testing/perl-throwable/APKBUILD6
-rw-r--r--testing/perl-tickit-widget-choice/APKBUILD37
-rw-r--r--testing/perl-tickit-widget-entry-plugin-completion/APKBUILD37
-rw-r--r--testing/perl-tickit-widget-floatbox/APKBUILD38
-rw-r--r--testing/perl-tickit-widget-menu/APKBUILD37
-rw-r--r--testing/perl-tickit-widget-scrollbox/APKBUILD38
-rw-r--r--testing/perl-tie-ixhash/APKBUILD37
-rw-r--r--testing/perl-time-timegm/APKBUILD2
-rw-r--r--testing/perl-types-path-tiny/APKBUILD39
-rw-r--r--testing/perl-unicode-utf8/080_super.t-32bit.patch34
-rw-r--r--testing/perl-unicode-utf8/APKBUILD40
-rw-r--r--testing/perl-uri-db/APKBUILD37
-rw-r--r--testing/perl-uri-encode-xs/APKBUILD37
-rw-r--r--testing/perl-uri-fetch/APKBUILD39
-rw-r--r--testing/perl-uri-nested/APKBUILD37
-rw-r--r--testing/perl-uri-redis/APKBUILD39
-rw-r--r--testing/perl-uri-tcp/APKBUILD37
-rw-r--r--testing/perl-url-encode/APKBUILD2
-rw-r--r--testing/perl-variable-disposition/APKBUILD46
-rw-r--r--testing/perl-x-tiny/APKBUILD39
-rw-r--r--testing/perl-xml-atom/APKBUILD42
-rw-r--r--testing/perl-xml-bare/APKBUILD31
-rw-r--r--testing/perl-xml-feed/APKBUILD45
-rw-r--r--testing/perl-xml-libxml-sax-chunkparser/APKBUILD40
-rw-r--r--testing/perl-xml-libxml-sax-chunkparser/fix-tests.patch52
-rw-r--r--testing/perl-xml-rpc/APKBUILD2
-rw-r--r--testing/perl-xml-stream/APKBUILD39
-rw-r--r--testing/perl-xml-stream/improvements.patch34
-rw-r--r--testing/perl-xs-parse-keyword/APKBUILD36
-rw-r--r--testing/perl-xs-parse-sublike/APKBUILD37
-rw-r--r--testing/persistent-cache-cpp/0001-src-core-Add-library-versioning.patch74
-rw-r--r--testing/persistent-cache-cpp/APKBUILD55
-rw-r--r--testing/persistent-cache-cpp/remove-docs-html-from-makefile.patch22
-rw-r--r--testing/pest-language-server/APKBUILD38
-rw-r--r--testing/pest-language-server/use-openssl.patch531
-rw-r--r--testing/pfetch/APKBUILD4
-rw-r--r--testing/pfqueue/APKBUILD4
-rw-r--r--testing/pg_activity/APKBUILD28
-rw-r--r--testing/phonon-backend-vlc/APKBUILD56
-rw-r--r--testing/phoronix-test-suite/APKBUILD24
-rw-r--r--testing/phoronix-test-suite/appdata.patch22
-rw-r--r--testing/phoronix-test-suite/php-discovery.patch14
-rw-r--r--testing/php7-brotli/APKBUILD37
-rw-r--r--testing/php7-diseval/APKBUILD32
-rw-r--r--testing/php7-gearman/APKBUILD38
-rw-r--r--testing/php7-libvirt-php/APKBUILD42
-rw-r--r--testing/php7-libvirt-php/musl-fixes.patch16
-rw-r--r--testing/php7-libvirt-php/musl-idn.patch11
-rw-r--r--testing/php7-libvirt-php/offline-tests.patch30
-rw-r--r--testing/php7-pdlib/APKBUILD43
-rw-r--r--testing/php7-pecl-amqp/APKBUILD38
-rw-r--r--testing/php7-pecl-apcu/APKBUILD44
-rw-r--r--testing/php7-pecl-ast/APKBUILD38
-rw-r--r--testing/php7-pecl-couchbase/APKBUILD46
-rw-r--r--testing/php7-pecl-couchbase/cmake-build-type.patch11
-rw-r--r--testing/php7-pecl-couchbase/cmake-fix-cache.patch11
-rw-r--r--testing/php7-pecl-decimal/APKBUILD47
-rw-r--r--testing/php7-pecl-decimal/fix-build.patch61
-rw-r--r--testing/php7-pecl-decimal/fix-test.patch49
-rw-r--r--testing/php7-pecl-decimal/fix-tests.patch138
-rw-r--r--testing/php7-pecl-event/APKBUILD42
-rw-r--r--testing/php7-pecl-gmagick/APKBUILD46
-rw-r--r--testing/php7-pecl-grpc/APKBUILD35
-rw-r--r--testing/php7-pecl-igbinary/APKBUILD49
-rw-r--r--testing/php7-pecl-imagick/APKBUILD45
-rw-r--r--testing/php7-pecl-inotify/APKBUILD35
-rw-r--r--testing/php7-pecl-jsmin/APKBUILD44
-rw-r--r--testing/php7-pecl-lzf/APKBUILD37
-rw-r--r--testing/php7-pecl-mailparse/APKBUILD40
-rw-r--r--testing/php7-pecl-maxminddb/APKBUILD39
-rw-r--r--testing/php7-pecl-mcrypt/APKBUILD37
-rw-r--r--testing/php7-pecl-memcache/APKBUILD34
-rw-r--r--testing/php7-pecl-memcached/APKBUILD44
-rw-r--r--testing/php7-pecl-mongodb/APKBUILD40
-rw-r--r--testing/php7-pecl-msgpack/APKBUILD45
-rw-r--r--testing/php7-pecl-mustache/APKBUILD39
-rw-r--r--testing/php7-pecl-oauth/APKBUILD44
-rw-r--r--testing/php7-pecl-oauth/pcre.patch13
-rw-r--r--testing/php7-pecl-pcov/APKBUILD38
-rw-r--r--testing/php7-pecl-protobuf/APKBUILD38
-rw-r--r--testing/php7-pecl-psr/APKBUILD36
-rw-r--r--testing/php7-pecl-rdkafka/APKBUILD38
-rw-r--r--testing/php7-pecl-redis/APKBUILD44
-rw-r--r--testing/php7-pecl-rrd/APKBUILD37
-rw-r--r--testing/php7-pecl-seaslog/APKBUILD39
-rw-r--r--testing/php7-pecl-simple-kafka-client/APKBUILD37
-rw-r--r--testing/php7-pecl-smbclient/APKBUILD35
-rw-r--r--testing/php7-pecl-solr/APKBUILD42
-rw-r--r--testing/php7-pecl-solr/fix-tests.patch11
-rw-r--r--testing/php7-pecl-ssh2/APKBUILD37
-rw-r--r--testing/php7-pecl-stats/APKBUILD43
-rw-r--r--testing/php7-pecl-swoole/APKBUILD52
-rw-r--r--testing/php7-pecl-timezonedb/APKBUILD38
-rw-r--r--testing/php7-pecl-uploadprogress/APKBUILD45
-rw-r--r--testing/php7-pecl-uuid/APKBUILD35
-rw-r--r--testing/php7-pecl-varnish/APKBUILD36
-rw-r--r--testing/php7-pecl-vips/APKBUILD35
-rw-r--r--testing/php7-pecl-xdebug/APKBUILD49
-rw-r--r--testing/php7-pecl-xhprof/APKBUILD56
-rw-r--r--testing/php7-pecl-xlswriter/APKBUILD38
-rw-r--r--testing/php7-pecl-yaml/APKBUILD39
-rw-r--r--testing/php7-pecl-zmq/APKBUILD40
-rw-r--r--testing/php7-pecl-zmq/fix-php-7.3-compile.patch266
-rw-r--r--testing/php7-pecl-zmq/fix-php-7.4-compile.patch261
-rw-r--r--testing/php7-pecl-zstd/APKBUILD41
-rw-r--r--testing/php7-phalcon/APKBUILD44
-rw-r--r--testing/php7-snappy/APKBUILD41
-rw-r--r--testing/php7-snuffleupagus/APKBUILD45
-rw-r--r--testing/php7-spx/APKBUILD33
-rw-r--r--testing/php7-tideways_xhprof/APKBUILD34
-rw-r--r--testing/php7/APKBUILD704
-rw-r--r--testing/php7/atomic-lsapi.patch82
-rw-r--r--testing/php7/disabled-tests.list219
-rw-r--r--testing/php7/enchant-2.patch76
-rw-r--r--testing/php7/fix-curl-7.83-test.patch25
-rw-r--r--testing/php7/php7-fpm-version-suffix.patch79
-rw-r--r--testing/php7/php7-fpm.initd93
-rw-r--r--testing/php7/php7-fpm.logrotate13
-rw-r--r--testing/php7/php7-module.conf13
-rw-r--r--testing/php7/sharedir.patch11
-rw-r--r--testing/php7/xfail-openssl-1.1-test.patch13
-rw-r--r--testing/php8-pdlib/APKBUILD45
-rw-r--r--testing/php8-pecl-csv/APKBUILD34
-rw-r--r--testing/php8-pecl-datadog_trace/APKBUILD45
-rw-r--r--testing/php8-pecl-datadog_trace/fix-cgi-test.patch11
-rw-r--r--testing/php8-pecl-decimal/APKBUILD32
-rw-r--r--testing/php8-pecl-ev/APKBUILD44
-rw-r--r--testing/php8-pecl-gearman/APKBUILD43
-rw-r--r--testing/php8-pecl-gmagick/APKBUILD44
-rw-r--r--testing/php8-pecl-grpc/APKBUILD35
-rw-r--r--testing/php8-pecl-inotify/APKBUILD33
-rw-r--r--testing/php8-pecl-jsmin/APKBUILD46
-rw-r--r--testing/php8-pecl-memprof/APKBUILD39
-rw-r--r--testing/php8-pecl-mustache/APKBUILD38
-rw-r--r--testing/php8-pecl-pcov/APKBUILD38
-rw-r--r--testing/php8-pecl-rrd/APKBUILD36
-rw-r--r--testing/php8-pecl-runkit7/APKBUILD35
-rw-r--r--testing/php8-pecl-seaslog/APKBUILD37
-rw-r--r--testing/php8-pecl-simple-kafka-client/APKBUILD35
-rw-r--r--testing/php8-pecl-smbclient/APKBUILD35
-rw-r--r--testing/php8-pecl-solr/APKBUILD37
-rw-r--r--testing/php8-pecl-solr/fix-tests.patch11
-rw-r--r--testing/php8-pecl-stats/APKBUILD41
-rw-r--r--testing/php8-pecl-varnish/APKBUILD36
-rw-r--r--testing/php8-pecl-xlswriter/APKBUILD38
-rw-r--r--testing/php8-pecl-xmlrpc/APKBUILD39
-rw-r--r--testing/php8-pecl-zmq/APKBUILD38
-rw-r--r--testing/php8-phalcon/APKBUILD47
-rw-r--r--testing/php8-snappy/APKBUILD41
-rw-r--r--testing/php8-spx/APKBUILD33
-rw-r--r--testing/php81-pecl-amqp/APKBUILD40
-rw-r--r--testing/php81-pecl-apcu/APKBUILD49
-rw-r--r--testing/php81-pecl-ast/APKBUILD38
-rw-r--r--testing/php81-pecl-brotli/APKBUILD50
-rw-r--r--testing/php81-pecl-couchbase/APKBUILD39
-rw-r--r--testing/php81-pecl-csv/APKBUILD36
-rw-r--r--testing/php81-pecl-decimal/APKBUILD24
-rw-r--r--testing/php81-pecl-decimal/fix-test.patch11
-rw-r--r--testing/php81-pecl-ds/APKBUILD52
-rw-r--r--testing/php81-pecl-event/APKBUILD43
-rw-r--r--testing/php81-pecl-grpc/APKBUILD18
-rw-r--r--testing/php81-pecl-igbinary/APKBUILD49
-rw-r--r--testing/php81-pecl-imagick/APKBUILD48
-rw-r--r--testing/php81-pecl-immutable_cache/APKBUILD39
-rw-r--r--testing/php81-pecl-jsmin/APKBUILD51
-rw-r--r--testing/php81-pecl-jsmin/fix-php8.patch (renamed from testing/php8-pecl-jsmin/fix-php8.patch)0
-rw-r--r--testing/php81-pecl-jsmin/fix-tests.patch (renamed from testing/php7-pecl-jsmin/fix-tests.patch)0
-rw-r--r--testing/php81-pecl-luasandbox/APKBUILD41
-rw-r--r--testing/php81-pecl-lzf/APKBUILD36
-rw-r--r--testing/php81-pecl-mailparse/APKBUILD38
-rw-r--r--testing/php81-pecl-maxminddb/APKBUILD38
-rw-r--r--testing/php81-pecl-mcrypt/APKBUILD8
-rw-r--r--testing/php81-pecl-memcache/APKBUILD39
-rw-r--r--testing/php81-pecl-memcached/APKBUILD48
-rw-r--r--testing/php81-pecl-mongodb/APKBUILD40
-rw-r--r--testing/php81-pecl-msgpack/APKBUILD50
-rw-r--r--testing/php81-pecl-opentelemetry/APKBUILD38
-rw-r--r--testing/php81-pecl-protobuf/APKBUILD38
-rw-r--r--testing/php81-pecl-psr/APKBUILD34
-rw-r--r--testing/php81-pecl-rdkafka/APKBUILD38
-rw-r--r--testing/php81-pecl-redis/APKBUILD49
-rw-r--r--testing/php81-pecl-smbclient/APKBUILD22
-rw-r--r--testing/php81-pecl-ssh2/APKBUILD41
-rw-r--r--testing/php81-pecl-swoole/APKBUILD63
-rw-r--r--testing/php81-pecl-timezonedb/APKBUILD18
-rw-r--r--testing/php81-pecl-uploadprogress/APKBUILD47
-rw-r--r--testing/php81-pecl-uuid/APKBUILD35
-rw-r--r--testing/php81-pecl-vips/APKBUILD36
-rw-r--r--testing/php81-pecl-xdebug/APKBUILD53
-rw-r--r--testing/php81-pecl-xhprof/APKBUILD62
-rw-r--r--testing/php81-pecl-xlswriter/APKBUILD6
-rw-r--r--testing/php81-pecl-xmlrpc/APKBUILD2
-rw-r--r--testing/php81-pecl-yaml/APKBUILD40
-rw-r--r--testing/php81-pecl-zephir_parser/APKBUILD21
-rw-r--r--testing/php81-pecl-zephir_parser/failed-tests.patch33
-rw-r--r--testing/php81-pecl-zstd/APKBUILD39
-rw-r--r--testing/php81-spx/APKBUILD39
-rw-r--r--testing/php81/APKBUILD671
-rw-r--r--testing/php81/disabled-tests.list190
-rw-r--r--testing/php81/disabled-tests.ppc64le.list3
-rw-r--r--testing/php81/disabled-tests.riscv64.list7
-rw-r--r--testing/php81/disabled-tests.s390x.list2
-rw-r--r--testing/php81/disabled-tests.x86.list8
-rw-r--r--testing/php81/fix-curl.patch28
-rw-r--r--testing/php81/fix-icu74.patch13
-rw-r--r--testing/php81/fix-lfs64.patch30
-rw-r--r--testing/php81/fix-libxml-1.patch67
-rw-r--r--testing/php81/fix-libxml-2.patch244
-rw-r--r--testing/php81/fix-s390x-test.patch42
-rw-r--r--testing/php81/fix-tests-devserver.patch (renamed from testing/php7/fix-tests-devserver.patch)4
-rw-r--r--testing/php81/includedir.patch (renamed from testing/php7/includedir.patch)8
-rw-r--r--testing/php81/install-pear.patch (renamed from testing/php7/install-pear.patch)2
-rw-r--r--testing/php81/php81-fpm-version-suffix.patch79
-rw-r--r--testing/php81/php81-fpm.initd93
-rw-r--r--testing/php81/php81-fpm.logrotate13
-rw-r--r--testing/php81/php81-module.conf13
-rw-r--r--testing/php81/sharedir.patch11
-rw-r--r--testing/php82-pdlib/APKBUILD47
-rw-r--r--testing/php82-pecl-apfd/APKBUILD38
-rw-r--r--testing/php82-pecl-excimer/APKBUILD37
-rw-r--r--testing/php82-pecl-immutable_cache/APKBUILD39
-rw-r--r--testing/php82-pecl-jsmin/APKBUILD51
-rw-r--r--testing/php82-pecl-jsmin/fix-php8.patch87
-rw-r--r--testing/php82-pecl-jsmin/fix-tests.patch (renamed from testing/php8-pecl-jsmin/fix-tests.patch)0
-rw-r--r--testing/php82-pecl-oauth/APKBUILD51
-rw-r--r--testing/php82-pecl-oauth/fix-tests.patch85
-rw-r--r--testing/php82-pecl-phalcon/APKBUILD48
-rw-r--r--testing/php82-pecl-runkit7/APKBUILD37
-rw-r--r--testing/php82-pecl-teds/APKBUILD36
-rw-r--r--testing/php82-pecl-vld/APKBUILD37
-rw-r--r--testing/php82-pecl-zephir_parser/APKBUILD37
-rw-r--r--testing/php82-snappy/APKBUILD48
-rw-r--r--testing/php83-pecl-apfd/APKBUILD38
-rw-r--r--testing/php83-pecl-eio/APKBUILD43
-rw-r--r--testing/php83-pecl-excimer/APKBUILD37
-rw-r--r--testing/php83-pecl-jsmin/APKBUILD51
-rw-r--r--testing/php83-pecl-jsmin/fix-php8.patch87
-rw-r--r--testing/php83-pecl-jsmin/fix-tests.patch39
-rw-r--r--testing/php83-pecl-phalcon/APKBUILD48
-rw-r--r--testing/php83-pecl-vld/APKBUILD37
-rw-r--r--testing/php83-pecl-zmq/APKBUILD42
-rw-r--r--testing/phpspy/APKBUILD35
-rw-r--r--testing/phpspy/fix-install.patch14
-rw-r--r--testing/phpspy/libpthread.patch11
-rw-r--r--testing/phpspy/remove-termbox-check.patch16
-rw-r--r--testing/picat/APKBUILD40
-rw-r--r--testing/picat/fix-fileno-usage.patch11
-rw-r--r--testing/pick/APKBUILD29
-rw-r--r--testing/picolibc/APKBUILD74
-rw-r--r--testing/picolisp/APKBUILD68
-rw-r--r--testing/picolisp/fix-shebang-lines.patch32
-rw-r--r--testing/picotts/APKBUILD40
-rw-r--r--testing/pict-rs/APKBUILD48
-rw-r--r--testing/pict-rs/config-file.patch247
-rw-r--r--testing/pict-rs/pict-rs.initd28
-rw-r--r--testing/pict-rs/pict-rs.pre-install11
-rw-r--r--testing/pidif/APKBUILD39
-rw-r--r--testing/pigpio/APKBUILD20
-rw-r--r--testing/pijul/APKBUILD41
-rw-r--r--testing/pike/APKBUILD183
-rw-r--r--testing/piler/0001-utf8_encode_char.patch10
-rw-r--r--testing/piler/0002-manticore-conf.patch17
-rw-r--r--testing/piler/0003-fix_pilerpurge_for_rt_index.patch91
-rw-r--r--testing/piler/APKBUILD114
-rw-r--r--testing/piler/piler-smtp.initd12
-rw-r--r--testing/piler/piler.initd16
-rw-r--r--testing/piler/piler.pre-install6
-rw-r--r--testing/piler/searchd.confd8
-rw-r--r--testing/piler/searchd.initd21
-rw-r--r--testing/pimd-dense/APKBUILD49
-rw-r--r--testing/pimd-dense/pimd-dense.confd1
-rw-r--r--testing/pimd-dense/pimd-dense.initd13
-rw-r--r--testing/pinentry-bemenu/APKBUILD10
-rw-r--r--testing/pinentry-bemenu/meson-ungit.patch12
-rw-r--r--testing/pinephone-compass/APKBUILD33
-rw-r--r--testing/pinephone-compass/correct_udev_rules_path.patch13
-rw-r--r--testing/pingus/00-fix-python-typos.patch19
-rw-r--r--testing/pingus/01-pingus-1.76-boost-1.69.patch382
-rw-r--r--testing/pingus/02-missing-header.patch11
-rw-r--r--testing/pingus/03-pingus-0.7.6-gcc470-udl.patch22
-rw-r--r--testing/pingus/APKBUILD41
-rw-r--r--testing/pingus/pingus.desktop9
-rw-r--r--testing/pipe-viewer/APKBUILD46
-rw-r--r--testing/pipectl/APKBUILD14
-rw-r--r--testing/pipeline/APKBUILD47
-rw-r--r--testing/piper-phonemize/APKBUILD61
-rw-r--r--testing/piper-phonemize/add-pkgconfig-support.patch50
-rw-r--r--testing/piper-phonemize/no-rpath.patch13
-rw-r--r--testing/piper-phonemize/use-system-espeak-ng.patch110
-rw-r--r--testing/piper-phonemize/use-system-onnxruntime.patch36
-rw-r--r--testing/piper-tts/APKBUILD54
-rw-r--r--testing/piper-tts/no-rpath.patch12
-rw-r--r--testing/piper-tts/use-system-libs.patch130
-rw-r--r--testing/pipexec/APKBUILD52
-rw-r--r--testing/pipexec/dont-require-bash.patch67
-rw-r--r--testing/piping-server/APKBUILD14
-rw-r--r--testing/pithos/0001-Do-not-fail-if-locale-attributes-are-not-present.patch33
-rw-r--r--testing/pithos/0001-ui-Make-fit-on-small-mobile-screens.patch383
-rw-r--r--testing/pithos/APKBUILD23
-rw-r--r--testing/pithos/no-optimise.patch10
-rw-r--r--testing/pitivi/APKBUILD47
-rw-r--r--testing/pixi/APKBUILD53
-rw-r--r--testing/pixiewps/APKBUILD6
-rw-r--r--testing/pixz/APKBUILD33
-rw-r--r--testing/planarity/APKBUILD42
-rw-r--r--testing/planner/APKBUILD16
-rw-r--r--testing/platformio-core/APKBUILD37
-rw-r--r--testing/please-build/APKBUILD80
-rw-r--r--testing/please-build/fix-test.patch38
-rw-r--r--testing/please-build/go-1.22.patch564
-rw-r--r--testing/please/APKBUILD7
-rw-r--r--testing/plfit/APKBUILD38
-rw-r--r--testing/plib/APKBUILD8
-rw-r--r--testing/plocate/APKBUILD56
-rw-r--r--testing/plocate/include-statx.patch10
-rw-r--r--testing/plocate/plocate.cron5
-rw-r--r--testing/plocate/plocate.pre-install5
-rw-r--r--testing/plocate/updatedb.conf5
-rw-r--r--testing/plots/APKBUILD43
-rw-r--r--testing/plplot/APKBUILD2
-rw-r--r--testing/plzip/APKBUILD6
-rw-r--r--testing/pmccabe/APKBUILD2
-rw-r--r--testing/pmdk/10-include.patch12
-rw-r--r--testing/pmdk/20-doc.patch33
-rw-r--r--testing/pmdk/30-etc.patch11
-rw-r--r--testing/pmdk/APKBUILD59
-rw-r--r--testing/pnmixer/APKBUILD4
-rw-r--r--testing/pnpm/APKBUILD49
-rw-r--r--testing/podman-compose/APKBUILD25
-rw-r--r--testing/podman-tui/APKBUILD28
-rw-r--r--testing/poke/APKBUILD8
-rw-r--r--testing/pokoy/APKBUILD28
-rw-r--r--testing/pokoy/broken-makefile.patch15
-rw-r--r--testing/policycoreutils/0003-fix-pam-rules.patch34
-rw-r--r--testing/policycoreutils/APKBUILD10
-rw-r--r--testing/polyglot/APKBUILD29
-rw-r--r--testing/polymc/APKBUILD64
-rw-r--r--testing/polyml/APKBUILD46
-rw-r--r--testing/pomo/APKBUILD37
-rw-r--r--testing/pongoos-loader/APKBUILD2
-rw-r--r--testing/popeye/APKBUILD14
-rw-r--r--testing/portsmf/APKBUILD9
-rw-r--r--testing/postgresql-citus/APKBUILD38
-rw-r--r--testing/postgresql-citus/postgresql-citus.post-install10
-rw-r--r--testing/postgresql-hll/APKBUILD34
-rw-r--r--testing/postgresql-login_hook/APKBUILD29
-rw-r--r--testing/postgresql-login_hook/postgresql-login_hook.post-install8
-rw-r--r--testing/postgresql-pg_graphql/APKBUILD71
-rw-r--r--testing/postgresql-pg_graphql/remove-regex.patch66
-rw-r--r--testing/postgresql-pg_later/APKBUILD71
-rw-r--r--testing/postgresql-pg_later/remove-tls.patch646
-rw-r--r--testing/postgresql-pg_partman/APKBUILD58
-rw-r--r--testing/postgresql-pg_partman/fix-python-shebang.patch24
-rw-r--r--testing/postgresql-pg_variables/APKBUILD39
-rw-r--r--testing/postgresql-pgmq/APKBUILD68
-rw-r--r--testing/postgresql-pgmq/bump-pgrx.patch168
-rw-r--r--testing/postprocessd/APKBUILD27
-rw-r--r--testing/pounce/APKBUILD26
-rw-r--r--testing/pounce/calico.confd22
-rw-r--r--testing/pounce/calico.initd21
-rw-r--r--testing/pounce/pounce.confd13
-rw-r--r--testing/pounce/pounce.initd41
-rw-r--r--testing/pounce/pounce.pre-install5
-rw-r--r--testing/powder-toy/APKBUILD27
-rw-r--r--testing/power-profiles-daemon/0001-dbus-no-systemd.patch13
-rw-r--r--testing/power-profiles-daemon/APKBUILD48
-rw-r--r--testing/powerctl/APKBUILD32
-rw-r--r--testing/powerctl/getopts-fs-flags.patch79
-rw-r--r--testing/powerctl/new-hare-strings.patch37
-rw-r--r--testing/powerctl/powerctl.post-install2
-rw-r--r--testing/powermanga/APKBUILD44
-rw-r--r--testing/powerstat/0001-strlcpy-no-static.patch20
-rw-r--r--testing/powerstat/APKBUILD12
-rw-r--r--testing/powersupply/APKBUILD33
-rw-r--r--testing/ppl/APKBUILD57
-rw-r--r--testing/ppl/gcc13.patch12
-rw-r--r--testing/ppsspp/APKBUILD83
-rw-r--r--testing/ppsspp/ppsspp-version.patch11
-rw-r--r--testing/ppsspp/system-zstd.patch43
-rw-r--r--testing/pptpclient/APKBUILD4
-rw-r--r--testing/pqiv/APKBUILD2
-rw-r--r--testing/pre-commit/APKBUILD71
-rw-r--r--testing/pre-commit/fix-importlib-metadata.patch24
-rw-r--r--testing/premake/0001-Change-Test-FindLibrary-to-libc.patch25
-rw-r--r--testing/premake/APKBUILD35
-rw-r--r--testing/prettier/APKBUILD18
-rw-r--r--testing/prettier/timeout.patch11
-rw-r--r--testing/primecount/APKBUILD4
-rw-r--r--testing/primesieve/APKBUILD11
-rw-r--r--testing/prjtrellis-db/APKBUILD66
-rw-r--r--testing/prjtrellis/0001-library-install-path.patch86
-rw-r--r--testing/prjtrellis/APKBUILD41
-rw-r--r--testing/profanity/APKBUILD63
-rw-r--r--testing/progress/APKBUILD25
-rw-r--r--testing/projectm/APKBUILD5
-rw-r--r--testing/projectsandcastle-loader/APKBUILD2
-rw-r--r--testing/prometheus-bind-exporter/APKBUILD50
-rw-r--r--testing/prometheus-bind-exporter/bind-exporter.confd4
-rw-r--r--testing/prometheus-bind-exporter/bind-exporter.initd15
-rw-r--r--testing/prometheus-bind-exporter/prometheus-bind-exporter.pre-install (renamed from testing/blackbox_exporter/blackbox_exporter.pre-install)0
-rw-r--r--testing/prometheus-ceph-exporter/APKBUILD48
-rw-r--r--testing/prometheus-ceph-exporter/ceph-exporter.confd3
-rwxr-xr-xtesting/prometheus-ceph-exporter/ceph-exporter.initd18
-rwxr-xr-xtesting/prometheus-ceph-exporter/prometheus-ceph-exporter.pre-install (renamed from testing/prometheus-json-exporter/prometheus-json-exporter.pre-install)0
l---------testing/prometheus-ceph-exporter/prometheus-ceph-exporter.pre-upgrade1
-rw-r--r--testing/prometheus-json-exporter/0001-disable-go-race-detector.patch16
-rw-r--r--testing/prometheus-json-exporter/APKBUILD42
-rw-r--r--testing/prometheus-json-exporter/json-exporter.confd7
-rwxr-xr-xtesting/prometheus-json-exporter/json-exporter.initd21
l---------testing/prometheus-json-exporter/prometheus-json-exporter.pre-upgrade1
-rw-r--r--testing/prometheus-postgres-exporter/APKBUILD41
-rw-r--r--testing/prometheus-postgres-exporter/disable-go-race-detector.patch16
-rw-r--r--testing/prometheus-postgres-exporter/postgres-exporter.confd7
-rwxr-xr-xtesting/prometheus-postgres-exporter/postgres-exporter.initd21
l---------testing/prometheus-postgres-exporter/prometheus-postgres-exporter.pre-upgrade1
-rw-r--r--testing/prometheus-rethinkdb-exporter/APKBUILD6
-rw-r--r--testing/prometheus-smartctl-exporter/APKBUILD44
-rw-r--r--testing/prometheus-smartctl-exporter/prometheus-smartctl-exporter.pre-install8
-rw-r--r--testing/prometheus-smartctl-exporter/smartctl-exporter.confd10
-rwxr-xr-xtesting/prometheus-smartctl-exporter/smartctl-exporter.initd7
-rw-r--r--testing/prometheus-smokeping-prober/APKBUILD44
-rwxr-xr-xtesting/prometheus-smokeping-prober/prometheus-smokeping-prober.pre-install (renamed from testing/prometheus-postgres-exporter/prometheus-postgres-exporter.pre-install)0
l---------testing/prometheus-smokeping-prober/prometheus-smokeping-prober.pre-upgrade1
-rw-r--r--testing/prometheus-smokeping-prober/smokeping-prober.confd7
-rwxr-xr-xtesting/prometheus-smokeping-prober/smokeping-prober.initd24
-rw-r--r--testing/prometheus-unbound-exporter/APKBUILD14
-rw-r--r--testing/proot/APKBUILD4
-rw-r--r--testing/protoc-gen-go/APKBUILD34
-rw-r--r--testing/protoc-gen-js/APKBUILD30
-rw-r--r--testing/protoconf/APKBUILD37
-rw-r--r--testing/prowlarr/0001-disable-restart.patch20
-rw-r--r--testing/prowlarr/APKBUILD98
-rw-r--r--testing/prowlarr/package_info4
-rw-r--r--testing/prowlarr/prowlarr.confd9
-rw-r--r--testing/prowlarr/prowlarr.initd33
-rw-r--r--testing/prowlarr/prowlarr.pre-install6
-rw-r--r--testing/psi-notify/APKBUILD4
-rw-r--r--testing/psi-plus/APKBUILD59
-rw-r--r--testing/pspp/APKBUILD2
-rw-r--r--testing/ptpd/APKBUILD2
-rw-r--r--testing/ptylie/APKBUILD2
-rw-r--r--testing/pulsar-client-cpp/0001-boost-lib-python-310.patch24
-rw-r--r--testing/pulsar-client-cpp/APKBUILD42
-rw-r--r--testing/pulsar-client-cpp/cxx17.patch13
-rw-r--r--testing/pulsar-client-cpp/no-werror.patch13
-rw-r--r--testing/pulseaudio-modules-bt/APKBUILD56
-rw-r--r--testing/pulseview/APKBUILD25
-rw-r--r--testing/pulumi-watch/APKBUILD35
-rw-r--r--testing/pulumi/10-install1.patch56
-rw-r--r--testing/pulumi/APKBUILD41
-rw-r--r--testing/pure-data/APKBUILD80
-rw-r--r--testing/pure-data/implicit.patch12
-rw-r--r--testing/pure-data/system-portmidi.patch28
-rw-r--r--testing/pw-volume/APKBUILD26
-rw-r--r--testing/pw-volume/update-lockfile.patch180
-rw-r--r--testing/pwauth/APKBUILD2
-rw-r--r--testing/pwru/APKBUILD35
-rw-r--r--testing/pxalarm/APKBUILD19
-rw-r--r--testing/pxmenu/APKBUILD20
-rw-r--r--testing/py-spy/APKBUILD34
-rw-r--r--testing/py2-setuptools/APKBUILD32
-rw-r--r--testing/py3-actdiag/APKBUILD24
-rw-r--r--testing/py3-aesedb/APKBUILD50
-rw-r--r--testing/py3-agithub/APKBUILD5
-rw-r--r--testing/py3-aiodocker/APKBUILD40
-rw-r--r--testing/py3-aiohttp-debugtoolbar/APKBUILD26
-rw-r--r--testing/py3-aiohttp-jinja2/APKBUILD16
-rw-r--r--testing/py3-aiohttp-remotes/APKBUILD54
-rw-r--r--testing/py3-aiohttp-session/APKBUILD11
-rw-r--r--testing/py3-aioopenssl/APKBUILD30
-rw-r--r--testing/py3-aiosasl/APKBUILD30
-rw-r--r--testing/py3-aiosmb/APKBUILD48
-rw-r--r--testing/py3-aiowinreg/APKBUILD48
-rw-r--r--testing/py3-aioxmpp/APKBUILD44
-rw-r--r--testing/py3-ajsonrpc/APKBUILD36
-rw-r--r--testing/py3-ajsonrpc/no-test-install.patch8
-rw-r--r--testing/py3-allfiles/APKBUILD18
-rw-r--r--testing/py3-altgraph/APKBUILD39
-rw-r--r--testing/py3-amqp/APKBUILD31
-rw-r--r--testing/py3-ansi2html/APKBUILD41
-rw-r--r--testing/py3-anyascii/APKBUILD36
-rw-r--r--testing/py3-anyio/APKBUILD37
-rw-r--r--testing/py3-anyjson/APKBUILD35
-rw-r--r--testing/py3-anyjson/python3.patch58
-rw-r--r--testing/py3-apicula/APKBUILD47
-rw-r--r--testing/py3-apsw/APKBUILD36
-rw-r--r--testing/py3-apsw/detect-sqlite-config.patch8
-rw-r--r--testing/py3-arcus/APKBUILD42
-rw-r--r--testing/py3-arcus/cmake-helpers.patch254
-rw-r--r--testing/py3-arcus/cmake.patch32
-rw-r--r--testing/py3-arcus/pyproject.patch20
-rw-r--r--testing/py3-argcomplete/APKBUILD36
-rw-r--r--testing/py3-arpeggio/APKBUILD22
-rw-r--r--testing/py3-asif/APKBUILD11
-rw-r--r--testing/py3-ask/APKBUILD14
-rw-r--r--testing/py3-ast-monitor/APKBUILD39
-rw-r--r--testing/py3-astral/APKBUILD24
-rw-r--r--testing/py3-asyauth/APKBUILD39
-rw-r--r--testing/py3-async-lru/APKBUILD38
-rw-r--r--testing/py3-asyncmock/APKBUILD27
-rw-r--r--testing/py3-asysocks/APKBUILD38
-rw-r--r--testing/py3-audioread/APKBUILD28
-rw-r--r--testing/py3-authres/APKBUILD29
-rw-r--r--testing/py3-avro/APKBUILD30
-rw-r--r--testing/py3-axolotl-curve25519/APKBUILD27
-rw-r--r--testing/py3-axolotl/APKBUILD31
-rw-r--r--testing/py3-babelfish/APKBUILD30
-rw-r--r--testing/py3-banal/APKBUILD27
-rw-r--r--testing/py3-bandwidth-sdk/APKBUILD7
-rw-r--r--testing/py3-banknumber/APKBUILD31
-rw-r--r--testing/py3-barcodenumber/APKBUILD14
-rw-r--r--testing/py3-base58/APKBUILD30
-rw-r--r--testing/py3-batalgorithm/APKBUILD28
-rw-r--r--testing/py3-beartype/APKBUILD44
-rw-r--r--testing/py3-bencode/APKBUILD42
-rw-r--r--testing/py3-bidict/APKBUILD48
-rw-r--r--testing/py3-bidict/no-typing-ext.patch9
-rw-r--r--testing/py3-billiard/APKBUILD36
-rw-r--r--testing/py3-biopython/APKBUILD30
-rw-r--r--testing/py3-bite-parser/APKBUILD43
-rw-r--r--testing/py3-bitstruct/APKBUILD42
-rw-r--r--testing/py3-bleach-allowlist/APKBUILD26
-rw-r--r--testing/py3-blinkstick/0001-python3-env.patch10
-rw-r--r--testing/py3-blinkstick/0002-Changed-dependency-on-pyusb-to-accept-anything-higher-than-1.0.0.patch26
-rw-r--r--testing/py3-blinkstick/85-blinkstick.rules1
-rw-r--r--testing/py3-blinkstick/APKBUILD47
-rw-r--r--testing/py3-blis/APKBUILD48
-rw-r--r--testing/py3-blockchain/APKBUILD5
-rw-r--r--testing/py3-blockdiag/APKBUILD24
-rw-r--r--testing/py3-bookkeeper/APKBUILD7
-rw-r--r--testing/py3-bottle-api/APKBUILD14
-rw-r--r--testing/py3-bottle-pgsql/APKBUILD13
-rw-r--r--testing/py3-bottle-redis/APKBUILD14
-rw-r--r--testing/py3-bottle-renderer/APKBUILD16
-rw-r--r--testing/py3-bottle-request/APKBUILD14
-rw-r--r--testing/py3-bottle-rest/APKBUILD30
-rw-r--r--testing/py3-bottle-session/APKBUILD14
-rw-r--r--testing/py3-bottle-sqlalchemy/APKBUILD16
-rw-r--r--testing/py3-bottle-sqlite/APKBUILD16
-rw-r--r--testing/py3-bottle-websocket/APKBUILD16
-rw-r--r--testing/py3-bottle-werkzeug/APKBUILD16
-rw-r--r--testing/py3-bson/APKBUILD5
-rw-r--r--testing/py3-bump2version/APKBUILD28
-rw-r--r--testing/py3-businesstime/APKBUILD16
-rw-r--r--testing/py3-c3d/APKBUILD30
-rw-r--r--testing/py3-caldav/APKBUILD25
-rw-r--r--testing/py3-case/APKBUILD30
-rw-r--r--testing/py3-cassandra-driver/APKBUILD28
-rw-r--r--testing/py3-catalogue/APKBUILD34
-rw-r--r--testing/py3-catkin-pkg/APKBUILD26
-rw-r--r--testing/py3-cbor2/APKBUILD49
-rw-r--r--testing/py3-cbor2/fix-32bit-tests.patch29
-rw-r--r--testing/py3-cchardet/APKBUILD7
-rw-r--r--testing/py3-cdio/APKBUILD10
-rw-r--r--testing/py3-cdio/assertEquals.patch23
-rw-r--r--testing/py3-cdsapi/APKBUILD32
-rw-r--r--testing/py3-cerberus/APKBUILD33
-rw-r--r--testing/py3-certauth/APKBUILD39
-rw-r--r--testing/py3-cfgv/APKBUILD31
-rw-r--r--testing/py3-chameleon/APKBUILD28
-rw-r--r--testing/py3-ciso8601/APKBUILD22
-rw-r--r--testing/py3-cjkwrap/APKBUILD5
-rw-r--r--testing/py3-class-doc/APKBUILD39
-rw-r--r--testing/py3-class-doc/masonry.patch11
-rw-r--r--testing/py3-click-completion/APKBUILD33
-rw-r--r--testing/py3-click-default-group/APKBUILD40
-rw-r--r--testing/py3-click-log/APKBUILD31
-rw-r--r--testing/py3-click-threading/APKBUILD5
-rw-r--r--testing/py3-clickclick/APKBUILD50
-rw-r--r--testing/py3-clickclick/Remove-unused-six-from-setup_requires-1.patch30
-rw-r--r--testing/py3-clickclick/fix-quoting-style-in-assert.patch25
-rw-r--r--testing/py3-cmd2/APKBUILD28
-rw-r--r--testing/py3-cmd2/remove-setuptools_scm.patch21
-rw-r--r--testing/py3-cobs/APKBUILD11
-rw-r--r--testing/py3-codecov/APKBUILD11
-rw-r--r--testing/py3-codespell/APKBUILD32
-rw-r--r--testing/py3-colander/APKBUILD15
-rw-r--r--testing/py3-colored/APKBUILD28
-rw-r--r--testing/py3-colorthief/APKBUILD34
-rw-r--r--testing/py3-columnize/APKBUILD13
-rw-r--r--testing/py3-compdb/APKBUILD6
-rw-r--r--testing/py3-confluent-kafka/APKBUILD5
-rw-r--r--testing/py3-cookiecutter/APKBUILD53
-rw-r--r--testing/py3-cookies/APKBUILD31
-rw-r--r--testing/py3-coreapi/APKBUILD8
-rw-r--r--testing/py3-crc16/APKBUILD14
-rw-r--r--testing/py3-cro/APKBUILD32
-rw-r--r--testing/py3-cssutils/APKBUILD34
-rw-r--r--testing/py3-cssutils/remove-setuptools_scm.patch18
-rw-r--r--testing/py3-cstruct/APKBUILD32
-rw-r--r--testing/py3-cucumber-tag-expressions/APKBUILD43
-rw-r--r--testing/py3-cvxpy/APKBUILD7
-rw-r--r--testing/py3-cymem/APKBUILD31
-rw-r--r--testing/py3-daemon/APKBUILD7
-rw-r--r--testing/py3-daiquiri/APKBUILD34
-rw-r--r--testing/py3-dataclasses-json/APKBUILD21
-rw-r--r--testing/py3-dataclasses-serialization/APKBUILD61
-rw-r--r--testing/py3-dataclasses-serialization/root.patch15
-rw-r--r--testing/py3-dateparser/APKBUILD68
-rw-r--r--testing/py3-daterangestr/APKBUILD14
-rw-r--r--testing/py3-ddt/APKBUILD35
-rw-r--r--testing/py3-deepdiff/APKBUILD27
-rw-r--r--testing/py3-dep-logic/APKBUILD37
-rw-r--r--testing/py3-dexml/APKBUILD25
-rw-r--r--testing/py3-dexml/py3.patch13
-rw-r--r--testing/py3-dict2xml/APKBUILD27
-rw-r--r--testing/py3-dill/APKBUILD35
-rw-r--r--testing/py3-discid/APKBUILD5
-rw-r--r--testing/py3-discogs-client/APKBUILD13
-rw-r--r--testing/py3-diskcache/APKBUILD9
-rw-r--r--testing/py3-distorm3/APKBUILD5
-rw-r--r--testing/py3-django-auth-ldap/APKBUILD49
-rw-r--r--testing/py3-django-compress-staticfiles/APKBUILD11
-rw-r--r--testing/py3-django-debug-toolbar/APKBUILD19
-rw-r--r--testing/py3-django-js-asset/APKBUILD34
-rw-r--r--testing/py3-django-js-asset/Adapt-the-test-suite-to-changes-in-Django.patch88
-rw-r--r--testing/py3-django-mptt/APKBUILD18
-rw-r--r--testing/py3-django-suit/APKBUILD5
-rw-r--r--testing/py3-django-taggit-serializer/APKBUILD6
-rw-r--r--testing/py3-django-taggit/APKBUILD30
-rw-r--r--testing/py3-django-timezone-field/APKBUILD39
-rw-r--r--testing/py3-dkimpy/APKBUILD32
-rw-r--r--testing/py3-dnslib/APKBUILD26
-rw-r--r--testing/py3-docformatter/APKBUILD56
-rw-r--r--testing/py3-docformatter/fix-tests.patch19
-rw-r--r--testing/py3-docstring-to-markdown/APKBUILD31
-rw-r--r--testing/py3-dogpile.cache/APKBUILD9
-rw-r--r--testing/py3-doit/APKBUILD20
-rw-r--r--testing/py3-dominate/APKBUILD24
-rw-r--r--testing/py3-dotty-dict/APKBUILD13
-rw-r--r--testing/py3-dpath/APKBUILD13
-rw-r--r--testing/py3-drf-yasg/APKBUILD10
-rw-r--r--testing/py3-dt-schema/APKBUILD56
-rw-r--r--testing/py3-dunamai/APKBUILD36
-rw-r--r--testing/py3-duniterpy/APKBUILD48
-rw-r--r--testing/py3-duniterpy/Remove_empty_homepage_field_from_pyproject.patch12
-rw-r--r--testing/py3-duniterpy/Support_py3-libnacl_1.9.0.patch25
-rw-r--r--testing/py3-duviz/APKBUILD27
-rw-r--r--testing/py3-dweepy/APKBUILD14
-rw-r--r--testing/py3-ecos/APKBUILD11
-rw-r--r--testing/py3-editdistance-s/APKBUILD9
-rw-r--r--testing/py3-empy/APKBUILD6
-rw-r--r--testing/py3-enzyme/APKBUILD10
-rw-r--r--testing/py3-eradicate/APKBUILD8
-rw-r--r--testing/py3-euclid3/APKBUILD17
-rw-r--r--testing/py3-eventlet/APKBUILD29
-rw-r--r--testing/py3-eventlet/skip-broken-tests.patch55
-rw-r--r--testing/py3-evohome-client/APKBUILD9
-rw-r--r--testing/py3-ewmh/APKBUILD27
-rw-r--r--testing/py3-fastapi/APKBUILD66
-rw-r--r--testing/py3-fastapi/pytest-markers.patch12
-rw-r--r--testing/py3-fastavro/APKBUILD22
-rw-r--r--testing/py3-fastdiff/APKBUILD5
-rw-r--r--testing/py3-feedgen/APKBUILD42
-rw-r--r--testing/py3-feedgenerator/APKBUILD10
-rw-r--r--testing/py3-ffmpeg/APKBUILD33
-rw-r--r--testing/py3-findpython/APKBUILD37
-rw-r--r--testing/py3-fiona/APKBUILD49
-rw-r--r--testing/py3-fireflyalgorithm/APKBUILD31
-rw-r--r--testing/py3-firmata/APKBUILD14
-rw-r--r--testing/py3-firmata/py311.patch13
-rw-r--r--testing/py3-flake8-blind-except/APKBUILD19
-rw-r--r--testing/py3-flake8-builtins/APKBUILD20
-rw-r--r--testing/py3-flake8-commas/APKBUILD33
-rw-r--r--testing/py3-flake8-copyright/APKBUILD17
-rw-r--r--testing/py3-flake8-debugger/APKBUILD25
-rw-r--r--testing/py3-flake8-import-order/APKBUILD24
-rw-r--r--testing/py3-flake8-isort/APKBUILD30
-rw-r--r--testing/py3-flake8-polyfill/APKBUILD5
-rw-r--r--testing/py3-flake8-print/APKBUILD22
-rw-r--r--testing/py3-flake8-quotes/APKBUILD30
-rw-r--r--testing/py3-flake8-snippets/APKBUILD16
-rw-r--r--testing/py3-flake8-todo/APKBUILD14
-rw-r--r--testing/py3-flask-accept/APKBUILD46
-rw-r--r--testing/py3-flask-admin/APKBUILD20
-rw-r--r--testing/py3-flask-autorouter/APKBUILD27
-rw-r--r--testing/py3-flask-basicauth/APKBUILD16
-rw-r--r--testing/py3-flask-bcrypt/APKBUILD22
-rw-r--r--testing/py3-flask-bootstrap/APKBUILD16
-rw-r--r--testing/py3-flask-cache/APKBUILD16
-rw-r--r--testing/py3-flask-cdn/APKBUILD16
-rw-r--r--testing/py3-flask-cdn/assertEquals.patch96
-rw-r--r--testing/py3-flask-components/APKBUILD26
-rw-r--r--testing/py3-flask-components/importlib.patch15
-rw-r--r--testing/py3-flask-compress/APKBUILD31
-rw-r--r--testing/py3-flask-dbconfig/APKBUILD14
-rw-r--r--testing/py3-flask-flatpages/APKBUILD20
-rw-r--r--testing/py3-flask-gzip/APKBUILD14
-rw-r--r--testing/py3-flask-headers/APKBUILD16
-rw-r--r--testing/py3-flask-htmlmin/APKBUILD32
-rw-r--r--testing/py3-flask-httpauth/APKBUILD23
-rw-r--r--testing/py3-flask-json-schema/APKBUILD16
-rw-r--r--testing/py3-flask-limiter/APKBUILD50
-rw-r--r--testing/py3-flask-limiter/our-std-is-good-enough.patch22
-rw-r--r--testing/py3-flask-loopback/APKBUILD16
-rw-r--r--testing/py3-flask-mailman/APKBUILD35
-rw-r--r--testing/py3-flask-markdown/APKBUILD16
-rw-r--r--testing/py3-flask-migrate/APKBUILD34
-rw-r--r--testing/py3-flask-paginate/APKBUILD16
-rw-r--r--testing/py3-flask-peewee/APKBUILD14
-rw-r--r--testing/py3-flask-principal/APKBUILD18
-rw-r--r--testing/py3-flask-qrcode/APKBUILD20
-rw-r--r--testing/py3-flask-restaction/APKBUILD16
-rw-r--r--testing/py3-flask-restful/APKBUILD29
-rw-r--r--testing/py3-flask-restless/APKBUILD16
-rw-r--r--testing/py3-flask-security/APKBUILD61
-rw-r--r--testing/py3-flask-security/nowarnings.patch12
-rw-r--r--testing/py3-flask-security/remove_importlib_resources.patch13
-rw-r--r--testing/py3-flask-sqlalchemy/APKBUILD30
-rw-r--r--testing/py3-flask-themer/APKBUILD9
-rw-r--r--testing/py3-forbiddenfruit/APKBUILD12
-rw-r--r--testing/py3-fpdf/APKBUILD5
-rw-r--r--testing/py3-freetype-py/APKBUILD41
-rw-r--r--testing/py3-funcparserlib/APKBUILD18
-rw-r--r--testing/py3-furl/APKBUILD9
-rw-r--r--testing/py3-fuzzywuzzy/APKBUILD13
-rw-r--r--testing/py3-geographiclib/APKBUILD30
-rw-r--r--testing/py3-geoip/APKBUILD4
-rw-r--r--testing/py3-geopy/APKBUILD38
-rw-r--r--testing/py3-geotiler/APKBUILD47
-rw-r--r--testing/py3-gevent-websocket/APKBUILD7
-rw-r--r--testing/py3-ghp-import/APKBUILD26
-rw-r--r--testing/py3-git-versioner/APKBUILD50
-rw-r--r--testing/py3-github3/APKBUILD43
-rw-r--r--testing/py3-gitlab/APKBUILD49
-rw-r--r--testing/py3-glob2/APKBUILD5
-rw-r--r--testing/py3-gls/APKBUILD27
-rw-r--r--testing/py3-gnupg/APKBUILD30
-rw-r--r--testing/py3-google-trans-new/APKBUILD36
-rw-r--r--testing/py3-googletrans/APKBUILD5
-rw-r--r--testing/py3-gpep517/APKBUILD25
-rw-r--r--testing/py3-grequests/APKBUILD10
-rw-r--r--testing/py3-guessit/APKBUILD31
-rw-r--r--testing/py3-halo/APKBUILD5
-rw-r--r--testing/py3-hatch-openzim-bootstrap/APKBUILD41
-rw-r--r--testing/py3-hatch-openzim/APKBUILD41
-rw-r--r--testing/py3-hbmqtt/APKBUILD32
-rw-r--r--testing/py3-helper/APKBUILD5
-rw-r--r--testing/py3-hg-git/APKBUILD20
-rw-r--r--testing/py3-hiplot/APKBUILD52
-rw-r--r--testing/py3-html2markdown/APKBUILD37
-rw-r--r--testing/py3-html5-parser/APKBUILD41
-rw-r--r--testing/py3-httpcore/APKBUILD48
-rw-r--r--testing/py3-httptools/APKBUILD31
-rw-r--r--testing/py3-httpx/APKBUILD45
-rw-r--r--testing/py3-httpx/relax-dependencies.patch13
-rw-r--r--testing/py3-hurry.filesize/APKBUILD7
-rw-r--r--testing/py3-i18naddress/APKBUILD28
-rw-r--r--testing/py3-i18naddress/python-3.9.patch34
-rw-r--r--testing/py3-i3ipc/APKBUILD28
-rw-r--r--testing/py3-icalendar/APKBUILD31
-rw-r--r--testing/py3-identify/APKBUILD31
-rw-r--r--testing/py3-igraph/APKBUILD49
-rw-r--r--testing/py3-imageio-ffmpeg/APKBUILD40
-rw-r--r--testing/py3-imageio-ffmpeg/pip-requirement.patch12
-rw-r--r--testing/py3-imageio/APKBUILD26
-rw-r--r--testing/py3-imdbpy/APKBUILD5
-rw-r--r--testing/py3-incoming/APKBUILD14
-rw-r--r--testing/py3-incoming/assertEquals.patch31
-rw-r--r--testing/py3-infinity/APKBUILD11
-rw-r--r--testing/py3-iniparse/APKBUILD6
-rw-r--r--testing/py3-intervals/APKBUILD5
-rw-r--r--testing/py3-invoke/APKBUILD33
-rw-r--r--testing/py3-ioflo/APKBUILD38
-rw-r--r--testing/py3-ioflo/python-3.9.patch54
-rw-r--r--testing/py3-iso639-lang/APKBUILD35
-rw-r--r--testing/py3-itemadapter/APKBUILD9
-rw-r--r--testing/py3-itemloaders/APKBUILD40
-rw-r--r--testing/py3-itunespy/APKBUILD28
-rw-r--r--testing/py3-janus/APKBUILD32
-rw-r--r--testing/py3-janus/no-typing-extensions.patch42
-rw-r--r--testing/py3-jaraco.packaging/APKBUILD27
-rw-r--r--testing/py3-json-logger/APKBUILD26
-rw-r--r--testing/py3-jsonpickle/APKBUILD41
-rw-r--r--testing/py3-jsonpickle/tests.patch15
-rw-r--r--testing/py3-jsonschema417/APKBUILD67
-rw-r--r--testing/py3-junit-xml/APKBUILD13
-rw-r--r--testing/py3-jwcrypto/APKBUILD31
-rw-r--r--testing/py3-kaitaistruct/APKBUILD25
-rw-r--r--testing/py3-kazoo/APKBUILD3
-rw-r--r--testing/py3-keepalive/APKBUILD29
-rw-r--r--testing/py3-keepalive/fix-import.patch18
-rw-r--r--testing/py3-keepalive/py3.patch553
-rw-r--r--testing/py3-kerberos/APKBUILD6
-rw-r--r--testing/py3-kikit/APKBUILD45
-rw-r--r--testing/py3-kombu/APKBUILD31
-rw-r--r--testing/py3-landlock/APKBUILD43
-rw-r--r--testing/py3-langcodes/APKBUILD40
-rw-r--r--testing/py3-language-data/APKBUILD37
-rw-r--r--testing/py3-latex2mathml/APKBUILD33
-rw-r--r--testing/py3-levenshtein/APKBUILD42
-rw-r--r--testing/py3-lib_users/APKBUILD5
-rw-r--r--testing/py3-libacl/APKBUILD8
-rw-r--r--testing/py3-liblarch/APKBUILD13
-rw-r--r--testing/py3-libmdbx/APKBUILD10
-rw-r--r--testing/py3-libnacl/APKBUILD35
-rw-r--r--testing/py3-librelingo-audios/APKBUILD35
-rw-r--r--testing/py3-librelingo-types/APKBUILD31
-rw-r--r--testing/py3-librelingo-utils/APKBUILD35
-rw-r--r--testing/py3-librelingo-yaml-loader/APKBUILD45
-rw-r--r--testing/py3-librtmp/APKBUILD5
-rw-r--r--testing/py3-limits/APKBUILD50
-rw-r--r--testing/py3-limits/our-std-is-good-enough.patch22
-rw-r--r--testing/py3-lingua-franca/APKBUILD46
-rw-r--r--testing/py3-linkify-it-py/APKBUILD35
-rw-r--r--testing/py3-litex-hub-modules/0001-fix-pythondata_software_compiler_rt-python3.patch405
-rw-r--r--testing/py3-litex-hub-modules/0002-fix-pythondata-cpu-blackparrot-python3.patch2824
-rw-r--r--testing/py3-litex-hub-modules/APKBUILD235
-rw-r--r--testing/py3-litex/0001-litedram-phy-lpddr-fix-use-of-invalid-escape-sequenc.patch105
-rw-r--r--testing/py3-litex/0002-litex-fix-invalid-escape-sequence.patch16
-rw-r--r--testing/py3-litex/0003-litepcie-fix-package-absent-from-packages-configuration.patch23
-rw-r--r--testing/py3-litex/APKBUILD249
-rw-r--r--testing/py3-livestream/APKBUILD27
-rw-r--r--testing/py3-llfuse/APKBUILD27
-rw-r--r--testing/py3-log-symbols/APKBUILD5
-rw-r--r--testing/py3-logutils/APKBUILD31
-rw-r--r--testing/py3-lsp-black/APKBUILD37
-rw-r--r--testing/py3-lsp-mypy/APKBUILD44
-rw-r--r--testing/py3-lsprotocol/APKBUILD44
-rw-r--r--testing/py3-luhn/APKBUILD5
-rw-r--r--testing/py3-lunr/APKBUILD13
-rw-r--r--testing/py3-ly/APKBUILD36
-rw-r--r--testing/py3-lzo/APKBUILD19
-rw-r--r--testing/py3-m2crypto/APKBUILD13
-rw-r--r--testing/py3-managesieve/APKBUILD34
-rw-r--r--testing/py3-managesieve/dont-depend-on-pytest-runner.patch14
-rw-r--r--testing/py3-mando/APKBUILD10
-rw-r--r--testing/py3-manuel/APKBUILD14
-rw-r--r--testing/py3-mapbox-earcut/APKBUILD32
-rw-r--r--testing/py3-marisa-trie/APKBUILD52
-rw-r--r--testing/py3-markdown2/APKBUILD28
-rw-r--r--testing/py3-marshmallow-enum/APKBUILD25
-rw-r--r--testing/py3-marshmallow/APKBUILD23
-rw-r--r--testing/py3-matplotlib-venn/APKBUILD32
-rw-r--r--testing/py3-mbedtls/APKBUILD52
-rw-r--r--testing/py3-memory-profiler/APKBUILD60
-rw-r--r--testing/py3-memory-profiler/assertRaisesRegexp.patch14
-rw-r--r--testing/py3-mergedeep/APKBUILD26
-rw-r--r--testing/py3-migen/0001-fix-get_var_name.patch113
-rw-r--r--testing/py3-migen/0002-fix-incorrect-use-of-is.patch29
-rw-r--r--testing/py3-migen/APKBUILD51
-rw-r--r--testing/py3-milc/APKBUILD20
-rw-r--r--testing/py3-minidb/APKBUILD13
-rw-r--r--testing/py3-minidump/APKBUILD34
-rw-r--r--testing/py3-minikerberos/APKBUILD44
-rw-r--r--testing/py3-minio/APKBUILD38
-rw-r--r--testing/py3-minio/assertEquals.patch9
-rw-r--r--testing/py3-mistletoe/APKBUILD32
-rw-r--r--testing/py3-mitmproxy-rs/APKBUILD46
-rw-r--r--testing/py3-mmh3/APKBUILD34
-rw-r--r--testing/py3-modbus-tk/APKBUILD5
-rw-r--r--testing/py3-mongo/APKBUILD32
-rw-r--r--testing/py3-mopidy-jellyfin/APKBUILD35
-rw-r--r--testing/py3-mopidy-local/APKBUILD37
-rw-r--r--testing/py3-mopidy-mpd/APKBUILD23
-rw-r--r--testing/py3-mopidy-spotify/APKBUILD45
-rw-r--r--testing/py3-mopidy-tidal/APKBUILD25
-rw-r--r--testing/py3-more-properties/APKBUILD52
-rw-r--r--testing/py3-more-properties/root.patch15
-rw-r--r--testing/py3-moviepy/APKBUILD17
-rw-r--r--testing/py3-moviepy/decorators.patch47
-rw-r--r--testing/py3-mpd2/APKBUILD9
-rw-r--r--testing/py3-msldap/APKBUILD45
-rw-r--r--testing/py3-murmurhash/APKBUILD32
-rw-r--r--testing/py3-nanoid/APKBUILD28
-rw-r--r--testing/py3-natpmp/APKBUILD35
-rw-r--r--testing/py3-ncclient/APKBUILD17
-rw-r--r--testing/py3-netdisco/APKBUILD29
-rw-r--r--testing/py3-netifaces2/APKBUILD52
-rw-r--r--testing/py3-netmiko/APKBUILD27
-rw-r--r--testing/py3-networkmanager/APKBUILD39
-rw-r--r--testing/py3-networkmanager/allow-no-mainloop.patch24
-rw-r--r--testing/py3-networkmanager/fix-nm-1-34-compatibility.patch47
-rw-r--r--testing/py3-networkmanager/handle-routing-rules.patch30
-rw-r--r--testing/py3-niaarm/APKBUILD31
-rw-r--r--testing/py3-niaclass/APKBUILD33
-rw-r--r--testing/py3-niaclass/do-not-package-tests.patch23
-rw-r--r--testing/py3-nikola/APKBUILD26
-rw-r--r--testing/py3-nmap/APKBUILD5
-rw-r--r--testing/py3-nose-of-yeti/APKBUILD39
-rw-r--r--testing/py3-nose-of-yeti/use-pytest-asyncio.patch20
-rw-r--r--testing/py3-nose-timer/APKBUILD18
-rw-r--r--testing/py3-nose-timer/assertEquals.patch9
-rw-r--r--testing/py3-notifymail/APKBUILD5
-rw-r--r--testing/py3-nox/APKBUILD44
-rw-r--r--testing/py3-nptyping/APKBUILD44
-rw-r--r--testing/py3-ntplib/APKBUILD13
-rw-r--r--testing/py3-numpy-stl/APKBUILD34
-rw-r--r--testing/py3-nwdiag/APKBUILD12
-rw-r--r--testing/py3-onelogin/APKBUILD53
-rw-r--r--testing/py3-openapi-codec/APKBUILD13
-rw-r--r--testing/py3-openapi-codec/assertEquals.patch43
-rw-r--r--testing/py3-openssh-wrapper/APKBUILD12
-rw-r--r--testing/py3-openwisp-utils/APKBUILD7
-rw-r--r--testing/py3-optuna/APKBUILD52
-rw-r--r--testing/py3-orderedmultidict/APKBUILD5
-rw-r--r--testing/py3-osqp/APKBUILD8
-rw-r--r--testing/py3-overpy/APKBUILD33
-rw-r--r--testing/py3-ovos-backend-client/APKBUILD48
-rw-r--r--testing/py3-ovos-bus-client/APKBUILD47
-rw-r--r--testing/py3-ovos-classifiers/APKBUILD53
-rw-r--r--testing/py3-ovos-classifiers/assertEquals.patch18
-rw-r--r--testing/py3-ovos-config/APKBUILD48
-rw-r--r--testing/py3-ovos-media-plugin-simple/APKBUILD36
-rw-r--r--testing/py3-ovos-microphone-plugin-alsa/APKBUILD37
-rw-r--r--testing/py3-ovos-ocp-audio-plugin/APKBUILD61
-rw-r--r--testing/py3-ovos-ocp-files-plugin/APKBUILD51
-rw-r--r--testing/py3-ovos-ocp-m3u-plugin/APKBUILD34
-rw-r--r--testing/py3-ovos-ocp-news-plugin/APKBUILD46
-rw-r--r--testing/py3-ovos-ocp-rss-plugin/APKBUILD37
-rw-r--r--testing/py3-ovos-phal-plugin-connectivity-events/APKBUILD45
-rw-r--r--testing/py3-ovos-phal-plugin-ipgeo/APKBUILD38
-rw-r--r--testing/py3-ovos-phal-plugin-network-manager/APKBUILD40
-rw-r--r--testing/py3-ovos-phal-plugin-oauth/APKBUILD43
-rw-r--r--testing/py3-ovos-phal-plugin-system/APKBUILD33
-rw-r--r--testing/py3-ovos-plugin-manager/APKBUILD41
-rw-r--r--testing/py3-ovos-stt-plugin-server/APKBUILD34
-rw-r--r--testing/py3-ovos-tts-plugin-mimic3-server/APKBUILD38
-rw-r--r--testing/py3-ovos-utils/APKBUILD57
-rw-r--r--testing/py3-ovos-vad-plugin-webrtcvad/APKBUILD39
-rw-r--r--testing/py3-ovos-workshop/APKBUILD53
-rw-r--r--testing/py3-ovos-ww-plugin-vosk/APKBUILD42
-rw-r--r--testing/py3-owslib/APKBUILD36
-rw-r--r--testing/py3-padacioso/APKBUILD40
-rw-r--r--testing/py3-pam/APKBUILD43
-rw-r--r--testing/py3-parse/APKBUILD35
-rw-r--r--testing/py3-parsel/APKBUILD31
-rw-r--r--testing/py3-parver/APKBUILD25
-rw-r--r--testing/py3-patatt/APKBUILD29
-rw-r--r--testing/py3-pathvalidate/APKBUILD35
-rw-r--r--testing/py3-pbkdf2/APKBUILD5
-rw-r--r--testing/py3-pcbnewtransition/APKBUILD47
-rw-r--r--testing/py3-pdal/APKBUILD20
-rw-r--r--testing/py3-pebble/APKBUILD41
-rw-r--r--testing/py3-pecan/APKBUILD32
-rw-r--r--testing/py3-pefile/APKBUILD33
-rw-r--r--testing/py3-pelican/APKBUILD64
-rw-r--r--testing/py3-pelican/no-locales-for-tests.patch19
-rw-r--r--testing/py3-pelican/remove-shebang.patch21
-rw-r--r--testing/py3-pep8-naming/APKBUILD23
-rw-r--r--testing/py3-pep8-naming/fix-missing-option.patch23
-rw-r--r--testing/py3-pg_activity/APKBUILD33
-rw-r--r--testing/py3-phpserialize/APKBUILD5
-rw-r--r--testing/py3-piccata/APKBUILD46
-rw-r--r--testing/py3-pickle-secure/APKBUILD36
-rw-r--r--testing/py3-piexif/APKBUILD30
-rw-r--r--testing/py3-pika/APKBUILD16
-rw-r--r--testing/py3-pip-system-certs/APKBUILD33
-rw-r--r--testing/py3-pivy/APKBUILD26
-rw-r--r--testing/py3-pivy/qt5.patch11
-rw-r--r--testing/py3-plac/APKBUILD31
-rw-r--r--testing/py3-plac/index.rst2
-rw-r--r--testing/py3-playsound/APKBUILD22
-rw-r--r--testing/py3-plexapi/APKBUILD44
-rw-r--r--testing/py3-pockethernet/APKBUILD5
-rw-r--r--testing/py3-podman/APKBUILD30
-rw-r--r--testing/py3-poetry-dynamic-versioning/APKBUILD37
-rw-r--r--testing/py3-poppler-qt5/APKBUILD37
-rw-r--r--testing/py3-pprintpp/APKBUILD36
-rw-r--r--testing/py3-preggy/APKBUILD7
-rw-r--r--testing/py3-preshed/APKBUILD39
-rw-r--r--testing/py3-proglog/APKBUILD39
-rw-r--r--testing/py3-progressbar/APKBUILD29
-rw-r--r--testing/py3-progressbar2/APKBUILD36
-rw-r--r--testing/py3-proplot/APKBUILD40
-rw-r--r--testing/py3-protego/APKBUILD13
-rw-r--r--testing/py3-proxmoxer/APKBUILD25
-rw-r--r--testing/py3-publicsuffix2/APKBUILD5
-rw-r--r--testing/py3-pure_protobuf/APKBUILD41
-rw-r--r--testing/py3-pure_protobuf/use_fixed_version.patch23
-rw-r--r--testing/py3-puremagic/APKBUILD34
-rw-r--r--testing/py3-py-radix/APKBUILD8
-rw-r--r--testing/py3-py-radix/assertEquals.patch181
-rw-r--r--testing/py3-pyatem/APKBUILD13
-rw-r--r--testing/py3-pyautogui/APKBUILD32
-rw-r--r--testing/py3-pybars3/APKBUILD5
-rw-r--r--testing/py3-pycaption/APKBUILD37
-rw-r--r--testing/py3-pycolorterm/APKBUILD4
-rw-r--r--testing/py3-pycosat/APKBUILD20
-rw-r--r--testing/py3-pydes/APKBUILD6
-rw-r--r--testing/py3-pygame/APKBUILD69
-rw-r--r--testing/py3-pygdbmi/APKBUILD28
-rw-r--r--testing/py3-pygelbooru/APKBUILD34
-rw-r--r--testing/py3-pygfm/APKBUILD12
-rw-r--r--testing/py3-pyglm/APKBUILD51
-rw-r--r--testing/py3-pygpgme/APKBUILD16
-rw-r--r--testing/py3-pygpgme/py3.11.patch13
-rw-r--r--testing/py3-pygtail/APKBUILD16
-rw-r--r--testing/py3-pyinstrument/APKBUILD35
-rw-r--r--testing/py3-pyisbn/APKBUILD11
-rw-r--r--testing/py3-pylru/APKBUILD35
-rw-r--r--testing/py3-pymaging-png/APKBUILD5
-rw-r--r--testing/py3-pymaging/APKBUILD5
-rw-r--r--testing/py3-pymata/APKBUILD27
-rw-r--r--testing/py3-pymata4/APKBUILD27
-rw-r--r--testing/py3-pymdown-extensions/APKBUILD27
-rw-r--r--testing/py3-pymeta3/APKBUILD5
-rw-r--r--testing/py3-pymsgbox/APKBUILD35
-rw-r--r--testing/py3-pymsteams/APKBUILD11
-rw-r--r--testing/py3-pynest2d/APKBUILD27
-rw-r--r--testing/py3-pynest2d/cmake-helpers.patch253
-rw-r--r--testing/py3-pynest2d/cmake.patch34
-rw-r--r--testing/py3-pynest2d/pyproject.patch21
-rw-r--r--testing/py3-pypandoc/APKBUILD24
-rw-r--r--testing/py3-pyparted/APKBUILD38
-rw-r--r--testing/py3-pyparted/archlabels-armv8l.patch20
-rw-r--r--testing/py3-pypng/APKBUILD31
-rw-r--r--testing/py3-pypng/python-3.9.patch31
-rw-r--r--testing/py3-pyproj/APKBUILD32
-rw-r--r--testing/py3-pyqt-feedback-flow/APKBUILD27
-rw-r--r--testing/py3-pyrebase/APKBUILD6
-rw-r--r--testing/py3-pyro4/APKBUILD34
-rw-r--r--testing/py3-pyroma/APKBUILD32
-rw-r--r--testing/py3-pyrss2gen/APKBUILD27
-rw-r--r--testing/py3-pyscreeze/APKBUILD34
-rw-r--r--testing/py3-pysequoia/APKBUILD54
-rw-r--r--testing/py3-pysimplesoap/APKBUILD5
-rw-r--r--testing/py3-pysonic/APKBUILD21
-rw-r--r--testing/py3-pyspinel/APKBUILD44
-rw-r--r--testing/py3-pysrt/APKBUILD10
-rw-r--r--testing/py3-pysrt/assertEquals.patch49
-rw-r--r--testing/py3-pystache/APKBUILD32
-rw-r--r--testing/py3-pytaglib/APKBUILD8
-rw-r--r--testing/py3-pyte/APKBUILD12
-rw-r--r--testing/py3-pytest-env/APKBUILD27
-rw-r--r--testing/py3-pytest-expect/APKBUILD5
-rw-r--r--testing/py3-pytest-helpers-namespace/APKBUILD42
-rw-r--r--testing/py3-pytest-html/APKBUILD49
-rw-r--r--testing/py3-pytest-instafail/APKBUILD29
-rw-r--r--testing/py3-pytest-metadata/APKBUILD40
-rw-r--r--testing/py3-pytest-mypy/APKBUILD48
-rw-r--r--testing/py3-pytest-regtest/APKBUILD46
-rw-r--r--testing/py3-pytest-rerunfailures/APKBUILD29
-rw-r--r--testing/py3-pytest-subprocess/APKBUILD40
-rw-r--r--testing/py3-python-archive/APKBUILD10
-rw-r--r--testing/py3-python-iptables/APKBUILD40
-rw-r--r--testing/py3-python-jose/APKBUILD37
-rw-r--r--testing/py3-python-jwt/APKBUILD31
-rw-r--r--testing/py3-python-logstash/APKBUILD10
-rw-r--r--testing/py3-python-mystrom/APKBUILD27
-rw-r--r--testing/py3-python-stdnum/APKBUILD14
-rw-r--r--testing/py3-python-stdnum/lower-coverage.patch12
-rw-r--r--testing/py3-pytube/APKBUILD42
-rw-r--r--testing/py3-pytweening/APKBUILD37
-rw-r--r--testing/py3-pyvcd/APKBUILD36
-rw-r--r--testing/py3-pyvmomi/APKBUILD30
-rw-r--r--testing/py3-pyvows/APKBUILD6
-rw-r--r--testing/py3-pyyaml-env-tag/APKBUILD30
-rw-r--r--testing/py3-pyzor/APKBUILD7
-rw-r--r--testing/py3-qasync/APKBUILD28
-rw-r--r--testing/py3-qbittorrent-api/APKBUILD46
-rw-r--r--testing/py3-qdldl/APKBUILD6
-rw-r--r--testing/py3-qpageview/APKBUILD35
-rw-r--r--testing/py3-qt.py/APKBUILD19
-rw-r--r--testing/py3-qt.py/importlib.patch20
-rw-r--r--testing/py3-qtgraph/APKBUILD28
-rw-r--r--testing/py3-quebra-frases/APKBUILD39
-rw-r--r--testing/py3-queuelib/APKBUILD18
-rw-r--r--testing/py3-rabbit/APKBUILD5
-rw-r--r--testing/py3-radon/APKBUILD8
-rw-r--r--testing/py3-raet/APKBUILD28
-rw-r--r--testing/py3-rapidjson/APKBUILD56
-rw-r--r--testing/py3-re-assert/APKBUILD31
-rw-r--r--testing/py3-rebulk/APKBUILD30
-rw-r--r--testing/py3-recommonmark/APKBUILD11
-rw-r--r--testing/py3-recurring-ical-events/APKBUILD36
-rw-r--r--testing/py3-redmine/APKBUILD18
-rw-r--r--testing/py3-redmine/assertEquals.patch23
-rw-r--r--testing/py3-reedsolo/APKBUILD32
-rw-r--r--testing/py3-reedsolo/python3.10.patch25
-rw-r--r--testing/py3-remind/APKBUILD5
-rw-r--r--testing/py3-remoto/APKBUILD32
-rw-r--r--testing/py3-requests-kerberos/APKBUILD37
-rw-r--r--testing/py3-requests-wsgi-adapter/APKBUILD36
-rw-r--r--testing/py3-rfc-bibtex/APKBUILD7
-rw-r--r--testing/py3-rfc3987/APKBUILD5
-rw-r--r--testing/py3-rich-click/APKBUILD44
-rw-r--r--testing/py3-riotctrl/APKBUILD46
-rw-r--r--testing/py3-rosdistro/APKBUILD9
-rw-r--r--testing/py3-rospkg/APKBUILD5
-rw-r--r--testing/py3-rpio/APKBUILD5
-rw-r--r--testing/py3-rst.linker/APKBUILD20
-rw-r--r--testing/py3-rst/APKBUILD5
-rw-r--r--testing/py3-rstr/APKBUILD23
-rw-r--r--testing/py3-rtree/APKBUILD11
-rw-r--r--testing/py3-sabctools/APKBUILD47
-rw-r--r--testing/py3-sarge/APKBUILD35
-rw-r--r--testing/py3-schema/APKBUILD11
-rw-r--r--testing/py3-scikit-uplift/APKBUILD31
-rw-r--r--testing/py3-scour/APKBUILD35
-rw-r--r--testing/py3-scrapy/APKBUILD37
-rw-r--r--testing/py3-scs/APKBUILD17
-rw-r--r--testing/py3-seaborn/APKBUILD31
-rw-r--r--testing/py3-seqdiag/APKBUILD16
-rw-r--r--testing/py3-serpent/APKBUILD33
-rw-r--r--testing/py3-setuptools-declarative-requirements/APKBUILD38
-rw-r--r--testing/py3-setuptools-git/APKBUILD35
-rw-r--r--testing/py3-setuptools-lint/APKBUILD22
-rw-r--r--testing/py3-setuptools-rust/APKBUILD34
-rw-r--r--testing/py3-sh/APKBUILD24
-rw-r--r--testing/py3-shodan/APKBUILD30
-rw-r--r--testing/py3-shortuuid/APKBUILD12
-rw-r--r--testing/py3-shtab/APKBUILD22
-rw-r--r--testing/py3-simber/APKBUILD32
-rw-r--r--testing/py3-simframe/APKBUILD31
-rw-r--r--testing/py3-simplematch/APKBUILD39
-rw-r--r--testing/py3-simplesoapy/APKBUILD5
-rw-r--r--testing/py3-simplespectral/APKBUILD5
-rw-r--r--testing/py3-sklearn-nature-inspired-algorithms/APKBUILD41
-rw-r--r--testing/py3-slidge-style-parser/APKBUILD45
-rw-r--r--testing/py3-slixmpp/APKBUILD63
-rw-r--r--testing/py3-snapshottest/APKBUILD6
-rw-r--r--testing/py3-soappy/APKBUILD9
-rw-r--r--testing/py3-soapy_power/APKBUILD5
-rw-r--r--testing/py3-socksio/APKBUILD33
-rw-r--r--testing/py3-solidpython/APKBUILD45
-rw-r--r--testing/py3-solidpython/fix-versions.patch32
-rw-r--r--testing/py3-solidpython/poetry-core.patch11
-rw-r--r--testing/py3-sortedcollections/APKBUILD29
-rw-r--r--testing/py3-spacy/APKBUILD44
-rw-r--r--testing/py3-sphinx-argparse/APKBUILD23
-rw-r--r--testing/py3-sphinx-argparse/fix-python3.10-tests.patch20
-rw-r--r--testing/py3-sphinx-autoapi/APKBUILD28
-rw-r--r--testing/py3-sphinx-autodoc-typehints/APKBUILD27
-rw-r--r--testing/py3-sphinx-autorun/APKBUILD27
-rw-r--r--testing/py3-sphinx-click/APKBUILD31
-rw-r--r--testing/py3-sphinx-theme-better/APKBUILD5
-rw-r--r--testing/py3-sphinx-theme-bootstrap/APKBUILD10
-rw-r--r--testing/py3-sphinx-theme-bw/APKBUILD12
-rw-r--r--testing/py3-sphinx-theme-cloud/APKBUILD40
-rw-r--r--testing/py3-sphinx-theme-cloud/markup.patch13
-rw-r--r--testing/py3-sphinx-theme-epfl/APKBUILD14
-rw-r--r--testing/py3-sphinx-theme-guzzle/APKBUILD5
-rw-r--r--testing/py3-sphinx-theme-quark/APKBUILD22
-rw-r--r--testing/py3-sphinx-theme-quark/tinycss.patch115
-rw-r--r--testing/py3-sphinx-theme-readable/APKBUILD16
-rw-r--r--testing/py3-sphinxcontrib-actdiag/APKBUILD23
-rw-r--r--testing/py3-sphinxcontrib-adadomain/APKBUILD16
-rw-r--r--testing/py3-sphinxcontrib-apidoc/APKBUILD28
-rw-r--r--testing/py3-sphinxcontrib-autoprogram/APKBUILD41
-rw-r--r--testing/py3-sphinxcontrib-bitbucket/APKBUILD16
-rw-r--r--testing/py3-sphinxcontrib-blockdiag/APKBUILD23
-rw-r--r--testing/py3-sphinxcontrib-cacoo/APKBUILD14
-rw-r--r--testing/py3-sphinxcontrib-cartouche/APKBUILD14
-rw-r--r--testing/py3-sphinxcontrib-doxylink/APKBUILD29
-rw-r--r--testing/py3-sphinxcontrib-fulltoc/APKBUILD16
-rw-r--r--testing/py3-sphinxcontrib-gist/APKBUILD25
-rw-r--r--testing/py3-sphinxcontrib-gist/fix-build.patch19
-rw-r--r--testing/py3-sphinxcontrib-git/APKBUILD14
-rw-r--r--testing/py3-sphinxcontrib-gravatar/APKBUILD7
-rw-r--r--testing/py3-sphinxcontrib-htsql/APKBUILD16
-rw-r--r--testing/py3-sphinxcontrib-httpdomain/APKBUILD31
-rw-r--r--testing/py3-sphinxcontrib-hydomain/APKBUILD17
-rw-r--r--testing/py3-sphinxcontrib-inheritance/APKBUILD16
-rw-r--r--testing/py3-sphinxcontrib-issuetracker/APKBUILD14
-rw-r--r--testing/py3-sphinxcontrib-lassodomain/APKBUILD16
-rw-r--r--testing/py3-sphinxcontrib-manpage/APKBUILD16
-rw-r--r--testing/py3-sphinxcontrib-newsfeed/APKBUILD25
-rw-r--r--testing/py3-sphinxcontrib-nwdiag/APKBUILD17
-rw-r--r--testing/py3-sphinxcontrib-phpdomain/APKBUILD25
-rw-r--r--testing/py3-sphinxcontrib-programoutput/APKBUILD5
-rw-r--r--testing/py3-sphinxcontrib-restbuilder/APKBUILD16
-rw-r--r--testing/py3-sphinxcontrib-seqdiag/APKBUILD22
-rw-r--r--testing/py3-sphinxcontrib-slide/APKBUILD19
-rw-r--r--testing/py3-sphinxcontrib-spelling/APKBUILD30
-rw-r--r--testing/py3-sphinxcontrib-sqltable/APKBUILD16
-rw-r--r--testing/py3-sphinxcontrib-tabs/APKBUILD27
-rw-r--r--testing/py3-sphinxcontrib-textstyle/APKBUILD15
-rw-r--r--testing/py3-sphobjinv/APKBUILD9
-rw-r--r--testing/py3-spidev/APKBUILD30
-rw-r--r--testing/py3-spin/APKBUILD35
-rw-r--r--testing/py3-spinners/APKBUILD5
-rw-r--r--testing/py3-spnego/APKBUILD51
-rw-r--r--testing/py3-sport-activities-features/APKBUILD42
-rw-r--r--testing/py3-sportydatagen/APKBUILD36
-rw-r--r--testing/py3-spotipy/APKBUILD28
-rw-r--r--testing/py3-sqlalchemy-utils/APKBUILD28
-rw-r--r--testing/py3-srsly/APKBUILD31
-rw-r--r--testing/py3-srt/APKBUILD43
-rw-r--r--testing/py3-sstash/APKBUILD5
-rw-r--r--testing/py3-stem/APKBUILD28
-rw-r--r--testing/py3-stevedore/APKBUILD37
-rw-r--r--testing/py3-stochastic/APKBUILD32
-rw-r--r--testing/py3-stringcase/APKBUILD21
-rw-r--r--testing/py3-striprtf/APKBUILD31
-rw-r--r--testing/py3-subtesthack/APKBUILD25
-rw-r--r--testing/py3-svgpath/105_use-better-than-nothing-font.patch300
-rw-r--r--testing/py3-svgpath/APKBUILD37
-rw-r--r--testing/py3-svgpath/no-install-tests.patch15
-rw-r--r--testing/py3-swagger-ui-bundle/APKBUILD49
-rw-r--r--testing/py3-syrupy/APKBUILD36
-rw-r--r--testing/py3-tailer/APKBUILD22
-rw-r--r--testing/py3-tasklib/APKBUILD7
-rw-r--r--testing/py3-tcxparser/APKBUILD30
-rw-r--r--testing/py3-telegram-bot/APKBUILD9
-rw-r--r--testing/py3-telegram-text/APKBUILD33
-rw-r--r--testing/py3-telegram/0001-Use-system-tdlib.patch27
-rw-r--r--testing/py3-telegram/0002-Remove-binarys.patch8
-rw-r--r--testing/py3-telegram/APKBUILD23
-rw-r--r--testing/py3-telemetrix/APKBUILD27
-rw-r--r--testing/py3-teletype/APKBUILD18
-rw-r--r--testing/py3-terminaltables/APKBUILD31
-rw-r--r--testing/py3-testresources/APKBUILD5
-rw-r--r--testing/py3-textual/APKBUILD61
-rw-r--r--testing/py3-tg/0001-Allow-newer-python-telegram.patch23
-rw-r--r--testing/py3-tg/0001-Change-setup.py-to-accept-new-python-telegram-ver.patch23
-rw-r--r--testing/py3-tg/APKBUILD17
-rw-r--r--testing/py3-thefuzz/APKBUILD35
-rw-r--r--testing/py3-thinc/APKBUILD36
-rw-r--r--testing/py3-ticket-auth/APKBUILD5
-rw-r--r--testing/py3-tidalapi/APKBUILD31
-rw-r--r--testing/py3-tls_parser/APKBUILD11
-rw-r--r--testing/py3-tlslite-ng/APKBUILD13
-rw-r--r--testing/py3-tokenizers/APKBUILD38
-rw-r--r--testing/py3-toposort/APKBUILD37
-rw-r--r--testing/py3-tpm2-pytss/APKBUILD64
-rw-r--r--testing/py3-transitions/APKBUILD14
-rw-r--r--testing/py3-translationstring/APKBUILD9
-rw-r--r--testing/py3-trimesh/APKBUILD65
-rw-r--r--testing/py3-trivup/APKBUILD11
-rw-r--r--testing/py3-truststore/APKBUILD45
-rw-r--r--testing/py3-twiggy/APKBUILD11
-rw-r--r--testing/py3-typing_inspect/APKBUILD22
-rw-r--r--testing/py3-tzlocal/APKBUILD25
-rw-r--r--testing/py3-u-msgpack/APKBUILD11
-rw-r--r--testing/py3-uc-micro-py/APKBUILD34
-rw-r--r--testing/py3-ufonormalizer/APKBUILD13
-rw-r--r--testing/py3-ukkonen/01-fix-musl-build.patch11
-rw-r--r--testing/py3-ukkonen/APKBUILD34
-rw-r--r--testing/py3-unearth/APKBUILD42
-rw-r--r--testing/py3-unicorn-hat/APKBUILD9
-rw-r--r--testing/py3-unicrypto/APKBUILD47
-rw-r--r--testing/py3-unidiff/APKBUILD36
-rw-r--r--testing/py3-unidiff/fix-test-script.patch8
-rw-r--r--testing/py3-unidns/APKBUILD45
-rw-r--r--testing/py3-unoconv/APKBUILD13
-rw-r--r--testing/py3-unoconv/CVE-2019-17400.patch102
-rw-r--r--testing/py3-untokenize/APKBUILD37
-rw-r--r--testing/py3-uptime/APKBUILD5
-rw-r--r--testing/py3-uritools/APKBUILD9
-rw-r--r--testing/py3-urlobject/APKBUILD5
-rw-r--r--testing/py3-urwid_readline/APKBUILD32
-rw-r--r--testing/py3-us/APKBUILD13
-rw-r--r--testing/py3-us/fix-requires.patch8
-rw-r--r--testing/py3-utc/APKBUILD5
-rw-r--r--testing/py3-utils/APKBUILD46
-rw-r--r--testing/py3-utils/fix-setuptools-deprecation.patch11
-rw-r--r--testing/py3-utils/pytest.patch14
-rw-r--r--testing/py3-utils/typing-ext.patch22
-rw-r--r--testing/py3-uvloop/APKBUILD36
-rw-r--r--testing/py3-uvloop/dns-tests.patch47
-rw-r--r--testing/py3-uvloop/tcp-tests.patch15
-rw-r--r--testing/py3-vatnumber/APKBUILD15
-rw-r--r--testing/py3-vatnumber/py3.patch10
-rw-r--r--testing/py3-vdf/APKBUILD45
-rw-r--r--testing/py3-venusian/APKBUILD13
-rw-r--r--testing/py3-vici/APKBUILD41
-rw-r--r--testing/py3-vici/use-sitepackages.patch9
-rw-r--r--testing/py3-vine/APKBUILD30
-rw-r--r--testing/py3-virtualenvwrapper/APKBUILD41
-rw-r--r--testing/py3-visitor/APKBUILD5
-rw-r--r--testing/py3-w3lib/APKBUILD35
-rw-r--r--testing/py3-w3lib/python-3.9.patch102
-rw-r--r--testing/py3-ward/APKBUILD53
-rw-r--r--testing/py3-wasabi/APKBUILD32
-rw-r--r--testing/py3-wbdata/APKBUILD20
-rw-r--r--testing/py3-webdavclient3/APKBUILD39
-rw-r--r--testing/py3-webpy/APKBUILD31
-rw-r--r--testing/py3-webrtcvad/APKBUILD45
-rw-r--r--testing/py3-webvtt/APKBUILD43
-rw-r--r--testing/py3-wg-netns/APKBUILD31
-rw-r--r--testing/py3-whois/APKBUILD29
-rw-r--r--testing/py3-wifi/APKBUILD5
-rw-r--r--testing/py3-winacl/APKBUILD37
-rw-r--r--testing/py3-wsgiprox/APKBUILD49
-rw-r--r--testing/py3-wstools/APKBUILD13
-rw-r--r--testing/py3-wstools/python3.12-support.patch22
-rw-r--r--testing/py3-wtf-peewee/APKBUILD9
-rw-r--r--testing/py3-wxpython/APKBUILD41
-rw-r--r--testing/py3-x-wr-timezone/APKBUILD39
-rw-r--r--testing/py3-xapp/APKBUILD28
-rw-r--r--testing/py3-xlwt/APKBUILD14
-rw-r--r--testing/py3-xmldiff/APKBUILD28
-rw-r--r--testing/py3-xsdata/APKBUILD55
-rw-r--r--testing/py3-xsdata/typing.patch26
-rw-r--r--testing/py3-yapsy/APKBUILD26
-rw-r--r--testing/py3-yapsy/deprecated.patch96
-rw-r--r--testing/py3-yara/APKBUILD10
-rw-r--r--testing/py3-yara/use-system-yara.patch9
-rw-r--r--testing/py3-yg.lockfile/APKBUILD33
-rw-r--r--testing/py3-yg.lockfile/setuptools_scm.patch12
-rw-r--r--testing/py3-youtube-search/APKBUILD28
-rw-r--r--testing/py3-zfs-autobackup/APKBUILD30
-rw-r--r--testing/py3-zimscraperlib/APKBUILD69
-rw-r--r--testing/py3-zipstream-ng/APKBUILD40
-rw-r--r--testing/py3-zope-configuration/APKBUILD26
-rw-r--r--testing/py3-zope-exceptions/APKBUILD26
-rw-r--r--testing/py3-zope-i18nmessageid/APKBUILD16
-rw-r--r--testing/py3-zope-schema/APKBUILD9
-rw-r--r--testing/py3-zope-testrunner/APKBUILD27
-rw-r--r--testing/py3-zulip/APKBUILD40
-rw-r--r--testing/py3-zulip/disable-matrix_bridge.patch20
-rw-r--r--testing/pympress/APKBUILD55
-rw-r--r--testing/pypy-bootstrap/APKBUILD121
-rw-r--r--testing/pypy-bootstrap/py2_cve-2021-3177.py2patch (renamed from testing/pypy-stage0/py2_cve-2021-3177.py2patch)0
-rw-r--r--testing/pypy-bootstrap/py2_musl-find_library.py2patch (renamed from testing/pypy-stage0/py2_musl-find_library.py2patch)0
-rw-r--r--testing/pypy-bootstrap/py2_unchecked-ioctl.py2patch (renamed from testing/pypy-stage0/py2_unchecked-ioctl.py2patch)0
-rw-r--r--testing/pypy-stage0/APKBUILD121
-rw-r--r--testing/pypy/APKBUILD43
-rw-r--r--testing/pypy3/0001-time.patch8
-rw-r--r--testing/pypy3/APKBUILD136
-rw-r--r--testing/pypykatz/APKBUILD43
-rw-r--r--testing/pyradio/APKBUILD52
-rw-r--r--testing/pyright/APKBUILD51
-rw-r--r--testing/python2/APKBUILD148
-rw-r--r--testing/python2/cve-2021-3177.patch150
-rw-r--r--testing/python2/musl-find_library.patch45
-rw-r--r--testing/python2/unchecked-ioctl.patch11
-rw-r--r--testing/qalculate-qt/APKBUILD32
-rw-r--r--testing/qbittorrent-cli/APKBUILD30
-rw-r--r--testing/qdjango/APKBUILD35
-rw-r--r--testing/qdjango/no_docs_tests.patch14
-rw-r--r--testing/qflipper/APKBUILD80
-rw-r--r--testing/qgis/10-exiv2-0.28.patch37
-rw-r--r--testing/qgis/20-protobuf-23.patch15
-rw-r--r--testing/qgis/30-qgstyle-infinite-loop.patch61
-rw-r--r--testing/qgis/40-pdal.patch176
-rw-r--r--testing/qgis/APKBUILD337
-rw-r--r--testing/qjackctl/APKBUILD38
-rw-r--r--testing/qmk-cli/APKBUILD49
-rw-r--r--testing/qmk-cli/add-plugdev.patch120
-rw-r--r--testing/qml-asteroid/APKBUILD21
-rw-r--r--testing/qoi/APKBUILD40
-rw-r--r--testing/qownnotes/APKBUILD55
-rw-r--r--testing/qownnotes/botan.patch17
-rw-r--r--testing/qownnotes/exclude.patch31
-rw-r--r--testing/qownnotes/md4c.patch15
-rw-r--r--testing/qownnotes/no-werror.patch12
-rw-r--r--testing/qpdfview/APKBUILD39
-rw-r--r--testing/qperf/APKBUILD2
-rw-r--r--testing/qps/APKBUILD36
-rw-r--r--testing/qqc2-suru-style/APKBUILD29
-rw-r--r--testing/qspectrumanalyzer/APKBUILD7
-rw-r--r--testing/qsstv/APKBUILD11
-rw-r--r--testing/qstardict/APKBUILD2
-rw-r--r--testing/qsynth/APKBUILD40
-rw-r--r--testing/qt-creator/APKBUILD45
-rw-r--r--testing/qt-creator/fix-execinfo.patch43
-rw-r--r--testing/qt-creator/fix-malloc-trim.patch20
-rw-r--r--testing/qt-wayland-shell-helpers/APKBUILD8
-rw-r--r--testing/qt5ct/APKBUILD16
-rw-r--r--testing/qt6-qtwebengine/0001-Enable-building-on-musl.patch16
-rw-r--r--testing/qt6-qtwebengine/0002-musl-fixes.patch185
-rw-r--r--testing/qt6-qtwebengine/0003-qt-musl-mallinfo.patch57
-rw-r--r--testing/qt6-qtwebengine/0004-qt-musl-resolve.patch72
-rw-r--r--testing/qt6-qtwebengine/0005-qt-musl-crashpad.patch13
-rw-r--r--testing/qt6-qtwebengine/0006-musl-hacks.patch181
-rw-r--r--testing/qt6-qtwebengine/0007-musl-sandbox.patch181
-rw-r--r--testing/qt6-qtwebengine/0008-musl-stat.patch12
-rw-r--r--testing/qt6-qtwebengine/0009-close.patch31
-rw-r--r--testing/qt6-qtwebengine/APKBUILD125
-rw-r--r--testing/qt6-qtwebengine/default-pthread-stacksize.patch23
-rw-r--r--testing/qt6-qtwebengine/system-icu.patch40
-rw-r--r--testing/qt6-qtwebview/APKBUILD58
-rw-r--r--testing/qt6ct/APKBUILD15
-rw-r--r--testing/qt6ct/find-lrelease.patch11
-rw-r--r--testing/qterminal/APKBUILD34
-rw-r--r--testing/qtermwidget/APKBUILD32
-rw-r--r--testing/qtile/APKBUILD39
-rw-r--r--testing/qtmir/0001-Wayland-hack-set-maliit-server-to-inputmethod-type-W.patch29
-rw-r--r--testing/qtmir/0002-Squash-of-miroil-patches.patch12405
-rw-r--r--testing/qtmir/0003-Require-miroil-in-out-.pc-file.patch24
-rw-r--r--testing/qtmir/0004-Update-for-Mir-2.15-removals.patch97
-rw-r--r--testing/qtmir/APKBUILD84
-rw-r--r--testing/qtox/APKBUILD51
-rw-r--r--testing/qtpass/APKBUILD9
-rw-r--r--testing/quakespasm/APKBUILD6
-rw-r--r--testing/qucs-s/APKBUILD43
-rw-r--r--testing/queercat/APKBUILD23
-rw-r--r--testing/quickjs/00-makefile.patch41
-rw-r--r--testing/quickjs/APKBUILD50
-rw-r--r--testing/quilt/APKBUILD43
-rw-r--r--testing/quodlibet/APKBUILD43
-rw-r--r--testing/qwt/10_install_paths.patch44
-rw-r--r--testing/qwt/20_fix_rpath.patch14
-rw-r--r--testing/qwt/APKBUILD34
-rw-r--r--testing/r2ghidra/APKBUILD55
-rw-r--r--testing/r2ghidra/use-system-pugixml.patch71
-rw-r--r--testing/rabbitmq-server/APKBUILD79
-rw-r--r--testing/rabbitmq-server/py3.patch82
-rw-r--r--testing/rabbitmq-server/rabbitmq-server.initd46
-rw-r--r--testing/racket/APKBUILD61
-rw-r--r--testing/radarr/0001-disable-restart.patch20
-rw-r--r--testing/radarr/APKBUILD101
-rw-r--r--testing/radarr/package_info4
-rw-r--r--testing/radarr/radarr.confd10
-rw-r--r--testing/radarr/radarr.initd34
-rw-r--r--testing/radarr/radarr.pre-install6
-rw-r--r--testing/radeontop/APKBUILD34
-rw-r--r--testing/radeontop/no-git-version.patch14
-rw-r--r--testing/radio-cli/APKBUILD31
-rw-r--r--testing/rage/APKBUILD57
-rw-r--r--testing/rage/fix-build-32bit.patch229
-rw-r--r--testing/rancher-cli/APKBUILD31
-rw-r--r--testing/randrctl/APKBUILD7
-rw-r--r--testing/rankwidth/APKBUILD36
-rw-r--r--testing/rankwidth/igraph-0.10.1.patch11
-rw-r--r--testing/rapidfuzz/APKBUILD45
-rw-r--r--testing/rapidfuzz/cstdint.patch12
-rw-r--r--testing/rapidyaml/APKBUILD57
-rw-r--r--testing/raspberrypi-usbboot/APKBUILD6
-rw-r--r--testing/rathole/APKBUILD14
-rw-r--r--testing/ratpoison/APKBUILD40
-rw-r--r--testing/rattler-build/APKBUILD61
-rw-r--r--testing/rauc/APKBUILD77
-rw-r--r--testing/rav1e/APKBUILD58
-rw-r--r--testing/raylib-wayland/APKBUILD42
-rw-r--r--testing/raylib/APKBUILD36
-rw-r--r--testing/razercfg/APKBUILD5
-rw-r--r--testing/razergenie/APKBUILD35
-rw-r--r--testing/rbw/APKBUILD20
-rw-r--r--testing/rclone-browser/APKBUILD5
-rw-r--r--testing/rcon-cli/APKBUILD24
-rw-r--r--testing/rcs/APKBUILD29
-rw-r--r--testing/rdedup/APKBUILD13
-rw-r--r--testing/rdedup/getrandom-0.2.10.patch61
-rw-r--r--testing/rdma-core/APKBUILD39
-rw-r--r--testing/rdrview/APKBUILD28
-rw-r--r--testing/rdrview/curl-7.85.0-CURLOPT_PROTOCOLS-deprecation.patch24
-rw-r--r--testing/reaction/APKBUILD49
-rw-r--r--testing/reaction/reaction.confd4
-rwxr-xr-xtesting/reaction/reaction.initd14
-rw-r--r--testing/reaction/reaction.yml95
-rw-r--r--testing/read-it-later/0001-Cargo-Update-the-glib-dependencies.patch5911
-rw-r--r--testing/read-it-later/0002-Cargo-Update-most-remainig-dependencies.patch1711
-rw-r--r--testing/read-it-later/0003-gitlab-ci.yml-Update-the-containers.patch43
-rw-r--r--testing/read-it-later/0004-Cargo.toml-Update-isahc.patch114
-rwxr-xr-xtesting/read-it-later/APKBUILD40
-rw-r--r--testing/readosm/APKBUILD1
-rw-r--r--testing/reason/APKBUILD48
-rw-r--r--testing/reason/rtop.sh.patch41
-rw-r--r--testing/reaver-wps-fork-t6x/APKBUILD2
-rw-r--r--testing/recoll/APKBUILD32
-rw-r--r--testing/recoll/fstreewalk.diff12
-rw-r--r--testing/recoll/no-glibc.patch14
-rw-r--r--testing/recoll/xattrs.patch11
-rw-r--r--testing/recyclarr-cli/0001-disable-gitversion.patch32
-rw-r--r--testing/recyclarr-cli/0002-build-dotnet8.patch23
-rw-r--r--testing/recyclarr-cli/APKBUILD57
-rw-r--r--testing/redict/APKBUILD68
-rw-r--r--testing/redict/redict-sentinel.initd33
-rw-r--r--testing/redict/redict.conf.patch71
-rw-r--r--testing/redict/redict.confd7
-rw-r--r--testing/redict/redict.initd41
-rw-r--r--testing/redict/redict.logrotate4
-rw-r--r--testing/redict/redict.post-install11
-rw-r--r--testing/redict/redict.pre-install6
-rw-r--r--testing/redict/sentinel.conf.patch13
-rw-r--r--testing/refind/APKBUILD8
-rw-r--r--testing/reg/APKBUILD7
-rw-r--r--testing/regal/APKBUILD55
-rw-r--r--testing/rekor/APKBUILD64
-rw-r--r--testing/release-plz/APKBUILD55
-rw-r--r--testing/remake/APKBUILD2
-rw-r--r--testing/remind-caldav/APKBUILD5
-rw-r--r--testing/renderdoc/APKBUILD41
-rw-r--r--testing/renderdoc/musl-fix.patch73
-rw-r--r--testing/repgrep/APKBUILD58
-rw-r--r--testing/repo/APKBUILD13
-rw-r--r--testing/repowerd/0001-dbus-Remove-at_console-filtering.patch30
-rw-r--r--testing/repowerd/APKBUILD55
-rw-r--r--testing/repowerd/repowerd.initd12
-rw-r--r--testing/reproc/APKBUILD40
-rw-r--r--testing/reprotest/APKBUILD30
-rw-r--r--testing/reredirect/APKBUILD28
-rw-r--r--testing/responder/APKBUILD32
-rw-r--r--testing/responder/fhs.patch69
-rw-r--r--testing/restart-services/APKBUILD1
-rw-r--r--testing/restic.mk/APKBUILD4
-rw-r--r--testing/restinio/APKBUILD50
-rw-r--r--testing/restinio/lfs64.patch20
-rw-r--r--testing/retroforth/APKBUILD27
-rw-r--r--testing/revprog/APKBUILD24
-rw-r--r--testing/rezolus/APKBUILD26
-rw-r--r--testing/rezolus/openssl.patch60
-rw-r--r--testing/rgxg/APKBUILD2
-rw-r--r--testing/rhasspy-nlu/APKBUILD36
-rw-r--r--testing/ri-li/APKBUILD12
-rw-r--r--testing/ri-li/pointers.patch35
-rw-r--r--testing/riemann-cli/APKBUILD17
-rw-r--r--testing/riemann-cli/no-unstable.patch13
-rw-r--r--testing/rime-plum/APKBUILD54
-rw-r--r--testing/rinetd/APKBUILD55
-rw-r--r--testing/rinetd/rinetd.initd13
-rw-r--r--testing/rio/APKBUILD45
-rw-r--r--testing/ripasso-cursive/APKBUILD24
-rw-r--r--testing/ripdrag/APKBUILD35
-rw-r--r--testing/river/APKBUILD37
-rw-r--r--testing/rizin-cutter/APKBUILD35
-rw-r--r--testing/rizin/APKBUILD54
-rw-r--r--testing/rkdeveloptool/APKBUILD3
-rw-r--r--testing/rke/APKBUILD16
-rw-r--r--testing/rlottie/APKBUILD38
-rw-r--r--testing/rmlint/APKBUILD44
-rw-r--r--testing/rmlint/remove-usage-of-lseek64.patch18
-rw-r--r--testing/rnc2rng/APKBUILD28
-rw-r--r--testing/rnote/APKBUILD57
-rw-r--r--testing/rofi-blocks/APKBUILD2
-rw-r--r--testing/rofi-json-menu/APKBUILD2
-rw-r--r--testing/rosdep/APKBUILD5
-rw-r--r--testing/rosenpass/APKBUILD34
-rw-r--r--testing/roswell/APKBUILD8
-rw-r--r--testing/rpg-cli/APKBUILD7
-rw-r--r--testing/rpki-client/APKBUILD41
-rwxr-xr-xtesting/rpki-client/rpki-client.pre-install5
-rw-r--r--testing/rqlite/APKBUILD55
-rw-r--r--testing/rss-email/APKBUILD46
-rw-r--r--testing/rsstail/APKBUILD2
-rw-r--r--testing/rtl-power-fftw/APKBUILD14
-rw-r--r--testing/rtl-power-fftw/missing-cstdint.patch12
-rw-r--r--testing/rtl8812au-src/APKBUILD42
-rw-r--r--testing/rtl8821ce-src/APKBUILD6
-rw-r--r--testing/rtl88x2bu-src/APKBUILD8
-rw-r--r--testing/rtmidi/APKBUILD12
-rw-r--r--testing/rtmidi/fix-pthread.patch37
-rw-r--r--testing/rtptools/APKBUILD2
-rw-r--r--testing/rtw89-src/APKBUILD10
-rw-r--r--testing/rubberband/APKBUILD38
-rw-r--r--testing/ruby-build/APKBUILD39
-rwxr-xr-xtesting/ruby-build/ruby-build.post-install11
-rw-r--r--testing/rue/APKBUILD6
-rw-r--r--testing/ruff-lsp/APKBUILD40
-rw-r--r--testing/runst/APKBUILD42
-rw-r--r--testing/rust-script/APKBUILD33
-rw-r--r--testing/rustdesk-server/APKBUILD54
-rw-r--r--testing/rustdesk-server/cargo.lock.patch53
-rw-r--r--testing/rustdesk-server/hbbr.confd11
-rwxr-xr-xtesting/rustdesk-server/hbbr.initd19
-rw-r--r--testing/rustdesk-server/hbbs.confd11
-rwxr-xr-xtesting/rustdesk-server/hbbs.initd18
-rwxr-xr-xtesting/rustdesk-server/rustdesk-server.pre-install6
-rw-r--r--testing/rustic/APKBUILD82
-rw-r--r--testing/rustic/build-with-system-tls.patch225
-rw-r--r--testing/rustic/fix-abscissa_core-features.patch35
-rw-r--r--testing/rustic/make-self-update-optional.patch101
-rw-r--r--testing/rustic/rustic_core-add-tls-native.patch53
-rw-r--r--testing/rustscan/APKBUILD36
-rw-r--r--testing/rustscan/Cargo.lock.patch1093
-rw-r--r--testing/rustypaste-cli/APKBUILD38
-rw-r--r--testing/ruuvi-prometheus/APKBUILD17
-rw-r--r--testing/rvlprog/APKBUILD24
-rw-r--r--testing/ry/APKBUILD2
-rw-r--r--testing/s-postgray/APKBUILD15
-rw-r--r--testing/s3cmd/APKBUILD29
-rw-r--r--testing/s3fs-fuse/APKBUILD42
-rw-r--r--testing/s5cmd/APKBUILD37
-rw-r--r--testing/sacc/APKBUILD4
-rw-r--r--testing/sandbar/APKBUILD24
-rw-r--r--testing/sane-airscan/APKBUILD8
-rw-r--r--testing/sanlock/APKBUILD30
-rw-r--r--testing/sanoid/APKBUILD42
-rw-r--r--testing/sanoid/sanoid-prune.cron2
-rw-r--r--testing/sanoid/sanoid.cron2
-rw-r--r--testing/satellite/APKBUILD7
-rw-r--r--testing/satty/APKBUILD52
-rw-r--r--testing/sauerbraten/APKBUILD6
-rw-r--r--testing/sauerbraten/sdl2_directfb_build_fix.patch13
-rw-r--r--testing/sbase/APKBUILD2
-rw-r--r--testing/sblg/APKBUILD34
-rw-r--r--testing/sblim-sfcc/APKBUILD2
-rw-r--r--testing/sblim-wbemcli/APKBUILD2
-rw-r--r--testing/sbt/APKBUILD35
-rw-r--r--testing/sc-controller/APKBUILD53
-rw-r--r--testing/sc-im/APKBUILD6
-rw-r--r--testing/sc3-plugins/APKBUILD34
-rw-r--r--testing/sc3plugins/APKBUILD34
-rw-r--r--testing/scaleway-cli/APKBUILD46
-rw-r--r--testing/scalingo/APKBUILD12
-rw-r--r--testing/scap-workbench/APKBUILD51
-rw-r--r--testing/scap-workbench/appdata.patch13
-rw-r--r--testing/schismtracker/APKBUILD27
-rw-r--r--testing/schroot/APKBUILD72
-rw-r--r--testing/schroot/busybox-compat.patch50
-rw-r--r--testing/schroot/getent.patch25
-rw-r--r--testing/schroot/getmntent.patch60
-rw-r--r--testing/schroot/musl.patch51
-rw-r--r--testing/schroot/pam.d.schroot.patch20
-rw-r--r--testing/schroot/remove-networks.patch41
-rw-r--r--testing/schroot/schroot-cppunit.patch11
-rw-r--r--testing/scooper/APKBUILD2
-rw-r--r--testing/scratch/APKBUILD2
-rw-r--r--testing/screengrab/APKBUILD36
-rw-r--r--testing/screenkey/APKBUILD16
-rw-r--r--testing/scrypt/APKBUILD6
-rw-r--r--testing/scummvm/APKBUILD8
-rw-r--r--testing/sd/APKBUILD49
-rw-r--r--testing/sdl/0001-CVE-2019-7572.patch64
-rw-r--r--testing/sdl/0001-CVE-2019-7573.patch83
-rw-r--r--testing/sdl/0001-CVE-2019-7574.patch71
-rw-r--r--testing/sdl/0001-CVE-2019-7575.patch84
-rw-r--r--testing/sdl/0001-CVE-2019-7577.patch75
-rw-r--r--testing/sdl/0001-CVE-2019-7578.patch67
-rw-r--r--testing/sdl/0001-CVE-2019-7635.patch53
-rw-r--r--testing/sdl/0001-CVE-2019-7636.patch29
-rw-r--r--testing/sdl/0001-CVE-2019-7637.patch182
-rw-r--r--testing/sdl/0002-CVE-2019-13616.patch16
-rw-r--r--testing/sdl/0002-CVE-2019-7572.patch59
-rw-r--r--testing/sdl/0002-CVE-2019-7577.patch57
-rw-r--r--testing/sdl/0002-CVE-2019-7635.patch21
-rw-r--r--testing/sdl/0002-CVE-2019-7637.patch42
-rw-r--r--testing/sdl/APKBUILD101
-rw-r--r--testing/sdl/SDL-1.2.10-GrabNotViewable.patch22
-rw-r--r--testing/sdl/SDL-1.2.15-const_XData32.patch16
-rw-r--r--testing/sdparm/APKBUILD2
-rw-r--r--testing/sdrangel/APKBUILD84
-rw-r--r--testing/sdrangel/no-march-magic.patch14
-rw-r--r--testing/searchmonkey/APKBUILD6
-rw-r--r--testing/seastar/APKBUILD96
-rw-r--r--testing/seaweedfs/APKBUILD28
-rw-r--r--testing/secsipidx/APKBUILD37
-rw-r--r--testing/secsipidx/go.mod5
-rw-r--r--testing/secsipidx/go.sum2
-rw-r--r--testing/sedutil/APKBUILD2
-rw-r--r--testing/seed7/APKBUILD96
-rw-r--r--testing/seed7/makefile.patch10
-rw-r--r--testing/sems/APKBUILD80
-rw-r--r--testing/sems/Fix-find-openssl.patch11
-rw-r--r--testing/sems/Fix-openssl-1.1.patch25
-rw-r--r--testing/sems/remove-dsm.patch23
-rw-r--r--testing/sems/sems-0001-Force-to-use-system-wide-GSM-includes.patch26
-rw-r--r--testing/sems/sems-0002-Allow-rewrite-of-custom-makefiles-by-CMake.patch37
-rw-r--r--testing/sems/sems-0003-Set-CFG_PREFIX-to-empty-string-by-default.patch26
-rw-r--r--testing/sems/sems-0004-musl-fixes.patch1
-rw-r--r--testing/sems/sems-0011-Add-SBC-dependencies.patch22
-rw-r--r--testing/sems/sems-0013-Fix-for-C-11.patch45
-rw-r--r--testing/sems/sems-0014-further-musl-fixes.patch12
-rw-r--r--testing/sems/std-types.patch281
-rw-r--r--testing/senpai/APKBUILD30
-rw-r--r--testing/sentinel-minipot/APKBUILD77
-rw-r--r--testing/sentinel-minipot/fix-configure-msgpack-c.patch7
-rw-r--r--testing/sentinel-minipot/no-valgrind.patch26
-rw-r--r--testing/sentinel-minipot/sentinel-minipot.confd38
-rw-r--r--testing/sentinel-minipot/sentinel-minipot.initd37
-rw-r--r--testing/sentinel-minipot/sentinel-minipot.pre-install5
-rw-r--r--testing/sentinel-proxy/APKBUILD78
-rw-r--r--testing/sentinel-proxy/example.cfg.patch34
-rw-r--r--testing/sentinel-proxy/fix-configure-msgpack-c.patch7
-rw-r--r--testing/sentinel-proxy/sentinel-proxy.confd17
-rw-r--r--testing/sentinel-proxy/sentinel-proxy.initd33
-rw-r--r--testing/sentinel-proxy/sentinel-proxy.pre-install6
-rw-r--r--testing/sentrypeer/APKBUILD27
-rw-r--r--testing/sequoia-chameleon-gnupg/APKBUILD45
-rw-r--r--testing/sequoia-sqv/APKBUILD62
-rw-r--r--testing/sequoia-sqv/cargo-update-sha1collisiondetection.patch23
-rw-r--r--testing/serd/APKBUILD24
-rw-r--r--testing/serialdv/APKBUILD36
-rw-r--r--testing/setroot/APKBUILD11
-rw-r--r--testing/setroot/imlib2.patch13
-rw-r--r--testing/sflowtool/APKBUILD30
-rw-r--r--testing/sfwbar/APKBUILD13
-rw-r--r--testing/sgt-puzzles/APKBUILD38
-rw-r--r--testing/shadowsocks-libev/APKBUILD12
-rw-r--r--testing/shairport-sync/APKBUILD48
-rw-r--r--testing/shairport-sync/shairport-sync.initd14
-rw-r--r--testing/shc/APKBUILD2
-rw-r--r--testing/shellinabox/APKBUILD4
-rw-r--r--testing/shellspec/APKBUILD22
-rw-r--r--testing/shfm/APKBUILD3
-rw-r--r--testing/shipments/APKBUILD21
-rw-r--r--testing/shntool/24bit.patch46
-rw-r--r--testing/shntool/APKBUILD11
-rw-r--r--testing/shutdown-clear-machine-id/APKBUILD20
-rw-r--r--testing/shutdown-clear-machine-id/clear-machine-id.shutdown.initd8
-rw-r--r--testing/shutdown-clear-machine-id/shutdown-clear-machine-id.post-install13
-rw-r--r--testing/sieve-connect/APKBUILD29
-rw-r--r--testing/sigil/APKBUILD67
-rw-r--r--testing/sigma/APKBUILD32
-rw-r--r--testing/sigma/remove_data_file_installation.patch26
-rw-r--r--testing/signal-cli/APKBUILD46
-rw-r--r--testing/signal-cli/FixServiceConfigWrongExceptionCatched.patch20
-rw-r--r--testing/signal-desktop/APKBUILD489
-rw-r--r--testing/signal-desktop/bettersqlite-use-system-sqlcipher.patch56
-rw-r--r--testing/signal-desktop/libsignal-auditable.patch11
-rw-r--r--testing/signal-desktop/ringrtc-webrtc-renamed.patch21
-rwxr-xr-xtesting/signal-desktop/signal-desktop6
-rw-r--r--testing/signal-desktop/signal-disable-updates.patch9
-rw-r--r--testing/signal-desktop/signal-show-window-please.patch11
-rw-r--r--testing/signal-desktop/signal-update-links.patch25
-rw-r--r--testing/signal-desktop/webrtc-compiler.patch40
-rw-r--r--testing/signal-desktop/webrtc-gcc13.patch20
-rw-r--r--testing/signal-desktop/webrtc-shared-like-my-wife.patch28
-rw-r--r--testing/sigrok-cli/APKBUILD6
-rw-r--r--testing/siji-ng/APKBUILD24
-rw-r--r--testing/silc-client/APKBUILD23
-rw-r--r--testing/silc-client/format-security.patch22
-rw-r--r--testing/simavr/APKBUILD4
-rw-r--r--testing/simdjson/APKBUILD35
-rw-r--r--testing/simgear/APKBUILD17
-rw-r--r--testing/simgear/gcc12.patch12
-rw-r--r--testing/simh/APKBUILD2
-rw-r--r--testing/simpleble/APKBUILD66
-rw-r--r--testing/simpleble/bluez.patch14
-rw-r--r--testing/simpleble/fmt.patch24
-rw-r--r--testing/simpleiot/APKBUILD35
-rw-r--r--testing/simpleiot/dont-run-golangci.patch10
-rw-r--r--testing/simplescreenrecorder/APKBUILD54
-rw-r--r--testing/simplescreenrecorder/ffmpeg5.patch239
-rw-r--r--testing/simplesnap/0001-fix-simplesnap-line-2-dotlockfile-command-not-found.patch66
-rw-r--r--testing/simplesnap/0002-trap-do-not-define-ECODE-at-setup.patch41
-rw-r--r--testing/simplesnap/0003-use-CHECKHOST-in-checkbackups-function.patch32
-rw-r--r--testing/simplesnap/APKBUILD39
-rw-r--r--testing/sing-box/APKBUILD50
-rw-r--r--testing/sing-box/sing-box.initd17
-rw-r--r--testing/sing-geoip/APKBUILD27
-rw-r--r--testing/sing-geosite/APKBUILD24
-rw-r--r--testing/singular/APKBUILD73
-rw-r--r--testing/singularity/APKBUILD77
-rw-r--r--testing/sipexer/APKBUILD11
-rw-r--r--testing/sipgrep/APKBUILD2
-rw-r--r--testing/siril/APKBUILD49
-rw-r--r--testing/siril/lfs64.patch41
-rw-r--r--testing/sish/APKBUILD35
-rw-r--r--testing/sish/sish.confd4
-rw-r--r--testing/sish/sish.initd19
-rw-r--r--testing/sish/sish.pre-install6
-rw-r--r--testing/skia-sharp/APKBUILD185
-rw-r--r--testing/skribilo/0001-tests-Determine-current-test-runner-before-test-end-.patch114
-rw-r--r--testing/skribilo/APKBUILD40
-rw-r--r--testing/slick-greeter/APKBUILD16
-rw-r--r--testing/slick-greeter/get-rid-of-gnome-common.patch84
-rw-r--r--testing/slides/APKBUILD28
-rw-r--r--testing/slidge-matridge/APKBUILD67
-rw-r--r--testing/slidge-matridge/matridge.conf8
-rw-r--r--testing/slidge/APKBUILD79
-rw-r--r--testing/slidge/common.conf.example7
-rw-r--r--testing/slidge/slidge.confd17
-rw-r--r--testing/slidge/slidge.initd37
-rw-r--r--testing/slidge/slidge.pre-install11
-rw-r--r--testing/slrn/APKBUILD39
-rw-r--r--testing/slrn/terminfo.patch12
-rw-r--r--testing/slurm/APKBUILD2
-rw-r--r--testing/smlsharp/APKBUILD16
-rw-r--r--testing/smlsharp/llvm14.patch18
-rw-r--r--testing/smplxmpp/APKBUILD44
-rw-r--r--testing/smplxmpp/argp.patch24
-rw-r--r--testing/smplxmpp/fmt10.patch43
-rw-r--r--testing/snac/APKBUILD40
-rw-r--r--testing/snac/snac.initd83
-rw-r--r--testing/snac/snac.pre-install11
-rw-r--r--testing/snapper/APKBUILD63
-rw-r--r--testing/snapper/musl-stdout_stderr.patch15
-rw-r--r--testing/snapper/skip-locale-tests.patch13
-rw-r--r--testing/snapper/statvfs64.patch15
-rw-r--r--testing/snapraid/APKBUILD4
-rw-r--r--testing/sndfile-tools/APKBUILD38
-rw-r--r--testing/snes9x/APKBUILD61
-rw-r--r--testing/snore/APKBUILD25
-rw-r--r--testing/snowflake/APKBUILD36
-rw-r--r--testing/so/APKBUILD32
-rw-r--r--testing/soapy-bladerf/APKBUILD30
-rw-r--r--testing/soapy-hackrf/APKBUILD5
-rw-r--r--testing/soapy-sdr-remote/APKBUILD5
-rw-r--r--testing/soapy-sdr/APKBUILD40
-rw-r--r--testing/soju/APKBUILD42
-rw-r--r--testing/soju/config.patch8
-rw-r--r--testing/soju/makefile.patch14
-rw-r--r--testing/soju/soju.initd6
-rw-r--r--testing/soju/soju.pre-install3
-rw-r--r--testing/solaar/APKBUILD51
-rw-r--r--testing/solaar/solaar.pre-install7
-rw-r--r--testing/solaar/solaar.rules32
-rw-r--r--testing/solanum/10-gio-types.patch11
-rw-r--r--testing/solanum/APKBUILD51
-rw-r--r--testing/solanum/appdata.patch14
-rw-r--r--testing/solarus-engine/APKBUILD64
-rw-r--r--testing/solarus-quest-editor/APKBUILD55
-rw-r--r--testing/somebar/APKBUILD37
-rw-r--r--testing/sonar-scanner/APKBUILD43
-rw-r--r--testing/sonar-scanner/fix-reflection.patch22
-rw-r--r--testing/sonarr/0001-disable-restart.patch20
-rw-r--r--testing/sonarr/APKBUILD104
-rw-r--r--testing/sonarr/package_info4
-rw-r--r--testing/sonarr/sonarr.confd10
-rw-r--r--testing/sonarr/sonarr.initd34
-rw-r--r--testing/sonarr/sonarr.pre-install6
-rw-r--r--testing/songrec/APKBUILD43
-rw-r--r--testing/sops/APKBUILD41
-rw-r--r--testing/sops/fix-tests.patch17
-rw-r--r--testing/sops/skip-hcvault-tests.patch12
-rw-r--r--testing/sops/skip-pgp-tests.patch22
-rw-r--r--testing/sopwith/APKBUILD36
-rw-r--r--testing/sopwith/select.patch12
-rw-r--r--testing/sord/APKBUILD27
-rw-r--r--testing/sos/APKBUILD8
-rw-r--r--testing/soundfont-vintage-dreams-waves/APKBUILD4
-rw-r--r--testing/spacectl/APKBUILD54
-rw-r--r--testing/spacenavd/APKBUILD10
-rw-r--r--testing/spampd/APKBUILD23
-rw-r--r--testing/spark/APKBUILD2
-rw-r--r--testing/spdk/APKBUILD50
-rw-r--r--testing/speakersafetyd/APKBUILD35
-rw-r--r--testing/speakersafetyd/speakersafetyd.initd7
-rw-r--r--testing/spectrwm/APKBUILD43
-rw-r--r--testing/speedcrunch/APKBUILD35
-rw-r--r--testing/speedtest-go/APKBUILD18
-rw-r--r--testing/speedtest-go/settings-change.patch10
-rw-r--r--testing/speedtest/APKBUILD8
-rw-r--r--testing/speedtest_exporter/APKBUILD22
-rw-r--r--testing/spike/APKBUILD34
-rw-r--r--testing/spin/APKBUILD2
-rw-r--r--testing/spiritvnc/APKBUILD26
-rw-r--r--testing/spirv-llvm-translator/APKBUILD49
-rw-r--r--testing/splitter/APKBUILD48
-rw-r--r--testing/splix/APKBUILD27
-rw-r--r--testing/splix/error.patch13
-rw-r--r--testing/spnavcfg/APKBUILD13
-rw-r--r--testing/spnavcfg/makefile.patch14
-rw-r--r--testing/sponskrub/APKBUILD6
-rw-r--r--testing/spotify-player/APKBUILD42
-rw-r--r--testing/spotify-qt/APKBUILD36
-rw-r--r--testing/spotify-qt/disable-crash-handler.patch20
-rw-r--r--testing/spotify-tui/APKBUILD23
-rw-r--r--testing/spotify-tui/deps.patch2603
-rw-r--r--testing/spotifyd/APKBUILD60
-rw-r--r--testing/spotifyd/spotifyd.conf23
-rw-r--r--testing/spotifyd/spotifyd.initd18
-rw-r--r--testing/spotifyd/spotifyd.pre-install5
-rw-r--r--testing/spreed-webrtc/APKBUILD71
-rw-r--r--testing/spreed-webrtc/fix-build-with-gomodules.patch222
-rw-r--r--testing/spreed-webrtc/go.mod23
-rw-r--r--testing/spreed-webrtc/go.sum39
-rw-r--r--testing/spreed-webrtc/spreed-webrtc.initd22
-rw-r--r--testing/spreed-webrtc/spreed-webrtc.pre-install4
-rw-r--r--testing/spvm-errno/APKBUILD38
-rw-r--r--testing/spvm-math/APKBUILD38
-rw-r--r--testing/spvm-mime-base64/APKBUILD38
-rw-r--r--testing/spvm-thread/APKBUILD38
-rw-r--r--testing/sqlar/APKBUILD2
-rw-r--r--testing/sqlcipher/APKBUILD51
-rw-r--r--testing/sqliteodbc/APKBUILD6
-rw-r--r--testing/sqlmap/APKBUILD58
-rw-r--r--testing/sqlmap/reduce-amount-of-third-party-dependencies.patch897
-rw-r--r--testing/sqm-scripts/APKBUILD7
-rw-r--r--testing/squashfs-tools-ng/0001-Fix-struct-offset-testing-in-ABI-test-case.patch127
-rw-r--r--testing/squashfs-tools-ng/APKBUILD13
-rw-r--r--testing/squeak-vm/APKBUILD2
-rw-r--r--testing/srain/APKBUILD37
-rw-r--r--testing/sratom/APKBUILD24
-rw-r--r--testing/srb2/APKBUILD45
-rw-r--r--testing/srb2/fix-backtrace.patch14
-rw-r--r--testing/sregex/APKBUILD2
-rw-r--r--testing/ssdfs-tools/APKBUILD41
-rw-r--r--testing/ssh-cert-authority/APKBUILD15
-rw-r--r--testing/ssh-honeypot/APKBUILD6
-rw-r--r--testing/ssh-tools/APKBUILD16
-rw-r--r--testing/sshsrv/APKBUILD34
-rw-r--r--testing/sshuttle/APKBUILD16
-rw-r--r--testing/sshuttle/no-scm.patch18
-rw-r--r--testing/ssldump/APKBUILD37
-rw-r--r--testing/sslh/APKBUILD72
-rw-r--r--testing/sslh/config.patch26
-rw-r--r--testing/sslh/fail2ban.patch22
-rw-r--r--testing/sslh/fix-make-install.patch13
-rw-r--r--testing/sslh/sslh.confd18
-rw-r--r--testing/sslh/sslh.initd15
-rw-r--r--testing/sslscan/APKBUILD25
-rw-r--r--testing/sssd/0001-makefile.patch7
-rw-r--r--testing/sssd/0002-src.patch35
-rw-r--r--testing/sssd/0003-alpine.patch94
-rw-r--r--testing/sssd/APKBUILD46
-rw-r--r--testing/sssd/cifsidmap.h160
-rw-r--r--testing/sssd/musl_fixup.patch27
-rw-r--r--testing/sssd/nss.h15
-rw-r--r--testing/sssd/sssd.initd10
-rw-r--r--testing/stack/APKBUILD53
-rw-r--r--testing/stack/aeson.patch46
-rw-r--r--testing/stack/cabal.config2912
-rw-r--r--testing/stack/ghc9.0.x.patch212
-rw-r--r--testing/stack/persistent.patch46
-rw-r--r--testing/stardict/APKBUILD18
-rw-r--r--testing/stardict/gnome-doc-utils.patch21
-rw-r--r--testing/starfighter/APKBUILD30
-rw-r--r--testing/stargazer-gmi/APKBUILD41
-rw-r--r--testing/stargazer/APKBUILD39
-rw-r--r--testing/stargazer/fix-name-max.patch10
-rw-r--r--testing/startup/APKBUILD7
-rw-r--r--testing/stayrtr/APKBUILD54
-rw-r--r--testing/stayrtr/stayrtr.confd2
-rw-r--r--testing/stayrtr/stayrtr.initd26
-rw-r--r--testing/stayrtr/stayrtr.pre-install6
-rw-r--r--testing/steamguard-cli/APKBUILD48
-rw-r--r--testing/steamguard-cli/openssl.patch393
-rw-r--r--testing/steghide/APKBUILD34
-rw-r--r--testing/steghide/build-fixes-new-gcc.patch164
-rw-r--r--testing/steghide/missing-files-configure-in.patch18
-rw-r--r--testing/steghide/steghide-0.5.1-am.patch19
-rw-r--r--testing/stellarsolver/0001-don-t-mess-with-qsort_r.patch53
-rw-r--r--testing/stellarsolver/APKBUILD49
-rw-r--r--testing/step-certificates/01-Makefile-GOFLAGS.patch64
-rw-r--r--testing/step-certificates/02-Makefile-yubikey-and-pkcs11-binary.patch41
-rw-r--r--testing/step-certificates/APKBUILD60
-rw-r--r--testing/step-certificates/step-ca.confd16
-rw-r--r--testing/step-certificates/step-ca.initd52
-rw-r--r--testing/step-certificates/step-ca.logrotate7
-rw-r--r--testing/step-certificates/step-certificates.pre-install28
-rw-r--r--testing/stern/APKBUILD53
-rw-r--r--testing/stgit/APKBUILD5
-rw-r--r--testing/sthttpd/APKBUILD2
-rw-r--r--testing/stockfish/APKBUILD65
-rw-r--r--testing/stockfish/no-lto.patch47
-rw-r--r--testing/stone-soup/APKBUILD61
-rw-r--r--testing/stone-soup/no-execinfo.patch13
-rw-r--r--testing/stone-soup/root-owner.patch13
-rw-r--r--testing/straw-viewer/APKBUILD5
-rw-r--r--testing/strawberry/APKBUILD64
-rw-r--r--testing/streamlink/APKBUILD35
-rw-r--r--testing/strfry/APKBUILD132
-rw-r--r--testing/strfry/pre-build-pkgver_patch11
-rw-r--r--testing/strfry/strfry-conf.patch20
-rw-r--r--testing/strfry/strfry.confd7
-rw-r--r--testing/strfry/strfry.initd30
-rw-r--r--testing/strfry/strfry.pre-install11
-rw-r--r--testing/stubby/APKBUILD50
-rw-r--r--testing/stubby/stubby.confd2
-rw-r--r--testing/stubby/stubby.initd15
-rw-r--r--testing/stubbyboot/APKBUILD58
-rw-r--r--testing/stubbyboot/no-werror.patch13
-rw-r--r--testing/sturmreader/APKBUILD37
-rw-r--r--testing/sturmreader/fix-hardcoded-quazip-version.patch11
-rw-r--r--testing/sturmreader/intl.patch13
-rw-r--r--testing/stw/APKBUILD30
-rw-r--r--testing/stylua/APKBUILD41
-rw-r--r--testing/subdl/0001-Remove-bogus-empty-package.patch31
-rw-r--r--testing/subdl/APKBUILD32
-rw-r--r--testing/sublime-music/APKBUILD28
-rw-r--r--testing/sublime-music/fix-python3.11.patch35
-rw-r--r--testing/subliminal/APKBUILD31
-rw-r--r--testing/subtitleeditor/APKBUILD2
-rw-r--r--testing/sudo-ldap/APKBUILD79
-rw-r--r--testing/suil/APKBUILD24
-rw-r--r--testing/sunwait/APKBUILD25
-rw-r--r--testing/supercollider/APKBUILD10
-rw-r--r--testing/supercollider/sndfile.patch12
-rw-r--r--testing/supermin/APKBUILD4
-rw-r--r--testing/surf/APKBUILD12
-rw-r--r--testing/surf/webkit2gtk-4.1.patch19
-rw-r--r--testing/surfraw/APKBUILD38
-rw-r--r--testing/surgescript/APKBUILD33
-rw-r--r--testing/suru-icon-theme/APKBUILD21
-rw-r--r--testing/svgbob/APKBUILD16
-rw-r--r--testing/svgbob/update-cargo-lock.patch22
-rw-r--r--testing/svls/APKBUILD35
-rw-r--r--testing/svt-av1/APKBUILD35
-rw-r--r--testing/svt-hevc/APKBUILD10
-rw-r--r--testing/svt-vp9/APKBUILD14
-rw-r--r--testing/svxlink-sounds-en_us-heather-16k/APKBUILD22
-rw-r--r--testing/swaks/APKBUILD8
-rw-r--r--testing/swappy/APKBUILD8
-rw-r--r--testing/sway-audio-idle-inhibit/APKBUILD33
-rw-r--r--testing/swayhide/APKBUILD18
-rw-r--r--testing/swi-prolog/APKBUILD36
-rw-r--r--testing/swig3/APKBUILD4
-rw-r--r--testing/swtpm/APKBUILD45
-rw-r--r--testing/sxcs/APKBUILD27
-rw-r--r--testing/syft/APKBUILD35
-rw-r--r--testing/sylpheed-imap-notify/APKBUILD2
-rw-r--r--testing/symbiyosys/APKBUILD25
-rw-r--r--testing/sympow/APKBUILD39
-rw-r--r--testing/synadm/APKBUILD29
-rw-r--r--testing/synapse-bt/APKBUILD15
-rw-r--r--testing/synapse-bt/openssl3.patch2608
-rw-r--r--testing/syncthing-gtk/APKBUILD34
-rw-r--r--testing/sysls/APKBUILD24
-rw-r--r--testing/t2sz/APKBUILD4
-rw-r--r--testing/tabby/APKBUILD19
-rw-r--r--testing/tabby/usr-bin.patch10
-rw-r--r--testing/tachyon/APKBUILD49
-rw-r--r--testing/tagutil/APKBUILD33
-rw-r--r--testing/tagutil/patch-musl.patch32
-rw-r--r--testing/tailspin/APKBUILD47
-rw-r--r--testing/tang/APKBUILD57
-rw-r--r--testing/tang/man-pages.patch20
-rw-r--r--testing/tang/tang.initd27
-rw-r--r--testing/tang/tang.pre-install10
-rw-r--r--testing/tang/tangd-wrapper4
-rw-r--r--testing/tangctl/APKBUILD47
-rw-r--r--testing/tangctl/tang-location.patch12
-rw-r--r--testing/tangram/APKBUILD63
-rw-r--r--testing/tangram/busybox.patch20
-rw-r--r--testing/tanidvr/APKBUILD4
-rw-r--r--testing/tanka/APKBUILD37
-rw-r--r--testing/tartube/APKBUILD37
-rw-r--r--testing/taskcafe/APKBUILD16
-rw-r--r--testing/tauri-cli/APKBUILD35
-rw-r--r--testing/tayga/APKBUILD35
-rw-r--r--testing/tayga/implicit-function-decl.patch12
-rw-r--r--testing/tbftss/0001-remove-debug-flags.patch10
-rw-r--r--testing/tbftss/APKBUILD39
-rw-r--r--testing/tcc/APKBUILD29
-rw-r--r--testing/tcc/libtcc.pc.in12
-rw-r--r--testing/tcl-curl/APKBUILD63
-rw-r--r--testing/tcl-lib/APKBUILD34
-rw-r--r--testing/tcl-readline/APKBUILD41
-rw-r--r--testing/tcmu-runner/APKBUILD16
-rw-r--r--testing/tcmu-runner/fix-musl-compilation.patch143
-rw-r--r--testing/tcmu-runner/time_t-size-fix.patch29
-rw-r--r--testing/tcpreplay/APKBUILD60
-rw-r--r--testing/tcpreplay/skip-tests-require-root.patch109
-rw-r--r--testing/td-agent-bit/APKBUILD6
-rw-r--r--testing/tealdeer/APKBUILD48
-rw-r--r--testing/tealdeer/use-system-tls.patch219
-rw-r--r--testing/teapot-tools/APKBUILD48
-rw-r--r--testing/telegram-tdlib/APKBUILD27
-rw-r--r--testing/templ/APKBUILD40
-rw-r--r--testing/tengine/APKBUILD84
-rw-r--r--testing/tengine/tengine.initd70
-rw-r--r--testing/tengine/tengine.logrotate12
-rw-r--r--testing/tengine/tengine.pre-install9
l---------testing/tengine/tengine.pre-upgrade1
-rw-r--r--testing/tere/APKBUILD54
-rw-r--r--testing/tere/deps.patch415
-rw-r--r--testing/termbox/APKBUILD4
-rw-r--r--testing/termcolor/APKBUILD4
-rw-r--r--testing/terminalpp/APKBUILD84
-rw-r--r--testing/termusic-mpv/APKBUILD37
-rw-r--r--testing/terra/APKBUILD46
-rw-r--r--testing/terra/backtrace_link.patch34
-rw-r--r--testing/terra/no-execinfo.patch36
-rw-r--r--testing/terra/system-lua.patch35
-rw-r--r--testing/terra/version.patch18
-rw-r--r--testing/terraform-provider-libvirt/APKBUILD33
-rw-r--r--testing/terraform-provider-libvirt/version.patch14
-rw-r--r--testing/tetragon-client/APKBUILD72
-rw-r--r--testing/texlab/APKBUILD42
-rw-r--r--testing/texmaker/APKBUILD28
-rw-r--r--testing/texmaker/musl-1.2.3.patch13
-rw-r--r--testing/texstudio/APKBUILD54
-rw-r--r--testing/texstudio/qt6.patch13
-rw-r--r--testing/tfblib/APKBUILD28
-rw-r--r--testing/thanos/APKBUILD22
-rw-r--r--testing/thanos/assume-no-moving-gc.patch28
-rw-r--r--testing/theforceengine/APKBUILD54
-rw-r--r--testing/theforceengine/backtrace.patch32
-rw-r--r--testing/theforceengine/compilation_32bit_systems.patch29
-rw-r--r--testing/theforceengine/path_max.patch13
-rw-r--r--testing/thefuck/APKBUILD6
-rw-r--r--testing/thelounge/APKBUILD81
-rw-r--r--testing/thelounge/no-version-test.patch19
-rw-r--r--testing/thelounge/thelounge.initd14
-rw-r--r--testing/thelounge/thelounge.post-install13
-rw-r--r--testing/thelounge/thelounge.pre-install6
-rw-r--r--testing/theme.sh/APKBUILD29
-rw-r--r--testing/thermald/APKBUILD6
-rw-r--r--testing/thumbdrives/APKBUILD12
-rw-r--r--testing/thunarx-python/APKBUILD2
-rw-r--r--testing/tic-80/APKBUILD151
-rw-r--r--testing/tic-80/use-repo-deps.patch315
-rw-r--r--testing/ticker/APKBUILD30
-rw-r--r--testing/tikzit/APKBUILD29
-rw-r--r--testing/tiled/APKBUILD29
-rw-r--r--testing/tiled/patch-main.cpp.patch47
-rw-r--r--testing/tillitis-key1-apps/APKBUILD42
-rw-r--r--testing/tillitis-key1-apps/fix-cgo.patch11
-rw-r--r--testing/tillitis-key1-apps/runsign.sh.patch11
-rw-r--r--testing/time/APKBUILD2
-rw-r--r--testing/timeshift/APKBUILD30
-rw-r--r--testing/timew/APKBUILD2
-rw-r--r--testing/timewarrior/APKBUILD41
-rw-r--r--testing/timg/APKBUILD23
-rw-r--r--testing/tintin/APKBUILD26
-rw-r--r--testing/tinycbor/0001-disable-failing-tests.patch54
-rw-r--r--testing/tinycbor/APKBUILD11
-rw-r--r--testing/tinyscheme/APKBUILD4
-rw-r--r--testing/tiptop/APKBUILD8
-rw-r--r--testing/tiptop/format-security.patch13
-rw-r--r--testing/tk-lib/APKBUILD32
-rw-r--r--testing/tke/APKBUILD43
-rw-r--r--testing/tke/install-script.patch84
-rw-r--r--[-rwxr-xr-x]testing/tkts/APKBUILD19
-rw-r--r--testing/tkts/correct_paths.patch11
-rw-r--r--testing/tldr-python-client/APKBUILD11
-rw-r--r--testing/tlsrouter/APKBUILD51
-rw-r--r--testing/tlsrouter/tlsrouter.confd3
-rw-r--r--testing/tlsrouter/tlsrouter.initd14
-rw-r--r--testing/tlsrouter/tlsrouter.pre-install9
-rw-r--r--testing/tmate/APKBUILD27
-rw-r--r--testing/tmate/implicit-decl.patch12
-rw-r--r--testing/tmate/msgpack-c.patch13
-rw-r--r--testing/tmpl/APKBUILD32
-rw-r--r--testing/tmpmail/APKBUILD5
-rw-r--r--testing/tmux-resurrect/APKBUILD27
-rw-r--r--testing/tmux-resurrect/ps.patch16
-rw-r--r--testing/tncattach/APKBUILD2
-rw-r--r--testing/tnef/APKBUILD32
-rw-r--r--[-rwxr-xr-x]testing/toapk/APKBUILD25
-rw-r--r--testing/toapk/fennel5.3.patch22
-rw-r--r--testing/today/APKBUILD22
-rw-r--r--testing/todoman/APKBUILD65
-rw-r--r--testing/tomcat9/APKBUILD22
-rw-r--r--testing/toml-adapt/APKBUILD29
-rw-r--r--testing/toml2json/APKBUILD40
-rw-r--r--testing/tootik/APKBUILD68
-rw-r--r--testing/tootik/fix-32bit-maxint.patch24
-rw-r--r--testing/tootik/tootik.cfg63
-rw-r--r--testing/tootik/tootik.confd56
-rw-r--r--testing/tootik/tootik.initd73
-rw-r--r--testing/tootik/tootik.pre-install11
-rw-r--r--testing/topgit/APKBUILD4
-rw-r--r--testing/topgrade/APKBUILD31
-rw-r--r--testing/toppler/APKBUILD48
-rw-r--r--testing/toppler/toppler.desktop12
-rw-r--r--testing/torrent-file-editor/APKBUILD35
-rw-r--r--testing/toxcore/APKBUILD47
-rw-r--r--testing/toxic/APKBUILD25
-rw-r--r--testing/toybox/APKBUILD7
-rw-r--r--testing/tpm2-pkcs11/APKBUILD20
-rw-r--r--testing/tpm2-tools/APKBUILD28
-rw-r--r--testing/tpm2-tools/char16_t.patch13
-rw-r--r--testing/tpm2-tools/dont-generate-manpages-without-pandoc.patch18
-rw-r--r--testing/trafficserver9/10-fix-PATH_MAX-on-ppc64le.patch10
-rw-r--r--testing/trafficserver9/20-adapt-trafficserver.patch56
-rw-r--r--testing/trafficserver9/30-fix-perl-installation.patch11
-rw-r--r--testing/trafficserver9/40-alpine-dir-layout.patch28
-rw-r--r--testing/trafficserver9/APKBUILD286
-rw-r--r--testing/trafficserver9/fix-pthread.patch22
-rw-r--r--testing/trafficserver9/no-execinfo.patch49
-rw-r--r--testing/trafficserver9/trafficserver.initd43
-rw-r--r--testing/trafficserver9/trafficserver9.post-install3
-rw-r--r--testing/trafficserver9/trafficserver9.pre-install6
-rw-r--r--testing/transmission-remote-gtk/APKBUILD28
-rw-r--r--testing/tre/APKBUILD2
-rw-r--r--testing/tree-sitter-c-sharp/APKBUILD25
-rw-r--r--testing/tree-sitter-caddy/APKBUILD34
-rw-r--r--testing/tree-sitter-clojure/APKBUILD29
-rw-r--r--testing/tree-sitter-cmake/APKBUILD27
-rw-r--r--testing/tree-sitter-dart/APKBUILD27
-rw-r--r--testing/tree-sitter-elixir/APKBUILD10
-rw-r--r--testing/tree-sitter-git-commit/APKBUILD2
-rw-r--r--testing/tree-sitter-git-diff/APKBUILD14
-rw-r--r--testing/tree-sitter-git-rebase/APKBUILD2
-rw-r--r--testing/tree-sitter-hare/APKBUILD28
-rw-r--r--testing/tree-sitter-hcl/APKBUILD29
-rw-r--r--testing/tree-sitter-just/APKBUILD37
-rw-r--r--testing/tree-sitter-kotlin/APKBUILD25
-rw-r--r--testing/tree-sitter-make/APKBUILD2
-rw-r--r--testing/tree-sitter-markdown/APKBUILD34
-rw-r--r--testing/tree-sitter-nix/APKBUILD29
-rw-r--r--testing/tree-sitter-ron/APKBUILD27
-rw-r--r--testing/tree-sitter-scheme/APKBUILD27
-rw-r--r--testing/tree-sitter-ssh-client-config/APKBUILD25
-rw-r--r--testing/tree-sitter-xml/APKBUILD34
-rw-r--r--testing/treecat/APKBUILD29
-rw-r--r--testing/tremc/APKBUILD2
-rw-r--r--testing/trigger-rally/APKBUILD2
-rw-r--r--testing/trippy/APKBUILD43
-rw-r--r--testing/trivy/APKBUILD21
-rw-r--r--testing/trunk-recorder/APKBUILD47
-rw-r--r--testing/trunk/APKBUILD49
-rw-r--r--testing/tsung/0005-Do-not-install-manpages-in-main-install.patch18
-rw-r--r--testing/tsung/APKBUILD13
-rw-r--r--testing/tsung/support-python3.patch120
-rw-r--r--testing/ttdl/APKBUILD39
-rw-r--r--testing/ttf-anonymous-pro/APKBUILD27
-rw-r--r--testing/ttf-font-awesome-4/APKBUILD24
-rw-r--r--testing/ttf-font-awesome-4/ttf-font-awesome-4.post-install4
-rw-r--r--testing/ttf-jetbrains-mono/APKBUILD19
-rw-r--r--testing/tty-clock/APKBUILD30
-rw-r--r--testing/tty-proxy/APKBUILD9
-rw-r--r--testing/tty-share/APKBUILD15
-rw-r--r--testing/ttyper/APKBUILD32
-rw-r--r--testing/tui-journal/APKBUILD42
-rw-r--r--testing/tuigreet/APKBUILD38
-rw-r--r--testing/tuigreet/minimize-size.patch9
-rw-r--r--testing/tup/APKBUILD58
-rw-r--r--testing/tup/s390x_risc3264_support.patch30
-rw-r--r--testing/tup/system_inih.patch16
-rw-r--r--testing/tuptime/APKBUILD35
-rw-r--r--testing/tuptime/tuptime-openrc.post-install5
-rw-r--r--testing/tuptime/tuptime.cron2
-rw-r--r--testing/tuptime/tuptime.initd24
-rw-r--r--testing/tuptime/tuptime.post-install5
-rw-r--r--testing/tuptime/tuptime.pre-install2
-rw-r--r--testing/turn-rs/APKBUILD66
-rw-r--r--testing/turn-rs/turn-rs.confd3
-rw-r--r--testing/turn-rs/turn-rs.initd25
-rw-r--r--testing/turn-rs/turn-rs.pre-install6
-rw-r--r--testing/turnstile/APKBUILD42
-rw-r--r--testing/turnstile/turnstiled.confd2
-rw-r--r--testing/turnstile/turnstiled.initd10
-rw-r--r--testing/twiggy/APKBUILD7
-rw-r--r--testing/twinkle/APKBUILD51
-rw-r--r--testing/twinkle/glibc.patch22
-rw-r--r--testing/txr/APKBUILD42
-rw-r--r--testing/typescript/APKBUILD28
-rw-r--r--testing/typst-lsp/APKBUILD41
-rw-r--r--testing/typstfmt/APKBUILD36
-rw-r--r--testing/u1db-qt/0001-point-qmlplugindump-to-qmlplugindump-qt5.patch25
-rw-r--r--testing/u1db-qt/0002-point-qmltestrunner-to-qmltestrunner-qt5.patch23
-rw-r--r--testing/u1db-qt/APKBUILD45
-rw-r--r--testing/uasm/0001-Allow-multiple-symbol-definitions.patch36
-rw-r--r--testing/uasm/APKBUILD27
-rw-r--r--testing/ubase/APKBUILD4
-rw-r--r--testing/ubuntu-archive-keyring/APKBUILD34
-rw-r--r--testing/uclient/APKBUILD46
-rw-r--r--testing/ucspi-tcp/APKBUILD2
-rw-r--r--testing/udpcast/APKBUILD27
-rw-r--r--testing/udpt/APKBUILD24
-rw-r--r--testing/udpt/cargo.toml.patch16
-rw-r--r--testing/udpt/lock.patch13
-rw-r--r--testing/ueberzug/APKBUILD40
-rw-r--r--testing/uefitool/APKBUILD2
-rw-r--r--testing/uhd/APKBUILD40
-rw-r--r--testing/uhubctl/APKBUILD24
-rw-r--r--testing/undock/APKBUILD35
-rw-r--r--testing/unicorn/APKBUILD65
-rw-r--r--testing/unicorn/endian.patch57
-rw-r--r--testing/unicorn/python-libdir.patch13
-rw-r--r--testing/unit-php81/APKBUILD73
-rw-r--r--testing/unit-php81/fix-tls-tests.patch40
-rw-r--r--testing/unit-php81/phpver.patch15
-rw-r--r--testing/unrealircd/0001.configure-without-running-config.patch9
-rwxr-xr-xtesting/unrealircd/APKBUILD66
-rw-r--r--testing/up/APKBUILD6
-rw-r--r--testing/upmpdcli/APKBUILD36
-rw-r--r--testing/upmpdcli/upmpdcli.conf242
-rw-r--r--testing/upmpdcli/upmpdcli.initd14
-rw-r--r--testing/upmpdcli/upmpdcli.post-install5
-rw-r--r--testing/upmpdcli/upmpdcli.pre-install7
-rw-r--r--testing/upterm/APKBUILD64
-rw-r--r--testing/upterm/uptermd.confd7
-rw-r--r--testing/upterm/uptermd.initd12
-rw-r--r--testing/uranium/874_fix-simplebutton-use-of-um-colorimage.patch34
-rw-r--r--testing/uranium/APKBUILD36
-rw-r--r--testing/uranium/cmake-helpers.patch89
-rw-r--r--testing/uranium/cmake.patch16
-rw-r--r--testing/uranium/fix-logger-used-but-not-imported.patch14
-rw-r--r--testing/uranium/qt-try-ints-then-bytes.patch96
-rw-r--r--testing/urlwatch/APKBUILD16
-rw-r--r--testing/urlwatch/lxml-5.patch35
-rw-r--r--testing/usbguard-notifier/APKBUILD12
-rw-r--r--testing/usbguard/APKBUILD36
-rw-r--r--testing/usbguard/gcc13.patch12
-rw-r--r--testing/usbmuxd/APKBUILD15
-rw-r--r--testing/usbmuxd/libplist-2.3.0.patch34
-rw-r--r--testing/usbmuxd/usbmuxd.post-install2
-rw-r--r--testing/usql/APKBUILD46
-rw-r--r--testing/ustr/APKBUILD2
-rw-r--r--testing/ustream-ssl/APKBUILD42
-rw-r--r--testing/utfcpp/APKBUILD36
-rw-r--r--testing/utop/APKBUILD48
-rw-r--r--testing/uucp/APKBUILD10
-rw-r--r--testing/uucp/format-strings.patch13
-rw-r--r--testing/uutils-coreutils/APKBUILD70
-rw-r--r--testing/uutils-coreutils/disable_tests_armhf_patch54
-rw-r--r--testing/uvicorn/APKBUILD56
-rw-r--r--testing/uxn/APKBUILD10
-rw-r--r--testing/v4l2loopback-src/APKBUILD32
-rw-r--r--testing/vale/APKBUILD35
-rw-r--r--testing/vals/APKBUILD37
-rw-r--r--testing/vamp-sdk/APKBUILD31
-rw-r--r--testing/varnish-modules/APKBUILD6
-rw-r--r--testing/vaultwarden/APKBUILD61
-rw-r--r--testing/vaultwarden/vaultwarden.confd379
-rw-r--r--testing/vaultwarden/vaultwarden.initd20
-rw-r--r--testing/vaultwarden/vaultwarden.pre-install7
-rw-r--r--[-rwxr-xr-x]testing/vbindiff/APKBUILD2
-rw-r--r--testing/vcdimager/APKBUILD2
-rw-r--r--testing/vcmi/APKBUILD54
-rw-r--r--testing/vcsh/APKBUILD4
-rw-r--r--testing/vcstool/APKBUILD24
-rw-r--r--testing/vdirsyncer/01-fix-ssl-tests.patch113
-rw-r--r--testing/vdirsyncer/APKBUILD52
-rw-r--r--testing/vector/APKBUILD96
-rw-r--r--testing/vector/logrotate14
-rw-r--r--testing/vector/skip-failed-tests.patch12
-rw-r--r--testing/vector/use-system-libs.patch77
-rw-r--r--testing/vector/vector.confd13
-rw-r--r--testing/vector/vector.initd38
-rw-r--r--testing/vector/vector.pre-install7
-rw-r--r--testing/venc/APKBUILD31
-rw-r--r--testing/vera++/APKBUILD6
-rw-r--r--testing/veracrypt/10-ssize-t.patch11
-rw-r--r--testing/veracrypt/APKBUILD49
-rw-r--r--testing/verco/APKBUILD29
-rw-r--r--testing/vfd-configurations/APKBUILD26
-rw-r--r--testing/vice/APKBUILD50
-rw-r--r--testing/vice/fix__u_char.patch13
-rw-r--r--testing/vidcutter/APKBUILD21
-rw-r--r--testing/vidcutter/pyqt5-5.15.8.patch17
-rw-r--r--testing/video-trimmer/APKBUILD40
-rw-r--r--testing/viewnior/APKBUILD27
-rw-r--r--testing/viewnior/exiv2-0.28.patch147
-rw-r--r--testing/vile/APKBUILD42
-rw-r--r--testing/vim-go/APKBUILD33
-rw-r--r--testing/vim-rust/APKBUILD1
-rw-r--r--testing/vimiv-qt/APKBUILD28
-rw-r--r--testing/vimiv/APKBUILD30
-rw-r--r--testing/vinegar/APKBUILD38
-rw-r--r--testing/virtctl/APKBUILD54
-rw-r--r--testing/virter/APKBUILD58
-rw-r--r--testing/virter/update-mockery.patch19
-rw-r--r--testing/virtme-ng/APKBUILD22
-rw-r--r--testing/virtualgl/APKBUILD59
-rw-r--r--testing/virtualgl/install.patch13
-rw-r--r--testing/visidata/APKBUILD44
-rw-r--r--testing/visidata/devendor-appdirs.patch26
-rw-r--r--testing/visidata/sh-default.patch13
-rw-r--r--testing/visidata/use-importlib.patch25
-rw-r--r--testing/visurf/APKBUILD4
-rw-r--r--testing/vit/APKBUILD20
-rw-r--r--testing/vivid/APKBUILD33
-rw-r--r--testing/vixl/0001-vixl-Meson-support.patch814
-rw-r--r--testing/vixl/APKBUILD33
-rw-r--r--testing/vkbasalt/APKBUILD45
-rw-r--r--testing/vlang/APKBUILD61
-rw-r--r--testing/vmtouch/APKBUILD27
-rw-r--r--testing/vocage/APKBUILD23
-rw-r--r--testing/voikko-fi/APKBUILD24
-rw-r--r--testing/volatility3/APKBUILD24
-rw-r--r--testing/volumeicon/APKBUILD2
-rw-r--r--testing/vpn-slice/APKBUILD25
-rw-r--r--testing/vym/APKBUILD33
-rw-r--r--testing/w_scan2/APKBUILD4
-rw-r--r--testing/wabt/APKBUILD66
-rw-r--r--testing/waffle/APKBUILD33
-rw-r--r--testing/waifu2x-converter-cpp/APKBUILD8
-rw-r--r--testing/warp-s3/APKBUILD34
-rw-r--r--testing/warpinator/APKBUILD71
-rw-r--r--testing/warzone2100/APKBUILD73
-rw-r--r--testing/warzone2100/samurai.patch13
-rw-r--r--testing/wasm-pack/APKBUILD45
-rw-r--r--testing/wasmtime/APKBUILD74
-rw-r--r--testing/wasmtime/system-zstd.patch67
-rw-r--r--testing/watchbind/APKBUILD36
-rw-r--r--testing/watchdog/APKBUILD34
-rw-r--r--testing/watchexec/APKBUILD55
-rw-r--r--testing/watchman/APKBUILD35
-rw-r--r--testing/watchman/Replaced-memset-calls-with-appropriate-C++11-init-or-assignment.patch482
-rw-r--r--testing/watchman/e77eb9597c4c094a0b0bbeef0b957b49b40b87eb.patch48
-rw-r--r--testing/watchmate/APKBUILD52
-rw-r--r--testing/watercloset/0001-remove-debug-flags-and-werror.patch11
-rw-r--r--testing/watercloset/APKBUILD44
-rw-r--r--testing/watershot/APKBUILD47
-rw-r--r--testing/watershot/cargo-features.patch364
-rw-r--r--testing/way-displays/APKBUILD8
-rw-r--r--testing/wayfire-plugins-extra/APKBUILD33
-rw-r--r--testing/wayfire/APKBUILD12
-rw-r--r--testing/wayfire/wayfire.post-install10
-rw-r--r--testing/wayland-utils/APKBUILD24
-rw-r--r--testing/waylevel/APKBUILD42
-rw-r--r--testing/waylock/APKBUILD59
-rw-r--r--testing/waylock/fix-version-string.patch15
-rw-r--r--testing/waylock/pam-base-auth.patch7
-rw-r--r--testing/waynergy/APKBUILD12
-rw-r--r--testing/wayqt/APKBUILD35
-rw-r--r--testing/wazero/APKBUILD39
-rw-r--r--testing/wazero/debug-test-path.patch14
-rw-r--r--testing/wbg/APKBUILD34
-rw-r--r--testing/wch-isp/APKBUILD30
-rw-r--r--testing/wcm/APKBUILD10
-rw-r--r--testing/wcslib/APKBUILD37
-rw-r--r--testing/websockify/APKBUILD22
-rw-r--r--testing/weex/APKBUILD34
-rw-r--r--testing/weggli/APKBUILD22
-rw-r--r--testing/welle-io/APKBUILD66
-rw-r--r--testing/wesnoth/APKBUILD52
-rw-r--r--testing/wesnoth/fix-segfault.patch11
-rw-r--r--testing/wf-config/APKBUILD6
-rw-r--r--testing/wf-osk/APKBUILD33
-rw-r--r--testing/wf-shell/APKBUILD34
-rw-r--r--testing/wf-shell/wf-shell.post-install8
-rw-r--r--testing/wgcf/APKBUILD47
-rw-r--r--testing/wget2/APKBUILD6
-rw-r--r--testing/whipper/APKBUILD34
-rw-r--r--testing/wiimms-iso-tools/APKBUILD4
-rw-r--r--testing/wiki-tui/APKBUILD41
-rw-r--r--testing/wimlib/APKBUILD39
-rw-r--r--testing/wine-mono/APKBUILD12
-rw-r--r--testing/wine-staging/APKBUILD174
-rw-r--r--testing/wine-staging/rpath.patch57
-rw-r--r--testing/winetricks/APKBUILD10
-rw-r--r--testing/wireguard-go/APKBUILD10
-rw-r--r--testing/wiremapper/APKBUILD5
-rw-r--r--testing/wiringx/APKBUILD16
-rw-r--r--testing/witchery/APKBUILD6
-rw-r--r--testing/wk-adblock/APKBUILD26
-rw-r--r--testing/wk-adblock/cargo-lock.patch1062
-rw-r--r--testing/wk-adblock/webkit2gtk-4.1.patch13
-rw-r--r--testing/wl-clipboard-x11/APKBUILD2
-rw-r--r--testing/wl-gammarelay/APKBUILD15
-rw-r--r--testing/wlavu/APKBUILD4
-rw-r--r--testing/wlc/APKBUILD30
-rw-r--r--testing/wlclock/APKBUILD2
-rw-r--r--testing/wlopm/APKBUILD9
-rw-r--r--testing/wlrobs/APKBUILD10
-rw-r--r--testing/wlroots0.12/0001-Revert-layer-shell-error-on-0-dimension-without-anch.patch51
-rw-r--r--testing/wlroots0.12/APKBUILD52
-rw-r--r--testing/wlroots0.15/0001-wlr_output_commit_state_clear_back_buffer.patch30
-rw-r--r--testing/wlroots0.15/APKBUILD57
-rw-r--r--testing/wlvncc/APKBUILD49
-rw-r--r--testing/wmi-client/APKBUILD2
-rw-r--r--testing/wmutils/APKBUILD8
-rw-r--r--testing/wok/APKBUILD8
-rw-r--r--testing/wol/APKBUILD6
-rw-r--r--testing/wolfssh/APKBUILD54
-rw-r--r--testing/woodpecker/0001-we-use-the-prebuild-webui.patch25
-rw-r--r--testing/woodpecker/APKBUILD74
-rw-r--r--testing/woodpecker/fix-cgo.patch53
-rw-r--r--testing/woodpecker/woodpecker.conf8
-rw-r--r--testing/woodpecker/woodpecker.confd4
-rw-r--r--testing/woodpecker/woodpecker.initd22
-rw-r--r--testing/woodpecker/woodpecker.pre-install6
-rw-r--r--testing/wordgrinder/APKBUILD2
-rw-r--r--testing/words/APKBUILD127
-rw-r--r--testing/wormhole-william/APKBUILD28
-rw-r--r--testing/wpa_actiond/APKBUILD2
-rw-r--r--testing/wpaperd/APKBUILD26
-rw-r--r--testing/wpaperd/cargo-lock.patch11
-rw-r--r--testing/wpewebkit/APKBUILD73
-rw-r--r--testing/wpewebkit/patch-gettext.patch15
-rw-r--r--testing/wput/APKBUILD19
-rw-r--r--testing/wroomd/APKBUILD44
-rw-r--r--testing/wroomd/de.abscue.obp.Wroomd.conf15
-rw-r--r--testing/wroomd/wroomd.initd11
-rw-r--r--testing/wsdd/0001-openrc-user.patch31
-rw-r--r--testing/wsdd/APKBUILD29
-rw-r--r--testing/wsdd/wsdd.pre-install6
-rw-r--r--testing/wshowkeys/APKBUILD2
-rw-r--r--testing/wsmancli/APKBUILD6
-rw-r--r--testing/wtfutil/APKBUILD22
-rw-r--r--testing/x11-calc/APKBUILD25
-rw-r--r--testing/x11docker/APKBUILD27
-rw-r--r--testing/x11docker/x11docker.post-install11
-rw-r--r--testing/xa/APKBUILD4
-rw-r--r--testing/xandikos/APKBUILD30
-rw-r--r--testing/xastir/APKBUILD44
-rw-r--r--testing/xastir/fix-mutex.patch15
-rw-r--r--testing/xboard/APKBUILD53
-rw-r--r--testing/xcaddy/APKBUILD33
-rw-r--r--testing/xcape/APKBUILD2
-rwxr-xr-xtesting/xcb-imdkit/APKBUILD40
-rw-r--r--testing/xcompmgr/APKBUILD6
-rw-r--r--testing/xdg-desktop-portal-hyprland/APKBUILD48
-rw-r--r--testing/xdg-desktop-portal-hyprland/use-system-installed-sdbus-c++.patch32
-rw-r--r--testing/xdg-ninja/APKBUILD24
-rw-r--r--testing/xdg-user-dirs-gtk/APKBUILD33
-rw-r--r--testing/xdg-user-dirs-gtk/more-desktops.patch13
-rw-r--r--testing/xed/APKBUILD53
-rw-r--r--testing/xendmail/APKBUILD40
-rw-r--r--testing/xf86-video-vboxvideo/APKBUILD12
-rw-r--r--testing/xfce4-calculator-plugin/APKBUILD11
-rw-r--r--testing/xfce4-diskperf-plugin/APKBUILD46
-rw-r--r--testing/xfce4-docklike-plugin/0001-basename-called-but-libgen.h-not-included.patch56
-rw-r--r--testing/xfce4-docklike-plugin/APKBUILD9
-rw-r--r--testing/xfce4-fsguard-plugin/APKBUILD47
-rw-r--r--testing/xfce4-genmon-plugin/APKBUILD30
-rw-r--r--testing/xfce4-mailwatch-plugin/APKBUILD10
-rw-r--r--testing/xfce4-mixer/APKBUILD37
-rw-r--r--testing/xfce4-mpc-plugin/APKBUILD47
-rw-r--r--testing/xfce4-netload-plugin/APKBUILD46
-rw-r--r--testing/xfce4-panel-profiles/APKBUILD12
-rw-r--r--testing/xfce4-places-plugin/APKBUILD4
-rw-r--r--testing/xfce4-sensors-plugin/APKBUILD35
-rw-r--r--testing/xfce4-smartbookmark-plugin/APKBUILD46
-rw-r--r--testing/xfce4-statusnotifier-plugin/APKBUILD34
-rw-r--r--testing/xfce4-systemload-plugin/10-wrong-var-type-on-32bit.patch21
-rw-r--r--testing/xfce4-systemload-plugin/APKBUILD35
-rw-r--r--testing/xfce4-timer-plugin/APKBUILD8
-rw-r--r--testing/xfce4-verve-plugin/APKBUILD47
-rw-r--r--testing/xfd/APKBUILD8
-rw-r--r--testing/xfe/10-fix-build.patch7
-rw-r--r--testing/xfe/APKBUILD62
-rw-r--r--testing/xfig/APKBUILD48
-rw-r--r--testing/xfig/COPYING20
-rw-r--r--testing/xgalaga/APKBUILD2
-rw-r--r--testing/xh/APKBUILD54
-rw-r--r--testing/xh/minimize-size.patch15
-rw-r--r--testing/xiccd/APKBUILD3
-rw-r--r--testing/xisxwayland/APKBUILD32
-rw-r--r--testing/xkb-switch/APKBUILD2
-rw-r--r--testing/xlhtml/APKBUILD34
-rw-r--r--testing/xmag/APKBUILD37
-rw-r--r--testing/xmake/01-pkgconfig-libsv.patch11
-rw-r--r--testing/xmake/02-system-include.patch22
-rw-r--r--testing/xmake/APKBUILD87
-rw-r--r--testing/xml2rfc/APKBUILD23
-rw-r--r--testing/xmp/APKBUILD4
-rw-r--r--testing/xmpp-dns/APKBUILD11
-rw-r--r--testing/xmppc/APKBUILD41
-rw-r--r--testing/xmppipe/APKBUILD7
-rw-r--r--testing/xmrig-proxy/APKBUILD29
-rw-r--r--testing/xob/APKBUILD31
-rw-r--r--testing/xone-src/APKBUILD23
-rw-r--r--testing/xonotic-data/APKBUILD19
-rw-r--r--testing/xonotic/APKBUILD107
-rw-r--r--testing/xonotic/xonotic-glx.desktop11
-rw-r--r--testing/xonotic/xonotic-moncontrol.patch12
-rw-r--r--testing/xonotic/xonotic-sdl.desktop11
-rw-r--r--testing/xonsh/APKBUILD58
-rw-r--r--testing/xonsh/no-col.patch13
-rw-r--r--testing/xonsh/xonsh.post-install3
l---------testing/xonsh/xonsh.post-upgrade1
-rw-r--r--testing/xonsh/xonsh.pre-deinstall3
-rw-r--r--testing/xosview/APKBUILD27
-rw-r--r--testing/xpad/APKBUILD37
-rw-r--r--testing/xplr/APKBUILD62
-rw-r--r--testing/xplr/modified-field-lua54.patch13
-rw-r--r--testing/xplr/remove-vendored-lua.patch49
-rw-r--r--testing/xremap-wlr/APKBUILD36
-rw-r--r--testing/xsane/APKBUILD2
-rw-r--r--testing/xsct/APKBUILD28
-rw-r--r--testing/xsecurelock/APKBUILD27
-rw-r--r--testing/xsoldier/APKBUILD2
-rw-r--r--testing/xsv/APKBUILD28
-rw-r--r--testing/xtensor/APKBUILD37
-rw-r--r--testing/xtitle/APKBUILD2
-rw-r--r--testing/xtl/APKBUILD37
-rw-r--r--testing/xva-img/APKBUILD4
-rw-r--r--testing/xvidtune/APKBUILD31
-rw-r--r--testing/xvkbd/APKBUILD2
-rw-r--r--testing/xwaylandvideobridge/APKBUILD50
-rw-r--r--testing/yaegi/APKBUILD45
-rw-r--r--testing/yamkix/APKBUILD34
-rw-r--r--testing/yara/APKBUILD47
-rw-r--r--testing/yara/remove-test-rules.patch24
-rw-r--r--testing/yarr/APKBUILD44
-rwxr-xr-xtesting/yarr/yarr.confd12
-rwxr-xr-xtesting/yarr/yarr.initd17
-rwxr-xr-xtesting/yarr/yarr.pre-install6
-rw-r--r--testing/yaru-common/APKBUILD334
-rw-r--r--testing/yass/0000-remove-com-sun.patch20
-rw-r--r--testing/yass/APKBUILD13
-rw-r--r--testing/yazi/APKBUILD50
-rw-r--r--testing/yazi/system-lua.patch154
-rw-r--r--testing/ydcv/APKBUILD4
-rw-r--r--testing/yices2/APKBUILD44
-rw-r--r--testing/yodl/APKBUILD2
-rw-r--r--testing/yoe-kiosk-browser/APKBUILD28
-rw-r--r--testing/yofi/APKBUILD46
-rw-r--r--testing/yofi/minimize-size.patch12
-rw-r--r--testing/yofi/remove-systemd-logger.patch29
-rw-r--r--testing/yoshimi/APKBUILD44
-rw-r--r--testing/yosys/APKBUILD74
-rw-r--r--testing/youki/APKBUILD38
-rw-r--r--testing/youki/fix-rlimit-type.patch20
-rw-r--r--testing/youki/libcgroups-workaround-magic-constants.patch40
-rw-r--r--testing/youki/minimize-size.patch10
-rw-r--r--testing/youki/ungit.patch14
-rw-r--r--testing/youtube-tui/APKBUILD28
-rw-r--r--testing/youtube-viewer/APKBUILD13
-rw-r--r--testing/ytfzf/APKBUILD25
-rw-r--r--testing/ytfzf/ytfzf.post-install12
-rw-r--r--testing/ytmdl/APKBUILD61
-rw-r--r--testing/ytt/APKBUILD26
-rw-r--r--testing/yubico-piv-tool/APKBUILD34
-rw-r--r--testing/yubikey-agent/APKBUILD28
-rw-r--r--testing/yyjson/APKBUILD45
-rw-r--r--testing/yyjson/cmake-add-soname.patch10
-rw-r--r--testing/z-push/APKBUILD80
-rw-r--r--testing/z-push/apache.example.conf8
-rw-r--r--testing/z-push/htaccess4
-rw-r--r--testing/z-push/nginx-location.conf32
-rw-r--r--testing/z-push/nginx-ssl.example.conf56
-rw-r--r--testing/z-push/php-fpm.example.conf6
-rwxr-xr-xtesting/z-push/z-push-admin2
-rwxr-xr-xtesting/z-push/z-push-top2
-rw-r--r--testing/z-push/z-push.conf35
-rw-r--r--testing/z-push/z-push.ini9
-rw-r--r--testing/z-push/z-push.pre-install8
-rw-r--r--testing/z/APKBUILD8
-rw-r--r--testing/zabbix-agent2-alpine/APKBUILD63
-rw-r--r--testing/zabbix-agent2-alpine/enable-plugins.patch12
-rw-r--r--testing/zabbix-agent2-alpine/go-mod-add-dependencies.patch29
-rw-r--r--testing/zabbix-agent2-alpine/zabbix-agent2-alpine.pre-install7
-rw-r--r--testing/zabbix-agent2-alpine/zabbix-agent2.initd11
-rw-r--r--testing/zabbix-agent2-alpine/zabbix_agent2.conf8
-rw-r--r--testing/zafiro-icon-theme/APKBUILD13
-rw-r--r--testing/zam-plugins/APKBUILD47
-rw-r--r--testing/zangband/APKBUILD53
-rw-r--r--testing/zangband/fix-bad-configure.patch219
-rw-r--r--testing/zangband/fix-bad-substitution.patch12
-rw-r--r--testing/zangband/fix-explosive-rune-error.patch12
-rw-r--r--testing/zangband/fix-random-num-gen.patch22
-rw-r--r--testing/zangband/fix-spear-of-hagen-error.patch12
-rw-r--r--testing/zaproxy/APKBUILD37
-rw-r--r--testing/zarchive/APKBUILD36
-rw-r--r--testing/zarf/APKBUILD32
-rw-r--r--testing/zathura-djvu/APKBUILD24
-rw-r--r--testing/zeal/APKBUILD46
-rw-r--r--testing/zerofree/APKBUILD24
-rw-r--r--testing/zerofree/types.patch10
-rw-r--r--testing/zfs-src/4900-ppc-get-user-workaround.patch60
-rw-r--r--testing/zfs-src/AKMBUILD13
-rw-r--r--testing/zfs-src/APKBUILD11
-rw-r--r--testing/zfsnap/APKBUILD51
-rw-r--r--testing/zig/APKBUILD84
-rw-r--r--testing/zig/llvm-include.patch12
-rw-r--r--testing/zig/zig.pre-upgrade11
-rw-r--r--testing/zile/APKBUILD42
-rw-r--r--testing/zimg/APKBUILD65
-rw-r--r--testing/zimg/musl-missing-include.patch12
-rw-r--r--testing/zita-njbridge/APKBUILD2
-rw-r--r--testing/zita-resampler/APKBUILD10
-rw-r--r--testing/zita-resampler/patch-Makefile.patch27
-rw-r--r--testing/zkgroup/APKBUILD7
-rw-r--r--testing/zls/APKBUILD54
-rw-r--r--testing/zmusic/APKBUILD38
-rw-r--r--testing/znc-backlog/APKBUILD4
-rw-r--r--testing/znc-clientbuffer/APKBUILD4
-rw-r--r--testing/znc-playback/APKBUILD4
-rw-r--r--testing/znc-push/APKBUILD10
-rw-r--r--testing/zot/APKBUILD132
-rw-r--r--testing/zot/basename_patch10
-rw-r--r--testing/zot/bump-go-sqlite3.patch800
-rw-r--r--testing/zot/zot.confd10
-rw-r--r--testing/zot/zot.initd22
-rw-r--r--testing/zot/zot.pre-install6
-rw-r--r--testing/zrepl/APKBUILD8
-rw-r--r--testing/zsh-fast-syntax-highlighting/APKBUILD34
-rw-r--r--testing/zsh-histdb-skim/APKBUILD45
-rw-r--r--testing/zsh-manydots-magic/APKBUILD21
-rw-r--r--testing/zulip-term/APKBUILD32
-rw-r--r--testing/zutty/APKBUILD37
-rw-r--r--testing/zycore/APKBUILD38
-rw-r--r--testing/zydis/APKBUILD42
6376 files changed, 215325 insertions, 142997 deletions
diff --git a/testing/3proxy/APKBUILD b/testing/3proxy/APKBUILD
index 24a144a7661..1e6ff881022 100644
--- a/testing/3proxy/APKBUILD
+++ b/testing/3proxy/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: sillysausage <sillysausage@privatedemail.net>
# Maintainer:
pkgname=3proxy
-pkgver=0.8.13
-pkgrel=1
+pkgver=0.9.4
+pkgrel=0
pkgdesc="Really tiny cross-platform proxy servers set"
url="https://3proxy.ru"
arch="all"
@@ -13,7 +13,7 @@ options="!check" # No test suite
makedepends="linux-headers"
install="3proxy.pre-install"
subpackages="$pkgname-doc $pkgname-openrc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/z3APA3A/3proxy/archive/$pkgver.tar.gz
+source="$pkgname-$pkgver.tar.gz::https://github.com/3proxy/3proxy/archive/$pkgver.tar.gz
$pkgname.initd
"
@@ -24,11 +24,14 @@ build() {
package() {
make -f Makefile.Linux DESTDIR="$pkgdir" prefix="/usr" install
install -Dm755 "$srcdir"/3proxy.initd "$pkgdir"/etc/init.d/3proxy
- mv "$pkgdir"/usr/etc/3proxy "$pkgdir"/etc/3proxy
+ mv "$pkgdir"/usr/local/3proxy/libexec/*.so "$pkgdir"/usr/lib/
+ rm -rf "$pkgdir"/usr/local
chown -R 3proxy:3proxy "$pkgdir"/etc/3proxy
install -Dm644 copying "$pkgdir"/usr/share/licenses/$pkgname/COPYING
}
-sha512sums="94b4a2568917c1d720276e38050a13e144d3e92ff41edd02eeebac0a6c21e6a839a58ea7dcb3abc03370e0f18452c953cfd7ad15ebac87e66b78d94fa52fbd79 3proxy-0.8.13.tar.gz
-043fa5784623e29961ae92f5370598d420e55da6d04f6421b585ac050694982765d6b57ee0276a10738bc8ad0e49ddc4edf6ef288bb9c68e7da11b572066688e 3proxy.initd"
+sha512sums="
+d3316f6ee1217e580ce593a7bfd9d76672487a89862f247373b0acf3ea207887c758168e33b25db9fc974063deab0826c20d455cab2536d03eee49d8bddda6b5 3proxy-0.9.4.tar.gz
+043fa5784623e29961ae92f5370598d420e55da6d04f6421b585ac050694982765d6b57ee0276a10738bc8ad0e49ddc4edf6ef288bb9c68e7da11b572066688e 3proxy.initd
+"
diff --git a/testing/6cord/6cord.post-install b/testing/6cord/6cord.post-install
deleted file mode 100644
index 6e6b1d74789..00000000000
--- a/testing/6cord/6cord.post-install
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-
-echo "Before start, please copy /usr/share/6cord/6cord.toml to ${XDG_CONFIG_HOME:-$HOME/.config}/6cord/6cord.toml!"
-echo "This way, you can customize the client to your fit."
diff --git a/testing/6cord/APKBUILD b/testing/6cord/APKBUILD
deleted file mode 100644
index ec995375d87..00000000000
--- a/testing/6cord/APKBUILD
+++ /dev/null
@@ -1,27 +0,0 @@
-# Contributor: Danct12 <danct12@disroot.org>
-# Maintainer: Danct12 <danct12@disroot.org>
-pkgname="6cord"
-pkgver="9.6"
-pkgrel=6
-pkgdesc="Discord TUI + SIXEL client"
-url="https://gitlab.com/diamondburned/6cord"
-arch="all"
-license="MPL-2.0"
-makedepends="go"
-install="$pkgname.post-install"
-source="https://gitlab.com/diamondburned/6cord/-/archive/stable-$pkgver/6cord-stable-$pkgver.tar.bz2"
-options="!check" # no testsuite
-builddir="$srcdir/6cord-stable-$pkgver"
-
-build() {
- go build -o bin/6cord
-}
-
-package() {
- install -Dm755 "$builddir"/bin/6cord \
- "$pkgdir"/usr/bin/6cord
- install -Dm755 "$builddir"/6cord.toml \
- "$pkgdir"/usr/share/$pkgname/6cord.toml
-}
-
-sha512sums="e41de615e6ed95ac269725ae3155b15218d627821977f0e2e98a075a7b0e83028fdc94d200bf86bdc8271aede43c775dddf493e48ace3f52cd297d3e09cdb2db 6cord-stable-9.6.tar.bz2"
diff --git a/testing/a2jmidid/APKBUILD b/testing/a2jmidid/APKBUILD
index f6c5024a2eb..37af43e5496 100644
--- a/testing/a2jmidid/APKBUILD
+++ b/testing/a2jmidid/APKBUILD
@@ -1,14 +1,14 @@
-# Contributor: Kevin Thomas <me@kevinthomas.dev>
-# Maintainer: Kevin Thomas <me@kevinthomas.dev>
+# Contributor: Kay Thomas <kaythomas@pm.me>
+# Maintainer: Kay Thomas <kaythomas@pm.me>
pkgname=a2jmidid
pkgver=9
-pkgrel=1
+pkgrel=3
pkgdesc="ALSA sequencer to JACK MIDI bridging"
url="https://github.com/jackaudio/a2jmidid"
arch="all"
license="GPL-2.0-or-later"
depends="py3-dbus"
-makedepends="meson libexecinfo-dev jack-dev alsa-lib-dev dbus-dev"
+makedepends="meson jack-dev alsa-lib-dev dbus-dev"
subpackages="$pkgname-doc"
source="$pkgname-$pkgver.tar.gz::https://github.com/jackaudio/a2jmidid/archive/$pkgver.tar.gz
check-for-libc-backtrace.patch
@@ -17,7 +17,7 @@ options="!check" # No testsuite
build() {
abuild-meson . build
- meson compile ${JOBS:+-j ${JOBS}} -C build
+ meson compile -C build
}
package() {
diff --git a/testing/abc/APKBUILD b/testing/abc/APKBUILD
new file mode 100644
index 00000000000..8252fcbda40
--- /dev/null
+++ b/testing/abc/APKBUILD
@@ -0,0 +1,29 @@
+# Contributor: Marian Buschsieweke <marian.buschsieweke@posteo.net>
+# Maintainer: Marian Buschsieweke <marian.buschsieweke@posteo.net>
+pkgname=abc
+pkgver=0_git20240102
+_commit=8c7327b8df411654b7d38ccb678c500049fc2b5b
+pkgrel=0
+_abc=896e5e7
+pkgdesc="System for Sequential Logic Synthesis and Formal Verification"
+url="https://github.com/berkeley-abc/abc"
+arch="all"
+license="MIT"
+makedepends="
+ readline-dev
+ "
+source="https://github.com/berkeley-abc/abc/archive/$_commit/abc-$_commit.tar.gz"
+builddir="$srcdir/$pkgname-$_commit/"
+options="!check" # current yosys employee confirmed those dont work
+
+build() {
+ make ABC_USE_PIC=1 abc
+}
+
+package() {
+ install -Dm755 abc -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+17532541730dccc14819c4087ae8c3582f32ec26bc3a572be3caafa08b3a8519e47fa272ecbbeda3ca061fce75c7e87b30a76633ef5c15b76e922e0574fb5016 abc-8c7327b8df411654b7d38ccb678c500049fc2b5b.tar.gz
+"
diff --git a/testing/acme-tiny/APKBUILD b/testing/acme-tiny/APKBUILD
new file mode 100644
index 00000000000..2ff92c9543d
--- /dev/null
+++ b/testing/acme-tiny/APKBUILD
@@ -0,0 +1,36 @@
+# Automatically generated by apkbuild-pypi, template 3
+# Contributor: Niklas Meyer <derlinkman@gmail.com>
+# Maintainer: Niklas Meyer <derlinkman@gmail.com>
+pkgname=acme-tiny
+pkgver=5.0.1
+pkgrel=2
+pkgdesc="A tiny script to issue and renew TLS certs from Let's Encrypt"
+url="https://pypi.org/project/acme-tiny/"
+arch="noarch"
+license="MIT"
+depends="python3"
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-setuptools_scm
+ py3-wheel
+ "
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/a/acme-tiny/acme-tiny-$pkgver.tar.gz"
+options="!check" # tests are broken so we skip them
+
+build() {
+ export SETUPTOOLS_SCM_PRETEND_VERSION="$pkgver"
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+12940426b0fd9cce333ae400161ba371f2c05fdcbb7ac5931079e9b420a5504c89b35613678c9527333647a7ca2f5cfd4eb238ca7b762c5488b9dd98fb3e4731 acme-tiny-5.0.1.tar.gz
+"
diff --git a/testing/acmed/APKBUILD b/testing/acmed/APKBUILD
deleted file mode 100644
index ad19c4f5358..00000000000
--- a/testing/acmed/APKBUILD
+++ /dev/null
@@ -1,74 +0,0 @@
-# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
-# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
-pkgname=acmed
-pkgver=0.20.0
-pkgrel=0
-pkgdesc="ACME (RFC 8555) client daemon"
-url="https://github.com/breard-r/acmed"
-# s390x, riscv64: blocked by cargo
-arch="all !s390x !riscv64"
-license="MIT"
-pkgusers="acmed"
-pkggroups="acmed"
-makedepends="cargo openssl-dev"
-subpackages="$pkgname-doc $pkgname-openrc $pkgname-tacd $pkgname-tacd-doc:tacd_doc"
-install="acmed.pre-install"
-source="https://github.com/breard-r/acmed/archive/refs/tags/v$pkgver/acmed-$pkgver.tar.gz
- Cargo.lock
- acmed.confd
- acmed.initd
- "
-
-prepare() {
- default_prepare
- mv "$srcdir"/Cargo.lock "$builddir"
- cargo fetch --locked
-}
-
-build() {
- cargo build --release --frozen
-}
-
-check() {
- cargo test --frozen
-}
-
-package() {
- install -Dm755 -t "$pkgdir"/usr/bin \
- target/release/acmed \
- target/release/tacd
-
- install -Dm644 -t "$pkgdir"/etc/acmed \
- acmed/config/*
- install -d -o acmed -g acmed "$pkgdir"/var/lib/acmed
-
- install -Dm644 -t "$pkgdir"/usr/share/man/man8 \
- man/en/acmed.8
- install -Dm644 -t "$pkgdir"/usr/share/man/man5 \
- man/en/acmed.toml.5
-
- install -Dm755 "$srcdir"/acmed.initd "$pkgdir"/etc/init.d/acmed
- install -Dm644 "$srcdir"/acmed.confd "$pkgdir"/etc/conf.d/acmed
-}
-
-tacd() {
- pkgdesc="Standalone tls-alpn-01 challenge validation server"
-
- amove /usr/bin/tacd
-}
-
-tacd_doc() {
- install -Dm644 -t "$pkgdir"/usr/share/man/man8 \
- "$builddir"/man/en/tacd.8
-
- default_doc
- pkgdesc="Standalone tls-alpn-01 challenge validation server (documentation)"
- install_if="docs $pkgname-tacd=$pkgver-r$pkgrel"
-}
-
-sha512sums="
-0d2d079c312217bbe6ea54de68792d8bf108dd1d337a1d4d4d4318049fa999f92e7a4d63086711073da21c1aa033666bc1452a8c5da6519f52ea5a12f55891fc acmed-0.20.0.tar.gz
-3a15f8b2d9385d756f99c768f09379084bcb763cf0efedf32f832f1ba8e20507d937e2302212998a2d5dffbdeba98e7ac1dabc1d38a2ea22c64cbd73881f5495 Cargo.lock
-23440890f61045df3fe3acbf1d54548eb0102d3871e536698efb7e6d2a238984a556a4294ad1588b53d79ebb5029c6268f8779634d8bebd0a611898b1c8187ff acmed.confd
-91192fd4a5da625ee6462e61aab991acac8644ec4317ecf289a17b424b93a0c615e74eec1b8b41baa42dc97c2e31846b4df3dfc19b22a504b4f01cb335c71843 acmed.initd
-"
diff --git a/testing/acmed/Cargo.lock b/testing/acmed/Cargo.lock
deleted file mode 100644
index 9e9585c7f54..00000000000
--- a/testing/acmed/Cargo.lock
+++ /dev/null
@@ -1,853 +0,0 @@
-# This file is automatically @generated by Cargo.
-# It is not intended for manual editing.
-version = 3
-
-[[package]]
-name = "acme_common"
-version = "0.20.0"
-dependencies = [
- "attohttpc",
- "base64",
- "daemonize",
- "env_logger",
- "glob",
- "log",
- "native-tls",
- "nix",
- "openssl",
- "openssl-sys",
- "punycode",
- "serde_json",
- "syslog",
- "tinytemplate",
- "toml",
-]
-
-[[package]]
-name = "acmed"
-version = "0.20.0"
-dependencies = [
- "acme_common",
- "attohttpc",
- "bincode",
- "clap",
- "glob",
- "log",
- "nix",
- "nom",
- "serde",
- "serde_json",
- "tinytemplate",
- "toml",
-]
-
-[[package]]
-name = "aho-corasick"
-version = "0.7.18"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1e37cfd5e7657ada45f742d6e99ca5788580b5c529dc78faf11ece6dc702656f"
-dependencies = [
- "memchr",
-]
-
-[[package]]
-name = "attohttpc"
-version = "0.19.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "262c3f7f5d61249d8c00e5546e2685cd15ebeeb1bc0f3cc5449350a1cb07319e"
-dependencies = [
- "encoding_rs",
- "encoding_rs_io",
- "http",
- "log",
- "native-tls",
- "openssl",
- "serde",
- "serde_json",
- "url",
- "wildmatch",
-]
-
-[[package]]
-name = "atty"
-version = "0.2.14"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8"
-dependencies = [
- "hermit-abi",
- "libc",
- "winapi",
-]
-
-[[package]]
-name = "autocfg"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
-
-[[package]]
-name = "base64"
-version = "0.13.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "904dfeac50f3cdaba28fc6f57fdcddb75f49ed61346676a78c4ffe55877802fd"
-
-[[package]]
-name = "bincode"
-version = "1.3.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "bitflags"
-version = "1.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
-
-[[package]]
-name = "boxfnonce"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5988cb1d626264ac94100be357308f29ff7cbdd3b36bda27f450a4ee3f713426"
-
-[[package]]
-name = "bytes"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c4872d67bab6358e59559027aa3b9157c53d9358c51423c17554809a8858e0f8"
-
-[[package]]
-name = "cc"
-version = "1.0.73"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2fff2a6927b3bb87f9595d67196a70493f627687a71d87a0d692242c33f58c11"
-
-[[package]]
-name = "cfg-if"
-version = "1.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
-
-[[package]]
-name = "clap"
-version = "3.1.17"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "47582c09be7c8b32c0ab3a6181825ababb713fde6fff20fc573a3870dd45c6a0"
-dependencies = [
- "atty",
- "bitflags",
- "clap_lex",
- "indexmap",
- "strsim",
- "termcolor",
- "textwrap",
-]
-
-[[package]]
-name = "clap_lex"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a37c35f1112dad5e6e0b1adaff798507497a18fceeb30cceb3bae7d1427b9213"
-dependencies = [
- "os_str_bytes",
-]
-
-[[package]]
-name = "core-foundation"
-version = "0.9.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146"
-dependencies = [
- "core-foundation-sys",
- "libc",
-]
-
-[[package]]
-name = "core-foundation-sys"
-version = "0.8.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5827cebf4670468b8772dd191856768aedcb1b0278a04f989f7766351917b9dc"
-
-[[package]]
-name = "daemonize"
-version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "70c24513e34f53b640819f0ac9f705b673fcf4006d7aab8778bee72ebfc89815"
-dependencies = [
- "boxfnonce",
- "libc",
-]
-
-[[package]]
-name = "encoding_rs"
-version = "0.8.31"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9852635589dc9f9ea1b6fe9f05b50ef208c85c834a562f0c6abb1c475736ec2b"
-dependencies = [
- "cfg-if",
-]
-
-[[package]]
-name = "encoding_rs_io"
-version = "0.1.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1cc3c5651fb62ab8aa3103998dade57efdd028544bd300516baa31840c252a83"
-dependencies = [
- "encoding_rs",
-]
-
-[[package]]
-name = "env_logger"
-version = "0.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0b2cf0344971ee6c64c31be0d530793fba457d322dfec2810c453d0ef228f9c3"
-dependencies = [
- "atty",
- "humantime",
- "log",
- "regex",
- "termcolor",
-]
-
-[[package]]
-name = "error-chain"
-version = "0.12.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2d2f06b9cac1506ece98fe3231e3cc9c4410ec3d5b1f24ae1c8946f0742cdefc"
-dependencies = [
- "version_check",
-]
-
-[[package]]
-name = "fastrand"
-version = "1.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c3fcf0cee53519c866c09b5de1f6c56ff9d647101f81c1964fa632e148896cdf"
-dependencies = [
- "instant",
-]
-
-[[package]]
-name = "fnv"
-version = "1.0.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
-
-[[package]]
-name = "foreign-types"
-version = "0.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
-dependencies = [
- "foreign-types-shared",
-]
-
-[[package]]
-name = "foreign-types-shared"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
-
-[[package]]
-name = "form_urlencoded"
-version = "1.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5fc25a87fa4fd2094bffb06925852034d90a17f0d1e05197d4956d3555752191"
-dependencies = [
- "matches",
- "percent-encoding",
-]
-
-[[package]]
-name = "glob"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574"
-
-[[package]]
-name = "hashbrown"
-version = "0.11.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ab5ef0d4909ef3724cc8cce6ccc8572c5c817592e9285f5464f8e86f8bd3726e"
-
-[[package]]
-name = "hermit-abi"
-version = "0.1.19"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "hostname"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3c731c3e10504cc8ed35cfe2f1db4c9274c3d35fa486e3b31df46f068ef3e867"
-dependencies = [
- "libc",
- "match_cfg",
- "winapi",
-]
-
-[[package]]
-name = "http"
-version = "0.2.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ff8670570af52249509a86f5e3e18a08c60b177071826898fde8997cf5f6bfbb"
-dependencies = [
- "bytes",
- "fnv",
- "itoa",
-]
-
-[[package]]
-name = "humantime"
-version = "2.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4"
-
-[[package]]
-name = "idna"
-version = "0.2.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "418a0a6fab821475f634efe3ccc45c013f742efe03d853e8d3355d5cb850ecf8"
-dependencies = [
- "matches",
- "unicode-bidi",
- "unicode-normalization",
-]
-
-[[package]]
-name = "indexmap"
-version = "1.8.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0f647032dfaa1f8b6dc29bd3edb7bbef4861b8b8007ebb118d6db284fd59f6ee"
-dependencies = [
- "autocfg",
- "hashbrown",
-]
-
-[[package]]
-name = "instant"
-version = "0.1.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c"
-dependencies = [
- "cfg-if",
-]
-
-[[package]]
-name = "itoa"
-version = "1.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1aab8fc367588b89dcee83ab0fd66b72b50b72fa1904d7095045ace2b0c81c35"
-
-[[package]]
-name = "lazy_static"
-version = "1.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
-
-[[package]]
-name = "libc"
-version = "0.2.125"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5916d2ae698f6de9bfb891ad7a8d65c09d232dc58cc4ac433c7da3b2fd84bc2b"
-
-[[package]]
-name = "log"
-version = "0.4.17"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e"
-dependencies = [
- "cfg-if",
-]
-
-[[package]]
-name = "match_cfg"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ffbee8634e0d45d258acb448e7eaab3fce7a0a467395d4d9f228e3c1f01fb2e4"
-
-[[package]]
-name = "matches"
-version = "0.1.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a3e378b66a060d48947b590737b30a1be76706c8dd7b8ba0f2fe3989c68a853f"
-
-[[package]]
-name = "memchr"
-version = "2.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d"
-
-[[package]]
-name = "memoffset"
-version = "0.6.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce"
-dependencies = [
- "autocfg",
-]
-
-[[package]]
-name = "minimal-lexical"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a"
-
-[[package]]
-name = "native-tls"
-version = "0.2.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fd7e2f3618557f980e0b17e8856252eee3c97fa12c54dff0ca290fb6266ca4a9"
-dependencies = [
- "lazy_static",
- "libc",
- "log",
- "openssl",
- "openssl-probe",
- "openssl-sys",
- "schannel",
- "security-framework",
- "security-framework-sys",
- "tempfile",
-]
-
-[[package]]
-name = "nix"
-version = "0.24.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8f17df307904acd05aa8e32e97bb20f2a0df1728bbc2d771ae8f9a90463441e9"
-dependencies = [
- "bitflags",
- "cfg-if",
- "libc",
- "memoffset",
-]
-
-[[package]]
-name = "nom"
-version = "7.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a8903e5a29a317527874d0402f867152a3d21c908bb0b933e416c65e301d4c36"
-dependencies = [
- "memchr",
- "minimal-lexical",
-]
-
-[[package]]
-name = "num_threads"
-version = "0.1.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2819ce041d2ee131036f4fc9d6ae7ae125a3a40e97ba64d04fe799ad9dabbb44"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "once_cell"
-version = "1.10.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "87f3e037eac156d1775da914196f0f37741a274155e34a0b7e427c35d2a2ecb9"
-
-[[package]]
-name = "openssl"
-version = "0.10.40"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fb81a6430ac911acb25fe5ac8f1d2af1b4ea8a4fdfda0f1ee4292af2e2d8eb0e"
-dependencies = [
- "bitflags",
- "cfg-if",
- "foreign-types",
- "libc",
- "once_cell",
- "openssl-macros",
- "openssl-sys",
-]
-
-[[package]]
-name = "openssl-macros"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b501e44f11665960c7e7fcf062c7d96a14ade4aa98116c004b2e37b5be7d736c"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "openssl-probe"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf"
-
-[[package]]
-name = "openssl-src"
-version = "111.18.0+1.1.1n"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7897a926e1e8d00219127dc020130eca4292e5ca666dd592480d72c3eca2ff6c"
-dependencies = [
- "cc",
-]
-
-[[package]]
-name = "openssl-sys"
-version = "0.9.73"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9d5fd19fb3e0a8191c1e34935718976a3e70c112ab9a24af6d7cadccd9d90bc0"
-dependencies = [
- "autocfg",
- "cc",
- "libc",
- "openssl-src",
- "pkg-config",
- "vcpkg",
-]
-
-[[package]]
-name = "os_str_bytes"
-version = "6.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8e22443d1643a904602595ba1cd8f7d896afe56d26712531c5ff73a15b2fbf64"
-
-[[package]]
-name = "percent-encoding"
-version = "2.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e"
-
-[[package]]
-name = "pkg-config"
-version = "0.3.25"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1df8c4ec4b0627e53bdf214615ad287367e482558cf84b109250b37464dc03ae"
-
-[[package]]
-name = "proc-macro2"
-version = "1.0.38"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9027b48e9d4c9175fa2218adf3557f91c1137021739951d4932f5f8268ac48aa"
-dependencies = [
- "unicode-xid",
-]
-
-[[package]]
-name = "punycode"
-version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e9e1dcb320d6839f6edb64f7a4a59d39b30480d4d1765b56873f7c858538a5fe"
-
-[[package]]
-name = "quote"
-version = "1.0.18"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a1feb54ed693b93a84e14094943b84b7c4eae204c512b7ccb95ab0c66d278ad1"
-dependencies = [
- "proc-macro2",
-]
-
-[[package]]
-name = "redox_syscall"
-version = "0.2.13"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62f25bc4c7e55e0b0b7a1d43fb893f4fa1361d0abe38b9ce4f323c2adfe6ef42"
-dependencies = [
- "bitflags",
-]
-
-[[package]]
-name = "regex"
-version = "1.5.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1a11647b6b25ff05a515cb92c365cec08801e83423a235b51e231e1808747286"
-dependencies = [
- "aho-corasick",
- "memchr",
- "regex-syntax",
-]
-
-[[package]]
-name = "regex-syntax"
-version = "0.6.25"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f497285884f3fcff424ffc933e56d7cbca511def0c9831a7f9b5f6153e3cc89b"
-
-[[package]]
-name = "remove_dir_all"
-version = "0.5.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3acd125665422973a33ac9d3dd2df85edad0f4ae9b00dafb1a05e43a9f5ef8e7"
-dependencies = [
- "winapi",
-]
-
-[[package]]
-name = "ryu"
-version = "1.0.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "73b4b750c782965c211b42f022f59af1fbceabdd026623714f104152f1ec149f"
-
-[[package]]
-name = "schannel"
-version = "0.1.19"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8f05ba609c234e60bee0d547fe94a4c7e9da733d1c962cf6e59efa4cd9c8bc75"
-dependencies = [
- "lazy_static",
- "winapi",
-]
-
-[[package]]
-name = "security-framework"
-version = "2.6.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2dc14f172faf8a0194a3aded622712b0de276821addc574fa54fc0a1167e10dc"
-dependencies = [
- "bitflags",
- "core-foundation",
- "core-foundation-sys",
- "libc",
- "security-framework-sys",
-]
-
-[[package]]
-name = "security-framework-sys"
-version = "2.6.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0160a13a177a45bfb43ce71c01580998474f556ad854dcbca936dd2841a5c556"
-dependencies = [
- "core-foundation-sys",
- "libc",
-]
-
-[[package]]
-name = "serde"
-version = "1.0.137"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "61ea8d54c77f8315140a05f4c7237403bf38b72704d031543aa1d16abbf517d1"
-dependencies = [
- "serde_derive",
-]
-
-[[package]]
-name = "serde_derive"
-version = "1.0.137"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1f26faba0c3959972377d3b2d306ee9f71faee9714294e41bb777f83f88578be"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "serde_json"
-version = "1.0.81"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9b7ce2b32a1aed03c558dc61a5cd328f15aff2dbc17daad8fb8af04d2100e15c"
-dependencies = [
- "itoa",
- "ryu",
- "serde",
-]
-
-[[package]]
-name = "strsim"
-version = "0.10.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
-
-[[package]]
-name = "syn"
-version = "1.0.92"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ff7c592601f11445996a06f8ad0c27f094a58857c2f89e97974ab9235b92c52"
-dependencies = [
- "proc-macro2",
- "quote",
- "unicode-xid",
-]
-
-[[package]]
-name = "syslog"
-version = "6.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "978044cc68150ad5e40083c9f6a725e6fd02d7ba1bcf691ec2ff0d66c0b41acc"
-dependencies = [
- "error-chain",
- "hostname",
- "libc",
- "log",
- "time",
-]
-
-[[package]]
-name = "tacd"
-version = "0.20.0"
-dependencies = [
- "acme_common",
- "clap",
- "log",
- "openssl",
-]
-
-[[package]]
-name = "tempfile"
-version = "3.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5cdb1ef4eaeeaddc8fbd371e5017057064af0911902ef36b39801f67cc6d79e4"
-dependencies = [
- "cfg-if",
- "fastrand",
- "libc",
- "redox_syscall",
- "remove_dir_all",
- "winapi",
-]
-
-[[package]]
-name = "termcolor"
-version = "1.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bab24d30b911b2376f3a13cc2cd443142f0c81dda04c118693e35b3835757755"
-dependencies = [
- "winapi-util",
-]
-
-[[package]]
-name = "textwrap"
-version = "0.15.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b1141d4d61095b28419e22cb0bbf02755f5e54e0526f97f1e3d1d160e60885fb"
-
-[[package]]
-name = "time"
-version = "0.3.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c2702e08a7a860f005826c6815dcac101b19b5eb330c27fe4a5928fec1d20ddd"
-dependencies = [
- "itoa",
- "libc",
- "num_threads",
-]
-
-[[package]]
-name = "tinytemplate"
-version = "1.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "be4d6b5f19ff7664e8c98d03e2139cb510db9b0a60b55f8e8709b689d939b6bc"
-dependencies = [
- "serde",
- "serde_json",
-]
-
-[[package]]
-name = "tinyvec"
-version = "1.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50"
-dependencies = [
- "tinyvec_macros",
-]
-
-[[package]]
-name = "tinyvec_macros"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c"
-
-[[package]]
-name = "toml"
-version = "0.5.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8d82e1a7758622a465f8cee077614c73484dac5b836c02ff6a40d5d1010324d7"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "unicode-bidi"
-version = "0.3.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "099b7128301d285f79ddd55b9a83d5e6b9e97c92e0ea0daebee7263e932de992"
-
-[[package]]
-name = "unicode-normalization"
-version = "0.1.19"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d54590932941a9e9266f0832deed84ebe1bf2e4c9e4a3554d393d18f5e854bf9"
-dependencies = [
- "tinyvec",
-]
-
-[[package]]
-name = "unicode-xid"
-version = "0.2.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "957e51f3646910546462e67d5f7599b9e4fb8acdd304b087a6494730f9eebf04"
-
-[[package]]
-name = "url"
-version = "2.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a507c383b2d33b5fc35d1861e77e6b383d158b2da5e14fe51b83dfedf6fd578c"
-dependencies = [
- "form_urlencoded",
- "idna",
- "matches",
- "percent-encoding",
-]
-
-[[package]]
-name = "vcpkg"
-version = "0.2.15"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426"
-
-[[package]]
-name = "version_check"
-version = "0.9.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
-
-[[package]]
-name = "wildmatch"
-version = "2.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d6c48bd20df7e4ced539c12f570f937c6b4884928a87fee70a479d72f031d4e0"
-
-[[package]]
-name = "winapi"
-version = "0.3.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
-dependencies = [
- "winapi-i686-pc-windows-gnu",
- "winapi-x86_64-pc-windows-gnu",
-]
-
-[[package]]
-name = "winapi-i686-pc-windows-gnu"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
-
-[[package]]
-name = "winapi-util"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178"
-dependencies = [
- "winapi",
-]
-
-[[package]]
-name = "winapi-x86_64-pc-windows-gnu"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
diff --git a/testing/acmed/acmed.confd b/testing/acmed/acmed.confd
deleted file mode 100644
index 78b0e541841..00000000000
--- a/testing/acmed/acmed.confd
+++ /dev/null
@@ -1,8 +0,0 @@
-# Configuration for /etc/init.d/acmed
-
-config_file="/etc/acmed/acmed.toml"
-directory="/var/lib/acmed"
-command_user="acmed:acmed"
-
-# comment to use traditional service management
-supervisor=supervise-daemon
diff --git a/testing/acmed/acmed.initd b/testing/acmed/acmed.initd
deleted file mode 100644
index a2e402695f4..00000000000
--- a/testing/acmed/acmed.initd
+++ /dev/null
@@ -1,19 +0,0 @@
-#!/sbin/openrc-run
-
-command="/usr/bin/acmed"
-command_background=true
-command_args="--foreground --config ${config_file:=/etc/acmed/acmed.toml} --log-stderr"
-: ${command_user:=acmed:acmed}
-: ${directory:=/var/lib/acmed}
-
-error_log="/var/log/acmed.log"
-
-depend() {
- need net
- after firewall
-}
-
-start_pre() {
- checkpath -d -m 755 -o $command_user "$directory"
- checkpath -f -m 644 -o $command_user /var/log/acmed.log
-}
diff --git a/testing/acmed/acmed.pre-install b/testing/acmed/acmed.pre-install
deleted file mode 100644
index 50134447569..00000000000
--- a/testing/acmed/acmed.pre-install
+++ /dev/null
@@ -1,6 +0,0 @@
-#!/bin/sh
-
-addgroup -S acmed 2>/dev/null
-adduser -S -D -h /var/lib/acmed -s /sbin/nologin -G acmed -g acmed acmed 2>/dev/null
-
-exit 0
diff --git a/testing/acmetool/APKBUILD b/testing/acmetool/APKBUILD
index 0ac280c113c..c96ccca8f19 100644
--- a/testing/acmetool/APKBUILD
+++ b/testing/acmetool/APKBUILD
@@ -1,26 +1,25 @@
# Contributor: kpcyrd <git@rxv.cc>
# Maintainer: kpcyrd <git@rxv.cc>
pkgname=acmetool
-pkgver=0.0.67
-pkgrel=7
+pkgver=0.2.2
+pkgrel=5
pkgdesc="An easy-to-use command line tool for automatically acquiring certificates from ACME servers (such as Let's Encrypt)"
-url="https://github.com/hlandau/acme"
+url="https://github.com/hlandau/acmetool"
arch="all"
license="MIT"
makedepends="go libcap-dev"
subpackages="$pkgname-doc"
# no test suite available
options="!check net"
-source="$pkgname-$pkgver.tar.gz::https://github.com/hlandau/acme/archive/v$pkgver.tar.gz
+source="$pkgname-$pkgver.tar.gz::https://github.com/hlandau/acmetool/archive/v$pkgver.tar.gz
go.mod
go.sum
"
export GOPATH="$srcdir/go"
export GOCACHE="$srcdir/go-build"
-export GOTMPDIR="$srcdir"
-
-export GOFLAGS="$GOFLAGS -modcacherw"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
prepare() {
default_prepare
@@ -29,19 +28,20 @@ prepare() {
}
build() {
- go build -v -ldflags "-s -w -X github.com/hlandau/acme/hooks.DefaultPath=/etc/acme/hooks" \
+ go build -v \
+ -ldflags "-X github.com/hlandau/acmetool/hooks.DefaultPath=/etc/acme/hooks" \
./cmd/acmetool/...
}
package() {
install -Dm 755 acmetool "$pkgdir/usr/bin/acmetool"
- install -Dm644 README.md "$pkgdir/usr/share/doc/$pkgname/README"
- install -Dm644 _doc/* -t "$pkgdir/usr/share/doc/$pkgname/"
+ install -Dm644 README.md "$pkgdir/usr/share/doc/acmetool/README"
+ cp -a _doc/* "$pkgdir/usr/share/doc/$pkgname/"
}
sha512sums="
-b0c3013167ceee6c1e577cf1678c256ffed243e8aa5038d86836e625a7c484fd5ca2bb79feb1cae981afc49a6e1635b62b23e58d11a86cc9c1e5012d9e0a638a acmetool-0.0.67.tar.gz
-69b85068284bcb6960d68b4a23e7703fdf8bd39ff986b1e73ce1846c4dd0ec16a2bf2d4cb25dc3431d48cde37eb78cd4e49b22e51cc6434a6e242acb8b7a67db go.mod
-50b020680e39b5b43df6470367d730c8827797f1426a94763ca6810dfc9a707d0e0b06f0e210c3c6da2cc10c0ed11754abebe2e235dc859bd2bb9e6e9544fd84 go.sum
+c24bebbf52664cfda0442db86f8437244322a709413fdd03a79294feac99045f0e06b4342a6186ae4aa400fb627e740f00eadf7522919d3faff4270badb38451 acmetool-0.2.2.tar.gz
+5c3e8400b46fbfe00553698c200075367bd6d6e19d3aaddf8029c9a3e43ae0b9a19496175358d8439cd6edf0d1652d68ed1ae1980318bad8f04112f7ef009841 go.mod
+e52269c2d78c8ca6e769ae918b369591e8965db0283e7c8c2f18531e4af36fd71589596d91dbf0f75fd5aeca36d95c522f28a4c8ae006a300a8ea9fc2e3eb305 go.sum
"
diff --git a/testing/acmetool/go.mod b/testing/acmetool/go.mod
index b4442e74bab..5fa7e6008ee 100644
--- a/testing/acmetool/go.mod
+++ b/testing/acmetool/go.mod
@@ -1,4 +1,4 @@
-module github.com/hlandau/acme
+module github.com/hlandau/acmetool
go 1.16
@@ -6,33 +6,37 @@ require (
github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc // indirect
github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf // indirect
github.com/btcsuite/winsvc v1.0.0 // indirect
- github.com/coreos/go-systemd v0.0.0-20180409111510-d1b7d058aa2a
+ github.com/coreos/go-systemd v0.0.0-20180409111510-d1b7d058aa2a // indirect
github.com/erikdubbelboer/gspt v0.0.0-20171114050331-2cac68f23d57 // indirect
github.com/fatih/color v1.12.0 // indirect
- github.com/godbus/dbus v4.1.1-0.20180409214157-d41f4c66e71d+incompatible // indirect
+ github.com/gofrs/uuid v4.4.0+incompatible
+ github.com/google/go-cmp v0.5.9 // indirect
github.com/hlandau/buildinfo v0.0.0-20161112115716-337a29b54997 // indirect
github.com/hlandau/dexlogconfig v0.0.0-20161112114350-244f29bd2608
github.com/hlandau/goutils v0.0.0-20160722130800-0cdb66aea5b8
github.com/hlandau/xlog v1.0.0
+ github.com/hlandauf/go-systemd v22.2.1-0.20210317225616-d4cbd5bfbd43+incompatible
github.com/jmhodges/clock v0.0.0-20160418191101-880ee4c33548
github.com/mattn/go-runewidth v0.0.3 // indirect
github.com/mitchellh/go-wordwrap v0.0.0-20150314170334-ad45545899c7
github.com/ogier/pflag v0.0.2-0.20160129220114-45c278ab3607 // indirect
- github.com/peterhellberg/link v1.0.1-0.20180124233705-6d32b8d78d1e
- github.com/satori/go.uuid v1.2.1-0.20180103174451-36e9d2ebbde5
+ github.com/peterhellberg/link v1.0.1-0.20180124233705-6d32b8d78d1e // indirect
github.com/shiena/ansicolor v0.0.0-20151119151921-a422bbe96644 // indirect
github.com/stretchr/testify v1.7.0 // indirect
- golang.org/x/crypto v0.0.0-20180411161317-d6449816ce06
+ golang.org/x/crypto v0.0.0-20180411161317-d6449816ce06 // indirect
golang.org/x/net v0.0.0-20180417003750-8d16fa6dc9a8
golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c // indirect
golang.org/x/text v0.3.1-0.20180410181320-7922cc490dd5 // indirect
gopkg.in/alecthomas/kingpin.v2 v2.2.6
gopkg.in/cheggaaa/pb.v1 v1.0.22
+ gopkg.in/hlandau/acmeapi.v2 v2.0.2
gopkg.in/hlandau/configurable.v1 v1.0.1 // indirect
gopkg.in/hlandau/easyconfig.v1 v1.0.16
gopkg.in/hlandau/service.v2 v2.0.16
gopkg.in/hlandau/svcutils.v1 v1.0.10
+ gopkg.in/hlandauf/dbus.v5 v5.990.1 // indirect
gopkg.in/square/go-jose.v1 v1.1.1
+ gopkg.in/square/go-jose.v2 v2.6.0 // indirect
gopkg.in/tylerb/graceful.v1 v1.2.15
gopkg.in/yaml.v2 v2.2.1
)
diff --git a/testing/acmetool/go.sum b/testing/acmetool/go.sum
index c4807081b2c..7629daf52ba 100644
--- a/testing/acmetool/go.sum
+++ b/testing/acmetool/go.sum
@@ -12,8 +12,10 @@ github.com/erikdubbelboer/gspt v0.0.0-20171114050331-2cac68f23d57 h1:3r+tV/4K76V
github.com/erikdubbelboer/gspt v0.0.0-20171114050331-2cac68f23d57/go.mod h1:v6o7m/E9bfvm79dE1iFiF+3T7zLBnrjYjkWMa1J+Hv0=
github.com/fatih/color v1.12.0 h1:mRhaKNwANqRgUBGKmnI5ZxEk7QXmjQeCcuYFMX2bfcc=
github.com/fatih/color v1.12.0/go.mod h1:ELkj/draVOlAH/xkhN6mQ50Qd0MPOk5AAr3maGEBuJM=
-github.com/godbus/dbus v4.1.1-0.20180409214157-d41f4c66e71d+incompatible h1:qYv6cwQWFuaUpUjhoW2MTzlrbMyEFc9gDpJAQspohZU=
-github.com/godbus/dbus v4.1.1-0.20180409214157-d41f4c66e71d+incompatible/go.mod h1:/YcGZj5zSblfDWMMoOzV4fas9FZnQYTkDnsGvmh2Grw=
+github.com/gofrs/uuid v4.4.0+incompatible h1:3qXRTX8/NbyulANqlc0lchS1gqAVxRgsuW1YrTJupqA=
+github.com/gofrs/uuid v4.4.0+incompatible/go.mod h1:b2aQJv3Z4Fp6yNu3cdSllBxTCLRxnplIgP/c0N/04lM=
+github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38=
+github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
github.com/hlandau/buildinfo v0.0.0-20161112115716-337a29b54997 h1:pSU4Sj7AD5qh+4V5FRlpiw3DpuNQ459c3j8h2F38q74=
github.com/hlandau/buildinfo v0.0.0-20161112115716-337a29b54997/go.mod h1:Oara+TmqGrvsLVEj5YkFe+PP9cSkp0kFD2PFQ5gjHok=
github.com/hlandau/dexlogconfig v0.0.0-20161112114350-244f29bd2608 h1:ouW4TuIFOsfgql1NgzTHGgW6esZ41RW5NZwHz3ALXn8=
@@ -22,6 +24,8 @@ github.com/hlandau/goutils v0.0.0-20160722130800-0cdb66aea5b8 h1:9aNGW7btNlVqbcq
github.com/hlandau/goutils v0.0.0-20160722130800-0cdb66aea5b8/go.mod h1:pYz0KEJgONY133I+1Pkmn6MLptkdKyz3SHgGmpDWyFI=
github.com/hlandau/xlog v1.0.0 h1:tcFGp86iK+v6NwbyuG9wyLB77SBkvAJUjOkRJo3H8C0=
github.com/hlandau/xlog v1.0.0/go.mod h1:aZl5hrokGCtnAFcvft2givQmKZYVfHRvQJbjoqI2lm8=
+github.com/hlandauf/go-systemd v22.2.1-0.20210317225616-d4cbd5bfbd43+incompatible h1:435zI8sPEgcr0HUwAczIY6cQQzJRJ+qlyj/tsDZzsww=
+github.com/hlandauf/go-systemd v22.2.1-0.20210317225616-d4cbd5bfbd43+incompatible/go.mod h1:Tfuxf4cwByXRPnu6MRc3Wn66VjG+worH/9IhfvPnlZg=
github.com/jmhodges/clock v0.0.0-20160418191101-880ee4c33548 h1:dYTbLf4m0a5u0KLmPfB6mgxbcV7588bOCx79hxa5Sr4=
github.com/jmhodges/clock v0.0.0-20160418191101-880ee4c33548/go.mod h1:hGT6jSUVzF6no3QaDSMLGLEHtHSBSefs+MgcDWnmhmo=
github.com/mattn/go-colorable v0.1.8 h1:c1ghPdyEDarC70ftn0y+A/Ee++9zz8ljHG1b13eJ0s8=
@@ -38,8 +42,6 @@ github.com/peterhellberg/link v1.0.1-0.20180124233705-6d32b8d78d1e h1:UNCcSD9GJ5
github.com/peterhellberg/link v1.0.1-0.20180124233705-6d32b8d78d1e/go.mod h1:gtSlOT4jmkY8P47hbTc8PTgiDDWpdPbFYl75keYyBB8=
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
-github.com/satori/go.uuid v1.2.1-0.20180103174451-36e9d2ebbde5 h1:Jw7W4WMfQDxsXvfeFSaS2cHlY7bAF4MGrgnbd0+Uo78=
-github.com/satori/go.uuid v1.2.1-0.20180103174451-36e9d2ebbde5/go.mod h1:dA0hQrYB0VpLJoorglMZABFdXlWrHn1NEOzdhQKdks0=
github.com/shiena/ansicolor v0.0.0-20151119151921-a422bbe96644 h1:X+yvsM2yrEktyI+b2qND5gpH8YhURn0k8OCaeRnkINo=
github.com/shiena/ansicolor v0.0.0-20151119151921-a422bbe96644/go.mod h1:nkxAfR/5quYxwPZhyDxgasBMnRtBZd0FCEpawpjMUFg=
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
@@ -59,6 +61,8 @@ gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/cheggaaa/pb.v1 v1.0.22 h1:c9uUtBcJbskglPcslP+bFq43Y9mR+Hja6qPRW0bsOJ0=
gopkg.in/cheggaaa/pb.v1 v1.0.22/go.mod h1:V/YB90LKu/1FcN3WVnfiiE5oMCibMjukxqG/qStrOgw=
+gopkg.in/hlandau/acmeapi.v2 v2.0.2 h1:S5jEi1/TiaPpfQ9Mwvhfi9NRDYZ+zA+UcRbysH4ygNM=
+gopkg.in/hlandau/acmeapi.v2 v2.0.2/go.mod h1:aWwBqx5Cy/gAMFsLZOKe0T/ZUMvy2kmsIIAZFjBOtFc=
gopkg.in/hlandau/configurable.v1 v1.0.1 h1:rH8g/WXZu2b/eyLagvsqUf9q5mO66hfGHW5L4rm8ktk=
gopkg.in/hlandau/configurable.v1 v1.0.1/go.mod h1:rlyQpcii/QkMGudMSMoe3jjHAgqLZuqg0hQkiUcNfF8=
gopkg.in/hlandau/easyconfig.v1 v1.0.16 h1:ldFeTZmzPDiiFbyeV8eOMVLAqSCWI0rg8W3GK3Z9wH0=
@@ -67,8 +71,12 @@ gopkg.in/hlandau/service.v2 v2.0.16 h1:mmaXq+/O4vXTWEGHdVy+Cy5S7h2djyu8Rodm6qE3o
gopkg.in/hlandau/service.v2 v2.0.16/go.mod h1:3f+96gui2lGv8llWOAUPi9+oI+TOBIyvlVHa1DUwliA=
gopkg.in/hlandau/svcutils.v1 v1.0.10 h1:eIasSJy56y3H3rJ0US4EJURTAfHXItiehMxZRRs7TrU=
gopkg.in/hlandau/svcutils.v1 v1.0.10/go.mod h1:aAoYFMVAq2ck6z8av+FBxzX/qX1ehmUIc5PgGBf+P3I=
+gopkg.in/hlandauf/dbus.v5 v5.990.1 h1:5ei2lTlF906KJlYbA8xv0LJFSV9Jb0Lr4EWSlzXyo3U=
+gopkg.in/hlandauf/dbus.v5 v5.990.1/go.mod h1:MofjUhKgyhZW5tf4SWxHvGcU4jKyvuHrsifrQNhNuvA=
gopkg.in/square/go-jose.v1 v1.1.1 h1:pA7KxQLcwADLRJ3lpUC+vIe4LCO8oRBMoq1HJoJhA3U=
gopkg.in/square/go-jose.v1 v1.1.1/go.mod h1:QpYS+a4WhS+DTlyQIi6Ka7MS3SuR9a055rgXNEe6EiA=
+gopkg.in/square/go-jose.v2 v2.6.0 h1:NGk74WTnPKBNUhNzQX7PYcTLUjoq7mzKk2OKbvwk2iI=
+gopkg.in/square/go-jose.v2 v2.6.0/go.mod h1:M9dMgbHiYLoDGQrXy7OpJDJWiKiU//h+vD76mk0e1AI=
gopkg.in/tylerb/graceful.v1 v1.2.15 h1:1JmOyhKqAyX3BgTXMI84LwT6FOJ4tP2N9e2kwTCM0nQ=
gopkg.in/tylerb/graceful.v1 v1.2.15/go.mod h1:yBhekWvR20ACXVObSSdD3u6S9DeSylanL2PAbAC/uJ8=
gopkg.in/yaml.v2 v2.2.1 h1:mUhvW9EsL+naU5Q3cakzfE91YhliOondGd6ZrsDBHQE=
diff --git a/testing/actionlint/APKBUILD b/testing/actionlint/APKBUILD
new file mode 100644
index 00000000000..ca38e6fcfaf
--- /dev/null
+++ b/testing/actionlint/APKBUILD
@@ -0,0 +1,38 @@
+# Contributor: Galen Abell <galen@galenabell.com>
+# Maintainer: Galen Abell <galen@galenabell.com>
+pkgname=actionlint
+pkgver=1.6.27
+pkgrel=2
+pkgdesc="Static checker for GitHub Actions workflow files"
+url="https://github.com/rhysd/actionlint"
+arch="all"
+license="MIT"
+makedepends="go ronn"
+options="chmod-clean net"
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/rhysd/actionlint/archive/refs/tags/v$pkgver.tar.gz"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ go build \
+ -ldflags="-buildid= -X github.com/rhysd/actionlint.version=$pkgver -s -w" \
+ ./cmd/$pkgname
+ ronn ./man/$pkgname.1.ronn
+}
+
+check() {
+ go test .
+}
+
+package() {
+ install -Dm755 $pkgname "$pkgdir"/usr/bin/$pkgname
+ install -Dm644 man/$pkgname.1 "$pkgdir"/usr/share/man/man1/$pkgname.1
+ install -Dm644 LICENSE.txt "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
+
+sha512sums="
+53427f8f676c489cda56ba2a3fc03d3955cb96d038a2127a46bb3372de47910bf54585e643fbc90f7b3bd3cfbba1c9801b993cad023846d1815814a1108de763 actionlint-1.6.27.tar.gz
+"
diff --git a/testing/admesh/APKBUILD b/testing/admesh/APKBUILD
index cb0345d9f49..63ce6a1dab6 100644
--- a/testing/admesh/APKBUILD
+++ b/testing/admesh/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
pkgname=admesh
-pkgver=0.98.4
+pkgver=0.98.5
pkgrel=0
pkgdesc="A program for processing triangulated solid meshes"
url="https://github.com/admesh/admesh"
@@ -12,13 +12,6 @@ subpackages="$pkgname-dev $pkgname-doc"
source="https://github.com/admesh/admesh/releases/download/v$pkgver/admesh-$pkgver.tar.gz"
options="!check" # no unit tests
-prepare() {
- default_prepare
-
- update_config_sub
- update_config_guess
-}
-
build() {
./configure \
--build=$CBUILD \
@@ -32,5 +25,5 @@ package() {
}
sha512sums="
-0c196aea8d0c8082e28946e96bc3223f01485dcd6b1ef5f785e3274ec20976e6a2dbbd5fdad7b5a442d942a8d862c7705a5201275e87e127e09abbb1f0c33ce4 admesh-0.98.4.tar.gz
+8d94966caf65ec09a143b0d9ed4a1dce1ccd6dc2281b6da02c620d6f31439c2ce4b6501bfca4392ed96727696df3a15c86890e4dd6fc995bc8cf9d130f25786a admesh-0.98.5.tar.gz
"
diff --git a/testing/advancemame/APKBUILD b/testing/advancemame/APKBUILD
index 7f1fa1aea16..d9519441620 100644
--- a/testing/advancemame/APKBUILD
+++ b/testing/advancemame/APKBUILD
@@ -1,14 +1,15 @@
# Maintainer: Taner Tas <taner76@gmail.com>
pkgname=advancemame
pkgver=3.9
-pkgrel=1
+pkgrel=4
pkgdesc="A port of the MAME emulator for Arcade Monitors and TVs but also for LCDs and PC monitors"
url="http://www.advancemame.it"
-arch="all"
+# armhf: fails with clang
+arch="all !armhf"
license="GPL-2.0-only"
makedepends="
alsa-lib-dev
- clang-dev
+ clang
expat-dev
freetype-dev
linux-headers
@@ -17,8 +18,10 @@ makedepends="
zlib-dev
"
subpackages="$pkgname-doc $pkgname-data::noarch $pkgname-mess $pkgname-menu"
-source="https://github.com/amadvance/${pkgname}/releases/download/v${pkgver}/${pkgname}-${pkgver}.tar.gz
- fix-ppc64le-float128.patch"
+source="https://github.com/amadvance/advancemame/releases/download/v$pkgver/advancemame-$pkgver.tar.gz
+ fix-ppc64le-float128.patch
+ formatsec.patch
+ "
options="!check"
# Fix build with gcc 10
@@ -32,18 +35,8 @@ prepare() {
}
build() {
- cd "$builddir"
-
-case "$CARCH" in
- armhf)
- true
- ;;
- *)
- export CC=clang
- export CXX=clang++
- ;;
-esac
-
+ export CC=clang
+ export CXX=clang++
./configure \
--build=$CBUILD \
@@ -57,33 +50,32 @@ esac
}
package() {
- cd "$builddir"
- make bindir="${pkgdir}/usr/bin/" \
- datadir="${pkgdir}/usr/share/" \
- mandir="${pkgdir}/usr/share/man/" \
- pkgdocdir="${pkgdir}/usr/share/doc/${pkgname}/" \
+ make bindir="$pkgdir/usr/bin/" \
+ datadir="$pkgdir/usr/share/" \
+ mandir="$pkgdir/usr/share/man/" \
+ pkgdocdir="$pkgdir/usr/share/doc/$pkgname/" \
install
}
data() {
- pkgdesc="Distrubition files for advancemame"
- depends="$pkgname"
- mkdir -p "$subpkgdir"/usr/share/advance
- mv "$pkgdir"/usr/share/advance/* "$subpkgdir"/usr/share/advance/
+ pkgdesc="Distribution files for advancemame"
+ depends="$pkgname=$pkgver-r$pkgrel"
+ amove usr/share/advance/*
}
mess() {
pkgdesc="Advancemame port of MESS."
- mkdir -p "$subpkgdir"/usr/bin
- mv "$pkgdir"/usr/bin/advmess "$subpkgdir"/usr/bin/
+ amove usr/bin/advmess
}
menu() {
pkgdesc="An emulator frontend with sound and animated previews of your games."
- mkdir -p "$subpkgdir"/usr/bin
- mv "$pkgdir"/usr/bin/advmenu "$subpkgdir"/usr/bin/
+ amove usr/bin/advmenu
}
-sha512sums="43f9ba746f222b17ade2d213d6af7cc8fe6b3ee6008633f02b8877f4c7f75628bdf1cc9718db09f5f9a482d194c8ba94f9047334e8012d23c598454e5dab2eb3 advancemame-3.9.tar.gz
-d42a9b3c65c2d96be5287c7541eb1e911562b3f2aaf07c55c1849725592857716ce496405e3da2243edcbd4b7307226306533ddf66ef2e081b4c492412930d1b fix-ppc64le-float128.patch"
+sha512sums="
+43f9ba746f222b17ade2d213d6af7cc8fe6b3ee6008633f02b8877f4c7f75628bdf1cc9718db09f5f9a482d194c8ba94f9047334e8012d23c598454e5dab2eb3 advancemame-3.9.tar.gz
+d42a9b3c65c2d96be5287c7541eb1e911562b3f2aaf07c55c1849725592857716ce496405e3da2243edcbd4b7307226306533ddf66ef2e081b4c492412930d1b fix-ppc64le-float128.patch
+461a76d3db95d9c894ec6937be18f2d1d7f193c2c06e14c4b3bb7cb860c7b2054f46fac636c8ebd9616d48a079b07f6cd2b1647ec0d706e26a473ac08d1ce504 formatsec.patch
+"
diff --git a/testing/advancemame/formatsec.patch b/testing/advancemame/formatsec.patch
new file mode 100644
index 00000000000..5ed46f57328
--- /dev/null
+++ b/testing/advancemame/formatsec.patch
@@ -0,0 +1,13 @@
+diff --git a/advance/menu/emulator.cc b/advance/menu/emulator.cc
+index cfa4300..3c3d5d6 100644
+--- a/advance/menu/emulator.cc
++++ b/advance/menu/emulator.cc
+@@ -2203,7 +2203,7 @@ bool advmess::run(const game& g, const game* bios, unsigned orientation, bool se
+ }
+ }
+ error += "\n";
+- target_err(error.c_str());
++ target_err("%s", error.c_str());
+ }
+
+ for (int i = 0; i < argc; ++i)
diff --git a/testing/advancescan/APKBUILD b/testing/advancescan/APKBUILD
index 71a76426928..063781108e5 100644
--- a/testing/advancescan/APKBUILD
+++ b/testing/advancescan/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Taner Tas <taner76@gmail.com>
pkgname=advancescan
pkgver=1.18
-pkgrel=0
+pkgrel=1
pkgdesc="Command line rom manager for AdvanceMAME and AdvanceMESS"
url="http://www.advancemame.it"
arch="all"
diff --git a/testing/adwaita-xfce-icon-theme/APKBUILD b/testing/adwaita-xfce-icon-theme/APKBUILD
deleted file mode 100644
index 7975d62c3c5..00000000000
--- a/testing/adwaita-xfce-icon-theme/APKBUILD
+++ /dev/null
@@ -1,26 +0,0 @@
-# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
-pkgname=adwaita-xfce-icon-theme
-pkgver=0.0.1
-pkgrel=0
-pkgdesc="Adwaita missing icons that are used in Xfce"
-url="https://github.com/shimmerproject/adwaita-xfce-icon-theme"
-arch="noarch !s390x !riscv64" # adwaita-icon-theme
-license="GPL-2.0-only"
-options="!check" # no testsuite. just icons
-depends="adwaita-icon-theme"
-source="https://github.com/shimmerproject/adwaita-xfce-icon-theme/archive/refs/tags/$pkgver/adwaita-xfce-icon-theme-$pkgver.tar.gz"
-builddir="$srcdir/adwaita-xfce-icon-theme-$pkgver"
-
-build() {
- ./configure \
- --prefix=/usr
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-78d76e28935e72f1b7e66f7ea4d29508b097054352ab01df0fc85a823a8559c76c692cbabef94a7d632348904364b2f14def6f27c61e4526389c9e46a9a2fea2 adwaita-xfce-icon-theme-0.0.1.tar.gz
-"
diff --git a/testing/aercbook/APKBUILD b/testing/aercbook/APKBUILD
new file mode 100644
index 00000000000..a0a780c2ebc
--- /dev/null
+++ b/testing/aercbook/APKBUILD
@@ -0,0 +1,30 @@
+# Contributor: Coco Liliace <coco@liliace.dev>
+# Maintainer: Coco Liliace <coco@liliace.dev>
+pkgname=aercbook
+pkgver=0.1.5
+pkgrel=0
+pkgdesc="Minimalistic address book for aerc"
+url="https://sr.ht/~renerocksai/aercbook/"
+arch="aarch64 x86_64"
+license="MIT"
+makedepends="zig"
+options="!check" # no tests
+source="$pkgname-$pkgver.tar.gz::https://git.sr.ht/~renerocksai/aercbook/archive/v$pkgver.tar.gz"
+builddir="$srcdir/$pkgname-v$pkgver"
+
+# We may want other than "baseline" for other targets, when enabled by zig
+case "$CARCH" in
+ aarch64|x86_64) cputarget=baseline ;;
+esac
+
+build() {
+ zig build -Doptimize=ReleaseSafe ${cputarget:+-Dcpu="$cputarget"}
+}
+
+package() {
+ install -Dm755 -t "$pkgdir"/usr/bin ./zig-out/bin/aercbook
+}
+
+sha512sums="
+ffabe7017e5d15df2cf19fa7663b045a7e693acfd34d25a85aa22235ed1f02d5ea40cee2cd0ff9f35d0ad497aefcde5048097365b7037c06c95729cf29d46614 aercbook-0.1.5.tar.gz
+"
diff --git a/testing/aero2solver/APKBUILD b/testing/aero2solver/APKBUILD
new file mode 100644
index 00000000000..c486c971f53
--- /dev/null
+++ b/testing/aero2solver/APKBUILD
@@ -0,0 +1,64 @@
+# Contributor: nezu <nezu@nezu.cc>
+# Maintainer: nezu <nezu@nezu.cc>
+pkgname=aero2solver
+pkgver=1.0.0
+pkgrel=0
+pkgdesc="Automatic captcha solver for aero2.pl"
+url="https://github.com/dumbasPL/aero2solver"
+# s390x: builds, but inference fails
+arch="all !s390x"
+license="MIT"
+makedepends="cargo cargo-auditable cmake clang-dev"
+install="$pkgname.pre-install"
+subpackages="$pkgname-doc $pkgname-openrc"
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/dumbasPL/aero2solver/archive/refs/tags/v$pkgver.tar.gz
+ $pkgname.initd
+ $pkgname.confd
+ $pkgname.logrotate
+ "
+options="net"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ MODEL_PATH=/usr/share/$pkgname/model \
+ cargo auditable build --frozen --release
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -m755 -D target/release/$pkgname \
+ -t "$pkgdir"/usr/bin/
+
+ install -m644 -D model/captcha.cfg \
+ -t "$pkgdir"/usr/share/$pkgname/model/
+ install -m644 -D model/captcha.names \
+ -t "$pkgdir"/usr/share/$pkgname/model/
+ install -m644 -D model/captcha.weights \
+ -t "$pkgdir"/usr/share/$pkgname/model/
+
+ install -m644 -D LICENSE \
+ -t "$pkgdir"/usr/share/licenses/$pkgname/
+
+ install -m755 -D "$srcdir"/$pkgname.initd \
+ "$pkgdir"/etc/init.d/$pkgname
+ install -m644 -D "$srcdir"/$pkgname.confd \
+ "$pkgdir"/etc/conf.d/$pkgname
+ install -m644 -D "$srcdir"/$pkgname.logrotate \
+ "$pkgdir"/etc/logrotate.d/$pkgname
+}
+
+sha512sums="
+d319eadf9908adc6bee4ef184226ee7b7371095fe03e204141718b90d01aeafec85c9fae1aacc04c8e67570e1c93ae916e5c3aa8a6d0bc2794e10becdd802734 aero2solver-1.0.0.tar.gz
+5183024b38e2b2257b23f82caec82baeb2ebf8c53238c9ce52f32f790909c30f40f2ea47a58bc861da08f84dd861434faeeeb617b0463e17794dc2aa6502d1b3 aero2solver.initd
+9ab94bc219108505264d94c396e979ab54da29fe8adebee247d747bd0035242d7aec6fe4e43a7f297667b51520edd6621167a7dab75987a2fd9ff587368aa2e4 aero2solver.confd
+466789dc2f8877bf04e2bbf0ef142f4cb4b70b1021def3deec39fa854e9661f0c0d583030ceebb4916996c8af4ea1df9a1b3a3d130223c3eea1a23737adba39a aero2solver.logrotate
+"
diff --git a/testing/aero2solver/aero2solver.confd b/testing/aero2solver/aero2solver.confd
new file mode 100755
index 00000000000..36e7ba804de
--- /dev/null
+++ b/testing/aero2solver/aero2solver.confd
@@ -0,0 +1,14 @@
+# Configuration for /etc/init.d/aero2solver
+
+# User (and group) to run aero2solver as.
+#command_user="aero2solver"
+
+# Additional arguments for aero2solver daemon.
+# check `aero2solver --help` for available options
+#command_args=
+
+# File to redirect stdout/stderr into. Set to empty string to disable.
+#logfile="/var/log/aero2solver.log"
+
+# Comment out to disable process supervisor.
+supervisor=supervise-daemon
diff --git a/testing/aero2solver/aero2solver.initd b/testing/aero2solver/aero2solver.initd
new file mode 100755
index 00000000000..f9adf5addcb
--- /dev/null
+++ b/testing/aero2solver/aero2solver.initd
@@ -0,0 +1,27 @@
+#!/sbin/openrc-run
+
+name="aero2solver"
+description="Aero2 solver daemon"
+
+: ${command_user:="aero2solver:aero2solver"}
+: ${logfile:="/var/log/$RC_SVCNAME.log"}
+
+command="/usr/bin/aero2solver"
+command_args="$command_args"
+command_background="yes"
+pidfile="/run/$RC_SVCNAME.pid"
+
+output_log="$logfile"
+error_log="$logfile"
+
+depend() {
+ need net
+ use dns
+ after firewall
+}
+
+start_pre() {
+ if [ "$logfile" ]; then
+ checkpath -f -m 644 -o "$command_user" "$logfile"
+ fi
+}
diff --git a/testing/aero2solver/aero2solver.logrotate b/testing/aero2solver/aero2solver.logrotate
new file mode 100644
index 00000000000..01191319f3f
--- /dev/null
+++ b/testing/aero2solver/aero2solver.logrotate
@@ -0,0 +1,5 @@
+/var/log/aero2solver.log {
+ copytruncate
+ missingok
+ notifempty
+}
diff --git a/testing/aero2solver/aero2solver.pre-install b/testing/aero2solver/aero2solver.pre-install
new file mode 100755
index 00000000000..b0ed3fd67a7
--- /dev/null
+++ b/testing/aero2solver/aero2solver.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S aero2solver 2>/dev/null
+adduser -S -D -H -s /sbin/nologin -G aero2solver -g aero2solver aero2solver 2>/dev/null
+
+exit 0
diff --git a/testing/afetch/APKBUILD b/testing/afetch/APKBUILD
index 461b757ad34..0173dabe25d 100644
--- a/testing/afetch/APKBUILD
+++ b/testing/afetch/APKBUILD
@@ -2,14 +2,14 @@
# Maintainer: KikooDX <kikoodx@paranoici.org>
pkgname=afetch
pkgver=2.2.0
-pkgrel=0
+pkgrel=1
pkgdesc="Fast and simple system info written in C"
url="https://github.com/13-CF/afetch"
arch="all"
license="GPL-3.0-or-later"
subpackages="$pkgname-doc"
options="!check" # there is no test suite
-source="$pkgname-$pkgver.tar.gz::$url/archive/refs/tags/V$pkgver.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/13-CF/afetch/archive/refs/tags/V$pkgver.tar.gz"
build() {
make
diff --git a/testing/agate/APKBUILD b/testing/agate/APKBUILD
new file mode 100644
index 00000000000..6580f80abe2
--- /dev/null
+++ b/testing/agate/APKBUILD
@@ -0,0 +1,44 @@
+# Maintainer: Cowington Post <cowingtonpost@gmail.com>
+pkgname=agate
+pkgver=3.3.7
+pkgrel=0
+pkgdesc="Simple Gemini server for static files"
+url="https://github.com/mbrubeck/agate"
+# rust-ring
+arch="all !s390x !ppc64le !riscv64"
+license="Apache-2.0"
+makedepends="cargo cargo-auditable openssl-dev"
+install="$pkgname.pre-install"
+subpackages="$pkgname-openrc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/mbrubeck/agate/archive/refs/tags/v$pkgver.tar.gz
+ agate.initd
+ agate.confd
+ "
+
+prepare() {
+ default_prepare
+
+ sed -i 's/version = "3.3.1"/version = "3.3.3"/' Cargo.lock
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release
+}
+
+check() {
+ cargo test
+}
+
+package() {
+ install -Dm755 target/release/agate -t "$pkgdir"/usr/bin
+ install -Dm755 "$srcdir"/agate.initd "$pkgdir"/etc/init.d/agate
+ install -Dm644 "$srcdir"/agate.confd "$pkgdir"/etc/conf.d/agate
+}
+
+sha512sums="
+09038d3ce0b2268548634f428c18787ff999993f8ec502e6c05e77c876075b30b401eff8e49eba90f575d8209aff970f5a8179441037c2dd69b497757584b5d5 agate-3.3.7.tar.gz
+711c7687e3e5421d0d625a11aa0067cc5fb4dbe9656e8d9aee2dd1a0fa0befe7a83c705c4875c8f20d3701fa0557c80af4b82373bade7c5be2c4dbd27e9f5141 agate.initd
+d8f54616edafaf513c591fc3ab405c65044a8f43cf1e50e43c7cac5ae3fa5c383a267108c10210ea236a5edfa1fcf2014a932e77bc216cc06dce83cab7e32c85 agate.confd
+"
diff --git a/testing/agate/agate.confd b/testing/agate/agate.confd
new file mode 100644
index 00000000000..d2e8d4789b5
--- /dev/null
+++ b/testing/agate/agate.confd
@@ -0,0 +1,8 @@
+output_log=/var/log/agate.log
+error_log=/var/log/agate.log
+content_path=/var/gemini/
+certificate_path=/var/gemini/.certificates
+hostname=localhost
+
+# comment to run without process supervisor
+supervisor=supervise-daemon
diff --git a/testing/agate/agate.initd b/testing/agate/agate.initd
new file mode 100644
index 00000000000..a26ed87f750
--- /dev/null
+++ b/testing/agate/agate.initd
@@ -0,0 +1,21 @@
+#!/sbin/openrc-run
+
+name="agate"
+command="/usr/bin/agate"
+command_user="agate:agate"
+command_background=true
+pidfile="/run/$RC_SVCNAME.pid"
+
+command_args="--content '$content_path' --certs '$certificate_path' --hostname '$hostname'"
+
+depend() {
+ need net localmount
+ after firewall
+}
+
+start_pre() {
+ checkpath -f "$output_log" -o "$command_user"
+ checkpath -f "$error_log" -o "$command_user"
+ checkpath -d "$content_path" -o "$command_user"
+ checkpath -d "$certificate_path" -o "$command_user"
+}
diff --git a/testing/agate/agate.pre-install b/testing/agate/agate.pre-install
new file mode 100644
index 00000000000..a48174c72ff
--- /dev/null
+++ b/testing/agate/agate.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S agate 2>/dev/null
+adduser -S -D -H -h /var/lib/agate -s /sbin/nologin -G agate -g agate agate 2>/dev/null
+
+exit 0
diff --git a/testing/agg/APKBUILD b/testing/agg/APKBUILD
index 85b15648b4e..634985362f0 100644
--- a/testing/agg/APKBUILD
+++ b/testing/agg/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Bradley J Chambers <brad.chambers@gmail.com>
pkgname=agg
pkgver=2.5
-pkgrel=2
+pkgrel=3
pkgdesc="Anti-Grain Geometry (AGG) is a general purpose graphical toolkit written completely in standard and platform independent C++."
options="!check" # No testsuite
url="https://src.fedoraproject.org/rpms/agg"
diff --git a/testing/aide/APKBUILD b/testing/aide/APKBUILD
new file mode 100644
index 00000000000..d70c9794e58
--- /dev/null
+++ b/testing/aide/APKBUILD
@@ -0,0 +1,42 @@
+# Contributor: Milan P. Stanić <mps@arvanta.net>
+# Maintainer: Milan P. Stanić <mps@arvanta.net>
+pkgname=aide
+pkgver=0.18.6
+pkgrel=0
+pkgdesc="file integrity checker and intrusion detection program"
+url="https://aide.github.io/"
+arch="all"
+license="GPL-2.0-or-later"
+makedepends="
+ autoconf
+ automake
+ bison
+ flex
+ libgcrypt-dev
+ pcre2-dev
+ "
+subpackages="$pkgname-doc"
+source="https://github.com/aide/aide/releases/download/v$pkgver/aide-$pkgver.tar.gz"
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+c0e7c366029a401bce4cf44762caecada4d4831bfc2f00ebab6cb818ba259fae5409fdfcc7386d2bc9ca91a8e8fe0eb78927205bc75513578b8a3ccd17183744 aide-0.18.6.tar.gz
+"
diff --git a/testing/airsonic-advanced/APKBUILD b/testing/airsonic-advanced/APKBUILD
index ab5d141fc5d..ec5e7c161b6 100644
--- a/testing/airsonic-advanced/APKBUILD
+++ b/testing/airsonic-advanced/APKBUILD
@@ -1,9 +1,8 @@
-# Contributor: Kevin Thomas <me@kevinthomas.dev>
-# Maintainer: Kevin Thomas <me@kevinthomas.dev>
+# Contributor: Kay Thomas <kaythomas@pm.me>
+# Maintainer: Kay Thomas <kaythomas@pm.me>
pkgname=airsonic-advanced
-# This commit fixes a bug that causes a build failure
-_sha=a2b8bfa72bf46ebdc3d9153f5580f0398c6b3aad
-pkgver=11.0.0_git20210504
+_sha=1397446f979b1cdea283eec89ce4f0eae7d63450
+pkgver=11.0.0_git20230217
pkgrel=0
pkgdesc="Modern implementation of the Airsonic fork with several key performance and feature enhancements"
url="https://github.com/airsonic-advanced/airsonic-advanced"
@@ -17,6 +16,7 @@ pkgusers="airsonic-advanced"
pkggroups="airsonic-advanced"
install="$pkgname.pre-install"
source="$pkgname-$pkgver.tar.gz::https://github.com/airsonic-advanced/airsonic-advanced/archive/$_sha.tar.gz
+ maven.patch
airsonic-advanced.initd
"
builddir="$srcdir/$pkgname-$_sha"
@@ -42,6 +42,7 @@ package() {
}
sha512sums="
-c7220318f7a1c94732b9be8f0f94a83e3f5fd1aa6dc989223b36bb3521e76b5a3a5d4f3837200b960e9c77852ab69fc9e228801c8a77df72d54ac88d13490636 airsonic-advanced-11.0.0_git20210504.tar.gz
+f415620bdbed9fb3874afbf30d9362e68b1e9e8e90dbbed4ca3206b643cad97ca0558e64ec5b4440382f0ec908c3325e321ea3631c38ff9a2109163c8f0cfe0b airsonic-advanced-11.0.0_git20230217.tar.gz
+6cb52fee19815fcdf2596e55d97d3e750321b1df7a4fec36fc9bc2a57d4be979a3905a42d3aa9dbeb2bf0d4f56edbf344f13551219b8e4d2ca583abd4bb5c8f9 maven.patch
ca87e6a7199950e6ac52aeb076a03f831d60ee9d4ceed47366bbd78443765d205796d895ebb244051d8033e5b2e9ccd648d20434039c854b8b50e766cc5cd10d airsonic-advanced.initd
"
diff --git a/testing/airsonic-advanced/maven.patch b/testing/airsonic-advanced/maven.patch
new file mode 100644
index 00000000000..56594b62899
--- /dev/null
+++ b/testing/airsonic-advanced/maven.patch
@@ -0,0 +1,8 @@
+fixes maven 3.9 breaking change
+https://maven.apache.org/docs/3.9.0/release-notes.html#potentially-breaking-core-changes
+--- airsonic-advanced-1397446f979b1cdea283eec89ce4f0eae7d63450/.mvn/maven.config
++++ airsonic-advanced-1397446f979b1cdea283eec89ce4f0eae7d63450/.mvn/maven.config
+@@ -1 +1,2 @@
+---settings ./.mvn/settings.xml
++--settings
++./.mvn/settings.xml
diff --git a/testing/alarmwakeup/APKBUILD b/testing/alarmwakeup/APKBUILD
new file mode 100644
index 00000000000..fa95b97fb3e
--- /dev/null
+++ b/testing/alarmwakeup/APKBUILD
@@ -0,0 +1,43 @@
+# Maintainer: Affe Null <affenull2345@gmail.com>
+pkgname=alarmwakeup
+pkgver=0.2.1
+pkgrel=0
+pkgdesc="RTC alarm management daemon"
+url="https://git.abscue.de/obp/alarmwakeup"
+arch="all"
+license="GPL-3.0-or-later"
+pkggroups="rtc"
+makedepends="
+ linux-headers
+ "
+subpackages="
+ $pkgname-dbg
+ $pkgname-dev
+ $pkgname-libs
+ $pkgname-utils
+ "
+source="
+ https://git.abscue.de/obp/alarmwakeup/-/archive/v$pkgver/alarmwakeup-v$pkgver.tar.gz
+ "
+options="!check suid" # no tests available
+builddir="$srcdir/alarmwakeup-v$pkgver"
+
+build() {
+ make
+}
+
+package() {
+ DESTDIR="$pkgdir" make install
+ # limit access to "rtc" group
+ chgrp rtc "$pkgdir/usr/bin/alarm-wakeup-daemon"
+ chmod 4750 "$pkgdir/usr/bin/alarm-wakeup-daemon"
+}
+
+utils() {
+ pkgdesc="$pkgdesc (command line utilities)"
+ amove usr/bin/alarm-wakeup-ctl
+}
+
+sha512sums="
+070308f3bf6ab6c57102663341ba4b2456bc6dd6f0e6bcf459b7fdd43e29e610447f4c4c75e188731e4ed9d5d2ce02b6d9b33236d06cfcca47b3b594fce03283 alarmwakeup-v0.2.1.tar.gz
+"
diff --git a/testing/alda/APKBUILD b/testing/alda/APKBUILD
new file mode 100644
index 00000000000..f68c89a1d04
--- /dev/null
+++ b/testing/alda/APKBUILD
@@ -0,0 +1,47 @@
+# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=alda
+pkgver=2.2.7
+pkgrel=4
+pkgdesc="Music programming language for musicians"
+url="https://github.com/alda-lang/alda"
+arch="x86_64"
+# aarch64: segfaults on gradle build
+# everything else: blocked by openjdk17
+license="EPL-2.0"
+depends="openjdk17"
+makedepends="go openjdk17-jdk gradle"
+source="$pkgname-$pkgver.tar.gz::https://github.com/alda-lang/alda/archive/refs/tags/release-$pkgver.tar.gz
+ alda-player
+ "
+builddir="$srcdir/$pkgname-release-$pkgver"
+options="!check" # no tests provided by upstream
+
+build() {
+ (
+ cd player
+ gradle --no-daemon build
+ )
+
+ (
+ cd client
+ go generate
+ go build
+ )
+}
+
+package() {
+ install -Dm755 client/client \
+ "$pkgdir"/usr/bin/alda
+
+ install -Dm644 player/build/libs/alda-player-fat.jar \
+ -t "$pkgdir"/usr/share/alda/
+
+ install -Dm755 "$srcdir"/alda-player \
+ -t "$pkgdir"/usr/bin
+}
+
+sha512sums="
+8df7280be8cdd30f45167288f6eb799803eb1aa950d220a80d57692e91acac85518623ef5e49c251594cb9af1de5ea9c84ab3961d12c2c68cd20482a7c63302a alda-2.2.7.tar.gz
+77d841e2b7873eb0de06723a5ea5373cc251ff8e82e1d542bc6e1fd297808e94bb9c322783366cbbea31f40284b073ed584296d02f30e36f9ac29158ad53430c alda-player
+"
diff --git a/testing/alda/alda-player b/testing/alda/alda-player
new file mode 100644
index 00000000000..91ff4e17f2e
--- /dev/null
+++ b/testing/alda/alda-player
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+exec /usr/lib/jvm/java-17-openjdk/bin/java -jar /usr/share/alda/alda-player-fat.jar "$@"
diff --git a/testing/alpine-lift/APKBUILD b/testing/alpine-lift/APKBUILD
index 842009cc7a6..35d4343c313 100644
--- a/testing/alpine-lift/APKBUILD
+++ b/testing/alpine-lift/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=alpine-lift
pkgver=0.2.0
-pkgrel=0
+pkgrel=15
pkgdesc="Basic cloud-init-like for Alpine Linux"
url="https://github.com/bjwschaap/alpine-lift"
license="MIT"
@@ -13,6 +13,10 @@ source="$pkgname-$pkgver.tar.gz::https://github.com/bjwschaap/alpine-lift/archiv
makefile.patch
"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
build() {
export CGO_CPPFLAGS="$CPPFLAGS"
export CGO_CFLAGS="$CFLAGS"
diff --git a/testing/alps/APKBUILD b/testing/alps/APKBUILD
new file mode 100644
index 00000000000..5da273ae366
--- /dev/null
+++ b/testing/alps/APKBUILD
@@ -0,0 +1,45 @@
+# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=alps
+pkgver=0_git20230807
+pkgrel=3
+_commit=652ea9c7885a6c508d3c69c37b7c65e5bbe4fe77
+pkgdesc="Simple and extensible webmail"
+url="https://sr.ht/~migadu/alps/"
+arch="all"
+license="MIT"
+makedepends="go"
+install="$pkgname.pre-install"
+subpackages="$pkgname-openrc"
+source="$pkgname-$_commit.tar.gz::https://git.sr.ht/~migadu/alps/archive/$_commit.tar.gz
+ fix-statics-dir.patch
+
+ alps.confd
+ alps.initd
+ "
+builddir="$srcdir/alps-$_commit"
+options="!check net" # no tests in upstream
+
+build() {
+ go build -o alps ./cmd/alps
+}
+
+package() {
+ install -Dm755 alps "$pkgdir"/usr/bin/alps
+
+ install -dm755 "$pkgdir"/var/lib/alps
+ cp -r themes "$pkgdir"/var/lib/alps
+ for asset in plugins/*/public/*.html plugins/*/public/**/*; do
+ install -Dm644 "$asset" "$pkgdir"/var/lib/alps/"$asset"
+ done
+
+ install -Dm755 "$srcdir"/alps.initd "$pkgdir"/etc/init.d/alps
+ install -Dm644 "$srcdir"/alps.confd "$pkgdir"/etc/conf.d/alps
+}
+
+sha512sums="
+17161088b6cd50d07e24deb90b54e17a54f0e634f9101aec1565cf16a1960ee9a086004d76052c3385fe93e4f71aa4335f4d1656523ae59dcdb8d899fccd3e07 alps-652ea9c7885a6c508d3c69c37b7c65e5bbe4fe77.tar.gz
+789b4cae9b2c4acb5b05288c4f9858de1b5cfda87bc96c40505e9447ec9ad39fdabbd5af0c65007c51a5f3a425602ea7a81d3f6c62894dddf6790fe26793755c fix-statics-dir.patch
+61c1b05851ae05fbf51cb8eb060c5677de7145a07dac3a194a3f7513b2ff3bf5f3792a749d1a2eef09fc6378f2fbf2021cc49dffe652f51230120c40a7062b6c alps.confd
+6e109577d662ce61d2b753e5b82237827646f10d0af02b10b3f184a10bb747c3c8303e7d20a5cc2b7c31ac4a6f3aef62290c068868e647c9b1ce711dfb6e025a alps.initd
+"
diff --git a/testing/alps/alps.confd b/testing/alps/alps.confd
new file mode 100644
index 00000000000..cd610105fd1
--- /dev/null
+++ b/testing/alps/alps.confd
@@ -0,0 +1,11 @@
+# Configuration for /etc/init.d/alps
+
+# space-separated list of imap/smtp servers
+servers="imap://localhost"
+
+theme="alps"
+listen_address=":1323"
+command_user="alps:alps"
+
+# comment this out for old style service management
+supervisor=supervise-daemon
diff --git a/testing/alps/alps.initd b/testing/alps/alps.initd
new file mode 100644
index 00000000000..307c6e333dd
--- /dev/null
+++ b/testing/alps/alps.initd
@@ -0,0 +1,23 @@
+#!/sbin/openrc-run
+
+name="alps webmail server"
+
+command="/usr/bin/alps"
+command_args="${listen_address:+-addr $listen_address} ${theme:+-theme $theme} $servers"
+: ${command_user:="alps:alps"}
+command_background=yes
+directory="/var/lib/alps"
+pidfile="/run/alps.pid"
+
+output_log="/var/log/alps.log"
+error_log="/var/log/alps.log"
+
+depend() {
+ need net
+ after firewall
+}
+
+start_pre() {
+ checkpath -d -m 755 -o "$command_user" /var/lib/alps
+ checkpath -f -m 644 -o "$command_user" /var/log/alps.log
+}
diff --git a/testing/alps/alps.pre-install b/testing/alps/alps.pre-install
new file mode 100644
index 00000000000..176a8010928
--- /dev/null
+++ b/testing/alps/alps.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S alps
+adduser -S -D -H -h /var/lib/alps -s /sbin/nologin -G alps -g alps alps
+
+exit 0
diff --git a/testing/alps/fix-statics-dir.patch b/testing/alps/fix-statics-dir.patch
new file mode 100644
index 00000000000..72eaffaaab3
--- /dev/null
+++ b/testing/alps/fix-statics-dir.patch
@@ -0,0 +1,26 @@
+diff --git a/cmd/alps/main.go b/cmd/alps/main.go
+index 5a00957..f537177 100644
+--- a/cmd/alps/main.go
++++ b/cmd/alps/main.go
+@@ -23,7 +23,7 @@ import (
+ _ "git.sr.ht/~migadu/alps/plugins/viewtext"
+ )
+
+-var themesPath = "./themes"
++var themesPath = "/var/lib/alps/themes"
+
+ func main() {
+ var (
+diff --git a/plugin.go b/plugin.go
+index e634f02..43b8164 100644
+--- a/plugin.go
++++ b/plugin.go
+@@ -7,7 +7,7 @@ import (
+ )
+
+ // PluginDir is the path to the plugins directory.
+-const PluginDir = "plugins"
++const PluginDir = "/var/lib/alps/plugins"
+
+ // Plugin extends alps with additional functionality.
+ type Plugin interface {
diff --git a/testing/alsa-ucm-conf-asahi/APKBUILD b/testing/alsa-ucm-conf-asahi/APKBUILD
new file mode 100644
index 00000000000..32a94dbce83
--- /dev/null
+++ b/testing/alsa-ucm-conf-asahi/APKBUILD
@@ -0,0 +1,20 @@
+# Contributor: Milan P. Stanić <mps@arvanta.net>
+# Maintainer: Milan P. Stanić <mps@arvanta.net>
+pkgname=alsa-ucm-conf-asahi
+pkgver=5
+pkgrel=0
+pkgdesc="ALSA Use Case Manager configuration for Apple silicon devices"
+url="https://asahilinux.org/"
+arch="aarch64"
+license="BSD-3-Clause"
+depends="alsa-ucm-conf>=1.2.7.2"
+source="$pkgname-$pkgver.tar.gz::https://github.com/AsahiLinux/alsa-ucm-conf-asahi/archive/refs/tags/v$pkgver.tar.gz"
+
+package() {
+ install -vdm 755 "$pkgdir/usr/share/alsa/ucm2/conf.d"
+ cp -av ucm2/conf.d/macaudio "$pkgdir/usr/share/alsa/ucm2/conf.d/"
+}
+
+sha512sums="
+4e2f8b0108c0ec4168ebe1dae88da0b486cc26695ca89fc450340fbc5532616847eb9c49097be5216e8b7b8cb7c62ac78032d253d4264ac0d0378817bf85af81 alsa-ucm-conf-asahi-5.tar.gz
+"
diff --git a/testing/alttab/APKBUILD b/testing/alttab/APKBUILD
index cea03c35284..ad4539408b7 100644
--- a/testing/alttab/APKBUILD
+++ b/testing/alttab/APKBUILD
@@ -1,14 +1,14 @@
# Contributor: Alexander Kulak <sa-dev@rainbow.by>
# Maintainer: Alexander Kulak <sa-dev@rainbow.by>
pkgname=alttab
-pkgver=1.6.1
+pkgver=1.7.1
pkgrel=0
pkgdesc="X11 window switcher designed for minimalistic window managers"
url="https://github.com/sagb/alttab"
options="!check"
arch="all"
license="GPL-3.0-or-later"
-makedepends="autoconf automake libx11-dev libxft-dev fts-dev libxrender-dev libxrandr-dev
+makedepends="autoconf automake libx11-dev libxft-dev musl-fts-dev libxrender-dev libxrandr-dev
libpng-dev uthash-dev libxpm-dev"
subpackages="$pkgname-doc"
source="$pkgname-$pkgver.tar.gz::https://github.com/sagb/alttab/archive/v$pkgver.tar.gz
@@ -35,5 +35,5 @@ package() {
}
sha512sums="
-6d284b29b606908828958a07dc6e816280f38a41883841df24427de20631497bbe9030ca5190a0e0e636694e76df83b784ced1b8e181c6f9bf25ec3ceb82779b alttab-1.6.1.tar.gz
+d9f6c1d00be21e975521ebc39e800f00522f0d898512a7e3a406ae859890c553a1ae312a0947701085831aa5e62b5b9db859ae84af4b3e8f3370462634a5ab97 alttab-1.7.1.tar.gz
"
diff --git a/testing/amazon-ssm-agent/001_sanitize_makefile.patch b/testing/amazon-ssm-agent/001_sanitize_makefile.patch
new file mode 100644
index 00000000000..bdb14a7e113
--- /dev/null
+++ b/testing/amazon-ssm-agent/001_sanitize_makefile.patch
@@ -0,0 +1,74 @@
+# Remove CGO flag, and make build options match the same format
+--- a/makefile
++++ b/makefile
+@@ -1,6 +1,6 @@
+ COPY := cp -p
+ GO_BUILD_NOPIE := CGO_ENABLED=0 go build -ldflags "-s -w" -trimpath
+-GO_BUILD_PIE := go build -ldflags "-s -w -extldflags=-Wl,-z,now,-z,relro,-z,defs" -buildmode=pie -trimpath
++GO_BUILD_PIE := go build -ldflags "-s -w -extldflags=-Wl,-z,now,-z,relro,-z,defs" -buildmode=pie -trimpath
+ GO_BUILD_STATIC_PIE := go build -ldflags '-linkmode external -s -w -extldflags "-static-pie -Wl,-z,relro,-z,defs"' -buildmode=pie -trimpath -tags 'osusergo netgo static_build'
+ GO_BUILD_DEBUG := go build -gcflags "all=-N -l"
+
+@@ -34,7 +34,7 @@
+ github.com/aws/amazon-ssm-agent/agent/... \
+ github.com/aws/amazon-ssm-agent/core/...
+
+-build:: build-linux build-freebsd build-windows build-linux-386 build-windows-386 build-arm build-arm64 build-darwin-amd64 build-darwin-arm64
++build:: build-linux-amd64 build-freebsd build-windows build-linux-386 build-windows-386 build-linux-arm build-linux-arm64 build-darwin-amd64 build-darwin-arm64
+
+ prepack:: cpy-plugins copy-win-dep prepack-linux prepack-linux-arm64 prepack-linux-386 prepack-windows prepack-windows-386
+
+@@ -149,11 +149,11 @@
+ # Pre-defined recipes for various supported builds:
+
+ # Production 64bit linux binaries are built using GO_BUILD_STATIC_PIE
+-.PHONY: build-linux
+-build-linux: GOARCH=amd64
+-build-linux: GOOS=linux
+-build-linux: GO_BUILD=$(GO_BUILD_PIE)
+-build-linux: build-any-amd64-linux
++.PHONY: build-linux-amd64
++build-linux-amd64: GOARCH=amd64
++build-linux-amd64: GOOS=linux
++build-linux-amd64: GO_BUILD=$(GO_BUILD_PIE)
++build-linux-amd64: build-any-amd64-linux
+
+ .PHONY: build-linux-debug
+ build-linux-debug: clean pre-release
+@@ -193,7 +193,7 @@
+ .PHONY: build-linux-386
+ build-linux-386: GOOS=linux
+ build-linux-386: GOARCH=386
+-build-linux-386: GO_BUILD=$(GO_BUILD_NOPIE)
++build-linux-386: GO_BUILD=$(GO_BUILD_PIE)
+ build-linux-386: build-any-linux-386
+
+ .PHONY: build-windows-386
+@@ -205,17 +205,17 @@
+ build-windows-386: GO_WORKER_SRC_TYPE=windows
+ build-windows-386: build-any-windows-386
+
+-.PHONY: build-arm
+-build-arm: GOOS=linux
+-build-arm: GOARCH=arm
+-build-arm: GO_BUILD=GOARM=6 $(GO_BUILD_NOPIE)
+-build-arm: build-any-arm
++.PHONY: build-linux-arm
++build-linux-arm: GOOS=linux
++build-linux-arm: GOARCH=arm
++build-linux-arm: GO_BUILD=GOARM=6 $(GO_BUILD_PIE)
++build-linux-arm: build-any-linux-arm
+
+-.PHONY: build-arm64
+-build-arm64: GOOS=linux
+-build-arm64: GOARCH=arm64
+-build-arm64: GO_BUILD=$(GO_BUILD_NOPIE)
+-build-arm64: build-any-linux-arm64
++.PHONY: build-linux-arm64
++build-linux-arm64: GOOS=linux
++build-linux-arm64: GOARCH=arm64
++build-linux-arm64: GO_BUILD=$(GO_BUILD_PIE)
++build-linux-arm64: build-any-linux-arm64
+
+ .PHONY: copy-src
+ copy-src:
diff --git a/testing/amazon-ssm-agent/APKBUILD b/testing/amazon-ssm-agent/APKBUILD
new file mode 100644
index 00000000000..e10d984a904
--- /dev/null
+++ b/testing/amazon-ssm-agent/APKBUILD
@@ -0,0 +1,58 @@
+# Contributor: Will Sinatra <wpsinatra@gmail.com>
+# Maintainer: Will Sinatra <wpsinatra@gmail.com>
+pkgname=amazon-ssm-agent
+pkgver=3.3.217.0
+pkgrel=0
+pkgdesc="Amazon SSM Agent for managing EC2 Instances using the SSM APIs."
+url="https://aws.amazon.com/documentation/systems-manager/"
+license="Apache-2.0"
+arch="all !s390x !riscv64 !ppc64le"
+# armv7/armhf/x86 complains about cgo linking not being enabled
+makedepends="go gcompat bash cgo"
+source="https://github.com/aws/amazon-ssm-agent/archive/$pkgver/amazon-ssm-agent-$pkgver.tar.gz
+ amazon-ssm-agent.initd
+ 001_sanitize_makefile.patch"
+subpackages="$pkgname-openrc"
+options="!check"
+_binaries="amazon-ssm-agent
+ ssm-agent-worker
+ ssm-cli
+ ssm-document-worker
+ ssm-session-logger
+ ssm-session-worker
+ ssm-setup-cli
+ "
+
+case "$CARCH" in
+ armhf) build_arch=arm ;;
+ armv7) build_arch=arm ;;
+ x86) build_arch=386 ;;
+ x86_64) build_arch=amd64 ;;
+ aarch64) build_arch=arm64 ;;
+esac
+
+build() {
+ make build-linux-$build_arch
+}
+
+package() {
+ for bin in $_binaries; do
+ install -Dm0755 "$builddir"/bin/linux_$build_arch/$bin "$pkgdir"/usr/bin/$bin
+ done
+
+ install -Dm0644 "$builddir"/bin/amazon-ssm-agent.json.template \
+ "$pkgdir"/etc/amazon/ssm/amazon-ssm-agent.json.template
+ install -Dm0644 "$builddir"/bin/seelog_unix.xml \
+ "$pkgdir"/etc/amazon/ssm/seelog.xml
+ install -Dm0644 "$builddir"/bin/seelog_windows.xml.template \
+ "$pkgdir"/etc/amazon/ssm/seelog_windows.xml.template
+
+ install -Dm0755 "$srcdir"/amazon-ssm-agent.initd \
+ "$pkgdir"/etc/init.d/amazon-ssm-agent
+}
+
+sha512sums="
+96b4ef5b3b997b01c667bfbf4bb972cd401eddbfef430b19c69a0e5a498f63abc01fa0ea7ede4c16f4ea7acce63c9b05eae1157c34b27906df669214ad1064a6 amazon-ssm-agent-3.3.217.0.tar.gz
+2c07d6777ad0d3994f09838818bff2c0bc061238e2c3ca757a9bd04cd25924ce24bdc2ecd7edbd4b10717ba3c8806398626e0718acf8e7ba5c66853369b20f48 amazon-ssm-agent.initd
+d90a10ed7f3cf0a58bb73f737c2d10d56b3942886535df7d9215e2cf809c59ef708ed4d9775062e46343cf64726d25adaf048c86f39d4a7647deebd91d69c2f9 001_sanitize_makefile.patch
+"
diff --git a/testing/amazon-ssm-agent/amazon-ssm-agent.initd b/testing/amazon-ssm-agent/amazon-ssm-agent.initd
new file mode 100644
index 00000000000..7862dbe5490
--- /dev/null
+++ b/testing/amazon-ssm-agent/amazon-ssm-agent.initd
@@ -0,0 +1,21 @@
+#!/sbin/openrc-run
+description="Initialize Amazon SSM Agent"
+command="/usr/bin/amazon-ssm-agent"
+
+start() {
+ ebegin "Starting SSM Agent"
+ start-stop-daemon --start \
+ --chdir ${SSM Agent_path} \
+ --exec ${command} ${command_args} \
+ -b --make-pidfile \
+ --pidfile "${pidfile}"
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping SSM Agent"
+ start-stop-daemon --stop \
+ --exec ${command} \
+ --pidfile "${pidfile}"
+ eend $?
+}
diff --git a/testing/amdgpu-fan/APKBUILD b/testing/amdgpu-fan/APKBUILD
new file mode 100644
index 00000000000..ea1a75b1593
--- /dev/null
+++ b/testing/amdgpu-fan/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: Anjandev Momi <anjan@momi.ca>
+# Maintainer: Anjandev Momi <anjan@momi.ca>
+pkgname=amdgpu-fan
+pkgver=0.1.0
+pkgrel=4
+pkgdesc="Fan controller for AMD graphics cards running the amdgpu driver on Linux"
+url="https://github.com/zzkW35/amdgpu-fan"
+arch="noarch"
+license="GPL-2.0-or-later"
+depends="python3 py3-yaml py3-numpy"
+makedepends="py3-setuptools"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/zzkW35/amdgpu-fan/archive/refs/tags/$pkgver.tar.gz"
+
+prepare() {
+ default_prepare
+
+ sed -i "s/PROJECTVERSION/$pkgver/g" setup.py
+}
+
+build() {
+ python3 setup.py build
+}
+
+check() {
+ PYTHONPATH="$PWD/build/lib" pytest
+}
+
+package() {
+ python3 setup.py install --skip-build --root="$pkgdir"
+}
+
+sha512sums="
+b21d8e413d44a263fdbef37fff11a496fe5e46a1f4d1e7ade161dde36750cf0dc02dfd2ccaebc455dac5aa023150101a65a255a38e6d9b70a6bba39da8f26378 amdgpu-fan-0.1.0.tar.gz
+"
diff --git a/testing/ameba/0001-unexpected-token.patch b/testing/ameba/0001-unexpected-token.patch
deleted file mode 100644
index 3a1379337cf..00000000000
--- a/testing/ameba/0001-unexpected-token.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-commit 9a19c9b3cff593be15ebf12f1350999e85c0fec8
-Author: ptrcnull <git@ptrcnull.me>
-Date: Thu Feb 3 05:19:42 2022 +0100
-
- add quotes to "unexpected token" message
-
- that seems to come from Crystal itself,
- Alpine has Crystal 1.3.2 whereas Ameba's CI uses 1.2.2
-
-diff --git a/spec/ameba/rule/lint/syntax_spec.cr b/spec/ameba/rule/lint/syntax_spec.cr
-index f7402e7..c362af9 100644
---- a/spec/ameba/rule/lint/syntax_spec.cr
-+++ b/spec/ameba/rule/lint/syntax_spec.cr
-@@ -31,7 +31,7 @@ module Ameba::Rule::Lint
-
- issue.rule.should_not be_nil
- issue.location.to_s.should eq "source.cr:1:11"
-- issue.message.should eq "unexpected token: end (expected ';' or newline)"
-+ issue.message.should eq "unexpected token: \"end\" (expected \";\" or newline)"
- end
-
- it "has highest severity" do
diff --git a/testing/ameba/APKBUILD b/testing/ameba/APKBUILD
deleted file mode 100644
index b7adc950578..00000000000
--- a/testing/ameba/APKBUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
-pkgname=ameba
-pkgver=0.14.3
-pkgrel=1
-pkgdesc="static code analysis tool for Crystal"
-url="https://github.com/crystal-ameba/ameba"
-arch="x86_64 aarch64"
-license="MIT"
-makedepends="crystal libxml2-dev shards yaml-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/veelenga/ameba/archive/v$pkgver.tar.gz
- 0001-unexpected-token.patch
- "
-
-export CRYSTAL_CACHE_DIR="$srcdir/.cache"
-
-build() {
- make CRFLAGS="--release"
-}
-
-check() {
- make test SPEC_FLAGS="--no-color"
-}
-
-package() {
- make install PREFIX="$pkgdir/usr"
-}
-
-sha512sums="
-830d71a74bb76c8ed0ee96f0a9363fb3ee7d8eb080a6b8fe07d5e79393e570666f49ac84296d40d77e35c26d0f3d8ad03298e90581bbefd0ac2f45ceb04b969a ameba-0.14.3.tar.gz
-748ca336efaf4b1da798ee918dbe652357e1b309a022906a68b2ad07950018f1b3105c2711b2449eae944647bd5b1e5a2038221d6d465ebfdc656c1a9308c8af 0001-unexpected-token.patch
-"
diff --git a/testing/amiitool/APKBUILD b/testing/amiitool/APKBUILD
index bccb90f01a0..7c7193a3097 100644
--- a/testing/amiitool/APKBUILD
+++ b/testing/amiitool/APKBUILD
@@ -3,7 +3,7 @@
pkgname=amiitool
pkgver=2
_pkgver=r2
-pkgrel=1
+pkgrel=2
pkgdesc="Reverse-engineered amiibo cryptography"
url="https://github.com/socram8888/amiitool"
arch="all"
@@ -12,6 +12,7 @@ options="!check" # No test suite
makedepends="git mbedtls-dev" # git is used to pull head version
source="$pkgname-$_pkgver.tar.gz::https://github.com/socram8888/amiitool/archive/$_pkgver.tar.gz
fix-mbedtls_include.patch
+ zero-gitversion.patch
"
builddir="$srcdir/$pkgname-$_pkgver"
@@ -23,5 +24,8 @@ package() {
make prefix=/usr DESTDIR="$pkgdir" install
}
-sha512sums="28087a022a88ca604f610dff6f49f19f4c273d7787401a3e1dd998243ba4ca3628adb58bf9ea20e8e6c77cc021bedfeda8b632e0a50efe752eec543f20ef33d6 amiitool-r2.tar.gz
-50bc13ff736c65b05b402e3dc1c3e61242271e9d311f5a60169263e2dd6ca5765dee6b1cde963e3a76980deaf29ee1e65991b9028f9c58c3a6402d959015993e fix-mbedtls_include.patch"
+sha512sums="
+28087a022a88ca604f610dff6f49f19f4c273d7787401a3e1dd998243ba4ca3628adb58bf9ea20e8e6c77cc021bedfeda8b632e0a50efe752eec543f20ef33d6 amiitool-r2.tar.gz
+50bc13ff736c65b05b402e3dc1c3e61242271e9d311f5a60169263e2dd6ca5765dee6b1cde963e3a76980deaf29ee1e65991b9028f9c58c3a6402d959015993e fix-mbedtls_include.patch
+52d4588b155d66f762523247b4a2ba98c1230d06adc9de4b065a6ccbfe4acc6ed5834a7426d0e81fadd8a8517667da61fdd3653d46c7b718d887a470028cc5b5 zero-gitversion.patch
+"
diff --git a/testing/amiitool/zero-gitversion.patch b/testing/amiitool/zero-gitversion.patch
new file mode 100644
index 00000000000..a3c975285fe
--- /dev/null
+++ b/testing/amiitool/zero-gitversion.patch
@@ -0,0 +1,15 @@
+These git commands now error out, instead of returning aports info.
+
+--- a/Makefile
++++ b/Makefile
+@@ -46,8 +46,8 @@
+ $(CC) $(ALL_CFLAGS) -c $< -o $@
+
+ gitversion.h:
+- echo "#define GIT_COMMIT_ID 0x`git rev-parse HEAD | head -c8`" > $(PWD)/gitversion.h
+- echo "#define GIT_COMMIT_COUNT `git rev-list --count --all`" >> $(PWD)/gitversion.h
++ echo "#define GIT_COMMIT_ID 0x0" > $(PWD)/gitversion.h
++ echo "#define GIT_COMMIT_COUNT 0" >> $(PWD)/gitversion.h
+
+ # Static mbed TLS
+ mbedtls: $(MBEDTLS_CONFIG)
diff --git a/testing/ampy/APKBUILD b/testing/ampy/APKBUILD
index 7e1389a009a..8299dbb9448 100644
--- a/testing/ampy/APKBUILD
+++ b/testing/ampy/APKBUILD
@@ -3,9 +3,9 @@
pkgname=ampy
_pkgname=adafruit-ampy
pkgver=1.1.0
-pkgrel=0
+pkgrel=5
pkgdesc="Utility to interact with a MicroPython board over a serial connection"
-url="https://github.com/adafruit/ampy"
+url="https://github.com/scientifichackers/ampy"
arch="noarch"
license="MIT"
depends="
@@ -15,7 +15,7 @@ depends="
python3
"
makedepends="py3-setuptools"
-subpackages="$pkgname-doc"
+subpackages="$pkgname-doc $pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
@@ -33,7 +33,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
mkdir -p "$pkgdir"/usr/share/doc/$pkgname/
install -m644 README.md "$pkgdir"/usr/share/doc/$pkgname/
diff --git a/testing/amsynth/APKBUILD b/testing/amsynth/APKBUILD
deleted file mode 100644
index ca445d86510..00000000000
--- a/testing/amsynth/APKBUILD
+++ /dev/null
@@ -1,42 +0,0 @@
-# Contributor: David Demelier <markand@malikania.fr>
-# Maintainer: David Demelier <markand@malikania.fr>
-pkgname=amsynth
-pkgver=1.12.4
-pkgrel=0
-pkgdesc="easy-to-use software synth with a classic subtractive synthesizer topology"
-url="https://amsynth.github.io"
-arch="all"
-license="GPL-2.0-only"
-depends="libintl"
-makedepends="alsa-lib-dev gettext-dev gtk+2.0-dev jack-dev lv2-dev"
-subpackages="$pkgname-lang $pkgname-lv2"
-source="https://github.com/amsynth/amsynth/releases/download/release-$pkgver/amsynth-$pkgver.tar.gz"
-
-build() {
- LDFLAGS="-lintl $LDFLAGS"
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-lv2() {
- pkgdesc="amsynth (LV2 plugins)"
- amove usr/lib/lv2/*
-}
-
-sha512sums="
-502fdd1d6c4e54a57482d266977d78008efa26717c173be0bf98e907a111366fd80b65d667b9448e751085901dc5f2a61ac0bf5b1d02e35c695ecd99c9d1df00 amsynth-1.12.4.tar.gz
-"
diff --git a/testing/amule/APKBUILD b/testing/amule/APKBUILD
index 28c8a7102f7..6065cbd5627 100644
--- a/testing/amule/APKBUILD
+++ b/testing/amule/APKBUILD
@@ -3,30 +3,39 @@
pkgname=amule
_pkgname=aMule
pkgver=2.3.3
-pkgrel=4
+pkgrel=12
pkgdesc="eMule-like client for the eD2k and Kademlia networks"
url="https://www.amule.org/"
-arch="all"
+arch="all !x86" # crypto++
license="GPL-2.0-or-later"
-makedepends="bison boost-dev crypto++-dev gd-dev geoip-dev libsm-dev libupnp-dev
- wxgtk3-dev"
+makedepends="
+ bison
+ boost-dev
+ crypto++-dev
+ gd-dev
+ geoip-dev
+ libsm-dev
+ libupnp-dev
+ wxwidgets-dev
+ "
options="!check" # unexpected end of file
subpackages="$pkgname-lang $pkgname-doc"
-source="$_pkgname-$pkgver.tar.xz::https://downloads.sourceforge.net/project/amule/aMule/2.3.3/aMule-$pkgver.tar.xz
+source="$_pkgname-$pkgver.tar.xz::https://downloads.sourceforge.net/project/amule/aMule/$pkgver/aMule-$pkgver.tar.xz
fix-gcc11-include.patch
"
builddir="$srcdir/$_pkgname-$pkgver"
build() {
+ export CFLAGS="$CFLAGS -flto=auto -DNDEBUG"
+ export CXXFLAGS="$CXXFLAGS -flto=auto -DNDEBUG"
+
./configure \
- CPPFLAGS="$CPPFLAGS -Wno-unused-local-typedefs" \
- CFLAGS="$CFLAGS -fPIC" \
- CXXFLAGS="$CXXFLAGS -fPIC" \
--build=$CBUILD \
--host=$CHOST \
--prefix=/usr \
--mandir=/usr/share/man \
+ --disable-debug \
--enable-alc \
--enable-alcc \
--enable-amule-daemon \
@@ -37,9 +46,9 @@ build() {
--enable-optimize \
--enable-upnp \
--enable-webserver \
- --disable-debug \
- --with-boost \
- --with-wx-config=wx-config-gtk3
+ --enable-fileview \
+ --with-boost
+
make
}
diff --git a/testing/anarch/APKBUILD b/testing/anarch/APKBUILD
index aa0ca07ceda..1ea4bd00daf 100644
--- a/testing/anarch/APKBUILD
+++ b/testing/anarch/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Waweic <waweic@activ.ism.rocks>
pkgname=anarch
pkgver=1.0
-pkgrel=0
+pkgrel=1
pkgdesc="Extremely small 90s style doom clone"
url="https://gitlab.com/drummyfish/anarch"
arch="all"
diff --git a/testing/anari-sdk/APKBUILD b/testing/anari-sdk/APKBUILD
new file mode 100644
index 00000000000..bfe1b69e600
--- /dev/null
+++ b/testing/anari-sdk/APKBUILD
@@ -0,0 +1,64 @@
+# Maintainer: Simon Zeni <simon@bl4ckb0ne.ca>
+pkgname=anari-sdk
+pkgver=0.7.2
+pkgrel=0
+pkgdesc="SDK for the ANARI 3D rendering engine interface API"
+url="https://github.com/KhronosGroup/ANARI-SDK"
+arch="all"
+license="Apache-2.0"
+makedepends="cmake ninja python3 glm-dev"
+subpackages="$pkgname-static $pkgname-dev"
+source="$pkgname-$pkgver.tar.gz::https://github.com/KhronosGroup/ANARI-SDK/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/ANARI-SDK-$pkgver"
+
+build() {
+ if [ "$CBUILD" != "$CHOST" ]; then
+ CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+
+ # render tests require a valid device
+ sed -i /add_subdirectory\(render\)/d tests/CMakeLists.txt
+
+ cmake -B build-shared -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DCMAKE_BUILD_TYPE=MinSizeRel \
+ -DBUILD_SHARED_LIBS=ON \
+ -DBUILD_CTS=OFF \
+ -DBUILD_HELIDE_DEVICE=OFF \
+ -DBUILD_TESTING="$(want_check && echo ON || echo OFF)" \
+ -DBUILD_EXAMPLES=OFF \
+ $CMAKE_CROSSOPTS
+ cmake --build build-shared
+
+ cmake -B build-static -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DCMAKE_BUILD_TYPE=MinSizeRel \
+ -DBUILD_SHARED_LIBS=OFF \
+ -DBUILD_CTS=OFF \
+ -DBUILD_HELIDE_DEVICE=OFF \
+ -DBUILD_TESTING="$(want_check && echo ON || echo OFF)" \
+ -DBUILD_EXAMPLES=OFF \
+ $CMAKE_CROSSOPTS
+ cmake --build build-static
+}
+
+check() {
+ msg "Testing shared version"
+ ctest --test-dir build-shared --output-on-failure
+
+ msg "Testing static version"
+ ctest --test-dir build-static --output-on-failure
+}
+
+package() {
+ # installing static first lets shared overwrite the executables so they
+ # themselves are not statically linking the library
+ DESTDIR="$pkgdir" cmake --install build-static
+ DESTDIR="$pkgdir" cmake --install build-shared
+}
+
+sha512sums="
+e54969a6b6186eb9a1d7c8ba16647ea0e54114d130947a2690fb0ed42094ea8d0fba8d289cf79b56fbae337fafc829077e9c9dddeedf5e03c3a6ca1747531dea anari-sdk-0.7.2.tar.gz
+"
diff --git a/testing/android-apkeep/APKBUILD b/testing/android-apkeep/APKBUILD
new file mode 100644
index 00000000000..c376ecd09e5
--- /dev/null
+++ b/testing/android-apkeep/APKBUILD
@@ -0,0 +1,50 @@
+# Contributor: lauren n. liberda <lauren@selfisekai.rocks>
+# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
+pkgname=android-apkeep
+pkgver=0.16.0
+pkgrel=0
+pkgdesc="A command-line tool for downloading Android APK files from various sources"
+url="https://github.com/EFForg/apkeep"
+# ppc64le, riscv64, s390x: ring crate
+arch="all !ppc64le !riscv64 !s390x"
+license="MIT"
+makedepends="
+ bzip2-dev
+ cargo
+ cargo-auditable
+ openssl-dev
+ zstd-dev
+ "
+source="https://github.com/EFForg/apkeep/archive/refs/tags/$pkgver/apkeep-$pkgver.tar.gz"
+options="!check" # no tests
+builddir="$srcdir/apkeep-$pkgver"
+
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+
+ # Rust target triple.
+ local target=$(rustc -vV | sed -n 's/host: //p')
+
+ # Build against system-provided libs
+ mkdir -p .cargo
+ cat >> .cargo/config.toml <<-EOF
+ [target.$target]
+ bzip2 = { rustc-link-lib = ["bz2"] }
+ zstd = { rustc-link-lib = ["zstd"] }
+ EOF
+}
+
+build() {
+ cargo auditable build --frozen --release
+}
+
+package() {
+ install -Dm755 target/release/apkeep "$pkgdir"/usr/bin/apkeep
+}
+
+sha512sums="
+912d83d138e4440e2fc1e8e8a47f92e821fcdaa0378a6a28659a511f082df3d8056d0e0be1d7df227edae2b8c1adaa40ad5f39889fce4d70fa8b1044479b6b62 apkeep-0.16.0.tar.gz
+"
diff --git a/testing/android-apktool/APKBUILD b/testing/android-apktool/APKBUILD
index 5b118d57310..0ef2fc795c6 100644
--- a/testing/android-apktool/APKBUILD
+++ b/testing/android-apktool/APKBUILD
@@ -1,16 +1,17 @@
# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=android-apktool
-pkgver=2.6.1
+pkgver=2.9.3
pkgrel=0
pkgdesc="Tool for reverse engineering Android apk files"
-url="https://ibotpeaches.github.io/Apktool/"
+url="https://apktool.org/"
arch="all !x86 !armhf !armv7 !riscv64"
# disabled due to openjdk11 limitations
license="Apache-2.0"
depends="openjdk11-jre-headless"
source="https://bitbucket.org/iBotPeaches/apktool/downloads/apktool_$pkgver.jar
- apktool"
+ apktool
+ "
options="!check"
# no tests available
@@ -20,6 +21,6 @@ package() {
}
sha512sums="
-3cab65fe5cdbcc072f486281cbc1efde84eb0ecb5db52bd633c07640bf3f09fb79861df303e9c569f1399aa307226545ff0973039c31c3934a70890c6af5f48e apktool_2.6.1.jar
+c4867b62c4dbe2b03ffa4f28458138541dc765aafeef84becc9a10d001e67bf6c49a6dab54b0ac6c292bac65c50764efe17d8c7ff6bdf26dc4e960042a8f4162 apktool_2.9.3.jar
8cb0d693996fe5a3df2f49120336962bc4d36ad6540744b6bc53dd1c03cc2b34e339f3749804abd9c054510b7093da77b18e77e886795c4f6b2206c64ea0247e apktool
"
diff --git a/testing/android-file-transfer/APKBUILD b/testing/android-file-transfer/APKBUILD
new file mode 100644
index 00000000000..2b8f045fe32
--- /dev/null
+++ b/testing/android-file-transfer/APKBUILD
@@ -0,0 +1,46 @@
+# Contributor: Michał Polański <michal@polanski.me>
+# Maintainer: Michał Polański <michal@polanski.me>
+pkgname=android-file-transfer
+pkgver=4.3
+pkgrel=0
+pkgdesc="Android MTP client with minimalistic UI"
+url="https://whoozle.github.io/android-file-transfer-linux/"
+license="LGPL-2.1-only"
+arch="all"
+makedepends="
+ cmake
+ file-dev
+ fuse-dev
+ linux-headers
+ openssl-dev
+ qt5-qtbase-dev
+ qt5-qttools-dev
+ readline-dev
+ samurai
+ taglib-dev
+ zlib-dev
+ "
+subpackages="$pkgname-cli $pkgname-libs $pkgname-dev"
+source="https://github.com/whoozle/android-file-transfer-linux/archive/v$pkgver/android-file-transfer-$pkgver.tar.gz"
+builddir="$srcdir/android-file-transfer-linux-$pkgver"
+options="!check" # no test suite
+
+cli() {
+ amove usr/bin/aft-mtp-*
+}
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=MinSizeRel \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DBUILD_SHARED_LIB=ON
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+f5e51ad1532be44916df51dda5f6f7423a5b0d8ebd733a0a3f0424f684b9f84fc5996fb5effd45009eb1c60d873f79e8ecc47a9dc09ff429b4a458807a79ca8c android-file-transfer-4.3.tar.gz
+"
diff --git a/testing/android-translation-layer/APKBUILD b/testing/android-translation-layer/APKBUILD
new file mode 100644
index 00000000000..7321a999411
--- /dev/null
+++ b/testing/android-translation-layer/APKBUILD
@@ -0,0 +1,48 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=android-translation-layer
+pkgver=0_git20240219
+pkgrel=0
+_commit="d3eedb0305d52be28d90560f1e099dd11056ab5d"
+pkgdesc="A translation layer for running Android apps on a Linux system"
+url="https://gitlab.com/android_translation_layer/android_translation_layer"
+arch="x86_64 aarch64 armv7"
+license="GPL-3.0-only"
+# libopensles-standalone is not strictly required but some Android applications depend on it
+depends="libopensles-standalone"
+makedepends="
+ alsa-lib-dev
+ bionic_translation-dev
+ art_standalone-dev
+ ffmpeg-dev
+ glib-dev
+ gtk4.0-dev
+ java-common
+ libportal-dev
+ meson
+ openjdk8-jdk
+ openxr-dev
+ skia-sharp-dev
+ vulkan-loader-dev
+ "
+subpackages="$pkgname-dbg"
+source="https://gitlab.com/mis012/android_translation_layer/-/archive/$_commit/android_translation_layer-$_commit.tar.gz"
+builddir="$srcdir/android_translation_layer-$_commit"
+
+build() {
+ abuild-meson \
+ . output
+ meson compile -C output
+}
+
+check() {
+ meson test --no-rebuild --print-errorlogs -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+sha512sums="
+c1d16346076fae74323bf573e436a3867dc03d5bdb58690bf304dabe9d209ee1d00339a92d16d13263efc1c4530523ef742044fbed425a9a75c538ac780d0376 android_translation_layer-d3eedb0305d52be28d90560f1e099dd11056ab5d.tar.gz
+"
diff --git a/testing/android-udev-rules/APKBUILD b/testing/android-udev-rules/APKBUILD
deleted file mode 100644
index 6926d28aea8..00000000000
--- a/testing/android-udev-rules/APKBUILD
+++ /dev/null
@@ -1,27 +0,0 @@
-# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
-# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
-pkgname=android-udev-rules
-pkgver=20220102
-pkgrel=1
-pkgdesc="Android udev rules list"
-url="https://github.com/M0Rf30/android-udev-rules"
-arch="noarch"
-license="GPL-3.0-only"
-depends="udev"
-source="https://github.com/M0Rf30/android-udev-rules/archive/$pkgver/android-udev-rules-$pkgver.tar.gz"
-options="!check" # no testsuite provided
-
-prepare() {
- default_prepare
-
- # use plugdev as the group permitted to use adb devices
- sed -i 's/adbusers/plugdev/' 51-android.rules
-}
-
-package() {
- install -Dm644 51-android.rules -t "$pkgdir"/usr/lib/udev/rules.d/
-}
-
-sha512sums="
-563b9abab05e84e3461589fa1aaa1dc360bbb99f7df836b55e15717094aee2fa7f07d571d9c10b5c9fd28e8e6641fe7eee8eabec28d4249ec5994018a83014de android-udev-rules-20220102.tar.gz
-"
diff --git a/testing/angband/APKBUILD b/testing/angband/APKBUILD
new file mode 100644
index 00000000000..a7678998a44
--- /dev/null
+++ b/testing/angband/APKBUILD
@@ -0,0 +1,54 @@
+# Contributor: Elly Fong-Jones <elly@elly.town>
+# Maintainer: Elly Fong-Jones <elly@elly.town>
+pkgname=angband
+pkgver=4.2.5
+pkgrel=0
+pkgdesc="Roguelike computer role playing game"
+url="https://rephial.org"
+arch="all"
+# License: GPL-2.0-only for the actual code, but the tile sets (which this build
+# includes) have different licenses. See docs/copying.rst in the source tree for
+# full details.
+license="GPL-2.0-only AND custom"
+makedepends="ncurses-dev sdl2-dev sdl2_image-dev sdl2_mixer-dev sdl2_ttf-dev"
+checkdepends="perl"
+source="https://github.com/angband/angband/releases/download/$pkgver/Angband-$pkgver.tar.gz"
+builddir="$srcdir/Angband-$pkgver"
+
+# Angband has a unit test suite, but it requires the game to be installed
+# to run: https://github.com/angband/angband/issues/5517
+options="!check"
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --bindir=/usr/bin \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var \
+ --enable-curses \
+ --disable-x11 \
+ --enable-sdl2 \
+ --disable-sdl \
+ --disable-test \
+ --disable-stats
+ make
+}
+
+check() {
+ make tests
+ # Note: there are also a handful of integration tests, but they don't
+ # have a separate build target and instead compile extra code into
+ # the production binary. We don't want the extra code size, so they
+ # aren't run here.
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+5d907849da64c27b16ebd8fac839eb7db72d7f2352671c57545beea6700dfd1c5b3387e6a222da12ef066329c28108d03bad6e84c99ab8bcb68513adbb71aad1 Angband-4.2.5.tar.gz
+"
diff --git a/testing/anime4kcpp/APKBUILD b/testing/anime4kcpp/APKBUILD
deleted file mode 100644
index 795feafcb31..00000000000
--- a/testing/anime4kcpp/APKBUILD
+++ /dev/null
@@ -1,66 +0,0 @@
-# Maintainer: psykose <alice@ayaya.dev>
-pkgname=anime4kcpp
-pkgver=2.5.0
-pkgrel=0
-_cmdline=98ec5a291ce824ba6315537ae13e81a45d374e7c
-pkgdesc="High performance anime upscaler"
-url="https://github.com/TianZerL/Anime4KCPP"
-# s390x/ppc64le: opencv
-arch="all !s390x !ppc64le"
-license="MIT"
-makedepends="
- boost-dev
- cmake
- eigen-dev
- libtbb-dev
- opencl-dev
- opencv-dev
- samurai
- "
-subpackages="$pkgname-gui $pkgname-libs"
-source="https://github.com/TianZerL/Anime4KCPP/archive/refs/tags/v$pkgver/Anime4KCPP-v$pkgver.tar.gz
- cmdline-$_cmdline.tar.gz::https://github.com/TianZerL/cmdline/archive/$_cmdline.tar.gz"
-builddir="$srcdir/Anime4KCPP-$pkgver"
-options="!check" # no tests
-
-prepare() {
- default_prepare
-
- mkdir -p "$builddir"/ThirdParty/include
- ln -sfv "$srcdir"/cmdline-$_cmdline/cmdline.h \
- "$builddir"/ThirdParty/include/cmdline.h
-}
-
-build() {
- cmake -B build -G Ninja \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_BUILD_TYPE=Release \
- -DBuild_GUI=ON \
- -DUse_Boost_filesystem=ON \
- -DUse_TBB=ON
-
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
- # the translations are installed to usr/bin/language, too lazy to fix
- rm -rf "$pkgdir"/usr/bin/language
-}
-
-gui() {
- pkgdesc="$pkgdesc (gui client)"
-
- amove usr/bin/Anime4KCPP_GUI
-}
-
-libs() {
- default_libs
-
- amove usr/lib/libAnime4KCPPCore.so
-}
-
-sha512sums="
-a8471c6d6988f54b1be919d2b85b6ad697a96febfaaeec6f9a0d5df75b828cada3febcf6f122eb29bee2dd19a09b095db585c53f4525d46ede392efa03d7e7a4 Anime4KCPP-v2.5.0.tar.gz
-7a3498974d2e963f67308c2df56975dda0e6a4adad617a051fead8ec2ec3b3ff597ad8a545764b66267cbf43f5f4973fc5c46767bda17d8897b573839e407bc2 cmdline-98ec5a291ce824ba6315537ae13e81a45d374e7c.tar.gz
-"
diff --git a/testing/anki/APKBUILD b/testing/anki/APKBUILD
index 44c4d0e93b2..fa352a278b6 100644
--- a/testing/anki/APKBUILD
+++ b/testing/anki/APKBUILD
@@ -1,214 +1,155 @@
-# Contributor: Frank Oltmanns <alpine@oltmanns.dev>
# Maintainer: Frank Oltmanns <alpine@oltmanns.dev>
+# Contributor: Alexander Bocken <alexander@bocken.org>
pkgname=anki
-pkgver=2.1.49
-pkgrel=0
+pkgver=23.12.1
+pkgrel=2
# Remember to update the following lines when updating the pkgver
-_core_i18n_commit="56d46d658a8badb9f13f48d89ee074419b181f69"
-_qtftl_i18n_commit="5359f84328c1484c5db69edbb6b851acc4160095"
+# anki -> git rev-parse $pkgver --short=8
+# ftl -> git submodule
+_tags_ftl_core="fb301cc62da3b7a83b4ea266d9a2e70cfc1a8418"
+_tags_ftl_desktop="8c2191a7c797747cec767e3953bbbcc50acc5246"
+_anki_commit="c0f2fa48"
+
+# This APKBUILD and the patches use the PKGBUILD for Anki 23.10 as
+# a basis.
+_caches_yarn="yarn-cache"
+_caches_cargo="cargo-cache"
# For translations
_core_i18n_repo="anki-core-i18n"
_qtftl_i18n_repo="anki-desktop-ftl"
-# The following changes are required to make this version work
-# with Alpine/musl.
-#
-# The patches listed here are necessary to make bazel compilation
-# possible on musl. Without the patches the glibc versions of tools
-# would be downloaded.
-# - node_repositories
-# - protoc_repository
-# - rust_output
-#
-# Reasoning for manually building the rust bridge
-# -----------------------------------------------
-# I spent three days trying to figure out how use Anki's bazel
-# environment in a musl context for building it's rust components.
-# I got quite far. But getting the rust compiler to use the local
-# "protoc" executable is where I ran out of ideas.
-#
-# That state is preserved here:
-# https://gitlab.alpinelinux.org/fraolt/aports/-/tree/anki_2.1.49_savepoint/testing/anki
-#
-# I'm not spending any more time on bending bazel to my will.
-#
-# Now, I'm going a similar route as the fine people at FreeBSD and build
-# the rust components without bazel. Instead, bazel will just pick up
-# build results.
pkgdesc="flashcard program using spaced repetition"
url="https://apps.ankiweb.net/"
-# armhf blocked by qt5-qtdeclarative -> py3-qtwebengine
-# ppc64le and s390x are blocked by py3-qtwebengine
-# riscv64 blocked by qt5-qtwebengine -> py3-qtwebengine
-# x86, armv7 blocked by bazel4
+
+# py3-pyqt6-webengine is only available for
+# - x86_64
+# - aarch64
+# - x86
+# But upstream only supports 64-bit architectures:
arch="x86_64 aarch64"
license="AGPL-3.0-or-later"
options="!check" # no test suite provided
+
# The makedepends and depends are copied from the PKGBUILD
-# for 2.1.49 in the Arch User Repository
+# for 23.10 in the Arch User Repository, with the exception
+# that libxcrypt-compat has been removed from that list.
makedepends="
+ bash
rsync
- python3
- python3-dev
- protoc
- bazel4
- maturin
- rust
+ ninja
+ git
cargo
py3-installer
- pythonispython3
- npm
+ py3-wheel
nodejs
yarn
- openssl-dev
+ protoc
"
+
depends="
+ python3
+ py3-stringcase
py3-beautifulsoup4
+ py3-waitress
py3-requests
- py3-wheel
- py3-pysocks
py3-decorator
+ py3-markdown
+ py3-orjson
py3-protobuf
+ py3-pysocks
py3-distro
- py3-stringcase
- py3-send2trash
- py3-markdown
py3-jsonschema
- py3-pyaudio
- py3-qtwebengine
- py3-flask
+ py3-send2trash
+ py3-certifi
py3-flask-cors
- py3-waitress
- py3-qt5
+ py3-qt6
+ py3-pyqt6-webengine
+ qt6-qtmultimedia
+ qt6-qtsvg
"
+subpackages="$pkgname-pyc"
source="
https://github.com/ankitects/anki/archive/$pkgver/anki-$pkgver.tar.gz
- $pkgname-$pkgver-ftlrslib.tar.gz::https://github.com/ankitects/$_core_i18n_repo/archive/$_core_i18n_commit.tar.gz
- $pkgname-$pkgver-ftlextra.tar.gz::https://github.com/ankitects/$_qtftl_i18n_repo/archive/$_qtftl_i18n_commit.tar.gz
- node_repositories.patch
- no_orjson.patch
- protoc_repository.patch
- rust_output.patch
- pylib_musllinux.patch
- scripts_status.patch
- local_ftl_repos.patch
- waitress_asyncore_use_poll.patch
- BUILD.bazel-pylib-rsbridge
- BUILD.bazel-rslib-i18n
- BUILD.bazel-rust_output-strings_json
- BUILD.bazel-rust_output-librsbridge
- BUILD.bazel-i18n
+ anki-core-i18n-$_tags_ftl_core.tar.gz::https://github.com/ankitects/anki-core-i18n/archive/$_tags_ftl_core.tar.gz
+ anki-desktop-ftl-$_tags_ftl_desktop.tar.gz::https://github.com/ankitects/anki-desktop-ftl/archive/$_tags_ftl_desktop.tar.gz
+ disable-git-checks.patch
+ no-update.patch
+ strip-formatter-deps.patch
+ strip-type-checking-deps.patch
+ dprint-update-for-musl-aarch64.patch
"
prepare() {
default_prepare
- # The .bazelversion file limits us to the use of exactly bazel 4.0.0.
- # Let's use the version that comes with alpine instead. :-)
- rm "$builddir"/.bazelversion
-
- # Create a local node repository as per https://github.com/ankitects/anki/blob/2.1.49/docs/new-platform.md#nodejs
- mkdir -p "$builddir"/local_node/node/bin
- mkdir -p "$builddir"/local_node/node/lib
- touch "$builddir"/local_node/WORKSPACE
- [ -e "$builddir"/local_node/node/bin/node ] || ln -s /usr/bin/node "$builddir"/local_node/node/bin/node
- [ -e "$builddir"/local_node/node/lib/node_modules ] || ln -s /usr/lib/node_modules "$builddir"/local_node/node/lib/node_modules
-
- # Create a local protoc repository in a similar way (inspired by FreeBSD anki patches)
- mkdir -p "$builddir"/local_protoc/bin
- touch "$builddir"/local_protoc/WORKSPACE
- [ -e "$builddir"/local_protoc/bin/protoc ] || ln -s /usr/bin/protoc local_protoc/bin/protoc
-
- # Create a directory for the rust output
- mkdir -p "$builddir"/rust_output/strings_json
- mkdir -p "$builddir"/rust_output/librsbridge
- touch "$builddir"/rust_output/WORKSPACE
- cp "$srcdir"/BUILD.bazel-rust_output-strings_json "$builddir"/rust_output/strings_json/BUILD.bazel
- cp "$srcdir"/BUILD.bazel-rust_output-librsbridge "$builddir"/rust_output/librsbridge/BUILD.bazel
-
- # Overwrite the BUILD.bazel files, so that they just copy files from
- # rust_output instead of actually building the rust components via
- # bazel build.
- cp "$srcdir"/BUILD.bazel-pylib-rsbridge "$builddir"/pylib/rsbridge/BUILD.bazel
- cp "$srcdir"/BUILD.bazel-rslib-i18n "$builddir"/rslib/i18n/BUILD.bazel
-
- # Links to translations
- [ -e "$builddir"/ftlrslib ] || ln -s "$srcdir"/"$_core_i18n_repo-$_core_i18n_commit" "$builddir"/ftlrslib
- [ -e "$builddir"/ftlextra ] || ln -s "$srcdir"/"$_qtftl_i18n_repo-$_qtftl_i18n_commit" "$builddir"/ftlextra
- cp "$srcdir"/BUILD.bazel-i18n "$builddir"/ftlrslib/BUILD.bazel
- cp "$srcdir"/BUILD.bazel-i18n "$builddir"/ftlextra/BUILD.bazel
-
- # Use local PyQt5 install as per fourth bullet of https://github.com/ankitects/anki/blob/2.1.49/docs/new-platform.md#protobuf--python
- echo "build --action_env=PYTHON_SITE_PACKAGES=$(python3 -c 'import site; print(site.getsitepackages()[0])')" >> "$builddir"/user.bazelrc
-
- # Create buildinfo, this is apparently used at runtime to check
- # that the rust and python build come from the same source.
- BUILDHASH=$(git ls-remote https://github.com/ankitects/anki.git refs/tags/$pkgver^{} | cut -c -8)
- echo "STABLE_VERSION $pkgver" > "$builddir"/rust_output/buildinfo.txt
- echo "STABLE_BUILDHASH $BUILDHASH" >> "$builddir"/rust_output/buildinfo.txt
-
- # Also fix the script for the python buildinfo
- sed -i -e s/PKGVER/$pkgver/ "$builddir"/scripts/status.sh
+ # Notes:
+ # - The original PKGBUILD changes the optimization level to "3". Instead
+ # the APKBUILD sticks to upstream's optimization settings.
+ # - The original PKGBUILD changes the rust toolchain channel to
+ # "stable". Since, the APKBUILD doesn't use rustup, we can skip that.
+
+ # Build process wants .git/HEAD to be present. Workaround to be able to use tarballs
+ # (together with disable-git-checks.patch)
+ mkdir -p .git
+ touch .git/HEAD
+ sed -i "s/MY_REV/$_anki_commit/" build/runner/src/build.rs
+
+ # place translations in build dir
+ rm -r ftl/core-repo ftl/qt-repo
+ mv "$srcdir"/anki-core-i18n-$_tags_ftl_core ftl/core-repo
+ mv "$srcdir"/anki-desktop-ftl-$_tags_ftl_desktop ftl/qt-repo
+
+ # fetch rust packages
+ export CARGO_HOME="$srcdir/$_caches_cargo" # do not litter in ~
+ cargo fetch --target="$CTARGET" --locked
+
+ # fetch node packages already in prepare()
+ export YARN_CACHE_FOLDER="$srcdir/$_caches_yarn" # do not litter in ~
+ yarn install --immutable --modules-folder out/node_modules
+ ln -sf out/node_modules ./
+
+ # mask pip-sync as we provide dependencies ourselves
+ local venv="out/pyenv"
+ python -m venv --system-site-packages --without-pip "$venv"
+ printf '#!/bin/bash\nexit 0' > "$venv/bin/pip-sync"
+ chmod +x "$venv/bin/pip-sync"
}
-# Overview of the build process
-#
-# Steps 1 and 2 are built separately from the bazel build process.
-#
-# 1. rslib (Rust library, implictly built by step 2)
-# -> produces rust_output/strings_json/strings.json
-# 2. pylib/rsbridge (Rust/Python bridge)
-# -> produces rust_output/librsbridge/librsbridge.so
-# 3. The remaining components (Python, Qt5 and JS) are built by bazel
build() {
- # Step 1 and 2 from above
- # BAZEL=1 is required otherwise rslib/build/main.rs produces a dummy
- # buildinfo.txt that doesn't contain the actual build hash.
- BAZEL=1 \
- BUILDINFO="$builddir"/rust_output/buildinfo.txt \
- PROTO_TOP="$builddir"/proto/.top_level \
- BACKEND_PROTO="$builddir"/rslib/backend.proto \
- RSLIB_FTL_ROOT="$builddir"/ftlrslib/l10n.toml \
- EXTRA_FTL_ROOT="$builddir"/ftlextra/l10n.toml \
- /usr/bin/cargo build --manifest-path ./pylib/rsbridge/Cargo.toml --verbose --release
- # These files are required for the remaining build process via bazel so
- # copy them to the local repository.
- cp ./target/release/librsbridge.so ./rust_output/librsbridge/
- find ./target -name strings.json -exec cp \{\} ./rust_output/strings_json \;
-
- # Step 3 from above
- # Limit bazel jobs to 1 due random build failures while compiling TS files
- # via "tsc".
- bazel --output_user_root="$builddir"/bazel-build/ build --verbose_failures --jobs 1 --subcommands --sandbox_debug -c opt dist
+ export YARN_CACHE_FOLDER="$srcdir/$_caches_yarn" # do not litter in ~
+
+ #use local binaries instead of downloading them
+ export PYTHON_BINARY=$(which python)
+ export PROTOC_BINARY=$(which protoc)
+ export NODE_BINARY=$(which node)
+ export YARN_BINARY=$(which yarn)
+
+ export CARGO_HOME="$srcdir/$_caches_cargo" # do not litter in ~
+ export RELEASE=2 # anki-internal variable for optimization
+ # set to "1" for faster but less optimized build
+ export LDFLAGS="$LDFLAGS -fuse-ld=lld"
+ ./ninja wheels
}
package() {
- python3 -m installer --destdir "$pkgdir" bazel-bin/pylib/anki/anki-*.whl
- python3 -m installer --destdir "$pkgdir" bazel-bin/qt/aqt/aqt-*.whl
+ for file in out/wheels/*.whl; do
+ python -m installer --destdir="$pkgdir" $file
+ done
- install -Dm755 qt/runanki.py "$pkgdir"/usr/bin/anki
- install -Dm644 qt/linux/anki.desktop "$pkgdir"/usr/share/applications/anki.desktop
- install -Dm644 qt/linux/anki.png "$pkgdir"/usr/share/pixmaps/anki.png
+ install -Dm644 qt/bundle/lin/anki.desktop "$pkgdir"/usr/share/applications/anki.desktop
+ install -Dm644 qt/bundle/lin/anki.png "$pkgdir"/usr/share/pixmaps/anki.png
}
sha512sums="
-bde874a9ae39873e5c0b1dad1815e6cfb898cd0f788a684768c53fd847dbb92fa5c293a0fae8b527e70d380510cd3fc465806053d3e555281885accea3fcc2b0 anki-2.1.49.tar.gz
-f9d521080ecc9679d3e1dff7773785383efe468da9517eef206d483b3f49e4abf4cb4649368b732d9ed255f1971817685f1988d8b13f539d2a3e58fb4c8a09fc anki-2.1.49-ftlrslib.tar.gz
-269d7cae19404d788f6bd1335e0a55ef3f1d41d0089a62e62ecfa2fae2afe0ebbac519c69eabfa47209c9841ab675d94e434ae05e0469e47d87d01c094998dac anki-2.1.49-ftlextra.tar.gz
-1ef2b13aebaee3889d7262ce7decb212554bb8634138f970e8ab89a834e481665555ac62a051ad1252b140651278572486def0aa850c35f8377084726db58c5d node_repositories.patch
-35f25ec02d01016eb759490ff1fae016c979d867f35fd2bf7d322a74afc0a19fa131b1d34e93b2ddb7182e7e388b6892bf42921bcb249b6e55b0323007b200fe no_orjson.patch
-b15e4a3f3f88620fb701aec972600b8f11cc4d410c6047e5a588c4ddf4e4795704439d9473b18022eeb3da0fbb2aa91c73300527da6654f2a31aa6f39f292562 protoc_repository.patch
-aeaad302c8c9c96cba24335d2fee5712c5d1c4335e70a0adb9db3399eaf961af849681884076f1c8a28be853500bec71a1c331ea0148be9b1d27ebc25905fff5 rust_output.patch
-cf0f340d142b216e55ea56875e7b8321efdbd14dae0f0ab22df1fc6acdb8291ad657aa158a216d8505e8de392a2d33dd1871f9809f0619d86d545877a3e208cc pylib_musllinux.patch
-4d9212acd136ec61d9f33888b772b150130201df4a83e60ebf8be7a68741322f11c75d3b007568e4fb0b898ec8918f546821b1b6939d0a96c69711bdd9e6ae36 scripts_status.patch
-e930280a29d8951746168782cffb6eb07b1d91307e7f9f638ce55e1c0d246ae27799282850e88c21f733ff244e8b9d4ef82023bf8bc882b8e178d380d018dd42 local_ftl_repos.patch
-28fc9848715407d4b172935f071bd344c2fa4c2145501eb39c121030335f1dd517165bcb9550e8c88a0748c8f9d9e4c02c77b02aa22e05642f0358e45d18a4c4 waitress_asyncore_use_poll.patch
-5fa979393b7c2b1794275a17c6a3c1b092d25545c1473e96199d8732fc442e5161da34354e7a6fadf36d2d605a565f464aa5ae759da25c1f288bda0c362e36e3 BUILD.bazel-pylib-rsbridge
-19956d70ece7fc735e31c10c6f3466db8c713c9999ff3a38de323d0dce723ad512bb5ffb4d1428aa6268b436e4a4cfd604de1567f1b2948620d494a6993a7280 BUILD.bazel-rslib-i18n
-f98d1b8c33fd186db68da2f978ce4cb409e288c999d17355cf15992501cd640eece3f367068fac8e1936a4b2b4d83e87e5462890a7aaee4316a5572f4989f930 BUILD.bazel-rust_output-strings_json
-1948c4c77587d057ff358a625715ea90de109aed60b6e8e66f277235650ba5cbfc5756d066ca483631036afe2105cc6f8e7bad717504cbcf449d1103028b55c6 BUILD.bazel-rust_output-librsbridge
-360da5e8cd3f4cbacabf3ec5233f8c958b012193c9897097c6b0b5d8b898d18c2f82cfe5391f52f275e1b3721bd5572d7b3cb0901308618eade3edd31389ff16 BUILD.bazel-i18n
+076d3eba5db7dd4b8e00de9b69140a54f73c2e6ce52f46ddce9a6455a8ce7ae5d49bfb2fc60571d851d6b4948a08a0b3deb508aa37c7e79624b6273837a975a5 anki-23.12.1.tar.gz
+12e9187bda8f728d06a904fe21f3820aa2acad0e1924933d9db24f3879936b0a7b489934186fcab85440a40b974917ada729b5a7ec276ca2acea70b5c88caa5a anki-core-i18n-fb301cc62da3b7a83b4ea266d9a2e70cfc1a8418.tar.gz
+91c3609fa8ca67de2d520798acbb7200d310c4d587270143528a5c18ed341c7dd3b9ddc8d79fe1f44224e83dc06f12cdbcdcf2114969513cbd60e82950343373 anki-desktop-ftl-8c2191a7c797747cec767e3953bbbcc50acc5246.tar.gz
+60f2f37d4fc03d7c0681b2d6b9af17b2f7cd341ef6bd4504cd7dd6cb191c666b128a4c2184ced5295fab98c5f83affc4bfd4c5dc23f502371e2e095aa880e526 disable-git-checks.patch
+36c3bddb5de84f0f5eebe46b506b9723ecc80dd69281b3d2ffc9842fa2db181ececd8232ae0b3366bcfd5cb68a4d760abcadd3dada2a7ce2d2da26586a132e09 no-update.patch
+f71b45b08b8f05d98faab3a88d7ba2847a948a12ca26c682d58541dc423ad72ae8aac5b34155472869ebbf195e5e5c488cfc4e640df7247c7674e5dfad053d60 strip-formatter-deps.patch
+2c7d1ab46d81e65f22e63cb5af37daef27a78d348f240570f9250730d6b33311670876027fd1c54d4c69922c18a7458e82211cb232e98591e182ac11c49877db strip-type-checking-deps.patch
+627d30af756ad51fa76ea3113e18662c8bfa5ba7e89b418604e13581cc811ce89c674042181566fff962adef0dd5edb2e5af2803c33cee470661f2d2d1f4c331 dprint-update-for-musl-aarch64.patch
"
diff --git a/testing/anki/BUILD.bazel-i18n b/testing/anki/BUILD.bazel-i18n
deleted file mode 100644
index 200af3d2516..00000000000
--- a/testing/anki/BUILD.bazel-i18n
+++ /dev/null
@@ -1,10 +0,0 @@
-# Used for the fluent i18n translation bazel repositories:
-# - ftlextra
-# - ftlrslib
-
-filegroup(
- name = "files",
- srcs = glob(["**/*.ftl"]),
- visibility = ["//visibility:public"],
-)
-exports_files(["l10n.toml"])
diff --git a/testing/anki/BUILD.bazel-pylib-rsbridge b/testing/anki/BUILD.bazel-pylib-rsbridge
deleted file mode 100644
index 0ab505b9f9a..00000000000
--- a/testing/anki/BUILD.bazel-pylib-rsbridge
+++ /dev/null
@@ -1,12 +0,0 @@
-# Handles the further processing of "librsbridge.so" within bazel
-
-load("@bazel_skylib//rules:copy_file.bzl", "copy_file")
-
-copy_file(
- name = "rsbridge",
- src = "//rust_output/librsbridge",
- out = "librsbridge.so",
- visibility = [
- "//pylib:__subpackages__",
- ],
-)
diff --git a/testing/anki/BUILD.bazel-rslib-i18n b/testing/anki/BUILD.bazel-rslib-i18n
deleted file mode 100644
index de33a346035..00000000000
--- a/testing/anki/BUILD.bazel-rslib-i18n
+++ /dev/null
@@ -1,10 +0,0 @@
-# Handles the further processing of "strings.json" within bazel
-
-load("@bazel_skylib//rules:copy_file.bzl", "copy_file")
-
-copy_file(
- name = "strings_json",
- src = "//rust_output/strings_json",
- out = "strings.json",
- visibility = ["//visibility:public"],
-)
diff --git a/testing/anki/BUILD.bazel-rust_output-librsbridge b/testing/anki/BUILD.bazel-rust_output-librsbridge
deleted file mode 100644
index 9b5ad80ca11..00000000000
--- a/testing/anki/BUILD.bazel-rust_output-librsbridge
+++ /dev/null
@@ -1,7 +0,0 @@
-# Expose "librsbridge.so" to bazel
-
-filegroup(
- name = "librsbridge",
- srcs = ["librsbridge.so"],
- visibility = ["//visibility:public"],
-)
diff --git a/testing/anki/BUILD.bazel-rust_output-strings_json b/testing/anki/BUILD.bazel-rust_output-strings_json
deleted file mode 100644
index b8de968e6d2..00000000000
--- a/testing/anki/BUILD.bazel-rust_output-strings_json
+++ /dev/null
@@ -1,7 +0,0 @@
-# Expose "strings.json" to bazel
-
-filegroup(
- name = "strings_json",
- srcs = ["strings.json"],
- visibility = ["//visibility:public"],
-)
diff --git a/testing/anki/disable-git-checks.patch b/testing/anki/disable-git-checks.patch
new file mode 100644
index 00000000000..905e641b78e
--- /dev/null
+++ b/testing/anki/disable-git-checks.patch
@@ -0,0 +1,30 @@
+We provide source tarballs without git functionality.
+'MY_REV' gets replaced with the corresponding revision in prepare().
+--- a/build/ninja_gen/src/git.rs
++++ b/build/ninja_gen/src/git.rs
+@@ -13,7 +13,7 @@ pub struct SyncSubmodule {
+
+ impl BuildAction for SyncSubmodule {
+ fn command(&self) -> &str {
+- "git -c protocol.file.allow=always submodule update --init $path"
++ "true"
+ }
+
+ fn files(&mut self, build: &mut impl build::FilesHandle) {
+--- a/build/runner/src/build.rs
++++ b/build/runner/src/build.rs
+@@ -161,13 +161,7 @@ fn maybe_update_buildhash(build_root: &Utf8Path) {
+ }
+
+ fn get_buildhash() -> String {
+- let output = Command::new("git")
+- .args(["rev-parse", "--short=8", "HEAD"])
+- .output()
+- .expect("git");
+- assert!(output.status.success(),
+- "Invoking 'git' failed. Make sure you're building from a clone of the git repo, and that 'git' is installed.");
+- String::from_utf8(output.stdout).unwrap().trim().into()
++ String::from("MY_REV").trim().into()
+ }
+
+ fn write_if_changed(path: &Utf8Path, contents: &str) {
diff --git a/testing/anki/dprint-update-for-musl-aarch64.patch b/testing/anki/dprint-update-for-musl-aarch64.patch
new file mode 100644
index 00000000000..8984a340ac5
--- /dev/null
+++ b/testing/anki/dprint-update-for-musl-aarch64.patch
@@ -0,0 +1,11 @@
+--- a/package.json
++++ b/package.json
+@@ -23,7 +23,7 @@
+ "caniuse-lite": "^1.0.30001431",
+ "cross-env": "^7.0.2",
+ "diff": "^5.0.0",
+- "dprint": "=0.35.3",
++ "dprint": "^0.42.5",
+ "esbuild": "^0.18.10",
+ "esbuild-sass-plugin": "^2",
+ "esbuild-svelte": "^0.7.4",
diff --git a/testing/anki/local_ftl_repos.patch b/testing/anki/local_ftl_repos.patch
deleted file mode 100644
index be8e8aed55b..00000000000
--- a/testing/anki/local_ftl_repos.patch
+++ /dev/null
@@ -1,55 +0,0 @@
---- anki-2.1.49/repos.bzl
-+++ anki-2.1.49_local_ftl_repos/repos.bzl
-@@ -126,48 +126,12 @@
-
- # translations
- ################
--
-- core_i18n_repo = "anki-core-i18n"
-- core_i18n_commit = "56d46d658a8badb9f13f48d89ee074419b181f69"
-- core_i18n_zip_csum = "8a1e83cc350364ef71500e6f3db9bdd2494832e0b9b1e61b0e2d93487171ca46"
--
-- qtftl_i18n_repo = "anki-desktop-ftl"
-- qtftl_i18n_commit = "5359f84328c1484c5db69edbb6b851acc4160095"
-- qtftl_i18n_zip_csum = "aa7c9ea94d05d2996eb02c198f228cc2bb171ebcda6ac802d7793027191ac73d"
--
-- i18n_build_content = """
--filegroup(
-- name = "files",
-- srcs = glob(["**/*.ftl"]),
-- visibility = ["//visibility:public"],
--)
--exports_files(["l10n.toml"])
--"""
--
-- maybe(
-- http_archive,
-+ native.local_repository(
- name = "rslib_ftl",
-- build_file_content = i18n_build_content,
-- strip_prefix = core_i18n_repo + "-" + core_i18n_commit,
-- urls = [
-- "https://github.com/ankitects/{}/archive/{}.zip".format(
-- core_i18n_repo,
-- core_i18n_commit,
-- ),
-- ],
-- sha256 = core_i18n_zip_csum,
-+ path = "ftlrslib",
- )
-
-- maybe(
-- http_archive,
-+ native.local_repository(
- name = "extra_ftl",
-- build_file_content = i18n_build_content,
-- strip_prefix = qtftl_i18n_repo + "-" + qtftl_i18n_commit,
-- urls = [
-- "https://github.com/ankitects/{}/archive/{}.zip".format(
-- qtftl_i18n_repo,
-- qtftl_i18n_commit,
-- ),
-- ],
-- sha256 = qtftl_i18n_zip_csum,
-+ path = "ftlextra",
- )
diff --git a/testing/anki/no-update.patch b/testing/anki/no-update.patch
new file mode 100644
index 00000000000..7dc6228e2c6
--- /dev/null
+++ b/testing/anki/no-update.patch
@@ -0,0 +1,13 @@
+diff --git a/qt/aqt/update.py b/qt/aqt/update.py
+index 212ddf93d..6f716cc04 100644
+--- a/qt/aqt/update.py
++++ b/qt/aqt/update.py
+@@ -11,6 +11,8 @@ from aqt.utils import openLink, show_warning, showText, tr
+
+
+ def check_for_update() -> None:
++ return
++
+ from aqt import mw
+
+ def do_check(_col: Collection) -> CheckForUpdateResponse:
diff --git a/testing/anki/no_orjson.patch b/testing/anki/no_orjson.patch
deleted file mode 100644
index 1ee83d779fa..00000000000
--- a/testing/anki/no_orjson.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-Don't use orjson as per fifth bullet of
-https://github.com/ankitects/anki/blob/2.1.49/docs/new-platform.md#protobuf--python
---- anki-2.1.49/pip/requirements.txt
-+++ anki-2.1.49_no_orjson/pip/requirements.txt
-@@ -77,7 +77,8 @@
- # via -r requirements.in
- mypy==0.902
- # via -r requirements.in
--orjson==3.5.3
-+#skip orjson for alpine according to bullet 5 in https://github.com/ankitects/anki/blob/2.1.49/docs/new-platform.md#protobuf--python
-+#orjson==3.5.3
- # via -r requirements.in
- packaging==20.9
- # via pytest
---- anki-2.1.49/pylib/anki/BUILD.bazel
-+++ anki-2.1.49_no_orjson/pylib/anki/BUILD.bazel
-@@ -85,7 +85,6 @@
- "protobuf>=3.17",
- "markdown",
- "stringcase",
-- 'orjson; platform_machine == "x86_64"',
- 'psutil; sys_platform == "win32"',
- 'distro; sys_platform != "darwin" and sys_platform != "win32"',
- ],
diff --git a/testing/anki/node_repositories.patch b/testing/anki/node_repositories.patch
deleted file mode 100644
index 62313c395d7..00000000000
--- a/testing/anki/node_repositories.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-Create a local node repository as per
-https://github.com/ankitects/anki/blob/2.1.49/docs/new-platform.md#nodejs
---- anki-2.1.49/defs.bzl
-+++ anki-2.1.49_patched/defs.bzl
-@@ -44,7 +44,14 @@
- python_runtime = "@python//:python",
- )
-
-- node_repositories(package_json = ["@ankidesktop//ts:package.json"])
-+ native.local_repository(
-+ name = "local_node",
-+ path = "local_node",
-+ )
-+ node_repositories(
-+ package_json = ["@ankidesktop//ts:package.json"],
-+ vendored_node = "@local_node//:node",
-+ )
-
- yarn_install(
- name = "npm",
---- /dev/null
-+++ anki-2.1.49_patched/local_node/BUILD.bazel
-@@ -0,0 +1 @@
-+exports_files(["node/bin/node"] + glob(["node/lib/node_modules/**"]))
diff --git a/testing/anki/protoc_repository.patch b/testing/anki/protoc_repository.patch
deleted file mode 100644
index b2e19b97e53..00000000000
--- a/testing/anki/protoc_repository.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-Use the local version of protoc.
-
---- /dev/null
-+++ anki-2.1.49_local_protoc/local_protoc/BUILD.bazel
-@@ -0,0 +1,1 @@
-+exports_files(["bin/protoc"])
---- anki-2.1.49/proto/protobuf.bzl
-+++ anki-2.1.49_local_protoc/proto/protobuf.bzl
-@@ -14,8 +14,8 @@
- actual = select({
- "@ankidesktop//platforms:windows_x86_64": "@protoc_bin_windows//:bin/protoc.exe",
- "@ankidesktop//platforms:macos_x86_64": "@protoc_bin_macos//:bin/protoc",
-- "@ankidesktop//platforms:linux_x86_64": "@protoc_bin_linux_x86_64//:bin/protoc",
-- "@ankidesktop//platforms:linux_arm64": "@protoc_bin_linux_arm64//:bin/protoc"
-+ "@ankidesktop//platforms:linux_x86_64": "@local_protoc//:bin/protoc",
-+ "@ankidesktop//platforms:linux_arm64": "@local_protoc//:bin/protoc"
- }),
- visibility = ["//visibility:public"]
- )
-@@ -68,6 +68,11 @@
- build_file_content = """exports_files(["bin/protoc.exe"])""",
- )
-
-+ native.local_repository(
-+ name = "local_protoc",
-+ path = "local_protoc",
-+ )
-+
- if not native.existing_rule(name):
- _setup_protoc(
- name = name,
diff --git a/testing/anki/pylib_musllinux.patch b/testing/anki/pylib_musllinux.patch
deleted file mode 100644
index bc2aeedf2ba..00000000000
--- a/testing/anki/pylib_musllinux.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-diff --color -Nurp anki-2.1.49/pylib/anki/BUILD.bazel anki-2.1.49_musllinux/pylib/anki/BUILD.bazel
---- anki-2.1.49/pylib/anki/BUILD.bazel 2021-10-26 02:53:24.000000000 +0200
-+++ anki-2.1.49_musllinux/pylib/anki/BUILD.bazel 2022-01-04 11:52:42.566145221 +0100
-@@ -73,8 +73,8 @@ py_wheel(
- platform = select({
- "//platforms:windows_x86_64": "win_amd64",
- "//platforms:macos_x86_64": "macosx_10_7_x86_64",
-- "//platforms:linux_x86_64": "manylinux2014_x86_64",
-- "//platforms:linux_arm64": "manylinux2014_aarch64",
-+ "//platforms:linux_x86_64": "musllinux_1_2_x86_64",
-+ "//platforms:linux_arm64": "musllinux_1_2_aarch64",
- }),
- python_tag = "cp38",
- python_version = ">=3.8",
diff --git a/testing/anki/rust_output.patch b/testing/anki/rust_output.patch
deleted file mode 100644
index 3730935e8f3..00000000000
--- a/testing/anki/rust_output.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-Build the rust bridge manually instead of using bazel. See APKBUILD for
-reasoning.
---- anki-2.1.49/defs.bzl 2021-10-26 02:53:24.000000000 +0200
-+++ anki-2.1.49_rust_output/defs.bzl 2022-01-03 16:16:45.645536303 +0100
-@@ -1,6 +1,5 @@
- load("@bazel_skylib//:workspace.bzl", "bazel_skylib_workspace")
- load("@bazel_skylib//lib:versions.bzl", "versions")
--load("@rules_rust//rust:repositories.bzl", "rust_repositories")
- load("@ankidesktop//cargo:crates.bzl", "raze_fetch_remote_crates")
- load(":python.bzl", "setup_local_python")
- load("//proto:protobuf.bzl", "setup_protobuf_binary")
-@@ -18,13 +18,6 @@ def setup_deps():
-
- versions.check(minimum_bazel_version = "3.7.0")
-
-- rust_repositories(
-- edition = "2018",
-- include_rustc_srcs = False,
-- )
--
-- raze_fetch_remote_crates()
--
- setup_local_python(name = "python")
-
- setup_protobuf_binary(name = "com_google_protobuf")
diff --git a/testing/anki/scripts_status.patch b/testing/anki/scripts_status.patch
deleted file mode 100644
index 3ae8eaa6f18..00000000000
--- a/testing/anki/scripts_status.patch
+++ /dev/null
@@ -1,7 +0,0 @@
---- a/scripts/status.sh
-+++ b/scripts/status.sh
-@@ -1,3 +1,3 @@
- #!/bin/bash
-
--echo "STABLE_BUILDHASH $(git rev-parse --short=8 HEAD || echo nogit)"
-+echo "STABLE_BUILDHASH $(git ls-remote https://github.com/ankitects/anki.git refs/tags/PKGVER^{} | cut -c -8)"
diff --git a/testing/anki/strip-formatter-deps.patch b/testing/anki/strip-formatter-deps.patch
new file mode 100644
index 00000000000..1f65cb25126
--- /dev/null
+++ b/testing/anki/strip-formatter-deps.patch
@@ -0,0 +1,9 @@
+ Remove dependency on dev-python/black used to format the generated hooks.py
+ file as it's not relevant in a packaging use case.
+--- a/pylib/tools/hookslib.py
++++ b/pylib/tools/hookslib.py
+@@ -208,4 +208,3 @@ def write_file(path: str, hooks: list[Hook], prefix: str, suffix: str):
+ os.environ["USERPROFILE"] = os.environ["HOME"]
+ with open(path, "wb") as file:
+ file.write(code.encode("utf8"))
+- subprocess.run([sys.executable, "-m", "black", "-q", path], check=True)
diff --git a/testing/anki/strip-type-checking-deps.patch b/testing/anki/strip-type-checking-deps.patch
new file mode 100644
index 00000000000..d9c4e034669
--- /dev/null
+++ b/testing/anki/strip-type-checking-deps.patch
@@ -0,0 +1,23 @@
+We don't do type checking (via mypy and related) downstream.
+Mypy-protobuf generates mypy stub files from protobuf specs and should
+therefore be stripped.
+--- a/build/configure/src/python.rs
++++ b/build/configure/src/python.rs
+@@ -87,9 +87,7 @@ pub struct GenPythonProto {
+ impl BuildAction for GenPythonProto {
+ fn command(&self) -> &str {
+ "$protoc $
+- --plugin=protoc-gen-mypy=$protoc-gen-mypy $
+ --python_out=$builddir/pylib $
+- --mypy_out=$builddir/pylib $
+ -Iproto $in"
+ }
+
+@@ -107,7 +105,6 @@ impl BuildAction for GenPythonProto {
+ .collect();
+ build.add_inputs("in", &self.proto_files);
+ build.add_inputs("protoc", inputs![":protoc_binary"]);
+- build.add_inputs("protoc-gen-mypy", inputs![":pyenv:protoc-gen-mypy"]);
+ build.add_outputs("", python_outputs);
+ }
+ }
diff --git a/testing/anki/waitress_asyncore_use_poll.patch b/testing/anki/waitress_asyncore_use_poll.patch
deleted file mode 100644
index 6b0a9d49824..00000000000
--- a/testing/anki/waitress_asyncore_use_poll.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-Force waitress to use polling instead of select. This fixes the following
-error:
- ValueError: filedescriptor out of range in select()
-
-see https://github.com/Pylons/waitress/issues/31#issuecomment-480894686
---- anki-2.1.49/qt/aqt/mediasrv.py
-+++ anki-2.1.49_asyncore_use_poll/qt/aqt/mediasrv.py
-@@ -77,6 +77,7 @@
- host=desired_host,
- port=desired_port,
- clear_untrusted_proxy_headers=True,
-+ asyncore_use_poll=True,
- )
- if devMode:
- print(
diff --git a/testing/ansible-bender/APKBUILD b/testing/ansible-bender/APKBUILD
new file mode 100644
index 00000000000..e122afa16f6
--- /dev/null
+++ b/testing/ansible-bender/APKBUILD
@@ -0,0 +1,48 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=ansible-bender
+pkgver=0.10.1
+pkgrel=2
+pkgdesc="Container image builder using Buildah and Ansible"
+url="https://ansible-community.github.io/ansible-bender/"
+# s390x: blocked by aardvark-dns and netavark -> podman
+arch="all !s390x"
+license="MIT"
+depends="
+ ansible-core
+ buildah
+ py3-jsonschema
+ py3-tabulate
+ py3-yaml
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-setuptools_scm
+ py3-wheel
+ "
+checkdepends="py3-pytest py3-flexmock podman"
+subpackages="$pkgname-pyc $pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/ansible-community/ansible-bender/archive/refs/tags/$pkgver.tar.gz"
+
+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 tests/unit/
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+
+ install -Dm644 docs/md_docs/*.md -t "$pkgdir"/usr/share/doc/$pkgname/
+}
+
+sha512sums="
+46388d075a484ee97ecfe0340bce63cccd1a014e9ff4bba96a9e1cf68d870fb6840fb10203bc24c9ef286cc2ddf5c2111fc2c6a03d5f3aeda72881c542d0dfcc ansible-bender-0.10.1.tar.gz
+"
diff --git a/testing/ansiweather/APKBUILD b/testing/ansiweather/APKBUILD
new file mode 100644
index 00000000000..11a43b5b5be
--- /dev/null
+++ b/testing/ansiweather/APKBUILD
@@ -0,0 +1,25 @@
+# Maintainer:
+pkgname=ansiweather
+pkgver=1.19.0
+pkgrel=1
+pkgdesc="Weather in terminal, with ANSI colors and Unicode symbols"
+url="https://github.com/fcambus/ansiweather"
+arch="noarch"
+license="BSD-2-Clause"
+depends="
+ bc
+ curl
+ jq
+ "
+subpackages="$pkgname-doc"
+source="https://github.com/fcambus/ansiweather/releases/download/$pkgver/ansiweather-$pkgver.tar.gz"
+options="!check" # no tests
+
+package() {
+ install -Dm755 ansiweather -t "$pkgdir"/usr/bin/
+ install -Dm644 ansiweather.1 -t "$pkgdir"/usr/share/man/man1/
+}
+
+sha512sums="
+1dc521c904041a698fbb1a3a78f5a0b7d5bdc731258ab9cc384ee1a9f750c60723b0038288d7d98875672d167614f7bb8ca69ff1f7d38a28d52916afd5bda0a2 ansiweather-1.19.0.tar.gz
+"
diff --git a/testing/antibody/APKBUILD b/testing/antibody/APKBUILD
index 492a22c031a..520869fd59f 100644
--- a/testing/antibody/APKBUILD
+++ b/testing/antibody/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Aleks Bunin <alpinelinux@compuix.com>
pkgname=antibody
pkgver=6.1.1
-pkgrel=5
+pkgrel=20
pkgdesc="The fastest zsh shell plugin manager."
url="https://github.com/getantibody/antibody"
license="MIT"
@@ -13,6 +13,9 @@ source="$pkgname-$pkgver.tar.gz::https://github.com/getantibody/antibody/archive
options="!check" # uses removed github api
export GOFLAGS="$GOFLAGS -modcacherw"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
build() {
go build -o antibody -ldflags "-X main.version=$pkgver" -trimpath
diff --git a/testing/apache-mod-auth-gssapi/APKBUILD b/testing/apache-mod-auth-gssapi/APKBUILD
index fb80a32b13f..705e686915e 100644
--- a/testing/apache-mod-auth-gssapi/APKBUILD
+++ b/testing/apache-mod-auth-gssapi/APKBUILD
@@ -1,14 +1,14 @@
# Contributor: Francesco Colista <fcolista@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=apache-mod-auth-gssapi
-pkgver=1.6.3
-pkgrel=0
+pkgver=1.6.5
+pkgrel=1
pkgdesc="GSSAPI authentication for Apache"
url="https://github.com/gssapi/mod_auth_gssapi"
arch="all"
license="MIT"
depends="apache2"
-makedepends="apache2-dev krb5-dev openssl-dev
+makedepends="apache2-dev krb5-dev openssl-dev>3
automake autoconf m4 libtool flex bison"
options="!check" # some packages missing from Alpine, see: https://github.com/gssapi/mod_auth_gssapi/ on "Tests" paragraph
source="$pkgname-$pkgver.zip::https://github.com/gssapi/mod_auth_gssapi/archive/v$pkgver.zip
@@ -33,5 +33,7 @@ package() {
install -Dm644 COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING
}
-sha512sums="7cac212a32bd3b69627d60e0cccc996514df743fde6524750db3acbd4b41da9c1e3d98f7ff1040a773577516b850ecb2c8b12a1259749c5b4d94d347f08c1ffe apache-mod-auth-gssapi-1.6.3.zip
-45658d5446f18315de1a66b682a0669d15b0782e46e649b7d5c4bea2e1c9735909ee1b4d36e9eaa0e54bac68773bb68610d4a0bf68a9eccb368d569489246dfa mod-auth-gssapi.conf"
+sha512sums="
+356f2b0287bc8d3a976f1c5251654362b6489f0cda177fe43811fa873b8bccd6de6b5cb111dc8c13b40d3235ee4200aeac0bfa49ae8f3575b96292a65f647e51 apache-mod-auth-gssapi-1.6.5.zip
+45658d5446f18315de1a66b682a0669d15b0782e46e649b7d5c4bea2e1c9735909ee1b4d36e9eaa0e54bac68773bb68610d4a0bf68a9eccb368d569489246dfa mod-auth-gssapi.conf
+"
diff --git a/testing/apache-mod-auth-openidc/APKBUILD b/testing/apache-mod-auth-openidc/APKBUILD
index a3d0ed4db49..11eb98866b0 100644
--- a/testing/apache-mod-auth-openidc/APKBUILD
+++ b/testing/apache-mod-auth-openidc/APKBUILD
@@ -1,18 +1,33 @@
# Maintainer: Takumi Takahashi <takumiiinn@gmail.com>
pkgname=apache-mod-auth-openidc
_pkgname=mod_auth_openidc
-pkgver=2.4.4.1
+pkgver=2.4.15.7
pkgrel=0
pkgdesc="OpenID Connect Relying Party implementation for Apache HTTP Server 2.x"
url="https://www.mod-auth-openidc.org"
arch="all !s390x" # tests fails on s390x from cjose
license="Apache-2.0"
depends="apache2"
-makedepends="apache2-dev musl-dev cjose-dev openssl-dev curl-dev hiredis-dev jansson-dev jq-dev pcre-dev oniguruma-dev"
+makedepends="
+ apache2-dev
+ cjose-dev
+ curl-dev
+ hiredis-dev
+ jansson-dev
+ jq-dev
+ musl-dev
+ oniguruma-dev
+ openssl-dev
+ pcre2-dev
+ "
subpackages="$pkgname-doc $pkgname-static"
-source="https://github.com/zmartzone/mod_auth_openidc/releases/download/v$pkgver/$_pkgname-$pkgver.tar.gz"
+source="https://github.com/OpenIDC/mod_auth_openidc/releases/download/v$pkgver/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
+# secfixes:
+# 2.4.15.3-r0:
+# - CVE-2024-24814
+
build() {
./configure \
--build=$CBUILD \
@@ -28,8 +43,8 @@ check() {
package() {
mkdir -p "$pkgdir"/usr/lib/apache2
- /usr/share/apache2/build/instdso.sh SH_LIBTOOL='/usr/share/build-1/libtool' src/mod_auth_openidc.la "$pkgdir"/usr/lib/apache2
- /usr/share/build-1/libtool --mode=install install src/mod_auth_openidc.la "$pkgdir"/usr/lib/apache2
+ /usr/share/apache2/build/instdso.sh SH_LIBTOOL='/usr/share/build-1/libtool' mod_auth_openidc.la "$pkgdir"/usr/lib/apache2
+ /usr/share/build-1/libtool --mode=install install mod_auth_openidc.la "$pkgdir"/usr/lib/apache2
mkdir -p "$pkgdir"/etc/apache2/conf.d
cat <<- __EOF__ > "$pkgdir"/etc/apache2/conf.d/mod-auth-openidc.conf
@@ -41,4 +56,6 @@ package() {
install -Dm644 README.md "$pkgdir"/usr/share/doc/"$pkgname"/README.md
}
-sha512sums="fd551ba709221cbe20d1ed3eb80023a03b8d9e793f41cdfc6ab8e0cc165a3580632c31035a6cd43950b20e16b3da941d8f8e9c7f6b580c89b82f02ccb42d7e92 mod_auth_openidc-2.4.4.1.tar.gz"
+sha512sums="
+cf32be4eaf5df9000af760bc1ef2fe372110fb385c4fc216724563eb71593a765a533acbf5210fd0686a58eab606bd362c8f1514c2f179906a502b25556a14b6 mod_auth_openidc-2.4.15.7.tar.gz
+"
diff --git a/testing/apache-mod-md/APKBUILD b/testing/apache-mod-md/APKBUILD
deleted file mode 100644
index b1e8c4ce50e..00000000000
--- a/testing/apache-mod-md/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Contributor: Síle Ekaterin Liszka <sheila@vulpine.house>
-# Maintainer: Síle Ekaterin Liszka <sheila@vulpine.house>
-pkgname=apache-mod-md
-pkgver=2.4.10
-pkgrel=0
-pkgdesc="Integrated Acme protocol support for apache2"
-url="https://github.com/icing/mod_md"
-arch="all"
-license="Apache-2.0"
-makedepends="apache2-dev curl-dev jansson-dev"
-subpackages="$pkgname-doc"
-source="https://github.com/icing/mod_md/releases/download/v$pkgver/mod_md-$pkgver.tar.gz"
-builddir="$srcdir/mod_md-$pkgver"
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-e2fa9207997c1ea9309bb942855f10dc823cb243c1a39f6f4d5a8dd5cbb9e093b19fce7a201752aefa240a3d040667717ca748accbafa18d89dacb0bfabd6dce mod_md-2.4.10.tar.gz
-"
diff --git a/testing/apache2-mod-perl/APKBUILD b/testing/apache2-mod-perl/APKBUILD
index 3bf0159db95..989172e5d0e 100644
--- a/testing/apache2-mod-perl/APKBUILD
+++ b/testing/apache2-mod-perl/APKBUILD
@@ -3,7 +3,7 @@
# Maintainer: Matt Smith <mcs@darkregion.net>
pkgname=apache2-mod-perl
_pkgreal=mod_perl
-pkgver=2.0.12
+pkgver=2.0.13
pkgrel=0
pkgdesc="Perl Module for Apache2"
url="https://perl.apache.org/"
@@ -29,7 +29,6 @@ check() {
make test
}
-
package() {
make DESTDIR="$pkgdir" install
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
@@ -49,6 +48,6 @@ dev() {
}
sha512sums="
-890dca0950847e32180485cabbeffbf236af2c92c7df957a233c210022b5172957eddb1db3e9281b87cd438d2fa404a05ae99c7eda098267c68d5e9262b400b0 mod_perl-2.0.12.tar.gz
+453c789743487e2d1167d005f21ef9780f36488db8830103e4ea0a0656f685bf5ec423cd1baa68ee30efc75d9e2b845c9656458203b9f48de81a315a91d587c9 mod_perl-2.0.13.tar.gz
15a430ce597e370997a08d6aa1b5e55d4fa723ecac031fe39906c8cc767b90d5bf63e3026dfaa8b10ae8b09a17832f4f07cb8b2fdcd6c9ef427edfaf4e8a48b0 apache2-mod-perl.conf
"
diff --git a/testing/aparte/APKBUILD b/testing/aparte/APKBUILD
new file mode 100644
index 00000000000..a540a642fa0
--- /dev/null
+++ b/testing/aparte/APKBUILD
@@ -0,0 +1,41 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=aparte
+pkgver=0.2.0_git20240324
+_gitrev=e5d9ac7f3bb6cd6d135657d9342f9ccac6f1d182
+pkgrel=0
+pkgdesc="Simple XMPP console client written in Rust"
+url="https://github.com/paulfariello/aparte"
+arch="all"
+license="MPL-2.0"
+makedepends="
+ cargo
+ cargo-auditable
+ protoc
+ sqlite-dev
+ "
+source="https://github.com/paulfariello/aparte/archive/$_gitrev/aparte-$_gitrev.tar.gz"
+builddir="$srcdir/$pkgname-$_gitrev"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dvm755 target/release/aparte \
+ -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+49d8ba59dcb8978e56dd9e36e62bb151239961302ddfffdcac1345aeaa41a1736e3970157f744b074ced2d7fc3f368de02be93d0d8ca713a6cec14f604992620 aparte-e5d9ac7f3bb6cd6d135657d9342f9ccac6f1d182.tar.gz
+"
diff --git a/testing/apk-snap/APKBUILD b/testing/apk-snap/APKBUILD
new file mode 100644
index 00000000000..d5cc2c3a8fc
--- /dev/null
+++ b/testing/apk-snap/APKBUILD
@@ -0,0 +1,32 @@
+# Contributor: Jacob Ludvigsen <jacob.ludvigsen@protonmail.com>
+# Maintainer: Jacob Ludvigsen <jacob.ludvigsen@protonmail.com>
+pkgname=apk-snap
+pkgver=3.1.1
+pkgrel=0
+pkgdesc="Port of snap-pac from Arch Linux. Triggers filesystem snapshots before and after every apk commit"
+url="https://gitlab.com/papiris/apk-snap"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="python3 snapper"
+makedepends="py3-sphinx sphinx"
+checkdepends="py3-pytest"
+install="$pkgname.post-install $pkgname.post-upgrade $pkgname.post-deinstall"
+subpackages="$pkgname-doc"
+source="https://gitlab.com/papiris/apk-snap/-/archive/$pkgver/apk-snap-$pkgver.tar.bz2"
+
+build() {
+ make man
+}
+
+check() {
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir/" install
+ install -Dm644 $builddir/extra/snapper-config-apk-snap $pkgdir/etc/apk-snap/default-snapper-config-apk-snap.conf
+}
+
+sha512sums="
+f56a82d911aa14f6917603eff1d716cfd211344077d68525d73f68f7df62d4ba07b841ba1ccc7ef38dff4d8fc08e02b98335dc475d2a695cbfc27716d28e7582 apk-snap-3.1.1.tar.bz2
+"
diff --git a/testing/apk-snap/apk-snap.post-deinstall b/testing/apk-snap/apk-snap.post-deinstall
new file mode 100755
index 00000000000..794168ae66b
--- /dev/null
+++ b/testing/apk-snap/apk-snap.post-deinstall
@@ -0,0 +1,36 @@
+#!/bin/sh
+
+SNAPPER_CONFIGS_FILE="/etc/snapper/snapper"
+SNAPPER_CONFIG_APK_SNAP_ITEM="root-apk-snap"
+
+# Check if /etc/snapper/snapper exists, add call to config for apk-snap
+if [ -f "$SNAPPER_CONFIGS_FILE" ]; then
+ # Extract the value of SNAPPER_CONFIGS from the file
+ SNAPPER_CONFIGS=$(awk -F'[:"]+' '/^SNAPPER_CONFIGS=/ {print $3}' "$SNAPPER_CONFIGS_FILE")
+
+ # Check if "root-apk-snap" is in the SNAPPER_CONFIGS
+ if [ -n "$SNAPPER_CONFIGS" ] && echo "$SNAPPER_CONFIGS" | grep -qw "$SNAPPER_CONFIG_APK_SNAP_ITEM"; then
+ SNAPPER_CONFIGS=$(echo "$SNAPPER_CONFIGS" | sed "s/\b$DEFAULT_SNAPPER_ITEM\b//g" | sed 's/ / /g' | sed 's/^ //;s/ $//')
+ sed -i "/^SNAPPER_CONFIGS=/s/=.*/=\"$SNAPPER_CONFIGS\"/" "$SNAPPER_CONFIGS_FILE"
+ echo "$SNAPPER_CONFIG_APK_SNAP_ITEM removed from SNAPPER_CONFIGS: $SNAPPER_CONFIGS"
+ fi
+else
+ echo "Snapper not properly installed, $SNAPPER_CONFIGS_FILE does not exist"
+fi
+
+
+# Check if snapper config for apk-snap, and snapshots subvol exists; and take appropriate action
+if [ -f "/etc/snapper/configs/root-apk-snap" ] && [ -d "/.snapshots" ]; then
+ echo "snapper config for apk-snap removed, ./snapshots subvol not removed."
+ rm -f /etc/snapper/configs/root-apk-snap
+
+elif [ -f "/etc/snapper/configs/root-apk-snap" ] && [ ! -d "/.snapshots" ]; then
+ echo "snapper config for apk-snap removed, snapshots subvol does not exist."
+ rm -f /etc/snapper/configs/root-apk-snap
+
+elif [ -f "/etc/snapper/configs/root-apk-snap" ] || [ -d "/.snapshots" ]; then
+ echo "snapper config for apk-snap does not exist, snapshots subvol not removed."
+
+elif [ -f "/etc/snapper/configs/root-apk-snap" ] || [ ! -d "/.snapshots" ]; then
+ echo "snapper config for apk-snap does not exist, snapshots subvol does not exist."
+fi
diff --git a/testing/apk-snap/apk-snap.post-install b/testing/apk-snap/apk-snap.post-install
new file mode 100755
index 00000000000..03d70da3720
--- /dev/null
+++ b/testing/apk-snap/apk-snap.post-install
@@ -0,0 +1,46 @@
+#!/bin/sh
+
+SNAPPER_CONFIGS_FILE="/etc/snapper/snapper"
+SNAPPER_CONFIG_APK_SNAP_ITEM="root-apk-snap"
+DEFAULT_APK_SNAPPER_CONFIG="/etc/apk-snap/default-snapper-config-apk-snap.conf"
+
+# Check if /etc/snapper/snapper exists, add call to config for apk-snap
+if [ -f "$SNAPPER_CONFIGS_FILE" ]; then
+ # Extract the value of SNAPPER_CONFIGS from the file
+ SNAPPER_CONFIGS=$(awk -F'[:"]+' '/^SNAPPER_CONFIGS=/ {print $3}' "$SNAPPER_CONFIGS_FILE")
+
+ # Check if "root-apk-snap" is in the SNAPPER_CONFIGS
+ if [ -n "$SNAPPER_CONFIGS" ] && echo "$SNAPPER_CONFIGS" | grep -qw "$SNAPPER_CONFIG_APK_SNAP_ITEM"; then
+ :
+ else
+ # Add "root-apk-snap" to SNAPPER_CONFIGS
+ SNAPPER_CONFIGS="$SNAPPER_CONFIGS $SNAPPER_CONFIG_APK_SNAP_ITEM"
+ sed -i "/^SNAPPER_CONFIGS=/s/=.*/=\"$SNAPPER_CONFIGS\"/" "$SNAPPER_CONFIGS_FILE"
+ echo "$SNAPPER_CONFIG_APK_SNAP_ITEM added to $SNAPPER_CONFIGS_FILE"
+ fi
+else
+ echo "Snapper not properly installed, $SNAPPER_CONFIGS_FILE does not exist"
+ exit 1
+fi
+
+
+# Check if snapper config for apk-snap, and snapshots subvol exists; and take appropriate action
+if [ -f "/etc/snapper/configs/root-apk-snap" ] && [ -d "/.snapshots" ]; then
+ echo "Snapper config for apk-snap exists, ./snapshots subvol exists."
+
+elif [ -f "/etc/snapper/configs/root-apk-snap" ] && [ ! -d "/.snapshots" ]; then
+ echo "Snapper config for apk-snap exists, ./snapshots subvol does not exist."
+ echo "Creating /.snapshots subvol"
+ btrfs subvol create /.snapshots
+
+elif [ -f "/etc/snapper/configs/root-apk-snap" ] || [ -d "/.snapshots" ]; then
+ echo "Snapper config for apk-snap does not exist, snapshots subvol exists."
+ echo "Creating snapper config for apk-snap"
+ install -Dm 644 $DEFAULT_APK_SNAPPER_CONFIG /etc/snapper/configs/$SNAPPER_CONFIG_APK_SNAP_ITEM
+
+elif [ -f "/etc/snapper/configs/root-apk-snap" ] || [ ! -d "/.snapshots" ]; then
+ echo "Snapper config for apk-snap does not exist, snapshots subvol does not exist."
+ echo "Creating /.snapshots subvol and snapper config for apk-snap"
+ btrfs subvol create /.snapshots
+ install -Dm 644 $DEFAULT_APK_SNAPPER_CONFIG /etc/snapper/configs/$SNAPPER_CONFIG_APK_SNAP_ITEM
+fi
diff --git a/testing/apk-snap/apk-snap.post-upgrade b/testing/apk-snap/apk-snap.post-upgrade
new file mode 100755
index 00000000000..03d70da3720
--- /dev/null
+++ b/testing/apk-snap/apk-snap.post-upgrade
@@ -0,0 +1,46 @@
+#!/bin/sh
+
+SNAPPER_CONFIGS_FILE="/etc/snapper/snapper"
+SNAPPER_CONFIG_APK_SNAP_ITEM="root-apk-snap"
+DEFAULT_APK_SNAPPER_CONFIG="/etc/apk-snap/default-snapper-config-apk-snap.conf"
+
+# Check if /etc/snapper/snapper exists, add call to config for apk-snap
+if [ -f "$SNAPPER_CONFIGS_FILE" ]; then
+ # Extract the value of SNAPPER_CONFIGS from the file
+ SNAPPER_CONFIGS=$(awk -F'[:"]+' '/^SNAPPER_CONFIGS=/ {print $3}' "$SNAPPER_CONFIGS_FILE")
+
+ # Check if "root-apk-snap" is in the SNAPPER_CONFIGS
+ if [ -n "$SNAPPER_CONFIGS" ] && echo "$SNAPPER_CONFIGS" | grep -qw "$SNAPPER_CONFIG_APK_SNAP_ITEM"; then
+ :
+ else
+ # Add "root-apk-snap" to SNAPPER_CONFIGS
+ SNAPPER_CONFIGS="$SNAPPER_CONFIGS $SNAPPER_CONFIG_APK_SNAP_ITEM"
+ sed -i "/^SNAPPER_CONFIGS=/s/=.*/=\"$SNAPPER_CONFIGS\"/" "$SNAPPER_CONFIGS_FILE"
+ echo "$SNAPPER_CONFIG_APK_SNAP_ITEM added to $SNAPPER_CONFIGS_FILE"
+ fi
+else
+ echo "Snapper not properly installed, $SNAPPER_CONFIGS_FILE does not exist"
+ exit 1
+fi
+
+
+# Check if snapper config for apk-snap, and snapshots subvol exists; and take appropriate action
+if [ -f "/etc/snapper/configs/root-apk-snap" ] && [ -d "/.snapshots" ]; then
+ echo "Snapper config for apk-snap exists, ./snapshots subvol exists."
+
+elif [ -f "/etc/snapper/configs/root-apk-snap" ] && [ ! -d "/.snapshots" ]; then
+ echo "Snapper config for apk-snap exists, ./snapshots subvol does not exist."
+ echo "Creating /.snapshots subvol"
+ btrfs subvol create /.snapshots
+
+elif [ -f "/etc/snapper/configs/root-apk-snap" ] || [ -d "/.snapshots" ]; then
+ echo "Snapper config for apk-snap does not exist, snapshots subvol exists."
+ echo "Creating snapper config for apk-snap"
+ install -Dm 644 $DEFAULT_APK_SNAPPER_CONFIG /etc/snapper/configs/$SNAPPER_CONFIG_APK_SNAP_ITEM
+
+elif [ -f "/etc/snapper/configs/root-apk-snap" ] || [ ! -d "/.snapshots" ]; then
+ echo "Snapper config for apk-snap does not exist, snapshots subvol does not exist."
+ echo "Creating /.snapshots subvol and snapper config for apk-snap"
+ btrfs subvol create /.snapshots
+ install -Dm 644 $DEFAULT_APK_SNAPPER_CONFIG /etc/snapper/configs/$SNAPPER_CONFIG_APK_SNAP_ITEM
+fi
diff --git a/testing/apk-tools3/APKBUILD b/testing/apk-tools3/APKBUILD
new file mode 100644
index 00000000000..3ae7dae436a
--- /dev/null
+++ b/testing/apk-tools3/APKBUILD
@@ -0,0 +1,85 @@
+# Contributor: Natanael Copa <ncopa@alpinelinux.org>
+# Maintainer: Sertonix <sertonix@posteo.net>
+pkgname=apk-tools3
+pkgver=3.0.0_pre2_git20240401
+_commit=b7a7ea728e242a04f32f8e56ddc3d8d85960ee28
+pkgrel=0
+pkgdesc="Alpine Package Keeper v3 - package manager for alpine"
+arch="all"
+url="https://git.alpinelinux.org/apk-tools"
+license="GPL-2.0-only"
+subpackages="$pkgname-dbg $pkgname-dev $pkgname-static $pkgname-doc $pkgname-libs"
+# Musl 1.2 introduced new ABI for time64 => upgrading apk-tools
+# while staying on musl <1.2 causes missing symbols
+# starting with musl 1.2.3_git (pre 1.2.3), we added DT_RELR
+# it is possible for old systems to upgrade, and apk-tools would upgrade first,
+# which would upgrade to a binary that cannot run until musl is upgraded.
+# forcing this constraint makes apk upgrade musl as part of the 'critical' transaction,
+# and update musl first.
+depends="musl>=1.2.3_git20230424"
+_lua="5.3"
+makedepends_build="openssl>3 lua$_lua lua$_lua-lzlib scdoc"
+makedepends_host="meson zlib-dev zstd-dev openssl-dev zlib-static zstd-static openssl-libs-static linux-headers"
+makedepends="$makedepends_build $makedepends_host"
+_d_lua=disabled
+if [ "$CBUILD" = "$CHOST" ]; then
+ _d_lua=enabled
+ subpackages="$subpackages lua$_lua-apk3:luaapk"
+ makedepends="$makedepends lua$_lua-dev"
+
+ # ca-certificates-bundle needed for https certificate validation
+ depends="$depends ca-certificates-bundle"
+fi
+source="$pkgname-$pkgver.tar.gz::https://gitlab.alpinelinux.org/alpine/apk-tools/-/archive/$_commit/apk-tools-$_commit.tar.gz"
+builddir=$srcdir/apk-tools-$_commit
+
+build() {
+ abuild-meson \
+ --bindir=/sbin \
+ --libdir=/lib \
+ -Dlua_version=$_lua -Dlua=$_d_lua \
+ -Ddocs=enabled \
+ -Dhelp=enabled \
+ -Dstatic_apk=true \
+ . output
+ VERSION=$pkgver-r$pkgrel meson compile -C output
+}
+
+check() {
+ meson test --no-rebuild --print-errorlogs -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+ install -d "$pkgdir"/lib/apk/db \
+ "$pkgdir"/lib/apk/exec \
+ "$pkgdir"/etc/apk/keys \
+ "$pkgdir"/etc/apk/protected_paths.d
+}
+
+static() {
+ pkgdesc="$pkgdesc (static binary)"
+ depends=""
+
+ amove sbin/apk.static
+ ${CROSS_COMPILE}strip "$subpkgdir"/sbin/apk.static
+ local pubkey="${PACKAGER_PUBKEY:-$PACKAGER_PRIVKEY.pub}"
+ openssl dgst -sha1 -sign "$PACKAGER_PRIVKEY" \
+ -out "$subpkgdir"/sbin/apk.static.SIGN.RSA."${pubkey##*/}" \
+ "$subpkgdir"/sbin/apk.static
+}
+
+libs() {
+ pkgdesc="$pkgdesc (libraries)"
+ amove 'lib/libapk*'
+}
+
+luaapk() {
+ pkgdesc="Lua module for $pkgname"
+ depends=""
+ amove 'usr/lib/lua*'
+}
+
+sha512sums="
+b7889bd50192e83ab051ab9bf2cebf80a0c22029b8a60b9329e426ac0e394dc856a4ecb5648c32cc3eb72d6b0cf09a8395b54c53d48fb5ab4645d0f8bdaa69cd apk-tools3-3.0.0_pre2_git20240401.tar.gz
+"
diff --git a/testing/apko/APKBUILD b/testing/apko/APKBUILD
deleted file mode 100644
index 16a044af586..00000000000
--- a/testing/apko/APKBUILD
+++ /dev/null
@@ -1,42 +0,0 @@
-# Maintainer: Ariadne Conill <ariadne@dereferenced.org>
-pkgname=apko
-pkgver=0.3.2
-pkgrel=1
-pkgdesc="declarative APK-based container building tool with support for Sigstore signatures"
-url="https://github.com/chainguard-dev/apko"
-arch="all"
-license="Apache-2.0"
-# Explicitly depend on apk-tools, so that this package can be used without alpine-base.
-depends="apk-tools"
-makedepends="go"
-subpackages="
- $pkgname-bash-completion
- $pkgname-fish-completion
- $pkgname-zsh-completion
- "
-source="https://github.com/chainguard-dev/apko/archive/v$pkgver/apko-$pkgver.tar.gz"
-
-build() {
- mkdir build
- go build -o build/ -tags -tags=pivkey,pkcs11key "$builddir"/...
-
- for i in bash fish zsh; do
- "$builddir"/build/apko completion $i > "$builddir"/apko.$i
- done
-}
-
-check() {
- go test "$builddir"/...
-}
-
-package() {
- install -Dm755 "$builddir"/build/apko "$pkgdir"/usr/bin/apko
-
- install -Dm644 "$builddir"/apko.bash "$pkgdir"/usr/share/bash-completion/completions/apko
- install -Dm644 "$builddir"/apko.fish "$pkgdir"/usr/share/fish/completions/apko.fish
- install -Dm644 "$builddir"/apko.zsh "$pkgdir"/usr/share/zsh/site-functions/_apko
-}
-
-sha512sums="
-950c73f5beebe991608a5a75fea0dbd85f64b9ae9e9a9e9fd47f65d4d9254da1bb53ec87c425f07bcc59b47b29a8a2f2719d2ecc9708fca14faea51aa19f3be7 apko-0.3.2.tar.gz
-"
diff --git a/testing/apmpkg/APKBUILD b/testing/apmpkg/APKBUILD
index 35ad37c1abc..734d0214c8e 100644
--- a/testing/apmpkg/APKBUILD
+++ b/testing/apmpkg/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: kedap <kedap.dev@protonmail.com>
pkgname=apmpkg
pkgver=1.5.1
-pkgrel=0
+pkgrel=3
pkgdesc="A Package Manager as a model: PKGBUILD"
url="https://github.com/kedap/apmpkg"
# armhf: test timeout
@@ -10,7 +10,7 @@ url="https://github.com/kedap/apmpkg"
arch="all !s390x !armhf !riscv64"
license="Apache-2.0"
depends="git fakeroot wget ruby-bundler py3-pip bash ruby-dev npm"
-makedepends="cargo openssl-dev patchutils"
+makedepends="cargo openssl-dev>3 patchutils cargo-auditable"
subpackages="
$pkgname-doc
$pkgname-bash-completion
@@ -21,8 +21,9 @@ source="$pkgname-$pkgver.tar.gz::https://github.com/Kedap/apmpkg/archive/refs/ta
fix-with-outdated-rust.patch
"
+
build() {
- cargo build --release --locked --verbose
+ cargo auditable build --release --locked --verbose
}
check() {
@@ -48,7 +49,7 @@ package() {
#Install fish completion
install -Dm0644 completions/$pkgname.fish \
- "$pkgdir"/usr/share/fish/completions/$pkgname.fish
+ "$pkgdir"/usr/share/fish/vendor_completions.d/$pkgname.fish
}
sha512sums="
diff --git a/testing/apollo/APKBUILD b/testing/apollo/APKBUILD
new file mode 100644
index 00000000000..5b38062c137
--- /dev/null
+++ b/testing/apollo/APKBUILD
@@ -0,0 +1,33 @@
+# Maintainer: David Sugar <tychosoft@gmail.com>
+# Contributor: David Sugar <tychosoft@gmail.com>
+pkgname=apollo
+pkgver=0.2.1
+pkgrel=2
+pkgdesc="Web management and api services for Coventry"
+url="https://www.tychosoft.com/tychosoft/apollo/wiki"
+arch="all"
+license="GPL-3.0-or-later"
+makedepends="make musl-dev go"
+subpackages="$pkgname-doc $pkgname-openrc"
+source="https://www.tychosoft.com/api/packages/tychosoft/generic/apollo/$pkgver/apollo-$pkgver.tar.gz apollo.initd"
+
+build() {
+ make PREFIX=/usr SYSCONFDIR=/etc LOCALSTATEDIR=/var release
+}
+
+check() {
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" PREFIX=/usr SYSCONFDIR=/etc LOCALSTATEDIR=/var install
+ install -D -m 755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
+ install -Dm644 LICENSE.md "$pkgdir"/usr/share/licenses/$pkgname/LICENSE.md
+ install -Dm644 README.md "$pkgdir"/usr/share/doc/$pkgname/README.md
+ install -Dm644 FEATURES.md "$pkgdir"/usr/share/doc/$pkgname/FEATURES.md
+}
+
+sha512sums="
+86627bda730a5d0734f12de5b64ad37916c36803de61391edf8ef241a5e96859b07db7eae68890d4e98e7f5d142a55646215f8404c06bfcba7d5ba3f8f20b4d8 apollo-0.2.1.tar.gz
+110cb34c47d2ea9f887b393e24393a2f3224989bc9f659983eaa7fdc678f46ca34f412018a016be331eb53a886b1ca39e8479571fb6c2a0ed6f5294c3a99c16c apollo.initd
+"
diff --git a/testing/apollo/apollo.initd b/testing/apollo/apollo.initd
new file mode 100644
index 00000000000..4bc6370c9e6
--- /dev/null
+++ b/testing/apollo/apollo.initd
@@ -0,0 +1,26 @@
+#!/sbin/openrc-run
+
+supervisor=supervise-daemon
+name=apollo
+command="/usr/sbin/apollo"
+pidfile="/run/apollo.pid"
+extra_started_commands="reload"
+
+depend() {
+ use logger dns
+ need net
+ after coventry
+}
+
+stop() {
+ ebegin "Stopping ${RC_SVCNAME}"
+ start-stop-daemon --signal INT --pidfile "${pidfile}"
+ eend $? "Failed to stop ${RC_SVCNAME}"
+}
+
+reload() {
+ ebegin "Reloading ${RC_SVCNAME}"
+ start-stop-daemon --signal HUP --pidfile "${pidfile}"
+ eend $?
+}
+
diff --git a/testing/aports-glmr/APKBUILD b/testing/aports-glmr/APKBUILD
index cd839539105..3d062711251 100644
--- a/testing/aports-glmr/APKBUILD
+++ b/testing/aports-glmr/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=aports-glmr
pkgver=0.2
-pkgrel=5
+pkgrel=20
pkgdesc="CLI tool to search open merge requests for aports"
url="https://gitlab.alpinelinux.org/ncopa/aports-glmr"
license="MIT"
@@ -10,6 +10,10 @@ makedepends="go"
source="https://gitlab.alpinelinux.org/ncopa/aports-glmr/-/archive/$pkgver/aports-glmr-$pkgver.tar.gz"
options="!check" # no checks
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
build() {
make
}
diff --git a/testing/apostrophe/APKBUILD b/testing/apostrophe/APKBUILD
index d9019bacb93..88aa3438902 100644
--- a/testing/apostrophe/APKBUILD
+++ b/testing/apostrophe/APKBUILD
@@ -1,30 +1,51 @@
# Contributor: Rasmus Thomsen <oss@cogitri.dev>
-# Maintainer: Rasmus Thomsen <oss@cogitri.dev>
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=apostrophe
pkgver=2.6.3
-pkgrel=0
+pkgrel=6
pkgdesc="distraction free Markdown editor for GNU/Linux made with GTK+"
url="https://gitlab.gnome.org/World/apostrophe"
-arch="x86_64" # py3-pypandoc
+arch="aarch64 x86_64" # py3-pypandoc
license="GPL-3.0-or-later"
-depends="py3-regex py3-setuptools py3-levenshtein py3-enchant py3-gobject3
- py3-cairo py3-pypandoc webkit2gtk gtk+3.0 libhandy1 py3-chardet gspell"
+depends="
+ font-fira-otf
+ gspell
+ gtk+3.0
+ libhandy1
+ py3-cairo
+ py3-chardet
+ py3-enchant
+ py3-gobject3
+ py3-levenshtein
+ py3-pypandoc
+ py3-regex
+ py3-setuptools
+ webkit2gtk
+ "
makedepends="meson gtk+3.0-dev gobject-introspection-dev gspell-dev gettext-dev
libhandy1-dev sassc"
checkdepends="appstream-glib desktop-file-utils"
subpackages="$pkgname-lang"
-source="https://gitlab.gnome.org/World/apostrophe/-/archive/v$pkgver/apostrophe-v$pkgver.tar.gz
- dont-require-py-gettext.patch
- "
+source="https://gitlab.gnome.org/World/apostrophe/-/archive/v$pkgver/apostrophe-v$pkgver.tar.gz"
builddir="$srcdir/$pkgname-v$pkgver"
+prepare() {
+ default_prepare
+ # fix font finding
+ sed -i 's|/app/share/fonts/FiraSans-Regular.ttf|/usr/share/fonts/OTF/FiraSans-Regular.otf|' \
+ data/media/css/web/base.css
+ sed -i 's|/app/share/fonts/FiraMono-Regular.ttf|/usr/share/fonts/OTF/FiraMono-Regular.otf|' \
+ data/media/css/web/base.css
+
+}
+
build() {
abuild-meson . output
- meson compile ${JOBS:+-j ${JOBS}} -C output
+ meson compile -C output
}
check() {
- meson test --no-rebuild -v -C output
+ meson test --no-rebuild --print-errorlogs -C output
}
package() {
@@ -33,5 +54,4 @@ package() {
sha512sums="
1820fd609efe4ac0b7babdeb2aa552a72dd9623f4caeb8eb9e638a52a546b76fda5119931d10b630234a595d227ff7090a63503fd9da94d553439b91a03ac876 apostrophe-v2.6.3.tar.gz
-a46505e246af5d6ebf99d8585eb5f99046a71f0c54328f0c07caef046dd0f9e403ba0be89703621f1644fd5d4be7f74fdf7308356f38afe7f21c5c57eaf08a57 dont-require-py-gettext.patch
"
diff --git a/testing/apostrophe/dont-require-py-gettext.patch b/testing/apostrophe/dont-require-py-gettext.patch
deleted file mode 100644
index 89f8938f799..00000000000
--- a/testing/apostrophe/dont-require-py-gettext.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/apostrophe.in b/apostrophe.in
-index 70abee5..ee5452c 100755
---- a/apostrophe.in
-+++ b/apostrophe.in
-@@ -51,8 +51,6 @@ pkgdatadir = '@DATA_DIR@'
- #locale_dir = os.path.abspath(os.path.join(os.path.dirname(apostrophe.__file__),'../po/'))
-
- # L10n
--locale.textdomain('apostrophe')
--locale.bindtextdomain('apostrophe', localedir)
- gettext.textdomain('apostrophe')
- gettext.bindtextdomain('apostrophe', localedir)
-
diff --git a/testing/apprise/APKBUILD b/testing/apprise/APKBUILD
new file mode 100644
index 00000000000..10968141d35
--- /dev/null
+++ b/testing/apprise/APKBUILD
@@ -0,0 +1,40 @@
+# Contributor: Guy Godfroy <guy.godfroy@gugod.fr>
+# Maintainer: Guy Godfroy <guy.godfroy@gugod.fr>
+pkgname=apprise
+pkgver=1.7.6
+pkgrel=0
+pkgdesc="Push Notifications that work with just about every platform"
+url="https://github.com/caronc/apprise"
+arch="noarch"
+license="BSD-2-Clause"
+depends="py3-certifi py3-requests py3-requests-oauthlib py3-click py3-markdown py3-yaml"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+checkdepends="py3-pytest py3-pytest-mock"
+subpackages="$pkgname-doc $pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://codeload.github.com/caronc/apprise/tar.gz/refs/tags/v$pkgver"
+options="net"
+
+case "$CARCH" in
+s390x|x86)
+ options="$options !check" # some tests fail on package builders
+ ;;
+esac
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ sh bin/test.sh
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" .dist/*.whl
+ install -Dm644 packaging/man/apprise.1 -t "$pkgdir"/usr/share/man/man1
+}
+
+sha512sums="
+be1469b26c72255b95a055073e8ba2e147fb66a79bbdc82d38dbd765d059d7f9d4b6142728a2e583d4ad2370d489303c342500f472946fabd41f01463d2a1fde apprise-1.7.6.tar.gz
+"
diff --git a/testing/apptainer/APKBUILD b/testing/apptainer/APKBUILD
deleted file mode 100644
index 5e58a35c917..00000000000
--- a/testing/apptainer/APKBUILD
+++ /dev/null
@@ -1,53 +0,0 @@
-# Contributor: Oleg Titov <oleg.titov@gmail.com>
-# Maintainer: Oleg Titov <oleg.titov@gmail.com>
-pkgname=apptainer
-pkgver=1.0.2
-pkgrel=1
-pkgdesc="Apptainer - application containers for Linux"
-url="https://apptainer.org/"
-# aarch64: segmentation fault during build
-# ppc64le: produces a non-PIE suid binary
-arch="all !aarch64 !ppc64le"
-license="Apache-2.0 AND BSD-2-Clause AND BSD-3-Clause AND BSD-3-Clause-LBNL AND MIT AND MPL-2.0 AND Unlicense"
-options="suid !check" # no test suite from upstream
-depends="squashfs-tools"
-makedepends="
- bash
- cni-plugins
- cryptsetup
- go
- libseccomp-dev
- "
-subpackages="$pkgname-doc $pkgname-bash-completion"
-source="https://github.com/apptainer/apptainer/releases/download/v$pkgver/apptainer-$pkgver.tar.gz"
-
-export GOPATH="$srcdir"
-export GOFLAGS="$GOFLAGS -modcacherw -trimpath"
-
-prepare() {
- default_prepare
- echo "$pkgver" > "$builddir"/VERSION
-}
-
-build() {
- # override git dir so it picks up our version above
- GIT_DIR=. ./mconfig \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --infodir=/usr/share/infodir \
- --localstatedir=/var \
- --without-network
-
- make -C builddir GOFLAGS="$GOFLAGS"
-}
-
-package() {
- make -C builddir DESTDIR="$pkgdir" GOFLAGS="$GOFLAGS" install
-
- install -Dm644 -t "$pkgdir"/usr/share/doc/$pkgname README.md
-}
-
-sha512sums="
-c29d04eff3a2ee7126c9bbb65664540a446fe695efc9c4662a6da151b2e809d55c1f5a7b5bddb82ba4fdd41a49ceb538c00a72778a4ed1d0306ff5f49d2f4d53 apptainer-1.0.2.tar.gz
-"
diff --git a/testing/aprx/APKBUILD b/testing/aprx/APKBUILD
deleted file mode 100644
index 9efb20e9ff9..00000000000
--- a/testing/aprx/APKBUILD
+++ /dev/null
@@ -1,49 +0,0 @@
-# Contributor: Milan P. Stanić <mps@arvanta.net>
-# Maintainer: Milan P. Stanić <mps@arvanta.net>
-pkgname=aprx
-pkgver=2.9.1
-pkgrel=0
-pkgdesc="aprx digipeater and iGate"
-url="https://thelifeofkenneth.com/aprx/"
-arch="all"
-license="BSD-3-Clause"
-options="!check" # no tests
-pkgusers="aprx"
-pkggroups="aprx"
-makedepends="libax25-dev perl"
-install="$pkgname.pre-install $pkgname.post-install"
-subpackages="$pkgname-doc $pkgname-openrc"
-source="https://thelifeofkenneth.com/aprx/release/aprx-$pkgver.tar.gz
- aprx.initd
- aprx.confd
- "
-
-build() {
- export CFLAGS="$CFLAGS -fcommon -O2 -DERLANGSTORAGE"
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --sbindir=/usr/sbin \
- --mandir=/usr/share/man \
- --with-pthread \
- --localstatedir=/var
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-
- install -m755 -D "$srcdir"/$pkgname.initd \
- "$pkgdir"/etc/init.d/$pkgname
- install -m644 -D "$srcdir"/$pkgname.confd \
- "$pkgdir"/etc/conf.d/$pkgname
- install -m770 -o aprx -g aprx -d "$pkgdir"/var/log/aprx
-}
-
-sha512sums="
-469e007e06af9979ec1423c089ef7a9d3ec6c88202d298fd616abd3b18c62d43e43b585cb7dfd5bc056b727eb98d37187de97a9e0066e09e5370fa4dfd88b6da aprx-2.9.1.tar.gz
-d7d4327a9affe7fb7156c8dea468e18f6616819b5f214f94652845a2467b9776abc2f8c81783099c11bc0603257dcb87f7973f6326d645512af0478385168791 aprx.initd
-2e743e64cceac6498c40701f43b7782b21be359dd2028b8463feb1542ef33c789b3a4c0dd4e29c17a633fcea543357a7bc4e8b5cb46abc7125ac2b7bf203cc7a aprx.confd
-"
diff --git a/testing/aprx/aprx.confd b/testing/aprx/aprx.confd
deleted file mode 100644
index 33cb0c2b6b4..00000000000
--- a/testing/aprx/aprx.confd
+++ /dev/null
@@ -1,5 +0,0 @@
-#
-# Additional options that are passed to the Daemon.
-#
-DAEMON_OPTS=""
-
diff --git a/testing/aprx/aprx.initd b/testing/aprx/aprx.initd
deleted file mode 100644
index 5377d515af2..00000000000
--- a/testing/aprx/aprx.initd
+++ /dev/null
@@ -1,27 +0,0 @@
-#!/sbin/openrc-run
-
-# Sample init.d file for alpine linux.
-
-name=aprx
-command="/usr/sbin/$name"
-command_args="$DAEMON_OPTS"
-command_background="yes"
-pidfile="/run/$name.pid"
-
-depend() {
- need net
- after firewall
-}
-
-start() {
- ebegin "Starting $pname"
- start-stop-daemon --start --pidfile $pidfile --exec $command
- eend $?
-}
-
-stop() {
- ebegin "Stopping $name"
- start-stop-daemon --stop --quiet --signal TERM --oknodo --pidfile $pidfile
- eend $? "Failed to stop $name"
-}
-
diff --git a/testing/aprx/aprx.post-install b/testing/aprx/aprx.post-install
deleted file mode 100644
index 0586fcd5c52..00000000000
--- a/testing/aprx/aprx.post-install
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-
-# add something which happends after install
-
diff --git a/testing/aprx/aprx.pre-install b/testing/aprx/aprx.pre-install
deleted file mode 100644
index 4c9658a2b5c..00000000000
--- a/testing/aprx/aprx.pre-install
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/bin/sh
-if ! getent group aprx >/dev/null; then
- addgroup -S aprx 2>/dev/null
-fi
-
-if ! getent passwd aprs >/dev/null; then
- adduser -S -H -h /run/aprx -s /sbin/nologin -G aprx -g aprx aprx 2>/dev/null
-fi
diff --git a/testing/apt-dater/APKBUILD b/testing/apt-dater/APKBUILD
index f21315c001b..fc754dd385d 100644
--- a/testing/apt-dater/APKBUILD
+++ b/testing/apt-dater/APKBUILD
@@ -2,12 +2,12 @@
# Maintainer: Henrik Riomar <henrik.riomar@gmail.com>
pkgname=apt-dater
pkgver=1.0.4
-pkgrel=1
+pkgrel=3
pkgdesc="terminal-based remote package update manager"
url="https://github.com/DE-IBH/apt-dater"
arch="all"
license="GPL-2.0-or-later"
-depends="lockfile-progs screen openssh-client util-linux"
+depends="lockfile-progs screen openssh-client util-linux-misc"
makedepends="automake popt-dev glib-dev ncurses-dev tcl-dev libconfig-dev libxml2-dev
xxd"
subpackages="$pkgname-doc $pkgname-lang"
diff --git a/testing/apt-mirror/APKBUILD b/testing/apt-mirror/APKBUILD
new file mode 100644
index 00000000000..8ca67c7323a
--- /dev/null
+++ b/testing/apt-mirror/APKBUILD
@@ -0,0 +1,23 @@
+# Maintainer: Hugo Rodrigues <hugorodrigues@hugorodrigues.xyz>
+pkgname=apt-mirror
+pkgver=0.5.4
+pkgrel=0
+pkgdesc="A small tool that provides ability to mirror APT repositories"
+url="https://apt-mirror.github.io/"
+arch="noarch"
+license="GPL-2.0-only"
+depends="perl wget"
+# NB: Upstream doesn't provide integration tests
+options="!check"
+subpackages="
+ $pkgname-doc
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/apt-mirror/apt-mirror/archive/refs/tags/$pkgver.tar.gz"
+
+package() {
+ DESTDIR="$pkgdir" PREFIX="/usr" make install
+}
+
+sha512sums="
+4fad124d1a7db55e77cf1acac138d68e82dfc70621014bc67a8003bc33988c668d77be18f7497c4c4faf10c99599f14612fb5535db43147a3f98ce9a660557be apt-mirror-0.5.4.tar.gz
+"
diff --git a/testing/aptdec/APKBUILD b/testing/aptdec/APKBUILD
new file mode 100644
index 00000000000..e1b71e10f93
--- /dev/null
+++ b/testing/aptdec/APKBUILD
@@ -0,0 +1,52 @@
+# Contributor: Leon ROUX <leon.roux@federate.us>
+# Maintainer: Leon ROUX <leon.roux@federate.us>
+pkgname=aptdec
+pkgver=1.8.0
+pkgrel=0
+pkgdesc="NOAA APT satellite imagery decoder library"
+_argparse=c612dc03958cdbd538ca306d61853b643a435933
+url="https://github.com/Xerbo/aptdec"
+license="GPL-2.0-or-later"
+arch="all"
+makedepends="
+ cmake
+ libpng-dev
+ libsndfile-dev
+ samurai
+ zlib-dev
+ "
+subpackages="$pkgname-dev $pkgname-libs"
+source="$pkgname-$pkgver.tar.gz::https://github.com/Xerbo/aptdec/archive/refs/tags/v$pkgver.tar.gz
+ argparse-$_argparse.tar.gz::https://github.com/cofyc/argparse/archive/$_argparse.tar.gz
+ soname-dynlink.patch
+ "
+options="!check" # does not have any tests
+
+prepare() {
+ default_prepare
+
+ rmdir src/argparse
+ ln -sfv "$srcdir"/argparse-$_argparse \
+ "$builddir"/src/argparse
+}
+
+build() {
+ CFLAGS="$CFLAGS -O2 -flto=auto" \
+ CXXFLAGS="$CXXFLAGS -O2 -flto=auto" \
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_SKIP_RPATH=ON \
+ -DVERSION="$pkgver"
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+3d10aa33bc443ba0ce00be7d00a5c95de54f98d13818a84535971a35575e1012a9c579cf154e17ffb3fe3d03fa964d11f7589082c9b4cab53c5b4ff1efc84c96 aptdec-1.8.0.tar.gz
+77370375e7594a640d410f051ed6230b2f81e47dea88498cefdd9285e28b620c4e096fab24bf4067b755343be3b7d0f71bc361e8ad00ac047c1b9d53890647d0 argparse-c612dc03958cdbd538ca306d61853b643a435933.tar.gz
+264070fa0759cd070753f22702a3466cf72f4d1fda85a15fa905774654c456a04e9e75eedd7b4ee5add3124d65230f0fc86f07880e65770a1eef3341068a3a66 soname-dynlink.patch
+"
diff --git a/testing/aptdec/soname-dynlink.patch b/testing/aptdec/soname-dynlink.patch
new file mode 100644
index 00000000000..1d30d2ee7a2
--- /dev/null
+++ b/testing/aptdec/soname-dynlink.patch
@@ -0,0 +1,37 @@
+link the tool to the shared lib, not the static one
+set soname
+--
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index c0b13fd..aade67e 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -16,11 +16,11 @@ set(EXE_C_SOURCE_FILES src/main.c src/pngio.c src/argparse/argparse.c src/util.c
+ set(LIB_C_HEADER_FILES src/apt.h)
+
+ # Link with static library for aptdec executable, so we don't need to set the path
+-add_library(aptstatic STATIC ${LIB_C_SOURCE_FILES})
+
+ # Create shared library for 3rd party apps
+ add_library(apt SHARED ${LIB_C_SOURCE_FILES})
+ set_target_properties(apt PROPERTIES PUBLIC_HEADER ${LIB_C_HEADER_FILES})
++set_target_properties(apt PROPERTIES VERSION "${VERSION}" SOVERSION "${VERSION}")
+
+ add_compile_definitions(PALETTE_DIR="${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_DATADIR}/${CMAKE_PROJECT_NAME}/palettes")
+
+@@ -30,7 +30,7 @@ if (PNG_FOUND AND LIBSNDFILE_FOUND)
+ include_directories(${LIBSNDFILE_INCLUDE_DIR})
+ target_link_libraries(aptdec PRIVATE PNG::PNG)
+ target_link_libraries(aptdec PRIVATE ${LIBSNDFILE_LIBRARY})
+- target_link_libraries(aptdec PRIVATE aptstatic)
++ target_link_libraries(aptdec PRIVATE apt)
+ if (MSVC)
+ target_compile_options(aptdec PRIVATE /D_CRT_SECURE_NO_WARNINGS=1 /DAPT_API_STATIC)
+ else()
+@@ -54,7 +54,6 @@ if (MSVC)
+ else()
+ # Math
+ target_link_libraries(apt PRIVATE m)
+- target_link_libraries(aptstatic PRIVATE m)
+
+ if(CMAKE_BUILD_TYPE MATCHES "Release")
+ target_compile_options(apt PRIVATE -Wall -Wextra -pedantic -Wno-missing-field-initializers)
diff --git a/testing/apulse/APKBUILD b/testing/apulse/APKBUILD
index f295333a89d..7a5fe26915f 100644
--- a/testing/apulse/APKBUILD
+++ b/testing/apulse/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Galen Abell <galen@galenabell.com>
pkgname=apulse
pkgver=0.1.13
-pkgrel=0
+pkgrel=1
pkgdesc="PulseAudio emulation for ALSA"
url="https://github.com/i-rinat/apulse"
arch="all"
diff --git a/testing/aqemu/APKBUILD b/testing/aqemu/APKBUILD
index 9773589af8d..31819140132 100644
--- a/testing/aqemu/APKBUILD
+++ b/testing/aqemu/APKBUILD
@@ -2,37 +2,41 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=aqemu
pkgver=0.9.4
-pkgrel=0
+pkgrel=3
pkgdesc="GUI for virtual machines using QEMU as the backend"
url="https://sourceforge.net/projects/aqemu/"
arch="all"
-license="GPL-2.0"
+license="GPL-2.0-only"
depends="qemu"
options="!check" #no check/test provided
-makedepends="cmake libvncserver-dev bzip2 qt5-qtbase-dev glib-dev"
+makedepends="
+ cmake
+ glib-dev
+ libvncserver-dev
+ qt5-qtbase-dev
+ samurai
+ "
subpackages="$pkgname-doc"
source="$pkgname-$pkgver.tar.gz::https://github.com/TBK/aqemu/archive/v$pkgver.tar.gz
- fix-includes.patch"
-
-prepare() {
- default_prepare
- mkdir -p build
-}
+ appdata.patch
+ fix-includes.patch
+ fix-qt-segfault.patch
+ "
build() {
- cd build
- cmake \
- -DCMAKE_INSTALL_PREFIX="/usr" \
- -DMAN_PAGE_COMPRESSOR=gzip ..
- make
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=None
+ cmake --build build
}
package() {
- cd build
- make DESTDIR="$pkgdir" install
+ DESTDIR="$pkgdir" cmake --install build
}
sha512sums="
e10e2c558572e6194abadeb46034a59d1b5837efe77012c2ef2d4c5ae610e7a7b09e2315e6d5fd8a12fd7f9db34068a15926b0dbe8f91db6a0d4f48eea722a9d aqemu-0.9.4.tar.gz
+2a711dc5935e2d5d5fb825b2209ce8f206bc178bc4af3b21e7be8220963fd2c68a529c94bea86333331dfd5557104101a17fd68f701b8288926878449dafaf7b appdata.patch
3220e25280a5728f299f30147c0a78537a672541a0c561aedad10af38650ef0a9145d7898060230147878fa497320ab789310b055c018a59f6474f588c4a042b fix-includes.patch
+61d7982877392a9224add9448466273f6e485bc6b9dc85339159f27647312bb6ef6f4467d74dd6aa6b4e77aaea4ab03d4e8a3b4d4363bdb119334a3aeeb255c9 fix-qt-segfault.patch
"
diff --git a/testing/aqemu/appdata.patch b/testing/aqemu/appdata.patch
new file mode 100644
index 00000000000..379e305283f
--- /dev/null
+++ b/testing/aqemu/appdata.patch
@@ -0,0 +1,13 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 241155d..09559b7 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -274,7 +274,7 @@ FILE( GLOB app_menu "${CMAKE_CURRENT_SOURCE_DIR}/resources/menu_data/aqemu.deskt
+ INSTALL( FILES ${app_menu} DESTINATION share/applications )
+
+ FILE( GLOB app_menu "${CMAKE_CURRENT_SOURCE_DIR}/resources/menu_data/aqemu.appdata.xml" )
+-INSTALL( FILES ${app_menu} DESTINATION share/appdata )
++INSTALL( FILES ${app_menu} DESTINATION share/metainfo )
+
+ # Create docs .bz2 files
+ MACRO( create_docs _sources )
diff --git a/testing/aqemu/fix-qt-segfault.patch b/testing/aqemu/fix-qt-segfault.patch
new file mode 100644
index 00000000000..1c5176df945
--- /dev/null
+++ b/testing/aqemu/fix-qt-segfault.patch
@@ -0,0 +1,121 @@
+Patch-Source: https://github.com/tobimensch/aqemu/pull/116
+--
+From dc19121a923c71eed248cd6310b9b06ec0af6abe Mon Sep 17 00:00:00 2001
+From: Moskaliou Nikita <44800696+nikitamos@users.noreply.github.com>
+Date: Sun, 5 Dec 2021 19:36:44 +0300
+Subject: [PATCH] Change widgets names
+
+Several widgets in the src/Main_Window.ui file had the same name ("widget"), for several users AQEMU crashed with SEGFAULT. So, the names were changed and now everything works fine
+---
+ src/Main_Window.ui | 28 +++++-----------------------
+ 1 file changed, 5 insertions(+), 23 deletions(-)
+
+diff --git a/src/Main_Window.ui b/src/Main_Window.ui
+index 8fdd51d..52b7c71 100644
+--- a/src/Main_Window.ui
++++ b/src/Main_Window.ui
+@@ -226,7 +226,7 @@
+ </widget>
+ </item>
+ <item>
+- <widget class="QWidget" name="widget" native="true">
++ <widget class="QWidget" name="general_Machine_Sets" native="true">
+ <layout class="QGridLayout" name="gridLayout_12">
+ <property name="leftMargin">
+ <number>24</number>
+@@ -275,9 +275,6 @@
+ <property name="maxCount">
+ <number>64</number>
+ </property>
+- <property name="sizeAdjustPolicy">
+- <enum>QComboBox::AdjustToMinimumContentsLength</enum>
+- </property>
+ </widget>
+ </item>
+ <item row="3" column="1">
+@@ -294,9 +291,6 @@
+ <property name="maxCount">
+ <number>16</number>
+ </property>
+- <property name="sizeAdjustPolicy">
+- <enum>QComboBox::AdjustToMinimumContentsLength</enum>
+- </property>
+ <item>
+ <property name="text">
+ <string>1</string>
+@@ -395,9 +389,6 @@
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+- <property name="sizeAdjustPolicy">
+- <enum>QComboBox::AdjustToMinimumContentsLength</enum>
+- </property>
+ </widget>
+ </item>
+ <item row="2" column="2">
+@@ -526,9 +517,6 @@
+ <property name="maxCount">
+ <number>8</number>
+ </property>
+- <property name="sizeAdjustPolicy">
+- <enum>QComboBox::AdjustToMinimumContentsLength</enum>
+- </property>
+ <item>
+ <property name="text">
+ <string>Floppy</string>
+@@ -586,9 +574,6 @@
+ <property name="maxCount">
+ <number>8</number>
+ </property>
+- <property name="sizeAdjustPolicy">
+- <enum>QComboBox::AdjustToMinimumContentsLength</enum>
+- </property>
+ </widget>
+ </item>
+ <item row="3" column="0">
+@@ -618,9 +603,6 @@
+ <property name="maxCount">
+ <number>128</number>
+ </property>
+- <property name="sizeAdjustPolicy">
+- <enum>QComboBox::AdjustToMinimumContentsLength</enum>
+- </property>
+ <item>
+ <property name="text">
+ <string>en-us (default)</string>
+@@ -1333,7 +1315,7 @@
+ </widget>
+ </item>
+ </layout>
+- <zorder>widget</zorder>
++ <zorder>general_Machine_Sets</zorder>
+ <zorder>GB_Options</zorder>
+ <zorder>GB_Audio</zorder>
+ <zorder>GB_Memory</zorder>
+@@ -2457,7 +2439,7 @@
+ </layout>
+ </item>
+ <item row="1" column="0" colspan="2">
+- <widget class="QWidget" name="widget" native="true">
++ <widget class="QWidget" name="protocol_Sets" native="true">
+ <layout class="QHBoxLayout" name="Widget_Redirection_Protocol">
+ <property name="spacing">
+ <number>6</number>
+@@ -2515,7 +2497,7 @@
+ </widget>
+ </item>
+ <item row="2" column="0" colspan="2">
+- <widget class="QWidget" name="widget" native="true">
++ <widget class="QWidget" name="ip_Sets" native="true">
+ <layout class="QHBoxLayout" name="Widget_Redirection_Net">
+ <property name="spacing">
+ <number>6</number>
+@@ -3018,7 +3000,7 @@
+ <x>0</x>
+ <y>0</y>
+ <width>982</width>
+- <height>24</height>
++ <height>22</height>
+ </rect>
+ </property>
+ <widget class="QMenu" name="menuVM">
diff --git a/testing/arachsys-containers/APKBUILD b/testing/arachsys-containers/APKBUILD
deleted file mode 100644
index b3f63910d13..00000000000
--- a/testing/arachsys-containers/APKBUILD
+++ /dev/null
@@ -1,29 +0,0 @@
-# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer: rubicon <rubicon@mailo.com>
-pkgname=arachsys-containers
-_pkgname=containers
-pkgver=1.7
-pkgrel=0
-pkgdesc="lightweight containers using Linux user namespaces"
-url="https://github.com/arachsys/containers"
-arch="all"
-license="MIT"
-makedepends="linux-headers"
-options="!check suid"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/arachsys/containers/archive/refs/tags/$_pkgname-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgname-$_pkgname-$pkgver"
-
-build() {
- make
-}
-
-package() {
- make PREFIX=/usr DESTDIR="$pkgdir" install
- install -vDm644 README TIPS COPYING \
- -t "$pkgdir"/usr/share/doc/"$pkgname"
-}
-
-sha512sums="
-864255909eab55f698969e48f7150f5005a65401cbd95988f780f309b50116d4a5e1c4aebc706d73b783c3a36b900dab16d8c54c4b2b8c92d977649a4f15ad93 arachsys-containers-1.7.tar.gz
-"
diff --git a/testing/aravis/APKBUILD b/testing/aravis/APKBUILD
new file mode 100644
index 00000000000..dde69c3399e
--- /dev/null
+++ b/testing/aravis/APKBUILD
@@ -0,0 +1,58 @@
+# Maintainer: Karel Gardas <karel@functional.vision>
+pkgname=aravis
+pkgver=0.8.31
+pkgrel=0
+pkgdesc="Aravis is a glib/gobject based library for video acquisition using Genicam cameras."
+url="https://github.com/AravisProject/aravis"
+# arm: sigbus
+arch="x86 x86_64 aarch64 ppc64le"
+license="LGPL-2.0-or-later"
+depends_dev="$pkgname=$pkgver-r$pkgrel"
+makedepends="
+ gst-plugins-base-dev
+ gstreamer-dev
+ gtk+3.0-dev
+ libusb-dev
+ libxml2-dev
+ meson
+ "
+subpackages="$pkgname-dev $pkgname-libs $pkgname-viewer $pkgname-viewer-lang"
+source="$pkgname-$pkgver.tar.xz::https://github.com/AravisProject/aravis/releases/download/$pkgver/aravis-$pkgver.tar.xz
+ aravis-0.8.22.patch
+ "
+
+build() {
+ abuild-meson \
+ -Db_lto=true \
+ -Dusb=enabled \
+ -Dviewer=enabled \
+ . output
+ meson compile -C output
+}
+
+check() {
+ meson test --no-rebuild --print-errorlogs -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+viewer() {
+ pkgdesc="$pkgdesc (camera viewer)"
+ amove usr/bin/arv-viewer* \
+ usr/lib/gstreamer-* \
+ usr/share/applications \
+ usr/share/icons \
+ usr/share/metainfo
+}
+
+viewer_lang() {
+ default_lang
+ install_if="$subpkgname=$pkgver-r$pkgrel lang"
+}
+
+sha512sums="
+11ff1afbf5728af945536134676b01b854dc0bda6cafd659e51334e816777905b6c3860de1f2b4030ca0c0ac6ca74f04a8ac6373bbb122553329a7781bc86908 aravis-0.8.31.tar.xz
+b69356e9867b431d5c1a194c78dc188e5981dcb84683ebfc608cac0fbc5c6e9f773b5d14c69b81731925190a798c53f9eb1160b947711419aea8b22c4f1cafb0 aravis-0.8.22.patch
+"
diff --git a/testing/aravis/aravis-0.8.22.patch b/testing/aravis/aravis-0.8.22.patch
new file mode 100644
index 00000000000..c4650d29246
--- /dev/null
+++ b/testing/aravis/aravis-0.8.22.patch
@@ -0,0 +1,40 @@
+--- aravis-0.8.22-orig/src/arvuvdevice.c
++++ aravis-0.8.22/src/arvuvdevice.c
+@@ -37,6 +37,7 @@
+ #include <arvstr.h>
+ #include <arvzip.h>
+ #include <arvmisc.h>
++#include <stdio.h>
+
+ enum
+ {
+@@ -740,6 +741,13 @@
+ index = get_guid_index(devices[i]);
+ if (index > 0)
+ libusb_get_string_descriptor_ascii (usb_device, index, guid, 256);
++
++ /*
++ * When guid_index is wrongly equal to the product index, append the serial number
++ * Matching code in arvuvinterface.c
++ */
++ if (index == desc.iProduct)
++ snprintf((char *)guid, 256, "%s-%s", product, serial_number);
+
+ if ((priv->vendor != NULL &&
+ g_strcmp0 ((char * ) manufacturer, priv->vendor) == 0 &&
+--- aravis-0.8.22-orig/src/arvuvinterface.c
++++ aravis-0.8.22/src/arvuvinterface.c
+@@ -240,6 +240,13 @@
+ if (index > 0)
+ libusb_get_string_descriptor_ascii (device_handle, index, guid, 256);
+
++ /*
++ * When guid_index is wrongly equal to the product index, append the serial number
++ * Matching code in arvuvdevice.c
++ */
++ if (index == desc.iProduct)
++ snprintf((char *)guid, 256, "%s-%s", product, serial_nbr);
++
+ device_infos = arv_uv_interface_device_infos_new ((char *) manufacturer, (char *) product,
+ (char *) serial_nbr, (char *) guid);
+ g_hash_table_replace (uv_interface->priv->devices, device_infos->id,
diff --git a/testing/arc-theme/APKBUILD b/testing/arc-theme/APKBUILD
index 8eebad972eb..c2366c57130 100644
--- a/testing/arc-theme/APKBUILD
+++ b/testing/arc-theme/APKBUILD
@@ -3,7 +3,7 @@
# Contributor: Dominika Liberda <ja@sdomi.pl>
# Maintainer: Sascha Paunovic <azarus@posteo.net>
pkgname=arc-theme
-pkgver=20220405
+pkgver=20221218
pkgrel=0
pkgdesc="Flat theme with transparent elements"
options="!check" # no test suite
@@ -41,11 +41,11 @@ subpackages="
arc-darker-xfwm:darker_xfwm
arc-darker:darker
"
-source="https://github.com/jnsh/arc-theme/releases/download/20220405/arc-theme-$pkgver.tar.xz"
+source="https://github.com/jnsh/arc-theme/releases/download/$pkgver/arc-theme-$pkgver.tar.xz"
build() {
- abuild-meson -Dcinnamon_version=5.2.1 \
- -Dgnome_shell_version=41.1 \
+ abuild-meson -Dcinnamon_version=5.6 \
+ -Dgnome_shell_version=43 \
-Dthemes=cinnamon,gnome-shell,gtk2,gtk3,gtk4,metacity,xfwm \
. build
meson compile -C build
@@ -86,7 +86,7 @@ arc_gtk3() {
arc_gtk2() {
pkgdesc="GTK+2.0 assets for Arc"
- depends="gtk-murrine-engine gnome-themes-extra"
+ depends="gtk-murrine-engine"
install_if="arc=$pkgver-r$pkgrel gtk+2.0"
amove usr/share/themes/Arc/gtk-2.0
@@ -103,7 +103,7 @@ arc_gnome() {
arc_xfwm() {
pkgdesc="xfwm assets for Arc"
depends=""
- install_if="arc=$pkgver-r$pkgrel xfwm"
+ install_if="arc=$pkgver-r$pkgrel xfwm4"
amove usr/share/themes/Arc/xfwm4
}
@@ -116,7 +116,6 @@ arc_metacity() {
amove usr/share/themes/Arc/metacity-1
}
-
lighter() {
pkgdesc="Lighter version of Arc"
depends=""
@@ -141,7 +140,7 @@ lighter_gtk3() {
lighter_gtk2() {
pkgdesc="GTK+2.0 assets for Lighter version of Arc"
- depends="gtk-murrine-engine gnome-themes-extra"
+ depends="gtk-murrine-engine"
install_if="arc-lighter=$pkgver-r$pkgrel gtk+2.0"
amove usr/share/themes/Arc-Lighter/gtk-2.0
@@ -158,7 +157,7 @@ lighter_gnome() {
lighter_xfwm() {
pkgdesc="xfwm assets for Lighter version of Arc"
depends=""
- install_if="arc-lighter=$pkgver-r$pkgrel xfwm"
+ install_if="arc-lighter=$pkgver-r$pkgrel xfwm4"
amove usr/share/themes/Arc-Lighter/xfwm4
}
@@ -202,7 +201,7 @@ dark_gtk3() {
dark_gtk2() {
pkgdesc="GTK+2.0 assets for Dark version of Arc"
- depends="gtk-murrine-engine gnome-themes-extra"
+ depends="gtk-murrine-engine"
install_if="arc-dark=$pkgver-r$pkgrel gtk+2.0"
amove usr/share/themes/Arc-Dark/gtk-2.0
@@ -219,7 +218,7 @@ dark_gnome() {
dark_xfwm() {
pkgdesc="xfwm assets for Dark version of Arc"
depends=""
- install_if="arc-dark=$pkgver-r$pkgrel xfwm"
+ install_if="arc-dark=$pkgver-r$pkgrel xfwm4"
amove usr/share/themes/Arc-Dark/xfwm4
}
@@ -256,7 +255,7 @@ darker_gtk3() {
darker_gtk2() {
pkgdesc="GTK+2.0 assets for Darker version of Arc"
- depends="gtk-murrine-engine gnome-themes-extra"
+ depends="gtk-murrine-engine"
install_if="arc-darker=$pkgver-r$pkgrel gtk+2.0"
amove usr/share/themes/Arc-Darker/gtk-2.0
@@ -265,7 +264,7 @@ darker_gtk2() {
darker_xfwm() {
pkgdesc="xfwm assets for Darker version of Arc"
depends=""
- install_if="arc-darker=$pkgver-r$pkgrel xfwm"
+ install_if="arc-darker=$pkgver-r$pkgrel xfwm4"
amove usr/share/themes/Arc-Darker/xfwm4
}
@@ -273,11 +272,11 @@ darker_xfwm() {
darker_metacity() {
pkgdesc="metacity assets for Darker version of Arc"
depends=""
- install_if="arc-darker=$pkgver-r$pkgrel xfwm"
+ install_if="arc-darker=$pkgver-r$pkgrel xfwm4"
amove usr/share/themes/Arc-Darker/metacity-1
}
sha512sums="
-16655b822548820945c5fd3c0bb809d1e55db887c3b5c5309f4acd82c4dd7dd8255d246d86025231c73a303e647bb61c7f9cdc63a04f813cfb79fadf27dec204 arc-theme-20220405.tar.xz
+5a84b717de022c673c6af260381542365550f629f43ae99c7ab8b22b4c09024403a1bc06279b40d3560e86d9810683c2e8337799a4cc67ef7aeb93223b5f56a1 arc-theme-20221218.tar.xz
"
diff --git a/testing/archiso/APKBUILD b/testing/archiso/APKBUILD
deleted file mode 100644
index 9a41f91e0c3..00000000000
--- a/testing/archiso/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Contributor: Clayton Craft <clayton@craftyguy.net>
-# Maintainer: Clayton Craft <clayton@craftyguy.net>
-pkgname=archiso
-pkgver=59
-pkgrel=0
-pkgdesc="tools for creating Arch Linux live and install iso images"
-url="https://gitlab.archlinux.org/archlinux/archiso"
-arch="noarch"
-license="GPL-3.0-or-later"
-depends="
- arch-install-scripts
- archlinux-keyring
- bash
- dosfstools
- e2fsprogs
- libarchive
- libisoburn
- openssl
- pacman
- pacman-makepkg
- mtools
- squashfs-tools
- "
-subpackages="$pkgname-doc"
-options="!check" # no tests
-source="https://gitlab.archlinux.org/archlinux/archiso/-/archive/v$pkgver/archiso-v$pkgver.tar.gz"
-builddir="$srcdir/$pkgname-v$pkgver"
-
-package() {
- make DESTDIR="$pkgdir" PREFIX=/usr install
-}
-
-sha512sums="
-daf69ec778a5c4769cd46a23935dc50366a140667e1a97d097ad9b651a6c86845cde33c50915853849de3ebcb74e79c52ecdf803c99aa02866887c6ec3afc770 archiso-v59.tar.gz
-"
diff --git a/testing/archlinux-keyring/APKBUILD b/testing/archlinux-keyring/APKBUILD
deleted file mode 100644
index 8ac5fd39534..00000000000
--- a/testing/archlinux-keyring/APKBUILD
+++ /dev/null
@@ -1,19 +0,0 @@
-# Contributor: Clayton Craft <clayton@craftyguy.net>
-# Maintainer: Clayton Craft <clayton@craftyguy.net>
-pkgname=archlinux-keyring
-pkgver=20211028
-pkgrel=0
-pkgdesc="GuPG keys for Arch Linux"
-url="https://archlinux.org"
-arch="noarch"
-license="GPL-3.0-or-later"
-options="!check"
-install="$pkgname.post-install $pkgname.post-upgrade"
-source="https://sources.archlinux.org/other/archlinux-keyring/archlinux-keyring-$pkgver.tar.gz"
-
-package() {
- make PREFIX=/usr DESTDIR="$pkgdir" install
-}
-sha512sums="
-9f1f6a1cb8d613d2682a38a7fd17e83a66c8aaed79f8b84452092fc32a0af6a957a56520b12081a72c0d5e71bf129ba0f7107a200bb4dee66a04462241c73647 archlinux-keyring-20211028.tar.gz
-"
diff --git a/testing/archlinux-keyring/archlinux-keyring.post-install b/testing/archlinux-keyring/archlinux-keyring.post-install
deleted file mode 100644
index 872d327d6a5..00000000000
--- a/testing/archlinux-keyring/archlinux-keyring.post-install
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/bin/sh
-if [ -x /usr/bin/pacman-key ]; then
- /usr/bin/pacman-key --populate archlinux
- /usr/bin/pacman-key --updatedb
-fi
-
-exit 0
diff --git a/testing/archlinux-keyring/archlinux-keyring.post-upgrade b/testing/archlinux-keyring/archlinux-keyring.post-upgrade
deleted file mode 120000
index b75848866fb..00000000000
--- a/testing/archlinux-keyring/archlinux-keyring.post-upgrade
+++ /dev/null
@@ -1 +0,0 @@
-archlinux-keyring.post-install \ No newline at end of file
diff --git a/testing/arcticons-icon-theme/APKBUILD b/testing/arcticons-icon-theme/APKBUILD
new file mode 100644
index 00000000000..1e380b0ed9c
--- /dev/null
+++ b/testing/arcticons-icon-theme/APKBUILD
@@ -0,0 +1,35 @@
+# Contributor: Sertonix <sertonix@posteo.net>
+# Maintainer: Sertonix <sertonix@posteo.net>
+pkgname=arcticons-icon-theme
+pkgver=8.7.1.0
+pkgrel=0
+pkgdesc="A monotone line-based icon pack for android - freedesktop version"
+url="https://github.com/Donnnno/Arcticons-Linux"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="$pkgname-light $pkgname-dark"
+subpackages="$pkgname-light:theme $pkgname-dark:theme"
+source="https://github.com/Donnnno/Arcticons-Linux/archive/$pkgver/arcticons-icon-theme-$pkgver.tar.gz"
+builddir="$srcdir/Arcticons-Linux-$pkgver"
+options="!check"
+
+build() {
+ :
+}
+
+package() {
+ install -d "$pkgdir/usr/share/icons"
+ cp -r arcticons-dark arcticons-light -t "$pkgdir/usr/share/icons"
+}
+
+theme() {
+ depends=
+ variant="${subpkgname##"$pkgname"-}"
+ pkgdesc="$pkgdesc ($variant)"
+
+ amove usr/share/icons/arcticons-"$variant"
+}
+
+sha512sums="
+f4312fb390328d1cd95da8cb5a748fceebf814ce9fef18c6c7f6690d04bea42d56123c842c9eabd184ae87953558f520b23684c2432bce5589e1c76760571321 arcticons-icon-theme-8.7.1.0.tar.gz
+"
diff --git a/testing/ardour/APKBUILD b/testing/ardour/APKBUILD
index 3fc63262f3d..6eccd886cab 100644
--- a/testing/ardour/APKBUILD
+++ b/testing/ardour/APKBUILD
@@ -1,26 +1,25 @@
# Contributor: David Demelier <markand@malikania.fr>
-# Maintainer: David Demelier <markand@malikania.fr>
+# Maintainer: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
pkgname=ardour
-pkgver=6.9.0
-pkgrel=0
+pkgver=7.5.0
+pkgrel=2
pkgdesc="professional-grade digital audio workstation"
url="https://ardour.org/"
-#arch="all !ppc64le" # Does not build on ppc64le.
-# source is gone even though this is the current version
-arch="" # Source is volatile (upstream deletes old distfiles)
-license="GPL-2.0-or-later"
+arch="all !ppc64le" # Does not build on ppc64le.
+license="GPL-2.0-or-later AND CC0-1.0 AND MIT"
makedepends="
alsa-lib-dev
atkmm-dev
aubio-dev
boost-dev
fftw-dev
+ fluidsynth-dev
gtk+2.0-dev
gtkmm-dev
+ hidapi-dev
itstool
jack-dev
libarchive-dev
- libexecinfo-dev
liblo-dev
libpng-dev
libsamplerate-dev
@@ -36,17 +35,20 @@ makedepends="
rubberband-dev
serd-dev
sratom-dev
+ suil-dev
taglib-dev
vamp-sdk-dev
- fluidsynth-dev
- hidapi-dev
"
-source="https://community.ardour.org/src/Ardour-$pkgver.tar.bz2
- disable-backtrace.patch
- always-link-execinfo.patch"
+# the tarballs get randomly removed- ping someone in #alpine-devel to update
+# this
+source="https://dev.alpinelinux.org/archive/ardour/Ardour-$pkgver.tar.xz
+ $pkgname-midi-$pkgver.zip.noauto::https://dev.alpinelinux.org/archive/ardour/ArdourBundledMedia-$pkgver.zip
+ "
builddir="$srcdir/Ardour-$pkgver"
+ldpath="/usr/lib/ardour7"
build() {
+ export LINKFLAGS="$LDFLAGS"
python3 waf configure \
--prefix=/usr \
--cxx11 \
@@ -66,10 +68,17 @@ check() {
package() {
python3 waf install --destdir="$pkgdir"
+
+ mkdir -p "$pkgdir"/usr/share/ardour${pkgver%%.*}/media/
+ unzip "$srcdir"/$pkgname-midi-$pkgver.zip.noauto \
+ -d "$pkgdir"/usr/share/ardour${pkgver%%.*}/media/
+
+ mkdir -p "$pkgdir"/usr/share/metainfo
+ mv "$pkgdir"/usr/share/appdata/*.xml "$pkgdir"/usr/share/metainfo
+ rmdir "$pkgdir"/usr/share/appdata
}
sha512sums="
-ace45f5bfe6d0c9e4bb1712ae53ebaee2f15f883045650cae3ddcae251d4fd2f645ba745effb739b47c73a0568ae9e8ae443b711dd610584e04575fd9046b234 Ardour-6.9.0.tar.bz2
-6f41e58e94f39831493467571f75566f02b31ef1bbdf7e65bd100ee846c9d2bb56ce8b6ce653d0ed362571935f333e3d276f047c471548c6f85453d2f5af80db disable-backtrace.patch
-ac93e7761aac490ed0675d24ac544cacc7ba4579490baf5f7da6c2cdf218f929d0bada39a3689a62affcf759d070359cdcc1a5b919aa225fcf6cde3b419e7e7b always-link-execinfo.patch
+5acc2937351cbaf15c365b8543eeb0836f146fab62b2aa36113dceee2f5b4c88fcc8f05612aa683f1c2e985ea4e9ffadc0d411422d1ae6fe2137c0358cb91ed0 Ardour-7.5.0.tar.xz
+94b681f989e834f5de25ce87da9c174b11d90617063f8c96147d7eb470391b35f6d54b85de16da8d963cacb01b50d1c1fab0fddd18eb3b086fe17124ecfa4f65 ardour-midi-7.5.0.zip.noauto
"
diff --git a/testing/ardour/always-link-execinfo.patch b/testing/ardour/always-link-execinfo.patch
deleted file mode 100644
index 02d2dc080da..00000000000
--- a/testing/ardour/always-link-execinfo.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Upstream: not yet, need proper alternative.
---- a/libs/pbd/wscript 2020-05-27 15:46:59.641983074 +0200
-+++ b/libs/pbd/wscript 2020-05-27 15:47:08.208661970 +0200
-@@ -181,8 +181,7 @@
- obj.install_path = bld.env['LIBDIR']
- obj.defines += [ 'PACKAGE="' + I18N_PACKAGE + '"' ]
-
-- if sys.platform.startswith('netbsd'):
-- obj.linkflags = '-lexecinfo'
-+ obj.ldflags = '-lexecinfo'
-
- if bld.env['build_target'] == 'x86_64':
- obj.defines += [ 'USE_X86_64_ASM' ]
diff --git a/testing/ardour/disable-backtrace.patch b/testing/ardour/disable-backtrace.patch
deleted file mode 100644
index 7d8fc61bb36..00000000000
--- a/testing/ardour/disable-backtrace.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Disable use of execinfo backtrace because it causes a crash.
-
-Upstream bug report: https://tracker.ardour.org/view.php?id=8211
---- a/libs/pbd/wscript 2020-06-10 14:33:53.822160367 +0200
-+++ b/libs/pbd/wscript 2020-06-10 14:34:03.742215341 +0200
-@@ -109,7 +109,6 @@
- autowaf.check_pkg(conf, 'glibmm-2.4', uselib_store='GLIBMM', atleast_version='2.32.0', mandatory=True)
- autowaf.check_pkg(conf, 'giomm-2.4', uselib_store='GIOMM', atleast_version='2.2', mandatory=True)
-
-- conf.check(header_name='execinfo.h', define_name='HAVE_EXECINFO',mandatory=False)
- conf.check(header_name='unistd.h', define_name='HAVE_UNISTD',mandatory=False)
- if not Options.options.ppc:
- conf.check_cc(
diff --git a/testing/arj/APKBUILD b/testing/arj/APKBUILD
index c0910c43c10..630b05d6513 100644
--- a/testing/arj/APKBUILD
+++ b/testing/arj/APKBUILD
@@ -3,9 +3,9 @@
pkgname='arj'
pkgver='0_git20220125'
_commit='e0362c432615a2db2758f6917e451216f693d55f'
-pkgrel=0
+pkgrel=1
pkgdesc='Open source implementation and maximum compatible of the world-famous ARJ archiver.'
-url='http://arj.sourceforge.net/'
+url='https://arj.sourceforge.net/'
arch='all !armv7 !armhf !x86' # 32 bit builds seem to segfault
license='GPL-2.0-or-later'
options='!check' # tests performed as part of build
diff --git a/testing/armagetronad/APKBUILD b/testing/armagetronad/APKBUILD
index 12a06857a09..69d3f1414a1 100644
--- a/testing/armagetronad/APKBUILD
+++ b/testing/armagetronad/APKBUILD
@@ -2,7 +2,7 @@
# Contributor: Díaz Urbaneja Diego <sodomon2@gmail.com>
# Contributor: Antoni Aloy <aaloytorrens@gmail.com>
pkgname=armagetronad
-pkgver=0.2.9.1.0
+pkgver=0.2.9.1.1
pkgrel=0
pkgdesc="Tron Clone in 3D"
url="http://armagetronad.net/"
@@ -34,7 +34,6 @@ build() {
make
}
-
package() {
make -j1 DESTDIR="$pkgdir" install
@@ -43,5 +42,5 @@ package() {
}
sha512sums="
-8c2b9cba7d480dec6d7d60984327a5d45c8c87b968fb81a1e192973e6826ddb66c8d41ca82bb04d80da5c6fa2152d19dd890957dabc6cc5ce2d4dffbc45d1f65 armagetronad-0.2.9.1.0.tar.bz2
+2bdda4c48c224e1ed54b9526aad3ad15a0514d1aa7724c0d743933e8fce576b47dfc2622bc1a27a97f004e6e99bc398b0cc4207501c56252605401dcb03a09cf armagetronad-0.2.9.1.1.tar.bz2
"
diff --git a/testing/art_standalone/APKBUILD b/testing/art_standalone/APKBUILD
new file mode 100644
index 00000000000..dba179260bc
--- /dev/null
+++ b/testing/art_standalone/APKBUILD
@@ -0,0 +1,77 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=art_standalone
+pkgver=0_git20240220
+pkgrel=1
+_commit="672e299f85cf91901ba107d90084fd67865f047a"
+pkgdesc="A standalone version of Dalvik with Art build in"
+url="https://gitlab.com/android_translation_layer/dalvik_standalone"
+arch="x86_64 aarch64 armv7"
+license="Apache-2.0"
+depends="wolfssl-jni"
+# bash is used by /usr/bin/dx
+depends_dev="
+ $pkgname=$pkgver-r$pkgrel
+ bash
+ "
+case "$CARCH" in
+ aarch64|armv7) depends_dev="$depends_dev vixl-dev" ;;
+esac
+makedepends="$depends_dev
+ bionic_translation-dev
+ bsd-compat-headers
+ expat-dev
+ icu-dev
+ java-common
+ libbsd-dev
+ libcap-dev
+ libunwind-dev
+ lz4-dev
+ meson
+ openjdk8-jdk
+ openssl-dev
+ python3
+ valgrind-dev
+ wolfssl-jni-dev
+ xz-dev
+ zip
+ zlib-dev
+ "
+subpackages="$pkgname-dev $pkgname-dbg"
+source="https://gitlab.com/android_translation_layer/art_standalone/-/archive/$_commit/art_standalone-$_commit.tar.gz"
+options="!check" # No tests
+builddir="$srcdir/art_standalone-$_commit"
+
+prepare() {
+ default_prepare
+
+ # Hack
+ ln -s /usr/bin/python3 python
+ export PATH="$PATH:$PWD"
+}
+
+build() {
+ make PREFIX=/usr ____LIBDIR=lib
+}
+
+package() {
+ DESTDIR="$pkgdir" make \
+ ____PREFIX="$pkgdir"/usr \
+ ____INSTALL_ETC="$pkgdir"/etc \
+ ____LIBDIR=lib \
+ install
+}
+
+dev() {
+ default_dev
+
+ mkdir -p "$subpkgdir"/usr/lib/java
+ mv "$pkgdir"/usr/lib/java/core-all_classes.jar "$subpkgdir"/usr/lib/java
+ mv "$pkgdir"/usr/lib/java/dx.jar "$subpkgdir"/usr/lib/java
+ mkdir -p "$subpkgdir"/usr/bin
+ mv "$pkgdir"/usr/bin/dx "$subpkgdir"/usr/bin/dx
+}
+
+sha512sums="
+8a91136df527ec094683313aaa24326afe338e051d1c15fb4942cc39ecdeb79fb5e082eede6213c9c311d357e37805db93fc888c0f880231ebcda0089474fdb6 art_standalone-672e299f85cf91901ba107d90084fd67865f047a.tar.gz
+"
diff --git a/testing/artyfx/APKBUILD b/testing/artyfx/APKBUILD
deleted file mode 100644
index 35614e2e914..00000000000
--- a/testing/artyfx/APKBUILD
+++ /dev/null
@@ -1,48 +0,0 @@
-# Contributor: psykose <alice@ayaya.dev>
-# Maintainer: psykose <alice@ayaya.dev>
-pkgname=artyfx
-pkgver=1.3.1
-pkgrel=1
-pkgdesc="ArtyFX audio plugin bundle"
-url="https://github.com/openAVproductions/openAV-ArtyFX"
-options="!check" # no tests
-arch="all !x86" # textrel
-license="GPL-2.0-or-later"
-makedepends="
- cairo-dev
- cmake
- libsamplerate-dev
- libsndfile-dev
- lv2-dev
- ninja
- "
-source="$pkgname-$pkgver.tar.gz::https://github.com/openAVproductions/openAV-ArtyFX/archive/refs/tags/release-$pkgver.tar.gz
- fix-sse.patch
- "
-builddir="$srcdir/openAV-ArtyFX-release-$pkgver"
-
-build() {
- _sse=OFF
- case "$CARCH" in
- x86*)
- _sse=ON
- ;;
- esac
- export CXXFLAGS="$CXXFLAGS -fPIC"
- cmake -B build -G Ninja \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DCMAKE_VERBOSE_MAKEFILE=ON \
- -DCMAKE_BUILD_TYPE=MinSizeRel \
- -DBUILD_SSE=$_sse
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-
-sha512sums="
-7fe84783f460e5ac62d715990a7140259b8e2f1e0a531cf6cde63dadfb51e934abd17c81a8c280699279c0af2aa74ee05e073d32539d99fa37d83a0b1cfc0c49 artyfx-1.3.1.tar.gz
-27db0c3056631f498ad0028acfab1888692eb91f4cd28d17f1128646e13d5646e89a27eda6387d3467e53d3932dd3bc39c3771a1ca9fc5d15fba54989ec332ea fix-sse.patch
-"
diff --git a/testing/artyfx/fix-sse.patch b/testing/artyfx/fix-sse.patch
deleted file mode 100644
index 1dfb61ef86d..00000000000
--- a/testing/artyfx/fix-sse.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/src/avtk/CMakeLists.txt
-+++ b/src/avtk/CMakeLists.txt
-@@ -54,12 +54,12 @@
- include_directories( ${X11_INCLUDE_DIRS} )
- link_directories ( ${X11_LIBRARY_DIRS} )
-
--IF(NOT ${CMAKE_SYSTEM_PROCESSOR} MATCHES "arm")
-+IF(${CMAKE_SYSTEM_PROCESSOR} MATCHES "arm")
-+ SET(CMAKE_C_FLAGS "-fPIC -mfpu=neon -g")
-+ SET(CMAKE_CXX_FLAGS "-fPIC -mfpu=neon -g")
-+ELSEIF(${CMAKE_SYSTEM_PROCESSOR} MATCHES "x86")
- SET(CMAKE_C_FLAGS "-fPIC -msse -msse2 -mfpmath=sse -g") # -fsanitize=address
- SET(CMAKE_CXX_FLAGS "-fPIC -msse -msse2 -mfpmath=sse -g") # -fsanitize=address
--ELSE()
-- SET(CMAKE_C_FLAGS "-fPIC -mfpu=neon -g")
-- SET(CMAKE_CXX_FLAGS "-fPIC -mfpu=neon -g")
--ENDIF(NOT ${CMAKE_SYSTEM_PROCESSOR} MATCHES "arm")
-+ENDIF(${CMAKE_SYSTEM_PROCESSOR} MATCHES "arm")
-
- FILE(GLOB src libs/pffft.cxx avtk/*.cxx )
diff --git a/testing/asahi-audio/APKBUILD b/testing/asahi-audio/APKBUILD
new file mode 100644
index 00000000000..2f2596e1831
--- /dev/null
+++ b/testing/asahi-audio/APKBUILD
@@ -0,0 +1,31 @@
+# Contributor: Milan P. Stanić <mps@arvanta.net>
+# Maintainer: Milan P. Stanić <mps@arvanta.net>
+pkgname=asahi-audio
+pkgver=1.7
+pkgrel=0
+pkgdesc="userspace audio configuration for Apple Silicon Macs"
+url="https://github.com/AsahiLinux/asahi-audio"
+arch="aarch64" # only needed for asahi/aarch64 on apple silicon
+license="MIT"
+options="!check"
+depends="
+ bankstown-lv2
+ lsp-plugins-lv2
+ pipewire
+ speakersafetyd
+ wireplumber
+ "
+makedepends="cargo cargo-auditable"
+source="$pkgname-$pkgver.tar.gz::https://github.com/AsahiLinux/asahi-audio/archive/refs/tags/v$pkgver.tar.gz"
+
+build() {
+ make
+}
+
+package() {
+ make DESTDIR=$pkgdir install
+}
+
+sha512sums="
+cb5007189c7b661704c748159db69eaa9131c0d73cf631254151e4843b4140957f5fd989cd0fd8785abe50aa43e6d58ee4ecf98f5a3bd4d1462b2c3a049dd7d2 asahi-audio-1.7.tar.gz
+"
diff --git a/testing/asahi-fwextract/APKBUILD b/testing/asahi-fwextract/APKBUILD
new file mode 100644
index 00000000000..f04427669fe
--- /dev/null
+++ b/testing/asahi-fwextract/APKBUILD
@@ -0,0 +1,26 @@
+# Maintainer: Milan P. Stanić <mps@arvanta.net>
+
+pkgname=asahi-fwextract
+pkgver=0.7.1
+pkgrel=0
+pkgdesc="Asahi Linux firmware extractor"
+_sourcename=asahi-installer
+_installerver=0.7.1
+arch="aarch64"
+url="http://asahilinux.org"
+license="MIT"
+source="${pkgname}-${_installerver}.tar.gz::https://github.com/AsahiLinux/${_sourcename}/archive/refs/tags/v${_installerver}.tar.gz"
+depends="python3 asahi-scripts lzfse"
+makedepends="py3-build py3-installer py3-wheel py3-setuptools"
+builddir="$srcdir"/$_sourcename-$_installerver
+
+build() {
+ python -m build --wheel --no-isolation
+}
+
+package() {
+ python -m installer --destdir="$pkgdir" dist/*.whl
+}
+sha512sums="
+4635f559f31b62b264c417017eb0e4a16960035c7c0482b9343d413cee4b5a9d26cc5e69bffd15478ad9e5e531a4eb3d8e786ccc89466d4d23c68f7c61ed42a5 asahi-fwextract-0.7.1.tar.gz
+"
diff --git a/testing/asahi-scripts/APKBUILD b/testing/asahi-scripts/APKBUILD
new file mode 100644
index 00000000000..ac834d7ea77
--- /dev/null
+++ b/testing/asahi-scripts/APKBUILD
@@ -0,0 +1,28 @@
+# Maintainer: Milan P. Stanić <mps@arvanta.net>
+pkgname=asahi-scripts
+pkgver=20230821
+pkgrel=1
+pkgdesc='Asahi Linux maintenance scripts'
+arch='aarch64'
+url='http://asahilinux.org'
+license='MIT'
+source="${pkgname}-${pkgver}.tar.gz::https://github.com/AsahiLinux/${pkgname}/archive/refs/tags/${pkgver}.tar.gz"
+#install=asahi-scripts.install
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ make PREFIX=/usr DESTDIR=${pkgdir} all
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ make PREFIX=/usr DESTDIR=${pkgdir} install
+
+ install -Dm644 "$srcdir/${pkgname}-${pkgver}/LICENSE" \
+ "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+}
+sha512sums="
+90e25f476f6b128742650c4809537ae45666071e611ea47484c1c1e05ac6681ae8e0bf7b6d26ea95ccc292666c8810c0c377a416b31e7d6b22e437fbc1ef23a3 asahi-scripts-20230821.tar.gz
+"
diff --git a/testing/asciinema-rs/APKBUILD b/testing/asciinema-rs/APKBUILD
index 0c806f73120..2e77d07691c 100644
--- a/testing/asciinema-rs/APKBUILD
+++ b/testing/asciinema-rs/APKBUILD
@@ -2,25 +2,31 @@
# Maintainer: TBK <alpine@jjtc.eu>
pkgname=asciinema-rs
pkgver=0.5.1
-pkgrel=0
+pkgrel=3
pkgdesc="A reimplementation of the asciinema command line program written in Rust."
url="https://github.com/LegNeato/asciinema-rs"
arch="x86_64" # Limited by cargo
license="Apache-2.0 MIT"
-provides="asciinema"
-makedepends="cargo openssl-dev"
-source="https://github.com/LegNeato/asciinema-rs/archive/v$pkgver/$pkgname-v$pkgver.tar.gz"
+makedepends="cargo openssl-dev cargo-auditable"
+source="https://github.com/LegNeato/asciinema-rs/archive/v$pkgver/asciinema-rs-v$pkgver.tar.gz
+ openssl3.patch
+ "
+options="!check" # fail on 'home'
+
build() {
- cargo build --release --locked
+ cargo auditable build --release --locked
}
check() {
- cargo test --release --locked
+ cargo test --release --locked
}
package() {
- install -Dt "$pkgdir"/usr/bin target/release/asciinema
+ install -Dt "$pkgdir"/usr/bin target/release/asciinema
}
-sha512sums="59a786a6a82122c33200bc7eb30e96e38548e45eb478eae259fa8ccd601b0bd596d4d9066ce75a5dc95abdaa97554f4a05cc2218b4c228566a65ed510d35c600 asciinema-rs-v0.5.1.tar.gz"
+sha512sums="
+59a786a6a82122c33200bc7eb30e96e38548e45eb478eae259fa8ccd601b0bd596d4d9066ce75a5dc95abdaa97554f4a05cc2218b4c228566a65ed510d35c600 asciinema-rs-v0.5.1.tar.gz
+0618071301549fa61965c2644a0f6b717caa54ab3ec60c4d345e182b89180a6ab03956f9a027f9e72c7ea99d9212689ab24e9b7f70e924d6d45e3efc17496812 openssl3.patch
+"
diff --git a/testing/asciinema-rs/openssl3.patch b/testing/asciinema-rs/openssl3.patch
new file mode 100644
index 00000000000..0133cb16642
--- /dev/null
+++ b/testing/asciinema-rs/openssl3.patch
@@ -0,0 +1,2546 @@
+diff --git a/Cargo.lock b/Cargo.lock
+index 82e57ee..e4acba8 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -1,1843 +1,1911 @@
++# This file is automatically @generated by Cargo.
++# It is not intended for manual editing.
++version = 3
++
+ [[package]]
+ name = "adler32"
+ version = "1.0.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7e522997b529f05601e05166c07ed17789691f562762c7f3b987263d2dedee5c"
+
+ [[package]]
+ name = "aho-corasick"
+ version = "0.6.9"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "1e9a933f4e58658d7b12defcf96dc5c720f20832deebe3e0a19efd3b6aaeeb9e"
+ dependencies = [
+- "memchr 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "memchr 2.1.1",
+ ]
+
+ [[package]]
+ name = "ansi_term"
+ version = "0.11.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b"
+ dependencies = [
+- "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "winapi 0.3.6",
+ ]
+
+ [[package]]
+ name = "arrayvec"
+ version = "0.4.7"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "a1e964f9e24d588183fcb43503abda40d288c8657dfc27311516ce2f05675aef"
+ dependencies = [
+- "nodrop 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)",
++ "nodrop",
+ ]
+
+ [[package]]
+ name = "asciicast"
+ version = "0.2.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "4521e5a844fab4639ec32b21de3a2639f7c2783ba6bb9daead2672b6a298ed7b"
+ dependencies = [
+- "chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde_derive 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde_json 1.0.32 (registry+https://github.com/rust-lang/crates.io-index)",
++ "chrono",
++ "serde 1.0.80",
++ "serde_derive",
++ "serde_json",
+ ]
+
+ [[package]]
+ name = "asciinema"
+ version = "0.5.1"
+ dependencies = [
+- "asciicast 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "config 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "derive_builder 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "failure 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)",
+- "openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "os_type 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "pty-shell 0.3.0",
+- "reqwest 0.9.4 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde_derive 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde_json 1.0.32 (registry+https://github.com/rust-lang/crates.io-index)",
+- "structopt 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tempfile 3.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
+- "termcolor 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "termion 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "url_serde 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "uuid 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "asciicast",
++ "chrono",
++ "config",
++ "derive_builder",
++ "failure",
++ "libc",
++ "openssl-probe",
++ "os_type",
++ "pty-shell",
++ "reqwest",
++ "serde 1.0.80",
++ "serde_derive",
++ "serde_json",
++ "structopt",
++ "tempfile",
++ "termcolor",
++ "termion",
++ "url",
++ "url_serde",
++ "uuid 0.6.5",
+ ]
+
+ [[package]]
+ name = "atty"
+ version = "0.2.11"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "9a7d5b8723950951411ee34d271d99dddcc2035a16ab25310ea2c8cfd4369652"
+ dependencies = [
+- "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)",
+- "termion 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc",
++ "termion",
++ "winapi 0.3.6",
+ ]
+
++[[package]]
++name = "autocfg"
++version = "1.1.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
++
+ [[package]]
+ name = "backtrace"
+ version = "0.3.9"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "89a47830402e9981c5c41223151efcced65a0510c13097c769cede7efb34782a"
+ dependencies = [
+- "backtrace-sys 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)",
+- "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rustc-demangle 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "backtrace-sys",
++ "cfg-if 0.1.6",
++ "libc",
++ "rustc-demangle",
++ "winapi 0.3.6",
+ ]
+
+ [[package]]
+ name = "backtrace-sys"
+ version = "0.1.24"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "c66d56ac8dabd07f6aacdaf633f4b8262f5b3601a810a0dcddffd5c22c69daa0"
+ dependencies = [
+- "cc 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cc",
++ "libc",
+ ]
+
+ [[package]]
+ name = "base64"
+ version = "0.9.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "489d6c0ed21b11d038c31b6ceccca973e65d73ba3bd8ecb9a2babf5546164643"
+ dependencies = [
+- "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
+- "safemem 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "byteorder",
++ "safemem",
+ ]
+
+ [[package]]
+ name = "bitflags"
+ version = "0.4.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "8dead7461c1127cf637931a1e50934eb6eee8bff2f74433ac7909e9afcee04a3"
+
+ [[package]]
+ name = "bitflags"
+ version = "1.0.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "228047a76f468627ca71776ecdebd732a3423081fcf5125585bcd7c49886ce12"
+
+ [[package]]
+ name = "build_const"
+ version = "0.2.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "39092a32794787acd8525ee150305ff051b0aa6cc2abaf193924f5ab05425f39"
+
+ [[package]]
+ name = "byteorder"
+ version = "1.2.7"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "94f88df23a25417badc922ab0f5716cc1330e87f71ddd9203b3a3ccd9cedf75d"
+
+ [[package]]
+ name = "bytes"
+ version = "0.3.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "c129aff112dcc562970abb69e2508b40850dd24c274761bb50fb8a0067ba6c27"
+
+ [[package]]
+ name = "bytes"
+ version = "0.4.10"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "0ce55bd354b095246fc34caf4e9e242f5297a7fd938b090cadfea6eee614aa62"
+ dependencies = [
+- "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
+- "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "byteorder",
++ "iovec",
+ ]
+
+ [[package]]
+ name = "cc"
+ version = "1.0.25"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f159dfd43363c4d08055a07703eb7a3406b0dac4d0584d96965a3262db3c9d16"
+
+ [[package]]
+ name = "cfg-if"
+ version = "0.1.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "082bb9b28e00d3c9d39cc03e64ce4cea0f1bb9b3fde493f0cbc008472d22bdf4"
++
++[[package]]
++name = "cfg-if"
++version = "1.0.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
+
+ [[package]]
+ name = "chrono"
+ version = "0.4.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "45912881121cb26fad7c38c17ba7daa18764771836b34fab7d3fbd93ed633878"
+ dependencies = [
+- "num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)",
+- "num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)",
+- "time 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)",
++ "num-integer",
++ "num-traits 0.2.6",
++ "serde 1.0.80",
++ "time",
+ ]
+
+ [[package]]
+ name = "clap"
+ version = "2.32.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "b957d88f4b6a63b9d70d5f454ac8011819c6efa7727858f458ab71c756ce2d3e"
+ dependencies = [
+- "ansi_term 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "atty 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
+- "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
+- "strsim 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "textwrap 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "unicode-width 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
+- "vec_map 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "ansi_term",
++ "atty",
++ "bitflags 1.0.4",
++ "strsim",
++ "textwrap",
++ "unicode-width",
++ "vec_map",
+ ]
+
+ [[package]]
+ name = "cloudabi"
+ version = "0.0.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f"
+ dependencies = [
+- "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bitflags 1.0.4",
+ ]
+
+ [[package]]
+ name = "config"
+ version = "0.8.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e595d1735d8ab6b04906bbdcfc671cce2a5e609b6f8e92865e67331cc2f41ba4"
+ dependencies = [
+- "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "nom 3.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde-hjson 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde_json 1.0.32 (registry+https://github.com/rust-lang/crates.io-index)",
+- "toml 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "yaml-rust 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "lazy_static 1.2.0",
++ "nom",
++ "serde 1.0.80",
++ "serde-hjson",
++ "serde_json",
++ "toml",
++ "yaml-rust",
+ ]
+
+ [[package]]
+ name = "core-foundation"
+ version = "0.5.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "286e0b41c3a20da26536c6000a280585d519fd07b3956b43aed8a79e9edce980"
+ dependencies = [
+- "core-foundation-sys 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)",
++ "core-foundation-sys",
++ "libc",
+ ]
+
+ [[package]]
+ name = "core-foundation-sys"
+ version = "0.5.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "716c271e8613ace48344f723b60b900a93150271e5be206212d052bbc0883efa"
+ dependencies = [
+- "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc",
+ ]
+
+ [[package]]
+ name = "crc"
+ version = "1.8.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "d663548de7f5cca343f1e0a48d14dcfb0e9eb4e079ec58883b7251539fa10aeb"
+ dependencies = [
+- "build_const 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "build_const",
+ ]
+
+ [[package]]
+ name = "crossbeam-deque"
+ version = "0.6.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "3486aefc4c0487b9cb52372c97df0a48b8c249514af1ee99703bf70d2f2ceda1"
+ dependencies = [
+- "crossbeam-epoch 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "crossbeam-utils 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "crossbeam-epoch",
++ "crossbeam-utils",
+ ]
+
+ [[package]]
+ name = "crossbeam-epoch"
+ version = "0.5.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "30fecfcac6abfef8771151f8be4abc9e4edc112c2bcb233314cafde2680536e9"
+ dependencies = [
+- "arrayvec 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)",
+- "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "crossbeam-utils 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
++ "arrayvec",
++ "cfg-if 0.1.6",
++ "crossbeam-utils",
++ "lazy_static 1.2.0",
++ "memoffset",
++ "scopeguard",
+ ]
+
+ [[package]]
+ name = "crossbeam-utils"
+ version = "0.5.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "677d453a17e8bd2b913fa38e8b9cf04bcdbb5be790aa294f2389661d72036015"
+
+ [[package]]
+ name = "derive_builder"
+ version = "0.5.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "8c998e6ab02a828dd9735c18f154e14100e674ed08cb4e1938f0e4177543f439"
+ dependencies = [
+- "derive_builder_core 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)",
+- "syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)",
++ "derive_builder_core",
++ "quote 0.3.15",
++ "syn 0.11.11",
+ ]
+
+ [[package]]
+ name = "derive_builder_core"
+ version = "0.2.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "735e24ee9e5fa8e16b86da5007856e97d592e11867e45d76e0c0d0a164a0b757"
+ dependencies = [
+- "quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)",
+- "syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)",
++ "quote 0.3.15",
++ "syn 0.11.11",
+ ]
+
+ [[package]]
+ name = "dtoa"
+ version = "0.4.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6d301140eb411af13d3115f9a562c85cc6b541ade9dfa314132244aaee7489dd"
+
+ [[package]]
+ name = "encoding_rs"
+ version = "0.8.10"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "065f4d0c826fdaef059ac45487169d918558e3cf86c9d89f6e81cf52369126e5"
+ dependencies = [
+- "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cfg-if 0.1.6",
+ ]
+
+ [[package]]
+ name = "errno"
+ version = "0.1.8"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "1e2b2decb0484e15560df3210cf0d78654bb0864b2c138977c07e377a1bae0e2"
+ dependencies = [
+- "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "kernel32-sys",
++ "libc",
++ "winapi 0.2.8",
+ ]
+
+ [[package]]
+ name = "failure"
+ version = "0.1.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6dd377bcc1b1b7ce911967e3ec24fa19c3224394ec05b54aa7b083d498341ac7"
+ dependencies = [
+- "backtrace 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
+- "failure_derive 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
++ "backtrace",
++ "failure_derive",
+ ]
+
+ [[package]]
+ name = "failure_derive"
+ version = "0.1.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "64c2d913fe8ed3b6c6518eedf4538255b989945c14c2a7d5cbff62a5e2120596"
+ dependencies = [
+- "proc-macro2 0.4.20 (registry+https://github.com/rust-lang/crates.io-index)",
+- "quote 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)",
+- "syn 0.15.18 (registry+https://github.com/rust-lang/crates.io-index)",
+- "synstructure 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "proc-macro2 0.4.20",
++ "quote 0.6.9",
++ "syn 0.15.18",
++ "synstructure",
+ ]
+
+ [[package]]
+ name = "fnv"
+ version = "1.0.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "2fad85553e09a6f881f739c29f0b00b0f01357c743266d478b68951ce23285f3"
+
+ [[package]]
+ name = "foreign-types"
+ version = "0.3.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
+ dependencies = [
+- "foreign-types-shared 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "foreign-types-shared",
+ ]
+
+ [[package]]
+ name = "foreign-types-shared"
+ version = "0.1.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
+
+ [[package]]
+ name = "fuchsia-zircon"
+ version = "0.3.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82"
+ dependencies = [
+- "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
+- "fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bitflags 1.0.4",
++ "fuchsia-zircon-sys",
+ ]
+
+ [[package]]
+ name = "fuchsia-zircon-sys"
+ version = "0.3.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7"
+
+ [[package]]
+ name = "futures"
+ version = "0.1.25"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "49e7653e374fe0d0c12de4250f0bdb60680b8c80eed558c5c7538eec9c89e21b"
+
+ [[package]]
+ name = "futures-cpupool"
+ version = "0.1.8"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ab90cde24b3319636588d0c35fe03b1333857621051837ed769faefb4c2162e4"
+ dependencies = [
+- "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+- "num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "futures",
++ "num_cpus",
+ ]
+
+ [[package]]
+ name = "gcc"
+ version = "0.3.55"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "8f5f3913fa0bfe7ee1fd8248b6b9f42a5af4b9d65ec2dd2c3c26132b950ecfc2"
+
+ [[package]]
+ name = "h2"
+ version = "0.1.13"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7dd33bafe2e6370e6c8eb0cf1b8c5f93390b90acde7e9b03723f166b28b648ed"
+ dependencies = [
+- "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
+- "bytes 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+- "http 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)",
+- "indexmap 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "string 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
++ "byteorder",
++ "bytes 0.4.10",
++ "fnv",
++ "futures",
++ "http",
++ "indexmap",
++ "log 0.4.6",
++ "slab 0.4.1",
++ "string",
++ "tokio-io",
+ ]
+
+ [[package]]
+ name = "heck"
+ version = "0.3.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ea04fa3ead4e05e51a7c806fc07271fdbde4e246a6c6d1efd52e72230b771b82"
+ dependencies = [
+- "unicode-segmentation 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "unicode-segmentation",
+ ]
+
+ [[package]]
+ name = "http"
+ version = "0.1.13"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "24f58e8c2d8e886055c3ead7b28793e1455270b5fb39650984c224bc538ba581"
+ dependencies = [
+- "bytes 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "itoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bytes 0.4.10",
++ "fnv",
++ "itoa",
+ ]
+
+ [[package]]
+ name = "httparse"
+ version = "1.3.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e8734b0cfd3bc3e101ec59100e101c2eecd19282202e87808b3037b442777a83"
+
+ [[package]]
+ name = "hyper"
+ version = "0.12.13"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "95ffee0d1d30de4313fdaaa485891ce924991d45bbc18adfc8ac5b1639e62fbb"
+ dependencies = [
+- "bytes 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "h2 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)",
+- "http 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)",
+- "httparse 1.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "itoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)",
+- "time 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-reactor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-tcp 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-threadpool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-timer 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
+- "want 0.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bytes 0.4.10",
++ "futures",
++ "futures-cpupool",
++ "h2",
++ "http",
++ "httparse",
++ "iovec",
++ "itoa",
++ "log 0.4.6",
++ "net2",
++ "time",
++ "tokio",
++ "tokio-executor",
++ "tokio-io",
++ "tokio-reactor",
++ "tokio-tcp",
++ "tokio-threadpool",
++ "tokio-timer",
++ "want",
+ ]
+
+ [[package]]
+ name = "hyper-tls"
+ version = "0.3.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "32cd73f14ad370d3b4d4b7dce08f69b81536c82e39fcc89731930fe5788cd661"
+ dependencies = [
+- "bytes 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+- "hyper 0.12.13 (registry+https://github.com/rust-lang/crates.io-index)",
+- "native-tls 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bytes 0.4.10",
++ "futures",
++ "hyper",
++ "native-tls",
++ "tokio-io",
+ ]
+
+ [[package]]
+ name = "idna"
+ version = "0.1.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "38f09e0f0b1fb55fdee1f17470ad800da77af5186a1a76c026b679358b7e844e"
+ dependencies = [
+- "matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+- "unicode-normalization 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
++ "matches",
++ "unicode-bidi",
++ "unicode-normalization",
+ ]
+
+ [[package]]
+ name = "indexmap"
+ version = "1.0.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7e81a7c05f79578dbc15793d8b619db9ba32b4577003ef3af1a91c416798c58d"
+
+ [[package]]
+ name = "iovec"
+ version = "0.1.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "dbe6e417e7d0975db6512b90796e8ce223145ac4e33c377e4a42882a0e88bb08"
+ dependencies = [
+- "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc",
++ "winapi 0.2.8",
+ ]
+
+ [[package]]
+ name = "itoa"
+ version = "0.4.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "1306f3464951f30e30d12373d31c79fbd52d236e5e896fd92f96ec7babbbe60b"
+
+ [[package]]
+ name = "kernel32-sys"
+ version = "0.2.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d"
+ dependencies = [
+- "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "winapi 0.2.8",
++ "winapi-build",
+ ]
+
+ [[package]]
+ name = "lazy_static"
+ version = "0.2.11"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "76f033c7ad61445c5b347c7382dd1237847eb1bce590fe50365dcb33d546be73"
+
+ [[package]]
+ name = "lazy_static"
+ version = "1.2.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "a374c89b9db55895453a74c1e38861d9deec0b01b405a82516e9d5de4820dea1"
+
+ [[package]]
+ name = "lazycell"
+ version = "1.2.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ddba4c30a78328befecec92fc94970e53b3ae385827d28620f0f5bb2493081e0"
+
+ [[package]]
+ name = "libc"
+ version = "0.2.43"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "76e3a3ef172f1a0b9a9ff0dd1491ae5e6c948b94479a3021819ba7d860c8645d"
+
+ [[package]]
+ name = "libflate"
+ version = "0.1.18"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "21138fc6669f438ed7ae3559d5789a5f0ba32f28c1f0608d1e452b0bb06ee936"
+ dependencies = [
+- "adler32 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
+- "crc 1.8.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "adler32",
++ "byteorder",
++ "crc",
+ ]
+
+ [[package]]
+ name = "linked-hash-map"
+ version = "0.3.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6d262045c5b87c0861b3f004610afd0e2c851e2908d08b6c870cbb9d5f494ecd"
+ dependencies = [
+- "serde 0.8.23 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde_test 0.8.23 (registry+https://github.com/rust-lang/crates.io-index)",
++ "serde 0.8.23",
++ "serde_test",
+ ]
+
+ [[package]]
+ name = "linked-hash-map"
+ version = "0.5.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "70fb39025bc7cdd76305867c4eccf2f2dcf6e9a57f5b21a93e1c2d86cd03ec9e"
+
+ [[package]]
+ name = "lock_api"
+ version = "0.1.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "775751a3e69bde4df9b38dd00a1b5d6ac13791e4223d4a0506577f0dd27cfb7a"
+ dependencies = [
+- "owning_ref 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
++ "owning_ref",
++ "scopeguard",
+ ]
+
+ [[package]]
+ name = "log"
+ version = "0.3.9"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e19e8d5c34a3e0e2223db8e060f9e8264aeeb5c5fc64a4ee9965c062211c024b"
+ dependencies = [
+- "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "log 0.4.6",
+ ]
+
+ [[package]]
+ name = "log"
+ version = "0.4.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "c84ec4b527950aa83a329754b01dbe3f58361d1c5efacd1f6d68c494d08a17c6"
+ dependencies = [
+- "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cfg-if 0.1.6",
+ ]
+
+ [[package]]
+ name = "matches"
+ version = "0.1.8"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08"
+
+ [[package]]
+ name = "memchr"
+ version = "1.0.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "148fab2e51b4f1cfc66da2a7c32981d1d3c083a803978268bb11fe4b86925e7a"
+ dependencies = [
+- "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc",
+ ]
+
+ [[package]]
+ name = "memchr"
+ version = "2.1.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "0a3eb002f0535929f1199681417029ebea04aadc0c7a4224b46be99c7f5d6a16"
+ dependencies = [
+- "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)",
+- "version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cfg-if 0.1.6",
++ "libc",
++ "version_check",
+ ]
+
+ [[package]]
+ name = "memoffset"
+ version = "0.2.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "0f9dc261e2b62d7a622bf416ea3c5245cdd5d9a7fcc428c0d06804dfce1775b3"
+
+ [[package]]
+ name = "mime"
+ version = "0.3.12"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "0a907b83e7b9e987032439a387e187119cddafc92d5c2aaeb1d92580a793f630"
+ dependencies = [
+- "unicase 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "unicase 2.2.0",
+ ]
+
+ [[package]]
+ name = "mime_guess"
+ version = "2.0.0-alpha.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "30de2e4613efcba1ec63d8133f344076952090c122992a903359be5a4f99c3ed"
+ dependencies = [
+- "mime 0.3.12 (registry+https://github.com/rust-lang/crates.io-index)",
+- "phf 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)",
+- "phf_codegen 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)",
+- "unicase 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "mime",
++ "phf",
++ "phf_codegen",
++ "unicase 1.4.2",
+ ]
+
+ [[package]]
+ name = "mio"
+ version = "0.5.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "a637d1ca14eacae06296a008fa7ad955347e34efcb5891cfd8ba05491a37907e"
+ dependencies = [
+- "bytes 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
+- "miow 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
+- "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)",
+- "nix 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "slab 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "time 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bytes 0.3.0",
++ "libc",
++ "log 0.3.9",
++ "miow 0.1.5",
++ "net2",
++ "nix 0.5.1",
++ "slab 0.1.3",
++ "time",
++ "winapi 0.2.8",
+ ]
+
+ [[package]]
+ name = "mio"
+ version = "0.6.16"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "71646331f2619b1026cc302f87a2b8b648d5c6dd6937846a16cc8ce0f347f432"
+ dependencies = [
+- "fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "lazycell 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "miow 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)",
+- "slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "fuchsia-zircon",
++ "fuchsia-zircon-sys",
++ "iovec",
++ "kernel32-sys",
++ "lazycell",
++ "libc",
++ "log 0.4.6",
++ "miow 0.2.1",
++ "net2",
++ "slab 0.4.1",
++ "winapi 0.2.8",
+ ]
+
+ [[package]]
+ name = "mio-uds"
+ version = "0.6.7"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "966257a94e196b11bb43aca423754d87429960a768de9414f3691d6957abf125"
+ dependencies = [
+- "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)",
+- "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)",
++ "iovec",
++ "libc",
++ "mio 0.6.16",
+ ]
+
+ [[package]]
+ name = "miow"
+ version = "0.1.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "3e690c5df6b2f60acd45d56378981e827ff8295562fc8d34f573deb267a59cd1"
+ dependencies = [
+- "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "ws2_32-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "kernel32-sys",
++ "net2",
++ "winapi 0.2.8",
++ "ws2_32-sys",
+ ]
+
+ [[package]]
+ name = "miow"
+ version = "0.2.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "8c1f2f3b1cf331de6896aabf6e9d55dca90356cc9960cca7eaaf408a355ae919"
+ dependencies = [
+- "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "ws2_32-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "kernel32-sys",
++ "net2",
++ "winapi 0.2.8",
++ "ws2_32-sys",
+ ]
+
+ [[package]]
+ name = "native-tls"
+ version = "0.2.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ff8e08de0070bbf4c31f452ea2a70db092f36f6f2e4d897adf5674477d488fb2"
+ dependencies = [
+- "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "openssl 0.10.15 (registry+https://github.com/rust-lang/crates.io-index)",
+- "openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "openssl-sys 0.9.39 (registry+https://github.com/rust-lang/crates.io-index)",
+- "schannel 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)",
+- "security-framework 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "security-framework-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tempfile 3.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
++ "lazy_static 1.2.0",
++ "libc",
++ "log 0.4.6",
++ "openssl",
++ "openssl-probe",
++ "openssl-sys",
++ "schannel",
++ "security-framework",
++ "security-framework-sys",
++ "tempfile",
+ ]
+
+ [[package]]
+ name = "net2"
+ version = "0.2.33"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "42550d9fb7b6684a6d404d9fa7250c2eb2646df731d1c06afc06dcee9e1bcf88"
+ dependencies = [
+- "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cfg-if 0.1.6",
++ "libc",
++ "winapi 0.3.6",
+ ]
+
+ [[package]]
+ name = "nix"
+ version = "0.5.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "bfb3ddedaa14746434a02041940495bf11325c22f6d36125d3bdd56090d50a79"
+ dependencies = [
+- "bitflags 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bitflags 0.4.0",
++ "libc",
+ ]
+
+ [[package]]
+ name = "nix"
+ version = "0.10.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "b7fd5681d13fda646462cfbd4e5f2051279a89a544d50eb98c365b507246839f"
+ dependencies = [
+- "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
+- "bytes 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "gcc 0.3.55 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)",
+- "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bitflags 1.0.4",
++ "bytes 0.4.10",
++ "cfg-if 0.1.6",
++ "gcc",
++ "libc",
++ "void",
+ ]
+
+ [[package]]
+ name = "nodrop"
+ version = "0.1.12"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "9a2228dca57108069a5262f2ed8bd2e82496d2e074a06d1ccc7ce1687b6ae0a2"
+
+ [[package]]
+ name = "nom"
+ version = "3.2.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "05aec50c70fd288702bcd93284a8444607f3292dbdf2a30de5ea5dcdbe72287b"
+ dependencies = [
+- "memchr 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "memchr 1.0.2",
+ ]
+
+ [[package]]
+ name = "num-integer"
+ version = "0.1.39"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e83d528d2677f0518c570baf2b7abdcf0cd2d248860b68507bdcb3e91d4c0cea"
+ dependencies = [
+- "num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "num-traits 0.2.6",
+ ]
+
+ [[package]]
+ name = "num-traits"
+ version = "0.1.43"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "92e5113e9fd4cc14ded8e499429f396a20f98c772a47cc8622a736e1ec843c31"
+ dependencies = [
+- "num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "num-traits 0.2.6",
+ ]
+
+ [[package]]
+ name = "num-traits"
+ version = "0.2.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "0b3a5d7cc97d6d30d8b9bc8fa19bf45349ffe46241e8816f50f62f6d6aaabee1"
+
+ [[package]]
+ name = "num_cpus"
+ version = "1.8.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "c51a3322e4bca9d212ad9a158a02abc6934d005490c054a2778df73a70aa0a30"
+ dependencies = [
+- "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc",
+ ]
+
+ [[package]]
+-name = "openssl"
+-version = "0.10.15"
++name = "once_cell"
++version = "1.13.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "18a6dbe30758c9f83eb00cbea4ac95966305f5a7772f3f42ebfc7fc7eddbd8e1"
++
++[[package]]
++name = "openssl"
++version = "0.10.41"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "618febf65336490dfcf20b73f885f5651a0c89c64c2d4a8c3662585a70bf5bd0"
+ dependencies = [
+- "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
+- "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "foreign-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)",
+- "openssl-sys 0.9.39 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bitflags 1.0.4",
++ "cfg-if 1.0.0",
++ "foreign-types",
++ "libc",
++ "once_cell",
++ "openssl-macros",
++ "openssl-sys",
++]
++
++[[package]]
++name = "openssl-macros"
++version = "0.1.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "b501e44f11665960c7e7fcf062c7d96a14ade4aa98116c004b2e37b5be7d736c"
++dependencies = [
++ "proc-macro2 1.0.43",
++ "quote 1.0.21",
++ "syn 1.0.99",
+ ]
+
+ [[package]]
+ name = "openssl-probe"
+ version = "0.1.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "77af24da69f9d9341038eba93a073b1fdaaa1b788221b00a69bce9e762cb32de"
+
+ [[package]]
+ name = "openssl-sys"
+-version = "0.9.39"
++version = "0.9.75"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e5f9bd0c2710541a3cda73d6f9ac4f1b240de4ae261065d309dbe73d9dceb42f"
+ dependencies = [
+- "cc 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)",
+- "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)",
+- "vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "autocfg",
++ "cc",
++ "libc",
++ "pkg-config",
++ "vcpkg",
+ ]
+
+ [[package]]
+ name = "os_type"
+ version = "2.2.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7edc011af0ae98b7f88cf7e4a83b70a54a75d2b8cb013d6efd02e5956207e9eb"
+ dependencies = [
+- "regex 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "regex",
+ ]
+
+ [[package]]
+ name = "owning_ref"
+ version = "0.3.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "cdf84f41639e037b484f93433aa3897863b561ed65c6e59c7073d7c561710f37"
+ dependencies = [
+- "stable_deref_trait 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "stable_deref_trait",
+ ]
+
+ [[package]]
+ name = "parking_lot"
+ version = "0.6.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f0802bff09003b291ba756dc7e79313e51cc31667e94afbe847def490424cde5"
+ dependencies = [
+- "lock_api 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
+- "parking_lot_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "lock_api",
++ "parking_lot_core",
+ ]
+
+ [[package]]
+ name = "parking_lot_core"
+ version = "0.3.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ad7f7e6ebdc79edff6fdcb87a55b620174f7a989e3eb31b65231f4af57f00b8c"
+ dependencies = [
+- "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "smallvec 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc",
++ "rand 0.5.5",
++ "rustc_version",
++ "smallvec",
++ "winapi 0.3.6",
+ ]
+
+ [[package]]
+ name = "percent-encoding"
+ version = "1.0.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "31010dd2e1ac33d5b46a5b413495239882813e0369f8ed8a5e266f173602f831"
+
+ [[package]]
+ name = "phf"
+ version = "0.7.23"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "cec29da322b242f4c3098852c77a0ca261c9c01b806cae85a5572a1eb94db9a6"
+ dependencies = [
+- "phf_shared 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)",
++ "phf_shared",
+ ]
+
+ [[package]]
+ name = "phf_codegen"
+ version = "0.7.23"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7d187f00cd98d5afbcd8898f6cf181743a449162aeb329dcd2f3849009e605ad"
+ dependencies = [
+- "phf_generator 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)",
+- "phf_shared 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)",
++ "phf_generator",
++ "phf_shared",
+ ]
+
+ [[package]]
+ name = "phf_generator"
+ version = "0.7.23"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "03dc191feb9b08b0dc1330d6549b795b9d81aec19efe6b4a45aec8d4caee0c4b"
+ dependencies = [
+- "phf_shared 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "phf_shared",
++ "rand 0.5.5",
+ ]
+
+ [[package]]
+ name = "phf_shared"
+ version = "0.7.23"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "b539898d22d4273ded07f64a05737649dc69095d92cb87c7097ec68e3f150b93"
+ dependencies = [
+- "siphasher 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "unicase 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "siphasher",
++ "unicase 1.4.2",
+ ]
+
+ [[package]]
+ name = "pkg-config"
+ version = "0.3.14"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "676e8eb2b1b4c9043511a9b7bea0915320d7e502b0a079fb03f9635a5252b18c"
+
+ [[package]]
+ name = "proc-macro2"
+ version = "0.4.20"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "3d7b7eaaa90b4a90a932a9ea6666c95a389e424eff347f0f793979289429feee"
+ dependencies = [
+- "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "unicode-xid 0.1.0",
++]
++
++[[package]]
++name = "proc-macro2"
++version = "1.0.43"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "0a2ca2c61bc9f3d74d2886294ab7b9853abd9c1ad903a3ac7815c58989bb7bab"
++dependencies = [
++ "unicode-ident",
+ ]
+
+ [[package]]
+ name = "pty"
+ version = "0.2.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f50f3d255966981eb4e4c5df3e983e6f7d163221f547406d83b6a460ff5c5ee8"
+ dependencies = [
+- "errno 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)",
++ "errno",
++ "libc",
+ ]
+
+ [[package]]
+ name = "pty-shell"
+ version = "0.3.0"
+ dependencies = [
+- "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)",
+- "mio 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "nix 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "pty 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "termios 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc",
++ "mio 0.5.1",
++ "nix 0.10.0",
++ "pty",
++ "termios",
+ ]
+
+ [[package]]
+ name = "quote"
+ version = "0.3.15"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7a6e920b65c65f10b2ae65c831a81a073a89edd28c7cce89475bff467ab4167a"
+
+ [[package]]
+ name = "quote"
+ version = "0.6.9"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "63b5829244f52738cfee93b3a165c1911388675be000c888d2fae620dee8fa5b"
+ dependencies = [
+- "proc-macro2 0.4.20 (registry+https://github.com/rust-lang/crates.io-index)",
++ "proc-macro2 0.4.20",
++]
++
++[[package]]
++name = "quote"
++version = "1.0.21"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "bbe448f377a7d6961e30f5955f9b8d106c3f5e449d493ee1b125c1d43c2b5179"
++dependencies = [
++ "proc-macro2 1.0.43",
+ ]
+
+ [[package]]
+ name = "rand"
+ version = "0.4.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "8356f47b32624fef5b3301c1be97e5944ecdd595409cc5da11d05f211db6cfbd"
+ dependencies = [
+- "fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "fuchsia-zircon",
++ "libc",
++ "winapi 0.3.6",
+ ]
+
+ [[package]]
+ name = "rand"
+ version = "0.5.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e464cd887e869cddcae8792a4ee31d23c7edd516700695608f5b98c67ee0131c"
+ dependencies = [
+- "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rand_core 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cloudabi",
++ "fuchsia-zircon",
++ "libc",
++ "rand_core 0.2.2",
++ "winapi 0.3.6",
+ ]
+
+ [[package]]
+ name = "rand_core"
+ version = "0.2.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "1961a422c4d189dfb50ffa9320bf1f2a9bd54ecb92792fb9477f99a1045f3372"
+ dependencies = [
+- "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rand_core 0.3.0",
+ ]
+
+ [[package]]
+ name = "rand_core"
+ version = "0.3.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "0905b6b7079ec73b314d4c748701f6931eb79fd97c668caa3f1899b22b32c6db"
+
+ [[package]]
+ name = "redox_syscall"
+ version = "0.1.40"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "c214e91d3ecf43e9a4e41e578973adeb14b474f2bee858742d127af75a0112b1"
+
+ [[package]]
+ name = "redox_termios"
+ version = "0.1.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7e891cfe48e9100a70a3b6eb652fef28920c117d366339687bd5576160db0f76"
+ dependencies = [
+- "redox_syscall 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)",
++ "redox_syscall",
+ ]
+
+ [[package]]
+ name = "regex"
+ version = "1.0.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ee84f70c8c08744ea9641a731c7fadb475bf2ecc52d7f627feb833e0b3990467"
+ dependencies = [
+- "aho-corasick 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)",
+- "memchr 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "regex-syntax 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "utf8-ranges 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "aho-corasick",
++ "memchr 2.1.1",
++ "regex-syntax",
++ "thread_local",
++ "utf8-ranges",
+ ]
+
+ [[package]]
+ name = "regex-syntax"
+ version = "0.6.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "747ba3b235651f6e2f67dfa8bcdcd073ddb7c243cb21c442fc12395dfcac212d"
+ dependencies = [
+- "ucd-util 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "ucd-util",
+ ]
+
+ [[package]]
+ name = "remove_dir_all"
+ version = "0.5.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "3488ba1b9a2084d38645c4c08276a1752dcbf2c7130d74f1569681ad5d2799c5"
+ dependencies = [
+- "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "winapi 0.3.6",
+ ]
+
+ [[package]]
+ name = "reqwest"
+ version = "0.9.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "00a5870d8edc74fc6e1eb58edbd2815d2243e1a2255d6bf9c82a7a875901b5db"
+ dependencies = [
+- "base64 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "bytes 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "encoding_rs 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+- "http 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)",
+- "hyper 0.12.13 (registry+https://github.com/rust-lang/crates.io-index)",
+- "hyper-tls 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libflate 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "mime 0.3.12 (registry+https://github.com/rust-lang/crates.io-index)",
+- "mime_guess 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "native-tls 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde_json 1.0.32 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde_urlencoded 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "uuid 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "base64",
++ "bytes 0.4.10",
++ "encoding_rs",
++ "futures",
++ "http",
++ "hyper",
++ "hyper-tls",
++ "libflate",
++ "log 0.4.6",
++ "mime",
++ "mime_guess",
++ "native-tls",
++ "serde 1.0.80",
++ "serde_json",
++ "serde_urlencoded",
++ "tokio",
++ "tokio-io",
++ "url",
++ "uuid 0.7.1",
+ ]
+
+ [[package]]
+ name = "rustc-demangle"
+ version = "0.1.9"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "bcfe5b13211b4d78e5c2cadfebd7769197d95c639c35a50057eb4c05de811395"
+
+ [[package]]
+ name = "rustc_version"
+ version = "0.2.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a"
+ dependencies = [
+- "semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "semver",
+ ]
+
+ [[package]]
+ name = "ryu"
+ version = "0.2.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7153dd96dade874ab973e098cb62fcdbb89a03682e46b144fd09550998d4a4a7"
+
+ [[package]]
+ name = "safemem"
+ version = "0.3.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "8dca453248a96cb0749e36ccdfe2b0b4e54a61bfef89fb97ec621eb8e0a93dd9"
+
+ [[package]]
+ name = "schannel"
+ version = "0.1.14"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "0e1a231dc10abf6749cfa5d7767f25888d484201accbd919b66ab5413c502d56"
+ dependencies = [
+- "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "lazy_static 1.2.0",
++ "winapi 0.3.6",
+ ]
+
+ [[package]]
+ name = "scopeguard"
+ version = "0.3.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "94258f53601af11e6a49f722422f6e3425c52b06245a5cf9bc09908b174f5e27"
+
+ [[package]]
+ name = "security-framework"
+ version = "0.2.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "697d3f3c23a618272ead9e1fb259c1411102b31c6af8b93f1d64cca9c3b0e8e0"
+ dependencies = [
+- "core-foundation 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "core-foundation-sys 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)",
+- "security-framework-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "core-foundation",
++ "core-foundation-sys",
++ "libc",
++ "security-framework-sys",
+ ]
+
+ [[package]]
+ name = "security-framework-sys"
+ version = "0.2.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ab01dfbe5756785b5b4d46e0289e5a18071dfa9a7c2b24213ea00b9ef9b665bf"
+ dependencies = [
+- "core-foundation-sys 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)",
++ "core-foundation-sys",
++ "libc",
+ ]
+
+ [[package]]
+ name = "semver"
+ version = "0.9.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403"
+ dependencies = [
+- "semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "semver-parser",
+ ]
+
+ [[package]]
+ name = "semver-parser"
+ version = "0.7.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3"
+
+ [[package]]
+ name = "serde"
+ version = "0.8.23"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "9dad3f759919b92c3068c696c15c3d17238234498bbdcc80f2c469606f948ac8"
+
+ [[package]]
+ name = "serde"
+ version = "1.0.80"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "15c141fc7027dd265a47c090bf864cf62b42c4d228bbcf4e51a0c9e2b0d3f7ef"
+
+ [[package]]
+ name = "serde-hjson"
+ version = "0.8.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "0b833c5ad67d52ced5f5938b2980f32a9c1c5ef047f0b4fb3127e7a423c76153"
+ dependencies = [
+- "lazy_static 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
+- "linked-hash-map 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "num-traits 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)",
+- "regex 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde 0.8.23 (registry+https://github.com/rust-lang/crates.io-index)",
++ "lazy_static 0.2.11",
++ "linked-hash-map 0.3.0",
++ "num-traits 0.1.43",
++ "regex",
++ "serde 0.8.23",
+ ]
+
+ [[package]]
+ name = "serde_derive"
+ version = "1.0.80"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "225de307c6302bec3898c51ca302fc94a7a1697ef0845fcee6448f33c032249c"
+ dependencies = [
+- "proc-macro2 0.4.20 (registry+https://github.com/rust-lang/crates.io-index)",
+- "quote 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)",
+- "syn 0.15.18 (registry+https://github.com/rust-lang/crates.io-index)",
++ "proc-macro2 0.4.20",
++ "quote 0.6.9",
++ "syn 0.15.18",
+ ]
+
+ [[package]]
+ name = "serde_json"
+ version = "1.0.32"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "43344e7ce05d0d8280c5940cabb4964bea626aa58b1ec0e8c73fa2a8512a38ce"
+ dependencies = [
+- "itoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "ryu 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)",
++ "itoa",
++ "ryu",
++ "serde 1.0.80",
+ ]
+
+ [[package]]
+ name = "serde_test"
+ version = "0.8.23"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "110b3dbdf8607ec493c22d5d947753282f3bae73c0f56d322af1e8c78e4c23d5"
+ dependencies = [
+- "serde 0.8.23 (registry+https://github.com/rust-lang/crates.io-index)",
++ "serde 0.8.23",
+ ]
+
+ [[package]]
+ name = "serde_urlencoded"
+ version = "0.5.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "aaed41d9fb1e2f587201b863356590c90c1157495d811430a0c0325fe8169650"
+ dependencies = [
+- "dtoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "itoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)",
+- "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "dtoa",
++ "itoa",
++ "serde 1.0.80",
++ "url",
+ ]
+
+ [[package]]
+ name = "siphasher"
+ version = "0.2.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "0b8de496cf83d4ed58b6be86c3a275b8602f6ffe98d3024a869e124147a9a3ac"
+
+ [[package]]
+ name = "slab"
+ version = "0.1.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "d807fd58c4181bbabed77cb3b891ba9748241a552bcc5be698faaebefc54f46e"
+
+ [[package]]
+ name = "slab"
+ version = "0.4.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "5f9776d6b986f77b35c6cf846c11ad986ff128fe0b2b63a3628e3755e8d3102d"
+
+ [[package]]
+ name = "smallvec"
+ version = "0.6.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "153ffa32fd170e9944f7e0838edf824a754ec4c1fc64746fcc9fe1f8fa602e5d"
+ dependencies = [
+- "unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "unreachable",
+ ]
+
+ [[package]]
+ name = "stable_deref_trait"
+ version = "1.1.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "dba1a27d3efae4351c8051072d619e3ade2820635c3958d826bfea39d59b54c8"
+
+ [[package]]
+ name = "string"
+ version = "0.1.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "00caf261d6f90f588f8450b8e1230fa0d5be49ee6140fdfbcb55335aff350970"
+
+ [[package]]
+ name = "strsim"
+ version = "0.7.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "bb4f380125926a99e52bc279241539c018323fab05ad6368b56f93d9369ff550"
+
+ [[package]]
+ name = "structopt"
+ version = "0.2.13"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "41c4a2479a078509940d82773d90ff824a8c89533ab3b59cd3ce8b0c0e369c02"
+ dependencies = [
+- "clap 2.32.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "structopt-derive 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)",
++ "clap",
++ "structopt-derive",
+ ]
+
+ [[package]]
+ name = "structopt-derive"
+ version = "0.2.13"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "5352090cfae7a2c85e1a31146268b53396106c88ca5d6ccee2e3fae83b6e35c2"
+ dependencies = [
+- "heck 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "proc-macro2 0.4.20 (registry+https://github.com/rust-lang/crates.io-index)",
+- "quote 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)",
+- "syn 0.15.18 (registry+https://github.com/rust-lang/crates.io-index)",
++ "heck",
++ "proc-macro2 0.4.20",
++ "quote 0.6.9",
++ "syn 0.15.18",
+ ]
+
+ [[package]]
+ name = "syn"
+ version = "0.11.11"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "d3b891b9015c88c576343b9b3e41c2c11a51c219ef067b264bd9c8aa9b441dad"
+ dependencies = [
+- "quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)",
+- "synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
++ "quote 0.3.15",
++ "synom",
++ "unicode-xid 0.0.4",
+ ]
+
+ [[package]]
+ name = "syn"
+ version = "0.15.18"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "90c39a061e2f412a9f869540471ab679e85e50c6b05604daf28bc3060f75c430"
+ dependencies = [
+- "proc-macro2 0.4.20 (registry+https://github.com/rust-lang/crates.io-index)",
+- "quote 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)",
+- "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "proc-macro2 0.4.20",
++ "quote 0.6.9",
++ "unicode-xid 0.1.0",
++]
++
++[[package]]
++name = "syn"
++version = "1.0.99"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "58dbef6ec655055e20b86b15a8cc6d439cca19b667537ac6a1369572d151ab13"
++dependencies = [
++ "proc-macro2 1.0.43",
++ "quote 1.0.21",
++ "unicode-ident",
+ ]
+
+ [[package]]
+ name = "synom"
+ version = "0.11.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "a393066ed9010ebaed60b9eafa373d4b1baac186dd7e008555b0f702b51945b6"
+ dependencies = [
+- "unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
++ "unicode-xid 0.0.4",
+ ]
+
+ [[package]]
+ name = "synstructure"
+ version = "0.10.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "73687139bf99285483c96ac0add482c3776528beac1d97d444f6e91f203a2015"
+ dependencies = [
+- "proc-macro2 0.4.20 (registry+https://github.com/rust-lang/crates.io-index)",
+- "quote 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)",
+- "syn 0.15.18 (registry+https://github.com/rust-lang/crates.io-index)",
+- "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "proc-macro2 0.4.20",
++ "quote 0.6.9",
++ "syn 0.15.18",
++ "unicode-xid 0.1.0",
+ ]
+
+ [[package]]
+ name = "tempfile"
+ version = "3.0.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "55c1195ef8513f3273d55ff59fe5da6940287a0d7a98331254397f464833675b"
+ dependencies = [
+- "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
+- "redox_syscall 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)",
+- "remove_dir_all 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cfg-if 0.1.6",
++ "libc",
++ "rand 0.5.5",
++ "redox_syscall",
++ "remove_dir_all",
++ "winapi 0.3.6",
+ ]
+
+ [[package]]
+ name = "termcolor"
+ version = "0.3.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "adc4587ead41bf016f11af03e55a624c06568b5a19db4e90fde573d805074f83"
+ dependencies = [
+- "wincolor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "wincolor",
+ ]
+
+ [[package]]
+ name = "termion"
+ version = "1.5.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "689a3bdfaab439fd92bc87df5c4c78417d3cbe537487274e9b0b2dce76e92096"
+ dependencies = [
+- "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)",
+- "redox_syscall 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)",
+- "redox_termios 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc",
++ "redox_syscall",
++ "redox_termios",
+ ]
+
+ [[package]]
+ name = "termios"
+ version = "0.3.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "72b620c5ea021d75a735c943269bb07d30c9b77d6ac6b236bc8b5c496ef05625"
+ dependencies = [
+- "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc",
+ ]
+
+ [[package]]
+ name = "textwrap"
+ version = "0.10.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "307686869c93e71f94da64286f9a9524c0f308a9e1c87a583de8e9c9039ad3f6"
+ dependencies = [
+- "unicode-width 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "unicode-width",
+ ]
+
+ [[package]]
+ name = "thread_local"
+ version = "0.3.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "c6b53e329000edc2b34dbe8545fd20e55a333362d0a321909685a19bd28c3f1b"
+ dependencies = [
+- "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "lazy_static 1.2.0",
+ ]
+
+ [[package]]
+ name = "time"
+ version = "0.1.40"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "d825be0eb33fda1a7e68012d51e9c7f451dc1a69391e7fdc197060bb8c56667b"
+ dependencies = [
+- "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)",
+- "redox_syscall 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc",
++ "redox_syscall",
++ "winapi 0.3.6",
+ ]
+
+ [[package]]
+ name = "tokio"
+ version = "0.1.11"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6e93c78d23cc61aa245a8acd2c4a79c4d7fa7fb5c3ca90d5737029f043a84895"
+ dependencies = [
+- "bytes 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+- "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-current-thread 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-fs 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-reactor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-tcp 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-threadpool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-timer 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-udp 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-uds 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bytes 0.4.10",
++ "futures",
++ "mio 0.6.16",
++ "tokio-codec",
++ "tokio-current-thread",
++ "tokio-executor",
++ "tokio-fs",
++ "tokio-io",
++ "tokio-reactor",
++ "tokio-tcp",
++ "tokio-threadpool",
++ "tokio-timer",
++ "tokio-udp",
++ "tokio-uds",
+ ]
+
+ [[package]]
+ name = "tokio-codec"
+ version = "0.1.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "5c501eceaf96f0e1793cf26beb63da3d11c738c4a943fdf3746d81d64684c39f"
+ dependencies = [
+- "bytes 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bytes 0.4.10",
++ "futures",
++ "tokio-io",
+ ]
+
+ [[package]]
+ name = "tokio-current-thread"
+ version = "0.1.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f90fcd90952f0a496d438a976afba8e5c205fb12123f813d8ab3aa1c8436638c"
+ dependencies = [
+- "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "futures",
++ "tokio-executor",
+ ]
+
+ [[package]]
+ name = "tokio-executor"
+ version = "0.1.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "c117b6cf86bb730aab4834f10df96e4dd586eff2c3c27d3781348da49e255bde"
+ dependencies = [
+- "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
++ "futures",
+ ]
+
+ [[package]]
+ name = "tokio-fs"
+ version = "0.1.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "60ae25f6b17d25116d2cba342083abe5255d3c2c79cb21ea11aa049c53bf7c75"
+ dependencies = [
+- "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-threadpool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "futures",
++ "tokio-io",
++ "tokio-threadpool",
+ ]
+
+ [[package]]
+ name = "tokio-io"
+ version = "0.1.10"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7392fe0a70d5ce0c882c4778116c519bd5dbaa8a7c3ae3d04578b3afafdcda21"
+ dependencies = [
+- "bytes 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bytes 0.4.10",
++ "futures",
++ "log 0.4.6",
+ ]
+
+ [[package]]
+ name = "tokio-reactor"
+ version = "0.1.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "4b26fd37f1125738b2170c80b551f69ff6fecb277e6e5ca885e53eec2b005018"
+ dependencies = [
+- "crossbeam-utils 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+- "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)",
+- "num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "parking_lot 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)",
+- "slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
++ "crossbeam-utils",
++ "futures",
++ "lazy_static 1.2.0",
++ "log 0.4.6",
++ "mio 0.6.16",
++ "num_cpus",
++ "parking_lot",
++ "slab 0.4.1",
++ "tokio-executor",
++ "tokio-io",
+ ]
+
+ [[package]]
+ name = "tokio-tcp"
+ version = "0.1.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7ad235e9dadd126b2d47f6736f65aa1fdcd6420e66ca63f44177bc78df89f912"
+ dependencies = [
+- "bytes 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+- "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-reactor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bytes 0.4.10",
++ "futures",
++ "iovec",
++ "mio 0.6.16",
++ "tokio-io",
++ "tokio-reactor",
+ ]
+
+ [[package]]
+ name = "tokio-threadpool"
+ version = "0.1.8"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "3929aee321c9220ed838ed6c3928be7f9b69986b0e3c22c972a66dbf8a298c68"
+ dependencies = [
+- "crossbeam-deque 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "crossbeam-utils 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "crossbeam-deque",
++ "crossbeam-utils",
++ "futures",
++ "log 0.4.6",
++ "num_cpus",
++ "rand 0.5.5",
++ "tokio-executor",
+ ]
+
+ [[package]]
+ name = "tokio-timer"
+ version = "0.2.7"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "3a52f00c97fedb6d535d27f65cccb7181c8dd4c6edc3eda9ea93f6d45d05168e"
+ dependencies = [
+- "crossbeam-utils 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+- "slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "crossbeam-utils",
++ "futures",
++ "slab 0.4.1",
++ "tokio-executor",
+ ]
+
+ [[package]]
+ name = "tokio-udp"
+ version = "0.1.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "da941144b816d0dcda4db3a1ba87596e4df5e860a72b70783fe435891f80601c"
+ dependencies = [
+- "bytes 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-reactor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bytes 0.4.10",
++ "futures",
++ "log 0.4.6",
++ "mio 0.6.16",
++ "tokio-codec",
++ "tokio-io",
++ "tokio-reactor",
+ ]
+
+ [[package]]
+ name = "tokio-uds"
+ version = "0.2.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "df195376b43508f01570bacc73e13a1de0854dc59e79d1ec09913e8db6dd2a70"
+ dependencies = [
+- "bytes 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+- "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)",
+- "mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-reactor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bytes 0.4.10",
++ "futures",
++ "iovec",
++ "libc",
++ "log 0.4.6",
++ "mio 0.6.16",
++ "mio-uds",
++ "tokio-io",
++ "tokio-reactor",
+ ]
+
+ [[package]]
+ name = "toml"
+ version = "0.4.8"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "4a2ecc31b0351ea18b3fe11274b8db6e4d82bce861bbb22e6dbed40417902c65"
+ dependencies = [
+- "serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)",
++ "serde 1.0.80",
+ ]
+
+ [[package]]
+ name = "try-lock"
+ version = "0.2.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e604eb7b43c06650e854be16a2a03155743d3752dd1c943f6829e26b7a36e382"
+
+ [[package]]
+ name = "ucd-util"
+ version = "0.1.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "d0f8bfa9ff0cadcd210129ad9d2c5f145c13e9ced3d3e5d948a6213487d52444"
+
+ [[package]]
+ name = "unicase"
+ version = "1.4.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7f4765f83163b74f957c797ad9253caf97f103fb064d3999aea9568d09fc8a33"
+ dependencies = [
+- "version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "version_check",
+ ]
+
+ [[package]]
+ name = "unicase"
+ version = "2.2.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "9d3218ea14b4edcaccfa0df0a64a3792a2c32cc706f1b336e48867f9d3147f90"
+ dependencies = [
+- "version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "version_check",
+ ]
+
+ [[package]]
+ name = "unicode-bidi"
+ version = "0.3.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5"
+ dependencies = [
+- "matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "matches",
+ ]
+
++[[package]]
++name = "unicode-ident"
++version = "1.0.3"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "c4f5b37a154999a8f3f98cc23a628d850e154479cd94decf3414696e12e31aaf"
++
+ [[package]]
+ name = "unicode-normalization"
+ version = "0.1.7"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6a0180bc61fc5a987082bfa111f4cc95c4caff7f9799f3e46df09163a937aa25"
+
+ [[package]]
+ name = "unicode-segmentation"
+ version = "1.2.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "aa6024fc12ddfd1c6dbc14a80fa2324d4568849869b779f6bd37e5e4c03344d1"
+
+ [[package]]
+ name = "unicode-width"
+ version = "0.1.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "882386231c45df4700b275c7ff55b6f3698780a650026380e72dabe76fa46526"
+
+ [[package]]
+ name = "unicode-xid"
+ version = "0.0.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "8c1f860d7d29cf02cb2f3f359fd35991af3d30bac52c57d265a3c461074cb4dc"
+
+ [[package]]
+ name = "unicode-xid"
+ version = "0.1.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc"
+
+ [[package]]
+ name = "unreachable"
+ version = "1.0.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "382810877fe448991dfc7f0dd6e3ae5d58088fd0ea5e35189655f84e6814fa56"
+ dependencies = [
+- "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "void",
+ ]
+
+ [[package]]
+ name = "url"
+ version = "1.7.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "dd4e7c0d531266369519a4aa4f399d748bd37043b00bde1e4ff1f60a120b355a"
+ dependencies = [
+- "idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
+- "matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "idna",
++ "matches",
++ "percent-encoding",
+ ]
+
+ [[package]]
+ name = "url_serde"
+ version = "0.2.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "74e7d099f1ee52f823d4bdd60c93c3602043c728f5db3b97bdb548467f7bddea"
+ dependencies = [
+- "serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)",
+- "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "serde 1.0.80",
++ "url",
+ ]
+
+ [[package]]
+ name = "utf8-ranges"
+ version = "1.0.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "796f7e48bef87609f7ade7e06495a87d5cd06c7866e6a5cbfceffc558a243737"
+
+ [[package]]
+ name = "uuid"
+ version = "0.6.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e1436e58182935dcd9ce0add9ea0b558e8a87befe01c1a301e6020aeb0876363"
+ dependencies = [
+- "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rand 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cfg-if 0.1.6",
++ "rand 0.4.3",
++ "serde 1.0.80",
+ ]
+
+ [[package]]
+ name = "uuid"
+ version = "0.7.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "dab5c5526c5caa3d106653401a267fed923e7046f35895ffcb5ca42db64942e6"
+ dependencies = [
+- "rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rand 0.5.5",
+ ]
+
+ [[package]]
+ name = "vcpkg"
+-version = "0.2.6"
++version = "0.2.15"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426"
+
+ [[package]]
+ name = "vec_map"
+ version = "0.8.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "05c78687fb1a80548ae3250346c3db86a80a7cdd77bda190189f2d0a0987c81a"
+
+ [[package]]
+ name = "version_check"
+ version = "0.1.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "914b1a6776c4c929a602fafd8bc742e06365d4bcbe48c30f9cca5824f70dc9dd"
+
+ [[package]]
+ name = "void"
+ version = "1.0.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d"
+
+ [[package]]
+ name = "want"
+ version = "0.0.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "797464475f30ddb8830cc529aaaae648d581f99e2036a928877dfde027ddf6b3"
+ dependencies = [
+- "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "try-lock 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "futures",
++ "log 0.4.6",
++ "try-lock",
+ ]
+
+ [[package]]
+ name = "winapi"
+ version = "0.2.8"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a"
+
+ [[package]]
+ name = "winapi"
+ version = "0.3.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "92c1eb33641e276cfa214a0522acad57be5c56b10cb348b3c5117db75f3ac4b0"
+ dependencies = [
+- "winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "winapi-i686-pc-windows-gnu",
++ "winapi-x86_64-pc-windows-gnu",
+ ]
+
+ [[package]]
+ name = "winapi-build"
+ version = "0.1.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc"
+
+ [[package]]
+ name = "winapi-i686-pc-windows-gnu"
+ version = "0.4.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
+
+ [[package]]
+ name = "winapi-x86_64-pc-windows-gnu"
+ version = "0.4.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
+
+ [[package]]
+ name = "wincolor"
+ version = "0.1.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "eeb06499a3a4d44302791052df005d5232b927ed1a9658146d842165c4de7767"
+ dependencies = [
+- "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "winapi 0.3.6",
+ ]
+
+ [[package]]
+ name = "ws2_32-sys"
+ version = "0.2.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "d59cefebd0c892fa2dd6de581e937301d8552cb44489cdff035c6187cb63fa5e"
+ dependencies = [
+- "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "winapi 0.2.8",
++ "winapi-build",
+ ]
+
+ [[package]]
+ name = "yaml-rust"
+ version = "0.4.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "95acf0db5515d07da9965ec0e0ba6cc2d825e2caeb7303b66ca441729801254e"
+ dependencies = [
+- "linked-hash-map 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "linked-hash-map 0.5.1",
+ ]
+-
+-[metadata]
+-"checksum adler32 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "7e522997b529f05601e05166c07ed17789691f562762c7f3b987263d2dedee5c"
+-"checksum aho-corasick 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)" = "1e9a933f4e58658d7b12defcf96dc5c720f20832deebe3e0a19efd3b6aaeeb9e"
+-"checksum ansi_term 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b"
+-"checksum arrayvec 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)" = "a1e964f9e24d588183fcb43503abda40d288c8657dfc27311516ce2f05675aef"
+-"checksum asciicast 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "4521e5a844fab4639ec32b21de3a2639f7c2783ba6bb9daead2672b6a298ed7b"
+-"checksum atty 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "9a7d5b8723950951411ee34d271d99dddcc2035a16ab25310ea2c8cfd4369652"
+-"checksum backtrace 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "89a47830402e9981c5c41223151efcced65a0510c13097c769cede7efb34782a"
+-"checksum backtrace-sys 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)" = "c66d56ac8dabd07f6aacdaf633f4b8262f5b3601a810a0dcddffd5c22c69daa0"
+-"checksum base64 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)" = "489d6c0ed21b11d038c31b6ceccca973e65d73ba3bd8ecb9a2babf5546164643"
+-"checksum bitflags 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8dead7461c1127cf637931a1e50934eb6eee8bff2f74433ac7909e9afcee04a3"
+-"checksum bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "228047a76f468627ca71776ecdebd732a3423081fcf5125585bcd7c49886ce12"
+-"checksum build_const 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "39092a32794787acd8525ee150305ff051b0aa6cc2abaf193924f5ab05425f39"
+-"checksum byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "94f88df23a25417badc922ab0f5716cc1330e87f71ddd9203b3a3ccd9cedf75d"
+-"checksum bytes 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c129aff112dcc562970abb69e2508b40850dd24c274761bb50fb8a0067ba6c27"
+-"checksum bytes 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "0ce55bd354b095246fc34caf4e9e242f5297a7fd938b090cadfea6eee614aa62"
+-"checksum cc 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)" = "f159dfd43363c4d08055a07703eb7a3406b0dac4d0584d96965a3262db3c9d16"
+-"checksum cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "082bb9b28e00d3c9d39cc03e64ce4cea0f1bb9b3fde493f0cbc008472d22bdf4"
+-"checksum chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "45912881121cb26fad7c38c17ba7daa18764771836b34fab7d3fbd93ed633878"
+-"checksum clap 2.32.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b957d88f4b6a63b9d70d5f454ac8011819c6efa7727858f458ab71c756ce2d3e"
+-"checksum cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f"
+-"checksum config 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e595d1735d8ab6b04906bbdcfc671cce2a5e609b6f8e92865e67331cc2f41ba4"
+-"checksum core-foundation 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "286e0b41c3a20da26536c6000a280585d519fd07b3956b43aed8a79e9edce980"
+-"checksum core-foundation-sys 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "716c271e8613ace48344f723b60b900a93150271e5be206212d052bbc0883efa"
+-"checksum crc 1.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d663548de7f5cca343f1e0a48d14dcfb0e9eb4e079ec58883b7251539fa10aeb"
+-"checksum crossbeam-deque 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3486aefc4c0487b9cb52372c97df0a48b8c249514af1ee99703bf70d2f2ceda1"
+-"checksum crossbeam-epoch 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "30fecfcac6abfef8771151f8be4abc9e4edc112c2bcb233314cafde2680536e9"
+-"checksum crossbeam-utils 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "677d453a17e8bd2b913fa38e8b9cf04bcdbb5be790aa294f2389661d72036015"
+-"checksum derive_builder 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "8c998e6ab02a828dd9735c18f154e14100e674ed08cb4e1938f0e4177543f439"
+-"checksum derive_builder_core 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "735e24ee9e5fa8e16b86da5007856e97d592e11867e45d76e0c0d0a164a0b757"
+-"checksum dtoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "6d301140eb411af13d3115f9a562c85cc6b541ade9dfa314132244aaee7489dd"
+-"checksum encoding_rs 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)" = "065f4d0c826fdaef059ac45487169d918558e3cf86c9d89f6e81cf52369126e5"
+-"checksum errno 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "1e2b2decb0484e15560df3210cf0d78654bb0864b2c138977c07e377a1bae0e2"
+-"checksum failure 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "6dd377bcc1b1b7ce911967e3ec24fa19c3224394ec05b54aa7b083d498341ac7"
+-"checksum failure_derive 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "64c2d913fe8ed3b6c6518eedf4538255b989945c14c2a7d5cbff62a5e2120596"
+-"checksum fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "2fad85553e09a6f881f739c29f0b00b0f01357c743266d478b68951ce23285f3"
+-"checksum foreign-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
+-"checksum foreign-types-shared 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
+-"checksum fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82"
+-"checksum fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7"
+-"checksum futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)" = "49e7653e374fe0d0c12de4250f0bdb60680b8c80eed558c5c7538eec9c89e21b"
+-"checksum futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "ab90cde24b3319636588d0c35fe03b1333857621051837ed769faefb4c2162e4"
+-"checksum gcc 0.3.55 (registry+https://github.com/rust-lang/crates.io-index)" = "8f5f3913fa0bfe7ee1fd8248b6b9f42a5af4b9d65ec2dd2c3c26132b950ecfc2"
+-"checksum h2 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "7dd33bafe2e6370e6c8eb0cf1b8c5f93390b90acde7e9b03723f166b28b648ed"
+-"checksum heck 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ea04fa3ead4e05e51a7c806fc07271fdbde4e246a6c6d1efd52e72230b771b82"
+-"checksum http 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "24f58e8c2d8e886055c3ead7b28793e1455270b5fb39650984c224bc538ba581"
+-"checksum httparse 1.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "e8734b0cfd3bc3e101ec59100e101c2eecd19282202e87808b3037b442777a83"
+-"checksum hyper 0.12.13 (registry+https://github.com/rust-lang/crates.io-index)" = "95ffee0d1d30de4313fdaaa485891ce924991d45bbc18adfc8ac5b1639e62fbb"
+-"checksum hyper-tls 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "32cd73f14ad370d3b4d4b7dce08f69b81536c82e39fcc89731930fe5788cd661"
+-"checksum idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "38f09e0f0b1fb55fdee1f17470ad800da77af5186a1a76c026b679358b7e844e"
+-"checksum indexmap 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7e81a7c05f79578dbc15793d8b619db9ba32b4577003ef3af1a91c416798c58d"
+-"checksum iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dbe6e417e7d0975db6512b90796e8ce223145ac4e33c377e4a42882a0e88bb08"
+-"checksum itoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "1306f3464951f30e30d12373d31c79fbd52d236e5e896fd92f96ec7babbbe60b"
+-"checksum kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d"
+-"checksum lazy_static 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "76f033c7ad61445c5b347c7382dd1237847eb1bce590fe50365dcb33d546be73"
+-"checksum lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a374c89b9db55895453a74c1e38861d9deec0b01b405a82516e9d5de4820dea1"
+-"checksum lazycell 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ddba4c30a78328befecec92fc94970e53b3ae385827d28620f0f5bb2493081e0"
+-"checksum libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)" = "76e3a3ef172f1a0b9a9ff0dd1491ae5e6c948b94479a3021819ba7d860c8645d"
+-"checksum libflate 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)" = "21138fc6669f438ed7ae3559d5789a5f0ba32f28c1f0608d1e452b0bb06ee936"
+-"checksum linked-hash-map 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "6d262045c5b87c0861b3f004610afd0e2c851e2908d08b6c870cbb9d5f494ecd"
+-"checksum linked-hash-map 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "70fb39025bc7cdd76305867c4eccf2f2dcf6e9a57f5b21a93e1c2d86cd03ec9e"
+-"checksum lock_api 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "775751a3e69bde4df9b38dd00a1b5d6ac13791e4223d4a0506577f0dd27cfb7a"
+-"checksum log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "e19e8d5c34a3e0e2223db8e060f9e8264aeeb5c5fc64a4ee9965c062211c024b"
+-"checksum log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c84ec4b527950aa83a329754b01dbe3f58361d1c5efacd1f6d68c494d08a17c6"
+-"checksum matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08"
+-"checksum memchr 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "148fab2e51b4f1cfc66da2a7c32981d1d3c083a803978268bb11fe4b86925e7a"
+-"checksum memchr 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0a3eb002f0535929f1199681417029ebea04aadc0c7a4224b46be99c7f5d6a16"
+-"checksum memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0f9dc261e2b62d7a622bf416ea3c5245cdd5d9a7fcc428c0d06804dfce1775b3"
+-"checksum mime 0.3.12 (registry+https://github.com/rust-lang/crates.io-index)" = "0a907b83e7b9e987032439a387e187119cddafc92d5c2aaeb1d92580a793f630"
+-"checksum mime_guess 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)" = "30de2e4613efcba1ec63d8133f344076952090c122992a903359be5a4f99c3ed"
+-"checksum mio 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a637d1ca14eacae06296a008fa7ad955347e34efcb5891cfd8ba05491a37907e"
+-"checksum mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)" = "71646331f2619b1026cc302f87a2b8b648d5c6dd6937846a16cc8ce0f347f432"
+-"checksum mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)" = "966257a94e196b11bb43aca423754d87429960a768de9414f3691d6957abf125"
+-"checksum miow 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "3e690c5df6b2f60acd45d56378981e827ff8295562fc8d34f573deb267a59cd1"
+-"checksum miow 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "8c1f2f3b1cf331de6896aabf6e9d55dca90356cc9960cca7eaaf408a355ae919"
+-"checksum native-tls 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "ff8e08de0070bbf4c31f452ea2a70db092f36f6f2e4d897adf5674477d488fb2"
+-"checksum net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)" = "42550d9fb7b6684a6d404d9fa7250c2eb2646df731d1c06afc06dcee9e1bcf88"
+-"checksum nix 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b7fd5681d13fda646462cfbd4e5f2051279a89a544d50eb98c365b507246839f"
+-"checksum nix 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "bfb3ddedaa14746434a02041940495bf11325c22f6d36125d3bdd56090d50a79"
+-"checksum nodrop 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)" = "9a2228dca57108069a5262f2ed8bd2e82496d2e074a06d1ccc7ce1687b6ae0a2"
+-"checksum nom 3.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "05aec50c70fd288702bcd93284a8444607f3292dbdf2a30de5ea5dcdbe72287b"
+-"checksum num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "e83d528d2677f0518c570baf2b7abdcf0cd2d248860b68507bdcb3e91d4c0cea"
+-"checksum num-traits 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)" = "92e5113e9fd4cc14ded8e499429f396a20f98c772a47cc8622a736e1ec843c31"
+-"checksum num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "0b3a5d7cc97d6d30d8b9bc8fa19bf45349ffe46241e8816f50f62f6d6aaabee1"
+-"checksum num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c51a3322e4bca9d212ad9a158a02abc6934d005490c054a2778df73a70aa0a30"
+-"checksum openssl 0.10.15 (registry+https://github.com/rust-lang/crates.io-index)" = "5e1309181cdcbdb51bc3b6bedb33dfac2a83b3d585033d3f6d9e22e8c1928613"
+-"checksum openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "77af24da69f9d9341038eba93a073b1fdaaa1b788221b00a69bce9e762cb32de"
+-"checksum openssl-sys 0.9.39 (registry+https://github.com/rust-lang/crates.io-index)" = "278c1ad40a89aa1e741a1eed089a2f60b18fab8089c3139b542140fc7d674106"
+-"checksum os_type 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7edc011af0ae98b7f88cf7e4a83b70a54a75d2b8cb013d6efd02e5956207e9eb"
+-"checksum owning_ref 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "cdf84f41639e037b484f93433aa3897863b561ed65c6e59c7073d7c561710f37"
+-"checksum parking_lot 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "f0802bff09003b291ba756dc7e79313e51cc31667e94afbe847def490424cde5"
+-"checksum parking_lot_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ad7f7e6ebdc79edff6fdcb87a55b620174f7a989e3eb31b65231f4af57f00b8c"
+-"checksum percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "31010dd2e1ac33d5b46a5b413495239882813e0369f8ed8a5e266f173602f831"
+-"checksum phf 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)" = "cec29da322b242f4c3098852c77a0ca261c9c01b806cae85a5572a1eb94db9a6"
+-"checksum phf_codegen 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)" = "7d187f00cd98d5afbcd8898f6cf181743a449162aeb329dcd2f3849009e605ad"
+-"checksum phf_generator 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)" = "03dc191feb9b08b0dc1330d6549b795b9d81aec19efe6b4a45aec8d4caee0c4b"
+-"checksum phf_shared 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)" = "b539898d22d4273ded07f64a05737649dc69095d92cb87c7097ec68e3f150b93"
+-"checksum pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)" = "676e8eb2b1b4c9043511a9b7bea0915320d7e502b0a079fb03f9635a5252b18c"
+-"checksum proc-macro2 0.4.20 (registry+https://github.com/rust-lang/crates.io-index)" = "3d7b7eaaa90b4a90a932a9ea6666c95a389e424eff347f0f793979289429feee"
+-"checksum pty 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f50f3d255966981eb4e4c5df3e983e6f7d163221f547406d83b6a460ff5c5ee8"
+-"checksum quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6e920b65c65f10b2ae65c831a81a073a89edd28c7cce89475bff467ab4167a"
+-"checksum quote 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)" = "63b5829244f52738cfee93b3a165c1911388675be000c888d2fae620dee8fa5b"
+-"checksum rand 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "8356f47b32624fef5b3301c1be97e5944ecdd595409cc5da11d05f211db6cfbd"
+-"checksum rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)" = "e464cd887e869cddcae8792a4ee31d23c7edd516700695608f5b98c67ee0131c"
+-"checksum rand_core 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1961a422c4d189dfb50ffa9320bf1f2a9bd54ecb92792fb9477f99a1045f3372"
+-"checksum rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0905b6b7079ec73b314d4c748701f6931eb79fd97c668caa3f1899b22b32c6db"
+-"checksum redox_syscall 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)" = "c214e91d3ecf43e9a4e41e578973adeb14b474f2bee858742d127af75a0112b1"
+-"checksum redox_termios 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7e891cfe48e9100a70a3b6eb652fef28920c117d366339687bd5576160db0f76"
+-"checksum regex 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "ee84f70c8c08744ea9641a731c7fadb475bf2ecc52d7f627feb833e0b3990467"
+-"checksum regex-syntax 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "747ba3b235651f6e2f67dfa8bcdcd073ddb7c243cb21c442fc12395dfcac212d"
+-"checksum remove_dir_all 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3488ba1b9a2084d38645c4c08276a1752dcbf2c7130d74f1569681ad5d2799c5"
+-"checksum reqwest 0.9.4 (registry+https://github.com/rust-lang/crates.io-index)" = "00a5870d8edc74fc6e1eb58edbd2815d2243e1a2255d6bf9c82a7a875901b5db"
+-"checksum rustc-demangle 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "bcfe5b13211b4d78e5c2cadfebd7769197d95c639c35a50057eb4c05de811395"
+-"checksum rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a"
+-"checksum ryu 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "7153dd96dade874ab973e098cb62fcdbb89a03682e46b144fd09550998d4a4a7"
+-"checksum safemem 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8dca453248a96cb0749e36ccdfe2b0b4e54a61bfef89fb97ec621eb8e0a93dd9"
+-"checksum schannel 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)" = "0e1a231dc10abf6749cfa5d7767f25888d484201accbd919b66ab5413c502d56"
+-"checksum scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "94258f53601af11e6a49f722422f6e3425c52b06245a5cf9bc09908b174f5e27"
+-"checksum security-framework 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "697d3f3c23a618272ead9e1fb259c1411102b31c6af8b93f1d64cca9c3b0e8e0"
+-"checksum security-framework-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ab01dfbe5756785b5b4d46e0289e5a18071dfa9a7c2b24213ea00b9ef9b665bf"
+-"checksum semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403"
+-"checksum semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3"
+-"checksum serde 0.8.23 (registry+https://github.com/rust-lang/crates.io-index)" = "9dad3f759919b92c3068c696c15c3d17238234498bbdcc80f2c469606f948ac8"
+-"checksum serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)" = "15c141fc7027dd265a47c090bf864cf62b42c4d228bbcf4e51a0c9e2b0d3f7ef"
+-"checksum serde-hjson 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)" = "0b833c5ad67d52ced5f5938b2980f32a9c1c5ef047f0b4fb3127e7a423c76153"
+-"checksum serde_derive 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)" = "225de307c6302bec3898c51ca302fc94a7a1697ef0845fcee6448f33c032249c"
+-"checksum serde_json 1.0.32 (registry+https://github.com/rust-lang/crates.io-index)" = "43344e7ce05d0d8280c5940cabb4964bea626aa58b1ec0e8c73fa2a8512a38ce"
+-"checksum serde_test 0.8.23 (registry+https://github.com/rust-lang/crates.io-index)" = "110b3dbdf8607ec493c22d5d947753282f3bae73c0f56d322af1e8c78e4c23d5"
+-"checksum serde_urlencoded 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "aaed41d9fb1e2f587201b863356590c90c1157495d811430a0c0325fe8169650"
+-"checksum siphasher 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "0b8de496cf83d4ed58b6be86c3a275b8602f6ffe98d3024a869e124147a9a3ac"
+-"checksum slab 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "d807fd58c4181bbabed77cb3b891ba9748241a552bcc5be698faaebefc54f46e"
+-"checksum slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5f9776d6b986f77b35c6cf846c11ad986ff128fe0b2b63a3628e3755e8d3102d"
+-"checksum smallvec 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)" = "153ffa32fd170e9944f7e0838edf824a754ec4c1fc64746fcc9fe1f8fa602e5d"
+-"checksum stable_deref_trait 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "dba1a27d3efae4351c8051072d619e3ade2820635c3958d826bfea39d59b54c8"
+-"checksum string 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "00caf261d6f90f588f8450b8e1230fa0d5be49ee6140fdfbcb55335aff350970"
+-"checksum strsim 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bb4f380125926a99e52bc279241539c018323fab05ad6368b56f93d9369ff550"
+-"checksum structopt 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)" = "41c4a2479a078509940d82773d90ff824a8c89533ab3b59cd3ce8b0c0e369c02"
+-"checksum structopt-derive 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)" = "5352090cfae7a2c85e1a31146268b53396106c88ca5d6ccee2e3fae83b6e35c2"
+-"checksum syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)" = "d3b891b9015c88c576343b9b3e41c2c11a51c219ef067b264bd9c8aa9b441dad"
+-"checksum syn 0.15.18 (registry+https://github.com/rust-lang/crates.io-index)" = "90c39a061e2f412a9f869540471ab679e85e50c6b05604daf28bc3060f75c430"
+-"checksum synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a393066ed9010ebaed60b9eafa373d4b1baac186dd7e008555b0f702b51945b6"
+-"checksum synstructure 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "73687139bf99285483c96ac0add482c3776528beac1d97d444f6e91f203a2015"
+-"checksum tempfile 3.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "55c1195ef8513f3273d55ff59fe5da6940287a0d7a98331254397f464833675b"
+-"checksum termcolor 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "adc4587ead41bf016f11af03e55a624c06568b5a19db4e90fde573d805074f83"
+-"checksum termion 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "689a3bdfaab439fd92bc87df5c4c78417d3cbe537487274e9b0b2dce76e92096"
+-"checksum termios 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "72b620c5ea021d75a735c943269bb07d30c9b77d6ac6b236bc8b5c496ef05625"
+-"checksum textwrap 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "307686869c93e71f94da64286f9a9524c0f308a9e1c87a583de8e9c9039ad3f6"
+-"checksum thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c6b53e329000edc2b34dbe8545fd20e55a333362d0a321909685a19bd28c3f1b"
+-"checksum time 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)" = "d825be0eb33fda1a7e68012d51e9c7f451dc1a69391e7fdc197060bb8c56667b"
+-"checksum tokio 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)" = "6e93c78d23cc61aa245a8acd2c4a79c4d7fa7fb5c3ca90d5737029f043a84895"
+-"checksum tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5c501eceaf96f0e1793cf26beb63da3d11c738c4a943fdf3746d81d64684c39f"
+-"checksum tokio-current-thread 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "f90fcd90952f0a496d438a976afba8e5c205fb12123f813d8ab3aa1c8436638c"
+-"checksum tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "c117b6cf86bb730aab4834f10df96e4dd586eff2c3c27d3781348da49e255bde"
+-"checksum tokio-fs 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "60ae25f6b17d25116d2cba342083abe5255d3c2c79cb21ea11aa049c53bf7c75"
+-"checksum tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)" = "7392fe0a70d5ce0c882c4778116c519bd5dbaa8a7c3ae3d04578b3afafdcda21"
+-"checksum tokio-reactor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "4b26fd37f1125738b2170c80b551f69ff6fecb277e6e5ca885e53eec2b005018"
+-"checksum tokio-tcp 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7ad235e9dadd126b2d47f6736f65aa1fdcd6420e66ca63f44177bc78df89f912"
+-"checksum tokio-threadpool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "3929aee321c9220ed838ed6c3928be7f9b69986b0e3c22c972a66dbf8a298c68"
+-"checksum tokio-timer 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "3a52f00c97fedb6d535d27f65cccb7181c8dd4c6edc3eda9ea93f6d45d05168e"
+-"checksum tokio-udp 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "da941144b816d0dcda4db3a1ba87596e4df5e860a72b70783fe435891f80601c"
+-"checksum tokio-uds 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "df195376b43508f01570bacc73e13a1de0854dc59e79d1ec09913e8db6dd2a70"
+-"checksum toml 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)" = "4a2ecc31b0351ea18b3fe11274b8db6e4d82bce861bbb22e6dbed40417902c65"
+-"checksum try-lock 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e604eb7b43c06650e854be16a2a03155743d3752dd1c943f6829e26b7a36e382"
+-"checksum ucd-util 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "d0f8bfa9ff0cadcd210129ad9d2c5f145c13e9ced3d3e5d948a6213487d52444"
+-"checksum unicase 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7f4765f83163b74f957c797ad9253caf97f103fb064d3999aea9568d09fc8a33"
+-"checksum unicase 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9d3218ea14b4edcaccfa0df0a64a3792a2c32cc706f1b336e48867f9d3147f90"
+-"checksum unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5"
+-"checksum unicode-normalization 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "6a0180bc61fc5a987082bfa111f4cc95c4caff7f9799f3e46df09163a937aa25"
+-"checksum unicode-segmentation 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "aa6024fc12ddfd1c6dbc14a80fa2324d4568849869b779f6bd37e5e4c03344d1"
+-"checksum unicode-width 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "882386231c45df4700b275c7ff55b6f3698780a650026380e72dabe76fa46526"
+-"checksum unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "8c1f860d7d29cf02cb2f3f359fd35991af3d30bac52c57d265a3c461074cb4dc"
+-"checksum unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc"
+-"checksum unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "382810877fe448991dfc7f0dd6e3ae5d58088fd0ea5e35189655f84e6814fa56"
+-"checksum url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dd4e7c0d531266369519a4aa4f399d748bd37043b00bde1e4ff1f60a120b355a"
+-"checksum url_serde 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "74e7d099f1ee52f823d4bdd60c93c3602043c728f5db3b97bdb548467f7bddea"
+-"checksum utf8-ranges 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "796f7e48bef87609f7ade7e06495a87d5cd06c7866e6a5cbfceffc558a243737"
+-"checksum uuid 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)" = "e1436e58182935dcd9ce0add9ea0b558e8a87befe01c1a301e6020aeb0876363"
+-"checksum uuid 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "dab5c5526c5caa3d106653401a267fed923e7046f35895ffcb5ca42db64942e6"
+-"checksum vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "def296d3eb3b12371b2c7d0e83bfe1403e4db2d7a0bba324a12b21c4ee13143d"
+-"checksum vec_map 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "05c78687fb1a80548ae3250346c3db86a80a7cdd77bda190189f2d0a0987c81a"
+-"checksum version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "914b1a6776c4c929a602fafd8bc742e06365d4bcbe48c30f9cca5824f70dc9dd"
+-"checksum void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d"
+-"checksum want 0.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "797464475f30ddb8830cc529aaaae648d581f99e2036a928877dfde027ddf6b3"
+-"checksum winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a"
+-"checksum winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "92c1eb33641e276cfa214a0522acad57be5c56b10cb348b3c5117db75f3ac4b0"
+-"checksum winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc"
+-"checksum winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
+-"checksum winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
+-"checksum wincolor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "eeb06499a3a4d44302791052df005d5232b927ed1a9658146d842165c4de7767"
+-"checksum ws2_32-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d59cefebd0c892fa2dd6de581e937301d8552cb44489cdff035c6187cb63fa5e"
+-"checksum yaml-rust 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "95acf0db5515d07da9965ec0e0ba6cc2d825e2caeb7303b66ca441729801254e"
diff --git a/testing/asteroid-alarmclock/APKBUILD b/testing/asteroid-alarmclock/APKBUILD
index fa61ee5cba4..709ba23d979 100644
--- a/testing/asteroid-alarmclock/APKBUILD
+++ b/testing/asteroid-alarmclock/APKBUILD
@@ -1,9 +1,11 @@
# Contributor: Bart Ribbers <bribbers@disroot.org>
# Maintainer: Bart Ribbers <bribbers@disroot.org>
+
+# The group tag is just to easily find this APKBUILD by some scripts for automation
+# group=asteroid
pkgname=asteroid-alarmclock
-pkgver=0_git20210517
+pkgver=2.0.0
pkgrel=0
-_commit="66e4fabe58847b4c48fcad9c4b13be68a4242ca1"
pkgdesc="Default alarm clock app for AsteroidOS"
url="https://github.com/AsteroidOS/asteroid-alarmclock"
# armhf blocked by qml-asteroid
@@ -21,13 +23,13 @@ makedepends="
qml-asteroid-dev
qt5-qtbase-dev
qt5-qtdeclarative-dev
+ samurai
"
-source="https://github.com/AsteroidOS/asteroid-alarmclock/archive/$_commit/asteroid-alarmclock-$_commit.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/AsteroidOS/asteroid-alarmclock/archive/refs/tags/$pkgver.tar.gz"
options="!check" # No tests
-builddir="$srcdir/$pkgname-$_commit"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
@@ -40,5 +42,5 @@ package() {
}
sha512sums="
-02ea5db3d8589aea048d3629a90a991dfe2d78b6e28e7ab984b06d12c2853e427b1036df6b11e0a1c3044b76a63875c23aa23f08185ae04776dc51a124167710 asteroid-alarmclock-66e4fabe58847b4c48fcad9c4b13be68a4242ca1.tar.gz
+fff0ea11474e857dc4dd875c33e65661f79c2a6af2a6094965dc32ce343919e6baeba9e4d235f3592ef4036f34d1005da0f6f99e75d4eba6617a1f48e9d4253b asteroid-alarmclock-2.0.0.tar.gz
"
diff --git a/testing/asteroid-btsyncd/APKBUILD b/testing/asteroid-btsyncd/APKBUILD
index dc22b44eba6..7c3252c1b21 100644
--- a/testing/asteroid-btsyncd/APKBUILD
+++ b/testing/asteroid-btsyncd/APKBUILD
@@ -1,9 +1,11 @@
# Contributor: Bart Ribbers <bribbers@disroot.org>
# Maintainer: Bart Ribbers <bribbers@disroot.org>
+
+# The group tag is just to easily find this APKBUILD by some scripts for automation
+# group=asteroid
pkgname=asteroid-btsyncd
-pkgver=0_git20211128
+pkgver=2.0.0
pkgrel=0
-_commit="d142416ac0d0442e354c2c5b9fbce0b9db9ea36f"
pkgdesc="Bluetooth Low Energy synchronization daemon for AsteroidOS"
url="https://github.com/AsteroidOS/asteroid-btsyncd"
# armhf blocked by nemo-qml-plugin-systemsettings
@@ -16,15 +18,15 @@ makedepends="
qml-asteroid-dev
qt5-qtbase-dev
qtmpris-dev
+ samurai
timed-dev
"
-source="https://github.com/AsteroidOS/asteroid-btsyncd/archive/$_commit/asteroid-btsyncd-$_commit.tar.gz
+source="$pkgname-$pkgver.tar.gz::https://github.com/AsteroidOS/asteroid-btsyncd/archive/refs/tags/$pkgver.tar.gz
asteroid-btsyncd.desktop
"
-builddir="$srcdir/$pkgname-$_commit"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib
@@ -32,8 +34,7 @@ build() {
}
check() {
- cd build
- CTEST_OUTPUT_ON_FAILURE=TRUE ctest
+ ctest --test-dir build --output-on-failure
}
package() {
@@ -43,6 +44,6 @@ package() {
}
sha512sums="
-c13c3e497c9ce4e9fe4120a56efe23ad89cfd06cc404001a0db6727f2af8f5be43ed27dbca2aecd76f686b5bec5f24b489f2cc534109d27d3cc23da6bf18bcb8 asteroid-btsyncd-d142416ac0d0442e354c2c5b9fbce0b9db9ea36f.tar.gz
+b0fba66730cde57260deefb53536004ddd5746c97a2c0adfdd0c28a66c05a0d910cf1d36c188c389ae90c9bf3f37943ea7024db5ee558e432770d72ef9f8c243 asteroid-btsyncd-2.0.0.tar.gz
c6d1f3e1870c9bf0c65dc25961f58c3277149f6f7cc141bf0fd89ead191a1d9d72c3c414485f9b1b6407f066e51949b17be8eeb2473dcafb2e2bc5af1015b903 asteroid-btsyncd.desktop
"
diff --git a/testing/asteroid-calculator/APKBUILD b/testing/asteroid-calculator/APKBUILD
index a4c1d768816..f92d658ec71 100644
--- a/testing/asteroid-calculator/APKBUILD
+++ b/testing/asteroid-calculator/APKBUILD
@@ -1,9 +1,11 @@
# Contributor: Bart Ribbers <bribbers@disroot.org>
# Maintainer: Bart Ribbers <bribbers@disroot.org>
+
+# The group tag is just to easily find this APKBUILD by some scripts for automation
+# group=asteroid
pkgname=asteroid-calculator
-pkgver=0_git20210517
+pkgver=2.0.0
pkgrel=0
-_commit="f6cb4cd12a1bed8f491945f8d26bb87bfcfeaa04"
pkgdesc="Default calculator app for AsteroidOS"
url="https://github.com/AsteroidOS/asteroid-calculator"
# armhf blocked by qml-asteroid
@@ -16,8 +18,7 @@ makedepends="
qt5-qtbase-dev
qt5-qtdeclarative-dev
"
-source="https://github.com/AsteroidOS/asteroid-calculator/archive/$_commit/asteroid-calculator-$_commit.tar.gz"
-builddir="$srcdir/$pkgname-$_commit"
+source="$pkgname-$pkgver.tar.gz::https://github.com/AsteroidOS/asteroid-calculator/archive/refs/tags/$pkgver.tar.gz"
build() {
cmake -B build \
@@ -27,8 +28,7 @@ build() {
}
check() {
- cd build
- CTEST_OUTPUT_ON_FAILURE=TRUE ctest
+ ctest --test-dir build --output-on-failure
}
package() {
@@ -36,5 +36,5 @@ package() {
}
sha512sums="
-c9974600e11165599f4bdf33dbd3c0fe150fab69cdfc64a89234cda34a17f05788362c31a8abf9e2e01d30371a187cffb35ebe0665b18c9a15daa5883a1129e2 asteroid-calculator-f6cb4cd12a1bed8f491945f8d26bb87bfcfeaa04.tar.gz
+7a115627715864a6261ef1c46b4c61777b8013abe82a904ebe7aab803d4f31d3115390fd5a9c834529eb738e01bce19872a91c117bb1f60df96c67609f448a24 asteroid-calculator-2.0.0.tar.gz
"
diff --git a/testing/asteroid-calendar/APKBUILD b/testing/asteroid-calendar/APKBUILD
index 68d183aa4f6..beb2e37506d 100644
--- a/testing/asteroid-calendar/APKBUILD
+++ b/testing/asteroid-calendar/APKBUILD
@@ -1,9 +1,11 @@
# Contributor: Bart Ribbers <bribbers@disroot.org>
# Maintainer: Bart Ribbers <bribbers@disroot.org>
+
+# The group tag is just to easily find this APKBUILD by some scripts for automation
+# group=asteroid
pkgname=asteroid-calendar
-pkgver=0_git20210517
+pkgver=2.0.0
pkgrel=0
-_commit="9d0241fc65466f17b9260b3bca8db319b0093d42"
pkgdesc="Default calendar app for AsteroidOS"
url="https://github.com/AsteroidOS/asteroid-calendar"
# armhf blocked by nemo-qml-plugin-calendar
@@ -20,13 +22,13 @@ makedepends="
qml-asteroid-dev
qt5-qtbase-dev
qt5-qtdeclarative-dev
+ samurai
"
-source="https://github.com/AsteroidOS/asteroid-calendar/archive/$_commit/asteroid-calendar-$_commit.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/AsteroidOS/asteroid-calendar/archive/refs/tags/$pkgver.tar.gz"
options="!check" # No tests
-builddir="$srcdir/$pkgname-$_commit"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr
cmake --build build
@@ -37,5 +39,5 @@ package() {
}
sha512sums="
-0e3f7598fad35bf837dcaa385db8c9de7c12dd53439db80938c5be2f9e4fa7dba77d894654979f2e722b162f10ff76ff93f7380795dfe22229ad220d1a4c2ecc asteroid-calendar-9d0241fc65466f17b9260b3bca8db319b0093d42.tar.gz
+c4515928cef970c099a72fa468fa92fe213518946f46af1382e6b983ade66a9bebcc466a9dbf3842fb5f64704169ea0ca616734da30e6f3eaa256cf2ff8cdab0 asteroid-calendar-2.0.0.tar.gz
"
diff --git a/testing/asteroid-camera/APKBUILD b/testing/asteroid-camera/APKBUILD
index 523c8fe6b25..53ca2df14d6 100644
--- a/testing/asteroid-camera/APKBUILD
+++ b/testing/asteroid-camera/APKBUILD
@@ -1,10 +1,12 @@
# Contributor: Bart Ribbers <bribbers@disroot.org>
# Maintainer: Bart Ribbers <bribbers@disroot.org>
+
+# The group tag is just to easily find this APKBUILD by some scripts for automation
+# group=asteroid
pkgname=asteroid-camera
-pkgver=0_git20210517
+pkgver=2.0.0
pkgrel=0
-_commit="da9b1e4a2378aa4a423c0126be94def6c3174a29"
-pkgdesc="Default camerae app for AsteroidOS"
+pkgdesc="Default camera app for AsteroidOS"
url="https://github.com/AsteroidOS/asteroid-camera"
# armhf blocked by extra-cmake-modules
arch="all !armhf"
@@ -17,9 +19,8 @@ makedepends="
qt5-qtdeclarative-dev
qt5-qtmultimedia-dev
"
-source="https://github.com/AsteroidOS/asteroid-camera/archive/$_commit/asteroid-camera-$_commit.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/AsteroidOS/asteroid-camera/archive/refs/tags/$pkgver.tar.gz"
options="!check" # No tests
-builddir="$srcdir/$pkgname-$_commit"
build() {
cmake -B build \
@@ -33,5 +34,5 @@ package() {
}
sha512sums="
-cbbfca8487694a26d555b169329f7aa7673cc3f2ca4025ac1954aad1c041f5215c82cfd38ff42805e57ba07bb697de02a3c70175754bd774e8160b505fc9b3ed asteroid-camera-da9b1e4a2378aa4a423c0126be94def6c3174a29.tar.gz
+1b09ea8fbb6d94d6b793ca83675cbd4282d07c5dc2ffabed025227e9a8a3072c187226c653c630aeb2d51721bcb71d69dbf67c9f4e2bb79f230f07e4bf260194 asteroid-camera-2.0.0.tar.gz
"
diff --git a/testing/asteroid-compass/APKBUILD b/testing/asteroid-compass/APKBUILD
index 16d7849ad6d..8fbdb35c208 100644
--- a/testing/asteroid-compass/APKBUILD
+++ b/testing/asteroid-compass/APKBUILD
@@ -1,9 +1,11 @@
# Contributor: Bart Ribbers <bribbers@disroot.org>
# Maintainer: Bart Ribbers <bribbers@disroot.org>
+
+# The group tag is just to easily find this APKBUILD by some scripts for automation
+# group=asteroid
pkgname=asteroid-compass
-pkgver=0_git20210517
+pkgver=2.0.0
pkgrel=0
-_commit="b3cf236b34c386a9cbff81ffc1631554bd60ee1b"
pkgdesc="Default compass app for AsteroidOS"
url="https://github.com/AsteroidOS/asteroid-compass"
# armhf blocked by qml-asteroid
@@ -18,14 +20,14 @@ makedepends="
qml-asteroid-dev
qt5-qtbase-dev
qt5-qtdeclarative-dev
+ samurai
"
-source="https://github.com/AsteroidOS/asteroid-compass/archive/$_commit/asteroid-compass-$_commit.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/AsteroidOS/asteroid-compass/archive/refs/tags/$pkgver.tar.gz"
options="!check" # No tests
-builddir="$srcdir/$pkgname-$_commit"
build() {
- cmake -B build \
- -DCMAKE_BUILD_TYPE=None \
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=MinSizeRel \
-DCMAKE_INSTALL_PREFIX=/usr
cmake --build build
}
@@ -35,5 +37,5 @@ package() {
}
sha512sums="
-707b2ac18101bc6a0252eb691ba30919f9adf4fc59161330972d4b28c32653f4e0ae9c4cd2130d75c99bc0aae4ec1e1bea14fac1a2c7150e3005b7e77f5d4b2d asteroid-compass-b3cf236b34c386a9cbff81ffc1631554bd60ee1b.tar.gz
+b08e5b6a8b5102298e9ac511b088b926ac8a6e1230bf4643a86e759732015cc3f6dcb31d40f2481b55a76c098928d0da09501b1313c508c3670e36afb49707b4 asteroid-compass-2.0.0.tar.gz
"
diff --git a/testing/asteroid-diamonds/APKBUILD b/testing/asteroid-diamonds/APKBUILD
new file mode 100644
index 00000000000..d78522021c2
--- /dev/null
+++ b/testing/asteroid-diamonds/APKBUILD
@@ -0,0 +1,39 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+
+# The group tag is just to easily find this APKBUILD by some scripts for automation
+# group=asteroid
+pkgname=asteroid-diamonds
+pkgver=2.0.0
+pkgrel=0
+pkgdesc="A 2048-like game for AsteroidOS"
+url="https://github.com/AsteroidOS/asteroid-diamonds"
+# armhf blocked by qml-asteroid
+arch="all !armhf"
+license="GPL-3.0-or-later"
+depends="mapplauncherd"
+makedepends="
+ extra-cmake-modules
+ qml-asteroid-dev
+ qt5-qtbase-dev
+ qt5-qtdeclarative-dev
+ samurai
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/AsteroidOS/asteroid-diamonds/archive/refs/tags/$pkgver.tar.gz"
+options="!check" # No tests
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+534e0a7a66d96454acf1ac6e20ceb06d73f394b51b70f450a99f2991469127c48ddbbafcb912184d92ff9d91cfe091158ff8d9f003ce025bf4199561e079b014 asteroid-diamonds-2.0.0.tar.gz
+"
diff --git a/testing/asteroid-flashlight/APKBUILD b/testing/asteroid-flashlight/APKBUILD
index 7c1c73acfb3..fb2088efc19 100644
--- a/testing/asteroid-flashlight/APKBUILD
+++ b/testing/asteroid-flashlight/APKBUILD
@@ -1,9 +1,11 @@
# Contributor: Bart Ribbers <bribbers@disroot.org>
# Maintainer: Bart Ribbers <bribbers@disroot.org>
+
+# The group tag is just to easily find this APKBUILD by some scripts for automation
+# group=asteroid
pkgname=asteroid-flashlight
-pkgver=0_git20210517
+pkgver=2.0.0
pkgrel=0
-_commit="967f5c0ef9d312b369138f24beae2c8ae30b0c06"
pkgdesc="Default flashlight app for AsteroidOS"
url="https://github.com/AsteroidOS/asteroid-flashlight"
# armhf blocked by qml-asteroid
@@ -18,13 +20,13 @@ makedepends="
qml-asteroid-dev
qt5-qtbase-dev
qt5-qtdeclarative-dev
+ samurai
"
-source="https://github.com/AsteroidOS/asteroid-flashlight/archive/$_commit/asteroid-flashlight-$_commit.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/AsteroidOS/asteroid-flashlight/archive/refs/tags/$pkgver.tar.gz"
options="!check" # No tests
-builddir="$srcdir/$pkgname-$_commit"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib
@@ -36,5 +38,5 @@ package() {
}
sha512sums="
-1a3da1e9b4e2c28f3febc48f2b93bc83a1dfddf3e347c08849e5308591d638b9d92009824f648b526ec492bc2cc6e6d4d64ac353e28be2e569640f59bd5eb948 asteroid-flashlight-967f5c0ef9d312b369138f24beae2c8ae30b0c06.tar.gz
+002a9d3d75857c08f270a6cd273e10422059143f3cdcf616bbaee470708b9d8f620d683d9aa95b6b65b26cdc88547e10833aba9e89a98d735dbe5e3f037f3bf9 asteroid-flashlight-2.0.0.tar.gz
"
diff --git a/testing/asteroid-hrm/APKBUILD b/testing/asteroid-hrm/APKBUILD
index 96071c82234..d0020d71cf5 100644
--- a/testing/asteroid-hrm/APKBUILD
+++ b/testing/asteroid-hrm/APKBUILD
@@ -1,9 +1,11 @@
# Contributor: Bart Ribbers <bribbers@disroot.org>
# Maintainer: Bart Ribbers <bribbers@disroot.org>
+
+# The group tag is just to easily find this APKBUILD by some scripts for automation
+# group=asteroid
pkgname=asteroid-hrm
-pkgver=0_git20210517
+pkgver=2.0.0
pkgrel=0
-_commit="6d3c74f37162281026ca3f70c6b2a08de4fc655f"
pkgdesc="Default heart-rate-monitor app for AsteroidOS"
url="https://github.com/AsteroidOS/asteroid-hrm"
# armhf blocked by qt5-qtsensors
@@ -18,13 +20,13 @@ makedepends="
qml-asteroid-dev
qt5-qtbase-dev
qt5-qtdeclarative-dev
+ samurai
"
-source="https://github.com/AsteroidOS/asteroid-hrm/archive/$_commit/asteroid-hrm-$_commit.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/AsteroidOS/asteroid-hrm/archive/refs/tags/$pkgver.tar.gz"
options="!check" # No tests
-builddir="$srcdir/$pkgname-$_commit"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr
cmake --build build
@@ -35,5 +37,5 @@ package() {
}
sha512sums="
-8ab873896753c513d5d7335a6b8cde70ae562be486b9b54926371412c3b23a004afeb42be12548a10e72eb850a48deac7244e51c69fe546252689b5215a293fd asteroid-hrm-6d3c74f37162281026ca3f70c6b2a08de4fc655f.tar.gz
+83a8d1bf9bde82d08111ee0a7bb51e9b3fc3613eceb0d6ce03ccc36add6187d5865fa2ca697450a60eb830ffd5e3a7c26c73a33d98c97df9a18db9f3f5a5b55e asteroid-hrm-2.0.0.tar.gz
"
diff --git a/testing/asteroid-icons-ion/APKBUILD b/testing/asteroid-icons-ion/APKBUILD
index d98bcac4649..1b26516c7e9 100644
--- a/testing/asteroid-icons-ion/APKBUILD
+++ b/testing/asteroid-icons-ion/APKBUILD
@@ -1,16 +1,17 @@
# Contributor: Bart Ribbers <bribbers@disroot.org>
# Maintainer: Bart Ribbers <bribbers@disroot.org>
+
+# The group tag is just to easily find this APKBUILD by some scripts for automation
+# group=asteroid
pkgname=asteroid-icons-ion
-pkgver=0_git20200825
+pkgver=2.0.0
pkgrel=0
-_commit="269c72f9e57f3ee998c4f87851f81436ad5d3771"
pkgdesc="Default set of icons of AsteroidOS"
url="https://github.com/AsteroidOS/asteroid-icons-ion"
arch="noarch"
license="MIT"
-source="https://github.com/AsteroidOS/asteroid-icons-ion/archive/$_commit/asteroid-icons-ion-$_commit.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/AsteroidOS/asteroid-icons-ion/archive/refs/tags/$pkgver.tar.gz"
options="!check" # No code to test
-builddir="$srcdir/$pkgname-$_commit"
package() {
cd src
@@ -19,4 +20,6 @@ package() {
done
}
-sha512sums="cf3676d84ddd82263c97d73509e8d0ed2f5463d5ef5bcd2b34a94935d04067a06242612b610332c6ba525f1431a3fd736b0f75a392f88251aae3abf3420f270d asteroid-icons-ion-269c72f9e57f3ee998c4f87851f81436ad5d3771.tar.gz"
+sha512sums="
+d8969d8b49079792b7a7f3f017762a70bdfc117e54c8057d6c06e1c36cd1158442f4e1054eca7798d6a1b2385bba12aede8c294f39afbfeb6d56946f6a2f2ba3 asteroid-icons-ion-2.0.0.tar.gz
+"
diff --git a/testing/asteroid-languages/APKBUILD b/testing/asteroid-languages/APKBUILD
index 522aadbfa7b..9b0ca51f3c3 100644
--- a/testing/asteroid-languages/APKBUILD
+++ b/testing/asteroid-languages/APKBUILD
@@ -1,9 +1,9 @@
# Contributor: Bart Ribbers <bribbers@disroot.org>
# Maintainer: Bart Ribbers <bribbers@disroot.org>
pkgname=asteroid-languages
-pkgver=0_git20210411
+pkgver=0_git20230112
pkgrel=0
-_commit="8e49483d35ec5593b3a19d025d817c58562d20c1"
+_commit="162f8cffeae4af2ddfd8f74efd3e2f8a04d455a5"
pkgdesc="Set of config files describing the languages that are available on AsteroidOS"
url="https://github.com/AsteroidOS/supported-languages"
# armhf blocked by nemo-qml-plugin-calendar
@@ -22,4 +22,6 @@ package() {
done
}
-sha512sums="26ada4b5c2b00c7771a80c887e11a3d3b0b109764c5fa448e0bb049e2414a77575d086e82b5b62a56b1b3b0747aa346cd27edbc501fbad8bb96d201dc4ed429d asteroid-languages-8e49483d35ec5593b3a19d025d817c58562d20c1.tar.gz"
+sha512sums="
+9dd3bfd6990532d2a41564d8fe47e2f7b04f88799e0723d8c90addaca44d593c2a93dfa919ff3fe1a34bdc9f2b6d6b2c94ac0e0e832e499c52ad9fcfe09452b0 asteroid-languages-162f8cffeae4af2ddfd8f74efd3e2f8a04d455a5.tar.gz
+"
diff --git a/testing/asteroid-launcher/APKBUILD b/testing/asteroid-launcher/APKBUILD
index 0f5d5be363d..3d6b98f36d9 100644
--- a/testing/asteroid-launcher/APKBUILD
+++ b/testing/asteroid-launcher/APKBUILD
@@ -1,14 +1,15 @@
# Contributor: Bart Ribbers <bribbers@disroot.org>
# Maintainer: Bart Ribbers <bribbers@disroot.org>
+
+# The group tag is just to easily find this APKBUILD by some scripts for automation
+# group=asteroid
pkgname=asteroid-launcher
-pkgver=0_git20220430
+pkgver=2.0.0
pkgrel=0
-_commit="3a1935426ae285a516dc82ab760da32e443199fb"
pkgdesc="AsteroidOS launcher and Wayland compositor based on Qt5, QML and QtWayland via Lipstick"
url="https://github.com/AsteroidOS/asteroid-launcher"
# armhf blocked by nemo-qml-plugin-calendar
-# riscv64 blocked by mce
-arch="all !armhf !riscv64"
+arch="all !armhf"
license="BSD-3-Clause AND MIT"
depends="
asteroid-icons-ion
@@ -20,37 +21,40 @@ depends="
nemo-qml-plugin-configuration
nemo-qml-plugin-systemsettings
nemo-qml-plugin-time
- qml-asteroid
qt5-qtgraphicaleffects
"
# Normally we shouldn't hard depend on fonts, but in this case these fonts are
# hardcoded for some supported watchfaces
depends="$depends
font-noto-emoji
+ font-opensans
font-raleway-otf
font-roboto
- ttf-opensans
"
makedepends="
+ extra-cmake-modules
lipstick-asteroidos-dev
+ qml-asteroid-dev
qt5-qtbase-dev
+ samurai
"
subpackages="$pkgname-dbg"
-source="https://github.com/AsteroidOS/asteroid-launcher/archive/$_commit/asteroid-launcher-$_commit.tar.gz"
-builddir="$srcdir/$pkgname-$_commit"
+source="$pkgname-$pkgver.tar.gz::https://github.com/AsteroidOS/asteroid-launcher/archive/refs/tags/$pkgver.tar.gz"
build() {
- qmake-qt5 \
- PREFIX=/usr
- make
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=MinSizeRel \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib
+ cmake --build build
}
check() {
- make check
+ ctest --test-dir build --output-on-failure
}
package() {
- INSTALL_ROOT="$pkgdir" make install
+ DESTDIR="$pkgdir" cmake --install build
install -dm755 "$pkgdir"/usr/share/translations
lrelease-qt5 -idbased i18n/asteroid-launcher.*.ts
@@ -58,5 +62,5 @@ package() {
}
sha512sums="
-86bfaac065ca0974e2a124c2d434caf161809a9c4195050ee41598c6aa89ed59c88ce66c5851c883b7a0b9663d777049967975db741db4630c1ea6a1a01f7649 asteroid-launcher-3a1935426ae285a516dc82ab760da32e443199fb.tar.gz
+67b3c9ad5842e64036b4ac7f459258c7264a356bef6b13a72078523e808ddae815d47724ed2ad2c10bb4d3c06a756628dcb83d7f7d6021ba86caede0ce5340c8 asteroid-launcher-2.0.0.tar.gz
"
diff --git a/testing/asteroid-music/APKBUILD b/testing/asteroid-music/APKBUILD
index 4231324a6fb..af7cdb8cdc5 100644
--- a/testing/asteroid-music/APKBUILD
+++ b/testing/asteroid-music/APKBUILD
@@ -1,9 +1,11 @@
# Contributor: Bart Ribbers <bribbers@disroot.org>
# Maintainer: Bart Ribbers <bribbers@disroot.org>
+
+# The group tag is just to easily find this APKBUILD by some scripts for automation
+# group=asteroid
pkgname=asteroid-music
-pkgver=0_git20210517
+pkgver=2.0.0
pkgrel=0
-_commit="a3a13db9ce31e8a75f339adf36940aa48128fe1a"
pkgdesc="Default music app for AsteroidOS"
url="https://github.com/AsteroidOS/asteroid-music"
# armhf blocked by qml-asteroid
@@ -15,13 +17,13 @@ makedepends="
qml-asteroid-dev
qt5-qtbase-dev
qt5-qtdeclarative-dev
+ samurai
"
-source="https://github.com/AsteroidOS/asteroid-music/archive/$_commit/asteroid-music-$_commit.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/AsteroidOS/asteroid-music/archive/refs/tags/$pkgver.tar.gz"
options="!check" # No tests
-builddir="$srcdir/$pkgname-$_commit"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib
@@ -33,5 +35,5 @@ package() {
}
sha512sums="
-96380403afc2192a4c4c7065a5a05ed49d033b8c5d6de0ea4c8d128caca05171f8fbc40e220cef5fb0160988e17787e2d376d0786b70709c1bcdc4435426d1ad asteroid-music-a3a13db9ce31e8a75f339adf36940aa48128fe1a.tar.gz
+aafc8a7d0fbec29f2a2008a28fb7dfffca9699ddbca346fe65c83e770c3f279e0723ec75074ed2c238de5ebfbd47b887f5e49998bee63500be7a211b0b1f6ba9 asteroid-music-2.0.0.tar.gz
"
diff --git a/testing/asteroid-settings/APKBUILD b/testing/asteroid-settings/APKBUILD
index cac25b73e0e..877a1de9ae7 100644
--- a/testing/asteroid-settings/APKBUILD
+++ b/testing/asteroid-settings/APKBUILD
@@ -1,9 +1,11 @@
# Contributor: Bart Ribbers <bribbers@disroot.org>
# Maintainer: Bart Ribbers <bribbers@disroot.org>
+
+# The group tag is just to easily find this APKBUILD by some scripts for automation
+# group=asteroid
pkgname=asteroid-settings
-pkgver=0_git20211128
+pkgver=2.0.0
pkgrel=0
-_commit="2e9b722ad2611486694d5172322dcca39447dc9c"
pkgdesc="Default settings app for AsteroidOS"
url="https://github.com/AsteroidOS/asteroid-settings"
# armhf blocked by nemo-qml-plugin-systemsettings
@@ -25,13 +27,13 @@ makedepends="
qt5-qtbase-dev
qt5-qtdeclarative-dev
qt5-qtmultimedia-dev
+ samurai
"
-source="https://github.com/AsteroidOS/asteroid-settings/archive/$_commit/asteroid-settings-$_commit.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/AsteroidOS/asteroid-settings/archive/refs/tags/$pkgver.tar.gz"
options="!check" # No tests
-builddir="$srcdir/$pkgname-$_commit"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr
cmake --build build
@@ -42,5 +44,5 @@ package() {
}
sha512sums="
-5a007aa3e8c492ebb7e6dff68f7953d5df69839c068258043768c89f9a1421220b5075bd6463cecfe37bb8e3f8053d544aa98e4d8855104f25aeb4506936ed84 asteroid-settings-2e9b722ad2611486694d5172322dcca39447dc9c.tar.gz
+90ea5c3d13926b53d021d623b0816e65bdb4c18e8ab12c69dd502c5dfc113306bd2cab94e49e4d993d642e4c02e89878b5f02234cd5b616d595e6ab6aaeefa31 asteroid-settings-2.0.0.tar.gz
"
diff --git a/testing/asteroid-stopwatch/APKBUILD b/testing/asteroid-stopwatch/APKBUILD
index a3f0c5348ea..0d0fd381595 100644
--- a/testing/asteroid-stopwatch/APKBUILD
+++ b/testing/asteroid-stopwatch/APKBUILD
@@ -1,9 +1,11 @@
# Contributor: Bart Ribbers <bribbers@disroot.org>
# Maintainer: Bart Ribbers <bribbers@disroot.org>
+
+# The group tag is just to easily find this APKBUILD by some scripts for automation
+# group=asteroid
pkgname=asteroid-stopwatch
-pkgver=0_git20210517
+pkgver=2.0.0
pkgrel=0
-_commit="fdc71d176c3d2c3e569c1d26998d4def12d9d1c3"
pkgdesc="Default stopwatch app for AsteroidOS"
url="https://github.com/AsteroidOS/asteroid-stopwatch"
# armhf blocked by qml-asteroid
@@ -15,13 +17,13 @@ makedepends="
qml-asteroid-dev
qt5-qtbase-dev
qt5-qtdeclarative-dev
+ samurai
"
-source="https://github.com/AsteroidOS/asteroid-stopwatch/archive/$_commit/asteroid-stopwatch-$_commit.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/AsteroidOS/asteroid-stopwatch/archive/refs/tags/$pkgver.tar.gz"
options="!check" # No tests
-builddir="$srcdir/$pkgname-$_commit"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr
cmake --build build
@@ -32,5 +34,5 @@ package() {
}
sha512sums="
-c0037dedbeaf7b0a82c7a3d905a963617be14e7f988c776b310f6600deab5c175d66c32a11729001b871f57a56747afbffb17287ef295700c1edfdd688767f5d asteroid-stopwatch-fdc71d176c3d2c3e569c1d26998d4def12d9d1c3.tar.gz
+7bb3fc9b9853bdd226f9ada224337a8b9acc1a0ddcb235a84cbf09822ee97f976e75316a3011fbc416c3f61ba01dec7e1c2177956fa82efca01df04059559f53 asteroid-stopwatch-2.0.0.tar.gz
"
diff --git a/testing/asteroid-timer/APKBUILD b/testing/asteroid-timer/APKBUILD
index 01c70d535c9..4bd71602b72 100644
--- a/testing/asteroid-timer/APKBUILD
+++ b/testing/asteroid-timer/APKBUILD
@@ -1,9 +1,11 @@
# Contributor: Bart Ribbers <bribbers@disroot.org>
# Maintainer: Bart Ribbers <bribbers@disroot.org>
+
+# The group tag is just to easily find this APKBUILD by some scripts for automation
+# group=asteroid
pkgname=asteroid-timer
-pkgver=0_git20210517
+pkgver=2.0.0
pkgrel=0
-_commit="7a7e9475f7032dec63cea1bdb943828fadac363f"
pkgdesc="Default timer app for AsteroidOS"
url="https://github.com/AsteroidOS/asteroid-timer"
# armhf blocked by qml-asteroid
@@ -18,13 +20,13 @@ makedepends="
qml-asteroid-dev
qt5-qtbase-dev
qt5-qtdeclarative-dev
+ samurai
"
-source="https://github.com/AsteroidOS/asteroid-timer/archive/$_commit/asteroid-timer-$_commit.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/AsteroidOS/asteroid-timer/archive/refs/tags/$pkgver.tar.gz"
options="!check" # No tests
-builddir="$srcdir/$pkgname-$_commit"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr
cmake --build build
@@ -35,5 +37,5 @@ package() {
}
sha512sums="
-ddc5610385f896b093bf8bde497890520c939418b022c5cd4cb1e5990fb3bb609c967ea842bc59b29f7d018fb9e2bc2e031406d2c73767bddc395bee87401df0 asteroid-timer-7a7e9475f7032dec63cea1bdb943828fadac363f.tar.gz
+a4cc9b0702ce9fe7e7465d24ee6f7714444f35f56dfcc20de17aef3db564fc2eaf84ee02d9e1abad76532feffbe3772b9e8efc9b0abf2dcc9fa314e9a17e7b35 asteroid-timer-2.0.0.tar.gz
"
diff --git a/testing/asteroid-wallpapers/APKBUILD b/testing/asteroid-wallpapers/APKBUILD
index 7b9d5904175..778b7603d38 100644
--- a/testing/asteroid-wallpapers/APKBUILD
+++ b/testing/asteroid-wallpapers/APKBUILD
@@ -1,16 +1,17 @@
# Contributor: Bart Ribbers <bribbers@disroot.org>
# Maintainer: Bart Ribbers <bribbers@disroot.org>
+
+# The group tag is just to easily find this APKBUILD by some scripts for automation
+# group=asteroid
pkgname=asteroid-wallpapers
-pkgver=0_git20220112
+pkgver=2.0.0
pkgrel=0
-_commit="9e0ba318b07dbff317bded53d4cfda1b6cc330c8"
pkgdesc="Default set of wallpapers for AsteroidOS"
url="https://github.com/AsteroidOS/asteroid-wallpapers"
arch="noarch"
license="CC0-1.0 AND CC-BY-2.0 AND CC-BY-NC-SA-2.0"
-source="https://github.com/AsteroidOS/asteroid-wallpapers/archive/$_commit/asteroid-wallpapers-$_commit.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/AsteroidOS/asteroid-wallpapers/archive/refs/tags/$pkgver.tar.gz"
options="!check" # No code to test
-builddir="$srcdir/$pkgname-$_commit"
package() {
install -dm755 "$pkgdir"/usr/share/asteroid-launcher/wallpapers
@@ -20,5 +21,5 @@ package() {
}
sha512sums="
-a1e1bd9267bc39eef66bccc50c8fd76941e41cfc3d345cd72ddb39bc0381c91c78ab2540c1d69d0e15930a520ddcacb76fa5c843d49b2ab9877ddfd3ad174685 asteroid-wallpapers-9e0ba318b07dbff317bded53d4cfda1b6cc330c8.tar.gz
+6acfbb74f7620abfa57acb72f3f044ccec082beb1fb5111bba9256201088ca68d20c1f838c7fda8495afc5462813a07461aff09099129190ad3d11cd84451932 asteroid-wallpapers-2.0.0.tar.gz
"
diff --git a/testing/asteroid-weather/APKBUILD b/testing/asteroid-weather/APKBUILD
index c84bdaf6076..0a5e998f1fe 100644
--- a/testing/asteroid-weather/APKBUILD
+++ b/testing/asteroid-weather/APKBUILD
@@ -1,9 +1,11 @@
# Contributor: Bart Ribbers <bribbers@disroot.org>
# Maintainer: Bart Ribbers <bribbers@disroot.org>
+
+# The group tag is just to easily find this APKBUILD by some scripts for automation
+# group=asteroid
pkgname=asteroid-weather
-pkgver=0_git20210517
+pkgver=2.0.0
pkgrel=0
-_commit="358d8094ff99ae841c25fb563672a182d5851cc4"
pkgdesc="Default weather app for AsteroidOS"
url="https://github.com/AsteroidOS/asteroid-weather"
# armhf blocked by qml-asteroid
@@ -18,13 +20,13 @@ makedepends="
qml-asteroid-dev
qt5-qtbase-dev
qt5-qtdeclarative-dev
+ samurai
"
-source="https://github.com/AsteroidOS/asteroid-weather/archive/$_commit/asteroid-weather-$_commit.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/AsteroidOS/asteroid-weather/archive/refs/tags/$pkgver.tar.gz"
options="!check" # No tests
-builddir="$srcdir/$pkgname-$_commit"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr
cmake --build build
@@ -35,5 +37,5 @@ package() {
}
sha512sums="
-14abda266d9c1d708a5f34c002b0ff96eaa579ac0e3e69309e7eb8a37a652d8ad5f8ac0bcb9292fdb577d66c8af107e41e49b0be752d2e042c235b892ce8981f asteroid-weather-358d8094ff99ae841c25fb563672a182d5851cc4.tar.gz
+689890839110b96850d600ed1edfa501ceddbb4b892bc151cb6460274ca5255b0d96032c61a6440c063f87307942da5f0b68b0d7e04d23bb5e4df2b0af7f2598 asteroid-weather-2.0.0.tar.gz
"
diff --git a/testing/asuran-cli/APKBUILD b/testing/asuran-cli/APKBUILD
deleted file mode 100644
index 03ce453ad26..00000000000
--- a/testing/asuran-cli/APKBUILD
+++ /dev/null
@@ -1,41 +0,0 @@
-# Contributor: Duncan Bellamy <dunk@denkimushi.com>
-# Maintainer: Duncan Bellamy <dunk@denkimushi.com>
-pkgname=asuran-cli
-pkgver=0.1.6
-pkgrel=2
-pkgdesc="Asuran is a new archive format and rust implementation"
-url="https://gitlab.com/asuran-rs/asuran"
-arch="all !s390x !riscv64"
-license="BSD-2-Clause-Patent"
-# TODO: Replace openssl1.1-compat-dev with openssl-dev after upgrade
-makedepends="cargo openssl1.1-compat-dev"
-source="https://gitlab.com/asuran-rs/asuran/-/archive/v$pkgver/asuran-v$pkgver.tar.gz"
-builddir="$srcdir/asuran-v$pkgver"
-
-build() {
- local _rf=
- local _f=
- case "$CARCH" in
- x86_64) _rf="-C target-feature=+aes $_rf" ;;
- aarch64*) _rf="-C target-feature=+aes $_rf"
- _f="--features blake3-neon" ;;
- esac
-
- export RUSTFLAGS=$_rf
-
- cd asuran-cli
- cargo build --release --locked $_f
-}
-
-check() {
- cargo test all --release --locked
-}
-
-package() {
- cd asuran-cli
- cargo install --locked --path . --root="$pkgdir/usr"
- rm "$pkgdir"/usr/.crates.toml
- rm "$pkgdir"/usr/.crates2.json
-}
-
-sha512sums="2345b9ad0daedc4b21707bcdae72f7678f8e8d7adb470f78088ceb88f8ca18d1661bc5126d6199d5e904b528c7b5b50e9f8c3d770b28b72fcad64c17e9b87add asuran-v0.1.6.tar.gz"
diff --git a/testing/asymptote/APKBUILD b/testing/asymptote/APKBUILD
index c91e68b32d4..a7e631f70cb 100644
--- a/testing/asymptote/APKBUILD
+++ b/testing/asymptote/APKBUILD
@@ -1,11 +1,11 @@
# Contributor: Julian Weigt <juw@posteo.de>
# Maintainer: Julian Weigt <juw@posteo.de>
pkgname=asymptote
-pkgver=2.70
+pkgver=2.86
pkgrel=0
pkgdesc="A vector graphics language for technical drawing"
-url="http://asymptote.sourceforge.net/"
-arch="all !s390x !riscv64" #blocked by texlive
+url="https://asymptote.sourceforge.net/"
+arch="all !ppc64le !s390x !riscv64" #blocked by texlive
license="GPL-3.0-only"
depends="texlive texlive-dvi ghostscript"
### Optional dependencies
@@ -13,9 +13,11 @@ depends="texlive texlive-dvi ghostscript"
# fftw for fourier transform of data
# numpy pyqt5 cson and librsvg for GUI program xasy. I could not find cson for alpine though.
# freeglut for openGL support
-makedepends="zlib-dev texinfo autoconf"
+makedepends="zlib-dev texinfo autoconf bison flex texmf-dist-latexextra"
subpackages="$pkgname-doc"
-source="https://downloads.sourceforge.net/sourceforge/asymptote/asymptote-$pkgver.src.tgz"
+source="https://downloads.sourceforge.net/sourceforge/asymptote/asymptote-$pkgver.src.tgz
+ fix-nullopt-not-declared.patch
+ "
prepare() {
default_prepare
@@ -48,4 +50,7 @@ package() {
make -j1 DESTDIR="$pkgdir" install-all
}
-sha512sums="24d60af361e3f0309a896ce8163da6fc0a9d6587efe726c5acf874dcb74f4d51b4bad8146a615ff54173ef06dac53117fd1cc09c77940271adc9f64cac6bcfe6 asymptote-2.70.src.tgz"
+sha512sums="
+9e11dbfca10379f07b50dcce0d63c12b793f47741651b1804cf0825e87604c40b5b94acf343ce7f5ca7da83b5ebb0e213090ada80e0b6ebe4f6cec9db67209d6 asymptote-2.86.src.tgz
+54bb8b5d71d5ad663da60f4be9b725a9f00cdaf8dd68326a696683269b3bdcb07ba885d6347643c67159a7a38ec7b3196e7c1617fe99d41a4a1a62b135861fce fix-nullopt-not-declared.patch
+"
diff --git a/testing/asymptote/fix-nullopt-not-declared.patch b/testing/asymptote/fix-nullopt-not-declared.patch
new file mode 100644
index 00000000000..a1e0ddefce4
--- /dev/null
+++ b/testing/asymptote/fix-nullopt-not-declared.patch
@@ -0,0 +1,14 @@
+--- a/common.h
++++ b/common.h
+@@ -38,6 +38,11 @@
+ using nonstd::optional;
+ using nonstd::nullopt;
+ using nonstd::make_optional;
++#else
++#include <optional>
++using std::optional;
++using std::nullopt;
++using std::make_optional;
+ #endif
+ #endif
+
diff --git a/testing/async-profiler/APKBUILD b/testing/async-profiler/APKBUILD
deleted file mode 100644
index 4ea1917d09d..00000000000
--- a/testing/async-profiler/APKBUILD
+++ /dev/null
@@ -1,39 +0,0 @@
-# Contributor: Andrey Pustovetov <andrey.pustovetov@gmail.com>
-# Maintainer:
-pkgname=async-profiler
-pkgver=1.5
-pkgrel=2
-pkgdesc="Sampling CPU and HEAP profiler for Java featuring AsyncGetCallTrace + perf_events"
-url="https://github.com/jvm-profiling-tools/async-profiler"
-#arch="x86 x86_64"
-license="Apache-2.0"
-depends="bash"
-makedepends="linux-headers java-jdk"
-source="$pkgname-$pkgver.tar.gz::https://github.com/jvm-profiling-tools/async-profiler/archive/v$pkgver.tar.gz
- thread-smoke-test_should_do_some_real_work.patch
- "
-
-build() {
- make
-}
-
-check() {
- # exclude tests depended to modify /proc/sys/kernel/perf_event_paranoid
- JAVA_HOME="/usr/lib/jvm/default-jvm" \
- test/alloc-smoke-test.sh
- echo "All tests passed"
-}
-
-package() {
- local homedir="/usr/share/$pkgname"
- local destdir="$pkgdir/$homedir"
- mkdir -p "$destdir"
- install -Dm0644 "$builddir"/build/libasyncProfiler.so "$destdir"/build/libasyncProfiler.so
- install -Dm0755 "$builddir"/build/jattach "$destdir"/build/jattach
- install -Dm0755 "$builddir"/profiler.sh "$destdir"/profiler.sh
- mkdir -p "$pkgdir"/usr/bin
- ln -sf "$homedir"/profiler.sh "$pkgdir"/usr/bin/profiler.sh
-}
-
-sha512sums="a127f6c676e2f06c2690ea04da660e36a5c127dc22b9f2edec801bd1829bcd3fb608572a8e38fcfa1e27067da27b16f77d2cb1fa7848e6afdf4bdda361f47e86 async-profiler-1.5.tar.gz
-180d5a4231eab62399888491ae80338f38f0ebbfbd1157bea2d58bfc1f6c344d9ba144aa87deb11c2143a9df5dd21531fdcf98f2d5d9ce8f715e8caeb2b2ac2e thread-smoke-test_should_do_some_real_work.patch"
diff --git a/testing/async-profiler/thread-smoke-test_should_do_some_real_work.patch b/testing/async-profiler/thread-smoke-test_should_do_some_real_work.patch
deleted file mode 100644
index 3f0e4e83aaf..00000000000
--- a/testing/async-profiler/thread-smoke-test_should_do_some_real_work.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-diff --git a/test/ThreadsTarget.java b/test/ThreadsTarget.java
-index cc6289c..89b2ba9 100644
---- a/test/ThreadsTarget.java
-+++ b/test/ThreadsTarget.java
-@@ -1,3 +1,5 @@
-+import java.math.BigInteger;
-+
- public class ThreadsTarget {
- public static void main(String[] args) {
- new Thread(new Runnable() {
-@@ -17,17 +19,17 @@ public class ThreadsTarget {
-
- static void methodForThreadEarlyEnd() {
- long now = System.currentTimeMillis();
-- long counter = 0;
-+ BigInteger counter = BigInteger.ZERO;
- while (System.currentTimeMillis() - now < 300) {
-- counter++;
-+ counter = counter.nextProbablePrime();
- }
- }
-
- static void methodForRenamedThread() {
- long now = System.currentTimeMillis();
-- long counter = 0;
-+ BigInteger counter = BigInteger.ZERO;
- while (System.currentTimeMillis() - now < 1000) {
-- counter++;
-+ counter = counter.nextProbablePrime();
- }
- }
- }
diff --git a/testing/atari800/APKBUILD b/testing/atari800/APKBUILD
index 0820eca3054..088b6a4798b 100644
--- a/testing/atari800/APKBUILD
+++ b/testing/atari800/APKBUILD
@@ -1,7 +1,8 @@
# Contributor: Paul Bredbury <brebs@sent.com>
+# Maintainer:
pkgname=atari800
-pkgver=4.2.0
-pkgrel=1
+pkgver=5.2.0
+pkgrel=0
pkgdesc="Atari 8-bit computer emulator"
url="https://atari800.github.io/"
arch="x86_64"
@@ -26,4 +27,6 @@ package() {
make DESTDIR="$pkgdir" install
}
-sha512sums="b27326182bacd8e1951d052f57fcd3ba4d25bb4db569bf1a1fa69556b454d3d02a1986c36141a5470249ef30c8b37e34a508deafde64d1b710712ff8fcfc8e55 ATARI800_4_2_0.tar.gz"
+sha512sums="
+adcd19343c59771724f71d25d9c163843d953140696830e72520392519122f9b6b74cb8ceabf91618afc1cbdd30739342320f934ef63390a0c680243d9eac015 ATARI800_5_2_0.tar.gz
+"
diff --git a/testing/atlantik/APKBUILD b/testing/atlantik/APKBUILD
new file mode 100644
index 00000000000..155ca08cade
--- /dev/null
+++ b/testing/atlantik/APKBUILD
@@ -0,0 +1,53 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: team/kde <bribbers@disroot.org>
+
+# The group tag is just to easily find this APKBUILD by some scripts for automation
+# group=kde-other
+pkgname=atlantik
+# 3.5.10 is 15 years old but the latest commit is actually modern and even updated to Qt6
+pkgver=3.5.10_git20240323
+pkgrel=0
+_commit="6e505f9cd605b1055da3f0ed5d7996968b7d8280"
+# armhf blocked by extra-cmake-modules
+arch="all !armhf"
+url="https://apps.kde.org/atlantik/"
+pkgdesc="KDE client for playing Monopoly-like games on the monopd network"
+license="GPL-2.0-or-later AND GFDL-1.2-only"
+makedepends="
+ extra-cmake-modules
+ kconfig-dev
+ kconfigwidgets-dev
+ kcoreaddons-dev
+ kcrash-dev
+ kdoctools-dev
+ ki18n-dev
+ kiconthemes-dev
+ knotifications-dev
+ knotifyconfig-dev
+ kwidgetsaddons-dev
+ kxmlgui-dev
+ libkdegames-dev
+ qt6-qtbase-dev
+ samurai
+ "
+_repo_url="https://invent.kde.org/games/atlantik.git"
+source="$pkgname-$_commit.tar.gz::https://invent.kde.org/games/atlantik/-/archive/$_commit/atlantik-$_commit.tar.gz"
+subpackages="$pkgname-doc $pkgname-lang"
+options="!check" # No tests
+builddir="$srcdir/$pkgname-$_commit"
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=MinSizeRel \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+04b3ced08973b6af14b2427cf9abd2edf2a4b56d01aa1b0c959d1afaba4814ad2db9a56a72476076e9b9931af29b96ed3e68117164a22a5dabf25166ce3fc55f atlantik-6e505f9cd605b1055da3f0ed5d7996968b7d8280.tar.gz
+"
diff --git a/testing/atlas/APKBUILD b/testing/atlas/APKBUILD
new file mode 100644
index 00000000000..d96c978d335
--- /dev/null
+++ b/testing/atlas/APKBUILD
@@ -0,0 +1,53 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=atlas
+pkgver=0.19.0
+pkgrel=2
+pkgdesc="Database schema migration tool using modern DevOps principles"
+url="https://atlasgo.io/"
+# x86, armhf, armv7: multiple packages fail to build on 32-bit platforms due to integer overflow
+# riscv64: github.com/remyoudompheng/bigfft fails to build
+arch="all !x86 !armhf !armv7 !riscv64"
+license="Apache-2.0"
+makedepends="go sqlite-dev"
+subpackages="
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/ariga/atlas/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/$pkgname-$pkgver/cmd/atlas"
+options="net" # download Go modules
+
+export CGO_ENABLED=1 # required for sqlite driver
+export GOFLAGS="$GOFLAGS -tags=libsqlite3"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ go build -v -o atlas \
+ -ldflags "-X ariga.io/atlas/cmd/atlas/internal/cmdapi.version=v$pkgver"
+
+ for shell in bash fish zsh; do
+ ./atlas completion $shell > atlas.$shell
+ done
+}
+
+check() {
+ go test ./...
+}
+
+package() {
+ install -Dm755 atlas -t "$pkgdir"/usr/bin/
+
+ install -Dm644 atlas.bash \
+ "$pkgdir"/usr/share/bash-completion/completions/atlas
+ install -Dm644 atlas.fish \
+ "$pkgdir"/usr/share/fish/vendor_completions.d/atlas.fish
+ install -Dm644 atlas.zsh \
+ "$pkgdir"/usr/share/zsh/site-functions/_atlas
+}
+
+sha512sums="
+c24f18b98037892c20e0cadd4187819ce5a19679b132b6e81ac2d218bf3b3d845c79d17ea0d5f51e090fb72f6caf7ccd25c240040f9c32ce82c543a439668141 atlas-0.19.0.tar.gz
+"
diff --git a/testing/atomicparsley/APKBUILD b/testing/atomicparsley/APKBUILD
index e014f94990a..8229348529d 100644
--- a/testing/atomicparsley/APKBUILD
+++ b/testing/atomicparsley/APKBUILD
@@ -1,27 +1,31 @@
# Contributor: Francesco Colista <fcolista@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=atomicparsley
-pkgver=20210715
-_pkgtag=151551.e7ad03a
-pkgrel=0
+pkgver=20221229
+_pkgtag=172126.d813aa6
+pkgrel=1
pkgdesc="A command line program for reading, parsing and setting iTunes-style metadata in MPEG4 files"
-url="http://atomicparsley.sourceforge.net/"
+url="https://atomicparsley.sourceforge.net/"
arch="all"
options="!check" # no test/check available
license="GPL-2.0-or-later"
-makedepends="cmake automake autoconf libtool zlib-dev linux-headers"
-source="$pkgname-$pkgver.tar.gz::https://github.com/wez/atomicparsley/archive/${pkgver}.${_pkgtag}.tar.gz"
-builddir="$srcdir/$pkgname-${pkgver}.${_pkgtag}"
+makedepends="cmake samurai zlib-dev linux-headers"
+source="$pkgname-$pkgver.tar.gz::https://github.com/wez/atomicparsley/archive/$pkgver.$_pkgtag.tar.gz"
+builddir="$srcdir/$pkgname-$pkgver.$_pkgtag"
build() {
- cmake .
- cmake --build . --config Release
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCMAKE_INSTALL_PREFIX=/usr
+ cmake --build build
}
package() {
- install -Dm755 AtomicParsley "$pkgdir"/usr/bin/$pkgname
+ DESTDIR="$pkgdir" cmake --install build
+ # install -Dm755 AtomicParsley "$pkgdir"/usr/bin/AtomicParsley
+ ln -s AtomicParsley "$pkgdir"/usr/bin/$pkgname
}
sha512sums="
-9f58fe7426c9728f8e5624250ff57d7707a4b040365135fa5149909d84c536ecbddaa3820dae85ca8a4c31fc8009685bf56875f1d4ff6f5c854f05a30da6974a atomicparsley-20210715.tar.gz
+eb6de26f71a977cf4512f0d4249c3e0ae9225b5aef42a4bbdaaa54b022985f277095b7019c741a26078d26fba07e8dea7bf117017d0ef43d630751873e6b4899 atomicparsley-20221229.tar.gz
"
diff --git a/testing/atool/APKBUILD b/testing/atool/APKBUILD
index bab33ba7878..235fd73ee51 100644
--- a/testing/atool/APKBUILD
+++ b/testing/atool/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Camille Scholtz <onodera@openmailbox.org>
pkgname=atool
pkgver=0.39.0
-pkgrel=3
+pkgrel=4
pkgdesc="a Perl script for managing file archives of various types"
options="!check" # No testsuite
url="https://nongnu.org/atool/"
diff --git a/testing/aubio/APKBUILD b/testing/aubio/APKBUILD
deleted file mode 100644
index 0c84c5cf95d..00000000000
--- a/testing/aubio/APKBUILD
+++ /dev/null
@@ -1,38 +0,0 @@
-# Contributor: David Demelier <markand@malikania.fr>
-# Maintainer: David Demelier <markand@malikania.fr>
-pkgname=aubio
-pkgver=0.4.9
-pkgrel=0
-pkgdesc="tool designed for the extraction of annotations from audio signals"
-url="https://aubio.org"
-arch="all"
-license="GPL-3.0-or-later"
-makedepends="
- ffmpeg4-dev
- fftw-dev
- jack-dev
- libsamplerate-dev
- libsndfile-dev
- python3
- "
-subpackages="$pkgname-static $pkgname-dev"
-source="https://aubio.org/pub/aubio-$pkgver.tar.bz2
- unversioned-python.patch
- "
-
-build() {
- python3 waf configure --prefix=/usr
-}
-
-check() {
- # The waf file does not have a check target but the tests are run during the
- # package() function
- :
-}
-
-package() {
- python3 waf install --destdir="$pkgdir"
-}
-
-sha512sums="0cb81bb4b15051db3f3f4d160d500af56fdfb237e0a74e3f366f53c2870030aa0a7cee8469a611a9694c36b8866d3d42ffb48241c999de08f3fee43e6d903130 aubio-0.4.9.tar.bz2
-08ef8497caec4a6025bfada1e7718469943f71e1847d2b340731483d6b396da7d367b1a180f87d70590109bfe2e7bd74141aebc458c607f5f96fd42e618e7ea7 unversioned-python.patch"
diff --git a/testing/aubio/unversioned-python.patch b/testing/aubio/unversioned-python.patch
deleted file mode 100644
index b3979261fd4..00000000000
--- a/testing/aubio/unversioned-python.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-ff --git a/tests/create_tests_source.py b/tests/create_tests_source.py
-index 1feb1443..2c5560f4 100755
---- a/tests/create_tests_source.py
-+++ b/tests/create_tests_source.py
-@@ -1,4 +1,4 @@
--#! /usr/bin/env python
-+#!/usr/bin/python3
-
- """ Create a simple stereo file containing a sine tone at 441 Hz, using only
- python's built-in modules. """
-diff --git a/tests/wscript_build b/tests/wscript_build
-index c99a051e..d3fd0633 100644
---- a/tests/wscript_build
-+++ b/tests/wscript_build
-@@ -13,7 +13,7 @@ test_sound_abspath = bld.path.get_bld().make_node(test_sound_target)
- test_sound_abspath = str(test_sound_abspath).replace('\\', '\\\\')
-
- b = bld(name='create_tests_source',
-- rule='python ${SRC} ${TGT}',
-+ rule='python3 ${SRC} ${TGT}',
- source='create_tests_source.py',
- target=test_sound_target)
- # use post() to create the task, keep a reference to it
-
diff --git a/testing/aufs-util/APKBUILD b/testing/aufs-util/APKBUILD
index d8380c03e79..911e7d46d37 100644
--- a/testing/aufs-util/APKBUILD
+++ b/testing/aufs-util/APKBUILD
@@ -1,9 +1,9 @@
-# Maintainer: Natanael Copa <ncopa@alpinleinux.org>
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=aufs-util
pkgver=20161219
-pkgrel=0
+pkgrel=2
pkgdesc="Utilities for aufs"
-url="http://aufs.sourceforge.net/"
+url="https://aufs.sourceforge.net/"
arch="all"
license="GPL-2.0"
depends=""
diff --git a/testing/authenticator-rs/APKBUILD b/testing/authenticator-rs/APKBUILD
new file mode 100644
index 00000000000..9493886e94e
--- /dev/null
+++ b/testing/authenticator-rs/APKBUILD
@@ -0,0 +1,37 @@
+# Contributor: 3nodeproblem <git@3n.anonaddy.com>
+# Maintainer: 3nodeproblem <git@3n.anonaddy.com>
+pkgname=authenticator-rs
+pkgver=0.7.5
+pkgrel=0
+pkgdesc="TOTP MFA/2FA application written in Rust and GTK3"
+url="https://github.com/grumlimited/authenticator-rs"
+arch="x86_64 armv7 armhf aarch64 x86 ppc64le" # limited by rust and cargo
+license="GPL-3.0-or-later"
+subpackages="$pkgname-lang"
+makedepends="
+ cargo
+ curl-dev
+ gtk+3.0-dev
+ meson
+ openssl-dev>3
+ sqlite-dev
+ zlib-dev
+ "
+source="https://github.com/grumlimited/authenticator-rs/archive/refs/tags/$pkgver/authenticator-rs-$pkgver.tar.gz"
+options="net !check" # No tests
+
+# size optimisations
+
+
+build() {
+ RELEASE_VERSION=$pkgver make release-version
+ make release
+}
+
+package() {
+ DESTDIR="$pkgdir" make install
+}
+
+sha512sums="
+08f5362b4dc8deb8ed27caf08c2729dcdbf043382404d1e11f3d69e2862852246ea0d97e242e1c65363e05d83069c6a623e47fdc7dfce5d8623e39e5554faf31 authenticator-rs-0.7.5.tar.gz
+"
diff --git a/testing/autobrr/APKBUILD b/testing/autobrr/APKBUILD
new file mode 100644
index 00000000000..500b99599ee
--- /dev/null
+++ b/testing/autobrr/APKBUILD
@@ -0,0 +1,58 @@
+# Contributor: Fabricio Silva <hi@fabricio.dev>
+# Maintainer: Fabricio Silva <hi@fabricio.dev>
+pkgname=autobrr
+pkgver=1.40.1
+pkgrel=1
+pkgdesc="The modern download automation tool for torrents"
+url="https://autobrr.com/"
+arch="x86_64 aarch64 armv7"
+license="GPL-2.0-or-later"
+options="net"
+makedepends="go pnpm"
+subpackages="$pkgname-openrc"
+install="$pkgname.pre-install"
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/autobrr/autobrr/archive/v$pkgver.tar.gz
+ autobrr.initd
+ autobrr.confd
+ "
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+prepare() {
+ default_prepare
+
+ pnpm --dir web install --frozen-lockfile --ignore-scripts
+ go mod download
+}
+
+build() {
+ local ldflags="
+ -X main.version=v$pkgver
+ -X main.commit=alpine-r$pkgrel
+ -X main.date=$(date -u "+%Y-%m-%dT%H:%M:%SZ" ${SOURCE_DATE_EPOCH:+-d @$SOURCE_DATE_EPOCH})
+ "
+
+ pnpm --dir web run build
+ mkdir -p bin
+ go build -ldflags "$ldflags" -o bin/ ./cmd/...
+}
+
+check() {
+ go test ./...
+}
+
+package() {
+ install -Dm755 ./bin/* -t "$pkgdir"/usr/bin
+
+ install -Dm755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
+ install -Dm644 "$srcdir"/$pkgname.confd "$pkgdir"/etc/conf.d/$pkgname
+}
+
+sha512sums="
+13f7cb9e03ed93410edf46baf940b221f1323a0ac1576e28f68d57d384c88779e35f1fe0e505bbc7bfd62a68f2319cf39ae2147acec9845853b623bef7941118 autobrr-1.40.1.tar.gz
+42ce693eca67ca8b4c863440ebfb3efb41c197302274ccecd1b080c3e1f01e03078ab46b2fae8ca6cf5add4153296adb10e324b02dbe89c939465305be49f760 autobrr.initd
+4072cabb7131a23283b1fecdd1370eb935ae156284972a5e503de36054a358f74112a40e200662386e85af51507213e3f25afdf343a2673e6ef372b7b5e04a80 autobrr.confd
+"
diff --git a/testing/autobrr/autobrr.confd b/testing/autobrr/autobrr.confd
new file mode 100644
index 00000000000..c749918fce1
--- /dev/null
+++ b/testing/autobrr/autobrr.confd
@@ -0,0 +1,9 @@
+# autobrr configuration options
+
+command_user="autobrr:autobrr" # user:group
+directory="/var/lib/autobrr"
+supervisor="supervise-daemon"
+logdir="/var/log/autobrr"
+
+# Environment variables overrides the config file
+export AUTOBRR__LOG_PATH="$logdir/output.log"
diff --git a/testing/autobrr/autobrr.initd b/testing/autobrr/autobrr.initd
new file mode 100644
index 00000000000..812e0a3bb29
--- /dev/null
+++ b/testing/autobrr/autobrr.initd
@@ -0,0 +1,22 @@
+#!/sbin/openrc-run
+
+# fallback values for /etc/conf.d/autobrr
+: ${command_user:=autobrr:autobrr}
+: ${directory:=/var/lib/autobrr}
+: ${logdir:=/var/log/autobrr}
+
+name=autobrr
+description="autobrr daemon"
+command="/usr/bin/autobrr"
+command_args="--config=$directory"
+command_background=true
+pidfile="/run/$name.pid"
+
+depend() {
+ need net
+ use dns logger
+}
+
+start_pre() {
+ checkpath -d -o "$command_user" "$directory" "$logdir"
+}
diff --git a/testing/autobrr/autobrr.pre-install b/testing/autobrr/autobrr.pre-install
new file mode 100644
index 00000000000..e58322718e8
--- /dev/null
+++ b/testing/autobrr/autobrr.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S autobrr 2>/dev/null
+adduser -S -D -h /var/lib/autobrr -s /sbin/nologin -G autobrr -g autobrr autobrr 2>/dev/null
+
+exit 0
diff --git a/testing/autorandr/APKBUILD b/testing/autorandr/APKBUILD
new file mode 100644
index 00000000000..d3596ffdf8f
--- /dev/null
+++ b/testing/autorandr/APKBUILD
@@ -0,0 +1,51 @@
+# Contributor: Alex Denes <caskd@redxen.eu>
+# Maintainer: Alex Denes <caskd@redxen.eu>
+pkgname=autorandr
+pkgver=1.15
+pkgrel=0
+pkgdesc="Auto-detect the connected display hardware and load the appropriate X11 setup using xrandr"
+url="https://github.com/phillipberndt/autorandr"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="
+ py3-packaging
+ python3
+ xdpyinfo
+ xrandr
+ "
+makedepends="
+ bash-completion-dev
+ libxcb-dev
+ py3-setuptools_scm
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/phillipberndt/autorandr/archive/$pkgver.tar.gz"
+subpackages="
+ $pkgname-udev
+ $pkgname-doc
+ $pkgname-launcher::all
+ $pkgname-bash-completion
+ "
+options="!check" # no tests
+
+package() {
+ make DESTDIR="$pkgdir" \
+ UDEV_RULES_DIR="/etc/udev/rules.d" install_udev \
+ install_manpage \
+ install_bash_completion \
+ install_launcher \
+ install_autorandr
+}
+
+udev() {
+ install_if="$pkgname=$pkgver-r$pkgrel udev"
+ amove etc/udev/rules.d/
+}
+
+launcher() {
+ amove usr/bin/autorandr-launcher
+ amove etc/xdg/autostart/autorandr-launcher.desktop
+}
+
+sha512sums="
+2837348b755f5c4b30ad2b68e191e1969a467401cf32dda495dd19867e391f8b8b4a9c0b4958ef33f75c71aace46686995e27bab805e1e40cc4a1af44e9f0405 autorandr-1.15.tar.gz
+"
diff --git a/testing/autorestic/APKBUILD b/testing/autorestic/APKBUILD
new file mode 100644
index 00000000000..cf6525e6222
--- /dev/null
+++ b/testing/autorestic/APKBUILD
@@ -0,0 +1,31 @@
+# Contributor: Nicolas Lorin <androw95220@gmail.com>
+# Maintainer: Nicolas Lorin <androw95220@gmail.com>
+pkgname=autorestic
+pkgver=1.8.2
+pkgrel=1
+pkgdesc="Config driven, easy backup cli for restic."
+url="https://github.com/cupcakearmy/autorestic"
+arch="all"
+license="Apache-2.0"
+# !check: no tests available
+# net: required to fetch go dependencies
+options="!check net"
+depends="restic"
+makedepends="go"
+source="$pkgname-$pkgver.tar.gz::https://github.com/cupcakearmy/autorestic/archive/refs/tags/v$pkgver.tar.gz"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ go build
+}
+
+package() {
+ install -Dm755 autorestic "$pkgdir"/usr/bin/autorestic
+}
+
+sha512sums="
+4413a553b7dec65ab185cce5b850b460664519975c585c337c30bf3ac7c8e5dc6bad8b852fb784ed7cbcb18c534930166c8f6d67793681c64872b6a35f2883f3 autorestic-1.8.2.tar.gz
+"
diff --git a/testing/autoscan/APKBUILD b/testing/autoscan/APKBUILD
new file mode 100644
index 00000000000..ef0acaa7e86
--- /dev/null
+++ b/testing/autoscan/APKBUILD
@@ -0,0 +1,50 @@
+# Contributor: Fabricio Silva <hi@fabricio.dev>
+# Maintainer: Fabricio Silva <hi@fabricio.dev>
+pkgname=autoscan
+pkgver=1.4.0
+pkgrel=3
+pkgdesc="Autoscan replaces the default Plex and Emby behaviour for picking up changes on the file system."
+url="https://github.com/Cloudbox/autoscan"
+arch="x86_64 aarch64 armv7"
+license="MIT"
+options="net" # for downloading Go modules
+makedepends="go"
+subpackages="$pkgname-openrc"
+install="$pkgname.pre-install"
+source="
+ $pkgname-v$pkgver.tar.gz::https://github.com/Cloudbox/autoscan/archive/v$pkgver.tar.gz
+ autoscan.initd
+ autoscan.confd
+ "
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ # strings used to parse "$Version ($GitCommit@$Timestamp)"
+ local ldflags="
+ -X main.Version=$pkgver
+ -X main.GitCommit=alpine
+ -X main.Timestamp=r$pkgrel
+ "
+
+ go build -ldflags "$ldflags" -o bin/autoscan ./cmd/autoscan
+}
+
+check() {
+ go test ./...
+}
+
+package() {
+ install -Dm755 bin/autoscan -t "$pkgdir"/usr/bin
+
+ install -Dm755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
+ install -Dm644 "$srcdir"/$pkgname.confd "$pkgdir"/etc/conf.d/$pkgname
+}
+
+sha512sums="
+4527a988797fcee2049e0d9c00a4544948c056d30402abefc9bedfa7b0c5d6e141c3ec9c23caefea3875378db2ba0cdc99cc1bed12aca2e66fc908af8296a133 autoscan-v1.4.0.tar.gz
+d567c68c0b346c96292dad19389f7c4a83609aae406f577d7cca9a1b2a336de3044224cb252ddb9a49dab874182e9a05fd549f102ad39ff12cc3b30bedf6a061 autoscan.initd
+7d1e0accbe7c5e7fe26652bd234ad4b7e5877c640ddf15cf5d1f6c621d1e7d1a5729af270414ddddaed4f0eee51ca88dd403f81fadb10fcc403100f56fd42629 autoscan.confd
+"
diff --git a/testing/autoscan/autoscan.confd b/testing/autoscan/autoscan.confd
new file mode 100644
index 00000000000..16dec8a9392
--- /dev/null
+++ b/testing/autoscan/autoscan.confd
@@ -0,0 +1,6 @@
+# autoscan configuration options
+
+command_user="autoscan:autoscan" # user:group
+directory="/var/lib/autoscan"
+logdir="/var/log/autoscan"
+supervisor="supervise-daemon"
diff --git a/testing/autoscan/autoscan.initd b/testing/autoscan/autoscan.initd
new file mode 100644
index 00000000000..3a36e5ed171
--- /dev/null
+++ b/testing/autoscan/autoscan.initd
@@ -0,0 +1,29 @@
+#!/sbin/openrc-run
+
+# fallback values for /etc/conf.d/autoscan
+: ${command_user:=autoscan:autoscan}
+: ${directory:=/var/lib/autoscan}
+: ${logdir:=/var/log/autoscan}
+
+name=autoscan
+description="autoscan daemon"
+command="/usr/bin/autoscan"
+command_args="
+ --config=$directory/config.yml
+ --database=$directory/autoscan.db
+ --log=$directory/activity.log"
+command_background=true
+
+pidfile="/run/$name.pid"
+output_log="$logdir/output.log"
+error_log="$logdir/error.log"
+
+depend() {
+ need net
+ use dns logger netmount
+}
+
+start_pre() {
+ checkpath -d -o "$command_user" "$directory" "$logdir"
+ checkpath -f -o "$command_user" "$output_log" "$error_log"
+}
diff --git a/testing/autoscan/autoscan.pre-install b/testing/autoscan/autoscan.pre-install
new file mode 100644
index 00000000000..01c3896f48a
--- /dev/null
+++ b/testing/autoscan/autoscan.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S autoscan 2>/dev/null
+adduser -S -D -h /var/lib/autoscan -s /sbin/nologin -G autoscan -g autoscan autoscan 2>/dev/null
+
+exit 0
diff --git a/testing/autotiling/APKBUILD b/testing/autotiling/APKBUILD
deleted file mode 100644
index b67d56824c1..00000000000
--- a/testing/autotiling/APKBUILD
+++ /dev/null
@@ -1,30 +0,0 @@
-# Contributor: Matthew.T.Hoare <matthew.t.hoare@gmail.com>
-# Maintainer: Matthew.T.Hoare <matthew.t.hoare@gmail.com>
-pkgname=autotiling
-pkgver=1.6
-pkgrel=0
-pkgdesc="Script for sway and i3 to automatically switch the horizontal/vertical window split orientation"
-url="https://github.com/nwg-piotr/autotiling"
-arch="noarch"
-options="!check" # no checks
-license="GPL-3.0-or-later"
-depends="py3-i3ipc"
-makedepends="py3-setuptools"
-source="$pkgname-$pkgver.tar.gz::https://github.com/nwg-piotr/autotiling/archive/v$pkgver.tar.gz"
-
-prepare() {
- default_prepare
- sed -e '/wheel/d' -i setup.cfg
-}
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-4f13f477a5a44605b4f1b33dfbb3d5db7abcb7a1c1cc309eef04ec6ffc1f2b33a0682bae8f7bcc83b851fa8a2ceb31b3d77d75030c8043a50c42a675089d9a83 autotiling-1.6.tar.gz
-"
diff --git a/testing/autotrash/APKBUILD b/testing/autotrash/APKBUILD
index d9b1f182203..b8d38066906 100644
--- a/testing/autotrash/APKBUILD
+++ b/testing/autotrash/APKBUILD
@@ -1,23 +1,29 @@
# Contributor: Thiago Perrotta <tbperrotta@gmail.com>
# Maintainer: Thiago Perrotta <tbperrotta@gmail.com>
pkgname=autotrash
-pkgver=0.4.4
-pkgrel=0
+pkgver=0.4.6
+pkgrel=1
pkgdesc="Tool to automatically purge old trashed files"
url="https://bneijt.nl/pr/autotrash/"
arch="noarch"
license="GPL-3.0-or-later"
depends="python3 py3-setuptools"
+makedepends="py3-gpep517 py3-poetry-core py3-installer"
options="!check" # no tests
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/a/autotrash/autotrash-$pkgver.tar.gz"
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --root="$pkgdir" --optimize=1 --skip-build
+ python3 -m installer -d "$pkgdir" \
+ .dist/autotrash*.whl
}
+
sha512sums="
-b39be5a5cf137dde74d104565a536ceb8208d0c900f0b900c94ae7320b5e65b788e90ffbaaa14f90810931997def2aabfe858a8a00e3b7d9252d6738c6036dc3 autotrash-0.4.4.tar.gz
+cfa59d025bb37ee31f0726e7f218f328af7e51c34de606fac384a342bd3e73761b313a3b71c4b2f3130125997640d5f18bd97ac6885d092749fc9e46aac744d5 autotrash-0.4.6.tar.gz
"
diff --git a/testing/avara/APKBUILD b/testing/avara/APKBUILD
index e00beb9bf48..ddcce248507 100644
--- a/testing/avara/APKBUILD
+++ b/testing/avara/APKBUILD
@@ -1,41 +1,43 @@
# Contributor: shrizza <shrizza@gmail.com>
# Maintainer: shrizza <shrizza@gmail.com>
-pkgname="avara"
-_sha="b8700db3c696b9813b511b06a92c9faab55b282a"
-pkgver="0_git20191006"
-pkgrel=1
+pkgname=avara
+pkgver=0.7.1
+pkgrel=0
pkgdesc="Port of the original 1996 Mac OS game from Ambrosia Software"
url="https://github.com/avaraline/Avara"
-arch="all"
+# videogame
+arch="all !armhf !s390x"
license="MIT"
-makedepends="clang clang-dev directfb-dev glu-dev sdl2_net-dev sdl2_mixer-dev sdl2"
+makedepends="
+ directfb-dev
+ glu-dev
+ sdl2-dev
+ sdl2_mixer-dev
+ sdl2_net-dev
+ rsync
+ "
options="!check"
-subpackages="$pkgname-doc"
-source="avara
- $pkgname-$pkgver.zip::https://github.com/avaraline/Avara/archive/$_sha.zip
- fix-includes.patch"
-builddir="$srcdir/Avara-$_sha"
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/avaraline/Avara/archive/refs/tags/$pkgver.tar.gz
+ avara
+ nullptr.patch
+ "
+builddir="$srcdir/Avara-$pkgver"
build() {
- make
+ make CC=${CC:-cc} CXX=${CXX:-c++} GIT_HASH=$pkgver GIT_BRANCH=alpine
}
package() {
- mkdir -p "$pkgdir/usr/bin/"
- install -Dm755 ../avara "$pkgdir/usr/bin/"
- mkdir -p "$pkgdir/var/games/$pkgname/"
- cp -r build/Avara "$pkgdir/var/games/$pkgname/"
- cp -r build/bsps "$pkgdir/var/games/$pkgname/"
- cp -r build/levels "$pkgdir/var/games/$pkgname/"
- cp -r build/rsrc "$pkgdir/var/games/$pkgname/"
- cp -r build/shaders "$pkgdir/var/games/$pkgname/"
- mkdir -p "$pkgdir/usr/share/doc/$pkgname/"
- install -Dm644 CONTRIBUTORS.md "$pkgdir/usr/share/doc/$pkgname/"
- install -Dm644 README.md "$pkgdir/usr/share/doc/$pkgname/"
+ install -Dm755 "$srcdir"/avara -t "$pkgdir"/usr/bin
+ mkdir -p "$pkgdir"/var/games/avara
+ cp -r build/Avara "$pkgdir"/var/games/avara/
+ cp -r build/levels "$pkgdir"/var/games/avara/
+ cp -r build/rsrc "$pkgdir"/var/games/avara/
}
sha512sums="
-928326dad78b077fe82f13f9c56a00996ef8555108e0964a72e73c84fb073a2d6a9e7a545d129f90386f5f30cf7976abc29a38ff71f7c6e114521f6c0dcd36bf avara
-03dfb9b173749fac97591053cd7d55976617eb4fb64bcb4286a1b511d18dcb557dcbb408bf4c4e5d5bf7c47f41b2134808613938a9535c51d5e486e123a9271c avara-0_git20191006.zip
-0e7e3522c0d2b2ac202951aecaafc5a7ce98f1a08f0f5876c97550457ae432662c569bfd6fe90cff2fee19e0ed4bd19c28b4b1a5aefab94813c2fc68275475df fix-includes.patch
+1ccb3419b11bd95b7ec529b5078bad2341737b4dd43215ffdbda020cf71e7832b5ec0f6c637a99c89ccd23ebb3f55fdcb6fc18d4f57b71f24aa83081b8be96b2 avara-0.7.1.tar.gz
+c0bb030ef44d732bb7a493df9d3b7d120159d37f25440711e2edfd3e11a896764ce88b58ae1f5e1f51d81809c95a7c6570122d042bb9c95af919f78d50524d9e avara
+92aaca8946ded9fd956fb1ab55c36b401918034b918407b326cbca136b5ce29f64a337a14fe18feb71018f6d3ca2ed53b03ce924d2a545d3686420d903e7fbbd nullptr.patch
"
diff --git a/testing/avara/avara b/testing/avara/avara
index 15048a9f5bc..6225c1a5d5b 100644
--- a/testing/avara/avara
+++ b/testing/avara/avara
@@ -1,3 +1,3 @@
#!/bin/sh
-/var/games/avara/Avara
+exec /var/games/avara/Avara "$@"
diff --git a/testing/avara/fix-includes.patch b/testing/avara/fix-includes.patch
deleted file mode 100644
index 5f61a39c189..00000000000
--- a/testing/avara/fix-includes.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-diff -upr b/src/game/CPlayerManager.h a/src/game/CPlayerManager.h
---- b/src/game/CPlayerManager.h 2021-07-21 17:34:18.436826042 +0200
-+++ a/src/game/CPlayerManager.h 2021-07-21 17:35:06.237594868 +0200
-@@ -15,6 +15,7 @@
- #include <SDL2/SDL.h>
- #include <map>
- #include <deque>
-+#include <string>
-
- enum {
- kLNotConnected,
-diff -upr b/vendor/nanogui/nanogui/common.h a/vendor/nanogui/nanogui/common.h
---- b/vendor/nanogui/nanogui/common.h 2021-07-21 17:34:18.550159448 +0200
-+++ a/vendor/nanogui/nanogui/common.h 2021-07-21 17:34:35.390170327 +0200
-@@ -28,6 +28,8 @@
- #include <stdint.h>
- #include <array>
- #include <vector>
-+#include <string>
-+#include <stdexcept>
- #include <SDL2/SDL.h>
-
- #include <glm/vec3.hpp> // glm::vec3
diff --git a/testing/avara/nullptr.patch b/testing/avara/nullptr.patch
new file mode 100644
index 00000000000..747ab2eeb4b
--- /dev/null
+++ b/testing/avara/nullptr.patch
@@ -0,0 +1,17 @@
+diff --git a/src/util/AvaraGL.cpp b/src/util/AvaraGL.cpp
+index b302c9a..5c3783f 100644
+--- a/src/util/AvaraGL.cpp
++++ b/src/util/AvaraGL.cpp
+@@ -334,10 +334,10 @@ void AvaraGLDrawPolygons(CBSPPart* part) {
+ glDisable(GL_CULL_FACE);
+ }
+
+- glBindVertexArray(NULL);
++ glBindVertexArray(0);
+ glCheckErrors();
+
+- glBindBuffer(GL_ARRAY_BUFFER, NULL);
++ glBindBuffer(GL_ARRAY_BUFFER, 0);
+ glCheckErrors();
+
+ }
diff --git a/testing/avarice/APKBUILD b/testing/avarice/APKBUILD
index df81772b032..cf728a59d01 100644
--- a/testing/avarice/APKBUILD
+++ b/testing/avarice/APKBUILD
@@ -1,19 +1,32 @@
# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
pkgname=avarice
pkgver=2.14
-pkgrel=1
+pkgrel=3
pkgdesc="AVaRICE interfaces with GDB and allows debugging of AVR MCUs"
-url="http://avarice.sourceforge.net/"
+url="https://github.com/avrdudes/avarice"
arch="all"
license="GPL-2.0-only"
-makedepends="binutils-dev libusb-dev libusb-compat-dev hidapi-dev perl"
+makedepends="
+ autoconf
+ automake
+ binutils-dev
+ hidapi-dev
+ libusb-compat-dev
+ libusb-dev
+ perl
+ "
depends="gdb-multiarch"
subpackages="$pkgname-doc"
-source="https://downloads.sourceforge.net/project/avarice/avarice/avarice-$pkgver/avarice-$pkgver.tar.bz2
+source="$pkgname-$pkgver.tar.gz::https://github.com/avrdudes/avarice/archive/refs/tags/avarice-rel-${pkgver/./_}.tar.gz
drop_keyword_unused.patch
"
+builddir="$srcdir/avarice-avarice-rel-${pkgver/./_}"
+
build() {
+ ./Bootstrap
+ # gcc12 defaults to 17 which fails due to throw()
+ export CXXFLAGS="$CXXFLAGS -std=c++14"
./configure \
--build=$CBUILD \
--host=$CHOST \
@@ -29,5 +42,7 @@ package() {
make DESTDIR="$pkgdir" install
}
-sha512sums="e0b23bd02bfa7d4dc05027f0f59ec7da868d8d0c0cd4f66595f6aaa5c335fa4eb64fc47399e51c0ed5112803ee99a3f041812bf4072dc096cc933cd17f9348a0 avarice-2.14.tar.bz2
-8e9faf7eab5807f3b100ba29e7aab857f91947981a25dccc3096c9462d777be9fb19cf410e8634884b3ce9299fe410e24d1cd107c4bdbf0a537b9f9322e7c627 drop_keyword_unused.patch"
+sha512sums="
+b302e91859f0a2891c80f036430468274b327b7f9168c042748e98d00e010b180be995343a47878acf2702637b402483c494aec4fb53063d5fc2d2fe82c58f83 avarice-2.14.tar.gz
+8e9faf7eab5807f3b100ba29e7aab857f91947981a25dccc3096c9462d777be9fb19cf410e8634884b3ce9299fe410e24d1cd107c4bdbf0a537b9f9322e7c627 drop_keyword_unused.patch
+"
diff --git a/testing/avdl/APKBUILD b/testing/avdl/APKBUILD
index b67c3750e7a..59ede86eb67 100644
--- a/testing/avdl/APKBUILD
+++ b/testing/avdl/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Tom Tsagk <tomtsagk@darkdimension.org>
# Maintainer: Tom Tsagk <tomtsagk@darkdimension.org>
pkgname=avdl
-pkgver=0.3.2
-pkgrel=0
+pkgver=0.4.3
+pkgrel=1
pkgdesc="Abstract video-game development language compiler"
url="https://darkdimension.org/avdl.html"
arch="all"
@@ -25,5 +25,5 @@ package() {
}
sha512sums="
-ad7b04bf5955034f2a4b33ebef66f7565c9a83c57500ae8813855ccbb8dfbada11bdf665f5553f6179eb52ec1d29226a50f84daac4985c53b0fc59e72c51fec8 avdl-0.3.2.tar.gz
+0c0f4b80810ff8575169fce3601cd93813f9e54763d0e4b4b3d447204b8560b17a34d3f69ed861a6712841abb5fc1426868f175b84008054d95b5c26fb024faf avdl-0.4.3.tar.gz
"
diff --git a/testing/avida/APKBUILD b/testing/avida/APKBUILD
index adf7dafb210..56828bad8cf 100644
--- a/testing/avida/APKBUILD
+++ b/testing/avida/APKBUILD
@@ -3,15 +3,17 @@ pkgname=avida
pkgver=0_git20190813
_sha=ca1f311bc1bcaf021390c63bce6aa9455bbd44cc
_apto_sha=9184c91a3a82297c420540baaf355aac80213a29
-pkgrel=0
+pkgrel=1
pkgdesc="A scientific software platform for conducting and analyzing experiments with self-replicating and evolving computer programs"
url="https://avida.devosoft.org/"
arch="x86 x86_64" # build currently fails on non-intel arches
license="GPL-3.0-only"
-makedepends="cmake linux-headers"
+makedepends="cmake linux-headers samurai"
source="$pkgname-$pkgver.tar.gz::https://github.com/devosoft/avida/archive/$_sha.tar.gz
apto.tar.gz::https://github.com/dmbryson/apto/archive/$_apto_sha.tar.gz
- 10-remove-forced-tcmalloc.patch"
+ 10-remove-forced-tcmalloc.patch
+ musl123.patch
+ "
builddir="$srcdir/avida-$_sha"
prepare() {
@@ -21,14 +23,14 @@ prepare() {
}
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_INSTALL_PREFIX:PATH=/usr \
-DCMAKE_BUILD_TYPE=None \
-DAVD_UNIT_TESTS:BOOL=ON \
-DAVD_ENABLE_TCMALLOC:BOOL=OFF \
-DHAVE_FUSED_MADD:BOOL=OFF \
-DCMAKE_CXX_FLAGS="$CXXFLAGS -Wno-expansion-to-defined"
- make -C build
+ cmake --build build
}
check() {
@@ -41,6 +43,9 @@ package() {
cp -R avida-core/support/* "$pkgdir"/usr/share/avida
}
-sha512sums="09332469e4aab96c0775f3d8e5a8e9c2544468bd6b461e5a30edac2d6fb0049fbb4db4860e54d94a2f010830a593377bc5345404ca6d78acba1e968a352f889d avida-0_git20190813.tar.gz
+sha512sums="
+09332469e4aab96c0775f3d8e5a8e9c2544468bd6b461e5a30edac2d6fb0049fbb4db4860e54d94a2f010830a593377bc5345404ca6d78acba1e968a352f889d avida-0_git20190813.tar.gz
e0f8aab74198f07e2edbd0d5083792eaab91a96c4065e1bba6295bb4d6a784665744d812ce1e40393a1da015a9048cbc6c15229dd20da2de9f32692b0d870cfb apto.tar.gz
-be92b7f3015cccaa64f2065bb552237176b044cbc16fa6dcef368b02aa53c9c3fdcfbb608b4fea2d6d720fe2a01f3362da87bf427fcb95942486c06fddba2892 10-remove-forced-tcmalloc.patch" \ No newline at end of file
+be92b7f3015cccaa64f2065bb552237176b044cbc16fa6dcef368b02aa53c9c3fdcfbb608b4fea2d6d720fe2a01f3362da87bf427fcb95942486c06fddba2892 10-remove-forced-tcmalloc.patch
+c1ef9b2176eba944fdb546fea64119a9515dfd8b3ab904eb7d7b621ac1d0734f7b20cd198df40356fa38280e21dfb126fb5601ca580a656c925f98338bb358cc musl123.patch
+"
diff --git a/testing/avida/musl123.patch b/testing/avida/musl123.patch
new file mode 100644
index 00000000000..e7d60080816
--- /dev/null
+++ b/testing/avida/musl123.patch
@@ -0,0 +1,13 @@
+diff --git a/avida-core/source/cpu/cTestCPUInterface.cc b/avida-core/source/cpu/cTestCPUInterface.cc
+index 7e78a59..a827712 100644
+--- a/avida-core/source/cpu/cTestCPUInterface.cc
++++ b/avida-core/source/cpu/cTestCPUInterface.cc
+@@ -152,7 +152,7 @@ int cTestCPUInterface::GetStateGridID(cAvidaContext& ctx)
+ Apto::Array<int> cTestCPUInterface::GetFormedGroupArray()
+ {
+ Apto::Array<int> null_array;
+- null_array.SetAll(NULL);
++ null_array.SetAll(0);
+ return null_array;
+ }
+
diff --git a/testing/avr-libc-git/APKBUILD b/testing/avr-libc-git/APKBUILD
new file mode 100644
index 00000000000..02e42b3c339
--- /dev/null
+++ b/testing/avr-libc-git/APKBUILD
@@ -0,0 +1,41 @@
+# Contributor: Stefan Wagner <stw@bit-strickerei.de>
+# Maintainer: Stefan Wagner <stw@bit-strickerei.de>
+pkgname=avr-libc-git
+_avrlibc_pkgver=2.1.0
+pkgver=0_git20240218
+_commit=22d588c80066102993263018d5324d1424c13f0d
+provides=avrlibc=$_avrlibc_pkgver
+pkgrel=4
+pkgdesc="The C runtime library for the AVR family of microcontrollers - git version"
+url="https://github.com/avrdudes/avr-libc"
+depends="gcc-avr"
+makedepends="
+ autoconf
+ automake
+ python3
+ "
+arch="x86_64 ppc64le aarch64 x86"
+license="BSD-3-Clause"
+subpackages="$pkgname-doc"
+builddir="$srcdir/$pkgname-$pkgname-${pkgver//./_}-release"
+source="
+ avr-libc-$_commit.tar.gz::https://github.com/avrdudes/avr-libc/archive/$_commit.tar.gz
+ "
+builddir="$srcdir/avr-libc-$_commit"
+
+build() {
+ ./bootstrap
+ CC=avr-gcc ./configure \
+ --build="$(/bin/sh config.guess)" \
+ --host=avr \
+ --prefix=/usr
+ make
+}
+
+package() {
+ make install DESTDIR="$pkgdir"
+}
+
+sha512sums="
+6c1651250cd3fb7b9207c6566b869f8203c17bfb9ffca0a55f3ec28fbed880b23123b3ecf56bbf54605dacfb0ca20906433d7f89cc966e145b126f2437ab7495 avr-libc-22d588c80066102993263018d5324d1424c13f0d.tar.gz
+"
diff --git a/testing/avra/APKBUILD b/testing/avra/APKBUILD
new file mode 100644
index 00000000000..ba11ad239ce
--- /dev/null
+++ b/testing/avra/APKBUILD
@@ -0,0 +1,27 @@
+# Contributor: Bryce Vandegrift <bryce@brycevandegrift.xyz>
+# Maintainer: Bryce Vandegrift <bryce@brycevandegrift.xyz>
+pkgname=avra
+pkgver=1.4.2
+pkgrel=0
+pkgdesc="Assembler for the Atmel AVR microcontroller family"
+url="https://github.com/Ro5bert/avra"
+arch="all"
+license="GPL-2.0-or-later"
+subpackages="$pkgname-dev"
+source="$pkgname-$pkgver.tar.gz::https://github.com/hsoft/avra/archive/$pkgver.tar.gz"
+
+build() {
+ make PREFIX=/usr
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" PREFIX="/usr" install
+}
+
+sha512sums="
+f51a43b1b28102d6180ce27e74b50642de8f3d18fa35a82904fddaac993e87e1096667f2245bebfad92e4ba3283330f6ac4b6083e486be5af9edca7b7e90e56f avra-1.4.2.tar.gz
+"
diff --git a/testing/aws-session-manager-plugin/001_correct_makefile.patch b/testing/aws-session-manager-plugin/001_correct_makefile.patch
new file mode 100644
index 00000000000..9b2eeb29cef
--- /dev/null
+++ b/testing/aws-session-manager-plugin/001_correct_makefile.patch
@@ -0,0 +1,50 @@
+# Corrects build configuration issues
+# Homogenizes build commands to make building on multiple carches easier
+# Enables ssmcli for armv7/aarch64
+--- a/makefile
++++ b/makefile
+@@ -1,5 +1,5 @@
+ COPY := cp -p
+-GO_BUILD := go build -i
++GO_BUILD := go build
+
+ # Default build configuration, can be overridden at build time.
+ GOARCH?=$(shell go env GOARCH)
+@@ -16,9 +16,9 @@
+
+ checkstyle::
+ # Run checkstyle script
+- $(GO_SPACE)/Tools/src/checkstyle.sh
++# $(GO_SPACE)/Tools/src/checkstyle.sh
+
+-build:: build-linux-amd64 build-linux-386 build-arm build-arm64 build-darwin-arm64 build-darwin-amd64 build-windows-amd64 build-windows-386
++build:: build-linux-amd64 build-linux-386 build-linux-arm build-linux-arm64 build-darwin-arm64 build-darwin-amd64 build-windows-amd64 build-windows-386
+
+ prepack:: prepack-linux-amd64 prepack-linux-386 prepack-linux-arm64 prepack-windows-386 prepack-windows-amd64
+
+@@ -97,17 +97,21 @@
+ GOOS=linux GOARCH=386 $(GO_BUILD) -ldflags "-s -w" -o $(GO_SPACE)/bin/linux_386/ssmcli -v \
+ $(GO_SPACE)/src/ssmcli-main/main.go
+
+-.PHONY: build-arm
+-build-arm: checkstyle copy-src pre-build
++.PHONY: build-linux-arm
++build-linux-arm: checkstyle copy-src pre-build
+ @echo "Build for ARM platform"
+ GOOS=linux GOARCH=arm GOARM=6 $(GO_BUILD) -ldflags "-s -w -extldflags=-Wl,-z,now,-z,relro,-z,defs" -o $(GO_SPACE)/bin/linux_arm_plugin/session-manager-plugin -v \
+ $(GO_SPACE)/src/sessionmanagerplugin-main/main.go
++ GOOS=linux GOARCH=arm GOARM=6 $(GO_BUILD) -ldflags "-s -w" -o $(GO_SPACE)/bin/linux_arm/ssmcli -v \
++ $(GO_SPACE)/src/ssmcli-main/main.go
+
+-.PHONY: build-arm64
+-build-arm64: checkstyle copy-src pre-build
++.PHONY: build-linux-arm64
++build-linux-arm64: checkstyle copy-src pre-build
+ @echo "Build for ARM64 platform"
+ GOOS=linux GOARCH=arm64 $(GO_BUILD) -ldflags "-s -w -extldflags=-Wl,-z,now,-z,relro,-z,defs" -o $(GO_SPACE)/bin/linux_arm64_plugin/session-manager-plugin -v \
+ $(GO_SPACE)/src/sessionmanagerplugin-main/main.go
++ GOOS=linux GOARCH=arm64 $(GO_BUILD) -ldflags "-s -w" -o $(GO_SPACE)/bin/linux_arm64/ssmcli -v \
++ $(GO_SPACE)/src/ssmcli-main/main.go
+
+ .PHONY: build-darwin-arm64
+ build-darwin-arm64: checkstyle copy-src pre-build
diff --git a/testing/aws-session-manager-plugin/APKBUILD b/testing/aws-session-manager-plugin/APKBUILD
new file mode 100644
index 00000000000..fc7dbbdf358
--- /dev/null
+++ b/testing/aws-session-manager-plugin/APKBUILD
@@ -0,0 +1,55 @@
+# Contributor: Will Sinatra <wpsinatra@gmail.com>
+# Maintainer: Will Sinatra <wpsinatra@gmail.com>
+pkgname=aws-session-manager-plugin
+pkgver=1.2.553.0
+pkgrel=0
+pkgdesc="AWS Session Manager Plugin for aws-cli."
+url="https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager-working-with-install-plugin.html"
+license="Apache-2.0"
+arch="x86_64 aarch64"
+# aws-cli is not packaged on the following arches due to missing dependency py3-awscrt
+# armhf, armv7, s390x, ppc64le
+# aws-cli is not packaged on the following arches due to compilation issues
+# x86
+depends="aws-cli amazon-ssm-agent"
+makedepends="go gcompat"
+source="$pkgname-$pkgver.tar.gz::https://github.com/aws/session-manager-plugin/archive/refs/tags/$pkgver.tar.gz
+ 001_correct_makefile.patch
+ ssmcli.initd
+ session-manager-plugin.initd"
+options="!check"
+builddir="$srcdir/session-manager-plugin-$pkgver"
+subpackages="$pkgname-openrc"
+
+case "$CARCH" in
+ armhf) build_arch=arm ;;
+ armv7) build_arch=arm ;;
+ x86) build_arch=x86 ;;
+ x86_64) build_arch=amd64 ;;
+ aarch64) build_arch=arm64 ;;
+esac
+
+build() {
+ make build-linux-$build_arch
+}
+
+package() {
+ #ssmcli
+ install -Dm0755 "$builddir"/bin/linux_$build_arch/ssmcli -t "$pkgdir"/usr/bin/
+ install -Dm0644 "$builddir"/bin/seelog_unix.xml -t "$pkgdir"/etc/amazon/ssmcli/seelog.xml
+
+ #session-manager-plugin
+ install -Dm0755 "$builddir"/bin/linux_${build_arch}_plugin/session-manager-plugin -t "$pkgdir"/usr/bin/
+ install -Dm0644 "$builddir"/bin/seelog_unix.xml -t "$pkgdir"/etc/amazon/sessionmanagerplugin/seelog.xml
+ install -Dm0644 "$builddir"/bin/seelog_windows.xml.template -t "$pkgdir"/etc/amazon/sessionmanagerplugin/
+
+ install -Dm0755 "$srcdir"/session-manager-plugin.initd -t "$pkgdir"/etc/init.d/session-manager-plugin
+ install -Dm0755 "$srcdir"/ssmcli.initd -t "$pkgdir"/etc/init.d/ssmcli
+}
+
+sha512sums="
+49d4715adfce526376bd4f4d2cf136779aff0912e904f7158a8dc3e163f77afbf43511358cb3e17587d16d2f81a55fae007ed8f04d144e513948f2b7878a2e45 aws-session-manager-plugin-1.2.553.0.tar.gz
+61df1f326d0963f8b81ccef56e87b907eff57cb98ecfb3839a61d008157bdcf8180609fdc23b75ad01cf3c7a99d89cd50e52f48c9b0c42144a166f27738394a4 001_correct_makefile.patch
+5e08d65a18117bcf821fea79ae03c69063196c116864ae7261ab58a07000c3dc04d53cdab50a47461ab2b08421f0d63a4c349d91d05223634cc8e4f1af8bca74 ssmcli.initd
+c0c9a0f24005b0c0c609a82b7754f41a5511a730d6cf5a74f01c427596c5e676f9a96077cb917530ded49dca06a916cde62152f006a3856f9313d7681dc6ebf5 session-manager-plugin.initd
+"
diff --git a/testing/aws-session-manager-plugin/session-manager-plugin.initd b/testing/aws-session-manager-plugin/session-manager-plugin.initd
new file mode 100644
index 00000000000..d9241461e66
--- /dev/null
+++ b/testing/aws-session-manager-plugin/session-manager-plugin.initd
@@ -0,0 +1,20 @@
+#!/sbin/openrc-run
+description="Initialize Amazon Session Manager Plugin"
+command="/usr/bin/session-manager-plugin"
+
+start() {
+ ebegin "Starting Session Manager Plugin"
+ start-stop-daemon --start \
+ --exec ${command} ${command_args} \
+ -b --make-pidfile \
+ --pidfile "${pidfile}"
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping Session Manager Plugin"
+ start-stop-daemon --stop \
+ --exec ${command} \
+ --pidfile "${pidfile}"
+ eend $?
+}
diff --git a/testing/aws-session-manager-plugin/ssmcli.initd b/testing/aws-session-manager-plugin/ssmcli.initd
new file mode 100644
index 00000000000..e3c1bc950d5
--- /dev/null
+++ b/testing/aws-session-manager-plugin/ssmcli.initd
@@ -0,0 +1,20 @@
+#!/sbin/openrc-run
+description="Initialize Amazon SSMCLI"
+command="/usr/bin/ssmcli"
+
+start() {
+ ebegin "Starting SSMCLI"
+ start-stop-daemon --start \
+ --exec ${command} ${command_args} \
+ -b --make-pidfile \
+ --pidfile "${pidfile}"
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping SSMCLI"
+ start-stop-daemon --stop \
+ --exec ${command} \
+ --pidfile "${pidfile}"
+ eend $?
+}
diff --git a/testing/awscli-plugin-endpoint/APKBUILD b/testing/awscli-plugin-endpoint/APKBUILD
new file mode 100644
index 00000000000..042a77d410d
--- /dev/null
+++ b/testing/awscli-plugin-endpoint/APKBUILD
@@ -0,0 +1,27 @@
+# Contributor: Lauren N. Liberda <lauren@selfisekai.rocks>
+# Maintainer: Lauren N. Liberda <lauren@selfisekai.rocks>
+pkgname=awscli-plugin-endpoint
+pkgver=0.4
+pkgrel=2
+pkgdesc="Allows overriding endpoints in AWS CLI"
+url="https://github.com/wbingli/awscli-plugin-endpoint/"
+# aws-cli
+arch="noarch !armhf !armv7 !ppc64le !s390x !x86"
+license="Apache-2.0"
+depends="aws-cli python3"
+makedepends="py3-setuptools"
+options="!check" # no tests
+subpackages="$pkgname-pyc"
+source="https://github.com/wbingli/awscli-plugin-endpoint/archive/refs/tags/$pkgver/awscli-plugin-endpoint-$pkgver.tar.gz"
+
+build() {
+ python3 setup.py build
+}
+
+package() {
+ python3 setup.py install --root="$pkgdir" --skip-build
+}
+
+sha512sums="
+0e81130ac6baf7b43a77e37213cbc042dca0cefd4a43db92cd6d7fe53d0f81e902d35ea055669477001158ee2cb5e898f5ea9474167a18203ecb7392f183d14a awscli-plugin-endpoint-0.4.tar.gz
+"
diff --git a/testing/awslogs/APKBUILD b/testing/awslogs/APKBUILD
deleted file mode 100644
index 01069b27d51..00000000000
--- a/testing/awslogs/APKBUILD
+++ /dev/null
@@ -1,28 +0,0 @@
-# Contributor: Paul Bredbury <brebs@sent.com>
-# Maintainer:
-pkgname=awslogs
-pkgver=0.14.0
-pkgrel=0
-pkgdesc="AWS CloudWatch log retriever"
-url="https://github.com/jorgebastida/awslogs"
-arch="noarch"
-license="BSD-3-Clause-Attribution"
-depends="py3-boto3 py3-jmespath py3-termcolor py3-dateutil"
-makedepends="py3-setuptools"
-source="$pkgname-$pkgver.tar.gz::https://github.com/jorgebastida/awslogs/archive/$pkgver.tar.gz"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 setup.py check
-}
-
-package() {
- python3 setup.py install --root="$pkgdir"
-}
-
-sha512sums="
-73f7d4e983b0a1658027aa88174ced0d2760823463c67832303be72b174ecdfbf6aabd73342634e233afd7736c57d397b55f0db89d0c59392145062de8868241 awslogs-0.14.0.tar.gz
-"
diff --git a/testing/azorius/APKBUILD b/testing/azorius/APKBUILD
new file mode 100644
index 00000000000..629891b181a
--- /dev/null
+++ b/testing/azorius/APKBUILD
@@ -0,0 +1,74 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=azorius
+pkgver=0.3.4
+pkgrel=2
+pkgdesc="Social link aggregator and comment forum with ActivityPub"
+url="https://azorius.net/"
+arch="all"
+license="ISC"
+makedepends="go sqlite-dev"
+install="$pkgname.pre-install"
+pkgusers="azorius"
+pkggroups="azorius"
+subpackages="$pkgname-doc $pkgname-openrc"
+source="https://humungus.tedunangst.com/r/azorius/d/azorius-$pkgver.tgz
+ azorius.initd
+ azorius.confd
+
+ upgradedb.patch
+ "
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ make
+}
+
+check() {
+ ./azorius version
+
+ go test -v ./...
+}
+
+package() {
+ install -Dm755 azorius -t "$pkgdir"/usr/bin/
+ install -dm750 -o azorius -g azorius "$pkgdir"/var/lib/azorius
+
+ install -dm755 "$pkgdir"/usr/share/webapps/azorius
+ install -Dm644 docs/*.html -t "$pkgdir"/usr/share/webapps/azorius/docs/
+ install -Dm644 views/* -t "$pkgdir"/usr/share/webapps/azorius/views/
+
+ install -Dm644 LICENSE -t "$pkgdir"/usr/share/licenses/$pkgname/
+ local man sec fname; for man in \
+ docs/*.1 \
+ docs/*.7 \
+ docs/*.8
+ do
+ fname="$(basename $man)"
+ sec="${fname##*.}"
+
+ case "$fname" in
+ azorius*)
+ install -Dm644 $man \
+ "$pkgdir"/usr/share/man/man$sec/$fname
+ ;;
+ *)
+ install -Dm644 $man \
+ "$pkgdir"/usr/share/man/man$sec/azorius-$fname
+ ;;
+ esac
+ done
+
+ install -Dm755 "$srcdir"/azorius.initd "$pkgdir"/etc/init.d/azorius
+ install -Dm644 "$srcdir"/azorius.confd "$pkgdir"/etc/conf.d/azorius
+}
+
+sha512sums="
+6475846d8f6972d34a6672eee62ce7fbcce7524fd6e980c60e874699b714c4ce550b35806625e6b60f00b9e2fb85175998d715644993fb169809b60343642725 azorius-0.3.4.tgz
+aa8641ef0a4c6b27d4ac21f2dd974dcd090f5867ee314c4322f39284a8e80b430f522fcb75c51db8dd0c00791a2c76652827eda091183ee57a2b3f8c97d8b88c azorius.initd
+fb522c19c7debd64c57087d5a77f03f0418e0eb929c570cbb0cb5fb36a97e63b09b34bc4137aff36fe625fb3ced8b1d16529a8ba1af79cffa67a9033acfa7a1d azorius.confd
+45878a9c132bfa2faa6e142b2b7494bb64a183112356481b651e90fec5f011fc3da3a882316034ffd73ec00d913aa2b678806684ed2eb334704e6aa1a8245b80 upgradedb.patch
+"
diff --git a/testing/azorius/azorius.confd b/testing/azorius/azorius.confd
new file mode 100644
index 00000000000..287194b0af3
--- /dev/null
+++ b/testing/azorius/azorius.confd
@@ -0,0 +1,16 @@
+# Configuration for /etc/init.d/azorius
+
+# Azorius data directory
+#data_dir="/var/lib/azorius"
+
+# Azorius view directory
+#view_dir="/usr/share/webapps/azorius"
+
+# Azorius log file
+#log_file="/var/log/azorius.log"
+
+# Azorius listen ip & port
+#listen_addr="127.0.0.1:8282"
+
+# Additional options to pass to Azorius
+#extra_opts=""
diff --git a/testing/azorius/azorius.initd b/testing/azorius/azorius.initd
new file mode 100644
index 00000000000..5a03bdbbf8a
--- /dev/null
+++ b/testing/azorius/azorius.initd
@@ -0,0 +1,94 @@
+#!/sbin/openrc-run
+
+name=azorius
+description="Azorius is an ActivityPub link aggregator and comment forum"
+
+extra_stopped_commands="setup upgradedb cleanup"
+extra_started_commands="adduser chpass"
+description_setup="Initialize a new azorius.db"
+description_upgradedb="Upgrade azorius.db to new schema"
+description_cleanup="Move old attachments to trash"
+description_adduser="Add a new user account"
+description_chpass="Change password of user"
+
+: ${data_dir:="/var/lib/azorius"}
+: ${view_dir:="/usr/share/webapps/azorius"}
+: ${log_file:="/var/log/azorius.log"}
+: ${listen_addr:="127.0.0.1:8282"}
+
+command="/usr/bin/azorius"
+command_args="
+ -datadir $data_dir
+ -viewdir $view_dir
+ -log $log_file
+ $extra_opts
+ "
+command_background="yes"
+command_user="azorius:azorius"
+pidfile="/run/${RC_SVCNAME}.pid"
+
+depend() {
+ need localmount net
+ after firewall
+}
+
+fix_perms() {
+ checkpath -f -m 0640 -o "$command_user" "$log_file"
+ checkpath -d -m 0750 -o "$command_user" "$data_dir"
+}
+
+start_pre() {
+ fix_perms || return 1
+
+ if [ ! -f "$data_dir/azorius.db" ]; then
+ setup || return 1
+ fi
+
+ azorius_exec setconfig listenaddr "$listen_addr"
+}
+
+setup() {
+ local db_file="$data_dir/azorius.db"
+
+ fix_perms || return 1
+
+ if [ -f "$db_file" ]; then
+ eerror "$db_file already exists!"
+ return 1
+ fi
+
+ ebegin "Creating a new database at $db_file"
+ azorius_exec init
+ eend $?
+}
+
+adduser() {
+ azorius_exec adduser
+}
+
+chpass() {
+ read -p "username: " username
+
+ azorius_exec chpass $username
+}
+
+upgradedb() {
+ fix_perms || return 1
+
+ ebegin "Upgrading the Azorius database"
+ azorius_exec upgrade
+ eend $?
+}
+
+cleanup() {
+ fix_perms || return 1
+
+ ebegin "Cleaning up Azorius attachments"
+ azorius_exec trash
+ eend $?
+}
+
+azorius_exec() {
+ start-stop-daemon --exec "$command" --user "$command_user" \
+ -- $command_args $*
+}
diff --git a/testing/azorius/azorius.pre-install b/testing/azorius/azorius.pre-install
new file mode 100644
index 00000000000..1ecc926660b
--- /dev/null
+++ b/testing/azorius/azorius.pre-install
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+addgroup -S azorius 2>/dev/null
+adduser -S -D -H \
+ -h /var/lib/azorius \
+ -s /sbin/nologin \
+ -G azorius \
+ -g "Azorius federated link sharer" \
+ azorius 2>/dev/null
+
+exit 0
diff --git a/testing/azorius/upgradedb.patch b/testing/azorius/upgradedb.patch
new file mode 100644
index 00000000000..9fc2d5080a2
--- /dev/null
+++ b/testing/azorius/upgradedb.patch
@@ -0,0 +1,11 @@
+--- a/upgradedb.go
++++ b/upgradedb.go
+@@ -116,7 +116,7 @@
+ var lnk string
+ err := rows.Scan(&postid, &lnk)
+ if err != nil {
+- elog.Fatalf("can't scan link: %s")
++ elog.Fatalf("can't scan link: %s", lnk)
+ }
+ m := re_linkhost.FindStringSubmatch(lnk)
+ if len(m) > 1 {
diff --git a/testing/azote/APKBUILD b/testing/azote/APKBUILD
index 34860e06a5a..068528edeb5 100644
--- a/testing/azote/APKBUILD
+++ b/testing/azote/APKBUILD
@@ -1,26 +1,44 @@
# Contributor: Matthew T Hoare <matthew.t.hoare@gmail.com>
# Maintainer: Matthew T Hoare <matthew.t.hoare@gmail.com>
pkgname=azote
-pkgver=1.9.2
-pkgrel=0
+pkgver=1.12.4
+pkgrel=1
pkgdesc="Wallpaper and colour manager for Sway, i3 and other window managers"
url="https://github.com/nwg-piotr/azote"
arch="noarch"
license="GPL-3.0-or-later AND BSD-3-Clause"
-depends="feh gtk+3.0 py3-cairo py3-gobject3 py3-pillow py3-send2trash
- py3-setuptools python3 xrandr"
+depends="
+ feh
+ gtk+3.0
+ py3-cairo
+ py3-gobject3
+ py3-pillow
+ py3-send2trash
+ python3
+ xrandr
+ "
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
options="!check" # no checks
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/nwg-piotr/azote/archive/v$pkgver.tar.gz"
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
package() {
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
+
install -Dm755 dist/azote "$pkgdir"/usr/bin/azote
- install -D -t "$pkgdir"/usr/share/pixmaps dist/azote.svg
+ install -D -t "$pkgdir"/usr/share/icons/hicolor/scalable/apps/azote.svg dist/azote.svg
install -D -t "$pkgdir"/usr/share/"$pkgname" dist/indicator_active.png
install -D -t "$pkgdir"/usr/share/"$pkgname" dist/indicator_attention.png
install -D -t "$pkgdir"/usr/share/applications dist/azote.desktop
- python3 setup.py install --root="$pkgdir/" --optimize=1
}
sha512sums="
-aa2b45966e13a0bc9196e40bd3fbda0e0ebb5105690e938df33b72221ef2502511de62611e3423bf102f7e332a0fe889b545e20c41fa28b3264da9521fb6ef92 azote-1.9.2.tar.gz
+c40beafd5fa0d5337d0b09b9f0ab0e128a46d2e2eea1ecf0ef082ade2d531e4ef70d57dc932226ea7a88d2b4a72340ae0f41e049152b80d6c0d9da0ecae90640 azote-1.12.4.tar.gz
"
diff --git a/testing/azpainter/APKBUILD b/testing/azpainter/APKBUILD
new file mode 100644
index 00000000000..d2ddfffd8ec
--- /dev/null
+++ b/testing/azpainter/APKBUILD
@@ -0,0 +1,37 @@
+# Contributor: Sergiy Stupar <owner@sestolab.pp.ua>
+# Maintainer: Sergiy Stupar <owner@sestolab.pp.ua>
+pkgname=azpainter
+pkgver=3.0.7
+pkgrel=0
+pkgdesc="Paint software for editing illustrations and images"
+url="http://azsky2.html.xdomain.jp"
+arch="all"
+license="GPL-3.0-or-later"
+makedepends="
+ fontconfig-dev
+ freetype-dev
+ libpng-dev
+ libx11-dev
+ libxcursor-dev
+ libxext-dev
+ libxi-dev
+ tiff-dev
+ samurai
+ "
+subpackages="$pkgname-doc"
+source="$pkgname-v$pkgver.tar.gz::https://gitlab.com/azelpg/azpainter/-/archive/v$pkgver/azpainter-v$pkgver.tar.gz"
+builddir="$srcdir/$pkgname-v$pkgver"
+options="!check" # No tests
+
+build() {
+ ./configure --prefix=/usr
+ samu -C build
+}
+
+package() {
+ DESTDIR="$pkgdir" samu -C build install
+}
+
+sha512sums="
+68002777fa9df7bac78d6d99231400ceb9ca89a0fb7233f5abe90d2c376746d4a56e38c663fecdc07daf84a27b7fb43190efc8be6282611ba87b683d3851ec2e azpainter-v3.0.7.tar.gz
+"
diff --git a/testing/azure-iot-sdk-c-static/001-c-utility.patch b/testing/azure-iot-sdk-c-static/001-c-utility.patch
deleted file mode 100644
index 9b746a13175..00000000000
--- a/testing/azure-iot-sdk-c-static/001-c-utility.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/c-utility/pal/linux/socket_async_os.h b/c-utility/pal/linux/socket_async_os.h
-index bd59e48..1797089 100644
---- a/c-utility/pal/linux/socket_async_os.h
-+++ b/c-utility/pal/linux/socket_async_os.h
-@@ -10,7 +10,7 @@
- #include <sys/select.h>
- #include <netinet/in.h>
- #include <netinet/tcp.h>
--#include <sys/errno.h>
-+#include <errno.h>
- #include <fcntl.h>
- #include <unistd.h>
- #include <netdb.h>
diff --git a/testing/azure-iot-sdk-c-static/APKBUILD b/testing/azure-iot-sdk-c-static/APKBUILD
index a8655b64ac4..52152ec8bf6 100644
--- a/testing/azure-iot-sdk-c-static/APKBUILD
+++ b/testing/azure-iot-sdk-c-static/APKBUILD
@@ -1,25 +1,25 @@
# Contributor: Michael John <gosh.mike@gmail.com>
# Maintainer: Michael John <gosh.mike@gmail.com>
pkgname=azure-iot-sdk-c-static
-pkgver=1.3.7
-pkgrel=1
+pkgver=1.11.0
+pkgrel=0
pkgdesc="Azure IoT SDK"
url="https://github.com/Azure/azure-iot-sdk-c"
arch="all"
license="MIT"
options="!check" # make check not implemented
makedepends="cmake openssl-dev openssl-libs-static libcurl curl-dev libuuid util-linux-dev busybox"
-_azure_c_shared_utility_commit="48f7a556865731f0e96c47eb5e9537361f24647c"
-_azure_umqtt_c_commit="65cdd1013715fb9d208c42f957eb353fbe22bafb"
-_azure_uamqp_c_commit="142cfab9d66c6f81ea0cceb635f31e00cfa51c77"
-_parson_commit="c5bb9557fe98367aa8e041c65863909f12ee76b2"
-_uhttp_commit="b67a6bfa0d018a8a23176ee214e46c208fc323c3"
-_riot_commit="bc97a5eaff53535eddbdf95b4f477c6caf3b7788"
-_utpm_commit="afe8ad192502979e2b754c7d7c0b2e7178c78d09"
+_azure_c_shared_utility_commit="4f1b7cd6bf48833fe4b9e23e2ff07510753faee5"
+_azure_umqtt_c_commit="9201d60bbc12a02ac5456b6105bb50919d392105"
+_azure_uamqp_c_commit="b7bdf307a0db8840156d9f6e40f704c1d5924306"
+_parson_commit="4158fdbea7da5a7c7efb182b69707c78f35a398f"
+_uhttp_commit="33485e2e43f9c8f186dfff8afda7efd905b636f1"
+_riot_commit="f6bebff2f5a68f5bc18d23ed164800db33b7d2a4"
+_utpm_commit="4fc2aa8717f15ad22e4cd9571d2784cef25932be"
_azure_macro_utils_c_commit="5926caf4e42e98e730e6d03395788205649a3ada"
-_umock_c_commit="5e3d93112360ee2d4a622b1c48eb70896da3e8c7"
-_azure_c_testrunnerswitcher_commit="a33cd0a8524da8e45642baa112a506d4d2e5a59e"
-_azure_ctest_commit="13baad856c3cb9e5457bff52bc8c2de87f21fa07"
+_umock_c_commit="504193e65d1c2f6eb50c15357167600a296df7ff"
+_azure_c_testrunnerswitcher_commit="8734bd6c53c88dd6c0cea8e87d70b9964726484a"
+_azure_ctest_commit="4aa84c45236ecda21983fb682f542f17d0b21e19"
source="$pkgname-$pkgver.tar.gz::https://github.com/Azure/azure-iot-sdk-c/archive/$pkgver.tar.gz
$pkgname-$pkgver-azure_c_shared_utility.tar.gz::https://github.com/Azure/azure-c-shared-utility/archive/$_azure_c_shared_utility_commit.tar.gz
$pkgname-$pkgver-azure_umqtt_c.tar.gz::https://github.com/Azure/azure-umqtt-c/archive/$_azure_umqtt_c_commit.tar.gz
@@ -28,11 +28,10 @@ source="$pkgname-$pkgver.tar.gz::https://github.com/Azure/azure-iot-sdk-c/archiv
$pkgname-$pkgver-uhttp.tar.gz::https://github.com/Azure/azure-uhttp-c/archive/$_uhttp_commit.tar.gz
$pkgname-$pkgver-riot.tar.gz::https://github.com/Microsoft/RIoT/archive/$_riot_commit.tar.gz
$pkgname-$pkgver-utpm.tar.gz::https://github.com/Azure/azure-utpm-c/archive/$_utpm_commit.tar.gz
- $pkgname-$pkgver-azure_macro_utils_c.tar.gz::https://github.com/Azure/azure-macro-utils-c/archive/$_azure_macro_utils_c_commit.tar.gz
+ $pkgname-$pkgver-macro_utils_c.tar.gz::https://github.com/Azure/macro-utils-c/archive/$_azure_macro_utils_c_commit.tar.gz
$pkgname-$pkgver-umock_c.tar.gz::https://github.com/Azure/umock-c/archive/$_umock_c_commit.tar.gz
- $pkgname-$pkgver-azure_c_testrunnerswitcher.tar.gz::https://github.com/Azure/azure-c-testrunnerswitcher/archive/$_azure_c_testrunnerswitcher_commit.tar.gz
- $pkgname-$pkgver-azure_ctest.tar.gz::https://github.com/Azure/azure-ctest/archive/$_azure_ctest_commit.tar.gz
- 001-c-utility.patch
+ $pkgname-$pkgver-c_testrunnerswitcher.tar.gz::https://github.com/Azure/c-testrunnerswitcher/archive/$_azure_c_testrunnerswitcher_commit.tar.gz
+ $pkgname-$pkgver-ctest.tar.gz::https://github.com/Azure/azure-ctest/archive/$_azure_ctest_commit.tar.gz
"
builddir="$srcdir/${pkgname%-static}-$pkgver"
@@ -45,10 +44,10 @@ prepare() {
mv "$srcdir"/azure-uhttp-c-$_uhttp_commit/* "$builddir"/deps/uhttp/
mv "$srcdir"/RIoT-$_riot_commit/* "$builddir"/provisioning_client/deps/RIoT/
mv "$srcdir"/azure-utpm-c-$_utpm_commit/* "$builddir"/provisioning_client/deps/utpm/
- mv "$srcdir"/azure-macro-utils-c-$_azure_macro_utils_c_commit/* "$builddir"/deps/azure-macro-utils-c/
+ mv "$srcdir"/macro-utils-c-$_azure_macro_utils_c_commit/* "$builddir"/deps/azure-macro-utils-c/
mv "$srcdir"/umock-c-$_umock_c_commit/* "$builddir"/deps/umock-c/
- mv "$srcdir"/azure-c-testrunnerswitcher-$_azure_c_testrunnerswitcher_commit/* "$builddir"/deps/azure-c-testrunnerswitcher/
- mv "$srcdir"/azure-ctest-$_azure_ctest_commit/* "$builddir"/deps/azure-ctest/
+ mv "$srcdir"/c-testrunnerswitcher-$_azure_c_testrunnerswitcher_commit/* "$builddir"/deps/azure-c-testrunnerswitcher/
+ mv "$srcdir"/ctest-$_azure_ctest_commit/* "$builddir"/deps/azure-ctest/
default_prepare
}
@@ -75,18 +74,21 @@ build() {
package() {
cd "$builddir"/cmake-build
make DESTDIR="$pkgdir" install
+
+ mv "$pkgdir"/usr/cmake "$pkgdir"/usr/lib/cmake
}
-sha512sums="a6e9b15d42d91c7c5bd553317af1e4cc1bd84b87da447e476ad2c851db264aaab21da8d1816542cb7a6f12f0ca34a7e09349f6d0af3517567fdf3ff904ce48b3 azure-iot-sdk-c-static-1.3.7.tar.gz
-c20074707e8601e090ee8daac1d96fdfb4f60ac60fd9c824dad81aa4c2f22b04733c82c01c1ae92110c26871b81674e8771d9ed65081f1c0c197a362275a28f1 azure-iot-sdk-c-static-1.3.7-azure_c_shared_utility.tar.gz
-8cd33dcde966132e2aa0c6d931e75f9bcdc5734d57d8f6bb8a922711b0b63c2f0e58d379fe92371886387dfbb0b8c117b512873363eb76cf22fa985dbf11d52e azure-iot-sdk-c-static-1.3.7-azure_umqtt_c.tar.gz
-80f95bc969c2e50124622561b5f939e981a8d317e3e9514e52ce020f0f20a125622bf914f16927edafc7ff3c878fb1d6a28f4f5e66bda52dcc8aa2dc34761f73 azure-iot-sdk-c-static-1.3.7-azure_uamqp_c.tar.gz
-8c9a4ebd4e2cccac17b21bc8e51e38b185b5b87ba7fb77321158751978bef2f40166acd8265e8b0589fb76b93998a40a09d5cd2030e59c3f01c6c4727b8abc0b azure-iot-sdk-c-static-1.3.7-parson.tar.gz
-75fafe242324bb2fc72befdd06427350e6f99aec9496fdf38b9660e7965fad89276ee543f36c3ba3360fc99b8301e74e2c1723d17f39e8471beee3e32cacb348 azure-iot-sdk-c-static-1.3.7-uhttp.tar.gz
-e2655a4846c7ae15e1a0d3638b49e99dcb1d50b6aeb6ac9a85498be66e904af84d86ee1d739fa3122e539a5a1fdc125dcb679098be040f386bf4ec63c0679570 azure-iot-sdk-c-static-1.3.7-riot.tar.gz
-75b7ac6a2686bb09fe0ff17c159d2b7043dca37a63f91939904e187955ce63c1736393bf16674ff25443cf1898a0b319ae4a326a12af5b733bc7fd54c86c0584 azure-iot-sdk-c-static-1.3.7-utpm.tar.gz
-97621f276657af976c4022c9600540ecae2287b3b386b9e097d661828a62c120348d354b3f86f3ef4d49f3c54830887662d3910ed5cec4a634949fa389b4ad55 azure-iot-sdk-c-static-1.3.7-azure_macro_utils_c.tar.gz
-9f5c0ce782f66a41e702e2d54dcff92b07b30e7c2be0ee2c63a56e2bff0c26a1de7f77abcb2a964d668deea817dcb3a4771e328707c2d982c23526465c950608 azure-iot-sdk-c-static-1.3.7-umock_c.tar.gz
-c42350f39116dfdc3788d596ca22cf7e6040745e795c11ca1f6cb4fd63eeb2d913e89a1a50e8170612dea28b2a01306e04d865bd26046a10458ecffac3c0b6a1 azure-iot-sdk-c-static-1.3.7-azure_c_testrunnerswitcher.tar.gz
-2f2dca81f101c33bf0a99c5e86012c0830686797b2934c7972c411f108ce0c31570988321cc58aabb3fcc0a2ecefbdab9dc950c7f922065b7bde8eb3207f2059 azure-iot-sdk-c-static-1.3.7-azure_ctest.tar.gz
-419f71afc6be9e9ee27c11d5bdc7cad3e417ac3bd2d8cbb2a706c9be81ff88d99fb810bfc84a2424fefb2076e27f13bfaf14370e450c08ac09e8ebadfe1ac5cd 001-c-utility.patch"
+sha512sums="
+7e78e4bded0d4b7acebc863350c451d40067d97112edf465efb99057e18854c279b40798fddd07051987f5abd1d9a7f220b3a7d108e0e1c35adae96ef6b73615 azure-iot-sdk-c-static-1.11.0.tar.gz
+5374585bd05ad2b55d2aa183d65b0b371d52b7f3145bcc9486e92d306d172109a8a6b13e14b56073426c3b02541044864d63fc728a9006a8dcd7ab552002be79 azure-iot-sdk-c-static-1.11.0-azure_c_shared_utility.tar.gz
+97d5383184c99186783738613d00e77041fe4ff3af4c14fe775e4be8b38a77a69d093ed8636a67ee85e8e09c8732b8839375aa178128f1ae58792d7c8698f829 azure-iot-sdk-c-static-1.11.0-azure_umqtt_c.tar.gz
+a23ddab35caa6f9303072f235591d64f5cfe3c2f4a16e9f317380a9d887f47f146b0bca5afcb2e3a199b146e8092192ede2ec68685edb8a7fb11cfe5641815b8 azure-iot-sdk-c-static-1.11.0-azure_uamqp_c.tar.gz
+52854bb2cdc890c0abf7c9eec2cb0dbc5452bc78c73b1364cb3ef8d37d636f41335e58a11f7fe6faae762dea3bee24ddccb020bc188229db143cf5e871f6f149 azure-iot-sdk-c-static-1.11.0-parson.tar.gz
+ad9c8f21cee431ac39a5ffc5f1007b76c5ba1768dca6cebf8fceda33747c3accbce48ace72173cfe746316a0a136a7e770005ba98b8f99e5bb3889b5bdc2e973 azure-iot-sdk-c-static-1.11.0-uhttp.tar.gz
+5d07bc934ab8d64c2bc930636fe135e677cac6bd6ae85ca6028eb4a28ef5776d6326bdd1f654646597a169f7da8e36318ea36496523052a826686aa1d959c967 azure-iot-sdk-c-static-1.11.0-riot.tar.gz
+cef3cb9c5578a88f0839f68429da72ac40f8f82cace53cf0ab93e9a8dcb546fab23f16c51bec960edf83fdbde92a069c72e9d8f794d891f6408a991a6e871ee6 azure-iot-sdk-c-static-1.11.0-utpm.tar.gz
+8f9fd02012202db6cff5b647edbc8332a2c03963e80182a630af6a884f23df96b8e24d60e5412bfc2a0a7f43240a54f9597040aa28a9d3e1566755e1d52aac62 azure-iot-sdk-c-static-1.11.0-macro_utils_c.tar.gz
+68d5d986314dbd46d20de2a9b9454154c11675c25d1b5a5b1cfecdd0c0945d9dc68d0348ec1dbb00b5d1a6a1f0356121ba561d7c8fffb97ab37864edade5a85b azure-iot-sdk-c-static-1.11.0-umock_c.tar.gz
+0b2d630228d65bf63be8c41ca998de24011165b3dc879a86df6372a253c1bfd9e928672fb0817ca8c036274ed05ef2ee58ec4b7102d3c5bf6222cac452da07d0 azure-iot-sdk-c-static-1.11.0-c_testrunnerswitcher.tar.gz
+0bf0ccbb7c63e62beb62b690a9d4d173518bada9987cf7c569c27ab9d843f1f5ca844001a542d617b402637bd16969f22c50361421c39cbfce73d662b9f423bb azure-iot-sdk-c-static-1.11.0-ctest.tar.gz
+"
diff --git a/testing/b2sum/APKBUILD b/testing/b2sum/APKBUILD
index b9850368bf7..85543bf7542 100644
--- a/testing/b2sum/APKBUILD
+++ b/testing/b2sum/APKBUILD
@@ -3,7 +3,7 @@ pkgname=b2sum
_pkgname=BLAKE2
pkgver=20190729
_commit=997fa5ba1e14b52c554fb03ce39e579e6f27b90c
-pkgrel=1
+pkgrel=2
pkgdesc="BLAKE2 command line utility with multiple algorithms"
url="https://blake2.net/"
arch="all"
diff --git a/testing/b3sum/APKBUILD b/testing/b3sum/APKBUILD
deleted file mode 100644
index 4b365727a25..00000000000
--- a/testing/b3sum/APKBUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-# Contributor: Leo <thinkabit.ukim@gmail.com>
-# Maintainer:
-pkgname=b3sum
-pkgver=1.3.1
-pkgrel=0
-pkgdesc="Command line implementation of the BLAKE3 hash function"
-url="https://blake3.io"
-# armhf: 'vaddq_u32': target specific option mismatch
-arch="all !s390x !armhf !riscv64"
-license="CC0-1.0 OR Apache-2.0"
-makedepends="cargo"
-source="b3sum-$pkgver.tar.gz::https://crates.io/api/v1/crates/b3sum/$pkgver/download"
-
-case "$CARCH" in
- arm*) _features="neon" ;;
-esac
-
-build() {
- cargo build --release --locked --no-default-features ${_features:+--features="$_features"}
-}
-
-check() {
- cargo test --release --locked --no-default-features ${_features:+--features="$_features"}
-}
-
-package() {
- cargo install --locked --path . --root="$pkgdir/usr" --no-default-features ${_features:+--features "$_features"}
- rm "$pkgdir"/usr/.crates*
-}
-
-sha512sums="
-2af1731e672c07c0250d248bc626388b42267d63ca1c100d4ba6b1e58492c52eb05ee46b3e7da07cb0d5d4d4e567339e09e3d5199776ad32acc14b25bd594223 b3sum-1.3.1.tar.gz
-"
diff --git a/testing/b4/APKBUILD b/testing/b4/APKBUILD
new file mode 100644
index 00000000000..266d0b65f25
--- /dev/null
+++ b/testing/b4/APKBUILD
@@ -0,0 +1,32 @@
+# Contributor: knuxify <knuxify@gmail.com>
+# Maintainer: knuxify <knuxify@gmail.com>
+pkgname=b4
+pkgver=0.13.0
+pkgrel=0
+pkgdesc="Tool to help with email-based patch workflows"
+url="https://b4.docs.kernel.org/"
+arch="noarch"
+license="GPL-2.0-or-later"
+depends="py3-requests git git-email git-filter-repo py3-dnspython py3-patatt py3-dkimpy"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc $pkgname-doc"
+source="https://git.kernel.org/pub/scm/utils/b4/b4.git/snapshot/b4-$pkgver.tar.gz"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" .dist/*.whl
+}
+
+sha512sums="
+692d01970019d3fc604187882004d97f4286a22d87e5778d7830ec247757534a9d951fa8edfe9e04e8f14107c77b08b6c15024f37bd99f4abf3aa0d823df21e5 b4-0.13.0.tar.gz
+"
diff --git a/testing/babashka/APKBUILD b/testing/babashka/APKBUILD
new file mode 100644
index 00000000000..79fb70c1145
--- /dev/null
+++ b/testing/babashka/APKBUILD
@@ -0,0 +1,76 @@
+# Contributor: Alex McGrath <amk@amk.ie>
+# Maintainer: Alex McGrath <amk@amk.ie>
+pkgname=babashka
+pkgver=1.3.188
+pkgrel=0
+pkgdesc="Native, fast starting Clojure interpreter for scripting"
+url="https://github.com/babashka/babashka"
+license="GPL-3.0-or-later"
+arch="x86_64" # openjdk-mandrel
+makedepends="openjdk17-static-libs openjdk17 openjdk-mandrel leiningen"
+
+_bbcore_hash="52a6037bd4b632bffffb04394fb4efd0cdab6b1e"
+_bbcurl_hash="e936acd40544eb637b6041c7e89454b21eb7ee34"
+_bbnrepl_hash="edd3d613bfb9bf3adabfd0bda5c3f5c6ee85ec20"
+_depsclj_hash="3e5dcdfe7b32e0d358a6f48cd46120596e83f02f"
+_depstar_hash="c419b8c82041855d55593c5b561fc7cea8234712"
+_fs_hash="374c36a3f7316e7a445f47220719283947a97e14"
+_pods_hash="6ad6045b94bc871c5107bfc75d39643b6c1bc8ba"
+_process_hash="abe7ea36ebf1d666834f73d35530df946a7c31bd"
+_sci_hash="ad79a6c476affd1f8208efbfdba57992a68c8056"
+
+source="babashka-$pkgver.tar.gz::https://github.com/babashka/babashka/archive/v$pkgver.tar.gz
+https://github.com/borkdude/sci/archive/$_sci_hash.tar.gz
+https://github.com/babashka/babashka.curl/archive/$_bbcurl_hash.tar.gz
+https://github.com/babashka/babashka.nrepl/archive/$_bbnrepl_hash.tar.gz
+https://github.com/babashka/depstar/archive/$_depstar_hash.tar.gz
+https://github.com/babashka/process/archive/$_process_hash.tar.gz
+https://github.com/babashka/pods/archive/$_pods_hash.tar.gz
+https://github.com/borkdude/deps.clj/archive/$_depsclj_hash.tar.gz
+https://github.com/babashka/fs/archive/$_fs_hash.tar.gz
+https://github.com/babashka/babashka.core/archive/$_bbcore_hash.tar.gz
+"
+
+options="!check" # fails due to a dep on version of go-sqlite3 that is broken on musl
+
+prepare() {
+ default_prepare
+
+ mv -Tv "$srcdir/sci-$_sci_hash" "$builddir/sci"
+ mv -Tv "$srcdir/babashka.curl-$_bbcurl_hash" "$builddir/babashka.curl"
+ mv -Tv "$srcdir/babashka.nrepl-$_bbnrepl_hash" "$builddir/babashka.nrepl"
+ mv -Tv "$srcdir/depstar-$_depstar_hash" "$builddir/depstar"
+ mv -Tv "$srcdir/process-$_process_hash" "$builddir/process"
+ mv -Tv "$srcdir/pods-$_pods_hash" "$builddir/pods"
+ mv -Tv "$srcdir/deps.clj-$_depsclj_hash" "$builddir/deps.clj"
+ mv -Tv "$srcdir/fs-$_fs_hash" "$builddir/fs"
+ mv -Tv "$srcdir/babashka.core-$_bbcore_hash" "$builddir/babashka.core"
+}
+
+build() {
+ export GRAALVM_HOME=/usr/lib/jvm/java-17-openjdk/
+ script/uberjar
+ script/compile
+}
+
+check() {
+ script/test
+}
+
+package() {
+ install -Dm755 "$builddir"/bb \
+ "$pkgdir"/usr/bin/bb
+}
+
+sha512sums="
+8b9b65c72289ad4cb1dce518807e826a3827232d235a4e8b3be2237c7fe74c95f6caeacb34a25525a4136275b80414aa1f1c9ec5a023aa998a63a0543e5421e3 babashka-1.3.188.tar.gz
+30bc3a066cb2f62c5384ad75166edc0e6d15970765dc9fee0b10bb7b24d8e44608d151abb2dfd12db32b6589756e6d853b171c0470289edda56abb9a0669f906 ad79a6c476affd1f8208efbfdba57992a68c8056.tar.gz
+94219410d4e7f750bb36486e5a5f5fda8bcd35333aadd325db5e299a9985272e17b334180cb2d0a7eb4c104db459d96bbd0f9c38fbc1592195c9658a7aacf390 e936acd40544eb637b6041c7e89454b21eb7ee34.tar.gz
+f8eee32ef1192212c6e774d24c88fc5aa9151f1452f22e3386a513f400aa346029d84cecb74c9e2f78d6d8fd3b8864890ef9198fa36caf7e29a9168f978ce418 edd3d613bfb9bf3adabfd0bda5c3f5c6ee85ec20.tar.gz
+b8cf5a3a518ef3ccd8c95bb9b3e6782123c9908501ceba74153c06b14f90ee3728fa3b0e2f66d8f4625f2e8ebe8d29efcfe3adcd85ecc8e067edb95b3359caa2 c419b8c82041855d55593c5b561fc7cea8234712.tar.gz
+174074639cd4bc04f8ea682f241afacb2d0b257e918defa9e528fdfe58e3597578398402cde36b65b609d7eeb37f908f504125814b072ecc2df87f8f66404511 abe7ea36ebf1d666834f73d35530df946a7c31bd.tar.gz
+3707693151a2fa032426448326e77a99493017af82bff902160483ce6d5bed13d51e5ea92750f1725f26f1b66ed9256260ebbcbbce30897370553252d540faca 6ad6045b94bc871c5107bfc75d39643b6c1bc8ba.tar.gz
+4a12791ee00b93dac45a7e9373e44398da17ba24577926f9c997a280be0027ba258912e6a8942042953a71bb8411a557bf03f6dd58909eb4706562d7598af88a 3e5dcdfe7b32e0d358a6f48cd46120596e83f02f.tar.gz
+e96fb6c41b7366690d05818cbf1c6285c630639d6f7bebc25e735fd3cdec772221c2b37d39f14bfd7ba6d6f1be05b7cdf77d9c1a5f1ab007d4c9efc190ac801a 374c36a3f7316e7a445f47220719283947a97e14.tar.gz
+2001b729aea5ca34b31e998920b77c935a15e796748fc4ee7943fd70ae8b1baa97885d56f7ab2cdb890cd4da4135112a3172c9a92ecfd1db047d0e6d5f738294 52a6037bd4b632bffffb04394fb4efd0cdab6b1e.tar.gz
+"
diff --git a/testing/backup-manager/APKBUILD b/testing/backup-manager/APKBUILD
index 129d26df285..03fc0aabc7a 100644
--- a/testing/backup-manager/APKBUILD
+++ b/testing/backup-manager/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Michael Pirogov <vbnet.ru@gmail.com>
pkgname="backup-manager"
pkgver="0.7.15"
-pkgrel=0
+pkgrel=1
pkgdesc="Backup Manager is a command line backup tool for GNU/Linux"
url="https://github.com/sukria/Backup-Manager"
arch="noarch"
diff --git a/testing/baikal/APKBUILD b/testing/baikal/APKBUILD
new file mode 100644
index 00000000000..54205d178dd
--- /dev/null
+++ b/testing/baikal/APKBUILD
@@ -0,0 +1,69 @@
+# Maintainer: leso-kn <info@lesosoftware.com>
+pkgname=baikal
+pkgver=0.9.5
+pkgrel=0
+pkgdesc="Baïkal is a Calendar+Contacts server"
+url="https://sabre.io/baikal"
+arch="noarch"
+license="GPL-3.0-only"
+makedepends="
+ composer
+ rsync
+ "
+_phpv=82
+_php=php$_phpv
+_composer="$_php -d memory_limit=512M /usr/bin/composer.phar"
+_phpstan="$_php -d memory_limit=512M vendor/phpstan/phpstan/phpstan.phar"
+depends="
+ $_php-dom
+ $_php-openssl
+ $_php-pdo
+ $_php-session
+ $_php-simplexml
+ $_php-tokenizer
+ $_php-xmlreader
+ $_php-xmlwriter
+ "
+subpackages="
+ ${pkgname}_sqlite:_sqlite
+ "
+install="${pkgname}_sqlite.post-install"
+source="$pkgname-$pkgver.tar.gz::https://github.com/sabre-io/baikal/archive/refs/tags/$pkgver.tar.gz"
+builddir="$srcdir"/Baikal-$pkgver
+_grp_www="www-data"
+
+build() {
+ mkdir -p build/baikal/Specific/db build/baikal/config
+ rsync -av \
+ Core html LICENSE README.md composer.json \
+ --exclude="*.swp" \
+ build/baikal
+ $_composer install --no-interaction --no-dev -d build/baikal
+}
+
+check() {
+ $_composer remove --dev friendsofphp/php-cs-fixer
+ $_phpstan analyse Core html
+}
+
+package() {
+ mkdir -p "$pkgdir"/var/www
+
+ cp -r build/baikal "$pkgdir"/var/www/
+
+ ln -s html "$pkgdir"/var/www/baikal/htm
+
+ chgrp $_grp_www "$pkgdir"/var/www/baikal/config
+ chgrp $_grp_www "$pkgdir"/var/www/baikal/Specific/db
+}
+
+_sqlite() {
+ depends="$pkgname $_php-pdo_sqlite"
+ pkgdesc="$pkgdesc (sqlite3 backend)"
+
+ mkdir -p "$subpkgdir"
+}
+
+sha512sums="
+2e50e51c5c70233d2a508b7bf87a1bcb629c01afc204628c13107cf4929e30fd8594ec85262bf5f7c41a10e5a26253a51ba89320e1bdbfbf99c16e0f4f6d9425 baikal-0.9.5.tar.gz
+"
diff --git a/testing/baikal/baikal_sqlite.post-install b/testing/baikal/baikal_sqlite.post-install
new file mode 100644
index 00000000000..1e6d3e17119
--- /dev/null
+++ b/testing/baikal/baikal_sqlite.post-install
@@ -0,0 +1,10 @@
+#!/bin/sh
+
+db_file=/var/www/baikal/Specific/db/db.sqlite
+
+if ! [ -f "$db_file" ]; then
+ touch "$db_file"
+ chgrp www-data "$db_file"
+fi
+
+exit 0
diff --git a/testing/bake/01-no-backtrace-on-musl.patch b/testing/bake/01-no-backtrace-on-musl.patch
new file mode 100644
index 00000000000..f6b8a252414
--- /dev/null
+++ b/testing/bake/01-no-backtrace-on-musl.patch
@@ -0,0 +1,11 @@
+--- a/util/include/bake_util.h
++++ b/util/include/bake_util.h
+@@ -37,7 +37,7 @@
+ #define UT_EXPORT
+ #endif
+
+-#ifndef __ANDROID__
++#if !defined(__ANDROID__) && defined(__GLIBC__)
+ #define ENABLE_BACKTRACE
+ #endif
+
diff --git a/testing/bake/APKBUILD b/testing/bake/APKBUILD
new file mode 100644
index 00000000000..03d8fd76cca
--- /dev/null
+++ b/testing/bake/APKBUILD
@@ -0,0 +1,29 @@
+# Contributor: Rob Blanckaert <basicer@gmail.com>
+# Maintainer: Rob Blanckaert <basicer@gmail.com>
+pkgname=bake
+pkgver=2.5.1
+pkgrel=0
+pkgdesc="A build system that lets you clone, build and run C/C++ projects with a single command"
+url="https://github.com/SanderMertens/bake"
+# other architectures unsupported
+arch="x86 x86_64 armv7 armhf aarch64"
+license="GPL-3.0-or-later"
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/SanderMertens/bake/archive/refs/tags/$pkgver.tar.gz
+ 01-no-backtrace-on-musl.patch
+ "
+# no tests
+options="!check"
+
+build() {
+ make -C build-Linux
+}
+
+package() {
+ install -Dm755 bake "$pkgdir"/usr/bin/bake
+}
+
+sha512sums="
+22942f157cf3e54fb6418a93bcfc940a538894ca56551b93bcb0c0bb5e907614a6b67f06e79046aa55e8649a4ef59012a8bc4912898e772d4a75b05af06d31cc bake-2.5.1.tar.gz
+e42652d91c047baf398c53ac6a6761381482a23bdf5dabb85c552dd816517084cd7d03acf7dc72347625e164ccbad043416cd3e22e6af8f707f36648d994949a 01-no-backtrace-on-musl.patch
+"
diff --git a/testing/bananui-clock/APKBUILD b/testing/bananui-clock/APKBUILD
new file mode 100644
index 00000000000..a9f3ad98e01
--- /dev/null
+++ b/testing/bananui-clock/APKBUILD
@@ -0,0 +1,34 @@
+# Maintainer: Affe Null <affenull2345@gmail.com>
+pkgname=bananui-clock
+pkgver=0.1.0
+pkgrel=0
+pkgdesc="Alarm clock app for bananui"
+url="https://git.abscue.de/obp/bananui/clock"
+arch="all"
+license="GPL-3.0-or-later"
+depends="
+ alarmwakeup
+ "
+makedepends="
+ alarmwakeup-dev
+ bananui-dev
+ libnotify-dev
+ meson
+ "
+source="
+ bananui-clock-v$pkgver.tar.gz::https://git.abscue.de/obp/bananui/clock/-/archive/v$pkgver/clock-v$pkgver.tar.gz
+ "
+options="!check" # no tests available
+builddir="$srcdir/clock-v$pkgver"
+
+build() {
+ abuild-meson . output
+ meson compile -C output
+}
+
+package() {
+ DESTDIR="$pkgdir/" meson install --no-rebuild -C output
+}
+sha512sums="
+0539cf56510f5f2226e4a9e3a8b05e9f0c6c1ba528b1d337877a5206a953ee98ef5cb95a5560a9cfea0e0188fb825004c4f8e168b26619ee388d85c38145bcfa bananui-clock-v0.1.0.tar.gz
+"
diff --git a/testing/bananui-daemons/APKBUILD b/testing/bananui-daemons/APKBUILD
new file mode 100644
index 00000000000..01f9d17de9c
--- /dev/null
+++ b/testing/bananui-daemons/APKBUILD
@@ -0,0 +1,33 @@
+# Maintainer: Affe Null <affenull2345@gmail.com>
+pkgname=bananui-daemons
+pkgver=0.1.0
+pkgrel=0
+pkgdesc="Keypad controlled UI for feature phones (daemons)"
+url="https://git.abscue.de/obp/bananui/settings-daemons"
+arch="all"
+license="GPL-3.0-or-later"
+depends="
+ brightnessctl-udev
+ "
+makedepends="
+ glib-dev
+ meson
+ "
+source="
+ bananui-daemons-v$pkgver.tar.gz::https://git.abscue.de/obp/bananui/settings-daemons/-/archive/v$pkgver/settings-daemons-v$pkgver.tar.gz
+ "
+options="!check" # no tests available
+builddir="$srcdir/settings-daemons-v$pkgver"
+
+build() {
+ abuild-meson . output
+ meson compile -C output
+}
+
+package() {
+ DESTDIR="$pkgdir/" meson install --no-rebuild -C output
+}
+
+sha512sums="
+90cbe5c7af36d1e69fd9030fcea4c51d55c152532e88a3697fc1deacaa6b5f723505f65aa18b891db753ef9b51901349a36db6597195d8930f71823158eae450 bananui-daemons-v0.1.0.tar.gz
+"
diff --git a/testing/bananui-shell/APKBUILD b/testing/bananui-shell/APKBUILD
new file mode 100644
index 00000000000..0b1776cd538
--- /dev/null
+++ b/testing/bananui-shell/APKBUILD
@@ -0,0 +1,43 @@
+# Maintainer: Affe Null <affenull2345@gmail.com>
+pkgname=bananui-shell
+pkgver=0.2.0
+pkgrel=0
+pkgdesc="Keypad controlled UI for feature phones (shell)"
+url="https://git.abscue.de/obp/bananui/shell"
+arch="all !s390x" # blocked by phoc
+license="LGPL-3.0-or-later"
+makedepends="
+ bananui-dev
+ callaudiod-dev
+ eudev-dev
+ feedbackd-dev
+ gnome-desktop-dev
+ gnome-menus-dev
+ meson
+ wayland-protocols
+ "
+depends="
+ bananui-daemons
+ bash
+ phoc
+ superd
+ xwayland
+ "
+source="
+ bananui-shell-v$pkgver.tar.gz::https://git.abscue.de/obp/bananui/shell/-/archive/v$pkgver/shell-v$pkgver.tar.gz
+ "
+options="!check" # no tests available
+builddir="$srcdir/shell-v$pkgver"
+
+build() {
+ abuild-meson . output -Dsuperd=true
+ meson compile -C output
+}
+
+package() {
+ DESTDIR="$pkgdir/" meson install --no-rebuild -C output
+}
+
+sha512sums="
+99ab6e9057bc69f075f20173edac6288b6598477d0c66a088526cd12b48118715bb211cc15482969b9d5ef1122708c6a249a14fb9afbfb872ee6663e13f1d80c bananui-shell-v0.2.0.tar.gz
+"
diff --git a/testing/bananui/APKBUILD b/testing/bananui/APKBUILD
new file mode 100644
index 00000000000..8296284dcfd
--- /dev/null
+++ b/testing/bananui/APKBUILD
@@ -0,0 +1,60 @@
+# Maintainer: Affe Null <affenull2345@gmail.com>
+pkgname=bananui
+pkgver=2.0.0
+pkgrel=0
+pkgdesc="Keypad controlled UI for feature phones"
+url="https://git.abscue.de/obp/bananui/bananui"
+arch="all"
+license="LGPL-3.0-or-later"
+makedepends="
+ librsvg-dev
+ libxkbcommon-dev
+ meson
+ pango-dev
+ wayland-dev
+ wayland-protocols
+ "
+depends="
+ adwaita-icon-theme
+ font-opensans
+ hicolor-icon-theme
+ "
+_igel_commit="4fcf8c8e4522209485454d343f14cacf6ea922a7"
+source="
+ https://git.abscue.de/obp/bananui/bananui/-/archive/v$pkgver/bananui-v$pkgver.tar.gz
+ https://git.abscue.de/stachel-os/igel-interpreter/-/archive/$_igel_commit/igel-interpreter-$_igel_commit.tar.gz
+ "
+subpackages="
+ $pkgname-dbg
+ $pkgname-demos
+ $pkgname-dev
+ "
+options="!check" # no tests available
+builddir="$srcdir/$pkgname-v$pkgver"
+
+prepare() {
+ default_prepare
+
+ rm -rf "$builddir/subprojects/igel-interpreter"
+ mv "$srcdir/igel-interpreter-$_igel_commit" "$builddir/subprojects/igel-interpreter"
+}
+
+build() {
+ abuild-meson . output
+ meson compile -C output
+}
+
+package() {
+ DESTDIR="$pkgdir/" meson install --no-rebuild -C output
+}
+
+demos() {
+ depends="font-noto-emoji"
+ pkgdesc="$pkgdesc (demo applications)"
+ amove usr/bin/bananui-uitest usr/bin/bananui-menutest
+}
+
+sha512sums="
+05517d4f8ec5514df035edd8743ee78cad17ea4734c380fb88bdbcffd72e5968aae2a21635c828e6f13852faa421e1d2862aa1f0c5d053a4d8648708de81b6bb bananui-v2.0.0.tar.gz
+2450e908a93526f00fbb51e3de453adaf85fb12273ce025be6455061c1639046320cfb978e559209c57e18a81a076e1272a8a058eaf73ecf2b516e400fa94e29 igel-interpreter-4fcf8c8e4522209485454d343f14cacf6ea922a7.tar.gz
+"
diff --git a/testing/bankstown-lv2/APKBUILD b/testing/bankstown-lv2/APKBUILD
new file mode 100644
index 00000000000..9b16b5655ef
--- /dev/null
+++ b/testing/bankstown-lv2/APKBUILD
@@ -0,0 +1,28 @@
+# Contributor: Milan P. Stanić <mps@arvanta.net>
+# Maintainer: Milan P. Stanić <mps@arvanta.net>
+pkgname=bankstown-lv2
+pkgver=1.1.0
+pkgrel=0
+pkgdesc="A barebones, fast LV2 bass enhancement plugin"
+url="https://crates.io/crates/bankstown-lv2"
+arch="aarch64" # for now needed only aarch64/apple silicon
+license="MIT"
+makedepends="cargo cargo-auditable"
+source="$pkgname-$pkgver.tar.gz::https://github.com/chadmed/bankstown/archive/refs/tags/$pkgver.tar.gz"
+builddir="$srcdir/"bankstown-$pkgver
+
+build() {
+ cargo auditable build --release
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ make DESTDIR=$pkgdir LIBDIR=/usr/lib install
+}
+
+sha512sums="
+74dbb96440f0260e08b3f96b28c310326d63bdb4360d4f43f2e1f9c89ff9c0fd4f3c81c78837e64df77e16034e28a23be217b647f3008cf5293c959a26f895d2 bankstown-lv2-1.1.0.tar.gz
+"
diff --git a/testing/barcode/APKBUILD b/testing/barcode/APKBUILD
index 650d86860bf..03ece95eea5 100644
--- a/testing/barcode/APKBUILD
+++ b/testing/barcode/APKBUILD
@@ -2,12 +2,14 @@
# Maintainer: mio <miyopan@e.email>
pkgname=barcode
pkgver=0.99
-pkgrel=0
+pkgrel=1
pkgdesc="Convert text strings to printed bars in various standards"
url="https://www.gnu.org/software/barcode/"
license="GPL-3.0-or-later"
arch="all !ppc64le" # Build error on ppc64le
-source="https://ftp.gnu.org/gnu/barcode/barcode-$pkgver.tar.gz"
+source="https://ftp.gnu.org/gnu/barcode/barcode-$pkgver.tar.gz
+ common.patch
+ "
options="!check" # No tests
prepare() {
@@ -18,13 +20,20 @@ prepare() {
}
build() {
- ./configure CFLAGS="$CFLAGS -fcommon" --prefix=/usr
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr
make
}
package() {
- make install prefix="$pkgdir"/usr
+ make install DESTDIR="$pkgdir"
+
+ rm -r "$pkgdir"/usr/share/info
}
+
sha512sums="
f500dbe7eaa657ed6879316835557533e0972c8740a8bb61bea46efdd4120827a3c412ca24fec6e1833395191521425dae272f10d8553a252896b363290118b1 barcode-0.99.tar.gz
+a8d7d5721d28f7ae882b192db5ca69cd1b4e0a737f514e9ef096643800739fe99b015932a9b38b90194a175a5e541258f3e9252711ef23e978b909860fa050aa common.patch
"
diff --git a/testing/barcode/common.patch b/testing/barcode/common.patch
new file mode 100644
index 00000000000..50c807b6234
--- /dev/null
+++ b/testing/barcode/common.patch
@@ -0,0 +1,25 @@
+diff --git a/barcode.h b/barcode.h
+index ed90e0c..ff7b8b4 100644
+--- a/barcode.h
++++ b/barcode.h
+@@ -123,6 +123,6 @@ extern int Barcode_Version(char *versionname);
+ }
+ #endif
+
+-int streaming;
++extern int streaming;
+
+ #endif /* _BARCODE_H_ */
+diff --git a/library.c b/library.c
+index 30946ff..5390a2b 100644
+--- a/library.c
++++ b/library.c
+@@ -30,6 +30,8 @@
+ #endif
+ #include <errno.h>
+
++int streaming;
++
+ /*
+ * This function allocates a barcode structure and strdup()s the
+ * text string. It returns NULL in case of error
diff --git a/testing/barman/APKBUILD b/testing/barman/APKBUILD
index 47fb2cdb9f9..773ddcd5f9d 100644
--- a/testing/barman/APKBUILD
+++ b/testing/barman/APKBUILD
@@ -1,15 +1,15 @@
# Contributor: Francesco Colista <fcolista@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=barman
-pkgver=2.19
-pkgrel=0
+pkgver=3.10.0
+pkgrel=1
pkgdesc="Backup and recovery manager for PostgreSQL"
-url="http://www.pgbarman.org"
+url="https://pgbarman.org"
arch="noarch"
license="GPL-3.0-or-later"
depends="python3 rsync postgresql-client py3-argcomplete py3-dateutil py3-psycopg2 py3-boto3"
-makedepends="py3-setuptools"
-subpackages="$pkgname-doc $pkgname-bash-completion"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+subpackages="$pkgname-doc $pkgname-bash-completion $pkgname-pyc"
pkgusers="barman"
pkggroups="barman"
install="$pkgname.pre-install"
@@ -18,11 +18,13 @@ checkdepends="py3-pytest-timeout py3-mock py3-pytest-runner py3-pip py3-mock"
source="$pkgname-$pkgver.tar.gz::https://github.com/EnterpriseDB/barman/releases/download/release/$pkgver/barman-$pkgver.tar.gz"
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" .dist/*.whl
install -Dm0644 ./scripts/barman.bash_completion \
"$pkgdir"/usr/share/bash-completion/completions/$pkgname
@@ -33,5 +35,5 @@ package() {
}
sha512sums="
-39dacf6e4f2b3262cfce73c0cc38026412494c4469c745e164aa3b4ae188c1f4b741e217f9fc50a101d71d8a9aa9546a1d106b69f1c514c83f80aa00addf7e0a barman-2.19.tar.gz
+84bdd314ee336b1e0863f42be071927da6d333e9a31655a69444c9922310d78f03d1a2a64a36565dc4f3469a33b0d2286ece796aa22b760e97e0610ce51aed25 barman-3.10.0.tar.gz
"
diff --git a/testing/barnyard2/APKBUILD b/testing/barnyard2/APKBUILD
index 62ce1ec38ee..b839e67530d 100644
--- a/testing/barnyard2/APKBUILD
+++ b/testing/barnyard2/APKBUILD
@@ -3,10 +3,11 @@
pkgname=barnyard2
pkgver=2.1.14_git20160413
_gitrev=f9186f2478bfb096c5a43bdb0c91985c3ef3e20d
-pkgrel=0
+pkgrel=1
pkgdesc="Parser for Snort unified/unified2 files"
url="https://github.com/firnsy/barnyard2"
-arch="all"
+# riscv64, ppc64le: blocked by snort -> luajit
+arch="all !ppc64le !riscv64"
license="GPL-2.0-only"
depends="snort"
install="$pkgname.pre-install"
diff --git a/testing/barrier/APKBUILD b/testing/barrier/APKBUILD
index 4b094db5cf6..154459878f9 100644
--- a/testing/barrier/APKBUILD
+++ b/testing/barrier/APKBUILD
@@ -2,14 +2,13 @@
# Maintainer: Sean McAvoy <seanmcavoy@gmail.com>
pkgname=barrier
pkgver=2.4.0
-pkgrel=0
+pkgrel=1
pkgdesc="share keyboard and mouse between systems over network"
url="https://github.com/debauchee/barrier"
arch="all"
license="GPL-2.0-only"
-options="!check"
depends="hicolor-icon-theme"
-makedepends="qt5-qtbase-dev cmake avahi-dev libxtst-dev curl-dev gtest-dev"
+makedepends="qt5-qtbase-dev cmake avahi-dev libxtst-dev curl-dev gtest-dev samurai"
subpackages="$pkgname-doc"
_filesystemver=614bbe87b80435d87ab8791564370e0c1d13627d
source="$pkgname-$pkgver.tar.gz::https://github.com/debauchee/barrier/archive/v$pkgver.tar.gz
@@ -26,7 +25,7 @@ prepare() {
}
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
-DBARRIER_REVISION:STRING=00000000 \
@@ -35,6 +34,11 @@ build() {
cmake --build build
}
+check() {
+ PATH="$PATH:$PWD/build/bin" \
+ ctest --output-on-failure --test-dir build
+}
+
package() {
DESTDIR="$pkgdir" cmake --build build --target install
diff --git a/testing/bartib/APKBUILD b/testing/bartib/APKBUILD
index bdeccaa4523..5b64805a5df 100644
--- a/testing/bartib/APKBUILD
+++ b/testing/bartib/APKBUILD
@@ -2,26 +2,22 @@
# Maintainer: guddaff <guddaff@protonmail.com>
pkgname=bartib
pkgver=1.0.1
-pkgrel=0
+pkgrel=1
pkgdesc="simple timetracker for the command line"
url="https://github.com/nikolassv/bartib"
arch="all !s390x !riscv64" # limeted by rust/cargo
license="GPL-3.0-or-later"
-makedepends="cargo"
+makedepends="cargo cargo-auditable"
source="$pkgname-$pkgver.tar.gz::https://github.com/nikolassv/bartib/archive/refs/tags/v$pkgver.tar.gz"
-export CARGO_PROFILE_RELEASE_LTO=true
-export CARGO_PROFILE_RELEASE_PANIC=abort
-export CARGO_PROFILE_RELEASE_CODEGEN_UNITS=1
-export CARGO_PROFILE_RELEASE_OPT_LEVEL=s
prepare() {
default_prepare
- cargo fetch --locked
+ cargo fetch --target="$CTARGET" --locked
}
build() {
- cargo build --release --frozen
+ cargo auditable build --release --frozen
}
check() {
@@ -29,7 +25,7 @@ check() {
}
package() {
- cargo install --frozen --offline --path . --root="$pkgdir/usr"
+ cargo auditable install --frozen --offline --path . --root="$pkgdir/usr"
rm "$pkgdir"/usr/.crates*
}
diff --git a/testing/base64c/APKBUILD b/testing/base64c/APKBUILD
new file mode 100644
index 00000000000..2ef81736c39
--- /dev/null
+++ b/testing/base64c/APKBUILD
@@ -0,0 +1,47 @@
+# Contributor: Jakub Jirutka <jakub@jirutka.cz>
+# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
+pkgname=base64c
+pkgver=0.2.1
+pkgrel=0
+pkgdesc="Base64 encoding/decoding library for C"
+url="https://gitlab.nic.cz/turris/base64c"
+arch="all"
+license="MIT"
+makedepends="
+ autoconf
+ automake
+ libtool
+ "
+checkdepends="check-dev"
+subpackages="$pkgname-dev"
+source="https://gitlab.nic.cz/turris/base64c/-/archive/v$pkgver/base64c-v$pkgver.tar.bz2
+ no-valgrind.patch
+ "
+builddir="$srcdir/$pkgname-v$pkgver"
+
+prepare() {
+ default_prepare
+ ./bootstrap
+}
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ $(want_check && echo '--enable-tests' || :)
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make install DESTDIR="$pkgdir"
+}
+
+sha512sums="
+6183b8314ce7066b3fabfc155606da76d9690ff9ada924e64c86e607d050c453a0fd9a245ee8de732e7daccb5bd532c03e0b191f4f4cf1d49f97973461757754 base64c-v0.2.1.tar.bz2
+1c3d5617839107bf45e9fda590acce3fb9ab97f70b55ac49fd47d595e53fdbdd81ae65407f98efe21b9b34e1d711b706a2d25c6b69b121058207006622cceb9d no-valgrind.patch
+"
diff --git a/testing/base64c/no-valgrind.patch b/testing/base64c/no-valgrind.patch
new file mode 100644
index 00000000000..b5b1731579c
--- /dev/null
+++ b/testing/base64c/no-valgrind.patch
@@ -0,0 +1,26 @@
+--- a/tests/Makefile.am
++++ b/tests/Makefile.am
+@@ -16,23 +16,6 @@
+ env AM_TAP_AWK='$(AWK)' TEST_OUTPUT_TAP="/dev/stdout" \
+ '$(SHELL)' '$(srcdir)/.aux/tap-driver.sh'
+
+-## Valgrind
+-VALGRIND_memcheck_FLAGS = \
+- --leak-check=full \
+- --show-leak-kinds=definite,indirect,possible \
+- --track-fds=yes \
+- --track-origins=yes \
+- --trace-children=yes \
+- --child-silent-after-fork=no
+-@VALGRIND_CHECK_RULES@
+-
+-# Rules generated for valgrind are for some reason called *-am. This is just an alias
+-check-valgrind: check-valgrind-am
+-define check_valgrind_rule
+-check-valgrind-$(1): check-valgrind-$(1)-am
+-endef
+-$(foreach tool,$(valgrind_tools),$(eval $(call check_valgrind_rule,$(tool))))
+-
+ ## Coverage
+ CODE_COVERAGE_LCOV_OPTIONS := --no-external
+ CODE_COVERAGE_GENHTML_OPTIONS := --prefix $(dir $(abs_top_builddir))
diff --git a/testing/bazel2/APKBUILD b/testing/bazel2/APKBUILD
deleted file mode 100644
index fedc80b10d1..00000000000
--- a/testing/bazel2/APKBUILD
+++ /dev/null
@@ -1,90 +0,0 @@
-# Contributor: Oleg Titov <oleg.titov@gmail.com>
-# Maintainer: Oleg Titov <oleg.titov@gmail.com>
-pkgname=bazel2
-pkgver=2.2.0
-pkgrel=1
-pkgdesc="A fast, scalable, multi-language and extensible build system"
-url="https://bazel.build/"
-#arch="x86_64"
-license="Apache-2.0"
-depends="bash libarchive java-jdk zip unzip"
-makedepends="python3 linux-headers protobuf coreutils"
-options="!strip"
-replaces="bazel"
-provides="bazel=$pkgver-r$pkgrel"
-subpackages="
- $pkgname-doc
- $pkgname-bash-completion
- $pkgname-zsh-completion
- $pkgname-examples::noarch
- "
-source="https://github.com/bazelbuild/bazel/releases/download/$pkgver/bazel-$pkgver-dist.zip"
-
-build() {
- # based on
- # https://github.com/vbatts/copr-build-bazel/blob/master/bazel.spec
- export EXTRA_BAZEL_ARGS="--host_javabase=@local_jdk//:jdk"
- export JAVA_HOME="/usr/lib/jvm/default-jvm/jre"
-
- # horrible of horribles, just to have python in the PATH
- # https://github.com/bazelbuild/bazel/issues/8665
- mkdir -p ./bin-hack
- ln -s /usr/bin/python3 ./bin-hack/python
- export PATH=$(pwd)/bin-hack:$PATH
-
- bash ./compile.sh
-
- ./output/bazel shutdown
-
- ./scripts/generate_bash_completion.sh \
- --bazel=output/bazel \
- --output=output/bazel-complete.bash \
- --prepend=scripts/bazel-complete-header.bash \
- --prepend=scripts/bazel-complete-template.bash
-
- echo startup --server_javabase=$JAVA_HOME \
- >> scripts/packages/bazel.bazelrc
-}
-
-check() {
- ./output/bazel test \
- --verbose_failures \
- --spawn_strategy=standalone \
- --genrule_strategy=standalone \
- --verbose_test_summary \
- --test_verbose_timeout_warnings \
- examples/cpp:hello-success_test
-
- ./output/bazel shutdown
-}
-
-package() {
- install -Dm755 ./scripts/packages/bazel.sh "$pkgdir"/usr/bin/bazel
- install -Dm755 ./output/bazel "$pkgdir"/usr/bin/bazel-real
- install -Dm755 ./scripts/packages/bazel.bazelrc \
- "$pkgdir"/etc/bazel.bazelrc
-
- mkdir -p "$pkgdir"/usr/share/bash-completion/completions
- mv "$builddir"/output/bazel-complete.bash \
- "$pkgdir"/usr/share/bash-completion/completions/bazel
-
- mkdir -p "$pkgdir"/usr/share/zsh/site-functions
- mv "$builddir"/scripts/zsh_completion/_bazel \
- "$pkgdir"/usr/share/zsh/site-functions/_bazel
-
- install -m644 -D -t "$pkgdir"/usr/share/doc/$pkgname README.md
-}
-
-examples() {
- mkdir -p "$subpkgdir"/usr/share/doc/"$pkgname"
- for d in examples third_party tools; do
- mv "$builddir/$d" "$subpkgdir/usr/share/doc/$pkgname"
- done
-}
-
-unpack() {
- mkdir -p "$builddir"
- unzip "$srcdir"/bazel-$pkgver-dist.zip -d "$builddir" > /dev/null
-}
-
-sha512sums="67011c3a045c0fd74cdcb98eef1c3ead6902a3bd65a629fe49911f9dbb4c39508bd91eb63c1fae68284136ad4994afb42a01c7f10983614e432f8be22a1c566e bazel-2.2.0-dist.zip"
diff --git a/testing/bazel3/APKBUILD b/testing/bazel3/APKBUILD
deleted file mode 100644
index 9724e01227f..00000000000
--- a/testing/bazel3/APKBUILD
+++ /dev/null
@@ -1,99 +0,0 @@
-# Contributor: Oleg Titov <oleg.titov@gmail.com>
-# Maintainer: Oleg Titov <oleg.titov@gmail.com>
-pkgname=bazel3
-pkgver=3.7.2
-pkgrel=1
-pkgdesc="A fast, scalable, multi-language and extensible build system"
-url="https://bazel.build/"
-arch=""
-arch="$arch !x86 !s390x" # fatal error: jni_md.h: No such file or directory
-arch="$arch !armhf !armv7" # java virtual machine runs out of resources
-arch="$arch !ppc64le" # build timeouts in CI
-arch="$arch !riscv64" # no jvm
-license="Apache-2.0"
-depends="bash libarchive java-jdk zip unzip"
-makedepends="python3 linux-headers protobuf coreutils"
-options="!strip"
-subpackages="
- $pkgname-doc
- $pkgname-bash-completion
- $pkgname-zsh-completion
- "
-source="https://github.com/bazelbuild/bazel/releases/download/$pkgver/bazel-$pkgver-dist.zip
- patch_TEMP_FAILURE_RETRY.patch
- backport-java11-support.patch"
-
-build() {
- # based on
- # https://github.com/vbatts/copr-build-bazel/blob/master/bazel.spec
- export EXTRA_BAZEL_ARGS="--host_javabase=@local_jdk//:jdk --sandbox_debug --verbose_failures"
- export JAVA_HOME="/usr/lib/jvm/default-jvm"
-
- case "$CARCH" in
- aarch64)
- export EXTRA_BAZEL_ARGS="$EXTRA_BAZEL_ARGS --nokeep_state_after_build --notrack_incremental_state --nokeep_state_after_build" ;;
- arm*)
- # increase heap size to addess arm* build failures
- export BAZEL_JAVAC_OPTS="-J-Xmx2g -J-Xms512m" ;;
- s390x)
- # increase heap size to addess s390x build failures
- export BAZEL_JAVAC_OPTS="-J-Xmx4g -J-Xms512m" ;;
- esac
-
- # horrible of horribles, just to have python in the PATH
- # https://github.com/bazelbuild/bazel/issues/8665
- mkdir -p ./bin-hack
- ln -s /usr/bin/python3 ./bin-hack/python
- export PATH=$(pwd)/bin-hack:$PATH
-
- bash ./compile.sh
-
- ./output/bazel shutdown
-
- ./scripts/generate_bash_completion.sh \
- --bazel=output/bazel \
- --output=output/bazel-complete.bash \
- --prepend=scripts/bazel-complete-header.bash \
- --prepend=scripts/bazel-complete-template.bash
-
- echo startup --server_javabase=$JAVA_HOME \
- >> scripts/packages/bazel.bazelrc
-}
-
-check() {
- ./output/bazel test \
- --verbose_failures \
- --spawn_strategy=standalone \
- --genrule_strategy=standalone \
- --verbose_test_summary \
- --test_verbose_timeout_warnings \
- examples/cpp:hello-success_test
-
- ./output/bazel shutdown
-}
-
-package() {
- install -Dm755 ./scripts/packages/bazel.sh "$pkgdir"/usr/bin/bazel
- install -Dm755 ./output/bazel "$pkgdir"/usr/bin/bazel-real
- install -Dm755 ./scripts/packages/bazel.bazelrc \
- "$pkgdir"/etc/bazel.bazelrc
-
- install -m644 -D -t "$pkgdir"/usr/share/doc/$pkgname README.md
-
- mkdir -p "$pkgdir"/usr/share/bash-completion/completions
- mv "$builddir"/output/bazel-complete.bash \
- "$pkgdir"/usr/share/bash-completion/completions/bazel
-
- mkdir -p "$pkgdir"/usr/share/zsh/site-functions
- mv "$builddir"/scripts/zsh_completion/_bazel \
- "$pkgdir"/usr/share/zsh/site-functions/_bazel
-}
-
-unpack() {
- mkdir -p "$builddir"
- unzip "$srcdir"/bazel-$pkgver-dist.zip -d "$builddir" > /dev/null
-}
-
-sha512sums="e8746ef5ec22feb95e9dbbddb3fb56cf8f49c80f326fc2a4e0ce2619607826fac22f46bfb995daee55bf9ffabb9d646b8454be2bce7b479da5cf2a7e5b3be62b bazel-3.7.2-dist.zip
-b9e54443431fd0523831a777ab193515151402e61fd74bb2bbf5362136c5bf0fdc3072609a6b52d43b3ff3778759250d81c888c4e158d3d54f78f5a7ff6337c7 patch_TEMP_FAILURE_RETRY.patch
-42847bd3cb19c39d7ca1e9220b0efac66893e5c94c802e438093ea96d5b4977b913fcb6f54fb038c175254c9906cad4b16f76cff02485d15f8f2e54f0864c7ee backport-java11-support.patch"
diff --git a/testing/bazel3/backport-java11-support.patch b/testing/bazel3/backport-java11-support.patch
deleted file mode 100644
index 008474a3b46..00000000000
--- a/testing/bazel3/backport-java11-support.patch
+++ /dev/null
@@ -1,600 +0,0 @@
-From 0d2d95cd7e34b4061c8e5fdfd21ba0ab8818c685 Mon Sep 17 00:00:00 2001
-From: Ivo List <ilist@google.com>
-Date: Mon, 7 Dec 2020 14:26:51 +0100
-Subject: [PATCH] Update to java_tools javac11 release 10.5 (#12647)
-Upstream: yes (https://github.com/bazelbuild/bazel/commit/0d2d95cd7e34b4061c8e5fdfd21ba0ab8818c685)
-
-* Java_tools javac11 v10.5 rc1.
-
-* Regression tests for https://github.com/bazelbuild/bazel/issues/12605
-
-* Java_tools javac11 v10.5 release.
----
- WORKSPACE | 72 ++++++-------
- .../build/lib/bazel/rules/java/jdk.WORKSPACE | 18 ++--
- src/test/shell/bazel/bazel_java14_test.sh | 100 +++++++++++++++++
- src/test/shell/bazel/bazel_java15_test.sh | 102 ++++++++++++++++++
- src/test/shell/bazel/bazel_java_test.sh | 101 +++++++++++++++++
- .../shell/bazel/testdata/jdk_http_archives | 12 +--
- 6 files changed, 354 insertions(+), 51 deletions(-)
-
-diff --git a/WORKSPACE b/WORKSPACE
-index 070b97616d2c..0878e18507ae 100644
---- a/WORKSPACE
-+++ b/WORKSPACE
-@@ -146,9 +146,9 @@ distdir_tar(
- # Keep in sync with the archives fetched as part of building bazel.
- archives = [
- "e0b0291b2c51fbe5a7cfa14473a1ae850f94f021.zip",
-- "java_tools_javac11_linux-v10.4.zip",
-- "java_tools_javac11_windows-v10.4.zip",
-- "java_tools_javac11_darwin-v10.4.zip",
-+ "java_tools_javac11_linux-v10.5.zip",
-+ "java_tools_javac11_windows-v10.5.zip",
-+ "java_tools_javac11_darwin-v10.5.zip",
- "coverage_output_generator-v2.5.zip",
- # bazelbuid/stardoc
- "1ef781ced3b1443dca3ed05dec1989eca1a4e1cd.tar.gz",
-@@ -187,9 +187,9 @@ distdir_tar(
- dirname = "derived/distdir",
- sha256 = {
- "e0b0291b2c51fbe5a7cfa14473a1ae850f94f021.zip": "fe2e04f91ce8c59d49d91b8102edc6627c6fa2906c1b0e7346f01419ec4f419d",
-- "java_tools_javac11_linux-v10.4.zip": "7debb49457db2f10990f759b6984c6d4ccb4917a9a9fd402a6f224b5fb0e8e36",
-- "java_tools_javac11_windows-v10.4.zip": "3a7d802ccefffa6ecf6e190aaae081cf27fc0275e2a8dad7d3a943c63a4d0edc",
-- "java_tools_javac11_darwin-v10.4.zip": "587a7bc34c95a217a941b01a5a1f8ee48114fbe87e05872a41b7e019e5297a8a",
-+ "java_tools_javac11_linux-v10.5.zip": "355c27c603e8fc64bb0e2d7f809741f42576d5f4540f9ce28fd55922085af639",
-+ "java_tools_javac11_windows-v10.5.zip": "0b4469ca1a9b3f26cb82fb0f4fd00096f0d839ec2fae097e7bdbb982e3a95a59",
-+ "java_tools_javac11_darwin-v10.5.zip": "95aae0a32a170c72a68abb0b9dd6bac7ea3e08c504a5d8c6e8bf7ac51628c98f",
- "coverage_output_generator-v2.5.zip": "cd14f1cb4559e4723e63b7e7b06d09fcc3bd7ba58d03f354cdff1439bd936a7d",
- # bazelbuild/stardoc
- "1ef781ced3b1443dca3ed05dec1989eca1a4e1cd.tar.gz": "5a725b777976b77aa122b707d1b6f0f39b6020f66cd427bb111a585599c857b1",
-@@ -230,14 +230,14 @@ distdir_tar(
- "https://mirror.bazel.build/github.com/google/desugar_jdk_libs/archive/e0b0291b2c51fbe5a7cfa14473a1ae850f94f021.zip",
- "https://github.com/google/desugar_jdk_libs/archive/e0b0291b2c51fbe5a7cfa14473a1ae850f94f021.zip",
- ],
-- "java_tools_javac11_linux-v10.4.zip": [
-- "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.4/java_tools_javac11_linux-v10.4.zip",
-+ "java_tools_javac11_linux-v10.5.zip": [
-+ "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.5/java_tools_javac11_linux-v10.5.zip",
- ],
-- "java_tools_javac11_windows-v10.4.zip": [
-- "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.4/java_tools_javac11_windows-v10.4.zip",
-+ "java_tools_javac11_windows-v10.5.zip": [
-+ "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.5/java_tools_javac11_windows-v10.5.zip",
- ],
-- "java_tools_javac11_darwin-v10.4.zip": [
-- "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.4/java_tools_javac11_darwin-v10.4.zip",
-+ "java_tools_javac11_darwin-v10.5.zip": [
-+ "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.5/java_tools_javac11_darwin-v10.5.zip",
- ],
- "coverage_output_generator-v2.5.zip": [
- "https://mirror.bazel.build/bazel_coverage_output_generator/releases/coverage_output_generator-v2.5.zip",
-@@ -545,9 +545,9 @@ http_archive(
- distdir_tar(
- name = "test_WORKSPACE_files",
- archives = [
-- "java_tools_javac11_linux-v10.4.zip",
-- "java_tools_javac11_windows-v10.4.zip",
-- "java_tools_javac11_darwin-v10.4.zip",
-+ "java_tools_javac11_linux-v10.5.zip",
-+ "java_tools_javac11_windows-v10.5.zip",
-+ "java_tools_javac11_darwin-v10.5.zip",
- "coverage_output_generator-v2.5.zip",
- "zulu11.37.17-ca-jdk11.0.6-linux_x64.tar.gz",
- "zulu11.37.48-ca-jdk11.0.6-linux_aarch64.tar.gz",
-@@ -579,9 +579,9 @@ distdir_tar(
- ],
- dirname = "test_WORKSPACE/distdir",
- sha256 = {
-- "java_tools_javac11_linux-v10.4.zip": "7debb49457db2f10990f759b6984c6d4ccb4917a9a9fd402a6f224b5fb0e8e36",
-- "java_tools_javac11_windows-v10.4.zip": "3a7d802ccefffa6ecf6e190aaae081cf27fc0275e2a8dad7d3a943c63a4d0edc",
-- "java_tools_javac11_darwin-v10.4.zip": "587a7bc34c95a217a941b01a5a1f8ee48114fbe87e05872a41b7e019e5297a8a",
-+ "java_tools_javac11_linux-v10.5.zip": "355c27c603e8fc64bb0e2d7f809741f42576d5f4540f9ce28fd55922085af639",
-+ "java_tools_javac11_windows-v10.5.zip": "0b4469ca1a9b3f26cb82fb0f4fd00096f0d839ec2fae097e7bdbb982e3a95a59",
-+ "java_tools_javac11_darwin-v10.5.zip": "95aae0a32a170c72a68abb0b9dd6bac7ea3e08c504a5d8c6e8bf7ac51628c98f",
- "coverage_output_generator-v2.5.zip": "cd14f1cb4559e4723e63b7e7b06d09fcc3bd7ba58d03f354cdff1439bd936a7d",
- "zulu11.37.17-ca-jdk11.0.6-linux_x64.tar.gz": "360626cc19063bc411bfed2914301b908a8f77a7919aaea007a977fa8fb3cde1",
- "zulu11.37.48-ca-jdk11.0.6-linux_aarch64.tar.gz": "a452f1b9682d9f83c1c14e54d1446e1c51b5173a3a05dcb013d380f9508562e4",
-@@ -612,9 +612,9 @@ distdir_tar(
- "df3ea785d8c30a9503321a3d35ee7d35808f190d.tar.gz": "f368a8476f4e2e0eccf8a7318b98dafbe30b2600f4e3cf52636e5eb145aba06a",
- },
- urls = {
-- "java_tools_javac11_linux-v10.4.zip": ["https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.4/java_tools_javac11_linux-v10.4.zip"],
-- "java_tools_javac11_windows-v10.4.zip": ["https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.4/java_tools_javac11_windows-v10.4.zip"],
-- "java_tools_javac11_darwin-v10.4.zip": ["https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.4/java_tools_javac11_darwin-v10.4.zip"],
-+ "java_tools_javac11_linux-v10.5.zip": ["https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.5/java_tools_javac11_linux-v10.5.zip"],
-+ "java_tools_javac11_windows-v10.5.zip": ["https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.5/java_tools_javac11_windows-v10.5.zip"],
-+ "java_tools_javac11_darwin-v10.5.zip": ["https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.5/java_tools_javac11_darwin-v10.5.zip"],
- "coverage_output_generator-v2.5.zip": ["https://mirror.bazel.build/bazel_coverage_output_generator/releases/coverage_output_generator-v2.5.zip"],
- "zulu11.37.17-ca-jdk11.0.6-linux_x64.tar.gz": ["https://mirror.bazel.build/openjdk/azul-zulu11.37.17-ca-jdk11.0.6/zulu11.37.17-ca-jdk11.0.6-linux_x64.tar.gz"],
- "zulu11.37.48-ca-jdk11.0.6-linux_aarch64.tar.gz": ["https://mirror.bazel.build/openjdk/azul-zulu11.37.48-ca-jdk11.0.6/zulu11.37.48-ca-jdk11.0.6-linux_aarch64.tar.gz"],
-@@ -919,10 +919,10 @@ http_archive(
- name = "remote_java_tools_linux_for_testing",
- patch_cmds = EXPORT_WORKSPACE_IN_BUILD_FILE,
- patch_cmds_win = EXPORT_WORKSPACE_IN_BUILD_FILE_WIN,
-- sha256 = "7debb49457db2f10990f759b6984c6d4ccb4917a9a9fd402a6f224b5fb0e8e36",
-+ sha256 = "355c27c603e8fc64bb0e2d7f809741f42576d5f4540f9ce28fd55922085af639",
- urls = [
-- "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.4/java_tools_javac11_linux-v10.4.zip",
-- "https://github.com/bazelbuild/java_tools/releases/download/javac11_v10.4/java_tools_javac11_linux-v10.4.zip",
-+ "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.5/java_tools_javac11_linux-v10.5.zip",
-+ "https://github.com/bazelbuild/java_tools/releases/download/javac11_v10.5/java_tools_javac11_linux-v10.5.zip",
- ],
- )
-
-@@ -931,10 +931,10 @@ http_archive(
- name = "remote_java_tools_windows_for_testing",
- patch_cmds = EXPORT_WORKSPACE_IN_BUILD_FILE,
- patch_cmds_win = EXPORT_WORKSPACE_IN_BUILD_FILE_WIN,
-- sha256 = "3a7d802ccefffa6ecf6e190aaae081cf27fc0275e2a8dad7d3a943c63a4d0edc",
-+ sha256 = "0b4469ca1a9b3f26cb82fb0f4fd00096f0d839ec2fae097e7bdbb982e3a95a59",
- urls = [
-- "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.4/java_tools_javac11_windows-v10.4.zip",
-- "https://github.com/bazelbuild/java_tools/releases/download/javac11_v10.4/java_tools_javac11_windows-v10.4.zip",
-+ "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.5/java_tools_javac11_windows-v10.5.zip",
-+ "https://github.com/bazelbuild/java_tools/releases/download/javac11_v10.5/java_tools_javac11_windows-v10.5.zip",
- ],
- )
-
-@@ -943,10 +943,10 @@ http_archive(
- name = "remote_java_tools_darwin_for_testing",
- patch_cmds = EXPORT_WORKSPACE_IN_BUILD_FILE,
- patch_cmds_win = EXPORT_WORKSPACE_IN_BUILD_FILE_WIN,
-- sha256 = "587a7bc34c95a217a941b01a5a1f8ee48114fbe87e05872a41b7e019e5297a8a",
-+ sha256 = "95aae0a32a170c72a68abb0b9dd6bac7ea3e08c504a5d8c6e8bf7ac51628c98f",
- urls = [
-- "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.4/java_tools_javac11_darwin-v10.4.zip",
-- "https://github.com/bazelbuild/java_tools/releases/download/javac11_v10.4/java_tools_javac11_darwin-v10.4.zip",
-+ "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.5/java_tools_javac11_darwin-v10.5.zip",
-+ "https://github.com/bazelbuild/java_tools/releases/download/javac11_v10.5/java_tools_javac11_darwin-v10.5.zip",
- ],
- )
-
-@@ -955,9 +955,9 @@ http_archive(
- name = "remote_java_tools_javac11_test_linux",
- patch_cmds = EXPORT_WORKSPACE_IN_BUILD_FILE,
- patch_cmds_win = EXPORT_WORKSPACE_IN_BUILD_FILE_WIN,
-- sha256 = "7debb49457db2f10990f759b6984c6d4ccb4917a9a9fd402a6f224b5fb0e8e36",
-+ sha256 = "355c27c603e8fc64bb0e2d7f809741f42576d5f4540f9ce28fd55922085af639",
- urls = [
-- "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.4/java_tools_javac11_linux-v10.4.zip",
-+ "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.5/java_tools_javac11_linux-v10.5.zip",
- ],
- )
-
-@@ -966,9 +966,9 @@ http_archive(
- name = "remote_java_tools_javac11_test_windows",
- patch_cmds = EXPORT_WORKSPACE_IN_BUILD_FILE,
- patch_cmds_win = EXPORT_WORKSPACE_IN_BUILD_FILE_WIN,
-- sha256 = "3a7d802ccefffa6ecf6e190aaae081cf27fc0275e2a8dad7d3a943c63a4d0edc",
-+ sha256 = "0b4469ca1a9b3f26cb82fb0f4fd00096f0d839ec2fae097e7bdbb982e3a95a59",
- urls = [
-- "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.4/java_tools_javac11_windows-v10.4.zip",
-+ "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.5/java_tools_javac11_windows-v10.5.zip",
- ],
- )
-
-@@ -977,9 +977,9 @@ http_archive(
- name = "remote_java_tools_javac11_test_darwin",
- patch_cmds = EXPORT_WORKSPACE_IN_BUILD_FILE,
- patch_cmds_win = EXPORT_WORKSPACE_IN_BUILD_FILE_WIN,
-- sha256 = "587a7bc34c95a217a941b01a5a1f8ee48114fbe87e05872a41b7e019e5297a8a",
-+ sha256 = "95aae0a32a170c72a68abb0b9dd6bac7ea3e08c504a5d8c6e8bf7ac51628c98f",
- urls = [
-- "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.4/java_tools_javac11_darwin-v10.4.zip",
-+ "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.5/java_tools_javac11_darwin-v10.5.zip",
- ],
- )
-
-diff --git a/src/main/java/com/google/devtools/build/lib/bazel/rules/java/jdk.WORKSPACE b/src/main/java/com/google/devtools/build/lib/bazel/rules/java/jdk.WORKSPACE
-index e06c7591dcf1..275aa365d80b 100644
---- a/src/main/java/com/google/devtools/build/lib/bazel/rules/java/jdk.WORKSPACE
-+++ b/src/main/java/com/google/devtools/build/lib/bazel/rules/java/jdk.WORKSPACE
-@@ -163,10 +163,10 @@ maybe(
- maybe(
- http_archive,
- name = "remote_java_tools_linux",
-- sha256 = "7debb49457db2f10990f759b6984c6d4ccb4917a9a9fd402a6f224b5fb0e8e36",
-+ sha256 = "355c27c603e8fc64bb0e2d7f809741f42576d5f4540f9ce28fd55922085af639",
- urls = [
-- "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.4/java_tools_javac11_linux-v10.4.zip",
-- "https://github.com/bazelbuild/java_tools/releases/download/javac11_v10.4/java_tools_javac11_linux-v10.4.zip",
-+ "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.5/java_tools_javac11_linux-v10.5.zip",
-+ "https://github.com/bazelbuild/java_tools/releases/download/javac11_v10.5/java_tools_javac11_linux-v10.5.zip",
- ],
- )
-
-@@ -174,10 +174,10 @@ maybe(
- maybe(
- http_archive,
- name = "remote_java_tools_windows",
-- sha256 = "3a7d802ccefffa6ecf6e190aaae081cf27fc0275e2a8dad7d3a943c63a4d0edc",
-+ sha256 = "0b4469ca1a9b3f26cb82fb0f4fd00096f0d839ec2fae097e7bdbb982e3a95a59",
- urls = [
-- "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.4/java_tools_javac11_windows-v10.4.zip",
-- "https://github.com/bazelbuild/java_tools/releases/download/javac11_v10.4/java_tools_javac11_windows-v10.4.zip",
-+ "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.5/java_tools_javac11_windows-v10.5.zip",
-+ "https://github.com/bazelbuild/java_tools/releases/download/javac11_v10.5/java_tools_javac11_windows-v10.5.zip",
- ],
- )
-
-@@ -185,10 +185,10 @@ maybe(
- maybe(
- http_archive,
- name = "remote_java_tools_darwin",
-- sha256 = "587a7bc34c95a217a941b01a5a1f8ee48114fbe87e05872a41b7e019e5297a8a",
-+ sha256 = "95aae0a32a170c72a68abb0b9dd6bac7ea3e08c504a5d8c6e8bf7ac51628c98f",
- urls = [
-- "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.4/java_tools_javac11_darwin-v10.4.zip",
-- "https://github.com/bazelbuild/java_tools/releases/download/javac11_v10.4/java_tools_javac11_darwin-v10.4.zip",
-+ "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.5/java_tools_javac11_darwin-v10.5.zip",
-+ "https://github.com/bazelbuild/java_tools/releases/download/javac11_v10.5/java_tools_javac11_darwin-v10.5.zip",
- ],
- )
-
-diff --git a/src/test/shell/bazel/bazel_java14_test.sh b/src/test/shell/bazel/bazel_java14_test.sh
-index ed820373c274..59f49d1401a7 100755
---- a/src/test/shell/bazel/bazel_java14_test.sh
-+++ b/src/test/shell/bazel/bazel_java14_test.sh
-@@ -113,4 +113,104 @@ EOF
- expect_log "0"
- }
-
-+# Regression test for https://github.com/bazelbuild/bazel/issues/12605
-+function test_java15_plugins() {
-+ mkdir -p java/main
-+ cat >java/main/BUILD <<EOF
-+java_library(
-+ name = "Anno",
-+ srcs = ["Anno.java"],
-+)
-+
-+java_plugin(
-+ name = "Proc",
-+ srcs = ["Proc.java"],
-+ deps = [":Anno"],
-+ processor_class = "ex.Proc",
-+ generates_api = True,
-+)
-+
-+java_library(
-+ name = "C1",
-+ srcs = ["C1.java"],
-+ deps = [":Anno"],
-+ plugins = [":Proc"],
-+)
-+
-+java_library(
-+ name = "C2",
-+ srcs = ["C2.java"],
-+ deps = [":C1"],
-+)
-+EOF
-+
-+ cat >java/main/C1.java <<EOF
-+package ex;
-+
-+public class C1 {
-+ @Anno
-+ @Deprecated
-+ public void m() {}
-+}
-+EOF
-+
-+
-+ cat >java/main/C2.java <<EOF
-+package ex;
-+
-+public class C2 {
-+ public void m() {
-+ new C1().m();
-+ }
-+}
-+
-+EOF
-+
-+ cat >java/main/Anno.java <<EOF
-+package ex;
-+
-+import java.lang.annotation.ElementType;
-+import java.lang.annotation.Retention;
-+import java.lang.annotation.RetentionPolicy;
-+import java.lang.annotation.Target;
-+
-+@Retention(RetentionPolicy.RUNTIME)
-+@Target({ElementType.METHOD})
-+public @interface Anno {}
-+EOF
-+
-+ cat >java/main/Proc.java <<EOF
-+package ex;
-+
-+import java.util.Set;
-+
-+import javax.annotation.processing.AbstractProcessor;
-+import javax.annotation.processing.RoundEnvironment;
-+import javax.annotation.processing.SupportedAnnotationTypes;
-+import javax.annotation.processing.SupportedSourceVersion;
-+import javax.lang.model.SourceVersion;
-+import javax.lang.model.element.Element;
-+import javax.lang.model.element.TypeElement;
-+import javax.lang.model.util.Elements;
-+import javax.tools.Diagnostic.Kind;
-+
-+@SupportedSourceVersion(SourceVersion.RELEASE_8)
-+@SupportedAnnotationTypes("ex.Anno")
-+public class Proc extends AbstractProcessor {
-+ @Override
-+ public boolean process(Set<? extends TypeElement> annotations, RoundEnvironment roundEnv) {
-+ Elements els = processingEnv.getElementUtils();
-+ for (Element el : roundEnv.getElementsAnnotatedWith(Anno.class)) {
-+ if (els.isDeprecated(el)) {
-+ processingEnv.getMessager().printMessage(Kind.WARNING, "deprecated");
-+ }
-+ }
-+ return true;
-+ }
-+}
-+EOF
-+
-+ bazel build //java/main:C2 &>"${TEST_log}" || fail "Expected to build"
-+}
-+
- run_suite "Tests new Java 14 language features"
-diff --git a/src/test/shell/bazel/bazel_java15_test.sh b/src/test/shell/bazel/bazel_java15_test.sh
-index 124e40a2b130..cff160843124 100755
---- a/src/test/shell/bazel/bazel_java15_test.sh
-+++ b/src/test/shell/bazel/bazel_java15_test.sh
-@@ -114,4 +114,106 @@ EOF
- expect_log "^World\$"
- }
-
-+# Regression test for https://github.com/bazelbuild/bazel/issues/12605
-+function test_java15_plugins() {
-+ mkdir -p java/main
-+ cat >java/main/BUILD <<EOF
-+java_library(
-+ name = "Anno",
-+ srcs = ["Anno.java"],
-+)
-+
-+java_plugin(
-+ name = "Proc",
-+ srcs = ["Proc.java"],
-+ deps = [":Anno"],
-+ processor_class = "ex.Proc",
-+ generates_api = True,
-+)
-+
-+java_library(
-+ name = "C1",
-+ srcs = ["C1.java"],
-+ deps = [":Anno"],
-+ plugins = [":Proc"],
-+)
-+
-+java_library(
-+ name = "C2",
-+ srcs = ["C2.java"],
-+ deps = [":C1"],
-+)
-+EOF
-+
-+ cat >java/main/C1.java <<EOF
-+package ex;
-+
-+public class C1 {
-+ @Anno
-+ @Deprecated
-+ public void m() {}
-+}
-+EOF
-+
-+
-+ cat >java/main/C2.java <<EOF
-+package ex;
-+
-+public class C2 {
-+ public void m() {
-+ new C1().m();
-+ }
-+}
-+
-+EOF
-+
-+ cat >java/main/Anno.java <<EOF
-+package ex;
-+
-+import java.lang.annotation.ElementType;
-+import java.lang.annotation.Retention;
-+import java.lang.annotation.RetentionPolicy;
-+import java.lang.annotation.Target;
-+
-+@Retention(RetentionPolicy.RUNTIME)
-+@Target({ElementType.METHOD})
-+public @interface Anno {}
-+EOF
-+
-+ cat >java/main/Proc.java <<EOF
-+package ex;
-+
-+import java.util.Set;
-+
-+import javax.annotation.processing.AbstractProcessor;
-+import javax.annotation.processing.RoundEnvironment;
-+import javax.annotation.processing.SupportedAnnotationTypes;
-+import javax.annotation.processing.SupportedSourceVersion;
-+import javax.lang.model.SourceVersion;
-+import javax.lang.model.element.Element;
-+import javax.lang.model.element.TypeElement;
-+import javax.lang.model.util.Elements;
-+import javax.tools.Diagnostic.Kind;
-+
-+@SupportedSourceVersion(SourceVersion.RELEASE_8)
-+@SupportedAnnotationTypes("ex.Anno")
-+public class Proc extends AbstractProcessor {
-+ @Override
-+ public boolean process(Set<? extends TypeElement> annotations, RoundEnvironment roundEnv) {
-+ Elements els = processingEnv.getElementUtils();
-+ for (Element el : roundEnv.getElementsAnnotatedWith(Anno.class)) {
-+ if (els.isDeprecated(el)) {
-+ processingEnv.getMessager().printMessage(Kind.WARNING, "deprecated");
-+ }
-+ }
-+ return true;
-+ }
-+}
-+EOF
-+
-+ bazel build //java/main:C2 &>"${TEST_log}" || fail "Expected to build"
-+}
-+
-+
-+
- run_suite "Tests new Java 15 language features"
-diff --git a/src/test/shell/bazel/bazel_java_test.sh b/src/test/shell/bazel/bazel_java_test.sh
-index b544b21fd551..ef1b0f05f4d8 100755
---- a/src/test/shell/bazel/bazel_java_test.sh
-+++ b/src/test/shell/bazel/bazel_java_test.sh
-@@ -1626,4 +1626,105 @@ EOF
- expect_log "hello 123"
- }
-
-+# Regression test for https://github.com/bazelbuild/bazel/issues/12605
-+function test_java15_plugins() {
-+ mkdir -p java/main
-+ cat >java/main/BUILD <<EOF
-+java_library(
-+ name = "Anno",
-+ srcs = ["Anno.java"],
-+)
-+
-+java_plugin(
-+ name = "Proc",
-+ srcs = ["Proc.java"],
-+ deps = [":Anno"],
-+ processor_class = "ex.Proc",
-+ generates_api = True,
-+)
-+
-+java_library(
-+ name = "C1",
-+ srcs = ["C1.java"],
-+ deps = [":Anno"],
-+ plugins = [":Proc"],
-+)
-+
-+java_library(
-+ name = "C2",
-+ srcs = ["C2.java"],
-+ deps = [":C1"],
-+)
-+EOF
-+
-+ cat >java/main/C1.java <<EOF
-+package ex;
-+
-+public class C1 {
-+ @Anno
-+ @Deprecated
-+ public void m() {}
-+}
-+EOF
-+
-+
-+ cat >java/main/C2.java <<EOF
-+package ex;
-+
-+public class C2 {
-+ public void m() {
-+ new C1().m();
-+ }
-+}
-+
-+EOF
-+
-+ cat >java/main/Anno.java <<EOF
-+package ex;
-+
-+import java.lang.annotation.ElementType;
-+import java.lang.annotation.Retention;
-+import java.lang.annotation.RetentionPolicy;
-+import java.lang.annotation.Target;
-+
-+@Retention(RetentionPolicy.RUNTIME)
-+@Target({ElementType.METHOD})
-+public @interface Anno {}
-+EOF
-+
-+ cat >java/main/Proc.java <<EOF
-+package ex;
-+
-+import java.util.Set;
-+
-+import javax.annotation.processing.AbstractProcessor;
-+import javax.annotation.processing.RoundEnvironment;
-+import javax.annotation.processing.SupportedAnnotationTypes;
-+import javax.annotation.processing.SupportedSourceVersion;
-+import javax.lang.model.SourceVersion;
-+import javax.lang.model.element.Element;
-+import javax.lang.model.element.TypeElement;
-+import javax.lang.model.util.Elements;
-+import javax.tools.Diagnostic.Kind;
-+
-+@SupportedSourceVersion(SourceVersion.RELEASE_8)
-+@SupportedAnnotationTypes("ex.Anno")
-+public class Proc extends AbstractProcessor {
-+ @Override
-+ public boolean process(Set<? extends TypeElement> annotations, RoundEnvironment roundEnv) {
-+ Elements els = processingEnv.getElementUtils();
-+ for (Element el : roundEnv.getElementsAnnotatedWith(Anno.class)) {
-+ if (els.isDeprecated(el)) {
-+ processingEnv.getMessager().printMessage(Kind.WARNING, "deprecated");
-+ }
-+ }
-+ return true;
-+ }
-+}
-+EOF
-+
-+ bazel build //java/main:C2 &>"${TEST_log}" || fail "Expected to build"
-+}
-+
-+
- run_suite "Java integration tests"
-diff --git a/src/test/shell/bazel/testdata/jdk_http_archives b/src/test/shell/bazel/testdata/jdk_http_archives
-index 03ad9a6cfb12..5122a14cd63a 100644
---- a/src/test/shell/bazel/testdata/jdk_http_archives
-+++ b/src/test/shell/bazel/testdata/jdk_http_archives
-@@ -2,25 +2,25 @@
- # This must be kept in sync with the top-level WORKSPACE file.
- http_archive(
- name = "remote_java_tools_javac11_test_linux",
-- sha256 = "7debb49457db2f10990f759b6984c6d4ccb4917a9a9fd402a6f224b5fb0e8e36",
-+ sha256 = "355c27c603e8fc64bb0e2d7f809741f42576d5f4540f9ce28fd55922085af639",
- urls = [
-- "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.4/java_tools_javac11_linux-v10.4.zip",
-+ "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.5/java_tools_javac11_linux-v10.5.zip",
- ],
- )
- # This must be kept in sync with the top-level WORKSPACE file.
- http_archive(
- name = "remote_java_tools_javac11_test_windows",
-- sha256 = "3a7d802ccefffa6ecf6e190aaae081cf27fc0275e2a8dad7d3a943c63a4d0edc",
-+ sha256 = "0b4469ca1a9b3f26cb82fb0f4fd00096f0d839ec2fae097e7bdbb982e3a95a59",
- urls = [
-- "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.4/java_tools_javac11_windows-v10.4.zip",
-+ "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.5/java_tools_javac11_windows-v10.5.zip",
- ],
- )
- # This must be kept in sync with the top-level WORKSPACE file.
- http_archive(
- name = "remote_java_tools_javac11_test_darwin",
-- sha256 = "587a7bc34c95a217a941b01a5a1f8ee48114fbe87e05872a41b7e019e5297a8a",
-+ sha256 = "95aae0a32a170c72a68abb0b9dd6bac7ea3e08c504a5d8c6e8bf7ac51628c98f",
- urls = [
-- "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.4/java_tools_javac11_darwin-v10.4.zip",
-+ "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.5/java_tools_javac11_darwin-v10.5.zip",
- ],
- )
-
diff --git a/testing/bazel3/patch_TEMP_FAILURE_RETRY.patch b/testing/bazel3/patch_TEMP_FAILURE_RETRY.patch
deleted file mode 100644
index 127c5edbe56..00000000000
--- a/testing/bazel3/patch_TEMP_FAILURE_RETRY.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/src/main/tools/linux-sandbox-pid1.cc.old
-+++ b/src/main/tools/linux-sandbox-pid1.cc
-@@ -54,6 +54,17 @@
- #include "src/main/tools/logging.h"
- #include "src/main/tools/process-tools.h"
-
-+// TEPM_FAILURE_RETRY is glibc specific and is not available on e.g. musl
-+// Taken from glibc unistd.h
-+#ifndef TEMP_FAILURE_RETRY
-+# define TEMP_FAILURE_RETRY(expression) \
-+ (__extension__ \
-+ ({ long int __result; \
-+ do __result = (long int) (expression); \
-+ while (__result == -1L && errno == EINTR); \
-+ __result; }))
-+#endif
-+
- static int global_child_pid;
-
- static void SetupSelfDestruction(int *sync_pipe) {
diff --git a/testing/bazel4/APKBUILD b/testing/bazel4/APKBUILD
deleted file mode 100644
index 24f330e1b3e..00000000000
--- a/testing/bazel4/APKBUILD
+++ /dev/null
@@ -1,143 +0,0 @@
-# Contributor: Oleg Titov <oleg.titov@gmail.com>
-# Contributor: Jesse Chan <jc@linux.com>
-# Maintainer: Jesse Chan <jc@linux.com>
-pkgname=bazel4
-pkgver=4.2.2
-pkgrel=1
-pkgdesc="A fast, scalable, multi-language and extensible build system"
-url="https://bazel.build/"
-arch="all"
-arch="$arch !x86 !armhf !armv7" # JDK dropped support
-arch="$arch !riscv64" # JDK not yet bootstrapped
-arch="$arch !ppc64le" # absl: Must implement UnscaledCycleClock::Frequency()
-arch="$arch !s390x" # aborted: SIGFPE (0x8) at pc=0x000003ffb1f18462 (sent by kill)
-license="Apache-2.0"
-depends="bash java-jdk libarchive unzip zip"
-makedepends="coreutils linux-headers openjdk17 protobuf python3"
-options="!strip"
-provides="bazel"
-subpackages="
- $pkgname-doc
- $pkgname-bash-completion
- $pkgname-fish-completion
- $pkgname-zsh-completion
- "
-source="https://github.com/bazelbuild/bazel/releases/download/$pkgver/bazel-$pkgver-dist.zip
- patch_do_not_use_glibc_prebuilt.patch
- patch_default_system_java_toolchain.patch
- patch_fix_jdk_13.patch
- patch_stop_hardcoding_verify_none_1.patch
- patch_stop_hardcoding_verify_none_2.patch
- patch_ftbfs_gcc11_1.patch
- patch_ftbfs_gcc11_2.patch
- patch_ftbfs_gcc11_3.patch
- patch_ftbfs_gcc11_4.patch
- patch_ftbfs_gcc11_5.patch
- patch_remove_illegal_reflective.patch"
-
-build() {
- export JAVA_HOME="/usr/lib/jvm/default-jvm"
-
- # Target Java version (minimum to run)
- # should be the same as the upstream
- export JAVA_VERSION="1.8"
-
- # horrible of horribles, just to have python in the PATH
- # https://github.com/bazelbuild/bazel/issues/8665
- mkdir -p ./bin-hack
- ln -s /usr/bin/python3 ./bin-hack/python
- export PATH=$(pwd)/bin-hack:$PATH
-
- # Stage 1: build Bazel with bootstrap script
-
- # based on
- # https://github.com/vbatts/copr-build-bazel/blob/master/bazel.spec
- # EXTRA_BAZEL_ARGS is used by bootstrap script only
- export EXTRA_BAZEL_ARGS="--sandbox_debug --verbose_failures"
-
- mkdir tmphome-stage1
-
- env HOME="$(pwd)/tmphome-stage1" bash ./compile.sh
- env HOME="$(pwd)/tmphome-stage1" ./output/bazel shutdown
-
- # Stage 2: use Bazel to build Bazel in optimized mode
- mkdir tmphome-stage2
-
- # We can't use embedded JDK, as there is no alpine support
- echo startup --server_javabase=$JAVA_HOME \
- >> tmphome-stage2/.bazelrc
-
- env HOME="$(pwd)/tmphome-stage2" ./output/bazel build \
- -c opt \
- --stamp \
- --embed_label $pkgver \
- --distdir=derived/distdir \
- --javacopt="-source $JAVA_VERSION -target $JAVA_VERSION" \
- $EXTRA_BAZEL_ARGS \
- //scripts/packages:without-jdk/install.sh
- env HOME="$(pwd)/tmphome-stage2" ./output/bazel shutdown
-
- # Copy outputs
- rm -rf output && mkdir output
- cp bazel-bin/scripts/packages/without-jdk/bazel output
- cp bazel-bin/scripts/packages/without-jdk/bazel-real output
- cp bazel-bin/scripts/bazel-complete.bash output
- cp bazel-bin/scripts/bazel.fish output
- cp scripts/zsh_completion/_bazel output
- cp tmphome-stage2/.bazelrc output/bazel.bazelrc
-}
-
-check() {
- mkdir tmphome-check
- cp output/bazel.bazelrc tmphome-check/.bazelrc
-
- env HOME="$(pwd)/tmphome-check" ./output/bazel test \
- --distdir=derived/distdir \
- --spawn_strategy=standalone \
- --genrule_strategy=standalone \
- --verbose_failures \
- --verbose_test_summary \
- --test_verbose_timeout_warnings \
- examples/cpp:hello-success_test \
- examples/py_native:test \
- examples/java-starlark/src/test/java/com/example/myproject:pass \
- examples/java-native/src/test/java/com/example/myproject:hello
-
- env HOME="$(pwd)/tmphome-check" ./output/bazel shutdown
-}
-
-package() {
- install -Dm755 output/bazel "$pkgdir"/usr/bin/bazel
- install -Dm755 output/bazel-real "$pkgdir"/usr/bin/bazel-real
- install -Dm644 output/bazel.bazelrc \
- "$pkgdir"/etc/bazel.bazelrc
-
- install -m644 -D -t "$pkgdir"/usr/share/doc/$pkgname README.md
-
- install -Dm644 output/bazel-complete.bash \
- "$pkgdir"/usr/share/bash-completion/completions/"$pkgname"
- install -Dm644 output/bazel.fish \
- "$pkgdir"/usr/share/fish/completions/"$pkgname".fish
- install -Dm644 output/_bazel \
- "$pkgdir"/usr/share/zsh/site-functions/_"$pkgname"
-}
-
-unpack() {
- mkdir -p "$builddir"
- unzip "$srcdir"/bazel-$pkgver-dist.zip -d "$builddir" > /dev/null
-}
-
-sha512sums="
-123f73dc87053e37705bb729f82bd722d6d2799fe106f79c51cf5566fb2771d824108cbe275aad55ae590b970c549008b433704cbf1245394769e950796eb8db bazel-4.2.2-dist.zip
-b8858494f7c600145610d44d2ca81d2cf0e58924b5d876361043b395c88b1166bf9a17de2864ee718e6dce723b7f0c4d71cf8fb9c2ab316eb9013eb5e450ddbe patch_do_not_use_glibc_prebuilt.patch
-fe1862bbd392f8a2d7af5f7c5e08fa6cf6dab0ba7b88280c28c4b072241613480e861af60212ceee1aebc10eb629f964c5def2b3e0a75c48453da8c397f4e93b patch_default_system_java_toolchain.patch
-0b4b3e541eaa496253e83d6fd88ba98d14c2a53324b7438f57d240b45f2c3c63b659038224e2b66706d4420eccb7c17c834260839f2fd39e3c6b3dea2613b735 patch_fix_jdk_13.patch
-f8456643419ac108a7cd72eaccd931e9c269c828611b0a62a79ad80a4f542b83cf5fa69af026e04bfb8d9f2c70527b5b25f9af56edb0a5a696ce66b3032df48d patch_stop_hardcoding_verify_none_1.patch
-c5ad25926e5672cd86b27c791c7347b21b57777296cc26d92d2bd9ae6eb39ee81d48008edb666285432135082e91daa9162ea67c719625bcede8f2d5647c9633 patch_stop_hardcoding_verify_none_2.patch
-992cf1acd662fd7e5f418e15122fd957c69bd6ca030b782b82d34222bec908d408472e839843b51fe828c2de5e56f4ff4cb4b4adcc17dacf82f2db7e9950cd64 patch_ftbfs_gcc11_1.patch
-e9d6e4642a25ce5323ba00e75172238fe52dc31e39ac91e97b5aae6deb9661c5426d763584e1b1b9ee489204e3bf891d84e14e7fa339c9a7a17a5a67c9129dc3 patch_ftbfs_gcc11_2.patch
-a001b7fe0bc7b34a6aab73e7f88a2f52dc5e67fcf3dda15bc06a6a8709b6ffa8883f705eb22ef83705fe70dfdbef64c5ff8ba762ffb526366b033375501e05e9 patch_ftbfs_gcc11_3.patch
-b83b73b5ea7a2fc99d13567f881dcfac3f242510ab429e33fe4347024fb9fbbd464fb7ef7ee4d380452b17c459d84494f993ba134db65c13f2a27ae475a5d8cc patch_ftbfs_gcc11_4.patch
-750c4ba2f41d61321db36c1d1154744e90d1b0f9ea39c75582edbdc28d16df2cee9c85fc4831114a414b6db8dba7b16d17b272b55a0308ac23a06242fc0c31db patch_ftbfs_gcc11_5.patch
-47377bb1866d95c84e7e5a8709a3d95d424371697385a2e7cb9e2e1f8c50cf4e3e76dcc15eec0303466d999da24faf1682f858010c574a2373f1f077b4691426 patch_remove_illegal_reflective.patch
-"
diff --git a/testing/bazel4/patch_default_system_java_toolchain.patch b/testing/bazel4/patch_default_system_java_toolchain.patch
deleted file mode 100644
index dc7370278f2..00000000000
--- a/testing/bazel4/patch_default_system_java_toolchain.patch
+++ /dev/null
@@ -1,68 +0,0 @@
---- a/src/BUILD
-+++ b/src/BUILD
-@@ -405,7 +405,7 @@ genrule(
- ],
- ) for suffix, jdk in [
- ("-dev", "_jdk_allmodules"),
-- ("", "_jdk_minimal"),
-+ ("", "_nojdk"),
- ("_jdk_allmodules", "_jdk_allmodules"),
- ("_jdk_minimal", "_jdk_minimal"),
- ("_dev_jdk", "_dev_jdk"),
---- a/src/main/cpp/startup_options.cc
-+++ b/src/main/cpp/startup_options.cc
-@@ -462,12 +462,6 @@ blaze_util::Path StartupOptions::GetSystemJavabase() const {
- }
-
- blaze_util::Path StartupOptions::GetEmbeddedJavabase() const {
-- blaze_util::Path bundled_jre_path = blaze_util::Path(
-- blaze_util::JoinPath(install_base, "embedded_tools/jdk"));
-- if (blaze_util::CanExecuteFile(
-- bundled_jre_path.GetRelative(GetJavaBinaryUnderJavabase()))) {
-- return bundled_jre_path;
-- }
- return blaze_util::Path();
- }
-
---- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaOptions.java
-+++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaOptions.java
-@@ -654,7 +654,7 @@ public class JavaOptions extends FragmentOptions {
- }
-
- Label defaultHostJavaBase() {
-- return Label.parseAbsoluteUnchecked("@bazel_tools//tools/jdk:remote_jdk11");
-+ return Label.parseAbsoluteUnchecked("@local_jdk//:jdk");
- }
-
- Label defaultJavaToolchain() {
---- a/tools/jdk/BUILD
-+++ b/tools/jdk/BUILD
-@@ -340,7 +340,7 @@ alias(
-
- alias(
- name = "host_jdk",
-- actual = ":remote_jdk11",
-+ actual = "jdk",
- )
-
- bootclasspath(
-@@ -370,8 +370,7 @@ alias(
- actual = select({
- "//src/conditions:darwin": "@remote_java_tools_darwin//:toolchain",
- "//src/conditions:windows": "@remote_java_tools_windows//:toolchain",
-- "//src/conditions:linux_x86_64": "@remote_java_tools_linux//:toolchain",
-- "//conditions:default": "@bazel_tools//tools/jdk:legacy_toolchain",
-+ "//conditions:default": "@bazel_tools//tools/jdk:toolchain_vanilla",
- }),
- )
-
-@@ -380,8 +379,7 @@ alias(
- actual = select({
- "//src/conditions:darwin": "@remote_java_tools_darwin//:toolchain",
- "//src/conditions:windows": "@remote_java_tools_windows//:toolchain",
-- "//src/conditions:linux_x86_64": "@remote_java_tools_linux//:toolchain",
-- "//conditions:default": "@bazel_tools//tools/jdk:legacy_toolchain",
-+ "//conditions:default": "@bazel_tools//tools/jdk:toolchain_vanilla",
- }),
- )
-
diff --git a/testing/bazel4/patch_do_not_use_glibc_prebuilt.patch b/testing/bazel4/patch_do_not_use_glibc_prebuilt.patch
deleted file mode 100644
index d76bb285445..00000000000
--- a/testing/bazel4/patch_do_not_use_glibc_prebuilt.patch
+++ /dev/null
@@ -1,64 +0,0 @@
---- a/src/main/java/com/google/devtools/build/lib/bazel/rules/java/jdk.WORKSPACE
-+++ b/src/main/java/com/google/devtools/build/lib/bazel/rules/java/jdk.WORKSPACE
-@@ -189,6 +189,7 @@ maybe(
- maybe(
- http_archive,
- name = "remote_java_tools_linux",
-+ patches = ["@bazel_tools//tools/jdk:java_tools.patch"],
- sha256 = "085c0ba53ba764e81d4c195524f3c596085cbf9cdc01dd8e6d2ae677e726af35",
- urls = [
- "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.6/java_tools_javac11_linux-v10.6.zip",
---- a/tools/jdk/BUILD.java_tools
-+++ b/tools/jdk/BUILD.java_tools
-@@ -284,7 +284,7 @@ alias(
- name = "singlejar",
- actual = select({
- "//:remote": ":singlejar_cc_bin",
-- "//conditions:default": ":singlejar_prebuilt_or_cc_binary",
-+ "//conditions:default": ":singlejar_cc_bin",
- }),
- )
-
-@@ -312,7 +312,7 @@ alias(
- name = "ijar",
- actual = select({
- ":remote": ":ijar_cc_binary",
-- "//conditions:default": ":prebuilt_binary_or_cc_binary",
-+ "//conditions:default": ":ijar_cc_binary",
- }),
- )
-
---- a/tools/jdk/java_toolchain_default.bzl.java_tools
-+++ b/tools/jdk/java_toolchain_default.bzl.java_tools
-@@ -121,8 +121,6 @@ PREBUILT_TOOLCHAIN_CONFIGURATION = dict(
- "//:java_compiler_jar",
- "//:jdk_compiler_jar",
- ],
-- ijar = ["//:ijar_prebuilt_binary"],
-- singlejar = ["//:prebuilt_singlejar"],
- )
-
- _LABEL_LISTS = [
---- /dev/null
-+++ b/tools/jdk/java_tools.patch
-@@ -0,0 +1,20 @@
-+--- BUILD
-++++ BUILD
-+@@ -284,7 +284,7 @@ alias(
-+ name = "singlejar",
-+ actual = select({
-+ "//:remote": ":singlejar_cc_bin",
-+- "//conditions:default": ":singlejar_prebuilt_or_cc_binary",
-++ "//conditions:default": ":singlejar_cc_bin",
-+ }),
-+ )
-+
-+@@ -312,7 +312,7 @@ alias(
-+ name = "ijar",
-+ actual = select({
-+ ":remote": ":ijar_cc_binary",
-+- "//conditions:default": ":prebuilt_binary_or_cc_binary",
-++ "//conditions:default": ":ijar_cc_binary",
-+ }),
-+ )
-+
diff --git a/testing/bazel4/patch_fix_jdk_13.patch b/testing/bazel4/patch_fix_jdk_13.patch
deleted file mode 100644
index 6469eb28996..00000000000
--- a/testing/bazel4/patch_fix_jdk_13.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From: philwo <philwo@google.com>
-Date: Mon, 8 Feb 2021 10:45:50 -0800
-Subject: [PATCH] Fix Bazel #10214: JDK 13 introduced a source compatibility
- issue.
-Upstream: yes (https://github.com/bazelbuild/bazel/commit/0216ee54417fa1f2fef14f6eb14cbc1e8f595821)
-
-Quote from the Java release notes:
-
-The addition of newFileSystem(Path, Map<String, ?>) creates a source (but not binary) compatibility issue for code that has been using the existing 2-arg newFileSystem(Path, ClassLoader) and specifying the class loader as null. [...] To avoid the ambiguous reference, this code needs to be modified to cast the second parameter to java.lang.ClassLoader.
-
-RELNOTES:
-PiperOrigin-RevId: 356301318
----
- .../com/google/devtools/build/buildjar/VanillaJavaBuilder.java | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/java_tools/buildjar/java/com/google/devtools/build/buildjar/VanillaJavaBuilder.java b/src/java_tools/buildjar/java/com/google/devtools/build/buildjar/VanillaJavaBuilder.java
-index b2a4da2aaa..d63bd8485e 100644
---- a/src/java_tools/buildjar/java/com/google/devtools/build/buildjar/VanillaJavaBuilder.java
-+++ b/src/java_tools/buildjar/java/com/google/devtools/build/buildjar/VanillaJavaBuilder.java
-@@ -78,7 +78,7 @@ public class VanillaJavaBuilder implements Closeable {
- private FileSystem getJarFileSystem(Path sourceJar) throws IOException {
- FileSystem fs = filesystems.get(sourceJar);
- if (fs == null) {
-- filesystems.put(sourceJar, fs = FileSystems.newFileSystem(sourceJar, null));
-+ filesystems.put(sourceJar, fs = FileSystems.newFileSystem(sourceJar, (ClassLoader) null));
- }
- return fs;
- }
---
-2.31.1
-
diff --git a/testing/bazel4/patch_ftbfs_gcc11_1.patch b/testing/bazel4/patch_ftbfs_gcc11_1.patch
deleted file mode 100644
index 1c926b1b698..00000000000
--- a/testing/bazel4/patch_ftbfs_gcc11_1.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-From 8cc0e261a313dbf5e81bfeca2bafa3e12a991046 Mon Sep 17 00:00:00 2001
-From: cushon <cushon@google.com>
-Date: Tue, 15 Dec 2020 23:18:55 -0800
-Subject: [PATCH] Include <limits>
-
-Probably fixes https://github.com/bazelbuild/bazel/issues/12702
-
-PiperOrigin-RevId: 347764132
----
- third_party/ijar/zlib_client.h | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/third_party/ijar/zlib_client.h b/third_party/ijar/zlib_client.h
-index ed6616362fcc..c4b051e0100c 100644
---- a/third_party/ijar/zlib_client.h
-+++ b/third_party/ijar/zlib_client.h
-@@ -16,6 +16,7 @@
- #define THIRD_PARTY_IJAR_ZLIB_CLIENT_H_
-
- #include <limits.h>
-+#include <limits>
-
- #include "third_party/ijar/common.h"
-
diff --git a/testing/bazel4/patch_ftbfs_gcc11_2.patch b/testing/bazel4/patch_ftbfs_gcc11_2.patch
deleted file mode 100644
index 42e9073296b..00000000000
--- a/testing/bazel4/patch_ftbfs_gcc11_2.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From a129aeb333d83a4466ac2c996b84a113405acb4d Mon Sep 17 00:00:00 2001
-From: philwo <philwo@google.com>
-Date: Mon, 14 Jun 2021 09:10:07 -0700
-Subject: [PATCH] Fix #13575: FTBFS with GCC 11 on ARMv8
-
-This supposedly fixes the compiler error reported by the user:
-
-`error: 'numeric_limits' is not a member of 'std'`
-
-Thanks to samcom12 for the report and suggested fix.
-
-RELNOTES: None.
-PiperOrigin-RevId: 379291338
----
- third_party/ijar/zlib_client.h | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/third_party/ijar/zlib_client.h b/third_party/ijar/zlib_client.h
-index c4b051e0100c..0a917ff0a99a 100644
---- a/third_party/ijar/zlib_client.h
-+++ b/third_party/ijar/zlib_client.h
-@@ -16,7 +16,9 @@
- #define THIRD_PARTY_IJAR_ZLIB_CLIENT_H_
-
- #include <limits.h>
-+
- #include <limits>
-+#include <stdexcept>
-
- #include "third_party/ijar/common.h"
-
diff --git a/testing/bazel4/patch_ftbfs_gcc11_3.patch b/testing/bazel4/patch_ftbfs_gcc11_3.patch
deleted file mode 100644
index 667110479bc..00000000000
--- a/testing/bazel4/patch_ftbfs_gcc11_3.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From 9761509f9ccc3892f42425b904adf1ef10bcb1f4 Mon Sep 17 00:00:00 2001
-From: David Ostrovsky <david@ostrovsky.org>
-Date: Wed, 16 Jun 2021 07:55:57 -0700
-Subject: [PATCH] Fix building on gcc 11
-
-Fixes #12702.
-
-Without this include the build is failing with:
-
- third_party/ijar/mapped_file_unix.cc: In constructor 'devtools_ijar::MappedOutputFile::MappedOutputFile(const char*, size_t)':
- third_party/ijar/mapped_file_unix.cc:115:21: error: 'numeric_limits' is not a member of 'std'
- 115 | std::numeric_limits<size_t>::max());
- | ^~~~~~~~~~~~~~
-
-Closes #13537.
-
-PiperOrigin-RevId: 379719635
----
- third_party/ijar/mapped_file_unix.cc | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/third_party/ijar/mapped_file_unix.cc b/third_party/ijar/mapped_file_unix.cc
-index 6e3a90871844..65179e3290ec 100644
---- a/third_party/ijar/mapped_file_unix.cc
-+++ b/third_party/ijar/mapped_file_unix.cc
-@@ -15,10 +15,11 @@
- #include <errno.h>
- #include <fcntl.h>
- #include <stdio.h>
--#include <unistd.h>
- #include <sys/mman.h>
-+#include <unistd.h>
-
- #include <algorithm>
-+#include <limits>
-
- #include "third_party/ijar/mapped_file.h"
-
diff --git a/testing/bazel4/patch_ftbfs_gcc11_4.patch b/testing/bazel4/patch_ftbfs_gcc11_4.patch
deleted file mode 100644
index 795bc82b75f..00000000000
--- a/testing/bazel4/patch_ftbfs_gcc11_4.patch
+++ /dev/null
@@ -1,43 +0,0 @@
---- a/third_party/grpc/grpc_1.33.1.patch
-+++ b/third_party/grpc/grpc_1.33.1.patch
-@@ -58,6 +58,14 @@ index 09fcad95a2..9b737e5deb 100644
- )
-
- native.bind(
-+@@ -245,6 +245,7 @@ def grpc_deps():
-+ "https://storage.googleapis.com/grpc-bazel-mirror/github.com/abseil/abseil-cpp/archive/df3ea785d8c30a9503321a3d35ee7d35808f190d.tar.gz",
-+ "https://github.com/abseil/abseil-cpp/archive/df3ea785d8c30a9503321a3d35ee7d35808f190d.tar.gz",
-+ ],
-++ patches = ["@com_github_grpc_grpc//:third_party/abseil-cpp/absl.patch"],
-+ )
-+
-+ if "bazel_toolchains" not in native.existing_rules():
- diff --git a/bazel/grpc_extra_deps.bzl b/bazel/grpc_extra_deps.bzl
- index 4c1dfad2e8..f63c54ddef 100644
- --- a/bazel/grpc_extra_deps.bzl
-@@ -120,3 +128,25 @@ index c047f0c515..7c24fbc617 100644
- ":windows": "@com_github_grpc_grpc//third_party/cares:config_windows/ares_config.h",
- ":android": "@com_github_grpc_grpc//third_party/cares:config_android/ares_config.h",
- "//conditions:default": "@com_github_grpc_grpc//third_party/cares:config_linux/ares_config.h",
-+
-+--- /dev/null
-++++ b/third_party/abseil-cpp/absl.patch
-+@@ -0,0 +1,18 @@
-++0e2c62da1dcaf6529abab952bdcc96c6de2d9506 by Abseil Team <absl-team@google.com>:
-++
-++Add missing <limits> include
-++
-++PiperOrigin-RevId: 339054753
-++
-++--
-++
-++--- absl/synchronization/internal/graphcycles.cc
-+++++ absl/synchronization/internal/graphcycles.cc
-++@@ -37,6 +37,7 @@
-++
-++ #include <algorithm>
-++ #include <array>
-+++#include <limits>
-++ #include "absl/base/internal/hide_ptr.h"
-++ #include "absl/base/internal/raw_logging.h"
-++ #include "absl/base/internal/spinlock.h"
diff --git a/testing/bazel4/patch_ftbfs_gcc11_5.patch b/testing/bazel4/patch_ftbfs_gcc11_5.patch
deleted file mode 100644
index 0d594f2e833..00000000000
--- a/testing/bazel4/patch_ftbfs_gcc11_5.patch
+++ /dev/null
@@ -1,34 +0,0 @@
---- a/tools/jdk/java_tools.patch
-+++ b/tools/jdk/java_tools.patch
-@@ -18,3 +18,31 @@
- }),
- )
-
-+
-+--- java_tools/ijar/zlib_client.h
-++++ java_tools/ijar/zlib_client.h
-+@@ -16,6 +16,8 @@
-+ #define THIRD_PARTY_IJAR_ZLIB_CLIENT_H_
-+
-+ #include <limits.h>
-++#include <limits>
-++#include <stdexcept>
-+
-+ #include "third_party/ijar/common.h"
-+
-+
-+--- java_tools/ijar/mapped_file_unix.cc
-++++ java_tools/ijar/mapped_file_unix.cc
-+@@ -15,10 +15,11 @@
-+ #include <errno.h>
-+ #include <fcntl.h>
-+ #include <stdio.h>
-+-#include <unistd.h>
-+ #include <sys/mman.h>
-++#include <unistd.h>
-+
-+ #include <algorithm>
-++#include <limits>
-+
-+ #include "third_party/ijar/mapped_file.h"
-+
diff --git a/testing/bazel4/patch_remove_illegal_reflective.patch b/testing/bazel4/patch_remove_illegal_reflective.patch
deleted file mode 100644
index 1297133b67c..00000000000
--- a/testing/bazel4/patch_remove_illegal_reflective.patch
+++ /dev/null
@@ -1,29 +0,0 @@
---- a/src/main/cpp/blaze.cc
-+++ b/src/main/cpp/blaze.cc
-@@ -360,13 +360,6 @@ static vector<string> GetServerExeArgs(const blaze_util::Path &jvm_path,
- result.push_back("-XX:HeapDumpPath=" +
- startup_options.output_base.AsJvmArgument());
-
-- // TODO(b/109998449): only assume JDK >= 9 for embedded JDKs
-- if (!startup_options.GetEmbeddedJavabase().IsEmpty()) {
-- // quiet warnings from com.google.protobuf.UnsafeUtil,
-- // see: https://github.com/google/protobuf/issues/3781
-- result.push_back("--add-opens=java.base/java.nio=ALL-UNNAMED");
-- result.push_back("--add-opens=java.base/java.lang=ALL-UNNAMED");
-- }
-
- vector<string> user_options = startup_options.host_jvm_args;
-
---- a/src/main/java/com/google/devtools/build/lib/unsafe/StringUnsafe.java
-+++ b/src/main/java/com/google/devtools/build/lib/unsafe/StringUnsafe.java
-@@ -72,10 +72,7 @@ public class StringUnsafe {
- + Arrays.toString(String.class.getDeclaredFields()),
- e);
- }
-- this.constructor.setAccessible(true);
-- valueField.setAccessible(true);
- valueOffset = UnsafeProvider.getInstance().objectFieldOffset(valueField);
-- coderField.setAccessible(true);
- coderOffset = UnsafeProvider.getInstance().objectFieldOffset(coderField);
- }
-
diff --git a/testing/bazel4/patch_stop_hardcoding_verify_none_1.patch b/testing/bazel4/patch_stop_hardcoding_verify_none_1.patch
deleted file mode 100644
index 78f1439af18..00000000000
--- a/testing/bazel4/patch_stop_hardcoding_verify_none_1.patch
+++ /dev/null
@@ -1,78 +0,0 @@
-From: cushon <cushon@google.com>
-Date: Mon, 7 Dec 2020 13:00:08 -0800
-Subject: [PATCH] Stop hardcoding `-Xverify:none` in `SpawnAction`
-Upstream: yes (https://github.com/bazelbuild/bazel/commit/0216ee54417fa1f2fef14f6eb14cbc1e8f595821)
-
-The motivation was to improve startup performance of host tools that we trust.
-The hard-coded flags for JavaBuilder and turbine were made obsolete by
-`java_toolchain.jvm_opts`, which allows them to be configured in the toolchain
-instead.
-
-The option has been deprecated in Java 13 and will be removed in a future
-release.
-
-Fixes https://github.com/bazelbuild/bazel/issues/11381
-
-PiperOrigin-RevId: 346160835
----
- .../build/lib/analysis/actions/SpawnAction.java | 1 -
- .../build/lib/analysis/actions/SpawnActionTest.java | 10 ++++------
- 2 files changed, 4 insertions(+), 7 deletions(-)
-
-diff --git a/src/main/java/com/google/devtools/build/lib/analysis/actions/SpawnAction.java b/src/main/java/com/google/devtools/build/lib/analysis/actions/SpawnAction.java
-index 500ca758a6..de2257776a 100644
---- a/src/main/java/com/google/devtools/build/lib/analysis/actions/SpawnAction.java
-+++ b/src/main/java/com/google/devtools/build/lib/analysis/actions/SpawnAction.java
-@@ -1016,7 +1016,6 @@ public class SpawnAction extends AbstractAction implements CommandAction {
- this.executableArgs =
- CustomCommandLine.builder()
- .addPath(javaExecutable)
-- .add("-Xverify:none")
- .addAll(ImmutableList.copyOf(jvmArgs))
- .addAll(ImmutableList.copyOf(launchArgs));
- toolsBuilder.add(deployJar);
-diff --git a/src/test/java/com/google/devtools/build/lib/analysis/actions/SpawnActionTest.java b/src/test/java/com/google/devtools/build/lib/analysis/actions/SpawnActionTest.java
-index 526473aff7..871509533f 100644
---- a/src/test/java/com/google/devtools/build/lib/analysis/actions/SpawnActionTest.java
-+++ b/src/test/java/com/google/devtools/build/lib/analysis/actions/SpawnActionTest.java
-@@ -166,8 +166,7 @@ public class SpawnActionTest extends BuildViewTestCase {
- collectingAnalysisEnvironment.registerAction(actions);
- SpawnAction action = (SpawnAction) actions[0];
- assertThat(action.getArguments())
-- .containsExactly(
-- "/bin/java", "-Xverify:none", "-jvmarg", "-cp", "pkg/exe.jar", "MyMainClass")
-+ .containsExactly("/bin/java", "-jvmarg", "-cp", "pkg/exe.jar", "MyMainClass")
- .inOrder();
- }
-
-@@ -193,8 +192,7 @@ public class SpawnActionTest extends BuildViewTestCase {
-
- // The action reports all arguments, including those inside the param file
- assertThat(action.getArguments())
-- .containsExactly(
-- "/bin/java", "-Xverify:none", "-jvmarg", "-cp", "pkg/exe.jar", "MyMainClass", "-X")
-+ .containsExactly("/bin/java", "-jvmarg", "-cp", "pkg/exe.jar", "MyMainClass", "-X")
- .inOrder();
-
- Spawn spawn =
-@@ -205,7 +203,7 @@ public class SpawnActionTest extends BuildViewTestCase {
- assertThat(spawn.getArguments())
- .containsExactly(
- "/bin/java",
-- "-Xverify:none",
-+
- "-jvmarg",
- "-cp",
- "pkg/exe.jar",
-@@ -241,7 +239,7 @@ public class SpawnActionTest extends BuildViewTestCase {
- assertThat(action.getArguments())
- .containsExactly(
- "/bin/java",
-- "-Xverify:none",
-+
- "-jvmarg",
- "-cp",
- "pkg/exe.jar",
---
-2.31.1
-
diff --git a/testing/bazel4/patch_stop_hardcoding_verify_none_2.patch b/testing/bazel4/patch_stop_hardcoding_verify_none_2.patch
deleted file mode 100644
index 87b76dfa1f3..00000000000
--- a/testing/bazel4/patch_stop_hardcoding_verify_none_2.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-From: Jesse Chan <jc@linux.com>
-Date: Thu, 24 Jun 2021 20:15:21 +0800
-Subject: [PATCH] Remove remaining hardcoded instances of `-Xverify:none`
-
-Bug: #11381, #13097
-Refs: d91e5b4e0
----
- scripts/bootstrap/compile.sh | 2 +-
- src/main/cpp/blaze.cc | 2 --
- .../build/lib/rules/java/JavaHeaderCompileActionBuilder.java | 1 -
- 3 files changed, 1 insertion(+), 4 deletions(-)
-
-diff --git a/scripts/bootstrap/compile.sh b/scripts/bootstrap/compile.sh
-index f9a152f145..e9cfbeec3d 100755
---- a/scripts/bootstrap/compile.sh
-+++ b/scripts/bootstrap/compile.sh
-@@ -436,7 +436,7 @@ function run_bazel_jar() {
- done
-
- "${JAVA_HOME}/bin/java" \
-- -XX:+HeapDumpOnOutOfMemoryError -Xverify:none -Dfile.encoding=ISO-8859-1 \
-+ -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=ISO-8859-1 \
- -XX:HeapDumpPath=${OUTPUT_DIR} \
- -Djava.util.logging.config.file=${OUTPUT_DIR}/javalog.properties \
- ${JNI_FLAGS} \
-diff --git a/src/main/cpp/blaze.cc b/src/main/cpp/blaze.cc
-index a3fd334f24..ecdc707c64 100644
---- a/src/main/cpp/blaze.cc
-+++ b/src/main/cpp/blaze.cc
-@@ -368,8 +368,6 @@ static vector<string> GetServerExeArgs(const blaze_util::Path &jvm_path,
- result.push_back("--add-opens=java.base/java.lang=ALL-UNNAMED");
- }
-
-- result.push_back("-Xverify:none");
--
- vector<string> user_options = startup_options.host_jvm_args;
-
- // Add JVM arguments particular to building blaze64 and particular JVM
-diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaHeaderCompileActionBuilder.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaHeaderCompileActionBuilder.java
-index 6f855cfdb4..8a543a6e00 100644
---- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaHeaderCompileActionBuilder.java
-+++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaHeaderCompileActionBuilder.java
-@@ -337,7 +337,6 @@ public class JavaHeaderCompileActionBuilder {
- executableLine =
- CustomCommandLine.builder()
- .addPath(javaToolchain.getJavaRuntime().javaBinaryExecPathFragment())
-- .add("-Xverify:none")
- .addAll(javaToolchain.getTurbineJvmOptions())
- .add("-jar")
- .addExecPath(headerCompiler.getExecutable())
---
-2.31.1
-
diff --git a/testing/bazel5/0001-Do-not-use-prebuilt-binaries.patch b/testing/bazel5/0001-Do-not-use-prebuilt-binaries.patch
new file mode 100644
index 00000000000..05492081a03
--- /dev/null
+++ b/testing/bazel5/0001-Do-not-use-prebuilt-binaries.patch
@@ -0,0 +1,35 @@
+From ace6bb4b6fa0ff09d38bd31c26c21dd81aaadca6 Mon Sep 17 00:00:00 2001
+From: Wolf <wolf@wolfsden.cz>
+Date: Wed, 20 Jul 2022 02:00:52 +0200
+Subject: [PATCH 1/4] Do not use prebuilt binaries
+
+Prebuilt binaries (ijar, singlejar) for linux are glibc specific,
+meaning they do not work on alpine. Change the select to use _cc_binary
+version instead.
+---
+ tools/jdk/BUILD.tools | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/tools/jdk/BUILD.tools b/tools/jdk/BUILD.tools
+index ad3e61e41a..7586fc22de 100644
+--- a/tools/jdk/BUILD.tools
++++ b/tools/jdk/BUILD.tools
+@@ -168,7 +168,6 @@ alias(
+ alias(
+ name = "ijar_prebuilt_binary_or_cc_binary",
+ actual = select({
+- "//src/conditions:linux_x86_64": ":ijar_prebuilt_binary_linux",
+ "//src/conditions:darwin": ":ijar_prebuilt_binary_darwin",
+ "//src/conditions:windows": ":ijar_prebuilt_binary_windows",
+ "//conditions:default": "@remote_java_tools//:ijar_cc_binary",
+@@ -198,7 +197,6 @@ alias(
+ alias(
+ name = "singlejar_prebuilt_or_cc_binary",
+ actual = select({
+- "//src/conditions:linux_x86_64": ":prebuilt_singlejar_linux",
+ "//src/conditions:darwin": ":prebuilt_singlejar_darwin",
+ "//src/conditions:windows": ":prebuilt_singlejar_windows",
+ "//conditions:default": "@remote_java_tools//:singlejar_cc_bin",
+--
+2.36.2
+
diff --git a/testing/bazel5/0002-Prefer-local_jdk-instead-of-remote_jdk11.patch b/testing/bazel5/0002-Prefer-local_jdk-instead-of-remote_jdk11.patch
new file mode 100644
index 00000000000..d0b7bb550af
--- /dev/null
+++ b/testing/bazel5/0002-Prefer-local_jdk-instead-of-remote_jdk11.patch
@@ -0,0 +1,75 @@
+From 75a294bc20878ece2b45359a9c06db644744112f Mon Sep 17 00:00:00 2001
+From: Wolf <wolf@wolfsden.cz>
+Date: Wed, 20 Jul 2022 02:00:52 +0200
+Subject: [PATCH 2/4] Prefer local_jdk instead of remote_jdk11
+
+---
+ .../devtools/build/lib/rules/java/JavaOptions.java | 2 +-
+ tools/jdk/BUILD.tools | 2 +-
+ tools/jdk/default_java_toolchain.bzl | 10 +++++-----
+ 3 files changed, 7 insertions(+), 7 deletions(-)
+
+diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaOptions.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaOptions.java
+index 7794ef22c1..693f640131 100644
+--- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaOptions.java
++++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaOptions.java
+@@ -511,7 +511,7 @@ public class JavaOptions extends FragmentOptions {
+
+ @Option(
+ name = "tool_java_runtime_version",
+- defaultValue = "remotejdk_11",
++ defaultValue = "local_jdk",
+ documentationCategory = OptionDocumentationCategory.UNCATEGORIZED,
+ effectTags = {OptionEffectTag.UNKNOWN},
+ help = "The Java runtime version used to execute tools during the build")
+diff --git a/tools/jdk/BUILD.tools b/tools/jdk/BUILD.tools
+index 7586fc22de..8edd0f9619 100644
+--- a/tools/jdk/BUILD.tools
++++ b/tools/jdk/BUILD.tools
+@@ -328,7 +328,7 @@ alias(
+
+ alias(
+ name = "host_jdk",
+- actual = ":remote_jdk11",
++ actual = "@local_jdk//:jdk",
+ )
+
+ bootclasspath(
+diff --git a/tools/jdk/default_java_toolchain.bzl b/tools/jdk/default_java_toolchain.bzl
+index af3a646a44..da137ed26d 100644
+--- a/tools/jdk/default_java_toolchain.bzl
++++ b/tools/jdk/default_java_toolchain.bzl
+@@ -98,7 +98,7 @@ DEFAULT_TOOLCHAIN_CONFIGURATION = dict(
+ "@remote_java_tools//:java_compiler_jar",
+ "@remote_java_tools//:jdk_compiler_jar",
+ ],
+- java_runtime = "@bazel_tools//tools/jdk:remote_jdk11",
++ java_runtime = "@local_jdk//:jdk",
+ )
+
+ # The 'vanilla' toolchain is an unsupported alternative to the default.
+@@ -137,9 +137,9 @@ PREBUILT_TOOLCHAIN_CONFIGURATION = dict(
+ "@remote_java_tools//:java_compiler_jar",
+ "@remote_java_tools//:jdk_compiler_jar",
+ ],
+- ijar = ["@bazel_tools//tools/jdk:ijar_prebuilt_binary"],
+- singlejar = ["@bazel_tools//tools/jdk:prebuilt_singlejar"],
+- java_runtime = "@bazel_tools//tools/jdk:remote_jdk11",
++ ijar = ["@remote_java_tools//:ijar_cc_binary"],
++ singlejar = ["@remote_java_tools//:singlejar_cc_bin"],
++ java_runtime = "@local_jdk//:jdk",
+ )
+
+ # The new toolchain is using all the tools from sources.
+@@ -158,7 +158,7 @@ NONPREBUILT_TOOLCHAIN_CONFIGURATION = dict(
+ ],
+ ijar = ["@remote_java_tools//:ijar_cc_binary"],
+ singlejar = ["@remote_java_tools//:singlejar_cc_bin"],
+- java_runtime = "@bazel_tools//tools/jdk:remote_jdk11",
++ java_runtime = "@local_jdk//:jdk",
+ )
+
+ def default_java_toolchain(name, configuration = DEFAULT_TOOLCHAIN_CONFIGURATION, toolchain_definition = True, **kwargs):
+--
+2.36.2
+
diff --git a/testing/bazel5/0003-Make-generate_bash_completion-compatible-with-busybo.patch b/testing/bazel5/0003-Make-generate_bash_completion-compatible-with-busybo.patch
new file mode 100644
index 00000000000..4856fa02f9a
--- /dev/null
+++ b/testing/bazel5/0003-Make-generate_bash_completion-compatible-with-busybo.patch
@@ -0,0 +1,28 @@
+From a4491ac9103c6e02631fce120594e5797130271d Mon Sep 17 00:00:00 2001
+From: Wolf <wolf@wolfsden.cz>
+Date: Wed, 20 Jul 2022 02:00:53 +0200
+Subject: [PATCH 3/4] Make generate_bash_completion compatible with busybox
+
+Under busybox, expr does not accept -- (since it is not defined to take
+any options, I would say it makes sense), so remove it from the script
+generating bash completion.
+---
+ scripts/generate_bash_completion.sh | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/scripts/generate_bash_completion.sh b/scripts/generate_bash_completion.sh
+index 778810570c..46a3965f85 100755
+--- a/scripts/generate_bash_completion.sh
++++ b/scripts/generate_bash_completion.sh
+@@ -34,7 +34,7 @@ die() {
+ }
+
+ get_optarg() {
+- expr -- "${1}" : "[^=]*=\\(.*\\)"
++ expr "${1}" : "[^=]*=\\(.*\\)"
+ }
+
+ append=
+--
+2.36.2
+
diff --git a/testing/bazel5/0004-Use-nojdk-bazel-for-generating-the-bash-completion.patch b/testing/bazel5/0004-Use-nojdk-bazel-for-generating-the-bash-completion.patch
new file mode 100644
index 00000000000..a15074cb43e
--- /dev/null
+++ b/testing/bazel5/0004-Use-nojdk-bazel-for-generating-the-bash-completion.patch
@@ -0,0 +1,34 @@
+From d958b7c41d5e26ba2fb1382d8ede2de61f87e292 Mon Sep 17 00:00:00 2001
+From: Wolf <wolf@wolfsden.cz>
+Date: Wed, 20 Jul 2022 02:00:53 +0200
+Subject: [PATCH 4/4] Use nojdk bazel for generating the bash completion
+
+---
+ scripts/BUILD | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/scripts/BUILD b/scripts/BUILD
+index c477439950..7fc19a58e0 100644
+--- a/scripts/BUILD
++++ b/scripts/BUILD
+@@ -12,7 +12,7 @@ genrule(
+ outs = ["bazel-complete.bash"],
+ cmd = " ".join([
+ "$(location :generate_bash_completion.sh)",
+- "--bazel=$(location //src:bazel)",
++ "--bazel=$(location //src:bazel_nojdk)",
+ "--output=$@",
+ "--prepend=$(location bazel-complete-header.bash)",
+ "--prepend=$(location bazel-complete-template.bash)",
+@@ -20,7 +20,7 @@ genrule(
+ output_to_bindir = 1,
+ tools = [
+ ":generate_bash_completion.sh",
+- "//src:bazel",
++ "//src:bazel_nojdk",
+ ],
+ visibility = ["//scripts/packages:__subpackages__"],
+ )
+--
+2.36.2
+
diff --git a/testing/bazel5/APKBUILD b/testing/bazel5/APKBUILD
new file mode 100644
index 00000000000..f9062bef22e
--- /dev/null
+++ b/testing/bazel5/APKBUILD
@@ -0,0 +1,70 @@
+# Maintainer: Gray Wolf <wolf@wolfsden.cz>
+pkgname=bazel5
+pkgver=5.3.2
+pkgrel=0
+pkgdesc="Bazel is an open-source build and test tool"
+url="https://bazel.build/"
+# 1. Copy arch line from openjdk11, since we depend on it
+# 2. aarch64, ppc64le times out in CI, 1h is not enough
+arch="all !x86 !armhf !armv7 !riscv64 !s390x !aarch64 !ppc64le"
+license="Apache-2.0"
+depends="bash openjdk11-jdk"
+makedepends="linux-headers python3 unzip zip"
+# Bazel binary is thin C++ client with zip file embedded into the binary,
+# stripping breaks that: https://github.com/bazelbuild/bazel/issues/11842
+options="!strip"
+provides="bazel=$pkgver-r$pkgrel"
+subpackages="$pkgname-bash-completion"
+source="
+ https://github.com/bazelbuild/bazel/releases/download/$pkgver/bazel-$pkgver-dist.zip
+ 0001-Do-not-use-prebuilt-binaries.patch
+ 0002-Prefer-local_jdk-instead-of-remote_jdk11.patch
+ 0003-Make-generate_bash_completion-compatible-with-busybo.patch
+ 0004-Use-nojdk-bazel-for-generating-the-bash-completion.patch
+"
+builddir="$srcdir/"
+
+build() {
+ EMBED_LABEL=$pkgver-$pkgrel \
+ EXTRA_BAZEL_ARGS=--tool_java_runtime_version=local_jdk \
+ ./compile.sh
+
+ ./output/bazel build //scripts:bazel-complete.bash
+ cp bazel-bin/scripts/bazel-complete.bash output/
+
+ ./output/bazel clean --expunge
+}
+
+check() {
+ # shellcheck disable=SC2046
+ ./output/bazel build $(\
+ ./output/bazel query --noshow_progress '//examples/...' \
+ | grep -vF \
+ -e /android/ \
+ -e /windows/ \
+ -e :hello-error-prone \
+ )
+ ./output/bazel test \
+ //examples/cpp:hello-success_test \
+ //examples/java-native/src/test/java/com/example/myproject:custom \
+ //examples/java-native/src/test/java/com/example/myproject:hello \
+ //examples/java-starlark/src/test/java/com/example/myproject:pass \
+ //examples/py_native:test \
+ //examples/shell:test
+
+ ./output/bazel clean --expunge
+}
+
+package() {
+ install -Dm 755 -t "$pkgdir/usr/bin" output/bazel
+ install -Dm 644 output/bazel-complete.bash \
+ "$pkgdir/usr/share/bash-completion/completions/bazel"
+}
+
+sha512sums="
+a63895c224d51619cf83e6e55872aa6d55d17c7dcea59eaf467069d2c95259f5964fbf8fa5994df0e3c030234a7adf70a2715edb4edbbe2bf69d21dd698c0833 bazel-5.3.2-dist.zip
+5b7709629f1f4a4604abbf626c17b0a83f3ddcb8e71a05d253eb592e1006027d693d58d67d35deb941ed1e0e60fa8d1f3229b59f844fa7e3eca866cafc2354f2 0001-Do-not-use-prebuilt-binaries.patch
+b5b6aeb5d8b097bd6f58d441f801dce9b3f2ed7706623d0c8650582a421509e4c843b6e298affeb3256dded4f706a56502847b391ec666ac882362d34529ad25 0002-Prefer-local_jdk-instead-of-remote_jdk11.patch
+a422b45f90733157c14f3c4c54a88acd1ad49053b043a90a37c67e6d5342acb9685c467c642c232fc5cc6c80ec35a8187284da06d36e8084f0583e86e73a9130 0003-Make-generate_bash_completion-compatible-with-busybo.patch
+fb51b7caf1b05c3f531bbbbdb4fe76666c07f423d66ab0826a0590f09b71e67197d46a36c307d1690845f8055c523c27f00a21e890b7457b402d68ba1a12b085 0004-Use-nojdk-bazel-for-generating-the-bash-completion.patch
+"
diff --git a/testing/bazel6/0001-Do-not-use-prebuilt-binaries.patch b/testing/bazel6/0001-Do-not-use-prebuilt-binaries.patch
new file mode 100644
index 00000000000..58232e4d1ce
--- /dev/null
+++ b/testing/bazel6/0001-Do-not-use-prebuilt-binaries.patch
@@ -0,0 +1,20 @@
+diff --git a/tools/jdk/BUILD.tools b/tools/jdk/BUILD.tools
+index a8bb7c7889..bd756ba8a3 100644
+--- a/tools/jdk/BUILD.tools
++++ b/tools/jdk/BUILD.tools
+@@ -162,7 +162,6 @@ alias(
+ alias(
+ name = "ijar_prebuilt_binary_or_cc_binary",
+ actual = select({
+- "//src/conditions:linux_x86_64": ":ijar_prebuilt_binary_linux",
+ "//src/conditions:darwin": ":ijar_prebuilt_binary_darwin",
+ "//src/conditions:windows": ":ijar_prebuilt_binary_windows",
+ "//conditions:default": "@remote_java_tools//:ijar_cc_binary",
+@@ -192,7 +191,6 @@ alias(
+ alias(
+ name = "singlejar_prebuilt_or_cc_binary",
+ actual = select({
+- "//src/conditions:linux_x86_64": ":prebuilt_singlejar_linux",
+ "//src/conditions:darwin": ":prebuilt_singlejar_darwin",
+ "//src/conditions:windows": ":prebuilt_singlejar_windows",
+ "//conditions:default": "@remote_java_tools//:singlejar_cc_bin",
diff --git a/testing/bazel6/0002-Prefer-local_jdk-instead-of-remote_jdk11.patch b/testing/bazel6/0002-Prefer-local_jdk-instead-of-remote_jdk11.patch
new file mode 100644
index 00000000000..54848cea90c
--- /dev/null
+++ b/testing/bazel6/0002-Prefer-local_jdk-instead-of-remote_jdk11.patch
@@ -0,0 +1,61 @@
+diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaOptions.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaOptions.java
+index 8e81e124e9..cccf832d94 100644
+--- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaOptions.java
++++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaOptions.java
+@@ -535,7 +535,7 @@ public class JavaOptions extends FragmentOptions {
+
+ @Option(
+ name = "tool_java_runtime_version",
+- defaultValue = "remotejdk_11",
++ defaultValue = "local_jdk",
+ documentationCategory = OptionDocumentationCategory.UNCATEGORIZED,
+ effectTags = {OptionEffectTag.UNKNOWN},
+ help = "The Java runtime version used to execute tools during the build")
+diff --git a/tools/jdk/BUILD.tools b/tools/jdk/BUILD.tools
+index bd756ba8a3..bd4c517984 100644
+--- a/tools/jdk/BUILD.tools
++++ b/tools/jdk/BUILD.tools
+@@ -298,7 +298,7 @@ alias(
+
+ alias(
+ name = "host_jdk",
+- actual = ":remote_jdk11",
++ actual = "@local_jdk//:jdk",
+ )
+
+ bootclasspath(
+diff --git a/tools/jdk/default_java_toolchain.bzl b/tools/jdk/default_java_toolchain.bzl
+index 7251e79068..46de360f75 100644
+--- a/tools/jdk/default_java_toolchain.bzl
++++ b/tools/jdk/default_java_toolchain.bzl
+@@ -84,7 +84,7 @@ DEFAULT_TOOLCHAIN_CONFIGURATION = dict(
+ # Turbine is not a worker and parallel GC is faster for short-lived programs.
+ "-XX:+UseParallelGC",
+ ],
+- java_runtime = "@bazel_tools//tools/jdk:remote_jdk11",
++ java_runtime = "@local_jdk//:jdk",
+ )
+
+ # The 'vanilla' toolchain is an unsupported alternative to the default.
+@@ -119,9 +119,9 @@ PREBUILT_TOOLCHAIN_CONFIGURATION = dict(
+ # Turbine is not a worker and parallel GC is faster for short-lived programs.
+ "-XX:+UseParallelGC",
+ ],
+- ijar = ["@bazel_tools//tools/jdk:ijar_prebuilt_binary"],
+- singlejar = ["@bazel_tools//tools/jdk:prebuilt_singlejar"],
+- java_runtime = "@bazel_tools//tools/jdk:remote_jdk11",
++ ijar = ["@remote_java_tools//:ijar_cc_binary"],
++ singlejar = ["@remote_java_tools//:singlejar_cc_bin"],
++ java_runtime = "@local_jdk//:jdk",
+ )
+
+ # The new toolchain is using all the tools from sources.
+@@ -136,7 +136,7 @@ NONPREBUILT_TOOLCHAIN_CONFIGURATION = dict(
+ ],
+ ijar = ["@remote_java_tools//:ijar_cc_binary"],
+ singlejar = ["@remote_java_tools//:singlejar_cc_bin"],
+- java_runtime = "@bazel_tools//tools/jdk:remote_jdk11",
++ java_runtime = "@local_jdk//:jdk",
+ )
+
+ def default_java_toolchain(name, configuration = DEFAULT_TOOLCHAIN_CONFIGURATION, toolchain_definition = True, **kwargs):
diff --git a/testing/bazel6/0003-Make-generate_bash_completion-compatible-with-busybo.patch b/testing/bazel6/0003-Make-generate_bash_completion-compatible-with-busybo.patch
new file mode 100644
index 00000000000..26b847743bf
--- /dev/null
+++ b/testing/bazel6/0003-Make-generate_bash_completion-compatible-with-busybo.patch
@@ -0,0 +1,13 @@
+diff --git a/scripts/generate_bash_completion.sh b/scripts/generate_bash_completion.sh
+index 778810570c..46a3965f85 100755
+--- a/scripts/generate_bash_completion.sh
++++ b/scripts/generate_bash_completion.sh
+@@ -34,7 +34,7 @@ die() {
+ }
+
+ get_optarg() {
+- expr -- "${1}" : "[^=]*=\\(.*\\)"
++ expr "${1}" : "[^=]*=\\(.*\\)"
+ }
+
+ append=
diff --git a/testing/bazel6/0004-Use-nojdk-bazel-for-generating-the-bash-completion.patch b/testing/bazel6/0004-Use-nojdk-bazel-for-generating-the-bash-completion.patch
new file mode 100644
index 00000000000..fa3075cbd4f
--- /dev/null
+++ b/testing/bazel6/0004-Use-nojdk-bazel-for-generating-the-bash-completion.patch
@@ -0,0 +1,22 @@
+diff --git a/scripts/BUILD b/scripts/BUILD
+index c477439950..7fc19a58e0 100644
+--- a/scripts/BUILD
++++ b/scripts/BUILD
+@@ -12,7 +12,7 @@ genrule(
+ outs = ["bazel-complete.bash"],
+ cmd = " ".join([
+ "$(location :generate_bash_completion.sh)",
+- "--bazel=$(location //src:bazel)",
++ "--bazel=$(location //src:bazel_nojdk)",
+ "--output=$@",
+ "--prepend=$(location bazel-complete-header.bash)",
+ "--prepend=$(location bazel-complete-template.bash)",
+@@ -20,7 +20,7 @@ genrule(
+ output_to_bindir = 1,
+ tools = [
+ ":generate_bash_completion.sh",
+- "//src:bazel",
++ "//src:bazel_nojdk",
+ ],
+ visibility = ["//scripts/packages:__subpackages__"],
+ )
diff --git a/testing/bazel6/APKBUILD b/testing/bazel6/APKBUILD
new file mode 100644
index 00000000000..4dd7c843a8b
--- /dev/null
+++ b/testing/bazel6/APKBUILD
@@ -0,0 +1,68 @@
+# Maintainer: Leon White <badfunkstripe@gmail.com>
+pkgname=bazel6
+pkgver=6.1.0
+pkgrel=0
+pkgdesc="Bazel is an open-source build and test tool"
+url="https://bazel.build/"
+arch="all !x86 !armhf !armv7 !riscv64 !s390x !aarch64 !ppc64le"
+license="Apache-2.0"
+depends="bash openjdk11-jdk"
+makedepends="linux-headers python3 unzip zip"
+# Bazel binary is thin C++ client with zip file embedded into the binary,
+# stripping breaks that: https://github.com/bazelbuild/bazel/issues/11842
+options="!strip"
+provides="bazel=$pkgver-r$pkgrel"
+subpackages="$pkgname-bash-completion"
+source="
+ https://github.com/bazelbuild/bazel/releases/download/$pkgver/bazel-$pkgver-dist.zip
+ 0001-Do-not-use-prebuilt-binaries.patch
+ 0002-Prefer-local_jdk-instead-of-remote_jdk11.patch
+ 0003-Make-generate_bash_completion-compatible-with-busybo.patch
+ 0004-Use-nojdk-bazel-for-generating-the-bash-completion.patch
+"
+builddir="$srcdir/"
+
+build() {
+ EMBED_LABEL=$pkgver-$pkgrel \
+ EXTRA_BAZEL_ARGS=--tool_java_runtime_version=local_jdk \
+ ./compile.sh
+
+ ./output/bazel build //scripts:bazel-complete.bash
+ cp bazel-bin/scripts/bazel-complete.bash output/
+
+ ./output/bazel clean --expunge
+}
+
+check() {
+ # shellcheck disable=SC2046
+ ./output/bazel build $(\
+ ./output/bazel query --noshow_progress '//examples/...' \
+ | grep -vF \
+ -e /android/ \
+ -e /windows/ \
+ -e :hello-error-prone \
+ )
+ ./output/bazel test \
+ //examples/cpp:hello-success_test \
+ //examples/java-native/src/test/java/com/example/myproject:custom \
+ //examples/java-native/src/test/java/com/example/myproject:hello \
+ //examples/java-starlark/src/test/java/com/example/myproject:pass \
+ //examples/py_native:test \
+ //examples/shell:test
+
+ ./output/bazel clean --expunge
+}
+
+package() {
+ install -Dm 755 -t "$pkgdir/usr/bin" output/bazel
+ install -Dm 644 output/bazel-complete.bash \
+ "$pkgdir/usr/share/bash-completion/completions/bazel"
+}
+
+sha512sums="
+222c72b34566229bb96e2936558f5f8078e3999a10af5beaac231d2ada2e7a69444c4174b1f588f8471424c097422faa7a2bc7a402ee78fbd81729f85ba21bfb bazel-6.1.0-dist.zip
+a18fbeccd595ed86f66557d6cd270ccc2bc9b2736b8f1fc2c79e3fe219e5af836f5b73b211ae31df33af2e7c3097e438e88034ffecea41731b2147fed6ee1bf4 0001-Do-not-use-prebuilt-binaries.patch
+32019e3ef57e00215e1123b40de78328767b16151d885746086494e27f47648d601971528c8df8c6c1c309928b60629417c2fcdcf085badce6a3a5ea7c3aca34 0002-Prefer-local_jdk-instead-of-remote_jdk11.patch
+b0bae27087f8d1da6a455500fc9fb4758ffdeaa27f0b11de720a0607aa3a4d682adfc1286b6385fe53e67296e7af1f61570b6b3093def1e8cee8531c7f4f5f82 0003-Make-generate_bash_completion-compatible-with-busybo.patch
+a102371e03345e62e3ecc181382481563be92246bda08d9a6c24964c35d07301a20ecc32d519a9c9d9a6d0827b6773357f9ac756fa01ae685666100f0413d09b 0004-Use-nojdk-bazel-for-generating-the-bash-completion.patch
+"
diff --git a/testing/bchunk/APKBUILD b/testing/bchunk/APKBUILD
index cef2ddd9328..73820608729 100644
--- a/testing/bchunk/APKBUILD
+++ b/testing/bchunk/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer:
pkgname=bchunk
pkgver=1.2.2
-pkgrel=1
+pkgrel=2
pkgdesc="Convert bin+cue CD images to .iso and .cdr"
url="https://github.com/hessu/bchunk"
arch="all"
diff --git a/testing/bcnm/APKBUILD b/testing/bcnm/APKBUILD
index b513fb263dd..c953f70c87a 100644
--- a/testing/bcnm/APKBUILD
+++ b/testing/bcnm/APKBUILD
@@ -1,14 +1,14 @@
# Contributor: Leo <thinkabit.ukim@gmail.com>
# Maintainer: Laurent Bercot <ska-devel@skarnet.org>
pkgname=bcnm
-pkgver=0.0.1.5
+pkgver=0.0.1.7
pkgrel=0
pkgdesc="Better Client Network Manager"
-url="https://skarnet.org/software/bcnm/"
+url=https://skarnet.org/software/bcnm/
arch="all"
license="ISC"
options="!check"
-makedepends="skalibs-dev>=2.11 linux-headers"
+makedepends="skalibs-dev>=2.14 linux-headers"
subpackages="$pkgname-dev $pkgname-doc"
source="https://skarnet.org/software/bcnm/bcnm-$pkgver.tar.gz"
@@ -35,5 +35,5 @@ doc() {
}
sha512sums="
-83cf31c62f1092008aa16ce8896f038cfdeb4009c3e161647ea76b264fb044bf37e029ad6362490fb15b36338d9cbe16373dac6b1320fd118dc563200518117e bcnm-0.0.1.5.tar.gz
+b8e03eef743097b6f44864269b336dc579b8b835ba24006d09d7da5d03637f101c1840594af8b7a28cb2062096df0e3ade7559b6f97b9472d24df42d2998e6d2 bcnm-0.0.1.7.tar.gz
"
diff --git a/testing/bdfr/APKBUILD b/testing/bdfr/APKBUILD
new file mode 100644
index 00000000000..5efac06c274
--- /dev/null
+++ b/testing/bdfr/APKBUILD
@@ -0,0 +1,45 @@
+# Maintainer: Cowington Post <cowingtonpost@gmail.com>
+pkgname=bdfr
+pkgver=2.6.2
+pkgrel=1
+pkgdesc="Downloads and archives content from reddit"
+url="https://github.com/aliparlakci/bulk-downloader-for-reddit"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="
+ py3-appdirs
+ py3-beautifulsoup4
+ py3-click
+ py3-dict2xml
+ py3-praw
+ py3-requests
+ py3-yaml
+ python3
+ yt-dlp-core
+ "
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+checkdepends="py3-pytest"
+source="https://github.com/aliparlakci/bulk-downloader-for-reddit/archive/refs/tags/v$pkgver/bdfr-$pkgver.tar.gz"
+builddir="$srcdir/bulk-downloader-for-reddit-$pkgver"
+options="!check" # require actually downloading a bunch of data from the apis
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+2f5cdd9bb8be388add20dec70af378a5c13c7d1964dd601c4297f5873924321fd0dcd9e114e7e7243e812f60392890a05e2bc01b1d3004a2ddefb8fbfebc6ef9 bdfr-2.6.2.tar.gz
+"
diff --git a/testing/beancount-language-server/APKBUILD b/testing/beancount-language-server/APKBUILD
new file mode 100644
index 00000000000..be4ef78c2a7
--- /dev/null
+++ b/testing/beancount-language-server/APKBUILD
@@ -0,0 +1,30 @@
+# Contributor: Michał Polański <michal@polanski.me>
+# Maintainer: Michał Polański <michal@polanski.me>
+pkgname=beancount-language-server
+pkgver=1.3.4
+pkgrel=0
+pkgdesc="Language server for Beancount files"
+url="https://github.com/polarmutex/beancount-language-server"
+license="MIT"
+arch="all !armhf" # FTBFS
+makedepends="cargo cargo-auditable"
+source="https://github.com/polarmutex/beancount-language-server/archive/v$pkgver/beancount-language-server-$pkgver.tar.gz"
+options="!check net" # no test suite, fetch dependencies
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release
+}
+
+package() {
+ install -Dm755 target/release/$pkgname -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+48f06ccca47a4819a9a3214206ae3a517ee74174b13f4b6d7783fe7a89c8430494e9f19869f2ead49000a87c533c6495f3e11af1def8a7155b4a8ca32ef1eae7 beancount-language-server-1.3.4.tar.gz
+"
diff --git a/testing/beard/APKBUILD b/testing/beard/APKBUILD
index ae6801ad1a8..908f673663b 100644
--- a/testing/beard/APKBUILD
+++ b/testing/beard/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Andrew Hills <ahills@ednos.net>
# Maintainer: Andrew Hills <ahills@ednos.net>
pkgname=beard
-pkgver=0.3
+pkgver=0.4
pkgrel=0
pkgdesc="Simple hibernation daemon"
url="https://github.com/ahills/beard"
@@ -20,4 +20,6 @@ package() {
make PREFIX=/usr DESTDIR="$pkgdir" openrc install
}
-sha512sums="4348bc06811e1dbdcb7d5e8b90c8f927f13cf66aa9536dfa4566388e8ddb5e75dd4681f7e8034125832784c9864015872a2708688d8a4051ac3b69a80334c09d beard-0.3.tar.gz"
+sha512sums="
+fbc09780d64543ff3a95315f3766f633ba23bc1c09943dd378be113f5b0b6dfb6bf35e069809e56fb6cea57c12e6998f6984a4ff0cff31462689975527f13aa7 beard-0.4.tar.gz
+"
diff --git a/testing/bees/10-pthread_getname1.patch b/testing/bees/10-pthread_getname1.patch
index 2dcc4c63d58..98f7798c109 100644
--- a/testing/bees/10-pthread_getname1.patch
+++ b/testing/bees/10-pthread_getname1.patch
@@ -1,23 +1,13 @@
+diff --git a/lib/task.cc b/lib/task.cc
+index 9604ff2..238a841 100644
--- a/lib/task.cc
+++ b/lib/task.cc
-@@ -289,7 +289,6 @@
- lock.unlock();
-
- char buf[24] = { 0 };
-- DIE_IF_MINUS_ERRNO(pthread_getname_np(pthread_self(), buf, sizeof(buf)));
- DIE_IF_MINUS_ERRNO(pthread_setname_np(pthread_self(), m_title.c_str()));
-
- TaskStatePtr this_task = shared_from_this();
---- a/src/bees-trace.cc
-+++ b/src/bees-trace.cc
-@@ -136,10 +136,6 @@
- // OK try the pthread name next.
- char buf[24];
- memset(buf, '\0', sizeof(buf));
-- int err = pthread_getname_np(pthread_self(), buf, sizeof(buf));
-- if (err) {
-- return string("pthread_getname_np: ") + strerror(err);
-- }
- buf[sizeof(buf) - 1] = '\0';
-
- // thread_getname_np returns process name
+@@ -32,8 +32,6 @@ namespace crucible {
+ pthread_getname()
+ {
+ char buf[thread_name_length + 1] = { 0 };
+- // We'll get an empty name if this fails...
+- pthread_getname_np(pthread_self(), buf, sizeof(buf));
+ // ...or at least null-terminated garbage
+ buf[thread_name_length] = '\0';
+ return buf;
diff --git a/testing/bees/APKBUILD b/testing/bees/APKBUILD
index adfbb6a0187..46c77fde152 100644
--- a/testing/bees/APKBUILD
+++ b/testing/bees/APKBUILD
@@ -1,23 +1,21 @@
# Contributor: Nicolas Lorin <androw95220@gmail.com>
# Maintainer: Bradley Saulteaux <bradsoto@gmail.com>
pkgname=bees
-pkgver=0.7
+pkgver=0.10
pkgrel=0
pkgdesc="Best-Effort Extent-Same, a btrfs dedup agent"
url="https://github.com/Zygo/bees"
arch="all"
license="GPL-3.0-or-later"
-depends="btrfs-progs"
+depends="btrfs-progs bash util-linux-misc"
makedepends="btrfs-progs-dev util-linux-dev"
subpackages="$pkgname-openrc"
source="$pkgname-$pkgver.tar.gz::https://github.com/Zygo/bees/archive/v$pkgver.tar.gz
+ no-werror.patch
10-pthread_getname1.patch
- ppc64le_fix_min_compare.patch
bees.initd
"
-[ "$CARCH" = "riscv64" ] && options="$options textrels"
-
build() {
make all
}
@@ -34,8 +32,8 @@ package() {
}
sha512sums="
-beee7563ae0ea43247465941ef15f7bab2d86d5d164ccb280c378678b0bf61a67a4718881b94a5f3a72d4d0296eda92bfd7464dae0faeaa72b0e2a4ebef39a53 bees-0.7.tar.gz
-877a90b0be60357ba4778f30a89003270b93af8cc5995e2df3fb58147733a39e972129f693ce9239e8987c589f3c43384774c3baecd042e88abdb2b07d1ce2ef 10-pthread_getname1.patch
-2e13a670184d71b64e04450adb182d0a6e842e1a7d561882e0a07ae4ea7a9ed15a3fcce03f61c5412eabdb2fadf559f221e21ffd10440c4b8b700f3eab02aab4 ppc64le_fix_min_compare.patch
+77a4ae3d66430c2d9dc0351c16c60bad95f21e238fc00f5f5787f55929ba75ee25212ac4bb4a3e4a9419cec27bbcfd2987aa925a54bc2872609b38a698dbedc3 bees-0.10.tar.gz
+54dfe7b30ccb75500662001de00a55eca43d813a793f46f2ad062e26826083d593ee7c62ca090eac299285f8d758541754408b657f5d4695d951e08ea2cb8b10 no-werror.patch
+3cd163540719b8859e3d9dec0e75284c030f1b9acdd7dfc5cf2ab5f313254f318a16cce254b18dfe928ae5127564d772b850167e89541b83a4f5872ff2835a65 10-pthread_getname1.patch
093bc4c9604a0b28b39069e447d83800c91d0974fe4618ce5e5063e5c816b2d63c1b633710c592d76e8f6367d696283d6fa4a3a9561b09ce62fa28cabf8e55d0 bees.initd
"
diff --git a/testing/bees/no-werror.patch b/testing/bees/no-werror.patch
new file mode 100644
index 00000000000..20c087db2cc
--- /dev/null
+++ b/testing/bees/no-werror.patch
@@ -0,0 +1,11 @@
+diff --git a/makeflags b/makeflags
+index e008011..a17e9e2 100644
+--- a/makeflags
++++ b/makeflags
+@@ -1,5 +1,5 @@
+ # Default:
+-CCFLAGS = -Wall -Wextra -Werror -O3
++CCFLAGS = -Wall -Wextra
+
+ # Optimized:
+ # CCFLAGS = -Wall -Wextra -Werror -O3 -march=native
diff --git a/testing/bees/ppc64le_fix_min_compare.patch b/testing/bees/ppc64le_fix_min_compare.patch
deleted file mode 100644
index 49cb49359d2..00000000000
--- a/testing/bees/ppc64le_fix_min_compare.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/src/fiemap.cc
-+++ b/src/fiemap.cc
-@@ -27,7 +27,7 @@
- if (argc > 2) { fm.fm_start = stoull(argv[2], nullptr, 0); }
- if (argc > 3) { fm.fm_length = stoull(argv[3], nullptr, 0); }
- if (argc > 4) { fm.fm_flags = stoull(argv[4], nullptr, 0); }
-- fm.fm_length = min(fm.fm_length, FIEMAP_MAX_OFFSET - fm.fm_start);
-+ fm.fm_length = min(fm.fm_length, (uint64_t)FIEMAP_MAX_OFFSET - fm.fm_start);
- uint64_t stop_at = fm.fm_start + fm.fm_length;
- uint64_t last_byte = fm.fm_start;
- do {
diff --git a/testing/belcard/APKBUILD b/testing/belcard/APKBUILD
index 323920610ce..9aaca7b2f90 100644
--- a/testing/belcard/APKBUILD
+++ b/testing/belcard/APKBUILD
@@ -1,42 +1,37 @@
# Contributor: Francesco Colista <fcolista@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=belcard
-pkgver=5.1.12
+pkgver=5.3.38
pkgrel=0
pkgdesc="C++ library to manipulate VCard standard format"
-url="https://linphone.org"
+url="https://linphone.org/"
arch="all"
license="GPL-3.0-or-later"
options="!check" # not test available
-makedepends="cmake bctoolbox-dev belr-dev"
-subpackages="$pkgname-dev"
-source="https://www.linphone.org/releases/sources/belcard/belcard-$pkgver.tar.gz"
-source="$pkgname-$pkgver.tar.gz::https://github.com/BelledonneCommunications/belcard/archive/$pkgver.tar.gz"
+makedepends="cmake bctoolbox-dev belr-dev samurai"
+subpackages="$pkgname-dev $pkgname-libs"
+source="$pkgname-$pkgver.tar.bz2::https://gitlab.linphone.org/BC/public/belcard/-/archive/$pkgver/belcard-$pkgver.tar.bz2
+ fix-cmake-path.patch
+ "
build() {
- cmake -B build . \
+ cmake -B build -G Ninja \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
-DCMAKE_MODULE_PATH=/usr/lib/cmake \
-DCMAKE_INSTALL_DATADIR=share \
-DENABLE_STRICT=NO \
- -DENABLE_SHARED=YES \
+ -DBUILD_SHARED_LIBS=YES \
-DENABLE_STATIC=NO \
-DENABLE_UNIT_TESTS=NO
- make -C build
+ cmake --build build
}
package() {
- make -C build DESTDIR="$pkgdir" install
+ DESTDIR="$pkgdir" cmake --install build
}
-dev() {
- default_dev
- mkdir -p "$subpkgdir"/usr/lib/cmake/belcard
- mv "$pkgdir"/usr/share/belcard/cmake/* "$subpkgdir"/usr/lib/cmake/belcard
-}
-
-
sha512sums="
-2caadfb59d22f481f8344c10ceca079594287381aa1a47e8a842cb906f0922806616895f3ad03dbd57cb34d1256a021335555f9eeebc1bf74dd8acca41384224 belcard-5.1.12.tar.gz
+c64763df96a3fdb0e50e3022173ed195f7ac5a4836c547aeb129aecb7667fe76fa78b7b0aa948d2840c4476c474bd9c73249cf5bbd19a6c1ba7971fd969452d2 belcard-5.3.38.tar.bz2
+325ded3645fa04c65a171b17fcdd69e3bb877f5e3f07935dfc0cad624921733d1ef9bb715705a61bf806129b055462f505ed6698df95d5e1d1b09105f274ee81 fix-cmake-path.patch
"
diff --git a/testing/belcard/fix-cmake-path.patch b/testing/belcard/fix-cmake-path.patch
new file mode 100644
index 00000000000..4585422dbc6
--- /dev/null
+++ b/testing/belcard/fix-cmake-path.patch
@@ -0,0 +1,13 @@
+Adapted from https://github.com/OpenMandrivaAssociation/belcard/blob/master/belcard-5.3.6-fix-cmake-dir.patch
+
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -119,7 +119,7 @@ if(ENABLE_TOOLS)
+ endif()
+
+ include(CMakePackageConfigHelpers)
+-set(CMAKE_MODULES_INSTALL_DIR "${CMAKE_INSTALL_DATADIR}/${PROJECT_NAME}/cmake")
++set(CMAKE_MODULES_INSTALL_DIR "${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}/")
+ configure_package_config_file("${PROJECT_NAME}Config.cmake.in" "${PROJECT_BINARY_DIR}/${PROJECT_NAME}Config.cmake"
+ INSTALL_DESTINATION "${CMAKE_MODULES_INSTALL_DIR}"
+ NO_SET_AND_CHECK_MACRO
diff --git a/testing/belle-sip/APKBUILD b/testing/belle-sip/APKBUILD
index 6a5130db341..4bbf77a4418 100644
--- a/testing/belle-sip/APKBUILD
+++ b/testing/belle-sip/APKBUILD
@@ -1,38 +1,44 @@
# Contributor: Francesco Colista <fcolista@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=belle-sip
-pkgver=5.1.12
+pkgver=5.3.38
pkgrel=0
pkgdesc="SIP (RFC3261) implementation written in C"
-url="https://www.linphone.org"
+url="https://www.linphone.org/"
arch="all !riscv64" # java
license="GPL-2.0-or-later"
options="!check" # no test available
makedepends="cmake libantlr3c libantlr3c-dev bctoolbox-dev
-zlib-dev mbedtls-dev java-jre-headless belr-dev"
+zlib-dev mbedtls-dev java-jre-headless belr-dev samurai"
subpackages="$pkgname-dev"
source="https://gitlab.linphone.org/BC/public/belle-sip/-/archive/$pkgver/belle-sip-$pkgver.tar.gz
antlr.jar::https://github.com/antlr/website-antlr3/blob/gh-pages/download/antlr-3.4-complete.jar?raw=true"
+# unversioned provider of java-jre-headless needs to be selected explicitly
+case "$CARCH" in
+armv7|armhf|x86)
+ makedepends="$makedepends openjdk8-jre-base"
+ ;;
+esac
+
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
-DCMAKE_MODULE_PATH=/usr/lib/cmake \
-DCMAKE_SKIP_INSTALL_RPATH=ON \
-DENABLE_STATIC=NO \
- -DENABLE_SHARED=YES \
- -DENABLE_TESTS=NO \
- -DENABLE_STRICT=NO \
- -DANTLR3_JAR_PATH="$srcdir"/antlr.jar
- make -C build
+ -DBUILD_SHARED_LIBS=YES \
+ -DENABLE_UNIT_TESTS=NO \
+ -DENABLE_STRICT=NO
+ cmake --build build
}
package() {
- make -C build DESTDIR="$pkgdir" install
+ DESTDIR="$pkgdir" cmake --install build
}
sha512sums="
-8d5af2a04ffeed6c10ba35db741673d301a63e7e7fa39592add850b1481c4de55a4880d010424a8e4509a731fd1dc0409912c8ed45deb0256c931e5a8b649723 belle-sip-5.1.12.tar.gz
+bb6143c2ac7b8551d58f4c15076dbb56405cc653e50030a7d7208d27401658fe199bdb65332dbfbece5a68f93957140b59def88777e7abf6222550c192be7c2c belle-sip-5.3.38.tar.gz
04be4dfba3a21f3ab9d9e439a64958bd8e844a9f151b798383bd9e0dd6ebc416783ae7cb1d1dbb27fb7288ab9756b13b8338cdb8ceb41a10949c852ad45ab1f2 antlr.jar
"
diff --git a/testing/belr/APKBUILD b/testing/belr/APKBUILD
index 52d78843f06..dac79920b8c 100644
--- a/testing/belr/APKBUILD
+++ b/testing/belr/APKBUILD
@@ -1,27 +1,28 @@
# Contributor: Francesco Colista <fcolista@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=belr
-pkgver=5.1.12
+pkgver=5.3.38
pkgrel=0
pkgdesc="ABNF Parser"
-url="https://www.linphone.org"
+url="https://www.linphone.org/"
arch="all"
license="GPL-3.0-or-later"
options="!check" # not test available
-makedepends="cmake bctoolbox-dev eudev-dev"
+makedepends="cmake bctoolbox-dev eudev-dev samurai"
subpackages="$pkgname-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/BelledonneCommunications/belr/archive/$pkgver.tar.gz"
+source="$pkgname-$pkgver.tar.bz2::https://gitlab.linphone.org/BC/public/belr/-/archive/$pkgver/belr-$pkgver.tar.bz2"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
-DCMAKE_MODULE_PATH=/usr/lib/cmake \
-DENABLE_STRICT=NO \
- -DENABLE_SHARED=YES \
- -DENABLE_TESTS=NO \
+ -DBUILD_SHARED_LIBS=YES \
+ -DENABLE_UNIT_TESTS=NO \
-DENABLE_STATIC=NO \
- .
+ -DENABLE_STRICT=NO
+
cmake --build build
}
@@ -30,5 +31,5 @@ package() {
}
sha512sums="
-996a05d50ae85d846780a39ab49c0ca26c80320afe5607454b082f060f1f96de2c0ca2b57d66c0f99b37300e269a0ca70e3a0da24687070ea7f042b741e88b5e belr-5.1.12.tar.gz
+925a82f221458eb2791d524661283a318c6d846b2a79bbdff6223de43d96b08db457d33d695ccd2b8f09b8d2b50009c050e2cd135d73648af01fc66dc803e4b4 belr-5.3.38.tar.bz2
"
diff --git a/testing/bento4/APKBUILD b/testing/bento4/APKBUILD
deleted file mode 100644
index d9329585f84..00000000000
--- a/testing/bento4/APKBUILD
+++ /dev/null
@@ -1,44 +0,0 @@
-# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
-# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
-pkgname=bento4
-_pkgver=1.6.0-639
-pkgver=${_pkgver/-/.}
-pkgrel=0
-pkgdesc="Full-featured MP4 format, MPEG DASH, HLS, CMAF SDK and tools"
-url="https://bento4.com"
-arch="all !s390x !ppc64le" # fails to build
-license="GPL-2.0-only"
-makedepends="cmake samurai"
-subpackages="$pkgname-dev"
-source="https://github.com/axiomatic-systems/Bento4/archive/v$_pkgver/bento4-$_pkgver.tar.gz
- riscv64.patch
- "
-builddir="$srcdir/Bento4-$_pkgver"
-options="!check" # no meaningful tests available
-
-build() {
- cmake -G Ninja -B build \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- -DCMAKE_BUILD_TYPE=MinSizeRel \
- $CMAKE_CROSSOPTS .
- cmake --build build
-}
-
-package() {
- # no CMake install target
- cd "$builddir"/build
- install -Dm644 *.a -t "$pkgdir"/usr/lib/
- install -Dm755 -t "$pkgdir"/usr/bin/ \
- mp4* \
- aac2mp4 \
- avcinfo \
- fixaacsampledescription \
- hevcinfo
-}
-
-sha512sums="
-6c3371c967f914032239eb24748a366e18061d5c623a746c3d090e22768dcf405cd572bf8a03e2b6a8dffbba348d34d456a2ab578841c3028cdd8a68f558b9f6 bento4-1.6.0-639.tar.gz
-58eb058878e113b3fe7a4ede7179239027e61c334c91bebb24677125447144b2bf3c331edd10c1679b85acff70900364b1feddb1b5bb809deb687da99efc9d18 riscv64.patch
-"
diff --git a/testing/bento4/riscv64.patch b/testing/bento4/riscv64.patch
deleted file mode 100644
index 8c849fc2e6c..00000000000
--- a/testing/bento4/riscv64.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/Source/C++/Core/Ap4Config.h
-+++ b/Source/C++/Core/Ap4Config.h
-@@ -56,7 +56,7 @@
- #if defined(_M_IX86) || defined(_M_X64) || defined(_M_ARM) || defined(_M_ARM64)
- #define AP4_PLATFORM_BYTE_ORDER AP4_PLATFORM_BYTE_ORDER_LITTLE_ENDIAN
- #endif
--#elif defined(__i386__) || defined(__x86_64__) || defined(__arm__) || defined(__arm64__) || defined(__aarch64__)
-+#elif defined(__i386__) || defined(__x86_64__) || defined(__arm__) || defined(__arm64__) || defined(__aarch64__) || defined(__riscv)
- #define AP4_PLATFORM_BYTE_ORDER AP4_PLATFORM_BYTE_ORDER_LITTLE_ENDIAN
- #endif
- #endif
diff --git a/testing/berry-lang/APKBUILD b/testing/berry-lang/APKBUILD
new file mode 100644
index 00000000000..7cd89445706
--- /dev/null
+++ b/testing/berry-lang/APKBUILD
@@ -0,0 +1,31 @@
+# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=berry-lang
+pkgver=1.1.0
+pkgrel=0
+pkgdesc="Ultra-lightweight embedded scripting language"
+url="https://github.com/berry-lang/berry"
+arch="all !s390x" # tests fail on big-endian
+license="MIT"
+makedepends="python3 readline-dev"
+source="https://github.com/berry-lang/berry/archive/refs/tags/v$pkgver/berry-lang-$pkgver.tar.gz"
+builddir="$srcdir/berry-$pkgver"
+
+build() {
+ make
+}
+
+check() {
+ local testcase
+ for testcase in tests/*; do
+ ./berry $testcase
+ done
+}
+
+package() {
+ install -Dm755 berry -t "$pkgdir"/usr/bin
+}
+
+sha512sums="
+84e035392d659e5de310a8a536c2abb1e0973cdfd7d7c3feb7eb433711d3fdd1b275065d54877b8ef824e3d4413dcb063c688a22f700724a422f90f77522aad7 berry-lang-1.1.0.tar.gz
+"
diff --git a/testing/bettercap/APKBUILD b/testing/bettercap/APKBUILD
index cd70d362a20..05e746c9328 100644
--- a/testing/bettercap/APKBUILD
+++ b/testing/bettercap/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=bettercap
pkgver=2.32.0
-pkgrel=5
+pkgrel=20
pkgdesc="The Swiss Army knife for 802.11, BLE and Ethernet networks reconnaissance and MITM attacks"
url="https://www.bettercap.org"
arch="all"
@@ -10,13 +10,16 @@ license="GPL-3.0-only"
makedepends="libusb-dev libnetfilter_queue-dev libpcap-dev linux-headers go"
source="https://github.com/bettercap/bettercap/archive/refs/tags/v$pkgver/bettercap-v$pkgver.tar.gz"
-export GOPATH="$srcdir"
export GOFLAGS="$GOFLAGS -modcacherw -trimpath"
# github.com/chifflier/nfqueue-go/nfqueue 2017-02-22 does not include
# <sys/types.h> for these types, this is the easiest patch
export CGO_CFLAGS="$CFLAGS -Du_int32_t=uint32_t -Du_int16_t=uint16_t -Du_int8_t=uint8_t"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
build() {
go build -o "$builddir/bettercap" .
}
diff --git a/testing/betula/APKBUILD b/testing/betula/APKBUILD
new file mode 100644
index 00000000000..ae85032b8d0
--- /dev/null
+++ b/testing/betula/APKBUILD
@@ -0,0 +1,52 @@
+# Maintainer: Simon Zeni <simon@bl4ckb0ne.ca>
+pkgname=betula
+pkgver=1.1.0
+pkgrel=2
+pkgdesc="free single-user bookmarking software"
+url="https://betula.mycorrhiza.wiki/"
+arch="all"
+license="AGPL-3.0-only"
+options="net" # go modules
+makedepends="go sqlite-dev"
+checkdepends="curl"
+subpackages="$pkgname-openrc"
+install="$pkgname.pre-install"
+builddir="$srcdir/$pkgname-v$pkgver"
+source="$pkgname-v$pkgver.tar.gz::https://git.sr.ht/~bouncepaw/betula/archive/v$pkgver.tar.gz
+ $pkgname.initd
+ $pkgname.confd"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+export GOFLAGS="$GOFLAGS -tags=libsqlite3"
+export CGO_ENABLED=1
+
+build() {
+ go mod tidy
+ go build -o betula ./cmd/betula
+}
+
+check() {
+ ./test-web.sh
+ local ret=$?
+
+ # Cleanup so we don't hang CI
+ killall -q betula
+ return $ret
+}
+
+package() {
+ install -Dm755 betula "$pkgdir"/usr/bin/betula
+
+ install -Dm755 "$srcdir"/$pkgname.initd \
+ "$pkgdir"/etc/init.d/$pkgname
+ install -Dm644 "$srcdir"/$pkgname.confd \
+ "$pkgdir"/etc/conf.d/$pkgname
+
+}
+sha512sums="
+812c228d4d99b21637c28513b3b09cc9357ea6b9bc9b2a5d17b40b06d5cb714992d1690177047a3b2460f605fa376c68baa2d9ea3131d1ff12cbb9c4bfc3060b betula-v1.1.0.tar.gz
+93b8c65542050a04c225dbbf375dc5b1c44ac21f49c03976745d76e6d8f3b2cc4b66151324cf7e60d7fe5737c7f6b054798d7f5aa01de1eea86ba7e3002929fa betula.initd
+9d45d9b2b67248ec1cf7736453af1c54da3ddb82b1f37df2046e45603db90ee4654f23b7c5d40e702a3ae56f9a800ddc051369dbf5082e86580ab625208f595e betula.confd
+"
diff --git a/testing/betula/betula.confd b/testing/betula/betula.confd
new file mode 100644
index 00000000000..25c85aacb2d
--- /dev/null
+++ b/testing/betula/betula.confd
@@ -0,0 +1,3 @@
+supervisor=supervise-daemon
+datadir="/var/lib/betula"
+opts=""
diff --git a/testing/betula/betula.initd b/testing/betula/betula.initd
new file mode 100644
index 00000000000..e4131182704
--- /dev/null
+++ b/testing/betula/betula.initd
@@ -0,0 +1,18 @@
+#!/sbin/openrc-run
+
+name=betula
+description="Self-hosted personal link collection manager"
+
+command=/usr/bin/betula
+command_user=betula:betula
+command_args="${datadir}/links ${opts}"
+
+depend() {
+ use logger dns
+ need net
+ after firewall
+}
+
+start_pre() {
+ checkpath -d -o $command_user "$datadir"
+}
diff --git a/testing/betula/betula.pre-install b/testing/betula/betula.pre-install
new file mode 100644
index 00000000000..60674c64498
--- /dev/null
+++ b/testing/betula/betula.pre-install
@@ -0,0 +1,9 @@
+#!/bin/sh
+
+user=betula
+group=betula
+
+addgroup -S $group 2>/dev/null
+adduser -S -D -h /var/lib/$user -s /sbin/nologin -G $group -g $user $user 2>/dev/null
+
+exit 0
diff --git a/testing/bgpq4/APKBUILD b/testing/bgpq4/APKBUILD
new file mode 100644
index 00000000000..0087906a14d
--- /dev/null
+++ b/testing/bgpq4/APKBUILD
@@ -0,0 +1,34 @@
+# Contributor: Nicolas Lorin <androw95220@gmail.com>
+# Maintainer: Nicolas Lorin <androw95220@gmail.com>
+pkgname=bgpq4
+pkgver=1.12
+pkgrel=0
+pkgdesc="bgp filtering automation tool"
+url="https://github.com/bgp/bgpq4"
+arch="all"
+options="!check" #no test suite
+license="BSD-2-Clause"
+makedepends="autoconf automake libtool"
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/bgp/bgpq4/archive/refs/tags/$pkgver.tar.gz"
+
+prepare() {
+ default_prepare
+ ./bootstrap
+}
+
+build() {
+ ./configure \
+ --host=$CHOST \
+ --build=$CBUILD \
+ --prefix=/usr
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+501714dca3aa7f27f0f56c581c5d82fb1b609f5bad1254b453517f821ef99e673a0a118c6b2aa6e2430167fe322656d2e20ead9a09ec834709e586d07ec8abbc bgpq4-1.12.tar.gz
+"
diff --git a/testing/bgs/APKBUILD b/testing/bgs/APKBUILD
index b886bd9c9b1..01b6ce779f3 100644
--- a/testing/bgs/APKBUILD
+++ b/testing/bgs/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: dai9ah <dai9ah@protonmail.com>
pkgname=bgs
pkgver=0.8
-pkgrel=0
+pkgrel=1
pkgdesc="Extremely fast and small background setter for X"
url="https://github.com/Gottox/bgs"
arch="all"
diff --git a/testing/biboumi/APKBUILD b/testing/biboumi/APKBUILD
deleted file mode 100644
index 88024c1e589..00000000000
--- a/testing/biboumi/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Contributor: Anjandev Momi <anjan@momi.ca>
-# Maintainer: Anjandev Momi <anjan@momi.ca>
-pkgname=biboumi
-pkgver=9.0
-pkgrel=2
-pkgdesc="XMPP to IRC gateway"
-options="!check" # has no tests
-url="https://biboumi.louiz.org/"
-arch="all"
-license="Zlib"
-makedepends="cmake expat-dev gnu-libiconv-dev util-linux-dev libpq-dev
- libidn-dev udns-dev botan-dev"
-subpackages="$pkgname-doc"
-source="https://git.louiz.org/biboumi/snapshot/biboumi-$pkgver.tar.xz"
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build \
- -Wno-dev \
- -DCMAKE_BUILD_TYPE=None \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DWITH_BOTAN=True \
- -DWITHOUT_SYSTEMD=False \
- $CMAKE_CROSSOPTS .
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --build build --target install
-}
-
-sha512sums="
-cfaacd831b56031906922472275c55fd6f1a5307ebe54959d21e3799ad4612499e8beeb34e8736df9eabc9fec1a861d17567250d64f316ace47395fd6c8f3c18 biboumi-9.0.tar.xz
-"
diff --git a/testing/bigbang/APKBUILD b/testing/bigbang/APKBUILD
deleted file mode 100644
index c61b5329b02..00000000000
--- a/testing/bigbang/APKBUILD
+++ /dev/null
@@ -1,61 +0,0 @@
-# Contributor: MathxH Chen <brainfvck@foxmail.com>
-# Maintainer: MathxH Chen <brainfvck@foxmail.com>
-pkgname=bigbang
-pkgver=0.0.4
-pkgrel=3
-pkgdesc="The core node of bigbang blockchain network"
-url="https://github.com/BigBang-Foundation/BigBang"
-# x86, armv7, armhf, ppc64le - PoW Hash algorithm does not support 32-bit or powerpc at present
-# s390x - tests fail
-arch="x86_64 aarch64"
-license="MIT"
-makedepends="
- cmake
- python3
- boost-dev
- openssl-dev
- readline-dev
- ncurses-dev
- libsodium-dev
- libexecinfo-dev
- leveldb-dev
- samurai
- snappy-dev
- "
-# cmakelists.patch force use dynamic libs.
-source="$pkgname-$pkgver.tar.gz::https://github.com/BigBang-Foundation/BigBang/archive/v$pkgver.tar.gz
- cmakelists.patch
- gcc11.patch
- werror.patch
- "
-builddir="$srcdir/BigBang-$pkgver"
-options="!check" # fail on builders
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build -G Ninja \
- -DCMAKE_BUILD_TYPE=MinSizeRel \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DALPINE_LINUX=True \
- $CMAKE_CROSSOPTS
- cmake --build build
-}
-
-check() {
- ./build/test/test_big
- ./build/test/test_ctsdb
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-
-
-sha512sums="
-fdc03a05c4d367823e4fed474be2a7d7ff3455e8859eaa11839e1d195e84a8097f8bf3849b0d048d556fb2dbd624f1013814137183616deb5941dfd4b0159f8f bigbang-0.0.4.tar.gz
-cfc989960f59de959a1d1acefd8abff347c5a9ef3e834a01828ab9ee8c4ba392b4d363aeb667de472b44a16e2ffe25f978b67d0968be85d781f9f9fd0569d41f cmakelists.patch
-9968f3c0c1dfb4aa164ea07533c7636210ddc6cb2565348de60b6caf9fbfa33bad2e7e14c22464e3001c641db0a9cc875a3176b52ff79c7149468d90be63be04 gcc11.patch
-e1c862c575575c345d48148e37624beeed343098d3a99cc3ccfbf686c2c7b1b1a8ef236dd1fe0128b44ddd06d1b96b6083be45d1b88cf3cce8ae7a10aa67fbd4 werror.patch
-"
diff --git a/testing/bigbang/cmakelists.patch b/testing/bigbang/cmakelists.patch
deleted file mode 100755
index cc342750401..00000000000
--- a/testing/bigbang/cmakelists.patch
+++ /dev/null
@@ -1,39 +0,0 @@
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -94,21 +94,21 @@
- endif()
-
- # packages
--if(UNIX AND NOT CYGWIN)
-- set(Boost_USE_STATIC_LIBS ON)
-- set(OPENSSL_USE_STATIC_LIBS ON)
-- set(sodium_USE_STATIC_LIBS ON)
-- set(Boost_USE_MULTITHREADED ON)
-- set(Protobuf_USE_STATIC_LIBS ON)
-- set(Readline_USE_STATIC_LIBS ON)
--else()
-- set(Boost_USE_STATIC_LIBS OFF)
-- set(OPENSSL_USE_STATIC_LIBS OFF)
-- set(sodium_USE_STATIC_LIBS OFF)
-- set(Boost_USE_MULTITHREADED OFF)
-- set(Protobuf_USE_STATIC_LIBS OFF)
-- set(Readline_USE_STATIC_LIBS OFF)
--endif()
-+# if(UNIX AND NOT CYGWIN)
-+# set(Boost_USE_STATIC_LIBS ON)
-+# set(OPENSSL_USE_STATIC_LIBS ON)
-+# set(sodium_USE_STATIC_LIBS ON)
-+# set(Boost_USE_MULTITHREADED ON)
-+# set(Protobuf_USE_STATIC_LIBS ON)
-+# set(Readline_USE_STATIC_LIBS ON)
-+# else()
-+# set(Boost_USE_STATIC_LIBS OFF)
-+# set(OPENSSL_USE_STATIC_LIBS OFF)
-+# set(sodium_USE_STATIC_LIBS OFF)
-+# set(Boost_USE_MULTITHREADED OFF)
-+# set(Protobuf_USE_STATIC_LIBS OFF)
-+# set(Readline_USE_STATIC_LIBS OFF)
-+# endif()
-
- set(Boost_NO_BOOST_CMAKE ON)
- set(Boost_USE_MULTITHREADED ON)
diff --git a/testing/bigbang/gcc11.patch b/testing/bigbang/gcc11.patch
deleted file mode 100644
index 4f7c0bd99b0..00000000000
--- a/testing/bigbang/gcc11.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/src/xengine/stream/stream.h
-+++ b/src/xengine/stream/stream.h
-@@ -11,6 +11,7 @@
- #include <iomanip>
- #include <iostream>
- #include <list>
-+#include <map>
-
- #include "../type.h"
- #include "stream/circular.h"
diff --git a/testing/bigbang/werror.patch b/testing/bigbang/werror.patch
deleted file mode 100644
index 7c12cbf0863..00000000000
--- a/testing/bigbang/werror.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -70,7 +70,7 @@
- # warnings
- if(UNIX AND NOT CYGWIN)
- if(${CMAKE_SYSTEM_PROCESSOR} MATCHES "^x86")
-- string(APPEND CMAKE_CXX_FLAGS " -Wall -Wextra -Werror -Wno-char-subscripts -Wno-unused-parameter -Wno-sign-compare -Wno-reorder -Wno-unused-local-typedefs -Wno-implicit-fallthrough -Wno-overloaded-virtual -Wno-strict-aliasing")
-+ string(APPEND CMAKE_CXX_FLAGS " -Wall -Wextra -Wno-char-subscripts -Wno-unused-parameter -Wno-sign-compare -Wno-reorder -Wno-unused-local-typedefs -Wno-implicit-fallthrough -Wno-overloaded-virtual -Wno-strict-aliasing")
- if (APPLE)
- string(APPEND CMAKE_CXX_FLAGS " -fvisibility-inlines-hidden -fvisibility=hidden -Wno-unknown-warning-option -Wno-tautological-overlap-compare")
- endif()
diff --git a/testing/bindfs/APKBUILD b/testing/bindfs/APKBUILD
index ee9572102b5..f6fd531721b 100644
--- a/testing/bindfs/APKBUILD
+++ b/testing/bindfs/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Daniel Gerber <dg@atufi.org>
# Maintainer: Sean McAvoy <seanmcavoy@gmail.com>
pkgname=bindfs
-pkgver=1.15.1
+pkgver=1.17.6
pkgrel=0
pkgdesc="FUSE filesystem for mirroring a directory to another directory"
url="https://bindfs.org"
@@ -14,7 +14,6 @@ options="!check"
source="https://bindfs.org/downloads/bindfs-$pkgver.tar.gz
musl-getmntent-issue.patch"
-
build() {
./configure \
--build=$CBUILD \
@@ -36,6 +35,6 @@ package() {
}
sha512sums="
-da9003f141b7aa2c23651b3b836b1d979bf1b19915f307c05e40ae6906aab738036cc8b5df6caeec158e4fa6b7bca71489ea7884ff1607c6fea72a603a048d59 bindfs-1.15.1.tar.gz
+57a6cf3cdeb6a3ebdbcd59349e0f6fbcb60c4383a26ffc7be3b61152138d593f995501234cb5d4082e689b640de73efc60ce05219c3df1ff776498be27bfe0f1 bindfs-1.17.6.tar.gz
1c6491241393974923ed512ac2621c864f6f5e9f7e6faca83154cb785332049b49e18dda31ce297a4531bb0abf42d5039c996d0223eac105b0b7af377fd8c2ec musl-getmntent-issue.patch
"
diff --git a/testing/binwalk/APKBUILD b/testing/binwalk/APKBUILD
index 9948389fe8f..b13db61fbcf 100644
--- a/testing/binwalk/APKBUILD
+++ b/testing/binwalk/APKBUILD
@@ -1,23 +1,29 @@
# Contributor: Francesco Colista <fcolista@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=binwalk
-pkgver=2.3.3
+pkgver=2.4.0
pkgrel=1
pkgdesc="Fast, easy to use tool for analyzing and extracting firmware images"
url="https://github.com/ReFirmLabs/binwalk/"
arch="noarch"
license="MIT"
depends="py3-pycryptodome python3"
-source="$pkgname-$pkgver.tar.gz::https://github.com/ReFirmLabs/binwalk/archive/v$pkgver.tar.gz"
+makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/OSPG/binwalk/archive/refs/tags/v$pkgver.tar.gz"
+
+# secfixes:
+# 2.3.4-r0:
+# - CVE-2022-4510
build() {
python3 setup.py build
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
-d7e8d576cfc92b1488ceda7d4577aeaaefb2a251a5aca0b4a497da0dff7c6e6e862e0a77346593c77fb4e54b7de3d3a0c1c8c9421ecec8f06aabbc4b336920c5 binwalk-2.3.3.tar.gz
+41bee6a0d1cd587f81dcf81c30215a305b61e4db208bc9d8e4f0b9f12acb47e4dc2e6af23e06118ef6e30c484f6be743b456b6d4324be4388413ff291682345e binwalk-2.4.0.tar.gz
"
diff --git a/testing/biome/APKBUILD b/testing/biome/APKBUILD
new file mode 100644
index 00000000000..52e858dd24d
--- /dev/null
+++ b/testing/biome/APKBUILD
@@ -0,0 +1,42 @@
+# Maintainer: Michał Polański <michal@polanski.me>
+pkgname=biome
+pkgver=1.6.0
+pkgrel=0
+pkgdesc="Toolchain of the web"
+url="https://biomejs.dev/"
+license="MIT"
+arch="aarch64 x86_64" # architectures supported by upstream
+makedepends="cargo cargo-auditable"
+source="https://github.com/biomejs/biome/archive/cli/v$pkgver/biome-$pkgver.tar.gz"
+builddir="$srcdir/biome-cli-v$pkgver"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+
+ git init
+ git config --local user.name "example"
+ git config --local user.email "example@example.com"
+ git add .
+ git commit -m "needed for symlink tests"
+}
+
+build() {
+ BIOME_VERSION="$pkgver" cargo auditable build -p biome_cli --frozen --release
+}
+
+check() {
+ cargo test -p biome_cli --frozen -- \
+ --skip commands::check::max_diagnostics_default \
+ --skip commands::ci::max_diagnostics \
+ --skip commands::ci::max_diagnostics_default
+}
+
+package() {
+ install -Dm755 target/release/$pkgname -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+2d650d072e35662b2cab9250ef3aaaabc19e9d4eaf4526e6148cb27cefa2f8d82d37a05d64852120635e24a1e846cecbc21c658d25d40adf7d35b1b8e10adf3a biome-1.6.0.tar.gz
+"
diff --git a/testing/biometryd/0001-Add-missing-headers-for-gcc-13.patch b/testing/biometryd/0001-Add-missing-headers-for-gcc-13.patch
new file mode 100644
index 00000000000..3b484057669
--- /dev/null
+++ b/testing/biometryd/0001-Add-missing-headers-for-gcc-13.patch
@@ -0,0 +1,37 @@
+From c1ebddbf24b55d145a34722aaba79f0eb7e4d13b Mon Sep 17 00:00:00 2001
+From: Marius Gripsgard <mariogrip@debian.org>
+Date: Thu, 27 Jul 2023 03:17:55 +0200
+Subject: [PATCH] Add missing headers for gcc 13
+
+---
+ src/biometry/util/cli.h | 1 +
+ src/biometry/util/not_reachable.h | 1 +
+ 2 files changed, 2 insertions(+)
+
+diff --git a/src/biometry/util/cli.h b/src/biometry/util/cli.h
+index b591ba5..4823fa9 100644
+--- a/src/biometry/util/cli.h
++++ b/src/biometry/util/cli.h
+@@ -32,6 +32,7 @@
+ #include <string>
+ #include <unordered_map>
+ #include <vector>
++#include <cstdint>
+
+ namespace biometry
+ {
+diff --git a/src/biometry/util/not_reachable.h b/src/biometry/util/not_reachable.h
+index 1d6d120..8a6176b 100644
+--- a/src/biometry/util/not_reachable.h
++++ b/src/biometry/util/not_reachable.h
+@@ -24,6 +24,7 @@
+
+ #include <stdexcept>
+ #include <string>
++#include <cstdint>
+
+ namespace biometry
+ {
+--
+2.40.1
+
diff --git a/testing/biometryd/0001-Use-CMAKE_INSTALL_FULL_-for-installing.patch b/testing/biometryd/0001-Use-CMAKE_INSTALL_FULL_-for-installing.patch
new file mode 100644
index 00000000000..41feb166c06
--- /dev/null
+++ b/testing/biometryd/0001-Use-CMAKE_INSTALL_FULL_-for-installing.patch
@@ -0,0 +1,125 @@
+From a5117d6b6e2bb7cf3181d2e07021c6dc55069252 Mon Sep 17 00:00:00 2001
+From: Luca Weiss <luca@z3ntu.xyz>
+Date: Wed, 31 Jan 2024 22:29:26 +0100
+Subject: [PATCH] Use CMAKE_INSTALL_FULL_* for installing
+
+While I don't think there should be a difference between the two
+variables for most cases, for SYSCONFDIR we might end up installing into
+/usr/etc/ if we don't use the FULL_SYSCONFDIR variable.
+---
+ data/CMakeLists.txt | 6 +++---
+ doc/CMakeLists.txt | 2 +-
+ include/CMakeLists.txt | 2 +-
+ include/biometry/CMakeLists.txt | 2 +-
+ include/biometry/hardware/CMakeLists.txt | 2 +-
+ src/biometry/CMakeLists.txt | 4 ++--
+ src/biometry/qml/Biometryd/CMakeLists.txt | 2 +-
+ 7 files changed, 10 insertions(+), 10 deletions(-)
+
+diff --git a/data/CMakeLists.txt b/data/CMakeLists.txt
+index 64d61b5..0b8a542 100644
+--- a/data/CMakeLists.txt
++++ b/data/CMakeLists.txt
+@@ -7,17 +7,17 @@ configure_file(
+
+ install(
+ FILES ${CMAKE_CURRENT_BINARY_DIR}/biometryd.pc
+- DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig
++ DESTINATION ${CMAKE_INSTALL_FULL_LIBDIR}/pkgconfig
+ )
+
+ install(
+ FILES ${CMAKE_CURRENT_SOURCE_DIR}/com.ubports.biometryd.Service.conf
+- DESTINATION ${CMAKE_INSTALL_SYSCONFDIR}/dbus-1/system.d/
++ DESTINATION ${CMAKE_INSTALL_FULL_SYSCONFDIR}/dbus-1/system.d/
+ )
+
+ install(
+ FILES ${CMAKE_CURRENT_BINARY_DIR}/biometryd.conf
+- DESTINATION ${CMAKE_INSTALL_SYSCONFDIR}/init
++ DESTINATION ${CMAKE_INSTALL_FULL_SYSCONFDIR}/init
+ )
+
+ if (USE_SYSTEMD)
+diff --git a/doc/CMakeLists.txt b/doc/CMakeLists.txt
+index 94d5928..bd283f2 100644
+--- a/doc/CMakeLists.txt
++++ b/doc/CMakeLists.txt
+@@ -22,7 +22,7 @@ if (DOXYGEN_FOUND)
+ COMMENT "Generating API documentation with Doxygen" VERBATIM)
+ install(
+ DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/html
+- DESTINATION ${CMAKE_INSTALL_DOCDIR})
++ DESTINATION ${CMAKE_INSTALL_FULL_DOCDIR})
+
+ endif ()
+ endif ()
+diff --git a/include/CMakeLists.txt b/include/CMakeLists.txt
+index 572e4e3..084af7c 100644
+--- a/include/CMakeLists.txt
++++ b/include/CMakeLists.txt
+@@ -2,5 +2,5 @@ add_subdirectory(biometry)
+
+ install(
+ DIRECTORY biometry
+- DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
++ DESTINATION ${CMAKE_INSTALL_FULL_INCLUDEDIR}
+ )
+diff --git a/include/biometry/CMakeLists.txt b/include/biometry/CMakeLists.txt
+index ad66907..d9de0bc 100644
+--- a/include/biometry/CMakeLists.txt
++++ b/include/biometry/CMakeLists.txt
+@@ -2,7 +2,7 @@ configure_file(version.h.in version.h)
+
+ install(
+ FILES ${CMAKE_CURRENT_BINARY_DIR}/version.h
+- DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/biometry
++ DESTINATION ${CMAKE_INSTALL_FULL_INCLUDEDIR}/biometry
+ )
+
+ add_subdirectory(hardware)
+\ No newline at end of file
+diff --git a/include/biometry/hardware/CMakeLists.txt b/include/biometry/hardware/CMakeLists.txt
+index a0236b8..98179dd 100644
+--- a/include/biometry/hardware/CMakeLists.txt
++++ b/include/biometry/hardware/CMakeLists.txt
+@@ -5,5 +5,5 @@ set(
+
+ install(
+ FILES ${BIOMETRY_HARDWARE_HEADERS}
+- DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/biometry/hardware
++ DESTINATION ${CMAKE_INSTALL_FULL_INCLUDEDIR}/biometry/hardware
+ )
+diff --git a/src/biometry/CMakeLists.txt b/src/biometry/CMakeLists.txt
+index e36fbb1..3ad7f94 100644
+--- a/src/biometry/CMakeLists.txt
++++ b/src/biometry/CMakeLists.txt
+@@ -174,10 +174,10 @@ target_link_libraries(
+
+ install(
+ TARGETS biometry
+- LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
++ LIBRARY DESTINATION ${CMAKE_INSTALL_FULL_LIBDIR}
+ )
+
+ install(
+ TARGETS biometryd
+- RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
++ RUNTIME DESTINATION ${CMAKE_INSTALL_FULL_BINDIR}
+ )
+diff --git a/src/biometry/qml/Biometryd/CMakeLists.txt b/src/biometry/qml/Biometryd/CMakeLists.txt
+index 1ac216c..7a1cc5b 100644
+--- a/src/biometry/qml/Biometryd/CMakeLists.txt
++++ b/src/biometry/qml/Biometryd/CMakeLists.txt
+@@ -43,7 +43,7 @@ target_link_libraries(biometryd-qml biometry Qt5::Core Qt5::Qml Qt5::Quick)
+ # can test the module within the build env.
+ configure_file(qmldir qmldir COPYONLY)
+
+-set(PLUGIN_DIR ${CMAKE_INSTALL_LIBDIR}/qt5/qml/Biometryd)
++set(PLUGIN_DIR ${CMAKE_INSTALL_FULL_LIBDIR}/qt5/qml/Biometryd)
+
+ install(
+ TARGETS biometryd-qml
+--
+2.43.0
+
diff --git a/testing/biometryd/0004-disable_flaky_test.patch b/testing/biometryd/0004-disable_flaky_test.patch
new file mode 100644
index 00000000000..1840817b6d2
--- /dev/null
+++ b/testing/biometryd/0004-disable_flaky_test.patch
@@ -0,0 +1,13 @@
+diff --git a/tests/test_daemon.cpp b/tests/test_daemon.cpp
+index c848fb9..3e49d8d 100644
+--- a/tests/test_daemon.cpp
++++ b/tests/test_daemon.cpp
+@@ -174,7 +174,7 @@ TEST_F(Daemon, invoking_test_command_succeeds)
+ core::posix::wait::Flags::untraced)));
+ }
+
+-TEST_F(Daemon, invoking_run_succeeds)
++TEST_F(Daemon, DISABLED_invoking_run_succeeds)
+ {
+ auto json = R"_(
+ {
diff --git a/testing/biometryd/0005-add-missing-types-header.patch b/testing/biometryd/0005-add-missing-types-header.patch
new file mode 100644
index 00000000000..32d5b4a4a63
--- /dev/null
+++ b/testing/biometryd/0005-add-missing-types-header.patch
@@ -0,0 +1,24 @@
+From e57f23457e54727abd575b89b1824427ac5f3c4b Mon Sep 17 00:00:00 2001
+From: Brandon Boese <brandonboese@protonmail.com>
+Date: Sun, 15 Oct 2023 20:06:27 -0400
+Subject: [PATCH] add missing types header
+
+---
+ src/biometry/qml/Biometryd/user.cpp | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/biometry/qml/Biometryd/user.cpp b/src/biometry/qml/Biometryd/user.cpp
+index 0e0d7b2..fe0d802 100644
+--- a/src/biometry/qml/Biometryd/user.cpp
++++ b/src/biometry/qml/Biometryd/user.cpp
+@@ -18,6 +18,7 @@
+ */
+
+ #include <biometry/qml/Biometryd/user.h>
++#include <sys/types.h>
+
+ biometry::qml::User::User(QObject *parent) : QObject{parent}
+ {
+--
+2.42.0
+
diff --git a/testing/biometryd/0006-direct-path-to-qmlplugindump.patch b/testing/biometryd/0006-direct-path-to-qmlplugindump.patch
new file mode 100644
index 00000000000..9020564da1d
--- /dev/null
+++ b/testing/biometryd/0006-direct-path-to-qmlplugindump.patch
@@ -0,0 +1,25 @@
+From d811b8b332f0bbaf8e258c831ba9ee5be1dc31a5 Mon Sep 17 00:00:00 2001
+From: Brandon Boese <brandonboese@protonmail.com>
+Date: Sun, 15 Oct 2023 20:15:10 -0400
+Subject: [PATCH] direct path to qmlplugindump
+
+---
+ src/biometry/qml/Biometryd/CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/biometry/qml/Biometryd/CMakeLists.txt b/src/biometry/qml/Biometryd/CMakeLists.txt
+index 735b0d2..b2ddd62 100644
+--- a/src/biometry/qml/Biometryd/CMakeLists.txt
++++ b/src/biometry/qml/Biometryd/CMakeLists.txt
+@@ -60,7 +60,7 @@ if (NOT CMAKE_CROSSCOMPILING)
+ SOURCES ${CMAKE_CURRENT_BINARY_DIR}/plugins.qmltypes)
+
+ add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/plugins.qmltypes
+- COMMAND qmlplugindump -notrelocatable Biometryd 0.0 ../ > ${CMAKE_CURRENT_BINARY_DIR}/plugins.qmltypes
++ COMMAND /usr/lib/qt5/bin/qmlplugindump -notrelocatable Biometryd 0.0 ../ > ${CMAKE_CURRENT_BINARY_DIR}/plugins.qmltypes
+ DEPENDS biometryd-qml
+ WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
+ )
+--
+2.42.0
+
diff --git a/testing/biometryd/APKBUILD b/testing/biometryd/APKBUILD
new file mode 100644
index 00000000000..14232dce1ed
--- /dev/null
+++ b/testing/biometryd/APKBUILD
@@ -0,0 +1,65 @@
+# Maintainer: Luca Weiss <luca@z3ntu.xyz>
+# Contributor: Brandon Boese <brandonboese@protonmail.com>
+pkgname=biometryd
+pkgver=0.3.1
+pkgrel=0
+pkgdesc="Mediates and multiplexes access to biometric devices"
+url="https://gitlab.com/ubports/development/core/biometryd"
+arch="all"
+license="GPL-3.0-only"
+depends="qt5-qtbase-sqlite"
+makedepends="
+ abseil-cpp-dev
+ cmake
+ cmake-extras
+ dbus-cpp-dev
+ dconf-dev
+ elfutils-dev
+ gnome-keyring
+ gtest-dev
+ libapparmor-dev
+ libphonenumber-dev
+ libqtdbustest
+ lomiri-api-dev
+ process-cpp-dev
+ qt5-qtbase-dev
+ qt5-qtdeclarative-dev
+ samurai
+ telepathy-mission-control-dev
+ telepathy-qt-dev
+ "
+subpackages="$pkgname-dev"
+source="https://gitlab.com/ubports/development/core/biometryd/-/archive/$pkgver/biometryd-$pkgver.tar.gz
+ 0001-Add-missing-headers-for-gcc-13.patch
+ 0004-disable_flaky_test.patch
+ 0005-add-missing-types-header.patch
+ 0006-direct-path-to-qmlplugindump.patch
+ 0001-Use-CMAKE_INSTALL_FULL_-for-installing.patch
+ "
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=None \
+ -DUSE_SYSTEMD=OFF
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure -E "test_(daemon|dbus_(codec|stub_skeleton))"
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+357b9507596b080f14ed327a346eb45f3389de4c5699b0bff399feced1cf1d1bb489c5e3f27e8aa816c541d6ffc8152136e3cdf2928074469d6052c9c7eaca2b biometryd-0.3.1.tar.gz
+89cb2cd23bafbf7bf6be13378ba98f3c15748b72d0938523546a853948bcf9af9c9405231810bf96be750f0cfdf0e524e2a8468f6bf707faefef3560b16be81c 0001-Add-missing-headers-for-gcc-13.patch
+4e0d8622df89742602ac43d5519c8d818da9e350b208b2468dce6b4a3764c6002f6ae67657c2b535f531c4f77374bee93f9e7be4b1cf3c3c1ef5f45d8abb8749 0004-disable_flaky_test.patch
+8b702ef0e2a3e5f2b98c6e63661de0996d28dc3c8d09510802eae27ce1f453a5048b5ad987151821ba72c4a3bd2ebeaad3905c641f72e7528b63fb7148a0a3ef 0005-add-missing-types-header.patch
+09960fd3fef3c8671c394c4d60b29f65a2b0f71cb002e007445154bcce1a932f29f383d0c272fa10883c8099df9dbb675517d393376ff443a3f1fd5ad640c818 0006-direct-path-to-qmlplugindump.patch
+a8b429c7fe8cb8655823e7836fc79af839dca6bee3e0c8122bbe00bbf1dfb11afc9a50c4a761f1fce503f8a5951e2d156a805e2419b94a345ab2e985fe9c3eed 0001-Use-CMAKE_INSTALL_FULL_-for-installing.patch
+"
diff --git a/testing/bionic_translation/APKBUILD b/testing/bionic_translation/APKBUILD
new file mode 100644
index 00000000000..4998670fc55
--- /dev/null
+++ b/testing/bionic_translation/APKBUILD
@@ -0,0 +1,39 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=bionic_translation
+pkgver=0_git20240202
+pkgrel=0
+_commit="534380e8d8bac0ec858012cdac05bb3f9d9367d1"
+pkgdesc="A set of libraries for loading bionic-linked .so files on musl/glibc"
+url="https://gitlab.com/android_translation_layer/bionic_translation"
+arch="x86_64 aarch64 armv7"
+license="Apache-2.0"
+makedepends="
+ elfutils-dev
+ libbsd-dev
+ libunwind-dev
+ mesa-dev
+ meson
+ samurai
+ "
+subpackages="$pkgname-dev $pkgname-dbg"
+source="https://gitlab.com/android_translation_layer/bionic_translation/-/archive/$_commit/bionic_translation-$_commit.tar.gz"
+builddir="$srcdir/bionic_translation-$_commit"
+
+build() {
+ abuild-meson \
+ . output
+ meson compile -C output
+}
+
+check() {
+ meson test --no-rebuild --print-errorlogs -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+sha512sums="
+55bf53043318e4b25c689f38910aa535c4eceacde5ab6ffc986a43cc5985e6617089fd97c1827d4c29f77aeda486e415286a1a7c54e0eed8fb89efa6cadad29f bionic_translation-534380e8d8bac0ec858012cdac05bb3f9d9367d1.tar.gz
+"
diff --git a/testing/birdtray/APKBUILD b/testing/birdtray/APKBUILD
index cbe789d1a07..0d8bce736e2 100644
--- a/testing/birdtray/APKBUILD
+++ b/testing/birdtray/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Nathan <ndowens@artixlinux.org>
pkgname=birdtray
pkgver=1.9.0
-pkgrel=0
+pkgrel=1
pkgdesc="Run Thunderbird with a system tray icon"
url="https://github.com/gyunaev/birdtray"
arch="all"
diff --git a/testing/bitlbee-facebook/APKBUILD b/testing/bitlbee-facebook/APKBUILD
index f9862f852d3..44d6111c978 100644
--- a/testing/bitlbee-facebook/APKBUILD
+++ b/testing/bitlbee-facebook/APKBUILD
@@ -1,16 +1,15 @@
# Contributor: Marvin Preuss <marvin@xsteadfastx.org>
# Maintainer: Marvin Preuss <marvin@xsteadfastx.org>
pkgname=bitlbee-facebook
-pkgver=1.2.1
+pkgver=1.2.2
pkgrel=0
pkgdesc="Facebook protocol plugin for BitlBee"
-url="https://github.com/jgeboski/bitlbee-facebook"
+url="https://github.com/bitlbee/bitlbee-facebook"
arch="all"
license="GPL-2.0-or-later"
depends="bitlbee"
makedepends="bitlbee-dev autoconf automake libtool json-glib-dev"
-source="https://github.com/jgeboski/bitlbee-facebook/releases/download/v$pkgver/bitlbee-facebook-$pkgver.tar.gz"
-
+source="https://github.com/bitlbee/bitlbee-facebook/releases/download/v$pkgver/bitlbee-facebook-$pkgver.tar.gz"
prepare() {
default_prepare
@@ -26,4 +25,6 @@ package() {
make DESTDIR="$pkgdir" install
}
-sha512sums="2df709c6caf9ef55807e3d5ff11e6960c75e5bf4788824221a250c75048b77cb1cf57bb3462c2815f34d704c130e3435ba8463177ab2dc5af401cbaef7e5a077 bitlbee-facebook-1.2.1.tar.gz"
+sha512sums="
+801524a4a092175d995c5b14c3687fb0ac0d3b2dbaa6b7140bc026fdbb1232831f095204b3ce9810f0c48e5ade931f5cd6125ddc7c0d58990179fb94779d2b2a bitlbee-facebook-1.2.2.tar.gz
+"
diff --git a/testing/bitlbee-mastodon/APKBUILD b/testing/bitlbee-mastodon/APKBUILD
index 20ba1d5ab5c..8b372e07d9e 100644
--- a/testing/bitlbee-mastodon/APKBUILD
+++ b/testing/bitlbee-mastodon/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Marvin Preuss <marvin@xsteadfastx.org>
# Maintainer: Marvin Preuss <marvin@xsteadfastx.org>
pkgname=bitlbee-mastodon
-pkgver=1.4.4
+pkgver=1.4.5
pkgrel=0
pkgdesc="Mastodon plugin for Bitlbee"
url="https://alexschroeder.ch/cgit/bitlbee-mastodon"
@@ -24,4 +24,6 @@ build() {
package() {
make DESTDIR="$pkgdir" install
}
-sha512sums="b5a84cd6b716f94f67f7780dfe9f1ea7c9de2469322185199814ef5acab75b1f1b95389c614e37e012edfbe4ecabb347e5a308f14e2496542cbbdd1d46b46065 bitlbee-mastodon-1.4.4.tar.gz"
+sha512sums="
+19a83e17afe3ac3c0b4d7ac87b30521e5fe54ea1f498e55373156112abac12ed4c84a80023c4be0c31f9b668325e89ec03906d90d91379a3a9874a608ce41307 bitlbee-mastodon-1.4.5.tar.gz
+"
diff --git a/testing/bitritter/APKBUILD b/testing/bitritter/APKBUILD
new file mode 100644
index 00000000000..c991f065456
--- /dev/null
+++ b/testing/bitritter/APKBUILD
@@ -0,0 +1,53 @@
+# Contributor: Clayton Craft <clayton@craftyguy.net>
+# Maintainer:
+pkgname=bitritter
+pkgver=0_git20240328
+pkgrel=0
+_commit="b8c1c0c952fb53f174be745de0c6cbfa14f14883"
+pkgdesc="GTK-based bitwarden client"
+url="https://codeberg.org/Chfkch/bitritter"
+arch="all !s390x" # 'nix' crate fails to compile
+license="MIT"
+makedepends="
+ cargo
+ cargo-auditable
+ glib-dev
+ graphene-dev
+ gtk4.0-dev
+ libadwaita-dev
+ openssl-dev
+"
+source="
+ $pkgname-$_commit.tar.gz::https://codeberg.org/Chfkch/bitritter/archive/$_commit.tar.gz
+ bitritter.desktop
+ "
+builddir="$srcdir/$pkgname"
+
+export PKG_CONFIG_PATH=/usr/lib/pkgconfig
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ glib_sys_NO_PKG_CONFIG=1 \
+ cargo auditable build --frozen --release
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm755 target/release/bitritter \
+ -t "$pkgdir"/usr/bin/
+ install -Dm644 "$srcdir"/bitritter.desktop \
+ -t "$pkgdir"/usr/share/applications/
+}
+
+sha512sums="
+845320c957f0a49f980b291f59a6ced554acca07a55adf8075fecdb8aa3ab3ce99d1b5b9a3598820cf0bdbf9dfce620ef3d0622432781d060206565c542e9b1d bitritter-b8c1c0c952fb53f174be745de0c6cbfa14f14883.tar.gz
+03b31377d37edbaa3cb2447e02caea0ecaad4a0b78b9adb61d0c218af1be5472090b6cc3a8139ddd40a82bc75e826900033ea4225277cdd0f0f77c34543500be bitritter.desktop
+"
diff --git a/testing/bitritter/bitritter.desktop b/testing/bitritter/bitritter.desktop
new file mode 100644
index 00000000000..822f7b1461c
--- /dev/null
+++ b/testing/bitritter/bitritter.desktop
@@ -0,0 +1,12 @@
+[Desktop Entry]
+Name=Bitritter
+GenericName=Password Manager
+Comment=BitWarden-compatible client
+TryExec=bitritter
+Exec=bitritter %u
+# Icon=
+Terminal=false
+Type=Application
+Categories=Utility;
+StartupNotify=false
+StartupWMClass=Bitritter
diff --git a/testing/bitrot/APKBUILD b/testing/bitrot/APKBUILD
deleted file mode 100644
index b17acbb6652..00000000000
--- a/testing/bitrot/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Contributor: psykose <alice@ayaya.dev>
-# Maintainer: psykose <alice@ayaya.dev>
-pkgname=bitrot
-pkgver=0_git20210222
-_commit=70534bce27dbbe4bb3d526877eca56f81538c827
-_dpf=74aec5b6a2350805edd6ad7344a79966eb467fa9
-pkgrel=0
-pkgdesc="Audio effect plugins for glitch effects"
-options="!check" # no tests
-url="https://github.com/grejppi/bitrot"
-arch="all"
-license="Apache-2.0"
-makedepends="waf"
-source="$pkgname-$_commit.tar.gz::https://github.com/grejppi/bitrot/archive/$_commit.tar.gz
- DPF-$_dpf.tar.gz::https://github.com/grejppi/DPF/archive/$_dpf.tar.gz
- "
-builddir="$srcdir/bitrot-$_commit"
-
-prepare() {
- default_prepare
- mv "$srcdir"/DPF-$_dpf/* "$builddir"/DPF
-}
-
-build() {
- python3 waf configure --prefix=/usr
- python3 waf build
-}
-
-package() {
- python3 waf install --destdir="$pkgdir"
-}
-
-sha512sums="
-27af37ec397c92a9f095ba20ec8cb4b7d140e27a646c4209063f195d33a36694fc2cee8b87a6cad1940d1c247207e25edc3d9001bb003edb09ed834d348c5a81 bitrot-70534bce27dbbe4bb3d526877eca56f81538c827.tar.gz
-42f7b168e7d54e6683c7d55b9749102eca14a79c3256b8f12f00b2977d9c8dc000cd0ab07a47dc9ebe2518d54d3c2bb63e7f50107a65f11636e707883bc15a83 DPF-74aec5b6a2350805edd6ad7344a79966eb467fa9.tar.gz
-"
diff --git a/testing/blackbox/APKBUILD b/testing/blackbox/APKBUILD
index 5b6c34c2073..c56fbb7633d 100644
--- a/testing/blackbox/APKBUILD
+++ b/testing/blackbox/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Galen Abell <galen@galenabell.com>
# Maintainer: Galen Abell <galen@galenabell.com>
pkgname=blackbox
-pkgver=1.20200429
+pkgver=1.20220610
pkgrel=0
pkgdesc="Safely store secrets in Git/Mercurial/Subversion"
url="https://github.com/StackExchange/blackbox"
@@ -17,4 +17,6 @@ package() {
make PREFIX="$pkgdir" copy-install
}
-sha512sums="afa8fec6abbaf3485f4df15993c8eb5e2903c8d1a1fe427b9362c89d49ef68c474d226cfa899a80d12fd8b8d570349a09d8a61bfc4b5559ab4ae3d836780175f blackbox-1.20200429.tar.gz"
+sha512sums="
+db45d7874e5a1e62e8a078eca8c3fed8fae895ee979e516bd900374c5a39808f4dec39a637ae870bbf37bb4d05fe0b469decdc163000b0f49b87e094a4eab62c blackbox-1.20220610.tar.gz
+"
diff --git a/testing/blackbox_exporter/APKBUILD b/testing/blackbox_exporter/APKBUILD
deleted file mode 100644
index f7dd8f43659..00000000000
--- a/testing/blackbox_exporter/APKBUILD
+++ /dev/null
@@ -1,50 +0,0 @@
-# Maintainer: ungleich <alpinelinux@ungleich.ch>
-pkgname=blackbox_exporter
-pkgver=0.19.0
-pkgrel=5
-pkgdesc="Prometheus Blackbox Exporter"
-url="https://github.com/prometheus/blackbox_exporter"
-license="Apache-2.0"
-arch="all"
-install="$pkgname.pre-install"
-makedepends="go"
-source="
- $pkgname-$pkgver.tar.gz::https://github.com/prometheus/blackbox_exporter/archive/v$pkgver.tar.gz
- blackbox_exporter.confd
- blackbox_exporter.initd
- blackbox.yml
-"
-subpackages="$pkgname-openrc"
-
-# secfixes:
-# 0.18.0-r0:
-# - CVE-2020-16248
-
-build() {
- go build
-}
-
-check() {
- go test
-}
-
-package() {
- # dirs
- install -dm755 "$pkgdir"/etc/blackbox_exporter
-
- # init
- install -Dm755 blackbox_exporter \
- "$pkgdir"/usr/bin/blackbox_exporter
- install -Dm755 "$srcdir"/blackbox_exporter.initd \
- "$pkgdir"/etc/init.d/blackbox_exporter
- install -Dm644 "$srcdir"/blackbox_exporter.confd \
- "$pkgdir"/etc/conf.d/blackbox_exporter
-
- # config
- install -Dm644 blackbox.yml \
- "$pkgdir"/etc/blackbox_exporter/blackbox.yml
-}
-sha512sums="86b11bc7afa0d8261d0961ca21563047b1ea8bfd1a9d4d034c393a8b098b035147883a44011cdafca8e9795a5e9a043cc15235375990f3424137af63469a8878 blackbox_exporter-0.19.0.tar.gz
-e850f8414af33333619946d9163169411a8b5c27dc3611cc27a0c3185748feab3fa31a02ba00d421be9ea16fd2eb2d6395b1438b6d0b0f088eecf93010866d9b blackbox_exporter.confd
-6301661eb0b0bc4e137a268e703959d907bfa6220e3520a60f6c9662335033fdaf477add8e1a0fbc9593580e90fe6ec86fe340c7cbe6c082ec65eb70d883867a blackbox_exporter.initd
-60e9e8d44f807fcb71b01c29abac8cc833e43b7991185624414d049e05f484f8f8026f0290ce8f84a594f5f6363bcd4ef986de20b221f4b0e828ca811deb6e7f blackbox.yml"
diff --git a/testing/blackbox_exporter/blackbox.yml b/testing/blackbox_exporter/blackbox.yml
deleted file mode 100644
index a7f58cb1df2..00000000000
--- a/testing/blackbox_exporter/blackbox.yml
+++ /dev/null
@@ -1,33 +0,0 @@
-modules:
- http_2xx:
- prober: http
- http_post_2xx:
- prober: http
- http:
- method: POST
- tcp_connect:
- prober: tcp
- pop3s_banner:
- prober: tcp
- tcp:
- query_response:
- - expect: "^+OK"
- tls: true
- tls_config:
- insecure_skip_verify: false
- ssh_banner:
- prober: tcp
- tcp:
- query_response:
- - expect: "^SSH-2.0-"
- irc_banner:
- prober: tcp
- tcp:
- query_response:
- - send: "NICK prober"
- - send: "USER prober prober prober :prober"
- - expect: "PING :([^ ]+)"
- send: "PONG ${1}"
- - expect: "^:[^ ]+ 001"
- icmp:
- prober: icmp
diff --git a/testing/blackbox_exporter/blackbox_exporter.confd b/testing/blackbox_exporter/blackbox_exporter.confd
deleted file mode 100644
index 58d8045fb10..00000000000
--- a/testing/blackbox_exporter/blackbox_exporter.confd
+++ /dev/null
@@ -1,6 +0,0 @@
-blackbox_exporter_args=
-blackbox_exporter_config_file=/etc/blackbox_exporter/blackbox.yml
-
-
-output_log=/var/log/blackbox_exporter.log
-error_log=/var/log/blackbox_exporter.log
diff --git a/testing/blackbox_exporter/blackbox_exporter.initd b/testing/blackbox_exporter/blackbox_exporter.initd
deleted file mode 100644
index a4201378693..00000000000
--- a/testing/blackbox_exporter/blackbox_exporter.initd
+++ /dev/null
@@ -1,16 +0,0 @@
-#!/sbin/openrc-run
-
-name="blackbox_exporter"
-description="blackbox exporter for the prometheus monitoring system"
-supervisor=supervise-daemon
-command=/usr/bin/blackbox_exporter
-command_args="--config.file=$blackbox_exporter_config_file \
- $blackbox_exporter_args"
-command_user="prometheus:prometheus"
-
-start_pre() {
- [ -n "$output_log" ] && checkpath -f "$output_log" \
- -m 644 -o prometheus:prometheus
- [ -n "$error_log" ] && checkpath -f "$error_log" \
- -m 644 -o prometheus:prometheus
-}
diff --git a/testing/bliss/APKBUILD b/testing/bliss/APKBUILD
new file mode 100644
index 00000000000..1355fe88f5c
--- /dev/null
+++ b/testing/bliss/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
+pkgname=bliss
+pkgver=0.77
+pkgrel=1
+pkgdesc="Tool for computing automorphism groups and canonical labelings of graphs"
+url="https://users.aalto.fi/~tjunttil/bliss"
+arch="all"
+license="LGPL-3.0-only"
+makedepends="cmake samurai"
+source="https://archive.org/download/bliss-$pkgver.tar.gz/bliss-$pkgver.tar.gz"
+subpackages="$pkgname-dev"
+builddir="$srcdir/Bliss-$pkgver"
+
+build() {
+ cmake -G Ninja -B builddir \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DCMAKE_INSTALL_PREFIX=/usr
+ cmake --build builddir
+}
+
+check() {
+ ./builddir/bliss -version
+}
+
+package() {
+ install -Dm755 builddir/bliss "$pkgdir"/usr/bin/bliss
+ install -Dm755 builddir/libbliss.a "$pkgdir"/usr/lib/libbliss.a
+ for file in include/bliss/*; do
+ install -Dm644 "$file" "$pkgdir"/usr/"$file"
+ done
+}
+
+sha512sums="
+27bd44695f2c1f3dfcb2f39f75fea3f61db29dfde4bef545bd14017830cd3d399b2e448ae7a703a5886bd433b22f6eddfaa99618c8714340d366d8e387ae6583 bliss-0.77.tar.gz
+"
diff --git a/testing/blocky/APKBUILD b/testing/blocky/APKBUILD
deleted file mode 100644
index d616aa84cda..00000000000
--- a/testing/blocky/APKBUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-# Contributor: Justin Berthault <justin.berthault@zaclys.net>
-# Maintainer: Justin Berthault <justin.berthault@zaclys.net>
-pkgname=blocky
-pkgver=0.18
-pkgrel=1
-pkgdesc="DNS proxy as ad-blocker for local network"
-url="https://github.com/0xERR0R/blocky"
-license="Apache-2.0"
-arch="all"
-options="net"
-makedepends="go"
-source="$pkgname-$pkgver.tar.gz::https://github.com/0xERR0R/blocky/archive/v$pkgver.tar.gz"
-
-build() {
- make VERSION=$pkgver build
-}
-
-check() {
- make test
-}
-
-package() {
- install -Dm755 "bin/$pkgname" "$pkgdir/usr/bin/$pkgname"
-
- # blocky will not start if its log directory is missing
- mkdir -p "$pkgdir"/var/log/blocky
-
-}
-
-sha512sums="
-f87fefc17ffaded127f1fdca887c7c71d99ffd968218945e330d66950480a7f641d00fa5c1c3d07190ac949ca910e7924aad778c3b81ae4f42558c4aa15e127d blocky-0.18.tar.gz
-"
diff --git a/testing/bm818-tools/APKBUILD b/testing/bm818-tools/APKBUILD
new file mode 100644
index 00000000000..df9d7c5dbb6
--- /dev/null
+++ b/testing/bm818-tools/APKBUILD
@@ -0,0 +1,47 @@
+# Maintainer: Alistair Francis <alistair@alistair23.me>
+pkgname=bm818-tools
+pkgver=0.7
+pkgrel=0
+pkgdesc="Free tools for use with the BM818 modem"
+url="https://source.puri.sm/Librem5/bm818-tools"
+arch="all"
+license="GPL-3.0-or-later"
+depends="
+ ppp
+ python3
+ py3-pyserial
+ py3-udev
+ "
+
+source="
+ https://source.puri.sm/Librem5/bm818-tools/-/archive/v$pkgver/bm818-tools-v$pkgver.tar.gz
+"
+options="!check" # no test suite
+builddir="$srcdir/bm818-tools-v$pkgver"
+
+package() {
+ install -D -m755 "usr/bin/bm818-fw-check" "$pkgdir/usr/bin/bm818-fw-check"
+ install -D -m755 "usr/bin/bm818-tool" "$pkgdir/usr/bin/bm818-tool"
+ install -D -m755 "usr/bin/bm818-volte" "$pkgdir/usr/bin/bm818-volte"
+ install -D -m755 "usr/bin/bm818-volte-check" "$pkgdir/usr/bin/bm818-volte-check"
+
+ for f in usr/share/bm818-tools/*; do
+ install -D -t "$pkgdir/usr/share/bm818-tools/" $f;
+ done
+
+ # Copy the glade file for the GUI
+ #
+ # We don't install the desktop file (usr/share/applications/bm818-tool.desktop)
+ # as by default the user won't have permissions to run the GUI. To access the
+ # modem you need to be root or the user needs to be a member of the dialout group.
+ #
+ # We don't want to add the user to the dialout group just to run this GUI, instead
+ # let's just expect the user to run the scripts or GUI from the terminal as
+ # root (or add themselves to dialout).
+ # See: https://source.puri.sm/Librem5/bm818-tools/-/issues/5
+ install -D -m755 "data/bm818-tool.glade" "$pkgdir/usr/share/bm818-tools/bm818-tool.glade"
+}
+
+sha512sums="
+1c3ff524e68271189da6d2cd0413d64acf6f3b5e0ce2c05d97e537aadc7dd82615597b51985ee23f790a51e4261e20480988133fb481dc0b042bc968e7ce6849 bm818-tools-v0.7.tar.gz
+"
diff --git a/testing/bmkdep/APKBUILD b/testing/bmkdep/APKBUILD
deleted file mode 100644
index 587ec589afa..00000000000
--- a/testing/bmkdep/APKBUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-# Contributor: David Demelier <markand@malikania.fr>
-# Maintainer: David Demelier <markand@malikania.fr>
-pkgname=bmkdep
-pkgver=20140112
-pkgrel=0
-pkgdesc="Construct Makefile dependency list"
-url="https://github.com/trociny/bmkdep"
-arch="all"
-license="BSD-2-Clause"
-makedepends="bmake groff"
-subpackages="$pkgname-doc"
-source="https://github.com/trociny/bmkdep/archive/bmkdep-$pkgver.tar.gz"
-options="!check" # No tests.
-builddir="$srcdir/$pkgname-$pkgname-$pkgver"
-
-prepare() {
- default_prepare
-
- # Program is named bmkdep, update manual page for clarification.
- sed -i -e "s/mkdep/bmkdep/g;s/MKDEP/BMKDEP/g;" bmkdep.1
-}
-
-build() {
- bmake
-
-}
-
-package() {
- bmake install DESTDIR="$pkgdir" MANTARGET=man MANDIR=/usr/share/man PREFIX=/usr
-}
-
-sha512sums="c071adeab94907c4a8cb3d8d8fa8fcfb1f93c37c50ec2801dea530e391b9d6117a7c808fdfda6b9d2505535d2ece5d113639fd3f4d0256f58e9748a8a9f3dc9e bmkdep-20140112.tar.gz"
diff --git a/testing/boa-cli/APKBUILD b/testing/boa-cli/APKBUILD
new file mode 100644
index 00000000000..fa3a8f589c4
--- /dev/null
+++ b/testing/boa-cli/APKBUILD
@@ -0,0 +1,38 @@
+# Contributor: lauren n. liberda <lauren@selfisekai.rocks>
+# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
+pkgname=boa-cli
+pkgver=0.18
+pkgrel=0
+pkgdesc="Embeddable and experimental Javascript engine written in Rust"
+url="https://github.com/boa-dev/boa/"
+# 32-bit: failing tests
+# ppc64le: corosensei crate
+# s390x: nix crate
+arch="all !armhf !armv7 !x86 !ppc64le !s390x"
+license="MIT OR Unlicense"
+makedepends="cargo cargo-auditable"
+checkdepends="openssl-dev"
+source="https://github.com/boa-dev/boa/archive/refs/tags/v$pkgver/boa-$pkgver.tar.gz"
+builddir="$srcdir/boa-$pkgver"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --package boa_cli --release --frozen --bin boa
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm755 target/release/boa "$pkgdir"/usr/bin/boa
+}
+
+sha512sums="
+a7b61f22b7081d55316a9260da7adc740033de2258c441ce599ba082ae07d1712e51de8f575bd997b6b367bc7d0655839cfc16b0014a56283ff9de3a40c0fb12 boa-0.18.tar.gz
+"
diff --git a/testing/bobcat/APKBUILD b/testing/bobcat/APKBUILD
index fe5a983fec1..2ba94720185 100644
--- a/testing/bobcat/APKBUILD
+++ b/testing/bobcat/APKBUILD
@@ -1,17 +1,17 @@
# Contributor: Shiz <hi@shiz.me>
# Maintainer: Shiz <hi@shiz.me>
pkgname=bobcat
-pkgver=4.08.01
+pkgver=4.09.00
pkgrel=0
pkgdesc="Brokken's Own Base Classes And Templates"
-url="https://fbb-git.github.io/bobcat/"
+url="https://gitlab.com/fbb-git/bobcat"
arch="all"
license="GPL-2.0-or-later"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="icmake bash yodl"
subpackages="$pkgname-doc $pkgname-dev"
options="!check" # no tests provided by upstream.
-source="bobcat-$pkgver.tar.gz::https://github.com/fbb-git/bobcat/archive/$pkgver.tar.gz
+source="bobcat-$pkgver.tar.gz::https://gitlab.com/fbb-git/bobcat/-/archive/$pkgver/bobcat-$pkgver.tar.gz
dont-use-reserved-name-for-page-size.patch
avoid-gnuisms.patch
avoid-strerror_r.patch
@@ -34,7 +34,9 @@ package() {
./build install hlm "$pkgdir"
}
-sha512sums="8752392e6feb0f3caf119ebf58423dc4cb24f0cd9f421e58ba14648baf8603235bfb44c24d5ea1ecee78a52620fe3ad2936091ec47b0de924c4af00ebc8b16f1 bobcat-4.08.01.tar.gz
+sha512sums="
+03357d7b6dc00d7f41a59775703e42474b07ef121a4187270b439b8e23ddd0f1e43d1fba5fa27839cc2426cb01fd800c42f1da931280331dcc29b4cc8d64f816 bobcat-4.09.00.tar.gz
6521da77c2452fb2c4b209c24e5dae04650636224efe5e75e2f2e64ab1c6457392ad4cdc4afbe79526734c8211488b2dc5915210ee7af646e7d0af04579cd484 dont-use-reserved-name-for-page-size.patch
24eb74e7dab68cb70f89459228f0f302a5214f8d45bc31e38a8d608edfa97cfe61710212fface32fc480fc4ef2fb23bbca7ed806dd40330e6da69774b3d1965d avoid-gnuisms.patch
-1129bb0666f6809ab2cca60bb164f4c557be7d27db84e41712643ee5027b8c7b62bc82e8f1c5fa9a1e737e487fe58f163afd6687d94fbacb9a23ad7818851cf0 avoid-strerror_r.patch"
+1129bb0666f6809ab2cca60bb164f4c557be7d27db84e41712643ee5027b8c7b62bc82e8f1c5fa9a1e737e487fe58f163afd6687d94fbacb9a23ad7818851cf0 avoid-strerror_r.patch
+"
diff --git a/testing/boinc/APKBUILD b/testing/boinc/APKBUILD
index 811b1463b3a..f7dc23e2879 100644
--- a/testing/boinc/APKBUILD
+++ b/testing/boinc/APKBUILD
@@ -2,23 +2,47 @@
# Contributor: knuxify <knuxify@gmail.com>
# Maintainer: Joe Searle <joe@jsearle.net>
pkgname=boinc
-pkgver=7.16.19
+pkgver=7.24.3
_pkgver=${pkgver%.*}
pkgrel=0
-pkgdesc="Open-source software for volunteer computing and grid computing."
+pkgdesc="Open-source software for volunteer computing and grid computing"
url="https://boinc.berkeley.edu/"
arch="all !riscv64"
options="!check" # nothing is actually done by make check
license="LGPL-3.0-or-later"
depends="bash procps shadow"
-makedepends="$depends_dev automake autoconf clang curl-dev docbook2x
- freeglut-dev glu-dev libjpeg-turbo-dev libnotify-dev openssl1.1-compat-dev
- libtool libxi-dev libxmu-dev libxscrnsaver-dev m4 mesa-dev pkgconf
- sqlite-dev wxgtk-dev"
+makedepends="
+ $depends_dev
+ autoconf
+ automake
+ clang
+ curl-dev
+ docbook2x
+ freeglut-dev
+ glu-dev
+ libjpeg-turbo-dev
+ libnotify-dev
+ libtool
+ libxi-dev
+ libxmu-dev
+ libxscrnsaver-dev
+ m4
+ mesa-dev
+ openssl-dev>3
+ sqlite-dev
+ wxwidgets-dev
+ "
install="$pkgname.pre-install"
pkgusers="boinc"
pkggroups="boinc"
-subpackages="$pkgname-doc $pkgname-dev $pkgname-gui $pkgname-lang $pkgname-libs $pkgname-openrc $pkgname-screensaver"
+subpackages="
+ $pkgname-doc
+ $pkgname-dev
+ $pkgname-gui
+ $pkgname-lang
+ $pkgname-libs
+ $pkgname-screensaver
+ "
source="boinc-$pkgver.tar.gz::https://github.com/BOINC/boinc/archive/client_release/$_pkgver/$pkgver.tar.gz"
builddir="$srcdir/$pkgname-client_release-$_pkgver-$pkgver"
@@ -26,6 +50,9 @@ build() {
# GCC fails on non-x86 architectures
export CC=clang
export CXX=clang++
+ # a bunch of failures in vendored ancient libzip that is patched..
+ export CFLAGS="$CFLAGS -O2 -Wno-error=format-security"
+ export CXXFLAGS="$CXXFLAGS -O2 -Wno-error=format-security"
./_autosetup
@@ -55,40 +82,18 @@ package() {
make DESTDIR="$pkgdir" install
}
-_cleanup_empty_dirs() {
- local _dir
- _dir="${1:-"$pkgdir"}"
-
- find "$_dir" -mindepth 1 -depth -type d -exec rmdir --ignore-fail-on-non-empty '{}' +
-}
-
-libs() {
- default_libs
- depends="$depends_libs"
-
- _cleanup_empty_dirs
-}
-
gui() {
- depends="$depends_gui"
pkgdesc="$pkgdesc (manager)"
- mkdir -p "$subpkgdir/usr/bin"
- mv "$pkgdir/usr/bin/boincmgr" "$subpkgdir/usr/bin"
-
- _cleanup_empty_dirs
+ amove usr/bin/boincmgr
}
screensaver() {
- depends="$depends_screensaver"
pkgdesc="$pkgdesc (screensaver)"
- mkdir -p "$subpkgdir/usr/bin"
- mv "$pkgdir/usr/bin/boincscr" "$subpkgdir/usr/bin"
-
- _cleanup_empty_dirs
+ amove usr/bin/boincscr
}
sha512sums="
-ec5a93ce83706501242baa1b6b43e9bb817e544dc8b07407b212368170038e1a676f422f541985febc343c20e49499b303f76c289a8306a915968e7357d1f73d boinc-7.16.19.tar.gz
+d66664df49b83fb71e8f06e6f9ca0aee720ec04b1fb95b08426ee9af365403605624ba6dc1f78f3fba3f966d365b610ed24ceffdc54b071509f4f0bf959e027c boinc-7.24.3.tar.gz
"
diff --git a/testing/bombadillo/APKBUILD b/testing/bombadillo/APKBUILD
deleted file mode 100644
index 17c3c0d50cc..00000000000
--- a/testing/bombadillo/APKBUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-# Contributor: Maxim Karasev <begs@disroot.org>
-# Maintainer: Maxim Karasev <begs@disroot.org>
-pkgname=bombadillo
-pkgver=2.4.0
-pkgrel=3
-pkgdesc="Non-web (gopher, gemini, finger) browser for the terminal"
-url="https://bombadillo.colorfield.space/"
-license="GPL-3.0-or-later"
-arch="all"
-makedepends="go"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://tildegit.org/sloum/bombadillo/archive/$pkgver.tar.gz"
-builddir="$srcdir/bombadillo"
-
-export GOPATH="$srcdir"
-export GOFLAGS="$GOFLAGS -trimpath -modcacherw"
-
-build() {
- make build
-}
-
-check() {
- go test ./...
-}
-
-package() {
- make DESTDIR="$pkgdir" PREFIX=/usr install
-}
-
-sha512sums="
-ce9ac62e2d57d98c6acca35b0a054a7920ad2ea8fa315b11c881057d30022f3417cf8132cfd1e6038410ca8aef9d430eb946ed803b62a4a52d2ac64f71dd3a1a bombadillo-2.4.0.tar.gz
-"
diff --git a/testing/bonzomatic/APKBUILD b/testing/bonzomatic/APKBUILD
index 87e81c87729..793f80c418f 100644
--- a/testing/bonzomatic/APKBUILD
+++ b/testing/bonzomatic/APKBUILD
@@ -1,16 +1,26 @@
# Maintainer: Ariadne Conill <ariadne@dereferenced.org>
pkgname=bonzomatic
-_datever=2020-05-09
+_datever=2023-06-15
pkgver=${_datever//-/}
pkgrel=0
pkgdesc="OpenGL shader livecoding toy"
url="https://github.com/Gargaj/Bonzomatic"
arch="all"
license="Unlicense"
-depends=""
-makedepends="cmake fontconfig-dev mesa-dev alsa-lib-dev libxrandr-dev libxinerama-dev libxcursor-dev glu-dev libxi-dev"
-install=""
-subpackages=""
+makedepends="
+ alsa-lib-dev
+ cmake
+ fontconfig-dev
+ glew-dev
+ glfw-dev
+ glu-dev
+ libxcursor-dev
+ libxi-dev
+ libxinerama-dev
+ libxrandr-dev
+ mesa-dev
+ samurai
+ "
source="https://github.com/Gargaj/Bonzomatic/archive/$_datever/bonzomatic-$_datever.tar.gz"
builddir="$srcdir/Bonzomatic-$_datever"
options="!check" # no test suite
@@ -19,17 +29,20 @@ build() {
if [ "$CBUILD" != "$CHOST" ]; then
CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
fi
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- -DCMAKE_BUILD_TYPE=None \
- ${CMAKE_CROSSOPTS} .
- make -C build
+ -DCMAKE_BUILD_TYPE=MinSizeRel \
+ $CMAKE_CROSSOPTS
+ # broken
+ # -DBONZOMATIC_USE_SYSTEM_GLFW=ON \
+ # -DBONZOMATIC_USE_SYSTEM_GLEW=ON \
+ cmake --build build
}
package() {
- make -C build DESTDIR="$pkgdir" install
+ DESTDIR="$pkgdir" cmake --install build
}
-sha512sums="550d2cb1a4c135824782b0f9577f51b62f940f0c915a55861c241bd2937d91c2233c4ce5e4563e8d8a63237bc3b5e1273e738a912ee8ab1d5f62ad7bbdac5c33 bonzomatic-2020-05-09.tar.gz"
+sha512sums="
+60651dc16ce9c38e117a7530dbf17452dbcc50f2fa067b99a4c732c692e1b9b377da489135227c9d0492d9fe38e445a39d459f1f6567043054fdbc1646f85c1f bonzomatic-2023-06-15.tar.gz
+"
diff --git a/testing/booster/0001-Load-efivarfs-before-mounting-the-filesystem.patch b/testing/booster/0001-Load-efivarfs-before-mounting-the-filesystem.patch
deleted file mode 100644
index 1f0cdced9d0..00000000000
--- a/testing/booster/0001-Load-efivarfs-before-mounting-the-filesystem.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-From 11048294f07bee1d462d8ab58a52de4eb64d33e8 Mon Sep 17 00:00:00 2001
-From: Anatol Pomozov <anatol.pomozov@gmail.com>
-Date: Fri, 6 May 2022 19:14:38 -0700
-Subject: [PATCH] Load 'efivarfs' before mounting the filesystem
-
-Move readConfig() earlier as loadModule needs the list of builtin
-modules from the config.
-
-Issue #149
----
- generator/generator.go | 1 +
- init/main.go | 13 +++++++++----
- 2 files changed, 10 insertions(+), 4 deletions(-)
-
-diff --git a/generator/generator.go b/generator/generator.go
-index f21da7e..b2e2c79 100644
---- a/generator/generator.go
-+++ b/generator/generator.go
-@@ -81,6 +81,7 @@ var defaultModulesList = []string{
- "hid_generic", "sd_mod", "ahci",
- "sdhci", "sdhci_acpi", "sdhci_pci", "mmc_block", // mmc
- "nvme", "usb_storage", "uas",
-+ "efivarfs",
- "virtio_pci", "virtio_blk", "virtio_scsi", "virtio_crypto",
- }
-
-diff --git a/init/main.go b/init/main.go
-index ebd5cd9..2c6dbd0 100644
---- a/init/main.go
-+++ b/init/main.go
-@@ -663,6 +663,10 @@ func walkSysModaliases(path string, fi os.FileInfo, err error) error {
- func boost() error {
- info("Starting booster initramfs")
-
-+ if err := readConfig(); err != nil {
-+ return err
-+ }
-+
- var err error
- if err := mount("dev", "/dev", "devtmpfs", unix.MS_NOSUID, "mode=0755"); err != nil {
- return err
-@@ -684,6 +688,11 @@ func boost() error {
-
- // Mount efivarfs if running in EFI mode
- if _, err := os.Stat("/sys/firmware/efi"); !errors.Is(err, os.ErrNotExist) {
-+ wg, err := loadModules("efivarfs")
-+ if err != nil {
-+ return err
-+ }
-+ wg.Wait()
- if err := mount("efivarfs", "/sys/firmware/efi/efivars", "efivarfs", unix.MS_NOSUID|unix.MS_NOEXEC|unix.MS_NODEV, ""); err != nil {
- return err
- }
-@@ -693,10 +702,6 @@ func boost() error {
- return err
- }
-
-- if err := readConfig(); err != nil {
-- return err
-- }
--
- kernelVersion, err := getKernelVersion()
- if err != nil {
- return err
diff --git a/testing/booster/0002-generator-add-drivers-ata-to-the-list-of-default-mod.patch b/testing/booster/0002-generator-add-drivers-ata-to-the-list-of-default-mod.patch
deleted file mode 100644
index d3acbfd5395..00000000000
--- a/testing/booster/0002-generator-add-drivers-ata-to-the-list-of-default-mod.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-From d50adddf55c2ea6712f37d610a343cb784c82eec Mon Sep 17 00:00:00 2001
-From: Anatol Pomozov <anatol.pomozov@gmail.com>
-Date: Mon, 9 May 2022 20:35:08 -0700
-Subject: [PATCH] generator: add drivers/ata to the list of default modules
-
-Issue: #149
----
- generator/generator.go | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/generator/generator.go b/generator/generator.go
-index b2e2c79..fdd92be 100644
---- a/generator/generator.go
-+++ b/generator/generator.go
-@@ -78,6 +78,7 @@ var defaultModulesList = []string{
- "kernel/drivers/char/tpm/",
- "kernel/drivers/usb/host/",
- "kernel/drivers/hid/",
-+ "kernel/drivers/ata/",
- "hid_generic", "sd_mod", "ahci",
- "sdhci", "sdhci_acpi", "sdhci_pci", "mmc_block", // mmc
- "nvme", "usb_storage", "uas",
diff --git a/testing/booster/APKBUILD b/testing/booster/APKBUILD
deleted file mode 100644
index 3b655bfc2e4..00000000000
--- a/testing/booster/APKBUILD
+++ /dev/null
@@ -1,59 +0,0 @@
-# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
-# Maintainer: Sören Tempel <soeren+alpine@soeren-tempel.net>
-pkgname=booster
-pkgver=0.8
-pkgrel=2
-pkgdesc="Fast and secure initramfs generator"
-url="https://github.com/anatol/booster"
-arch="all"
-license="MIT"
-makedepends="go ronn"
-# kbd: needed for vconsole feature
-depends="kbd"
-options="net !check" # TODO: enable check
-subpackages="$pkgname-doc"
-triggers="$pkgname.trigger=/usr/share/kernel/*"
-source="https://github.com/anatol/booster/archive/refs/tags/$pkgver/booster-$pkgver.tar.gz
- README.alpine
- booster.yaml
- fix-paths.patch
-
- 0001-Load-efivarfs-before-mounting-the-filesystem.patch
- 0002-generator-add-drivers-ata-to-the-list-of-default-mod.patch"
-
-# TODO: Provide mkinitfs to allow removing mkinitfs when using booster
-# TODO: Enable check
-
-export GOPATH="$srcdir"
-export GOFLAGS="$GOFLAGS -trimpath -modcacherw"
-
-build() {
- cd "$builddir"/generator
- go build
-
- # Build the init itself without CGO and in default buildmode.
- # Otherwise, we always need musl in the ramdisk.
- cd "$builddir"/init
- CGO_ENABLED=0 go build -buildmode=default
-
- cd "$builddir"/docs
- ronn manpage.md
-}
-
-package() {
- install -Dm644 "$srcdir"/booster.yaml "$pkgdir"/etc/booster.yaml
- install -Dm644 "$srcdir"/README.alpine "$pkgdir"/usr/share/doc/$pkgname/README.alpine
- install -Dm644 docs/manpage.1 "$pkgdir"/usr/share/man/man1/booster.1
-
- install -Dm755 generator/generator "$pkgdir"/usr/bin/booster
- install -Dm755 init/init "$pkgdir"/usr/lib/booster/init
-}
-
-sha512sums="
-5a7a1dfe91f153bd448d553f20a6c6b5d4f840263602141445cf13612fc0e53c0ecd7ee1f7b3d2aaa070d5ba84375833f1a2028d4b997d23181fb40dcedc4316 booster-0.8.tar.gz
-d468a858698de78b0433b2a416d327a9971acbb7652d77f27d3b05886ddd60e8bcd978101cbdf4f3878a7c795ed9e1a5dd6caab0879ca2e2ceea7fa28e9b3580 README.alpine
-a3e68264c41e06d68d255ec6d5ed918f837225cbd65b3850212b06aa2c2a7ba33bf022576561a3813f80e5031a3e1e3a9aa42945a4342c998e31f1089dea5687 booster.yaml
-900dca9d6f0b9546dc6f7043bf5f7cf87757782f4969a8da32f714f220bcb868d8b65e06957073081d47f181b1b1a8afca84560349dfb1f581dff4ccc9ed2ab3 fix-paths.patch
-d3b7eb9e18f916022a6e382cbaece312384e8e1dc66f4aeb07f8e4ce2372b8959cbfefacf963a7483e4003f4262dd429219c671423f863c020fb48e408e6bb4b 0001-Load-efivarfs-before-mounting-the-filesystem.patch
-25e2474a75ab43a0f409b340f0984f3a5eafffd0708455d5311f8cf16f836140b72a0bbdb918f1a5728797892827057e2e4617ab633cd674168d70064c6d1c12 0002-generator-add-drivers-ata-to-the-list-of-default-mod.patch
-"
diff --git a/testing/booster/README.alpine b/testing/booster/README.alpine
deleted file mode 100644
index dfc0252786e..00000000000
--- a/testing/booster/README.alpine
+++ /dev/null
@@ -1,22 +0,0 @@
-Booster is an initramfs tool which can be used as an alternative to
-Alpine's default mkinitfs. The Alpine Booster package will automatically
-generate /boot/booster-$flavor analog to the /boot/initramfs-$flavor
-image generated by mkinitfs.
-
-When using extlinux, a bootloader entry for the generated Booster
-ramdisk image can be configured in /etc/update-extlinux.d/, e.g.:
-
- $ cat /etc/update-extlinux.d/booster
- LABEL booster
- MENU LABEL Linux lts (booster)
- LINUX vmlinuz-lts
- INITRD booster-lts
- APPEND root=/dev/sda3 rootfstype=ext4 quiet
-
-Additionally, Booster may need additional configuration depending on
-your setup. Refer to the booster manual page for more information. In
-both cases, after modifying the corresponding configuration files the
-package triggers (for booster and/or syslinux) need to be re-run, e.g.
-via apk fix.
-
-Presently, it is not possible to replace mkinitfs with booster entirely.
diff --git a/testing/booster/booster.trigger b/testing/booster/booster.trigger
deleted file mode 100644
index 443827d8683..00000000000
--- a/testing/booster/booster.trigger
+++ /dev/null
@@ -1,34 +0,0 @@
-#!/bin/sh
-# adapted from main/mkinitfs/mkinitfs.trigger
-
-for i in "$@"; do
- # get last element in path
- flavor=${i##*/}
- if ! [ -f "$i"/kernel.release ]; then
- # kernel was uninstalled
- rm -f $( readlink -f /boot/booster-$flavor ) \
- /boot/booster-$flavor /boot/vmlinuz-$flavor \
- /boot/$flavor /boot/$flavor.gz /$flavor /$flavor.gz
- continue
- fi
- read abi_release < "$i"/kernel.release
- initfs=booster-$flavor
- booster build --force --kernel-version $abi_release /boot/$initfs
-done
-
-# extlinux will use path relative partition, so if /boot is on a
-# separate partition we want /boot/<kernel> resolve to /<kernel>
-if ! [ -e /boot/boot ]; then
- ln -sf . /boot/boot 2>/dev/null # silence error in case of FAT
-fi
-
-# cleanup unused booster images
-for i in /boot/booster-[0-9]*; do
- [ -f $i ] || continue
- if ! [ -f /boot/vmlinuz-${i#/boot/booster-} ]; then
- rm "$i"
- fi
-done
-
-sync
-exit 0
diff --git a/testing/booster/booster.yaml b/testing/booster/booster.yaml
deleted file mode 100644
index 29cdeb85157..00000000000
--- a/testing/booster/booster.yaml
+++ /dev/null
@@ -1,8 +0,0 @@
-# default to gzip since that's what mkinitfs uses
-compression: gzip
-
-# timeout if mounting of fs fails within given timespan
-#mount_timeout: 30s
-
-# uncomment to enable emergency shell on error/timeout
-#extra_files: /bin/busybox
diff --git a/testing/booster/fix-paths.patch b/testing/booster/fix-paths.patch
deleted file mode 100644
index 26e945cb224..00000000000
--- a/testing/booster/fix-paths.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-diff -upr booster-0.8.orig/generator/console.go booster-0.8/generator/console.go
---- booster-0.8.orig/generator/console.go 2022-05-07 12:20:56.409041777 +0200
-+++ booster-0.8/generator/console.go 2022-05-07 12:21:37.659381243 +0200
-@@ -14,7 +14,7 @@ import (
- )
-
- // path to console fonts, adjust it to your distro (e.g. Fedora uses /usr/lib/kbd/consolefonts path for it)
--const consolefontsDir = "/usr/share/kbd/consolefonts/"
-+const consolefontsDir = "/usr/share/consolefonts/"
-
- func (img *Image) enableVirtualConsole(vConsolePath, localePath string) (*VirtualConsole, error) {
- debug("enabling virtual console")
-diff -upr booster-0.8.orig/generator/generator.go booster-0.8/generator/generator.go
---- booster-0.8.orig/generator/generator.go 2022-05-07 12:20:56.409041777 +0200
-+++ booster-0.8/generator/generator.go 2022-05-07 12:22:07.999630908 +0200
-@@ -59,8 +59,8 @@ const (
- )
-
- const (
-- imageModulesDir = "/usr/lib/modules/"
-- firmwareDir = "/usr/lib/firmware/"
-+ imageModulesDir = "/lib/modules/"
-+ firmwareDir = "/lib/firmware/"
- )
-
diff --git a/testing/bootinfo/APKBUILD b/testing/bootinfo/APKBUILD
new file mode 100644
index 00000000000..fb0363b8804
--- /dev/null
+++ b/testing/bootinfo/APKBUILD
@@ -0,0 +1,29 @@
+# Maintainer:
+pkgname=bootinfo
+pkgver=0.1.0
+pkgrel=3
+pkgdesc="Bootloader info for ARM devices"
+url="https://git.sr.ht/~martijnbraam/bootinfo"
+arch="noarch"
+license="GPL-3.0"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://git.sr.ht/~martijnbraam/bootinfo/archive/$pkgver.tar.gz"
+depends="python3"
+makedepends="py3-setuptools python3-dev"
+checkdepends="py3-pytest"
+
+build() {
+ python3 setup.py build
+}
+
+check() {
+ pytest bootinfo
+}
+
+package() {
+ python3 setup.py install --skip-build --root="$pkgdir"
+}
+
+sha512sums="
+88723e0cd5d8e52b21badb47d1ccbd258934b473256092a919301492d2a45e2d2dc045a8ff98c92a26be1c03975b01767879b1d671e2fd63a135b7ec39924c44 bootinfo-0.1.0.tar.gz
+"
diff --git a/testing/bootloose/APKBUILD b/testing/bootloose/APKBUILD
new file mode 100644
index 00000000000..bb5c7ceb1ad
--- /dev/null
+++ b/testing/bootloose/APKBUILD
@@ -0,0 +1,31 @@
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
+pkgname=bootloose
+pkgver=0.7.1
+pkgrel=3
+pkgdesc="Manage containers that look like virtual machines"
+url="https://github.com/k0sproject/bootloose"
+arch="all"
+license="Apache-2.0"
+makedepends="go"
+source="https://github.com/k0sproject/bootloose/archive/refs/tags/v$pkgver/bootloose-$pkgver.tar.gz"
+options="chmod-clean"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ make
+}
+
+check() {
+ make test-unit
+}
+
+package() {
+ make PREFIX=/usr DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+515d6eff47705c84c10421a32fe18a2fcefdf5214824a08f3651a632b0e0ba53c4e83f485ac81eba483c795d285bbda31c8f134c4128e4df609e6528c3f8819d bootloose-0.7.1.tar.gz
+"
diff --git a/testing/bootterm/APKBUILD b/testing/bootterm/APKBUILD
index 4536d791666..652fadbef85 100644
--- a/testing/bootterm/APKBUILD
+++ b/testing/bootterm/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
pkgname=bootterm
pkgver=0.4
-pkgrel=1
+pkgrel=2
pkgdesc="Simple, reliable and powerful terminal designed to ease connection to ephemeral serial ports"
url="https://github.com/wtarreau/bootterm"
arch="all"
diff --git a/testing/bordeaux/APKBUILD b/testing/bordeaux/APKBUILD
new file mode 100644
index 00000000000..098481f6c7d
--- /dev/null
+++ b/testing/bordeaux/APKBUILD
@@ -0,0 +1,73 @@
+# Maintainer: David Sugar <tychosoft@gmail.com>
+# Contributor: David Sugar <tychosoft@gmail.com>
+pkgname=bordeaux
+pkgver=0.8.1
+pkgrel=0
+pkgdesc="SIP telephony application server"
+url="https://www.tychosoft.com/tychosoft/bordeaux/wiki"
+arch="all"
+license="GPL-3.0-or-later"
+makedepends="cmake fmt-dev>=8.1.0 flite-dev openssl-dev moderncli-dev>=0.8.0 libosip2-dev>=5.3.0 libexosip2-dev>=5.3.0 rapidjson-dev"
+subpackages="$pkgname-doc $pkgname-openrc $pkgname-dev $pkgname-coventry $pkgname-generic $pkgname-en_voices"
+source="https://www.tychosoft.com/api/packages/tychosoft/generic/bordeaux/$pkgver/bordeaux-$pkgver.tar.gz bordeaux.initd bordeaux.confd"
+
+build() {
+ cmake \
+ -DCMAKE_INSTALL_SYSCONFDIR:PATH=/etc \
+ -DCMAKE_INSTALL_LOCALSTATEDIR:PATH=/var \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=/usr/lib \
+ -DCMAKE_INSTALL_SBINDIR=/usr/sbin \
+ -DSERVER_PREFIX_PATH=/var/lib/bordeaux \
+ -DSERVER_LOGGER_PATH=/var/log/bordeaux \
+ -DSERVER_CONFIG_FILE=/etc/bordeaux.conf \
+ -DCMAKE_BUILD_TYPE=Release .
+ make
+}
+
+check() {
+ make test
+}
+
+package() {
+ DESTDIR="$pkgdir" make install
+ install -d -m 750 -g adm "$pkgdir"/var/log/$pkgname
+ install -d -m 700 "$pkgdir"/var/lib/$pkgname
+ install -D -m 700 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
+ install -D -m 640 "$srcdir"/$pkgname.confd "$pkgdir"/etc/conf.d/$pkgname
+ install -Dm644 LICENSE.md "$pkgdir"/usr/share/licenses/$pkgname/LICENSE.md
+ install -Dm644 drivers/DRIVER.md "$pkgdir"/usr/share/licenses/$pkgname/DRIVER.md
+ install -Dm644 README.md "$pkgdir"/usr/share/doc/$pkgname/README.md
+ install -Dm644 FEATURES.md "$pkgdir"/usr/share/doc/$pkgname/FEATURES.md
+}
+
+en_voices() {
+ pkgdesc="bordeaux default english voice"
+ depends="bordeaux"
+ amove usr/share/bordeaux/voices/en
+ amove usr/lib/bordeaux/plugin_en.so
+}
+
+dev() {
+ default_dev
+ pkgdesc="bordeaux headers and dev utils"
+ amove usr/bin/bordeauxsnd
+}
+
+coventry() {
+ pkgdesc="bordeaux coventry driver"
+ depends="bordeaux"
+ amove usr/lib/bordeaux/driver_coventry.so
+}
+
+generic() {
+ pkgdesc="bordeaux generic driver"
+ depends="bordeaux"
+ amove usr/lib/bordeaux/driver_generic.so
+}
+
+sha512sums="
+904bb25268a08f2e8995027f7504b6e31d2a7d7cf4a350f6ee45c589a569a7b2516769e06ff6b362ced48e5a3b57757797e9e66726cb0b06dd0ad963677e5746 bordeaux-0.8.1.tar.gz
+ff38a277a26a5224ab041fc6916f7ff9305f85e2d72679ae3b00084a35f80eb3d7453faa1bf2d49d306bb75747bdc1ec78bb6cc14e3d1fc627ed623142a5afa0 bordeaux.initd
+c6e67fbc38c8e75ea742e6b6204c8a0406b0f9226f0e667ee72c4e51bfa8d0fd45445ba160d1e7198ce509778abe94b6a86044e2aef86c31385f69f901570a1c bordeaux.confd
+"
diff --git a/testing/bordeaux/bordeaux.confd b/testing/bordeaux/bordeaux.confd
new file mode 100644
index 00000000000..1ab5938684d
--- /dev/null
+++ b/testing/bordeaux/bordeaux.confd
@@ -0,0 +1,9 @@
+# setup bordeaux daemon environment
+
+# Driver specifies the bordeaux driver, for example coventry or generic
+DRIVER=coventry
+
+# Specifies startup dependencies, such as coventry, asterisk, etc, if ran
+# on the same machine, otherwise can be left blank.
+DEPENDS=coventry
+
diff --git a/testing/bordeaux/bordeaux.initd b/testing/bordeaux/bordeaux.initd
new file mode 100644
index 00000000000..1f952560f81
--- /dev/null
+++ b/testing/bordeaux/bordeaux.initd
@@ -0,0 +1,27 @@
+#!/sbin/openrc-run
+
+supervisor=supervise-daemon
+name=bordeaux
+command="/usr/sbin/bordeaux"
+command_args="-d ${DRIVER:-coventry}"
+pidfile="/run/bordeaux.pid"
+extra_started_commands="reload"
+
+depend() {
+ use logger dns
+ need net
+ after firewall ${DEPENDS:-coventry}
+}
+
+stop() {
+ ebegin "Stopping ${RC_SVCNAME}"
+ start-stop-daemon --signal INT --pidfile "${pidfile}"
+ eend $? "Failed to stop ${RC_SVCNAME}"
+}
+
+reload() {
+ ebegin "Reloading ${RC_SVCNAME}"
+ start-stop-daemon --signal HUP --pidfile "${pidfile}"
+ eend $?
+}
+
diff --git a/testing/bore/APKBUILD b/testing/bore/APKBUILD
new file mode 100644
index 00000000000..4b1808d3937
--- /dev/null
+++ b/testing/bore/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: Thomas Kienlen <kommander@laposte.net>
+# Maintainer: Thomas Kienlen <kommander@laposte.net>
+pkgname=bore
+pkgver=0.5.0
+pkgrel=1
+pkgdesc="Simple CLI tool for making tunnels to localhost"
+url="https://github.com/ekzhang/bore"
+# riscv64: rust broken
+# s390x: tests fail
+arch="all !riscv64 !s390x"
+license="MIT"
+makedepends="cargo cargo-auditable"
+source="$pkgname-$pkgver.tar.gz::https://github.com/ekzhang/bore/archive/v$pkgver/bore-$pkgver.tar.gz"
+
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -D -m 755 target/release/bore -t "$pkgdir"/usr/bin
+}
+
+sha512sums="
+55d783a46e25393fc003d9c90760c141692af88fe88fecfc27c632bdc6d3352309691f8995484d9a94022c0e8e1636480104d3b7f20bf848647bb34770a8b170 bore-0.5.0.tar.gz
+"
diff --git a/testing/boringproxy/APKBUILD b/testing/boringproxy/APKBUILD
deleted file mode 100644
index 10fb7782601..00000000000
--- a/testing/boringproxy/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Contributor: psykose <alice@ayaya.dev>
-# Maintainer: psykose <alice@ayaya.dev>
-pkgname=boringproxy
-pkgver=0.9.1
-pkgrel=3
-pkgdesc="Simple tunneling reverse proxy with a fast web UI and auto HTTPS"
-url="https://github.com/boringproxy/boringproxy"
-options="!check" # no tests
-arch="all"
-license="MIT"
-makedepends="go inkscape libcap"
-source="$pkgname-$pkgver.tar.gz::https://github.com/boringproxy/boringproxy/archive/refs/tags/v$pkgver.tar.gz"
-
-export GOFLAGS="$GOFLAGS -trimpath -mod=readonly"
-
-build() {
- # from ./scripts/generate_logo.sh
- inkscape -w 192 -h 192 logo.svg -o logo.png
-
- CGO_ENABLED=0 go build -ldflags "-X main.Version=$pkgver" \
- -o boringproxy ./cmd/boringproxy
-}
-
-package() {
- install -Dm0755 boringproxy -t "$pkgdir"/usr/bin
- setcap cap_net_bind_service=+ep "$pkgdir"/usr/bin/boringproxy
-}
-
-sha512sums="
-29b91d110b950d08ee3aee9ba3b2fa8d5e14422cd586957c40bb60e5fbdbdb086546dffdd21ba3617b83a84d438ea8cb737bbbf10aa3d3f26098c573788c8e2c boringproxy-0.9.1.tar.gz
-"
diff --git a/testing/boson/APKBUILD b/testing/boson/APKBUILD
new file mode 100644
index 00000000000..31e8d743a2c
--- /dev/null
+++ b/testing/boson/APKBUILD
@@ -0,0 +1,25 @@
+# Contributor: Jakub Jirutka <jakub@jirutka.cz>
+# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
+pkgname=boson
+pkgver=0_git20211219
+_gitrev=9b1786213591691b8cb41ec06ada111af11c30a0
+pkgrel=0
+pkgdesc="Implementation of the meson language written in C11"
+url="https://git.sr.ht/~bl4ckb0ne/boson"
+arch="all"
+license="GPL-3.0-only"
+source="$pkgname-$_gitrev.tar.gz::https://git.sr.ht/~bl4ckb0ne/boson/archive/$_gitrev.tar.gz"
+builddir="$srcdir/$pkgname-$_gitrev"
+
+build() {
+ ./configure --prefix=/usr
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+65394c70ef6ad696955145d7d11807b05ec0e33c046f57f8b289078a75e4e9b326ffb6b51e9f121333c94d7349fc0903550299518266ec7a3fc600dc0d701fd9 boson-9b1786213591691b8cb41ec06ada111af11c30a0.tar.gz
+"
diff --git a/testing/boxed-cpp/APKBUILD b/testing/boxed-cpp/APKBUILD
new file mode 100644
index 00000000000..eed0b05f308
--- /dev/null
+++ b/testing/boxed-cpp/APKBUILD
@@ -0,0 +1,35 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=boxed-cpp
+pkgver=1.4.0
+pkgrel=0
+pkgdesc="Boxing primitive types in C++"
+url="https://contour-terminal.org"
+arch="noarch"
+license="Apache-2.0"
+makedepends="catch2-3 cmake samurai"
+subpackages="$pkgname-dev $pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/contour-terminal/boxed-cpp/archive/refs/tags/v$pkgver.tar.gz"
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DBUILD_SHARED_LIBS=ON \
+ -DBOXED_CPP_TESTS=ON \
+ -DCMAKE_INSTALL_PREFIX=/usr
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build -C Release --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+
+ install -Dm 644 LICENSE.txt "$pkgdir"/usr/share/licenses/"$pkgname"/LICENSE
+}
+
+sha512sums="
+0ded6de3fdacebcb4e8e0939038a3da14cb0c5331f156563ce29fbff45d4fa34a00c9cb17e5fd0b6a93bca12884bc6cbae0c33ffa47b772abb6de263964b36ae boxed-cpp-1.4.0.tar.gz
+"
diff --git a/testing/boxes/APKBUILD b/testing/boxes/APKBUILD
index 646345765ae..64820536af7 100644
--- a/testing/boxes/APKBUILD
+++ b/testing/boxes/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Francesco Colista <fcolista@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
-pkgname="boxes"
-pkgver=2.1.1
+pkgname=boxes
+pkgver=2.2.1
pkgrel=0
pkgdesc="Text mode box and comment drawing filter"
url="https://boxes.thomasjensen.com"
@@ -10,9 +10,7 @@ license="GPL-2.0"
makedepends="bison flex libunistring-dev pcre2-dev"
checkdepends="bash"
subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.zip::https://github.com/ascii-boxes/boxes/archive/v$pkgver.zip
-fix-test.patch"
-builddir="$srcdir/$pkgname-$pkgver"
+source="$pkgname-$pkgver.tar.gz::https://github.com/ascii-boxes/boxes/archive/refs/tags/v$pkgver.tar.gz"
build() {
make -j1 GLOBALCONF=/etc/boxes-config
@@ -29,6 +27,5 @@ package() {
}
sha512sums="
-0b3db6a070f3b5059538c4f0982ffcd36fc9c070e9f3e8a96677928671f628906c9fc3a7795d1eaaa9398d0caeec31d26910af3a7046a57aaf1ab7d9384114e0 boxes-2.1.1.zip
-fafb487bc09228860f90621b9496f48e7e80e679269d99ee8227c7704a8822df56806898721397613b881d5aa777aa3ba21341bcb2869a39b4528e7f356f6aba fix-test.patch
+0afa115d5ec01944878ef4d8f33e2887d123b172a0589eda53a04ba671916d9ef1d8299f9df9aeac8989807f86ca1b96b1c34aed03856643a89a07586b82e3b6 boxes-2.2.1.tar.gz
"
diff --git a/testing/boxes/fix-test.patch b/testing/boxes/fix-test.patch
deleted file mode 100644
index 76d4882f20b..00000000000
--- a/testing/boxes/fix-test.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-diff --git a/test/004_missing_option_argument.txt b/test/004_missing_option_argument.txt
-deleted file mode 100644
-index 8222bbb..0000000
---- a/test/004_missing_option_argument.txt
-+++ /dev/null
-@@ -1,11 +0,0 @@
--:ARGS
---s
--:INPUT
--:OUTPUT-FILTER
--1s/^.+?: /boxes: /
--1s/-- s$/-- 's'/
--:EXPECTED-ERROR 1
--boxes: option requires an argument -- 's'
--Usage: boxes [options] [infile [outfile]]
--Try `boxes -h' for more information.
--:EOF
-diff --git a/test/065_size_missing_argument.txt b/test/065_size_missing_argument.txt
-deleted file mode 100644
-index 6dad5ae..0000000
---- a/test/065_size_missing_argument.txt
-+++ /dev/null
-@@ -1,12 +0,0 @@
--:ARGS
---s
--:INPUT
--foo
--:OUTPUT-FILTER
--1s/^.+?: /boxes: /
--1s/-- s$/-- 's'/
--:EXPECTED-ERROR 1
--boxes: option requires an argument -- 's'
--Usage: boxes [options] [infile [outfile]]
--Try `boxes -h' for more information.
--:EOF
-\ No newline at end of file
diff --git a/testing/brial/APKBUILD b/testing/brial/APKBUILD
new file mode 100644
index 00000000000..4581f4ef7fe
--- /dev/null
+++ b/testing/brial/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: Eloi Torrents <eloitor@disroot.org>
+# Maintainer: Eloi Torrents <eloitor@disroot.org>
+pkgname=brial
+pkgver=1.2.11
+pkgrel=2
+pkgdesc="BRiAl (Boolean Ring Algebra) is the successor to PolyBoRi"
+url="https://github.com/BRiAl/BRiAl"
+arch="all"
+license="GPL-2.0-or-later"
+makedepends="boost-dev libm4ri-dev"
+subpackages="$pkgname-dev"
+source="https://github.com/BRiAl/BRiAl/releases/download/$pkgver/brial-$pkgver.tar.bz2"
+options="!check" # fail for some reason on boost 1.81
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+00532b6361c709fce44940bfd22563046cfcbc06d41282a01a26f9bcb25fa86df1406685d7ba4b1ebbb08cd7fa8b9811c81eccf78e72ea96960ef7a059c2e926 brial-1.2.11.tar.bz2
+"
diff --git a/testing/brltty/APKBUILD b/testing/brltty/APKBUILD
index 98fda949eee..1f1d2f1bd51 100644
--- a/testing/brltty/APKBUILD
+++ b/testing/brltty/APKBUILD
@@ -1,7 +1,7 @@
-# Contributor: Drew DeVault <sir@cmpwn.com>
+# Contributor:
# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=brltty
-pkgver=6.4
+pkgver=6.6
pkgrel=1
pkgdesc="Refreshable braille display driver daemon"
url="http://brltty.app"
@@ -10,13 +10,14 @@ license="LGPL-2.1-or-later"
makedepends="
autoconf
automake
+ gettext-dev
gpm-dev
icu-dev
liblouis-dev
linux-headers
tcl
"
-subpackages="$pkgname-static $pkgname-dev $pkgname-doc"
+subpackages="$pkgname-static $pkgname-dev $pkgname-doc $pkgname-lang"
source="http://brltty.app/archive/brltty-$pkgver.tar.xz"
options="!check" # no upstream test suite
@@ -37,7 +38,7 @@ build() {
--localstatedir=/var \
--with-tables-directory=/usr/share/brltty \
--enable-gpm
- make -j1
+ make
}
package() {
@@ -47,5 +48,5 @@ package() {
}
sha512sums="
-384848d05f78732952079d6f5170046927fcb35f400ece71ca897415a793c0aa1047934f8cd5e9e781536fb0b7cb71273283f3bba21e59f082ba8f6f2416352e brltty-6.4.tar.xz
+852bfd9179570be7b0da8b1279f84bdfedc14a319988d9c2eac5a20a9ce8977f31fdee167e8e96bb411184a1d72f4cdc633944c7b3f55bddae411fc71a9e6898 brltty-6.6.tar.xz
"
diff --git a/testing/bsd-games/APKBUILD b/testing/bsd-games/APKBUILD
deleted file mode 100644
index 5b2eda7614b..00000000000
--- a/testing/bsd-games/APKBUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-# Contributor: Maxim Karasev <begs@disroot.org>
-# Maintainer: Maxim Karasev <begs@disroot.org>
-pkgname=bsd-games
-pkgver=3.2
-pkgrel=0
-pkgdesc="traditional text mode games from BSD"
-url="https://github.com/msharov/bsd-games"
-arch="all"
-license="BSD-3-Clause"
-makedepends="ncurses-dev coreutils" # configure causes busybox expr error
-subpackages="$pkgname-doc"
-source="https://github.com/msharov/bsd-games/archive/v$pkgver/bsd-games-$pkgver.tar.gz"
-options="!check" # no tests
-
-build() {
- # some GNU autoconf options are ignored, but it works
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var/lib # it really shouldn't be in /var
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-cf5f5a9e5d215ee553486580f9a7dfc9801d254a2806172df201dfc42ecbb05326db7bc25b7624eb8a8e541ad61ec319d258687609bddae2bc07edcbade2291a bsd-games-3.2.tar.gz
-"
diff --git a/testing/btcd/APKBUILD b/testing/btcd/APKBUILD
index 5a3e60d7bdf..fa857dae688 100644
--- a/testing/btcd/APKBUILD
+++ b/testing/btcd/APKBUILD
@@ -1,24 +1,31 @@
# Maintainer: Michał Adamski <michal@ert.pl>
pkgname=btcd
-pkgver=0.22.0_beta
+pkgver=0.23.4
_pkgver=${pkgver/_/-}
-pkgrel=3
+pkgrel=5
pkgdesc="Alternative full node bitcoin implementation written in Go"
url="https://github.com/btcsuite/btcd#btcd"
arch="all"
license="ISC"
makedepends="go"
-source="https://github.com/btcsuite/btcd/archive/v$_pkgver/btcd-$_pkgver.tar.gz
- fix-test.patch
- "
+source="https://github.com/btcsuite/btcd/archive/v$_pkgver/btcd-$_pkgver.tar.gz"
builddir="$srcdir/$pkgname-$_pkgver"
+# secfixes:
+# 0.23.3-r0:
+# - CVE-2022-39389
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
build() {
mkdir bin
- go build -trimpath -ldflags="-s -w" -v -o bin . ./cmd/...
+ go build -trimpath -v -o bin . ./cmd/...
}
check() {
+ export GOFLAGS="${GOFLAGS/-trimpath/}"
go test ./...
}
@@ -28,6 +35,5 @@ package() {
done
}
sha512sums="
-cae1bf46900890e4bc01b817f72cbf6654636af5bac887032a85afba91a813162e5b2e1bcb23cd0a013e8b0711d9e7a68d6ff08f8767c6b375a2df7d8d72c291 btcd-0.22.0-beta.tar.gz
-ba6a8a79ca5c4419c4983042f9c49548ff3548b1002705ae106c2123424bc492a477e9693334fb5264ebe38f01cac6a9b36c8fe392cec0f4257ac5e78534578e fix-test.patch
+aa6c40d58d8d4e7302005fa80b192a8f0298707d67685273e2b57cc339f2a999ea1953215f1a89c0480ea926dc6a55740c243656b67ca3b9d494b05f06537880 btcd-0.23.4.tar.gz
"
diff --git a/testing/btcd/fix-test.patch b/testing/btcd/fix-test.patch
deleted file mode 100644
index 1132fd2df3f..00000000000
--- a/testing/btcd/fix-test.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/mempool/mempool_test.go
-+++ b/mempool/mempool_test.go
-@@ -560,7 +560,7 @@
-
- // Ensure no transactions were reported as accepted.
- if len(acceptedTxns) != 0 {
-- t.Fatal("ProcessTransaction: reported %d accepted "+
-+ t.Fatalf("ProcessTransaction: reported %d accepted "+
- "transactions from failed orphan attempt",
- len(acceptedTxns))
- }
diff --git a/testing/btfs/APKBUILD b/testing/btfs/APKBUILD
index 6d5f0821f4a..0097caeecf1 100644
--- a/testing/btfs/APKBUILD
+++ b/testing/btfs/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: dai9ah <dai9ah@protonmail.com>
pkgname=btfs
pkgver=2.24
-pkgrel=4
+pkgrel=11
pkgdesc="Bittorrent filesystem based on FUSE"
options="!check" # No testsuite
url="https://github.com/johang/btfs"
@@ -33,4 +33,6 @@ package() {
make DESTDIR="$pkgdir" install
}
-sha512sums="33339d9eefe6836c8c96c4ea0fb6ee99150df5500f4d1dce107c20df72e0d2959152fca0901676cec1eebf1de39a69dc46ea96442aecd234c9fb4e7618337b0c btfs-2.24.tar.gz"
+sha512sums="
+33339d9eefe6836c8c96c4ea0fb6ee99150df5500f4d1dce107c20df72e0d2959152fca0901676cec1eebf1de39a69dc46ea96442aecd234c9fb4e7618337b0c btfs-2.24.tar.gz
+"
diff --git a/testing/btpd/APKBUILD b/testing/btpd/APKBUILD
index 12e4959bc60..49158152814 100644
--- a/testing/btpd/APKBUILD
+++ b/testing/btpd/APKBUILD
@@ -1,14 +1,14 @@
# Contributor: Cág <ca6c@bitmessage.ch>
-# Maintainer
+# Maintainer:
pkgname=btpd
pkgver=0.16
-pkgrel=1
+pkgrel=2
pkgdesc="The BitTorrent Protocol Daemon"
url="https://github.com/btpd/btpd"
arch="all"
license="BSD-2-Clause BSD-3-Clause"
depends=""
-makedepends="autoconf automake openssl-dev"
+makedepends="autoconf automake openssl-dev>3"
install=""
subpackages="$pkgname-doc"
source="$pkgname-$pkgver.tar.gz::https://github.com/$pkgname/$pkgname/archive/v$pkgver.tar.gz"
diff --git a/testing/buf/APKBUILD b/testing/buf/APKBUILD
new file mode 100644
index 00000000000..401eda0de76
--- /dev/null
+++ b/testing/buf/APKBUILD
@@ -0,0 +1,73 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=buf
+pkgver=1.29.0
+pkgrel=2
+pkgdesc="CLI to work with Protocol Buffers"
+url="https://buf.build/"
+# 32bit: fail tests with int overflow
+arch="all !x86 !armhf !armv7"
+license="Apache-2.0"
+makedepends="go"
+checkdepends="protobuf-dev protoc-gen-go"
+subpackages="
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
+ $pkgname-protoc-plugins:_protoc
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/bufbuild/buf/archive/refs/tags/v$pkgver.tar.gz"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ for binary in buf protoc-gen-buf-breaking protoc-gen-buf-lint; do
+ go build -v ./cmd/$binary
+ done
+
+ for shell in bash fish zsh; do
+ ./buf completion $shell > buf.$shell
+ done
+
+ # These programs are required for check phase
+ mkdir -p "$builddir"/bin
+ for cmd in writer receiver; do
+ go build -v -o bin/ ./private/buf/cmd/buf/command/alpha/protoc/internal/protoc-gen-insertion-point-$cmd
+ done
+}
+
+check() {
+ export PATH="$PATH:$builddir/bin"
+
+ # TestCompareGeneratedStubsGoogleapisGo fails due to difference in protoc versions
+ # TestCompareGoogleapis fails (TODO: investigate more)
+ # TestGitCloner tries to clone a remote repository
+ # TestWorkspaceGit checks the project root whether it is a git repo
+ go test -skip 'TestCompareGeneratedStubsGoogleapisGo|TestCompareGoogleapis|TestGitCloner|TestWorkspaceGit' ./...
+}
+
+package() {
+ install -Dm755 buf -t "$pkgdir"/usr/bin/
+
+ install -Dm644 buf.bash \
+ "$pkgdir"/usr/share/bash-completion/completions/buf
+ install -Dm644 buf.fish \
+ "$pkgdir"/usr/share/fish/vendor_completions.d/buf.fish
+ install -Dm644 buf.zsh \
+ "$pkgdir"/usr/share/zsh/site-functions/_buf
+
+ install -Dm755 protoc-gen-buf-breaking protoc-gen-buf-lint \
+ -t "$pkgdir"/usr/bin/
+}
+
+_protoc() {
+ pkgdesc="$pkgdesc (protoc plugins)"
+ depends="protoc"
+
+ amove usr/bin/protoc-gen-buf-*
+}
+
+sha512sums="
+4b7e034429cb4eb3607546f6e671919ed3863221a52b374fb608148836dafb8aba7609716a2c3ceb30dc6b30370e8956a74d1d187cec3a48f7cf3216501e3466 buf-1.29.0.tar.gz
+"
diff --git a/testing/bugsquish/APKBUILD b/testing/bugsquish/APKBUILD
deleted file mode 100644
index d89dbd7f977..00000000000
--- a/testing/bugsquish/APKBUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=bugsquish
-pkgver=0.0.6
-pkgrel=1
-pkgdesc="Defend your arm from an onslaught of blood-sucking insects"
-url="http://www.newbreedsoftware.com/bugsquish/"
-arch="all"
-license="GPL-2.0-only"
-depends="libmikmod"
-makedepends="sdl12-compat-dev sdl_image-dev sdl_mixer-dev"
-options="!check" # No testsuite
-source="https://github.com/antonialoytorrens/nbs/raw/master/unix/x/bugsquish/src/bugsquish-$pkgver.tar.gz
- bugsquish-icon.xpm
- bugsquish.desktop
- "
-
-build() {
- make
-}
-
-package() {
- make install \
- DATA_PREFIX="$pkgdir"/usr/share/bugsquish \
- BIN_PREFIX="$pkgdir"/usr/bin
- install -Dm644 "$srcdir"/bugsquish-icon.xpm \
- "$pkgdir"/usr/share/pixmaps/bugsquish-icon.xpm
- install -Dm664 "$srcdir"/bugsquish.desktop \
- "$pkgdir"/usr/share/applications/bugsquish.desktop
-}
-
-sha512sums="429c80e2263b916e234353324edc31cf828562907aa0460ae0083450e9c9e0bde2d5b1f7bf06650d8947c8c0bc0820a3a062a8571ecdbb715da206ff61b235cf bugsquish-0.0.6.tar.gz
-954bf14256612ca528f4f0659fac040ff223fbfbdd0b03054d638cdd2c8d3967fa9dd5818182a3407eb74e5c80d48bffa7cc1277fd4400c9679ee2f7c3012e30 bugsquish-icon.xpm
-8d5db88f9d1308989aa89c5620fa99328d12daa4d110cb532609af9fe7fc27d8d41fd347961344a763d2249b22b37b310582725f17e5bcef071193064c801e0f bugsquish.desktop"
diff --git a/testing/bugsquish/bugsquish-icon.xpm b/testing/bugsquish/bugsquish-icon.xpm
deleted file mode 100644
index 88882d7878e..00000000000
--- a/testing/bugsquish/bugsquish-icon.xpm
+++ /dev/null
@@ -1,59 +0,0 @@
-/* XPM */
-static char * bugsquish_icon_xpm[] = {
-"32 32 24 1",
-" c None",
-". c #FF0000",
-"+ c #FF00FF",
-"@ c #0000FF",
-"# c #00FFFF",
-"$ c #00FF00",
-"% c #FFFF00",
-"& c #7F0000",
-"* c #7F007F",
-"= c #00007F",
-"- c #007F7F",
-"; c #007F00",
-"> c #827F00",
-", c #000000",
-"' c #191919",
-") c #333333",
-"! c #4C4C4C",
-"~ c #666666",
-"{ c #7F7F7F",
-"] c #999999",
-"^ c #B2B2B2",
-"/ c #CCCCCC",
-"( c #E5E5E5",
-"_ c #FFFFFF",
-",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
-",,',',',',',',',',',',',',',',',",
-",'''''''''''''''''''''''''''''',",
-",'...''''''''''''''''..'''''''',",
-",'...''''''''''''''''...''''''',",
-",)...)')')')')')')')')'.)')')'),",
-",)...)))')))')))'))))))))'))))),",
-",)...)))))))))))))))))))))))))),",
-",)...)))))))))))))))))))))))))),",
-",!...!,,)!!!)!!!!)!)!)!,!)!)!)!,",
-",!...!,,!!,,,!)!!!!!!!!!,!!!,!!,",
-",!...!!,,!,,!!!!!!!!!!!!,,,,!!!,",
-",!...!!!,!!,!!!!!!!!!!!!,,,,!!!,",
-",~...~~~,,,~~!~~!~!~!~~!~,,,~~~,",
-",~...~!~,,,~~~!~~~~~.~~~~,,~!~~,",
-",~...~~~~,~~~~~~~.....~~~~,~~~~,",
-",~...~~~~~~.~~~~~.~...~~~~~~~~~,",
-",{...{~{{..~{{~{~{....~{{~{~{{~,",
-",{...{{{~.{{~{{{{{{{.{{~{{{{~{{,",
-",{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{,",
-",%>%>%>%~~~>~{{{{{{{{{{{{{{{{{{,",
-",~%>%>%>%>%>%>%>%>!''>%>%>%{]{],",
-",%>>>%>>>%>%>%>%>%>''>>%>%>>>>],",
-",>>>>>>>>>%>>>%>>>%''>>>%>>%>>],",
-",>>>>>>>>>>>>>>>>>>''>>>>>>>>>~,",
-",>>>>>>>>>>>>>>>>>>''>>>>>>>>>>,",
-",>>>>>>>>>>>>>>~>~>!&>>>>>>>>&>,",
-",>>>>>>>>>>>>>>]]^&&>>>>>%>>&&&,",
-",>>>>>>>>>>~{]^^^^^]&&&>>>>%>>&,",
-",>>>>>>>~>]^^/^^/^/^]&&&&{>>>]^,",
-",!>>~~{]/^////////^/^^]^^/^{>]/,",
-",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,"};
diff --git a/testing/bugsquish/bugsquish.desktop b/testing/bugsquish/bugsquish.desktop
deleted file mode 100644
index 567175fb522..00000000000
--- a/testing/bugsquish/bugsquish.desktop
+++ /dev/null
@@ -1,12 +0,0 @@
-[Desktop Entry]
-Version=1.1
-Name=Bug Squish
-Type=Application
-GenericName=Game
-Comment=Squash the bugs before they suck up your blood
-Exec=bugsquish --fullscreen
-Icon=bugsquish-icon
-Terminal=false
-Hidden=false
-Categories=Application;Game;2DGraphics;ActionGame;
-Keywords=Game;Arcade; \ No newline at end of file
diff --git a/testing/buildcache/APKBUILD b/testing/buildcache/APKBUILD
index dc71997a039..1168ef8d8f3 100644
--- a/testing/buildcache/APKBUILD
+++ b/testing/buildcache/APKBUILD
@@ -1,17 +1,20 @@
# Contributor: André Klitzing <aklitzing@gmail.com>
# Maintainer: André Klitzing <aklitzing@gmail.com>
pkgname=buildcache
-pkgver=0.27.6
+pkgver=0.28.9
pkgrel=0
pkgdesc="Advanced compiler accelerator"
-url="https://github.com/mbitsnbites/buildcache"
+url="https://gitlab.com/bits-n-bites/buildcache"
arch="all !s390x !armhf" # failing tests
license="Zlib"
makedepends="
- openssl-dev
+ openssl-dev>3
cmake
"
-source="$pkgname-$pkgver.tar.gz::https://github.com/mbitsnbites/buildcache/archive/refs/tags/v$pkgver.tar.gz"
+source="https://gitlab.com/bits-n-bites/buildcache/-/archive/v$pkgver/buildcache-v$pkgver.tar.gz
+ include-cstdint.patch
+ "
+builddir="$srcdir/$pkgname-v$pkgver"
build() {
cmake \
@@ -32,5 +35,6 @@ package() {
}
sha512sums="
-7160bef0da93fe2a335b3597ba4adbc58508a6488b703012c80561ffd478f384f4deb32ab676047aa2eb0cd444f0bc785830e850f0b6cf7037f3a3b82608967e buildcache-0.27.6.tar.gz
+be543f0fa7550fedad62efbfc90a522d21276f0379fb836b758d775a95e9a0c6c872b397167a129c8d472a03324081cb7d46d6fdc6c7d369a6594fa64358d2f3 buildcache-v0.28.9.tar.gz
+c57f6c09cbea6e2781e7d71c58e25659dfb9150779afbadc3a0e4c52de531cc5ecc3094b2b0b9571a0f2542453221c53ca54ed65f7492938d1112fae417c3f36 include-cstdint.patch
"
diff --git a/testing/buildcache/include-cstdint.patch b/testing/buildcache/include-cstdint.patch
new file mode 100644
index 00000000000..7cf2c44d194
--- /dev/null
+++ b/testing/buildcache/include-cstdint.patch
@@ -0,0 +1,20 @@
+--- a/src/base/env_utils.hpp
++++ b/src/base/env_utils.hpp
+@@ -21,6 +21,7 @@
+ #define BUILDCACHE_ENV_UTILS_HPP_
+
+ #include <string>
++#include <cstdint>
+
+ namespace bcache {
+ /// @brief A helper class for reading and parsing environment variables.
+--- a/src/base/hmac.cpp
++++ b/src/base/hmac.cpp
+@@ -45,6 +45,7 @@
+ #include <array>
+ #include <stdexcept>
+ #include <vector>
++#include <cstdint>
+
+ namespace bcache {
+
diff --git a/testing/bump2version/APKBUILD b/testing/bump2version/APKBUILD
index 086fe6de8a4..24aee1bd885 100644
--- a/testing/bump2version/APKBUILD
+++ b/testing/bump2version/APKBUILD
@@ -2,15 +2,19 @@
# Maintainer: Charles Wimmer <charles@wimmer.net>
pkgname=bump2version
pkgver=1.0.1
-pkgrel=2
+pkgrel=6
pkgdesc="Version-bump your software with a single command!"
url="https://github.com/c4urself/bump2version"
arch="noarch"
license="MIT"
depends="python3 py3-setuptools"
checkdepends="py3-tox py3-pytest py3-testfixtures"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/c4urself/bump2version/archive/v$pkgver.tar.gz"
+provides="py3-bump2version=$pkgver-r$pkgrel"
+replaces="py3-bump2version"
+
build() {
python3 setup.py build
}
@@ -20,6 +24,6 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="aceb3770b2537e93a996795dba521d1b862d61fe07d6f4e086ba1d2b8e478690394a82dba9e40b32ea969b19b049750635508c1ecd45646e24d4e45ad2d47795 bump2version-1.0.1.tar.gz"
diff --git a/testing/bumprace/APKBUILD b/testing/bumprace/APKBUILD
deleted file mode 100644
index 9d2ae93d1f8..00000000000
--- a/testing/bumprace/APKBUILD
+++ /dev/null
@@ -1,56 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=bumprace
-pkgver=1.5.8
-pkgrel=1
-pkgdesc="1 or 2 players race through a multi-level maze"
-url="http://www.linux-games.com/bumprace/"
-arch="all"
-license="GPL-2.0-only"
-depends="$pkgname-data"
-makedepends="sdl12-compat-dev sdl_image-dev sdl_mixer-dev libjpeg-turbo-dev libzip-dev"
-subpackages="$pkgname-data::noarch"
-source="$pkgname-$pkgver.tar.gz::https://github.com/karlb/bumprace/archive/$pkgver.tar.gz
- bumprace.desktop
- bumprace-icon.xpm
- "
-
-prepare() {
- default_prepare
- update_config_sub
- update_config_guess
-}
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --sbindir=/usr/bin
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- install -Dm644 "$srcdir"/bumprace.desktop \
- "$pkgdir"/usr/share/applications/bumprace.desktop
- install -Dm664 "$srcdir"/bumprace-icon.xpm \
- "$pkgdir"/usr/share/pixmaps/bumprace-icon.xpm
-}
-
-data() {
- pkgdesc="$pkgdesc (data files)"
- amove usr/share/bumprace
-}
-
-
-sha512sums="
-bffc1d829deb048644fa21eb4566e2008573c0ee2e6f96e75470c8a6fa4cacb788cb93adf6e24b53f32884fd999880ffc527a903ce617a376cb5aae4c1b97480 bumprace-1.5.8.tar.gz
-7042f9dd077c823234eed7fdb863d6d4af4c42f2385bd1f5208052f6144a007e89a01e6e8bace04426bae3ea605c64980c538c9f3d29820d8331a511cbacfb1d bumprace.desktop
-380e6231951e27a47dab274e6cee1443d2cec53f0da48e5cf01dca5e2d3b1634c733427403bb8c384b6272fe5d60fc0eb2d2dc9a626e0ef013076b0521cb6ce0 bumprace-icon.xpm
-"
diff --git a/testing/bumprace/bumprace-icon.xpm b/testing/bumprace/bumprace-icon.xpm
deleted file mode 100644
index c2d3ae7ce72..00000000000
--- a/testing/bumprace/bumprace-icon.xpm
+++ /dev/null
@@ -1,134 +0,0 @@
-/* XPM */
-static char *bumprace[] = {
-/* columns rows colors chars-per-pixel */
-"32 32 96 2",
-" c #020204",
-". c #010508",
-"X c #010A0E",
-"o c #0C0606",
-"O c #0E080A",
-"+ c #010D12",
-"@ c #01151D",
-"# c #0E1013",
-"$ c #120706",
-"% c #140807",
-"& c #140909",
-"* c #1B0C0C",
-"= c #1B1113",
-"- c #011924",
-"; c #011E2A",
-": c #1B1E24",
-"> c #032A3B",
-", c #162733",
-"< c #220E0E",
-"1 c #290305",
-"2 c #251111",
-"3 c #23191B",
-"4 c #2C1313",
-"5 c #331615",
-"6 c #361816",
-"7 c #361B1B",
-"8 c #3B1B19",
-"9 c #322124",
-"0 c #013145",
-"q c #013449",
-"w c #0E384B",
-"e c #023E56",
-"r c #0A3C53",
-"t c #283543",
-"y c #2A3E50",
-"u c #3F3E4A",
-"i c #01445F",
-"p c #1F4155",
-"a c #014662",
-"s c #054965",
-"d c #06506E",
-"f c #025475",
-"g c #065A7C",
-"h c #38445D",
-"j c #421E1C",
-"k c #48201F",
-"l c #452120",
-"z c #4C2221",
-"x c #4E2A2A",
-"c c #542624",
-"v c #562825",
-"b c #552D2B",
-"n c #582726",
-"m c #5B2927",
-"M c #5E2B29",
-"N c #55313D",
-"B c #680708",
-"V c #621B1B",
-"C c #7D0608",
-"Z c #662827",
-"A c #642D2B",
-"S c #6C2827",
-"D c #6C2E2B",
-"F c #6D2F30",
-"G c #6B312F",
-"H c #6C3331",
-"J c #693938",
-"K c #792F2C",
-"L c #7E322F",
-"P c #713633",
-"I c #753936",
-"U c #773D3A",
-"Y c #7B3E3C",
-"T c #7B403E",
-"R c #065F84",
-"E c #026187",
-"W c #267B9C",
-"Q c #2B7E9F",
-"! c #2180A6",
-"~ c #2986AA",
-"^ c #8B2221",
-"/ c #893230",
-"( c #903735",
-") c #BF0E13",
-"_ c #B51414",
-"` c #BC1313",
-"' c #844543",
-"] c #8A4D4A",
-"[ c #C00E0F",
-"{ c #C71313",
-"} c #CF1515",
-"| c #D40406",
-" . c #DF0507",
-".. c #E30305",
-"X. c #ED0204",
-"o. c #F40104",
-/* pixels */
-" ",
-" ",
-" ",
-" ",
-" ",
-" ",
-" ",
-" ",
-" o ",
-" o & * * * * % $ $ o ",
-" . * 4 4 2 = # O o $ $ o o o ",
-" & 5 6 6 5 : > > ; + $ $ $ o ",
-" & 7 j j j 9 r a e 0 ; . o $ $ $ $ ",
-" 6 z z z z t f f f i > @ o % % $ $ o ",
-" * c c c c n y R ~ Q s 0 ; o * & % % % ",
-" 7 M M Z M S N R ! W s q ; . & < < * * * o ",
-" . k Z A S ^ [ [ h g f i 0 @ O 2 4 2 < * * & ",
-" o v G ^ ` ...._ D h p w , 3 7 6 4 4 < < < & ",
-" V ` .X...` L G G M x z k j 6 5 4 4 2 < & ",
-" B X.X.X.{ / P H A A v c k k j 6 5 4 4 < $ ",
-" 1 | o.} / I P H G A m c k k j 8 6 5 4 2 ",
-" C } ( Y T T P H A m v c k j 8 6 5 4 % ",
-" $ Z ' ] ' T I H A m v k k j j 6 5 * ",
-" % m ] ] ' T H A m v c k k j 5 & ",
-" o 7 J T T H A M v c k 8 2 ",
-" O 3 8 k k k 6 4 * o ",
-" o ",
-" ",
-" ",
-" ",
-" ",
-" "
-};
diff --git a/testing/bumprace/bumprace.desktop b/testing/bumprace/bumprace.desktop
deleted file mode 100644
index 6b55c160446..00000000000
--- a/testing/bumprace/bumprace.desktop
+++ /dev/null
@@ -1,13 +0,0 @@
-[Desktop Entry]
-Version=1.0
-Type=Application
-Name=BumpRace
-GenericName=race through a maze
-Comment=1 or 2 players race through a multi-level maze
-Exec=bumprace
-TryExec=bumprace
-Icon=bumprace-icon
-StartupNotify=false
-Terminal=false
-Categories=Game;ActionGame;
-Keywords=space;
diff --git a/testing/burp/APKBUILD b/testing/burp/APKBUILD
index 3aa4b64b59d..bdc4035ab23 100644
--- a/testing/burp/APKBUILD
+++ b/testing/burp/APKBUILD
@@ -1,21 +1,18 @@
# Contributor: Bernhard J. M. Gruen <bernhard.gruen@googlemail.com>
# Maintainer:
pkgname=burp
-pkgver=2.5.4
+pkgver=3.1.4
pkgrel=0
pkgdesc="A network backup and restore program"
url="https://burp.grke.org"
arch="all"
license="AGPL-3.0-only"
makedepends="
- autoconf
- automake
bsd-compat-headers
librsync-dev
- libtool
linux-headers
uthash-dev
- openssl-dev
+ openssl-dev>3
zlib-dev
"
checkdepends="check-dev"
@@ -23,17 +20,12 @@ subpackages="
$pkgname-doc
$pkgname-server
"
-source="https://github.com/grke/burp/archive/$pkgver.zip
+source="https://github.com/grke/burp/releases/download/$pkgver/burp-$pkgver.tar.bz2
burp.init
"
# Check is deactivated as it needs --enable-forks in check/check-dev
options="!check"
-prepare() {
- default_prepare
- autoreconf -vif
-}
-
build() {
./configure \
--prefix=/usr \
@@ -74,6 +66,7 @@ server() {
mkdir -p "$subpkgdir"/usr/share/burp/scripts
mv "$pkgdir"/usr/share/burp/scripts "$subpkgdir"/usr/share/burp
+ # shellcheck disable=2115
rm -rf "$pkgdir"/usr/share
mkdir -p "$subpkgdir"/etc/burp
@@ -90,6 +83,6 @@ server() {
}
sha512sums="
-e2f4a922dd93ed4312839bd8bc0070d09ad2626fdc7ed6b7917d05012254b6b5695f8fa9c5b1166fceb9aabee5b7019fe1943913d37ef2f022d881c5aaffd9d0 2.5.4.zip
+034478a3010eaf4fdbc45a77d37fa6dc18d8c7294af3ce2706ba1372e983e6acd7c7d98b345295b4791762a2ab9a636261e6946dfcaccac00663655f21e5cd52 burp-3.1.4.tar.bz2
ef98c1fb938063fee35cc5ae5ff9179a759b89b3c2629320ff4dffb4c42395cac1ad6b4615c6c1f34cc4be3ce54397b00f583ba5f3cd2fe8498902d4d9445e8f burp.init
"
diff --git a/testing/butane/APKBUILD b/testing/butane/APKBUILD
new file mode 100644
index 00000000000..67017b2460a
--- /dev/null
+++ b/testing/butane/APKBUILD
@@ -0,0 +1,28 @@
+# Maintainer:
+pkgname=butane
+pkgver=0.19.0
+pkgrel=3
+pkgdesc="Butane to Ignition config generator"
+url="https://github.com/coreos/butane"
+arch="all"
+license="Apache-2.0"
+makedepends="go"
+source="$pkgname-$pkgver.tar.gz::https://github.com/coreos/butane/archive/refs/tags/v$pkgver.tar.gz"
+
+build() {
+ go build -o butane \
+ -ldflags "-X github.com/coreos/butane/internal/version.Raw=v$pkgver"\
+ internal/main.go
+}
+
+check() {
+ go test ./...
+}
+
+package() {
+ install -Dm755 butane -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+5a4ff22160a01a87342c0bcacfc729fb43d8909191a7c7530d95d0a4db875c3621910b0ff6bd33705ac4346f9942cb48718aa1e149162b1c5a5b1480e215acf8 butane-0.19.0.tar.gz
+"
diff --git a/testing/bwrap-oci/APKBUILD b/testing/bwrap-oci/APKBUILD
index 4e1515bf931..8dadd9f3150 100644
--- a/testing/bwrap-oci/APKBUILD
+++ b/testing/bwrap-oci/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Shawn Johnson <sjohnson@axiomega.com>
pkgname=bwrap-oci
pkgver=0.2
-pkgrel=0
+pkgrel=1
pkgdesc="Run an OCI container using Bubblewrap"
url="https://github.com/projectatomic/bwrap-oci"
arch="all"
diff --git a/testing/bzip3/APKBUILD b/testing/bzip3/APKBUILD
deleted file mode 100644
index a20bebc113a..00000000000
--- a/testing/bzip3/APKBUILD
+++ /dev/null
@@ -1,40 +0,0 @@
-# Contributor: Grigory Kirillov <txgk@bk.ru>
-# Maintainer: Grigory Kirillov <txgk@bk.ru>
-pkgname=bzip3
-pkgver=1.1.3
-pkgrel=0
-pkgdesc="Better and stronger spiritual successor to BZip2"
-url="https://github.com/kspalaiologos/bzip3"
-arch="all"
-license="LGPL-3.0-only"
-# clang provides better performance https://gitlab.alpinelinux.org/alpine/aports/-/issues/13807
-makedepends="clang"
-subpackages="$pkgname-libs $pkgname-static $pkgname-dev"
-source="https://github.com/kspalaiologos/bzip3/releases/download/$pkgver/bzip3-$pkgver.tar.gz"
-
-build() {
- CC=clang ./configure \
- --target="$CTARGET" \
- --build="$CBUILD" \
- --host="$CHOST" \
- --prefix=/usr
- make all
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-libs() {
- pkgdesc="$pkgdesc (library)"
- mkdir -p "$subpkgdir"/usr/lib
- mv "$pkgdir"/usr/lib/libbzip3.so "$subpkgdir"/usr/lib/
-}
-
-sha512sums="
-77b95f906a261bcc06b1de3130be13fb4574c272e792197991784b3c32a6ad08849a044fc02f6c8261b7d920a97c847a3701b7dc3b4349fa008178d1f59b4bbd bzip3-1.1.3.tar.gz
-"
diff --git a/testing/c2rust/0001-link-clang-dynamic.patch b/testing/c2rust/0001-link-clang-dynamic.patch
new file mode 100644
index 00000000000..5c02fdca821
--- /dev/null
+++ b/testing/c2rust/0001-link-clang-dynamic.patch
@@ -0,0 +1,232 @@
+Link dynamically against libclang
+diff -rupN a/c2rust/Cargo.toml b/c2rust/Cargo.toml
+--- a/c2rust/Cargo.toml 2024-01-06 22:49:13.145706727 +0100
++++ b/c2rust/Cargo.toml 2024-01-06 22:49:56.895188304 +0100
+@@ -31,7 +31,3 @@ time-macros = "=0.2.6"
+
+ [build-dependencies]
+ c2rust-build-paths = { path = "../c2rust-build-paths", version = "0.18.0" }
+-
+-[features]
+-# Force static linking of LLVM
+-llvm-static = ["c2rust-transpile/llvm-static"]
+diff -rupN a/c2rust-ast-exporter/Cargo.toml b/c2rust-ast-exporter/Cargo.toml
+--- a/c2rust-ast-exporter/Cargo.toml 2024-01-06 22:49:13.132373552 +0100
++++ b/c2rust-ast-exporter/Cargo.toml 2024-01-06 22:50:53.591183135 +0100
+@@ -24,8 +24,3 @@ clang-sys = "1.3"
+ cmake = "0.1.49"
+ env_logger = "0.10"
+ c2rust-build-paths = { path = "../c2rust-build-paths", version = "0.18.0" }
+-
+-[features]
+-default = []
+-# Force static linking of LLVM
+-llvm-static = []
+diff -rupN a/c2rust-ast-exporter/build.rs b/c2rust-ast-exporter/build.rs
+--- a/c2rust-ast-exporter/build.rs 2024-01-06 22:49:13.132373552 +0100
++++ b/c2rust-ast-exporter/build.rs 2024-01-06 22:49:18.425644161 +0100
+@@ -147,55 +147,7 @@ fn build_native(llvm_info: &LLVMInfo) {
+
+ println!("cargo:rustc-link-search=native={}", llvm_lib_dir);
+
+- // Some distro's, including arch and Fedora, no longer build with
+- // BUILD_SHARED_LIBS=ON; programs linking to clang are required to
+- // link to libclang-cpp.so instead of individual libraries.
+- let use_libclang = if cfg!(target_os = "macos") {
+- // We hit an issue linking against the shared libraries for the homebrew
+- // version of LLVM 15 because they use a feature (opaque pointers) which
+- // are not understood by earlier versions of LLVM so we link against
+- // libclang unless static linking has been explicitly requested.
+- !cfg!(feature = "llvm-static")
+- } else {
+- // target_os = "linux"
+- let mut libclang_path = PathBuf::new();
+- libclang_path.push(llvm_lib_dir);
+- libclang_path.push("libclang-cpp.so");
+- libclang_path.exists()
+- };
+-
+- if use_libclang {
+- println!("cargo:rustc-link-lib=clang-cpp");
+- } else {
+- // Link against these Clang libs. The ordering here is important! Libraries
+- // must be listed before their dependencies when statically linking.
+- let mut clang_libs = vec![
+- "clangTooling",
+- "clangFrontend",
+- "clangASTMatchers",
+- "clangParse",
+- "clangSerialization",
+- "clangSema",
+- "clangEdit",
+- "clangAnalysis",
+- "clangDriver",
+- "clangFormat",
+- "clangToolingCore",
+- "clangAST",
+- "clangRewrite",
+- "clangLex",
+- "clangBasic",
+- ];
+- if llvm_info.llvm_major_version >= 15 {
+- // insert after clangSema
+- let sema_pos = clang_libs.iter().position(|&r| r == "clangSema").unwrap();
+- clang_libs.insert(sema_pos + 1, "clangSupport");
+- }
+-
+- for lib in &clang_libs {
+- println!("cargo:rustc-link-lib={}", lib);
+- }
+- }
++ println!("cargo:rustc-link-lib=clang-cpp");
+
+ for lib in &llvm_info.libs {
+ // IMPORTANT: We cannot specify static= or dylib= here because rustc
+diff -rupN a/c2rust-ast-exporter/src/CMakeLists.txt b/c2rust-ast-exporter/src/CMakeLists.txt
+--- a/c2rust-ast-exporter/src/CMakeLists.txt 2024-01-06 22:49:13.132373552 +0100
++++ b/c2rust-ast-exporter/src/CMakeLists.txt 2024-01-06 22:49:18.425644161 +0100
+@@ -95,11 +95,7 @@ set_target_properties(c2rust-ast-exporte
+ # PRIVATE was added to make c2rust-ast-exporter build with LLVM 6.0. Keyword
+ # description: https://cmake.org/pipermail/cmake/2016-May/063400.html
+ target_link_libraries(c2rust-ast-exporter PRIVATE
+- clangAST
+- clangFrontend
+- clangTooling
+- clangBasic
+- clangASTMatchers
++ clang-cpp
+ tinycbor
+ )
+
+diff -rupN a/c2rust-ast-exporter/src/CMakeLists.txt.orig b/c2rust-ast-exporter/src/CMakeLists.txt.orig
+--- a/c2rust-ast-exporter/src/CMakeLists.txt.orig 1970-01-01 01:00:00.000000000 +0100
++++ b/c2rust-ast-exporter/src/CMakeLists.txt.orig 2023-05-22 22:14:35.000000000 +0200
+@@ -0,0 +1,117 @@
++cmake_minimum_required(VERSION 3.4.3)
++project(ASTExporter)
++
++#################################################
++# TinyCBOR #
++#################################################
++
++set(TINYCBOR_REPO "https://github.com/intel/tinycbor.git" CACHE STRING "tinycbor git repo URL")
++
++# v0.6.3 tag, but using the commit hash instead (of the tarball hash) for integrity checks
++# unlike a .tar.gz MD5 hash, this SHA-1 commit hash should stay stable regardless of compression/archiving
++# (GitHub has changed this), and still retains the integrity check
++set(TINYCBOR_TAG "d393c16f3eb30d0c47e6f9d92db62272f0ec4dc7" CACHE STRING "tinycbor git tag/branch/commit hash")
++
++set(TINYCBOR_PREFIX "${CMAKE_BINARY_DIR}/tinycbor" CACHE STRING "tinycbor install prefix")
++
++if(CMAKE_SYSTEM_NAME STREQUAL "FreeBSD")
++ set(MAKE "gmake")
++else()
++ set(MAKE "make")
++endif()
++
++include(ExternalProject)
++ExternalProject_Add(tinycbor_build
++ PREFIX ${TINYCBOR_PREFIX}
++ INSTALL_DIR ${CMAKE_BINARY_DIR}
++ GIT_REPOSITORY ${TINYCBOR_REPO}
++ GIT_TAG ${TINYCBOR_TAG}
++ # the fd redirection here fails when the build run inside Cargo.
++ # patch from upstream:
++ # https://github.com/intel/tinycbor/commit/6176e0a28d7c5ef3a5e9cbd02521999c412de72c
++ PATCH_COMMAND patch --forward -p1 < ${CMAKE_CURRENT_SOURCE_DIR}/tinycbor_fix_build.patch || true
++ CONFIGURE_COMMAND ${MAKE} .config && cat ${CMAKE_CURRENT_SOURCE_DIR}/tinycbor.config >> .config
++ BUILD_COMMAND ${MAKE} --quiet prefix=<INSTALL_DIR> CFLAGS=-fPIC
++ INSTALL_COMMAND ${MAKE} --quiet prefix=<INSTALL_DIR> install
++ BUILD_IN_SOURCE 1
++ BUILD_BYPRODUCTS ${CMAKE_BINARY_DIR}/lib/libtinycbor.a
++)
++
++include_directories(${CMAKE_BINARY_DIR}/include)
++
++add_library(tinycbor STATIC IMPORTED)
++set_target_properties(tinycbor PROPERTIES IMPORTED_LOCATION ${CMAKE_BINARY_DIR}/lib/libtinycbor.a)
++add_dependencies(tinycbor tinycbor_build)
++
++set(AST_EXPORTER_SRCS
++ AstExporter.cpp
++ FloatingLexer.cpp
++ ExportResult.cpp
++ )
++
++set(AST_EXPORTER_BIN_SRCS
++ ${AST_EXPORTER_SRCS}
++ Main.cpp
++ )
++
++find_package(LLVM REQUIRED CONFIG)
++
++# Debian and Ubuntu's clang cmake files are broken, so we can't require the
++# package here. We already have to manually order the link against the clang
++# libs in build.rs, so that's not so bad.
++find_package(Clang CONFIG)
++
++include_directories(${LLVM_INCLUDE_DIRS} ${CLANG_INCLUDE_DIRS})
++add_definitions(${LLVM_DEFINITIONS} ${CLANG_DEFINITIONS})
++
++if (DEFINED CLANG_INSTALL_PREFIX)
++ add_definitions(-DCLANG_BIN_PATH="${CLANG_INSTALL_PREFIX}/bin")
++elseif(DEFINED LLVM_INSTALL_PREFIX)
++ add_definitions(-DCLANG_BIN_PATH="${LLVM_INSTALL_PREFIX}/bin")
++elseif(DEFINED LLVM_TOOLS_BINARY_DIR)
++ add_definitions(-DCLANG_BIN_PATH="${LLVM_TOOLS_BINARY_DIR}")
++else()
++ message(FATAL_ERROR "Cannot find path to clang binary")
++endif()
++add_definitions(-DCLANG_VERSION_STRING="${LLVM_PACKAGE_VERSION}")
++
++set(LLVM_LINK_COMPONENTS support)
++
++# LLVM is not always built with RTTI, we don't need it either.
++set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-rtti")
++
++# The executable
++add_executable(c2rust-ast-exporter ${AST_EXPORTER_BIN_SRCS})
++
++# The library
++add_library(clangAstExporter STATIC ${AST_EXPORTER_SRCS})
++
++add_definitions(-DCLANG_LIBDIR_SUFFIX="${LLVM_LIBDIR_SUFFIX}")
++
++set_target_properties(c2rust-ast-exporter PROPERTIES
++ CXX_STANDARD 14
++ CXX_EXTENSIONS OFF
++ )
++# PRIVATE was added to make c2rust-ast-exporter build with LLVM 6.0. Keyword
++# description: https://cmake.org/pipermail/cmake/2016-May/063400.html
++target_link_libraries(c2rust-ast-exporter PRIVATE
++ clangAST
++ clangFrontend
++ clangTooling
++ clangBasic
++ clangASTMatchers
++ tinycbor
++ )
++
++set_target_properties(clangAstExporter PROPERTIES
++ CXX_STANDARD 17 # will decay to 14 if compiler doesn't support c++17
++ CXX_EXTENSIONS OFF
++ )
++target_link_libraries(clangAstExporter PRIVATE
++ clangAST
++ clangFrontend
++ clangTooling
++ clangBasic
++ clangASTMatchers
++ tinycbor
++ )
+diff -rupN a/c2rust-transpile/Cargo.toml b/c2rust-transpile/Cargo.toml
+--- a/c2rust-transpile/Cargo.toml 2024-01-06 22:49:13.145706727 +0100
++++ b/c2rust-transpile/Cargo.toml 2024-01-06 22:49:18.425644161 +0100
+@@ -38,7 +38,3 @@ smallvec = "1.0"
+ strum = "0.24"
+ strum_macros = "0.24"
+ syn = { version = "1.0", features = ["full", "extra-traits", "parsing", "printing"]}
+-
+-[features]
+-# Force static linking of LLVM
+-llvm-static = ["c2rust-ast-exporter/llvm-static"]
diff --git a/testing/c2rust/0002-use-system-tinycbor.patch b/testing/c2rust/0002-use-system-tinycbor.patch
new file mode 100644
index 00000000000..808c181aadb
--- /dev/null
+++ b/testing/c2rust/0002-use-system-tinycbor.patch
@@ -0,0 +1,64 @@
+Use system's tinycbor instead of vendoring it in
+diff -rupN a/c2rust-ast-exporter/build.rs b/c2rust-ast-exporter/build.rs
+--- a/c2rust-ast-exporter/build.rs 2023-05-22 22:14:35.000000000 +0200
++++ b/c2rust-ast-exporter/build.rs 2024-01-06 22:54:06.039088094 +0100
+@@ -142,7 +142,7 @@ fn build_native(llvm_info: &LLVMInfo) {
+ };
+
+ // Statically link against 'clangAstExporter' which requires 'tinycbor'
+- println!("cargo:rustc-link-lib=static=tinycbor");
++ println!("cargo:rustc-link-lib=dylib=tinycbor");
+ println!("cargo:rustc-link-lib=static=clangAstExporter");
+
+ println!("cargo:rustc-link-search=native={}", llvm_lib_dir);
+diff -rupN a/c2rust-ast-exporter/src/CMakeLists.txt b/c2rust-ast-exporter/src/CMakeLists.txt
+--- a/c2rust-ast-exporter/src/CMakeLists.txt 2023-05-22 22:14:35.000000000 +0200
++++ b/c2rust-ast-exporter/src/CMakeLists.txt 2024-01-06 22:55:39.124799597 +0100
+@@ -5,14 +5,9 @@ project(ASTExporter)
+ # TinyCBOR #
+ #################################################
+
+-set(TINYCBOR_REPO "https://github.com/intel/tinycbor.git" CACHE STRING "tinycbor git repo URL")
+-
+-# v0.6.3 tag, but using the commit hash instead (of the tarball hash) for integrity checks
+-# unlike a .tar.gz MD5 hash, this SHA-1 commit hash should stay stable regardless of compression/archiving
+-# (GitHub has changed this), and still retains the integrity check
+-set(TINYCBOR_TAG "d393c16f3eb30d0c47e6f9d92db62272f0ec4dc7" CACHE STRING "tinycbor git tag/branch/commit hash")
+-
+-set(TINYCBOR_PREFIX "${CMAKE_BINARY_DIR}/tinycbor" CACHE STRING "tinycbor install prefix")
++include(FindPkgConfig)
++pkg_search_module(TINYCBOR REQUIRED tinycbor)
++include_directories(${TINYCBOR_INCLUDE_DIRS})
+
+ if(CMAKE_SYSTEM_NAME STREQUAL "FreeBSD")
+ set(MAKE "gmake")
+@@ -20,29 +15,6 @@ else()
+ set(MAKE "make")
+ endif()
+
+-include(ExternalProject)
+-ExternalProject_Add(tinycbor_build
+- PREFIX ${TINYCBOR_PREFIX}
+- INSTALL_DIR ${CMAKE_BINARY_DIR}
+- GIT_REPOSITORY ${TINYCBOR_REPO}
+- GIT_TAG ${TINYCBOR_TAG}
+- # the fd redirection here fails when the build run inside Cargo.
+- # patch from upstream:
+- # https://github.com/intel/tinycbor/commit/6176e0a28d7c5ef3a5e9cbd02521999c412de72c
+- PATCH_COMMAND patch --forward -p1 < ${CMAKE_CURRENT_SOURCE_DIR}/tinycbor_fix_build.patch || true
+- CONFIGURE_COMMAND ${MAKE} .config && cat ${CMAKE_CURRENT_SOURCE_DIR}/tinycbor.config >> .config
+- BUILD_COMMAND ${MAKE} --quiet prefix=<INSTALL_DIR> CFLAGS=-fPIC
+- INSTALL_COMMAND ${MAKE} --quiet prefix=<INSTALL_DIR> install
+- BUILD_IN_SOURCE 1
+- BUILD_BYPRODUCTS ${CMAKE_BINARY_DIR}/lib/libtinycbor.a
+-)
+-
+-include_directories(${CMAKE_BINARY_DIR}/include)
+-
+-add_library(tinycbor STATIC IMPORTED)
+-set_target_properties(tinycbor PROPERTIES IMPORTED_LOCATION ${CMAKE_BINARY_DIR}/lib/libtinycbor.a)
+-add_dependencies(tinycbor tinycbor_build)
+-
+ set(AST_EXPORTER_SRCS
+ AstExporter.cpp
+ FloatingLexer.cpp
diff --git a/testing/c2rust/APKBUILD b/testing/c2rust/APKBUILD
new file mode 100644
index 00000000000..3ac6780ff14
--- /dev/null
+++ b/testing/c2rust/APKBUILD
@@ -0,0 +1,80 @@
+# Contributor: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
+# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
+pkgname=c2rust
+pkgver=0.18.0
+pkgrel=1
+pkgdesc="Transpile C99-compliant code to (unsafe) Rust code"
+url="https://github.com/immunant/c2rust"
+# riscv64: libc crate sup
+# s390x: missing big endian support in c2rust-bitfields-derive
+# ppc64le: tinycbor not packaged due to segfault in unit tests
+arch="all !riscv64 !s390x !ppc64le"
+license="BSD-3-Clause"
+# Note: LLVM's CMake hooks check for presence of static libs and complain if
+# they are missing. So they are needed for building even when linking
+# dynamically
+makedepends="
+ cargo
+ cargo-auditable
+ clang17-dev
+ clang17-static
+ cmake
+ libxml2-dev
+ llvm17-dev
+ llvm17-gtest
+ llvm17-static
+ ncurses-dev
+ openssl-dev
+ rust
+ tinycbor-dev
+ "
+checkdepends="
+ python3
+ py3-plumbum
+ py3-toml
+ "
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/immunant/c2rust/archive/refs/tags/v$pkgver.tar.gz
+ 0001-link-clang-dynamic.patch
+ 0002-use-system-tinycbor.patch
+ df42b55eae9ecfd4380004a513a10526ef8776cf.patch
+ "
+
+# Unit tests all fail using rust 1.72.1 with:
+#
+# error[E0554]: #![feature] may not be used on the stable release channel
+#
+# Eventually, unit tests should also run on stable rust
+options="!check"
+
+export CARGO_PROFILE_RELEASE_LTO="true"
+export CARGO_PROFILE_RELEASE_PANIC="abort"
+export CARGO_PROFILE_RELEASE_OPT_LEVEL="s"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen --package c2rust
+}
+
+check() {
+ ./scripts/test_translator.py tests
+}
+
+package() {
+ mkdir -p "$pkgdir"/usr/bin "$pkgdir"/usr/lib
+ for bin in c2rust c2rust-transpile; do
+ install -D -m755 target/release/$bin -t "$pkgdir"/usr/bin/
+ done
+}
+
+sha512sums="
+16033110923d22d12c55bdd13aacbeb05b95a54b93b8eabf478b111e99fba6c523102e871f4812d35152a9c02fae39ee25307acdfbe6d7bef23113f5c9db8dde c2rust-0.18.0.tar.gz
+3bd7def407277482a33c5074388a10afadf1b40b3f09e2fc87e9942a802b65ca2ee356be56e4baa66d669c57dcfd52ef27d59e740f0c735eb09c03fbf21015bb 0001-link-clang-dynamic.patch
+be29e0f4576301b64f5fc38684ddb90e469526be4ce8ef428feee0d5962748c428045dcb81635ff92e132daebb1fa1b338a81ce1ea13d02b802ec057d0653b93 0002-use-system-tinycbor.patch
+34764bd19f927bff11e86a26f6826b0875abebfb78256d895d36e04cf16f9a98ac8672ba7de0891613112e3aef724c501045ab303093c3fcad135590c82f3506 df42b55eae9ecfd4380004a513a10526ef8776cf.patch
+"
diff --git a/testing/c2rust/df42b55eae9ecfd4380004a513a10526ef8776cf.patch b/testing/c2rust/df42b55eae9ecfd4380004a513a10526ef8776cf.patch
new file mode 100644
index 00000000000..83d0b8796ae
--- /dev/null
+++ b/testing/c2rust/df42b55eae9ecfd4380004a513a10526ef8776cf.patch
@@ -0,0 +1,183 @@
+From df42b55eae9ecfd4380004a513a10526ef8776cf Mon Sep 17 00:00:00 2001
+From: Per Larsen <perl@immunant.com>
+Date: Fri, 3 Nov 2023 16:18:56 -0700
+Subject: [PATCH] Add support for LLVM17. Closes #1039.
+
+Also adds extremely limited support for ARMs scalable vector
+extension types such that Apple Silicon macs can run unit tests..
+---
+ c2rust-ast-exporter/src/AstExporter.cpp | 27 ++++++++++++++++++++++--
+ c2rust-ast-exporter/src/ast_tags.hpp | 6 ++++++
+ c2rust-transpile/src/c_ast/conversion.rs | 9 ++++++++
+ c2rust-transpile/src/c_ast/iterators.rs | 2 +-
+ c2rust-transpile/src/c_ast/mod.rs | 4 ++++
+ c2rust-transpile/src/translator/mod.rs | 3 +++
+ 6 files changed, 48 insertions(+), 3 deletions(-)
+
+diff --git a/c2rust-ast-exporter/src/AstExporter.cpp b/c2rust-ast-exporter/src/AstExporter.cpp
+index b58308e51f..fc6e78aec1 100644
+--- a/c2rust-ast-exporter/src/AstExporter.cpp
++++ b/c2rust-ast-exporter/src/AstExporter.cpp
+@@ -85,6 +85,7 @@ std::string make_realpath(std::string const &path) {
+ }
+
+ // Helper to smooth out differences between versions of clang
++#if CLANG_VERSION_MAJOR < 17
+ Optional<APSInt> getIntegerConstantExpr(const Expr &E, const ASTContext &Ctx) {
+ #if CLANG_VERSION_MAJOR < 12
+ APSInt value;
+@@ -96,6 +97,13 @@ Optional<APSInt> getIntegerConstantExpr(const Expr &E, const ASTContext &Ctx) {
+ return E.getIntegerConstantExpr(Ctx);
+ #endif // CLANG_VERSION_MAJOR
+ }
++#else
++#include <optional>
++std::optional<APSInt> getIntegerConstantExpr(const Expr &E,
++ const ASTContext &Ctx) {
++ return E.getIntegerConstantExpr(Ctx);
++}
++#endif // CLANG_VERSION_MAJOR
+ } // namespace
+
+ class TranslateASTVisitor;
+@@ -363,7 +371,7 @@ class TypeEncoder final : public TypeVisitor<TypeEncoder> {
+ }
+ }();
+ // All the SVE types present in Clang 10 are 128-bit vectors
+- // (see `AArch64SVEACLETypes.def`), so we can divide 128
++ // (see `AArch64SVEACLETypes.def`), so we can divide 128
+ // by their element size to get element count.
+ auto ElemCount = 128 / Context->getTypeSize(ElemType);
+ #endif // CLANG_VERSION_MAJOR >= 11
+@@ -403,7 +411,7 @@ class TypeEncoder final : public TypeVisitor<TypeEncoder> {
+ // Constructed as a consequence of the conversion of
+ // built-in to normal vector types.
+ case BuiltinType::Float16: return TagHalf;
+- case BuiltinType::Half: return TagHalf;
++ case BuiltinType::Half: return TagHalf;
+ #if CLANG_VERSION_MAJOR >= 11
+ case BuiltinType::BFloat16: return TagBFloat16;
+ #endif
+@@ -418,6 +426,12 @@ class TypeEncoder final : public TypeVisitor<TypeEncoder> {
+ case BuiltinType::Bool: return TagBool;
+ case BuiltinType::WChar_S: return TagSWChar;
+ case BuiltinType::WChar_U: return TagUWChar;
++#if CLANG_VERSION_MAJOR >= 16
++ case BuiltinType::SveCount: return TagSveCount;
++ case BuiltinType::SveBool: return TagSveBool;
++ case BuiltinType::SveBoolx2: return TagSveBoolx2;
++ case BuiltinType::SveBoolx4: return TagSveBoolx4;
++#endif
+ }
+ }();
+
+@@ -1499,7 +1513,11 @@ class TranslateASTVisitor final
+ cbor_encoder_create_array(&array, &entry, 2);
+ cbor_encode_int(&entry, 2);
+ cbor_encode_uint(&entry,
++#if CLANG_VERSION_MAJOR < 17
+ uintptr_t(designator.getField()));
++#else
++ uintptr_t(designator.getFieldDecl()));
++#endif // CLANG_VERSION_MAJOR
+ } else if (designator.isArrayRangeDesignator()) {
+ cbor_encoder_create_array(&array, &entry, 3);
+ cbor_encode_int(&entry, 3);
+@@ -2300,6 +2318,11 @@ class TranslateASTVisitor final
+ case clang::StringLiteral::StringKind::UTF32:
+ cbor_encode_uint(array, StringTypeTag::TagUTF32);
+ break;
++#if CLANG_VERSION_MAJOR >= 17
++ case clang::StringLiteral::StringKind::Unevaluated:
++ cbor_encode_uint(array, StringTypeTag::TagUnevaluated);
++ break;
++#endif // CLANG_VERSION_MAJOR
+ }
+ // The size of the wchar_t type in C is implementation defined
+ cbor_encode_uint(array, SL->getCharByteWidth());
+diff --git a/c2rust-ast-exporter/src/ast_tags.hpp b/c2rust-ast-exporter/src/ast_tags.hpp
+index ab6e87344b..2027957d5f 100644
+--- a/c2rust-ast-exporter/src/ast_tags.hpp
++++ b/c2rust-ast-exporter/src/ast_tags.hpp
+@@ -142,6 +142,11 @@ enum TypeTag {
+ TagComplexType,
+ TagHalf,
+ TagBFloat16,
++
++ TagSveCount,
++ TagSveBool,
++ TagSveBoolx2,
++ TagSveBoolx4,
+ };
+
+ enum StringTypeTag {
+@@ -150,6 +155,7 @@ enum StringTypeTag {
+ TagUTF8,
+ TagUTF16,
+ TagUTF32,
++ TagUnevaluated,
+ };
+
+ // From `clang/Basic/TargetInfo.h`
+diff --git a/c2rust-transpile/src/c_ast/conversion.rs b/c2rust-transpile/src/c_ast/conversion.rs
+index 26033bf0ae..3fe769fca5 100644
+--- a/c2rust-transpile/src/c_ast/conversion.rs
++++ b/c2rust-transpile/src/c_ast/conversion.rs
+@@ -804,6 +804,15 @@ impl ConversionContext {
+ self.processed_nodes.insert(new_id, OTHER_TYPE);
+ }
+
++ TypeTag::TagSveCount
++ | TypeTag::TagSveBool
++ | TypeTag::TagSveBoolx2
++ | TypeTag::TagSveBoolx4 => {
++ let ty = CTypeKind::UnhandledSveType;
++ self.add_type(new_id, not_located(ty));
++ self.processed_nodes.insert(new_id, OTHER_TYPE);
++ }
++
+ TypeTag::TagVectorType => {
+ let elt =
+ from_value(ty_node.extras[0].clone()).expect("Vector child not found");
+diff --git a/c2rust-transpile/src/c_ast/iterators.rs b/c2rust-transpile/src/c_ast/iterators.rs
+index 6817cf1e1a..22ba07e71c 100644
+--- a/c2rust-transpile/src/c_ast/iterators.rs
++++ b/c2rust-transpile/src/c_ast/iterators.rs
+@@ -285,7 +285,7 @@ fn immediate_type_children(kind: &CTypeKind) -> Vec<SomeId> {
+ TypeOfExpr(e) => intos![e],
+ Void | Bool | Short | Int | Long | LongLong | UShort | UInt | ULong | ULongLong | SChar
+ | UChar | Char | Double | LongDouble | Float | Int128 | UInt128 | BuiltinFn | Half
+- | BFloat16 => {
++ | BFloat16 | UnhandledSveType => {
+ vec![]
+ }
+
+diff --git a/c2rust-transpile/src/c_ast/mod.rs b/c2rust-transpile/src/c_ast/mod.rs
+index 56b067f3e8..182b795812 100644
+--- a/c2rust-transpile/src/c_ast/mod.rs
++++ b/c2rust-transpile/src/c_ast/mod.rs
+@@ -1672,6 +1672,10 @@ pub enum CTypeKind {
+
+ Half,
+ BFloat16,
++
++ // ARM Scalable Vector Extention types
++ // TODO: represent all the individual types in AArch64SVEACLETypes.def
++ UnhandledSveType,
+ }
+
+ impl CTypeKind {
+diff --git a/c2rust-transpile/src/translator/mod.rs b/c2rust-transpile/src/translator/mod.rs
+index 91144d0f29..99dca9734e 100644
+--- a/c2rust-transpile/src/translator/mod.rs
++++ b/c2rust-transpile/src/translator/mod.rs
+@@ -4921,6 +4921,9 @@ impl<'c> Translation<'c> {
+ // Handled in `import_simd_typedef`
+ }
+ TypeOfExpr(_) | BuiltinFn => {}
++ UnhandledSveType => {
++ // TODO: handle SVE types
++ }
+ }
+ }
+
diff --git a/testing/cachefilesd-inotify/APKBUILD b/testing/cachefilesd-inotify/APKBUILD
deleted file mode 100644
index 71a7467fb95..00000000000
--- a/testing/cachefilesd-inotify/APKBUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-# Contributor: Jake Buchholz <tomalok@gmail.com>
-# Maintainer: Jake Buchholz <tomalok@gmail.com>
-pkgname=cachefilesd-inotify
-pkgver=0.11.0
-pkgrel=0
-pkgdesc="Userspace daemon acting as a backend for FS-Cache (uses INOTIFY instead of DNOTIFY)"
-url="https://gitlab.com/tomalok/cachefilesd-inotify"
-arch="all"
-license="GPL-2.0-or-later"
-depends="attr"
-makedepends="rpm file"
-provides="cachefilesd=$pkgver-r$pkgrel"
-replaces="cachefilesd"
-options="!check"
-subpackages="$pkgname-doc $pkgname-openrc"
-source="https://gitlab.com/tomalok/cachefilesd-inotify/-/archive/$pkgver/$pkgname-$pkgver.tar.bz2
- cachefilesd.initd"
-
-build() {
- sed -i "s#/sbin/#/usr/bin/#g" cachefilesd.c
- sed -i "s#/sbin/#/usr/bin/#g" cachefilesd.service
- sed -i "s/^secctx/#secctx/g" cachefilesd.conf
- make CFLAGS="$CFLAGS"
-}
-
-package() {
- make DESTDIR="$pkgdir" SBINDIR=/usr/bin install
- mkdir -p "$pkgdir"/var/cache/fscache
- install -D -m 755 "$srcdir/cachefilesd.initd" "$pkgdir/etc/init.d/cachefilesd"
-}
-
-sha512sums="f283d0d2357da648515225a5162b53a4603fc466d291a68c4833a39ce1aed2784f9734a23ebcb47d1efbea0d3659733f9c1d8a0137e6e98281e6f4085328d049 cachefilesd-inotify-0.11.0.tar.bz2
-854b66470ace24caf24e979de3c1c12a426972bc745823b3a0f47ac80811ac5da4fa6a249e65386acdec2e7561178bb1d2c4b301a2178458f10496bb8eac5b2f cachefilesd.initd"
diff --git a/testing/cachefilesd-inotify/cachefilesd.initd b/testing/cachefilesd-inotify/cachefilesd.initd
deleted file mode 100644
index 589faa7d57a..00000000000
--- a/testing/cachefilesd-inotify/cachefilesd.initd
+++ /dev/null
@@ -1,53 +0,0 @@
-#!/sbin/openrc-run
-# Copyright 1999-2010 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-fs/cachefilesd/files/cachefilesd.init,v 1.2 2010/09/20 08:45:22 jlec Exp $
-
-depend() {
- need localmount
- use logger
- before nfsmount
-}
-
-checkxattr() {
- local testpath testfile ret
- testpath=$(awk '/^[[:space:]]*dir/ {print $2}' /etc/cachefilesd.conf)
- testfile="${testpath}/.tmp-xattr-test.cachefilesd"
- touch "${testfile}"
- # creates a file in the testpath and tries to set an attribute on it to check
- # if the support is available
- attr -s test -V xattr "${testfile}" 2>&1 > /dev/null
- ret=$?
- rm -f "${testfile}"
- [ ${ret} -ne 0 ] && eerror "xattr support missing on the ${testpath} filesystem"
- return ${ret}
-}
-
-start() {
- ebegin "Starting cachefilesd"
- checkxattr || return $?
- # check if the cachefiles modules is loaded (or builtin)
- if [ ! -c /dev/cachefiles ] ; then
- local ret
- einfo "/dev/cachefiles doesn't exist, trying to modprobe cachefiles"
- modprobe cachefiles
- ret=$?
- if [ $ret -ne 0 ] ; then
- eerror "cachefiles modules cannot be loaded so cachefilesd "
- eerror "cannot be started, aborting. Did you build fscache in your "
- eerror "kernel? Note that you need a 2.6.30 or better kernel"
- return $ret
- fi
- fi
- start-stop-daemon --start --pidfile /var/run/cachefilesd.pid --exec /usr/bin/cachefilesd -- ${OPTIONS}
- eend $? "Failed to start cachefilesd. Check the system log to see the error"
-
-}
-
-stop() {
- ebegin "Stopping cachefilesd"
- start-stop-daemon --stop --exec /usr/bin/cachefilesd --pidfile /var/run/cachefilesd.pid
- eend $? "Failed to stop cachefilesd"
-}
-
-
diff --git a/testing/cadence/APKBUILD b/testing/cadence/APKBUILD
index 44320032a69..c4e2bf6a328 100644
--- a/testing/cadence/APKBUILD
+++ b/testing/cadence/APKBUILD
@@ -1,8 +1,8 @@
-# Contributor: Kevin Thomas <me@kevinthomas.dev>
-# Maintainer: Kevin Thomas <me@kevinthomas.dev>
+# Contributor: Kay Thomas <kaythomas@pm.me>
+# Maintainer: Kay Thomas <kaythomas@pm.me>
pkgname=cadence
-pkgver=0.9.1
-pkgrel=1
+pkgver=0.9.2
+pkgrel=0
pkgdesc="Collection of tools useful for audio production"
url="https://kx.studio/Applications:Cadence"
# py3-qt5 not packaged on armhf
@@ -18,9 +18,7 @@ depends="
makedepends="
qt5-qtbase-dev
"
-source="https://github.com/falkTX/Cadence/archive/v$pkgver/cadence-$pkgver.tar.gz
- fix-QPainterPath.patch
- "
+source="https://github.com/falkTX/Cadence/archive/v$pkgver/cadence-$pkgver.tar.gz"
options="!check" # No testsuite
builddir="$srcdir/Cadence-$pkgver"
@@ -41,6 +39,5 @@ package() {
}
sha512sums="
-daa9df947f0198522172451ec3d2a0e138de5245d4fa849c89ae17fc141388467bdb2e5b1ed191d1db372f4d1c02a8f1c32458c20b893d413af8fdce72ee9219 cadence-0.9.1.tar.gz
-07cf8055f89b5a75ab817896f4ec68e8b1e21cf3a8f7a4f13cd1ed9a9ef1a669be624201daeacf6d13e7ee6f922b16ef650d402640710a971cd05e87b6b92389 fix-QPainterPath.patch
+d8a1b52c361e3e18a193d1c283bb69abe18ce667b554fc53cb9b752d92747269145144ae512895ffbb5df76efe8671cfc0782f29e59d0d7cd3d97c97240bdecf cadence-0.9.2.tar.gz
"
diff --git a/testing/cadence/fix-QPainterPath.patch b/testing/cadence/fix-QPainterPath.patch
deleted file mode 100644
index 88efbdaad65..00000000000
--- a/testing/cadence/fix-QPainterPath.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 887c3fde037c79f0f24bfeb8bc96e704fb2afd25 Mon Sep 17 00:00:00 2001
-From: Alex Tsitsimpis <alex.tsitsimpis@gmail.com>
-Date: Thu, 4 Jun 2020 12:49:40 +0300
-Subject: [PATCH] Fix build with Qt 5.15+
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Building with Qt 5.15 failed with the following error:
-
-../widgets/pixmapdial.cpp:231:26: error: aggregate ‘QPainterPath ballPath’ has incomplete type and cannot be defined
- 231 | QPainterPath ballPath;
- | ^~~~~~~~
-../widgets/pixmapdial.cpp:278:26: error: aggregate ‘QPainterPath ballPath’ has incomplete type and cannot be defined
- 278 | QPainterPath ballPath;
- | ^~~~~~~~
-
-Signed-off-by: Alex Tsitsimpis <alex.tsitsimpis@gmail.com>
----
- c++/widgets/pixmapdial.cpp | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/c++/widgets/pixmapdial.cpp b/c++/widgets/pixmapdial.cpp
-index 37dcffd7..0b5e0f51 100644
---- a/c++/widgets/pixmapdial.cpp
-+++ b/c++/widgets/pixmapdial.cpp
-@@ -22,6 +22,7 @@
- #include <QtCore/QTimer>
- #include <QtGui/QPainter>
- #include <QtGui/QPaintEvent>
-+#include <QtGui/QPainterPath>
-
- PixmapDial::PixmapDial(QWidget* parent)
- : QDial(parent),
diff --git a/testing/caffeine-ng/APKBUILD b/testing/caffeine-ng/APKBUILD
index d89c2f703fd..81cf2d5cd26 100644
--- a/testing/caffeine-ng/APKBUILD
+++ b/testing/caffeine-ng/APKBUILD
@@ -1,25 +1,53 @@
# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
pkgname=caffeine-ng
-pkgver=3.5.1
-pkgrel=2
+pkgver=4.2.0
+pkgrel=1
pkgdesc="Status bar application able to temporarily inhibit the screensaver and sleep mode"
-url="https://github.com/caffeine-ng/caffeine-ng"
+url="https://codeberg.org/WhyNotHugo/caffeine-ng"
arch="noarch"
license="GPL-3.0-or-later"
-depends="py3-gobject3 py3-xdg py3-dbus py3-docopt py3-setproctitle
- libnotify gtk+3.0 xdg-utils py3-ewmh
+depends="
+ gtk+3.0
+ libayatana-appindicator
+ libnotify
+ py3-click
+ py3-dbus
+ py3-ewmh
+ py3-gobject3
+ py3-pulsectl
+ py3-setproctitle
+ xdg-utils
"
-makedepends="py3-setuptools py3-setuptools_scm"
-subpackages="$pkgname-doc"
-options="!check" # No testsuite
-source="https://github.com/caffeine-ng/caffeine-ng/releases/download/v$pkgver/caffeine-ng-$pkgver.tar.gz"
+makedepends="
+ gtk+3.0-dev
+ libayatana-appindicator-dev
+ libnotify-dev
+ meson
+ py3-dbus-dev
+ py3-gobject3-dev
+ python3-dev
+ scdoc
+ "
+subpackages="$pkgname-doc $pkgname-lang"
+source="caffeine-ng-$pkgver.tar.gz::https://codeberg.org/attachments/6da08199-604f-4f0f-b9dd-c50efe587965
+ mandir.patch
+ "
+builddir="$srcdir/caffeine-ng-v4.2.0-0-g5027f55"
build() {
- python3 setup.py build
+ abuild-meson . output
+ meson compile -C output
+}
+
+check() {
+ meson test --no-rebuild --print-errorlogs -C output
}
package() {
- python3 setup.py install --root="$pkgdir"
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
}
-sha512sums="d37a4ddfefca3ed883a7aade0c25ef9f1bf475d27cb43e7c64ee6f946a9157727c5527ad2c06fb39bac6e74344f523c1d9f2896c301b33cd3c8c6e1ed52a99fb caffeine-ng-3.5.1.tar.gz"
+sha512sums="
+ff732b56baa96f9f8eb0d05b502c56612cbd5a9c48c65820724c3abbb9ad4e2770997285cb0e4a1617cc5c70c8881a015451b4c00a6513daada97b93920a2cf8 caffeine-ng-4.2.0.tar.gz
+b19bc62609dc77fb8da6ca6691fb2edfe99b1444119ecda15cad8bb79d832802e917249251f1d50127b394f80a443b3ae722a9a076f21a3563d1c007d833af09 mandir.patch
+"
diff --git a/testing/caffeine-ng/mandir.patch b/testing/caffeine-ng/mandir.patch
new file mode 100644
index 00000000000..262d1203b7e
--- /dev/null
+++ b/testing/caffeine-ng/mandir.patch
@@ -0,0 +1,13 @@
+diff --git a/meson.build b/meson.build
+index 1f84fe8..423aed7 100644
+--- a/meson.build
++++ b/meson.build
+@@ -103,7 +103,7 @@ custom_target(
+ feed: true,
+ capture: true,
+ install: true,
+- install_dir: join_paths(mandir, 'man1/caffeine')
++ install_dir: join_paths(mandir, 'man1')
+ )
+
+ install_subdir('caffeine/assets/glade',
diff --git a/testing/cagebreak/APKBUILD b/testing/cagebreak/APKBUILD
deleted file mode 100644
index 99987202b48..00000000000
--- a/testing/cagebreak/APKBUILD
+++ /dev/null
@@ -1,39 +0,0 @@
-# Contributor: Sodface <sod@sodface.com>
-# Maintainer: Sodface <sod@sodface.com>
-pkgname=cagebreak
-pkgver=1.9.0
-pkgrel=0
-pkgdesc="Wayland tiling compositor inspired by Ratpoison"
-url="https://github.com/project-repo/cagebreak"
-license="MIT"
-arch="all"
-options="!check" # no test suite
-depends="xwayland"
-makedepends="
- libevdev-dev
- meson
- pango-dev
- scdoc
- wayland-protocols
- wlroots-dev
- "
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/project-repo/cagebreak/archive/$pkgver.tar.gz"
-
-build() {
- # defaults to debug build without buildtype=release
- abuild-meson \
- --buildtype=release \
- -Dman-pages=true \
- -Dxwayland=true \
- build
- meson compile ${JOBS:+-j ${JOBS}} -C build
-}
-
-package() {
- DESTDIR="$pkgdir" meson install --no-rebuild -C build
-}
-
-sha512sums="
-9b89bcb29fd2d11ab2c46adb03befc5b03a613e48be3ca3c382446d3a9018859da7ee7436976ed837eef17f768d9a2c60be9d96f6aa6f6ee38cebbd3e898108e cagebreak-1.9.0.tar.gz
-"
diff --git a/testing/calf/APKBUILD b/testing/calf/APKBUILD
deleted file mode 100644
index f7c55fa30f3..00000000000
--- a/testing/calf/APKBUILD
+++ /dev/null
@@ -1,49 +0,0 @@
-# Contributor: David Demelier <markand@malikania.fr>
-# Maintainer: David Demelier <markand@malikania.fr>
-pkgname=calf
-pkgver=0.90.3
-pkgrel=1
-pkgdesc="Calf Studio Gear"
-url="https://calf-studio-gear.org"
-arch="all"
-license="GPL-2.0-only AND LGPL-2.1-only"
-makedepends="autoconf automake expat-dev fluidsynth-dev gtk+2.0-dev jack-dev
- libtool lv2-dev"
-subpackages="$pkgname-static $pkgname-jack $pkgname-doc $pkgname-lv2"
-source="http://calf-studio-gear.org/files/calf-$pkgver.tar.gz"
-
-prepare() {
- default_prepare
- autoreconf -vif
-}
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-jack() {
- pkgdesc="Calf Studio Gear (JACK utils)"
- amove usr/bin/calfjackhost
-}
-
-lv2() {
- pkgdesc="Calf Studio Gear (LV2 plugins)"
- amove usr/lib/lv2/*
-}
-
-sha512sums="a17be4f2e753c5426ff6995ebf4e88f1d4916629f624fcb576e09e5cafd56474fc8944d9defba31561a3476c55d78dd69189cedb11197a09cc3af6e59aa2a867 calf-0.90.3.tar.gz"
diff --git a/testing/calibre/0001-calibre-no-update.patch b/testing/calibre/0001-calibre-no-update.patch
new file mode 100644
index 00000000000..85b3e59d397
--- /dev/null
+++ b/testing/calibre/0001-calibre-no-update.patch
@@ -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):
+
diff --git a/testing/calibre/APKBUILD b/testing/calibre/APKBUILD
new file mode 100644
index 00000000000..bf47c79855a
--- /dev/null
+++ b/testing/calibre/APKBUILD
@@ -0,0 +1,115 @@
+# Maintainer: Cowington Post <cowingtonpost@gmail.com>
+pkgname=calibre
+pkgver=7.8.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 \
+ --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="
+c90d247af3a8ba3b2a94ca3a03bf9ee4d1c8f07d6feaa1ec045d639f448c476c4be9568e66845e7067e32b746e0ab034be65084a60f2b64f961f6678a30910e7 calibre-7.8.0.tar.xz
+eb8e7ce40ff8b8daf6e7e55a5dff8ec4dff06c45744266bb48b3194e92ab1196bc91468203e3c2ca1e5144166a7d6be90e6cf0253513e761b56a4c85be4c2c76 0001-calibre-no-update.patch
+"
diff --git a/testing/caps/APKBUILD b/testing/caps/APKBUILD
deleted file mode 100644
index c9ec49561af..00000000000
--- a/testing/caps/APKBUILD
+++ /dev/null
@@ -1,24 +0,0 @@
-# Contributor: David Demelier <markand@malikania.fr>
-# Maintainer: David Demelier <markand@malikania.fr>
-pkgname=caps
-pkgver=0.9.26
-pkgrel=0
-pkgdesc="the C* Audio Plugin Suite"
-url="http://quitte.de/dsp/caps.html"
-arch="all"
-license="GPL-3.0-only"
-source="http://quitte.de/dsp/caps_$pkgver.tar.bz2
- patch-basics.h.patch"
-options="!check" # No tests
-
-build() {
- make
-}
-
-
-package() {
- make install PREFIX=/usr DESTDIR="$pkgdir"
-}
-
-sha512sums="ce9a7219ef0c6c33a5debb407e9b6ea7432c3f50ab32c1915cf91c40cda541a812da887bf57ee536d653195158939889c4baf5fcbe3ded551abc676517e1da7a caps_0.9.26.tar.bz2
-fdf87cccfbde23e0959637e415e28b9b4e29b83fc0896506490e7e005a70bea04c073064c8b930d6050ed3f1db5b0f639425908b1e35e1307ca36339349cb435 patch-basics.h.patch"
diff --git a/testing/caps/patch-basics.h.patch b/testing/caps/patch-basics.h.patch
deleted file mode 100644
index 221ed3ee472..00000000000
--- a/testing/caps/patch-basics.h.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-Use standard integer types instead.
-
-Upstream: proposed.
---- a/basics.h 2020-06-04 14:05:29.657008378 +0200
-+++ b/basics.h 2020-06-04 14:05:44.430412859 +0200
-@@ -38,6 +38,7 @@
- #define _ISOC99_SOURCE 1
- #define _ISOC9X_SOURCE 1
-
-+#include <stdint.h>
- #include <stdlib.h>
- #include <string.h>
-
-@@ -49,14 +50,14 @@
-
- #include "ladspa.h"
-
--typedef __int8_t int8;
--typedef __uint8_t uint8;
--typedef __int16_t int16;
--typedef __uint16_t uint16;
--typedef __int32_t int32;
--typedef __uint32_t uint32;
--typedef __int64_t int64;
--typedef __uint64_t uint64;
-+typedef int8_t int8;
-+typedef uint8_t uint8;
-+typedef int16_t int16;
-+typedef uint16_t uint16;
-+typedef int32_t int32;
-+typedef uint32_t uint32;
-+typedef int64_t int64;
-+typedef uint64_t uint64;
-
- #define MIN_GAIN 1e-6 /* -120 dB */
- /* smallest non-denormal 32 bit IEEE float is 1.18e-38 */
diff --git a/testing/caps2esc/APKBUILD b/testing/caps2esc/APKBUILD
new file mode 100644
index 00000000000..a02d4f9c103
--- /dev/null
+++ b/testing/caps2esc/APKBUILD
@@ -0,0 +1,37 @@
+# Contributor: Evan Johnston <evan@d2evs.net>
+# Maintainer: Evan Johnston <evan@d2evs.net>
+pkgname=caps2esc
+pkgver=0.3.2
+pkgrel=0
+pkgdesc="Transforming the most useless key ever in the most useful one"
+url="https://gitlab.com/interception/linux/plugins/caps2esc"
+arch="all"
+license="MIT"
+depends="interception-tools"
+makedepends="
+ cmake
+ linux-headers
+ samurai
+ "
+source="https://gitlab.com/interception/linux/plugins/caps2esc/-/archive/v$pkgver/caps2esc-v$pkgver.tar.gz"
+builddir="$srcdir/caps2esc-v$pkgver"
+options="!check" # no tests
+
+build() {
+ if [ "$CBUILD" != "$CHOST" ]; then
+ local crossopts="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=None \
+ $crossopts
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+1d077720131df92d38daa2a72432b02f3f43f3ad49028e9029a804c6cad218508a96b0c0b67a5ed2506f5b80ed062c01423032a7133218f37c60ad4f32c22147 caps2esc-v0.3.2.tar.gz
+"
diff --git a/testing/carapace/APKBUILD b/testing/carapace/APKBUILD
new file mode 100644
index 00000000000..2209a51c57a
--- /dev/null
+++ b/testing/carapace/APKBUILD
@@ -0,0 +1,40 @@
+# Contributor: Andrej Kolchin <KAAtheWise@protonmail.com>
+# Maintainer: Andrej Kolchin <KAAtheWise@protonmail.com>
+pkgname=carapace
+pkgver=1.0.1
+pkgrel=0
+pkgdesc="Multi-shell multi-command argument completer"
+url="https://carapace.sh/"
+arch="all"
+license="MIT"
+makedepends="go"
+source="$pkgname-$pkgver.tar.gz::https://github.com/rsteube/carapace-bin/archive/v$pkgver.tar.gz"
+# fixes the tar archive unpacking to carapace-bin-$pkgver
+_pkgname=carapace-bin
+builddir="$srcdir/$_pkgname-$pkgver"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+export GOFLAGS="$GOFLAGS -modcacherw"
+
+build() {
+ go generate ./cmd/carapace/...
+ go build -tags release ./cmd/carapace
+}
+
+check() {
+ # The three lone tests in the repository.
+ go test \
+ ./cmd/carapace/... \
+ ./pkg/actions/tools/pandoc \
+ ./pkg/actions/env
+}
+
+package() {
+ install -Dm755 carapace -t "$pkgdir"/usr/bin
+}
+
+sha512sums="
+4e4d745879209343ff06e2d716bcbb7ec59920bb885deea9cb6a765d4c7a2040e4ace578e3fa820bda4c89a6ecab55e48e914f22c00565551331645e62e3fe73 carapace-1.0.1.tar.gz
+"
diff --git a/testing/care/APKBUILD b/testing/care/APKBUILD
index b53c869d538..b1062bdb4ff 100644
--- a/testing/care/APKBUILD
+++ b/testing/care/APKBUILD
@@ -1,9 +1,9 @@
# Contributor: Peter Shkenev <santurysim@gmail.com>
# Maintainer: Peter Shkenev <santurysim@gmail.com>
pkgname=care
-pkgver=2.2
-_prootver=5.3.1
-pkgrel=1
+pkgver=2.3.0
+_prootver=5.4.0
+pkgrel=0
pkgdesc="Comprehensive Archiver for Reproducible Execution"
url="https://proot-me.github.io/care/"
arch="aarch64 armhf armv7 x86 x86_64"
@@ -18,7 +18,7 @@ makedepends="
talloc-static
uthash-dev
"
-checkdepends="bash coreutils grep lzop mcookie pythonispython3 strace"
+checkdepends="bash coreutils grep lzop mcookie strace"
subpackages="$pkgname-doc"
source="https://github.com/proot-me/proot/archive/v$_prootver/proot-$_prootver.tar.gz
10-tests-musl-compat.patch
@@ -41,6 +41,6 @@ package() {
}
sha512sums="
-fdeaa55bda71e4444c8f88160d89b91577b531d37b9e0f9317a983dfefabe154a4f2dc34f389e9fd89da53fe0789e93b156b3e01f75919bcd6e5ca9006b7a288 proot-5.3.1.tar.gz
+c4d7b7428758c0d8f6a89ecaa01d1d7d5d9663a84b7e730e8160bc2a2385a7e278589f5dd86f5cd4f8e0736f09b3097b9efea7814096fd2d28e6032435b9ee63 proot-5.4.0.tar.gz
d09de6d776072e9991abd04e294e6d36bd1634b9e972294a112526ebf3f63e919d01755de1ecd7253d614b41b07fe6882df8787c638b8576bcf2555abcafa466 10-tests-musl-compat.patch
"
diff --git a/testing/cargo-c/APKBUILD b/testing/cargo-c/APKBUILD
deleted file mode 100644
index 8399cea6413..00000000000
--- a/testing/cargo-c/APKBUILD
+++ /dev/null
@@ -1,42 +0,0 @@
-# Contributor: Oleg Titov <oleg.titov@gmail.com>
-# Maintainer: Oleg Titov <oleg.titov@gmail.com>
-pkgname=cargo-c
-pkgver=0.9.9
-pkgrel=0
-pkgdesc="cargo subcommand to build and install C-ABI compatibile dynamic and static libraries"
-url="https://github.com/lu-zero/cargo-c"
-arch="all !s390x !riscv64" # no cargo for these archies
-license="MIT"
-makedepends="cargo openssl-dev"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/lu-zero/cargo-c/archive/v$pkgver.tar.gz
- $pkgname-$pkgver-Cargo.lock::https://github.com/lu-zero/cargo-c/releases/download/v$pkgver/Cargo.lock"
-
-prepare() {
- default_prepare
-
- cp "$srcdir"/$pkgname-$pkgver-Cargo.lock Cargo.lock
- cargo fetch --locked
-}
-
-build() {
- cargo build --release --frozen
-}
-
-check() {
- cargo test --release --frozen
-}
-
-package() {
- cargo install --locked --root "$pkgdir/usr" --path .
-
- install -Dm 644 -t "$pkgdir/usr/share/doc/cargo-c" README.md
-
- rm "$pkgdir"/usr/.crates.toml
- rm "$pkgdir"/usr/.crates2.json
-}
-
-sha512sums="
-7b2a870cc0a4543f57892404eb00842282fa1c6845284a057524c81f525c60e025c7900b5c89f893aeab8954e76160e047c963f4d349dc09babe86804dc6a351 cargo-c-0.9.9.tar.gz
-ed37ea89386c91cab5465c6d9634ac17db1decef721e35a7466ab712ecc6c95e0ad7669f386452be0eecbeed4e37095b53a345637819e8c4f6be97fe0e744389 cargo-c-0.9.9-Cargo.lock
-"
diff --git a/testing/cargo-crev/APKBUILD b/testing/cargo-crev/APKBUILD
new file mode 100644
index 00000000000..7a07120bd88
--- /dev/null
+++ b/testing/cargo-crev/APKBUILD
@@ -0,0 +1,39 @@
+# Contributor: lauren n. liberda <lauren@selfisekai.rocks>
+# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
+pkgname=cargo-crev
+pkgver=0.25.5
+pkgrel=0
+pkgdesc="Cryptographically verifiable code review system for cargo"
+url="https://github.com/crev-dev/cargo-crev"
+# s390x: failing tests
+arch="all !s390x"
+license="MPL-2.0 OR MIT OR Apache-2.0"
+makedepends="cargo cargo-auditable openssl-dev"
+source="https://github.com/crev-dev/cargo-crev/archive/v$pkgver/cargo-crev-$pkgver.tar.gz
+ use-index-guix-from-crates.io.patch
+ "
+
+export OPENSSL_NO_VENDOR=1
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release -p cargo-crev --no-default-features
+}
+
+check() {
+ cargo test --frozen --no-default-features
+}
+
+package() {
+ install -Dm755 target/release/cargo-crev "$pkgdir"/usr/bin/cargo-crev
+}
+
+sha512sums="
+621447b0f5e32ed11af3d4e985d77986e94ceb6d6e0359880e70c20120698fb685b64062824fbd0bfffd9de565a6d5894788996c74637444d7bbdb47ed8e3807 cargo-crev-0.25.5.tar.gz
+84123bf4c1f1dfcb4dc1e5b31f5b5351a21cf24a56a8b0e07bffce00b5c0170f373dbb1d3d293beff4cc3f4873e831f9967da872f7408cf491f8926b1cc717c0 use-index-guix-from-crates.io.patch
+"
diff --git a/testing/cargo-crev/use-index-guix-from-crates.io.patch b/testing/cargo-crev/use-index-guix-from-crates.io.patch
new file mode 100644
index 00000000000..30c11226988
--- /dev/null
+++ b/testing/cargo-crev/use-index-guix-from-crates.io.patch
@@ -0,0 +1,38 @@
+Patch-Source: https://github.com/crev-dev/cargo-crev/commit/1c372955d79b65de27cfcb20afb29f962f965933.patch
+--
+From 1c372955d79b65de27cfcb20afb29f962f965933 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Orhun=20Parmaks=C4=B1z?= <orhunparmaksiz@gmail.com>
+Date: Wed, 22 Nov 2023 00:33:35 +0100
+Subject: [PATCH] fix(deps): use index-guix dependency from crates.io (#690)
+
+---
+ Cargo.lock | 2 ++
+ crevette/Cargo.toml | 2 +-
+ 2 files changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/Cargo.lock b/Cargo.lock
+index c6909595..28cb2852 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -3344,6 +3344,8 @@ dependencies = [
+ [[package]]
+ name = "index-guix"
+ version = "1.0.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "bd5527d0b9a90f16299c4db9a1c93c74089abe2e38dbd640b69e4afc378038e3"
+ dependencies = [
+ "gix 0.55.2",
+ "nom",
+diff --git a/crevette/Cargo.toml b/crevette/Cargo.toml
+index e4bea234..30afe4d4 100644
+--- a/crevette/Cargo.toml
++++ b/crevette/Cargo.toml
+@@ -23,7 +23,7 @@ toml_edit = { version = "0.21.0", features = ["serde"] }
+ cargo_author = { version = "1.0.6", optional = true }
+ flate2 = { version = "1.0.28", optional = true }
+ index-debcargo = { version = "1.1.0", optional = true }
+-index-guix = { version = "1.0.0", optional = true, path = "../../index-guix" }
++index-guix = { version = "1.0.0", optional = true }
+ reqwest = { version = "0.11.22", features = ["blocking"], optional = true }
+
+ [features]
diff --git a/testing/cargo-generate/APKBUILD b/testing/cargo-generate/APKBUILD
new file mode 100644
index 00000000000..ee654908f80
--- /dev/null
+++ b/testing/cargo-generate/APKBUILD
@@ -0,0 +1,47 @@
+# Contributor: Michał Polański <michal@polanski.me>
+# Maintainer: Michał Polański <michal@polanski.me>
+pkgname=cargo-generate
+pkgver=0.20.0
+pkgrel=0
+pkgdesc="Use pre-existing git repositories as templates"
+url="https://github.com/cargo-generate/cargo-generate"
+license="MIT OR Apache-2.0"
+arch="all !s390x" # fails to build nix crate
+makedepends="cargo libgit2-dev openssl-dev cargo-auditable"
+source="https://github.com/cargo-generate/cargo-generate/archive/v$pkgver/cargo-generate-$pkgver.tar.gz
+ remove-cargo-husky.patch
+ "
+options="net" # fetch dependencies
+
+prepare() {
+ default_prepare
+
+ # Rust target triple.
+ local target=$(rustc -vV | sed -n 's/host: //p')
+
+ # Build against system-provided libs
+ mkdir -p .cargo
+ cat >> .cargo/config.toml <<-EOF
+ [target.$target]
+ git2 = { rustc-link-lib = ["git2"] }
+ EOF
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release --no-default-features
+}
+
+check() {
+ cargo test --frozen --lib --no-default-features
+}
+
+package() {
+ install -Dm755 target/release/$pkgname -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+ab6fa4b3519c4e35fef65eeb38caa226713fae5204950fc7b04fb38fa77d21045b7dee0defb2499df54dc17dd8780e3f580e13085de1dfdac87d1ac536c52afd cargo-generate-0.20.0.tar.gz
+50054cda7a9f22f89f1b447a197365737a73132ddd7c53f7a7e49eecf1bc1a6bb15dd7c97cf2cdda3b3468a94e6a9d8f0ce8910c972558eb09d16424667fdc31 remove-cargo-husky.patch
+"
diff --git a/testing/cargo-generate/remove-cargo-husky.patch b/testing/cargo-generate/remove-cargo-husky.patch
new file mode 100644
index 00000000000..ceef9f531ec
--- /dev/null
+++ b/testing/cargo-generate/remove-cargo-husky.patch
@@ -0,0 +1,53 @@
+Remove cargo-husky dependency to fix running `cargo test` command on buildozer
+
+> error: failed to run custom build command for `cargo-husky v1.5.0`
+>
+> Caused by:
+> process didn't exit successfully: `/home/buildozer/aports/testing/cargo-generate/src/cargo-generate-0.18.1/target/debug/build/cargo-husky-d53e0402e0fa64a4/build-script-build` (exit status: 1)
+> --- stderr
+> Error: IO error: Permission denied (os error 13)
+> warning: build failed, waiting for other jobs to finish...
+> >>> ERROR: cargo-generate: check failed
+
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -142,7 +142,6 @@ dependencies = [
+ "assert_cmd",
+ "auth-git2",
+ "bstr",
+- "cargo-husky",
+ "clap",
+ "console",
+ "dialoguer",
+@@ -179,12 +178,6 @@ dependencies = [
+ "walkdir",
+ ]
+
+-[[package]]
+-name = "cargo-husky"
+-version = "1.5.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "7b02b629252fe8ef6460461409564e2c21d0c8e77e0944f3d189ff06c4e932ad"
+-
+ [[package]]
+ name = "cc"
+ version = "1.0.83"
+--- a/Cargo.toml
++++ b/Cargo.toml
+@@ -61,16 +61,6 @@ indoc = "~2.0"
+ url = "~2.5"
+ bstr = "~1.9"
+
+-[dev-dependencies.cargo-husky]
+-version = "~1.5"
+-default-features = false
+-features = [
+- "prepush-hook",
+- "run-cargo-test",
+- "run-cargo-clippy",
+- "run-cargo-fmt",
+-]
+-
+ [features]
+ default = ["vendored-libgit2"]
+ vendored-libgit2 = ["git2/vendored-libgit2"]
diff --git a/testing/cargo-leptos/APKBUILD b/testing/cargo-leptos/APKBUILD
new file mode 100644
index 00000000000..3f63e8e6765
--- /dev/null
+++ b/testing/cargo-leptos/APKBUILD
@@ -0,0 +1,44 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=cargo-leptos
+pkgver=0.2.16
+pkgrel=0
+pkgdesc="Build tool for Leptos"
+url="https://leptos.dev"
+arch="x86_64 aarch64" # dart-sass
+license="MIT"
+makedepends="cargo-auditable"
+depends="
+ binaryen
+ cargo
+ cargo-generate
+ dart-sass
+"
+subpackages="$pkgname-doc"
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/leptos-rs/cargo-leptos/archive/refs/tags/v$pkgver.tar.gz
+"
+options="net"
+
+prepare() {
+ default_prepare
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen --features no_downloads
+}
+
+check() {
+ cargo test --frozen --features no_downloads
+}
+
+package() {
+ install -Dm 755 target/release/cargo-leptos "$pkgdir"/usr/bin/cargo-leptos
+
+ install -Dm 644 LICENSE "$pkgdir"/usr/share/licenses/"$pkgname"/LICENSE
+}
+
+sha512sums="
+334dadf021fa7aabcd3e8a71d0512ce3fdc04ec058fd9b22bfd0b1f89bbd8bc9e3f7fd37973a5a9ad656802174293607330cd07db1283366d0264daa9a704bbd cargo-leptos-0.2.16.tar.gz
+"
diff --git a/testing/cargo-machete/APKBUILD b/testing/cargo-machete/APKBUILD
new file mode 100644
index 00000000000..b5e2b592293
--- /dev/null
+++ b/testing/cargo-machete/APKBUILD
@@ -0,0 +1,40 @@
+# Contributor: Orhun Parmaksız <orhunparmaksiz@gmail.com>
+# Maintainer: Orhun Parmaksız <orhunparmaksiz@gmail.com>
+pkgname=cargo-machete
+pkgver=0.6.2
+pkgrel=0
+pkgdesc="Cargo subcommand for removing unused Rust dependencies"
+url="https://github.com/bnjbvr/cargo-machete"
+arch="all"
+license="MIT"
+makedepends="
+ cargo
+ cargo-auditable
+ "
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/bnjbvr/cargo-machete/archive/v$pkgver.tar.gz"
+options="net" # cargo fetch
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm 755 "target/release/cargo-machete" -t "$pkgdir/usr/bin"
+ install -Dm 644 README.md -t "$pkgdir/usr/share/doc/$pkgname"
+ install -Dm 644 LICENSE.md -t "$pkgdir/usr/share/licenses/$pkgname"
+}
+
+sha512sums="
+c0b33ca808f75bc51e1aeb0b685abf2e170200dc4b11560ec8c2e1a64793b29216ac80f23d91731288e808097fd7a36a541c1c7666b696fc23f068ecd56c05be cargo-machete-0.6.2.tar.gz
+"
diff --git a/testing/cargo-run-bin/APKBUILD b/testing/cargo-run-bin/APKBUILD
new file mode 100644
index 00000000000..c024df9bf30
--- /dev/null
+++ b/testing/cargo-run-bin/APKBUILD
@@ -0,0 +1,41 @@
+# Contributor: Orhun Parmaksız <orhunparmaksiz@gmail.com>
+# Maintainer: Orhun Parmaksız <orhunparmaksiz@gmail.com>
+pkgname=cargo-run-bin
+pkgver=1.7.2
+pkgrel=0
+pkgdesc="Build, cache, and run CLI tools scoped in Cargo.toml"
+url="https://github.com/dustinblackman/cargo-run-bin"
+arch="all"
+license="MIT"
+makedepends="
+ cargo
+ cargo-auditable
+ "
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/dustinblackman/cargo-run-bin/archive/v$pkgver.tar.gz"
+options="net"
+options="$options !check" # https://github.com/dustinblackman/cargo-run-bin/issues/18
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm 755 "target/release/cargo-bin" -t "$pkgdir/usr/bin"
+ install -Dm 644 README.md -t "$pkgdir/usr/share/doc/$pkgname"
+ install -Dm 644 LICENSE -t "$pkgdir/usr/share/licenses/$pkgname"
+}
+
+sha512sums="
+5a81437f15f99b145ed6be4c3943e50e8f8f8b40bb36dc8a37ea29d6e43bfb0cb928d77ba3db19d0d919b4a8f4cbd3296b996db0c2ce0c42397393269a017f5d cargo-run-bin-1.7.2.tar.gz
+"
diff --git a/testing/cargo-shuttle/APKBUILD b/testing/cargo-shuttle/APKBUILD
new file mode 100644
index 00000000000..fa36d0b0574
--- /dev/null
+++ b/testing/cargo-shuttle/APKBUILD
@@ -0,0 +1,49 @@
+# Maintainer: Orhun Parmaksız <orhunparmaksiz@gmail.com>
+pkgname=cargo-shuttle
+pkgver=0.43.0
+pkgrel=0
+pkgdesc="Cargo command for the Shuttle platform"
+url="https://github.com/shuttle-hq/shuttle"
+license="Apache-2.0"
+# s390x, ppc64le, riscv64: blocked by ring crate
+arch="all !s390x !ppc64le !riscv64"
+makedepends="cargo cargo-auditable"
+subpackages="
+ $pkgname-doc
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
+ "
+source="https://github.com/shuttle-hq/shuttle/archive/v$pkgver/shuttle-$pkgver.tar.gz"
+builddir="$srcdir/shuttle-$pkgver"
+# tests require git/submodules to be initialized
+options="!check"
+
+prepare() {
+ default_prepare
+ cargo fetch --locked
+}
+
+build() {
+ cargo auditable build -p "$pkgname" --release --frozen
+ mkdir -p completions/
+ local compgen="target/release/$pkgname generate shell"
+ $compgen bash >"completions/$pkgname.bash"
+ $compgen fish >"completions/$pkgname.fish"
+ $compgen zsh >"completions/_$pkgname"
+ mkdir -p man/
+ "target/release/$pkgname" generate manpage > "man/$pkgname.1"
+}
+
+package() {
+ install -Dm755 "target/release/$pkgname" -t "$pkgdir/usr/bin/"
+ install -Dm644 README.md -t "$pkgdir/usr/share/doc/$pkgname"
+ install -Dm644 "completions/$pkgname.bash" "$pkgdir/usr/share/bash-completion/completions/$pkgname"
+ install -Dm644 "completions/$pkgname.fish" -t "$pkgdir/usr/share/fish/vendor_completions.d"
+ install -Dm644 "completions/_$pkgname" -t "$pkgdir/usr/share/zsh/site-functions"
+ install -Dm 644 "man/$pkgname.1" -t "$pkgdir/usr/share/man/man1"
+}
+
+sha512sums="
+0750bae9e0e6b3208924c27c16ab2bf0e8c64908d830e0e7f169601e608a8bf20e7ce83188bde474afa01eaa0e30edb437f28508a6e8af032216b46cec7a2f18 shuttle-0.43.0.tar.gz
+"
diff --git a/testing/cargo-update/APKBUILD b/testing/cargo-update/APKBUILD
new file mode 100644
index 00000000000..0c40f8d7764
--- /dev/null
+++ b/testing/cargo-update/APKBUILD
@@ -0,0 +1,51 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=cargo-update
+pkgver=13.3.0
+pkgrel=0
+pkgdesc="cargo subcommand for checking and applying updates to installed executables"
+url="https://github.com/nabijaczleweli/cargo-update"
+arch="all"
+license="MIT"
+makedepends="cargo cargo-auditable ronn curl-dev libgit2-dev libssh-dev"
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/nabijaczleweli/cargo-update/archive/refs/tags/v$pkgver.tar.gz"
+
+export LIBSSH2_SYS_USE_PKG_CONFIG=1
+
+prepare() {
+ default_prepare
+
+ # Rust target triple.
+ local target=$(rustc -vV | sed -n 's/host: //p')
+
+ # Build against system-provided libs
+ mkdir -p .cargo
+ cat >> .cargo/config.toml <<-EOF
+ [target.$target]
+ git2 = { rustc-link-lib = ["git2"] }
+ EOF
+
+ cargo fetch --target="$CTARGET"
+}
+
+build() {
+ cargo auditable build --frozen --release
+ ronn --roff --organization="CARGO-UPDATE $pkgver" man/*.md
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm755 -t "$pkgdir"/usr/bin/ \
+ target/release/cargo-install-update \
+ target/release/cargo-install-update-config
+
+ install -Dm644 man/cargo-install-update*.1 \
+ -t "$pkgdir"/usr/share/man/man1/
+}
+
+sha512sums="
+ef12ab1c998efeaab2ac680f9714ad6626434db021fd5aaa09f5f9e262fa6bea32fba53e513bf3a2fcc043e28fe2f19a24f163b1614899dc2d899472c0451ae0 cargo-update-13.3.0.tar.gz
+"
diff --git a/testing/cargo-vendor-filterer/APKBUILD b/testing/cargo-vendor-filterer/APKBUILD
new file mode 100644
index 00000000000..5bd506b1fd4
--- /dev/null
+++ b/testing/cargo-vendor-filterer/APKBUILD
@@ -0,0 +1,37 @@
+# Maintainer: Hugo Osvaldo Barrera <hugo@whynothugo.nl>
+pkgname=cargo-vendor-filterer
+pkgver=0.5.9
+pkgrel=1
+pkgdesc="cargo vendor with filtering for platforms and more"
+url="https://github.com/coreos/cargo-vendor-filterer"
+arch="all"
+license="Apache-2.0"
+makedepends="
+ cargo
+ cargo-auditable
+ openssl-dev
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/coreos/cargo-vendor-filterer/archive/refs/tags/v$pkgver.tar.gz"
+options="net"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+check() {
+ cargo test --frozen --no-default-features
+}
+
+package() {
+ install -Dm755 target/release/$pkgname -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+2fd85f797da1d75f8a4b109278bccef1b1e0faf10653a8f472e5de48ea31f743916865853a68c5d87d0820deeaed7240f1ba50df71b2b977a35465ce14b04357 cargo-vendor-filterer-0.5.9.tar.gz
+"
diff --git a/testing/castero/APKBUILD b/testing/castero/APKBUILD
index 9c6c23030fb..5c9e72acb21 100644
--- a/testing/castero/APKBUILD
+++ b/testing/castero/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Dmitry Zakharchenko <dmitz@disroot.org>
pkgname=castero
pkgver=0.9.5
-pkgrel=0
+pkgrel=2
pkgdesc="TUI podcast client for the terminal"
url="https://github.com/xgi/castero"
arch="noarch"
@@ -19,6 +19,7 @@ depends="
"
makedepends="py3-setuptools"
checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/xgi/castero/archive/v$pkgver.tar.gz"
prepare() {
@@ -36,7 +37,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
diff --git a/testing/castor/APKBUILD b/testing/castor/APKBUILD
index ede51732662..6d497a1db3e 100644
--- a/testing/castor/APKBUILD
+++ b/testing/castor/APKBUILD
@@ -1,16 +1,17 @@
# Maintainer: Joel Hansen <joelh@disroot.org>
pkgname=castor
pkgver=0.9.0
-pkgrel=0
+pkgrel=2
pkgdesc="Graphical browser for Gemini, Gopher and Finger"
url="https://sr.ht/~julienxx/Castor/"
license="MIT"
arch="all !s390x !riscv64" # limited by rust/cargo
-makedepends="rust cargo gtk+3.0-dev openssl-dev"
+makedepends="rust cargo gtk+3.0-dev openssl-dev>3 cargo-auditable"
source="$pkgname-$pkgver.tar.gz::https://git.sr.ht/~julienxx/castor/archive/$pkgver.tar.gz"
+
build() {
- cargo build --release --locked --verbose
+ cargo auditable build --release --locked --verbose
}
check() {
diff --git a/testing/catdoc/APKBUILD b/testing/catdoc/APKBUILD
index 6b01babd35a..bfaced72370 100644
--- a/testing/catdoc/APKBUILD
+++ b/testing/catdoc/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Noel Kuntze <noel.kuntze@thermi.consulting>
pkgname=catdoc
pkgver=0.95
-pkgrel=0
+pkgrel=1
pkgdesc="Convertor for Microsoft Word, Excel, PowerPoint and RTF Files to text"
options="!check" # No testsuite
url="https://www.wagner.pp.ru/~vitus/software/catdoc/"
diff --git a/testing/catfish/APKBUILD b/testing/catfish/APKBUILD
new file mode 100644
index 00000000000..af7d9725e26
--- /dev/null
+++ b/testing/catfish/APKBUILD
@@ -0,0 +1,50 @@
+# Contributor: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
+# Maintainer: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
+pkgname=catfish
+pkgver=4.18.0
+pkgrel=2
+pkgdesc="Catfish is a handy file searching tool for Linux and Unix"
+url="https://docs.xfce.org/apps/catfish/start"
+# x86, s390x: zeitgeist
+arch="noarch !s390x !x86"
+license="GPL-2.0-or-later"
+depends="
+ gtk+3.0
+ plocate
+ py3-cairo
+ py3-dbus
+ py3-gobject3
+ py3-pexpect
+ py3-zeitgeist
+ zeitgeist
+ "
+makedepends="
+ intltool
+ py3-distutils-extra
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+subpackages="
+ $pkgname-doc
+ $pkgname-lang
+ $pkgname-pyc
+ "
+source="https://gitlab.xfce.org/apps/catfish/-/archive/catfish-$pkgver/catfish-catfish-$pkgver.tar.gz"
+builddir="$srcdir/$pkgname-$pkgname-$pkgver"
+options="!check" # No upstream test suite
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+e07011198ae339521e3b2c6f95af63a7a166859297c7f2b2e38c588f427aea33d785f90b0e0cf9e82e3a351fe3b10bd9cb79330910c74f7d2a1de1087559dae6 catfish-catfish-4.18.0.tar.gz
+"
diff --git a/testing/catgirl/APKBUILD b/testing/catgirl/APKBUILD
deleted file mode 100644
index 02fe3bfaaf1..00000000000
--- a/testing/catgirl/APKBUILD
+++ /dev/null
@@ -1,28 +0,0 @@
-# Contributor: TBK <alpine@jjtc.eu>
-# Maintainer: TBK <alpine@jjtc.eu>
-pkgname=catgirl
-pkgver=2.1
-pkgrel=2
-pkgdesc="TLS-only terminal IRC client"
-arch="all"
-url="https://git.causal.agency/catgirl/"
-license="GPL-3.0-or-later"
-options="!check" # No test suite
-makedepends="libretls-dev ncurses-dev"
-subpackages="$pkgname-doc"
-source="https://git.causal.agency/catgirl/snapshot/catgirl-$pkgver.tar.gz"
-
-build() {
- ./configure \
- --prefix=/usr \
- --mandir=/usr/share/man
- make all
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-3b77ae3cc382c8db2918baf73e08d8397a55f752959aad23014235d335d48bbff3d329f75b6663c8fe8dfa74a525b22d51209408ccad9f14e28488116e6c5fee catgirl-2.1.tar.gz
-"
diff --git a/testing/cava/APKBUILD b/testing/cava/APKBUILD
index 49f71a5f53b..83d86e70f2d 100644
--- a/testing/cava/APKBUILD
+++ b/testing/cava/APKBUILD
@@ -1,13 +1,13 @@
# Contributor: Galen Abell <galen@galenabell.com>
# Maintainer: Galen Abell <galen@galenabell.com>
pkgname=cava
-pkgver=0.8.2
+pkgver=0.10.1
pkgrel=0
-pkgdesc="Console-based Audio Visualizer for ALSA"
+pkgdesc="Console-based Audio Visualizer"
url="https://github.com/karlstav/cava"
arch="all"
license="MIT"
-makedepends="autoconf automake alsa-lib-dev libtool m4 fftw-dev ncurses-dev iniparser-dev xxd"
+makedepends="autoconf automake alsa-lib-dev libtool m4 fftw-dev ncurses-dev iniparser-dev xxd pulseaudio-dev pipewire-dev sdl2-dev"
source="cava-$pkgver.tar.gz::https://github.com/karlstav/cava/archive/$pkgver.tar.gz"
prepare() {
@@ -35,5 +35,5 @@ package() {
}
sha512sums="
-8ab146987324fad97dea5e9fd893de6c12b00cbb074d835c1e334d75c0d32cb4cbbc13cf72f7899191ebd5d346505b2639dcad5312e5ab00975b29a006ba41b3 cava-0.8.2.tar.gz
+8a71628bae6621ef925f5fed94659b07d9220e142c17514bed79e1105a9160494bf3978267c9de3ab6cd2126ece50419fb4245ccf190f3a299fc0cfb111be354 cava-0.10.1.tar.gz
"
diff --git a/testing/ccrtp/APKBUILD b/testing/ccrtp/APKBUILD
new file mode 100644
index 00000000000..69a0d10edca
--- /dev/null
+++ b/testing/ccrtp/APKBUILD
@@ -0,0 +1,32 @@
+# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=ccrtp
+pkgver=2.1.2
+pkgrel=0
+pkgdesc="An implementation of RTP, the real-time transport protocol from the IETF"
+url="https://www.gnu.org/software/ccrtp/"
+arch="all"
+license="GPL-2.0-or-later"
+makedepends="cmake samurai libgcrypt-dev commoncpp-dev"
+subpackages="$pkgname-dev $pkgname-doc"
+source="https://ftp.gnu.org/gnu/ccrtp/ccrtp-$pkgver.tar.gz"
+options="!check" # no tests provided
+
+build() {
+ cmake -G Ninja -B build \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=True \
+ -DCMAKE_BUILD_TYPE=MinSizeRel \
+ -DLIB_VERSION=3.1.0 \
+ -DSOVERSION=3 # ???
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+a835f57a0eef7cba11c55c93ce2f11ebd8ab4099e7c723043c51e4872f3da87af946fc50fac18b47ea5d72b2a1227b377810e9134c1f3a8982d4ce5944d043e9 ccrtp-2.1.2.tar.gz
+"
diff --git a/testing/ccze/APKBUILD b/testing/ccze/APKBUILD
index eb31ba991c1..e14536d4a6e 100644
--- a/testing/ccze/APKBUILD
+++ b/testing/ccze/APKBUILD
@@ -2,18 +2,18 @@
# Maintainer: mcrmonkey <git@manchestermonkey.co.uk>
pkgname=ccze
pkgver=0.2.1
-pkgrel=0
+pkgrel=1
pkgdesc="A fast log colorizer written in C, intended to be a drop-in replacement for colorize (http://colorize.raszi.hu)"
options="!check" # No testsuite
-url="https://github.com/madhouse/ccze"
+url="https://git.madhouse-project.org/archive/ccze"
arch="all"
license="GPL-2.0-only"
makedepends="musl-dev pcre-dev ncurses-dev autoconf automake"
subpackages="$pkgname-dev $pkgname-doc"
-source="https://github.com/madhouse/ccze/archive/ccze-$pkgver-2.tar.gz
+source="$pkgname-$pkgver-3.tar.gz::https://git.madhouse-project.org/archive/ccze/archive/ccze-$pkgver-2.tar.gz
001-fix-autoconf.patch
002-fix-error_t.patch"
-builddir="$srcdir/ccze-ccze-$pkgver-2"
+builddir="$srcdir/ccze"
prepare() {
default_prepare
@@ -38,6 +38,8 @@ package() {
make DESTDIR="$pkgdir" install
}
-sha512sums="b45ae9b0366fa4b0ca37d0aeba66f2fbbe4f6f4f124bfed9828c2324b78092557c64478e15ca592438062d2897b14d6972fc905f72c1a390f9fc8900cfed4436 ccze-0.2.1-2.tar.gz
+sha512sums="
+62b5065fd77f04f879af63806ae32ac11b5205e8570e8c522714cfadf72d4d1a165a1968878c59593709f754a797ea7289d2b9c959fcfaba52f300027a0981bc ccze-0.2.1-3.tar.gz
e869de966de949d270983531c4a2dd7dfcf08e0d9cd390063c128a6316d1f39b1b118bd7c8ad4b589aee468a08d578a5dfdb2c7eeb158926129aaa72fbc8034a 001-fix-autoconf.patch
-2100de615d10ac466fe68f2533436d4c7a37bc599eb43489e208d7c5706a400423adc3d8c46dfe5beb1d5e05e8c6709c6318c133fb8b72c467abaaaba39af544 002-fix-error_t.patch"
+2100de615d10ac466fe68f2533436d4c7a37bc599eb43489e208d7c5706a400423adc3d8c46dfe5beb1d5e05e8c6709c6318c133fb8b72c467abaaaba39af544 002-fix-error_t.patch
+"
diff --git a/testing/cdba/APKBUILD b/testing/cdba/APKBUILD
new file mode 100644
index 00000000000..0bedb12388b
--- /dev/null
+++ b/testing/cdba/APKBUILD
@@ -0,0 +1,50 @@
+# Maintainer: Caleb Connolly <caleb.connolly@linaro.org>
+pkgname=cdba
+pkgver=1.0
+pkgrel=0
+pkgdesc="Tool for remote board access"
+url="https://github.com/linux-msm/cdba"
+arch="all"
+license="BSD-3-Clause"
+subpackages="$pkgname-server"
+makedepends="
+ eudev-dev
+ linux-headers
+ libftdi1-dev
+ libgpiod-dev
+ meson
+ yaml-dev
+"
+source="
+ cdba-v$pkgver.tar.gz::https://github.com/linux-msm/cdba/archive/v$pkgver.tar.gz
+"
+options="!check"
+
+build() {
+ abuild-meson . output \
+ -Dserver=enabled
+ meson compile -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+server() {
+ amove usr/bin/cdba-server
+
+ install -Dm644 "$builddir"/shell/README -t \
+ "$subpkgdir"/usr/share/cdba/shell
+ install -Dm644 "$builddir"/shell/cdba-shell -t \
+ "$subpkgdir"/usr/share/cdba/shell
+ install -Dm644 "$builddir"/shell/post-receive -t \
+ "$subpkgdir"/usr/share/cdba/shell
+ install -Dm644 "$builddir"/shell/setup.sh -t \
+ "$subpkgdir"/usr/share/cdba/shell
+ install -Dm644 "$builddir"/shell/update -t \
+ "$subpkgdir"/usr/share/cdba/shell
+}
+
+sha512sums="
+c543034f65e66c59c36f69740478c24502f2c3dbf4d4660cf37a0d06158395030147b923a35f055842358886bee7d2e6369105e67c0032b50e970aa1ff45db16 cdba-v1.0.tar.gz
+"
diff --git a/testing/cddlib/APKBUILD b/testing/cddlib/APKBUILD
new file mode 100644
index 00000000000..f62b195b3a9
--- /dev/null
+++ b/testing/cddlib/APKBUILD
@@ -0,0 +1,45 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
+pkgname=cddlib
+pkgver=0.94m
+pkgrel=2
+pkgdesc="Library implementing Double Description Method for convex polyhedra"
+url="https://people.inf.ethz.ch/fukudak/cdd_home"
+arch="all"
+license="GPL-2.0-or-later"
+makedepends="gmp-dev"
+source="https://github.com/cddlib/cddlib/releases/download/$pkgver/cddlib-$pkgver.tar.gz"
+subpackages="
+ $pkgname-static
+ $pkgname-dev
+ $pkgname-tools:_tools
+ $pkgname-doc
+ "
+
+build() {
+ export CFLAGS="${CFLAGS/-Os/-O3}" # gotta go fast
+
+ ./configure \
+ --target="$CTARGET" \
+ --build="$CBUILD" \
+ --host="$CHOST" \
+ --prefix=/usr
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+_tools() {
+ pkgdesc="$pkgdesc (utilities)"
+ amove usr/bin
+}
+
+sha512sums="
+50997bda38c36990456345881dc1eac65b1880aa510ea3812ae46a122ba7696bf3577f2b6976ff16811ee00f0a920c8ed6f1e7de0a4060bfaa96def11bab816e cddlib-0.94m.tar.gz
+"
diff --git a/testing/cdist/APKBUILD b/testing/cdist/APKBUILD
index a9e4e6a15c2..625b9bcc29f 100644
--- a/testing/cdist/APKBUILD
+++ b/testing/cdist/APKBUILD
@@ -1,26 +1,31 @@
-# Contributor: Lucas Ramage <ramage.lucas@protonmail.com>
-# Maintainer: Lucas Ramage <ramage.lucas@protonmail.com>
+# Contributor: Lucas Ramage <lucas.ramage@infinite-omicron.com>
+# Maintainer: Lucas Ramage <lucas.ramage@infinite-omicron.com>
pkgname=cdist
-pkgver=6.9.8
-pkgrel=1
+pkgver=7.0.0
+pkgrel=5
pkgdesc="A Usable Configuration Management System"
-url="https://www.cdi.st/"
+url="https://www.cdi.st"
license="GPL-3.0-or-later"
arch="noarch"
depends="python3"
-source="$pkgname-$pkgver.tar.gz::https://code.ungleich.ch/ungleich-public/cdist/archive/$pkgver.tar.gz
- python3.10-support.patch
- "
+makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver-1.tar.gz::https://code.ungleich.ch/ungleich-public/cdist/archive/$pkgver.tar.gz"
builddir="$srcdir/cdist"
-options="!check"
-package() {
+build() {
echo "VERSION = \"$pkgver\"" > cdist/version.py
- ./bin/cdist 2> /dev/null
- python3 setup.py build install --root="$pkgdir"
+ python3 setup.py build
+}
+
+check() {
+ python3 -m unittest discover
+}
+
+package() {
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
-3c78dd5332a5957750948c52c4b27269ada21b07a2fce0d84019b4fcd3b7ddc6221f0179690d1b3af7e685ffafd739e604f50195fbc36a5494a102b2fa1b732b cdist-6.9.8.tar.gz
-7e31022bf62dfe398cc76696fbba0ca05c4330c5ba1eea9381804086bbaa88d3e9a490de112099dc6da232b2ab4bae96a36dcf5d1b798798dba9fe8cf19465eb python3.10-support.patch
+88c6f7ff68c42dc7db37a5df1fa48ee06b1dc505ec78148bc65923dab68c9dbcf302dc2fb7197f43202ffbcb11c3a82b7303398a805b445f18e43b6fec30c813 cdist-7.0.0-1.tar.gz
"
diff --git a/testing/cdist/python3.10-support.patch b/testing/cdist/python3.10-support.patch
deleted file mode 100644
index b8551b9bbe7..00000000000
--- a/testing/cdist/python3.10-support.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-Patch-Source: https://code.ungleich.ch/ungleich-public/cdist/commit/3a321469a8ba5aea55220bd70bd4900de732e917
-
-From 3a321469a8ba5aea55220bd70bd4900de732e917 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Timoth=C3=A9e=20Floure?= <timothee.floure@posteo.net>
-Date: Tue, 16 Nov 2021 11:11:45 +0100
-Subject: [PATCH] Python 3.10: collections.X -> collections.abc.X
-
----
- cdist/integration.py | 2 +-
- cdist/util/fsproperty.py | 4 ++--
- 2 files changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/cdist/integration.py b/cdist/integration.py
-index 17b65f09..04470ea7 100644
---- a/cdist/integration.py
-+++ b/cdist/integration.py
-@@ -84,7 +84,7 @@ def _process_hosts_simple(action, host, manifest, verbose,
- """
- if isinstance(host, str):
- hosts = [host, ]
-- elif isinstance(host, collections.Iterable):
-+ elif isinstance(host, collections.abc.Iterable):
- hosts = host
- else:
- raise cdist.Error('Invalid host argument: {}'.format(host))
-diff --git a/cdist/util/fsproperty.py b/cdist/util/fsproperty.py
-index 09e9cc19..6bf935e8 100644
---- a/cdist/util/fsproperty.py
-+++ b/cdist/util/fsproperty.py
-@@ -33,7 +33,7 @@ class AbsolutePathRequiredError(cdist.Error):
- return 'Absolute path required, got: {}'.format(self.path)
-
-
--class FileList(collections.MutableSequence):
-+class FileList(collections.abc.MutableSequence):
- """A list that stores it's state in a file.
-
- """
-@@ -102,7 +102,7 @@ class FileList(collections.MutableSequence):
- self.__write(lines)
-
-
--class DirectoryDict(collections.MutableMapping):
-+class DirectoryDict(collections.abc.MutableMapping):
- """A dict that stores it's items as files in a directory.
-
- """
diff --git a/testing/cdogs-sdl/APKBUILD b/testing/cdogs-sdl/APKBUILD
index f389bf13aed..1f6dab8adee 100644
--- a/testing/cdogs-sdl/APKBUILD
+++ b/testing/cdogs-sdl/APKBUILD
@@ -1,31 +1,42 @@
# Contributor: Díaz Urbaneja Diego <sodomon2@gmail.com>
# Maintainer: Díaz Urbaneja Diego <sodomon2@gmail.com>
pkgname=cdogs-sdl
-pkgver=1.2.0
-pkgrel=1
+pkgver=2.1.0
+pkgrel=0
pkgdesc="Classic overhead run-and-gun game"
url="https://cxong.github.io/cdogs-sdl/"
arch="all"
-license="GPL-1.0-only"
-makedepends="cmake sdl2_image-dev sdl2-dev sdl2_mixer-dev mesa-dev gtk+3.0-dev"
+license="GPL-2.0-or-later AND BSD-2-Clause"
+makedepends="
+ cmake
+ gtk+3.0-dev
+ mesa-dev
+ samurai
+ sdl2-dev
+ sdl2_image-dev
+ sdl2_mixer-dev
+ "
options="!check" #make check not implemented
-source="$pkgname-$pkgver.tar.gz::https://github.com/cxong/cdogs-sdl/archive/$pkgver.tar.gz"
-
-# Fix build with recent GCC
-export CFLAGS="$CFLAGS -Wno-error=inline -fcommon"
+source="$pkgname-$pkgver.tar.gz::https://github.com/cxong/cdogs-sdl/archive/$pkgver.tar.gz
+ no-werror.patch
+ "
build() {
- cmake CMakeLists.txt \
- -DCMAKE_INSTALL_PREFIX=/usr/share/cdogs-sdl \
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr/share/cdogs-sdl/ \
-DCDOGS_DATA_DIR=/usr/share/cdogs-sdl/ \
- -DCMAKE_BUILD_TYPE=None
- make
+ -DCMAKE_BUILD_TYPE=None \
+ -Wno-dev
+ cmake --build build
}
package() {
- make DESTDIR="$pkgdir" install
+ DESTDIR="$pkgdir" cmake --install build
mv "$pkgdir"/usr/share/cdogs-sdl/bin/ "$pkgdir"/usr/bin/
mv "$pkgdir"/usr/share/cdogs-sdl/share/* "$pkgdir"/usr/share/
}
-sha512sums="70a5a4bb8e48cf53a4497807b14d8a70e26ad6b74f0c4675b3d98667c867d499d372f323e7abb669ebef08b1d6b5ac9c840ab14eada38e7b868d3099ed6b3e35 cdogs-sdl-1.2.0.tar.gz"
+sha512sums="
+92b82a94cd73c7e33e141878db6ee71ca1e164a41c79e0c575aa02f4121506496e2e8e6bbef1eb239c7b145b90c0a49c3f31f4cc6d8817f75e91f5554b6d6d05 cdogs-sdl-2.1.0.tar.gz
+d4eedbfe425d659ee3fff0203f2dd49640da394db895964416ea86a98f601ee8136ac129f1c3c48b9bd525bf5e34854a861bfc881fb997ae7c61a01227137a89 no-werror.patch
+"
diff --git a/testing/cdogs-sdl/no-werror.patch b/testing/cdogs-sdl/no-werror.patch
new file mode 100644
index 00000000000..66ef6681bf7
--- /dev/null
+++ b/testing/cdogs-sdl/no-werror.patch
@@ -0,0 +1,13 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 8c4a2d1..4fe06b7 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -132,7 +132,7 @@ else()
+ endif()
+ endif()
+ if(NOT BEOS AND NOT HAIKU)
+- add_definitions(-Winline -Werror)
++ add_definitions(-Winline)
+ set(EXTRA_LIBRARIES "m")
+ endif()
+ endif()
diff --git a/testing/celery/APKBUILD b/testing/celery/APKBUILD
deleted file mode 100644
index ba6faa5e699..00000000000
--- a/testing/celery/APKBUILD
+++ /dev/null
@@ -1,46 +0,0 @@
-# Maintainer: Drew DeVault <sir@cmpwn.com>
-pkgname=celery
-pkgver=4.4.6
-pkgrel=2
-pkgdesc="An asynchronous task queue/job queue based on distributed message passing"
-url="http://www.celeryproject.org/"
-arch="noarch !s390x" # lmited by py3-kombu
-license="Apache-2.0"
-depends="py3-urllib3 py3-redis py3-vine py3-kombu py3-billiard py3-tz"
-makedepends="python3-dev py3-setuptools"
-install="$pkgname.pre-install"
-source="https://files.pythonhosted.org/packages/source/c/celery/celery-$pkgver.tar.gz
- celery.confd
- celery.initd"
-pkgusers="celery"
-pkggroups="celery"
-subpackages="$pkgname-openrc"
-provides="py3-celery"
-
-# TODO: requires many many many dependencies
-options="!check"
-
-build() {
- python3 setup.py build
-}
-
-package() {
- install -dm755 "$pkgdir/$confdir"
- install -dm755 "$pkgdir/$confdir/conf.d"
-
- # install scripts
- install -m755 -D "$srcdir"/$pkgname.initd \
- "$pkgdir"/etc/init.d/$pkgname
- install -m644 -D "$srcdir"/$pkgname.confd \
- "$pkgdir"/etc/conf.d/$pkgname
-
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-check() {
- python3 setup.py test
-}
-
-sha512sums="22c854bfb0526c1cb179696f5fe89b4c2da804fd2bf4758dd4f98da1decce7bf11f5780f9b2458cacc37b38efe62088fe20101e6f1e5bf6e48f6df0fe9f5eeea celery-4.4.6.tar.gz
-f9458bce0d8990de646df564bec96baa0e45867f44e41380d38520905e00c941b1ce261314bb78edaa14c591e0aa9386d24c58a61f69fb0fecc616c34a24dea1 celery.confd
-ff8c0451efa7157fd61f2335f4187bef6cbdd51856c7cfad4de02244c6c5ca7c584f9108731b52f020fee866365d9f092ded266c90d13cb34e92a7ffb63fed57 celery.initd"
diff --git a/testing/celery/celery.confd b/testing/celery/celery.confd
deleted file mode 100644
index 664ec4a84df..00000000000
--- a/testing/celery/celery.confd
+++ /dev/null
@@ -1,4 +0,0 @@
-CELERY_USER=celery
-CELERY_LOG=/var/log/celery.log
-CELERY_REDIR="1>/dev/null 2>> ${CELERY_LOG}"
-CELERY_OPTS="-A celeryapp -B --loglevel=info $CELERY_REDIR"
diff --git a/testing/celery/celery.initd b/testing/celery/celery.initd
deleted file mode 100644
index 0d45cc98c33..00000000000
--- a/testing/celery/celery.initd
+++ /dev/null
@@ -1,16 +0,0 @@
-#!/sbin/openrc-run
-supervisor=supervise-daemon
-
-description="celery queue worker"
-
-: ${CELERY_USER:="celery"}
-: ${CELERY_GROUP:="$(id -gn $LS_USER)"}
-
-pidfile="/run/$RC_SVCNAME.sd.pid"
-supervise_daemon_args="-u $CELERY_USER -g $CELERY_GROUP -p $pidfile"
-command=/usr/bin/celery
-command_args="${CELERY_OPTS}"
-
-depends() {
- use net
-}
diff --git a/testing/celery/celery.pre-install b/testing/celery/celery.pre-install
deleted file mode 100644
index 05ba0f501a3..00000000000
--- a/testing/celery/celery.pre-install
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/bin/sh
-
-addgroup -S celery 2>/dev/null
-adduser -S -D -H -h /usr/share/celery -s /sbin/nologin -G celery -g celery celery 2>/dev/null
-
-exit 0
-
diff --git a/testing/cemu/APKBUILD b/testing/cemu/APKBUILD
new file mode 100644
index 00000000000..b1f9feccf8d
--- /dev/null
+++ b/testing/cemu/APKBUILD
@@ -0,0 +1,107 @@
+# Contributor: Joshua Murphy <joshuamurphy@posteo.net>
+# Maintainer: Joshua Murphy <joshuamurphy@posteo.net>
+pkgname=cemu
+pkgver=2.0.61
+_pkgver=2.0-61
+pkgrel=0
+_cubeb=2071354a69aca7ed6df3b4222e305746c2113f60
+_imgui=f65bcf481ab34cd07d3909aab1479f409fa79f2f
+pkgdesc="Wii U Emulator"
+url="https://cemu.info"
+arch="x86_64"
+license="MPL-2.0"
+makedepends="
+ boost-dev
+ clang
+ cmake
+ curl-dev
+ fmt-dev
+ glm-dev
+ glslang-dev
+ glslang-static
+ gtk+3.0-dev
+ hidapi-dev
+ libpng-dev
+ libucontext-dev
+ libusb-dev
+ libzip-dev
+ lld
+ llvm
+ mesa-dev
+ nasm
+ openssl-dev
+ pugixml-dev
+ pulseaudio-dev
+ rapidjson-dev
+ samurai
+ sdl2-dev
+ speexdsp-dev
+ vulkan-loader-dev
+ wayland-dev
+ wxwidgets-dev
+ zarchive-dev
+ zlib-dev
+ zstd-dev
+ "
+subpackages="$pkgname-lang"
+source="$pkgname-$_pkgver.tar.gz::https://github.com/cemu-project/Cemu/archive/v$_pkgver.tar.gz
+ cubeb-$_cubeb.tar.gz::https://github.com/mozilla/cubeb/archive/$_cubeb.tar.gz
+ imgui-$_imgui.tar.gz::https://github.com/ocornut/imgui/archive/$_imgui.tar.gz
+ cmake-fixes.patch
+ execinfo.patch
+ "
+builddir="$srcdir/Cemu-$_pkgver"
+options="!check" # no tests
+
+prepare() {
+ default_prepare
+
+ rmdir dependencies/cubeb
+ rmdir dependencies/imgui
+
+ ln -sfv "$srcdir"/cubeb-$_cubeb dependencies/cubeb
+ ln -sfv "$srcdir"/imgui-$_imgui dependencies/imgui
+}
+
+build() {
+ if [ "$CBUILD" != "$CHOST" ]; then
+ local crossopts="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ export CC=clang
+ export CXX=clang++
+ export LDFLAGS="$LDFLAGS -fuse-ld=lld -lucontext"
+ cmake -B build -G Ninja -Wno-dev \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DENABLE_DISCORD_RPC=OFF \
+ -DENABLE_VCPKG=OFF \
+ -DPORTABLE=OFF \
+ -DUSE_SANITIZERS=OFF \
+ $crossopts
+ cmake --build build
+}
+
+package() {
+ mkdir -p "$pkgdir"/usr/lib/
+ cp -a bin/ "$pkgdir"/usr/lib/cemu
+
+ install -Dm755 /dev/stdin "$pkgdir"/usr/bin/cemu <<- EOF
+ #!/bin/sh
+ exec /usr/lib/cemu/Cemu_release "\$@"
+ EOF
+}
+
+lang() {
+ pkgdesc="Translations for $pkgname"
+ install_if="$pkgname=$pkgver-r$pkgrel lang"
+
+ amove usr/lib/cemu/resources/??
+}
+
+sha512sums="
+573b9795201066a6a1375095f586d08df1c01c8be609a638d1c3164c99e73468357199912079c8099608716bd631dc609bf86a12528eaf72bdbafb4a70caf0ff cemu-2.0-61.tar.gz
+64a25d58f6a842947ac8ee1125574fc6a34b261e97a11a9fcdf27cccaf35dad49f12f3f2d8abb1e057932059629c3e568421cf2c09b064d76de21c1a8d8542a3 cubeb-2071354a69aca7ed6df3b4222e305746c2113f60.tar.gz
+6e5bbede4435bd7248ae426eed519d702c5770ac211d2cf18c4b9f9fa7e83b901e4f80662c0f39e1d688bc3eaf674dd21c9d3e42e7324e5ab9bc16af67c13429 imgui-f65bcf481ab34cd07d3909aab1479f409fa79f2f.tar.gz
+79d1fd6c733094a50e11622ec611cd06ca609bb088210ba00534f846209dc7f1f09f8308ba0c04f60b37871218155dd1865df290ecffdc4275d6c5c703da6e6a cmake-fixes.patch
+0467091365c2cdb475bb6034115be4998af71803e351e5fdf7591a640eb328a22c7cc27c2760096410e2fd597989e6986e3fb6fceb91acde5ea47cdf9ba2bce6 execinfo.patch
+"
diff --git a/testing/cemu/cmake-fixes.patch b/testing/cemu/cmake-fixes.patch
new file mode 100644
index 00000000000..f7e96a4bbbc
--- /dev/null
+++ b/testing/cemu/cmake-fixes.patch
@@ -0,0 +1,21 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index c988508..d2fa47d 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -120,6 +120,8 @@ endif ()
+
+ option(ENABLE_WXWIDGETS "Build with wxWidgets UI (Currently required)" ON)
+
++find_package(PkgConfig REQUIRED)
++
+ set(THREADS_PREFER_PTHREAD_FLAG true)
+ find_package(Threads REQUIRED)
+ find_package(SDL2 REQUIRED)
+@@ -135,6 +137,7 @@ find_package(OpenSSL COMPONENTS Crypto SSL REQUIRED)
+ find_package(glm REQUIRED)
+ find_package(fmt 9 REQUIRED)
+ find_package(PNG REQUIRED)
++pkg_check_modules(EGL REQUIRED egl IMPORTED_TARGET GLOBAL)
+
+ # glslang versions older than 11.11.0 define targets without a namespace
+ if (NOT TARGET glslang::SPIRV AND TARGET SPIRV)
diff --git a/testing/cemu/execinfo.patch b/testing/cemu/execinfo.patch
new file mode 100644
index 00000000000..5c2dc0fbdbb
--- /dev/null
+++ b/testing/cemu/execinfo.patch
@@ -0,0 +1,42 @@
+diff --git a/src/Common/ExceptionHandler/ExceptionHandler_posix.cpp b/src/Common/ExceptionHandler/ExceptionHandler_posix.cpp
+index 34430e3..35df995 100644
+--- a/src/Common/ExceptionHandler/ExceptionHandler_posix.cpp
++++ b/src/Common/ExceptionHandler/ExceptionHandler_posix.cpp
+@@ -1,5 +1,5 @@
+ #include <signal.h>
+-#include <execinfo.h>
++//#include <execinfo.h>
+ #include <string.h>
+ #include <string>
+ #include "config/CemuConfig.h"
+@@ -76,10 +76,10 @@ void handlerDumpingSignal(int sig, siginfo_t *info, void *context)
+ }
+
+ void* backtraceArray[128];
+- size_t size;
++ size_t size = 0;
+
+ // get void*'s for all entries on the stack
+- size = backtrace(backtraceArray, 128);
++ //size = backtrace(backtraceArray, 128);
+ // replace the deepest entry with the actual crash address
+ #if defined(ARCH_X86_64) && BOOST_OS_LINUX > 0
+ ucontext_t *uc = (ucontext_t *)context;
+@@ -89,7 +89,7 @@ void handlerDumpingSignal(int sig, siginfo_t *info, void *context)
+ CrashLog_WriteLine(fmt::format("Error: signal {}:", sig));
+
+ #if BOOST_OS_LINUX
+- char** symbol_trace = backtrace_symbols(backtraceArray, size);
++ char** symbol_trace = NULL;
+
+ if (symbol_trace)
+ {
+@@ -98,7 +98,7 @@ void handlerDumpingSignal(int sig, siginfo_t *info, void *context)
+ }
+ else
+ {
+- CrashLog_WriteLine("Failed to read backtrace");
++ CrashLog_WriteLine("No backtraces");
+ }
+ #else
+ backtrace_symbols_fd(backtraceArray, size, STDERR_FILENO);
diff --git a/testing/ceph17/10-musl-fixes.patch b/testing/ceph17/10-musl-fixes.patch
deleted file mode 100644
index 1b7c9079c1d..00000000000
--- a/testing/ceph17/10-musl-fixes.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-fix for musl
-
-diff -Nurp a/src/tools/rbd_nbd/rbd-nbd.cc b/src/tools/rbd_nbd/rbd-nbd.cc
---- a/src/tools/rbd_nbd/rbd-nbd.cc 2020-11-21 08:06:35.834423310 +0000
-+++ b/src/tools/rbd_nbd/rbd-nbd.cc 2020-11-21 08:21:12.067978842 +0000
-@@ -576,7 +576,8 @@ private:
- for (unsigned i = 0; i < cmdline.size(); i++) {
- char *arg = &cmdline[i];
- if (i == 0) {
-- if (strcmp(basename(arg) , "rbd-nbd") != 0) {
-+ const char *fname = strrchr(arg, '/');
-+ if (strcmp(fname ? fname+1 : arg, "rbd-nbd") != 0) {
- return -EINVAL;
- }
- } else {
diff --git a/testing/ceph17/11-dump_time_header_impl.patch b/testing/ceph17/11-dump_time_header_impl.patch
deleted file mode 100644
index d19e7ed596a..00000000000
--- a/testing/ceph17/11-dump_time_header_impl.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-Patch by Robin Mueller
-
-The strftime method of the libmusl writes 'UTC' instead of 'GMT' when
-the character Z is used in the format pattern, and it looks like the
-S3 clients don't like 'UTC' in the date strings.
-
-This patch replaces 'UTC' with 'GMT' at the relevant location.
-
---- a/src/rgw/rgw_rest.cc 2021-07-08 16:03:56.000000000 +0200
-+++ b/src/rgw/rgw_rest.cc 2021-08-19 09:48:30.339492024 +0200
-@@ -436,8 +436,21 @@
- return 0;
- }
-
-- return strftime(timestr, sizeof(timestr),
-- "%a, %d %b %Y %H:%M:%S %Z", tmp);
-+ size_t len = strftime(timestr, sizeof(timestr),
-+ "%a, %d %b %Y %H:%M:%S %Z", tmp);
-+
-+ int position = 0;
-+ while (timestr[position] != 'U' && len - position > 3)
-+ position++;
-+
-+ if (len - position == 3) {
-+ char substr[4];
-+ memcpy(substr, &timestr[position], 4);
-+
-+ if (strcmp(substr, "UTC") == 0)
-+ memcpy(&timestr[position], "GMT", 3);
-+ }
-+ return len;
- }
-
- void dump_time_header(struct req_state *s, const char *name, real_time t)
diff --git a/testing/ceph17/11-parse_rfc1123_alt.patch b/testing/ceph17/11-parse_rfc1123_alt.patch
deleted file mode 100644
index 32a7cd8a130..00000000000
--- a/testing/ceph17/11-parse_rfc1123_alt.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-Patch by Robin Mueller
-
-libmusl doesn't support the z character in the format pattern for strptime this
-is a special functionality of glibc.
-
-patch is slightly adapted version of glibc code:
-https://elixir.bootlin.com/glibc/latest/source/time/strptime_l.c#L776
-
---- a/src/rgw/rgw_common.cc 2021-07-08 16:03:56.000000000 +0200
-+++ b/src/rgw/rgw_common.cc 2021-08-18 13:08:22.938903459 +0200
-@@ -531,7 +531,41 @@
- {
- // FIPS zeroization audit 20191115: this memset is not security related.
- memset(t, 0, sizeof(*t));
-- return check_str_end(strptime(s, "%a, %d %b %Y %H:%M:%S %z", t));
-+ s = strptime(s, "%a, %d %b %Y %H:%M:%S", t);
-+ if (s) {
-+ s++;
-+ int val;
-+ val = 0;
-+ while (isspace(*s))
-+ ++s;
-+ if (*s == 'Z') {
-+ ++s;
-+ t->tm_gmtoff = 0;
-+ } else {
-+ if (*s != '+' && *s != '-')
-+ return NULL;
-+ bool neg = *s++ == '-';
-+ int n = 0;
-+ while (n < 4 && *s >= '0' && *s <= '9') {
-+ val = val * 10 + *s++ - '0';
-+ ++n;
-+ if (*s == ':' && n == 2 && isdigit (*(s + 1)))
-+ ++s;
-+ }
-+ if (n == 2)
-+ val *= 100;
-+ else if (n != 4)
-+ /* Only two or four digits recognized. */
-+ return NULL;
-+ else if (val % 100 >= 60)
-+ /* Minutes valid range is 0 through 59. */
-+ return NULL;
-+ t->tm_gmtoff = (val / 100) * 3600 + (val % 100) * 60;
-+ if (neg)
-+ t->tm_gmtoff = -t->tm_gmtoff;
-+ }
-+ }
-+ return check_str_end(s);
- }
-
- bool parse_rfc2616(const char *s, struct tm *t)
diff --git a/testing/ceph17/11-s3_expiration_header.patch b/testing/ceph17/11-s3_expiration_header.patch
deleted file mode 100644
index ac12a833556..00000000000
--- a/testing/ceph17/11-s3_expiration_header.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-Patch by Robin Mueller
-
-Fix musl date handling
-
---- a/src/rgw/rgw_lc.cc 2021-09-16 16:27:19.000000000 +0200
-+++ b/src/rgw/rgw_lc.cc 2021-10-01 09:17:06.996639952 +0200
-@@ -2238,8 +2238,21 @@
- // Fri, 23 Dec 2012 00:00:00 GMT
- char exp_buf[100];
- time_t exp = ceph::real_clock::to_time_t(*expiration_date);
-- if (std::strftime(exp_buf, sizeof(exp_buf),
-- "%a, %d %b %Y %T %Z", std::gmtime(&exp))) {
-+ std::size_t len = std::strftime(exp_buf, sizeof(exp_buf), "%a, %d %b %Y %T %Z", std::gmtime(&exp));
-+
-+ if (len) {
-+ int position = 0;
-+ while (exp_buf[position] != 'U' && len - position > 3)
-+ position++;
-+
-+ if (len - position == 3) {
-+ char substr[4];
-+ memcpy(substr, &exp_buf[position], 4);
-+
-+ if (strcmp(substr, "UTC") == 0)
-+ memcpy(&exp_buf[position], "GMT", 3);
-+ }
-+
- hdr = fmt::format("expiry-date=\"{0}\", rule-id=\"{1}\"", exp_buf,
- *rule_id);
- } else {
diff --git a/testing/ceph17/12-arrow.patch b/testing/ceph17/12-arrow.patch
deleted file mode 100644
index 11b611850b7..00000000000
--- a/testing/ceph17/12-arrow.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-issue submitted as: https://tracker.ceph.com/issues/55420
-
---- a/src/rgw/CMakeLists.txt
-+++ b/src/rgw/CMakeLists.txt
-@@ -4,7 +4,7 @@
- endif()
-
- if(WITH_RADOSGW_SELECT_PARQUET)
-- set(ARROW_LIBRARIES Arrow::Parquet)
-+ set(ARROW_LIBRARIES "-larrow -lparquet")
- add_definitions(-D_ARROW_EXIST)
- message("-- arrow is installed, radosgw/s3select-op is able to process parquet objects")
- endif(WITH_RADOSGW_SELECT_PARQUET)
diff --git a/testing/ceph17/13-liburing.patch b/testing/ceph17/13-liburing.patch
deleted file mode 100644
index 67a66d14a32..00000000000
--- a/testing/ceph17/13-liburing.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-Use shared liburing not static
-
-diff -Nurp a/cmake/modules/Finduring.cmake b/cmake/modules/Finduring.cmake
---- a/cmake/modules/Finduring.cmake 2022-04-09 18:16:42.238105758 +0100
-+++ b/cmake/modules/Finduring.cmake 2022-04-09 18:17:06.378003925 +0100
-@@ -5,7 +5,7 @@
- # uring_FOUND - True if uring found.
-
- find_path(URING_INCLUDE_DIR liburing.h)
--find_library(URING_LIBRARIES liburing.a liburing)
-+find_library(URING_LIBRARIES liburing.so liburing)
-
- include(FindPackageHandleStandardArgs)
- find_package_handle_standard_args(uring DEFAULT_MSG URING_LIBRARIES URING_INCLUDE_DIR)
diff --git a/testing/ceph17/20-pci.patch b/testing/ceph17/20-pci.patch
deleted file mode 100644
index c16e27699eb..00000000000
--- a/testing/ceph17/20-pci.patch
+++ /dev/null
@@ -1,63 +0,0 @@
-Musl patch for pci
-
-diff -Nurp a/src/spdk/dpdk/drivers/bus/pci/linux/pci_uio.c b/src/spdk/dpdk/drivers/bus/pci/linux/pci_uio.c
---- a/src/spdk/dpdk/drivers/bus/pci/linux/pci_uio.c 2020-11-21 13:07:44.255206657 +0000
-+++ b/src/spdk/dpdk/drivers/bus/pci/linux/pci_uio.c 2020-11-21 13:04:06.488285583 +0000
-@@ -14,6 +14,32 @@
-
- #if defined(RTE_ARCH_X86)
- #include <sys/io.h>
-+#if defined(__GLIBC__)
-+#define pci_uio_outl_p outl_p
-+#define pci_uio_outw_p outw_p
-+#define pci_uio_outb_p outb_p
-+#else
-+static inline void
-+pci_uio_outl_p(unsigned int value, unsigned short int port)
-+{
-+ __asm__ __volatile__ ("outl %0,%w1\noutb %%al,$0x80" : : "a" (value),
-+ "Nd" (port));
-+}
-+
-+static inline void
-+pci_uio_outw_p(unsigned short int value, unsigned short int port)
-+{
-+ __asm__ __volatile__ ("outw %w0,%w1\noutb %%al,$0x80" : : "a" (value),
-+ "Nd" (port));
-+}
-+
-+static inline void
-+pci_uio_outb_p(unsigned char value, unsigned short int port)
-+{
-+ __asm__ __volatile__ ("outb %b0,%w1\noutb %%al,$0x80" : : "a" (value),
-+ "Nd" (port));
-+}
-+#endif
- #endif
-
- #include <rte_string_fns.h>
-@@ -528,21 +554,21 @@ pci_uio_ioport_write(struct rte_pci_iopo
- if (len >= 4) {
- size = 4;
- #if defined(RTE_ARCH_X86)
-- outl_p(*(const uint32_t *)s, reg);
-+ pci_uio_outl_p(*(const uint32_t *)s, reg);
- #else
- *(volatile uint32_t *)reg = *(const uint32_t *)s;
- #endif
- } else if (len >= 2) {
- size = 2;
- #if defined(RTE_ARCH_X86)
-- outw_p(*(const uint16_t *)s, reg);
-+ pci_uio_outw_p(*(const uint16_t *)s, reg);
- #else
- *(volatile uint16_t *)reg = *(const uint16_t *)s;
- #endif
- } else {
- size = 1;
- #if defined(RTE_ARCH_X86)
-- outb_p(*s, reg);
-+ pci_uio_outb_p(*s, reg);
- #else
- *(volatile uint8_t *)reg = *s;
- #endif
diff --git a/testing/ceph17/21-cypress.patch b/testing/ceph17/21-cypress.patch
deleted file mode 100644
index 4c738bbd834..00000000000
--- a/testing/ceph17/21-cypress.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-Cypress is not available for 32bit and only used for tests
-
-diff -Nurp a/src/pybind/mgr/dashboard/frontend/package.json b/src/pybind/mgr/dashboard/frontend/package.json
---- a/src/pybind/mgr/dashboard/frontend/package.json 2022-02-26 15:22:09.715994872 +0000
-+++ b/src/pybind/mgr/dashboard/frontend/package.json 2022-02-26 15:22:56.975770423 +0000
-@@ -119,8 +119,6 @@
- "@types/simplebar": "5.1.1",
- "@types/swagger-ui": "3.52.0",
- "codelyzer": "6.0.2",
-- "cypress": "9.0.0",
-- "cypress-multi-reporters": "1.5.0",
- "html-linter": "1.1.1",
- "htmllint-cli": "0.0.7",
- "identity-obj-proxy": "3.0.0",
diff --git a/testing/ceph17/30-32bit_fix.patch.noauto b/testing/ceph17/30-32bit_fix.patch.noauto
deleted file mode 100644
index aba21d64007..00000000000
--- a/testing/ceph17/30-32bit_fix.patch.noauto
+++ /dev/null
@@ -1,110 +0,0 @@
-32bit specific patches
-
-diff -uNr ceph-15.2.4/src/client/Client.cc ceph-15.2.4-arm32_fix/src/client/Client.cc
---- ceph-15.2.4/src/client/Client.cc 2020-07-01 01:10:51.000000000 +0930
-+++ ceph-15.2.4-arm32_fix/src/client/Client.cc 2020-11-21 22:11:16.061796876 +1030
-@@ -10948,7 +10948,7 @@
- ldout(cct, 20) << __func__ << " " << in << " " << in->ino << " -> " << in->ll_ref << dendl;
- }
-
--int Client::_ll_put(Inode *in, uint64_t num)
-+int Client::_ll_put(Inode *in, size_t num)
- {
- in->ll_put(num);
- ldout(cct, 20) << __func__ << " " << in << " " << in->ino << " " << num << " -> " << in->ll_ref << dendl;
-@@ -10989,7 +10989,7 @@
- }
- }
-
--bool Client::_ll_forget(Inode *in, uint64_t count)
-+bool Client::_ll_forget(Inode *in, size_t count)
- {
- inodeno_t ino = in->ino;
-
-@@ -11018,7 +11018,7 @@
- return last;
- }
-
--bool Client::ll_forget(Inode *in, uint64_t count)
-+bool Client::ll_forget(Inode *in, size_t count)
- {
- std::lock_guard lock(client_lock);
- return _ll_forget(in, count);
-diff -uNr ceph-15.2.4/src/mds/PurgeQueue.h ceph-15.2.4-arm32_fix/src/mds/PurgeQueue.h
---- ceph-15.2.4/src/mds/PurgeQueue.h 2020-07-01 01:10:51.000000000 +0930
-+++ ceph-15.2.4-arm32_fix/src/mds/PurgeQueue.h 2020-11-21 22:11:16.065796889 +1030
-@@ -219,6 +219,6 @@
- size_t purge_item_journal_size;
-
- uint64_t ops_high_water = 0;
-- uint64_t files_high_water = 0;
-+ size_t files_high_water = 0;
- };
- #endif
-diff -uNr ceph-15.2.4/src/test/common/test_json_formattable.cc ceph-15.2.4-arm32_fix/src/test/common/test_json_formattable.cc
---- ceph-15.2.4/src/test/common/test_json_formattable.cc 2020-07-01 01:10:51.000000000 +0930
-+++ ceph-15.2.4-arm32_fix/src/test/common/test_json_formattable.cc 2020-11-21 22:11:16.065796889 +1030
-@@ -371,7 +371,7 @@
-
- struct2() {
- void *p = (void *)this;
-- long i = (long)p;
-+ unsigned long i = (unsigned long)p;
- v.resize((i >> 16) % 16 + 1);
- }
-
-diff -uNr ceph-15.2.4/src/test/libcephfs/ceph_pthread_self.h ceph-15.2.4-arm32_fix/src/test/libcephfs/ceph_pthread_self.h
---- ceph-15.2.4/src/test/libcephfs/ceph_pthread_self.h 2020-07-01 01:10:51.000000000 +0930
-+++ ceph-15.2.4-arm32_fix/src/test/libcephfs/ceph_pthread_self.h 2020-11-21 22:11:16.066796893 +1030
-@@ -25,7 +25,7 @@
- static_assert(std::is_convertible_v<decltype(me), uint64_t> ||
- std::is_pointer_v<decltype(me)>,
- "we need to use pthread_self() for the owner parameter");
-- return reinterpret_cast<uint64_t>(me);
-+ return reinterpret_cast<uint64_t>((uint64_t) me);
- }
-
- #endif
-diff -uNr ceph-15.2.4/src/test/rbd_mirror/image_deleter/test_mock_TrashWatcher.cc ceph-15.2.4-arm32_fix/src/test/rbd_mirror/image_deleter/test_mock_TrashWatcher.cc
---- ceph-15.2.4/src/test/rbd_mirror/image_deleter/test_mock_TrashWatcher.cc 2020-07-01 01:10:51.000000000 +0930
-+++ ceph-15.2.4-arm32_fix/src/test/rbd_mirror/image_deleter/test_mock_TrashWatcher.cc 2020-11-21 22:11:16.066796893 +1030
-@@ -162,7 +162,7 @@
- int r) {
- bufferlist bl;
- encode(last_image_id, bl);
-- encode(static_cast<size_t>(1024), bl);
-+ encode(static_cast<uint64_t>(1024), bl);
-
- bufferlist out_bl;
- encode(images, out_bl);
-diff -Nurp a/src/client/Client.h b/src/client/Client.h
---- a/src/client/Client.h
-+++ b/src/client/Client.h
-@@ -525,7 +525,7 @@
- int ll_lookupx(Inode *parent, const char *name, Inode **out,
- struct ceph_statx *stx, unsigned want, unsigned flags,
- const UserPerm& perms);
-- bool ll_forget(Inode *in, uint64_t count);
-+ bool ll_forget(Inode *in, size_t count);
- bool ll_put(Inode *in);
- int ll_get_snap_ref(snapid_t snap);
-
-@@ -1241,7 +1241,7 @@
- void _fragmap_remove_stopped_mds(Inode *in, mds_rank_t mds);
-
- void _ll_get(Inode *in);
-- int _ll_put(Inode *in, uint64_t num);
-+ int _ll_put(Inode *in, size_t num);
- void _ll_drop_pins();
-
- Fh *_create_fh(Inode *in, int flags, int cmode, const UserPerm& perms);
-@@ -1405,7 +1405,7 @@
- int _lookup_parent(Inode *in, const UserPerm& perms, Inode **parent=NULL);
- int _lookup_name(Inode *in, Inode *parent, const UserPerm& perms);
- int _lookup_vino(vinodeno_t ino, const UserPerm& perms, Inode **inode=NULL);
-- bool _ll_forget(Inode *in, uint64_t count);
-+ bool _ll_forget(Inode *in, size_t count);
-
- void collect_and_send_metrics();
- void collect_and_send_global_metrics();
-
diff --git a/testing/ceph17/30-ubuntu-32bit-fixes.patch.noauto b/testing/ceph17/30-ubuntu-32bit-fixes.patch.noauto
deleted file mode 100644
index e07dbfe73ec..00000000000
--- a/testing/ceph17/30-ubuntu-32bit-fixes.patch.noauto
+++ /dev/null
@@ -1,115 +0,0 @@
-Description: Misc fixes for 32 bit architecture builds.
-Author: James Page <james.page@ubuntu.com>
-Forwarded: no
-
---- a/src/tools/rbd_mirror/image_replayer/snapshot/Replayer.cc
-+++ b/src/tools/rbd_mirror/image_replayer/snapshot/Replayer.cc
-@@ -235,7 +235,8 @@ bool Replayer<I>::get_replay_status(std:
-
- json_spirit::mObject root_obj;
- root_obj["replay_state"] = replay_state;
-- root_obj["remote_snapshot_timestamp"] = remote_snap_info->timestamp.sec();
-+ root_obj["remote_snapshot_timestamp"] = static_cast<uint64_t>(
-+ remote_snap_info->timestamp.sec());
-
- auto matching_remote_snap_id = util::compute_remote_snap_id(
- m_state_builder->local_image_ctx->image_lock,
-@@ -249,8 +250,8 @@ bool Replayer<I>::get_replay_status(std:
- // use the timestamp from the matching remote image since
- // the local snapshot would just be the time the snapshot was
- // synced and not the consistency point in time.
-- root_obj["local_snapshot_timestamp"] =
-- matching_remote_snap_it->second.timestamp.sec();
-+ root_obj["local_snapshot_timestamp"] = static_cast<uint64_t>(
-+ matching_remote_snap_it->second.timestamp.sec());
- }
-
- matching_remote_snap_it = m_state_builder->remote_image_ctx->snap_info.find(
-@@ -258,7 +259,8 @@ bool Replayer<I>::get_replay_status(std:
- if (m_remote_snap_id_end != CEPH_NOSNAP &&
- matching_remote_snap_it !=
- m_state_builder->remote_image_ctx->snap_info.end()) {
-- root_obj["syncing_snapshot_timestamp"] = remote_snap_info->timestamp.sec();
-+ root_obj["syncing_snapshot_timestamp"] = static_cast<uint64_t>(
-+ remote_snap_info->timestamp.sec());
- root_obj["syncing_percent"] = static_cast<uint64_t>(
- 100 * m_local_mirror_snap_ns.last_copied_object_number /
- static_cast<float>(std::max<uint64_t>(1U, m_local_object_count)));
---- a/src/os/bluestore/BlueFS.cc
-+++ b/src/os/bluestore/BlueFS.cc
-@@ -3744,11 +3744,11 @@ int BlueFS::do_replay_recovery_read(File
-
- size_t BlueFS::probe_alloc_avail(int dev, uint64_t alloc_size)
- {
-- size_t total = 0;
-- auto iterated_allocation = [&](size_t off, size_t len) {
-+ uint64_t total = 0;
-+ auto iterated_allocation = [&](uint64_t off, uint64_t len) {
- //only count in size that is alloc_size aligned
-- size_t dist_to_alignment;
-- size_t offset_in_block = off & (alloc_size - 1);
-+ uint64_t dist_to_alignment;
-+ uint64_t offset_in_block = off & (alloc_size - 1);
- if (offset_in_block == 0)
- dist_to_alignment = 0;
- else
---- a/src/tools/neorados.cc
-+++ b/src/tools/neorados.cc
-@@ -146,7 +146,7 @@ void create(R::RADOS& r, const std::vect
- obj, pname));
- }
-
--inline constexpr std::size_t io_size = 4 << 20;
-+inline constexpr std::uint64_t io_size = 4 << 20;
-
- void write(R::RADOS& r, const std::vector<std::string>& p, s::yield_context y)
- {
-@@ -156,7 +156,7 @@ void write(R::RADOS& r, const std::vecto
-
- bs::error_code ec;
- std::unique_ptr<char[]> buf = std::make_unique<char[]>(io_size);
-- std::size_t off = 0;
-+ std::uint64_t off = 0;
- boost::io::ios_exception_saver ies(std::cin);
-
- std::cin.exceptions(std::istream::badbit);
-@@ -203,7 +203,7 @@ void read(R::RADOS& r, const std::vector
- obj, pname));
- }
-
-- std::size_t off = 0;
-+ std::uint64_t off = 0;
- ceph::buffer::list bl;
- while (auto toread = std::max(len - off, io_size)) {
- R::ReadOp op;
---- a/src/tools/cephfs_mirror/FSMirror.cc
-+++ b/src/tools/cephfs_mirror/FSMirror.cc
-@@ -334,7 +334,7 @@ void FSMirror::handle_acquire_directory(
- std::scoped_lock locker(m_lock);
- m_directories.emplace(dir_path);
- m_service_daemon->add_or_update_fs_attribute(m_filesystem.fscid, SERVICE_DAEMON_DIR_COUNT_KEY,
-- m_directories.size());
-+ static_cast<uint64_t>(m_directories.size()));
-
- for (auto &[peer, peer_replayer] : m_peer_replayers) {
- dout(10) << ": peer=" << peer << dendl;
-@@ -352,7 +352,7 @@ void FSMirror::handle_release_directory(
- if (it != m_directories.end()) {
- m_directories.erase(it);
- m_service_daemon->add_or_update_fs_attribute(m_filesystem.fscid, SERVICE_DAEMON_DIR_COUNT_KEY,
-- m_directories.size());
-+ static_cast<uint64_t>(m_directories.size()));
- for (auto &[peer, peer_replayer] : m_peer_replayers) {
- dout(10) << ": peer=" << peer << dendl;
- peer_replayer->remove_directory(dir_path);
---- a/src/SimpleRADOSStriper.cc
-+++ b/src/SimpleRADOSStriper.cc
-@@ -140,7 +140,7 @@ int SimpleRADOSStriper::remove()
- return 0;
- }
-
--int SimpleRADOSStriper::truncate(uint64_t size)
-+int SimpleRADOSStriper::truncate(size_t size)
- {
- d(5) << size << dendl;
-
diff --git a/testing/ceph17/35-fix_ErasureCodeShec.patch b/testing/ceph17/35-fix_ErasureCodeShec.patch
deleted file mode 100644
index 0ab2cc2ed0c..00000000000
--- a/testing/ceph17/35-fix_ErasureCodeShec.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-patch by Vladimir Bashkirtsev
-
-diff -uNr ceph-15.2.4/src/erasure-code/shec/ErasureCodeShec.cc ceph-15.2.4-fix_ErasureCodeShec/src/erasure-code/shec/ErasureCodeShec.cc
---- ceph-15.2.4/src/erasure-code/shec/ErasureCodeShec.cc 2020-07-01 01:10:51.000000000 +0930
-+++ ceph-15.2.4-fix_ErasureCodeShec/src/erasure-code/shec/ErasureCodeShec.cc 2020-11-14 00:46:20.029488684 +1030
-@@ -197,7 +197,10 @@
- }
- unsigned int k = get_data_chunk_count();
- unsigned int m = get_chunk_count() - k;
-- unsigned blocksize = (*chunks.begin()).second.length();
-+ unsigned blocksize = 0;
-+ if (chunks.size() > 0) {
-+ blocksize = (*chunks.begin()).second.length();
-+ }
- for (unsigned int i = 0; i < k + m; i++) {
- if (chunks.find(i) == chunks.end()) {
- bufferlist tmp;
diff --git a/testing/ceph17/38-aio.patch b/testing/ceph17/38-aio.patch
deleted file mode 100644
index f8a8ee892b3..00000000000
--- a/testing/ceph17/38-aio.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -Nurp a/src/rgw/rgw_d3n_datacache.cc b/src/rgw/rgw_d3n_datacache.cc
---- a/src/rgw/rgw_d3n_datacache.cc 2022-02-26 09:14:35.977956275 +0000
-+++ b/src/rgw/rgw_d3n_datacache.cc 2022-02-26 14:05:24.935725031 +0000
-@@ -97,7 +97,7 @@ void D3nDataCache::init(CephContext *_cc
- if (conf_eviction_policy == "random")
- eviction_policy = _eviction_policy::RANDOM;
-
--#if defined(HAVE_LIBAIO)
-+#if defined(HAVE_LIBAIO_BROKEN)
- // libaio setup
- struct aioinit ainit{0};
- ainit.aio_threads = cct->_conf.get_val<int64_t>("rgw_d3n_libaio_aio_threads");
diff --git a/testing/ceph17/39-req_bytes.patch b/testing/ceph17/39-req_bytes.patch
deleted file mode 100644
index c445f34a079..00000000000
--- a/testing/ceph17/39-req_bytes.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Submitted as: https://github.com/ceph/ceph/pull/45185
-
---- a/src/os/bluestore/BlueStore.cc
-+++ b/src/os/bluestore/BlueStore.cc
-@@ -18548,7 +18548,7 @@
- uint64_t extent_count = 0;
- uint64_t extents_bytes_left = file_size - (header_size + trailer_size + sizeof(crc));
- while (extents_bytes_left) {
-- int req_bytes = std::min(extents_bytes_left, sizeof(buffer));
-+ int req_bytes = std::min(extents_bytes_left, static_cast<uint64_t>(sizeof(buffer)));
- int read_bytes = bluefs->read(p_handle.get(), offset, req_bytes, nullptr, (char*)buffer);
- if (read_bytes != req_bytes) {
- derr << "Failed bluefs->read()::read_bytes=" << read_bytes << ", req_bytes=" << req_bytes << dendl;
diff --git a/testing/ceph17/40-nasm.patch b/testing/ceph17/40-nasm.patch
deleted file mode 100644
index d831fba947b..00000000000
--- a/testing/ceph17/40-nasm.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-Submitted as: https://github.com/ceph/ceph/pull/45368
-
---- a/src/nasm-wrapper
-+++ b/src/nasm-wrapper
-@@ -37,6 +37,10 @@
- refine_nasm_options+=" -i $1"
- shift
- ;;
-+ -O* )
-+ # ignore C optimisations
-+ shift
-+ ;;
- * )
- # Keep other options
- refine_nasm_options+=" $1"
diff --git a/testing/ceph17/APKBUILD b/testing/ceph17/APKBUILD
deleted file mode 100644
index 479b4f84e9a..00000000000
--- a/testing/ceph17/APKBUILD
+++ /dev/null
@@ -1,559 +0,0 @@
-# Contributor: John Coyle <dx9err@gmail.com>
-# Contributor: Iggy Jackson <iggy@kws1.com>
-# Contributor: Duncan Bellamy <dunk@denkimushi.com>
-# Maintainer: Duncan Bellamy <dunk@denkimushi.com>
-_pkgname=ceph
-pkgver=17.2.0
-_majorver=${pkgver%%.*}
-pkgname=$_pkgname$_majorver
-pkgrel=4
-pkgdesc="Ceph is a distributed object store and file system, version $_majorver"
-pkgusers="ceph"
-pkggroups="ceph"
-url="https://ceph.io/en/"
-# riscv64 missing nodejs
-arch="all !riscv64"
-# https://github.com/ceph/ceph/blob/master/COPYING
-license="LGPL-2.1-only AND LGPL-2.0-or-later AND GPL-2.0-only AND GPL-3.0-only AND CC-BY-SA-1.0 AND BSL-1.0 AND GPL-2.0-or-later WITH Autoconf-exception-2.0 AND BSD-3-Clause AND MIT AND custom"
-depends="$pkgname-osd $pkgname-mds $pkgname-mon"
-builddir="$srcdir/ceph-$pkgver"
-_lua=5.4
-_base_deps="
- cryptsetup
- e2fsprogs
- logrotate
- parted
- psmisc
- xfsprogs
- "
-_osd_daemon_deps="fuse snappy lz4-libs"
-_osd_tools_deps="lz4-libs"
-_ceph_volume_deps="lvm2"
-_ceph_test_deps="
- gtest-dev
- py3-coverage
- py3-flake8
- py3-nodeenv
- py3-pytest
- py3-tox
- py3-yaml
- xmlstarlet
- "
-case "$CARCH" in
- s390x) _arrow_deps="" ;;
- *) _arrow_deps="apache-arrow-dev apache-arrow-static c-ares-dev re2-dev" ;;
-esac
-makedepends="
- acl-dev
- argp-standalone
- bc
- boost-dev
- btrfs-progs
- bzip2-dev
- cmake
- coreutils
- cryptsetup-dev
- cunit-dev
- curl-dev
- cython
- diffutils
- doxygen
- eudev-dev
- expat-dev
- fcgi-dev
- flex
- fmt-dev
- fuse-dev
- git
- graphviz-dev
- gperf
- jq
- keyutils-dev
- libaio-dev
- libatomic_ops-dev
- libcap-ng-dev
- libedit-dev
- librdkafka-dev
- libnl3-dev
- libtirpc-dev
- libtool
- liburing-dev
- libxml2-dev
- linux-headers
- lua$_lua-dev
- lvm2-dev
- lz4-dev
- nasm
- nodejs
- npm
- nss-dev
- oath-toolkit-dev
- openldap-dev
- openssl1.1-compat-dev
- procps
- python3-dev
- py3-sphinx
- rabbitmq-c-dev
- readline-dev
- rpcgen
- samurai
- snappy-dev
- sqlite-dev
- userspace-rcu-dev
- util-linux-dev
- xfsprogs-dev
- xmlstarlet
- yasm
- zstd-dev
- $_base_deps
- $_osd_daemon_deps
- $_osd_tools_deps
- $_ceph_volume_deps
- $_ceph_test_deps
- $_arrow_deps
- "
-
-source="https://download.ceph.com/tarballs/ceph-$pkgver.tar.gz
- ceph.confd
- ceph.initd
- 10-musl-fixes.patch
- 11-dump_time_header_impl.patch
- 11-parse_rfc1123_alt.patch
- 11-s3_expiration_header.patch
- 12-arrow.patch
- 13-liburing.patch
- 20-pci.patch
- 21-cypress.patch
- 30-32bit_fix.patch.noauto
- 30-ubuntu-32bit-fixes.patch.noauto
- 35-fix_ErasureCodeShec.patch
- 38-aio.patch
- 39-req_bytes.patch
- 40-nasm.patch
- "
-# to prevent things from installing ceph17 libs, since they have the same SOMAJOR
-sonameprefix="ceph$_majorver:so:"
-
-subpackages="
- $pkgname-doc
- $pkgname-base
- $pkgname-common
- $pkgname-mds
- $pkgname-mgr
- $pkgname-mon::noarch
- $pkgname-mon-daemon:mon_daemon
- $pkgname-mon-tools:mon_tools
- $pkgname-fuse:ceph_fuse
- $pkgname-openrc
- $pkgname-osd::noarch
- $pkgname-osd-daemon:osd_daemon
- $pkgname-osd-tools:osd_tools
- $pkgname-volume:ceph_volume:noarch
- $pkgname-radosgw
- $pkgname-bash-completion:bash_completion:noarch
- $pkgname-dev
- $pkgname-user::noarch
- $pkgname-utils
- rbd-fuse$_majorver:rbd_fuse
- rbd-mirror$_majorver:rbd_mirror
- rbd-nbd$_majorver:rbd_nbd
- librbd$_majorver:librbd
- libcephfs$_majorver:libcephfs
- libcephsqlite$_majorver:libcephsqlite
- librados$_majorver:librados
- py3-rados$_majorver:_py3_rados
- libradosstriper$_majorver:libradosstriper
- py3-rbd$_majorver:_py3_rbd
- py3-cephfs$_majorver:_py3_cephfs
- "
-
-_ceph_uid=167
-_ceph_gid=167
-
-_py3_sitelib() {
- python3 -c "import site; print(site.getsitepackages()[0])"
-}
-
-prepare() {
- default_prepare
-
- case "$CARCH" in
- x86|armv7|armhf)
- patch -p1 -i "$srcdir"/30-32bit_fix.patch.noauto
- patch -p1 -i "$srcdir"/30-ubuntu-32bit-fixes.patch.noauto ;;
- esac
-
- # delete bundled boost as >300mb and using system boost
- rm -rf src/boost
-}
-
-build() {
- export CEPH_BUILD_VIRTUALENV="$builddir"
- export NPM_REGISTRY="https://npm.open-registry.dev"
- export CXXFLAGS="$CXXFLAGS -fpermissive"
-
- case "$CARCH" in
- s390x) _par="OFF" ;;
- *) _par="ON" ;;
- esac
-
- cmake -B build \
- -G Ninja \
- -DCMAKE_CXX_FLAGS="$CXXFLAGS" \
- -DCMAKE_BUILD_TYPE=MinSizeRel \
- "-DCMAKE_JOB_POOLS:STRING=compile=$((JOBS<16 ? JOBS : 16));link=2" \
- -DCMAKE_JOB_POOL_COMPILE:STRING=compile \
- -DCMAKE_JOB_POOL_LINK:STRING=link \
- -DLUA_LIBRARIES=/usr/lib/lua"$_lua"/liblua.so \
- -DALLOCATOR=libc \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=/usr/lib \
- -DCMAKE_INSTALL_LOCALSTATEDIR=/var \
- -DCMAKE_INSTALL_SYSCONFDIR=/etc \
- -DWITH_REENTRANT_STRSIGNAL=ON \
- -DWITH_THREAD_SAFE_RES_QUERY=ON \
- -DWITH_MANPAGE=ON \
- -DWITH_SYSTEM_BOOST=ON \
- -DWITH_SYSTEM_LIBURING=ON \
- -DWITH_SYSTEM_NPM=ON \
- -DWITH_SYSTEM_ROCKSDB=OFF \
- -DWITH_SYSTEM_ARROW=ON \
- -DWITH_PYTHON3=3 \
- -DWITH_LTTNG=OFF \
- -DWITH_RDMA=OFF \
- -DWITH_SYSTEMD=OFF \
- -DWITH_SPDK=OFF \
- -DWITH_BABELTRACE=OFF \
- -DWITH_RADOSGW_AMQP_ENDPOINT=OFF \
- -DWITH_RADOSGW_SELECT_PARQUET="$_par" \
- -DWITH_TESTS=OFF
-
- cmake --build build --target cmake_object_order_depends_target_common-options-objs
- cmake --build build
-
-}
-
-package() {
- # free up some space before install
- rm -rf build/src/pybind/mgr/dashboard/cypress
- rm -rf src/pybind/mgr/dashboard/frontend/node_modules
-
- DESTDIR="$pkgdir" cmake --install build
-
- # remove the upstream init file and put in openrc ones
- rm -f "$pkgdir"/etc/init.d/ceph
- install -D -m 755 "$srcdir"/"$_pkgname".initd "$pkgdir"/etc/init.d/ceph
- install -D -m 644 "$srcdir"/"$_pkgname".confd "$pkgdir"/etc/conf.d/ceph
-
- # move mount.* binaries to /sbin
- mkdir -p "$pkgdir"/sbin
- mv "$pkgdir"/usr/sbin/mount.* "$pkgdir"/sbin
-
- install -m 644 -D src/etc-rbdmap "$pkgdir"/etc/ceph/rbdmap
- install -m 644 -D src/logrotate.conf "$pkgdir"/etc/logrotate.d/ceph
- install -m 644 -D etc/sysctl/90-ceph-osd.conf "$pkgdir"/etc/sysctl.d/90-ceph-osd.conf
-
- # udev rules
- install -m 644 -D udev/50-rbd.rules "$pkgdir"/etc/udev/rules.d/50-rbd.rules
- # sudoers.d
- install -m 600 -D sudoers.d/ceph-smartctl "$pkgdir"/etc/sudoers.d/ceph-smartctl
-
- # delete systemd related stuff
- rm "$pkgdir"/usr/sbin/ceph-volume-systemd
-
- # move docs to docs
- mkdir -p "$pkgdir"/usr/share/doc/ceph/dashboard
- mv "$pkgdir"/usr/share/ceph/mgr/dashboard/*.rst "$pkgdir"/usr/share/doc/ceph/dashboard/
- mv "$pkgdir"/usr/share/ceph/mgr/cephadm/HACKING.rst "$pkgdir"/usr/share/doc/ceph/cephadm-HACKING.rst
-}
-
-check() {
- cd "$builddir"/build
- CTEST_OUTPUT_ON_FAILURE=TRUE ctest
-}
-
-# This subpackage is a little weird and a side effect of trying to keep
-# the daemon packages as small as possible. We might be able to roll this into
-# the base/common package later if we can slim those down or break them up in a
-# different way
-user() {
- pkgdesc="Minimal package to create a user for other ceph packages."
- depends=""
- install="$_pkgname-user.pre-install"
- mkdir -p "$subpkgdir"
-}
-
-base() {
- pkgdesc="Base is the package that includes all the files shared amongst ceph servers"
- depends="$_base_deps
- $pkgname-user=$pkgver-r$pkgrel
- $pkgname-common=$pkgver-r$pkgrel
- librbd$_majorver=$pkgver-r$pkgrel
- librados$_majorver=$pkgver-r$pkgrel
- libcephfs$_majorver=$pkgver-r$pkgrel
- "
-
- amove usr/bin/ceph-crash \
- usr/bin/crushtool \
- usr/bin/*maptool \
- usr/bin/ceph-kvstore-tool \
- usr/bin/ceph-run \
- usr/sbin/ceph-create-keys \
- usr/libexec/ceph/ceph_common.sh \
- usr/lib/rados-classes/*.so* \
- usr/lib/ceph/erasure-code/libec_*.so* \
- usr/lib/ceph/compressor/libceph_*.so* \
- usr/lib/ceph/crypto/libceph_*.so* \
- etc/logrotate.d/ceph
- for dir in crash crash/posted tmp bootstrap-osd bootstrap-mds \
- bootstrap-rgw bootstrap-mgr bootstrap-rbd \
- bootstrap-rbd-mirror; do
-
- install -m 750 -o $_ceph_uid -g $_ceph_gid -d \
- "$subpkgdir"/var/lib/ceph/$dir
- done
-}
-
-common() {
- pkgdesc="Common utilities to mount and interact with a ceph storage cluster."
- depends="py3-rados$_majorver py3-rbd$_majorver py3-cephfs$_majorver py3-prettytable"
-
- amove usr/bin/ceph \
- usr/bin/ceph-authtool \
- usr/bin/ceph-conf \
- usr/bin/ceph-rbdnamer \
- usr/bin/rados \
- usr/bin/rbd \
- usr/bin/rbdmap \
- sbin/mount.ceph \
- usr/share/ceph/*.ceph.com* \
- etc/ceph/rbdmap
-
- amove "$(_py3_sitelib)"/ceph_argparse.py* "$(_py3_sitelib)"/ceph_daemon.py*
-
- amove etc/udev/rules.d/50-rbd.rules
- install -m 3770 -o $_ceph_uid -g $_ceph_gid -d \
- "$subpkgdir"/var/log/ceph
- install -m 750 -o $_ceph_uid -g $_ceph_gid -d \
- "$subpkgdir"/var/lib/ceph
-}
-
-mds() {
- pkgdesc="Metadata server daemon for the Ceph distributed file system."
- depends="$pkgname-base"
-
- amove usr/bin/ceph-mds
- install -m 750 -o $_ceph_uid -g $_ceph_gid -d \
- "$subpkgdir"/var/lib/ceph/mds
-}
-
-mon() {
- pkgdesc="Cluster monitor daemon virtual package for the Ceph distributed file system."
- depends="$pkgname-base
- $pkgname-mon-daemon=$pkgver-r$pkgrel
- $pkgname-mon-tools=$pkgver-r$pkgrel"
-
- mkdir -p "$subpkgdir"
-}
-
-mon_daemon() {
- pkgdesc="Cluster monitor daemon for the Ceph distributed file system."
- depends="$pkgname-user=$pkgver-r$pkgrel"
-
- amove usr/bin/ceph-mon
- install -m 750 -o $_ceph_uid -g $_ceph_gid -d \
- "$subpkgdir"/var/lib/ceph/mon
-}
-
-mon_tools() {
- pkgdesc="Cluster monitor tools for the Ceph distributed file system."
- depends=
-
- amove usr/bin/ceph-monstore-tool
- install -m 750 -o $_ceph_uid -g $_ceph_gid -d \
- "$subpkgdir"/var/lib/ceph/mon
-}
-
-ceph_fuse() {
- pkgdesc="FUSE based client for Ceph distributed network file system."
- depends=
-
- amove usr/bin/ceph-fuse sbin/mount.fuse.ceph
-}
-
-rbd_fuse() {
- pkgdesc="FUSE based client to map Ceph rbd images to files."
- depends=
-
- amove usr/bin/rbd-fuse
-}
-
-rbd_mirror() {
- pkgdesc="Daemon for mirroring RBD images between Ceph clusters."
- depends="$pkgname-common=$pkgver-r$pkgrel"
-
- amove usr/bin/rbd-mirror
-}
-
-rbd_nbd() {
- pkgdesc="NBD based client to map Ceph rbd images to local device."
- depends=
-
- amove usr/bin/rbd-nbd
-}
-
-radosgw() {
- pkgdesc="Rados REST gateway which implements Amazon's S3 and OpenStack's Swift APIs."
- depends="$pkgname-common oath-toolkit-liboath"
-
- amove usr/bin/radosgw*
- mkdir -p "$subpkgdir"/var/lib/ceph/radosgw
-}
-
-osd() {
- pkgdesc="Object storage daemon virtual package for the Ceph distributed file system."
- depends="$pkgname-osd-daemon=$pkgver-r$pkgrel
- $pkgname-osd-tools=$pkgver-r$pkgrel
- $pkgname-volume=$pkgver-r$pkgrel"
-
- mkdir -p "$subpkgdir"
-}
-
-osd_daemon() {
- pkgdesc="Object storage daemon for the Ceph distributed file system."
- depends="$_osd_daemon_deps $pkgname-user=$pkgver-r$pkgrel"
-
- amove usr/bin/ceph-osd \
- usr/libexec/ceph/ceph-osd-prestart.sh \
- etc/sudoers.d/ceph-smartctl \
- etc/sysctl.d/90-ceph-osd.conf
- install -m 750 -o $_ceph_uid -g $_ceph_gid -d \
- "$subpkgdir"/var/lib/ceph/osd
-}
-
-osd_tools() {
- pkgdesc="Object storage daemon tools for the Ceph distributed file system."
- depends="$pkgname-base=$pkgver-r$pkgrel $_osd_tools_deps"
-
- amove usr/bin/ceph-clsinfo usr/bin/ceph-*-tool
- install -m 750 -o $_ceph_uid -g $_ceph_gid -d \
- "$subpkgdir"/var/lib/ceph/osd
-}
-
-ceph_volume() {
- pkgdesc="ceph-volume tool for the Ceph distributed file system."
- depends="$_ceph_volume_deps"
-
- amove usr/sbin/ceph-volume \
- "$(_py3_sitelib)"/ceph_volume "$(_py3_sitelib)"/ceph_volume-*
-}
-
-librados() {
- pkgdesc="RADOS distributed object store client library"
- depends=
-
- amove usr/lib/librados.so.* usr/lib/ceph/libceph-common.so.*
-}
-
-_py3_rados() {
- pkgdesc="Python libraries for the RADOS object store"
- depends=
-
- amove "$(_py3_sitelib)"/rados*
-}
-
-libradosstriper() {
- pkgdesc="RADOS striping library"
- depends=
-
- amove usr/lib/libradosstriper.so.*
-}
-
-librbd() {
- pkgdesc="RADOS block device client library"
- depends=
-
- amove usr/lib/librbd.so.*
-}
-
-_py3_rbd() {
- pkgdesc="Python libraries for the RADOS block device"
- depends="py3-rados$_majorver"
-
- amove "$(_py3_sitelib)"/rbd*
-}
-
-libcephsqlite() {
- pkgdesc="SQLite Virtual File System (VFS) on top of RADOS"
- depends=
-
- amove usr/lib/libcephsqlite.so*
-}
-
-libcephfs() {
- pkgdesc="Ceph distributed file system client library"
- depends=
-
- amove usr/lib/libcephfs.so.*
-}
-
-_py3_cephfs() {
- pkgdesc="Python libraries for Ceph distributed file system"
- depends="py3-rados$_majorver"
-
- amove "$(_py3_sitelib)"/cephfs*
-}
-
-utils() {
- pkgdesc="Ceph utils and recovery tools"
- depends="$pkgname-common=$pkgver-r$pkgrel"
-
- amove usr/bin/ceph-diff-sorted \
- usr/bin/ceph-post-file \
- usr/bin/ceph-syn \
- usr/bin/cephfs-data-scan \
- usr/bin/ceph-dencoder \
- usr/lib/ceph/denc \
- usr/bin/cephfs-journal-tool \
- usr/bin/cephfs-table-tool \
- usr/bin/rbd-replay* \
- usr/bin/crushdiff
-}
-
-bash_completion() {
- pkgdesc="Bash completions for Ceph"
- depends=
-
- install_if="ceph=$pkgver-r$pkgrel bash-completion"
- amove etc/bash_completion.d/*
-}
-
-mgr() {
- pkgdesc="Ceph Manager Daemon"
- depends="$pkgname-base=$pkgver-r$pkgrel"
-
- amove usr/bin/ceph-mgr usr/share/ceph/mgr
-
- install -m 750 -o $_ceph_uid -g $_ceph_gid -d \
- "$subpkgdir"/var/lib/ceph/mgr
-}
-
-sha512sums="
-70b96e709f153f16069bec8346ea73812d699eaab91a012351d02addb3fd176b84fce32c3dae84fdf91d0ffe49f2bb258410b47caeee81d81a672b4dbd04cc7e ceph-17.2.0.tar.gz
-110bdbcb40216c7ed155a8d23020784741b4992d895f4f04a146d275506e4e68053854d3b063b41e9c9b3e3e4f95b6b90602f92c185c853c0d8f47ad0c6b7121 ceph.confd
-ce5f162501f6b67fe254546dddf880d1a5b1d1a0fa69e0b1918de17e8da45c5c6124512b8cbd98b76f29d931403de0d11c5ffd330ed8ee1f4dc75bb04baecae3 ceph.initd
-94687578411bf0de1b17555ed81c188c88ea63ac4a25993bd8fde9cf68afbbfbdec7b2d7c54fdcfbd4aed4eb78754e8061c308955596cbe037ff15b575874cc6 10-musl-fixes.patch
-211e6f5f8fc962878196ec917984781eb4a8a9495bcc8d1729b34ac66abd2d4a0b7388ae2caee9d5deb664d54860d120a37215924625e82eac9bfca16179667a 11-dump_time_header_impl.patch
-ff6e281388432ef864e72e00833f979c7bafe14d56c08968835a123466bf5e82239dfb8a7d89afa9caabba445217ae4ba0d7f89093c2edf243dd7cca3353efbe 11-parse_rfc1123_alt.patch
-52b11dfd157dfb7363d2d3428901559189263caaa1c5f29a924b9be7ea012d4f54a887b22d2e2a3d756f6fd771f626505912dca52e6b19a56e018be45b7acb8b 11-s3_expiration_header.patch
-9a5b173c8fa0d2fb26f837cbbd801b36929459dc2e1758b9b8eeb13d6cc605a6dfaa3aab9f406a805b08a590bbc6a3367e565f5bb8772c590a4bd9c400f32383 12-arrow.patch
-3ba1801d9e2ab427ed14abd01881ef2115cd38309134145ec5a0a2a7adee2007e8b84b66ac1c7d5ea1139946aa87159dfb0768cd80181f42140979d790efe817 13-liburing.patch
-03ef3598181c45ecba5600a1e4db7fd897ea9d3c8abdfaad2dcf84c7a241d9ba18e7f7885d69ee0572ee307fc94600a2784a07da909d37a51de27f8ded2e3a70 20-pci.patch
-5b44cc43ce5ef7aed3c4da5a0d6d3bdcc2306217b5f72a501363e0cee6b9b5a6fffeaa610977540396f7459d1182cf5146547b6a8a08ebd0838f415a6396a7b1 21-cypress.patch
-b879993a285a771c3640c5214ff70e8e01673c0c5e23a0f88ac70db168aeb1dd2eaed12805ed5076adae5a0f596abcb9d82220c6fd97643169cb92788898a189 30-32bit_fix.patch.noauto
-50fdc97e25f1fc787448c63dce0ded11b8fbb6600c5a07dc919affabfa7192646a9b5cbb4b9100034029b5382f7a703be2161e773efe1ff3c1896f54e542f38d 30-ubuntu-32bit-fixes.patch.noauto
-abb3cab9c01cc3d6d42a9858678059a8c9c43bda2649bf97b489fdc205eb10ae27f9fb7302062e0fb41f5cffddbfc2ae529130569034f373732a0a5d33aba86e 35-fix_ErasureCodeShec.patch
-72c75dc77b638538767eb5ed366a8088fa9e062807e86a04f6383363c3a362c921a8366e0cf7a4d2b986b0834e1f3edb1111b051243a8633e0c5445c00c431cb 38-aio.patch
-3e0162cdd6fec1553319a2ad92f7d439b3febd543c33515b1f553a899ef8ebb06f414e35e74849d118fec5db6b9b239925a56730679d87334a2e9b9f7074e9c4 39-req_bytes.patch
-00f579eb9417cfc6fc99b5347febd5ae299004d47dd2fa389509bb2bdcb406f89c5cc0d2164ac2ad800f10129e89a56c794cd62c12d410de12ba6a664316e0a3 40-nasm.patch
-"
diff --git a/testing/ceph17/ceph-user.pre-install b/testing/ceph17/ceph-user.pre-install
deleted file mode 100644
index bae4f09dc73..00000000000
--- a/testing/ceph17/ceph-user.pre-install
+++ /dev/null
@@ -1,5 +0,0 @@
-#!/bin/sh
-
-addgroup ceph -g 167 -S 2>/dev/null
-adduser ceph -u 167 -S -G ceph -s /sbin/nologin -h /var/lib/ceph -g "Ceph Daemons" 2> /dev/null
-exit 0
diff --git a/testing/ceph17/ceph.confd b/testing/ceph17/ceph.confd
deleted file mode 100644
index 32737b10ee8..00000000000
--- a/testing/ceph17/ceph.confd
+++ /dev/null
@@ -1,17 +0,0 @@
-# Original source: https://gitweb.gentoo.org/repo/gentoo.git/tree/sys-cluster/ceph/files/ceph.confd-r5
-
-# Example
-
-# default ceph conf file
-#ceph_conf="/etc/ceph/ceph.conf"
-
-# Set RADOSGW_WANT_NAME_PARAM=y in order to make the init script add
-# a --name=client.${RC_SVCNAME} parameter to command_args for radosgw.*
-# service instances. This will make the service use a key by the name
-# of client.${RC_SVCNAME} instead of the default client.admin key.
-# A setting like this in the ceph config file can be used to customize
-# the rgw_data and keyring paths used by radosgw instances:
-# [client]
-# rgw_data = /var/lib/ceph/radosgw/$cluster-$id
-# keyring = /var/lib/ceph/radosgw/$cluster-$id/keyring
-RADOSGW_WANT_NAME_PARAM=n
diff --git a/testing/ceph17/ceph.initd b/testing/ceph17/ceph.initd
deleted file mode 100644
index c522efa694a..00000000000
--- a/testing/ceph17/ceph.initd
+++ /dev/null
@@ -1,118 +0,0 @@
-#!/sbin/openrc-run
-
-# Original source: https://gitweb.gentoo.org/repo/gentoo.git/tree/sys-cluster/ceph/files/ceph.initd-r12
-
-# make sure /etc/conf.d/ceph gets loaded for ceph-mon etc
-_CONFD_FILE="${RC_SERVICE%/*}/../conf.d/${RC_SVCNAME%-*}"
-if [ -r "${_CONFD_FILE}" ]; then
- . "${_CONFD_FILE}" || exit 1
-fi
-
-: "${ceph_conf:=/etc/ceph/ceph.conf}"
-daemon_type="${RC_SVCNAME#ceph-}"
-daemon_type="${daemon_type%%.*}"
-daemon_id="${RC_SVCNAME#ceph-*.}"
-daemon_id="${daemon_id:-0}"
-: "${rundir:=/run/ceph}"
-: "${user:=ceph}"
-: "${group:=ceph}"
-: "${rc_ulimit:=-n 1048576 -u 1048576}"
-
-pidfile="${rundir}/supervisor-${daemon_type}.${daemon_id}.pid"
-daemon_pidfile="${rundir}/${daemon_type}.${daemon_id}.pid"
-
-command="/usr/bin/${RC_SVCNAME%%.*}"
-command_args="-i ${daemon_id} --pid-file ${daemon_pidfile} -c ${ceph_conf}"
-extra_commands="${extra_commands} reload"
-command_args_foreground="--foreground"
-
-retry="${CEPH_TERMTIMEOUT:-TERM/120/KILL/5}"
-start_stop_daemon_args="--user ${user} --group ${group}"
-supervise_daemon_args="--user ${user} --group ${group}"
-
-: "${supervisor:=supervise-daemon}"
-: "${stdout:=/var/log/ceph/ceph}"
-: "${stderr:=/var/log/ceph/ceph}"
-: "${respawn_delay:=10}"
-: "${respawn_max:=5}"
-: "${respawn_period:=1800}"
-
-: "${osd_respawn_delay:=15}"
-: "{osd_respawn_max:=10}"
-
-: "{radosgw_respawn_max:=5}"
-: "${radosgw_respawn_period:=30}"
-
-depend() {
- use dns logger
- after net ntpd ntp-client chronyd
- before netmount
-}
-
-is_type_valid() {
- case ${daemon_type} in
- mon|mds|osd|mgr|radosgw) return 0;;
- *) return 1;;
- esac
-}
-
-start_pre() {
- local log_dir
- export CEPH_CONF="${ceph_conf}"
-
- checkpath -d -q -o "${user}:${group}" "${rundir}"
-
- if ! is_type_valid ;then
- eerror "Please give valid Ceph Server Type: mds, mon, osd"
- return 1
-
- elif pgrep -f "[c]eph-${daemon_type} -i ${daemon_id} "; then
- eerror "${daemon_type}.${daemon_id} is still running, refusing to start"
- return 1
- fi
-
- if [ -n "${bluestore_osd_fsid}" ]; then
- einfo "Mounting Bluestore"
- ceph-volume lvm activate "${daemon_id}" "${bluestore_osd_fsid}" --no-systemd
- fi
-
- if [ "${daemon_type}" = radosgw ] && [ "${RADOSGW_WANT_NAME_PARAM}" = y ]; then
- command_args="${command_args} --name client.${daemon_id}"
- fi
-
- local arg_name arg_val repl_arg_name
- for arg_name in stdout stderr respawn_delay respawn_max respawn_period; do
- eval arg_val="\${${daemon_type}_${arg_name}}"
-
- if [ -z "${arg_val}" ]; then
- eval arg_val="\${${arg_name}}"
- else
- eval "${arg_name}=\"${arg_val}\""
- fi
-
- if [ "${arg_name}" = "stderr" ] || [ "${arg_name}" = "stdout" ]; then
- local log_file log_postfix
- log_postfix=".${daemon_id}-${arg_name}.log"
- log_file="${arg_val}"
-
- if [ "${log_file}" != /dev/null ]; then
- log_file="${log_file}${log_postfix}"
-
- log_dir="$(dirname "${log_file}")"
- checkpath -m 0755 -o "${user}:${group}" -d "${log_dir}"
- fi
-
- repl_arg_name="$(printf -- "%s\n" "${arg_name}" | tr _ -)"
- supervise_daemon_args="${supervise_daemon_args} --${repl_arg_name}=${log_file}"
- fi
- done
-}
-
-reload() {
- ebegin "Reloading Ceph ${daemon_type}.${daemon_id}"
- start-stop-daemon --signal 1 "${start_stop_daemon_args}"
- eend ${?}
-}
-
-# vim:ft=gentoo-init-d:ts=4:sts=4:sw=4:noet:
-
diff --git a/testing/certbot-dns-njalla/APKBUILD b/testing/certbot-dns-njalla/APKBUILD
new file mode 100644
index 00000000000..dbcd2e85b09
--- /dev/null
+++ b/testing/certbot-dns-njalla/APKBUILD
@@ -0,0 +1,38 @@
+# Contributor: Nulo <git@nulo.in>
+# Maintainer: Nulo <git@nulo.in>
+pkgname=certbot-dns-njalla
+pkgver=1.0.2
+pkgrel=2
+pkgdesc="Certbot plugin for using the Njalla DNS API"
+url="https://github.com/chaptergy/certbot-dns-njalla"
+# options="!check" # TODO: enable tests
+arch="noarch"
+license="Apache-2.0"
+depends="
+ certbot
+ py3-acme
+ py3-dns-lexicon
+ py3-dnspython
+ "
+makedepends="py3-setuptools"
+checkdepends="
+ py3-mock
+ py3-requests
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/chaptergy/certbot-dns-njalla/archive/v$pkgver.tar.gz"
+
+build() {
+ python3 setup.py build
+}
+
+check() {
+ python -m unittest discover -p '*_test.py'
+}
+
+package() {
+ python3 setup.py install --skip-build --root="$pkgdir"
+}
+
+sha512sums="
+91223a70bf9f097f5b2f1cd75ce79626dfcb760e3b3146c31d701df4f63e2cfefc83368b4c5b6151415a443108adf2a653e3f38b5eeac859a6f93feb9ecb42c0 certbot-dns-njalla-1.0.2.tar.gz
+"
diff --git a/testing/certigo/APKBUILD b/testing/certigo/APKBUILD
new file mode 100644
index 00000000000..a52f17fcaab
--- /dev/null
+++ b/testing/certigo/APKBUILD
@@ -0,0 +1,32 @@
+# Contributor: Thomas Kienlen <kommander@laposte.net>
+# Maintainer: Thomas Kienlen <kommander@laposte.net>
+pkgname=certigo
+pkgver=1.16.0
+pkgrel=15
+pkgdesc="Utility to examine and validate certificates in a variety of formats"
+url="https://github.com/square/certigo"
+arch="all"
+license="Apache-2.0"
+makedepends="go"
+source="$pkgname-$pkgver.tar.gz::https://github.com/square/certigo/archive/v$pkgver/v$pkgver.tar.gz"
+options="chmod-clean"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ go build -trimpath
+}
+
+check() {
+ go test -v ./...
+}
+
+package() {
+ install -Dm755 certigo "$pkgdir"/usr/bin/certigo
+}
+
+sha512sums="
+036f05004d242714ad50d4e8ce2a55d922d1bcb248a3bfcc2a153ca7dfbb12a521ed18bb269a6aebb9754fc69198664544da7fb0bb3b438b70373e2e7bd2e14a certigo-1.16.0.tar.gz
+"
diff --git a/testing/certstrap/APKBUILD b/testing/certstrap/APKBUILD
new file mode 100644
index 00000000000..78ebe02c1ac
--- /dev/null
+++ b/testing/certstrap/APKBUILD
@@ -0,0 +1,37 @@
+# Contributor: Thomas Kienlen <kommander@laposte.net>
+# Maintainer: Thomas Kienlen <kommander@laposte.net>
+pkgname=certstrap
+pkgver=1.3.0
+pkgrel=15
+pkgdesc="Tools to bootstrap CAs, certificate requests, and signed certificates"
+url="https://github.com/square/certstrap"
+arch="all"
+license="Apache-2.0"
+makedepends="go"
+source="$pkgname-$pkgver.tar.gz::https://github.com/square/certstrap/archive/v$pkgver/v$pkgver.tar.gz"
+options="chmod-clean"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ go build -trimpath
+}
+
+check() {
+ # Fix GO 1.18 compatibility
+ # https://github.com/golang/go/issues/41682
+ # SHA1 support will be removed in GO 1.19
+ export GODEBUG=x509sha1=1
+ # Certificates have expired on 13 Mar 2024
+ go test -v -skip 'TestCertificateAuthority|TestCertificateVerify' ./...
+}
+
+package() {
+ install -Dm755 certstrap "$pkgdir"/usr/bin/certstrap
+}
+
+sha512sums="
+f3ef9fb9e581acb028f447ac2e2b924a27d6c652d3be30a1df310f7bfde2c8cc40f5ad0fdba0396fbc6bb332c24853aeedee78a00d5217ca02007130e26c5455 certstrap-1.3.0.tar.gz
+"
diff --git a/testing/cffconvert/APKBUILD b/testing/cffconvert/APKBUILD
deleted file mode 100644
index 59a9fee2c50..00000000000
--- a/testing/cffconvert/APKBUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-# Contributor: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-# Maintainer: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-pkgname=cffconvert
-pkgver=2.0.0
-_pkgorig=cff-converter-python
-pkgrel=0
-pkgdesc="Command line program to validate and convert CITATION.cff files"
-url="https://github.com/citation-file-format/cff-converter-python"
-arch="noarch"
-license="Apache-2.0 license"
-depends="python3 py3-click py3-jsonschema py3-pykwalify py3-requests py3-ruamel.yaml"
-checkdepends="python3-dev py3-pytest py3-pytest-cov"
-makedepends="py3-setuptools"
-source="$pkgname-$pkgver.tar.gz::https://github.com/citation-file-format/cff-converter-python/archive/$pkgver/$_pkgorig-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgorig-$pkgver"
-options="!check" # a minor portion of tests are failing
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 -m pytest
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-59a33af498a370390f2cfa78dc011d6488e7f71cb8d569213da74c7c61cfe641fffb6345f65d8b877287b4578fde238d93269c448dc19ddf5aaf0c9e314bf22b cffconvert-2.0.0.tar.gz
-"
diff --git a/testing/cfssl/APKBUILD b/testing/cfssl/APKBUILD
index 4d83cd9b3c9..2cf11ff1d73 100644
--- a/testing/cfssl/APKBUILD
+++ b/testing/cfssl/APKBUILD
@@ -1,22 +1,24 @@
# Contributor: Michał Polański <michal@polanski.me>
# Maintainer: Michał Polański <michal@polanski.me>
pkgname=cfssl
-pkgver=1.6.1
+pkgver=1.6.4
pkgrel=6
pkgdesc="Cloudflare PKI and TLS toolkit"
url="https://cfssl.org/"
license="BSD-2-Clause"
arch="all !riscv64" # FTBFS
options="!check" # TODO: fix and enable tests
-makedepends="go"
+makedepends="go sqlite-dev"
source="https://github.com/cloudflare/cfssl/archive/v$pkgver/cfssl-$pkgver.tar.gz"
-export GOPATH="$srcdir"
-export GOFLAGS="$GOFLAGS -trimpath -modcacherw -mod=vendor"
+export GOFLAGS="$GOFLAGS -trimpath -modcacherw -mod=vendor -tags=libsqlite3"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
build() {
go build \
- -ldflags="-s -w -X github.com/cloudflare/cfssl/cli/version.version=$pkgver" \
+ -ldflags="-X github.com/cloudflare/cfssl/cli/version.version=$pkgver" \
-v -o bin/ ./cmd/...
}
@@ -25,9 +27,9 @@ check() {
}
package() {
- install -Dm755 -t "$pkgdir"/usr/bin bin/*
+ install -Dm755 bin/* -t "$pkgdir"/usr/bin/
}
sha512sums="
-50b117364e32f9a1377e3760c9466deb9ac64efdaef77ce122b3f08245ef82b8403d8ebb03398069b8d1513916c84da3ec8f914fdb324eb2e15d235aabfebdb8 cfssl-1.6.1.tar.gz
+6327d15dda24bf072958c74f4cd0bf1aa4023f935bb24da7f5655739992970fa777f6771603dd3a6edfee6cd2ed418a2fef335f7209ce88cf07674d592c3110f cfssl-1.6.4.tar.gz
"
diff --git a/testing/cgal/APKBUILD b/testing/cgal/APKBUILD
deleted file mode 100644
index 1bf08d15939..00000000000
--- a/testing/cgal/APKBUILD
+++ /dev/null
@@ -1,41 +0,0 @@
-# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
-pkgname=cgal
-pkgver=5.4
-pkgrel=1
-pkgdesc="Efficient and reliable geometric algorithms as C++ library"
-url="https://www.cgal.org/"
-# lib is header-only as of version 5.4
-arch="noarch"
-license="GPL-3.0-or-later custom" # Dual licensed under GPL-3.0+ and commercial
-subpackages="$pkgname-dev $pkgname-doc"
-makedepends="mpfr-dev gmp-dev mesa-dev glu-dev boost-dev cmake zlib-dev ninja"
-source="$pkgname-$pkgver.tar.xz::https://github.com/CGAL/cgal/releases/download/v$pkgver/CGAL-$pkgver.tar.xz"
-builddir="$srcdir/CGAL-$pkgver"
-# Citing from https://github.com/CGAL/cgal/wiki/Testing#test-suite-directory
-# > The test/ directory is not part of external releases.
-options="!check"
-
-build() {
- cmake -B build \
- -G Ninja \
- -DCMAKE_BUILD_TYPE=MinSizeRel \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
- install -t "$pkgdir"/usr/share/licenses/$pkgname -Dm644 LICENSE*
-}
-
-dev() {
- default_dev
- amove usr/bin/cgal_create_CMakeLists
- amove usr/bin/cgal_create_cmake_script
- amove usr/bin/cgal_make_macosx_app
-}
-
-sha512sums="
-ecaa7a130365e066c098f500751e5be89d908ed7e3c4ea9b50fbe2b1e13f4dd2bca0319157d0de8ec2eb7847c88b9190f369ff97c33c0c5e326f2d470104386d cgal-5.4.tar.xz
-"
diff --git a/testing/cgiirc/APKBUILD b/testing/cgiirc/APKBUILD
index 48f47141935..8dd72832c53 100644
--- a/testing/cgiirc/APKBUILD
+++ b/testing/cgiirc/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=cgiirc
pkgver=0.5.12
-pkgrel=0
+pkgrel=1
pkgdesc="A perl/CGI program to use IRC from a web browser"
url="http://cgiirc.org/"
arch="all"
diff --git a/testing/cgiirc/cgiirc.post-install b/testing/cgiirc/cgiirc.post-install
index f6907c64c5f..8fc4cab7c0d 100644
--- a/testing/cgiirc/cgiirc.post-install
+++ b/testing/cgiirc/cgiirc.post-install
@@ -1,23 +1,26 @@
#!/bin/sh
-echo "*" >&2
-echo "* CGI:IRC has been installed to:" >&2
-echo "* /usr/share/webapps/cgiirc" >&2
-echo "* An config file has been installed to:" >&2
-echo "* /etc/cgiirc/cgiirc.config" >&2
-echo "* If you use lighttpd:" >&2
-echo "* 1) Enable mod_cgi from lighttpd.conf and modify it adding in cgi.assign section:" >&2
-echo "* cgi.assign = ( " >&2
-echo "* ".pl" => "/usr/bin/perl", " >&2
-echo "* ".cgi" => "/usr/bin/perl", " >&2
-echo "* " >&2
-echo "* ) " >&2
-echo "* 2) Create a symlink to /usr/share/webapps/cgiirc:" >&2
-echo "* ln -s /usr/share/webapps/cgiirc /var/www/localhost/htdocs/cgi-bin" >&2
-echo "* This is needed because lighttpd mod_cgi matches cgi-bin dir in order to allow exec cgi." >&2
-echo "* " >&2
-echo "* 3) Restart lighttpd when done." >&2
-echo "* " >&2
-echo "* 4) Go with your browser in http://your.ip.address/cgi-bin/irc.cgi" >&2
-echo "*" >&2
+cat >&2 <<EOF
+*
+* CGI:IRC has been installed to:
+* /usr/share/webapps/cgiirc
+* An config file has been installed to:
+* /etc/cgiirc/cgiirc.config
+* If you use lighttpd:
+* 1) Enable mod_cgi from lighttpd.conf and modify it adding in cgi.assign section:
+* cgi.assign = (
+* ".pl" => "/usr/bin/perl",
+* ".cgi" => "/usr/bin/perl",
+*
+* )
+* 2) Create a symlink to /usr/share/webapps/cgiirc:
+* ln -s /usr/share/webapps/cgiirc /var/www/localhost/htdocs/cgi-bin
+* This is needed because lighttpd mod_cgi matches cgi-bin dir in order to allow exec cgi.
+*
+* 3) Restart lighttpd when done.
+*
+* 4) Go with your browser in http://your.ip.address/cgi-bin/irc.cgi
+*
+EOF
+
exit 0
diff --git a/testing/cglm/APKBUILD b/testing/cglm/APKBUILD
deleted file mode 100644
index 0e564f64714..00000000000
--- a/testing/cglm/APKBUILD
+++ /dev/null
@@ -1,41 +0,0 @@
-# Contributor: Leon Marz <main@lmarz.org>
-# Maintainer: Leon Marz <main@lmarz.org>
-pkgname=cglm
-pkgver=0.8.5
-pkgrel=0
-pkgdesc="Highly Optimized Graphics Math (glm) for C"
-url="https://github.com/recp/cglm"
-arch="all"
-license="MIT"
-makedepends="autoconf automake libtool py3-sphinx py3-sphinx_rtd_theme"
-subpackages="$pkgname-dev $pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/recp/cglm/archive/v$pkgver.tar.gz"
-
-prepare() {
- default_prepare
- sh autogen.sh
-}
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr
- make
- cd "docs"
- sphinx-build source build
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- mkdir -p "$pkgdir/usr/share/doc/cglm"
- cp -a docs/build "$pkgdir/usr/share/doc/cglm"
-}
-
-sha512sums="
-a8f6df415dc482a9b16bb7ff44aba77c32e7297b48d5e7b0fb5b2e0d92fc80cad8e436d0c83fdd7cc0836ba451137d72af2f0f823ce9698000bf257b3019b7c5 cglm-0.8.5.tar.gz
-"
diff --git a/testing/cgo/APKBUILD b/testing/cgo/APKBUILD
index 5893b8eb184..107a941b9ea 100644
--- a/testing/cgo/APKBUILD
+++ b/testing/cgo/APKBUILD
@@ -2,14 +2,14 @@
# Maintainer: KikooDX <kikoodx@paranoici.org>
pkgname=cgo
pkgver=0.6.1
-pkgrel=0
+pkgrel=1
pkgdesc="Simple terminal gopher client"
url="https://github.com/kieselsteini/cgo"
arch="all"
license="0BSD"
subpackages="$pkgname-doc"
options="!check" # there is no test suite
-source="$pkgname-$pkgver.tar.gz::$url/archive/refs/tags/v$pkgver.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/kieselsteini/cgo/archive/refs/tags/v$pkgver.tar.gz"
build() {
make
diff --git a/testing/chamo/APKBUILD b/testing/chamo/APKBUILD
index dac2454467c..f0c1ba93dae 100644
--- a/testing/chamo/APKBUILD
+++ b/testing/chamo/APKBUILD
@@ -2,10 +2,10 @@
# Maintainer:
pkgname=chamo
pkgver=3.0
-pkgrel=0
+pkgrel=1
pkgdesc="Emacs-inspired text editor written in and configurable with OCaml"
url="https://zoggy.frama.io/chamo"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="LGPL-3.0-only"
# lablgtk3-sourceview3 is bundled together in ocaml-lablgtk3
depends_dev="
diff --git a/testing/charls/APKBUILD b/testing/charls/APKBUILD
new file mode 100644
index 00000000000..9ce25d5d3bd
--- /dev/null
+++ b/testing/charls/APKBUILD
@@ -0,0 +1,34 @@
+# Contributor: Holger Jaekel <holger.jaekel@gmx.de>
+# Maintainer: Holger Jaekel <holger.jaekel@gmx.de>
+pkgname=charls
+pkgver=2.4.2
+pkgrel=0
+pkgdesc="Optimized implementation of the JPEG-LS standard for lossless and near-lossless image compression"
+url="https://github.com/team-charls/charls"
+arch="all"
+license="BSD-3-Clause"
+makedepends="cmake samurai"
+subpackages="$pkgname-dev"
+source="$pkgname-$pkgver.tar.gz::https://github.com/team-charls/charls/archive/$pkgver.tar.gz"
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+check() {
+ # The testprogram requires "Press any key + 'enter' to exit program"
+ echo "end\n" | ./build/test/charlstest -unittest
+}
+
+sha512sums="
+4f1b587f008956ab6fb9d2473c37a7b1a842633113245be7f8bb29b8c64304a6d580a29fcfca97ba1ac75adedbaf89e29adc4ac9e4117e1af1aa5949dbd34df9 charls-2.4.2.tar.gz
+"
diff --git a/testing/chathistorysync/APKBUILD b/testing/chathistorysync/APKBUILD
deleted file mode 100644
index 41a74e69ff0..00000000000
--- a/testing/chathistorysync/APKBUILD
+++ /dev/null
@@ -1,30 +0,0 @@
-# Maintainer: Drew DeVault <sir@cmpwn.com>
-pkgname=chathistorysync
-pkgver=0.1.0
-pkgrel=3
-pkgdesc="A tool for syncing IRC logs via the CHATHISTORY extension"
-url="https://sr.ht/~emersion/chathistorysync"
-arch="all"
-license="AGPL-3.0-only"
-makedepends="go scdoc"
-source="
- $pkgname-$pkgver.tar.gz::https://git.sr.ht/~emersion/chathistorysync/archive/v$pkgver.tar.gz
-"
-subpackages="$pkgname-doc"
-builddir="$srcdir/$pkgname-v$pkgver"
-
-build() {
- make
-}
-
-check() {
- go test ./...
-}
-
-package() {
- make install PREFIX=/usr DESTDIR="$pkgdir"
-}
-
-sha512sums="
-94a98b5f3334cb32ea4efe53c7bb5d06b9406e16c0b27bc6437b65a32f4c490509cccb50dfad6bd38e8beccb0e8fc08ddc31f45897ac18f0d7e299924bc22dbe chathistorysync-0.1.0.tar.gz
-"
diff --git a/testing/checkpolicy/APKBUILD b/testing/checkpolicy/APKBUILD
index ca91397bc1e..47cfd2f1bb3 100644
--- a/testing/checkpolicy/APKBUILD
+++ b/testing/checkpolicy/APKBUILD
@@ -1,6 +1,6 @@
# Maintainer: Tycho Andersen <tycho@docker.com>
pkgname=checkpolicy
-pkgver=2.8
+pkgver=3.6
pkgrel=0
pkgdesc="SELinux policy checker"
url="https://selinuxproject.org/"
@@ -12,18 +12,17 @@ source="https://github.com/SELinuxProject/selinux/archive/checkpolicy-$pkgver.ta
builddir="$srcdir/selinux-checkpolicy-$pkgver/checkpolicy"
build() {
- cd "$builddir"
make CFLAGS="$CFLAGS -fcommon"
}
check() {
- cd "$builddir"
make test
}
package() {
- cd "$builddir"
make DESTDIR="$pkgdir" install
}
-sha512sums="67d88c049ef069a73bfc2663b0049d178dd43b0a3b5ca65716793d5f5bf992082aea4d4261d9d3fa0f9ab2dec3fc042c6f9917bceea40007332f9ac74f5bdb32 checkpolicy-2.8.tar.gz"
+sha512sums="
+a47db91c1277026ff724c6ec50500552e97c77fa63c8df30a0a8e7dce39d9f39b82fef84bd9fd2841ff6a608d2921296ff0e0e4992de53a414163e04ff51733f checkpolicy-3.6.tar.gz
+"
diff --git a/testing/chelf/APKBUILD b/testing/chelf/APKBUILD
deleted file mode 100644
index 05692c671b3..00000000000
--- a/testing/chelf/APKBUILD
+++ /dev/null
@@ -1,24 +0,0 @@
-# Contributor: A. Wilcox <awilfox@adelielinux.org>
-# Maintainer: Ariadne Conill <ariadne@dereferenced.org>
-pkgname=chelf
-pkgver=0.2.2
-pkgrel=0
-pkgdesc="Display or change the stack size of an ELF binary"
-url=" "
-arch="all"
-options="!check" # No test suite.
-license="BSD-2-Clause"
-depends=""
-makedepends=""
-subpackages=""
-source="$pkgname-$pkgver.tar.xz::https://distfiles.adelielinux.org/source/$pkgname-$pkgver.txz"
-
-build() {
- make
-}
-
-package() {
- install -D -m755 chelf "$pkgdir"/usr/bin/chelf
-}
-
-sha512sums="bf29f0f526ca1977e0d0743901f6afeb23b2dd78b60618ea65201ea95000832854250f44de6e7625b6d546cace4638be094989cdb96b4e842285ef85718c0082 chelf-0.2.2.tar.xz"
diff --git a/testing/cherrytree/APKBUILD b/testing/cherrytree/APKBUILD
index 8b92d266223..642f2c005fa 100644
--- a/testing/cherrytree/APKBUILD
+++ b/testing/cherrytree/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Alex Yam <alex@alexyam.com>
# Maintainer: Alex Yam <alex@alexyam.com>
pkgname=cherrytree
-pkgver=0.99.45
+pkgver=1.1.2
pkgrel=0
pkgdesc="hierarchical note taking application featuring rich text and syntax highlighting"
url="https://github.com/giuspen/cherrytree"
@@ -21,16 +21,13 @@ makedepends="
spdlog-dev
sqlite-dev
uchardet-dev
+ vte3-dev
"
checkdepends="xvfb-run"
subpackages="$pkgname-doc $pkgname-lang"
-source="https://github.com/giuspen/cherrytree/releases/download/$pkgver/cherrytree_$pkgver.tar.xz"
+source="https://github.com/giuspen/cherrytree/releases/download/v$pkgver/cherrytree_$pkgver.tar.xz"
builddir="$srcdir/${pkgname}_$pkgver"
-case "$CARCH" in
- riscv64) options="textrels" ;;
-esac
-
build() {
cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=MinSizeRel \
@@ -52,7 +49,7 @@ check() {
# [ FAILED ] ExportsTests/ExportsMultipleParametersTests.ChecksExports
# /testing/cherrytree/src/cherrytree_0.99.44/tests/data_данные
# /test_документ.ctb", "--export_to_html_dir")
- xvfb-run ctest --test-dir build -j $JOBS --output-on-failure \
+ xvfb-run -a ctest --test-dir build -j $JOBS --output-on-failure \
-E ExportsMultipleParametersTests.ChecksExports
}
@@ -67,5 +64,5 @@ package() {
}
sha512sums="
-7c1fe98a8b211c60290aa1f6307779351c7b70baa3ddc7fd6b44d65dfeab949b562a45ef8f9623be8e148c288e52b0ed2b959e85b175c214ec9d343243dc0ebe cherrytree_0.99.45.tar.xz
+39d1e765e3a644966a5571580baf7cd33b2ac65a05efebd31bfe7a6b037359f880309806d95e240d78a3f21dd312b7b4decdcd5cc5e50b48935ea3643a9dcf7e cherrytree_1.1.2.tar.xz
"
diff --git a/testing/chiaki/APKBUILD b/testing/chiaki/APKBUILD
new file mode 100644
index 00000000000..d031c1dfe98
--- /dev/null
+++ b/testing/chiaki/APKBUILD
@@ -0,0 +1,32 @@
+# Contributor: Micheal Smith <xulfer@cheapbsd.net>
+# Maintainer: Micheal Smith <xulfer@cheapbsd.net>
+pkgname=chiaki
+pkgver=2.2.0
+pkgrel=0
+pkgdesc="Open Source PS4 and PS5 remote play client"
+url="https://git.sr.ht/~thestr4ng3r/chiaki"
+arch="all !s390x"
+license="GPL-3.0-or-later"
+makedepends="cmake samurai python3 ffmpeg-dev opus-dev protobuf py3-protobuf
+ py3-setuptools protoc sdl2-dev qt5-qtmultimedia-dev qt5-qtsvg-dev openssl-dev"
+source="$pkgname-$pkgver-src.tar.gz::https://git.sr.ht/~thestr4ng3r/chiaki/refs/download/v$pkgver/chiaki-v$pkgver-src.tar.gz"
+builddir="$srcdir/$pkgname"
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCMAKE_INSTALL_PREFIX=/usr
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+1d9c02911073776047c472043526f27ab53d5a517e4646b8d2c910401dffd20a5aaebe5737c9cb399665e2334e1a75b2528c3d03a200dc88423141f96127897e chiaki-2.2.0-src.tar.gz
+"
diff --git a/testing/chicago95/APKBUILD b/testing/chicago95/APKBUILD
new file mode 100644
index 00000000000..697b25c95de
--- /dev/null
+++ b/testing/chicago95/APKBUILD
@@ -0,0 +1,38 @@
+# Contributor: Adam Thiede <me@adamthiede.com>
+# Maintainer: Adam Thiede <me@adamthiede.com>
+pkgname=chicago95
+pkgver=3.0.1
+pkgrel=0
+pkgdesc="Windows 95 gtk theme, icons, and fonts"
+url="https://github.com/grassmunk/chicago95"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="$pkgname-icons"
+subpackages="$pkgname-icons $pkgname-fonts"
+source="$pkgname-$pkgver.tar.gz::https://github.com/grassmunk/Chicago95/archive/refs/tags/v$pkgver.tar.gz"
+options="!check" # no tests, just a theme
+builddir="$srcdir/Chicago95-$pkgver"
+
+package() {
+ mkdir -p "$pkgdir"/usr/share/themes/
+ cp -a Theme/Chicago95 "$pkgdir"/usr/share/themes/
+
+ mkdir -p "$pkgdir"/usr/share/icons/
+ cp -a Icons/Chicago95 Icons/Chicago95-tux "$pkgdir"/usr/share/icons/
+
+ mkdir -p "$pkgdir"/usr/share/fonts/Chicago95/
+ cp -a Fonts/bitmap Fonts/vga_font "$pkgdir"/usr/share/fonts/Chicago95/
+}
+
+icons() {
+ amove /usr/share/icons/Chicago95
+ amove /usr/share/icons/Chicago95-tux
+}
+
+fonts() {
+ amove /usr/share/fonts/Chicago95
+}
+
+sha512sums="
+361b871d111f4a7a96680d61c47f1e89a38a26cee3aea1c636b24c4e5a60972b1d79d43200f3f6a2e64f27ff37ca71c781da699cc18461ffdd6f9220741101f9 chicago95-3.0.1.tar.gz
+"
diff --git a/testing/chim/APKBUILD b/testing/chim/APKBUILD
new file mode 100644
index 00000000000..65e6531faf9
--- /dev/null
+++ b/testing/chim/APKBUILD
@@ -0,0 +1,42 @@
+# Contributor: Jeff Dickey <release@chim.sh>
+# Maintainer: Jeff Dickey <release@chim.sh>
+pkgname=chim
+pkgver=1.1.2
+pkgrel=1
+pkgdesc="Cross-platform binary shims with optional remote fetching."
+url="https://chim.sh"
+arch="all !s390x !riscv64 !ppc64le" # limited by cargo
+license="MIT"
+makedepends="
+ bzip2-dev
+ cargo
+ cargo-auditable
+ xz-dev
+ "
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/jdxcode/chim/archive/refs/tags/v$pkgver.tar.gz"
+
+
+prepare() {
+ default_prepare
+
+ git init .
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm0755 target/release/"$pkgname" -t "$pkgdir"/usr/bin
+ install -Dm0644 README.md -t "$pkgdir"/usr/share/doc/"$pkgname"
+}
+
+sha512sums="
+8068c4ac56df1f8bd7cf75a189bf3b773fdbe35733dc430261c41f4400c91a092ee2c30d03cd7936d1775477ba7f2479098eee09a218f766a1698e09b19cdda6 chim-1.1.2.tar.gz
+"
diff --git a/testing/chocolate-doom/APKBUILD b/testing/chocolate-doom/APKBUILD
index bb304dc2cb2..59244468915 100644
--- a/testing/chocolate-doom/APKBUILD
+++ b/testing/chocolate-doom/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Jordan Christiansen <xordspar0@gmail.com>
pkgname=chocolate-doom
pkgver=3.0.1
-pkgrel=1
+pkgrel=3
pkgdesc="Portable release of Doom, Heretic, Hexen, and Strife"
url="https://www.chocolate-doom.org"
arch="all"
@@ -27,7 +27,7 @@ build() {
}
package() {
- make DESTDIR="$pkgdir" install
+ make appdatadir=/usr/share/metainfo DESTDIR="$pkgdir" install
}
sha512sums="
diff --git a/testing/cicada/APKBUILD b/testing/cicada/APKBUILD
deleted file mode 100644
index 47e879edef5..00000000000
--- a/testing/cicada/APKBUILD
+++ /dev/null
@@ -1,47 +0,0 @@
-# Contributor: Hugo Wang <w@mitnk.com>
-# Maintainer: Hugo Wang <w@mitnk.com>
-pkgname=cicada
-pkgver=0.9.29
-pkgrel=3
-pkgdesc="A bash-like Unix shell"
-url="https://github.com/mitnk/cicada"
-# s390x and riscv64 blocked by cargo
-arch="all !s390x !riscv64"
-license="MIT"
-depends="ncurses-terminfo-base"
-makedepends="sqlite-dev cargo"
-checkdepends="xz"
-install="$pkgname.post-install $pkgname.pre-deinstall"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/mitnk/cicada/archive/v$pkgver.tar.gz
- ulimit.patch
- unbundle-sqlite.patch
- "
-
-prepare() {
- default_prepare
- cargo fetch --locked
-}
-
-build() {
- export CARGO_PROFILE_RELEASE_LTO=true
- export CARGO_PROFILE_RELEASE_PANIC=abort
- export CARGO_PROFILE_RELEASE_CODEGEN_UNITS=1
- export CARGO_PROFILE_RELEASE_OPT_LEVEL=s
- cargo build --frozen --release
-}
-
-check() {
- cargo test --frozen --release --bins
-}
-
-package() {
- install -Dm755 target/release/cicada -t "$pkgdir"/usr/bin
- install -Dm644 docs/*.md -t "$pkgdir"/usr/share/doc/$pkgname
-}
-
-sha512sums="
-cf5a50db78d0a6d67850623ce556d0c2b47c528ed94078684ef3afbe9015795faa6bd67de623234c9ab159b76fa1ba7fbf872f53a528882eb97512d64a2a507f cicada-0.9.29.tar.gz
-5a68a11b8b91c0536655ed0af959db4d051ea6ecfeff80e7b335c53395321d5cc264d5485ac50c0d986f31a4c56e0d41624dfc2930cca51650ec0b4f8faa5f9a ulimit.patch
-6a92f6c19d2cf9bd09621528c6ae32bfe0f1518c37e8e4ac5242f99a2f544ed2730ea2c41d2b7c57f7e33704fdde3db9ba19572663766cafb1a0dd4d80a29193 unbundle-sqlite.patch
-"
diff --git a/testing/cicada/cicada.post-install b/testing/cicada/cicada.post-install
deleted file mode 100644
index 148fb0424fc..00000000000
--- a/testing/cicada/cicada.post-install
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-
-add-shell '/usr/bin/cicada'
-exit 0
diff --git a/testing/cicada/cicada.pre-deinstall b/testing/cicada/cicada.pre-deinstall
deleted file mode 100644
index 3aa8f991146..00000000000
--- a/testing/cicada/cicada.pre-deinstall
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-
-remove-shell '/usr/bin/cicada'
-exit 0
diff --git a/testing/cicada/ulimit.patch b/testing/cicada/ulimit.patch
deleted file mode 100644
index 6b7719b586e..00000000000
--- a/testing/cicada/ulimit.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-On my Raspberry Pi box armv7, The values needed are u32. However seems for
-Alpine 32bit systems, u64 is needed.
-
-diff --git a/src/builtins/ulimit.rs b/src/builtins/ulimit.rs
-index 8e7d59b..e99e7a3 100644
---- a/src/builtins/ulimit.rs
-+++ b/src/builtins/ulimit.rs
-@@ -160,15 +160,9 @@ fn set_limit(limit_name: &str, value: u64, for_hard: bool) -> String {
- }
-
- if for_hard {
-- #[cfg(target_pointer_width = "32")]
-- { rlp.rlim_max = value as u32; }
-- #[cfg(target_pointer_width = "64")]
-- { rlp.rlim_max = value; }
-+ rlp.rlim_max = value;
- } else {
-- #[cfg(target_pointer_width = "32")]
-- { rlp.rlim_cur = value as u32; }
-- #[cfg(target_pointer_width = "64")]
-- { rlp.rlim_cur = value; }
-+ rlp.rlim_cur = value;
- }
-
- unsafe {
diff --git a/testing/cicada/unbundle-sqlite.patch b/testing/cicada/unbundle-sqlite.patch
deleted file mode 100644
index 148db21ae05..00000000000
--- a/testing/cicada/unbundle-sqlite.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-diff --git a/Cargo.toml b/Cargo.toml
-index 66f9b68..accf99a 100644
---- a/Cargo.toml
-+++ b/Cargo.toml
-@@ -42,7 +42,6 @@ features = ["std"]
-
- [dependencies.rusqlite]
- version = "0.26.0"
--features = ["bundled"]
-
- [build-dependencies]
- chrono = "0.4"
-
-diff --git a/Cargo.lock b/Cargo.lock
-index 2629807..53810dd 100644
---- a/Cargo.lock
-+++ b/Cargo.lock
-@@ -376,7 +376,6 @@ version = "0.23.2"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "d2cafc7c74096c336d9d27145f7ebd4f4b6f95ba16aa5a282387267e6925cb58"
- dependencies = [
-- "cc",
- "pkg-config",
- "vcpkg",
- ]
diff --git a/testing/cilium-cli/APKBUILD b/testing/cilium-cli/APKBUILD
new file mode 100644
index 00000000000..ad99e349c6e
--- /dev/null
+++ b/testing/cilium-cli/APKBUILD
@@ -0,0 +1,48 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=cilium-cli
+pkgver=0.15.23
+pkgrel=2
+pkgdesc="CLI to install, manage and troubleshoot Kubernetes clusters running Cilium"
+url="https://cilium.io/"
+arch="all"
+license="Apache-2.0"
+makedepends="go"
+subpackages="
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/cilium/cilium-cli/archive/refs/tags/v$pkgver.tar.gz"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ go build -v \
+ -ldflags "-X github.com/cilium/cilium-cli/internal/cli/cmd.Version=v$pkgver" \
+ ./cmd/cilium
+
+ for shell in bash fish zsh; do
+ ./cilium completion $shell > cilium.$shell
+ done
+}
+
+check() {
+ go test ./...
+}
+
+package() {
+ install -Dm755 cilium -t "$pkgdir"/usr/bin/
+
+ install -Dm644 cilium.bash \
+ "$pkgdir"/usr/share/bash-completion/completions/cilium
+ install -Dm644 cilium.fish \
+ "$pkgdir"/usr/share/fish/vendor_completions.d/cilium.fish
+ install -Dm644 cilium.zsh \
+ "$pkgdir"/usr/share/zsh/site-functions/_cilium
+}
+
+sha512sums="
+374a1fad145a8947f42f2bef41c9599996c211fcee4d2261bd6f8ddbe21633ec5cf3b3b69e7416933c3aacd075c06f625ecb2125848d9a77eb4573f6da318376 cilium-cli-0.15.23.tar.gz
+"
diff --git a/testing/cimg/APKBUILD b/testing/cimg/APKBUILD
index 0c1e7f2bdeb..a1a573ac0b1 100644
--- a/testing/cimg/APKBUILD
+++ b/testing/cimg/APKBUILD
@@ -1,23 +1,21 @@
# Contributor: Grigory Kirillov <txgk@bk.ru>
-# Maintainer: Grigory Kirillov <txgk@bk.ru>
+# Maintainer: Sergiy Stupar <owner@sestolab.pp.ua>
pkgname=cimg
-pkgver=3.1.2
+pkgver=3.3.5
pkgrel=0
pkgdesc="Small C++ toolkit for image processing"
-url="http://cimg.eu"
+url="https://cimg.eu"
arch="noarch"
license="CECILL-C OR CECILL-2.0"
options="!check" # no test suite
-subpackages="$pkgname-dev $pkgname-doc"
-source="https://github.com/dtschump/CImg/archive/v.$pkgver/CImg-v.$pkgver.tar.gz"
+source="https://github.com/GreycLab/CImg/archive/v.$pkgver/CImg-v.$pkgver.tar.gz"
builddir="$srcdir/CImg-v.$pkgver"
package() {
install -Dm644 CImg.h -t "$pkgdir"/usr/include/
install -Dm644 plugins/*.h -t "$pkgdir"/usr/include/CImg/plugins/
- install -Dm644 Licence_* -t "$pkgdir"/usr/share/licenses/"$pkgname"/
}
sha512sums="
-925283ceb2da51d0622d1e7d2655c914cc68483e5f26f85a4a6ba30fb6601ebabf1ec2494042df7315f28349815748b7529e16db04baeb2fe7654ea2ec976aca CImg-v.3.1.2.tar.gz
+dfcdaf923de725a706733361358871c8a7e7780b12e3d658de907803f4b31b6b2473c129cff08ca7d9012e66ab5f99e308d2dbc21dd7218f028028a423bcf68d CImg-v.3.3.5.tar.gz
"
diff --git a/testing/cinny-web/APKBUILD b/testing/cinny-web/APKBUILD
new file mode 100644
index 00000000000..68553f1f692
--- /dev/null
+++ b/testing/cinny-web/APKBUILD
@@ -0,0 +1,35 @@
+# Contributor: Lindsay Zhou <i@lin.moe>
+# Maintainer: Lindsay Zhou <i@lin.moe>
+_pkgname=cinny
+pkgname="$_pkgname"-web
+pkgver=3.2.0
+pkgrel=0
+pkgdesc="A Matrix client focusing primarily on simple, elegant and secure interface. (website)"
+url="https://cinny.in/"
+arch="noarch"
+license="AGPL3"
+makedepends="npm"
+source="
+ $_pkgname-$pkgver.tar.gz::https://github.com/cinnyapp/cinny/archive/v$pkgver.tar.gz
+"
+builddir="$srcdir/$_pkgname-$pkgver"
+options="!check" # no test suite
+
+build() {
+ export NODE_OPTIONS="--max-old-space-size=4000"
+ npm ci
+ npm run build
+}
+
+package() {
+ local webroot="$pkgdir"/usr/share/webapps/cinny
+ install -d "$webroot"
+ cp -r "$builddir"/dist/* "$webroot"
+
+ install -Dm644 "$builddir"/dist/config.json "$pkgdir"/etc/cinny/config.json
+ ln -sf /etc/cinny/config.json "$pkgdir"/usr/share/webapps/cinny/config.json
+}
+
+sha512sums="
+04f247e6a5685471c5819dffd4f18a3159768586433f25c9e298827cbf0c0bd00e0aa435e5b8a5f035724f83fb27dc345e427d01ea7e7f835c84b940926f2997 cinny-3.2.0.tar.gz
+"
diff --git a/testing/cinny/0001-disable-tauri-updater.patch b/testing/cinny/0001-disable-tauri-updater.patch
new file mode 100644
index 00000000000..484ad76fe10
--- /dev/null
+++ b/testing/cinny/0001-disable-tauri-updater.patch
@@ -0,0 +1,25 @@
+From 48c4ad45995f35b0e458f3e0fdb17ba61bda4bce Mon Sep 17 00:00:00 2001
+From: Krishan <33421343+kfiven@users.noreply.github.com>
+Date: Wed, 20 Jul 2022 20:27:42 +0530
+Subject: [PATCH] disable tauri updater
+
+---
+ src-tauri/tauri.conf.json | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src-tauri/tauri.conf.json b/src-tauri/tauri.conf.json
+index 10a9d32..1e0707b 100644
+--- a/src-tauri/tauri.conf.json
++++ b/src-tauri/tauri.conf.json
+@@ -49,7 +49,7 @@
+ }
+ },
+ "updater": {
+- "active": true,
++ "active": false,
+ "endpoints": [
+ "https://github.com/cinnyapp/cinny-desktop/releases/download/tauri/release.json"
+ ],
+--
+2.42.0
+
diff --git a/testing/cinny/APKBUILD b/testing/cinny/APKBUILD
new file mode 100644
index 00000000000..5515d25e45d
--- /dev/null
+++ b/testing/cinny/APKBUILD
@@ -0,0 +1,83 @@
+# Contributor: jane400 <alpine@j4ne.de>
+# Maintainer:
+pkgname=cinny
+pkgver=3.2.1
+_releasedate="2023-11-01"
+pkgrel=1
+pkgdesc="Yet another matrix client"
+url="https://cinny.in"
+# limited by tauri platform support
+arch="x86_64 x86 aarch64 armv7"
+license="AGPL-3.0-only"
+depends="gst-plugins-good"
+makedepends="
+ cargo
+ gtk+3.0-dev
+ libayatana-appindicator-dev
+ nodejs
+ npm
+ openssl-dev
+ tauri-cli
+ vips-dev
+ webkit2gtk-dev
+ "
+# Adapted from https://github.com/flathub/in.cinny.Cinny
+source="
+ cinny-$pkgver.zip::https://github.com/cinnyapp/cinny-desktop/releases/download/v$pkgver/cinny-desktop-v$pkgver.zip
+ 0001-disable-tauri-updater.patch
+ in.cinny.Cinny.appdata.xml.in
+ cinny.desktop
+"
+builddir="$srcdir/cinny-desktop"
+_jsdir="$builddir/cinny"
+_rustdir="$builddir/src-tauri"
+options="net !check" # no checks
+
+# secfixes:
+# 2.2.4-r1:
+# - CVE-2023-28103
+
+export CARGO_PROFILE_RELEASE_OPT_LEVEL=2
+export NODE_OPTIONS="--max-old-space-size=4000"
+
+prepare() {
+ default_prepare
+
+ # they don't know how to specify dependencies correctly
+ cd "$_jsdir"
+ npm ci --legacy-peer-deps
+
+ cd "$builddir"
+ npm ci
+
+ cd "$_rustdir"
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo-tauri build -b "none"
+}
+
+package() {
+ install -Dm755 -t "$pkgdir"/usr/bin "$_rustdir"/target/release/cinny
+
+ install -Dm644 -t "$pkgdir"/usr/share/applications/ "$srcdir"/cinny.desktop
+
+ # Generate appdata file
+ mkdir -p "$pkgdir"/usr/share/metainfo/
+ export DATE="$_releasedate"
+ export VERSION="$pkgver-$pkgrel"
+ envsubst < "$srcdir"/in.cinny.Cinny.appdata.xml.in > "$pkgdir"/usr/share/metainfo/in.cinny.Cinny.appdata.xml
+
+ install -Dm644 "$_rustdir"/icons/32x32.png "$pkgdir"/usr/share/icons/hicolor/32x32/apps/cinny.png
+ install -Dm644 "$_rustdir"/icons/128x128.png "$pkgdir"/usr/share/icons/hicolor/128x128/apps/cinny.png
+ install -Dm644 "$_rustdir"/icons/128x128@2x.png "$pkgdir"/usr/share/icons/hicolor/256x256/apps/cinny.png
+ install -Dm644 "$_rustdir"/icons/icon.png "$pkgdir"/usr/share/icons/hicolor/512x512/apps/cinny.png
+}
+
+sha512sums="
+d46e20e07d35cf2e9477325e3fd3c80e5b43024ff827624d88a577c7f0f507ab1cce147959ce69b4a8f2a781b10234b493c5019bb9b0b50091f4320ca53f5c0d cinny-3.2.1.zip
+0884a48c4a74c13b1fc3ce4a25fa9d44766f0e7ee6f6ec75c287a145e8df9c318684aa3defb2a6e2ab348d164ebb6d8e86d79a6ba97fb3519af49ee476ff9127 0001-disable-tauri-updater.patch
+f5cdcf87cbb78764323ca2dffc1f5a76c8db28f3683cc6e8b8f444fe73638963a1df882f2ec937c470047864aa6398fc1ccf47275ea5f8e11d10560c5f553ade in.cinny.Cinny.appdata.xml.in
+f94ce9099642c1b765399d2d3c617c2cdb63fef6fffa9e5556d8eba7a26090ce429ded5b2a5280d79f9986ab6ad86a6cfdfd27c39dbb06418fc57b22cef313c1 cinny.desktop
+"
diff --git a/testing/cinny/cinny.desktop b/testing/cinny/cinny.desktop
new file mode 100644
index 00000000000..63ab58046e5
--- /dev/null
+++ b/testing/cinny/cinny.desktop
@@ -0,0 +1,13 @@
+[Desktop Entry]
+Version=1.5
+Type=Application
+
+Name=Cinny
+Comment=Yet another matrix client with simple, elegant and secure interface.
+Icon=cinny
+Exec=cinny
+Terminal=false
+Categories=Network;InstantMessaging;
+Keywords=Matrix;matrix.org;chat;irc;communications;talk;riot;element;fractal;voip;
+X-Purism-FormFactor=Workstation;Mobile;
+SingleMainWindow=true
diff --git a/testing/cinny/in.cinny.Cinny.appdata.xml.in b/testing/cinny/in.cinny.Cinny.appdata.xml.in
new file mode 100644
index 00000000000..c0b092124d9
--- /dev/null
+++ b/testing/cinny/in.cinny.Cinny.appdata.xml.in
@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<component type="desktop-application">
+ <id>in.cinny.Cinny</id>
+
+ <name>Cinny</name>
+ <summary>Yet another Matrix client with simple, elegant and secure interface.</summary>
+ <developer_name>Ajay Bura</developer_name>
+
+ <metadata_license>CC0-1.0</metadata_license>
+ <project_license>MIT</project_license>
+
+ <url type="homepage">https://cinny.in</url>
+ <url type="bugtracker">https://gitlab.alpinelinux.org/alpine/aports/-/issues</url>
+ <url type="donation">https://cinny.in/#sponsor</url>
+
+ <supports>
+ <control>pointing</control>
+ <control>keyboard</control>
+ <control>touch</control>
+ </supports>
+
+ <description>
+ <p>
+ Cinny is a matrix.org client focusing primarily on simple, elegant and secure interface protected by e2ee with the power of open source.
+ </p>
+ <p>
+ Features: User-friendly design, Login and register, Full space support, Encryption and emoji verification, Ability to create new rooms and tweak settings, Support replies, markdown, message editing, Dark, light, and black themes.
+ </p>
+ </description>
+
+ <custom>
+ <value key="Purism::form_factor">workstation</value>
+ <value key="Purism::form_factor">mobile</value>
+ </custom>
+
+ <launchable type="desktop-id">cinny.desktop</launchable>
+
+ <!-- We just use the flathub pictures, provides a nice page in appstores -->
+ <screenshots>
+ <screenshot type="default">
+ <image>https://raw.githubusercontent.com/flathub/in.cinny.Cinny/master/resources/screenshot1.png</image>
+ </screenshot>
+ <screenshot>
+ <image>https://raw.githubusercontent.com/flathub/in.cinny.Cinny/master/resources/screenshot2.png</image>
+ </screenshot>
+ <screenshot>
+ <image>https://raw.githubusercontent.com/flathub/in.cinny.Cinny/master/resources/screenshot3.png</image>
+ </screenshot>
+ </screenshots>
+
+ <provides>
+ <binary>cinny</binary>
+ </provides>
+
+ <releases>
+ <release version="$VERSION" date="$DATE"/>
+ </releases>
+ <content_rating type="oars-1.1"/>
+</component>
diff --git a/testing/cjose/APKBUILD b/testing/cjose/APKBUILD
deleted file mode 100644
index 1739627cc9e..00000000000
--- a/testing/cjose/APKBUILD
+++ /dev/null
@@ -1,49 +0,0 @@
-# Contributor: Johan Bergström <bugs@bergstroem.nu>
-# Maintainer: Johan Bergström <bugs@bergstroem.nu>
-pkgname=cjose
-pkgver=0.6.1
-pkgrel=1
-pkgdesc="A C library implementing the Javascript Object Signing and Encryption"
-url="https://github.com/cisco/cjose"
-arch="all !s390x" # tests fails on s390x
-license="MIT"
-makedepends="check-dev coreutils doxygen jansson-dev openssl-dev perl"
-subpackages="$pkgname-dev $pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/cisco/cjose/archive/$pkgver.tar.gz"
-
-prepare() {
- default_prepare
-
- update_config_sub
- update_config_guess
-}
-
-build() {
- CFLAGS="$CFLAGS -Wno-error" \
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --enable-static=no \
- --with-openssl=/usr \
- --with-jansson=/usr \
- --disable-doxygen-ps \
- --disable-doxygen-pdf
- make
- # need to invoke doc generation, otherwise it doesn't get installed properly
- make doxygen
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-7ae67a6d19591b3d19b888270ec0ca17df399bea117e42686fc1de39b3741ed9a8816f96d33d090687c49c3123cdc95430a781835a525a02d22561ebf5aaa653 cjose-0.6.1.tar.gz
-"
diff --git a/testing/ck/APKBUILD b/testing/ck/APKBUILD
deleted file mode 100644
index 19ac00a3793..00000000000
--- a/testing/ck/APKBUILD
+++ /dev/null
@@ -1,56 +0,0 @@
-# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
-# Maintainer:
-pkgname=ck
-pkgver=0.7.1
-pkgrel=0
-pkgdesc="Concurrency primitives, safe memory reclamation mechanisms and non-blocking (including lock-free) data structures"
-url="http://concurrencykit.org/"
-arch="all"
-license="BSD-2-Clause AND Apache-2.0"
-makedepends="linux-headers"
-subpackages="$pkgname-static $pkgname-dev $pkgname-doc"
-options="!check" # TODO: pass locally but hang on CI
-source="$pkgname-$pkgver.tar.gz::https://github.com/concurrencykit/ck/archive/refs/tags/$pkgver.tar.gz"
-
-# GitLab CI and builders run armhf/armv7 as 32-bit arches on aarch64.
-# Thus, we cannot rely on the uname -m output on these platforms.
-case "$CTARGET_ARCH" in
-armhf) export PLATFORM=armv6l ;;
-armv7) export PLATFORM=armv7l ;;
-esac
-
-# Platforms which are not natively supported by ck can be supported by
-# compiling with --use-cc-builtins. This has a performance penalty but
-# allows us to support software depending on ck on these platforms.
-#
-# Regarding native support:
-#
-# * riscv64: https://github.com/concurrencykit/ck/issues/169
-#
-_conf_opts=""
-case "$CTARGET_ARCH" in
-riscv64) _conf_opts="--use-cc-builtins" ;;
-esac
-
-build() {
- ./configure \
- --build=\$CBUILD \
- --host=\$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var $_conf_opts
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-48768e7adf05b818f2951b246c90185071d6c3f874218349183d96b7887830f9505f9fa58576e9933862486e8543097df0ee667518009a3946d1edc19fc253f7 ck-0.7.1.tar.gz
-"
diff --git a/testing/ckb-next/983.patch b/testing/ckb-next/983.patch
new file mode 100644
index 00000000000..4cdcd09e334
--- /dev/null
+++ b/testing/ckb-next/983.patch
@@ -0,0 +1,19 @@
+From 76a47f95b442a1ae5a9c7448566eaafd8863ca8d Mon Sep 17 00:00:00 2001
+From: Willow Barraco <contact@willowbarraco.fr>
+Date: Wed, 19 Jul 2023 09:38:09 +0200
+Subject: [PATCH] Fix ckb-next-daemon OpenRC service file
+
+---
+ linux/openrc/ckb-next-daemon.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/linux/openrc/ckb-next-daemon.in b/linux/openrc/ckb-next-daemon.in
+index 4b154fca..26d38d93 100755
+--- a/linux/openrc/ckb-next-daemon.in
++++ b/linux/openrc/ckb-next-daemon.in
+@@ -7,4 +7,4 @@ command="@CMAKE_INSTALL_PREFIX@/bin/ckb-next-daemon"
+ description="Corsair Keyboards and Mice Daemon"
+ pidfile="/dev/input/ckb0/pid"
+ logfile="/var/log/${RC_SVCNAME}.log"
+-start_stop_daemon_args+="--background --stdout ${logfile} --stderr ${logfile}"
++start_stop_daemon_args="$start_stop_daemon_args --background --stdout ${logfile} --stderr ${logfile}"
diff --git a/testing/ckb-next/APKBUILD b/testing/ckb-next/APKBUILD
new file mode 100644
index 00000000000..26c102f7736
--- /dev/null
+++ b/testing/ckb-next/APKBUILD
@@ -0,0 +1,63 @@
+# Maintainer: Willow Barraco <contact@willowbarraco.fr>
+pkgname=ckb-next
+pkgver=0.6.0
+pkgrel=1
+pkgdesc="RGB Driver for Linux"
+url="https://github.com/ckb-next/ckb-next"
+arch="all"
+license="GPL-2.0-or-later"
+makedepends="
+ cmake
+ eudev-dev
+ libdbusmenu-qt-dev
+ pulseaudio-dev
+ qt5-qttools-dev
+ qt5-qtx11extras-dev
+ quazip-dev
+ samurai
+ xcb-util-wm-dev
+ "
+subpackages="
+ $pkgname-dev
+ $pkgname-daemon
+ $pkgname-daemon-openrc
+ "
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/ckb-next/ckb-next/archive/refs/tags/v$pkgver.tar.gz
+ 983.patch
+ "
+options="!check" # no tests
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=MinSizeRel \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DCMAKE_INSTALL_LIBEXECDIR=lib \
+ -DDISABLE_UPDATER=1 \
+ -DUDEV_RULE_DIRECTORY=/usr/lib/udev/rules.d \
+ -DFORCE_INIT_SYSTEM=openrc
+
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+daemon() {
+ amove usr/bin/ckb-next-daemon
+
+ amove usr/lib/udev/rules.d
+}
+
+openrc() {
+ default_openrc
+
+ install_if="openrc $pkgname-daemon=$pkgver-r$pkgrel"
+}
+
+sha512sums="
+34236199d420b663bb71db9400622bb868a3a0b384b58d5da3f80d2bd7ec9586d4e4ac9caad0b047b8440dc4200e4dd6077f4e0d1edb5a75a1327bf9c9ba9392 ckb-next-0.6.0.tar.gz
+3ea2dfbe671005a013f66334c9d757fccc6dc2cf5bf5ed056ba9a7329378c3de43ee420150a774581e2f3b9b261069f140077ecf1cf6579fa11bfbc003532aa2 983.patch
+"
diff --git a/testing/clapper/APKBUILD b/testing/clapper/APKBUILD
new file mode 100644
index 00000000000..6e0470b62b6
--- /dev/null
+++ b/testing/clapper/APKBUILD
@@ -0,0 +1,36 @@
+# Maintainer: Willow Barraco <contact@willowbarraco.fr>
+pkgname=clapper
+pkgver=0.5.2
+pkgrel=1
+pkgdesc="A GNOME media player built using GJS with GTK4 toolkit and powered by GStreamer with OpenGL rendering"
+url="https://github.com/Rafostar/clapper"
+arch="all !s390x !armhf" # no gjs
+license="GPL-3.0-or-later"
+depends="
+ gjs
+ hicolor-icon-theme
+ "
+makedepends="
+ gjs-dev
+ gst-plugins-base-dev
+ gstreamer-dev
+ gtk4.0-dev
+ meson
+ "
+subpackages="$pkgname-lang"
+source="$pkgname-$pkgver.tar.gz::https://github.com/Rafostar/clapper/archive/refs/tags/$pkgver.tar.gz"
+options="!check" # No tests
+ldpath="/usr/lib/gstreamer-1.0/"
+
+build() {
+ abuild-meson -Db_lto=true . output
+ meson compile -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+sha512sums="
+46934a6e1224e88338e85154bbc489dcd006887863fcdc880fa631e5573afa48de32c23fa0bcc9b2206f324e51b6f071d250b340c41a450e9d0c497863feacbf clapper-0.5.2.tar.gz
+"
diff --git a/testing/clash/APKBUILD b/testing/clash/APKBUILD
deleted file mode 100644
index d31eda4c71a..00000000000
--- a/testing/clash/APKBUILD
+++ /dev/null
@@ -1,30 +0,0 @@
-# Contributor: Zhuo FENG <fenprace.i@gmail.com>
-# Maintainer: Zhuo FENG <fenprace.i@gmail.com>
-pkgname=clash
-pkgver=1.10.6
-pkgrel=0
-pkgdesc="rule-based tunnel in go"
-url="https://github.com/Dreamacro/clash"
-arch="all"
-license="GPL-3.0-or-later"
-makedepends="go"
-subpackages="$pkgname-openrc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/Dreamacro/clash/archive/refs/tags/v$pkgver.tar.gz
- clash.initd"
-options="!check" # The upstream does not provide a proper way to test the pakcage
-
-build() {
- export GOFLAGS="$GOFLAGS -modcacherw"
- export GOPATH="$builddir"/gopath
- make VERSION="v$pkgver" docker
-}
-
-package() {
- install -Dm755 bin/clash-docker "$pkgdir"/usr/bin/clash
- install -Dm755 "$srcdir"/clash.initd "$pkgdir"/etc/init.d/clash
-}
-
-sha512sums="
-0bf72eaa90b90756599e5fad89f77c75695fb963463afad136e027b187a51bdd6ae8adcfe4f2fd43254ce16b1c9e67c7f9468a4cb981592f9975fd0b3a2f09a1 clash-1.10.6.tar.gz
-e22dc344dbcd144b0fc0d77450da2a0cbc5e5f7ffaf01cd411610e00ca131ad18ef3f1b6191fa870bc2a27bdc67236c5e53aa5c9c6bc5f4a195d7f0ff04a7d35 clash.initd
-"
diff --git a/testing/clash/clash.initd b/testing/clash/clash.initd
deleted file mode 100755
index 2296f7ea984..00000000000
--- a/testing/clash/clash.initd
+++ /dev/null
@@ -1,11 +0,0 @@
-#!/sbin/openrc-run
-
-command="/usr/bin/clash"
-command_args="-d /etc/clash"
-command_background=true
-pidfile="/run/$RC_SVCNAME.pid"
-
-depend() {
- need net
- use dns logger netmount
-}
diff --git a/testing/clatd/APKBUILD b/testing/clatd/APKBUILD
new file mode 100644
index 00000000000..cc21ebb5532
--- /dev/null
+++ b/testing/clatd/APKBUILD
@@ -0,0 +1,27 @@
+# Contributor: Anjandev Momi <anjan@momi.ca>
+# Maintainer: Anjandev Momi <anjan@momi.ca>
+pkgname=clatd
+pkgver=1.6
+pkgrel=0
+pkgdesc="A 464XLAT CLAT implementation for Linux"
+url="https://github.com/toreanderson/clatd"
+arch="noarch"
+license="MIT"
+depends="
+ perl
+ perl-io-socket-ip
+ perl-net-dns
+ perl-net-ip
+ tayga
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/toreanderson/clatd/archive/refs/tags/v$pkgver.tar.gz"
+options="!check" # no checks
+
+package() {
+ install -Dm755 clatd "$pkgdir/usr/bin/clatd"
+ install -Dm755 scripts/clatd.networkmanager "$pkgdir/etc/NetworkManager/dispatcher.d/50-clatd"
+}
+
+sha512sums="
+606d579fb658cca7f9d0dddf9c49671e4b2774aafb1200e9bdd95964e5bd7bb33f313d340ac24a556f97d253b13a0498056b3b971bfb7c9119d3223f90031d74 clatd-1.6.tar.gz
+"
diff --git a/testing/clementine/APKBUILD b/testing/clementine/APKBUILD
index 935cc1be496..8ea97bac33b 100644
--- a/testing/clementine/APKBUILD
+++ b/testing/clementine/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: knuxify <knuxify@gmail.com>
pkgname=clementine
pkgver=1.4.0_git20220324
-pkgrel=1
+pkgrel=10
_tag=1.4.0rc1-814-g2b340da79
pkgdesc="A modern music player and library organizer"
url="https://clementine-player.org"
@@ -35,8 +35,10 @@ makedepends="alsa-lib-dev
sparsehash
taglib-dev
"
-checkdepends="gmock gtest"
-source="https://github.com/clementine-player/Clementine/releases/download/$_tag/clementine-$_tag.tar.xz"
+checkdepends="gtest-dev"
+source="https://github.com/clementine-player/Clementine/releases/download/$_tag/clementine-$_tag.tar.xz
+ cxx17.patch
+ "
builddir="$srcdir/clementine-$_tag"
build() {
@@ -47,10 +49,11 @@ build() {
-DCMAKE_INSTALL_PREFIX=/usr \
-DBUILD_SHARED_LIBS=True \
-DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_CXX_FLAGS="$CXXFLAGS -Wno-error=format" \
+ -DCMAKE_CXX_FLAGS="$CXXFLAGS -std=c++17 -Wno-error=format" \
-DBUNDLE_PROJECTM_PRESETS=OFF \
-DUSE_SYSTEM_PROJECTM=ON \
-DUSE_SYSTEM_TAGLIB=ON \
+ -DBUILD_WERROR=OFF \
$CMAKE_CROSSOPTS
cmake --build build
cmake --build build --target build_tests
@@ -69,4 +72,5 @@ package() {
sha512sums="
38c826e91a23f3d23c30ad9cc34e84c141b4a09badfb08149eff7c6a2ded6e4dabd5a08671a8a82385ba56a2a2d3830ee96e839f86261e0e60180481db4b240a clementine-1.4.0rc1-814-g2b340da79.tar.xz
+7cf24bc057c17188084cc252ec2b049e66d27b272b7cfd50d99e1627a80800b5f81b7e5aa57fd551d70f32f864dbfcf13c19f945bfadbdce71a2671dd4b21cb9 cxx17.patch
"
diff --git a/testing/clementine/cxx17.patch b/testing/clementine/cxx17.patch
new file mode 100644
index 00000000000..67bb4a79add
--- /dev/null
+++ b/testing/clementine/cxx17.patch
@@ -0,0 +1,73 @@
+diff --git a/3rdparty/libprojectm/CMakeLists.txt b/3rdparty/libprojectm/CMakeLists.txt
+index ce58344..a70f8a2 100644
+--- a/3rdparty/libprojectm/CMakeLists.txt
++++ b/3rdparty/libprojectm/CMakeLists.txt
+@@ -24,8 +24,6 @@ set(BUILD_PROJECTM_STATIC ON)
+ set(DISABLE_NATIVE_PRESETS ON)
+ set(DISABLE_MILKDROP_PRESETS OFF)
+
+-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
+-
+ pkg_check_modules(GLEW glew)
+
+ if(DISABLE_NATIVE_PRESETS)
+diff --git a/3rdparty/qtsingleapplication/CMakeLists.txt b/3rdparty/qtsingleapplication/CMakeLists.txt
+index 7825ab9..c405256 100644
+--- a/3rdparty/qtsingleapplication/CMakeLists.txt
++++ b/3rdparty/qtsingleapplication/CMakeLists.txt
+@@ -1,5 +1,4 @@
+ cmake_minimum_required(VERSION 3.0.0)
+-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} --std=c++0x")
+
+ set(SINGLEAPP-SOURCES
+ qtlocalpeer.cpp
+diff --git a/ext/libclementine-common/CMakeLists.txt b/ext/libclementine-common/CMakeLists.txt
+index ad35a51..5aff49a 100644
+--- a/ext/libclementine-common/CMakeLists.txt
++++ b/ext/libclementine-common/CMakeLists.txt
+@@ -2,8 +2,6 @@ include_directories(${PROTOBUF_INCLUDE_DIRS})
+ include_directories(${CMAKE_CURRENT_BINARY_DIR})
+ include_directories(${CMAKE_CURRENT_SOURCE_DIR})
+
+-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} --std=c++0x")
+-
+ set(SOURCES
+ core/closure.cpp
+ core/latch.cpp
+diff --git a/ext/libclementine-remote/CMakeLists.txt b/ext/libclementine-remote/CMakeLists.txt
+index 70761b4..5f860fb 100644
+--- a/ext/libclementine-remote/CMakeLists.txt
++++ b/ext/libclementine-remote/CMakeLists.txt
+@@ -1,7 +1,5 @@
+ include_directories(${PROTOBUF_INCLUDE_DIRS})
+
+-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} --std=c++0x")
+-
+ set(MESSAGES
+ remotecontrolmessages.proto
+ )
+diff --git a/ext/libclementine-tagreader/CMakeLists.txt b/ext/libclementine-tagreader/CMakeLists.txt
+index d7ae9f6..c51dbaf 100644
+--- a/ext/libclementine-tagreader/CMakeLists.txt
++++ b/ext/libclementine-tagreader/CMakeLists.txt
+@@ -3,8 +3,6 @@ include_directories(${CMAKE_CURRENT_SOURCE_DIR})
+ include_directories(${CMAKE_CURRENT_BINARY_DIR})
+ include_directories(${CMAKE_SOURCE_DIR}/ext/libclementine-common)
+
+-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} --std=c++0x")
+-
+ set(MESSAGES
+ tagreadermessages.proto
+ )
+diff --git a/gst/moodbar/CMakeLists.txt b/gst/moodbar/CMakeLists.txt
+index 636ef9f..8828674 100644
+--- a/gst/moodbar/CMakeLists.txt
++++ b/gst/moodbar/CMakeLists.txt
+@@ -1,7 +1,6 @@
+ cmake_minimum_required(VERSION 3.0.0)
+
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall")
+-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Woverloaded-virtual -Wall --std=c++0x")
+
+ include_directories(${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR})
+
diff --git a/testing/clevis-extra-pins/APKBUILD b/testing/clevis-extra-pins/APKBUILD
new file mode 100644
index 00000000000..b7d0f11b7f0
--- /dev/null
+++ b/testing/clevis-extra-pins/APKBUILD
@@ -0,0 +1,26 @@
+# Contributor: Michał Polański <michal@polanski.me>
+# Maintainer: Michał Polański <michal@polanski.me>
+pkgname=clevis-extra-pins
+pkgver=0_git20230629
+_gitrev=684702e18e07fd3d453b5844051d9a7e424a9bb8
+pkgrel=0
+pkgdesc="Additional pins for Clevis binding framework"
+url="https://github.com/anatol/clevis.go"
+license="GPL-3.0-or-later"
+arch="noarch"
+depends="bash clevis"
+source="https://github.com/anatol/clevis.go/archive/$_gitrev/clevis-extra-pins-$pkgver.tar.gz"
+builddir="$srcdir/clevis.go-$_gitrev"
+options="!check" # no test suite for bash scripts
+
+package() {
+ install -Dm755 \
+ clevis-decrypt-yubikey \
+ clevis-encrypt-yubikey \
+ clevis-encrypt-remote \
+ -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+969bc1812e39be36719ceb82e76876e8fcde874e92a89808a3ce5c19ba4be3d99f4285fa2e8c73ad25e157cc12f03edaa76084e599ec62e08887ec80e258ab7c clevis-extra-pins-0_git20230629.tar.gz
+"
diff --git a/testing/clevis/APKBUILD b/testing/clevis/APKBUILD
new file mode 100644
index 00000000000..99488ae82f0
--- /dev/null
+++ b/testing/clevis/APKBUILD
@@ -0,0 +1,46 @@
+# Contributor: Michał Polański <michal@polanski.me>
+# Maintainer: Michał Polański <michal@polanski.me>
+pkgname=clevis
+pkgver=19
+pkgrel=0
+pkgdesc="Pluggable framework for automated decryption"
+url="https://github.com/latchset/clevis"
+license="GPL-3.0-or-later WITH OpenSSL-Exception"
+arch="all"
+depends="bash cryptsetup jose libpwquality"
+makedepends="
+ asciidoc
+ bash-completion-dev
+ meson
+ tpm2-tools
+ cryptsetup-dev
+ jansson-dev
+ jose-dev
+ audit-dev
+ udisks2-dev
+ luksmeta-dev
+ "
+checkdepends="jq keyutils tang"
+subpackages="
+ $pkgname-dbg
+ $pkgname-doc
+ $pkgname-bash-completion
+ "
+source="https://github.com/latchset/clevis/archive/v$pkgver/clevis-$pkgver.tar.gz"
+
+build() {
+ abuild-meson . output
+ meson compile -C output
+}
+
+check() {
+ meson test --no-rebuild --print-errorlogs -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+sha512sums="
+dee19354c908c3843fc295a84b431780d5d6062c77766ee7ce9550636d3623d92b0cd1f6d4c40d57bef14debddc161da2b72289a5d6185cdd17b09a1ef67409a clevis-19.tar.gz
+"
diff --git a/testing/click/0001-configure.ac-fix-building-against-BusyBox-sed.patch b/testing/click/0001-configure.ac-fix-building-against-BusyBox-sed.patch
new file mode 100644
index 00000000000..fe809899700
--- /dev/null
+++ b/testing/click/0001-configure.ac-fix-building-against-BusyBox-sed.patch
@@ -0,0 +1,34 @@
+From 56dd84d0626f99f97ae94d868058367ee46d9a73 Mon Sep 17 00:00:00 2001
+From: Ratchanan Srirattanamet <ratchanan@ubports.com>
+Date: Fri, 22 Mar 2024 17:30:28 +0700
+Subject: [PATCH] configure.ac: fix building against BusyBox sed
+
+Welp, when you are not using `-E` (extended) mode, basic POSIX regex
+means that `+` doesn't have to be escaped. Escaping it confuses some
+version of sed, such as BusyBox sed in recent version of Alpine Linux
+which fails with `sed: bad regex '\+': Repetition not preceded by valid
+expression`.
+
+POSIX regex, why do you have basic mode?
+
+Fixes: https://gitlab.com/ubports/development/core/click/-/issues/26
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index ff69711..f173da9 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -154,7 +154,7 @@ AC_SUBST(COVERAGE_LDFLAGS)
+
+ # Python can't accept some characters in our Debian version, so strip those out.
+ AC_SUBST(PYTHON_PACKAGE_VERSION,
+- [$(echo "$PACKAGE_VERSION" | sed -e 's/[[^a-zA-Z0-9.+-]]//g' -e 's/\+//2g')])
++ [$(echo "$PACKAGE_VERSION" | sed -e 's/[[^a-zA-Z0-9.+-]]//g' -e 's/+//2g')])
+
+ AC_CONFIG_FILES([
+ Makefile
+--
+2.44.0
+
diff --git a/testing/click/APKBUILD b/testing/click/APKBUILD
new file mode 100644
index 00000000000..689088bc3f5
--- /dev/null
+++ b/testing/click/APKBUILD
@@ -0,0 +1,64 @@
+# Maintainer: Luca Weiss <luca@z3ntu.xyz>
+pkgname=click
+pkgver=0.5.2
+pkgrel=1
+pkgdesc="Simplified packaging format"
+url="https://gitlab.com/ubports/development/core/click"
+arch="all"
+license="GPL-3.0-only"
+depends_dev="
+ dbus-test-runner-dev
+ gobject-introspection-dev
+ gtest-dev
+ libgee-dev
+ process-cpp-dev
+ properties-cpp-dev
+ "
+makedepends="
+ $depends_dev
+ autoconf
+ automake
+ cmake
+ dbus-test-runner
+ gobject-introspection
+ intltool
+ json-glib-dev
+ libtool
+ py3-setuptools
+ vala
+ "
+subpackages="$pkgname-dev $pkgname-doc $pkgname-pyc"
+source="https://gitlab.com/ubports/development/core/click/-/archive/$pkgver/click-$pkgver.tar.gz
+ 0001-configure.ac-fix-building-against-BusyBox-sed.patch
+ "
+options="!check" # Needs dpkg
+
+build() {
+ ./autogen.sh
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var \
+ --disable-packagekit \
+ --disable-systemd
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir/" PYTHON_INSTALL_FLAGS="--root=$pkgdir/" install
+
+ # Make abuild's version check happy (#386)
+ sed -i s/+ubports//g "$pkgdir"/usr/lib/pkgconfig/*.pc
+}
+
+sha512sums="
+56244d2baa71bbfc168f57e4eea30a5ee0bde6da6e92e2063ede97d2ef93d44123a1af7a0c1610090ae48a9cf77e2daa554e9407454b7f8f53d1f655956e9cb0 click-0.5.2.tar.gz
+40cf041438fae2a916c4277ebedca005338c011697248b69568b49559fe7f2a482199eeafe7704b54e73cf5e85c6c78022c750e29efc083aef1e7213314b3e34 0001-configure.ac-fix-building-against-BusyBox-sed.patch
+"
diff --git a/testing/clinfo/APKBUILD b/testing/clinfo/APKBUILD
index b92641109d1..45caf136d53 100644
--- a/testing/clinfo/APKBUILD
+++ b/testing/clinfo/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Dennis Krupenik <dennis@krupenik.com>
# Maintainer: Dennis Krupenik <dennis@krupenik.com>
pkgname=clinfo
-pkgver=3.0.21.02.21
+pkgver=3.0.23.01.25
pkgrel=0
pkgdesc="Print all known information about all available OpenCL platforms and devices in the system"
url="https://github.com/Oblomov/clinfo"
@@ -21,5 +21,5 @@ package() {
}
sha512sums="
-f2fe5ec450edb258412dbb458fc8895530d67cf96589c6b94f27e135227db1796582173c0fa48a578a23c572b73ddce007a6e75c67a23b297986e47792c264ad clinfo-3.0.21.02.21.tar.gz
+c8e0f33a304a64f1fb4b4ffecb2a62bc10fb5e9777cc8d0cd44bf551e5c94141f04d4cafd28fe6e796bc365e356027297fc9c91359b23b152b1c98d9a128515c clinfo-3.0.23.01.25.tar.gz
"
diff --git a/testing/cliphist/APKBUILD b/testing/cliphist/APKBUILD
index dc562bcbe77..821b622d276 100644
--- a/testing/cliphist/APKBUILD
+++ b/testing/cliphist/APKBUILD
@@ -1,8 +1,7 @@
-# Contributor: psykose <alice@ayaya.dev>
-# Maintainer: psykose <alice@ayaya.dev>
+# Maintainer:
pkgname=cliphist
-pkgver=0.3.1
-pkgrel=3
+pkgver=0.5.0
+pkgrel=2
pkgdesc="wayland clipboard manager"
url="https://github.com/sentriz/cliphist"
arch="all"
@@ -13,22 +12,26 @@ makedepends="go"
subpackages="$pkgname-fzf::noarch"
source="$pkgname-$pkgver.tar.gz::https://github.com/sentriz/cliphist/archive/refs/tags/v$pkgver.tar.gz"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
build() {
go build
}
package() {
install -D -m755 cliphist -t "$pkgdir"/usr/bin/
+ install -D -m755 contrib/cliphist-fzf -t "$pkgdir"/usr/bin/
}
fzf() {
pkgdesc="$pkgdesc with fzf picker"
depends="$pkgname=$pkgver-r$pkgrel fzf"
- cd "$builddir"
- install -D -m755 contrib/cliphist-fzf -t "$subpkgdir"/usr/bin/
+ amove usr/bin/cliphist-fzf
}
sha512sums="
-11416933b2c7e11d271f1e618ae8d18e450212bf2ae3e6bc869c1932b5bd25d4b20aea7ef1b78d152b411fdec28b4339cf5d26a5d30a47103606e3ed128d80d2 cliphist-0.3.1.tar.gz
+c1ef41d8efe574850e0a2e77d2d8989e6c17162b4eaef34362ec4f00ec79e5e71a60a9773c452f008e1851665e424a4ef4d3b1aef62338e14134310399be5baa cliphist-0.5.0.tar.gz
"
diff --git a/testing/clipit/APKBUILD b/testing/clipit/APKBUILD
index d4d9e60cef2..bad2f7f0b04 100644
--- a/testing/clipit/APKBUILD
+++ b/testing/clipit/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Sean McAvoy <seanmcavoy@gmail.com>
pkgname=clipit
pkgver=1.4.5
-pkgrel=0
+pkgrel=2
pkgdesc="ClipIt is a lightweight GTK+ clipboard manager"
url="https://github.com/CristianHenzel/ClipIt"
arch="all"
@@ -19,11 +19,12 @@ prepare() {
}
build() {
- ./configure --prefix=/usr \
+ ./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
--with-gtk3
}
-
package() {
make DESTDIR="$pkgdir" install
}
diff --git a/testing/clipman/APKBUILD b/testing/clipman/APKBUILD
deleted file mode 100644
index 8fdd7612fb5..00000000000
--- a/testing/clipman/APKBUILD
+++ /dev/null
@@ -1,26 +0,0 @@
-# Contributor: Galen Abell <galen@galenabell.com>
-# Maintainer: Galen Abell <galen@galenabell.com>
-pkgname=clipman
-pkgver=1.6.1
-pkgrel=3
-pkgdesc="A simple clipboard manager for Wayland"
-url="https://github.com/yory8/clipman"
-arch="all"
-license="GPL-3.0-only"
-depends="wl-clipboard"
-makedepends="go"
-options="!check" # no tests
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/yory8/clipman/archive/v$pkgver.tar.gz"
-
-build() {
- go build -o $pkgname
-}
-
-package() {
- install -Dm755 $pkgname "$pkgdir"/usr/bin/$pkgname
- install -Dm644 docs/clipman.1 -t "$pkgdir"/usr/share/man/man1
-}
-sha512sums="
-4d02cad58a5637df64a32673406632a9626633fa2bfc6cff28dc6c724048a3f6e40482a3f0eca64ad0af2e0100b426d8779beef29f24e28b5c494878ae1c0ef4 clipman-1.6.1.tar.gz
-"
diff --git a/testing/cliquer/APKBUILD b/testing/cliquer/APKBUILD
new file mode 100644
index 00000000000..fb53f7b58c9
--- /dev/null
+++ b/testing/cliquer/APKBUILD
@@ -0,0 +1,44 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
+pkgname=cliquer
+pkgver=1.22
+pkgrel=2
+pkgdesc="Set of C routines for finding cliques in an arbitrary weighted graph"
+url="https://github.com/dimpase/autocliquer"
+arch="all"
+license="GPL-2.0-or-later"
+source="https://github.com/dimpase/autocliquer/releases/download/v$pkgver/cliquer-$pkgver.tar.gz"
+subpackages="
+ $pkgname-tests:_tests
+ $pkgname-static
+ $pkgname-libs
+ $pkgname-dev
+ "
+
+build() {
+ export CFLAGS="${CFLAGS/-Os/-O3}" # gotta go fast
+
+ ./configure \
+ --target="$CTARGET" \
+ --build="$CBUILD" \
+ --host="$CHOST" \
+ --prefix=/usr
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+_tests() {
+ pkgdesc="$pkgdesc (tests)"
+ amove usr/share
+}
+
+sha512sums="
+3285cb0a3987ff730d9f9b25419a98201f399daf28444179ba8902211ddda87adcc7189f5b94f062d0648039a1b6217b80c8db482887d7dc8552b20459eff861 cliquer-1.22.tar.gz
+"
diff --git a/testing/cln/APKBUILD b/testing/cln/APKBUILD
index 925e8741d8b..c492952dbbc 100755..100644
--- a/testing/cln/APKBUILD
+++ b/testing/cln/APKBUILD
@@ -1,50 +1,43 @@
# Contributor: Alex Yam <alex@alexyam.com>
# Maintainer: Alex Yam <alex@alexyam.com>
pkgname=cln
-pkgver=0_git20211105
-_gitrev=280cc69e7235f176669202a319dd493b234a5b70
+pkgver=1.3.7
pkgrel=0
pkgdesc="C++ class library for numbers"
url="https://www.ginac.de/CLN/"
-# armv7, armhf: error ../src/libcln.so.6.0.6: undefined reference to '_divu_16_rest' etc
-arch="all !armv7 !armhf"
+arch="all"
license="GPL-2.0-or-later"
-makedepends="cmake gmp-dev"
+makedepends="gmp-dev"
subpackages="$pkgname-dev $pkgname-doc"
-source="$pkgname-$_gitrev.tar.gz::https://www.ginac.de/CLN/cln.git/?p=cln.git;a=snapshot;h=$_gitrev;sf=tgz"
-builddir="$srcdir/$pkgname-${_gitrev:0:7}"
-
-# asm routines have problems on arm, hppa and sparc
-case $CARCH in
- arm*) _no_asm=-DNO_ASM;;
-esac
+source="https://www.ginac.de/CLN/cln-$pkgver.tar.bz2"
build() {
- export CPPFLAGS="$CPPFLAGS $_no_asm"
- # "-B build" leads to error: build/conftest.s cannot be read
- cmake \
- -DCMAKE_BUILD_TYPE=None \
- -DCMAKE_PREFIX_PATH=/usr \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DCLN_USE_GMP=ON \
- .
- cmake --build .
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var \
+ --with-gmp
+ make
}
check() {
- cmake --build . --target check
+ make check
}
package() {
- DESTDIR="$pkgdir" cmake --build . --target install
- cd ./doc && mkdir -pv $pkgdir/usr/share/doc/cln/examples && \
- cp -rpv ./cln.texi ./polynomial ./ratseries $pkgdir/usr/share/doc/cln/
- cd ../examples && rm -rv ./C* ./Make* ./cmake* \
- contfrac e fibonacci legendre lucaslehmer nextprime perfnum pi && \
- cp -rpv ./* $pkgdir/usr/share/doc/cln/examples
+ make DESTDIR="$pkgdir" install
+
+ cd ./doc && mkdir -pv "$pkgdir"/usr/share/doc/cln/examples && \
+ cp -rpv ./cln.texi "$pkgdir"/usr/share/doc/cln/
+ cd ../examples && rm -rv ./Make* \
+ contfrac e fibonacci legendre lucaslehmer nextprime perfnum pi \
+ contfrac.o e.o fibonacci.o legendre.o lucaslehmer.o nextprime.o perfnum.o pi.o && \
+ cp -rpv ./* "$pkgdir"/usr/share/doc/cln/examples
}
sha512sums="
-368f33746ef06005d30756ecb4b4e775485be624cc6cb3ff83ff8f887f3ad5d9d994319c06083085ce4831e68960bd0d1ff4df0fd38a9d4c28067acc50c80bde cln-280cc69e7235f176669202a319dd493b234a5b70.tar.gz
+39abfae41504030cce16d0ed0547eafaa9a819f1225289d262cdd8e50d9af5bdb695d6e5a7f4b3577af29bedaf2e31700655b07a624b4232aecf8d795f697a1b cln-1.3.7.tar.bz2
"
diff --git a/testing/cloud-hypervisor/APKBUILD b/testing/cloud-hypervisor/APKBUILD
new file mode 100644
index 00000000000..9d3032c0729
--- /dev/null
+++ b/testing/cloud-hypervisor/APKBUILD
@@ -0,0 +1,37 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=cloud-hypervisor
+pkgver=38.0
+pkgrel=0
+pkgdesc="Virtual machine monitor for modern cloud workloads"
+url="https://www.cloudhypervisor.org/"
+# Only x86_64 and aarch64 are officially supported
+arch="x86_64 aarch64"
+license="Apache-2.0 AND BSD-3-Clause"
+makedepends="cargo libcap-utils cargo-auditable"
+source="https://github.com/cloud-hypervisor/cloud-hypervisor/releases/download/v$pkgver/cloud-hypervisor-v$pkgver.tar.xz"
+builddir="$srcdir/$pkgname-v$pkgver"
+# tests require CAP_NET_ADMIN capability
+# setcap cap_net_admin
+options="!check setcap"
+
+prepare() {
+ default_prepare
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+package() {
+ install -Dm755 -t "$pkgdir"/usr/bin/ \
+ target/release/cloud-hypervisor \
+ target/release/ch-remote
+
+ # Needs NET_ADMIN capabilities to set TAP interfaces up on the host
+ setcap cap_net_admin=+ep "$pkgdir"/usr/bin/cloud-hypervisor
+}
+
+sha512sums="
+5ca0bcf6394957381fb2345bb345501926b7a9b23ea57a9ab3d78db6f32cef9bf494fc909b06d8687dfe8ca2f43fccd3eebb9470136b87eb0a3c62a233e61b65 cloud-hypervisor-v38.0.tar.xz
+"
diff --git a/testing/cloudflared/APKBUILD b/testing/cloudflared/APKBUILD
index a484447e54d..c092b3c7afb 100644
--- a/testing/cloudflared/APKBUILD
+++ b/testing/cloudflared/APKBUILD
@@ -1,19 +1,40 @@
# Contributor: Piper McCorkle <piper@cloudflare.com>
# Maintainer: Piper McCorkle <piper@cloudflare.com>
pkgname=cloudflared
-pkgver=2022.3.1
-pkgrel=3
+pkgver=2023.7.3
+pkgrel=4
pkgdesc="Cloudflare Tunnel client"
url="https://github.com/cloudflare/cloudflared"
-arch="aarch64 x86 x86_64"
+# TODO: Doesn't compile with Go 1.21.
+# See: https://gitlab.alpinelinux.org/alpine/aports/-/issues/15252
+#arch="aarch64 x86 x86_64"
+arch=""
license="Apache-2.0"
makedepends="go gettext"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/cloudflare/cloudflared/archive/refs/tags/$pkgver.tar.gz"
+subpackages="$pkgname-doc $pkgname-openrc"
+pkgusers="$pkgname"
+pkggroups="$pkgname"
+install="$pkgname.pre-install"
+source="$pkgname-$pkgver.tar.gz::https://github.com/cloudflare/cloudflared/archive/refs/tags/$pkgver.tar.gz
+ goflags.patch
+ config.yml
+ $pkgname.initd
+ $pkgname.confd
+ "
+options="!check" # require privileged icmp sockets
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+prepare() {
+ default_prepare
+ go mod vendor
+}
build() {
make cloudflared
- DATE="\"$(date -u '+%Y-%m-%d-%H%M UTC')\"" VERSION="$pkgver" envsubst < cloudflared_man_template > cloudflared.1
+ DATE="2023" VERSION="$pkgver" envsubst < cloudflared_man_template > cloudflared.1
}
check() {
@@ -22,14 +43,22 @@ check() {
if [ $_goarch = "amd64" ] || [ $_goarch = "ppc64le" ] || [ $_goarch = "arm64" ]; then
_race=-race
fi
- go test -v -mod=vendor -buildmode=default $_race ./...
+ go test -mod=vendor -buildmode=default $_race ./...
}
package() {
install -D -m755 ./cloudflared "$pkgdir"/usr/bin/cloudflared
install -D -m644 ./cloudflared.1 "$pkgdir"/usr/share/man/man1/cloudflared.1
+
+ install -D -m755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
+ install -D -m755 "$srcdir"/$pkgname.confd "$pkgdir"/etc/conf.d/$pkgname
+ install -D -m644 "$srcdir"/config.yml "$pkgdir"/etc/$pkgname/config.yml
}
sha512sums="
-14c75b060cc5fbac7e56416bfb38bb90df4041903e220853e8aa3fffcbccbad65d9bdba4cdd8c16f185159298651a1932cca978bc514c7c390f3c40ebcce334e cloudflared-2022.3.1.tar.gz
+45833cfd35ad8458882008dc73878948955584a1ce26ff63126b7045d5807d67d275c56ac5d39695f42839daf948a78c894c28f692183e92674d43d9254d7534 cloudflared-2023.7.3.tar.gz
+deb54b26ac89da74f6d1016deebdd2a15e302d49c1c2b83787b905e70b00250ddf9568d078c4d1d7b53bba9ab1aa182fbcadca2376a7008f07ce4502a4c6f91c goflags.patch
+01f43af92c2c804f6b31189b78f81a76f078179065bebf12118a8bb3ba22e1c8042ef760f24acdf1356bbe5235df7d2a00d55a158e5fec5063c5d2d6abcd7dee config.yml
+76b684ef4d0267e8546a21cc60239ef94cbb5fd6b3c0f4fbf4e843eb6e8b56943d3200a160e1749b228306e5649e6a1fa90a58f14fb68c5794f2c760a6c14506 cloudflared.initd
+47c71a328d49f3d35dd6e0268e1d734cd21ecc84b24459f77a46df7632f9a8fdb7817cf49187f965c13c94017e4454897caa99ca12b41037dfe0455bb156ef09 cloudflared.confd
"
diff --git a/testing/cloudflared/cloudflared.confd b/testing/cloudflared/cloudflared.confd
new file mode 100644
index 00000000000..d4cc428bdcd
--- /dev/null
+++ b/testing/cloudflared/cloudflared.confd
@@ -0,0 +1 @@
+command_args="tunnel --config /etc/cloudflared/config.yml run"
diff --git a/testing/cloudflared/cloudflared.initd b/testing/cloudflared/cloudflared.initd
new file mode 100644
index 00000000000..8f425bd0602
--- /dev/null
+++ b/testing/cloudflared/cloudflared.initd
@@ -0,0 +1,12 @@
+#!/sbin/openrc-run
+
+name=cloudflared
+command=/usr/bin/cloudflared
+command_user=cloudflared:cloudflared
+command_background="yes"
+pidfile=/run/${RC_SVCNAME}.pid
+
+depend() {
+ need net
+ after firewall
+}
diff --git a/testing/cloudflared/cloudflared.pre-install b/testing/cloudflared/cloudflared.pre-install
new file mode 100644
index 00000000000..71fbf728974
--- /dev/null
+++ b/testing/cloudflared/cloudflared.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S cloudflared 2>/dev/null
+adduser -S -D -s /sbin/nologin -G cloudflared -g cloudflared cloudflared 2>/dev/null
+
+exit 0
diff --git a/testing/cloudflared/config.yml b/testing/cloudflared/config.yml
new file mode 100644
index 00000000000..14ca83280be
--- /dev/null
+++ b/testing/cloudflared/config.yml
@@ -0,0 +1,3 @@
+# cloudflared's configuration file
+# cloudflare tunnel see:
+# https://developers.cloudflare.com/cloudflare-one/connections/connect-apps/install-and-setup/tunnel-guide/local/#4-create-a-configuration-file
diff --git a/testing/cloudflared/goflags.patch b/testing/cloudflared/goflags.patch
new file mode 100644
index 00000000000..89891b944b0
--- /dev/null
+++ b/testing/cloudflared/goflags.patch
@@ -0,0 +1,13 @@
+diff --git a/Makefile b/Makefile
+index 06fa005..6146471 100644
+--- a/Makefile
++++ b/Makefile
+@@ -126,7 +126,7 @@ ifeq ($(FIPS), true)
+ $(info Building cloudflared with go-fips)
+ cp -f fips/fips.go.linux-amd64 cmd/cloudflared/fips.go
+ endif
+- GOOS=$(TARGET_OS) GOARCH=$(TARGET_ARCH) $(ARM_COMMAND) go build -v -mod=vendor $(GO_BUILD_TAGS) $(LDFLAGS) $(IMPORT_PATH)/cmd/cloudflared
++ GOOS=$(TARGET_OS) GOARCH=$(TARGET_ARCH) $(ARM_COMMAND) go build -v $(GOFLAGS) $(GO_BUILD_TAGS) $(LDFLAGS) $(IMPORT_PATH)/cmd/cloudflared
+ ifeq ($(FIPS), true)
+ rm -f cmd/cloudflared/fips.go
+ ./check-fips.sh cloudflared
diff --git a/testing/cloudfoundry-cli/APKBUILD b/testing/cloudfoundry-cli/APKBUILD
index 1a40b918a91..ffe50cba32b 100644
--- a/testing/cloudfoundry-cli/APKBUILD
+++ b/testing/cloudfoundry-cli/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Thomas Boerger <thomas@webhippie.de>
# Maintainer: Thomas Boerger <thomas@webhippie.de>
pkgname=cloudfoundry-cli
-pkgver=7.2.0
-pkgrel=6
+pkgver=8.7.9
+pkgrel=1
pkgdesc="A CLI for Cloud Foundry written in Go"
url="https://github.com/cloudfoundry/cli"
arch="all !s390x !armv7"
@@ -10,12 +10,14 @@ license="Apache-2.0"
makedepends="go bash"
checkdepends="ginkgo"
options="!check" # some tests fail
-source="$pkgname-$pkgver.tar.gz::https://github.com/cloudfoundry/cli/archive/v$pkgver.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/cloudfoundry/cli/archive/v$pkgver.tar.gz
+ fix-cgo.patch
+ "
builddir="$srcdir/cli-$pkgver"
-export GOPATH="$srcdir/go"
-export GOCACHE="$srcdir/go-build"
-export GOTEMPDIR="$srcdir/go"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
export GOFLAGS="$GOFLAGS -mod=mod -modcacherw"
@@ -33,5 +35,6 @@ package() {
}
sha512sums="
-9f194460c6ae00666367e60d6053c916ea162946dd198527eddc8dad6c94e0f85816d1000aed9cea825e13674df7c68e90d12be948e30351db4b3b28052bf29d cloudfoundry-cli-7.2.0.tar.gz
+211181ebfbe000ff90e5548ed4881d8d52fb3303438ca6b77b0d9ebc9300ed73f918cb87c9133ad01611c69efab425f5a57a51a8207c5db036d57fa20c8ebcc0 cloudfoundry-cli-8.7.9.tar.gz
+da6f16ef0b5aebb12bcac1272ce731debf25c8533df15074d00beff3910fc0c0fe9e3bb1e817333c585fc71844d4b22e7addc1b08a8b131f9ef11fcc5bbe5e1b fix-cgo.patch
"
diff --git a/testing/cloudfoundry-cli/fix-cgo.patch b/testing/cloudfoundry-cli/fix-cgo.patch
new file mode 100644
index 00000000000..3cd9f1eff9c
--- /dev/null
+++ b/testing/cloudfoundry-cli/fix-cgo.patch
@@ -0,0 +1,30 @@
+--- a/Makefile
++++ b/Makefile
+@@ -156,23 +156,23 @@
+ go build -ldflags "$(LD_FLAGS)" -o out/cf .
+ else
+ out/cf: $(GOSRC)
+- CGO_ENABLED=0 go build \
++ go build \
+ $(REQUIRED_FOR_STATIC_BINARY) \
+ -ldflags "$(LD_FLAGS_LINUX)" -o out/cf .
+ endif
+
+ out/cf-cli_linux_i686: $(GOSRC)
+- CGO_ENABLED=0 GOARCH=386 GOOS=linux go build \
++ GOARCH=386 GOOS=linux go build \
+ $(REQUIRED_FOR_STATIC_BINARY) \
+ -ldflags "$(LD_FLAGS_LINUX)" -o out/cf-cli_linux_i686 .
+
+ out/cf-cli_linux_x86-64: $(GOSRC)
+- CGO_ENABLED=0 GOARCH=amd64 GOOS=linux go build \
++ GOARCH=amd64 GOOS=linux go build \
+ $(REQUIRED_FOR_STATIC_BINARY) \
+ -ldflags "$(LD_FLAGS_LINUX)" -o out/cf-cli_linux_x86-64 .
+
+ out/cf-cli_linux_arm64: $(GOSRC)
+- CGO_ENABLED=0 GOARCH=arm64 GOOS=linux go build \
++ GOARCH=arm64 GOOS=linux go build \
+ $(REQUIRED_FOR_STATIC_BINARY) \
+ -ldflags "$(LD_FLAGS_LINUX)" -o out/cf-cli_linux_arm64 .
+
diff --git a/testing/cluster-glue/APKBUILD b/testing/cluster-glue/APKBUILD
index d0da5d1f4fa..7e49da60c02 100644
--- a/testing/cluster-glue/APKBUILD
+++ b/testing/cluster-glue/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer:
pkgname=cluster-glue
pkgver=1.0.12
-pkgrel=3
+pkgrel=5
pkgdesc="Reusable cluster components"
url="https://clusterlabs.org"
arch="all"
@@ -24,7 +24,6 @@ prepare() {
default_prepare
./autogen.sh
- update_config_guess
}
build() {
diff --git a/testing/cm256cc/APKBUILD b/testing/cm256cc/APKBUILD
new file mode 100644
index 00000000000..62f4626e88b
--- /dev/null
+++ b/testing/cm256cc/APKBUILD
@@ -0,0 +1,46 @@
+# Contributor: Leon ROUX <leon.roux@federate.us>
+# Maintainer: Leon ROUX <leon.roux@federate.us>
+pkgname=cm256cc
+pkgver=1.1.0
+pkgrel=0
+pkgdesc="Fast GF(256) Cauchy MDS Block Erasure Codec library in C++"
+url="https://github.com/f4exb/cm256cc"
+license="GPL-3.0-only AND MIT AND BSD-3-Clause"
+# requires ssse3/neon and does not build anything otherwise
+arch="aarch64 x86_64"
+makedepends="
+ cmake
+ samurai
+ "
+subpackages="$pkgname-dev"
+checkdepends="xvfb-run"
+source="$pkgname-$pkgver.tar.gz::https://github.com/f4exb/cm256cc/archive/refs/tags/v$pkgver.tar.gz"
+
+build() {
+ CFLAGS="$CFLAGS -flto=auto" \
+ CXXFLAGS="$CXXFLAGS -flto=auto" \
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DENABLE_DISTRIBUTION=ON \
+ -DCMAKE_SKIP_INSTALL_RPATH=ON \
+ -DBUILD_TOOLS="$(want_check && echo ON || echo OFF)"
+ cmake --build build
+}
+
+check() {
+ ./build/cm256_test
+ ./build/cm256_rx
+ ./build/cm256_tx
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+ # these are just unit tests
+ # shellcheck disable=2115
+ rm -rfv "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+2bd02675bb2c1c2b422c626c92bd36a0c0fc7a46a0512475424b1bc781d816137eadc52f33f11e100cdc69a7a595f3153fbed0020d6038916e305a2923700959 cm256cc-1.1.0.tar.gz
+"
diff --git a/testing/cmusfm/APKBUILD b/testing/cmusfm/APKBUILD
index 632c5146158..54949135a3b 100644
--- a/testing/cmusfm/APKBUILD
+++ b/testing/cmusfm/APKBUILD
@@ -1,15 +1,14 @@
# Contributor: Cássio Ãvila <cassioavila@yandex.com>
# Maintainer: Cássio Ãvila <cassioavila@yandex.com>
pkgname=cmusfm
-pkgver=0.4.1
+pkgver=0.5.0
pkgrel=0
pkgdesc="Last.fm standalone scrobbler for the cmus music player"
url="https://github.com/Arkq/cmusfm"
-arch="all"
+arch="all !s390x" # 1 test fails
license="GPL-3.0-or-later"
depends="cmus"
makedepends="autoconf automake curl-dev"
-options="!check"
source="$pkgname-$pkgver.tar.gz::https://github.com/Arkq/cmusfm/archive/refs/tags/v$pkgver.tar.gz"
prepare() {
@@ -22,10 +21,14 @@ build() {
make
}
+check() {
+ make check
+}
+
package() {
make DESTDIR="$pkgdir" install
}
sha512sums="
-994599675822de5f809b3eedc423c37afe24e88df29fe4474d1834bf1e9573464d2bdbb084181db1d6c3bc0541891ccbb4514afa066c034e39035192ebc95211 cmusfm-0.4.1.tar.gz
+497ba0c9f776b8d2f11934a5dbc2ea4b4971511f3c3c4df602d1742ba5fcaf4c0f91d5f8a1ebe849e184718e7090fcf146560445398e85f97722bb62c0976fd3 cmusfm-0.5.0.tar.gz
"
diff --git a/testing/coccinelle/APKBUILD b/testing/coccinelle/APKBUILD
new file mode 100644
index 00000000000..202a1941d1d
--- /dev/null
+++ b/testing/coccinelle/APKBUILD
@@ -0,0 +1,61 @@
+# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
+
+pkgname=coccinelle
+pkgver=1.1.1
+pkgrel=2
+pkgdesc="provides the spatch matching and transformation engine implementing semantic patch language"
+url="https://coccinelle.gitlabpages.inria.fr/website/"
+makedepends="
+ autoconf
+ automake
+ ocaml
+ ocaml-findlib
+ ocaml-num
+ ocaml-ocamldoc
+ "
+depends="
+ pcre
+ python3
+ "
+subpackages="
+ $pkgname-doc
+ $pkgname-bash-completion
+ "
+# riscv64, loongarch64: ocaml
+arch="all !riscv64 !loongarch64"
+license="GPL-2.0-only"
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/coccinelle/coccinelle/archive/$pkgver.tar.gz
+
+ unit-test-score.bin
+ "
+
+build() {
+ ./autogen
+ ./configure \
+ --prefix=/usr \
+ --enable-release=yes \
+ --with-python=/usr/bin/python3
+
+ # parallel build broken, but at least coccinelle is relatively small
+ make -j 1
+}
+
+package() {
+ make DESTDIR="$pkgdir" MANDIR="/usr/share/man" install
+}
+
+check() {
+ # coccinelle runs unit tests and compares results with a score file to
+ # track new regressions. We provide it as unit-test-score.bin new to the
+ # APKBUILD.
+ ./spatch.opt \
+ --testall \
+ --no-update-score-file \
+ --expected-score-file "$srcdir"/unit-test-score.bin
+}
+
+sha512sums="
+f935aef406d3356a8e3d08fa7dacd6dd8d49aeb3f00668b775a63881b8d8a259acbbaa21348cb32a8a1cc5cf13dcf10d7e871de0f7c0abb6e45eac24e892df98 coccinelle-1.1.1.tar.gz
+fbd6b52cbea7367f1dc103b9a1d6e7c0bb352952c6cc9436c484c1eb71d0fa605a67c51641be9dc3c72511f8efb78c2d937d4fae1986c3731905df2625c522d5 unit-test-score.bin
+"
diff --git a/testing/coccinelle/unit-test-score.bin b/testing/coccinelle/unit-test-score.bin
new file mode 100644
index 00000000000..37f06af715a
--- /dev/null
+++ b/testing/coccinelle/unit-test-score.bin
Binary files differ
diff --git a/testing/cocogitto/APKBUILD b/testing/cocogitto/APKBUILD
new file mode 100644
index 00000000000..8863f207acd
--- /dev/null
+++ b/testing/cocogitto/APKBUILD
@@ -0,0 +1,64 @@
+# Contributor: Thomas Böhler <witcher@wiredspace.de>
+# Maintainer: Thomas Böhler <witcher@wiredspace.de>
+pkgname=cocogitto
+pkgver=6.1.0
+pkgrel=0
+pkgdesc="The Conventional Commits toolbox"
+url="https://docs.cocogitto.io/"
+arch="all"
+license="MIT"
+makedepends="cargo cargo-auditable"
+subpackages="
+ $pkgname-doc
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
+ "
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/cocogitto/cocogitto/archive/refs/tags/$pkgver.tar.gz
+ "
+options="!check" # tests relies on, among other things, specific tags
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release
+
+ local compgen="target/release/cog generate-completions"
+
+ $compgen bash > cog.bash
+ $compgen fish > cog.fish
+ $compgen zsh > cog.zsh
+
+ mkdir man
+ target/release/cog generate-manpages man
+}
+
+package() {
+ install -Dm755 -t "$pkgdir"/usr/bin target/release/cog
+
+ install -Dm644 -t "$pkgdir"/usr/share/doc/"$pkgname" CHANGELOG.md
+ install -Dm644 -t "$pkgdir"/usr/share/doc/"$pkgname" README.md
+
+ install -Dm644 -t "$pkgdir"/usr/share/licenses/"$pkgname" LICENSE
+
+ for i in man/*.1; do
+ gzip "$i"
+ install -Dm644 -t "$pkgdir"/usr/share/man/man1 "$i".gz
+ done
+
+ install -Dm644 cog.bash \
+ "$pkgdir"/usr/share/bash-completion/completions/cog
+ install -Dm644 cog.fish \
+ "$pkgdir"/usr/share/fish/vendor_completions.d/cog.fish
+ install -Dm644 cog.bash \
+ "$pkgdir"/usr/share/zsh/site-functions/_cog
+}
+
+sha512sums="
+362d5fb3d976353bdd1b1bdae04c261865e7e5da44af68f591ee974c83aab54b827db6b50f1aa16ef362201fa04e595b8ffae9a6743b7505a3511fef6b4242f1 cocogitto-6.1.0.tar.gz
+"
diff --git a/testing/code-oss/APKBUILD b/testing/code-oss/APKBUILD
new file mode 100644
index 00000000000..9b0ba5009ea
--- /dev/null
+++ b/testing/code-oss/APKBUILD
@@ -0,0 +1,160 @@
+# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
+pkgname=code-oss
+pkgver=1.88.0
+pkgrel=0
+# get this from vscodium
+_productjson=2faafce844f574e1db0a27def376bacad2a15023
+pkgdesc="Visual Studio Code (OSS, with VSX)"
+url="https://github.com/microsoft/vscode"
+arch="aarch64 x86_64" # electron
+license="MIT"
+depends="electron ripgrep"
+makedepends="
+ electron-dev
+ imagemagick
+ jq
+ krb5-dev
+ libsecret-dev
+ libxkbfile-dev
+ nodejs18
+ npm
+ pngquant
+ python3
+ yarn
+ "
+subpackages="
+ $pkgname-bash-completion
+ $pkgname-zsh-completion
+ "
+install="$pkgname.post-install"
+source="$pkgname-$pkgver.tar.gz::https://github.com/microsoft/vscode/archive/refs/tags/$pkgver.tar.gz
+ product-$_productjson.json::https://github.com/VSCodium/vscodium/raw/$_productjson/product.json
+ launcher
+ enable-extensions.patch
+ no-git.patch
+ no-res.patch.noauto
+ electron21.patch
+ webpack-hash.patch.noauto
+ system-electron.patch.noauto
+ no-source-maps.patch
+ "
+builddir="$srcdir/vscode-$pkgver"
+options="!check net" # no tests (that make sense to run..)
+
+export ELECTRON_SKIP_BINARY_DOWNLOAD=1
+export PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD=1
+export npm_config_nodedir=/usr/include/electron/node_headers
+export npm_config_build_from_source=true
+
+prepare() {
+ default_prepare
+
+ sed -i '/^disturl\b/d' .yarnrc
+ echo 'ignore-engines "true"' >> .yarnrc
+
+ # block husky
+ git init .
+
+ # electron 20+ workaround for bad gyp usage
+ # XXX: LARGEFILE64 fixme
+ export CFLAGS="$CFLAGS -D_LARGEFILE64_SOURCE"
+ export CPPFLAGS="$CPPFLAGS -D_LARGEFILE64_SOURCE"
+ export CXXFLAGS="$CXXFLAGS -std=c++17 -D_LARGEFILE64_SOURCE"
+
+ yarn install --cache-folder "$srcdir" --frozen-lockfile
+
+ patch -Np1 < "$srcdir"/webpack-hash.patch.noauto
+ patch -Np1 < "$srcdir"/no-res.patch.noauto
+ patch -Np1 < "$srcdir"/system-electron.patch.noauto
+
+ # patch out telemetry
+ # backported from https://github.com/VSCodium/vscodium/blob/master/undo_telemetry.sh
+ rg --no-ignore -l "\.data\.microsoft\.com" . \
+ | grep -v "\.map\$" | xargs -t -n 1 -P ${JOBS:-2} sed -i -E "s|//[^/]+\.data\.microsoft\.com|//0\.0\.0\.0|g"
+
+ # merge the product.json from the repo with one from vscodium repo
+ # this fixes some extensions, including python
+ cp product.json original_product.json
+ jq -s '.[0] * .[1]' original_product.json "$srcdir"/product-$_productjson.json > product.json
+}
+
+build() {
+ node18 --max_old_space_size=4096 ./node_modules/.bin/gulp vscode-linux-x64-min
+
+ cd resources/linux
+
+ mv code.png code-1024-x.png
+ local size
+ for size in 16 24 32 48 64 128 192 256 512; do
+ convert code-1024-x.png -resize ${size}x$size code-$size-x.png
+ < code-$size-x.png pngquant --speed 1 - > code-$size.png
+ done
+ < code-1024-x.png pngquant --speed 1 - > code-1024.png
+}
+
+package() {
+ mkdir -p "$pkgdir"/usr/share/applications
+ sed -e "s|@@NAME_LONG@@|Code - OSS|g" \
+ -e "s|@@NAME_SHORT@@|Code - OSS|g" \
+ -e "s|@@NAME@@|code-oss|g" \
+ -e "s|@@EXEC@@|/usr/bin/code-oss|g" \
+ -e "s|@@ICON@@|com.visualstudio.code.oss|g" \
+ -e "s|@@URLPROTOCOL@@|code-oss|g" \
+ resources/linux/code.desktop > "$pkgdir"/usr/share/applications/code-oss.desktop
+ sed -e "s|@@NAME_LONG@@|Code - OSS|g" \
+ -e "s|@@NAME_SHORT@@|Code - OSS|g" \
+ -e "s|@@NAME@@|code-oss|g" \
+ -e "s|@@EXEC@@|/usr/bin/code-oss|g" \
+ -e "s|@@ICON@@|com.visualstudio.code.oss|g" \
+ -e "s|@@URLPROTOCOL@@|code-oss|g" \
+ resources/linux/code-url-handler.desktop > "$pkgdir"/usr/share/applications/code-oss-url-handler.desktop
+
+ for size in 16 24 32 48 64 128 192 256 512 1024; do
+ install -Dm644 resources/linux/code-$size.png \
+ "$pkgdir"/usr/share/icons/hicolor/${size}x$size/apps/com.visualstudio.code.oss.png
+ done
+
+ mkdir -p "$pkgdir"/usr/share/metainfo
+ sed -e "s|@@NAME_LONG@@|Code - OSS|g" \
+ -e "s|@@NAME@@|code-oss|g" \
+ -e "s|@@LICENSE@@|MIT|g" \
+ resources/linux/code.appdata.xml > "$pkgdir"/usr/share/metainfo/code-oss.appdata.xml
+
+ mkdir -p "$pkgdir"/usr/share/mime/packages
+ sed -e "s|@@NAME_LONG@@|Code - OSS|g" \
+ -e "s|@@NAME@@|code-oss|g" \
+ resources/linux/code-workspace.xml > "$pkgdir"/usr/share/mime/packages/code-oss-workspace.xml
+
+ mkdir -p "$pkgdir"/usr/share/bash-completion/completions
+ sed -e "s|@@APPNAME@@|code-oss|g" \
+ resources/completions/bash/code > "$pkgdir"/usr/share/bash-completion/completions/code-oss
+
+ mkdir -p "$pkgdir"/usr/share/zsh/site-functions
+ sed -e "s|@@APPNAME@@|code-oss|g" \
+ resources/completions/zsh/_code > "$pkgdir"/usr/share/zsh/site-functions/_code-oss
+
+ mkdir -p "$pkgdir"/usr/lib/code-oss/resources
+ cp -a ../VSCode-linux-x64/resources/app "$pkgdir"/usr/lib/code-oss/resources/
+
+ # disable update server
+ sed -i "/updateUrl/d" "$pkgdir"/usr/lib/code-oss/resources/app/product.json
+
+ # link to system rg
+ ln -sfv /usr/bin/rg \
+ "$pkgdir"/usr/lib/code-oss/resources/app/node_modules.asar.unpacked/@vscode/ripgrep/bin/rg
+
+ install -Dm755 "$srcdir"/launcher "$pkgdir"/usr/bin/code-oss
+}
+
+sha512sums="
+62617506f0b28d75329eed12041ad81813d14468d42686f4efab0bdf5a9c1c72ca8f094d43992dbf1a4319c112eddfb96ed0a6455d5c23f24cd4dd3dfeb6c012 code-oss-1.88.0.tar.gz
+c46cdcad59d796ea91492ee763897baaf36f7329126d6fd8f6bb782aaefeeba9ddf79c877ab8c22ad1f2194fee5b57b998b81ff994f714d36fc0759da8905ce2 product-2faafce844f574e1db0a27def376bacad2a15023.json
+cca94a1762eec922b6fc4a93301087588455a82ea0e19733cb1067deec1fc64e05d466613860820d680dd8cf16e2aca30bc11afc84a315de1a9c2cb12854cbea launcher
+9f36c7fa6f0fd6a516f8e22c47f53013337985e59085bf1ea70165d42a513a92aa2a7a99ef0715e752c7190fd39ba703d405838e61bcfb60cabe47c421781eb4 enable-extensions.patch
+4f10b14aaab71e69652662dea0dd5ba00d996282bc864743210185d93a9b7c54c71942fe1e7cd630abd914e3c770eca6c2110c13fb6a8c5e728c5172d1d0cd9f no-git.patch
+48e46bd2ec1490e456a9227c4d74eae5e5c6a7e48a98f8f463370bf60eb7fcb140337e3e02577dea1eabbc48174e2e3b31a4717a945d5dc21ccdbfd3a9807349 no-res.patch.noauto
+050bcf858362836ad71ae204a50ce61eb1d512ae29778bff4f1f162a8650892e4a9d44295319d8142126a49a8fa1e6b306429c74a7448077051d479f04c19a93 electron21.patch
+0939ed0e39883b27ac13cdde2e1dbce506043997b6b52610d1f75560db58bac646d6f8fd6b909e8ad595aab6ed9f3777206e33d7fa5a58e0a7acc4c530b5d6b0 webpack-hash.patch.noauto
+7808076aff7037369c9dd40ee07374311a954be513ae08b4c152ff04cbd6fc20ab9e9799e0b62da91135084f98dc55fbe0b593f4a263c30dd12fd88d680f3db0 system-electron.patch.noauto
+20310187474b13bb0d4a7d39cdd93cdb005bf241110da0b02c4fa0927363fe8ea566dd259ce767ceffab771806f3365c209e401f1a3435361582bbedb525c5c7 no-source-maps.patch
+"
diff --git a/testing/code-oss/code-oss.post-install b/testing/code-oss/code-oss.post-install
new file mode 100755
index 00000000000..2579b25376c
--- /dev/null
+++ b/testing/code-oss/code-oss.post-install
@@ -0,0 +1,10 @@
+#!/bin/sh
+
+cat <<EOF
+*
+* This package uses the OpenVSX registry for extensions, not the regular vscode
+* registry. As such, some things may be missing or out of date, and this is not
+* a bug.
+* https://open-vsx.org/
+*
+EOF
diff --git a/testing/code-oss/electron21.patch b/testing/code-oss/electron21.patch
new file mode 100644
index 00000000000..bd66a8cc823
--- /dev/null
+++ b/testing/code-oss/electron21.patch
@@ -0,0 +1,125 @@
+web-tree-sitter: https://github.com/tree-sitter/tree-sitter/issues/2338
+diff --git a/package.json b/package.json
+index 00d5e86..eda82d2 100644
+--- a/package.json
++++ b/package.json
+@@ -219,6 +219,10 @@
+ "xml2js": "^0.5.0",
+ "yaserver": "^0.4.0"
+ },
++ "resolutions": {
++ "nan": "^2.18.0",
++ "node-addon-api": "^7.1.0"
++ },
+ "repository": {
+ "type": "git",
+ "url": "https://github.com/microsoft/vscode.git"
+diff --git a/yarn.lock b/yarn.lock
+index be4114f..20d1ed1 100644
+--- a/yarn.lock
++++ b/yarn.lock
+@@ -6778,10 +6778,10 @@
+ resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab"
+ integrity sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=
+
+-nan@^2.12.1:
+- version "2.14.2"
+- resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.2.tgz#f5376400695168f4cc694ac9393d0c9585eeea19"
+- integrity sha512-M2ufzIiINKCuDfBSAUr1vWQ+vuVcA9kqx8JJUsbQi6yf1uGRyb7HfpdfUr5qLXf3B/t8dPvcjhKMmlfnP47EzQ==
++nan@^2.12.1, nan@^2.18.0:
++ version "2.18.0"
++ resolved "https://registry.yarnpkg.com/nan/-/nan-2.18.0.tgz#26a6faae7ffbeb293a39660e88a76b82e30b7554"
++ integrity sha512-W7tfG7vMOGtD30sHoZSSc/JVYiyDPEyQVso/Zz+/uQd0B0L46gtC+pHha5FFMRpil6fm/AoEcRWyOVi4+E/f8w==
+
+ nanoid@3.3.3:
+ version "3.3.3"
+@@ -6883,35 +6883,10 @@
+ dependencies:
+ semver "^7.3.5"
+
+-node-addon-api@7.1.0, node-addon-api@^7.1.0:
++node-addon-api@7.1.0, node-addon-api@^3.0.2, node-addon-api@^3.2.1, node-addon-api@^4.2.0, node-addon-api@^4.3.0, node-addon-api@^6.0.0, node-addon-api@^7.1.0:
+ version "7.1.0"
+ resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-7.1.0.tgz#71f609369379c08e251c558527a107107b5e0fdb"
+ integrity sha512-mNcltoe1R8o7STTegSOHdnJNN7s5EUvhoS7ShnTHDyOSd+8H+UdWODq6qSv67PjC8Zc5JRT8+oLAMCr0SIXw7g==
+-
+-node-addon-api@^3.0.2:
+- version "3.1.0"
+- resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-3.1.0.tgz#98b21931557466c6729e51cb77cd39c965f42239"
+- integrity sha512-flmrDNB06LIl5lywUz7YlNGZH/5p0M7W28k8hzd9Lshtdh1wshD2Y+U4h9LD6KObOy1f+fEVdgprPrEymjM5uw==
+-
+-node-addon-api@^3.2.1:
+- version "3.2.1"
+- resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-3.2.1.tgz#81325e0a2117789c0128dab65e7e38f07ceba161"
+- integrity sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A==
+-
+-node-addon-api@^4.2.0:
+- version "4.2.0"
+- resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-4.2.0.tgz#117cbb5a959dff0992e1c586ae0393573e4d2a87"
+- integrity sha512-eazsqzwG2lskuzBqCGPi7Ac2UgOoMz8JVOXVhTvvPDYhthvNpefx8jWD8Np7Gv+2Sz0FlPWZk0nJV0z598Wn8Q==
+-
+-node-addon-api@^4.3.0:
+- version "4.3.0"
+- resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-4.3.0.tgz#52a1a0b475193e0928e98e0426a0d1254782b77f"
+- integrity sha512-73sE9+3UaLYYFmDsFZnqCInzPyh3MqIwZO9cw58yIqAZhONrrabrYyYe3TuIqtIiOuTXVhsGau8hcrhhwSsDIQ==
+-
+-node-addon-api@^6.0.0:
+- version "6.0.0"
+- resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-6.0.0.tgz#cfb3574e6df708ff71a30db6c4762d9e06e11c27"
+- integrity sha512-GyHvgPvUXBvAkXa0YvYnhilSB1A+FRYMpIVggKzPZqdaZfevZOuzfWzyvgzOwRLHBeo/MMswmJFsrNF4Nw1pmA==
+
+ node-fetch@2.6.8:
+ version "2.6.8"
+--- ./remote/package.json.orig
++++ ./remote/package.json
+@@ -36,5 +36,9 @@
+ "vscode-textmate": "9.0.0",
+ "yauzl": "^2.9.2",
+ "yazl": "^2.4.3"
++ },
++ "resolutions": {
++ "nan": "^2.18.0",
++ "node-addon-api": "^7.1.0"
+ }
+ }
+--- ./remote/yarn.lock.orig
++++ ./remote/yarn.lock
+@@ -389,6 +389,11 @@
+ resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009"
+ integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==
+
++nan@^2.18.0:
++ version "2.18.0"
++ resolved "https://registry.yarnpkg.com/nan/-/nan-2.18.0.tgz#26a6faae7ffbeb293a39660e88a76b82e30b7554"
++ integrity sha512-W7tfG7vMOGtD30sHoZSSc/JVYiyDPEyQVso/Zz+/uQd0B0L46gtC+pHha5FFMRpil6fm/AoEcRWyOVi4+E/f8w==
++
+ napi-build-utils@^1.0.1:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/napi-build-utils/-/napi-build-utils-1.0.2.tgz#b1fddc0b2c46e380a0b7a76f984dd47c41a13806"
+@@ -406,25 +411,10 @@
+ dependencies:
+ semver "^7.3.5"
+
+-node-addon-api@7.1.0, node-addon-api@^7.1.0:
++node-addon-api@7.1.0, node-addon-api@^3.0.2, node-addon-api@^3.2.1, node-addon-api@^4.3.0, node-addon-api@^7.1.0:
+ version "7.1.0"
+ resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-7.1.0.tgz#71f609369379c08e251c558527a107107b5e0fdb"
+ integrity sha512-mNcltoe1R8o7STTegSOHdnJNN7s5EUvhoS7ShnTHDyOSd+8H+UdWODq6qSv67PjC8Zc5JRT8+oLAMCr0SIXw7g==
+-
+-node-addon-api@^3.0.2:
+- version "3.1.0"
+- resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-3.1.0.tgz#98b21931557466c6729e51cb77cd39c965f42239"
+- integrity sha512-flmrDNB06LIl5lywUz7YlNGZH/5p0M7W28k8hzd9Lshtdh1wshD2Y+U4h9LD6KObOy1f+fEVdgprPrEymjM5uw==
+-
+-node-addon-api@^3.2.1:
+- version "3.2.1"
+- resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-3.2.1.tgz#81325e0a2117789c0128dab65e7e38f07ceba161"
+- integrity sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A==
+-
+-node-addon-api@^4.3.0:
+- version "4.3.0"
+- resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-4.3.0.tgz#52a1a0b475193e0928e98e0426a0d1254782b77f"
+- integrity sha512-73sE9+3UaLYYFmDsFZnqCInzPyh3MqIwZO9cw58yIqAZhONrrabrYyYe3TuIqtIiOuTXVhsGau8hcrhhwSsDIQ==
+
+ node-gyp-build@^4.3.0:
+ version "4.3.0"
diff --git a/testing/code-oss/enable-extensions.patch b/testing/code-oss/enable-extensions.patch
new file mode 100644
index 00000000000..c1e0f1fa5fe
--- /dev/null
+++ b/testing/code-oss/enable-extensions.patch
@@ -0,0 +1,15 @@
+diff --git a/product.json b/product.json
+index 212ad63..85ec061 100644
+--- a/product.json
++++ b/product.json
+@@ -29,6 +29,10 @@
+ "reportIssueUrl": "https://github.com/microsoft/vscode/issues/new",
+ "urlProtocol": "code-oss",
+ "webviewContentExternalBaseUrlTemplate": "https://{{uuid}}.vscode-cdn.net/insider/ef65ac1ba57f57f2a3961bfe94aa20481caca4c6/out/vs/workbench/contrib/webview/browser/pre/",
++ "extensionsGallery": {
++ "serviceUrl": "https://open-vsx.org/vscode/gallery",
++ "itemUrl": "https://open-vsx.org/vscode/item"
++ },
+ "builtInExtensions": [
+ {
+ "name": "ms-vscode.js-debug-companion",
diff --git a/testing/code-oss/launcher b/testing/code-oss/launcher
new file mode 100644
index 00000000000..6910c13336a
--- /dev/null
+++ b/testing/code-oss/launcher
@@ -0,0 +1,7 @@
+#!/bin/sh
+
+ELECTRON_RUN_AS_NODE=1 \
+ELECTRON_STILL_PASS_THE_DEFAULT_FLAGS=1 \
+exec /usr/bin/electron "/usr/lib/code-oss/resources/app/out/cli.js" \
+ --app="/usr/lib/code-oss/resources/app" \
+ "$@"
diff --git a/testing/code-oss/no-git.patch b/testing/code-oss/no-git.patch
new file mode 100644
index 00000000000..41e4e7a33e8
--- /dev/null
+++ b/testing/code-oss/no-git.patch
@@ -0,0 +1,11 @@
+diff --git a/build/npm/postinstall.js b/build/npm/postinstall.js
+index 187f123..8e489fb 100644
+--- a/build/npm/postinstall.js
++++ b/build/npm/postinstall.js
+@@ -110,6 +110,3 @@
+
+ yarnInstall(dir, opts);
+ }
+-
+-cp.execSync('git config pull.rebase merges');
+-cp.execSync('git config blame.ignoreRevsFile .git-blame-ignore-revs');
diff --git a/testing/code-oss/no-res.patch.noauto b/testing/code-oss/no-res.patch.noauto
new file mode 100644
index 00000000000..f39d7fb8717
--- /dev/null
+++ b/testing/code-oss/no-res.patch.noauto
@@ -0,0 +1,15 @@
+this is called to verify some fetched stuff (that the export= disables don't even
+fix, funny..), but none of it is used or even unpacked, so just skip it because
+it fails.
+--
+--- a/node_modules/sumchecker/index.js
++++ b/node_modules/sumchecker/index.js
+@@ -110,6 +110,8 @@
+ async validateFile (baseDir, filename) {
+ return new Promise((resolve, reject) => {
+ debug(`validateFile: ${filename}`)
++ resolve()
++ return
+
+ const metadata = this.checksums[filename]
+ if (!metadata) {
diff --git a/testing/code-oss/no-source-maps.patch b/testing/code-oss/no-source-maps.patch
new file mode 100644
index 00000000000..5c292d833dd
--- /dev/null
+++ b/testing/code-oss/no-source-maps.patch
@@ -0,0 +1,23 @@
+Error: EMFILE: too many open files, open '/home/lauren/aports/testing/code-oss/src/vscode-1.85.0/out-build/vs/base/browser/ui/list/listView.js.map'
+--- ./build/lib/optimize.ts.orig
++++ ./build/lib/optimize.ts
+@@ -121,7 +121,7 @@
+ }
+
+ function toConcatStream(src: string, bundledFileHeader: string, sources: bundle.IFile[], dest: string, fileContentMapper: (contents: string, path: string) => string): NodeJS.ReadWriteStream {
+- const useSourcemaps = /\.js$/.test(dest) && !/\.nls\.js$/.test(dest);
++ const useSourcemaps = false;
+
+ // If a bundle ends up including in any of the sources our copyright, then
+ // insert a fake source at the beginning of each bundle with our copyright
+--- ./build/lib/optimize.js.orig
++++ ./build/lib/optimize.js
+@@ -103,7 +103,7 @@
+ return code.replace('"$BASE_URL"', 'baseUrl');
+ }
+ function toConcatStream(src, bundledFileHeader, sources, dest, fileContentMapper) {
+- const useSourcemaps = /\.js$/.test(dest) && !/\.nls\.js$/.test(dest);
++ const useSourcemaps = false;
+ // If a bundle ends up including in any of the sources our copyright, then
+ // insert a fake source at the beginning of each bundle with our copyright
+ let containsOurCopyright = false;
diff --git a/testing/code-oss/system-electron.patch.noauto b/testing/code-oss/system-electron.patch.noauto
new file mode 100644
index 00000000000..30ad5828251
--- /dev/null
+++ b/testing/code-oss/system-electron.patch.noauto
@@ -0,0 +1,16 @@
+--- ./node_modules/@vscode/gulp-electron/src/index.js.orig
++++ ./node_modules/@vscode/gulp-electron/src/index.js
+@@ -48,11 +48,8 @@
+
+ var sources = es
+ .merge(es.readArray(buffer), pass)
+- .pipe(moveApp(platform, opts));
+-
+- var electron = download(opts).pipe(platform.patch(opts));
+-
+- es.merge(sources, electron).pipe(result);
++ .pipe(moveApp(platform, opts))
++ .pipe(result);
+
+ buffer = null;
+ })
diff --git a/testing/code-oss/webpack-hash.patch.noauto b/testing/code-oss/webpack-hash.patch.noauto
new file mode 100644
index 00000000000..7b4e1f85dc3
--- /dev/null
+++ b/testing/code-oss/webpack-hash.patch.noauto
@@ -0,0 +1,11 @@
+--- a/node_modules/webpack/lib/util/createHash.js
++++ b/node_modules/webpack/lib/util/createHash.js
+@@ -142,7 +142,7 @@
+ default:
+ if (crypto === undefined) crypto = require("crypto");
+ return new BulkUpdateDecorator(
+- () => crypto.createHash(algorithm),
++ () => crypto.createHash("sha1"),
+ algorithm
+ );
+ }
diff --git a/testing/codeberg-cli/APKBUILD b/testing/codeberg-cli/APKBUILD
new file mode 100644
index 00000000000..f1c8697861e
--- /dev/null
+++ b/testing/codeberg-cli/APKBUILD
@@ -0,0 +1,47 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=codeberg-cli
+pkgver=0.3.5
+pkgrel=0
+pkgdesc="CLI Tool for Codeberg similar to gh and glab"
+url="https://codeberg.org/RobWalt/codeberg-cli"
+arch="all"
+license="AGPL-3.0-or-later"
+makedepends="
+ cargo
+ cargo-auditable
+ openssl-dev
+"
+subpackages="
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
+"
+source="$pkgname-$pkgver.tar.gz::https://codeberg.org/RobWalt/codeberg-cli/archive/v$pkgver.tar.gz"
+builddir="$srcdir/$pkgname"
+options="net !check" # no tests
+
+prepare() {
+ default_prepare
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+package() {
+ install -Dm755 target/release/berg -t "$pkgdir"/usr/bin
+
+ mkdir -p "$pkgdir"/usr/share/bash-completion/completions
+ mkdir -p "$pkgdir"/usr/share/fish/vendor_completions.d
+ mkdir -p "$pkgdir"/usr/share/zsh/site-functions
+
+ target/release/berg completion bash > "$pkgdir"/usr/share/bash-completion/completions/berg
+ target/release/berg completion fish > "$pkgdir"/usr/share/fish/vendor_completions.d/berg.fish
+ target/release/berg completion zsh > "$pkgdir"/usr/share/zsh/site-functions/_berg
+}
+
+sha512sums="
+cd22faee4d2fca78dcdee857112dd5cd8c03f314266a8ddaabddb4fcc054688fe1d3b679c904b84a40356b1404893e7999f0ddb651efcdfdc83c93cf512e5ce2 codeberg-cli-0.3.5.tar.gz
+"
diff --git a/testing/codeblocks/0001-v20.03-r12008.patch b/testing/codeblocks/0001-v20.03-r12008.patch
deleted file mode 100644
index 5a125f6cef7..00000000000
--- a/testing/codeblocks/0001-v20.03-r12008.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-------------------------------------------------------------------------
-r12008 | fuscated | 2020-03-30 19:14:41 +0200 (Mon, 30 Mar 2020) | 3 lines
-
-- DragScroll: Remove int3, so it might build on non-x86 machines (ticket #935)
-
-> I guess this is useful only for debugging.
-
-Index: src/plugins/contrib/dragscroll/dragscrollcfg.h
-===================================================================
---- a/src/plugins/contrib/dragscroll/dragscrollcfg.h (revision 12007)
-+++ b/src/plugins/contrib/dragscroll/dragscrollcfg.h (revision 12008)
-@@ -35,7 +35,7 @@
- wxString GetBitmapBaseName() const;
- void OnApply();
- void OnCancel(){}
-- virtual void InitDialog(){ asm("int3");} /*trap*/
-+ virtual void InitDialog() { } /*trap*/
-
- // pointer to owner of the configuration diaglog needed to
- // complete the OnApply/OnCancel EndModal() logic
-
-------------------------------------------------------------------------
diff --git a/testing/codeblocks/0002-v20.03-r12012.patch b/testing/codeblocks/0002-v20.03-r12012.patch
deleted file mode 100644
index 12988765acb..00000000000
--- a/testing/codeblocks/0002-v20.03-r12012.patch
+++ /dev/null
@@ -1,140 +0,0 @@
-------------------------------------------------------------------------
-r12012 | mortenmacfly | 2020-03-31 17:44:13 +0200 (Tue, 31 Mar 2020) | 2 lines
-
-* keybinder: remove old-school #pragmas to fix bug #936 and https://bugzilla.redhat.com/show_bug.cgi?id=1819154
-- keybinder: also, remove Borland c related pragmas. (Who will ever compile C::B using Borland C?)
-
-Index: src/plugins/contrib/keybinder/cbKeyConfigPanel.h
-===================================================================
---- a/src/plugins/contrib/keybinder/cbKeyConfigPanel.h (revision 12011)
-+++ b/src/plugins/contrib/keybinder/cbKeyConfigPanel.h (revision 12012)
-@@ -10,10 +10,6 @@
- #ifndef CBKEYCONFIGPANEL_H
- #define CBKEYCONFIGPANEL_H
-
--#ifdef __BORLANDC__
-- #pragma hdrstop
--#endif
--
- // Modified Keybinder for CodeBlocks KeyBnder v2.0
-
- // ----------------------------------------------------------------------------
-Index: src/plugins/contrib/keybinder/cbkeyConfigPanel.cpp
-===================================================================
---- a/src/plugins/contrib/keybinder/cbkeyConfigPanel.cpp (revision 12011)
-+++ b/src/plugins/contrib/keybinder/cbkeyConfigPanel.cpp (revision 12012)
-@@ -12,10 +12,6 @@
-
- // Modified CodeBlocks KeyBnder v2.0 2019/04/8
-
--#if defined(__GNUG__) && !defined(__APPLE__)
-- #pragma implementation "cbkeybinder.h"
--#endif
--
- #include <vector>
-
- #include <sdk.h>
-Index: src/plugins/contrib/keybinder/cbkeybinder.cpp
-===================================================================
---- a/src/plugins/contrib/keybinder/cbkeybinder.cpp (revision 12011)
-+++ b/src/plugins/contrib/keybinder/cbkeybinder.cpp (revision 12012)
-@@ -12,10 +12,6 @@
-
- // Modified CodeBlocks KeyBnder v2.0 2019/04/8
-
--#if defined(__GNUG__) && !defined(__APPLE__)
-- #pragma implementation "cbkeybinder.h"
--#endif
--
- #include <vector>
-
- #include <sdk.h>
-Index: src/plugins/contrib/keybinder/cbkeybinder.h
-===================================================================
---- a/src/plugins/contrib/keybinder/cbkeybinder.h (revision 12011)
-+++ b/src/plugins/contrib/keybinder/cbkeybinder.h (revision 12012)
-@@ -10,14 +10,6 @@
- #ifndef CBKEYBINDER_H
- #define CBKEYBINDER_H
-
--#if defined(__GNUG__) && !defined(__APPLE__)
-- #pragma interface "cbkeybinder.h"
--#endif
--
--#ifdef __BORLANDC__
-- #pragma hdrstop
--#endif
--
- #include <wx/string.h>
- //-#include <wx/timer.h>
- #include <wx/listbook.h>
-Index: src/plugins/contrib/keybinder/keybinder.cpp
-===================================================================
---- a/src/plugins/contrib/keybinder/keybinder.cpp (revision 12011)
-+++ b/src/plugins/contrib/keybinder/keybinder.cpp (revision 12012)
-@@ -12,11 +12,6 @@
-
- // Modified Keybinder for CodeBlocks KeyBnder v2.0 2019/04/8
-
--#ifdef __GNUG__
--#pragma implementation "keybinder.h" //necessary for linux, else undefines when linking
--#endif
--
--
- // includes
- #include <wx/event.h>
- #include <wx/frame.h> // Manager::Get()->GetAppWindow()
-Index: src/plugins/contrib/keybinder/keybinder.h
-===================================================================
---- a/src/plugins/contrib/keybinder/keybinder.h (revision 12011)
-+++ b/src/plugins/contrib/keybinder/keybinder.h (revision 12012)
-@@ -16,10 +16,6 @@
- #ifndef __KEYBINDER_G__
- #define __KEYBINDER_G__
-
--#ifdef __GNUG__
--#pragma interface "keybinder.h"
--#endif
--
- // required includes
- #include "wx/panel.h"
- #include "wx/dialog.h"
-Index: src/plugins/contrib/keybinder/menuutils.cpp
-===================================================================
---- a/src/plugins/contrib/keybinder/menuutils.cpp (revision 12011)
-+++ b/src/plugins/contrib/keybinder/menuutils.cpp (revision 12012)
-@@ -10,17 +10,10 @@
- // RCS-ID: $Id$
-
- // menuutils for KeyBinder v2.0 2019/04/8
--#ifdef __GNUG__
--#pragma implementation "menuutils.h"
--#endif
-
- // For compilers that support precompilation, includes "wx/wx.h".
- #include "wx/wxprec.h"
-
--#ifdef __BORLANDC__
--#pragma hdrstop
--#endif
--
- #ifndef WX_PRECOMP
- #include "wx/wx.h"
- #endif
-Index: src/plugins/contrib/keybinder/menuutils.h
-===================================================================
---- a/src/plugins/contrib/keybinder/menuutils.h (revision 12011)
-+++ b/src/plugins/contrib/keybinder/menuutils.h (revision 12012)
-@@ -15,10 +15,6 @@
- #ifndef __WX_MENUUTILS_H__
- #define __WX_MENUUTILS_H__
-
--#ifdef __GNUG__
--#pragma interface "menuutils.h"
--#endif
--
- // includes
- #include "wx/panel.h"
- #include "wx/dialog.h"
-
-------------------------------------------------------------------------
diff --git a/testing/codeblocks/0003-fix-missing-sentinel.patch b/testing/codeblocks/0003-fix-missing-sentinel.patch
deleted file mode 100644
index 1b80e10033a..00000000000
--- a/testing/codeblocks/0003-fix-missing-sentinel.patch
+++ /dev/null
@@ -1,37 +0,0 @@
---- a/src/sdk/configmanager.cpp
-+++ b/src/sdk/configmanager.cpp
-@@ -612,7 +612,7 @@
- return wxStandardPathsBase::Get().GetUserDataDir();
- #else
- #ifdef __linux__
-- return wxString::FromUTF8(g_build_filename (g_get_user_config_dir(), "codeblocks", NULL));
-+ return wxString::FromUTF8(g_build_filename (g_get_user_config_dir(), "codeblocks", (void *)NULL));
- #else
- return wxStandardPathsBase::Get().GetUserDataDir();
- #endif // __linux__
-@@ -1586,7 +1586,7 @@
- wxString dataPathUser = ConfigManager::config_folder + wxFILE_SEP_PATH + _T("share");
- #ifdef __linux__
- if (!has_alternate_user_data_path)
-- dataPathUser = wxString::FromUTF8(g_build_filename (g_get_user_data_dir(), NULL));
-+ dataPathUser = wxString::FromUTF8(g_build_filename (g_get_user_data_dir(), (void *)NULL));
- #endif // __linux__
-
- ConfigManager::data_path_user = dataPathUser + wxFILE_SEP_PATH + _T("codeblocks");
-@@ -1612,14 +1612,14 @@
-
- // ConfigManager::config_folder might be the portable-path but we want to migrate the standard-conform folder,
- // but only if it not already exists
-- wxString newConfigFolder = wxString::FromUTF8(g_build_filename (g_get_user_config_dir(), "codeblocks", NULL));
-+ wxString newConfigFolder = wxString::FromUTF8(g_build_filename (g_get_user_config_dir(), "codeblocks", (void *)NULL));
- // if the new config folder already exist, we step out immediately
- if (wxDirExists(newConfigFolder))
- return;
-
- wxString oldConfigFolder = wxStandardPaths::Get().GetUserDataDir();
- wxString oldDataFolder = oldConfigFolder + wxFILE_SEP_PATH + _T("share") + wxFILE_SEP_PATH + _T("codeblocks");
-- wxString newDataFolder = wxString::FromUTF8(g_build_filename (g_get_user_data_dir(), NULL)) + wxFILE_SEP_PATH + _T("codeblocks");
-+ wxString newDataFolder = wxString::FromUTF8(g_build_filename (g_get_user_data_dir(), (void *)NULL)) + wxFILE_SEP_PATH + _T("codeblocks");
- wxString msg;
- msg = F(_("The places where the configuration files and user-data files are stored\n"
- "have been changed to be more standard-conform.\n"
diff --git a/testing/codeblocks/0004-delete-wxpropgrid.patch b/testing/codeblocks/0004-delete-wxpropgrid.patch
deleted file mode 100644
index 76f414b28b8..00000000000
--- a/testing/codeblocks/0004-delete-wxpropgrid.patch
+++ /dev/null
@@ -1,188 +0,0 @@
---- a/src/CodeBlocks-unix.cbp
-+++ b/src/CodeBlocks-unix.cbp
-@@ -97,20 +97,6 @@
- <Add directory="sdk/wxscintilla/include" />
- </ResourceCompiler>
- </Target>
-- <Target title="wxpropgrid">
-- <Option output="devel/libwxpropgrid" prefix_auto="0" extension_auto="1" />
-- <Option working_dir="devel" />
-- <Option type="3" />
-- <Option compiler="gcc" />
-- <Option createStaticLib="1" />
-- <Compiler>
-- <Add option="-fvisibility=hidden" />
-- <Add option="-DEXPORT_LIB" />
-- <Add option="-DwxPG_SUPPORT_TOOLTIPS" />
-- <Add directory="sdk/wxpropgrid/include" />
-- <Add directory="include" />
-- </Compiler>
-- </Target>
- <Target title="sdk">
- <Option output="devel/libcodeblocks" prefix_auto="0" extension_auto="1" />
- <Option working_dir="devel" />
-@@ -135,7 +121,6 @@
- <Add directory="include/mozilla_chardet/xpcom" />
- <Add directory="include/mozilla_chardet/xpcom/base" />
- <Add directory="include/mozilla_chardet/xpcom/glue" />
-- <Add directory="sdk/wxpropgrid/include" />
- </Compiler>
- <Linker>
- <Add option="-lwxscintilla_cb" />
-@@ -174,7 +159,6 @@
- <Linker>
- <Add option="`pkg-config gtk+-2.0 --libs`" />
- <Add library="codeblocks" />
-- <Add library="wxpropgrid" />
- </Linker>
- </Target>
- <Target title="Abbreviations">
-@@ -266,7 +250,6 @@
- <Add option="-Wl,--no-undefined" />
- <Add library="codeblocks" />
- <Add library="depslib" />
-- <Add library="wxpropgrid" />
- </Linker>
- </Target>
- <Target title="Debugger">
-@@ -462,9 +445,9 @@
- </Environment>
- </Build>
- <VirtualTargets>
-- <Add alias="All" targets="tinyXML;AutoRevision;ConsoleRunner;Squirrel;Squirrel std lib;SqPlus;scintilla;wxpropgrid;sdk;src;Abbreviations;AStyle;Autosave;Compiler depslib;Compiler;Debugger;Code-completion;Class wizard;Default MIME handler;Occurrences Highlighting;Open files list;Projects-workspaces importer;Scripted wizard;To-do;" />
-+ <Add alias="All" targets="tinyXML;AutoRevision;ConsoleRunner;Squirrel;Squirrel std lib;SqPlus;scintilla;sdk;src;Abbreviations;AStyle;Autosave;Compiler depslib;Compiler;Debugger;Code-completion;Class wizard;Default MIME handler;Occurrences Highlighting;Open files list;Projects-workspaces importer;Scripted wizard;To-do;" />
- <Add alias="Core app &amp; plugins" targets="sdk;src;Abbreviations;AStyle;Autosave;Compiler depslib;Compiler;Debugger;Code-completion;Class wizard;Default MIME handler;Occurrences Highlighting;Open files list;Projects-workspaces importer;Scripted wizard;To-do;" />
-- <Add alias="Third-party libs" targets="tinyXML;AutoRevision;ConsoleRunner;Squirrel;Squirrel std lib;SqPlus;scintilla;wxpropgrid;Compiler depslib;" />
-+ <Add alias="Third-party libs" targets="tinyXML;AutoRevision;ConsoleRunner;Squirrel;Squirrel std lib;SqPlus;scintilla;Compiler depslib;" />
- </VirtualTargets>
- <Compiler>
- <Add option="-Wall" />
-@@ -479,7 +462,6 @@
- <Add option="-DcbDEBUG" />
- <Add option="-DCB_PRECOMP" />
- <Add directory="sdk/wxscintilla/include" />
-- <Add directory="sdk/wxpropgrid/include" />
- <Add directory="include/tinyxml" />
- </Compiler>
- <Linker>
-@@ -3125,57 +3107,6 @@
- </Unit>
- <Unit filename="sdk/workspaceloader.cpp">
- <Option target="sdk" />
-- </Unit>
-- <Unit filename="sdk/wxpropgrid/include/wx/propgrid/advprops.h">
-- <Option target="wxpropgrid" />
-- </Unit>
-- <Unit filename="sdk/wxpropgrid/include/wx/propgrid/editors.h">
-- <Option target="wxpropgrid" />
-- </Unit>
-- <Unit filename="sdk/wxpropgrid/include/wx/propgrid/extras.h">
-- <Option target="wxpropgrid" />
-- </Unit>
-- <Unit filename="sdk/wxpropgrid/include/wx/propgrid/manager.h">
-- <Option target="wxpropgrid" />
-- </Unit>
-- <Unit filename="sdk/wxpropgrid/include/wx/propgrid/odcombo.h">
-- <Option target="wxpropgrid" />
-- </Unit>
-- <Unit filename="sdk/wxpropgrid/include/wx/propgrid/propdev.h">
-- <Option target="wxpropgrid" />
-- </Unit>
-- <Unit filename="sdk/wxpropgrid/include/wx/propgrid/propgrid.h">
-- <Option target="wxpropgrid" />
-- </Unit>
-- <Unit filename="sdk/wxpropgrid/include/wx/propgrid/props.h">
-- <Option target="wxpropgrid" />
-- </Unit>
-- <Unit filename="sdk/wxpropgrid/include/wx/propgrid/xh_propgrid.h">
-- <Option target="wxpropgrid" />
-- </Unit>
-- <Unit filename="sdk/wxpropgrid/src/advprops.cpp">
-- <Option target="wxpropgrid" />
-- </Unit>
-- <Unit filename="sdk/wxpropgrid/src/editors.cpp">
-- <Option target="wxpropgrid" />
-- </Unit>
-- <Unit filename="sdk/wxpropgrid/src/extras.cpp">
-- <Option target="wxpropgrid" />
-- </Unit>
-- <Unit filename="sdk/wxpropgrid/src/manager.cpp">
-- <Option target="wxpropgrid" />
-- </Unit>
-- <Unit filename="sdk/wxpropgrid/src/odcombo.cpp">
-- <Option target="wxpropgrid" />
-- </Unit>
-- <Unit filename="sdk/wxpropgrid/src/propgrid.cpp">
-- <Option target="wxpropgrid" />
-- </Unit>
-- <Unit filename="sdk/wxpropgrid/src/props.cpp">
-- <Option target="wxpropgrid" />
-- </Unit>
-- <Unit filename="sdk/wxpropgrid/src/xh_propgrid.cpp">
-- <Option target="wxpropgrid" />
- </Unit>
- <Unit filename="sdk/wxscintilla/include/wx/wxscintilla.h">
- <Option target="scintilla" />
---- a/configure.ac
-+++ b/configure.ac
-@@ -318,16 +318,10 @@
- AC_MSG_RESULT(yes (version $WX_VERSION))
- AC_MSG_NOTICE([(Re)setting libs for wxWidgets $WX_VERSION])
- WX_LIBS=`$WX_CONFIG_WITH_ARGS --libs std,aui,propgrid,richtext`
-- WXPROPGRID_DIR=
-- WXPROPGRID_LIB=
-- WXPROPGRID_INCLUDE=
- SCINTILLA_GTK_CFLAGS="$WX_GDK_CFLAGS"
- SCINTILLA_GTK_LIBS="$WX_GDK_LIBS"
- else
- AC_MSG_RESULT(no)
-- WXPROPGRID_DIR=wxpropgrid
-- WXPROPGRID_LIB=wxpropgrid/libwxpropgrid.la
-- WXPROPGRID_INCLUDE=-I\$\(top_srcdir\)/src/sdk/wxpropgrid/include
-
- if test "x$HAVE_GCC48_TRUE" = "x" ; then
- gcc48_flags="-Wno-unused-local-typedefs"
-@@ -372,10 +366,6 @@
- AC_SUBST(CB_FONTCONFIG_LIBS)
- AC_SUBST(WX_X11_CFLAGS)
- AC_SUBST(WX_X11_LIBS)
--AC_SUBST(WXPROPGRID_DIR)
--AC_SUBST(WXPROPGRID_LIB)
--AC_SUBST(WXPROPGRID_INCLUDE)
--AC_SUBST(WXPROPGRID_HEADERS)
-
- AC_SUBST(POSTLINK_COMMAND)
- AC_SUBST(MACSETFILE)
-@@ -434,7 +424,6 @@
- src/include/scripting/squirrel/Makefile
- src/include/tinyxml/Makefile
- src/sdk/Makefile
-- src/sdk/wxpropgrid/Makefile
- src/sdk/scripting/Makefile
- src/sdk/scripting/bindings/Makefile
- src/sdk/scripting/squirrel/Makefile
---- a/src/sdk/Makefile.am
-+++ b/src/sdk/Makefile.am
-@@ -1,12 +1,11 @@
--SUBDIRS = scripting wxscintilla $(WXPROPGRID_DIR) resources
--DIST_SUBDIRS = scripting wxscintilla wxpropgrid resources
-+SUBDIRS = scripting wxscintilla resources
-+DIST_SUBDIRS = scripting wxscintilla resources
-
- AM_CPPFLAGS = $(WX_CXXFLAGS) \
- $(CB_GLIB2_CFLAGS) \
- $(CB_SQUIRREL_CFLAGS) \
- -I$(top_srcdir)/src/include \
- -I$(top_srcdir)/src/sdk/wxscintilla/include \
-- $(WXPROPGRID_INCLUDE) \
- -I$(top_srcdir)/src/include/scripting/bindings \
- -I$(top_srcdir)/src/include/scripting/sqplus \
- -I$(top_srcdir)/src/include/mozilla_chardet \
-@@ -26,7 +25,6 @@
- $(WX_LIBS) \
- $(SCINTILLA_GTK_LIBS) \
- $(CB_GLIB2_LIBS) \
-- $(WXPROPGRID_LIB) \
- $(CB_TINYXML_LIBS) \
- $(CB_SQUIRREL_LIBS)
-
diff --git a/testing/codeblocks/0005-fix-pkgconfig-codeblocks-version.patch b/testing/codeblocks/0005-fix-pkgconfig-codeblocks-version.patch
deleted file mode 100644
index 3f237591e9e..00000000000
--- a/testing/codeblocks/0005-fix-pkgconfig-codeblocks-version.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/codeblocks.pc.in
-+++ b/codeblocks.pc.in
-@@ -8,7 +8,7 @@
-
- Name: codeblocks
- Description: Code::Blocks IDE
--Version: @VERSION@
-+Version: 20.03
- Libs: -L${libdir} -lcodeblocks
- Cflags: -I${includedir}/@PACKAGE@ \
- -I${includedir}/@PACKAGE@/tinyxml \
diff --git a/testing/codeblocks/0006-fix-openfileslistplugin-gcc11.patch b/testing/codeblocks/0006-fix-openfileslistplugin-gcc11.patch
deleted file mode 100644
index 23dc1a8e18b..00000000000
--- a/testing/codeblocks/0006-fix-openfileslistplugin-gcc11.patch
+++ /dev/null
@@ -1,25 +0,0 @@
---- a/src/plugins/openfileslist/openfileslistplugin.h
-+++ b/src/plugins/openfileslist/openfileslistplugin.h
-@@ -10,6 +10,7 @@
- #include <projectfile.h>
-
- #include <wx/dynarray.h>
-+#include <functional>
-
- class wxTreeCtrl;
- class wxTreeEvent;
-@@ -20,12 +21,8 @@
- struct TargetFilesData
- {
- TargetFilesData() : activeFile(nullptr) {} // ctor
-- // Functor for the std::set predicate to sort the opened editor files according to their tab order
-- struct compareLess
-- {
-- bool operator()(const ProjectFile* lhs, const ProjectFile* rhs) { return lhs->editorTabPos < rhs->editorTabPos; }
-- };
-- typedef std::set<ProjectFile*, compareLess> OpenFilesSet;
-+
-+ typedef std::set<ProjectFile*, std::less<ProjectFile*>> OpenFilesSet;
- ProjectFile* activeFile;
- OpenFilesSet openFiles;
- };
diff --git a/testing/codeblocks/APKBUILD b/testing/codeblocks/APKBUILD
deleted file mode 100644
index 71f993141a5..00000000000
--- a/testing/codeblocks/APKBUILD
+++ /dev/null
@@ -1,234 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=codeblocks
-pkgver=20.03
-pkgrel=1
-pkgdesc="Cross-platform C/C++ and Fortran IDE"
-url="https://codeblocks.org"
-# riscv64: ftbfs
-arch="all !riscv64"
-license="GPL-3.0-or-later"
-# coreutils is needed because ./bootstrap calls a rm parameter that is not supported in BusyBox
-makedepends="
- libtool automake autoconf coreutils imagemagick zip
- boost-dev hunspell-dev wxgtk3-dev tinyxml-dev
- "
-subpackages="$pkgname-dev $pkgname-doc $pkgname-contrib"
-source="https://sourceforge.net/projects/codeblocks/files/Sources/$pkgver/codeblocks-$pkgver.tar.xz
- 0001-v20.03-r12008.patch
- 0002-v20.03-r12012.patch
- 0003-fix-missing-sentinel.patch
- 0004-delete-wxpropgrid.patch
- 0005-fix-pkgconfig-codeblocks-version.patch
- 0006-fix-openfileslistplugin-gcc11.patch
- "
-options="!check" # No test suite
-
-prepare() {
- default_prepare
-
- # wxpropgrid fails building. Remove the directory and patch files
- # Upstream has deleted it due to unmanteinance
- rm -vr src/sdk/wxpropgrid
- convert src/mime/codeblocks.png +set date:create +set date:modify -background none -extent 64x64 src/mime/codeblocks.png
- sed -i 's|$(datadir)/pixmaps|$(datadir)/icons/hicolor/64x64/apps|' src/mime/Makefile.am
- sed -i 's|$(datarootdir)/appdata|$(datarootdir)/metainfo|' Makefile.am src/plugins/contrib/appdata/Makefile.am
- ./bootstrap
-
- # Patch auto_revision's Makefile.am to use the host compiler and flags
- cd src/build_tools/autorevision
- sed -i Makefile.am \
- -e "/noinst_PROGRAMS = auto_revision/a CC = gcc" \
- -e "/noinst_PROGRAMS = auto_revision/a CXX = g++" \
- -e "/noinst_PROGRAMS = auto_revision/a LD = g++" \
- -e "/noinst_PROGRAMS = auto_revision/a CFLAGS = -O2 -pipe" \
- -e "/noinst_PROGRAMS = auto_revision/a CXXFLAGS = -O2 -pipe" \
- -e "/noinst_PROGRAMS = auto_revision/a LDFLAGS = -s"
-}
-
-build() {
- # Deactivate wxsmith-related plugins because they depend on wxpropgrid
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --with-boost-libdir=/usr/lib \
- --with-contrib-plugins=all,-FileManager,-wxsmith,-wxsmithcontrib,-wxsmithaui \
- --with-wx-config=/usr/bin/wx-config-gtk3 \
- --prefix=/usr
- sed -i 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-
- # Replace pkgconfig file for 20.03 version (Reason: 20.03svn version is invalid)
- find "$pkgdir" -type f -exec sed -i 's/20.03svn/20.03/g' {} +
-}
-
-dev() {
- default_dev
- pkgdesc="$pkgdesc (SDK)"
-}
-
-contrib() {
- pkgdesc="$pkgdesc (contrib plugins)"
- mkdir -p "$subpkgdir"/usr/share/metainfo
- mkdir -p "$subpkgdir"/usr/share/codeblocks/images
-
- # Move plugins and wxContribItems to this subpackage
- amove usr/lib/codeblocks
-
- # Move contrib metainfo file
- # While at it, also place it in the correct directory
- mv -v "$pkgdir"/usr/share/metainfo/codeblocks-contrib.metainfo.xml \
- "$subpkgdir"/usr/share/metainfo/codeblocks-contrib.metainfo.xml
-
- # Move optional plugins to this subcategory
- mv -v "$pkgdir"/usr/share/codeblocks/AutoVersioning.zip \
- "$subpkgdir"/usr/share/codeblocks/AutoVersioning.zip
-
- mv -v "$pkgdir"/usr/share/codeblocks/BrowseTracker.zip \
- "$subpkgdir"/usr/share/codeblocks/BrowseTracker.zip
-
- mv -v "$pkgdir"/usr/share/codeblocks/Cccc.zip \
- "$subpkgdir"/usr/share/codeblocks/Cccc.zip
-
- mv -v "$pkgdir"/usr/share/codeblocks/CppCheck.zip \
- "$subpkgdir"/usr/share/codeblocks/CppCheck.zip
-
- mv -v "$pkgdir"/usr/share/codeblocks/Cscope.zip \
- "$subpkgdir"/usr/share/codeblocks/Cscope.zip
-
- mv -v "$pkgdir"/usr/share/codeblocks/DoxyBlocks.zip \
- "$subpkgdir"/usr/share/codeblocks/DoxyBlocks.zip
-
- mv -v "$pkgdir"/usr/share/codeblocks/EditorConfig.zip \
- "$subpkgdir"/usr/share/codeblocks/EditorConfig.zip
-
- mv -v "$pkgdir"/usr/share/codeblocks/EditorTweaks.zip \
- "$subpkgdir"/usr/share/codeblocks/EditorTweaks.zip
-
- mv -v "$pkgdir"/usr/share/codeblocks/HexEditor.zip \
- "$subpkgdir"/usr/share/codeblocks/HexEditor.zip
-
- mv -v "$pkgdir"/usr/share/codeblocks/IncrementalSearch.zip \
- "$subpkgdir"/usr/share/codeblocks/IncrementalSearch.zip
-
- mv -v "$pkgdir"/usr/share/codeblocks/MouseSap.zip \
- "$subpkgdir"/usr/share/codeblocks/MouseSap.zip
-
- mv -v "$pkgdir"/usr/share/codeblocks/NassiShneiderman.zip \
- "$subpkgdir"/usr/share/codeblocks/NassiShneiderman.zip
-
- mv -v "$pkgdir"/usr/share/codeblocks/Profiler.zip \
- "$subpkgdir"/usr/share/codeblocks/Profiler.zip
-
- mv -v "$pkgdir"/usr/share/codeblocks/ProjectOptionsManipulator.zip \
- "$subpkgdir"/usr/share/codeblocks/ProjectOptionsManipulator.zip
-
- mv -v "$pkgdir"/usr/share/codeblocks/RegExTestbed.zip \
- "$subpkgdir"/usr/share/codeblocks/RegExTestbed.zip
-
- mv -v "$pkgdir"/usr/share/codeblocks/ReopenEditor.zip \
- "$subpkgdir"/usr/share/codeblocks/ReopenEditor.zip
-
- mv -v "$pkgdir"/usr/share/codeblocks/SmartIndentCpp.zip \
- "$subpkgdir"/usr/share/codeblocks/SmartIndentCpp.zip
-
- mv -v "$pkgdir"/usr/share/codeblocks/SmartIndentFortran.zip \
- "$subpkgdir"/usr/share/codeblocks/SmartIndentFortran.zip
-
- mv -v "$pkgdir"/usr/share/codeblocks/SmartIndentHDL.zip \
- "$subpkgdir"/usr/share/codeblocks/SmartIndentHDL.zip
-
- mv -v "$pkgdir"/usr/share/codeblocks/SmartIndentLua.zip \
- "$subpkgdir"/usr/share/codeblocks/SmartIndentLua.zip
-
- mv -v "$pkgdir"/usr/share/codeblocks/SmartIndentPascal.zip \
- "$subpkgdir"/usr/share/codeblocks/SmartIndentPascal.zip
-
- mv -v "$pkgdir"/usr/share/codeblocks/SmartIndentPython.zip \
- "$subpkgdir"/usr/share/codeblocks/SmartIndentPython.zip
-
- mv -v "$pkgdir"/usr/share/codeblocks/SmartIndentXML.zip \
- "$subpkgdir"/usr/share/codeblocks/SmartIndentXML.zip
-
- mv -v "$pkgdir"/usr/share/codeblocks/SpellChecker \
- "$subpkgdir"/usr/share/codeblocks/SpellChecker
-
- mv -v "$pkgdir"/usr/share/codeblocks/SpellChecker.zip \
- "$subpkgdir"/usr/share/codeblocks/SpellChecker.zip
-
- mv -v "$pkgdir"/usr/share/codeblocks/SymTab.zip \
- "$subpkgdir"/usr/share/codeblocks/SymTab.zip
-
- mv -v "$pkgdir"/usr/share/codeblocks/ThreadSearch.zip \
- "$subpkgdir"/usr/share/codeblocks/ThreadSearch.zip
-
- mv -v "$pkgdir"/usr/share/codeblocks/ToolsPlus.zip \
- "$subpkgdir"/usr/share/codeblocks/ToolsPlus.zip
-
- mv -v "$pkgdir"/usr/share/codeblocks/Valgrind.zip \
- "$subpkgdir"/usr/share/codeblocks/Valgrind.zip
-
- mv -v "$pkgdir"/usr/share/codeblocks/abbreviations.zip \
- "$subpkgdir"/usr/share/codeblocks/abbreviations.zip
-
- mv -v "$pkgdir"/usr/share/codeblocks/byogames.zip \
- "$subpkgdir"/usr/share/codeblocks/byogames.zip
-
- mv -v "$pkgdir"/usr/share/codeblocks/cb_koders.zip \
- "$subpkgdir"/usr/share/codeblocks/cb_koders.zip
-
- mv -v "$pkgdir"/usr/share/codeblocks/codesnippets.zip \
- "$subpkgdir"/usr/share/codeblocks/codesnippets.zip
-
- mv -v "$pkgdir"/usr/share/codeblocks/codestat.zip \
- "$subpkgdir"/usr/share/codeblocks/codestat.zip
-
- mv -v "$pkgdir"/usr/share/codeblocks/copystrings.zip \
- "$subpkgdir"/usr/share/codeblocks/copystrings.zip
-
- mv -v "$pkgdir"/usr/share/codeblocks/dragscroll.zip \
- "$subpkgdir"/usr/share/codeblocks/dragscroll.zip
-
- mv -v "$pkgdir"/usr/share/codeblocks/envvars.zip \
- "$subpkgdir"/usr/share/codeblocks/envvars.zip
-
- mv -v "$pkgdir"/usr/share/codeblocks/exporter.zip \
- "$subpkgdir"/usr/share/codeblocks/exporter.zip
-
- mv -v "$pkgdir"/usr/share/codeblocks/headerfixup.zip \
- "$subpkgdir"/usr/share/codeblocks/headerfixup.zip
-
- mv -v "$pkgdir"/usr/share/codeblocks/help_plugin.zip \
- "$subpkgdir"/usr/share/codeblocks/help_plugin.zip
-
- mv -v "$pkgdir"/usr/share/codeblocks/images/codesnippets \
- "$subpkgdir"/usr/share/codeblocks/images/codesnippets
-
- mv -v "$pkgdir"/usr/share/codeblocks/keybinder.zip \
- "$subpkgdir"/usr/share/codeblocks/keybinder.zip
-
- mv -v "$pkgdir"/usr/share/codeblocks/lib_finder \
- "$subpkgdir"/usr/share/codeblocks/lib_finder
-
- mv -v "$pkgdir"/usr/share/codeblocks/lib_finder.zip \
- "$subpkgdir"/usr/share/codeblocks/lib_finder.zip
-
- mv -v "$pkgdir"/usr/share/codeblocks/occurrenceshighlighting.zip \
- "$subpkgdir"/usr/share/codeblocks/occurrenceshighlighting.zip
-
- mv -v "$pkgdir"/usr/share/codeblocks/rndgen.zip \
- "$subpkgdir"/usr/share/codeblocks/rndgen.zip
-}
-
-sha512sums="
-f97c1a02d31f0be4dc08b1f19b57bd0d3cba375ab5f33ab91b2a2df7817018f5b3e3063ed07199a3970644f1caa7c7e511db2034c73264f5f4963046d65b0097 codeblocks-20.03.tar.xz
-98584a93790974481a669cb86a01efe42690fe4a4e0a6c04abc15e3ea0c037be0b0cdc63164907e0c9f51414bb32b2879f6a06117d1374a4288a0a03bec4080f 0001-v20.03-r12008.patch
-1580f63e559470f58990831c49c8885ba980416326bc66a5564a47681d9f33124809824d7e6caab2ebfbde8bf57def4e9e06a41d30379bb7aa5a2deaee3803c1 0002-v20.03-r12012.patch
-d8ef0d5fd0605b00d72833591df78b6160bd4d3ae02523b0eba796bc6e375384b241bb24c3a44b45df7a47bf47bf58f1f94eb8459d177ab516383617955e0dd0 0003-fix-missing-sentinel.patch
-1b642ad9e4c479fb81674c4fa412e3c6d169bad9cad4b6748433004e5e0c31f1d1aba9a81eb02eb6ffd8927ae96d56a8fd90f009b7aa0925ae2e397794fedbac 0004-delete-wxpropgrid.patch
-792fcb9b570e5ee0fbadc2ab68b17f3f76c667b6b0822b6e4a89ce5e40c2afcd8744bbaa65fb3252fc36d9343d7c439df3f759c4fbc9980fcf851f5cad6be178 0005-fix-pkgconfig-codeblocks-version.patch
-56e649ae3cde529fdc9e6b11eac652c692b381bdb803cc476f536b28904f724cb0446974a3bed2d95740dff7ad9d026d1987800aef1f462a02ee1d81c6bd0318 0006-fix-openfileslistplugin-gcc11.patch
-"
diff --git a/testing/cog/APKBUILD b/testing/cog/APKBUILD
deleted file mode 100644
index d6cdc86afc7..00000000000
--- a/testing/cog/APKBUILD
+++ /dev/null
@@ -1,49 +0,0 @@
-# Contributor: David Demelier <markand@malikania.fr>
-# Maintainer: David Demelier <markand@malikania.fr>
-pkgname=cog
-pkgver=0.10.1
-pkgrel=0
-pkgdesc="simple browser for WebKit WPE"
-url="https://github.com/Igalia/cog"
-# armhf, x86, ppc64le, riscv64: wpewebkit not available.
-arch="all !armhf !x86 !ppc64le !riscv64"
-license="MIT"
-makedepends="cairo-dev
- cmake
- eudev-dev
- libinput-dev
- libsoup-dev
- libwpebackend-fdo-dev
- mesa-dev
- wayland-dev
- wayland-protocols
- wpewebkit-dev
- "
-source="https://github.com/Igalia/cog/releases/download/v0.10.1/cog-$pkgver.tar.xz"
-subpackages="$pkgname-dev $pkgname-doc"
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- -DCMAKE_BUILD_TYPE=None \
- $CMAKE_CROSSOPTS .
- cmake --build build
-}
-
-check() {
- cd build
- CTEST_OUTPUT_ON_FAILURE=TRUE ctest
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-
-sha512sums="
-3303da1f5f1ff04f6b4b0bd26d7085b58c90066d6db40be3e8c0c7158e56f7c40f2f606e7a4f6f60aa0d04345084f8e93eb16d62b11ed0248e21c2af92db0a22 cog-0.10.1.tar.xz
-"
diff --git a/testing/coin/APKBUILD b/testing/coin/APKBUILD
index 7abfc722087..782df0b027f 100644
--- a/testing/coin/APKBUILD
+++ b/testing/coin/APKBUILD
@@ -2,12 +2,12 @@
# Maintainer: Aiden Grossman <agrossman154@yahoo.com>
pkgname=coin
pkgver=4.0.0
-pkgrel=1
+pkgrel=5
pkgdesc="OpenGL OpenInventor compatible graphics library"
url="https://github.com/coin3d/coin"
license="BSD-3-Clause"
arch="all"
-makedepends="boost-dev cmake glu-dev graphviz"
+makedepends="boost-dev cmake glu-dev graphviz samurai"
subpackages="$pkgname-dev"
source="https://github.com/coin3d/coin/releases/download/Coin-$pkgver/coin-$pkgver-src.tar.gz
TestSuitePatch.patch
@@ -15,10 +15,8 @@ source="https://github.com/coin3d/coin/releases/download/Coin-$pkgver/coin-$pkgv
builddir="$srcdir/coin"
build() {
- export CXXFLAGS="${CXXFLAGS/-Os/}" # test suite fails with -Os optimizations
- cmake . \
- -B ./build \
- -DCMAKE_BUILD_TYPE=None \
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCOIN_BUILD_TESTS=ON
cmake --build build
diff --git a/testing/cointop/APKBUILD b/testing/cointop/APKBUILD
deleted file mode 100644
index 1222abe26b4..00000000000
--- a/testing/cointop/APKBUILD
+++ /dev/null
@@ -1,27 +0,0 @@
-# Contributor: Hoang Nguyen <folliekazetani@protonmail.com>
-# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
-pkgname=cointop
-pkgver=1.6.10
-pkgrel=0
-pkgdesc="TUI application for tracking cryptocurrencies"
-url="https://github.com/cointop-sh/cointop"
-arch="all"
-license="Apache-2.0"
-makedepends="go"
-source="$pkgname-$pkgver.tar.gz::https://github.com/cointop-sh/cointop/archive/refs/tags/v$pkgver.tar.gz"
-
-build() {
- go build -v -o bin/$pkgname -ldflags "-X github.com/cointop-sh/cointop/cointop.version=v$pkgver"
-}
-
-check() {
- go test ./...
-}
-
-package() {
- install -Dm755 bin/$pkgname "$pkgdir"/usr/bin/$pkgname
-}
-
-sha512sums="
-223225fe61f46ba51e12bf37108ea86ad3131edbc48317f08ef6cfcc5b4d225ed148996f6f0ca9eedea3c2d4b3f63b52b1d174f72712558618b734437b36f9f6 cointop-1.6.10.tar.gz
-"
diff --git a/testing/colorpicker/APKBUILD b/testing/colorpicker/APKBUILD
index fff5d758165..15603ae8c72 100644
--- a/testing/colorpicker/APKBUILD
+++ b/testing/colorpicker/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: jona <ein.jona.mit.f@gmail.com>
pkgname=colorpicker
pkgver=0_git20201128
-pkgrel=0
+pkgrel=1
_commit="782eafb16f1799376d548c93bf2786abc8ebd76e"
pkgdesc="simplest command line color picker"
url="https://github.com/ym1234/colorpicker"
diff --git a/testing/comics-downloader/APKBUILD b/testing/comics-downloader/APKBUILD
index d0a245d5b11..0f17a826b0b 100644
--- a/testing/comics-downloader/APKBUILD
+++ b/testing/comics-downloader/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Anjandev Momi <anjan@momi.ca>
# Maintainer: Anjandev Momi <anjan@momi.ca>
pkgname=comics-downloader
-pkgver=0.33.2
-pkgrel=0
+pkgver=0.33.8
+pkgrel=2
pkgdesc="Tool to download comics and manga in pdf/epub/cbr/cbz from a website"
url="https://github.com/Girbons/comics-downloader"
license="MIT"
@@ -13,11 +13,9 @@ makedepends="go mesa-dev libxcursor-dev libxrandr-dev libxinerama-dev libxi-dev"
subpackages="$pkgname-gui:gui"
source="$pkgver-$pkgname.tar.gz::https://github.com/Girbons/comics-downloader/archive/refs/tags/v$pkgver.tar.gz"
-export GOPATH="$srcdir"
-
-prepare() {
- default_prepare
-}
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
build() {
go build -o build/comics-downloader ./cmd/downloader
@@ -39,5 +37,5 @@ gui() {
}
sha512sums="
-88e2f900632164583665c8d705f1d6366bf9861d89ccff1b193299706b4155ff980125c43af675e7323d41c1b22456f18e819401d6a2c8c7295046e6a6f48f1f 0.33.2-comics-downloader.tar.gz
+0556444babdb8fbbce01ca661272ecedea3e4c8c5fcfe8d505368bb64a41c58c3c3cef5688c3823fcde078f7954d0754d955ea74356f20adcf7e6f45fc73f06d 0.33.8-comics-downloader.tar.gz
"
diff --git a/testing/commoncpp/APKBUILD b/testing/commoncpp/APKBUILD
new file mode 100644
index 00000000000..33ae399f940
--- /dev/null
+++ b/testing/commoncpp/APKBUILD
@@ -0,0 +1,47 @@
+# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=commoncpp
+pkgver=7.0.1
+pkgrel=1
+pkgdesc="Class framework designed for telephony applications"
+url="https://www.gnu.org/software/commoncpp/"
+arch="all"
+license="GPL-3.0-or-later"
+makedepends="cmake samurai openssl-dev>3"
+subpackages="$pkgname-dev $pkgname-doc $pkgname-tools"
+source="https://git.savannah.gnu.org/cgit/commoncpp.git/snapshot/commoncpp-$pkgver.tar.gz"
+
+build() {
+ cmake -G Ninja -B build \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=True \
+ -DCMAKE_BUILD_TYPE=MinSizeRel \
+ -DBUILD_TESTING=ON
+ cmake --build build
+}
+
+check() {
+ cd build/test
+ for test in test-*; do
+ echo "Running test $test"
+ ./$test
+ done
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+dev() {
+ default_dev
+ amove usr/share/ucommon
+}
+
+tools() {
+ amove usr/bin
+}
+
+sha512sums="
+8c16cd3bc498af13545529801213e7a1f2e19ce2a2de38887a6d85e5768d2f2aed703d56dcb1c520d0fb3df54b8f8be8ba24821ac1b8d26c31962a2806b796b7 commoncpp-7.0.1.tar.gz
+"
diff --git a/testing/compiz/APKBUILD b/testing/compiz/APKBUILD
new file mode 100644
index 00000000000..7032b592eec
--- /dev/null
+++ b/testing/compiz/APKBUILD
@@ -0,0 +1,107 @@
+# Maintainer: leso-kn <info@lesosoftware.com>
+pkgname=compiz
+pkgver=0.9.14.2
+pkgrel=3
+pkgdesc="OpenGL window and compositing manager"
+url="http://www.compiz.org/"
+arch="all"
+depends_dev="
+ cython
+ dbus-glib-dev
+ glu-dev
+ gtk+3.0-dev
+ intltool
+ libjpeg-turbo-dev
+ libnotify-dev
+ libpng-dev
+ librsvg-dev
+ libsm-dev
+ libxext-dev
+ libxi-dev
+ libxinerama-dev
+ libwnck3-dev
+ mesa-dev
+ metacity-dev
+ protobuf-dev
+ py3-setuptools
+ python3-dev
+ startup-notification-dev
+ "
+makedepends="
+ $depends_dev
+ boost-dev
+ cairo-dev
+ cmake
+ glibmm-dev
+ gtest-dev
+ libice-dev
+ libx11-dev
+ libxcomposite-dev
+ libxcursor-dev
+ libxdamage-dev
+ libxml2-dev
+ libxrandr-dev
+ libxslt-dev
+ pango-dev
+ py3-setuptools
+ samurai
+ xz
+ "
+subpackages="
+ $pkgname-dev:_dev
+ $pkgname-utils:_utils:noarch
+ $pkgname-lang
+ $pkgname-pyc
+ "
+license=MIT
+source="$pkgname-$pkgver.tar.xz::https://launchpad.net/compiz/${pkgver%.*}/$pkgver/+download/compiz-$pkgver.tar.xz
+ basename.patch
+ boost.patch
+ gtest.patch
+ libgen.patch
+ opengl.patch
+ protobuf.patch
+ startup-notification-long.patch
+ "
+
+build() {
+ CFLAGS="$CFLAGS -O2 -flto=auto" \
+ CXXFLAGS="$CXXFLAGS -O2 -flto=auto" \
+ cmake -S . -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCOMPIZ_WERROR=OFF
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+_dev() {
+ default_dev
+ amove usr/share/cmake-*
+ amove usr/share/compiz/cmake
+ amove usr/share/compiz/xslt
+}
+
+_utils() {
+ depends="py3-cairo"
+ pkgdesc="$pkgdesc (development utilities)"
+
+ amove usr/bin/ccsm
+}
+sha512sums="
+6d064c65be2af5a9676021d35ade64d262f1ddff0e974bd711805b6975d99697bb188f4a13d919b6f0f26a49544305d397d6c74e790b7672caeffc38f74ab145 compiz-0.9.14.2.tar.xz
+2d749f3e384e43454c7c9f4cf16c5289905142d5b14ced2f7a8e173a282e7a4b49e32c106d34d77f9c201f81dfb0bb92090680d9c5250f3571e136b28626c940 basename.patch
+669c32ad7e4428dbbc20bcc8f99764f2c0a28b0641b094fa89abcdf760df82d3fddaf1ac6b0596d0a80c1fe81e641c0ad64b550b93a6dfdf7f4759d687840a8f boost.patch
+2bbc6456deb85474416049eed194d5df7ec6c445f61c8f691f05f86cfee761cb634011fa658f2cd04c6740fea00400d536437bc7f210730f6651c490e96cb6c9 gtest.patch
+1b3ada1f7fe818cadff8729a3778f161776be4641e1bf36a2ab185921fbcff2e64b9a1d2576441913c7561e1d327612ebdd4a20fde9941a57b3f32e7084f444c libgen.patch
+aa6b4ba66b512d8cb09b17cd7e30a0ac2ed64ed11ef17613587c1b16c8c6146b2b526aba580b04db03f5b653c4c08ba0e7c57f2edd732a535db5da9f61c7b8f5 opengl.patch
+9dd0d4c2361fd56645d2f7b634dee32f1d44a67d36b53e550108acc78a8400bfd3c57132a8a029e9884b9f05cdd3a7533c65355d0a3dd80564544931eaced258 protobuf.patch
+2258ab2cf9cea0f3b16c0054b5471e89c11eb75b2dc337e4a2ad63d443435668f383e89e08903085ffc3de78816c41e1d3104e987d792fdf801be85e779faac3 startup-notification-long.patch
+"
diff --git a/testing/compiz/basename.patch b/testing/compiz/basename.patch
new file mode 100644
index 00000000000..fd51d5a825b
--- /dev/null
+++ b/testing/compiz/basename.patch
@@ -0,0 +1,25 @@
+diff --git a/plugins/colorfilter/src/colorfilter.cpp b/plugins/colorfilter/src/colorfilter.cpp
+index ca7eb41..b7004b5 100644
+--- a/plugins/colorfilter/src/colorfilter.cpp
++++ b/plugins/colorfilter/src/colorfilter.cpp
+@@ -262,7 +262,7 @@ ColorfilterScreen::loadFilters ()
+ loaded = 0;
+ for (int i = 0; i < count; i++)
+ {
+- name = CompString (basename (filters.at (i).s ().c_str ()));
++ name = CompString (basename ((char*)filters.at (i).s ().c_str ()));
+ if (boost::algorithm::ends_with (name, ".frag"))
+ name.erase (name.end () - 5, name.end ());
+ file = filters.at (i).s ();
+diff --git a/compizconfig/libcompizconfig/src/main.c b/compizconfig/libcompizconfig/src/main.c
+index 1664d40..0029739 100644
+--- a/compizconfig/libcompizconfig/src/main.c
++++ b/compizconfig/libcompizconfig/src/main.c
+@@ -34,6 +34,7 @@
+ #include <math.h>
+ #include <errno.h>
+ #include <assert.h>
++#include <libgen.h>
+
+ #include <ccs.h>
+
diff --git a/testing/compiz/boost.patch b/testing/compiz/boost.patch
new file mode 100644
index 00000000000..96c2ed9388c
--- /dev/null
+++ b/testing/compiz/boost.patch
@@ -0,0 +1,27 @@
+
+diff --git a/src/timer/src/timer.cpp b/src/timer/src/timer.cpp
+index fb6a7ec..61221be 100644
+--- a/src/timer/src/timer.cpp
++++ b/src/timer/src/timer.cpp
+@@ -168,7 +168,7 @@ PrivateTimer::PrivateTimer () :
+ mMaxTime (0),
+ mMinDeadline (0),
+ mMaxDeadline (0),
+- mCallBack (NULL)
++ mCallBack ([]() -> int { return 0; })
+ {
+ }
+
+diff --git a/plugins/mousepoll/src/mousepoll.cpp b/plugins/mousepoll/src/mousepoll.cpp
+index 7b7e717..147a591 100644
+--- a/plugins/mousepoll/src/mousepoll.cpp
++++ b/plugins/mousepoll/src/mousepoll.cpp
+@@ -201,7 +201,7 @@ MousePoller::getPosition ()
+ MousePoller::MousePoller () :
+ mActive (false),
+ mPoint (0, 0),
+- mCallback (NULL)
++ mCallback ([](const CompPoint &) { })
+ {
+ }
+
diff --git a/testing/compiz/gtest.patch b/testing/compiz/gtest.patch
new file mode 100644
index 00000000000..37eac2d8f57
--- /dev/null
+++ b/testing/compiz/gtest.patch
@@ -0,0 +1,101 @@
+diff --git a/compizconfig/gsettings/mocks/CMakeLists.txt b/compizconfig/gsettings/mocks/CMakeLists.txt
+index 14fe51e..d105bb1 100644
+--- a/compizconfig/gsettings/mocks/CMakeLists.txt
++++ b/compizconfig/gsettings/mocks/CMakeLists.txt
+@@ -8,7 +8,7 @@ if (GLIB_FOUND)
+ ${CMAKE_CURRENT_SOURCE_DIR}/../gsettings_backend_shared
+ ${GLIB_INCLUDE_DIRS})
+
+- set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
++ set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14")
+
+ add_library (compizconfig_ccs_gsettings_wrapper_mock STATIC
+ ${CMAKE_CURRENT_SOURCE_DIR}/ccs_gsettings_wrapper_mock.cpp
+diff --git a/compizconfig/gsettings/tests/CMakeLists.txt b/compizconfig/gsettings/tests/CMakeLists.txt
+index 9a81a5d..2e3bbb0 100644
+--- a/compizconfig/gsettings/tests/CMakeLists.txt
++++ b/compizconfig/gsettings/tests/CMakeLists.txt
+@@ -16,7 +16,7 @@ pkg_check_modules (COMPIZCONFIG_TEST_GSETTINGS gio-2.0 glib-2.0)
+
+ if (COMPIZCONFIG_TEST_GSETTINGS_FOUND)
+
+- set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
++ set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14")
+
+ link_directories (${CMAKE_CURRENT_BINARY_DIR}/../../libcompizconfig/tests)
+ link_directories (${CMAKE_CURRENT_BINARY_DIR}/../testenvironments)
+diff --git a/compizconfig/integration/gnome/gsettings/tests/CMakeLists.txt b/compizconfig/integration/gnome/gsettings/tests/CMakeLists.txt
+index 683c83f..7778503 100644
+--- a/compizconfig/integration/gnome/gsettings/tests/CMakeLists.txt
++++ b/compizconfig/integration/gnome/gsettings/tests/CMakeLists.txt
+@@ -11,7 +11,7 @@ link_directories (${CMAKE_CURRENT_BINARY_DIR}/../../mocks/libcompizconfig)
+ link_directories (${CMAKE_CURRENT_BINARY_DIR}/../../tests/)
+ link_directories (${CMAKE_CURRENT_BINARY_DIR}/../src/)
+
+-set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
++set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14")
+
+ add_executable (compizconfig_test_ccs_gnome_gsettings_integrated_setting
+ ${CMAKE_CURRENT_SOURCE_DIR}/compizconfig_test_ccs_gnome_gsettings_integrated_setting.cpp)
+diff --git a/compizconfig/integration/gnome/tests/CMakeLists.txt b/compizconfig/integration/gnome/tests/CMakeLists.txt
+index 30fd552..26fdff1 100644
+--- a/compizconfig/integration/gnome/tests/CMakeLists.txt
++++ b/compizconfig/integration/gnome/tests/CMakeLists.txt
+@@ -8,7 +8,7 @@ include_directories (${CMAKE_CURRENT_SOURCE_DIR}/../../../gsettings/mocks)
+ include_directories (${CMAKE_SOURCE_DIR}/compizconfig/tests)
+ link_directories (${CMAKE_INSTALL_PREFIX}/lib)
+
+-set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
++set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14")
+
+ add_library (compizconfig_ccs_mock_gnome_integrated_setting_composition
+ ${CMAKE_CURRENT_SOURCE_DIR}/compizconfig_ccs_mock_gnome_integrated_setting_composition.c)
+diff --git a/compizconfig/libcompizconfig/tests/CMakeLists.txt b/compizconfig/libcompizconfig/tests/CMakeLists.txt
+index a3a42f9..78446f4 100644
+--- a/compizconfig/libcompizconfig/tests/CMakeLists.txt
++++ b/compizconfig/libcompizconfig/tests/CMakeLists.txt
+@@ -9,7 +9,7 @@ link_directories (${CMAKE_CURRENT_BINARY_DIR}/../../mocks/libcompizconfig)
+ link_directories (${CMAKE_CURRENT_BINARY_DIR}/../../tests/)
+ link_directories (${CMAKE_CURRENT_BINARY_DIR}/../src/)
+
+-set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
++set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14")
+
+ add_definitions (-DCONFIGDIR="${COMPIZCONFIG_CONFIG_DIR}")
+
+diff --git a/cmake/CompizCommon.cmake b/cmake/CompizCommon.cmake
+index b567cfc..d06e86b 100644
+--- a/cmake/CompizCommon.cmake
++++ b/cmake/CompizCommon.cmake
+@@ -54,7 +54,7 @@ set (
+
+ # Almost everything is a shared library now, so almost everything needs -fPIC
+ set (COMMON_FLAGS "-fPIC -Wall")
+-set (COMMON_CXX_FLAGS "-std=c++11")
++set (COMMON_CXX_FLAGS "-std=c++14")
+
+ option (COMPIZ_SUBOBJECT_LINKAGE_WARNINGS "Warn about subobject linkage" OFF)
+ if (NOT COMPIZ_SUBOBJECT_LINKAGE_WARNINGS)
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index fcf974f..997d050 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -16,7 +16,6 @@ add_subdirectory( servergrab )
+ IF (COMPIZ_BUILD_TESTING)
+ add_subdirectory( privatescreen/tests )
+ add_subdirectory( wrapsystem/tests )
+-add_subdirectory( plugin )
+ add_subdirectory( option/tests )
+ add_subdirectory( tests )
+ ENDIF (COMPIZ_BUILD_TESTING)
+diff --git a/tests/acceptance-tests/autopilot/CMakeLists.txt b/tests/acceptance-tests/autopilot/CMakeLists.txt
+index 9999379..d6e1f7c 100644
+--- a/tests/acceptance-tests/autopilot/CMakeLists.txt
++++ b/tests/acceptance-tests/autopilot/CMakeLists.txt
+@@ -7,6 +7,3 @@ set (COMPIZ_AUTOPILOT_ACCEPTANCE_TEST_LIBRARIES
+
+ target_link_libraries (compiz_autopilot_acceptance_tests
+ ${COMPIZ_AUTOPILOT_ACCEPTANCE_TEST_LIBRARIES})
+-
+-install (TARGETS compiz_autopilot_acceptance_tests
+- RUNTIME DESTINATION ${exec_prefix})
diff --git a/testing/compiz/libgen.patch b/testing/compiz/libgen.patch
new file mode 100644
index 00000000000..e191dfa6940
--- /dev/null
+++ b/testing/compiz/libgen.patch
@@ -0,0 +1,12 @@
+diff --git a/plugins/colorfilter/src/colorfilter.cpp b/plugins/colorfilter/src/colorfilter.cpp
+index e2711fa..ca7eb41 100644
+--- a/plugins/colorfilter/src/colorfilter.cpp
++++ b/plugins/colorfilter/src/colorfilter.cpp
+@@ -24,6 +24,7 @@
+ #include <fstream>
+ #include <algorithm>
+ #include <boost/algorithm/string.hpp>
++#include <libgen.h>
+
+ using namespace boost::placeholders;
+
diff --git a/testing/compiz/opengl.patch b/testing/compiz/opengl.patch
new file mode 100644
index 00000000000..c8a147da61c
--- /dev/null
+++ b/testing/compiz/opengl.patch
@@ -0,0 +1,60 @@
+diff --git a/plugins/opengl/CMakeLists.txt b/plugins/opengl/CMakeLists.txt
+index 63db12b..2fc6046 100644
+--- a/plugins/opengl/CMakeLists.txt
++++ b/plugins/opengl/CMakeLists.txt
+@@ -21,7 +21,7 @@ include_directories (src/glxtfpbind/include)
+ else (USE_GLES)
+ find_package (OpenGL)
+ if (OPENGL_FOUND)
+- compiz_plugin(opengl PLUGINDEPS composite LIBRARIES ${OPENGL_opengl_LIBRARY} ${OPENGL_glx_LIBRARY} ${INTERNAL_LIBRARIES} dl INCDIRS ${OPENGL_INCLUDE_DIR})
++ compiz_plugin(opengl PLUGINDEPS composite LIBRARIES ${OPENGL_LIBRARIES} ${INTERNAL_LIBRARIES} dl INCDIRS ${OPENGL_INCLUDE_DIR})
+ endif (OPENGL_FOUND)
+ endif (USE_GLES)
+
+diff --git a/cmake/plugin_extensions/CompizOpenGLFixups.cmake b/cmake/plugin_extensions/CompizOpenGLFixups.cmake
+index 8691371..f230ceb 100644
+--- a/cmake/plugin_extensions/CompizOpenGLFixups.cmake
++++ b/cmake/plugin_extensions/CompizOpenGLFixups.cmake
+@@ -4,7 +4,7 @@ if (${COMPIZ_CURRENT_PLUGIN} STREQUAL "opengl")
+ if (USE_GLES)
+ set (PKGCONFIG_LIBS "${OPENGL_egl_LIBRARY} -lGLESv2")
+ else (USE_GLES)
+- set (PKGCONFIG_LIBS "${OPENGL_opengl_LIBRARY} ${OPENGL_glx_LIBRARY}")
++ set (PKGCONFIG_LIBS "${OPENGL_LIBRARIES}")
+ endif (USE_GLES)
+ endif (${COMPIZ_CURRENT_PLUGIN} STREQUAL "opengl")
+
+diff --git a/plugins/opengl/compiz-opengl.pc.in b/plugins/opengl/compiz-opengl.pc.in
+index d8b0b79..12c55c7 100644
+--- a/plugins/opengl/compiz-opengl.pc.in
++++ b/plugins/opengl/compiz-opengl.pc.in
+@@ -8,5 +8,5 @@ Description: Opengl compositing plugin for compiz
+ Version: @VERSION@
+
+ Requires: compiz compiz-composite
+-Libs: @PKGCONFIG_LIBS@ -L${libdir} -lopengl
++Libs: -lGL -L${libdir} -lopengl
+ Cflags: @COMPIZ_CFLAGS@ -I${includedir}/compiz
+\ No newline at end of file
+diff --git a/plugins/opengl/src/screen.cpp b/plugins/opengl/src/screen.cpp
+index fcf19ca..39bf966 100644
+--- a/plugins/opengl/src/screen.cpp
++++ b/plugins/opengl/src/screen.cpp
+@@ -40,6 +40,7 @@
+
+ #include <dlfcn.h>
+ #include <math.h>
++#include <GL/glx.h>
+
+ using namespace boost::placeholders;
+
+@@ -1354,8 +1355,7 @@ GLScreen::GLScreen (CompScreen *s) :
+ GL::bufferAge = true;
+ }
+
+- priv->getProcAddress = (GL::GLXGetProcAddressProc)
+- getProcAddress ("glXGetProcAddressARB");
++ priv->getProcAddress = &glXGetProcAddressARB;
+ GL::bindTexImage = (GL::GLXBindTexImageProc)
+ getProcAddress ("glXBindTexImageEXT");
+ GL::releaseTexImage = (GL::GLXReleaseTexImageProc)
diff --git a/testing/compiz/protobuf.patch b/testing/compiz/protobuf.patch
new file mode 100644
index 00000000000..3236f36a96e
--- /dev/null
+++ b/testing/compiz/protobuf.patch
@@ -0,0 +1,12 @@
+diff --git a/compizconfig/libcompizconfig/src/CMakeLists.txt b/compizconfig/libcompizconfig/src/CMakeLists.txt
+index 53d92f3..b740d06 100644
+--- a/compizconfig/libcompizconfig/src/CMakeLists.txt
++++ b/compizconfig/libcompizconfig/src/CMakeLists.txt
+@@ -40,6 +40,7 @@ if (HAVE_PROTOBUF)
+ ${LIBCOMPIZCONFIG_FILES}
+ ${CMAKE_CURRENT_BINARY_DIR}/compizconfig.pb.cc
+ )
++ set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++17")
+ set (LIBCOMPIZCONFIG_LIBRARIES
+ ${LIBCOMPIZCONFIG_LIBRARIES}
+ protobuf)
diff --git a/testing/compiz/startup-notification-long.patch b/testing/compiz/startup-notification-long.patch
new file mode 100644
index 00000000000..1f08d75386c
--- /dev/null
+++ b/testing/compiz/startup-notification-long.patch
@@ -0,0 +1,19 @@
+diff --git a/src/screen.cpp b/src/screen.cpp
+index 9ab20be..89832e0 100644
+--- a/src/screen.cpp
++++ b/src/screen.cpp
+@@ -2322,9 +2322,12 @@ cps::StartupSequence::handleStartupSequenceTimeout ()
+
+ foreach (CompStartupSequence *s, startupSequences)
+ {
++ long sec, usec;
+ sn_startup_sequence_get_last_active_time (s->sequence,
+- &active.tv_sec,
+- &active.tv_usec);
++ &sec,
++ &usec);
++ active.tv_sec = sec;
++ active.tv_usec = usec;
+
+ elapsed = ((((double) now.tv_sec - active.tv_sec) * 1000000.0 +
+ (now.tv_usec - active.tv_usec))) / 1000.0;
diff --git a/testing/compton-conf/APKBUILD b/testing/compton-conf/APKBUILD
index a9412fbb732..c1a7b06823e 100644
--- a/testing/compton-conf/APKBUILD
+++ b/testing/compton-conf/APKBUILD
@@ -2,14 +2,14 @@
# Maintainer:
pkgname=compton-conf
pkgver=0.16.0
-pkgrel=0
+pkgrel=1
pkgdesc="GUI configuration tool for compton X composite manager"
-url="https://github.com/lxde/compton-conf"
+url="https://github.com/lxqt/compton-conf"
options="!check" # No testsuite
arch="all"
license="LGPL-2.1-or-later"
makedepends="cmake libconfig-dev qt5-qtbase-dev qt5-qttools-dev lxqt-build-tools"
-source="compton-conf-$pkgver.tar.gz::https://github.com/lxde/compton-conf/archive/$pkgver.tar.gz"
+source="compton-conf-$pkgver.tar.gz::https://github.com/lxqt/compton-conf/archive/$pkgver.tar.gz"
build() {
if [ "$CBUILD" != "$CHOST" ]; then
diff --git a/testing/conduit/APKBUILD b/testing/conduit/APKBUILD
new file mode 100644
index 00000000000..5ff2795eba7
--- /dev/null
+++ b/testing/conduit/APKBUILD
@@ -0,0 +1,66 @@
+# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=conduit
+pkgver=0.6.0
+pkgrel=2
+pkgdesc="Simple, fast and reliable chat server powered by Matrix"
+url="https://conduit.rs/"
+# ring-rs
+arch="all !ppc64le !s390x"
+license="Apache-2.0"
+makedepends="cargo sqlite-dev cargo-auditable clang17-libclang rocksdb-dev snappy-dev"
+install="$pkgname.pre-install"
+subpackages="$pkgname-openrc"
+source="https://gitlab.com/famedly/conduit/-/archive/v$pkgver/conduit-v$pkgver.tar.gz
+ https://github.com/leso-kn/ring/archive/refs/heads/riscv64-support-0.16.20-compat.tar.gz
+ riscv64-ring.patch.noauto
+ system-sqlite.patch
+
+ conduit.toml
+ conduit.initd
+ conduit.confd
+ "
+builddir="$srcdir/conduit-v$pkgver"
+options="net"
+
+_features="--no-default-features --features=conduit_bin,backend_sqlite,backend_rocksdb"
+
+export ROCKSDB_LIB_DIR="/usr/lib/"
+export SNAPPY_LIB_DIR="/usr/lib/"
+
+prepare() {
+ default_prepare
+ case "$CARCH" in
+ riscv64)
+ # patch out ring dependency for riscv64, upstream investigating
+ patch -p1 -i "$srcdir"/riscv64-ring.patch.noauto
+ ;;
+ esac
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen $_features
+}
+
+check() {
+ cargo test --frozen $_features
+}
+
+package() {
+ install -Dm755 target/release/conduit -t "$pkgdir"/usr/bin
+ install -Dm755 "$srcdir"/conduit.initd "$pkgdir"/etc/init.d/conduit
+ install -Dm644 "$srcdir"/conduit.confd "$pkgdir"/etc/conf.d/conduit
+ install -Dm644 "$srcdir"/conduit.toml "$pkgdir"/etc/conduit/conduit.toml
+}
+
+sha512sums="
+a8267f59ef829a7d3e6f528c9b4487993c7d3c930d6849254c3acf6547b041bceb5435572d937c7b98456f0379673c468528ff49ba5a6bef7590679ab9077c32 conduit-v0.6.0.tar.gz
+a68b9cbf701350c4e77f67f2e979180a9926895debc56764f3376cb6bcc390e310e8fcdd7fb5dc22423d41f65b129b119014400b5365a1b00422a0f0133f887f riscv64-support-0.16.20-compat.tar.gz
+7658cc65aa20c913b077287da7bd913b4dba2feedfcc2c420c8e6685dec573bc764bd82825b222daf042e01138f4207c05c11f97f53e9d9efa0ff51bf2b3cec6 riscv64-ring.patch.noauto
+7bc072043ebedd74ff8805c8b478ecc35f42e81a53d6b2c13d9d8568ad27b64b992d4a9bab9a6ced253971bbd4922f4da814cf2decdf253a2f5a078ced55f834 system-sqlite.patch
+9b77f8934f79215a98c41a859c2b875fd9ee7b618c84316b6be849cb0998ceebcbb3dcbb9b834bda74c32d46722140c3320abd8744c59fe2023fb273c29edc5f conduit.toml
+be411bc3447d684c546249e6fe6573d1c7798c7dfc148564b00b60026592eafa66dec4289a2d336656291ba1b915dd8b1e4df632de44a0ec0b3ad7d971ab062f conduit.initd
+8769e2feb4e0db08d7c6861a9d9110db8b846a496086f697080fda7270c97b506cbb10326cf708cdeab5eda68ec93a5ad86db4db5b9b0ebc189e6a5cefacf3a1 conduit.confd
+"
diff --git a/testing/conduit/conduit.confd b/testing/conduit/conduit.confd
new file mode 100644
index 00000000000..885fc75c39b
--- /dev/null
+++ b/testing/conduit/conduit.confd
@@ -0,0 +1,5 @@
+# Configuration file for conduit
+
+supervisor=supervise-daemon
+
+export CONDUIT_CONFIG=/etc/conduit/conduit.toml
diff --git a/testing/conduit/conduit.initd b/testing/conduit/conduit.initd
new file mode 100644
index 00000000000..66ebb705b2b
--- /dev/null
+++ b/testing/conduit/conduit.initd
@@ -0,0 +1,18 @@
+#!/sbin/openrc-run
+
+command="/usr/bin/conduit"
+command_user="conduit:conduit"
+command_background=true
+pidfile="/run/$RC_SVCNAME.pid"
+
+output_log="/var/log/conduit.log"
+error_log="/var/log/conduit.log"
+
+depend() {
+ need net
+}
+
+start_pre() {
+ checkpath -d -m 0755 -o "$command_user" /var/lib/conduit
+ checkpath -f -m 0644 -o "$command_user" "$output_log"
+}
diff --git a/testing/conduit/conduit.pre-install b/testing/conduit/conduit.pre-install
new file mode 100644
index 00000000000..cac0ec13e06
--- /dev/null
+++ b/testing/conduit/conduit.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S conduit 2>/dev/null
+adduser -S -D -H -h /var/lib/conduit -s /sbin/nologin -G conduit -g conduit conduit 2>/dev/null
+
+exit 0
diff --git a/testing/conduit/conduit.toml b/testing/conduit/conduit.toml
new file mode 100644
index 00000000000..5b5dfcbb28b
--- /dev/null
+++ b/testing/conduit/conduit.toml
@@ -0,0 +1,50 @@
+[global]
+# The server_name is the pretty name of this server. It is used as a suffix for user
+# and room ids. Examples: matrix.org, conduit.rs
+
+# The Conduit server needs all /_matrix/ requests to be reachable at
+# https://your.server.name/ on port 443 (client-server) and 8448 (federation).
+
+# If that's not possible for you, you can create /.well-known files to redirect
+# requests. See
+# https://matrix.org/docs/spec/client_server/latest#get-well-known-matrix-client
+# and
+# https://matrix.org/docs/spec/server_server/r0.1.4#get-well-known-matrix-server
+# for more information
+
+# YOU NEED TO EDIT THIS
+#server_name = "your.server.name"
+
+# This is the only directory where Conduit will save its data
+database_path = "/var/lib/conduit/"
+database_backend = "rocksdb"
+
+# The port Conduit will be running on. You need to set up a reverse proxy in
+# your web server (e.g. apache or nginx), so all requests to /_matrix on port
+# 443 and 8448 will be forwarded to the Conduit instance running on this port
+# Docker users: Don't change this, you'll need to map an external port to this.
+port = 6167
+
+# Max size for uploads
+max_request_size = 20_000_000 # in bytes
+
+# Enables registration. If set to false, no users can register on this server.
+allow_registration = true
+
+allow_federation = true
+allow_check_for_updates = false
+
+# Enable the display name lightning bolt on registration.
+enable_lightning_bolt = true
+
+# Servers listed here will be used to gather public keys of other servers.
+# Generally, copying this exactly should be enough. (Currently, Conduit doesn't
+# support batched key requests, so this list should only contain Synapse
+# servers.)
+trusted_servers = ["matrix.org"]
+
+#max_concurrent_requests = 100 # How many requests Conduit sends to other servers at the same time
+#log = "warn,state_res=warn,rocket=off,_=off,sled=off"
+
+address = "127.0.0.1" # This makes sure Conduit can only be reached using the reverse proxy
+#address = "0.0.0.0" # If Conduit is running in a container, make sure the reverse proxy (ie. Traefik) can reach it.
diff --git a/testing/conduit/riscv64-ring.patch.noauto b/testing/conduit/riscv64-ring.patch.noauto
new file mode 100644
index 00000000000..86b51b8147a
--- /dev/null
+++ b/testing/conduit/riscv64-ring.patch.noauto
@@ -0,0 +1,52 @@
+Required for riscv64 build.
+
+Upstream conduit needs to upgrade to patched versions of ring (done).
+This patch can be removed once conduit releases a new version that builds against the patched version of the two library.
+
+diff --git a/Cargo.toml b/Cargo.toml
+index 13ea007..03e7a30 100644
+--- a/Cargo.toml
++++ b/Cargo.toml
+@@ -17,6 +17,9 @@ rust-version = "1.70.0"
+
+ # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
+
++[patch.crates-io]
++ring = { path = "../ring-riscv64-support-0.16.20-compat" }
++
+ [dependencies]
+ # Web framework
+ axum = { version = "0.6.18", default-features = false, features = ["form", "headers", "http1", "http2", "json", "matched-path"], optional = true }
+diff --git a/Cargo.lock b/Cargo.lock
+index 35a4208..17b7e9a 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -2114,15 +2113,12 @@ dependencies = [
+ [[package]]
+ name = "ring"
+ version = "0.16.20"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "3053cf52e236a3ed746dfc745aa9cacf1b791d846bdaf412f60a8d7d6e17c8fc"
+ dependencies = [
+ "cc",
++ "getrandom 0.2.10",
+ "libc",
+- "once_cell",
+ "spin",
+ "untrusted",
+- "web-sys",
+ "winapi",
+ ]
+
+@@ -2676,9 +2672,9 @@ dependencies = [
+
+ [[package]]
+ name = "spin"
+-version = "0.5.2"
++version = "0.9.8"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d"
++checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67"
+
+ [[package]]
+ name = "spki"
diff --git a/testing/conduit/system-sqlite.patch b/testing/conduit/system-sqlite.patch
new file mode 100644
index 00000000000..348adc3770a
--- /dev/null
+++ b/testing/conduit/system-sqlite.patch
@@ -0,0 +1,25 @@
+diff --git a/Cargo.lock b/Cargo.lock
+index e773892..d69f3d9 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -1331,7 +1331,6 @@ version = "0.25.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "29f835d03d717946d28b1d1ed632eb6f0e24a299388ee623d0c23118d3e8a7fa"
+ dependencies = [
+- "cc",
+ "pkg-config",
+ "vcpkg",
+ ]
+diff --git a/Cargo.toml b/Cargo.toml
+index 7dc6448..344e2e9 100644
+--- a/Cargo.toml
++++ b/Cargo.toml
+@@ -71,7 +71,7 @@ opentelemetry = { version = "0.18.0", features = ["rt-tokio"] }
+ opentelemetry-jaeger = { version = "0.17.0", features = ["rt-tokio"] }
+ tracing-opentelemetry = "0.18.0"
+ lru-cache = "0.1.2"
+-rusqlite = { version = "0.29.0", optional = true, features = ["bundled"] }
++rusqlite = { version = "0.29.0", optional = true }
+ parking_lot = { version = "0.12.1", optional = true }
+ crossbeam = { version = "0.8.1", optional = true }
+ num_cpus = "1.13.0"
diff --git a/testing/confy/APKBUILD b/testing/confy/APKBUILD
deleted file mode 100644
index 8d869620223..00000000000
--- a/testing/confy/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Contributor: Paper <paper@tilde.institute>
-# Maintainer: Paper <paper@tilde.institute>
-pkgname=confy
-pkgver=0.5.4
-pkgrel=2
-pkgdesc="Conferences schedule viewer for GNOME"
-url="https://confy.kirgroup.net/"
-license="GPL-3.0-or-later"
-arch="noarch !s390x !riscv64" # blocked by libhandy1
-depends="
- gtk+3.0
- py3-gobject3
- py3-icalendar
- libhandy1
- libnotify
- "
-makedepends="
- gettext-dev
- glib-dev
- meson
- "
-source="$pkgname-$pkgver.tar.gz::https://git.sr.ht/~fabrixxm/confy/archive/$pkgver.tar.gz"
-options="!check" # no tests
-subpackages="$pkgname-lang"
-
-build() {
- abuild-meson . output
- meson compile ${JOBS:+-j ${JOBS}} -C output
-}
-
-package() {
- DESTDIR="$pkgdir" meson install -C output
-}
-
-sha512sums="6a93f0a61425c762a566541fb0ee0fc9d5d53180d196636ef2ae54e3c0bd677fab5b191a6a86eb3bf0379c22abdfcdfb1bb223e9963a33c075dae36119f95826 confy-0.5.4.tar.gz"
diff --git a/testing/conntracct/APKBUILD b/testing/conntracct/APKBUILD
index ff148d709cb..3923e50b00b 100644
--- a/testing/conntracct/APKBUILD
+++ b/testing/conntracct/APKBUILD
@@ -2,13 +2,13 @@
# Maintainer: Mark Pashmfouroush <mark@markpash.me>
pkgname=conntracct
pkgver=0.2.7
-pkgrel=7
+pkgrel=23
pkgdesc="Tool for extracting network flow information from Linux hosts"
url="https://github.com/ti-mo/conntracct"
license="Apache-2.0"
arch="all"
options="net !check" # can't load and test BPF probes in CI
-makedepends="go sudo libcap mage"
+makedepends="go mage"
install="$pkgname.pre-install"
subpackages="$pkgname-openrc"
source="
@@ -16,8 +16,13 @@ source="
conntracct.confd
conntracct.initd
dont-run-setcap.patch
+ fix-cgo.patch
"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
build() {
mage build
}
@@ -35,11 +40,12 @@ package() {
install -Dm755 "$srcdir"/conntracct.initd "$pkgdir"/etc/init.d/conntracct
install -Dm755 "$builddir"/build/conntracct "$pkgdir"/usr/bin/conntracct
install -d "$pkgdir"/etc/conntracct
-
- setcap cap_sys_admin,cap_net_admin,cap_dac_override,cap_sys_resource+eip "$pkgdir"/usr/bin/conntracct
}
-sha512sums="f018116dbeb937a5e308fa05dcbe9633ee1227a3bdce6c946cca1c5d73bb463c0085835c042becc62f7ad597b243c470c06e9712a1dffb844c4c858615da09af conntracct-0.2.7.tar.gz
+sha512sums="
+f018116dbeb937a5e308fa05dcbe9633ee1227a3bdce6c946cca1c5d73bb463c0085835c042becc62f7ad597b243c470c06e9712a1dffb844c4c858615da09af conntracct-0.2.7.tar.gz
e2474f6a0fd86014ec87c662cbb3f51a906e3d5905ad7d77e557a3c42c1efaeace40dd0e3811c75536bb6b031be68453e7e945786ef1af158398424fba5213a8 conntracct.confd
-5b1c44b43be54674e9d17d64677db700820144264dfd40a77389776f56fa8b8672f13c6b1d1dfc426037cc98298053e1364faaf9293c15c45c4acb24a653f78b conntracct.initd
-911a1e8d761071c2c8c077b7b6306c11aa318a671576ccc14486d70118a15eab4850257996f991b92e462b0897ac6e917007009696cd32885c344ffa5966c2e4 dont-run-setcap.patch"
+6654dc698e93e384b72186454494fe5df92ad99d915b60b58301e75e31eaac532614b7e7856a36d7be487fae5f3c4fbd9fae1ef6df2ff83cee91f5e412240398 conntracct.initd
+911a1e8d761071c2c8c077b7b6306c11aa318a671576ccc14486d70118a15eab4850257996f991b92e462b0897ac6e917007009696cd32885c344ffa5966c2e4 dont-run-setcap.patch
+2d27248ac1499cb1f240b3290c31cdfec6e360fb34e158b1578013742d1919df8f938a3efab5b52a739331eeff1d766f046c1dd8a0d752a8a7b2d620bc323f3f fix-cgo.patch
+"
diff --git a/testing/conntracct/conntracct.initd b/testing/conntracct/conntracct.initd
index 9f417132c7d..63cd34d5101 100644
--- a/testing/conntracct/conntracct.initd
+++ b/testing/conntracct/conntracct.initd
@@ -6,6 +6,7 @@ command=/usr/bin/conntracct
command_args="$ARGS"
command_user="conntracct:conntracct"
supervisor="supervise-daemon"
+capabilities="^cap_sys_admin,^cap_net_admin,^cap_dac_override,^cap_sys_resource"
depend() {
need net
diff --git a/testing/conntracct/fix-cgo.patch b/testing/conntracct/fix-cgo.patch
new file mode 100644
index 00000000000..19d83dc1b77
--- /dev/null
+++ b/testing/conntracct/fix-cgo.patch
@@ -0,0 +1,10 @@
+--- a/magefile.go
++++ b/magefile.go
+@@ -18,7 +18,6 @@
+
+ var (
+ buildEnv = map[string]string{
+- "CGO_ENABLED": "0",
+ }
+
+ build = func() error {
diff --git a/testing/consolation/APKBUILD b/testing/consolation/APKBUILD
deleted file mode 100644
index db7dea9d82e..00000000000
--- a/testing/consolation/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Contributor: Danct12 <danct12@disroot.org>
-# Maintainer: Danct12 <danct12@disroot.org>
-pkgname=consolation
-pkgver=0.0.8
-pkgrel=0
-pkgdesc="Libinput-based console pointer support for copy-paste"
-arch="all"
-url="https://salsa.debian.org/consolation-team/consolation"
-license="MIT GPL-2.0-only"
-source="https://deb.debian.org/debian/pool/main/c/consolation/consolation_$pkgver.orig.tar.xz
- consolation.initd"
-makedepends="linux-headers libinput-dev eudev-dev libevdev-dev"
-subpackages="$pkgname-doc"
-
-build() {
- ./configure --prefix=/usr --sbindir=/usr/sbin
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir/" install
- install -Dm755 "$srcdir/consolation.initd" \
- "$pkgdir/etc/init.d/consolation"
-}
-
-sha512sums="1a2a55ae1fe1d39237d63554c28f65c66cdc3c22e65437c4383418e1fe63ab7eff4591ee1afbd0303d19a388f7cc9894f83235b35ae6b9b6d69762ce48e46287 consolation_0.0.8.orig.tar.xz
-7cdfcf71d4e8fa9ed4b9d42f3cd40fdd4fee68b268dda5a1e2743fe44eea7cbb46c947181c83fae070fbfe4fd3af6f040d409a1ee62f8ba972fb00f0de7ec726 consolation.initd"
diff --git a/testing/consolation/consolation.initd b/testing/consolation/consolation.initd
deleted file mode 100644
index 66319a2b302..00000000000
--- a/testing/consolation/consolation.initd
+++ /dev/null
@@ -1,29 +0,0 @@
-#!/sbin/openrc-run
-
-cmd=/usr/sbin/consolation
-cmd_args="--no-daemon"
-pid=/run/consolation.pid
-description="Linux Console Pointer Interface"
-
-depend() {
- after bootmisc
-}
-
-start() {
- ebegin "Starting Consolation"
- start-stop-daemon --start --exec $cmd --background \
- --pidfile $pid --make-pidfile -- $cmd_args
- eend $?
-}
-
-stop() {
- ebegin "Stopping Consolation"
- start-stop-daemon --stop --exec $cmd
- eend $?
-}
-
-restart() {
- stop
- start
-}
-
diff --git a/testing/console_bridge/APKBUILD b/testing/console_bridge/APKBUILD
index d3562291e3e..7848e69a22b 100644
--- a/testing/console_bridge/APKBUILD
+++ b/testing/console_bridge/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Russ Webber <russ@rw.id.au>
# Maintainer: Russ Webber <russ@rw.id.au>
pkgname=console_bridge
-pkgver=1.0.1
+pkgver=1.0.2
pkgrel=0
pkgdesc="Logging that seamlessly pipes into rosconsole/rosout for ROS-dependent packages."
url="https://github.com/ros/console_bridge"
@@ -34,4 +34,6 @@ package() {
make DESTDIR="$pkgdir" install
}
-sha512sums="913b7ee1d5401c6324eaaab1f8a54d5ff6df4eedb119a1cd00712f223750d69313047344aec5887920497c7b456cf6cb88e5f756bfbbb5ed8223ec758cdfd021 console_bridge-1.0.1.tar.gz"
+sha512sums="
+ed427da8e59f9629f8d70e0a14415f88177c06fbaf7334bee56135dde91d19a1b54f5c9c668e0fd68314ab8dfd61446a174b9f528304decc5d4626a7c98882cb console_bridge-1.0.2.tar.gz
+"
diff --git a/testing/consul-replicate/APKBUILD b/testing/consul-replicate/APKBUILD
index 5d069fe0ee2..e41e1d73981 100644
--- a/testing/consul-replicate/APKBUILD
+++ b/testing/consul-replicate/APKBUILD
@@ -2,31 +2,32 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=consul-replicate
pkgver=0.4.0
-pkgrel=8
+pkgrel=23
pkgdesc="Consul cross-DC KV replication daemon"
url="https://www.consul.io/"
arch="all"
license="MPL-2.0"
-depends=""
makedepends="go"
-source="$pkgname-$pkgver.tar.gz::https://github.com/hashicorp/$pkgname/archive/v$pkgver.tar.gz"
-builddir="$srcdir/$pkgname-$pkgver"
+source="$pkgname-$pkgver.tar.gz::https://github.com/hashicorp/consul-replicate/archive/v$pkgver.tar.gz"
-build() {
- cd "$builddir"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+export GO111MODULE=off
+build() {
mkdir -p "$builddir/src/github.com/hashicorp"
- ln -s "$builddir" "$builddir/src/github.com/hashicorp/$pkgname"
+ ln -sf "$builddir" "$builddir/src/github.com/hashicorp/$pkgname"
cd "$builddir/src/github.com/hashicorp/$pkgname"
- GOPATH="$builddir" GO111MODULE=off go build -v -o bin/$pkgname
+ GOPATH="$builddir" go build -v -o bin/$pkgname
}
package() {
- cd "$builddir"
-
# Main binary
install -m750 -D bin/$pkgname "$pkgdir"/usr/bin/$pkgname
}
-sha512sums="960f8a54890932663d832247e2f9eec536a6e4f21e3e1f602399e9465cbb355eb2e4dcbc198bd2362442088c1912664b0640b59ce099c988508f4715b73fbcd7 consul-replicate-0.4.0.tar.gz"
+sha512sums="
+960f8a54890932663d832247e2f9eec536a6e4f21e3e1f602399e9465cbb355eb2e4dcbc198bd2362442088c1912664b0640b59ce099c988508f4715b73fbcd7 consul-replicate-0.4.0.tar.gz
+"
diff --git a/testing/contour/APKBUILD b/testing/contour/APKBUILD
new file mode 100644
index 00000000000..288b1c7cc54
--- /dev/null
+++ b/testing/contour/APKBUILD
@@ -0,0 +1,82 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=contour
+pkgver=0.4.3.6442
+pkgrel=0
+pkgdesc="Modern C++ Terminal Emulator"
+url="https://contour-terminal.org"
+arch="x86_64 " # aarch64 fails due to QOpenGLFunctions_3_3_Core, rest lack libunicode
+license="Apache-2.0"
+makedepends="
+ boxed-cpp-dev
+ catch2-3
+ cmake
+ extra-cmake-modules
+ fmt-dev
+ harfbuzz-dev
+ libunicode-dev
+ libutempter-dev
+ libxcb-dev
+ msgsl
+ ncurses
+ ninja
+ qt6-qt5compat-dev
+ qt6-qtbase-dev
+ qt6-qtdeclarative-dev
+ qt6-qtmultimedia-dev
+ range-v3-dev
+ yaml-cpp-dev
+"
+subpackages="
+ $pkgname-doc
+ $pkgname-fish-plugin:_fish:noarch
+ $pkgname-zsh-plugin:_zsh:noarch
+"
+source="$pkgname-$pkgver.tar.gz::https://github.com/contour-terminal/contour/archive/refs/tags/v$pkgver.tar.gz"
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DCONTOUR_QT_VERSION=6 \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCONTOUR_INSTALL_TOOLS=ON \
+ -DCONTOUR_TESTING=ON \
+ -DCRISPY_TESTING=ON \
+ -DLIBTERMINAL_TESTING=ON
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build -C Release --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+
+ rm "$pkgdir"/usr/share/contour/README.md "$pkgdir"/usr/share/contour/shell-integration/shell-integration.tcsh
+
+ mkdir -p "$pkgdir"/usr/share/licenses/"$pkgname"
+ mv "$pkgdir"/usr/share/contour/LICENSE.txt "$pkgdir"/usr/share/licenses/"$pkgname"/LICENSE
+}
+
+_fish() {
+ pkgdesc="$pkgdesc (fish integration)"
+ depends="$pkgname=$pkgver-r$pkgrel"
+ install_if="$pkgname=$pkgver-r$pkgrel fish"
+
+ mkdir -p "$subpkgdir"/usr/share/fish/plugins/"$pkgname"
+ mv "$pkgdir"/usr/share/contour/shell-integration/shell-integration.fish "$subpkgdir"/usr/share/fish/plugins/"$pkgname"/contour.plugin.fish
+}
+
+_zsh() {
+ pkgdesc="$pkgdesc (zsh integration)"
+ depends="$pkgname=$pkgver-r$pkgrel"
+ install_if="$pkgname=$pkgver-r$pkgrel zsh"
+
+ mkdir -p "$subpkgdir"/usr/share/zsh/plugins/"$pkgname"
+ mv "$pkgdir"/usr/share/contour/shell-integration/shell-integration.zsh "$subpkgdir"/usr/share/zsh/plugins/"$pkgname"/contour.plugin.zsh
+}
+
+sha512sums="
+f0a91fbd5abefbbac0f785bb8f454759568e3daadbad6ff1ade00fccf8b0af94f16747816598c706a698d65ce884a2e9499512942e6f22263ebc654ae6fb6879 contour-0.4.3.6442.tar.gz
+"
diff --git a/testing/contour/libunicode-fix-catch-in-cmake.patch b/testing/contour/libunicode-fix-catch-in-cmake.patch
new file mode 100644
index 00000000000..4bf665cf3e7
--- /dev/null
+++ b/testing/contour/libunicode-fix-catch-in-cmake.patch
@@ -0,0 +1,19 @@
+diff --git a/src/libunicode/CMakeLists.txt b/src/libunicode/CMakeLists.txt
+index 6c5ac20..9fa13a3 100644
+--- a/src/libunicode/CMakeLists.txt
++++ b/src/libunicode/CMakeLists.txt
+@@ -223,10 +223,10 @@ if(LIBUNICODE_TESTING)
+ # supress conversion warnings for Catch2
+ # https://github.com/catchorg/Catch2/issues/2583
+ # https://github.com/SFML/SFML/blob/e45628e2ebc5843baa3739781276fa85a54d4653/test/CMakeLists.txt#L18-L22
+- set_target_properties(Catch2 PROPERTIES COMPILE_OPTIONS "" EXPORT_COMPILE_COMMANDS OFF)
+- set_target_properties(Catch2WithMain PROPERTIES EXPORT_COMPILE_COMMANDS OFF)
+- get_target_property(CATCH2_INCLUDE_DIRS Catch2 INTERFACE_INCLUDE_DIRECTORIES)
+- target_include_directories(Catch2 SYSTEM INTERFACE ${CATCH2_INCLUDE_DIRS})
++ # set_target_properties(Catch2 PROPERTIES COMPILE_OPTIONS "" EXPORT_COMPILE_COMMANDS OFF)
++ # set_target_properties(Catch2WithMain PROPERTIES EXPORT_COMPILE_COMMANDS OFF)
++ # get_target_property(CATCH2_INCLUDE_DIRS Catch2 INTERFACE_INCLUDE_DIRECTORIES)
++ # target_include_directories(Catch2 SYSTEM INTERFACE ${CATCH2_INCLUDE_DIRS})
+
+ target_link_libraries(unicode_test unicode Catch2::Catch2WithMain fmt::fmt-header-only)
+ add_test(unicode_test unicode_test)
diff --git a/testing/convert2json/APKBUILD b/testing/convert2json/APKBUILD
new file mode 100644
index 00000000000..2c0e1eea1a9
--- /dev/null
+++ b/testing/convert2json/APKBUILD
@@ -0,0 +1,41 @@
+# Maintainer: Simon Rupf <simon@rupf.net>
+pkgname=convert2json
+pkgver=0.8.2
+pkgrel=0
+pkgdesc="Utilities to convert CSV, INI, TOML, XML & YAML to JSON, including jq/jaq wrappers."
+url="https://github.com/simonrupf/convert2json"
+arch="all"
+license="MIT"
+depends="jaq"
+makedepends="
+ cargo
+ cargo-auditable
+ clang15-dev
+ "
+source="https://github.com/simonrupf/convert2json/archive/$pkgver/convert2json-$pkgver.tar.gz"
+options="net"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm755 target/release/cq target/release/tq target/release/xq \
+ target/release/yq target/release/csv2json target/release/toml2json \
+ target/release/xml2json target/release/yaml2json \
+ -t "$pkgdir"/usr/bin
+}
+
+sha512sums="
+40e21178f740a2806c6efe20c3e61ef2f2ee097273cf0e78a8cf87dc90eaf395a07241d01359a64087c53fc2be92655003592a1f2dd2a90eba273777a34902e5 convert2json-0.8.2.tar.gz
+"
diff --git a/testing/copyq/APKBUILD b/testing/copyq/APKBUILD
index 1ae0ff0580b..dbab360c200 100644
--- a/testing/copyq/APKBUILD
+++ b/testing/copyq/APKBUILD
@@ -3,40 +3,41 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=copyq
_pkgname=CopyQ
-pkgver=6.1.0
+pkgver=8.0.0
pkgrel=0
pkgdesc="Clipboard manager with searchable and editable history"
url="https://github.com/hluk/CopyQ"
-arch="all !armhf" # qt5
+arch="all !armhf"
license="GPL-3.0-or-later"
-makedepends="cmake extra-cmake-modules libxfixes-dev
- libxtst-dev
- qt5-qtscript-dev qt5-qtsvg-dev qt5-qttools-dev
- qt5-qtx11extras-dev qt5-qtwayland-dev
- knotifications-dev"
+makedepends="
+ cmake
+ extra-cmake-modules
+ knotifications-dev
+ kstatusnotifieritem-dev
+ libxfixes-dev
+ libxtst-dev
+ qt6-qtsvg-dev
+ qt6-qttools-dev
+ qt6-qtwayland-dev
+ samurai
+ "
options="!check" # upstream does not provide check
-subpackages="$pkgname-doc"
+subpackages="$pkgname-doc $pkgname-bash-completion"
source="$pkgname-$pkgver.tar.gz::https://github.com/hluk/$_pkgname/archive/v$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
-prepare() {
- default_prepare
- mkdir "$builddir"/build
-}
-
build() {
- cd "$builddir"/build
- cmake .. \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
- -DCMAKE_INSTALL_PREFIX=/usr
- make
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DWITH_QT6=ON
+ cmake --build build
}
package() {
- cd "$builddir"/build
- make DESTDIR="$pkgdir" install
+ DESTDIR="$pkgdir" cmake --install build
}
sha512sums="
-ba6992f76b53e493a6b8364cea31c4b90ec569692d98d7011ae67f503b3835f0238948e0c62e66bde7ff1221f39f783b63395f4cc318850d9875a4a7fb93f94e copyq-6.1.0.tar.gz
+d5ed5fb8973834999c2b56a0c53de407f9ee704f1d6db60645ec7bdf05fdc93fc69b2b8f6127dd812de6c32e0e3a175db56b2cd6e90da7d031b6e531197b994e copyq-8.0.0.tar.gz
"
diff --git a/testing/coq/APKBUILD b/testing/coq/APKBUILD
index d37c87c022a..0b283a2d358 100644
--- a/testing/coq/APKBUILD
+++ b/testing/coq/APKBUILD
@@ -1,40 +1,70 @@
# Contributor: alpine-mips-patches <info@mobile-stream.com>
# Contributor: omni <omni+alpine@hack.org>
-# Maintainer: alpine-mips-patches <info@mobile-stream.com>
+# Contributor: Jason Gross <jasongross9@gmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=coq
-pkgver=8.15.1
-pkgrel=0
-pkgdesc="A formal proof management system"
+pkgver=8.19.1
+pkgrel=3
+pkgdesc="Formal proof management system"
url="https://coq.inria.fr"
-arch="all !riscv64" # limited by ocaml aport
+# riscv64, loongarch64: ocaml
+# s390x: not useful
+# 32-bit: huge package and nobody would use it there
+arch="all !armhf !armv7 !x86 !s390x !riscv64 !loongarch64"
license="LGPL-2.1-or-later"
-depends="ocaml-runtime"
-makedepends="ocaml ocaml-findlib ocaml-compiler-libs ocaml-zarith dune ocaml-num-dev bash"
+makedepends="
+ bash
+ dune
+ linux-headers
+ ocaml
+ ocaml-compiler-libs
+ ocaml-findlib-dev
+ ocaml-zarith
+ "
options="!check" # many tests in 'make test-suite' fail
subpackages="$pkgname-doc"
source="$pkgname-$pkgver.tar.gz::https://github.com/coq/coq/archive/V$pkgver.tar.gz"
-# 32bit archs
-case "$CARCH" in
-armv7|armhf|mips|x86) options="$options textrels" ;;
-esac
-
build() {
./configure \
-prefix /usr \
- -bytecode-compiler no \
- -coqide no
-
- case "$CARCH" in
- s390x) OCAMLPATH=/usr/lib/ocaml CAML_LD_LIBRARY_PATH=/usr/lib/ocaml/zarith/ make -j1;;
- *) OCAMLPATH=/usr/lib/ocaml CAML_LD_LIBRARY_PATH=/usr/lib/ocaml/zarith/ make;;
- esac
+ -mandir /usr/share/man \
+ -docdir /usr/share/doc \
+ -libdir "$(ocamlc -where)/coq"
+ make dunestrap
+ dune build -p coq,coq-core,coq-stdlib
}
package() {
- make -j1 DESTDIR="$pkgdir" install
+ dune install coq coq-core coq-stdlib \
+ --prefix=/usr \
+ --destdir="$pkgdir" \
+ --mandir=/usr/share/man \
+ --docdir=/usr/share/doc \
+ --libdir="$(ocamlc -where)"
+}
+
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
}
sha512sums="
-8ae7bde19b4c098c0fad4206a349c50c7fc2537cbeae68e03d38020fd73f15df46e248b1e7cbbf297c1ccf44f9dd62b1179148588fcb5d397e30141cca954a3c coq-8.15.1.tar.gz
+ec8379df34ba6e72bcf0218c66fef248b0e4c5c436fb3f2d7dd83a2c5f349dd0874a67484fcf9c0df3e5d5937d7ae2b2a79274725595b4b0065a381f70769b42 coq-8.19.1.tar.gz
"
diff --git a/testing/coreboot-ectool/APKBUILD b/testing/coreboot-ectool/APKBUILD
deleted file mode 100644
index f625ccf8278..00000000000
--- a/testing/coreboot-ectool/APKBUILD
+++ /dev/null
@@ -1,26 +0,0 @@
-# Contributor: Nulo <alpine@nulo.in>
-# Mantainer: Nulo <alpine@nulo.in>
-pkgname=coreboot-ectool
-pkgver=4.14
-pkgrel=0
-pkgdesc="Dumps the RAM of a laptop’s Embedded/Environmental Controller (EC)."
-url="https://www.coreboot.org"
-arch="x86 x86_64" # Uses inline assembly.
-license="GPL-2.0-only"
-options="!check" # No test suite.
-source="https://coreboot.org/releases/coreboot-$pkgver.tar.xz
- fix-makefile.patch"
-builddir="$srcdir/coreboot-$pkgver/util/ectool/"
-
-build() {
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" PREFIX=/usr install
-}
-
-sha512sums="
-14c615472dfe00682e4b0b41b6a04ed3b201395427350f7b53497152f2acc8cbef8144bad06517b413c4076422108bccab2e4732491f5e6fcc4703b14d062b19 coreboot-4.14.tar.xz
-44f16ca9824e873d598d87c39216d3390954dc152f85f59d76b58086abfd0481161778cb08eb72f1f3a3d7022319aaabb96a2f07736782713170f2e760b989dd fix-makefile.patch
-"
diff --git a/testing/coreboot-ectool/fix-makefile.patch b/testing/coreboot-ectool/fix-makefile.patch
deleted file mode 100644
index f0ac8a22f5e..00000000000
--- a/testing/coreboot-ectool/fix-makefile.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-diff --git a/Makefile b/Makefile
-index 1ef74d2..94cf3c0 100644
---- a/Makefile
-+++ b/Makefile
-@@ -4,7 +4,7 @@ CC = gcc
- WERROR=-Werror
- CFLAGS = -O2 -Wall -Wextra -Wshadow $(WERROR)
- PROGRAM = ectool
--INSTALL = /usr/bin/env install
-+INSTALL = /usr/bin/env install -D
- PREFIX = /usr/local
- OS_ARCH = $(shell uname)
-
-@@ -22,7 +22,7 @@ $(PROGRAM): ec.o ectool.o
- $(CC) $(CFLAGS) -o $@ $^ $(LDFLAGS)
-
- install: $(PROGRAM)
-- $(INSTALL) $(PROGRAM) $(PREFIX)/sbin
-+ $(INSTALL) $(PROGRAM) $(DESTDIR)$(PREFIX)/sbin/$(PROGRAM)
-
- clean:
- rm -f *.o $(PROGRAM) junit.xml
diff --git a/testing/coreboot-tools/APKBUILD b/testing/coreboot-tools/APKBUILD
new file mode 100644
index 00000000000..344fc1f0ff2
--- /dev/null
+++ b/testing/coreboot-tools/APKBUILD
@@ -0,0 +1,74 @@
+# Contributor: Nulo <alpine@nulo.in>
+# Maintainer: Adam Thiede <me@adamthiede.com>
+pkgname=coreboot-tools
+pkgver=24.02
+pkgrel=0
+pkgdesc="Tools from the coreboot project"
+url="https://review.coreboot.org/coreboot"
+# coreboot only runs on x86_64 and x86 systems
+arch="x86 x86_64"
+license="GPL-2.0-only"
+
+# All specified dependencies are just for configurator subpackage.
+# Everything else builds with default tooling.
+makedepends="
+ inkscape
+ meson
+ qt5-qtbase-dev
+ qt5-qttools-dev
+ qt5-qtsvg-dev
+ yaml-cpp-dev
+ "
+subpackages="$pkgname-ectool $pkgname-nvramtool $pkgname-nvramtool-doc:nvramtool_doc:noarch $pkgname-ifdtool $pkgname-configurator"
+source="https://coreboot.org/releases/coreboot-$pkgver.tar.xz"
+builddir="$srcdir/coreboot-$pkgver"
+options="!check" # no test suite
+
+build() {
+ make -e -C util/ectool
+ make -e -C util/nvramtool CFLAGS="$CFLAGS -I. -DCMOS_HAL=1"
+ make -e -C util/ifdtool
+ abuild-meson -Db_lto=true util/coreboot-configurator util/coreboot-configurator/output
+ meson compile -C util/coreboot-configurator/output
+}
+
+package() {
+ make -e -C util/ectool PREFIX="$pkgdir/usr" install
+ make -e -C util/nvramtool PREFIX="$pkgdir/usr" install
+ make -e -C util/ifdtool PREFIX="$pkgdir/usr" install
+}
+
+nvramtool() {
+ pkgdesc="Manipulates NVRAM from userspace"
+
+ amove usr/sbin/nvramtool
+}
+
+nvramtool_doc() {
+ pkgdesc="Manipulates NVRAM from userspace (documentation)"
+ install_if="$pkgname-nvramtool=$pkgver-r$pkgrel docs"
+
+ amove usr/share/man/man8/nvramtool*
+ gzip -9n "$subpkgdir"/usr/share/man/man8/*
+}
+
+ectool() {
+ pkgdesc="Dumps the RAM of a laptop’s Embedded/Environmental Controller (EC)"
+
+ amove usr/sbin/ectool
+}
+
+ifdtool() {
+ pkgdesc="Extract and dump Intel Firmware Descriptor information"
+
+ amove usr/bin/ifdtool
+}
+
+configurator() {
+ pkgdesc="Graphical NVRAMtool frontend"
+ DESTDIR="$subpkgdir" meson install --no-rebuild -C $builddir/util/coreboot-configurator/output
+}
+
+sha512sums="
+e73fa1346bccaea66d7cc6b3c336c4e2f46bbcd046202f7981b8e2b5e5b59192dce729e72daa16dc4020c004bbfab2364551718e349d939ade2985519912a377 coreboot-24.02.tar.xz
+"
diff --git a/testing/corectrl/APKBUILD b/testing/corectrl/APKBUILD
index b21e3eb266c..036bcb58094 100644
--- a/testing/corectrl/APKBUILD
+++ b/testing/corectrl/APKBUILD
@@ -1,31 +1,51 @@
# Contributor: Leo <thinkabit.ukim@gmail.com>
# Maintainer:
pkgname=corectrl
-pkgver=1.2.3
-pkgrel=1
+pkgver=1.3.10
+pkgrel=0
pkgdesc="Control your hardware with application profiles"
url="https://gitlab.com/corectrl/corectrl"
-arch="all !armhf" # qt5-qtdeclarative
-arch="$arch !s390x !riscv64" # kauth-dev
+# fails to build
+arch="all !armhf !armv7 !ppc64le !x86 !s390x"
license="GPL-3.0-only"
-depends="procps hwids qt5-qtquickcontrols2 qt5-qtsvg qt5-qtxmlpatterns"
-makedepends="cmake extra-cmake-modules qt5-qtbase-dev kauth-dev karchive-dev
- botan-dev qt5-qtquickcontrols2-dev qt5-qtcharts-dev qt5-qttools-dev qt5-qtsvg-dev"
-source="https://gitlab.com/corectrl/corectrl/-/archive/v$pkgver/corectrl-v$pkgver.tar.gz
+depends="
+ hwdata
+ procps
+ qt5-qtquickcontrols2
+ qt5-qtsvg
+ qt5-qtxmlpatterns
"
-builddir="$srcdir/$pkgname-v$pkgver"
+makedepends="
+ botan-dev
+ cmake
+ fmt-dev
+ polkit-dev
+ pugixml-dev
+ qt5-qtbase-dev
+ qt5-qtcharts-dev
+ qt5-qtquickcontrols2-dev
+ qt5-qtsvg-dev
+ qt5-qttools-dev
+ quazip-dev
+ samurai
+ "
+checkdepends="catch2"
+source="https://gitlab.com/corectrl/corectrl/-/archive/v$pkgver/corectrl-v$pkgver.tar.bz2
+ "
+builddir="$srcdir/corectrl-v$pkgver"
+options="!check" # one version comparison test segfaults
build() {
if [ "$CBUILD" != "$CHOST" ]; then
CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
fi
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
-DBUILD_SHARED_LIBS=True \
-DCMAKE_BUILD_TYPE=None \
- -DBUILD_TESTING=ON \
- $CMAKE_CROSSOPTS .
+ -DBUILD_TESTING="$(want_check && echo ON || echo OFF)" \
+ $CMAKE_CROSSOPTS
cmake --build build
}
@@ -35,9 +55,9 @@ check() {
}
package() {
- DESTDIR="$pkgdir" cmake --build build --target install
+ DESTDIR="$pkgdir" cmake --install build
}
sha512sums="
-47cec510942a8aff7abf375eed0a0061caa477710bed24d3766216c1b1551fbb31917bf3735b534a048e4f299a56537e5aacf4bbea948a8026d0846e045f2ddf corectrl-v1.2.3.tar.gz
+167dc67a57ec2ec710730e9d31a86d7d9fb409806c3be917186501804e5c17f65de87ac404027cc75d1c6c06adc26ac3763312b09253349787ce4ddd45d6696e corectrl-v1.3.10.tar.bz2
"
diff --git a/testing/corerad/APKBUILD b/testing/corerad/APKBUILD
deleted file mode 100644
index dac0bab54e4..00000000000
--- a/testing/corerad/APKBUILD
+++ /dev/null
@@ -1,43 +0,0 @@
-# Contributor: Mark Pashmfouroush <mark@markpash.me>
-# Maintainer: Mark Pashmfouroush <mark@markpash.me>
-pkgname=corerad
-pkgver=1.1.1
-pkgrel=2
-pkgdesc="Extensible and observable IPv6 Neighbor Discovery Protocol router advertisement daemon"
-url="https://corerad.net/"
-license="Apache-2.0"
-arch="all"
-options="net" # Requires net for getting go module dependencies
-makedepends="go libcap"
-install="$pkgname.pre-install"
-subpackages="$pkgname-openrc"
-source="
- $pkgname-$pkgver.tar.gz::https://github.com/mdlayher/corerad/archive/v$pkgver.tar.gz
- corerad.initd
- "
-
-# access denied for ipv6 autoconfiguration
-[ "$CARCH" = "s390x" ] && options="$options !check"
-
-build() {
- make VERSION="$pkgver"
-
- # create a minimal configuration file
- ./cmd/corerad/corerad -init
-}
-
-check() {
- go test ./...
-}
-
-package() {
- install -Dm755 cmd/corerad/corerad "$pkgdir"/usr/sbin/corerad
- setcap cap_net_admin,cap_net_raw+eip "$pkgdir"/usr/sbin/corerad
-
- install -Dm755 "$srcdir"/corerad.initd "$pkgdir"/etc/init.d/corerad
- install -Dm644 corerad.toml "$pkgdir"/etc/corerad/config.toml
-}
-sha512sums="
-7aff5cb9f34a8bc3927af56d1a32e30720f5bd973599cac19c4d800314ca02bf44e168c101b0ef4958804b29f4458f0166f38d0265795c3d4006c7fe8923be61 corerad-1.1.1.tar.gz
-96c40309aa6e81db5e5d136ee2ca9b1c24471acd1b20ff773020d3106dcc82e0fcb4b52112cbcb2b16c45211073b1d19bc0381ef7d93bd1c3cf53745633a22b4 corerad.initd
-"
diff --git a/testing/corerad/corerad.initd b/testing/corerad/corerad.initd
deleted file mode 100644
index 0fd948955ca..00000000000
--- a/testing/corerad/corerad.initd
+++ /dev/null
@@ -1,13 +0,0 @@
-#!/sbin/openrc-run
-
-name=CoreRAD
-description="Extensible and observable IPv6 Neighbor Discovery Protocol router advertisement daemon"
-command=/usr/sbin/corerad
-command_args="-c /etc/corerad/config.toml"
-command_user="corerad:corerad"
-supervisor="supervise-daemon"
-
-depend() {
- need net
- after firewall
-}
diff --git a/testing/corerad/corerad.pre-install b/testing/corerad/corerad.pre-install
deleted file mode 100644
index e87a06abf72..00000000000
--- a/testing/corerad/corerad.pre-install
+++ /dev/null
@@ -1,6 +0,0 @@
-#!/bin/sh
-
-addgroup -S corerad 2>/dev/null
-adduser -S -D -H -s /bin/nologin -G corerad -g corerad corerad 2>/dev/null
-
-exit 0
diff --git a/testing/corkscrew/APKBUILD b/testing/corkscrew/APKBUILD
deleted file mode 100644
index 2f738991c06..00000000000
--- a/testing/corkscrew/APKBUILD
+++ /dev/null
@@ -1,54 +0,0 @@
-# Contributor: Matt Dainty <matt+alpine@bodgit-n-scarper.com>
-# Maintainer:
-pkgname=corkscrew
-pkgver=2.0
-pkgrel=1
-_commit=a94f745b40077172b8fe7d77e2d583b9cf900281
-pkgdesc="Tool for tunneling SSH through HTTP proxies"
-url="https://github.com/bryanpkc/corkscrew/"
-arch="all"
-license="GPL"
-depends=""
-makedepends="autoconf automake"
-install=""
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/bryanpkc/corkscrew/archive/$_commit.tar.gz
- corkscrew-2.0-from-debian-readme.patch
- corkscrew-2.0-typo.patch
- corkscrew.1
- "
-
-_builddir="$srcdir"/$pkgname-$_commit
-prepare() {
- local i
- cd "$_builddir"
- for i in $source; do
- case $i in
- *.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
- esac
- done
- aclocal && autoheader && autoconf && automake --add-missing --force || return 1
-}
-
-build() {
- cd "$_builddir"
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- || return 1
- make || return 1
-}
-
-package() {
- cd "$_builddir"
- make DESTDIR="$pkgdir" install || return 1
-
- install -m644 -D "$srcdir"/corkscrew.1 \
- "$pkgdir"/usr/share/man/man1/corkscrew.1 || return 1
-}
-
-sha512sums="3023df4a366d08d131fe3c73c4841c4aed3b257c6deb64c4db2f0f6e210483d7c563937468f8c9e5da8441305951ffccb5bc05da6da24bc0463f1806ad7e6abe corkscrew-2.0.tar.gz
-2514663f2f120c49b7c0d40246ca5fae49f9c27097c17c38992085bc9f4ae3e2f1a749ceaf400b10b4b68c809365a420865fab90fead585949ad440a19f02aeb corkscrew-2.0-from-debian-readme.patch
-197dd0d3de4a026603af8ea4bf8cdf1d25b7555166b817697474961020491b4f181c67e431f340791f22768c28b40262819780c77055ec3d066c60c19f57ac2e corkscrew-2.0-typo.patch
-a59c99056ef4c12dec854ab0b571b9778b78c3d429193c1365ef2c1a37edb478e8d7e7948e830b22dfe3fb724e6be0b6176ac541da1fa5a2678a608f2b025e90 corkscrew.1"
diff --git a/testing/corkscrew/corkscrew-2.0-from-debian-readme.patch b/testing/corkscrew/corkscrew-2.0-from-debian-readme.patch
deleted file mode 100644
index ed92d657443..00000000000
--- a/testing/corkscrew/corkscrew-2.0-from-debian-readme.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/README
-+++ b/README
-@@ -66,7 +66,7 @@
- following line to your ~/.ssh/config file will usually do the trick
- (replace proxy.example.com and 8080 with correct values):
-
-- ProxyCommand /usr/local/bin/corkscrew proxy.example.com 8080 %h %p
-+ ProxyCommand /usr/bin/corkscrew proxy.example.com 8080 %h %p
-
- NOTE: Command line syntax has changed since version 1.5. Please notice
- that the proxy port is NOT optional anymore and is required in the
-@@ -91,7 +91,7 @@
- Now you will have to change the ProxyCommand line in your ~/.ssh/config
- file. Here's an example:
-
-- ProxyCommand /usr/local/bin/corkscrew proxy.work.com 80 %h %p ~/.ssh/myauth
-+ ProxyCommand /usr/bin/corkscrew proxy.work.com 80 %h %p ~/.ssh/myauth
-
- The proxy authentication feature is very new and has not been tested
- extensively so your mileage may vary. If you encounter any problems when
diff --git a/testing/corkscrew/corkscrew-2.0-typo.patch b/testing/corkscrew/corkscrew-2.0-typo.patch
deleted file mode 100644
index 00de90e28da..00000000000
--- a/testing/corkscrew/corkscrew-2.0-typo.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/README
-+++ b/README
-@@ -105,7 +105,7 @@
-
- NOTE: I have had problems using the auth features with Mircosoft Proxy
- server. The problems are sporadic, and I believe that they are related
--to the round-robin setup that I was testing it again. Your mileage may
-+to the round-robin setup that I was testing it against. Your mileage may
- vary.
-
-
diff --git a/testing/corkscrew/corkscrew.1 b/testing/corkscrew/corkscrew.1
deleted file mode 100644
index 1c19c63581f..00000000000
--- a/testing/corkscrew/corkscrew.1
+++ /dev/null
@@ -1,97 +0,0 @@
-.\" Hey, EMACS: -*- nroff -*-
-.\" First parameter, NAME, should be all caps
-.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
-.\" other parameters are allowed: see man(7), man(1)
-.TH CORKSCREW 1 "November 22, 2003"
-.\" Please adjust this date whenever revising the manpage.
-.\"
-.\" Some roff macros, for reference:
-.\" .nh disable hyphenation
-.\" .hy enable hyphenation
-.\" .ad l left justify
-.\" .ad b justify to both left and right margins
-.\" .nf disable filling
-.\" .fi enable filling
-.\" .br insert line break
-.\" .sp <n> insert n+1 empty lines
-.\" for manpage-specific macros, see man(7)
-.SH NAME
-corkscrew \- Tunnel TCP connections through HTTP proxies
-.SH SYNOPSIS
-.B corkscrew
-.BR
-proxy
-.BR
-proxyport
-.BR
-targethost
-.BR
-targetport
-.BR
-[ authfile ]
-.br
-.SH DESCRIPTION
-This manual page documents briefly the
-.BR corkscrew
-command.
-This manual page was written for the Debian distribution
-because the original program does not have a manual page.
-
-corkscrew is a simple tool to tunnel TCP connections through an HTTP
-proxy supporting the CONNECT method. It reads stdin and writes to
-stdout during the connection, just like netcat.
-It can be used for instance to connect to an SSH server running on
-a remote 443 port through a strict HTTPS proxy.
-
-
-.SH PARAMETERS
-
-.TP
-.B proxy
-This is the name of the host running the HTTP proxy.
-.TP
-.B proxyport
-This is the port on which to connect on the proxy.
-.TP
-.B target
-This is the host to reach through the proxy.
-.TP
-.B targetport
-This is the port to connect to on the target host.
-
-.SH COMMON USAGE
-
-The common usage of corkscrew is to put the following line in your
-ssh_config:
-
-ProxyCommand corkscrew proxy proxyport %h %p
-
-This will let your ssh connection go through the proxy with the help
-of corkscrew.
-
-.SH AUTH FILE
-
-The auth file is made of one single line containing your username and
-password in the form:
-
-username:password
-
-You should add the path to your auth file in the proxy command
-described above:
-
-ProxyCommand corkscrew proxy proxyport %h %p auth-file
-
-.SH "SEE ALSO"
-.IX Header "SEE ALSO"
-\&\fIssh_config\fR\|(5)
-
-.PP
-.\" TeX users may be more comfortable with the \fB<whatever>\fP and
-.\" \fI<whatever>\fP escape sequences to invode bold face and italics,
-.\" respectively.
-.SH AUTHOR
-corkscrew was written by Pat Padgett <agroman@agroman.net>.
-Thomas Seyrat <tomasera@debian.org> is the debian maintainer for this
-package. This manual page was written by Laurent Fousse
-<laurent@komite.net>, for the Debian GNU/Linux system (but may be used
-by others).
diff --git a/testing/coventry/APKBUILD b/testing/coventry/APKBUILD
new file mode 100644
index 00000000000..f20d6ff31d1
--- /dev/null
+++ b/testing/coventry/APKBUILD
@@ -0,0 +1,49 @@
+# Maintainer: David Sugar <tychosoft@gmail.com>
+# Contributor: David Sugar <tychosoft@gmail.com>
+pkgname=coventry
+pkgver=0.8.1
+pkgrel=0
+pkgdesc="Residential IP telephony gateway"
+url="https://www.tychosoft.com/tychosoft/coventry/wiki"
+arch="all"
+license="GPL-3.0-or-later"
+makedepends="cmake fmt-dev>=8.1.0 openssl-dev moderncli-dev>=0.8.0 libosip2-dev>=5.3.0 libexosip2-dev>=5.3.0"
+subpackages="$pkgname-doc $pkgname-openrc"
+source="https://www.tychosoft.com/api/packages/tychosoft/generic/coventry/$pkgver/coventry-$pkgver.tar.gz coventry.initd"
+
+build() {
+ cmake \
+ -DCMAKE_INSTALL_SYSCONFDIR:PATH=/etc \
+ -DCMAKE_INSTALL_LOCALSTATEDIR:PATH=/var \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=/usr/lib \
+ -DSERVER_PREFIX_PATH=/var/lib/coventry \
+ -DSERVER_LOGGER_PATH=/var/log/coventry \
+ -DSERVER_CONFIG_FILE=/etc/coventry.conf \
+ -DCMAKE_BUILD_TYPE=Release .
+ make
+}
+
+check() {
+ make test
+}
+
+package() {
+ DESTDIR="$pkgdir" make install
+ strip "$pkgdir"/usr/bin/pbx-*
+ strip "$pkgdir"/usr/sbin/coventry
+ gzip "$pkgdir"/usr/share/man/man*/*
+ install -d -m 750 -g adm "$pkgdir"/var/log/$pkgname
+ install -d -m 700 "$pkgdir"/var/lib/$pkgname
+ install -D -m 700 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
+ install -Dm644 LICENSE.md "$pkgdir"/usr/share/licenses/$pkgname/LICENSE.md
+ install -Dm644 README.md "$pkgdir"/usr/share/doc/$pkgname/README.md
+ install -Dm644 FEATURES.md "$pkgdir"/usr/share/doc/$pkgname/FEATURES.md
+ install -Dm644 AGENTS.md "$pkgdir"/usr/share/doc/$pkgname/AGENTS.md
+ install -Dm644 UTILITIES.md "$pkgdir"/usr/share/doc/$pkgname/UTILITIES.md
+}
+
+sha512sums="
+dfaef6e24d47f0c27a3b2833da3835b479a3e8c1226bb24e48752fcd610e52baf5a30853467bb1ed4dcd170731e8df81b9df6e65d597e5b693b61bdfde1bb664 coventry-0.8.1.tar.gz
+fd601c29764a34d3f8f1102982885a350a7a7f16edcbb8fdb1096b77600c686a87ec2de37ee502c9a7f1494e9b1dd7f8050eb6fe069f2e57ebc0e8da958f9bd3 coventry.initd
+"
diff --git a/testing/coventry/coventry.initd b/testing/coventry/coventry.initd
new file mode 100644
index 00000000000..602dd6ed30e
--- /dev/null
+++ b/testing/coventry/coventry.initd
@@ -0,0 +1,26 @@
+#!/sbin/openrc-run
+
+supervisor=supervise-daemon
+name=coventry
+command="/usr/sbin/coventry"
+pidfile="/run/coventry.pid"
+extra_started_commands="reload"
+
+depend() {
+ use logger dns
+ need net
+ after firewall
+}
+
+stop() {
+ ebegin "Stopping ${RC_SVCNAME}"
+ start-stop-daemon --signal INT --pidfile "${pidfile}"
+ eend $? "Failed to stop ${RC_SVCNAME}"
+}
+
+reload() {
+ ebegin "Reloading ${RC_SVCNAME}"
+ start-stop-daemon --signal HUP --pidfile "${pidfile}"
+ eend $?
+}
+
diff --git a/testing/cowsay/APKBUILD b/testing/cowsay/APKBUILD
index b7b5e86b9bc..04fcc8d1876 100644
--- a/testing/cowsay/APKBUILD
+++ b/testing/cowsay/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Raymond Page <pagerc@gmail.com>
pkgname=cowsay
pkgver=3.04
-pkgrel=1
+pkgrel=2
pkgdesc="Configurable talking cow (and a few other creatures)"
arch="noarch"
url="https://github.com/tnalpgge/rank-amateur-cowsay"
diff --git a/testing/coxeter/APKBUILD b/testing/coxeter/APKBUILD
new file mode 100644
index 00000000000..0dedb2248f4
--- /dev/null
+++ b/testing/coxeter/APKBUILD
@@ -0,0 +1,49 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
+pkgname=coxeter
+pkgver=3.0
+pkgrel=1
+pkgdesc="Tool for studying combinatorial aspects of Coxeter group theory"
+url="http://math.univ-lyon1.fr/~ducloux/coxeter/coxeter3/english/coxeter3_e.html"
+arch="all"
+license="GPL-1.0-only"
+source="https://archive.org/download/coxeter-$pkgver.tar.xz/coxeter-$pkgver.tar.xz
+ add-sagemath-interface.patch
+ makefile
+ test-input
+ test-output"
+subpackages="$pkgname-dev $pkgname-libs"
+
+prepare() {
+ default_prepare
+ cp "$srcdir"/makefile .
+}
+
+build() {
+ export CXXFLAGS="${CXXFLAGS/-Os/-O3}" # gotta go fast
+ make -e
+}
+
+check() {
+ LD_LIBRARY_PATH=. ./coxeter < "$srcdir"/test-input > actual-test-output
+ diff "$srcdir"/test-output actual-test-output
+}
+
+package() {
+ install -Dm755 coxeter "$pkgdir"/usr/bin/coxeter
+ install -Dm755 libcoxeter3.so.0.0.0 "$pkgdir"/usr/lib/libcoxeter3.so.0.0.0
+ ln -s libcoxeter3.so.0.0.0 "$pkgdir"/usr/lib/libcoxeter3.so
+ install -Dm644 -t "$pkgdir"/usr/include/coxeter ./*.h ./*.hpp
+ install -dm755 "$pkgdir"/usr/share/coxeter
+ cp -vR coxeter_matrices "$pkgdir"/usr/share/coxeter/.
+ cp -vR headers "$pkgdir"/usr/share/coxeter/.
+ cp -vR messages "$pkgdir"/usr/share/coxeter/.
+}
+
+sha512sums="
+d7702ec7f84593aa2d6290e9405494f491f4a143be6db763f2a1974baffa6ab5b4cfeec4a0699ba37a547dd20e0c991ce9753778f0fb9a8b03c3a093f6bf7ebc coxeter-3.0.tar.xz
+5c76577ba110ca550756c5149067ed0c8ebfbea01888e922c826b5f919549784de7e0921cae4604221f123586b69740e677da3699f676ba40bd04fbcc0f68382 add-sagemath-interface.patch
+dddce060808349d9849efd7446a139d54be8d57e2012079f96776ac85d9ef197a59d2e2c32ad950ca8cfa0cf1281d1912a31f828702edd923697cd67647f4e80 makefile
+bca860dd0b717ea5cd7ba3213583f07a39f1e33451a53765db444f11a2e59a1e3d1eedb6465f6601dc67bfc30d856a793c6a05f65f53e10651509aeabebaaa91 test-input
+52e7198f6ebeb05b9ddd00a280ab1e168e82f31e2124bebbac84d0bdc35096ab0caaedae7a0e58e25e1b327ed93754261254fc89a1a05589e5fd53282adc4101 test-output
+"
diff --git a/testing/coxeter/add-sagemath-interface.patch b/testing/coxeter/add-sagemath-interface.patch
new file mode 100644
index 00000000000..1158ca46d80
--- /dev/null
+++ b/testing/coxeter/add-sagemath-interface.patch
@@ -0,0 +1,101 @@
+From 0c8eb9cdba9cc54415fc4f808f71f1e3e2323e85 Mon Sep 17 00:00:00 2001
+From: Jeroen Demeyer <jdemeyer@cage.ugent.be>
+Date: Mon, 26 Feb 2018 14:43:08 +0100
+Subject: [PATCH] Add Sage interface
+
+---
+ sage.cpp | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ sage.h | 22 ++++++++++++++++++++++
+ 2 files changed, 77 insertions(+)
+ create mode 100644 sage.cpp
+ create mode 100644 sage.h
+
+diff --git a/sage.cpp b/sage.cpp
+new file mode 100644
+index 0000000..503654d
+--- /dev/null
++++ b/sage.cpp
+@@ -0,0 +1,55 @@
++/*
++ Coxeter version 3.0 Copyright (C) 2009 Mike Hansen
++*/
++
++#include "sage.h"
++
++namespace sage {
++
++ void interval(List<CoxWord>& list, CoxGroup& W, const CoxWord& g, const CoxWord& h)
++
++ /*
++ Return a list of the elements in the Bruhat interval between g and h.
++ Note that this assumes that g and h are in order.
++ */
++ {
++ if (not W.inOrder(g,h)) {
++ return;
++ }
++
++ W.extendContext(h);
++
++ CoxNbr x = W.contextNumber(g);
++ CoxNbr y = W.contextNumber(h);
++
++ BitMap b(W.contextSize());
++ W.extractClosure(b,y);
++
++ BitMap::ReverseIterator b_rend = b.rend();
++ List<CoxNbr> res(0);
++
++ for (BitMap::ReverseIterator i = b.rbegin(); i != b_rend; ++i)
++ if (not W.inOrder(x,*i)) {
++ BitMap bi(W.contextSize());
++ W.extractClosure(bi,*i);
++ CoxNbr z = *i; // andnot will invalidate iterator
++ b.andnot(bi);
++ b.setBit(z); // otherwise the decrement will not be correct
++ } else
++ res.append(*i);
++
++ schubert::NFCompare nfc(W.schubert(),W.ordering());
++ Permutation a(res.size());
++ sortI(res,nfc,a);
++
++ list.setSize(0);
++ for (size_t j = 0; j < res.size(); ++j) {
++ CoxWord w(0);
++ W.schubert().append(w, res[a[j]]);
++ list.append(w);
++ }
++
++ return;
++ }
++
++}
+diff --git a/sage.h b/sage.h
+new file mode 100644
+index 0000000..fed0a7a
+--- /dev/null
++++ b/sage.h
+@@ -0,0 +1,22 @@
++/*
++ Coxeter version 3.0 Copyright (C) 2009 Mike Hansen
++*/
++
++#ifndef SAGE_H /* guard against multiple inclusions */
++#define SAGE_H
++
++#include "globals.h"
++#include "coxgroup.h"
++#include "coxtypes.h"
++#include "schubert.h"
++#include "list.h"
++
++namespace sage {
++ using namespace coxeter;
++ using namespace coxtypes;
++ using namespace list;
++
++ void interval(List<CoxWord>& result, CoxGroup& W, const CoxWord& g, const CoxWord& h);
++}
++
++#endif
diff --git a/testing/coxeter/makefile b/testing/coxeter/makefile
new file mode 100644
index 00000000000..ec973192917
--- /dev/null
+++ b/testing/coxeter/makefile
@@ -0,0 +1,12 @@
+.POSIX:
+
+objects = affine.o automata.o bits.o cells.o commands.o constants.o coxgroup.o coxtypes.o error.o fcoxgroup.o files.o general.o graph.o help.o interactive.o interface.o invkl.o io.o kl.o klsupport.o main.o memory.o minroots.o posets.o sage.o schubert.o special.o transducer.o type.o typeA.o uneqkl.o wgraph.o
+
+coxeter: libcoxeter3.so.0.0.0
+ $(CXX) $(CXXFLAGS) $(LDFLAGS) -L. -o coxeter main.o -l:libcoxeter3.so.0.0.0
+
+libcoxeter3.so.0.0.0: $(objects)
+ $(CXX) $(CXXFLAGS) -shared -Wl,-soname=libcoxeter3.so.0.0.0 -o libcoxeter3.so.0.0.0 $(objects)
+
+.cpp.o:
+ $(CXX) $(CXXFLAGS) -fPIC -c -o $@ $<
diff --git a/testing/coxeter/test-input b/testing/coxeter/test-input
new file mode 100644
index 00000000000..fb732368d43
--- /dev/null
+++ b/testing/coxeter/test-input
@@ -0,0 +1,9 @@
+type
+A
+3
+compute
+1 3 2 1 2 3 1 2 1
+ihbetti
+213
+q
+q
diff --git a/testing/coxeter/test-output b/testing/coxeter/test-output
new file mode 100644
index 00000000000..b97ee097be2
--- /dev/null
+++ b/testing/coxeter/test-output
@@ -0,0 +1,13 @@
+This is Coxeter version 3.1.
+Enter help if you need assistance, carriage return to start the program.
+
+coxeter :
+type :
+rank : coxeter : enter your element (finish with a carriage return) :
+213
+coxeter : enter your element (finish with a carriage return) :
+h[0] = 1 h[1] = 3 h[2] = 3 h[3] = 1
+
+size : 8
+
+coxeter : coxeter : \ No newline at end of file
diff --git a/testing/cozy/APKBUILD b/testing/cozy/APKBUILD
new file mode 100644
index 00000000000..83ba3da47f0
--- /dev/null
+++ b/testing/cozy/APKBUILD
@@ -0,0 +1,58 @@
+# Contributor: Tim Magee <timothy@eastlincoln.net>
+# Maintainer:
+pkgname=cozy
+pkgver=1.2.1
+pkgrel=1
+pkgdesc="Modern audiobook player for Linux"
+url="https://cozy.sh"
+# armhf, ppc64le: py3-pylast
+# s390x: doubt anyone would use this on a mainframe
+arch="noarch !armhf !ppc64le !s390x"
+license="GPL-3.0-only"
+depends="
+ gst-libav
+ gst-plugins-bad
+ gst-plugins-good
+ gst-plugins-ugly
+ gtk+3.0
+ libdazzle
+ libhandy1
+ py3-cairo
+ py3-distro
+ py3-gobject3
+ py3-gst
+ py3-mutagen
+ py3-packaging
+ py3-peewee
+ py3-requests
+ py3-tz
+ "
+makedepends="
+ desktop-file-utils
+ gobject-introspection-dev
+ gtk+3.0-dev
+ libhandy1-dev
+ meson
+ py3-gobject3-dev
+ "
+subpackages="$pkgname-pyc $pkgname-lang"
+source="$pkgname-$pkgver.tar.gz::https://github.com/geigi/cozy/archive/refs/tags/$pkgver.tar.gz
+ fix-legacy-version.patch
+ "
+options="!check" # no tests
+
+build() {
+ abuild-meson . output
+ meson compile -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+ ln -sfv com.github.geigi.cozy "$pkgdir"/usr/bin/cozy
+ python3 -m compileall -fq "$pkgdir"/usr/lib/python*
+}
+
+sha512sums="
+db6c4a5ed47e139d87ca8a0d3c1d2681305ee565322209240e52acc1ac41c9669fb3ae06ca517d668e5f7a86319861089772b0d7b8f1aa22cfb5462913a9d3f5 cozy-1.2.1.tar.gz
+64624f020beb3c2dd8a2a8972da3bd312e26b5d8f6dbbc6af998c2e05feb1991d0298c49209ed08969f1306109fcaa48a6154b647ca1c7cb895b18daa944dd6f fix-legacy-version.patch
+"
diff --git a/testing/cozy/fix-legacy-version.patch b/testing/cozy/fix-legacy-version.patch
new file mode 100644
index 00000000000..a1fc1f4a501
--- /dev/null
+++ b/testing/cozy/fix-legacy-version.patch
@@ -0,0 +1,76 @@
+Patch-Source: https://github.com/geigi/cozy/pull/762
+--
+From 6422aaafa9655b91f29bdb399970181ef4a888df Mon Sep 17 00:00:00 2001
+From: suve <veg@svgames.pl>
+Date: Wed, 29 Mar 2023 12:22:58 +0200
+Subject: [PATCH 1/2] Fix crash on startup
+
+This commit fixes the program crashing because of an uncaught exception.
+The bug was triggered by app_settings.last_launched_version being
+unset - which would always be the case when launching the program for
+the first time!
+
+The bug could also be triggered by manually changing the setting
+to an invalid value - e.g. by running:
+$ gsettings set com.github.geigi.cozy last-launched-version 'ayy lmao'
+---
+ cozy/ui/widgets/whats_new_window.py | 12 ++++++++----
+ 1 file changed, 8 insertions(+), 4 deletions(-)
+
+diff --git a/cozy/ui/widgets/whats_new_window.py b/cozy/ui/widgets/whats_new_window.py
+index 1e80d1ef..1a79005b 100644
+--- a/cozy/ui/widgets/whats_new_window.py
++++ b/cozy/ui/widgets/whats_new_window.py
+@@ -51,12 +51,16 @@ def __init__(self, **kwargs):
+ def _fill_window(self):
+ self.children = []
+
+- last_launched_version = version.parse(self.app_settings.last_launched_version)
+-
+- if type(last_launched_version) is version.LegacyVersion:
++ try:
++ last_launched_version = version.parse(self.app_settings.last_launched_version)
++ except version.InvalidVersion:
+ self._fill_welcome()
+ else:
+- self._fill_whats_new(last_launched_version)
++ if type(last_launched_version) is version.LegacyVersion:
++ self._fill_welcome()
++ else:
++ self._fill_whats_new(last_launched_version)
++
+
+ def _fill_welcome(self):
+ from cozy.ui.widgets.welcome import Welcome
+
+From 5dd970aafb9f50803344cf1e2c5c91751658a58e Mon Sep 17 00:00:00 2001
+From: suve <veg@svgames.pl>
+Date: Sun, 28 May 2023 12:09:02 +0200
+Subject: [PATCH 2/2] Remove usage of version.LegacyVersion
+
+The "packaging" module has deprecated its LegacyVersion identifier back
+in 2020, finally removing it in 2021. This causes cozy to crash when
+running against new version of said module, with the following error:
+> AttributeError: module 'packaging.version'
+> has no attribute 'LegacyVersion'
+---
+ cozy/ui/widgets/whats_new_window.py | 6 +-----
+ 1 file changed, 1 insertion(+), 5 deletions(-)
+
+diff --git a/cozy/ui/widgets/whats_new_window.py b/cozy/ui/widgets/whats_new_window.py
+index 1a79005b..da3a06f9 100644
+--- a/cozy/ui/widgets/whats_new_window.py
++++ b/cozy/ui/widgets/whats_new_window.py
+@@ -56,11 +56,7 @@ def _fill_window(self):
+ except version.InvalidVersion:
+ self._fill_welcome()
+ else:
+- if type(last_launched_version) is version.LegacyVersion:
+- self._fill_welcome()
+- else:
+- self._fill_whats_new(last_launched_version)
+-
++ self._fill_whats_new(last_launched_version)
+
+ def _fill_welcome(self):
+ from cozy.ui.widgets.welcome import Welcome
diff --git a/testing/cpplint/APKBUILD b/testing/cpplint/APKBUILD
new file mode 100644
index 00000000000..adc06ca9aa9
--- /dev/null
+++ b/testing/cpplint/APKBUILD
@@ -0,0 +1,42 @@
+# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=cpplint
+pkgver=1.6.1_git20240320
+pkgrel=1
+_gitrev="3791cc41ac0afcea7b80a96cc3ca2fc71d73fcc0"
+pkgdesc="Static code checker for C++"
+url="https://github.com/cpplint/cpplint"
+arch="noarch"
+license="BSD-3-Clause"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+checkdepends="
+ py3-pytest
+ py3-pytest-cov
+ py3-pytest-runner
+ py3-pytest-timeout
+ py3-testfixtures
+ "
+subpackages="$pkgname-pyc"
+source="https://github.com/cpplint/cpplint/archive/$_gitrev/cpplint-$pkgver.tar.gz"
+builddir="$srcdir/$pkgname-$_gitrev"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ gpep517 install-wheel --destdir .testenv --prefix '' .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+fca7eec2f08225d280b50d25268a00ad7bb2a01c16351363403e6463e4add163e5d5339aafd9167b2ef578653b9d61c8de19937f49cbb7c31d5207de7ac01358 cpplint-1.6.1_git20240320.tar.gz
+"
diff --git a/testing/cproc/APKBUILD b/testing/cproc/APKBUILD
new file mode 100644
index 00000000000..6153c1da1e7
--- /dev/null
+++ b/testing/cproc/APKBUILD
@@ -0,0 +1,35 @@
+# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
+# Maintainer: Sören Tempel <soeren+alpine@soeren-tempel.net>
+pkgname=cproc
+pkgver=0_git20230502
+_commit=0985a7893a4b5de63a67ebab445892d9fffe275b
+pkgrel=0
+pkgdesc="A C11 compiler based on the QBE compiler backend"
+url="https://sr.ht/~mcf/cproc"
+arch="x86_64 aarch64" # See https://github.com/michaelforney/cproc#supported-targets
+license="ISC AND MIT AND Unlicense"
+depends="binutils qbe cmd:cpp"
+subpackages="$pkgname-doc"
+source="$pkgname-$_commit.tar.gz::https://github.com/michaelforney/cproc/archive/$_commit.tar.gz"
+builddir="$srcdir/$pkgname-$_commit"
+
+build() {
+ ./configure \
+ --host=$CHOST \
+ --target=$CTARGET \
+ --prefix=/usr \
+ --with-cpp=cpp
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+cbc38f304ac1d12c691c42cd67a6229f6ae6549a1270be17857b72ee1817d9c167d5e7bbe58f266cf56ee848453da923b1d910d660ee24abc3d5ed54b955035e cproc-0985a7893a4b5de63a67ebab445892d9fffe275b.tar.gz
+"
diff --git a/testing/cpu-x/APKBUILD b/testing/cpu-x/APKBUILD
new file mode 100644
index 00000000000..02247b8b1a7
--- /dev/null
+++ b/testing/cpu-x/APKBUILD
@@ -0,0 +1,64 @@
+# Contributor: Díaz Urbaneja Diego <sodomon2@gmail.com>
+# Maintainer: Díaz Urbaneja Diego <sodomon2@gmail.com>
+pkgname=cpu-x
+pkgver=5.0.3
+pkgrel=0
+pkgdesc="CPU-X is a system profiling and monitoring application (similar to CPU-Z)"
+url="https://thetumultuousunicornofdarkness.github.io/CPU-X/"
+arch="x86_64 x86" # no libcpuid in others architectures
+license="GPL-3.0-only"
+depends="
+ gtkmm3
+ libcpuid
+ ncurses
+ mesa
+ opencl
+ pciutils
+ procps-ng
+ vulkan-loader
+ "
+makedepends="
+ cmake
+ gtkmm3-dev
+ libcpuid-dev
+ mesa-dev
+ nasm
+ ncurses-dev
+ opencl-dev
+ pciutils-dev
+ procps-ng-dev
+ samurai
+ vulkan-headers
+ vulkan-loader-dev
+ "
+subpackages="$pkgname-lang $pkgname-bash-completion $pkgname-zsh-completion $pkgname-fish-completion"
+options="!check" # check failed
+source="$pkgname-$pkgver.tar.gz::https://github.com/TheTumultuousUnicornOfDarkness/CPU-X/archive/refs/tags/v$pkgver.tar.gz
+ no-bracktrace.patch
+ "
+builddir="$srcdir/CPU-X-$pkgver"
+
+build() {
+ # GLFW disable
+ if [ "$CBUILD" != "$CHOST" ]; then
+ local crossopts="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DWITH_OPENCL=ON \
+ -DWITH_LIBGLFW=OFF \
+ -DCMAKE_BUILD_TYPE=None \
+ $crossopts
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+d9a29a5303101a6c00d9145265d85acec865833f175246bde550ba2dff24a924c1b2de7579b3d8e20aa163092d269af9bbb24e073585d3e18a2c726e48d9be41 cpu-x-5.0.3.tar.gz
+96f0e100a2ca2898b014ca5f52937a2de041743777fbf318e2d3f82240e9fe40106d295c2ce80478e1540ed35c96a98c70acd1549b89daae44f6d9ff88251734 no-bracktrace.patch
+"
diff --git a/testing/cpu-x/no-bracktrace.patch b/testing/cpu-x/no-bracktrace.patch
new file mode 100644
index 00000000000..d5c0e7aed70
--- /dev/null
+++ b/testing/cpu-x/no-bracktrace.patch
@@ -0,0 +1,41 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -130,7 +130,6 @@
+ enable_testing()
+ find_package(PkgConfig REQUIRED)
+ find_package(Threads REQUIRED)
+-find_package(Backtrace REQUIRED)
+ find_package(Filesystem REQUIRED)
+ if(WITH_GETTEXT)
+ find_package(Gettext)
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -255,7 +255,6 @@
+ target_link_libraries(${APP_EXEC}
+ ${Intl_LIBRARIES}
+ ${CMAKE_THREAD_LIBS_INIT}
+- ${Backtrace_LIBRARIES}
+ std::filesystem
+
+ ${GTK3_LIBRARIES}
+--- a/src/main.cpp
++++ b/src/main.cpp
+@@ -22,7 +22,6 @@
+ */
+
+ #include <unistd.h>
+-#include <execinfo.h>
+ #include <getopt.h>
+ #include <cstdlib>
+ #include <cstring>
+@@ -370,10 +369,6 @@
+ void *bt[16];
+ std::string::size_type addr_start, addr_end;
+ std::string line, address, line_number;
+-
+- /* Get the backtrace */
+- bt_size = backtrace(bt, 16);
+- bt_syms = backtrace_symbols(bt, bt_size);
+
+ /* Print the backtrace */
+ Logger::set_verbosity(LOG_ERROR); // disable DEBUG mode for popen_to_str()
diff --git a/testing/cpuburn/APKBUILD b/testing/cpuburn/APKBUILD
index e15188b7bfc..2f5bfec5f9c 100644
--- a/testing/cpuburn/APKBUILD
+++ b/testing/cpuburn/APKBUILD
@@ -2,9 +2,9 @@
# Maintainer: Olliver Schinagl <oliver@schinagl.nl>
pkgname="cpuburn"
pkgver="1.4a_git20160316"
-pkgrel=0
+pkgrel=2
pkgdesc="Suite of CPU burn utitilies"
-url="http://ssvb.github.io/2012/04/10/cpuburn-arm-cortex-a9.html https://web.archive.org/web/20110623074500/pages.sbcglobal.net/redelm/"
+url="https://ssvb.github.io/2012/04/10/cpuburn-arm-cortex-a9.html"
arch="aarch64 armhf armv7 x86 x86_64"
license="MIT"
options="!check textrels" # No checks available
diff --git a/testing/cpufetch/APKBUILD b/testing/cpufetch/APKBUILD
index 1ce1cf5b671..07cb9825154 100644
--- a/testing/cpufetch/APKBUILD
+++ b/testing/cpufetch/APKBUILD
@@ -1,11 +1,11 @@
# Contributor: Milan P. Stanić <mps@arvanta.net>
# Maintainer: Milan P. Stanić <mps@arvanta.net>
pkgname=cpufetch
-pkgver=1.02
+pkgver=1.05
pkgrel=0
pkgdesc="simple yet fancy CPU architecture fetching tool"
url="https://github.com/Dr-Noob/cpufetch"
-arch="x86_64 armhf armv7 aarch64" # x86 missing asm/hwcap.h
+arch="x86_64 armhf armv7 aarch64 riscv64" # x86 missing asm/hwcap.h
license="MIT"
options="!check" # no test
makedepends="linux-headers"
@@ -22,5 +22,5 @@ package() {
}
sha512sums="
-b548af4dccd632c2899a3b0fd70e67f7abdc4bd66371927876c851168d0df47e23bd8f798d82509b83b268c50b0e9a6697a56f6fcf7772711108e2538cd1c09a cpufetch-1.02.tar.gz
+ec303e292ddc928e5cf2c81e0b38fd0853e1a3ffb9a20413e09677ec91777806c4774a0a6d618adde4f13328c930ce35a80e679609438542486999ab9e1308b4 cpufetch-1.05.tar.gz
"
diff --git a/testing/crazydiskinfo/APKBUILD b/testing/crazydiskinfo/APKBUILD
index 68a9e12bad5..2cbd40e3f7b 100644
--- a/testing/crazydiskinfo/APKBUILD
+++ b/testing/crazydiskinfo/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Milan P. Stanić <mps@arvanta.net>
pkgname=crazydiskinfo
pkgver=1.1.0
-pkgrel=0
+pkgrel=1
pkgdesc="interactive TUI S.M.A.R.T viewer"
url="https://github.com/otakuto/crazydiskinfo"
arch="all"
diff --git a/testing/create-tauri-app/APKBUILD b/testing/create-tauri-app/APKBUILD
new file mode 100644
index 00000000000..91a2594e182
--- /dev/null
+++ b/testing/create-tauri-app/APKBUILD
@@ -0,0 +1,43 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=create-tauri-app
+pkgver=3.13.17
+pkgrel=0
+pkgdesc="Build tool for Leptos"
+url="https://tauri.app"
+arch="all !s390x" # nix
+license="MIT OR Apache-2.0"
+makedepends="cargo-auditable"
+depends="cargo"
+subpackages="$pkgname-doc"
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/tauri-apps/create-tauri-app/archive/refs/tags/create-tauri-app-v$pkgver.tar.gz
+"
+options="net"
+builddir="$srcdir/$pkgname-$pkgname-v$pkgver"
+
+prepare() {
+ default_prepare
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm 755 target/release/cargo-create-tauri-app "$pkgdir"/usr/bin/cargo-create-tauri-app
+
+ for l in _APACHE-2.0 _MIT .spdx
+ do
+ install -Dm 644 LICENSE"$l" "$pkgdir"/usr/share/licenses/"$pkgname"/LICENSE"$l"
+ done
+}
+
+sha512sums="
+404446367f0de92837f4f43cb591f363363bd7d7345feecebb106db4579279c352a573915dcbf33748979b57c3567171d65c5c91e616b1d7ae8c8b74bc8eadcb create-tauri-app-3.13.17.tar.gz
+"
diff --git a/testing/createrepo_c/APKBUILD b/testing/createrepo_c/APKBUILD
index e314fcacac5..3636b2be460 100644
--- a/testing/createrepo_c/APKBUILD
+++ b/testing/createrepo_c/APKBUILD
@@ -1,28 +1,28 @@
-# Contributor:
# Maintainer: Paul Morgan <jumanjiman@gmail.com>
pkgname=createrepo_c
-pkgver=0.17.1
+pkgver=1.0.2
pkgrel=1
pkgdesc="C implementation of createrepo"
url="https://github.com/rpm-software-management/createrepo_c/"
arch="all"
license="GPL-2.0-or-later"
makedepends="
- bash-completion
+ bash-completion-dev
bzip2-dev
cmake
curl-dev
expat-dev
- file-dev>=5.40-r1
+ file-dev
glib-dev
openssl-dev
libxml2-dev
python3-dev
rpm-dev
- scanelf
+ samurai
sqlite-dev
xz-dev
zlib-dev
+ zstd-dev
"
checkdepends="
check-dev
@@ -34,54 +34,47 @@ subpackages="
$pkgname-dev
$pkgname-doc
$pkgname-libs
- py3-${pkgname}:py3
+ py3-$pkgname-pyc
+ py3-$pkgname:py3
"
source="
$pkgname-$pkgver.tar.gz::https://github.com/rpm-software-management/createrepo_c/archive/$pkgver.tar.gz
+ no-bash.patch
"
build() {
- mkdir "$builddir"/build
- cd "$builddir"/build
-
- # Pass cmake variables so
- # end user does not need to set LD_LIBRARY_PATH.
- # https://cmake.org/Wiki/CMake_RPATH_handling#Always_full_RPATH
- cmake .. \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
- -DCMAKE_SKIP_BUILD_RPATH=true \
- -DCMAKE_BUILD_WITH_INSTALL_RPATH=false \
- -DCMAKE_INSTALL_RPATH=/usr/lib \
- -DCMAKE_INSTALL_RPATH_USE_LINK_PATH=true \
- -DPYTHON_DESIRED=3 \
+ -DCMAKE_SKIP_INSTALL_RPATH=true \
-DWITH_ZCHUNK=OFF \
-DWITH_LIBMODULEMD=OFF \
-DENABLE_DRPM=OFF
- make
+ cmake --build build
+
+ if want_check; then
+ cmake --build build --target tests
+ fi
}
check() {
- cd "$builddir"/build
- make tests
- tests/run_gtester.sh
+ cd build
+ ./tests/run_tests.sh
}
package() {
- cd "$builddir"/build
- make install/strip DESTDIR=$pkgdir
+ DESTDIR="$pkgdir" cmake --install build
+ python3 -m compileall -fq "$pkgdir"/usr/lib/python*
}
py3() {
pkgdesc="Python3 bindings for createrepo_c"
- depends="python3 $pkgname-libs"
- # This is architecture-specific and provides a *.so file.
- mkdir -p "$subpkgdir"/usr/lib
- mv "$pkgdir"/usr/lib/python* "$subpkgdir"/usr/lib/
+ amove usr/lib/python*
}
sha512sums="
-5c5d459e255a3fef61ed4c25a655aa26698696b3f3fc0ba6492509338d527db0ccf71f23495e1bfba1a0e11055d29c7930dbf761ac3254f780d5dad33f7d70ce createrepo_c-0.17.1.tar.gz
+b4ceba2f0b558843bdc04be30a10ffb785eea0beb6e1f1efe7373b2a47c8aba554f1a881194c02d1b3980332912d92aa84fdda079324b60c2d57c55e43fa9eb6 createrepo_c-1.0.2.tar.gz
+2511216ef3a3ba85458a7bf6b405be44379597f94e3f377454bc0814d90bb0d1b4f0c1d4707c78a37dc07cbd594911b9f5ac03952ae7bd8a1d9828bea65a6e28 no-bash.patch
"
diff --git a/testing/createrepo_c/no-bash.patch b/testing/createrepo_c/no-bash.patch
new file mode 100644
index 00000000000..bd9ca651b27
--- /dev/null
+++ b/testing/createrepo_c/no-bash.patch
@@ -0,0 +1,10 @@
+diff --git a/tests/run_tests.sh.in b/tests/run_tests.sh.in
+index db53cdc..7e87742 100755
+--- a/tests/run_tests.sh.in
++++ b/tests/run_tests.sh.in
+@@ -1,4 +1,4 @@
+-#!/bin/bash
++#!/bin/sh
+
+ BINDIR="${CMAKE_BINARY_DIR}/tests/"
+ RET=0
diff --git a/testing/cri-o/APKBUILD b/testing/cri-o/APKBUILD
index af9f3d1736d..3a21471e5a6 100644
--- a/testing/cri-o/APKBUILD
+++ b/testing/cri-o/APKBUILD
@@ -3,14 +3,14 @@
# Contributor: TBK <alpine@jjtc.eu>
# Maintainer: ungleich <foss@ungleich.ch>
pkgname=cri-o
-pkgver=1.23.2
-pkgrel=1
+pkgver=1.29.1
+pkgrel=2
pkgdesc="OCI-based implementation of Kubernetes Container Runtime Interface"
url="https://github.com/cri-o/cri-o/"
arch="all"
license="Apache-2.0"
- # Most tests will fail if not ran as root
- # since it tries to create network interfaces
+# Most tests will fail if not ran as root
+# since it tries to create network interfaces
options="net chmod-clean !check"
depends="
cni-plugins
@@ -19,7 +19,7 @@ depends="
containers-common
iproute2
iptables
- runc
+ oci-runtime
"
makedepends="
bash
@@ -33,18 +33,19 @@ makedepends="
libselinux-dev
lvm2-dev
ostree-dev
+ sqlite-dev
tzdata
"
-checkdepends="bats cri-tools jq parallel sudo"
+checkdepends="bats cri-tools jq parallel sudo conmon"
subpackages="
$pkgname-doc
$pkgname-bash-completion
$pkgname-zsh-completion
$pkgname-fish-completion
- $pkgname-contrib-cni:contrib_cni:noarch
$pkgname-openrc
"
-source="https://github.com/cri-o/cri-o/archive/v$pkgver/cri-o-$pkgver.tar.gz
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/cri-o/cri-o/archive/v$pkgver/cri-o-$pkgver.tar.gz
crio.conf
crio.initd
crio.logrotated
@@ -57,12 +58,19 @@ source="https://github.com/cri-o/cri-o/archive/v$pkgver/cri-o-$pkgver.tar.gz
# secfixes:
# 1.23.2-r0:
# - CVE-2022-0811
+# 1.24.1-r0:
+# - CVE-2022-1708
+# 1.26.2-r0:
+# - CVE-2022-4318
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+export GOBIN="$GOPATH/bin"
build() {
- export GOPATH="$srcdir"
- export GOBIN="$GOPATH/bin"
# https://github.com/cri-o/cri-o/blob/master/install.md#build-tags
- make BUILDTAGS="seccomp selinux containers_image_openpgp containers_image_ostree_stub"
+ make BUILDTAGS="libsqlite3 seccomp selinux apparmor containers_image_openpgp containers_image_ostree_stub"
}
check() {
@@ -70,30 +78,33 @@ check() {
}
package() {
- make DESTDIR="$pkgdir" PREFIX=/usr CRICTL_CONFIG_DIR="/etc/crio" OCIUMOUNTINSTALLDIR="/etc/crio" install
+ make \
+ DESTDIR="$pkgdir" \
+ PREFIX=/usr \
+ CRICTL_CONFIG_DIR="/etc/crio" \
+ OCIUMOUNTINSTALLDIR="/etc/crio" \
+ FISHINSTALLDIR=/usr/share/fish/vendor_completions.d \
+ install.bin-nobuild install.man-nobuild install.completions install.config-nobuild
# We want it in etc so apk does not overwrite it
mkdir -p "$pkgdir"/usr/share/oci-umount/oci-umount.d/
- ln -sf /etc/crio/crio-umount.conf "$pkgdir"/usr/share/oci-umount/oci-umount.d/crio-umount.conf
+ ln -sf ../../../../etc/crio/crio-umount.conf "$pkgdir"/usr/share/oci-umount/oci-umount.d/crio-umount.conf
+
+ # The CNI plugins are recommended to be installed as examples
+ install -Dm644 contrib/cni/*.conflist -t "$pkgdir"/usr/share/doc/cri-o/examples/cni/
install -Dm755 "$srcdir"/crio.initd "$pkgdir"/etc/init.d/crio
install -Dm644 "$srcdir"/crio.conf "$pkgdir"/etc/crio/crio.conf
install -Dm644 "$srcdir"/crio.logrotated "$pkgdir"/etc/logrotate.d/crio
}
-contrib_cni() {
- pkgdesc="$pkgname contrib cni config files"
- mkdir -p "$subpkgdir"/etc/cni/net.d
- cp "$builddir"/contrib/cni/*.conf "$subpkgdir"/etc/cni/net.d
-}
-
sha512sums="
-5080a0953c3b4e90a9e42606defe5f1e906533b9db66fa7daa823475e25a65040c442d06d591847ece3b1b7745a74cde938deac5c8bfd522dff25a2e76a07b1d cri-o-1.23.2.tar.gz
-e026f056ed92489413e16ed7955a9dcd7d1f4df1cc28e3ea785771b44d43811fea4f5b953cc46bc0c4aeac8ad07115bfff304d7516ebd24f2e58fe782ff812c8 crio.conf
-29561e95398975748236217bbd9df64997f6e3de6c0555d007306bd0535895a648368385a13079eb7d52c06249a91980523a73b6563e86d0575d9cd9c3fa4ee9 crio.initd
+58b01efb166ac74bdc4e17046010f5546b494fb8157e5269323520de2c5e971272c23090e22712d452081eba651ef6e1f2c228def135cdcde943e9aee0225b08 cri-o-1.29.1.tar.gz
+1f60719677295c9c5c615eb25d9159bde0af68a132eee67747f57fe76642d457c98c896c6189f85637d7b4ac24ba55fd9eaeb1699f43c3c5077b645f72a479fb crio.conf
+26048a219bc426ef4a4f50e96d6e0ded1c55dc8415df9a2773764d2ebcb3d9e91077b2916da1ff32674ca4a53062e41e185503d671dacc3167a018b0066347e1 crio.initd
1115228546a696eeebeb6d4b3e5c3152af0c99a2559097fc5829d8b416d979c457b4b1789e0120054babf57f585d3f63cbe49949d40417ae7aab613184bf4516 crio.logrotated
0a567dfa431ab1e53f2a351689be8d588a60cc5fcdbda403ec4f8b6ab9b1c18ad425f6c47f9a5ab1491e3a61a269dc4efa6a59e91e7521fa2b6bb165074aa8e0 cni-plugins-path.patch
-f9577aa7b1c90c6809010e9e406e65092251b6e82f6a0adbc3633290aa35f2a21895e1a8b6ba4b6375dcad3e02629b49a34ab16387e1c36eeb32c8f4dac74706 makefile-fix-install.patch
-26ed10b478feb19cb11f5916b24301943f9e316fdd62d53ec310bb05ffcf4213ceece1340d2486461557abb04074e85002b11b6347fddaaa45ad7439e907a5a7 fix-test.patch
-78c150f87027de489289596371dce0465159ced0758776b445deb58990e099de9c654406183c9da3cc909878b24d28db62121b7056cd180a6f2820e79e165cc6 remove-systemd-files.patch
+09025bff1fed5004a15696cbc7c63260ae7c206ffe2c8506e6063e8889b7aa98bd5c7df2f0c109860d8432ddf5f3b6326dbfd46589d05cf87f26c38e4bdadb9c makefile-fix-install.patch
+b0fdaf2280968a69e05ef72288bbf6fc03787616c6b6fca1e4398f9849167f4773e5e6e72bf1738d1fff2a84e97aa00f23aabcd50898ba8ed130969f50363006 fix-test.patch
+ae7e4a43f18076f19f3ae37d7302bfdf7a3befadf33e46bc9b1b14d50b605e8ba0d06d479568c24e8bf68f17c80ae48798068b2a46c3bcab565a5d225779f30e remove-systemd-files.patch
"
diff --git a/testing/cri-o/crio.conf b/testing/cri-o/crio.conf
index 70dc7567941..525c6a4ed01 100644
--- a/testing/cri-o/crio.conf
+++ b/testing/cri-o/crio.conf
@@ -3,3 +3,9 @@
# Overide defaults to not use systemd cgroups.
conmon_cgroup = "pod"
cgroup_manager = "cgroupfs"
+
+default_runtime = "crun"
+
+[crio.runtime.runtimes.crun]
+runtime_type = "oci"
+runtime_root = "/run/crun"
diff --git a/testing/cri-o/crio.initd b/testing/cri-o/crio.initd
index 9e6383ac976..c5eec65dfdd 100755
--- a/testing/cri-o/crio.initd
+++ b/testing/cri-o/crio.initd
@@ -21,6 +21,8 @@ checkconfig() {
/var/log/${RC_SVCNAME}
checkpath --file --owner root:root --mode 0644 \
/var/log/${RC_SVCNAME}/${RC_SVCNAME}.log
+ checkpath --directory --owner root:root --mode 0750 \
+ /var/lib/crio
}
start() {
diff --git a/testing/cri-o/fix-test.patch b/testing/cri-o/fix-test.patch
index a5b47b0c68c..bf4f8ef8f44 100644
--- a/testing/cri-o/fix-test.patch
+++ b/testing/cri-o/fix-test.patch
@@ -1,26 +1,45 @@
---- a/test/helpers.bash
-+++ b/test/helpers.bash
-@@ -68,7 +68,7 @@
- # The default log directory where all logs will go unless directly specified by the kubelet
- DEFAULT_LOG_PATH=${DEFAULT_LOG_PATH:-/var/log/crio/pods}
- # Cgroup manager to be used
--CONTAINER_CGROUP_MANAGER=${CONTAINER_CGROUP_MANAGER:-systemd}
-+CONTAINER_CGROUP_MANAGER=${CONTAINER_CGROUP_MANAGER:-cgroupfs}
- # Image volumes handling
- CONTAINER_IMAGE_VOLUMES=${CONTAINER_IMAGE_VOLUMES:-mkdir}
- # Container pids limit
-@@ -166,7 +166,7 @@
- # Copy all the CNI dependencies around to ensure encapsulated tests
- CRIO_CNI_PLUGIN="$TESTDIR/cni-bin"
- mkdir "$CRIO_CNI_PLUGIN"
-- cp /opt/cni/bin/* "$CRIO_CNI_PLUGIN"
-+ cp /usr/libexec/cni/* "$CRIO_CNI_PLUGIN"
- cp "$INTEGRATION_ROOT"/cni_plugin_helper.bash "$CRIO_CNI_PLUGIN"
- sed -i "s;%TEST_DIR%;$TESTDIR;" "$CRIO_CNI_PLUGIN"/cni_plugin_helper.bash
+diff --git a/test/cgroups.bats b/test/cgroups.bats
+index 8beb6f06..80193413 100644
+--- a/test/cgroups.bats
++++ b/test/cgroups.bats
+@@ -45,6 +45,10 @@ EOF
+ }
+
+ @test "conmon pod cgroup" {
++ if [[ "$CONTAINER_CGROUP_MANAGER" != "systemd" ]]; then
++ skip "need systemd cgroup manager"
++ fi
++
+ CONTAINER_CGROUP_MANAGER="systemd" CONTAINER_DROP_INFRA_CTR=false CONTAINER_CONMON_CGROUP="pod" start_crio
+
+ jq ' .linux.cgroup_parent = "Burstablecriotest123.slice"' \
+@@ -61,6 +65,10 @@ EOF
+ skip "not yet supported by conmonrs"
+ fi
+
++ if [[ "$CONTAINER_CGROUP_MANAGER" != "systemd" ]]; then
++ skip "need systemd cgroup manager"
++ fi
++
+ CONTAINER_CGROUP_MANAGER="systemd" CONTAINER_DROP_INFRA_CTR=false CONTAINER_CONMON_CGROUP="customcrioconmon.slice" start_crio
+
+ jq ' .linux.cgroup_parent = "Burstablecriotest123.slice"' \
+@@ -77,6 +85,10 @@ EOF
+ skip "not supported for conmon"
+ fi
++ if [[ "$CONTAINER_CGROUP_MANAGER" != "systemd" ]]; then
++ skip "need systemd cgroup manager"
++ fi
++
+ configure_monitor_cgroup_for_conmonrs "customcrioconmon.slice"
+
+ CONTAINER_CGROUP_MANAGER="systemd" CONTAINER_DROP_INFRA_CTR=true start_crio
+diff --git a/test/cni_plugin_helper.bash b/test/cni_plugin_helper.bash
+index 04492172..abae521e 100755
--- a/test/cni_plugin_helper.bash
+++ b/test/cni_plugin_helper.bash
-@@ -43,7 +43,7 @@
+@@ -48,7 +48,7 @@ EOT
. "$TEST_DIR"/cni_plugin_helper_input.env
rm -f "$TEST_DIR"/cni_plugin_helper_input.env
@@ -29,16 +48,25 @@
if [[ "${DEBUG_ARGS}" == "malformed-result" ]]; then
cat <<-EOF
---- a/test/cgroups.bats
-+++ b/test/cgroups.bats
-@@ -26,6 +26,10 @@
- }
-
- @test "conmon custom cgroup" {
-+ if [[ "$CONTAINER_CGROUP_MANAGER" != "systemd" ]]; then
-+ skip "need systemd cgroup manager"
-+ fi
-+
- CONTAINER_CGROUP_MANAGER="systemd" CONTAINER_DROP_INFRA_CTR=false CONTAINER_MANAGE_NS_LIFECYCLE=false CONTAINER_CONMON_CGROUP="customcrioconmon.slice" start_crio
-
- jq ' .linux.cgroup_parent = "Burstablecriotest123.slice"' \
+diff --git a/test/common.sh b/test/common.sh
+index f7f8e1f2..45b7dd58 100644
+--- a/test/common.sh
++++ b/test/common.sh
+@@ -41,7 +41,7 @@ # CNI path
+ if command -v host-local >/dev/null; then
+ CONTAINER_CNI_PLUGIN_DIR=${CONTAINER_CNI_PLUGIN_DIR:-$(dirname "$(readlink "$(command -v host-local)")")}
+ else
+- CONTAINER_CNI_PLUGIN_DIR=${CONTAINER_CNI_PLUGIN_DIR:-/opt/cni/bin}
++ CONTAINER_CNI_PLUGIN_DIR=${CONTAINER_CNI_PLUGIN_DIR:-/usr/libexec/cni}
+ fi
+ # Runtime
+ CONTAINER_DEFAULT_RUNTIME=${CONTAINER_DEFAULT_RUNTIME:-runc}
+@@ -74,7 +74,7 @@ CHECKCRIU_BINARY=${CHECKCRIU_BINARY:-${CRIO_ROOT}/test/checkcriu/checkcriu}
+ # The default log directory where all logs will go unless directly specified by the kubelet
+ DEFAULT_LOG_PATH=${DEFAULT_LOG_PATH:-/var/log/crio/pods}
+ # Cgroup manager to be used
+-CONTAINER_CGROUP_MANAGER=${CONTAINER_CGROUP_MANAGER:-systemd}
++CONTAINER_CGROUP_MANAGER=${CONTAINER_CGROUP_MANAGER:-cgroupfs}
+ # Image volumes handling
+ CONTAINER_IMAGE_VOLUMES=${CONTAINER_IMAGE_VOLUMES:-mkdir}
+ # Container pids limit
diff --git a/testing/cri-o/makefile-fix-install.patch b/testing/cri-o/makefile-fix-install.patch
index 8b44339677a..82bb1889229 100644
--- a/testing/cri-o/makefile-fix-install.patch
+++ b/testing/cri-o/makefile-fix-install.patch
@@ -23,15 +23,13 @@
CONTAINER_RUNTIME ?= podman
BUILD_PATH := $(shell pwd)/build
BUILD_BIN_PATH := ${BUILD_PATH}/bin
-@@ -420,68 +420,70 @@
- install: .gopathok install.bin install.man install.completions install.systemd install.config
+@@ -420,60 +420,62 @@
+ install: install.bin install.man install.completions install.systemd install.config
install.bin-nobuild:
- install ${SELINUXOPT} -D -m 755 bin/crio $(BINDIR)/crio
-- install ${SELINUXOPT} -D -m 755 bin/crio-status $(BINDIR)/crio-status
- install ${SELINUXOPT} -D -m 755 bin/pinns $(BINDIR)/pinns
+ install ${SELINUXOPT} -D -m 755 bin/crio ${DESTDIR}$(BINDIR)/crio
-+ install ${SELINUXOPT} -D -m 755 bin/crio-status ${DESTDIR}$(BINDIR)/crio-status
+ install ${SELINUXOPT} -D -m 755 bin/pinns ${DESTDIR}$(BINDIR)/pinns
install.bin: binaries install.bin-nobuild
@@ -70,18 +68,12 @@
- install ${SELINUXOPT} -D -m 644 -t ${BASHINSTALLDIR} completions/bash/crio
- install ${SELINUXOPT} -D -m 644 -t ${FISHINSTALLDIR} completions/fish/crio.fish
- install ${SELINUXOPT} -D -m 644 -t ${ZSHINSTALLDIR} completions/zsh/_crio
-- install ${SELINUXOPT} -D -m 644 -t ${BASHINSTALLDIR} completions/bash/crio-status
-- install ${SELINUXOPT} -D -m 644 -t ${FISHINSTALLDIR} completions/fish/crio-status.fish
-- install ${SELINUXOPT} -D -m 644 -t ${ZSHINSTALLDIR} completions/zsh/_crio-status
+ install ${SELINUXOPT} -d -m 755 ${DESTDIR}${BASHINSTALLDIR}
+ install ${SELINUXOPT} -d -m 755 ${DESTDIR}${FISHINSTALLDIR}
+ install ${SELINUXOPT} -d -m 755 ${DESTDIR}${ZSHINSTALLDIR}
+ install ${SELINUXOPT} -D -m 644 -t ${DESTDIR}${BASHINSTALLDIR} completions/bash/crio
+ install ${SELINUXOPT} -D -m 644 -t ${DESTDIR}${FISHINSTALLDIR} completions/fish/crio.fish
+ install ${SELINUXOPT} -D -m 644 -t ${DESTDIR}${ZSHINSTALLDIR} completions/zsh/_crio
-+ install ${SELINUXOPT} -D -m 644 -t ${DESTDIR}${BASHINSTALLDIR} completions/bash/crio-status
-+ install ${SELINUXOPT} -D -m 644 -t ${DESTDIR}${FISHINSTALLDIR} completions/fish/crio-status.fish
-+ install ${SELINUXOPT} -D -m 644 -t ${DESTDIR}${ZSHINSTALLDIR} completions/zsh/_crio-status
install.systemd:
- install ${SELINUXOPT} -D -m 644 contrib/systemd/crio.service $(PREFIX)/lib/systemd/system/crio.service
@@ -91,10 +83,8 @@
uninstall:
- rm -f $(BINDIR)/crio
-- rm -f $(BINDIR)/crio-status
- rm -f $(BINDIR)/pinns
+ rm -f $(DESTDIR)$(BINDIR)/crio
-+ rm -f $(DESTDIR)$(BINDIR)/crio-status
+ rm -f $(DESTDIR)$(BINDIR)/pinns
for i in $(filter %.5,$(MANPAGES)); do \
- rm -f $(MANDIR)/man5/$$(basename $${i}); \
@@ -107,9 +97,6 @@
- rm -f ${BASHINSTALLDIR}/crio
- rm -f ${FISHINSTALLDIR}/crio.fish
- rm -f ${ZSHINSTALLDIR}/_crio
-- rm -f ${BASHINSTALLDIR}/crio-status
-- rm -f ${FISHINSTALLDIR}/crio-status.fish
-- rm -f ${ZSHINSTALLDIR}/_crio-status
- rm -f $(PREFIX)/lib/systemd/system/crio-wipe.service
- rm -f $(PREFIX)/lib/systemd/system/crio.service
- rm -f $(PREFIX)/lib/systemd/system/cri-o.service
@@ -121,9 +108,6 @@
+ rm -f $(DESTDIR)${BASHINSTALLDIR}/crio
+ rm -f $(DESTDIR)${FISHINSTALLDIR}/crio.fish
+ rm -f $(DESTDIR)${ZSHINSTALLDIR}/_crio
-+ rm -f $(DESTDIR)${BASHINSTALLDIR}/crio-status
-+ rm -f $(DESTDIR)${FISHINSTALLDIR}/crio-status.fish
-+ rm -f $(DESTDIR)${ZSHINSTALLDIR}/_crio-status
+ rm -f $(DESTDIR)$(PREFIX)/lib/systemd/system/crio-wipe.service
+ rm -f $(DESTDIR)$(PREFIX)/lib/systemd/system/crio.service
+ rm -f $(DESTDIR)$(PREFIX)/lib/systemd/system/cri-o.service
diff --git a/testing/cri-o/remove-systemd-files.patch b/testing/cri-o/remove-systemd-files.patch
index 9f8e545b8e4..bf1a0ab87d5 100644
--- a/testing/cri-o/remove-systemd-files.patch
+++ b/testing/cri-o/remove-systemd-files.patch
@@ -6,8 +6,8 @@ index 19f8052..135385c 100644
sed -i '/# INCLUDE/q' scripts/get
cat contrib/bundle/install-paths contrib/bundle/install >> scripts/get
--install: .gopathok install.bin install.man install.completions install.systemd install.config
-+install: .gopathok install.bin install.man install.completions install.config
+-install: install.bin install.man install.completions install.systemd install.config
++install: install.bin install.man install.completions install.config
install.bin-nobuild:
install ${SELINUXOPT} -D -m 755 bin/crio $(BINDIR)/crio
diff --git a/testing/cri-tools/APKBUILD b/testing/cri-tools/APKBUILD
deleted file mode 100644
index 1bed529611d..00000000000
--- a/testing/cri-tools/APKBUILD
+++ /dev/null
@@ -1,24 +0,0 @@
-# Contributor: Francesco Colista <fcolista@alpinelinux.org>
-# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
-pkgname=cri-tools
-pkgver=1.24.1
-pkgrel=0
-pkgdesc="CLI tool for Kubelet Container Runtime Interface (CRI)"
-url="https://github.com/kubernetes-sigs/cri-tools"
-arch="x86_64 aarch64 ppc64le s390x armv7 x86"
-license="Apache-2.0"
-makedepends="go"
-options="!check" # no check available
-source="$pkgname-$pkgver.tar.gz::https://github.com/kubernetes-sigs/cri-tools/archive/v$pkgver.tar.gz"
-
-build() {
- make all
-}
-
-package() {
- install -Dm755 build/bin/crictl "$pkgdir/usr/bin/crictl"
- install -Dm755 build/bin/critest "$pkgdir/usr/bin/critest"
-}
-sha512sums="
-d36fda28e733fbf29a53c0384da86abf56373f4471797aaa030dc3d63a2f4682dddb0a5fd9a54ae74ac20c76e8acc5244781d8688ae03f8e930e56bcbe896fb0 cri-tools-1.24.1.tar.gz
-"
diff --git a/testing/crispy-doom/APKBUILD b/testing/crispy-doom/APKBUILD
index 2b5f3c988eb..fb0aebadcb5 100644
--- a/testing/crispy-doom/APKBUILD
+++ b/testing/crispy-doom/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Jordan Christiansen <xordspar0@gmail.com>
# Maintainer: Jordan Christiansen <xordspar0@gmail.com>
pkgname=crispy-doom
-pkgver=5.11.1
+pkgver=6.0
pkgrel=0
pkgdesc="Limit-removing enhanced-resolution Doom source port based on Chocolate Doom"
url="https://github.com/fabiangreffrath/crispy-doom"
@@ -31,5 +31,5 @@ package() {
}
sha512sums="
-c970f1b32d15f91c6ec693571b9179a7607190a03cbbd2651bba0368120a25ef6ade2f157a2782dc4ea8cf05df23e66e6e7c8d2ea011bbb7626f4487f4e3b4c9 crispy-doom-5.11.1.tar.gz
+44ab9ffea1febe7eaab0c28d5dd178df821c200354aa9aeecd0b84dbe98419a037416f8d8e6176611dbd1a2dba8ec050d9e7267c61dcf8640c08c422765b270f crispy-doom-6.0.tar.gz
"
diff --git a/testing/criu/APKBUILD b/testing/criu/APKBUILD
index 4cb7acca275..4492f1e2762 100644
--- a/testing/criu/APKBUILD
+++ b/testing/criu/APKBUILD
@@ -1,23 +1,53 @@
# Contributor: Stuart Cardall <developer@it-offshore.co.uk>
# Maintainer: Stuart Cardall <developer@it-offshore.co.uk>
pkgname=criu
-pkgver=3.15
-pkgrel=1
+pkgver=3.19
+pkgrel=0
pkgdesc="Process tree checkpoint/restore utility"
url="https://criu.org"
arch="x86_64"
license="GPL-2.0-or-later LGPL-2.1-only"
-makedepends="xmlto asciidoc python3 protobuf-c-dev libnet-dev libnl3-dev
- protobuf-dev libcap-dev"
+makedepends="
+ asciidoc
+ libaio-dev
+ libcap-dev
+ libnet-dev
+ libnl3-dev
+ nftables-dev
+ protobuf-c-dev
+ protobuf-dev
+ py3-gpep517
+ py3-protobuf
+ py3-setuptools
+ py3-wheel
+ python3
+ xmlto
+ "
checkdepends="py3-yaml"
options="!check" # https://github.com/checkpoint-restore/criu/issues/434
-subpackages="$pkgname-dev $pkgname-doc py3-$pkgname:_py:noarch"
-source="$pkgname-$pkgver.tar.gz::https://github.com/checkpoint-restore/criu/archive/v$pkgver.tar.gz"
+subpackages="$pkgname-dev $pkgname-doc py3-$pkgname-pyc py3-$pkgname:_py:noarch"
+source="$pkgname-$pkgver.tar.gz::https://github.com/checkpoint-restore/criu/archive/v$pkgver.tar.gz
+ lfs64.patch
+ lfs64-test.patch
+ "
build() {
- # https://wiki.gentoo.org/wiki/Project:Quality_Assurance/As-needed
- export LDFLAGS=$(echo $LDFLAGS |sed 's|-Wl,--as-needed||') PYTHON=python3
- make
+ make \
+ CONFIG_AMDGPU=n \
+ PREFIX=/usr \
+ DESTDIR="$pkgdir" \
+ LIBDIR=/usr/lib \
+ LD="${CC:-gcc}"
+ cd crit
+ CRIU_VERSION_MAJOR="${pkgver%%.*}" \
+ CRIU_VERSION_MINOR="${pkgver##*.}" \
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+ cd ../lib
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
@@ -25,9 +55,18 @@ check() {
}
package() {
- make PREFIX=/usr DESTDIR="$pkgdir" LIBDIR=/usr/lib install
+ make \
+ CONFIG_AMDGPU=n \
+ PREFIX=/usr \
+ DESTDIR="$pkgdir" \
+ LIBDIR=/usr/lib \
+ LD="${CC:-gcc}" install
rm "$pkgdir"/usr/libexec/criu/scripts/systemd-autofs-restart.sh
rm -f "$pkgdir"/usr/lib/*.a
+ python3 -m installer -d "$pkgdir" \
+ crit/.dist/*.whl
+ python3 -m installer -d "$pkgdir" \
+ lib/.dist/*.whl
}
_py() {
@@ -36,8 +75,11 @@ _py() {
pkgdesc="Python3 bindings for Criu"
depends="python3 py3-protobuf"
- mkdir -p "$subpkgdir"/usr/lib
- mv "$pkgdir"/usr/lib/python* "$subpkgdir"/usr/lib/
+ amove usr/lib/python*
}
-sha512sums="e037e47d19b223fa2d2b437b13a87ffc70c03978ceb671fe1173e6061b1feabe1175b1dc3629443daee4b996f180e5b6683100b4f2e509b6c8a4dc33378fcb53 criu-3.15.tar.gz"
+sha512sums="
+d243818cdac51580c952a80e9164786a67ce5e294c0faa6dc700f5e8da8e36495f0b64f5c27b345ede7d6697ed7a69fa4e9a85cef451f32e3ffeb78564884571 criu-3.19.tar.gz
+d8906903972ec92667c60b6a9b8b1ca360a657556afcd62f851af0e98e904c1b58899377dfba475599f46e4b825ebf6edfe844b839149e47983084a0f55b0352 lfs64.patch
+f89267453dc089125d29f696635d798602658b5deeda83d1de0ae5959eea60804f3e26dd024520d12fed104692a65f11c3d1e0db819e7e87dda450120981afd8 lfs64-test.patch
+"
diff --git a/testing/criu/lfs64-test.patch b/testing/criu/lfs64-test.patch
new file mode 100644
index 00000000000..d4295c06314
--- /dev/null
+++ b/testing/criu/lfs64-test.patch
@@ -0,0 +1,20 @@
+--- a/test/zdtm/static/unlink_multiple_largefiles.c
++++ b/test/zdtm/static/unlink_multiple_largefiles.c
+@@ -124,7 +124,7 @@
+ check_extent_map(fiemap);
+ free(fiemap);
+
+- lseek64(fd, FSIZE, SEEK_SET);
++ lseek(fd, FSIZE, SEEK_SET);
+
+ create_check_pattern(ebuf, BUFSIZE, seed);
+
+@@ -174,7 +174,7 @@
+ }
+ test_msg("Created file: %s, fd %d\n", fnm, fd);
+
+- if (lseek64(fd, FSIZE, SEEK_SET) < 0) {
++ if (lseek(fd, FSIZE, SEEK_SET) < 0) {
+ pr_perror("Cannot seek to offset %llx", FSIZE);
+ goto failed;
+ }
diff --git a/testing/criu/lfs64.patch b/testing/criu/lfs64.patch
new file mode 100644
index 00000000000..8fdbbcddd8a
--- /dev/null
+++ b/testing/criu/lfs64.patch
@@ -0,0 +1,58 @@
+--- a/criu/include/restorer.h
++++ b/criu/include/restorer.h
+@@ -177,7 +177,7 @@
+ struct rst_aio_ring *rings;
+ unsigned int rings_n;
+
+- struct rlimit64 *rlims;
++ struct rlimit *rlims;
+ unsigned int rlims_n;
+
+ pid_t *helpers /* the TASK_HELPERS to wait on at the end of restore */;
+--- a/criu/include/fdinfo.h
++++ b/criu/include/fdinfo.h
+@@ -10,7 +10,7 @@
+ #include "images/timerfd.pb-c.h"
+
+ struct fdinfo_common {
+- off64_t pos;
++ off_t pos;
+ int flags;
+ int mnt_id;
+ int owner;
+--- a/criu/cr-restore.c
++++ b/criu/cr-restore.c
+@@ -3172,9 +3172,9 @@
+ {
+ int i;
+ TaskRlimitsEntry *rls = core->tc->rlimits;
+- struct rlimit64 *r;
++ struct rlimit *r;
+
+- ta->rlims = (struct rlimit64 *)rst_mem_align_cpos(RM_PRIVATE);
++ ta->rlims = (struct rlimit *)rst_mem_align_cpos(RM_PRIVATE);
+
+ if (!rls)
+ return prepare_rlimits_from_fd(pid, ta);
+--- a/criu/cr-dump.c
++++ b/criu/cr-dump.c
+@@ -358,7 +358,7 @@
+ int res;
+
+ for (res = 0; res < rls->n_rlimits; res++) {
+- struct rlimit64 lim;
++ struct rlimit lim;
+
+ if (syscall(__NR_prlimit64, pid, res, NULL, &lim)) {
+ pr_perror("Can't get rlimit %d", res);
+--- a/criu/servicefd.c
++++ b/criu/servicefd.c
+@@ -66,7 +66,7 @@
+
+ int init_service_fd(void)
+ {
+- struct rlimit64 rlimit;
++ struct rlimit rlimit;
+
+ /*
+ * Service fd engine implies that file descriptors used won't be
diff --git a/testing/crossplane/APKBUILD b/testing/crossplane/APKBUILD
new file mode 100644
index 00000000000..31e34c4ee9b
--- /dev/null
+++ b/testing/crossplane/APKBUILD
@@ -0,0 +1,29 @@
+# Contributor: Hugo Rodrigues <hugorodrigues@hugorodrigues.xyz>>
+# Maintainer: Hugo Rodrigues <hugorodrigues@hugorodrigues.xyz>>
+pkgname=crossplane
+pkgver=0.5.8
+pkgrel=2
+pkgdesc="Quick and reliable way to convert NGINX configurations into JSON and back."
+url="https://github.com/nginxinc/crossplane/"
+arch="noarch"
+license="Apache-2.0"
+depends="python3"
+makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
+source="https://pypi.io/packages/source/c/crossplane/crossplane-$pkgver.tar.gz"
+
+build() {
+ python3 setup.py build
+}
+
+check() {
+ python3 setup.py test
+}
+
+package() {
+ python3 setup.py install --skip-build --root="$pkgdir"
+}
+
+sha512sums="
+40354ff7aa3a75093527550971a12e128b9f6e18589d1a0f568c6b276589a3440f4ee3a7f9efc80b301971af87321d2b2a363ced6e10353b9b8ae5add7b7fb60 crossplane-0.5.8.tar.gz
+"
diff --git a/testing/crosstool-ng/0001-sunrpc.diff b/testing/crosstool-ng/0001-sunrpc.diff
new file mode 100644
index 00000000000..24f7b457606
--- /dev/null
+++ b/testing/crosstool-ng/0001-sunrpc.diff
@@ -0,0 +1,33 @@
+--- a/sunrpc/rpc/types.h
++++ a/sunrpc/rpc/types.h
+@@ -69,24 +69,14 @@ typedef unsigned long rpcport_t;
+ #include <sys/types.h>
+ #endif
+
+-#if defined __APPLE_CC__ || defined __FreeBSD__
+-# define __u_char_defined
+-# define __daddr_t_defined
+-#endif
+-
+-#ifndef __u_char_defined
+-typedef __u_char u_char;
+-typedef __u_short u_short;
+-typedef __u_int u_int;
+-typedef __u_long u_long;
+-typedef __quad_t quad_t;
+-typedef __u_quad_t u_quad_t;
+-typedef __fsid_t fsid_t;
++/* IMPORTANT NOTE: This has been modified to build against the musl C
++ * library and it probably now ONLY builds with the musl C library.
++ *
++ * See: https://sourceware.org/bugzilla/show_bug.cgi?id=21604
++ */
+ # define __u_char_defined
+-#endif
+ #ifndef __daddr_t_defined
+-typedef __daddr_t daddr_t;
+-typedef __caddr_t caddr_t;
++typedef int daddr_t;
+ # define __daddr_t_defined
+ #endif
+
diff --git a/testing/crosstool-ng/APKBUILD b/testing/crosstool-ng/APKBUILD
index 9cdf776ec1d..d39e20ac174 100644
--- a/testing/crosstool-ng/APKBUILD
+++ b/testing/crosstool-ng/APKBUILD
@@ -1,20 +1,35 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=crosstool-ng
-pkgver=1.24.0
+pkgver=1.25.0
pkgrel=0
pkgdesc="tool for building toolchains"
url="http://crosstool-ng.org/"
license="LGPL-2.1-or-later GPL-2.0-or-later CC-BY-SA-2.5"
arch="x86 x86_64 ppc64le"
-depends="bash gawk bison flex automake autoconf libtool cvs sed texinfo gperf"
+depends="
+ autoconf
+ automake
+ bash
+ bison
+ cvs
+ file
+ flex
+ g++
+ gawk
+ gperf
+ libtool
+ make
+ patch
+ sed
+ wget
+ xz
+ texinfo"
makedepends="ncurses-dev help2man xz gettext-dev"
subpackages="$pkgname-doc $pkgname-bash-completion"
-source="http://crosstool-ng.org/download/crosstool-ng/crosstool-ng-$pkgver.tar.xz"
-
-builddir="$srcdir/$pkgname-$pkgver"
+source="http://crosstool-ng.org/download/crosstool-ng/crosstool-ng-$pkgver.tar.xz
+ 0001-sunrpc.diff"
build() {
- cd "$builddir"
./configure --prefix=/usr \
--sysconfdir=/etc \
--mandir=/usr/share/man \
@@ -23,13 +38,21 @@ build() {
}
package() {
- cd "$builddir"
make DESTDIR="$pkgdir" install
# bash completion
mkdir -p "$pkgdir"/usr/share/bash-completion/completions/
mv "$pkgdir"/usr/share/bash-completion/completions/ct-ng \
"$pkgdir"/usr/share/bash-completion/completions/$pkgname
+
+ # glibc patch
+ for glibc in 2.28 2.29; do
+ install -D -m 0644 "$srcdir"/0001-sunrpc.diff \
+ "$pkgdir"/usr/share/crosstool-ng/packages/glibc/$glibc/0001-sunrpc.patch
+ done
}
-sha512sums="89b8794a4184ad4928750e29712ed4f194aa1d0b93768d67ff64f30c30f1b1e165647cafc6de94d68d3ef70e50446e544dad65aa36137511a32ee7a667dddfb4 crosstool-ng-1.24.0.tar.xz"
+sha512sums="
+e25b6fb577ce439592a889fe73bbde4109309e7fe154e7133fefaeb5522c97e3f96958941aa1bc86448fcecb6b4021ff793c595048f5ef8e5ecc75e9a48c0c45 crosstool-ng-1.25.0.tar.xz
+4ef553b1e5295924e86c8457fac7ad128107f97c7ea247246f89a626937906f67f9a734aa77dc438680c2ac4d684f74819f8fde105459de4402dc7315fffa805 0001-sunrpc.diff
+"
diff --git a/testing/crowdsec/APKBUILD b/testing/crowdsec/APKBUILD
index 94b9a229db5..80aa7a41b5a 100644
--- a/testing/crowdsec/APKBUILD
+++ b/testing/crowdsec/APKBUILD
@@ -1,37 +1,94 @@
+# Contributor: tetsumaki <yd-alpine@tetsumaki.net>
# Contributor: Nicolas Lorin <androw95220@gmail.com>
# Maintainer: Nicolas Lorin <androw95220@gmail.com>
pkgname=crowdsec
-pkgver=1.3.4
-pkgrel=1
+pkgver=1.6.1
+pkgrel=0
pkgdesc="behavior detection engine, coupled with a global IP reputation network"
url="https://crowdsec.net/"
-# riscv64: missing yq, binutils-gold
-arch="all !riscv64"
+arch="all"
license="MIT"
-depends="tzdata yq"
-makedepends="go jq bash gettext binutils-gold coreutils"
+makedepends="go sqlite-dev re2-dev"
+subpackages="
+ $pkgname-openrc
+ $pkgname-email-plugin:_plugin
+ $pkgname-http-plugin:_plugin
+ $pkgname-slack-plugin:_plugin
+ $pkgname-splunk-plugin:_plugin
+ "
options="!check" # no test suite identified
-source="$pkgname-$pkgver.tar.gz::https://github.com/crowdsecurity/crowdsec/archive/refs/tags/v$pkgver.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/crowdsecurity/crowdsec/archive/refs/tags/v$pkgver.tar.gz
+ system-sqlite.patch
+ crowdsec.initd
+ "
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
build() {
- make BUILD_VERSION=v$pkgver build
+ make \
+ BUILD_VERSION=v$pkgver \
+ BUILD_TAG="aports"
}
package() {
- mkdir -p $pkgdir/usr/bin/
- install -m 755 -D ./cmd/crowdsec/crowdsec $pkgdir/usr/bin/crowdsec
- install -m 755 -D ./cmd/crowdsec-cli/cscli $pkgdir/usr/bin/cscli
+ install -dm 0755 \
+ "$pkgdir"/etc/crowdsec/acquis.d \
+ "$pkgdir"/etc/crowdsec/hub \
+ "$pkgdir"/etc/crowdsec/notifications \
+ "$pkgdir"/etc/crowdsec/patterns \
+ "$pkgdir"/usr/libexec/crowdsec/plugins \
+ "$pkgdir"/var/lib/crowdsec/data
+ install -Dm 0755 "$srcdir"/crowdsec.initd "$pkgdir"/etc/init.d/crowdsec
+ install -Dm 0755 cmd/crowdsec-cli/cscli "$pkgdir"/usr/bin/cscli
+ install -m 0755 cmd/crowdsec/crowdsec "$pkgdir"/usr/bin/crowdsec
+ install -m 0644 config/patterns/* "$pkgdir"/etc/crowdsec/patterns/
+ install -m 0644 \
+ config/acquis.yaml \
+ config/console.yaml \
+ config/profiles.yaml \
+ config/simulation.yaml \
+ "$pkgdir"/etc/crowdsec/
+ install -m 0600 \
+ config/local_api_credentials.yaml \
+ config/online_api_credentials.yaml \
+ "$pkgdir"/etc/crowdsec/
+ install -m 0600 \
+ cmd/notification-email/email.yaml \
+ cmd/notification-http/http.yaml \
+ cmd/notification-slack/slack.yaml \
+ cmd/notification-splunk/splunk.yaml \
+ cmd/notification-sentinel/sentinel.yaml \
+ "$pkgdir"/etc/crowdsec/notifications
+ install -m 0551 \
+ cmd/notification-email/notification-email \
+ cmd/notification-http/notification-http \
+ cmd/notification-slack/notification-slack \
+ cmd/notification-splunk/notification-splunk \
+ cmd/notification-sentinel/notification-sentinel \
+ "$pkgdir"/usr/libexec/crowdsec/plugins/
+ sed \
+ -e '/^\s*pid_dir:/d' \
+ -e 's/^\(\s*log_dir:\s*\)\(.*\)$/\1\/var\/log\/crowdsec\//' \
+ -e 's/^\(\s*plugin_dir:\s*\)\(.*\)$/\1\/usr\/libexec\/crowdsec\/plugins\//' \
+ -e 's/^\(\s*group:\s*\)\(\w*\)\(.*\)$/\1nobody\3/' \
+ config/config.yaml \
+ | install -m 0600 /dev/stdin "$pkgdir"/etc/crowdsec/config.yaml
+ sed 's/systemctl reload crowdsec/rc-service crowdsec reload/' config/crowdsec.cron.daily \
+ | install -Dm 0750 /dev/stdin "$pkgdir"/etc/periodic/daily/crowdsec
+}
- mkdir -p $pkgdir/etc/crowdsec/
- mkdir -p $pkgdir/etc/crowdsec/hub/
- install -m 644 -D ./config/config.yaml $pkgdir/etc/crowdsec/
- install -m 644 -D ./config/dev.yaml $pkgdir/etc/crowdsec/
- install -m 644 -D ./config/user.yaml $pkgdir/etc/crowdsec/
- install -m 644 -D ./config/acquis.yaml $pkgdir/etc/crowdsec/
- install -m 644 -D ./config/profiles.yaml $pkgdir/etc/crowdsec/
- install -m 644 -D ./config/simulation.yaml $pkgdir/etc/crowdsec/
+_plugin() {
+ _subpkgname="${subpkgname:9:(${#subpkgname}-16)}"
+ pkgdesc="$pkgname plugin: $_subpkgname"
+ depends="$pkgname=$pkgver-r$pkgrel"
+ amove etc/crowdsec/notifications/$_subpkgname.yaml
+ amove usr/libexec/crowdsec/plugins/notification-$_subpkgname
}
sha512sums="
-d8a2edaa2853d9b7af9769b36fc6f9dbb651cff4cfbd2dd55ab9598563740c2f33b6cf52cf92fbc2917cd8b98e0c2e257c0d15a40da82e3af5f3ceb7e8be0973 crowdsec-1.3.4.tar.gz
+96dddefcb459e044c2e73cf110b5a6b403fafbb7a68321fc1482a836c6d1ac515c0fd294d831fea5f3367f0057d5e6d1f978721132b7ee52e9c4fde9e36e9078 crowdsec-1.6.1.tar.gz
+ddabca84cb32b6461a3944b00e38807715320bbf46cf7b39fcbba0190d6dae7748950e1a424b95247779fdd15dbb2120fab43b80b479a03c895f246d45ecaf7b system-sqlite.patch
+098db47afd457c9d68c69097c31fae29cd0c0dc98199b254f75b130ac228ac43c024182bebd7eae756ae4fa2f54682b7f0534cb04311468224d9df2ce4f67ec2 crowdsec.initd
"
diff --git a/testing/crowdsec/crowdsec.initd b/testing/crowdsec/crowdsec.initd
new file mode 100644
index 00000000000..78f4940c436
--- /dev/null
+++ b/testing/crowdsec/crowdsec.initd
@@ -0,0 +1,18 @@
+#!/sbin/openrc-run
+
+command=/usr/bin/crowdsec
+command_args="-c /etc/crowdsec/config.yaml"
+pidfile="/run/${RC_SVCNAME}.pid"
+command_background=true
+extra_started_commands="reload"
+description_reload="Reload configuration"
+
+depend() {
+ after firewall
+}
+
+reload() {
+ ebegin "Reloading $RC_SVCNAME"
+ start-stop-daemon --signal HUP --pidfile "$pidfile"
+ eend $?
+}
diff --git a/testing/crowdsec/system-sqlite.patch b/testing/crowdsec/system-sqlite.patch
new file mode 100644
index 00000000000..63a5b7cd0f9
--- /dev/null
+++ b/testing/crowdsec/system-sqlite.patch
@@ -0,0 +1,11 @@
+--- a/Makefile 2023-09-18 11:54:09.000000000 +0200
++++ b/Makefile 2023-09-18 20:19:59.347761343 +0200
+@@ -81,7 +81,7 @@ ifneq (,$(DOCKER_BUILD))
+ LD_OPTS_VARS += -X '$(GO_MODULE_NAME)/pkg/cwversion.System=docker'
+ endif
+
+-GO_TAGS := netgo,osusergo,sqlite_omit_load_extension
++GO_TAGS := netgo,osusergo,sqlite_omit_load_extension,libsqlite3
+
+ # this will be used by Go in the make target, some distributions require it
+ export PKG_CONFIG_PATH:=/usr/local/lib/pkgconfig:$(PKG_CONFIG_PATH)
diff --git a/testing/crust/APKBUILD b/testing/crust/APKBUILD
deleted file mode 100644
index e2a55fec0a0..00000000000
--- a/testing/crust/APKBUILD
+++ /dev/null
@@ -1,42 +0,0 @@
-# Contributor: Milan P. Stanić <mps@arvanta.net>
-# Maintainer: Milan P. Stanić <mps@arvanta.net>
-pkgname=crust
-pkgver=0.5
-pkgrel=0
-pkgdesc="libre SCP firmware for Allwinner sunxi SoCs"
-url="https://github.com/crust-firmware/crust"
-arch="aarch64" # only needed for sunxi ARM64 SOCs
-license="BSD-3-clause or GPL-2.0-only"
-options="!check" # no tests
-makedepends="gcc-or1k-elf binutils-or1k-elf dtc bison flex"
-source="https://github.com/crust-firmware/crust/archive/v$pkgver/crust-v$pkgver.tar.gz"
-_platforms="pinebook pinephone pinetab pine_h64"
-for platform in $_platforms
-do
- subpackages="$subpackages $pkgname-$platform:_subpackage"
-done
-
-
-build() {
- for platform in $_platforms
- do
- msg "Building SCP firmware for: $platform"
- mkdir -p "$builddir"/build/$platform
- make CROSS_COMPILE=or1k-elf- "$platform"_defconfig
- make CROSS_COMPILE=or1k-elf- OBJ="$builddir"/build/$platform "$platform"_defconfig scp
- make clean
- done
-}
-
-package() {
- install -Dm644 "$builddir"/LICENSE.md "$pkgdir"/usr/share/license/$pkgname/LICENSE.md
-}
-
-_subpackage() {
- pkgdesc="SCP Firmware for: ${subpkgname#crust-}"
- install -Dm644 "$builddir"/build/"${subpkgname#crust-}"/scp/scp.bin "$subpkgdir"/usr/share/crust/"${subpkgname#crust-}"/scp.bin
-}
-
-sha512sums="
-1a3811053fd3a27285a1377888ab5b36e9363a2f5818f69966eb7f5214e571475a2a7865b9e1b68387940a9a7e9dc3841d2458544c155aecc5b9da041eb946ba crust-v0.5.tar.gz
-"
diff --git a/testing/crypto++/APKBUILD b/testing/crypto++/APKBUILD
deleted file mode 100644
index 1706804af0e..00000000000
--- a/testing/crypto++/APKBUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-# Contributor: August Klein <amatcoder@gmail.com>
-# Maintainer: August Klein <amatcoder@gmail.com>
-pkgname=crypto++
-_pkgname=cryptopp
-pkgver=8.6.0
-_pkgver=${pkgver//./}
-pkgrel=0
-pkgdesc="A free C++ class library of cryptographic schemes"
-url="https://www.cryptopp.com/"
-arch="all"
-license="BSL-1.0"
-depends_dev="$pkgname"
-subpackages="$pkgname-static $pkgname-dev"
-source="https://www.cryptopp.com/$_pkgname$_pkgver.zip"
-builddir="$srcdir"
-
-build() {
- make CXXFLAGS="$CXXFLAGS -DNDEBUG -fPIC" -f GNUmakefile \
- dynamic static libcryptopp.pc
-}
-
-check() {
- make -f GNUmakefile check
-}
-
-package() {
- make DESTDIR="$pkgdir" PREFIX="/usr" install-lib
-}
-
-sha512sums="
-e7773f5e4a7dc7e8e735b1702524bee56ba38e5211544c9c9778bc51ed8dc7b376c17f2e406410043b636312336f26f76dc963f298872f8c13933e88c232fc03 cryptopp860.zip
-"
diff --git a/testing/cscope/APKBUILD b/testing/cscope/APKBUILD
index ff4a2fab0d4..5ffcb61bfbc 100644
--- a/testing/cscope/APKBUILD
+++ b/testing/cscope/APKBUILD
@@ -2,9 +2,9 @@
# Maintainer: Roberto Oliveira <robertoguimaraes8@gmail.com>
pkgname=cscope
pkgver=15.9
-pkgrel=0
+pkgrel=1
pkgdesc="Cscope is a developer's tool for browsing source code."
-url="http://cscope.sourceforge.net/"
+url="https://cscope.sourceforge.net/"
arch="all"
license="BSD-3-Clause"
makedepends="ncurses-dev"
diff --git a/testing/csfml/APKBUILD b/testing/csfml/APKBUILD
index b557d1854db..6bb5f8093b5 100644
--- a/testing/csfml/APKBUILD
+++ b/testing/csfml/APKBUILD
@@ -1,34 +1,34 @@
# Maintainer: Daniel Sabogal <dsabogalcc@gmail.com>
pkgname=csfml
-pkgver=2.5.1
+pkgver=2.5.2
pkgrel=0
pkgdesc="C bindings for SFML"
url="https://www.sfml-dev.org/"
arch="all"
license="Zlib"
-makedepends="cmake doxygen sfml-dev"
+makedepends="cmake doxygen samurai sfml-dev"
subpackages="$pkgname-dev $pkgname-doc"
-options="!check"
source="$pkgname-$pkgver.tar.gz::https://github.com/SFML/CSFML/archive/$pkgver.tar.gz"
-
builddir="$srcdir/CSFML-$pkgver"
+options="!check"
+
build() {
- cmake . \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCSFML_BUILD_DOC=TRUE \
-DCSFML_LINK_SFML_STATICALLY=FALSE \
-DSFML_DIR=/usr/share/SFML/cmake/Modules
- make
+ cmake --build build
}
package() {
- make DESTDIR="$pkgdir" -C "$builddir" install
+ DESTDIR="$pkgdir" cmake --install build
mkdir -p "$pkgdir"/usr/share/doc
mv "$pkgdir"/usr/share/CSFML/doc "$pkgdir"/usr/share/doc/CSFML
}
sha512sums="
-353baf9879d1c96c04761c3d734822f35fea2b420e7c1b880caef56fabd34d9b10a31772cd3e5bcb86e3c50d6c4552aa69a0351e3d29cb4156a3f1758e7b7fc2 csfml-2.5.1.tar.gz
+d651b42e777647d748edf8d2cc40e6df9b0e3fe0f9af5f5c84e9d62ac5bdf6e7e0ff4bb037ee81b59e0bdec544ad05e3b503a4555f03bfa6292a80c6188c12dc csfml-2.5.2.tar.gz
"
diff --git a/testing/csmith/APKBUILD b/testing/csmith/APKBUILD
index b6cc3cf202e..b4d368904e9 100644
--- a/testing/csmith/APKBUILD
+++ b/testing/csmith/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Daniel Sabogal <dsabogalcc@gmail.com>
pkgname=csmith
pkgver=2.3.0
-pkgrel=0
+pkgrel=1
pkgdesc="Tool for generating random C programs"
url="https://embed.cs.utah.edu/csmith/"
arch="all"
diff --git a/testing/csol/20-fix-doc-install.patch b/testing/csol/20-fix-doc-install.patch
deleted file mode 100644
index 81d1336c00e..00000000000
--- a/testing/csol/20-fix-doc-install.patch
+++ /dev/null
@@ -1,10 +0,0 @@
-The CMake install instructions use an incorrect directory for the manpage,
-both for the source and destination.
---- ./CMakeLists.txt.orig 2022-02-10 20:58:42 +01:00
-+++ ./CMakeLists.txt 2022-03-30 09:21:27 +02:00
-@@ -24,4 +24,4 @@
- install(FILES "${CMAKE_BINARY_DIR}/csolrc" DESTINATION /etc/xdg/csol COMPONENT config)
- install(DIRECTORY "${CMAKE_BINARY_DIR}/themes" DESTINATION /etc/xdg/csol COMPONENT config)
- install(DIRECTORY "${CMAKE_BINARY_DIR}/games" DESTINATION /etc/xdg/csol COMPONENT config)
--install(FILES "${CMAKE_BINARY_DIR}/doc/csol.6" DESTINATION ${CMAKE_INSTALL_PREFIX}/man/man6)
-+install(FILES "${PROJECT_SOURCE_DIR}/doc/csol.6" DESTINATION ${CMAKE_INSTALL_PREFIX}/share/man/man6)
diff --git a/testing/csol/APKBUILD b/testing/csol/APKBUILD
index 8259bcb4d37..ce83359057e 100644
--- a/testing/csol/APKBUILD
+++ b/testing/csol/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Erwan Rouchet <lucidiot@brainshit.fr>
# Maintainer: Erwan Rouchet <lucidiot@brainshit.fr>
pkgname=csol
-pkgver=1.5.0
+pkgver=1.6.0
pkgrel=0
pkgdesc="Small collection of solitaire/patience games to play in the terminal"
url="https://nielssp.dk/csol/"
@@ -10,7 +10,6 @@ license="MIT"
makedepends="cmake ncurses-dev"
source="$pkgname-$pkgver.tar.gz::https://github.com/nielssp/csol/archive/v$pkgver.tar.gz
10-fix-ncurses.patch
- 20-fix-doc-install.patch
"
subpackages="$pkgname-doc"
options="!check" # no tests
@@ -27,7 +26,6 @@ package() {
}
sha512sums="
-d49f7f23caa116a1cec19ff17db93e41b9c3486e0494e6629d3ec1b307890de68d9c6fe80fe937b92b5dd9d6dcaf91cb4cf4167cc2fec447613426ca1ccb0c96 csol-1.5.0.tar.gz
+2bac4e373d84c585e8bdb4671e5a446d2a174f8bfa60eaa6a8fe0d1ff5074878f2f8d0907297dd1452e5e5b1e7bfd73ba672a7820a3d4664e9abd6e654f57107 csol-1.6.0.tar.gz
2ad2b066bdd79413ea7a72482999fc9a47d6c3b07af753ab45ee07e8ed107dbf0b2ea7492ad60eaafcc69cbf78ff0ee75b84eac127823250c5513be0d10d1a74 10-fix-ncurses.patch
-c56744be00f9ec253c305868accda020170dc6be75ce34ea6ff3cd5c9016b68e661aae796cf05ecafb185b3921bbd231bee97943f79f67a5d6cc305fe3576644 20-fix-doc-install.patch
"
diff --git a/testing/cssmin/APKBUILD b/testing/cssmin/APKBUILD
deleted file mode 100644
index abd3286b2ee..00000000000
--- a/testing/cssmin/APKBUILD
+++ /dev/null
@@ -1,25 +0,0 @@
-# Contributor: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-# Maintainer: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-pkgname=cssmin
-pkgver=0.2.0
-pkgrel=1
-pkgdesc="A Python port of the YUI CSS compression algorithm"
-options="!check" # no tests
-url="https://github.com/zacharyvoase/cssmin"
-arch="noarch"
-license="BSD-3-Clause AND MIT"
-depends="python3"
-makedepends="py3-setuptools"
-source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/c/cssmin/cssmin-$pkgver.tar.gz"
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-9422152578bf28cf7c3eb063c1f0dd3604a3d8fa73cd81cde09ae297ab27669126c230ef40a2e8c37083c1e781ab977554f9012e60979fe431ceb83d43452a9d cssmin-0.2.0.tar.gz
-"
diff --git a/testing/ctop/APKBUILD b/testing/ctop/APKBUILD
deleted file mode 100644
index 153b9084f11..00000000000
--- a/testing/ctop/APKBUILD
+++ /dev/null
@@ -1,25 +0,0 @@
-# Contributor: Shyam Sunder <sgsunder1@gmail.com>
-# Maintainer: Shyam Sunder <sgsunder1@gmail.com>
-pkgname=ctop
-pkgver=0.7.6
-pkgrel=4
-pkgdesc="Top-like interface for container metrics"
-url="https://ctop.sh/"
-license="MIT"
-arch="all"
-depends="docker"
-makedepends="go"
-options="!check" # no test suite
-source="https://github.com/bcicen/ctop/archive/$pkgver/ctop-$pkgver.tar.gz"
-
-build() {
- make build
-}
-
-package() {
- install -Dm755 ctop "$pkgdir"/usr/bin/ctop
-}
-
-sha512sums="
-84825614ceee61a470121c9d07c55ca1b188f816c669bab862efc94b260d689316aa55454cf12a0b697a0b4a05ea27d00662e699507f9cd243891fa0a43f96c5 ctop-0.7.6.tar.gz
-"
diff --git a/testing/ctorrent-dnh/APKBUILD b/testing/ctorrent-dnh/APKBUILD
index 9fa00deea92..f3a7164a6be 100644
--- a/testing/ctorrent-dnh/APKBUILD
+++ b/testing/ctorrent-dnh/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Denis Ryabyy <vv1r0x@gmail.com>
pkgname=ctorrent-dnh
pkgver=3.3.2
-pkgrel=1
+pkgrel=2
pkgdesc="Enhanced CTorrent is a BitTorrent client for unix-like environments"
url="http://www.rahul.net/dholmes/ctorrent/"
arch="all"
@@ -16,7 +16,7 @@ build() {
./configure --prefix=/usr && make
}
-package () {
+package() {
cd "$builddir"
make DESTDIR="$pkgdir" install
}
diff --git a/testing/ctypes-sh/APKBUILD b/testing/ctypes-sh/APKBUILD
deleted file mode 100644
index 7ff866e6619..00000000000
--- a/testing/ctypes-sh/APKBUILD
+++ /dev/null
@@ -1,51 +0,0 @@
-# Maintainer: psykose <alice@ayaya.dev>
-pkgname=ctypes-sh
-# additional support for musl was merged after the last tag
-pkgver=1.2_git20201103
-_gitrev=6982e6cb226502cb89173fb272b3ef0438e593c4
-pkgrel=0
-pkgdesc="FFI for bash"
-url="https://github.com/taviso/ctypes.sh"
-# ftbfs arm: (__ILP32__ undefined?)
-# ppc64le: messed up includes
-arch="all !armhf !armv7 !ppc64le"
-license="MIT"
-depends="bash"
-makedepends="
- autoconf
- automake
- elfutils-dev
- libdwarf-dev
- libffi-dev
- libtool
- "
-source="https://github.com/taviso/ctypes.sh/archive/$_gitrev/ctypes-sh-$_gitrev.tar.gz"
-builddir="$srcdir/ctypes.sh-$_gitrev"
-options="!check" # tests need install
-
-prepare() {
- default_prepare
-
- NOCONFIGURE=1 ./autogen.sh
-}
-
-build() {
- ./configure \
- --host=$CHOST \
- --build=$CBUILD \
- --target=$CTARGET \
- --prefix=/usr
- make
-}
-
-check() {
- make -C test
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-a06ee9cf030267bfda6bd31281c05bbd6886919df28875947660d1fba81a3c2565a82884c0318600be0bdb6970f46aa39d47c59ce9ebd3c767e56b7c0cb0cb8c ctypes-sh-6982e6cb226502cb89173fb272b3ef0438e593c4.tar.gz
-"
diff --git a/testing/cue-cli/APKBUILD b/testing/cue-cli/APKBUILD
new file mode 100644
index 00000000000..8aa0453215f
--- /dev/null
+++ b/testing/cue-cli/APKBUILD
@@ -0,0 +1,52 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=cue-cli
+pkgver=0.7.0
+pkgrel=2
+pkgdesc="CLI for CUE configuration and validation language"
+url="https://cuelang.org/"
+# 32-bit: value out of int range
+# s390x: TextExe fails (slice bounds out of range)
+arch="all !x86 !armhf !armv7 !s390x"
+license="Apache-2.0"
+makedepends="go"
+subpackages="
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
+ "
+options="net"
+source="$pkgname-$pkgver.tar.gz::https://github.com/cue-lang/cue/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/cue-$pkgver"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ go build -v -o bin/cue \
+ -ldflags "-X cuelang.org/go/cmd/cue/cmd.version=v$pkgver" \
+ ./cmd/cue/
+
+ for shell in bash fish zsh; do
+ ./bin/cue completion $shell > cue.$shell
+ done
+}
+
+check() {
+ go test ./...
+}
+
+package() {
+ install -Dm755 bin/cue -t "$pkgdir"/usr/bin/
+
+ install -Dm644 cue.bash \
+ "$pkgdir"/usr/share/bash-completion/completions/cue
+ install -Dm644 cue.fish \
+ "$pkgdir"/usr/share/fish/vendor_completions.d/cue.fish
+ install -Dm644 cue.zsh \
+ "$pkgdir"/usr/share/zsh/site-functions/_cue
+}
+
+sha512sums="
+471ebc4ac81dfc0df42d8e8bd5e858b8a2f958c909ccd0b391ed4af669e7eba3908bcde63ca21973f072e35f66d307180fb3fc43627eb4de6385011bcf48aed1 cue-cli-0.7.0.tar.gz
+"
diff --git a/testing/cups-pdf/APKBUILD b/testing/cups-pdf/APKBUILD
index 85a7f7466a7..0b24be3f2bf 100644
--- a/testing/cups-pdf/APKBUILD
+++ b/testing/cups-pdf/APKBUILD
@@ -1,17 +1,16 @@
# Maintainer: Leonardo Arena <rnalrd@alpinelinux.org>
pkgname=cups-pdf
pkgver=3.0.1
-pkgrel=1
+pkgrel=2
pkgdesc="CUPS PDF printer"
url="https://www.cups-pdf.de"
arch="all"
-license="GPL"
+license="GPL-2.0-or-later"
makedepends="cups-dev"
options="!check"
pkgusers="lp"
pkggroups="lp"
source="https://www.cups-pdf.de/src/cups-pdf_$pkgver.tar.gz"
-builddir="$srcdir"/$pkgname-$pkgver
build() {
cd "$builddir/src"
@@ -19,9 +18,9 @@ build() {
}
package() {
- cd "$builddir"
install -D -m755 src/cups-pdf "$pkgdir"/usr/lib/cups/backend/cups-pdf
- install -D -m644 extra/cups-pdf.conf "$pkgdir"/etc/cups/cups-pdf.conf
+ install -d -g lp "$pkgdir"/etc/cups
+ install -D -m644 -g lp extra/cups-pdf.conf "$pkgdir"/etc/cups/cups-pdf.conf
install -D -m644 extra/CUPS-PDF_opt.ppd "$pkgdir"/usr/share/ppd/cups-pdf/cups-pdf.ppd
install -d -o lp -g lp "$pkgdir"/var/spool/cups-pdf
}
diff --git a/testing/cura/APKBUILD b/testing/cura/APKBUILD
index 216a3ce90c1..c6964f877a2 100644
--- a/testing/cura/APKBUILD
+++ b/testing/cura/APKBUILD
@@ -2,37 +2,50 @@
# Maintainer: Anjandev Momi <anjan@momi.ca>
pkgname=cura
# uranium and curaengine packages must be updated in sync with this verion number
-# py3-pynest2d should be checked as well, but the version is not always in sync
-pkgver=4.13.1
-pkgrel=0
+# py3-pynest2d and fdm-materials should be checked as well, but their versions are not always in sync
+pkgver=5.2.2
+pkgrel=1
pkgdesc="3D printer / slicing GUI built on top of the Uranium framework"
url="https://ultimaker.com/software/ultimaker-cura"
-arch="noarch !ppc64le !x86 !armhf !riscv64" # ppc64le: no py3-keyring
+arch="noarch !ppc64le !x86 !armhf !riscv64 !s390x !armv7" # ppc64le: no py3-keyring
# x86: no curaengine
# armhf: no uranium, qt5-qtquickcontrols, qt5-qtquickcontrols2, qt5-qtgraphicaleffects
# riscv64: no uranium
+# s390x: no py3-trimesh, no py3-numpy-stl
+# armv7: no py3-trimesh
license="LGPL-3.0-or-later"
# add cura-binary-data to depends when packaged
depends="
curaengine
+ fdm-materials
uranium
+ py3-arcus
py3-keyring
+ py3-numpy-stl
+ py3-pyclipper
py3-pynest2d
+ py3-pyserial
+ py3-qt6
py3-requests
+ py3-trimesh
py3-zeroconf
- qt5-qtquickcontrols
- qt5-qtquickcontrols2
- qt5-qtgraphicaleffects
"
makedepends="samurai cmake gettext gettext-dev" # needs msginit from gettext
checkdepends="py3-pytest"
subpackages="$pkgname-lang"
-source="$pkgname-$pkgver.tar.gz::https://github.com/Ultimaker/Cura/archive/refs/tags/$pkgver.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/Ultimaker/Cura/archive/refs/tags/$pkgver.tar.gz
+ AppDesktopData.patch
+ CuraVersion.patch
+ cmake-helpers.patch
+ cmake.patch"
builddir="$srcdir/Cura-$pkgver"
+options="!check" # tests broken after v5.x
build() {
+ local pyver="$(python3 -c 'import sys; print(f"{sys.version_info.major}.{sys.version_info.minor}")')"
cmake -B build -G Ninja \
-DCURA_VERSION=$pkgver \
+ -DPython_VERSION=$pyver \
-DURANIUM_DIR=/usr/share/uranium \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
@@ -42,15 +55,9 @@ build() {
cmake --build build
}
-check() {
- # useless code style test with another dependency
- sed -i "/add_test(code-style/d" build/CTestTestfile.cmake
-
- ctest --output-on-failure --test-dir build
-}
-
package() {
DESTDIR="$pkgdir" cmake --install build
+ mv $pkgdir/usr/bin/cura_app.py $pkgdir/usr/bin/cura
# don't ever send any user or print info through the internet to Ultimaker
rm -rf "$pkgdir/usr/lib/cura/plugins/SliceInfoPlugin"
@@ -60,5 +67,9 @@ package() {
}
sha512sums="
-6483fd6312bd2181cc812bce78aadc7e8532ecf292f09c75ce5e7870f7efddd63e84315ab40eb73c775b15c2ed2ce7fc804fcbefb73b3d8aaac77d8b22f0cbd0 cura-4.13.1.tar.gz
+5d4e0fdc740d0c048905e2b87cc8c73eedea59b54766b74760505902007b365582d22b46b1cfdcd6914828840865c10a3beb0ef6a1f04ea181c81d44f42434bc cura-5.2.2.tar.gz
+214e373f6cab7e3ccac12c96d1b5ca636d8d1e9ecdadaae84fc28fb429969c7c2d6055ce2a01b6db3ad85ab6cbc8d135cf2c26c77d7cfe13a73eb81aa5e85f11 AppDesktopData.patch
+e3bb302db70ca195b2ce9831e71302c8ee2a51955fecc7264a495d7d4fc9c107cfd48811aa5865f16671e7b1ae126f95d3d7bbb6a70f367f7f91a2b32bce377b CuraVersion.patch
+0db4ff97e7f82ae1a9dbc9c330d08c3e46249feeb3fb630f7c4e2de73749327337ec041680c39a07e0b5034c1b3f3656d75614ab4dc2f39861c8e27bdb2a58ef cmake-helpers.patch
+05a73f892700ff6279230385b04180873a62b7413fa7f7d55ae150f1bcee57ef05eda0bd7fe444fe660ab66a044c958f42badd33b743fca81033ae8f19dd3805 cmake.patch
"
diff --git a/testing/cura/AppDesktopData.patch b/testing/cura/AppDesktopData.patch
new file mode 100644
index 00000000000..9e2134f5823
--- /dev/null
+++ b/testing/cura/AppDesktopData.patch
@@ -0,0 +1,58 @@
+--- /dev/null
++++ ./com.ultimaker.cura.appdata.xml
+@@ -0,0 +1,33 @@
++<?xml version="1.0" encoding="UTF-8"?>
++<!-- Copyright 2016 Richard Hughes <richard@hughsie.com> -->
++<component type="desktop">
++ <id>com.ultimaker.cura.desktop</id>
++ <metadata_license>CC0-1.0</metadata_license>
++ <project_license>LGPL-3.0 and CC-BY-SA-4.0</project_license>
++ <name>Cura</name>
++ <summary>The world's most advanced 3d printer software</summary>
++ <description>
++ <p>
++ Cura creates a seamless integration between hardware, software and
++ materials for the best 3D printing experience around.
++ Cura supports the 3MF, OBJ and STL file formats and is available on
++ Windows, Mac and Linux.
++ </p>
++ <ul>
++ <li>Novices can start printing right away</li>
++ <li>Experts are able to customize 300 settings to achieve the best results</li>
++ <li>Optimized profiles for Ultimaker materials</li>
++ <li>Supported by a global network of Ultimaker certified service partners</li>
++ <li>Print multiple objects at once with different settings for each object</li>
++ <li>Cura supports STL, 3MF and OBJ file formats</li>
++ <li>Open source and completely free</li>
++ </ul>
++ </description>
++ <screenshots>
++ <screenshot type="default">
++ <image>https://raw.githubusercontent.com/Ultimaker/Cura/master/screenshot.png</image>
++ </screenshot>
++ </screenshots>
++ <url type="homepage">https://ultimaker.com/software/ultimaker-cura?utm_source=cura&amp;utm_medium=software&amp;utm_campaign=cura-update-linux</url>
++ <translation type="gettext">Cura</translation>
++</component>
+--- /dev/null
++++ ./com.ultimaker.cura.desktop.in
+@@ -0,0 +1,19 @@
++[Desktop Entry]
++Name=Ultimaker Cura
++Name[de]=Ultimaker Cura
++Name[nl]=Ultimaker Cura
++GenericName=3D Printing Software
++GenericName[de]=3D-Druck-Software
++GenericName[nl]=3D-printsoftware
++Comment=Cura converts 3D models into paths for a 3D printer. It prepares your print for maximum accuracy, minimum printing time and good reliability with many extra features that make your print come out great.
++Comment[de]=Cura wandelt 3D-Modelle in Pfade für einen 3D-Drucker um. Es bereitet Ihren Druck für maximale Genauigkeit, minimale Druckzeit und guter Zuverlässigkeit mit vielen zusätzlichen Funktionen vor, damit Ihr Druck großartig wird.
++Comment[nl]=Cura converteert 3D-modellen naar paden voor een 3D printer. Het bereidt je print voor om zeer precies, snel en betrouwbaar te kunnen printen, met veel extra functionaliteit om je print er goed uit te laten komen.
++Exec=@CMAKE_INSTALL_FULL_BINDIR@/cura %F
++TryExec=@CMAKE_INSTALL_FULL_BINDIR@/cura
++Icon=cura-icon
++Terminal=false
++Type=Application
++MimeType=model/stl;application/vnd.ms-3mfdocument;application/prs.wavefront-obj;image/bmp;image/gif;image/jpeg;image/png;text/x-gcode;application/x-amf;application/x-ply;application/x-ctm;model/vnd.collada+xml;model/gltf-binary;model/gltf+json;model/vnd.collada+xml+zip;
++Categories=Graphics;
++Keywords=3D;Printing;Slicer;
++StartupWMClass=cura.real
diff --git a/testing/cura/CuraVersion.patch b/testing/cura/CuraVersion.patch
new file mode 100644
index 00000000000..916225d09c9
--- /dev/null
+++ b/testing/cura/CuraVersion.patch
@@ -0,0 +1,16 @@
+--- /dev/null
++++ ./cura/CuraVersion.py.in
+@@ -0,0 +1,13 @@
++# Copyright (c) 2020 Ultimaker B.V.
++# Cura is released under the terms of the LGPLv3 or higher.
++
++CuraAppName = "@CURA_APP_NAME@"
++CuraAppDisplayName = "@CURA_APP_DISPLAY_NAME@"
++CuraVersion = "@CURA_VERSION@"
++CuraBuildType = "@CURA_BUILDTYPE@"
++CuraDebugMode = True if "@_cura_debugmode@" == "ON" else False
++CuraCloudAPIRoot = "@CURA_CLOUD_API_ROOT@"
++CuraCloudAPIVersion = "@CURA_CLOUD_API_VERSION@"
++CuraCloudAccountAPIRoot = "@CURA_CLOUD_ACCOUNT_API_ROOT@"
++CuraMarketplaceRoot = "@CURA_MARKETPLACE_ROOT@"
++CuraDigitalFactoryURL = "@CURA_DIGITAL_FACTORY_URL@"
diff --git a/testing/cura/cmake-helpers.patch b/testing/cura/cmake-helpers.patch
new file mode 100644
index 00000000000..6204aaa585c
--- /dev/null
+++ b/testing/cura/cmake-helpers.patch
@@ -0,0 +1,95 @@
+--- /dev/null
++++ ./cmake/CuraPluginInstall.cmake
+@@ -0,0 +1,92 @@
++# Copyright (c) 2022 Ultimaker B.V.
++# CuraPluginInstall.cmake is released under the terms of the LGPLv3 or higher.
++
++#
++# This module detects all plugins that need to be installed and adds them using the CMake install() command.
++# It detects all plugin folder in the path "plugins/*" where there's a "plugin.json" in it.
++#
++# Plugins can be configured to NOT BE INSTALLED via the variable "CURA_NO_INSTALL_PLUGINS" as a list of string in the
++# form of "a;b;c" or "a,b,c". By default all plugins will be installed.
++#
++
++option(PRINT_PLUGIN_LIST "Should the list of plugins that are installed be printed?" ON)
++
++# Options or configuration variables
++set(CURA_NO_INSTALL_PLUGINS "" CACHE STRING "A list of plugins that should not be installed, separated with ';' or ','.")
++
++file(GLOB_RECURSE _plugin_json_list ${CMAKE_SOURCE_DIR}/plugins/*/plugin.json)
++list(LENGTH _plugin_json_list _plugin_json_list_len)
++
++# Sort the lists alphabetically so we can handle cases like this:
++# - plugins/my_plugin/plugin.json
++# - plugins/my_plugin/my_module/plugin.json
++# In this case, only "plugins/my_plugin" should be added via install().
++set(_no_install_plugin_list ${CURA_NO_INSTALL_PLUGINS})
++# Sanitize the string so the comparison will be case-insensitive.
++string(STRIP "${_no_install_plugin_list}" _no_install_plugin_list)
++string(TOLOWER "${_no_install_plugin_list}" _no_install_plugin_list)
++
++# WORKAROUND counterpart of what's in cura-build.
++string(REPLACE "," ";" _no_install_plugin_list "${_no_install_plugin_list}")
++
++list(LENGTH _no_install_plugin_list _no_install_plugin_list_len)
++
++if(_no_install_plugin_list_len GREATER 0)
++ list(SORT _no_install_plugin_list)
++endif()
++if(_plugin_json_list_len GREATER 0)
++ list(SORT _plugin_json_list)
++endif()
++
++# Check all plugin directories and add them via install() if needed.
++set(_install_plugin_list "")
++foreach(_plugin_json_path ${_plugin_json_list})
++ get_filename_component(_plugin_dir ${_plugin_json_path} DIRECTORY)
++ file(RELATIVE_PATH _rel_plugin_dir ${CMAKE_CURRENT_SOURCE_DIR} ${_plugin_dir})
++ get_filename_component(_plugin_dir_name ${_plugin_dir} NAME)
++
++ # Make plugin name comparison case-insensitive
++ string(TOLOWER "${_plugin_dir_name}" _plugin_dir_name_lowercase)
++
++ # Check if this plugin needs to be skipped for installation
++ set(_add_plugin ON) # Indicates if this plugin should be added to the build or not.
++ set(_is_no_install_plugin OFF) # If this plugin will not be added, this indicates if it's because the plugin is
++ # specified in the NO_INSTALL_PLUGINS list.
++ if(_no_install_plugin_list)
++ if("${_plugin_dir_name_lowercase}" IN_LIST _no_install_plugin_list)
++ set(_add_plugin OFF)
++ set(_is_no_install_plugin ON)
++ endif()
++ endif()
++
++ # Make sure this is not a subdirectory in a plugin that's already in the install list
++ if(_add_plugin)
++ foreach(_known_install_plugin_dir ${_install_plugin_list})
++ if(_plugin_dir MATCHES "${_known_install_plugin_dir}.+")
++ set(_add_plugin OFF)
++ break()
++ endif()
++ endforeach()
++ endif()
++
++ if(_add_plugin)
++ if(${PRINT_PLUGIN_LIST})
++ message(STATUS "[+] PLUGIN TO INSTALL: ${_rel_plugin_dir}")
++ endif()
++ get_filename_component(_rel_plugin_parent_dir ${_rel_plugin_dir} DIRECTORY)
++ install(DIRECTORY ${_rel_plugin_dir}
++ DESTINATION lib${LIB_SUFFIX}/cura/${_rel_plugin_parent_dir}
++ PATTERN "__pycache__" EXCLUDE
++ PATTERN "*.qmlc" EXCLUDE
++ )
++ list(APPEND _install_plugin_list ${_plugin_dir})
++ elseif(_is_no_install_plugin)
++ if(${PRINT_PLUGIN_LIST})
++ message(STATUS "[-] PLUGIN TO REMOVE : ${_rel_plugin_dir}")
++ endif()
++ execute_process(COMMAND ${Python_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/cmake/mod_bundled_packages_json.py
++ -d ${CMAKE_CURRENT_SOURCE_DIR}/resources/bundled_packages
++ ${_plugin_dir_name}
++ RESULT_VARIABLE _mod_json_result)
++ endif()
++endforeach()
diff --git a/testing/cura/cmake.patch b/testing/cura/cmake.patch
new file mode 100644
index 00000000000..a74477fa20a
--- /dev/null
+++ b/testing/cura/cmake.patch
@@ -0,0 +1,85 @@
+--- ./CMakeLists.txt.orig
++++ ./CMakeLists.txt
+@@ -1,10 +1,6 @@
+ # Copyright (c) 2022 Ultimaker B.V.
+ # Cura is released under the terms of the LGPLv3 or higher.
+
+-# NOTE: This is only being used for translation scripts.
+-
+-# For MSVC flags, will be ignored on non-Windows OS's and this project in general. Only needed for cura-build-environment.
+-cmake_policy(SET CMP0091 NEW)
+ project(cura)
+ cmake_minimum_required(VERSION 3.18)
+
+@@ -15,8 +11,44 @@
+ set(URANIUM_DIR "${CMAKE_SOURCE_DIR}/../Uranium" CACHE PATH "The location of the Uranium repository")
+ set(URANIUM_SCRIPTS_DIR "${URANIUM_DIR}/scripts" CACHE PATH "The location of the scripts directory of the Uranium repository")
+
++option(CURA_DEBUGMODE "Enable debug dialog and other debug features" OFF)
++if(CURA_DEBUGMODE)
++ set(_cura_debugmode "ON")
++endif()
++
+ option(GENERATE_TRANSLATIONS "Should the translations be generated?" ON)
+
++set(CURA_APP_NAME "cura" CACHE STRING "Short name of Cura, used for configuration folder")
++set(CURA_APP_DISPLAY_NAME "Ultimaker Cura" CACHE STRING "Display name of Cura")
++set(CURA_VERSION "master" CACHE STRING "Version name of Cura")
++set(CURA_BUILDTYPE "" CACHE STRING "Build type of Cura, eg. 'PPA'")
++set(CURA_CLOUD_API_ROOT "" CACHE STRING "Alternative Cura cloud API root")
++set(CURA_CLOUD_API_VERSION "" CACHE STRING "Alternative Cura cloud API version")
++set(CURA_CLOUD_ACCOUNT_API_ROOT "" CACHE STRING "Alternative Cura cloud account API version")
++set(CURA_MARKETPLACE_ROOT "" CACHE STRING "Alternative Marketplace location")
++set(CURA_DIGITAL_FACTORY_URL "" CACHE STRING "Alternative Digital Factory location")
++
++configure_file(${CMAKE_SOURCE_DIR}/com.ultimaker.cura.desktop.in ${CMAKE_BINARY_DIR}/com.ultimaker.cura.desktop @ONLY)
++
++configure_file(cura/CuraVersion.py.in CuraVersion.py @ONLY)
++
++if(NOT DEFINED Python_VERSION)
++ set(Python_VERSION
++ 3.11
++ CACHE STRING "Python Version" FORCE)
++ message(STATUS "Setting Python version to ${Python_VERSION}. Set Python_VERSION if you want to compile against an other version.")
++endif()
++if(APPLE)
++ set(Python_FIND_FRAMEWORK NEVER)
++endif()
++find_package(Python ${Python_VERSION} EXACT REQUIRED COMPONENTS Interpreter)
++message(STATUS "Linking and building ${project_name} against Python ${Python_VERSION}")
++if(NOT DEFINED Python_SITELIB_LOCAL)
++ set(Python_SITELIB_LOCAL
++ "${Python_SITELIB}"
++ CACHE PATH "Local alternative site-package location to install Cura" FORCE)
++endif()
++
+ if(NOT ${URANIUM_DIR} STREQUAL "")
+ set(CMAKE_MODULE_PATH "${CMAKE_MODULE_PATH};${URANIUM_DIR}/cmake")
+ endif()
+@@ -29,4 +61,24 @@
+ if(${GENERATE_TRANSLATIONS})
+ CREATE_TRANSLATION_TARGETS()
+ endif()
+-endif()
+\ No newline at end of file
++endif()
++
++install(DIRECTORY resources DESTINATION ${CMAKE_INSTALL_DATADIR}/cura)
++
++include(CuraPluginInstall)
++
++install(FILES cura_app.py DESTINATION ${CMAKE_INSTALL_BINDIR}
++ PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
++install(DIRECTORY cura DESTINATION "${Python_SITELIB_LOCAL}")
++install(FILES ${CMAKE_BINARY_DIR}/CuraVersion.py DESTINATION "${Python_SITELIB_LOCAL}/cura/")
++if(NOT APPLE AND NOT WIN32)
++ install(FILES ${CMAKE_BINARY_DIR}/com.ultimaker.cura.desktop
++ DESTINATION ${CMAKE_INSTALL_DATADIR}/applications)
++ install(FILES ${CMAKE_SOURCE_DIR}/resources/images/cura-icon.png
++ DESTINATION ${CMAKE_INSTALL_DATADIR}/icons/hicolor/128x128/apps/)
++ install(FILES com.ultimaker.cura.appdata.xml
++ DESTINATION ${CMAKE_INSTALL_DATADIR}/metainfo)
++ install(FILES cura.sharedmimeinfo
++ DESTINATION ${CMAKE_INSTALL_DATADIR}/mime/packages/
++ RENAME cura.xml )
++endif()
diff --git a/testing/curlftpfs/APKBUILD b/testing/curlftpfs/APKBUILD
index 862fea1c572..61db1fae1d0 100644
--- a/testing/curlftpfs/APKBUILD
+++ b/testing/curlftpfs/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Milan P. Stanić <mps@arvanta.net>
pkgname=curlftpfs
pkgver=0.9.2
-pkgrel=2
+pkgrel=3
pkgdesc="Fuse mount FTP server"
url="https://sourceforge.net/projects/curlftpfs/"
arch="all"
diff --git a/testing/curlpp/APKBUILD b/testing/curlpp/APKBUILD
index 5da7b27135c..b57d8d9808a 100644
--- a/testing/curlpp/APKBUILD
+++ b/testing/curlpp/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Milan P. Stanić <mps@arvanta.net>
pkgname=curlpp
pkgver=0.8.1
-pkgrel=0
+pkgrel=1
pkgdesc="C++ wrapper for libcURL"
url="http://curlpp.org"
arch="all"
diff --git a/testing/curtail/APKBUILD b/testing/curtail/APKBUILD
index 5799b348b9b..d114d8559d2 100644
--- a/testing/curtail/APKBUILD
+++ b/testing/curtail/APKBUILD
@@ -2,25 +2,35 @@
# Maintainer: Thomas Kienlen <kommander@laposte.net>
pkgname=curtail
_pkgname=Curtail
-pkgver=1.2.2
+pkgver=1.9.1
pkgrel=0
pkgdesc="Simple & useful image compressor"
url="https://github.com/Huluti/Curtail"
arch="noarch"
license="GPL-3.0-or-later"
-depends="optipng pngquant jpegoptim libwebp py3-gobject3"
-makedepends="python3 meson gettext appstream-glib py3-gobject3-dev"
-source="
- https://github.com/Huluti/Curtail/archive/$pkgver/curtail-$pkgver.tar.gz
- fix-bindtextdomain.patch
+depends="
+ jpegoptim
+ libwebp
+ pngquant
+ py3-gobject3
"
+makedepends="
+ appstream-glib
+ desktop-file-utils
+ gettext
+ gtk+3.0-dev
+ meson
+ py3-gobject3-dev
+ python3
+ "
+source="https://github.com/Huluti/Curtail/archive/$pkgver/curtail-$pkgver.tar.gz"
subpackages="$pkgname-lang"
builddir="$srcdir/$_pkgname-$pkgver"
build() {
abuild-meson . build
- meson compile ${JOBS:+-j ${JOBS}} -C build
+ meson compile -C build
}
check() {
@@ -32,6 +42,5 @@ package() {
}
sha512sums="
-62d516d1c7d32dbace43e51ad25a28d299d27cc0902cc68f1296ce22bad7b6fa6678f80b122ee7efa0791ae92b726f1db1217ab6faae3fee7133606dc2197e0a curtail-1.2.2.tar.gz
-1f6e43b3097fb808996553a1abc95ef10637bd0b1d7d51de451411509a6f1407af7cb7f593113c33d7818aaed78fe164dc3714f1851f74d24c97157d9053642e fix-bindtextdomain.patch
+7ff0ff10068c5ff2694f6674376edf84957759b6274740d47d11a584943b026183b13a59b777c27569b6997c3cb358694fa93c55a1136b9d1fab08e768d1a1a4 curtail-1.9.1.tar.gz
"
diff --git a/testing/curtail/fix-bindtextdomain.patch b/testing/curtail/fix-bindtextdomain.patch
deleted file mode 100644
index 0aa59fc1489..00000000000
--- a/testing/curtail/fix-bindtextdomain.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Fix musl compatibility
-
---- a/src/curtail.in
-+++ b/src/curtail.in
-@@ -26,7 +26,7 @@ import locale
- VERSION = '@VERSION@'
- pkgdatadir = '@pkgdatadir@'
- localedir = '@localedir@'
--locale.bindtextdomain('curtail', localedir)
-+# locale.bindtextdomain('curtail', localedir)
-
- sys.path.insert(1, pkgdatadir)
- signal.signal(signal.SIGINT, signal.SIG_DFL)
diff --git a/testing/cutechess/APKBUILD b/testing/cutechess/APKBUILD
new file mode 100644
index 00000000000..fc390bdc4b3
--- /dev/null
+++ b/testing/cutechess/APKBUILD
@@ -0,0 +1,64 @@
+# Contributor: Leo <thinkabit.ukim@gmail.com>
+# Maintainer: Prokop RandáÄek <prokop@rdck.dev>
+pkgname=cutechess
+pkgver=1.3.1
+pkgrel=0
+pkgdesc="GUI, CLI and library for playing chess"
+url="https://cutechess.com"
+arch="all"
+license="GPL-3.0-or-later"
+makedepends="
+ cmake
+ qt6-qt5compat-dev
+ qt6-qtbase-dev
+ qt6-qtsvg-dev
+ samurai
+ "
+subpackages="
+ $pkgname-doc:cutechess_doc:noarch
+ $pkgname-cli
+ $pkgname-cli-doc:cli_doc:noarch
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/cutechess/cutechess/archive/refs/tags/v$pkgver.tar.gz"
+
+build() {
+ CXXFLAGS="$CXXFLAGS -flto=auto -Wno-deprecated-declarations" \
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_SKIP_INSTALL_RPATH=ON \
+ -DWITH_TESTS="$(want_check && echo ON || echo OFF)"
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+ # manual doc install
+ gzip -9n "$pkgdir"/usr/share/man/man*/*
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+cutechess_doc() {
+ install_if="$pkgname=$pkgver-r$pkgrel docs"
+
+ amove usr/share/man/man5
+}
+
+cli() {
+ pkgdesc="Commandline interface for cutechess"
+
+ amove usr/bin/cutechess-cli
+}
+
+cli_doc() {
+ install_if="$pkgname-cli=$pkgver-r$pkgrel docs"
+
+ amove usr/share/man/man6
+}
+
+sha512sums="
+d6078d7ba30f735f4a12719f75e028fb990d7e6d4f5aebd3ba6295523513adf26725854c7d221dbb6c6a93cc8b4a7edd10c6d6cb1741678136367b63da08c471 cutechess-1.3.1.tar.gz
+"
diff --git a/testing/cvise/APKBUILD b/testing/cvise/APKBUILD
new file mode 100644
index 00000000000..583b39f9270
--- /dev/null
+++ b/testing/cvise/APKBUILD
@@ -0,0 +1,71 @@
+# Maintainer:
+pkgname=cvise
+pkgver=2.8.0
+pkgrel=2
+_llvmver=16
+pkgdesc="Python port of C-Reduce, for program testcase minimisation"
+url="https://github.com/marxin/cvise"
+arch="all"
+license="NCSA"
+depends="
+ cmd:clang-format
+ py3-chardet
+ py3-pebble
+ py3-psutil
+ unifdef
+ "
+makedepends="
+ clang$_llvmver-dev
+ clang$_llvmver-static
+ cmake
+ flex
+ llvm$_llvmver-dev
+ llvm$_llvmver-static
+ samurai
+ "
+checkdepends="
+ py3-pytest-forked
+ py3-pytest-xdist
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/marxin/cvise/archive/refs/tags/v$pkgver.tar.gz"
+
+build() {
+ export CC=clang-$_llvmver
+ export CXX=clang++-$_llvmver
+ export CFLAGS="${CFLAGS/-fstack-clash-protection} -O2 -DNDEBUG"
+ export CXXFLAGS="${CXXFLAGS/-fstack-clash-protection} -O2 -DNDEBUG"
+
+ cmake -B build -G Ninja -Wno-dev \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCMAKE_INSTALL_PREFIX=/usr
+ cmake --build build
+}
+
+check() {
+ cd build
+ # simple_deduction: for some reason it checks for a short string but gets a wall of text in a reduced case
+ pytest -c /dev/null -n auto --forked -k 'not test_simple_reduction'
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+ # remove tests
+ rm -r "$pkgdir"/usr/share/cvise/tests
+ python3 -m compileall -fq "$pkgdir"/usr/share/cvise
+}
+
+pyc() {
+ pkgdesc="Precompiled Python bytecode for ${subpkgname%-pyc}"
+ install_if="${subpkgname%-pyc}=$pkgver-r$pkgrel pyc"
+
+ cd "$pkgdir"
+ local IFS='
+'
+ # shellcheck disable=2046
+ amove $(find usr/share/cvise -type d -name __pycache__)
+}
+
+sha512sums="
+7e2dee2001aacb96cf5ffdb62047d229e23273fd26f34648e23ab4374bf6cae149f13db529494ce8d2d16555a0d2143487923c57f4b303b0ab1f678ffcff6f6e cvise-2.8.0.tar.gz
+"
diff --git a/testing/cvs-fast-export/01-compile-flags.patch b/testing/cvs-fast-export/01-compile-flags.patch
deleted file mode 100644
index ce7e5bd11d2..00000000000
--- a/testing/cvs-fast-export/01-compile-flags.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-Description: Modify compile flags handling in Makefile for Debian packaging
- This is to allow CFLAGS set by dpkg-buildflags from the environment
- so that hardening flags and DEB_BUILD_OPTIONS=noopt would work.
- .
- Also disable -march=native which causes FTBFS on many platforms
- and is inappropriate for a Debian package. See a similar bug
- https://bugs.debian.org/761912 for an explanation.
- (Note: Upstream commented out "CFLAGS += -march=native" in commit
- 0ead90d5d9ab861acd40a05490ed8e7936ac1fa5 on 2019-11-12.)
-Author: Anthony Fok <foka@debian.org>
-Origin: vendor
-Bug-Debian: https://bugs.debian.org/801108
-Forwarded: not-needed
-Last-Update: 2016-12-30, 2020-02-12, 2020-11-05
----
-This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
---- a/Makefile
-+++ b/Makefile
-@@ -32,6 +32,7 @@
- FLEX ?= flex
- A2X ?= a2x
-
-+ENV_CFLAGS := $(CFLAGS)
- GCC_WARNINGS1=-Wall -Wpointer-arith -Wstrict-prototypes
- GCC_WARNINGS2=-Wmissing-prototypes -Wmissing-declarations
- GCC_WARNINGS3=-Wno-unused-function -Wno-unused-label -Wno-format-zero-length
-@@ -86,7 +87,7 @@
- CFLAGS += -g
- # Test coverage flags
- # CFLAGS += -ftest-coverage -fprofile-arcs
--CFLAGS += $(EXTRA_CFLAGS)
-+CFLAGS += $(EXTRA_CFLAGS) $(ENV_CFLAGS)
-
- #YFLAGS= --report=all
- LFLAGS=
diff --git a/testing/cvs-fast-export/APKBUILD b/testing/cvs-fast-export/APKBUILD
index afdcdeda6c3..2ca6f824b1f 100644
--- a/testing/cvs-fast-export/APKBUILD
+++ b/testing/cvs-fast-export/APKBUILD
@@ -1,21 +1,18 @@
# Contributor: TBK <alpine@jjtc.eu>
# Maintainer: TBK <alpine@jjtc.eu>
pkgname=cvs-fast-export
-pkgver=1.55
+pkgver=1.65
pkgrel=0
pkgdesc="Export RCS or CVS history as a fast-import stream"
url="http://www.catb.org/esr/cvs-fast-export/"
arch="all"
license="GPL-2.0-or-later"
depends="cvs rcs"
-makedepends="asciidoc bison flex libxslt"
+makedepends="asciidoctor bison flex libxslt"
checkdepends="python3"
subpackages="$pkgname-doc $pkgname-tools::noarch"
-source="https://gitlab.com/esr/cvs-fast-export/-/archive/$pkgver/cvs-fast-export-$pkgver.tar.gz
- python3.patch
- 01-compile-flags.patch
- disable-test-sporadic.patch
- "
+source="https://gitlab.com/esr/cvs-fast-export/-/archive/$pkgver/cvs-fast-export-$pkgver.tar.gz"
+options="!check" # take 50 years
build() {
# "make all" will run the commands below + html.
@@ -25,7 +22,6 @@ build() {
}
check() {
- tests/setpython python3
# v1.55 - More then one job and the tests
# are executed in the wrong order!
make -j 1 check
@@ -36,15 +32,14 @@ package() {
}
tools() {
- pkgdesc="$pkgdesc (Tools)"
- depends="$pkgname git python3 rsync"
+ pkgdesc="$pkgdesc (extra tools)"
+ depends="$pkgname=$pkgver-r$pkgrel git python3 rsync"
- cd "$pkgdir"/usr/bin
- mkdir -p "$subpkgdir"/usr/bin
- mv cvsconvert cvssync "$subpkgdir"/usr/bin/
+ amove \
+ usr/bin/cvsconvert \
+ usr/bin/cvssync
}
-sha512sums="1765bf4e086232d96b2c4a89d55fdd0028a5cc27630ebe6b34a9bc2f9319ec06802735c039dc516ec78e78af3b634bed4c94233e37d21b0da678de3a63c9ebef cvs-fast-export-1.55.tar.gz
-00ef05acf411154600f31d37795330f39e2951483cc1cba35918b359635f423648038a1f976a4ce78f5209e1b60b4b3b4812ce7348ab426b97df07c45ca638bc python3.patch
-35f738ad85132c54f6f4f521a0a0e21af2124ec71a10c94bf2b2861ca115b693e77df16b0bebb6220e555c3b582d06b2f29d9890e192dbb2d591a9042d2f1f60 01-compile-flags.patch
-687fd54316a0b14935a0421d237ff003985211ef476360395c60cfbf6d8619099c8aa6d3af5ee511b016524f576374e868cc67dcaa5b96367fb7446d669496f4 disable-test-sporadic.patch"
+sha512sums="
+84665f654364c111455edec5c335cf75dbdb8b63759b94eee85b4bc7389d3c90d85e0c84e8d2ba2d7ab89588d568c6e56b6f8c4a8fbd9f3083a370d9b1302e63 cvs-fast-export-1.65.tar.gz
+"
diff --git a/testing/cvs-fast-export/disable-test-sporadic.patch b/testing/cvs-fast-export/disable-test-sporadic.patch
deleted file mode 100644
index a08d8dc47e3..00000000000
--- a/testing/cvs-fast-export/disable-test-sporadic.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-Fails with the following error message:
-
-== Sporadic tests ==
-date: invalid date ‘+%s’
-expr: syntax error: unexpected argument ‘1’
-cvs-fast-export: option requires an argument: i
-cvs-fast-export: try `cvs-fast-export --help' for more information.
-incremental.sh: FAILED
-make[1]: *** [/home/builder/aports/testing/cvs-fast-export/src/cvs-fast-export-1.55/tests/Makefile:159: sporadic] Error 1
-make: *** [Makefile:147: check] Error 2
-
-
---- a/tests/Makefile
-+++ b/tests/Makefile
-@@ -29,7 +29,7 @@
- ,v.dot:
- $(CVS_FAST_EXPORT) -g $< >$*.dot
-
--test: s_regress m_regress r_regress i_regress t_regress c_regress sporadic # z2_regress z3_regress
-+test: s_regress m_regress r_regress i_regress t_regress c_regress # sporadic z2_regress z3_regress
- @echo "No diff output is good news."
-
- rebuild: s_rebuild m_rebuild r_rebuild i_rebuild t_rebuild # z_rebuild
diff --git a/testing/cvs-fast-export/python3.patch b/testing/cvs-fast-export/python3.patch
deleted file mode 100644
index f13d2ff49d6..00000000000
--- a/testing/cvs-fast-export/python3.patch
+++ /dev/null
@@ -1,184 +0,0 @@
---- a/cvsconvert
-+++ b/cvsconvert
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- """
- cvsconvert - convert a CVS repo and check against the original
-
---- a/cvsreduce
-+++ b/cvsreduce
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- # Runs under both Python 2 and Python 3: preserve this property!
- # SPDX-License-Identifier: GPL-2.0+
- """
---- a/tests/at.tst
-+++ b/tests/at.tst
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- # -*- coding: latin-1 -*-
- ## Verify parsing of escaped at on final line
-
---- a/tests/basic.tst
-+++ b/tests/basic.tst
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- ## basic test for CVS master parsing
-
- import sys, testlifter
---- a/tests/branchy.tst
-+++ b/tests/branchy.tst
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- ## A branchy repo with deletions and only valid tags
-
- import sys, testlifter
---- a/tests/daughterbranch.tst
-+++ b/tests/daughterbranch.tst
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- ## Test for the daughter-branch bug
-
- # This was the description:
---- a/tests/exec.tst
-+++ b/tests/exec.tst
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- ## Test handling of executable bit
-
- import sys, testlifter
---- a/tests/expand.tst
-+++ b/tests/expand.tst
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- ## Test keyword expansion
-
- import sys, testlifter
---- a/tests/hack1.tst
-+++ b/tests/hack1.tst
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- ## First example from the Hacking Guide
-
- import sys, testlifter
---- a/tests/hack2.tst
-+++ b/tests/hack2.tst
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- ## Second example from the Hacking Guide
-
- import sys, testlifter
---- a/tests/hack3.tst
-+++ b/tests/hack3.tst
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- ## Third example from the Hacking Guide
-
- import sys, testlifter
---- a/tests/linear.tst
-+++ b/tests/linear.tst
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- ## simplest possible linear repository with multiple commits
-
- import sys, testlifter
---- a/tests/longrev.tst
-+++ b/tests/longrev.tst
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- ## A widely branched repo with long file revision strings.
-
- import sys, testlifter
---- a/tests/postbranch.tst
-+++ b/tests/postbranch.tst
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- ## Ilya Basin's test, failed by cvsps-3.x
- """
- Date: Sat, 20 Apr 2013 14:38:55 +0400
---- a/tests/t9601.py
-+++ b/tests/t9601.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- ## Test handling of vendor branches
- #
- # This test was swiped from the git 1.8.1 tree, then modified to exercise
---- a/tests/t9602.py
-+++ b/tests/t9602.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- ## Test handling of pathological tags
- #
- # This test was swiped from the git 1.8.1 tree, then modified to exercise
---- a/tests/t9603.py
-+++ b/tests/t9603.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- ## Testing for correct patchset estimation
-
- # Structure of the test cvs repository
---- a/tests/t9604.py
-+++ b/tests/t9604.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- ## Testing for correct timestamp handling in author maps.
- import sys, testlifter, tempfile, os
-
---- a/tests/t9605.py
-+++ b/tests/t9605.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- ## Testing for correct patchset estimation
-
- # Structure of the test cvs repository
---- a/tests/tagbug.tst
-+++ b/tests/tagbug.tst
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- ## Tricky tag corner case
-
- import sys, testlifter
---- a/tests/twobranch.tst
-+++ b/tests/twobranch.tst
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- ## Two-branch repo to test incremental dumping
-
- import sys, testlifter
---- a/tests/twotag.tst
-+++ b/tests/twotag.tst
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- ## A repo with identical tags attached to different changesets
-
- import sys, testlifter, time
---- a/cvssync
-+++ b/cvssync
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- # Runs under both Python 2 and Python 3: preserve this property!
- # SPDX-License-Identifier: GPL-2.0+
- """
diff --git a/testing/cxxopts/APKBUILD b/testing/cxxopts/APKBUILD
deleted file mode 100644
index 20a476e3228..00000000000
--- a/testing/cxxopts/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
-pkgname=cxxopts
-pkgver=3.0.0
-pkgrel=0
-pkgdesc="Lightweight C++ command line option parser as a header only library"
-url="https://github.com/jarro2783/cxxopts"
-arch="noarch"
-license="MIT"
-makedepends="cmake ninja"
-subpackages="$pkgname-dev"
-source="https://github.com/jarro2783/cxxopts/archive/v$pkgver/cxxopts-$pkgver.tar.gz"
-
-build() {
- cmake -G Ninja -B build \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- -DCMAKE_BUILD_TYPE=None \
- -DCXXOPTS_BUILD_TESTS=ON
- cmake --build build
-}
-
-check() {
- cd build
- CTEST_OUTPUT_ON_FAILURE=TRUE ctest
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-
-sha512sums="
-239479a3b35ddef6fc380ac9371e1cf7e3aea066f03e1ea538151fa2fff4296838daa976d55e988d8f87f40c0ae027767bcb214754177499413af1081315565c cxxopts-3.0.0.tar.gz
-"
diff --git a/testing/cyclone-stage0/APKBUILD b/testing/cyclone-stage0/APKBUILD
deleted file mode 100644
index 0b202f4adae..00000000000
--- a/testing/cyclone-stage0/APKBUILD
+++ /dev/null
@@ -1,38 +0,0 @@
-# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
-# Maintainer: Sören Tempel <soeren+alpine@soeren-tempel.net>
-pkgname=cyclone-stage0
-pkgver=0.34.0
-pkgrel=0
-pkgdesc="Cyclone version used to initially bootstrap the Cyclone compiler"
-url="https://justinethier.github.io/cyclone/"
-# s390x: ck on s390x does not have ck_pr_cas_8 (used by cyclone)
-arch="all !s390x"
-license="MIT"
-depends="!cyclone"
-makedepends="ck-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/justinethier/cyclone-bootstrap/archive/refs/tags/v$pkgver.tar.gz"
-builddir="$srcdir/cyclone-bootstrap-$pkgver"
-
-# Provide cyclone-bootstrap for community/cyclone.
-# See the comment in community/cyclone for more information.
-provides="cyclone-bootstrap"
-provider_priority=1 # lowest
-
-export PREFIX=/usr
-export DATADIR=$PREFIX/lib/cyclone
-
-build() {
- make
-}
-
-check() {
- make test
-}
-
-package() {
- DESTDIR="$pkgdir" make install
-}
-
-sha512sums="
-581866985709bff90a4f4fab9a24fc013ee43225b04fb2bd1128da02f0164de55f6d7d80d5cfcff5eedaf23b3fc38dc3c46e6f376e2f341b4991a3f1c54cd53b cyclone-stage0-0.34.0.tar.gz
-"
diff --git a/testing/cyclone/APKBUILD b/testing/cyclone/APKBUILD
deleted file mode 100644
index 43ec93f104b..00000000000
--- a/testing/cyclone/APKBUILD
+++ /dev/null
@@ -1,49 +0,0 @@
-# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
-# Maintainer: Sören Tempel <soeren+alpine@soeren-tempel.net>
-pkgname=cyclone
-pkgver=0.34.0
-pkgrel=0
-pkgdesc="A compiler for application development with R7RS Scheme"
-url="https://justinethier.github.io/cyclone/"
-# s390x: ck on s390x does not have ck_pr_cas_8 (used by cyclone)
-# See: https://github.com/concurrencykit/ck/issues/178
-arch="all !s390x"
-license="MIT"
-makedepends="ck-dev cyclone-bootstrap"
-source="$pkgname-$pkgver.tar.gz::https://github.com/justinethier/cyclone/archive/refs/tags/v$pkgver.tar.gz"
-
-# Since cyclone itself is written in Scheme it needs to be bootstraped.
-# For this propose, upstream provides a dedicated cyclone-bootstrap
-# repository which includes C files generated by a previous cyclone
-# version. We package this as cyclone-init-bootstrap in a separate
-# package and compile the original cyclone Scheme sources using it
-# initially. From that point onward, we build cyclone using itself.
-#
-# This is achieved by having both cyclone-init-bootstrap and cyclone
-# provide the virtual cyclone-bootstrap package. The latter must have
-# the higher provider priority.
-#
-# See also https://lists.alpinelinux.org/~alpine/devel/%3C33KG0XO61I4IL.2Z7RTAZ5J3SY6%408pit.net%3E
-provides="cyclone-bootstrap"
-provider_priority=100 # highest
-
-export PREFIX=/usr
-export DATADIR=$PREFIX/lib/cyclone
-
-build() {
- # We use a smaller pthread stack size by default,
- # make sure Cyclone configures the stack size manually.
- make CYC_PTHREAD_SET_STACK_SIZE=1
-}
-
-check() {
- make test
-}
-
-package() {
- DESTDIR="$pkgdir" make install
-}
-
-sha512sums="
-16a30c4343284c4e097b5612b1f399c9098038826c5341a4f86a3d9325afbc5ac9a2b606ade1c63068758c5a9db157ab9a50c001c4fe33ae6de67d25c951b8be cyclone-0.34.0.tar.gz
-"
diff --git a/testing/cyrus-sasl-xoauth2/APKBUILD b/testing/cyrus-sasl-xoauth2/APKBUILD
index abf0f29e5c0..811708acd4f 100644
--- a/testing/cyrus-sasl-xoauth2/APKBUILD
+++ b/testing/cyrus-sasl-xoauth2/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Julian Weigt <juw@posteo.de>
pkgname=cyrus-sasl-xoauth2
pkgver=0.2
-pkgrel=0
+pkgrel=1
pkgdesc="XOAUTH2 mechanism plugin for cyrus-sasl"
arch="all"
url="https://github.com/moriyoshi/cyrus-sasl-xoauth2"
diff --git a/testing/cz-viator-hourglass-black/APKBUILD b/testing/cz-viator-hourglass-black/APKBUILD
index 8a78e8af1d8..12160f00c79 100644
--- a/testing/cz-viator-hourglass-black/APKBUILD
+++ b/testing/cz-viator-hourglass-black/APKBUILD
@@ -1,4 +1,3 @@
-# Contributor: psykose <alice@ayaya.dev>
# Contributor: Daniil Nemtsev <nmsv@pm.me>
# Maintainer: Daniil Nemtsev <nmsv@pm.me>
pkgname=cz-viator-hourglass-black
diff --git a/testing/d-spy/APKBUILD b/testing/d-spy/APKBUILD
deleted file mode 100644
index ebca7102f96..00000000000
--- a/testing/d-spy/APKBUILD
+++ /dev/null
@@ -1,30 +0,0 @@
-# Contributor: Michał Polański <michal@polanski.me>
-# Maintainer: Michał Polański <michal@polanski.me>
-pkgname=d-spy
-pkgver=1.2.0
-pkgrel=0
-pkgdesc="Like d-feet, but written in C and blisteringly fast"
-url="https://gitlab.gnome.org/GNOME/d-spy"
-license="GPL-3.0-or-later"
-arch="all !s390x !riscv64" # limited by gtk4.0 and libadwaita
-makedepends="meson glib-dev gtk4.0-dev libadwaita-dev"
-subpackages="$pkgname-dev"
-source="https://gitlab.gnome.org/GNOME/d-spy/-/archive/$pkgver/d-spy-$pkgver.tar.gz"
-options="!check" # no test suite
-
-build() {
- abuild-meson . output
- meson compile ${JOBS:+-j ${JOBS}} -C output
-}
-
-check() {
- meson test --no-rebuild -v -C output
-}
-
-package() {
- DESTDIR="$pkgdir" meson install --no-rebuild -C output
-}
-
-sha512sums="
-591c84108077e16173a8ee473dc3ba395db0275aadc2d33a0261bb6ccf9fffc685a0fcdbeb5ccbb9e4f221ecc2129e2878387328bdce4e67fe4891cfcd40df62 d-spy-1.2.0.tar.gz
-"
diff --git a/testing/daemontools-encore/APKBUILD b/testing/daemontools-encore/APKBUILD
deleted file mode 100644
index a5d7d43b2cc..00000000000
--- a/testing/daemontools-encore/APKBUILD
+++ /dev/null
@@ -1,39 +0,0 @@
-# Contributor: omni <omni+alpine@hack.org>
-# Maintainer: omni <omni+alpine@hack.org>
-pkgname=daemontools-encore
-pkgver=1.11
-pkgrel=0
-pkgdesc="Enhanced collection of tools for managing UNIX services"
-url="http://untroubled.org/daemontools-encore/"
-arch="all !riscv64" # ftbfs
-license="MIT"
-subpackages="$pkgname-doc"
-source="https://untroubled.org/daemontools-encore/daemontools-encore-$pkgver.tar.gz
- add-missing-setuser-man-page.patch
- svscan.initd
- "
-
-prepare() {
- echo "$pkgdir/usr/bin" > conf-bin
- echo "$pkgdir/usr/share/man" > conf-man
- echo "${CC:-"gcc"} ${CFLAGS}" > conf-cc
- echo "${CC:-"gcc"} ${LDFLAGS}" > conf-ld
- default_prepare
-}
-
-build() {
- make
-}
-
-package() {
- install -dm755 "$pkgdir/usr/bin"
- install -dm755 "$pkgdir/usr/share/man"
- make install
- install -Dm755 "$srcdir"/svscan.initd "$pkgdir"/etc/init.d/svscan
-}
-
-sha512sums="
-1e1a96a948d551bfc38496740eaa85b7cae0d2469419293b133533da75ca03657fe6108129703ad7b773925c58ce84a4f242eb612133fb0c499f47ae50423a8a daemontools-encore-1.11.tar.gz
-2fa48512b13faf6df16b955e496dfebc0c7bf7acfd0fe73530dec3af94a49f2adf95875550d7e48eeb9e78aad065e383a6ecdc678a5af3e474a751dd470205cb add-missing-setuser-man-page.patch
-cfe2d3ef118262f86d5c91a76ffac2f51564e748c4e9392b42ee9f9e13d90729a795c4dfeba5bc3c5793b988fac62a9ca1fb33e685200bf4fcd354d5872d9d1d svscan.initd
-"
diff --git a/testing/daemontools-encore/add-missing-setuser-man-page.patch b/testing/daemontools-encore/add-missing-setuser-man-page.patch
deleted file mode 100644
index 58b159b762e..00000000000
--- a/testing/daemontools-encore/add-missing-setuser-man-page.patch
+++ /dev/null
@@ -1,68 +0,0 @@
-Add missing setuser.8
-
-Upstream-bug: https://github.com/bruceg/daemontools-encore/issues/60
-
---- /dev/null
-+++ b/setuser.8
-@@ -0,0 +1,61 @@
-+.TH setuser 8
-+.SH NAME
-+setuser \- runs another program under a specified account's environment.
-+.SH SYNOPSIS
-+.B setuser
-+.I account
-+.I child
-+.SH DESCRIPTION
-+.I account
-+is a single argument.
-+.I child
-+consists of one or more arguments.
-+
-+.B setuser
-+sets
-+.BR $GID ,
-+.BR $UID ,
-+.BR $SHELL ,
-+.BR $HOME ,
-+and
-+.BR $USER
-+to
-+.IR account 's
-+gid number, uid number, login shell, home directory, and user name, respectively.
-+It changes the working directory to
-+.IR account 's
-+home, and sets its uid and gid to
-+.IR account 's
-+uid and gid, with supplementary groups set up.
-+It then runs
-+.IR child .
-+
-+.B setuser
-+cannot be run by anyone other than root.
-+.SH EXIT CODES
-+.B setuser
-+exits 111 if it cannot find a UNIX account named
-+.IB account ,
-+if it cannot setup the environment, change directory, setgid, setuid, or run
-+.IR child .
-+Otherwise its exit code is the same as that of
-+.IR child .
-+.SH SEE ALSO
-+envdir(8),
-+envini(8),
-+envuidgid(8),
-+fghack(8),
-+multilog(8),
-+pgrphack(8),
-+readproctitle(8),
-+setlock(8),
-+setuidgid(8),
-+softlimit(8),
-+supervise(8),
-+svc(8),
-+svok(8),
-+svscan(8),
-+svscanboot(8),
-+svstat(8),
-+tai64n(8),
-+tai64nlocal(8)
diff --git a/testing/daemontools-encore/svscan.initd b/testing/daemontools-encore/svscan.initd
deleted file mode 100644
index ec9e0ead33f..00000000000
--- a/testing/daemontools-encore/svscan.initd
+++ /dev/null
@@ -1,28 +0,0 @@
-#!/sbin/openrc-run
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-pidfile="/var/run/svscan.pid"
-command="/usr/bin/svscan"
-command_args="/service"
-command_background="true"
-
-depend() {
- use net
- before ntpd ntp-client spamd apache apache2
-}
-
-stop() {
- ebegin "Stopping service scan"
- start-stop-daemon --stop --exec ${command} \
- --pidfile ${pidfile}
- eend $?
-
- ebegin "Stopping service scan services"
- svc -dx /service/* 2>/dev/null
- eend $?
-
- ebegin "Stopping service scan logging"
- svc -dx /service/*/log 2>/dev/null
- eend $?
-}
diff --git a/testing/daemontools/APKBUILD b/testing/daemontools/APKBUILD
index 5b82c50f59c..6b4049c19a6 100644
--- a/testing/daemontools/APKBUILD
+++ b/testing/daemontools/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Johannes Findeisen <you@hanez.org>
pkgname=daemontools
pkgver=0.76
-pkgrel=1
+pkgrel=2
pkgdesc="Collection of tools for managing UNIX services"
url="https://cr.yp.to/daemontools.html"
arch="all"
diff --git a/testing/daktilo/APKBUILD b/testing/daktilo/APKBUILD
new file mode 100644
index 00000000000..2d47e2fd94c
--- /dev/null
+++ b/testing/daktilo/APKBUILD
@@ -0,0 +1,50 @@
+# Contributor: Orhun Parmaksız <orhunparmaksiz@gmail.com>
+# Maintainer: Orhun Parmaksız <orhunparmaksiz@gmail.com>
+pkgname=daktilo
+pkgver=0.6.0
+pkgrel=0
+pkgdesc="Turn your keyboard into a typewriter"
+url="https://github.com/orhun/daktilo"
+arch="all"
+license="MIT OR Apache-2.0"
+depends="alsa-lib libxi-dev libxtst-dev"
+makedepends="cargo cargo-auditable alsa-lib-dev"
+subpackages="
+ $pkgname-doc
+ $pkgname-bash-completion
+ $pkgname-zsh-completion
+ $pkgname-fish-completion
+ "
+options="net"
+source="$pkgname-$pkgver.tar.gz::https://github.com/orhun/daktilo/archive/v$pkgver.tar.gz"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release
+ mkdir -p man
+ OUT_DIR=man/ target/release/daktilo-mangen
+ mkdir -p completions
+ OUT_DIR=completions/ target/release/daktilo-completions
+}
+
+check() {
+ OUT_DIR=target cargo test --frozen
+}
+
+package() {
+ install -Dm 755 "target/release/$pkgname" -t "$pkgdir/usr/bin"
+ install -Dm 644 README.md -t "$pkgdir/usr/share/doc/$pkgname"
+ install -Dm 644 "man/$pkgname.1" -t "$pkgdir/usr/share/man/man1"
+ install -Dm 644 "completions/$pkgname.bash" "$pkgdir/usr/share/bash-completion/completions/$pkgname"
+ install -Dm 644 "completions/$pkgname.fish" -t "$pkgdir/usr/share/fish/vendor_completions.d"
+ install -Dm 644 "completions/_$pkgname" -t "$pkgdir/usr/share/zsh/site-functions"
+}
+
+sha512sums="
+58f2de4cd9c39e0c1e210e09ac2fd48d3411c756e2256b88f4b3515831759a00260fa23683e9f52f5032c52e3c903b4498fe1eac313c7e94c431270e638292ea daktilo-0.6.0.tar.gz
+"
diff --git a/testing/dapr-cli/APKBUILD b/testing/dapr-cli/APKBUILD
new file mode 100644
index 00000000000..adf45d3bb01
--- /dev/null
+++ b/testing/dapr-cli/APKBUILD
@@ -0,0 +1,54 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=dapr-cli
+pkgver=1.12.0
+# API version described in https://docs.dapr.io/reference/api/
+_runtimever=1.0
+pkgrel=2
+pkgdesc="CLI tool for Dapr the portable, event-driven runtime to build distributed applications"
+url="https://dapr.io/"
+# 32-bit: not useful
+arch="all !x86 !armhf !armv7"
+license="Apache-2.0"
+makedepends="go"
+subpackages="
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/dapr/cli/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/cli-$pkgver"
+
+build() {
+ local _goldflags="
+ -X main.version=$pkgver
+ -X main.apiVersion=$_runtimever
+ -X github.com/dapr/cli/pkg/standalone.gitversion=0000000
+ -X github.com/dapr/cli/pkg/standalone.gitcommit=AlpineLinux
+ "
+
+ go build -v -ldflags "$_goldflags" -o dapr
+
+ for shell in bash fish zsh; do
+ ./dapr completion $shell > dapr.$shell
+ done
+}
+
+check() {
+ # Avoid integration tests that require a local Docker or Kubernetes instance
+ go test ./pkg/...
+}
+
+package() {
+ install -Dm755 dapr -t "$pkgdir"/usr/bin/
+
+ install -Dm644 dapr.bash \
+ "$pkgdir"/usr/share/bash-completion/completions/dapr
+ install -Dm644 dapr.fish \
+ "$pkgdir"/usr/share/fish/vendor_completions.d/dapr.fish
+ install -Dm644 dapr.zsh \
+ "$pkgdir"/usr/share/zsh/site-functions/_dapr
+}
+
+sha512sums="
+766fe23d28172192a5308af13a72db9067a128a56c1658b48cd58c5cef6b458e37cbac4053798aec0fc416871da0f741c9e147aba0efb57292c86db5ad9ccd68 dapr-cli-1.12.0.tar.gz
+"
diff --git a/testing/darcs/APKBUILD b/testing/darcs/APKBUILD
new file mode 100644
index 00000000000..dd067e16355
--- /dev/null
+++ b/testing/darcs/APKBUILD
@@ -0,0 +1,62 @@
+# Contributor: gay <gay@disroot.org>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=darcs
+pkgver=2.18.2
+pkgrel=0
+pkgdesc="Patch-based revision control system"
+url="https://darcs.net/"
+arch="aarch64 x86_64" # limited by ghc
+license="GPL-2.0-or-later"
+makedepends="cabal ghc curl-dev ncurses-dev zlib-dev"
+#checkdepends="diffutils grep lighttpd musl-locales"
+options="!check" # tests relying on presence of shell utils fail without giving detailed log
+subpackages="$pkgname-doc"
+source="https://hackage.haskell.org/package/darcs-$pkgver/darcs-$pkgver.tar.gz
+ cabal.project.freeze
+ "
+
+# Directory where cabal files are stored.
+export CABAL_DIR="$srcdir/dist"
+
+# Needed to fix build on aarch64.
+export PATH="$PATH:/usr/lib/llvm15/bin"
+
+cabal_update() {
+ cd $builddir
+ cabal v2-update
+ (
+ cd "$builddir"
+ cabal v2-freeze --shadow-installed-packages
+ mv cabal.project.freeze "$startdir/"
+ )
+}
+
+prepare() {
+ default_prepare
+ ln -sf "$srcdir/cabal.project.freeze" \
+ "$builddir/cabal.project.freeze"
+}
+
+build() {
+ cabal v2-update
+ cabal v2-build darcs:exes \
+ --jobs=${JOBS:-1} \
+ --prefix=/usr \
+ --docdir=/usr/share/doc/$pkgname \
+ --sysconfdir=/etc
+}
+
+check() {
+ cabal test
+}
+
+package() {
+ cd dist-newstyle/build/*-linux/ghc-*/$pkgname-$pkgver/build/$pkgname
+ install -Dm755 $pkgname "$pkgdir"/usr/bin/$pkgname
+ install -Dm644 $pkgname.1 "$pkgdir"/usr/share/man/man1/$pkgname.1
+}
+
+sha512sums="
+f776b3b2efd73e9515a99bf154468aa4aef925d20c9de564a78f7a19bf302db31c6e4cdbca2c2c700a0d5cde1b62a426159554f543898712b1f603401c534a9c darcs-2.18.2.tar.gz
+b177b661b37a907db1af30e6f796a5c2f600bc8b19411b3a741b071a45ee257a2371e160ea7c1cc31b07a288f2aa9966a14318ca1c0c0eede6aa11fe81798de9 cabal.project.freeze
+"
diff --git a/testing/darcs/cabal.project.freeze b/testing/darcs/cabal.project.freeze
new file mode 100644
index 00000000000..c6677adac2a
--- /dev/null
+++ b/testing/darcs/cabal.project.freeze
@@ -0,0 +1,217 @@
+active-repositories: hackage.haskell.org:merge
+constraints: any.Cabal ==3.10.2.0,
+ any.Cabal-syntax ==3.10.2.0,
+ any.FindBin ==0.0.5,
+ any.HUnit ==1.6.2.0,
+ any.OneTuple ==0.4.1.1,
+ any.QuickCheck ==2.14.3,
+ QuickCheck -old-random +templatehaskell,
+ any.StateVar ==1.2.2,
+ any.aeson ==2.2.1.0,
+ aeson +ordered-keymap,
+ any.ansi-terminal ==1.1,
+ ansi-terminal -example,
+ any.ansi-terminal-types ==1.1,
+ any.ansi-wl-pprint ==1.0.2,
+ ansi-wl-pprint -example,
+ any.appar ==0.1.8,
+ any.array ==0.5.6.0,
+ any.asn1-encoding ==0.9.6,
+ any.asn1-parse ==0.9.5,
+ any.asn1-types ==0.3.4,
+ any.assoc ==1.1,
+ assoc +tagged,
+ any.async ==2.2.5,
+ async -bench,
+ any.attoparsec ==0.14.4,
+ attoparsec -developer,
+ any.attoparsec-aeson ==2.2.0.1,
+ any.base ==4.19.1.0,
+ any.base-orphans ==0.9.1,
+ any.base16-bytestring ==1.0.2.0,
+ any.base64-bytestring ==1.2.1.0,
+ any.basement ==0.0.16,
+ any.bifunctors ==5.6.2,
+ bifunctors +tagged,
+ any.binary ==0.8.9.1,
+ any.bitvec ==1.1.5.0,
+ bitvec +simd,
+ any.blaze-builder ==0.4.2.3,
+ any.boring ==0.2.1,
+ boring +tagged,
+ any.byteorder ==1.0.4,
+ any.bytestring ==0.12.1.0,
+ any.call-stack ==0.4.0,
+ any.case-insensitive ==1.2.1.0,
+ any.cereal ==0.5.8.3,
+ cereal -bytestring-builder,
+ any.cmdargs ==0.10.22,
+ cmdargs +quotation -testprog,
+ any.colour ==2.3.6,
+ any.comonad ==5.0.8,
+ comonad +containers +distributive +indexed-traversable,
+ any.conduit ==1.3.5,
+ any.conduit-extra ==1.3.6,
+ any.constraints ==0.14,
+ any.containers ==0.6.8,
+ any.contravariant ==1.5.5,
+ contravariant +semigroups +statevar +tagged,
+ any.cookie ==0.5.0,
+ any.crypton ==0.34,
+ crypton -check_alignment +integer-gmp -old_toolchain_inliner +support_aesni +support_deepseq +support_pclmuldq +support_rdrand -support_sse +use_target_attributes,
+ any.crypton-connection ==0.3.2,
+ any.crypton-x509 ==1.7.6,
+ any.crypton-x509-store ==1.6.9,
+ any.crypton-x509-system ==1.6.7,
+ any.crypton-x509-validation ==1.6.12,
+ any.cryptonite ==0.30,
+ cryptonite -check_alignment +integer-gmp -old_toolchain_inliner +support_aesni +support_deepseq -support_pclmuldq +support_rdrand -support_sse +use_target_attributes,
+ darcs +executable -rts -static +terminfo +threaded -warn-as-error,
+ any.data-default-class ==0.1.2.0,
+ any.data-fix ==0.3.2,
+ any.data-ordlist ==0.4.7.0,
+ any.deepseq ==1.5.0.0,
+ any.digest ==0.0.2.1,
+ digest -have_arm64_crc32c -have_builtin_prefetch -have_mm_prefetch -have_sse42 -have_strong_getauxval -have_weak_getauxval -pkg-config,
+ any.directory ==1.3.8.1,
+ any.distributive ==0.6.2.1,
+ distributive +semigroups +tagged,
+ any.dlist ==1.0,
+ dlist -werror,
+ any.exceptions ==0.10.7,
+ any.extensible-exceptions ==0.1.1.4,
+ any.fgl ==5.8.2.0,
+ fgl +containers042,
+ any.filepath ==1.4.200.1,
+ any.filtrable ==0.1.6.0,
+ filtrable +containers,
+ any.generically ==0.1.1,
+ any.ghc-bignum ==1.3,
+ any.ghc-boot-th ==9.8.2,
+ any.ghc-prim ==0.11.0,
+ any.hashable ==1.4.4.0,
+ hashable +integer-gmp -random-initial-seed,
+ any.haskeline ==0.8.2.1,
+ any.hostname ==1.0,
+ any.hourglass ==0.2.12,
+ any.hsc2hs ==0.68.10,
+ hsc2hs -in-ghc-tree,
+ any.html ==1.0.1.2,
+ any.http-client ==0.7.17,
+ http-client +network-uri,
+ any.http-client-tls ==0.3.6.3,
+ any.http-conduit ==2.3.8.3,
+ http-conduit +aeson,
+ any.http-types ==0.12.4,
+ any.indexed-traversable ==0.1.3,
+ any.indexed-traversable-instances ==0.1.1.2,
+ any.integer-conversion ==0.1.0.1,
+ any.integer-gmp ==1.1,
+ any.integer-logarithms ==1.0.3.1,
+ integer-logarithms -check-bounds +integer-gmp,
+ any.iproute ==1.7.12,
+ any.leancheck ==1.0.2,
+ any.memory ==0.18.0,
+ memory +support_bytestring +support_deepseq,
+ any.mime-types ==0.1.2.0,
+ any.mmap ==0.5.9,
+ mmap -mmaptest,
+ any.monad-control ==1.0.3.1,
+ any.mono-traversable ==1.0.17.0,
+ any.mtl ==2.3.1,
+ any.network ==3.1.4.0,
+ network -devel,
+ any.network-uri ==2.6.4.2,
+ any.old-locale ==1.0.0.7,
+ any.old-time ==1.1.0.4,
+ any.os-string ==2.0.2,
+ any.parsec ==3.1.17.0,
+ any.pem ==0.2.4,
+ any.pretty ==1.1.3.6,
+ any.prettyprinter ==1.7.1,
+ prettyprinter -buildreadme +text,
+ any.prettyprinter-ansi-terminal ==1.1.3,
+ any.prettyprinter-compat-ansi-wl-pprint ==1.0.2,
+ any.primitive ==0.9.0.0,
+ any.process ==1.6.18.0,
+ any.quickcheck-instances ==0.3.30,
+ quickcheck-instances -bytestring-builder,
+ any.random ==1.2.1.2,
+ any.regex-applicative ==0.3.4,
+ any.regex-base ==0.94.0.2,
+ any.regex-posix ==0.96.0.1,
+ regex-posix -_regex-posix-clib,
+ any.regex-tdfa ==1.3.2.2,
+ regex-tdfa +doctest -force-o2,
+ any.resourcet ==1.3.0,
+ any.rts ==1.0.2,
+ any.safe ==0.3.21,
+ any.scientific ==0.3.7.0,
+ scientific -bytestring-builder -integer-simple,
+ any.semialign ==1.3,
+ semialign +semigroupoids,
+ any.semigroupoids ==6.0.0.1,
+ semigroupoids +comonad +containers +contravariant +distributive +tagged +unordered-containers,
+ any.socks ==0.6.1,
+ any.split ==0.2.5,
+ any.splitmix ==0.1.0.5,
+ splitmix -optimised-mixer,
+ any.stm ==2.5.2.1,
+ any.streaming-commons ==0.2.2.6,
+ streaming-commons -use-bytestring-builder,
+ any.strict ==0.5,
+ any.strict-identity ==0.1.0.0,
+ any.system-fileio ==0.3.16.4,
+ any.system-filepath ==0.4.14,
+ any.tagged ==0.8.8,
+ tagged +deepseq +transformers,
+ any.tar ==0.6.2.0,
+ any.template-haskell ==2.21.0.0,
+ any.temporary ==1.3,
+ any.terminal-size ==0.3.4,
+ any.terminfo ==0.4.1.6,
+ any.test-framework ==0.8.2.0,
+ any.test-framework-hunit ==0.3.0.2,
+ test-framework-hunit -base3 +base4,
+ any.test-framework-leancheck ==0.0.4,
+ any.test-framework-quickcheck2 ==0.3.0.5,
+ any.text ==2.1.1,
+ any.text-iso8601 ==0.1,
+ any.text-short ==0.1.5,
+ text-short -asserts,
+ any.th-abstraction ==0.6.0.0,
+ any.th-compat ==0.1.5,
+ any.these ==1.2,
+ any.time ==1.12.2,
+ any.time-compat ==1.9.6.1,
+ time-compat -old-locale,
+ any.tls ==1.9.0,
+ tls +compat -hans +network,
+ any.transformers ==0.6.1.0,
+ any.transformers-base ==0.4.6,
+ transformers-base +orphaninstances,
+ any.transformers-compat ==0.7.2,
+ transformers-compat -five +five-three -four +generic-deriving +mtl -three -two,
+ any.type-equality ==1,
+ any.typed-process ==0.2.11.1,
+ any.unix ==2.8.4.0,
+ any.unix-compat ==0.7.1,
+ unix-compat -old-time,
+ any.unix-time ==0.4.12,
+ any.unliftio-core ==0.2.1.0,
+ any.unordered-containers ==0.2.20,
+ unordered-containers -debug,
+ any.utf8-string ==1.0.2,
+ any.uuid-types ==1.0.5.1,
+ any.vector ==0.13.1.0,
+ vector +boundschecks -internalchecks -unsafechecks -wall,
+ any.vector-algorithms ==0.9.0.1,
+ vector-algorithms +bench +boundschecks -internalchecks -llvm +properties -unsafechecks,
+ any.vector-stream ==0.1.0.1,
+ any.witherable ==0.4.2,
+ any.xml ==1.3.14,
+ any.zip-archive ==0.4.3.2,
+ zip-archive -executable,
+ any.zlib ==0.7.0.0,
+ zlib -bundled-c-zlib +non-blocking-ffi -pkg-config
+index-state: hackage.haskell.org 2024-04-12T15:34:42Z
diff --git a/testing/dart-sass/APKBUILD b/testing/dart-sass/APKBUILD
new file mode 100644
index 00000000000..84f37119774
--- /dev/null
+++ b/testing/dart-sass/APKBUILD
@@ -0,0 +1,56 @@
+# Contributor: lauren n. liberda <lauren@selfisekai.rocks>
+# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
+pkgname=dart-sass
+pkgver=1.75.0
+pkgrel=0
+pkgdesc="The primary implementation of Sass"
+url="https://sass-lang.com/dart-sass"
+# armv7: no buf
+arch="aarch64 x86_64" # dart
+license="MIT"
+depends="dartaotruntime"
+makedepends="
+ buf
+ dart-sdk
+ "
+_protocol_ver=2.6.0
+source="
+ https://github.com/sass/dart-sass/archive/refs/tags/$pkgver/dart-sass-$pkgver.tar.gz
+ https://github.com/sass/sass/archive/refs/tags/embedded-protocol-$_protocol_ver.tar.gz
+ sass
+
+ lock.patch
+ "
+builddir="$srcdir/dart-sass-$pkgver/"
+
+prepare() {
+ mkdir build
+ mv "$srcdir/sass-embedded-protocol-$_protocol_ver" build/language
+
+ default_prepare
+
+ dart pub get --enforce-lockfile
+}
+
+build() {
+ UPDATE_SASS_SASS_REPO=false \
+ dart run grinder protobuf
+ dart compile aot-snapshot -Dversion="$pkgver" ./bin/sass.dart
+}
+
+check() {
+ # sanity
+ dartaotruntime ./bin/sass.aot --version
+}
+
+package() {
+ install -Dm644 ./bin/sass.aot "$pkgdir"/usr/lib/dart-sass/sass.aot
+ install -Dm755 "$srcdir"/sass "$pkgdir"/usr/bin/sass
+}
+
+sha512sums="
+63989e547e21de730781ea1207596c2318e4df86d63f2ed39186a370c95dfcc31a92b507746bafc4ef3cf8f72b5cfda77eba7ee40b62663b7aa0a92a814536bb dart-sass-1.75.0.tar.gz
+0735d97d5fab04353d3bd82b765572481b3c04b263963f25511990e6be3c6b424ef86131d3f1cf1069bb8ed7b4f14db635fa9f4b9b44d0497274b9cacf6ca60f embedded-protocol-2.6.0.tar.gz
+e974b32f3ca9155868282c2259f693b49bd8c8b57772126efa6e29efedcf4acdb2b1359ae0cb5b0552dfd84daa0ae9273ebe90de7f66670a0a6abd75958cac6d sass
+2c1aebfe586fc8388ab176daadd2ce245a41ef45e1eeade8f8f6438115ba3933a77b8da460eaeb7a31c2e4c32524bb9a7c1dacbbdb188ecde3d11c0c27bada29 lock.patch
+"
diff --git a/testing/dart-sass/lock.patch b/testing/dart-sass/lock.patch
new file mode 100644
index 00000000000..f3bb6327a9c
--- /dev/null
+++ b/testing/dart-sass/lock.patch
@@ -0,0 +1,672 @@
+--- /dev/null
++++ ./pubspec.lock
+@@ -0,0 +1,669 @@
++# Generated by pub
++# See https://dart.dev/tools/pub/glossary#lockfile
++packages:
++ _fe_analyzer_shared:
++ dependency: transitive
++ description:
++ name: _fe_analyzer_shared
++ sha256: "0b2f2bd91ba804e53a61d757b986f89f1f9eaed5b11e4b2f5a2468d86d6c9fc7"
++ url: "https://pub.dev"
++ source: hosted
++ version: "67.0.0"
++ analyzer:
++ dependency: "direct dev"
++ description:
++ name: analyzer
++ sha256: "37577842a27e4338429a1cbc32679d508836510b056f1eedf0c8d20e39c1383d"
++ url: "https://pub.dev"
++ source: hosted
++ version: "6.4.1"
++ archive:
++ dependency: "direct dev"
++ description:
++ name: archive
++ sha256: "22600aa1e926be775fa5fe7e6894e7fb3df9efda8891c73f70fb3262399a432d"
++ url: "https://pub.dev"
++ source: hosted
++ version: "3.4.10"
++ args:
++ dependency: "direct main"
++ description:
++ name: args
++ sha256: eef6c46b622e0494a36c5a12d10d77fb4e855501a91c1b9ef9339326e58f0596
++ url: "https://pub.dev"
++ source: hosted
++ version: "2.4.2"
++ async:
++ dependency: "direct main"
++ description:
++ name: async
++ sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c"
++ url: "https://pub.dev"
++ source: hosted
++ version: "2.11.0"
++ boolean_selector:
++ dependency: transitive
++ description:
++ name: boolean_selector
++ sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66"
++ url: "https://pub.dev"
++ source: hosted
++ version: "2.1.1"
++ charcode:
++ dependency: "direct main"
++ description:
++ name: charcode
++ sha256: fb98c0f6d12c920a02ee2d998da788bca066ca5f148492b7085ee23372b12306
++ url: "https://pub.dev"
++ source: hosted
++ version: "1.3.1"
++ checked_yaml:
++ dependency: transitive
++ description:
++ name: checked_yaml
++ sha256: feb6bed21949061731a7a75fc5d2aa727cf160b91af9a3e464c5e3a32e28b5ff
++ url: "https://pub.dev"
++ source: hosted
++ version: "2.0.3"
++ cli_pkg:
++ dependency: "direct main"
++ description:
++ name: cli_pkg
++ sha256: f812467b5d6a5f26ad0fba5dcfc95133df02edbae47dfa4ade3df5d2b5afdcf2
++ url: "https://pub.dev"
++ source: hosted
++ version: "2.10.0"
++ cli_repl:
++ dependency: "direct main"
++ description:
++ name: cli_repl
++ sha256: a2ee06d98f211cb960c777519cb3d14e882acd90fe5e078668e3ab4baab0ddd4
++ url: "https://pub.dev"
++ source: hosted
++ version: "0.2.3"
++ cli_util:
++ dependency: "direct dev"
++ description:
++ name: cli_util
++ sha256: c05b7406fdabc7a49a3929d4af76bcaccbbffcbcdcf185b082e1ae07da323d19
++ url: "https://pub.dev"
++ source: hosted
++ version: "0.4.1"
++ collection:
++ dependency: "direct main"
++ description:
++ name: collection
++ sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a
++ url: "https://pub.dev"
++ source: hosted
++ version: "1.18.0"
++ convert:
++ dependency: transitive
++ description:
++ name: convert
++ sha256: "0f08b14755d163f6e2134cb58222dd25ea2a2ee8a195e53983d57c075324d592"
++ url: "https://pub.dev"
++ source: hosted
++ version: "3.1.1"
++ coverage:
++ dependency: transitive
++ description:
++ name: coverage
++ sha256: "8acabb8306b57a409bf4c83522065672ee13179297a6bb0cb9ead73948df7c76"
++ url: "https://pub.dev"
++ source: hosted
++ version: "1.7.2"
++ crypto:
++ dependency: "direct dev"
++ description:
++ name: crypto
++ sha256: ff625774173754681d66daaf4a448684fb04b78f902da9cb3d308c19cc5e8bab
++ url: "https://pub.dev"
++ source: hosted
++ version: "3.0.3"
++ csslib:
++ dependency: transitive
++ description:
++ name: csslib
++ sha256: "706b5707578e0c1b4b7550f64078f0a0f19dec3f50a178ffae7006b0a9ca58fb"
++ url: "https://pub.dev"
++ source: hosted
++ version: "1.0.0"
++ dart_mappable:
++ dependency: transitive
++ description:
++ name: dart_mappable
++ sha256: f9f272f2af6c11adf4abc22574eb946df110251052a0d00c03519ecf2442defc
++ url: "https://pub.dev"
++ source: hosted
++ version: "4.2.1"
++ dart_style:
++ dependency: "direct dev"
++ description:
++ name: dart_style
++ sha256: "99e066ce75c89d6b29903d788a7bb9369cf754f7b24bf70bf4b6d6d6b26853b9"
++ url: "https://pub.dev"
++ source: hosted
++ version: "2.3.6"
++ dartdoc:
++ dependency: "direct dev"
++ description:
++ name: dartdoc
++ sha256: "09c07e4b5313a301f8a6fe5a3b43d2dd7fd2b0817d51d563f7dcacdac62ecf68"
++ url: "https://pub.dev"
++ source: hosted
++ version: "8.0.7"
++ ffi:
++ dependency: transitive
++ description:
++ name: ffi
++ sha256: "493f37e7df1804778ff3a53bd691d8692ddf69702cf4c1c1096a2e41b4779e21"
++ url: "https://pub.dev"
++ source: hosted
++ version: "2.1.2"
++ file:
++ dependency: transitive
++ description:
++ name: file
++ sha256: "5fc22d7c25582e38ad9a8515372cd9a93834027aacf1801cf01164dac0ffa08c"
++ url: "https://pub.dev"
++ source: hosted
++ version: "7.0.0"
++ fixnum:
++ dependency: transitive
++ description:
++ name: fixnum
++ sha256: "25517a4deb0c03aa0f32fd12db525856438902d9c16536311e76cdc57b31d7d1"
++ url: "https://pub.dev"
++ source: hosted
++ version: "1.1.0"
++ frontend_server_client:
++ dependency: transitive
++ description:
++ name: frontend_server_client
++ sha256: "408e3ca148b31c20282ad6f37ebfa6f4bdc8fede5b74bc2f08d9d92b55db3612"
++ url: "https://pub.dev"
++ source: hosted
++ version: "3.2.0"
++ glob:
++ dependency: transitive
++ description:
++ name: glob
++ sha256: "0e7014b3b7d4dac1ca4d6114f82bf1782ee86745b9b42a92c9289c23d8a0ab63"
++ url: "https://pub.dev"
++ source: hosted
++ version: "2.1.2"
++ grinder:
++ dependency: "direct dev"
++ description:
++ name: grinder
++ sha256: e1996e485d2b56bb164a8585679758d488fbf567273f51c432c8733fee1f6188
++ url: "https://pub.dev"
++ source: hosted
++ version: "0.9.5"
++ html:
++ dependency: transitive
++ description:
++ name: html
++ sha256: "3a7812d5bcd2894edf53dfaf8cd640876cf6cef50a8f238745c8b8120ea74d3a"
++ url: "https://pub.dev"
++ source: hosted
++ version: "0.15.4"
++ http:
++ dependency: "direct main"
++ description:
++ name: http
++ sha256: "761a297c042deedc1ffbb156d6e2af13886bb305c2a343a4d972504cd67dd938"
++ url: "https://pub.dev"
++ source: hosted
++ version: "1.2.1"
++ http_multi_server:
++ dependency: transitive
++ description:
++ name: http_multi_server
++ sha256: "97486f20f9c2f7be8f514851703d0119c3596d14ea63227af6f7a481ef2b2f8b"
++ url: "https://pub.dev"
++ source: hosted
++ version: "3.2.1"
++ http_parser:
++ dependency: transitive
++ description:
++ name: http_parser
++ sha256: "2aa08ce0341cc9b354a498388e30986515406668dbcc4f7c950c3e715496693b"
++ url: "https://pub.dev"
++ source: hosted
++ version: "4.0.2"
++ io:
++ dependency: transitive
++ description:
++ name: io
++ sha256: "2ec25704aba361659e10e3e5f5d672068d332fc8ac516421d483a11e5cbd061e"
++ url: "https://pub.dev"
++ source: hosted
++ version: "1.0.4"
++ js:
++ dependency: "direct main"
++ description:
++ name: js
++ sha256: f2c445dce49627136094980615a031419f7f3eb393237e4ecd97ac15dea343f3
++ url: "https://pub.dev"
++ source: hosted
++ version: "0.6.7"
++ json_annotation:
++ dependency: transitive
++ description:
++ name: json_annotation
++ sha256: b10a7b2ff83d83c777edba3c6a0f97045ddadd56c944e1a23a3fdf43a1bf4467
++ url: "https://pub.dev"
++ source: hosted
++ version: "4.8.1"
++ lints:
++ dependency: "direct dev"
++ description:
++ name: lints
++ sha256: cbf8d4b858bb0134ef3ef87841abdf8d63bfc255c266b7bf6b39daa1085c4290
++ url: "https://pub.dev"
++ source: hosted
++ version: "3.0.0"
++ logging:
++ dependency: transitive
++ description:
++ name: logging
++ sha256: "623a88c9594aa774443aa3eb2d41807a48486b5613e67599fb4c41c0ad47c340"
++ url: "https://pub.dev"
++ source: hosted
++ version: "1.2.0"
++ markdown:
++ dependency: transitive
++ description:
++ name: markdown
++ sha256: ef2a1298144e3f985cc736b22e0ccdaf188b5b3970648f2d9dc13efd1d9df051
++ url: "https://pub.dev"
++ source: hosted
++ version: "7.2.2"
++ matcher:
++ dependency: transitive
++ description:
++ name: matcher
++ sha256: d2323aa2060500f906aa31a895b4030b6da3ebdcc5619d14ce1aada65cd161cb
++ url: "https://pub.dev"
++ source: hosted
++ version: "0.12.16+1"
++ meta:
++ dependency: "direct main"
++ description:
++ name: meta
++ sha256: "7687075e408b093f36e6bbf6c91878cc0d4cd10f409506f7bc996f68220b9136"
++ url: "https://pub.dev"
++ source: hosted
++ version: "1.12.0"
++ mime:
++ dependency: transitive
++ description:
++ name: mime
++ sha256: "2e123074287cc9fd6c09de8336dae606d1ddb88d9ac47358826db698c176a1f2"
++ url: "https://pub.dev"
++ source: hosted
++ version: "1.0.5"
++ native_stack_traces:
++ dependency: transitive
++ description:
++ name: native_stack_traces
++ sha256: c797830b9910d13b0f4e70ddef15cde034214fe3bdb8092c4ea5ffad2f74013f
++ url: "https://pub.dev"
++ source: hosted
++ version: "0.5.6"
++ native_synchronization:
++ dependency: "direct main"
++ description:
++ name: native_synchronization
++ sha256: ff200fe0a64d733ff7d4dde2005271c297db81007604c8cd21037959858133ab
++ url: "https://pub.dev"
++ source: hosted
++ version: "0.2.0"
++ node_interop:
++ dependency: "direct main"
++ description:
++ name: node_interop
++ sha256: "3af2420c728173806f4378cf89c53ba9f27f7f67792b898561bff9d390deb98e"
++ url: "https://pub.dev"
++ source: hosted
++ version: "2.1.0"
++ node_preamble:
++ dependency: "direct dev"
++ description:
++ name: node_preamble
++ sha256: "6e7eac89047ab8a8d26cf16127b5ed26de65209847630400f9aefd7cd5c730db"
++ url: "https://pub.dev"
++ source: hosted
++ version: "2.0.2"
++ oauth2:
++ dependency: transitive
++ description:
++ name: oauth2
++ sha256: c4013ef62be37744efdc0861878fd9e9285f34db1f9e331cc34100d7674feb42
++ url: "https://pub.dev"
++ source: hosted
++ version: "2.0.2"
++ package_config:
++ dependency: "direct main"
++ description:
++ name: package_config
++ sha256: "1c5b77ccc91e4823a5af61ee74e6b972db1ef98c2ff5a18d3161c982a55448bd"
++ url: "https://pub.dev"
++ source: hosted
++ version: "2.1.0"
++ path:
++ dependency: "direct main"
++ description:
++ name: path
++ sha256: "087ce49c3f0dc39180befefc60fdb4acd8f8620e5682fe2476afd0b3688bb4af"
++ url: "https://pub.dev"
++ source: hosted
++ version: "1.9.0"
++ petitparser:
++ dependency: transitive
++ description:
++ name: petitparser
++ sha256: c15605cd28af66339f8eb6fbe0e541bfe2d1b72d5825efc6598f3e0a31b9ad27
++ url: "https://pub.dev"
++ source: hosted
++ version: "6.0.2"
++ pointycastle:
++ dependency: transitive
++ description:
++ name: pointycastle
++ sha256: "43ac87de6e10afabc85c445745a7b799e04de84cebaa4fd7bf55a5e1e9604d29"
++ url: "https://pub.dev"
++ source: hosted
++ version: "3.7.4"
++ pool:
++ dependency: "direct main"
++ description:
++ name: pool
++ sha256: "20fe868b6314b322ea036ba325e6fc0711a22948856475e2c2b6306e8ab39c2a"
++ url: "https://pub.dev"
++ source: hosted
++ version: "1.5.1"
++ protobuf:
++ dependency: "direct main"
++ description:
++ name: protobuf
++ sha256: "68645b24e0716782e58948f8467fd42a880f255096a821f9e7d0ec625b00c84d"
++ url: "https://pub.dev"
++ source: hosted
++ version: "3.1.0"
++ protoc_plugin:
++ dependency: "direct dev"
++ description:
++ name: protoc_plugin
++ sha256: fb0554851c9eca30bd18405fbbfe81e39166d4a2f0e5b770606fd69da3da0b2f
++ url: "https://pub.dev"
++ source: hosted
++ version: "21.1.2"
++ pub_api_client:
++ dependency: "direct dev"
++ description:
++ name: pub_api_client
++ sha256: cc3d2c93df3823553de6a3e7d3ac09a3f43f8c271af4f43c2795266090ac9625
++ url: "https://pub.dev"
++ source: hosted
++ version: "2.7.0"
++ pub_semver:
++ dependency: "direct main"
++ description:
++ name: pub_semver
++ sha256: "40d3ab1bbd474c4c2328c91e3a7df8c6dd629b79ece4c4bd04bee496a224fb0c"
++ url: "https://pub.dev"
++ source: hosted
++ version: "2.1.4"
++ pubspec:
++ dependency: transitive
++ description:
++ name: pubspec
++ sha256: f534a50a2b4d48dc3bc0ec147c8bd7c304280fff23b153f3f11803c4d49d927e
++ url: "https://pub.dev"
++ source: hosted
++ version: "2.3.0"
++ pubspec_parse:
++ dependency: "direct dev"
++ description:
++ name: pubspec_parse
++ sha256: c63b2876e58e194e4b0828fcb080ad0e06d051cb607a6be51a9e084f47cb9367
++ url: "https://pub.dev"
++ source: hosted
++ version: "1.2.3"
++ quiver:
++ dependency: transitive
++ description:
++ name: quiver
++ sha256: b1c1ac5ce6688d77f65f3375a9abb9319b3cb32486bdc7a1e0fdf004d7ba4e47
++ url: "https://pub.dev"
++ source: hosted
++ version: "3.2.1"
++ retry:
++ dependency: transitive
++ description:
++ name: retry
++ sha256: "822e118d5b3aafed083109c72d5f484c6dc66707885e07c0fbcb8b986bba7efc"
++ url: "https://pub.dev"
++ source: hosted
++ version: "3.1.2"
++ shelf:
++ dependency: transitive
++ description:
++ name: shelf
++ sha256: ad29c505aee705f41a4d8963641f91ac4cee3c8fad5947e033390a7bd8180fa4
++ url: "https://pub.dev"
++ source: hosted
++ version: "1.4.1"
++ shelf_packages_handler:
++ dependency: transitive
++ description:
++ name: shelf_packages_handler
++ sha256: "89f967eca29607c933ba9571d838be31d67f53f6e4ee15147d5dc2934fee1b1e"
++ url: "https://pub.dev"
++ source: hosted
++ version: "3.0.2"
++ shelf_static:
++ dependency: transitive
++ description:
++ name: shelf_static
++ sha256: a41d3f53c4adf0f57480578c1d61d90342cd617de7fc8077b1304643c2d85c1e
++ url: "https://pub.dev"
++ source: hosted
++ version: "1.1.2"
++ shelf_web_socket:
++ dependency: transitive
++ description:
++ name: shelf_web_socket
++ sha256: "9ca081be41c60190ebcb4766b2486a7d50261db7bd0f5d9615f2d653637a84c1"
++ url: "https://pub.dev"
++ source: hosted
++ version: "1.0.4"
++ source_map_stack_trace:
++ dependency: transitive
++ description:
++ name: source_map_stack_trace
++ sha256: "84cf769ad83aa6bb61e0aa5a18e53aea683395f196a6f39c4c881fb90ed4f7ae"
++ url: "https://pub.dev"
++ source: hosted
++ version: "2.1.1"
++ source_maps:
++ dependency: "direct main"
++ description:
++ name: source_maps
++ sha256: "708b3f6b97248e5781f493b765c3337db11c5d2c81c3094f10904bfa8004c703"
++ url: "https://pub.dev"
++ source: hosted
++ version: "0.10.12"
++ source_span:
++ dependency: "direct main"
++ description:
++ name: source_span
++ sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c"
++ url: "https://pub.dev"
++ source: hosted
++ version: "1.10.0"
++ stack_trace:
++ dependency: "direct main"
++ description:
++ name: stack_trace
++ sha256: "73713990125a6d93122541237550ee3352a2d84baad52d375a4cad2eb9b7ce0b"
++ url: "https://pub.dev"
++ source: hosted
++ version: "1.11.1"
++ stream_channel:
++ dependency: "direct main"
++ description:
++ name: stream_channel
++ sha256: ba2aa5d8cc609d96bbb2899c28934f9e1af5cddbd60a827822ea467161eb54e7
++ url: "https://pub.dev"
++ source: hosted
++ version: "2.1.2"
++ stream_transform:
++ dependency: "direct main"
++ description:
++ name: stream_transform
++ sha256: "14a00e794c7c11aa145a170587321aedce29769c08d7f58b1d141da75e3b1c6f"
++ url: "https://pub.dev"
++ source: hosted
++ version: "2.1.0"
++ string_scanner:
++ dependency: "direct main"
++ description:
++ name: string_scanner
++ sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde"
++ url: "https://pub.dev"
++ source: hosted
++ version: "1.2.0"
++ term_glyph:
++ dependency: "direct main"
++ description:
++ name: term_glyph
++ sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84
++ url: "https://pub.dev"
++ source: hosted
++ version: "1.2.1"
++ test:
++ dependency: "direct dev"
++ description:
++ name: test
++ sha256: "7ee446762c2c50b3bd4ea96fe13ffac69919352bd3b4b17bac3f3465edc58073"
++ url: "https://pub.dev"
++ source: hosted
++ version: "1.25.2"
++ test_api:
++ dependency: transitive
++ description:
++ name: test_api
++ sha256: "9955ae474176f7ac8ee4e989dadfb411a58c30415bcfb648fa04b2b8a03afa7f"
++ url: "https://pub.dev"
++ source: hosted
++ version: "0.7.0"
++ test_core:
++ dependency: transitive
++ description:
++ name: test_core
++ sha256: "2bc4b4ecddd75309300d8096f781c0e3280ca1ef85beda558d33fcbedc2eead4"
++ url: "https://pub.dev"
++ source: hosted
++ version: "0.6.0"
++ test_descriptor:
++ dependency: "direct dev"
++ description:
++ name: test_descriptor
++ sha256: abe245e8b0d61245684127fe32343542c25dc2a1ce8f405531637241d98d07e4
++ url: "https://pub.dev"
++ source: hosted
++ version: "2.0.1"
++ test_process:
++ dependency: "direct dev"
++ description:
++ name: test_process
++ sha256: "217f19b538926e4922bdb2a01410100ec4e3beb4cc48eae5ae6b20037b07bbd6"
++ url: "https://pub.dev"
++ source: hosted
++ version: "2.1.0"
++ type_plus:
++ dependency: transitive
++ description:
++ name: type_plus
++ sha256: "2e33cfac2e129297d5874567bdf7587502ec359881e9318551e014d91b02f84a"
++ url: "https://pub.dev"
++ source: hosted
++ version: "2.1.0"
++ typed_data:
++ dependency: "direct main"
++ description:
++ name: typed_data
++ sha256: facc8d6582f16042dd49f2463ff1bd6e2c9ef9f3d5da3d9b087e244a7b564b3c
++ url: "https://pub.dev"
++ source: hosted
++ version: "1.3.2"
++ uri:
++ dependency: transitive
++ description:
++ name: uri
++ sha256: "889eea21e953187c6099802b7b4cf5219ba8f3518f604a1033064d45b1b8268a"
++ url: "https://pub.dev"
++ source: hosted
++ version: "1.0.0"
++ vm_service:
++ dependency: transitive
++ description:
++ name: vm_service
++ sha256: e7d5ecd604e499358c5fe35ee828c0298a320d54455e791e9dcf73486bc8d9f0
++ url: "https://pub.dev"
++ source: hosted
++ version: "14.1.0"
++ watcher:
++ dependency: "direct main"
++ description:
++ name: watcher
++ sha256: "3d2ad6751b3c16cf07c7fca317a1413b3f26530319181b37e3b9039b84fc01d8"
++ url: "https://pub.dev"
++ source: hosted
++ version: "1.1.0"
++ web:
++ dependency: transitive
++ description:
++ name: web
++ sha256: "97da13628db363c635202ad97068d47c5b8aa555808e7a9411963c533b449b27"
++ url: "https://pub.dev"
++ source: hosted
++ version: "0.5.1"
++ web_socket_channel:
++ dependency: transitive
++ description:
++ name: web_socket_channel
++ sha256: "1d8e795e2a8b3730c41b8a98a2dff2e0fb57ae6f0764a1c46ec5915387d257b2"
++ url: "https://pub.dev"
++ source: hosted
++ version: "2.4.4"
++ webkit_inspection_protocol:
++ dependency: transitive
++ description:
++ name: webkit_inspection_protocol
++ sha256: "87d3f2333bb240704cd3f1c6b5b7acd8a10e7f0bc28c28dcf14e782014f4a572"
++ url: "https://pub.dev"
++ source: hosted
++ version: "1.2.1"
++ xml:
++ dependency: transitive
++ description:
++ name: xml
++ sha256: b015a8ad1c488f66851d762d3090a21c600e479dc75e68328c52774040cf9226
++ url: "https://pub.dev"
++ source: hosted
++ version: "6.5.0"
++ yaml:
++ dependency: "direct dev"
++ description:
++ name: yaml
++ sha256: "75769501ea3489fca56601ff33454fe45507ea3bfb014161abc3b43ae25989d5"
++ url: "https://pub.dev"
++ source: hosted
++ version: "3.1.2"
++sdks:
++ dart: ">=3.3.0 <4.0.0"
diff --git a/testing/dart-sass/sass b/testing/dart-sass/sass
new file mode 100644
index 00000000000..1d0a5443fb3
--- /dev/null
+++ b/testing/dart-sass/sass
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+exec dartaotruntime /usr/lib/dart-sass/sass.aot "$@"
diff --git a/testing/dart-stage0/APKBUILD b/testing/dart-stage0/APKBUILD
new file mode 100644
index 00000000000..69a2e0e888a
--- /dev/null
+++ b/testing/dart-stage0/APKBUILD
@@ -0,0 +1,62 @@
+# Contributor: lauren n. liberda <lauren@selfisekai.rocks>
+# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
+pkgname=dart-stage0
+# upgrade checklist: https://md.sdomi.pl/Q-ECZTJ2Qqyp3ahfJuYSBw
+pkgver=3.2.0_alpha150_p0
+pkgrel=0
+pkgdesc="Dart is a client-optimized language for fast apps on any platform (temporary bootstrap package)"
+url="https://dart.dev/"
+arch="aarch64 armv7 riscv64 x86_64"
+license="BSD-3-Clause"
+options="!check"
+
+_canonver="${pkgver/_p/.}"
+case "$pkgver" in
+ *.*.*_alpha*)
+ _canonver="${_canonver/_alpha/-}.dev"
+ ;;
+ *.*.*_beta*)
+ _canonver="${_canonver/_beta/-}.beta"
+ ;;
+esac
+
+source="
+ dart-musl-stage0-x64-$_canonver.tar.gz.noauto::https://github.com/dart-musl/dart/releases/download/$_canonver/dartsdk-linux-x64-release.tar.gz
+ dart-musl-stage0-arm-$_canonver.tar.gz.noauto::https://github.com/dart-musl/dart/releases/download/$_canonver/dartsdk-linux-arm-release.tar.gz
+ dart-musl-stage0-arm64-$_canonver.tar.gz.noauto::https://github.com/dart-musl/dart/releases/download/$_canonver/dartsdk-linux-arm64-release.tar.gz
+ dart-musl-stage0-riscv64-$_canonver.tar.gz.noauto::https://github.com/dart-musl/dart/releases/download/$_canonver/dartsdk-linux-riscv64-release.tar.gz
+"
+builddir="$srcdir/"
+
+provides="dart-bootstrap=$pkgver-r$pkgrel"
+provider_priority=42
+
+case "$CARCH" in
+ aarch64) _dart_arch="arm64" ;;
+ armv7) _dart_arch="arm" ;;
+ riscv64) _dart_arch="riscv64" ;;
+ x86_64) _dart_arch="x64" ;;
+esac
+
+build() {
+ :
+}
+
+package() {
+ mkdir -p "$pkgdir"/usr/lib "$pkgdir"/usr/bin "$pkgdir"/usr/include
+ (
+ cd "$pkgdir"/usr/lib
+ tar xf "$srcdir"/dart-musl-stage0-$_dart_arch-$_canonver.tar.gz.noauto
+ mv dart-sdk dart
+ )
+ ln -s ../lib/dart/bin/dart "$pkgdir"/usr/bin/dart
+ ln -s ../lib/dart/bin/dartaotruntime "$pkgdir"/usr/bin/dartaotruntime
+ ln -s ../lib/dart/include "$pkgdir"/usr/include/dart
+}
+
+sha512sums="
+6fa5e6db8764af8be4c1578823395d2dca309629a144f95ef341b4c583e1ca7380847a2043ffaa0d8a2a3fac4938a88f474d606236a8a67113b5782754654300 dart-musl-stage0-x64-3.2.0-150.0.dev.tar.gz.noauto
+024664e5096c4c692a71573a53c7f68c043083fb6fde783b8fe4912f8779ad772fbf3c3bc89ac1130e9f7ff449464482a5f2551688e21c390e9c46e39cf59f03 dart-musl-stage0-arm-3.2.0-150.0.dev.tar.gz.noauto
+1cef3ed441c5873aec489edb72bc57a0e5653eb9965de277b631e2e5ef1f84b9b129a4fbc754e57047675b84eddb5fd1efb96561f534e006fb33eaeb62deaf4c dart-musl-stage0-arm64-3.2.0-150.0.dev.tar.gz.noauto
+7e2901498a4ea177bc7f54d9fd8f01ce2f29ee497fcf7e3fee9b7fc19c226b6ebdab11b555c90d9765022d3439256f37aa9f134af3138fa16d861d8f1ca0645a dart-musl-stage0-riscv64-3.2.0-150.0.dev.tar.gz.noauto
+"
diff --git a/testing/dart/APKBUILD b/testing/dart/APKBUILD
new file mode 100644
index 00000000000..66ad847e37a
--- /dev/null
+++ b/testing/dart/APKBUILD
@@ -0,0 +1,237 @@
+# Contributor: lauren n. liberda <lauren@selfisekai.rocks>
+# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
+pkgname=dart
+# upgrade checklist: https://md.sdomi.pl/Q-ECZTJ2Qqyp3ahfJuYSBw
+pkgver=3.3.2
+pkgrel=0
+_bootstrap=3.2.0_alpha150_p0
+pkgdesc="Dart is a client-optimized language for fast apps on any platform"
+url="https://dart.dev/"
+arch="aarch64 armv7 x86_64"
+license="BSD-3-Clause"
+makedepends="
+ curl
+ dart-bootstrap=>$_bootstrap
+ gn
+ icu-dev
+ lld
+ llvm
+ python3
+ ripgrep
+ samurai
+ zlib-dev
+ zstd
+ "
+subpackages="$pkgname-sdk dartaotruntime"
+
+case "$pkgver" in
+ *.*.*_pre*)
+ _canonver="${pkgver/_pre/-}"
+ _canonver="${_canonver/-r/.}.dev"
+ ;;
+ *.*.*_beta*)
+ _canonver="${pkgver/_beta/-}"
+ _canonver="${_canonver/-r/.}.beta"
+ ;;
+ *.*.*)
+ _canonver="$pkgver"
+ ;;
+esac
+
+source="
+ https://ab-sn.lnl.gay/dart-sdk-$_canonver.tar.zst
+
+ build-config.patch
+ gcc13.patch
+ no-werror.patch
+ unbundle.patch
+ where-we-are-heading-prefixes-are-not-needed.patch
+ "
+builddir="$srcdir/dart-sdk-$_canonver"
+
+# gclient comes from teapot-tools
+_distbucket="sakamoto/lnl-aports-snapshots/"
+snapshot() {
+ mkdir -p "$srcdir"
+ cd "$srcdir"
+
+ echo "
+solutions = [{
+ 'name': 'sdk',
+ 'url': 'https://dart.googlesource.com/sdk.git@$_canonver',
+}]
+target_cpu = ['x64', 'arm64', 'arm', 'riscv64']
+target_cpu_only = True
+" > .gclient
+
+ gclient sync --no-history --nohooks --tpot-cipd-ignore-platformed
+
+ for elf in $(scanelf -RA -F "%F" sdk); do
+ rm -f "$elf"
+ done
+
+ mv sdk dart-sdk-$_canonver
+
+ msg "generating tarball.."
+ tar -cf dart-sdk-$_canonver.tar \
+ --exclude="ChangeLog*" \
+ --exclude="sdk/buildtools/*/clang" \
+ --exclude="third_party/fuchsia/sdk/linux/arch" \
+ --exclude=".build-id" \
+ --exclude-backups \
+ --exclude-caches-all \
+ --exclude-vcs \
+ dart-sdk-$_canonver
+
+ zstd --auto-threads=logical --ultra --long -22 -T0 -vv dart-sdk-$_canonver.tar -o "$SRCDEST"/dart-sdk-$_canonver.tar.zst
+ mcli cp "$SRCDEST"/dart-sdk-$_canonver.tar.zst "$_distbucket"
+}
+
+case "$CARCH" in
+ aarch64)
+ _arch="arm64"
+ _out="$builddir/out/ReleaseARM64"
+ ;;
+ armv7)
+ _arch="arm"
+ _out="$builddir/out/ReleaseARM"
+ ;;
+ riscv64)
+ _arch="riscv64"
+ _out="$builddir/out/ReleaseRISCV64"
+ ;;
+ x86_64)
+ _arch="x64"
+ _out="$builddir/out/ReleaseX64"
+ ;;
+esac
+
+prepare() {
+ default_prepare
+
+ mkdir -p .git/logs
+ echo '' > .git/logs/HEAD
+
+ # bind bootstrapped interpreter
+ rm -rf tools/sdks/dart-sdk
+ ln -s /usr/lib/dart tools/sdks/dart-sdk
+
+ ln -s /usr/bin/gn buildtools/gn
+ mkdir -p buildtools/ninja
+ ln -s /usr/bin/samu buildtools/ninja/ninja
+
+ # gclient hooks
+ python3 tools/generate_package_config.py
+ python3 tools/generate_sdk_version_file.py
+
+ # google analytics, doubleclick
+ echo '' > tools/bots/dartdoc_footer.html
+ rm third_party/devtools/web/devtools_analytics.js
+
+ # disarm analytics for sure
+ rg --no-ignore -l 'google-analytics\.com' . \
+ | rg -v "\.map\$" \
+ | xargs -t -n 1 -P ${JOBS:-2} sed -i -E 's|([^/]+\.)?google-analytics\.com|0\.0\.0\.0|g'
+ rg --no-ignore -l 'UA-[0-9]+-[0-9]+' . \
+ | xargs -t -n 1 -P ${JOBS:-2} sed -i -E 's|UA-[0-9]+-[0-9]+|UA-2137-0|g'
+
+ sed -i 's/Unknown timestamp/'"$(date -uIm)"'/' tools/make_version.py
+
+ # reusable system library settings
+ local use_system="
+ icu
+ zlib
+ "
+ for _lib in $use_system; do
+ msg "Removing buildscripts for system provided $_lib"
+ find . -type f -path "*third_party/$_lib/*" \
+ \! -path "*third_party/$_lib/chromium/*" \
+ \! -path "*third_party/$_lib/google/*" \
+ \! -regex '.*\.\(gn\|gni\|isolate\|py\)' \
+ -delete
+ done
+ msg "Replacing gn files"
+ python3 build/linux/unbundle/replace_gn_files.py --system-libraries \
+ $use_system
+}
+
+build() {
+ # shellcheck disable=2089
+ local gn_args="
+ create_kernel_service_snapshot=true
+ dart_snapshot_kind=\"app-jit\"
+ dart_sysroot=\"\"
+ dart_use_tcmalloc=false
+ "
+
+ msg "Building"
+ # shellcheck disable=2116,2090
+ python3 ./tools/build.py \
+ --no-clang \
+ --arch="$_arch" \
+ --mode=release \
+ --no-goma \
+ --no-verify-sdk-hash \
+ --gn-args="$(echo $gn_args)" \
+ create_sdk runtime
+}
+
+check() {
+ # check sanity
+ "$_out"/dart-sdk/bin/dart --version
+}
+
+package() {
+ mkdir -p "$pkgdir"/usr/bin "$pkgdir"/usr/lib "$pkgdir"/usr/include
+
+ cp -r "$_out"/dart-sdk "$pkgdir"/usr/lib/dart
+
+ ln -s ../lib/dart/include "$pkgdir"/usr/include/dart
+ ln -s ../lib/dart/bin/dart "$pkgdir"/usr/bin/dart
+ ln -s ../lib/dart/bin/dartaotruntime "$pkgdir"/usr/bin/dartaotruntime
+
+ find "$pkgdir"/usr/lib/dart/bin/resources/devtools -type f -exec chmod 644 {} \;
+}
+
+dartaotruntime() {
+ amove usr/bin/dartaotruntime
+ amove usr/lib/dart/bin/dartaotruntime
+}
+
+sdk() {
+ # do the stuff -dev does by default here
+ default_dev
+
+ # must be set after default_dev or gets cleared
+ depends="dart=$pkgver-r$pkgrel dartaotruntime=$pkgver-r$pkgrel"
+ provides="dart-bootstrap=$pkgver-r$pkgrel dart-devtools=$pkgver-r$pkgrel"
+ provider_priority=100
+
+ _snapshots="
+ analysis_server
+ dart2js
+ dartdevc
+ dds_aot
+ frontend_server
+ gen_kernel_aot
+ kernel-service
+ kernel_worker
+ "
+ for snap in $_snapshots; do
+ amove usr/lib/dart/bin/snapshots/$snap.dart.snapshot
+ done
+ amove usr/lib/dart/bin/resources/dartdoc
+ amove usr/lib/dart/bin/resources/devtools
+ amove usr/lib/dart/bin/snapshots/dart2wasm_product.snapshot
+ amove usr/lib/dart/bin/utils
+ amove usr/lib/dart/lib
+}
+
+sha512sums="
+f5521b4f779b9e657e351734af0a845cfa83fada99a65896d812643ed80467892c6bb4127d687f5ac6e684e7efd1c7eaf41dfed696dd69486897b29a6c9a9b42 dart-sdk-3.3.2.tar.zst
+3ae8364a172b029cf0b45cd4fd1ac192a20772c84924bb59a1775339ed6314cf81c398b078823fd9f07abc1b0de4b5704c76ce84c64f8924e645f00cfcda4ff3 build-config.patch
+03562a3fa935b6819458acdfcadf24f71accf73e2000d158c1fe41aca068b21fb158350a32911c322672b592beefea1e9c7e4675a98418804e60000049a656c8 gcc13.patch
+e7f5c715d9ed01c36e8b60892332b1bc763a3f98ca87905e2102491c469db60ab21dba9b3e116e1a7ec3faef7d65b8fdd60d7148cfb848ef5a2b411a06f425cf no-werror.patch
+14b6b024688110631dfce6d51b895e84d4306a00e66c0e5306126f6d27cbd13894bf2c50faffab99e57107901ec3977a4b0038bee9e165f733ef9e4ccc14af1a unbundle.patch
+641909211afa784d06c864777f04afc619fa669bbd4be30343feb67ed3c7c797f48eac22821a70f18c098d1c04206bd44c3b88aaf2e9bf0c3938ba58578f1f15 where-we-are-heading-prefixes-are-not-needed.patch
+"
diff --git a/testing/dart/build-config.patch b/testing/dart/build-config.patch
new file mode 100644
index 00000000000..94775ab18c7
--- /dev/null
+++ b/testing/dart/build-config.patch
@@ -0,0 +1,20 @@
+--- ./build/config/linux/BUILD.gn.orig
++++ ./build/config/linux/BUILD.gn
+@@ -13,14 +13,9 @@
+ ldflags += [ "-Wl,--exclude-libs=libc++.a" ]
+ }
+
+- # Explicitly use static linking for libstdc++ and libgcc to minimize
+- # dependencies.
+- if (!use_flutter_cxx) {
+- ldflags += [
+- "-static-libgcc",
+- "-static-libstdc++",
+- ]
+- }
++ ldflags += [ "-L/lib", "-fuse-ld=lld" ]
++ ldflags += string_split(getenv("LDFLAGS"), " ")
++ cflags += string_split(getenv("CFLAGS"), " ")
+
+ if (sysroot != "") {
+ cflags += [ "--sysroot=" + sysroot ]
diff --git a/testing/dart/gcc13.patch b/testing/dart/gcc13.patch
new file mode 100644
index 00000000000..e7ac784fa60
--- /dev/null
+++ b/testing/dart/gcc13.patch
@@ -0,0 +1,20 @@
+--- a/runtime/bin/ffi_test/ffi_test_functions_generated.cc
++++ b/runtime/bin/ffi_test/ffi_test_functions_generated.cc
+@@ -11,6 +11,7 @@
+ #include <sys/types.h>
+
+ #include <cmath>
++#include <cstdint>
+ #include <iostream>
+ #include <limits>
+
+--- a/runtime/bin/ffi_test/ffi_test_functions.cc
++++ b/runtime/bin/ffi_test/ffi_test_functions.cc
+@@ -13,6 +13,7 @@
+ #include <sys/types.h>
+
+ #include <cmath>
++#include <cstdint>
+ #include <iostream>
+ #include <limits>
+
diff --git a/testing/dart/no-werror.patch b/testing/dart/no-werror.patch
new file mode 100644
index 00000000000..92dbce7dad4
--- /dev/null
+++ b/testing/dart/no-werror.patch
@@ -0,0 +1,13 @@
+--- a/build/config/compiler/BUILD.gn
++++ b/build/config/compiler/BUILD.gn
+@@ -672,10 +672,6 @@
+ "-Wextra",
+ ]
+
+- if (dart_sysroot != "alpine") {
+- cflags += [ "-Werror" ]
+- }
+-
+ defines = []
+ if (!using_sanitizer && !is_clang) {
+ # _FORTIFY_SOURCE isn't really supported by Clang now, see
diff --git a/testing/dart/unbundle.patch b/testing/dart/unbundle.patch
new file mode 100644
index 00000000000..c115ae90169
--- /dev/null
+++ b/testing/dart/unbundle.patch
@@ -0,0 +1,439 @@
+diff --git a/build/linux/unbundle/icu.gn b/build/linux/unbundle/icu.gn
+new file mode 100644
+index 00000000000..9e54d4efe4e
+--- /dev/null
++++ b/build/linux/unbundle/icu.gn
+@@ -0,0 +1,262 @@
++# Copyright 2016 The Chromium Authors
++# Use of this source code is governed by a BSD-style license that can be
++# found in the LICENSE file.
++
++import("//build/config/linux/pkg_config.gni")
++import("//build/shim_headers.gni")
++
++group("icu") {
++ public_deps = [
++ ":icui18n",
++ ":icuuc",
++ ]
++}
++
++config("icu_config") {
++ defines = [
++ "USING_SYSTEM_ICU=1",
++ "ICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_STATIC",
++
++ # U_EXPORT (defined in unicode/platform.h) is used to set public visibility
++ # on classes through the U_COMMON_API and U_I18N_API macros (among others).
++ # When linking against the system ICU library, we want its symbols to have
++ # public LTO visibility. This disables CFI checks for the ICU classes and
++ # allows whole-program optimization to be applied to the rest of Chromium.
++ #
++ # Both U_COMMON_API and U_I18N_API macros would be defined to U_EXPORT only
++ # when U_COMBINED_IMPLEMENTATION is defined (see unicode/utypes.h). Because
++ # we override the default system UCHAR_TYPE (char16_t), it is not possible
++ # to use U_COMBINED_IMPLEMENTATION at this moment, meaning the U_COMMON_API
++ # and U_I18N_API macros are set to U_IMPORT which is an empty definition.
++ #
++ # Until building with UCHAR_TYPE=char16_t is supported, one way to apply
++ # public visibility (and thus public LTO visibility) to all ICU classes is
++ # to define U_IMPORT to have the same value as U_EXPORT. For more details,
++ # please see: https://crbug.com/822820
++ "U_IMPORT=U_EXPORT",
++ ]
++}
++
++pkg_config("system_icui18n") {
++ packages = [ "icu-i18n" ]
++}
++
++pkg_config("system_icuuc") {
++ packages = [ "icu-uc" ]
++}
++
++source_set("icui18n") {
++ public_deps = [ ":icui18n_shim" ]
++ public_configs = [
++ ":icu_config",
++ ":system_icui18n",
++ ]
++}
++
++source_set("icuuc") {
++ public_deps = [ ":icuuc_shim" ]
++ public_configs = [
++ ":icu_config",
++ ":system_icuuc",
++ ]
++}
++
++group("icui18n_hidden_visibility") {
++ public_deps = [ ":icui18n" ]
++}
++
++group("icuuc_hidden_visibility") {
++ public_deps = [ ":icuuc" ]
++}
++
++shim_headers("icui18n_shim") {
++ root_path = "source/i18n"
++ headers = [
++ # This list can easily be updated using the commands below:
++ # cd third_party/icu/source/i18n
++ # find unicode -iname '*.h' -printf ' "%p",\n' | LC_ALL=C sort -u
++ "unicode/alphaindex.h",
++ "unicode/basictz.h",
++ "unicode/calendar.h",
++ "unicode/choicfmt.h",
++ "unicode/coleitr.h",
++ "unicode/coll.h",
++ "unicode/compactdecimalformat.h",
++ "unicode/curramt.h",
++ "unicode/currpinf.h",
++ "unicode/currunit.h",
++ "unicode/datefmt.h",
++ "unicode/dcfmtsym.h",
++ "unicode/decimfmt.h",
++ "unicode/dtfmtsym.h",
++ "unicode/dtitvfmt.h",
++ "unicode/dtitvinf.h",
++ "unicode/dtptngen.h",
++ "unicode/dtrule.h",
++ "unicode/fieldpos.h",
++ "unicode/fmtable.h",
++ "unicode/format.h",
++ "unicode/fpositer.h",
++ "unicode/gender.h",
++ "unicode/gregocal.h",
++ "unicode/listformatter.h",
++ "unicode/measfmt.h",
++ "unicode/measunit.h",
++ "unicode/measure.h",
++ "unicode/msgfmt.h",
++ "unicode/numfmt.h",
++ "unicode/numsys.h",
++ "unicode/plurfmt.h",
++ "unicode/plurrule.h",
++ "unicode/rbnf.h",
++ "unicode/rbtz.h",
++ "unicode/regex.h",
++ "unicode/region.h",
++ "unicode/reldatefmt.h",
++ "unicode/scientificnumberformatter.h",
++ "unicode/search.h",
++ "unicode/selfmt.h",
++ "unicode/simpletz.h",
++ "unicode/smpdtfmt.h",
++ "unicode/sortkey.h",
++ "unicode/stsearch.h",
++ "unicode/tblcoll.h",
++ "unicode/timezone.h",
++ "unicode/tmunit.h",
++ "unicode/tmutamt.h",
++ "unicode/tmutfmt.h",
++ "unicode/translit.h",
++ "unicode/tzfmt.h",
++ "unicode/tznames.h",
++ "unicode/tzrule.h",
++ "unicode/tztrans.h",
++ "unicode/ucal.h",
++ "unicode/ucol.h",
++ "unicode/ucoleitr.h",
++ "unicode/ucsdet.h",
++ "unicode/udat.h",
++ "unicode/udateintervalformat.h",
++ "unicode/udatpg.h",
++ "unicode/ufieldpositer.h",
++ "unicode/uformattable.h",
++ "unicode/ugender.h",
++ "unicode/ulocdata.h",
++ "unicode/umsg.h",
++ "unicode/unirepl.h",
++ "unicode/unum.h",
++ "unicode/unumsys.h",
++ "unicode/upluralrules.h",
++ "unicode/uregex.h",
++ "unicode/uregion.h",
++ "unicode/ureldatefmt.h",
++ "unicode/usearch.h",
++ "unicode/uspoof.h",
++ "unicode/utmscale.h",
++ "unicode/utrans.h",
++ "unicode/vtzone.h",
++ ]
++}
++
++shim_headers("icuuc_shim") {
++ root_path = "source/common"
++ headers = [
++ # This list can easily be updated using the commands below:
++ # cd third_party/icu/source/common
++ # find unicode -iname '*.h' -printf ' "%p",\n' | LC_ALL=C sort -u
++ "unicode/appendable.h",
++ "unicode/brkiter.h",
++ "unicode/bytestream.h",
++ "unicode/bytestrie.h",
++ "unicode/bytestriebuilder.h",
++ "unicode/caniter.h",
++ "unicode/casemap.h",
++ "unicode/char16ptr.h",
++ "unicode/chariter.h",
++ "unicode/dbbi.h",
++ "unicode/docmain.h",
++ "unicode/dtintrv.h",
++ "unicode/edits.h",
++ "unicode/enumset.h",
++ "unicode/errorcode.h",
++ "unicode/filteredbrk.h",
++ "unicode/icudataver.h",
++ "unicode/icuplug.h",
++ "unicode/idna.h",
++ "unicode/localematcher.h",
++ "unicode/localpointer.h",
++ "unicode/locdspnm.h",
++ "unicode/locid.h",
++ "unicode/messagepattern.h",
++ "unicode/normalizer2.h",
++ "unicode/normlzr.h",
++ "unicode/parseerr.h",
++ "unicode/parsepos.h",
++ "unicode/platform.h",
++ "unicode/ptypes.h",
++ "unicode/putil.h",
++ "unicode/rbbi.h",
++ "unicode/rep.h",
++ "unicode/resbund.h",
++ "unicode/schriter.h",
++ "unicode/simpleformatter.h",
++ "unicode/std_string.h",
++ "unicode/strenum.h",
++ "unicode/stringpiece.h",
++ "unicode/stringtriebuilder.h",
++ "unicode/symtable.h",
++ "unicode/ubidi.h",
++ "unicode/ubiditransform.h",
++ "unicode/ubrk.h",
++ "unicode/ucasemap.h",
++ "unicode/ucat.h",
++ "unicode/uchar.h",
++ "unicode/ucharstrie.h",
++ "unicode/ucharstriebuilder.h",
++ "unicode/uchriter.h",
++ "unicode/uclean.h",
++ "unicode/ucnv.h",
++ "unicode/ucnv_cb.h",
++ "unicode/ucnv_err.h",
++ "unicode/ucnvsel.h",
++ "unicode/uconfig.h",
++ "unicode/ucurr.h",
++ "unicode/udata.h",
++ "unicode/udisplaycontext.h",
++ "unicode/uenum.h",
++ "unicode/uidna.h",
++ "unicode/uiter.h",
++ "unicode/uldnames.h",
++ "unicode/ulistformatter.h",
++ "unicode/uloc.h",
++ "unicode/umachine.h",
++ "unicode/umisc.h",
++ "unicode/unifilt.h",
++ "unicode/unifunct.h",
++ "unicode/unimatch.h",
++ "unicode/uniset.h",
++ "unicode/unistr.h",
++ "unicode/unorm.h",
++ "unicode/unorm2.h",
++ "unicode/uobject.h",
++ "unicode/urename.h",
++ "unicode/urep.h",
++ "unicode/ures.h",
++ "unicode/uscript.h",
++ "unicode/uset.h",
++ "unicode/usetiter.h",
++ "unicode/ushape.h",
++ "unicode/usprep.h",
++ "unicode/ustring.h",
++ "unicode/ustringtrie.h",
++ "unicode/utext.h",
++ "unicode/utf.h",
++ "unicode/utf16.h",
++ "unicode/utf32.h",
++ "unicode/utf8.h",
++ "unicode/utf_old.h",
++ "unicode/utrace.h",
++ "unicode/utypes.h",
++ "unicode/uvernum.h",
++ "unicode/uversion.h",
++ ]
++}
+diff --git a/build/linux/unbundle/replace_gn_files.py b/build/linux/unbundle/replace_gn_files.py
+new file mode 100755
+index 00000000000..1aed7bca99d
+--- /dev/null
++++ b/build/linux/unbundle/replace_gn_files.py
+@@ -0,0 +1,65 @@
++#!/usr/bin/env python3
++# Copyright 2016 The Chromium Authors
++# Use of this source code is governed by a BSD-style license that can be
++# found in the LICENSE file.
++
++"""
++Replaces GN files in tree with files from here that
++make the build use system libraries.
++"""
++
++import argparse
++import os
++import shutil
++import sys
++
++
++REPLACEMENTS = {
++ 'icu': 'third_party/icu/BUILD.gn',
++ 'protobuf': 'build/secondary/third_party/protobuf/BUILD.gn',
++ 'zlib': 'third_party/zlib/BUILD.gn',
++}
++
++
++def DoMain(argv):
++ my_dirname = os.path.dirname(__file__)
++ source_tree_root = os.path.abspath(
++ os.path.join(my_dirname, '..', '..', '..'))
++
++ parser = argparse.ArgumentParser()
++ parser.add_argument('--system-libraries', nargs='*', default=[])
++ parser.add_argument('--undo', action='store_true')
++
++ args = parser.parse_args(argv)
++
++ handled_libraries = set()
++ for lib, path in REPLACEMENTS.items():
++ if lib not in args.system_libraries:
++ continue
++ handled_libraries.add(lib)
++
++ if args.undo:
++ # Restore original file, and also remove the backup.
++ # This is meant to restore the source tree to its original state.
++ os.rename(os.path.join(source_tree_root, path + '.orig'),
++ os.path.join(source_tree_root, path))
++ else:
++ # Create a backup copy for --undo.
++ shutil.copyfile(os.path.join(source_tree_root, path),
++ os.path.join(source_tree_root, path + '.orig'))
++
++ # Copy the GN file from directory of this script to target path.
++ shutil.copyfile(os.path.join(my_dirname, '%s.gn' % lib),
++ os.path.join(source_tree_root, path))
++
++ unhandled_libraries = set(args.system_libraries) - handled_libraries
++ if unhandled_libraries:
++ print('Unrecognized system libraries requested: %s' % ', '.join(
++ sorted(unhandled_libraries)), file=sys.stderr)
++ return 1
++
++ return 0
++
++
++if __name__ == '__main__':
++ sys.exit(DoMain(sys.argv[1:]))
+diff --git a/build/linux/unbundle/zlib.gn b/build/linux/unbundle/zlib.gn
+new file mode 100644
+index 00000000000..fa2bbffd25f
+--- /dev/null
++++ b/build/linux/unbundle/zlib.gn
+@@ -0,0 +1,63 @@
++# Copyright 2016 The Chromium Authors
++# Use of this source code is governed by a BSD-style license that can be
++# found in the LICENSE file.
++
++import("//build/shim_headers.gni")
++
++shim_headers("zlib_shim") {
++ root_path = "."
++ headers = [ "zlib.h" ]
++ additional_includes = [ "third_party" ]
++
++}
++
++config("system_zlib") {
++ defines = [ "USE_SYSTEM_ZLIB=1" ]
++}
++
++config("zlib_config") {
++ configs = [ ":system_zlib" ]
++}
++
++source_set("zlib") {
++ public_deps = [ ":zlib_shim" ]
++ libs = [ "z" ]
++ public_configs = [ ":system_zlib" ]
++}
++
++shim_headers("minizip_shim") {
++ root_path = "contrib"
++ headers = [
++ "minizip/crypt.h",
++ "minizip/ioapi.h",
++ "minizip/iowin32.h",
++ "minizip/mztools.h",
++ "minizip/unzip.h",
++ "minizip/zip.h",
++ ]
++}
++
++source_set("minizip") {
++ deps = [ ":minizip_shim" ]
++ libs = [ "minizip" ]
++}
++
++static_library("zip") {
++ sources = [
++ "google/zip.cc",
++ "google/zip.h",
++ "google/zip_internal.cc",
++ "google/zip_internal.h",
++ "google/zip_reader.cc",
++ "google/zip_reader.h",
++ ]
++ deps = [ ":minizip" ]
++}
++
++static_library("compression_utils") {
++ sources = [
++ "google/compression_utils.cc",
++ "google/compression_utils.h",
++ ]
++ deps = [ ":zlib" ]
++}
+diff --git a/build/shim_headers.gni b/build/shim_headers.gni
+index dc57d12ed0c..1d24e0ad00e 100644
+--- a/build/shim_headers.gni
++++ b/build/shim_headers.gni
+@@ -7,6 +7,11 @@ template("shim_headers") {
+ shim_headers_path = "${root_gen_dir}/shim_headers/${target_name}"
+ config(config_name) {
+ include_dirs = [ shim_headers_path ]
++ if (defined(invoker.additional_includes)) {
++ foreach(i, invoker.additional_includes) {
++ include_dirs += [ shim_headers_path + "/" + i ]
++ }
++ }
+ }
+ action(action_name) {
+ script = "//tools/generate_shim_headers.py"
+@@ -26,11 +31,12 @@ template("shim_headers") {
+ args += invoker.headers
+ outputs = []
+ foreach(h, invoker.headers) {
+- outputs += [ shim_headers_path + "/" + rebase_path(invoker.root_path,"//") + "/" + h ]
++ outputs += [ shim_headers_path + "/" +
++ rebase_path(invoker.root_path, "//") + "/" + h ]
+ }
+ }
+ group(target_name) {
+- deps = [ ":${action_name}" ]
++ public_deps = [ ":${action_name}" ]
+ all_dependent_configs = [ ":${config_name}" ]
+ }
+ }
diff --git a/testing/dart/where-we-are-heading-prefixes-are-not-needed.patch b/testing/dart/where-we-are-heading-prefixes-are-not-needed.patch
new file mode 100644
index 00000000000..84add1a2d00
--- /dev/null
+++ b/testing/dart/where-we-are-heading-prefixes-are-not-needed.patch
@@ -0,0 +1,29 @@
+--- ./build/toolchain/linux/BUILD.gn.orig
++++ ./build/toolchain/linux/BUILD.gn
+@@ -37,7 +37,7 @@
+ }
+
+ gcc_toolchain("arm") {
+- prefix = "arm-linux-gnueabihf-"
++ prefix = ""
+ if (arm_toolchain_prefix != "") {
+ prefix = arm_toolchain_prefix
+ }
+@@ -73,7 +73,7 @@
+ }
+
+ gcc_toolchain("arm64") {
+- prefix = "aarch64-linux-gnu-"
++ prefix = ""
+ if (arm64_toolchain_prefix != "") {
+ prefix = arm64_toolchain_prefix
+ }
+@@ -215,7 +215,7 @@
+ }
+
+ gcc_toolchain("riscv64") {
+- prefix = "riscv64-linux-gnu-"
++ prefix = ""
+ if (riscv64_toolchain_prefix != "") {
+ prefix = riscv64_toolchain_prefix
+ }
diff --git a/testing/darts-clone/APKBUILD b/testing/darts-clone/APKBUILD
index e9cb7bc9b40..4254e8b7688 100644
--- a/testing/darts-clone/APKBUILD
+++ b/testing/darts-clone/APKBUILD
@@ -36,7 +36,6 @@ package() {
make DESTDIR="$pkgdir" install
}
-
sha512sums="
092cc833fff937365117f5b780f09a1ffdd25104ab57e36f7cba25a9a6bee289c105cae997a50b61b5b542c1c34d71bddf132d0ca14d563198b57caa9af2ac22 darts-clone-e40ce4627526985a7767444b6ed6893ab6ff8983.tar.gz
"
diff --git a/testing/dasht/APKBUILD b/testing/dasht/APKBUILD
new file mode 100644
index 00000000000..bbf3e93464c
--- /dev/null
+++ b/testing/dasht/APKBUILD
@@ -0,0 +1,30 @@
+# Contributor: Clayton Craft <clayton@craftyguy.net>
+# Maintainer: Clayton Craft <clayton@craftyguy.net>
+pkgname=dasht
+pkgver=2.4.0
+pkgrel=0
+pkgdesc="collection of shell scripts for searching, browsing, and managing API documentation from Dash"
+url="https://github.com/sunaku/dasht"
+arch="noarch"
+license="ISC"
+depends="
+ socat
+ sqlite
+ w3m
+ wget
+"
+options="!check" # no tests
+subpackages="$pkgname-zsh-completion $pkgname-doc"
+source="https://github.com/sunaku/dasht/archive/v$pkgver/dasht-$pkgver.tar.gz"
+
+package() {
+ mkdir -p "$pkgdir"/usr/share/man
+ mkdir -p "$pkgdir"/usr/share/zsh/site-functions
+ mv bin "$pkgdir"/usr/
+ mv man "$pkgdir"/usr/share/
+ mv etc/zsh/completions/* "$pkgdir"/usr/share/zsh/site-functions/
+}
+
+sha512sums="
+4810fa05df78179d268bd2d2bbe4d821ef7330e837aa1b76034edd79add34e4087d6a0983c34504f905adf0ccee9515c88e70cbe330cdc68c5be33deb12a3166 dasht-2.4.0.tar.gz
+"
diff --git a/testing/datamash/APKBUILD b/testing/datamash/APKBUILD
index e79b5f7c81b..a9b3465ebbc 100644
--- a/testing/datamash/APKBUILD
+++ b/testing/datamash/APKBUILD
@@ -1,25 +1,27 @@
# Contributor: Assaf Gordon <assafgordon@gmail.com>
-# Maintainer: Assaf Gordon <assafgordon@gmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=datamash
-pkgver=1.7
+pkgver=1.8
pkgrel=1
-pkgdesc="command-line text/math procesing"
+pkgdesc="Command-line text/math processing"
url="https://www.gnu.org/software/datamash/"
arch="all"
license="GPL-3.0-or-later"
-source="https://ftpmirror.gnu.org/datamash/datamash-$pkgver.tar.gz"
subpackages="$pkgname-doc $pkgname-bash-completion"
+source="https://ftpmirror.gnu.org/datamash/datamash-$pkgver.tar.gz"
build() {
./configure \
--build=$CBUILD \
--host=$CHOST \
--prefix=/usr \
+ --sysconfdir=/etc \
--mandir=/usr/share/man \
--infodir=/usr/share/info \
+ --localstatedir=/var \
--disable-nls \
--disable-werror \
- --with-bash-completion-dir=local
+ --with-bash-completion-dir=/usr/share/bash-completion/completions
make
}
@@ -29,13 +31,11 @@ check() {
package() {
make -j1 DESTDIR="$pkgdir" install
- rm -rf "$pkgdir"/usr/share/datamash/examples \
- "$pkgdir"/usr/lib/charset.alias
- mkdir -p "$pkgdir"/usr/share/bash-completion/completions/
- mv "$pkgdir"/usr/share/datamash/bash-completion.d/datamash \
- "$pkgdir"/usr/share/bash-completion/completions/
- rm -r "$pkgdir"/usr/share/datamash/bash-completion.d || true
+ rm -vrf "$pkgdir"/usr/share/datamash/examples
+ rmdir -v "$pkgdir"/usr/share/datamash
}
-sha512sums="29d82d6a1ac25a6ceb901c14fdeacbcb575771f405d844a66df525f820f1515d84989480807e466ddaa0a1ebc5cf698191538391b0c64bddf0d80462f66a5992 datamash-1.7.tar.gz"
+sha512sums="
+5ef312a73ebee5df7308b7e368f296714fcc396761499d4a5ba94906f6ecdb0867193c5ce25668bf56b7a5339a8a833a98b3ad564c01544880a6ec210c7b922a datamash-1.8.tar.gz
+"
diff --git a/testing/dbus-broker/APKBUILD b/testing/dbus-broker/APKBUILD
new file mode 100644
index 00000000000..cf1c530a1a8
--- /dev/null
+++ b/testing/dbus-broker/APKBUILD
@@ -0,0 +1,29 @@
+# Maintainer: Hugo Osvaldo Barrera <hugo@whynothugo.nl>
+pkgname=dbus-broker
+pkgver=35
+pkgrel=0
+pkgdesc="Linux D-Bus Message Broker"
+url="https://github.com/bus1/dbus-broker"
+arch="all"
+license="Apache-2.0"
+makedepends="meson linux-headers py3-docutils"
+subpackages="$pkgname-doc"
+source="https://github.com/bus1/dbus-broker/releases/download/v$pkgver/dbus-broker-$pkgver.tar.xz"
+
+build() {
+ # launcher: requires systemd
+ abuild-meson . build -Dlauncher=false -Ddocs=true
+ meson compile -C build
+}
+
+check() {
+ meson test --no-rebuild --print-errorlogs -C build
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C build
+}
+
+sha512sums="
+409e415889bd53b78e92ba077455e5583852a071e233e4b23dcbb23d8a367f177d6c8138e6fc113dcfe48440b68d594c1a076cb43ef445d472645f671d5ae033 dbus-broker-35.tar.xz
+"
diff --git a/testing/dbus-waiter/APKBUILD b/testing/dbus-waiter/APKBUILD
new file mode 100644
index 00000000000..a28f9af0a69
--- /dev/null
+++ b/testing/dbus-waiter/APKBUILD
@@ -0,0 +1,35 @@
+# Maintainer: Hugo Osvaldo Barrera <hugo@whynothugo.nl>
+pkgname=dbus-waiter
+pkgver=0.2.0
+pkgrel=0
+pkgdesc="Implement readiness notifications for dbus services"
+url="https://git.sr.ht/~whynothugo/dbus-waiter"
+# s390x: nix/libc crate
+arch="all !s390x"
+license="ISC"
+makedepends="cargo cargo-auditable"
+source="dbus-waiter-$pkgver.tar.gz::https://git.sr.ht/~whynothugo/dbus-waiter/archive/v$pkgver.tar.gz"
+builddir="$srcdir/$pkgname-v$pkgver"
+options="net" # fetch dependencies
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm 0755 target/release/$pkgname "$pkgdir/usr/bin/$pkgname"
+}
+
+sha512sums="
+abb1ab4b09ac104ba28e0c1a05d19feae13308bd6ff356653100a834d496861dcc32b4ca0de51640df5ce467b6d9ec2b90e7094f5043b0db1ee71a74315124e9 dbus-waiter-0.2.0.tar.gz
+"
diff --git a/testing/dcmtk/10-offile.patch b/testing/dcmtk/10-offile.patch
new file mode 100644
index 00000000000..1a92d973149
--- /dev/null
+++ b/testing/dcmtk/10-offile.patch
@@ -0,0 +1,70 @@
+Author: Holger Jaekel <holger.jaekel@gmx.de>
+Summary: Use ANSI C functions like fopen() instead of
+ non-ANSI Posix functions like fopen64().
+----
+
+--- a/ofstd/include/dcmtk/ofstd/offile.h.orig
++++ b/ofstd/include/dcmtk/ofstd/offile.h
+@@ -356,7 +356,7 @@
+ {
+ if (file_) fclose();
+ #ifdef EXPLICIT_LFS_64
+- file_ = :: fopen64(filename, modes);
++ file_ = :: fopen(filename, modes);
+ #else
+ file_ = STDIO_NAMESPACE fopen(filename, modes);
+ #endif
+@@ -463,7 +463,7 @@
+ {
+ #if defined(EXPLICIT_LFS_64) && ! defined(__MINGW32__)
+ // MinGW has EXPLICIT_LFS_64 but no freopen64()
+- file_ = :: freopen64(filename, modes, file_);
++ file_ = :: freopen(filename, modes, file_);
+ #else
+ file_ = STDIO_NAMESPACE freopen(filename, modes, file_);
+ #endif
+@@ -482,7 +482,7 @@
+ if (file_) fclose();
+ #if defined(EXPLICIT_LFS_64) && ! defined(__MINGW32__)
+ // MinGW has EXPLICIT_LFS_64 but no tmpfile64()
+- file_ = :: tmpfile64();
++ file_ = :: tmpfile();
+ #else
+ file_ = STDIO_NAMESPACE tmpfile();
+ #endif
+@@ -806,7 +806,7 @@
+ #else
+ #ifdef HAVE_FSEEKO
+ #ifdef EXPLICIT_LFS_64
+- result = :: fseeko64(file_, off, whence);
++ result = :: fseeko(file_, off, whence);
+ #else
+ result = :: fseeko(file_, off, whence);
+ #endif
+@@ -839,7 +839,7 @@
+ offile_off_t result;
+ #ifdef HAVE_FSEEKO
+ #ifdef EXPLICIT_LFS_64
+- result = :: ftello64(file_);
++ result = :: ftello(file_);
+ #else
+ result = :: ftello(file_);
+ #endif
+@@ -863,7 +863,7 @@
+ int result;
+ #if defined(EXPLICIT_LFS_64) && ! defined(__MINGW32__) && ! defined(__QNX__)
+ // MinGW and QNX have EXPLICIT_LFS_64 but no fgetpos64()
+- result = :: fgetpos64(file_, pos);
++ result = :: fgetpos(file_, pos);
+ #else
+ result = STDIO_NAMESPACE fgetpos(file_, pos);
+ #endif
+@@ -883,7 +883,7 @@
+ int result;
+ #if defined(EXPLICIT_LFS_64) && ! defined(__MINGW32__) && ! defined(__QNX__)
+ // MinGW and QNX have EXPLICIT_LFS_64 but no fsetpos64()
+- result = :: fsetpos64(file_, pos);
++ result = :: fsetpos(file_, pos);
+ #else
+ result = STDIO_NAMESPACE fsetpos(file_, pos);
+ #endif
diff --git a/testing/dcmtk/20-thai.patch b/testing/dcmtk/20-thai.patch
new file mode 100644
index 00000000000..a40b8fb0b51
--- /dev/null
+++ b/testing/dcmtk/20-thai.patch
@@ -0,0 +1,35 @@
+Author: Holger Jaekel <holger.jaekel@gmx.de>
+Summary: Character set ISO_IR 166 fails, so we remove the test.
+----
+
+--- a/dcmdata/tests/tspchrs.cc
++++ b/dcmdata/tests/tspchrs.cc
+@@ -46,7 +46,7 @@
+ OFCHECK(converter.selectCharacterSet("ISO_IR 148").good());
+ OFCHECK(converter.selectCharacterSet("ISO_IR 203").good());
+ OFCHECK(converter.selectCharacterSet("ISO_IR 13 ").good());
+- OFCHECK(converter.selectCharacterSet("ISO_IR 166").good());
++ // OFCHECK(converter.selectCharacterSet("ISO_IR 166").good());
+ OFCHECK(converter.selectCharacterSet("ISO_IR 192").good());
+ OFCHECK(converter.selectCharacterSet(" GB18030 ").good());
+ OFCHECK(converter.selectCharacterSet(" GBK ").good());
+@@ -63,7 +63,7 @@
+ OFCHECK(converter.selectCharacterSet("\\ISO 2022 IR 148").good());
+ OFCHECK(converter.selectCharacterSet("\\ISO 2022 IR 203").good());
+ OFCHECK(converter.selectCharacterSet("\\ISO 2022 IR 13 ").good());
+- OFCHECK(converter.selectCharacterSet("\\ISO 2022 IR 166").good());
++ // OFCHECK(converter.selectCharacterSet("\\ISO 2022 IR 166").good());
+ #if DCMTK_ENABLE_CHARSET_CONVERSION == DCMTK_CHARSET_CONVERSION_ICONV
+ // (only the ICONV library supports these character sets)
+ OFCHECK(converter.selectCharacterSet("\\ISO 2022 IR 87 ").good());
+@@ -169,8 +169,8 @@
+ OFCHECK(converter.convertString("Japanese\\\033(J\324\317\300\336\\Text", resultStr, "\\").good());
+ OFCHECK_EQUAL(resultStr, "Japanese\\\357\276\224\357\276\217\357\276\200\357\276\236\\Text");
+ // the following should fail (wrong character set)
+- OFCHECK(converter.selectCharacterSet("\\ISO 2022 IR 166").good());
+- OFCHECK(converter.convertString("Yamada^Tarou=\033$B;3ED\033(B^\033$BB@O:\033(B=\033$B$d$^$@\033(B^\033$B$?$m$&\033(B", resultStr, delimiters).bad());
++ // OFCHECK(converter.selectCharacterSet("\\ISO 2022 IR 166").good());
++ // OFCHECK(converter.convertString("Yamada^Tarou=\033$B;3ED\033(B^\033$BB@O:\033(B=\033$B$d$^$@\033(B^\033$B$?$m$&\033(B", resultStr, delimiters).bad());
+ } else {
+ // in case there is no libiconv, report a warning but do not fail
+ DCMDATA_WARN("Cannot test DcmSpecificCharacterSet since the underlying character set conversion library is not available");
diff --git a/testing/dcmtk/30-dont_export_all_executables.patch b/testing/dcmtk/30-dont_export_all_executables.patch
new file mode 100644
index 00000000000..9859fec2448
--- /dev/null
+++ b/testing/dcmtk/30-dont_export_all_executables.patch
@@ -0,0 +1,24 @@
+Description: Don't add executables to cmake exports
+ CMake exports are used by other packages that compile
+ and link against dcmtk. Because Debian moves some of
+ these executables and also doesn't install the test
+ executables, this import may fail leading to failure
+ to configure the according package.
+Bug-Debian: https://bugs.debian.org/803304
+Author: Gert Wollny <gw.fossdev@gmail.com>
+--- a/CMake/dcmtkMacros.cmake
++++ b/CMake/dcmtkMacros.cmake
+@@ -55,11 +55,11 @@
+ endif()
+
+ # Collect executable as part of global DCMTK_EXECUTABLE_TARGETS property
+- set_property(GLOBAL APPEND PROPERTY DCMTK_EXECUTABLE_TARGETS ${PROGRAM})
++ #set_property(GLOBAL APPEND PROPERTY DCMTK_EXECUTABLE_TARGETS ${PROGRAM})
+
+ # declare installation files, also export DCMTKTargets.cmake
+ install(TARGETS ${PROGRAM}
+- EXPORT DCMTKTargets
++ # EXPORT DCMTKTargets
+ COMPONENT bin
+ DESTINATION ${CMAKE_INSTALL_BINDIR})
+ endif()
diff --git a/testing/dcmtk/40-dcmqrscp.patch b/testing/dcmtk/40-dcmqrscp.patch
new file mode 100644
index 00000000000..ec40c2b348d
--- /dev/null
+++ b/testing/dcmtk/40-dcmqrscp.patch
@@ -0,0 +1,81 @@
+Author: Jürgen Salk <jsa@debian.org>
+Description: The original maintainer Jürgen Salk applied
+ a set of patches to the original code. This file contains
+ changes to C++ code
+Forwarded: no
+
+--- a/dcmqrdb/etc/dcmqrscp.cfg
++++ b/dcmqrdb/etc/dcmqrscp.cfg
+@@ -21,8 +21,8 @@
+ # SpecificCharacterSet = "ISO_IR 192", override, discard, transliterate
+
+ #
+-# UserName = <not used>
+-# GroupName = <not used>
++UserName = dcmtk
++GroupName = dcmtk
+
+ HostTable BEGIN
+ #
+@@ -38,12 +38,13 @@
+ # NOTE: in the current implementation you cannot substitute an IP address
+ # for a hostname.
+ #
+-acme1 = (ACME1, acmehost1, 5678)
+-acme2 = (ACME2, acmehost2, 5678)
+-acmeCTcompany = acme1, acme2
+-united1 = (UNITED1, unitedhost1, 104)
+-united2 = (UNITED2, unitedhost2, 104)
+-unitedMRcompany = united1, united2
++# Example:
++#acme1 = (ACME1, acmehost1, 5678)
++#acme2 = (ACME2, acmehost2, 5678)
++#acmeCTcompany = acme1, acme2
++#united1 = (UNITED1, unitedhost1, 104)
++#united2 = (UNITED2, unitedhost2, 104)
++#unitedMRcompany = united1, united2
+ #
+ HostTable END
+
+@@ -61,8 +62,9 @@
+ # VendorName = SymbolicName
+ # The symbolic name should be defined in the HostTable.
+ #
+-"Acme CT Company" = acmeCTcompany
+-"United MR Company" = unitedMRcompany
++# Example:
++#"Acme CT Company" = acmeCTcompany
++#"United MR Company" = unitedMRcompany
+ #
+ VendorTable END
+
+@@ -80,8 +82,13 @@
+ # Entry in HostTable |
+ # ANY
+ #
+-COMMON /home/dicom/db/COMMON R (200, 1024mb) ANY
+-ACME_STORE /home/dicom/db/ACME_STORE RW (9, 1024mb) acmeCTcompany
+-UNITED_STORE /home/dicom/db/UNITED_STORE RW (9, 1024mb) unitedMRcompany
++# Example:
++#
++#ACME_STORE /var/lib/dcmtk/db/ACME_STORE RW (9, 1024mb) acmeCTcompany
++#UNITED_STORE /var/lib/dcmtk/db/UNITED_STORE RW (9, 1024mb) unitedMRcompany
++#
++# Uncomment and adjust the following lines for a common r/rw storage area:
++#READWRITE /var/lib/dcmtk/db/READWRITE RW (10, 1024mb) ANY
++#READ /var/lib/dcmtk/db/READ R (200, 1024mb) ANY
+ #
+ AETable END
+--- a/dcmqrdb/docs/dcmqrcnf.txt
++++ b/dcmqrdb/docs/dcmqrcnf.txt
+@@ -46,8 +46,8 @@
+ MaxPDUSize = 8192
+ MaxAssociations = 20
+ SpecificCharacterSet = fallback
+-UserName = (do not change user)
+-GroupName = (do not change group)
++UserName = dcmtk
++GroupName = dcmtk
+
+ Available options for specific character sets are:
+
diff --git a/testing/dcmtk/APKBUILD b/testing/dcmtk/APKBUILD
new file mode 100644
index 00000000000..7cc25f24c6a
--- /dev/null
+++ b/testing/dcmtk/APKBUILD
@@ -0,0 +1,105 @@
+# Contributor: Holger Jaekel <holger.jaekel@gmx.de>
+# Maintainer: Holger Jaekel <holger.jaekel@gmx.de>
+pkgname=dcmtk
+pkgver=3.6.8
+_pkgver=${pkgver//./}
+pkgrel=0
+pkgdesc="OFFIS DICOM toolkit"
+url="https://dcmtk.org/"
+# armhf: compile fails with bad immediate value for offset
+arch="all !armhf"
+license="BSD-3-Clause"
+makedepends="
+ cmake
+ libpng-dev
+ libsndfile-dev
+ libxml2-dev
+ openjpeg-dev
+ openssl-dev
+ samurai
+ tiff-dev
+ zlib-dev
+ "
+install="$pkgname.pre-install"
+subpackages="$pkgname-dev $pkgname-doc $pkgname-openrc libdcmtk"
+source="https://dicom.offis.de/download/dcmtk/dcmtk$_pkgver/dcmtk-$pkgver.tar.gz
+ 10-offile.patch
+ 20-thai.patch
+ 30-dont_export_all_executables.patch
+ 40-dcmqrscp.patch
+ dcmtk.initd
+ "
+
+# secfixes:
+# 3.6.7-r0:
+# - CVE-2022-43272
+
+build() {
+ if [ "$CBUILD" != "$CHOST" ]; then
+ local crossopts="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ # SKIP_RPATH=OFF to run test suite
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=MinSizeRel \
+ -DCMAKE_INSTALL_SYSCONFDIR=/etc \
+ -DBUILD_SHARED_LIBS=ON \
+ -DDCMTK_WITH_OPENSSL=ON \
+ -DDCMTK_ENABLE_PRIVATE_TAGS=ON \
+ -DDCMTK_WITH_XML=ON \
+ -DDCMTK_WITH_DOXYGEN=OFF \
+ -DDCMTK_WITH_TIFF=ON \
+ -DDCMTK_WITH_ZLIB=ON \
+ -DDCMTK_WITH_ICONV=OFF \
+ -DDCMTK_WITH_ICU=OFF \
+ -DUSE_COMPILER_HIDDEN_VISIBILITY=ON \
+ -DCMAKE_SKIP_RPATH=OFF \
+ -DDCMTK_ENABLE_STL=ON \
+ $crossopts
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+
+ # remove test binaries
+ rm "$pkgdir"/usr/bin/*_tests
+ rm "$pkgdir"/usr/bin/drttest
+ rm "$pkgdir"/usr/bin/mkreport
+ rm "$pkgdir"/usr/bin/msgserv
+ rm "$pkgdir"/usr/bin/wltest
+ rm "$pkgdir"/usr/share/dcmtk-$pkgver/SC.dump
+ rm "$pkgdir"/usr/share/dcmtk-$pkgver/VLP.dump
+
+ # remove changelog
+ rm -rf "$pkgdir"/usr/share/doc
+
+ # remove example modality worklist database and example queries
+ rm -rf "$pkgdir"/usr/share/dcmtk/wlistdb "$pkgdir"/usr/share/dcmtk/wlistqry
+}
+
+openrc() {
+ pkgdesc="$pkgdesc (OpenRC init scripts)"
+ install -Dm755 "$srcdir"/dcmtk.initd "$subpkgdir"/etc/init.d/dcmtk
+}
+
+libdcmtk() {
+ pkgdesc="OFFIS DICOM toolkit runtime libraries"
+ amove usr/lib
+ amove usr/share/dcmtk-$pkgver/*.dic
+}
+
+sha512sums="
+1bb2aad1aa63e0a1b79d92d7c932a969deccde03fdb484dbd44198effb58d50de44a2b0cda150ce7df63e4e986af5bc1f694c8a7988b4c049c578d83ba81184a dcmtk-3.6.8.tar.gz
+14f9faa64c04435345cb46511f5d4e1c17fc000df2ddca330d28961b92a16b06dd9b689d331583009ac2d34e307d28c5bcaec0704f70329328b4100fc9efd042 10-offile.patch
+70dd062b3e0b176c6a3627ea6b30383d7c21ea4088c2f76ece8123a6d625de482c05cf9ad4f76a290a5d3308616d0ba2fc34189c337f7c475aadb8ff1c9c101b 20-thai.patch
+1a487ec720d75945a6a62a8e6b5f5dc33a363af1f58595ac84fc910b76dadd458f1c6b599bdea6e45570630496ce8d7c5efc544252f6421d83c7370d83e9b8b1 30-dont_export_all_executables.patch
+37b7867b379456aed71f15609dd57be142984b0430605eba9771d2766817ac95e6526759b105686a76df28f09e49ee5e8907f46c38b4d7de947278b0faaf7568 40-dcmqrscp.patch
+dd8e24011178f3b5fa35150439aea2640a6f9da702da883a61e6eeb835223ee6967e4586f4e75b004e04da0f061c1edbf6d00a252480c64142a68b3213810aad dcmtk.initd
+"
diff --git a/testing/dcmtk/dcmtk.initd b/testing/dcmtk/dcmtk.initd
new file mode 100644
index 00000000000..8fd94746b7c
--- /dev/null
+++ b/testing/dcmtk/dcmtk.initd
@@ -0,0 +1,21 @@
+#!/sbin/openrc-run
+
+CONFIG=/etc/dcmtk/dcmqrscp.cfg
+
+depend() {
+ need net
+}
+
+start() {
+ ebegin "Starting DCMTK central test node dcmqrscp"
+ start-stop-daemon --start --quiet --background \
+ --make-pidfile --pidfile "/var/run/${SVCNAME}.pid" \
+ --exec /usr/bin/dcmqrscp -- -c "${CONFIG}"
+ eend ${?}
+}
+
+stop() {
+ ebegin "Stopping DCMTK central test node dcmqrscp"
+ start-stop-daemon --stop --quiet --pidfile "/var/run/${SVCNAME}.pid"
+ eend ${?}
+}
diff --git a/testing/dcmtk/dcmtk.pre-install b/testing/dcmtk/dcmtk.pre-install
new file mode 100755
index 00000000000..c3f89f0fba3
--- /dev/null
+++ b/testing/dcmtk/dcmtk.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S dcmtk 2>/dev/null
+adduser -S -D -H -s /sbin/nologin -G dcmtk -g dcmtk dcmtk 2>/dev/null
+
+exit 0
diff --git a/testing/dcnnt/APKBUILD b/testing/dcnnt/APKBUILD
new file mode 100644
index 00000000000..f5c7766124d
--- /dev/null
+++ b/testing/dcnnt/APKBUILD
@@ -0,0 +1,33 @@
+# Contributor: Sergiy Stupar <owner@sestolab.pp.ua>
+# Maintainer: Sergiy Stupar <owner@sestolab.pp.ua>
+pkgname=dcnnt
+pkgver=0.10.0
+pkgrel=1
+pkgdesc="UI-less tool to connect Android phone with desktop"
+url="https://github.com/cyanomiko/dcnnt-py"
+arch="noarch"
+license="MIT"
+depends="py3-pycryptodome"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+subpackages="$pkgname-pyc $pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/cyanomiko/dcnnt-py/archive/$pkgver.tar.gz"
+builddir="$srcdir/$pkgname-py-$pkgver"
+options="!check" # No tests
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+
+ install -Dm644 doc/*.md -t "$pkgdir"/usr/share/doc/$pkgname
+ install -Dm644 LICENSE -t "$pkgdir"/usr/share/licenses/$pkgname
+}
+
+sha512sums="
+a675b027e7a60db2d80abb574db45233d968b29d0f4b3ad3c274fa8609cb1c544b31e3989be02601ab5b9292212374064c47f39d270949df115d73685c226611 dcnnt-0.10.0.tar.gz
+"
diff --git a/testing/ddcci-driver-linux-src/APKBUILD b/testing/ddcci-driver-linux-src/APKBUILD
new file mode 100644
index 00000000000..95ca6d437f3
--- /dev/null
+++ b/testing/ddcci-driver-linux-src/APKBUILD
@@ -0,0 +1,39 @@
+# Maintainer: Dekedro <dekedro@protonmail.com>
+pkgname=ddcci-driver-linux-src
+_modname=ddcci-driver-linux
+pkgver=0.4.4
+pkgrel=2
+pkgdesc="Linux kernel drivers for DDC/CI monitors (sources, AKMS)"
+url="https://gitlab.com/ddcci-driver-linux/ddcci-driver-linux/"
+arch="noarch"
+license="GPL-2.0-or-later"
+depends="akms"
+options="!check" # no tests
+source="$_modname-$pkgver.tar.gz::https://gitlab.com/ddcci-driver-linux/ddcci-driver-linux/-/archive/v$pkgver/ddcci-driver-linux-v$pkgver.tar.gz"
+builddir="$srcdir/$_modname-v$pkgver"
+
+prepare() {
+ default_prepare
+
+ cat > AKMBUILD <<- EOF
+ modname=$_modname
+ modver=$pkgver-r$pkgrel
+ EOF
+ cat >> AKMBUILD <<- 'EOF'
+ built_modules='ddcci/ddcci.ko ddcci-backlight/ddcci-backlight.ko'
+
+ build() {
+ make ${MAKEFLAGS:-} -C "$kernel_srcdir" M="$builddir/ddcci" src="$srcdir/ddcci"
+ make ${MAKEFLAGS:-} -C "$kernel_srcdir" M="$builddir/ddcci-backlight" src="$srcdir/ddcci-backlight" KBUILD_EXTRA_SYMBOLS="$builddir/ddcci/Module.symvers"
+ }
+ EOF
+}
+
+package() {
+ install -D -m644 -t "$pkgdir/usr/src/$_modname-$pkgver" AKMBUILD
+ cp -a ddcci ddcci-backlight include "$pkgdir/usr/src/$_modname-$pkgver/"
+}
+
+sha512sums="
+f88ded47818c65c91d88ae16871304d8a72785d8ca5df56464258ccf32f2d52d8623bc88e8f05ed2f6b47fc23e64aa1ef3d430912e7535d94e959fa21e7235b2 ddcci-driver-linux-0.4.4.tar.gz
+"
diff --git a/testing/ddclient/APKBUILD b/testing/ddclient/APKBUILD
deleted file mode 100644
index 8522473d4c5..00000000000
--- a/testing/ddclient/APKBUILD
+++ /dev/null
@@ -1,50 +0,0 @@
-# Contributor: Francesco Colista <fcolista@alpinelinux.org>
-# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
-pkgname=ddclient
-pkgver=3.9.1
-pkgrel=1
-pkgdesc="Ddclient is a Perl client used to update dynamic DNS entries for accounts on 'Dynamic DNS Network Services' free DNS service."
-url="https://ddclient.net/"
-arch="noarch"
-license="GPL-2.0-only"
-depends="perl perl-io-socket-ssl perl-io-socket-inet6
-perl-digest-sha1 net-tools perl-data-validate-ip"
-pkgusers="$pkgname"
-pkggroups="$pkgname"
-options="!check" # no check provided
-install="$pkgname.pre-install"
-subpackages="$pkgname-openrc $pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/ddclient/ddclient/archive/v$pkgver.tar.gz
- $pkgname.initd
- pid-path.patch"
-builddir="$srcdir/$pkgname-$pkgver"
-
-build() {
- return 0
-}
-
-package() {
- install -d "$pkgdir"/var/cache/ddclient/
- chown -R $pkgusers:$pkggroups "$pkgdir"/var/cache/ddclient
-
- install -Dm755 ddclient "$pkgdir"/usr/bin/$pkgname
- install -Dm755 $srcdir/ddclient.initd "$pkgdir"/etc/init.d/$pkgname
-
- install -Dm600 sample-etc_ddclient.conf "$pkgdir"/etc/ddclient/ddclient.conf.sample
- chown $pkgusers:$pkggroups "$pkgdir"/etc/ddclient
-}
-
-doc() {
- default_doc
- pkgdesc="$pkgname documentation"
- cd "$builddir"
- install -Dm644 sample-etc_cron.d_ddclient \
- "$subpkgdir"/usr/share/doc/ddclient/sample-etc_cron.d_ddclient
- install -Dm644 sample-etc_dhclient-exit-hooks \
- "$subpkgdir"/usr/share/doc/ddclient/sample-etc_dhclient-exit-hooks
- install -Dm644 sample-etc_ppp_ip-up.local "$subpkgdir"/usr/share/doc/ddclient/sample-etc_ppp_ip-up.local
-}
-
-sha512sums="a8a4d6cb94e4239a7b7b4fc7d9ebef703cbd6c45fc3394b644694a053b5b8aa8d109410b5b8b3676a5f30b18474d24c7feb16c65c30b28bd7d941d8a214b1346 ddclient-3.9.1.tar.gz
-c5a4c4aef817692f73272a8aaf6edb10d3b16272577ef83c1f5db32b806933c410c7da0a7ce138655282a0671a8590879d6fe7c8f58f64c5cedfc1ed1cac710b ddclient.initd
-fc0137d0aead152be16081c6e64ba1e3e1786768020ac44a6baa36ee2f0f1b1d6b89116739b95091d7d0ebf02ab82b3e73491d975e46b7da31099f9481400253 pid-path.patch"
diff --git a/testing/ddclient/ddclient.initd b/testing/ddclient/ddclient.initd
deleted file mode 100755
index 38101137fb0..00000000000
--- a/testing/ddclient/ddclient.initd
+++ /dev/null
@@ -1,22 +0,0 @@
-#!/sbin/openrc-run
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-name="DDClient"
-pidfile="/run/ddclient/${RC_SVCNAME}.pid"
-
-command="/usr/bin/ddclient"
-command_args="-pid ${pidfile}"
-command_group="ddclient"
-command_user="ddclient"
-
-depend() {
- need net
- use dns logger
-}
-
-start_pre() {
- checkpath -f -m 0600 -o ${command_user}:${command_group} /etc/ddclient/ddclient.conf
- checkpath -d -m 0700 -o ${command_user}:${command_group} /run/ddclient
- checkpath -d -m 0700 -o ${command_user}:${command_group} /var/cache/ddclient
-}
diff --git a/testing/ddclient/ddclient.pre-install b/testing/ddclient/ddclient.pre-install
deleted file mode 100644
index 1e271194d64..00000000000
--- a/testing/ddclient/ddclient.pre-install
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-addgroup -S ddclient 2>/dev/null
-adduser -S -D -h /var/lib/ddclient -G ddclient -g ddclient ddclient 2>/dev/null
-exit 0
diff --git a/testing/ddclient/pid-path.patch b/testing/ddclient/pid-path.patch
deleted file mode 100644
index 1b59d3d512d..00000000000
--- a/testing/ddclient/pid-path.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/sample-etc_ddclient.conf b/sample-etc_ddclient.conf
-index da2619f..910b99c 100644
---- a/sample-etc_ddclient.conf
-+++ b/sample-etc_ddclient.conf
-@@ -20,7 +20,7 @@ daemon=300 # check every 300 seconds
- syslog=yes # log update msgs to syslog
- mail=root # mail all msgs to root
- mail-failure=root # mail failed update msgs to root
--pid=/var/run/ddclient.pid # record PID in file.
-+pid=/run/ddclient/ddclient.pid # record PID in file.
- ssl=yes # use ssl-support. Works with
- # ssl-library
- # postscript=script # run script after updating. The
diff --git a/testing/ddcutil/APKBUILD b/testing/ddcutil/APKBUILD
deleted file mode 100644
index a88ea4b0eb7..00000000000
--- a/testing/ddcutil/APKBUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-# Contributor: Alex Laskin <alex@lask.in>
-# Maintainer: Alex Laskin <alex@lask.in>
-pkgname=ddcutil
-pkgver=1.2.2
-pkgrel=0
-pkgdesc="Query and change Linux monitor settings using DDC/CI and USB"
-url="https://github.com/rockowitz/ddcutil"
-arch="all"
-license="GPL-2.0-only"
-makedepends="linux-headers autoconf automake libtool eudev-dev libusb-dev i2c-tools-dev
- libxrandr-dev glib-dev kmod-dev"
-subpackages="$pkgname-dev $pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/rockowitz/ddcutil/archive/v$pkgver.tar.gz"
-
-prepare() {
- default_prepare
- NOCONFIGURE=1 ./autogen.sh
-}
-
-build() {
- ./configure \
- --prefix=/usr \
- --mandir=/usr/share/man
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-0329711e536cbcaee2efe6cf981a17181ab318846e9c6a82f2ceacc42691ba49c06df44a52d1f079568e9ccec588cc85d4de4adf19b6db83bebe4bb90ae29207 ddcutil-1.2.2.tar.gz
-"
diff --git a/testing/ddgr/APKBUILD b/testing/ddgr/APKBUILD
index 8edfa56f473..01a2d723bf8 100644
--- a/testing/ddgr/APKBUILD
+++ b/testing/ddgr/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: dai9ah <dai9ah@protonmail.com>
# Maintainer: dai9ah <dai9ah@protonmail.com>
pkgname=ddgr
-pkgver=2.0
+pkgver=2.2
pkgrel=0
pkgdesc="DuckDuckGo from the terminal"
url="https://github.com/jarun/ddgr"
@@ -22,11 +22,11 @@ package() {
install -Dm644 "$builddir"/auto-completion/bash/* \
-t "$pkgdir"/usr/share/bash-completion/completions/
install -Dm644 "$builddir"/auto-completion/fish/* \
- -t "$pkgdir"/usr/share/fish/completions/
+ -t "$pkgdir"/usr/share/fish/vendor_completions.d/
install -Dm644 "$builddir"/auto-completion/zsh/* \
-t "$pkgdir"/usr/share/zsh/site-functions/
}
sha512sums="
-4b9905d7a1fe916b0512f0aa2d5dfbdcc761f3d657d8bea1e94d2372503f5f1e283d7255fae491bf8c1a99e58dbb25ccb11f8496c89823a24c2cdb32741916d6 ddgr-2.0.tar.gz
+a61860fe0866b76f89b263bd9d3b3a2b3be52ed6af4885ec9dd076ae192fcdf9e412d9516cb9c3405792ee3d98745b70e059fd41cfb61d835241153d4b63db0e ddgr-2.2.tar.gz
"
diff --git a/testing/ddnrs/APKBUILD b/testing/ddnrs/APKBUILD
new file mode 100644
index 00000000000..477ad596d7d
--- /dev/null
+++ b/testing/ddnrs/APKBUILD
@@ -0,0 +1,38 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=ddnrs
+pkgver=0.2.0
+pkgrel=0
+pkgdesc="A simple tool to update dns records to match your current IP"
+url="https://codeberg.org/Kladky/ddnrs"
+arch="all"
+license="AGPL-3.0-only"
+makedepends="
+ make
+ cargo
+ cargo-auditable
+ openssl-dev
+ "
+install="$pkgname.pre-install"
+subpackages="$pkgname-openrc"
+source="$pkgname-$pkgver.tar.gz::https://codeberg.org/Kladky/ddnrs/archive/$pkgver.tar.gz"
+options="!check" # no tests
+builddir="$srcdir/$pkgname"
+
+prepare() {
+ default_prepare
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ CARGO="cargo auditable" make build-frozen
+}
+
+package() {
+ DESTDIR="$pkgdir" make install
+ DESTDIR="$pkgdir" make install-openrc
+}
+
+sha512sums="
+e979b5fb2643cf297e82120f0dc297651f38ee24b0dfbbcbf0b0dcab5939b13dab234ced152f753d8b610425e25dc853ac9476b6597fab3c3d1d5d7b34f480c9 ddnrs-0.2.0.tar.gz
+"
diff --git a/testing/ddnrs/ddnrs.pre-install b/testing/ddnrs/ddnrs.pre-install
new file mode 100644
index 00000000000..265643e1be6
--- /dev/null
+++ b/testing/ddnrs/ddnrs.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S ddnrs 2>/dev/null
+adduser -S -D -s /sbin/nologin -H -G ddnrs -g ddnrs ddnrs 2>/dev/null
+
+exit 0
diff --git a/testing/ddserver/APKBUILD b/testing/ddserver/APKBUILD
index 6bbe06a0a1b..3667f674f8b 100644
--- a/testing/ddserver/APKBUILD
+++ b/testing/ddserver/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: dkrefft <dkrefft@posteo.de>
pkgname=ddserver
pkgver=0_git20200930
-pkgrel=0
+pkgrel=1
_commit="02b23b2cf451b2780a551861ef1eaaa10ca710ed"
pkgdesc="server to forward PTP USB messages between qDslrDashboard and USB camera"
url="https://github.com/hubaiz/DslrDashboardServer"
diff --git a/testing/deadbeef-soxr/APKBUILD b/testing/deadbeef-soxr/APKBUILD
index f4ded0eeea8..099c4f8cf70 100644
--- a/testing/deadbeef-soxr/APKBUILD
+++ b/testing/deadbeef-soxr/APKBUILD
@@ -5,7 +5,8 @@ pkgver=20180801 # No version information. Use last commit date.
pkgrel=0
pkgdesc="Sox resampler plugin for deadbeef audio player."
url="https://github.com/silentlexx/deadbeef_soxr"
-arch="all"
+# blocked by deadbeef -> libdispatch-dev
+arch="all !s390x !armhf !riscv64"
license="GPL-2.0-or-later"
depends="deadbeef"
makedepends="
diff --git a/testing/debconf/APKBUILD b/testing/debconf/APKBUILD
index 3db2bfb0ea5..1abc890fc44 100644
--- a/testing/debconf/APKBUILD
+++ b/testing/debconf/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: TBK <alpine@jjtc.eu>
# Maintainer: TBK <alpine@jjtc.eu>
pkgname=debconf
-pkgver=1.5.79
+pkgver=1.5.82
pkgrel=0
pkgdesc="A configuration management system for Debian packages."
url="https://packages.debian.org/debconf"
@@ -43,6 +43,6 @@ utils() {
}
sha512sums="
-08a19a835422ff81d262e2a7212d42ce636e8fa4b58fb9fb220838f3d497e5c179202fcd3e79afca3b697d074749dbf6a81bfbaea54872f75a818d0cf49ab625 debconf_1.5.79.tar.xz
+5a9b26d90cf02e6f5b267e6e6416e91ac31115b124b05b4edd2dd785eea92a6d9c060f591dad6645784ff956a07555cb1bf11a35f4712d5bc308c4b6726da88a debconf_1.5.82.tar.xz
df98c6d92675240691c2b68e36aa5c511887a21bef3a619c074b2c1814c228a39c488a9de03789c77cf67b1abd74521224451b4c2fe49331cd038986c006e74b fix-makefile_destdir.patch
"
diff --git a/testing/deblob/APKBUILD b/testing/deblob/APKBUILD
new file mode 100644
index 00000000000..d7fc9505aa4
--- /dev/null
+++ b/testing/deblob/APKBUILD
@@ -0,0 +1,30 @@
+# Contributor: lauren n. liberda <lauren@selfisekai.rocks>
+# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
+pkgname=deblob
+pkgver=0.7
+pkgrel=0
+pkgdesc="Remove binary executables (blobs) from a directory"
+url="https://hacktivis.me/projects/deblob"
+arch="aarch64 riscv64 x86_64" # hare
+license="BSD-3-Clause"
+makedepends="hare"
+subpackages="$pkgname-doc"
+source="
+ deblob-$pkgver.tar.gz::https://git.sr.ht/~lanodan/deblob/archive/$pkgver.tar.gz
+ "
+
+build() {
+ make
+}
+
+check() {
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" PREFIX=/usr install
+}
+
+sha512sums="
+92fe9d9a4fc7c3a33f53e9f414005da6820b00dbc835a31560cc0fde28e9ecf75b53b23cecbbf93c287052da1ca7166d46233546fd69b7bd7760f10d15487509 deblob-0.7.tar.gz
+"
diff --git a/testing/dehydrated/APKBUILD b/testing/dehydrated/APKBUILD
index 3efb5afd447..049edb4801e 100644
--- a/testing/dehydrated/APKBUILD
+++ b/testing/dehydrated/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: guddaff <guddaff@protonmail.com>
# Maintainer: guddaff <guddaff@protonmail.com>
pkgname=dehydrated
-pkgver=0.7.0
+pkgver=0.7.1
pkgrel=0
pkgdesc="shellscript letsencrypt/acme client"
options="!check" #there are no checks
@@ -16,4 +16,6 @@ package() {
install -Dm644 docs/examples/domains.txt "$pkgdir"/etc/dehydrated/domains.txt
}
-sha512sums="47740d2d31ca73482a4fc5ed0dfce986af907dd5449cb3a5230bf9683845686c8122fc32e6219a4439574ef11d6fb104ee09591c5ff667927a2c9c13ba005511 dehydrated-0.7.0.tar.gz"
+sha512sums="
+1d584c3876cdc1ef213b2feb02e15d2b47ef2b6504e8a837ad45d9d14929a82de28bee7395a75659721ae18bd8f26f4f2759ad8eaef66c671c7085c9859f6555 dehydrated-0.7.1.tar.gz
+"
diff --git a/testing/delfin/APKBUILD b/testing/delfin/APKBUILD
new file mode 100644
index 00000000000..cc96f9fcf7f
--- /dev/null
+++ b/testing/delfin/APKBUILD
@@ -0,0 +1,52 @@
+# Contributor: fossdd <fossdd@pwned.life>
+# Maintainer: fossdd <fossdd@pwned.life>
+pkgname=delfin
+pkgver=0.4.3
+pkgrel=0
+pkgdesc="Stream movies and TV shows from Jellyfin"
+url="https://delfin.avery.cafe/"
+arch="all !x86" # x86: fails to build
+license="GPL-3.0-only"
+depends="
+ gtk4.0
+ libadwaita
+ mpv
+ "
+makedepends="
+ cargo
+ cargo-auditable
+ clang
+ desktop-file-utils
+ gtk4.0-dev
+ libadwaita-dev
+ meson
+ mpv-dev
+ "
+source="delfin-$pkgver.tar.gz::https://codeberg.org/avery42/delfin/archive/v$pkgver.tar.gz
+ cargo-auditable.patch
+ "
+builddir="$srcdir/$pkgname"
+
+prepare() {
+ default_prepare
+ cargo fetch --locked
+}
+
+build() {
+ abuild-meson . output -Dprofile=release
+ meson compile -C output
+}
+
+check() {
+ meson test --no-rebuild -C output
+}
+
+package() {
+ cd "$builddir/output"
+ meson install --no-rebuild --destdir "$pkgdir"
+}
+
+sha512sums="
+e4f3eeb16c8c4e88b6899290764ad4cc59ba0729caef45a788ce02a3ac57319f0c3a16400438bfd2dd604c610aec68b7ef9eb97afc8d934dd14eb0d10d4071c5 delfin-0.4.3.tar.gz
+2b3f51bf47e847a959545844c37921c612b4b91387f94ad6b1a146be2ce81615274ea6f245eb6b08f21c2d506a7af1f4bfd358feddeacf3623b08e087292fe63 cargo-auditable.patch
+"
diff --git a/testing/delfin/cargo-auditable.patch b/testing/delfin/cargo-auditable.patch
new file mode 100644
index 00000000000..a1be67c6b5e
--- /dev/null
+++ b/testing/delfin/cargo-auditable.patch
@@ -0,0 +1,24 @@
+diff --git a/delfin/meson.build b/delfin/meson.build
+index 61283cd..0af6cd9 100644
+--- a/delfin/meson.build
++++ b/delfin/meson.build
+@@ -17,6 +17,7 @@ run_command(
+ )
+
+ cargo = find_program('cargo', required: true)
++cargo_auditable = find_program('cargo-auditable', required: true)
+
+-cargo_options = ['--target-dir', meson.project_build_root() / 'delfin']
++cargo_options = ['--target-dir', meson.project_build_root() / 'delfin', '--frozen']
+ rust_target = 'debug'
+
+ if get_option('profile') == 'release'
+@@ -33,7 +33,7 @@ custom_target(
+ output: meson.project_name(),
+ console: true,
+ command: [
+- cargo, 'build', cargo_options,
++ cargo, 'auditable', 'build', cargo_options,
+ '&&', 'cp', 'delfin' / rust_target / meson.project_name(), '@OUTPUT@',
+ ],
+ install: true,
diff --git a/testing/delve/APKBUILD b/testing/delve/APKBUILD
deleted file mode 100644
index 2bca81d67a0..00000000000
--- a/testing/delve/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
-# Maintainer:
-pkgname=delve
-pkgver=1.8.3
-pkgrel=1
-pkgdesc="Debugger for the Go programming language"
-url="https://github.com/go-delve/delve"
-arch="x86 x86_64 aarch64"
-license="MIT"
-makedepends="go"
-options="net chmod-clean"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/go-delve/delve/archive/refs/tags/v$pkgver.tar.gz"
-
-export GOPATH="$srcdir"
-
-build() {
- mkdir bin
- go build -v -trimpath -o bin ./cmd/dlv/...
-}
-
-check() {
- # TestGeneratedDoc and TestBuild require a proper $GOPATH setup.
- go test -run '!(^(TestGeneratedDoc|TestBuild)$)' ./cmd/dlv/...
-}
-
-package() {
- install -Dm755 bin/* -t "$pkgdir"/usr/bin/
-
- # Install additional documentation files.
- mkdir -p "$pkgdir"/usr/share/doc/$pkgname
- cp -r Documentation/* "$pkgdir"/usr/share/doc/$pkgname
-}
-
-sha512sums="
-188f677218b74a7e1858447843d76439da26da7b830eca4ed61bb5ab3ed478091e91b38c638cc3495a4a58ecdd564d24befdb445a4b52a65230d989f7c235aa1 delve-1.8.3.tar.gz
-"
diff --git a/testing/desed/APKBUILD b/testing/desed/APKBUILD
new file mode 100644
index 00000000000..bbca5fd5f05
--- /dev/null
+++ b/testing/desed/APKBUILD
@@ -0,0 +1,42 @@
+# Contributor: Jakub Jirutka <jakub@jirutka.cz>
+# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
+pkgname=desed
+pkgver=1.2.1
+pkgrel=1
+pkgdesc="Demystify and debug your sed scripts, from comfort of your terminal"
+url="https://github.com/SoptikHa2/desed"
+# riscv64: rust broken
+arch="all !riscv64"
+license="GPL-3.0-or-later"
+depends="sed" # needs GNU sed
+makedepends="cargo cargo-auditable"
+subpackages="$pkgname-doc"
+source="https://github.com/SoptikHa2/desed/archive/v$pkgver/desed-$pkgver.tar.gz
+ Cargo.lock
+ "
+
+
+prepare() {
+ default_prepare
+
+ mv "$srcdir"/Cargo.lock .
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -D -m755 target/release/$pkgname -t "$pkgdir"/usr/bin/
+ install -D -m644 $pkgname.1 -t "$pkgdir"/usr/share/man/man1/
+}
+
+sha512sums="
+19849bc5f4c6513ce062a78a7c59b1f7ba6b53c6c9fc18150dbf367b2fa29443044afc683a3bb9289d5dc9a2f0e57b7cc497296d8532e53fbdc6f54ec84e0add desed-1.2.1.tar.gz
+86fbd9a43e7a82edebd949c1bc9157fed5df982334f920bcf11f202471bbafb9ae49ba14162f3553e382f46164151d988516a417ea46d00eb00afffc9dd31be4 Cargo.lock
+"
diff --git a/testing/desed/Cargo.lock b/testing/desed/Cargo.lock
new file mode 100644
index 00000000000..3f851eea59c
--- /dev/null
+++ b/testing/desed/Cargo.lock
@@ -0,0 +1,473 @@
+# This file is automatically @generated by Cargo.
+# It is not intended for manual editing.
+version = 3
+
+[[package]]
+name = "anyhow"
+version = "1.0.66"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "216261ddc8289130e551ddcd5ce8a064710c0d064a4d2895c67151c92b5443f6"
+
+[[package]]
+name = "atty"
+version = "0.2.14"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8"
+dependencies = [
+ "hermit-abi",
+ "libc",
+ "winapi",
+]
+
+[[package]]
+name = "autocfg"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
+
+[[package]]
+name = "bitflags"
+version = "1.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
+
+[[package]]
+name = "cassowary"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "df8670b8c7b9dae1793364eafadf7239c40d669904660c5960d74cfd80b46a53"
+
+[[package]]
+name = "cfg-if"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
+
+[[package]]
+name = "clap"
+version = "3.2.23"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "71655c45cb9845d3270c9d6df84ebe72b4dad3c2ba3f7023ad47c144e4e473a5"
+dependencies = [
+ "atty",
+ "bitflags",
+ "clap_lex",
+ "indexmap",
+ "once_cell",
+ "strsim",
+ "termcolor",
+ "textwrap",
+]
+
+[[package]]
+name = "clap_lex"
+version = "0.2.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2850f2f5a82cbf437dd5af4d49848fbdfc27c157c3d010345776f952765261c5"
+dependencies = [
+ "os_str_bytes",
+]
+
+[[package]]
+name = "crossterm"
+version = "0.25.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e64e6c0fbe2c17357405f7c758c1ef960fce08bdfb2c03d88d2a18d7e09c4b67"
+dependencies = [
+ "bitflags",
+ "crossterm_winapi",
+ "libc",
+ "mio",
+ "parking_lot",
+ "signal-hook",
+ "signal-hook-mio",
+ "winapi",
+]
+
+[[package]]
+name = "crossterm_winapi"
+version = "0.9.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2ae1b35a484aa10e07fe0638d02301c5ad24de82d310ccbd2f3693da5f09bf1c"
+dependencies = [
+ "winapi",
+]
+
+[[package]]
+name = "desed"
+version = "1.2.1"
+dependencies = [
+ "anyhow",
+ "cfg-if",
+ "clap",
+ "crossterm",
+ "inotify",
+ "kqueue",
+ "tui",
+]
+
+[[package]]
+name = "futures-core"
+version = "0.3.25"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "04909a7a7e4633ae6c4a9ab280aeb86da1236243a77b694a49eacd659a4bd3ac"
+
+[[package]]
+name = "hashbrown"
+version = "0.12.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
+
+[[package]]
+name = "hermit-abi"
+version = "0.1.19"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33"
+dependencies = [
+ "libc",
+]
+
+[[package]]
+name = "indexmap"
+version = "1.9.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "10a35a97730320ffe8e2d410b5d3b69279b98d2c14bdb8b70ea89ecf7888d41e"
+dependencies = [
+ "autocfg",
+ "hashbrown",
+]
+
+[[package]]
+name = "inotify"
+version = "0.10.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "abf888f9575c290197b2c948dc9e9ff10bd1a39ad1ea8585f734585fa6b9d3f9"
+dependencies = [
+ "bitflags",
+ "futures-core",
+ "inotify-sys",
+ "libc",
+ "tokio",
+]
+
+[[package]]
+name = "inotify-sys"
+version = "0.1.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e05c02b5e89bff3b946cedeca278abc628fe811e604f027c45a8aa3cf793d0eb"
+dependencies = [
+ "libc",
+]
+
+[[package]]
+name = "kqueue"
+version = "1.0.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2c8fc60ba15bf51257aa9807a48a61013db043fcf3a78cb0d916e8e396dcad98"
+dependencies = [
+ "kqueue-sys",
+ "libc",
+]
+
+[[package]]
+name = "kqueue-sys"
+version = "1.0.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8367585489f01bc55dd27404dcf56b95e6da061a256a666ab23be9ba96a2e587"
+dependencies = [
+ "bitflags",
+ "libc",
+]
+
+[[package]]
+name = "libc"
+version = "0.2.137"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fc7fcc620a3bff7cdd7a365be3376c97191aeaccc2a603e600951e452615bf89"
+
+[[package]]
+name = "lock_api"
+version = "0.4.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "435011366fe56583b16cf956f9df0095b405b82d76425bc8981c0e22e60ec4df"
+dependencies = [
+ "autocfg",
+ "scopeguard",
+]
+
+[[package]]
+name = "log"
+version = "0.4.17"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e"
+dependencies = [
+ "cfg-if",
+]
+
+[[package]]
+name = "mio"
+version = "0.8.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e5d732bc30207a6423068df043e3d02e0735b155ad7ce1a6f76fe2baa5b158de"
+dependencies = [
+ "libc",
+ "log",
+ "wasi",
+ "windows-sys",
+]
+
+[[package]]
+name = "once_cell"
+version = "1.15.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e82dad04139b71a90c080c8463fe0dc7902db5192d939bd0950f074d014339e1"
+
+[[package]]
+name = "os_str_bytes"
+version = "6.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9ff7415e9ae3fff1225851df9e0d9e4e5479f947619774677a63572e55e80eff"
+
+[[package]]
+name = "parking_lot"
+version = "0.12.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f"
+dependencies = [
+ "lock_api",
+ "parking_lot_core",
+]
+
+[[package]]
+name = "parking_lot_core"
+version = "0.9.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4dc9e0dc2adc1c69d09143aff38d3d30c5c3f0df0dad82e6d25547af174ebec0"
+dependencies = [
+ "cfg-if",
+ "libc",
+ "redox_syscall",
+ "smallvec",
+ "windows-sys",
+]
+
+[[package]]
+name = "pin-project-lite"
+version = "0.2.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e0a7ae3ac2f1173085d398531c705756c94a4c56843785df85a60c1a0afac116"
+
+[[package]]
+name = "redox_syscall"
+version = "0.2.16"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a"
+dependencies = [
+ "bitflags",
+]
+
+[[package]]
+name = "scopeguard"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd"
+
+[[package]]
+name = "signal-hook"
+version = "0.3.14"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a253b5e89e2698464fc26b545c9edceb338e18a89effeeecfea192c3025be29d"
+dependencies = [
+ "libc",
+ "signal-hook-registry",
+]
+
+[[package]]
+name = "signal-hook-mio"
+version = "0.2.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "29ad2e15f37ec9a6cc544097b78a1ec90001e9f71b81338ca39f430adaca99af"
+dependencies = [
+ "libc",
+ "mio",
+ "signal-hook",
+]
+
+[[package]]
+name = "signal-hook-registry"
+version = "1.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e51e73328dc4ac0c7ccbda3a494dfa03df1de2f46018127f60c693f2648455b0"
+dependencies = [
+ "libc",
+]
+
+[[package]]
+name = "smallvec"
+version = "1.10.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0"
+
+[[package]]
+name = "socket2"
+version = "0.4.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "02e2d2db9033d13a1567121ddd7a095ee144db4e1ca1b1bda3419bc0da294ebd"
+dependencies = [
+ "libc",
+ "winapi",
+]
+
+[[package]]
+name = "strsim"
+version = "0.10.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
+
+[[package]]
+name = "termcolor"
+version = "1.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bab24d30b911b2376f3a13cc2cd443142f0c81dda04c118693e35b3835757755"
+dependencies = [
+ "winapi-util",
+]
+
+[[package]]
+name = "textwrap"
+version = "0.16.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "222a222a5bfe1bba4a77b45ec488a741b3cb8872e5e499451fd7d0129c9c7c3d"
+
+[[package]]
+name = "tokio"
+version = "1.21.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a9e03c497dc955702ba729190dc4aac6f2a0ce97f913e5b1b5912fc5039d9099"
+dependencies = [
+ "autocfg",
+ "libc",
+ "mio",
+ "pin-project-lite",
+ "socket2",
+ "winapi",
+]
+
+[[package]]
+name = "tui"
+version = "0.19.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ccdd26cbd674007e649a272da4475fb666d3aa0ad0531da7136db6fab0e5bad1"
+dependencies = [
+ "bitflags",
+ "cassowary",
+ "crossterm",
+ "unicode-segmentation",
+ "unicode-width",
+]
+
+[[package]]
+name = "unicode-segmentation"
+version = "1.10.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0fdbf052a0783de01e944a6ce7a8cb939e295b1e7be835a1112c3b9a7f047a5a"
+
+[[package]]
+name = "unicode-width"
+version = "0.1.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b"
+
+[[package]]
+name = "wasi"
+version = "0.11.0+wasi-snapshot-preview1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
+
+[[package]]
+name = "winapi"
+version = "0.3.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
+dependencies = [
+ "winapi-i686-pc-windows-gnu",
+ "winapi-x86_64-pc-windows-gnu",
+]
+
+[[package]]
+name = "winapi-i686-pc-windows-gnu"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
+
+[[package]]
+name = "winapi-util"
+version = "0.1.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178"
+dependencies = [
+ "winapi",
+]
+
+[[package]]
+name = "winapi-x86_64-pc-windows-gnu"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
+
+[[package]]
+name = "windows-sys"
+version = "0.42.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7"
+dependencies = [
+ "windows_aarch64_gnullvm",
+ "windows_aarch64_msvc",
+ "windows_i686_gnu",
+ "windows_i686_msvc",
+ "windows_x86_64_gnu",
+ "windows_x86_64_gnullvm",
+ "windows_x86_64_msvc",
+]
+
+[[package]]
+name = "windows_aarch64_gnullvm"
+version = "0.42.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "41d2aa71f6f0cbe00ae5167d90ef3cfe66527d6f613ca78ac8024c3ccab9a19e"
+
+[[package]]
+name = "windows_aarch64_msvc"
+version = "0.42.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dd0f252f5a35cac83d6311b2e795981f5ee6e67eb1f9a7f64eb4500fbc4dcdb4"
+
+[[package]]
+name = "windows_i686_gnu"
+version = "0.42.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fbeae19f6716841636c28d695375df17562ca208b2b7d0dc47635a50ae6c5de7"
+
+[[package]]
+name = "windows_i686_msvc"
+version = "0.42.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "84c12f65daa39dd2babe6e442988fc329d6243fdce47d7d2d155b8d874862246"
+
+[[package]]
+name = "windows_x86_64_gnu"
+version = "0.42.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bf7b1b21b5362cbc318f686150e5bcea75ecedc74dd157d874d754a2ca44b0ed"
+
+[[package]]
+name = "windows_x86_64_gnullvm"
+version = "0.42.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "09d525d2ba30eeb3297665bd434a54297e4170c7f1a44cad4ef58095b4cd2028"
+
+[[package]]
+name = "windows_x86_64_msvc"
+version = "0.42.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f40009d85759725a34da6d89a94e63d7bdc50a862acf0dbc7c8e488f1edcb6f5"
diff --git a/testing/desync/APKBUILD b/testing/desync/APKBUILD
new file mode 100644
index 00000000000..9fe94f29e57
--- /dev/null
+++ b/testing/desync/APKBUILD
@@ -0,0 +1,38 @@
+# Contributor: Damian Kurek <starfire24680@gmail.com>
+# Maintainer: Damian Kurek <starfire24680@gmail.com>
+pkgname=desync
+pkgver=0.9.5
+pkgrel=5
+pkgdesc="Alternative casync implementation"
+url="https://github.com/folbricht/desync"
+arch="all"
+license="BSD-3-Clause"
+makedepends="go"
+depends="fuse"
+source="$pkgname-$pkgver.tar.gz::https://github.com/folbricht/desync/archive/refs/tags/v$pkgver.tar.gz"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ export GOFLAGS="$GOFLAGS -trimpath -mod=readonly -modcacherw"
+ mkdir build
+ go build -o build ./cmd/desync
+}
+
+check() {
+ # this test requires the fuse module to be loaded
+ if ! grep -Fxq "^fuse " /proc/modules; then
+ rm -rf mount-index_linux_test.go
+ fi
+ go test ./...
+}
+
+package() {
+ install -Dm755 ./build/desync -t "$pkgdir"/usr/bin
+}
+
+sha512sums="
+650b397e218d852ceb8e0df5ebc2c8177f607f6e52017d075e746c358e0a1d110cfb0e893760eb86fdf72f428ea12a1cd5cc3843e6569e1f078a139e08d07543 desync-0.9.5.tar.gz
+"
diff --git a/testing/detox/APKBUILD b/testing/detox/APKBUILD
index 103ccaddb2e..7f5edd75192 100644
--- a/testing/detox/APKBUILD
+++ b/testing/detox/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: z3bra <willy at mailoo dot org>
# Maintainer: Roberto Oliveira <robertoguimaraes8@gmail.com>
pkgname=detox
-pkgver=1.4.5
+pkgver=2.0.0
pkgrel=0
pkgdesc="Utility for cleaning up filenames"
url="https://github.com/dharple/detox"
@@ -32,5 +32,5 @@ package() {
}
sha512sums="
-f91ae893cf50a3f9d731a26218625f572c783406056c0accbd8253d6dc5de9013ffbe1497120af7be4b7054d65ebbe96b73df64a5d1cc3aaec40e6542e5c6208 detox-1.4.5.tar.gz
+a52e0f66caedce03d442dfe1f4b2f1db991c20dbc22b975c106266f1b5edcf653b22b166bbcae908c549371296c732898655002b3b95929fab5f4c03a526118f detox-2.0.0.tar.gz
"
diff --git a/testing/devil/APKBUILD b/testing/devil/APKBUILD
new file mode 100644
index 00000000000..4bf660656b1
--- /dev/null
+++ b/testing/devil/APKBUILD
@@ -0,0 +1,45 @@
+# Maintainer: Marian Buschsieweke <marian.buschsieweke@posteo.net>
+pkgname=devil
+pkgver=1.8.0
+pkgrel=0
+pkgdesc="A full featured cross-platform image library"
+arch="all"
+url="https://openil.sourceforge.net/"
+license="LGPL-2.1-only"
+makedepends="$depends_dev
+ cmake
+ jasper-dev
+ lcms2-dev
+ libjpeg-turbo-dev
+ libpng-dev
+ samurai
+ "
+source="
+ https://downloads.sourceforge.net/openil/DevIL-$pkgver.tar.gz
+
+ fix_mismatching_signatures.patch
+ "
+subpackages="$pkgname-dev"
+builddir="$srcdir/DevIL/DevIL"
+options="!check" # no unit tests provided
+
+build() {
+ # "register" storage class specifier is no longer allowed in modern C++
+ # standards. Until upstream removes the qualifier, we can just ignore the
+ # warning.
+ export CXXFLAGS="$CXXFLAGS -Wno-register"
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=RelWithDebInfo \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+103fa51f4094af0fe988bf9520e1b9178900f980b72226e64ede60b6b0938a646c670a37372214edb557e492947cd5af5012a3ac906734a5ea83e072f81db583 DevIL-1.8.0.tar.gz
+779ab33b29c792aa737a858e85b6ece26e9b88818ba734ac7eee9655c447f0f32ec5fe6e520db712e903fc2c945b933a173b149759cd764dcb4af3fcf94dc6c0 fix_mismatching_signatures.patch
+"
diff --git a/testing/devil/fix_mismatching_signatures.patch b/testing/devil/fix_mismatching_signatures.patch
new file mode 100644
index 00000000000..e5136b61c13
--- /dev/null
+++ b/testing/devil/fix_mismatching_signatures.patch
@@ -0,0 +1,21 @@
+This fixes mismatching function signatures when using function pointers to
+iJp2_file_read and iJp2_file_write in jas_stream_opts_t.
+
+--- a/src-IL/src/il_jp2.cpp
++++ b/src-IL/src/il_jp2.cpp
+@@ -314,13 +314,13 @@
+
+
+
+-static int iJp2_file_read(jas_stream_obj_t *obj, char *buf, int cnt)
++static ssize_t iJp2_file_read(jas_stream_obj_t *obj, char *buf, size_t cnt)
+ {
+ obj;
+ return iread(buf, 1, cnt);
+ }
+
+-static int iJp2_file_write(jas_stream_obj_t *obj, char *buf, int cnt)
++static ssize_t iJp2_file_write(jas_stream_obj_t *obj, const char *buf, size_t cnt)
+ {
+ obj;
+ return iwrite(buf, 1, cnt);
diff --git a/testing/dex/APKBUILD b/testing/dex/APKBUILD
index 4d55d5257ec..e777d8d35b0 100644
--- a/testing/dex/APKBUILD
+++ b/testing/dex/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Anjandev Momi <anjan@momi.ca>
pkgname=dex
pkgver=0.9.0
-pkgrel=0
+pkgrel=1
pkgdesc="program to generate and execute DesktopEntry files of the Application type"
url="https://github.com/jceb/dex"
arch="all"
@@ -18,7 +18,7 @@ build() {
}
package() {
- make install PREFIX=/usr DESTDIR="$pkgdir"
+ make install PREFIX=/usr MANPREFIX=/usr/share/man DESTDIR="$pkgdir"
}
sha512sums="
diff --git a/testing/dfl-applications/APKBUILD b/testing/dfl-applications/APKBUILD
new file mode 100644
index 00000000000..ca99143c69c
--- /dev/null
+++ b/testing/dfl-applications/APKBUILD
@@ -0,0 +1,27 @@
+# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=dfl-applications
+pkgver=0.2.0
+pkgrel=0
+pkgdesc="Thin wrapper around QApplication, QGuiApplication and QCoreApplication"
+url="https://gitlab.com/desktop-frameworks/applications/"
+arch="all"
+license="GPL-3.0-only"
+makedepends="qt5-qtbase-dev meson dfl-ipc-dev"
+subpackages="$pkgname-dev"
+source="$pkgname-$pkgver.tar.gz::https://gitlab.com/desktop-frameworks/applications/-/archive/v$pkgver/applications-v$pkgver.tar.gz"
+builddir="$srcdir/applications-v$pkgver"
+options="!check" # no test suite
+
+build() {
+ abuild-meson . output
+ meson compile -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+sha512sums="
+3265053d39c90ffa2a35b430bedb22c0c8ea11068146eb87dac021554757475ac7c9085e67c892f6e128e36f6ffc34de082e72e178e8e99ae6d65ecb73632cbe dfl-applications-0.2.0.tar.gz
+"
diff --git a/testing/dfl-ipc/APKBUILD b/testing/dfl-ipc/APKBUILD
new file mode 100644
index 00000000000..36e4ac4790d
--- /dev/null
+++ b/testing/dfl-ipc/APKBUILD
@@ -0,0 +1,26 @@
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=dfl-ipc
+pkgver=0.2.0
+pkgrel=0
+pkgdesc="Very simple set of IPC classes for inter-process communication"
+url="https://gitlab.com/desktop-frameworks/ipc"
+arch="all"
+license="GPL-3.0-only"
+makedepends="qt5-qtbase-dev meson"
+subpackages="$pkgname-dev"
+source="$pkgname-$pkgver.tar.gz::https://gitlab.com/desktop-frameworks/ipc/-/archive/v$pkgver/ipc-v$pkgver.tar.gz"
+builddir="$srcdir/ipc-v$pkgver"
+options="!check" # no test suite
+
+build() {
+ abuild-meson . output
+ meson compile -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+sha512sums="
+bb143bf336aa400bea6187b230eda82a9f42c15d881a43c6af87af7d2d340f96eb0e2b1a8941bc7200d0721d1978acf5a42bee42b137472a17a89c3c8d149bd3 dfl-ipc-0.2.0.tar.gz
+"
diff --git a/testing/dfl-login1/APKBUILD b/testing/dfl-login1/APKBUILD
new file mode 100644
index 00000000000..f36e63c8e82
--- /dev/null
+++ b/testing/dfl-login1/APKBUILD
@@ -0,0 +1,26 @@
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=dfl-login1
+pkgver=0.2.0
+pkgrel=0
+pkgdesc="Implementation of systemd/elogind for DFL"
+url="https://gitlab.com/desktop-frameworks/login1"
+arch="all"
+license="GPL-3.0-only"
+makedepends="qt5-qtbase-dev meson"
+subpackages="$pkgname-dev"
+source="$pkgname-$pkgver.tar.gz::https://gitlab.com/desktop-frameworks/login1/-/archive/v$pkgver/login1-v$pkgver.tar.gz"
+builddir="$srcdir/login1-v$pkgver"
+options="!check" # no test suite
+
+build() {
+ abuild-meson . output
+ meson compile -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+sha512sums="
+c95717a5c731d894a1d21c14c305f14cfaf026ed8ad752de5a68fbef814244c1db9b3d9c3dee858d44018b4c433dc1dc99c8e9ed7abdbc5ca55b14c697bbbe74 dfl-login1-0.2.0.tar.gz
+"
diff --git a/testing/dfl-sni/APKBUILD b/testing/dfl-sni/APKBUILD
new file mode 100644
index 00000000000..a791fa7a42e
--- /dev/null
+++ b/testing/dfl-sni/APKBUILD
@@ -0,0 +1,26 @@
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=dfl-sni
+pkgver=0.2.0
+pkgrel=0
+pkgdesc="Implementation of the XDG Status Notification Specifications"
+url="https://gitlab.com/desktop-frameworks/status-notifier/"
+arch="all"
+license="GPL-3.0-only"
+makedepends="qt5-qtbase-dev meson"
+subpackages="$pkgname-dev"
+source="$pkgname-$pkgver.tar.gz::https://gitlab.com/desktop-frameworks/status-notifier/-/archive/v$pkgver/status-notifier-v$pkgver.tar.gz"
+builddir="$srcdir/status-notifier-v$pkgver"
+options="!check" # no test suite
+
+build() {
+ abuild-meson . output
+ meson compile -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+sha512sums="
+a513eba3402094287b54636c0af5a9eea0fb26440923ca0b0ba28ceeec5a56f8336b1611cc65fe4b61c796b44d2abdc16e71dc726ecd4c69d52864da50dc6fda dfl-sni-0.2.0.tar.gz
+"
diff --git a/testing/dfu-programmer/10-add-stdlib.patch b/testing/dfu-programmer/10-add-stdlib.patch
deleted file mode 100644
index 1aabd804f99..00000000000
--- a/testing/dfu-programmer/10-add-stdlib.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- dfu-programmer-0.7.0.orig/src/atmel.c
-+++ dfu-programmer-0.7.0/src/atmel.c
-@@ -23,6 +23,7 @@
- #include <stdint.h>
- #include <string.h>
- #include <stddef.h>
-+#include <stdlib.h>
- #include <errno.h>
- #include <time.h>
- #include <unistd.h>
diff --git a/testing/dfu-programmer/APKBUILD b/testing/dfu-programmer/APKBUILD
index 66d5f96ca92..82eac810451 100644
--- a/testing/dfu-programmer/APKBUILD
+++ b/testing/dfu-programmer/APKBUILD
@@ -1,16 +1,22 @@
# Contributor: Peter Shkenev <santurysim@gmail.com>
# Maintainer: Peter Shkenev <santurysim@gmail.com>
pkgname=dfu-programmer
-pkgver=0.7.2
+pkgver=1.1.0
pkgrel=0
-pkgdesc="A command-line programmer for Atmel USB microcontrollers"
+pkgdesc="Command-line programmer for Atmel USB microcontrollers"
url="https://dfu-programmer.github.io/"
arch="all"
license="GPL-2.0-or-later"
-makedepends="libusb-dev"
-subpackages="$pkgname-doc"
-source="https://downloads.sourceforge.net/dfu-programmer/dfu-programmer-$pkgver.tar.gz
- 10-add-stdlib.patch
+makedepends="
+ bash
+ libusb-dev
+ "
+subpackages="
+ $pkgname-doc
+ $pkgname-bash-completion
+ "
+source="
+ https://github.com/dfu-programmer/dfu-programmer/releases/download/v$pkgver/dfu-programmer-$pkgver.tar.gz
"
build() {
@@ -30,9 +36,9 @@ check() {
package() {
make DESTDIR="$pkgdir" install
+ install -Dm644 dfu_completion "$pkgdir"/usr/share/bash-completion/completions/dfu-programmer
}
sha512sums="
-429b89192bb5a9653ad8678dfc182bfc30eb057d0d1f72fe88efdf85005d3ad557e0f572f4fad3346f1f1078cd273a289f4bba2663bb1f840e6bf724d5293db4 dfu-programmer-0.7.2.tar.gz
-712aa38c97dd6fcca5a4bdfc8362f8272f9c45288c44f9543946556c21146daad5188945835e858496945b2c5877ad52f4173ea193caaae966c17c4069535d32 10-add-stdlib.patch
+76946be7c20522e6da512016b09b19a144ec6af70f1b01d697b12efb99cd3177233fe6778c4a4efe0d287b095c8e99a616ba013bf08843601c940bbea4283639 dfu-programmer-1.1.0.tar.gz
"
diff --git a/testing/dfu-util/APKBUILD b/testing/dfu-util/APKBUILD
index 31b60282946..3270781b3e1 100644
--- a/testing/dfu-util/APKBUILD
+++ b/testing/dfu-util/APKBUILD
@@ -1,14 +1,14 @@
# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
pkgname=dfu-util
pkgver=0.11
-pkgrel=0
+pkgrel=1
pkgdesc="Host side implementation of the DFU 1.0 and DFU 1.1 specifications"
-url="http://dfu-util.sourceforge.net/"
+url="https://dfu-util.sourceforge.net/"
arch="all"
license="GPL-2.0-only"
makedepends="libusb-dev"
subpackages="$pkgname-doc"
-source="http://dfu-util.sourceforge.net/releases/dfu-util-$pkgver.tar.gz"
+source="https://dfu-util.sourceforge.net/releases/dfu-util-$pkgver.tar.gz"
build() {
./configure --prefix=/usr
diff --git a/testing/dhewm3/APKBUILD b/testing/dhewm3/APKBUILD
index 089eb9ab3d6..1fb4031621f 100644
--- a/testing/dhewm3/APKBUILD
+++ b/testing/dhewm3/APKBUILD
@@ -1,14 +1,14 @@
# Contributor: Díaz Urbaneja Diego <sodomon2@gmail.com>
# Maintainer: Díaz Urbaneja Diego <sodomon2@gmail.com>
pkgname=dhewm3
-pkgver=1.5.1
+pkgver=1.5.2
pkgrel=0
pkgdesc="Doom 3 engine with native 64-bit support, SDL, and OpenAL"
url="https://dhewm3.org/"
-arch="x86_64 x86" # disabled for the other architectures due to compiling problems
+arch="all !riscv64"
license="GPL-3.0-only"
depends="curl libogg libpng libvorbis"
-makedepends="cmake libjpeg-turbo-dev libogg-dev libpng-dev libvorbis-dev make
+makedepends="cmake libjpeg-turbo-dev libogg-dev libpng-dev libvorbis-dev
openal-soft-dev sdl2-dev zlib-dev"
options="!check" # make check not implemented
source="$pkgname-$pkgver.tar.gz::https://github.com/dhewm/dhewm3/archive/$pkgver.tar.gz
@@ -37,6 +37,8 @@ package() {
install -Dm644 "$srcdir"/dhewm3.png "$pkgdir/usr/share/pixmaps/dhewm3.png"
}
-sha512sums="b485cadea173e8cf36c04b01ccc8e2e1ab1354b174fd11c967e7e361b084bd96fd781494b7c416097d39ea2e15e69ad948c6600f16f711526a17c9546243a0fa dhewm3-1.5.1.tar.gz
+sha512sums="
+37aa177b6366e37e836a3fe1da5d7dd0869a8d3788a9a70b928355a161034c8b8b6b66b91f7383cdc0bd9c78cbf8fde1129c6ad6405a244069368fbf230e0137 dhewm3-1.5.2.tar.gz
377d34c4d9ab21b09a501431e1bf8d123d3655a47499a7664db85168e2f85b73c8792bc958026593299eac57449f813b10047beb302784cc53d096e1cc37efbd dhewm3.desktop
-13f7a50d1f57d35bf582c3d99ff4dea4b18e60827f62aa640b7b43d419a3f4f478b45311d2abacfd2aa2f033c59f5c6253aa4916fc234b41eb6cc70d5eeac17c dhewm3.png"
+11957d10fd685c5b7967c6baf7e6c75e6995f76a028fa0dba75c4d596e84acb4f9ab863c0ae0b4e164483ef089111f4b3eb31fd5c770f0e77048112210b60b97 dhewm3.png
+"
diff --git a/testing/dhewm3/dhewm3.png b/testing/dhewm3/dhewm3.png
index 69ac661a806..1eeb1704958 100644
--- a/testing/dhewm3/dhewm3.png
+++ b/testing/dhewm3/dhewm3.png
Binary files differ
diff --git a/testing/dhex/APKBUILD b/testing/dhex/APKBUILD
deleted file mode 100755
index 09ca23d897c..00000000000
--- a/testing/dhex/APKBUILD
+++ /dev/null
@@ -1,40 +0,0 @@
-# Contributor: Alex Yam <alex@alexyam.com>
-# Maintainer: Alex Yam <alex@alexyam.com>
-pkgname=dhex
-pkgver=0.69
-pkgrel=0
-pkgdesc="ncurses hex editor with diff mode for binary file comparison, supports custom themes"
-url="http://www.dettus.net/dhex/"
-arch="all"
-license="GPL-2.0-or-later"
-depends="ncurses-dev"
-options="!check" # no test suite
-source="http://www.dettus.net/dhex/dhex_$pkgver.tar.gz
- http://www.dettus.net/dhex/themes/dhexrc_default
- http://www.dettus.net/dhex/themes/dhexrc_green
- http://www.dettus.net/dhex/themes/dhexrc_red
- http://www.dettus.net/dhex/themes/dhexrc_white"
-subpackages="$pkgname-doc"
-builddir="$srcdir/${pkgname}_$pkgver"
-
-build() {
- make
-}
-
-package() {
- # 'make install' is broken
- install -Dm755 dhex -t $pkgdir/usr/bin
- install -Dm644 dhex.1 -t $pkgdir/usr/share/man/man1
- install -Dm644 dhexrc.5 -t $pkgdir/usr/share/man/man5
- install -Dm644 dhex_markers.5 -t $pkgdir/usr/share/man/man5
- install -Dm644 dhex_searchlog.5 -t $pkgdir/usr/share/man/man5
- for t in dhexrc_default dhexrc_green dhexrc_red dhexrc_white; do
- install -Dm644 $srcdir/$t -t "$pkgdir"/usr/share/themes/dhex
- done
-}
-
-sha512sums="76115fd6b67bf1f61af6acfbc4dac9ac54c14aeb291de6a190aa1ffa599cf8b3e40a422ed34c237cf1f5c7406b07e38e38fb1c9c9dd36ce93d05265238060ba0 dhex_0.69.tar.gz
-88105bc3ab5b8cd8d0ee4d9fcaef8ca01abe0c2a6372d0a65c1e334c13e149292e7a753380974035518c1a96521e3e79f33476a656ca17c82254fc775df066f2 dhexrc_default
-c916a605a268cdcb645c1dc249ef9649dce9a3bed9efbabdb7f4f5142cf28ee672b74a3799bf268de9815e1a354a3b3920fc03ad3911fe9fc50064eefcc7084c dhexrc_green
-17abbd8f2afd8a663c117bbb6057ffb5f95eb1a55d206d46f8430ed62e276ac51fad0047528991750aae6ab0daf3cfebbe747c8885016602c680d693ba65a635 dhexrc_red
-a8af1c03fbc3474179fbaa3db0b98ffefccc603092b73865ea288a3373c577a9acbcb5c5aa28b75da42909de497e26070027bfe8f4b22bc1d9b8ff997c39bf22 dhexrc_white"
diff --git a/testing/diceware/APKBUILD b/testing/diceware/APKBUILD
new file mode 100644
index 00000000000..d64421a54eb
--- /dev/null
+++ b/testing/diceware/APKBUILD
@@ -0,0 +1,42 @@
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=diceware
+pkgver=0.10
+pkgrel=1
+pkgdesc="Passphrases you will remember"
+url="https://github.com/ulif/diceware"
+arch="noarch"
+license="GPL-3.0-or-later"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="https://github.com/ulif/diceware/archive/v$pkgver/diceware-$pkgver.tar.gz
+ no-pkg_resources.patch
+ "
+
+prepare() {
+ default_prepare
+
+ sed -i "s/version = .*/version = '$pkgver'/" diceware/__about__.py
+}
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+8fa8979c39ccb4b4a2de2f326794d3ea685edfb280fc24b0709a891636201d7c2206e5a804705132facf2f9c81866f32c3f950817fa5fc88cc2bf0300c62d9ba diceware-0.10.tar.gz
+9598d2576bf75933a92b003b52e38964e4949197bbdbed5edf95b605e7634fbae814d88f26fee43772f0341ef1bd2d2325d3a7638ba0d3598d308607476f7805 no-pkg_resources.patch
+"
diff --git a/testing/diceware/no-pkg_resources.patch b/testing/diceware/no-pkg_resources.patch
new file mode 100644
index 00000000000..3a41ccd5ad5
--- /dev/null
+++ b/testing/diceware/no-pkg_resources.patch
@@ -0,0 +1,247 @@
+Patch-Source: https://github.com/ulif/diceware/pull/62
+From 4e11c42940a60518f7b895ca036d461bc2bcbb91 Mon Sep 17 00:00:00 2001
+From: Hartmut Goebel <h.goebel@crazy-compilers.com>
+Date: Mon, 29 Apr 2019 10:42:12 +0200
+Subject: [PATCH 1/4] Get package version from module `__about__`.
+
+---
+ diceware/__about__.py | 1 +
+ diceware/__init__.py | 3 +--
+ setup.py | 5 ++++-
+ 3 files changed, 6 insertions(+), 3 deletions(-)
+ create mode 100644 diceware/__about__.py
+
+diff --git a/diceware/__about__.py b/diceware/__about__.py
+new file mode 100644
+index 0000000..2ed0450
+--- /dev/null
++++ b/diceware/__about__.py
+@@ -0,0 +1,6 @@
++version = "0.9.7.dev0"
++random_sources = {
++ 'system': 'diceware.random_sources:SystemRandomSource',
++ 'realdice': 'diceware.random_sources:RealDiceRandomSource',
++ # add more sources of randomness here...
++}
+diff --git a/diceware/__init__.py b/diceware/__init__.py
+index 6f00228..b0d0880 100644
+--- a/diceware/__init__.py
++++ b/diceware/__init__.py
+@@ -16,23 +16,20 @@
+ """diceware -- rememberable passphrases
+ """
+ import argparse
+-import pkg_resources
+ import sys
+ import logging
+ from errno import ENOENT
+ from random import SystemRandom
++from .__about__ import version as __version__
+ from diceware.config import get_config_dict
+ from diceware.logger import configure
+ from diceware.wordlist import (
+ WordList, get_wordlist_path, get_wordlists_dir, get_wordlist_names,
+ )
+
+-__version__ = pkg_resources.get_distribution('diceware').version
+-
+ #: Special chars inserted on demand
+ SPECIAL_CHARS = r"~!#$%^&*()-=+[]\{}:;" + r'"' + r"'<>?/0123456789"
+
+-
+ GPL_TEXT = (
+ """
+ This program is free software: you can redistribute it and/or modify
+@@ -73,10 +70,16 @@ def get_random_sources():
+ that provides a `choice(sequence)` method that works like the
+ respective method in the standard Python lib `random` module.
+ """
++ from .__about__ import random_sources
+ result = dict()
+- for entry_point in pkg_resources.iter_entry_points(
+- group="diceware_random_sources"):
+- result.update({entry_point.name: entry_point.load()})
++ for name, spec in random_sources.items():
++ module, func = spec.split(":")
++ module = __import__(module, fromlist=['__name__'], level=0)
++ try:
++ func = getattr(module, func)
++ except AttributeError as exc:
++ raise ImportError(str(exc))
++ result[name] = func
+ return result
+
+
+@@ -84,7 +87,7 @@ def handle_options(args):
+ """Handle commandline options.
+ """
+ plugins = get_random_sources()
+- random_sources = plugins.keys()
++ rnd_sources = plugins.keys()
+ wordlist_names = get_wordlist_names()
+ defaults = get_config_dict()
+ parser = argparse.ArgumentParser(
+@@ -108,11 +111,11 @@ def handle_options(args):
+ '-d', '--delimiter', default='',
+ help="Separate words by DELIMITER. Empty string by default.")
+ parser.add_argument(
+- '-r', '--randomsource', default='system', choices=random_sources,
++ '-r', '--randomsource', default='system', choices=rnd_sources,
+ metavar="SOURCE",
+ help=(
+ "Get randomness from this source. Possible values: `%s'. "
+- "Default: system" % "', `".join(sorted(random_sources))))
++ "Default: system" % "', `".join(sorted(rnd_sources))))
+ parser.add_argument(
+ '-w', '--wordlist', default=['en_eff'], choices=wordlist_names,
+ metavar="NAME", nargs='*',
+diff --git a/diceware/__main__.py b/diceware/__main__.py
+new file mode 100644
+index 0000000..031df43
+--- /dev/null
++++ b/diceware/__main__.py
+@@ -0,0 +1,2 @@
++from . import main
++main()
+diff --git a/diceware/random_sources.py b/diceware/random_sources.py
+index 72f69a7..8bc6d35 100644
+--- a/diceware/random_sources.py
++++ b/diceware/random_sources.py
+@@ -15,7 +15,7 @@
+ # along with this program. If not, see <http://www.gnu.org/licenses/>.
+ """Sources of randomness.
+
+-Please register all sources as entry point in ``setup.py``. Look out for
++Please register all sources as entry point in ``__about__.py``. Look out for
+ "SystemRandomSource" for an example.
+
+ For developers of interfaces to other sources of randomness: Currently,
+@@ -45,21 +45,15 @@ If you want to manage own commandline options with your plugin, you can
+ implement a `classmethod` called ``update_argparser(parser)`` which gets
+ an `argparse.ArgumentParser` instance as argument (no pun intended).
+
+-Finally, to register the source, add some stanza in `setup.py` of your
+-project that looks like::
++Finally, to register the source, add some stanza in `__about__.py`
++that looks like::
+
+ # ...
+- setup(
+- # ...
+- entry_points={
+- # console scripts and other entry points...
+- 'diceware_random_sources': [
+- 'myrandom = mypkg.mymodule:MyRandomSource',
+- 'myothersrc = mypkg.mymodule:MyOtherSource',
+- ],
+- },
+- # ...
+- )
++ random_sources' = {
++ # ...
++ 'myrandom': 'mypkg.mymodule:MyRandomSource',
++ 'myothersrc': 'mypkg.mymodule:MyOtherSource',
++ }
+ # ...
+
+ Here the `myrandom` and `myothersrc` lines register random sources that
+diff --git a/setup.py b/setup.py
+index 3a7228e..8a82624 100644
+--- a/setup.py
++++ b/setup.py
+@@ -2,8 +2,12 @@ import os
+ from setuptools import setup
+
+
+-def read(fname):
+- return open(os.path.join(os.path.dirname(__file__), fname)).read()
++def read(*parts):
++ with open(os.path.join(os.path.dirname(__file__), *parts)) as fp:
++ return fp.read()
++
++version = {}
++exec(read("diceware", "__about__.py"), version)
+
+
+ setup_requires = [
+@@ -27,7 +31,7 @@ docs_require = [
+
+ setup(
+ name="diceware",
+- version="0.10",
++ version=version["version"],
+ author="Uli Fouquet",
+ author_email="uli@gnufix.de",
+ description=(
+@@ -75,10 +79,5 @@ setup(
+ 'console_scripts': [
+ 'diceware = diceware:main',
+ ],
+- 'diceware_random_sources': [
+- 'system = diceware.random_sources:SystemRandomSource',
+- 'realdice = diceware.random_sources:RealDiceRandomSource',
+- # add more sources of randomness here...
+- ],
+ },
+ )
+diff --git a/tests/test_diceware.py b/tests/test_diceware.py
+index 7867101..c52bb8f 100644
+--- a/tests/test_diceware.py
++++ b/tests/test_diceware.py
+@@ -180,6 +180,14 @@ class TestDicewareModule(object):
+ assert 'system' in sources_dict
+ assert isinstance(sources_dict['system'], type)
+
++ def test_get_random_sources_non_existing(self, monkeypatch):
++ import diceware
++ monkeypatch.setattr(
++ diceware.__about__, 'random_sources',
++ {'foo': 'diceware.random_sources:NotExistingSource'})
++ with pytest.raises(ImportError):
++ get_random_sources()
++
+ def test_insert_special_char(self):
+ # we can insert special chars in words.
+ fake_rnd = FakeRandom()
+diff --git a/tests/test_random_sources.py b/tests/test_random_sources.py
+index 91f3b09..a544357 100644
+--- a/tests/test_random_sources.py
++++ b/tests/test_random_sources.py
+@@ -1,12 +1,11 @@
+ from __future__ import unicode_literals
+-import pkg_resources
+ import pytest
+ import sys
+ import argparse
+ from conftest import InputMock
+ from io import StringIO
+ from itertools import product, chain
+-from diceware import main
++from diceware import main, get_random_sources
+ from diceware.random_sources import (
+ SystemRandomSource, RealDiceRandomSource,
+ )
+@@ -38,10 +37,7 @@ class TestSystemRandomSource(object):
+ def test_registered_as_system(self):
+ # The SystemRandomInstance is registered as entry point with
+ # name 'system' in group 'diceware_random_sources'
+- sources_dict = dict()
+- for entry_point in pkg_resources.iter_entry_points(
+- group="diceware_random_sources"):
+- sources_dict.update({entry_point.name: entry_point.load()})
++ sources_dict = get_random_sources()
+ assert 'system' in sources_dict
+ assert sources_dict['system'] == SystemRandomSource
+
+@@ -110,10 +106,7 @@ class TestRealDiceRandomSource(object):
+ def test_registered_as_realdice(self):
+ # The RealDiceRandomSource is registered as entry point with
+ # name 'realdice' in group 'diceware_random_sources'
+- sources_dict = dict()
+- for entry_point in pkg_resources.iter_entry_points(
+- group="diceware_random_sources"):
+- sources_dict.update({entry_point.name: entry_point.load()})
++ sources_dict = get_random_sources()
+ assert 'realdice' in sources_dict
+ assert sources_dict['realdice'] == RealDiceRandomSource
+
diff --git a/testing/diebahn/APKBUILD b/testing/diebahn/APKBUILD
new file mode 100644
index 00000000000..3f9a83b4675
--- /dev/null
+++ b/testing/diebahn/APKBUILD
@@ -0,0 +1,42 @@
+# Contributor: Usia Bechtle <usia@bechtlebox.de>
+# Maintainer: Usia Bechtle <usia@bechtlebox.de>
+pkgname=diebahn
+pkgver=2.0.0
+pkgrel=0
+pkgdesc="GTK4 frontend for the travel information of the german railway"
+url="https://gitlab.com/schmiddi-on-mobile/railway"
+# s390x, ppc64le, riscv64: rust-ring
+arch="all !s390x !ppc64le !riscv64"
+license="GPL-3.0-or-later"
+makedepends="
+ cargo
+ desktop-file-utils
+ gtk4.0-dev
+ libadwaita-dev
+ libglibutil-dev
+ meson
+ "
+source="$pkgname-$pkgver.tar.gz::https://gitlab.com/schmiddi-on-mobile/railway/-/archive/$pkgver/railway-$pkgver.tar.gz"
+subpackages="$pkgname-lang"
+options="!check" # no tests
+builddir="$srcdir/railway-$pkgver"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+
+build() {
+ abuild-meson . output
+ meson compile -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+sha512sums="
+227650042752567bedcbef3eee1cb29dbb23b162f38934d3c51cfd2ff75ae58dbc7d3365083732b46013ba1b2d71c3f2be5d49cb7b2d96b66b6e405104516618 diebahn-2.0.0.tar.gz
+"
diff --git a/testing/difftastic/APKBUILD b/testing/difftastic/APKBUILD
deleted file mode 100644
index 65f3811f0bc..00000000000
--- a/testing/difftastic/APKBUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-# Contributor: Michał Polański <michal@polanski.me>
-# Maintainer: Michał Polański <michal@polanski.me>
-pkgname=difftastic
-pkgver=0.28.0
-pkgrel=0
-pkgdesc="Diff tool that understands syntax"
-url="https://difftastic.wilfred.me.uk/"
-license="MIT"
-arch="all !s390x !riscv64" # blocked by rust/cargo
-arch="$arch !aarch64 !armhf !armv7" # FTBFS on arm
-makedepends="cargo openssl-dev"
-source="https://github.com/Wilfred/difftastic/archive/$pkgver/difftastic-$pkgver.tar.gz"
-
-prepare() {
- default_prepare
- cargo fetch --locked
-}
-
-build() {
- cargo build --frozen --release
-}
-
-check() {
- cargo test --frozen
-}
-
-package() {
- install -Dm755 target/release/difft -t "$pkgdir"/usr/bin
-}
-
-sha512sums="
-47cdbc30abe71dac6ef84efdb934d87d5527fc8822e696bcf20424d07529cecea9e67b4d62e45e81a567064909923de2d8f09f12f1a120fbb43ec911e254521e difftastic-0.28.0.tar.gz
-"
diff --git a/testing/digikam/0001-Fix-build-with-akonadi-contacts-22.04.patch b/testing/digikam/0001-Fix-build-with-akonadi-contacts-22.04.patch
deleted file mode 100644
index a2933bc71d3..00000000000
--- a/testing/digikam/0001-Fix-build-with-akonadi-contacts-22.04.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 51efe295a222070743187af0367b0bf957879337 Mon Sep 17 00:00:00 2001
-From: Antonio Rojas <arojas@archlinux.org>
-Date: Fri, 22 Apr 2022 19:13:28 +0200
-Subject: [PATCH] Fix build with akonadi-contacts 22.04
-
----
- core/utilities/extrasupport/addressbook/akonadiiface.cpp | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/core/utilities/extrasupport/addressbook/akonadiiface.cpp b/core/utilities/extrasupport/addressbook/akonadiiface.cpp
-index 6a78863cf6..8e65a405da 100644
---- a/core/utilities/extrasupport/addressbook/akonadiiface.cpp
-+++ b/core/utilities/extrasupport/addressbook/akonadiiface.cpp
-@@ -49,7 +49,11 @@
- #include <AkonadiCore/Item>
- #endif
-
-+#if AKONADI_VERSION >= QT_VERSION_CHECK(5, 19, 80)
-+#include <Akonadi/ContactSearchJob>
-+#else
- #include <Akonadi/Contact/ContactSearchJob>
-+#endif
- #include <KContacts/Addressee>
-
- #if defined(Q_OS_DARWIN) && defined(Q_CC_CLANG)
---
-GitLab
-
diff --git a/testing/digikam/APKBUILD b/testing/digikam/APKBUILD
deleted file mode 100644
index cd3bfd36372..00000000000
--- a/testing/digikam/APKBUILD
+++ /dev/null
@@ -1,90 +0,0 @@
-# Contributor: Bart Ribbers <bribbers@disroot.org>
-# Maintainer: Bart Ribbers <bribbers@disroot.org>
-pkgname=digikam
-pkgver=7.6.0
-pkgrel=1
-pkgdesc="An advanced open-source digital photo management application"
-url="https://www.digikam.org/"
-# armhf blocked by extra-cmake-modules
-# riscv64, ppc64le and s390 blocked by akonadi-contacts, marble and opencv
-arch="all !armhf !ppc64le !s390x !riscv64"
-license="LGPL-2.1-or-later AND GPL-2.0-or-later"
-makedepends="
- akonadi-contacts-dev
- bison
- boost-dev
- doxygen
- eigen-dev
- exiv2-dev
- expat-dev
- extra-cmake-modules
- flex
- gettext
- graphviz
- imagemagick-dev
- jasper-dev
- kcalendarcore-dev
- kdoctools-dev
- kfilemetadata-dev
- lcms2-dev
- lensfun-dev
- libgphoto2-dev
- libheif-dev
- libksane-dev
- libpng-dev
- libxml2-dev
- libxslt-dev
- marble-dev
- opencv-dev
- qt5-qtxmlpatterns-dev
- samurai
- tiff-dev
- x265-dev
- "
-checkdepends="xvfb-run"
-subpackages="$pkgname-doc $pkgname-lang"
-source="https://download.kde.org/stable/digikam/$pkgver/digiKam-$pkgver.tar.xz
- 0001-Fix-build-with-akonadi-contacts-22.04.patch
- "
-
-build() {
- cmake -B build -G Ninja \
- -DCMAKE_BUILD_TYPE=MinSizeRel \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib
- cmake --build build
-}
-
-check() {
- cd build
-
- local tests="
- albums
- digikam-advancedrename
- digikam-detectblur
- digikam-dimghistorygraph
- digikam-printmetadata
- digikam-queryrevision
- digikam-setiptcpreview
- digikam-tagsreadwrite
- digikam-timestampupdate
- frequentrequests
- photos
- userinfo
- "
- local skipped_tests="("
- for test in $tests; do
- skipped_tests="$skipped_tests|$test"
- done
- skipped_tests="$skipped_tests)_utest"
- CTEST_OUTPUT_ON_FAILURE=TRUE xvfb-run ctest -E "$skipped_tests"
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-
-sha512sums="
-72cae1f36249687d2c82392b7d5bcede39364372f935a2d09ba561d0b7f51b6f9a1e6a83a8974616061a8200f3d997b96fb021a16323a2f30b404cf628188216 digiKam-7.6.0.tar.xz
-44f33f77b327f384764d74aade0567560f2f8cf34f53a9391da42ade06b08d9edc858c8b48cb0f2677dce8fa195e31d866585ee287a49a765d3fd2f8d5ed3c41 0001-Fix-build-with-akonadi-contacts-22.04.patch
-"
diff --git a/testing/ding-libs/APKBUILD b/testing/ding-libs/APKBUILD
index 4d7f3195934..07b7c009571 100644
--- a/testing/ding-libs/APKBUILD
+++ b/testing/ding-libs/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Vince Mele <vmele@inoc.com>
# Maintainer: Vince Mele <vmele@inoc.com>
pkgname=ding-libs
-pkgver=0.6.1
-pkgrel=8
+pkgver=0.6.2
+pkgrel=4
pkgdesc="'D is not GLib' utility libraries"
url="https://pagure.io/SSSD/ding-libs/"
arch="all"
@@ -13,17 +13,16 @@ depends=""
makedepends="icu-dev gettext-dev libintl"
install=""
subpackages="$pkgname-dev"
-source="https://releases.pagure.org/SSSD/$pkgname/$pkgname-$pkgver.tar.gz
+source="https://github.com/SSSD/ding-libs/releases/download/$pkgver/ding-libs-$pkgver.tar.gz
musl-fixes.patch
- path_utils_ut-allow-single-as-well.patch
"
builddir="$srcdir/$pkgname-$pkgver"
prepare() {
default_prepare
- update_config_sub
- update_config_guess
+ #update_config_sub # No update needed for ./build/config.sub
+ #update_config_guess # No update needed for ./build/config.guess
}
build() {
@@ -45,6 +44,7 @@ package() {
rm -rf $pkgdir/usr/share
}
-sha512sums="335a0925bfa7cc113e86c91ad3f2c8aac12711879d5c9b62660140a4b749335a74024c987fcd2304dd78176362997b3e0ebd745193aaffab7a368e2873118628 ding-libs-0.6.1.tar.gz
-e0333f963d32963b863d0d1f78b27d385ee909d1f118586c789814d7d63870dfc206f8cd14aee71ee95fc1a44ce01b88873a9f5b2ea3ccc2f018b1b6a1eca2a5 musl-fixes.patch
-f9b1cb90081652d286d1a0bb853c04dbd98a6b39da235bd9eb3c095631033e2d967f8d81e2284bafbf905caadc63873b96a69744939463343c677458d851cef0 path_utils_ut-allow-single-as-well.patch"
+sha512sums="
+566172e0addb0ee6e0ebd12874d3b72f2fa6bcb1ecc628c0c529984193290fae554efc40f52d2cec675bffab32a36183e47ec629db25e83ed2995f1049c64703 ding-libs-0.6.2.tar.gz
+22cdec129b19fbc7caf1c56004cd2d00197719bc1dc9835a5d74228affe947b93061ad57612a36b75032891e8e5d4d6970bbc9c6b0057659541686c76770221e musl-fixes.patch
+"
diff --git a/testing/ding-libs/musl-fixes.patch b/testing/ding-libs/musl-fixes.patch
index 6855a3b86cc..c6562abd32f 100644
--- a/testing/ding-libs/musl-fixes.patch
+++ b/testing/ding-libs/musl-fixes.patch
@@ -1,25 +1,25 @@
---- ding-libs-0.6.1/ini/ini_validators_ut_check.c
-+++ ding-libs-0.6.1-musl/ini/ini_validators_ut_check.c
-@@ -606,7 +606,7 @@
+--- a/ini/ini_validators_ut_check.c
++++ b/ini/ini_validators_ut_check.c
+@@ -608,7 +608,7 @@ START_TEST(test_ini_allowed_options_wrong_regex)
ret = strcmp(errmsg,
"[rule/options_for_foo]: Cannot compile regular expression "
"from option 'section_re'. "
- "Error: 'Unmatched [ or [^'");
+ "Error: 'Missing ']''");
- fail_unless(ret == 0, "Got msg: [%s]", errmsg);
- ini_errobj_next(errobj);
-
-@@ -1027,7 +1027,7 @@
+ if (ret != 0) {
+ ret = strcmp(errmsg,
+ "[rule/options_for_foo]: Cannot compile regular "
+@@ -1042,7 +1042,7 @@ START_TEST(test_ini_allowed_sections_wrong_regex)
errmsg = ini_errobj_get_msg(errobj);
ret = strcmp(errmsg,
"[rule/section_list]: Validator failed to use regex "
- "[^foo\\(*$]:[Unmatched ( or \\(]");
+ "[^foo\\(*$]:[Missing ')']");
- fail_unless(ret == 0, "Got msg: [%s]", errmsg);
- ini_errobj_next(errobj);
-
---- ding-libs-0.6.1/path_utils/path_utils.c
-+++ ding-libs-0.6.1-musl/path_utils/path_utils.c
+ if (ret !=0) {
+ ret = strcmp(errmsg,
+ "[rule/section_list]: Validator failed to use regex "
+--- a/path_utils/path_utils.c
++++ b/path_utils/path_utils.c
@@ -31,7 +31,7 @@
#include <stdlib.h>
#include <unistd.h>
diff --git a/testing/ding-libs/path_utils_ut-allow-single-as-well.patch b/testing/ding-libs/path_utils_ut-allow-single-as-well.patch
deleted file mode 100644
index 08cfe09b82d..00000000000
--- a/testing/ding-libs/path_utils_ut-allow-single-as-well.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 4236e323e8ab4f13770e1ac9e94666b304b693fb Mon Sep 17 00:00:00 2001
-From: Henrik Riomar <henrik.riomar@gmail.com>
-Date: Tue, 24 Jul 2018 21:59:36 +0000
-Subject: [PATCH] path_utils_ut: allow single / as well
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-From http://pubs.opengroup.org/onlinepubs/009695399/basedefs/xbd_chap03.html#tag_03_266
- Multiple successive slashes are considered to be the same as one slash.
-
-When running the tests on a musl libc system
- get_dirname(p, PATH_MAX, "//foo//")
-actually results in a / and not //
-
-Reviewed-by: Michal Židek <mzidek@redhat.com>
----
- path_utils/path_utils_ut.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/path_utils/path_utils_ut.c b/path_utils/path_utils_ut.c
-index 27c99b6..061abfb 100644
---- a/path_utils/path_utils_ut.c
-+++ b/path_utils/path_utils_ut.c
-@@ -62,7 +62,7 @@ START_TEST(test_dirname)
- fail_unless_str_equal(p, "//foo");
-
- fail_unless(get_dirname(p, PATH_MAX, "//foo//") == SUCCESS);
-- fail_unless_str_equal(p, "//");
-+ fail_unless(!strcmp(p, "/") || !strcmp(p, "//"));
-
- fail_unless(get_dirname(p, PATH_MAX, "foo//bar") == SUCCESS);
- fail_unless_str_equal(p, "foo");
---
-2.18.0
-
diff --git a/testing/dinit-alpine/APKBUILD b/testing/dinit-alpine/APKBUILD
new file mode 100644
index 00000000000..e446d4e2f57
--- /dev/null
+++ b/testing/dinit-alpine/APKBUILD
@@ -0,0 +1,27 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=dinit-alpine
+pkgver=0_git20240128
+pkgrel=0
+_commit="9a5e07defa5d830c1a9ac59214af353c017daee8"
+pkgdesc="Various dinit service files used to boot Alpine"
+url="https://gitlab.alpinelinux.org/PureTryOut/dinit-alpine"
+arch="noarch"
+license="Apache-2.0"
+depends="
+ dinit
+ findmnt
+ util-linux-login
+ "
+source="$pkgname-$_commit.tar.gz::https://gitlab.alpinelinux.org/PureTryOut/dinit-alpine/-/archive/$_commit.tar.gz"
+options="!check" # No tests
+builddir="$srcdir/$pkgname-$_commit"
+
+package() {
+ mkdir -p "$pkgdir"/lib/dinit.d
+ cp -r services/* "$pkgdir"/lib/dinit.d/
+}
+
+sha512sums="
+c7b3dc45d171e4923a8dce7cbf8b954cf8cefec768ca280f421ca8c3ad5267d6c680a33f14a8b6d356512d5ad0452e8258fbb6ce538911b0a609b01a92a29686 dinit-alpine-9a5e07defa5d830c1a9ac59214af353c017daee8.tar.gz
+"
diff --git a/testing/dinit/APKBUILD b/testing/dinit/APKBUILD
new file mode 100644
index 00000000000..d611f480c52
--- /dev/null
+++ b/testing/dinit/APKBUILD
@@ -0,0 +1,38 @@
+# Contributor: Sertonix <sertonix@posteo.net>
+# Maintainer: Sertonix <sertonix@posteo.net>
+pkgname=dinit
+pkgver=0.18.0
+pkgrel=1
+pkgdesc="Service monitoring/init system"
+url="https://github.com/davmac314/dinit"
+arch="all"
+license="Apache-2.0"
+subpackages="$pkgname-doc $pkgname-shutdown:_shutdown"
+makedepends="m4"
+source="https://github.com/davmac314/dinit/releases/download/v$pkgver/dinit-$pkgver.tar.xz"
+
+build() {
+ make BUILD_SHUTDOWN=yes SHUTDOWN_PREFIX="dinit-"
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir"/ BUILD_SHUTDOWN=yes SHUTDOWN_PREFIX="dinit-" install
+}
+
+_shutdown() {
+ pkgdesc="dinit shutdown utils"
+ depends="$pkgname"
+
+ amove sbin/dinit-shutdown
+ amove sbin/dinit-halt
+ amove sbin/dinit-reboot
+ amove sbin/dinit-poweroff
+}
+
+sha512sums="
+bacb71b35e348a73c0a082599c357d05a773680d302f9b963e109b289fa5cd4ec616f73febaa76c96075e58711ffb14d84f2c734461a171f37b827038e1f9c1b dinit-0.18.0.tar.xz
+"
diff --git a/testing/disfetch/APKBUILD b/testing/disfetch/APKBUILD
index e18fd46c2a7..9128afd8c33 100644
--- a/testing/disfetch/APKBUILD
+++ b/testing/disfetch/APKBUILD
@@ -2,19 +2,19 @@
# Contributor: Dmitry Kruchko <corg@disroot.org>
# Maintainer: Dmitry Kruchko <corg@disroot.org>
pkgname=disfetch
-pkgver=3.6
+pkgver=3.7
pkgrel=0
pkgdesc="Yet another *nix distro fetching program, but less complex"
url="https://github.com/q60/disfetch"
arch="noarch"
options="!check" # no tests
license="MIT"
-source="$pkgname-$pkgver.tar.gz::$url/archive/refs/tags/$pkgver.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/q60/disfetch/archive/refs/tags/$pkgver.tar.gz"
package() {
make DESTDIR="$pkgdir" PREFIX=/usr install
}
sha512sums="
-c9c9ad603a22532c96a891f18a1f2f38a9f52c4304c5be51ac6240754c1bb1d79ffbd48ccacae56f8b2df73a1ac91519cfd741fc15164a9f94d8c2d9cc55c9c2 disfetch-3.6.tar.gz
+6f21d1cdcc357cf4b6d0d1c37ca7d035b9c4ec959f7e5b62921d88c15b7c5dec4d0ff457867d0de75afcba2758314242bd178330ca31ede58d89ca65e41b487d disfetch-3.7.tar.gz
"
diff --git a/testing/diskonaut/APKBUILD b/testing/diskonaut/APKBUILD
index da42f86fa3c..772e8cc760a 100644
--- a/testing/diskonaut/APKBUILD
+++ b/testing/diskonaut/APKBUILD
@@ -1,21 +1,23 @@
-# Maintainer: Stacy Harper <contact@stacyharper.net>
+# Maintainer: Willow Barraco <contact@willowbarraco.fr>
pkgname=diskonaut
pkgver=0.11.0
-pkgrel=0
+pkgrel=3
pkgdesc="Terminal disk space navigator"
url="https://github.com/imsnif/diskonaut"
license="MIT"
-arch="all !aarch64 !armhf !armv7 !s390x !riscv64" # dont pass tests or limited by rust/cargo
-makedepends="cargo"
+arch="all !armhf !s390x !riscv64" # doesn't build
+makedepends="cargo cargo-auditable"
source="$pkgname-$pkgver.tar.gz::https://github.com/imsnif/diskonaut/archive/refs/tags/$pkgver.tar.gz"
+options="net"
+
prepare() {
default_prepare
- cargo fetch --locked
+ cargo fetch --target="$CTARGET" --locked
}
build() {
- cargo build --release --frozen
+ cargo auditable build --release --frozen
}
check() {
diff --git a/testing/diskus/APKBUILD b/testing/diskus/APKBUILD
index a113e6c5471..d744ef8f1fc 100644
--- a/testing/diskus/APKBUILD
+++ b/testing/diskus/APKBUILD
@@ -2,21 +2,22 @@
# Maintainer: guddaff <guddaff@protonmail.com>
pkgname=diskus
pkgver=0.7.0
-pkgrel=0
+pkgrel=1
pkgdesc="fast alternative for du"
url="https://github.com/sharkdp/diskus"
arch="all !s390x !riscv64" # limited by cargo
options="!check" #size_of_single_file test timout on armhf
license="MIT"
-makedepends="cargo"
+makedepends="cargo cargo-auditable"
source="$pkgname-$pkgdir.tar.gz::https://github.com/sharkdp/diskus/archive/refs/tags/v$pkgver.tar.gz"
+
build() {
- cargo build --release --locked
+ cargo auditable build --release --locked
}
package() {
- cargo install --locked --path . --root="$pkgdir/usr"
+ cargo auditable install --locked --path . --root="$pkgdir/usr"
rm "$pkgdir"/usr/.crates*
}
diff --git a/testing/dislocker/APKBUILD b/testing/dislocker/APKBUILD
index 6cd2d191ceb..4d9f6aa0eac 100644
--- a/testing/dislocker/APKBUILD
+++ b/testing/dislocker/APKBUILD
@@ -2,12 +2,13 @@
# Maintainer: TBK <alpine@jjtc.eu>
pkgname=dislocker
pkgver=0.7.3
-pkgrel=1
+pkgrel=5
pkgdesc="Read/write Windows BitLocker-ed volumes"
url="https://github.com/Aorimn/dislocker"
arch="all"
license="GPL-2.0-or-later"
options="!check" # No test suite
+depends="ruby"
makedepends="
cmake
fuse-dev
@@ -18,6 +19,7 @@ makedepends="
subpackages="$pkgname-doc $pkgname-libs"
source="$pkgname-$pkgver.tar.gz::https://github.com/Aorimn/dislocker/archive/v$pkgver.tar.gz
fix-build.patch
+ mbedtls-3.patch
"
build() {
@@ -35,4 +37,5 @@ package() {
sha512sums="
c62241d70d51f6445a2f6d0f08e099bbc1a4257ca98232471fc43ec63e69d62ae5f702c995ec00b7e1db7d33f4bb3a31ea05bc13862bf3b539feb301a0e034ff dislocker-0.7.3.tar.gz
7041559becbb5136d52b9494898ab3e315bdd7eddef7276e5f3f3cacd8a585718407d9fbcb9c589cc8702519d95cc4a37b6442358a5e8a3281ef5b05591295e6 fix-build.patch
+4b89b8357799fb1de5421d2b3d0390b3d39e6dda13b606120f52b6fda83a75c3d199c8cdea43cff7abb8b68d1fcb71314c108ff80b092c6f949d5564f67cd6f5 mbedtls-3.patch
"
diff --git a/testing/dislocker/mbedtls-3.patch b/testing/dislocker/mbedtls-3.patch
new file mode 100644
index 00000000000..21175456ed7
--- /dev/null
+++ b/testing/dislocker/mbedtls-3.patch
@@ -0,0 +1,23 @@
+--- a/include/dislocker/ssl_bindings.h.in
++++ b/include/dislocker/ssl_bindings.h.in
+@@ -26,18 +26,14 @@
+ /*
+ * Here stand the bindings for polarssl SHA256/SHA2/SHA-2 function for dislocker
+ */
+-#include "@POLARSSL_INC_FOLDER@/config.h"
++#include "@POLARSSL_INC_FOLDER@/mbedtls_config.h"
+ #include "@POLARSSL_INC_FOLDER@/version.h"
+ #include "@POLARSSL_INC_FOLDER@/aes.h"
+
+ // Function's name changed
+ #if defined(MBEDTLS_SHA256_C)
+ # include "mbedtls/sha256.h"
+-# if MBEDTLS_VERSION_NUMBER >= 0x02070000
+-# define SHA256(input, len, output) mbedtls_sha256_ret(input, len, output, 0)
+-# else
+-# define SHA256(input, len, output) mbedtls_sha256(input, len, output, 0)
+-# endif /* POLARSSL_VERSION_NUMBER >= 0x02070000 */
++# define SHA256(input, len, output) mbedtls_sha256(input, len, output, 0)
+ #else /* defined(MBEDTLS_SHA256_C) */
+
+ # if defined(POLARSSL_SHA256_C)
diff --git a/testing/dissent/APKBUILD b/testing/dissent/APKBUILD
new file mode 100644
index 00000000000..f0c157fa186
--- /dev/null
+++ b/testing/dissent/APKBUILD
@@ -0,0 +1,41 @@
+# Contributor: lauren n. liberda <lauren@selfisekai.rocks>
+# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
+pkgname=dissent
+pkgver=0.0.22
+pkgrel=1
+pkgdesc="Lightweight and modern Discord client"
+url="https://libdb.so/dissent"
+# riscv64: https://github.com/ianlancetaylor/cgosymbolizer/issues/20
+arch="all !riscv64"
+license="GPL-3.0-or-later"
+options="net" # go dependencies
+makedepends="
+ go
+ gobject-introspection-dev
+ gtk4.0-dev
+ libadwaita-dev
+ "
+source="
+ https://github.com/diamondburned/dissent/archive/v$pkgver/dissent-$pkgver.tar.gz
+ dissent.desktop
+ "
+
+build() {
+ go build ./main.go
+}
+
+check() {
+ # no tests yet. but sure, try
+ go test ./...
+}
+
+package() {
+ install -Dm775 main "$pkgdir"/usr/bin/"$pkgname"
+ install -Dm644 "$srcdir"/$pkgname.desktop "$pkgdir"/usr/share/applications/$pkgname.desktop
+ install -Dm644 ./internal/icons/hicolor/scalable/apps/so.libdb.dissent.svg -t "$pkgdir"/usr/share/icons/hicolor/scalable/apps/
+}
+
+sha512sums="
+dbf79c7e5cda0edd78a4793910f3d6625f038156d03b57dab9f3132cde0b86dee2b159f59e3d4fe79e13fc799789d1d9935c9a08697054812bd40c82a21cbda2 dissent-0.0.22.tar.gz
+c454be19d716d0e6a9265423e87d75af2bc7998dd953b606ddf4dcb8e31335fd0b89dec083fc8d114ee1de11ccca1f0b021c1ca2ae760f3e92de66c58dc3d485 dissent.desktop
+"
diff --git a/testing/dissent/dissent.desktop b/testing/dissent/dissent.desktop
new file mode 100644
index 00000000000..0d0f7b6383a
--- /dev/null
+++ b/testing/dissent/dissent.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Type=Application
+Name=Dissent
+Icon=so.libdb.dissent
+Exec=/usr/bin/dissent %U
+Categories=Network;InstantMessaging;Chat;VideoConference;
+Keywords=Discord;Chat;Messenger;Social
+X-Purism-FormFactor=Workstation;Mobile;
diff --git a/testing/distrobox/APKBUILD b/testing/distrobox/APKBUILD
deleted file mode 100644
index da4685d9a4e..00000000000
--- a/testing/distrobox/APKBUILD
+++ /dev/null
@@ -1,26 +0,0 @@
-# Contributor: Bart Ribbers <bribbers@disroot.org>
-# Maintainer: Bart Ribbers <bribbers@disroot.org>
-pkgname=distrobox
-pkgver=1.2.15
-pkgrel=0
-pkgdesc="Use any Linux distribution inside your terminal"
-url="https://distrobox.privatedns.org/"
-# s390x and riscv64 blocked by podman
-arch="noarch !s390x !riscv64"
-license="GPL-3.0-only"
-depends="podman"
-subpackages="$pkgname-doc"
-source="https://github.com/89luca89/distrobox/archive/$pkgver/distrobox-$pkgver.tar.gz"
-options="!check" # No tests
-
-package() {
- install -dm0755 "$pkgdir"/usr/bin
- ./install -p "$pkgdir"/usr/bin
-
- install -dm0755 "$pkgdir"/usr/share/doc/distrobox
- install -m 0644 docs/*.md "$pkgdir"/usr/share/doc/distrobox
-}
-
-sha512sums="
-d40593236138bfcad9ef138a2daf2ea84fe70d73b9f6a7250ef0cf3f5ad5ec770afb37f91fe596f0b0821996f9e8980602ab9f17ec5e9dae66d766e2efea1d5a distrobox-1.2.15.tar.gz
-"
diff --git a/testing/distrobuilder/APKBUILD b/testing/distrobuilder/APKBUILD
index 2eb915a7dd0..a66f29c07f4 100644
--- a/testing/distrobuilder/APKBUILD
+++ b/testing/distrobuilder/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Sean McAvoy <seanmcavoy@gmail.com>
pkgname=distrobuilder
pkgver=2.1
-pkgrel=1
+pkgrel=16
pkgdesc="System container image builder"
url="https://linuxcontainers.org/distrobuilder/"
arch="all !armhf !armv7"
@@ -14,20 +14,21 @@ checkdepends="squashfs-tools"
source="https://github.com/lxc/distrobuilder/archive/refs/tags/distrobuilder-$pkgver.tar.gz"
builddir="$srcdir/distrobuilder-distrobuilder-$pkgver"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+export GOFLAGS="$GOFLAGS -modcacherw"
+
build() {
- export GOPATH="$srcdir"
- GOFLAGS="$GOFLAGS -modcacherw"
- make
+ go build -o out ./distrobuilder
}
check() {
- go install -v -x github.com/remyoudompheng/go-misc/deadcode@latest
- PATH="$PATH:$GOPATH/bin"
- make check
+ go test ./...
}
package() {
- install -Dm755 $srcdir/bin/$pkgname "$pkgdir"/usr/bin/$pkgname
+ install -Dm755 out "$pkgdir"/usr/bin/$pkgname
install -Dm644 -t "$pkgdir"/usr/share/doc/distrobuilder doc/*.md
install -Dm644 -t "$pkgdir"/usr/share/doc/distrobuilder/examples doc/examples/*.yaml
}
diff --git a/testing/dive/APKBUILD b/testing/dive/APKBUILD
index 2e921f72a62..741a3b43d22 100644
--- a/testing/dive/APKBUILD
+++ b/testing/dive/APKBUILD
@@ -1,22 +1,25 @@
# Contributor: Thomas Kienlen <kommander@laposte.net>
# Maintainer: Thomas Kienlen <kommander@laposte.net>
pkgname=dive
-pkgver=0.10.0
+pkgver=0.11.0
pkgrel=5
-pkgdesc='Tool for exploring each layer in a docker image'
-url='https://github.com/wagoodman/dive'
-arch='all'
-license='MIT'
-depends='docker'
-makedepends='go'
+pkgdesc="Tool for exploring each layer in a docker image"
+url="https://github.com/wagoodman/dive"
+arch="all"
+license="MIT"
+depends="docker"
+makedepends="go"
source="https://github.com/wagoodman/dive/archive/v$pkgver/dive-$pkgver.tar.gz"
-options='chmod-clean !check' # No test suite
+options="chmod-clean !check" # No test suite
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
build() {
go build \
-trimpath \
-ldflags "
- -s -w
-X main.version=$pkgver
" \
-o bin/dive .
@@ -26,4 +29,6 @@ package() {
install -Dm755 bin/dive "$pkgdir/usr/bin/dive"
}
-sha512sums="a027d6f694acdc7680a733df2800e255db93df450704e748778860ac16a19040be855c04238c18d63b10b2042023cf3bf5e8ac9974362decd81dc0259fd0dd1c dive-0.10.0.tar.gz"
+sha512sums="
+79df3fe88d0bc5535ef6ec098cb8d8a264cf64ca353692809c0cb46f77a02edbbfb8df5848173e889b675cc00d8d7c0e5e4500198fc83d0e2f158ab7de4a0e23 dive-0.11.0.tar.gz
+"
diff --git a/testing/dk/APKBUILD b/testing/dk/APKBUILD
deleted file mode 100644
index ed60dcbb646..00000000000
--- a/testing/dk/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Contributor: Matthew T Hoare <matthew.t.hoare@gmail.com>
-# Maintainer: Matthew T Hoare <matthew.t.hoare@gmail.com>
-pkgname=dk
-pkgver=1.6
-pkgrel=0
-pkgdesc="tiling window manager taking inspiration from dwm, bspwm, and xmonad"
-url="https://bitbucket.org/natemaia/dk"
-arch="all"
-license="MIT"
-makedepends="libxcb-dev xcb-util-dev xcb-util-wm-dev xcb-util-cursor-dev xcb-util-keysyms-dev"
-options="!check" # no tests
-install="$pkgname.post-install"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://bitbucket.org/natemaia/dk/get/v$pkgver.tar.gz
- dk.desktop"
-builddir="$srcdir"/natemaia-dk-9d5cec90f346
-
-build() {
- make PREFIX=/usr
-}
-
-package() {
- make PREFIX=/usr DESTDIR="$pkgdir" install
- install -d 644 "$pkgdir"/usr/share/xsessions
- install -Dm 644 "$srcdir"/dk.desktop "$pkgdir"/usr/share/xsessions/dk.desktop
-}
-
-sha512sums="
-73b312aa57562778c2a4dfc0abef7abc8726b8e3d3b0ce9e650ad219e00669e8e9de499d5aa7a7e0e0f38d5329ed2679978664ce1693fb24db6a51489aa645c3 dk-1.6.tar.gz
-4d8e8e44b39b47621f9643708b6376178131495fde2b6a8c13d00f9f293f6b4c5adfba8f5000ce3588c86187fb4545f5f26e04b6837ac43e844b11ec28b199cb dk.desktop
-"
diff --git a/testing/dk/dk.desktop b/testing/dk/dk.desktop
deleted file mode 100644
index 09e12466fd7..00000000000
--- a/testing/dk/dk.desktop
+++ /dev/null
@@ -1,5 +0,0 @@
-[Desktop Entry]
-Name=dk
-Comment=dk tiling window manager
-Exec=dk
-Type=XSession
diff --git a/testing/dk/dk.post-install b/testing/dk/dk.post-install
deleted file mode 100644
index c3ba952d866..00000000000
--- a/testing/dk/dk.post-install
+++ /dev/null
@@ -1,14 +0,0 @@
-#!/bin/sh
-
-cat << EOF
-
- Get started with dk using the example rc files:
-
- $ mkdir -p ~/.config/dk ~/.config/sxhkd
- $ cp /usr/share/doc/dk/dkrc ~/.config/dk/
- $ cp /usr/share/doc/dk/sxhkdrc ~/.config/sxhkd/
-
- For more information, see dk(1) or
- https://bitbucket.org/natemaia/dk/src/master/README.md
-
-EOF
diff --git a/testing/dlib/APKBUILD b/testing/dlib/APKBUILD
index 43c96fb0c87..bc21b6a3dfc 100644
--- a/testing/dlib/APKBUILD
+++ b/testing/dlib/APKBUILD
@@ -1,32 +1,35 @@
# Contributor: Davis E. King <davis@dlib.net>
# Maintainer: Adriaan Groenenboom <agboom@pm.me>
pkgname=dlib
-pkgver=19.23
+pkgver=19.24.4
pkgrel=0
pkgdesc="A toolkit for making real world machine learning and data analysis applications in C++"
url="http://dlib.net"
arch="all"
license="BSL-1.0"
-makedepends="cmake openblas-dev libx11-dev libjpeg-turbo-dev libpng-dev"
-source="dlib-$pkgver.tar.bz2::https://downloads.sourceforge.net/project/dclib/dlib/v$pkgver/dlib-$pkgver.tar.bz2"
+makedepends="
+ cmake
+ libjpeg-turbo-dev
+ libpng-dev
+ libx11-dev
+ openblas-dev
+ samurai
+ "
+subpackages="$pkgname-dev"
+source="$pkgname-$pkgver.tar.gz::https://github.com/davisking/dlib/archive/refs/tags/v$pkgver.tar.gz"
build() {
- cd "$srcdir"
- mkdir -p build && cd build
- cmake \
- -DCMAKE_INSTALL_PREFIX:PATH=/usr \
- -DCMAKE_INSTALL_LIBDIR:PATH=/usr/lib \
- -DBUILD_SHARED_LIBS:BOOL=ON \
- -DCMAKE_BUILD_TYPE=None \
- "../$pkgname-$pkgver"
- make
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=None
+ cmake --build build
}
package() {
- cd "$srcdir/build"
- make DESTDIR=$pkgdir install
- install -Dm644 "../$pkgname-$pkgver/dlib/LICENSE.txt" "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+ DESTDIR=$pkgdir cmake --install build
}
+
sha512sums="
-97f1f5372ec1d69b8e7132175b01db3c3ab17ecc15430ae47add08286e0190198e130cdbd4f151c9017da5e79bba7694b8c9be62559a3bc485d288444286e627 dlib-19.23.tar.bz2
+36df942129ac00893056ca1db662a5fa655d2c8af24012df5001bed1675e9552b7b2dbec37841c21f4be60de932dc6453ea0e669a309377f8bc4cbf733da7821 dlib-19.24.4.tar.gz
"
diff --git a/testing/dma/APKBUILD b/testing/dma/APKBUILD
deleted file mode 100644
index a296c2b53b3..00000000000
--- a/testing/dma/APKBUILD
+++ /dev/null
@@ -1,48 +0,0 @@
-# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
-# Maintainer:
-pkgname=dma
-pkgver=0.13
-pkgrel=2
-pkgdesc="A small Mail Transport Agent from DragonFly BSD"
-url="https://github.com/corecode/dma"
-arch="x86_64 x86 ppc64le"
-license="BSD-3-Clause"
-makedepends="bison flex libbsd-dev bsd-compat-headers openssl-dev"
-options="suid"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/corecode/dma/archive/v$pkgver.tar.gz
- $pkgname.cron
- musl-fixes.patch"
-
-build() {
- make PREFIX=/usr
-}
-
-package() {
- make DESTDIR="$pkgdir" PREFIX=/usr install install-etc
-
- local _prog=
- for _prog in bin/mailq bin/newaliases sbin/sendmail; do
- mkdir -p "$pkgdir"/usr/${_prog%/*}
- ln -s /usr/sbin/dma "$pkgdir"/usr/$_prog
- done
-
- # Create spool directory.
- install -d -o root -g mail \
- -m 775 "$pkgdir"/var/spool/$pkgname
-
- # Install cronjob.
- install -Dm755 "$srcdir"/$pkgname.cron \
- "$pkgdir"/etc/periodic/15min/$pkgname
-
- # Install additional documentation files.
- mkdir -p "$pkgdir"/usr/share/doc/$pkgname/examples
- install -m644 README.markdown TODO \
- "$pkgdir"/usr/share/doc/$pkgname/
-}
-
-sha512sums="
-12ca04c6e67ffeead4596dcbf6bbc42547461b224a7f70e7185822b5f968c369de4c20ae7de3415a54f6eef7d4acc12d5fca5ff5851d640f3611d89a345b41ac dma-0.13.tar.gz
-5a79895fd42ffee347b979402225eb8025ea9bb41d0dc24b43d4b1e64106f1c612024456ea98e20aef4258eb8e852b370410e47d6ee34cea630dda29cc54840e dma.cron
-051af3d10711f7565fedd3a06c152454020e903e2e923a37cc77ccbf4346f308edecfe4f3d3c37a3cb2e54d1fb336bb4d9cea2a7d6dc560aec3c2369eb55e6a9 musl-fixes.patch
-"
diff --git a/testing/dma/dma.cron b/testing/dma/dma.cron
deleted file mode 100644
index d37f4f9f3c6..00000000000
--- a/testing/dma/dma.cron
+++ /dev/null
@@ -1,5 +0,0 @@
-#!/bin/sh
-# Flush the DMA queue automatically.
-
-/usr/sbin/dma -q1
-exit 0
diff --git a/testing/dma/musl-fixes.patch b/testing/dma/musl-fixes.patch
deleted file mode 100644
index bf7d805b2f4..00000000000
--- a/testing/dma/musl-fixes.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-diff -upr dma-0.11.orig/dfcompat.c dma-0.11/dfcompat.c
---- dma-0.11.orig/dfcompat.c 2016-02-29 15:33:18.153280618 +0100
-+++ dma-0.11/dfcompat.c 2016-02-29 15:33:25.749914514 +0100
-@@ -105,7 +105,7 @@ reallocf(void *ptr, size_t size)
-
- #ifndef HAVE_GETPROGNAME
-
--#ifdef __GLIBC__
-+#ifdef __linux__
-
- #include <errno.h>
-
-diff -upr dma-0.11.orig/dma.h dma-0.11/dma.h
---- dma-0.11.orig/dma.h 2016-02-29 15:33:18.153280618 +0100
-+++ dma-0.11/dma.h 2016-02-29 15:33:25.749914514 +0100
-@@ -38,7 +38,7 @@
- #define DMA_H
-
- #include <sys/types.h>
--#include <sys/queue.h>
-+#include <bsd/sys/queue.h>
- #include <sys/socket.h>
- #include <arpa/nameser.h>
- #include <arpa/inet.h>
-diff -upr dma-0.11.orig/dns.c dma-0.11/dns.c
---- dma-0.11.orig/dns.c 2016-02-29 15:33:18.153280618 +0100
-+++ dma-0.11/dns.c 2016-02-29 15:33:30.979891954 +0100
-@@ -44,6 +44,9 @@
- #include <stdlib.h>
-
- #include "dma.h"
-+#ifndef roundup
-+#define roundup(x, y) ((((x) + ((y) - 1)) / (y)) * (y))
-+#endif
-
- static int
- sort_pref(const void *a, const void *b)
diff --git a/testing/dmarc-metrics-exporter/APKBUILD b/testing/dmarc-metrics-exporter/APKBUILD
new file mode 100644
index 00000000000..f58eff44547
--- /dev/null
+++ b/testing/dmarc-metrics-exporter/APKBUILD
@@ -0,0 +1,71 @@
+# Contributor: Guy Godfroy <guy.godfroy@gugod.fr>
+# Maintainer: Guy Godfroy <guy.godfroy@gugod.fr>
+pkgname=dmarc-metrics-exporter
+pkgver=1.0.0
+pkgrel=2
+pkgdesc="Prometheus metrics exporter from DMARC reports"
+url="https://github.com/jgosmann/dmarc-metrics-exporter"
+arch="noarch !s390x"
+# s390x: because of py3-xsdata
+# see https://gitlab.alpinelinux.org/alpine/aports/-/issues/15642
+license="MIT"
+depends="
+ py3-bite-parser
+ py3-dataclasses-serialization
+ py3-prometheus-client
+ py3-structlog
+ py3-uvloop
+ py3-xsdata
+ uvicorn
+ "
+makedepends="
+ py3-gpep517
+ py3-installer
+ py3-poetry-core
+ py3-poetry-dynamic-versioning
+ py3-wheel
+ "
+checkdepends="
+ py3-aiohttp
+ py3-pytest-aiohttp
+ py3-pytest-asyncio
+ py3-pytest-forked
+ py3-requests
+ "
+install="$pkgname.pre-install"
+subpackages="$pkgname-pyc $pkgname-openrc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/jgosmann/dmarc-metrics-exporter/archive/refs/tags/v$pkgver.tar.gz
+ dmarc-metrics-exporter.initd
+ dmarc-metrics-exporter.confd
+ "
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ # need a specific running imap server
+ pytest --forked \
+ --deselect=dmarc_metrics_exporter/tests/test_imap_queue.py \
+ --deselect=dmarc_metrics_exporter/tests/test_imap_client.py \
+ --deselect=dmarc_metrics_exporter/tests/test_e2e.py::test_successful_processing_of_incoming_queue_message
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+ rm -r "$pkgdir"/usr/lib/python*/site-packages/dmarc_metrics_exporter/tests/
+
+ install -m755 -D "$srcdir"/$pkgname.initd \
+ "$pkgdir"/etc/init.d/$pkgname
+ install -m644 -D "$srcdir"/$pkgname.confd \
+ "$pkgdir"/etc/conf.d/$pkgname
+}
+
+sha512sums="
+b19c52684f411e3ce5e621c567d69153fbaf2b156ce45883dae668fc9cf8e9b565f7af173fa75c32772bc72395a9df051d1447015bca21d8df700c543a26af86 dmarc-metrics-exporter-1.0.0.tar.gz
+a067d586708eed0501687d0117ad7cbf8acb4624b161daa99a39e8fb116d2f6265fa7000425f21139c6033b88da5915f5adef7584b0708b5d190343c387cc1a5 dmarc-metrics-exporter.initd
+b5c8ef2683b8d4a0cb6b886a8acdd5e7b8e361320cdb7256f9e29960b44cad590b1a98b65cad23de22e72c33519fcb9c971b92892683ab1692e060fb0772b0df dmarc-metrics-exporter.confd
+"
diff --git a/testing/dmarc-metrics-exporter/dmarc-metrics-exporter.confd b/testing/dmarc-metrics-exporter/dmarc-metrics-exporter.confd
new file mode 100755
index 00000000000..b3b26199d80
--- /dev/null
+++ b/testing/dmarc-metrics-exporter/dmarc-metrics-exporter.confd
@@ -0,0 +1,10 @@
+# Configuration for /etc/init.d/dmarc-metrics-exporter
+
+# User (and group) to run as
+#command_user="prometheus"
+
+# Additional arguments
+#command_args=
+
+# Comment out to disable process supervisor.
+supervisor=supervise-daemon
diff --git a/testing/dmarc-metrics-exporter/dmarc-metrics-exporter.initd b/testing/dmarc-metrics-exporter/dmarc-metrics-exporter.initd
new file mode 100755
index 00000000000..0c42349a0e2
--- /dev/null
+++ b/testing/dmarc-metrics-exporter/dmarc-metrics-exporter.initd
@@ -0,0 +1,15 @@
+#!/sbin/openrc-run
+
+name="dmarc-metrics-exporter"
+
+: ${command_user:="prometheus"}
+
+command="/usr/bin/dmarc-metrics-exporter"
+command_args="$command_args"
+command_background="yes"
+pidfile="/run/$RC_SVCNAME.pid"
+
+depend() {
+ need net
+ after firewall
+}
diff --git a/testing/dmarc-metrics-exporter/dmarc-metrics-exporter.pre-install b/testing/dmarc-metrics-exporter/dmarc-metrics-exporter.pre-install
new file mode 100755
index 00000000000..f143b00e781
--- /dev/null
+++ b/testing/dmarc-metrics-exporter/dmarc-metrics-exporter.pre-install
@@ -0,0 +1,7 @@
+#!/bin/sh
+
+addgroup -S prometheus 2>/dev/null
+adduser -S -D -H -s /bin/false -G prometheus -g prometheus prometheus 2>/dev/null
+
+exit 0
+
diff --git a/testing/dmg2img/APKBUILD b/testing/dmg2img/APKBUILD
deleted file mode 100644
index 102646e8476..00000000000
--- a/testing/dmg2img/APKBUILD
+++ /dev/null
@@ -1,28 +0,0 @@
-# Contributor: Francesco Colista <fcolista@alpinelinux.org>
-# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
-pkgname=dmg2img
-pkgver=1.6.7
-pkgrel=0
-pkgdesc="A CLI tool to uncompress Apple's compressed DMG files to the HFS+ IMG format"
-url="http://vu1tur.eu.org/tools/"
-arch="all"
-license="GPL2"
-#no check/test available
-options="!check"
-makedepends="openssl-dev zlib-dev bzip2-dev"
-source="http://vu1tur.eu.org/tools/$pkgname-$pkgver.tar.gz
-openssl-compatibility.patch"
-builddir="$srcdir/$pkgname-$pkgver"
-
-build() {
- cd "$builddir"
- make PREFIX="/usr"
-}
-
-package() {
- cd "$builddir"
- make PREFIX="/usr" DESTDIR="$pkgdir" install
-}
-
-sha512sums="4c42841c5cdbf868b6038648a6c83e78d4b7f2010f7065d7b3f4c2c04d13af9489716c1dfa867aff5f3c3b3eef96dc3fc0610eff13fec139265f37f468e339e6 dmg2img-1.6.7.tar.gz
-fbddcbdfe3fa6d54b43395f6e37a64bad94342a864202854ec1dbfe1cf7e26660d2ff60b216c4f002d7fae04832b00c82c7b3f8545f0753407144abb7dda85f3 openssl-compatibility.patch"
diff --git a/testing/dmg2img/openssl-compatibility.patch b/testing/dmg2img/openssl-compatibility.patch
deleted file mode 100644
index 831da4cdb29..00000000000
--- a/testing/dmg2img/openssl-compatibility.patch
+++ /dev/null
@@ -1,219 +0,0 @@
-From f16f247d30f868e84f31e24792b4464488f1c009 Mon Sep 17 00:00:00 2001
-From: Peter Wu <peter@lekensteyn.nl>
-Date: Tue, 2 May 2017 15:53:38 +0200
-Subject: [PATCH] vfdecrypt: OpenSSL 1.1 compatibility
-
-Allocate contexts from the heap on all OpenSSL versions, this is needed
-since OpenSSL 1.1.0. No attempt is done at addressing issues like global
-variables and fixing potential memleaks on error paths.
-
-Compile-tested only with OpenSSL 1.1.0e (Arch Linux) and OpenSSL 1.0.2g
-(Ubuntu 16.04), I have no test file.
-
-Fixes https://github.com/Lekensteyn/dmg2img/issues/4
----
- vfdecrypt.c | 103 ++++++++++++++++++++++++++++++++++++++++------------
- 1 file changed, 80 insertions(+), 23 deletions(-)
-
-diff --git a/vfdecrypt.c b/vfdecrypt.c
-index 56d3530..b1a36d3 100644
---- a/vfdecrypt.c
-+++ b/vfdecrypt.c
-@@ -183,7 +183,7 @@ void adjust_v2_header_byteorder(cencrypted_v2_pwheader *pwhdr) {
- pwhdr->encrypted_keyblob_size = htonl(pwhdr->encrypted_keyblob_size);
- }
-
--HMAC_CTX hmacsha1_ctx;
-+HMAC_CTX *hmacsha1_ctx;
- AES_KEY aes_decrypt_key;
- int CHUNK_SIZE=4096; // default
-
-@@ -196,9 +196,9 @@ void compute_iv(uint32_t chunk_no, uint8_t *iv) {
- unsigned int mdLen;
-
- chunk_no = OSSwapHostToBigInt32(chunk_no);
-- HMAC_Init_ex(&hmacsha1_ctx, NULL, 0, NULL, NULL);
-- HMAC_Update(&hmacsha1_ctx, (void *) &chunk_no, sizeof(uint32_t));
-- HMAC_Final(&hmacsha1_ctx, mdResult, &mdLen);
-+ HMAC_Init_ex(hmacsha1_ctx, NULL, 0, NULL, NULL);
-+ HMAC_Update(hmacsha1_ctx, (void *) &chunk_no, sizeof(uint32_t));
-+ HMAC_Final(hmacsha1_ctx, mdResult, &mdLen);
- memcpy(iv, mdResult, CIPHER_BLOCKSIZE);
- }
-
-@@ -212,52 +212,75 @@ void decrypt_chunk(uint8_t *ctext, uint8_t *ptext, uint32_t chunk_no) {
- /* DES3-EDE unwrap operation loosely based on to RFC 2630, section 12.6
- * wrapped_key has to be 40 bytes in length. */
- int apple_des3_ede_unwrap_key(uint8_t *wrapped_key, int wrapped_key_len, uint8_t *decryptKey, uint8_t *unwrapped_key) {
-- EVP_CIPHER_CTX ctx;
-+ EVP_CIPHER_CTX *ctx;
- uint8_t *TEMP1, *TEMP2, *CEKICV;
- uint8_t IV[8] = { 0x4a, 0xdd, 0xa2, 0x2c, 0x79, 0xe8, 0x21, 0x05 };
- int outlen, tmplen, i;
-
-- EVP_CIPHER_CTX_init(&ctx);
-+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
-+ ctx = EVP_CIPHER_CTX_new();
-+#else
-+ ctx = malloc(sizeof(*ctx));
-+#endif
-+ if (!ctx) {
-+ fprintf(stderr, "Out of memory: EVP_CIPHER_CTX!\n");
-+ return(-1);
-+ }
-+
-+ EVP_CIPHER_CTX_init(ctx);
- /* result of the decryption operation shouldn't be bigger than ciphertext */
- TEMP1 = malloc(wrapped_key_len);
- TEMP2 = malloc(wrapped_key_len);
- CEKICV = malloc(wrapped_key_len);
- /* uses PKCS#7 padding for symmetric key operations by default */
-- EVP_DecryptInit_ex(&ctx, EVP_des_ede3_cbc(), NULL, decryptKey, IV);
-+ EVP_DecryptInit_ex(ctx, EVP_des_ede3_cbc(), NULL, decryptKey, IV);
-
-- if(!EVP_DecryptUpdate(&ctx, TEMP1, &outlen, wrapped_key, wrapped_key_len)) {
-+ if(!EVP_DecryptUpdate(ctx, TEMP1, &outlen, wrapped_key, wrapped_key_len)) {
- fprintf(stderr, "internal error (1) during key unwrap operation!\n");
- return(-1);
- }
-- if(!EVP_DecryptFinal_ex(&ctx, TEMP1 + outlen, &tmplen)) {
-+ if(!EVP_DecryptFinal_ex(ctx, TEMP1 + outlen, &tmplen)) {
- fprintf(stderr, "internal error (2) during key unwrap operation!\n");
- return(-1);
- }
- outlen += tmplen;
-- EVP_CIPHER_CTX_cleanup(&ctx);
-+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
-+ EVP_CIPHER_CTX_reset(ctx);
-+#else
-+ EVP_CIPHER_CTX_cleanup(ctx);
-+#endif
-
- /* reverse order of TEMP3 */
- for(i = 0; i < outlen; i++) TEMP2[i] = TEMP1[outlen - i - 1];
-
-- EVP_CIPHER_CTX_init(&ctx);
-+ EVP_CIPHER_CTX_init(ctx);
- /* uses PKCS#7 padding for symmetric key operations by default */
-- EVP_DecryptInit_ex(&ctx, EVP_des_ede3_cbc(), NULL, decryptKey, TEMP2);
-- if(!EVP_DecryptUpdate(&ctx, CEKICV, &outlen, TEMP2+8, outlen-8)) {
-+ EVP_DecryptInit_ex(ctx, EVP_des_ede3_cbc(), NULL, decryptKey, TEMP2);
-+ if(!EVP_DecryptUpdate(ctx, CEKICV, &outlen, TEMP2+8, outlen-8)) {
- fprintf(stderr, "internal error (3) during key unwrap operation!\n");
- return(-1);
- }
-- if(!EVP_DecryptFinal_ex(&ctx, CEKICV + outlen, &tmplen)) {
-+ if(!EVP_DecryptFinal_ex(ctx, CEKICV + outlen, &tmplen)) {
- fprintf(stderr, "internal error (4) during key unwrap operation!\n");
- return(-1);
- }
-
- outlen += tmplen;
-- EVP_CIPHER_CTX_cleanup(&ctx);
-+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
-+ EVP_CIPHER_CTX_reset(ctx);
-+#else
-+ EVP_CIPHER_CTX_cleanup(ctx);
-+#endif
-
- memcpy(unwrapped_key, CEKICV+4, outlen-4);
- free(TEMP1);
- free(TEMP2);
- free(CEKICV);
-+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
-+ EVP_CIPHER_CTX_free(ctx);
-+#else
-+ free(ctx);
-+#endif
- return(0);
- }
-
-@@ -279,31 +302,46 @@ int unwrap_v1_header(char *passphrase, cencrypted_v1_header *header, uint8_t *ae
- int unwrap_v2_header(char *passphrase, cencrypted_v2_pwheader *header, uint8_t *aes_key, uint8_t *hmacsha1_key) {
- /* derived key is a 3DES-EDE key */
- uint8_t derived_key[192/8];
-- EVP_CIPHER_CTX ctx;
-+ EVP_CIPHER_CTX *ctx;
- uint8_t *TEMP1;
- int outlen, tmplen;
-
-+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
-+ ctx = EVP_CIPHER_CTX_new();
-+#else
-+ ctx = malloc(sizeof(*ctx));
-+#endif
-+ if (!ctx) {
-+ fprintf(stderr, "Out of memory: EVP_CIPHER_CTX!\n");
-+ return(-1);
-+ }
-+
- PKCS5_PBKDF2_HMAC_SHA1(passphrase, strlen(passphrase), (unsigned char*)header->kdf_salt, 20,
- PBKDF2_ITERATION_COUNT, sizeof(derived_key), derived_key);
-
- print_hex(derived_key, 192/8);
-
-- EVP_CIPHER_CTX_init(&ctx);
-+ EVP_CIPHER_CTX_init(ctx);
- /* result of the decryption operation shouldn't be bigger than ciphertext */
- TEMP1 = malloc(header->encrypted_keyblob_size);
- /* uses PKCS#7 padding for symmetric key operations by default */
-- EVP_DecryptInit_ex(&ctx, EVP_des_ede3_cbc(), NULL, derived_key, header->blob_enc_iv);
-+ EVP_DecryptInit_ex(ctx, EVP_des_ede3_cbc(), NULL, derived_key, header->blob_enc_iv);
-
-- if(!EVP_DecryptUpdate(&ctx, TEMP1, &outlen, header->encrypted_keyblob, header->encrypted_keyblob_size)) {
-+ if(!EVP_DecryptUpdate(ctx, TEMP1, &outlen, header->encrypted_keyblob, header->encrypted_keyblob_size)) {
- fprintf(stderr, "internal error (1) during key unwrap operation!\n");
- return(-1);
- }
-- if(!EVP_DecryptFinal_ex(&ctx, TEMP1 + outlen, &tmplen)) {
-+ if(!EVP_DecryptFinal_ex(ctx, TEMP1 + outlen, &tmplen)) {
- fprintf(stderr, "internal error (2) during key unwrap operation!\n");
- return(-1);
- }
- outlen += tmplen;
-- EVP_CIPHER_CTX_cleanup(&ctx);
-+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
-+ EVP_CIPHER_CTX_free(ctx);
-+#else
-+ EVP_CIPHER_CTX_cleanup(ctx);
-+ free(ctx);
-+#endif
- memcpy(aes_key, TEMP1, 16);
- memcpy(hmacsha1_key, TEMP1, 20);
-
-@@ -446,8 +484,21 @@ int main(int argc, char *argv[]) {
- CHUNK_SIZE = v2header.blocksize;
- }
-
-- HMAC_CTX_init(&hmacsha1_ctx);
-- HMAC_Init_ex(&hmacsha1_ctx, hmacsha1_key, sizeof(hmacsha1_key), EVP_sha1(), NULL);
-+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
-+ hmacsha1_ctx = HMAC_CTX_new();
-+#else
-+ hmacsha1_ctx = malloc(sizeof(*hmacsha1_ctx));
-+#endif
-+ if (!hmacsha1_ctx) {
-+ fprintf(stderr, "Out of memory: HMAC CTX!\n");
-+ exit(1);
-+ }
-+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
-+ HMAC_CTX_reset(hmacsha1_ctx);
-+#else
-+ HMAC_CTX_init(hmacsha1_ctx);
-+#endif
-+ HMAC_Init_ex(hmacsha1_ctx, hmacsha1_key, sizeof(hmacsha1_key), EVP_sha1(), NULL);
- AES_set_decrypt_key(aes_key, CIPHER_KEY_LENGTH * 8, &aes_decrypt_key);
-
- if (verbose >= 1) {
-@@ -472,5 +523,11 @@ int main(int argc, char *argv[]) {
- }
-
- if (verbose) fprintf(stderr, "%"PRIX32" chunks written\n", chunk_no);
-+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
-+ HMAC_CTX_free(hmacsha1_ctx);
-+#else
-+ HMAC_CTX_cleanup(hmacsha1_ctx);
-+ free(hmacsha1_ctx);
-+#endif
- return(0);
- }
diff --git a/testing/dnscontrol/APKBUILD b/testing/dnscontrol/APKBUILD
new file mode 100644
index 00000000000..f35cf0f9e5a
--- /dev/null
+++ b/testing/dnscontrol/APKBUILD
@@ -0,0 +1,35 @@
+# Contributor: Nicolas Lorin <androw95220@gmail.com>
+# Maintainer: Nicolas Lorin <androw95220@gmail.com>
+pkgname=dnscontrol
+pkgver=4.9.0
+pkgrel=0
+pkgdesc="Synchronize your DNS to multiple providers from a simple DSL"
+url="https://stackexchange.github.io/dnscontrol/"
+arch="all"
+license="MIT"
+makedepends="go"
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/StackExchange/dnscontrol/archive/v$pkgver.tar.gz
+ dnsconfig.js"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ go build
+}
+
+check() {
+ ./dnscontrol check --config ../dnsconfig.js
+}
+
+package() {
+ install -Dm755 dnscontrol "$pkgdir"/usr/bin/dnscontrol
+ install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
+
+sha512sums="
+42dec7495e00595fb8d6ec174b45e87505a874a7f1ed286040a5ce0718cb9dee8b9a903f8c3f9f7c30a2e4e162a938b490667b397fe3ea6df79baa9df4036b58 dnscontrol-4.9.0.tar.gz
+5503f149662dcf4d8548bc7e60bf566b2c4e7580593a15cca8f344f37103f413b860f4cb25ed38a620cf650528f133e4dc4d51824993b4e314acba5308a225d4 dnsconfig.js
+"
diff --git a/testing/dnscontrol/dnsconfig.js b/testing/dnscontrol/dnsconfig.js
new file mode 100644
index 00000000000..2595cb00010
--- /dev/null
+++ b/testing/dnscontrol/dnsconfig.js
@@ -0,0 +1,9 @@
+var namecom = NewRegistrar("name.com", "NAMEDOTCOM");
+var r53 = NewDnsProvider("r53", "ROUTE53")
+
+D("example.com", namecom, DnsProvider(r53),
+ A("@", "1.2.3.4"),
+ CNAME("www","@"),
+ MX("@",5,"mail.myserver.com."),
+ A("test", "5.6.7.8")
+)
diff --git a/testing/dnscrypt-wrapper/APKBUILD b/testing/dnscrypt-wrapper/APKBUILD
index 5bec041a527..ed16f5aa118 100644
--- a/testing/dnscrypt-wrapper/APKBUILD
+++ b/testing/dnscrypt-wrapper/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Rasmus Thomsen <oss@cogitri.dev>
-# Maintainer: Rasmus Thomsen <oss@cogitri.dev>
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=dnscrypt-wrapper
pkgver=0.4.2
-pkgrel=0
+pkgrel=3
pkgdesc="dnscrypt wrapper (server-side dnscrypt proxy), which helps to add dnscrypt support to any name resolver"
url="https://github.com/Cofyc/dnscrypt-wrapper"
arch="all"
diff --git a/testing/dnsenum/APKBUILD b/testing/dnsenum/APKBUILD
index 8abe029461c..2e0a972cdc3 100644
--- a/testing/dnsenum/APKBUILD
+++ b/testing/dnsenum/APKBUILD
@@ -1,23 +1,29 @@
# Contributor: Fabian Affolter <fabian@affolter-engineering.ch>
-# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=dnsenum
-pkgver=1.2.4.2
+pkgver=1.3.1
pkgrel=0
-pkgdesc="A tool to enumerate DNS info about domains"
-url="https://github.com/fwaeytens/dnsenum"
+pkgdesc="Tool to enumerate DNS info about domains"
+url="https://github.com/SparrowOchon/dnsenum2"
arch="noarch"
license="GPL-2.0-or-later"
-depends="perl-net-ip perl-net-dns perl-net-netmask perl-xml-writer perl-string-random"
-source="$pkgname-$pkgver.tar.gz::https://github.com/fwaeytens/dnsenum/archive/$pkgver.tar.gz"
-builddir="$srcdir"/$pkgname-$pkgver
+depends="
+ perl-net-dns perl-net-ip perl-net-netmask
+ perl-string-random perl-xml-writer
+ "
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/SparrowOchon/dnsenum2/archive/v$pkgver.tar.gz"
+builddir="$srcdir/${pkgname}2-$pkgver"
+options="!check" # no tests provided
build() {
- return 0
+ make
}
package() {
- cd "$builddir"
- install -Dm755 $pkgname.pl "$pkgdir"/usr/bin/$pkgname || return 1
+ make DESTDIR="$pkgdir" INSTALL_DEPS=0 install
}
-sha512sums="c4ff6c6b6d6be0f60a3c784c259a51d51b6e0b72d1528efb8ed5ad038fd859d5884d13adb272b066f7b381a49b68ec6b507a9a94c2ca5061829051ff3adbc93b dnsenum-1.2.4.2.tar.gz"
+sha512sums="
+26cec4056ae787ee297868e58ca384946e1edb80be36b0a92beca846a8abb9be21963295cb2cc3349d9ec765b30b308f3721347d24208481c35dce371c32db97 dnsenum-1.3.1.tar.gz
+"
diff --git a/testing/dnsfunnel/APKBUILD b/testing/dnsfunnel/APKBUILD
index b7d0003a2e3..2f346d5299b 100644
--- a/testing/dnsfunnel/APKBUILD
+++ b/testing/dnsfunnel/APKBUILD
@@ -1,14 +1,14 @@
-# Maintainer: Laurent Bercot <ska-devel@skarnet.org>
# Contributor: Laurent Bercot <ska-devel@skarnet.org>
+# Maintainer: Laurent Bercot <ska-devel@skarnet.org>
pkgname=dnsfunnel
-pkgver=0.0.1.3
+pkgver=0.0.1.6
pkgrel=0
pkgdesc="A small local DNS cache daemon"
-url="https://skarnet.org/software/$pkgname/"
+url=https://skarnet.org/software/dnsfunnel/
arch="all"
license="ISC"
options="!check" # no test targets
-makedepends="skalibs-dev>=2.11 s6-dns-dev"
+makedepends="skalibs-dev>=2.14 s6-dns-dev"
subpackages="$pkgname-doc $pkgname-openrc"
source="https://skarnet.org/software/dnsfunnel/dnsfunnel-$pkgver.tar.gz
dnsfunnel.initd"
@@ -38,6 +38,6 @@ doc() {
}
sha512sums="
-8ef21653e04095f816913e65056aff97b46da8da9c8dd1e43a8742d7e77a2e2ce5e882059ff5eba7089589f4c903c8465dfdbb788ea22f247b411b191bd44d20 dnsfunnel-0.0.1.3.tar.gz
+ceecdbf268eca39ffac37d09a7f85fd799aa7fe1b15a83954bfb448f22edc53e84aab2e90d4492d6ddc7d1342e0f5889aa1bd1b16087a7d49c37ee35a8637bdb dnsfunnel-0.0.1.6.tar.gz
b34242cbf457a26770e87ea36d2d6169a42367e4a04444a48b7cae3688827c61e93aeafbd1d009b19e327db66723e9a7c161c4a0b1e27fa3746ccf1cd29a5d2e dnsfunnel.initd
"
diff --git a/testing/dnsperf/APKBUILD b/testing/dnsperf/APKBUILD
index d78175cf746..0b6bf15bd6c 100644
--- a/testing/dnsperf/APKBUILD
+++ b/testing/dnsperf/APKBUILD
@@ -1,18 +1,29 @@
# Contributor: Thomas Deutsch <thomas@tuxpeople.org>
# Maintainer: Thomas Deutsch <thomas@tuxpeople.org>
pkgname=dnsperf
-pkgver=2.9.0
+pkgver=2.14.0
pkgrel=0
pkgdesc="Dnsperf and resperf gather accurate latency and throughput metrics for DNS"
url="https://www.dns-oarc.net/tools/dnsperf"
arch="all"
license="Apache-2.0"
-makedepends="ldns-dev openssl-dev libxml2-dev libcap-dev json-c-dev krb5-dev
- protobuf-c-dev fstrm-dev ck-dev nghttp2-dev"
+makedepends="
+ ck-dev
+ fstrm-dev
+ json-c-dev
+ krb5-dev
+ ldns-dev
+ libcap-dev
+ libxml2-dev
+ nghttp2-dev
+ openssl-dev
+ protobuf-c-dev
+ "
subpackages="$pkgname-doc"
source="https://www.dns-oarc.net/files/dnsperf/dnsperf-$pkgver.tar.gz"
build() {
+ CFLAGS="$CFLAGS -flto=auto -D_BSD_SOURCE -D_POSIX_C_SOURCE=200809L" \
./configure \
--build=$CBUILD \
--host=$CHOST \
@@ -31,4 +42,6 @@ package() {
make DESTDIR="$pkgdir" install
}
-sha512sums="069dd046a8a50a7cf4cc22dc24a0152a46b9dedaad38a16abb56d6f21ac9fff06fb717dea0ccd73f26c218a875a6f2da6a06c5a44028267cdc6631fd218c68a6 dnsperf-2.9.0.tar.gz"
+sha512sums="
+ebca70071a07b2f5b2a07866c22aa9f459981f70be06047ada760bf7e53bf44c355cf964674483ce5eae736a64b9061d773a44e8c46f956525d29144ca48a9fd dnsperf-2.14.0.tar.gz
+"
diff --git a/testing/dnssec-tools/APKBUILD b/testing/dnssec-tools/APKBUILD
index 012d989942b..3aae4072992 100644
--- a/testing/dnssec-tools/APKBUILD
+++ b/testing/dnssec-tools/APKBUILD
@@ -2,13 +2,13 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=dnssec-tools
pkgver=2.2.3
-pkgrel=6
+pkgrel=10
pkgdesc="Set of tools that will help ease the deployment of DNSSEC"
url="https://dnssec-tools.org/"
arch="all"
license="BSD-3-Clause"
depends="perl-net-dns-sec perl-mailtools"
-makedepends="autoconf automake bind-dev libtool openssl-dev perl-graphviz perl-crypt-openssl-random
+makedepends="autoconf automake bind-dev libtool openssl-dev>3 perl-graphviz perl-crypt-openssl-random
perl-net-dns perl-xml-simple perl-dev sed chrpath"
source="https://github.com/DNSSEC-Tools/DNSSEC-Tools/archive/dnssec-tools-$pkgver.tar.gz"
subpackages="$pkgname-dev $pkgname-doc"
@@ -16,7 +16,6 @@ subpackages="$pkgname-dev $pkgname-doc"
builddir="${srcdir}/DNSSEC-Tools-${pkgname}-${pkgver}/${pkgname}"
prepare() {
- local pf
update_config_guess
update_config_sub
default_prepare
@@ -30,7 +29,7 @@ prepare() {
}
build() {
- CFLAGS="$CFLAGS -D_LARGEFILE64_SOURCE=1" ./configure \
+ ./configure \
--prefix=/usr \
--sysconfdir=/etc \
--mandir=/usr/share/man \
@@ -43,8 +42,10 @@ build() {
package() {
mkdir -p "$pkgdir"/usr/share/man/man1
- make DESTDIR="$pkgdir" install
+ make DESTDIR="$pkgdir" install -j1
chrpath -d "$pkgdir"/usr/bin/dt-*
}
-sha512sums="fd2467f116f77089bddf9311706f356957f4ae735d827d393534e4001b621c9dfc904ff3d4da698d37e8e97b1be9448ab2fd5455c124656399aac30f1f642baf dnssec-tools-2.2.3.tar.gz"
+sha512sums="
+fd2467f116f77089bddf9311706f356957f4ae735d827d393534e4001b621c9dfc904ff3d4da698d37e8e97b1be9448ab2fd5455c124656399aac30f1f642baf dnssec-tools-2.2.3.tar.gz
+"
diff --git a/testing/dnstap-ldns/APKBUILD b/testing/dnstap-ldns/APKBUILD
new file mode 100644
index 00000000000..6e43fd9f082
--- /dev/null
+++ b/testing/dnstap-ldns/APKBUILD
@@ -0,0 +1,41 @@
+# Contributor: Jakub Jirutka <jakub@jirutka.cz>
+# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
+pkgname=dnstap-ldns
+pkgver=0.2.1
+pkgrel=0
+pkgdesc="Reference dnstap decoding utility"
+url="https://github.com/dnstap/dnstap-ldns"
+arch="all"
+license="Apache-2.0"
+makedepends="
+ autoconf
+ automake
+ fstrm-dev
+ ldns-dev
+ protobuf-c-dev
+ "
+source="https://github.com/dnstap/dnstap-ldns/archive/v$pkgver/dnstap-ldns-$pkgver.tar.gz"
+options="!check" # no tests provided
+
+prepare() {
+ default_prepare
+ ./autogen.sh
+}
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+33040e78ffaefaa6fc996ae246b5b5341fd4ad4271a20be34bb53ccf4fd2cc96fb196a02b7a396b3cfd081e64486134baeef5b96c38143e581ff79f89806fea3 dnstap-ldns-0.2.1.tar.gz
+"
diff --git a/testing/doasedit/APKBUILD b/testing/doasedit/APKBUILD
new file mode 100644
index 00000000000..a3d8b4a5f99
--- /dev/null
+++ b/testing/doasedit/APKBUILD
@@ -0,0 +1,22 @@
+# Contributor: Rosie K Languet <rkl@rosiesworkshop.net>
+# Contributor: Hygna <hygna@proton.me>
+# Maintainer: Rosie K Languet <rkl@rosiesworkshop.net>
+pkgname=doasedit
+pkgver=1.0.7
+pkgrel=0
+pkgdesc="Shellscript to edit files that are not in a user-writable location"
+url="https://codeberg.org/TotallyLeGIT/doasedit"
+arch="noarch"
+license="MIT"
+options="!check"
+depends="cmd:doas"
+source="$pkgname-$pkgver.tar.gz::https://codeberg.org/TotallyLeGIT/doasedit/archive/$pkgver.tar.gz"
+builddir="$srcdir/$pkgname"
+
+package() {
+ install -D -m755 "doasedit" "$pkgdir/usr/bin/doasedit"
+}
+
+sha512sums="
+72100a4294469bc06ab3f356f70950e621f5b80bf66fdba096a78158050fc50338d628c87f1aae9b15273fd6e67d0e9af8c227c611a94cf93d8d24f8ea905128 doasedit-1.0.7.tar.gz
+"
diff --git a/testing/docbook2mdoc/APKBUILD b/testing/docbook2mdoc/APKBUILD
index d9d81322dfa..f32bc9c148e 100644
--- a/testing/docbook2mdoc/APKBUILD
+++ b/testing/docbook2mdoc/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer:
pkgname=docbook2mdoc
pkgver=1.1.0
-pkgrel=0
+pkgrel=1
pkgdesc="DocBook to mdoc converter"
url="https://mandoc.bsd.lv/docbook2mdoc/"
arch="all"
diff --git a/testing/docker-auth/APKBUILD b/testing/docker-auth/APKBUILD
new file mode 100644
index 00000000000..4b3d32ae8bc
--- /dev/null
+++ b/testing/docker-auth/APKBUILD
@@ -0,0 +1,43 @@
+# Maintainer: Conrad Hoffmann <ch@bitfehler.net>
+pkgname=docker-auth
+pkgver=1.11.0
+pkgrel=7
+pkgdesc="Authentication server for Docker Registry 2"
+url="https://github.com/cesanta/docker_auth"
+arch="all"
+license="Apache-2.0"
+makedepends="go"
+install="$pkgname.pre-install"
+pkgusers="docker-auth"
+pkggroups="docker-auth"
+subpackages="$pkgname-openrc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/cesanta/docker_auth/archive/refs/tags/$pkgver.tar.gz
+ $pkgname.initd
+ $pkgname.confd
+ reference-example.patch
+ "
+builddir="$srcdir/docker_auth-$pkgver"
+options="net"
+
+build() {
+ make -C auth_server VERSION="$pkgver" BUILD_ID="$pkgver@alpine" build
+}
+
+check() {
+ ./auth_server/auth_server -h
+}
+
+package() {
+ install -D -m755 auth_server/auth_server "$pkgdir"/usr/bin/$pkgname
+ install -D -m640 -o $pkgusers -g $pkggroups \
+ examples/reference.yml "$pkgdir"/etc/$pkgname/config.yml
+ install -D -m755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
+ install -D -m644 "$srcdir"/$pkgname.confd "$pkgdir"/etc/conf.d/$pkgname
+}
+
+sha512sums="
+3fcf54566ed22c9c9b5507695f5f50deb83312218820ab9a189e8ad5070f9514abb2a3888a5848f6c15fba2a3ef9b310021f24d9263600a3b54deaad30bd7ad5 docker-auth-1.11.0.tar.gz
+019969b04fca65c72f8a699814b6746885f815bebd985c706883170b15ba159b353aaa1c62524f4b43c960c183039f6f123260a820752817bfded4585330b8d1 docker-auth.initd
+fece8767508923b72d86ae106099d97cf92ab43f776fbc4ccc98fb751dff6650101df17827b51c25748052e4fc3f5e21139b84712cef0bfb6366ba8c8afcd1b9 docker-auth.confd
+c0132fe460bcfe36a0c7b16d543509516b5a0239e710cf9995809259d0112dbe408a1a6080b3b044127c2d0b48dd9a726db3f707d4073800067302282b44e016 reference-example.patch
+"
diff --git a/testing/docker-auth/docker-auth.confd b/testing/docker-auth/docker-auth.confd
new file mode 100644
index 00000000000..e5a9a748b5f
--- /dev/null
+++ b/testing/docker-auth/docker-auth.confd
@@ -0,0 +1,10 @@
+# Configuration for /etc/init.d/docker-registry
+
+# Path to the configuration file.
+cfgfile="/etc/docker-auth/config.yml"
+
+# The user and group to run docker-registry as.
+command_user="docker-auth:docker-auth"
+
+# Uncomment to run with process supervisor.
+# supervisor=supervise-daemon
diff --git a/testing/docker-auth/docker-auth.initd b/testing/docker-auth/docker-auth.initd
new file mode 100644
index 00000000000..e54a8986041
--- /dev/null
+++ b/testing/docker-auth/docker-auth.initd
@@ -0,0 +1,20 @@
+#!/sbin/openrc-run
+
+name="Docker registry authentication server"
+
+command="/usr/bin/docker-auth"
+# Without `-logtostderr=true` the daemon litters /tmp with logfiles
+command_args="-logtostderr=true $cfgfile"
+command_background="yes"
+logfile="/var/log/${RC_SVCNAME}.log"
+error_log="$logfile"
+output_log="$logfile"
+pidfile="/run/${RC_SVCNAME}.pid"
+
+required_files="$cfgfile"
+
+start_pre() {
+ if [ "$logfile" ]; then
+ checkpath -f -m 0644 -o "$command_user" "$logfile" || return 1
+ fi
+}
diff --git a/testing/docker-auth/docker-auth.pre-install b/testing/docker-auth/docker-auth.pre-install
new file mode 100644
index 00000000000..a387e9825ef
--- /dev/null
+++ b/testing/docker-auth/docker-auth.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S docker-auth 2>/dev/null
+adduser -S -D -H -h /dev/null -s /sbin/nologin -G docker-auth -g docker-auth docker-auth 2>/dev/null
+
+exit 0
diff --git a/testing/docker-auth/reference-example.patch b/testing/docker-auth/reference-example.patch
new file mode 100644
index 00000000000..4261fde3ad8
--- /dev/null
+++ b/testing/docker-auth/reference-example.patch
@@ -0,0 +1,905 @@
+diff --git a/examples/reference.yml b/examples/reference.yml
+index ce741d0..4adec43 100644
+--- a/examples/reference.yml
++++ b/examples/reference.yml
+@@ -10,452 +10,452 @@
+ # autoredirect: false
+ # rootcertbundle: "/path/to/server.pem"
+
+-server: # Server settings.
+- # Address to listen on.
+- # Can be HOST:PORT for TCP or file path (e.g. /run/docker_auth.sock) for Unix socket.
+- addr: ":5001"
+-
+- # Network, can be "tcp" or "unix" ("tcp" if unspecified).
+- net: "tcp"
+-
+- # URL path prefix to use.
+- path_prefix: ""
+-
+- # TLS options.
+- #
+- # Use specific certificate and key.
+- certificate: "/path/to/server.pem"
+- key: "/path/to/server.key"
+- #
+- # The following optional settings will fine tune TLS configuration to improve security.
+- # Leaving them unset should be just fine for most installations.
+- #
+- # Enable HTTP Strict Transport Security.
+- # hsts: true
+- #
+- # Set minimum TLS version.
+- # Values can be found at https://golang.org/pkg/crypto/tls/#pkg-constants
+- # Either the version name (i.e. TLS11) or its uint16 value can be specified.
+- # tls_min_version: TLS12
+- #
+- # List of TLS curve preferences.
+- # Values can be found at https://golang.org/pkg/crypto/tls/#CurveID
+- # Either CurveID names (i.e. P384) or uint16 values can be specified.
+- # tls_curve_preferences:
+- # - P521
+- # - 24
+- # - P256
+- #
+- # List of enabled TLS cipher suites.
+- # Values can be found at https://golang.org/pkg/crypto/tls/#pkg-constants
+- # Either CipherSuite names (i.e. TLS_RSA_WITH_RC4_128_SHA) or uint16 values can be specified.
+- # tls_cipher_suites:
+- # - TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
+- # - TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
+- # - 0xc014
+- # - 0xc00a
+-
+- # Use LetsEncrypt (https://letsencrypt.org/) to automatically obtain and maintain a certificate.
+- # Note that this only applies to server TLS certificate, this certificate will not be used for tokens
+- letsencrypt:
+- # Email is required. It will be used to register with LetsEncrypt.
+- email: webmaster@example.org
+- # Cache directory, where certificates issued by LE will be stored. Must exist.
+- # It is recommended to make it a volume mount so it persists across restarts.
+- cache_dir: /data/sslcache
+- # Normally LetsEncrypt will obtain a certificate for whichever host the client is connecting to.
+- # With this option, you can limit it to a specific host name.
+- # host: "docker.example.org"
+- # If neither certificate+key or letsencrypt are configured, the listener does not use TLS.
+-
+- # Take client's address from the specified HTTP header instead of connection.
+- # May be useful if the server is behind a proxy or load balancer.
+- # If configured, this header must be present, requests without it will be rejected.
+- # real_ip_header: "X-Forwarded-For"
+- # Optional position of client ip in X-Forwarded-For, negative starts from
+- # end of addresses.
+- # real_ip_pos: -2
+-
+-token: # Settings for the tokens.
+- issuer: "Acme auth server" # Must match issuer in the Registry config.
+- expiration: 900
+- # Token must be signed by a certificate that registry trusts, i.e. by a certificate to which a trust chain
+- # can be constructed from one of the certificates in registry's auth.token.rootcertbundle.
+- # If not specified, server's TLS certificate and key are used.
+- # certificate: "..."
+- # key: "..."
+-
+-# Authentication methods. All are tried, any one returning success is sufficient.
+-# At least one must be configured. If you want an unauthenticated public setup,
+-# configure static user map with anonymous access.
+-
+-# Static user map.
+-users:
+- # Password is specified as a BCrypt hash. Use `htpasswd -nB USERNAME` to generate.
+- "admin":
+- password: "$2y$05$LO.vzwpWC5LZGqThvEfznu8qhb5SGqvBSWY1J3yZ4AxtMRZ3kN5jC" # badmin
+- "test":
+- password: "$2y$05$WuwBasGDAgr.QCbGIjKJaep4dhxeai9gNZdmBnQXqpKly57oNutya" # 123
+- "": {} # Allow anonymous (no "docker login") access.
+-
+-# Google authentication.
+-# ==! NB: DO NOT ENTER YOUR GOOGLE PASSWORD AT "docker login". IT WILL NOT WORK.
+-# Instead, Auth server maintains a database of Google authentication tokens.
+-# Go to the server's port as HTTPS with your browser and follow the "Login with Google account" link.
+-# Once signed in, you will get a throw-away password which you can use for Docker login.
+-google_auth:
+- domain: "example.com" # Optional. If set, only logins from this domain are accepted.
+- # client_id and client_secret for API access. Required.
+- # Follow instructions here: https://developers.google.com/identity/sign-in/web/devconsole-project
+- # NB: Make sure JavaScript origins are configured correctly, and that third-party
+- # cookies are not blocked in the browser being used to login.
+- client_id: "1223123456-somethingsomething.apps.googleusercontent.com"
+- # Either client_secret or client_secret_file is required. Use client_secret_file if you don't
+- # want to have sensitive information checked in.
+- # client_secret: "verysecret"
+- client_secret_file: "/path/to/client_secret.txt"
+- # Where to store server tokens. Required.
+- token_db: "/somewhere/to/put/google_tokens.ldb"
+- # How long to wait when talking to Google servers. Optional.
+- http_timeout: 10
+-
+-# GitHub authentication.
+-# ==! NB: DO NOT ENTER YOUR GITHUB PASSWORD AT "docker login". IT WILL NOT WORK.
+-# Instead, Auth server maintains a database of GitHub authentication tokens.
+-# Go to the server's port as HTTPS with your browser and follow the "Login with GitHub account" link.
+-# Once signed in, you will get a throw-away password which you can use for Docker login.
+-github_auth:
+- organization: "acme" # Optional. If set, only logins from this organization are accepted.
+- # client_id and client_secret for API access. Required.
+- # You can register a new application here: https://github.com/settings/developers
+- # NB: Make sure JavaScript origins are configured correctly, and that third-party
+- # cookies are not blocked in the browser being used to login.
+- client_id: "1223123456"
+- # Either client_secret or client_secret_file is required. Use client_secret_file if you don't
+- # want to have sensitive information checked in.
+- # client_secret: "verysecret"
+- client_secret_file: "/path/to/client_secret.txt"
+- # Either token_db file for storing of server tokens.
+- token_db: "/somewhere/to/put/github_tokens.ldb"
+- # or google cloud storage for storing of the sensitive information,
+- gcs_token_db:
+- bucket: "tokenBucket"
+- client_secret_file: "/path/to/client_secret.json"
+- # or Redis,
+- redis_token_db:
+- redis_options:
+- # with a single instance,
+- addr: localhost:6379
+- redis_cluster_options:
+- # or in the cluster mode.
+- addrs: ["localhost:7000"]
+- # How long to wait when talking to GitHub servers. Optional.
+- http_timeout: "10s"
+- # How long to wait before revalidating the GitHub token. Optional.
+- revalidate_after: "1h"
+- # The Github Web URI in case you are using Github Enterprise.
+- # Includes the protocol, without trailing slash. Optional - defaults to: https://github.com
+- github_web_uri: "https://github.acme.com"
+- # The Github API URI in case you are using Github Enterprise.
+- # Includes the protocol, without trailing slash. - defaults to: https://api.github.com
+- github_api_uri: "https://github.acme.com/api/v3"
+- # Set an URL to display in the `docker login` command when succesfully authenticated. Optional.
+- registry_url: localhost:5000
+-
+-# OpenID Connect authentication
+-# ==! NB: DO NOT ENTER YOUR OIDC PASSWORD AT "docker login". IT WILL NOT WORK.
+-# Instead, Auth server maintains a database of OIDC authentication tokens.
+-# Go to the server's port as HTTPS with your browser and follow the "Login with OIDC account" link.
+-# Once signed in, you will get a throw-away password which you can use for Docker login.
+-oidc_auth:
+- # --- required ---
+- # The issuer URL of your OIDC provider. It has to be extendable with /.well-known/openid-configuration to request all
+- # OIDC endpoints for token and authorization requests
+- issuer: "my_issuer_url"
+- # The redirect URI which is registered for this client at your OIDC provider. It has to end with /oidc_auth.
+- redirect_url: "my_redirect_uri/oidc_auth"
+- # The client id and client secret of the client that is registered at your OIDC provider for docker_auth
+- client_id: "be4ut1fu1-cl13n7-1d"
+- client_secret: "be4ut1fu1-cl13n7-s3cr37"
+- # you can also give the client_secret in a file. Either a client_secret or a client_secret_file has to be provided
+- # client_secret_file: "/path/to/client_secret.txt"
+- #
+- # a file in which the tokens should be stored. Does not have to exist, it will be generated in this case
+- token_db: "/path/to/tokens.ldb"
+- # --- optional ---
+- # How long to wait when talking to the OIDC provider.
+- http_timeout: 10
+- # the url of the registry where you want to login. Is used to present the full docker login command.
+- registry_url: "url_of_my_beautiful_docker_registry"
+- # The claim to use for the username.
+- # Default: email
+- user_claim: email
+- # String array claims that will be used as labels.
+- label_claims:
+- - groups
+- # Default: [openid, email]
+- scopes:
+- - openid
+- - email
+-
+-
+-# Gitlab authentication.
+-# ==! NB: DO NOT ENTER YOUR Gitlab PASSWORD AT "docker login". IT WILL NOT WORK.
+-# Instead, Auth server maintains a database of Gitlab authentication tokens.
+-# Go to the server's port as HTTPS with your browser and follow the "Login with Gitlab account" link.
+-# Once signed in, you will get a throw-away password which you can use for Docker login.
+-gitlab_auth:
+- client_id: "1223123456"
+- # Either client_secret or client_secret_file is required. Use client_secret_file if you don't
+- # want to have sensitive information checked in.
+- # client_secret: "verysecret"
+- client_secret_file: "/path/to/client_secret.txt"
+- # Either token_db file for storing of server tokens.
+- token_db: "/somewhere/to/put/gitlab_tokens.ldb"
+- # or google cloud storage for storing of the sensitive information,
+- gcs_token_db:
+- bucket: "tokenBucket"
+- client_secret_file: "/path/to/client_secret.json"
+- # or Redis,
+- redis_token_db:
+- redis_options:
+- # with a single instance,
+- addr: localhost:6379
+- redis_cluster_options:
+- # or in the cluster mode.
+- addrs: ["localhost:7000"]
+- # How long to wait when talking to GitLab servers. Optional.
+- http_timeout: "10s"
+- # How long to wait before revalidating the Gitlab token. Optional.
+- revalidate_after: "1h"
+- # Includes the protocol, without trailing slash. Optional - defaults to: https://gitlab.com
+- gitlab_web_uri: "https://gitlab.com"
+- # Includes the protocol, without trailing slash. - defaults to: https://gitlab.com/api/v4
+- gitlab_api_uri: "https://gitlab.com/api/v4"
+- # Set an URL to display in the `docker login` command when successfully authenticated. Optional.
+- registry_url: localhost:5000
+- # grant_type is used for the authentication purpose. Required.
+- grant_type: "authorization_code"
+- # Redirect uri is used for the authentication purpose. Must end with '/gitlab_auth' prefix. Required.
+- redirect_uri: "https://localhost:5001/gitlab_auth"
+-
+-# LDAP authentication.
+-# Authentication is performed by first binding to the server, looking up the user entry
+-# by using the specified filter, and then re-binding using the matched DN and the password provided.
+-ldap_auth:
+- # Addr is the hostname:port or ip:port
+- addr: ldap.example.com:636
+- # Setup tls connection method to be
+- # "" or "none": the communication won't be encrypted
+- # "always": setup LDAP over SSL/TLS
+- # "starttls": sets StartTLS as the encryption method
+- tls: always
+- # set to true to allow insecure tls
+- insecure_tls_skip_verify: false
+- # set this to specify the ca certificate path
+- ca_certificate:
+- # In case bind DN and password is required for querying user information,
+- # specify them here. Plain text password is read from the file.
+- bind_dn:
+- bind_password_file:
+- # User query settings. ${account} is expanded from auth request
+- base: o=example.com
+- filter: (&(uid=${account})(objectClass=person))
+- # Labels can be mapped from LDAP attributes
+- labels:
+- # Add the user's title to a label called title
+- title:
+- attribute: title
+- # Add the user's memberOf values to a label called groups
+- groups:
+- attribute: memberOf
+- # Special handling to simplify the values to just the common name
+- parse_cn: true
+- # lower case the value
+- lower_case: true
+-
+-mongo_auth:
+- # Essentially all options are described here: https://godoc.org/gopkg.in/mgo.v2#DialInfo
+- dial_info:
+- # The MongoDB hostnames or IPs to connect to.
+- addrs: ["localhost"]
+- # The time to wait for a server to respond when first connecting and on
+- # follow up operations in the session. If timeout is zero, the call may
+- # block forever waiting for a connection to be established.
+- # (See https://golang.org/pkg/time/#ParseDuration for a format description.)
+- timeout: "10s"
+- # Database name that will be used on the MongoDB server.
+- database: "docker_auth"
+- # The username with which to connect to the MongoDB server.
+- username: ""
+- # Path to the text file with the password in it.
+- password_file: ""
+- # Enable TLS connection to MongoDB (only enable this if your server supports it)
+- enable_tls: false
+- # Name of the collection in which ACLs will be stored in MongoDB.
+- collection: "users"
+- # Unlike acl_mongo we don't cache the full user set. We just query mongo for
+- # an exact match for each authorization
+-
+-xorm_auth:
+- # the database type you'd like to connect to
+- database_type: "mysql"
+- # the connection string to connect to the database
+- conn_string: "username:password@/database_name?charset=utf8"
+-
+-# External authentication - call an external progam to authenticate user.
+-# Username and password are passed to command's stdin and exit code is examined.
+-# 0 - allow, 1 - deny, 2 - no match, other - error.
+-# In case of success, if any output is returned, it is parsed as a JSON object.
+-# The "labels" key may contain labels to be passed down to authz, where they can
+-# be used in matching. See ext_auth.sh for an example.
+-ext_auth:
+- command: "/usr/local/bin/my_auth" # Can be a relative path too; $PATH works.
+- args: ["--flag", "--more", "--flags"]
+-
+-# User written authentication plugin - call a user written program to authenticate user.
+-# Username of type string and password of authn.PasswordString is passed to the plugin
+-# Expects a boolean value whether the user is authenticate or not, authn.Labels, error
+-# The "labels" key may contain labels to be passed down to authz, where they can
+-# be used in matching.
+-plugin_authn:
+- plugin_path: ""
+-
+-# Authorization methods. All are tried, any one returning success is sufficient.
+-# At least one must be configured.
+-
+-# ACL specifies who can do what. If the match section of an entry matches the
+-# request, the set of allowed actions will be applied to the token request
+-# and a ticket will be issued only for those of the requested actions that are
+-# allowed by the rule.
+-# * It is possible to match on user's name ("account"), subject type ("type")
+-# and name ("name"; for type=repository this is the image name).
+-# * Matches are evaluated as shell file name patterns ("globs") by default,
+-# so "foobar", "f??bar", "f*bar" are all valid. For even more flexibility
+-# match patterns can be evaluated as regexes by enclosing them in //, e.g.
+-# "/(foo|bar)/".
+-# * IP match can be single IP address or a subnet in the "prefix/mask" notation.
+-# * ACL is evaluated in the order it is defined until a match is found.
+-# Rules below the first match are not evaluated, so you'll need to put more
+-# specific rules above more broad ones.
+-# * Empty match clause matches anything, it only makes sense at the end of the
+-# list and can be used as a way of specifying default permissions.
+-# * Empty actions set means "deny everything". Thus, a rule with `actions: []`
+-# is in effect a "deny" rule.
+-# * A special set consisting of a single "*" action means "allow everything".
+-# * If no match is found the default is to deny the request.
++#server: # Server settings.
++# # Address to listen on.
++# # Can be HOST:PORT for TCP or file path (e.g. /run/docker_auth.sock) for Unix socket.
++# addr: ":5001"
++#
++# # Network, can be "tcp" or "unix" ("tcp" if unspecified).
++# net: "tcp"
++#
++# # URL path prefix to use.
++# path_prefix: ""
++#
++# # TLS options.
++# #
++# # Use specific certificate and key.
++# certificate: "/path/to/server.pem"
++# key: "/path/to/server.key"
++# #
++# # The following optional settings will fine tune TLS configuration to improve security.
++# # Leaving them unset should be just fine for most installations.
++# #
++# # Enable HTTP Strict Transport Security.
++# # hsts: true
++# #
++# # Set minimum TLS version.
++# # Values can be found at https://golang.org/pkg/crypto/tls/#pkg-constants
++# # Either the version name (i.e. TLS11) or its uint16 value can be specified.
++# # tls_min_version: TLS12
++# #
++# # List of TLS curve preferences.
++# # Values can be found at https://golang.org/pkg/crypto/tls/#CurveID
++# # Either CurveID names (i.e. P384) or uint16 values can be specified.
++# # tls_curve_preferences:
++# # - P521
++# # - 24
++# # - P256
++# #
++# # List of enabled TLS cipher suites.
++# # Values can be found at https://golang.org/pkg/crypto/tls/#pkg-constants
++# # Either CipherSuite names (i.e. TLS_RSA_WITH_RC4_128_SHA) or uint16 values can be specified.
++# # tls_cipher_suites:
++# # - TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
++# # - TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
++# # - 0xc014
++# # - 0xc00a
++#
++# # Use LetsEncrypt (https://letsencrypt.org/) to automatically obtain and maintain a certificate.
++# # Note that this only applies to server TLS certificate, this certificate will not be used for tokens
++# letsencrypt:
++# # Email is required. It will be used to register with LetsEncrypt.
++# email: webmaster@example.org
++# # Cache directory, where certificates issued by LE will be stored. Must exist.
++# # It is recommended to make it a volume mount so it persists across restarts.
++# cache_dir: /data/sslcache
++# # Normally LetsEncrypt will obtain a certificate for whichever host the client is connecting to.
++# # With this option, you can limit it to a specific host name.
++# # host: "docker.example.org"
++# # If neither certificate+key or letsencrypt are configured, the listener does not use TLS.
++#
++# # Take client's address from the specified HTTP header instead of connection.
++# # May be useful if the server is behind a proxy or load balancer.
++# # If configured, this header must be present, requests without it will be rejected.
++# # real_ip_header: "X-Forwarded-For"
++# # Optional position of client ip in X-Forwarded-For, negative starts from
++# # end of addresses.
++# # real_ip_pos: -2
++#
++#token: # Settings for the tokens.
++# issuer: "Acme auth server" # Must match issuer in the Registry config.
++# expiration: 900
++# # Token must be signed by a certificate that registry trusts, i.e. by a certificate to which a trust chain
++# # can be constructed from one of the certificates in registry's auth.token.rootcertbundle.
++# # If not specified, server's TLS certificate and key are used.
++# # certificate: "..."
++# # key: "..."
++#
++## Authentication methods. All are tried, any one returning success is sufficient.
++## At least one must be configured. If you want an unauthenticated public setup,
++## configure static user map with anonymous access.
++#
++## Static user map.
++#users:
++# # Password is specified as a BCrypt hash. Use `htpasswd -nB USERNAME` to generate.
++# "admin":
++# password: "$2y$05$LO.vzwpWC5LZGqThvEfznu8qhb5SGqvBSWY1J3yZ4AxtMRZ3kN5jC" # badmin
++# "test":
++# password: "$2y$05$WuwBasGDAgr.QCbGIjKJaep4dhxeai9gNZdmBnQXqpKly57oNutya" # 123
++# "": {} # Allow anonymous (no "docker login") access.
++#
++## Google authentication.
++## ==! NB: DO NOT ENTER YOUR GOOGLE PASSWORD AT "docker login". IT WILL NOT WORK.
++## Instead, Auth server maintains a database of Google authentication tokens.
++## Go to the server's port as HTTPS with your browser and follow the "Login with Google account" link.
++## Once signed in, you will get a throw-away password which you can use for Docker login.
++#google_auth:
++# domain: "example.com" # Optional. If set, only logins from this domain are accepted.
++# # client_id and client_secret for API access. Required.
++# # Follow instructions here: https://developers.google.com/identity/sign-in/web/devconsole-project
++# # NB: Make sure JavaScript origins are configured correctly, and that third-party
++# # cookies are not blocked in the browser being used to login.
++# client_id: "1223123456-somethingsomething.apps.googleusercontent.com"
++# # Either client_secret or client_secret_file is required. Use client_secret_file if you don't
++# # want to have sensitive information checked in.
++# # client_secret: "verysecret"
++# client_secret_file: "/path/to/client_secret.txt"
++# # Where to store server tokens. Required.
++# token_db: "/somewhere/to/put/google_tokens.ldb"
++# # How long to wait when talking to Google servers. Optional.
++# http_timeout: 10
++#
++## GitHub authentication.
++## ==! NB: DO NOT ENTER YOUR GITHUB PASSWORD AT "docker login". IT WILL NOT WORK.
++## Instead, Auth server maintains a database of GitHub authentication tokens.
++## Go to the server's port as HTTPS with your browser and follow the "Login with GitHub account" link.
++## Once signed in, you will get a throw-away password which you can use for Docker login.
++#github_auth:
++# organization: "acme" # Optional. If set, only logins from this organization are accepted.
++# # client_id and client_secret for API access. Required.
++# # You can register a new application here: https://github.com/settings/developers
++# # NB: Make sure JavaScript origins are configured correctly, and that third-party
++# # cookies are not blocked in the browser being used to login.
++# client_id: "1223123456"
++# # Either client_secret or client_secret_file is required. Use client_secret_file if you don't
++# # want to have sensitive information checked in.
++# # client_secret: "verysecret"
++# client_secret_file: "/path/to/client_secret.txt"
++# # Either token_db file for storing of server tokens.
++# token_db: "/somewhere/to/put/github_tokens.ldb"
++# # or google cloud storage for storing of the sensitive information,
++# gcs_token_db:
++# bucket: "tokenBucket"
++# client_secret_file: "/path/to/client_secret.json"
++# # or Redis,
++# redis_token_db:
++# redis_options:
++# # with a single instance,
++# addr: localhost:6379
++# redis_cluster_options:
++# # or in the cluster mode.
++# addrs: ["localhost:7000"]
++# # How long to wait when talking to GitHub servers. Optional.
++# http_timeout: "10s"
++# # How long to wait before revalidating the GitHub token. Optional.
++# revalidate_after: "1h"
++# # The Github Web URI in case you are using Github Enterprise.
++# # Includes the protocol, without trailing slash. Optional - defaults to: https://github.com
++# github_web_uri: "https://github.acme.com"
++# # The Github API URI in case you are using Github Enterprise.
++# # Includes the protocol, without trailing slash. - defaults to: https://api.github.com
++# github_api_uri: "https://github.acme.com/api/v3"
++# # Set an URL to display in the `docker login` command when succesfully authenticated. Optional.
++# registry_url: localhost:5000
++#
++## OpenID Connect authentication
++## ==! NB: DO NOT ENTER YOUR OIDC PASSWORD AT "docker login". IT WILL NOT WORK.
++## Instead, Auth server maintains a database of OIDC authentication tokens.
++## Go to the server's port as HTTPS with your browser and follow the "Login with OIDC account" link.
++## Once signed in, you will get a throw-away password which you can use for Docker login.
++#oidc_auth:
++# # --- required ---
++# # The issuer URL of your OIDC provider. It has to be extendable with /.well-known/openid-configuration to request all
++# # OIDC endpoints for token and authorization requests
++# issuer: "my_issuer_url"
++# # The redirect URI which is registered for this client at your OIDC provider. It has to end with /oidc_auth.
++# redirect_url: "my_redirect_uri/oidc_auth"
++# # The client id and client secret of the client that is registered at your OIDC provider for docker_auth
++# client_id: "be4ut1fu1-cl13n7-1d"
++# client_secret: "be4ut1fu1-cl13n7-s3cr37"
++# # you can also give the client_secret in a file. Either a client_secret or a client_secret_file has to be provided
++# # client_secret_file: "/path/to/client_secret.txt"
++# #
++# # a file in which the tokens should be stored. Does not have to exist, it will be generated in this case
++# token_db: "/path/to/tokens.ldb"
++# # --- optional ---
++# # How long to wait when talking to the OIDC provider.
++# http_timeout: 10
++# # the url of the registry where you want to login. Is used to present the full docker login command.
++# registry_url: "url_of_my_beautiful_docker_registry"
++# # The claim to use for the username.
++# # Default: email
++# user_claim: email
++# # String array claims that will be used as labels.
++# label_claims:
++# - groups
++# # Default: [openid, email]
++# scopes:
++# - openid
++# - email
++#
++#
++## Gitlab authentication.
++## ==! NB: DO NOT ENTER YOUR Gitlab PASSWORD AT "docker login". IT WILL NOT WORK.
++## Instead, Auth server maintains a database of Gitlab authentication tokens.
++## Go to the server's port as HTTPS with your browser and follow the "Login with Gitlab account" link.
++## Once signed in, you will get a throw-away password which you can use for Docker login.
++#gitlab_auth:
++# client_id: "1223123456"
++# # Either client_secret or client_secret_file is required. Use client_secret_file if you don't
++# # want to have sensitive information checked in.
++# # client_secret: "verysecret"
++# client_secret_file: "/path/to/client_secret.txt"
++# # Either token_db file for storing of server tokens.
++# token_db: "/somewhere/to/put/gitlab_tokens.ldb"
++# # or google cloud storage for storing of the sensitive information,
++# gcs_token_db:
++# bucket: "tokenBucket"
++# client_secret_file: "/path/to/client_secret.json"
++# # or Redis,
++# redis_token_db:
++# redis_options:
++# # with a single instance,
++# addr: localhost:6379
++# redis_cluster_options:
++# # or in the cluster mode.
++# addrs: ["localhost:7000"]
++# # How long to wait when talking to GitLab servers. Optional.
++# http_timeout: "10s"
++# # How long to wait before revalidating the Gitlab token. Optional.
++# revalidate_after: "1h"
++# # Includes the protocol, without trailing slash. Optional - defaults to: https://gitlab.com
++# gitlab_web_uri: "https://gitlab.com"
++# # Includes the protocol, without trailing slash. - defaults to: https://gitlab.com/api/v4
++# gitlab_api_uri: "https://gitlab.com/api/v4"
++# # Set an URL to display in the `docker login` command when successfully authenticated. Optional.
++# registry_url: localhost:5000
++# # grant_type is used for the authentication purpose. Required.
++# grant_type: "authorization_code"
++# # Redirect uri is used for the authentication purpose. Must end with '/gitlab_auth' prefix. Required.
++# redirect_uri: "https://localhost:5001/gitlab_auth"
++#
++## LDAP authentication.
++## Authentication is performed by first binding to the server, looking up the user entry
++## by using the specified filter, and then re-binding using the matched DN and the password provided.
++#ldap_auth:
++# # Addr is the hostname:port or ip:port
++# addr: ldap.example.com:636
++# # Setup tls connection method to be
++# # "" or "none": the communication won't be encrypted
++# # "always": setup LDAP over SSL/TLS
++# # "starttls": sets StartTLS as the encryption method
++# tls: always
++# # set to true to allow insecure tls
++# insecure_tls_skip_verify: false
++# # set this to specify the ca certificate path
++# ca_certificate:
++# # In case bind DN and password is required for querying user information,
++# # specify them here. Plain text password is read from the file.
++# bind_dn:
++# bind_password_file:
++# # User query settings. ${account} is expanded from auth request
++# base: o=example.com
++# filter: (&(uid=${account})(objectClass=person))
++# # Labels can be mapped from LDAP attributes
++# labels:
++# # Add the user's title to a label called title
++# title:
++# attribute: title
++# # Add the user's memberOf values to a label called groups
++# groups:
++# attribute: memberOf
++# # Special handling to simplify the values to just the common name
++# parse_cn: true
++# # lower case the value
++# lower_case: true
++#
++#mongo_auth:
++# # Essentially all options are described here: https://godoc.org/gopkg.in/mgo.v2#DialInfo
++# dial_info:
++# # The MongoDB hostnames or IPs to connect to.
++# addrs: ["localhost"]
++# # The time to wait for a server to respond when first connecting and on
++# # follow up operations in the session. If timeout is zero, the call may
++# # block forever waiting for a connection to be established.
++# # (See https://golang.org/pkg/time/#ParseDuration for a format description.)
++# timeout: "10s"
++# # Database name that will be used on the MongoDB server.
++# database: "docker_auth"
++# # The username with which to connect to the MongoDB server.
++# username: ""
++# # Path to the text file with the password in it.
++# password_file: ""
++# # Enable TLS connection to MongoDB (only enable this if your server supports it)
++# enable_tls: false
++# # Name of the collection in which ACLs will be stored in MongoDB.
++# collection: "users"
++# # Unlike acl_mongo we don't cache the full user set. We just query mongo for
++# # an exact match for each authorization
++#
++#xorm_auth:
++# # the database type you'd like to connect to
++# database_type: "mysql"
++# # the connection string to connect to the database
++# conn_string: "username:password@/database_name?charset=utf8"
++#
++## External authentication - call an external progam to authenticate user.
++## Username and password are passed to command's stdin and exit code is examined.
++## 0 - allow, 1 - deny, 2 - no match, other - error.
++## In case of success, if any output is returned, it is parsed as a JSON object.
++## The "labels" key may contain labels to be passed down to authz, where they can
++## be used in matching. See ext_auth.sh for an example.
++#ext_auth:
++# command: "/usr/local/bin/my_auth" # Can be a relative path too; $PATH works.
++# args: ["--flag", "--more", "--flags"]
++#
++## User written authentication plugin - call a user written program to authenticate user.
++## Username of type string and password of authn.PasswordString is passed to the plugin
++## Expects a boolean value whether the user is authenticate or not, authn.Labels, error
++## The "labels" key may contain labels to be passed down to authz, where they can
++## be used in matching.
++#plugin_authn:
++# plugin_path: ""
++#
++## Authorization methods. All are tried, any one returning success is sufficient.
++## At least one must be configured.
++#
++## ACL specifies who can do what. If the match section of an entry matches the
++## request, the set of allowed actions will be applied to the token request
++## and a ticket will be issued only for those of the requested actions that are
++## allowed by the rule.
++## * It is possible to match on user's name ("account"), subject type ("type")
++## and name ("name"; for type=repository this is the image name).
++## * Matches are evaluated as shell file name patterns ("globs") by default,
++## so "foobar", "f??bar", "f*bar" are all valid. For even more flexibility
++## match patterns can be evaluated as regexes by enclosing them in //, e.g.
++## "/(foo|bar)/".
++## * IP match can be single IP address or a subnet in the "prefix/mask" notation.
++## * ACL is evaluated in the order it is defined until a match is found.
++## Rules below the first match are not evaluated, so you'll need to put more
++## specific rules above more broad ones.
++## * Empty match clause matches anything, it only makes sense at the end of the
++## list and can be used as a way of specifying default permissions.
++## * Empty actions set means "deny everything". Thus, a rule with `actions: []`
++## is in effect a "deny" rule.
++## * A special set consisting of a single "*" action means "allow everything".
++## * If no match is found the default is to deny the request.
++##
++## You can use the following variables from the ticket request in any field:
++## * ${account} - the account name, currently the same as authenticated user's name.
++## * ${service} - the service name, specified by auth.token.service in the registry config.
++## * ${type} - the type of the entity, normally "repository".
++## * ${name} - the name of the repository (i.e. image), e.g. centos.
++## * ${labels:<LABEL>} - tests all values in the list of lables:<LABEL> for the user. Refer to the labels doc for details
++#acl:
++# - match: {ip: "127.0.0.0/8"}
++# actions: ["*"]
++# comment: "Allow everything from localhost (IPv4)"
++# - match: {ip: "::1"}
++# actions: ["*"]
++# comment: "Allow everything from localhost (IPv6)"
++# - match: {ip: "172.17.0.1"}
++# actions: ["*"]
++# comment: "Allow everything from the local Docker bridge address"
++# - match: {account: "admin"}
++# actions: ["*"]
++# comment: "Admin has full access to everything."
++# - match: {account: "test", name: "test-*"}
++# actions: ["*"]
++# comment: "User \"test\" has full access to test-* images but nothing else. (1)"
++# - match: {account: "test"}
++# actions: []
++# comment: "User \"test\" has full access to test-* images but nothing else. (2)"
++# - match: {account: "/.+/", name: "${account}/*"}
++# actions: ["*"]
++# comment: "Logged in users have full access to images that are in their 'namespace'"
++# - match: {account: "/.+/", type: "registry", name: "catalog"}
++# actions: ["*"]
++# comment: "Logged in users can query the catalog."
++# - match: {account: "/.+/"}
++# actions: ["pull"]
++# comment: "Logged in users can pull all images."
++# - match: {account: "", name: "hello-world"}
++# actions: ["pull"]
++# comment: "Anonymous users can pull \"hello-world\"."
++# - match: {account: "/^(.+)@test.com$/", name: "${account:1}/*"}
++# actions: []
++# comment: "Emit domain part of account to make it a correct repo name"
++# - match: {labels: {"group": "VIP"}}
++# actions: ["push"]
++# comment: "Users assigned to group 'VIP' is able to push"
++# - match: {labels: {"group": "/trainee|dev/"}}
++# actions: ["push", "pull"]
++# comment: "Users assigned to group 'trainee' and 'dev' is able to push and pull"
++# - match: {name: "${labels:group}-shared/*"}
++# actions: ["push", "pull"]
++# comment: "Users can push to the shared namespace of any group they are in"
++# - match: {name: "${labels:project}/*"}
++# actions: ["push", "pull"]
++# comment: "Users can push to any project they are assigned to"
++# - match: {name: "${labels:project}-{labels:tier}/*"}
++# actions: ["push", "pull"]
++# comment: "Users can push to a project-tier/* that they are assigned to"
++# - match: {labels: {"title": "Developer"}}
++# actions: ["*"]
++# comment: "If you call yourself a developer you can do anything (this ACL is an example for LDAP labels as defined above)"
++# - match: {labels: {"groups": "Admin"}}
++# actions: ["push"]
++# comment: "If you are part of the admin group you can push. (this ACL is an example for LDAP labels as defined above)"
++# # Access is denied by default.
++#
++## (optional) Define to query ACL from a MongoDB server.
++#acl_mongo:
++# # Essentially all options are described here: https://godoc.org/gopkg.in/mgo.v2#DialInfo
++# dial_info:
++# # The MongoDB hostnames or IPs to connect to.
++# addrs: ["localhost"]
++# # The time to wait for a server to respond when first connecting and on
++# # follow up operations in the session. If timeout is zero, the call may
++# # block forever waiting for a connection to be established.
++# # (See https://golang.org/pkg/time/#ParseDuration for a format description.)
++# timeout: "10s"
++# # Database name that will be used on the MongoDB server.
++# database: "docker_auth"
++# # The username with which to connect to the MongoDB server.
++# username: ""
++# # Path to the text file with the password in it.
++# password_file: ""
++# # Enable TLS connection to MongoDB (only enable this if your server supports it)
++# enable_tls: false
++# # Name of the collection in which ACLs will be stored in MongoDB.
++# collection: "acl"
++# # Specify how long an ACL remains valid before they will be fetched again from
++# # the MongoDB server.
++# # (See https://golang.org/pkg/time/#ParseDuration for a format description.)
++# cache_ttl: "1m"
++#
++## (optional) Define to query ACL from a XORM.io database connection.
++#acl_xorm:
++# # the database type you'd like to connect to
++# database_type: "mysql"
++# conn_string: "username:password@/database_name?charset=utf8"
++# cache_ttl: "1m"
++#
++## (optioinal) Use casbin to verify permission
++#casbin_authz:
++# model_path: "path/to/model"
++# policy_path: "path/to/csv"
++#
++## External authorization - call an external progam to authorize user.
++## JSON of authz.AuthRequestInfo is passed to command's stdin and exit code is examined.
++## 0 - allow, 1 - deny, other - error.
++#ext_authz:
++# command: "/usr/local/bin/my_authz" # Can be a relative path too; $PATH works.
++# args: ["--flag", "--more", "--flags"]
++#
++## User written authorization plugin - call a user written program to authorize user.
++## *authz.AuthRequestInfo is passed to the plugin and expects an authorized set of actions or an error.
++## return the set of authorized actions is the user is authorized. Otherwise return nil
++#plugin_authz:
++# plugin_path: ""
+ #
+-# You can use the following variables from the ticket request in any field:
+-# * ${account} - the account name, currently the same as authenticated user's name.
+-# * ${service} - the service name, specified by auth.token.service in the registry config.
+-# * ${type} - the type of the entity, normally "repository".
+-# * ${name} - the name of the repository (i.e. image), e.g. centos.
+-# * ${labels:<LABEL>} - tests all values in the list of lables:<LABEL> for the user. Refer to the labels doc for details
+-acl:
+- - match: {ip: "127.0.0.0/8"}
+- actions: ["*"]
+- comment: "Allow everything from localhost (IPv4)"
+- - match: {ip: "::1"}
+- actions: ["*"]
+- comment: "Allow everything from localhost (IPv6)"
+- - match: {ip: "172.17.0.1"}
+- actions: ["*"]
+- comment: "Allow everything from the local Docker bridge address"
+- - match: {account: "admin"}
+- actions: ["*"]
+- comment: "Admin has full access to everything."
+- - match: {account: "test", name: "test-*"}
+- actions: ["*"]
+- comment: "User \"test\" has full access to test-* images but nothing else. (1)"
+- - match: {account: "test"}
+- actions: []
+- comment: "User \"test\" has full access to test-* images but nothing else. (2)"
+- - match: {account: "/.+/", name: "${account}/*"}
+- actions: ["*"]
+- comment: "Logged in users have full access to images that are in their 'namespace'"
+- - match: {account: "/.+/", type: "registry", name: "catalog"}
+- actions: ["*"]
+- comment: "Logged in users can query the catalog."
+- - match: {account: "/.+/"}
+- actions: ["pull"]
+- comment: "Logged in users can pull all images."
+- - match: {account: "", name: "hello-world"}
+- actions: ["pull"]
+- comment: "Anonymous users can pull \"hello-world\"."
+- - match: {account: "/^(.+)@test.com$/", name: "${account:1}/*"}
+- actions: []
+- comment: "Emit domain part of account to make it a correct repo name"
+- - match: {labels: {"group": "VIP"}}
+- actions: ["push"]
+- comment: "Users assigned to group 'VIP' is able to push"
+- - match: {labels: {"group": "/trainee|dev/"}}
+- actions: ["push", "pull"]
+- comment: "Users assigned to group 'trainee' and 'dev' is able to push and pull"
+- - match: {name: "${labels:group}-shared/*"}
+- actions: ["push", "pull"]
+- comment: "Users can push to the shared namespace of any group they are in"
+- - match: {name: "${labels:project}/*"}
+- actions: ["push", "pull"]
+- comment: "Users can push to any project they are assigned to"
+- - match: {name: "${labels:project}-{labels:tier}/*"}
+- actions: ["push", "pull"]
+- comment: "Users can push to a project-tier/* that they are assigned to"
+- - match: {labels: {"title": "Developer"}}
+- actions: ["*"]
+- comment: "If you call yourself a developer you can do anything (this ACL is an example for LDAP labels as defined above)"
+- - match: {labels: {"groups": "Admin"}}
+- actions: ["push"]
+- comment: "If you are part of the admin group you can push. (this ACL is an example for LDAP labels as defined above)"
+- # Access is denied by default.
+-
+-# (optional) Define to query ACL from a MongoDB server.
+-acl_mongo:
+- # Essentially all options are described here: https://godoc.org/gopkg.in/mgo.v2#DialInfo
+- dial_info:
+- # The MongoDB hostnames or IPs to connect to.
+- addrs: ["localhost"]
+- # The time to wait for a server to respond when first connecting and on
+- # follow up operations in the session. If timeout is zero, the call may
+- # block forever waiting for a connection to be established.
+- # (See https://golang.org/pkg/time/#ParseDuration for a format description.)
+- timeout: "10s"
+- # Database name that will be used on the MongoDB server.
+- database: "docker_auth"
+- # The username with which to connect to the MongoDB server.
+- username: ""
+- # Path to the text file with the password in it.
+- password_file: ""
+- # Enable TLS connection to MongoDB (only enable this if your server supports it)
+- enable_tls: false
+- # Name of the collection in which ACLs will be stored in MongoDB.
+- collection: "acl"
+- # Specify how long an ACL remains valid before they will be fetched again from
+- # the MongoDB server.
+- # (See https://golang.org/pkg/time/#ParseDuration for a format description.)
+- cache_ttl: "1m"
+-
+-# (optional) Define to query ACL from a XORM.io database connection.
+-acl_xorm:
+- # the database type you'd like to connect to
+- database_type: "mysql"
+- conn_string: "username:password@/database_name?charset=utf8"
+- cache_ttl: "1m"
+-
+-# (optioinal) Use casbin to verify permission
+-casbin_authz:
+- model_path: "path/to/model"
+- policy_path: "path/to/csv"
+-
+-# External authorization - call an external progam to authorize user.
+-# JSON of authz.AuthRequestInfo is passed to command's stdin and exit code is examined.
+-# 0 - allow, 1 - deny, other - error.
+-ext_authz:
+- command: "/usr/local/bin/my_authz" # Can be a relative path too; $PATH works.
+- args: ["--flag", "--more", "--flags"]
+-
+-# User written authorization plugin - call a user written program to authorize user.
+-# *authz.AuthRequestInfo is passed to the plugin and expects an authorized set of actions or an error.
+-# return the set of authorized actions is the user is authorized. Otherwise return nil
+-plugin_authz:
+- plugin_path: ""
+-
diff --git a/testing/docker-volume-local-persist/APKBUILD b/testing/docker-volume-local-persist/APKBUILD
index 8adb3379573..52db04b89e4 100644
--- a/testing/docker-volume-local-persist/APKBUILD
+++ b/testing/docker-volume-local-persist/APKBUILD
@@ -1,28 +1,33 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=docker-volume-local-persist
pkgver=1.3.0
-pkgrel=8
+pkgrel=25
pkgdesc="Local Persist Volume Plugin for Docker"
-url="https://github.com/CWSpear/local-persist"
+url="https://github.com/MatchbookLab/local-persist"
arch="all"
license="MIT"
depends="docker"
-makedepends="go glide"
-install=""
+makedepends="go"
subpackages="$pkgname-openrc"
source="
- docker-local-persist-$pkgver.tar.gz::https://github.com/CWSpear/local-persist/archive/v$pkgver.tar.gz
+ docker-local-persist-$pkgver.tar.gz::https://github.com/MatchbookLab/local-persist/archive/v$pkgver.tar.gz
docker-volume-local-persist.initd
+ gomod.patch
"
builddir="$srcdir/local-persist-$pkgver"
+export GOPATH="$startdir"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+prepare() {
+ default_prepare
+ go mod download
+}
+
build() {
- cd "$builddir"
- export GOPATH="$startdir"
- export GO111MODULE=off
- glide install --skip-test
- go build -v -ldflags "-s -w" \
- -o bin/local-persist
+ go build -o bin/local-persist
}
package() {
@@ -32,5 +37,8 @@ package() {
"$pkgdir"/etc/init.d/docker-volume-local-persist
}
-sha512sums="43a061c937c84eaab817dc62e4be5adfee960e357a2eea504e87c8e5fda32f5a835dc6d145f7d787f4907cd592a04c0159455d8d28d40e158f5a93c4e4fc060a docker-local-persist-1.3.0.tar.gz
-806b53e97b52d7ec2517cd978ddce6de14321519a64a4f309e3ea233f77b0c6cb1c9ec6bd9431ebe6d1eef83c7fe6ab2b8720bc4e552b64f3741a1fcd0df4bac docker-volume-local-persist.initd"
+sha512sums="
+43a061c937c84eaab817dc62e4be5adfee960e357a2eea504e87c8e5fda32f5a835dc6d145f7d787f4907cd592a04c0159455d8d28d40e158f5a93c4e4fc060a docker-local-persist-1.3.0.tar.gz
+806b53e97b52d7ec2517cd978ddce6de14321519a64a4f309e3ea233f77b0c6cb1c9ec6bd9431ebe6d1eef83c7fe6ab2b8720bc4e552b64f3741a1fcd0df4bac docker-volume-local-persist.initd
+28f0a16f90ea90b908b117c185801b1b7d7ef569221db08f89b1b4fad48bef708b8effc1fc2a6e60a0cccaea02f5fc62694be0e15271f1953b8b3687be3dabde gomod.patch
+"
diff --git a/testing/docker-volume-local-persist/gomod.patch b/testing/docker-volume-local-persist/gomod.patch
new file mode 100644
index 00000000000..455081aa211
--- /dev/null
+++ b/testing/docker-volume-local-persist/gomod.patch
@@ -0,0 +1,84 @@
+diff --git a/go.mod b/go.mod
+new file mode 100644
+index 0000000..3e9dd07
+--- /dev/null
++++ b/go.mod
+@@ -0,0 +1,26 @@
++module local-persist-1.3.0
++
++go 1.19
++
++require (
++ github.com/docker/engine-api v0.4.0
++ github.com/docker/go-plugins-helpers v0.0.0-20161031114640-60d242cfd0fb
++ github.com/fatih/color v1.1.0
++ golang.org/x/net v0.0.0-20160322021652-4876518f9e71
++)
++
++require (
++ github.com/Microsoft/go-winio v0.3.6-0.20160621211438-ce2922f643c8 // indirect
++ github.com/Sirupsen/logrus v0.7.3 // indirect
++ github.com/coreos/go-systemd v0.0.0-20161102170722-64d5cd7cb947 // indirect
++ github.com/coreos/pkg v0.0.0-20161026222926-447b7ec906e5 // indirect
++ github.com/docker/distribution v2.5.0-rc.1.0.20161102195617-fbe6e8d212ed+incompatible // indirect
++ github.com/docker/go-connections v0.2.2-0.20161031182214-f512407a188e // indirect
++ github.com/docker/go-units v0.3.2-0.20161020213227-8a7beacffa30 // indirect
++ github.com/mattn/go-colorable v0.0.7-0.20161102080925-6e26b354bd2b // indirect
++ github.com/mattn/go-isatty v0.0.0-20160806122752-66b8e73f3f5c // indirect
++ github.com/opencontainers/runc v1.0.0-rc2.0.20161102180326-49ed0a10e4ed // indirect
++ github.com/stevvooe/resumable v0.0.0-20180830230917-22b14a53ba50 // indirect
++ github.com/stretchr/testify v1.8.0 // indirect
++ golang.org/x/sys v0.0.0-20161023150541-c200b10b5d5e // indirect
++)
+diff --git a/go.sum b/go.sum
+new file mode 100644
+index 0000000..cb6c846
+--- /dev/null
++++ b/go.sum
+@@ -0,0 +1,46 @@
++github.com/Microsoft/go-winio v0.3.6-0.20160621211438-ce2922f643c8 h1:Qp3i6ZUVcAOeTQj0KBsivXCfsnvsBASQYfXXS/N34NY=
++github.com/Microsoft/go-winio v0.3.6-0.20160621211438-ce2922f643c8/go.mod h1:VhR8bwka0BXejwEJY73c50VrPtXAaKcyvVC4A4RozmA=
++github.com/Sirupsen/logrus v0.7.3 h1:G04jzNEnKQKTemyvbCV32zFbOu+D++ECKnCFazUjPdc=
++github.com/Sirupsen/logrus v0.7.3/go.mod h1:rmk17hk6i8ZSAJkSDa7nOxamrG+SP4P0mm+DAvExv4U=
++github.com/coreos/go-systemd v0.0.0-20161102170722-64d5cd7cb947 h1:9zLgi/vHKaTOHO7YtcSvAzSiytU13fhg/w5t8YOM/Ho=
++github.com/coreos/go-systemd v0.0.0-20161102170722-64d5cd7cb947/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4=
++github.com/coreos/pkg v0.0.0-20161026222926-447b7ec906e5 h1:aqoxNZ9nyZ9kabG+daqglH9RtWIbpxDjVQMoUsoVHuo=
++github.com/coreos/pkg v0.0.0-20161026222926-447b7ec906e5/go.mod h1:E3G3o1h8I7cfcXa63jLwjI0eiQQMgzzUDFVpN/nH/eA=
++github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
++github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
++github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
++github.com/docker/distribution v2.5.0-rc.1.0.20161102195617-fbe6e8d212ed+incompatible h1:6W0HnJhig6393/Qm1Qv/4mhZl/TdsVuRP24WRVkCi64=
++github.com/docker/distribution v2.5.0-rc.1.0.20161102195617-fbe6e8d212ed+incompatible/go.mod h1:J2gT2udsDAN96Uj4KfcMRqY0/ypR+oyYUYmja8H+y+w=
++github.com/docker/engine-api v0.4.0 h1:D0Osr6+45yAlQqLyoczv5qJtAu+P0HB0rLCddck03wY=
++github.com/docker/engine-api v0.4.0/go.mod h1:xtQCpzf4YysNZCVFfIGIm7qfLvYbxtLkEVVfKhTVOvw=
++github.com/docker/go-connections v0.2.2-0.20161031182214-f512407a188e h1:jcaJgljPmPKABWQTL7kZ4bn75pxBwDrzW9PcLkqkH7o=
++github.com/docker/go-connections v0.2.2-0.20161031182214-f512407a188e/go.mod h1:Gbd7IOopHjR8Iph03tsViu4nIes5XhDvyHbTtUxmeec=
++github.com/docker/go-plugins-helpers v0.0.0-20161031114640-60d242cfd0fb h1:3PbRNm4EK4EszBwI3UR2Wv6IR9tT+PozgOdgJjSq8hs=
++github.com/docker/go-plugins-helpers v0.0.0-20161031114640-60d242cfd0fb/go.mod h1:LFyLie6XcDbyKGeVK6bHe+9aJTYCxWLBg5IrJZOaXKA=
++github.com/docker/go-units v0.3.2-0.20161020213227-8a7beacffa30 h1:bANAGhKtjG23j8rJr6QEKZJlUaRhiTuq7kCaYV9Ggbg=
++github.com/docker/go-units v0.3.2-0.20161020213227-8a7beacffa30/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk=
++github.com/fatih/color v1.1.0 h1:4RQHlUrrLRssqNPpcM+ZLy+alwucmC4mkIGTbiVdCeY=
++github.com/fatih/color v1.1.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4=
++github.com/mattn/go-colorable v0.0.7-0.20161102080925-6e26b354bd2b h1:QDkLN5n0HZJHlRE6QtBlrhuHgiQVYBuJ+R7gfyJBQ84=
++github.com/mattn/go-colorable v0.0.7-0.20161102080925-6e26b354bd2b/go.mod h1:9vuHe8Xs5qXnSaW/c/ABM9alt+Vo+STaOChaDxuIBZU=
++github.com/mattn/go-isatty v0.0.0-20160806122752-66b8e73f3f5c h1:3nKFouDdpgGUV/uerJcYWH45ZbJzX0SiVWfTgmUeTzc=
++github.com/mattn/go-isatty v0.0.0-20160806122752-66b8e73f3f5c/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4=
++github.com/opencontainers/runc v1.0.0-rc2.0.20161102180326-49ed0a10e4ed h1:CO6K4Ex3bZFJrue+c19dYXE0ZCa9qoux6JSPMZKEeHw=
++github.com/opencontainers/runc v1.0.0-rc2.0.20161102180326-49ed0a10e4ed/go.mod h1:qT5XzbpPznkRYVz/mWwUaVBUv2rmF59PVA73FjuZG0U=
++github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
++github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
++github.com/stevvooe/resumable v0.0.0-20180830230917-22b14a53ba50 h1:4bT0pPowCpQImewr+BjzfUKcuFW+KVyB8d1OF3b6oTI=
++github.com/stevvooe/resumable v0.0.0-20180830230917-22b14a53ba50/go.mod h1:1pdIZTAHUz+HDKDVZ++5xg/duPlhKAIzw9qy42CWYp4=
++github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
++github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw=
++github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
++github.com/stretchr/testify v1.8.0 h1:pSgiaMZlXftHpm5L7V1+rVB+AZJydKsMxsQBIJw4PKk=
++github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU=
++golang.org/x/net v0.0.0-20160322021652-4876518f9e71 h1:uzpLVINUETeZRto6ZphAoh11snmPXlRiUF+rNKPHlO8=
++golang.org/x/net v0.0.0-20160322021652-4876518f9e71/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
++golang.org/x/sys v0.0.0-20161023150541-c200b10b5d5e h1:uau++4dmjGy3TuvPvRbhZHY+TQVsImIxtWY5HRh9eho=
++golang.org/x/sys v0.0.0-20161023150541-c200b10b5d5e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
++gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
++gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
++gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
++gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
diff --git a/testing/dockerize/APKBUILD b/testing/dockerize/APKBUILD
index 8da8883ffd4..846c43f62f8 100644
--- a/testing/dockerize/APKBUILD
+++ b/testing/dockerize/APKBUILD
@@ -1,25 +1,19 @@
# Contributor: Christian Kampka <christian@kampka.net>
# Maintainer: Kevin Daudt <kdaudt@alpinelinux.org>
pkgname=dockerize
-pkgver=0.6.1
-pkgrel=12
+pkgver=0.7.0
+pkgrel=5
pkgdesc="Utility to simplify running applications in docker containers."
url="https://github.com/jwilder/dockerize"
arch="all"
license="MIT"
options="!check" # No test suite
makedepends="go"
-source="$pkgname-$pkgver.tar.gz::https://github.com/jwilder/dockerize/archive/v$pkgver.tar.gz
- go.mod
- go.sum
- "
+source="$pkgname-$pkgver.tar.gz::https://github.com/jwilder/dockerize/archive/v$pkgver.tar.gz"
-prepare() {
- default_prepare
-
- cp "$srcdir"/go.mod "$builddir"/go.mod
- cp "$srcdir"/go.sum "$builddir"/go.sum
-}
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
build() {
go build -ldflags "-X main.buildVersion=$pkgver"
@@ -31,6 +25,6 @@ package() {
cp -r examples "$pkgdir"/usr/share/dockerize/
}
-sha512sums="5ee217b97a23cde8a56ec4c4a262152343d777f95813582d93d2f97f3348ba67bbd415a071ad6449157ab261f65d2dbe2d41e4bb69e37c0699d79947b4af6c12 dockerize-0.6.1.tar.gz
-b8d6c6608a6e4a77b325a46c7e3e8b35d65d631294ad9dd414e1e8a7a6d181b89630572f30e8de87ee399dca9a906aa10cc240e827b06e23cfcf789d453478cf go.mod
-d994a4d78e3291be9803fe8f98fed2fd02a5b428faf52e682f799331d09a2393462360916a78e3198257e0d55528f8d7080790ba4dafb04f436885070607fe71 go.sum"
+sha512sums="
+694c9e7ce4c42b886ae5a9b6aaed8f255410f43d76440e6c9347c59821212ef37ceb46342e9569f34ee44dab07cf8dadde9c6011421694d9a9df195f0cfee3b8 dockerize-0.7.0.tar.gz
+"
diff --git a/testing/dockerize/go.mod b/testing/dockerize/go.mod
deleted file mode 100644
index 749b54ecb84..00000000000
--- a/testing/dockerize/go.mod
+++ /dev/null
@@ -1,13 +0,0 @@
-module dockerize
-
-go 1.15
-
-require (
- github.com/elgs/gosplitargs v0.0.0-20160406212339-e9cf3de21e14
- github.com/hpcloud/tail v1.0.1-0.20170207023346-faf842bde7ed
- github.com/jwilder/gojq v0.0.0-20160421194050-81fa9a608a13
- golang.org/x/net v0.0.0-20160912184337-749a502dd1ea
- golang.org/x/sys v0.0.0-20210217105451-b926d437f341 // indirect
- gopkg.in/fsnotify.v1 v1.4.7 // indirect
- gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7 // indirect
-)
diff --git a/testing/dockerize/go.sum b/testing/dockerize/go.sum
deleted file mode 100644
index a189bcd48b6..00000000000
--- a/testing/dockerize/go.sum
+++ /dev/null
@@ -1,14 +0,0 @@
-github.com/elgs/gosplitargs v0.0.0-20160406212339-e9cf3de21e14 h1:tSWWZ79VqlUos3dMoPNvGB+gqeVtwUQAtAlni2+OS0c=
-github.com/elgs/gosplitargs v0.0.0-20160406212339-e9cf3de21e14/go.mod h1:o4DgpccPNAQAlPSxo7I4L/LWNh2oyr/BBGSynrLTmZM=
-github.com/hpcloud/tail v1.0.1-0.20170207023346-faf842bde7ed h1:WLBrQgEkxAC1n5JUB50ei+XUF1fZpve1emH1u3WI1Rw=
-github.com/hpcloud/tail v1.0.1-0.20170207023346-faf842bde7ed/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU=
-github.com/jwilder/gojq v0.0.0-20160421194050-81fa9a608a13 h1:FQ/MU09pV6QPwNq+YRsA4yJknUf+3xl3Y52I+WC0X4c=
-github.com/jwilder/gojq v0.0.0-20160421194050-81fa9a608a13/go.mod h1:pD7F1lLmlib/2Vy3xild2aXjNnnSudq54IJGftfO4O0=
-golang.org/x/net v0.0.0-20160912184337-749a502dd1ea h1:rmarNoIEpFby4hGZiv7uycvLJc9m1g3MFnarO7jcDHE=
-golang.org/x/net v0.0.0-20160912184337-749a502dd1ea/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
-golang.org/x/sys v0.0.0-20210217105451-b926d437f341 h1:2/QtM1mL37YmcsT8HaDNHDgTqqFVw+zr8UzMiBVLzYU=
-golang.org/x/sys v0.0.0-20210217105451-b926d437f341/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
-gopkg.in/fsnotify.v1 v1.4.7 h1:xOHLXZwVvI9hhs+cLKq5+I5onOuwQLhQwiu63xxlHs4=
-gopkg.in/fsnotify.v1 v1.4.7/go.mod h1:Tz8NjZHkW78fSQdbUxIjBTcgA1z1m8ZHf0WmKUhAMys=
-gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7 h1:uRGJdciOHaEIrze2W8Q3AKkepLTh2hOroT7a+7czfdQ=
-gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWDmTeBkI65Dw0HsyUHuEVlX15mw=
diff --git a/testing/doggo/APKBUILD b/testing/doggo/APKBUILD
deleted file mode 100644
index b07311debda..00000000000
--- a/testing/doggo/APKBUILD
+++ /dev/null
@@ -1,24 +0,0 @@
-# Contributor: Ian Bashford <ianbashford@gmail.com>
-# Maintainer: Ian Bashford <ianbashford@gmail.com>
-pkgname=doggo
-pkgver=0.4.1
-pkgrel=3
-pkgdesc="A modern command-line DNS client, additionally supporting DoH, DoT and DNSCrypt protocols"
-url="https://github.com/mr-karan/doggo"
-arch="all"
-license="GPL-3.0-only"
-makedepends="go"
-source="$pkgname-$pkgver.tar.gz::https://github.com/mr-karan/doggo/archive/v$pkgver.tar.gz"
-options="!check" #no test suite
-
-build() {
- make CLI_BIN="./doggo" VERSION=$pkgver build-cli
-}
-
-package() {
- install -m755 -D $pkgname "$pkgdir"/usr/bin/$pkgname
-}
-
-sha512sums="
-4db19fe259ff535d160bb1011b178bb47fe6b8ff17728b00893f9de81b841aeb03113bb8ee4a3ebcff604362767b00cb078ee80b08b1386e00e72556f567fbe1 doggo-0.4.1.tar.gz
-"
diff --git a/testing/dolt/APKBUILD b/testing/dolt/APKBUILD
new file mode 100644
index 00000000000..b3b25caf75c
--- /dev/null
+++ b/testing/dolt/APKBUILD
@@ -0,0 +1,34 @@
+# Contributor: Francesco Colista <fcolista@alpinelinux.org>
+# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
+pkgname=dolt
+pkgver=1.35.9
+pkgrel=0
+pkgdesc="Dolt – It's Git for Data"
+url="https://www.dolthub.com"
+arch="all !x86 !armhf !armv7" # fails on 32-bit
+license="Apache-2.0"
+options="!check chmod-clean net"
+makedepends="go"
+source="$pkgname-$pkgver.tar.gz::https://github.com/dolthub/dolt/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/$pkgname-$pkgver/go"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ mkdir -p build
+ go build \
+ -mod=readonly \
+ -ldflags "-extldflags \"$LDFLAGS\"" \
+ -o build \
+ ./cmd/...
+}
+
+package() {
+ install -Dm755 build/dolt "$pkgdir"/usr/bin/dolt
+}
+
+sha512sums="
+faa25bb94a309ec26e0c7498f08aa38e958347e5256da5ee39130d20e8855b60b9d8070167704b4b7dd9353cb8d3ce373aa2c19661502261c45e1e8967dbf1f3 dolt-1.35.9.tar.gz
+"
diff --git a/testing/dooit/APKBUILD b/testing/dooit/APKBUILD
new file mode 100644
index 00000000000..4b770dd605e
--- /dev/null
+++ b/testing/dooit/APKBUILD
@@ -0,0 +1,37 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=dooit
+pkgver=2.2.0
+pkgrel=1
+pkgdesc="TUI todo manager"
+url="https://github.com/kraanzu/dooit"
+arch="noarch"
+license="MIT"
+depends="
+ python3
+ py3-appdirs
+ py3-dateparser
+ py3-dateutil
+ py3-pyperclip
+ py3-textual
+ py3-tzlocal
+ py3-yaml
+ "
+makedepends="py3-gpep517 py3-poetry-core"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/kraanzu/dooit/archive/refs/tags/v$pkgver.tar.gz"
+options="!check" # no testsuite
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+9b95da5c667e2dfcb98deee8726800dd07837202140ce5c0f53052151cedf474133d3ad2263f1f66ca86bfe7e916a30ebc3618148454084144775c676eddb080 dooit-2.2.0.tar.gz
+"
diff --git a/testing/dosbox-staging/APKBUILD b/testing/dosbox-staging/APKBUILD
index 4508cffca2b..d6f4d1d89ed 100644
--- a/testing/dosbox-staging/APKBUILD
+++ b/testing/dosbox-staging/APKBUILD
@@ -1,38 +1,43 @@
-# Contributor: psykose <alice@ayaya.dev>
# Maintainer: Milan P. Stanić <mps@arvanta.net>
pkgname=dosbox-staging
-pkgver=0.78.1
+pkgver=0.81.0
pkgrel=0
pkgdesc="revitalized dosbox DOS-emulator"
url="https://dosbox-staging.github.io/"
arch="all !x86" # TEXTREL on x86
license="GPL-2.0-or-later"
-options="!check" # no
+options="!check" # no test
+provides="dosbox"
+replaces="dosbox"
depends="!dosbox" # dosbox provides same binary in /usr/bin/dosbox
makedepends="
+ cmake
+ meson
alsa-lib-dev
fluidsynth-dev
- libexecinfo-dev
+ iir1-dev
libpng-dev
libslirp-dev
opus-dev
opusfile-dev
+ speexdsp-dev
sdl2-dev
+ sdl2_image-dev
sdl2_net-dev
- meson
+ zlib-dev
"
subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/dosbox-staging/dosbox-staging/archive/v$pkgver.tar.gz
- fix-execinfo.patch
- "
+source="$pkgname-$pkgver.tar.gz::https://github.com/dosbox-staging/dosbox-staging/archive/v$pkgver.tar.gz"
build() {
abuild-meson \
--prefix /usr \
- --buildtype=release \
+ --buildtype=minsize \
-Duse_mt32emu=false \
+ -Duse_zlib_ng=false \
+ -Ddefault_library=shared \
. output
- meson compile ${JOBS:+-j ${JOBS}} -C output
+ meson compile -C output
}
package() {
@@ -40,6 +45,5 @@ package() {
}
sha512sums="
-5d1ef6f6312f44821f5f0e54db957a9236e943dc847c480e766159dd6237500686a3763211dabe1223837f9590d909f1496781dedc24d2f41e6836014dac77a5 dosbox-staging-0.78.1.tar.gz
-a13ef7270994385681e0ed557ebbbc05cd7a29c49e0ab9338360c99134ed4d3937bd9102453c0550d73e02f9503e5cf885f4a258c89e2ceb2db35f2a27585ff9 fix-execinfo.patch
+96257602b0133ec78fbc7bd5803404d91abf673172e97319067a0f3f97db8860ae6d4771bb03cff5b73e033f220cb4fa6cd778cf549a9bc63e3550def9aa8797 dosbox-staging-0.81.0.tar.gz
"
diff --git a/testing/dosbox-staging/fix-execinfo.patch b/testing/dosbox-staging/fix-execinfo.patch
deleted file mode 100644
index 59dc6e4c6da..00000000000
--- a/testing/dosbox-staging/fix-execinfo.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-Author: psykose <alice@ayaya.dev>
-Date: Thu Dec 30 19:05:44 UTC 2021
-
-patch made by psykose <alice@ayaya.dev> to fix build
-
---- a/src/libs/loguru/meson.build
-+++ b/src/libs/loguru/meson.build
-@@ -1,6 +1,8 @@
-+execinfo_dep = cc.find_library('execinfo', required : true )
-+
- libloguru = static_library('loguru',
- 'loguru.cpp',
-- dependencies : [ threads_dep, dl_dep ])
-+ dependencies : [ threads_dep, dl_dep, execinfo_dep ])
-
- libloguru_dep = declare_dependency(link_with : libloguru,
- include_directories : '.')
diff --git a/testing/dotenv-linter/APKBUILD b/testing/dotenv-linter/APKBUILD
new file mode 100644
index 00000000000..2ed06e9443e
--- /dev/null
+++ b/testing/dotenv-linter/APKBUILD
@@ -0,0 +1,34 @@
+# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=dotenv-linter
+pkgver=3.3.0
+pkgrel=1
+pkgdesc="Lightning-fast linter for .env files"
+url="https://dotenv-linter.github.io"
+arch="all !s390x !ppc64le !riscv64" # rust/rustls
+license="MIT"
+makedepends="cargo cargo-auditable"
+source="https://github.com/dotenv-linter/dotenv-linter/archive/refs/tags/v$pkgver/dotenv-linter-$pkgver.tar.gz"
+
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm755 target/release/dotenv-linter -t "$pkgdir"/usr/bin
+}
+
+sha512sums="
+5f513277e463d1d83953488934ede246634ba8752bc08f44e62a084aea8724d93da2d5bc9924609c2c2dde918d40d619674dfe5c4e8a31f887f7a7e48cd83918 dotenv-linter-3.3.0.tar.gz
+"
diff --git a/testing/dotnet31-bootstrap/APKBUILD b/testing/dotnet31-bootstrap/APKBUILD
deleted file mode 100644
index f3d55c3d488..00000000000
--- a/testing/dotnet31-bootstrap/APKBUILD
+++ /dev/null
@@ -1,347 +0,0 @@
-# Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>
-# Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
-
-#
-# This is generated from dotnet31-build's APKBUILD.
-# Any modifications to be done in that APKBUILD and propagated by
-# executing 'abuild _update_bootstrap'
-#
-# Variables for dotnet build version 3.1
-# This APKBUILD is designed to be the same for version 5.0 and under
-# except for the variables in this first section
-#
-
-pkgname=dotnet31-bootstrap
-pkgver=3.1.416
-pkgrel=0
-
-# Tag of tarball generator. This may change from usual due to mistakes from upstream
-_installertag="v$pkgver-SDK"
-
-# Tag of SBRP builder for dotnet 3.1
-_sbrptag=045b2888ccfaf4c203c945a09b3f41f0e6393d1c
-
-# this should match what is sourced by source-build's ./prep.sh script
-# and, at the very least, the artifacts version sourced, as defined in
-# eng/Version.Details.xml by var PrivateSourceBuiltArtifactsPackageVersion
-# Sometimes, this needs updating by stage0 scripts, thus it is bumped from this
-# version to establish that we are moving away from upstream
-_bootstrapver=3.1.416-r0
-
-# LLVM version to be used for this build
-_llvmver=12
-
-# Patches to be used. String before '_' refers to repo to patch
-# Look for patch notes within each patch for what they fix / where they come from
-# build_* patches applies directly to $builddir
-_patches="
- application-insights_fix-net40-location.patch
- build_darc-fix-alpine.patch
- build_ignore-warnings.patch
- build_musl-build.patch
- cli_add-zsh-compdef-completion-script.patch
- coreclr_non-portable-distrorid-fix-alpine.patch
- core-sdk_generate-layout-core-setup-blob-path-fix.patch
- core-setup_rid-plat-generation-on-alpine-fix.patch
- corefx_fix-build-clang10.patch
- corefx_added-alpine-315-rid.patch
- references_sh-build-fix.patch
- "
-# Custom prepare
-default_prepare() {
- return
-}
-
-# Following for for dotnet builds version 5.0 and under
-_pkgver_macro=${pkgver%.*}
-_pkgver_prior=${pkgver%.*.*}
-_pkgver_name=${_pkgver_macro//[.0]}
-pkgdesc="The .NET $_pkgver_macro SDK"
-arch="x86_64"
-case $CARCH in
- x86_64) _dotnet_arch=x64;;
- aarch64) _dotnet_arch=arm64;;
- armv7) _dotnet_arch=arm;;
-esac
-url=https://www.microsoft.com/net/core
-license="MIT"
-_bootstrappkg="stage0"
-makedepends="
- bash
- clang
- cmake
- dotnet$_pkgver_name-$_bootstrappkg=$_bootstrapver
- dotnet$_pkgver_name-$_bootstrappkg-artifacts=$_bootstrapver
- findutils
- git
- grep
- icu-dev
- inetutils-syslogd
- krb5-dev
- libgit2-dev
- libintl
- libunwind-dev
- libxml2-dev
- libxml2-utils
- linux-headers
- lldb-dev
- llvm$_llvmver-dev
- lttng-ust-dev
- nodejs
- openssl-dev
- zlib-dev
- "
-options="!check" # No test suite
-
-# packages artifacts if building bootstrap
-[ "$_bootstrappkg" = "stage0" ] && subpackages="$pkgname-artifacts"
-
-source="
- source-build-$_installertag.tar.gz::https://github.com/dotnet/source-build/archive/refs/tags/$_installertag.tar.gz
- source-build-reference-packages-$_sbrptag.tar.gz::https://github.com/dotnet/source-build-reference-packages/archive/$_sbrptag.tar.gz
- $_patches
- "
-builddir="$srcdir/source-build-${_installertag/v}"
-_sbrpdir="$srcdir"/source-build-reference-packages-$_sbrptag
-_artifactsdir="/usr/share/dotnet/artifacts/${_bootstrapver%-*}"
-_referencesdir="/usr/share/dotnet/artifacts/${_bootstrapver%-*}/SourceBuildReferencePackages"
-_cli_root="$srcdir"/bootstrap
-
-# Custom patch logics for dotnet version 5.0 and under
-_patch() {
- local i failed=
- if ! have_patches; then
- return 0
- fi
- [ -d "$builddir" ] || { error "Is \$builddir set correctly?"; return 1; }
- msg "Deploying patches"
- for i in $source; do
- case ${i%::*} in
- build_*.patch)
- echo "applying $i to sourcebuild"
- patch ${patch_args:--p1} -i "$srcdir/$(filename_from_uri $i)" || failed="$failed $i"
- ;;
- references_*.patch)
- echo "applying $i to references"
- cd "$_sbrpdir"
- patch ${patch_args:--p1} -i "$srcdir/$(filename_from_uri $i)" || failed="$failed $i"
- ;;
- *.patch)
- local _package=$(echo $i | sed 's|_.*||')
- local _patch=$(echo $i | sed "s|$_package\_||")
- echo "deploying $_patch to $_package for application by sourcebuild"
- [ -d patches/$_package ] || mkdir patches/$_package
- cp "$srcdir"/"$i" patches/$_package/$_patch
- ;;
- esac
- done
-
- if [ -z "$failed" ]; then
- return 0
- fi
- error "The following patches failed to apply:"
- for i in $failed; do
- printf " %s\n" "$i"
- done
-}
-
-# aport for bootstrap is effectively a copy of this aport, except that it
-# builds using stage0 bits, which are sourced from Microsoft prebuilts.
-# Another major difference is that rather than package build artifacts
-# under $dotnet_path/build to be packages later, it send artifacts to
-# $dotnet_path/bootstrap, as this is the directory that is sourced by
-# _prepare_bootstrap for build.
-_update_bootstrap() {
- msg "Updating bootstrap APKBUILD"
- # Copy patches
- rm ../dotnet$_pkgver_name-bootstrap/*.patch || true
- for i in ../dotnet"$_pkgver_name"-build/*.patch; do
- cp $i ${i/$_pkgver_name-build/$_pkgver_name-bootstrap}
- done
-
- # Generate bootstrap
- {
- echo -n "# "
- echo "Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>"
- echo "# Contributor: Antoine Martin (ayakael) <dev@ayakael.net>"
- echo
- echo "#"
- echo "# This is generated from dotnet$_pkgver_name-build's APKBUILD."
- echo "# Any modifications to be done in that APKBUILD and propagated by"
- echo -n "# executing 'abuild _update_bootstrap'"
- sed \
- -e "s/pkgname=dotnet$_pkgver_name-build/pkgname=dotnet$_pkgver_name-bootstrap/" \
- -e "s/_bootstrappkg=\"bootstrap\"/_bootstrappkg=\"stage0\"/" \
- -e "1,2d" \
- ../dotnet$_pkgver_name-build/APKBUILD
- } > ../dotnet$_pkgver_name-bootstrap/APKBUILD
-}
-
-# dotnet relies on itself when building, we thus need a bootstrap runtime
-# that is copied to write-capable folder
-_prepare_bootstrap() {
- msg "Settings up bootstrap"
- cp -r /usr/share/dotnet/bootstrap/${_bootstrapver%-*} "$_cli_root"
-
- # Corrupt libcoreclrtraceptprovider.so when lttng <=2.13.0
- # is detected as tracing is broken on dotnet platform
- # due to ABI changes
- # See https://github.com/dotnet/runtime/issues/57784.
- if [ -f "/usr/lib/liblttng-ust.so.1 " ]; then
- rm "$_cli_root"/shared/Microsoft.NETCore.App/*/libcoreclrtraceptprovider.so
- fi
-}
-
-# Build doesn't set all the right executable bits for the right file types
-_fix_executable() {
- # add executable bit
- find "$1" -type f \( \
- -name 'apphost' -o \
- -name 'singlefilehost' -o \
- -name 'lib*so' \
- \) \
- -exec chmod +x '{}' \;
-
- # remove executable bit
- find "$1" -type f \( \
- -name '*.a' -o \
- -name '*.dll' -o \
- -name '*.h' -o \
- -name '*.json' -o \
- -name '*.pdb' -o \
- -name '*.props' -o \
- -name '*.pubxml' -o \
- -name '*.targets' -o \
- -name '*.txt' -o \
- -name '*.xml' \
- \) \
- -exec chmod -x '{}' \;
-}
-
-prepare() {
- default_prepare
-
- # source-build expects to be in a git repo
- git init
- git add ./*
- git commit -m 'initial commit'
- git remote add origin https://github.com/dotnet/source-build.git
-
- _patch
- _prepare_bootstrap
-
- # by default build populates these folders using Artifacts and SBRP archives
- # we are instead going to populate them from the prebuilt artifacts provided
- # by dotnetx-bootstrap-artifacts
- [ -f "$builddir/packages" ] || mkdir -p "$builddir"/packages
- cp -r "$_artifactsdir" "$builddir"/packages/prebuilt
- mv "$builddir"/packages/prebuilt/SourceBuildReferencePackages "$builddir"/packages/reference
- # make sure archives wont be downloaded or aren't expected.
- [ -d "$builddir"/packages/archive ] && rm -r "$builddir"/packages/archive
-
- # by default, coreclr-tools is not sourced from dotnetx-bootstrap-artifacts, thus
- # it'll be the wrong architecture. Below replaces default coreclr-tools with
- # versions from artifacts, which have been built properly
- mkdir -p "$builddir"/Tools/source-built
- cp -r "$builddir"/packages/prebuilt/coreclr-tools "$builddir"/Tools/source-built/.
-}
-
-build() {
- msg "Building $pkgname-$pkgver"
-
- # logs args, else the output is forwarded to log files which isn't ideal in a
- # pipeline environment
- local args="
- /v:n
- /p:LogVerbosity=n
- /p:MinimalConsoleLogOutput=false
- "
-
- # defaults args for build on Alpine
- local args="$args
- /p:SkipDownloadingPreviouslySourceBuiltPackages=true
- /p:SkipDownloadingReferencePackages=true
- /p:ContinueOnPrebuiltBaselineError=true
- /p:SkipPrebuiltEnforcement=true
- /p:UseSystemLibraries=true
- /p:UseSystemLibunwind=true
- "
-
- ./build.sh \
- --with-sdk "$_cli_root" \
- $args | tee -a build.log
-
- # only build references when building with stage0
- [ "$_bootstrappkg" = "bootstrap" ] && return
-
- msg "Building source build reference packages"
- cd "$_sbrpdir"
- ./build.sh \
- --with-sdk "$_cli_root" \
- --with-packages "$builddir"/artifacts/$_dotnet_arch/Release/Private.SourceBuilt.Artifacts.0.1.0-dev.tar.gz \
- | tee -a build.log
-}
-
-package() {
- local subdir=${pkgname/*-}
- local targetdir="$pkgdir"/usr/share/dotnet/$subdir/$pkgver
-
- # directory creation
- install -dm 755 \
- "$targetdir"/docs \
- "$targetdir"/comp
-
- # unpack build artifacts to subdir defined by pkgname. If bootstrap, unpacks
- # to bootstrap, if build unpacks to build
- tar -xzf "$builddir"/artifacts/$_dotnet_arch/Release/dotnet-sdk-$_pkgver_macro*.tar.gz -C "$targetdir"/ --no-same-owner
-
- # assemble completions
- install -m 755 "$builddir"/artifacts/src/cli.*/scripts/register-completions.bash "$targetdir"/comp/
- install -m 755 "$builddir"/artifacts/src/cli.*/scripts/register-completions.zsh "$targetdir"/comp/
-
- # assemble docs
- find "$builddir" -iname 'dotnet*.1' -type f -exec cp '{}' "$targetdir"/docs/ \;
-
- # some files either should or should not have executable bits
- _fix_executable "$pkgdir"
-
- # See https://github.com/dotnet/source-build/issues/2579
- find "$pkgdir" -type f -name 'testhost.x86' -delete
- find "$pkgdir" -type f -name 'vstest.console' -delete
-}
-
-# build relies on a plethora of nupkgs which are provided by this Artifacts file.
-# stage0 sources these from Microsoft, which then allows bootstrap to build
-# locally hosted versions. The following unpacks built tarball into directory
-# for use by future builds.
-artifacts() {
- pkgdesc="Internal package for building .NET $_pkgver_macro Software Development Kit"
-
- # directory creation
- install -dm 755 \
- "$subpkgdir"/usr/share/dotnet/artifacts/$pkgver/SourceBuildReferencePackages \
- "$subpkgdir"/usr/share/licenses
-
- # extract artifacts to artifacts dir for use by future dotnet builds
- tar -xzf "$builddir"/artifacts/$_dotnet_arch/Release/Private.SourceBuilt.Artifacts.*.tar.gz -C "$subpkgdir"/usr/share/dotnet/artifacts/$pkgver/ --no-same-owner \
- --exclude '*Intermediate*'
-
- # pulls SBRP artifacts
- install -m 644 "$_sbrpdir"/artifacts/reference-packages/* "$subpkgdir"/usr/share/dotnet/artifacts/$pkgver/SourceBuildReferencePackages/.
-}
-
-sha512sums="
-651c59c44ec2492efbcbea86e1c42f27add2ea9dbe76d4123d24ee868538c707e82e3c7538f2183a6482e62f1038475af46717005938d77c7900ae3a5a1cc3a7 source-build-v3.1.416-SDK.tar.gz
-9d7ae29c311cd9550389225cab891df359385e098aaccb8100c77832ea7b7b1f6a7984d811cb1f45bd323182149246c33f2016b4ee85d97ee9b29243acc644bc source-build-reference-packages-045b2888ccfaf4c203c945a09b3f41f0e6393d1c.tar.gz
-1ef3cb59231b7462167f782cbfcacee4a7bc7d73ec635de4ea3f4510cc6d46c5548ce2ec2ce3d3943bf6d1c29cb288dc1c82f1b22fe1c61fb6013e2df728467e application-insights_fix-net40-location.patch
-f945552c083828e80031bdae584514aa8e7eb64544cc1fc3ca658a4162303f2a1caf076f44bc567c34ed2cf4c42323eaaafae0719adf9855756af125a566e99b build_darc-fix-alpine.patch
-bd28775f37c9d448eab52922d0b8e0a6a32a3e16f772337850c48bd886e0302f97423b7b58dbc010c30764772f0bc00115ace72422dd12f447a5282ae62da4b3 build_ignore-warnings.patch
-e2a63a9c262a95698eba5639a32eb8ba968a3d4c1fb70ea9890f3915e9923190a4aabed0ef74d64cb5199ee9d06c77736d36861ed8418ab8638552763c2c58b5 build_musl-build.patch
-55afa9c74be6f5a87f1ff5aa44caad094cf620eb4388f6407218acf3d58a878f5565a0e875e95c3dbe0efca1879c120ee4b8076c521bfc9d6069a652c4a4fdd8 cli_add-zsh-compdef-completion-script.patch
-dcbb3824acb432739b08d329a5b2f95a32d806bdb4a11d3cdd0245724e6ee92ee85bbf30f5a0f6607598f5252cd9cdaf92cea5101d33b4bf5161b7b22b853c0e coreclr_non-portable-distrorid-fix-alpine.patch
-5dffe94647daebd0a56ffd63db7f7f64ac7c4b279aa7189396d792fe4143989a91ffdb86f687dea3caa2475ac2ad43b95abcddacd175fef392bd24b52c957964 core-sdk_generate-layout-core-setup-blob-path-fix.patch
-8f2de7774a62c846a3c5806a2a6fa651930f30dc91f06fac7a8dc9032cb1fb8bbff6bdd833fc0767effcd35751ee43a4ca059fced926f2cd9f970c88dd7271eb core-setup_rid-plat-generation-on-alpine-fix.patch
-2e05046b087670ff95c9df585b0d5d153518e1b2d7abc3288217e067728620fb85bf9bd8ec1541433fdae694fcb11dacaf5448fa4acd812afcfaa869f17e7fcd corefx_fix-build-clang10.patch
-2fd67942f2f93e950e5977296b553ebbd9316f9e9be380a74673e18836bacebfa005cab0d6e8f02d1dd4a67a92d6d526522393dd2fa8b7bc22f1165af87b7dac corefx_added-alpine-315-rid.patch
-441528c42256f30dda83854f78d53d2507b6e7a159aea4456c3872a8be3690f8f222709a6ec70503cd1875d7d8c2f43d7a54ef0c30761fbdfc3c2a394136f7fc references_sh-build-fix.patch
-"
diff --git a/testing/dotnet31-bootstrap/README.md b/testing/dotnet31-bootstrap/README.md
deleted file mode 100644
index f49fc087f6c..00000000000
--- a/testing/dotnet31-bootstrap/README.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# Description
-APKBUILD for dotnet31-bootstrap, acting as intermediary between stage0 and
-untainted dotnet build. This is a workaround for buildrepo, allowing automatic
-build of dotnet after stage0, insuring that end-user doesn't have any binaries
-"tainted" by Microsoft prebuilt binaries
-
-# Generated packages
-* dotnet31-bootstrap (used by dotnet31-build for first untainted dotnet build)
-* dotnet31-bootstrap-artifacts (provides nupkgs for dotnet31-build)
-
-# Special functions
-To update, execute 'abuild _update_bootstrap
diff --git a/testing/dotnet31-bootstrap/application-insights_fix-net40-location.patch b/testing/dotnet31-bootstrap/application-insights_fix-net40-location.patch
deleted file mode 100644
index de51bc05888..00000000000
--- a/testing/dotnet31-bootstrap/application-insights_fix-net40-location.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-From 387efb0ac01e40cd85cf9f5ce770be6437265ca4 Mon Sep 17 00:00:00 2001
-Patch-Source: https://github.com/microsoft/ApplicationInsights-dotnet/issues/2498
-From: Antoine Martin <dev@ayakael.net>
-Date: Fri, 4 Jun 2021 13:32:53 +0000
-Subject: [PATCH] FIxed Net40 location
-
-Because paths on Linux are case sensitive. Applications insights looks
-for <dotnet/applicationsinsights>/src/Core/Managed/net40 in net40
-while the repo has a Net40. Patch moves whatever is in Net40 to net40
----
- src/Core/Managed/{Net40 => net40}/CorrelationHelper.cs | 0
- 1 file changed, 0 insertions(+), 0 deletions(-)
- rename src/Core/Managed/{Net40 => net40}/CorrelationHelper.cs (100%)
-
-diff --git a/src/Core/Managed/Net40/CorrelationHelper.cs b/src/Core/Managed/net40/CorrelationHelper.cs
-similarity index 100%
-rename from src/Core/Managed/Net40/CorrelationHelper.cs
-rename to src/Core/Managed/net40/CorrelationHelper.cs
---
-2.30.2
-
diff --git a/testing/dotnet31-bootstrap/build_darc-fix-alpine.patch b/testing/dotnet31-bootstrap/build_darc-fix-alpine.patch
deleted file mode 100644
index 9e33ddb3c1c..00000000000
--- a/testing/dotnet31-bootstrap/build_darc-fix-alpine.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From d07d50c6f8a5793badc50fb2c964b87dec87a3a1 Mon Sep 17 00:00:00 2001
-Patch-Source: https://github.com/dotnet/source-build/issues/1868)
-From: Antoine Martin <dev@ayakael.net>
-Date: Thu, 15 Jul 2021 15:37:33 +0000
-Subject: [PATCH 1/1] Fixed darc init for Alpine
-
-Darc has a segmentation fault on Alpine due to not chosing the correct
-binary architecture. This patch deletes all the wrong ones so that it
-is forced to chose the correct one. This issue only occurs when using
-dotnet-stage0-runtime, thus libunwind is suspected to be the issue as
-stage0 wasn't built with system libunwind.
----
- eng/common/darc-init.sh | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/eng/common/darc-init.sh b/eng/common/darc-init.sh
-index 82b2b57..5227a37 100755
---- a/eng/common/darc-init.sh
-+++ b/eng/common/darc-init.sh
-@@ -77,6 +77,9 @@ function InstallDarcCli {
- else
- echo $($dotnet_root/dotnet tool install $darc_cli_package_name --version $darcVersion --add-source "$arcadeServicesSource" -v $verbosity --tool-path "$toolpath")
- fi
-+ for i in win* ubuntu.1* rhel* osx fedora* debian*; do
-+ rm -R $toolpath/.store/microsoft.dotnet.darc/*/microsoft.dotnet.darc/*/tools/netcoreapp3.0/any/runtimes/${i}
-+ done
- }
-
- InstallDarcCli
---
-2.30.2
-
diff --git a/testing/dotnet31-bootstrap/build_ignore-warnings.patch b/testing/dotnet31-bootstrap/build_ignore-warnings.patch
deleted file mode 100644
index 75e5f62047f..00000000000
--- a/testing/dotnet31-bootstrap/build_ignore-warnings.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 764e5310c8059931cd542c5cdc869972d3520696 Mon Sep 17 00:00:00 2001
-From: Antoine Martin <dev@ayakael.net>
-Date: Mon, 10 Jan 2022 23:21:55 +0000
-Subject: [PATCH 1/1] ignore warnings
-
-Ignore warnings during build of coreclr
----
- repos/coreclr.common.props | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/repos/coreclr.common.props b/repos/coreclr.common.props
-index 8e4137d8..2b0a459a 100644
---- a/repos/coreclr.common.props
-+++ b/repos/coreclr.common.props
-@@ -2,7 +2,7 @@
- <Import Project="Sdk.props" Sdk="Microsoft.NET.Sdk" />
-
- <PropertyGroup>
-- <BuildArguments>$(Platform) $(Configuration) skiptests</BuildArguments>
-+ <BuildArguments>$(Platform) $(Configuration) skiptests ignorewarnings</BuildArguments>
- <BuildArguments Condition="'$(OS)' != 'Windows_NT'">$(BuildArguments) -ignoreWarnings</BuildArguments>
- <BuildArguments>$(BuildArguments) -skipmanagedtools</BuildArguments>
- <BuildArguments Condition="'$(OS)' != 'Windows_NT'">$(BuildArguments) -skiprestore</BuildArguments>
---
-2.34.1
-
diff --git a/testing/dotnet31-bootstrap/build_musl-build.patch b/testing/dotnet31-bootstrap/build_musl-build.patch
deleted file mode 100644
index 61351eb339d..00000000000
--- a/testing/dotnet31-bootstrap/build_musl-build.patch
+++ /dev/null
@@ -1,75 +0,0 @@
-From 97c51fb4d0cb42d62ee60215b13df4c2d76ca68f Mon Sep 17 00:00:00 2001
-From: "build@apk-groulx" <build@apk-groulx.praxis>
-Date: Fri, 11 Feb 2022 16:44:05 +0000
-Subject: [PATCH 1/1] musl-build
-
----
- repos/aspnetcore.proj | 1 +
- repos/core-sdk.proj | 2 +-
- repos/core-setup.common.props | 2 +-
- repos/corefx.common.props | 4 ++--
- 4 files changed, 5 insertions(+), 4 deletions(-)
-
-diff --git a/repos/aspnetcore.proj b/repos/aspnetcore.proj
-index fc04c1b8..e034ec0a 100644
---- a/repos/aspnetcore.proj
-+++ b/repos/aspnetcore.proj
-@@ -21,6 +21,7 @@
- <BuildCommandArgs>$(BuildCommandArgs) /p:BuildNodeJs=false</BuildCommandArgs>
- <BuildCommandArgs>$(BuildCommandArgs) /p:SourceBuildRuntimeIdentifier=$(OverrideTargetRid)</BuildCommandArgs>
- <BuildCommandArgs>$(BuildCommandArgs) /p:UseAppHost=false</BuildCommandArgs>
-+ <BuildCommandArgs>$(BuildCommandArgs) --os-name linux-musl</BuildCommandArgs>
-
- <LogVerbosityOptOut>true</LogVerbosityOptOut>
-
-diff --git a/repos/core-sdk.proj b/repos/core-sdk.proj
-index 7a78cf40..35cbb89d 100644
---- a/repos/core-sdk.proj
-+++ b/repos/core-sdk.proj
-@@ -9,7 +9,7 @@
- <OSNameOverride>$(TargetRid.Substring(0, $(TargetRid.IndexOf("-"))))</OSNameOverride>
- <BuildCommandArgs/>
- <BuildCommandArgs Condition="'$(TargetOS)' == 'Linux'">$(BuildCommandArgs) /p:Rid=$(TargetRid)</BuildCommandArgs>
-- <BuildCommandArgs Condition="'$(TargetOS)' == 'Linux'">$(BuildCommandArgs) /p:AspNetCoreSharedFxInstallerRid=linux-$(Platform)</BuildCommandArgs>
-+ <BuildCommandArgs Condition="'$(TargetOS)' == 'Linux'">$(BuildCommandArgs) /p:AspNetCoreSharedFxInstallerRid=linux-musl-$(Platform)</BuildCommandArgs>
- <BuildCommandArgs Condition="'$(TargetOS)' == 'Linux'">$(BuildCommandArgs) /p:OSName=$(OSNameOverride)</BuildCommandArgs>
- <!-- core-sdk always wants to build portable on OSX and FreeBSD -->
- <BuildCommandArgs Condition="'$(TargetOS)' == 'FreeBSD'">$(BuildCommandArgs) /p:CoreSetupRid=freebsd-x64 /p:PortableBuild=true</BuildCommandArgs>
-diff --git a/repos/core-setup.common.props b/repos/core-setup.common.props
-index 39821269..8e2fb7a5 100644
---- a/repos/core-setup.common.props
-+++ b/repos/core-setup.common.props
-@@ -6,7 +6,7 @@
- <OverrideTargetRid>$(TargetRid)</OverrideTargetRid>
- <OverrideTargetRid Condition="'$(TargetOS)' == 'OSX'">osx-x64</OverrideTargetRid>
- <OverrideTargetRid Condition="'$(TargetOS)' == 'FreeBSD'">freebsd-x64</OverrideTargetRid>
-- <OverrideTargetRid Condition="'$(TargetOS)' == 'Linux' and ('$(PortableBuild)' == 'true' or '$(BuildingPortableRuntime)' == 'true')">linux-$(Platform)</OverrideTargetRid>
-+ <OverrideTargetRid Condition="'$(TargetOS)' == 'Linux' and ('$(PortableBuild)' == 'true' or '$(BuildingPortableRuntime)' == 'true')">linux-musl-$(Platform)</OverrideTargetRid>
- <OverridePortable>$(PortableBuild)</OverridePortable>
- <OverridePortable Condition="'$(TargetOS)' == 'OSX' or '$(TargetOS)' == 'FreeBSD'">true</OverridePortable>
- <OverridePortable Condition="'$(BuildingPortableRuntime)' == 'true'">true</OverridePortable>
-diff --git a/repos/corefx.common.props b/repos/corefx.common.props
-index 8f214fbb..d7bc9800 100644
---- a/repos/corefx.common.props
-+++ b/repos/corefx.common.props
-@@ -12,7 +12,7 @@
- <OverrideTargetRid Condition="'$(TargetOS)' == 'OSX'">osx-x64</OverrideTargetRid>
- <OverrideTargetRid Condition="'$(TargetOS)' == 'FreeBSD'">freebsd-x64</OverrideTargetRid>
- <OverrideTargetRid Condition="'$(TargetOS)' == 'Windows_NT'">win-x64</OverrideTargetRid>
-- <OverrideTargetRid Condition="'$(TargetOS)' == 'Linux' and ('$(PortableBuild)' == 'true' or '$(BuildingPortableRuntime)' == 'true')">linux-$(Platform)</OverrideTargetRid>
-+ <OverrideTargetRid Condition="'$(TargetOS)' == 'Linux' and ('$(PortableBuild)' == 'true' or '$(BuildingPortableRuntime)' == 'true')">linux-musl-$(Platform)</OverrideTargetRid>
-
- <BuildArguments>$(FlagParameterPrefix)configuration $(Configuration)</BuildArguments>
- <BuildArguments Condition="'$(RunTests)' != 'true' AND '$(PrepForTests)' != 'true'">$(BuildArguments) $(FlagParameterPrefix)restore $(FlagParameterPrefix)build $(FlagParameterPrefix)pack /p:SkipTests=true</BuildArguments>
-@@ -24,7 +24,7 @@
- <BuildArguments>$(BuildArguments) /p:PackageRid=$(OverrideTargetRid)</BuildArguments>
- <!-- CoreFX parses this argument for a OS "family", i.e. rhel.7 to rhel. OSX doesn't have the extra identifier so we need to include the
- "-x64" so CoreFX can find a character to break on (digits, hyphen, period). -->
-- <BuildArguments Condition="'$(TargetOS)' != 'OSX'">$(BuildArguments) /p:RuntimeOS=$(OverrideTargetRid.Substring(0, $(OverrideTargetRid.IndexOf("-"))))</BuildArguments>
-+ <BuildArguments Condition="'$(TargetOS)' != 'OSX'">$(BuildArguments) /p:RuntimeOS=$(OverrideTargetRid.Substring(0, $(OverrideTargetRid.IndexOf("-"))))-musl</BuildArguments>
- <BuildArguments Condition="'$(TargetOS)' == 'OSX'">$(BuildArguments) /p:RuntimeOS=$(OverrideTargetRid)</BuildArguments>
- <BuildArguments>$(BuildArguments) /p:PortableBuild=$(OverridePortableBuild)</BuildArguments>
- <BuildArguments>$(BuildArguments) /p:ILAsmToolPath=$(ToolPackageExtractDir)coreclr-tools/</BuildArguments>
---
-2.34.1
-
diff --git a/testing/dotnet31-bootstrap/cli_add-zsh-compdef-completion-script.patch b/testing/dotnet31-bootstrap/cli_add-zsh-compdef-completion-script.patch
deleted file mode 100644
index 6bba2504342..00000000000
--- a/testing/dotnet31-bootstrap/cli_add-zsh-compdef-completion-script.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From 4c74721e1f5da9642adab03075dda2f55719ac7b Mon Sep 17 00:00:00 2001
-Patch-Source: https://github.com/dotnet/sdk/pull/14239
-From: Esgariot <esgariot@icloud.com>
-Date: Mon, 19 Oct 2020 23:42:37 +0200
-Subject: [PATCH 1/1] Add zsh compdef completion script.
-
-Continuing off of PR 13384 in upstream.
-This commit is ready to be rebased to include appropriate co-authors
-before merging PR.
-
----
- scripts/register-completions.zsh | 13 +++----------
- 1 file changed, 3 insertions(+), 10 deletions(-)
-
-diff --git a/scripts/register-completions.zsh b/scripts/register-completions.zsh
-index 8eebe9a867..faa32fef71 100644
---- a/scripts/register-completions.zsh
-+++ b/scripts/register-completions.zsh
-@@ -1,10 +1,3 @@
--# zsh parameter completion for the dotnet CLI
--
--_dotnet_zsh_complete()
--{
-- local completions=("$(dotnet complete "$words")")
--
-- reply=( "${(ps:\n:)completions}" )
--}
--
--compctl -K _dotnet_zsh_complete dotnet
-+#compdef dotnet
-+local completions=("$(dotnet complete "$words")")
-+[[ -n "$completions" ]] && compadd -- "${(ps:\n:)completions}"
---
-2.34.1
-
diff --git a/testing/dotnet31-bootstrap/core-sdk_generate-layout-core-setup-blob-path-fix.patch b/testing/dotnet31-bootstrap/core-sdk_generate-layout-core-setup-blob-path-fix.patch
deleted file mode 100644
index fa35a2debd5..00000000000
--- a/testing/dotnet31-bootstrap/core-sdk_generate-layout-core-setup-blob-path-fix.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 94e8b5473285f0ae97204c726b2f8119f178f197 Mon Sep 17 00:00:00 2001
-From: Antoine Martin <dev@ayakael.net>
-Date: Sun, 5 Dec 2021 15:33:35 +0000
-Subject: [PATCH 1/1] GenerateLayout CoreSetup blob path fix
-
-<dotnet/core-setup> blobs are written to $builddir/artifacts/obj/x64/Release/
-blobs/Runtime/3.1.20-alpine.3.15 while installer expects them in 3.1.20.
-This patches <dotnet/installer>/src/redist/targets/GenerateLayout.targets
-to point to actual path.
-
----
- src/redist/targets/GenerateLayout.targets | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/redist/targets/GenerateLayout.targets b/src/redist/targets/GenerateLayout.targets
-index eb4e312c0..240dbf403 100644
---- a/src/redist/targets/GenerateLayout.targets
-+++ b/src/redist/targets/GenerateLayout.targets
-@@ -12,7 +12,7 @@
- <PropertyGroup>
- <!-- Blob storage directories are not stabilized, so these must refer to a package that does not stabilize -->
- <AspNetCoreBlobVersion>$(MicrosoftAspNetCoreAppRuntimewinx64PackageVersion)</AspNetCoreBlobVersion>
-- <CoreSetupBlobVersion>$(MicrosoftNETCoreAppRuntimePackageVersion)</CoreSetupBlobVersion>
-+ <CoreSetupBlobVersion>$(MicrosoftNETCoreAppRuntimePackageVersion)-$([System.Text.RegularExpressions.Regex]::Replace($(Rid), "-.*", ""))</CoreSetupBlobVersion>
-
- <!-- Change these individually to or $(CoreSetupBlobVersion), $(AspNetCoreBlobVersion), or appropriate fixed version depending if corresponding .Ref packages are unpinned. -->
- <NETCoreAppTargetingPackBlobVersion Condition="'$(Rid)' != 'win-arm64'">3.1.0-rtm.19565.2</NETCoreAppTargetingPackBlobVersion>
---
-2.34.0
-
diff --git a/testing/dotnet31-bootstrap/core-setup_rid-plat-generation-on-alpine-fix.patch b/testing/dotnet31-bootstrap/core-setup_rid-plat-generation-on-alpine-fix.patch
deleted file mode 100644
index c1b73dd9e52..00000000000
--- a/testing/dotnet31-bootstrap/core-setup_rid-plat-generation-on-alpine-fix.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From 0bbf075007df7313cceccfc9ad0512db912dfcbd Mon Sep 17 00:00:00 2001
-Patch-Source: https://github.com/dotnet/core-setup/pull/9195
-From: Antoine Martin <dev@ayakael.net>
-Date: Tue, 22 Feb 2022 01:18:45 +0000
-Subject: [PATCH 1/1] Fixed __rid_plat generation on alpine for core-setup
-
-<dotnet/core-setup>/src/corehost/build.sh generates wrong plat_rid on Alpine
-Generated RID is expected to be alpine.x.xx-xx, while the computed RID
-is linux-musl-xxx. This patches it by matching what's expected.
-
-On portable builds it also broken as computed RID is linux rather
-than the expected linux-musl
-
----
- src/corehost/build.sh | 7 +++----
- 1 file changed, 3 insertions(+), 4 deletions(-)
-
-diff --git a/src/corehost/build.sh b/src/corehost/build.sh
-index fb503e74..c3b34321 100755
---- a/src/corehost/build.sh
-+++ b/src/corehost/build.sh
-@@ -21,14 +21,11 @@ init_rid_plat()
- __rid_plat=""
- if [ -e /etc/os-release ]; then
- source /etc/os-release
-- if [[ "$ID" == "rhel" ]]; then
-+ if [ "$ID" == "rhel" ] || [ "$ID" == "alpine" ] ; then
- # remove the last version number
- VERSION_ID=${VERSION_ID%.*}
- fi
- __rid_plat="$ID.$VERSION_ID"
-- if [[ "$ID" == "alpine" ]]; then
-- __rid_plat="linux-musl"
-- fi
- elif [ -e /etc/redhat-release ]; then
- local redhatRelease=$(</etc/redhat-release)
- if [[ $redhatRelease == "CentOS release 6."* || $redhatRelease == "Red Hat Enterprise Linux Server release 6."* ]]; then
-@@ -50,6 +47,8 @@ init_rid_plat()
- __rid_plat="osx"
- elif [ "$(uname -s)" == "FreeBSD" ]; then
- __rid_plat="freebsd"
-+ elif [[ "$ID" == "alpine" ]]; then
-+ __rid_plat="linux-musl"
- else
- __rid_plat="linux"
- fi
---
-2.34.1
-
diff --git a/testing/dotnet31-bootstrap/coreclr_non-portable-distrorid-fix-alpine.patch b/testing/dotnet31-bootstrap/coreclr_non-portable-distrorid-fix-alpine.patch
deleted file mode 100644
index 2780675f3f2..00000000000
--- a/testing/dotnet31-bootstrap/coreclr_non-portable-distrorid-fix-alpine.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From 88a1cd85cbc73631d67406b3ad740ee7bd36bc8b Mon Sep 17 00:00:00 2001
-Patch-Source: https://github.com/dotnet/coreclr/pull/28227
-From: Antoine Martin <dev@ayakael.net>
-Date: Sat, 4 Dec 2021 05:03:48 +0000
-Subject: [PATCH 1/1] Fix non-portable distrorid alpine generation
-
-<dotnet/coreclr>/init-distro-id.sh generates incorrect DistroRid on Alpine.
-While the expected DistroRid (alpine-x.xx-xxx) should only include macro
-version, init-distro-id.sh includes the micro version. This patches it
-to cut off the trailing subversion off of VERSION_ID by treating it
-the same way RHEL's VERSION_ID is treated.
-
----
- init-distro-rid.sh | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/init-distro-rid.sh b/init-distro-rid.sh
-index 49d8981c4f..7cec3cf649 100755
---- a/init-distro-rid.sh
-+++ b/init-distro-rid.sh
-@@ -51,7 +51,7 @@ initNonPortableDistroRid()
- # We have forced __PortableBuild=0. This is because -portablebuld
- # has been passed as false.
- if (( ${isPortable} == 0 )); then
-- if [ "${ID}" == "rhel" ]; then
-+ if [ "${ID}" == "rhel" ] || [ "${ID}" = "alpine" ]; then
- # remove the last version digit
- VERSION_ID=${VERSION_ID%.*}
- fi
---
-2.34.0
-
diff --git a/testing/dotnet31-bootstrap/corefx_added-alpine-315-rid.patch b/testing/dotnet31-bootstrap/corefx_added-alpine-315-rid.patch
deleted file mode 100644
index a618166aa94..00000000000
--- a/testing/dotnet31-bootstrap/corefx_added-alpine-315-rid.patch
+++ /dev/null
@@ -1,114 +0,0 @@
-From 4243324d64dda9fbcaa76c37cf1e5090205d0320 Mon Sep 17 00:00:00 2001
-Patch-Source: https://github.com/dotnet/corefx/pull/43129
-From: Antoine Martin <dev@ayakael.net>
-Date: Sat, 4 Dec 2021 04:59:26 +0000
-Subject: [PATCH 1/1] Added Alpine 3.15 rid
-
-Adds RID for Alpine 3.15
-
----
- .../runtime.compatibility.json | 53 ++++++++++++++++++-
- pkg/Microsoft.NETCore.Platforms/runtime.json | 13 ++++-
- .../runtimeGroups.props | 2 +-
- 3 files changed, 65 insertions(+), 3 deletions(-)
-
-diff --git a/pkg/Microsoft.NETCore.Platforms/runtime.compatibility.json b/pkg/Microsoft.NETCore.Platforms/runtime.compatibility.json
-index f34e8dbb82..6b0678be9f 100644
---- a/pkg/Microsoft.NETCore.Platforms/runtime.compatibility.json
-+++ b/pkg/Microsoft.NETCore.Platforms/runtime.compatibility.json
-@@ -224,6 +224,57 @@
- "any",
- "base"
- ],
-+ "alpine.3.15": [
-+ "alpine.3.15",
-+ "alpine.3.14",
-+ "alpine.3.13",
-+ "alpine.3.12",
-+ "alpine.3.11",
-+ "alpine.3.10",
-+ "alpine.3.9",
-+ "alpine.3.8",
-+ "alpine.3.7",
-+ "alpine.3.6",
-+ "alpine",
-+ "linux-musl",
-+ "linux",
-+ "unix",
-+ "any",
-+ "base"
-+ ],
-+ "alpine.3.15-x64": [
-+ "alpine.3.15-x64",
-+ "alpine.3.15",
-+ "alpine.3.14-x64",
-+ "alpine.3.14",
-+ "alpine.3.13-x64",
-+ "alpine.3.13",
-+ "alpine.3.12-x64",
-+ "alpine.3.12",
-+ "alpine.3.11-x64",
-+ "alpine.3.11",
-+ "alpine.3.10-x64",
-+ "alpine.3.10",
-+ "alpine.3.9-x64",
-+ "alpine.3.9",
-+ "alpine.3.8-x64",
-+ "alpine.3.8",
-+ "alpine.3.7-x64",
-+ "alpine.3.7",
-+ "alpine.3.6-x64",
-+ "alpine.3.6",
-+ "alpine-x64",
-+ "alpine",
-+ "linux-musl-x64",
-+ "linux-musl",
-+ "linux-x64",
-+ "linux",
-+ "unix-x64",
-+ "unix",
-+ "any",
-+ "base"
-+ ],
-+
- "alpine.3.6": [
- "alpine.3.6",
- "alpine",
-diff --git a/pkg/Microsoft.NETCore.Platforms/runtime.json b/pkg/Microsoft.NETCore.Platforms/runtime.json
-index 20082ac80f..20485cce4d 100644
---- a/pkg/Microsoft.NETCore.Platforms/runtime.json
-+++ b/pkg/Microsoft.NETCore.Platforms/runtime.json
-@@ -66,6 +66,17 @@
- "alpine.3.13-x64"
- ]
- },
-+ "alpine.3.15": {
-+ "#import": [
-+ "alpine.3.14"
-+ ]
-+ },
-+ "alpine.3.15-x64": {
-+ "#import": [
-+ "alpine.3.15",
-+ "alpine.3.14-x64"
-+ ]
-+ },
- "alpine.3.6": {
- "#import": [
- "alpine"
-diff --git a/pkg/Microsoft.NETCore.Platforms/runtimeGroups.props b/pkg/Microsoft.NETCore.Platforms/runtimeGroups.props
-index 3434ed138a..c466a38915 100644
---- a/pkg/Microsoft.NETCore.Platforms/runtimeGroups.props
-+++ b/pkg/Microsoft.NETCore.Platforms/runtimeGroups.props
-@@ -16,7 +16,7 @@
- <RuntimeGroup Include="alpine">
- <Parent>linux-musl</Parent>
- <Architectures>x64</Architectures>
-- <Versions>3.6;3.7;3.8;3.9;3.10;3.11;3.12;3.13;3.14</Versions>
-+ <Versions>3.6;3.7;3.8;3.9;3.10;3.11;3.12;3.13;3.14;3.15</Versions>
- </RuntimeGroup>
-
- <RuntimeGroup Include="android">
---
-2.34.0
-
diff --git a/testing/dotnet31-bootstrap/corefx_fix-build-clang10.patch b/testing/dotnet31-bootstrap/corefx_fix-build-clang10.patch
deleted file mode 100644
index 7653b323d8a..00000000000
--- a/testing/dotnet31-bootstrap/corefx_fix-build-clang10.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From cfd492403e5a0f8d7d170937ca71a2bbe40563a3 Mon Sep 17 00:00:00 2001
-Patch-Source: https://github.com/dotnet/corefx/pull/43130
-From: Antoine Martin <dev@ayakael.net>
-Date: Thu, 29 Jul 2021 19:49:08 +0000
-Subject: [PATCH 1/1] fix build clang10
-
-Fixes a build error for clang 10
-
----
- src/Native/Unix/CMakeLists.txt | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/src/Native/Unix/CMakeLists.txt b/src/Native/Unix/CMakeLists.txt
-index c5772c7e02..910823581d 100644
---- a/src/Native/Unix/CMakeLists.txt
-+++ b/src/Native/Unix/CMakeLists.txt
-@@ -26,6 +26,8 @@ add_compile_options(-Wno-empty-translation-unit)
- add_compile_options(-Wno-cast-align)
- add_compile_options(-Wno-typedef-redefinition)
- add_compile_options(-Wno-c11-extensions)
-+add_compile_options(-Wno-sign-conversion)
-+add_compile_options(-Wno-unused-result)
- add_compile_options(-I${CMAKE_CURRENT_SOURCE_DIR}/Common)
- add_compile_options(-I${CMAKE_CURRENT_BINARY_DIR}/Common)
- add_compile_options(-g)
---
-2.32.0
-
diff --git a/testing/dotnet31-bootstrap/references_sh-build-fix.patch b/testing/dotnet31-bootstrap/references_sh-build-fix.patch
deleted file mode 100644
index 184c8f90c10..00000000000
--- a/testing/dotnet31-bootstrap/references_sh-build-fix.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 7b1f102db70fd8c86f21c722669c9f7337367eee Mon Sep 17 00:00:00 2001
-From: Antoine Martin <dev@ayakael.net>
-Date: Sat, 8 Jan 2022 17:02:38 +0000
-Subject: [PATCH 1/1] patched for sh
-
-Exec Command issue with bad character for busybox sh.
-This patches by removing bad character so that it can run with busybox
-
----
- src/targetPacks/assemble.targets | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/targetPacks/assemble.targets b/src/targetPacks/assemble.targets
-index 6b884ce2..e5009793 100644
---- a/src/targetPacks/assemble.targets
-+++ b/src/targetPacks/assemble.targets
-@@ -13,7 +13,7 @@
- <Message Importance="High" Text="[$([System.DateTime]::Now.ToString('HH:mm:ss.ff'))] Assemble TargetingPacks src." />
- <MakeDir Directories="@(TargetingPackSrc->'$(ArtifactsTFMPackTemp)$(MSBuildProjectName)/%(RecursiveDir)')" />
- <!-- Note: Hack below to not fill up build logs. Ilasm produces warning on validly disassembled il src. The awk below eats just that warning -->
-- <Exec Command="set -o pipefail;$(IlasmToolPathSB)ilasm %(TargetingPackSrc.Identity) -dll -quiet -nologo -output=$(ArtifactsTFMPackTemp)$(MSBuildProjectName)/%(RecursiveDir)%(TargetingPackSrc.Filename).dll |&amp; awk '!/warning : Method has no body/'" IgnoreStandardErrorWarningFormat="true"/>
-+ <Exec Command="set -o pipefail;$(IlasmToolPathSB)ilasm %(TargetingPackSrc.Identity) -dll -quiet -nologo -output=$(ArtifactsTFMPackTemp)$(MSBuildProjectName)/%(RecursiveDir)%(TargetingPackSrc.Filename).dll | awk '!/warning : Method has no body/'" IgnoreStandardErrorWarningFormat="true"/>
- <Message Importance="High" Text="[$([System.DateTime]::Now.ToString('HH:mm:ss.ff'))] Done assembling TargetPacks src." />
- </Target>
- </Project>
---
-2.34.1
-
diff --git a/testing/dotnet31-build/APKBUILD b/testing/dotnet31-build/APKBUILD
deleted file mode 100644
index d23d7bc03e5..00000000000
--- a/testing/dotnet31-build/APKBUILD
+++ /dev/null
@@ -1,345 +0,0 @@
-# Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>
-# Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
-
-#
-# Variables for dotnet build version 3.1
-# This APKBUILD is designed to be the same for version 5.0 and under
-# except for the variables in this first section
-#
-
-pkgname=dotnet31-build
-pkgver=3.1.418
-pkgrel=0
-
-# Tag of tarball generator. This may change from usual due to mistakes from upstream
-_installertag="v$pkgver-SDK"
-
-# Tag of SBRP builder for dotnet 3.1
-_sbrptag=045b2888ccfaf4c203c945a09b3f41f0e6393d1c
-
-# this should match what is sourced by source-build's ./prep.sh script
-# and, at the very least, the artifacts version sourced, as defined in
-# eng/Version.Details.xml by var PrivateSourceBuiltArtifactsPackageVersion
-# Sometimes, this needs updating by stage0 scripts, thus it is bumped from this
-# version to establish that we are moving away from upstream
-_bootstrapver=3.1.416-r0
-
-# Patches to be used. String before '_' refers to repo to patch
-# Look for patch notes within each patch for what they fix / where they come from
-# build_* patches applies directly to $builddir
-_patches="
- application-insights_fix-net40-location.patch
- build_darc-fix-alpine.patch
- build_ignore-warnings.patch
- build_musl-build.patch
- cli_add-zsh-compdef-completion-script.patch
- coreclr_fix-musl-123.patch
- core-sdk_generate-layout-core-setup-blob-path-fix.patch
- core-setup_clang13-no-werror.patch
- core-setup_rid-plat-generation-on-alpine-fix.patch
- corefx_add-alpine-316-rid.patch
- corefx_clang13-no-werror.patch
- corefx_fix-build-clang13.patch
- references_sh-build-fix.patch
- "
-# Custom prepare
-default_prepare() {
- return
-}
-
-# Following for for dotnet builds version 5.0 and under
-_pkgver_macro=${pkgver%.*}
-_pkgver_prior=${pkgver%.*.*}
-_pkgver_name=${_pkgver_macro//[.0]}
-pkgdesc="The .NET $_pkgver_macro SDK"
-arch="x86_64"
-case $CARCH in
- x86_64) _dotnet_arch=x64;;
- aarch64) _dotnet_arch=arm64;;
- armv7) _dotnet_arch=arm;;
-esac
-url=https://www.microsoft.com/net/core
-license="MIT"
-_bootstrappkg="bootstrap"
-makedepends="
- bash
- clang
- cmake
- dotnet$_pkgver_name-$_bootstrappkg=$_bootstrapver
- dotnet$_pkgver_name-$_bootstrappkg-artifacts=$_bootstrapver
- findutils
- git
- grep
- icu-dev
- inetutils-syslogd
- krb5-dev
- libgit2-dev
- libintl
- libunwind-dev
- libxml2-dev
- libxml2-utils
- linux-headers
- lldb-dev
- llvm
- llvm-dev
- lttng-ust-dev
- nodejs
- openssl-dev
- zlib-dev
- "
-options="!check" # No test suite
-
-# packages artifacts if building bootstrap
-[ "$_bootstrappkg" = "stage0" ] && subpackages="$pkgname-artifacts"
-
-source="
- source-build-$_installertag.tar.gz::https://github.com/dotnet/source-build/archive/refs/tags/$_installertag.tar.gz
- source-build-reference-packages-$_sbrptag.tar.gz::https://github.com/dotnet/source-build-reference-packages/archive/$_sbrptag.tar.gz
- $_patches
- "
-builddir="$srcdir/source-build-${_installertag/v}"
-_sbrpdir="$srcdir"/source-build-reference-packages-$_sbrptag
-_artifactsdir="/usr/share/dotnet/artifacts/${_bootstrapver%-*}"
-_referencesdir="/usr/share/dotnet/artifacts/${_bootstrapver%-*}/SourceBuildReferencePackages"
-_cli_root="$srcdir"/bootstrap
-
-# Custom patch logics for dotnet version 5.0 and under
-_patch() {
- local i failed=
- if ! have_patches; then
- return 0
- fi
- [ -d "$builddir" ] || { error "Is \$builddir set correctly?"; return 1; }
- msg "Deploying patches"
- for i in $source; do
- case ${i%::*} in
- build_*.patch)
- echo "applying $i to sourcebuild"
- patch ${patch_args:--p1} -i "$srcdir/$(filename_from_uri $i)" || failed="$failed $i"
- ;;
- references_*.patch)
- echo "applying $i to references"
- cd "$_sbrpdir"
- patch ${patch_args:--p1} -i "$srcdir/$(filename_from_uri $i)" || failed="$failed $i"
- ;;
- *.patch)
- local _package=$(echo $i | sed 's|_.*||')
- local _patch=$(echo $i | sed "s|$_package\_||")
- echo "deploying $_patch to $_package for application by sourcebuild"
- [ -d patches/$_package ] || mkdir -p patches/$_package
- cp "$srcdir"/"$i" patches/$_package/$_patch
- ;;
- esac
- done
-
- if [ -z "$failed" ]; then
- return 0
- fi
- error "The following patches failed to apply:"
- for i in $failed; do
- printf " %s\n" "$i"
- done
-}
-
-# aport for bootstrap is effectively a copy of this aport, except that it
-# builds using stage0 bits, which are sourced from Microsoft prebuilts.
-# Another major difference is that rather than package build artifacts
-# under $dotnet_path/build to be packages later, it send artifacts to
-# $dotnet_path/bootstrap, as this is the directory that is sourced by
-# _prepare_bootstrap for build.
-_update_bootstrap() {
- msg "Updating bootstrap APKBUILD"
- # Copy patches
- rm ../dotnet$_pkgver_name-bootstrap/*.patch || true
- for i in ../dotnet"$_pkgver_name"-build/*.patch; do
- cp $i ${i/$_pkgver_name-build/$_pkgver_name-bootstrap}
- done
-
- # Generate bootstrap
- {
- echo -n "# "
- echo "Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>"
- echo "# Contributor: Antoine Martin (ayakael) <dev@ayakael.net>"
- echo
- echo "#"
- echo "# This is generated from dotnet$_pkgver_name-build's APKBUILD."
- echo "# Any modifications to be done in that APKBUILD and propagated by"
- echo -n "# executing 'abuild _update_bootstrap'"
- sed \
- -e "s/pkgname=dotnet$_pkgver_name-build/pkgname=dotnet$_pkgver_name-bootstrap/" \
- -e "s/_bootstrappkg=\"bootstrap\"/_bootstrappkg=\"stage0\"/" \
- -e "1,2d" \
- ../dotnet$_pkgver_name-build/APKBUILD
- } > ../dotnet$_pkgver_name-bootstrap/APKBUILD
-}
-
-# dotnet relies on itself when building, we thus need a bootstrap runtime
-# that is copied to write-capable folder
-_prepare_bootstrap() {
- msg "Settings up bootstrap"
- cp -r /usr/share/dotnet/bootstrap/${_bootstrapver%-*} "$_cli_root"
-
- # Corrupt libcoreclrtraceptprovider.so when lttng <=2.13.0
- # is detected as tracing is broken on dotnet platform
- # due to ABI changes
- # See https://github.com/dotnet/runtime/issues/57784.
- if [ -f "/usr/lib/liblttng-ust.so.1 " ]; then
- rm "$_cli_root"/shared/Microsoft.NETCore.App/*/libcoreclrtraceptprovider.so
- fi
-}
-
-# Build doesn't set all the right executable bits for the right file types
-_fix_executable() {
- # add executable bit
- find "$1" -type f \( \
- -name 'apphost' -o \
- -name 'singlefilehost' -o \
- -name 'lib*so' \
- \) \
- -exec chmod +x '{}' \;
-
- # remove executable bit
- find "$1" -type f \( \
- -name '*.a' -o \
- -name '*.dll' -o \
- -name '*.h' -o \
- -name '*.json' -o \
- -name '*.pdb' -o \
- -name '*.props' -o \
- -name '*.pubxml' -o \
- -name '*.targets' -o \
- -name '*.txt' -o \
- -name '*.xml' \
- \) \
- -exec chmod -x '{}' \;
-}
-
-prepare() {
- default_prepare
-
- # source-build expects to be in a git repo
- git init
- git add ./*
- git commit -m 'initial commit'
- git remote add origin https://github.com/dotnet/source-build.git
-
- _patch
- _prepare_bootstrap
-
- # by default build populates these folders using Artifacts and SBRP archives
- # we are instead going to populate them from the prebuilt artifacts provided
- # by dotnetx-bootstrap-artifacts
- [ -f "$builddir/packages" ] || mkdir -p "$builddir"/packages
- cp -r "$_artifactsdir" "$builddir"/packages/prebuilt
- mv "$builddir"/packages/prebuilt/SourceBuildReferencePackages "$builddir"/packages/reference
- # make sure archives wont be downloaded or aren't expected.
- [ -d "$builddir"/packages/archive ] && rm -r "$builddir"/packages/archive
-
- # by default, coreclr-tools is not sourced from dotnetx-bootstrap-artifacts, thus
- # it'll be the wrong architecture. Below replaces default coreclr-tools with
- # versions from artifacts, which have been built properly
- mkdir -p "$builddir"/Tools/source-built
- cp -r "$builddir"/packages/prebuilt/coreclr-tools "$builddir"/Tools/source-built/.
-}
-
-build() {
- msg "Building $pkgname-$pkgver"
-
- # logs args, else the output is forwarded to log files which isn't ideal in a
- # pipeline environment
- local args="
- /v:minimal
- /p:LogVerbosity=minimal
- /p:MinimalConsoleLogOutput=true
- "
-
- # defaults args for build on Alpine
- local args="$args
- /p:SkipDownloadingPreviouslySourceBuiltPackages=true
- /p:SkipDownloadingReferencePackages=true
- /p:ContinueOnPrebuiltBaselineError=true
- /p:SkipPrebuiltEnforcement=true
- /p:UseSystemLibraries=true
- /p:UseSystemLibunwind=true
- "
-
- ./build.sh \
- --with-sdk "$_cli_root" \
- $args | tee -a build.log
-
- # only build references when building with stage0
- [ "$_bootstrappkg" = "bootstrap" ] && return
-
- msg "Building source build reference packages"
- cd "$_sbrpdir"
- ./build.sh \
- --with-sdk "$_cli_root" \
- --with-packages "$builddir"/artifacts/$_dotnet_arch/Release/Private.SourceBuilt.Artifacts.0.1.0-dev.tar.gz \
- | tee -a build.log
-}
-
-package() {
- local subdir=${pkgname/*-}
- local targetdir="$pkgdir"/usr/share/dotnet/$subdir/$pkgver
-
- # directory creation
- install -dm 755 \
- "$targetdir"/docs \
- "$targetdir"/comp
-
- # unpack build artifacts to subdir defined by pkgname. If bootstrap, unpacks
- # to bootstrap, if build unpacks to build
- tar -xzf "$builddir"/artifacts/$_dotnet_arch/Release/dotnet-sdk-$_pkgver_macro*.tar.gz -C "$targetdir"/ --no-same-owner
-
- # assemble completions
- install -m 755 "$builddir"/artifacts/src/cli.*/scripts/register-completions.bash "$targetdir"/comp/
- install -m 755 "$builddir"/artifacts/src/cli.*/scripts/register-completions.zsh "$targetdir"/comp/
-
- # assemble docs
- find "$builddir" -iname 'dotnet*.1' -type f -exec cp '{}' "$targetdir"/docs/ \;
-
- # some files either should or should not have executable bits
- _fix_executable "$pkgdir"
-
- # See https://github.com/dotnet/source-build/issues/2579
- find "$pkgdir" -type f -name 'testhost.x86' -delete
- find "$pkgdir" -type f -name 'vstest.console' -delete
-}
-
-# build relies on a plethora of nupkgs which are provided by this Artifacts file.
-# stage0 sources these from Microsoft, which then allows bootstrap to build
-# locally hosted versions. The following unpacks built tarball into directory
-# for use by future builds.
-artifacts() {
- pkgdesc="Internal package for building .NET $_pkgver_macro Software Development Kit"
-
- # directory creation
- install -dm 755 \
- "$subpkgdir"/usr/share/dotnet/artifacts/$pkgver/SourceBuildReferencePackages \
- "$subpkgdir"/usr/share/licenses
-
- # extract artifacts to artifacts dir for use by future dotnet builds
- tar -xzf "$builddir"/artifacts/$_dotnet_arch/Release/Private.SourceBuilt.Artifacts.*.tar.gz -C "$subpkgdir"/usr/share/dotnet/artifacts/$pkgver/ --no-same-owner \
- --exclude '*Intermediate*'
-
- # pulls SBRP artifacts
- install -m 644 "$_sbrpdir"/artifacts/reference-packages/* "$subpkgdir"/usr/share/dotnet/artifacts/$pkgver/SourceBuildReferencePackages/.
-}
-
-sha512sums="
-9da463732a077dcbc84deccd6b0f8a6c4472800e2f4affc24a5c9eb5f6983fc6adeac8e15eda180b9474b2f2c7fd5a4a73ed5d4e41e2a5abec49cff6bc79e4c0 source-build-v3.1.418-SDK.tar.gz
-9d7ae29c311cd9550389225cab891df359385e098aaccb8100c77832ea7b7b1f6a7984d811cb1f45bd323182149246c33f2016b4ee85d97ee9b29243acc644bc source-build-reference-packages-045b2888ccfaf4c203c945a09b3f41f0e6393d1c.tar.gz
-1ef3cb59231b7462167f782cbfcacee4a7bc7d73ec635de4ea3f4510cc6d46c5548ce2ec2ce3d3943bf6d1c29cb288dc1c82f1b22fe1c61fb6013e2df728467e application-insights_fix-net40-location.patch
-f945552c083828e80031bdae584514aa8e7eb64544cc1fc3ca658a4162303f2a1caf076f44bc567c34ed2cf4c42323eaaafae0719adf9855756af125a566e99b build_darc-fix-alpine.patch
-bd28775f37c9d448eab52922d0b8e0a6a32a3e16f772337850c48bd886e0302f97423b7b58dbc010c30764772f0bc00115ace72422dd12f447a5282ae62da4b3 build_ignore-warnings.patch
-e2a63a9c262a95698eba5639a32eb8ba968a3d4c1fb70ea9890f3915e9923190a4aabed0ef74d64cb5199ee9d06c77736d36861ed8418ab8638552763c2c58b5 build_musl-build.patch
-55afa9c74be6f5a87f1ff5aa44caad094cf620eb4388f6407218acf3d58a878f5565a0e875e95c3dbe0efca1879c120ee4b8076c521bfc9d6069a652c4a4fdd8 cli_add-zsh-compdef-completion-script.patch
-16181c48f9851da9cebab8f988ca8da4afd25c23c4f60567ef1fdec6b99da9dc2f77f2eeac4dbb919ec73bb12c24bea316e0dcb46d2c4c96913d904a236ed0f6 coreclr_fix-musl-123.patch
-5dffe94647daebd0a56ffd63db7f7f64ac7c4b279aa7189396d792fe4143989a91ffdb86f687dea3caa2475ac2ad43b95abcddacd175fef392bd24b52c957964 core-sdk_generate-layout-core-setup-blob-path-fix.patch
-f485faa18ae5884c35c6f672f3aec174628239a6137835b8db0647eec35c6b0bab042aa34b1b84631845944e0b86386ab64667d5d287d4de098c22957eae6063 core-setup_clang13-no-werror.patch
-8f2de7774a62c846a3c5806a2a6fa651930f30dc91f06fac7a8dc9032cb1fb8bbff6bdd833fc0767effcd35751ee43a4ca059fced926f2cd9f970c88dd7271eb core-setup_rid-plat-generation-on-alpine-fix.patch
-141dee507f9c2947997d940278edc908ea76272bc320189c0d24cd219f466f48c6b072655dca8f2d5d681ce93be547c28edc2e4852f3c12c729812c9616d74d1 corefx_add-alpine-316-rid.patch
-e1dc0bb0112d116812646098565465ce863c42545a4c047806a73fbaf41202adc16917c6755874093b32b68bce2dfaa07e27fa63c34f02f28cda721933f63acb corefx_clang13-no-werror.patch
-44edb976e75239d0133ea92a98af23e93e0de02022192738448c554d59391f15bc2a50e7d059696a8caebb6a0233c389fd0edb21b129a4df6b173889b198b4c5 corefx_fix-build-clang13.patch
-441528c42256f30dda83854f78d53d2507b6e7a159aea4456c3872a8be3690f8f222709a6ec70503cd1875d7d8c2f43d7a54ef0c30761fbdfc3c2a394136f7fc references_sh-build-fix.patch
-"
diff --git a/testing/dotnet31-build/README.md b/testing/dotnet31-build/README.md
deleted file mode 100644
index 34b0abfe49d..00000000000
--- a/testing/dotnet31-build/README.md
+++ /dev/null
@@ -1,17 +0,0 @@
-# Description
-APKBUILD for dotnet31-build. This is sourced by dotnet31-runtime and dotnet31-sdk,
-which handles the actual packaging due to this aport building products with
-varying versions
-
-# Generated packages
-* dotnet31-build (aimed for internal use)
-
-# How to build dotnet31 stack
-* Build testing/dotnet31-stage0 (provides prebuilt bits for first bootstrap bld)
-* Build testing/dotnet31-bootstrap (provides "tainted" SDK for first build)
-* Build testing/dotnet31-build ("untainted" build of dotnet)
-* Build testing/dotnet31-runtime (packages runtime bits from dotnet31-build)
-* Build testing/dotnet31-sdk (packages sdk bits from dotnet31-build)
-
-# Special functions
-* abuild _update_bootstrap: Updates dotnet31-bootstrap to current version
diff --git a/testing/dotnet31-build/application-insights_fix-net40-location.patch b/testing/dotnet31-build/application-insights_fix-net40-location.patch
deleted file mode 100644
index de51bc05888..00000000000
--- a/testing/dotnet31-build/application-insights_fix-net40-location.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-From 387efb0ac01e40cd85cf9f5ce770be6437265ca4 Mon Sep 17 00:00:00 2001
-Patch-Source: https://github.com/microsoft/ApplicationInsights-dotnet/issues/2498
-From: Antoine Martin <dev@ayakael.net>
-Date: Fri, 4 Jun 2021 13:32:53 +0000
-Subject: [PATCH] FIxed Net40 location
-
-Because paths on Linux are case sensitive. Applications insights looks
-for <dotnet/applicationsinsights>/src/Core/Managed/net40 in net40
-while the repo has a Net40. Patch moves whatever is in Net40 to net40
----
- src/Core/Managed/{Net40 => net40}/CorrelationHelper.cs | 0
- 1 file changed, 0 insertions(+), 0 deletions(-)
- rename src/Core/Managed/{Net40 => net40}/CorrelationHelper.cs (100%)
-
-diff --git a/src/Core/Managed/Net40/CorrelationHelper.cs b/src/Core/Managed/net40/CorrelationHelper.cs
-similarity index 100%
-rename from src/Core/Managed/Net40/CorrelationHelper.cs
-rename to src/Core/Managed/net40/CorrelationHelper.cs
---
-2.30.2
-
diff --git a/testing/dotnet31-build/build_darc-fix-alpine.patch b/testing/dotnet31-build/build_darc-fix-alpine.patch
deleted file mode 100644
index 9e33ddb3c1c..00000000000
--- a/testing/dotnet31-build/build_darc-fix-alpine.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From d07d50c6f8a5793badc50fb2c964b87dec87a3a1 Mon Sep 17 00:00:00 2001
-Patch-Source: https://github.com/dotnet/source-build/issues/1868)
-From: Antoine Martin <dev@ayakael.net>
-Date: Thu, 15 Jul 2021 15:37:33 +0000
-Subject: [PATCH 1/1] Fixed darc init for Alpine
-
-Darc has a segmentation fault on Alpine due to not chosing the correct
-binary architecture. This patch deletes all the wrong ones so that it
-is forced to chose the correct one. This issue only occurs when using
-dotnet-stage0-runtime, thus libunwind is suspected to be the issue as
-stage0 wasn't built with system libunwind.
----
- eng/common/darc-init.sh | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/eng/common/darc-init.sh b/eng/common/darc-init.sh
-index 82b2b57..5227a37 100755
---- a/eng/common/darc-init.sh
-+++ b/eng/common/darc-init.sh
-@@ -77,6 +77,9 @@ function InstallDarcCli {
- else
- echo $($dotnet_root/dotnet tool install $darc_cli_package_name --version $darcVersion --add-source "$arcadeServicesSource" -v $verbosity --tool-path "$toolpath")
- fi
-+ for i in win* ubuntu.1* rhel* osx fedora* debian*; do
-+ rm -R $toolpath/.store/microsoft.dotnet.darc/*/microsoft.dotnet.darc/*/tools/netcoreapp3.0/any/runtimes/${i}
-+ done
- }
-
- InstallDarcCli
---
-2.30.2
-
diff --git a/testing/dotnet31-build/build_ignore-warnings.patch b/testing/dotnet31-build/build_ignore-warnings.patch
deleted file mode 100644
index 75e5f62047f..00000000000
--- a/testing/dotnet31-build/build_ignore-warnings.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 764e5310c8059931cd542c5cdc869972d3520696 Mon Sep 17 00:00:00 2001
-From: Antoine Martin <dev@ayakael.net>
-Date: Mon, 10 Jan 2022 23:21:55 +0000
-Subject: [PATCH 1/1] ignore warnings
-
-Ignore warnings during build of coreclr
----
- repos/coreclr.common.props | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/repos/coreclr.common.props b/repos/coreclr.common.props
-index 8e4137d8..2b0a459a 100644
---- a/repos/coreclr.common.props
-+++ b/repos/coreclr.common.props
-@@ -2,7 +2,7 @@
- <Import Project="Sdk.props" Sdk="Microsoft.NET.Sdk" />
-
- <PropertyGroup>
-- <BuildArguments>$(Platform) $(Configuration) skiptests</BuildArguments>
-+ <BuildArguments>$(Platform) $(Configuration) skiptests ignorewarnings</BuildArguments>
- <BuildArguments Condition="'$(OS)' != 'Windows_NT'">$(BuildArguments) -ignoreWarnings</BuildArguments>
- <BuildArguments>$(BuildArguments) -skipmanagedtools</BuildArguments>
- <BuildArguments Condition="'$(OS)' != 'Windows_NT'">$(BuildArguments) -skiprestore</BuildArguments>
---
-2.34.1
-
diff --git a/testing/dotnet31-build/build_musl-build.patch b/testing/dotnet31-build/build_musl-build.patch
deleted file mode 100644
index 61351eb339d..00000000000
--- a/testing/dotnet31-build/build_musl-build.patch
+++ /dev/null
@@ -1,75 +0,0 @@
-From 97c51fb4d0cb42d62ee60215b13df4c2d76ca68f Mon Sep 17 00:00:00 2001
-From: "build@apk-groulx" <build@apk-groulx.praxis>
-Date: Fri, 11 Feb 2022 16:44:05 +0000
-Subject: [PATCH 1/1] musl-build
-
----
- repos/aspnetcore.proj | 1 +
- repos/core-sdk.proj | 2 +-
- repos/core-setup.common.props | 2 +-
- repos/corefx.common.props | 4 ++--
- 4 files changed, 5 insertions(+), 4 deletions(-)
-
-diff --git a/repos/aspnetcore.proj b/repos/aspnetcore.proj
-index fc04c1b8..e034ec0a 100644
---- a/repos/aspnetcore.proj
-+++ b/repos/aspnetcore.proj
-@@ -21,6 +21,7 @@
- <BuildCommandArgs>$(BuildCommandArgs) /p:BuildNodeJs=false</BuildCommandArgs>
- <BuildCommandArgs>$(BuildCommandArgs) /p:SourceBuildRuntimeIdentifier=$(OverrideTargetRid)</BuildCommandArgs>
- <BuildCommandArgs>$(BuildCommandArgs) /p:UseAppHost=false</BuildCommandArgs>
-+ <BuildCommandArgs>$(BuildCommandArgs) --os-name linux-musl</BuildCommandArgs>
-
- <LogVerbosityOptOut>true</LogVerbosityOptOut>
-
-diff --git a/repos/core-sdk.proj b/repos/core-sdk.proj
-index 7a78cf40..35cbb89d 100644
---- a/repos/core-sdk.proj
-+++ b/repos/core-sdk.proj
-@@ -9,7 +9,7 @@
- <OSNameOverride>$(TargetRid.Substring(0, $(TargetRid.IndexOf("-"))))</OSNameOverride>
- <BuildCommandArgs/>
- <BuildCommandArgs Condition="'$(TargetOS)' == 'Linux'">$(BuildCommandArgs) /p:Rid=$(TargetRid)</BuildCommandArgs>
-- <BuildCommandArgs Condition="'$(TargetOS)' == 'Linux'">$(BuildCommandArgs) /p:AspNetCoreSharedFxInstallerRid=linux-$(Platform)</BuildCommandArgs>
-+ <BuildCommandArgs Condition="'$(TargetOS)' == 'Linux'">$(BuildCommandArgs) /p:AspNetCoreSharedFxInstallerRid=linux-musl-$(Platform)</BuildCommandArgs>
- <BuildCommandArgs Condition="'$(TargetOS)' == 'Linux'">$(BuildCommandArgs) /p:OSName=$(OSNameOverride)</BuildCommandArgs>
- <!-- core-sdk always wants to build portable on OSX and FreeBSD -->
- <BuildCommandArgs Condition="'$(TargetOS)' == 'FreeBSD'">$(BuildCommandArgs) /p:CoreSetupRid=freebsd-x64 /p:PortableBuild=true</BuildCommandArgs>
-diff --git a/repos/core-setup.common.props b/repos/core-setup.common.props
-index 39821269..8e2fb7a5 100644
---- a/repos/core-setup.common.props
-+++ b/repos/core-setup.common.props
-@@ -6,7 +6,7 @@
- <OverrideTargetRid>$(TargetRid)</OverrideTargetRid>
- <OverrideTargetRid Condition="'$(TargetOS)' == 'OSX'">osx-x64</OverrideTargetRid>
- <OverrideTargetRid Condition="'$(TargetOS)' == 'FreeBSD'">freebsd-x64</OverrideTargetRid>
-- <OverrideTargetRid Condition="'$(TargetOS)' == 'Linux' and ('$(PortableBuild)' == 'true' or '$(BuildingPortableRuntime)' == 'true')">linux-$(Platform)</OverrideTargetRid>
-+ <OverrideTargetRid Condition="'$(TargetOS)' == 'Linux' and ('$(PortableBuild)' == 'true' or '$(BuildingPortableRuntime)' == 'true')">linux-musl-$(Platform)</OverrideTargetRid>
- <OverridePortable>$(PortableBuild)</OverridePortable>
- <OverridePortable Condition="'$(TargetOS)' == 'OSX' or '$(TargetOS)' == 'FreeBSD'">true</OverridePortable>
- <OverridePortable Condition="'$(BuildingPortableRuntime)' == 'true'">true</OverridePortable>
-diff --git a/repos/corefx.common.props b/repos/corefx.common.props
-index 8f214fbb..d7bc9800 100644
---- a/repos/corefx.common.props
-+++ b/repos/corefx.common.props
-@@ -12,7 +12,7 @@
- <OverrideTargetRid Condition="'$(TargetOS)' == 'OSX'">osx-x64</OverrideTargetRid>
- <OverrideTargetRid Condition="'$(TargetOS)' == 'FreeBSD'">freebsd-x64</OverrideTargetRid>
- <OverrideTargetRid Condition="'$(TargetOS)' == 'Windows_NT'">win-x64</OverrideTargetRid>
-- <OverrideTargetRid Condition="'$(TargetOS)' == 'Linux' and ('$(PortableBuild)' == 'true' or '$(BuildingPortableRuntime)' == 'true')">linux-$(Platform)</OverrideTargetRid>
-+ <OverrideTargetRid Condition="'$(TargetOS)' == 'Linux' and ('$(PortableBuild)' == 'true' or '$(BuildingPortableRuntime)' == 'true')">linux-musl-$(Platform)</OverrideTargetRid>
-
- <BuildArguments>$(FlagParameterPrefix)configuration $(Configuration)</BuildArguments>
- <BuildArguments Condition="'$(RunTests)' != 'true' AND '$(PrepForTests)' != 'true'">$(BuildArguments) $(FlagParameterPrefix)restore $(FlagParameterPrefix)build $(FlagParameterPrefix)pack /p:SkipTests=true</BuildArguments>
-@@ -24,7 +24,7 @@
- <BuildArguments>$(BuildArguments) /p:PackageRid=$(OverrideTargetRid)</BuildArguments>
- <!-- CoreFX parses this argument for a OS "family", i.e. rhel.7 to rhel. OSX doesn't have the extra identifier so we need to include the
- "-x64" so CoreFX can find a character to break on (digits, hyphen, period). -->
-- <BuildArguments Condition="'$(TargetOS)' != 'OSX'">$(BuildArguments) /p:RuntimeOS=$(OverrideTargetRid.Substring(0, $(OverrideTargetRid.IndexOf("-"))))</BuildArguments>
-+ <BuildArguments Condition="'$(TargetOS)' != 'OSX'">$(BuildArguments) /p:RuntimeOS=$(OverrideTargetRid.Substring(0, $(OverrideTargetRid.IndexOf("-"))))-musl</BuildArguments>
- <BuildArguments Condition="'$(TargetOS)' == 'OSX'">$(BuildArguments) /p:RuntimeOS=$(OverrideTargetRid)</BuildArguments>
- <BuildArguments>$(BuildArguments) /p:PortableBuild=$(OverridePortableBuild)</BuildArguments>
- <BuildArguments>$(BuildArguments) /p:ILAsmToolPath=$(ToolPackageExtractDir)coreclr-tools/</BuildArguments>
---
-2.34.1
-
diff --git a/testing/dotnet31-build/cli_add-zsh-compdef-completion-script.patch b/testing/dotnet31-build/cli_add-zsh-compdef-completion-script.patch
deleted file mode 100644
index 6bba2504342..00000000000
--- a/testing/dotnet31-build/cli_add-zsh-compdef-completion-script.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From 4c74721e1f5da9642adab03075dda2f55719ac7b Mon Sep 17 00:00:00 2001
-Patch-Source: https://github.com/dotnet/sdk/pull/14239
-From: Esgariot <esgariot@icloud.com>
-Date: Mon, 19 Oct 2020 23:42:37 +0200
-Subject: [PATCH 1/1] Add zsh compdef completion script.
-
-Continuing off of PR 13384 in upstream.
-This commit is ready to be rebased to include appropriate co-authors
-before merging PR.
-
----
- scripts/register-completions.zsh | 13 +++----------
- 1 file changed, 3 insertions(+), 10 deletions(-)
-
-diff --git a/scripts/register-completions.zsh b/scripts/register-completions.zsh
-index 8eebe9a867..faa32fef71 100644
---- a/scripts/register-completions.zsh
-+++ b/scripts/register-completions.zsh
-@@ -1,10 +1,3 @@
--# zsh parameter completion for the dotnet CLI
--
--_dotnet_zsh_complete()
--{
-- local completions=("$(dotnet complete "$words")")
--
-- reply=( "${(ps:\n:)completions}" )
--}
--
--compctl -K _dotnet_zsh_complete dotnet
-+#compdef dotnet
-+local completions=("$(dotnet complete "$words")")
-+[[ -n "$completions" ]] && compadd -- "${(ps:\n:)completions}"
---
-2.34.1
-
diff --git a/testing/dotnet31-build/core-sdk_generate-layout-core-setup-blob-path-fix.patch b/testing/dotnet31-build/core-sdk_generate-layout-core-setup-blob-path-fix.patch
deleted file mode 100644
index fa35a2debd5..00000000000
--- a/testing/dotnet31-build/core-sdk_generate-layout-core-setup-blob-path-fix.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 94e8b5473285f0ae97204c726b2f8119f178f197 Mon Sep 17 00:00:00 2001
-From: Antoine Martin <dev@ayakael.net>
-Date: Sun, 5 Dec 2021 15:33:35 +0000
-Subject: [PATCH 1/1] GenerateLayout CoreSetup blob path fix
-
-<dotnet/core-setup> blobs are written to $builddir/artifacts/obj/x64/Release/
-blobs/Runtime/3.1.20-alpine.3.15 while installer expects them in 3.1.20.
-This patches <dotnet/installer>/src/redist/targets/GenerateLayout.targets
-to point to actual path.
-
----
- src/redist/targets/GenerateLayout.targets | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/redist/targets/GenerateLayout.targets b/src/redist/targets/GenerateLayout.targets
-index eb4e312c0..240dbf403 100644
---- a/src/redist/targets/GenerateLayout.targets
-+++ b/src/redist/targets/GenerateLayout.targets
-@@ -12,7 +12,7 @@
- <PropertyGroup>
- <!-- Blob storage directories are not stabilized, so these must refer to a package that does not stabilize -->
- <AspNetCoreBlobVersion>$(MicrosoftAspNetCoreAppRuntimewinx64PackageVersion)</AspNetCoreBlobVersion>
-- <CoreSetupBlobVersion>$(MicrosoftNETCoreAppRuntimePackageVersion)</CoreSetupBlobVersion>
-+ <CoreSetupBlobVersion>$(MicrosoftNETCoreAppRuntimePackageVersion)-$([System.Text.RegularExpressions.Regex]::Replace($(Rid), "-.*", ""))</CoreSetupBlobVersion>
-
- <!-- Change these individually to or $(CoreSetupBlobVersion), $(AspNetCoreBlobVersion), or appropriate fixed version depending if corresponding .Ref packages are unpinned. -->
- <NETCoreAppTargetingPackBlobVersion Condition="'$(Rid)' != 'win-arm64'">3.1.0-rtm.19565.2</NETCoreAppTargetingPackBlobVersion>
---
-2.34.0
-
diff --git a/testing/dotnet31-build/core-setup_clang13-no-werror.patch b/testing/dotnet31-build/core-setup_clang13-no-werror.patch
deleted file mode 100644
index e66eeb27c17..00000000000
--- a/testing/dotnet31-build/core-setup_clang13-no-werror.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From e900fff68af76d51a59ac085b35ace76939bc007 Mon Sep 17 00:00:00 2001
-Patch-Source: https://src.fedoraproject.org/rpms/dotnet3.1/blob/rawhide/f/core-setup-no-werror.patch
-From: Omair Majid <omajid@redhat.com>
-Date: Tue, 18 Jan 2022 21:45:52 -0500
-Subject: [PATCH] Disable Werror
-
-This is so late in the release cycle that fixing warnings is just not
-really worth it. The general approach is to fix the issues in the
-development branches and disable warnings in the older release branches.
----
- src/settings.cmake | 1 -
- 1 file changed, 1 deletion(-)
-
-diff --git a/src/settings.cmake b/src/settings.cmake
-index ff1e04f9..5cc9b3ef 100644
---- a/src/settings.cmake
-+++ b/src/settings.cmake
-@@ -201,7 +201,6 @@ else()
- # compiling with -std=c++11.
- # add_compile_options(-Weverything)
- endif()
-- add_compile_options(-Werror)
- add_compile_options(-Wno-missing-field-initializers)
- add_compile_options(-Wno-unused-function)
- add_compile_options(-Wno-unused-local-typedef)
---
-2.34.1
diff --git a/testing/dotnet31-build/core-setup_rid-plat-generation-on-alpine-fix.patch b/testing/dotnet31-build/core-setup_rid-plat-generation-on-alpine-fix.patch
deleted file mode 100644
index c1b73dd9e52..00000000000
--- a/testing/dotnet31-build/core-setup_rid-plat-generation-on-alpine-fix.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From 0bbf075007df7313cceccfc9ad0512db912dfcbd Mon Sep 17 00:00:00 2001
-Patch-Source: https://github.com/dotnet/core-setup/pull/9195
-From: Antoine Martin <dev@ayakael.net>
-Date: Tue, 22 Feb 2022 01:18:45 +0000
-Subject: [PATCH 1/1] Fixed __rid_plat generation on alpine for core-setup
-
-<dotnet/core-setup>/src/corehost/build.sh generates wrong plat_rid on Alpine
-Generated RID is expected to be alpine.x.xx-xx, while the computed RID
-is linux-musl-xxx. This patches it by matching what's expected.
-
-On portable builds it also broken as computed RID is linux rather
-than the expected linux-musl
-
----
- src/corehost/build.sh | 7 +++----
- 1 file changed, 3 insertions(+), 4 deletions(-)
-
-diff --git a/src/corehost/build.sh b/src/corehost/build.sh
-index fb503e74..c3b34321 100755
---- a/src/corehost/build.sh
-+++ b/src/corehost/build.sh
-@@ -21,14 +21,11 @@ init_rid_plat()
- __rid_plat=""
- if [ -e /etc/os-release ]; then
- source /etc/os-release
-- if [[ "$ID" == "rhel" ]]; then
-+ if [ "$ID" == "rhel" ] || [ "$ID" == "alpine" ] ; then
- # remove the last version number
- VERSION_ID=${VERSION_ID%.*}
- fi
- __rid_plat="$ID.$VERSION_ID"
-- if [[ "$ID" == "alpine" ]]; then
-- __rid_plat="linux-musl"
-- fi
- elif [ -e /etc/redhat-release ]; then
- local redhatRelease=$(</etc/redhat-release)
- if [[ $redhatRelease == "CentOS release 6."* || $redhatRelease == "Red Hat Enterprise Linux Server release 6."* ]]; then
-@@ -50,6 +47,8 @@ init_rid_plat()
- __rid_plat="osx"
- elif [ "$(uname -s)" == "FreeBSD" ]; then
- __rid_plat="freebsd"
-+ elif [[ "$ID" == "alpine" ]]; then
-+ __rid_plat="linux-musl"
- else
- __rid_plat="linux"
- fi
---
-2.34.1
-
diff --git a/testing/dotnet31-build/coreclr_fix-musl-123.patch b/testing/dotnet31-build/coreclr_fix-musl-123.patch
deleted file mode 100644
index 4701c3cac67..00000000000
--- a/testing/dotnet31-build/coreclr_fix-musl-123.patch
+++ /dev/null
@@ -1,393 +0,0 @@
-From 2582f958770ca42ec7b40c55690abf5e93e7d99a Mon Sep 17 00:00:00 2001
-Patch-Source: https://github.com/dotnet/coreclr/pull/28245
-From: Antoine Martin <dev@ayakael.net>
-Date: Sun, 17 Apr 2022 00:42:11 +0000
-Subject: [PATCH 1/1] musl-321
-
-Musl 1.2.3 introduced NULL checks that breaks this code. Patch fixes
-code for better compliancy.
-
----
- src/pal/src/include/pal/palinternal.h | 12 ++--
- src/pal/src/init/pal.cpp | 92 +++++++++++++--------------
- 2 files changed, 52 insertions(+), 52 deletions(-)
-
-diff --git a/src/pal/src/include/pal/palinternal.h b/src/pal/src/include/pal/palinternal.h
-index 12e161dff1..7ef4c70ef5 100644
---- a/src/pal/src/include/pal/palinternal.h
-+++ b/src/pal/src/include/pal/palinternal.h
-@@ -729,30 +729,30 @@ T* InterlockedCompareExchangePointerT(
- template <typename T>
- inline T* InterlockedExchangePointerT(
- T* volatile * target,
-- int value) // When NULL is provided as argument.
-+ std::nullptr_t value) // When NULL is provided as argument.
- {
- //STATIC_ASSERT(value == 0);
-- return InterlockedExchangePointerT(target, reinterpret_cast<T*>(value));
-+ return InterlockedExchangePointerT(target, (T*)(void*)(value));
- }
-
- template <typename T>
- inline T* InterlockedCompareExchangePointerT(
- T* volatile * destination,
-- int exchange, // When NULL is provided as argument.
-+ std::nullptr_t exchange, // When NULL is provided as argument.
- T* comparand)
- {
- //STATIC_ASSERT(exchange == 0);
-- return InterlockedCompareExchangePointerT(destination, reinterpret_cast<T*>(exchange), comparand);
-+ return InterlockedCompareExchangePointerT(destination, (T*)(void*)(exchange), comparand);
- }
-
- template <typename T>
- inline T* InterlockedCompareExchangePointerT(
- T* volatile * destination,
- T* exchange,
-- int comparand) // When NULL is provided as argument.
-+ std::nullptr_t comparand) // When NULL is provided as argument.
- {
- //STATIC_ASSERT(comparand == 0);
-- return InterlockedCompareExchangePointerT(destination, exchange, reinterpret_cast<T*>(comparand));
-+ return InterlockedCompareExchangePointerT(destination, exchange, (T*)(void*)(comparand));
- }
-
- #undef InterlockedExchangePointer
-diff --git a/src/pal/src/init/pal.cpp b/src/pal/src/init/pal.cpp
-index ab926a1a12..1acb0d815f 100644
---- a/src/pal/src/init/pal.cpp
-+++ b/src/pal/src/init/pal.cpp
-@@ -128,7 +128,7 @@ static bool RunningNatively()
- {
- int ret = 0;
- size_t sz = sizeof(ret);
-- if (sysctlbyname("sysctl.proc_native", &ret, &sz, NULL, 0) != 0)
-+ if (sysctlbyname("sysctl.proc_native", &ret, &sz, nullptr, 0) != 0)
- {
- // if the sysctl failed, we'll assume this OS does not support
- // binary translation - so we must be running natively.
-@@ -201,7 +201,7 @@ int
- PALAPI
- PAL_InitializeDLL()
- {
-- return Initialize(0, NULL, g_initializeDLLFlags);
-+ return Initialize(0, nullptr, g_initializeDLLFlags);
- }
-
- /*++
-@@ -263,12 +263,12 @@ void
- InitializeDefaultStackSize()
- {
- char* defaultStackSizeStr = getenv("COMPlus_DefaultStackSize");
-- if (defaultStackSizeStr != NULL)
-+ if (defaultStackSizeStr != nullptr)
- {
- errno = 0;
- // Like all numeric values specific by the COMPlus_xxx variables, it is a
- // hexadecimal string without any prefix.
-- long int size = strtol(defaultStackSizeStr, NULL, 16);
-+ long int size = strtol(defaultStackSizeStr, nullptr, 16);
-
- if (errno == 0)
- {
-@@ -305,10 +305,10 @@ Initialize(
- DWORD flags)
- {
- PAL_ERROR palError = ERROR_GEN_FAILURE;
-- CPalThread *pThread = NULL;
-- CSharedMemoryObjectManager *pshmom = NULL;
-- LPWSTR command_line = NULL;
-- LPWSTR exe_path = NULL;
-+ CPalThread *pThread = nullptr;
-+ CSharedMemoryObjectManager *pshmom = nullptr;
-+ LPWSTR command_line = nullptr;
-+ LPWSTR exe_path = nullptr;
- int retval = -1;
- bool fFirstTimeInit = false;
-
-@@ -330,18 +330,18 @@ Initialize(
-
- CriticalSectionSubSysInitialize();
-
-- if(NULL == init_critsec)
-+ if(nullptr == init_critsec)
- {
- pthread_mutex_lock(&init_critsec_mutex); // prevents race condition of two threads
- // initializing the critical section.
-- if(NULL == init_critsec)
-+ if(nullptr == init_critsec)
- {
- static CRITICAL_SECTION temp_critsec;
-
- // Want this critical section to NOT be internal to avoid the use of unsafe region markers.
- InternalInitializeCriticalSectionAndSpinCount(&temp_critsec, 0, false);
-
-- if(NULL != InterlockedCompareExchangePointer(&init_critsec, &temp_critsec, NULL))
-+ if(nullptr != InterlockedCompareExchangePointer(&init_critsec, &temp_critsec, nullptr))
- {
- // Another thread got in before us! shouldn't happen, if the PAL
- // isn't initialized there shouldn't be any other threads
-@@ -352,7 +352,7 @@ Initialize(
- pthread_mutex_unlock(&init_critsec_mutex);
- }
-
-- InternalEnterCriticalSection(pThread, init_critsec); // here pThread is always NULL
-+ InternalEnterCriticalSection(pThread, init_critsec); // here pThread is always nullptr
-
- if (init_count == 0)
- {
-@@ -387,12 +387,12 @@ Initialize(
-
- #ifdef FEATURE_ENABLE_NO_ADDRESS_SPACE_RANDOMIZATION
- char* useDefaultBaseAddr = getenv("COMPlus_UseDefaultBaseAddr");
-- if (useDefaultBaseAddr != NULL)
-+ if (useDefaultBaseAddr != nullptr)
- {
- errno = 0;
- // Like all numeric values specific by the COMPlus_xxx variables, it is a
- // hexadecimal string without any prefix.
-- long int flag = strtol(useDefaultBaseAddr, NULL, 16);
-+ long int flag = strtol(useDefaultBaseAddr, nullptr, 16);
-
- if (errno == 0)
- {
-@@ -510,7 +510,7 @@ Initialize(
- //
-
- pshmom = InternalNew<CSharedMemoryObjectManager>();
-- if (NULL == pshmom)
-+ if (nullptr == pshmom)
- {
- ERROR("Unable to allocate new object manager\n");
- palError = ERROR_OUTOFMEMORY;
-@@ -533,7 +533,7 @@ Initialize(
- g_pSynchronizationManager =
- CPalSynchMgrController::CreatePalSynchronizationManager();
-
-- if (NULL == g_pSynchronizationManager)
-+ if (nullptr == g_pSynchronizationManager)
- {
- palError = ERROR_NOT_ENOUGH_MEMORY;
- ERROR("Failure creating synchronization manager\n");
-@@ -547,11 +547,11 @@ Initialize(
-
- palError = ERROR_GEN_FAILURE;
-
-- if (argc > 0 && argv != NULL)
-+ if (argc > 0 && argv != nullptr)
- {
- /* build the command line */
- command_line = INIT_FormatCommandLine(argc, argv);
-- if (NULL == command_line)
-+ if (nullptr == command_line)
- {
- ERROR("Error building command line\n");
- goto CLEANUP1d;
-@@ -559,13 +559,13 @@ Initialize(
-
- /* find out the application's full path */
- exe_path = INIT_ConvertEXEPath(argv[0]);
-- if (NULL == exe_path)
-+ if (nullptr == exe_path)
- {
- ERROR("Unable to find exe path\n");
- goto CLEANUP1e;
- }
-
-- if (NULL == command_line || NULL == exe_path)
-+ if (nullptr == command_line || nullptr == exe_path)
- {
- ERROR("Failed to process command-line parameters!\n");
- goto CLEANUP2;
-@@ -582,7 +582,7 @@ Initialize(
- }
-
- // InitializeProcessCommandLine took ownership of this memory.
-- command_line = NULL;
-+ command_line = nullptr;
-
- #ifdef PAL_PERF
- // Initialize the Profiling structure
-@@ -601,7 +601,7 @@ Initialize(
- }
-
- // LOADSetExeName took ownership of this memory.
-- exe_path = NULL;
-+ exe_path = nullptr;
- }
-
- if (init_count == 0)
-@@ -751,7 +751,7 @@ done:
-
- if (fFirstTimeInit && 0 == retval)
- {
-- _ASSERTE(NULL != pThread);
-+ _ASSERTE(nullptr != pThread);
- }
-
- if (retval != 0 && GetLastError() == ERROR_SUCCESS)
-@@ -867,7 +867,7 @@ PAL_IsDebuggerPresent()
- struct kinfo_proc info = {};
- size_t size = sizeof(info);
- int mib[4] = { CTL_KERN, KERN_PROC, KERN_PROC_PID, getpid() };
-- int ret = sysctl(mib, sizeof(mib)/sizeof(*mib), &info, &size, NULL, 0);
-+ int ret = sysctl(mib, sizeof(mib)/sizeof(*mib), &info, &size, nullptr, 0);
-
- if (ret == 0)
- return ((info.kp_proc.p_flag & P_TRACED) != 0);
-@@ -880,12 +880,12 @@ PAL_IsDebuggerPresent()
-
- struct kinfo_proc *info;
-
-- kd = kvm_open(NULL, NULL, NULL, KVM_NO_FILES, "kvm_open");
-- if (kd == NULL)
-+ kd = kvm_open(nullptr, nullptr, nullptr, KVM_NO_FILES, "kvm_open");
-+ if (kd == nullptr)
- return FALSE;
-
- info = kvm_getprocs(kd, KERN_PROC_PID, getpid(), &cnt);
-- if (info == NULL || cnt < 1)
-+ if (info == nullptr || cnt < 1)
- {
- kvm_close(kd);
- return FALSE;
-@@ -923,7 +923,7 @@ PAL_EntryPoint(
- ENTRY("PAL_EntryPoint(lpStartAddress=%p, lpParameter=%p)\n", lpStartAddress, lpParameter);
-
- pThread = InternalGetCurrentThread();
-- if (NULL == pThread)
-+ if (nullptr == pThread)
- {
- /* This function works only for thread that called PAL_Initialize for now. */
- ERROR( "Unable to get the thread object.\n" );
-@@ -984,7 +984,7 @@ PAL_TerminateEx(
- {
- ENTRY_EXTERNAL("PAL_TerminateEx()\n");
-
-- if (NULL == init_critsec)
-+ if (nullptr == init_critsec)
- {
- /* note that these macros probably won't output anything, since the
- debug channels haven't been initialized yet */
-@@ -1102,7 +1102,7 @@ BOOL PALInitLock(void)
- }
-
- CPalThread * pThread =
-- (PALIsThreadDataInitialized() ? InternalGetCurrentThread() : NULL);
-+ (PALIsThreadDataInitialized() ? InternalGetCurrentThread() : nullptr);
-
- InternalEnterCriticalSection(pThread, init_critsec);
- return TRUE;
-@@ -1124,7 +1124,7 @@ void PALInitUnlock(void)
- }
-
- CPalThread * pThread =
-- (PALIsThreadDataInitialized() ? InternalGetCurrentThread() : NULL);
-+ (PALIsThreadDataInitialized() ? InternalGetCurrentThread() : nullptr);
-
- InternalLeaveCriticalSection(pThread, init_critsec);
- }
-@@ -1206,7 +1206,7 @@ Note : not all peculiarities of Windows command-line processing are supported;
- static LPWSTR INIT_FormatCommandLine (int argc, const char * const *argv)
- {
- LPWSTR retval;
-- LPSTR command_line=NULL, command_ptr;
-+ LPSTR command_line=nullptr, command_ptr;
- LPCSTR arg_ptr;
- INT length, i,j;
- BOOL bQuoted = FALSE;
-@@ -1231,7 +1231,7 @@ static LPWSTR INIT_FormatCommandLine (int argc, const char * const *argv)
- if(!command_line)
- {
- ERROR("couldn't allocate memory for command line!\n");
-- return NULL;
-+ return nullptr;
- }
-
- command_ptr=command_line;
-@@ -1270,27 +1270,27 @@ static LPWSTR INIT_FormatCommandLine (int argc, const char * const *argv)
- *command_ptr='\0';
-
- /* convert to Unicode */
-- i = MultiByteToWideChar(CP_ACP, 0,command_line, -1, NULL, 0);
-+ i = MultiByteToWideChar(CP_ACP, 0,command_line, -1, nullptr, 0);
- if (i == 0)
- {
- ASSERT("MultiByteToWideChar failure\n");
- free(command_line);
-- return NULL;
-+ return nullptr;
- }
-
- retval = reinterpret_cast<LPWSTR>(InternalMalloc((sizeof(WCHAR)*i)));
-- if(retval == NULL)
-+ if(retval == nullptr)
- {
- ERROR("can't allocate memory for Unicode command line!\n");
- free(command_line);
-- return NULL;
-+ return nullptr;
- }
-
- if(!MultiByteToWideChar(CP_ACP, 0,command_line, i, retval, i))
- {
- ASSERT("MultiByteToWideChar failure\n");
- free(retval);
-- retval = NULL;
-+ retval = nullptr;
- }
- else
- TRACE("Command line is %s\n", command_line);
-@@ -1326,33 +1326,33 @@ static LPWSTR INIT_ConvertEXEPath(LPCSTR exe_path)
- if (!strchr(exe_path, '/'))
- {
- ERROR( "The exe path is not fully specified\n" );
-- return NULL;
-+ return nullptr;
- }
-
- if (-1 == stat(exe_path, &theStats))
- {
- ERROR( "The file does not exist\n" );
-- return NULL;
-+ return nullptr;
- }
-
- if (!CorUnix::RealPathHelper(exe_path, real_path))
- {
- ERROR("realpath() failed!\n");
-- return NULL;
-+ return nullptr;
- }
-
-- return_size = MultiByteToWideChar(CP_ACP, 0, real_path, -1, NULL, 0);
-+ return_size = MultiByteToWideChar(CP_ACP, 0, real_path, -1, nullptr, 0);
- if (0 == return_size)
- {
- ASSERT("MultiByteToWideChar failure\n");
-- return NULL;
-+ return nullptr;
- }
-
- return_value = reinterpret_cast<LPWSTR>(InternalMalloc((return_size*sizeof(WCHAR))));
-- if (NULL == return_value)
-+ if (nullptr == return_value)
- {
- ERROR("Not enough memory to create full path\n");
-- return NULL;
-+ return nullptr;
- }
- else
- {
-@@ -1361,7 +1361,7 @@ static LPWSTR INIT_ConvertEXEPath(LPCSTR exe_path)
- {
- ASSERT("MultiByteToWideChar failure\n");
- free(return_value);
-- return_value = NULL;
-+ return_value = nullptr;
- }
- else
- {
---
-2.31.1
-
diff --git a/testing/dotnet31-build/corefx_add-alpine-316-rid.patch b/testing/dotnet31-build/corefx_add-alpine-316-rid.patch
deleted file mode 100644
index af6bc3dc048..00000000000
--- a/testing/dotnet31-build/corefx_add-alpine-316-rid.patch
+++ /dev/null
@@ -1,131 +0,0 @@
-From 32e4972ddef7b3ba5bd68e581d8dc3abd6af3067 Mon Sep 17 00:00:00 2001
-From: Antoine Martin <dev@ayakael.net>
-Date: Tue, 29 Mar 2022 14:03:04 +0000
-Subject: [PATCH 1/1] add alpine 3.16 RID
-
-Adds RID for Alpine 3.16
-
----
- .../runtime.compatibility.json | 56 ++++++++++++++++++-
- pkg/Microsoft.NETCore.Platforms/runtime.json | 14 ++++-
- .../runtimeGroups.props | 2 +-
- 3 files changed, 68 insertions(+), 4 deletions(-)
-
-diff --git a/pkg/Microsoft.NETCore.Platforms/runtime.compatibility.json b/pkg/Microsoft.NETCore.Platforms/runtime.compatibility.json
-index 504c479baa..2a4459dac6 100644
---- a/pkg/Microsoft.NETCore.Platforms/runtime.compatibility.json
-+++ b/pkg/Microsoft.NETCore.Platforms/runtime.compatibility.json
-@@ -274,7 +274,59 @@
- "any",
- "base"
- ],
--
-+ "alpine.3.16": [
-+ "alpine.3.16",
-+ "alpine.3.15",
-+ "alpine.3.14",
-+ "alpine.3.13",
-+ "alpine.3.12",
-+ "alpine.3.11",
-+ "alpine.3.10",
-+ "alpine.3.9",
-+ "alpine.3.8",
-+ "alpine.3.7",
-+ "alpine.3.6",
-+ "alpine",
-+ "linux-musl",
-+ "linux",
-+ "unix",
-+ "any",
-+ "base"
-+ ],
-+ "alpine.3.16-x64": [
-+ "alpine.3.16-x64",
-+ "alpine.3.16",
-+ "alpine.3.15-x64",
-+ "alpine.3.15",
-+ "alpine.3.14-x64",
-+ "alpine.3.14",
-+ "alpine.3.13-x64",
-+ "alpine.3.13",
-+ "alpine.3.12-x64",
-+ "alpine.3.12",
-+ "alpine.3.11-x64",
-+ "alpine.3.11",
-+ "alpine.3.10-x64",
-+ "alpine.3.10",
-+ "alpine.3.9-x64",
-+ "alpine.3.9",
-+ "alpine.3.8-x64",
-+ "alpine.3.8",
-+ "alpine.3.7-x64",
-+ "alpine.3.7",
-+ "alpine.3.6-x64",
-+ "alpine.3.6",
-+ "alpine-x64",
-+ "alpine",
-+ "linux-musl-x64",
-+ "linux-musl",
-+ "linux-x64",
-+ "linux",
-+ "unix-x64",
-+ "unix",
-+ "any",
-+ "base"
-+ ],
- "alpine.3.6": [
- "alpine.3.6",
- "alpine",
-@@ -5403,4 +5455,4 @@
- "any",
- "base"
- ]
--}
-\ No newline at end of file
-+}
-diff --git a/pkg/Microsoft.NETCore.Platforms/runtime.json b/pkg/Microsoft.NETCore.Platforms/runtime.json
-index 57abcae8ab..c37e566fba 100644
---- a/pkg/Microsoft.NETCore.Platforms/runtime.json
-+++ b/pkg/Microsoft.NETCore.Platforms/runtime.json
-@@ -77,6 +77,18 @@
- "alpine.3.14-x64"
- ]
- },
-+ "alpine.3.16": {
-+ "#import": [
-+ "alpine.3.15"
-+ ]
-+ },
-+ "alpine.3.16-x64": {
-+ "#import": [
-+ "alpine.3.16",
-+ "alpine.3.15-x64"
-+ ]
-+ },
-+
- "alpine.3.6": {
- "#import": [
- "alpine"
-@@ -2453,4 +2465,4 @@
- ]
- }
- }
--}
-\ No newline at end of file
-+}
-diff --git a/pkg/Microsoft.NETCore.Platforms/runtimeGroups.props b/pkg/Microsoft.NETCore.Platforms/runtimeGroups.props
-index c466a38915..ffbe35200a 100644
---- a/pkg/Microsoft.NETCore.Platforms/runtimeGroups.props
-+++ b/pkg/Microsoft.NETCore.Platforms/runtimeGroups.props
-@@ -16,7 +16,7 @@
- <RuntimeGroup Include="alpine">
- <Parent>linux-musl</Parent>
- <Architectures>x64</Architectures>
-- <Versions>3.6;3.7;3.8;3.9;3.10;3.11;3.12;3.13;3.14;3.15</Versions>
-+ <Versions>3.6;3.7;3.8;3.9;3.10;3.11;3.12;3.13;3.14;3.15;3.16</Versions>
- </RuntimeGroup>
-
- <RuntimeGroup Include="android">
---
-2.35.1
-
diff --git a/testing/dotnet31-build/corefx_clang13-no-werror.patch b/testing/dotnet31-build/corefx_clang13-no-werror.patch
deleted file mode 100644
index 4b9399a7002..00000000000
--- a/testing/dotnet31-build/corefx_clang13-no-werror.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 775dedb87946a3be38641060d9eab5de1e472fe3 Mon Sep 17 00:00:00 2001
-Patch-Source: https://src.fedoraproject.org/rpms/dotnet3.1/blob/rawhide/f/corefx-no-werror.patch
-From: Omair Majid <omajid@redhat.com>
-Date: Tue, 29 Mar 2022 14:43:44 +0000
-Subject: [PATCH 1/1] no-werror
-
----
- src/Native/Unix/CMakeLists.txt | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/Native/Unix/CMakeLists.txt b/src/Native/Unix/CMakeLists.txt
-index 005aaf1e7d..dc45e58c2a 100644
---- a/src/Native/Unix/CMakeLists.txt
-+++ b/src/Native/Unix/CMakeLists.txt
-@@ -32,8 +32,8 @@ add_compile_options(-g)
- if(CMAKE_C_COMPILER_ID STREQUAL Clang)
- add_compile_options(-Wthread-safety)
- add_compile_options(-Wno-thread-safety-analysis)
-+ add_compile_options(-Wno-alloca)
- endif()
--add_compile_options(-Werror)
-
- if(CMAKE_SYSTEM_NAME STREQUAL Emscripten)
- set(CLR_CMAKE_PLATFORM_WASM 1)
---
-2.35.1
-
diff --git a/testing/dotnet31-build/corefx_fix-build-clang13.patch b/testing/dotnet31-build/corefx_fix-build-clang13.patch
deleted file mode 100644
index fea3e575de2..00000000000
--- a/testing/dotnet31-build/corefx_fix-build-clang13.patch
+++ /dev/null
@@ -1,74 +0,0 @@
-From 124bc55d35fd46ed165a07996cbaa9ad11a17eb5 Mon Sep 17 00:00:00 2001
-Patch-Source: https://github.com/dotnet/corefx/pull/43104
-From: Omair Majid <omajid@redhat.com>
-Date: Thu, 20 Jan 2022 12:41:51 -0500
-Subject: [PATCH 1/1] Fix building with clang 13
-
-Clang 13 now enables cast-function-type warning which results in build
-errors that look like this:
-
- /corefx/src/Native/Unix/System.Native/pal_process.c(382,76): error G39B05358: cast from 'void (*)(int, siginfo_t *, void *)' to 'void (*)(int)' converts to incompatible function type [-Werror,-Wcast-function-type] [/corefx/src/Native/build-native.proj]
- void (*oldhandler)(int) = (sa_old.sa_flags & SA_SIGINFO) ? (void (*)(int))sa_old.sa_sigaction : sa_old.sa_handler;
- ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-Disable this warning using -Wno-cast-function-type warning. That seems
-lower-risk than any functional code change.
-
-Clang 13 also enables reserved-identifier warning which results in build errors
-like this:
-
- /corefx/src/Native/Unix/System.Native/pal_process.c(819,17): error GA61F72A6: identifier '__cpu' is reserved because it starts with '__' [-Werror,-Wreserved-identifier] [/corefx/src/Native/build-native.proj]
- if (CPU_ISSET(cpu, &set))
- ^
- /usr/include/sched.h:94:34: note: expanded from macro 'CPU_ISSET'
- # define CPU_ISSET(cpu, cpusetp) __CPU_ISSET_S (cpu, sizeof (cpu_set_t), \
- ^
-
-This really seems like a bug in clang that it's complaining about code in
-system libraries that we are using via wrapper-macros. But there are
-other instances of this warning that are speciifc to our code too, such
-as `__padding` in
-src/Native/Unix/System.Native/pal_interfaceaddresses.h. Disable this
-warning too.
-
-Tested with Clang 13 rc1.
----
- src/Native/Unix/CMakeLists.txt | 6 ++++++
- src/Native/Unix/configure.cmake | 2 ++
- 2 files changed, 8 insertions(+)
-
-diff --git a/src/Native/Unix/CMakeLists.txt b/src/Native/Unix/CMakeLists.txt
-index c5772c7e02..005aaf1e7d 100644
---- a/src/Native/Unix/CMakeLists.txt
-+++ b/src/Native/Unix/CMakeLists.txt
-@@ -261,9 +261,15 @@ include(configure.cmake)
- if (HAVE_WNO_ALLOCA)
- add_compile_options(-Wno-alloca)
- endif()
-+if (HAVE_WNO_CAST_FUNCTION_TYPE)
-+ add_compile_options(-Wno-cast-function-type)
-+endif()
- if (HAVE_WNO_IMPLICIT_INT_FLOAT_CONVERSION)
- add_compile_options(-Wno-implicit-int-float-conversion)
- endif()
-+if (HAVE_WNO_RESERVED_IDENTIFIER)
-+ add_compile_options(-Wno-reserved-identifier)
-+endif()
-
- if (NOT CLR_CMAKE_PLATFORM_WASM)
- add_subdirectory(System.IO.Compression.Native)
-diff --git a/src/Native/Unix/configure.cmake b/src/Native/Unix/configure.cmake
-index 6756ea26a5..a01cf90760 100644
---- a/src/Native/Unix/configure.cmake
-+++ b/src/Native/Unix/configure.cmake
-@@ -34,6 +34,8 @@ set(CMAKE_REQUIRED_FLAGS "-Werror -Wno-error=unused-value")
-
- check_c_compiler_flag(-Wno-alloca HAVE_WNO_ALLOCA)
- check_c_compiler_flag(-Wno-implicit-int-float-conversion HAVE_WNO_IMPLICIT_INT_FLOAT_CONVERSION)
-+check_c_compiler_flag(-Wno-reserved-identifier HAVE_WNO_RESERVED_IDENTIFIER)
-+check_c_compiler_flag(-Wno-cast-function-type HAVE_WNO_CAST_FUNCTION_TYPE)
-
- # in_pktinfo: Find whether this struct exists
- check_include_files(
---
-2.35.1
diff --git a/testing/dotnet31-build/references_sh-build-fix.patch b/testing/dotnet31-build/references_sh-build-fix.patch
deleted file mode 100644
index 184c8f90c10..00000000000
--- a/testing/dotnet31-build/references_sh-build-fix.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 7b1f102db70fd8c86f21c722669c9f7337367eee Mon Sep 17 00:00:00 2001
-From: Antoine Martin <dev@ayakael.net>
-Date: Sat, 8 Jan 2022 17:02:38 +0000
-Subject: [PATCH 1/1] patched for sh
-
-Exec Command issue with bad character for busybox sh.
-This patches by removing bad character so that it can run with busybox
-
----
- src/targetPacks/assemble.targets | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/targetPacks/assemble.targets b/src/targetPacks/assemble.targets
-index 6b884ce2..e5009793 100644
---- a/src/targetPacks/assemble.targets
-+++ b/src/targetPacks/assemble.targets
-@@ -13,7 +13,7 @@
- <Message Importance="High" Text="[$([System.DateTime]::Now.ToString('HH:mm:ss.ff'))] Assemble TargetingPacks src." />
- <MakeDir Directories="@(TargetingPackSrc->'$(ArtifactsTFMPackTemp)$(MSBuildProjectName)/%(RecursiveDir)')" />
- <!-- Note: Hack below to not fill up build logs. Ilasm produces warning on validly disassembled il src. The awk below eats just that warning -->
-- <Exec Command="set -o pipefail;$(IlasmToolPathSB)ilasm %(TargetingPackSrc.Identity) -dll -quiet -nologo -output=$(ArtifactsTFMPackTemp)$(MSBuildProjectName)/%(RecursiveDir)%(TargetingPackSrc.Filename).dll |&amp; awk '!/warning : Method has no body/'" IgnoreStandardErrorWarningFormat="true"/>
-+ <Exec Command="set -o pipefail;$(IlasmToolPathSB)ilasm %(TargetingPackSrc.Identity) -dll -quiet -nologo -output=$(ArtifactsTFMPackTemp)$(MSBuildProjectName)/%(RecursiveDir)%(TargetingPackSrc.Filename).dll | awk '!/warning : Method has no body/'" IgnoreStandardErrorWarningFormat="true"/>
- <Message Importance="High" Text="[$([System.DateTime]::Now.ToString('HH:mm:ss.ff'))] Done assembling TargetPacks src." />
- </Target>
- </Project>
---
-2.34.1
-
diff --git a/testing/dotnet31-runtime/APKBUILD b/testing/dotnet31-runtime/APKBUILD
deleted file mode 100644
index 1a0df321162..00000000000
--- a/testing/dotnet31-runtime/APKBUILD
+++ /dev/null
@@ -1,139 +0,0 @@
-# Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>
-# Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
-
-#
-# Variables for dotnet build version 3.1
-# This APKBUILD is designed to be the same for version 5.0 and under
-# except for the variables in this first section
-#
-
-pkgname=dotnet31-runtime
-pkgver=3.1.24
-_bldver=3.1.418-r0
-pkgrel=0
-
-# Following for dotnet build version 3.1 and up
-_pkgver_macro=${pkgver%.*}
-_pkgver_name=${_pkgver_macro//[.0]}
-_bldver_ver=${_bldver%%-*}
-pkgdesc="The .NET $_pkgver_macro Core runtime"
-arch="x86_64"
-url=https://www.microsoft.com/net/core
-license="MIT"
-depends="
- dotnet$_pkgver_name-hostfxr
- icu-libs
- "
-makedepends="dotnet$_pkgver_name-build=$_bldver"
-subpackages="
- aspnetcore$_pkgver_name-runtime:aspnetcore_runtime:noarch
- aspnetcore$_pkgver_name-targeting-pack:aspnetcore_targeting_pack:noarch
- dotnet$_pkgver_name-apphost-pack:apphost_pack
- dotnet$_pkgver_name-hostfxr:hostfxr
- dotnet$_pkgver_name-targeting-pack:targeting_pack:noarch
- dotnet-host:host
- "
-options="!check" # No test suite
-source="dotnet.sh"
-builddir="$srcdir"
-
-# Function forces dependency on non-virtual host subpackages
-# Overrides so that dependency to virtual host subpackage
-# can be explicitely set from within subpackage functions
-scan_symlink_targets() {
- return
-}
-
-build() {
- return
-}
-
-package() {
- install -dm 755 \
- "$pkgdir"/usr/share/dotnet/shared \
- "$pkgdir"/usr/share/licenses
-
- cp -r /usr/share/dotnet/build/$_bldver_ver/shared/Microsoft.NETCore.App "$pkgdir"/usr/share/dotnet/shared/.
- ln -s dotnet-host "$pkgdir"/usr/share/licenses/dotnet$_pkgver_name-runtime
-}
-
-host() {
- pkgdesc="A generic driver for the .NET Core Command Line Interface"
-
- install -dm 755 \
- "$subpkgdir"/etc/profile.d \
- "$subpkgdir"/usr/bin \
- "$subpkgdir"/usr/share/dotnet \
- "$subpkgdir"/usr/share/licenses/dotnet-host
-
- cp -r /usr/share/dotnet/build/$_bldver_ver/dotnet "$subpkgdir"/usr/share/dotnet/.
- cp -r /usr/share/dotnet/build/$_bldver_ver/LICENSE.txt "$subpkgdir"/usr/share/licenses/dotnet-host/.
- cp -r /usr/share/dotnet/build/$_bldver_ver/ThirdPartyNotices.txt "$subpkgdir"/usr/share/licenses/dotnet-host/.
- ln -s /usr/share/dotnet/dotnet "$subpkgdir"/usr/bin/dotnet
- install -Dm 644 "$srcdir"/dotnet.sh -t "$subpkgdir"/etc/profile.d/
-}
-
-hostfxr() {
- pkgdesc="The .NET host resolver contains the logic to resolve and select the right version of the .NET SDK or runtime to use."
- depends="dotnet-host"
- provides="dotnet-hostfxr-$_pkgver_macro=$pkgver"
-
- install -dm 755 \
- "$subpkgdir"/usr/share/dotnet \
- "$subpkgdir"/usr/share/licenses
-
- cp -r /usr/share/dotnet/build/$_bldver_ver/host "$subpkgdir"/usr/share/dotnet/.
- ln -s dotnet-host "$subpkgdir"/usr/share/licenses/dotnet$_pkgver_name-hostfxr
-}
-
-aspnetcore_runtime() {
- pkgdesc="The ASP.NET $_pkgver_macro Core runtime"
- depends="dotnet$_pkgver_name-runtime"
- provides="aspnetcore-runtime-$_pkgver_macro=$pkgver"
-
- install -dm 755 \
- "$subpkgdir"/usr/share/dotnet/shared \
- "$subpkgdir"/usr/share/licenses
-
- cp -r /usr/share/dotnet/build/$_bldver_ver/shared/Microsoft.AspNetCore.App "$subpkgdir"/usr/share/dotnet/shared/.
- ln -s dotnet-host "$subpkgdir"/usr/share/licenses/aspnetcore$_pkgver_name-runtime
-}
-
-apphost_pack() {
- pkgdesc="The .NET $_pkgver_macro Core apphost pack"
- provides="dotnet-apphost-pack-$_pkgver_macro=$pkgver"
-
- install -dm 755 \
- "$subpkgdir"/usr/share/dotnet/packs \
- "$subpkgdir"/usr/share/licenses
-
- cp -r /usr/share/dotnet/build/$_bldver_ver/packs/Microsoft.NETCore.App.Host.* "$subpkgdir"/usr/share/dotnet/packs/.
- ln -s dotnet-host "$subpkgdir"/usr/share/licenses/dotnet$_pkgver_name-apphost-pack
-}
-
-targeting_pack() {
- pkgdesc="The .NET $_pkgver_macro Core targeting pack"
- provides="dotnet-targeting-pack-$_pkgver_macro=$pkgver"
-
- install -dm 755 \
- "$subpkgdir"/usr/share/dotnet/packs \
- "$subpkgdir"/usr/share/licenses
-
- cp -r /usr/share/dotnet/build/$_bldver_ver/packs/Microsoft.NETCore.App.Ref "$subpkgdir"/usr/share/dotnet/packs/.
- ln -s dotnet-host "$subpkgdir"/usr/share/licenses/dotnet$_pkgver_name-targeting-pack
-}
-
-aspnetcore_targeting_pack() {
- pkgdesc="The ASP.NET $_pkgver_macro Core targeting pack"
- provides="aspnetcore-targeting-pack-$_pkgver_macro=$pkgver"
-
- install -dm 755 \
- "$subpkgdir"/usr/share/dotnet/packs \
- "$subpkgdir"/usr/share/licenses
-
- cp -r /usr/share/dotnet/build/$_bldver_ver/packs/Microsoft.AspNetCore.App.Ref "$subpkgdir"/usr/share/dotnet/packs/.
- ln -s dotnet-host "$subpkgdir"/usr/share/licenses/aspnetcore$_pkgver_name-targeting-pack
-}
-sha512sums="
-e61b9e3e5a2305646a616d598378230c9755c5dd5363692cc363f8f4add3807563c324dd86f3a7ae9d358c82d730608e7b293935a2b6c81c0c0f62d752a0a1cf dotnet.sh
-"
diff --git a/testing/dotnet31-runtime/README.md b/testing/dotnet31-runtime/README.md
deleted file mode 100644
index 482f3df475a..00000000000
--- a/testing/dotnet31-runtime/README.md
+++ /dev/null
@@ -1,25 +0,0 @@
-# Description
-APKBUILD for dotnet31-runtime. Note that this doesn't actually build anything.
-It depends on dotnet31-build, which handles the actual dotnet build process
-This is a workaround to abuild / lua-aports not supporting custom pkgver
-for subpackages. While there are pending MRs for this feature, the feature
-is yet to be introduced. See abuild!137 and lua-aports!4
-
-# Generated packages
-* aspnetcore31-runtime
-* aspnetcore31-targeting-pack
-* dotnet31-apphost-pack (used by dotnet31-runtime)
-* dotnet31-host (provides dotnet-host)
-* dotnet31-host-zsh-completion (provides dotnet-host-zsh-completion)
-* dotnet31-host-bash-completion (provides dotnet-host-bash-completion)
-* dotnet31-host-doc (docs for dotnet31)
-* dotnet31-hostfxr (provides fxr for host)
-* dotnet31-runtime
-* dotnet31-targeting-pack
-
-# How to build dotnet31 stack
-* Build testing/dotnet31-stage0 (provides prebuilt bits for first bootstrap bld)
-* Build testing/dotnet31-bootstrap (provides "tainted" SDK for first build)
-* Build testing/dotnet31-build ("untainted" build of dotnet)
-* Build testing/dotnet31-runtime (packages runtime bits from dotnet31-build)
-* Build testing/dotnet31-sdk (packages sdk bits from dotnet31-build)
diff --git a/testing/dotnet31-runtime/dotnet.sh b/testing/dotnet31-runtime/dotnet.sh
deleted file mode 100644
index fcc0bfd11dd..00000000000
--- a/testing/dotnet31-runtime/dotnet.sh
+++ /dev/null
@@ -1,12 +0,0 @@
-# Set location for AppHost lookup
-[ -z "$DOTNET_ROOT" ] && export DOTNET_ROOT=/usr/share/dotnet
-
-# Add dotnet tools directory to PATH
-DOTNET_TOOLS_PATH="$HOME/.dotnet/tools"
-case "$PATH" in
- *"$DOTNET_TOOLS_PATH"* ) true ;;
- * ) PATH="$PATH:$DOTNET_TOOLS_PATH" ;;
-esac
-
-# Extract self-contained executables under HOME to avoid multi-user issues from using the default '/var/tmp'
-[ -z "$DOTNET_BUNDLE_EXTRACT_BASE_DIR" ] && export DOTNET_BUNDLE_EXTRACT_BASE_DIR="${XDG_CACHE_HOME:-"$HOME"/.cache}/dotnet_bundle_extract"
diff --git a/testing/dotnet31-sdk/APKBUILD b/testing/dotnet31-sdk/APKBUILD
deleted file mode 100644
index fcb59bdaf20..00000000000
--- a/testing/dotnet31-sdk/APKBUILD
+++ /dev/null
@@ -1,121 +0,0 @@
-# Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>
-# Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
-
-#
-# Variables for dotnet build version 3.1
-# This APKBUILD is designed to be the same for version 5.0 and under
-# except for the variables in this first section
-#
-
-pkgname=dotnet31-sdk
-pkgver=3.1.418
-_bldver=$pkgver-r0
-pkgrel=0
-
-# Following for dotnet build version 3.1 and up
-_pkgver_macro=${pkgver%.*}
-_pkgver_name=${_pkgver_macro//[.0]}
-_bldver_ver=${_bldver%%-*}
-pkgdesc="The .NET $_pkgver_macro SDK"
-arch="x86_64"
-url=https://www.microsoft.com/net/core
-license="MIT"
-makedepends="dotnet$_pkgver_name-build=$_bldver"
-
-subpackages="
- dotnet$_pkgver_name:dotnet:noarch
- dotnet$_pkgver_name-templates:templates:noarch
- netstandard21-targeting-pack:netstandard_targeting_pack:noarch
- dotnet-zsh-completion:zshcomp:noarch
- dotnet-bash-completion:bashcomp:noarch
- dotnet-doc:doc:noarch
- "
-options="!check" # No test suite
-builddir="$srcdir"
-
-# Function forces dependency on non-virtual host subpackages
-# Overrides so that dependency to virtual host subpackage
-# can be explicitely set from within subpackage functions
-scan_symlink_targets() {
- return
-}
-
-build() {
- return
-}
-
-package() {
- depends="
- aspnetcore$_pkgver_name-runtime
- aspnetcore$_pkgver_name-targeting-pack
- dotnet$_pkgver_name-apphost-pack
- dotnet$_pkgver_name-targeting-pack
- dotnet$_pkgver_name-templates
- netstandard21-targeting-pack
- "
- provides="dotnet-sdk-$_pkgver_macro=$pkgver"
-
- install -dm 755 \
- "$pkgdir"/usr/share/dotnet \
- "$pkgdir"/usr/share/licenses \
- "$pkgdir"/usr/share/man/man
-
- cp -r /usr/share/dotnet/build/$_bldver_ver/sdk "$pkgdir"/usr/share/dotnet/.
- cp -r /usr/share/dotnet/build/$_bldver_ver/docs "$pkgdir"/usr/share/man/man
- ln -s dotnet-host "$pkgdir"/usr/share/licenses/dotnet$_pkgver_name-sdk
-}
-
-dotnet() {
- pkgdesc="The .NET $_pkgver_macro package"
- depends="dotnet$_pkgver_name-sdk"
- provides="dotnet-$_pkgver_macro=$pkgver"
-
- mkdir -p "$subpkgdir"
-}
-
-netstandard_targeting_pack() {
- pkgdesc="The .NET $_pkgver_macro Standard targeting pack"
- depends="dotnet-host"
- provides="netstandard-targeting-pack-2.1=$pkgver"
-
- install -dm 755 "$subpkgdir"/usr/share/dotnet/packs "$subpkgdir"/usr/share/licenses
- cp -r /usr/share/dotnet/build/$_bldver_ver/packs/NETStandard.Library.Ref "$subpkgdir"/usr/share/dotnet/packs/.
- ln -s dotnet-host "$subpkgdir"/usr/share/licenses/netstandard21-targeting-pack
-}
-
-templates() {
- pkgdesc="The .NET $_pkgver_macro templates"
- depends="dotnet-host"
- provides="dotnet-templates-$_pkgver_macro=$pkgver"
-
- install -dm 755 "$subpkgdir"/usr/share/dotnet "$subpkgdir"/usr/share/licenses
- cp -r /usr/share/dotnet/build/$_bldver_ver/templates "$subpkgdir"/usr/share/dotnet/.
- ln -s dotnet-host "$subpkgdir"/usr/share/licenses/dotnet$_pkgver_name-templates
-}
-
-zshcomp() {
- depends=""
- pkgdesc="zsh completion for .NET $_pkgver_macro"
- # netstandard21-targeting-pack will always be pulled by any dotnetx-sdk
- # thus pulling this with it for sdk
- install_if="netstandard21-targeting-pack zsh"
-
- install -dm 755 "$subpkgdir"/usr/share/zsh/site-functions
- install -m 755 /usr/share/dotnet/build/$_bldver_ver/comp/register-completions.zsh "$subpkgdir"/usr/share/zsh/site-functions/_dotnet
-}
-
-bashcomp() {
- depends=""
- pkgdesc="bash completion for .NET $_pkgver_macro"
- # netstandard21-targeting-pack will always be pulled by any dotnetx-sdk
- # thus pulling this with it for sdk
- install_if="netstandard21-targeting-pack bash-completion"
-
- install -dm 755 "$subpkgdir"/usr/share/bash-completion/completions
- install -m 755 /usr/share/dotnet/build/$_bldver_ver/comp/register-completions.bash "$subpkgdir"/usr/share/bash-completion/completions/_dotnet
-}
-
-doc() {
- default_doc
- pkgdesc="Docs for .NET $_pkgver_macro"
-}
diff --git a/testing/dotnet31-sdk/README.md b/testing/dotnet31-sdk/README.md
deleted file mode 100644
index 30e69cedae8..00000000000
--- a/testing/dotnet31-sdk/README.md
+++ /dev/null
@@ -1,19 +0,0 @@
-# Description
-APKBUILD for dotnet31-sdk. Note that this doesn't actually build anything.
-It depends on dotnet31-build, which handles the actual dotnet build process
-This is a workaround to abuild / lua-aports not supporting custom pkgver
-for subpackages. While there are pending MRs for this feature, the feature
-is yet to be introduced. See abuild!137 and lua-aports!4
-
-# Generated packages
-* dotnet31 (virtual package that pulls dotnet31-sdk, thus all dotnet products)
-* dotnet31-sdk
-* dotnet31-templates (required by sdk)
-* netstandard5-targeting-pack (provides netstandard21-targeting-pack)
-
-# How to build dotnet31 stack
-* Build testing/dotnet31-stage0 (provides prebuilt bits for first bootstrap bld)
-* Build testing/dotnet31-bootstrap (provides "tainted" SDK for first build)
-* Build testing/dotnet31-build ("untainted" build of dotnet)
-* Build testing/dotnet31-runtime (packages runtime bits from dotnet31-build)
-* Build testing/dotnet31-sdk (packages sdk bits from dotnet31-build)
diff --git a/testing/dotnet31-stage0/APKBUILD b/testing/dotnet31-stage0/APKBUILD
deleted file mode 100644
index c758e8057e6..00000000000
--- a/testing/dotnet31-stage0/APKBUILD
+++ /dev/null
@@ -1,217 +0,0 @@
-# Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>
-# Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
-
-# Variables for dotnet-stage0 build version 3.1
-# This APKBUILD is designed to be the same for version 5.0 and under
-# except for the variables in this first section
-
-pkgname=dotnet31-stage0
-pkgver=3.1.416
-pkgrel=0
-_artifactsver="3.1.120"
-_nappo_get=''
-_nappo_exclude='
- *Intermediate*
- runtime.linux-x64.Microsoft.NETCore.Runtime.CoreCLR*
- '
-_source_artifactsver="0.1.0-$_artifactsver-1440359-20211022.3"
-_source_referencesver="1.0.0-beta.21479.1"
-
-# Following for dotnet-stage0 build version 5.0 and below
-_pkgver_macro=${pkgver%.*}
-_pkgver_prior=1
-_pkgver_name=${_pkgver_macro//[.0]}
-pkgdesc="The .NET $_pkgver_macro SDK, Microsoft build for use by dotnet$_pkgver_name aport"
-arch="x86_64"
-url=https://www.microsoft.com/net/core
-license="MIT"
-makedepends="
- krb5-libs
- libcurl
- libintl
- lttng-ust
- py3-packaging
- unzip
- zlib
- "
-subpackages="dotnet$_pkgver_name-stage0-artifacts"
-options="!check" # No test suite
-_default_source="
- https://dotnetcli.azureedge.net/source-built-artifacts/assets/Private.SourceBuilt.Artifacts.$_source_artifactsver.tar.gz
- https://dotnetfeed.blob.core.windows.net/dotnet-core/assets/Private.SourceBuild.ReferencePackages.$_source_referencesver.tar.gz
- https://gist.githubusercontent.com/omajid/c04b6025de49d0b7b18ab4a7e789484e/raw/b33c57f6bf9c00bb8633375123d2d3594fe81c26/nappo.py
- "
-builddir="$srcdir"
-
-# custom function that converts Alpine arch syntax to dotnet arch syntax
-_get_arch() {
- case $1 in
- x86_64) local arch=x64;;
- aarch64) local arch=arm64;;
- armv7) local arch=arm;;
- esac
- echo $arch
-}
-_dotnet_arch=$(_get_arch $CARCH)
-
-# custom source updater function for all dotnet versions
-#
-# Prebuilt artifacts only provides linux-x64 nukgs. As Alpine uses linux-musl,
-# the below scripts updates source to fetch the musl version of those packages,
-# allowing packaging of the correct architecture. Thus, everytime Artifacts
-# is updated, or new architectures are added, this function needs to be
-# executed using 'abuild _update_source'
-_update_source() {
- [ -z "$source" ] \
- && msg "Removing source from APKBUILD"
- sed -E -i \
- -e '/^source=".*"$/d' \
- -e '/^source="/,/"$/d' \
- \
- -e "/^source='.*'\$/d" \
- -e "/^source='/,/'\$/d" \
- APKBUILD
-
- source="$_default_source"
- fetch
- local nuget_source="$_default_source"
- msg "Updating source"
- local nappo_exclude="$_nappo_exclude"
- # shellcheck disable=3045
- local nappo_exclude="$(printf '--exclude %s ' $nappo_exclude)"
- local nappo_get=$(tar --list -f "$srcdir"/Private.SourceBuilt.Artifacts.*.tar.gz --wildcards '*.linux-x64.*' $nappo_exclude)
- local nappo_get="$_nappo_get $nappo_get"
- for package in $nappo_get; do
- for _arch in $arch; do
- local filename=${package##*/} # Extracts just filename
- local suffix=${filename##*[0-9]} # Extracts what's after version number
- local nupkg=${filename/$suffix} # Extracts nupkg name with version
- [ -z "${filename##*servicing*}" ] && local nupkg=${filename%%-servicing*}
- local name=${nupkg%*.*.*.*} # Extracts name without version
- local version=${nupkg/$name.} # Extracts version out of nupkg using name
- local name=${name/linux-x64/linux-musl-$(_get_arch $_arch)} # Converts to current arch
- [ -z "${filename##*servicing*}" ] && unset version
- echo "Getting $name [${version:-latest}] (replaces $package)"
- local nappo_out="$(python3 "$srcdir"/nappo.py download --verbose $name ${version:-})"
- local nupkg="${nappo_out#*.nupkg}"
- local uri=${nappo_out/$nupkg}
- local nupkg=$(echo $nupkg | tr -d '\n')
- [ -f "$nupkg" ] && mv $nupkg "$SRCDEST"/.
- local nuget_source="$nuget_source $uri"
- [ -z "${name##*linux*}" ] || break
- done
- done
- for _arch in $arch; do
- local nuget_source="$nuget_source https://dotnetcli.azureedge.net/dotnet/Sdk/$pkgver/dotnet-sdk-$pkgver-linux-musl-$(_get_arch $_arch).tar.gz"
- done
- local nuget_source="$(printf '%s\n' $nuget_source)"
- printf 'source="\n%s\n"\n' "$nuget_source" >>"$APKBUILD"
-}
-
-unpack() {
- verify
- initdcheck
- mkdir -p "$srcdir"
- msg "Unpacking Private.SourceBuilt.Artifacts"
- gunzip Private.SourceBuilt.Artifacts.*.tar.gz
- msg "Unpacking Private.SourceBuild.Reference.Packages"
- gunzip Private.SourceBuild.Reference*.tar.gz
-}
-
-package() {
- # directory creation
- install -dm 755 "$pkgdir"/usr/share/dotnet/bootstrap/$pkgver
-
- # unpack prebuilt sdk / runtimes
- tar -xzf "$srcdir"/dotnet-sdk-$_pkgver_macro*$_dotnet_arch.tar.gz -C "$pkgdir"/usr/share/dotnet/bootstrap/$pkgver --no-same-owner
-}
-
-artifacts() {
- pkgdesc="Internal package for building .NET $_pkgver_macro Software Development Kit, Microsoft build for use by dotnet$_pkgver_name aport"
-
- # directory creation
- install -dm 755 \
- "$subpkgdir"/usr/share/dotnet/artifacts/$pkgver/SourceBuildReferencePackages \
- "$subpkgdir"/usr/share/licenses
-
- # extracts artifact without Intermediate and binary packages
- tar -xf "$srcdir"/Private.SourceBuilt.Artifacts.*.tar -C "$subpkgdir"/usr/share/dotnet/artifacts/$pkgver/ --no-same-owner\
- --exclude '*x64*' \
- --exclude '*Intermediate*'
-
- # replace loose x64 bits with arch bits
- for i in "$subpkgdir"/usr/share/dotnet/artifacts/"$pkgver"/coreclr-tools/*; do
- case $i in
- *.md) continue ;;
- *ilasm) unzip -ojqXK "$srcdir"/runtime.linux-musl-$_dotnet_arch.microsoft.netcore.ilasm.*.nupkg runtimes/linux-musl-$_dotnet_arch/native/ilasm -d "$subpkgdir"/usr/share/dotnet/artifacts/$pkgver/coreclr-tools/. ;;
- *ildasm) unzip -ojqXK "$srcdir"/runtime.linux-musl-$_dotnet_arch.microsoft.netcore.ildasm.*.nupkg runtimes/linux-musl-$_dotnet_arch/native/ildasm -d "$subpkgdir"/usr/share/dotnet/artifacts/$pkgver/coreclr-tools/. ;;
- *) unzip -ojqXK "$srcdir"/runtime.linux-musl-$_dotnet_arch.microsoft.netcore.app.*.nupkg runtimes/linux-musl-$_dotnet_arch/native/${i##*/} -d "$subpkgdir"/usr/share/dotnet/artifacts/$pkgver/coreclr-tools/. ;;
- esac
- chmod 755 "$i"
- done
-
- # place proper binary packages
- for i in "$srcdir"/*.nupkg; do
- case $i in
- *linux*) install -m 644 "$srcdir"/*$_dotnet_arch*.nupkg "$subpkgdir"/usr/share/dotnet/artifacts/$pkgver/. ;;
- *) install -m 644 "$srcdir"/*.nupkg "$subpkgdir"/usr/share/dotnet/artifacts/$pkgver/. ;;
- esac
- done
-
- # extract reference packages, a couple of packages need to be excludes due to
- # causing conflict with non-reference packages
- tar -xf "$srcdir"/Private.SourceBuild.Reference*.tar -C "$subpkgdir"/usr/share/dotnet/artifacts/$pkgver/SourceBuildReferencePackages/ --no-same-owner
-}
-
-source="
-https://dotnetcli.azureedge.net/source-built-artifacts/assets/Private.SourceBuilt.Artifacts.0.1.0-3.1.120-1440359-20211022.3.tar.gz
-https://dotnetfeed.blob.core.windows.net/dotnet-core/assets/Private.SourceBuild.ReferencePackages.1.0.0-beta.21479.1.tar.gz
-https://gist.githubusercontent.com/omajid/c04b6025de49d0b7b18ab4a7e789484e/raw/b33c57f6bf9c00bb8633375123d2d3594fe81c26/nappo.py
-https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/45bacae2-5efb-47c8-91e5-8ec20c22b4f8/nuget/v3/flat2//Microsoft.AspNetCore.App.Runtime.linux-musl-x64/3.1.19/microsoft.aspnetcore.app.runtime.linux-musl-x64.3.1.19.nupkg
-https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/45bacae2-5efb-47c8-91e5-8ec20c22b4f8/nuget/v3/flat2//Microsoft.NETCore.App.Host.linux-musl-x64/3.1.19/microsoft.netcore.app.host.linux-musl-x64.3.1.19.nupkg
-https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/45bacae2-5efb-47c8-91e5-8ec20c22b4f8/nuget/v3/flat2//Microsoft.NETCore.App.Runtime.linux-musl-x64/3.1.19/microsoft.netcore.app.runtime.linux-musl-x64.3.1.19.nupkg
-https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/45bacae2-5efb-47c8-91e5-8ec20c22b4f8/nuget/v3/flat2//runtime.linux-musl-x64.Microsoft.NETCore.App/2.2.0-preview2-26905-02/runtime.linux-musl-x64.microsoft.netcore.app.2.2.0-preview2-26905-02.nupkg
-https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/45bacae2-5efb-47c8-91e5-8ec20c22b4f8/nuget/v3/flat2//runtime.linux-musl-x64.Microsoft.NETCore.DotNetAppHost/3.1.19/runtime.linux-musl-x64.microsoft.netcore.dotnetapphost.3.1.19.nupkg
-https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/45bacae2-5efb-47c8-91e5-8ec20c22b4f8/nuget/v3/flat2//runtime.linux-musl-x64.Microsoft.NETCore.DotNetHost/3.1.19/runtime.linux-musl-x64.microsoft.netcore.dotnethost.3.1.19.nupkg
-https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/45bacae2-5efb-47c8-91e5-8ec20c22b4f8/nuget/v3/flat2//runtime.linux-musl-x64.Microsoft.NETCore.DotNetHostPolicy/3.1.19/runtime.linux-musl-x64.microsoft.netcore.dotnethostpolicy.3.1.19.nupkg
-https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/45bacae2-5efb-47c8-91e5-8ec20c22b4f8/nuget/v3/flat2//runtime.linux-musl-x64.Microsoft.NETCore.DotNetHostResolver/3.1.19/runtime.linux-musl-x64.microsoft.netcore.dotnethostresolver.3.1.19.nupkg
-https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/a8a526e9-91b3-4569-ba2d-ff08dbb7c110/nuget/v3/flat2//runtime.linux-musl-x64.Microsoft.NETCore.ILAsm/5.0.0-alpha1.19459.9/runtime.linux-musl-x64.microsoft.netcore.ilasm.5.0.0-alpha1.19459.9.nupkg
-https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/a8a526e9-91b3-4569-ba2d-ff08dbb7c110/nuget/v3/flat2//runtime.linux-musl-x64.Microsoft.NETCore.ILDAsm/5.0.0-alpha1.19459.9/runtime.linux-musl-x64.microsoft.netcore.ildasm.5.0.0-alpha1.19459.9.nupkg
-https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/a8a526e9-91b3-4569-ba2d-ff08dbb7c110/nuget/v3/flat2//runtime.linux-musl-x64.Microsoft.NETCore.Jit/5.0.0-alpha1.19459.9/runtime.linux-musl-x64.microsoft.netcore.jit.5.0.0-alpha1.19459.9.nupkg
-https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/a8a526e9-91b3-4569-ba2d-ff08dbb7c110/nuget/v3/flat2//runtime.linux-musl-x64.Microsoft.NETCore.Native/5.0.0-alpha1.19459.9/runtime.linux-musl-x64.microsoft.netcore.native.5.0.0-alpha1.19459.9.nupkg
-https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/a8a526e9-91b3-4569-ba2d-ff08dbb7c110/nuget/v3/flat2//runtime.linux-musl-x64.Microsoft.NETCore.TestHost/5.0.0-alpha1.19459.9/runtime.linux-musl-x64.microsoft.netcore.testhost.5.0.0-alpha1.19459.9.nupkg
-https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/a8a526e9-91b3-4569-ba2d-ff08dbb7c110/nuget/v3/flat2//runtime.linux-musl-x64.Microsoft.Private.CoreFx.NETCoreApp/5.0.0-alpha1.19457.3/runtime.linux-musl-x64.microsoft.private.corefx.netcoreapp.5.0.0-alpha1.19457.3.nupkg
-https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/a8a526e9-91b3-4569-ba2d-ff08dbb7c110/nuget/v3/flat2//transport.runtime.linux-musl-x64.Microsoft.NETCore.ILAsm/5.0.0-alpha1.19459.9/transport.runtime.linux-musl-x64.microsoft.netcore.ilasm.5.0.0-alpha1.19459.9.nupkg
-https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/a8a526e9-91b3-4569-ba2d-ff08dbb7c110/nuget/v3/flat2//transport.runtime.linux-musl-x64.Microsoft.NETCore.ILDAsm/5.0.0-alpha1.19459.9/transport.runtime.linux-musl-x64.microsoft.netcore.ildasm.5.0.0-alpha1.19459.9.nupkg
-https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/a8a526e9-91b3-4569-ba2d-ff08dbb7c110/nuget/v3/flat2//transport.runtime.linux-musl-x64.Microsoft.NETCore.Jit/5.0.0-alpha1.19459.9/transport.runtime.linux-musl-x64.microsoft.netcore.jit.5.0.0-alpha1.19459.9.nupkg
-https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/a8a526e9-91b3-4569-ba2d-ff08dbb7c110/nuget/v3/flat2//transport.runtime.linux-musl-x64.Microsoft.NETCore.Native/5.0.0-alpha1.19459.9/transport.runtime.linux-musl-x64.microsoft.netcore.native.5.0.0-alpha1.19459.9.nupkg
-https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/a8a526e9-91b3-4569-ba2d-ff08dbb7c110/nuget/v3/flat2//transport.runtime.linux-musl-x64.Microsoft.NETCore.Runtime.CoreCLR/5.0.0-alpha1.19459.9/transport.runtime.linux-musl-x64.microsoft.netcore.runtime.coreclr.5.0.0-alpha1.19459.9.nupkg
-https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/a8a526e9-91b3-4569-ba2d-ff08dbb7c110/nuget/v3/flat2//transport.runtime.linux-musl-x64.Microsoft.NETCore.TestHost/5.0.0-alpha1.19459.9/transport.runtime.linux-musl-x64.microsoft.netcore.testhost.5.0.0-alpha1.19459.9.nupkg
-https://dotnetcli.azureedge.net/dotnet/Sdk/3.1.416/dotnet-sdk-3.1.416-linux-musl-x64.tar.gz
-"
-sha512sums="
-ba5af3c6b68b90d6eae837a8cea7baaa7cdd6e44c35fc1667a41d4fad0c7d24f90e117259015f0e23db8b11bdeb67e2328e8d1e1e77e9b76600bc87a4dbc068d Private.SourceBuilt.Artifacts.0.1.0-3.1.120-1440359-20211022.3.tar.gz
-bf2b971537f2aeb0d391686794026837f3603da17f2463f2e684af0bf5a3475af22293f67ad34e874eae2b5fb793eb4552b3ad5a086fc5f5641c3a13d88fc3f4 Private.SourceBuild.ReferencePackages.1.0.0-beta.21479.1.tar.gz
-90b3ec14fd02cbef8af2086c26ef2f4f23c4c5ce83dac39cacbb36e506ea9914aae6c3b3580af2e71141b8f0435b4910f60970333011b4ddd594839f5fd7ec8e nappo.py
-9070aa3b2416abb0d2a213b6bd85f28c6afd06ebfaeed3d63b8b5dc4e43573bba704ceb4cedc3fb136fc15f34dca913b39ccea96432f5f7d719628a4807d1503 microsoft.aspnetcore.app.runtime.linux-musl-x64.3.1.19.nupkg
-13e847c935c4356bb4882c2aa801a30da7837762b3d7ba30fcc137a5b4303ba9a954a42e98e3246f80e3a3f5b5a6991c6cd49d26c7c37622dc3a509e6f3c9b9f microsoft.netcore.app.host.linux-musl-x64.3.1.19.nupkg
-24d08bd21fbfbb5cf982e46309fd8ff683f67d66f7a0c34ac5b413ccc6c2674f07146d486bcf4a7c52eb1d6deda531d6eb5ad92f26324b47a5d23364c5a86122 microsoft.netcore.app.runtime.linux-musl-x64.3.1.19.nupkg
-ec01c7482f040c06726ca7bf67fd9c83e83b6af4f46ccd16f7892c1034ae408c0d9220e24952060316e19df38f15f86b8d5ae8f1f52d3e38d658b4e94304d42b runtime.linux-musl-x64.microsoft.netcore.app.2.2.0-preview2-26905-02.nupkg
-c18349fcc70880b8d8e7299297c53d6622ee8d35849cbc5dca6a1fa20659f65bd9b55778701d2c0d8db40ad6b2190e555e80ef8149294b67c156371676a43670 runtime.linux-musl-x64.microsoft.netcore.dotnetapphost.3.1.19.nupkg
-464c24592b928f6a8449b914194a90f92288e315ccd73c4e220354dd3fc1c524ed265d3908a43484998816dc6a6d9e83c94e3e69d45e32e37b33cd19b5222ec8 runtime.linux-musl-x64.microsoft.netcore.dotnethost.3.1.19.nupkg
-d1280b21d84b127684fc6fd1a71ba2228a38d1fa2818bb2a42029e04ee832ed937d95ae43771669502f53748ed9a32a8d6ea5adae923d3bcfbcbd774fbe192d3 runtime.linux-musl-x64.microsoft.netcore.dotnethostpolicy.3.1.19.nupkg
-98317c8d12ff071059d3e8608b71d39efe436d328169d91ed0ebc8f3a93b3c68659e5a41d969a26ba8099a4522cb0bf7858f8e39d03237ffdfecb20b66f1b66c runtime.linux-musl-x64.microsoft.netcore.dotnethostresolver.3.1.19.nupkg
-b5c03376ed2e56955463a4c8328ec8682d11fca5085c091025df989b1add13ef5510d5079c1c541238610180d5871ad0a7ec2b4a617d40ca4fdbdf85500769b2 runtime.linux-musl-x64.microsoft.netcore.ilasm.5.0.0-alpha1.19459.9.nupkg
-44609e872e0aa76c682ffa34951cbdbe2e590686342263e71b8ec012ef3e5d242f17ab23576679dc27d451b3a5a59f1a1bf9abd8a620e777e8552486d366058c runtime.linux-musl-x64.microsoft.netcore.ildasm.5.0.0-alpha1.19459.9.nupkg
-f7266e2da619eacea2855cc131245711966f54115cf763ea338213ab029e138a84dc1daf0a7692fc9879337a6a490f4c76849ad51ed20f3b3e649573ce25b79b runtime.linux-musl-x64.microsoft.netcore.jit.5.0.0-alpha1.19459.9.nupkg
-65607d7cb01d2ebeef6795af9694fd485b24e9b773287f75b99c1e89cfa1d1fc883d4c2b733afe4885adf2d6366866045c0277f66b48321f8c58b9e2c01096db runtime.linux-musl-x64.microsoft.netcore.native.5.0.0-alpha1.19459.9.nupkg
-7d9f6f15fa66ee512989d63ccfb996171f046aa6c853d4856284ec696042676ffee24027595fa358ea8c01083370548f2a1f8b42a422a86b99c10d31114dc9f1 runtime.linux-musl-x64.microsoft.netcore.testhost.5.0.0-alpha1.19459.9.nupkg
-6f4b46a20cfc68b7838741767aa97617cbd654ad3876ff0909e72dd7d8720e4586816b620205491a6b81b0e96ec6340d192e8a62a2551866320ad9362fd0d49e runtime.linux-musl-x64.microsoft.private.corefx.netcoreapp.5.0.0-alpha1.19457.3.nupkg
-8ee53783e0747b805dc6e6544dfabd52f6d30cdc0ae70f56dfc711c6d063f17bda82c6ce4cf18871fe05d8bf98391b15a50f2557b09d3875b2366cab3da199f8 transport.runtime.linux-musl-x64.microsoft.netcore.ilasm.5.0.0-alpha1.19459.9.nupkg
-640c7f0f22a1652bfd3bb522266bba46af368e421b29b3feece438684ef88db23b92c6aba45c576475f2ad8a65182ffbf9ce473593e17f3bc542ec01e1400842 transport.runtime.linux-musl-x64.microsoft.netcore.ildasm.5.0.0-alpha1.19459.9.nupkg
-c701fc3ec4f4c1a29bca2a45d752207fedb6c4437ded9ea5ae928d184772ee6b63432ae214e5ef1a5e99d14ab2f9a9aa6da694cdda277adbcf3b2f3c0686c5f3 transport.runtime.linux-musl-x64.microsoft.netcore.jit.5.0.0-alpha1.19459.9.nupkg
-98061582947420e265a28fb2eedf4d6bb3420e8fb9baf6660f6c7489110cbe1683024a3882b4d7faecbb3f85a30e1552ff3fdf67fd7b28c8bb028db0c100a18e transport.runtime.linux-musl-x64.microsoft.netcore.native.5.0.0-alpha1.19459.9.nupkg
-097bf3c61b855ddf97e254be5cd982603ca8e90af5c018a8d090d95f727ae1a3c023b6154cdc031af6ed1371a7f20ae60de96c5ff136bdf10b40cb5f36d99c2d transport.runtime.linux-musl-x64.microsoft.netcore.runtime.coreclr.5.0.0-alpha1.19459.9.nupkg
-e6b6928a30a1eae6b0d91dfdcc9ed0e91615ed4f01fe7a73d66f72569a6f4feb001d6cf79437fa2ae7269039e9e50a9afed86f0cd9fc6fa343174a39450720a2 transport.runtime.linux-musl-x64.microsoft.netcore.testhost.5.0.0-alpha1.19459.9.nupkg
-252837690f099ee756705559a030715dd19836c8f7b2d0364beb9998fc78596586d045e2a7f23e16143be2dbccf19470eec1818486790bf8d9160c166eeb72dc dotnet-sdk-3.1.416-linux-musl-x64.tar.gz
-"
diff --git a/testing/dotnet31-stage0/README.md b/testing/dotnet31-stage0/README.md
deleted file mode 100644
index 0cc2f5e6c08..00000000000
--- a/testing/dotnet31-stage0/README.md
+++ /dev/null
@@ -1,18 +0,0 @@
-# Description
-APKBUILD for dotnet31-stage0, prebuilt bits sourced from Microsoft
-
-# Generated packages
-* dotnet31-stage0-bootstrap
-* dotnet31-stage0-artifacts
-
-# How to build dotnet31 stack
-* Build testing/dotnet31-stage0 (provides prebuilt bits for first bootstrap bld)
-* Build testing/dotnet31-bootstrap (provides "tainted" SDK for first build)
-* Build testing/dotnet31-build ("untainted" build of dotnet)
-* Build testing/dotnet31-runtime (packages runtime bits from dotnet31-build)
-* Build testing/dotnet31-sdk (packages sdk bits from dotnet31-build)
-
-# Special functions
-* abuild _update_source: Stage0 adapts prebuilt artifacts packages by replacing
-linux-x64 nupkgs with linux-musl-x64 versions. Any updates to artifacts will
-require executing this function to update source with up to date nuget packages
diff --git a/testing/dovecot-ceph-plugin/1-fixes.patch b/testing/dovecot-ceph-plugin/1-fixes.patch
deleted file mode 100644
index 8af727645cc..00000000000
--- a/testing/dovecot-ceph-plugin/1-fixes.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-submitted as: https://github.com/ceph-dovecot/dovecot-ceph-plugin/pull/272
-
-commit cbccc030421472d2455bf0c584ea1490bf03dd16
-Author: root <root@test2.local>
-Date: Mon Aug 24 13:28:24 2020 +0000
-
- some compiling fixes
-
-diff --git a/src/storage-rbox/ostream-bufferlist.cpp b/src/storage-rbox/ostream-bufferlist.cpp
-index 83f4880..2c3f0b6 100644
---- a/src/storage-rbox/ostream-bufferlist.cpp
-+++ b/src/storage-rbox/ostream-bufferlist.cpp
-@@ -63,7 +63,7 @@ static ssize_t o_stream_buffer_sendv(struct ostream_private *stream, const struc
- }
- for (i = 0; i < iov_count; i++) {
- // use unsigned char* for binary data!
-- bstream->buf->append(reinterpret_cast<const unsigned char *>(iov[i].iov_base), iov[i].iov_len);
-+ bstream->buf->append(reinterpret_cast<const char *>(iov[i].iov_base), iov[i].iov_len);
- stream->ostream.offset += iov[i].iov_len;
- ret += iov[i].iov_len;
- }
diff --git a/testing/dovecot-ceph-plugin/2-fixes.patch b/testing/dovecot-ceph-plugin/2-fixes.patch
deleted file mode 100644
index 6d10381d4d0..00000000000
--- a/testing/dovecot-ceph-plugin/2-fixes.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-submitted as: https://github.com/ceph-dovecot/dovecot-ceph-plugin/pull/272
-
-commit 31f755997e648e813a4eb49d86c301d6e5b1121d
-Author: None None <none@f1-outsourcing.eu>
-Date: Mon Aug 24 12:02:24 2020 +0000
-
- some compiling fixes
-
-diff --git a/src/storage-rbox/typeof-def.h b/src/storage-rbox/typeof-def.h
-index 4badd34..3ed0b71 100644
---- a/src/storage-rbox/typeof-def.h
-+++ b/src/storage-rbox/typeof-def.h
-@@ -23,7 +23,7 @@
- /* replacement for MODULE_CONTEXT (v 2.3, assigned void or long int, this is not allowed with c++) */
- #define RBOX_MODULE_CONTEXT(obj, id_ctx) \
- (module_get_context_id(&(id_ctx).id) < array_count(&(obj)->module_contexts) \
-- ? (*((void **)array_idx_modifiable(&(obj)->module_contexts, module_get_context_id(&(id_ctx).id)) + \
-+ ? (*((index_mailbox_context **)array_idx_modifiable(&(obj)->module_contexts, module_get_context_id(&(id_ctx).id)) + \
- OBJ_REGISTER_COMPATIBLE(obj, id_ctx))) \
- : NULL)
-
diff --git a/testing/dovecot-ceph-plugin/3-fixes.patch b/testing/dovecot-ceph-plugin/3-fixes.patch
deleted file mode 100644
index 6b191d3f117..00000000000
--- a/testing/dovecot-ceph-plugin/3-fixes.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-submitted as: https://github.com/ceph-dovecot/dovecot-ceph-plugin/pull/272
-
-commit 4a159760a514b60b1343764bd93d6aee78cb63a1
-Author: None None <none@f1-outsourcing.eu>
-Date: Mon Aug 24 10:42:44 2020 +0000
-
- some compiling fixes
-
-diff --git a/src/storage-rbox/rbox-mail.cpp b/src/storage-rbox/rbox-mail.cpp
-index bd15d82..8d0b8a3 100644
---- a/src/storage-rbox/rbox-mail.cpp
-+++ b/src/storage-rbox/rbox-mail.cpp
-@@ -496,7 +496,7 @@ int rbox_get_guid_metadata(struct rbox_mail *mail, const char **value_r) {
- }
- // lost for some reason, use fallback
- // index is empty. we have to check the object attributes do we have to tell someone that the index is broken?
-- if (rbox_mail_metadata_get(mail, rbox_metadata_key::RBOX_METADATA_GUID, value_r) < 0) {
-+ if (rbox_mail_metadata_get(mail, rbox_metadata_key::RBOX_METADATA_GUID, const_cast<char**>(value_r)) < 0) {
- return -1;
- }
-
-diff --git a/src/storage-rbox/rbox-save.cpp b/src/storage-rbox/rbox-save.cpp
-index bc11406..7b607ed 100644
---- a/src/storage-rbox/rbox-save.cpp
-+++ b/src/storage-rbox/rbox-save.cpp
-@@ -192,7 +192,7 @@ void init_output_stream(mail_save_context *_ctx) {
- // create buffer ( delete is in wait_for_write_operations)
- r_ctx->rados_mail->set_mail_buffer(new librados::bufferlist());
- r_ctx->output_stream =
-- o_stream_create_bufferlist(r_ctx->rados_mail, &r_ctx->rados_storage, rbox->storage->config->is_write_chunks());
-+ o_stream_create_bufferlist(r_ctx->rados_mail, const_cast<librmb::RadosStorage*>(&r_ctx->rados_storage), rbox->storage->config->is_write_chunks());
- o_stream_cork(r_ctx->output_stream);
- _ctx->data.output = r_ctx->output_stream;
-
diff --git a/testing/dovecot-ceph-plugin/6-32bit.patch b/testing/dovecot-ceph-plugin/6-32bit.patch
deleted file mode 100644
index 0063cb0beb4..00000000000
--- a/testing/dovecot-ceph-plugin/6-32bit.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-submitted as:
-https://github.com/ceph-dovecot/dovecot-ceph-plugin/pull/275
-
---- a/src/librmb/rados-metadata.h
-+++ b/src/librmb/rados-metadata.h
-@@ -31,9 +31,9 @@
-
- RadosMetadata(enum rbox_metadata_key _key, const char* val) { convert(_key, val); }
-
-- RadosMetadata(enum rbox_metadata_key _key, const uint& val) { convert(_key, val); }
-+ RadosMetadata(enum rbox_metadata_key _key, const uint32_t& val) { convert(_key, val); }
-
-- RadosMetadata(enum rbox_metadata_key _key, const size_t& val) { convert(_key, val); }
-+ RadosMetadata(enum rbox_metadata_key _key, const uint64_t& val) { convert(_key, val); }
- RadosMetadata(enum rbox_metadata_key _key, const int val) { convert(_key, val); }
- ~RadosMetadata() {}
-
-@@ -91,17 +91,17 @@
- bl.append(str.c_str(), str.length() + 1);
- }
-
-- void convert(enum rbox_metadata_key _key, const uint& value) {
-+ void convert(enum rbox_metadata_key _key, const uint32_t& value) {
- bl.clear();
- key = librmb::rbox_metadata_key_to_char(_key);
- std::string val = std::to_string(value);
- bl.append(val.c_str(), val.length() + 1);
- }
-
-- void convert(enum rbox_metadata_key _key, const size_t& value) {
-+ void convert(enum rbox_metadata_key _key, const uint64_t& value) {
- bl.clear();
- key = librmb::rbox_metadata_key_to_char(_key);
-- std::string val = std::to_string(static_cast<int>(value));
-+ std::string val = std::to_string(static_cast<uint64_t>(value));
- bl.append(val.c_str(), val.length() + 1);
- }
- void convert(enum rbox_metadata_key _key, const int value) {
diff --git a/testing/dovecot-ceph-plugin/7-sentinel.patch b/testing/dovecot-ceph-plugin/7-sentinel.patch
deleted file mode 100644
index e7edb24de5c..00000000000
--- a/testing/dovecot-ceph-plugin/7-sentinel.patch
+++ /dev/null
@@ -1,61 +0,0 @@
-submitted as:
-https://github.com/ceph-dovecot/dovecot-ceph-plugin/pull/276
-
---- a/src/storage-rbox/rbox-mailbox-list-fs.cpp
-+++ b/src/storage-rbox/rbox-mailbox-list-fs.cpp
-@@ -101,7 +101,7 @@
- }
-
- /* we have at least one directory. see if this mailbox is selectable */
-- maildir_path = t_strconcat(path, "/", list->set.maildir_name, NULL);
-+ maildir_path = t_strconcat(path, "/", list->set.maildir_name, static_cast<const char*>(NULL));
- if (stat(maildir_path, &st2) < 0)
- *flags_r |= MAILBOX_NOSELECT | MAILBOX_CHILDREN;
- else if (!S_ISDIR(st2.st_mode)) {
-@@ -205,7 +205,7 @@
- }
-
- /* we've done all filtering we can before stat()ing */
-- path = t_strconcat(dir, "/", fname, NULL);
-+ path = t_strconcat(dir, "/", fname, static_cast<const char*>(NULL));
- if (stat(path, &st) < 0) {
- if (ENOTFOUND(errno)) {
- *flags_r |= MAILBOX_NONEXISTENT;
---- a/src/storage-rbox/rbox-storage.cpp
-+++ b/src/storage-rbox/rbox-storage.cpp
-@@ -106,7 +106,7 @@
- const char *home;
-
- if (ns->owner != NULL && mail_user_get_home(ns->owner, &home) > 0) {
-- const char *path = t_strconcat(home, "/rbox", NULL);
-+ const char *path = t_strconcat(home, "/rbox", static_cast<const char*>(NULL));
- if (access(path, R_OK | W_OK | X_OK) == 0) {
- #ifdef DEBUG
- i_debug("rbox: root exists (%s)", path);
-@@ -142,7 +142,7 @@
- }
- }
-
-- path = t_strconcat(root_dir, "/" RBOX_MAILBOX_DIR_NAME, NULL);
-+ path = t_strconcat(root_dir, "/" RBOX_MAILBOX_DIR_NAME, static_cast<const char*>(NULL));
- if (stat(path, &st) < 0) {
- #ifdef DEBUG
- i_debug("rbox autodetect: stat(%s) failed: %m", path);
-@@ -343,7 +343,7 @@
- if (mailbox_get_path_to(box, MAILBOX_LIST_PATH_TYPE_INDEX, &box_path) < 0)
- return -1;
- i_assert(box_path != NULL);
-- box_path = t_strconcat(box_path, "/", box->index_prefix, ".log", NULL);
-+ box_path = t_strconcat(box_path, "/", box->index_prefix, ".log", static_cast<const char*>(NULL));
- ret = stat(box_path, &st);
- }
- #endif
-@@ -566,7 +566,7 @@
-
- const char *path;
- path = mailbox_list_get_root_forced(list, MAILBOX_LIST_PATH_TYPE_CONTROL);
-- path = t_strconcat(path, "/" RBOX_UIDVALIDITY_FILE_NAME, NULL);
-+ path = t_strconcat(path, "/" RBOX_UIDVALIDITY_FILE_NAME, static_cast<const char*>(NULL));
-
- FUNC_END();
- return mailbox_uidvalidity_next(list, path);
diff --git a/testing/dovecot-ceph-plugin/APKBUILD b/testing/dovecot-ceph-plugin/APKBUILD
deleted file mode 100644
index 0da5adc0724..00000000000
--- a/testing/dovecot-ceph-plugin/APKBUILD
+++ /dev/null
@@ -1,85 +0,0 @@
-# Contributor: Duncan Bellamy <dunk@denkimushi.com>
-# Maintainer: Duncan Bellamy <dunk@denkimushi.com>
-pkgname=dovecot-ceph-plugin
-pkgver=0.0.23
-pkgrel=3
-_gtestver=1.11.0
-pkgdesc="Dovecot plugin for storing mails in a Ceph cluster"
-url="https://github.com/ceph-dovecot/dovecot-ceph-plugin"
-arch="all !riscv64" # blocked by ceph
-license="LGPL-2.1-or-later"
-depends="dovecot"
-makedepends="
- automake
- autoconf
- ceph-dev
- dovecot-dev
- jansson-dev
- libexecinfo-dev
- libtool
- linux-headers
- "
-subpackages="librmb:_librmb librmb-dev:_librmb_dev librmb-doc:_librmb_doc librmb-utils:_librmb_utils"
-source="$pkgname-$pkgver.tar.gz::https://github.com/ceph-dovecot/dovecot-ceph-plugin/archive/refs/tags/$pkgver.tar.gz
- https://github.com/google/googletest/archive/refs/tags/release-$_gtestver.tar.gz
- 1-fixes.patch
- 2-fixes.patch
- 3-fixes.patch
- 6-32bit.patch
- 7-sentinel.patch
- "
-
-prepare() {
- default_prepare
- ln -s "$srcdir"/googletest-release-"$_gtestver"/googletest \
- src/tests/googletest/googletest
- ln -s "$srcdir"/googletest-release-"$_gtestver"/googlemock \
- src/tests/googletest/googlemock
- autoreconf -vif
-}
-
-build() {
- export CFLAGS="$CFLAGS -fPIC"
- export CXXFLAGS="$CXXFLAGS -fPIC"
- export LIBS="$LIBS -lexecinfo"
-
- ./configure --prefix=/usr --with-dovecot=/usr/lib/dovecot
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-_librmb() {
- pkgdesc="RADOS mailbox library"
- amove usr/lib/librmb.so.*
-}
-
-_librmb_dev() {
- pkgdesc="RADOS mailbox headers"
- default_dev
-}
-
-_librmb_doc() {
- default_doc
-}
-
-_librmb_utils() {
- pkgdesc="RADOS mailbox tools"
- amove usr/bin/rmb
-}
-
-sha512sums="
-6476d98b59fd8adfb49dee478a234ec2327c76712074e8842db24f8a9982c53f68d3b917a096b707efae01862e096e378c435006a316b7d43a8ffa0263075a54 dovecot-ceph-plugin-0.0.23.tar.gz
-6fcc7827e4c4d95e3ae643dd65e6c4fc0e3d04e1778b84f6e06e390410fe3d18026c131d828d949d2f20dde6327d30ecee24dcd3ef919e21c91e010d149f3a28 release-1.11.0.tar.gz
-d6b25ee5a9b990e3f196292b3d160210c39d1cbec1abc71a938733aed0508c991dcb14f78b84c5cc4dece35cdc1af35517dec695eb019d1c62bb55cc6acd2e79 1-fixes.patch
-0c2267140dfd532dd191e8c0cc0cd54a47c57222879664c24c724d6846cff7d435aacfae077439c882156c982e004917f428415e7497fe40d6f3f1f680b5da6e 2-fixes.patch
-585ef94845d03ff49fd8a02db2ff8075c4a0eba545d98b22558b23f587bb475f4682d5b6cfd7f33f8617ffbec00f190a26521433c4f1ba1d3a2e78e9940ddc37 3-fixes.patch
-a71e6b2236c29f3b65ed043ba5548c3494bedc40d5db2eabad54158eccc0b7c4dda328d878064031fb0b8088fb3a38c8d41ae4049a8f0fd57f89b16cc92267f5 6-32bit.patch
-df836f24d8133228537b003dbdc4f917892f50dbe3dc7c374d6e242890e879a31ed1f8259ceb88df43dcea281b1be612171714417407b57db38827f834f1fcdd 7-sentinel.patch
-"
diff --git a/testing/dovi-tool/APKBUILD b/testing/dovi-tool/APKBUILD
new file mode 100644
index 00000000000..b8a5d51d3cc
--- /dev/null
+++ b/testing/dovi-tool/APKBUILD
@@ -0,0 +1,37 @@
+# Contributor: Petr Hodina <phodina@protonmail.com>
+# Maintainer: Petr Hodina <phodina@protonmail.com>
+pkgname=dovi-tool
+pkgver=2.0.3
+pkgrel=0
+pkgdesc="Library to read and write Dolby Vision metadata"
+url="https://github.com/quietvoid/dovi_tool"
+# arm: fails tests
+arch="all !armhf !armv7"
+license="MIT"
+makedepends="cargo cargo-auditable fontconfig-dev"
+checkdepends="font-opensans"
+source="$pkgname-$pkgver.tar.gz::https://github.com/quietvoid/dovi_tool/archive/refs/tags/$pkgver.tar.gz"
+builddir="$srcdir/dovi_tool-$pkgver"
+options="net" # cargo fetch
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+check() {
+ cargo test --frozen --release
+}
+
+package() {
+ install -Dm755 target/release/dovi_tool -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+49f42d85bfcb22ce35800f2aeebaea8ae3880227f4727c4ba92e6123bd460d2df58b7346473b9bde5a0d64db88e0c8280921800f58794d72625af1f6921aa219 dovi-tool-2.0.3.tar.gz
+"
diff --git a/testing/downloader-cli/APKBUILD b/testing/downloader-cli/APKBUILD
new file mode 100644
index 00000000000..8e34904ac26
--- /dev/null
+++ b/testing/downloader-cli/APKBUILD
@@ -0,0 +1,37 @@
+# Contributor: Dmitry Zakharchenko <dmitz@disroot.org>
+# Maintainer: Dmitry Zakharchenko <dmitz@disroot.org>
+pkgname=downloader-cli
+pkgver=0.3.4
+pkgrel=1
+pkgdesc="Simple downloader with an awesome progressbar"
+url="https://github.com/deepjyoti30/downloader-cli"
+arch="noarch"
+license="MIT"
+depends="py3-urllib3 py3-downloader-cli"
+makedepends="py3-setuptools"
+checkdepends="py3-pytest"
+subpackages="py3-$pkgname-pyc py3-$pkgname:py3:noarch"
+source="$pkgname-$pkgver.tar.gz::https://github.com/deepjyoti30/downloader-cli/archive/$pkgver.tar.gz"
+
+build() {
+ python3 setup.py build
+}
+
+check() {
+ python3 -m pytest
+}
+
+package() {
+ python3 setup.py install --skip-build --root="$pkgdir"
+}
+
+py3() {
+ depends="python3"
+ pkgdesc="Python library for $pkgname"
+
+ amove usr/lib/python3*
+}
+
+sha512sums="
+e652850888ff6cf3c0f381056f22eb7120c8b666c03eeb607c8dd2fd827d4f4c2fb5191666e0da0899f6b95d3a402f03672ccd2000ad4a87dc6b067d4372b906 downloader-cli-0.3.4.tar.gz
+"
diff --git a/testing/dpdk/01-ppc.patch b/testing/dpdk/01-ppc.patch
deleted file mode 100644
index 65f7c252f12..00000000000
--- a/testing/dpdk/01-ppc.patch
+++ /dev/null
@@ -1,71 +0,0 @@
---- a/lib/eal/ppc/include/rte_cycles.h
-+++ b/lib/eal/ppc/include/rte_cycles.h
-@@ -10,7 +10,9 @@
- extern "C" {
- #endif
-
-+#ifdef __GLIBC__
- #include <sys/platform/ppc.h>
-+#endif
-
- #include "generic/rte_cycles.h"
-
-@@ -26,7 +28,11 @@
- static inline uint64_t
- rte_rdtsc(void)
- {
-+#ifdef __GLIBC__
- return __ppc_get_timebase();
-+#else
-+ return __builtin_ppc_get_timebase();
-+#endif
- }
-
- static inline uint64_t
---- a/lib/eal/ppc/rte_cycles.c
-+++ b/lib/eal/ppc/rte_cycles.c
-@@ -2,12 +2,44 @@
- * Copyright (C) IBM Corporation 2019.
- */
-
-+#ifdef __GLIBC__
- #include <sys/platform/ppc.h>
-+#else
-+#include <string.h>
-+#include <stdio.h>
-+#endif
-
- #include "eal_private.h"
-
- uint64_t
- get_tsc_freq_arch(void)
- {
-+#ifdef __GLIBC__
- return __ppc_get_timebase_freq();
-+#else
-+ static uint64_t base;
-+ if (!base) {
-+ FILE *f = fopen("/proc/cpuinfo", "rb");
-+ if (f) {
-+ ssize_t nr;
-+ /* virtually always big enough to hold the line */
-+ char buf[512];
-+ while (fgets(buf, sizeof(buf), f)) {
-+ char *ret = strstr(buf, "timebase");
-+ if (!ret) {
-+ continue;
-+ }
-+ ret += sizeof("timebase") - 1;
-+ ret = strchr(ret, ':');
-+ if (!ret) {
-+ continue;
-+ }
-+ base = strtoul(ret + 1, 0, 10);
-+ break;
-+ }
-+ fclose(f);
-+ }
-+ }
-+ return base;;
-+#endif
- }
diff --git a/testing/dpdk/APKBUILD b/testing/dpdk/APKBUILD
deleted file mode 100644
index 4ca353dbc9a..00000000000
--- a/testing/dpdk/APKBUILD
+++ /dev/null
@@ -1,57 +0,0 @@
-# Contributor: Duncan Bellamy <dunk@denkimushi.com>
-# Maintainer: Duncan Bellamy <dunk@denkimushi.com>
-pkgname=dpdk
-pkgver=22.03
-pkgrel=0
-pkgdesc="Data Plane Development Kit"
-url="https://dpdk.org/"
-# s390x, riscv64 is not supported
-arch="all !s390x !riscv64"
-license="BSD-3-Clause AND GPL-2.0"
-# at least half tests fail on each platform
-options="!check"
-makedepends="
- bsd-compat-headers
- doxygen
- dtc-dev
- elfutils-dev
- meson
- jansson
- libbsd-dev
- libexecinfo-dev
- libpcap-dev
- linux-headers
- numactl
- py3-elftools
- py3-sphinx
- zlib-dev
- "
-subpackages="$pkgname-test $pkgname-examples $pkgname-static $pkgname-dev $pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/dpdk/dpdk/archive/v$pkgver.tar.gz
- 01-ppc.patch
- "
-
-build() {
- abuild-meson -Denable_docs=true . output
- meson compile ${JOBS:+-j ${JOBS}} -C output
-}
-
-check() {
- meson test --no-rebuild -v -C output
-}
-
-package() {
- DESTDIR="$pkgdir" meson install --no-rebuild -C output
-}
-
-examples() {
- amove usr/share/dpdk/examples
-}
-
-test() {
- amove usr/bin/$pkgname-test*
-}
-sha512sums="
-ff80a9f87e71cd743ea5e62f515849bc6746fe7496a0d4b63ecf2bfe0d88da74f0e6c0257c07838c1f9ff41abd81827932b97731fb0fce60d56a8bab7e32347c dpdk-22.03.tar.gz
-ce2c7d9cb817c26ffaf8ee6073c56182a9bcd1b1e83162bcbc8ee76c7950f3e64eb6847839ab7efaac0148f5666561e758e147339294f279074cee77db208be4 01-ppc.patch
-"
diff --git a/testing/draw/APKBUILD b/testing/draw/APKBUILD
new file mode 100644
index 00000000000..7d41c561c75
--- /dev/null
+++ b/testing/draw/APKBUILD
@@ -0,0 +1,26 @@
+# Maintainer: Guy Godfroy <guy.godfroy@gugod.fr>
+pkgname=draw
+pkgver=0.1.1
+pkgrel=5
+pkgdesc="Draw in your terminal"
+url="https://github.com/maaslalani/draw"
+arch="all"
+license="MIT"
+makedepends="go"
+source="$pkgname-$pkgver.tar.gz::https://github.com/maaslalani/draw/archive/v$pkgver.tar.gz"
+
+build() {
+ go build -o draw
+}
+
+check() {
+ go test ./...
+}
+
+package() {
+ install -Dm755 ./draw "$pkgdir"/usr/bin/draw
+}
+
+sha512sums="
+60cf79fe27e42e303e5a642602cebd80cdf7364a60f7885c0277c25d925cba522ec6f35bf7584a1c5a7a52da361e65ed5959a6acb1bfe572f59346fcfc25a644 draw-0.1.1.tar.gz
+"
diff --git a/testing/drawing/APKBUILD b/testing/drawing/APKBUILD
index 78e56b2e10e..63cae6693f7 100644
--- a/testing/drawing/APKBUILD
+++ b/testing/drawing/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Thomas Kienlen <kommander@laposte.net>
# Maintainer: Thomas Kienlen <kommander@laposte.net>
pkgname=drawing
-pkgver=0.8.5
+pkgver=1.0.2
pkgrel=0
pkgdesc="Simple image editor for Linux"
url="https://github.com/maoschanz/drawing"
@@ -14,6 +14,7 @@ depends="
makedepends="
appstream-glib
desktop-file-utils
+ itstool
meson
py3-cairo-dev
py3-gobject3-dev
@@ -26,7 +27,7 @@ subpackages="$pkgname-lang"
build() {
abuild-meson . build
- meson compile ${JOBS:+-j ${JOBS}} -C build
+ meson compile -C build
}
check() {
@@ -38,6 +39,6 @@ package() {
}
sha512sums="
-e92c49d33bbc8cc1907e911bcafda92723ac9597e7f5986489fed8d356620512c36e8766e358b4192713a4e2c5decb0c5c50c2396e58c6ae2b462019278a234e drawing-0.8.5.tar.gz
+61e3e2764832de6ed997bd6f72a63154fae332da76b12ede848b9c1e9d850ba46cf9ebdf16dd1b4d52827b5ec4e877aca03877d0557a2a2635279598992832d6 drawing-1.0.2.tar.gz
a82cf5bb7c6936a1db20c3ab92bde0359f03437cddd8afa0477dc6808692963f55e386ead0bd3d6b67a70ce8dbbe3e863bb0f818b4bbfcdf8960da1920c6006f fix-bindtextdomain.patch
"
diff --git a/testing/drawpile/APKBUILD b/testing/drawpile/APKBUILD
new file mode 100644
index 00000000000..0c053fa6caa
--- /dev/null
+++ b/testing/drawpile/APKBUILD
@@ -0,0 +1,116 @@
+# Contributor: mio <miyopan@e.email>
+# Maintainer: mio <miyopan@e.email>
+pkgname=drawpile
+pkgver=2.2.1
+pkgrel=0
+pkgdesc="Collaborative drawing program"
+url="https://drawpile.net/"
+license="GPL-3.0-or-later"
+# armhf: missing karchive5-dev kdnssd5-dev
+# ppc64le: unrecognized command-line option '-march=native' error
+# x86, armv7: cast from pointer to integer of different size error
+arch="aarch64 x86_64"
+pkgusers=drawpile
+pkggroups=drawpile
+makedepends="
+ cargo
+ cmake
+ extra-cmake-modules
+ giflib-dev
+ karchive5-dev
+ kdnssd5-dev
+ libmicrohttpd-dev
+ libsodium-dev
+ libvpx-dev
+ miniupnpc-dev
+ qt5-qtmultimedia-dev
+ qt5-qtsvg-dev
+ qt5-qttools-dev
+ qt5-qtx11extras-dev
+ samurai
+ "
+subpackages="
+ $pkgname-doc
+ $pkgname-base
+ $pkgname-client
+ $pkgname-server
+ $pkgname-server-openrc
+ $pkgname-tools
+ "
+source="drawpile-$pkgver.tar.gz::https://github.com/drawpile/Drawpile/archive/$pkgver.tar.gz
+ drawpile.initd
+ drawpile-server.pre-install
+ "
+builddir="$srcdir"/Drawpile-"$pkgver"
+
+# Temporarily disable lto due to conflict with multiple Rust libs exposing
+# rust_eh_personality symbol.
+export CARGO_PROFILE_RELEASE_LTO="false"
+
+build() {
+ cmake -B build -G Ninja \
+ --preset linux-release-qt5-all-ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ # drawpile is a meta-package
+ depends="
+ $pkgname-base=$pkgver-r$pkgrel
+ $pkgname-client=$pkgver-r$pkgrel
+ $pkgname-server=$pkgver-r$pkgrel
+ $pkgname-tools=$pkgver-r$pkgrel
+ "
+ DESTDIR="$pkgdir" cmake --install build
+
+ install -Dm755 "$srcdir"/drawpile.initd "$pkgdir"/etc/init.d/drawpile
+ install -Dm644 LICENSE.txt \
+ "$pkgdir"/usr/share/licenses/drawpile-base/LICENSE.txt
+}
+
+base() {
+ pkgdesc="Common files for Drawpile"
+ arch="noarch"
+ amove usr/share
+}
+
+client() {
+ pkgdesc="$pkgdesc (Drawpile client)"
+ depends="$pkgname-base=$pkgver-r$pkgrel"
+ amove usr/bin/drawpile
+}
+
+server() {
+ pkgdesc="$pkgdesc (Drawpile server)"
+ depends="
+ $pkgname-base=$pkgver-r$pkgrel
+ qt5-qtbase-sqlite
+ "
+
+ amove usr/bin/drawpile-srv
+
+ install -d -o drawpile -g drawpile "$subpkgdir"/etc/drawpile/templates
+ install -d -o drawpile -g drawpile -m 750 "$subpkgdir"/var/lib/drawpile
+}
+
+tools() {
+ pkgdesc="$pkgdesc (Drawpile tools)"
+ depends="$pkgname-base=$pkgver-r$pkgrel"
+ # dprectool: convert between Drawpile session formats .dprec and .dptxt
+ # drawpile-cmd: render recordings
+ # drawpile-timelapse: turn drawpile recordings into timelapse videos
+ amove usr/bin/dprectool
+ amove usr/bin/drawpile-cmd
+ amove usr/bin/drawpile-timelapse
+}
+
+sha512sums="
+7480d10dd0ac6ea280b8abced66d7c1daca03e2a7dcb1e8c3378efb18a0a6ab5f72734619956c76827adbbf7969a3a930dd2dff951dcbbf7ff6d703e5a665e9e drawpile-2.2.1.tar.gz
+5a2e6d1e677a74a43838cce26bd6b6f6bceb858f3622912476665ad3f6cef3171aa0c5b56ca9343c5b7ec81c850ce251a177d77490854e7ef39796c4c7d53535 drawpile.initd
+712df7a0bac0d4ad25f4254f0caf09b4d496b64d1d0a8bbbdd28e3b6c10ac6305dab58ac48adc8b88d0b7c8898ce28613ae2e8951ba76ad2ef5da35b3d943a94 drawpile-server.pre-install
+"
diff --git a/testing/drawpile/drawpile-server.pre-install b/testing/drawpile/drawpile-server.pre-install
new file mode 100644
index 00000000000..ccef804fc8c
--- /dev/null
+++ b/testing/drawpile/drawpile-server.pre-install
@@ -0,0 +1,8 @@
+#!/bin/sh
+
+# Add the server user and group.
+user=drawpile
+addgroup -S $user 2>/dev/null
+adduser -S -D -h /var/lib/drawpile -s /sbin/nologin -G $user -g $user $user 2>/dev/null
+
+exit 0
diff --git a/testing/drawpile/drawpile.initd b/testing/drawpile/drawpile.initd
new file mode 100755
index 00000000000..2afa1fdc47b
--- /dev/null
+++ b/testing/drawpile/drawpile.initd
@@ -0,0 +1,18 @@
+#!/sbin/openrc-run
+
+name="Drawpile Server"
+description="Collaborative drawing server"
+command="/usr/bin/drawpile-srv"
+command_args="--database /var/lib/drawpile/guiserver.db
+ --sessions /var/lib/drawpile/sessions
+ --templates /etc/drawpile/templates
+ --extauth https://drawpile.net/api/ext-auth/
+ "
+pidfile="/run/drawpile.pid"
+command_background=true
+command_user=drawpile:drawpile
+
+depend() {
+ need net
+ after firewall
+}
diff --git a/testing/droidcam/APKBUILD b/testing/droidcam/APKBUILD
new file mode 100644
index 00000000000..830414bb6a2
--- /dev/null
+++ b/testing/droidcam/APKBUILD
@@ -0,0 +1,53 @@
+# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=droidcam
+pkgver=2.1.3
+pkgrel=0
+pkgdesc="GNU/Linux client for DroidCam"
+url="https://github.com/dev47apps/droidcam/"
+arch="all"
+license="GPL-2.0-only"
+makedepends="
+ alsa-lib-dev
+ ffmpeg-dev
+ glib-dev
+ gtk+3.0-dev
+ libayatana-appindicator-dev
+ libjpeg-turbo-dev
+ libusbmuxd-dev
+ linux-headers
+ speex-dev
+ "
+subpackages="$pkgname-gui"
+install="$pkgname.post-install"
+source="https://github.com/dev47apps/droidcam/archive/refs/tags/v$pkgver/droidcam-$pkgver.tar.gz
+ makefile.patch
+ release-paths.patch
+ "
+options="!check"
+
+build() {
+ make APPINDICATOR=ayatana-appindicator3-0.1
+}
+
+package() {
+ install -Dm755 -t "$pkgdir"/usr/bin \
+ droidcam \
+ droidcam-cli
+
+ install -Dm644 icon2.png "$pkgdir"/usr/share/droidcam/icon.png
+ install -Dm644 droidcam.desktop -t "$pkgdir"/usr/share/applications
+}
+
+gui() {
+ pkgdesc="$pkgdesc (GUI)"
+
+ amove usr/bin/droidcam
+ amove usr/share
+}
+
+sha512sums="
+74f6973179b383bb12b4b063b2c524c0be99ea9465c0f1423d11ece5aa90ab5d93929f029c1716513ab63a6e8707699e78f64e747a3583b5afaf5205a96e18bc droidcam-2.1.3.tar.gz
+cb43712132eae371d2ed06462ba2e5ab69b50d1494ef1bf942d867302aaa4f169bfa0b02c930076c17bca44d7dfdb754aa38413a67b75fda10ff01ede8748e80 makefile.patch
+33da7e155447a75cc0d88274c4b053c3cb6867aba411176b82b968bb690d60d429d3a39b1caf3bafe79c0958b24f7f6777e42e88de7c71b7eb271d196b7d50b9 release-paths.patch
+"
diff --git a/testing/droidcam/droidcam.post-install b/testing/droidcam/droidcam.post-install
new file mode 100644
index 00000000000..4a15d448e02
--- /dev/null
+++ b/testing/droidcam/droidcam.post-install
@@ -0,0 +1,8 @@
+#!/bin/sh
+
+cat << EOF
+ To use DroidCam, you need to have the v4l2loopback kernel module;
+ you can install it from package v4l2loopback-src.
+
+ Enable with: `modprobe v4l2loopback exclusive_caps=1 max_buffers=16 max_openers=8`
+EOF
diff --git a/testing/droidcam/makefile.patch b/testing/droidcam/makefile.patch
new file mode 100644
index 00000000000..71625224aab
--- /dev/null
+++ b/testing/droidcam/makefile.patch
@@ -0,0 +1,13 @@
+diff --git a/Makefile b/Makefile
+index f45cd20..0cf696b 100644
+--- a/Makefile
++++ b/Makefile
+@@ -20,7 +20,7 @@ GTK = `pkg-config --libs --cflags gtk+-3.0` `pkg-config --libs x11`
+ GTK += `pkg-config --libs --cflags $(APPINDICATOR)`
+ LIBAV = `pkg-config --libs --cflags libswscale libavutil`
+ JPEG = `pkg-config --libs --cflags libturbojpeg`
+-USBMUXD = `pkg-config --libs --cflags libusbmuxd`
++USBMUXD = `pkg-config --libs --cflags libusbmuxd-2.0`
+ LIBS = -lspeex -lasound -lpthread -lm
+ SRC = src/connection.c src/settings.c src/decoder*.c src/av.c src/usb.c src/queue.c
+
diff --git a/testing/droidcam/release-paths.patch b/testing/droidcam/release-paths.patch
new file mode 100644
index 00000000000..b40da902cca
--- /dev/null
+++ b/testing/droidcam/release-paths.patch
@@ -0,0 +1,29 @@
+Change the paths to be /usr/bin and /usr/share instead of
+/usr/local/bin and /opt
+
+--- a/droidcam.desktop
++++ b/droidcam.desktop
+@@ -2,9 +2,9 @@
+ Encoding=UTF-8
+ Name=DroidCam
+ Comment=Use your phone as a webcam
+-TryExec=/usr/local/bin/droidcam
+-Exec=/usr/local/bin/droidcam
+-Icon=/opt/droidcam-icon.png
++TryExec=/usr/bin/droidcam
++Exec=/usr/bin/droidcam
++Icon=/usr/share/droidcam/icon.png
+ Terminal=false
+ Type=Application
+ Categories=Video;AudioVideo;
+--- a/src/droidcam.c
++++ b/src/droidcam.c
+@@ -43,7 +43,7 @@
+ extern const char *thread_cmd_val_str;
+ extern char snd_device[32];
+ extern char v4l2_device[32];
+-const char *APP_ICON_FILE = "/opt/droidcam-icon.png";
++const char *APP_ICON_FILE = "/usr/share/droidcam/icon.png";
+
+ void * AudioThreadProc(void * args);
+ void * VideoThreadProc(void * args);
diff --git a/testing/drone-cli/APKBUILD b/testing/drone-cli/APKBUILD
index 5ab7edafc1f..f2a7eb065c3 100644
--- a/testing/drone-cli/APKBUILD
+++ b/testing/drone-cli/APKBUILD
@@ -1,17 +1,20 @@
# Contributor: Carlo Landmeter <clandmeter@alpinelinux.org>
-# Maintainer: Rasmus Thomsen <oss@cogitri.dev>
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=drone-cli
-pkgver=1.5.0
-pkgrel=3
+pkgver=1.8.0
+pkgrel=2
pkgdesc="Drone CLI"
-url="https://github.com/drone/drone-cli"
+url="https://github.com/harness/drone-cli"
license="Apache-2.0"
arch="all"
makedepends="go"
-source="drone-cli-$pkgver.tar.gz::https://github.com/drone/drone-cli/archive/v$pkgver.tar.gz"
+source="drone-cli-$pkgver.tar.gz::https://github.com/harness/drone-cli/archive/v$pkgver.tar.gz"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
build() {
- export GOPATH="$srcdir"
go build -ldflags "-X main.version=$pkgver" -o bin/drone ./drone
}
@@ -23,11 +26,6 @@ package() {
install -Dm755 "$builddir"/bin/drone "$pkgdir"/usr/bin/drone
}
-cleanup_srcdir() {
- go clean -modcache
- default_cleanup_srcdir
-}
-
sha512sums="
-7406a4a97249b84dec6b0aaac2124cb3b907b7f5c08a80084f254614a9c7ee16d5a5541cb43b30e78bb6661906e9f170919ff0d8daf934642e54749d1990222d drone-cli-1.5.0.tar.gz
+d9b87df975f7f3c4b6ba3cc427e66e5c19c9f5de51aed521b1b34db3d12f03ac88324dae1ae3acdc24d5fa6251ca57e332f101a73cb0a53c7d01194cf1892d2c drone-cli-1.8.0.tar.gz
"
diff --git a/testing/dropwatch/APKBUILD b/testing/dropwatch/APKBUILD
index c56ff220e0a..18f45bd199f 100644
--- a/testing/dropwatch/APKBUILD
+++ b/testing/dropwatch/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=dropwatch
pkgver=1.5.4
-pkgrel=0
+pkgrel=4
pkgdesc="Project to detect packet drops in the Linux kernel"
url="https://github.com/nhorman/dropwatch"
arch="all"
diff --git a/testing/drumgizmo/APKBUILD b/testing/drumgizmo/APKBUILD
new file mode 100644
index 00000000000..e150dbc23f9
--- /dev/null
+++ b/testing/drumgizmo/APKBUILD
@@ -0,0 +1,45 @@
+# Contributor: Veikka Valtteri Kallinen <valtteri@kallinen.xyz>
+# Maintainer: Veikka Valtteri Kallinen <valtteri@kallinen.xyz>
+pkgname=drumgizmo
+pkgver=0.9.20
+pkgrel=1
+pkgdesc="Multichannel, multilayered, cross-platform drum plugin"
+url="https://www.drumgizmo.org"
+arch="all"
+license="GPL-3.0-only"
+makedepends="libx11-dev libxext-dev libsndfile-dev lv2-dev"
+source="http://www.drumgizmo.org/releases/drumgizmo-$pkgver/drumgizmo-$pkgver.tar.gz
+ gcc13.patch
+ "
+
+build() {
+ CFLAGS="$CFLAGS -flto=auto" \
+ CXXFLAGS="$CXXFLAGS -flto=auto" \
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var \
+ --enable-lv2 \
+ --disable-cli \
+ --disable-sse \
+ --without-nls
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+ # manpages are for the disabled cli tool
+ rm -r "$pkgdir"/usr/share/man
+}
+
+sha512sums="
+3444201961d74e7787bebe4006df6c257f6c1a57dd81d272b203a4a56ad609d3fa4e88224dfe4ea6a67f4db94b340666d018cb79fc376dd264398f98d66433e8 drumgizmo-0.9.20.tar.gz
+ed13d9cce9c12cd2b8df3661442481660a66b5ccfc3129920811a79fdd3150bdff627cb96c7bb17c21a5dd3b94b34268328fb8e557d2611b2fa80284e02b6605 gcc13.patch
+"
diff --git a/testing/drumgizmo/gcc13.patch b/testing/drumgizmo/gcc13.patch
new file mode 100644
index 00000000000..76512ef1962
--- /dev/null
+++ b/testing/drumgizmo/gcc13.patch
@@ -0,0 +1,10 @@
+--- a/plugin/plugingizmo/plugin.h
++++ b/plugin/plugingizmo/plugin.h
+@@ -29,6 +29,7 @@
+ #include <vector>
+ #include <string>
+
++#include <cstdint>
+ #include <cstdlib>
+
+
diff --git a/testing/dsnet/APKBUILD b/testing/dsnet/APKBUILD
index e0bee2d0301..ea822ecccb0 100644
--- a/testing/dsnet/APKBUILD
+++ b/testing/dsnet/APKBUILD
@@ -1,19 +1,22 @@
# Contributor: Marvin Preuss <marvin@xsteadfastx.org>
# Maintainer: Marvin Preuss <marvin@xsteadfastx.org>
pkgname=dsnet
-pkgver=0.6
-_rev=0098a226d8e5087f0ea328225bf96a3036422b90 # used for version command
-pkgrel=3
+pkgver=0.7.3
+_rev=c7096d13183159647b92aaed522a406c29b91798 # used for version command
+pkgrel=2
pkgdesc="fast command to manage a centralised wireguard VPN"
url="https://github.com/naggie/dsnet"
arch="all"
license="MIT"
makedepends="go"
options="!check chmod-clean" # no tests available
+subpackages="$pkgname-doc"
source="$pkgname-$pkgver.tar.gz::https://github.com/naggie/dsnet/archive/refs/tags/v$pkgver.tar.gz"
-export GOPATH="$srcdir"
export GOFLAGS="$GOFLAGS -modcacherw"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
build() {
go build \
@@ -22,12 +25,20 @@ build() {
-X \"github.com/naggie/dsnet.VERSION=$pkgver\" \
-X \"github.com/naggie/dsnet.BUILD_DATE=$(date)\" \
" \
- cmd/dsnet.go
+ -o dsnet \
+ ./cmd/root.go
}
package() {
- install -Dm755 $pkgname "$pkgdir"/usr/bin/"$pkgname"
+ install -Dm755 dsnet -t "$pkgdir"/usr/bin/
+
+ install -Dm644 CONFIG.md README.md \
+ -t "$pkgdir"/usr/share/doc/$pkgname/
+
+ install -Dm644 LICENSE.md \
+ -t "$pkgdir"/usr/share/licenses/$pkgname/
}
+
sha512sums="
-87ba54dbc30e5ba28a980e7c18f6f25ee460177dff596854bb84176e97a91e4a2bac74bb48c309ed0a0c1cac67ae7d86786b95d556fe12294c50ab5b19c1fc14 dsnet-0.6.tar.gz
+052967576f2ac8ee9c937a6fb13f796e6ae24f46c1d4e94ffa6212cb7e4ec2de60717dcff0224698d7250dbdb585512620a856f97785fb8795a13b3066295076 dsnet-0.7.3.tar.gz
"
diff --git a/testing/dsp/APKBUILD b/testing/dsp/APKBUILD
index 2c3f5856c8c..93fea6034a9 100644
--- a/testing/dsp/APKBUILD
+++ b/testing/dsp/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Maxim Karasev <begs@disroot.org>
# Maintainer: Maxim Karasev <begs@disroot.org>
pkgname=dsp
-pkgver=1.8
+pkgver=1.9
pkgrel=1
pkgdesc="audio processing program with an interactive mode"
url="https://github.com/bmc0/dsp"
@@ -10,9 +10,7 @@ license="ISC"
makedepends="ladspa-dev libsndfile-dev ffmpeg-dev fftw-dev libmad-dev libtool
libao-dev zita-convolver-dev alsa-lib-dev pulseaudio-dev"
subpackages="$pkgname-doc"
-source="https://github.com/bmc0/dsp/archive/v$pkgver/dsp-$pkgver.tar.gz
- ffmpeg5.patch
- "
+source="https://github.com/bmc0/dsp/archive/v$pkgver/dsp-$pkgver.tar.gz"
options="!check" # no test suite
build() {
@@ -26,6 +24,5 @@ package() {
}
sha512sums="
-365b0f31e444f1218970e77b620588b5f0dbec7830dbe532479682e23c405d4588e6f4571e4b5390aeb78c0621bb85ace8d90c4cd6487bf9e46fe3b066004916 dsp-1.8.tar.gz
-a967fbc387a11567159a888c5cec9e1196de4fc4f8dacac36c74d3bca70467c79c4d13abba686bae49774d3236b138475aa3cd443db347f85ebcaebc9a3e5926 ffmpeg5.patch
+a923cf6931842f297c4b0c09c498fe96bad1e1b2564494861ca4fb9cf44f646d06ea6114ee802f15b52a6fe7dbcf1141ca616da57aa5853ee4bcb97a920daacd dsp-1.9.tar.gz
"
diff --git a/testing/dsp/ffmpeg5.patch b/testing/dsp/ffmpeg5.patch
deleted file mode 100644
index 3d4498770e2..00000000000
--- a/testing/dsp/ffmpeg5.patch
+++ /dev/null
@@ -1,177 +0,0 @@
-Patch-Source: https://github.com/bmc0/dsp/commit/f3ac94b546361260349edeea5f1ee0ce7fac322a
-From f3ac94b546361260349edeea5f1ee0ce7fac322a Mon Sep 17 00:00:00 2001
-From: Michael Barbour <barbour.michael.0@gmail.com>
-Date: Thu, 17 Feb 2022 21:50:55 -0500
-Subject: [PATCH] ffmpeg.c: FFmpeg 5.0 fixes.
-
-Turns out that I didn't read the documentation very carefully when writing
-the ffmpeg_seek() code. AVStream->cur_dts was never part of the public API.
-
-av_register_all() has been deprecated since FFmpeg 4.0 and was removed in
-FFmpeg 5.0.
----
- ffmpeg.c | 97 +++++++++++++++++++++++++++++++-------------------------
- 1 file changed, 53 insertions(+), 44 deletions(-)
-
-diff --git a/ffmpeg.c b/ffmpeg.c
-index 9ac5bef..42c5a66 100644
---- a/ffmpeg.c
-+++ b/ffmpeg.c
-@@ -1,5 +1,6 @@
- #include <stdlib.h>
- #include <stdio.h>
-+#include <stdint.h>
- #include <libavcodec/avcodec.h>
- #include <libavformat/avformat.h>
- #include <libavutil/mathematics.h>
-@@ -14,10 +15,11 @@ struct ffmpeg_state {
- void (*readp_func)(char **, sample_t *, int, ssize_t, ssize_t);
- int planar, bytes, stream_index, got_frame;
- ssize_t frame_pos;
-+ int64_t last_ts;
- };
-
- static const char codec_name[] = "ffmpeg";
--static int av_registered = 0;
-+static int av_initialized = 0;
-
- /* Planar sample conversion functions */
-
-@@ -81,45 +83,58 @@ static void read_buf_doublep(char **in, sample_t *out, int channels, ssize_t sta
- }
- }
-
-+static int get_new_frame(struct ffmpeg_state *state)
-+{
-+ AVPacket packet;
-+ int r;
-+ if (state->got_frame)
-+ av_frame_unref(state->frame);
-+ state->got_frame = 0;
-+ state->frame_pos = 0;
-+ retry:
-+ if ((r = avcodec_receive_frame(state->cc, state->frame)) < 0) {
-+ switch (r) {
-+ case AVERROR_EOF:
-+ return -1;
-+ case AVERROR(EAGAIN):
-+ skip_packet:
-+ if (av_read_frame(state->container, &packet) < 0) {
-+ avcodec_send_packet(state->cc, NULL); /* send flush packet */
-+ goto retry;
-+ }
-+ if (packet.stream_index != state->stream_index) {
-+ av_packet_unref(&packet);
-+ goto skip_packet;
-+ }
-+ state->last_ts = (packet.pts == AV_NOPTS_VALUE) ? packet.dts : packet.pts;
-+ if (avcodec_send_packet(state->cc, &packet) < 0)
-+ return 1; /* FIXME: handle decoding errors more intelligently */
-+ av_packet_unref(&packet);
-+ break;
-+ default:
-+ return 1; /* FIXME: handle decoding errors more intelligently */
-+ }
-+ }
-+ state->got_frame = 1;
-+ return 0;
-+}
-+
- ssize_t ffmpeg_read(struct codec *c, sample_t *buf, ssize_t frames)
- {
- struct ffmpeg_state *state = (struct ffmpeg_state *) c->data;
-- AVPacket packet;
- int r, done = 0; /* set to 1 at EOF */
- ssize_t buf_pos = 0, avail = 0;
- if (state->got_frame)
- avail = state->frame->nb_samples - state->frame_pos;
- while (buf_pos < frames && !(done && avail == 0)) {
- if (avail == 0) {
-- if (state->got_frame)
-- av_frame_unref(state->frame);
-- state->got_frame = 0;
-- state->frame_pos = 0;
-- retry:
-- if ((r = avcodec_receive_frame(state->cc, state->frame)) < 0) {
-- switch (r) {
-- case AVERROR_EOF:
-- done = 1;
-- continue;
-- case AVERROR(EAGAIN):
-- skip_packet:
-- if (av_read_frame(state->container, &packet) < 0) {
-- avcodec_send_packet(state->cc, NULL); /* send flush packet */
-- goto retry;
-- }
-- if (packet.stream_index != state->stream_index) {
-- av_packet_unref(&packet);
-- goto skip_packet;
-- }
-- if (avcodec_send_packet(state->cc, &packet) < 0)
-- return 0; /* FIXME: handle decoding errors more intelligently */
-- av_packet_unref(&packet);
-- break;
-- default:
-- return 0; /* FIXME: handle decoding errors more intelligently */
-- }
-+ r = get_new_frame(state);
-+ if (r < 0) {
-+ done = 1;
-+ continue;
- }
-- state->got_frame = 1;
-+ else if (r > 0)
-+ return 0;
- }
- if (state->got_frame) {
- avail = (avail > frames - buf_pos) ? frames - buf_pos : avail;
-@@ -145,8 +160,7 @@ ssize_t ffmpeg_write(struct codec *c, sample_t *buf, ssize_t frames)
- ssize_t ffmpeg_seek(struct codec *c, ssize_t pos)
- {
- AVStream *st;
-- int64_t timestamp;
-- int seek_flags = 0;
-+ int64_t seek_ts;
- struct ffmpeg_state *state = (struct ffmpeg_state *) c->data;
- if (c->frames == -1)
- return -1;
-@@ -155,16 +169,12 @@ ssize_t ffmpeg_seek(struct codec *c, ssize_t pos)
- else if (pos >= c->frames)
- pos = c->frames - 1;
- st = state->container->streams[state->stream_index];
-- timestamp = av_rescale(pos, st->time_base.den, st->time_base.num) / c->fs;
-- if (timestamp < st->cur_dts)
-- seek_flags |= AVSEEK_FLAG_BACKWARD;
-- if (av_seek_frame(state->container, state->stream_index, timestamp, seek_flags) < 0)
-+ seek_ts = av_rescale(pos, st->time_base.den, st->time_base.num) / c->fs;
-+ if (avformat_seek_file(state->container, state->stream_index, INT64_MIN, seek_ts, INT64_MAX, 0) < 0)
- return -1;
- avcodec_flush_buffers(state->cc);
-- if (state->got_frame)
-- av_frame_unref(state->frame);
-- state->got_frame = 0;
-- pos = av_rescale(st->cur_dts, st->time_base.num * c->fs, st->time_base.den);
-+ get_new_frame(state);
-+ pos = av_rescale(state->last_ts, st->time_base.num * c->fs, st->time_base.den);
- return pos;
- }
-
-@@ -199,15 +209,14 @@ struct codec * ffmpeg_codec_init(const char *path, const char *type, const char
- struct ffmpeg_state *state = NULL;
- struct codec *c = NULL;
- AVStream *st;
-- AVCodec *codec = NULL;
-+ const AVCodec *codec = NULL;
-
-- if (!av_registered) {
-+ if (!av_initialized) {
- if (LOGLEVEL(LL_VERBOSE))
- av_log_set_level(AV_LOG_VERBOSE);
- else if (LOGLEVEL(LL_SILENT))
- av_log_set_level(AV_LOG_QUIET);
-- av_register_all();
-- av_registered = 1;
-+ av_initialized = 1;
- }
-
- /* open input and find stream info */
diff --git a/testing/dstask/APKBUILD b/testing/dstask/APKBUILD
index aefde9bb3a7..dbd57cc444c 100644
--- a/testing/dstask/APKBUILD
+++ b/testing/dstask/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Michał Polański <michal@polanski.me>
# Maintainer: Michał Polański <michal@polanski.me>
pkgname=dstask
-pkgver=0.25
-pkgrel=4
+pkgver=0.26
+pkgrel=6
pkgdesc="Personal task tracker designed to help you focus"
url="https://dstask.org/"
license="MIT"
@@ -17,13 +17,15 @@ source="https://github.com/naggie/dstask/archive/v$pkgver/dstask-$pkgver.tar.gz
integration-tests.patch
"
-export GOPATH="$srcdir"
export GOFLAGS="$GOFLAGS -trimpath -modcacherw"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
build() {
_git_commit=$(zcat "$srcdir"/dstask-$pkgver.tar.gz | git get-tar-commit-id)
_build_date=$(date -u "+%Y-%m-%dT%TZ" ${SOURCE_DATE_EPOCH:+-d @$SOURCE_DATE_EPOCH})
- _ldflags="-s -w
+ _ldflags="
-X github.com/naggie/dstask.GIT_COMMIT=$_git_commit
-X github.com/naggie/dstask.VERSION=$pkgver-r$pkgrel
-X github.com/naggie/dstask.BUILD_DATE=$_build_date
@@ -34,7 +36,8 @@ build() {
}
check() {
- go test ./...
+ # tests try to make git commits and fail when hostname is not an FQDN
+ EMAIL="buildozer@alpinelinux.org" go test ./...
}
_import() {
@@ -53,6 +56,6 @@ package() {
}
sha512sums="
-acb44e6bbcdceedb3c8b75dcaac94aa74f3e87432d1ea0bc3c77ec12d5c962abb3a04b4040d2b7d2b07defab88965621104598cb30b3879145f1659f9a334c80 dstask-0.25.tar.gz
+a1c493b9e66ef0a11f6c525aa190eb6f5be91b19d63c6d491b2c972d43e5a82f157f6030cbf8debab92118e574ebc464bc14b7ae40f0381789cfa81fe17f86d6 dstask-0.26.tar.gz
fefaca68b53248f77c09584393bb251af318704f0cf2cc79b927558a587aaaabda4d79c0d88836e1913d2697d2a3744f3fc760ab8ec4d36cb3957b61d9f68b40 integration-tests.patch
"
diff --git a/testing/dtrx/APKBUILD b/testing/dtrx/APKBUILD
new file mode 100644
index 00000000000..243147f9f79
--- /dev/null
+++ b/testing/dtrx/APKBUILD
@@ -0,0 +1,40 @@
+# Contributor: Rob Blanckaert <basicer@gmail.com>
+# Maintainer: Rob Blanckaert <basicer@gmail.com>
+pkgname=dtrx
+pkgver=8.5.3
+pkgrel=1
+pkgdesc="Do The Right eXtraction"
+url="http://www.brettcsmith.org/2007/dtrx/"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="python3"
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="py3-invoke"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/dtrx-py/dtrx/archive/refs/tags/$pkgver.tar.gz"
+options="!check" # requires all decompression programs and makes network requests
+
+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 tests/compare.py
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+11809e4961c149091eece5ee815cc5d85f7d746bfc632a63210d3d0b18975732b92c43d414aa5fcf37793ebc34a2b8a6c72bb243d8ab2813d470bad390ceedf4 dtrx-8.5.3.tar.gz
+"
diff --git a/testing/dublin-traceroute/APKBUILD b/testing/dublin-traceroute/APKBUILD
index 28d3a0fa7c1..6a7c6e096ea 100644
--- a/testing/dublin-traceroute/APKBUILD
+++ b/testing/dublin-traceroute/APKBUILD
@@ -2,39 +2,37 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=dublin-traceroute
pkgver=0.4.2
-pkgrel=1
+pkgrel=3
pkgdesc="A NAT-aware multipath traceroute tool"
url="https://dublin-traceroute.net/"
arch="all"
license="BSD-2-Clause"
options="!check" # no googletest avail
-makedepends="python3-dev cmake jsoncpp-dev \
- libtins-dev libpcap-dev openssl-dev"
+makedepends="python3-dev cmake jsoncpp-dev
+ libtins-dev libpcap-dev openssl-dev
+ samurai"
subpackages="$pkgname-dev $pkgname-doc $pkgname-contrib::noarch"
source="$pkgname-$pkgver.tar.gz::https://github.com/insomniacslk/dublin-traceroute/archive/v$pkgver.tar.gz"
-prepare() {
- default_prepare
- mkdir -p build
-}
-
build() {
- cd build
- cmake .. -DCMAKE_INSTALL_PREFIX=/usr
- make
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=MinSizeRel
+ cmake --build build
}
package() {
- cd build
- make DESTDIR="$pkgdir" install
- install -D -m 644 ../COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING
+ DESTDIR="$pkgdir" cmake --install build
+ install -D -m 644 ./COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING
}
contrib() {
pkgdesc="Contrib scripts for $pkgname"
- depends="py3-pygraphviz"
+ depends="py3-pygraphviz python3"
cd "$builddir"
install -D -m 755 scripts/to_graphviz.py "$subpkgdir"/usr/bin/dublin-to-graphviz
}
-sha512sums="4711dbf1fd6190e0260e5dd0f5e2f296ccb88cc1fc301260f01fb357f44cc42f11a82d4ab09f9f571fabee4516374e87fb1bea8971432a6f145116cef57f553a dublin-traceroute-0.4.2.tar.gz"
+sha512sums="
+4711dbf1fd6190e0260e5dd0f5e2f296ccb88cc1fc301260f01fb357f44cc42f11a82d4ab09f9f571fabee4516374e87fb1bea8971432a6f145116cef57f553a dublin-traceroute-0.4.2.tar.gz
+"
diff --git a/testing/duc/APKBUILD b/testing/duc/APKBUILD
new file mode 100644
index 00000000000..eb5c5bcc7e9
--- /dev/null
+++ b/testing/duc/APKBUILD
@@ -0,0 +1,35 @@
+# Contributor: Prokop RandáÄek <prokop@rdck.dev>
+# Maintainer: Prokop RandáÄek <prokop@rdck.dev>
+pkgname=duc
+pkgver=1.4.5
+pkgrel=0
+pkgdesc="Tool for inspecting disk usage"
+url="http://duc.zevv.nl/"
+arch="all"
+license="LGPL-3.0-or-later"
+makedepends="pango-dev glfw-dev kyotocabinet-dev ncurses-dev"
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/zevv/duc/releases/download/$pkgver/duc-$pkgver.tar.gz"
+options="!check" # tests are not included in the distributed tar
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var \
+ --with-db-backend=kyotocabinet \
+ --enable-opengl \
+ --disable-x11
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+b6d48222ed2821d3d1317102f867f71f9060a093ba11ba48d9f0d9dc743c5b361442cb605aec6e91dd6588ae4b51897b4ed5da96ba33019e8a501a262af12371 duc-1.4.5.tar.gz
+"
diff --git a/testing/duf/APKBUILD b/testing/duf/APKBUILD
index c9d296a6690..fd454cb1085 100644
--- a/testing/duf/APKBUILD
+++ b/testing/duf/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer:
pkgname=duf
pkgver=0.8.1
-pkgrel=3
+pkgrel=18
pkgdesc="Disk Usage/Free Utility"
options="net !check" # No testsuite
url="https://github.com/muesli/duf"
@@ -11,6 +11,10 @@ arch="all"
makedepends="go"
source="https://github.com/muesli/duf/archive/v$pkgver/duf-$pkgver.tar.gz"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
build() {
go build \
-trimpath \
diff --git a/testing/dum/APKBUILD b/testing/dum/APKBUILD
index d658578bab3..c87c6476d60 100644
--- a/testing/dum/APKBUILD
+++ b/testing/dum/APKBUILD
@@ -2,16 +2,17 @@
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=dum
pkgver=0.1.19
-pkgrel=0
+pkgrel=1
pkgdesc="An npm scripts runner written in Rust"
url="https://github.com/egoist/dum"
arch="aarch64 armhf armv7 ppc64le x86 x86_64" # blocked by rust/cargo
license="MIT"
-makedepends="cargo"
+makedepends="cargo cargo-auditable"
source="https://github.com/egoist/dum/archive/v$pkgver/dum-$pkgver.tar.gz
strip-env_logger-features.patch
"
+
prepare() {
default_prepare
@@ -26,11 +27,11 @@ prepare() {
EOF
# No --locked, we have to update lockfile after patching Cargo.toml.
- cargo fetch
+ cargo fetch --target="$CTARGET"
}
build() {
- cargo build --frozen --release
+ cargo auditable build --frozen --release
}
check() {
diff --git a/testing/dumb_runtime_dir/APKBUILD b/testing/dumb_runtime_dir/APKBUILD
new file mode 100644
index 00000000000..cfc4c0018d4
--- /dev/null
+++ b/testing/dumb_runtime_dir/APKBUILD
@@ -0,0 +1,24 @@
+# Contributor: Marten Ringwelski <git+alpine@maringuu.de>
+# Maintainer: Marten Ringwelski <git+alpine@maringuu.de>
+pkgname=dumb_runtime_dir
+pkgver=1.0.4
+pkgrel=2
+pkgdesc="Creates an XDG_RUNTIME_DIR on login and never removes it"
+url="https://github.com/ifreund/dumb_runtime_dir"
+arch="all"
+license="0BSD"
+makedepends="linux-pam-dev"
+source="https://github.com/ifreund/dumb_runtime_dir/archive/v$pkgver/dumb_runtime_dir-v$pkgver.tar.gz"
+options="!check" # no test suite
+
+build() {
+ make
+}
+
+package() {
+ make PREFIX="/" DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+f7607a1e048efa686e8f266efc9b798c905840fe660a8d3d4ead538b258971a1787406e94c792883e886360672ebc1d9fb812b2bf54755f1135a15479514d962 dumb_runtime_dir-v1.0.4.tar.gz
+"
diff --git a/testing/dune-deps/APKBUILD b/testing/dune-deps/APKBUILD
index b4f9f059ff5..55c022a6ca2 100644
--- a/testing/dune-deps/APKBUILD
+++ b/testing/dune-deps/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=dune-deps
pkgver=1.3.0
-pkgrel=0
+pkgrel=2
pkgdesc="Show dependency graph of a multi-component dune project"
url="https://github.com/mjambon/dune-deps"
-arch="all !riscv64" # restricted by ocaml
+arch="all !riscv64 !loongarch64" # ocaml
license="BSD-3-Clause"
depends="graphviz"
-depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="
dune
ocaml
@@ -46,6 +45,27 @@ package() {
rm -Rf "$pkgdir"/usr/doc
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
f58e9f312667ff79d019e54abc2623ac974ede330a20e71ea56121e34cf0382ed0dc0a3921449b6e969f3eaee2631b14e4ba5e3ba0f13237690c4b9313b92df7 dune-deps-1.3.0.tar.gz
"
diff --git a/testing/dustracing2d/APKBUILD b/testing/dustracing2d/APKBUILD
index a6c6207dc4b..5f2a2e9dc89 100644
--- a/testing/dustracing2d/APKBUILD
+++ b/testing/dustracing2d/APKBUILD
@@ -3,7 +3,7 @@
pkgname=dustracing2d
_pkgname=DustRacing2D
pkgver=2.1.1
-pkgrel=0
+pkgrel=1
pkgdesc="Traditional top-down car racing game including a level editor"
url="http://juzzlin.github.io/DustRacing2D/"
arch="all"
diff --git a/testing/dvdbackup/APKBUILD b/testing/dvdbackup/APKBUILD
index a1f6b3479d8..49747da40b0 100644
--- a/testing/dvdbackup/APKBUILD
+++ b/testing/dvdbackup/APKBUILD
@@ -2,9 +2,9 @@
# Maintainer: Sean McAvoy <seanmcavoy@gmail.com>
pkgname=dvdbackup
pkgver=0.4.2
-pkgrel=0
+pkgrel=1
pkgdesc="Tool to rip video DVDs from the command line"
-url="http://dvdbackup.sourceforge.net/"
+url="https://dvdbackup.sourceforge.net/"
arch="all"
license="GPL-3.0-or-later"
makedepends="libdvdread-dev"
diff --git a/testing/dwl/APKBUILD b/testing/dwl/APKBUILD
new file mode 100644
index 00000000000..745060123d6
--- /dev/null
+++ b/testing/dwl/APKBUILD
@@ -0,0 +1,28 @@
+# Maintainer: Dekedro <dekedro@protonmail.com>
+pkgname=dwl
+pkgver=0.5
+pkgrel=1
+pkgdesc="dwm for wayland"
+url="https://codeberg.org/dwl/dwl"
+arch="all"
+license="GPL-3.0-or-later"
+makedepends="wlroots-dev wayland-protocols"
+options="!check" # no tests
+subpackages="$pkgname-doc"
+source="https://codeberg.org/dwl/dwl/releases/download/v$pkgver/dwl-v$pkgver.tar.gz
+ xwayland.patch
+ "
+builddir="$srcdir/$pkgname-v$pkgver"
+
+build() {
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" PREFIX=/usr install
+}
+
+sha512sums="
+7bd292559b0ecafc54bf1c1ba0c3b6b0417e8bd03bb0058f492b87295c92b50932e25621cc5f804c38ad06ffadad7bb8017872fade4a04bf617b1d4f1993aae8 dwl-v0.5.tar.gz
+7c7952ede929faa137f690b3d1f44c1af4b40a3a6dac7bc3d5a377c8c454b35de1becdbbd1f3cbbde56c798f4f3bf78bc7eef4d7faa0e761d317179c072c629f xwayland.patch
+"
diff --git a/testing/dwl/xwayland.patch b/testing/dwl/xwayland.patch
new file mode 100644
index 00000000000..4bed22b3e17
--- /dev/null
+++ b/testing/dwl/xwayland.patch
@@ -0,0 +1,12 @@
+diff --git a/config.mk b/config.mk
+index f50156f..a20a8f0 100644
+--- a/config.mk
++++ b/config.mk
+@@ -10,5 +10,5 @@ MANDIR = $(PREFIX)/share/man
+ XWAYLAND =
+ XLIBS =
+ # Uncomment to build XWayland support
+-#XWAYLAND = -DXWAYLAND
+-#XLIBS = xcb xcb-icccm
++XWAYLAND = -DXWAYLAND
++XLIBS = xcb xcb-icccm
diff --git a/testing/dxvk/APKBUILD b/testing/dxvk/APKBUILD
deleted file mode 100644
index 187b8bb16ce..00000000000
--- a/testing/dxvk/APKBUILD
+++ /dev/null
@@ -1,62 +0,0 @@
-# Contributor: Leo <thinkabit.ukim@gmail.com>
-# Contributor: Nicolas Lorin <androw95220@gmail.com>
-# Maintainer:
-pkgname=dxvk
-pkgver=1.10.1
-pkgrel=0
-pkgdesc="Vulkan-based compatibility layer for Direct3D 10/11"
-options="!check"
-url="https://github.com/doitsujin/dxvk"
-arch="x86_64 x86"
-license="Zlib"
-depends="bash wine"
-makedepends="
- meson
- glslang-dev
- mingw-w64-gcc
- wine-dev
- vulkan-loader
- "
-source="$pkgname-$pkgver.tar.gz::https://github.com/doitsujin/dxvk/archive/v$pkgver.tar.gz"
-
-case "$CARCH" in
- x86_64)
- _outdir=build/x64
- _crossfile=build-win64.txt
- _prefix=/usr/share/dxvk/x64
- ;;
- x86)
- _outdir=build/x32
- _crossfile=build-win32.txt
- _prefix=/usr/share/dxvk/x32
- ;;
-esac
-
-build() {
- abuild-meson \
- --cross-file=$_crossfile \
- --prefix=$_prefix \
- --bindir="" \
- --libdir="" \
- --datadir="" \
- --includedir="" \
- --infodir="" \
- --libexecdir="" \
- --localedir="" \
- --mandir="" \
- --sbindir="" \
- -Denable_tests=false \
- $_outdir
- meson compile ${JOBS:+-j ${JOBS}} -C $_outdir
-}
-
-package() {
- DESTDIR="$pkgdir" meson install --no-rebuild -C $_outdir
- install -Dm644 setup_dxvk.sh "$pkgdir"/usr/share/dxvk/setup_dxvk.sh
- mkdir -p "$pkgdir"/usr/bin
- ln -s /usr/share/dxvk/setup_dxvk.sh "$pkgdir"/usr/bin/setup_dxvk
- chmod +x "$pkgdir"/usr/share/dxvk/setup_dxvk.sh
-}
-sha512sums="
-8fd34d9f14a7013cdc1957f63bf60feb19748fddc1cd6ec40cf271005f636de62965efb42ddf2598dad3e37a4f59a870bf769387b2534db93451d1ea6aa65410 dxvk-1.10.1.tar.gz
-"
diff --git a/testing/e2fsimage/APKBUILD b/testing/e2fsimage/APKBUILD
deleted file mode 100644
index e6d7d43ee02..00000000000
--- a/testing/e2fsimage/APKBUILD
+++ /dev/null
@@ -1,27 +0,0 @@
-# Contributor: Natanael Copa <ncopa@alpinelinux.org>
-# Maintainer:
-pkgname=e2fsimage
-pkgver=0.2.3
-pkgrel=1
-pkgdesc="create and populate an ext2/3/4 filesystem image as non-root user"
-url="https://github.com/Ledest/e2fsimage"
-arch="all"
-license="BSD-3-Clause"
-makedepends="e2fsprogs-dev e2fsprogs-extra"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/Ledest/e2fsimage/archive/$pkgver.tar.gz"
-
-build() {
- prefix=/usr mandir=/usr/share/man ./configure
- make
-}
-
-check() {
- ./src/e2fsimage -f test.img -d ./src
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="b6bf97ae35af7c48063f7a6dc19af80fec4bdfcd4d9b6064168b5e5a37ead57b3a01772f659f5004d6d5f1217cccba6a019e1974f87503fcaf526a15d6187ed7 e2fsimage-0.2.3.tar.gz"
diff --git a/testing/easyeffects/APKBUILD b/testing/easyeffects/APKBUILD
deleted file mode 100644
index b6b7e62baa9..00000000000
--- a/testing/easyeffects/APKBUILD
+++ /dev/null
@@ -1,55 +0,0 @@
-# Contributor: psykose <alice@ayaya.dev>
-# Maintainer: psykose <alice@ayaya.dev>
-pkgname=easyeffects
-pkgver=6.2.5
-pkgrel=1
-pkgdesc="audio plugins for PipeWire applications"
-url="https://github.com/wwmm/easyeffects"
-# s390x: blocked by pipewire
-# riscv64: blocked by gtk4.0
-# armv7: blocked by lsp-plugins
-arch="all !armv7 !s390x !riscv64"
-license="GPL-3.0-or-later"
-options="!check" # no testsuite
-depends="calf-lv2 lsp-plugins mda-lv2 zam-plugins"
-makedepends="
- appstream-glib-dev
- fftw-dev
- fmt-dev
- gtk4.0-dev
- itstool
- libadwaita-dev
- libbs2b-dev
- libebur128-dev
- libsamplerate-dev
- libsigc++3-dev
- libsndfile-dev
- libtbb-dev
- lilv-dev
- lv2-dev
- meson
- nlohmann-json
- pipewire-dev
- rnnoise-dev
- rubberband-dev
- speexdsp-dev
- zita-convolver-dev
- "
-subpackages="$pkgname-doc $pkgname-lang"
-source="$pkgname-$pkgver.tar.gz::https://github.com/wwmm/easyeffects/archive/refs/tags/v$pkgver.tar.gz
- setlocale.patch
- "
-
-build() {
- abuild-meson . build
- meson compile -C build
-}
-
-package() {
- DESTDIR="$pkgdir" meson install --no-rebuild -C build
-}
-
-sha512sums="
-260b864e5928191dd5574e23a5f51f4df0dcc552c44ecf2d0c1166d589fc1b4320b9da786de88c8837dcb28527163051dc80b5a5a33a9cdde2466405c73248f2 easyeffects-6.2.5.tar.gz
-7c29193270ab5318bf54a86eb1ffd7cd1e505cedd102eb3549800a699e6e0aa00a1b29889a2f514d5c3be97ea424c1e73815fe68f82437d65a2448f35395f076 setlocale.patch
-"
diff --git a/testing/easyeffects/setlocale.patch b/testing/easyeffects/setlocale.patch
deleted file mode 100644
index e7588a6a9ac..00000000000
--- a/testing/easyeffects/setlocale.patch
+++ /dev/null
@@ -1,102 +0,0 @@
-hotfix until fixed in libstdc++
---- a/include/ui_helpers.hpp
-+++ b/include/ui_helpers.hpp
-@@ -83,7 +83,7 @@
-
- using namespace std::string_literals;
-
-- auto text = fmt::format(std::locale(setlocale(LC_ALL, nullptr)), "{0:.{1}Lf}{2}", value, precision,
-+ auto text = fmt::format(std::locale(), "{0:.{1}Lf}{2}", value, precision,
- ((unit != nullptr) ? " "s + unit : ""));
-
- return g_strdup(text.c_str());
---- a/src/app_info.cpp
-+++ b/src/app_info.cpp
-@@ -37,7 +37,7 @@
-
- std::unordered_map<uint, bool>* enabled_app_list;
-
-- std::locale user_locale = std::locale(setlocale(LC_ALL, nullptr));
-+ std::locale user_locale = std::locale();
- };
-
- struct _AppInfo {
---- a/src/autogain_ui.cpp
-+++ b/src/autogain_ui.cpp
-@@ -35,7 +35,7 @@
-
- std::vector<gulong> gconnections;
-
-- std::locale user_locale = std::locale(setlocale(LC_ALL, nullptr));
-+ std::locale user_locale = std::locale();
- };
-
- struct _AutogainBox {
---- a/src/chart.cpp
-+++ b/src/chart.cpp
-@@ -49,7 +49,7 @@
-
- std::vector<float> y_axis, x_axis, x_axis_log, objects_x;
-
-- std::locale user_locale = std::locale(setlocale(LC_ALL, nullptr));
-+ std::locale user_locale = std::locale();
- };
-
- struct _Chart {
---- a/src/effects_box.cpp
-+++ b/src/effects_box.cpp
-@@ -49,7 +49,7 @@
-
- std::vector<gulong> gconnections_spectrum;
-
-- std::locale user_locale = std::locale(setlocale(LC_ALL, nullptr));
-+ std::locale user_locale = std::locale();
- };
-
- struct _EffectsBox {
---- a/src/equalizer_band_box.cpp
-+++ b/src/equalizer_band_box.cpp
-@@ -33,7 +33,7 @@
-
- std::vector<gulong> gconnections;
-
-- std::locale user_locale = std::locale(setlocale(LC_ALL, nullptr));
-+ std::locale user_locale = std::locale();
- };
-
- struct _EqualizerBandBox {
---- a/src/pipe_manager_box.cpp
-+++ b/src/pipe_manager_box.cpp
-@@ -18,7 +18,7 @@
-
- std::vector<gulong> gconnections_sie, gconnections_soe;
-
-- std::locale user_locale = std::locale(setlocale(LC_ALL, nullptr));
-+ std::locale user_locale = std::locale();
- };
-
- struct _PipeManagerBox {
---- a/src/ui_helpers.cpp
-+++ b/src/ui_helpers.cpp
-@@ -10,7 +10,7 @@
- auto precision = gtk_spin_button_get_digits(button);
-
- // format string: 0 = value, 1 = precision, 2 = unit
-- auto text = fmt::format(std::locale(setlocale(LC_ALL, nullptr)), "{0:.{1}Lf}{2}", value, precision,
-+ auto text = fmt::format(std::locale(), "{0:.{1}Lf}{2}", value, precision,
- ((unit != nullptr) ? " "s + unit : ""));
-
- gtk_editable_set_text(GTK_EDITABLE(button), text.c_str());
-@@ -21,11 +21,7 @@
- auto parse_spinbutton_input(GtkSpinButton* button, double* new_value) -> int {
- std::istringstream str(gtk_editable_get_text(GTK_EDITABLE(button)));
-
-- try {
-- str.imbue(std::locale("")); // User locale
-- } catch (...) {
-- str.imbue(std::locale()); // C locale if user locale not set
-- }
-+ str.imbue(std::locale());
-
- if (auto min = 0.0, max = 0.0; str >> *new_value) {
- gtk_spin_button_get_range(button, &min, &max);
diff --git a/testing/easyloggingpp-dev/APKBUILD b/testing/easyloggingpp-dev/APKBUILD
deleted file mode 100644
index 5fc446df5d4..00000000000
--- a/testing/easyloggingpp-dev/APKBUILD
+++ /dev/null
@@ -1,50 +0,0 @@
-# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer:
-pkgname=easyloggingpp-dev
-_pkgname=easyloggingpp
-pkgver=9.96.7
-pkgrel=1
-pkgdesc="Single header C++ logging library"
-url="https://github.com/zuhd-org/easyloggingpp"
-arch="all"
-license="MIT"
-depends="libexecinfo-dev"
-checkdepends="gtest"
-makedepends="$depends_dev cmake gtest-dev"
-source="https://github.com/zuhd-org/$_pkgname/archive/v$pkgver/$_pkgname-$pkgver.tar.gz
- musl-compat.patch
- "
-builddir="$srcdir/$_pkgname-$pkgver"
-
-prepare() {
- default_prepare
-
- # FIXME: These tests fail.
- sed -i \
- -e '/command-line-args-test\.h/d' \
- -e '/helpers-test\.h/d' \
- test/main.cc
-}
-
-build() {
- cmake \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_BUILD_TYPE=None \
- -DCMAKE_CXX_FLAGS="$CXXFLAGS" \
- -DCMAKE_VERBOSE_MAKEFILE=ON \
- -DELPP_PKGCONFIG_INSTALL_DIR=/usr/lib/pkgconfig \
- -Dbuild_static_lib=ON \
- -Dtest=ON
- make
-}
-
-check() {
- make test ARGS="-V"
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="53ee637cd7462fac542170a81a9a206f3418dd8bc9e1f25d1d13dadef630e0fdf2880d71079808ebc49d36a7dbca7b5cdb76ad37b722c66b4b3d3efc8b5d2f35 easyloggingpp-9.96.7.tar.gz
-ad0d3d8bfd8a00513168cd0a814c30219fe60139b17cf153b0b68332edf5a0ce52c6aecf620452a19f78de36b37af38f44a5169c48ff556c7b305ba01c206ecb musl-compat.patch"
diff --git a/testing/easyloggingpp-dev/musl-compat.patch b/testing/easyloggingpp-dev/musl-compat.patch
deleted file mode 100644
index ca5efebc872..00000000000
--- a/testing/easyloggingpp-dev/musl-compat.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From b691bec24cf7a3d35748e47da78e3f98d6b9817d Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Andr=C3=A9=20Klitzing?= <aklitzing@gmail.com>
-Date: Wed, 21 Jun 2017 20:21:01 +0200
-Subject: [PATCH] Add __has_include check for execinfo.h
-
-This header is necessary later for the stacktrace feature.
-This fixes musl based distributions.
-
---- a/src/easylogging++.h
-+++ b/src/easylogging++.h
-@@ -205,7 +205,7 @@
- # define ELPP_INTERNAL_INFO(lvl, msg)
- #endif // (defined(ELPP_DEBUG_INFO))
- #if (defined(ELPP_FEATURE_ALL)) || (defined(ELPP_FEATURE_CRASH_LOG))
--# if (ELPP_COMPILER_GCC && !ELPP_MINGW && !ELPP_OS_ANDROID && !ELPP_OS_EMSCRIPTEN)
-+# if (__has_include(<execinfo.h>) && ELPP_COMPILER_GCC && !ELPP_MINGW && !ELPP_OS_ANDROID && !ELPP_OS_EMSCRIPTEN)
- # define ELPP_STACKTRACE 1
- # else
- # if ELPP_COMPILER_MSVC
---- a/cmake/easyloggingpp.pc.cmakein.orig
-+++ b/cmake/easyloggingpp.pc.cmakein
-@@ -3,4 +3,6 @@
- Version: @ELPP_VERSION_STRING@
- prefix=@CMAKE_INSTALL_PREFIX@
- includedir=@ELPP_INCLUDE_INSTALL_DIR@
-+libdir=@CMAKE_INSTALL_PREFIX@/lib
-+Libs: -L${libdir} -lexecinfo
- Cflags: -I${includedir}
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -91,6 +92,7 @@
- ELPP_FRESH_LOG_FILE
- )
-
-+ target_link_libraries(easyloggingpp-unit-tests execinfo)
- # Standard linking to gtest stuff.
- target_link_libraries(easyloggingpp-unit-tests gtest gtest_main)
-
diff --git a/testing/eatmemory/APKBUILD b/testing/eatmemory/APKBUILD
index ca6316e9cc8..bdfac3f93a7 100644
--- a/testing/eatmemory/APKBUILD
+++ b/testing/eatmemory/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Leonardo Arena <rnalrd@alpinelinux.org>
pkgname=eatmemory
pkgver=0.1.6
-pkgrel=1
+pkgrel=2
pkgdesc="Simple C program to allocate memory from the command line"
url="https://github.com/julman99/eatmemory"
arch="all"
diff --git a/testing/eboard/APKBUILD b/testing/eboard/APKBUILD
new file mode 100644
index 00000000000..f949bb66486
--- /dev/null
+++ b/testing/eboard/APKBUILD
@@ -0,0 +1,34 @@
+# Maintainer:
+pkgname=eboard
+pkgver=1.1.3
+pkgrel=1
+pkgdesc="Chess board interface for Internet Chess Servers"
+url="https://github.com/fbergo/eboard"
+arch="all"
+license="GPL-2.0-or-later"
+makedepends="
+ gstreamer-dev
+ gtk+2.0-dev
+ "
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/fbergo/eboard/archive/refs/tags/v$pkgver.tar.gz
+ $pkgname-fix-linking.patch::https://github.com/fbergo/eboard/commit/e529c55af7463f9169d9f36f5fc5cdbafccd66b6.diff
+ "
+options="!check" # does not have tests
+
+build() {
+ # not autotools
+ ./configure \
+ --prefix=/usr
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+ mv "$pkgdir"/usr/man "$pkgdir"/usr/share/man
+}
+
+sha512sums="
+c89e234d35de9f52047dbdf370cd47d88f6135880985503c2a77602a67ced3a35f64e1803d36c337a505b5d7cc22a5c02c4ef776b187841c417511110e321fe3 eboard-1.1.3.tar.gz
+43e0194c237f9281ae814edd74da9e88fb0b16d74d66e490e61df4b3db82548cc667200255eb4440dbd74862a3f47f34c6e1ba3c4b695e2dc40b26f2f5e30d06 eboard-fix-linking.patch
+"
diff --git a/testing/ecasound/0001-ecasignalview.cpp-always-use-s-style-format-for-prin.patch b/testing/ecasound/0001-ecasignalview.cpp-always-use-s-style-format-for-prin.patch
new file mode 100644
index 00000000000..28afc90c517
--- /dev/null
+++ b/testing/ecasound/0001-ecasignalview.cpp-always-use-s-style-format-for-prin.patch
@@ -0,0 +1,45 @@
+Patch-Source: https://sourceforge.net/p/ecasound/bugs/54/attachment/0001-ecasignalview.cpp-always-use-s-style-format-for-prin.patch
+--
+From f2edef1f1e7b56f43ceea63f0d3024474f813b5d Mon Sep 17 00:00:00 2001
+From: Sergei Trofimovich <slyich@gmail.com>
+Date: Fri, 5 Nov 2021 23:26:19 +0000
+Subject: [PATCH] ecasignalview.cpp: always use "%s"-style format for
+ printf()-style functions
+
+`ncuses-6.3` added printf-style function attributes and now makes
+it easier to catch cases when user input is used in palce of format
+string when built with CFLAGS=-Werror=format-security:
+
+ ecasignalview.cpp:360:13:
+ error: format not a string literal and no format arguments [-Werror=format-security]
+ 360 | mvprintw(r++, 0, bar);
+ | ~~~~~~~~^~~~~~~~~~~~~
+
+Let's wrap all the missing places with "%s" format.
+---
+ ecatools/ecasignalview.cpp | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/ecatools/ecasignalview.cpp b/ecatools/ecasignalview.cpp
+index ea56a138..7f3b765b 100644
+--- a/ecatools/ecasignalview.cpp
++++ b/ecatools/ecasignalview.cpp
+@@ -351,13 +351,13 @@ void ecasv_output_init(void)
+ ecasv_rate_msec, ecasv_buffersize, avg_length); */
+ ++r;
+ const char* bar="------------------------------------------------------------------------------\n";
+- mvprintw(r++, 0, bar);
++ mvprintw(r++, 0, "%s", bar);
+ mvprintw(r, 0, "channel");
+ if (ecasv_log_display_mode)
+ mvprintw(r++,38, "%s avg-peak dB max-peak dB clipped\n", ecasv_bar_buffer);
+ else
+ mvprintw(r++,38, "%s avg-peak max-peak clipped\n", ecasv_bar_buffer);
+- mvprintw(r++, 0, bar);
++ mvprintw(r++, 0, "%s", bar);
+
+ memset(ecasv_bar_buffer, ' ', ecasv_bar_length_const - 4);
+ ecasv_bar_buffer[ecasv_bar_length_const - 4] = 0;
+--
+2.33.1
+
diff --git a/testing/ecasound/APKBUILD b/testing/ecasound/APKBUILD
index 20e4c62dc64..9ec8436f85d 100644
--- a/testing/ecasound/APKBUILD
+++ b/testing/ecasound/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Jean-Louis Fuchs <jean-louis.fuchs@adfinis-sygroup.ch>
pkgname=ecasound
pkgver=2.9.3
-pkgrel=1
+pkgrel=3
pkgdesc="Textmode multitrack audio processing"
url="https://ecasound.seul.org/ecasound/"
arch="all !s390x" # Testsuite fails
@@ -10,7 +10,9 @@ license="GPL-2.0-or-later"
makedepends="alsa-lib-dev readline-dev ncurses-dev
mpg123-dev lame-dev libsndfile-dev libsamplerate-dev"
subpackages="$pkgname-dev $pkgname-doc"
-source="http://ecasound.seul.org/download/ecasound-$pkgver.tar.gz"
+source="https://ecasound.seul.org/download/ecasound-$pkgver.tar.gz
+ 0001-ecasignalview.cpp-always-use-s-style-format-for-prin.patch
+ "
build() {
./configure --prefix=/usr \
@@ -25,9 +27,11 @@ package() {
make DESTDIR="$pkgdir" install
}
-
check() {
make check
}
-sha512sums="4f70e6f54cd05194a4ffe80905e7488d16d32d684c87736dfdac7b3aebf3d20cbf417964d75e00e781f6f0614b8b699061c69fcbf7e1761d66ce1abfcd5f1140 ecasound-2.9.3.tar.gz"
+sha512sums="
+4f70e6f54cd05194a4ffe80905e7488d16d32d684c87736dfdac7b3aebf3d20cbf417964d75e00e781f6f0614b8b699061c69fcbf7e1761d66ce1abfcd5f1140 ecasound-2.9.3.tar.gz
+fa2d3305b16de3c5e674c94d6e29465c78e9b9751b1e86a7761d839dd5e86d9fa8fb97b228394406d48cfc9329b8378914a618c37b300273f2467dad6dfeca1d 0001-ecasignalview.cpp-always-use-s-style-format-for-prin.patch
+"
diff --git a/testing/eccodes/APKBUILD b/testing/eccodes/APKBUILD
new file mode 100644
index 00000000000..156a0082d3f
--- /dev/null
+++ b/testing/eccodes/APKBUILD
@@ -0,0 +1,54 @@
+# Maintainer: Leon White <badfunkstripe@gmail.com>
+pkgname=eccodes
+pkgver=2.32.1
+pkgrel=0
+pkgdesc="API and tools for decoding and encoding WMO meteorological message formats"
+url="https://github.com/ecmwf/eccodes"
+# ecCodes only supports 64 bit platforms
+# s390x blocked by netcdf-dev
+arch="all !armhf !armv7 !s390x !x86"
+license="Apache-2.0"
+makedepends="
+ cmake
+ gfortran
+ git
+ jasper-dev
+ jpeg-dev
+ libaec-dev
+ netcdf-dev
+ openjpeg-dev
+ perl
+ py3-numpy
+ python3
+ "
+
+source="
+ eccodes-$pkgver-Source.tar.gz::https://confluence.ecmwf.int/download/attachments/45757960/eccodes-$pkgver-Source.tar.gz?api=v2
+ https://get.ecmwf.int/repository/test-data/eccodes/eccodes_test_data.tar.gz
+"
+
+builddir="$srcdir/$pkgname-$pkgver-Source"
+
+build() {
+ cmake -B build \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DCMAKE_INSTALL_SYSCONFDIR=/etc \
+ -DCMAKE_INSTALL_LOCALSTATEDIR=/var \
+ -DENABLE_EXTRA_TESTS=ON
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build
+}
+
+package() {
+ install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+7fdb34cee0b656ebbecc04d654642b0524eb6e772c1d811471061698f4ec2d31da3be3d66ee697dd3e106f3e8024058b4c165c6dad59868af66a38949c956c77 eccodes-2.32.1-Source.tar.gz
+86767a308841849c7ece006e9f6c68123dc07d8640b038e25529b91ab495d3f10ad5356e9100ef238de6756c67917be13a676f4ab0708fb381021c746e00183e eccodes_test_data.tar.gz
+"
diff --git a/testing/eclib/APKBUILD b/testing/eclib/APKBUILD
new file mode 100644
index 00000000000..519d803acae
--- /dev/null
+++ b/testing/eclib/APKBUILD
@@ -0,0 +1,38 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
+pkgname=eclib
+pkgver=20231212
+pkgrel=0
+pkgdesc="Tools for creating the elliptic curve databases"
+url="https://github.com/JohnCremona/eclib"
+# armhf, armv7, x86: blocked by pari
+# s390x: blocked by flint
+arch="all !armhf !armv7 !s390x !x86"
+license="GPL-2.0-or-later"
+makedepends="boost-dev flint-dev libntl-dev pari-dev"
+source="https://github.com/JohnCremona/eclib/releases/download/v$pkgver/eclib-$pkgver.tar.bz2"
+subpackages="$pkgname-static $pkgname-dev $pkgname-libs $pkgname-doc"
+
+build() {
+ CXXFLAGS="$CXXFLAGS -O2 -flto=auto" \
+ ./configure \
+ --target="$CTARGET" \
+ --build="$CBUILD" \
+ --host="$CHOST" \
+ --prefix=/usr \
+ --with-boost=yes \
+ --enable-mpfp
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+692aa6bc2a52cd9496700990172b5a807abbd3f8bf8e931de14c48a401d1d383f95fa5def68bbf9a1aee08dfabac608604c0fd6f8bb49b813e6c6c909a2f27a7 eclib-20231212.tar.bz2
+"
diff --git a/testing/eclipse-ecj/10-jar-signature.patch b/testing/eclipse-ecj/10-jar-signature.patch
index 5778b14aa62..a1cbc669a74 100644
--- a/testing/eclipse-ecj/10-jar-signature.patch
+++ b/testing/eclipse-ecj/10-jar-signature.patch
@@ -5,9 +5,9 @@ Summary: remove signature from final JAR
--- a/build.xml
+++ b/build.xml
@@ -30,8 +30,6 @@
- <compilerarg line="-Xlint:none"/>
+ <compilerarg line="-Xlint:none --patch-module java.compiler=javax17api.jar"/>
</javac>
-
+
- <delete file="${basedir}/META-INF/MANIFEST.MF" failonerror="false"/>
- <copy tofile="${basedir}/META-INF/MANIFEST.MF" file="${basedir}/scripts/binary/META-INF/MANIFEST.MF"/>
<zip destfile="${basedir}/${jar_file}">
diff --git a/testing/eclipse-ecj/20-javac-version.patch b/testing/eclipse-ecj/20-javac-version.patch
new file mode 100644
index 00000000000..53fbcb65604
--- /dev/null
+++ b/testing/eclipse-ecj/20-javac-version.patch
@@ -0,0 +1,15 @@
+Author: Holger Jaekel <holger.jaekel@gmx.de>
+Summary: set javac version to 17
+----
+
+--- a/build.xml
++++ b/build.xml
+@@ -26,7 +26,7 @@
+ <javac srcdir="${basedir}" destdir="${output}"
+ debuglevel="lines,source"
+ debug="true"
+- release="11">
++ release="17">
+ <compilerarg line="-Xlint:none --patch-module java.compiler=javax17api.jar"/>
+ </javac>
+
diff --git a/testing/eclipse-ecj/APKBUILD b/testing/eclipse-ecj/APKBUILD
index 3ea093114f8..368d7f7034b 100644
--- a/testing/eclipse-ecj/APKBUILD
+++ b/testing/eclipse-ecj/APKBUILD
@@ -1,21 +1,23 @@
# Contributor: Holger Jaekel <holger.jaekel@gmx.de>
# Maintainer: Holger Jaekel <holger.jaekel@gmx.de>
pkgname=eclipse-ecj
-pkgver=4.23
-_pkgdate=202203080310
+pkgver=4.26
+_pkgdate=202211231800
pkgrel=0
pkgdesc="Eclipse java bytecode compiler"
url="https://www.eclipse.org/jdt/core/index.php"
# x86, armhf and armv7 blocked by openjdk17
# riscv64 blocked by java
-arch="noarch !x86 !armv7 !armhf !riscv64"
+# ppc64le: jdk17 unsupported at 4.25
+arch="noarch !x86 !armv7 !armhf !riscv64 !ppc64le"
license="EPL-2.0"
depends="java-common"
makedepends="apache-ant java-jdk"
subpackages="$pkgname-doc"
source="ecjsrc-$pkgver.zip::https://archive.eclipse.org/eclipse/downloads/drops4/R-$pkgver-$_pkgdate/ecjsrc-$pkgver.jar
ecj
- 10-jar-signature.patch
+ 10-jar-signature.patch
+ 20-javac-version.patch
"
builddir="$srcdir"
@@ -36,7 +38,8 @@ package() {
}
sha512sums="
-3b0dcbfb0d35363987daa93bb1d0aedeeff8c7b871f11b51af91cbcbbde0d9118dfcc754504019ae13f9621cd11c8f63cafd7fa7cfbdea65a9d6dc66aab00dd6 ecjsrc-4.23.zip
+e53534160e6a2cdc8c5db7caec617d5671eb59954a86b9dcb36a514024c3205167c8416560796ce61d1aa188f551660f3bfd8eab46fefe9111c8f0b7a977342f ecjsrc-4.26.zip
17272b6bb21efeada37d60c1831685bc25128eddf55338807861a65c5117b37df8e18373f120f06e7488438d05750592029bf4dc9c74e38bc4159e4dc43dd2bf ecj
-cd2c1f00184fccad8b4a9d72998dfe30bd6502e565cad427342cec047ec621def8d14800dccc69e3ebb2681b2daecc2c30e285649861a72258a5f84458f0b281 10-jar-signature.patch
+1aaa946994bf0e914820f0ed91d0f1428a25acb02b967d7e267d887eefe31fd009d82660435d75834d986e44a463344b3289a73813379f2474382d5306c548aa 10-jar-signature.patch
+2a9ccd4fd4d1af046fbd6c01e7cc8427b9a1ee1052078672b82094c06dc0c2ac56ba7e6d92f61e57a0333aeeea7d8ac9ef9d5e4dcd98e3cef29a10288fbe7c20 20-javac-version.patch
"
diff --git a/testing/ecm/APKBUILD b/testing/ecm/APKBUILD
new file mode 100644
index 00000000000..63aa22f1052
--- /dev/null
+++ b/testing/ecm/APKBUILD
@@ -0,0 +1,50 @@
+# Maintainer: Cormac Stephenson <c7s@kasku.net>
+pkgname=ecm
+pkgver=7.0.5
+pkgrel=1
+pkgdesc="Elliptic Curve Method for Integer Factorization"
+url="https://gitlab.inria.fr/zimmerma/ecm"
+arch="all"
+license="GPL-3.0-or-later"
+subpackages="
+ $pkgname-doc
+ $pkgname-dev
+ libecm
+ "
+depends_dev="$pkgname=$pkgver-r$pkgrel"
+makedepends="gmp-dev m4"
+source="https://gitlab.inria.fr/zimmerma/ecm/uploads/89f6f0d65d3e980cef33dc922004e4b2/ecm-$pkgver.tar.gz"
+
+build() {
+ CFLAGS="$CFLAGS -O2" \
+ CXXFLAGS="$CXXFLAGS -O2" \
+ ./configure \
+ --build="$CBUILD" \
+ --host="$CHOST" \
+ --prefix=/usr \
+ --enable-shared \
+ --disable-static
+ make
+}
+
+check() {
+ make check
+}
+
+libecm() {
+ license="LGPL-3.0-or-later"
+ amove usr/lib/libecm.so.*
+}
+
+libecmdev() {
+ license="LGPL-3.0-or-later"
+ default_dev
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+f5a482a231339304683adc3334c9b86f21a0d9b42ea871418d4c01005057d560cd418eddfcc1c7be7f8c249960b2ee612a1454ccc5d8e41319b06c6f42e6662e ecm-7.0.5.tar.gz
+"
diff --git a/testing/editline/APKBUILD b/testing/editline/APKBUILD
deleted file mode 100644
index e654ff79e22..00000000000
--- a/testing/editline/APKBUILD
+++ /dev/null
@@ -1,34 +0,0 @@
-# Contributor: Leo <thinkabit.ukim@gmail.com>
-# Maintainer:
-pkgname=editline
-pkgver=1.17.1
-pkgrel=1
-pkgdesc="readline() replacement for UNIX without termcap (ncurses)"
-url="https://troglobit.com/projects/editline/"
-arch="all"
-license="Spencer-94"
-subpackages="$pkgname-dev $pkgname-doc"
-source="https://github.com/troglobit/editline/releases/download/$pkgver/editline-$pkgver.tar.xz"
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-9b3f5f4a833e9e38c4f99d2e7f8d2716d4db74b6a2d3362e6c513505ff17a79044496405458835d508efd79cbe9046f3c1db602aaad210926312c22057145d35 editline-1.17.1.tar.xz
-"
diff --git a/testing/edward/0001-editor-fix-current-address-when-moving-a-single-line.patch b/testing/edward/0001-editor-fix-current-address-when-moving-a-single-line.patch
new file mode 100644
index 00000000000..8b9123a6568
--- /dev/null
+++ b/testing/edward/0001-editor-fix-current-address-when-moving-a-single-line.patch
@@ -0,0 +1,60 @@
+From 7f85285e784002921f22db29f6724f10bbea1182 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?S=C3=B6ren=20Tempel?= <soeren+git@soeren-tempel.net>
+Date: Thu, 17 Aug 2023 07:16:14 +0200
+Subject: [PATCH] editor: fix current address when moving a single line
+
+When moving a single line, we only want to return the destination line.
+---
+ lib/ed/editor.scm | 6 +++++-
+ tests/integration/move-update-current-on-single-line/cmds | 3 +++
+ tests/integration/move-update-current-on-single-line/opts | 1 +
+ .../move-update-current-on-single-line/testdata/input-file | 5 +++++
+ 4 files changed, 14 insertions(+), 1 deletion(-)
+ create mode 100644 tests/integration/move-update-current-on-single-line/cmds
+ create mode 100644 tests/integration/move-update-current-on-single-line/opts
+ create mode 100644 tests/integration/move-update-current-on-single-line/testdata/input-file
+
+diff --git a/lib/ed/editor.scm b/lib/ed/editor.scm
+index ccadd0b..9790407 100644
+--- a/lib/ed/editor.scm
++++ b/lib/ed/editor.scm
+@@ -452,7 +452,11 @@
+ (buffer-move! buffer sline eline dest-line)
+ (min
+ (editor-lines editor)
+- (+ dest-line (inc (- eline sline))))))
++ (let ((diff (- eline sline)))
++ (+ dest-line
++ ;; If we moved multiple lines, we need to increment
++ ;; the destination lines by the amount of lines moved.
++ (if (zero? diff) diff (inc diff)))))))
+
+ ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+
+diff --git a/tests/integration/move-update-current-on-single-line/cmds b/tests/integration/move-update-current-on-single-line/cmds
+new file mode 100644
+index 0000000..34eb4a1
+--- /dev/null
++++ b/tests/integration/move-update-current-on-single-line/cmds
+@@ -0,0 +1,3 @@
++2m3
++.=
++Q
+diff --git a/tests/integration/move-update-current-on-single-line/opts b/tests/integration/move-update-current-on-single-line/opts
+new file mode 100644
+index 0000000..778c17f
+--- /dev/null
++++ b/tests/integration/move-update-current-on-single-line/opts
+@@ -0,0 +1 @@
++testdata/input-file
+diff --git a/tests/integration/move-update-current-on-single-line/testdata/input-file b/tests/integration/move-update-current-on-single-line/testdata/input-file
+new file mode 100644
+index 0000000..6392fd1
+--- /dev/null
++++ b/tests/integration/move-update-current-on-single-line/testdata/input-file
+@@ -0,0 +1,5 @@
++foo
++bar
++baz
++bla
++blubb
diff --git a/testing/edward/0002-editor-Fix-discarding-of-addrs-for-cmds-expecting-a-.patch b/testing/edward/0002-editor-Fix-discarding-of-addrs-for-cmds-expecting-a-.patch
new file mode 100644
index 00000000000..540669d38c7
--- /dev/null
+++ b/testing/edward/0002-editor-Fix-discarding-of-addrs-for-cmds-expecting-a-.patch
@@ -0,0 +1,65 @@
+From 66979c7d506ab89555cdc281c6ea6f89f92ee87e Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?S=C3=B6ren=20Tempel?= <soeren+git@soeren-tempel.net>
+Date: Sat, 9 Dec 2023 00:25:10 +0100
+Subject: [PATCH] editor: Fix discarding of addrs for cmds expecting a single
+ addr
+
+Previously, the second address was discarded. That is, the first
+was passed to the command. This is, however, incorrect as addresses
+must be discarded starting at the beginning of an address list.
+
+From POSIX:
+
+ If more than the required number of addresses are provided
+ to a command, the addresses specified first shall be
+ evaluated and then discarded until the maximum number of
+ valid addresses remain, for the specified command.
+
+The addrlst->lpair function also correctly implements this algorithm, it
+is just incorrectly implemented in the editor-xexec function. The
+editor-exec function is fixed in this commit.
+---
+ lib/ed/editor.scm | 2 +-
+ tests/integration/discard-first-addr/cmds | 1 +
+ tests/integration/discard-first-addr/opts | 1 +
+ tests/integration/discard-first-addr/testdata/input-file | 2 ++
+ 4 files changed, 5 insertions(+), 1 deletion(-)
+ create mode 100644 tests/integration/discard-first-addr/cmds
+ create mode 100644 tests/integration/discard-first-addr/opts
+ create mode 100644 tests/integration/discard-first-addr/testdata/input-file
+
+diff --git a/lib/ed/editor.scm b/lib/ed/editor.scm
+index 9790407..f5a7f73 100644
+--- a/lib/ed/editor.scm
++++ b/lib/ed/editor.scm
+@@ -674,7 +674,7 @@
+ ;; or a line pair (depending on default address).
+ (line-addr (if (or (not line-pair) (range? default-addr))
+ line-pair
+- (car line-pair))))
++ (cdr line-pair))))
+ (editor-xexec editor line-addr cmd))))
+
+ ;;> Execute given `cmd` using given `editor` state on the address
+diff --git a/tests/integration/discard-first-addr/cmds b/tests/integration/discard-first-addr/cmds
+new file mode 100644
+index 0000000..752f603
+--- /dev/null
++++ b/tests/integration/discard-first-addr/cmds
+@@ -0,0 +1 @@
++1;/stdout/
+diff --git a/tests/integration/discard-first-addr/opts b/tests/integration/discard-first-addr/opts
+new file mode 100644
+index 0000000..778c17f
+--- /dev/null
++++ b/tests/integration/discard-first-addr/opts
+@@ -0,0 +1 @@
++testdata/input-file
+diff --git a/tests/integration/discard-first-addr/testdata/input-file b/tests/integration/discard-first-addr/testdata/input-file
+new file mode 100644
+index 0000000..3ff8447
+--- /dev/null
++++ b/tests/integration/discard-first-addr/testdata/input-file
+@@ -0,0 +1,2 @@
++{-# LANGUAGE LambdaCase #-}
++import System.IO (hFlush, hPutStrLn, stdout)
diff --git a/testing/edward/APKBUILD b/testing/edward/APKBUILD
new file mode 100644
index 00000000000..8a8feb0913c
--- /dev/null
+++ b/testing/edward/APKBUILD
@@ -0,0 +1,33 @@
+# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
+# Maintainer: Sören Tempel <soeren+alpine@soeren-tempel.net>
+pkgname=edward
+pkgver=1.0.1
+pkgrel=1
+pkgdesc="Implementation of the ed text editor in Scheme"
+url="https://github.com/nmeum/edward"
+arch="all"
+license="GPL-3.0-or-later"
+makedepends="chicken"
+checkdepends="ed"
+subpackages="$pkgname-doc"
+source="https://github.com/nmeum/edward/releases/download/$pkgver/edward-$pkgver.tar.gz
+ 0001-editor-fix-current-address-when-moving-a-single-line.patch
+ 0002-editor-Fix-discarding-of-addrs-for-cmds-expecting-a-.patch"
+
+build() {
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make PREFIX=/usr DESTDIR=$pkgdir install
+}
+
+sha512sums="
+caa9a6dfad20f973d1fdc9615c1cad508d646877ca1a627d36365497ce750a1478f94fc0fb287d0840657a9ec048dba23b83d8f12073016858de9a17de3cd496 edward-1.0.1.tar.gz
+56274b808b63febb4cb2a247e0631612709da48f0e5b5d19fba73535e9dff1ac2492badc36ef9dd2155299afead98d7f65b21958fce82c5fa02d6a2c1abf498f 0001-editor-fix-current-address-when-moving-a-single-line.patch
+4868b138acfe8f0ae75f13e7308c5edacbe3fb79636698c7545ad8454bf80ee9a4eeb7a1c7dfe97ac2bf730277d3b03f35d5f509d01ee607cd1383fd6526b1c0 0002-editor-Fix-discarding-of-addrs-for-cmds-expecting-a-.patch
+"
diff --git a/testing/efl/APKBUILD b/testing/efl/APKBUILD
index 1f9c314ee88..83165ae5719 100644
--- a/testing/efl/APKBUILD
+++ b/testing/efl/APKBUILD
@@ -1,23 +1,22 @@
# Contributor: Boris Faure <boris@fau.re>
# Maintainer: Boris Faure <boris@fau.re>
pkgname=efl
-pkgver=1.26.0
-pkgrel=0
+pkgver=1.27.0
+pkgrel=1
pkgdesc="Enlightenment Foundation Libraries"
url="https://www.enlightenment.org"
-arch="all !s390x !riscv64" # blocked by librsvg
+# ppc64le, riscv64: luajit
+arch="all !ppc64le !riscv64"
license="LGPL-2.1-only"
makedepends="
- meson
- ninja
dbus-dev
eudev-dev
fontconfig-dev
freetype-dev
fribidi-dev
giflib-dev
- gstreamer-dev
gst-plugins-base-dev
+ gstreamer-dev
harfbuzz-dev
libheif-dev
libinput-dev
@@ -25,30 +24,34 @@ makedepends="
libpng-dev
librsvg-dev
libsndfile-dev
+ libwebp-dev
libx11-dev
- libxkbcommon-dev
libxcomposite-dev
libxcursor-dev
libxdamage-dev
libxinerama-dev
+ libxkbcommon-dev
libxrandr-dev
- libxtst-dev
libxscrnsaver-dev
- libwebp-dev
+ libxtst-dev
luajit-dev
mesa-dev
+ meson
openjpeg-dev
openssl-dev
+ pulseaudio-dev
wayland-dev
wayland-protocols
- xorgproto"
+ xorgproto
+ "
options="!check" # Test suite issues
-subpackages="$pkgname-dev"
+subpackages="$pkgname-dev $pkgname-gdb"
source="https://download.enlightenment.org/rel/libs/efl/efl-${pkgver/_/-}.tar.xz"
-#builddir="$srcdir/$pkgname-${pkgver/_alpha1/}"
build() {
+ CFLAGS="$CFLAGS -D_LARGEFILE64_SOURCE -D__USE_MISC" \
abuild-meson \
+ -Db_lto=true \
-Ddebug=false \
-Doptimization=s \
-Dnls=false \
@@ -61,7 +64,7 @@ build() {
-Dharfbuzz=true \
-Dwl=true \
-Dnetwork-backend=connman \
- -Devas-loaders-disabler=pdf,ps,raw,tiff,json,avif \
+ -Devas-loaders-disabler=pdf,ps,raw,tiff,json,avif,jxl \
-Dphysics=false \
-Dsystemd=false \
-Dpulseaudio=false \
@@ -72,13 +75,20 @@ build() {
-Decore-imf-loaders-disabler=ibus,scim \
. build
- meson compile ${JOBS:+-j ${JOBS}} -C build
+ meson compile -C build
}
package() {
DESTDIR="$pkgdir" meson install --no-rebuild -C build
}
+gdb() {
+ pkgdesc="$pkgdesc (gdb integration)"
+ install_if="$pkgname=$pkgver-r$pkgrel gdb"
+
+ amove usr/share/gdb
+}
+
sha512sums="
-bc02b9a819a23ec0568578ee2d0cb23c0253d3700ccb18086cc0675c9a882d685dfad76921538a079ec19ebe2657b658b84a336e1b015cc9f1b9e12eb1b5bc88 efl-1.26.0.tar.xz
+5dda2f630463a2504d9246be17449579bbc470904e137b02b3b5c44db033dec2688f6c477885de1485944d875ee62619b6e7c5d4d3657225951f6feaf83b4fa4 efl-1.27.0.tar.xz
"
diff --git a/testing/efm-langserver/APKBUILD b/testing/efm-langserver/APKBUILD
deleted file mode 100644
index 9d1a9164426..00000000000
--- a/testing/efm-langserver/APKBUILD
+++ /dev/null
@@ -1,30 +0,0 @@
-# Contributor: Galen Abell <galen@galenabell.com>
-# Maintainer: Galen Abell <galen@galenabell.com>
-pkgname=efm-langserver
-pkgver=0.0.44
-pkgrel=1
-pkgdesc="General purpose language server"
-url="https://github.com/mattn/efm-langserver"
-arch="all"
-license="MIT"
-makedepends="go"
-options="net chmod-clean"
-source="$pkgname-$pkgver.tar.gz::https://github.com/mattn/efm-langserver/archive/refs/tags/v$pkgver.tar.gz"
-
-export GOPATH="$srcdir"
-
-build() {
- go build -ldflags="-s -w -X main.revision=$pkgver" -o $pkgname .
-}
-
-check() {
- go test ./...
-}
-
-package() {
- install -Dm755 $pkgname "$pkgdir"/usr/bin/$pkgname
-}
-
-sha512sums="
-d156e8e636f88c3fa8662c9dc154036d5162400d12e0b63e183eb4c4363b13957c7c78b630d3013f62430a8262bf3160be2503ad672e7141fbe12124bce5bb53 efm-langserver-0.0.44.tar.gz
-"
diff --git a/testing/eiwd/0001-resolving-service-none.patch b/testing/eiwd/0001-resolving-service-none.patch
new file mode 100644
index 00000000000..09851a53e95
--- /dev/null
+++ b/testing/eiwd/0001-resolving-service-none.patch
@@ -0,0 +1,37 @@
+--- a/src/resolve.c
++++ b/src/resolve.c
+@@ -621,7 +621,7 @@ static int resolve_init(void)
+ method_name = l_settings_get_value(iwd_get_config(), "Network",
+ "NameResolvingService");
+ if (!method_name)
+- method_name = "resolvconf";
++ method_name = "none";
+
+ for (i = 0; resolve_method_ops_list[i].name; i++) {
+ if (strcmp(resolve_method_ops_list[i].name, method_name))
+--- a/src/iwd.config.rst
++++ b/src/iwd.config.rst
+@@ -226,7 +226,7 @@ The group ``[Network]`` contains network
+ by default. This setting can also be overridden on a per-network basis.
+
+ * - NameResolvingService
+- - Values: resolvconf, **systemd**, none
++ - Values: resolvconf, systemd, **none**
+
+ Configures a DNS resolution method used by the system.
+
+@@ -234,10 +234,11 @@ The group ``[Network]`` contains network
+ ``EnableNetworkConfiguration`` and provides the choice of system
+ resolver integration.
+
+- If not specified, ``systemd`` is used as default.
++ If not specified, ``none`` is used as default and DNS and domain name
++ information is ignored.
+
+- If ``none`` is specified, then DNS and domain name information is
+- ignored.
++ In Alpine Linux, ``resolvconf`` requires the openresolv aport to be
++ installed.
+
+ * - RoutePriorityOffset
+ - Values: uint32 value (default: **300**)
diff --git a/testing/eiwd/APKBUILD b/testing/eiwd/APKBUILD
index c709daca07b..e6971e51c00 100644
--- a/testing/eiwd/APKBUILD
+++ b/testing/eiwd/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Milan P. Stanić <mps@arvanta.net>
pkgname=eiwd
_realpkgname=iwd
-pkgver=1.27
+pkgver=2.16
pkgrel=0
pkgdesc="Internet Wireless Daemon without dbus"
url="https://github.com/illiliti/eiwd"
@@ -11,12 +11,13 @@ license="LGPL-2.1-or-later"
depends="!iwd"
replaces="iwd"
options="!check" # doesn't work because of eapol issue
-makedepends="linux-headers autoconf automake libtool coreutils"
+makedepends="linux-headers readline-dev"
+checkdepends="coreutils"
subpackages="$pkgname-doc $pkgname-openrc"
source="https://github.com/illiliti/eiwd/releases/download/$pkgver-1/iwd-$pkgver.tar.xz
+ 0001-resolving-service-none.patch
eiwd.initd
main.conf
- eiwd.post-upgrade
iwd_passphrase
"
builddir="$srcdir/iwd-$pkgver"
@@ -50,9 +51,9 @@ package() {
}
sha512sums="
-a8bbe59c9f4f67ab6ddeb537210139e158dda0eb793f199e39d37fb66ff6789f8c225eeceed7bdddda80c4b3a098c1e531277fe854d3f25ccd9c82fab433488d iwd-1.27.tar.xz
-cf4eca6baaf75cf345a4f8f13d27da65780ad67b64aa42b89b45199279b1ef794af0d28df952530bb7816ff2903801973f0592e8edc42ec221e6b49c7738edec eiwd.initd
-c126da929709ec5a52df0c10d2e428b14b5ce137e3919692920a1e309ac9e12ecd8c75529066c72fee5b7ee2cf26ec2574d0447e122f52a81f3d3ae7077e87e6 main.conf
-414cb08e01735a66dfb57eac7f308ce75f8f7adf679c5e38418293a0acb2398f9b4df4dd50a6756e48eb03b86de1546e2f852a28677842f2c453a0db86d49f71 eiwd.post-upgrade
+4c8c4e0bc63d1e24a93b6150993fac25d74c2b7ada5d4324c2aaf563899a1cb22d880ad332750a9fa3ededfacb90bb23d198aea4321d6a524d116c26e314a7c4 iwd-2.16.tar.xz
+aff4cd6bf4ae72aa64f9f5485bd310633f5219eb71532a8c0fa9a05abaaf50f7636a70a63e533370cd12a702854340e18b27b0537b26ead846fa9c351ec03b42 0001-resolving-service-none.patch
+b78d19f5a3ef5f12d33b4fab11ed348b1b2fe309310c33fe278d302cadf065dba72c13214bd760576ecb47f6681d012adcb4997e17a75778d41e3c4fd6a0eb01 eiwd.initd
+33517c2c72c43440ed2e68e53bb937d7d557efdf19a6f7fa9cceb87be4b64499f8b9bd6f981f5e413dc3d724eb13ec08b50a129dd81cf64872c362fc5e1d1321 main.conf
06d0258e9e4d13a5cd7cb47cc30c122e2ea950c84b18352fef4982bef41961295316de396b7e6d0a33b949436da40d08fdd76230c7c228d8bdd0e33751cad26c iwd_passphrase
"
diff --git a/testing/eiwd/eiwd.confd b/testing/eiwd/eiwd.confd
new file mode 100644
index 00000000000..bf771adcd3a
--- /dev/null
+++ b/testing/eiwd/eiwd.confd
@@ -0,0 +1,24 @@
+# Configuration for /etc/init.d/eiwd
+
+# A comma-separated list of patterns specifying the network interfaces that
+# eiwd is allowed to manage. Defaults to any wireless interfaces.
+#allowed_interfaces=
+
+# A comma-separated list of patterns specifying the network interfaces that
+# eiwd should ignore.
+#ignored_interfaces=
+
+# Extra options for eiwd(8).
+#command_args=
+
+# Log messages are redirected to syslog. Set to empty string to disable.
+#error_logger="logger -t eiwd -p daemon.info >/dev/null 2>&1"
+
+# Number of milliseconds to wait after starting and check that daemon is
+# still running. Set to empty string to disable.
+# NOTE: If you use eiwd together with ConnMan and ConnMan crashes when started
+# right after eiwd, increase this period to e.g. 200 ms.
+#start_wait=50
+
+# Uncomment to use process supervisor.
+# supervisor="supervise-daemon"
diff --git a/testing/eiwd/eiwd.initd b/testing/eiwd/eiwd.initd
index e59417c911e..b72f5e8583f 100644
--- a/testing/eiwd/eiwd.initd
+++ b/testing/eiwd/eiwd.initd
@@ -1,12 +1,25 @@
#!/sbin/openrc-run
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-pidfile="/run/iwd.pid"
+description="iNet wireless daemon without dbus"
+
+: ${error_logger="logger -t eiwd -p daemon.info >/dev/null 2>&1"}
+: ${start_wait=50} # milliseconds
+
command="/usr/libexec/iwd"
command_background="yes"
+command_args="
+ ${allowed_interfaces:+"--interfaces \"$allowed_interfaces\""}
+ ${ignored_interfaces:+"--nointerfaces \"$ignored_interfaces\""}
+ ${command_args:-}
+ "
+start_stop_daemon_args="
+ ${start_wait:+--wait $start_wait}
+ ${start_stop_daemon_args:-}
+ "
+pidfile="/run/iwd.pid"
depend() {
before net
keyword -shutdown
+ provide wlan
}
diff --git a/testing/eiwd/eiwd.post-upgrade b/testing/eiwd/eiwd.post-upgrade
deleted file mode 100644
index ec087304ac0..00000000000
--- a/testing/eiwd/eiwd.post-upgrade
+++ /dev/null
@@ -1,6 +0,0 @@
-#!/bin/sh
-
-if [ -f /etc/iwd/main.conf ]; then
- sed -i -e s/enable_network_config=True/EnableNetworkConfiguration=True/ /etc/iwd/main.conf
- sed -i -e s/resolve_method=resolvconf/NameResolvingService=resolvconf/ /etc/iwd/main.conf
-fi
diff --git a/testing/eiwd/main.conf b/testing/eiwd/main.conf
index bd4c70fc9c2..79b81a06f29 100644
--- a/testing/eiwd/main.conf
+++ b/testing/eiwd/main.conf
@@ -9,9 +9,6 @@
[EAP]
mtu=1400
-#[EAPoL]
-#max_4way_handshake_time=5
-
[General]
UseDefaultInterface=True
EnableNetworkConfiguration=True
diff --git a/testing/ejabberd/APKBUILD b/testing/ejabberd/APKBUILD
deleted file mode 100644
index f6d09ae3e99..00000000000
--- a/testing/ejabberd/APKBUILD
+++ /dev/null
@@ -1,198 +0,0 @@
-# Contributor: Leonardo Arena <rnalrd@alpinelinux.org>
-# Contributor: Francesco Colista <fcolista@alpinelinux.org>
-# Contributor: Nicolas Lorin <androw95220@gmail.com>
-# Maintainer: John Regan <john@jrjrtech.com>
-pkgname=ejabberd
-pkgver=22.05
-pkgrel=0
-_base64url=1.0.1
-_cache_tab=1.0.30
-_eimp=1.0.22
-_ejabberd_po=9849703c3664e43452eae3245016a1c187f3edc4
-_elixir=1.4.4
-_epam=1.0.12
-_eredis=1.2.0
-_esip=1.0.47
-_ezlib=1.0.12
-_fast_tls=1.1.15
-_fast_xml=1.1.49
-_fast_yaml=1.0.33
-_goldrush=0.2.0
-_idna=6.0.0
-_jiffy=1.1.1
-_jose=1.11.1
-_lager=3.9.2
-_luerl=1.0
-_mqtree=1.0.15
-_p1_acme=1.0.19
-_p1_mysql=1.0.19
-_p1_oauth2=0.6.11
-_p1_pgsql=1.1.18
-_p1_utils=1.0.25
-_pkix=1.0.9
-_rebar_elixir_plugin=0.1.0
-_sqlite3=1.1.13
-_stringprep=1.0.28
-_stun=1.2.2
-_unicode_util_compat=0.4.1
-_xmpp=1.5.8
-_yconf=1.0.13
-pkgdesc="An erlang jabber server"
-url="https://www.ejabberd.im/"
-arch="all"
-license="GPL-2.0-or-later"
-depends="erlang"
-makedepends="automake autoconf gd-dev erlang-dev openssl-dev zlib-dev sqlite-dev yaml-dev linux-pam-dev expat-dev heimdal-dev"
-pkgusers="ejabberd"
-pkggroups="ejabberd"
-install="$pkgname.pre-install"
-options="!check" # test suite requires all kinds of services running
-subpackages="$pkgname-dev $pkgname-doc $pkgname-openrc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/processone/ejabberd/archive/$pkgver.tar.gz
- base64url-$_base64url.tar.gz::https://github.com/dvv/base64url/archive/refs/tags/$_base64url.tar.gz
- cache_tab-$_cache_tab.tar.gz::https://github.com/processone/cache_tab/archive/refs/tags/$_cache_tab.tar.gz
- eimp-$_eimp.tar.gz::https://github.com/processone/eimp/archive/refs/tags/$_eimp.tar.gz
- ejabberd_po-$_ejabberd_po.tar.gz::https://github.com/processone/ejabberd-po/archive/$_ejabberd_po.tar.gz
- elixir-$_elixir.tar.gz::https://github.com/elixir-lang/elixir/archive/refs/tags/v$_elixir.tar.gz
- epam-$_epam.tar.gz::https://github.com/processone/epam/archive/refs/tags/$_epam.tar.gz
- eredis-$_eredis.tar.gz::https://github.com/wooga/eredis/archive/refs/tags/v$_eredis.tar.gz
- esip-$_esip.tar.gz::https://github.com/processone/esip/archive/refs/tags/$_esip.tar.gz
- ezlib-$_ezlib.tar.gz::https://github.com/processone/ezlib/archive/refs/tags/$_ezlib.tar.gz
- fast_tls-$_fast_tls.tar.gz::https://github.com/processone/fast_tls/archive/refs/tags/$_fast_tls.tar.gz
- fast_xml-$_fast_xml.tar.gz::https://github.com/processone/fast_xml/archive/refs/tags/$_fast_xml.tar.gz
- fast_yaml-$_fast_yaml.tar.gz::https://github.com/processone/fast_yaml/archive/refs/tags/$_fast_yaml.tar.gz
- goldrush-$_goldrush.tar.gz::https://github.com/DeadZen/goldrush/archive/refs/tags/$_goldrush.tar.gz
- idna-$_idna.tar.gz::https://github.com/benoitc/erlang-idna/archive/refs/tags/$_idna.tar.gz
- jiffy-$_jiffy.tar.gz::https://github.com/davisp/jiffy/archive/refs/tags/$_jiffy.tar.gz
- jose-$_jose.tar.gz::https://github.com/potatosalad/erlang-jose/archive/refs/tags/$_jose.tar.gz
- lager-$_lager.tar.gz::https://github.com/erlang-lager/lager/archive/refs/tags/$_lager.tar.gz
- luerl-$_luerl.tar.gz::https://github.com/rvirding/luerl/archive/refs/tags/v$_luerl.tar.gz
- mqtree-$_mqtree.tar.gz::https://github.com/processone/mqtree/archive/refs/tags/$_mqtree.tar.gz
- p1_acme-$_p1_acme.tar.gz::https://github.com/processone/p1_acme/archive/refs/tags/$_p1_acme.tar.gz
- p1_mysql-$_p1_mysql.tar.gz::https://github.com/processone/p1_mysql/archive/refs/tags/$_p1_mysql.tar.gz
- p1_oauth2-$_p1_oauth2.tar.gz::https://github.com/processone/p1_oauth2/archive/refs/tags/$_p1_oauth2.tar.gz
- p1_pgsql-$_p1_pgsql.tar.gz::https://github.com/processone/p1_pgsql/archive/refs/tags/$_p1_pgsql.tar.gz
- p1_utils-$_p1_utils.tar.gz::https://github.com/processone/p1_utils/archive/refs/tags/$_p1_utils.tar.gz
- pkix-$_pkix.tar.gz::https://github.com/processone/pkix/archive/refs/tags/$_pkix.tar.gz
- rebar_elixir_plugin-$_rebar_elixir_plugin.tar.gz::https://github.com/processone/rebar_elixir_plugin/archive/refs/tags/$_rebar_elixir_plugin.tar.gz
- sqlite3-$_sqlite3.tar.gz::https://github.com/processone/erlang-sqlite3/archive/refs/tags/$_sqlite3.tar.gz
- stringprep-$_stringprep.tar.gz::https://github.com/processone/stringprep/archive/refs/tags/$_stringprep.tar.gz
- stun-$_stun.tar.gz::https://github.com/processone/stun/archive/refs/tags/$_stun.tar.gz
- unicode_util_compat-$_unicode_util_compat.tar.gz::https://github.com/benoitc/unicode_util_compat/archive/refs/tags/$_unicode_util_compat.tar.gz
- xmpp-$_xmpp.tar.gz::https://github.com/processone/xmpp/archive/refs/tags/$_xmpp.tar.gz
- yconf-$_yconf.tar.gz::https://github.com/processone/yconf/archive/refs/tags/$_yconf.tar.gz
- ejabberd.initd
- ejabberd.logrotate
- ejabberd.confd
- dont-leak-destdir.patch
- "
-
-prepare() {
- mkdir deps
- for i in \
- base64url-$_base64url \
- cache_tab-$_cache_tab \
- eimp-$_eimp \
- elixir-$_elixir \
- epam-$_epam \
- eredis-$_eredis \
- esip-$_esip \
- ezlib-$_ezlib \
- fast_tls-$_fast_tls \
- fast_xml-$_fast_xml \
- fast_yaml-$_fast_yaml \
- goldrush-$_goldrush \
- jiffy-$_jiffy \
- lager-$_lager \
- luerl-$_luerl \
- mqtree-$_mqtree \
- p1_acme-$_p1_acme \
- p1_mysql-$_p1_mysql \
- p1_oauth2-$_p1_oauth2 \
- p1_pgsql-$_p1_pgsql \
- p1_utils-$_p1_utils \
- pkix-$_pkix \
- rebar_elixir_plugin-$_rebar_elixir_plugin \
- stringprep-$_stringprep \
- stun-$_stun \
- unicode_util_compat-$_unicode_util_compat \
- xmpp-$_xmpp \
- yconf-$_yconf; do
- mv "$srcdir"/"$i" "$builddir"/deps/${i%-*}
- done
- mv "$srcdir"/ejabberd-po-$_ejabberd_po "$builddir"/deps/ejabberd_po
- mv "$srcdir"/erlang-sqlite3-$_sqlite3 "$builddir"/deps/sqlite3
- mv "$srcdir"/erlang-idna-$_idna "$builddir"/deps/idna
- mv "$srcdir"/erlang-jose-$_jose "$builddir"/deps/jose
- default_prepare
- sh ./autogen.sh
-}
-
-build() {
- ./configure \
- --prefix=/usr \
- --sysconfdir=/etc \
- --sbindir=/usr/sbin \
- --localstatedir=/var \
- --mandir=/usr/share/man \
- --infodir=/usr/share/info \
- --enable-user=ejabberd \
- --enable-all
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-
- install -d "$pkgdir"/var/spool/$pkgname
- install -d "$pkgdir"/var/lib/$pkgname
- install -D -m0644 "$srcdir"/$pkgname.logrotate \
- "$pkgdir"/etc/logrotate.d/$pkgname
- install -m755 -D "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
- install -m644 -D "$srcdir"/$pkgname.confd "$pkgdir"/etc/conf.d/$pkgname
- chown -R ejabberd.ejabberd "$pkgdir"/var/log/ejabberd
- chown -R ejabberd.ejabberd "$pkgdir"/var/spool/ejabberd
- chown -R ejabberd.ejabberd "$pkgdir"/var/lib/ejabberd
- chgrp ejabberd "$pkgdir"/etc/ejabberd/ejabberd.yml \
- "$pkgdir"/etc/ejabberd/ejabberdctl.cfg "$pkgdir"/etc/ejabberd
-}
-
-sha512sums="
-33f98a9c45ff8257d240e7b90181e399ecab84e361f5619dc8d57252642e81d4958467cfa89b90681f3cf0d1d56a3079eb98d4e80cc6af5ca11938bb2a69f865 ejabberd-22.05.tar.gz
-7398dc99078053b6e0544eb8ca93e9616549493c02245084c220ec854f429139dcaba38dd522858dd74b95067979a3ec4378eb3abd5f6d1662af27687381c738 base64url-1.0.1.tar.gz
-bc8aaacea404d8a8b9a8fb14bc1eec9ec0c07ba4fac910287f448be66b0b3475b3913297dfce8d9de9fc208d9eb413dd8bf154cd1bd6edf86ee40100629e4553 cache_tab-1.0.30.tar.gz
-5426df9a00d5b614ebb236729e2b397d5e72e12e68cbed32550a074b1b86557e1dee6585b917166e5ebf2fc41297329574c181471885638236c82a66a29d2232 eimp-1.0.22.tar.gz
-ee70d9fcd28b5b1b43206ead9283b848f1d526a242b323ccc4e1211759683d914ad8ce9e33d4b864490b1a6e3f0542956eb1fa4fc8e1502a0a36587f41c3aab9 ejabberd_po-9849703c3664e43452eae3245016a1c187f3edc4.tar.gz
-e339a27e1b31c7783077fc336703c30066d18af990c26741508caa16f15d33d71c56ca7884ed27d046b310db5e051adc428fc51535abecb06992225c6d2d274d elixir-1.4.4.tar.gz
-61a1d49c3316fb7f8fcc8b7d7c1ab0b5dd87fa31cecac679a850d191fe9171f7e01473b9979f8107c1c4567836e07ced67336dd5133dfdc5d4680cb3b6c3b270 epam-1.0.12.tar.gz
-c72ae291389e47d1ac4c1de69dccb6121f4f9195283665d490904226b2ea15cb7671b48bb08db507a5e62c6bced62d890a9ecb9752da6e0aad24a28da137907c eredis-1.2.0.tar.gz
-68be1c8cf507180e73f3a16dfd8ca44ffad825c40df0d1874888afa41f3cb89b445b033036d041af29ec3fdbdab7acc68f770124171ba4af73abd0775a03c0ba esip-1.0.47.tar.gz
-950a76ef6714882909c8c03cb0c21f246fd04bb42b44496b8865a96da54544fad17b2e3f54ef0b744ae32a1b9930f32c5fbcd526833f3736e8e5087483e61233 ezlib-1.0.12.tar.gz
-fcbdb9ffbb61c07fb3706bdae9d6d10f425968e722bcd03e2c86a99ca62d3ff0cb1298bf625adb679c627f38953fd3ef0b4263ae34ea100e9134488d9c55e192 fast_tls-1.1.15.tar.gz
-c33e94865b676f0011f21f9434e0ac3c019abdad7cf0b229a4dcad8bf6c26d4d84585e013cc8257cbb4da4a4f4d5216702dbf2eda15bd333fd429d260e6e85f5 fast_xml-1.1.49.tar.gz
-ace64e8818604031180955c2527cbd4eb73246f60d9d23e2fcde54d25451c3e2b0625e97df817a48cb23593f10555063aa894dd84fa64e5a2d68884a8d75a4f5 fast_yaml-1.0.33.tar.gz
-1a74f02c75e72f8a60366b9ba74b763eb98621da2ce6044ed97e836566caf8ce85fadeee62b3d24303df319e2c1333d1c544cd267a041b718b0ab36de53e7b1a goldrush-0.2.0.tar.gz
-59f8996199f7e3391b1da1b8fb1ebb70e442838eab1f26af9a8a8545f3e1b9f72f0afd65108272a51d846b34e0e8abe9623f10c89156ebca3d87b6b3eb63a066 idna-6.0.0.tar.gz
-cfa36d77285e53ccce852640a4c780f2c29ad33c7352e3a5b69fec431d6684bac4bf5ac323379a8bb1d1289afa23b6f73d4d5ecf1b025791fd84198d4c066910 jiffy-1.1.1.tar.gz
-eed87ba597b8df064f38b873216f0a54fc4173d4393de49b648bc9e4e519778c4f3043701f8e6cb84a0f452ff555fcfa1d65afeb91d4466616bcc27838772fd6 jose-1.11.1.tar.gz
-13b08145ab2316215f95de34838445f2922513e44f6800f338cd6941e6854653a9f8657447b439d5d508cb4569fbf4a0e03dc508d7c5d2ad48c9d4d14e17ca50 lager-3.9.2.tar.gz
-b599f3562faeb672bef531642c0073c52943775e6785b3f8800559c1f6a331ec523987f4a3b1882da3e2d94b6257c5bc0992acdb5b3f250353bb8f25e081fa2e luerl-1.0.tar.gz
-e50066c39bb7feb4bea6a0fcff65ec4e73fca3aeeafa85be10ef7fe354e582a037369dc27163e47796f021e8cb70c40c396e5edce0ebf8255d4e452c4df0d4da mqtree-1.0.15.tar.gz
-d0896ca53fd48798f0e3f502a09e9df6ea88e4248968b5273b1a6e0f6735c39d680de251e0f2c49d04271018a5664252771be1746cf9d18ddd9d42e2ddf90b24 p1_acme-1.0.19.tar.gz
-eee2402661cc7d58228641057c571c383c09261a0022287ca19ab56a51530ea575478971fea944919aeb910e37cd9dedfea629bdd949b8dae7892aa5590ac675 p1_mysql-1.0.19.tar.gz
-c97fe256ba3d0c3c18d0ad14dd85f28bed7607b0aa8d56a23e1c87694a10669eb1cd6e0abafff7e366974b2160ef5eb8e65dadc60a85963e3aa4334252db8b6e p1_oauth2-0.6.11.tar.gz
-b075475a8729ca4d24d8cf05dc82b17a5c1e05c38d22586fe490c39194640e36145b0732126bb023881d6b258411a87046ab81a25fd85a1d3505d28da0d50122 p1_pgsql-1.1.18.tar.gz
-e96bcd309dfaf3f80de573b7ad1b7281ee0cb97b0b91f92a5a9c5b5ccc969dce4d6b1adbaef9ff33bf9deb0da8e6b1738fbe3f69235b51a0069e0fda72a16d74 p1_utils-1.0.25.tar.gz
-bd428814421effdc74c418a376b44716f4f79095550dd1b8431bfb51e8d26262015be0dda7948a9b8f9fc60a0cd0d12289161c8b497134f6413fd1e1efb886ba pkix-1.0.9.tar.gz
-6c9704e999d375fafdb08a38bf0850c487e8408e60e7ec355c4b4d9fe385335a691b09370029cf619ba9eef4d82383e9410ac7f18a730cc80bc3366e86644609 rebar_elixir_plugin-0.1.0.tar.gz
-9e9e254511c0da74367e74c5b42cbe1bcc42a8232c1d60549b5a71f4db072391d7870b069ce247a972bef05f16d70b22b4c37176a59e44e75dc975946c86581f sqlite3-1.1.13.tar.gz
-1bedef40b38494ff42f551fedb83e47a2938eb29871b8649a76521035f16a7a2575d6524e12dfdfc45379c3cbe50af2988daa9ae9ab82632156514c86e06df7e stringprep-1.0.28.tar.gz
-ddbb13300c1cc2ac09d7049fbd97fcd67e7f2e0dbb56569279ea1b1e4fe5e106712178e683757a4c205ddc54d1b2a0291369affc42a23325d7ad6ad61b648fd9 stun-1.2.2.tar.gz
-ee5bc1600ea00ad9c1d9f1565d04d073dd357c6f69c0728e770e17f7e4f1a07c2d2883d05e344d33dd7fe62e310ae4b86e4a05998e4830fedc6b895653993532 unicode_util_compat-0.4.1.tar.gz
-0ef76dd65741072276ef3590e4c82456c832dda530f857a30072acc6444532865b716c82e60e972320ddab191ac1fb0a72be2bc71b01a72e16892015381086e3 xmpp-1.5.8.tar.gz
-1e5df69421a82e8c442e17ed74738a4717e84521570f48a885de3e4fda2cbbc6d7567736d87255050d21e85edf976532ba6659b8a51d3150d1ac5e2c19d89a61 yconf-1.0.13.tar.gz
-18fb890794be6b0e63960af80a39a97b8c70a6c0ab9a91a95d0f623257e38f5a43c012430ccf871038fc440d06720c573821b485a94191bd73e3924e670683c5 ejabberd.initd
-47fd2cfd9177c4e978a9799a153ba74392a9891822221af8194686a40f6bf01f38644833e1e1f5416c6357e0bfb7ca3dae96f55a4fcd7cd629ec798d85a72807 ejabberd.logrotate
-96a571c0ab2be366e931bda423a61ef920cbaba2107e61ddbc501472ce3efe2804418cc6579c99310b902a9a99aaecb9284cf2420c071dbca2f670efb4034135 ejabberd.confd
-7b6debff487880dfacd8e882c03a9d948178dfd450c336657e11442a51b62574e9bd41c0af131b6b4f3b1b0f450c442c2eff04ad3f13439540685740295bf71e dont-leak-destdir.patch
-"
diff --git a/testing/ejabberd/dont-leak-destdir.patch b/testing/ejabberd/dont-leak-destdir.patch
deleted file mode 100644
index 843d37aef48..00000000000
--- a/testing/ejabberd/dont-leak-destdir.patch
+++ /dev/null
@@ -1,209 +0,0 @@
-Taken from https://github.com/processone/ejabberd/commit/75a771bfec3626145d404349fdaec4f0eef83bbc
-
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -10,27 +10,27 @@
- DESTDIR =
-
- # /etc/ejabberd/
--ETCDIR = $(DESTDIR)@sysconfdir@/ejabberd
-+ETCDIR = @sysconfdir@/ejabberd
-
- # /bin/
--BINDIR = $(DESTDIR)@bindir@
-+BINDIR = @bindir@
-
- # /sbin/
--SBINDIR = $(DESTDIR)@sbindir@
-+SBINDIR = @sbindir@
-
- # /lib/
--LIBDIR = $(DESTDIR)@libdir@
-+LIBDIR = @libdir@
-
- # /lib/ejabberd/
--EJABBERDDIR = $(DESTDIR)@libdir@/ejabberd
-+EJABBERDDIR = @libdir@/ejabberd
-
- # /share/doc/ejabberd
- PACKAGE_TARNAME = @PACKAGE_TARNAME@
- datarootdir = @datarootdir@
--DOCDIR = $(DESTDIR)@docdir@
-+DOCDIR = @docdir@
-
- # /share/doc/man/man5
--MANDIR = $(DESTDIR)@mandir@/man5
-+MANDIR = @mandir@/man5
-
- # /usr/lib/ejabberd/ebin/
- BEAMDIR = $(EJABBERDDIR)/ebin
-@@ -66,10 +66,10 @@
- LUADIR = $(PRIVDIR)/lua
-
- # /var/lib/ejabberd/
--SPOOLDIR = $(DESTDIR)@localstatedir@/lib/ejabberd
-+SPOOLDIR = @localstatedir@/lib/ejabberd
-
- # /var/log/ejabberd/
--LOGDIR = $(DESTDIR)@localstatedir@/log/ejabberd
-+LOGDIR = @localstatedir@/log/ejabberd
-
- INSTALLUSER=@INSTALLUSER@
- # if no user was enabled, don't set privileges or ownership
-@@ -201,7 +201,7 @@
- DEPS_TO_DEST=$(LIBDIR) $(call VERSIONED_DEP,$(word 2,$(1))) $(wordlist 3,1000,$(1))
- MAIN_TO_DEST=$(LIBDIR) $(call VERSIONED_DEP,ejabberd) $(1)
- TO_DEST_SINGLE=$(if $(subst X$(DEPSBASE)X,,X$(word 1,$(1))X),$(call MAIN_TO_DEST,$(1)),$(if $(subst XlibX,,X$(word $(LIBIX),$(1))X),$(call DEPS_TO_DEST,$(wordlist $(DEPIX),1000,$(1))),$(call ELIXIR_TO_DEST,$(wordlist $(DEPIX),1000,$(1)))))
--TO_DEST=$(foreach path,$(1),$(call JOIN_PATHS,$(call TO_DEST_SINGLE,$(subst /, ,$(path)))))
-+TO_DEST=$(foreach path,$(1),$(call JOIN_PATHS,$(DESTDIR)$(call TO_DEST_SINGLE,$(subst /, ,$(path)))))
-
- FILTER_DIRS=$(foreach path,$(1),$(if $(wildcard $(path)/*),,$(path)))
- FILES_WILDCARD=$(call FILTER_DIRS,$(foreach w,$(1),$(wildcard $(w))))
-@@ -242,7 +242,7 @@
- $(foreach file,$(BINARIES),$(eval $(call COPY_BINARY_template,$(file))))
-
- $(sort $(call TO_DEST,$(MAIN_DIRS) $(DEPS_DIRS))):
-- $(INSTALL) -d $@
-+ $(INSTALL) -d $@
-
- $(call TO_DEST,priv/sql/lite.sql): sql/lite.sql $(call TO_DEST,priv/sql)
- $(INSTALL) -m 644 $< $@
-@@ -311,23 +311,23 @@
- install: copy-files ejabberdctl.example
- #
- # Configuration files
-- $(INSTALL) -d -m 750 $(G_USER) $(ETCDIR)
-- [ -f $(ETCDIR)/ejabberd.yml ] \
-- && $(INSTALL) -b -m 640 $(G_USER) ejabberd.yml.example $(ETCDIR)/ejabberd.yml-new \
-- || $(INSTALL) -b -m 640 $(G_USER) ejabberd.yml.example $(ETCDIR)/ejabberd.yml
-- [ -f $(ETCDIR)/ejabberdctl.cfg ] \
-- && $(INSTALL) -b -m 640 $(G_USER) ejabberdctl.cfg.example $(ETCDIR)/ejabberdctl.cfg-new \
-- || $(INSTALL) -b -m 640 $(G_USER) ejabberdctl.cfg.example $(ETCDIR)/ejabberdctl.cfg
-- $(INSTALL) -b -m 644 $(G_USER) inetrc $(ETCDIR)/inetrc
-+ $(INSTALL) -d -m 750 $(G_USER) $(DESTDIR)$(ETCDIR)
-+ [ -f $(DESTDIR)$(ETCDIR)/ejabberd.yml ] \
-+ && $(INSTALL) -b -m 640 $(G_USER) ejabberd.yml.example $(DESTDIR)$(ETCDIR)/ejabberd.yml-new \
-+ || $(INSTALL) -b -m 640 $(G_USER) ejabberd.yml.example $(DESTDIR)$(ETCDIR)/ejabberd.yml
-+ [ -f $(DESTDIR)$(ETCDIR)/ejabberdctl.cfg ] \
-+ && $(INSTALL) -b -m 640 $(G_USER) ejabberdctl.cfg.example $(DESTDIR)$(ETCDIR)/ejabberdctl.cfg-new \
-+ || $(INSTALL) -b -m 640 $(G_USER) ejabberdctl.cfg.example $(DESTDIR)$(ETCDIR)/ejabberdctl.cfg
-+ $(INSTALL) -b -m 644 $(G_USER) inetrc $(DESTDIR)$(ETCDIR)/inetrc
- #
- # Administration script
-- [ -d $(SBINDIR) ] || $(INSTALL) -d -m 755 $(SBINDIR)
-- $(INSTALL) -m 550 $(G_USER) ejabberdctl.example $(SBINDIR)/ejabberdctl
-+ [ -d $(DESTDIR)$(SBINDIR) ] || $(INSTALL) -d -m 755 $(DESTDIR)$(SBINDIR)
-+ $(INSTALL) -m 550 $(G_USER) ejabberdctl.example $(DESTDIR)$(SBINDIR)/ejabberdctl
- # Elixir binaries
-- [ -d $(BINDIR) ] || $(INSTALL) -d -m 755 $(BINDIR)
-- [ -f $(DEPSDIR)/elixir/bin/iex ] && $(INSTALL) -m 550 $(G_USER) $(DEPSDIR)/elixir/bin/iex $(BINDIR)/iex || true
-- [ -f $(DEPSDIR)/elixir/bin/elixir ] && $(INSTALL) -m 550 $(G_USER) $(DEPSDIR)/elixir/bin/elixir $(BINDIR)/elixir || true
-- [ -f $(DEPSDIR)/elixir/bin/mix ] && $(INSTALL) -m 550 $(G_USER) $(DEPSDIR)/elixir/bin/mix $(BINDIR)/mix || true
-+ [ -d $(DESTDIR)$(BINDIR) ] || $(INSTALL) -d -m 755 $(DESTDIR)$(BINDIR)
-+ [ -f $(DEPSDIR)/elixir/bin/iex ] && $(INSTALL) -m 550 $(G_USER) $(DEPSDIR)/elixir/bin/iex $(DESTDIR)$(BINDIR)/iex || true
-+ [ -f $(DEPSDIR)/elixir/bin/elixir ] && $(INSTALL) -m 550 $(G_USER) $(DEPSDIR)/elixir/bin/elixir $(DESTDIR)$(BINDIR)/elixir || true
-+ [ -f $(DEPSDIR)/elixir/bin/mix ] && $(INSTALL) -m 550 $(G_USER) $(DEPSDIR)/elixir/bin/mix $(DESTDIR)$(BINDIR)/mix || true
- #
- # Init script
- $(SED) -e "s*@ctlscriptpath@*$(SBINDIR)*g" \
-@@ -342,59 +342,59 @@
- chmod 644 ejabberd.service
- #
- # Spool directory
-- $(INSTALL) -d -m 750 $(O_USER) $(SPOOLDIR)
-- $(CHOWN_COMMAND) -R @INSTALLUSER@ $(SPOOLDIR) >$(CHOWN_OUTPUT)
-- chmod -R 750 $(SPOOLDIR)
-+ $(INSTALL) -d -m 750 $(O_USER) $(DESTDIR)$(SPOOLDIR)
-+ $(CHOWN_COMMAND) -R @INSTALLUSER@ $(DESTDIR)$(SPOOLDIR) >$(CHOWN_OUTPUT)
-+ chmod -R 750 $(DESTDIR)$(SPOOLDIR)
- #
- # Log directory
-- $(INSTALL) -d -m 750 $(O_USER) $(LOGDIR)
-- $(CHOWN_COMMAND) -R @INSTALLUSER@ $(LOGDIR) >$(CHOWN_OUTPUT)
-- chmod -R 750 $(LOGDIR)
-+ $(INSTALL) -d -m 750 $(O_USER) $(DESTDIR)$(LOGDIR)
-+ $(CHOWN_COMMAND) -R @INSTALLUSER@ $(DESTDIR)$(LOGDIR) >$(CHOWN_OUTPUT)
-+ chmod -R 750 $(DESTDIR)$(LOGDIR)
- #
- # Documentation
-- $(INSTALL) -d $(MANDIR)
-- $(INSTALL) -d $(DOCDIR)
-+ $(INSTALL) -d $(DESTDIR)$(MANDIR)
-+ $(INSTALL) -d $(DESTDIR)$(DOCDIR)
- [ -f man/ejabberd.yml.5 ] \
-- && $(INSTALL) -m 644 man/ejabberd.yml.5 $(MANDIR) \
-+ && $(INSTALL) -m 644 man/ejabberd.yml.5 $(DESTDIR)$(MANDIR) \
- || echo "Man page not included in sources"
-- $(INSTALL) -m 644 COPYING $(DOCDIR)
-+ $(INSTALL) -m 644 COPYING $(DESTDIR)$(DOCDIR)
-
- uninstall: uninstall-binary
-
- uninstall-binary:
-- rm -f $(SBINDIR)/ejabberdctl
-- rm -f $(BINDIR)/iex
-- rm -f $(BINDIR)/elixir
-- rm -f $(BINDIR)/mix
-- rm -fr $(DOCDIR)
-- rm -f $(BEAMDIR)/*.beam
-- rm -f $(BEAMDIR)/*.app
-- rm -fr $(BEAMDIR)
-- rm -f $(INCLUDEDIR)/*.hrl
-- rm -fr $(INCLUDEDIR)
-- rm -fr $(PBINDIR)
-- rm -f $(SODIR)/*.so
-- rm -fr $(SODIR)
-- rm -f $(MSGSDIR)/*.msg
-- rm -fr $(MSGSDIR)
-- rm -f $(CSSDIR)/*.css
-- rm -fr $(CSSDIR)
-- rm -f $(IMGDIR)/*.png
-- rm -fr $(IMGDIR)
-- rm -f $(JSDIR)/*.js
-- rm -fr $(JSDIR)
-- rm -f $(SQLDIR)/*.sql
-- rm -fr $(SQLDIR)
-- rm -fr $(LUADIR)/*.lua
-- rm -fr $(LUADIR)
-- rm -fr $(PRIVDIR)
-- rm -fr $(EJABBERDDIR)
-+ rm -f $(DESTDIR)$(SBINDIR)/ejabberdctl
-+ rm -f $(DESTDIR)$(BINDIR)/iex
-+ rm -f $(DESTDIR)$(BINDIR)/elixir
-+ rm -f $(DESTDIR)$(BINDIR)/mix
-+ rm -fr $(DESTDIR)$(DOCDIR)
-+ rm -f $(DESTDIR)$(BEAMDIR)/*.beam
-+ rm -f $(DESTDIR)$(BEAMDIR)/*.app
-+ rm -fr $(DESTDIR)$(BEAMDIR)
-+ rm -f $(DESTDIR)$(INCLUDEDIR)/*.hrl
-+ rm -fr $(DESTDIR)$(INCLUDEDIR)
-+ rm -fr $(DESTDIR)$(PBINDIR)
-+ rm -f $(DESTDIR)$(SODIR)/*.so
-+ rm -fr $(DESTDIR)$(SODIR)
-+ rm -f $(DESTDIR)$(MSGSDIR)/*.msg
-+ rm -fr $(DESTDIR)$(MSGSDIR)
-+ rm -f $(DESTDIR)$(CSSDIR)/*.css
-+ rm -fr $(DESTDIR)$(CSSDIR)
-+ rm -f $(DESTDIR)$(IMGDIR)/*.png
-+ rm -fr $(DESTDIR)$(IMGDIR)
-+ rm -f $(DESTDIR)$(JSDIR)/*.js
-+ rm -fr $(DESTDIR)$(JSDIR)
-+ rm -f $(DESTDIR)$(SQLDIR)/*.sql
-+ rm -fr $(DESTDIR)$(SQLDIR)
-+ rm -fr $(DESTDIR)$(LUADIR)/*.lua
-+ rm -fr $(DESTDIR)$(LUADIR)
-+ rm -fr $(DESTDIR)$(PRIVDIR)
-+ rm -fr $(DESTDIR)$(EJABBERDDIR)
-
- uninstall-all: uninstall-binary
-- rm -rf $(ETCDIR)
-- rm -rf $(EJABBERDDIR)
-- rm -rf $(SPOOLDIR)
-- rm -rf $(LOGDIR)
-+ rm -rf $(DESTDIR)$(ETCDIR)
-+ rm -rf $(DESTDIR)$(EJABBERDDIR)
-+ rm -rf $(DESTDIR)$(SPOOLDIR)
-+ rm -rf $(DESTDIR)$(LOGDIR)
-
- clean:
- rm -rf $(DEPSDIR)/.got
diff --git a/testing/ejabberd/ejabberd.confd b/testing/ejabberd/ejabberd.confd
deleted file mode 100644
index b92757ac4d0..00000000000
--- a/testing/ejabberd/ejabberd.confd
+++ /dev/null
@@ -1,5 +0,0 @@
-# Please configure everything at /etc/ejabberd/ejabberdctl.cfg
-# Put here only command line arguments for ejabberdctl (if any are required)
-
-#EJABBERDCTL_OPTS=""
-
diff --git a/testing/ejabberd/ejabberd.initd b/testing/ejabberd/ejabberd.initd
deleted file mode 100644
index 07824d2eaf7..00000000000
--- a/testing/ejabberd/ejabberd.initd
+++ /dev/null
@@ -1,54 +0,0 @@
-#!/sbin/openrc-run
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-extra_started_commands="reload"
-
-depend() {
- use dns
- need net
- provide jabber-server
-}
-
-start() {
- if ejabberdctl status >/dev/null 2>&1; then
- ewarn "ejabberd is already started (manually?)."
- return 0
- fi
- ebegin "Starting ejabberd"
- /usr/sbin/ejabberdctl ${EJABBERDCTL_OPTS} start
- eend $?
-}
-
-reload() {
- ebegin "Reloading ejabberd configuration"
- /usr/sbin/ejabberdctl ${EJABBERDCTL_OPTS} reload_config
- eend $?
-}
-
-stop() {
- ejabberdctl status >/dev/null 2>&1
- if test $? = 3; then
- ewarn "ejabberd is already stopped (manually?)."
- return 0
- fi
- ebegin "Stopping ejabberd"
- if /usr/sbin/ejabberdctl stop >/dev/null 2>&1; then
- cnt=0
- sleep 1
- while ejabberdctl status >/dev/null 2>&1 || test $? = 1; do
- echo -n .
- cnt=`expr $cnt + 1`
- if [ $cnt -ge 60 ] ; then
- eend 1
- break
- fi
- sleep 1
- done
- eend 0
- else
- eend 1
- einfo "Please, run '/usr/sbin/ejabberdctl stop' to see what's going on."
- fi
- eend 0
-}
diff --git a/testing/ejabberd/ejabberd.logrotate b/testing/ejabberd/ejabberd.logrotate
deleted file mode 100644
index 03069078aa7..00000000000
--- a/testing/ejabberd/ejabberd.logrotate
+++ /dev/null
@@ -1,12 +0,0 @@
-/var/log/ejabberd/ejabberd.log {
- weekly
- missingok
- rotate 10
- compress
- delaycompress
- ifempty
- nomail
- sharedscripts
- postrotate ejabberdctl --node ejabberd reopen-log > /dev/null
- endscript
-}
diff --git a/testing/ejabberd/ejabberd.pre-install b/testing/ejabberd/ejabberd.pre-install
deleted file mode 100644
index 58a48d78d38..00000000000
--- a/testing/ejabberd/ejabberd.pre-install
+++ /dev/null
@@ -1,6 +0,0 @@
-#!/bin/sh
-
-addgroup -S ejabberd 2>/dev/null
-adduser -S -D -H -h /var/lib/ejabberd -G ejabberd -g ejabberd ejabberd 2>/dev/null
-
-exit 0
diff --git a/testing/ejson/APKBUILD b/testing/ejson/APKBUILD
deleted file mode 100644
index bfc22df8cc0..00000000000
--- a/testing/ejson/APKBUILD
+++ /dev/null
@@ -1,45 +0,0 @@
-# Maintainer: Andy McLeod <andy@amcleod.ca>
-pkgname=ejson
-pkgver=1.2.1
-pkgrel=9
-pkgdesc="EJSON is a small library to manage encrypted secrets using asymmetric encryption."
-url="https://github.com/Shopify/ejson"
-arch="all"
-license="MIT"
-depends="mandoc" # Requires man to show help
-makedepends="go ronn"
-source="$pkgname-$pkgver.tar.gz::https://github.com/Shopify/$pkgname/archive/v$pkgver.tar.gz"
-
-_gourl=github.com/Shopify/ejson
-builddir="$srcdir"/src/$_gourl
-
-prepare() {
- mkdir -p "${builddir%/*}"
- mv "$srcdir"/$pkgname-$pkgver "$builddir"
- default_prepare
-}
-
-build() {
- export GOPATH="$srcdir"
- export GO111MODULE=off
- CGO_ENABLED=0 go build -v -o e${pkgname} github.com/Shopify/ejson/cmd/ejson
-
- # Overwrite bundle exec so it runs our ronn command from the system not
- # from some rubygems repo
- sed -i 's|^BUNDLE_EXEC=.*|BUNDLE_EXEC=exec|' Makefile
- make man
-}
-
-check() {
- go test -v ./...
-}
-
-package() {
- install -Dm755 e${pkgname} "$pkgdir"/usr/bin/ejson
-
- # Keep this in the main package, ejson calls into 'man' to show
- # the help string
- mkdir -p "$pkgdir"/usr/share
- mv build/man "$pkgdir"/usr/share/man/
-}
-sha512sums="cd49e70b1578f0f960b6d6d77499297bcee7eac3b8595109757697ef844ba8867c353e257105af9b90fdbcca3a08445ae0c9b666c7bc6db26ab7303b5834c5bd ejson-1.2.1.tar.gz"
diff --git a/testing/elastic-beats/APKBUILD b/testing/elastic-beats/APKBUILD
new file mode 100644
index 00000000000..37f3a6fba10
--- /dev/null
+++ b/testing/elastic-beats/APKBUILD
@@ -0,0 +1,152 @@
+# Contributor: Ramanathan Sivagurunathan <ramzthecoder@gmail.com>
+# Maintainer:
+pkgname=elastic-beats
+pkgver=8.13.1
+pkgrel=1
+pkgdesc="Lightweight shippers for Elasticsearch & Logstash"
+url="https://www.elastic.co/products/beats"
+# riscv64: https://github.com/elastic/go-concert/issues/51
+# s390x: doesn't build
+# 32-bit: not useful
+arch="all !s390x !armhf !armv7 !x86 !riscv64"
+license="Apache-2.0"
+makedepends="
+ go
+ mage
+ python3
+ "
+subpackages="
+ filebeat
+ filebeat-openrc:filebeat_openrc:noarch
+ metricbeat
+ metricbeat-openrc:metricbeat_openrc:noarch
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/elastic/beats/archive/refs/tags/v$pkgver.tar.gz
+ filebeat.initd
+ filebeat.confd
+ metricbeat.initd
+ metricbeat.confd
+ "
+builddir="$srcdir/beats-$pkgver"
+options="net" # go
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+case "$CARCH" in
+x86_64) ;;
+# flaky elsewhere
+*) options="$options !check" ;;
+esac
+
+prepare() {
+ default_prepare
+
+ git init -q
+ git config user.email "example@example.com"
+ git config user.name "example"
+ git add .
+ git commit -q -m "init"
+ git tag "v$pkgver"
+}
+
+build() {
+ mkdir -p bin
+
+ # just these two for now
+ (
+ msg "building filebeat"
+ cd filebeat
+ # mage build
+ go build -o filebeat main.go
+ # mage update
+ )
+ (
+ msg "building metricbeat"
+ cd metricbeat
+ # mage build
+ go build -o metricbeat main.go
+ # fails in some random step presently
+ # mage update || :
+ )
+}
+
+check() {
+ msg "testing filebeat"
+ # shellcheck disable=2046
+ go test $(go list ./filebeat/... | grep -Ev '(journald|inputsource/unix)')
+ msg "testing metricbeat"
+ # shellcheck disable=2046
+ go test $(go list ./metricbeat/... | grep -Ev '(module/system/service)')
+}
+
+package() {
+ mkdir -p "$pkgdir"/usr/share/metricbeat "$pkgdir"/usr/share/filebeat
+
+ install -Dm644 \
+ filebeat/filebeat.yml \
+ filebeat/filebeat.reference.yml \
+ -t "$pkgdir"/etc/filebeat
+ cp -r filebeat/modules.d "$pkgdir"/etc/filebeat/
+ cp -r filebeat/module "$pkgdir"/usr/share/filebeat/
+
+ install -Dm644 \
+ metricbeat/metricbeat.yml \
+ metricbeat/metricbeat.reference.yml \
+ -t "$pkgdir"/etc/metricbeat
+ cp -r metricbeat/modules.d "$pkgdir"/etc/metricbeat/
+ cp -r metricbeat/module "$pkgdir"/usr/share/metricbeat/
+
+ # remove random stuff
+ local elf; scanelf -BRA -F "%F" "$pkgdir"/usr/share | while read -r elf; do
+ rm -v "$elf"
+ done
+
+ install -Dm755 \
+ filebeat/filebeat \
+ metricbeat/metricbeat \
+ -t "$pkgdir"/usr/bin/
+}
+
+filebeat() {
+ pkgdesc="FileBeat - Lightweight shipper for logs"
+
+ amove \
+ usr/bin/filebeat \
+ etc/filebeat \
+ usr/share/filebeat
+}
+
+filebeat_openrc() {
+ pkgdesc="FileBeat - Lightweight shipper for logs (OpenRC service files)"
+ install_if="filebeat=$pkgver-r$pkgrel openrc"
+
+ install -Dm755 "$srcdir"/filebeat.initd "$subpkgdir"/etc/init.d/filebeat
+ install -Dm644 "$srcdir"/filebeat.confd "$subpkgdir"/etc/conf.d/filebeat
+}
+
+metricbeat() {
+ pkgdesc="MetricBeat - Lightweight shipper for system and service statistics"
+
+ amove \
+ usr/bin/metricbeat \
+ etc/metricbeat \
+ usr/share/metricbeat
+}
+
+metricbeat_openrc() {
+ pkgdesc="MetricBeat - Lightweight shipper for system and service statistics (OpenRC service files)"
+ install_if="metricbeat=$pkgver-r$pkgrel openrc"
+
+ install -Dm755 "$srcdir"/metricbeat.initd "$subpkgdir"/etc/init.d/metricbeat
+ install -Dm644 "$srcdir"/metricbeat.confd "$subpkgdir"/etc/conf.d/metricbeat
+}
+
+sha512sums="
+490081cedfab4bb19b62314106eb93ec2adb5ab53779c56aab630fd2d573a2d46f7476bf7cc3474eb5bfa5f33801303f955b82a456f21af477cfb2e0da782edf elastic-beats-8.13.1.tar.gz
+526b149419cf51e21ab4b7b49b208dbef81571afd04f2c40ab05297d5eb4b03e64e6c7a06d1acf8771b7b0664a552082ce6f50d5cbc4218aca810440d6185990 filebeat.initd
+f6168b10da75919cf16b2a32a5b25847e9e49aaea7415e49d2644960fc586c60714754cbe60f5a6d290cd7b9f8d3fd86287e46e63891825feb82f747e235d58d filebeat.confd
+4736fab0119bea080cb5a938d0b40e803967cbfac373d1b714a43176032ea36b9865f3c6658e33ff6befa150ccdf6ddcbfcf59bd31e4ae961d075623eac80ea6 metricbeat.initd
+a81cd8a99acd9086b78f36113f08f8fb91373144dc51aa6b4235362e25bc4ff3b1f5ebfe6efe272a106a73d16c1c9d23dd1da6645074d4fd2d3b8713b6071f68 metricbeat.confd
+"
diff --git a/testing/elastic-beats/filebeat.confd b/testing/elastic-beats/filebeat.confd
new file mode 100644
index 00000000000..2aa592694ea
--- /dev/null
+++ b/testing/elastic-beats/filebeat.confd
@@ -0,0 +1,5 @@
+# Filebeat startup
+filebeat_opts="-c /etc/filebeat/filebeat.yml -e"
+
+# comment to not use process supervisor
+supervisor=supervise-daemon
diff --git a/testing/elastic-beats/filebeat.initd b/testing/elastic-beats/filebeat.initd
new file mode 100644
index 00000000000..036fc9c5bdf
--- /dev/null
+++ b/testing/elastic-beats/filebeat.initd
@@ -0,0 +1,31 @@
+#!/sbin/openrc-run
+
+name=filebeat
+description="FileBeat - Lightweight shipper for logs"
+command=/usr/bin/filebeat
+command_args="$filebeat_opts"
+command_background=true
+pidfile=/run/${RC_SVCNAME}.pid
+output_log=/var/log/${RC_SVCNAME}.log
+error_log=/var/log/${RC_SVCNAME}.log
+
+extra_commands="checkconfig"
+description_checkconfig="Verify configuration file"
+
+start_pre() {
+ checkpath -f -m 0644 "$output_log"
+}
+
+depend() {
+ need net
+ after firewall
+}
+
+checkconfig() {
+ $command test config -c /etc/filebeat/filebeat.yml
+}
+
+start_pre() {
+ ebegin "checking configuration"
+ checkconfig
+}
diff --git a/testing/elastic-beats/metricbeat.confd b/testing/elastic-beats/metricbeat.confd
new file mode 100644
index 00000000000..04f5d195a82
--- /dev/null
+++ b/testing/elastic-beats/metricbeat.confd
@@ -0,0 +1,5 @@
+# Metricbeat startup
+metricbeat_opts="-c /etc/metricbeat/metricbeat.yml -e"
+
+# comment to not use process supervisor
+supervisor=supervise-daemon
diff --git a/testing/elastic-beats/metricbeat.initd b/testing/elastic-beats/metricbeat.initd
new file mode 100644
index 00000000000..5d84faed3bc
--- /dev/null
+++ b/testing/elastic-beats/metricbeat.initd
@@ -0,0 +1,31 @@
+#!/sbin/openrc-run
+
+name=metricbeat
+description="MetricBeat - Lightweight shipper for system and service statistics"
+command=/usr/bin/metricbeat
+command_args="$metricbeat_opts"
+command_background=true
+pidfile=/run/${RC_SVCNAME}.pid
+output_log=/var/log/${RC_SVCNAME}.log
+error_log=/var/log/${RC_SVCNAME}.log
+
+extra_commands="checkconfig"
+description_checkconfig="Verify configuration file"
+
+start_pre() {
+ checkpath -f -m 0644 "$output_log"
+}
+
+depend() {
+ need net
+ after firewall
+}
+
+checkconfig() {
+ $command test config -c /etc/metricbeat/metricbeat.yml
+}
+
+start_pre() {
+ ebegin "checking configuration"
+ checkconfig
+}
diff --git a/testing/electron-tasje/APKBUILD b/testing/electron-tasje/APKBUILD
new file mode 100644
index 00000000000..71648c7b8aa
--- /dev/null
+++ b/testing/electron-tasje/APKBUILD
@@ -0,0 +1,35 @@
+# Contributor: lauren n. liberda <lauren@selfisekai.rocks>
+# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
+pkgname=electron-tasje
+pkgver=0.7.1
+pkgrel=0
+pkgdesc="Tiny replacement for electron-builder"
+url="https://codeberg.org/selfisekai/electron_tasje/"
+arch="aarch64 x86_64" # only useful on platforms with electron
+license="Apache-2.0 OR MIT"
+makedepends="cargo cargo-auditable"
+source="electron_tasje-${_rev:-"$pkgver"}.tar.gz::https://codeberg.org/selfisekai/electron_tasje/archive/${_rev:-"v$pkgver"}.tar.gz"
+builddir="$srcdir/electron_tasje"
+
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release
+}
+
+check() {
+ cargo test
+}
+
+package() {
+ install -Dm755 target/release/tasje "$pkgdir"/usr/bin/tasje
+}
+
+sha512sums="
+665ccbd6cb357c25d55daed4ad3b3ce008da258054951d9d069a5b12e72dd5812d534f906868e6b18e78949f058069a961c394c6f21ab3b3fab5393c330445e5 electron_tasje-0.7.1.tar.gz
+"
diff --git a/testing/electron/0001-src-fix-HasOnly-capability-in-node-credentials.patch b/testing/electron/0001-src-fix-HasOnly-capability-in-node-credentials.patch
new file mode 100644
index 00000000000..616f0f06c2b
--- /dev/null
+++ b/testing/electron/0001-src-fix-HasOnly-capability-in-node-credentials.patch
@@ -0,0 +1,55 @@
+From 0a26dd24fd73f5f5a34b4ba8d1441dbf3a426b3c Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Tobias=20Nie=C3=9Fen?= <tniessen@tnie.de>
+Date: Sat, 4 Nov 2023 00:39:57 +0000
+Subject: [PATCH 1/6] src: fix HasOnly(capability) in node::credentials
+
+SYS_capget with _LINUX_CAPABILITY_VERSION_3 returns the process's
+permitted capabilities as two 32-bit values. To determine if the only
+permitted capability is indeed CAP_NET_BIND_SERVICE, it is necessary to
+check both of those values.
+
+Not doing so creates a vulnerability that potentially allows
+unprivileged users to inject code into a privileged Node.js process
+through environment variables such as NODE_OPTIONS.
+
+PR-URL: https://github.com/nodejs-private/node-private/pull/505
+Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
+CVE-ID: CVE-2024-21892
+---
+ src/node_credentials.cc | 13 ++++++-------
+ 1 file changed, 6 insertions(+), 7 deletions(-)
+
+diff --git a/third_party/electron_node/src/node_credentials.cc b/third_party/electron_node/src/node_credentials.cc
+index 52abaab7a6..f2980007b9 100644
+--- a/third_party/electron_node/src/node_credentials.cc
++++ b/third_party/electron_node/src/node_credentials.cc
+@@ -52,7 +52,7 @@ namespace credentials {
+ bool HasOnly(int capability) {
+ DCHECK(cap_valid(capability));
+
+- struct __user_cap_data_struct cap_data[2];
++ struct __user_cap_data_struct cap_data[_LINUX_CAPABILITY_U32S_3];
+ struct __user_cap_header_struct cap_header_data = {
+ _LINUX_CAPABILITY_VERSION_3,
+ getpid()};
+@@ -61,12 +61,11 @@ bool HasOnly(int capability) {
+ if (syscall(SYS_capget, &cap_header_data, &cap_data) != 0) {
+ return false;
+ }
+- if (capability < 32) {
+- return cap_data[0].permitted ==
+- static_cast<unsigned int>(CAP_TO_MASK(capability));
+- }
+- return cap_data[1].permitted ==
+- static_cast<unsigned int>(CAP_TO_MASK(capability));
++
++ static_assert(arraysize(cap_data) == 2);
++ return cap_data[CAP_TO_INDEX(capability)].permitted ==
++ static_cast<unsigned int>(CAP_TO_MASK(capability)) &&
++ cap_data[1 - CAP_TO_INDEX(capability)].permitted == 0;
+ }
+ #endif
+
+--
+2.43.1
+
diff --git a/testing/electron/0002-http-add-maximum-chunk-extension-size.patch b/testing/electron/0002-http-add-maximum-chunk-extension-size.patch
new file mode 100644
index 00000000000..fec3ff67bd4
--- /dev/null
+++ b/testing/electron/0002-http-add-maximum-chunk-extension-size.patch
@@ -0,0 +1,273 @@
+From 01d3bb793a5ef3bf0a36dde868626869e09fb558 Mon Sep 17 00:00:00 2001
+From: Paolo Insogna <paolo@cowtech.it>
+Date: Wed, 3 Jan 2024 07:23:15 +0100
+Subject: [PATCH] http: add maximum chunk extension size
+
+PR-URL: https://github.com/nodejs-private/node-private/pull/519
+Fixes: https://hackerone.com/reports/2233486
+Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
+Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
+Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
+CVE-ID: CVE-2024-22019
+---
+ doc/api/errors.md | 12 ++
+ lib/_http_server.js | 8 ++
+ src/node_http_parser.cc | 23 ++-
+ .../test-http-chunk-extensions-limit.js | 131 ++++++++++++++++++
+ 4 files changed, 171 insertions(+), 3 deletions(-)
+ create mode 100644 test/parallel/test-http-chunk-extensions-limit.js
+
+diff --git a/third_party/electron_node/doc/api/errors.md b/third_party/electron_node/doc/api/errors.md
+index 95ad3c9c671..9429baff516 100644
+--- a/third_party/electron_node/doc/api/errors.md
++++ b/third_party/electron_node/doc/api/errors.md
+@@ -3140,6 +3140,18 @@ malconfigured clients, if more than 8 KiB of HTTP header data is received then
+ HTTP parsing will abort without a request or response object being created, and
+ an `Error` with this code will be emitted.
+
++<a id="HPE_CHUNK_EXTENSIONS_OVERFLOW"></a>
++
++### `HPE_CHUNK_EXTENSIONS_OVERFLOW`
++
++<!-- YAML
++added: REPLACEME
++-->
++
++Too much data was received for a chunk extensions. In order to protect against
++malicious or malconfigured clients, if more than 16 KiB of data is received
++then an `Error` with this code will be emitted.
++
+ <a id="HPE_UNEXPECTED_CONTENT_LENGTH"></a>
+
+ ### `HPE_UNEXPECTED_CONTENT_LENGTH`
+diff --git a/third_party/electron_node/lib/_http_server.js b/third_party/electron_node/lib/_http_server.js
+index c62ea175995..c512653e60e 100644
+--- a/third_party/electron_node/lib/_http_server.js
++++ b/third_party/electron_node/lib/_http_server.js
+@@ -857,6 +857,11 @@ const requestHeaderFieldsTooLargeResponse = Buffer.from(
+ 'Connection: close\r\n\r\n', 'ascii',
+ );
+
++const requestChunkExtensionsTooLargeResponse = Buffer.from(
++ `HTTP/1.1 413 ${STATUS_CODES[413]}\r\n` +
++ 'Connection: close\r\n\r\n', 'ascii',
++);
++
+ function warnUnclosedSocket() {
+ if (warnUnclosedSocket.emitted) {
+ return;
+@@ -892,6 +897,9 @@ function socketOnError(e) {
+ case 'HPE_HEADER_OVERFLOW':
+ response = requestHeaderFieldsTooLargeResponse;
+ break;
++ case 'HPE_CHUNK_EXTENSIONS_OVERFLOW':
++ response = requestChunkExtensionsTooLargeResponse;
++ break;
+ case 'ERR_HTTP_REQUEST_TIMEOUT':
+ response = requestTimeoutResponse;
+ break;
+diff --git a/third_party/electron_node/src/node_http_parser.cc b/third_party/electron_node/src/node_http_parser.cc
+index a12d89c3cd6..c190eace435 100644
+--- a/third_party/electron_node/src/node_http_parser.cc
++++ b/third_party/electron_node/src/node_http_parser.cc
+@@ -79,6 +79,8 @@ const uint32_t kOnExecute = 5;
+ const uint32_t kOnTimeout = 6;
+ // Any more fields than this will be flushed into JS
+ const size_t kMaxHeaderFieldsCount = 32;
++// Maximum size of chunk extensions
++const size_t kMaxChunkExtensionsSize = 16384;
+
+ const uint32_t kLenientNone = 0;
+ const uint32_t kLenientHeaders = 1 << 0;
+@@ -261,6 +263,7 @@ class Parser : public AsyncWrap, public StreamListener {
+
+ num_fields_ = num_values_ = 0;
+ headers_completed_ = false;
++ chunk_extensions_nread_ = 0;
+ last_message_start_ = uv_hrtime();
+ url_.Reset();
+ status_message_.Reset();
+@@ -516,9 +519,22 @@ class Parser : public AsyncWrap, public StreamListener {
+ return 0;
+ }
+
+- // Reset nread for the next chunk
++ int on_chunk_extension(const char* at, size_t length) {
++ chunk_extensions_nread_ += length;
++
++ if (chunk_extensions_nread_ > kMaxChunkExtensionsSize) {
++ llhttp_set_error_reason(&parser_,
++ "HPE_CHUNK_EXTENSIONS_OVERFLOW:Chunk extensions overflow");
++ return HPE_USER;
++ }
++
++ return 0;
++ }
++
++ // Reset nread for the next chunk and also reset the extensions counter
+ int on_chunk_header() {
+ header_nread_ = 0;
++ chunk_extensions_nread_ = 0;
+ return 0;
+ }
+
+@@ -986,6 +1002,7 @@ class Parser : public AsyncWrap, public StreamListener {
+ bool headers_completed_ = false;
+ bool pending_pause_ = false;
+ uint64_t header_nread_ = 0;
++ uint64_t chunk_extensions_nread_ = 0;
+ uint64_t max_http_header_size_;
+ uint64_t last_message_start_;
+ ConnectionsList* connectionsList_;
+@@ -1164,9 +1181,9 @@ const llhttp_settings_t Parser::settings = {
+ Proxy<DataCall, &Parser::on_header_value>::Raw,
+
+ // on_chunk_extension_name
+- nullptr,
++ Proxy<DataCall, &Parser::on_chunk_extension>::Raw,
+ // on_chunk_extension_value
+- nullptr,
++ Proxy<DataCall, &Parser::on_chunk_extension>::Raw,
+
+ Proxy<Call, &Parser::on_headers_complete>::Raw,
+ Proxy<DataCall, &Parser::on_body>::Raw,
+diff --git a/third_party/electron_node/test/parallel/test-http-chunk-extensions-limit.js b/third_party/electron_node/test/parallel/test-http-chunk-extensions-limit.js
+new file mode 100644
+index 00000000000..6868b3da6cb
+--- /dev/null
++++ b/third_party/electron_node/test/parallel/test-http-chunk-extensions-limit.js
+@@ -0,0 +1,131 @@
++'use strict';
++
++const common = require('../common');
++const http = require('http');
++const net = require('net');
++const assert = require('assert');
++
++// Verify that chunk extensions are limited in size when sent all together.
++{
++ const server = http.createServer((req, res) => {
++ req.on('end', () => {
++ res.writeHead(200, { 'Content-Type': 'text/plain' });
++ res.end('bye');
++ });
++
++ req.resume();
++ });
++
++ server.listen(0, () => {
++ const sock = net.connect(server.address().port);
++ let data = '';
++
++ sock.on('data', (chunk) => data += chunk.toString('utf-8'));
++
++ sock.on('end', common.mustCall(function() {
++ assert.strictEqual(data, 'HTTP/1.1 413 Payload Too Large\r\nConnection: close\r\n\r\n');
++ server.close();
++ }));
++
++ sock.end('' +
++ 'GET / HTTP/1.1\r\n' +
++ 'Host: localhost:8080\r\n' +
++ 'Transfer-Encoding: chunked\r\n\r\n' +
++ '2;' + 'A'.repeat(20000) + '=bar\r\nAA\r\n' +
++ '0\r\n\r\n'
++ );
++ });
++}
++
++// Verify that chunk extensions are limited in size when sent in intervals.
++{
++ const server = http.createServer((req, res) => {
++ req.on('end', () => {
++ res.writeHead(200, { 'Content-Type': 'text/plain' });
++ res.end('bye');
++ });
++
++ req.resume();
++ });
++
++ server.listen(0, () => {
++ const sock = net.connect(server.address().port);
++ let remaining = 20000;
++ let data = '';
++
++ const interval = setInterval(
++ () => {
++ if (remaining > 0) {
++ sock.write('A'.repeat(1000));
++ } else {
++ sock.write('=bar\r\nAA\r\n0\r\n\r\n');
++ clearInterval(interval);
++ }
++
++ remaining -= 1000;
++ },
++ common.platformTimeout(20),
++ ).unref();
++
++ sock.on('data', (chunk) => data += chunk.toString('utf-8'));
++
++ sock.on('end', common.mustCall(function() {
++ assert.strictEqual(data, 'HTTP/1.1 413 Payload Too Large\r\nConnection: close\r\n\r\n');
++ server.close();
++ }));
++
++ sock.write('' +
++ 'GET / HTTP/1.1\r\n' +
++ 'Host: localhost:8080\r\n' +
++ 'Transfer-Encoding: chunked\r\n\r\n' +
++ '2;'
++ );
++ });
++}
++
++// Verify the chunk extensions is correctly reset after a chunk
++{
++ const server = http.createServer((req, res) => {
++ req.on('end', () => {
++ res.writeHead(200, { 'content-type': 'text/plain', 'connection': 'close', 'date': 'now' });
++ res.end('bye');
++ });
++
++ req.resume();
++ });
++
++ server.listen(0, () => {
++ const sock = net.connect(server.address().port);
++ let data = '';
++
++ sock.on('data', (chunk) => data += chunk.toString('utf-8'));
++
++ sock.on('end', common.mustCall(function() {
++ assert.strictEqual(
++ data,
++ 'HTTP/1.1 200 OK\r\n' +
++ 'content-type: text/plain\r\n' +
++ 'connection: close\r\n' +
++ 'date: now\r\n' +
++ 'Transfer-Encoding: chunked\r\n' +
++ '\r\n' +
++ '3\r\n' +
++ 'bye\r\n' +
++ '0\r\n' +
++ '\r\n',
++ );
++
++ server.close();
++ }));
++
++ sock.end('' +
++ 'GET / HTTP/1.1\r\n' +
++ 'Host: localhost:8080\r\n' +
++ 'Transfer-Encoding: chunked\r\n\r\n' +
++ '2;' + 'A'.repeat(10000) + '=bar\r\nAA\r\n' +
++ '2;' + 'A'.repeat(10000) + '=bar\r\nAA\r\n' +
++ '2;' + 'A'.repeat(10000) + '=bar\r\nAA\r\n' +
++ '0\r\n\r\n'
++ );
++ });
++}
+--
+2.44.0
+
diff --git a/testing/electron/0004-lib-update-undici-to-v5.28.3.patch b/testing/electron/0004-lib-update-undici-to-v5.28.3.patch
new file mode 100644
index 00000000000..a6719cdca88
--- /dev/null
+++ b/testing/electron/0004-lib-update-undici-to-v5.28.3.patch
@@ -0,0 +1,46 @@
+From 6027fadc38bd33317ac1f93629c72153741fbdc8 Mon Sep 17 00:00:00 2001
+From: Matteo Collina <hello@matteocollina.com>
+Date: Mon, 5 Feb 2024 17:21:04 +0100
+Subject: [PATCH 4/6] lib: update undici to v5.28.3
+
+Signed-off-by: Matteo Collina <hello@matteocollina.com>
+PR-URL: https://github.com/nodejs-private/node-private/pull/536
+CVE-ID: CVE-2024-24758
+
+backported (just secfix part) to v18.18.x
+Co-developed-by: lauren n. liberda <lauren@selfisekai.rocks>
+Signed-off-by: lauren n. liberda <lauren@selfisekai.rocks>
+---
+ deps/undici/src/lib/fetch/index.js | 3 +++
+ deps/undici/undici.js | 1 +
+ 2 files changed, 4 insertions(+)
+
+diff --git a/third_party/electron_node/deps/undici/src/lib/fetch/index.js b/third_party/electron_node/deps/undici/src/lib/fetch/index.js
+index 9f09670f82..5ef7a3f069 100644
+--- a/third_party/electron_node/deps/undici/src/lib/fetch/index.js
++++ b/third_party/electron_node/deps/undici/src/lib/fetch/index.js
+@@ -1201,6 +1201,9 @@ async function httpRedirectFetch (fetchParams, response) {
+ // https://fetch.spec.whatwg.org/#cors-non-wildcard-request-header-name
+ request.headersList.delete('authorization')
+
++ // https://fetch.spec.whatwg.org/#authentication-entries
++ request.headersList.delete('proxy-authorization', true)
++
+ // "Cookie" and "Host" are forbidden request-headers, which undici doesn't implement.
+ request.headersList.delete('cookie')
+ request.headersList.delete('host')
+diff --git a/third_party/electron_node/deps/undici/undici.js b/third_party/electron_node/deps/undici/undici.js
+index 0c3dc7ebfc..84a3d63ca1 100644
+--- a/third_party/electron_node/deps/undici/undici.js
++++ b/third_party/electron_node/deps/undici/undici.js
+@@ -9679,6 +9679,7 @@ var require_fetch = __commonJS({
+ }
+ if (!sameOrigin(requestCurrentURL(request), locationURL)) {
+ request.headersList.delete("authorization");
++ request.headersList.delete("proxy-authorization", true);
+ request.headersList.delete("cookie");
+ request.headersList.delete("host");
+ }
+--
+2.43.1
+
diff --git a/testing/electron/0005-zlib-pause-stream-if-outgoing-buffer-is-full.patch b/testing/electron/0005-zlib-pause-stream-if-outgoing-buffer-is-full.patch
new file mode 100644
index 00000000000..96f55cbdb4b
--- /dev/null
+++ b/testing/electron/0005-zlib-pause-stream-if-outgoing-buffer-is-full.patch
@@ -0,0 +1,146 @@
+From c7201faa5a436566c01f8fa60ad58d631430850b Mon Sep 17 00:00:00 2001
+From: Matteo Collina <hello@matteocollina.com>
+Date: Tue, 6 Feb 2024 16:47:20 +0100
+Subject: [PATCH 5/6] zlib: pause stream if outgoing buffer is full
+
+Signed-off-by: Matteo Collina <hello@matteocollina.com>
+PR-URL: https://github.com/nodejs-private/node-private/pull/540
+Reviewed-By: Robert Nagy <ronagy@icloud.com>
+Ref: https://hackerone.com/reports/2284065
+PR-URL: https://github.com/nodejs-private/node-private/pull/542
+CVE-ID: CVE-2024-22025
+---
+ lib/zlib.js | 33 +++++++++++++++++++-------
+ test/parallel/test-zlib-brotli-16GB.js | 22 +++++++++++++++++
+ test/parallel/test-zlib-params.js | 24 ++++++++++++-------
+ 3 files changed, 62 insertions(+), 17 deletions(-)
+ create mode 100644 test/parallel/test-zlib-brotli-16GB.js
+
+diff --git a/third_party/electron_node/lib/zlib.js b/third_party/electron_node/lib/zlib.js
+index 2b90c6f91f..5e6a979370 100644
+--- a/third_party/electron_node/lib/zlib.js
++++ b/third_party/electron_node/lib/zlib.js
+@@ -560,10 +560,11 @@ function processCallback() {
+ self.bytesWritten += inDelta;
+
+ const have = handle.availOutBefore - availOutAfter;
++ let streamBufferIsFull = false;
+ if (have > 0) {
+ const out = self._outBuffer.slice(self._outOffset, self._outOffset + have);
+ self._outOffset += have;
+- self.push(out);
++ streamBufferIsFull = !self.push(out);
+ } else {
+ assert(have === 0, 'have should not go down');
+ }
+@@ -588,13 +589,29 @@ function processCallback() {
+ handle.inOff += inDelta;
+ handle.availInBefore = availInAfter;
+
+- this.write(handle.flushFlag,
+- this.buffer, // in
+- handle.inOff, // in_off
+- handle.availInBefore, // in_len
+- self._outBuffer, // out
+- self._outOffset, // out_off
+- self._chunkSize); // out_len
++
++ if (!streamBufferIsFull) {
++ this.write(handle.flushFlag,
++ this.buffer, // in
++ handle.inOff, // in_off
++ handle.availInBefore, // in_len
++ self._outBuffer, // out
++ self._outOffset, // out_off
++ self._chunkSize); // out_len
++ } else {
++ const oldRead = self._read;
++ self._read = (n) => {
++ self._read = oldRead;
++ this.write(handle.flushFlag,
++ this.buffer, // in
++ handle.inOff, // in_off
++ handle.availInBefore, // in_len
++ self._outBuffer, // out
++ self._outOffset, // out_off
++ self._chunkSize); // out_len
++ self._read(n);
++ };
++ }
+ return;
+ }
+
+diff --git a/third_party/electron_node/test/parallel/test-zlib-brotli-16GB.js b/third_party/electron_node/test/parallel/test-zlib-brotli-16GB.js
+new file mode 100644
+index 0000000000..ba4f7ef5ae
+--- /dev/null
++++ b/third_party/electron_node/test/parallel/test-zlib-brotli-16GB.js
+@@ -0,0 +1,22 @@
++'use strict';
++
++const common = require('../common');
++const { createBrotliDecompress } = require('node:zlib');
++const strictEqual = require('node:assert').strictEqual;
++
++// This tiny HEX string is a 16GB file.
++// This test verifies that the stream actually stops.
++/* eslint-disable max-len */
++const content = 'cfffff7ff82700e2b14020f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c32200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bffcfffff7ff82700e2b00040f7fe9ffffffff04f00c4610180eefd3fffffffe19f0088c30200ddfb7ffeffffc33f0110870500baf7fffcffff877f02200e0b0074effff9ffff0fff04401c1600e8defff3ffff1ffe0980382c00d0bdffe7ffff3ffc1300715800a07bff3f';
++
++const buf = Buffer.from(content, 'hex');
++
++const decoder = createBrotliDecompress();
++decoder.end(buf);
++
++// We need to wait to verify that the libuv thread pool had time
++// to process the data and the buffer is not empty.
++setTimeout(common.mustCall(() => {
++ // There is only one chunk in the buffer
++ strictEqual(decoder._readableState.buffer.length, 1);
++}), common.platformTimeout(100));
+diff --git a/third_party/electron_node/test/parallel/test-zlib-params.js b/third_party/electron_node/test/parallel/test-zlib-params.js
+index 30d4f133ad..18271fe022 100644
+--- a/third_party/electron_node/test/parallel/test-zlib-params.js
++++ b/third_party/electron_node/test/parallel/test-zlib-params.js
+@@ -12,23 +12,29 @@ const deflater = zlib.createDeflate(opts);
+ const chunk1 = file.slice(0, chunkSize);
+ const chunk2 = file.slice(chunkSize);
+ const blkhdr = Buffer.from([0x00, 0x5a, 0x82, 0xa5, 0x7d]);
+-const expected = Buffer.concat([blkhdr, chunk2]);
+-let actual;
++const blkftr = Buffer.from('010000ffff7dac3072', 'hex');
++const expected = Buffer.concat([blkhdr, chunk2, blkftr]);
++const bufs = [];
++
++function read() {
++ let buf;
++ while ((buf = deflater.read()) !== null) {
++ bufs.push(buf);
++ }
++}
+
+ deflater.write(chunk1, function() {
+ deflater.params(0, zlib.constants.Z_DEFAULT_STRATEGY, function() {
+ while (deflater.read());
+- deflater.end(chunk2, function() {
+- const bufs = [];
+- let buf;
+- while ((buf = deflater.read()) !== null)
+- bufs.push(buf);
+- actual = Buffer.concat(bufs);
+- });
++
++ deflater.on('readable', read);
++
++ deflater.end(chunk2);
+ });
+ while (deflater.read());
+ });
+
+ process.once('exit', function() {
++ const actual = Buffer.concat(bufs);
+ assert.deepStrictEqual(actual, expected);
+ });
+--
+2.43.1
+
diff --git a/testing/electron/0006-deps-fix-GHSA-f74f-cvh7-c6q6-CVE-2024-24806.patch b/testing/electron/0006-deps-fix-GHSA-f74f-cvh7-c6q6-CVE-2024-24806.patch
new file mode 100644
index 00000000000..2d7ba8cce6e
--- /dev/null
+++ b/testing/electron/0006-deps-fix-GHSA-f74f-cvh7-c6q6-CVE-2024-24806.patch
@@ -0,0 +1,74 @@
+From 4c475d0047768f2d3cec4fe628d85d601374c2fe Mon Sep 17 00:00:00 2001
+From: Santiago Gimeno <santiago.gimeno@gmail.com>
+Date: Thu, 8 Feb 2024 00:17:40 +0100
+Subject: [PATCH 6/6] deps: fix GHSA-f74f-cvh7-c6q6/CVE-2024-24806
+
+Refs: https://github.com/libuv/libuv/security/advisories/GHSA-f74f-cvh7-c6q6
+PR-URL: https://github.com/nodejs/node/pull/51614
+---
+ deps/uv/src/idna.c | 8 ++++++--
+ deps/uv/test/test-idna.c | 7 ++++++-
+ 2 files changed, 12 insertions(+), 3 deletions(-)
+
+diff --git a/third_party/electron_node/deps/uv/src/idna.c b/third_party/electron_node/deps/uv/src/idna.c
+index 93d982ca01..858b19d00e 100644
+--- a/third_party/electron_node/deps/uv/src/idna.c
++++ b/third_party/electron_node/deps/uv/src/idna.c
+@@ -274,6 +274,9 @@ long uv__idna_toascii(const char* s, const char* se, char* d, char* de) {
+ char* ds;
+ int rc;
+
++ if (s == se)
++ return UV_EINVAL;
++
+ ds = d;
+
+ si = s;
+@@ -308,8 +311,9 @@ long uv__idna_toascii(const char* s, const char* se, char* d, char* de) {
+ return rc;
+ }
+
+- if (d < de)
+- *d++ = '\0';
++ if (d >= de)
++ return UV_EINVAL;
+
++ *d++ = '\0';
+ return d - ds; /* Number of bytes written. */
+ }
+diff --git a/third_party/electron_node/deps/uv/test/test-idna.c b/third_party/electron_node/deps/uv/test/test-idna.c
+index f4fad9653d..37da38de2d 100644
+--- a/third_party/electron_node/deps/uv/test/test-idna.c
++++ b/third_party/electron_node/deps/uv/test/test-idna.c
+@@ -99,6 +99,7 @@ TEST_IMPL(utf8_decode1) {
+ TEST_IMPL(utf8_decode1_overrun) {
+ const char* p;
+ char b[1];
++ char c[1];
+
+ /* Single byte. */
+ p = b;
+@@ -112,6 +113,10 @@ TEST_IMPL(utf8_decode1_overrun) {
+ ASSERT_EQ((unsigned) -1, uv__utf8_decode1(&p, b + 1));
+ ASSERT_EQ(p, b + 1);
+
++ b[0] = 0x7F;
++ ASSERT_EQ(UV_EINVAL, uv__idna_toascii(b, b + 0, c, c + 1));
++ ASSERT_EQ(UV_EINVAL, uv__idna_toascii(b, b + 1, c, c + 1));
++
+ return 0;
+ }
+
+@@ -145,8 +150,8 @@ TEST_IMPL(idna_toascii) {
+ /* Illegal inputs. */
+ F("\xC0\x80\xC1\x80", UV_EINVAL); /* Overlong UTF-8 sequence. */
+ F("\xC0\x80\xC1\x80.com", UV_EINVAL); /* Overlong UTF-8 sequence. */
++ F("", UV_EINVAL);
+ /* No conversion. */
+- T("", "");
+ T(".", ".");
+ T(".com", ".com");
+ T("example", "example");
+--
+2.43.1
+
diff --git a/testing/electron/APKBUILD b/testing/electron/APKBUILD
new file mode 100644
index 00000000000..d3c5e699305
--- /dev/null
+++ b/testing/electron/APKBUILD
@@ -0,0 +1,589 @@
+# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
+pkgname=electron
+pkgver=29.3.0
+_semver="${pkgver/_beta/-beta.}"
+pkgrel=1
+_chromium=122.0.6261.156
+_depot_tools=b5509953468edd0906f2dc297886939abbd2bed5
+pkgdesc="Electron cross-platform desktop toolkit"
+url="https://github.com/electron/electron"
+arch="aarch64 x86_64" # same as chromium
+license="MIT"
+depends="gtk+3.0 so:libudev.so.1 xdg-utils"
+makedepends="
+ alsa-lib-dev
+ aom-dev
+ base64-dev
+ bash
+ brotli-dev
+ bsd-compat-headers
+ bzip2-dev
+ c-ares-dev
+ cairo-dev
+ clang-dev
+ clang-extra-tools
+ compiler-rt
+ crc32c-dev
+ cups-dev
+ curl-dev
+ dav1d-dev
+ dbus-glib-dev
+ double-conversion-dev
+ eudev-dev
+ ffmpeg-dev
+ findutils
+ flac-dev
+ flex
+ freetype-dev
+ gperf
+ gtk+3.0-dev
+ gn
+ gzip
+ harfbuzz-dev
+ hdrhistogram-c-dev
+ highway-dev
+ hunspell-dev
+ http-parser-dev
+ hwdata-dev
+ java-jdk
+ jpeg-dev
+ krb5-dev
+ lcms2-dev
+ libarchive-tools
+ libavif-dev
+ libbsd-dev
+ libcap-dev
+ libdrm-dev
+ libevent-dev
+ libexif-dev
+ libgcrypt-dev
+ libjpeg-turbo-dev
+ libnotify-dev
+ libsecret-dev
+ libusb-dev
+ libva-dev
+ libwebp-dev
+ libxcomposite-dev
+ libxcursor-dev
+ libxinerama-dev
+ libxml2-dev
+ libxrandr-dev
+ libxscrnsaver-dev
+ libxslt-dev
+ linux-headers
+ lld
+ llvm
+ mesa-dev
+ minizip-dev
+ nghttp2-dev
+ nodejs
+ npm
+ nss-dev
+ openh264-dev
+ opus-dev
+ pciutils-dev
+ perl
+ pipewire-dev
+ pulseaudio-dev
+ py3-httplib2
+ py3-jinja2
+ py3-parsing
+ py3-setuptools
+ py3-six
+ python3
+ qt5-qtbase-dev
+ rsync
+ rust
+ samurai
+ speex-dev
+ sqlite-dev
+ xcb-proto
+ yarn
+ zlib-dev
+ zstd-dev
+ "
+subpackages="$pkgname-lang $pkgname-dev"
+# the lower patches are specific to electron, the top ones are from the equivalent chromium version
+source="https://ab-sn.lnl.gay/electron-$_semver-$_chromium.tar.zst
+ chromium-icu-74.patch
+ chromium-revert-drop-of-system-java.patch
+ compiler.patch
+ disable-failing-tests.patch
+ fc-cache-version.patch
+ fix-missing-cstdint-include-musl.patch
+ fix-opus.patch
+ fstatat-32bit.patch
+ gdbinit.patch
+ generic-sensor-include.patch
+ import-version.patch
+ libstdc++13.patch
+ mman.patch
+ musl-auxv.patch
+ musl-sandbox.patch
+ musl-tid-caching.patch
+ musl-v8-monotonic-pthread-cont_timedwait.patch
+ no-execinfo.patch
+ no-mallinfo.patch
+ no-res-ninit-nclose.patch
+ no-sandbox-settls.patch
+ partalloc-no-tagging-arm64.patch
+ perfetto-libstdc++.patch
+ pvalloc.patch
+ random-fixes.patch
+ quiche-array.patch
+ system-zstd.patch
+ temp-failure-retry.patch
+ yes-musl.patch
+ disable-dns_config_service.patch
+
+ icon.patch
+ python-jinja-3.10.patch
+ webpack-hash.patch
+ unbundle-node.patch
+ 0001-src-fix-HasOnly-capability-in-node-credentials.patch
+ 0002-http-add-maximum-chunk-extension-size.patch
+ 0004-lib-update-undici-to-v5.28.3.patch
+ 0005-zlib-pause-stream-if-outgoing-buffer-is-full.patch
+ 0006-deps-fix-GHSA-f74f-cvh7-c6q6-CVE-2024-24806.patch
+ node-configure-distutils.patch
+ node-gyp-distutils.patch
+
+ default.conf
+ electron.desktop
+ electron-launcher.sh
+ "
+# tests are todo for some base checks
+options="!check net suid"
+builddir="$srcdir/electron-$_semver-$_chromium"
+
+export PATH="$PATH:/usr/lib/qt5/bin"
+
+# clang uses much less memory (and this doesn't support gcc)
+export CC=clang
+export CXX=clang++
+
+# required to find the tools
+export AR=llvm-ar
+export NM=llvm-nm
+export LD=clang++
+
+# less log spam, reproducible
+export CFLAGS="${CFLAGS/-g/} -O2 -Wno-unknown-warning-option -Wno-builtin-macro-redefined -Wno-deprecated-declarations"
+export CXXFLAGS="${CXXFLAGS/-g/} -O2 -Wno-unknown-warning-option -Wno-builtin-macro-redefined -Wno-deprecated-declarations"
+export CPPFLAGS="${CPPFLAGS/-g/} -D__DATE__= -D__TIME__= -D__TIMESTAMP__="
+case "$CARCH" in
+ aarch64|arm*|riscv64)
+ # not supported by clang here
+ export CFLAGS="${CFLAGS/-fstack-clash-protection}"
+ export CXXFLAGS="${CXXFLAGS/-fstack-clash-protection}"
+ ;;
+esac
+
+# breaks chromium-based stuff
+export CXXFLAGS="${CXXFLAGS/-D_GLIBCXX_ASSERTIONS=1}"
+
+# creates a dist tarball that does not need to git clone everything at build time.
+_distbucket="sakamoto/lnl-aports-snapshots/"
+snapshot() {
+ deps
+ # vpython3 execs system python3 with this set
+ export VPYTHON_BYPASS="manually managed python not supported by chrome operations"
+ export CHROMIUM_BUILDTOOLS_PATH="$srcdir/src/buildtools"
+ mkdir -p "$srcdir"
+ cd "$srcdir"
+
+ if ! [ -d depot_tools ]; then
+ (
+ git clone --depth 1 -b main https://chromium.googlesource.com/chromium/tools/depot_tools.git
+ cd depot_tools
+ git fetch --depth 1 origin $_depot_tools
+ git checkout $_depot_tools
+ )
+ fi
+
+ export PATH="$PATH:$srcdir/depot_tools"
+
+ echo "solutions = [
+ {
+ \"name\": \"src/electron\",
+ \"url\": \"https://github.com/electron/electron.git@v$_semver\",
+ \"deps_file\": \"DEPS\",
+ \"managed\": False,
+ \"custom_deps\": {
+ \"src\": \"https://chromium.googlesource.com/chromium/src.git@$_chromium\",
+ },
+ \"custom_vars\": {},
+ },
+ ]" > .gclient
+
+ python3 depot_tools/gclient.py sync \
+ --no-history \
+ --nohooks
+
+ python3 src/build/landmines.py
+ python3 src/build/util/lastchange.py -o src/build/util/LASTCHANGE
+ python3 src/build/util/lastchange.py -s src/third_party/dawn \
+ --revision src/gpu/webgpu/DAWN_VERSION
+ python3 src/build/util/lastchange.py -m GPU_LISTS_VERSION \
+ --revision-id-only --header src/gpu/config/gpu_lists_version.h
+ python3 src/build/util/lastchange.py -m SKIA_COMMIT_HASH \
+ -s src/third_party/skia --header src/skia/ext/skia_commit_hash.h
+
+ # rolled newer chromium with it included
+ sed -i '/reland_mojom_ts_generator_handle_empty_module_path_identically_to.patch/d' src/electron/patches/chromium/.patches
+
+ python3 src/electron/script/apply_all_patches.py \
+ src/electron/patches/config.json
+
+ python3 src/tools/update_pgo_profiles.py \
+ --target=linux \
+ update \
+ --gs-url-base=chromium-optimization-profiles/pgo_profiles
+
+ python3 src/tools/download_optimization_profile.py \
+ --newest_state=src/chrome/android/profiles/newest.txt \
+ --local_state=src/chrome/android/profiles/local.txt \
+ --output_name=src/chrome/android/profiles/afdo.prof \
+ --gs_url_base=chromeos-prebuilt/afdo-job/llvm
+
+ mv src $pkgname-$_semver-$_chromium
+
+ # extra binaries are most likely things we don't want, so nuke them all
+ for elf in $(scanelf -RA -F "%F" $pkgname-$_semver-$_chromium); do
+ rm -f "$elf"
+ done
+
+ msg "generating tarball.. (this takes a while)"
+ tar -cf $pkgname-$_semver-$_chromium.tar \
+ --exclude="ChangeLog*" \
+ --exclude="testdata/*" \
+ --exclude="test_data/*" \
+ --exclude="android_rust_toolchain/*" \
+ --exclude-backups \
+ --exclude-caches-all \
+ --exclude-vcs \
+ $pkgname-$_semver-$_chromium
+
+ zstd --auto-threads=logical --ultra --long -22 -T"${ZSTD_LIMIT:-0}" -vv $pkgname-$_semver-$_chromium.tar -o "$SRCDEST"/$pkgname-$_semver-$_chromium.tar.zst
+ mcli cp "$SRCDEST"/$pkgname-$_semver-$_chromium.tar.zst "$_distbucket"
+}
+
+prepare() {
+ dos2unix third_party/vulkan_memory_allocator/include/vk_mem_alloc.h
+
+ default_prepare
+
+ git init -q .
+
+ # link to system tools
+ ln -sfv /usr/bin/clang-format buildtools/linux64/clang-format
+ mkdir -p third_party/node/linux/node-linux-x64/bin
+ ln -sfv /usr/bin/node third_party/node/linux/node-linux-x64/bin/node
+ ln -sfv /usr/bin/java third_party/jdk/current/bin/java
+
+ (
+ cd electron
+ git init -q .
+ git config user.email "example@example.com"
+ git config user.name "example"
+ git config commit.gpgsign false
+ git add LICENSE
+ git commit -m "init"
+ git tag "v$_semver"
+ git pack-refs
+ yarn install --frozen-lockfile --no-scripts
+ )
+
+ (
+ cd third_party/node
+ ./update_npm_deps
+ )
+
+ # reusable system library settings
+ # libavif - https://github.com/AOMediaCodec/libavif/commit/4d2776a3
+ # libaom - https://aomedia.googlesource.com/aom/+/706ee36dcc82%5E%21/
+ # jsoncpp, re2, snappy, swiftshader-spirv, woff2 - requires use_custom_libcxx=false
+ local chromium_use_system="
+ brotli
+ crc32c
+ dav1d
+ double-conversion
+ ffmpeg
+ flac
+ fontconfig
+ freetype
+ harfbuzz-ng
+ highway
+ icu
+ libdrm
+ libevent
+ libjpeg
+ libsecret
+ libusb
+ libwebp
+ libxml
+ libxslt
+ openh264
+ opus
+ zlib
+ zstd
+ "
+
+ for _lib in $chromium_use_system jinja2 libjpeg_turbo; do
+ msg "Removing buildscripts for system provided $_lib"
+ find . -type f -path "*third_party/$_lib/*" \
+ \! -path "*third_party/$_lib/chromium/*" \
+ \! -path "*third_party/$_lib/google/*" \
+ \! -path './base/third_party/icu/*' \
+ \! -path './third_party/libxml/*' \
+ \! -path './third_party/pdfium/third_party/freetype/include/pstables.h' \
+ \! -path './third_party/harfbuzz-ng/utils/hb_scoped.h' \
+ \! -path './third_party/crashpad/crashpad/third_party/zlib/zlib_crashpad.h' \
+ \! -regex '.*\.\(gn\|gni\|gyp\|gypi\|isolate\|py\)' \
+ -delete
+ done
+
+ # ada - needs use_custom_libcxx=false
+ # llhttp - 9.x needed, 8.x in repo (2023-12-17)
+ local node_use_system="
+ base64
+ brotli
+ cares
+ corepack
+ histogram
+ nghttp2
+ nghttp3
+ ngtcp2
+ zlib
+ "
+ # some of these are provided by system, e.g. brotli. some are from chromium,
+ # e.g. boringssl (as openssl). some are not in use at all (corepack)
+ for _lib in $node_use_system openssl; do
+ msg "Removing buildscripts for $_lib"
+ find . -type f -path "*third_party/electron_node/deps/$_lib/*" \
+ \! -path "*third_party/electron_node/deps/$_lib/chromium/*" \
+ \! -path "*third_party/electron_node/deps/$_lib/google/*" \
+ \! -regex '.*\.\(gn\|gni\|gyp\|gypi\|isolate\|py\)' \
+ -delete
+ done
+ # XXX: hack. unbundle-node.patch uses this list to switch things
+ # in config.gypi. https://github.com/electron/electron/issues/40836
+ echo $node_use_system > third_party/electron_node/use_system.txt
+
+ rm -rf third_party/electron_node/tools/inspector_protocol/jinja2
+
+ # https://groups.google.com/a/chromium.org/d/topic/chromium-packagers/9JX1N2nf4PU/discussion
+ touch chrome/test/data/webui/i18n_process_css_test.html
+ # Use the file at run time instead of effectively compiling it in
+ sed 's|//third_party/usb_ids/usb.ids|/usr/share/hwdata/usb.ids|g' \
+ -i services/device/public/cpp/usb/BUILD.gn
+
+ msg "Running debundle script"
+ python3 build/linux/unbundle/replace_gn_files.py --system-libraries \
+ $chromium_use_system
+ python3 third_party/libaddressinput/chromium/tools/update-strings.py
+
+ # prevent annoying errors when regenerating gni
+ sed -i 's,^update_readme$,#update_readme,' \
+ third_party/libvpx/generate_gni.sh
+
+ # allow system dependencies in "official builds"
+ sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
+ tools/generate_shim_headers/generate_shim_headers.py
+
+ # https://crbug.com/893950
+ sed -i -e 's/\<xmlMalloc\>/malloc/' -e 's/\<xmlFree\>/free/' \
+ third_party/blink/renderer/core/xml/*.cc \
+ third_party/blink/renderer/core/xml/parser/xml_document_parser.cc \
+ third_party/libxml/chromium/*.cc \
+ third_party/maldoca/src/maldoca/ole/oss_utils.h
+
+ _configure
+}
+
+_configure() {
+ cd "$builddir"
+ msg "Configuring build"
+
+ local clang_ver="$(clang -dumpversion)"
+
+ case "$USE_CCACHE" in
+ 1)
+ local cc_wrapper="ccache"
+ ;;
+ *)
+ local cc_wrapper=""
+ ;;
+ esac
+
+ # shellcheck disable=2089
+ local gn_config="
+ cc_wrapper=\"$cc_wrapper\"
+ clang_base_path=\"/usr\"
+ custom_toolchain=\"//build/toolchain/linux/unbundle:default\"
+ host_toolchain=\"//build/toolchain/linux/unbundle:default\"
+ import(\"//electron/build/args/release.gn\")
+
+ blink_enable_generated_code_formatting=false
+ chrome_pgo_phase=0
+ clang_use_chrome_plugins=false
+ clang_version=\"${clang_ver%%.*}\"
+ fatal_linker_warnings=false
+ ffmpeg_branding=\"Chrome\"
+ icu_use_data_file=true
+ is_cfi=false
+ is_clang=true
+ is_component_ffmpeg=true
+ is_debug=false
+ is_official_build=true
+ symbol_level=0
+ treat_warnings_as_errors=false
+ rustc_version=\"yes\"
+ rust_sysroot_absolute=\"/usr\"
+
+ angle_enable_gl_null=false
+ build_tflite_with_xnnpack=false
+ build_with_tflite_lib=true
+ disable_fieldtrial_testing_config=true
+ enable_hangout_services_extension=true
+ enable_library_cdms=false
+ enable_media_remoting=false
+ enable_nacl=false
+ enable_nocompile_tests=false
+ enable_paint_preview=false
+ enable_reading_list=false
+ enable_remoting=false
+ enable_reporting=false
+ enable_rust=true
+ enable_screen_ai_service=false
+ enable_service_discovery=false
+ enable_stripping=false
+ enable_vr=false
+ ozone_platform_headless=false
+
+ link_pulseaudio=true
+ proprietary_codecs=true
+ regenerate_x11_protos=true
+ rtc_link_pipewire=true
+ rtc_use_pipewire=true
+ skia_use_dawn=false
+ use_custom_libcxx=true
+ use_dawn=false
+ use_pulseaudio=true
+ use_sysroot=false
+ use_system_base64=true
+ use_system_cares=true
+ use_system_histogram=true
+ use_system_lcms2=true
+ use_system_libffi=true
+ use_system_llhttp=false
+ use_system_nghttp2=true
+ use_thin_lto=false
+ use_vaapi=true
+ "
+
+ # shellcheck disable=2086,2090,2116
+ gn gen out/Release --args="$(echo $gn_config)" \
+ --export-compile-commands
+}
+
+build() {
+ export PATH="$PATH:/usr/lib/qt5/bin"
+
+ ninja -C out/Release \
+ electron_dist_zip \
+ node_gypi_headers \
+ node_version_header
+
+ cp -vf out/Release/gen/node_headers/include/node/config.gypi third_party/electron_node/config.gypi
+}
+
+package() {
+ mkdir -p "$pkgdir"/usr/lib/electron "$pkgdir"/usr/bin
+
+ bsdtar -xf out/Release/dist.zip -C "$pkgdir"/usr/lib/electron
+
+ chmod u+s "$pkgdir"/usr/lib/electron/chrome-sandbox
+
+ install -Dm755 "$srcdir"/electron-launcher.sh "$pkgdir"/usr/bin/electron
+ install -Dm755 "$srcdir"/default.conf "$pkgdir"/etc/electron/default.conf
+
+ mkdir -p "$pkgdir"/usr/include/electron
+
+ (
+ cd third_party/electron_node/
+ HEADERS_ONLY=1 python3 ./tools/install.py install "$pkgdir" "/usr/include/electron/node_headers"
+ )
+ # required overrides
+ install -Dm644 out/Release/gen/node_headers/include/node/* -t "$pkgdir"/usr/include/electron/node_headers/include/node
+ ln -sv /usr/include/electron/node_headers/include/node "$pkgdir"/usr/include/electron/node
+
+ mkdir -p "$pkgdir"/usr/include/electron/node_headers/include/nan
+ cp -v "$builddir"/third_party/nan/*.h "$pkgdir"/usr/include/electron/node_headers/include/nan
+ ln -sv /usr/include/electron/node_headers/include/nan "$pkgdir"/usr/include/electron/nan
+
+ install -Dm644 electron/default_app/icon.png \
+ "$pkgdir"/usr/share/icons/hicolor/1024x1024/apps/electron.png
+ install -Dm644 "$srcdir"/electron.desktop \
+ -t "$pkgdir"/usr/share/applications/
+}
+
+lang() {
+ pkgdesc="$pkgdesc (translations)"
+ install_if="$pkgname=$pkgver-r$pkgrel lang"
+
+ mkdir -p "$subpkgdir"/usr/lib/electron/locales
+
+ mv "$pkgdir"/usr/lib/electron/locales/*.pak \
+ "$subpkgdir"/usr/lib/electron/locales
+ mv "$subpkgdir"/usr/lib/electron/locales/en-US.pak \
+ "$pkgdir"/usr/lib/electron/locales
+}
+
+sha512sums="
+aef4dc07d9924892472637f95485ac0e9ab6216a9da5b290d105d82e8688fc45643515e43a41aee6e002ec4dbce512ae11c8ebe171d6629741cf1587bdda8a5b electron-29.3.0-122.0.6261.156.tar.zst
+4c540972fa12acd9f0aafb8dc7e9987c3d6e4f28ff679dde522ebcec2dc5ae1a62d9d255bed0a30b9c79ae3b90ab0f5b9ae1ef5b7bf338612e28d9ef70250ca3 chromium-icu-74.patch
+29bb685e03356a77df5fd347cdf55194cc8b3265c421cc76e54d64edefc329dbcb052deb26b22e8f587ce68456876c071de1b7d258dd0fcc6ee66c875ec4a020 chromium-revert-drop-of-system-java.patch
+c116ad6325a79b799b6c56312891d5b3d2f0d0c1c3e2c03f339144b3f93b871db190f83fe5eadc5542303d61849cc362299932a2f93661198e11ba0c1e492e48 compiler.patch
+111bc22fb704d97759988268a40d6b356c51b0bd7a8119a694e905ffe21850ff64e91566cd0dd0c9d62fcb46dca8acc821436c34eb0ba78be872ee4f7ec88a7b disable-failing-tests.patch
+5fc5c012c1db6cf1ba82f38c6f3f4f5ca3a209e47ac708a74de379b018e0649b7694877c9571ef79002dde875ffc07b458a3355425f1c01867f362c66c2bc1bf fc-cache-version.patch
+9200f78bad70e95c648a5e8392d50642190600f655c6baa366ff6467ebad52d3b3f305dad58f3610da67136f4b723557653b174ec5c25be8d8737ee04d9ee09f fix-missing-cstdint-include-musl.patch
+b24563e9a738c00fce7ff2fbdee3d7c024d9125d7c74d9ab90af6bdb16f7ec8419f2c8aa78c0640f6d5d81c17dc2c673a194401d354f466749672729b48ed068 fix-opus.patch
+c63dee5044353eb306a39ca1526158c0f003ab310ecb03d1c368dc2a979454590c84b8d3c15484517d5e66bb8add9b231da9abbadf2e50850abd72ac1345c4ab fstatat-32bit.patch
+33ee60863cc438ef57ffef92ba4cf67a856a5ffc16138bce241bcf87e47b15154aa86918e793c26f7ec4dc62a445257ad5673ed7001daf22c4043cf6cc57da7f gdbinit.patch
+36a764fa73443b47d38050b52dbe6ad2fa8d67201ff4ccdbad13b52308ef165ca046aac6f9609fe35890a6485f0f3e672e78cc41e3e44f3cdc7f145e540524e8 generic-sensor-include.patch
+8de65109ece27ea63bd469f2220c56b8c752ba0a50fdf390082a2d5ae74b8e010199126175569f6d5084270dd4e0571e68aec32c0bca8211a6699925b3a09124 import-version.patch
+993ce46dcd2c9e406d18d7af834e6e8cc4227bdba32c0b1804bb0489e11b47467557895281facf110abdb6aacf493b97f23bfb4f72ee95a41a618c547bfcea1a libstdc++13.patch
+e75f57ae34c97ca1caf15fa4b4106c6c1e79c31ed66869cf92ed9ea0c449886c9511e455047c17c1e9ad8b9a46ad4948511a4f2995a4b6030fb4d1c7ae21d038 mman.patch
+99bcc7dd485b404a90c606a96addab1d900852128d44fb8cea8acc7303189ef87c89a7b0e749fd0e10c5ef5f6bf1fadeb5c16a34503cab6a59938ce2653d887e musl-auxv.patch
+50c274a420bb8a7f14fcb56e40920dac8f708792a4520789b4987facea459bef88113d5a2b60fa8c57bee6e92bff3617d6b73fa305c8c44614c638971cffd440 musl-sandbox.patch
+e7163ac5810ac85366cef2447412287c856e3d67c6b77f219a6e5a418b1965b98e449c409424ad0704a5bded9355dd0aec3dc4585918ce5a2ab36c079707afe2 musl-tid-caching.patch
+92eb002718026611f5542362ad69b67f0a398ff71b3fca5c05d55cb5c6f9f29334e5e127bb4860cfaa3fba0f0d4c901e2b98808217e7dc02e254a64a5c9521aa musl-v8-monotonic-pthread-cont_timedwait.patch
+5eb0b83264e2c9213fb871838827eb7875c05131a42d901032d6d1f05eec98609fefac4772385046887a773daf4f1e0ee5a647e82c1c3d73aec3fcf76f887084 no-execinfo.patch
+8e17101d69e23b456a9c03dc2fe95bcd56846389707ba6f4720192a9e9168406d20d9168dbebbb3a47d921ec92e478f0e390f46e6b9bb43a34dda217c6e6448b no-mallinfo.patch
+e4c4e5bc6f828f9c883dd418c0ba01887949c29c311f76206a1ec29f620b0c0ba0452949dc2778a9c46ea066405857536964a36436a68eecf7da7952736333cf no-res-ninit-nclose.patch
+6dc4d8dc92e685dace62265a1ddb3aebc558aed54d20ff6d36b030be0c48d7e84662326c31363612492574d9a03c62653cdc21a60995b97dee1d75cae86a9f9b no-sandbox-settls.patch
+d4ac7f350806b4410ccb1df3b0ad7e90a7b6d724a16919761aa2d47a6f21008c7374da528b05b754ee712b85d23adfb113c7f7b9ca2ed5b47644fe3ea0cb9119 partalloc-no-tagging-arm64.patch
+8e1aca983890c78d81a6f888b2cf1aa42878d1f8523e87d63b800e1e468cbfd33e5ff6a0975775ca222fe82f30c6497da95505da01b091c8776a44c98ac86f0f perfetto-libstdc++.patch
+2eb434b4fc6aee77026492644cd86772a543d9845f112a75cd4c3e1f25c9435cc31f8454c1c73223451fc9be69b86e822ff68821978f67f2fc8bcba50296d8e0 pvalloc.patch
+803b8117c65132f76bec42054a4b2257a078b15b07fd08645fec2dfd51aa4e0075a9015300cd579d4ae0d757d9850b9988e080cfc2eea093f6684fdf82c4722c random-fixes.patch
+86f612dd2b39602984a75b1b11c2ab8bc8cc6b4e78fae998570a777a6901ae45fdcdb22e46dd006dab703a0674e64c72cf8120af2dc5b9e78004f402c7e65358 quiche-array.patch
+b3beb98b539fe160fbc493ba410ae0f68540cc4b6834f1f8ce9a22c3f4f59ef5d583ad48793e10549fd02a701f833a3969791ef4524322cd1e715ca5bf226bc8 system-zstd.patch
+e48693e6b7aeebf69a5acbf80d9a35defe4c23835121dfeb58b051ac7c527e758a41004f4d193274fe1b01c0bfb1dbc77b09cb6a404a3fdee507a2918afb0edb temp-failure-retry.patch
+914ccf649d7771f19f209ab97f99c481aebc6f66174d68e8b539f6ad4a70bc8cb0fae2df6dadbf0415958ffb3574c420fe029079dcce45f5e5add4db2e903566 yes-musl.patch
+4057cc78f10bfd64092bc35a373869abb1d68b880cdbca70422f39ffd78a929c19c7728d4d4c40709aaba25581148a93ae5343e724849fd35323062ed68753fa disable-dns_config_service.patch
+465107da7818b237e3c144a318ab80c3c9343b51ed38b8971ef204692d13346929becbe94cefad4c153788d3a200642143584d5ca070f6304e768ba2139c19ec icon.patch
+e05180199ee1d559e4e577cedd3e589844ecf40d98a86321bf1bea5607b02eeb5feb486deddae40e1005b644550331f6b8500177aa7e79bcb3750d3c1ceb76c3 python-jinja-3.10.patch
+2aa340854316f1284217c0ca17cbf44953684ad6c7da90815117df30928612eb9fb9ffb734b948dfc309cd25d1a67cd57f77aac2d052a3dd9aca07a3a58cbb30 webpack-hash.patch
+c83914c11d9f8f6d53653f67f91020db3d25d0614380053380f85e870418e834bf590afa065b182006d535290cc91a940fe085c1200cae9ca17107faceae1989 unbundle-node.patch
+85973875fb3acddabe2507e255b38fe498cf0b5fce7dcb93e389ccb7b1cae8acd5225f00fa61b7bd556f7cae5080ed03dca7263505fe8974e3fbf3a93937c555 0001-src-fix-HasOnly-capability-in-node-credentials.patch
+4b32258cc05ffe43364dbb775df53d0e7749d108ac31b3642cc069860b6e28d370bcb0cee01c652baed668c2c3111fde714084d0a85acd80b5b86880a703c2b2 0002-http-add-maximum-chunk-extension-size.patch
+b8ea46e2c0ad7bab6383fa3a42619be735eac67156e501b173b36e9522e8c384feb758b48276a16ac6a68b64cab8fb4cd4ed1841720ecf628bc55f45c05b58c4 0004-lib-update-undici-to-v5.28.3.patch
+1dc578fad461f8dc876a1bbbd9fd8f9b235a010fcfb30986cc2654253cce84040dc6fed37fa9fa5e70933ffb9d812c677ba0150e7d6a9d2032d412f9eba7f168 0005-zlib-pause-stream-if-outgoing-buffer-is-full.patch
+793d94cc5aec81eace96ca86bd70ad122d82918a521ecb8d30251c492818c19c7a020eed4dccb13d4129b61f0ca82972bd34f480ad094c45633042552bd39fe9 0006-deps-fix-GHSA-f74f-cvh7-c6q6-CVE-2024-24806.patch
+45e9b3f520a9d343daddda21fd220d675fbbebaeae923a4afb59f8b8d3c35cfa172ab4fdaed6f835d66a8ef470e1a4ab9d6e27c5538f5ce49cc4c1772fa514ef node-configure-distutils.patch
+e7e2f663e2c9329443fbaece2b3e37266bdb894f5764d9c4ef3720f1de84d13edee75a5e12210e4839912520c88332f4b231a6eacbc0e8dd5f7e3353d40fefba node-gyp-distutils.patch
+e8ea87c547546011c4c8fc2de30e4f443b85cd4cfcff92808e2521d2f9ada03feefb8e1b0cf0f6b460919c146e56ef8d5ad4bb5e2461cc5247c30d92eb4d068e default.conf
+191559fc7aa1ea0353c6fb0cc321ee1d5803a0e44848c8be941cfab96277b0de6a59962d373e2a2a1686c8f9be2bcf2d2f33706759a339a959e297d3f7fda463 electron.desktop
+5f7ba5ad005f196facec1c0f26108356b64cafb1e5cfa462ff714a33b8a4c757ac00bfcb080da09eb5b65032f8eb245d9676a61ec554515d125ed63912708648 electron-launcher.sh
+"
diff --git a/testing/electron/chromium-icu-74.patch b/testing/electron/chromium-icu-74.patch
new file mode 100644
index 00000000000..02a44b7a141
--- /dev/null
+++ b/testing/electron/chromium-icu-74.patch
@@ -0,0 +1,20 @@
+See ICU change https://github.com/unicode-org/icu/commit/2e45e6ec0e84a1c01812015a254ea31b286316fb
+
+Similar has happened in the past. See:
+https://chromium.googlesource.com/chromium/src/+/e60b571faa3f14dd9119a6792dccf12f8bf80192
+
+diff --git a/third_party/blink/renderer/platform/text/text_break_iterator.cc b/third_party/blink/renderer/platform/text/text_break_iterator.cc
+index ddfbd51..247da06 100644
+--- a/third_party/blink/renderer/platform/text/text_break_iterator.cc
++++ b/third_party/blink/renderer/platform/text/text_break_iterator.cc
+@@ -161,7 +161,9 @@ static const unsigned char kAsciiLineBreakTable[][(kAsciiLineBreakTableLastChar
+ };
+ // clang-format on
+
+-#if U_ICU_VERSION_MAJOR_NUM >= 58
++#if U_ICU_VERSION_MAJOR_NUM >= 74
++#define BA_LB_COUNT (U_LB_COUNT - 8)
++#elif U_ICU_VERSION_MAJOR_NUM >= 58
+ #define BA_LB_COUNT (U_LB_COUNT - 3)
+ #else
+ #define BA_LB_COUNT U_LB_COUNT
diff --git a/testing/electron/chromium-revert-drop-of-system-java.patch b/testing/electron/chromium-revert-drop-of-system-java.patch
new file mode 100644
index 00000000000..24355bf42b1
--- /dev/null
+++ b/testing/electron/chromium-revert-drop-of-system-java.patch
@@ -0,0 +1,17 @@
+This was dropped for some reason in 6951c37cecd05979b232a39e5c10e6346a0f74ef
+allows using /usr/bin/java instead of a downloaded one (that doesn't work on musl)
+--
+--- a/third_party/closure_compiler/compiler.py 2021-05-20 04:17:53.000000000 +0200
++++ b/third_party/closure_compiler/compiler.py 2021-05-20 04:17:53.000000000 +0200
+@@ -13,8 +13,9 @@
+
+
+ _CURRENT_DIR = os.path.join(os.path.dirname(__file__))
+-_JAVA_PATH = os.path.join(_CURRENT_DIR, "..", "jdk", "current", "bin", "java")
+-assert os.path.isfile(_JAVA_PATH), "java only allowed in android builds"
++_JAVA_BIN = "java"
++_JDK_PATH = os.path.join(_CURRENT_DIR, "..", "jdk", "current", "bin", "java")
++_JAVA_PATH = _JDK_PATH if os.path.isfile(_JDK_PATH) else _JAVA_BIN
+
+ class Compiler(object):
+ """Runs the Closure compiler on given source files to typecheck them
diff --git a/testing/electron/compiler.patch b/testing/electron/compiler.patch
new file mode 100644
index 00000000000..2541d19992b
--- /dev/null
+++ b/testing/electron/compiler.patch
@@ -0,0 +1,123 @@
+--- ./build/config/compiler/BUILD.gn.orig
++++ ./build/config/compiler/BUILD.gn
+@@ -616,24 +618,6 @@
+ }
+ }
+
+- # TODO(crbug.com/1488374): This causes binary size growth and potentially
+- # other problems.
+- # TODO(crbug.com/1491036): This isn't supported by Cronet's mainline llvm version.
+- if (default_toolchain != "//build/toolchain/cros:target" &&
+- !llvm_android_mainline) {
+- cflags += [
+- "-mllvm",
+- "-split-threshold-for-reg-with-hint=0",
+- ]
+- if (use_thin_lto && is_a_target_toolchain) {
+- if (is_win) {
+- ldflags += [ "-mllvm:-split-threshold-for-reg-with-hint=0" ]
+- } else {
+- ldflags += [ "-Wl,-mllvm,-split-threshold-for-reg-with-hint=0" ]
+- }
+- }
+- }
+-
+ # TODO(crbug.com/1235145): Investigate why/if this should be needed.
+ if (is_win) {
+ cflags += [ "/clang:-ffp-contract=off" ]
+@@ -1011,17 +998,6 @@
+ # `-nodefaultlibs` from the linker invocation from Rust, which would be used
+ # to compile dylibs on Android, such as for constructing unit test APKs.
+ "-Cdefault-linker-libraries",
+-
+- # To make Rust .d files compatible with ninja
+- "-Zdep-info-omit-d-target",
+-
+- # If a macro panics during compilation, show which macro and where it is
+- # defined.
+- "-Zmacro-backtrace",
+-
+- # For deterministic builds, keep the local machine's current working
+- # directory from appearing in build outputs.
+- "-Zremap-cwd-prefix=.",
+ ]
+
+ if (!is_win || force_rustc_color_output) {
+@@ -1175,8 +1151,8 @@
+ } else if (current_cpu == "arm") {
+ if (is_clang && !is_android && !is_nacl &&
+ !(is_chromeos_lacros && is_chromeos_device)) {
+- cflags += [ "--target=arm-linux-gnueabihf" ]
+- ldflags += [ "--target=arm-linux-gnueabihf" ]
++ cflags += [ "--target=armv7-alpine-linux-musleabihf" ]
++ ldflags += [ "--target=armv7-alpine-linux-musleabihf" ]
+ }
+ if (!is_nacl) {
+ cflags += [
+@@ -1190,8 +1166,8 @@
+ } else if (current_cpu == "arm64") {
+ if (is_clang && !is_android && !is_nacl && !is_fuchsia &&
+ !(is_chromeos_lacros && is_chromeos_device)) {
+- cflags += [ "--target=aarch64-linux-gnu" ]
+- ldflags += [ "--target=aarch64-linux-gnu" ]
++ cflags += [ "--target=aarch64-alpine-linux-musl" ]
++ ldflags += [ "--target=aarch64-alpine-linux-musl" ]
+ }
+ } else if (current_cpu == "mipsel" && !is_nacl) {
+ ldflags += [ "-Wl,--hash-style=sysv" ]
+--- ./build/config/rust.gni.orig
++++ ./build/config/rust.gni
+@@ -186,11 +186,11 @@
+ rust_abi_target = ""
+ if (is_linux || is_chromeos) {
+ if (current_cpu == "arm64") {
+- rust_abi_target = "aarch64-unknown-linux-gnu"
++ rust_abi_target = "aarch64-alpine-linux-musl"
+ } else if (current_cpu == "x86") {
+- rust_abi_target = "i686-unknown-linux-gnu"
++ rust_abi_target = "i586-alpine-linux-musl"
+ } else if (current_cpu == "x64") {
+- rust_abi_target = "x86_64-unknown-linux-gnu"
++ rust_abi_target = "x86_64-alpine-linux-musl"
+ } else if (current_cpu == "arm") {
+ if (arm_float_abi == "hard") {
+ float_suffix = "hf"
+@@ -199,13 +199,13 @@
+ }
+ if (arm_arch == "armv7-a" || arm_arch == "armv7") {
+ # No way to inform Rust about the -a suffix.
+- rust_abi_target = "armv7-unknown-linux-gnueabi" + float_suffix
++ rust_abi_target = "armv7-alpine-linux-musleabi" + float_suffix
+ } else {
+- rust_abi_target = "arm-unknown-linux-gnueabi" + float_suffix
++ rust_abi_target = "armv6-alpine-linux-musleabi" + float_suffix
+ }
+ } else {
+ # Best guess for other future platforms.
+- rust_abi_target = current_cpu + "-unknown-linux-gnu"
++ rust_abi_target = current_cpu + "-alpine-linux-musl"
+ }
+ } else if (is_android) {
+ import("//build/config/android/abi.gni")
+--- ./build/config/clang/BUILD.gn.orig
++++ ./build/config/clang/BUILD.gn
+@@ -128,14 +128,15 @@
+ } else if (is_apple) {
+ _dir = "darwin"
+ } else if (is_linux || is_chromeos) {
++ _dir = "linux"
+ if (current_cpu == "x64") {
+- _dir = "x86_64-unknown-linux-gnu"
++ _suffix = "-x86_64"
+ } else if (current_cpu == "x86") {
+- _dir = "i386-unknown-linux-gnu"
++ _suffix = "-i386"
+ } else if (current_cpu == "arm") {
+- _dir = "armv7-unknown-linux-gnueabihf"
++ _suffix = "-armhf"
+ } else if (current_cpu == "arm64") {
+- _dir = "aarch64-unknown-linux-gnu"
++ _suffix = "-aarch64"
+ } else {
+ assert(false) # Unhandled cpu type
+ }
diff --git a/testing/electron/default.conf b/testing/electron/default.conf
new file mode 100644
index 00000000000..41f3f03f144
--- /dev/null
+++ b/testing/electron/default.conf
@@ -0,0 +1,9 @@
+# Default settings for electron. This file is sourced by /bin/sh from
+# the electron launcher.
+
+# Options to pass to electron.
+ELECTRON_FLAGS="--enable-features=WebRTCPipeWireCapturer"
+
+# This can be 'x11', 'wayland', or 'auto'. Overriding default to 'auto',
+# but respecting the variable content if any
+ELECTRON_OZONE_PLATFORM_HINT="${ELECTRON_OZONE_PLATFORM_HINT:-auto}"
diff --git a/testing/electron/disable-dns_config_service.patch b/testing/electron/disable-dns_config_service.patch
new file mode 100644
index 00000000000..a72e1c47c7e
--- /dev/null
+++ b/testing/electron/disable-dns_config_service.patch
@@ -0,0 +1,15 @@
+diff --git a/net/dns/BUILD.gn b/net/dns/BUILD.gn
+index f36bf68..805d9a6 100644
+--- a/net/dns/BUILD.gn
++++ b/net/dns/BUILD.gn
+@@ -130,8 +130,8 @@ source_set("dns") {
+ ]
+ } else if (is_linux) {
+ sources += [
+- "dns_config_service_linux.cc",
+- "dns_config_service_linux.h",
++ "dns_config_service_fuchsia.cc",
++ "dns_config_service_fuchsia.h",
+ ]
+ } else if (is_posix) {
+ sources += [
diff --git a/testing/electron/disable-failing-tests.patch b/testing/electron/disable-failing-tests.patch
new file mode 100644
index 00000000000..2ee8f2be7bf
--- /dev/null
+++ b/testing/electron/disable-failing-tests.patch
@@ -0,0 +1,361 @@
+safesprintf emitnull:
+ error: conversion from 'std::nullptr_t' to 'const internal::Arg' is ambiguous
+ const internal::Arg arg_array[] = { args... };
+
+flatmap incompletetype:
+ error: static assertion failed due to requirement 'std::__is_complete_or_unbounded(std::__type_identity<std::pair<A, A>>{})': template argument must be a complete class or an unbounded array
+ static_assert(std::__is_complete_or_unbounded(__type_identity<_Tp>{}),
+
+i18n, time:
+ various icu failures (new icu time formatting? internal api difference?)
+ a ton of these fail:
+
+ Expected equality of these values:
+ u"Monday 16 May – Saturday 28 May"
+ Which is: u"Monday 16 May \x2013 Saturday 28 May"
+ DateIntervalFormat(begin_time, end_time, DATE_FORMAT_MONTH_WEEKDAY_DAY)
+ Which is: u"Monday 16\x2009\x2013\x2009Saturday 28 May"
+
+ ../../base/i18n/time_formatting_unittest.cc:84: Failure
+ Expected equality of these values:
+ clock12h_pm
+ Which is: u"3:42 PM"
+ TimeFormatTimeOfDay(time)
+ Which is: u"3:42\x202FPM"
+
+ .. and so on
+
+fileutiltest filetofile:
+ ../../base/files/file_util_unittest.cc:2692: Failure
+ Value of: stream
+ Actual: true
+ Expected: false
+
+stacktracetest: crashes (this doesn't seem to use execinfo so probably relies on glibc internal layout for tracing here)
+
+platformthreadtest canchangethreadtype:
+ ../../base/threading/platform_thread_unittest.cc:445: Failure
+ Expected equality of these values:
+ PlatformThread::CanChangeThreadType(ThreadType::kBackground, ThreadType::kResourceEfficient)
+ Which is: true
+ kCanIncreasePriority
+ Which is: false
+
+scopedfdownershiptrackingtest crashonunownedclose: fails due to scoped-file-no-close.patch
+
+stackcontainer customallocator:
+ ../../base/containers/stack_container_unittest.cc:211: Failure
+ Expected equality of these values:
+ 1
+ Allocator::deallocated
+ Which is: 0
+
+nativelibrarytest loadlibrarypreferownsymbols: crashes (probably musl dlopen does not play nice here)
+
+spantest empty: crashes (this looks fishy)
+
+readelfbuildid: crashes (this looks like glibc dynamic linker semantics)
+
+nss db unittest: various nss failures: e.g.:
+ ../../net/cert/nss_cert_database_unittest.cc:209: Failure
+ Expected equality of these values:
+ OK
+ Which is: 0
+ cert_db_->ImportFromPKCS12(GetPublicSlot(), pkcs12_data, u"12345", true, nullptr)
+ Which is: -702
+
+processutiltest cloneflags: fails in CI (ulimit? too many threads?)
+ ../../base/process/process_util_unittest.cc:1434: Failure
+ Value of: process.IsValid()
+ Actual: false
+ Expected: true
+
+addresstrackerlinuxnetlinktest:
+ ../../net/base/address_tracker_linux_unittest.cc:886: Failure
+ Value of: child.process.IsValid()
+ Actual: false
+ Expected: true
+
+ToAddressDoesNotDereference: ; Expected `get_for_extraction_cnt` to be 1 but got 0;
+
+DataCapturedManyThreads: flaky
+
+ProcessAlternativeServicesTest.Process*: crashed ?
+
+--- a/base/strings/safe_sprintf_unittest.cc
++++ b/base/strings/safe_sprintf_unittest.cc
+@@ -740,6 +740,7 @@
+ #endif
+ }
+
++#if 0
+ TEST(SafeSPrintfTest, EmitNULL) {
+ char buf[40];
+ #if defined(__GNUC__)
+@@ -756,6 +757,7 @@
+ #pragma GCC diagnostic pop
+ #endif
+ }
++#endif
+
+ TEST(SafeSPrintfTest, PointerSize) {
+ // The internal data representation is a 64bit value, independent of the
+--- a/base/containers/flat_map_unittest.cc
++++ b/base/containers/flat_map_unittest.cc
+@@ -52,6 +52,7 @@
+
+ } // namespace
+
++#if 0
+ TEST(FlatMap, IncompleteType) {
+ struct A {
+ using Map = flat_map<A, A>;
+@@ -65,6 +66,7 @@
+
+ A a;
+ }
++#endif
+
+ TEST(FlatMap, RangeConstructor) {
+ flat_map<int, int>::value_type input_vals[] = {
+--- a/base/BUILD.gn
++++ b/base/BUILD.gn
+@@ -3194,21 +3194,6 @@
+ "hash/md5_constexpr_unittest.cc",
+ "hash/md5_unittest.cc",
+ "hash/sha1_unittest.cc",
+- "i18n/break_iterator_unittest.cc",
+- "i18n/case_conversion_unittest.cc",
+- "i18n/char_iterator_unittest.cc",
+- "i18n/character_encoding_unittest.cc",
+- "i18n/file_util_icu_unittest.cc",
+- "i18n/icu_string_conversions_unittest.cc",
+- "i18n/icu_util_unittest.cc",
+- "i18n/message_formatter_unittest.cc",
+- "i18n/number_formatting_unittest.cc",
+- "i18n/rtl_unittest.cc",
+- "i18n/streaming_utf8_validator_unittest.cc",
+- "i18n/string_search_unittest.cc",
+- "i18n/time_formatting_unittest.cc",
+- "i18n/timezone_unittest.cc",
+- "i18n/transliterator_unittest.cc",
+ "immediate_crash_unittest.cc",
+ "json/json_parser_unittest.cc",
+ "json/json_reader_unittest.cc",
+--- a/base/files/file_util_unittest.cc
++++ b/base/files/file_util_unittest.cc
+@@ -2686,6 +2686,7 @@
+ }
+ }
+
++#if 0
+ TEST_F(FileUtilTest, FileToFILE) {
+ File file;
+ FILE* stream = FileToFILE(std::move(file), "w");
+@@ -2700,6 +2701,7 @@
+ EXPECT_FALSE(file.IsValid());
+ EXPECT_TRUE(CloseFile(stream));
+ }
++#endif
+
+ TEST_F(FileUtilTest, FILEToFile) {
+ ScopedFILE stream;
+--- a/base/debug/stack_trace_unittest.cc
++++ b/base/debug/stack_trace_unittest.cc
+@@ -345,6 +345,7 @@
+ // sometimes we read fp / pc from the place that previously held
+ // uninitialized value.
+ // TODO(crbug.com/1132511): Enable this test on Fuchsia.
++#if 0
+ #if defined(MEMORY_SANITIZER) || BUILDFLAG(IS_FUCHSIA)
+ #define MAYBE_TraceStackFramePointersFromBuffer \
+ DISABLED_TraceStackFramePointersFromBuffer
+@@ -357,6 +358,7 @@
+ const void* frames[kDepth];
+ ExpectStackFramePointers<kDepth>(frames, kDepth, /*copy_stack=*/true);
+ }
++#endif
+
+ #if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_APPLE)
+ #define MAYBE_StackEnd StackEnd
+--- a/base/threading/platform_thread_unittest.cc
++++ b/base/threading/platform_thread_unittest.cc
+@@ -416,6 +416,7 @@
+ // platforms for all priorities. This not being the case. This test documents
+ // and hardcodes what we know. Please inform scheduler-dev@chromium.org if this
+ // proprerty changes for a given platform.
++#if 0
+ TEST(PlatformThreadTest, CanChangeThreadType) {
+ #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)
+ // On Ubuntu, RLIMIT_NICE and RLIMIT_RTPRIO are 0 by default, so we won't be
+@@ -472,6 +473,7 @@
+ ThreadType::kBackground));
+ #endif
+ }
++#endif
+
+ TEST(PlatformThreadTest, SetCurrentThreadTypeTest) {
+ TestPriorityResultingFromThreadType(ThreadType::kBackground,
+--- a/base/files/scoped_file_linux_unittest.cc
++++ b/base/files/scoped_file_linux_unittest.cc
+@@ -42,11 +42,13 @@
+ EXPECT_DEATH(ScopedFD(fd.get()), "");
+ }
+
++#if 0
+ TEST_F(ScopedFDOwnershipTrackingTest, CrashOnUnownedClose) {
+ ScopedFD fd = OpenFD();
+ subtle::EnableFDOwnershipEnforcement(true);
+ EXPECT_DEATH(close(fd.get()), "");
+ }
++#endif
+
+ #endif // defined(GTEST_HAS_DEATH_TEST)
+
+--- a/base/native_library_unittest.cc
++++ b/base/native_library_unittest.cc
+@@ -139,6 +139,7 @@
+ // Verifies that the |prefer_own_symbols| option satisfies its guarantee that
+ // a loaded library will always prefer local symbol resolution before
+ // considering global symbols.
++#if 0
+ TEST(NativeLibraryTest, LoadLibraryPreferOwnSymbols) {
+ NativeLibraryOptions options;
+ options.prefer_own_symbols = true;
+@@ -171,6 +172,7 @@
+ EXPECT_EQ(2, NativeLibraryTestIncrement());
+ EXPECT_EQ(3, NativeLibraryTestIncrement());
+ }
++#endif
+
+ #endif // !BUILDFLAG(IS_ANDROID) && !defined(THREAD_SANITIZER) && \
+ // !defined(MEMORY_SANITIZER)
+--- a/base/containers/span_unittest.cc
++++ b/base/containers/span_unittest.cc
+@@ -995,6 +995,7 @@
+ }
+ }
+
++#if 0
+ TEST(SpanTest, Empty) {
+ {
+ span<int> span;
+@@ -1014,6 +1015,7 @@
+ EXPECT_TRUE(span_of_checked_iterators.empty());
+ }
+ }
++#endif
+
+ TEST(SpanTest, OperatorAt) {
+ static constexpr int kArray[] = {1, 6, 1, 8, 0};
+--- a/base/debug/elf_reader_unittest.cc
++++ b/base/debug/elf_reader_unittest.cc
+@@ -194,6 +194,7 @@
+ }
+ }
+
++#if 0
+ TEST(ElfReaderTestWithCurrentImage, ReadElfBuildId) {
+ #if BUILDFLAG(IS_ANDROID)
+ // On Android the library loader memory maps the full so file.
+@@ -229,6 +230,7 @@
+ UnloadNativeLibrary(library);
+ #endif
+ }
++#endif
+
+ } // namespace debug
+ } // namespace base
+--- a/net/BUILD.gn
++++ b/net/BUILD.gn
+@@ -4826,7 +4826,6 @@
+ sources += [
+ "cert/internal/system_trust_store_nss_unittest.cc",
+ "cert/internal/trust_store_nss_unittest.cc",
+- "cert/nss_cert_database_unittest.cc",
+ "cert/x509_util_nss_unittest.cc",
+ ]
+ if (!is_castos) {
+--- a/base/process/process_util_unittest.cc
++++ b/base/process/process_util_unittest.cc
+@@ -1419,7 +1419,7 @@
+ return kSuccess;
+ }
+
+-#if defined(CLONE_NEWUSER) && defined(CLONE_NEWPID)
++#if 0 && defined(CLONE_NEWUSER) && defined(CLONE_NEWPID)
+ TEST_F(ProcessUtilTest, CloneFlags) {
+ if (!PathExists(FilePath("/proc/self/ns/user")) ||
+ !PathExists(FilePath("/proc/self/ns/pid"))) {
+--- a/net/base/address_tracker_linux_unittest.cc
++++ b/net/base/address_tracker_linux_unittest.cc
+@@ -831,6 +831,7 @@
+ //
+ // This test creates multiple concurrent `AddressTrackerLinux` instances in
+ // separate processes, each in their own PID namespaces.
++#if 0
+ TEST(AddressTrackerLinuxNetlinkTest, TestInitializeTwoTrackersInPidNamespaces) {
+ // This test initializes `kNumChildren` instances of `AddressTrackerLinux` in
+ // tracking mode, each in their own child process running in a PID namespace.
+@@ -901,6 +902,7 @@
+ ASSERT_EQ(exit_code, 0);
+ }
+ }
++#endif
+
+ MULTIPROCESS_TEST_MAIN(ChildProcessInitializeTrackerForTesting) {
+ base::test::TaskEnvironment task_env(
+--- a/base/trace_event/trace_event_unittest.cc
++++ b/base/trace_event/trace_event_unittest.cc
+@@ -1368,6 +1368,7 @@
+ }
+
+ // Test that data sent from multiple threads is gathered
++#if 0
+ TEST_F(TraceEventTestFixture, DataCapturedManyThreads) {
+ BeginTrace();
+
+@@ -1408,6 +1409,7 @@
+ delete task_complete_events[i];
+ }
+ }
++#endif
+
+ // Test that thread and process names show up in the trace.
+ // In SDK build, thread names are not tracked inside //base. Instead, there's
+--- a/base/allocator/partition_allocator/src/partition_alloc/pointers/raw_ptr_unittest.cc
++++ b/base/allocator/partition_allocator/src/partition_alloc/pointers/raw_ptr_unittest.cc
+@@ -1481,6 +1481,7 @@
+ // `base::to_address()` will use the dereference operator. This is not
+ // what we want; this test enforces extraction semantics for
+ // `to_address()`.
++#if 0
+ TEST_F(RawPtrTest, ToAddressDoesNotDereference) {
+ CountingRawPtr<int> ptr = nullptr;
+ int* raw = base::to_address(ptr);
+@@ -1492,6 +1493,7 @@
+ .get_for_duplication_cnt = 0}),
+ CountersMatch());
+ }
++#endif
+
+ TEST_F(RawPtrTest, ToAddressGivesBackRawAddress) {
+ int* raw = nullptr;
+--- a/net/http/http_stream_factory_unittest.cc
++++ b/net/http/http_stream_factory_unittest.cc
+@@ -3477,6 +3477,7 @@
+ DefaultCTPolicyEnforcer ct_policy_enforcer_;
+ };
+
++#if 0
+ TEST_F(ProcessAlternativeServicesTest, ProcessEmptyAltSvc) {
+ session_ =
+ std::make_unique<HttpNetworkSession>(session_params_, session_context_);
+@@ -3585,6 +3586,7 @@
+ alternatives[0].host_port_pair());
+ EXPECT_EQ(0u, alternatives[0].advertised_versions().size());
+ }
++#endif
+
+ } // namespace
+
diff --git a/testing/electron/electron-launcher.sh b/testing/electron/electron-launcher.sh
new file mode 100644
index 00000000000..546d4ccb1c4
--- /dev/null
+++ b/testing/electron/electron-launcher.sh
@@ -0,0 +1,20 @@
+#!/bin/sh
+
+# Allow the user to override command-line flags
+# This is based on Debian's chromium-browser package, and is intended
+# to be consistent with Debian.
+for f in /etc/electron/*.conf; do
+ [ -f ${f} ] && . "${f}"
+done
+
+# Prefer user defined ELECTRON_USER_FLAGS (from env) over system
+# default ELECTRON_FLAGS (from /etc/electron/default.conf).
+export ELECTRON_FLAGS="$ELECTRON_FLAGS ${ELECTRON_USER_FLAGS:-"$ELECTRON_USER_FLAGS"}"
+# Re-export, for it to be accessible by the process
+export ELECTRON_OZONE_PLATFORM_HINT="${ELECTRON_OZONE_PLATFORM_HINT}"
+
+if [ "$ELECTRON_RUN_AS_NODE" == "1" ] && [ "$ELECTRON_STILL_PASS_THE_DEFAULT_FLAGS" != "1" ]; then
+ exec "/usr/lib/electron/electron" "$@"
+fi
+
+exec "/usr/lib/electron/electron" "$@" ${ELECTRON_FLAGS}
diff --git a/testing/electron/electron.desktop b/testing/electron/electron.desktop
new file mode 100644
index 00000000000..a3cc6bbe05e
--- /dev/null
+++ b/testing/electron/electron.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Type=Application
+Name=electron21
+Icon=electron
+Exec=electron %u
+Categories=Development;GTK;
+StartupNotify=true
+StartupWMClass=electron
diff --git a/testing/electron/fc-cache-version.patch b/testing/electron/fc-cache-version.patch
new file mode 100644
index 00000000000..3b768978a43
--- /dev/null
+++ b/testing/electron/fc-cache-version.patch
@@ -0,0 +1,13 @@
+instead of hardcoding the version, use the defined macro.
+--
+--- a/third_party/test_fonts/fontconfig/generate_fontconfig_caches.cc
++++ b/third_party/test_fonts/fontconfig/generate_fontconfig_caches.cc
+@@ -56,7 +56,7 @@
+ FcFini();
+
+ // Check existence of intended fontconfig cache file.
+- auto cache = fontconfig_caches + "/" + kCacheKey + "-le64.cache-9";
++ auto cache = fontconfig_caches + "/" + kCacheKey + "-le64.cache-" + FC_CACHE_VERSION;
+ bool cache_exists = access(cache.c_str(), F_OK) == 0;
+ return !cache_exists;
+ }
diff --git a/testing/electron/fix-missing-cstdint-include-musl.patch b/testing/electron/fix-missing-cstdint-include-musl.patch
new file mode 100644
index 00000000000..00f16afb736
--- /dev/null
+++ b/testing/electron/fix-missing-cstdint-include-musl.patch
@@ -0,0 +1,13 @@
+Patch-Source: https://github.com/void-linux/void-packages/blob/378db3cf5087877588aebaaa8ca3c9d94dfb54e0/srcpkgs/chromium/patches/fix-missing-cstdint-include-musl.patch
+fixed in https://github.com/google/quiche/commit/4d4820f0a959be7fa22285d114a5b5b8676f10fe
+--
+--- a/net/third_party/quiche/src/quiche/http2/adapter/window_manager.h
++++ b/net/third_party/quiche/src/quiche/http2/adapter/window_manager.h
+@@ -3,6 +3,7 @@
+
+ #include <stddef.h>
+
++#include <cstdint>
+ #include <functional>
+
+ #include "common/platform/api/quiche_export.h"
diff --git a/testing/electron/fix-opus.patch b/testing/electron/fix-opus.patch
new file mode 100644
index 00000000000..8841a32d728
--- /dev/null
+++ b/testing/electron/fix-opus.patch
@@ -0,0 +1,12 @@
+--- a/media/filters/ffmpeg_glue.cc
++++ b/media/filters/ffmpeg_glue.cc
+@@ -142,7 +142,7 @@ const char* FFmpegGlue::GetAllowedAudioDecoders() {
+ static const base::NoDestructor<std::string> kAllowedAudioCodecs([]() {
+ // This should match the configured lists in //third_party/ffmpeg.
+ std::string allowed_decoders(
+- "vorbis,libopus,flac,pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le,"
++ "vorbis,opus,libopus,flac,pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le,"
+ "mp3,pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw");
+ #if BUILDFLAG(USE_PROPRIETARY_CODECS)
+ allowed_decoders += ",aac";
+
diff --git a/testing/electron/fstatat-32bit.patch b/testing/electron/fstatat-32bit.patch
new file mode 100644
index 00000000000..1627ffa7e64
--- /dev/null
+++ b/testing/electron/fstatat-32bit.patch
@@ -0,0 +1,17 @@
+fstatat64 is macrod to fstatat in sys/stat.h in musl- but then that fstatat is
+used in the _syscall4 macro mapping to __NR_$name, and __NR_fstatat is not
+defined anywhere here, as it wants the 64 name.
+
+so, just let it keep the name with an undef of the stat.h macro, then the macro
+expansion below evaluates correctly.
+--- a/third_party/lss/linux_syscall_support.h
++++ b/third_party/lss/linux_syscall_support.h
+@@ -4947,7 +4947,8 @@
+ # endif
+ #endif
+ #if defined(__NR_fstatat64)
++ #undef fstatat64
+ LSS_INLINE _syscall4(int, fstatat64, int, d,
+ const char *, p,
+ struct kernel_stat64 *, b, int, f)
+ #endif
diff --git a/testing/electron/gdbinit.patch b/testing/electron/gdbinit.patch
new file mode 100644
index 00000000000..5958631ec6b
--- /dev/null
+++ b/testing/electron/gdbinit.patch
@@ -0,0 +1,22 @@
+aports is a git tree so these git commands get the wrong directory
+--- a/tools/gdb/gdbinit
++++ b/tools/gdb/gdbinit
+@@ -50,17 +50,7 @@
+
+ def set_src_dir(compile_dir):
+ global src_dir
+- git = subprocess.Popen(
+- ['git', '-C', compile_dir, 'rev-parse', '--show-toplevel'],
+- stdout=subprocess.PIPE,
+- stderr=subprocess.PIPE)
+- src_dir, _ = git.communicate()
+- if git.returncode:
+- return
+- if isinstance(src_dir, str):
+- src_dir = src_dir.rstrip()
+- else:
+- src_dir = src_dir.decode('utf-8').rstrip()
++ src_dir = os.path.abspath(os.getcwd())
+
+ load_libcxx_pretty_printers(src_dir)
+
diff --git a/testing/electron/generic-sensor-include.patch b/testing/electron/generic-sensor-include.patch
new file mode 100644
index 00000000000..e8e2563b3cc
--- /dev/null
+++ b/testing/electron/generic-sensor-include.patch
@@ -0,0 +1,11 @@
+--- a/services/device/public/cpp/generic_sensor/sensor_reading.h
++++ b/services/device/public/cpp/generic_sensor/sensor_reading.h
+@@ -5,6 +5,8 @@
+ #ifndef SERVICES_DEVICE_PUBLIC_CPP_GENERIC_SENSOR_SENSOR_READING_H_
+ #define SERVICES_DEVICE_PUBLIC_CPP_GENERIC_SENSOR_SENSOR_READING_H_
+
++#include <cstddef>
++#include <cstdint>
+ #include <type_traits>
+
+ namespace device {
diff --git a/testing/electron/icon.patch b/testing/electron/icon.patch
new file mode 100644
index 00000000000..101b60ac9cb
--- /dev/null
+++ b/testing/electron/icon.patch
@@ -0,0 +1,21 @@
+--- a/electron/default_app/default_app.ts
++++ b/electron/default_app/default_app.ts
+@@ -61,7 +61,7 @@
+ };
+
+ if (process.platform === 'linux') {
+- options.icon = url.fileURLToPath(new URL('icon.png', import.meta.url));
++ options.icon = 'file:///usr/share/icons/hicolor/1024x1024/apps/electron.png';
+ }
+
+ mainWindow = new BrowserWindow(options);
+--- a/electron/filenames.gni
++++ b/electron/filenames.gni
+@@ -6,7 +6,6 @@
+ ]
+
+ default_app_static_sources = [
+- "default_app/icon.png",
+ "default_app/index.html",
+ "default_app/package.json",
+ "default_app/styles.css",
diff --git a/testing/electron/import-version.patch b/testing/electron/import-version.patch
new file mode 100644
index 00000000000..d275038b27a
--- /dev/null
+++ b/testing/electron/import-version.patch
@@ -0,0 +1,15 @@
+they fixed the import to be glibc conditional, but now nothing is imported so
+all the string functions are missing.
+--
+--- a/chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.cc
++++ b/chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.cc
+@@ -61,8 +61,7 @@
+
+ // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch
+ // of lacros-chrome is complete.
+-#if defined(__GLIBC__) && (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS))
+-#include <gnu/libc-version.h>
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)
+
+ #include "base/linux_util.h"
+ #include "base/strings/string_split.h"
diff --git a/testing/electron/libstdc++13.patch b/testing/electron/libstdc++13.patch
new file mode 100644
index 00000000000..b04fa3551ba
--- /dev/null
+++ b/testing/electron/libstdc++13.patch
@@ -0,0 +1,279 @@
+missing libstdc++13 includes
+--
+--- a/third_party/ruy/src/ruy/profiler/instrumentation.h
++++ b/third_party/ruy/src/ruy/profiler/instrumentation.h
+@@ -19,6 +19,7 @@
+ #ifdef RUY_PROFILER
+ #include <cstdio>
+ #include <mutex>
++#include <string>
+ #include <vector>
+ #endif
+
+--- a/third_party/openscreen/src/platform/base/error.h
++++ b/third_party/openscreen/src/platform/base/error.h
+@@ -6,6 +6,7 @@
+ #define PLATFORM_BASE_ERROR_H_
+
+ #include <cassert>
++#include <cstdint>
+ #include <ostream>
+ #include <string>
+ #include <utility>
+--- a/ui/base/prediction/kalman_filter.h
++++ b/ui/base/prediction/kalman_filter.h
+@@ -8,6 +8,8 @@
+ #include "base/component_export.h"
+ #include "ui/gfx/geometry/matrix3_f.h"
+
++#include <cstdint>
++
+ namespace ui {
+
+ // This Kalman filter is used to predict state in one axles.
+--- a/ui/events/types/scroll_types.h
++++ b/ui/events/types/scroll_types.h
+@@ -5,6 +5,8 @@
+ #ifndef UI_EVENTS_TYPES_SCROLL_TYPES_H_
+ #define UI_EVENTS_TYPES_SCROLL_TYPES_H_
+
++#include <cstdint>
++
+ namespace ui {
+
+ enum class ScrollGranularity : uint8_t {
+--- a/third_party/webrtc/rtc_base/system/file_wrapper.h
++++ b/third_party/webrtc/rtc_base/system/file_wrapper.h
+@@ -14,6 +14,7 @@
+ #include <stddef.h>
+ #include <stdio.h>
+
++#include <cstdint>
+ #include <string>
+
+ #include "absl/strings/string_view.h"
+--- a/third_party/pdfium/constants/annotation_flags.h
++++ b/third_party/pdfium/constants/annotation_flags.h
+@@ -5,6 +5,8 @@
+ #ifndef CONSTANTS_ANNOTATION_FLAGS_H_
+ #define CONSTANTS_ANNOTATION_FLAGS_H_
+
++#include <cstdint>
++
+ namespace pdfium {
+ namespace annotation_flags {
+
+--- a/third_party/s2cellid/src/s2/util/math/mathutil.h
++++ b/third_party/s2cellid/src/s2/util/math/mathutil.h
+@@ -21,6 +21,7 @@
+ #ifndef S2_UTIL_MATH_MATHUTIL_H_
+ #define S2_UTIL_MATH_MATHUTIL_H_
+
++#include <cstdint>
+ #include <type_traits>
+
+ class MathUtil {
+--- a/third_party/s2cellid/src/s2/s1angle.h
++++ b/third_party/s2cellid/src/s2/s1angle.h
+@@ -24,6 +24,7 @@
+ #define S2_S1ANGLE_H_
+
+ #include <math.h>
++#include <cstdint>
+ #include <limits>
+ #include <ostream>
+ #include <type_traits>
+--- a/third_party/maldoca/src/maldoca/ole/header.h
++++ b/third_party/maldoca/src/maldoca/ole/header.h
+@@ -45,6 +45,8 @@
+
+ #include "absl/strings/string_view.h"
+
++#include <cstdint>
++
+ namespace maldoca {
+
+ class OLEHeader {
+--- a/components/password_manager/core/browser/generation/password_generator.h
++++ b/components/password_manager/core/browser/generation/password_generator.h
+@@ -5,6 +5,7 @@
+ #ifndef COMPONENTS_PASSWORD_MANAGER_CORE_BROWSER_GENERATION_PASSWORD_GENERATOR_H_
+ #define COMPONENTS_PASSWORD_MANAGER_CORE_BROWSER_GENERATION_PASSWORD_GENERATOR_H_
+
++#include <cstdint>
+ #include <string>
+
+
+--- a/base/debug/profiler.h
++++ b/base/debug/profiler.h
+@@ -7,6 +7,7 @@
+
+ #include <stddef.h>
+
++#include <cstdint>
+ #include <string>
+
+ #include "base/base_export.h"
+--- a/components/dom_distiller/core/url_utils.h
++++ b/components/dom_distiller/core/url_utils.h
+@@ -5,6 +5,7 @@
+ #ifndef COMPONENTS_DOM_DISTILLER_CORE_URL_UTILS_H_
+ #define COMPONENTS_DOM_DISTILLER_CORE_URL_UTILS_H_
+
++#include <cstdint>
+ #include <string>
+
+ #include "base/strings/string_piece_forward.h"
+--- a/components/feature_engagement/internal/event_storage_validator.h
++++ b/components/feature_engagement/internal/event_storage_validator.h
+@@ -5,6 +5,7 @@
+ #ifndef COMPONENTS_FEATURE_ENGAGEMENT_INTERNAL_EVENT_STORAGE_VALIDATOR_H_
+ #define COMPONENTS_FEATURE_ENGAGEMENT_INTERNAL_EVENT_STORAGE_VALIDATOR_H_
+
++#include <cstdint>
+ #include <string>
+
+ namespace feature_engagement {
+--- a/chrome/test/chromedriver/chrome/web_view_impl.cc
++++ b/chrome/test/chromedriver/chrome/web_view_impl.cc
+@@ -8,6 +8,7 @@
+ #include <algorithm>
+ #include <memory>
+ #include <queue>
++#include <string>
+ #include <utility>
+ #include <vector>
+
+--- a/cc/trees/target_property.cc
++++ b/cc/trees/target_property.cc
+@@ -2,6 +2,8 @@
+ // Use of this source code is governed by a BSD-style license that can be
+ // found in the LICENSE file.
+
++#include <cstdint>
++
+ #include "cc/trees/target_property.h"
+
+ #include "ui/gfx/animation/keyframe/target_property.h"
+--- a/gpu/config/gpu_feature_info.h
++++ b/gpu/config/gpu_feature_info.h
+@@ -5,6 +5,7 @@
+ #ifndef GPU_CONFIG_GPU_FEATURE_INFO_H_
+ #define GPU_CONFIG_GPU_FEATURE_INFO_H_
+
++#include <cstdint>
+ #include <string>
+ #include <vector>
+
+--- a/gpu/config/gpu_driver_bug_workarounds.h
++++ b/gpu/config/gpu_driver_bug_workarounds.h
+@@ -5,6 +5,7 @@
+ #ifndef GPU_CONFIG_GPU_DRIVER_BUG_WORKAROUNDS_H_
+ #define GPU_CONFIG_GPU_DRIVER_BUG_WORKAROUNDS_H_
+
++#include <cstdint>
+ #include <vector>
+
+ #include "build/build_config.h"
+--- a/third_party/blink/public/common/page_state/page_state.h
++++ b/third_party/blink/public/common/page_state/page_state.h
+@@ -5,6 +5,7 @@
+ #ifndef THIRD_PARTY_BLINK_PUBLIC_COMMON_PAGE_STATE_PAGE_STATE_H_
+ #define THIRD_PARTY_BLINK_PUBLIC_COMMON_PAGE_STATE_PAGE_STATE_H_
+
++#include <cstdint>
+ #include <string>
+ #include <vector>
+
+--- a/pdf/document_attachment_info.h
++++ b/pdf/document_attachment_info.h
+@@ -5,6 +5,7 @@
+ #ifndef PDF_DOCUMENT_ATTACHMENT_INFO_H_
+ #define PDF_DOCUMENT_ATTACHMENT_INFO_H_
+
++#include <cstdint>
+ #include <string>
+
+
+--- a/components/payments/content/utility/fingerprint_parser.h
++++ b/components/payments/content/utility/fingerprint_parser.h
+@@ -7,6 +7,7 @@
+
+ #include <stddef.h>
+
++#include <cstdint>
+ #include <string>
+ #include <vector>
+
+--- a/media/base/video_transformation.h
++++ b/media/base/video_transformation.h
+@@ -5,6 +5,7 @@
+ #ifndef MEDIA_BASE_VIDEO_TRANSFORMATION_H_
+ #define MEDIA_BASE_VIDEO_TRANSFORMATION_H_
+
++#include <cstdint>
+ #include <string>
+
+ #include "base/numerics/math_constants.h"
+--- a/components/omnibox/browser/on_device_head_model.h
++++ b/components/omnibox/browser/on_device_head_model.h
+@@ -5,6 +5,7 @@
+ #ifndef COMPONENTS_OMNIBOX_BROWSER_ON_DEVICE_HEAD_MODEL_H_
+ #define COMPONENTS_OMNIBOX_BROWSER_ON_DEVICE_HEAD_MODEL_H_
+
++#include <cstdint>
+ #include <string>
+ #include <utility>
+ #include <vector>
+--- a/components/autofill/core/browser/autofill_ablation_study.h
++++ b/components/autofill/core/browser/autofill_ablation_study.h
+@@ -5,6 +5,7 @@
+ #ifndef COMPONENTS_AUTOFILL_CORE_BROWSER_AUTOFILL_ABLATION_STUDY_H_
+ #define COMPONENTS_AUTOFILL_CORE_BROWSER_AUTOFILL_ABLATION_STUDY_H_
+
++#include <cstdint>
+ #include <string>
+
+ class GURL;
+--- a/components/autofill/core/browser/strike_databases/strike_database_base.h
++++ b/components/autofill/core/browser/strike_databases/strike_database_base.h
+@@ -5,6 +5,7 @@
+ #ifndef COMPONENTS_AUTOFILL_CORE_BROWSER_STRIKE_DATABASES_STRIKE_DATABASE_BASE_H_
+ #define COMPONENTS_AUTOFILL_CORE_BROWSER_STRIKE_DATABASES_STRIKE_DATABASE_BASE_H_
+
++#include <cstdint>
+ #include <map>
+ #include <string>
+ #include <vector>
+--- a/chrome/browser/resource_coordinator/decision_details.h
++++ b/chrome/browser/resource_coordinator/decision_details.h
+@@ -5,6 +5,7 @@
+ #ifndef CHROME_BROWSER_RESOURCE_COORDINATOR_DECISION_DETAILS_H_
+ #define CHROME_BROWSER_RESOURCE_COORDINATOR_DECISION_DETAILS_H_
+
++#include <cstdint>
+ #include <string>
+ #include <vector>
+
+--- a/net/third_party/quiche/src/quiche/quic/core/qpack/qpack_stream_sender_delegate.h
++++ b/net/third_party/quiche/src/quiche/quic/core/qpack/qpack_stream_sender_delegate.h
+@@ -8,6 +8,8 @@
+ #include "absl/strings/string_view.h"
+ #include "quiche/quic/platform/api/quic_export.h"
+
++#include <cstdint>
++
+ namespace quic {
+
+ // This interface writes encoder/decoder data to peer.
+--- a/third_party/perfetto/include/perfetto/base/export.h
++++ b/third_party/perfetto/include/perfetto/base/export.h
+@@ -17,6 +17,8 @@
+ #ifndef INCLUDE_PERFETTO_BASE_EXPORT_H_
+ #define INCLUDE_PERFETTO_BASE_EXPORT_H_
+
++#include <cstdint>
++
+ #include "perfetto/base/build_config.h"
+ #include "perfetto/public/abi/export.h"
+
diff --git a/testing/electron/mman.patch b/testing/electron/mman.patch
new file mode 100644
index 00000000000..d15605a47ff
--- /dev/null
+++ b/testing/electron/mman.patch
@@ -0,0 +1,13 @@
+needed for PKEY_DISABLE_WRITE. these are documented as also being from sys/
+mman.h with GNU_SOURCE, but musl doesn't do that, so these are strictly from
+kernel headers
+--- a/base/allocator/partition_allocator/src/partition_alloc/partition_alloc_unittest.cc
++++ b/base/allocator/partition_allocator/src/partition_alloc/partition_alloc_unittest.cc
+@@ -60,6 +60,7 @@
+ #include <sys/mman.h>
+ #include <sys/resource.h>
+ #include <sys/time.h>
++#include <linux/mman.h>
+ #endif // BUILDFLAG(IS_POSIX)
+
+ #if BUILDFLAG(ENABLE_PARTITION_ALLOC_AS_MALLOC_SUPPORT) && BUILDFLAG(IS_MAC)
diff --git a/testing/electron/musl-auxv.patch b/testing/electron/musl-auxv.patch
new file mode 100644
index 00000000000..ce348cc4e23
--- /dev/null
+++ b/testing/electron/musl-auxv.patch
@@ -0,0 +1,11 @@
+--- ./v8/src/base/cpu.cc.orig
++++ ./v8/src/base/cpu.cc
+@@ -14,7 +14,7 @@
+ #if V8_OS_LINUX
+ #include <linux/auxvec.h> // AT_HWCAP
+ #endif
+-#if V8_GLIBC_PREREQ(2, 16) || V8_OS_ANDROID
++#if 1
+ #include <sys/auxv.h> // getauxval()
+ #endif
+ #if V8_OS_QNX
diff --git a/testing/electron/musl-sandbox.patch b/testing/electron/musl-sandbox.patch
new file mode 100644
index 00000000000..52c3b210503
--- /dev/null
+++ b/testing/electron/musl-sandbox.patch
@@ -0,0 +1,124 @@
+musl uses different syscalls from glibc for some functions, so the sandbox has
+to account for that
+--
+diff --git a/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc ./sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
+index ff5a1c0..da56b9b 100644
+--- a/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
++++ ./sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
+@@ -139,21 +139,11 @@ namespace sandbox {
+ // present (as in newer versions of posix_spawn).
+ ResultExpr RestrictCloneToThreadsAndEPERMFork() {
+ const Arg<unsigned long> flags(0);
+-
+- // TODO(mdempsky): Extend DSL to support (flags & ~mask1) == mask2.
+- const uint64_t kAndroidCloneMask = CLONE_VM | CLONE_FS | CLONE_FILES |
+- CLONE_SIGHAND | CLONE_THREAD |
+- CLONE_SYSVSEM;
+- const uint64_t kObsoleteAndroidCloneMask = kAndroidCloneMask | CLONE_DETACHED;
+-
+- const uint64_t kGlibcPthreadFlags =
+- CLONE_VM | CLONE_FS | CLONE_FILES | CLONE_SIGHAND | CLONE_THREAD |
+- CLONE_SYSVSEM | CLONE_SETTLS | CLONE_PARENT_SETTID | CLONE_CHILD_CLEARTID;
+- const BoolExpr glibc_test = flags == kGlibcPthreadFlags;
+-
+- const BoolExpr android_test =
+- AnyOf(flags == kAndroidCloneMask, flags == kObsoleteAndroidCloneMask,
+- flags == kGlibcPthreadFlags);
++ const int required = CLONE_VM | CLONE_FS | CLONE_FILES | CLONE_SIGHAND |
++ CLONE_THREAD | CLONE_SYSVSEM;
++ const int safe = CLONE_SETTLS | CLONE_PARENT_SETTID | CLONE_CHILD_CLEARTID |
++ CLONE_DETACHED;
++ const BoolExpr thread_clone_ok = (flags&~safe)==required;
+
+ // The following two flags are the two important flags in any vfork-emulating
+ // clone call. EPERM any clone call that contains both of them.
+@@ -163,7 +153,7 @@ ResultExpr RestrictCloneToThreadsAndEPERMFork() {
+ AnyOf((flags & (CLONE_VM | CLONE_THREAD)) == 0,
+ (flags & kImportantCloneVforkFlags) == kImportantCloneVforkFlags);
+
+- return If(IsAndroid() ? android_test : glibc_test, Allow())
++ return If(thread_clone_ok, Allow())
+ .ElseIf(is_fork_or_clone_vfork, Error(EPERM))
+ .Else(CrashSIGSYSClone());
+ }
+diff --git a/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc ./sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
+index d9d1882..0567557 100644
+--- a/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
++++ ./sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
+@@ -392,6 +392,7 @@ bool SyscallSets::IsAllowedProcessStartOrDeath(int sysno) {
+ #if defined(__i386__)
+ case __NR_waitpid:
+ #endif
++ case __NR_set_tid_address:
+ return true;
+ case __NR_clone: // Should be parameter-restricted.
+ case __NR_setns: // Privileged.
+@@ -404,7 +405,6 @@ bool SyscallSets::IsAllowedProcessStartOrDeath(int sysno) {
+ #if defined(__i386__) || defined(__x86_64__) || defined(__mips__)
+ case __NR_set_thread_area:
+ #endif
+- case __NR_set_tid_address:
+ case __NR_unshare:
+ #if !defined(__mips__) && !defined(__aarch64__)
+ case __NR_vfork:
+@@ -514,6 +514,8 @@ bool SyscallSets::IsAllowedAddressSpaceAccess(int sysno) {
+ case __NR_mlock:
+ case __NR_munlock:
+ case __NR_munmap:
++ case __NR_mremap:
++ case __NR_membarrier:
+ return true;
+ case __NR_madvise:
+ case __NR_mincore:
+@@ -531,7 +533,6 @@ bool SyscallSets::IsAllowedAddressSpaceAccess(int sysno) {
+ case __NR_modify_ldt:
+ #endif
+ case __NR_mprotect:
+- case __NR_mremap:
+ case __NR_msync:
+ case __NR_munlockall:
+ case __NR_readahead:
+diff --git a/sandbox/linux/system_headers/linux_syscalls.h ./sandbox/linux/system_headers/linux_syscalls.h
+index 2b78a0c..b6fedb5 100644
+--- a/sandbox/linux/system_headers/linux_syscalls.h
++++ b/sandbox/linux/system_headers/linux_syscalls.h
+@@ -10,6 +10,7 @@
+ #define SANDBOX_LINUX_SYSTEM_HEADERS_LINUX_SYSCALLS_H_
+
+ #include "build/build_config.h"
++#include <sys/syscall.h>
+
+ #if defined(__x86_64__)
+ #include "sandbox/linux/system_headers/x86_64_linux_syscalls.h"
+--- a/sandbox/policy/linux/bpf_renderer_policy_linux.cc
++++ b/sandbox/policy/linux/bpf_renderer_policy_linux.cc
+@@ -94,6 +94,9 @@
+ case __NR_pwrite64:
+ case __NR_sched_get_priority_max:
+ case __NR_sched_get_priority_min:
++ case __NR_sched_getparam:
++ case __NR_sched_getscheduler:
++ case __NR_sched_setscheduler:
+ case __NR_sysinfo:
+ case __NR_times:
+ case __NR_uname:
+--- a/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
++++ b/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
+@@ -225,10 +225,15 @@
+ if (sysno == __NR_getpriority || sysno ==__NR_setpriority)
+ return RestrictGetSetpriority(current_pid);
+
++ // XXX: hacks for musl sandbox, calls needed?
++ if (sysno == __NR_sched_getparam || sysno == __NR_sched_getscheduler ||
++ sysno == __NR_sched_setscheduler) {
++ return Allow();
++ }
++
+ // The scheduling syscalls are used in threading libraries and also heavily in
+ // abseil. See for example https://crbug.com/1370394.
+- if (sysno == __NR_sched_getaffinity || sysno == __NR_sched_getparam ||
+- sysno == __NR_sched_getscheduler || sysno == __NR_sched_setscheduler) {
++ if (sysno == __NR_sched_getaffinity) {
+ return RestrictSchedTarget(current_pid, sysno);
+ }
+
diff --git a/testing/electron/musl-tid-caching.patch b/testing/electron/musl-tid-caching.patch
new file mode 100644
index 00000000000..498ce827317
--- /dev/null
+++ b/testing/electron/musl-tid-caching.patch
@@ -0,0 +1,85 @@
+the sandbox caching of thread id's only works with glibc
+see: https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/32356
+see: https://gitlab.alpinelinux.org/alpine/aports/-/issues/13579
+--
+--- a/sandbox/linux/services/namespace_sandbox.cc
++++ b/sandbox/linux/services/namespace_sandbox.cc
+@@ -209,6 +209,70 @@
+ return base::LaunchProcess(argv, launch_options_copy);
+ }
+
++#if defined(__aarch64__)
++#define TLS_ABOVE_TP
++#endif
++
++struct musl_pthread
++{
++ /* Part 1 -- these fields may be external or
++ * internal (accessed via asm) ABI. Do not change. */
++ struct pthread *self;
++#ifndef TLS_ABOVE_TP
++ uintptr_t *dtv;
++#endif
++ struct pthread *prev, *next; /* non-ABI */
++ uintptr_t sysinfo;
++#ifndef TLS_ABOVE_TP
++#ifdef CANARY_PAD
++ uintptr_t canary_pad;
++#endif
++ uintptr_t canary;
++#endif
++
++/* Part 2 -- implementation details, non-ABI. */
++ int tid;
++ int errno_val;
++ volatile int detach_state;
++ volatile int cancel;
++ volatile unsigned char canceldisable, cancelasync;
++ unsigned char tsd_used:1;
++ unsigned char dlerror_flag:1;
++ unsigned char *map_base;
++ size_t map_size;
++ void *stack;
++ size_t stack_size;
++ size_t guard_size;
++ void *result;
++ struct __ptcb *cancelbuf;
++ void **tsd;
++ struct {
++ volatile void *volatile head;
++ long off;
++ volatile void *volatile pending;
++ } robust_list;
++ int h_errno_val;
++ volatile int timer_id;
++ locale_t locale;
++ volatile int killlock[1];
++ char *dlerror_buf;
++ void *stdio_locks;
++
++ /* Part 3 -- the positions of these fields relative to
++ * the end of the structure is external and internal ABI. */
++#ifdef TLS_ABOVE_TP
++ uintptr_t canary;
++ uintptr_t *dtv;
++#endif
++};
++
++void MaybeUpdateMuslTidCache()
++{
++ pid_t real_tid = sys_gettid();
++ pid_t* cached_tid_location = &reinterpret_cast<struct musl_pthread*>(pthread_self())->tid;
++ *cached_tid_location = real_tid;
++}
++
+ // static
+ pid_t NamespaceSandbox::ForkInNewPidNamespace(bool drop_capabilities_in_child) {
+ const pid_t pid =
+@@ -226,6 +290,7 @@
+ #if defined(LIBC_GLIBC)
+ MaybeUpdateGlibcTidCache();
+ #endif
++ MaybeUpdateMuslTidCache();
+ return 0;
+ }
+
diff --git a/testing/electron/musl-v8-monotonic-pthread-cont_timedwait.patch b/testing/electron/musl-v8-monotonic-pthread-cont_timedwait.patch
new file mode 100644
index 00000000000..3a99ee54309
--- /dev/null
+++ b/testing/electron/musl-v8-monotonic-pthread-cont_timedwait.patch
@@ -0,0 +1,23 @@
+use monotonic clock for pthread_cond_timedwait with musl too, since it supports
+it
+--
+--- a/v8/src/base/platform/condition-variable.cc
++++ b/v8/src/base/platform/condition-variable.cc
+@@ -16,7 +16,7 @@
+
+ ConditionVariable::ConditionVariable() {
+ #if (V8_OS_FREEBSD || V8_OS_NETBSD || V8_OS_OPENBSD || \
+- (V8_OS_LINUX && V8_LIBC_GLIBC))
++ V8_OS_LINUX)
+ // On Free/Net/OpenBSD and Linux with glibc we can change the time
+ // source for pthread_cond_timedwait() to use the monotonic clock.
+ pthread_condattr_t attr;
+@@ -92,7 +92,7 @@
+ &native_handle_, &mutex->native_handle(), &ts);
+ #else
+ #if (V8_OS_FREEBSD || V8_OS_NETBSD || V8_OS_OPENBSD || \
+- (V8_OS_LINUX && V8_LIBC_GLIBC))
++ V8_OS_LINUX)
+ // On Free/Net/OpenBSD and Linux with glibc we can change the time
+ // source for pthread_cond_timedwait() to use the monotonic clock.
+ result = clock_gettime(CLOCK_MONOTONIC, &ts);
diff --git a/testing/electron/no-execinfo.patch b/testing/electron/no-execinfo.patch
new file mode 100644
index 00000000000..4b578976a3e
--- /dev/null
+++ b/testing/electron/no-execinfo.patch
@@ -0,0 +1,69 @@
+musl does not have execinfo.h, and hence no implementation of
+. backtrace()
+. backtrace_symbols()
+for discussion about this, see https://www.openwall.com/lists/musl/2021/07/16/1
+--
+--- a/v8/src/codegen/external-reference-table.cc
++++ b/v8/src/codegen/external-reference-table.cc
+@@ -11,7 +11,9 @@
+
+ #if defined(DEBUG) && defined(V8_OS_LINUX) && !defined(V8_OS_ANDROID)
+ #define SYMBOLIZE_FUNCTION
++#if defined(__GLIBC__)
+ #include <execinfo.h>
++#endif
+
+ #include <vector>
+
+@@ -96,7 +98,7 @@
+ }
+
+ const char* ExternalReferenceTable::ResolveSymbol(void* address) {
+-#ifdef SYMBOLIZE_FUNCTION
++#if defined(SYMBOLIZE_FUNCTION) && defined(__GLIBC__)
+ char** names = backtrace_symbols(&address, 1);
+ const char* name = names[0];
+ // The array of names is malloc'ed. However, each name string is static
+--- a/third_party/swiftshader/third_party/llvm-subzero/build/Linux/include/llvm/Config/config.h
++++ b/third_party/swiftshader/third_party/llvm-subzero/build/Linux/include/llvm/Config/config.h
+@@ -58,7 +58,7 @@
+ #define HAVE_ERRNO_H 1
+
+ /* Define to 1 if you have the <execinfo.h> header file. */
+-#define HAVE_EXECINFO_H 1
++/* #define HAVE_EXECINFO_H 1 */
+
+ /* Define to 1 if you have the <fcntl.h> header file. */
+ #define HAVE_FCNTL_H 1
+--- a/base/debug/stack_trace.cc
++++ b/base/debug/stack_trace.cc
+@@ -251,7 +253,9 @@
+ }
+
+ void StackTrace::OutputToStream(std::ostream* os) const {
++#if defined(__GLIBC__) && !defined(_AIX)
+ OutputToStreamWithPrefix(os, nullptr);
++#endif
+ }
+
+ std::string StackTrace::ToString() const {
+@@ -281,7 +281,7 @@
+ }
+ std::string StackTrace::ToStringWithPrefix(const char* prefix_string) const {
+ std::stringstream stream;
+-#if !defined(__UCLIBC__) && !defined(_AIX)
++#if defined(__GLIBC__) && !defined(_AIX)
+ OutputToStreamWithPrefix(&stream, prefix_string);
+ #endif
+ return stream.str();
+--- a/base/debug/stack_trace_unittest.cc
++++ b/base/debug/stack_trace_unittest.cc
+@@ -33,7 +33,7 @@
+ typedef testing::Test StackTraceTest;
+ #endif
+
+-#if !defined(__UCLIBC__) && !defined(_AIX)
++#if !defined(__UCLIBC__) && !defined(_AIX) && defined(__GLIBC__)
+ // StackTrace::OutputToStream() is not implemented under uclibc, nor AIX.
+ // See https://crbug.com/706728
+
diff --git a/testing/electron/no-mallinfo.patch b/testing/electron/no-mallinfo.patch
new file mode 100644
index 00000000000..37abb3fe062
--- /dev/null
+++ b/testing/electron/no-mallinfo.patch
@@ -0,0 +1,124 @@
+musl does not implement mallinfo()/mallinfo2()
+(or rather, malloc-ng, musl's allocator, doesn't)
+--
+--- a/base/trace_event/malloc_dump_provider.cc
++++ b/base/trace_event/malloc_dump_provider.cc
+@@ -185,7 +185,6 @@
+ #define MALLINFO2_FOUND_IN_LIBC
+ struct mallinfo2 info = mallinfo2();
+ #endif
+-#endif // defined(__GLIBC__) && defined(__GLIBC_PREREQ)
+ #if !defined(MALLINFO2_FOUND_IN_LIBC)
+ struct mallinfo info = mallinfo();
+ #endif
+@@ -205,6 +204,7 @@
+ sys_alloc_dump->AddScalar(MemoryAllocatorDump::kNameSize,
+ MemoryAllocatorDump::kUnitsBytes, info.uordblks);
+ }
++#endif // defined(__GLIBC__) && defined(__GLIBC_PREREQ)
+ }
+ #endif
+
+@@ -339,7 +340,7 @@
+ &allocated_objects_count);
+ #elif BUILDFLAG(IS_FUCHSIA)
+ // TODO(fuchsia): Port, see https://crbug.com/706592.
+-#else
++#elif defined(__GLIBC__)
+ ReportMallinfoStats(/*pmd=*/nullptr, &total_virtual_size, &resident_size,
+ &allocated_objects_size, &allocated_objects_count);
+ #endif
+--- a/base/process/process_metrics_posix.cc
++++ b/base/process/process_metrics_posix.cc
+@@ -105,7 +105,7 @@
+
+ #endif // !BUILDFLAG(IS_FUCHSIA)
+
+-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID)
++#if (BUILDFLAG(IS_LINUX) && defined(__GLIBC__)) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID)
+ namespace {
+
+ size_t GetMallocUsageMallinfo() {
+@@ -123,7 +123,7 @@
+ }
+
+ } // namespace
+-#endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ||
++#endif // (BUILDFLAG(IS_LINUX) && defined(__GLIBC__)) || BUILDFLAG(IS_CHROMEOS) ||
+ // BUILDFLAG(IS_ANDROID)
+
+ size_t ProcessMetrics::GetMallocUsage() {
+@@ -131,9 +131,9 @@
+ malloc_statistics_t stats = {0};
+ malloc_zone_statistics(nullptr, &stats);
+ return stats.size_in_use;
+-#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID)
++#elif (BUILDFLAG(IS_LINUX) && defined(__GLIBC__)) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID)
+ return GetMallocUsageMallinfo();
+-#elif BUILDFLAG(IS_FUCHSIA)
++#else
+ // TODO(fuchsia): Not currently exposed. https://crbug.com/735087.
+ return 0;
+ #endif
+--- ./third_party/tflite/src/tensorflow/lite/profiling/memory_info.cc.orig
++++ ./third_party/tflite/src/tensorflow/lite/profiling/memory_info.cc
+@@ -35,7 +35,7 @@
+
+ MemoryUsage GetMemoryUsage() {
+ MemoryUsage result;
+-#ifdef __linux__
++#if defined(__linux__) && defined(__GLIBC__)
+ rusage res;
+ if (getrusage(RUSAGE_SELF, &res) == 0) {
+ result.max_rss_kb = res.ru_maxrss;
+--- ./third_party/swiftshader/third_party/llvm-subzero/lib/Support/Unix/Process.inc
++++ ./third_party/swiftshader/third_party/llvm-subzero/lib/Support/Unix/Process.inc.orig
+@@ -86,11 +86,11 @@
+ }
+
+ size_t Process::GetMallocUsage() {
+-#if defined(HAVE_MALLINFO2)
++#if defined(HAVE_MALLINFO2) && defined(__GLIBC__)
+ struct mallinfo2 mi;
+ mi = ::mallinfo2();
+ return mi.uordblks;
+-#elif defined(HAVE_MALLINFO)
++#elif defined(HAVE_MALLINFO) && defined(__GLIBC__)
+ struct mallinfo mi;
+ mi = ::mallinfo();
+ return mi.uordblks;
+
+--- ./third_party/swiftshader/third_party/llvm-10.0/configs/linux/include/llvm/Config/config.h.orig 2019-09-30 13:03:42.556880537 -0400
++++ ./third_party/swiftshader/third_party/llvm-10.0/configs/linux/include/llvm/Config/config.h 2019-09-30 13:07:27.989821227 -0400
+@@ -122,7 +122,9 @@
+ /* #undef HAVE_MALLCTL */
+
+ /* Define to 1 if you have the `mallinfo' function. */
++#if defined(__GLIBC__)
+ #define HAVE_MALLINFO 1
++#endif
+
+ /* Define to 1 if you have the <malloc.h> header file. */
+ #define HAVE_MALLOC_H 1
+--- a/base/allocator/partition_allocator/src/partition_alloc/shim/allocator_shim_default_dispatch_to_partition_alloc.cc
++++ b/base/allocator/partition_allocator/src/partition_alloc/shim/allocator_shim_default_dispatch_to_partition_alloc.cc
+@@ -717,7 +717,7 @@
+
+ #endif // !BUILDFLAG(IS_APPLE) && !BUILDFLAG(IS_ANDROID)
+
+-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)
++#if 0
+ SHIM_ALWAYS_EXPORT struct mallinfo mallinfo(void) __THROW {
+ base::SimplePartitionStatsDumper allocator_dumper;
+ Allocator()->DumpStats("malloc", true, &allocator_dumper);
+--- a/base/allocator/partition_allocator/src/partition_alloc/shim/allocator_shim_default_dispatch_to_partition_alloc_unittest.cc
++++ b/base/allocator/partition_allocator/src/partition_alloc/shim/allocator_shim_default_dispatch_to_partition_alloc_unittest.cc
+@@ -24,7 +24,7 @@
+ #if BUILDFLAG(USE_PARTITION_ALLOC_AS_MALLOC)
+
+ // Platforms on which we override weak libc symbols.
+-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)
++#if (BUILDFLAG(IS_LINUX) && defined(__GLIBC__)) || BUILDFLAG(IS_CHROMEOS)
+
+ NOINLINE void FreeForTest(void* data) {
+ free(data);
diff --git a/testing/electron/no-res-ninit-nclose.patch b/testing/electron/no-res-ninit-nclose.patch
new file mode 100644
index 00000000000..d74f6cd88c9
--- /dev/null
+++ b/testing/electron/no-res-ninit-nclose.patch
@@ -0,0 +1,32 @@
+similar to dns-resolver.patch, musl doesn't have res_ninit and so on
+--
+--- a/net/dns/public/scoped_res_state.cc
++++ b/net/dns/public/scoped_res_state.cc
+@@ -13,7 +13,7 @@
+ namespace net {
+
+ ScopedResState::ScopedResState() {
+-#if BUILDFLAG(IS_OPENBSD) || BUILDFLAG(IS_FUCHSIA)
++#if BUILDFLAG(IS_OPENBSD) || BUILDFLAG(IS_FUCHSIA) || defined(_GNU_SOURCE)
+ // Note: res_ninit in glibc always returns 0 and sets RES_INIT.
+ // res_init behaves the same way.
+ memset(&_res, 0, sizeof(_res));
+@@ -25,16 +25,8 @@
+ }
+
+ ScopedResState::~ScopedResState() {
+-#if !BUILDFLAG(IS_OPENBSD) && !BUILDFLAG(IS_FUCHSIA)
+-
+- // Prefer res_ndestroy where available.
+-#if BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_FREEBSD)
+- res_ndestroy(&res_);
+-#else
+- res_nclose(&res_);
+-#endif // BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_FREEBSD)
+-
+-#endif // !BUILDFLAG(IS_OPENBSD) && !BUILDFLAG(IS_FUCHSIA)
++ // musl res_init() doesn't actually do anything
++ // no destruction is necessary as no memory has been allocated
+ }
+
+ bool ScopedResState::IsValid() const {
diff --git a/testing/electron/no-sandbox-settls.patch b/testing/electron/no-sandbox-settls.patch
new file mode 100644
index 00000000000..02b3b4c49c8
--- /dev/null
+++ b/testing/electron/no-sandbox-settls.patch
@@ -0,0 +1,14 @@
+this optimisation of CLONE_SETTLS is not valid used like this, and future musl
+clone(3) will EINVAL on this use
+--
+--- a/sandbox/linux/services/credentials.cc
++++ b/sandbox/linux/services/credentials.cc
+@@ -89,7 +89,7 @@
+
+ int clone_flags = CLONE_FS | LINUX_SIGCHLD;
+ void* tls = nullptr;
+-#if (defined(ARCH_CPU_X86_64) || defined(ARCH_CPU_ARM_FAMILY)) && \
++#if 0 && (defined(ARCH_CPU_X86_64) || defined(ARCH_CPU_ARM_FAMILY)) && \
+ !defined(MEMORY_SANITIZER)
+ // Use CLONE_VM | CLONE_VFORK as an optimization to avoid copying page tables.
+ // Since clone writes to the new child's TLS before returning, we must set a
diff --git a/testing/electron/node-configure-distutils.patch b/testing/electron/node-configure-distutils.patch
new file mode 100644
index 00000000000..add7a169c2d
--- /dev/null
+++ b/testing/electron/node-configure-distutils.patch
@@ -0,0 +1,52 @@
+From 95534ad82f4e33f53fd50efe633d43f8da70cba6 Mon Sep 17 00:00:00 2001
+From: Luigi Pinca <luigipinca@gmail.com>
+Date: Wed, 8 Nov 2023 21:20:53 +0100
+Subject: [PATCH] build: fix build with Python 3.12
+
+Replace `distutils.version.StrictVersion` with
+`packaging.version.Version`.
+
+Refs: https://github.com/nodejs/node/pull/50209#issuecomment-1795852539
+PR-URL: https://github.com/nodejs/node/pull/50582
+Reviewed-By: Richard Lau <rlau@redhat.com>
+Reviewed-By: Chengzhong Wu <legendecas@gmail.com>
+---
+ configure.py | 11 +++++------
+ 1 file changed, 5 insertions(+), 6 deletions(-)
+
+diff --git a/third_party/electron_node/configure.py b/third_party/electron_node/configure.py
+index 33671a034290df..be95decd5668f2 100755
+--- a/third_party/electron_node/configure.py
++++ b/third_party/electron_node/configure.py
+@@ -14,8 +14,6 @@
+ import io
+ from pathlib import Path
+
+-from distutils.version import StrictVersion
+-
+ # If not run from node/, cd to node/.
+ os.chdir(Path(__file__).parent)
+
+@@ -30,6 +28,7 @@
+
+ sys.path.insert(0, str(tools_path / 'gyp' / 'pylib'))
+ from gyp.common import GetFlavor
++from packaging.version import Version
+
+ # imports in tools/configure.d
+ sys.path.insert(0, str(tools_path / 'configure.d'))
+@@ -1566,10 +1565,10 @@ def without_ssl_error(option):
+ # supported asm compiler for AVX2. See https://github.com/openssl/openssl/
+ # blob/OpenSSL_1_1_0-stable/crypto/modes/asm/aesni-gcm-x86_64.pl#L52-L69
+ openssl110_asm_supported = \
+- ('gas_version' in variables and StrictVersion(variables['gas_version']) >= StrictVersion('2.23')) or \
+- ('xcode_version' in variables and StrictVersion(variables['xcode_version']) >= StrictVersion('5.0')) or \
+- ('llvm_version' in variables and StrictVersion(variables['llvm_version']) >= StrictVersion('3.3')) or \
+- ('nasm_version' in variables and StrictVersion(variables['nasm_version']) >= StrictVersion('2.10'))
++ ('gas_version' in variables and Version(variables['gas_version']) >= Version('2.23')) or \
++ ('xcode_version' in variables and Version(variables['xcode_version']) >= Version('5.0')) or \
++ ('llvm_version' in variables and Version(variables['llvm_version']) >= Version('3.3')) or \
++ ('nasm_version' in variables and Version(variables['nasm_version']) >= Version('2.10'))
+
+ if is_x86 and not openssl110_asm_supported:
+ error('''Did not find a new enough assembler, install one or build with
diff --git a/testing/electron/node-gyp-distutils.patch b/testing/electron/node-gyp-distutils.patch
new file mode 100644
index 00000000000..80278b38812
--- /dev/null
+++ b/testing/electron/node-gyp-distutils.patch
@@ -0,0 +1,11 @@
+--- ./third_party/electron_node/tools/gyp/pylib/gyp/input.py.orig
++++ ./third_party/electron_node/tools/gyp/pylib/gyp/input.py
+@@ -16,7 +16,7 @@
+ import sys
+ import threading
+ import traceback
+-from distutils.version import StrictVersion
++from packaging.version import Version as StrictVersion
+ from gyp.common import GypError
+ from gyp.common import OrderedSet
+
diff --git a/testing/electron/partalloc-no-tagging-arm64.patch b/testing/electron/partalloc-no-tagging-arm64.patch
new file mode 100644
index 00000000000..e5c75251874
--- /dev/null
+++ b/testing/electron/partalloc-no-tagging-arm64.patch
@@ -0,0 +1,14 @@
+Hard-disable memory tagging on ARM64 - it does exist there but musl is
+missing some required interface headers for it, and it's not clear how
+to make the partalloc support code for it work.
+--- ./base/allocator/partition_allocator/partition_alloc.gni.orig
++++ ./base/allocator/partition_allocator/partition_alloc.gni
+@@ -30,7 +30,7 @@
+ }
+
+ has_memory_tagging =
+- current_cpu == "arm64" && is_clang && !is_asan && (is_linux || is_android)
++ false
+
+ declare_args() {
+ # Causes all the allocations to be routed via allocator_shim.cc. Usually,
diff --git a/testing/electron/perfetto-libstdc++.patch b/testing/electron/perfetto-libstdc++.patch
new file mode 100644
index 00000000000..31ff9d95bb5
--- /dev/null
+++ b/testing/electron/perfetto-libstdc++.patch
@@ -0,0 +1,20 @@
+--- a/third_party/perfetto/src/trace_processor/perfetto_sql/engine/created_function.cc
++++ b/third_party/perfetto/src/trace_processor/perfetto_sql/engine/created_function.cc
+@@ -107,7 +107,7 @@
+ // the destructors run correctly for non-trivial members of the
+ // union.
+ using Data =
+- std::variant<int64_t, double, OwnedString, OwnedBytes, nullptr_t>;
++ std::variant<int64_t, double, OwnedString, OwnedBytes, std::nullptr_t>;
+
+ StoredSqlValue(SqlValue value) {
+ switch (value.type) {
+@@ -132,7 +132,7 @@
+ }
+
+ SqlValue AsSqlValue() {
+- if (std::holds_alternative<nullptr_t>(data)) {
++ if (std::holds_alternative<std::nullptr_t>(data)) {
+ return SqlValue();
+ } else if (std::holds_alternative<int64_t>(data)) {
+ return SqlValue::Long(std::get<int64_t>(data));
diff --git a/testing/electron/pvalloc.patch b/testing/electron/pvalloc.patch
new file mode 100644
index 00000000000..1d874d6565b
--- /dev/null
+++ b/testing/electron/pvalloc.patch
@@ -0,0 +1,33 @@
+the pvalloc/valloc symbols are obsolete and not implemented in musl
+--
+--- a/base/allocator/partition_allocator/src/partition_alloc/shim/allocator_shim_unittest.cc
++++ b/base/allocator/partition_allocator/src/partition_alloc/shim/allocator_shim_unittest.cc
+@@ -375,7 +375,7 @@
+ ASSERT_GE(aligned_allocs_intercepted_by_alignment[128], 1u);
+ ASSERT_GE(aligned_allocs_intercepted_by_size[53], 1u);
+
+-#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_ANDROID)
++#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_ANDROID) && defined(__GLIBC__)
+ void* pvalloc_ptr = pvalloc(67);
+ ASSERT_NE(nullptr, pvalloc_ptr);
+ ASSERT_EQ(0u, reinterpret_cast<uintptr_t>(pvalloc_ptr) % kPageSize);
+@@ -414,7 +414,7 @@
+ free(memalign_ptr);
+ ASSERT_GE(frees_intercepted_by_addr[Hash(memalign_ptr)], 1u);
+
+-#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_ANDROID)
++#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_ANDROID) && defined(__GLIBC__)
+ free(pvalloc_ptr);
+ ASSERT_GE(frees_intercepted_by_addr[Hash(pvalloc_ptr)], 1u);
+ #endif // BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_ANDROID)
+--- a/base/process/memory_unittest.cc
++++ b/base/process/memory_unittest.cc
+@@ -359,7 +359,7 @@
+ #endif // BUILDFLAG(IS_WIN)
+ #endif // !BUILDFLAG(IS_MAC)
+
+-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)
++#if (BUILDFLAG(IS_LINUX) && defined(__GLIBC__)) || BUILDFLAG(IS_CHROMEOS)
+
+ TEST_F(OutOfMemoryDeathTest, Valloc) {
+ ASSERT_OOM_DEATH({
diff --git a/testing/electron/python-jinja-3.10.patch b/testing/electron/python-jinja-3.10.patch
new file mode 100644
index 00000000000..d4571f19f06
--- /dev/null
+++ b/testing/electron/python-jinja-3.10.patch
@@ -0,0 +1,22 @@
+--- a/third_party/electron_node/tools/inspector_protocol/jinja2/runtime.py
++++ b/third_party/electron_node/tools/inspector_protocol/jinja2/runtime.py
+@@ -315,7 +315,7 @@ class Context(with_metaclass(ContextMeta
+
+ # register the context as mapping if possible
+ try:
+- from collections import Mapping
++ from collections.abc import Mapping
+ Mapping.register(Context)
+ except ImportError:
+ pass
+--- a/third_party/electron_node/tools/inspector_protocol/jinja2/sandbox.py
++++ b/third_party/electron_node/tools/inspector_protocol/jinja2/sandbox.py
+@@ -14,7 +14,7 @@
+ """
+ import types
+ import operator
+-from collections import Mapping
++from collections.abc import Mapping
+ from jinja2.environment import Environment
+ from jinja2.exceptions import SecurityError
+ from jinja2._compat import string_types, PY2
diff --git a/testing/electron/quiche-array.patch b/testing/electron/quiche-array.patch
new file mode 100644
index 00000000000..d016b38e6ec
--- /dev/null
+++ b/testing/electron/quiche-array.patch
@@ -0,0 +1,12 @@
+needed for push_back on array
+--
+--- a/net/third_party/quiche/src/quiche/common/quiche_endian.h
++++ b/net/third_party/quiche/src/quiche/common/quiche_endian.h
+@@ -6,6 +6,7 @@
+ #define QUICHE_COMMON_QUICHE_ENDIAN_H_
+
+ #include <algorithm>
++#include <array>
+ #include <cstdint>
+ #include <type_traits>
+
diff --git a/testing/electron/random-fixes.patch b/testing/electron/random-fixes.patch
new file mode 100644
index 00000000000..5bfdef58d74
--- /dev/null
+++ b/testing/electron/random-fixes.patch
@@ -0,0 +1,94 @@
+Patch-Source: https://gitlab.archlinux.org/archlinux/packaging/packages/chromium/-/blob/c073b0c20935d7eb452732e0f3b2860a96c3db21/random-build-fixes.patch
+--
+diff --git a/chrome/browser/download/bubble/download_bubble_update_service.cc b/chrome/browser/download/bubble/download_bubble_update_service.cc
+index 41b647f7b44..8940c6bb7fc 100644
+--- a/chrome/browser/download/bubble/download_bubble_update_service.cc
++++ b/chrome/browser/download/bubble/download_bubble_update_service.cc
+@@ -91,7 +91,7 @@ ItemSortKey GetSortKey(const Item& item) {
+ // Helper to get an iterator to the last element in the cache. The cache
+ // must not be empty.
+ template <typename Item>
+-SortedItems<Item>::const_iterator GetLastIter(const SortedItems<Item>& cache) {
++typename SortedItems<Item>::const_iterator GetLastIter(const SortedItems<Item>& cache) {
+ CHECK(!cache.empty());
+ auto it = cache.end();
+ return std::prev(it);
+@@ -967,9 +967,9 @@ bool DownloadBubbleUpdateService::CacheManager::RemoveItemFromCacheImpl(
+ }
+
+ template <typename Id, typename Item>
+-SortedItems<Item>::iterator
++typename SortedItems<Item>::iterator
+ DownloadBubbleUpdateService::CacheManager::RemoveItemFromCacheByIter(
+- SortedItems<Item>::iterator iter,
++ typename SortedItems<Item>::iterator iter,
+ SortedItems<Item>& cache,
+ IterMap<Id, Item>& iter_map) {
+ CHECK(iter != cache.end());
+diff --git a/chrome/test/chromedriver/capabilities.cc b/chrome/test/chromedriver/capabilities.cc
+index c0708681ebd..98b8494d170 100644
+--- a/chrome/test/chromedriver/capabilities.cc
++++ b/chrome/test/chromedriver/capabilities.cc
+@@ -355,7 +355,7 @@ Status ParseMobileEmulation(const base::Value& option,
+ "'version' field of type string");
+ }
+
+- brands.emplace_back(*brand, *version);
++ brands.emplace_back(BrandVersion{*brand, *version});
+ }
+
+ client_hints.brands = std::move(brands);
+@@ -392,7 +392,7 @@ Status ParseMobileEmulation(const base::Value& option,
+ "a 'version' field of type string");
+ }
+
+- full_version_list.emplace_back(*brand, *version);
++ full_version_list.emplace_back(BrandVersion{*brand, *version});
+ }
+
+ client_hints.full_version_list = std::move(full_version_list);
+diff --git a/components/optimization_guide/core/tflite_model_executor.h b/components/optimization_guide/core/tflite_model_executor.h
+index c4f750f4684..b5635f4108b 100644
+--- a/components/optimization_guide/core/tflite_model_executor.h
++++ b/components/optimization_guide/core/tflite_model_executor.h
+@@ -189,7 +189,7 @@ class TFLiteModelExecutor : public ModelExecutor<OutputType, InputType> {
+ void SendForBatchExecution(
+ BatchExecutionCallback callback_on_complete,
+ base::TimeTicks start_time,
+- ModelExecutor<OutputType, InputType>::ConstRefInputVector inputs)
++ typename ModelExecutor<OutputType, InputType>::ConstRefInputVector inputs)
+ override {
+ DCHECK(execution_task_runner_->RunsTasksInCurrentSequence());
+ DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
+diff --git a/third_party/blink/renderer/core/html/parser/html_document_parser_fastpath.cc b/third_party/blink/renderer/core/html/parser/html_document_parser_fastpath.cc
+index 2dc0b304092..a82f255090b 100644
+--- a/third_party/blink/renderer/core/html/parser/html_document_parser_fastpath.cc
++++ b/third_party/blink/renderer/core/html/parser/html_document_parser_fastpath.cc
+@@ -169,7 +169,7 @@ class HTMLFastPathParser {
+ using Span = base::span<const Char>;
+ using USpan = base::span<const UChar>;
+ // 32 matches that used by HTMLToken::Attribute.
+- typedef std::conditional<std::is_same_v<Char, UChar>,
++ typedef typename std::conditional<std::is_same_v<Char, UChar>,
+ UCharLiteralBuffer<32>,
+ LCharLiteralBuffer<32>>::type LiteralBufferType;
+ typedef UCharLiteralBuffer<32> UCharLiteralBufferType;
+diff --git a/third_party/blink/renderer/modules/canvas/canvas2d/canvas_style.cc b/third_party/blink/renderer/modules/canvas/canvas2d/canvas_style.cc
+index f0b49139147..a308fb67982 100644
+--- a/third_party/blink/renderer/modules/canvas/canvas2d/canvas_style.cc
++++ b/third_party/blink/renderer/modules/canvas/canvas2d/canvas_style.cc
+@@ -91,12 +91,12 @@ void CanvasStyle::ApplyToFlags(cc::PaintFlags& flags,
+ case kGradient:
+ GetCanvasGradient()->GetGradient()->ApplyToFlags(flags, SkMatrix::I(),
+ ImageDrawOptions());
+- flags.setColor(SkColor4f(0.0f, 0.0f, 0.0f, global_alpha));
++ flags.setColor(SkColor4f{0.0f, 0.0f, 0.0f, global_alpha});
+ break;
+ case kImagePattern:
+ GetCanvasPattern()->GetPattern()->ApplyToFlags(
+ flags, AffineTransformToSkMatrix(GetCanvasPattern()->GetTransform()));
+- flags.setColor(SkColor4f(0.0f, 0.0f, 0.0f, global_alpha));
++ flags.setColor(SkColor4f{0.0f, 0.0f, 0.0f, global_alpha});
+ break;
+ default:
+ NOTREACHED();
diff --git a/testing/electron/system-zstd.patch b/testing/electron/system-zstd.patch
new file mode 100644
index 00000000000..0fcd3efc3a0
--- /dev/null
+++ b/testing/electron/system-zstd.patch
@@ -0,0 +1,46 @@
+From ae3ae3711784865bdc38bf119a6182a7b8dae91c Mon Sep 17 00:00:00 2001
+From: Matt Jolly <Matt.Jolly@footclan.ninja>
+Date: Sun, 17 Sep 2023 16:51:42 +1000
+Subject: [PATCH] Add system-zstd
+
+--- a/build/linux/unbundle/replace_gn_files.py
++++ b/build/linux/unbundle/replace_gn_files.py
+@@ -74,6 +74,7 @@ REPLACEMENTS = {
+ #
+ 'woff2': 'third_party/woff2/BUILD.gn',
+ 'zlib': 'third_party/zlib/BUILD.gn',
++ 'zstd': 'third_party/zstd/BUILD.gn',
+ }
+
+
+--- /dev/null
++++ b/build/linux/unbundle/zstd.gn
+@@ -0,0 +1,25 @@
++import("//build/config/linux/pkg_config.gni")
++import("//build/shim_headers.gni")
++
++pkg_config("system_zstd") {
++ packages = [ "libzstd" ]
++}
++
++shim_headers("zstd_shim") {
++ root_path = "src/lib"
++ headers = [
++ "zdict.h",
++ "zstd.h",
++ "zstd_errors.h",
++ ]
++}
++
++source_set("zstd") {
++ deps = [ ":zstd_shim" ]
++ public_configs = [ ":system_zstd" ]
++}
++
++source_set("decompress") {
++ deps = [ ":zstd_shim" ]
++ public_configs = [ ":system_zstd" ]
++}
+--
+2.42.0
+
diff --git a/testing/electron/temp-failure-retry.patch b/testing/electron/temp-failure-retry.patch
new file mode 100644
index 00000000000..560aa6578c2
--- /dev/null
+++ b/testing/electron/temp-failure-retry.patch
@@ -0,0 +1,19 @@
+random glibc macro, not provided by musl.
+https://www.gnu.org/software/libc/manual/html_node/Interrupted-Primitives.html
+--- a/sandbox/linux/suid/process_util.h
++++ b/sandbox/linux/suid/process_util.h
+@@ -11,6 +11,14 @@
+ #include <stdbool.h>
+ #include <sys/types.h>
+
++// Some additional functions
++# define TEMP_FAILURE_RETRY(expression) \
++ (__extension__ \
++ ({ long int __result; \
++ do __result = (long int) (expression); \
++ while (__result == -1L && errno == EINTR); \
++ __result; }))
++
+ // This adjusts /proc/process/oom_score_adj so the Linux OOM killer
+ // will prefer certain process types over others. The range for the
+ // adjustment is [-1000, 1000], with [0, 1000] being user accessible.
diff --git a/testing/electron/unbundle-node.patch b/testing/electron/unbundle-node.patch
new file mode 100644
index 00000000000..58ec8145c8e
--- /dev/null
+++ b/testing/electron/unbundle-node.patch
@@ -0,0 +1,56 @@
+--- ./third_party/electron_node/BUILD.gn.orig
++++ ./third_party/electron_node/BUILD.gn
+@@ -39,6 +39,7 @@
+ node_release_urlbase = ""
+
+ # Allows downstream packagers (eg. Linux distributions) to build Electron against system shared libraries.
++ use_system_base64 = false
+ use_system_cares = false
+ use_system_nghttp2 = false
+ use_system_llhttp = false
+@@ -47,6 +48,11 @@
+
+ if (is_linux) {
+ import("//build/config/linux/pkg_config.gni")
++ if (use_system_base64) {
++ pkg_config("base64") {
++ packages = [ "base64" ]
++ }
++ }
+ if (use_system_cares) {
+ pkg_config("cares") {
+ packages = [ "libcares" ]
+@@ -208,7 +214,6 @@
+ ":node_js2c",
+ "deps/googletest:gtest",
+ "deps/ada",
+- "deps/base64",
+ "deps/simdutf",
+ "deps/uvwasi",
+ "//third_party/zlib",
+@@ -216,6 +221,11 @@
+ "//third_party/brotli:enc",
+ "//v8:v8_libplatform",
+ ]
++ if (use_system_base64) {
++ configs += [ ":base64" ]
++ } else {
++ deps += [ "deps/base64" ]
++ }
+ if (use_system_cares) {
+ configs += [ ":cares" ]
+ } else {
+--- ./electron/script/generate-config-gypi.py.orig
++++ ./electron/script/generate-config-gypi.py
+@@ -62,6 +62,11 @@
+ # Used by certain versions of node-gyp.
+ v['build_v8_with_gn'] = 'false'
+
++ with open(os.path.join(NODE_DIR, 'use_system.txt')) as f:
++ for dep in f.read().strip().split(' '):
++ if v.get(f'node_shared_{dep}') is not None:
++ v[f'node_shared_{dep}'] = 'true'
++
+ with open(target_file, 'w+') as f:
+ f.write(pprint.pformat(config, indent=2))
+
diff --git a/testing/electron/webpack-hash.patch b/testing/electron/webpack-hash.patch
new file mode 100644
index 00000000000..0aaf5e0a12c
--- /dev/null
+++ b/testing/electron/webpack-hash.patch
@@ -0,0 +1,12 @@
+--- a/electron/build/webpack/webpack.config.base.js
++++ b/electron/build/webpack/webpack.config.base.js
+@@ -117,7 +117,8 @@
+ entry,
+ target: alwaysHasNode ? 'node' : 'web',
+ output: {
+- filename: outputFilename
++ filename: outputFilename,
++ hashFunction: 'sha256'
+ },
+ resolve: {
+ alias: {
diff --git a/testing/electron/yes-musl.patch b/testing/electron/yes-musl.patch
new file mode 100644
index 00000000000..e860b8ece58
--- /dev/null
+++ b/testing/electron/yes-musl.patch
@@ -0,0 +1,11 @@
+--- ./buildtools/third_party/libc++/__config_site.orig
++++ ./buildtools/third_party/libc++/__config_site
+@@ -18,7 +18,7 @@
+ /* #undef _LIBCPP_ABI_FORCE_MICROSOFT */
+ /* #undef _LIBCPP_HAS_NO_THREADS */
+ /* #undef _LIBCPP_HAS_NO_MONOTONIC_CLOCK */
+-/* #undef _LIBCPP_HAS_MUSL_LIBC */
++#define _LIBCPP_HAS_MUSL_LIBC 1
+ /* #undef _LIBCPP_HAS_THREAD_API_PTHREAD */
+ /* #undef _LIBCPP_HAS_THREAD_API_EXTERNAL */
+ /* #undef _LIBCPP_HAS_THREAD_API_WIN32 */
diff --git a/testing/electrs/10-rocksdb.patch b/testing/electrs/10-rocksdb.patch
deleted file mode 100644
index a23718de661..00000000000
--- a/testing/electrs/10-rocksdb.patch
+++ /dev/null
@@ -1,16 +0,0 @@
---- a/Cargo.toml
-+++ b/Cargo.toml
-@@ -40,11 +40,8 @@
- signal-hook = "0.3"
- tiny_http = { version = "0.9", optional = true }
-
--[dependencies.electrs-rocksdb]
--# Workaround the following issues:
--# - https://github.com/romanz/electrs/issues/403 (support building on ARM 32-bit)
--# - https://github.com/romanz/electrs/issues/469 (dynamic linking on Debian 11)
--version = "0.15.0-e2"
-+[dependencies.rocksdb]
-+version = "0.18.0"
- default-features = false
- # ZSTD is used for data compression
- # Snappy is only for checking old DB
diff --git a/testing/electrs/11-rocksdb-locked.patch b/testing/electrs/11-rocksdb-locked.patch
deleted file mode 100644
index 60bcfd0b455..00000000000
--- a/testing/electrs/11-rocksdb-locked.patch
+++ /dev/null
@@ -1,167 +0,0 @@
---- a/Cargo.lock
-+++ b/Cargo.lock
-@@ -67,13 +67,12 @@
-
- [[package]]
- name = "bindgen"
--version = "0.55.1"
-+version = "0.59.2"
- source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "75b13ce559e6433d360c26305643803cb52cfbabbc2b9c47ce04a58493dfb443"
-+checksum = "2bd2a9a458e8f4304c52c43ebb0cfbd520289f8379a52e329a38afda99bf8eb8"
- dependencies = [
- "bitflags",
- "cexpr",
-- "cfg-if 0.1.10",
- "clang-sys",
- "lazy_static",
- "lazycell",
-@@ -164,21 +163,15 @@
-
- [[package]]
- name = "cexpr"
--version = "0.4.0"
-+version = "0.6.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "f4aedb84272dbe89af497cf81375129abda4fc0a9e7c5d317498c15cc30c0d27"
-+checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766"
- dependencies = [
- "nom",
- ]
-
- [[package]]
- name = "cfg-if"
--version = "0.1.10"
--source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
--
--[[package]]
--name = "cfg-if"
- version = "1.0.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
-@@ -340,7 +333,7 @@
- "configure_me_codegen",
- "crossbeam-channel",
- "dirs-next",
-- "electrs-rocksdb",
-+ "rocksdb",
- "env_logger",
- "fs_extra",
- "log",
-@@ -356,28 +349,81 @@
- ]
-
- [[package]]
--name = "electrs-librocksdb-sys"
--version = "6.11.4-e2"
-+name = "librocksdb-sys"
-+version = "0.6.1+6.28.2"
- source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "07be043bbfa5d4774941c4ee29952f5e2b6e34021cbddd4aba0bd2d1ef4b2f68"
-+checksum = "81bc587013734dadb7cf23468e531aa120788b87243648be42e2d3a072186291"
- dependencies = [
- "bindgen",
-+ "bzip2-sys",
- "cc",
- "glob",
- "libc",
-+ "libz-sys",
-+ "zstd-sys",
- ]
-
- [[package]]
--name = "electrs-rocksdb"
--version = "0.15.0-e2"
-+name = "bzip2-sys"
-+version = "0.1.11+1.0.8"
- source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "6eb5ab97b934ae8e1e597dd56f096e866b267b6b46285d996b722776e8024571"
-+checksum = "736a955f3fa7875102d57c82b8cac37ec45224a07fd32d58f9f7a186b6cd4cdc"
- dependencies = [
-- "electrs-librocksdb-sys",
-+ "cc",
- "libc",
-+ "pkg-config",
- ]
-
- [[package]]
-+name = "libz-sys"
-+version = "1.1.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "de5435b8549c16d423ed0c03dbaafe57cf6c3344744f1242520d59c9d8ecec66"
-+dependencies = [
-+ "cc",
-+ "pkg-config",
-+ "vcpkg",
-+]
-+
-+[[package]]
-+name = "zstd-sys"
-+version = "1.6.3+zstd.1.5.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "fc49afa5c8d634e75761feda8c592051e7eeb4683ba827211eb0d731d3402ea8"
-+dependencies = [
-+ "cc",
-+ "libc",
-+]
-+
-+[[package]]
-+name = "vcpkg"
-+version = "0.2.15"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426"
-+
-+[[package]]
-+name = "pkg-config"
-+version = "0.3.24"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "58893f751c9b0412871a09abd62ecd2a00298c6c83befa223ef98c52aef40cbe"
-+
-+[[package]]
-+name = "minimal-lexical"
-+version = "0.2.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a"
-+
-+[[package]]
-+name = "rocksdb"
-+version = "0.18.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "620f4129485ff1a7128d184bc687470c21c7951b64779ebc9cfdad3dcd920290"
-+dependencies = [
-+ "libc",
-+ "librocksdb-sys",
-+]
-+
-+[[package]]
- name = "env_logger"
- version = "0.9.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-@@ -618,11 +664,12 @@
-
- [[package]]
- name = "nom"
--version = "5.1.2"
-+version = "7.1.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "ffb4262d26ed83a1c0a33a38fe2bb15797329c85770da05e6b828ddb782627af"
-+checksum = "1b1d11e1ef389c76fe5b81bcaf2ea32cf88b62bc494e19f493d0b30e7a930109"
- dependencies = [
- "memchr",
-+ "minimal-lexical",
- "version_check",
- ]
-
-@@ -1015,9 +1062,9 @@
-
- [[package]]
- name = "shlex"
--version = "0.1.1"
-+version = "1.1.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "7fdf1b9db47230893d76faad238fd6097fd6d6a9245cd7a4d90dbd639536bbd2"
-+checksum = "43b2853a4d09f215c24cc5489c992ce46052d359b5109343cbafbf26bc62f8a3"
-
- [[package]]
- name = "signal-hook"
diff --git a/testing/electrs/12-db.rs.patch b/testing/electrs/12-db.rs.patch
deleted file mode 100644
index b003631d5c9..00000000000
--- a/testing/electrs/12-db.rs.patch
+++ /dev/null
@@ -1,9 +0,0 @@
---- a/src/db.rs
-+++ b/src/db.rs
-@@ -1,5 +1,5 @@
- use anyhow::{Context, Result};
--use electrs_rocksdb as rocksdb;
-+use rocksdb;
-
- use std::path::Path;
- use std::sync::atomic::{AtomicBool, Ordering};
diff --git a/testing/electrs/APKBUILD b/testing/electrs/APKBUILD
deleted file mode 100644
index ab9a3e15470..00000000000
--- a/testing/electrs/APKBUILD
+++ /dev/null
@@ -1,34 +0,0 @@
-# Contributor: Nicolas Lorin <androw95220@gmail.com>
-# Maintainer: Michał Adamski <michal@ert.pl>
-pkgname=electrs
-pkgver=0.9.5
-pkgrel=4
-pkgdesc="Efficient re-implementation of Electrum Server in Rust"
-url="https://github.com/romanz/electrs"
-license="MIT"
-arch="all !s390x !riscv64" # limited by rust/cargo
-makedepends="cargo rocksdb-dev clang-libs"
-source="https://github.com/romanz/electrs/archive/v$pkgver/electrs-$pkgver.tar.gz
- 10-rocksdb.patch
- 11-rocksdb-locked.patch
- 12-db.rs.patch
- "
-
-build() {
- ROCKSDB_INCLUDE_DIR=/usr/include ROCKSDB_LIB_DIR=/usr/lib cargo build --all --features "metrics_process" --release --locked
-}
-
-check() {
- cargo test --all --release --locked
-}
-
-package() {
- install -Dm755 target/release/$pkgname -t "$pkgdir"/usr/bin
-}
-
-sha512sums="
-5b04393e0c975923a8c6442bdce8648213abef49e56b062b919680d50ded4864af56d6c5512702b9307df5b826cae9fc44d522db9650bb83819baa45c3192827 electrs-0.9.5.tar.gz
-485af61ccc59e987b1ce024ea02ef3917bb31a4e2cbd2bc55fe70042a1331dc5d6a884eff021db0106e9d900ac46755e71381e77ecdc3a896189597fb04b060f 10-rocksdb.patch
-6509c7492bd577c96f17a61ed97422f5928ec8d0b3d317ded8f8331d45dd735152df9c4125f99ceda001484089f39e90748fa5c899198109139ebf3d4294aead 11-rocksdb-locked.patch
-255f917bd0ba8fb7377676a25222528f6c6ebbfa114d3ae1fbfaafd6a68c2c849865a3eab8ff029bb7877924aa2a95dba0d39ebbd4936b6af44e990db467cc58 12-db.rs.patch
-"
diff --git a/testing/elektra/APKBUILD b/testing/elektra/APKBUILD
index b88b5cbe6bb..fa2f1c65906 100644
--- a/testing/elektra/APKBUILD
+++ b/testing/elektra/APKBUILD
@@ -6,7 +6,7 @@
pkgname=elektra
_pkgname=libelektra
pkgver=0.8.21
-pkgrel=15
+pkgrel=22
pkgdesc="A universal and secure framework to access configuration parameters"
url="https://www.libelektra.org"
#arch="all !armhf" # armhf blocked by qt5-qtdeclarative
@@ -24,11 +24,11 @@ makedepends="
cmake
curl-dev
discount discount-dev
- fts-dev
+ musl-fts-dev
libdrm-dev
libgcrypt-dev
libgit2-dev
- openssl-dev
+ openssl-dev>3
lua$_luaver-dev
glib-dev
python3-dev
@@ -36,6 +36,7 @@ makedepends="
qt5-qtdeclarative-dev
qt5-qtsvg-dev
ruby ruby-dev
+ samurai
swig
yajl-dev
yaml-cpp-dev
@@ -51,15 +52,18 @@ subpackages="
ruby-elektra:_ruby
$pkgname-qt-gui:_gui
$pkgname-libs
- $pkgname-bash-completion:bashcomp:noarch
- $pkgname-fish-completion:fishcomp:noarch
- $pkgname-zsh-completion:zshcomp:noarch
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
$pkgname-plugins-all:_all:noarch
"
source="$_pkgname-$pkgver.tar.gz::https://github.com/ElektraInitiative/libelektra/archive/$pkgver.tar.gz
fix-bash-shebang.patch
fix-augeas-internal-inconsistency.patch
cmake-allow-override-rpath.patch
+ benchmark-dupe.patch
+ gcc12.patch
+ musl-1.2.3.patch
remove-unneeded-assembly.patch
"
builddir="$srcdir/$_pkgname-$pkgver"
@@ -164,14 +168,8 @@ _bindings="
"
build() {
- mkdir -p "$builddir"/build
- cd "$builddir"/build
-
- cmake .. \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=MinSizeRel \
- -DCMAKE_C_FLAGS_MINSIZEREL_INIT="$CFLAGS" \
- -DCMAKE_CXX_FLAGS_MINSIZEREL_INIT="$CXXFLAGS" \
- -DCMAKE_EXE_LINKER_FLAGS_MINSIZEREL_INIT="$LDFLAGS" \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_RPATH=/usr/lib/$pkgname \
-DTARGET_PLUGIN_FOLDER=$pkgname \
@@ -191,7 +189,7 @@ build() {
-DLUA_INCLUDE_DIR="$(pkg-config --variable=includedir lua$_luaver )" \
-DTARGET_LUA_CMOD_FOLDER="$(pkg-config --variable=INSTALL_LMOD lua$_luaver)" \
-DTARGET_LUA_CMOD_FOLDER="$(pkg-config --variable=INSTALL_CMOD lua$_luaver)"
- make
+ cmake --build build
}
check() {
@@ -199,7 +197,7 @@ check() {
# Run tests that doesn't need to write into /etc.
# FIXME: Allow tests to fail for now.
- make run_nokdbtests || true
+ ninja run_nokdbtests || true
}
package() {
@@ -208,9 +206,7 @@ package() {
# dependencies. That's why they are defined in package().
depends="$depends $pkgname-resolver"
- cd "$builddir"/build
-
- make DESTDIR="$pkgdir" install
+ DESTDIR="$pkgdir" cmake --install build
# This is a shell script that just executes /usr/lib/elektra/tool_exec/qt-gui.
# It was originally made as a workaround for some RPATH issue we don't have.
@@ -280,22 +276,6 @@ _gui() {
_submv usr/share/icons
}
-bashcomp() {
- pkgdesc="Bash completions for $pkgname"
- depends=""
- install_if="$pkgname=$pkgver-r$pkgrel bash-completion"
-
- _submv usr/share/bash-completion
-}
-
-fishcomp() {
- pkgdesc="Fish completions for $pkgname"
- depends=""
- install_if="$pkgname=$pkgver-r$pkgrel fish"
-
- _submv usr/share/fish/vendor_completions.d usr/share/fish/completions
-}
-
zshcomp() {
pkgdesc="ZSH completions for $pkgname"
depends=""
@@ -400,8 +380,13 @@ _submv() {
rmdir -p "$pkgdir"/${src%/*} 2>/dev/null || true
}
-sha512sums="9ad3bb7eeb36d921189d93cb347ec73262503d85397b574ef603080cee52d1959752740e5018a0e7eb5dc187bce8aae3b6fc0057a6385bce94e5338604c6bc57 libelektra-0.8.21.tar.gz
+sha512sums="
+9ad3bb7eeb36d921189d93cb347ec73262503d85397b574ef603080cee52d1959752740e5018a0e7eb5dc187bce8aae3b6fc0057a6385bce94e5338604c6bc57 libelektra-0.8.21.tar.gz
cbfe8b96a806825d5f7194734a646bdb3fb273bf6be44b3b47e9b2f63bf90a7ece867e74808da743ff33211abba0682aba55d02a3dbfa0a5efc3dc821444bd87 fix-bash-shebang.patch
48d645142bf63282e13d1c76c1ddedc5633e365a1a87d0cd49c75fa801eed44b57fb66eee49badc7a9e6210f6ccd2af82779f0658f90263fd23b959f4e70b84c fix-augeas-internal-inconsistency.patch
717b343b6509d14949a154bbbf13d5722f47f97717dbd839763fc89f8f9033d5214f903df23b4ca7f196ae9dbfe6a3348542411c714e471ca4a50b39bdff3abc cmake-allow-override-rpath.patch
-9ca27100c7b9e3b64146a4733e7007c6175ba475415cf7523315d21ba8fcfff65e3769ee2e9d59cdf2eb943a5c49786c4811e4deec6c694964da7e0e5292c1f9 remove-unneeded-assembly.patch"
+21f3f9cf874663b6ad60446d59830e8b59c16d9fb02df6c8ecb78f9fc5c785bc965d5325d46fd4b92e38c632b9b1641f13370bace69636049e172ec1f3da506b benchmark-dupe.patch
+0dd760f0a0c063fbe67f581945262e3846440ca2c5e656337b2529c9fcea3145777105372af86f4adefe3fd361309ee00f5bd584891172af7713ffb445511868 gcc12.patch
+9c21cce9247e76996286fefa68910e2cfafb24c1dc4af6711e9d37cf6cbe2c684072753395d98b04babaa93418722126cfa745f6a3e143ea1ace39fabc4d93a2 musl-1.2.3.patch
+9ca27100c7b9e3b64146a4733e7007c6175ba475415cf7523315d21ba8fcfff65e3769ee2e9d59cdf2eb943a5c49786c4811e4deec6c694964da7e0e5292c1f9 remove-unneeded-assembly.patch
+"
diff --git a/testing/elektra/benchmark-dupe.patch b/testing/elektra/benchmark-dupe.patch
new file mode 100644
index 00000000000..57ce62f64e0
--- /dev/null
+++ b/testing/elektra/benchmark-dupe.patch
@@ -0,0 +1,62 @@
+fix duplicate symbol between this and benchmark.c
+diff --git a/benchmarks/large.c b/benchmarks/large.c
+index aee787b..8892e1b 100644
+--- a/benchmarks/large.c
++++ b/benchmarks/large.c
+@@ -10,7 +10,7 @@
+
+ KDB * kdb;
+ Key * key;
+-KeySet * large;
++KeySet * large2;
+
+ void benchmarkOpen (void)
+ {
+@@ -39,33 +39,33 @@ void benchmarkLookupByName (void)
+ for (i = 0; i < NUM_DIR; i++)
+ {
+ snprintf (name, KEY_NAME_LENGTH, "%s/%s%d", KEY_ROOT, "dir", i);
+- ksLookupByName (large, name, 0);
++ ksLookupByName (large2, name, 0);
+ for (j = 0; j < NUM_KEY; j++)
+ {
+ snprintf (name, KEY_NAME_LENGTH, "%s/%s%d/%s%d", KEY_ROOT, "dir", i, "key", j);
+- ksLookupByName (large, name, 0);
++ ksLookupByName (large2, name, 0);
+ }
+ }
+ }
+
+ void benchmarkReread (void)
+ {
+- kdbGet (kdb, large, key);
++ kdbGet (kdb, large2, key);
+ }
+
+ void benchmarkInwrite (void)
+ {
+- kdbSet (kdb, large, key);
++ kdbSet (kdb, large2, key);
+ }
+
+ void benchmarkRewrite (void)
+ {
+- kdbSet (kdb, large, key);
++ kdbSet (kdb, large2, key);
+ }
+
+ void benchmarkWriteout (void)
+ {
+- kdbSet (kdb, large, key);
++ kdbSet (kdb, large2, key);
+ }
+
+ void benchmarkClose (void)
+@@ -113,6 +113,6 @@ int main (void)
+ benchmarkClose ();
+ timePrint ("Closed key database");
+
+- ksDel (large);
++ ksDel (large2);
+ keyDel (key);
+ }
diff --git a/testing/elektra/gcc12.patch b/testing/elektra/gcc12.patch
new file mode 100644
index 00000000000..f0ff513054c
--- /dev/null
+++ b/testing/elektra/gcc12.patch
@@ -0,0 +1,12 @@
+diff --git a/src/tools/kdb/cmdline.cpp b/src/tools/kdb/cmdline.cpp
+index b111366..96926a2 100644
+--- a/src/tools/kdb/cmdline.cpp
++++ b/src/tools/kdb/cmdline.cpp
+@@ -16,6 +16,7 @@
+
+ #include <cstdio>
+ #include <iostream>
++#include <limits>
+ #include <set>
+ #include <vector>
+
diff --git a/testing/elektra/musl-1.2.3.patch b/testing/elektra/musl-1.2.3.patch
new file mode 100644
index 00000000000..0c488d55ac8
--- /dev/null
+++ b/testing/elektra/musl-1.2.3.patch
@@ -0,0 +1,44 @@
+diff --git a/src/bindings/swig/ruby/kdb.i b/src/bindings/swig/ruby/kdb.i
+index 93d47f9..52681f4 100644
+--- a/src/bindings/swig/ruby/kdb.i
++++ b/src/bindings/swig/ruby/kdb.i
+@@ -260,7 +260,7 @@ underlaying key, which allows a Ruby-style iteration over metadata:
+ * cases this is useful, to allow passing in Symbols as meta names. */
+ %typemap(in) (const std::string & metaName) {
+ // typemap in for getMeta
+- $input = rb_funcall($input, rb_intern("to_s"), 0, NULL);
++ $input = rb_funcall($input, rb_intern("to_s"), 0, 0);
+ $1 = new std::string(StringValueCStr($input));
+ }
+ %typemap(freearg) (const std::string & metaName) {
+@@ -305,8 +305,8 @@ underlaying key, which allows a Ruby-style iteration over metadata:
+ /* $input substitution does not here, so we have to reference
+ input variables directly */
+
+- hash_size = NUM2INT(rb_funcall(argv[1], rb_intern("size"), 0, NULL));
+- keys_arr = rb_funcall(argv[1], rb_intern("keys"), 0, NULL);
++ hash_size = NUM2INT(rb_funcall(argv[1], rb_intern("size"), 0, 0));
++ keys_arr = rb_funcall(argv[1], rb_intern("keys"), 0, 0);
+ if (hash_size > 0) {
+ /* first we check if we can find the "flags" key.
+ this has to be passed to the kdb::Key constructor already */
+@@ -314,7 +314,7 @@ underlaying key, which allows a Ruby-style iteration over metadata:
+ key = rb_ary_entry(keys_arr, i);
+ val = rb_hash_aref(argv[1], key);
+ /* convert key to String, in case of being a Symbol */
+- key = rb_funcall(key, rb_intern("to_s"), 0, NULL);
++ key = rb_funcall(key, rb_intern("to_s"), 0, 0);
+ /* check for flags and extract them */
+ if (strcmp("flags", StringValueCStr(key)) == 0) {
+ Check_Type(val, T_FIXNUM);
+@@ -342,8 +342,8 @@ underlaying key, which allows a Ruby-style iteration over metadata:
+ for (i = 0; i < hash_size; i++) {
+ key = rb_ary_entry(keys_arr, i);
+ val = rb_hash_aref(argv[1], key);
+- key = rb_funcall(key, rb_intern("to_s"), 0, NULL);
+- val = rb_funcall(val, rb_intern("to_s"), 0, NULL);
++ key = rb_funcall(key, rb_intern("to_s"), 0, 0);
++ val = rb_funcall(val, rb_intern("to_s"), 0, 0);
+ /* ignore certain keys */
+ if (strcmp("flags", StringValueCStr(key)) == 0) continue;
+ /* 'value' has also a special meaning */
diff --git a/testing/element-desktop/APKBUILD b/testing/element-desktop/APKBUILD
new file mode 100644
index 00000000000..8d030b59dad
--- /dev/null
+++ b/testing/element-desktop/APKBUILD
@@ -0,0 +1,170 @@
+# Contributor: lauren n. liberda <lauren@selfisekai.rocks>
+# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
+pkgname=element-desktop
+pkgver=1.11.64
+pkgrel=0
+pkgdesc="Secure and independent communication, connected via Matrix"
+url="https://element.io/"
+arch="aarch64 x86_64" # same as electron
+license="Apache-2.0"
+depends="
+ electron
+ font-inconsolata
+ font-inter
+ font-nunito
+ font-opensans
+ font-twemoji
+ "
+makedepends="
+ cargo
+ electron-dev
+ electron-tasje
+ jq
+ libsecret-dev
+ nodejs
+ npm
+ python3
+ sqlcipher-dev
+ yarn
+ "
+source="
+ https://github.com/vector-im/element-desktop/archive/refs/tags/v$pkgver/element-desktop-$pkgver.tar.gz
+ https://github.com/vector-im/element-web/archive/refs/tags/v$pkgver/element-web-$pkgver.tar.gz
+
+ add-alpine-targets.patch
+ use-system-headers.patch
+ tasje-one-hak.patch
+ tasje-no-fuses.patch
+ use-system-fonts.patch.reactsdk
+ use-system-fonts.patch.web
+
+ element-desktop
+ "
+options="net !check" # broken
+
+# secfixes:
+# 1.11.30-r0:
+# - CVE-2023-30609
+# 1.11.26-r0:
+# - CVE-2023-28103
+# - CVE-2023-28427
+# 1.11.7-r0:
+# - CVE-2022-39249
+# - CVE-2022-39250
+# - CVE-2022-39251
+# - CVE-2022-39236
+# 1.11.4-r0:
+# - CVE-2022-36059
+# - CVE-2022-36060
+
+# used by buildscripts (at least web's webpack)
+export VERSION=$pkgver
+
+export CARGO_PROFILE_RELEASE_OPT_LEVEL=2
+export CARGO_PROFILE_RELEASE_STRIP="symbols"
+export NODE_OPTIONS="--openssl-legacy-provider"
+
+prepare() {
+ default_prepare
+
+ msg "Applying more patches"
+ for x in $source; do
+ case "$x" in
+ *.patch.web)
+ msg "$x"
+ patch -p1 -i "$srcdir"/$x -d "$srcdir"/element-web-$pkgver
+ ;;
+ esac
+ done
+
+ (
+ cd "$srcdir"/element-web-$pkgver
+
+ msg "Fetch element-web dependencies"
+ yarn install --frozen-lockfile --ignore-scripts
+ jq '.show_labs_settings = true' < config.sample.json > config.json
+
+ msg "Applying more patches"
+ for x in $source; do
+ case "$x" in
+ *.patch.reactsdk)
+ msg "$x"
+ patch -p1 -i "$srcdir"/$x -d "$srcdir"/element-web-$pkgver/node_modules/matrix-react-sdk
+ ;;
+ esac
+ done
+
+ rm -rf node_modules/matrix-react-sdk/res/fonts/
+ )
+
+ ln -s "$srcdir"/element-web-$pkgver/webapp webapp
+
+ msg "Fetch element-desktop dependencies"
+ yarn install --frozen-lockfile --ignore-scripts
+}
+
+build() {
+ (
+ cd "$srcdir"/element-web-$pkgver
+
+ msg "Build element-web"
+ NODE_ENV=production yarn build
+ )
+
+ msg "Build element-desktop"
+
+ yarn asar-webapp
+
+ # add "optional" native dependencies
+ # hak stands for hack
+ yarn run hak --target "$(uname -m)-alpine-linux-musl"
+
+ # stripping in build because it gets into asar
+ strip node_modules/keytar/build/Release/keytar.node
+
+ yarn build:ts
+
+ yarn build:res
+
+ yarn install --frozen-lockfile --ignore-scripts --production
+
+ tasje -c electron-builder.js pack
+}
+
+check() {
+ (
+ cd "$srcdir"/element-web-$pkgver
+
+ yarn test
+ )
+}
+
+package() {
+ local resources="dist/resources"
+
+ install -Dm644 $resources/app.asar "$pkgdir"/usr/lib/element-desktop/app.asar
+ install -Dm644 webapp.asar "$pkgdir"/usr/lib/element-desktop/webapp.asar
+
+ cp -r $resources/app.asar.unpacked "$pkgdir"/usr/lib/element-desktop/app.asar.unpacked
+
+ install -Dm644 $resources/img/element.png "$pkgdir"/usr/lib/element-desktop/img/element.png
+
+ install -Dm755 "$srcdir"/$pkgname "$pkgdir"/usr/bin/$pkgname
+
+ install -Dm644 dist/$pkgname.desktop "$pkgdir"/usr/share/applications/$pkgname.desktop
+ while read -r size; do
+ install -Dm644 dist/icons/$size.png "$pkgdir"/usr/share/icons/hicolor/$size/apps/$pkgname.png
+ done < dist/icons/size-list
+}
+
+sha512sums="
+3627b7ce207d10f73e91bca5f4bf5bd71262fa22eab678788f25fd6b89b9baaf55c41b642d855833196b1ed02dde8c73095ce5056211375b477b7c6d7ac4a4c4 element-desktop-1.11.64.tar.gz
+bc74ff9330c2972e22fdcd54a9a552c9dacc792874d7d7a30929b1f973f638fa4a88827bf5bc0268761175c21077ab5482475d012512ec480512b1eb15ddbc96 element-web-1.11.64.tar.gz
+4747893ed3e43d3074e9afe1cdd668a6be0de073d439205fe8c38c5e0f4091cc76e3cd15d98818bea5139add29501d8d07e83c58e9da230a4ce5bb538d388f80 add-alpine-targets.patch
+83f5e5fb197bc78e13dbb86dfcf2ef39c25ad9b54b72a911ad33fcd4a9725b6612e240edae030154b1512149408541b19f267bf517314447f1a2c6de6a45469e use-system-headers.patch
+e4f74e9b5eb6f6e8ea893925e3ad4fca2bbf7d6ba64e82e230f154d1c846668fe66fdd44875b1c8ac0281e7cad6a12e462ab765281e997a16616ccf855d82aa4 tasje-one-hak.patch
+9af00259f5e236f70a308f315d0c9116a68e1223d057a219344a8c72ec9b5694b92e3a1cb030c918a5be8c112dd1a5920b65b2b1eaf2b5b61fcb0d743d9a94b8 tasje-no-fuses.patch
+31e3bde9ac13d711af3b57768eea5f60013f93ac35ec49648a66da8b4652e5049c991bfadfbe373814f237c700b95f5b9d1ed0c8f7cf8e4ec489a44b17dbfad5 use-system-fonts.patch.reactsdk
+7dd96eb00dfc13e30d2274650a79aafce1bae3572ffcb4a5ce6a0ee6e4bc73cc8d6c0845d2dea930006f0fdd0ff313cd7615e6de58c95e674cb41dc978377f1d use-system-fonts.patch.web
+afc588311dc3b566a754e3e7fe6b37b99a06d47b8bbce0ed9acca8ef308fdab0bd1d41b406199e5cbdd86bdce695ff847cd8668857a235cbdc292ad8b899c063 element-desktop
+"
diff --git a/testing/element-desktop/add-alpine-targets.patch b/testing/element-desktop/add-alpine-targets.patch
new file mode 100644
index 00000000000..87e11483f35
--- /dev/null
+++ b/testing/element-desktop/add-alpine-targets.patch
@@ -0,0 +1,52 @@
+--- a/scripts/hak/target.ts
++++ b/scripts/hak/target.ts
+@@ -29,8 +29,10 @@
+ | "i686-unknown-linux-gnu"
+ | "x86_64-unknown-linux-musl"
+ | "x86_64-unknown-linux-gnu"
++ | "x86_64-alpine-linux-musl"
+ | "aarch64-unknown-linux-musl"
+ | "aarch64-unknown-linux-gnu"
++ | "aarch64-alpine-linux-musl"
+ | "powerpc64le-unknown-linux-musl"
+ | "powerpc64le-unknown-linux-gnu";
+
+@@ -112,6 +114,13 @@
+ libC: MUSL,
+ };
+
++const x8664AlpineLinuxMusl: LinuxTarget = {
++ id: "x86_64-alpine-linux-musl",
++ platform: "linux",
++ arch: "x64",
++ libC: MUSL,
++};
++
+ const i686UnknownLinuxGnu: LinuxTarget = {
+ id: "i686-unknown-linux-gnu",
+ platform: "linux",
+@@ -140,6 +149,13 @@
+ libC: MUSL,
+ };
+
++const aarch64AlpineLinuxMusl: LinuxTarget = {
++ id: "aarch64-alpine-linux-musl",
++ platform: "linux",
++ arch: "arm64",
++ libC: MUSL,
++};
++
+ const powerpc64leUnknownLinuxGnu: LinuxTarget = {
+ id: "powerpc64le-unknown-linux-gnu",
+ platform: "linux",
+@@ -167,8 +183,10 @@
+ "i686-unknown-linux-gnu": i686UnknownLinuxGnu,
+ "x86_64-unknown-linux-musl": x8664UnknownLinuxMusl,
+ "x86_64-unknown-linux-gnu": x8664UnknownLinuxGnu,
++ "x86_64-alpine-linux-musl": x8664AlpineLinuxMusl,
+ "aarch64-unknown-linux-musl": aarch64UnknownLinuxMusl,
+ "aarch64-unknown-linux-gnu": aarch64UnknownLinuxGnu,
++ "aarch64-alpine-linux-musl": aarch64AlpineLinuxMusl,
+ "powerpc64le-unknown-linux-musl": powerpc64leUnknownLinuxMusl,
+ "powerpc64le-unknown-linux-gnu": powerpc64leUnknownLinuxGnu,
+ };
diff --git a/testing/element-desktop/element-desktop b/testing/element-desktop/element-desktop
new file mode 100755
index 00000000000..de3c5b2d9de
--- /dev/null
+++ b/testing/element-desktop/element-desktop
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+exec electron /usr/lib/element-desktop/app.asar "$@"
diff --git a/testing/element-desktop/tasje-no-fuses.patch b/testing/element-desktop/tasje-no-fuses.patch
new file mode 100644
index 00000000000..8198e5ffed4
--- /dev/null
+++ b/testing/element-desktop/tasje-no-fuses.patch
@@ -0,0 +1,58 @@
+we can't do fuses because we ship one binary in the electron package.
+and we can't import them here, since they are in devDependencies, which are uninstalled at this stage.
+
+--- ./electron-builder.js.orig
++++ ./electron-builder.js
+@@ -1,8 +1,6 @@
+ const os = require("os");
+ const fs = require("fs");
+ const path = require("path");
+-const Arch = require("electron-builder").Arch;
+-const { flipFuses, FuseVersion, FuseV1Options } = require("@electron/fuses");
+
+ // Typescript conversion blocked on https://github.com/electron-userland/electron-builder/issues/7775
+
+@@ -35,43 +33,6 @@
+ const config = {
+ appId: "im.riot.app",
+ asarUnpack: "**/*.node",
+- afterPack: async (context) => {
+- if (context.electronPlatformName !== "darwin" || context.arch === Arch.universal) {
+- // Burn in electron fuses for proactive security hardening.
+- // On macOS, we only do this for the universal package, as the constituent arm64 and amd64 packages are embedded within.
+- const ext = {
+- darwin: ".app",
+- win32: ".exe",
+- linux: "",
+- }[context.electronPlatformName];
+-
+- let executableName = context.packager.appInfo.productFilename;
+- if (context.electronPlatformName === "linux") {
+- // Linux uses the package name as the executable name
+- executableName = context.packager.appInfo.name;
+- }
+-
+- const electronBinaryPath = path.join(context.appOutDir, `${executableName}${ext}`);
+- console.log(`Flipping fuses for: ${electronBinaryPath}`);
+-
+- await flipFuses(electronBinaryPath, {
+- version: FuseVersion.V1,
+- resetAdHocDarwinSignature: context.electronPlatformName === "darwin" && context.arch === Arch.universal,
+-
+- [FuseV1Options.EnableCookieEncryption]: true,
+- [FuseV1Options.OnlyLoadAppFromAsar]: true,
+-
+- [FuseV1Options.RunAsNode]: false,
+- [FuseV1Options.EnableNodeOptionsEnvironmentVariable]: false,
+- [FuseV1Options.EnableNodeCliInspectArguments]: false,
+-
+- // Mac app crashes on arm for us when `LoadBrowserProcessSpecificV8Snapshot` is enabled
+- [FuseV1Options.LoadBrowserProcessSpecificV8Snapshot]: false,
+- // https://github.com/electron/fuses/issues/7
+- [FuseV1Options.EnableEmbeddedAsarIntegrityValidation]: false,
+- });
+- }
+- },
+ files: [
+ "package.json",
+ "lib/**",
diff --git a/testing/element-desktop/tasje-one-hak.patch b/testing/element-desktop/tasje-one-hak.patch
new file mode 100644
index 00000000000..ac584aa0a6f
--- /dev/null
+++ b/testing/element-desktop/tasje-one-hak.patch
@@ -0,0 +1,20 @@
+directories in .hak/hakModules are already symlinked inside node_modules,
+and as such are already being copied by default. this makes tasje fail with:
+```
+thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value:
+FileAlreadyWritten("/node_modules/keytar/package.json")', src/main.rs:200:18
+```
+
+--- ./electron-builder.js.orig
++++ ./electron-builder.js
+@@ -74,10 +74,6 @@
+ },
+ files: [
+ "package.json",
+- {
+- from: ".hak/hakModules",
+- to: "node_modules",
+- },
+ "lib/**",
+ ],
+ extraResources: [
diff --git a/testing/element-desktop/use-system-fonts.patch.reactsdk b/testing/element-desktop/use-system-fonts.patch.reactsdk
new file mode 100644
index 00000000000..400ea50c6d5
--- /dev/null
+++ b/testing/element-desktop/use-system-fonts.patch.reactsdk
@@ -0,0 +1,169 @@
+--- a/src/utils/FontManager.ts
++++ b/src/utils/FontManager.ts
+@@ -108,20 +108,6 @@
+ }
+ colrFontCheckStarted = true;
+
+- if (await isColrFontSupported()) {
+- const path = `url('${require("../../res/fonts/Twemoji_Mozilla/TwemojiMozilla-colr.woff2")}')`;
+- document.fonts.add(new FontFace("Twemoji", path, {}));
+- // For at least Chrome on Windows 10, we have to explictly add extra
+- // weights for the emoji to appear in bold messages, etc.
+- document.fonts.add(new FontFace("Twemoji", path, { weight: "600" }));
+- document.fonts.add(new FontFace("Twemoji", path, { weight: "700" }));
+- } else {
+- // fall back to SBIX, generated via https://github.com/matrix-org/twemoji-colr/tree/matthew/sbix
+- const path = `url('${require("../../res/fonts/Twemoji_Mozilla/TwemojiMozilla-sbix.woff2")}')`;
+- document.fonts.add(new FontFace("Twemoji", path, {}));
+- document.fonts.add(new FontFace("Twemoji", path, { weight: "600" }));
+- document.fonts.add(new FontFace("Twemoji", path, { weight: "700" }));
+- }
+- // ...and if SBIX is not supported, the browser will fall back to one of the native fonts specified.
++ // no need, we ensure twemoji font is system
+ }
+
+--- a/res/themes/light/css/_fonts.pcss
++++ b/res/themes/light/css/_fonts.pcss
+@@ -17,8 +17,7 @@
+ font-display: swap;
+ unicode-range: $inter-unicode-range;
+ src:
+- url("$(res)/fonts/Inter/Inter-Regular.woff2?v=3.18") format("woff2"),
+- url("$(res)/fonts/Inter/Inter-Regular.woff?v=3.18") format("woff");
++ local("Inter Regular");
+ }
+ @font-face {
+ font-family: "Inter";
+@@ -27,8 +26,7 @@
+ font-display: swap;
+ unicode-range: $inter-unicode-range;
+ src:
+- url("$(res)/fonts/Inter/Inter-Italic.woff2?v=3.18") format("woff2"),
+- url("$(res)/fonts/Inter/Inter-Italic.woff?v=3.18") format("woff");
++ local("Inter Italic");
+ }
+
+ @font-face {
+@@ -38,8 +36,7 @@
+ font-display: swap;
+ unicode-range: $inter-unicode-range;
+ src:
+- url("$(res)/fonts/Inter/Inter-Medium.woff2?v=3.18") format("woff2"),
+- url("$(res)/fonts/Inter/Inter-Medium.woff?v=3.18") format("woff");
++ local("Inter Medium");
+ }
+ @font-face {
+ font-family: "Inter";
+@@ -48,8 +45,7 @@
+ font-display: swap;
+ unicode-range: $inter-unicode-range;
+ src:
+- url("$(res)/fonts/Inter/Inter-MediumItalic.woff2?v=3.18") format("woff2"),
+- url("$(res)/fonts/Inter/Inter-MediumItalic.woff?v=3.18") format("woff");
++ local("Inter Medium Italic");
+ }
+
+ @font-face {
+@@ -59,8 +55,7 @@
+ font-display: swap;
+ unicode-range: $inter-unicode-range;
+ src:
+- url("$(res)/fonts/Inter/Inter-SemiBold.woff2?v=3.18") format("woff2"),
+- url("$(res)/fonts/Inter/Inter-SemiBold.woff?v=3.18") format("woff");
++ local("Inter SemiBold");
+ }
+ @font-face {
+ font-family: "Inter";
+@@ -69,8 +64,7 @@
+ font-display: swap;
+ unicode-range: $inter-unicode-range;
+ src:
+- url("$(res)/fonts/Inter/Inter-SemiBoldItalic.woff2?v=3.18") format("woff2"),
+- url("$(res)/fonts/Inter/Inter-SemiBoldItalic.woff?v=3.18") format("woff");
++ local("Inter SemiBold Italic");
+ }
+
+ @font-face {
+@@ -80,8 +74,7 @@
+ font-display: swap;
+ unicode-range: $inter-unicode-range;
+ src:
+- url("$(res)/fonts/Inter/Inter-Bold.woff2?v=3.18") format("woff2"),
+- url("$(res)/fonts/Inter/Inter-Bold.woff?v=3.18") format("woff");
++ local("Inter Bold");
+ }
+ @font-face {
+ font-family: "Inter";
+@@ -90,8 +83,7 @@
+ font-display: swap;
+ unicode-range: $inter-unicode-range;
+ src:
+- url("$(res)/fonts/Inter/Inter-BoldItalic.woff2?v=3.18") format("woff2"),
+- url("$(res)/fonts/Inter/Inter-BoldItalic.woff?v=3.18") format("woff");
++ local("Inter Bold Italic");
+ }
+
+ /* latin-ext */
+@@ -101,8 +93,7 @@
+ font-weight: 400;
+ src:
+ local("Inconsolata Regular"),
+- local("Inconsolata-Regular"),
+- url("$(res)/fonts/Inconsolata/QldKNThLqRwH-OJ1UHjlKGlX5qhExfHwNJU.woff2") format("woff2");
++ local("Inconsolata-Regular");
+ unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
+ }
+ /* latin */
+@@ -113,8 +104,7 @@
+ font-display: swap;
+ src:
+ local("Inconsolata Regular"),
+- local("Inconsolata-Regular"),
+- url("$(res)/fonts/Inconsolata/QldKNThLqRwH-OJ1UHjlKGlZ5qhExfHw.woff2") format("woff2");
++ local("Inconsolata-Regular");
+ unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC,
+ U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
+ }
+@@ -126,8 +116,7 @@
+ font-display: swap;
+ src:
+ local("Inconsolata Bold"),
+- local("Inconsolata-Bold"),
+- url("$(res)/fonts/Inconsolata/QldXNThLqRwH-OJ1UHjlKGHiw71n5_zaDpwm80E.woff2") format("woff2");
++ local("Inconsolata-Bold");
+ unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
+ }
+ /* latin */
+@@ -138,8 +127,7 @@
+ font-display: swap;
+ src:
+ local("Inconsolata Bold"),
+- local("Inconsolata-Bold"),
+- url("$(res)/fonts/Inconsolata/QldXNThLqRwH-OJ1UHjlKGHiw71p5_zaDpwm.woff2") format("woff2");
++ local("Inconsolata-Bold");
+ unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC,
+ U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
+ }
+--- a/res/themes/legacy-light/css/_fonts.pcss
++++ b/res/themes/legacy-light/css/_fonts.pcss
+@@ -23,17 +23,17 @@
+ font-family: "Nunito";
+ font-style: normal;
+ font-weight: 400;
+- src: url("$(res)/fonts/Nunito/Nunito-Regular.ttf") format("truetype");
++ src: local("Nunito Regular");
+ }
+ @font-face {
+ font-family: "Nunito";
+ font-style: normal;
+ font-weight: 600;
+- src: url("$(res)/fonts/Nunito/Nunito-SemiBold.ttf") format("truetype");
++ src: local("Nunito SemiBold");
+ }
+ @font-face {
+ font-family: "Nunito";
+ font-style: normal;
+ font-weight: 700;
+- src: url("$(res)/fonts/Nunito/Nunito-Bold.ttf") format("truetype");
++ src: local("Nunito Bold");
+ }
diff --git a/testing/element-desktop/use-system-fonts.patch.web b/testing/element-desktop/use-system-fonts.patch.web
new file mode 100644
index 00000000000..b2b406e9446
--- /dev/null
+++ b/testing/element-desktop/use-system-fonts.patch.web
@@ -0,0 +1,11 @@
+--- a/src/vector/jitsi/index.pcss
++++ b/src/vector/jitsi/index.pcss
+@@ -20,7 +20,7 @@
+ font-family: "Nunito";
+ font-style: normal;
+ font-weight: 400;
+- src: url("~matrix-react-sdk/res/fonts/Nunito/Nunito-Regular.ttf") format("truetype");
++ src: local("Nunito Regular");
+ }
+
+ $dark-fg: #edf3ff;
diff --git a/testing/element-desktop/use-system-headers.patch b/testing/element-desktop/use-system-headers.patch
new file mode 100644
index 00000000000..231e1f20d2e
--- /dev/null
+++ b/testing/element-desktop/use-system-headers.patch
@@ -0,0 +1,15 @@
+--- a/scripts/hak/hakEnv.ts
++++ b/scripts/hak/hakEnv.ts
+@@ -99,11 +99,10 @@
+ return Object.assign({}, process.env, {
+ npm_config_arch: this.target.arch,
+ npm_config_target_arch: this.target.arch,
+- npm_config_disturl: "https://electronjs.org/headers",
++ npm_config_nodedir: "/usr/include/electron/node_headers",
+ npm_config_runtime: this.runtime,
+ npm_config_target: this.runtimeVersion,
+ npm_config_build_from_source: true,
+- npm_config_devdir: path.join(os.homedir(), ".electron-gyp"),
+ });
+ }
+
diff --git a/testing/elementary-photos/APKBUILD b/testing/elementary-photos/APKBUILD
new file mode 100644
index 00000000000..1e39aa74978
--- /dev/null
+++ b/testing/elementary-photos/APKBUILD
@@ -0,0 +1,61 @@
+# Contributor: Jakub Jirutka <jakub@jirutka.cz>
+# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
+pkgname=elementary-photos
+pkgver=2.8.0
+pkgrel=1
+pkgdesc="Photo viewer and organizer designed for elementary OS"
+url="https://github.com/elementary/photos"
+arch="all !riscv64 !s390x" # blocked by libhandy1
+license="LGPL-2.1"
+depends="hicolor-icon-theme"
+makedepends="
+ geocode-glib-dev
+ gexiv2-dev
+ gexiv2-dev
+ glib-dev
+ granite-dev
+ gst-plugins-base-dev
+ gstreamer-dev
+ gtk+3.0-dev
+ json-glib-dev
+ libexif-dev
+ libgee-dev
+ libgphoto2-dev
+ libgudev-dev
+ libhandy1-dev
+ libraw-dev
+ libsoup-dev
+ libwebp-dev
+ libxml2-dev
+ meson
+ rest-dev
+ sqlite-dev
+ vala
+ webkit2gtk-dev
+ "
+subpackages="
+ $pkgname-lang
+ $pkgname-publishing
+ "
+source="https://github.com/elementary/photos/archive/$pkgver/$pkgname-$pkgver.tar.gz"
+builddir="$srcdir/photos-$pkgver"
+options="!check" # no tests provided
+
+build() {
+ abuild-meson . output
+ meson compile -j ${JOBS:-0} -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+publishing() {
+ pkgdesc="$pkgdesc - publishing plugins"
+
+ amove usr/lib/io.elementary.photos/plugins/libpantheon-photos-publishing*.so
+}
+
+sha512sums="
+691212a03d19b51bed7cb11d7df32e276d8aa7c5810668a6a3898c1e22c0664672dec66055305cd0e82d52cf612e094fa8ccbe32f62cb73d579f17cfc6915758 elementary-photos-2.8.0.tar.gz
+"
diff --git a/testing/elf_diff/APKBUILD b/testing/elf_diff/APKBUILD
new file mode 100644
index 00000000000..7457d6d22f9
--- /dev/null
+++ b/testing/elf_diff/APKBUILD
@@ -0,0 +1,48 @@
+# Contributor: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
+# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
+pkgname=elf_diff
+pkgver=0.7.1
+pkgrel=1
+pkgdesc="Tool to compare ELF binaries"
+url="https://github.com/noseglasses/elf_diff"
+arch="noarch !s390x" # py3-progressbar2
+license="GPL-3.0-only"
+depends="
+ py3-anytree
+ py3-beautifulsoup4
+ py3-deepdiff
+ py3-dict2xml
+ py3-gitpython
+ py3-jinja2
+ py3-progressbar2
+ py3-yaml
+ python3
+ "
+makedepends="py3-setuptools"
+checkdepends="py3-pytest"
+options="!check" # unit tests fail
+
+subpackages="$pkgname-pyc"
+source="
+ https://files.pythonhosted.org/packages/source/e/elf_diff/elf_diff-$pkgver.tar.gz
+
+ elf_diff
+ "
+
+build() {
+ python3 setup.py build
+}
+
+check() {
+ PYTHONPATH="$PWD" pytest
+}
+
+package() {
+ python3 setup.py install --skip-build --root="$pkgdir"
+ install -Dm755 "$srcdir"/elf_diff "$pkgdir"/usr/bin/elf_diff
+}
+
+sha512sums="
+b1eef9954ceabf3a1936423131eacd71cf942a5d2f28419b3afac837b6b56cf81a9ff884f6e36495d0f61840aa9f5e68836960d29b0a7d7e00f4a0e938fcc141 elf_diff-0.7.1.tar.gz
+1ca2c8c7325f78df0d4033fe7cc8ed2e1da2716e4407b10fbcdf38cededcd1113dcc7a74b1816dff84103119c894dd499b061cf9936f2ff18eebef632b494617 elf_diff
+"
diff --git a/testing/elf_diff/elf_diff b/testing/elf_diff/elf_diff
new file mode 100755
index 00000000000..61b9fa48493
--- /dev/null
+++ b/testing/elf_diff/elf_diff
@@ -0,0 +1,5 @@
+#!/usr/bin/env python3
+
+from elf_diff.__main__ import main
+
+main()
diff --git a/testing/elfio/APKBUILD b/testing/elfio/APKBUILD
index 317268eac04..06c3176cd71 100644
--- a/testing/elfio/APKBUILD
+++ b/testing/elfio/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer:
pkgname=elfio
-pkgver=3.10
+pkgver=3.12
pkgrel=0
pkgdesc="ELF reader and producer implemented as a header only C++ library"
url="https://github.com/serge1/ELFIO"
@@ -11,6 +11,7 @@ makedepends="cmake ninja"
subpackages="$pkgname-dev"
source="https://github.com/serge1/ELFIO/releases/download/Release_$pkgver/elfio-$pkgver.tar.gz
fix-cmake-install-dir.patch
+ page_size.patch
"
options="!check" # no tests included in release tarball
@@ -30,6 +31,7 @@ package() {
}
sha512sums="
-e63857254277254b36d92c7280fbe0208a260da14067cf3f5d9c8f69b7449062c85a95debefe647d5f381afc5e8d305b6aa7cef174c0c88403b3ea46dad47ffb elfio-3.10.tar.gz
-cfd760aac6cc5182fbc5d1082d488be2aabfbae78dd0617ec1c7f46237ab6b9d5f95f871b873bdb936a83311478e68511ebd88e2e5c6aacc897be5c2a6d68951 fix-cmake-install-dir.patch
+13ec6be1f8ee3d7dc96d4ff141d3c199dacd818470c0d902403215571ce3d998afe9e71a8c64e0e69cfb86a4794752d93e2e406025f4812e499e51b67201e23c elfio-3.12.tar.gz
+a913982727ec3a0c35f7701302afded5c9c308d7bd059873b996cbfd69350a11a4c66f72beea0c1ffa1170504e82fb81ea59861122dd2e5d34138d47bd92ef1b fix-cmake-install-dir.patch
+512a47c6a7bd23ad44007a07882fec203782754a11756cde2ed81452bdd8250f8d92c44d3c4d235720c54dc2ee798e38c6e68f9a7597cd406f698c7921d341c6 page_size.patch
"
diff --git a/testing/elfio/fix-cmake-install-dir.patch b/testing/elfio/fix-cmake-install-dir.patch
index 9131383caba..22965925efa 100644
--- a/testing/elfio/fix-cmake-install-dir.patch
+++ b/testing/elfio/fix-cmake-install-dir.patch
@@ -2,32 +2,34 @@ From: Jakub Jirutka <jakub@jirutka.cz>
Date: Sat, 11 Dec 2021 12:00:39 +0100
Subject: [PATCH] Fix install directory for cmake files
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 87de541..8e4fe8a 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
-@@ -72,7 +72,7 @@
+@@ -78,7 +78,7 @@ if(IS_TOP_PROJECT)
"${PROJECT_SOURCE_DIR}/cmake/${PROJECT_NAME}Config.cmake.in"
"${PROJECT_BINARY_DIR}/${PROJECT_NAME}Config.cmake"
INSTALL_DESTINATION
-- ${CMAKE_INSTALL_DATAROOTDIR}/${PROJECT_NAME}/cmake)
-+ ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}/)
+- ${CMAKE_INSTALL_DATAROOTDIR}/${PROJECT_NAME}/cmake)
++ ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}/)
# Install the previously generated "config" and "version" files
install(
-@@ -80,7 +80,7 @@
- "${PROJECT_BINARY_DIR}/${PROJECT_NAME}Config.cmake"
- "${PROJECT_BINARY_DIR}/${PROJECT_NAME}ConfigVersion.cmake"
+@@ -86,7 +86,7 @@ if(IS_TOP_PROJECT)
+ "${PROJECT_BINARY_DIR}/${PROJECT_NAME}Config.cmake"
+ "${PROJECT_BINARY_DIR}/${PROJECT_NAME}ConfigVersion.cmake"
DESTINATION
-- ${CMAKE_INSTALL_DATAROOTDIR}/${PROJECT_NAME}/cmake)
-+ ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}/)
+- ${CMAKE_INSTALL_DATAROOTDIR}/${PROJECT_NAME}/cmake)
++ ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}/)
# Install the entire local `elfio` directory to the include directory
install(
-@@ -101,7 +101,7 @@
+@@ -107,7 +107,7 @@ if(IS_TOP_PROJECT)
NAMESPACE
- ${PROJECT_NAME}::
+ ${PROJECT_NAME}::
DESTINATION
-- ${CMAKE_INSTALL_DATAROOTDIR}/${PROJECT_NAME}/cmake)
-+ ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}/)
+- ${CMAKE_INSTALL_DATAROOTDIR}/${PROJECT_NAME}/cmake)
++ ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}/)
# Add the elfio target to the ${PROJECT_NAME}_Targets export
install(
diff --git a/testing/elfio/page_size.patch b/testing/elfio/page_size.patch
new file mode 100644
index 00000000000..9739a803ffa
--- /dev/null
+++ b/testing/elfio/page_size.patch
@@ -0,0 +1,33 @@
+diff --git a/examples/writer/writer.cpp b/examples/writer/writer.cpp
+index 3b3e8b6..62e5592 100644
+--- a/examples/writer/writer.cpp
++++ b/examples/writer/writer.cpp
+@@ -39,8 +39,8 @@ THE SOFTWARE.
+ using namespace ELFIO;
+
+ const Elf64_Addr CODE_ADDR = 0x00401000;
+-const Elf_Xword PAGE_SIZE = 0x1000;
+-const Elf64_Addr DATA_ADDR = CODE_ADDR + PAGE_SIZE;
++const Elf_Xword pagesize = 0x1000;
++const Elf64_Addr DATA_ADDR = CODE_ADDR + pagesize;
+
+ int main( void )
+ {
+@@ -80,7 +80,7 @@ int main( void )
+ text_seg->set_virtual_address( CODE_ADDR );
+ text_seg->set_physical_address( CODE_ADDR );
+ text_seg->set_flags( PF_X | PF_R );
+- text_seg->set_align( PAGE_SIZE );
++ text_seg->set_align( pagesize );
+
+ // Add code section into program segment
+ text_seg->add_section( text_sec, text_sec->get_addr_align() );
+@@ -103,7 +103,7 @@ int main( void )
+ data_seg->set_virtual_address( DATA_ADDR );
+ data_seg->set_physical_address( DATA_ADDR );
+ data_seg->set_flags( PF_W | PF_R );
+- data_seg->set_align( PAGE_SIZE );
++ data_seg->set_align( pagesize );
+
+ // Add code section into program segment
+ data_seg->add_section( data_sec, data_sec->get_addr_align() );
diff --git a/testing/eludris/APKBUILD b/testing/eludris/APKBUILD
new file mode 100644
index 00000000000..587142efe6d
--- /dev/null
+++ b/testing/eludris/APKBUILD
@@ -0,0 +1,34 @@
+# Contributor: Oliver Wilkes <oliverwilkes2006@icloud.com>
+# Maintainer: Oliver Wilkes <oliverwilkes2006@icloud.com>
+pkgname=eludris
+pkgver=0.3.3
+pkgrel=1
+pkgdesc="Simple CLI to help you with setting up and managing your Eludris instance"
+url="https://github.com/eludris/eludris/tree/main/cli"
+# rust-ring
+arch="all !ppc64le !s390x !riscv64"
+license="MIT"
+makedepends="cargo cargo-auditable openssl-dev"
+subpackages="$pkgname-doc"
+source="eludris-$pkgver.tar.gz::https://github.com/eludris/eludris/archive/refs/tags/v$pkgver.tar.gz"
+options="!check" # no cli tests right now
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked --manifest-path cli/Cargo.toml
+}
+
+build() {
+ cargo auditable build --frozen --release --bin eludris
+}
+
+package() {
+ install -Dm755 target/release/eludris -t "$pkgdir"/usr/bin/
+
+ install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
+
+sha512sums="
+2f0d874620d1a28b8b29a688311b30206df20a92b3f637a364210297cce3bc4ca89066a2b71f317dc629b5bb1591c80b6226b977f26de8f3d1283ee50064c1a6 eludris-0.3.3.tar.gz
+"
diff --git a/testing/elvish/APKBUILD b/testing/elvish/APKBUILD
deleted file mode 100644
index 57046ad863b..00000000000
--- a/testing/elvish/APKBUILD
+++ /dev/null
@@ -1,29 +0,0 @@
-# Maintainer: Daniel Isaksen <d@duniel.no>
-pkgname=elvish
-pkgver=0.15.0
-pkgrel=6
-pkgdesc="A friendly and expressive shell for Linux, macOS and BSDs"
-url="https://elv.sh/"
-arch="all"
-license="BSD-2-Clause"
-makedepends="go"
-options="!check chmod-clean"
-source="$pkgname-$pkgver.tar.gz::https://github.com/elves/elvish/archive/v$pkgver.tar.gz"
-builddir="$srcdir/src/github.com/elves/$pkgname"
-
-prepare() {
- mkdir -p ${builddir%/*}
- mv "$srcdir"/$pkgname-$pkgver "$builddir"/
- default_prepare
-}
-
-build() {
- export GOPATH="$srcdir"
- go build -o bin/$pkgname
-}
-
-package() {
- install -Dm755 "$builddir"/bin/elvish -t "$pkgdir"/usr/bin
-}
-
-sha512sums="fad60c44710c919384624e680cf22379c90126bd304b21fe12ff4f0fc8d5288456568c14e20d23a24cc5e96a2b90055a92b9741a0c40dda52edeaed1b6a8a9f7 elvish-0.15.0.tar.gz"
diff --git a/testing/emacs-ace-window/APKBUILD b/testing/emacs-ace-window/APKBUILD
new file mode 100644
index 00000000000..eb8875e2cb4
--- /dev/null
+++ b/testing/emacs-ace-window/APKBUILD
@@ -0,0 +1,38 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-ace-window
+pkgver=0.10.0_git20220911
+_gitrev=77115afc1b0b9f633084cf7479c767988106c196
+pkgrel=0
+_pkgreal=ace-window
+pkgdesc="Quickly switch windows in Emacs"
+url="https://github.com/abo-abo/ace-window"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="
+ cmd:emacs
+ emacs-avy
+ "
+makedepends="emacs-nox"
+source="https://github.com/abo-abo/ace-window/archive/$_gitrev/emacs-ace-window-$_gitrev.tar.gz"
+builddir="$srcdir/$_pkgreal-$_gitrev"
+options="!check" # no tests provided
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+b159413cb2848907c7d8bce5c685c58314f6e52fca2368305f609690c03b1073ca0e067624390524e4d6b0452dca674509d8f6cb4b80571699d7c0b48be9eb8c emacs-ace-window-77115afc1b0b9f633084cf7479c767988106c196.tar.gz
+"
diff --git a/testing/emacs-async-await/APKBUILD b/testing/emacs-async-await/APKBUILD
new file mode 100644
index 00000000000..032a0a4008e
--- /dev/null
+++ b/testing/emacs-async-await/APKBUILD
@@ -0,0 +1,40 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-async-await
+pkgver=1.1_git20220826
+_gitrev=5d5b6ea07c09e3ec42f95b13fc837608658324e1
+pkgrel=0
+_pkgreal=async-await
+pkgdesc="Simple implementation of Async/Await"
+url="https://github.com/chuntaro/emacs-async-await"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="
+ cmd:emacs
+ emacs-iter2
+ emacs-promise
+ "
+makedepends="emacs-nox"
+source="https://github.com/chuntaro/emacs-async-await/archive/$_gitrev/emacs-async-await-$_gitrev.tar.gz"
+builddir="$srcdir/$pkgname-$_gitrev"
+options="!check" # no tests provided
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -eval '(setq byte-compile-error-on-warn t)' \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+0967347fed289fb71f2acc7b0118b77cc5e91b3d5acd6d7b9d604832420f88e70e68210bdee4d858aa0ca437b080a36a599939a979069b8d1a21f83cf2469236 emacs-async-await-5d5b6ea07c09e3ec42f95b13fc837608658324e1.tar.gz
+"
diff --git a/testing/emacs-async/APKBUILD b/testing/emacs-async/APKBUILD
new file mode 100644
index 00000000000..62262b171ef
--- /dev/null
+++ b/testing/emacs-async/APKBUILD
@@ -0,0 +1,38 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-async
+pkgver=1.9.8
+pkgrel=0
+_pkgreal=async
+pkgdesc="Simple library for asynchronous processing"
+url="https://github.com/jwiegley/emacs-async"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="cmd:emacs"
+makedepends="emacs-nox"
+checkdepends="emacs-buttercup"
+source="https://github.com/jwiegley/emacs-async/archive/v$pkgver/emacs-async-$pkgver.tar.gz"
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -eval '(setq byte-compile-error-on-warn t)' \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+check() {
+ HOME="$srcdir" buttercup -L . --traceback pretty
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/$pkgname/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp/$pkgname
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+c4c5406ce28dbfea0130b43a7f85d0a47626cf630c73318280896bd28f29bf5a8949077c242cd9c6162fecabbc619b2a270d532df341c4e286f1f7bb499da5f3 emacs-async-1.9.8.tar.gz
+"
diff --git a/testing/emacs-avy/APKBUILD b/testing/emacs-avy/APKBUILD
new file mode 100644
index 00000000000..72ff4247844
--- /dev/null
+++ b/testing/emacs-avy/APKBUILD
@@ -0,0 +1,39 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-avy
+pkgver=0.5.0_git20230420
+_gitrev=be612110cb116a38b8603df367942e2bb3d9bdbe
+pkgrel=0
+_pkgreal=avy
+pkgdesc="Jump to things in Emacs tree-style"
+url="https://github.com/abo-abo/avy"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="cmd:emacs"
+makedepends="emacs-nox"
+source="https://github.com/abo-abo/avy/archive/$_gitrev/emacs-avy-$_gitrev.tar.gz"
+builddir="$srcdir/$_pkgreal-$_gitrev"
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+check() {
+ emacs -batch -q -no-site-file -L . \
+ -l avy-test -f ert-run-tests-batch-and-exit
+}
+
+package() {
+ install -Dvm644 avy.el avy.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+4c83c598f39267f1508923ed0fbbf4ae0161768895ce02367ef98c651f17f0fd71edc118c517380e95265a7151bbb52708b82521647cdde6f3c072498bbe2972 emacs-avy-be612110cb116a38b8603df367942e2bb3d9bdbe.tar.gz
+"
diff --git a/testing/emacs-buttercup/APKBUILD b/testing/emacs-buttercup/APKBUILD
new file mode 100644
index 00000000000..bd51a15ece0
--- /dev/null
+++ b/testing/emacs-buttercup/APKBUILD
@@ -0,0 +1,42 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-buttercup
+pkgver=1.35
+pkgrel=0
+_pkgreal=buttercup
+pkgdesc="Behavior-Driven Emacs Lisp Testing"
+url="https://github.com/jorgenschaefer/emacs-buttercup"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="bash cmd:emacs"
+makedepends="emacs-nox"
+source="https://github.com/jorgenschaefer/emacs-buttercup/archive/v$pkgver/emacs-buttercup-$pkgver.tar.gz"
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -eval '(setq byte-compile-error-on-warn t)' \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+check() {
+ emacs -batch -q -no-site-file -L . \
+ -l buttercup -f buttercup-run-discover \
+ -- --traceback pretty
+}
+
+package() {
+ install -Dvm755 bin/buttercup \
+ -t "$pkgdir"/usr/bin/
+
+ install -Dvm644 ./*.el ./*.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+416edb974999e2eac38040ce72c241ab961cc63f40068711b0436e4f3ca49025955d5ee2d93168770da0f251269652e36c1c9c0436f6ee6133c6ca859dbfe487 emacs-buttercup-1.35.tar.gz
+"
diff --git a/testing/emacs-cangjie/APKBUILD b/testing/emacs-cangjie/APKBUILD
new file mode 100644
index 00000000000..d0461117b3d
--- /dev/null
+++ b/testing/emacs-cangjie/APKBUILD
@@ -0,0 +1,40 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-cangjie
+pkgver=0.7.4_git20230218
+_gitrev=d6882e15f47fdde37e9f739dde604d77d25f11db
+pkgrel=0
+_pkgreal=cangjie
+pkgdesc="Lookup Cangjie encoding of a Han character"
+url="https://github.com/kisaragi-hiu/cangjie.el"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="
+ cmd:emacs
+ emacs-dash
+ emacs-f
+ emacs-s
+ "
+makedepends="emacs-nox"
+source="https://github.com/kisaragi-hiu/cangjie.el/archive/$_gitrev/emacs-cangjie-$_gitrev.tar.gz"
+builddir="$srcdir/cangjie.el-$_gitrev"
+options="!check" # no tests provided
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+3b35b7cb777ea7781ed987970ecd956a05b26ac92b12940c1f7240ebcffd1cb6aab4e6d7fec82ab335acd7bacbc2a9d1f160aba32f0cf605cf03726c24fc15c3 emacs-cangjie-d6882e15f47fdde37e9f739dde604d77d25f11db.tar.gz
+"
diff --git a/testing/emacs-centaur-tabs/APKBUILD b/testing/emacs-centaur-tabs/APKBUILD
new file mode 100644
index 00000000000..dd95e8431f6
--- /dev/null
+++ b/testing/emacs-centaur-tabs/APKBUILD
@@ -0,0 +1,38 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-centaur-tabs
+pkgver=3.2_git20230601
+_gitrev=0bb1aa18d475319df85f192dce3327802866c3c3
+pkgrel=0
+_pkgreal=centaur-tabs
+pkgdesc="Aesthetic, modern looking tabs plugin"
+url="https://github.com/ema2159/centaur-tabs"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="
+ cmd:emacs
+ emacs-powerline
+ "
+makedepends="emacs-nox"
+source="https://github.com/ema2159/centaur-tabs/archive/$_gitrev/emacs-centaur-tabs-$_gitrev.tar.gz"
+builddir="$srcdir/$_pkgreal-$_gitrev"
+options="!check" # no tests provided
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/$_pkgreal/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp/$_pkgreal
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+f59668c6ea3af1624a94db4b5afa584f75544689cfc039be1869ed9c633303f13809c208a47dd3c9dfe4f6b27c83381372e46ea624af11e4eed9cedaae8218fd emacs-centaur-tabs-0bb1aa18d475319df85f192dce3327802866c3c3.tar.gz
+"
diff --git a/testing/emacs-circe/APKBUILD b/testing/emacs-circe/APKBUILD
new file mode 100644
index 00000000000..e8670c85b09
--- /dev/null
+++ b/testing/emacs-circe/APKBUILD
@@ -0,0 +1,42 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-circe
+pkgver=2.13
+pkgrel=0
+_pkgreal=circe
+pkgdesc="Client for IRC in Emacs"
+url="https://github.com/emacs-circe/circe"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="cmd:emacs"
+makedepends="emacs-nox"
+checkdepends="emacs-buttercup"
+source="https://github.com/emacs-circe/circe/archive/v$pkgver/emacs-circe-$pkgver.tar.gz
+ fix-test-tracking.patch
+ "
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -f batch-byte-compile \
+ ./*.el
+ rm -v circe-pkg.elc
+}
+
+check() {
+ HOME="$srcdir" buttercup -L . --traceback pretty
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/$_pkgreal/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp/$_pkgreal
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+10e5998fa211d5a340eacec6bf88fc4ef749fbae01cfbd8cd01204a7d4533d0ecb4dda54543667c5caf4f44142fef737dcc2750d44525f69dfff18e245cae02e emacs-circe-2.13.tar.gz
+696b5ebf5011dbf8a256a5350f03c58a15ee9d9f7b533628ec5f2644592141c287e7b98e67e0d0327e81c54a9888e938c510318c171b8b427924cbdadfe7bb5a fix-test-tracking.patch
+"
diff --git a/testing/emacs-circe/fix-test-tracking.patch b/testing/emacs-circe/fix-test-tracking.patch
new file mode 100644
index 00000000000..fffb5a44156
--- /dev/null
+++ b/testing/emacs-circe/fix-test-tracking.patch
@@ -0,0 +1,27 @@
+Patch-Source: https://github.com/emacs-circe/circe/commit/0bb4ee83693ef3a3504e3cdc512b218afb333af3.patch
+--
+From 0bb4ee83693ef3a3504e3cdc512b218afb333af3 Mon Sep 17 00:00:00 2001
+From: Ola Nilsson <ola.nilsson@gmail.com>
+Date: Tue, 5 Mar 2024 22:34:26 +0100
+Subject: [PATCH] Add lexical-cast to test-tracking.el
+
+Buttercup 1.34 requires lexical-cast: t in all files defining
+buttercup test suites for Emacs >= 29.
+It was already documented as a requirement, but was only actually
+required for some specific functionality. The introduction of
+Oclosures for Emacs versions that support them made it a hard
+requirement.
+---
+ tests/test-tracking.el | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/tests/test-tracking.el b/tests/test-tracking.el
+index 35076917..21b252a7 100644
+--- a/tests/test-tracking.el
++++ b/tests/test-tracking.el
+@@ -1,4 +1,4 @@
+-;;; Automated tests for tracking.el
++;;; test-tracking.el --- Automated tests for tracking.el -*- lexical-binding: t; -*-
+
+ (require 'tracking)
+
diff --git a/testing/emacs-compat/APKBUILD b/testing/emacs-compat/APKBUILD
new file mode 100644
index 00000000000..936dbe3d74d
--- /dev/null
+++ b/testing/emacs-compat/APKBUILD
@@ -0,0 +1,48 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-compat
+pkgver=29.1.4.5
+pkgrel=0
+_pkgreal=compat
+pkgdesc="Forwards-compatibility library for Emacs Lisp"
+url="https://github.com/emacs-compat/compat"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="cmd:emacs"
+makedepends="emacs-nox"
+source="https://github.com/emacs-compat/compat/archive/$pkgver/emacs-compat-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+prepare() {
+ default_prepare
+
+ # $pkgver in directory name is needed for
+ # compat-package-get-version test to pass
+ mkdir -v test-$pkgver
+ mv -v compat-tests.el test-$pkgver/
+}
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -eval '(setq compat-strict t byte-compile-error-on-warn t)' \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+check() {
+ emacs -batch -q -no-site-file -L . -L test-$pkgver \
+ -l compat-tests -f ert-run-tests-batch-and-exit
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/$_pkgreal/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp/$_pkgreal
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+9682224a1ab5238c7f584121652c55df257fd050279e8356632b2aafef4045dc89b2dfd20cf8f5030dda1d96db40c993cdc3ac0efd0263d23beee8310def0849 emacs-compat-29.1.4.5.tar.gz
+"
diff --git a/testing/emacs-consult/APKBUILD b/testing/emacs-consult/APKBUILD
new file mode 100644
index 00000000000..a019bf66f0d
--- /dev/null
+++ b/testing/emacs-consult/APKBUILD
@@ -0,0 +1,39 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-consult
+pkgver=1.4_git20240405
+_gitrev=ea7043381b93f0a5236f8ee3f21f151380a0b0f5
+pkgrel=0
+_pkgreal=consult
+pkgdesc="Useful commands based on Emacs completing-read"
+url="https://github.com/minad/consult"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="
+ cmd:emacs
+ emacs-compat
+ "
+makedepends="emacs-nox"
+source="https://github.com/minad/consult/archive/$_gitrev/emacs-consult-$_gitrev.tar.gz"
+builddir="$srcdir/$_pkgreal-$_gitrev"
+options="!check" # no tests provided
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -eval '(setq byte-compile-error-on-warn t)' \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/$_pkgreal/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp/$_pkgreal
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+48ce64d8316f4419b6de420323f3d01df4ae7623778dc681f3ff9465d8e8544e8c47d34c3fe826a9227b03305f1d1e6d1ac021fa3710f3dc446eff83a772ccb0 emacs-consult-ea7043381b93f0a5236f8ee3f21f151380a0b0f5.tar.gz
+"
diff --git a/testing/emacs-dash/APKBUILD b/testing/emacs-dash/APKBUILD
new file mode 100644
index 00000000000..5d389aee9ec
--- /dev/null
+++ b/testing/emacs-dash/APKBUILD
@@ -0,0 +1,40 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-dash
+pkgver=2.19.1_git20240216
+_gitrev=5df7605da5a080df769d4f260034fb0e5e86a7a4
+pkgrel=0
+_pkgreal=dash
+pkgdesc="Modern list library for Emacs"
+url="https://github.com/magnars/dash.el"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="cmd:emacs"
+makedepends="emacs-nox"
+source="https://github.com/magnars/dash.el/archive/$_gitrev/emacs-dash-$_gitrev.tar.gz"
+builddir="$srcdir/dash.el-$_gitrev"
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -eval '(setq byte-compile-error-on-warn t)' \
+ -f batch-byte-compile \
+ dash.el
+}
+
+check() {
+ emacs -batch -q -no-site-file -L . \
+ -l dev/examples -f ert-run-tests-batch-and-exit
+}
+
+package() {
+ install -Dvm644 dash.el dash.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+88e212f781f40040c7e906d5b170c8d0a1c0dece6800f569ed62955299d6019af31614899c9f2006b3a3b6733b2972d7b99e374874b908f7aec57b6964787e44 emacs-dash-5df7605da5a080df769d4f260034fb0e5e86a7a4.tar.gz
+"
diff --git a/testing/emacs-deferred/APKBUILD b/testing/emacs-deferred/APKBUILD
new file mode 100644
index 00000000000..56944927fcd
--- /dev/null
+++ b/testing/emacs-deferred/APKBUILD
@@ -0,0 +1,33 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-deferred
+pkgver=0.5.1
+pkgrel=0
+_pkgreal=deferred
+pkgdesc="Manage asynchronous tasks in Elisp"
+url="https://github.com/kiwanami/emacs-deferred"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="cmd:emacs"
+makedepends="emacs-nox"
+source="https://github.com/kiwanami/emacs-deferred/archive/v$pkgver/emacs-deferred-$pkgver.tar.gz"
+options="!check" # tests require unpackaged "undercover"
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+357890f73917c7929cbb79f71a26901ac24abe9ea532181b730deee8eba97709b41c360904e2a2a8028ee1295e7ae845da5c702c74256a450f3d144080960a2b emacs-deferred-0.5.1.tar.gz
+"
diff --git a/testing/emacs-elfeed/APKBUILD b/testing/emacs-elfeed/APKBUILD
new file mode 100644
index 00000000000..c450e95e7f1
--- /dev/null
+++ b/testing/emacs-elfeed/APKBUILD
@@ -0,0 +1,41 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-elfeed
+pkgver=3.4.1_git20240326
+_gitrev=5c05a1eab37bc113ecb158a4d57fe05352fa2c6a
+pkgrel=0
+_pkgreal=elfeed
+pkgdesc="Emacs Atom/RSS feed reader"
+url="https://github.com/skeeto/elfeed"
+arch="noarch"
+license="Unlicense"
+depends="cmd:emacs"
+makedepends="emacs-nox"
+checkdepends="cmd:curl"
+source="https://github.com/skeeto/elfeed/archive/$_gitrev/emacs-elfeed-$_gitrev.tar.gz"
+builddir="$srcdir/$_pkgreal-$_gitrev"
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -f batch-byte-compile \
+ ./*.el
+ rm -v elfeed-pkg.elc
+}
+
+check() {
+ emacs -batch -q -no-site-file -L . -L tests \
+ -l elfeed-tests -f ert-run-tests-batch-and-exit
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/$_pkgreal/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp/$_pkgreal
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+681a137cf9e39bbc057f40cde1e6292c94b92d4eee26d78d0c961e7e01c4dd1fd67e659958d5d01b89a3df70e6ff1d7c0b2089eef91c36dee485607deb1958be emacs-elfeed-5c05a1eab37bc113ecb158a4d57fe05352fa2c6a.tar.gz
+"
diff --git a/testing/emacs-embark/APKBUILD b/testing/emacs-embark/APKBUILD
new file mode 100644
index 00000000000..61863df30d6
--- /dev/null
+++ b/testing/emacs-embark/APKBUILD
@@ -0,0 +1,63 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-embark
+pkgver=1.0_git20240327
+_gitrev=d3c9d1b4c890cf365846cc2b418f37341999e79f
+pkgrel=0
+_pkgreal=embark
+pkgdesc="Conveniently act on minibuffer completions"
+url="https://github.com/oantolin/embark"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="
+ cmd:emacs
+ emacs-compat
+ "
+makedepends="
+ emacs-avy
+ emacs-consult
+ emacs-nox
+ "
+subpackages="
+ emacs-avy-embark-collect
+ emacs-embark-consult
+ "
+source="https://github.com/oantolin/embark/archive/$_gitrev/emacs-embark-$_gitrev.tar.gz"
+builddir="$srcdir/$_pkgreal-$_gitrev"
+options="!check" # no tests provided
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -eval '(setq byte-compile-error-on-warn t)' \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/$_pkgreal/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp/$_pkgreal
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+collect() {
+ pkgdesc="Use Avy to jump to Embark Collect entries"
+ depends="$pkgname=$pkgver-r$pkgrel emacs-avy"
+ install_if="$pkgname=$pkgver-r$pkgrel emacs-avy"
+
+ amove usr/share/emacs/site-lisp/$_pkgreal/avy-embark-collect.el*
+}
+
+consult() {
+ pkgdesc="Consult integration for Embark"
+ depends="$pkgname=$pkgver-r$pkgrel emacs-consult"
+ install_if="$pkgname=$pkgver-r$pkgrel emacs-consult"
+
+ amove usr/share/emacs/site-lisp/$_pkgreal/embark-consult.el*
+}
+
+sha512sums="
+bfa06e7b7ab95bc52b27e727b397373423c832bd1ff602b0e9d7a9ac85d8a38c6007604c5d3a68ea5e7f4611471e563a91f3780ff514634654a4229feac1c657 emacs-embark-d3c9d1b4c890cf365846cc2b418f37341999e79f.tar.gz
+"
diff --git a/testing/emacs-ement/APKBUILD b/testing/emacs-ement/APKBUILD
new file mode 100644
index 00000000000..b7e1dd68226
--- /dev/null
+++ b/testing/emacs-ement/APKBUILD
@@ -0,0 +1,47 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-ement
+pkgver=0.14_git20240320
+_gitrev=7fbbb065a86b0f5c44e3249e3b38d484772b6d22
+pkgrel=0
+_pkgreal=ement
+pkgdesc="Matrix client for Emacs"
+url="https://github.com/alphapapa/ement.el"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="
+ cmd:emacs
+ emacs-persist
+ emacs-plz
+ emacs-svg-lib
+ emacs-taxy
+ emacs-taxy-magit-section
+ "
+makedepends="emacs-nox"
+source="https://github.com/alphapapa/ement.el/archive/$_gitrev/emacs-ement-$_gitrev.tar.gz"
+builddir="$srcdir/ement.el-$_gitrev"
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -eval '(setq byte-compile-error-on-warn t)' \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+check() {
+ emacs -batch -q -no-site-file -L . -L tests \
+ -l ement-tests -f ert-run-tests-batch-and-exit
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/$_pkgreal/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp/$_pkgreal
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+42232412a8f87b3d083d162d783f56b4bb2cc750ddd69a350b533f97bcef105a7501714856ed7f2f2778daddd397afd15d03b8323be787305121bb66698d3009 emacs-ement-7fbbb065a86b0f5c44e3249e3b38d484772b6d22.tar.gz
+"
diff --git a/testing/emacs-ert-async/APKBUILD b/testing/emacs-ert-async/APKBUILD
new file mode 100644
index 00000000000..0808d6f5017
--- /dev/null
+++ b/testing/emacs-ert-async/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-ert-async
+pkgver=0.1.2_git20200105
+_gitrev=ec884dea0b72ec15d6c360d0d1fc6528bd993e66
+pkgrel=0
+_pkgreal=ert-async
+pkgdesc="Async support for ERT testing framework"
+url="https://github.com/rejeep/ert-async.el"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="cmd:emacs"
+makedepends="emacs-nox"
+source="https://github.com/rejeep/ert-async.el/archive/$_gitrev/emacs-ert-async-$_gitrev.tar.gz"
+builddir="$srcdir/ert-async.el-$_gitrev"
+options="!check" # no tests provided
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -eval '(setq byte-compile-error-on-warn t)' \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+848f36f023fce9eb7d7335a3496c7986b923f8bbe3964f3aa93896a60d7c3125825a5906683d654f7d847b21a9c903117f1fe48f67256821384836284d6832b0 emacs-ert-async-ec884dea0b72ec15d6c360d0d1fc6528bd993e66.tar.gz
+"
diff --git a/testing/emacs-f/APKBUILD b/testing/emacs-f/APKBUILD
new file mode 100644
index 00000000000..a7158199d65
--- /dev/null
+++ b/testing/emacs-f/APKBUILD
@@ -0,0 +1,45 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-f
+pkgver=0.20.0_git20240307
+_gitrev=1e7020dc0d4c52d3da9bd610d431cab13aa02d8c
+pkgrel=0
+_pkgreal=f
+pkgdesc="Modern API for working with files and directories in Emacs"
+url="https://github.com/rejeep/f.el"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="
+ cmd:emacs
+ emacs-dash
+ emacs-s
+ "
+makedepends="emacs-nox"
+source="https://github.com/rejeep/f.el/archive/$_gitrev/emacs-f-$_gitrev.tar.gz"
+builddir="$srcdir/f.el-$_gitrev"
+options="!check" # tests require unpackaged "undercover"
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -eval '(setq byte-compile-error-on-warn t)' \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+check() {
+ emacs -batch -q -no-site-file -L . -L test \
+ -l f-init -f ert-run-tests-batch-and-exit
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+680de5a75ac9225024905a1ab14251c7eb78ee35a34c42da2566573f06e97a34cc7a643434b5d7dd65519cce24a01ae35b287e5baaff032f242fe10fabed1963 emacs-f-1e7020dc0d4c52d3da9bd610d431cab13aa02d8c.tar.gz
+"
diff --git a/testing/emacs-fsm/APKBUILD b/testing/emacs-fsm/APKBUILD
new file mode 100644
index 00000000000..907fc0a5797
--- /dev/null
+++ b/testing/emacs-fsm/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-fsm
+pkgver=0.2.1_git20221212
+_gitrev=595d57373934ad94423c7f37a6c9cce5df81ec6c
+pkgrel=0
+_pkgreal=fsm
+pkgdesc="State machine library inspired by Erlang's gen_fsm"
+url="https://elpa.gnu.org/packages/fsm.html"
+arch="noarch"
+license="GPL-2.0-or-later"
+depends="cmd:emacs"
+makedepends="emacs-nox"
+source="https://github.com/emacsmirror/fsm/archive/$_gitrev/emacs-fsm-$_gitrev.tar.gz"
+builddir="$srcdir/$_pkgreal-$_gitrev"
+options="!check" # no tests provided
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -eval '(setq byte-compile-error-on-warn t)' \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+538a1bd02c607bc56f28da07ea0c1341c37ee2a04b878e81fd2e4c56f4260779287004fcc329b43dd43ecfe9c75e9dbd4b8a107efdfdb71ae9fd7b8b38ad1bfd emacs-fsm-595d57373934ad94423c7f37a6c9cce5df81ec6c.tar.gz
+"
diff --git a/testing/emacs-git-timemachine/APKBUILD b/testing/emacs-git-timemachine/APKBUILD
new file mode 100644
index 00000000000..eea8d7bcd43
--- /dev/null
+++ b/testing/emacs-git-timemachine/APKBUILD
@@ -0,0 +1,38 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-git-timemachine
+pkgver=4.13_git20240309
+_gitrev=5ed73c3831cf6da10ba941e6abba708a86853e8f
+pkgrel=0
+_pkgreal=git-timemachine
+pkgdesc="Step through Git revisions of a file"
+url="https://codeberg.org/pidu/git-timemachine"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="
+ cmd:emacs
+ cmd:git
+ "
+makedepends="emacs-nox"
+source="$pkgname-$_gitrev.tar.gz::https://codeberg.org/pidu/git-timemachine/archive/$_gitrev.tar.gz"
+builddir="$srcdir/$_pkgreal"
+options="!check" # no tests provided
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+8e09f181b85249157e3c6bbce561076f02075c08c2a06a30cc60dfc23ad3448feba3ae1ca56d35dbf0c95c63ffe10f2fd179367747db8d7ef61858d610907922 emacs-git-timemachine-5ed73c3831cf6da10ba941e6abba708a86853e8f.tar.gz
+"
diff --git a/testing/emacs-hackernews/APKBUILD b/testing/emacs-hackernews/APKBUILD
new file mode 100644
index 00000000000..db5bbd3f38a
--- /dev/null
+++ b/testing/emacs-hackernews/APKBUILD
@@ -0,0 +1,35 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-hackernews
+pkgver=0.7.0
+pkgrel=0
+_pkgreal=hackernews
+pkgdesc="Hacker News client using Firebase API"
+url="https://github.com/clarete/hackernews.el"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="cmd:emacs"
+makedepends="emacs-nox"
+source="https://github.com/clarete/hackernews.el/archive/v$pkgver/emacs-hackernews-$pkgver.tar.gz"
+builddir="$srcdir/hackernews.el-$pkgver"
+options="!check" # no tests provided
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -eval '(setq byte-compile-error-on-warn t)' \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+1de6075de0ed841b6c617e0016ab7e37619a7360676aba01e1c8a7a6e401dc600298c66a9c9da907af0c510d09c74f6fc4f49fdf9e400e9bdbb42cc3f853cdc8 emacs-hackernews-0.7.0.tar.gz
+"
diff --git a/testing/emacs-helm/APKBUILD b/testing/emacs-helm/APKBUILD
new file mode 100644
index 00000000000..a622d7403af
--- /dev/null
+++ b/testing/emacs-helm/APKBUILD
@@ -0,0 +1,43 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-helm
+pkgver=3.9.7_git20240329
+_gitrev=5632e1eb9a11e9df149dee23b2fe469dd7413739
+pkgrel=0
+_pkgreal=helm
+pkgdesc="Emacs incremental completion and selection narrowing framework"
+url="https://github.com/emacs-helm/helm"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="
+ cmd:emacs
+ emacs-async
+ emacs-popup
+ "
+makedepends="emacs-nox"
+source="https://github.com/emacs-helm/helm/archive/$_gitrev/emacs-helm-$_gitrev.tar.gz
+ remove-autoload-check.patch
+ "
+builddir="$srcdir/$_pkgreal-$_gitrev"
+options="!check" # no tests provided
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+package() {
+ install -Dvm755 emacs-helm.sh "$pkgdir"/usr/bin/emacs-helm
+ install -Dvm644 ./*.el ./*.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/$_pkgreal/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp/$_pkgreal
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-autoloads.el\")"
+}
+
+sha512sums="
+c6a11ca1dd4774e138be904b35127d6d83e840fcbecc8020a7251f5f6810729de0b566ed8f266ee9db602eb4297206cbc7a6d5a114db49c2b6ccbb4410c72d4a emacs-helm-5632e1eb9a11e9df149dee23b2fe469dd7413739.tar.gz
+88b7e5bd620072e6e87d8f1eb335fa2fb5f1df5c3783b00607b5f5111fb3f937c36076c05c075e2276e368eba9f8e8d11cad8b1de5d05e1bab00ef6f766f7c61 remove-autoload-check.patch
+"
diff --git a/testing/emacs-helm/remove-autoload-check.patch b/testing/emacs-helm/remove-autoload-check.patch
new file mode 100644
index 00000000000..1ea821b5747
--- /dev/null
+++ b/testing/emacs-helm/remove-autoload-check.patch
@@ -0,0 +1,26 @@
+Patch-Source: https://gitweb.gentoo.org/repo/gentoo.git/tree/app-emacs/helm/files/helm-3.8.8-no-autoload-check.patch
+--
+https://bugs.gentoo.org/800177
+
+--- a/emacs-helm.sh
++++ b/emacs-helm.sh
+@@ -137,19 +137,6 @@ LOAD_PATH=$($EMACS -q -batch --eval "(prin1 load-path)")
+
+ cd "${0%/*}" || exit 1
+
+-# Check if autoload file exists.
+-# It may be in a different directory if emacs-helm.sh is a symlink.
+-TRUENAME=$(find "${0%/*}" -path "$0" -printf "%l")
+-if [ -n "$TRUENAME" ]; then
+- AUTO_FILE="${TRUENAME%/*}/helm-autoloads.el"
+-else
+- AUTO_FILE="helm-autoloads.el"
+-fi
+-if [ ! -e "$AUTO_FILE" ]; then
+- echo No autoloads found, please run make first to generate autoload file
+- exit 1
+-fi
+-
+
+ cat > $CONF_FILE <<EOF
+ (setq initial-scratch-message (concat initial-scratch-message
diff --git a/testing/emacs-hnreader/APKBUILD b/testing/emacs-hnreader/APKBUILD
new file mode 100644
index 00000000000..30277bf1a01
--- /dev/null
+++ b/testing/emacs-hnreader/APKBUILD
@@ -0,0 +1,48 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-hnreader
+pkgver=0_git20221116
+_gitrev=8444e177035e236e991f9ea73074c053a45426ad
+pkgrel=0
+_pkgreal=hnreader
+pkgdesc="Read Hacker News in Org-mode"
+url="https://github.com/thanhvg/emacs-hnreader"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="
+ cmd:emacs
+ emacs-promise
+ emacs-request
+ "
+makedepends="emacs-nox"
+checkdepends="
+ emacs-ert-async
+ emacs-f
+ "
+source="https://github.com/thanhvg/emacs-hnreader/archive/$_gitrev/emacs-hnreader-$_gitrev.tar.gz"
+builddir="$srcdir/$pkgname-$_gitrev"
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+check() {
+ emacs -batch -q -no-site-file -L . -L test \
+ -l test-helper -l emacs-hnreader-test \
+ -f ert-run-tests-batch-and-exit
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+da37a70159ca44ee067dbbf15e068e556f56f693e74826e8b452ea1c177d2c164995a9a499e7b736006d62795b890d68a09a72cf4231e784dda575221b11278f emacs-hnreader-8444e177035e236e991f9ea73074c053a45426ad.tar.gz
+"
diff --git a/testing/emacs-howdoyou/APKBUILD b/testing/emacs-howdoyou/APKBUILD
new file mode 100644
index 00000000000..ce80138311e
--- /dev/null
+++ b/testing/emacs-howdoyou/APKBUILD
@@ -0,0 +1,53 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-howdoyou
+pkgver=0_git20230927
+_gitrev=10f31a10803c3fd4c304f3a4495d57a0b9cf9ab5
+pkgrel=0
+_pkgreal=howdoyou
+pkgdesc="Search StackOverflow & display results in an Org-mode buffer"
+url="https://github.com/thanhvg/emacs-howdoyou"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="
+ cmd:emacs
+ emacs-promise
+ emacs-request
+ "
+makedepends="emacs-nox"
+checkdepends="
+ cmd:curl
+ emacs-ert-async
+ emacs-f
+ "
+source="https://github.com/thanhvg/emacs-howdoyou/archive/$_gitrev/emacs-howdoyou-$_gitrev.tar.gz
+ dont-test-against-google.patch
+ "
+builddir="$srcdir/$pkgname-$_gitrev"
+options="net" # test visits StackOverflow and verifies that it can parse result
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+check() {
+ emacs -batch -q -no-site-file -L . -L test \
+ -l test-helper -l howdoyou-test \
+ -f ert-run-tests-batch-and-exit
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+e5b763e0078eb53e1f21434df037ae7f9b56a5e88ba157ac147056c2af3653b229ebceee88153e98e84699dae60366de4c8d64e68f74100c3ce04038f282d91b emacs-howdoyou-10f31a10803c3fd4c304f3a4495d57a0b9cf9ab5.tar.gz
+c5eb2d7d87b865fae34c203397cb630060db0bd8bb5da553c2241d7f896c5685fe9117bb4002ab5700980b584924ee1c22c87a458833c6b4ac71a8534f2367f5 dont-test-against-google.patch
+"
diff --git a/testing/emacs-howdoyou/dont-test-against-google.patch b/testing/emacs-howdoyou/dont-test-against-google.patch
new file mode 100644
index 00000000000..37b6ae2fb40
--- /dev/null
+++ b/testing/emacs-howdoyou/dont-test-against-google.patch
@@ -0,0 +1,23 @@
+Google will sometimes ask for Captcha verification, causing the tests to fail
+
+
+--- a/test/howdoyou-test.el
++++ b/test/howdoyou-test.el
+@@ -17,7 +17,7 @@
+ (ert-deftest-async test/promise-dom (done)
+ (promise-done
+ (promise-chain
+- (howdoyou--promise-dom "https://www.google.com")
++ (howdoyou--promise-dom "https://alpinelinux.org")
+ (then (lambda (result)
+ (should (listp result))
+ ;; (message "%s" result)
+@@ -29,7 +29,7 @@
+ (ert-deftest-async test/promise-curl-dom (done)
+ (promise-done
+ (promise-chain
+- (howdoyou--curl-promise-dom "https://www.google.com")
++ (howdoyou--curl-promise-dom "https://alpinelinux.org")
+ (then (lambda (result)
+ (should (listp result))
+ ;; (message "%s" result)
diff --git a/testing/emacs-hydra/APKBUILD b/testing/emacs-hydra/APKBUILD
new file mode 100644
index 00000000000..901dc950085
--- /dev/null
+++ b/testing/emacs-hydra/APKBUILD
@@ -0,0 +1,46 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-hydra
+pkgver=0.15.0_git20220910
+_gitrev=317e1de33086637579a7aeb60f77ed0405bf359b
+pkgrel=0
+_pkgreal=hydra
+pkgdesc="Make Emacs bindings that stick around"
+url="https://github.com/abo-abo/hydra"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="cmd:emacs"
+makedepends="emacs-nox"
+source="https://github.com/abo-abo/hydra/archive/$_gitrev/emacs-hydra-$_gitrev.tar.gz"
+builddir="$srcdir/$_pkgreal-$_gitrev"
+
+prepare() {
+ default_prepare
+
+ mkdir -v test
+ mv -v hydra-test.el test/
+}
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+check() {
+ emacs -batch -q -no-site-file -L . -L test \
+ -l hydra-test -f ert-run-tests-batch-and-exit
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/$_pkgreal/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp/$_pkgreal
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+18323e2b39ea99ee411a689f63c92827919ef66aa49e13bc6a6393af5b29eac81d146397d2ce12a55c9e533f562472e3931a6c4883e183bcb162d3e2d38798cb emacs-hydra-317e1de33086637579a7aeb60f77ed0405bf359b.tar.gz
+"
diff --git a/testing/emacs-iter2/APKBUILD b/testing/emacs-iter2/APKBUILD
new file mode 100644
index 00000000000..3b926f8c75d
--- /dev/null
+++ b/testing/emacs-iter2/APKBUILD
@@ -0,0 +1,39 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-iter2
+pkgver=1.4
+pkgrel=0
+_pkgreal=iter2
+pkgdesc="Reimplementation of Elisp generators"
+url="https://github.com/doublep/iter2"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="cmd:emacs"
+makedepends="emacs-nox"
+source="https://github.com/doublep/iter2/archive/$pkgver/emacs-iter2-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -eval '(setq byte-compile-error-on-warn t)' \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+check() {
+ emacs -batch -q -no-site-file -L . -L test \
+ -l iter2-test -f ert-run-tests-batch-and-exit
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+3fe6827388e61f6ce39aded0fc844d8aeea6bcef098ae226460632065bcaf33758cc5bfdab2c0eabd3c5d77c5fea93db714d375f1aee7daecc3a623789ed639c emacs-iter2-1.4.tar.gz
+"
diff --git a/testing/emacs-jabber/APKBUILD b/testing/emacs-jabber/APKBUILD
new file mode 100644
index 00000000000..36f85cf2f7c
--- /dev/null
+++ b/testing/emacs-jabber/APKBUILD
@@ -0,0 +1,59 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-jabber
+pkgver=0_git20240306
+_gitrev=633cb73633143ec093c291af94b008f456037e8b
+pkgrel=0
+_pkgreal=jabber
+pkgdesc="Jabber/XMPP client for Emacs"
+url="https://codeberg.org/emacs-jabber/emacs-jabber"
+arch="noarch"
+license="GPL-2.0-or-later"
+depends="
+ cmd:emacs
+ emacs-fsm
+ emacs-srv
+ "
+makedepends="emacs-nox"
+source="$pkgname-$_gitrev.tar.gz::https://codeberg.org/emacs-jabber/emacs-jabber/archive/$_gitrev.tar.gz"
+builddir="$srcdir/$pkgname/lisp"
+
+prepare() {
+ default_prepare
+ cp -v ../jabber-ourversion.el .
+}
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -eval '(setq print-length nil load-prefer-newer t)' \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+check() {
+ local tests="load-all.el skip-tag-forward.el history.el
+ jabberd.el nick-change-fail.el
+ caps-hash.el parse-next-stanza.el
+ "
+
+ export top_builddir="$builddir"
+ local test; for test in $tests; do
+ msg "Running tests from $test"
+
+ emacs -batch -q -no-site-file -L . \
+ -L ../tests -l "../tests/$test"
+ done
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/$_pkgreal/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp/$_pkgreal
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+8891c9707c5cc463a4a1dcf2355c4122a4df82b0609bb8b8734588873f72fb571210050c2824fef7176ab79c107c5549e6ef58bfe57f59f7aa1faae774073254 emacs-jabber-633cb73633143ec093c291af94b008f456037e8b.tar.gz
+"
diff --git a/testing/emacs-lab/APKBUILD b/testing/emacs-lab/APKBUILD
new file mode 100644
index 00000000000..182ba11ff53
--- /dev/null
+++ b/testing/emacs-lab/APKBUILD
@@ -0,0 +1,45 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-lab
+pkgver=2.0.0
+pkgrel=0
+_pkgreal=lab
+pkgdesc="Emacs interface for GitLab"
+url="https://github.com/isamert/lab.el"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="
+ cmd:curl
+ cmd:emacs
+ emacs-async-await
+ emacs-compat
+ emacs-f
+ emacs-memoize
+ emacs-promise
+ emacs-request
+ emacs-s
+ "
+makedepends="emacs-nox"
+source="https://github.com/isamert/lab.el/archive/v$pkgver/emacs-lab-$pkgver.tar.gz"
+builddir="$srcdir/lab.el-$pkgver"
+options="!check" # no tests provided
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -eval '(setq byte-compile-error-on-warn t)' \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+0835b57ddc74f1b066a36082cc89451b76637f6b1d4aba3313213baad45a5a77d3ff1a3cf595b2376a99b45d41c4d5aa94fe80a45e6c9157a5a558a68d06925d emacs-lab-2.0.0.tar.gz
+"
diff --git a/testing/emacs-liberime/APKBUILD b/testing/emacs-liberime/APKBUILD
new file mode 100644
index 00000000000..c1b3d13b3f9
--- /dev/null
+++ b/testing/emacs-liberime/APKBUILD
@@ -0,0 +1,43 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-liberime
+pkgver=0.0.6_git20230113
+_gitrev=cc9eb9812fd6f68e78ed6a0c0a85da7a18765753
+pkgrel=0
+_pkgreal=liberime
+pkgdesc="Emacs librime bindings"
+url="https://github.com/merrickluo/liberime"
+arch="all"
+license="GPL-3.0-or-later"
+depends="cmd:emacs"
+makedepends="emacs-nox librime-dev"
+checkdepends="emacs-pyim rime-plum-data"
+source="https://github.com/merrickluo/liberime/archive/$_gitrev/emacs-liberime-$_gitrev.tar.gz"
+builddir="$srcdir/$_pkgreal-$_gitrev"
+options="!check" # opens an interactive Emacs window
+
+build() {
+ make
+
+ emacs -batch -q -no-site-file -L . \
+ -f batch-byte-compile \
+ liberime.el
+}
+
+check() {
+ mkdir -p "$srcdir"/.emacs.d/test/rime
+ make HOME="$srcdir" test
+}
+
+package() {
+ install -Dvm644 liberime.el* src/liberime-core.so \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+1f3d2e64e96c1a750ea685ba03e31b920888e2ebcd3ae9c1859771f22de4e2e270768e96fe10d06fb76d6f55ece271063e7832ce3aade6c348b9ddd17a0154f5 emacs-liberime-cc9eb9812fd6f68e78ed6a0c0a85da7a18765753.tar.gz
+"
diff --git a/testing/emacs-lingva/APKBUILD b/testing/emacs-lingva/APKBUILD
new file mode 100644
index 00000000000..cfedb36f32c
--- /dev/null
+++ b/testing/emacs-lingva/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-lingva
+pkgver=0_git20230801
+_gitrev=2667e33cf3524d07cf437dac9380371890efcb15
+pkgrel=0
+_pkgreal=lingva
+pkgdesc="Basic interface to Lingva (Google Translate alternative front-end)"
+url="https://codeberg.org/martianh/lingva.el"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="cmd:emacs"
+makedepends="emacs-nox"
+source="$pkgname-$_gitrev.tar.gz::https://codeberg.org/martianh/lingva.el/archive/$_gitrev.tar.gz"
+builddir="$srcdir/lingva.el"
+options="!check" # no tests provided
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -eval '(setq byte-compile-error-on-warn t)' \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+362ecc09e5eadbfcab07af114b7d9e410315284a69b7e37d342575ec6653ace351758cdb337c9d22b05c9760ebfc0fa9762f76c3f61e210958719ca51c125477 emacs-lingva-2667e33cf3524d07cf437dac9380371890efcb15.tar.gz
+"
diff --git a/testing/emacs-magit/APKBUILD b/testing/emacs-magit/APKBUILD
new file mode 100644
index 00000000000..12976ccf38c
--- /dev/null
+++ b/testing/emacs-magit/APKBUILD
@@ -0,0 +1,71 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-magit
+pkgver=3.3.0
+pkgrel=0
+_pkgreal=magit
+pkgdesc="Emacs interface for Git"
+url="https://magit.vc/"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="
+ cmd:emacs
+ cmd:git
+ emacs-dash
+ emacs-git-commit
+ emacs-magit-section
+ emacs-with-editor
+ "
+makedepends="emacs-nox"
+subpackages="
+ emacs-git-commit
+ emacs-magit-section
+ "
+source="https://github.com/magit/magit/releases/download/v$pkgver/magit-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver/lisp"
+options="!check" # release tarball lacks tests
+
+prepare() {
+ default_prepare
+
+ # experimental package requiring unpackaged "libegit2"
+ rm -v magit-libgit.el
+}
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+check() {
+ HOME="$srcdir" emacs -batch -q -no-site-file -L . -L ../t \
+ -l magit-tests -f ert-run-tests-batch-and-exit
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/magit/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp/magit
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+commit() {
+ pkgdesc="Major mode for editing Git commit messages"
+ depends="cmd:emacs emacs-dash emacs-with-editor"
+
+ amove usr/share/emacs/site-lisp/magit/git-commit.el*
+}
+
+section() {
+ pkgdesc="Collapsible sections like in Magit"
+ depends="cmd:emacs emacs-dash"
+
+ amove usr/share/emacs/site-lisp/magit/magit-section.el*
+}
+
+sha512sums="
+81259a5e7066af31b99b3935fd48c9a76e5001f2cb0fa16c2390c05a464bce13a770c255a44637ba85e6449beeb5af6cd925bca96a6c578da292376c2ae37d76 magit-3.3.0.tar.gz
+"
diff --git a/testing/emacs-memoize/APKBUILD b/testing/emacs-memoize/APKBUILD
new file mode 100644
index 00000000000..79a7599fee8
--- /dev/null
+++ b/testing/emacs-memoize/APKBUILD
@@ -0,0 +1,40 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-memoize
+pkgver=1.1_git20200103
+_gitrev=51b075935ca7070f62fae1d69fe0ff7d8fa56fdd
+pkgrel=0
+_pkgreal=memoize
+pkgdesc="Elisp memoization functions"
+url="https://github.com/skeeto/emacs-memoize"
+arch="noarch"
+license="Unlicense"
+depends="cmd:emacs"
+makedepends="emacs-nox"
+source="https://github.com/skeeto/emacs-memoize/archive/$_gitrev/emacs-memoize-$_gitrev.tar.gz"
+builddir="$srcdir/$pkgname-$_gitrev"
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -eval '(setq byte-compile-error-on-warn t)' \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+check() {
+ emacs -batch -q -no-site-file -L . \
+ -l memoize-test -f ert-run-tests-batch-and-exit
+}
+
+package() {
+ install -Dvm644 memoize.el memoize.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+c3d40fa6c58d81a2d68dc22adb05ac3f1aa737099467705a64abf2ac98c2fa86b26552a6ccc61697802864ad2cd8d422715620e29d30ce50cf976b2f029930ae emacs-memoize-51b075935ca7070f62fae1d69fe0ff7d8fa56fdd.tar.gz
+"
diff --git a/testing/emacs-persist/APKBUILD b/testing/emacs-persist/APKBUILD
new file mode 100644
index 00000000000..0a3e3b0f245
--- /dev/null
+++ b/testing/emacs-persist/APKBUILD
@@ -0,0 +1,40 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-persist
+pkgver=0.6_git20240114
+_gitrev=f569906232c3812f5f5d934130edfefbc9165d7f
+pkgrel=0
+_pkgreal=persist
+pkgdesc="Persist Variables between Emacs Sessions"
+url="https://elpa.gnu.org/packages/persist.html"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="cmd:emacs"
+makedepends="emacs-nox"
+source="https://github.com/emacsmirror/persist/archive/$_gitrev/emacs-persist-$_gitrev.tar.gz"
+builddir="$srcdir/$_pkgreal-$_gitrev"
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -eval '(setq byte-compile-error-on-warn t)' \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+check() {
+ emacs -batch -q -no-site-file -L . -L test \
+ -l persist-tests -f ert-run-tests-batch-and-exit
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+0a33620a5bdf5bb720cd78202e553cc58626a5c01e48a215c1ed06b2a37343973aa39675de1e92885548bbcff111f8ebb5bc89baa377b5981901a74ee702c914 emacs-persist-f569906232c3812f5f5d934130edfefbc9165d7f.tar.gz
+"
diff --git a/testing/emacs-plz-see/APKBUILD b/testing/emacs-plz-see/APKBUILD
new file mode 100644
index 00000000000..39bbb027ca3
--- /dev/null
+++ b/testing/emacs-plz-see/APKBUILD
@@ -0,0 +1,39 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-plz-see
+pkgver=0_git20231101
+_gitrev=c55e6aa2971caad582df1d449e0f57604250cae1
+pkgrel=0
+_pkgreal=plz-see
+pkgdesc="Interactive HTTP client based on Emacs-plz"
+url="https://github.com/astoff/plz-see.el"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="
+ cmd:emacs
+ emacs-plz
+ "
+makedepends="emacs-nox"
+source="https://github.com/astoff/plz-see.el/archive/$_gitrev/emacs-plz-see-$_gitrev.tar.gz"
+builddir="$srcdir/plz-see.el-$_gitrev"
+options="!check" # no tests provided
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -eval '(setq byte-compile-error-on-warn t)' \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/plz/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp/plz
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+21344c9771e1a79a0dc7faf8bdcb29a4a8cfb97ef34105cf4752e69a80b6c18a1d975c2e3ad70124132156e2282a10d100fb506c8bf084d80afffc9f018a8584 emacs-plz-see-c55e6aa2971caad582df1d449e0f57604250cae1.tar.gz
+"
diff --git a/testing/emacs-plz/APKBUILD b/testing/emacs-plz/APKBUILD
new file mode 100644
index 00000000000..8bd5507de13
--- /dev/null
+++ b/testing/emacs-plz/APKBUILD
@@ -0,0 +1,47 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-plz
+pkgver=0.7.2
+pkgrel=0
+_pkgreal=plz
+pkgdesc="HTTP library with curl as backend"
+url="https://github.com/alphapapa/plz.el"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="cmd:curl cmd:emacs"
+makedepends="emacs-nox"
+source="https://github.com/alphapapa/plz.el/archive/v$pkgver/emacs-plz-$pkgver.tar.gz"
+builddir="$srcdir/plz.el-$pkgver"
+options="net" # tests access httpbin.org
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -eval '(setq byte-compile-error-on-warn t)' \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+check() {
+ # Tests may fail due to network issues, try to repeat 3 times.
+ local i; for i in $(seq 0 3); do
+ [ $i -eq 0 ] || msg "Retrying ($i/3)..."
+ emacs -batch -q -no-site-file -L . -L tests -l test-plz \
+ -eval '(setq plz-test-uri-prefix "https://httpbin.org")' \
+ -f ert-run-tests-batch-and-exit && return 0
+ sleep 1
+ done
+ return 1
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/plz/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp/plz
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+01951bbb0e59d6196338a806b4bab030538c411d185acf5462bc1eb4d3130b1da5d78a436e84163dd8167b3705edb6dcafdeef8d4611973521566d34f2ca5654 emacs-plz-0.7.2.tar.gz
+"
diff --git a/testing/emacs-popup/APKBUILD b/testing/emacs-popup/APKBUILD
new file mode 100644
index 00000000000..617c200493a
--- /dev/null
+++ b/testing/emacs-popup/APKBUILD
@@ -0,0 +1,39 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-popup
+pkgver=0.5.9
+pkgrel=0
+_pkgreal=popup
+pkgdesc="Visual popup user interface library"
+url="https://github.com/auto-complete/popup-el"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="cmd:emacs"
+makedepends="emacs-nox"
+source="https://github.com/auto-complete/popup-el/archive/v$pkgver/emacs-popup-$pkgver.tar.gz"
+builddir="$srcdir/popup-el-$pkgver"
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -eval '(setq byte-compile-error-on-warn t)' \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+check() {
+ emacs -batch -q -no-site-file -L . \
+ -l tests/run-test.el
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+1a8c5ecb56e695f7a37915063d4e105cee92f8ae5a21e2e39ffe556dfdcf03c056b69f5e36c6ff3643713a914bb531adabcfbc525c531821e1520f7b3e93dc0b emacs-popup-0.5.9.tar.gz
+"
diff --git a/testing/emacs-posframe/APKBUILD b/testing/emacs-posframe/APKBUILD
new file mode 100644
index 00000000000..a634c2dc414
--- /dev/null
+++ b/testing/emacs-posframe/APKBUILD
@@ -0,0 +1,34 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-posframe
+pkgver=1.4.2
+pkgrel=0
+_pkgreal=posframe
+pkgdesc="Pop up a frame inside Emacs"
+url="https://github.com/tumashu/posframe"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="cmd:emacs"
+makedepends="emacs-nox"
+source="https://github.com/tumashu/posframe/archive/v$pkgver/emacs-posframe-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+options="!check" # no tests provided
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+package() {
+ install -Dvm644 posframe.el posframe.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+e11109d3a85ccaca53995473940aa0a4bd80d333b3001865ba2c9d2b4af647d71b279a70e3e086c14c853896a8c2d74eb54cbc4e129a1face9f186c126c41f7f emacs-posframe-1.4.2.tar.gz
+"
diff --git a/testing/emacs-powerline/APKBUILD b/testing/emacs-powerline/APKBUILD
new file mode 100644
index 00000000000..283d396dfb8
--- /dev/null
+++ b/testing/emacs-powerline/APKBUILD
@@ -0,0 +1,35 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-powerline
+pkgver=2.4_git20221110
+_gitrev=c35c35bdf5ce2d992882c1f06f0f078058870d4a
+pkgrel=0
+_pkgreal=powerline
+pkgdesc="Library for customizing the mode-line"
+url="https://github.com/milkypostman/powerline"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="cmd:emacs"
+makedepends="emacs-nox"
+source="https://github.com/milkypostman/powerline/archive/$_gitrev/emacs-powerline-$_gitrev.tar.gz"
+builddir="$srcdir/$_pkgreal-$_gitrev"
+options="!check" # no tests provided
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/$_pkgreal/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp/$_pkgreal
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+be0eedd1b79e37b80f0520706af11b36d0775aced51f08239d240fc19c1c54124bc736009cb2eb1332b9a9a064221885dcaebfac5595211afe9939409256d92b emacs-powerline-c35c35bdf5ce2d992882c1f06f0f078058870d4a.tar.gz
+"
diff --git a/testing/emacs-promise/APKBUILD b/testing/emacs-promise/APKBUILD
new file mode 100644
index 00000000000..267fcf27eff
--- /dev/null
+++ b/testing/emacs-promise/APKBUILD
@@ -0,0 +1,41 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-promise
+pkgver=1.1_git20210307
+_gitrev=cec51feb5f957e8febe6325335cf57dc2db6be30
+pkgrel=0
+_pkgreal=promise
+pkgdesc="Simple implementation of Promises/A+"
+url="https://github.com/chuntaro/emacs-promise"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="cmd:emacs"
+makedepends="emacs-nox"
+checkdepends="emacs-ert-async"
+source="https://github.com/chuntaro/emacs-promise/archive/$_gitrev/emacs-promise-$_gitrev.tar.gz"
+builddir="$srcdir/$pkgname-$_gitrev"
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+check() {
+ emacs -batch -q -no-site-file -L . -L test \
+ -l ert-async -l promise -l emacs-promise-test \
+ -f ert-run-tests-batch-and-exit
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/$_pkgreal/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp/$_pkgreal
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+36311aee3259960b4ed5b8dabe91c31ebab9aec1ad4b517356cb50014f130c850bfeae878d7b0ac17a92ad1122e90d784f496dd7e395c581ea43cb50d4f3663f emacs-promise-cec51feb5f957e8febe6325335cf57dc2db6be30.tar.gz
+"
diff --git a/testing/emacs-pyim-basedict/APKBUILD b/testing/emacs-pyim-basedict/APKBUILD
new file mode 100644
index 00000000000..9a58b3532c6
--- /dev/null
+++ b/testing/emacs-pyim-basedict/APKBUILD
@@ -0,0 +1,34 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-pyim-basedict
+pkgver=0.5.3
+pkgrel=0
+_pkgreal=pyim-basedict
+pkgdesc="Default Pinyin dict for Emacs-pyim"
+url="https://github.com/tumashu/pyim-basedict"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="cmd:emacs"
+makedepends="emacs-nox emacs-pyim"
+source="https://github.com/tumashu/pyim-basedict/archive/v$pkgver/emacs-pyim-basedict-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+options="!check" # no tests provided
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc ./*.pyim \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/pyim/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp/pyim
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+453a4caab29195baac23160ee95116af7033852e8cd79fd9824e5efe94c6bc480709457817c388b68bdf1ac002e01297e8395abd517a0a17d121cc5705d392fe emacs-pyim-basedict-0.5.3.tar.gz
+"
diff --git a/testing/emacs-pyim-cangjiedict/APKBUILD b/testing/emacs-pyim-cangjiedict/APKBUILD
new file mode 100644
index 00000000000..41f613e8bea
--- /dev/null
+++ b/testing/emacs-pyim-cangjiedict/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-pyim-cangjiedict
+pkgver=0_git20210617
+_gitrev=d17e3d32a6480939b350a91a915ebe8e6efad819
+pkgrel=0
+_pkgreal=pyim-cangjiedict
+pkgdesc="Cangjie dicts for Emacs-pyim"
+url="https://github.com/con5tella/pyim-cangjiedict"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="cmd:emacs"
+makedepends="emacs-nox emacs-pyim"
+source="https://github.com/con5tella/pyim-cangjiedict/archive/$_gitrev/emacs-pyim-cangjiedict-$_gitrev.tar.gz"
+builddir="$srcdir/$_pkgreal-$_gitrev"
+options="!check" # no tests provided
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -eval '(setq byte-compile-error-on-warn t)' \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc ./*.pyim \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/pyim/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp/pyim
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+eed4416458f82f93ac8388046a4634bb719deafbe4a23cbe3f5e5c16546d62b3892a3cda6b0deca16889c403b4088dc196ba19e6cf60138315285fa01e5fe78d emacs-pyim-cangjiedict-d17e3d32a6480939b350a91a915ebe8e6efad819.tar.gz
+"
diff --git a/testing/emacs-pyim-smzmdict/APKBUILD b/testing/emacs-pyim-smzmdict/APKBUILD
new file mode 100644
index 00000000000..a76772881d9
--- /dev/null
+++ b/testing/emacs-pyim-smzmdict/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-pyim-smzmdict
+pkgver=0_git20210505
+_gitrev=b66c7c52cfd862b3fdace04f49c2af6c394232b4
+pkgrel=0
+_pkgreal=pyim-smzmdict
+pkgdesc="Sanma(triple) Zhengma dict for Emacs-pyim"
+url="https://github.com/con5tella/pyim-smzmdict"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="cmd:emacs"
+makedepends="emacs-nox emacs-pyim"
+source="https://github.com/con5tella/pyim-smzmdict/archive/$_gitrev/emacs-pyim-smzmdict-$_gitrev.tar.gz"
+builddir="$srcdir/$_pkgreal-$_gitrev"
+options="!check" # no tests provided
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -eval '(setq byte-compile-error-on-warn t)' \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc ./*.pyim \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/pyim/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp/pyim
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+64c1add9965fb773f54500802c2a7e73589934431e7f6942dcc054b2773f2490c1a56579a111a8dc4c3296775b97dc9dec201aef413402957f9b98446cd77f2d emacs-pyim-smzmdict-b66c7c52cfd862b3fdace04f49c2af6c394232b4.tar.gz
+"
diff --git a/testing/emacs-pyim-wbdict/APKBUILD b/testing/emacs-pyim-wbdict/APKBUILD
new file mode 100644
index 00000000000..3e5927e6cea
--- /dev/null
+++ b/testing/emacs-pyim-wbdict/APKBUILD
@@ -0,0 +1,35 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-pyim-wbdict
+pkgver=0.3.0
+pkgrel=0
+_pkgreal=pyim-wbdict
+pkgdesc="Wubi dicts for Emacs-pyim"
+url="https://github.com/tumashu/pyim-wbdict"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="cmd:emacs"
+makedepends="emacs-nox emacs-pyim"
+source="https://github.com/tumashu/pyim-wbdict/archive/$pkgver/emacs-pyim-wbdict-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+options="!check" # no tests provided
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -eval '(setq byte-compile-error-on-warn t)' \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc ./*.pyim \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/pyim/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp/pyim
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+5dc31ab05cefea833f3232853d6f4dddf1b0ff115969f4934093fa329f23c2edcb36176d3b3959c9632c3ee78138e3dfc8ca0a07edc03965c6a970158c7c8ba5 emacs-pyim-wbdict-0.3.0.tar.gz
+"
diff --git a/testing/emacs-pyim/APKBUILD b/testing/emacs-pyim/APKBUILD
new file mode 100644
index 00000000000..561407d49e0
--- /dev/null
+++ b/testing/emacs-pyim/APKBUILD
@@ -0,0 +1,46 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-pyim
+pkgver=5.3.3
+pkgrel=0
+_pkgreal=pyim
+pkgdesc="Chinese input method derived from Emacs-eim"
+url="https://github.com/tumashu/pyim"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="
+ cmd:emacs
+ emacs-async
+ emacs-posframe
+ emacs-xr
+ "
+makedepends="emacs-nox"
+checkdepends="emacs-pyim-basedict"
+options="!check" # circular dep with emacs-pyim-basedict
+source="https://github.com/tumashu/pyim/archive/v$pkgver/emacs-pyim-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -eval '(setq byte-compile-error-on-warn t)' \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+check() {
+ emacs -batch -q -no-site-file -L . \
+ -l tests/pyim-tests.el
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/pyim/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp/pyim
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+e66b2b11c53a0ee196b69760318f5bfb630a1cebd0cabc3a2c865db2aec484aa4e909e7b14f98e563f51ab3dbf2b7458bfea6790a170544503af80b90744d7b6 emacs-pyim-5.3.3.tar.gz
+"
diff --git a/testing/emacs-repology/APKBUILD b/testing/emacs-repology/APKBUILD
new file mode 100644
index 00000000000..ebcf0433a6c
--- /dev/null
+++ b/testing/emacs-repology/APKBUILD
@@ -0,0 +1,46 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-repology
+pkgver=1.2.4
+_gitrev=a6b41709525e60bdac807f153a3199003ee9d50f
+pkgrel=0
+_pkgreal=repology
+pkgdesc="Repology API access via Elisp"
+url="https://elpa.gnu.org/packages/repology.html"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="cmd:emacs"
+makedepends="emacs-nox"
+source="https://github.com/emacsmirror/repology/archive/$_gitrev/emacs-repology-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$_gitrev"
+
+prepare() {
+ default_prepare
+
+ mkdir -v test
+ mv -v repology-tests.el test/
+}
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+check() {
+ emacs -batch -q -no-site-file -L . -L test \
+ -l repology-tests -f ert-run-tests-batch-and-exit
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/$_pkgreal/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp/$_pkgreal
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+af23239b50859385c1692f4a05d885cba775672cbdd45582232ab3c155b8799f086586e15b6cc606635115283aa5675267016436a7bbf442b52e45f6aa571d40 emacs-repology-1.2.4.tar.gz
+"
diff --git a/testing/emacs-request/APKBUILD b/testing/emacs-request/APKBUILD
new file mode 100644
index 00000000000..457819fb699
--- /dev/null
+++ b/testing/emacs-request/APKBUILD
@@ -0,0 +1,57 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-request
+pkgver=0.3.2_git20230126
+_gitrev=01e338c335c07e4407239619e57361944a82cb8a
+pkgrel=0
+_pkgreal=request
+pkgdesc="Easy HTTP request library"
+url="https://github.com/tkf/emacs-request"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="cmd:emacs"
+makedepends="
+ emacs-deferred
+ emacs-nox
+ "
+checkdepends="
+ curl
+ py3-flask
+ py3-tornado
+ "
+options="!check" # fragile tests run a local HTTP server written in Python
+subpackages="$pkgname-deferred"
+source="https://github.com/tkf/emacs-request/archive/$_gitrev/emacs-request-$_gitrev.tar.gz"
+builddir="$srcdir/$pkgname-$_gitrev"
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -eval '(setq byte-compile-error-on-warn t)' \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+check() {
+ emacs -batch -q -no-site-file -L . -L tests \
+ -l test-request -f ert-run-tests-batch-and-exit
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+deferred() {
+ pkgdesc="$pkgdesc returning deferred object"
+ depends="$pkgname=$pkgver-r$pkgrel emacs-deferred"
+
+ amove usr/share/emacs/site-lisp/request-deferred.el*
+}
+
+sha512sums="
+6ba0e28278f02033173ef58942c4b85b69b3d530bf10ff903c872d37eceafec8b1c6b081cd8dec84e48a2a60b38b67ffae6ef8c881b22e67c6f9fbeacd583844 emacs-request-01e338c335c07e4407239619e57361944a82cb8a.tar.gz
+"
diff --git a/testing/emacs-rime/APKBUILD b/testing/emacs-rime/APKBUILD
new file mode 100644
index 00000000000..061f6555698
--- /dev/null
+++ b/testing/emacs-rime/APKBUILD
@@ -0,0 +1,47 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-rime
+pkgver=1.0.5_git20240130
+_gitrev=d8c0a99b0282d3e0aca53146789f6864181228e7
+pkgrel=0
+_pkgreal=rime
+pkgdesc="RIME in Emacs"
+url="https://github.com/DogLooksGood/emacs-rime"
+arch="all"
+license="GPL-3.0-or-later"
+depends="
+ cmd:emacs
+ emacs-dash
+ emacs-popup
+ emacs-posframe
+ "
+makedepends="emacs-nox librime-dev"
+checkdepends="rime-plum-data"
+source="https://github.com/DogLooksGood/emacs-rime/archive/$_gitrev/emacs-rime-$_gitrev.tar.gz"
+builddir="$srcdir/$pkgname-$_gitrev"
+options="!check" # opens an interactive Emacs window
+
+build() {
+ make lib
+
+ emacs -batch -q -no-site-file -L . \
+ -f batch-byte-compile \
+ rime*.el
+}
+
+check() {
+ make HOME="$srcdir" test
+}
+
+package() {
+ install -Dvm644 rime*.el* librime-emacs.so \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+d72e2e0fb72fec0cc1e2a5dff86480e1892c962799e258a12d5c2fe41d8a9d54226d0406ed30d19f111c099d22776691fe1c63a2a55320107f2c6fa9743a068f emacs-rime-d8c0a99b0282d3e0aca53146789f6864181228e7.tar.gz
+"
diff --git a/testing/emacs-s/APKBUILD b/testing/emacs-s/APKBUILD
new file mode 100644
index 00000000000..7ac8e9a256c
--- /dev/null
+++ b/testing/emacs-s/APKBUILD
@@ -0,0 +1,41 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-s
+pkgver=1.13.0_git20230414
+_gitrev=dda84d38fffdaf0c9b12837b504b402af910d01d
+pkgrel=0
+_pkgreal=s
+pkgdesc="Emacs string manipulation library"
+url="https://github.com/magnars/s.el"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="cmd:emacs"
+makedepends="emacs-nox"
+source="https://github.com/magnars/s.el/archive/$_gitrev/emacs-s-$_gitrev.tar.gz"
+builddir="$srcdir/s.el-$_gitrev"
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -eval '(setq byte-compile-error-on-warn t)' \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+check() {
+ emacs -batch -q -no-site-file -L . -L dev \
+ -l examples-to-tests -l examples \
+ -f ert-run-tests-batch-and-exit
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+07886d28975d6d96610d23eadb1be4fa1a1aba4c7f5414acc7ef77ba567dbee196373b83af4b22ec2377f39973d7c021f75096712bc3915b63cb99b7b79ef806 emacs-s-dda84d38fffdaf0c9b12837b504b402af910d01d.tar.gz
+"
diff --git a/testing/emacs-srv/APKBUILD b/testing/emacs-srv/APKBUILD
new file mode 100644
index 00000000000..5c3e4a5f090
--- /dev/null
+++ b/testing/emacs-srv/APKBUILD
@@ -0,0 +1,39 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-srv
+pkgver=0.2_git20180715
+_gitrev=714387d5a5cf34d8d8cd96bdb1f9cb8ded823ff7
+pkgrel=0
+_pkgreal=srv
+pkgdesc="Elisp library to perform SRV DNS requests"
+url="https://github.com/legoscia/srv.el"
+arch="noarch"
+license="GPL-2.0-or-later"
+depends="cmd:emacs"
+makedepends="emacs-nox"
+source="https://github.com/legoscia/srv.el/archive/$_gitrev/emacs-srv-$_gitrev.tar.gz
+ optional-dns.el.patch
+ "
+builddir="$srcdir/srv.el-$_gitrev"
+options="!check" # no tests provided
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -eval '(setq byte-compile-error-on-warn t)' \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+72dc537f5db29009b2cdffc5b35d330adaa6793bba29773f49d294280f32ad082456cf5482cf773512cb85ad00113a9780c40c36ad663558ec6d772c09d0e1bc emacs-srv-714387d5a5cf34d8d8cd96bdb1f9cb8ded823ff7.tar.gz
+818343236430be0c1959fd62d75b636a08977632a733b3ee0f6c060621576bedf7f9e323337929ddcfac3b6ff50e64567a4eb666da7bede3561349b5236d9e04 optional-dns.el.patch
+"
diff --git a/testing/emacs-srv/optional-dns.el.patch b/testing/emacs-srv/optional-dns.el.patch
new file mode 100644
index 00000000000..7d4487619dd
--- /dev/null
+++ b/testing/emacs-srv/optional-dns.el.patch
@@ -0,0 +1,38 @@
+--- a/srv.el
++++ b/srv.el
+@@ -1,4 +1,4 @@
+-;;; srv.el --- perform SRV DNS requests
++;;; srv.el --- perform SRV DNS requests -*- lexical-binding: t; -*-
+
+ ;; Copyright (C) 2005, 2007, 2018 Magnus Henoch
+
+@@ -44,7 +44,8 @@
+
+ ;;; Code:
+
+-(require 'dns)
++(require 'dns nil t)
++(eval-when-compile (require 'cl-lib))
+
+ ;;;###autoload
+ (defun srv-lookup (target)
+@@ -55,6 +56,10 @@
+ a hostname and PORT is a numeric port. The caller is supposed to
+ make connection attempts in the order given, starting from the beginning
+ of the list. The list is empty if no SRV records were found."
++ (if (not (boundp 'dns-query-types))
++ (error "No dns.el available")
++ (unless (assq 'SRV dns-query-types)
++ (error "dns.el doesn't support SRV lookups"))
+ (let* ((result (srv--dns-query target))
+ (answers (mapcar #'(lambda (a)
+ (cadr (assq 'data a)))
+@@ -101,7 +106,7 @@
+ ;; Extract hostnames and ports
+ (mapcar #'(lambda (a) (cons (cadr (assq 'target a))
+ (cadr (assq 'port a))))
+- (nreverse weighted-result)))))
++ (nreverse weighted-result))))))
+
+ (defun srv--dns-query (target)
+ "Perform DNS query for TARGET.
diff --git a/testing/emacs-svg-lib/APKBUILD b/testing/emacs-svg-lib/APKBUILD
new file mode 100644
index 00000000000..a8a631adc83
--- /dev/null
+++ b/testing/emacs-svg-lib/APKBUILD
@@ -0,0 +1,35 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-svg-lib
+pkgver=0_git20240219
+_gitrev=39621cd178dbf903414156d893c1eefe217b7c29
+pkgrel=0
+_pkgreal=svg-lib
+pkgdesc="SVG tags, progress bars & icons for Emacs"
+url="https://github.com/rougier/svg-lib"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="cmd:emacs"
+makedepends="emacs-nox"
+source="https://github.com/rougier/svg-lib/archive/$_gitrev/emacs-svg-lib-$_gitrev.tar.gz"
+builddir="$srcdir/$_pkgreal-$_gitrev"
+options="!check" # no tests provided
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -f batch-byte-compile \
+ svg-lib.el
+}
+
+package() {
+ install -Dvm644 svg-lib.el svg-lib.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+cb4f5df903c4c4132741d0c5779c98137c1e4396d13bb7aee28516c27f5f08020d7431dec0e9e9b96439044d69e8c7977a1c45a06e875e1fc1969dd457ced220 emacs-svg-lib-39621cd178dbf903414156d893c1eefe217b7c29.tar.gz
+"
diff --git a/testing/emacs-taxy-magit-section/APKBUILD b/testing/emacs-taxy-magit-section/APKBUILD
new file mode 100644
index 00000000000..927d7fa38a2
--- /dev/null
+++ b/testing/emacs-taxy-magit-section/APKBUILD
@@ -0,0 +1,38 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-taxy-magit-section
+pkgver=0.13
+pkgrel=0
+_pkgreal=taxy-magit-section
+pkgdesc="View Taxy structs in a Magit Section buffer"
+url="https://elpa.gnu.org/packages/taxy-magit-section.html"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="
+ cmd:emacs
+ emacs-magit-section
+ emacs-taxy
+ "
+makedepends="emacs-nox"
+source="https://github.com/alphapapa/taxy.el/archive/taxy-magit-section-$pkgver/emacs-taxy-magit-section-$pkgver.tar.gz"
+builddir="$srcdir/taxy.el-$_pkgreal-$pkgver"
+options="!check" # no tests provided
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/taxy/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp/taxy
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+625b485cbb079e60d215ed3c4bee5899756b00dec92baa5f0d2e94b7830c1375e0d65bce53f8051137b1e7870336da3e2f6faf216f44cf54e256d0cd312fd81d emacs-taxy-magit-section-0.13.tar.gz
+"
diff --git a/testing/emacs-taxy/APKBUILD b/testing/emacs-taxy/APKBUILD
new file mode 100644
index 00000000000..d7b2a9e4fb7
--- /dev/null
+++ b/testing/emacs-taxy/APKBUILD
@@ -0,0 +1,34 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-taxy
+pkgver=0.10.1
+pkgrel=0
+_pkgreal=taxy
+pkgdesc="Programmable taxonomical grouping for arbitrary objects"
+url="https://elpa.gnu.org/packages/taxy.html"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="cmd:emacs"
+makedepends="emacs-nox"
+source="https://github.com/alphapapa/taxy.el/archive/$pkgver/emacs-taxy-$pkgver.tar.gz"
+builddir="$srcdir/taxy.el-$pkgver"
+options="!check" # no tests provided
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/taxy/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp/taxy
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+7e30db74f8d6173777931c1d8ca3ffcd9063e70bc0a21ed0c123aaf61be1dd7f23f70d7a6d95e22036d245eebf6205baf54c371f798861995b2ca352230d69ab emacs-taxy-0.10.1.tar.gz
+"
diff --git a/testing/emacs-vterm/APKBUILD b/testing/emacs-vterm/APKBUILD
new file mode 100644
index 00000000000..3d9734df4eb
--- /dev/null
+++ b/testing/emacs-vterm/APKBUILD
@@ -0,0 +1,54 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-vterm
+pkgver=0_git20240324
+_gitrev=ae4ae1aef2fcae98a37aad83f2a6aeeaeacedd4f
+pkgrel=0
+_pkgreal=vterm
+pkgdesc="Fully-fledged terminal emulator based on libvterm"
+url="https://github.com/akermu/emacs-libvterm"
+arch="all"
+license="GPL-3.0-or-later"
+depends="cmd:emacs"
+makedepends="
+ cmake
+ emacs-nox
+ libvterm-dev
+ ninja
+ "
+source="https://github.com/akermu/emacs-libvterm/archive/$_gitrev/emacs-vterm-$_gitrev.tar.gz"
+builddir="$srcdir/emacs-libvterm-$_gitrev"
+options="!check" # tests just run the terminal emulator for you to try out
+
+prepare() {
+ default_prepare
+
+ # use system header file
+ rm -v emacs-module.h
+}
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DUSE_SYSTEM_LIBVTERM=ON \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=None
+ cmake --build build
+
+ emacs -batch -q -no-site-file -L . \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc vterm-module.so \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+8afa2f93aa922e143ff7366a99a66a32e7fec41bae8cb71522d1e6bbca5e0130886b60c560c294ceb655fd83a79e5ef35bd513793a3c2b4f6e71a262353ad8f9 emacs-vterm-ae4ae1aef2fcae98a37aad83f2a6aeeaeacedd4f.tar.gz
+"
diff --git a/testing/emacs-with-editor/APKBUILD b/testing/emacs-with-editor/APKBUILD
new file mode 100644
index 00000000000..53ad54ccb1f
--- /dev/null
+++ b/testing/emacs-with-editor/APKBUILD
@@ -0,0 +1,38 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-with-editor
+pkgver=3.3.2
+pkgrel=0
+_pkgreal=with-editor
+pkgdesc="Use Emacsclient as EDITOR of child processes"
+url="https://github.com/magit/with-editor"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="
+ cmd:emacs
+ emacs-compat
+ "
+makedepends="emacs-nox"
+source="https://github.com/magit/with-editor/archive/v$pkgver/emacs-with-editor-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver/lisp"
+options="!check" # no tests provided
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -eval '(setq byte-compile-error-on-warn t)' \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+package() {
+ install -Dvm644 ./*.el ./*.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+9ee8f36da6e1735aedf9fb0dcf6480de649e3e2daebedd5fc1edf8a9f528046c269cc0bbe182d4cf33180ab11c4af3a794c49cfd2aaff9ddbddcd51b9c1fec21 emacs-with-editor-3.3.2.tar.gz
+"
diff --git a/testing/emacs-xr/APKBUILD b/testing/emacs-xr/APKBUILD
new file mode 100644
index 00000000000..f1426a4233a
--- /dev/null
+++ b/testing/emacs-xr/APKBUILD
@@ -0,0 +1,40 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=emacs-xr
+pkgver=1.25
+_gitrev=b3310b138e7f8a9fe315dd435739f83935c5769d
+pkgrel=0
+_pkgreal=xr
+pkgdesc="Convert string regexp to rx form"
+url="https://github.com/mattiase/xr"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="cmd:emacs"
+makedepends="emacs-nox"
+source="https://github.com/mattiase/xr/archive/$_gitrev/emacs-xr-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$_gitrev"
+
+build() {
+ emacs -batch -q -no-site-file -L . \
+ -eval '(setq byte-compile-error-on-warn t)' \
+ -f batch-byte-compile \
+ ./*.el
+}
+
+check() {
+ emacs -batch -q -no-site-file -L . \
+ -l xr-test -f ert-run-tests-batch-and-exit
+}
+
+package() {
+ install -Dvm644 xr.el xr.elc \
+ -t "$pkgdir"/usr/share/emacs/site-lisp/
+
+ cd "$pkgdir"/usr/share/emacs/site-lisp
+ emacs -batch -q -no-site-file \
+ -eval "(loaddefs-generate \".\" \"$_pkgreal-loaddefs.el\")"
+}
+
+sha512sums="
+ef9d365bf26934fef290068178adbe7ac58b3cdf5cfbebe91c6ccf4f0a927bfd089c2408f962468e42c7a79548afdc91b17e9ad144bd4ccd41575c1e47ae0a96 emacs-xr-1.25.tar.gz
+"
diff --git a/testing/emacspeak-server-eflite/APKBUILD b/testing/emacspeak-server-eflite/APKBUILD
deleted file mode 100644
index 304b5d02a9c..00000000000
--- a/testing/emacspeak-server-eflite/APKBUILD
+++ /dev/null
@@ -1,48 +0,0 @@
-# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer: rubicon <rubicon@mailo.com>
-pkgname=emacspeak-server-eflite
-pkgver=0_git20200811
-_gitrev=5a76adf185371ec4e1523a3e860b10f9b9f5cfed
-pkgrel=0
-pkgdesc="CMU Flite (festival-lite) speech server for Emacspeak"
-url="https://github.com/mgorse/eflite"
-arch="all"
-license="GPL-2.0-or-later"
-makedepends="autoconf automake alsa-lib-dev flite-dev"
-install_if="emacspeak flite"
-options="!check"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/mgorse/eflite/archive/$_gitrev/eflite-$_gitrev.tar.gz"
-builddir="$srcdir/eflite-$_gitrev"
-
-prepare() {
- default_prepare
- autoupdate
- autoreconf -f
-}
-
-build() {
- ./configure --build="$CBUILD" \
- --target="$CTARGET" \
- --prefix="$pkgdir"/usr \
- --with-audio=alsa
- make
-}
-
-package() {
- local servdir="$pkgdir"/usr/share/emacs/site-lisp/emacspeak/servers
-
- make DESTDIR="$pkgdir" install
- mkdir -vp "$servdir"
- ln -sv /usr/bin/eflite "$servdir"/
-
- install -vDm644 AUTHORS COPYING CREDITS ChangeLog \
- INSTALL NEWS README eflite_test.txt \
- -t "$pkgdir"/usr/share/doc/"$pkgname"/
-
- install -vDm644 eflite.1 -t "$pkgdir"/usr/share/man/man1/
-}
-
-sha512sums="
-443bfbb15fafc91e1a44717ac8051b9450bf99535912aaf0a03cf67f9575c704b88e1926bec83ce267246648aa6e8f7dc09b4236874e83ac7026233366fd9c8a emacspeak-server-eflite-0_git20200811.tar.gz
-"
diff --git a/testing/emacspeak/APKBUILD b/testing/emacspeak/APKBUILD
deleted file mode 100644
index fa36d94fbb2..00000000000
--- a/testing/emacspeak/APKBUILD
+++ /dev/null
@@ -1,131 +0,0 @@
-# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer: rubicon <rubicon@mailo.com>
-pkgname=emacspeak
-pkgver=56.0
-pkgrel=0
-pkgdesc="Emacs audio desktop for eyes-free computing"
-url="http://emacspeak.sourceforge.net/"
-arch="all"
-license="GPL-2.0-or-later"
-depends="cmd:emacs $pkgname-sounds"
-depends_doc="texinfo-doc emacs-doc"
-makedepends="emacs-nox"
-options="!check"
-subpackages="
- $pkgname-sounds:ems_sounds:noarch
- $pkgname-doc
- $pkgname-misc:ems_misc:noarch
- "
-source="https://github.com/tvraman/emacspeak/releases/download/$pkgver/emacspeak-$pkgver.tar.bz2
- rebuild-pickup-c.patch
- fix-tclespeak-path.patch
- remote-espeak-server.patch
- directories.patch
- emacspeak
- "
-
-# espeak-ng is not available on s390x, so use the eflite speech server instead
-if [ "$CARCH" = "s390x" ]; then
- depends="$depends $pkgname-server-eflite"
-else
- depends="$depends $pkgname-server-espeak"
- makedepends="$makedepends espeak-ng-dev tcl-dev"
- subpackages="$subpackages $pkgname-server-espeak:ems_espeak"
-fi
-
-_emsdir=usr/share/emacs/site-lisp/"$pkgname"
-
-build() {
- make config
- make
- make -C etc/pickup-c
- if [ "$CARCH" != "s390x" ]; then
- make espeak
- fi
-}
-
-package() {
- local emspkgdir="$pkgdir"/"$_emsdir"
- local docdir="$pkgdir"/usr/share/doc/"$pkgname"
- local infodir="$pkgdir"/usr/share/info/"$pkgname"
-
- mkdir -vp "$(dirname $emspkgdir)"
- cp -a "$builddir" "$emspkgdir"
- cd "$emspkgdir"
-
- # clean unneeded files
- find . -type f \( \
- -name Makefile -o \
- -name .nosearch -o \
- -name '.*spell*' \) \
- -delete
- rm -vr servers/linux-outloud
- rm -v .*ignore README run \
- runq etc/pickup-c/pickup.o
-
- # fix ownerships and permissions
- chown -Rf root:root .
- chmod 755 .
-
- # move documentation
- mkdir -vp "$docdir"
- mv -v README.md etc/COPYRIGHT etc/NEWS* \
- etc/applications.* etc/tips.* \
- blog-archive attic-readme \
- lisp/elpa-readme \
- "$docdir"
- mkdir -vp "$(dirname $infodir)"
- rm -v info/tips.html
- mv -v info "$infodir"
-
- install -vDm 755 \
- "$srcdir"/emacspeak \
- -t "$pkgdir"/usr/bin
-}
-
-ems_espeak() {
- pkgdesc="$pkgdesc (espeak-ng speech server)"
- depends="tclx"
- install_if="emacspeak espeak-ng"
- local servdir="$_emsdir"/servers
-
- install -vDm 755 \
- "$pkgdir"/"$servdir"/native-espeak/tclespeak.so \
- -t "$subpkgdir"/usr/lib/"$pkgname"
-
- # move supported speech servers
- amove "$servdir"/tts-lib.tcl \
- "$servdir"/espeak \
- "$servdir"/ssh-espeak \
- "$servdir"/speech-server \
- "$servdir"/cloud-espeak \
- "$servdir"/cloud-notify
- # remove all others
- rm -vrf "$servdir"
-}
-
-ems_sounds() {
- pkgdesc="$pkgdesc (auditory icons / sound cues)"
- depends="$pkgname"
- amove "$_emsdir"/sounds
-}
-
-ems_misc() {
- pkgdesc="$pkgdesc (miscellaneous files & helper scripts)"
- depends="$pkgname"
- amove "$_emsdir"/bash-utils \
- "$_emsdir"/js \
- "$_emsdir"/nyxttalk \
- "$_emsdir"/xsl \
- "$_emsdir"/stumpwm \
- "$_emsdir"/media
-}
-
-sha512sums="
-9b18fada991b914ddd3ed30950e685c1c164434536c3dd119b9ed52db80e7e31b7399c72a584938bfb63daa7e1aa76a1f377d664cc1118ffa7f0a4cbdddf0818 emacspeak-56.0.tar.bz2
-c619611ee7ef4c59e6f797a010f126d870a7dff1dc6d4109c16519637b6d6ee733879e9fb6080103abe3bb33a8156846ee09a00749d26bfaa5400dd9dc4cc527 rebuild-pickup-c.patch
-abc9182d7d53b0df859c6d345ebc8a192e16aefbc318a85bcef903ee62586afdd0f11a75a90da62356c7fdbadcbc10ee268f5575d64f037971cf082db1d6b314 fix-tclespeak-path.patch
-e1557a40e15c364c03d760ea9711c7015b3f127f5e3c17fc7ca6eca4a08c3ef4e0f14cad1f3cc67b05af581f1477de7a773fc9741fab1218346082eefe0594ce remote-espeak-server.patch
-e9fe798589a685bdebae168b2d50d738562e152d50795b6d7533152e553a410ca64854ca8298d25fba29dc803793456a5d15457aa2299c246ed5e8529ed924c0 directories.patch
-a04a5f015a72c0ef453d3dd6b459fea4a339ad3a64276c66e7bd945b059e68f965a0fdf1d3f078b94bdf1345c5ca6a8bcb46419bb1b8ee56894ac63e0c25efb3 emacspeak
-"
diff --git a/testing/emacspeak/directories.patch b/testing/emacspeak/directories.patch
deleted file mode 100644
index b6063e1cf58..00000000000
--- a/testing/emacspeak/directories.patch
+++ /dev/null
@@ -1,79 +0,0 @@
---- a/lisp/emacspeak-preamble.el
-+++ b/lisp/emacspeak-preamble.el
-@@ -53,7 +53,7 @@
-
- ;;;###autoload
- (defvar emacspeak-directory
-- (expand-file-name "../" (file-name-directory load-file-name))
-+ (file-name-as-directory "/usr/share/emacs/site-lisp/emacspeak/")
- "emacspeak directory")
-
- ;;;###autoload
-@@ -83,15 +83,20 @@
-
- ;;;###autoload
- (defvar emacspeak-info-directory
-- (expand-file-name "info/" emacspeak-directory)
-+ (file-name-as-directory "/usr/share/info/emacspeak/")
- "Info")
-
- ;;;###autoload
-+(defvar emacspeak-doc-directory
-+ (file-name-as-directory "/usr/share/doc/emacspeak/")
-+ "Documentation")
-+
-+;;;###autoload
- (defvar emacspeak-user-directory (expand-file-name "~/.emacspeak/")
- "Resources.")
-
- (defvar emacspeak-readme-file
-- (expand-file-name "README" emacspeak-directory)
-+ (expand-file-name "README.md" emacspeak-doc-directory)
- "README.")
-
- ;;;###autoload
---- a/lisp/emacspeak-wizards.el
-+++ b/lisp/emacspeak-wizards.el
-@@ -120,12 +120,12 @@
- (defun emacspeak-view-emacspeak-news ()
- "Display emacspeak News for a given version."
- (interactive)
-- (cl-declare (special emacspeak-etc-directory))
-+ (cl-declare (special emacspeak-doc-directory))
- (find-file-read-only
- (expand-file-name
- (completing-read "News: "
-- (directory-files emacspeak-etc-directory nil "NEWS*"))
-- emacspeak-etc-directory))
-+ (directory-files emacspeak-doc-directory nil "NEWS*"))
-+ emacspeak-doc-directory))
- (emacspeak-auditory-icon 'news)
- (org-mode)
- (org-next-visible-heading 1)
-@@ -134,11 +134,11 @@
- (defun emacspeak-view-emacspeak-tips ()
- "Browse Emacspeak productivity tips."
- (interactive)
-- (cl-declare (special emacspeak-etc-directory))
-+ (cl-declare (special emacspeak-doc-directory))
- (emacspeak-xslt-without-xsl
- (browse-url
- (format "file:///%stips.html"
-- emacspeak-etc-directory)))
-+ emacspeak-doc-directory)))
- (emacspeak-auditory-icon 'help)
- (emacspeak-speak-mode-line))
-
---- a/lisp/emacspeak.el
-+++ b/lisp/emacspeak.el
-@@ -293,8 +293,8 @@
- (cl-declare (special emacspeak-packages-to-prepare))
- (setq-default line-move-visual nil)
- (setq use-dialog-box nil)
-- (when (boundp 'Info-directory-list)
-- (push emacspeak-info-directory Info-directory-list))
-+ (when (boundp 'Info-default-directory-list)
-+ (push emacspeak-info-directory Info-default-directory-list))
- (mapc
- #'(lambda (pair)
- (emacspeak-do-package-setup (cl-first pair) (cl-second pair)))
diff --git a/testing/emacspeak/emacspeak b/testing/emacspeak/emacspeak
deleted file mode 100755
index 5eadeb86581..00000000000
--- a/testing/emacspeak/emacspeak
+++ /dev/null
@@ -1,28 +0,0 @@
-#!/bin/sh
-
-EMS_DIR=/usr/share/emacs/site-lisp/emacspeak
-
-if [ -x "$DTK_PROGRAM" ]; then
- echo "Using $DTK_PROGRAM as Emacspeak speech server"
-elif [ -n "$DTK_PROGRAM" ] && [ -x "$EMS_DIR/servers/$DTK_PROGRAM" ]; then
- echo "Using $EMS_DIR/servers/$DTK_PROGRAM as Emacspeak speech server"
-elif [ -r /usr/lib/emacspeak/tclespeak.so ] && [ -x "$EMS_DIR"/servers/espeak ]; then
- DTK_PROGRAM="espeak"
-elif [ -x "$EMS_DIR"/servers/eflite ]; then
- DTK_PROGRAM="eflite"
-else
- echo "Emacspeak speech server is not installed."
- echo "Please install it with this command:"
- echo " apk add emacspeak-server-espeak"
- echo " OR"
- echo " apk add emacspeak-server-eflite"
- exit 1
-fi
-
-export DTK_PROGRAM
-
-if [ -r "$HOME"/.emacs.d/init.el ]; then
- exec emacs -q -l "$EMS_DIR"/lisp/emacspeak-setup.elc -l "$HOME"/.emacs.d/init.el "$@"
-else
- exec emacs -q -l "$EMS_DIR"/lisp/emacspeak-setup.elc "$@"
-fi
diff --git a/testing/emacspeak/fix-tclespeak-path.patch b/testing/emacspeak/fix-tclespeak-path.patch
deleted file mode 100644
index 3cf6617da5c..00000000000
--- a/testing/emacspeak/fix-tclespeak-path.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- a/servers/espeak
-+++ b/servers/espeak
-@@ -509,9 +509,7 @@
- if {[info exists server_p]} {
- set tts(input) sock0
- }
--set servers [file normalize [file dirname $argv0]]
--set tclTTS $servers/native-espeak
--load $tclTTS/tclespeak[info sharedlibextension]
-+load /usr/lib/emacspeak/tclespeak.so
- if {[file exists /proc/asound]} {
- set tts(play) "/usr/bin/aplay -q"
- } elseif {[info exists ::env(PULSE_SERVER)] && [file exists /usr/bin/paplay]} {
diff --git a/testing/emacspeak/rebuild-pickup-c.patch b/testing/emacspeak/rebuild-pickup-c.patch
deleted file mode 100644
index 3c626c9b29c..00000000000
--- a/testing/emacspeak/rebuild-pickup-c.patch
+++ /dev/null
@@ -1,12 +0,0 @@
---- a/etc/pickup-c/Makefile
-+++ b/etc/pickup-c/Makefile
-@@ -1,3 +1,8 @@
--pickup: pickup.c
-+CFLAGS +="-std=c11"
-+pickup : pickup.o
-+ gcc $(LDFLAGS) -o pickup pickup.o
-+pickup.o : pickup.c
-+ gcc $(CFLAGS) -c pickup.c
-+
- tidy: pickup.c
- clang-tidy -header-filter=.*-checks='*' -fix-errors pickup.c -- -std=c11
diff --git a/testing/emacspeak/remote-espeak-server.patch b/testing/emacspeak/remote-espeak-server.patch
deleted file mode 100644
index a9b9da95a03..00000000000
--- a/testing/emacspeak/remote-espeak-server.patch
+++ /dev/null
@@ -1,39 +0,0 @@
---- a/bash-utils/remote
-+++ b/bash-utils/remote
-@@ -39,10 +39,10 @@
-
- #setup tts, but dont ssh.
- #use when we need to restart server
--# hard-wire speech-server and outloud; $remote not used
-+# hard-wire speech-server and espeak; $remote not used
- function rtts () {
- SERVER=speech-server
-- ENGINE=outloud
-+ ENGINE=espeak
- $SDIR/$SERVER 2222 $SDIR/$ENGINE &
- #notification stream listens on 3333
- (export ALSA_DEFAULT="tts_mono_left"; $SDIR/$SERVER 3333 $SDIR/$ENGINE &)
---- a/etc/remote-tts-setup
-+++ b/etc/remote-tts-setup
-@@ -13,8 +13,8 @@
-
- SDIR=$EMACSPEAK/servers
- # Primary server listens on 2222
--$SDIR/speech-server 2222 $SDIR/outloud &
-+$SDIR/speech-server 2222 $SDIR/espeak &
- #notification stream listens on 3333
--(export ALSA_DEFAULT="tts_mono_left"; $SDIR/speech-server 3333 $SDIR/outloud &)
-+(export ALSA_DEFAULT="tts_mono_left"; $SDIR/speech-server 3333 $SDIR/espeak &)
- beep -f 800 -l 50
- ssh-agent ssh -R 2222:localhost:2222 -R 3333:localhost:3333 $REMOTE
---- a/servers/ssh-espeak
-+++ b/servers/ssh-espeak
-@@ -32,7 +32,7 @@
- set user [lindex $user_host 0]
- set host [lindex $user_host 1]
- if {$user == ""} {set user env($USER)}
--set tcl /usr/bin/tcl
-+set tcl /usr/bin/tclsh
- regsub {/ssh-} $argv0 {/} tts
- puts stderr "Running <ssh $host -l $user -p $port $tcl $tts>"
- exec ssh -o StrictHostKeyChecking=no $host \
diff --git a/testing/embree3/APKBUILD b/testing/embree3/APKBUILD
new file mode 100644
index 00000000000..6f37a21a105
--- /dev/null
+++ b/testing/embree3/APKBUILD
@@ -0,0 +1,47 @@
+# Contributor: Leon Marz <main@lmarz.org>
+# Maintainer: Leon Marz <main@lmarz.org>
+pkgname=embree3
+pkgver=3.13.5
+pkgrel=2
+pkgdesc="High Performance Ray Tracing Kernels"
+url="https://www.embree.org/"
+arch="aarch64 x86_64" # embree needs sse2 and 64 bit
+license="Apache-2.0"
+makedepends="clang cmake onetbb-dev samurai"
+subpackages="$pkgname-dev"
+source="embree-$pkgver.tar.gz::https://github.com/embree/embree/archive/v$pkgver.tar.gz
+ fix-install-detection.patch
+ "
+options="!check" # no tests provided
+builddir="$srcdir/embree-$pkgver"
+
+# has the same files as embree<4
+replaces="embree"
+
+build() {
+ # takes significantly less memory allowing higher than -j4
+ export CC=clang
+ export CXX=clang++
+
+ # build shared library
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=True \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DEMBREE_ISPC_SUPPORT=OFF \
+ -DEMBREE_TUTORIALS=OFF \
+ -DEMBREE_RAY_MASK=ON
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+ cd "$pkgdir"
+ rm -r usr/share
+}
+
+sha512sums="
+13ae19b1750197fb4887ba601c75d1b54b3c388224672b6561dd922bc9b9747139cf46ce554727e3afa13dcf152ce4d703935cb9105ced792b011f2d05fa3e95 embree-3.13.5.tar.gz
+c21523a6b7b20829a9c589eaba1d5fa235f123557d0ab59804e315002410a4ae1c3793d53ba114cf13c0cd008c54a4bf3d4781b5877d7ecdcbf4970ae2950324 fix-install-detection.patch
+"
diff --git a/testing/embree3/fix-install-detection.patch b/testing/embree3/fix-install-detection.patch
new file mode 100644
index 00000000000..a50e9927755
--- /dev/null
+++ b/testing/embree3/fix-install-detection.patch
@@ -0,0 +1,14 @@
+--- a/common/cmake/installTBB.cmake
++++ b/common/cmake/installTBB.cmake
+@@ -1,11 +1,6 @@
+ ## Copyright 2009-2021 Intel Corporation
+ ## SPDX-License-Identifier: Apache-2.0
+
+-IF (EMBREE_STATIC_LIB)
+- INSTALL(TARGETS TBB EXPORT TBB-targets)
+- INSTALL(EXPORT TBB-targets DESTINATION "${EMBREE_CMAKEEXPORT_DIR}" COMPONENT devel)
+-ENDIF()
+-
+ IF (EMBREE_INSTALL_DEPENDENCIES)
+ IF (TARGET TBB::tbb)
+ GET_TARGET_PROPERTY(LIB_PATH TBB::tbb IMPORTED_LOCATION_RELEASE)
diff --git a/testing/emby/APKBUILD b/testing/emby/APKBUILD
deleted file mode 100644
index e0b460784dd..00000000000
--- a/testing/emby/APKBUILD
+++ /dev/null
@@ -1,86 +0,0 @@
-# Contributor: Carlo Landmeter <clandmeter@alpinelinux.org>
-# Maintainer: Carlo Landmeter <clandmeter@alpinelinux.org>
-pkgname=emby
-pkgver=3.0.5911
-pkgrel=4
-pkgdesc="Bring together your videos, music, photos, and live television"
-url="https://emby.media"
-arch="x86_64"
-license="GPL-2.0"
-depends="ffmpeg mono imagemagick sqlite"
-pkgusers=$pkgname
-pkggroups=$pkgname
-depends_dev=""
-makedepends="$depends_dev"
-install="$pkgname.pre-install"
-subpackages="$pkgname-migrate"
-source="Emby-$pkgver.tar.gz::https://github.com/MediaBrowser/Emby/archive/$pkgver.tar.gz
- emby-server
- $pkgname.initd
- $pkgname.confd
- emby-migrate"
-
-_builddir="$srcdir"/Emby-$pkgver
-
-prepare() {
- local i
- local libMagicWand="libMagickWand-7.Q16HDRI.so.8"
- cd "$_builddir"
- for i in $source; do
- case $i in
- *.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
- esac
- done
- mkdir -p "$_builddir"/build
- if [ -e "/usr/lib/$libMagicWand" ]; then
- sed -i s/libMagickWand-6.Q8.so/$libMagicWand/g \
- "$_builddir"/MediaBrowser.Server.Mono/ImageMagickSharp.dll.config \
- || return 1
- else
- die "libMagickWand not found!"
- fi
- if [ -e "/usr/lib/libsqlite3.so.0" ]; then
- sed -i s/libsqlite3.so/libsqlite3.so.0/g \
- "$_builddir"/MediaBrowser.Server.Mono/System.Data.SQLite.dll.config \
- || return 1
- else
- die "libsqlite3 not found!"
- fi
-}
-
-build() {
- cd "$_builddir"
- xbuild \
- /p:Configuration='Release Mono' \
- /p:Platform='Any CPU' \
- /p:OutputPath="$_builddir"/build \
- /t:build MediaBrowser.Mono.sln || return 1
-}
-
-package() {
- cd "$_builddir"
- mkdir -p "$pkgdir"/usr/lib/emby || return 1
- install -d -o $pkgusers -g $pkggroups \
- "$pkgdir"/var/lib/emby || return 1
- cp -r "$_builddir"/build/* \
- "$pkgdir"/usr/lib/emby/
- install -Dm755 "$srcdir"/emby-server \
- "$pkgdir"/usr/bin/emby-server || return 1
- install -Dm755 "$srcdir"/$pkgname.initd \
- "$pkgdir"/etc/init.d/emby || return 1
- install -Dm644 "$srcdir"/$pkgname.confd \
- "$pkgdir"/etc/conf.d/emby || return 1
-}
-
-migrate() {
- pkgdesc="$pkgname database migration script"
- depends="sqlite"
- install -Dm755 "$srcdir"/emby-migrate \
- "$subpkgdir"/usr/bin/emby-migrate || return 1
-}
-
-sha512sums="ec48ee8d8403074b91d0dfc90cf463bab805c8b59f06d8e9035a166b1a41d8b4f2c22d007f17b763c902e655c34c3dc01f73bedfe9ada7592e72fd3f96513e39 Emby-3.0.5911.tar.gz
-f161fbf2d83d91e5436578f1998410dba991c8d2de4fb8852ec106b13ce3e7119fec7432998dfffa2c488425e2a5eacaf34b0c4e6fc93ad370c1ba94b3eaa2e4 emby-server
-2a520ee646b0489bbacd79679e75828194cbcd41845948816d1ae4d129f7cd582561f7357fa0c6d7f3f1970cc7900ae34338d54a4e54d5b21284c020a911e284 emby.initd
-ebdb39d3e17277ecc51709fc6862265295892d6aa1b5f1b9da537a80552b81c845863cd058ab468f7cf20c22f8f56954b7cce4d149f8fa233ea19ae7aa0bc001 emby.confd
-d4275622b26228c352ee9150441995c2062f6afdda46ccca176ad13a17d5ce432f6cf80b7c7d3029763d3e6fb79cf9a7a07bdbf4fef1dfaee2811c56ec0ec7b9 emby-migrate"
diff --git a/testing/emby/emby-migrate b/testing/emby/emby-migrate
deleted file mode 100644
index a74429f23ee..00000000000
--- a/testing/emby/emby-migrate
+++ /dev/null
@@ -1,56 +0,0 @@
-#!/bin/sh
-
-USER='emby'
-GROUP='emby'
-
-usage() {
- echo 'Usage: emby-migrate-database {-u user} {-g group} old_path_full new_path_full'
- echo 'Default user: emby'
- echo 'Default group: emby'
-}
-
-migrate() {
- if [[ $1 && $2 ]]; then
- if [[ -f $1/data/library.db ]]; then
- if [[ ! -e $2 ]]; then
- mkdir -p $2
- fi
- if [[ -d $2 ]]; then
- if [[ -z $(ls $2) ]]; then
- cp -r $1/* $2/
- sqlite3 $2/data/library.db "UPDATE TypedBaseItems SET data = CAST(REPLACE(CAST(data AS TEXT), '$1', '$2') AS BLOB);"
- chown $USER:$GROUP -R $2
- echo "Migration complete. You can now delete $1."
- else
- echo "$2 is not empty. Aborting."
- fi
- else
- echo "$2 is not a directory. Aborting."
- fi
- else
- echo "$1 does not contain an emby database. Aborting."
- fi
- else
- usage
- fi
-}
-
-if [[ $1 == '--help' ]]; then
- usage
-else
- while getopts 'u:g:' opt; do
- case $opt in
- u)
- USER=$OPTARG
- ;;
- g)
- GROUP=$OPTARG
- ;;
- \?)
- usage
- ;;
- esac
- done
- shift $((OPTIND-1))
- migrate
-fi
diff --git a/testing/emby/emby-server b/testing/emby/emby-server
deleted file mode 100644
index f6f84eecbfe..00000000000
--- a/testing/emby/emby-server
+++ /dev/null
@@ -1,6 +0,0 @@
-#!/bin/sh
-
-exec /usr/bin/mono /usr/lib/emby/MediaBrowser.Server.Mono.exe \
- -programdata /var/lib/emby \
- -ffmpeg /usr/bin/ffmpeg \
- -ffprobe /usr/bin/ffprobe
diff --git a/testing/emby/emby.confd b/testing/emby/emby.confd
deleted file mode 100644
index ba1ccb2d6bf..00000000000
--- a/testing/emby/emby.confd
+++ /dev/null
@@ -1,8 +0,0 @@
-# emby settings
-emby_server="/usr/lib/emby/MediaBrowser.Server.Mono.exe"
-emby_user="emby"
-emby_group="emby"
-emby_pid="/var/run/emby.pid"
-datadir="/var/lib/emby"
-ffmpeg="/usr/bin/ffmpeg"
-ffprobe="/usr/bin/ffprobe"
diff --git a/testing/emby/emby.initd b/testing/emby/emby.initd
deleted file mode 100644
index e0e2dbb33f5..00000000000
--- a/testing/emby/emby.initd
+++ /dev/null
@@ -1,14 +0,0 @@
-#!/sbin/openrc-run
-
-name=emby
-command=/usr/bin/mono
-command_args="$emby_server -programdata $datadir -ffmpeg $ffmpeg -ffprobe $ffprobe"
-command_background=true
-pidfile=$emby_pid
-start_stop_daemon_args="--user $emby_user --group $emby_group"
-
-depend() {
- use logger dns
- need net
- after firewall
-}
diff --git a/testing/emby/emby.pre-install b/testing/emby/emby.pre-install
deleted file mode 100644
index d287d7307f1..00000000000
--- a/testing/emby/emby.pre-install
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/bin/sh
-
-addgroup -S emby 2>/dev/null
-adduser -S -D -h /var/lib/emby -s /sbin/nologin -G emby \
- -g "Emby media server" emby 2>/dev/null
-
-exit 0
diff --git a/testing/empede/APKBUILD b/testing/empede/APKBUILD
new file mode 100644
index 00000000000..ca84836c78e
--- /dev/null
+++ b/testing/empede/APKBUILD
@@ -0,0 +1,48 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=empede
+pkgver=0.2.3
+pkgrel=0
+pkgdesc="A web client for MPD written in Rust"
+url="https://git.sijman.nl/_/empede"
+arch="all"
+license="MIT"
+makedepends="
+ cargo
+ cargo-auditable
+"
+install="empede.pre-install"
+subpackages="$pkgname-openrc $pkgname-doc"
+source="
+ $pkgname-$pkgver.tar.gz::https://git.sijman.nl/_/empede/archive/v$pkgver.tar.gz
+ empede.initd
+ empede.confd
+"
+builddir="$srcdir/$pkgname"
+options="net !check" # no tests
+
+prepare() {
+ default_prepare
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+package() {
+ install -Dm 755 target/release/empede "$pkgdir"/usr/bin/empede
+ mkdir -p "$pkgdir"/usr/lib/empede
+ cp -af static templates -t "$pkgdir"/usr/lib/empede
+
+ install -Dm 644 LICENSE.md "$pkgdir"/usr/share/licenses/"$pkgname"/LICENSE.md
+
+ install -Dm 755 "$srcdir"/empede.initd "$pkgdir"/etc/init.d/empede
+ install -Dm 644 "$srcdir"/empede.confd "$pkgdir"/etc/conf.d/empede
+}
+
+sha512sums="
+9683716fa8b9e0b950790f081f3fc74686af5b90b014f7e50f17bd56f1af8a1b86611142b66abb7d89ef52e29603b8763723d6b8ed094805a64aad8aaa46a11d empede-0.2.3.tar.gz
+a241ecc998a2d891008766b6c8cc636e904b9450a50ed3c965adb9f6d304cd205f7c45992761c3ee6a207a68d2b004a617bf7875194294e07bca7ff3c16e8e1d empede.initd
+4bcb3b089cd8c7c552e401ed9bc3da4ce631aa22d891b7ae0fa6d268921aeeddeee5951ae7655bdb155eda823f7886a2d644d762f4d48e80e8a5d0ccad063314 empede.confd
+"
diff --git a/testing/empede/empede.confd b/testing/empede/empede.confd
new file mode 100644
index 00000000000..dcd248e3199
--- /dev/null
+++ b/testing/empede/empede.confd
@@ -0,0 +1,4 @@
+#export MPD_HOST=localhost
+#export MPD_PORT=6600
+#export MPD_PASSWORD=
+export EMPEDE_BIND=0.0.0.0:3737
diff --git a/testing/empede/empede.initd b/testing/empede/empede.initd
new file mode 100644
index 00000000000..30818e58ee0
--- /dev/null
+++ b/testing/empede/empede.initd
@@ -0,0 +1,17 @@
+#!/sbin/openrc-run
+
+command="/usr/bin/empede"
+command_user="empede:empede"
+command_background=true
+directory="/usr/lib/empede"
+pidfile="/run/$RC_SVCNAME.pid"
+
+output_log="/var/log/empede.log"
+
+depend() {
+ need net
+}
+
+start_pre() {
+ checkpath -f -m 0644 -o "$command_user" "$output_log"
+}
diff --git a/testing/empede/empede.pre-install b/testing/empede/empede.pre-install
new file mode 100644
index 00000000000..f55983850de
--- /dev/null
+++ b/testing/empede/empede.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S empede 2>/dev/null
+adduser -S -D -s /sbin/nologin -H -G empede -g empede empede 2>/dev/null
+
+exit 0
diff --git a/testing/emulationstation/APKBUILD b/testing/emulationstation/APKBUILD
index 2fa69e679d3..9e9133bbe04 100644
--- a/testing/emulationstation/APKBUILD
+++ b/testing/emulationstation/APKBUILD
@@ -1,68 +1,74 @@
# Contributor: Taner Tas <taner76@gmail.com>
# Maintainer: Taner Tas <taner76@gmail.com>
pkgname=emulationstation
-_pkgname="EmulationStation"
-pkgver=2.10.3
-pkgrel=1
+pkgver=2.11.2
+_gbz35="05895874b2920ab6ffeeb574d053f3d9e976c000"
+pkgrel=0
pkgdesc="EmulationStation is a cross-platform graphical front-end for emulators with controller navigation."
url="https://github.com/RetroPie/EmulationStation"
-arch="all !armhf !s390x !riscv64" # vlc-dev
+arch="all !armhf !s390x" # vlc-dev
license="MIT"
-makedepends="boost-dev freeimage-dev freetype-dev sdl2-dev mesa-dev alsa-lib-dev vlc-dev curl-dev cmake rapidjson-dev"
-_theme_name="gbz35"
-_theme_commit="05895874b2920ab6ffeeb574d053f3d9e976c000"
-_pugixml_ver="1.11.1"
-subpackages="$pkgname-theme-$_theme_name:theme:noarch"
+makedepends="
+ alsa-lib-dev
+ boost-dev
+ cmake
+ curl-dev
+ freeimage-dev
+ freetype-dev
+ mesa-dev
+ pugixml-dev
+ rapidjson-dev
+ samurai
+ sdl2-dev
+ vlc-dev
+ "
+subpackages="$pkgname-theme-gbz35:theme:noarch"
options="!check" # No test suite
-source="$pkgname-$pkgver.tar.gz::https://github.com/RetroPie/$_pkgname/archive/v$pkgver.tar.gz
- $pkgname-theme-$_theme_name-$_theme_commit.tar.gz::https://github.com/rxbrad/es-theme-$_theme_name/archive/$_theme_commit.tar.gz
- pugixml-$_pugixml_ver.tar.gz::https://github.com/zeux/pugixml/archive/v$_pugixml_ver.tar.gz
+source="$pkgname-$pkgver.tar.gz::https://github.com/RetroPie/EmulationStation/archive/v$pkgver.tar.gz
+ $pkgname-theme-gbz35-$_gbz35.tar.gz::https://github.com/rxbrad/es-theme-gbz35/archive/$_gbz35.tar.gz
default-paths.patch
+ pugixml.patch
emulationstation.desktop
- emulationstation.png"
-builddir="$srcdir"/$_pkgname-$pkgver
-
-prepare() {
- if [ ! -d external/pugixml.dist ]; then
- mv -f external/pugixml external/pugixml.dist
- cp -aP "$srcdir"/pugixml-$_pugixml_ver external/pugixml
- fi
- default_prepare
-}
+ emulationstation.png
+ "
+builddir="$srcdir"/EmulationStation-$pkgver
build() {
- cmake .
- make
+ CFLAGS="$CFLAGS -O2 -flto=auto" \
+ CXXFLAGS="$CXXFLAGS -O2 -flto=auto" \
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=None
+ cmake --build build
}
package() {
- depends="$pkgname-theme-default"
- mkdir -p "$pkgdir"/usr/bin
- mkdir -p "$pkgdir"/usr/share/pixmaps
- mkdir -p "$pkgdir"/usr/share/applications
- mkdir -p "$pkgdir"/usr/share/$pkgname/gamelists
- mkdir -p "$pkgdir"/usr/share/$pkgname/themes
- install -Dm755 emulationstation "$pkgdir"/usr/bin/emulationstation
- install -Dm644 "$srcdir"/$pkgname.png "$pkgdir"/usr/share/pixmaps/
- install -Dm644 "$srcdir"/$pkgname.desktop "$pkgdir"/usr/share/applications/
+ depends="$pkgname-theme-gbz35=$pkgver-r$pkgrel"
+
+ install -Dm755 emulationstation -t "$pkgdir"/usr/bin/
+ install -Dm644 "$srcdir"/emulationstation.png -t "$pkgdir"/usr/share/icons/hicolor/256x256/apps/
+ install -Dm644 "$srcdir"/emulationstation.desktop -t "$pkgdir"/usr/share/applications/
+
+ mkdir -p "$pkgdir"/usr/share/emulationstation/themes
+ cp -r "$srcdir"/es-theme-gbz35-$_gbz35 \
+ "$pkgdir"/usr/share/emulationstation/themes/gbz35
+
+ mkdir -p "$pkgdir"/usr/share/emulationstation/gamelists
}
theme() {
- pkgdesc="$_theme_name theme for $_pkgname"
+ pkgdesc="gbz35 theme for emulationstation"
license="CC-BY-NC-SA-3.0"
url="https://github.com/rxbrad/es-theme-gbz35"
- provides="$pkgname-theme-default"
- install -d -m755 "$subpkgdir"/usr/share/$pkgname/themes
- cp -r "$srcdir"/es-theme-$_theme_name-$_theme_commit \
- "$subpkgdir"/usr/share/$pkgname/themes/$_theme_name
+ amove usr/share/emulationstation/themes/gbz35
}
+
sha512sums="
-36df98dae25b52f15c235c8e168ef758f5a6433e0000b1d4016494a0733723931ff7ef9a0558fef4f235842324fa70e41d83a5403f44bcc138cd013c2f28e8ac emulationstation-2.10.3.tar.gz
+49abfdfb90ddd1abac0cca2008c9efaf657dbf973e3caa07d547163ed29b7a74c8cfc6e82e1bbad6da4c8c122c748783e003d70cc3a626edec9191ee055d4e19 emulationstation-2.11.2.tar.gz
23e764e41a8ca359657508f5103c841e25d6403ddaafa9ca2f55379e42a17541d85cacac9d18fa9316d17450cd6bd6b8ae345f07165971b2a02e03b8e33bf35c emulationstation-theme-gbz35-05895874b2920ab6ffeeb574d053f3d9e976c000.tar.gz
-94a79a28d96e763cdd8951c4d0b20aefb43cd1b32cbf5a5354b09f2636710e960e2dbfa56534b61c8d6ddecb2126a006e5f485c1465a97376e1cc077df25f16e pugixml-1.11.1.tar.gz
f97954e411078507b312b9859ff300bf2018945dedc2be593103a0aca1b0bd233a173ab6f74c983735bf0bbc0600b49ba6987b60c03ed697c1328f906c154799 default-paths.patch
+21755e8cb8a035cbd62318be3e45db0abc3dfce76ad82348a36e496b893e6583b1209a48dd9a001bbdd55c86479ef49bcccce67858a50273170cb9f5de62f67a pugixml.patch
814a196d234266809f2c3f64c7179e3138e017eb67d1c54dcc2e8c504c1439cb73f17352575cd582ce044b08405f3a369d049127c9f4c5a1336072435dfa54f0 emulationstation.desktop
-4a24c435aeef22d7d69c3af113bff97c2c99b4a1eb2e5c97f53a6cce1f11a4f92bf4250388598a89f8fd462e03ea6fc73b75739573faf6f7b30c98ab53ddb5bf emulationstation.png
+70eb80598cd51edb1d95dd0a1784792e2e526b23efd46f1af3246e8ca321422cdd3309d11c23506cce68fca1f4bafec97d8a0436a53047bcb78b63eb3be23b7e emulationstation.png
"
diff --git a/testing/emulationstation/emulationstation.png b/testing/emulationstation/emulationstation.png
index 251686c0768..c9fa4c55b59 100644
--- a/testing/emulationstation/emulationstation.png
+++ b/testing/emulationstation/emulationstation.png
Binary files differ
diff --git a/testing/emulationstation/pugixml.patch b/testing/emulationstation/pugixml.patch
new file mode 100644
index 00000000000..f05c7f694e6
--- /dev/null
+++ b/testing/emulationstation/pugixml.patch
@@ -0,0 +1,152 @@
+diff --git a/es-app/src/CollectionSystemManager.cpp b/es-app/src/CollectionSystemManager.cpp
+index 52dca51..30f62cd 100644
+--- a/es-app/src/CollectionSystemManager.cpp
++++ b/es-app/src/CollectionSystemManager.cpp
+@@ -12,7 +12,7 @@
+ #include "Settings.h"
+ #include "SystemData.h"
+ #include "ThemeData.h"
+-#include <pugixml/src/pugixml.hpp>
++#include <pugixml.hpp>
+ #include <fstream>
+
+ std::string myCollectionsName = "collections";
+diff --git a/es-app/src/Gamelist.cpp b/es-app/src/Gamelist.cpp
+index 0dd89ca..c74d14e 100644
+--- a/es-app/src/Gamelist.cpp
++++ b/es-app/src/Gamelist.cpp
+@@ -8,7 +8,7 @@
+ #include "Log.h"
+ #include "Settings.h"
+ #include "SystemData.h"
+-#include <pugixml/src/pugixml.hpp>
++#include <pugixml.hpp>
+
+ FileData* findOrCreateFile(SystemData* system, const std::string& path, FileType type)
+ {
+diff --git a/es-app/src/MetaData.cpp b/es-app/src/MetaData.cpp
+index 4841030..a71a500 100644
+--- a/es-app/src/MetaData.cpp
++++ b/es-app/src/MetaData.cpp
+@@ -2,7 +2,7 @@
+
+ #include "utils/FileSystemUtil.h"
+ #include "Log.h"
+-#include <pugixml/src/pugixml.hpp>
++#include <pugixml.hpp>
+
+ MetaDataDecl gameDecls[] = {
+ // key, type, default, statistic, name in GuiMetaDataEd, prompt in GuiMetaDataEd
+diff --git a/es-app/src/SystemData.h b/es-app/src/SystemData.h
+index 688bc80..5a2e8fa 100644
+--- a/es-app/src/SystemData.h
++++ b/es-app/src/SystemData.h
+@@ -9,7 +9,7 @@
+ #include <string>
+ #include <vector>
+
+-#include <pugixml/src/pugixml.hpp>
++#include <pugixml.hpp>
+
+ class FileData;
+ class FileFilterIndex;
+diff --git a/es-app/src/scrapers/GamesDBJSONScraper.cpp b/es-app/src/scrapers/GamesDBJSONScraper.cpp
+index 9ca9f20..d92841c 100644
+--- a/es-app/src/scrapers/GamesDBJSONScraper.cpp
++++ b/es-app/src/scrapers/GamesDBJSONScraper.cpp
+@@ -10,7 +10,7 @@
+ #include "Settings.h"
+ #include "SystemData.h"
+ #include "utils/TimeUtil.h"
+-#include <pugixml/src/pugixml.hpp>
++#include <pugixml.hpp>
+
+ /* When raspbian will get an up to date version of rapidjson we'll be
+ able to have it throw in case of error with the following:
+diff --git a/es-app/src/scrapers/ScreenScraper.cpp b/es-app/src/scrapers/ScreenScraper.cpp
+index 8cd59eb..cb2f594 100644
+--- a/es-app/src/scrapers/ScreenScraper.cpp
++++ b/es-app/src/scrapers/ScreenScraper.cpp
+@@ -7,7 +7,7 @@
+ #include "PlatformId.h"
+ #include "Settings.h"
+ #include "SystemData.h"
+-#include <pugixml/src/pugixml.hpp>
++#include <pugixml.hpp>
+ #include <cstring>
+
+ using namespace PlatformIds;
+diff --git a/es-core/src/InputConfig.cpp b/es-core/src/InputConfig.cpp
+index 3a85ebb..56a6863 100644
+--- a/es-core/src/InputConfig.cpp
++++ b/es-core/src/InputConfig.cpp
+@@ -2,7 +2,7 @@
+
+ #include "Log.h"
+ #include "utils/StringUtil.h"
+-#include <pugixml/src/pugixml.hpp>
++#include <pugixml.hpp>
+
+ //some util functions
+ std::string inputTypeToString(InputType type)
+diff --git a/es-core/src/InputManager.cpp b/es-core/src/InputManager.cpp
+index 94e18ef..67a8901 100644
+--- a/es-core/src/InputManager.cpp
++++ b/es-core/src/InputManager.cpp
+@@ -6,7 +6,7 @@
+ #include "platform.h"
+ #include "Scripting.h"
+ #include "Window.h"
+-#include <pugixml/src/pugixml.hpp>
++#include <pugixml.hpp>
+ #include <SDL.h>
+ #include <iostream>
+ #include <assert.h>
+diff --git a/es-core/src/MameNames.cpp b/es-core/src/MameNames.cpp
+index e0dee5c..f05e864 100644
+--- a/es-core/src/MameNames.cpp
++++ b/es-core/src/MameNames.cpp
+@@ -3,7 +3,7 @@
+ #include "resources/ResourceManager.h"
+ #include "utils/FileSystemUtil.h"
+ #include "Log.h"
+-#include <pugixml/src/pugixml.hpp>
++#include <pugixml.hpp>
+ #include <string.h>
+
+ MameNames* MameNames::sInstance = nullptr;
+diff --git a/es-core/src/Settings.cpp b/es-core/src/Settings.cpp
+index d38bf95..d9a2ae0 100644
+--- a/es-core/src/Settings.cpp
++++ b/es-core/src/Settings.cpp
+@@ -4,7 +4,7 @@
+ #include "Log.h"
+ #include "Scripting.h"
+ #include "platform.h"
+-#include <pugixml/src/pugixml.hpp>
++#include <pugixml.hpp>
+ #include <algorithm>
+ #include <vector>
+
+diff --git a/es-core/src/ThemeData.cpp b/es-core/src/ThemeData.cpp
+index 52a35c6..c223978 100644
+--- a/es-core/src/ThemeData.cpp
++++ b/es-core/src/ThemeData.cpp
+@@ -7,7 +7,7 @@
+ #include "Log.h"
+ #include "platform.h"
+ #include "Settings.h"
+-#include <pugixml/src/pugixml.hpp>
++#include <pugixml.hpp>
+ #include <algorithm>
+
+ std::vector<std::string> ThemeData::sSupportedViews { { "system" }, { "basic" }, { "detailed" }, { "grid" }, { "video" } };
+diff --git a/external/CMakeLists.txt b/external/CMakeLists.txt
+index 03b743b..deec3de 100644
+--- a/external/CMakeLists.txt
++++ b/external/CMakeLists.txt
+@@ -2,4 +2,3 @@
+ # package managers are included with the project (in the 'external' folder)
+
+ add_subdirectory("nanosvg")
+-add_subdirectory("pugixml")
diff --git a/testing/endeavour/APKBUILD b/testing/endeavour/APKBUILD
new file mode 100644
index 00000000000..aed6544ed93
--- /dev/null
+++ b/testing/endeavour/APKBUILD
@@ -0,0 +1,39 @@
+# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=endeavour
+pkgver=43.0
+pkgrel=1
+pkgdesc="Personal task manager for GNOME"
+url="https://wiki.gnome.org/Apps/Todo"
+arch="all"
+license="GPL-3.0-or-later"
+makedepends="
+ evolution-data-server-dev
+ gnome-online-accounts-dev
+ gtk4.0-dev
+ itstool
+ libadwaita-dev
+ libpeas-dev
+ meson
+ "
+subpackages="$pkgname-lang $pkgname-doc $pkgname-dev"
+source="https://gitlab.gnome.org/World/Endeavour/-/archive/$pkgver/Endeavour-$pkgver.tar.gz"
+builddir="$srcdir/Endeavour-$pkgver"
+
+build() {
+ abuild-meson \
+ . output
+ meson compile -C output
+}
+
+check() {
+ meson test --no-rebuild --print-errorlogs -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+sha512sums="
+fca96729595f59b16d54e18cebed81e3b68e67f466f479bdcd0b68405b7051bade2a730f1b62502d0c7342a08fe3a8183b94a7f6be21830326ba0a7fab2480ed Endeavour-43.0.tar.gz
+"
diff --git a/testing/endless-sky/APKBUILD b/testing/endless-sky/APKBUILD
new file mode 100644
index 00000000000..7cfa7790443
--- /dev/null
+++ b/testing/endless-sky/APKBUILD
@@ -0,0 +1,48 @@
+# Contributor: Maxim Karasev <mxkrsv@disroot.org>
+# Maintainer: Maxim Karasev <mxkrsv@disroot.org>
+pkgname=endless-sky
+pkgver=0.9.16.1
+pkgrel=0
+pkgdesc="sandbox-style 2D space trading and combat game"
+url="https://endless-sky.github.io/"
+arch="all !s390x !riscv64" # videogame
+license="GPL-3.0-or-later AND CC-BY-SA-4.0 AND CC-BY-SA-3.0 AND CC-BY-3.0"
+makedepends="
+ glew-dev
+ libjpeg-turbo-dev
+ libmad-dev
+ libpng-dev
+ openal-soft-dev
+ scons
+ sdl2-dev
+ "
+subpackages="$pkgname-doc"
+source="https://github.com/endless-sky/endless-sky/archive/refs/tags/v$pkgver/endless-sky-$pkgver.tar.gz
+ install-path.patch"
+
+prepare() {
+ default_prepare
+
+ # use the fast lto instead of the slow lto
+ sed -i 's|-flto|-flto=auto|g' SConstruct
+}
+
+build() {
+ # lto fortify-headers
+ export CXXFLAGS="$CXXFLAGS -U_FORTIFY_SOURCE"
+ scons -j "${JOBS:-2}"
+}
+
+check() {
+ scons test
+}
+
+package() {
+ scons DESTDIR="$pkgdir" PREFIX=/usr install
+ install -Dm644 copyright "$pkgdir"/usr/share/licenses/$pkgname/copyright
+}
+
+sha512sums="
+83e0a47160506b1e3608f67534e2dbcf51515d809016efc379448d14331229ffe26360f82cc60c565c84b10c605aec846efc19bcd4af10ee116e5ef8fc804d56 endless-sky-0.9.16.1.tar.gz
+91a32aa67cf70a2c6462579cff01aba9d85901675e07c9f296ce03bb34f9dca0f18594c921856ff6c369fe6eb282d9da80148019ebbd7faeecc9231ddec2d57c install-path.patch
+"
diff --git a/testing/endless-sky/install-path.patch b/testing/endless-sky/install-path.patch
new file mode 100644
index 00000000000..3035c0e9f74
--- /dev/null
+++ b/testing/endless-sky/install-path.patch
@@ -0,0 +1,13 @@
+diff --git a/SConstruct b/SConstruct
+index 3ae455a..6d25bdf 100644
+--- a/SConstruct
++++ b/SConstruct
+@@ -157,7 +157,7 @@ env.AlwaysBuild("test")
+
+
+ # Install the binary:
+-env.Install("$DESTDIR$PREFIX/games", sky)
++env.Install("$DESTDIR$PREFIX/bin", sky)
+
+ # Install the desktop file:
+ env.Install("$DESTDIR$PREFIX/share/applications", "endless-sky.desktop")
diff --git a/testing/enigma/APKBUILD b/testing/enigma/APKBUILD
deleted file mode 100644
index 550a02c756e..00000000000
--- a/testing/enigma/APKBUILD
+++ /dev/null
@@ -1,39 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=enigma
-pkgver=1.30
-pkgrel=0
-pkgdesc="Puzzle game inspired by Oxyd on the Atari ST and Rock'n'Roll on the Amiga"
-url="http://www.nongnu.org/enigma/"
-arch="all"
-license="GPL-2.0-or-later"
-makedepends="
- imagemagick enet-dev
- sdl2-dev sdl2_image-dev
- sdl2_ttf-dev sdl2_mixer-dev
- gettext-tiny-dev xerces-c-dev
- curl-dev libpng-dev
- "
-subpackages="$pkgname-doc"
-source="https://github.com/Enigma-Game/Enigma/releases/download/$pkgver/Enigma-$pkgver-src.tar.gz"
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --with-system-enet
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-57c6d642538b7bce6a748e1e1bce641dcc1dcd627a4e2c4dfe5d1271bf9df624075914c04fc6cddc1b1118585e4f111d79c8c8a54a1a6b93a8bedfb1aa9f2ef6 Enigma-1.30-src.tar.gz
-"
diff --git a/testing/enjoy/APKBUILD b/testing/enjoy/APKBUILD
index 5273ae38b09..8987b60b416 100644
--- a/testing/enjoy/APKBUILD
+++ b/testing/enjoy/APKBUILD
@@ -2,7 +2,7 @@
# Contributor: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
pkgname=enjoy
pkgver=0.3
-pkgrel=0
+pkgrel=1
pkgdesc="daemon to map joystick events to mouse/key events"
url="https://github.com/cjacker/enjoy"
arch="all"
@@ -12,6 +12,7 @@ source="
0001-fix-printf-format-specifier.patch
0002-fix-setting-timestamp-of-input-event.patch
+ correct_udev_rules_path.patch
"
makedepends="linux-headers"
options="!check" # no unit tests provided
@@ -28,4 +29,5 @@ sha512sums="
02dc462f8e2d88e090242ac28612e362baabd9d7071a8e9143f6e1d92f8a23ce747fd470fbb795c57d245908de6d42d5540273e755eecbac6c06c1ef26c7ba5c enjoy-0.3.tar.gz
37e2bc17aadf40e1a3bbbf412f34e51e897bf529121283a025eb7915248f211e5fdeffa4d82e07e816fed666dbcdadd865e59b7980ce5c76e95c7c92b60a08f1 0001-fix-printf-format-specifier.patch
6e89859c5b8752021e1517d2cfdb9a7e9e3bc89098cacbe4845c5ff76aed7b777949efaaeea152ee21a8cdc27112a34b3df2c0015fadc317e756ca626a735791 0002-fix-setting-timestamp-of-input-event.patch
+2d4db64553fb184611d1fa3e60fda6db034cccfea57711276e71ffc03a420696d8a7251a74e3e352d275842fa7e543b9e7f146b83cad94d0822d098189cbf37d correct_udev_rules_path.patch
"
diff --git a/testing/enjoy/correct_udev_rules_path.patch b/testing/enjoy/correct_udev_rules_path.patch
new file mode 100644
index 00000000000..63783447746
--- /dev/null
+++ b/testing/enjoy/correct_udev_rules_path.patch
@@ -0,0 +1,14 @@
+--- a/Makefile
++++ b/Makefile
+@@ -7,9 +7,9 @@ withx:
+ gcc -Os -o enjoy-with-x enjoy.c cfg_parse.c uinput.c keytable.c x.c -lX11 -lXtst -pthread -DWITH_X
+
+ install: all
+- mkdir -p $(DESTDIR)/etc/udev/rules.d/
++ mkdir -p $(DESTDIR)/usr/lib/udev/rules.d/
+ mkdir -p $(DESTDIR)$(PREFIX)/bin/
+- install -D -m0644 99-uinput.rules $(DESTDIR)/etc/udev/rules.d/
++ install -D -m0644 99-uinput.rules $(DESTDIR)/usr/lib/udev/rules.d/
+ install -D -m0755 enjoy $(DESTDIR)$(PREFIX)/bin
+
+ clean:
diff --git a/testing/enlighten/APKBUILD b/testing/enlighten/APKBUILD
index 2b939bcd3c5..5e2bb32fd89 100644
--- a/testing/enlighten/APKBUILD
+++ b/testing/enlighten/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Sam Stuewe <samuel.stuewe@gmail.com>
pkgname=enlighten
pkgver=0.9.2
-pkgrel=0
+pkgrel=1
pkgdesc="expressive, sysfs-based, backlight brightness manager"
url="https://github.com/halosghost/enlighten"
arch="all"
diff --git a/testing/envconsul/APKBUILD b/testing/envconsul/APKBUILD
index 140e92ceb35..e6f9dc6e6a7 100644
--- a/testing/envconsul/APKBUILD
+++ b/testing/envconsul/APKBUILD
@@ -1,17 +1,21 @@
# Contributor: Gennady Feldman <gena01@gmail.com>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=envconsul
-pkgver=0.12.1
-pkgrel=3
+pkgver=0.13.2
+pkgrel=5
pkgdesc="Read and set environmental variables for processes from Consul."
url="https://www.consul.io/"
license="MPL-2.0"
arch="all"
makedepends="go"
+options="net chmod-clean"
source="$pkgname-$pkgver.tar.gz::https://github.com/hashicorp/envconsul/archive/v$pkgver.tar.gz"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
build() {
- export CGO_ENABLED="0"
mkdir -p pkg/linux-$CARCH
go build -v -o pkg/linux-$CARCH/$pkgname
}
@@ -26,5 +30,5 @@ package() {
}
sha512sums="
-01db5c9110a028b0e5ed4584a54da4436754179c1e8e9a3876016e46e94278091c8a477cd66d83bb9185030f2aa6b6d21191397b517bc52d8c1478f7d2c1b882 envconsul-0.12.1.tar.gz
+dacc65e19553de897195397126664882e3dedd4b9929c83c519311010ff1ab62663425556261a2ce3f37035576b63b4f26c4a0219dfd663d05e852c4cee2e6bb envconsul-0.13.2.tar.gz
"
diff --git a/testing/envsubst/APKBUILD b/testing/envsubst/APKBUILD
index 0c76e007bed..21e8e6c0ac1 100644
--- a/testing/envsubst/APKBUILD
+++ b/testing/envsubst/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Ariadne Conill <ariadne@dereferenced.org>
pkgname=envsubst
pkgver=0.1
-pkgrel=0
+pkgrel=1
pkgdesc="perform variable substitutions on input"
url="https://github.com/kaniini/envsubst"
arch="all"
@@ -10,11 +10,13 @@ depends=""
makedepends=""
install=""
subpackages=""
-source="https://distfiles.dereferenced.org/envsubst/envsubst-$pkgver.tar.xz"
+source="https://distfiles.ariadne.space/envsubst/envsubst-$pkgver.tar.xz"
builddir="$srcdir/envsubst-$pkgver"
options="!check" # No test suite.
replaces="gettext" # GNU gettext also provides envsubst.
+provider_priority=10 # lowest (other provider of cmd:envsubst is main/gettext)
+
build() {
make
}
diff --git a/testing/eolie/APKBUILD b/testing/eolie/APKBUILD
deleted file mode 100644
index 1cffec6b4d0..00000000000
--- a/testing/eolie/APKBUILD
+++ /dev/null
@@ -1,55 +0,0 @@
-# Contributor: Daniele Debernardi <drebrez@gmail.com>
-# Maintainer: Daniele Debernardi <drebrez@gmail.com>
-pkgname=eolie
-pkgver=0.9.101
-pkgrel=2
-_translations=d5aac9503b4af24e3df89f531305cf9a70e26549
-pkgdesc="Web browser for GNOME"
-url="https://gitlab.gnome.org/World/eolie"
-arch="noarch !riscv64 !s390x" # blocked by libhandy1/gnome-settings-daemon
-license="GPL-3.0-or-later"
-depends="
- gnome-settings-daemon
- gtkspell3
- libhandy1
- py3-cairo
- py3-gobject3
- python3
- webkit2gtk
- "
-makedepends="
- glib-dev
- gobject-introspection-dev
- gtk+3.0-dev
- meson
- "
-checkdepends="desktop-file-utils appstream-glib"
-subpackages="$pkgname-lang"
-source="https://gitlab.gnome.org/World/eolie/-/archive/$pkgver/eolie-$pkgver.tar.gz
- https://gitlab.gnome.org/gnumdk/eolie-po/-/archive/$_translations/eolie-po-$_translations.tar.gz
- dont-require-py3-gettext-support.patch
- "
-
-prepare() {
- default_prepare
- mv "$srcdir"/eolie-po-$_translations/* "$builddir"/subprojects/po
-}
-
-build() {
- abuild-meson . output
- meson compile ${JOBS:+-j ${JOBS}} -C output
-}
-
-check() {
- meson test --no-rebuild -v -C output
-}
-
-package() {
- DESTDIR="$pkgdir" meson install --no-rebuild -C output
-}
-
-sha512sums="
-7c17020cb67fa2a0782669c39fc39f9e11e74023029a945ab61808fd426235f897846a6becbd3cf75d2ff042ec945cd65284548ef39d0d24e0f306efab7850b2 eolie-0.9.101.tar.gz
-180107420ecb076a47f7ab6024ffdfa743a8712b7711e20c1b8befe36cc8373172902f14d00e870b05bbe5882177a0bdb81274c7fb6b49d65c7a2b1a3f8b46c8 eolie-po-d5aac9503b4af24e3df89f531305cf9a70e26549.tar.gz
-78f62663dd7150805dcb6086b5dfc5f1a9fff367dfb7cad662ca8fc2dcbc08fd3633f58d6ecbe2e4f368ba722c31783fcf9c336ffefa0efc670906d15878bbf9 dont-require-py3-gettext-support.patch
-"
diff --git a/testing/eolie/dont-require-py3-gettext-support.patch b/testing/eolie/dont-require-py3-gettext-support.patch
deleted file mode 100644
index 9086ff973f5..00000000000
--- a/testing/eolie/dont-require-py3-gettext-support.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-diff --git a/eolie.in b/eolie.in
-index 837ba81..2a2d29a 100755
---- a/eolie.in
-+++ b/eolie.in
-@@ -34,15 +34,6 @@ def install_excepthook():
- if __name__ == "__main__":
- install_excepthook()
-
-- try:
-- locale.bindtextdomain('eolie', localedir)
-- locale.textdomain('eolie')
-- except AttributeError as e:
-- # Python built without gettext support doesn't have bindtextdomain()
-- # and textdomain()
-- print("Couldn't bind the gettext translation domain. Some translations"
-- " won't work.\n{}".format(e))
--
- gettext.bindtextdomain('eolie', localedir)
- gettext.textdomain('eolie')
-
diff --git a/testing/epic5-script-lice/APKBUILD b/testing/epic5-script-lice/APKBUILD
deleted file mode 100644
index ad64e20e23b..00000000000
--- a/testing/epic5-script-lice/APKBUILD
+++ /dev/null
@@ -1,26 +0,0 @@
-# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer: rubicon <rubicon@mailo.com>
-pkgname=epic5-script-lice
-pkgver=5.3.0
-_pkgver=${pkgver//./}
-pkgrel=0
-pkgdesc="LiCe script pack for EPIC5 irc client"
-url="https://lice.muppetz.com/"
-arch="noarch"
-license="GPL-2.0-or-later"
-depends="epic5-script"
-options="!check"
-source="https://lice.muppetz.com/sites/lice.muppetz.com/files/LiCe/LiCe5/lice$_pkgver.tar.gz"
-
-package() {
- mkdir -p "$pkgdir"/usr/share/epic5/script
- cp -a "$srcdir"/lice5 \
- "$pkgdir"/usr/share/epic5/
- touch "$pkgdir"/usr/share/epic5/lice5/disable_update
- ln -s ../lice5/lice.irc \
- "$pkgdir"/usr/share/epic5/script/local
-}
-
-sha512sums="
-7483b4bda34251c6feeb3d0ff7f9d2e5eb2d5b67e5a3c45d9be3de6f65a7154b9844f81c33ddd4efbf0bc94b4598b14b9243a6f86e68d930c7e9e99fa400c92f lice530.tar.gz
-"
diff --git a/testing/epic5/APKBUILD b/testing/epic5/APKBUILD
deleted file mode 100644
index 78a63d9383b..00000000000
--- a/testing/epic5/APKBUILD
+++ /dev/null
@@ -1,68 +0,0 @@
-# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer: rubicon <rubicon@mailo.com>
-pkgname=epic5
-pkgver=2.1.9
-pkgrel=0
-pkgdesc="Enhanced Programmable ircII Client, version 5"
-url="http://epicsol.org/"
-arch="all"
-license="BSD-3-Clause"
-makedepends="libarchive-dev ncurses-dev openssl1.1-compat-dev perl-dev"
-subpackages="$pkgname-doc $pkgname-script:script:noarch $pkgname-lite"
-source="http://ftp.epicsol.org/pub/epic/EPIC5-PRODUCTION/epic5-$pkgver.tar.gz
- default-to-oftc.patch
- "
-# dir for lite variant without libarchive and perl support
-_litedir="$srcdir/$pkgname-$pkgver"/lite
-
-build() {
- mkdir -p "$_litedir"
- cp -r configure Makefile.in include source "$_litedir"/
-
- ./configure \
- --build="$CBUILD" \
- --target="$CTARGET" \
- --prefix=/usr \
- --with-ipv6
- make
-
- cd "$_litedir"
- ./configure \
- --build="$CBUILD" \
- --target="$CTARGET" \
- --prefix=/usr \
- --with-ipv6 \
- --without-libarchive \
- --without-perl
- make
-}
-
-check() {
- "$builddir"/source/epic5 -v
- "$_litedir"/source/epic5 -v
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- install -Dm644 -t "$pkgdir"/usr/share/doc/epic5 \
- "$builddir"/doc/*
- rm "$pkgdir"/usr/share/doc/epic5/epic*.1
-}
-
-script() {
- pkgdesc="$pkgdesc (bundled scripts)"
- depends="cmd:$pkgname=$pkgver-r$pkgrel"
- amove usr/share/epic5
-}
-
-lite() {
- pkgdesc="$pkgdesc (dependency-lite variant)"
- cd "$_litedir"
- make DESTDIR="$subpkgdir" installbin
- rm -vrf "$subpkgdir"/usr/share
-}
-
-sha512sums="
-96fdfea868a90742590b40c1858e36e3f7dca484b5bc0de099a42a8a4dc254f772f98f2c1522a7ecf674100653045bba88b204bca396125592819bbe0288ccca epic5-2.1.9.tar.gz
-b89098e2a5ba34b9b28714e3ed94230a5e9b56f455eb4e38d0108229633056df55de6e5a89a2f6459f8b034785b8774bf94eaeb35bfe6353de54b3b013f18da5 default-to-oftc.patch
-"
diff --git a/testing/epic5/default-to-oftc.patch b/testing/epic5/default-to-oftc.patch
deleted file mode 100644
index 9cede419004..00000000000
--- a/testing/epic5/default-to-oftc.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-OFTC is the home of #alpine-linux
-
---- a/include/config.h
-+++ b/include/config.h
-@@ -42,7 +42,7 @@
- * the client will NOT compile and work properly! Use the default here if
- * you dont have other servers to use.
- */
--#define DEFAULT_SERVER "irc.efnet.net irc.undernet.org irc.dal.net"
-+#define DEFAULT_SERVER "irc.oftc.net:6697:type=irc-ssl"
-
- /*
- * This is the location of your SSL certificate file.
diff --git a/testing/epoch/APKBUILD b/testing/epoch/APKBUILD
index 408561580a7..7b9299d4ec6 100644
--- a/testing/epoch/APKBUILD
+++ b/testing/epoch/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Jan Tatje <jan@jnt.io>
pkgname=epoch
pkgver=1.3.0
-pkgrel=0
+pkgrel=1
pkgdesc="The Epoch Init System is a small but powerful init system for Linux 2.6+."
url="https://universe2.us/epoch.html"
arch="all"
diff --git a/testing/epr/APKBUILD b/testing/epr/APKBUILD
index 8cba0eb8692..8455f11ab3b 100644
--- a/testing/epr/APKBUILD
+++ b/testing/epr/APKBUILD
@@ -1,25 +1,29 @@
# Contributor: Erwan Rouchet <lucidiot@brainshit.fr>
# Maintainer: Erwan Rouchet <lucidiot@brainshit.fr>
pkgname=epr
-pkgver=2.4.13
-pkgrel=0
+pkgver=2.4.15
+pkgrel=1
pkgdesc="CLI epub reader"
url="https://github.com/wustho/epr"
arch="noarch"
license="MIT"
depends="python3"
-makedepends="py3-setuptools"
+makedepends="py3-gpep517 py3-installer py3-poetry-core"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/wustho/epr/archive/refs/tags/v$pkgver.tar.gz"
options="!check" # no tests
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/epr*.whl
}
sha512sums="
-bae3b2380ec36db3e07a9da817a076902507269d0713d90f713410157270323bfbd7a1e6b367a78d7dc16bfbcee9daaafed5af19e2193c6b84a0f994c26c1536 epr-2.4.13.tar.gz
+c1642191889ef3aebcc3b516281387a28edb39f6898bde68f9717b9eccf4c72bf567714a65b56d67f126139b04c8fc1921f0e69bf35effb85d8a3d7e1fd71fdf epr-2.4.15.tar.gz
"
diff --git a/testing/epub2txt/APKBUILD b/testing/epub2txt/APKBUILD
deleted file mode 100644
index 307d26a78ab..00000000000
--- a/testing/epub2txt/APKBUILD
+++ /dev/null
@@ -1,23 +0,0 @@
-# Contributor: Paper <paper@tilde.institute>
-# Maintainer: Paper <paper@tilde.institute>
-pkgname=epub2txt
-pkgver=2.01
-pkgrel=0
-pkgdesc="CLI utility for extracting text from EPUB documents"
-url="https://github.com/kevinboone/epub2txt2"
-arch="all"
-license="GPL-3.0-only"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/kevinboone/epub2txt2/archive/v$pkgver.tar.gz"
-options='!check' #no testsuite
-builddir="$srcdir/$pkgname"2"-$pkgver"
-
-build() {
- make
-}
-
-package() {
- make PREFIX=/usr DESTDIR="$pkgdir" install
-}
-
-sha512sums="87796e94cfa76380cd901f7c3ce7a09ebe510771966980a15df91df78330eab57453d83c2bfe4a2e502040f1809d0e1b0f8ef135597222f99495b81bde4ebe41 epub2txt-2.01.tar.gz"
diff --git a/testing/ergo-ldap/APKBUILD b/testing/ergo-ldap/APKBUILD
new file mode 100644
index 00000000000..4958eb7542f
--- /dev/null
+++ b/testing/ergo-ldap/APKBUILD
@@ -0,0 +1,25 @@
+# Maintainer: Dekedro <dekedro@protonmail.com>
+pkgname=ergo-ldap
+pkgver=0.0.1
+pkgrel=9
+pkgdesc="LDAP authentication plugin for Ergo IRCd"
+url="https://github.com/ergochat/ergo-ldap"
+arch="all"
+license="Apache-2.0"
+makedepends="go make"
+options="!check" # No tests
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/ergochat/ergo-ldap/archive/refs/tags/v$pkgver.tar.gz"
+
+build() {
+ make
+}
+
+package() {
+ install -Dm755 -t "$pkgdir"/usr/bin/ ergo-ldap
+ install -Dm644 -t "$pkgdir"/usr/share/doc/ergo-ldap/ example.yaml
+}
+
+sha512sums="
+16e36b2ec83fdc88c2b1ca93ba680a41fc58263f353411722d00d1fb479dd45d2e607bb1c5f34a0b2cdbf840a92c8dc1dcc4cee2292aa230b885ec979fa753b1 ergo-ldap-0.0.1.tar.gz
+"
diff --git a/testing/es-shell/APKBUILD b/testing/es-shell/APKBUILD
deleted file mode 100644
index 2326b862a91..00000000000
--- a/testing/es-shell/APKBUILD
+++ /dev/null
@@ -1,45 +0,0 @@
-# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer: rubicon <rubicon@mailo.com>
-pkgname=es-shell
-pkgver=0.9.2_git20220315
-_gitrev=0993c96404973c70888696c23a9d7cb016871fd0
-pkgrel=0
-pkgdesc="Shell with higher-order functions"
-url="https://wryun.github.io/es-shell/"
-arch="all !ppc64le" # error: expected expression at end of input
-license="Public-Domain"
-makedepends="autoconf automake libtool byacc readline-dev"
-subpackages="$pkgname-doc"
-options="!check"
-source="$pkgname-$pkgver.tar.gz::https://github.com/wryun/es-shell/archive/$_gitrev/es-shell-$_gitrev.tar.gz"
-builddir="$srcdir/es-shell-$_gitrev"
-
-prepare() {
- default_prepare
- libtoolize -qi
- autoupdate
- autoreconf -f
-}
-
-build() {
- ./configure --build="$CBUILD" \
- --target="$CTARGET" \
- --prefix=/usr \
- --with-readline
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-
- sed -i 's|#! /bin/es|#!/usr/bin/es|' esdebug
- install -vDm644 README.md CHANGES COPYING esdebug \
- initial.es trip.es doc/usenix-w93.ps \
- doc/ERRATA doc/TODO doc/es-list.gz \
- -t "$pkgdir"/usr/share/doc/"$pkgname"
- cp -vr examples "$pkgdir"/usr/share/doc/"$pkgname"/
-}
-
-sha512sums="
-20c92cc99669c2cc5ea9767545e1c749d38143d166e3e5b4b1940b8c551bc65d012bd47aa60dc8e97697c693e31ba462f0d08fc38df52adb64e76c62fc3ccc04 es-shell-0.9.2_git20220315.tar.gz
-"
diff --git a/testing/esbuild/APKBUILD b/testing/esbuild/APKBUILD
deleted file mode 100644
index 45361844713..00000000000
--- a/testing/esbuild/APKBUILD
+++ /dev/null
@@ -1,49 +0,0 @@
-# Contributor: Michał Polański <michal@polanski.me>
-# Maintainer: Michał Polański <michal@polanski.me>
-pkgname=esbuild
-pkgver=0.14.40
-pkgrel=0
-pkgdesc="Extremely fast JavaScript bundler and minifier"
-url="https://esbuild.github.io/"
-license="MIT"
-arch="all !riscv64" # blocked by nodejs
-makedepends="go nodejs"
-source="https://github.com/evanw/esbuild/archive/v$pkgver/esbuild-$pkgver.tar.gz"
-
-export GOFLAGS="$GOFLAGS -trimpath -mod=readonly -modcacherw"
-export GOPATH="$srcdir"
-
-build() {
- go build \
- -ldflags="-X main.version=$pkgver" \
- -v ./cmd/esbuild
-
- node scripts/esbuild.js npm/esbuild/package.json --version
- node scripts/esbuild.js ./esbuild --neutral
-
- # binary path override
- sed -i '1s#^#var ESBUILD_BINARY_PATH = "/usr/bin/esbuild";\n#' \
- npm/esbuild/lib/main.js
-}
-
-check() {
- go test ./...
-}
-
-package() {
- install -Dm755 esbuild "$pkgdir"/usr/bin/esbuild
-
- local destdir=/usr/lib/node_modules/esbuild
-
- install -d \
- "$pkgdir"/$destdir/bin \
- "$pkgdir"/$destdir/lib
-
- install -Dm644 -t "$pkgdir"/$destdir npm/esbuild/package.json
- install -Dm644 -t "$pkgdir"/$destdir/lib npm/esbuild/lib/*
- ln -s /usr/bin/esbuild "$pkgdir"/$destdir/bin/esbuild
-}
-
-sha512sums="
-56cdf4e94d5f217d76f421d6ce41aad8241a162333bb48f3738e74a947be9894bffa919ec02125dd02d1b980e0a767c831731d1018c302e26cfa206287b0f4c6 esbuild-0.14.40.tar.gz
-"
diff --git a/testing/espeak-ng/APKBUILD b/testing/espeak-ng/APKBUILD
deleted file mode 100644
index 161d7991ff5..00000000000
--- a/testing/espeak-ng/APKBUILD
+++ /dev/null
@@ -1,54 +0,0 @@
-# Maintainer: Dekedro <dekedro@tankers.xyz>
-pkgname=espeak-ng
-pkgver=1.50
-pkgrel=0
-pkgdesc="Multi-lingual software speech synthesizer"
-url="https://github.com/espeak-ng/espeak-ng"
-arch="all !s390x" # Fails to build on s390x
-license="GPL-3.0-or-later"
-makedepends="autoconf automake libtool pcaudiolib-dev ronn"
-subpackages="$pkgname-dev $pkgname-doc $pkgname-vim::noarch"
-source="$pkgname-$pkgver.tar.gz::https://github.com/espeak-ng/espeak-ng/archive/refs/tags/$pkgver.tar.gz
- fix-samplerate-definition-699.patch::https://github.com/espeak-ng/espeak-ng/commit/e11cd42b03d1628f7a0cf45c9406123282e25c63.patch
- fix-grc-handling-690.patch
- fix-newline-expansion.patch
- disable-failing-test-784.patch"
-
-prepare() {
- default_prepare
- ./autogen.sh
-}
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var
- make -j1
-}
-
-check() {
- make -j1 check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-vim() {
- pkgdesc="$pkgdesc (vim syntax)"
- install_if="$pkgname=$pkgver-r$pkgrel vim"
-
- amove /usr/share/vim
-}
-
-sha512sums="
-297dd80a6cdae3e2b8acf6823475220ce89d6a5fb68ea303156ad52cb3e7388049b6921759d4ed4e3d2e2ebd19bf931259e454f74a2ac0b7ecf4ce56c1d60c0c espeak-ng-1.50.tar.gz
-9270fdcfb1f94108f0ac2109a66491df0c0f60183c500ba4dbf1db6734d4d8dae14aacb967499566ae726ba545e82f869a39a4dd7e3900ba8c4ab066f02f5e46 fix-samplerate-definition-699.patch
-f1d4fe9c45c1b7130303f8eaadf4e6331c8f82bb249ceeb40b015f02515ed78ba91b682e537301ab22528bc9e173ac3e5fed29136f8738794f88b8699bf3633d fix-grc-handling-690.patch
-b64e22b51ce17eedc2e35a52e3f1a74e6f6c8668738c97f0736544764b48c881edf9cd8ca3fb6c2341588ccb411d76d1cc127d48a5d7fc47a7aa94142f3e1a26 fix-newline-expansion.patch
-0886ac3511536f259d59ce76277585c0406fa788feea6032a05d33ca1c2720f51faf60fd36dfa4bcccfdea0cb88f916af6cf4a77f4602b7f0aea45856d424f4e disable-failing-test-784.patch
-"
diff --git a/testing/espeak-ng/disable-failing-test-784.patch b/testing/espeak-ng/disable-failing-test-784.patch
deleted file mode 100644
index b59b89b8931..00000000000
--- a/testing/espeak-ng/disable-failing-test-784.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-One test is reported to be failing:
-https://github.com/espeak-ng/espeak-ng/issues/784
-
-This particular issue should dissapear with next release.
-
---- a/tests/language-phonemes.test
-+++ b/tests/language-phonemes.test
-@@ -95,7 +95,7 @@
- test_lang la 080bd53c20991eae7baec73b8c735eacc8aae076 "ma na Na pa p<h>a ba ta t<h>a da ka k<h>a ga fa sa za ha Ra la ja wa _:_ ma mE mI mO mU ma: me: mi: mo: mu: my my: maU maI meI mEU mOI"
- test_lang lfn 044e27a5100528760a185e0773dccaca504b5bd4 "ma na Na pa ba ta da ka ga fa va sa za Sa Za ha la ja R2a **a wa _:_ ma me mi mo mu maI maU meU moI"
- test_lang lt 615e503b996ea5f7b267ebd77b91e77c5b874e18 "ma m;a na n;a pa p;a ta t;a ka k;a ba b;a da d;a ga g;a tsa ts;a tSa tS;a dza dz;a dZa dZ;a fa f;a sa s;a Sa S;a xa x;a va v;a za z;a Za Z;a la l;a ra r;a ja _:_ m@ ma mA ma: me mE me: mee meA mi mI mi: mo mO mo: mu mU mu: mw mW mai mei mau muo moi mui mie maU meU moU maI meI"
--test_lang lv 060b6f94cd505e5c3e649d94c41856d801c0c695 "ma na n^a Na pa ba ta da ca Ja ka ga tsa dza Dz\`a tSa dZa DZ\`a fa va sa za Sa Za xa ha ja la l^a Ra ra _:_ mi my mu mE me mo ma mi: my: mu: mE: me: mo: ma: mai mau mei mie miu mui muo muo\` moi"
-+#test_lang lv 060b6f94cd505e5c3e649d94c41856d801c0c695 "ma na n^a Na pa ba ta da ca Ja ka ga tsa dza Dz\`a tSa dZa DZ\`a fa va sa za Sa Za xa ha ja la l^a Ra ra _:_ mi my mu mE me mo ma mi: my: mu: mE: me: mo: ma: mai mau mei mie miu mui muo muo\` moi"
- test_lang mi b6e622de46c33181cdfea351b907f932da9a0a1a "ma na Na pa ta ka fa ha ra wa _:_ ma ma: me me: mi mi: mo mo: mu mu:"
- test_lang mk 072d0a74acf54bea528e7dde427eb04808d38364 "ma na n^a Na pa ta xa k^a ka ba da Ja ga tsa tSa tS;a dza dZa dZ;a fa sa Sa xa va za Za l^a la ja Ra @-*a ra _:_ ma me mi mo mu mA mE ma: me: mi: mo: mu: moU"
- test_lang shn e568aca66c2f58fdaf5dda8a67f4d21f05710234 "ma na Ja Na pa p_ha ba ta t_ha da ka k_ha ga ?a fa sa za Ta ha tS;a Ra ja wa la _:_ mi mI mW mu me m@ mo mE ma ma: mO miu meu mEu mau ma:u mWi mui m@i moi mai ma:i mOi maW _:_ ma1 ma2 ma3 ma4 ma5 ma6"
diff --git a/testing/espeak-ng/fix-grc-handling-690.patch b/testing/espeak-ng/fix-grc-handling-690.patch
deleted file mode 100644
index 08bf8524a94..00000000000
--- a/testing/espeak-ng/fix-grc-handling-690.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From 00c37d667f58e5a36853eb9ac08b09567a150704 Mon Sep 17 00:00:00 2001
-From: "Reece H. Dunn" <msclrhd@gmail.com>
-Date: Wed, 4 Dec 2019 07:41:21 +0000
-Subject: [PATCH] grc: add Greek variant letter form support; fixes
- pronunciation of the test
-
-Fixes: https://github.com/espeak-ng/espeak-ng/issues/690
-Original patch: https://github.com/espeak-ng/espeak-ng/commit/00c37d667f58e5a36853eb9ac08b09567a150704.patch
-
-diff --git a/dictsource/grc_rules b/dictsource/grc_rules
-index 94b0c6ca2..cd1f3054c 100644
---- a/dictsource/grc_rules
-+++ b/dictsource/grc_rules
-@@ -52,6 +52,18 @@ u Ï…
- y Ï…
- w ω // (long o; not standard transliteration but may be easier to type
-
-+// replace variant letter forms with their standard equivalents
-+Ï Î² // U+03d0
-+ϑ θ // U+03d1
-+Ï’ Ï… // U+03d2
-+ϕ φ // U+03d5
-+ϖ π // U+03d6
-+ϰ κ // U+03f0
-+ϱ Ï // U+03f1
-+ϲ ς // U+03f2
-+ϴ θ // U+03f4
-+ϵ ε // U+03f5
-+Ϲ ς // U+03f9
-
- // alpha
- ά ὰ // tonos
-diff --git a/tests/language-pronunciation.test b/tests/language-pronunciation.test
-index c6db1f261..b46df44da 100755
---- a/tests/language-pronunciation.test
-+++ b/tests/language-pronunciation.test
-@@ -50,7 +50,7 @@ test_phonemes fr "Latn" "byv'e d@- s@- (en)w'Iski(fr) k@ l@- patr'O~ Z'yZ fam'Y\
- test_phonemes ga "Latn" "d'u@skIl; 'i:@s@ 'u:rva#k n@ h'o:iQ\"@ b'anIh@ p'o:r 'e:v@ ,0g@s 'A:a#v" "D’fhuascail Ãosa Úrmhac na hÓighe Beannaithe pór Éava agus Ãdhaimh"
- test_phonemes gd "Latn" "m'us d'a:g_:_: k;'E:d;'u:n@ R'O:b 'i: l^'e 'ob" "Mus d’fhàg Cèit-Ùna ròp Ì le ob."
- test_phonemes gn "Latn" "m,aym'a_| ,yByp'o**a_| o'u k'o_| yB'y_| 'a**i_| ,in^ap,yty_!y**'e h'a_| ,ete'i~Sa t,eko**,uBiS,a**eNd'a h'a_| ,akat'uap,e J^,eQu,e**ek'ope\nh'a_| ,ikat'u **up'i_| ,oik,ua'a n^et'eBa h'a_| ,an^et,e_!yB'a\n,ipo**'a~Ba h'a_| ,iBa'iBa\nt,ekoteB'e~ p,eheNgu'eiS,a_| ,oik'o_| ,on^oNd,iBeku'e**a" "Mayma yvypóra ou ko yvy ári iñapyty'yre ha eteĩcha tecoruvicharendá ha acatúape jeguerekópe; ha ikatu rupi oikuaa ñetéva ha añete'yva, iporãva ha ivaíva, tekotevẽ pehenguéicha oiko oñondivekuéra."
--test_phonemes grc "Grek" "hoI_: d'e_: f_: 'o_: 'i_: n_: 'i_: l'et@_|_|f_|_:_: 'e_: s_: h'u:toI_: hoI_: s'yn_: k'admOI:_: 'a_: p_: 'i_: l'et@_|_|f_|_:_: 'o_: m_: 'e_: n_: 'o_: 'i_: es'E:gag,on_: d_: 'i_: d_: 'a_: s_: l'et@_|_|f_|_:_: 'a_: l_: 'i_: 'a_: 'es_: tu:s_: ell'E:nas_: 'aI_: d'E:_: 'aI_: gR'ammat,a_:\n'o_: 'y_: l'et@_|_|f_|_:_: e'onta_: pR'in_: ell'E:si_: h'O:s_: em'oI_: d_: 'o_: l'et@_|_|f_|_:_: 'e_: 'e_: 'i_: n_:\npR'O:ta_: m'en_: t'oIsi_: 'aI_: h'apant,es_: xR'eO:nt,aI_: f_: 'o_: 'i_: n_: 'i_: l'et@_|_|f_|_:_: 'e_: s_:\nmet'a_: d'e_: xR'onu:_: pRob'aInont,os_: h'ama_: tEI:_: O:n'EI:_: met'ebal,on_: 'aI_: ton_: l'et@_|_|f_|_:_: 'y_: l'et@_|_|d_|_:_: m_: 'o_: n_: tO:n_: gRamm'atO:n_:" "Οἱ δὲ Φοίνιϰες οὗτοι οἱ σὺν Κάδμῳ ἀπιϰόμενοι.. á¼Ïƒá½µÎ³Î±Î³Î¿Î½ διδασϰάλια á¼Ï‚ τοὺς ῞Ελληνας ϰαὶ δὴ ϰαὶ γÏάμματα, οá½Ï° á¼á½¹Î½Ï„α Ï€Ïὶν ῞Ελλησι ὡς á¼Î¼Î¿á½¶ δοϰέειν, Ï€Ïῶτα μὲν τοῖσι ϰαὶ ἅπαντες χÏέωνται Φοίνιϰες· μετὰ δὲ χÏόνου Ï€Ïοβαίνοντος ἅμα τῇ ϕωνῇ μετέβαλον ϰαὶ τὸν ϱυϑμὸν τῶν γÏαμμάτων."
-+test_phonemes grc "Grek" "hoI_: d'e_: f'oInik,es_: h'u:toI_: hoI_: s'yn_: k'admOI:_: ,apik'omen,oI_: es'E:gag,on_: d,idask'ali;,a_: 'es_: tu:s_: ell'E:nas_: k'aI_: d'E:_: k'aI_: gR'ammat,a_:\n'u:k_: e'onta_: pR'in_: ell'E:si_: h'O:s_: em'oI_: dok'ee:n_:\npR'O:ta_: m'en_: t'oIsi_: k'aI_: h'apant,es_: xR'eO:nt,aI_: f'oInik,es_:\nmet'a_: d'e_: xR'onu:_: pRob'aInont,os_: h'ama_: tEI:_: fO:n'EI:_: met'ebal,on_: k'aI_: ton_: RyTm'on_: tO:n_: gRamm'atO:n_:" "Οἱ δὲ Φοίνιϰες οὗτοι οἱ σὺν Κάδμῳ ἀπιϰόμενοι.. á¼Ïƒá½µÎ³Î±Î³Î¿Î½ διδασϰάλια á¼Ï‚ τοὺς ῞Ελληνας ϰαὶ δὴ ϰαὶ γÏάμματα, οá½Ï° á¼á½¹Î½Ï„α Ï€Ïὶν ῞Ελλησι ὡς á¼Î¼Î¿á½¶ δοϰέειν, Ï€Ïῶτα μὲν τοῖσι ϰαὶ ἅπαντες χÏέωνται Φοίνιϰες· μετὰ δὲ χÏόνου Ï€Ïοβαίνοντος ἅμα τῇ ϕωνῇ μετέβαλον ϰαὶ τὸν ϱυϑμὸν τῶν γÏαμμάτων."
- test_phonemes gu "Gujr" "d@*'e:k vj@kt'Ine: S,IkS@n.'Vno: Vd#'Ika:r c#'e:\no:c#'a:mV~ 'o:c#u~ pr,a:t#m'Ik 'Vne: pa:j'a:na: t,@bk:a:'o:mV~ SIkS'Vn. m@p#'Vt r@2H'e:Se:\npr,a:t#m'Ik SIkS'Vn. p#,@*JIj'a:t r@2H'e:Se:\nwIS'e:s. w,Ig#a:v,Is.@j'@k 'Vne: vj,@vs'a:ji SIkS'Vn. s,a:ma:nj'@t@H ,Up@l'Vbd# r@2H'e:Se: 'Vne: j,o:gj@t'a:na: d#o:r'Vn. p'Vr 'Uc: SIkS'Vn. pr'a:pt k,@rv'a:no: s@rv'Vne: s@m'a:n Vd#'Ika:r r@2H'e:Se:" "દરેક વà«àª¯àª•à«àª¤àª¿àª¨à«‡ શિકà«àª·àª£àª¨à«‹ અધિકાર છે. ઓછામાં ઓછà«àª‚ પà«àª°àª¾àª¥àª®àª¿àª• અને પાયાના તબકà«àª•àª¾àª“માં શિકà«àª·àª£ મફત રહેશે. પà«àª°àª¾àª¥àª®àª¿àª• શિકà«àª·àª£ ફરજિયાત રહેશે. વિશેષ વિઘાવિષયક અને વà«àª¯àªµàª¸àª¾àª¯à«€ શિકà«àª·àª£ સામાનà«àª¯àª¤àªƒ ઉપલબà«àª§ રહેશે અને યોગà«àª¯àª¤àª¾àª¨àª¾ ધોરણ પર ઉચà«àªš શિકà«àª·àª£ પà«àª°àª¾àªªà«àª¤ કરવાનો સરà«àªµàª¨à«‡ સમાન અધિકાર રહેશે."
- test_phonemes hi "Deva" "r'Is.Ij,o~ ko: s@t'a:ne: v'a:le: d'Us.t. r'a:kS@s,o~ ke: r'a:Ja: r'a:v@n. ka: s,@rv@n'a:S k'Vrn,e: v'a:le: v,Is.n.Uvt'a:r b#,@gv'a:n Sri*'a:m\nVj'o:d#ja: ke: m,aha:*'a:J d'VS@*,@t# ke: b'Vr.e: s@p'Utr@- t#e:" "ऋषियों को सताने वाले दà¥à¤·à¥à¤Ÿ राकà¥à¤·à¤¸à¥‹à¤‚ के राजा रावण का सरà¥à¤µà¤¨à¤¾à¤¶ करने वाले विषà¥à¤£à¥à¤µà¤¤à¤¾à¤° भगवान शà¥à¤°à¥€à¤°à¤¾à¤®, अयोधà¥à¤¯à¤¾ के महाराज दशरथ के बड़े सपà¥à¤¤à¥à¤° थे।"
- test_phonemes hy "Armn" "k@rn'am ,apak'i ut'el j'ev ints'i ,anhang'ist tS#@n'er" "Ô¿Ö€Õ¶Õ¡Õ´ Õ¡ÕºÕ¡Õ¯Õ« Õ¸Ö‚Õ¿Õ¥Õ¬ Ö‡ Õ«Õ¶Õ®Õ« Õ¡Õ¶Õ°Õ¡Õ¶Õ£Õ«Õ½Õ¿ Õ¹Õ¨Õ¶Õ¥Ö€Ö‰"
diff --git a/testing/espeak-ng/fix-newline-expansion.patch b/testing/espeak-ng/fix-newline-expansion.patch
deleted file mode 100644
index b3a65b9aa10..00000000000
--- a/testing/espeak-ng/fix-newline-expansion.patch
+++ /dev/null
@@ -1,22 +0,0 @@
---- a/tests/language-pronunciation.test
-+++ b/tests/language-pronunciation.test
-@@ -14,7 +14,7 @@
- fi
- ESPEAK_DATA_PATH=`pwd` LD_LIBRARY_PATH=src:${LD_LIBRARY_PATH} \
- src/espeak-ng -xq -v ${TEST_LANG} "${TEST_TEXT}" > actual.txt
-- echo "${EXPECTED}" > expected.txt
-+ echo -e "${EXPECTED}" > expected.txt
- if [ x$TEST_BROKEN = xbroken ] ; then
- diff expected.txt actual.txt || (echo "... ignoring error (broken)" && true)
- else
---- a/tests/translate.test
-+++ b/tests/translate.test
-@@ -8,7 +8,7 @@
- echo "testing ${TEST_LANG} \"${TEST_TEXT}\""
- ESPEAK_DATA_PATH=`pwd` LD_LIBRARY_PATH=src:${LD_LIBRARY_PATH} \
- src/espeak-ng -xq -v ${TEST_LANG} "${TEST_TEXT}" > actual.txt
-- echo "${EXPECTED}" > expected.txt
-+ echo -e "${EXPECTED}" > expected.txt
- diff expected.txt actual.txt || exit 1
- }
-
diff --git a/testing/espeakup/APKBUILD b/testing/espeakup/APKBUILD
index a2c119ad03e..9191e5f8fac 100644
--- a/testing/espeakup/APKBUILD
+++ b/testing/espeakup/APKBUILD
@@ -1,7 +1,7 @@
-# Maintainer: Dekedro <dekedro@tankers.xyz>
+# Maintainer: Dekedro <dekedro@protonmail.com>
pkgname=espeakup
pkgver=0.90
-pkgrel=0
+pkgrel=2
pkgdesc="Lightweight connector for espeak and speakup"
url="https://github.com/linux-speakup/espeakup"
arch="all !s390x" # s390x blocked by espeak-ng
@@ -17,7 +17,7 @@ source="$pkgname-$pkgver.tar.gz::https://github.com/linux-speakup/espeakup/archi
build() {
abuild-meson . output
- meson compile ${JOBS:+-j ${JOBS}} -C output
+ meson compile -C output
}
package() {
diff --git a/testing/esptool/APKBUILD b/testing/esptool/APKBUILD
index 6f4a48a8907..df6f1ba1de8 100644
--- a/testing/esptool/APKBUILD
+++ b/testing/esptool/APKBUILD
@@ -2,37 +2,42 @@
# Contributor: Michał Polański <michal@polanski.me>
# Maintainer: Michał Polański <michal@polanski.me>
pkgname=esptool
-pkgver=4.0.1
-pkgrel=0
+pkgver=4.7.0
+pkgrel=1
pkgdesc="ESP8266 and ESP32 serial bootloader utility"
url="https://docs.espressif.com/projects/esptool"
license="GPL-2.0-or-later"
arch="noarch"
-depends="python3 py3-cryptography py3-ecdsa py3-pyserial py3-bitstring py3-reedsolo"
-makedepends="py3-build py3-installer py3-setuptools py3-wheel"
-checkdepends="py3-elftools"
+depends="
+ py3-bitstring
+ py3-cryptography
+ py3-ecdsa
+ py3-intelhex
+ py3-pyserial
+ py3-reedsolo
+ py3-yaml
+ "
+makedepends="py3-gpep517 py3-installer py3-setuptools py3-wheel"
+checkdepends="py3-elftools py3-pkcs11 py3-pytest py3-requests"
+subpackages="$pkgname-pyc"
source="https://github.com/espressif/esptool/archive/v$pkgver/esptool-$pkgver.tar.gz"
build() {
- python3 -m build --no-isolation --wheel
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- python3 -m installer -d testenv \
- dist/esptool-$pkgver-py3-none-any.whl
-
- local sitedir="$(python3 -c 'import site;print(site.getsitepackages()[0])')"
-
- for test in imagegen espsecure merge_bin modules; do
- PYTHONPATH="$PWD/testenv/$sitedir" python3 test/test_$test.py
- done
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest -m host_test
}
package() {
- python3 -m installer -d "$pkgdir" \
- dist/esptool-$pkgver-py3-none-any.whl
+ python3 -m installer -d "$pkgdir" .dist/*.whl
}
sha512sums="
-36f6518f236226fb0800ec533ec8061886686f17ccd0f2ef1db59e938842506dba34958f37645013efa5f71f902a70233f5174961eecf5a5c84ca6485f03d8d6 esptool-4.0.1.tar.gz
+dda2af5d9b2f8a4ec5706eaf58021e95094c152380c732074809c370a5d1bfaeb424cb27f69a3b980dec83ae9c4c9ee1eddfeb0a7990c3b1f1494160a2d369cc esptool-4.7.0.tar.gz
"
diff --git a/testing/etcd/APKBUILD b/testing/etcd/APKBUILD
index c4cd2edcbed..8ab11d8d7ea 100644
--- a/testing/etcd/APKBUILD
+++ b/testing/etcd/APKBUILD
@@ -1,17 +1,17 @@
# Contributor: Francesco Colista <fcolista@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=etcd
-pkgver=3.5.4
+pkgver=3.5.13
pkgrel=1
pkgdesc="A highly-available key value store for shared configuration and service discovery"
-options="chmod-clean"
url="https://github.com/etcd-io/etcd"
license="Apache-2.0"
arch="all"
makedepends="go bash"
install="$pkgname.pre-install"
provides="etcd-api"
-provider_priority=1
+provider_priority=2
+options="net chmod-clean"
pkgusers="etcd"
pkggroups="etcd"
subpackages="$pkgname-doc $pkgname-ctl $pkgname-openrc"
@@ -21,19 +21,14 @@ source="$pkgname-$pkgver.tar.gz::https://github.com/coreos/etcd/archive/v$pkgver
$pkgname.initd
"
-export CGO_ENABLED=0
-
-prepare() {
- default_prepare
- export GOPATH="$(pwd)/_gopath"
- export GOFLAGS="$GOFLAGS -mod=mod"
- _coreos="$GOPATH/src/github.com/etcd-io"
- mkdir -vp $_coreos
- ln -vsf $srcdir/$pkgname-$pkgver $_coreos/$pkgname
-}
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+export GOFLAGS="$GOFLAGS -mod=mod"
+export CGO_ENABLED=1
build() {
- GO_LDFLAGS="-w -s" bash -x ./build
+ bash -x ./build.sh
}
package() {
@@ -41,25 +36,21 @@ package() {
chown -R $pkgusers:$pkggroups "$pkgdir"/var/lib/$pkgname
chmod 700 "$pkgdir"/var/lib/$pkgname
install -Dm755 bin/etcd "$pkgdir"/usr/bin/etcd
+ install -Dm755 bin/etcdctl "$pkgdir"/usr/bin/etcdctl
install -Dm644 $srcdir/$pkgname.yaml-$pkgver "$pkgdir"/etc/etcd/conf.yml
install -Dm644 $srcdir/$pkgname.confd "$pkgdir"/etc/conf.d/$pkgname
install -Dm755 $srcdir/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
}
-cleanup_srcdir() {
- go clean -modcache
- default_cleanup_srcdir
-}
-
ctl() {
pkgdesc="A command-line client for etcd"
- install -Dm755 "$builddir"/bin/etcdctl "$subpkgdir"/usr/bin/etcdctl
+ amove usr/bin/etcdctl
}
sha512sums="
-a4b35618c56a2510f0eec541e911594ea902fe5b5a64942ff057aa2bd73dcf5a236049596726bb507a80241f3b44571115b05f1efabc6f8264f65a7fb69f3602 etcd-3.5.4.tar.gz
-86f726d77a3fbe87908c5a5b6e3c5b81f0b428de05a211fd1ea82058285c1a64898ca8a79ef8458db5ed5fd53d72e3a457eb55c0c297981363edf60d2d28b4af etcd.yaml-3.5.4
+dc85d80079b61e96eb06eb573d41d8972060392e49140a2414c283ea9edfef7b01d5554e50c7ab37c6ad079b373ae12a1b84dbcc533addc1d4d30a2a5abf7b7b etcd-3.5.13.tar.gz
+92e6a22dfe12eef76c186c04a4aadca5318300c18aefc979cc03926fddf40e0e9b3bf2b40b75702f2f710dc65420da676c734cfe4d246d86e0728d6e99f43426 etcd.yaml-3.5.13
8b917d2b3a136a97dd9565a91377420ce1f812bfb10bb0caa95f1024dd366cb78ebb0539f16ddfbc399325d41a6664b856d49c5c9aa67bc27e36040f2227356e etcd.confd
b67f7fd209a29ed2a6ef86d5a3c07cf5dc4138af7c61c3a928471cd79f5579ce7861fd21167db332727dfb2a8e554722366c6505e447f3b2feeae819f869aa11 etcd.initd
"
diff --git a/testing/etcd/etcd.yaml-3.5.13 b/testing/etcd/etcd.yaml-3.5.13
new file mode 100644
index 00000000000..f299e491e1d
--- /dev/null
+++ b/testing/etcd/etcd.yaml-3.5.13
@@ -0,0 +1,143 @@
+# This is the configuration file for the etcd server.
+
+# Human-readable name for this member.
+name: 'default'
+
+# Path to the data directory.
+data-dir: /var/lib/etcd
+
+# Path to the dedicated wal directory.
+wal-dir:
+
+# Number of committed transactions to trigger a snapshot to disk.
+snapshot-count: 10000
+
+# Time (in milliseconds) of a heartbeat interval.
+heartbeat-interval: 100
+
+# Time (in milliseconds) for an election to timeout.
+election-timeout: 1000
+
+# Raise alarms when backend size exceeds the given quota. 0 means use the
+# default quota.
+quota-backend-bytes: 0
+
+# List of comma separated URLs to listen on for peer traffic.
+listen-peer-urls: http://localhost:2380
+
+# List of comma separated URLs to listen on for client traffic.
+listen-client-urls: http://localhost:2379
+
+# Maximum number of snapshot files to retain (0 is unlimited).
+max-snapshots: 5
+
+# Maximum number of wal files to retain (0 is unlimited).
+max-wals: 5
+
+# Comma-separated white list of origins for CORS (cross-origin resource sharing).
+cors:
+
+# List of this member's peer URLs to advertise to the rest of the cluster.
+# The URLs needed to be a comma-separated list.
+initial-advertise-peer-urls: http://localhost:2380
+
+# List of this member's client URLs to advertise to the public.
+# The URLs needed to be a comma-separated list.
+advertise-client-urls: http://localhost:2379
+
+# Discovery URL used to bootstrap the cluster.
+discovery:
+
+# Valid values include 'exit', 'proxy'
+discovery-fallback: 'proxy'
+
+# HTTP proxy to use for traffic to discovery service.
+discovery-proxy:
+
+# DNS domain used to bootstrap initial cluster.
+discovery-srv:
+
+# Initial cluster configuration for bootstrapping.
+initial-cluster:
+
+# Initial cluster token for the etcd cluster during bootstrap.
+initial-cluster-token: 'etcd-cluster'
+
+# Initial cluster state ('new' or 'existing').
+initial-cluster-state: 'new'
+
+# Reject reconfiguration requests that would cause quorum loss.
+strict-reconfig-check: false
+
+# Accept etcd V2 client requests
+enable-v2: true
+
+# Enable runtime profiling data via HTTP server
+enable-pprof: true
+
+# Valid values include 'on', 'readonly', 'off'
+proxy: 'off'
+
+# Time (in milliseconds) an endpoint will be held in a failed state.
+proxy-failure-wait: 5000
+
+# Time (in milliseconds) of the endpoints refresh interval.
+proxy-refresh-interval: 30000
+
+# Time (in milliseconds) for a dial to timeout.
+proxy-dial-timeout: 1000
+
+# Time (in milliseconds) for a write to timeout.
+proxy-write-timeout: 5000
+
+# Time (in milliseconds) for a read to timeout.
+proxy-read-timeout: 0
+
+client-transport-security:
+ # Path to the client server TLS cert file.
+ cert-file:
+
+ # Path to the client server TLS key file.
+ key-file:
+
+ # Enable client cert authentication.
+ client-cert-auth: false
+
+ # Path to the client server TLS trusted CA cert file.
+ trusted-ca-file:
+
+ # Client TLS using generated certificates
+ auto-tls: false
+
+peer-transport-security:
+ # Path to the peer server TLS cert file.
+ cert-file:
+
+ # Path to the peer server TLS key file.
+ key-file:
+
+ # Enable peer client cert authentication.
+ client-cert-auth: false
+
+ # Path to the peer server TLS trusted CA cert file.
+ trusted-ca-file:
+
+ # Peer TLS using generated certificates.
+ auto-tls: false
+
+# The validity period of the self-signed certificate, the unit is year.
+self-signed-cert-validity: 1
+
+# Enable debug-level logging for etcd.
+#log-level: debug
+
+logger: zap
+
+# Specify 'stdout' or 'stderr' to skip journald logging even when running under systemd.
+log-outputs: [stderr]
+
+# Force to create a new one member cluster.
+force-new-cluster: false
+
+auto-compaction-mode: periodic
+auto-compaction-retention: "1"
diff --git a/testing/etcd/etcd.yaml-3.5.4 b/testing/etcd/etcd.yaml-3.5.4
deleted file mode 100644
index dce0c51131d..00000000000
--- a/testing/etcd/etcd.yaml-3.5.4
+++ /dev/null
@@ -1,140 +0,0 @@
-# This is the configuration file for the etcd server.
-
-# Human-readable name for this member.
-name: 'default'
-
-# Path to the data directory.
-data-dir: /var/lib/etcd
-
-# Path to the dedicated wal directory.
-wal-dir:
-
-# Number of committed transactions to trigger a snapshot to disk.
-snapshot-count: 10000
-
-# Time (in milliseconds) of a heartbeat interval.
-heartbeat-interval: 100
-
-# Time (in milliseconds) for an election to timeout.
-election-timeout: 1000
-
-# Raise alarms when backend size exceeds the given quota. 0 means use the
-# default quota.
-quota-backend-bytes: 0
-
-# List of comma separated URLs to listen on for peer traffic.
-listen-peer-urls: http://localhost:2380
-
-# List of comma separated URLs to listen on for client traffic.
-listen-client-urls: http://localhost:2379
-
-# Maximum number of snapshot files to retain (0 is unlimited).
-max-snapshots: 5
-
-# Maximum number of wal files to retain (0 is unlimited).
-max-wals: 5
-
-# Comma-separated white list of origins for CORS (cross-origin resource sharing).
-cors:
-
-# List of this member's peer URLs to advertise to the rest of the cluster.
-# The URLs needed to be a comma-separated list.
-initial-advertise-peer-urls: http://localhost:2380
-
-# List of this member's client URLs to advertise to the public.
-# The URLs needed to be a comma-separated list.
-advertise-client-urls: http://localhost:2379
-
-# Discovery URL used to bootstrap the cluster.
-discovery:
-
-# Valid values include 'exit', 'proxy'
-discovery-fallback: 'proxy'
-
-# HTTP proxy to use for traffic to discovery service.
-discovery-proxy:
-
-# DNS domain used to bootstrap initial cluster.
-discovery-srv:
-
-# Initial cluster configuration for bootstrapping.
-initial-cluster:
-
-# Initial cluster token for the etcd cluster during bootstrap.
-initial-cluster-token: 'etcd-cluster'
-
-# Initial cluster state ('new' or 'existing').
-initial-cluster-state: 'new'
-
-# Reject reconfiguration requests that would cause quorum loss.
-strict-reconfig-check: false
-
-# Accept etcd V2 client requests
-enable-v2: true
-
-# Enable runtime profiling data via HTTP server
-enable-pprof: true
-
-# Valid values include 'on', 'readonly', 'off'
-proxy: 'off'
-
-# Time (in milliseconds) an endpoint will be held in a failed state.
-proxy-failure-wait: 5000
-
-# Time (in milliseconds) of the endpoints refresh interval.
-proxy-refresh-interval: 30000
-
-# Time (in milliseconds) for a dial to timeout.
-proxy-dial-timeout: 1000
-
-# Time (in milliseconds) for a write to timeout.
-proxy-write-timeout: 5000
-
-# Time (in milliseconds) for a read to timeout.
-proxy-read-timeout: 0
-
-client-transport-security:
- # Path to the client server TLS cert file.
- cert-file:
-
- # Path to the client server TLS key file.
- key-file:
-
- # Enable client cert authentication.
- client-cert-auth: false
-
- # Path to the client server TLS trusted CA cert file.
- trusted-ca-file:
-
- # Client TLS using generated certificates
- auto-tls: false
-
-peer-transport-security:
- # Path to the peer server TLS cert file.
- cert-file:
-
- # Path to the peer server TLS key file.
- key-file:
-
- # Enable peer client cert authentication.
- client-cert-auth: false
-
- # Path to the peer server TLS trusted CA cert file.
- trusted-ca-file:
-
- # Peer TLS using generated certificates.
- auto-tls: false
-
-# Enable debug-level logging for etcd.
-debug: false
-
-logger: zap
-
-# Specify 'stdout' or 'stderr' to skip journald logging even when running under systemd.
-log-outputs: [stderr]
-
-# Force to create a new one member cluster.
-force-new-cluster: false
-
-auto-compaction-mode: periodic
-auto-compaction-retention: "1"
diff --git a/testing/ettercap/APKBUILD b/testing/ettercap/APKBUILD
index 3155e58fab0..a4381c13244 100644
--- a/testing/ettercap/APKBUILD
+++ b/testing/ettercap/APKBUILD
@@ -2,45 +2,55 @@
# Maintainer: Karim Kanso <kaz.kanso@gmail.com>
pkgname=ettercap
pkgver=0.8.3.1
-pkgrel=0
+pkgrel=2
pkgdesc="Multipurpose sniffer/interceptor/logger for switched LAN"
url="https://www.ettercap-project.org/"
arch="all"
license="GPL-2.0-or-later"
-makedepends="cmake make gcc musl-dev ncurses-dev curl-dev libpcap-dev
- libnet-dev pcre-dev flex bison linux-headers geoip-dev
- check-dev"
+makedepends="
+ bison
+ check-dev
+ cmake
+ curl-dev
+ flex
+ geoip-dev
+ libnet-dev
+ libpcap-dev
+ linux-headers
+ ncurses-dev
+ pcre-dev
+ samurai
+ "
subpackages="$pkgname-doc lib$pkgname:libs"
source="https://github.com/Ettercap/ettercap/releases/download/v$pkgver/ettercap-$pkgver.tar.gz
none-build-type.patch"
build() {
- mkdir build
- cd build
if [ "$CBUILD" != "$CHOST" ]; then
CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
fi
- cmake \
+ cmake -B build -G Ninja \
-DCMAKE_INSTALL_PREFIX=/usr \
-DBUILD_SHARED_LIBS=True \
-DCMAKE_BUILD_TYPE=None \
- -DCMAKE_C_FLAGS="$CFLAGS" \
$CMAKE_CROSSOPTS \
-DENABLE_GTK=OFF \
-DINSTALL_DESKTOP=OFF \
-DBUNDLED_LIBS=OFF \
- -DENABLE_TESTS=ON \
- ..
- make
+ -DENABLE_TESTS=ON
+
+ cmake --build build
}
check() {
- make -C build test
+ ninja -C build test
}
package() {
- make -C build DESTDIR="$pkgdir" install
+ DESTDIR="$pkgdir" cmake --install build
}
-sha512sums="5e3d79578e16b9a2a90a87dcd9b40696ac8dec439e017cbf60f209402e577e7563062769bb76a470d20d1a14269134b28d57d356380af6b5883e4824656b9807 ettercap-0.8.3.1.tar.gz
-9aae86ee1599b4ffa0b9c0c5acc7939675db12c02d53f0e47d6e18acc513c020e0dbc63812536f8d8716132e0f8aeaf2ff737b0c9d11e8d814074ded82093b7c none-build-type.patch"
+sha512sums="
+5e3d79578e16b9a2a90a87dcd9b40696ac8dec439e017cbf60f209402e577e7563062769bb76a470d20d1a14269134b28d57d356380af6b5883e4824656b9807 ettercap-0.8.3.1.tar.gz
+9aae86ee1599b4ffa0b9c0c5acc7939675db12c02d53f0e47d6e18acc513c020e0dbc63812536f8d8716132e0f8aeaf2ff737b0c9d11e8d814074ded82093b7c none-build-type.patch
+"
diff --git a/testing/eva/APKBUILD b/testing/eva/APKBUILD
index 7ff0194b8b9..3e7649cc584 100644
--- a/testing/eva/APKBUILD
+++ b/testing/eva/APKBUILD
@@ -1,25 +1,25 @@
# Contributor: Michał Polański <michal@polanski.me>
# Maintainer: Michał Polański <michal@polanski.me>
pkgname=eva
-pkgver=0.3.0
-pkgrel=0
+pkgver=0.3.1
+pkgrel=2
pkgdesc="Calculator REPL, similar to bc(1)"
url="https://github.com/nerdypepper/eva"
license="MIT"
arch="all !s390x !riscv64" # limited by rust/cargo
-makedepends="cargo"
+makedepends="cargo cargo-auditable"
source="https://github.com/nerdypepper/eva/archive/v$pkgver/eva-$pkgver.tar.gz
- minimize-size.patch
+ deps.patch
"
prepare() {
default_prepare
- cargo fetch --locked
+ cargo fetch --target="$CTARGET" --locked
}
build() {
- cargo build --frozen --release
+ cargo auditable build --frozen --release
}
check() {
@@ -27,10 +27,10 @@ check() {
}
package() {
- install -Dm755 target/release/eva -t "$pkgdir"/usr/bin
+ install -Dm755 target/release/eva -t "$pkgdir"/usr/bin/
}
sha512sums="
-4bc9837645c8200426a9b52ccb6038a6aab800891c774f5defff515a2de888d2e48d35d4a940e2e6ad3924334b7e4b498ea0bddd7e8cf257d6cef39b1233a035 eva-0.3.0.tar.gz
-654dc4c03b57dda1ae40c75ade906ad29272f68014dfff7a19e4fd10e130b3f8106e43584a4680cf43683e64127176cf588a79fe3f10185f8c2f5d06237e0ce8 minimize-size.patch
+2bc6a14668f321e9dd17aab5d8e93abdc0bb4a6739365a68c33beb9f562e03e7924df0b75ad8ca8236b7c3fefc2b477b7ae8b6fe4da0ab45f40b63be4cb1e3d7 eva-0.3.1.tar.gz
+3ca527afe153d8189254dd4bcb54763e6f79a0893c97668152d407a903740898e71d26883143e13efa06233a8fc714f0776e1c139b8839bee779fdb1ea45f2e7 deps.patch
"
diff --git a/testing/eva/deps.patch b/testing/eva/deps.patch
new file mode 100644
index 00000000000..28477d43218
--- /dev/null
+++ b/testing/eva/deps.patch
@@ -0,0 +1,156 @@
+diff --git a/Cargo.lock b/Cargo.lock
+index 5cd799b..97623c9 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -152,7 +152,7 @@ checksum = "e11dcc7e4d79a8c89b9ab4c6f5c30b1fc4a83c420792da3542fd31179ed5f517"
+ dependencies = [
+ "cfg-if",
+ "rustix",
+- "windows-sys",
++ "windows-sys 0.36.1",
+ ]
+
+ [[package]]
+@@ -177,9 +177,9 @@ dependencies = [
+
+ [[package]]
+ name = "io-lifetimes"
+-version = "0.7.3"
++version = "0.7.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "1ea37f355c05dde75b84bba2d767906ad522e97cd9e2eef2be7a4ab7fb442c06"
++checksum = "59ce5ef949d49ee85593fc4d3f3f95ad61657076395cbbce23e2121fc5542074"
+
+ [[package]]
+ name = "libc"
+@@ -364,16 +364,16 @@ checksum = "a3f87b73ce11b1619a3c6332f45341e0047173771e8b8b73f87bfeefb7b56244"
+
+ [[package]]
+ name = "rustix"
+-version = "0.35.11"
++version = "0.35.13"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "fbb2fda4666def1433b1b05431ab402e42a1084285477222b72d6c564c417cef"
++checksum = "727a1a6d65f786ec22df8a81ca3121107f235970dc1705ed681d3e6e8b9cd5f9"
+ dependencies = [
+ "bitflags",
+ "errno",
+ "io-lifetimes",
+ "libc",
+ "linux-raw-sys",
+- "windows-sys",
++ "windows-sys 0.42.0",
+ ]
+
+ [[package]]
+@@ -442,7 +442,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "8440c860cf79def6164e4a0a983bcc2305d82419177a0e0c71930d049e3ac5a1"
+ dependencies = [
+ "rustix",
+- "windows-sys",
++ "windows-sys 0.36.1",
+ ]
+
+ [[package]]
+@@ -532,39 +532,96 @@ version = "0.36.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "ea04155a16a59f9eab786fe12a4a450e75cdb175f9e0d80da1e17db09f55b8d2"
+ dependencies = [
+- "windows_aarch64_msvc",
+- "windows_i686_gnu",
+- "windows_i686_msvc",
+- "windows_x86_64_gnu",
+- "windows_x86_64_msvc",
++ "windows_aarch64_msvc 0.36.1",
++ "windows_i686_gnu 0.36.1",
++ "windows_i686_msvc 0.36.1",
++ "windows_x86_64_gnu 0.36.1",
++ "windows_x86_64_msvc 0.36.1",
+ ]
+
++[[package]]
++name = "windows-sys"
++version = "0.42.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7"
++dependencies = [
++ "windows_aarch64_gnullvm",
++ "windows_aarch64_msvc 0.42.2",
++ "windows_i686_gnu 0.42.2",
++ "windows_i686_msvc 0.42.2",
++ "windows_x86_64_gnu 0.42.2",
++ "windows_x86_64_gnullvm",
++ "windows_x86_64_msvc 0.42.2",
++]
++
++[[package]]
++name = "windows_aarch64_gnullvm"
++version = "0.42.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8"
++
+ [[package]]
+ name = "windows_aarch64_msvc"
+ version = "0.36.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "9bb8c3fd39ade2d67e9874ac4f3db21f0d710bee00fe7cab16949ec184eeaa47"
+
++[[package]]
++name = "windows_aarch64_msvc"
++version = "0.42.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43"
++
+ [[package]]
+ name = "windows_i686_gnu"
+ version = "0.36.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "180e6ccf01daf4c426b846dfc66db1fc518f074baa793aa7d9b9aaeffad6a3b6"
+
++[[package]]
++name = "windows_i686_gnu"
++version = "0.42.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f"
++
+ [[package]]
+ name = "windows_i686_msvc"
+ version = "0.36.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "e2e7917148b2812d1eeafaeb22a97e4813dfa60a3f8f78ebe204bcc88f12f024"
+
++[[package]]
++name = "windows_i686_msvc"
++version = "0.42.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060"
++
+ [[package]]
+ name = "windows_x86_64_gnu"
+ version = "0.36.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "4dcd171b8776c41b97521e5da127a2d86ad280114807d0b2ab1e462bc764d9e1"
+
++[[package]]
++name = "windows_x86_64_gnu"
++version = "0.42.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36"
++
++[[package]]
++name = "windows_x86_64_gnullvm"
++version = "0.42.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3"
++
+ [[package]]
+ name = "windows_x86_64_msvc"
+ version = "0.36.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "c811ca4a8c853ef420abd8592ba53ddbbac90410fab6903b3e79972a631f7680"
++
++[[package]]
++name = "windows_x86_64_msvc"
++version = "0.42.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0"
diff --git a/testing/eva/minimize-size.patch b/testing/eva/minimize-size.patch
deleted file mode 100644
index 9926f7f1957..00000000000
--- a/testing/eva/minimize-size.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-Minimize binary size.
-
---- a/Cargo.toml
-+++ b/Cargo.toml
-@@ -20,3 +20,9 @@ directories = "2.0.1"
- regex = "1.1.7"
- num = "0.2"
- term_size = "0.3"
-+
-+[profile.release]
-+codegen-units = 1
-+lto = true
-+opt-level = "z"
-+panic = "abort"
diff --git a/testing/evolution-etesync/APKBUILD b/testing/evolution-etesync/APKBUILD
deleted file mode 100644
index 3eada3a8da9..00000000000
--- a/testing/evolution-etesync/APKBUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-# Contributor: pcworld <0188801@gmail.com>
-# Maintainer:
-pkgname=evolution-etesync
-pkgver=1.1.0
-pkgrel=0
-pkgdesc="EteSync plugin for Evolution"
-url="https://gitlab.gnome.org/GNOME/evolution-etesync"
-# s390x and riscv64 blocked by libetebase/rust/cargo
-arch="all !s390x !riscv64"
-license="LGPL-2.1-or-later"
-makedepends="cmake evolution evolution-dev evolution-data-server-dev libetebase libetebase-dev intltool"
-source="$pkgname-$pkgver.tar.gz::https://gitlab.gnome.org/GNOME/evolution-etesync/-/archive/$pkgver/evolution-etesync-$pkgver.tar.gz"
-subpackages="$pkgname-lang"
-
-build() {
- cmake -B build \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DBUILD_SHARED_LIBS=True \
- -DCMAKE_BUILD_TYPE=None .
- cmake --build build
-}
-
-check() {
- cd build
- CTEST_OUTPUT_ON_FAILURE=TRUE ctest
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-
-sha512sums="eb6010794b48b81d5d3f06d894420cba05ac6b7816cdee8897bd98464227a9e679d636d1203be5f2eb9bde49a800920aceeedc33d331a442fbeb65e66c7b15d3 $pkgname-$pkgver.tar.gz"
diff --git a/testing/evolution-on/APKBUILD b/testing/evolution-on/APKBUILD
index f2951306540..72ef3877110 100644
--- a/testing/evolution-on/APKBUILD
+++ b/testing/evolution-on/APKBUILD
@@ -1,4 +1,5 @@
# Contributor: Paul Bredbury <brebs@sent.com>
+# Maintainer:
pkgname=evolution-on
pkgver=3.24.2
pkgrel=0
diff --git a/testing/eww/APKBUILD b/testing/eww/APKBUILD
index c96ee3a3aa7..0c23402bb4d 100644
--- a/testing/eww/APKBUILD
+++ b/testing/eww/APKBUILD
@@ -1,9 +1,8 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=eww
-pkgver=0.2.0_git20220215
-_gitrev=fb0e57a0149904e76fb33807a2804d4af82350de
-pkgrel=0
+pkgver=0.4.0
+pkgrel=1
pkgdesc="ElKowars wacky widgets"
url="https://elkowar.github.io/eww/"
arch="aarch64 x86_64" # blocked by rustup
@@ -12,24 +11,22 @@ license="MIT"
# Don't move this aport out of the testing repo until it can be built with
# our rust!
makedepends="
- rustup
+ cargo-auditable
gtk+3.0-dev
gtk-layer-shell-dev
+ rustup
"
subpackages="$pkgname-dbg"
-source="https://github.com/elkowar/eww/archive/$_gitrev/eww-$_gitrev.tar.gz"
-builddir="$srcdir/$pkgname-$_gitrev"
+source="https://github.com/elkowar/eww/archive/refs/tags/v$pkgver/eww-$pkgver.tar.gz
+ update-cargo-lock.patch
+ "
export CARGO_HOME="$srcdir/.cargo"
export RUSTUP_HOME="$srcdir/.rustup"
export PATH="$CARGO_HOME/bin:$PATH"
-export RUSTFLAGS="-Ctarget-feature=-crt-static"
+export RUSTFLAGS="$RUSTFLAGS -Ctarget-feature=-crt-static"
# Reduce binary size (7.1 -> 4.1 MiB for 0.2.0_git20220215).
-export CARGO_PROFILE_RELEASE_CODEGEN_UNITS=1
-export CARGO_PROFILE_RELEASE_LTO="true"
-export CARGO_PROFILE_RELEASE_OPT_LEVEL="s"
-export CARGO_PROFILE_RELEASE_PANIC="abort"
prepare() {
default_prepare
@@ -41,11 +38,11 @@ prepare() {
--no-modify-path \
-y
- cargo fetch --locked
+ cargo fetch --target="$CARCH-unknown-linux-musl" --locked
}
build() {
- cargo build --frozen --release --no-default-features --features=wayland
+ cargo auditable build --frozen --release --no-default-features --features=wayland
}
check() {
@@ -57,5 +54,6 @@ package() {
}
sha512sums="
-728120fd1c0c797a8f61982dda9e12c92575b6a10ca4c16e4307a752bbaf0263197af4d43b76ed9213f2a6b6d56da7dbf7535ccb1f3548efa4d0610e3884262f eww-fb0e57a0149904e76fb33807a2804d4af82350de.tar.gz
+1979251848fb21dac60b60fb149481aea3201c62a56b34cd2d5fbc8da53a4e9f019db393c9bcd31936f4cd739de295110217b5ecfef734b35d0f1c5cb785e646 eww-0.4.0.tar.gz
+da52a2dfa5e87a0b4c95a118ea1c1f61757ec75a01c79d4f194728eb9c9580fc4be3984205a00bd15977a5530b49bbfdfba57cb7645718b00b9f87fe21f0a445 update-cargo-lock.patch
"
diff --git a/testing/eww/update-cargo-lock.patch b/testing/eww/update-cargo-lock.patch
new file mode 100644
index 00000000000..2a4748e1848
--- /dev/null
+++ b/testing/eww/update-cargo-lock.patch
@@ -0,0 +1,11 @@
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -406,7 +406,7 @@
+
+ [[package]]
+ name = "eww"
+-version = "0.3.0"
++version = "0.4.0"
+ dependencies = [
+ "anyhow",
+ "bincode",
diff --git a/testing/exabgp/APKBUILD b/testing/exabgp/APKBUILD
new file mode 100644
index 00000000000..0f242aa9dff
--- /dev/null
+++ b/testing/exabgp/APKBUILD
@@ -0,0 +1,49 @@
+# Contributor: Sean McAvoy <seanmcavoy@gmail.com>
+# Maintainer: Sean McAvoy <seanmcavoy@gmail.com>
+pkgname=exabgp
+pkgver=4.2.21
+pkgrel=4
+pkgdesc="BGP swiss army knife of networking"
+url="https://github.com/Exa-Networks/exabgp"
+arch="noarch"
+license="BSD-3-Clause"
+depends="py3-six py3-parsing py3-bitstring"
+makedepends="py3-setuptools"
+checkdepends="py3-pytest"
+subpackages="$pkgname-doc $pkgname-openrc $pkgname-pyc"
+pkgusers="exabgp"
+pkggroups="exabgp"
+source="exabgp-$pkgver.tar.gz::https://github.com/Exa-Networks/exabgp/archive/refs/tags/$pkgver.tar.gz
+ exabgp.initd
+ exabgp.confd
+
+ unvendor.patch
+ "
+
+build() {
+ python3 setup.py build
+}
+
+check() {
+ PYTHONPATH="$builddir"/build/lib/ pytest
+}
+
+package() {
+ python3 setup.py install --root="$pkgdir/"
+ rm -rf "$pkgdir"/usr/etc
+ install -Dm644 -t "$pkgdir"/etc/exabgp/ "$builddir"/etc/exabgp/*.conf
+ install -Dm644 -t "$pkgdir"/etc/exabgp/ "$builddir"/etc/exabgp/*.run
+ install -Dm644 -t "$pkgdir"/etc/exabgp/run "$builddir"/etc/exabgp/run/*
+ install -Dm644 "$builddir"/doc/man/exabgp.1 "$pkgdir"/usr/share/man/man1/exabgp.1
+ install -Dm644 "$builddir"/doc/man/exabgp.conf.5 "$pkgdir"/usr/share/man/man5/exabgp.conf.5
+ install -Dm755 "$srcdir"/exabgp.initd "$pkgdir"/etc/init.d/exabgp
+ install -Dm644 "$srcdir"/exabgp.confd "$pkgdir"/etc/conf.d/exabgp
+ PYTHONPATH="$builddir"/build/lib "$pkgdir"/usr/bin/exabgp --fi | sed "s/nobody/$pkgusers/g" > "$pkgdir"/etc/exabgp/exabgp.env
+}
+
+sha512sums="
+0efc7143191e8b557297e9329354c01e2418e0c4c45753941eba3a1f063e77d17a0efa7a14a3062764e45e709f0598f491c10e2c02e751590bb7c0943b61932b exabgp-4.2.21.tar.gz
+0a6ee4116632d1d869216804d6ace385238347a871cf243b29cf3a77ed04366395ef4fdc28e749daf8f28f048e6eb8fd80bc82e74ad1e5f80b782548d7746a34 exabgp.initd
+32d54bfd02f13d75c5d544141a4e3569ae873ab1ea77cb697a4475f18329c5b4e15a59ab0345b77a20bdfbe60e8322eb373af1f8530f96d5be07f4fb69ccba80 exabgp.confd
+3abce29e126ee7706cdd0d2c97593127c1184522b606353332f07872524514e119b884991d9439e0db6e892a69017bcc696f57f462416ea818bf8a8c4c3a0ca6 unvendor.patch
+"
diff --git a/testing/exabgp/exabgp.confd b/testing/exabgp/exabgp.confd
new file mode 100644
index 00000000000..6a1c03b7b4b
--- /dev/null
+++ b/testing/exabgp/exabgp.confd
@@ -0,0 +1,3 @@
+exabgp_user=exabgp
+exabgp_group=exabgp
+exabgp_conf_file=/etc/exabgp/exabgp.conf
diff --git a/testing/exabgp/exabgp.initd b/testing/exabgp/exabgp.initd
new file mode 100644
index 00000000000..1b6cfb44732
--- /dev/null
+++ b/testing/exabgp/exabgp.initd
@@ -0,0 +1,61 @@
+#!/sbin/openrc-run
+
+command="/usr/bin/exabgp"
+command_args="/etc/exabgp/exabgp.conf"
+command_background="true"
+pidfile="/var/run/${RC_SVCNAME}.pid"
+
+extra_started_commands="reload"
+extra_stopped_commands="setup"
+
+description="exabgp daemon"
+description_reload="Reload exabgp using USR1"
+
+
+depend() {
+ use net
+}
+
+start_pre() {
+ required_files="/etc/exabgp/exabgp.env /etc/exabgp/exabgp.conf"
+ for file in $required_files; do
+ case "$file" in
+ *.env)
+ if [ ! -f "$file" ]; then
+ eerror "env file ${file} missing run '/etc/init.d/exabgp setup' to create the file"
+ exit 1
+ fi
+ ;;
+ *.conf)
+ if [ ! -f "$file" ]; then
+ eerror "conf file ${file} does not exist, create manually"
+ exit 1
+ fi
+ ;;
+ *)
+ ;;
+ esac
+ done
+ mkdir /run/exabgp 2>/dev/null
+ if [ ! -p /run/exabgp/exabgp.in ]; then
+ mkfifo /run/exabgp/exabgp.in 2>/dev/null
+ fi
+ if [ ! -p /run/exabgp/exabgp.out ]; then
+ mkfifo /run/exabgp/exabgp.out 2>/dev/null
+ fi
+}
+
+reload() {
+ ebegin "Reloading $name"
+ start-stop-daemon --signal USR1 --pidfile "$pidfile"
+ eend ${?}
+}
+
+setup() {
+ ebegin "Creating /etc/exabgp/exabgp.env with defaults"
+ if [ ! -f "/etc/exabgp/exabgp.env" ]; then
+ "$command" --fi | sed "s/nobody/$exabgp_user/g" > /etc/exabgp/exabgp.env
+ eend ${?}
+ fi
+ eend ${?}
+}
diff --git a/testing/exabgp/exabgp.pre-install b/testing/exabgp/exabgp.pre-install
new file mode 100644
index 00000000000..48e3b8f817a
--- /dev/null
+++ b/testing/exabgp/exabgp.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S exabgp 2>/dev/null
+adduser -S -D -H -h /dev/null -s /sbin/nologin -G exabgp -g exabgp exabgp 2>/dev/null
+
+exit 0
diff --git a/testing/exabgp/unvendor.patch b/testing/exabgp/unvendor.patch
new file mode 100644
index 00000000000..40a54868ff4
--- /dev/null
+++ b/testing/exabgp/unvendor.patch
@@ -0,0 +1,414 @@
+diff --git a/dev/profile/pyprof2calltree.py b/dev/profile/pyprof2calltree.py
+index fc73a1d..668e602 100755
+--- a/dev/profile/pyprof2calltree.py
++++ b/dev/profile/pyprof2calltree.py
+@@ -38,3 +38,3 @@ import tempfile
+
+-from exabgp.vendoring import six
++import six
+
+diff --git a/lib/exabgp/application/bgp.py b/lib/exabgp/application/bgp.py
+index 0780b47..275bc5c 100755
+--- a/lib/exabgp/application/bgp.py
++++ b/lib/exabgp/application/bgp.py
+@@ -24,3 +24,3 @@ from exabgp.reactor.loop import Reactor
+
+-from exabgp.vendoring import docopt
++import docopt
+
+@@ -39,3 +39,3 @@ def __exit(memory, code):
+ if memory:
+- from exabgp.vendoring import objgraph
++ import objgraph
+
+@@ -422,3 +422,3 @@ def run(env, comment, configurations, root, validate, pid=0):
+ finally:
+- from exabgp.vendoring import lsprofcalltree
++ import lsprofcalltree
+
+diff --git a/lib/exabgp/application/cli.py b/lib/exabgp/application/cli.py
+index ab5a10d..e0ba811 100644
+--- a/lib/exabgp/application/cli.py
++++ b/lib/exabgp/application/cli.py
+@@ -26,3 +26,3 @@ from exabgp.reactor.api.response.answer import Answer
+
+-from exabgp.vendoring import docopt
++import docopt
+
+diff --git a/lib/exabgp/application/healthcheck.py b/lib/exabgp/application/healthcheck.py
+index a2d0789..8705785 100644
+--- a/lib/exabgp/application/healthcheck.py
++++ b/lib/exabgp/application/healthcheck.py
+@@ -59,4 +59,4 @@ logger = logging.getLogger("healthcheck")
+ # Python 3.3+ or backport
+-from exabgp.vendoring.ipaddress import ip_network # pylint: disable=F0401
+-from exabgp.vendoring.ipaddress import ip_address # pylint: disable=F0401
++from ipaddress import ip_network # pylint: disable=F0401
++from ipaddress import ip_address # pylint: disable=F0401
+
+diff --git a/lib/exabgp/bgp/message/open/capability/capabilities.py b/lib/exabgp/bgp/message/open/capability/capabilities.py
+index 210542c..1a7962d 100644
+--- a/lib/exabgp/bgp/message/open/capability/capabilities.py
++++ b/lib/exabgp/bgp/message/open/capability/capabilities.py
+@@ -9,3 +9,3 @@ License: 3-clause BSD. (See the COPYRIGHT file)
+
+-from exabgp.vendoring import six
++import six
+
+diff --git a/lib/exabgp/bgp/message/open/capability/graceful.py b/lib/exabgp/bgp/message/open/capability/graceful.py
+index 8f87693..2950ff1 100644
+--- a/lib/exabgp/bgp/message/open/capability/graceful.py
++++ b/lib/exabgp/bgp/message/open/capability/graceful.py
+@@ -12,3 +12,3 @@ from struct import unpack
+
+-from exabgp.vendoring import six
++import six
+
+diff --git a/lib/exabgp/bgp/message/update/attribute/attributes.py b/lib/exabgp/bgp/message/update/attribute/attributes.py
+index d0f1a80..04c56e0 100644
+--- a/lib/exabgp/bgp/message/update/attribute/attributes.py
++++ b/lib/exabgp/bgp/message/update/attribute/attributes.py
+@@ -32,3 +32,3 @@ from exabgp.logger import LazyAttribute
+
+-from exabgp.vendoring import six
++import six
+
+diff --git a/lib/exabgp/bgp/message/update/attribute/bgpls/link/admingroup.py b/lib/exabgp/bgp/message/update/attribute/bgpls/link/admingroup.py
+index c21b570..49bfc86 100644
+--- a/lib/exabgp/bgp/message/update/attribute/bgpls/link/admingroup.py
++++ b/lib/exabgp/bgp/message/update/attribute/bgpls/link/admingroup.py
+@@ -8,3 +8,3 @@ Copyright (c) 2014-2017 Exa Networks. All rights reserved.
+
+-from exabgp.vendoring.bitstring import BitArray
++from bitstring import BitArray
+ from exabgp.bgp.message.notification import Notify
+diff --git a/lib/exabgp/bgp/message/update/attribute/bgpls/link/igpmetric.py b/lib/exabgp/bgp/message/update/attribute/bgpls/link/igpmetric.py
+index c57ba19..0fe5ba1 100644
+--- a/lib/exabgp/bgp/message/update/attribute/bgpls/link/igpmetric.py
++++ b/lib/exabgp/bgp/message/update/attribute/bgpls/link/igpmetric.py
+@@ -9,5 +9,5 @@ Copyright (c) 2014-2017 Exa Networks. All rights reserved.
+ from struct import unpack
+-from exabgp.vendoring import six
++import six
+
+-from exabgp.vendoring.bitstring import BitArray
++from bitstring import BitArray
+ from exabgp.bgp.message.notification import Notify
+diff --git a/lib/exabgp/bgp/message/update/attribute/bgpls/link/sradj.py b/lib/exabgp/bgp/message/update/attribute/bgpls/link/sradj.py
+index b6dc588..2276a09 100644
+--- a/lib/exabgp/bgp/message/update/attribute/bgpls/link/sradj.py
++++ b/lib/exabgp/bgp/message/update/attribute/bgpls/link/sradj.py
+@@ -10,6 +10,6 @@ import json
+ from struct import unpack
+-from exabgp.vendoring import six
++import six
+ from exabgp.util import hexstring
+
+-from exabgp.vendoring.bitstring import BitArray
++from bitstring import BitArray
+ from exabgp.bgp.message.update.attribute.bgpls.linkstate import LINKSTATE, LsGenericFlags
+diff --git a/lib/exabgp/bgp/message/update/attribute/bgpls/link/sradjlan.py b/lib/exabgp/bgp/message/update/attribute/bgpls/link/sradjlan.py
+index 4ec1b82..0d6255a 100644
+--- a/lib/exabgp/bgp/message/update/attribute/bgpls/link/sradjlan.py
++++ b/lib/exabgp/bgp/message/update/attribute/bgpls/link/sradjlan.py
+@@ -10,6 +10,6 @@ import json
+ from struct import unpack
+-from exabgp.vendoring import six
++import six
+ from exabgp.util import hexstring
+
+-from exabgp.vendoring.bitstring import BitArray
++from bitstring import BitArray
+ from exabgp.protocol.iso import ISO
+diff --git a/lib/exabgp/bgp/message/update/attribute/bgpls/linkstate.py b/lib/exabgp/bgp/message/update/attribute/bgpls/linkstate.py
+index c1ae183..d596a76 100644
+--- a/lib/exabgp/bgp/message/update/attribute/bgpls/linkstate.py
++++ b/lib/exabgp/bgp/message/update/attribute/bgpls/linkstate.py
+@@ -13,3 +13,3 @@ from struct import unpack
+ from exabgp.util import concat_strs
+-from exabgp.vendoring.bitstring import BitArray
++from bitstring import BitArray
+ from exabgp.bgp.message.notification import Notify
+diff --git a/lib/exabgp/bgp/message/update/attribute/bgpls/node/isisarea.py b/lib/exabgp/bgp/message/update/attribute/bgpls/node/isisarea.py
+index 7644105..f4ba7d4 100644
+--- a/lib/exabgp/bgp/message/update/attribute/bgpls/node/isisarea.py
++++ b/lib/exabgp/bgp/message/update/attribute/bgpls/node/isisarea.py
+@@ -8,3 +8,3 @@ Copyright (c) 2014-2017 Exa Networks. All rights reserved.
+
+-from exabgp.vendoring.bitstring import BitArray
++from bitstring import BitArray
+
+diff --git a/lib/exabgp/bgp/message/update/attribute/bgpls/node/sralgo.py b/lib/exabgp/bgp/message/update/attribute/bgpls/node/sralgo.py
+index 0afe8f5..572fd15 100644
+--- a/lib/exabgp/bgp/message/update/attribute/bgpls/node/sralgo.py
++++ b/lib/exabgp/bgp/message/update/attribute/bgpls/node/sralgo.py
+@@ -10,3 +10,3 @@ import json
+ from struct import unpack
+-from exabgp.vendoring import six
++import six
+
+diff --git a/lib/exabgp/bgp/message/update/attribute/bgpls/node/srcap.py b/lib/exabgp/bgp/message/update/attribute/bgpls/node/srcap.py
+index c5ef17c..ab8662c 100644
+--- a/lib/exabgp/bgp/message/update/attribute/bgpls/node/srcap.py
++++ b/lib/exabgp/bgp/message/update/attribute/bgpls/node/srcap.py
+@@ -11,3 +11,3 @@ from struct import unpack
+
+-from exabgp.vendoring.bitstring import BitArray
++from bitstring import BitArray
+ from exabgp.bgp.message.update.attribute.bgpls.linkstate import LINKSTATE, LsGenericFlags
+diff --git a/lib/exabgp/bgp/message/update/attribute/bgpls/prefix/prefixmetric.py b/lib/exabgp/bgp/message/update/attribute/bgpls/prefix/prefixmetric.py
+index be76423..686c009 100644
+--- a/lib/exabgp/bgp/message/update/attribute/bgpls/prefix/prefixmetric.py
++++ b/lib/exabgp/bgp/message/update/attribute/bgpls/prefix/prefixmetric.py
+@@ -10,3 +10,3 @@ from struct import unpack
+
+-from exabgp.vendoring.bitstring import BitArray
++from bitstring import BitArray
+ from exabgp.bgp.message.notification import Notify
+diff --git a/lib/exabgp/bgp/message/update/attribute/bgpls/prefix/srprefix.py b/lib/exabgp/bgp/message/update/attribute/bgpls/prefix/srprefix.py
+index bb991e5..7f791dc 100644
+--- a/lib/exabgp/bgp/message/update/attribute/bgpls/prefix/srprefix.py
++++ b/lib/exabgp/bgp/message/update/attribute/bgpls/prefix/srprefix.py
+@@ -10,6 +10,6 @@ import json
+ from struct import unpack
+-from exabgp.vendoring import six
++import six
+ from exabgp.util import hexstring
+
+-from exabgp.vendoring.bitstring import BitArray
++from bitstring import BitArray
+ from exabgp.bgp.message.notification import Notify
+diff --git a/lib/exabgp/bgp/message/update/attribute/mprnlri.py b/lib/exabgp/bgp/message/update/attribute/mprnlri.py
+index 95b8da1..871f8a8 100644
+--- a/lib/exabgp/bgp/message/update/attribute/mprnlri.py
++++ b/lib/exabgp/bgp/message/update/attribute/mprnlri.py
+@@ -11,3 +11,3 @@ from struct import unpack
+
+-from exabgp.vendoring import six
++import six
+ from exabgp.util import concat_bytes
+diff --git a/lib/exabgp/bgp/message/update/attribute/sr/prefixsid.py b/lib/exabgp/bgp/message/update/attribute/sr/prefixsid.py
+index 9d7c5a6..b529f2c 100644
+--- a/lib/exabgp/bgp/message/update/attribute/sr/prefixsid.py
++++ b/lib/exabgp/bgp/message/update/attribute/sr/prefixsid.py
+@@ -10,3 +10,3 @@ import binascii
+ from struct import unpack
+-from exabgp.vendoring import six
++import six
+
+diff --git a/lib/exabgp/bgp/message/update/attribute/sr/srgb.py b/lib/exabgp/bgp/message/update/attribute/sr/srgb.py
+index 540d23e..c56ea59 100644
+--- a/lib/exabgp/bgp/message/update/attribute/sr/srgb.py
++++ b/lib/exabgp/bgp/message/update/attribute/sr/srgb.py
+@@ -11,3 +11,3 @@ from struct import pack
+ from exabgp.util import concat_bytes
+-from exabgp.vendoring.bitstring import BitArray
++from bitstring import BitArray
+ from exabgp.bgp.message.notification import Notify
+diff --git a/lib/exabgp/bgp/message/update/nlri/bgpls/tlvs/ipreach.py b/lib/exabgp/bgp/message/update/nlri/bgpls/tlvs/ipreach.py
+index 706fe86..23d62b3 100644
+--- a/lib/exabgp/bgp/message/update/nlri/bgpls/tlvs/ipreach.py
++++ b/lib/exabgp/bgp/message/update/nlri/bgpls/tlvs/ipreach.py
+@@ -12,3 +12,3 @@ from struct import unpack
+ import math
+-from exabgp.vendoring import ipaddress
++import ipaddress
+
+diff --git a/lib/exabgp/bgp/message/update/nlri/vpls.py b/lib/exabgp/bgp/message/update/nlri/vpls.py
+index 0c9e329..033d254 100644
+--- a/lib/exabgp/bgp/message/update/nlri/vpls.py
++++ b/lib/exabgp/bgp/message/update/nlri/vpls.py
+@@ -12,3 +12,3 @@ from struct import unpack
+ from struct import pack
+-from exabgp.vendoring import six
++import six
+ from exabgp.util import concat_bytes
+diff --git a/lib/exabgp/bgp/neighbor.py b/lib/exabgp/bgp/neighbor.py
+index dd26570..461a25a 100644
+--- a/lib/exabgp/bgp/neighbor.py
++++ b/lib/exabgp/bgp/neighbor.py
+@@ -18,3 +18,3 @@ try:
+ except ImportError:
+- from exabgp.vendoring.counter import Counter
++ from counter import Counter
+
+diff --git a/lib/exabgp/configuration/configuration.py b/lib/exabgp/configuration/configuration.py
+index f84a25d..0688be6 100644
+--- a/lib/exabgp/configuration/configuration.py
++++ b/lib/exabgp/configuration/configuration.py
+@@ -12,3 +12,3 @@ import sys
+
+-from exabgp.vendoring import six
++import six
+
+diff --git a/lib/exabgp/configuration/core/scope.py b/lib/exabgp/configuration/core/scope.py
+index 70352b8..cb2aed7 100644
+--- a/lib/exabgp/configuration/core/scope.py
++++ b/lib/exabgp/configuration/core/scope.py
+@@ -13,3 +13,3 @@ import pprint
+ # from copy import deepcopy
+-from exabgp.vendoring import six
++import six
+ from exabgp.protocol.ip import IP
+diff --git a/lib/exabgp/configuration/core/tokeniser.py b/lib/exabgp/configuration/core/tokeniser.py
+index 9164bba..90273c7 100644
+--- a/lib/exabgp/configuration/core/tokeniser.py
++++ b/lib/exabgp/configuration/core/tokeniser.py
+@@ -12,3 +12,3 @@ from exabgp.protocol.family import AFI
+ from collections import deque
+-from exabgp.vendoring import six
++import six
+
+diff --git a/lib/exabgp/configuration/environment.py b/lib/exabgp/configuration/environment.py
+index 20e98d3..cde47fb 100644
+--- a/lib/exabgp/configuration/environment.py
++++ b/lib/exabgp/configuration/environment.py
+@@ -317,3 +317,3 @@ class environment(object):
+
+-from exabgp.vendoring.six.moves import configparser as ConfigParser
++from six.moves import configparser as ConfigParser
+ from exabgp.util.hashtable import HashTable
+diff --git a/lib/exabgp/protocol/iso/__init__.py b/lib/exabgp/protocol/iso/__init__.py
+index fb483d3..fa6a5f2 100644
+--- a/lib/exabgp/protocol/iso/__init__.py
++++ b/lib/exabgp/protocol/iso/__init__.py
+@@ -12,3 +12,3 @@ Copyright (c) 2009-2017 Exa Networks. All rights reserved.
+
+-from exabgp.vendoring.bitstring import BitArray
++from bitstring import BitArray
+
+diff --git a/lib/exabgp/reactor/api/response/json.py b/lib/exabgp/reactor/api/response/json.py
+index a1fb6e5..6467fa2 100755
+--- a/lib/exabgp/reactor/api/response/json.py
++++ b/lib/exabgp/reactor/api/response/json.py
+@@ -16,3 +16,3 @@ import signal
+
+-from exabgp.vendoring import six
++import six
+
+diff --git a/lib/exabgp/reactor/asynchronous.py b/lib/exabgp/reactor/asynchronous.py
+index 837a4ff..6f5bcc2 100644
+--- a/lib/exabgp/reactor/asynchronous.py
++++ b/lib/exabgp/reactor/asynchronous.py
+@@ -12,3 +12,3 @@ from collections import deque
+ from exabgp.logger import Logger
+-from exabgp.vendoring import six
++import six
+
+diff --git a/lib/exabgp/reactor/keepalive.py b/lib/exabgp/reactor/keepalive.py
+index 3ad9937..f986e9a 100644
+--- a/lib/exabgp/reactor/keepalive.py
++++ b/lib/exabgp/reactor/keepalive.py
+@@ -8,3 +8,3 @@ Copyright (c) 2017-2017 Exa Networks. All rights reserved.
+
+-from exabgp.vendoring import six
++import six
+
+diff --git a/lib/exabgp/reactor/network/outgoing.py b/lib/exabgp/reactor/network/outgoing.py
+index 892342d..94d9180 100644
+--- a/lib/exabgp/reactor/network/outgoing.py
++++ b/lib/exabgp/reactor/network/outgoing.py
+@@ -2,3 +2,3 @@ import time
+
+-from exabgp.vendoring import six
++import six
+
+diff --git a/lib/exabgp/reactor/peer.py b/lib/exabgp/reactor/peer.py
+index e1ffb7c..9ae1029 100644
+--- a/lib/exabgp/reactor/peer.py
++++ b/lib/exabgp/reactor/peer.py
+@@ -13,3 +13,3 @@ from collections import defaultdict
+ # import traceback
+-from exabgp.vendoring import six
++import six
+ from exabgp.util import ordinal
+diff --git a/lib/exabgp/reactor/protocol.py b/lib/exabgp/reactor/protocol.py
+index 1c4b038..fef51ad 100644
+--- a/lib/exabgp/reactor/protocol.py
++++ b/lib/exabgp/reactor/protocol.py
+@@ -11,3 +11,3 @@ import os
+
+-from exabgp.vendoring import six
++import six
+ import traceback
+diff --git a/lib/exabgp/rib/outgoing.py b/lib/exabgp/rib/outgoing.py
+index a360bad..90d3b93 100644
+--- a/lib/exabgp/rib/outgoing.py
++++ b/lib/exabgp/rib/outgoing.py
+@@ -23,3 +23,3 @@ if sys.version_info[0] >= 3 and sys.version_info[1] >= 6:
+ else:
+- from exabgp.vendoring.ordereddict import OrderedDict as RIBdict
++ from ordereddict import OrderedDict as RIBdict
+
+diff --git a/lib/exabgp/util/coroutine.py b/lib/exabgp/util/coroutine.py
+index a54b0bd..7e6bbbb 100644
+--- a/lib/exabgp/util/coroutine.py
++++ b/lib/exabgp/util/coroutine.py
+@@ -10,3 +10,3 @@ License: 3-clause BSD. (See the COPYRIGHT file)
+ from functools import wraps
+-from exabgp.vendoring import six
++import six
+
+diff --git a/lib/exabgp/util/trace.py b/lib/exabgp/util/trace.py
+index a5a3a91..f23acb2 100644
+--- a/lib/exabgp/util/trace.py
++++ b/lib/exabgp/util/trace.py
+@@ -11,3 +11,3 @@ import traceback
+
+-from exabgp.vendoring.six.moves import StringIO
++from six.moves import StringIO
+
+diff --git a/lib/exabgp/vendoring/cmd2.py b/lib/exabgp/vendoring/cmd2.py
+index 9b179ec..d7e5c38 100644
+--- a/lib/exabgp/vendoring/cmd2.py
++++ b/lib/exabgp/vendoring/cmd2.py
+@@ -40,6 +40,6 @@ import platform
+ import copy
+-from exabgp.vendoring import six
++import six
+ from code import InteractiveConsole, InteractiveInterpreter
+ from optparse import make_option
+-from exabgp.vendoring import pyparsing
++import pyparsing
+
+diff --git a/lib/exabgp/vendoring/six.py b/lib/exabgp/vendoring/six.py
+index 20e866a..218e9d6 100644
+--- a/lib/exabgp/vendoring/six.py
++++ b/lib/exabgp/vendoring/six.py
+@@ -162,3 +162,3 @@ class _SixMetaPathImporter(object):
+ """
+- A meta path importer to from exabgp.vendoring import six.moves and its submodules.
++ A meta path importer to import six.moves and its submodules.
+
+diff --git a/qa/tests/cache_test.py b/qa/tests/cache_test.py
+index 3a8dc94..721f85c 100755
+--- a/qa/tests/cache_test.py
++++ b/qa/tests/cache_test.py
+@@ -14,5 +14,5 @@ import time
+ from exabgp.util.cache import Cache
+-from exabgp.vendoring import six
++import six
+
+-from exabgp.vendoring.six.moves import xrange
++from six.moves import xrange
+
+diff --git a/qa/tests/connection.py b/qa/tests/connection.py
+index 1586daf..8092ea5 100755
+--- a/qa/tests/connection.py
++++ b/qa/tests/connection.py
+@@ -17,3 +17,3 @@ import unittest
+ from exabgp.util.od import od
+-from exabgp.vendoring import six
++import six
+
+diff --git a/qa/tests/protocol.py b/qa/tests/protocol.py
+index 67e8e21..31c8a03 100755
+--- a/qa/tests/protocol.py
++++ b/qa/tests/protocol.py
+@@ -25,4 +25,4 @@ from exabgp.bgp.neighbor import Neighbor
+
+-from exabgp.vendoring import six
+-from exabgp.vendoring.six.moves import StringIO
++import six
++from six.moves import StringIO
+
diff --git a/testing/exercism/APKBUILD b/testing/exercism/APKBUILD
index f415f484d5a..2ff0539b671 100644
--- a/testing/exercism/APKBUILD
+++ b/testing/exercism/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Dmitry Zakharchenko <dmitz@disroot.org>
# Maintainer: Dmitry Zakharchenko <dmitz@disroot.org>
pkgname=exercism
-pkgver=3.0.13
-pkgrel=3
+pkgver=3.2.0
+pkgrel=4
pkgdesc="Command-line client for exercism.io"
url="https://github.com/exercism/cli"
arch="all"
@@ -14,9 +14,14 @@ subpackages="
$pkgname-fish-completion
$pkgname-zsh-completion
"
-source="$pkgname-$pkgver.tar.gz::$url/archive/v$pkgver.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/exercism/cli/archive/v$pkgver.tar.gz"
builddir="$srcdir"/cli-$pkgver
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+export GOFLAGS="$GOFLAGS -modcacherw"
+
prepare() {
default_prepare
@@ -25,9 +30,6 @@ prepare() {
}
build() {
- export GOPATH="$srcdir"
- export GOFLAGS="$GOFLAGS -modcacherw"
-
go build -o bin/exercism exercism/main.go
}
@@ -37,11 +39,11 @@ package() {
install -Dm644 shell/exercism_completion.bash \
"$pkgdir"/usr/share/bash-completion/completions/$pkgname
install -Dm644 shell/exercism.fish \
- "$pkgdir"/usr/share/fish/completions/$pkgname.fish
+ "$pkgdir"/usr/share/fish/vendor_completions.d/$pkgname.fish
install -Dm644 shell/exercism_completion.zsh \
"$pkgdir"/usr/share/zsh/site-functions/_$pkgname
}
sha512sums="
-559886abe6325295fbd2b469c6cf06321fcf04d1593870d5db7df1cd33f94d38acc846edd80c70de6e7eb4dde881102792a7a052179665468f99559bac382e24 exercism-3.0.13.tar.gz
+1d874652caf9845ab2f2e9da96083b29e903f4ba3de3c9dd16185a291d3cb5e224fe2264129fd47ed3eed2918f366b7d96e6aeaafb2db8a94cc7e39556756b46 exercism-3.2.0.tar.gz
"
diff --git a/testing/exoscale/APKBUILD b/testing/exoscale/APKBUILD
deleted file mode 100644
index aafb6648bb0..00000000000
--- a/testing/exoscale/APKBUILD
+++ /dev/null
@@ -1,38 +0,0 @@
-# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
-# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
-pkgname=exoscale
-pkgver=1.53.0
-pkgrel=1
-pkgdesc="Command-line tool for everything at Exoscale"
-url="https://github.com/exoscale/cli"
-arch="all"
-license="Apache-2.0"
-makedepends="go"
-_gomkrev="29048924e7010732530539de67407bb2715e181b"
-source="https://github.com/exoscale/cli/archive/refs/tags/v$pkgver/exoscale-$pkgver.tar.gz
- https://github.com/exoscale/go.mk/archive/$_gomkrev/go.mk-$_gomkrev.tar.gz
- "
-builddir="$srcdir/cli-$pkgver"
-
-prepare() {
- default_prepare
-
- mv "$srcdir"/go.mk-$_gomkrev/* go.mk/
-}
-
-build() {
- go build -o exo -ldflags "-X main.version=$pkgver"
-}
-
-check() {
- go test github.com/exoscale/cli/cmd
-}
-
-package() {
- install -Dm755 exo -t "$pkgdir"/usr/bin
-}
-
-sha512sums="
-471c7024cdddb7734218fc942bb38593de759d408c859c135672d7bbf870c554dabb6eaf216ca20616e0b2d4eea487731f2142b39fda7daea5104f077bce99a1 exoscale-1.53.0.tar.gz
-76ff5e33b58dd95ad2e89dd5d301c157ebf55ec5781433b09fdce8579bd4674c1efc85a64bb542515ae88ab933e6d5813ba108cc44e68b2644f20e94269e41a3 go.mk-29048924e7010732530539de67407bb2715e181b.tar.gz
-"
diff --git a/testing/extrace/APKBUILD b/testing/extrace/APKBUILD
new file mode 100644
index 00000000000..f0c9d8e8cbd
--- /dev/null
+++ b/testing/extrace/APKBUILD
@@ -0,0 +1,25 @@
+# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=extrace
+pkgver=0.9
+pkgrel=0
+pkgdesc="Trace exec() calls system-wide"
+url="https://github.com/leahneukirchen/extrace"
+arch="all"
+license="BSD-2-Clause AND GPL-2.0-or-later"
+makedepends="linux-headers"
+subpackages="$pkgname-doc"
+source="https://github.com/leahneukirchen/extrace/archive/v$pkgver/extrace-$pkgver.tar.gz"
+options="!check" # no test suite
+
+build() {
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" PREFIX="/usr" install
+}
+
+sha512sums="
+dfc2abaccf9e24428b1e3eacb12d11bb304d6a854f11d0be546d536369f8e0e9c81d52fd2a8f242f7d342c121693e7e3cadf5f9650cff5e81232b0853200b1bc extrace-0.9.tar.gz
+"
diff --git a/testing/extremetuxracer/APKBUILD b/testing/extremetuxracer/APKBUILD
index 3847418b0fe..52353b721f1 100644
--- a/testing/extremetuxracer/APKBUILD
+++ b/testing/extremetuxracer/APKBUILD
@@ -1,10 +1,10 @@
# Contributor: Danct12 <danct12@disroot.org>
# Maintainer: Danct12 <danct12@disroot.org>
pkgname=extremetuxracer
-pkgver=0.8.1
+pkgver=0.8.3
pkgrel=0
pkgdesc="Downhill racing game starring Tux"
-url="https://sourceforge.net/projects/extremetuxracer"
+url="https://sourceforge.net/projects/extremetuxracer/"
arch="all"
license="GPL-2.0-only"
makedepends="sfml-dev glu-dev freetype-dev"
@@ -26,5 +26,5 @@ package() {
}
sha512sums="
-ebb3224d28acf1c7f0dff9d63169ad2b814a6dfb42b3451faeacaeec874a1e8a502e7936150fc5c98c83b8bd10480c8ba479e3455c5b3a4de89cf83c4b9af4f5 etr-0.8.1.tar.xz
+75b6f2b4d7260216fb8b5bee1412ed929712e6de04a3b32ecf65ad747c6bff30e5eb5bedde24dca0afaec816c847860d9c589c66cdff08aa4bdcec224e727f1f etr-0.8.3.tar.xz
"
diff --git a/testing/extundelete/APKBUILD b/testing/extundelete/APKBUILD
index 5127da58ad8..625466be7ce 100644
--- a/testing/extundelete/APKBUILD
+++ b/testing/extundelete/APKBUILD
@@ -2,9 +2,9 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=extundelete
pkgver=0.2.4
-pkgrel=0
+pkgrel=1
pkgdesc="Utility for recovering deleted files from ext2, ext3 or ext4 partitions by parsing the journal"
-url="http://extundelete.sourceforge.net"
+url="https://extundelete.sourceforge.net/"
arch="all"
license="GPL-2.0"
makedepends="e2fsprogs-dev"
diff --git a/testing/f3/APKBUILD b/testing/f3/APKBUILD
index 41e7aa4a7e2..fd57efae833 100644
--- a/testing/f3/APKBUILD
+++ b/testing/f3/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=f3
pkgver=8.0
-pkgrel=0
+pkgrel=1
pkgdesc="F3 - Fight Flash Fraud"
url="http://oss.digirati.com.br/f3/"
arch="all"
diff --git a/testing/f_scripts/APKBUILD b/testing/f_scripts/APKBUILD
index 3d6962e5e3b..f068478fdcb 100644
--- a/testing/f_scripts/APKBUILD
+++ b/testing/f_scripts/APKBUILD
@@ -1,14 +1,14 @@
-# Maintainer: Miles Alan <m@milesalan.com>
+# Maintainer: Bobby Hamblin <hamblingreen@hotmail.com>
# Contributor: Miles Alan <m@milesalan.com>
pkgname=f_scripts
-pkgver=0.4
-pkgrel=0
+pkgver=0.5
+pkgrel=2
pkgdesc="Framebufferphone prompt-driven scripts which are compatible with fbp"
-url="http://git.sr.ht/~mil/f_scripts"
+url="http://git.sr.ht/~hamblingreen/f_scripts"
arch="noarch"
license="GPL-3.0-or-later"
depends="oil"
-source="$pkgname-$pkgver.tar.gz::http://git.sr.ht/~mil/f_scripts/archive/$pkgver.tar.gz"
+source="$pkgname-$pkgver.tar.gz::http://git.sr.ht/~hamblingreen/f_scripts/archive/$pkgver.tar.gz"
options="!check" # Has no tests
subpackages="
$pkgname-f_audio
@@ -54,13 +54,13 @@ f_maps() {
f_networks() {
pkgdesc="$pkgname - f_networks script, Allows managing gsm/wpa connections via underlying nmcli calls"
- depends="$depends networkmanager"
+ depends="$depends networkmanager dnsmasq networkmanager networkmanager-cli networkmanager-openrc networkmanager-tui networkmanager-wifi networkmanager-wwan"
install -Dm755 "$builddir"/scripts/f_networks "$subpkgdir/usr/bin/f_networks"
}
f_phone() {
pkgdesc="$pkgname - f_phone script, Manages phone calls / text messages using modemmanager"
- depends="$depends polkit modemmanager linuxconsoletools pinephone-call-audio pn"
+ depends="$depends polkit modemmanager linuxconsoletools pn"
install -Dm755 "$builddir"/scripts/f_phone "$subpkgdir/usr/bin/f_phone"
}
@@ -95,5 +95,5 @@ f_youtube() {
}
sha512sums="
-bf26a628ce084f613e2b5954e3f2566c4e99ce98ec6cf93976ce9028e70e841bb4813f0eaa6328bbbcf8dfeab8176c3d5c355579be8459840e68127cf5fb4a4a f_scripts-0.4.tar.gz
+2e07ccf037835bdfc7f6528cb73a270098e94a81dab9cec2efc8641aa9a398d26a6d010f3ecdb0a4948b2865627e846315d50f0c27e836b526ff130394b69c0f f_scripts-0.5.tar.gz
"
diff --git a/testing/fabric/APKBUILD b/testing/fabric/APKBUILD
index 5a63e68559f..f15b8e017ec 100644
--- a/testing/fabric/APKBUILD
+++ b/testing/fabric/APKBUILD
@@ -2,24 +2,39 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=fabric
_pkgname=fabric
-pkgver=2.6.0
-pkgrel=2
+pkgver=3.2.2
+pkgrel=1
pkgdesc="simple pythonic remote deployment tool"
options="!check" # Fails to find 'fabfile' module
url="https://www.fabfile.org/"
arch="noarch"
license="BSD-2-Clause"
-depends="py3-paramiko py3-invoke"
-makedepends="py3-setuptools"
+depends="
+ py3-decorator
+ py3-deprecated
+ py3-invoke
+ py3-paramiko
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
checkdepends="py3-pytest py3-mock"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
-sha512sums="22c430bff6c4d93fec5231999949cb1959c11ec06754e62a88776a9d62db1b30788214dd0b873252559fdf41441389585170c0b53a4d7af7fe4f5a36dc85fb4d fabric-2.6.0.tar.gz"
+sha512sums="
+1af5526d5af2e55eaf76b1a11eb359b32d86f31201584a2e8b14443ae42807a11c218c2edabafa3eb91993ca7d9d78f705717ee875563ac5ff4d8dbc8a42ee4e fabric-3.2.2.tar.gz
+"
diff --git a/testing/fakeroot-tcp/APKBUILD b/testing/fakeroot-tcp/APKBUILD
index ca694a00c59..7d5448a7c3e 100644
--- a/testing/fakeroot-tcp/APKBUILD
+++ b/testing/fakeroot-tcp/APKBUILD
@@ -1,24 +1,29 @@
-# Maintainer:
+# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=fakeroot-tcp
-pkgver=1.25.3
-pkgrel=0
+pkgver=1.32.1
+pkgrel=1
pkgdesc="Gives a fake root environment, useful for building packages as a non-privileged user"
arch="all"
license="GPL-3.0-or-later"
url="https://packages.debian.org/fakeroot"
provides="fakeroot"
+provider_priority=1
checkdepends="bash"
-makedepends_build="libtool autoconf automake po4a"
+makedepends_build="libtool autoconf automake"
makedepends_host="libcap-dev acl-dev linux-headers"
makedepends="$makedepends_build $makedepends_host"
-subpackages="$pkgname-doc"
builddir="$srcdir/fakeroot-$pkgver"
source="https://deb.debian.org/debian/pool/main/f/fakeroot/fakeroot_$pkgver.orig.tar.gz
fakeroot-no64.patch
fakeroot-stdint.patch
xstatjunk.patch
fix-shell-in-fakeroot.patch
+ fakeroot-skip-ipc-sanity-check.patch
+ do-not-redefine-id_t.patch
+ fix-format.patch
"
+# compared to non-tcp, this one seems to fail
+options="!check"
prepare() {
default_prepare
@@ -26,7 +31,10 @@ prepare() {
}
build() {
- CFLAGS="-D_STAT_VER=0 $CFLAGS" \
+ # musl does not have _STAT_VER, it's really not used for
+ # anything, so define it as zero (just like uclibc does)
+ export CFLAGS="$CFLAGS -D_STAT_VER=0 $CFLAGS"
+
CONFIG_SHELL=/bin/sh ./configure \
--build=$CBUILD \
--host=$CHOST \
@@ -35,8 +43,6 @@ build() {
--with-ipc=tcp
make
- cd doc
- po4a -k 0 --rm-backups --variable "srcdir=../doc/" po4a/po4a.cfg
}
check() {
@@ -45,12 +51,16 @@ check() {
package() {
make DESTDIR="$pkgdir" install
+ rm -r "$pkgdir"/usr/share/man
}
sha512sums="
-b54366ef82b49af414d7214d069a4bc7dd188dfa4f8e3121f6bd65fd67268b02346ff72e857087243ab0efe9fa82faaa9f9c3309cac4b5af0ea00908c2e5eb6e fakeroot_1.25.3.orig.tar.gz
+fe8263ca9b90e4df253311e5331721a8783260a1058b307d10ffbde47724fc24df584806b17af4477be47d90dc553abe6a476e02cf8ce2aebdd94357ff7d7f09 fakeroot_1.32.1.orig.tar.gz
7a832e6bed3838c7c488e0e12ba84b8d256e84bbb06d6020247452a991de505fa5c6bd7bcb84dce8753eb242e0fcab863b5461301cd56695f2b003fe8d6ff209 fakeroot-no64.patch
ed7a58b0d201139545420f9e5429f503c00e00f36dea84473e77ea99b23bb8d421da1a8a8ce98ff90e72e378dff4cb9ea3c1a863a969899a5f50dfac3b9c5fac fakeroot-stdint.patch
-5efd33fd778bd94a529ed7e439fb8fea25ff865dda3f6f9e431264e942b37f3b5d7a0ad14107b55c5fa81b86efd5a82aedb3803cfab08ec57f27f5b229d2fe88 xstatjunk.patch
+70bf7609a5951326ac7372a252a15516f96a1ee6e458a659b16f0e4f1e2db6556482c71178d4b2f10e5ebdc0abfb7a3cc97c9878984e60cdf6e7d7281790e1fc xstatjunk.patch
47593b3d86a66bab832c50a1d967cdc70e42bbd9ef4436f18140067ccefdd6418516e5157102c67e604f3623ed1b9f4fe1423fc5dad4dfe5356fc250c12818a7 fix-shell-in-fakeroot.patch
+9a3faf924891deb36fab8f200489ad6154df262735b563dea46283afcdc83d12d32b00db33848f2a5c52d0b4422942863247577634e37b9d693f2b3a398a0f1d fakeroot-skip-ipc-sanity-check.patch
+e07162ec511c38261ad2540864f922ee03f5daa1d5d23729879c9993d62b2ffebc27eab29f3eb522ddb10b052241e58b67265914ef9100b1911948e874bf53a1 do-not-redefine-id_t.patch
+481fac0b2b7388fbf8c6140311da856df1b8facfe331d04f2bc6275c766b8a81c1e07971ffd131aaf8416b8cda1f52fa4ed6d5f6ba913f69efe119288c016d78 fix-format.patch
"
diff --git a/testing/fakeroot-tcp/do-not-redefine-id_t.patch b/testing/fakeroot-tcp/do-not-redefine-id_t.patch
new file mode 100644
index 00000000000..4d3bab190f8
--- /dev/null
+++ b/testing/fakeroot-tcp/do-not-redefine-id_t.patch
@@ -0,0 +1,21 @@
+musl defines id_t as unsigned but doesn't use the _ID_T to detect its
+definition. This causes the type to be redefined as an int by fakeroot
+which causes a compilation error.
+
+diff -upr fakeroot-1.27.orig/libfakeroot.c fakeroot-1.27/libfakeroot.c
+--- fakeroot-1.27.orig/libfakeroot.c 2022-01-30 11:30:25.198506844 +0100
++++ fakeroot-1.27/libfakeroot.c 2022-01-30 11:30:41.928524429 +0100
+@@ -133,13 +133,6 @@
+ #define INT_SEND_STAT(a,b) SEND_STAT(a,b,_STAT_VER)
+ #define INT_SEND_GET_XATTR(a,b) SEND_GET_XATTR(a,b,_STAT_VER)
+ #define INT_SEND_GET_STAT(a,b) SEND_GET_STAT(a,b)
+-
+-/* 10.10 uses id_t in getpriority/setpriority calls, so pretend
+- id_t is used everywhere, just happens to be int on some OSes */
+-#ifndef _ID_T
+-#define _ID_T
+-typedef int id_t;
+-#endif
+ #endif
+
+ #include <sys/types.h>
diff --git a/testing/fakeroot-tcp/fakeroot-skip-ipc-sanity-check.patch b/testing/fakeroot-tcp/fakeroot-skip-ipc-sanity-check.patch
new file mode 100644
index 00000000000..9541973c049
--- /dev/null
+++ b/testing/fakeroot-tcp/fakeroot-skip-ipc-sanity-check.patch
@@ -0,0 +1,59 @@
+This patch was original added in aports commit
+439b449b68ebf3462a3f659804c41195e2d8d8ae. It
+seems to be needed since this sanity checks
+fails spuriously when cros compiling fakeroot.
+
+diff -upr fakeroot-1.27.orig/configure.ac fakeroot-1.27/configure.ac
+--- fakeroot-1.27.orig/configure.ac 2022-01-30 10:43:52.992260063 +0100
++++ fakeroot-1.27/configure.ac 2022-01-30 10:46:22.989526929 +0100
+@@ -25,50 +25,6 @@ AC_CACHE_CHECK([which IPC method to use]
+ [ac_cv_use_ipc],
+ [ac_cv_use_ipc=sysv])
+
+-if test $ac_cv_use_ipc = "sysv"; then
+- AC_MSG_CHECKING([whether SysV IPC message queues are actually working on the host])
+-
+- AC_LANG_PUSH(C)
+- AC_RUN_IFELSE([AC_LANG_SOURCE([[
+-#include <stdlib.h>
+-#include <sys/types.h>
+-#include <sys/ipc.h>
+-#include <sys/msg.h>
+-#include <time.h>
+-#include <unistd.h>
+-
+-int main() {
+-
+- srandom(time(NULL)+getpid()*33151);
+- key_t msg_key = random();
+- int msg_get = msgget(msg_key, IPC_CREAT|0600);
+-
+- if (msg_get==-1) {
+- return 1;
+- } else {
+- msgctl(msg_get, IPC_RMID, NULL);
+- return 0;
+- }
+-
+-}]])],[ac_cv_use_ipc=sysv],[ac_cv_use_ipc=tcp],[ac_cv_use_ipc=cross])
+-
+- if test $ac_cv_use_ipc = cross; then
+- if test "$host_os" = linux-gnu; then
+- ac_cv_use_ipc=sysv
+- AC_MSG_RESULT([cross, guessing yes])
+- else
+- (set -o posix; set)
+- AC_MSG_ERROR([cross compiling, unknown result for $host_os])
+- fi
+- elif test $ac_cv_use_ipc = "tcp"; then
+- AC_MSG_RESULT([No, using TCP])
+- else
+- AC_MSG_RESULT([Yes])
+- fi
+-
+- AC_LANG_POP(C)
+-fi
+-
+ AC_ARG_WITH([dbformat],
+ AS_HELP_STRING([--with-dbformat@<:@=DBFORMAT@:>@],
+ [database format to use: either inode (default) or path]),
diff --git a/testing/fakeroot-tcp/fix-format.patch b/testing/fakeroot-tcp/fix-format.patch
new file mode 100644
index 00000000000..8f8639647aa
--- /dev/null
+++ b/testing/fakeroot-tcp/fix-format.patch
@@ -0,0 +1,25 @@
+Fakeroot defines custom fake_dev_t/fake_ino_t as uint64_t
+but doesn't use the PRIu64 format specifier from inttypes.h
+to print them thereby relying on a specific representation
+of these types.
+
+diff -upr fakeroot-1.27.orig/faked.c fakeroot-1.27/faked.c
+--- fakeroot-1.27.orig/faked.c 2022-01-17 21:37:21.000000000 +0100
++++ fakeroot-1.27/faked.c 2022-01-30 11:36:59.963019225 +0100
+@@ -121,6 +121,7 @@
+ #include <stdlib.h>
+ #include <string.h>
+ #include <signal.h>
++#include <inttypes.h>
+ #ifdef HAVE_STDINT_H
+ # include <stdint.h>
+ #endif
+@@ -687,7 +688,7 @@ int load_database(const uint32_t remote)
+ /* */
+ /*********************************/
+ void debug_stat(const struct fakestat *st){
+- fprintf(stderr,"dev:ino=(%llx:%lli), mode=0%lo, own=(%li,%li), nlink=%li, rdev=%lli\n",
++ fprintf(stderr,"dev:ino=(%"PRIx64":%"PRIu64"), mode=0%lo, own=(%li,%li), nlink=%li, rdev=%"PRIu64"\n",
+ st->dev,
+ st->ino,
+ (long)st->mode,
diff --git a/testing/fakeroot-tcp/xstatjunk.patch b/testing/fakeroot-tcp/xstatjunk.patch
index 12f2759b48f..bda4469980d 100644
--- a/testing/fakeroot-tcp/xstatjunk.patch
+++ b/testing/fakeroot-tcp/xstatjunk.patch
@@ -1,10 +1,12 @@
---- fakeroot-1.18.4.orig/configure.ac 2012-06-02 18:23:41.000000000 +0000
-+++ fakeroot-1.18.4configure.ac 2015-09-24 23:15:56.917470073 +0000
-@@ -301,7 +301,7 @@
+diff --git a/configure.ac b/configure.ac
+index 9613183..e4a9bbc 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -385,7 +385,7 @@ for SEARCH in %stat f%stat l%stat f%statat %stat64 f%stat64 l%stat64 f%statat64
FUNC=`echo $SEARCH|sed -e 's/.*%//'`
PRE=`echo $SEARCH|sed -e 's/%.*//'`
FOUND=
-- for WRAPPED in __${PRE}x${FUNC} _${PRE}x${FUNC} __${PRE}${FUNC}13 ${PRE}${FUNC}; do
+- for WRAPPED in __${PRE}x${FUNC} _${PRE}x${FUNC} __${PRE}${FUNC}13 ${PRE}${FUNC} __${PRE}${FUNC}; do
+ for WRAPPED in ${PRE}${FUNC}; do
AC_CHECK_FUNCS($WRAPPED,FOUND=$WRAPPED)
dnl
diff --git a/testing/fasd/APKBUILD b/testing/fasd/APKBUILD
deleted file mode 100644
index 470c8dd7bfa..00000000000
--- a/testing/fasd/APKBUILD
+++ /dev/null
@@ -1,25 +0,0 @@
-# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
-pkgname=fasd
-pkgver=1.0.1
-pkgrel=0
-pkgdesc="Command-line productivity booster, offers quick access to files and directories"
-url="https://github.com/clvv/fasd"
-arch="all"
-license="MIT"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/clvv/$pkgname/archive/$pkgver.tar.gz"
-builddir="$srcdir/$pkgname-$pkgver"
-
-prepare() {
- default_prepare
-
- sed -i 's|^#!/usr/bin/env sh|#!/bin/sh|' fasd
-}
-
-package() {
- cd "$builddir"
- make install DESTDIR="$pkgdir" PREFIX=/usr
-}
-
-sha512sums="0f68fe5501379738894ba8fd0495a137398b6d0196aac040028c45ae486ec040ea7c2e4521f6ad43b5d22f48d048dbc734716f5e7400e3b2b3184f820e969a19 fasd-1.0.1.tar.gz"
diff --git a/testing/fast_float/APKBUILD b/testing/fast_float/APKBUILD
new file mode 100644
index 00000000000..71d2cb73e1f
--- /dev/null
+++ b/testing/fast_float/APKBUILD
@@ -0,0 +1,47 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
+pkgname=fast_float
+pkgver=5.2.0
+pkgrel=1
+_tests=97a0b2e638feb479387554cf253e346500541e7e
+pkgdesc="Fast implementation of the C++ from_chars functions for float and double types"
+url="https://github.com/fastfloat/fast_float"
+arch="noarch"
+license="Apache-2.0 OR MIT"
+makedepends="cmake samurai"
+checkdepends="doctest-dev"
+source="https://github.com/fastfloat/fast_float/archive/v$pkgver/fast_float-$pkgver.tar.gz
+ https://github.com/fastfloat/supplemental_test_files/archive/$_tests.tar.gz
+ "
+
+prepare() {
+ default_prepare
+
+ mkdir -p builddir/_deps
+ mv "$srcdir"/supplemental_test_files-$_tests \
+ builddir/_deps/supplemental_test_files-src
+}
+
+build() {
+ cmake -B builddir -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_DATAROOTDIR=/usr/lib \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DFASTFLOAT_TEST="$(want_check && echo ON || echo OFF)" \
+ -DSYSTEM_DOCTEST=ON \
+ -DFETCHCONTENT_FULLY_DISCONNECTED=ON
+ cmake --build builddir
+}
+
+check() {
+ ctest --output-on-failure --test-dir builddir
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install builddir
+}
+
+sha512sums="
+c703c7cba3c69775317c66a62ce145646fd7d3d063124501e3d6a7deebb8c62c14a2ccdffed18de2d73d9d3a8ba2061ef1d34cc780ee0b6d607935d5f1b1de81 fast_float-5.2.0.tar.gz
+f2714a5d406c4e1f7a6e180a95d795edaa9033e6988955b76143884c020a9c379754474aa92f739a7f1feb9ac2d6c8d3bdb4ebe8bd23ab4b352ab809821eb43a 97a0b2e638feb479387554cf253e346500541e7e.tar.gz
+"
diff --git a/testing/fastd/APKBUILD b/testing/fastd/APKBUILD
index 409a88cc005..040f9fa273d 100644
--- a/testing/fastd/APKBUILD
+++ b/testing/fastd/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Johannes Matheis <jomat+alpinebuild@jmt.gr>
-# Maintainer: Johannes Matheis <jomat+alpinebuild@jmt.gr>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=fastd
pkgver=22
-pkgrel=0
+pkgrel=3
pkgdesc="Fast and Secure Tunneling Daemon"
url="https://github.com/NeoRaider/fastd/"
arch="all"
@@ -23,11 +23,11 @@ build() {
-Dsystemd=disabled \
-Dbuild_tests="$(options_has !check && echo false || echo true)" \
. output
- meson compile ${JOBS:+-j ${JOBS}} -C output
+ meson compile -C output
}
check() {
- meson test --no-rebuild -v -C output
+ meson test --no-rebuild --print-errorlogs -C output
}
package() {
diff --git a/testing/fatback/APKBUILD b/testing/fatback/APKBUILD
index 4a758f31a82..5236883e31e 100644
--- a/testing/fatback/APKBUILD
+++ b/testing/fatback/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=fatback
pkgver=1.3
-pkgrel=1
+pkgrel=2
pkgdesc="A tool for recovering files from FAT file systems"
url="https://sourceforge.net/projects/fatback/"
arch="all"
diff --git a/testing/fathom/APKBUILD b/testing/fathom/APKBUILD
new file mode 100644
index 00000000000..5fead0eb1db
--- /dev/null
+++ b/testing/fathom/APKBUILD
@@ -0,0 +1,38 @@
+# Contributor: Edd Salkield <edd@salkield.uk>
+# Maintainer: Edd Salkield <edd@salkield.uk>
+pkgname=fathom
+pkgver=1.3.1
+pkgrel=5
+pkgdesc="Privacy-focused website analytics"
+url="https://github.com/usefathom/fathom"
+arch="all"
+license="MIT"
+makedepends="npm go sqlite-dev"
+source="https://github.com/usefathom/fathom/archive/v$pkgver/fathom-v$pkgver.tar.gz"
+
+export GOFLAGS="$GOFLAGS -tags=libsqlite3"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+prepare() {
+ default_prepare
+ npm ci
+ go mod vendor
+}
+
+build() {
+ go build -mod=mod -o fathom ./main.go
+}
+
+check() {
+ make test
+}
+
+package() {
+ install -Dm755 fathom "$pkgdir/usr/bin/fathom"
+}
+
+sha512sums="
+077887e753698d347ae3d0c199b085593a9f6bb38a04b7f3ad8df3889e104ceedd0ff92caa3f8cf1abb2adbdc0d6c3fcccc7c7ff711b757926605de6f8481d62 fathom-v1.3.1.tar.gz
+"
diff --git a/testing/fatrace/APKBUILD b/testing/fatrace/APKBUILD
index cc3ae1d777a..dce20f0f764 100644
--- a/testing/fatrace/APKBUILD
+++ b/testing/fatrace/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Michał Polański <michal@polanski.me>
# Maintainer: Michał Polański <michal@polanski.me>
pkgname=fatrace
-pkgver=0.16.3
+pkgver=0.17.0
pkgrel=0
pkgdesc="Report system wide file access events"
url="https://github.com/martinpitt/fatrace"
@@ -21,5 +21,5 @@ package() {
}
sha512sums="
-54ffcf4da48c0bd43373322d29352dfd50d8bd0cff8bba172ec30881fcdc4fa9fa3bcdcb86396331baada42ec87a03b4005b4d1a1c95e4e5c947395a80b61839 fatrace-0.16.3.tar.gz
+b84bd4f1197a095fec0f9a6fe7a32e8dbf6978652f5062574c7fe7c16bcf48670b09abc0ab0a5624c5abebba2c1a7b0c1c2d20c400553aae84e9a3b37bdc90de fatrace-0.17.0.tar.gz
"
diff --git a/testing/fatresize/APKBUILD b/testing/fatresize/APKBUILD
index 50b9f2aa8fd..8c877342929 100644
--- a/testing/fatresize/APKBUILD
+++ b/testing/fatresize/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=fatresize
pkgver=1.1.0
-pkgrel=0
+pkgrel=1
pkgdesc="The FAT16/FAT32 non-destructive resizer."
url="https://sourceforge.net/projects/fatresize/"
arch="all"
diff --git a/testing/faultstat/APKBUILD b/testing/faultstat/APKBUILD
index ad2b20df5ea..8f770afbc2f 100644
--- a/testing/faultstat/APKBUILD
+++ b/testing/faultstat/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Milan P. Stanić <mps@arvanta.net>
# Maintainer: Milan P. Stanić <mps@arvanta.net>
pkgname=faultstat
-pkgver=0.01.07
+pkgver=0.01.11
pkgrel=0
pkgdesc="page fault monitoring tool"
url="https://github.com/ColinIanKing/faultstat"
@@ -23,5 +23,5 @@ package() {
}
sha512sums="
-981c0f7c1c3c2978dfffec3bd5dffcea45e2126baefbffb4b7ea4047cfe6492d9c7602d29c7c16ddf3bc43c04cf86b2ebf76395839443081e0840662264e9772 faultstat-0.01.07.tar.gz
+5fcc9a58e5b9532156254c2721ac104ad1bbb0bc77e3d5fadde25e66c042be2441d907d274e2501aa5c43365269016fa962345318edf4266b9a5f632102e8bf1 faultstat-0.01.11.tar.gz
"
diff --git a/testing/faust/APKBUILD b/testing/faust/APKBUILD
index 01f1ca90b78..f585a26c498 100644
--- a/testing/faust/APKBUILD
+++ b/testing/faust/APKBUILD
@@ -1,19 +1,21 @@
# Contributor: Francesco Camuffo <dev@fmac.xyz>
# Maintainer: Francesco Camuffo <dev@fmac.xyz>
pkgname=faust
-pkgver=2.37.3
-pkgrel=0
+pkgver=2.60.3
+pkgrel=2
+_llvmver=16
pkgdesc="Functional programming language for realtime audio signal processing"
url="https://faust.grame.fr"
-arch="all !armhf !armv7" # ftbfs
+arch="all"
license="GPL-2.0-or-later"
-checkdepends="bash"
+# all faust* tools are bash
+depends="bash"
+depends_dev="$pkgname-tools=$pkgver-r$pkgrel"
makedepends="
cmake
- libexecinfo-dev
libmicrohttpd-dev
libsndfile-dev
- llvm-dev
+ llvm$_llvmver-dev
samurai
"
subpackages="
@@ -24,28 +26,37 @@ subpackages="
$pkgname-vim::noarch
"
source="$pkgname-$pkgver.tar.gz::https://github.com/grame-cncm/faust/releases/download/$pkgver/faust-$pkgver.tar.gz
- faust-musl-stacktrace.patch
- faust-tests-old-libraries.patch
+ busybox.patch
+ gcc13.patch
+ no-execinfo.patch
+ usage.patch
"
+prepare() {
+ default_prepare
+
+ # XXX: if the tests compile this faust segfaults
+ rm -v examples/physicalModeling/fds/2dKirchhoffThinPlate.dsp
+}
+
build() {
- cmake -B "$pkgname"-build \
- -G Ninja \
+ cmake -B "$pkgname"-build -G Ninja \
-S build \
-C build/backends/all.cmake \
-C build/targets/all.cmake \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr \
-DINCLUDE_DYNAMIC=ON \
- -DINCLUDE_STATIC=ON \
+ -DINCLUDE_STATIC=OFF \
-DINCLUDE_ITP=ON \
+ -DLLVM_CONFIG=/usr/lib/llvm$_llvmver/bin/llvm-config \
-Wno-dev
- VERBOSE=1 cmake --build "$pkgname"-build
- make VERBOSE=1 -C tools/sound2faust
+ cmake --build "$pkgname"-build
+ make VERBOSE=1 -C tools/sound2faust sound2faust sound2file
}
check() {
- make interp -C tests/compile-tests
+ make interp llvm -C tests/compile-tests
}
package() {
@@ -58,14 +69,27 @@ package() {
"$pkgdir"/usr/share/faust/AU \
"$pkgdir"/usr/share/faust/android \
"$pkgdir"/usr/share/faust/iOS \
- "$pkgdir"/usr/share/faust/smartKeyboard
+ "$pkgdir"/usr/share/faust/smartKeyboard \
+ "$pkgdir"/usr/share/faust/max-msp/sndfile
# rename generically named usage script
mv "$pkgdir"/usr/bin/usage.sh "$pkgdir"/usr/bin/faust-usage.sh
+
+ install -Dm644 syntax-highlighting/faust.vim \
+ -t "$pkgdir"/usr/share/vim/vimfiles/syntax/
+}
+
+doc() {
+ default_doc
+
+ amove usr/share/faust/examples
}
dev() {
pkgdesc="$pkgdesc (development files)"
- amove usr/include/* \
+ depends="$depends_dev"
+ amove \
+ usr/bin/faust-config \
+ usr/include/* \
usr/lib/*.so
}
@@ -81,12 +105,13 @@ vim() {
pkgdesc="$pkgdesc (vim syntax)"
install_if="vim $pkgname=$pkgver-r$pkgrel"
- cd "$builddir"/syntax-highlighting
- install -Dm644 faust.vim -t "$subpkgdir"/usr/share/vim/vimfiles/syntax/
+ amove usr/share/vim/vimfiles
}
sha512sums="
-29c27c1d4b71f63e5a42abdb1557e88ac9d623242a85df16478756a7bcbc3fe78466ace1280ea6a3cd04c979201e52a703f7be53b8a047dcc1f8fa7e034ef26d faust-2.37.3.tar.gz
-f3e07bdd26ab8f0ffbf0c0dfbf8141facc07d2db05346f3b982faca613aa5ecad8986683db8d49caed720d58b183b215d6e1c4ceef069f29f41bcfa699ad5f28 faust-musl-stacktrace.patch
-fe0b800809ea1fcb4fd44e306eff7f01b9316ddc3406bdc52f0e783a3710b5b8e6e05a5925766e4fd73666cc6ca9f42027f608c7f7dbe44436b28e1787703595 faust-tests-old-libraries.patch
+cdb31a519f5615ecdb36336d67de524b10acfc6e5449fea1a5a154a37d29f028c3db1ac0ba5f3bb9e0a39e00057397724dd5ad711fbab2ceacfb4cc1dee3e011 faust-2.60.3.tar.gz
+2e2aae4b3fe760e41b3a9b1b82edc9cfac674944efb41c296e1c71f80763cbadc72544e0cbd7f5048095322779c3d432838ea66d32376a29b95bb08fe8c25e96 busybox.patch
+edb822664f2277e58af82f6e339668c11a822880928646fddc21f4c245e81b70f9bc5e2892008dfe5c56a23b46aa50c40607f6ccca3a42029b7a21b0bf317302 gcc13.patch
+fb1ef67a0c1ba56ba98e5c85935566c263a7b51a44c8ffd1789f7379b9bd14cbb2b373392e70c1c9974163559dbed910be3af64ccd3198633758998dee5c7bb2 no-execinfo.patch
+ac45a55400970952daf7918f48b3d13efd06d5b3ffc1fa41e71d83eb3f53b31031fec353ab74e40c66667dbc3c6b32b2b38249a7e85c890221374cada38d4285 usage.patch
"
diff --git a/testing/faust/busybox.patch b/testing/faust/busybox.patch
new file mode 100644
index 00000000000..9e632dfdd61
--- /dev/null
+++ b/testing/faust/busybox.patch
@@ -0,0 +1,28 @@
+ls -f doesn't exist so just pass the install location
+--
+diff --git a/tools/faust2appls/faust2lv2 b/tools/faust2appls/faust2lv2
+index 8fa948f..7527385 100755
+--- a/tools/faust2appls/faust2lv2
++++ b/tools/faust2appls/faust2lv2
+@@ -21,7 +21,7 @@
+ # that you can run the script from the faust-lv2 source directory. You can
+ # also specify this explicitly by setting the FAUSTLIB environment variable
+ # accordingly.
+-[ -z "$FAUSTLIB" ] && FAUSTLIB=$(dirname "$((ls -f /usr/share/faust/lv2ui.cpp /usr/local/share/faust/lv2ui.cpp /opt/local/share/faust/lv2ui.cpp "$PWD/lv2ui.cpp" 2>/dev/null)|tail -1)")
++[ -z "$FAUSTLIB" ] && FAUSTLIB=/usr/share/faust
+ [ -z "$FAUSTLIB" ] && FAUSTLIB="$PWD"
+
+ # defaults (these can be changed with the options listed below)
+diff --git a/tools/faust2appls/faust2pure b/tools/faust2appls/faust2pure
+index 265e4c4..e50478d 100755
+--- a/tools/faust2appls/faust2pure
++++ b/tools/faust2appls/faust2pure
+@@ -6,7 +6,7 @@
+ # locations here, and fall back to the current directory if the file isn't
+ # found. You can also specify this explicitly by setting the FAUSTLIB
+ # environment variable accordingly.
+-[ -z "$FAUSTLIB" ] && FAUSTLIB=$(dirname "$((ls -f /usr/share/faust/pure.cpp /usr/local/share/faust/pure.cpp /opt/local/share/faust/pure.cpp "$PWD/pure.cpp" 2>/dev/null)|tail -1)")
++[ -z "$FAUSTLIB" ] && FAUSTLIB=/usr/share/faust
+ [ -z "$FAUSTLIB" ] && FAUSTLIB="$PWD"
+
+ # defaults (these can be changed with the options listed below)
diff --git a/testing/faust/faust-musl-stacktrace.patch b/testing/faust/faust-musl-stacktrace.patch
deleted file mode 100644
index 8472a9e5990..00000000000
--- a/testing/faust/faust-musl-stacktrace.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-https://github.com/void-linux/void-packages/blob/ebf9ad105986ec27a9d8a794318df3016df2ee13/srcpkgs/faust/patches/faust-musl-stacktrace.patch
-
---- a/compiler/errors/errormsg.cpp-old 2019-12-22 19:47:17.694670614 +0100
-+++ b/compiler/errors/errormsg.cpp 2019-12-22 19:48:25.145673133 +0100
-@@ -43,9 +43,11 @@
- gGlobal->printCompilationOptions(str);
- }
- str << ")\n";
-+#ifdef __GLIBC__
- #ifndef EMCC
- stacktrace(str, 20);
- #endif
-+#endif
- throw faustexception(str.str());
- }
- }
diff --git a/testing/faust/faust-tests-old-libraries.patch b/testing/faust/faust-tests-old-libraries.patch
deleted file mode 100644
index 26f3d53e0e1..00000000000
--- a/testing/faust/faust-tests-old-libraries.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From 974d4da02b525261d934a9eb70e41a1c4ee309c3 Mon Sep 17 00:00:00 2001
-From: Stephane Letz <letz@grame.fr>
-Date: Fri, 7 Jan 2022 18:27:52 +0100
-Subject: [PATCH] Correct compile-tests to be used even if faust is not
- installed.
-
----
- tests/compile-tests/Make.lang | 7 ++++---
- 1 file changed, 4 insertions(+), 3 deletions(-)
-
-diff --git a/tests/compile-tests/Make.lang b/tests/compile-tests/Make.lang
-index 3e27a69ac..7fd5ffa9b 100644
---- a/tests/compile-tests/Make.lang
-+++ b/tests/compile-tests/Make.lang
-@@ -13,7 +13,8 @@ MAKE ?= make
-
- SAMPLESROOT := ../..
- REGRESSION := ..
--FAUSTLIBS ?= ../../libraries
-+FAUSTLIBS1 ?= ../../libraries
-+FAUSTLIBS2 ?= ../../libraries/old
-
- FAUSTOPTIONS ?=
- outdir ?= cpp
-@@ -75,8 +76,8 @@ $(version)/$(outdir):
- # generic rule rule for $(lang) output
- $(version)/$(outdir)/%.$(ext): $(SAMPLESROOT)/%.dsp
- @[ -d $(@D) ] || mkdir -p $(@D)
-- $(FAUST) -lang $(lang) -I $(FAUSTLIBS) $(FAUSTOPTIONS) $< -o $@
-+ $(FAUST) -lang $(lang) -I $(FAUSTLIBS1) -I $(FAUSTLIBS2) $(FAUSTOPTIONS) $< -o $@
-
- $(version)/$(outdir)/%.$(ext): $(REGRESSION)/%.dsp
- @[ -d $(@D) ] || mkdir -p $(@D)
-- $(FAUST) -lang $(lang) -I $(FAUSTLIBS) $(FAUSTOPTIONS) $< -o $@
-+ $(FAUST) -lang $(lang) -I $(FAUSTLIBS1) -I $(FAUSTLIBS2) $(FAUSTOPTIONS) $< -o $@
diff --git a/testing/faust/gcc13.patch b/testing/faust/gcc13.patch
new file mode 100644
index 00000000000..3aed0590f5f
--- /dev/null
+++ b/testing/faust/gcc13.patch
@@ -0,0 +1,24 @@
+diff --git a/architecture/faust/dsp/dsp.h b/architecture/faust/dsp/dsp.h
+index efa6fa1..ed38c22 100644
+--- a/architecture/faust/dsp/dsp.h
++++ b/architecture/faust/dsp/dsp.h
+@@ -25,6 +25,7 @@
+ #ifndef __dsp__
+ #define __dsp__
+
++#include <cstdint>
+ #include <string>
+ #include <vector>
+ #include <cstdint>
+diff --git a/compiler/generator/Text.hh b/compiler/generator/Text.hh
+index d8ea070..0ffe6b0 100644
+--- a/compiler/generator/Text.hh
++++ b/compiler/generator/Text.hh
+@@ -24,6 +24,7 @@
+
+ #include <string.h>
+
++#include <cstdint>
+ #include <fstream>
+ #include <iostream>
+ #include <list>
diff --git a/testing/faust/no-execinfo.patch b/testing/faust/no-execinfo.patch
new file mode 100644
index 00000000000..1236f00d8e2
--- /dev/null
+++ b/testing/faust/no-execinfo.patch
@@ -0,0 +1,22 @@
+diff --git a/compiler/errors/exception.hh b/compiler/errors/exception.hh
+index 5aa80ac..c4a5bc3 100644
+--- a/compiler/errors/exception.hh
++++ b/compiler/errors/exception.hh
+@@ -29,7 +29,7 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ //#include <io.h>
+ #endif
+
+-#if !defined(EMCC) && !defined(WIN32) && !defined(ANDROID) && !defined(ALPINE)
++#if 0 && !defined(EMCC) && !defined(WIN32) && !defined(ANDROID) && !defined(ALPINE)
+ #include <execinfo.h>
+ #endif
+
+@@ -54,7 +54,7 @@ class faustexception : public std::runtime_error {
+
+ inline void stacktrace(std::stringstream& str, int val)
+ {
+-#if !defined(EMCC) && !defined(WIN32) && !defined(ANDROID) && !defined(ALPINE)
++#if 0 && !defined(EMCC) && !defined(WIN32) && !defined(ANDROID) && !defined(ALPINE)
+ void* callstack[val];
+ int frames = backtrace(callstack, val);
+ char** strs = backtrace_symbols(callstack, frames);
diff --git a/testing/faust/usage.patch b/testing/faust/usage.patch
new file mode 100644
index 00000000000..e6c656a70f3
--- /dev/null
+++ b/testing/faust/usage.patch
@@ -0,0 +1,866 @@
+diff --git a/tools/faust2appls/faust2alqt b/tools/faust2appls/faust2alqt
+index 0f58c39..0656b82 100755
+--- a/tools/faust2appls/faust2alqt
++++ b/tools/faust2appls/faust2alqt
+@@ -9,7 +9,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ CXXFLAGS+=" $MYGCCFLAGS" # So that additional CXXFLAGS can be used
+
+diff --git a/tools/faust2appls/faust2alsa b/tools/faust2appls/faust2alsa
+index 94aded2..4e1ba48 100755
+--- a/tools/faust2appls/faust2alsa
++++ b/tools/faust2appls/faust2alsa
+@@ -9,7 +9,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ CXXFLAGS+=" $MYGCCFLAGS" # So that additional CXXFLAGS can be used
+
+diff --git a/tools/faust2appls/faust2alsaconsole b/tools/faust2appls/faust2alsaconsole
+index 5117820..fea650c 100755
+--- a/tools/faust2appls/faust2alsaconsole
++++ b/tools/faust2appls/faust2alsaconsole
+@@ -9,7 +9,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ CXXFLAGS+=" $MYGCCFLAGS" # So that additional CXXFLAGS can be used
+
+diff --git a/tools/faust2appls/faust2android b/tools/faust2appls/faust2android
+index d9013ce..c901554 100755
+--- a/tools/faust2appls/faust2android
++++ b/tools/faust2appls/faust2android
+@@ -10,7 +10,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ # change if you want to get the log of what's happening
+ LOG="/dev/null"
+diff --git a/tools/faust2appls/faust2androidunity b/tools/faust2appls/faust2androidunity
+index 646402c..13c2168 100755
+--- a/tools/faust2appls/faust2androidunity
++++ b/tools/faust2appls/faust2androidunity
+@@ -17,7 +17,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ CXXFLAGS+=" $MYGCCFLAGS" # So that additional CXXFLAGS can be used
+
+diff --git a/tools/faust2appls/faust2api b/tools/faust2appls/faust2api
+index 3871ce6..16d9d2a 100755
+--- a/tools/faust2appls/faust2api
++++ b/tools/faust2appls/faust2api
+@@ -9,7 +9,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ CXXFLAGS+=" $MYGCCFLAGS" # So that additional CXXFLAGS can be used
+
+diff --git a/tools/faust2appls/faust2au b/tools/faust2appls/faust2au
+index 1050986..17c5f96 100755
+--- a/tools/faust2appls/faust2au
++++ b/tools/faust2appls/faust2au
+@@ -6,7 +6,7 @@
+ # (c) Grame 2013
+ #
+ #####################################################################
+-. usage.sh
++. faust-usage.sh
+
+ CXXFLAGS+=" $MYGCCFLAGS" # So that additional CXXFLAGS can be used
+
+diff --git a/tools/faust2appls/faust2audiokit b/tools/faust2appls/faust2audiokit
+index fbb209b..7ac5bf0 100755
+--- a/tools/faust2appls/faust2audiokit
++++ b/tools/faust2appls/faust2audiokit
+@@ -9,7 +9,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ CXXFLAGS+=" $MYGCCFLAGS" # So that additional CXXFLAGS can be used
+
+diff --git a/tools/faust2appls/faust2bela b/tools/faust2appls/faust2bela
+index a5480f2..42811ba 100755
+--- a/tools/faust2appls/faust2bela
++++ b/tools/faust2appls/faust2bela
+@@ -1,7 +1,7 @@
+ #!/bin/bash -e
+
+ . faustpath
+-. usage.sh
++. faust-usage.sh
+
+ #FAUST DATA:
+ [ -z "$ARCHFILE" ] && ARCHFILE=$FAUSTARCH/bela.cpp
+diff --git a/tools/faust2appls/faust2bench b/tools/faust2appls/faust2bench
+index aecbfb3..bc27eb9 100755
+--- a/tools/faust2appls/faust2bench
++++ b/tools/faust2appls/faust2bench
+@@ -14,7 +14,7 @@
+ . faustoptflags
+
+ # Helper file to build the 'help' option
+-. usage.sh
++. faust-usage.sh
+
+ CXXFLAGS+=" $MYGCCFLAGS" # So that additional CXXFLAGS can be used
+
+diff --git a/tools/faust2appls/faust2cagtk b/tools/faust2appls/faust2cagtk
+index 59084a4..7e859ff 100755
+--- a/tools/faust2appls/faust2cagtk
++++ b/tools/faust2appls/faust2cagtk
+@@ -9,7 +9,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ CXXFLAGS+=" $MYGCCFLAGS -I/opt/local/include" # So that additional CXXFLAGS can be used
+
+diff --git a/tools/faust2appls/faust2caqt b/tools/faust2appls/faust2caqt
+index d106fbe..d6bbebe 100755
+--- a/tools/faust2appls/faust2caqt
++++ b/tools/faust2appls/faust2caqt
+@@ -11,7 +11,7 @@ set -e
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ CXXFLAGS+=" $MYGCCFLAGS" # So that additional CXXFLAGS can be used
+
+diff --git a/tools/faust2appls/faust2caqtios b/tools/faust2appls/faust2caqtios
+index 7fe3b0e..035987c 100755
+--- a/tools/faust2appls/faust2caqtios
++++ b/tools/faust2appls/faust2caqtios
+@@ -9,7 +9,7 @@
+
+ . faustpath
+ #. faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ CXXFLAGS+=" $MYGCCFLAGS -DIOS" # So that additional CXXFLAGS can be used
+
+diff --git a/tools/faust2appls/faust2cmajor b/tools/faust2appls/faust2cmajor
+index 2863bee..a2ceb29 100755
+--- a/tools/faust2appls/faust2cmajor
++++ b/tools/faust2appls/faust2cmajor
+@@ -10,7 +10,7 @@ set -e
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ ARCHFILE=$FAUSTARCH/cmajor/minimal.cmajor
+
+diff --git a/tools/faust2appls/faust2cpalrust b/tools/faust2appls/faust2cpalrust
+index ee4a7b4..8c3ca57 100755
+--- a/tools/faust2appls/faust2cpalrust
++++ b/tools/faust2appls/faust2cpalrust
+@@ -9,7 +9,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ SRC="0"
+ ARCHFILE=$FAUSTARCH/cpal.rs
+diff --git a/tools/faust2appls/faust2csound b/tools/faust2appls/faust2csound
+index 6e2ffc9..43da77e 100755
+--- a/tools/faust2appls/faust2csound
++++ b/tools/faust2appls/faust2csound
+@@ -10,7 +10,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ CXXFLAGS+=" $MYGCCFLAGS" # So that additional CXXFLAGS can be used
+
+diff --git a/tools/faust2appls/faust2csvplot b/tools/faust2appls/faust2csvplot
+index cb8cd5b..30460ef 100755
+--- a/tools/faust2appls/faust2csvplot
++++ b/tools/faust2appls/faust2csvplot
+@@ -9,7 +9,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ CXXFLAGS+=" $MYGCCFLAGS" # So that additional CXXFLAGS can be used
+
+diff --git a/tools/faust2appls/faust2daisy b/tools/faust2appls/faust2daisy
+index 0e71217..a173a5d 100755
+--- a/tools/faust2appls/faust2daisy
++++ b/tools/faust2appls/faust2daisy
+@@ -9,7 +9,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ CXXFLAGS+=" $MYGCCFLAGS" # So that additional CXXFLAGS can be used
+
+diff --git a/tools/faust2appls/faust2dplug b/tools/faust2appls/faust2dplug
+index 39a4b5b..d4d572b 100755
+--- a/tools/faust2appls/faust2dplug
++++ b/tools/faust2appls/faust2dplug
+@@ -9,7 +9,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ DEBUG=false
+
+diff --git a/tools/faust2appls/faust2dssi b/tools/faust2appls/faust2dssi
+index d7b6b7a..390f934 100755
+--- a/tools/faust2appls/faust2dssi
++++ b/tools/faust2appls/faust2dssi
+@@ -9,7 +9,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ CXXFLAGS+=" $MYGCCFLAGS" # So that additional CXXFLAGS can be used
+
+diff --git a/tools/faust2appls/faust2dummy b/tools/faust2appls/faust2dummy
+index edd7a79..446616e 100755
+--- a/tools/faust2appls/faust2dummy
++++ b/tools/faust2appls/faust2dummy
+@@ -9,7 +9,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ CXXFLAGS+=" $MYGCCFLAGS" # So that additional CXXFLAGS can be used
+
+diff --git a/tools/faust2appls/faust2esp32 b/tools/faust2appls/faust2esp32
+index e0c5624..4564f07 100755
+--- a/tools/faust2appls/faust2esp32
++++ b/tools/faust2appls/faust2esp32
+@@ -9,7 +9,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ # change if you want to get the log of what's happening
+ LOG="/dev/null"
+diff --git a/tools/faust2appls/faust2faustvst b/tools/faust2appls/faust2faustvst
+index 0fa66b2..15822ee 100755
+--- a/tools/faust2appls/faust2faustvst
++++ b/tools/faust2appls/faust2faustvst
+@@ -4,7 +4,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ # Check for some common locations of the VST SDK files. This falls back to
+ # /usr/local/src/vstsdk if none of these are found. In that case, or if make
+diff --git a/tools/faust2appls/faust2feh b/tools/faust2appls/faust2feh
+index a76e671..f61e112 100755
+--- a/tools/faust2appls/faust2feh
++++ b/tools/faust2appls/faust2feh
+@@ -1,6 +1,6 @@
+ #! /bin/bash -e
+
+-. usage.sh
++. faust-usage.sh
+
+ if [[ $@ = "-help" ]] || [[ $@ = "-h" ]]; then
+ usage faust2feh "<file.dsp>"
+diff --git a/tools/faust2appls/faust2firefox b/tools/faust2appls/faust2firefox
+index 7ab5ea9..5f30052 100755
+--- a/tools/faust2appls/faust2firefox
++++ b/tools/faust2appls/faust2firefox
+@@ -1,6 +1,6 @@
+ #! /bin/bash -e
+
+-. usage.sh
++. faust-usage.sh
+
+ VIEWER_LAUNCH=${FAUST2FIREFOX_VIEWER_LAUNCH}
+ if [[ -z "${VIEWER_LAUNCH}" ]]; then
+diff --git a/tools/faust2appls/faust2gen b/tools/faust2appls/faust2gen
+index d0ef58d..9eddb5a 100755
+--- a/tools/faust2appls/faust2gen
++++ b/tools/faust2appls/faust2gen
+@@ -9,7 +9,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ POLY="MONO"
+ NVOICES=-1
+diff --git a/tools/faust2appls/faust2graph b/tools/faust2appls/faust2graph
+index ee58a1a..d27e358 100755
+--- a/tools/faust2appls/faust2graph
++++ b/tools/faust2appls/faust2graph
+@@ -3,7 +3,7 @@
+ # usage : faust2graph foo.dsp -> foo-sig.pdf
+ # usage : faust2graph -svg foo.dsp -> foo-sig.svg
+
+-. usage.sh
++. faust-usage.sh
+
+ FILES=""
+ IGNORE=""
+diff --git a/tools/faust2appls/faust2ios b/tools/faust2appls/faust2ios
+index e96ab71..ca8811d 100755
+--- a/tools/faust2appls/faust2ios
++++ b/tools/faust2appls/faust2ios
+@@ -9,7 +9,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ ARCHFILE=$FAUSTARCH/ios-coreaudio.cpp
+
+diff --git a/tools/faust2appls/faust2jack b/tools/faust2appls/faust2jack
+index 2a7e36c..f023ca3 100755
+--- a/tools/faust2appls/faust2jack
++++ b/tools/faust2appls/faust2jack
+@@ -9,7 +9,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ CXXFLAGS+=" $MYGCCFLAGS -I/opt/local/include" # So that additional CXXFLAGS can be used
+
+diff --git a/tools/faust2appls/faust2jackconsole b/tools/faust2appls/faust2jackconsole
+index 95fb259..dff4665 100755
+--- a/tools/faust2appls/faust2jackconsole
++++ b/tools/faust2appls/faust2jackconsole
+@@ -9,7 +9,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ CXXFLAGS+=" $MYGCCFLAGS" # So that additional CXXFLAGS can be used
+
+diff --git a/tools/faust2appls/faust2jackrust b/tools/faust2appls/faust2jackrust
+index 4be4051..4475b82 100755
+--- a/tools/faust2appls/faust2jackrust
++++ b/tools/faust2appls/faust2jackrust
+@@ -9,7 +9,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ SRC="0"
+ ARCHFILE=$FAUSTARCH/jack.rs
+diff --git a/tools/faust2appls/faust2jackserver b/tools/faust2appls/faust2jackserver
+index 35e99c3..39deb1a 100755
+--- a/tools/faust2appls/faust2jackserver
++++ b/tools/faust2appls/faust2jackserver
+@@ -9,7 +9,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ CXXFLAGS+=" $MYGCCFLAGS" # So that additional CXXFLAGS can be used
+
+diff --git a/tools/faust2appls/faust2jaqt b/tools/faust2appls/faust2jaqt
+index a92e1fd..80b0f98 100755
+--- a/tools/faust2appls/faust2jaqt
++++ b/tools/faust2appls/faust2jaqt
+@@ -9,7 +9,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ CXXFLAGS+=" $MYGCCFLAGS" # So that additional CXXFLAGS can be used
+
+diff --git a/tools/faust2appls/faust2jaqtchain b/tools/faust2appls/faust2jaqtchain
+index 9c880f9..cd058ea 100755
+--- a/tools/faust2appls/faust2jaqtchain
++++ b/tools/faust2appls/faust2jaqtchain
+@@ -9,7 +9,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ CXXFLAGS+=" $MYGCCFLAGS" # So that additional CXXFLAGS can be used
+
+diff --git a/tools/faust2appls/faust2juce b/tools/faust2appls/faust2juce
+index f35f88f..bf0e3d0 100755
+--- a/tools/faust2appls/faust2juce
++++ b/tools/faust2appls/faust2juce
+@@ -9,7 +9,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ CXXFLAGS+=" $MYGCCFLAGS" # So that additional CXXFLAGS can be used
+
+diff --git a/tools/faust2appls/faust2ladspa b/tools/faust2appls/faust2ladspa
+index d48c3af..465db4d 100755
+--- a/tools/faust2appls/faust2ladspa
++++ b/tools/faust2appls/faust2ladspa
+@@ -9,7 +9,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ CXXFLAGS+=" $MYGCCFLAGS" # So that additional CXXFLAGS can be used
+
+diff --git a/tools/faust2appls/faust2linuxunity b/tools/faust2appls/faust2linuxunity
+index b8ba4e6..6eaa52b 100755
+--- a/tools/faust2appls/faust2linuxunity
++++ b/tools/faust2appls/faust2linuxunity
+@@ -16,7 +16,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ CXXFLAGS+=" $MYGCCFLAGS" # So that additional CXXFLAGS can be used
+
+diff --git a/tools/faust2appls/faust2lv2 b/tools/faust2appls/faust2lv2
+index 1fbb4b4..8fa948f 100755
+--- a/tools/faust2appls/faust2lv2
++++ b/tools/faust2appls/faust2lv2
+@@ -2,7 +2,7 @@
+
+ #set -x
+
+-. usage.sh
++. faust-usage.sh
+
+ # Default qmake setup (for GUI compilation). This requires Qt4 or Qt5 (Qt5 is
+ # preferred). We try to locate the qmake executable in some common locations
+diff --git a/tools/faust2appls/faust2mathdoc b/tools/faust2appls/faust2mathdoc
+index 4c9fdb9..0d19958 100755
+--- a/tools/faust2appls/faust2mathdoc
++++ b/tools/faust2appls/faust2mathdoc
+@@ -1,6 +1,6 @@
+ #! /bin/bash -e
+
+-. usage.sh
++. faust-usage.sh
+
+ # faust2mathdoc.sh
+ #
+diff --git a/tools/faust2appls/faust2max6 b/tools/faust2appls/faust2max6
+index fd45509..5e7a5e3 100755
+--- a/tools/faust2appls/faust2max6
++++ b/tools/faust2appls/faust2max6
+@@ -11,7 +11,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ CXXFLAGS+=" $MYGCCFLAGSGENERIC" # So that additional CXXFLAGS can be used
+
+diff --git a/tools/faust2appls/faust2minimal b/tools/faust2appls/faust2minimal
+index 9c280c3..02b5620 100755
+--- a/tools/faust2appls/faust2minimal
++++ b/tools/faust2appls/faust2minimal
+@@ -14,7 +14,7 @@
+ . faustoptflags
+
+ # Helper file to build the 'help' option
+-. usage.sh
++. faust-usage.sh
+
+ CXXFLAGS+=" $MYGCCFLAGS" # So that additional CXXFLAGS can be used
+ LIBADD+=" -pthread"
+diff --git a/tools/faust2appls/faust2msp b/tools/faust2appls/faust2msp
+index 5c0138b..e5191f9 100755
+--- a/tools/faust2appls/faust2msp
++++ b/tools/faust2appls/faust2msp
+@@ -10,7 +10,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ CXXFLAGS+=" $MYGCCFLAGSGENERIC" # So that additional CXXFLAGS can be used
+
+diff --git a/tools/faust2appls/faust2netjackconsole b/tools/faust2appls/faust2netjackconsole
+index 71f9d70..12e3507 100755
+--- a/tools/faust2appls/faust2netjackconsole
++++ b/tools/faust2appls/faust2netjackconsole
+@@ -2,7 +2,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ CXXFLAGS+=" $MYGCCFLAGS" # So that additional CXXFLAGS can be used
+
+diff --git a/tools/faust2appls/faust2netjackqt b/tools/faust2appls/faust2netjackqt
+index 9222492..158ed86 100755
+--- a/tools/faust2appls/faust2netjackqt
++++ b/tools/faust2appls/faust2netjackqt
+@@ -9,7 +9,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ CXXFLAGS+=" $MYGCCFLAGS" # So that additional CXXFLAGS can be used
+
+diff --git a/tools/faust2appls/faust2nodejs b/tools/faust2appls/faust2nodejs
+index 1451fc5..7f549b4 100755
+--- a/tools/faust2appls/faust2nodejs
++++ b/tools/faust2appls/faust2nodejs
+@@ -9,7 +9,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ # exit if a command fails
+ set -e
+diff --git a/tools/faust2appls/faust2osxiosunity b/tools/faust2appls/faust2osxiosunity
+index 90a243f..0ed5ff0 100755
+--- a/tools/faust2appls/faust2osxiosunity
++++ b/tools/faust2appls/faust2osxiosunity
+@@ -27,7 +27,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ CXXFLAGS+=" $MYGCCFLAGS" # So that additional CXXFLAGS can be used
+
+diff --git a/tools/faust2appls/faust2paqt b/tools/faust2appls/faust2paqt
+index 7036f8f..163d538 100755
+--- a/tools/faust2appls/faust2paqt
++++ b/tools/faust2appls/faust2paqt
+@@ -9,7 +9,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ CXXFLAGS+=" $MYGCCFLAGS" # So that additional CXXFLAGS can be used
+
+diff --git a/tools/faust2appls/faust2plot b/tools/faust2appls/faust2plot
+index 55470f2..3301c9c 100755
+--- a/tools/faust2appls/faust2plot
++++ b/tools/faust2appls/faust2plot
+@@ -9,7 +9,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ CXXFLAGS+=" $MYGCCFLAGS" # So that additional CXXFLAGS can be used
+
+diff --git a/tools/faust2appls/faust2portaudiojulia b/tools/faust2appls/faust2portaudiojulia
+index 3ddc32e..5a93ea9 100755
+--- a/tools/faust2appls/faust2portaudiojulia
++++ b/tools/faust2appls/faust2portaudiojulia
+@@ -9,7 +9,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ SRC="0"
+ ARCHFILE=$FAUSTARCH/julia/portaudio-gtk.jl
+diff --git a/tools/faust2appls/faust2portaudiorust b/tools/faust2appls/faust2portaudiorust
+index 6afae5c..c641151 100755
+--- a/tools/faust2appls/faust2portaudiorust
++++ b/tools/faust2appls/faust2portaudiorust
+@@ -9,7 +9,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ SRC="0"
+ ARCHFILE=$FAUSTARCH/portaudio.rs
+diff --git a/tools/faust2appls/faust2puredata b/tools/faust2appls/faust2puredata
+index dfb79a6..cea01fe 100755
+--- a/tools/faust2appls/faust2puredata
++++ b/tools/faust2appls/faust2puredata
+@@ -9,7 +9,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ CXXFLAGS+=" $MYGCCFLAGS" # So that additional CXXFLAGS can be used
+
+diff --git a/tools/faust2appls/faust2raqt b/tools/faust2appls/faust2raqt
+index 014df7d..fc1ef13 100755
+--- a/tools/faust2appls/faust2raqt
++++ b/tools/faust2appls/faust2raqt
+@@ -9,7 +9,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ CXXFLAGS+=" $MYGCCFLAGS" # So that additional CXXFLAGS can be used
+
+diff --git a/tools/faust2appls/faust2rpialsaconsole b/tools/faust2appls/faust2rpialsaconsole
+index aec2246..699813a 100755
+--- a/tools/faust2appls/faust2rpialsaconsole
++++ b/tools/faust2appls/faust2rpialsaconsole
+@@ -11,7 +11,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ ARCHFILE=$FAUSTARCH/alsa-console.cpp
+
+diff --git a/tools/faust2appls/faust2rpinetjackconsole b/tools/faust2appls/faust2rpinetjackconsole
+index 7576f00..2c556e3 100755
+--- a/tools/faust2appls/faust2rpinetjackconsole
++++ b/tools/faust2appls/faust2rpinetjackconsole
+@@ -11,7 +11,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ ARCHFILE=$FAUSTARCH/netjack-console.cpp
+
+diff --git a/tools/faust2appls/faust2sam b/tools/faust2appls/faust2sam
+index a08e507..627e554 100755
+--- a/tools/faust2appls/faust2sam
++++ b/tools/faust2appls/faust2sam
+@@ -12,7 +12,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ # change if you want to get the log of what's happening
+ LOG="/dev/null"
+diff --git a/tools/faust2appls/faust2sig b/tools/faust2appls/faust2sig
+index 651cca4..36feebc 100755
+--- a/tools/faust2appls/faust2sig
++++ b/tools/faust2appls/faust2sig
+@@ -3,7 +3,7 @@
+ # usage : faust2sig foo.dsp -> foo-sig.pdf
+ # usage : faust2sig -svg foo.dsp -> foo-sig.svg
+
+-. usage.sh
++. faust-usage.sh
+
+ echoHelp()
+ {
+diff --git a/tools/faust2appls/faust2smartkeyb b/tools/faust2appls/faust2smartkeyb
+index c297571..e5f2d18 100755
+--- a/tools/faust2appls/faust2smartkeyb
++++ b/tools/faust2appls/faust2smartkeyb
+@@ -8,7 +8,7 @@
+ #####################################################################
+
+ . faustpath
+-. usage.sh
++. faust-usage.sh
+
+ # change if you want to get the log of what's happening
+ LOG="/dev/null"
+diff --git a/tools/faust2appls/faust2sndfile b/tools/faust2appls/faust2sndfile
+index a47f3c1..831871e 100755
+--- a/tools/faust2appls/faust2sndfile
++++ b/tools/faust2appls/faust2sndfile
+@@ -9,7 +9,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ CXXFLAGS+=" $MYGCCFLAGS" # So that additional CXXFLAGS can be used
+
+diff --git a/tools/faust2appls/faust2svg b/tools/faust2appls/faust2svg
+index 01df452..2ef49e6 100755
+--- a/tools/faust2appls/faust2svg
++++ b/tools/faust2appls/faust2svg
+@@ -1,6 +1,6 @@
+ #! /bin/bash -e
+
+-. usage.sh
++. faust-usage.sh
+
+ echoHelp()
+ {
+diff --git a/tools/faust2appls/faust2teensy b/tools/faust2appls/faust2teensy
+index 77536a1..ac51411 100755
+--- a/tools/faust2appls/faust2teensy
++++ b/tools/faust2appls/faust2teensy
+@@ -8,7 +8,7 @@
+ #####################################################################
+
+ . faustpath
+-. usage.sh
++. faust-usage.sh
+
+ # change if you want to get the log of what's happening
+ LOG="/dev/null"
+diff --git a/tools/faust2appls/faust2unity b/tools/faust2appls/faust2unity
+index a4e7231..0e395d4 100755
+--- a/tools/faust2appls/faust2unity
++++ b/tools/faust2appls/faust2unity
+@@ -18,7 +18,7 @@
+ # Several options are available, see architecture/unity/README.md for more info.
+
+ . faustpath
+-. usage.sh
++. faust-usage.sh
+
+ echoHelp()
+ {
+diff --git a/tools/faust2appls/faust2vcvrack b/tools/faust2appls/faust2vcvrack
+index 581a9bc..453cd36 100755
+--- a/tools/faust2appls/faust2vcvrack
++++ b/tools/faust2appls/faust2vcvrack
+@@ -9,7 +9,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ CXXFLAGS+=" $MYGCCFLAGS" # So that additional CXXFLAGS can be used
+
+diff --git a/tools/faust2appls/faust2wasm b/tools/faust2appls/faust2wasm
+index 98b18a4..414fcac 100755
+--- a/tools/faust2appls/faust2wasm
++++ b/tools/faust2appls/faust2wasm
+@@ -2,7 +2,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ #-------------------------------------------------------------------
+ # Wrapping resources
+diff --git a/tools/faust2appls/faust2webaudiowasm b/tools/faust2appls/faust2webaudiowasm
+index c34e3cd..745eaa5 100755
+--- a/tools/faust2appls/faust2webaudiowasm
++++ b/tools/faust2appls/faust2webaudiowasm
+@@ -2,7 +2,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ #-------------------------------------------------------------------
+ # Wrapping resources
+diff --git a/tools/faust2appls/faust2webaudiowast b/tools/faust2appls/faust2webaudiowast
+index fc8c649..ba6af2a 100755
+--- a/tools/faust2appls/faust2webaudiowast
++++ b/tools/faust2appls/faust2webaudiowast
+@@ -2,7 +2,7 @@
+
+ . faustpath
+ . faustoptflags
+-. usage.sh
++. faust-usage.sh
+
+ #-------------------------------------------------------------------
+ # Wrapping resources
+diff --git a/tools/faust2appls/faust2winunity b/tools/faust2appls/faust2winunity
+index bdb24c1..08ed834 100755
+--- a/tools/faust2appls/faust2winunity
++++ b/tools/faust2appls/faust2winunity
+@@ -15,7 +15,7 @@
+ # These files are automatically generated by the "faust2unity" script
+
+ . faustpath
+-. usage.sh
++. faust-usage.sh
+ . faustoptflags
+
+ CXXFLAGS+=" $MYGCCFLAGS" # So that additional CXXFLAGS can be used
+diff --git a/tools/faust2appls/faustremote b/tools/faust2appls/faustremote
+index bcd374c..b51b4f4 100755
+--- a/tools/faust2appls/faustremote
++++ b/tools/faust2appls/faustremote
+@@ -1,6 +1,6 @@
+ #!/bin/bash
+
+-. usage.sh
++. faust-usage.sh
+
+ #USAGE : faustremote <servurl> ==> <targets>
+ #USAGE : faustremote [<servurl>] <platform> <arch> <srcfile> ==> <binary.zip>
diff --git a/testing/fava/APKBUILD b/testing/fava/APKBUILD
new file mode 100644
index 00000000000..d2b851b5a6f
--- /dev/null
+++ b/testing/fava/APKBUILD
@@ -0,0 +1,72 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=fava
+pkgver=1.26.4
+pkgrel=0
+pkgdesc="Web interface for Beancount"
+url="https://beancount.github.io/fava/"
+arch="all !ppc64le" # limited by beancount
+license="MIT"
+depends="
+ beancount
+ python3
+ py3-babel
+ py3-flask
+ py3-flask-babel
+ py3-jinja2
+ py3-werkzeug
+ py3-cheroot
+ py3-click
+ py3-markdown2
+ py3-ply
+ py3-simplejson
+ "
+makedepends="
+ npm
+ nodejs
+ py3-gpep517
+ py3-setuptools
+ py3-setuptools_scm
+ py3-wheel
+ "
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/beancount/fava/archive/refs/tags/v$pkgver.tar.gz"
+
+prepare() {
+ default_prepare
+
+ # static files aren't detected to be included in the wheel file
+ echo "recursive-include src/fava *.html *.js *.md beancount_file" >> MANIFEST.in
+
+ cd frontend
+ npm install --no-progress
+}
+
+build() {
+ cd frontend
+ npm run build
+ cd ..
+
+ export SETUPTOOLS_SCM_PRETEND_VERSION=$pkgver
+ pybabel compile -d src/fava/translations
+ 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
+
+ # test_cli.py requires fava to be available inside PATH
+ .testenv/bin/python3 -m pytest --ignore=tests/test_cli.py
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+4db046ec53704da417518e83344db1b9ff7c88698a65c1ed8cfebfda53af6b27ef1e0caf7de75c2d4eed42b73075be9bc221f53c3d7f422531c20f7aa2ba6357 fava-1.26.4.tar.gz
+"
diff --git a/testing/fbp/APKBUILD b/testing/fbp/APKBUILD
index 0abbb3ff7f6..0172a1e8cf4 100644
--- a/testing/fbp/APKBUILD
+++ b/testing/fbp/APKBUILD
@@ -2,7 +2,6 @@
# Contributor: Miles Alan <m@milesalan.com>
pkgname=fbp
pkgver=0.5
-pkgrel=0
pkgrel=1
arch="aarch64 x86_64" # Limited by zig aport
url="https://git.sr.ht/~mil/fbp"
diff --git a/testing/fceux/01-rdtsc.patch b/testing/fceux/01-rdtsc.patch
new file mode 100644
index 00000000000..af0f73be1d3
--- /dev/null
+++ b/testing/fceux/01-rdtsc.patch
@@ -0,0 +1,76 @@
+https://github.com/TASEmulators/fceux/issues/663
+
+--- a/src/utils/timeStamp.cpp
++++ b/src/utils/timeStamp.cpp
+@@ -14,6 +14,7 @@
+ //-------------------------------------------------------------------------
+ //---- Time Stamp Record
+ //-------------------------------------------------------------------------
++#ifdef __QT_DRIVER__
+ #if defined(WIN32)
+ #include <intrin.h>
+ #pragma intrinsic(__rdtsc)
+@@ -25,6 +26,7 @@ static uint64_t rdtsc()
+ {
+ return __rdtsc();
+ }
++#endif
+
+ namespace FCEU
+ {
+@@ -36,12 +38,15 @@ uint64_t timeStampRecord::qpcFreq = 0;
+
+ void timeStampRecord::readNew(void)
+ {
+-#if defined(__linux__) || defined(__APPLE__) || defined(__unix__)
+- clock_gettime( CLOCK_REALTIME, &ts );
+-#else
+- QueryPerformanceCounter((LARGE_INTEGER*)&ts);
+-#endif
+- tsc = rdtsc();
++ #ifdef __QT_DRIVER__
++ tsc = rdtsc();
++ #else
++ #if defined(__linux__) || defined(__APPLE__) || defined(__unix__)
++ clock_gettime( CLOCK_REALTIME, &ts );
++ #else
++ QueryPerformanceCounter((LARGE_INTEGER*)&ts);
++ #endif
++ #endif
+ }
+ #if defined(WIN32)
+ void timeStampRecord::qpcCalibrate(void)
+
+
+--- a/src/utils/timeStamp.cpp
++++ b/src/utils/timeStamp.cpp
+@@ -14,7 +14,7 @@
+ //-------------------------------------------------------------------------
+ //---- Time Stamp Record
+ //-------------------------------------------------------------------------
+-#ifdef __QT_DRIVER__
++#ifdef __FCEU_X86_TSC_ENABLE
+ #if defined(WIN32)
+ #include <intrin.h>
+ #pragma intrinsic(__rdtsc)
+@@ -38,14 +38,14 @@ uint64_t timeStampRecord::qpcFreq = 0;
+
+ void timeStampRecord::readNew(void)
+ {
+- #ifdef __QT_DRIVER__
++ #ifdef __FCEU_X86_TSC_ENABLE
+ tsc = rdtsc();
++ #endif
++
++ #if defined(__linux__) || defined(__APPLE__) || defined(__unix__)
++ clock_gettime( CLOCK_REALTIME, &ts );
+ #else
+- #if defined(__linux__) || defined(__APPLE__) || defined(__unix__)
+- clock_gettime( CLOCK_REALTIME, &ts );
+- #else
+- QueryPerformanceCounter((LARGE_INTEGER*)&ts);
+- #endif
++ QueryPerformanceCounter((LARGE_INTEGER*)&ts);
+ #endif
+ }
+ #if defined(WIN32)
diff --git a/testing/fceux/APKBUILD b/testing/fceux/APKBUILD
index 974a050e785..2587bcac1cb 100644
--- a/testing/fceux/APKBUILD
+++ b/testing/fceux/APKBUILD
@@ -1,16 +1,28 @@
+# Contributor: Nicolas Lorin <androw95220@gmail.com>
# Contributor: Danct12 <danct12@disroot.org>
# Maintainer: Danct12 <danct12@disroot.org>
pkgname=fceux
-pkgver=2.6.4
-pkgrel=0
+pkgver=2.6.6
+pkgrel=1
pkgdesc="Fast and ultra-compatible NES/Famicom emulator"
-url="https://www.fceux.com"
+url="https://fceux.com"
arch="all"
license="GPL-2.0-only"
-makedepends="bash cmake gd-dev glu-dev lua5.1-dev mesa-dev minizip-dev
- qt5-qtbase-dev sdl2-dev"
+makedepends="
+ cmake
+ clang15-dev
+ ffmpeg-dev
+ lua5.1-dev
+ mesa-dev
+ minizip-dev
+ qt6-qtbase-dev
+ samurai
+ sdl2-dev
+ zlib-dev
+ "
subpackages="$pkgname-doc"
-source="https://downloads.sourceforge.net/project/fceultra/Source%20Code/$pkgver%20src/fceux-$pkgver.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/TASEmulators/fceux/archive/refs/tags/v$pkgver.tar.gz
+ 01-rdtsc.patch"
options="!check" # no testsuite
build() {
@@ -18,11 +30,20 @@ build() {
CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
fi
- cmake -B build \
+ case "$CARCH" in
+ aarch64|arm*)
+ # for some reason we have to manually pass this. i guess because
+ # the default is just GL?
+ export CXXFLAGS="$CXXFLAGS -DQT_OPENGL_ES_2"
+ ;;
+ esac
+
+ cmake -B build -G Ninja \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
-DBUILD_SHARED_LIBS=True \
-DCMAKE_BUILD_TYPE=MinSizeRel \
+ -DQT6=ON \
$CMAKE_CROSSOPTS
cmake --build build
}
@@ -31,10 +52,11 @@ package() {
DESTDIR="$pkgdir" cmake --install build
install -d "$pkgdir/usr/share/doc/$pkgname"
cp -r documentation/* "$pkgdir/usr/share/doc/$pkgname/"
- install -Dm644 changelog.txt "$pkgdir/usr/share/doc/$pkgname/"
+ install -Dm644 changelog.txt -t "$pkgdir/usr/share/doc/$pkgname/"
rm -f "$pkgdir/usr/share/$pkgname/"*.dll
}
sha512sums="
-9fd8b908b652b5b8f120d15bdd43fa1e3475a300e0f1ec7d44965c95ec4bf58f7f9fe9511ea975effaf37f2cc4900e74021b06111dcafecc27affdd9d4e12f2e fceux-2.6.4.tar.gz
+0a6cff4c6b900569978003675812d92d893281c2bdf3b0b58c07e257251648ee325f9bb29b01253ab1a5e9354631d91a6e67a1e6bb36ebe89d5067509cabfa64 fceux-2.6.6.tar.gz
+7ebd367bec7799023cf6a4fc95c93161760e33881bc2f705ef664758292066e8a49c7c774b0df7f7587eb913c5d2816caf49d9e15d1b165dc7d93dd7e4e59f23 01-rdtsc.patch
"
diff --git a/testing/fcitx5-anthy/APKBUILD b/testing/fcitx5-anthy/APKBUILD
new file mode 100644
index 00000000000..4cc3ceea443
--- /dev/null
+++ b/testing/fcitx5-anthy/APKBUILD
@@ -0,0 +1,38 @@
+# Maintainer:
+pkgname=fcitx5-anthy
+pkgver=5.1.3
+pkgrel=0
+pkgdesc="anthy input method support for fcitx5"
+url="https://github.com/fcitx/fcitx5-anthy"
+arch="all"
+license="GPL-3.0-or-later"
+makedepends="
+ anthy-dev
+ cmake
+ extra-cmake-modules
+ gettext-dev
+ fcitx5-dev
+ fcitx5-qt-dev
+ qt5-qttools-dev
+ samurai
+ "
+subpackages="$pkgname-lang"
+source="$pkgname-$pkgver.tar.gz::https://github.com/fcitx/fcitx5-anthy/archive/refs/tags/$pkgver.tar.gz"
+options="!check" # no tests
+
+build() {
+ CFLAGS="$CFLAGS -flto=auto" \
+ CXXFLAGS="$CXXFLAGS -flto=auto" \
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCMAKE_INSTALL_PREFIX=/usr
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+dd1a9022424ea0fc45f27c17555eca15a475f5f9ac3dadba5c77d59d365eca959b52ee88293ff0fed72ecd90380e7d57c9eacbf6a26dcba5502588eb0c97dce7 fcitx5-anthy-5.1.3.tar.gz
+"
diff --git a/testing/fcitx5-bamboo/APKBUILD b/testing/fcitx5-bamboo/APKBUILD
new file mode 100644
index 00000000000..c2aeda613d4
--- /dev/null
+++ b/testing/fcitx5-bamboo/APKBUILD
@@ -0,0 +1,47 @@
+# Maintainer:
+pkgname=fcitx5-bamboo
+pkgver=1.0.4
+pkgrel=9
+_bamboo_core=f0ca534819fa84ee37df9277ff2449d82ed1ec3e
+pkgdesc="bamboo input method support for fcitx5"
+url="https://github.com/fcitx/fcitx5-bamboo"
+arch="all"
+license="LGPL-2.1-or-later AND MIT"
+makedepends="
+ cmake
+ extra-cmake-modules
+ fcitx5-dev
+ gettext-dev
+ go
+ samurai
+ "
+subpackages="$pkgname-lang"
+source="$pkgname-$pkgver.tar.gz::https://github.com/fcitx/fcitx5-bamboo/archive/refs/tags/$pkgver.tar.gz
+ bamboo-core-$_bamboo_core.tar.gz::https://github.com/BambooEngine/bamboo-core/archive/$_bamboo_core.tar.gz
+ "
+options="!check" # no tests
+
+prepare() {
+ default_prepare
+
+ rmdir bamboo/bamboo-core
+ ln -sfv "$srcdir"/bamboo-core-$_bamboo_core bamboo/bamboo-core
+}
+
+build() {
+ CFLAGS="$CFLAGS -flto=auto" \
+ CXXFLAGS="$CXXFLAGS -flto=auto" \
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCMAKE_INSTALL_PREFIX=/usr
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+80d5e73ff35fd8308c9ce24cc7cb131239470957959109ee7115ae8cac8b1583046f024ae19a6a5a5a2f29ff7c0adef1a4cd0ed06bce9e1128bc478d34f54333 fcitx5-bamboo-1.0.4.tar.gz
+3d8034b20c1001500216f94c6e03d07831ce762fcf57cb7b8d238efeb17f8ed40cd5aa6965793384bd0e8f20dac82c74bc2e08d89b4e91ccf3a494d7b9da4ae7 bamboo-core-f0ca534819fa84ee37df9277ff2449d82ed1ec3e.tar.gz
+"
diff --git a/testing/fcitx5-chewing/APKBUILD b/testing/fcitx5-chewing/APKBUILD
new file mode 100644
index 00000000000..5ba6499a85a
--- /dev/null
+++ b/testing/fcitx5-chewing/APKBUILD
@@ -0,0 +1,47 @@
+# Contributor: ProgCat <progcat@protonmail.com>
+# Maintainer: ProgCat <progcat@protonmail.com>
+pkgname=fcitx5-chewing
+pkgver=5.1.1
+pkgrel=0
+pkgdesc="Chewing Wrapper for Fcitx"
+url="https://github.com/fcitx/fcitx5-chewing"
+arch="all"
+license="LGPL-2.1-or-later"
+makedepends="
+ cmake
+ extra-cmake-modules
+ fcitx5-dev
+ gettext-dev
+ libchewing-dev
+ samurai
+ "
+subpackages="$pkgname-lang"
+source="$pkgname-$pkgver.tar.gz::https://github.com/fcitx/fcitx5-chewing/archive/refs/tags/$pkgver.tar.gz"
+
+build() {
+ if [ "$CBUILD" != "$CHOST" ]; then
+ CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ CFLAGS="$CFLAGS -flto=auto" \
+ CXXFLAGS="$CXXFLAGS -flto=auto" \
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=True \
+ -DCMAKE_BUILD_TYPE=None \
+ $CMAKE_CROSSOPTS
+ cmake --build build
+}
+
+check() {
+ cd build
+ CTEST_OUTPUT_ON_FAILURE=TRUE ctest
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+d88aad759398bca9417a0d77f5a897212a52b3ce9b7d4a891bd0ba9a86c2e3db7b9dd5525ffbc72baaa951b0024085f6eade6cbf62591a628303397164fd5856 fcitx5-chewing-5.1.1.tar.gz
+"
diff --git a/testing/fcitx5-chinese-addons/APKBUILD b/testing/fcitx5-chinese-addons/APKBUILD
new file mode 100644
index 00000000000..a720de104c2
--- /dev/null
+++ b/testing/fcitx5-chinese-addons/APKBUILD
@@ -0,0 +1,57 @@
+# Contributor: Lindsay Zhou <i@lin.moe>
+# Maintainer: Lindsay Zhou <i@lin.moe>
+pkgname=fcitx5-chinese-addons
+pkgver=5.1.4
+pkgrel=0
+pkgdesc="Chinese Addons for Fcitx"
+url="https://github.com/fcitx/fcitx5-chinese-addons"
+# armhf, armv7, s390x, ppc64le, riscv64: qt6-qtwebengine
+arch="all !armhf !armv7 !ppc64le !s390x !riscv64"
+license="LGPL-2.1-or-later AND GPL-2.0-or-later"
+makedepends="
+ boost-dev
+ cmake
+ curl-dev
+ extra-cmake-modules
+ fcitx5-dev
+ fcitx5-lua-dev
+ fcitx5-qt-dev
+ fmt-dev
+ gettext-dev
+ libime-dev
+ libpinyin-dev
+ opencc-dev
+ qt6-qtbase-dev
+ qt6-qtwebengine-dev
+ samurai
+ "
+subpackages="$pkgname-dev $pkgname-lang"
+source="$pkgname-$pkgver.tar.gz::https://github.com/fcitx/fcitx5-chinese-addons/archive/refs/tags/$pkgver.tar.gz"
+options="net" # checksummed data modules
+
+build() {
+ if [ "$CBUILD" != "$CHOST" ]; then
+ CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=True \
+ -DCMAKE_BUILD_TYPE=None \
+ -DUSE_WEBKIT=OFF \
+ $CMAKE_CROSSOPTS
+ cmake --build build
+}
+
+check() {
+ cd build
+ CTEST_OUTPUT_ON_FAILURE=TRUE ctest -E testchttrans
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+596d12a033b9f8cb252e7b630872b999df965e1a1cfcf872683df2c148996a0440ce6f78625436c998749d2e81599aa2a7fdebdbd787a8e20ac777a700815ba9 fcitx5-chinese-addons-5.1.4.tar.gz
+"
diff --git a/testing/fcitx5-configtool/APKBUILD b/testing/fcitx5-configtool/APKBUILD
new file mode 100644
index 00000000000..82b5d19e015
--- /dev/null
+++ b/testing/fcitx5-configtool/APKBUILD
@@ -0,0 +1,61 @@
+# Contributor: ProgCat <progcat@protonmail.com>
+# Maintainer: ProgCat <progcat@protonmail.com>
+pkgname=fcitx5-configtool
+pkgver=5.1.4
+pkgrel=0
+pkgdesc="A configure tool for Fcitx5"
+url="https://github.com/fcitx/fcitx5-configtool"
+arch="all !armhf"
+license="GPL-2.0-or-later"
+makedepends="
+ cmake
+ extra-cmake-modules
+ fcitx5-dev
+ fcitx5-qt-dev
+ gettext-dev
+ iso-codes
+ iso-codes-dev
+ kcoreaddons5-dev
+ kdeclarative5-dev
+ ki18n5-dev
+ kiconthemes5-dev
+ kirigami2-dev
+ kpackage5-dev
+ kwidgetsaddons5-dev
+ libxkbcommon-dev
+ libxkbfile-dev
+ qt6-qtsvg-dev
+ libplasma-dev
+ qt6-qtdeclarative-dev
+ samurai
+ xkeyboard-config-dev
+ "
+subpackages="$pkgname-lang"
+source="$pkgname-$pkgver.tar.gz::https://github.com/fcitx/fcitx5-configtool/archive/refs/tags/$pkgver.tar.gz"
+
+build() {
+ if [ "$CBUILD" != "$CHOST" ]; then
+ CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ cmake -B build -G Ninja\
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=True \
+ -DUSE_QT6=True \
+ -DCMAKE_BUILD_TYPE=None \
+ $CMAKE_CROSSOPTS
+ cmake --build build
+}
+
+check() {
+ cd build
+ CTEST_OUTPUT_ON_FAILURE=TRUE ctest
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+2012882d1c4e58d69898d3b2b60f26124d9b87a05e91192e776db2738402423c3c6ac181185aa1ccd19984c2d3fdac9ededf6a7477d79588170934f24790be47 fcitx5-configtool-5.1.4.tar.gz
+"
diff --git a/testing/fcitx5-gtk/APKBUILD b/testing/fcitx5-gtk/APKBUILD
index f2bda49fbc7..078130bdd5c 100644
--- a/testing/fcitx5-gtk/APKBUILD
+++ b/testing/fcitx5-gtk/APKBUILD
@@ -1,11 +1,12 @@
# Contributor: Alex Yam <alex@alexyam.com>
-# Maintainer: Alex Yam <alex@alexyam.com>
+# Contributor: Lindsay Zhou <i@lin.moe>
+# Maintainer: Lindsay Zhou <i@lin.moe>
pkgname=fcitx5-gtk
-pkgver=5.0.13
+pkgver=5.1.2
pkgrel=0
pkgdesc="Fcitx5 GTK module"
url="https://github.com/fcitx/fcitx5-gtk/"
-arch="all !armhf !riscv64 !s390x" # armhf:extra-cmake-modules, riscv64/s390x:gtk4
+arch="all"
license="LGPL-2.1-or-later"
depends="fcitx5"
makedepends="
@@ -14,8 +15,13 @@ makedepends="
gobject-introspection-dev
gtk+3.0-dev
gtk4.0-dev
+ samurai
+ "
+subpackages="
+ $pkgname-dev
+ ${pkgname}3:_gtk3
+ ${pkgname}4:_gtk4
"
-subpackages="$pkgname-dev ${pkgname}3:_gtk3 ${pkgname}4:_gtk4"
options="!check" # no test suites
source="$pkgname-$pkgver.tar.gz::https://github.com/fcitx/fcitx5-gtk/archive/$pkgver.tar.gz"
@@ -25,12 +31,10 @@ build() {
_build libs
}
-package() {
- DESTDIR="$pkgdir" cmake --install $pkgname-libs
-}
-
_build() {
- cmake -B $pkgname-$1 \
+ CFLAGS="$CFLAGS -flto=auto" \
+ CXXFLAGS="$CXXFLAGS -flto=auto" \
+ cmake -B $pkgname-$1 -G Ninja \
-DCMAKE_BUILD_TYPE=MinSizeRel \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_SKIP_BUILD_RPATH=true \
@@ -43,19 +47,25 @@ _build() {
cmake --build $pkgname-$1
}
+package() {
+ DESTDIR="$pkgdir" cmake --install $pkgname-3
+ DESTDIR="$pkgdir" cmake --install $pkgname-4
+ DESTDIR="$pkgdir" cmake --install $pkgname-libs
+}
+
_gtk3() {
pkgdesc="${pkgdesc/GTK/GTK3}"
- install="$subpkgname.post-install $subpkgname.post-upgrade"
- install -Dt "$subpkgdir"/usr/lib/gtk-3.0/3.0.0/immodules \
- "$builddir"/fcitx5-gtk-3/gtk3/im-fcitx5.so
+ install_if="$pkgname=$pkgver-r$pkgrel gtk+3.0"
+ amove usr/lib/gtk-3.0
}
_gtk4() {
pkgdesc="${pkgdesc/GTK/GTK4}"
- install -Dt "$subpkgdir"/usr/lib/gtk-4.0/4.0.0/immodules \
- "$builddir"/fcitx5-gtk-4/gtk4/libim-fcitx5.so
+ install_if="$pkgname=$pkgver-r$pkgrel gtk4.0"
+
+ amove usr/lib/gtk-4.0
}
sha512sums="
-70d9eb6a56ab08d18ee25f9782e14f723e504783e3c1f77ec72179bddd04825928d53c77db76f0eca922ec2a8e3389330b5da3f1734849c4bebc9a5e32bd0f98 fcitx5-gtk-5.0.13.tar.gz
+9be64cce50f48f57340a69164ae8878ebc05f2e637ac281e3b5ff4c09427b40347088c51e799e345a3c7866026061787116acd5e081c77491638b582d766c94d fcitx5-gtk-5.1.2.tar.gz
"
diff --git a/testing/fcitx5-gtk/fcitx5-gtk3.post-install b/testing/fcitx5-gtk/fcitx5-gtk3.post-install
deleted file mode 100755
index 75e5a242951..00000000000
--- a/testing/fcitx5-gtk/fcitx5-gtk3.post-install
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-/usr/bin/gtk-query-immodules-3.0 --update-cache
-
-exit 0
diff --git a/testing/fcitx5-gtk/fcitx5-gtk3.post-upgrade b/testing/fcitx5-gtk/fcitx5-gtk3.post-upgrade
deleted file mode 100755
index 75e5a242951..00000000000
--- a/testing/fcitx5-gtk/fcitx5-gtk3.post-upgrade
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-/usr/bin/gtk-query-immodules-3.0 --update-cache
-
-exit 0
diff --git a/testing/fcitx5-hangul/APKBUILD b/testing/fcitx5-hangul/APKBUILD
new file mode 100644
index 00000000000..b4542a5fbc4
--- /dev/null
+++ b/testing/fcitx5-hangul/APKBUILD
@@ -0,0 +1,37 @@
+# Contributor: Lindsay Zhou <i@lin.moe>
+# Maintainer: Lindsay Zhou <i@lin.moe>
+pkgname=fcitx5-hangul
+pkgver=5.1.2
+pkgrel=0
+pkgdesc="libhangul input method support for fcitx5"
+url="https://github.com/fcitx/fcitx5-hangul"
+arch="all"
+license="GPL-3.0-or-later"
+makedepends="
+ cmake
+ extra-cmake-modules
+ gettext-dev
+ fcitx5-dev
+ libhangul-dev
+ samurai
+ "
+subpackages="$pkgname-lang"
+source="$pkgname-$pkgver.tar.gz::https://github.com/fcitx/fcitx5-hangul/archive/refs/tags/$pkgver.tar.gz"
+options="!check" # no tests
+
+build() {
+ CXXFLAGS="$CXXFLAGS -flto=auto" \
+ CFLAGS="$CFLAGS -flto=auto" \
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCMAKE_INSTALL_PREFIX=/usr
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+5e1ba80a29ee08200d4bb40ffb33fa7ad69f6f8476e00c10e9e4e800d6d29bc7f92346d6f377b2497e7080f780d913c1aee7042048a0a6099a812b1dec34abe0 fcitx5-hangul-5.1.2.tar.gz
+"
diff --git a/testing/fcitx5-kkc/APKBUILD b/testing/fcitx5-kkc/APKBUILD
new file mode 100644
index 00000000000..a18620545a5
--- /dev/null
+++ b/testing/fcitx5-kkc/APKBUILD
@@ -0,0 +1,42 @@
+# Contributor: Lindsay Zhou <i@lin.moe>
+# Maintainer: Lindsay Zhou <i@lin.moe>
+pkgname=fcitx5-kkc
+pkgver=5.1.2
+pkgrel=0
+pkgdesc="libkkc input method support for fcitx5"
+url="https://github.com/fcitx/fcitx5-kkc"
+arch="all"
+license="GPL-3.0-or-later"
+makedepends="
+ cmake
+ extra-cmake-modules
+ gettext-dev
+ fcitx5-dev
+ fcitx5-qt-dev
+ libkkc-dev
+ qt6-qttools-dev
+ samurai
+ "
+subpackages="$pkgname-lang"
+source="$pkgname-$pkgver.tar.gz::https://github.com/fcitx/fcitx5-kkc/archive/refs/tags/$pkgver.tar.gz
+ cxx17.patch
+ "
+options="!check" # no tests
+
+build() {
+ CFLAGS="$CFLAGS -flto=auto" \
+ CXXFLAGS="$CXXFLAGS -flto=auto" \
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCMAKE_INSTALL_PREFIX=/usr
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+ecf217da4c765dc8c10dd82fc5141bc51f8461624a4b45b2c2054b6775f424dfb3aa3c533d05f7595a3f63b4124ca5efebade2188ad6a47fcb553d61a6f3ccde fcitx5-kkc-5.1.2.tar.gz
+e58e74bc15497462414d2fbb99c0685249de5f5a5850d39696dfde7e3c171d5932a9b2f4bfd3d4a9c2e2d103ad2456cd2e7d0545a254b55b79cecb08d953d779 cxx17.patch
+"
diff --git a/testing/fcitx5-kkc/cxx17.patch b/testing/fcitx5-kkc/cxx17.patch
new file mode 100644
index 00000000000..1291ecba80f
--- /dev/null
+++ b/testing/fcitx5-kkc/cxx17.patch
@@ -0,0 +1,14 @@
+required against new fcitx libs
+diff --git a/gui/CMakeLists.txt b/gui/CMakeLists.txt
+index 2327132..8a6f0d8 100644
+--- a/gui/CMakeLists.txt
++++ b/gui/CMakeLists.txt
+@@ -17,7 +17,7 @@ qt5_wrap_ui(KKC_CONFIG_SRCS dictwidget.ui adddictdialog.ui shortcutwidget.ui add
+ add_library(fcitx5-kkc-config
+ MODULE ${KKC_CONFIG_SRCS})
+
+-add_definitions(-DQT_NO_KEYWORDS)
++add_definitions(-DQT_NO_KEYWORDS -std=c++17)
+
+ target_include_directories(fcitx5-kkc-config PRIVATE ${PROJECT_BINARY_DIR} ${CMAKE_CURRENT_BINARY_DIR})
+
diff --git a/testing/fcitx5-lua/APKBUILD b/testing/fcitx5-lua/APKBUILD
new file mode 100644
index 00000000000..44d07374842
--- /dev/null
+++ b/testing/fcitx5-lua/APKBUILD
@@ -0,0 +1,41 @@
+# Maintainer:
+pkgname=fcitx5-lua
+pkgver=5.0.12
+pkgrel=0
+pkgdesc="Lua support for fcitx5"
+url="https://github.com/fcitx/fcitx5-lua"
+arch="all"
+license="LGPL-2.1-or-later"
+makedepends="
+ cmake
+ extra-cmake-modules
+ gettext-dev
+ fcitx5-dev
+ lua5.3-dev
+ samurai
+ "
+subpackages="$pkgname-lang $pkgname-dev"
+source="$pkgname-$pkgver.tar.gz::https://github.com/fcitx/fcitx5-lua/archive/refs/tags/$pkgver.tar.gz"
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DUSE_DLOPEN=OFF \
+ -DLUA_LIBRARIES=/usr/lib/liblua-5.3.so.0 \
+ -DLUA_LIBRARY=/usr/lib/liblua-5.3.so.0 \
+ -DENABLE_TEST="$(want_check && echo ON || echo OFF)"
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+09a0d9e21d378c114dfda1ba89c5f9bc49dca9fc2c3241451b00a3629510f2d152eef5a5d4a055c4aaab036c1469b6aa210400f0ffd90f3a81bcad5ea114c291 fcitx5-lua-5.0.12.tar.gz
+"
diff --git a/testing/fcitx5-m17n/APKBUILD b/testing/fcitx5-m17n/APKBUILD
new file mode 100644
index 00000000000..3367cf55de5
--- /dev/null
+++ b/testing/fcitx5-m17n/APKBUILD
@@ -0,0 +1,39 @@
+# Maintainer:
+pkgname=fcitx5-m17n
+pkgver=5.1.0
+pkgrel=1
+pkgdesc="m17n extra input method support for fcitx5"
+url="https://github.com/fcitx/fcitx5-m17n"
+arch="all"
+license="LGPL-2.1-or-later"
+makedepends="
+ cmake
+ extra-cmake-modules
+ gettext-dev
+ fcitx5-dev
+ fmt-dev
+ m17n-lib-dev
+ samurai
+ "
+subpackages="$pkgname-lang"
+source="$pkgname-$pkgver.tar.gz::https://github.com/fcitx/fcitx5-m17n/archive/refs/tags/$pkgver.tar.gz"
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DENABLE_TEST="$(want_check && echo ON || echo OFF)"
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failre
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+de273de4a01d0c9f23c6b96fe984c97881947907911e3ea60fefc5dcb50e23dcd64a28e891893ed058fe4ec2c2f7f2dbc4a0f8de2957052ff9c5ea5d88f5ff21 fcitx5-m17n-5.1.0.tar.gz
+"
diff --git a/testing/fcitx5-qt/APKBUILD b/testing/fcitx5-qt/APKBUILD
new file mode 100644
index 00000000000..a65adb4b0f2
--- /dev/null
+++ b/testing/fcitx5-qt/APKBUILD
@@ -0,0 +1,80 @@
+# Contributor: ProgCat <progcat@protonmail.com>
+# Maintainer: ProgCat <progcat@protonmail.com>
+pkgname=fcitx5-qt
+pkgver=5.1.5
+pkgrel=0
+pkgdesc="Qt library and IM module for Fcitx5"
+url="https://github.com/fcitx/fcitx5-qt"
+arch="all"
+license="LGPL-2.1-or-later AND BSD-3-Clause"
+makedepends="
+ cmake
+ extra-cmake-modules
+ fcitx5-dev
+ libxkbcommon-dev
+ libxcb-dev
+ libxkbcommon-dev
+ libxcb-dev
+ libx11-dev
+ libxcb-dev
+ libxkbcommon-dev
+ qt5-qtbase-dev
+ qt6-qtbase-dev
+ qt6-qtwayland-dev
+ samurai
+ "
+subpackages="
+ $pkgname-dev
+ $pkgname-lang
+ $pkgname-qt5
+ $pkgname-qt6
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/fcitx/fcitx5-qt/archive/refs/tags/$pkgver.tar.gz"
+
+build() {
+ if [ "$CBUILD" != "$CHOST" ]; then
+ CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ CXXFLAGS="$CXXFLAGS -flto=auto -DNDEBUG" \
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=True \
+ -DCMAKE_BUILD_TYPE=None \
+ -DENABLE_QT4=Off \
+ -DENABLE_QT6=ON \
+ $CMAKE_CROSSOPTS
+ cmake --build build
+}
+
+check() {
+ cd build
+ CTEST_OUTPUT_ON_FAILURE=TRUE ctest
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+qt5() {
+ pkgdesc="$pkgdesc (Qt5)"
+ install_if="$pkgname=$pkgver-r$pkgrel qt5-qtbase-x11"
+
+ amove usr/lib/libFcitx5Qt5*
+ amove usr/lib/qt5
+ amove usr/libexec/fcitx5-qt5-gui-wrapper
+ amove usr/share/applications/org.fcitx.fcitx5-qt5-gui-wrapper.desktop
+}
+
+qt6() {
+ pkgdesc="$pkgdesc (Qt6)"
+ install_if="$pkgname=$pkgver-r$pkgrel qt6-qtbase-x11"
+
+ amove usr/lib/libFcitx5Qt6*
+ amove usr/lib/fcitx5/qt6
+ amove usr/lib/qt6
+}
+
+sha512sums="
+a153571b9e393ab1fb355b6de840760e3fec186c62785ac2a8186e0a023d8f3b517a25ee251747ad457e12d649b55e8b558772b8c0b015b8ae459f3f66098a06 fcitx5-qt-5.1.5.tar.gz
+"
diff --git a/testing/fcitx5-rime/APKBUILD b/testing/fcitx5-rime/APKBUILD
new file mode 100644
index 00000000000..ebd15bcfdbf
--- /dev/null
+++ b/testing/fcitx5-rime/APKBUILD
@@ -0,0 +1,38 @@
+# Contributor: Lindsay Zhou <i@lin.moe>
+# Maintainer: Lindsay Zhou <i@lin.moe>
+pkgname=fcitx5-rime
+pkgver=5.1.5
+pkgrel=0
+pkgdesc="librime input method support for fcitx5"
+url="https://github.com/fcitx/fcitx5-rime"
+arch="all"
+license="GPL-3.0-or-later"
+makedepends="
+ cmake
+ extra-cmake-modules
+ gettext-dev
+ fcitx5-dev
+ fcitx5-qt-dev
+ librime-dev
+ samurai
+ "
+subpackages="$pkgname-lang"
+source="$pkgname-$pkgver.tar.gz::https://github.com/fcitx/fcitx5-rime/archive/refs/tags/$pkgver.tar.gz"
+options="!check" # no tests
+
+build() {
+ CFLAGS="$CFLAGS -flto=auto" \
+ CXXFLAGS="$CXXFLAGS -flto=auto" \
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCMAKE_INSTALL_PREFIX=/usr
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+b80b86e3e984a7cba345087c6d7cdc88366297ab9027ee4767367454b65be870d4e5e53dd6214a856b9cf3b3edebaff75fa1d60faf9295f74a8a8706c0094f87 fcitx5-rime-5.1.5.tar.gz
+"
diff --git a/testing/fcitx5-table-extra/APKBUILD b/testing/fcitx5-table-extra/APKBUILD
new file mode 100644
index 00000000000..3a9e3b75244
--- /dev/null
+++ b/testing/fcitx5-table-extra/APKBUILD
@@ -0,0 +1,34 @@
+# Contributor: Lindsay Zhou <i@lin.moe>
+# Maintainer: Lindsay Zhou <i@lin.moe>
+pkgname=fcitx5-table-extra
+pkgver=5.1.4
+pkgrel=0
+pkgdesc="extra-table input method support for fcitx5"
+url="https://github.com/fcitx/fcitx5-table-extra"
+arch="noarch"
+license="GPL-3.0-or-later"
+makedepends="
+ cmake
+ extra-cmake-modules
+ gettext-dev
+ fcitx5-dev
+ libime-dev
+ samurai
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/fcitx/fcitx5-table-extra/archive/refs/tags/$pkgver.tar.gz"
+options="!check" # no tests
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCMAKE_INSTALL_PREFIX=/usr
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+12611d16f06aa28d82764feb7a0bab8114106519be3e5f011eed6da6354729432968354adb48ddc425b215295cb6d5006ea8da82cb1ac78e77ae76c4ba1f40c7 fcitx5-table-extra-5.1.4.tar.gz
+"
diff --git a/testing/fcitx5-table-other/APKBUILD b/testing/fcitx5-table-other/APKBUILD
new file mode 100644
index 00000000000..77ed61001a1
--- /dev/null
+++ b/testing/fcitx5-table-other/APKBUILD
@@ -0,0 +1,34 @@
+# Contributor: Lindsay Zhou <i@lin.moe>
+# Maintainer: Lindsay Zhou <i@lin.moe>
+pkgname=fcitx5-table-other
+pkgver=5.1.1
+pkgrel=0
+pkgdesc="other-table input method support for fcitx5"
+url="https://github.com/fcitx/fcitx5-table-other"
+arch="noarch"
+license="GPL-3.0-only"
+makedepends="
+ cmake
+ extra-cmake-modules
+ gettext-dev
+ fcitx5-dev
+ libime-dev
+ samurai
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/fcitx/fcitx5-table-other/archive/refs/tags/$pkgver.tar.gz"
+options="!check" # no tests
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCMAKE_INSTALL_PREFIX=/usr
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+2447caebb5774d9157293c09729b63e3fc7bbd83ae32a39e2ed0b70a1979bb32dd757587da41b818d94ecd7c7c636c10a1fe0304b646e24fe6d8bda9b8774029 fcitx5-table-other-5.1.1.tar.gz
+"
diff --git a/testing/fcitx5-unikey/APKBUILD b/testing/fcitx5-unikey/APKBUILD
new file mode 100644
index 00000000000..8b2fc34ffbd
--- /dev/null
+++ b/testing/fcitx5-unikey/APKBUILD
@@ -0,0 +1,49 @@
+# Contributor: Lindsay Zhou <i@lin.moe>
+# Maintainer: Lindsay Zhou <i@lin.moe>
+pkgname=fcitx5-unikey
+pkgver=5.1.3
+pkgrel=0
+pkgdesc="Unikey Wrapper for Fcitx"
+url="https://github.com/fcitx/fcitx5-unikey"
+arch="all"
+license="LGPL-2.0-or-later AND GPL-2.0-or-later"
+makedepends="
+ cmake
+ extra-cmake-modules
+ fcitx5-dev
+ fcitx5-qt-dev
+ gettext-dev
+ qt6-qtbase-dev
+ samurai
+ "
+subpackages="$pkgname-lang"
+source="$pkgname-$pkgver.tar.gz::https://github.com/fcitx/fcitx5-unikey/archive/refs/tags/$pkgver.tar.gz"
+
+build() {
+ if [ "$CBUILD" != "$CHOST" ]; then
+ CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ CFLAGS="$CFLAGS -flto=auto" \
+ CXXFLAGS="$CXXFLAGS -flto=auto" \
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=True \
+ -DCMAKE_BUILD_TYPE=None \
+ -DENABLE_TEST="$(want_check && echo ON || echo OFF)" \
+ $CMAKE_CROSSOPTS
+ cmake --build build
+}
+
+check() {
+ cd build
+ CTEST_OUTPUT_ON_FAILURE=TRUE ctest
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+c74be9089bb8ef2e44678336b28ca397f2af06e2f69f66c94d55c2ab8325c97f01fa517398a4640e660dbe95b5090970c72adad39ba6d87276faa96b34b762e1 fcitx5-unikey-5.1.3.tar.gz
+"
diff --git a/testing/fcitx5/APKBUILD b/testing/fcitx5/APKBUILD
index 3720319f8dd..bfbb2fa6a1a 100644
--- a/testing/fcitx5/APKBUILD
+++ b/testing/fcitx5/APKBUILD
@@ -1,12 +1,11 @@
# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=fcitx5
-pkgver=5.0.16
+pkgver=5.1.8
pkgrel=0
pkgdesc="Generic input method framework"
url="https://github.com/fcitx/fcitx5"
-# armhf: blocked by extra-cmake-modules, xcb-imdkit-dev
-arch="all !armhf"
+arch="all"
license="LGPL-2.1-or-later"
makedepends="
cairo-dev
@@ -19,7 +18,6 @@ makedepends="
iso-codes-dev
iso-codes-lang
json-c-dev
- libevent-dev
libxkbcommon-dev
libxkbfile-dev
mesa-dev
@@ -30,21 +28,25 @@ makedepends="
xcb-imdkit-dev
xcb-util-keysyms-dev
xcb-util-wm-dev
+ xkeyboard-config-dev
+ libuv-dev
"
+
subpackages="$pkgname-lang $pkgname-dev"
-source="https://github.com/fcitx/fcitx5/archive/$pkgver/fcitx5-$pkgver.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/fcitx/fcitx5/archive/$pkgver/fcitx5-$pkgver.tar.gz"
options="!check" # requires working dbus
build() {
if [ "$CBUILD" != "$CHOST" ]; then
CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
fi
- cmake -G Ninja -B build \
+ CXXFLAGS="$CXXFLAGS -DNDEBUG" \
+ cmake -G Ninja -B build -Wno-dev \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
-DBUILD_SHARED_LIBS=True \
- -DCMAKE_BUILD_TYPE=Release \
- $CMAKE_CROSSOPTS .
+ -DCMAKE_BUILD_TYPE=None \
+ $CMAKE_CROSSOPTS
cmake --build build
}
@@ -53,5 +55,5 @@ package() {
}
sha512sums="
-cf27e414da54618d4d914b3acd291a90cfa7f806e78ef902860228f1ce0e689fac57dee46d335a1ce5fcffa8d31b55f745fd14015ece9a0311d5aba868fa9735 fcitx5-5.0.16.tar.gz
+e815e7a991c2f07b64d33c988b20e6051fa5ab5d0c25f3971d6b1689d50eee3dd57f58e521d8fa8619b10c800ede664f4642c1e6f7d9344e6f7c2bd65c1340d1 fcitx5-5.1.8.tar.gz
"
diff --git a/testing/fclones/APKBUILD b/testing/fclones/APKBUILD
deleted file mode 100644
index 6175e406fc6..00000000000
--- a/testing/fclones/APKBUILD
+++ /dev/null
@@ -1,41 +0,0 @@
-# Contributor: Michał Polański <michal@polanski.me>
-# Maintainer: Michał Polański <michal@polanski.me>
-pkgname=fclones
-pkgver=0.24.0
-pkgrel=1
-pkgdesc="Efficient duplicate file finder"
-url="https://github.com/pkolaczk/fclones"
-license="MIT"
-arch="all !s390x !riscv64" # blocked by rust/cargo
-arch="$arch !armhf !armv7 !x86" # tests fail
-makedepends="cargo eudev-dev"
-source="https://github.com/pkolaczk/fclones/archive/v$pkgver/fclones-$pkgver.tar.gz
- musl-fix.patch
- "
-
-export CARGO_PROFILE_RELEASE_CODEGEN_UNITS=1
-export CARGO_PROFILE_RELEASE_LTO="true"
-export CARGO_PROFILE_RELEASE_PANIC="abort"
-
-prepare() {
- default_prepare
-
- cargo fetch --locked
-}
-
-build() {
- cargo build --frozen --release
-}
-
-check() {
- cargo test --frozen
-}
-
-package() {
- install -Dm755 target/release/fclones "$pkgdir"/usr/bin/fclones
-}
-
-sha512sums="
-5bfa28a77eb6453d91b66e644faf8c989f411cccb18b0b188488e0c6a7a75905b21548f05887fe1892fac5b4cadb6a462ca88d4583dbd3d255af2b70896804e0 fclones-0.24.0.tar.gz
-bca0d44f67de1f16e2cbdccfe7fb5b0aea4cadf5912b548eaa584d3c40e32e1b8d81385a19dc48e2ef66143ac392c8538489c10c0f0fc60fb8f779446edc4d3a musl-fix.patch
-"
diff --git a/testing/fclones/musl-fix.patch b/testing/fclones/musl-fix.patch
deleted file mode 100644
index 338116700cd..00000000000
--- a/testing/fclones/musl-fix.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-Fix compilation of tests on musl-based systems,
-see: https://github.com/pkolaczk/fclones/issues/95
-
-> Compiling reflink v0.1.3
-> error[E0308]: mismatched types
-> --> /home/mpl/.cargo/registry/src/github.com-1ecc6299db9ec823/reflink-0.1.3/src/sys/unix.rs:21:39
-> |
-> 21 | libc::ioctl(dest.as_raw_fd(), IOCTL_FICLONE, src.as_raw_fd())
-> | ^^^^^^^^^^^^^ expected `i32`, found `u64`
-> |
-> help: you can convert a `u64` to an `i32` and panic if the converted value doesn't fit
-> |
-> 21 | libc::ioctl(dest.as_raw_fd(), IOCTL_FICLONE.try_into().unwrap(), src.as_raw_fd())
-> | ++++++++++++++++++++
->
-> For more information about this error, try `rustc --explain E0308`.
-> error: could not compile `reflink` due to previous error
-
---- a/Cargo.lock
-+++ b/Cargo.lock
-@@ -892,8 +892,7 @@ dependencies = [
- [[package]]
- name = "reflink"
- version = "0.1.3"
--source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "bc585ec28b565b4c28977ce8363a6636cedc280351ba25a7915f6c9f37f68cbe"
-+source = "git+https://github.com/nicokoch/reflink.git?rev=e8d93b465f5d9ad340cd052b64bbc77b8ee107e2#e8d93b465f5d9ad340cd052b64bbc77b8ee107e2"
- dependencies = [
- "libc",
- "winapi",
-diff --git a/Cargo.toml b/Cargo.toml
-index 3f96e5a..c4e1ee1 100644
---- a/Cargo.toml
-+++ b/Cargo.toml
-@@ -67,10 +67,10 @@ winapi = "0.3"
- winapi-util = "0.1"
-
- [target.'cfg(not(any(target_os = "linux", target_os = "android")))'.dependencies]
--reflink = "0.1"
-+reflink = { git = "https://github.com/nicokoch/reflink.git", rev = "e8d93b465f5d9ad340cd052b64bbc77b8ee107e2" }
-
- [dev-dependencies]
--reflink = "0.1"
-+reflink = { git = "https://github.com/nicokoch/reflink.git", rev = "e8d93b465f5d9ad340cd052b64bbc77b8ee107e2" }
- serde_test = "1.0"
- tempfile = "3.3"
diff --git a/testing/fdm-materials/APKBUILD b/testing/fdm-materials/APKBUILD
new file mode 100644
index 00000000000..5bde97de88c
--- /dev/null
+++ b/testing/fdm-materials/APKBUILD
@@ -0,0 +1,27 @@
+# Contributor: Aiden Grossman <agrossman154@yahoo.com>
+# Maintainer: Aiden Grossman <agrossman154@yahoo.com>
+pkgname=fdm-materials
+pkgver=5.2.2
+pkgrel=0
+pkgdesc="FDM Material Database"
+url="https://github.com/Ultimaker/fdm_materials"
+arch="noarch"
+license="CC0-1.0"
+makedepends="cmake samurai"
+options="!check" # no checks provided
+source="$pkgname-$pkgver.tar.gz::https://github.com/Ultimaker/fdm_materials/archive/refs/tags/$pkgver.tar.gz"
+builddir="$srcdir/fdm_materials-$pkgver"
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+73eefec8b7b88af73afc578ffba583480bda30309945b1720d7a1a075bd7ab3279599d53fe83f4c96695f294a5a3e11297abc334ca6cc9db163d4eb0fbdaf0f9 fdm-materials-5.2.2.tar.gz
+"
diff --git a/testing/fdm/APKBUILD b/testing/fdm/APKBUILD
index 20a9123e1cf..d114265b877 100644
--- a/testing/fdm/APKBUILD
+++ b/testing/fdm/APKBUILD
@@ -1,26 +1,24 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
-pkgname="fdm"
-pkgver="2.0"
+pkgname=fdm
+pkgver=2.2
pkgrel=0
pkgdesc="A simple lightweight tool of fetching, filtering and delivering emails"
url="https://github.com/nicm/fdm"
arch="all"
license="ISC"
-depends=""
-makedepends="tdb-dev openssl-dev zlib-dev bsd-compat-headers pcre-dev
- automake autoconf libtool"
+makedepends="
+ openssl-dev>3
+ pcre2-dev
+ tdb-dev
+ zlib-dev
+ "
subpackages="$pkgname-doc"
source="https://github.com/nicm/fdm/releases/download/$pkgver/fdm-$pkgver.tar.gz
- fix-base64.patch
+ $pkgname-pcre2-fix.patch::https://github.com/nicm/fdm/commit/f1ec1982725d60045c0d871f3e613f2880046c22.patch
"
-bbuuilddir="$srcdir/fdm-$pkgver"
-
-prepare() {
- default_prepare
- autoreconf -vif
-}
build() {
+ CFLAGS="$CFLAGS -flto=auto" \
./configure \
--build=$CBUILD \
--host=$CHOST \
@@ -28,7 +26,7 @@ build() {
--sysconfdir=/etc \
--mandir=/usr/share/man \
--localstatedir=/var \
- --enable-pcre
+ --enable-pcre2
make
}
@@ -40,5 +38,7 @@ package() {
make DESTDIR="$pkgdir" install
}
-sha512sums="14e923202d17083ceb3b91b3a442d7e512c37f3d29535f22d8c0c4e1d57c97acc5d5465d643ed0cf437b3945ef777a6e38da3117219c2d54dcec88ecab1e10d9 fdm-2.0.tar.gz
-ec2ebaa39e653db807ed89ec162960d5734c858b1a15a92ea9dfcd34a39c803f33d0e05e7333d1878df9d5d6187da3d12249cc397d8fcdad4e3decd836cc0a59 fix-base64.patch"
+sha512sums="
+13efa0f272c5f6146b90e094602e8a9b52016af79ae0b6cd80dc9f36b2ba37f64cadae7313bd8db90bcb007dd07206a3614987f11bb82c3535e04f0511c9fc6d fdm-2.2.tar.gz
+408da5b9ee9936fb198cdeb5bf3ad8e350845e9d0b009830d933cde0d5f8175c573a526ade42459ee32ddf7b1354a254c284214891f61afa16e71296bf53b71d fdm-pcre2-fix.patch
+"
diff --git a/testing/fdm/fix-base64.patch b/testing/fdm/fix-base64.patch
deleted file mode 100644
index 0326f57c368..00000000000
--- a/testing/fdm/fix-base64.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-From 519e41833c1f7d353c09d8d51bfd6d13d0cfc16c Mon Sep 17 00:00:00 2001
-From: Nicholas Marriott <nicholas.marriott@gmail.com>
-Date: Mon, 18 Feb 2019 22:26:29 +0000
-Subject: [PATCH] Do not add base64.c twice, from Rosen Penev.
-
----
- Makefile.am | 3 ---
- 1 file changed, 3 deletions(-)
-
-diff --git a/Makefile.am b/Makefile.am
-index 611ae87..e9f2f64 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -123,6 +123,3 @@ endif
- if NO_STRTONUM
- nodist_fdm_SOURCES += compat/strtonum.c
- endif
--if NO_B64_NTOP
--nodist_fdm_SOURCES += compat/base64.c
--endif
-From 3232e537ccaba4417b25d9d70264e4a5533042da Mon Sep 17 00:00:00 2001
-From: Nicholas Marriott <nicholas.marriott@gmail.com>
-Date: Mon, 18 Mar 2019 13:04:00 +0000
-Subject: [PATCH] Fix bas64 declarations, from makepost at firemail dot cc.
-
----
- fdm.h | 5 ++---
- 1 file changed, 2 insertions(+), 3 deletions(-)
-
-diff --git a/fdm.h b/fdm.h
-index 41eaa37..511a7b1 100644
---- a/fdm.h
-+++ b/fdm.h
-@@ -20,7 +20,6 @@
- #define FDM_H
-
- #include <sys/param.h>
--#include <sys/cdefs.h>
- #include <sys/stat.h>
-
- #ifdef HAVE_QUEUE_H
-@@ -725,8 +724,8 @@ size_t strlcat(char *, const char *, size_t);
-
- #ifndef HAVE_B64_NTOP
- /* base64.c */
--int b64_ntop(src, srclength, target, targsize);
--int b64_pton(src, target, targsize);
-+int b64_ntop(u_char const *, size_t, char *, size_t);
-+int b64_pton(char const *, u_char *, size_t);
- #endif
-
- /* shm.c */
diff --git a/testing/featherpad/APKBUILD b/testing/featherpad/APKBUILD
index f58a8900947..a0dfc326d2d 100644
--- a/testing/featherpad/APKBUILD
+++ b/testing/featherpad/APKBUILD
@@ -1,14 +1,19 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
+# Contributor: Antoni Aloy <aaloytorrens@gmail.com>
+# Maintainer: Pedram Pourang <tsujan2000@gmail.com>
pkgname=featherpad
-pkgver=1.1.0
+pkgver=1.5.0
pkgrel=0
pkgdesc="Lightweight Qt plain-text editor"
url="https://github.com/tsujan/FeatherPad"
license="GPL-3.0-or-later"
arch="all"
makedepends="
- cmake libx11-dev qt5-qtbase-dev qt5-qtsvg-dev
- qt5-qttools-dev qt5-qtx11extras-dev hunspell-dev
+ cmake
+ hunspell-dev
+ qt6-qtbase-dev
+ qt6-qtsvg-dev
+ qt6-qttools-dev
+ samurai
"
subpackages="$pkgname-lang"
options="!check" # no test suite
@@ -19,10 +24,9 @@ build() {
if [ "$CBUILD" != "$CHOST" ]; then
CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
fi
- cmake -B build \
- -DCMAKE_BUILD_TYPE=None \
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DBUILD_SHARED_LIBS=True \
$CMAKE_CROSSOPTS .
cmake --build build
}
@@ -32,9 +36,9 @@ package() {
}
lang() {
- amove usr/share/featherpad/translations
+ amove usr/share/$pkgname/translations
}
sha512sums="
-0a4dcdbdb6edc1a11a6dba5dd3afa04bb435f1d722211c45c7f8ca465b67accced706cb56e0989788b5be7624c6b31cf4782735c91c5e819df2e6a32947ec1f0 FeatherPad-1.1.0.tar.xz
+5104fbcb2f83e3bdb9c1394cd546b1d6036d3e00e4e358da05affed895a426b1d63bd4d62edc5c65beed96fa3d4adcdadafb4f5b2eb84406ba651576e49c2bb6 FeatherPad-1.5.0.tar.xz
"
diff --git a/testing/felix/APKBUILD b/testing/felix/APKBUILD
new file mode 100644
index 00000000000..536d4776e9e
--- /dev/null
+++ b/testing/felix/APKBUILD
@@ -0,0 +1,59 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=felix
+pkgver=2.12.1
+pkgrel=0
+pkgdesc="Simple TUI file manager with vim-like key mapping"
+url="https://kyoheiu.dev/felix/"
+# s390x: nix crate doesn't build yet
+arch="all !s390x"
+license="MIT"
+makedepends="
+ bzip2-dev
+ cargo
+ cargo-auditable
+ libgit2-dev
+ oniguruma-dev
+ zlib-ng-dev
+ zstd-dev
+ "
+checkdepends="zoxide"
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/kyoheiu/felix/archive/refs/tags/v$pkgver.tar.gz
+ use-system-libs.patch
+ "
+
+export RUSTONIG_DYNAMIC_LIBONIG=1
+
+prepare() {
+ default_prepare
+
+ # Rust target triple.
+ local target=$(rustc -vV | sed -n 's/host: //p')
+
+ # Build against system-provided libs
+ mkdir -p .cargo
+ cat >> .cargo/config.toml <<-EOF
+ [target.$target]
+ git2 = { rustc-link-lib = ["git2"] }
+ z-ng = { rustc-link-lib = ["z-ng"], rustc-cfg = ["zng"] }
+ EOF
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm755 target/release/fx -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+30ff3277d7e9c0c90387a91ed6c50ab1949905ccd645e9e95d2a56a0fd919e9e8bbb69ce4b72525f0e8ed775882840f3829e4387a39a2d2e760d8d1245d7e8c8 felix-2.12.1.tar.gz
+3f9383877e8ad036a09c75d954ec4574e26b1b1aa660170d065867be9080aad9e4bb8ad63d86a684d4c1534c86ebe29a35b746f73e572485b17f26177319d461 use-system-libs.patch
+"
diff --git a/testing/felix/use-system-libs.patch b/testing/felix/use-system-libs.patch
new file mode 100644
index 00000000000..30ad2a35e21
--- /dev/null
+++ b/testing/felix/use-system-libs.patch
@@ -0,0 +1,61 @@
+diff --git a/Cargo.lock b/Cargo.lock
+index b08d2aa..0fbd4a8 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -147,6 +147,15 @@ dependencies = [
+ "inout",
+ ]
+
++[[package]]
++name = "cmake"
++version = "0.1.50"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "a31c789563b815f77f4250caee12365734369f942439b7defd71e18a48197130"
++dependencies = [
++ "cc",
++]
++
+ [[package]]
+ name = "constant_time_eq"
+ version = "0.1.5"
+@@ -376,6 +385,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e"
+ dependencies = [
+ "crc32fast",
++ "libz-ng-sys",
+ "miniz_oxide",
+ ]
+
+@@ -542,6 +552,16 @@ dependencies = [
+ "redox_syscall",
+ ]
+
++[[package]]
++name = "libz-ng-sys"
++version = "1.1.15"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "c6409efc61b12687963e602df8ecf70e8ddacf95bc6576bcf16e3ac6328083c5"
++dependencies = [
++ "cmake",
++ "libc",
++]
++
+ [[package]]
+ name = "libz-sys"
+ version = "1.1.15"
+diff --git a/Cargo.toml b/Cargo.toml
+index 3ccaf0f..1aebeba 100644
+--- a/Cargo.toml
++++ b/Cargo.toml
+@@ -30,9 +30,9 @@ crossterm = "0.26.1"
+ serde_yaml = "0.9.25"
+ zip = "0.6.6"
+ tar = "0.4.39"
+-flate2 = "1.0.26"
++flate2 = {version = "1.0.26", default-features = false, features = ["zlib-ng"]}
+ lzma-rs = "0.3.0"
+-zstd = "0.12.4"
++zstd = {version = "0.12.4", default-features = false, features = ["pkg-config"]}
+ unicode-width = "0.1.10"
+ git2 = {version = "0.18.0", default-features = false }
+
diff --git a/testing/fff/APKBUILD b/testing/fff/APKBUILD
new file mode 100644
index 00000000000..24fb4be48a7
--- /dev/null
+++ b/testing/fff/APKBUILD
@@ -0,0 +1,23 @@
+# Maintainer: Avis Orsetti <avisorsetti@riseup.net>
+pkgname=fff
+pkgver=2.2
+pkgrel=0
+pkgdesc="Simple and fast file manager"
+url="https://github.com/dylanaraps/fff"
+arch="noarch"
+license="MIT"
+depends="bash coreutils xdg-utils"
+subpackages="$pkgname-doc"
+options="!check" # No tests provided
+source="fff-$pkgver.tar.gz::https://github.com/dylanaraps/fff/archive/refs/tags/$pkgver.tar.gz"
+
+package() {
+ install -Dm755 -t "$pkgdir/usr/bin" $pkgname
+ install -Dm644 -t "$pkgdir/usr/share/man/man1" $pkgname.1
+ install -Dm644 -t "$pkgdir/usr/share/doc/$pkgname" README.md
+ install -Dm644 -t "$pkgdir/usr/share/licenses/$pkgname" LICENSE.md
+}
+
+sha512sums="
+364fef67b69aa28fc9448eb4b11c4d7152f11191fd4313f728b1bb00fbc80682dd2d3b4d65884aa3d70b82d319e2ca8e19bf7a06c04b250e49c3577caa5fe2cf fff-2.2.tar.gz
+"
diff --git a/testing/fflas-ffpack/APKBUILD b/testing/fflas-ffpack/APKBUILD
new file mode 100644
index 00000000000..d6e6c16e199
--- /dev/null
+++ b/testing/fflas-ffpack/APKBUILD
@@ -0,0 +1,41 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
+pkgname=fflas-ffpack
+pkgver=2.5.0
+pkgrel=3
+pkgdesc="Library for basic linear algebra operations over a finite field"
+url="https://github.com/linbox-team/fflas-ffpack"
+arch="all"
+license="LGPL-2.1-or-later"
+makedepends="
+ gmp-dev
+ libgivaro-dev
+ openblas-dev
+ "
+source="https://github.com/linbox-team/fflas-ffpack/releases/download/v$pkgver/fflas_ffpack-$pkgver.tar.bz2"
+builddir="$srcdir/fflas_ffpack-$pkgver"
+
+build() {
+ export CXXFLAGS="${CXXFLAGS/-Os/-O3}" # gotta go fast
+ ./configure \
+ --target="$CTARGET" \
+ --build="$CBUILD" \
+ --host="$CHOST" \
+ --prefix=/usr \
+ --without-archnative \
+ --enable-openmp
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+ mv "$pkgdir"/usr/bin/*fflas-ffpack-config "$pkgdir"/usr/bin/fflas-ffpack-config
+}
+
+sha512sums="
+afe09cdb51a19b819377ed5e04910ef9d05704f0a4e85feb618abe523e2baf5be6f310ad33f006ef306b37892238ce993eff1326f3bec2fa7a7e32535e1fb90a fflas_ffpack-2.5.0.tar.bz2
+"
diff --git a/testing/ffms2/APKBUILD b/testing/ffms2/APKBUILD
new file mode 100644
index 00000000000..165cf0d70f9
--- /dev/null
+++ b/testing/ffms2/APKBUILD
@@ -0,0 +1,37 @@
+# Maintainer: duckl1ng <bogdan@sanocki.info>
+pkgname=ffms2
+pkgver=2.40
+pkgrel=0
+pkgdesc="Cross-platform wrapper library around FFmpeg"
+url="https://github.com/FFMS/ffms2"
+arch="all"
+license="MIT"
+makedepends="
+ autoconf
+ automake
+ ffmpeg-dev
+ ffmpeg-libavcodec
+ ffmpeg-libswresample
+ libtool
+ zlib-dev
+ "
+subpackages="$pkgname-dev $pkgname-doc"
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/FFMS/ffms2/archive/refs/tags/$pkgver.tar.gz
+ ffmpeg-fix-api.patch
+ "
+options="!check" # No test suite
+
+build() {
+ ./autogen.sh --prefix=/usr
+ make
+}
+
+package() {
+ DESTDIR="$pkgdir" make install
+}
+
+sha512sums="
+407c4b0871f5046b9d364c2946eae88c46eec381b5748530d82918742fd4a36849de590024f8235af2785bd631c0299e591499dc43ae157ff2c6a6f2dab78b67 ffms2-2.40.tar.gz
+d11913d36fbc1b3d4797ec8f4f77ff7d89eee3d80c02c594a88ece5e71a749f4f8e4417d9895b7d102226a3f331b2b29014d5882b3b08ca3c5545ceecc133653 ffmpeg-fix-api.patch
+"
diff --git a/testing/ffms2/ffmpeg-fix-api.patch b/testing/ffms2/ffmpeg-fix-api.patch
new file mode 100644
index 00000000000..e730037a4f3
--- /dev/null
+++ b/testing/ffms2/ffmpeg-fix-api.patch
@@ -0,0 +1,355 @@
+# source: https://github.com/FFMS/ffms2/pull/380
+diff --git a/configure.ac b/configure.ac
+index b35ef80bcd..d19714d0f6 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -102,10 +102,10 @@ CFLAGS="$_CFLAGS $FFMPEG_CFLAGS"
+
+ AC_DEFUN([TEST_FFMPEG],
+ [AC_LINK_IFELSE([AC_LANG_PROGRAM([[
+- #include <libavcodec/avcodec.h>
++ #include <libavformat/avformat.h>
+ #include <libswscale/swscale.h>
+ ]],[[
+- avcodec_register_all();
++ avformat_network_init();
+ swscale_version();
+ ]])], [eval $1=yes], [eval $1=no])
+ ])
+diff --git a/src/core/audiosource.cpp b/src/core/audiosource.cpp
+index 37cf9aeefd..ac0966636f 100644
+--- a/src/core/audiosource.cpp
++++ b/src/core/audiosource.cpp
+@@ -285,10 +285,15 @@ FFMS_AudioSource::AudioBlock *FFMS_AudioSource::CacheBlock(CacheIterator &pos) {
+ int FFMS_AudioSource::DecodeNextBlock(CacheIterator *pos) {
+ CurrentFrame = &Frames[PacketNumber];
+
+- AVPacket Packet;
+- if (!ReadPacket(&Packet))
++ AVPacket *Packet = av_packet_alloc();
++ if (!Packet)
++ throw FFMS_Exception(FFMS_ERROR_PARSER, FFMS_ERROR_ALLOCATION_FAILED,
++ "Could not allocate packet.");
++ if (!ReadPacket(Packet)) {
++ av_packet_free(&Packet);
+ throw FFMS_Exception(FFMS_ERROR_PARSER, FFMS_ERROR_UNKNOWN,
+ "ReadPacket unexpectedly failed to read a packet");
++ }
+
+ // ReadPacket may have changed the packet number
+ CurrentFrame = &Frames[PacketNumber];
+@@ -297,8 +302,9 @@ int FFMS_AudioSource::DecodeNextBlock(CacheIterator *pos) {
+ int NumberOfSamples = 0;
+ AudioBlock *CachedBlock = nullptr;
+
+- int Ret = avcodec_send_packet(CodecContext, &Packet);
+- av_packet_unref(&Packet);
++ int Ret = avcodec_send_packet(CodecContext, Packet);
++ av_packet_unref(Packet);
++ av_packet_free(&Packet);
+
+ av_frame_unref(DecodeFrame);
+ Ret = avcodec_receive_frame(CodecContext, DecodeFrame);
+@@ -463,7 +469,7 @@ void FFMS_AudioSource::OpenFile() {
+
+ LAVFOpenFile(SourceFile.c_str(), FormatContext, TrackNumber);
+
+- AVCodec *Codec = avcodec_find_decoder(FormatContext->streams[TrackNumber]->codecpar->codec_id);
++ auto *Codec = avcodec_find_decoder(FormatContext->streams[TrackNumber]->codecpar->codec_id);
+ if (Codec == nullptr)
+ throw FFMS_Exception(FFMS_ERROR_DECODING, FFMS_ERROR_CODEC,
+ "Audio codec not found");
+@@ -513,8 +519,6 @@ void FFMS_AudioSource::Seek() {
+ }
+
+ bool FFMS_AudioSource::ReadPacket(AVPacket *Packet) {
+- InitNullPacket(*Packet);
+-
+ while (av_read_frame(FormatContext, Packet) >= 0) {
+ if (Packet->stream_index == TrackNumber) {
+ // Required because not all audio packets, especially in ogg, have a pts. Use the previous valid packet's pts instead.
+diff --git a/src/core/indexing.cpp b/src/core/indexing.cpp
+index 23fb95b128..59fb4e8ea8 100644
+--- a/src/core/indexing.cpp
++++ b/src/core/indexing.cpp
+@@ -320,7 +320,7 @@ void FFMS_Indexer::CheckAudioProperties(int Track, AVCodecContext *Context) {
+ }
+ }
+
+-void FFMS_Indexer::ParseVideoPacket(SharedAVContext &VideoContext, AVPacket &pkt, int *RepeatPict,
++void FFMS_Indexer::ParseVideoPacket(SharedAVContext &VideoContext, AVPacket *pkt, int *RepeatPict,
+ int *FrameType, bool *Invisible, enum AVPictureStructure *LastPicStruct) {
+ if (VideoContext.Parser) {
+ uint8_t *OB;
+@@ -330,8 +330,8 @@ void FFMS_Indexer::ParseVideoPacket(SharedAVContext &VideoContext, AVPacket &pkt
+ av_parser_parse2(VideoContext.Parser,
+ VideoContext.CodecContext,
+ &OB, &OBSize,
+- pkt.data, pkt.size,
+- pkt.pts, pkt.dts, pkt.pos);
++ pkt->data, pkt->size,
++ pkt->pts, pkt->dts, pkt->pos);
+
+ // H.264 (PAFF) and HEVC may have one field per packet, so we need to track
+ // when we have a full or half frame available, and mark one of them as
+@@ -351,15 +351,15 @@ void FFMS_Indexer::ParseVideoPacket(SharedAVContext &VideoContext, AVPacket &pkt
+
+ *RepeatPict = VideoContext.Parser->repeat_pict;
+ *FrameType = VideoContext.Parser->pict_type;
+- *Invisible = (IncompleteFrame || VideoContext.Parser->repeat_pict < 0 || (pkt.flags & AV_PKT_FLAG_DISCARD));
++ *Invisible = (IncompleteFrame || VideoContext.Parser->repeat_pict < 0 || (pkt->flags & AV_PKT_FLAG_DISCARD));
+ } else {
+- *Invisible = !!(pkt.flags & AV_PKT_FLAG_DISCARD);
++ *Invisible = !!(pkt->flags & AV_PKT_FLAG_DISCARD);
+ }
+
+ if (VideoContext.CodecContext->codec_id == AV_CODEC_ID_VP8)
+- ParseVP8(pkt.data[0], Invisible, FrameType);
++ ParseVP8(pkt->data[0], Invisible, FrameType);
+ else if (VideoContext.CodecContext->codec_id == AV_CODEC_ID_VP9)
+- ParseVP9(pkt.data[0], Invisible, FrameType);
++ ParseVP9(pkt->data[0], Invisible, FrameType);
+ }
+
+ void FFMS_Indexer::Free() {
+@@ -384,7 +384,7 @@ FFMS_TrackType FFMS_Indexer::GetTrackType(int Track) {
+ }
+
+ const char *FFMS_Indexer::GetTrackCodec(int Track) {
+- AVCodec *codec = avcodec_find_decoder(FormatContext->streams[Track]->codecpar->codec_id);
++ auto *codec = avcodec_find_decoder(FormatContext->streams[Track]->codecpar->codec_id);
+ return codec ? codec->name : nullptr;
+ }
+
+@@ -402,7 +402,7 @@ FFMS_Index *FFMS_Indexer::DoIndexing() {
+ UseDTS);
+
+ if (IndexMask.count(i) && FormatContext->streams[i]->codecpar->codec_type == AVMEDIA_TYPE_VIDEO) {
+- AVCodec *VideoCodec = avcodec_find_decoder(FormatContext->streams[i]->codecpar->codec_id);
++ auto *VideoCodec = avcodec_find_decoder(FormatContext->streams[i]->codecpar->codec_id);
+ if (!VideoCodec) {
+ FormatContext->streams[i]->discard = AVDISCARD_ALL;
+ IndexMask.erase(i);
+@@ -433,7 +433,7 @@ FFMS_Index *FFMS_Indexer::DoIndexing() {
+ IndexMask.insert(i);
+ }
+ } else if (IndexMask.count(i) && FormatContext->streams[i]->codecpar->codec_type == AVMEDIA_TYPE_AUDIO) {
+- AVCodec *AudioCodec = avcodec_find_decoder(FormatContext->streams[i]->codecpar->codec_id);
++ auto *AudioCodec = avcodec_find_decoder(FormatContext->streams[i]->codecpar->codec_id);
+ if (AudioCodec == nullptr)
+ throw FFMS_Exception(FFMS_ERROR_CODEC, FFMS_ERROR_UNSUPPORTED,
+ "Audio codec not found");
+@@ -458,32 +458,36 @@ FFMS_Index *FFMS_Indexer::DoIndexing() {
+ }
+ }
+
+- AVPacket Packet;
+- InitNullPacket(Packet);
++ AVPacket *Packet = av_packet_alloc();
++ if (!Packet)
++ throw FFMS_Exception(FFMS_ERROR_CODEC, FFMS_ERROR_ALLOCATION_FAILED,
++ "Could not allocate packet.");
+ std::vector<int64_t> LastValidTS(FormatContext->nb_streams, AV_NOPTS_VALUE);
+
+ int64_t filesize = avio_size(FormatContext->pb);
+ enum AVPictureStructure LastPicStruct = AV_PICTURE_STRUCTURE_UNKNOWN;
+- while (av_read_frame(FormatContext, &Packet) >= 0) {
++ while (av_read_frame(FormatContext, Packet) >= 0) {
+ // Update progress
+ // FormatContext->pb can apparently be NULL when opening images.
+ if (IC && FormatContext->pb) {
+- if ((*IC)(FormatContext->pb->pos, filesize, ICPrivate))
++ if ((*IC)(FormatContext->pb->pos, filesize, ICPrivate)) {
++ av_packet_free(&Packet);
+ throw FFMS_Exception(FFMS_ERROR_CANCELLED, FFMS_ERROR_USER,
+ "Cancelled by user");
++ }
+ }
+- if (!IndexMask.count(Packet.stream_index)) {
+- av_packet_unref(&Packet);
++ if (!IndexMask.count(Packet->stream_index)) {
++ av_packet_unref(Packet);
+ continue;
+ }
+
+- int Track = Packet.stream_index;
++ int Track = Packet->stream_index;
+ FFMS_Track &TrackInfo = (*TrackIndices)[Track];
+- bool KeyFrame = !!(Packet.flags & AV_PKT_FLAG_KEY);
++ bool KeyFrame = !!(Packet->flags & AV_PKT_FLAG_KEY);
+ ReadTS(Packet, LastValidTS[Track], (*TrackIndices)[Track].UseDTS);
+
+ if (FormatContext->streams[Track]->codecpar->codec_type == AVMEDIA_TYPE_VIDEO) {
+- int64_t PTS = TrackInfo.UseDTS ? Packet.dts : Packet.pts;
++ int64_t PTS = TrackInfo.UseDTS ? Packet->dts : Packet->pts;
+ if (PTS == AV_NOPTS_VALUE) {
+ // VPx alt-refs are output as packets which lack timestmps or durations, since
+ // they are invisible. Currently, the timestamp mangling code in libavformat
+@@ -495,9 +499,11 @@ FFMS_Index *FFMS_Indexer::DoIndexing() {
+ // FFMS2 currently sorts packets by PTS, which will break decoding, otherwise.
+ bool HasAltRefs = (FormatContext->streams[Track]->codecpar->codec_id == AV_CODEC_ID_VP8 ||
+ FormatContext->streams[Track]->codecpar->codec_id == AV_CODEC_ID_VP9);
+- if (Packet.duration == 0 && !HasAltRefs)
++ if (Packet->duration == 0 && !HasAltRefs) {
++ av_packet_free(&Packet);
+ throw FFMS_Exception(FFMS_ERROR_INDEXING, FFMS_ERROR_PARSER,
+ "Invalid packet pts, dts, and duration");
++ }
+
+ if (TrackInfo.empty())
+ PTS = 0;
+@@ -513,7 +519,7 @@ FFMS_Index *FFMS_Indexer::DoIndexing() {
+ ParseVideoPacket(AVContexts[Track], Packet, &RepeatPict, &FrameType, &Invisible, &LastPicStruct);
+
+ TrackInfo.AddVideoFrame(PTS, RepeatPict, KeyFrame,
+- FrameType, Packet.pos, Invisible);
++ FrameType, Packet->pos, Invisible);
+ } else if (FormatContext->streams[Track]->codecpar->codec_type == AVMEDIA_TYPE_AUDIO) {
+ // For video seeking timestamps are used only if all packets have
+ // timestamps, while for audio they're used if any have timestamps,
+@@ -522,28 +528,29 @@ FFMS_Index *FFMS_Indexer::DoIndexing() {
+ TrackInfo.HasTS = true;
+
+ int64_t StartSample = AVContexts[Track].CurrentSample;
+- uint32_t SampleCount = IndexAudioPacket(Track, &Packet, AVContexts[Track], *TrackIndices);
++ uint32_t SampleCount = IndexAudioPacket(Track, Packet, AVContexts[Track], *TrackIndices);
+ TrackInfo.SampleRate = AVContexts[Track].CodecContext->sample_rate;
+
+ TrackInfo.AddAudioFrame(LastValidTS[Track],
+- StartSample, SampleCount, KeyFrame, Packet.pos, Packet.flags & AV_PKT_FLAG_DISCARD);
++ StartSample, SampleCount, KeyFrame, Packet->pos, Packet->flags & AV_PKT_FLAG_DISCARD);
+ }
+
+- if (!(Packet.flags & AV_PKT_FLAG_DISCARD))
+- TrackInfo.LastDuration = Packet.duration;
++ if (!(Packet->flags & AV_PKT_FLAG_DISCARD))
++ TrackInfo.LastDuration = Packet->duration;
+
+- av_packet_unref(&Packet);
++ av_packet_unref(Packet);
+ }
++ av_packet_free(&Packet);
+
+ TrackIndices->Finalize(AVContexts, FormatContext->iformat->name);
+ return TrackIndices.release();
+ }
+
+-void FFMS_Indexer::ReadTS(const AVPacket &Packet, int64_t &TS, bool &UseDTS) {
+- if (!UseDTS && Packet.pts != AV_NOPTS_VALUE)
+- TS = Packet.pts;
++void FFMS_Indexer::ReadTS(const AVPacket *Packet, int64_t &TS, bool &UseDTS) {
++ if (!UseDTS && Packet->pts != AV_NOPTS_VALUE)
++ TS = Packet->pts;
+ if (TS == AV_NOPTS_VALUE)
+ UseDTS = true;
+- if (UseDTS && Packet.dts != AV_NOPTS_VALUE)
+- TS = Packet.dts;
++ if (UseDTS && Packet->dts != AV_NOPTS_VALUE)
++ TS = Packet->dts;
+ }
+diff --git a/src/core/indexing.h b/src/core/indexing.h
+index 3cfc3c30b3..5c06868890 100644
+--- a/src/core/indexing.h
++++ b/src/core/indexing.h
+@@ -80,10 +80,10 @@ struct FFMS_Indexer {
+ int64_t Filesize;
+ uint8_t Digest[20];
+
+- void ReadTS(const AVPacket &Packet, int64_t &TS, bool &UseDTS);
++ void ReadTS(const AVPacket *Packet, int64_t &TS, bool &UseDTS);
+ void CheckAudioProperties(int Track, AVCodecContext *Context);
+ uint32_t IndexAudioPacket(int Track, AVPacket *Packet, SharedAVContext &Context, FFMS_Index &TrackIndices);
+- void ParseVideoPacket(SharedAVContext &VideoContext, AVPacket &pkt, int *RepeatPict, int *FrameType, bool *Invisible, enum AVPictureStructure *LastPicStruct);
++ void ParseVideoPacket(SharedAVContext &VideoContext, AVPacket *pkt, int *RepeatPict, int *FrameType, bool *Invisible, enum AVPictureStructure *LastPicStruct);
+ void Free();
+ public:
+ FFMS_Indexer(const char *Filename);
+diff --git a/src/core/utils.cpp b/src/core/utils.cpp
+index ce67533fd7..8a2e99710e 100644
+--- a/src/core/utils.cpp
++++ b/src/core/utils.cpp
+@@ -62,12 +62,6 @@ void ClearErrorInfo(FFMS_ErrorInfo *ErrorInfo) {
+ }
+ }
+
+-void InitNullPacket(AVPacket &pkt) {
+- av_init_packet(&pkt);
+- pkt.data = nullptr;
+- pkt.size = 0;
+-}
+-
+ void FillAP(FFMS_AudioProperties &AP, AVCodecContext *CTX, FFMS_Track &Frames) {
+ AP.SampleFormat = static_cast<FFMS_SampleFormat>(av_get_packed_sample_fmt(CTX->sample_fmt));
+ AP.BitsPerSample = av_get_bytes_per_sample(CTX->sample_fmt) * 8;
+diff --git a/src/core/utils.h b/src/core/utils.h
+index 9819dc7c9e..003ab794e9 100644
+--- a/src/core/utils.h
++++ b/src/core/utils.h
+@@ -58,7 +58,6 @@ std::unique_ptr<T> make_unique(Args&&... args) {
+ }
+
+ void ClearErrorInfo(FFMS_ErrorInfo *ErrorInfo);
+-void InitNullPacket(AVPacket &pkt);
+ void FillAP(FFMS_AudioProperties &AP, AVCodecContext *CTX, FFMS_Track &Frames);
+
+ void LAVFOpenFile(const char *SourceFile, AVFormatContext *&FormatContext, int Track);
+diff --git a/src/core/videosource.cpp b/src/core/videosource.cpp
+index 06bd1610e1..8956c22566 100644
+--- a/src/core/videosource.cpp
++++ b/src/core/videosource.cpp
+@@ -171,7 +171,7 @@ FFMS_VideoSource::FFMS_VideoSource(const char *SourceFile, FFMS_Index &Index, in
+
+ LAVFOpenFile(SourceFile, FormatContext, VideoTrack);
+
+- AVCodec *Codec = avcodec_find_decoder(FormatContext->streams[VideoTrack]->codecpar->codec_id);
++ auto *Codec = avcodec_find_decoder(FormatContext->streams[VideoTrack]->codecpar->codec_id);
+ if (Codec == nullptr)
+ throw FFMS_Exception(FFMS_ERROR_DECODING, FFMS_ERROR_CODEC,
+ "Video codec not found");
+@@ -673,30 +673,34 @@ void FFMS_VideoSource::DecodeNextFrame(int64_t &AStartTime, int64_t &Pos) {
+ if (HasPendingDelayedFrames())
+ return;
+
+- AVPacket Packet;
+- InitNullPacket(Packet);
++ AVPacket *Packet = av_packet_alloc();
++ if (!Packet)
++ throw FFMS_Exception(FFMS_ERROR_DECODING, FFMS_ERROR_ALLOCATION_FAILED,
++ "Could not allocate packet.");
+
+- while (ReadFrame(&Packet) >= 0) {
+- if (Packet.stream_index != VideoTrack) {
+- av_packet_unref(&Packet);
++ while (ReadFrame(Packet) >= 0) {
++ if (Packet->stream_index != VideoTrack) {
++ av_packet_unref(Packet);
+ continue;
+ }
+
+ if (AStartTime < 0)
+- AStartTime = Frames.UseDTS ? Packet.dts : Packet.pts;
++ AStartTime = Frames.UseDTS ? Packet->dts : Packet->pts;
+
+ if (Pos < 0)
+- Pos = Packet.pos;
++ Pos = Packet->pos;
+
+- bool FrameFinished = DecodePacket(&Packet);
+- av_packet_unref(&Packet);
+- if (FrameFinished)
++ bool FrameFinished = DecodePacket(Packet);
++ av_packet_unref(Packet);
++ if (FrameFinished) {
++ av_packet_free(&Packet);
+ return;
++ }
+ }
+
+ // Flush final frames
+- InitNullPacket(Packet);
+- DecodePacket(&Packet);
++ DecodePacket(Packet);
++ av_packet_free(&Packet);
+ }
+
+ bool FFMS_VideoSource::SeekTo(int n, int SeekOffset) {
diff --git a/testing/ffsend/APKBUILD b/testing/ffsend/APKBUILD
index aad6307ea64..47ce3dce0fc 100644
--- a/testing/ffsend/APKBUILD
+++ b/testing/ffsend/APKBUILD
@@ -1,41 +1,62 @@
# Contributor: Rasmus Thomsen <oss@cogitri.dev>
-# Maintainer: Rasmus Thomsen <oss@cogitri.dev>
+# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=ffsend
-pkgver=0.2.74
-pkgrel=1
+pkgver=0.2.76
+pkgrel=4
pkgdesc="A fully featured Firefox Send client"
url="https://gitlab.com/timvisee/ffsend"
-arch="all !ppc64le !s390x !riscv64" # limited by cargo, ring dep
+# riscv64: blocked by cargo
+arch="all !riscv64"
license="GPL-3.0-only"
-makedepends="cargo openssl-dev"
+makedepends="
+ cargo
+ cargo-auditable
+ openssl-dev
+ "
subpackages="
$pkgname-zsh-completion
$pkgname-fish-completion
$pkgname-bash-completion
"
-source="https://gitlab.com/timvisee/ffsend/-/archive/v$pkgver/ffsend-v$pkgver.tar.gz"
+source="https://gitlab.com/timvisee/ffsend/-/archive/v$pkgver/ffsend-v$pkgver.tar.gz
+ wl-clipboard.patch
+ "
builddir="$srcdir/$pkgname-v$pkgver"
+# The default features with crypto-ring replaced with crypto-openssl.
+_cargo_opts="--frozen --no-default-features --features=archive,clipboard,crypto-openssl,history,infer-command,qrcode,send3,urlshortener"
+
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
build() {
- cargo build --release --locked
+ cargo auditable build $_cargo_opts --release
}
check() {
- cargo test --release --locked
+ cargo test $_cargo_opts
}
package() {
- cargo install --locked --path . --root="$pkgdir/usr"
- rm "$pkgdir"/usr/.crates*
-
- install -Dm644 "$builddir"/contrib/completions/ffsend.bash \
- "$pkgdir"/usr/share/bash-completion/completions/ffsend
- install -Dm644 "$builddir"/contrib/completions/_ffsend \
- "$pkgdir"/usr/share/zsh/site-functions/_ffsend
- install -Dm644 "$builddir"/contrib/completions/ffsend.fish \
- "$pkgdir"/usr/share/fish/completions/ffsend.fish
+ install -Dm755 target/release/$pkgname -t "$pkgdir"/usr/bin/
+
+ install -Dm644 contrib/completions/ffsend.bash \
+ "$pkgdir"/usr/share/bash-completion/completions/ffsend
+ install -Dm644 contrib/completions/_ffsend \
+ -t "$pkgdir"/usr/share/zsh/site-functions/
+ install -Dm644 contrib/completions/ffsend.fish \
+ -t "$pkgdir"/usr/share/fish/vendor_completions.d/
+
+ # See infer-commands in the readme.
+ ln -s ffsend "$pkgdir"/usr/bin/ffget
+ ln -s ffsend "$pkgdir"/usr/bin/ffput
}
sha512sums="
-f959c4a6a10ff1cbbba2da5eda0305f0e5a93f3f6fb64290cdf886f6a76aa059b05026be97f99a80e3d4688e156063e36fca2f40e42fcbec1cc7a307cad54958 ffsend-v0.2.74.tar.gz
+3b4ee66725e9770497620f62d1012aa31c7e11b8b95d931d56bee3077556e743ae2b71f727403cf7f45a6809959815f3b3d94b041fdb5530713b76e00541139c ffsend-v0.2.76.tar.gz
+c16c58671da3c96ee64880366eafc070245d9c50806d192b195f77a4442216eaa24d035467e1e02f4e7622e7be431de8190ad5920672054d0889b7703159f9fc wl-clipboard.patch
"
diff --git a/testing/ffsend/wl-clipboard.patch b/testing/ffsend/wl-clipboard.patch
new file mode 100644
index 00000000000..4bfc70995b9
--- /dev/null
+++ b/testing/ffsend/wl-clipboard.patch
@@ -0,0 +1,159 @@
+Patch-Source: https://gitlab.com/timvisee/ffsend/-/merge_requests/40
+--
+From 1de1b3a8572b48fb5041ba36af81495efcf81515 Mon Sep 17 00:00:00 2001
+From: Jakub Jirutka <jakub@jirutka.cz>
+Date: Sun, 9 Oct 2022 19:49:46 +0200
+Subject: [PATCH] Add support for clipboard on Wayland using wl-copy(1)
+
+wl-copy(1) from the wl-clipboard package is equivalent of xcopy(1)
+on Wayland desktops.
+---
+ Cargo.toml | 2 +-
+ README.md | 8 ++++----
+ build.rs | 3 ++-
+ src/util.rs | 36 +++++++++++++++++++++++++++++++-----
+ 4 files changed, 38 insertions(+), 11 deletions(-)
+
+diff --git a/Cargo.toml b/Cargo.toml
+index b91b9cd..e434248 100644
+--- a/Cargo.toml
++++ b/Cargo.toml
+@@ -98,7 +98,7 @@ infer-command = []
+ # Compile without colored output support
+ no-color = ["colored/no-color"]
+
+-# Automatic using build.rs: use xclip/xsel binary method for clipboard support
++# Automatic using build.rs: use wl-copy/xclip/xsel binary method for clipboard support
+ clipboard-bin = ["clipboard"]
+
+ # Automatic using build.rs: use native clipboard crate for clipboard support
+diff --git a/README.md b/README.md
+index cc9caf0..257cfee 100644
+--- a/README.md
++++ b/README.md
+@@ -140,10 +140,10 @@ all available subcommands.
+ - Linux:
+ - OpenSSL & CA certificates:
+ - Ubuntu, Debian and derivatives: `apt install openssl ca-certificates`
+- - Optional: `xclip` or `xsel` for clipboard support
+- - Ubuntu, Debian and derivatives: `apt install xclip`
+- - CentOS/Red Hat/openSUSE/Fedora: `yum install xclip`
+- - Arch: `pacman -S xclip`
++ - Optional: `wl-copy` (on Wayland), `xclip` (on Xorg) or `xsel` (on Xorg) for clipboard support
++ - Ubuntu, Debian and derivatives: `apt install wl-clipboard` or `apt install xclip`
++ - CentOS/Red Hat/openSUSE/Fedora: `yum install wl-clipboard` or `yum install xclip`
++ - Arch: `pacman -S wl-clipboard` or `pacman -S xclip`
+ - Windows specific:
+ - Optional OpenSSL with `crypto-openssl` feature: [» Installer][openssl-windows-installer] (`v1.1.0j` or above)
+ - macOS specific:
+diff --git a/build.rs b/build.rs
+index 32b3d32..dd4006c 100644
+--- a/build.rs
++++ b/build.rs
+@@ -14,7 +14,8 @@ fn main() {
+ #[cfg(not(feature = "clipboard-crate"))]
+ println!("cargo:rustc-cfg=feature=\"clipboard-bin\"");
+
+- // xclip and xsel paths are inserted at compile time
++ // wl-copy, xclip and xsel paths are inserted at compile time
++ println!("cargo:rerun-if-env-changed=WL_COPY_PATH");
+ println!("cargo:rerun-if-env-changed=XCLIP_PATH");
+ println!("cargo:rerun-if-env-changed=XSEL_PATH");
+ }
+diff --git a/src/util.rs b/src/util.rs
+index d4dad97..d7e6237 100644
+--- a/src/util.rs
++++ b/src/util.rs
+@@ -327,6 +327,12 @@ pub enum ClipboardType {
+ #[cfg(feature = "clipboard-crate")]
+ Native,
+
++ /// Manage clipboard through `wl-copy` (wl-clipboard) on Linux.
++ ///
++ /// May contain a binary path if specified at compile time through the `WL_COPY_PATH` variable.
++ #[cfg(feature = "clipboard-bin")]
++ Wlcopy(Option<String>),
++
+ /// Manage clipboard through `xclip` on Linux.
+ ///
+ /// May contain a binary path if specified at compile time through the `XCLIP_PATH` variable.
+@@ -351,10 +357,14 @@ impl ClipboardType {
+
+ #[cfg(feature = "clipboard-bin")]
+ {
+- if let Some(path) = option_env!("XCLIP_PATH") {
++ if let Some(path) = option_env!("WL_COPY_PATH") {
++ ClipboardType::Wlcopy(Some(path.to_owned()))
++ } else if let Some(path) = option_env!("XCLIP_PATH") {
+ ClipboardType::Xclip(Some(path.to_owned()))
+ } else if let Some(path) = option_env!("XSEL_PATH") {
+ ClipboardType::Xsel(Some(path.to_owned()))
++ } else if which("wl-copy").is_ok() {
++ ClipboardType::Wlcopy(None)
+ } else if which("xclip").is_ok() {
+ ClipboardType::Xclip(None)
+ } else if which("xsel").is_ok() {
+@@ -372,6 +382,8 @@ impl ClipboardType {
+ #[cfg(feature = "clipboard-crate")]
+ ClipboardType::Native => Self::native_set(content),
+ #[cfg(feature = "clipboard-bin")]
++ ClipboardType::Wlcopy(path) => Self::wlcopy_set(path.clone(), &content),
++ #[cfg(feature = "clipboard-bin")]
+ ClipboardType::Xclip(path) => Self::xclip_set(path.clone(), &content),
+ #[cfg(feature = "clipboard-bin")]
+ ClipboardType::Xsel(path) => Self::xsel_set(path.clone(), &content),
+@@ -389,6 +401,15 @@ impl ClipboardType {
+ .map_err(ClipboardError::Native)
+ }
+
++ #[cfg(feature = "clipboard-bin")]
++ fn wlcopy_set(path: Option<String>, content: &str) -> Result<(), ClipboardError> {
++ Self::sys_cmd_set(
++ "wl-copy",
++ &mut Command::new(path.unwrap_or_else(|| "wl-copy".into())),
++ content,
++ )
++ }
++
+ #[cfg(feature = "clipboard-bin")]
+ fn xclip_set(path: Option<String>, content: &str) -> Result<(), ClipboardError> {
+ Self::sys_cmd_set(
+@@ -456,6 +477,11 @@ impl fmt::Display for ClipboardType {
+ #[cfg(feature = "clipboard-crate")]
+ ClipboardType::Native => write!(f, "native"),
+ #[cfg(feature = "clipboard-bin")]
++ ClipboardType::Wlcopy(path) => match path {
++ None => write!(f, "wl-copy"),
++ Some(path) => write!(f, "wl-copy ({})", path),
++ },
++ #[cfg(feature = "clipboard-bin")]
+ ClipboardType::Xclip(path) => match path {
+ None => write!(f, "xclip"),
+ Some(path) => write!(f, "xclip ({})", path),
+@@ -479,19 +505,19 @@ pub enum ClipboardError {
+ #[fail(display = "failed to access clipboard")]
+ Native(#[cause] Compat<Error>),
+
+- /// The `xclip` or `xsel` binary could not be found on the system, required for clipboard support.
++ /// The `wl-copy`, `xclip` or `xsel` binary could not be found on the system, required for clipboard support.
+ #[cfg(feature = "clipboard-bin")]
+- #[fail(display = "failed to access clipboard, xclip or xsel is not installed")]
++ #[fail(display = "failed to access clipboard, neither wl-copy, xclip nor xsel is installed")]
+ NoBinary,
+
+- /// An error occurred while using `xclip` or `xsel` to set the clipboard contents.
++ /// An error occurred while using `wl-copy`, `xclip` or `xsel` to set the clipboard contents.
+ /// This problem probably occurred when starting, or while piping the clipboard contents to
+ /// the process.
+ #[cfg(feature = "clipboard-bin")]
+ #[fail(display = "failed to access clipboard using {}", _0)]
+ BinaryIo(&'static str, #[cause] IoError),
+
+- /// `xclip` or `xsel` unexpectedly exited with a non-successful status code.
++ /// `wl-copy`, `xclip` or `xsel` unexpectedly exited with a non-successful status code.
+ #[cfg(feature = "clipboard-bin")]
+ #[fail(
+ display = "failed to use clipboard, {} exited with status code {}",
+--
+GitLab
+
diff --git a/testing/fheroes2/APKBUILD b/testing/fheroes2/APKBUILD
index 6569b892b05..c49ee8c0963 100644
--- a/testing/fheroes2/APKBUILD
+++ b/testing/fheroes2/APKBUILD
@@ -1,45 +1,37 @@
# Contributor: Grigory Kirillov <txgk@bk.ru>
-# Maintainer: Grigory Kirillov <txgk@bk.ru>
+# Maintainer: ovf <ovf@mm.st>
pkgname=fheroes2
-pkgver=0.9.15
+pkgver=1.0.13
pkgrel=0
-pkgdesc="Recreation of HoMM2 game engine"
+pkgdesc="Recreation of Heroes of Might and Magic II game engine"
url="https://github.com/ihhub/fheroes2"
arch="all"
license="GPL-2.0-only"
options="!check" # no test suite
makedepends="
gettext
+ gnu-libiconv
+ sed
sdl2-dev
sdl2_image-dev
sdl2_mixer-dev
zlib-dev
"
-subpackages="$pkgname-doc $pkgname-lang"
+subpackages="$pkgname-lang"
source="https://github.com/ihhub/fheroes2/archive/$pkgver/fheroes2-$pkgver.tar.gz"
install="$pkgname.post-install"
langdir="/usr/share/$pkgname/files/lang"
-[ "$CARCH" = "riscv64" ] && options="$options textrels"
-
build() {
- make FHEROES2_IMAGE_SUPPORT=1 FHEROES2_DATA=/usr/share/fheroes2
-
- # in es hu lt nl pt sv tr:
- # these languages require iconv TRANSLIT extension to be built (musl doesn't support that)
- # fr:
- # just fails to build with "invalid multibyte sequence" errors
- for lang in es hu lt nl pt sv tr fr; do
- rm files/lang/$lang.po
- done
-
- make -C files/lang
+ make FHEROES2_WITH_IMAGE=1 FHEROES2_DATA=/usr/share/fheroes2
+ # Use GNU iconv instead of musl-based one, because this project uses
+ # TRANSLIT iconv extension which is not present in musl implementation.
+ make -C files/lang ICONV=gnu-iconv
}
package() {
install -Dm755 src/dist/fheroes2 -t "$pkgdir"/usr/bin/
install -Dm644 script/packaging/common/fheroes2.desktop -t "$pkgdir"/usr/share/applications/
- install -Dm644 LICENSE -t "$pkgdir"/usr/share/licenses/"$pkgname"/
install -Dm644 files/data/*.h2d -t "$pkgdir"/usr/share/"$pkgname"/files/data/
install -Dm644 files/lang/*.mo -t "$pkgdir"/usr/share/"$pkgname"/files/lang/
install -Dm755 script/demo/download_demo_version.sh -t "$pkgdir"/usr/share/"$pkgname"/
@@ -50,5 +42,5 @@ package() {
}
sha512sums="
-35e10cdb87475964b965083c959190ca9f94352dce62e529b8f2180f4cddc686612a90acc61d8130b0294676ab2e468313c9b7c5428f4bee2c29c447d000d137 fheroes2-0.9.15.tar.gz
+989b71ad6f217c5283441392e5a4bdee8b49d07261dba05372e185dbee239f4bb7b75290ca0b86fbf3dbf98edfaaca6234adc7e0483495ea799bf1636af3f6bc fheroes2-1.0.13.tar.gz
"
diff --git a/testing/fiery/APKBUILD b/testing/fiery/APKBUILD
new file mode 100644
index 00000000000..85dfc38cad9
--- /dev/null
+++ b/testing/fiery/APKBUILD
@@ -0,0 +1,50 @@
+# Contributor: psykose <alice@ayaya.ev>
+# Maintainer: team/kde <bribbers@disroot.org>
+
+# The group tag is just to easily find this APKBUILD by some scripts for automation
+# group=maui
+pkgname=fiery
+pkgver=1.1.2
+pkgrel=1
+pkgdesc="KDE Convergent web browser"
+url="https://invent.kde.org/maui/fiery"
+# all other arches blocked by qt5-qtwebengine
+arch="x86_64 x86 aarch64"
+license="LicenseRef-KDE-Accepted-LGPL"
+depends="mauikit-filebrowsing"
+makedepends="
+ cmake
+ extra-cmake-modules
+ kcoreaddons5-dev
+ ki18n5-dev
+ mauikit-dev
+ mauikit-filebrowsing-dev
+ qt5-qtbase-dev
+ qt5-qttools-dev
+ qt5-qtwebengine-dev
+ samurai
+ "
+subpackages="$pkgname-lang"
+_repo_url="https://invent.kde.org/maui/fiery.git"
+source="https://invent.kde.org/maui/fiery/-/archive/v$pkgver/fiery-v$pkgver.tar.gz"
+builddir="$srcdir/fiery-v$pkgver"
+options="!check" # no tests
+
+provides="kde-sol=$pkgver-r$pkgrel kde-fiery=$pkgver-r$pkgrel"
+replaces="kde-sol kde-fiery"
+
+build() {
+ CXXFLAGS="$CXXFLAGS -flto=auto" \
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=RelWithDebInfo \
+ -DCMAKE_INSTALL_PREFIX=/usr
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+7064c3a2a2bc186cc7daab60400be7816fb0f332572a4c804009bb74a2c0bfd284af015811caa9d860318fe8d14c9e1dbb287423cc8cb59f43bee87202d7f52c fiery-v1.1.2.tar.gz
+"
diff --git a/testing/fig2dev/APKBUILD b/testing/fig2dev/APKBUILD
index 59ad47f0f6f..59ad47f0f6f 100755..100644
--- a/testing/fig2dev/APKBUILD
+++ b/testing/fig2dev/APKBUILD
diff --git a/testing/filebeat/APKBUILD b/testing/filebeat/APKBUILD
deleted file mode 100644
index 80babbfd802..00000000000
--- a/testing/filebeat/APKBUILD
+++ /dev/null
@@ -1,45 +0,0 @@
-# Contributor: Michael Pirogov <vbnet.ru@gmail.com>
-# Contributor: Ramanathan Sivagurunathan <ramzthecoder@gmail.com>
-# Maintainer: Ramanathan Sivagurunathan <ramzthecoder@gmail.com>
-pkgname=filebeat
-pkgver=7.14.0
-pkgrel=6
-pkgdesc="Lightweight Shipper for Logs"
-pkgusers="root"
-url="https://www.elastic.co/products/beats"
-# riscv64: https://github.com/elastic/go-concert/issues/51
-arch="all !armhf !armv7 !aarch64 !riscv64"
-license="Apache-2.0"
-makedepends="go"
-subpackages="$pkgname-openrc"
-options="!check chmod-clean" # No test suite
-source="beats-$pkgver.tar.gz::https://github.com/elastic/beats/archive/v$pkgver.tar.gz
- filebeat.initd
- filebeat.confd
- filebeat.yml
- "
-builddir="$srcdir/src/github.com/elastic/beats/$pkgname"
-
-prepare() {
- mkdir -p "$srcdir/src/github.com/elastic/"
- mv "$srcdir/beats-$pkgver" "$srcdir/src/github.com/elastic/beats"
- default_prepare
-}
-
-build() {
- GOPATH="$srcdir" go build -v
-}
-
-package() {
- install -Dm755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
- install -Dm644 "$srcdir"/$pkgname.confd "$pkgdir"/etc/conf.d/$pkgname
- install -Dm644 "$srcdir/filebeat.yml" "$pkgdir/etc/$pkgname/filebeat.yml"
- install -Dm755 "$builddir/filebeat" "$pkgdir/usr/bin/filebeat"
-}
-
-sha512sums="
-78032aebcd5f012a3c348c45440a9bb0509cc76e576ac99a9017294f18aedcadff7b24775abbcfaa96cf72293e2dc4445177aef6f3d48e1fa69f29b9b9972336 beats-7.14.0.tar.gz
-782ea2a2a5056e9e4d2e4ef6bb3f416b4ab0aba8486a7115e586b735478b53f75246af8ac5a6e10f93da6773854220dec7125396fa2fc24edeb1ddc0ea2f4ba1 filebeat.initd
-d39f6264d44d34958f005652cae6ffeed3bb66aea7694c5cd1c9d1e00befda946522d54d7138d7bafa30314588bc44b84f12b5bb1beac65553b69de3d91c34ad filebeat.confd
-b0d5fa1d37041a4f1383451107abcdab1ce15ed537f702f55756f59c2110445dcddaf7c58f2a0561e18b83e3cab72fceb9d931bae9267f1acd9d35135555d6f7 filebeat.yml
-"
diff --git a/testing/filebeat/filebeat.confd b/testing/filebeat/filebeat.confd
deleted file mode 100644
index f5c161f935a..00000000000
--- a/testing/filebeat/filebeat.confd
+++ /dev/null
@@ -1,2 +0,0 @@
-# FileBeat startup
-filebeat_opts="run -c /etc/filebeat/filebeat.yml -e"
diff --git a/testing/filebeat/filebeat.initd b/testing/filebeat/filebeat.initd
deleted file mode 100644
index ff34fc0f02b..00000000000
--- a/testing/filebeat/filebeat.initd
+++ /dev/null
@@ -1,42 +0,0 @@
-#!/sbin/openrc-run
-
-FILEBEAT_LOG_FILE="/var/log/${SVCNAME}.log"
-
-name=filebeat
-description="Beats - Lightweight shippers for Elasticsearch & Logstash"
-description_checkconfig="Verify configuration file"
-daemon=/usr/bin/$name
-extra_commands="checkconfig"
-
-start_pre() {
- checkpath -f -m 0644 "$FILEBEAT_LOG_FILE"
-}
-
-depend() {
- need net
- after firewall
-}
-
-checkconfig() {
- filebeat test config -c /etc/filebeat/filebeat.yml
-}
-
-start() {
- checkconfig || return 1
-
-ebegin "Starting ${name}"
- start-stop-daemon --start --quiet \
- -m --pidfile /var/run/${name}.pid \
- -b --stdout $FILEBEAT_LOG_FILE --stderr $FILEBEAT_LOG_FILE \
- --exec ${daemon} -- ${filebeat_opts}
- eend $?
-}
-
-stop() {
- ebegin "Stopping ${name}"
- start-stop-daemon --stop --quiet \
- --pidfile /var/run/${name}.pid \
- --exec ${daemon}
- eend $?
-}
-
diff --git a/testing/filebeat/filebeat.yml b/testing/filebeat/filebeat.yml
deleted file mode 100644
index 6533f9d3590..00000000000
--- a/testing/filebeat/filebeat.yml
+++ /dev/null
@@ -1,119 +0,0 @@
-###################### Filebeat Configuration Example #########################
-
-# This file is an example configuration file highlighting only the most common
-# options. The filebeat.full.yml file from the same directory contains all the
-# supported options with more comments. You can use it as a reference.
-#
-# You can find the full configuration reference here:
-# https://www.elastic.co/guide/en/beats/filebeat/index.html
-
-
-path.config: /etc/filebeat
-path.data: /var/lib/filebeat
-path.logs: /var/log/filebeat
-
-#=========================== Filebeat prospectors =============================
-
-filebeat.prospectors:
-
-# Each - is a prospector. Most options can be set at the prospector level, so
-# you can use different prospectors for various configurations.
-# Below are the prospector specific configurations.
-
-- input_type: log
-
- # Paths that should be crawled and fetched. Glob based paths.
- paths:
- - /var/log/*.log
- #- c:\programdata\elasticsearch\logs\*
-
- # Exclude lines. A list of regular expressions to match. It drops the lines that are
- # matching any regular expression from the list.
- #exclude_lines: ["^DBG"]
-
- # Include lines. A list of regular expressions to match. It exports the lines that are
- # matching any regular expression from the list.
- #include_lines: ["^ERR", "^WARN"]
-
- # Exclude files. A list of regular expressions to match. Filebeat drops the files that
- # are matching any regular expression from the list. By default, no files are dropped.
- #exclude_files: [".gz$"]
-
- # Optional additional fields. These field can be freely picked
- # to add additional information to the crawled log files for filtering
- #fields:
- # level: debug
- # review: 1
-
- ### Multiline options
-
- # Mutiline can be used for log messages spanning multiple lines. This is common
- # for Java Stack Traces or C-Line Continuation
-
- # The regexp Pattern that has to be matched. The example pattern matches all lines starting with [
- #multiline.pattern: ^\[
-
- # Defines if the pattern set under pattern should be negated or not. Default is false.
- #multiline.negate: false
-
- # Match can be set to "after" or "before". It is used to define if lines should be append to a pattern
- # that was (not) matched before or after or as long as a pattern is not matched based on negate.
- # Note: After is the equivalent to previous and before is the equivalent to to next in Logstash
- #multiline.match: after
-
-
-#================================ General =====================================
-
-# The name of the shipper that publishes the network data. It can be used to group
-# all the transactions sent by a single shipper in the web interface.
-#name:
-
-# The tags of the shipper are included in their own field with each
-# transaction published.
-#tags: ["service-X", "web-tier"]
-
-# Optional fields that you can specify to add additional information to the
-# output.
-#fields:
-# env: staging
-
-#================================ Outputs =====================================
-
-# Configure what outputs to use when sending the data collected by the beat.
-# Multiple outputs may be used.
-
-#-------------------------- Elasticsearch output ------------------------------
-output.elasticsearch:
- # Array of hosts to connect to.
- hosts: ["localhost:9200"]
-
- # Optional protocol and basic auth credentials.
- #protocol: "https"
- #username: "elastic"
- #password: "changeme"
-
-#----------------------------- Logstash output --------------------------------
-#output.logstash:
- # The Logstash hosts
- #hosts: ["localhost:5044"]
-
- # Optional SSL. By default is off.
- # List of root certificates for HTTPS server verifications
- #ssl.certificate_authorities: ["/etc/pki/root/ca.pem"]
-
- # Certificate for SSL client authentication
- #ssl.certificate: "/etc/pki/client/cert.pem"
-
- # Client Certificate Key
- #ssl.key: "/etc/pki/client/cert.key"
-
-#================================ Logging =====================================
-
-# Sets log level. The default log level is info.
-# Available log levels are: critical, error, warning, info, debug
-#logging.level: debug
-
-# At debug level, you can selectively enable logging only for some components.
-# To enable all selectors use ["*"]. Examples of other selectors are "beat",
-# "publish", "service".
-#logging.selectors: ["*"]
diff --git a/testing/filebrowser/APKBUILD b/testing/filebrowser/APKBUILD
new file mode 100644
index 00000000000..c87e8989f04
--- /dev/null
+++ b/testing/filebrowser/APKBUILD
@@ -0,0 +1,53 @@
+# Maintainer: Hugo Rodrigues <hugorodrigues@hugorodrigues.xyz>
+pkgname=filebrowser
+pkgver=2.27.0
+pkgrel=2
+pkgdesc="Web File Browser"
+url="https://github.com/filebrowser/filebrowser"
+arch="x86_64"
+license="Apache-2.0"
+makedepends="go npm"
+pkgusers="$pkgname"
+pkggroups="$pkgname"
+install="$pkgname.pre-install"
+subpackages="$pkgname-openrc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/filebrowser/filebrowser/archive/refs/tags/v$pkgver.tar.gz
+ filebrowser.initd
+ filebrowser.confd
+ "
+
+prepare() {
+ default_prepare
+
+ # Set binary version inside go
+ sed -i "s/(untracked)/$pkgver/g" version/version.go
+}
+
+build() {
+ cd frontend
+ npm ci
+ # ancient webpack
+ NODE_OPTIONS="--openssl-legacy-provider" \
+ npm run build
+
+ cd "$builddir"
+ go build
+}
+
+check() {
+ go test ./...
+}
+
+package() {
+ install -Dm755 filebrowser -t "$pkgdir"/usr/bin/
+ install -Dm 644 "$srcdir"/filebrowser.confd "$pkgdir"/etc/conf.d/filebrowser
+ install -Dm 755 "$srcdir"/filebrowser.initd "$pkgdir"/etc/init.d/filebrowser
+ install -dDm 770 -o $pkgusers -g $pkggroups "$pkgdir"/var/lib/$pkgname
+ install -dDm 770 -o $pkgusers -g $pkggroups "$pkgdir"/var/lib/$pkgname/data
+}
+
+sha512sums="
+43b76528694fad62d3572d5d35b54b8a9bb3328e3f2f0a3c36a3ac524d35c6c6132c8e2281bb8a9c038f6398c92861c147fe3216eb82fdb9d8217aa6c21c0b78 filebrowser-2.27.0.tar.gz
+381cabc633f5076e46e32c5b69aca5b4c82fc227b4cbfef4d0f710db9d9a5db46dc8f29c1641f4af20fb6dc70eb33d2af63d93e194ccc2e94a6c9fae8c7f9906 filebrowser.initd
+2d95fe1cef5f5a1a76448a25bed6d66d996b4a3cf6852dd7c8a63c52efc05dfff41bb7e0db20ec344c5389110852d5949131bc0a02fa3c2a48654b27a568dd7c filebrowser.confd
+"
diff --git a/testing/filebrowser/filebrowser.confd b/testing/filebrowser/filebrowser.confd
new file mode 100644
index 00000000000..e9489664e83
--- /dev/null
+++ b/testing/filebrowser/filebrowser.confd
@@ -0,0 +1 @@
+command_args="--database /var/lib/filebrowser/database.db --log /var/log/filebrowser.log --root /var/lib/filebrowser/data"
diff --git a/testing/filebrowser/filebrowser.initd b/testing/filebrowser/filebrowser.initd
new file mode 100644
index 00000000000..076c894381b
--- /dev/null
+++ b/testing/filebrowser/filebrowser.initd
@@ -0,0 +1,13 @@
+#!/sbin/openrc-run
+
+description="filebrowser server"
+command="/usr/bin/filebrowser"
+command_args="$command_args"
+command_background=true
+command_user="filebrowser:filebrowser"
+pidfile="/run/$RC_SVCNAME.pid"
+
+depend() {
+ need net
+ after firewall
+}
diff --git a/testing/filebrowser/filebrowser.pre-install b/testing/filebrowser/filebrowser.pre-install
new file mode 100644
index 00000000000..19df8aaa48c
--- /dev/null
+++ b/testing/filebrowser/filebrowser.pre-install
@@ -0,0 +1,5 @@
+#!/bin/sh
+
+addgroup -S filebrowser 2> /dev/null
+adduser -S -D -H -s /sbin/nologin -G filebrowser -g filebrowser filebrowser 2> /dev/null
+exit 0
diff --git a/testing/fileshelter/APKBUILD b/testing/fileshelter/APKBUILD
index e4cc43348fc..3ea73fe2b5b 100644
--- a/testing/fileshelter/APKBUILD
+++ b/testing/fileshelter/APKBUILD
@@ -1,13 +1,13 @@
-# Contributor: Kevin Thomas <me@kevinthomas.dev>
-# Maintainer: Kevin Thomas <me@kevinthomas.dev>
+# Contributor: Kay Thomas <kaythomas@pm.me>
+# Maintainer: Kay Thomas <kaythomas@pm.me>
pkgname=fileshelter
-pkgver=5.1.0
-pkgrel=1
+pkgver=5.1.2
+pkgrel=3
pkgdesc="One-click file sharing web application"
url="https://github.com/epoupon/fileshelter"
arch="all"
license="GPL-3.0-or-later"
-makedepends="cmake boost-dev libconfig-dev wt-dev"
+makedepends="cmake boost-dev libconfig-dev wt-dev samurai"
subpackages="$pkgname-openrc"
pkgusers="fileshelter"
pkggroups="fileshelter"
@@ -19,14 +19,14 @@ source="$pkgname-$pkgver.tar.gz::https://github.com/epoupon/fileshelter/archive/
options="!check" # No testsuite
build() {
- cmake . \
- -DCMAKE_BUILD_TYPE=None \
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=MinSizeRel \
-DCMAKE_INSTALL_PREFIX=/usr
- make
+ cmake --build build
}
package() {
- make DESTDIR="$pkgdir" install
+ DESTDIR="$pkgdir" cmake --install build
install -dm755 -o fileshelter -g fileshelter \
"$pkgdir"/var/fileshelter
@@ -41,7 +41,7 @@ package() {
}
sha512sums="
-63beb1b4f5ae1c75760cbfaa96d293166bbd6b049fadca2b2b29175fb15c69ac61123c9317ca79d0611e01e84a19eafa991036bfe77eeac5e095f9c8262c2833 fileshelter-5.1.0.tar.gz
+722786950d2893a8a0da50bb47fd28bd9b9313cca7bbb7ada5fbf79900733bed89cf8171d817d17a52dc0fcf6a2058cd00ced33cda4e0cbfb90d280a89dda718 fileshelter-5.1.2.tar.gz
a1ef635d1f7ee82abc4abf5d1d0253515308923e7443e86faa34be14af1056714c204da5d9a2a3162595ad9395e66f2452df87487dce0f1e97d460c794d9dbbc std-optional.patch
56051559c91d5c269f8e945445aab3e48de7f3593b7321e6556aee87c458091cfaf14a220a0a8bbb5aa8f682fe1ebd289cfb8dd21b0f3eeb881268f28d84c115 fileshelter.initd
"
diff --git a/testing/filite/APKBUILD b/testing/filite/APKBUILD
index 8bdd6f83872..6f1a924b3c7 100644
--- a/testing/filite/APKBUILD
+++ b/testing/filite/APKBUILD
@@ -2,27 +2,38 @@
# Maintainer: guddaff <guddaff@protonmail.com>
pkgname=filite
pkgver=0.3.0
-pkgrel=0
+pkgrel=2
pkgdesc="simple and light pastebin"
url="https://github.com/raftario/filite"
arch="x86_64 armv7 armhf aarch64 x86" # limited by rust/cargo
license="MIT"
-makedepends="cargo"
-source="$pkgname-$pkgver.tar.gz::https://github.com/raftario/filite/archive/refs/tags/v$pkgver.tar.gz"
+makedepends="cargo sqlite-dev cargo-auditable"
+source="$pkgname-$pkgver.tar.gz::https://github.com/raftario/filite/archive/refs/tags/v$pkgver.tar.gz
+ fix-build.patch
+ system-sqlite.patch
+ "
+
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
build() {
- cargo build --release --locked
+ cargo auditable build --release --frozen
}
check() {
- cargo test --release --locked
+ cargo test --frozen
}
package() {
- cargo install --locked --path . --root="$pkgdir/usr"
- rm "$pkgdir"/usr/.crates*
+ install -Dm755 target/release/filite -t "$pkgdir"/usr/bin/
}
sha512sums="
9d55a28e3578a8ef010ef184b517de3b59753a1058d82970ad8ff178d219e182eeaa4d31f38330735bddb89dbfbf297229026a69191c8a90c94f2e1dfda06106 filite-0.3.0.tar.gz
+994cd9439016cb5c20f06e5b7a16d9b17edfcf43872e2277b3ec87654f4350dd1e0d45c19f6dfad0b85a6e74090ce6327520fe2a0168e29ac2d3d7868b87365d fix-build.patch
+dfdfb3c75383876bb16e60ba5b035e76adf3851c30603648b643ebc5c6be2b98097ff39c1e5f2c808662fb49000513997a96bd4b14899a704c19ba330d092a6b system-sqlite.patch
"
diff --git a/testing/filite/fix-build.patch b/testing/filite/fix-build.patch
new file mode 100644
index 00000000000..165d6d3fce6
--- /dev/null
+++ b/testing/filite/fix-build.patch
@@ -0,0 +1,3110 @@
+diff --git a/Cargo.lock b/Cargo.lock
+index f50033b..807f0eb 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -1,2262 +1,2267 @@
+ # This file is automatically @generated by Cargo.
+ # It is not intended for manual editing.
++version = 3
++
+ [[package]]
+ name = "actix-codec"
+ version = "0.2.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "09e55f0a5c2ca15795035d90c46bd0e73a5123b72f68f12596d6ba5282051380"
+ dependencies = [
+- "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "bytes 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures-core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures-sink 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio 0.2.9 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-util 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bitflags",
++ "bytes",
++ "futures-core",
++ "futures-sink",
++ "log",
++ "tokio",
++ "tokio-util",
+ ]
+
+ [[package]]
+ name = "actix-connect"
+ version = "1.0.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "1f2b61480a8d30c94d5c883d79ef026b02ad6809931b0a4bb703f9545cd8c986"
+ dependencies = [
+- "actix-codec 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-rt 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-service 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-utils 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "either 1.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "http 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "trust-dns-proto 0.18.0-alpha.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "trust-dns-resolver 0.18.0-alpha.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "actix-codec",
++ "actix-rt",
++ "actix-service",
++ "actix-utils",
++ "derive_more",
++ "either",
++ "futures",
++ "http",
++ "log",
++ "trust-dns-proto",
++ "trust-dns-resolver",
+ ]
+
+ [[package]]
+ name = "actix-files"
+ version = "0.2.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "301482841d3d74483a446ead63cb7d362e187d2c8b603f13d91995621ea53c46"
+ dependencies = [
+- "actix-http 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-service 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-web 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "bytes 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "mime 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)",
+- "mime_guess 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "percent-encoding 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "v_htmlescape 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "actix-http",
++ "actix-service",
++ "actix-web",
++ "bitflags",
++ "bytes",
++ "derive_more",
++ "futures",
++ "log",
++ "mime",
++ "mime_guess",
++ "percent-encoding",
++ "v_htmlescape",
+ ]
+
+ [[package]]
+ name = "actix-http"
+ version = "1.0.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "c16664cc4fdea8030837ad5a845eb231fb93fc3c5c171edfefb52fad92ce9019"
+ dependencies = [
+- "actix-codec 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-connect 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-rt 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-service 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-threadpool 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-utils 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "base64 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "brotli2 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "bytes 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "chrono 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "copyless 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
+- "derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "either 1.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "encoding_rs 0.8.20 (registry+https://github.com/rust-lang/crates.io-index)",
+- "failure 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "flate2 1.0.13 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures-channel 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures-core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures-util 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "fxhash 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "h2 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "http 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "httparse 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+- "indexmap 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "language-tags 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "mime 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)",
+- "percent-encoding 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "pin-project 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rand 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "regex 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "ring 0.16.9 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde_json 1.0.41 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde_urlencoded 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "sha1 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
++ "actix-codec",
++ "actix-connect",
++ "actix-rt",
++ "actix-service",
++ "actix-threadpool",
++ "actix-utils",
++ "base64 0.11.0",
++ "bitflags",
++ "brotli2",
++ "bytes",
++ "chrono",
++ "copyless",
++ "derive_more",
++ "either",
++ "encoding_rs",
++ "failure",
++ "flate2",
++ "futures-channel",
++ "futures-core",
++ "futures-util",
++ "fxhash",
++ "h2",
++ "http",
++ "httparse",
++ "indexmap",
++ "language-tags",
++ "lazy_static",
++ "log",
++ "mime",
++ "percent-encoding",
++ "pin-project",
++ "rand",
++ "regex",
++ "ring",
++ "serde",
++ "serde_json",
++ "serde_urlencoded",
++ "sha1",
++ "slab",
++ "time",
+ ]
+
+ [[package]]
+ name = "actix-identity"
+ version = "0.2.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "2a379b0639c293292d71defb8cc1f94c87b7705c904adf044338ad392df77c7a"
+ dependencies = [
+- "actix-service 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-web 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde_json 1.0.41 (registry+https://github.com/rust-lang/crates.io-index)",
+- "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
++ "actix-service",
++ "actix-web",
++ "futures",
++ "serde",
++ "serde_json",
++ "time",
+ ]
+
+ [[package]]
+ name = "actix-macros"
+ version = "0.1.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "21705adc76bbe4bc98434890e73a89cd00c6015e5704a60bb6eea6c3b72316b6"
+ dependencies = [
+- "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "syn 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
++ "quote",
++ "syn",
+ ]
+
+ [[package]]
+ name = "actix-multipart"
+ version = "0.2.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "4397935fca2a37a5353f94faa758fb176712806f605466b5a60373b204f0d836"
+ dependencies = [
+- "actix-service 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-utils 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-web 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "bytes 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "httparse 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "mime 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)",
+- "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
+- "twoway 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "actix-service",
++ "actix-utils",
++ "actix-web",
++ "bytes",
++ "derive_more",
++ "futures",
++ "httparse",
++ "log",
++ "mime",
++ "time",
++ "twoway",
+ ]
+
+ [[package]]
+ name = "actix-router"
+ version = "0.2.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "9d7a10ca4d94e8c8e7a87c5173aba1b97ba9a6563ca02b0e1cd23531093d3ec8"
+ dependencies = [
+- "bytestring 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
+- "http 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "regex 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bytestring",
++ "http",
++ "log",
++ "regex",
++ "serde",
+ ]
+
+ [[package]]
+ name = "actix-rt"
+ version = "1.0.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "3f6a0a55507046441a496b2f0d26a84a65e67c8cafffe279072412f624b5fb6d"
+ dependencies = [
+- "actix-macros 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-threadpool 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "copyless 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio 0.2.9 (registry+https://github.com/rust-lang/crates.io-index)",
++ "actix-macros",
++ "actix-threadpool",
++ "copyless",
++ "futures",
++ "tokio",
+ ]
+
+ [[package]]
+ name = "actix-server"
+ version = "1.0.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "51d3455eaac03ca3e49d7b822eb35c884b861f715627254ccbe4309d08f1841a"
+ dependencies = [
+- "actix-codec 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-rt 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-service 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-utils 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "mio 0.6.21 (registry+https://github.com/rust-lang/crates.io-index)",
+- "mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)",
+- "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)",
+- "num_cpus 1.11.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "actix-codec",
++ "actix-rt",
++ "actix-service",
++ "actix-utils",
++ "futures",
++ "log",
++ "mio",
++ "mio-uds",
++ "net2",
++ "num_cpus",
++ "slab",
+ ]
+
+ [[package]]
+ name = "actix-service"
+ version = "1.0.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "9fba4171f1952aa15f3cf410facac388d18110b1e8754f84a407ab7f9d5ac7ee"
+ dependencies = [
+- "futures-util 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "pin-project 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "futures-util",
++ "pin-project",
+ ]
+
+ [[package]]
+ name = "actix-testing"
+ version = "1.0.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "48494745b72d0ea8ff0cf874aaf9b622a3ee03d7081ee0c04edea4f26d32c911"
+ dependencies = [
+- "actix-macros 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-rt 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-server 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-service 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)",
++ "actix-macros",
++ "actix-rt",
++ "actix-server",
++ "actix-service",
++ "futures",
++ "log",
++ "net2",
+ ]
+
+ [[package]]
+ name = "actix-threadpool"
+ version = "0.3.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "cf4082192601de5f303013709ff84d81ca6a1bc4af7fb24f367a500a23c6e84e"
+ dependencies = [
+- "derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures-channel 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "num_cpus 1.11.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "parking_lot 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "threadpool 1.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "derive_more",
++ "futures-channel",
++ "lazy_static",
++ "log",
++ "num_cpus",
++ "parking_lot 0.10.0",
++ "threadpool",
+ ]
+
+ [[package]]
+ name = "actix-tls"
+ version = "1.0.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "a4e5b4faaf105e9a6d389c606c298dcdb033061b00d532af9df56ff3a54995a8"
+ dependencies = [
+- "actix-codec 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-rt 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-service 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-utils 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "either 1.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "actix-codec",
++ "actix-rt",
++ "actix-service",
++ "actix-utils",
++ "derive_more",
++ "either",
++ "futures",
++ "log",
+ ]
+
+ [[package]]
+ name = "actix-utils"
+ version = "1.0.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "fcf8f5631bf01adec2267808f00e228b761c60c0584cc9fa0b5364f41d147f4e"
+ dependencies = [
+- "actix-codec 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-rt 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-service 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "bytes 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "either 1.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "pin-project 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "actix-codec",
++ "actix-rt",
++ "actix-service",
++ "bitflags",
++ "bytes",
++ "either",
++ "futures",
++ "log",
++ "pin-project",
++ "slab",
+ ]
+
+ [[package]]
+ name = "actix-web"
+ version = "2.0.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "3158e822461040822f0dbf1735b9c2ce1f95f93b651d7a7aded00b1efbb1f635"
+ dependencies = [
+- "actix-codec 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-http 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-macros 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-router 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-rt 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-server 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-service 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-testing 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-threadpool 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-tls 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-utils 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-web-codegen 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "awc 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "bytes 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "encoding_rs 0.8.20 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "fxhash 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "mime 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)",
+- "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)",
+- "pin-project 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "regex 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde_json 1.0.41 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde_urlencoded 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
+- "url 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "actix-codec",
++ "actix-http",
++ "actix-macros",
++ "actix-router",
++ "actix-rt",
++ "actix-server",
++ "actix-service",
++ "actix-testing",
++ "actix-threadpool",
++ "actix-tls",
++ "actix-utils",
++ "actix-web-codegen",
++ "awc",
++ "bytes",
++ "derive_more",
++ "encoding_rs",
++ "futures",
++ "fxhash",
++ "log",
++ "mime",
++ "net2",
++ "pin-project",
++ "regex",
++ "serde",
++ "serde_json",
++ "serde_urlencoded",
++ "time",
++ "url",
+ ]
+
+ [[package]]
+ name = "actix-web-codegen"
+ version = "0.2.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "de0878b30e62623770a4713a6338329fd0119703bafc211d3e4144f4d4a7bdd5"
+ dependencies = [
+- "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "syn 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
++ "proc-macro2",
++ "quote",
++ "syn",
+ ]
+
+ [[package]]
+ name = "adler32"
+ version = "1.0.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "5d2e7343e7fc9de883d1b0341e0b13970f764c14101234857d2ddafa1cb1cac2"
+
+ [[package]]
+ name = "aho-corasick"
+ version = "0.7.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "58fb5e95d83b38284460a5fda7d6470aa0b8844d283a0b614b8535e880800d2d"
+ dependencies = [
+- "memchr 2.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "memchr",
+ ]
+
+ [[package]]
+ name = "anyhow"
+ version = "1.0.26"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7825f6833612eb2414095684fcf6c635becf3ce97fe48cf6421321e93bfbd53c"
+
+ [[package]]
+ name = "arc-swap"
+ version = "0.4.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f1a1eca3195b729bbd64e292ef2f5fff6b1c28504fed762ce2b1013dde4d8e92"
+
+ [[package]]
+ name = "arrayref"
+ version = "0.3.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "0d382e583f07208808f6b1249e60848879ba3543f57c32277bf52d69c2f0f0ee"
+
+ [[package]]
+ name = "arrayvec"
+ version = "0.4.12"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "cd9fd44efafa8690358b7408d253adf110036b88f55672a933f01d616ad9b1b9"
+ dependencies = [
+- "nodrop 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)",
++ "nodrop",
+ ]
+
+ [[package]]
+ name = "arrayvec"
+ version = "0.5.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "cff77d8686867eceff3105329d4698d96c2391c176d5d03adc90c7389162b5b8"
+
+ [[package]]
+ name = "async-trait"
+ version = "0.1.22"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "c8df72488e87761e772f14ae0c2480396810e51b2c2ade912f97f0f7e5b95e3c"
+ dependencies = [
+- "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "syn 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
++ "proc-macro2",
++ "quote",
++ "syn",
+ ]
+
+ [[package]]
+ name = "atty"
+ version = "0.2.13"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "1803c647a3ec87095e7ae7acfca019e98de5ec9a7d01343f611cf3152ed71a90"
+ dependencies = [
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc",
++ "winapi 0.3.8",
+ ]
+
+ [[package]]
+ name = "autocfg"
+ version = "0.1.7"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "1d49d90015b3c36167a20fe2810c5cd875ad504b39cff3d4eae7977e6b7c1cb2"
+
+ [[package]]
+ name = "awc"
+ version = "1.0.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "d7601d4d1d7ef2335d6597a41b5fe069f6ab799b85f53565ab390e7b7065aac5"
+ dependencies = [
+- "actix-codec 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-http 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-rt 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-service 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "base64 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "bytes 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures-core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "mime 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)",
+- "percent-encoding 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rand 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde_json 1.0.41 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde_urlencoded 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "actix-codec",
++ "actix-http",
++ "actix-rt",
++ "actix-service",
++ "base64 0.11.0",
++ "bytes",
++ "derive_more",
++ "futures-core",
++ "log",
++ "mime",
++ "percent-encoding",
++ "rand",
++ "serde",
++ "serde_json",
++ "serde_urlencoded",
+ ]
+
+ [[package]]
+ name = "backtrace"
+ version = "0.3.40"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "924c76597f0d9ca25d762c25a4d369d51267536465dc5064bdf0eb073ed477ea"
+ dependencies = [
+- "backtrace-sys 0.1.32 (registry+https://github.com/rust-lang/crates.io-index)",
+- "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rustc-demangle 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
++ "backtrace-sys",
++ "cfg-if 0.1.10",
++ "libc",
++ "rustc-demangle",
+ ]
+
+ [[package]]
+ name = "backtrace-sys"
+ version = "0.1.32"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "5d6575f128516de27e3ce99689419835fce9643a9b215a14d2b5b685be018491"
+ dependencies = [
+- "cc 1.0.50 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cc",
++ "libc",
+ ]
+
+ [[package]]
+ name = "base64"
+ version = "0.10.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "0b25d992356d2eb0ed82172f5248873db5560c4721f564b13cb5193bda5e668e"
+ dependencies = [
+- "byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "byteorder",
+ ]
+
+ [[package]]
+ name = "base64"
+ version = "0.11.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "b41b7ea54a0c9d92199de89e20e58d49f02f8e699814ef3fdf266f6f748d15c7"
+
+ [[package]]
+ name = "bitflags"
+ version = "1.2.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693"
+
+ [[package]]
+ name = "blake2b_simd"
+ version = "0.5.8"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "5850aeee1552f495dd0250014cf64b82b7c8879a89d83b33bbdace2cc4f63182"
+ dependencies = [
+- "arrayref 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
+- "arrayvec 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)",
+- "constant_time_eq 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "arrayref",
++ "arrayvec 0.4.12",
++ "constant_time_eq",
+ ]
+
+ [[package]]
+ name = "blake3"
+ version = "0.1.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ba0511b7f4f7d9cb1ef7b8dfda5293af6c1071578d65c8a05aa7d11c1985f08c"
+ dependencies = [
+- "arrayref 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
+- "arrayvec 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "cc 1.0.50 (registry+https://github.com/rust-lang/crates.io-index)",
+- "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "constant_time_eq 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "arrayref",
++ "arrayvec 0.5.1",
++ "cc",
++ "cfg-if 0.1.10",
++ "constant_time_eq",
+ ]
+
+ [[package]]
+ name = "brotli-sys"
+ version = "0.3.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "4445dea95f4c2b41cde57cc9fee236ae4dbae88d8fcbdb4750fc1bb5d86aaecd"
+ dependencies = [
+- "cc 1.0.50 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cc",
++ "libc",
+ ]
+
+ [[package]]
+ name = "brotli2"
+ version = "0.3.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "0cb036c3eade309815c15ddbacec5b22c4d1f3983a774ab2eac2e3e9ea85568e"
+ dependencies = [
+- "brotli-sys 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
++ "brotli-sys",
++ "libc",
+ ]
+
+ [[package]]
+ name = "bumpalo"
+ version = "3.1.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "5fb8038c1ddc0a5f73787b130f4cc75151e96ed33e417fde765eb5a81e3532f4"
+
+ [[package]]
+ name = "byteorder"
+ version = "1.3.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "a7c3dd8985a7111efc5c80b44e23ecdd8c007de8ade3b96595387e812b957cf5"
+
+ [[package]]
+ name = "bytes"
+ version = "0.5.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "10004c15deb332055f7a4a208190aed362cf9a7c2f6ab70a305fba50e1105f38"
+
+ [[package]]
+ name = "bytestring"
+ version = "0.1.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "fc267467f58ef6cc8874064c62a0423eb0d099362c8a23edd1c6d044f46eead4"
+ dependencies = [
+- "bytes 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bytes",
+ ]
+
+ [[package]]
+ name = "c2-chacha"
+ version = "0.2.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "214238caa1bf3a496ec3392968969cab8549f96ff30652c9e56885329315f6bb"
+ dependencies = [
+- "ppv-lite86 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "ppv-lite86",
+ ]
+
+ [[package]]
+ name = "cc"
+ version = "1.0.50"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "95e28fa049fda1c330bcf9d723be7663a899c4679724b34c81e9f5a326aab8cd"
+
+ [[package]]
+ name = "cfg-if"
+ version = "0.1.10"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
++
++[[package]]
++name = "cfg-if"
++version = "1.0.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
+
+ [[package]]
+ name = "chrono"
+ version = "0.4.10"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "31850b4a4d6bae316f7a09e691c944c28299298837edc0a03f755618c23cbc01"
+ dependencies = [
+- "num-integer 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)",
+- "num-traits 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
++ "num-integer",
++ "num-traits",
++ "time",
+ ]
+
+ [[package]]
+ name = "clicolors-control"
+ version = "1.0.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "90082ee5dcdd64dc4e9e0d37fbf3ee325419e39c0092191e0393df65518f741e"
+ dependencies = [
+- "atty 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)",
+- "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "atty",
++ "lazy_static",
++ "libc",
++ "winapi 0.3.8",
+ ]
+
+ [[package]]
+ name = "cloudabi"
+ version = "0.0.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f"
+ dependencies = [
+- "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bitflags",
+ ]
+
+ [[package]]
+ name = "console"
+ version = "0.9.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f5d540c2d34ac9dd0deb5f3b5f54c36c79efa78f6b3ad19106a554d07a7b5d9f"
+ dependencies = [
+- "clicolors-control 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "encode_unicode 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
+- "regex 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "termios 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "unicode-width 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "clicolors-control",
++ "encode_unicode",
++ "lazy_static",
++ "libc",
++ "regex",
++ "termios",
++ "unicode-width",
++ "winapi 0.3.8",
+ ]
+
+ [[package]]
+ name = "constant_time_eq"
+ version = "0.1.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "245097e9a4535ee1e3e3931fcfcd55a796a44c643e8596ff6566d68f09b87bbc"
+
+ [[package]]
+ name = "copyless"
+ version = "0.1.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6ff9c56c9fb2a49c05ef0e431485a22400af20d33226dc0764d891d09e724127"
+
+ [[package]]
+ name = "crc32fast"
+ version = "1.2.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ba125de2af0df55319f41944744ad91c71113bf74a4646efff39afe1f6842db1"
+ dependencies = [
+- "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cfg-if 0.1.10",
+ ]
+
+ [[package]]
+ name = "crossbeam-utils"
+ version = "0.6.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "04973fa96e96579258a5091af6003abde64af786b860f18622b82e026cca60e6"
+ dependencies = [
+- "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cfg-if 0.1.10",
++ "lazy_static",
+ ]
+
+ [[package]]
+ name = "derive_more"
+ version = "0.99.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "2159be042979966de68315bce7034bb000c775f22e3e834e1c52ff78f041cae8"
+ dependencies = [
+- "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "syn 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
++ "proc-macro2",
++ "quote",
++ "syn",
+ ]
+
+ [[package]]
+ name = "dialoguer"
+ version = "0.5.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "94616e25d2c04fc97253d145f6ca33ad84a584258dc70c4e621cc79a57f903b6"
+ dependencies = [
+- "console 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tempfile 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "console",
++ "lazy_static",
++ "tempfile",
+ ]
+
+ [[package]]
+ name = "diesel"
+ version = "1.4.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "9d7cc03b910de9935007861dce440881f69102aaaedfd4bc5a6f40340ca5840c"
+ dependencies = [
+- "byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "diesel_derives 1.4.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libsqlite3-sys 0.16.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "r2d2 0.8.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "byteorder",
++ "diesel_derives",
++ "libsqlite3-sys",
++ "r2d2",
+ ]
+
+ [[package]]
+ name = "diesel_derives"
+ version = "1.4.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "45f5098f628d02a7a0f68ddba586fb61e80edec3bdc1be3b921f4ceec60858d3"
+ dependencies = [
+- "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "syn 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
++ "proc-macro2",
++ "quote",
++ "syn",
+ ]
+
+ [[package]]
+ name = "diesel_migrations"
+ version = "1.4.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "bf3cde8413353dc7f5d72fa8ce0b99a560a359d2c5ef1e5817ca731cd9008f4c"
+ dependencies = [
+- "migrations_internals 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "migrations_macros 1.4.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "migrations_internals",
++ "migrations_macros",
+ ]
+
+ [[package]]
+ name = "dirs"
+ version = "2.0.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "13aea89a5c93364a98e9b37b2fa237effbb694d5cfe01c5b70941f7eb087d5e3"
+ dependencies = [
+- "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "dirs-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cfg-if 0.1.10",
++ "dirs-sys",
+ ]
+
+ [[package]]
+ name = "dirs-sys"
+ version = "0.3.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "afa0b23de8fd801745c471deffa6e12d248f962c9fd4b4c33787b055599bde7b"
+ dependencies = [
+- "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
+- "redox_users 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cfg-if 0.1.10",
++ "libc",
++ "redox_users",
++ "winapi 0.3.8",
+ ]
+
+ [[package]]
+ name = "dotenv"
+ version = "0.15.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "77c90badedccf4105eca100756a0b1289e191f6fcbdadd3cee1d2f614f97da8f"
+
+ [[package]]
+ name = "dtoa"
+ version = "0.4.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ea57b42383d091c85abcc2706240b94ab2a8fa1fc81c10ff23c4de06e2a90b5e"
+
+ [[package]]
+ name = "either"
+ version = "1.5.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "bb1f6b1ce1c140482ea30ddd3335fc0024ac7ee112895426e0a629a6c20adfe3"
+
+ [[package]]
+ name = "encode_unicode"
+ version = "0.3.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "a357d28ed41a50f9c765dbfe56cbc04a64e53e5fc58ba79fbc34c10ef3df831f"
+
+ [[package]]
+ name = "encoding_rs"
+ version = "0.8.20"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "87240518927716f79692c2ed85bfe6e98196d18c6401ec75355760233a7e12e9"
+ dependencies = [
+- "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cfg-if 0.1.10",
+ ]
+
+ [[package]]
+ name = "enum-as-inner"
+ version = "0.3.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "900a6c7fbe523f4c2884eaf26b57b81bb69b6810a01a236390a7ac021d09492e"
+ dependencies = [
+- "heck 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "syn 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
++ "heck",
++ "proc-macro2",
++ "quote",
++ "syn",
+ ]
+
+ [[package]]
+ name = "env_logger"
+ version = "0.7.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "44533bbbb3bb3c1fa17d9f2e4e38bbbaf8396ba82193c4cb1b6445d711445d36"
+ dependencies = [
+- "atty 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)",
+- "humantime 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "regex 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "termcolor 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "atty",
++ "humantime",
++ "log",
++ "regex",
++ "termcolor",
+ ]
+
+ [[package]]
+ name = "failure"
+ version = "0.1.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f8273f13c977665c5db7eb2b99ae520952fe5ac831ae4cd09d80c4c7042b5ed9"
+ dependencies = [
+- "backtrace 0.3.40 (registry+https://github.com/rust-lang/crates.io-index)",
+- "failure_derive 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "backtrace",
++ "failure_derive",
+ ]
+
+ [[package]]
+ name = "failure_derive"
+ version = "0.1.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "0bc225b78e0391e4b8683440bf2e63c2deeeb2ce5189eab46e2b68c6d3725d08"
+ dependencies = [
+- "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "syn 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
+- "synstructure 0.12.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "proc-macro2",
++ "quote",
++ "syn",
++ "synstructure",
+ ]
+
+ [[package]]
+ name = "filite"
+ version = "0.3.0"
+ dependencies = [
+- "actix-files 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-identity 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-multipart 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-rt 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "actix-web 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "base64 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "blake3 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "chrono 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "dialoguer 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "diesel 1.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "diesel_migrations 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "dirs 2.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "dotenv 0.15.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "env_logger 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libsqlite3-sys 0.16.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "num_cpus 1.11.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "radix_fmt 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rand 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
+- "toml 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "actix-files",
++ "actix-identity",
++ "actix-multipart",
++ "actix-rt",
++ "actix-web",
++ "base64 0.11.0",
++ "blake3",
++ "chrono",
++ "dialoguer",
++ "diesel",
++ "diesel_migrations",
++ "dirs",
++ "dotenv",
++ "env_logger",
++ "futures",
++ "lazy_static",
++ "libsqlite3-sys",
++ "num_cpus",
++ "radix_fmt",
++ "rand",
++ "serde",
++ "toml",
+ ]
+
+ [[package]]
+ name = "flate2"
+ version = "1.0.13"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6bd6d6f4752952feb71363cffc9ebac9411b75b87c6ab6058c40c8900cf43c0f"
+ dependencies = [
+- "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "crc32fast 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
+- "miniz_oxide 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cfg-if 0.1.10",
++ "crc32fast",
++ "libc",
++ "miniz_oxide",
+ ]
+
+ [[package]]
+ name = "fnv"
+ version = "1.0.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "2fad85553e09a6f881f739c29f0b00b0f01357c743266d478b68951ce23285f3"
+
+ [[package]]
+ name = "fuchsia-cprng"
+ version = "0.1.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba"
+
+ [[package]]
+ name = "fuchsia-zircon"
+ version = "0.3.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82"
+ dependencies = [
+- "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bitflags",
++ "fuchsia-zircon-sys",
+ ]
+
+ [[package]]
+ name = "fuchsia-zircon-sys"
+ version = "0.3.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7"
+
+ [[package]]
+ name = "futures"
+ version = "0.3.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "b6f16056ecbb57525ff698bb955162d0cd03bee84e6241c27ff75c08d8ca5987"
+ dependencies = [
+- "futures-channel 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures-core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures-executor 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures-io 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures-sink 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures-task 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures-util 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "futures-channel",
++ "futures-core",
++ "futures-executor",
++ "futures-io",
++ "futures-sink",
++ "futures-task",
++ "futures-util",
+ ]
+
+ [[package]]
+ name = "futures-channel"
+ version = "0.3.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "fcae98ca17d102fd8a3603727b9259fcf7fa4239b603d2142926189bc8999b86"
+ dependencies = [
+- "futures-core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures-sink 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "futures-core",
++ "futures-sink",
+ ]
+
+ [[package]]
+ name = "futures-core"
+ version = "0.3.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "79564c427afefab1dfb3298535b21eda083ef7935b4f0ecbfcb121f0aec10866"
+
+ [[package]]
+ name = "futures-executor"
+ version = "0.3.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "1e274736563f686a837a0568b478bdabfeaec2dca794b5649b04e2fe1627c231"
+ dependencies = [
+- "futures-core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures-task 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures-util 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "futures-core",
++ "futures-task",
++ "futures-util",
+ ]
+
+ [[package]]
+ name = "futures-io"
+ version = "0.3.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e676577d229e70952ab25f3945795ba5b16d63ca794ca9d2c860e5595d20b5ff"
+
+ [[package]]
+ name = "futures-macro"
+ version = "0.3.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "52e7c56c15537adb4f76d0b7a76ad131cb4d2f4f32d3b0bcabcbe1c7c5e87764"
+ dependencies = [
+- "proc-macro-hack 0.5.11 (registry+https://github.com/rust-lang/crates.io-index)",
+- "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "syn 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
++ "proc-macro-hack",
++ "proc-macro2",
++ "quote",
++ "syn",
+ ]
+
+ [[package]]
+ name = "futures-sink"
+ version = "0.3.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "171be33efae63c2d59e6dbba34186fe0d6394fb378069a76dfd80fdcffd43c16"
+
+ [[package]]
+ name = "futures-task"
+ version = "0.3.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "0bae52d6b29cf440e298856fec3965ee6fa71b06aa7495178615953fd669e5f9"
+
+ [[package]]
+ name = "futures-util"
+ version = "0.3.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "c0d66274fb76985d3c62c886d1da7ac4c0903a8c9f754e8fe0f35a6a6cc39e76"
+ dependencies = [
+- "futures-channel 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures-core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures-io 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures-macro 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures-sink 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures-task 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "memchr 2.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "pin-utils 0.1.0-alpha.4 (registry+https://github.com/rust-lang/crates.io-index)",
+- "proc-macro-hack 0.5.11 (registry+https://github.com/rust-lang/crates.io-index)",
+- "proc-macro-nested 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "futures-channel",
++ "futures-core",
++ "futures-io",
++ "futures-macro",
++ "futures-sink",
++ "futures-task",
++ "memchr",
++ "pin-utils",
++ "proc-macro-hack",
++ "proc-macro-nested",
++ "slab",
+ ]
+
+ [[package]]
+ name = "fxhash"
+ version = "0.2.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c"
+ dependencies = [
+- "byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "byteorder",
+ ]
+
+ [[package]]
+ name = "getrandom"
+ version = "0.1.13"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e7db7ca94ed4cd01190ceee0d8a8052f08a247aa1b469a7f68c6a3b71afcf407"
+ dependencies = [
+- "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
+- "wasi 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cfg-if 0.1.10",
++ "libc",
++ "wasi",
+ ]
+
+ [[package]]
+ name = "h2"
+ version = "0.2.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "b9433d71e471c1736fd5a61b671fc0b148d7a2992f666c958d03cd8feb3b88d1"
+ dependencies = [
+- "bytes 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures-core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures-sink 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures-util 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "http 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "indexmap 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio 0.2.9 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-util 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bytes",
++ "fnv",
++ "futures-core",
++ "futures-sink",
++ "futures-util",
++ "http",
++ "indexmap",
++ "log",
++ "slab",
++ "tokio",
++ "tokio-util",
+ ]
+
+ [[package]]
+ name = "heck"
+ version = "0.3.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "20564e78d53d2bb135c343b3f47714a56af2061f1c928fdb541dc7b9fdd94205"
+ dependencies = [
+- "unicode-segmentation 1.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "unicode-segmentation",
+ ]
+
+ [[package]]
+ name = "hermit-abi"
+ version = "0.1.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "eff2656d88f158ce120947499e971d743c05dbcbed62e5bd2f38f1698bbc3772"
+ dependencies = [
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc",
+ ]
+
+ [[package]]
+ name = "hostname"
+ version = "0.1.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "21ceb46a83a85e824ef93669c8b390009623863b5c195d1ba747292c0c72f94e"
+ dependencies = [
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winutil 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc",
++ "winutil",
+ ]
+
+ [[package]]
+ name = "http"
+ version = "0.2.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "b708cc7f06493459026f53b9a61a7a121a5d1ec6238dee58ea4941132b30156b"
+ dependencies = [
+- "bytes 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "itoa 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bytes",
++ "fnv",
++ "itoa",
+ ]
+
+ [[package]]
+ name = "httparse"
+ version = "1.3.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "cd179ae861f0c2e53da70d892f5f3029f9594be0c41dc5269cd371691b1dc2f9"
+
+ [[package]]
+ name = "humantime"
+ version = "1.3.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "df004cfca50ef23c36850aaaa59ad52cc70d0e90243c3c7737a4dd32dc7a3c4f"
+ dependencies = [
+- "quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "quick-error",
+ ]
+
+ [[package]]
+ name = "idna"
+ version = "0.2.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "02e2673c30ee86b5b96a9cb52ad15718aa1f966f5ab9ad54a8b95d5ca33120a9"
+ dependencies = [
+- "matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+- "unicode-normalization 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "matches",
++ "unicode-bidi",
++ "unicode-normalization",
+ ]
+
+ [[package]]
+ name = "indexmap"
+ version = "1.3.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "712d7b3ea5827fcb9d4fda14bf4da5f136f0db2ae9c8f4bd4e2d1c6fde4e6db2"
+ dependencies = [
+- "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
++ "autocfg",
+ ]
+
+ [[package]]
+ name = "iovec"
+ version = "0.1.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "b2b3ea6ff95e175473f8ffe6a7eb7c00d054240321b84c57051175fe3c1e075e"
+ dependencies = [
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc",
+ ]
+
+ [[package]]
+ name = "ipconfig"
+ version = "0.2.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "aa79fa216fbe60834a9c0737d7fcd30425b32d1c58854663e24d4c4b328ed83f"
+ dependencies = [
+- "socket2 0.3.11 (registry+https://github.com/rust-lang/crates.io-index)",
+- "widestring 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winreg 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "socket2",
++ "widestring",
++ "winapi 0.3.8",
++ "winreg",
+ ]
+
+ [[package]]
+ name = "itoa"
+ version = "0.4.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "501266b7edd0174f8530248f87f99c88fbe60ca4ef3dd486835b8d8d53136f7f"
+
+ [[package]]
+ name = "js-sys"
+ version = "0.3.35"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7889c7c36282151f6bf465be4700359318aef36baa951462382eae49e9577cf9"
+ dependencies = [
+- "wasm-bindgen 0.2.58 (registry+https://github.com/rust-lang/crates.io-index)",
++ "wasm-bindgen",
+ ]
+
+ [[package]]
+ name = "kernel32-sys"
+ version = "0.2.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d"
+ dependencies = [
+- "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "winapi 0.2.8",
++ "winapi-build",
+ ]
+
+ [[package]]
+ name = "language-tags"
+ version = "0.2.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "a91d884b6667cd606bb5a69aa0c99ba811a115fc68915e7056ec08a46e93199a"
+
+ [[package]]
+ name = "lazy_static"
+ version = "1.4.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
+
+ [[package]]
+ name = "libc"
+-version = "0.2.65"
++version = "0.2.136"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "55edcf6c0bb319052dea84732cf99db461780fd5e8d3eb46ab6ff312ab31f197"
+
+ [[package]]
+ name = "libsqlite3-sys"
+ version = "0.16.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "5e5b95e89c330291768dc840238db7f9e204fd208511ab6319b56193a7f2ae25"
+ dependencies = [
+- "cc 1.0.50 (registry+https://github.com/rust-lang/crates.io-index)",
+- "pkg-config 0.3.16 (registry+https://github.com/rust-lang/crates.io-index)",
+- "vcpkg 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cc",
++ "pkg-config",
++ "vcpkg",
+ ]
+
+ [[package]]
+ name = "linked-hash-map"
+ version = "0.5.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ae91b68aebc4ddb91978b11a1b02ddd8602a05ec19002801c5666000e05e0f83"
+
+ [[package]]
+ name = "lock_api"
+ version = "0.3.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f8912e782533a93a167888781b836336a6ca5da6175c05944c86cf28c31104dc"
+ dependencies = [
+- "scopeguard 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "scopeguard",
+ ]
+
+ [[package]]
+ name = "log"
+ version = "0.4.8"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "14b6052be84e6b71ab17edffc2eeabf5c2c3ae1fdb464aae35ac50c67a44e1f7"
+ dependencies = [
+- "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cfg-if 0.1.10",
+ ]
+
+ [[package]]
+ name = "lru-cache"
+ version = "0.1.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "31e24f1ad8321ca0e8a1e0ac13f23cb668e6f5466c2c57319f6a5cf1cc8e3b1c"
+ dependencies = [
+- "linked-hash-map 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "linked-hash-map",
+ ]
+
+ [[package]]
+ name = "matches"
+ version = "0.1.8"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08"
+
+ [[package]]
+ name = "memchr"
+ version = "2.2.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "88579771288728879b57485cc7d6b07d648c9f0141eb955f8ab7f9d45394468e"
+
+ [[package]]
+ name = "migrations_internals"
+ version = "1.4.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "8089920229070f914b9ce9b07ef60e175b2b9bc2d35c3edd8bf4433604e863b9"
+ dependencies = [
+- "diesel 1.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
++ "diesel",
+ ]
+
+ [[package]]
+ name = "migrations_macros"
+ version = "1.4.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "719ef0bc7f531428764c9b70661c14abd50a7f3d21f355752d9985aa21251c9e"
+ dependencies = [
+- "migrations_internals 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "syn 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
++ "migrations_internals",
++ "proc-macro2",
++ "quote",
++ "syn",
+ ]
+
+ [[package]]
+ name = "mime"
+ version = "0.3.14"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "dd1d63acd1b78403cc0c325605908475dd9b9a3acbf65ed8bcab97e27014afcf"
+
+ [[package]]
+ name = "mime_guess"
+ version = "2.0.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "1a0ed03949aef72dbdf3116a383d7b38b4768e6f960528cd6a6044aa9ed68599"
+ dependencies = [
+- "mime 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)",
+- "unicase 2.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "mime",
++ "unicase",
+ ]
+
+ [[package]]
+ name = "miniz_oxide"
+ version = "0.3.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6f3f74f726ae935c3f514300cc6773a0c9492abc5e972d42ba0c0ebb88757625"
+ dependencies = [
+- "adler32 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
++ "adler32",
+ ]
+
+ [[package]]
+ name = "mio"
+ version = "0.6.21"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "302dec22bcf6bae6dfb69c647187f4b4d0fb6f535521f7bc022430ce8e12008f"
+ dependencies = [
+- "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "iovec 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
+- "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "miow 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)",
+- "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cfg-if 0.1.10",
++ "fuchsia-zircon",
++ "fuchsia-zircon-sys",
++ "iovec",
++ "kernel32-sys",
++ "libc",
++ "log",
++ "miow",
++ "net2",
++ "slab",
++ "winapi 0.2.8",
+ ]
+
+ [[package]]
+ name = "mio-uds"
+ version = "0.6.7"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "966257a94e196b11bb43aca423754d87429960a768de9414f3691d6957abf125"
+ dependencies = [
+- "iovec 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
+- "mio 0.6.21 (registry+https://github.com/rust-lang/crates.io-index)",
++ "iovec",
++ "libc",
++ "mio",
+ ]
+
+ [[package]]
+ name = "miow"
+ version = "0.2.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "8c1f2f3b1cf331de6896aabf6e9d55dca90356cc9960cca7eaaf408a355ae919"
+ dependencies = [
+- "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "ws2_32-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "kernel32-sys",
++ "net2",
++ "winapi 0.2.8",
++ "ws2_32-sys",
+ ]
+
+ [[package]]
+ name = "net2"
+ version = "0.2.33"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "42550d9fb7b6684a6d404d9fa7250c2eb2646df731d1c06afc06dcee9e1bcf88"
+ dependencies = [
+- "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cfg-if 0.1.10",
++ "libc",
++ "winapi 0.3.8",
+ ]
+
+ [[package]]
+ name = "nodrop"
+ version = "0.1.14"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "72ef4a56884ca558e5ddb05a1d1e7e1bfd9a68d9ed024c21704cc98872dae1bb"
+
+ [[package]]
+ name = "nom"
+ version = "4.2.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "2ad2a91a8e869eeb30b9cb3119ae87773a8f4ae617f41b1eb9c154b2905f7bd6"
+ dependencies = [
+- "memchr 2.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "memchr",
++ "version_check",
+ ]
+
+ [[package]]
+ name = "num-integer"
+ version = "0.1.41"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "b85e541ef8255f6cf42bbfe4ef361305c6c135d10919ecc26126c4e5ae94bc09"
+ dependencies = [
+- "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
+- "num-traits 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "autocfg",
++ "num-traits",
+ ]
+
+ [[package]]
+ name = "num-traits"
+ version = "0.2.8"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6ba9a427cfca2be13aa6f6403b0b7e7368fe982bfa16fccc450ce74c46cd9b32"
+ dependencies = [
+- "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
++ "autocfg",
+ ]
+
+ [[package]]
+ name = "num_cpus"
+ version = "1.11.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "76dac5ed2a876980778b8b85f75a71b6cbf0db0b1232ee12f826bccb00d09d72"
+ dependencies = [
+- "hermit-abi 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
++ "hermit-abi",
++ "libc",
+ ]
+
+ [[package]]
+ name = "parking_lot"
+ version = "0.9.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f842b1982eb6c2fe34036a4fbfb06dd185a3f5c8edfaacdf7d1ea10b07de6252"
+ dependencies = [
+- "lock_api 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "parking_lot_core 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
++ "lock_api",
++ "parking_lot_core 0.6.2",
++ "rustc_version",
+ ]
+
+ [[package]]
+ name = "parking_lot"
+ version = "0.10.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "92e98c49ab0b7ce5b222f2cc9193fc4efe11c6d0bd4f648e374684a6857b1cfc"
+ dependencies = [
+- "lock_api 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "parking_lot_core 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "lock_api",
++ "parking_lot_core 0.7.0",
+ ]
+
+ [[package]]
+ name = "parking_lot_core"
+ version = "0.6.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "b876b1b9e7ac6e1a74a6da34d25c42e17e8862aa409cbbbdcfc8d86c6f3bc62b"
+ dependencies = [
+- "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
+- "redox_syscall 0.1.56 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "smallvec 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cfg-if 0.1.10",
++ "cloudabi",
++ "libc",
++ "redox_syscall",
++ "rustc_version",
++ "smallvec 0.6.10",
++ "winapi 0.3.8",
+ ]
+
+ [[package]]
+ name = "parking_lot_core"
+ version = "0.7.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7582838484df45743c8434fbff785e8edf260c28748353d44bc0da32e0ceabf1"
+ dependencies = [
+- "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
+- "redox_syscall 0.1.56 (registry+https://github.com/rust-lang/crates.io-index)",
+- "smallvec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cfg-if 0.1.10",
++ "cloudabi",
++ "libc",
++ "redox_syscall",
++ "smallvec 1.1.0",
++ "winapi 0.3.8",
+ ]
+
+ [[package]]
+ name = "percent-encoding"
+ version = "2.1.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e"
+
+ [[package]]
+ name = "pin-project"
+ version = "0.4.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "94b90146c7216e4cb534069fb91366de4ea0ea353105ee45ed297e2d1619e469"
+ dependencies = [
+- "pin-project-internal 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "pin-project-internal",
+ ]
+
+ [[package]]
+ name = "pin-project-internal"
+ version = "0.4.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "44ca92f893f0656d3cba8158dd0f2b99b94de256a4a54e870bd6922fcc6c8355"
+ dependencies = [
+- "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "syn 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
++ "proc-macro2",
++ "quote",
++ "syn",
+ ]
+
+ [[package]]
+ name = "pin-project-lite"
+ version = "0.1.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e8822eb8bb72452f038ebf6048efa02c3fe22bf83f76519c9583e47fc194a422"
+
+ [[package]]
+ name = "pin-utils"
+ version = "0.1.0-alpha.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "5894c618ce612a3fa23881b152b608bafb8c56cfc22f434a3ba3120b40f7b587"
+
+ [[package]]
+ name = "pkg-config"
+ version = "0.3.16"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "72d5370d90f49f70bd033c3d75e87fc529fbfff9d6f7cccef07d6170079d91ea"
+
+ [[package]]
+ name = "ppv-lite86"
+ version = "0.2.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "74490b50b9fbe561ac330df47c08f3f33073d2d00c150f719147d7c54522fa1b"
+
+ [[package]]
+ name = "proc-macro-hack"
+ version = "0.5.11"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ecd45702f76d6d3c75a80564378ae228a85f0b59d2f3ed43c91b4a69eb2ebfc5"
+ dependencies = [
+- "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "syn 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
++ "proc-macro2",
++ "quote",
++ "syn",
+ ]
+
+ [[package]]
+ name = "proc-macro-nested"
+ version = "0.1.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "369a6ed065f249a159e06c45752c780bda2fb53c995718f9e484d08daa9eb42e"
+
+ [[package]]
+ name = "proc-macro2"
+ version = "1.0.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "9c9e470a8dc4aeae2dee2f335e8f533e2d4b347e1434e5671afc49b054592f27"
+ dependencies = [
+- "unicode-xid 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "unicode-xid",
+ ]
+
+ [[package]]
+ name = "quick-error"
+ version = "1.2.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "9274b940887ce9addde99c4eee6b5c44cc494b182b97e73dc8ffdcb3397fd3f0"
+
+ [[package]]
+ name = "quote"
+ version = "1.0.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "053a8c8bcc71fcce321828dc897a98ab9760bef03a4fc36693c231e5b3216cfe"
+ dependencies = [
+- "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "proc-macro2",
+ ]
+
+ [[package]]
+ name = "r2d2"
+ version = "0.8.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e48fa64898ef0286b6ee4b4d8f61483f9182acf5e44e62a398b1c7f56f2f861d"
+ dependencies = [
+- "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "parking_lot 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "scheduled-thread-pool 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "log",
++ "parking_lot 0.9.0",
++ "scheduled-thread-pool",
+ ]
+
+ [[package]]
+ name = "radix_fmt"
+ version = "1.0.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ce082a9940a7ace2ad4a8b7d0b1eac6aa378895f18be598230c5f2284ac05426"
+
+ [[package]]
+ name = "rand"
+ version = "0.7.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03"
+ dependencies = [
+- "getrandom 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rand_chacha 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rand_hc 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "getrandom",
++ "libc",
++ "rand_chacha",
++ "rand_core 0.5.1",
++ "rand_hc",
+ ]
+
+ [[package]]
+ name = "rand_chacha"
+ version = "0.2.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "03a2a90da8c7523f554344f921aa97283eadf6ac484a6d2a7d0212fa7f8d6853"
+ dependencies = [
+- "c2-chacha 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "c2-chacha",
++ "rand_core 0.5.1",
+ ]
+
+ [[package]]
+ name = "rand_core"
+ version = "0.3.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b"
+ dependencies = [
+- "rand_core 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rand_core 0.4.2",
+ ]
+
+ [[package]]
+ name = "rand_core"
+ version = "0.4.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "9c33a3c44ca05fa6f1807d8e6743f3824e8509beca625669633be0acbdf509dc"
+
+ [[package]]
+ name = "rand_core"
+ version = "0.5.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19"
+ dependencies = [
+- "getrandom 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)",
++ "getrandom",
+ ]
+
+ [[package]]
+ name = "rand_hc"
+ version = "0.2.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c"
+ dependencies = [
+- "rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rand_core 0.5.1",
+ ]
+
+ [[package]]
+ name = "rand_os"
+ version = "0.1.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7b75f676a1e053fc562eafbb47838d67c84801e38fc1ba459e8f180deabd5071"
+ dependencies = [
+- "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rand_core 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cloudabi",
++ "fuchsia-cprng",
++ "libc",
++ "rand_core 0.4.2",
++ "rdrand",
++ "winapi 0.3.8",
+ ]
+
+ [[package]]
+ name = "rdrand"
+ version = "0.4.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2"
+ dependencies = [
+- "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rand_core 0.3.1",
+ ]
+
+ [[package]]
+ name = "redox_syscall"
+ version = "0.1.56"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "2439c63f3f6139d1b57529d16bc3b8bb855230c8efcc5d3a896c8bea7c3b1e84"
+
+ [[package]]
+ name = "redox_users"
+ version = "0.3.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "4ecedbca3bf205f8d8f5c2b44d83cd0690e39ee84b951ed649e9f1841132b66d"
+ dependencies = [
+- "failure 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rand_os 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "redox_syscall 0.1.56 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rust-argon2 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "failure",
++ "rand_os",
++ "redox_syscall",
++ "rust-argon2",
+ ]
+
+ [[package]]
+ name = "regex"
+ version = "1.3.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "dc220bd33bdce8f093101afe22a037b8eb0e5af33592e6a9caafff0d4cb81cbd"
+ dependencies = [
+- "aho-corasick 0.7.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "memchr 2.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "regex-syntax 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)",
+- "thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "aho-corasick",
++ "memchr",
++ "regex-syntax",
++ "thread_local",
+ ]
+
+ [[package]]
+ name = "regex-syntax"
+ version = "0.6.12"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "11a7e20d1cce64ef2fed88b66d347f88bd9babb82845b2b858f3edbf59a4f716"
+
+ [[package]]
+ name = "remove_dir_all"
+ version = "0.5.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "4a83fa3702a688b9359eccba92d153ac33fd2e8462f9e0e3fdf155239ea7792e"
+ dependencies = [
+- "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "winapi 0.3.8",
+ ]
+
+ [[package]]
+ name = "resolv-conf"
+ version = "0.6.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "b263b4aa1b5de9ffc0054a2386f96992058bb6870aab516f8cdeb8a667d56dcb"
+ dependencies = [
+- "hostname 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
+- "quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "hostname",
++ "quick-error",
+ ]
+
+ [[package]]
+ name = "ring"
+ version = "0.16.9"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6747f8da1f2b1fabbee1aaa4eb8a11abf9adef0bf58a41cee45db5d59cecdfac"
+ dependencies = [
+- "cc 1.0.50 (registry+https://github.com/rust-lang/crates.io-index)",
+- "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
+- "spin 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "untrusted 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "web-sys 0.3.35 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cc",
++ "lazy_static",
++ "libc",
++ "spin",
++ "untrusted",
++ "web-sys",
++ "winapi 0.3.8",
+ ]
+
+ [[package]]
+ name = "rust-argon2"
+ version = "0.5.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "4ca4eaef519b494d1f2848fc602d18816fed808a981aedf4f1f00ceb7c9d32cf"
+ dependencies = [
+- "base64 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "blake2b_simd 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "crossbeam-utils 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "base64 0.10.1",
++ "blake2b_simd",
++ "crossbeam-utils",
+ ]
+
+ [[package]]
+ name = "rustc-demangle"
+ version = "0.1.16"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "4c691c0e608126e00913e33f0ccf3727d5fc84573623b8d65b2df340b5201783"
+
+ [[package]]
+ name = "rustc_version"
+ version = "0.2.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a"
+ dependencies = [
+- "semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "semver",
+ ]
+
+ [[package]]
+ name = "ryu"
+ version = "1.0.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "bfa8506c1de11c9c4e4c38863ccbe02a305c8188e85a05a784c9e11e1c3910c8"
+
+ [[package]]
+ name = "scheduled-thread-pool"
+ version = "0.2.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "bd07742e081ff6c077f5f6b283f12f32b9e7cc765b316160d66289b74546fbb3"
+ dependencies = [
+- "parking_lot 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "parking_lot 0.9.0",
+ ]
+
+ [[package]]
+ name = "scopeguard"
+ version = "1.0.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "b42e15e59b18a828bbf5c58ea01debb36b9b096346de35d941dcb89009f24a0d"
+
+ [[package]]
+ name = "semver"
+ version = "0.9.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403"
+ dependencies = [
+- "semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "semver-parser",
+ ]
+
+ [[package]]
+ name = "semver-parser"
+ version = "0.7.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3"
+
+ [[package]]
+ name = "serde"
+ version = "1.0.104"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "414115f25f818d7dfccec8ee535d76949ae78584fc4f79a6f45a904bf8ab4449"
+ dependencies = [
+- "serde_derive 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
++ "serde_derive",
+ ]
+
+ [[package]]
+ name = "serde_derive"
+ version = "1.0.104"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "128f9e303a5a29922045a830221b8f78ec74a5f544944f3d5984f8ec3895ef64"
+ dependencies = [
+- "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "syn 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
++ "proc-macro2",
++ "quote",
++ "syn",
+ ]
+
+ [[package]]
+ name = "serde_json"
+ version = "1.0.41"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "2f72eb2a68a7dc3f9a691bfda9305a1c017a6215e5a4545c258500d2099a37c2"
+ dependencies = [
+- "itoa 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
+- "ryu 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
++ "itoa",
++ "ryu",
++ "serde",
+ ]
+
+ [[package]]
+ name = "serde_urlencoded"
+ version = "0.6.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "9ec5d77e2d4c73717816afac02670d5c4f534ea95ed430442cad02e7a6e32c97"
+ dependencies = [
+- "dtoa 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
+- "itoa 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
+- "url 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "dtoa",
++ "itoa",
++ "serde",
++ "url",
+ ]
+
+ [[package]]
+ name = "sha1"
+ version = "0.6.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "2579985fda508104f7587689507983eadd6a6e84dd35d6d115361f530916fa0d"
+
+ [[package]]
+ name = "signal-hook-registry"
+ version = "1.1.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "1797d48f38f91643908bb14e35e79928f9f4b3cefb2420a564dde0991b4358dc"
+ dependencies = [
+- "arc-swap 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
++ "arc-swap",
++ "libc",
+ ]
+
+ [[package]]
+ name = "slab"
+ version = "0.4.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "c111b5bd5695e56cffe5129854aa230b39c93a305372fdbb2668ca2394eea9f8"
+
+ [[package]]
+ name = "smallvec"
+ version = "0.6.10"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ab606a9c5e214920bb66c458cd7be8ef094f813f20fe77a54cc7dbfff220d4b7"
+
+ [[package]]
+ name = "smallvec"
+ version = "1.1.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "44e59e0c9fa00817912ae6e4e6e3c4fe04455e75699d06eedc7d85917ed8e8f4"
+
+ [[package]]
+ name = "socket2"
+-version = "0.3.11"
++version = "0.3.19"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "122e570113d28d773067fab24266b66753f6ea915758651696b6e35e49f88d6e"
+ dependencies = [
+- "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
+- "redox_syscall 0.1.56 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cfg-if 1.0.0",
++ "libc",
++ "winapi 0.3.8",
+ ]
+
+ [[package]]
+ name = "sourcefile"
+ version = "0.1.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "4bf77cb82ba8453b42b6ae1d692e4cdc92f9a47beaf89a847c8be83f4e328ad3"
+
+ [[package]]
+ name = "spin"
+ version = "0.5.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d"
+
+ [[package]]
+ name = "syn"
+ version = "1.0.7"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "0e7bedb3320d0f3035594b0b723c8a28d7d336a3eda3881db79e61d676fb644c"
+ dependencies = [
+- "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "unicode-xid 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "proc-macro2",
++ "quote",
++ "unicode-xid",
+ ]
+
+ [[package]]
+ name = "synstructure"
+ version = "0.12.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "3f085a5855930c0441ca1288cf044ea4aecf4f43a91668abdb870b4ba546a203"
+ dependencies = [
+- "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "syn 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
+- "unicode-xid 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "proc-macro2",
++ "quote",
++ "syn",
++ "unicode-xid",
+ ]
+
+ [[package]]
+ name = "tempfile"
+ version = "3.1.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7a6e24d9338a0a5be79593e2fa15a648add6138caa803e2d5bc782c371732ca9"
+ dependencies = [
+- "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rand 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "redox_syscall 0.1.56 (registry+https://github.com/rust-lang/crates.io-index)",
+- "remove_dir_all 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cfg-if 0.1.10",
++ "libc",
++ "rand",
++ "redox_syscall",
++ "remove_dir_all",
++ "winapi 0.3.8",
+ ]
+
+ [[package]]
+ name = "termcolor"
+ version = "1.0.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "96d6098003bde162e4277c70665bd87c326f5a0c3f3fbfb285787fa482d54e6e"
+ dependencies = [
+- "wincolor 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "wincolor",
+ ]
+
+ [[package]]
+ name = "termios"
+ version = "0.3.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "72b620c5ea021d75a735c943269bb07d30c9b77d6ac6b236bc8b5c496ef05625"
+ dependencies = [
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc",
+ ]
+
+ [[package]]
+ name = "thread_local"
+ version = "0.3.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "c6b53e329000edc2b34dbe8545fd20e55a333362d0a321909685a19bd28c3f1b"
+ dependencies = [
+- "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "lazy_static",
+ ]
+
+ [[package]]
+ name = "threadpool"
+ version = "1.7.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e2f0c90a5f3459330ac8bc0d2f879c693bb7a2f59689c1083fc4ef83834da865"
+ dependencies = [
+- "num_cpus 1.11.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "num_cpus",
+ ]
+
+ [[package]]
+ name = "time"
+ version = "0.1.42"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "db8dcfca086c1143c9270ac42a2bbd8a7ee477b78ac8e45b19abfb0cbede4b6f"
+ dependencies = [
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
+- "redox_syscall 0.1.56 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc",
++ "redox_syscall",
++ "winapi 0.3.8",
+ ]
+
+ [[package]]
+ name = "tokio"
+ version = "0.2.9"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ffa2fdcfa937b20cb3c822a635ceecd5fc1a27a6a474527e5516aa24b8c8820a"
+ dependencies = [
+- "bytes 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures-core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "iovec 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
+- "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
+- "memchr 2.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "mio 0.6.21 (registry+https://github.com/rust-lang/crates.io-index)",
+- "mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)",
+- "pin-project-lite 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "signal-hook-registry 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bytes",
++ "fnv",
++ "futures-core",
++ "iovec",
++ "lazy_static",
++ "libc",
++ "memchr",
++ "mio",
++ "mio-uds",
++ "pin-project-lite",
++ "signal-hook-registry",
++ "slab",
++ "winapi 0.3.8",
+ ]
+
+ [[package]]
+ name = "tokio-util"
+ version = "0.2.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "571da51182ec208780505a32528fc5512a8fe1443ab960b3f2f3ef093cd16930"
+ dependencies = [
+- "bytes 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures-core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures-sink 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "pin-project-lite 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio 0.2.9 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bytes",
++ "futures-core",
++ "futures-sink",
++ "log",
++ "pin-project-lite",
++ "tokio",
+ ]
+
+ [[package]]
+ name = "toml"
+ version = "0.5.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "01d1404644c8b12b16bfcffa4322403a91a451584daaaa7c28d3152e6cbc98cf"
+ dependencies = [
+- "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
++ "serde",
+ ]
+
+ [[package]]
+ name = "trust-dns-proto"
+ version = "0.18.0-alpha.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "2a7f3a2ab8a919f5eca52a468866a67ed7d3efa265d48a652a9a3452272b413f"
+ dependencies = [
+- "async-trait 0.1.22 (registry+https://github.com/rust-lang/crates.io-index)",
+- "enum-as-inner 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "failure 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "idna 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rand 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "smallvec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "socket2 0.3.11 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio 0.2.9 (registry+https://github.com/rust-lang/crates.io-index)",
+- "url 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "async-trait",
++ "enum-as-inner",
++ "failure",
++ "futures",
++ "idna",
++ "lazy_static",
++ "log",
++ "rand",
++ "smallvec 1.1.0",
++ "socket2",
++ "tokio",
++ "url",
+ ]
+
+ [[package]]
+ name = "trust-dns-resolver"
+ version = "0.18.0-alpha.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6f90b1502b226f8b2514c6d5b37bafa8c200d7ca4102d57dc36ee0f3b7a04a2f"
+ dependencies = [
+- "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "failure 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "ipconfig 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "lru-cache 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "resolv-conf 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "smallvec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio 0.2.9 (registry+https://github.com/rust-lang/crates.io-index)",
+- "trust-dns-proto 0.18.0-alpha.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cfg-if 0.1.10",
++ "failure",
++ "futures",
++ "ipconfig",
++ "lazy_static",
++ "log",
++ "lru-cache",
++ "resolv-conf",
++ "smallvec 1.1.0",
++ "tokio",
++ "trust-dns-proto",
+ ]
+
+ [[package]]
+ name = "twoway"
+ version = "0.2.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6b40075910de3a912adbd80b5d8bad6ad10a23eeb1f5bf9d4006839e899ba5bc"
+ dependencies = [
+- "memchr 2.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "unchecked-index 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "memchr",
++ "unchecked-index",
+ ]
+
+ [[package]]
+ name = "unchecked-index"
+ version = "0.2.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "eeba86d422ce181a719445e51872fa30f1f7413b62becb52e95ec91aa262d85c"
+
+ [[package]]
+ name = "unicase"
+ version = "2.5.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "2e2e6bd1e59e56598518beb94fd6db628ded570326f0a98c679a304bd9f00150"
+ dependencies = [
+- "version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "version_check",
+ ]
+
+ [[package]]
+ name = "unicode-bidi"
+ version = "0.3.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5"
+ dependencies = [
+- "matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "matches",
+ ]
+
+ [[package]]
+ name = "unicode-normalization"
+ version = "0.1.8"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "141339a08b982d942be2ca06ff8b076563cbe223d1befd5450716790d44e2426"
+ dependencies = [
+- "smallvec 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)",
++ "smallvec 0.6.10",
+ ]
+
+ [[package]]
+ name = "unicode-segmentation"
+ version = "1.6.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e83e153d1053cbb5a118eeff7fd5be06ed99153f00dbcd8ae310c5fb2b22edc0"
+
+ [[package]]
+ name = "unicode-width"
+ version = "0.1.7"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "caaa9d531767d1ff2150b9332433f32a24622147e5ebb1f26409d5da67afd479"
+
+ [[package]]
+ name = "unicode-xid"
+ version = "0.2.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "826e7639553986605ec5979c7dd957c7895e93eabed50ab2ffa7f6128a75097c"
+
+ [[package]]
+ name = "untrusted"
+ version = "0.7.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "60369ef7a31de49bcb3f6ca728d4ba7300d9a1658f94c727d4cab8c8d9f4aece"
+
+ [[package]]
+ name = "url"
+ version = "2.1.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "75b414f6c464c879d7f9babf951f23bc3743fb7313c081b2e6ca719067ea9d61"
+ dependencies = [
+- "idna 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "percent-encoding 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "idna",
++ "matches",
++ "percent-encoding",
+ ]
+
+ [[package]]
+ name = "v_escape"
+ version = "0.7.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "660b101c07b5d0863deb9e7fb3138777e858d6d2a79f9e6049a27d1cc77c6da6"
+ dependencies = [
+- "v_escape_derive 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "v_escape_derive",
+ ]
+
+ [[package]]
+ name = "v_escape_derive"
+ version = "0.5.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "c2ca2a14bc3fc5b64d188b087a7d3a927df87b152e941ccfbc66672e20c467ae"
+ dependencies = [
+- "nom 4.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "syn 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
++ "nom",
++ "proc-macro2",
++ "quote",
++ "syn",
+ ]
+
+ [[package]]
+ name = "v_htmlescape"
+ version = "0.4.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e33e939c0d8cf047514fb6ba7d5aac78bc56677a6938b2ee67000b91f2e97e41"
+ dependencies = [
+- "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "v_escape 0.7.4 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cfg-if 0.1.10",
++ "v_escape",
+ ]
+
+ [[package]]
+ name = "vcpkg"
+ version = "0.2.7"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "33dd455d0f96e90a75803cfeb7f948768c08d70a6de9a8d2362461935698bf95"
+
+ [[package]]
+ name = "version_check"
+ version = "0.1.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "914b1a6776c4c929a602fafd8bc742e06365d4bcbe48c30f9cca5824f70dc9dd"
+
+ [[package]]
+ name = "wasi"
+ version = "0.7.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "b89c3ce4ce14bdc6fb6beaf9ec7928ca331de5df7e5ea278375642a2f478570d"
+
+ [[package]]
+ name = "wasm-bindgen"
+ version = "0.2.58"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "5205e9afdf42282b192e2310a5b463a6d1c1d774e30dc3c791ac37ab42d2616c"
+ dependencies = [
+- "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "wasm-bindgen-macro 0.2.58 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cfg-if 0.1.10",
++ "wasm-bindgen-macro",
+ ]
+
+ [[package]]
+ name = "wasm-bindgen-backend"
+ version = "0.2.58"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "11cdb95816290b525b32587d76419facd99662a07e59d3cdb560488a819d9a45"
+ dependencies = [
+- "bumpalo 3.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "syn 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
+- "wasm-bindgen-shared 0.2.58 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bumpalo",
++ "lazy_static",
++ "log",
++ "proc-macro2",
++ "quote",
++ "syn",
++ "wasm-bindgen-shared",
+ ]
+
+ [[package]]
+ name = "wasm-bindgen-macro"
+ version = "0.2.58"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "574094772ce6921576fb6f2e3f7497b8a76273b6db092be18fc48a082de09dc3"
+ dependencies = [
+- "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "wasm-bindgen-macro-support 0.2.58 (registry+https://github.com/rust-lang/crates.io-index)",
++ "quote",
++ "wasm-bindgen-macro-support",
+ ]
+
+ [[package]]
+ name = "wasm-bindgen-macro-support"
+ version = "0.2.58"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e85031354f25eaebe78bb7db1c3d86140312a911a106b2e29f9cc440ce3e7668"
+ dependencies = [
+- "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "syn 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
+- "wasm-bindgen-backend 0.2.58 (registry+https://github.com/rust-lang/crates.io-index)",
+- "wasm-bindgen-shared 0.2.58 (registry+https://github.com/rust-lang/crates.io-index)",
++ "proc-macro2",
++ "quote",
++ "syn",
++ "wasm-bindgen-backend",
++ "wasm-bindgen-shared",
+ ]
+
+ [[package]]
+ name = "wasm-bindgen-shared"
+ version = "0.2.58"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f5e7e61fc929f4c0dddb748b102ebf9f632e2b8d739f2016542b4de2965a9601"
+
+ [[package]]
+ name = "wasm-bindgen-webidl"
+ version = "0.2.58"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ef012a0d93fc0432df126a8eaf547b2dce25a8ce9212e1d3cbeef5c11157975d"
+ dependencies = [
+- "anyhow 1.0.26 (registry+https://github.com/rust-lang/crates.io-index)",
+- "heck 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "syn 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
+- "wasm-bindgen-backend 0.2.58 (registry+https://github.com/rust-lang/crates.io-index)",
+- "weedle 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "anyhow",
++ "heck",
++ "log",
++ "proc-macro2",
++ "quote",
++ "syn",
++ "wasm-bindgen-backend",
++ "weedle",
+ ]
+
+ [[package]]
+ name = "web-sys"
+ version = "0.3.35"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "aaf97caf6aa8c2b1dac90faf0db529d9d63c93846cca4911856f78a83cebf53b"
+ dependencies = [
+- "anyhow 1.0.26 (registry+https://github.com/rust-lang/crates.io-index)",
+- "js-sys 0.3.35 (registry+https://github.com/rust-lang/crates.io-index)",
+- "sourcefile 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
+- "wasm-bindgen 0.2.58 (registry+https://github.com/rust-lang/crates.io-index)",
+- "wasm-bindgen-webidl 0.2.58 (registry+https://github.com/rust-lang/crates.io-index)",
++ "anyhow",
++ "js-sys",
++ "sourcefile",
++ "wasm-bindgen",
++ "wasm-bindgen-webidl",
+ ]
+
+ [[package]]
+ name = "weedle"
+ version = "0.10.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "3bb43f70885151e629e2a19ce9e50bd730fd436cfd4b666894c9ce4de9141164"
+ dependencies = [
+- "nom 4.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
++ "nom",
+ ]
+
+ [[package]]
+ name = "widestring"
+ version = "0.4.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "effc0e4ff8085673ea7b9b2e3c73f6bd4d118810c9009ed8f1e16bd96c331db6"
+
+ [[package]]
+ name = "winapi"
+ version = "0.2.8"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a"
+
+ [[package]]
+ name = "winapi"
+ version = "0.3.8"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "8093091eeb260906a183e6ae1abdba2ef5ef2257a21801128899c3fc699229c6"
+ dependencies = [
+- "winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "winapi-i686-pc-windows-gnu",
++ "winapi-x86_64-pc-windows-gnu",
+ ]
+
+ [[package]]
+ name = "winapi-build"
+ version = "0.1.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc"
+
+ [[package]]
+ name = "winapi-i686-pc-windows-gnu"
+ version = "0.4.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
+
+ [[package]]
+ name = "winapi-util"
+ version = "0.1.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7168bab6e1daee33b4557efd0e95d5ca70a03706d39fa5f3fe7a236f584b03c9"
+ dependencies = [
+- "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "winapi 0.3.8",
+ ]
+
+ [[package]]
+ name = "winapi-x86_64-pc-windows-gnu"
+ version = "0.4.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
+
+ [[package]]
+ name = "wincolor"
+ version = "1.0.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "96f5016b18804d24db43cebf3c77269e7569b8954a8464501c216cc5e070eaa9"
+ dependencies = [
+- "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi-util 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "winapi 0.3.8",
++ "winapi-util",
+ ]
+
+ [[package]]
+ name = "winreg"
+ version = "0.6.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "b2986deb581c4fe11b621998a5e53361efe6b48a151178d0cd9eeffa4dc6acc9"
+ dependencies = [
+- "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "winapi 0.3.8",
+ ]
+
+ [[package]]
+ name = "winutil"
+ version = "0.1.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7daf138b6b14196e3830a588acf1e86966c694d3e8fb026fb105b8b5dca07e6e"
+ dependencies = [
+- "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "winapi 0.3.8",
+ ]
+
+ [[package]]
+ name = "ws2_32-sys"
+ version = "0.2.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "d59cefebd0c892fa2dd6de581e937301d8552cb44489cdff035c6187cb63fa5e"
+ dependencies = [
+- "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "winapi 0.2.8",
++ "winapi-build",
+ ]
+-
+-[metadata]
+-"checksum actix-codec 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "09e55f0a5c2ca15795035d90c46bd0e73a5123b72f68f12596d6ba5282051380"
+-"checksum actix-connect 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "1f2b61480a8d30c94d5c883d79ef026b02ad6809931b0a4bb703f9545cd8c986"
+-"checksum actix-files 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "301482841d3d74483a446ead63cb7d362e187d2c8b603f13d91995621ea53c46"
+-"checksum actix-http 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c16664cc4fdea8030837ad5a845eb231fb93fc3c5c171edfefb52fad92ce9019"
+-"checksum actix-identity 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2a379b0639c293292d71defb8cc1f94c87b7705c904adf044338ad392df77c7a"
+-"checksum actix-macros 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "21705adc76bbe4bc98434890e73a89cd00c6015e5704a60bb6eea6c3b72316b6"
+-"checksum actix-multipart 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4397935fca2a37a5353f94faa758fb176712806f605466b5a60373b204f0d836"
+-"checksum actix-router 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "9d7a10ca4d94e8c8e7a87c5173aba1b97ba9a6563ca02b0e1cd23531093d3ec8"
+-"checksum actix-rt 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3f6a0a55507046441a496b2f0d26a84a65e67c8cafffe279072412f624b5fb6d"
+-"checksum actix-server 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "51d3455eaac03ca3e49d7b822eb35c884b861f715627254ccbe4309d08f1841a"
+-"checksum actix-service 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9fba4171f1952aa15f3cf410facac388d18110b1e8754f84a407ab7f9d5ac7ee"
+-"checksum actix-testing 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "48494745b72d0ea8ff0cf874aaf9b622a3ee03d7081ee0c04edea4f26d32c911"
+-"checksum actix-threadpool 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cf4082192601de5f303013709ff84d81ca6a1bc4af7fb24f367a500a23c6e84e"
+-"checksum actix-tls 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a4e5b4faaf105e9a6d389c606c298dcdb033061b00d532af9df56ff3a54995a8"
+-"checksum actix-utils 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "fcf8f5631bf01adec2267808f00e228b761c60c0584cc9fa0b5364f41d147f4e"
+-"checksum actix-web 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3158e822461040822f0dbf1735b9c2ce1f95f93b651d7a7aded00b1efbb1f635"
+-"checksum actix-web-codegen 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "de0878b30e62623770a4713a6338329fd0119703bafc211d3e4144f4d4a7bdd5"
+-"checksum adler32 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "5d2e7343e7fc9de883d1b0341e0b13970f764c14101234857d2ddafa1cb1cac2"
+-"checksum aho-corasick 0.7.6 (registry+https://github.com/rust-lang/crates.io-index)" = "58fb5e95d83b38284460a5fda7d6470aa0b8844d283a0b614b8535e880800d2d"
+-"checksum anyhow 1.0.26 (registry+https://github.com/rust-lang/crates.io-index)" = "7825f6833612eb2414095684fcf6c635becf3ce97fe48cf6421321e93bfbd53c"
+-"checksum arc-swap 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "f1a1eca3195b729bbd64e292ef2f5fff6b1c28504fed762ce2b1013dde4d8e92"
+-"checksum arrayref 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "0d382e583f07208808f6b1249e60848879ba3543f57c32277bf52d69c2f0f0ee"
+-"checksum arrayvec 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)" = "cd9fd44efafa8690358b7408d253adf110036b88f55672a933f01d616ad9b1b9"
+-"checksum arrayvec 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cff77d8686867eceff3105329d4698d96c2391c176d5d03adc90c7389162b5b8"
+-"checksum async-trait 0.1.22 (registry+https://github.com/rust-lang/crates.io-index)" = "c8df72488e87761e772f14ae0c2480396810e51b2c2ade912f97f0f7e5b95e3c"
+-"checksum atty 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)" = "1803c647a3ec87095e7ae7acfca019e98de5ec9a7d01343f611cf3152ed71a90"
+-"checksum autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "1d49d90015b3c36167a20fe2810c5cd875ad504b39cff3d4eae7977e6b7c1cb2"
+-"checksum awc 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d7601d4d1d7ef2335d6597a41b5fe069f6ab799b85f53565ab390e7b7065aac5"
+-"checksum backtrace 0.3.40 (registry+https://github.com/rust-lang/crates.io-index)" = "924c76597f0d9ca25d762c25a4d369d51267536465dc5064bdf0eb073ed477ea"
+-"checksum backtrace-sys 0.1.32 (registry+https://github.com/rust-lang/crates.io-index)" = "5d6575f128516de27e3ce99689419835fce9643a9b215a14d2b5b685be018491"
+-"checksum base64 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0b25d992356d2eb0ed82172f5248873db5560c4721f564b13cb5193bda5e668e"
+-"checksum base64 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b41b7ea54a0c9d92199de89e20e58d49f02f8e699814ef3fdf266f6f748d15c7"
+-"checksum bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693"
+-"checksum blake2b_simd 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)" = "5850aeee1552f495dd0250014cf64b82b7c8879a89d83b33bbdace2cc4f63182"
+-"checksum blake3 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ba0511b7f4f7d9cb1ef7b8dfda5293af6c1071578d65c8a05aa7d11c1985f08c"
+-"checksum brotli-sys 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "4445dea95f4c2b41cde57cc9fee236ae4dbae88d8fcbdb4750fc1bb5d86aaecd"
+-"checksum brotli2 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "0cb036c3eade309815c15ddbacec5b22c4d1f3983a774ab2eac2e3e9ea85568e"
+-"checksum bumpalo 3.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "5fb8038c1ddc0a5f73787b130f4cc75151e96ed33e417fde765eb5a81e3532f4"
+-"checksum byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a7c3dd8985a7111efc5c80b44e23ecdd8c007de8ade3b96595387e812b957cf5"
+-"checksum bytes 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "10004c15deb332055f7a4a208190aed362cf9a7c2f6ab70a305fba50e1105f38"
+-"checksum bytestring 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "fc267467f58ef6cc8874064c62a0423eb0d099362c8a23edd1c6d044f46eead4"
+-"checksum c2-chacha 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "214238caa1bf3a496ec3392968969cab8549f96ff30652c9e56885329315f6bb"
+-"checksum cc 1.0.50 (registry+https://github.com/rust-lang/crates.io-index)" = "95e28fa049fda1c330bcf9d723be7663a899c4679724b34c81e9f5a326aab8cd"
+-"checksum cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)" = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
+-"checksum chrono 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "31850b4a4d6bae316f7a09e691c944c28299298837edc0a03f755618c23cbc01"
+-"checksum clicolors-control 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "90082ee5dcdd64dc4e9e0d37fbf3ee325419e39c0092191e0393df65518f741e"
+-"checksum cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f"
+-"checksum console 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f5d540c2d34ac9dd0deb5f3b5f54c36c79efa78f6b3ad19106a554d07a7b5d9f"
+-"checksum constant_time_eq 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "245097e9a4535ee1e3e3931fcfcd55a796a44c643e8596ff6566d68f09b87bbc"
+-"checksum copyless 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "6ff9c56c9fb2a49c05ef0e431485a22400af20d33226dc0764d891d09e724127"
+-"checksum crc32fast 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ba125de2af0df55319f41944744ad91c71113bf74a4646efff39afe1f6842db1"
+-"checksum crossbeam-utils 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)" = "04973fa96e96579258a5091af6003abde64af786b860f18622b82e026cca60e6"
+-"checksum derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)" = "2159be042979966de68315bce7034bb000c775f22e3e834e1c52ff78f041cae8"
+-"checksum dialoguer 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "94616e25d2c04fc97253d145f6ca33ad84a584258dc70c4e621cc79a57f903b6"
+-"checksum diesel 1.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "9d7cc03b910de9935007861dce440881f69102aaaedfd4bc5a6f40340ca5840c"
+-"checksum diesel_derives 1.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "45f5098f628d02a7a0f68ddba586fb61e80edec3bdc1be3b921f4ceec60858d3"
+-"checksum diesel_migrations 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bf3cde8413353dc7f5d72fa8ce0b99a560a359d2c5ef1e5817ca731cd9008f4c"
+-"checksum dirs 2.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "13aea89a5c93364a98e9b37b2fa237effbb694d5cfe01c5b70941f7eb087d5e3"
+-"checksum dirs-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "afa0b23de8fd801745c471deffa6e12d248f962c9fd4b4c33787b055599bde7b"
+-"checksum dotenv 0.15.0 (registry+https://github.com/rust-lang/crates.io-index)" = "77c90badedccf4105eca100756a0b1289e191f6fcbdadd3cee1d2f614f97da8f"
+-"checksum dtoa 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)" = "ea57b42383d091c85abcc2706240b94ab2a8fa1fc81c10ff23c4de06e2a90b5e"
+-"checksum either 1.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "bb1f6b1ce1c140482ea30ddd3335fc0024ac7ee112895426e0a629a6c20adfe3"
+-"checksum encode_unicode 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "a357d28ed41a50f9c765dbfe56cbc04a64e53e5fc58ba79fbc34c10ef3df831f"
+-"checksum encoding_rs 0.8.20 (registry+https://github.com/rust-lang/crates.io-index)" = "87240518927716f79692c2ed85bfe6e98196d18c6401ec75355760233a7e12e9"
+-"checksum enum-as-inner 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "900a6c7fbe523f4c2884eaf26b57b81bb69b6810a01a236390a7ac021d09492e"
+-"checksum env_logger 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "44533bbbb3bb3c1fa17d9f2e4e38bbbaf8396ba82193c4cb1b6445d711445d36"
+-"checksum failure 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "f8273f13c977665c5db7eb2b99ae520952fe5ac831ae4cd09d80c4c7042b5ed9"
+-"checksum failure_derive 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "0bc225b78e0391e4b8683440bf2e63c2deeeb2ce5189eab46e2b68c6d3725d08"
+-"checksum flate2 1.0.13 (registry+https://github.com/rust-lang/crates.io-index)" = "6bd6d6f4752952feb71363cffc9ebac9411b75b87c6ab6058c40c8900cf43c0f"
+-"checksum fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "2fad85553e09a6f881f739c29f0b00b0f01357c743266d478b68951ce23285f3"
+-"checksum fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba"
+-"checksum fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82"
+-"checksum fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7"
+-"checksum futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b6f16056ecbb57525ff698bb955162d0cd03bee84e6241c27ff75c08d8ca5987"
+-"checksum futures-channel 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "fcae98ca17d102fd8a3603727b9259fcf7fa4239b603d2142926189bc8999b86"
+-"checksum futures-core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "79564c427afefab1dfb3298535b21eda083ef7935b4f0ecbfcb121f0aec10866"
+-"checksum futures-executor 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "1e274736563f686a837a0568b478bdabfeaec2dca794b5649b04e2fe1627c231"
+-"checksum futures-io 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e676577d229e70952ab25f3945795ba5b16d63ca794ca9d2c860e5595d20b5ff"
+-"checksum futures-macro 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "52e7c56c15537adb4f76d0b7a76ad131cb4d2f4f32d3b0bcabcbe1c7c5e87764"
+-"checksum futures-sink 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "171be33efae63c2d59e6dbba34186fe0d6394fb378069a76dfd80fdcffd43c16"
+-"checksum futures-task 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0bae52d6b29cf440e298856fec3965ee6fa71b06aa7495178615953fd669e5f9"
+-"checksum futures-util 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c0d66274fb76985d3c62c886d1da7ac4c0903a8c9f754e8fe0f35a6a6cc39e76"
+-"checksum fxhash 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c"
+-"checksum getrandom 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "e7db7ca94ed4cd01190ceee0d8a8052f08a247aa1b469a7f68c6a3b71afcf407"
+-"checksum h2 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b9433d71e471c1736fd5a61b671fc0b148d7a2992f666c958d03cd8feb3b88d1"
+-"checksum heck 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "20564e78d53d2bb135c343b3f47714a56af2061f1c928fdb541dc7b9fdd94205"
+-"checksum hermit-abi 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "eff2656d88f158ce120947499e971d743c05dbcbed62e5bd2f38f1698bbc3772"
+-"checksum hostname 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "21ceb46a83a85e824ef93669c8b390009623863b5c195d1ba747292c0c72f94e"
+-"checksum http 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b708cc7f06493459026f53b9a61a7a121a5d1ec6238dee58ea4941132b30156b"
+-"checksum httparse 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "cd179ae861f0c2e53da70d892f5f3029f9594be0c41dc5269cd371691b1dc2f9"
+-"checksum humantime 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "df004cfca50ef23c36850aaaa59ad52cc70d0e90243c3c7737a4dd32dc7a3c4f"
+-"checksum idna 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "02e2673c30ee86b5b96a9cb52ad15718aa1f966f5ab9ad54a8b95d5ca33120a9"
+-"checksum indexmap 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "712d7b3ea5827fcb9d4fda14bf4da5f136f0db2ae9c8f4bd4e2d1c6fde4e6db2"
+-"checksum iovec 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "b2b3ea6ff95e175473f8ffe6a7eb7c00d054240321b84c57051175fe3c1e075e"
+-"checksum ipconfig 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "aa79fa216fbe60834a9c0737d7fcd30425b32d1c58854663e24d4c4b328ed83f"
+-"checksum itoa 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)" = "501266b7edd0174f8530248f87f99c88fbe60ca4ef3dd486835b8d8d53136f7f"
+-"checksum js-sys 0.3.35 (registry+https://github.com/rust-lang/crates.io-index)" = "7889c7c36282151f6bf465be4700359318aef36baa951462382eae49e9577cf9"
+-"checksum kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d"
+-"checksum language-tags 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a91d884b6667cd606bb5a69aa0c99ba811a115fc68915e7056ec08a46e93199a"
+-"checksum lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
+-"checksum libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)" = "1a31a0627fdf1f6a39ec0dd577e101440b7db22672c0901fe00a9a6fbb5c24e8"
+-"checksum libsqlite3-sys 0.16.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5e5b95e89c330291768dc840238db7f9e204fd208511ab6319b56193a7f2ae25"
+-"checksum linked-hash-map 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "ae91b68aebc4ddb91978b11a1b02ddd8602a05ec19002801c5666000e05e0f83"
+-"checksum lock_api 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f8912e782533a93a167888781b836336a6ca5da6175c05944c86cf28c31104dc"
+-"checksum log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)" = "14b6052be84e6b71ab17edffc2eeabf5c2c3ae1fdb464aae35ac50c67a44e1f7"
+-"checksum lru-cache 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "31e24f1ad8321ca0e8a1e0ac13f23cb668e6f5466c2c57319f6a5cf1cc8e3b1c"
+-"checksum matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08"
+-"checksum memchr 2.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "88579771288728879b57485cc7d6b07d648c9f0141eb955f8ab7f9d45394468e"
+-"checksum migrations_internals 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8089920229070f914b9ce9b07ef60e175b2b9bc2d35c3edd8bf4433604e863b9"
+-"checksum migrations_macros 1.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "719ef0bc7f531428764c9b70661c14abd50a7f3d21f355752d9985aa21251c9e"
+-"checksum mime 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)" = "dd1d63acd1b78403cc0c325605908475dd9b9a3acbf65ed8bcab97e27014afcf"
+-"checksum mime_guess 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "1a0ed03949aef72dbdf3116a383d7b38b4768e6f960528cd6a6044aa9ed68599"
+-"checksum miniz_oxide 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "6f3f74f726ae935c3f514300cc6773a0c9492abc5e972d42ba0c0ebb88757625"
+-"checksum mio 0.6.21 (registry+https://github.com/rust-lang/crates.io-index)" = "302dec22bcf6bae6dfb69c647187f4b4d0fb6f535521f7bc022430ce8e12008f"
+-"checksum mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)" = "966257a94e196b11bb43aca423754d87429960a768de9414f3691d6957abf125"
+-"checksum miow 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "8c1f2f3b1cf331de6896aabf6e9d55dca90356cc9960cca7eaaf408a355ae919"
+-"checksum net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)" = "42550d9fb7b6684a6d404d9fa7250c2eb2646df731d1c06afc06dcee9e1bcf88"
+-"checksum nodrop 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)" = "72ef4a56884ca558e5ddb05a1d1e7e1bfd9a68d9ed024c21704cc98872dae1bb"
+-"checksum nom 4.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2ad2a91a8e869eeb30b9cb3119ae87773a8f4ae617f41b1eb9c154b2905f7bd6"
+-"checksum num-integer 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)" = "b85e541ef8255f6cf42bbfe4ef361305c6c135d10919ecc26126c4e5ae94bc09"
+-"checksum num-traits 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "6ba9a427cfca2be13aa6f6403b0b7e7368fe982bfa16fccc450ce74c46cd9b32"
+-"checksum num_cpus 1.11.1 (registry+https://github.com/rust-lang/crates.io-index)" = "76dac5ed2a876980778b8b85f75a71b6cbf0db0b1232ee12f826bccb00d09d72"
+-"checksum parking_lot 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "92e98c49ab0b7ce5b222f2cc9193fc4efe11c6d0bd4f648e374684a6857b1cfc"
+-"checksum parking_lot 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f842b1982eb6c2fe34036a4fbfb06dd185a3f5c8edfaacdf7d1ea10b07de6252"
+-"checksum parking_lot_core 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b876b1b9e7ac6e1a74a6da34d25c42e17e8862aa409cbbbdcfc8d86c6f3bc62b"
+-"checksum parking_lot_core 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7582838484df45743c8434fbff785e8edf260c28748353d44bc0da32e0ceabf1"
+-"checksum percent-encoding 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e"
+-"checksum pin-project 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "94b90146c7216e4cb534069fb91366de4ea0ea353105ee45ed297e2d1619e469"
+-"checksum pin-project-internal 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "44ca92f893f0656d3cba8158dd0f2b99b94de256a4a54e870bd6922fcc6c8355"
+-"checksum pin-project-lite 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e8822eb8bb72452f038ebf6048efa02c3fe22bf83f76519c9583e47fc194a422"
+-"checksum pin-utils 0.1.0-alpha.4 (registry+https://github.com/rust-lang/crates.io-index)" = "5894c618ce612a3fa23881b152b608bafb8c56cfc22f434a3ba3120b40f7b587"
+-"checksum pkg-config 0.3.16 (registry+https://github.com/rust-lang/crates.io-index)" = "72d5370d90f49f70bd033c3d75e87fc529fbfff9d6f7cccef07d6170079d91ea"
+-"checksum ppv-lite86 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "74490b50b9fbe561ac330df47c08f3f33073d2d00c150f719147d7c54522fa1b"
+-"checksum proc-macro-hack 0.5.11 (registry+https://github.com/rust-lang/crates.io-index)" = "ecd45702f76d6d3c75a80564378ae228a85f0b59d2f3ed43c91b4a69eb2ebfc5"
+-"checksum proc-macro-nested 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "369a6ed065f249a159e06c45752c780bda2fb53c995718f9e484d08daa9eb42e"
+-"checksum proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "9c9e470a8dc4aeae2dee2f335e8f533e2d4b347e1434e5671afc49b054592f27"
+-"checksum quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9274b940887ce9addde99c4eee6b5c44cc494b182b97e73dc8ffdcb3397fd3f0"
+-"checksum quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "053a8c8bcc71fcce321828dc897a98ab9760bef03a4fc36693c231e5b3216cfe"
+-"checksum r2d2 0.8.6 (registry+https://github.com/rust-lang/crates.io-index)" = "e48fa64898ef0286b6ee4b4d8f61483f9182acf5e44e62a398b1c7f56f2f861d"
+-"checksum radix_fmt 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ce082a9940a7ace2ad4a8b7d0b1eac6aa378895f18be598230c5f2284ac05426"
+-"checksum rand 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)" = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03"
+-"checksum rand_chacha 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "03a2a90da8c7523f554344f921aa97283eadf6ac484a6d2a7d0212fa7f8d6853"
+-"checksum rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b"
+-"checksum rand_core 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9c33a3c44ca05fa6f1807d8e6743f3824e8509beca625669633be0acbdf509dc"
+-"checksum rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19"
+-"checksum rand_hc 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c"
+-"checksum rand_os 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "7b75f676a1e053fc562eafbb47838d67c84801e38fc1ba459e8f180deabd5071"
+-"checksum rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2"
+-"checksum redox_syscall 0.1.56 (registry+https://github.com/rust-lang/crates.io-index)" = "2439c63f3f6139d1b57529d16bc3b8bb855230c8efcc5d3a896c8bea7c3b1e84"
+-"checksum redox_users 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4ecedbca3bf205f8d8f5c2b44d83cd0690e39ee84b951ed649e9f1841132b66d"
+-"checksum regex 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "dc220bd33bdce8f093101afe22a037b8eb0e5af33592e6a9caafff0d4cb81cbd"
+-"checksum regex-syntax 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)" = "11a7e20d1cce64ef2fed88b66d347f88bd9babb82845b2b858f3edbf59a4f716"
+-"checksum remove_dir_all 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "4a83fa3702a688b9359eccba92d153ac33fd2e8462f9e0e3fdf155239ea7792e"
+-"checksum resolv-conf 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b263b4aa1b5de9ffc0054a2386f96992058bb6870aab516f8cdeb8a667d56dcb"
+-"checksum ring 0.16.9 (registry+https://github.com/rust-lang/crates.io-index)" = "6747f8da1f2b1fabbee1aaa4eb8a11abf9adef0bf58a41cee45db5d59cecdfac"
+-"checksum rust-argon2 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4ca4eaef519b494d1f2848fc602d18816fed808a981aedf4f1f00ceb7c9d32cf"
+-"checksum rustc-demangle 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)" = "4c691c0e608126e00913e33f0ccf3727d5fc84573623b8d65b2df340b5201783"
+-"checksum rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a"
+-"checksum ryu 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "bfa8506c1de11c9c4e4c38863ccbe02a305c8188e85a05a784c9e11e1c3910c8"
+-"checksum scheduled-thread-pool 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "bd07742e081ff6c077f5f6b283f12f32b9e7cc765b316160d66289b74546fbb3"
+-"checksum scopeguard 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b42e15e59b18a828bbf5c58ea01debb36b9b096346de35d941dcb89009f24a0d"
+-"checksum semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403"
+-"checksum semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3"
+-"checksum serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)" = "414115f25f818d7dfccec8ee535d76949ae78584fc4f79a6f45a904bf8ab4449"
+-"checksum serde_derive 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)" = "128f9e303a5a29922045a830221b8f78ec74a5f544944f3d5984f8ec3895ef64"
+-"checksum serde_json 1.0.41 (registry+https://github.com/rust-lang/crates.io-index)" = "2f72eb2a68a7dc3f9a691bfda9305a1c017a6215e5a4545c258500d2099a37c2"
+-"checksum serde_urlencoded 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "9ec5d77e2d4c73717816afac02670d5c4f534ea95ed430442cad02e7a6e32c97"
+-"checksum sha1 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2579985fda508104f7587689507983eadd6a6e84dd35d6d115361f530916fa0d"
+-"checksum signal-hook-registry 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "1797d48f38f91643908bb14e35e79928f9f4b3cefb2420a564dde0991b4358dc"
+-"checksum slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c111b5bd5695e56cffe5129854aa230b39c93a305372fdbb2668ca2394eea9f8"
+-"checksum smallvec 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)" = "ab606a9c5e214920bb66c458cd7be8ef094f813f20fe77a54cc7dbfff220d4b7"
+-"checksum smallvec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "44e59e0c9fa00817912ae6e4e6e3c4fe04455e75699d06eedc7d85917ed8e8f4"
+-"checksum socket2 0.3.11 (registry+https://github.com/rust-lang/crates.io-index)" = "e8b74de517221a2cb01a53349cf54182acdc31a074727d3079068448c0676d85"
+-"checksum sourcefile 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "4bf77cb82ba8453b42b6ae1d692e4cdc92f9a47beaf89a847c8be83f4e328ad3"
+-"checksum spin 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d"
+-"checksum syn 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)" = "0e7bedb3320d0f3035594b0b723c8a28d7d336a3eda3881db79e61d676fb644c"
+-"checksum synstructure 0.12.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3f085a5855930c0441ca1288cf044ea4aecf4f43a91668abdb870b4ba546a203"
+-"checksum tempfile 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6e24d9338a0a5be79593e2fa15a648add6138caa803e2d5bc782c371732ca9"
+-"checksum termcolor 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "96d6098003bde162e4277c70665bd87c326f5a0c3f3fbfb285787fa482d54e6e"
+-"checksum termios 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "72b620c5ea021d75a735c943269bb07d30c9b77d6ac6b236bc8b5c496ef05625"
+-"checksum thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c6b53e329000edc2b34dbe8545fd20e55a333362d0a321909685a19bd28c3f1b"
+-"checksum threadpool 1.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e2f0c90a5f3459330ac8bc0d2f879c693bb7a2f59689c1083fc4ef83834da865"
+-"checksum time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)" = "db8dcfca086c1143c9270ac42a2bbd8a7ee477b78ac8e45b19abfb0cbede4b6f"
+-"checksum tokio 0.2.9 (registry+https://github.com/rust-lang/crates.io-index)" = "ffa2fdcfa937b20cb3c822a635ceecd5fc1a27a6a474527e5516aa24b8c8820a"
+-"checksum tokio-util 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "571da51182ec208780505a32528fc5512a8fe1443ab960b3f2f3ef093cd16930"
+-"checksum toml 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)" = "01d1404644c8b12b16bfcffa4322403a91a451584daaaa7c28d3152e6cbc98cf"
+-"checksum trust-dns-proto 0.18.0-alpha.2 (registry+https://github.com/rust-lang/crates.io-index)" = "2a7f3a2ab8a919f5eca52a468866a67ed7d3efa265d48a652a9a3452272b413f"
+-"checksum trust-dns-resolver 0.18.0-alpha.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6f90b1502b226f8b2514c6d5b37bafa8c200d7ca4102d57dc36ee0f3b7a04a2f"
+-"checksum twoway 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "6b40075910de3a912adbd80b5d8bad6ad10a23eeb1f5bf9d4006839e899ba5bc"
+-"checksum unchecked-index 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "eeba86d422ce181a719445e51872fa30f1f7413b62becb52e95ec91aa262d85c"
+-"checksum unicase 2.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2e2e6bd1e59e56598518beb94fd6db628ded570326f0a98c679a304bd9f00150"
+-"checksum unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5"
+-"checksum unicode-normalization 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "141339a08b982d942be2ca06ff8b076563cbe223d1befd5450716790d44e2426"
+-"checksum unicode-segmentation 1.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e83e153d1053cbb5a118eeff7fd5be06ed99153f00dbcd8ae310c5fb2b22edc0"
+-"checksum unicode-width 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "caaa9d531767d1ff2150b9332433f32a24622147e5ebb1f26409d5da67afd479"
+-"checksum unicode-xid 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "826e7639553986605ec5979c7dd957c7895e93eabed50ab2ffa7f6128a75097c"
+-"checksum untrusted 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "60369ef7a31de49bcb3f6ca728d4ba7300d9a1658f94c727d4cab8c8d9f4aece"
+-"checksum url 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "75b414f6c464c879d7f9babf951f23bc3743fb7313c081b2e6ca719067ea9d61"
+-"checksum v_escape 0.7.4 (registry+https://github.com/rust-lang/crates.io-index)" = "660b101c07b5d0863deb9e7fb3138777e858d6d2a79f9e6049a27d1cc77c6da6"
+-"checksum v_escape_derive 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c2ca2a14bc3fc5b64d188b087a7d3a927df87b152e941ccfbc66672e20c467ae"
+-"checksum v_htmlescape 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)" = "e33e939c0d8cf047514fb6ba7d5aac78bc56677a6938b2ee67000b91f2e97e41"
+-"checksum vcpkg 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "33dd455d0f96e90a75803cfeb7f948768c08d70a6de9a8d2362461935698bf95"
+-"checksum version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "914b1a6776c4c929a602fafd8bc742e06365d4bcbe48c30f9cca5824f70dc9dd"
+-"checksum wasi 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b89c3ce4ce14bdc6fb6beaf9ec7928ca331de5df7e5ea278375642a2f478570d"
+-"checksum wasm-bindgen 0.2.58 (registry+https://github.com/rust-lang/crates.io-index)" = "5205e9afdf42282b192e2310a5b463a6d1c1d774e30dc3c791ac37ab42d2616c"
+-"checksum wasm-bindgen-backend 0.2.58 (registry+https://github.com/rust-lang/crates.io-index)" = "11cdb95816290b525b32587d76419facd99662a07e59d3cdb560488a819d9a45"
+-"checksum wasm-bindgen-macro 0.2.58 (registry+https://github.com/rust-lang/crates.io-index)" = "574094772ce6921576fb6f2e3f7497b8a76273b6db092be18fc48a082de09dc3"
+-"checksum wasm-bindgen-macro-support 0.2.58 (registry+https://github.com/rust-lang/crates.io-index)" = "e85031354f25eaebe78bb7db1c3d86140312a911a106b2e29f9cc440ce3e7668"
+-"checksum wasm-bindgen-shared 0.2.58 (registry+https://github.com/rust-lang/crates.io-index)" = "f5e7e61fc929f4c0dddb748b102ebf9f632e2b8d739f2016542b4de2965a9601"
+-"checksum wasm-bindgen-webidl 0.2.58 (registry+https://github.com/rust-lang/crates.io-index)" = "ef012a0d93fc0432df126a8eaf547b2dce25a8ce9212e1d3cbeef5c11157975d"
+-"checksum web-sys 0.3.35 (registry+https://github.com/rust-lang/crates.io-index)" = "aaf97caf6aa8c2b1dac90faf0db529d9d63c93846cca4911856f78a83cebf53b"
+-"checksum weedle 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3bb43f70885151e629e2a19ce9e50bd730fd436cfd4b666894c9ce4de9141164"
+-"checksum widestring 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "effc0e4ff8085673ea7b9b2e3c73f6bd4d118810c9009ed8f1e16bd96c331db6"
+-"checksum winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a"
+-"checksum winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)" = "8093091eeb260906a183e6ae1abdba2ef5ef2257a21801128899c3fc699229c6"
+-"checksum winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc"
+-"checksum winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
+-"checksum winapi-util 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7168bab6e1daee33b4557efd0e95d5ca70a03706d39fa5f3fe7a236f584b03c9"
+-"checksum winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
+-"checksum wincolor 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "96f5016b18804d24db43cebf3c77269e7569b8954a8464501c216cc5e070eaa9"
+-"checksum winreg 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b2986deb581c4fe11b621998a5e53361efe6b48a151178d0cd9eeffa4dc6acc9"
+-"checksum winutil 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7daf138b6b14196e3830a588acf1e86966c694d3e8fb026fb105b8b5dca07e6e"
+-"checksum ws2_32-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d59cefebd0c892fa2dd6de581e937301d8552cb44489cdff035c6187cb63fa5e"
diff --git a/testing/filite/system-sqlite.patch b/testing/filite/system-sqlite.patch
new file mode 100644
index 00000000000..c9c3fb02c5c
--- /dev/null
+++ b/testing/filite/system-sqlite.patch
@@ -0,0 +1,24 @@
+diff --git a/Cargo.lock b/Cargo.lock
+index 807f0eb..2791bee 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -1130,7 +1130,6 @@ version = "0.16.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "5e5b95e89c330291768dc840238db7f9e204fd208511ab6319b56193a7f2ae25"
+ dependencies = [
+- "cc",
+ "pkg-config",
+ "vcpkg",
+ ]
+diff --git a/Cargo.toml b/Cargo.toml
+index e88ccb3..5792637 100644
+--- a/Cargo.toml
++++ b/Cargo.toml
+@@ -40,7 +40,6 @@ version = "1.4.3"
+ features = ["r2d2", "sqlite"]
+ [dependencies.libsqlite3-sys]
+ version = "0.16.0"
+-features = ["bundled"]
+ [dependencies.serde]
+ version = "1.0.104"
+ features = ["derive"]
diff --git a/testing/findtow/APKBUILD b/testing/findtow/APKBUILD
index 35ee697ce7e..83ae32cca56 100644
--- a/testing/findtow/APKBUILD
+++ b/testing/findtow/APKBUILD
@@ -13,14 +13,13 @@ options="!check" # No testsuite
build() {
abuild-meson . output
- meson compile ${JOBS:+-j ${JOBS}} -C output
+ meson compile -C output
}
package() {
DESTDIR="$pkgdir" meson install --no-rebuild -C output
}
-
sha512sums="
2ae5a4715b32520a8d9a8029149a308b47f0e16019d3df45b8271883c251ac193599d39f666d09f97ba31562b7b7cc111cb5e2b3aa334f2899c8505b7f846f40 findtow-0.1.tar.gz
"
diff --git a/testing/finger/APKBUILD b/testing/finger/APKBUILD
new file mode 100644
index 00000000000..56ea0074a3e
--- /dev/null
+++ b/testing/finger/APKBUILD
@@ -0,0 +1,32 @@
+# Contributor: Bryce Vandegrift <bryce@brycevandegrift.xyz>
+# Maintainer: Bryce Vandegrift <bryce@brycevandegrift.xyz>
+pkgname=finger
+pkgver=0.5
+pkgrel=0
+pkgdesc="Small, simple, and portable finger client and server"
+url="https://sr.ht/~bpv/finger/"
+arch="all"
+license="MIT"
+makedepends="scdoc"
+subpackages="$pkgname-doc"
+options="!check" # no test suite
+source="$pkgname-v$pkgver.tar.gz::https://git.sr.ht/~bpv/finger/archive/v$pkgver.tar.gz"
+builddir="$srcdir/$pkgname-v$pkgver"
+
+prepare() {
+ default_prepare
+ sed -i '/CFLAGS/{s/=/+=/}' "$builddir"/config.mk
+}
+
+build() {
+ make
+}
+
+package() {
+ make PREFIX=/usr DESTDIR="$pkgdir" install
+ install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
+
+sha512sums="
+a37a6766669430d7cdf1165ddf149dc59103150a3e9a06b2a73c4dbe67494bec5f1ad7f1c78c226e72b815001033f8a6165ff2cd70add91a785b444574dde4b1 finger-v0.5.tar.gz
+"
diff --git a/testing/firecracker/APKBUILD b/testing/firecracker/APKBUILD
index 64f45d4c7d0..3864f7667bd 100644
--- a/testing/firecracker/APKBUILD
+++ b/testing/firecracker/APKBUILD
@@ -1,65 +1,78 @@
# Contributor: Dennis Przytarski <dennis@przytarski.com>
# Maintainer: Dennis Przytarski <dennis@przytarski.com>
pkgname=firecracker
-pkgver=1.0.0
+pkgver=1.4.1
pkgrel=0
pkgdesc="Secure and fast microVMs for serverless computing"
url="https://github.com/firecracker-microvm/firecracker"
arch="aarch64 x86_64"
license="Apache-2.0"
-makedepends="rust cargo"
-subpackages="$pkgname-seccompiler"
+makedepends="rust cargo clang-dev cmake linux-headers cargo-auditable"
+subpackages="
+ $pkgname-seccompiler
+ $pkgname-rebase-snap:rebase_snap
+ "
source="$pkgname-$pkgver.tar.gz::https://github.com/firecracker-microvm/firecracker/archive/v$pkgver.tar.gz"
-_target="$CTARGET"
+prepare() {
+ default_prepare
-export CARGO_HOME="$srcdir"/cargo
+ cargo fetch --locked --target "$CTARGET"
-build() {
- # build firecracker
- cargo build -p firecracker \
- --target $_target \
- --release \
- --verbose
-
- # build jailer
- cargo build -p jailer \
- --target $_target \
- --release \
- --verbose
+ # Change the seccomp filters' names so they get embedded into the binary
+ for a in $arch; do
+ mv -v resources/seccomp/"$a-unknown-linux-musl.json" resources/seccomp/"$a-alpine-linux-musl.json"
+ done
+}
- # build seccompiler
- cargo build -p seccompiler \
- --bin seccompiler-bin \
- --target $_target \
- --release \
- --verbose
+build() {
+ export CARGO_PROFILE_RELEASE_OPT_LEVEL=2
+ cargo auditable build \
+ --package firecracker \
+ --package jailer \
+ --package seccompiler \
+ --package rebase-snap \
+ --target "$CTARGET" \
+ --all-features \
+ --frozen \
+ --release
}
check() {
- # test firecracker
- cargo test -p firecracker \
- --target $_target \
- --verbose
-
- # notest jailer
+ # jailer: tests failed testing functionality of cgroups
+ # seccompiler: tests failed spawning a thread
+ cargo test \
+ --package firecracker \
+ --package rebase-snap \
+ --target "$CTARGET" \
+ --frozen
- # notest seccompiler
+ # Other integration tests need pytest and docker
}
package() {
- install -Dm755 build/cargo_target/"$_target"/release/firecracker \
- "$pkgdir"/usr/bin/firecracker
- install -Dm755 build/cargo_target/"$_target"/release/jailer \
- "$pkgdir"/usr/bin/jailer
+ install -Dm755 build/cargo_target/$CTARGET/release/firecracker \
+ -t "$pkgdir"/usr/bin
+ install -Dm755 build/cargo_target/$CTARGET/release/jailer \
+ -t "$pkgdir"/usr/bin
+ install -Dm755 build/cargo_target/$CTARGET/release/rebase-snap \
+ -t "$pkgdir"/usr/bin
+ install -Dm755 build/cargo_target/$CTARGET/release/seccompiler-bin \
+ -t "$pkgdir"/usr/bin
}
seccompiler() {
- pkgdesc="Seccompiler"
- install -Dm755 "$builddir"/build/cargo_target/"$_target"/release/seccompiler-bin \
- "$subpkgdir"/usr/bin/seccompiler-bin
+ pkgdesc="$pkgdesc - seccompiler"
+
+ amove usr/bin/seccompiler-bin
+}
+
+rebase_snap() {
+ pkgdesc="$pkgdesc - rebasing diff snapshot tool"
+
+ amove usr/bin/rebase-snap
}
sha512sums="
-4cfa940ed5b3346ab32474e935dcef4dd711e3433c7c82bf6203af15766402199c67861acfde2f0a0be4c2872f39da0cdd9e27735ad8b20f7f88b71694bcc167 firecracker-1.0.0.tar.gz
+20d105b4ee87728f5d92921148dd507ed0e727100cf04320943af66dee4d169d572b40a54c288fabe2b57d7c08337cd9a0138601ad90c76338b4177786ca2ee5 firecracker-1.4.1.tar.gz
"
diff --git a/testing/firectl/APKBUILD b/testing/firectl/APKBUILD
index 6d0ffc2e592..f8c184eebbd 100644
--- a/testing/firectl/APKBUILD
+++ b/testing/firectl/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=firectl
-pkgver=0.1.0
-pkgrel=3
+pkgver=0.2.0
+pkgrel=11
pkgdesc="command-line tool to run Firecracker microVMs"
url="https://github.com/firecracker-microvm/firectl"
arch="x86_64 aarch64" # blocked by firecracker
@@ -12,6 +12,10 @@ makedepends="go"
source="https://github.com/firecracker-microvm/firectl/archive/v$pkgver/firectl-$pkgver.tar.gz"
options="!check" # the tests require a kernel image to be present
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
build() {
make
}
@@ -21,5 +25,5 @@ package() {
}
sha512sums="
-0126243bc1df87465292dd74e5d726ffdc9c4acf0cc833cbc117664b059948958e8ea086fd55ceb0074b41d06d22cf6c5e948fdd8449f1f5b067831992c4d6d3 firectl-0.1.0.tar.gz
+cc463015ea31f1bc31729824a35a69ddafc72dd1f83b91620d6476634c12a22b19cf8f0511b5d5d6c9644eef11813a9b05ed2e92693df37ab82ec4d6928eeea8 firectl-0.2.0.tar.gz
"
diff --git a/testing/firefox-developer-edition/APKBUILD b/testing/firefox-developer-edition/APKBUILD
index 722f2b5219e..6f5af990b8b 100644
--- a/testing/firefox-developer-edition/APKBUILD
+++ b/testing/firefox-developer-edition/APKBUILD
@@ -1,8 +1,8 @@
-# Maintainer: psykose <alice@ayaya.dev>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=firefox-developer-edition
-pkgver=101.0_beta9
+pkgver=126.0_beta1
_pkgver=${pkgver/_beta/b}
-_releasedate=2022-05-20
+_releasedate=2024-04-06
pkgrel=0
pkgdesc="Firefox web browser"
url="https://www.firefox.com/"
@@ -12,14 +12,17 @@ url="https://www.firefox.com/"
# x86/armv7: who is using this there?
arch="x86_64 aarch64"
license="GPL-3.0-only AND LGPL-2.1-only AND LGPL-3.0-only AND MPL-2.0"
-depends="ffmpeg-libs"
+depends="
+ ffmpeg-libavcodec
+ "
makedepends="
alsa-lib-dev
automake
bsd-compat-headers
cargo
cbindgen
- clang-dev
+ clang
+ clang-libclang
dbus-glib-dev
gettext
gtk+3.0-dev
@@ -27,7 +30,6 @@ makedepends="
icu-dev
libevent-dev
libffi-dev
- libidl-dev
libjpeg-turbo-dev
libnotify-dev
libogg-dev
@@ -46,35 +48,29 @@ makedepends="
nodejs
nspr-dev
nss-dev
- nss-static
pipewire-dev
pulseaudio-dev
python3
sed
wasi-sdk
wireless-tools-dev
- yasm
zip
"
source="https://ftp.mozilla.org/pub/firefox/releases/$_pkgver/source/firefox-$_pkgver.source.tar.xz
- stab.h
-
fix-fortify-system-wrappers.patch
- mallinfo.patch
-
- disable-moz-stackwalk.patch
fix-rust-target.patch
fix-webrtc-glibcisms.patch
- allow-custom-rust-vendor.patch
-
- disable-neon-in-aom.patch
+ install-dir.patch
+ lfs64.patch
+ no-ccache-stats.patch
+ python-deps.patch
+ rust-lto-thin.patch
sandbox-fork.patch
- sandbox-sched_setscheduler.patch
sandbox-largefile.patch
+ sandbox-sched_setscheduler.patch
+ icu74.patch
- avoid-redefinition.patch
-
- install-dir.patch
+ stab.h
firefox-developer-edition.desktop
distribution.ini
@@ -96,125 +92,124 @@ _clear_vendor_checksums() {
sed -i 's/\("files":{\)[^}]*/\1/' third_party/rust/$1/.cargo-checksum.json
}
+export CFLAGS="${CFLAGS/-fstack-clash-protection/} -g0 -O2"
+export CXXFLAGS="${CXXFLAGS/-fstack-clash-protection/} -g0 -O2 -Wno-deprecated-builtins -Wno-deprecated-declarations"
+
prepare() {
default_prepare
+
cp "$srcdir"/stab.h toolkit/crashreporter/google-breakpad/src/
- _clear_vendor_checksums target-lexicon-0.9.0
+ _clear_vendor_checksums audio_thread_priority
+
+ cat > base-mozconfig <<-EOF
+ # disable unwanted things
+ ac_add_options --disable-bootstrap
+ ac_add_options --disable-cargo-incremental
+ ac_add_options --disable-crashreporter
+ ac_add_options --disable-elf-hack
+ ac_add_options --disable-install-strip
+ ac_add_options --disable-jemalloc
+ ac_add_options --disable-strip
+ ac_add_options --disable-tests
+ ac_add_options --disable-updater
+
+ # features
+ ac_add_options --enable-alsa
+ ac_add_options --enable-dbus
+ ac_add_options --enable-default-toolkit=cairo-gtk3-wayland
+ ac_add_options --enable-ffmpeg
+ ac_add_options --enable-hardening
+ ac_add_options --enable-linker=lld
+ ac_add_options --enable-lto=cross
+ ac_add_options --enable-necko-wifi
+ ac_add_options --enable-official-branding
+ ac_add_options --enable-optimize="$CFLAGS"
+ ac_add_options --enable-pulseaudio
+ ac_add_options --enable-release
+ ac_add_options --enable-sandbox
+ ac_add_options --enable-update-channel=aurora
+
+ # system libs
+ ac_add_options --enable-system-pixman
+ ac_add_options --with-system-ffi
+ ac_add_options --with-system-icu
+ ac_add_options --with-system-jpeg
+ ac_add_options --with-system-libevent
+ ac_add_options --with-system-libvpx
+ ac_add_options --with-system-nspr
+ ac_add_options --with-system-nss
+ ac_add_options --with-system-png
+ ac_add_options --with-system-webp
+ ac_add_options --with-system-zlib
+
+ # misc
+ ac_add_options --prefix=/usr
+ ac_add_options --allow-addon-sideload
+ ac_add_options --with-distribution-id=org.alpinelinux
+ ac_add_options --with-libclang-path=/usr/lib
+ ac_add_options --with-unsigned-addon-scopes=app,system
+ ac_add_options --with-wasi-sysroot=/usr/share/wasi-sysroot
+ ac_add_options --with-branding=browser/branding/aurora
+ ac_add_options --host=$CHOST
+ ac_add_options --target=$CTARGET
+
+ mk_add_options RUSTFLAGS="$RUSTFLAGS"
+ # objdir
+ mk_add_options MOZ_OBJDIR="$builddir/obj"
+ EOF
}
build() {
+ # for lto
+ ulimit -n 4096
+
+ # can't be set here and fail
+ unset RUSTFLAGS
+
+ local thinlto_jobs=${JOBS:-1}
+
+ case "$CARCH" in
+ # on this platform, lld seems to not utilise >1 threads for thinlto for some reason.
+ # at the same time, having more than 8 also crashes lld for firefox buildsystems (why?).
+ aarch64)
+ if [ $thinlto_jobs -gt 8 ]; then
+ thinlto_jobs=8
+ fi
+ esac
+
+ export LDFLAGS="$LDFLAGS -Wl,--thinlto-jobs=$thinlto_jobs"
+
+ export CC="clang"
+ export CXX="clang++"
+
export SHELL=/bin/sh
+ export BUILD_OFFICIAL=1
export MOZILLA_OFFICIAL=1
export USE_SHORT_LIBNAME=1
export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=system
export MOZ_APP_REMOTINGNAME=firefoxdeveloperedition
export MOZBUILD_STATE_PATH="$srcdir"/mozbuild
+ # allow unsigned addons for dev-edition
+ export MOZ_REQUIRE_SIGNING=
# disable desktop notifications
export MOZ_NOSPAM=1
# Find our triplet JSON
export RUST_TARGET="$CTARGET"
- # Build with Clang, takes less RAM
- export CC="clang"
- export CXX="clang++"
# set rpath so linker finds the libs
export LDFLAGS="$LDFLAGS -Wl,-rpath,$_mozappdir"
- case "$CARCH" in
- aarch64|arm*|x86*)
- # disable-elf-hack: exists only on aarch64, arm*, x86, x86_64
- _arch_config="--disable-elf-hack"
- ;;
- esac
+ # let firefox do this itself.
+ unset CARGO_PROFILE_RELEASE_OPT_LEVEL
+ unset CARGO_PROFILE_RELEASE_CODEGEN_UNITS
+ unset CARGO_PROFILE_RELEASE_PANIC
+ unset CARGO_PROFILE_RELEASE_LTO
- # webrtc does not build on these
- case "$CARCH" in
- armv7|ppc64le)
- _webrtc_config="--disable-webrtc"
- ;;
- esac
+ export MOZ_BUILD_DATE="$(date ${SOURCE_DATE_EPOCH:+ -d@${SOURCE_DATE_EPOCH}} "+%Y%m%d%H%M%S")"
- # FF doesn't have SIMD available on armhf/v7
- case "$CARCH" in
- arm*)
- _rust_simd="--disable-rust-simd"
- ;;
- *)
- _rust_simd="--enable-rust-simd"
- ;;
- esac
-
- # disable debug on 32-bit (takes too much link memory)
- case "$CARCH" in
- arm*|x86)
- _low_mem_flags="--disable-debug-symbols --disable-debug"
- # hardcoded in the file
- sed -i 's|debug_info = "2"|debug_info = "0"|' \
- ../build/moz.configure/toolchain.configure
- ;;
- esac
+ cat > .mozconfig base-mozconfig
- # sandbox only supported here
- case "$CARCH" in
- x86*|armv7|aarch64)
- _sandbox="--enable-sandbox"
- ;;
- *)
- _sandbox="--disable-sandbox"
- ;;
- esac
-
- ./mach configure \
- --prefix=/usr \
- $_arch_config \
- $_webrtc_config \
- $_low_mem_flags \
- $_rust_simd \
- $_sandbox \
- \
- --disable-cargo-incremental \
- --disable-crashreporter \
- --disable-install-strip \
- --disable-jemalloc \
- --disable-minify \
- --disable-profiling \
- --disable-strip \
- --disable-tests \
- --disable-updater \
- \
- --enable-alsa \
- --enable-dbus \
- --enable-default-toolkit=cairo-gtk3-wayland \
- --enable-ffmpeg \
- --enable-hardening \
- --enable-linker=lld \
- --enable-necko-wifi \
- --enable-official-branding \
- --enable-optimize="$CFLAGS -O2" \
- --enable-pulseaudio \
- --enable-release \
- --enable-system-ffi \
- --enable-system-pixman \
- --enable-update-channel=aurora \
- \
- --with-branding=browser/branding/aurora \
- --with-distribution-id=org.alpinelinux \
- --with-libclang-path=/usr/lib \
- --with-system-ffi \
- --with-system-icu \
- --with-system-jpeg \
- --with-system-libevent \
- --with-system-libvpx \
- --with-system-nspr \
- --with-system-nss \
- --with-system-pixman \
- --with-system-png \
- --with-system-webp \
- --with-system-zlib \
- --with-unsigned-addon-scopes=app,system \
- --allow-addon-sideload \
- --with-wasi-sysroot=/usr/share/wasi-sysroot
./mach build
}
@@ -237,7 +232,7 @@ package() {
"$pkgdir"/usr/share/icons/hicolor/scalable/apps/$pkgname.svg
install -Dm644 "$srcdir"/firefox-developer-edition.desktop \
- "$pkgdir"/usr/share/applications/org.mozilla.firefox-developer-edition.desktop
+ "$pkgdir"/usr/share/applications/firefox-developer-edition.desktop
install -Dm644 "$srcdir"/distribution.ini \
"$pkgdir"/$_mozappdir/distribution/distribution.ini
@@ -250,28 +245,28 @@ package() {
# https://bugzilla.mozilla.org/show_bug.cgi?id=658850
install -Dm755 /dev/stdin "$pkgdir"/usr/bin/firefox-developer-edition <<- EOF
#!/bin/sh
- exec /usr/lib/$pkgname/firefox "\$@"
+ exec $_mozappdir/firefox "\$@"
EOF
rm "$pkgdir"/$_mozappdir/firefox-bin
ln -sfv /usr/bin/firefox-developer-edition "$pkgdir"/$_mozappdir/firefox-bin
}
sha512sums="
-d9491747da5f65caf59deb5ebd1cab6995343f46f26b290026275e6a828c38fb2402336f1df3a60d0b22af5b0c6043b8b711d188be7f8653284b1d3a9c3bbe42 firefox-101.0b9.source.tar.xz
-0b3f1e4b9fdc868e4738b5c81fd6c6128ce8885b260affcb9a65ff9d164d7232626ce1291aaea70132b3e3124f5e13fef4d39326b8e7173e362a823722a85127 stab.h
-2f4f15974d52de4bb273b62a332d13620945d284bbc6fe6bd0a1f58ff7388443bc1d3bf9c82cc31a8527aad92b0cd3a1bc41d0af5e1800e0dcbd7033e58ffd71 fix-fortify-system-wrappers.patch
-a4a3e062661bda64d502d426c480ac9645345860118de9df9ffe6e0597738c70c11e5cdef2d4fd12c5e2ee30a09310159230524655a419a4f7e4eeeb0f3c06b0 mallinfo.patch
-454ea3263cabce099accbdc47aaf83be26a19f8b5a4568c01a7ef0384601cf8315efd86cd917f9c8bf419c2c845db89a905f3ff9a8eb0c8e41042e93aa96a85c disable-moz-stackwalk.patch
+500c2fa0886cd0a3a10eb898aa0865a3cd114f2f0b12e140a94f0883d18b57eeaf8c767e8ea818ac75939fdcb08a996c9efa93ea9b477336d28bc563b66cea28 firefox-126.0b1.source.tar.xz
+3c28e243c1c74a9bd1ea13729926b1cae3ee35843b14be92ff3287a8cd745e95954e1bc842f2add165923d159bb8d2a7bcd92ba8fb2f4017ba1aef892d77aecf fix-fortify-system-wrappers.patch
cd68b89e29e5f6379fbd5679db27b9a5ef70ea65e51c0d0a8137e1f1fd210e35a8cfb047798e9549bc7275606d7ec5c8d8af1335d29da4699db7acd8bc7ff556 fix-rust-target.patch
305c874fdea3096e9c4c6aa6520ac64bb1c347c4b59db8360096646593fe684c3b5377874d91cecd33d56d1410b4714fbdea2b514923723ecbeff79d51265d9b fix-webrtc-glibcisms.patch
-4e584621145cf8add069c6dac18e805b3274a1ee402d84e924df2341f7d3c5be261a93ef51283bacbd606f47fbdc628c4323ecc31efc5b403b8d224b18dc278f allow-custom-rust-vendor.patch
-55eab1a02e19a19a1ee0e36b11097ab48a44200e07e543d91469967206854f39709c7c0bc31855559528e64642d610868140e9533f1c0e3bebc953353c142fa8 disable-neon-in-aom.patch
+ff471e5160e313a9657bcbb767a6a581bab9da053cced02bde38d1ef03349472ad3602dba026c10d676d55c1712af772dd2b7bdbfa72b5db498c9ce8a2133423 install-dir.patch
+5fa9382c692e4bd6a2634308f24a6526fd12a60a2563d2090056d43a60505df3ec9881bbf54562e69394467529b3b0dc45955afca46ed329af03cea074fff070 lfs64.patch
+64b6458099baa225b346b40e3080cea3a5c73a834e39fa4a438af77701e6ded84e2fb0d6fffff8c2533cc43b898fe9f411be023e875acebec452aa2379861f04 no-ccache-stats.patch
+56454b30bed9ce079a06b9d3803030912629d3e0feef49321f1404ab5d004528c446231584a6d89ca69e0bb2ee037664287186975405b048ea3ce06d729a7912 python-deps.patch
+1c6918dd6655d3a1251bfd4af2e1c561cbb00d540a883b4c1ebf7f5de530d754d9ac07b4b5f56cdab6c511d25c8910ec94043f5733e97501a67abffe1bafaeb1 rust-lto-thin.patch
2518f2fc75b5db30058e0735f47d60fdf1e7adfaeee4b33fb2afb1bd9a616ce943fd88f4404d0802d4083703f4acf1d5ad42377218d025bc768807fbaf7e1609 sandbox-fork.patch
-94433c5ffdbe579c456d95c5f053f61fcbab2f652fa90bc69dcc27d9a1507a8e5c677adeadae9a7a75cc9a55184c1040737f4dfd10b279c088ef016561e6f135 sandbox-sched_setscheduler.patch
b7d0a6126bdf6c0569f80aabf5b37ed2c7a35712eb8a0404a2d85381552f5555d4f97d213ea26cec6a45dc2785f22439376ed5f8e78b4fd664ef0223307b333e sandbox-largefile.patch
-b1cb2db3122634f66d2bae7066e76f2dcd455c464e021db4de3b0a08314df95cb667846081682db549dd2af8a00831cabe44a2420c66cdfb5e3b5fa7e6bd21d3 avoid-redefinition.patch
-ff471e5160e313a9657bcbb767a6a581bab9da053cced02bde38d1ef03349472ad3602dba026c10d676d55c1712af772dd2b7bdbfa72b5db498c9ce8a2133423 install-dir.patch
+f8c3555ef6207933cbffbf4fc101a9b4c0d2990c0063162f0f0bde70ef0b46f86bfac42e7110695183424a87948de593f3927b2d8509ede3e4fc7bd8a1fad1ce sandbox-sched_setscheduler.patch
+afabea91b328c5a68eaa20f9099ac7b2d0e7f2423e816b05ed168bdd326a5684fa02de08bf05c6033e9b888f02775d1b0443a00329b7a632ee399122a391c13a icu74.patch
+0b3f1e4b9fdc868e4738b5c81fd6c6128ce8885b260affcb9a65ff9d164d7232626ce1291aaea70132b3e3124f5e13fef4d39326b8e7173e362a823722a85127 stab.h
2ff0cb8e2eb94cee306b488adf6d7f4debbaff6155be3ed3eeee814cdb356e2e60fe38cc29d6c8d10079937fd2c930cfddf283977cf645395d31eaf76c7f0ac2 firefox-developer-edition.desktop
4fd66382983d406ce0cd3586239fb1110224aeb2f9eee6fc931d980a31d18739d001d1f152208a7f1ccaae80867c40bd3d2ac674484617532a8f38049dc745bd distribution.ini
-fc45bc3ffb9404e5338ea26a9f04807b40f6f516324972cddd48bedb91b8bd7c6b8d4e03a0209020f5e67b703bc4ff89389985791b9bd544a0fc3951e2dc338e vendor-prefs.js
+0423804a3c7c075de128b624110c58994ec8e10819fc09b74fdb4cd5aa6c0365cdafc77770af42f4ce856ad2e8e325a918344c57fb015a680b7e54555b94c6ed vendor-prefs.js
"
diff --git a/testing/firefox-developer-edition/allow-custom-rust-vendor.patch b/testing/firefox-developer-edition/allow-custom-rust-vendor.patch
deleted file mode 100644
index 218650f4111..00000000000
--- a/testing/firefox-developer-edition/allow-custom-rust-vendor.patch
+++ /dev/null
@@ -1,564 +0,0 @@
-From a5a3db2d32ff1d359aef5ec586b91164570c1685 Mon Sep 17 00:00:00 2001
-From: Dan Gohman <sunfish@mozilla.com>
-Date: Tue, 5 Nov 2019 09:56:15 -0800
-Subject: [PATCH 1/7] Support custom vendor strings.
-
-Add support for custom vendors, as in "x86_64-gentoo-linux-musl".
-
-Fixes #33.
----
- src/targets.rs | 108 ++++++++++++++++++++++++++++++++++++++++++++++++-
- src/triple.rs | 4 --
- 2 files changed, 106 insertions(+), 6 deletions(-)
-
-diff --git a/src/targets.rs b/src/targets.rs
-index 6ae570e..90b2736 100644
---- a/third_party/rust/target-lexicon-0.9.0/src/targets.rs
-+++ b/third_party/rust/target-lexicon-0.9.0/src/targets.rs
-@@ -1,6 +1,8 @@
- // This file defines all the identifier enums and target-aware logic.
-
- use crate::triple::{Endianness, PointerWidth, Triple};
-+use alloc::boxed::Box;
-+use alloc::string::String;
- use core::fmt;
- use core::str::FromStr;
-
-@@ -292,7 +294,7 @@ impl Aarch64Architecture {
-
- /// The "vendor" field, which in practice is little more than an arbitrary
- /// modifier.
--#[derive(Copy, Clone, Debug, PartialEq, Eq, Hash)]
-+#[derive(Clone, Debug, PartialEq, Eq, Hash)]
- #[allow(missing_docs)]
- pub enum Vendor {
- Unknown,
-@@ -306,6 +308,15 @@ pub enum Vendor {
- Sun,
- Uwp,
- Wrs,
-+
-+ /// A custom vendor. "Custom" in this context means that the vendor is
-+ /// not specifically recognized by upstream Autotools, LLVM, Rust, or other
-+ /// relevant authorities on triple naming. It's useful for people building
-+ /// and using locally patched toolchains.
-+ ///
-+ /// Outside of such patched environments, users of `target-lexicon` should
-+ /// treat `Custom` the same as `Unknown` and ignore the string.
-+ Custom(Box<String>),
- }
-
- /// The "operating system" field, which sometimes implies an environment, and
-@@ -717,6 +728,7 @@ impl fmt::Display for Vendor {
- Vendor::Sun => "sun",
- Vendor::Uwp => "uwp",
- Vendor::Wrs => "wrs",
-+ Vendor::Custom(ref name) => name,
- };
- f.write_str(s)
- }
-@@ -738,7 +750,46 @@ impl FromStr for Vendor {
- "sun" => Vendor::Sun,
- "uwp" => Vendor::Uwp,
- "wrs" => Vendor::Wrs,
-- _ => return Err(()),
-+ custom => {
-+ use alloc::borrow::ToOwned;
-+
-+ // A custom vendor. Since triple syntax is so loosely defined,
-+ // be as conservative as we can to avoid potential ambiguities.
-+ // We err on the side of being too strict here, as we can
-+ // always relax it if needed.
-+
-+ // Don't allow empty string names.
-+ if custom.is_empty() {
-+ return Err(());
-+ }
-+
-+ // Don't allow any other recognized name as a custom vendor,
-+ // since vendors can be omitted in some contexts.
-+ if Architecture::from_str(custom).is_ok()
-+ || OperatingSystem::from_str(custom).is_ok()
-+ || Environment::from_str(custom).is_ok()
-+ || BinaryFormat::from_str(custom).is_ok()
-+ {
-+ return Err(());
-+ }
-+
-+ // Require the first character to be an ascii lowercase.
-+ if !custom.chars().nth(0).unwrap().is_ascii_lowercase() {
-+ return Err(());
-+ }
-+
-+ // Restrict the set of characters permitted in a custom vendor.
-+ if custom
-+ .find(|c: char| {
-+ !(c.is_ascii_lowercase() || c.is_ascii_digit() || c == '_' || c == '.')
-+ })
-+ .is_some()
-+ {
-+ return Err(());
-+ }
-+
-+ Vendor::Custom(Box::new(custom.to_owned()))
-+ }
- })
- }
- }
-@@ -1120,4 +1171,57 @@ mod tests {
- assert_eq!(t.environment, Environment::Eabihf);
- assert_eq!(t.binary_format, BinaryFormat::Elf);
- }
-+
-+ #[test]
-+ fn custom_vendors() {
-+ assert!(Triple::from_str("x86_64--linux").is_err());
-+ assert!(Triple::from_str("x86_64-42-linux").is_err());
-+ assert!(Triple::from_str("x86_64-__customvendor__-linux").is_err());
-+ assert!(Triple::from_str("x86_64-^-linux").is_err());
-+ assert!(Triple::from_str("x86_64- -linux").is_err());
-+ assert!(Triple::from_str("x86_64-CustomVendor-linux").is_err());
-+ assert!(Triple::from_str("x86_64-linux-linux").is_err());
-+ assert!(Triple::from_str("x86_64-x86_64-linux").is_err());
-+ assert!(Triple::from_str("x86_64-elf-linux").is_err());
-+ assert!(Triple::from_str("x86_64-gnu-linux").is_err());
-+ assert!(Triple::from_str("x86_64-linux-customvendor").is_err());
-+ assert!(Triple::from_str("customvendor").is_err());
-+ assert!(Triple::from_str("customvendor-x86_64").is_err());
-+ assert!(Triple::from_str("x86_64-").is_err());
-+ assert!(Triple::from_str("x86_64--").is_err());
-+
-+ let t = Triple::from_str("x86_64-customvendor-linux")
-+ .expect("can't parse target with custom vendor");
-+ assert_eq!(t.architecture, Architecture::X86_64);
-+ assert_eq!(
-+ t.vendor,
-+ Vendor::Custom(Box::new(String::from_str("customvendor").unwrap()))
-+ );
-+ assert_eq!(t.operating_system, OperatingSystem::Linux);
-+ assert_eq!(t.environment, Environment::Unknown);
-+ assert_eq!(t.binary_format, BinaryFormat::Elf);
-+ assert_eq!(t.to_string(), "x86_64-customvendor-linux");
-+
-+ let t = Triple::from_str("x86_64-customvendor")
-+ .expect("can't parse target with custom vendor");
-+ assert_eq!(t.architecture, Architecture::X86_64);
-+ assert_eq!(
-+ t.vendor,
-+ Vendor::Custom(Box::new(String::from_str("customvendor").unwrap()))
-+ );
-+ assert_eq!(t.operating_system, OperatingSystem::Unknown);
-+ assert_eq!(t.environment, Environment::Unknown);
-+ assert_eq!(t.binary_format, BinaryFormat::Unknown);
-+
-+ assert_eq!(
-+ Triple::from_str("unknown-foo"),
-+ Ok(Triple {
-+ architecture: Architecture::Unknown,
-+ vendor: Vendor::Custom(Box::new(String::from_str("foo").unwrap())),
-+ operating_system: OperatingSystem::Unknown,
-+ environment: Environment::Unknown,
-+ binary_format: BinaryFormat::Unknown,
-+ })
-+ );
-+ }
- }
-diff --git a/src/triple.rs b/src/triple.rs
-index 36dcd9a..1abda26 100644
---- a/third_party/rust/target-lexicon.0.9.0/src/triple.rs
-+++ b/third_party/rust/target-lexicon-0.9.0/src/triple.rs
-@@ -322,10 +322,6 @@ mod tests {
- Triple::from_str("foo"),
- Err(ParseError::UnrecognizedArchitecture("foo".to_owned()))
- );
-- assert_eq!(
-- Triple::from_str("unknown-foo"),
-- Err(ParseError::UnrecognizedVendor("foo".to_owned()))
-- );
- assert_eq!(
- Triple::from_str("unknown-unknown-foo"),
- Err(ParseError::UnrecognizedOperatingSystem("foo".to_owned()))
-
-From 6f90d7274dce4e7f9bb120f6b36cf26881bde9a7 Mon Sep 17 00:00:00 2001
-From: Dan Gohman <sunfish@mozilla.com>
-Date: Tue, 5 Nov 2019 10:33:56 -0800
-Subject: [PATCH 2/7] Add more tests.
-
----
- src/targets.rs | 30 ++++++++++++++++++++++++++++--
- 1 file changed, 28 insertions(+), 2 deletions(-)
-
-diff --git a/src/targets.rs b/src/targets.rs
-index 90b2736..7d1f069 100644
---- a/third_party/rust/target-lexicon-0.9.0/src/targets.rs
-+++ b/third_party/rust/target-lexicon-0.9.0/src/targets.rs
-@@ -1174,6 +1174,7 @@ mod tests {
-
- #[test]
- fn custom_vendors() {
-+ // Test various invalid cases.
- assert!(Triple::from_str("x86_64--linux").is_err());
- assert!(Triple::from_str("x86_64-42-linux").is_err());
- assert!(Triple::from_str("x86_64-__customvendor__-linux").is_err());
-@@ -1190,6 +1191,31 @@ mod tests {
- assert!(Triple::from_str("x86_64-").is_err());
- assert!(Triple::from_str("x86_64--").is_err());
-
-+ // Test various Unicode things.
-+ assert!(
-+ Triple::from_str("x86_64-ð“¬ð“¾ð“¼ð“½ð“¸ð“¶ð“¿ð“®ð“·ð“­ð“¸ð“»-linux").is_err(),
-+ "unicode font hazard"
-+ );
-+ assert!(
-+ Triple::from_str("x86_64-ćúśtőḿvéńdőŕ-linux").is_err(),
-+ "diacritical mark stripping hazard"
-+ );
-+ assert!(
-+ Triple::from_str("x86_64-customvendοr-linux").is_err(),
-+ "homoglyph hazard"
-+ );
-+ assert!(Triple::from_str("x86_64-customvendor-linux").is_ok());
-+ assert!(
-+ Triple::from_str("x86_64-ffi-linux").is_err(),
-+ "normalization hazard"
-+ );
-+ assert!(Triple::from_str("x86_64-ffi-linux").is_ok());
-+ assert!(
-+ Triple::from_str("x86_64-customâ€vendor-linux").is_err(),
-+ "zero-width character hazard"
-+ );
-+
-+ // Test some valid cases.
- let t = Triple::from_str("x86_64-customvendor-linux")
- .expect("can't parse target with custom vendor");
- assert_eq!(t.architecture, Architecture::X86_64);
-@@ -1202,8 +1228,8 @@ mod tests {
- assert_eq!(t.binary_format, BinaryFormat::Elf);
- assert_eq!(t.to_string(), "x86_64-customvendor-linux");
-
-- let t = Triple::from_str("x86_64-customvendor")
-- .expect("can't parse target with custom vendor");
-+ let t =
-+ Triple::from_str("x86_64-customvendor").expect("can't parse target with custom vendor");
- assert_eq!(t.architecture, Architecture::X86_64);
- assert_eq!(
- t.vendor,
-
-From c0e318b3c1be2d1965579f07dd563fb9cc0c4eb1 Mon Sep 17 00:00:00 2001
-From: Dan Gohman <sunfish@mozilla.com>
-Date: Tue, 5 Nov 2019 12:56:31 -0800
-Subject: [PATCH 3/7] Use `.chars().any(...)` instead of
- `.find(...).is_some()`.
-
----
- src/targets.rs | 9 +++------
- 1 file changed, 3 insertions(+), 6 deletions(-)
-
-diff --git a/src/targets.rs b/src/targets.rs
-index 7d1f069..1078dd3 100644
---- a/third_party/rust/target-lexicon-0.9.0/src/targets.rs
-+++ b/third_party/rust/target-lexicon/src-0.9.0/targets.rs
-@@ -779,12 +779,9 @@ impl FromStr for Vendor {
- }
-
- // Restrict the set of characters permitted in a custom vendor.
-- if custom
-- .find(|c: char| {
-- !(c.is_ascii_lowercase() || c.is_ascii_digit() || c == '_' || c == '.')
-- })
-- .is_some()
-- {
-+ if custom.chars().any(|c: char| {
-+ !(c.is_ascii_lowercase() || c.is_ascii_digit() || c == '_' || c == '.')
-+ }) {
- return Err(());
- }
-
-
-From f319950528654c772193d9eb3bf40bc8df35fcae Mon Sep 17 00:00:00 2001
-From: Dan Gohman <sunfish@mozilla.com>
-Date: Thu, 7 Nov 2019 15:15:48 -0800
-Subject: [PATCH 4/7] Fix build.rs to generate the correct code to build
- Vendors.
-
----
- build.rs | 14 ++++++++++++--
- 1 file changed, 12 insertions(+), 2 deletions(-)
-
-diff --git a/build.rs b/build.rs
-index a0ba3b7..446f9e7 100644
---- a/third_party/rust/target-lexicon-0.9.0/build.rs
-+++ b/third_party/rust/target-lexicon-0.9.0/build.rs
-@@ -32,6 +32,7 @@ mod parse_error {
- }
- }
-
-+use self::targets::Vendor;
- use self::triple::Triple;
-
- fn main() {
-@@ -60,7 +61,7 @@ fn write_host_rs(mut out: File, triple: Triple) -> io::Result<()> {
- " architecture: Architecture::{:?},",
- triple.architecture
- )?;
-- writeln!(out, " vendor: Vendor::{:?},", triple.vendor)?;
-+ writeln!(out, " vendor: {},", vendor_display(&triple.vendor))?;
- writeln!(
- out,
- " operating_system: OperatingSystem::{:?},",
-@@ -90,7 +91,7 @@ fn write_host_rs(mut out: File, triple: Triple) -> io::Result<()> {
- writeln!(out, "impl Vendor {{")?;
- writeln!(out, " /// Return the vendor for the current host.")?;
- writeln!(out, " pub const fn host() -> Self {{")?;
-- writeln!(out, " Vendor::{:?}", triple.vendor)?;
-+ writeln!(out, " {}", vendor_display(&triple.vendor))?;
- writeln!(out, " }}")?;
- writeln!(out, "}}")?;
- writeln!(out)?;
-@@ -160,3 +161,12 @@ fn write_host_rs(mut out: File, triple: Triple) -> io::Result<()> {
-
- Ok(())
- }
-+
-+fn vendor_display(vendor: &Vendor) -> String {
-+ match vendor {
-+ Vendor::Custom(custom) => {
-+ format!("Vendor::Custom(Box::new(String::from_str({:?})))", custom)
-+ }
-+ known => format!("Vendor::{:?}", known),
-+ }
-+}
-
-From e558f6934535be3b8ccc9a99a33e861cb7431dfe Mon Sep 17 00:00:00 2001
-From: Dan Gohman <sunfish@mozilla.com>
-Date: Fri, 8 Nov 2019 12:10:34 -0800
-Subject: [PATCH 5/7] Fix custom vendors in `const fn` contexts.
-
----
- build.rs | 15 +++++++++++----
- src/lib.rs | 4 ++--
- src/targets.rs | 51 ++++++++++++++++++++++++++++++++++++++++++--------
- 3 files changed, 56 insertions(+), 14 deletions(-)
-
-diff --git a/build.rs b/build.rs
-index 446f9e7..e88206e 100644
---- a/third_party/rust/target-lexicon-0.9.0/build.rs
-+++ b/third_party/rust/target-lexicon-0.9.0/build.rs
-@@ -53,6 +53,8 @@ fn write_host_rs(mut out: File, triple: Triple) -> io::Result<()> {
- writeln!(out, "use crate::Aarch64Architecture::*;")?;
- writeln!(out, "#[allow(unused_imports)]")?;
- writeln!(out, "use crate::ArmArchitecture::*;")?;
-+ writeln!(out, "#[allow(unused_imports)]")?;
-+ writeln!(out, "use crate::CustomVendor;")?;
- writeln!(out)?;
- writeln!(out, "/// The `Triple` of the current host.")?;
- writeln!(out, "pub const HOST: Triple = Triple {{")?;
-@@ -139,7 +141,11 @@ fn write_host_rs(mut out: File, triple: Triple) -> io::Result<()> {
- " architecture: Architecture::{:?},",
- triple.architecture
- )?;
-- writeln!(out, " vendor: Vendor::{:?},", triple.vendor)?;
-+ writeln!(
-+ out,
-+ " vendor: {},",
-+ vendor_display(&triple.vendor)
-+ )?;
- writeln!(
- out,
- " operating_system: OperatingSystem::{:?},",
-@@ -164,9 +170,10 @@ fn write_host_rs(mut out: File, triple: Triple) -> io::Result<()> {
-
- fn vendor_display(vendor: &Vendor) -> String {
- match vendor {
-- Vendor::Custom(custom) => {
-- format!("Vendor::Custom(Box::new(String::from_str({:?})))", custom)
-- }
-+ Vendor::Custom(custom) => format!(
-+ "Vendor::Custom(CustomVendor::Static({:?}))",
-+ custom.as_str()
-+ ),
- known => format!("Vendor::{:?}", known),
- }
- }
-diff --git a/src/lib.rs b/src/lib.rs
-index 8d6da8d..70f6488 100644
---- a/third_party/rust/target-lexicon-0.9.0/src/lib.rs
-+++ b/third_party/rust/target-lexicon-0.9.0/src/lib.rs
-@@ -28,7 +28,7 @@ mod triple;
- pub use self::host::HOST;
- pub use self::parse_error::ParseError;
- pub use self::targets::{
-- Aarch64Architecture, Architecture, ArmArchitecture, BinaryFormat, Environment, OperatingSystem,
-- Vendor,
-+ Aarch64Architecture, Architecture, ArmArchitecture, BinaryFormat, CustomVendor, Environment,
-+ OperatingSystem, Vendor,
- };
- pub use self::triple::{CallingConvention, Endianness, PointerWidth, Triple};
-diff --git a/src/targets.rs b/src/targets.rs
-index 1078dd3..7152020 100644
---- a/third_party/rust/target-lexicon-0.9.0/src/targets.rs
-+++ b/third_party/rust/target-lexicon-0.9.0/src/targets.rs
-@@ -4,6 +4,7 @@ use crate::triple::{Endianness, PointerWidth, Triple};
- use alloc::boxed::Box;
- use alloc::string::String;
- use core::fmt;
-+use core::hash::{Hash, Hasher};
- use core::str::FromStr;
-
- /// The "architecture" field, which in some cases also specifies a specific
-@@ -292,6 +293,39 @@ impl Aarch64Architecture {
- }
- }
-
-+/// A string for a `Vendor::Custom` that can either be used in `const`
-+/// contexts or hold dynamic strings.
-+#[derive(Clone, Debug, Eq)]
-+pub enum CustomVendor {
-+ /// An owned `String`. This supports the general case.
-+ Owned(Box<String>),
-+ /// A static `str`, so that `CustomVendor` can be constructed in `const`
-+ /// contexts.
-+ Static(&'static str),
-+}
-+
-+impl CustomVendor {
-+ /// Extracts a string slice.
-+ pub fn as_str(&self) -> &str {
-+ match self {
-+ CustomVendor::Owned(s) => s,
-+ CustomVendor::Static(s) => s,
-+ }
-+ }
-+}
-+
-+impl PartialEq for CustomVendor {
-+ fn eq(&self, other: &Self) -> bool {
-+ self.as_str() == other.as_str()
-+ }
-+}
-+
-+impl Hash for CustomVendor {
-+ fn hash<H: Hasher>(&self, state: &mut H) {
-+ self.as_str().hash(state)
-+ }
-+}
-+
- /// The "vendor" field, which in practice is little more than an arbitrary
- /// modifier.
- #[derive(Clone, Debug, PartialEq, Eq, Hash)]
-@@ -316,7 +350,7 @@ pub enum Vendor {
- ///
- /// Outside of such patched environments, users of `target-lexicon` should
- /// treat `Custom` the same as `Unknown` and ignore the string.
-- Custom(Box<String>),
-+ Custom(CustomVendor),
- }
-
- /// The "operating system" field, which sometimes implies an environment, and
-@@ -728,7 +762,7 @@ impl fmt::Display for Vendor {
- Vendor::Sun => "sun",
- Vendor::Uwp => "uwp",
- Vendor::Wrs => "wrs",
-- Vendor::Custom(ref name) => name,
-+ Vendor::Custom(ref name) => name.as_str(),
- };
- f.write_str(s)
- }
-@@ -779,13 +813,14 @@ impl FromStr for Vendor {
- }
-
- // Restrict the set of characters permitted in a custom vendor.
-- if custom.chars().any(|c: char| {
-+ fn is_prohibited_char(c: char) -> bool {
- !(c.is_ascii_lowercase() || c.is_ascii_digit() || c == '_' || c == '.')
-- }) {
-+ }
-+ if custom.chars().any(is_prohibited_char) {
- return Err(());
- }
-
-- Vendor::Custom(Box::new(custom.to_owned()))
-+ Vendor::Custom(CustomVendor::Owned(Box::new(custom.to_owned())))
- }
- })
- }
-@@ -1218,7 +1253,7 @@ mod tests {
- assert_eq!(t.architecture, Architecture::X86_64);
- assert_eq!(
- t.vendor,
-- Vendor::Custom(Box::new(String::from_str("customvendor").unwrap()))
-+ Vendor::Custom(CustomVendor::Static("customvendor"))
- );
- assert_eq!(t.operating_system, OperatingSystem::Linux);
- assert_eq!(t.environment, Environment::Unknown);
-@@ -1230,7 +1265,7 @@ mod tests {
- assert_eq!(t.architecture, Architecture::X86_64);
- assert_eq!(
- t.vendor,
-- Vendor::Custom(Box::new(String::from_str("customvendor").unwrap()))
-+ Vendor::Custom(CustomVendor::Static("customvendor"))
- );
- assert_eq!(t.operating_system, OperatingSystem::Unknown);
- assert_eq!(t.environment, Environment::Unknown);
-@@ -1240,7 +1275,7 @@ mod tests {
- Triple::from_str("unknown-foo"),
- Ok(Triple {
- architecture: Architecture::Unknown,
-- vendor: Vendor::Custom(Box::new(String::from_str("foo").unwrap())),
-+ vendor: Vendor::Custom(CustomVendor::Static("foo")),
- operating_system: OperatingSystem::Unknown,
- environment: Environment::Unknown,
- binary_format: BinaryFormat::Unknown,
-
-From bc4b444133b8a5e56602f7c77c10ef3f1e7a7c78 Mon Sep 17 00:00:00 2001
-From: Dan Gohman <sunfish@mozilla.com>
-Date: Mon, 18 Nov 2019 13:45:58 -0800
-Subject: [PATCH 6/7] Add a testcase with a BOM too, just in case.
-
----
- src/targets.rs | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/src/targets.rs b/src/targets.rs
-index 7152020..9a4d990 100644
---- a/third_party/rust/target-lexicon-0.9.0/src/targets.rs
-+++ b/third_party/rust/target-lexicon-0.9.0/src/targets.rs
-@@ -1246,6 +1246,10 @@ mod tests {
- Triple::from_str("x86_64-customâ€vendor-linux").is_err(),
- "zero-width character hazard"
- );
-+ assert!(
-+ Triple::from_str("x86_64-customvendor-linux").is_err(),
-+ "BOM hazard"
-+ );
-
- // Test some valid cases.
- let t = Triple::from_str("x86_64-customvendor-linux")
-
-From 721fbbe1c9cfd3adc9aaf011c62d6a36078f4133 Mon Sep 17 00:00:00 2001
-From: Dan Gohman <sunfish@mozilla.com>
-Date: Mon, 18 Nov 2019 20:56:40 -0800
-Subject: [PATCH 7/7] Use an anonymous function instead of just a local
- function.
-
----
- src/targets.rs | 5 ++---
- 1 file changed, 2 insertions(+), 3 deletions(-)
-
-diff --git a/src/targets.rs b/src/targets.rs
-index 9a4d990..eb5a088 100644
---- a/third_party/rust/target-lexicon-0.9.0/src/targets.rs
-+++ b/third_party/rust/target-lexicon-0.9.0/src/targets.rs
-@@ -813,10 +813,9 @@ impl FromStr for Vendor {
- }
-
- // Restrict the set of characters permitted in a custom vendor.
-- fn is_prohibited_char(c: char) -> bool {
-+ if custom.chars().any(|c: char| {
- !(c.is_ascii_lowercase() || c.is_ascii_digit() || c == '_' || c == '.')
-- }
-- if custom.chars().any(is_prohibited_char) {
-+ }) {
- return Err(());
- }
-
diff --git a/testing/firefox-developer-edition/avoid-redefinition.patch b/testing/firefox-developer-edition/avoid-redefinition.patch
deleted file mode 100644
index af11c50384a..00000000000
--- a/testing/firefox-developer-edition/avoid-redefinition.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-Author: Rasmus Thomsen <oss@cogitri.dev>
-Reason: FF is mixing userspace net headers (net/if.h) and kernelspace ones
-(linux/if.h), leading to redefinitions. We need to include net/if.h before
-linux/if.h because linux/if.h has redifinition guards whereas net/if.h doesnt
-Upstream: No
---- a/dom/media/webrtc/transport/third_party/nICEr/src/stun/addrs-netlink.c.orig 2020-07-28 19:24:32.359751046 +0200
-+++ b/dom/media/webrtc/transport/third_party/nICEr/src/stun/addrs-netlink.c 2020-07-28 19:24:37.856343751 +0200
-@@ -31,6 +31,7 @@
- */
-
- #if defined(LINUX)
-+#include <net/if.h>
- #include "addrs-netlink.h"
- #include <csi_platform.h>
- #include <assert.h>
diff --git a/testing/firefox-developer-edition/disable-neon-in-aom.patch b/testing/firefox-developer-edition/disable-neon-in-aom.patch
deleted file mode 100644
index 6df05a1e8a1..00000000000
--- a/testing/firefox-developer-edition/disable-neon-in-aom.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-Firefox (75) and AOM itself fail to build with NEON enabled. As such
-we should disable it for now.
-
-In file included from /home/buildozer/aports/community/firefox/src/firefox-75.0/third_party/aom/aom_dsp/arm/blend_a64_mask_neon.c:12:
-/home/buildozer/aports/community/firefox/src/firefox-75.0/third_party/aom/av1/common/arm/mem_neon.h: In function 'load_u8_8x8':
-/usr/lib/gcc/armv7-alpine-linux-musleabihf/9.3.0/include/arm_neon.h:10303:1: error: inlining failed in call to always_inline 'vld1_u8': target specific option mismatch
-10303 | vld1_u8 (const uint8_t * __a)
- | ^~~~~~~
---- a/media/libaom/moz.build 2020-04-09 08:20:14.608439591 +0200
-+++ b/media/libaom/moz.build 2020-04-09 08:20:21.801745246 +0200
-@@ -42,26 +42,6 @@
- ASFLAGS += [ '-I%s/media/libaom/config/linux/ia32/' % TOPSRCDIR ]
- LOCAL_INCLUDES += [ '/media/libaom/config/linux/ia32/' ]
- EXPORTS.aom += [ 'config/linux/ia32/config/aom_config.h' ]
--elif CONFIG['CPU_ARCH'] == 'arm':
-- EXPORTS.aom += files['ARM_EXPORTS']
-- ASFLAGS += [
-- '-I%s/media/libaom/config/linux/arm/' % TOPSRCDIR,
-- '-I%s/libaom' % OBJDIR,
-- ]
-- LOCAL_INCLUDES += [ '/media/libaom/config/linux/arm/' ]
-- EXPORTS.aom += [ 'config/linux/arm/config/aom_config.h' ]
--
-- SOURCES += files['ARM_SOURCES']
--
-- for f in SOURCES:
-- if f.endswith('neon.c'):
-- SOURCES[f].flags += CONFIG['VPX_ASFLAGS']
--
-- if CONFIG['OS_TARGET'] == 'Android':
-- # For cpu-features.h
-- LOCAL_INCLUDES += [
-- '%%%s/sources/android/cpufeatures' % CONFIG['ANDROID_NDK'],
-- ]
- else:
- # Generic C-only configuration
- EXPORTS.aom += files['GENERIC_EXPORTS']
-
-
diff --git a/testing/firefox-developer-edition/fix-fortify-system-wrappers.patch b/testing/firefox-developer-edition/fix-fortify-system-wrappers.patch
index 17cf7e303da..45c8a4c1233 100644
--- a/testing/firefox-developer-edition/fix-fortify-system-wrappers.patch
+++ b/testing/firefox-developer-edition/fix-fortify-system-wrappers.patch
@@ -1,13 +1,15 @@
The wrapper features.h gets pulled in by system headers causing thigns to
break. We work around it by simply not wrap features.h
---- ./config/system-headers.mozbuild.orig
-+++ ./config/system-headers.mozbuild
-@@ -229,7 +229,6 @@
- 'execinfo.h',
- 'extras.h',
- 'fcntl.h',
-- 'features.h',
- 'fenv.h',
- 'ffi.h',
- 'fibdef.h',
+diff --git a/config/system-headers.mozbuild b/config/system-headers.mozbuild
+index 07d48e7..d2ce2b2 100644
+--- a/config/system-headers.mozbuild
++++ b/config/system-headers.mozbuild
+@@ -225,7 +225,6 @@ system_headers = [
+ "execinfo.h",
+ "extras.h",
+ "fcntl.h",
+- "features.h",
+ "fenv.h",
+ "ffi.h",
+ "fibdef.h",
diff --git a/testing/firefox-developer-edition/icu74.patch b/testing/firefox-developer-edition/icu74.patch
new file mode 100644
index 00000000000..46c94451b53
--- /dev/null
+++ b/testing/firefox-developer-edition/icu74.patch
@@ -0,0 +1,38 @@
+https://bugzilla.mozilla.org/show_bug.cgi?id=1862601
+
+# HG changeset patch
+# User André Bargull <andre.bargull@gmail.com>
+# Date 1697435923 -7200
+# Node ID d5f3b0c4f08a426ce00a153c04e177eecb6820e2
+# Parent c63994f8259efdf6e745c960aa9e1409d5477049
+Bug xxx - Part 12: Add new line break classes. r?
+
+diff --git a/intl/lwbrk/LineBreaker.cpp b/intl/lwbrk/LineBreaker.cpp
+--- a/intl/lwbrk/LineBreaker.cpp
++++ b/intl/lwbrk/LineBreaker.cpp
+@@ -443,17 +443,23 @@ static int8_t GetClass(uint32_t u, LineB
+ /* JT = 34, [JT] */ CLASS_CHARACTER,
+ /* JV = 35, [JV] */ CLASS_CHARACTER,
+ /* CLOSE_PARENTHESIS = 36, [CP] */ CLASS_CLOSE_LIKE_CHARACTER,
+ /* CONDITIONAL_JAPANESE_STARTER = 37, [CJ] */ CLASS_CLOSE,
+ /* HEBREW_LETTER = 38, [HL] */ CLASS_CHARACTER,
+ /* REGIONAL_INDICATOR = 39, [RI] */ CLASS_CHARACTER,
+ /* E_BASE = 40, [EB] */ CLASS_BREAKABLE,
+ /* E_MODIFIER = 41, [EM] */ CLASS_CHARACTER,
+- /* ZWJ = 42, [ZWJ]*/ CLASS_CHARACTER};
++ /* ZWJ = 42, [ZWJ]*/ CLASS_CHARACTER,
++ /* AKSARA = 43, [AK] */ CLASS_CHARACTER,
++ /* AKSARA_PREBASE = 44, [AP] */ CLASS_CHARACTER,
++ /* AKSARA_START = 45, [AS] */ CLASS_CHARACTER,
++ /* VIRAMA_FINAL = 46, [VF] */ CLASS_CHARACTER,
++ /* VIRAMA = 47, [VI] */ CLASS_CHARACTER,
++ };
+
+ static_assert(U_LB_COUNT == mozilla::ArrayLength(sUnicodeLineBreakToClass),
+ "Gecko vs ICU LineBreak class mismatch");
+
+ auto cls = GetLineBreakClass(u);
+ MOZ_ASSERT(cls < mozilla::ArrayLength(sUnicodeLineBreakToClass));
+
+ // Overrides based on rules for the different line-break values given in
+
diff --git a/testing/firefox-developer-edition/lfs64.patch b/testing/firefox-developer-edition/lfs64.patch
new file mode 100644
index 00000000000..bae8b5d16d2
--- /dev/null
+++ b/testing/firefox-developer-edition/lfs64.patch
@@ -0,0 +1,35 @@
+force stat() instead of stat64() on 32-bit
+--
+--- a/xpcom/io/nsLocalFileUnix.h
++++ b/xpcom/io/nsLocalFileUnix.h
+@@ -21,7 +21,7 @@
+
+ // stat64 and lstat64 are deprecated on OS X. Normal stat and lstat are
+ // 64-bit by default on OS X 10.6+.
+-#if defined(HAVE_STAT64) && defined(HAVE_LSTAT64) && !defined(XP_DARWIN)
++#if 0 && defined(HAVE_STAT64) && defined(HAVE_LSTAT64) && !defined(XP_DARWIN)
+ # if defined(AIX)
+ # if defined STAT
+ # undef STAT
+--- a/mozglue/baseprofiler/core/shared-libraries-linux.cc
++++ b/mozglue/baseprofiler/core/shared-libraries-linux.cc
+@@ -178,7 +178,7 @@
+ return false;
+ }
+
+-#if defined(__x86_64__) || defined(__aarch64__) || \
++#if 1 || defined(__x86_64__) || defined(__aarch64__) || \
+ (defined(__mips__) && _MIPS_SIM == _ABI64) || \
+ !(defined(GP_OS_linux) || defined(GP_OS_android))
+
+--- a/security/sandbox/linux/broker/SandboxBrokerUtils.h
++++ b/security/sandbox/linux/broker/SandboxBrokerUtils.h
+@@ -15,7 +15,7 @@
+ // calls. We'll intercept those and handle them in the stat functions
+ // but must be sure to use the right structure layout.
+
+-#if defined(__NR_stat64) || defined(__NR_fstatat64)
++#if 0 && (defined(__NR_stat64) || defined(__NR_fstatat64) )
+ typedef struct stat64 statstruct;
+ # define statsyscall stat64
+ # define lstatsyscall lstat64
diff --git a/testing/firefox-developer-edition/mallinfo.patch b/testing/firefox-developer-edition/mallinfo.patch
deleted file mode 100644
index 7916a200ca2..00000000000
--- a/testing/firefox-developer-edition/mallinfo.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-diff --git a/xpcom/base/nsMemoryReporterManager.cpp b/xpcom/base/nsMemoryReporterManager.cpp
-index 865e1b5430..9a00dafecb 100644
---- a/xpcom/base/nsMemoryReporterManager.cpp
-+++ b/xpcom/base/nsMemoryReporterManager.cpp
-@@ -124,6 +124,7 @@ static MOZ_MUST_USE nsresult ResidentUniqueDistinguishedAmount(int64_t* aN) {
- return GetProcSelfSmapsPrivate(aN);
- }
-
-+#ifdef __GLIBC__
- # ifdef HAVE_MALLINFO
- # define HAVE_SYSTEM_HEAP_REPORTER 1
- static MOZ_MUST_USE nsresult SystemHeapSize(int64_t* aSizeOut) {
-@@ -143,6 +144,7 @@ static MOZ_MUST_USE nsresult SystemHeapSize(int64_t* aSizeOut) {
- return NS_OK;
- }
- # endif
-+#endif
-
- #elif defined(__DragonFly__) || defined(__FreeBSD__) || defined(__NetBSD__) || \
- defined(__OpenBSD__) || defined(__FreeBSD_kernel__)
diff --git a/testing/firefox-developer-edition/no-ccache-stats.patch b/testing/firefox-developer-edition/no-ccache-stats.patch
new file mode 100644
index 00000000000..fa8dddd9840
--- /dev/null
+++ b/testing/firefox-developer-edition/no-ccache-stats.patch
@@ -0,0 +1,13 @@
+prevents a call to ccache
+diff --git a/python/mozbuild/mozbuild/controller/building.py b/python/mozbuild/mozbuild/controller/building.py
+index bf7009a083..011c012e20 100644
+--- a/python/mozbuild/mozbuild/controller/building.py
++++ b/python/mozbuild/mozbuild/controller/building.py
+@@ -570,6 +570,7 @@ class BuildMonitor(MozbuildObject):
+ )
+
+ def ccache_stats(self, ccache=None):
++ return None
+ ccache_stats = None
+
+ if ccache is None:
diff --git a/testing/firefox-developer-edition/python-deps.patch b/testing/firefox-developer-edition/python-deps.patch
new file mode 100644
index 00000000000..276aff906ae
--- /dev/null
+++ b/testing/firefox-developer-edition/python-deps.patch
@@ -0,0 +1,12 @@
+diff --git a/python/sites/mach.txt b/python/sites/mach.txt
+index fa6a316..3ea31ca 100644
+--- a/python/sites/mach.txt
++++ b/python/sites/mach.txt
+@@ -97,5 +97,5 @@ pypi-optional:glean-sdk==56.0.0:telemetry will not be collected
+ # Mach gracefully handles the case where `psutil` is unavailable.
+ # We aren't (yet) able to pin packages in automation, so we have to
+ # support down to the oldest locally-installed version (5.4.2).
+-pypi-optional:psutil>=5.4.2,<=5.9.4:telemetry will be missing some data
+-pypi-optional:zstandard>=0.11.1,<=0.22.0:zstd archives will not be possible to extract
++pypi-optional:psutil>=5.4.2,<=5.10.0:telemetry will be missing some data
++pypi-optional:zstandard>=0.11.1,<=0.24.0:zstd archives will not be possible to extract
diff --git a/testing/firefox-developer-edition/rust-lto-thin.patch b/testing/firefox-developer-edition/rust-lto-thin.patch
new file mode 100644
index 00000000000..788fceab39f
--- /dev/null
+++ b/testing/firefox-developer-edition/rust-lto-thin.patch
@@ -0,0 +1,12 @@
+set rust crate lto to thin to not use fatlto for gkrust which fails sometimes
+--- a/config/makefiles/rust.mk
++++ b/config/makefiles/rust.mk
+@@ -92,7 +92,7 @@
+ # Never enable when coverage is enabled to work around https://github.com/rust-lang/rust/issues/90045.
+ ifndef MOZ_CODE_COVERAGE
+ ifeq (,$(findstring gkrust_gtest,$(RUST_LIBRARY_FILE)))
+-cargo_rustc_flags += -Clto$(if $(filter full,$(MOZ_LTO_RUST_CROSS)),=fat)
++cargo_rustc_flags += -Clto=thin
+ endif
+ # We need -Cembed-bitcode=yes for all crates when using -Clto.
+ RUSTFLAGS += -Cembed-bitcode=yes
diff --git a/testing/firefox-developer-edition/sandbox-sched_setscheduler.patch b/testing/firefox-developer-edition/sandbox-sched_setscheduler.patch
index 3163c9e61c6..ffdf12678bc 100644
--- a/testing/firefox-developer-edition/sandbox-sched_setscheduler.patch
+++ b/testing/firefox-developer-edition/sandbox-sched_setscheduler.patch
@@ -1,9 +1,9 @@
upstream bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1657849
+diff --git a/security/sandbox/linux/SandboxFilter.cpp b/security/sandbox/linux/SandboxFilter.cpp
+index ed958bc..9824433 100644
--- a/security/sandbox/linux/SandboxFilter.cpp
+++ b/security/sandbox/linux/SandboxFilter.cpp
-@@ -1694,10 +1694,10 @@
- return Allow();
- case __NR_sched_get_priority_min:
+@@ -1751,6 +1751,6 @@ class GMPSandboxPolicy : public SandboxPolicyCommon {
case __NR_sched_get_priority_max:
+ case __NR_sched_setscheduler:
return Allow();
@@ -12,5 +12,13 @@ upstream bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1657849
- case __NR_sched_setscheduler: {
+ case __NR_sched_getscheduler: {
Arg<pid_t> pid(0);
- return If(pid == 0, Allow()).Else(Trap(SchedTrap, nullptr));
+@@ -1926,3 +1926,2 @@ class RDDSandboxPolicy final : public SandboxPolicyCommon {
+ case __NR_sched_getscheduler:
+- case __NR_sched_setscheduler:
+ case __NR_sched_getattr:
+@@ -1932,2 +1931,5 @@ class RDDSandboxPolicy final : public SandboxPolicyCommon {
}
++ // sched_setscheduler gets special treatment here (bug 1657849):
++ case __NR_sched_setscheduler:
++ return Allow();
+
diff --git a/testing/firefox-developer-edition/vendor-prefs.js b/testing/firefox-developer-edition/vendor-prefs.js
index 3b750759eae..b98a03c166d 100644
--- a/testing/firefox-developer-edition/vendor-prefs.js
+++ b/testing/firefox-developer-edition/vendor-prefs.js
@@ -10,3 +10,10 @@ pref("browser.shell.checkDefaultBrowser", false);
// Don't disable our bundled extensions in the application directory
pref("extensions.autoDisableScopes", 11);
pref("extensions.shownSelectionUI", true);
+
+// Disable sponsored tiles from "Mozilla Tiles Service"
+pref("browser.topsites.contile.enabled", false);
+
+// Disable Widevine CDM support (doesn't work on musl anyway)
+pref("media.gmp-widevinecdm.visible", false);
+pref("media.gmp-widevinecdm.enabled", false);
diff --git a/testing/firehol/APKBUILD b/testing/firehol/APKBUILD
index ff780a5d20d..5005073320c 100644
--- a/testing/firehol/APKBUILD
+++ b/testing/firehol/APKBUILD
@@ -1,12 +1,12 @@
# Maintainer: François Chavant <alpine@mail.chavant.info>
pkgname=firehol
pkgver=3.1.7
-pkgrel=0
+pkgrel=2
pkgdesc="firewall for humans"
-url="https://firehol.org/"
+url="https://github.com/firehol/firehol"
arch="noarch"
license=" GPL-2.0-only"
-depends="bash iprange iproute2 ip6tables iptables"
+depends="bash iprange iproute2 iptables"
subpackages="$pkgname-doc $pkgname-openrc"
source="https://github.com/firehol/firehol/releases/download/v$pkgver/firehol-$pkgver.tar.bz2
firehol.initd
@@ -37,5 +37,7 @@ package() {
install -m 755 "$startdir/$pkgname.initd" "$pkgdir/etc/init.d/$pkgname"
}
-sha512sums="e80f8e52bd4e48d9f549d7efdea6eb600c128c2729f038e2a9bbebbbb9a0bf47d8ed911c1c32f9241071c65ed57b6a6bff77796a51378b11ddcf10f793e94064 firehol-3.1.7.tar.bz2
-7c2c3387b29ff0674e1c4ae500c8ea591388bf4aa3c4d72eaf3f2fcac1cf546e3e2ae026c2bf5e9c62b4f29f0a75e60c9a621bc0a6f78df22502dbbd9f9a2556 firehol.initd"
+sha512sums="
+e80f8e52bd4e48d9f549d7efdea6eb600c128c2729f038e2a9bbebbbb9a0bf47d8ed911c1c32f9241071c65ed57b6a6bff77796a51378b11ddcf10f793e94064 firehol-3.1.7.tar.bz2
+7c2c3387b29ff0674e1c4ae500c8ea591388bf4aa3c4d72eaf3f2fcac1cf546e3e2ae026c2bf5e9c62b4f29f0a75e60c9a621bc0a6f78df22502dbbd9f9a2556 firehol.initd
+"
diff --git a/testing/firewalld/APKBUILD b/testing/firewalld/APKBUILD
new file mode 100644
index 00000000000..a095a5db940
--- /dev/null
+++ b/testing/firewalld/APKBUILD
@@ -0,0 +1,84 @@
+# Contributor: Jordan ERNST <SecT0uch@sect0uch.world>
+# Maintainer: Jordan ERNST <SecT0uch@sect0uch.world>
+pkgname=firewalld
+pkgver=2.1.2
+pkgrel=0
+pkgdesc="Firewall daemon with D-Bus interface providing a dynamic firewall"
+url="https://github.com/firewalld/firewalld"
+arch="noarch"
+license="GPL-2.0-or-later"
+# checks produce errors (firewalld needs to be started)
+options="!check"
+depends="
+ dbus
+ nftables
+ py3-dbus
+ py3-gobject3
+ py3-nftables
+ "
+makedepends="
+ autoconf
+ desktop-file-utils
+ docbook-xsl
+ gettext
+ glib-dev
+ intltool
+ libxslt
+ "
+checkdepends="
+ iproute2-minimal
+ musl-locales
+ "
+subpackages="
+ $pkgname-bash-completion
+ $pkgname-doc
+ $pkgname-gui
+ $pkgname-lang
+ $pkgname-openrc
+ $pkgname-zsh-completion
+ "
+source="https://github.com/firewalld/firewalld/releases/download/v$pkgver/firewalld-$pkgver.tar.bz2
+ $pkgname.initd
+ "
+
+build() {
+ # Disable sytemd and iptables features
+ ./configure \
+ --sysconfdir=/etc \
+ --disable-systemd \
+ --without-systemd-unitdir \
+ --disable-rpmmacros \
+ --without-iptables \
+ --without-ip6tables \
+ --without-ebtables \
+ --without-ipset \
+ --without-iptables-restore \
+ --without-ip6tables-restore \
+ --without-ebtables-restore
+ make dist
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+
+ # Remove useless
+ rm -rf "$pkgdir"/etc/sysconfig/
+ rm -rf "$pkgdir"/etc/rc.d/
+
+ install -Dm 755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
+}
+
+gui() {
+ # Taken here: https://gitweb.gentoo.org/repo/gentoo.git/tree/net-firewall/firewalld/firewalld-1.2.1.ebuild#n181
+ pkgdesc="GUI tools and assets for $pkgname"
+ amove etc/xdg
+ amove usr/bin/firewall-applet
+ amove usr/bin/firewall-config
+ amove usr/share/applications
+ amove usr/share/icons
+}
+
+sha512sums="
+c2f107a917093fbd51448b954c98ccdb90c4a19880dc69d13f3e9f179cb271b3a67015e315f05ba3b0d0ccd1dc5c01d3737a6c7f91430667f6ee3b468785cd4f firewalld-2.1.2.tar.bz2
+7a3089c1e34f4b499f463e7adf5ca4f1137994290780ebb08cdcf8728f0933d7236d1aa202c6598c3033d4984d7e113dec102f3b617ad2b766271c60e151d930 firewalld.initd
+"
diff --git a/testing/firewalld/firewalld.initd b/testing/firewalld/firewalld.initd
new file mode 100644
index 00000000000..561a34f7607
--- /dev/null
+++ b/testing/firewalld/firewalld.initd
@@ -0,0 +1,12 @@
+#!/sbin/openrc-run
+# Copyright 1999-2018 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+description="FirewallD"
+command=/usr/sbin/firewalld
+pidfile=/run/firewalld.pid
+
+depend() {
+ need dbus
+ provide firewall
+}
diff --git a/testing/flamegraph/APKBUILD b/testing/flamegraph/APKBUILD
index 934f20475bc..b1ee61c4bf1 100644
--- a/testing/flamegraph/APKBUILD
+++ b/testing/flamegraph/APKBUILD
@@ -1,9 +1,9 @@
# Contributor: Rasmus Thomsen <oss@cogitri.dev>
-# Maintainer: Rasmus Thomsen <oss@cogitri.dev>
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=flamegraph
-pkgver=1.0_git20191025
-_commit=1a0dc6985aad06e76857cf2a354bd5ba0c9ce96b
-pkgrel=0
+pkgver=1.0_git20220918
+_commit=d9fcc272b6a08c3e3e5b7919040f0ab5f8952d65
+pkgrel=1
pkgdesc="Stack trace visualizer"
url="http://www.brendangregg.com/flamegraphs.html"
arch="noarch"
@@ -21,4 +21,6 @@ package() {
done
}
-sha512sums="b02719e6df9d371f03cc0d56c3451fdb361bd4dadd30929ed22d7ec813400fdb27b1961941233554bb653153d55b29da36def27b21325c6b4c2744f40652bddb flamegraph-1.0_git20191025.tar.gz"
+sha512sums="
+97d57a33f4759c122ec09fe421288b31cbd227c1d81b771c76379f33cd62e1e44f5ebbd1510483df18cf355cd3ddcfc44a7a47f9ae54f30ecdae34e776dc87f1 flamegraph-1.0_git20220918.tar.gz
+"
diff --git a/testing/flameshot/APKBUILD b/testing/flameshot/APKBUILD
index 667f86ef349..ed84e55378d 100644
--- a/testing/flameshot/APKBUILD
+++ b/testing/flameshot/APKBUILD
@@ -1,15 +1,21 @@
# Contributor: Leo <thinkabit.ukim@gmail.com>
# Maintainer:
pkgname=flameshot
-pkgver=11.0.0
-pkgrel=0
+pkgver=12.1.0
+pkgrel=3
pkgdesc="Featureful screenshot app"
options="!check" # No test suite
-url="https://github.com/lupoDharkael/flameshot"
-arch="all"
+url="https://github.com/flameshot-org/flameshot"
+arch="all !armhf" # kguiaddons
license="GPL-3.0-or-later"
depends="qt5-qtsvg"
-makedepends="cmake qt5-qtsvg-dev qt5-qttools-dev samurai"
+makedepends="
+ cmake
+ kguiaddons5-dev
+ qt5-qtsvg-dev
+ qt5-qttools-dev
+ samurai
+ "
subpackages="
$pkgname-lang
$pkgname-bash-completion
@@ -17,12 +23,9 @@ subpackages="
$pkgname-zsh-completion
$pkgname-doc
"
-source="$pkgname-$pkgver.tar.gz::https://github.com/lupoDharkael/flameshot/archive/v$pkgver.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/flameshot-org/flameshot/archive/v$pkgver.tar.gz"
langdir="/usr/share/flameshot/translations"
-# XXX: Temporarily allow textrels on riscv64.
-[ "$CARCH" = "riscv64" ] && options="$options textrels"
-
build() {
if [ "$CBUILD" != "$CHOST" ]; then
CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
@@ -30,20 +33,16 @@ build() {
cmake -B build -G Ninja \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_BUILD_TYPE=MinSizeRel \
+ -DUSE_WAYLAND_CLIPBOARD=ON \
+ -DENABLE_CACHE=OFF \
$CMAKE_CROSSOPTS
cmake --build build
}
package() {
DESTDIR="$pkgdir" cmake --install build
-
- mkdir -p "$pkgdir"/usr/share/fish/completions
- mv "$pkgdir"/usr/share/fish/vendor_completions.d/flameshot.fish \
- "$pkgdir"/usr/share/fish/completions
-
- rmdir "$pkgdir"/usr/share/fish/vendor_completions.d
}
sha512sums="
-de13f3c5bc18f164c6e37c0b3f42c8693d3ebfaba5f3d54360899df6479390e2a0c38970fa2595c9293304b4e52ca2198477f4f317abcb11df4c30a24ab1909f flameshot-11.0.0.tar.gz
+159bf3a8ff406b3881dcc77fc48d9e7cc0d595bd47ee2363396d7efc95f69160cf25ccf99cd1b2c2b527baeadf91c209784a7bca23ed5f17caacc385e161c83c flameshot-12.1.0.tar.gz
"
diff --git a/testing/flann/APKBUILD b/testing/flann/APKBUILD
index 74f33c5a279..2207baf6718 100644
--- a/testing/flann/APKBUILD
+++ b/testing/flann/APKBUILD
@@ -2,16 +2,16 @@
# Maintainer: Bradley J Chambers <brad.chambers@gmail.com>
pkgname=flann
pkgver=1.9.1
-pkgrel=3
+pkgrel=4
pkgdesc="Fast Library for Approximate Nearest Neighbors"
-url="https://github.com/mariusmuja/flann"
+url="https://github.com/flann-lib/flann"
arch="all"
license="BSD-3-Clause"
# FLANN tests are broken, test data is invalid
options="!check"
makedepends="cmake"
subpackages="$pkgname-doc $pkgname-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/mariusmuja/flann/archive/$pkgver.tar.gz
+source="$pkgname-$pkgver.tar.gz::https://github.com/flann-lib/flann/archive/$pkgver.tar.gz
cmake.patch"
build() {
diff --git a/testing/flannel/APKBUILD b/testing/flannel/APKBUILD
index 1ac918f9441..851c49bdb8b 100644
--- a/testing/flannel/APKBUILD
+++ b/testing/flannel/APKBUILD
@@ -2,30 +2,27 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=flannel
_pkgname=flanneld
-pkgver=0.17.0
-pkgrel=3
+pkgver=0.24.2
+pkgrel=2
pkgdesc="An etcd backed network fabric for containers"
-url="https://github.com/coreos/flannel"
+url="https://github.com/flannel-io/flannel"
arch="x86_64"
license="Apache-2.0"
+options="net chmod-clean"
makedepends="go linux-headers"
subpackages="$pkgname-openrc $pkgname-contrib-cni:contrib_cni:noarch"
source="$pkgname-$pkgver.tar.gz::https://github.com/flannel-io/flannel/archive/refs/tags/v$pkgver.tar.gz
-kube-flannel-bin-path.patch
$_pkgname.logrotated
$_pkgname.initd
$_pkgname.confd"
builddir="$srcdir/$pkgname-$pkgver"
-export GOPATH="$srcdir"
-
-prepare() {
- default_prepare
- mkdir -p $builddir/out
-}
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
build() {
- export GO111MODULE=on
+ mkdir -p out
go build \
-mod=readonly \
-ldflags "-s -w -X github.com/flannel-io/flannel/version.Version=$pkgver" \
@@ -52,22 +49,14 @@ contrib_cni() {
pkgdesc="$pkgname contrib cni config files"
mkdir -p "$subpkgdir"/etc/cni/net.d
install -Dm0755 "$builddir"/dist/mk-docker-opts.sh "$subpkgdir"/usr/bin/mk-docker-opts.sh
- install -Dm0755 "$builddir"/dist/iptables-wrapper-installer.sh "$subpkgdir"/usr/bin/iptables-wrapper-installer.sh
install -Dm0644 "$builddir"/Documentation/kube-flannel.yml \
"$subpkgdir"/etc/kube-flannel/kube-flannel.yml
- install -Dm0644 "$builddir"/Documentation/k8s-manifests/kube-flannel-legacy.yml \
+ install -Dm0644 "$builddir"/Documentation/k8s-old-manifests/kube-flannel-legacy.yml \
"$subpkgdir"/etc/kube-flannel/kube-flannel-legacy.tml
}
-cleanup_srcdir() {
- export GOPATH="$srcdir"
- go clean -modcache
- default_cleanup_srcdir
-}
-
sha512sums="
-f0625339e387a6ae81780d21025c282c2e0caf8b32ac778634a877a4e04ebf10d41fc10b50ae477c28815cedaf34af867b651ed5a8c5267177ea925abc6a1253 flannel-0.17.0.tar.gz
-398b7068c46b132b747cade43f7f718703f8b32ef7d59fb54da5105ab3fac97b81e0af69e13207ec7cd6fa42a266be8ec45213bf7853fdbc560fbaee4bb5966d kube-flannel-bin-path.patch
+eca5051815efbe90136d79e686e6fc070b68cb1331b97a8476a817b5e0c97b7d12742a5d5c403b75a1607fcd3752f16115105632358b035cba8af4f2f7e3d3e3 flannel-0.24.2.tar.gz
d84258a164adcec0f1cef7fcafcf0cadb3bf3959b393b905c4897274adeff476279ce96ec42e9aa9d574c6bd7d37649d92c7c52563975f85d303cade990a3942 flanneld.logrotated
3f6f33fe90adca1dd17b503ce0cd3a7f3cc0ca7fc10d0ca5b631f4c87ed513c0133dfd7679618cf95540b252b3176f9bbefd6454867ef792258c46cafc039d86 flanneld.initd
353b98bfc1a73d8f691b6f79489e0224961b5af8ca36ce2edde2d7a86790612de1d597c3455222f38a1c9f09b377e1bf3adfeedc04bd6b0b75c653a732d58988 flanneld.confd
diff --git a/testing/flannel/kube-flannel-bin-path.patch b/testing/flannel/kube-flannel-bin-path.patch
deleted file mode 100644
index fae3d476c35..00000000000
--- a/testing/flannel/kube-flannel-bin-path.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-diff --git a/Documentation/k8s-manifests/kube-flannel-legacy.yml b/Documentation/k8s-manifests/kube-flannel-legacy.yml
-index d79d85e..01df638 100644
---- a/Documentation/k8s-manifests/kube-flannel-legacy.yml
-+++ b/Documentation/k8s-manifests/kube-flannel-legacy.yml
-@@ -55,7 +55,7 @@ spec:
- - name: kube-flannel
- image: quay.io/coreos/flannel:v0.10.0-amd64
- command:
-- - /opt/bin/flanneld
-+ - /usr/bin/flanneld
- args:
- - --ip-masq
- - --kube-subnet-mgr
-diff --git a/Documentation/kube-flannel.yml b/Documentation/kube-flannel.yml
-index c7edaef..d41b884 100644
---- a/Documentation/kube-flannel.yml
-+++ b/Documentation/kube-flannel.yml
-@@ -182,7 +182,7 @@ spec:
- - name: kube-flannel
- image: quay.io/coreos/flannel:v0.14.0
- command:
-- - /opt/bin/flanneld
-+ - /usr/bin/flanneld
- args:
- - --ip-masq
- - --kube-subnet-mgr
diff --git a/testing/flare-engine/APKBUILD b/testing/flare-engine/APKBUILD
index 20862c85277..00f88f11500 100644
--- a/testing/flare-engine/APKBUILD
+++ b/testing/flare-engine/APKBUILD
@@ -2,8 +2,8 @@
# Contributor: Antoni Aloy <aaloytorrens@gmail.com>
# Maintainer: Díaz Urbaneja Diego <sodomon2@gmail.com>
pkgname=flare-engine
-pkgver=1.13.04
-pkgrel=1
+pkgver=1.14
+pkgrel=0
pkgdesc="Free/Libre Action Roleplaying Engine"
url="http://www.flarerpg.org/"
arch="all"
@@ -39,5 +39,5 @@ package() {
}
sha512sums="
-f16280cefbbcd4e9a1bcbe00bf7b17e66ea98f08987a0d3ade7053d5122409a17384f8d88e517def4bc86ebcf0131637f7b78d325c3c9b0def33e35bab601e6b flare-engine-1.13.04.tar.gz
+6033eb40b83763e670e1af2333fd8609f796746c51b7b07b7e5f99694954aad7ae7c80f44590bbca5316714cf0581e7326e6e707669e2341a953a8212a46d8d1 flare-engine-1.14.tar.gz
"
diff --git a/testing/flare-game/APKBUILD b/testing/flare-game/APKBUILD
index de0feec6cb2..b308bc9766d 100644
--- a/testing/flare-game/APKBUILD
+++ b/testing/flare-game/APKBUILD
@@ -1,6 +1,6 @@
# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
pkgname=flare-game
-pkgver=1.13.04
+pkgver=1.14
pkgrel=0
pkgdesc="Fantasy action RPG using the FLARE engine"
url="http://www.flarerpg.org/"
diff --git a/testing/flarectl/APKBUILD b/testing/flarectl/APKBUILD
deleted file mode 100644
index c36e8811888..00000000000
--- a/testing/flarectl/APKBUILD
+++ /dev/null
@@ -1,25 +0,0 @@
-# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
-# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
-pkgname=flarectl
-pkgver=0.40.0
-pkgrel=0
-pkgdesc="CLI application for interacting with a Cloudflare account"
-url="https://github.com/cloudflare/cloudflare-go/tree/master/cmd/flarectl"
-arch="all"
-license="BSD-3-Clause"
-makedepends="go"
-source="https://github.com/cloudflare/cloudflare-go/archive/refs/tags/v$pkgver/flarectl-$pkgver.tar.gz"
-builddir="$srcdir/cloudflare-go-$pkgver/cmd/flarectl"
-options="!check" # no testsuite provided
-
-build() {
- go build -o flarectl
-}
-
-package() {
- install -Dm755 flarectl -t "$pkgdir"/usr/bin
-}
-
-sha512sums="
-3a7ca8b77c300142c27b84380b8da2a96ed35a0f52e234636c6ac2312ec6280d493ccb2abccfce78546ae553b0b0156b95de5bc8a9c95e6f6fe59a55a19511a0 flarectl-0.40.0.tar.gz
-"
diff --git a/testing/flatpak-xdg-utils/APKBUILD b/testing/flatpak-xdg-utils/APKBUILD
new file mode 100644
index 00000000000..828c22b93f2
--- /dev/null
+++ b/testing/flatpak-xdg-utils/APKBUILD
@@ -0,0 +1,32 @@
+# Contributor: Jordan Christiansen <xordspar0@gmail.com>
+# Maintainer: Jordan Christiansen <xordspar0@gmail.com>
+pkgname=flatpak-xdg-utils
+pkgver=1.0.5
+pkgrel=0
+pkgdesc="Simple portal-based commandline tools for use inside flatpak sandboxes"
+url="https://github.com/flatpak/flatpak-xdg-utils"
+arch="all"
+license="LGPL-2.1-only"
+makedepends="meson glib-dev"
+checkdepends="dbus"
+source="https://github.com/flatpak/flatpak-xdg-utils/releases/download/$pkgver/flatpak-xdg-utils-$pkgver.tar.xz"
+
+build() {
+ abuild-meson \
+ . output
+ meson compile -C output
+}
+
+check() {
+ meson test --no-rebuild --print-errorlogs -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+ mv $pkgdir/usr/bin/xdg-email $pkgdir/usr/bin/flatpak-xdg-email
+ mv $pkgdir/usr/bin/xdg-open $pkgdir/usr/bin/flatpak-xdg-open
+}
+
+sha512sums="
+71c55cc01dc962c1b419821160626c46111ad672241f7627dbf780790d4f9f320151f479264ffc188334488f43dee8f4f7aa7754040e9c6231c200ea281f6439 flatpak-xdg-utils-1.0.5.tar.xz
+"
diff --git a/testing/flauschige-uhr/APKBUILD b/testing/flauschige-uhr/APKBUILD
index a1905ceed60..2f0f36f4043 100644
--- a/testing/flauschige-uhr/APKBUILD
+++ b/testing/flauschige-uhr/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: guddaff <guddaff@protonmail.com>
pkgname=flauschige-uhr
pkgver=0.1
-pkgrel=0
+pkgrel=1
pkgdesc="german fuzzy clock"
options="!check" #there are no checks
url="https://github.com/guddaff/flauschige-uh"
diff --git a/testing/flightgear/APKBUILD b/testing/flightgear/APKBUILD
index ee5e2cb6156..faa8563b570 100644
--- a/testing/flightgear/APKBUILD
+++ b/testing/flightgear/APKBUILD
@@ -1,9 +1,9 @@
# Contributor: Leonardo Arena <rnalrd@alpinelinux.org>
# Maintainer: Thomas Kienlen <kommander@laposte.net>
pkgname=flightgear
-pkgver=2020.3.12
+pkgver=2020.3.19
_pkgver=${pkgver%.*}
-pkgrel=1
+pkgrel=0
pkgdesc="Flight Gear Flight Simulator"
url="http://flightgear.org"
arch="all !riscv64 !x86 !armhf !armv7" # limited by openscenegraph and build compatibility
@@ -16,7 +16,7 @@ makedepends="
eudev-dev
freeglut-dev
glew-dev
- libexecinfo-dev
+ libevent-dev
libx11-dev
libxi-dev
libxmu-dev
@@ -26,7 +26,9 @@ makedepends="
plib
qt5-qtbase-dev
qt5-qtdeclarative-dev
+ qt5-qttools-dev
qt5-qtsvg-dev
+ samurai
simgear-dev=~$pkgver
zlib-dev
"
@@ -40,45 +42,46 @@ subpackages="
options="!check" # FIXME test suite does not get built
source="
https://downloads.sourceforge.net/project/flightgear/release-$_pkgver/flightgear-$pkgver.tar.bz2
+ no-execinfo.patch
musl-fenv.patch
musl-fix_error_h.patch
musl-fix_feenableexcept.patch
musl-fix_fpos_t.patch
musl-include-fcntl.patch
- musl-fix_backtrace.patch
flightgear-data-downloader.sh
"
build() {
- cmake \
- -D BUILD_TESTING=ON \
- -D CMAKE_BUILD_TYPE="Release" \
- -D CMAKE_EXE_LINKER_FLAGS=-lexecinfo \
+ # reduce size of debug syms
+ CFLAGS="$CFLAGS -g1" CXXFLAGS="$CXXFLAGS -g1" \
+ cmake -B build -G Ninja \
+ -D BUILD_TESTING="$(want_check && echo ON || echo OFF)" \
+ -D CMAKE_BUILD_TYPE=Release \
-D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_INSTALL_SYSCONFDIR=/etc/$pkgname \
-D FG_DATA_DIR=/var/lib/$pkgname \
- -D SimGear_DIR=/usr/lib/cmake/SimGear \
- .
- make
+ -D SimGear_DIR=/usr/lib/cmake/SimGear
+ cmake --build build
}
check() {
- make test
+ ninja -C build test
}
package() {
- make DESTDIR="$pkgdir" install
+ DESTDIR="$pkgdir" cmake --install build
install -Dm755 "$srcdir"/flightgear-data-downloader.sh "$pkgdir"/usr/bin/flightgear-data-downloader
+ sed -i -e "s/%FGDATA_VERSION%/$pkgver/" "$pkgdir"/usr/bin/flightgear-data-downloader
}
sha512sums="
-91e04ae6dc5d12e799bab10b3c4321e77f8d995469453453fdff26a9858f40056dbe8c095423397fcbef307994042c377eb37532af2732674f39e5624c950e9c flightgear-2020.3.12.tar.bz2
+ad5a4dd455a92bd9032c0f01084c0c114e4a91e60d53f200a754e54e1f8e08fd8e9008ea9f97f69410ee842fdc6c2210091d4ac5e5c6da6ba19f47e22438d207 flightgear-2020.3.19.tar.bz2
+34186d8ac64368bebed4f7564bc38df236b2c3e7870366240635c80c8a4ebce854e0ea30d9fc30f6f578acb86340dd2ee0d6dc1ce4b25c5a76129a8d8d4bf7df no-execinfo.patch
81ffb1ecfceae8d4ebb14717fb785118b3c290171245762cb4ab85be769582576147fe1b1b60fe854f4dd8079ebaf913da1585809ba9048d55f8710159c05614 musl-fenv.patch
b477510a102b0d01859ab39ddf7b5c4bcd3b80aa522320b2128095228b643d5e067dd61f8edbef7df7ed1a35aea647444126ba58eb39a82d294ae8a0f6e808e5 musl-fix_error_h.patch
29d12098c2581122234188cadd929238c41258bf347de2fcd30dabb46e398d19566e064b2a4267370bf7669c5dcde2c87ef1232b7b1a9ed27ad7885a26378b05 musl-fix_feenableexcept.patch
3a5d280bcd806fbdeb7b2f92435ffa7b44c420494ae658060624dfa34709a2b36448c1ca8c81bff1e4bb2878fa55200eb69535699062aff5286c7f640fbc3081 musl-fix_fpos_t.patch
89f871216cac9bf772c6f7a4d12d79ff73a38179547464ffa93ed24394309cb085719c0de5e2a82e2086e994cbf886a8763e4c577fdda476ddbab0e3e3dea4cd musl-include-fcntl.patch
-c9d680759fc163366d352bf7b96850a71303b427b0664a50e6ebc7bb11a2d4910cc18988cbc9c305f8a18307c8c2d739559a9358f7f682b34a5b41a126f35567 musl-fix_backtrace.patch
-e1e88f99e3ef2f6019e9f023ade8be40a2c509642a85ba6889746d9488c34d6a92eb0a045d9fc1d7e465c53dccd337a4506d6a91c6e9e5e09f4e39d75a4ce3be flightgear-data-downloader.sh
+fc350ca635981a0c0936aee13e11913c7f78cd31716ab1bf7edb060fc934a2b61913e722b32a9deacb19f2eef58f374a96fe9cc821cae7c38cf579d18adc860f flightgear-data-downloader.sh
"
diff --git a/testing/flightgear/flightgear-data-downloader.sh b/testing/flightgear/flightgear-data-downloader.sh
index e90e6da6ba2..b4b2c3ac411 100755
--- a/testing/flightgear/flightgear-data-downloader.sh
+++ b/testing/flightgear/flightgear-data-downloader.sh
@@ -1,9 +1,15 @@
#!/bin/sh
-FGDATA_VERSION=2020.3.11
+FGDATA_VERSION=%FGDATA_VERSION%
RELEASE_BRANCH=${FGDATA_VERSION%.*}
+if [ "$(id -u)" != '0' ]; then
+ echo "This script requires root privileges to store flightgear-data into /var/lib/flightgear folder."
+ exit 1
+fi
+
echo "Downloading Flightgear data (version $FGDATA_VERSION) ..."
+rm -rf /var/lib/flightgear
mkdir /var/lib/flightgear
curl -L https://sourceforge.net/projects/flightgear/files/release-$RELEASE_BRANCH/FlightGear-$FGDATA_VERSION-data.txz/download | tar -xJ --strip-components=1 -C /var/lib/flightgear -f -
echo 'Done.'
diff --git a/testing/flightgear/flightgear.post-install b/testing/flightgear/flightgear.post-install
index 7b3fdf69faa..abba2488a0b 100755
--- a/testing/flightgear/flightgear.post-install
+++ b/testing/flightgear/flightgear.post-install
@@ -2,7 +2,7 @@
echo
echo " Please download the flightgear-data-VERSION.tar.bz2 file at:"
echo
-echo " http://downloads.sourceforge.net/project/flightgear"
+echo " https://downloads.sourceforge.net/project/flightgear"
echo
echo " and extract it in /var/lib/flightgear"
echo " before running the program or change its location"
diff --git a/testing/flightgear/musl-fix_backtrace.patch b/testing/flightgear/musl-fix_backtrace.patch
deleted file mode 100644
index ddf8af58acd..00000000000
--- a/testing/flightgear/musl-fix_backtrace.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/src/Main/bootstrap.cxx
-+++ b/src/Main/bootstrap.cxx
-@@ -159,7 +159,7 @@ void segfault_handler(int signo) {
-
- fprintf(stderr, "Error: caught signal %d:\n", signo);
-
-- #ifndef __OpenBSD__
-+ #if defined(__GLIBC__)
- size = backtrace(array, 128);
- if (size) {
- char** list = backtrace_symbols(array, size);
diff --git a/testing/flightgear/no-execinfo.patch b/testing/flightgear/no-execinfo.patch
new file mode 100644
index 00000000000..83e6302058f
--- /dev/null
+++ b/testing/flightgear/no-execinfo.patch
@@ -0,0 +1,21 @@
+diff --git a/src/Main/bootstrap.cxx b/src/Main/bootstrap.cxx
+index f9eb159..958aa8a 100755
+--- a/src/Main/bootstrap.cxx
++++ b/src/Main/bootstrap.cxx
+@@ -193,7 +193,6 @@ bool checkUniversalCRTVersion()
+ #endif
+
+ #if defined(__GNUC__)
+-#include <execinfo.h>
+ #include <cxxabi.h>
+ void segfault_handler(int signo) {
+ void *array[128];
+@@ -201,7 +200,7 @@ void segfault_handler(int signo) {
+
+ fprintf(stderr, "Error: caught signal %d:\n", signo);
+
+- #ifndef __OpenBSD__
++ #if defined(__GLIBC__)
+ size = backtrace(array, 128);
+ if (size) {
+ char** list = backtrace_symbols(array, size);
diff --git a/testing/flint/APKBUILD b/testing/flint/APKBUILD
index 1790db25fce..3940308490d 100755..100644
--- a/testing/flint/APKBUILD
+++ b/testing/flint/APKBUILD
@@ -1,38 +1,51 @@
# Contributor: Alex Yam <alex@alexyam.com>
+# Contributor: Grigory Kirillov <txgk@bk.ru>
# Maintainer: Alex Yam <alex@alexyam.com>
pkgname=flint
-pkgver=2.7.1
+pkgver=2.9.0
pkgrel=1
pkgdesc="C library in support of computations in number theory"
url="https://www.flintlib.org/"
-arch="all"
+# s390x: https://github.com/wbhart/flint2/issues/1184
+arch="all !s390x"
license="LGPL-2.1-or-later"
makedepends="
cmake
gmp-dev
+ libntl-dev
mpfr-dev
- blas-dev
+ openblas-dev
python3
+ samurai
"
subpackages="$pkgname-dev"
-source="https://www.flintlib.org/flint-$pkgver.tar.gz"
+source="https://www.flintlib.org/flint-$pkgver.tar.gz
+ fix-sdiv_qrnnd-test.patch"
build() {
- cmake -B build \
- -DCMAKE_BUILD_TYPE=None \
+ # Project uses cpu_set_t type extensively throughout the codebase
+ # and sometimes without defining _GNU_SOURCE.
+ # Patching all this seems too operose...
+ export CFLAGS="$CFLAGS -D_GNU_SOURCE"
+
+ cmake -G Ninja -B build \
+ -DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
+ -DWITH_NTL=ON \
-DBUILD_TESTING=ON
cmake --build build
}
check() {
- cd build
- CTEST_OUTPUT_ON_FAILURE=TRUE ctest
+ ctest -j4 --output-on-failure --test-dir build
}
package() {
- DESTDIR="$pkgdir" cmake --build build --target install
+ DESTDIR="$pkgdir" cmake --install build
}
-sha512sums="abea97228e91089d82a9a44714e719064bef261c45f5f5b24700955bb841cc98a8182e04e6054fcbcaa3bd92f2f95a82bd5d168ec2171af6a58d4f71eb0a479a flint-2.7.1.tar.gz"
+sha512sums="
+e213f0d5b4d03195357253593b2e0c2f04ef07b1cc24b302ad0e995f92aa9e0fa8beb1709db58ed1fff039ea88b0ce2acda3b6123f61dcf11852399b74a71364 flint-2.9.0.tar.gz
+092f9b035167c80d6f862c7bda278effe3c8321a4a606be5375a17c381ce46d5f2135f747594f6ebdf761d3f11604b1da46eaa650cda9034be46c17e48fad4f9 fix-sdiv_qrnnd-test.patch
+"
diff --git a/testing/flint/fix-sdiv_qrnnd-test.patch b/testing/flint/fix-sdiv_qrnnd-test.patch
new file mode 100644
index 00000000000..4b8ac7e818b
--- /dev/null
+++ b/testing/flint/fix-sdiv_qrnnd-test.patch
@@ -0,0 +1,22 @@
+From fb8ddbcc06afa2a8f25637032fbb8211f6c6c122 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Albin=20Ahlb=C3=A4ck?= <albin.ahlback@gmail.com>
+Date: Fri, 20 May 2022 14:16:38 +0200
+Subject: [PATCH] Fix bug in test code for GCC 12
+
+---
+ test/t-sdiv_qrnnd.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/test/t-sdiv_qrnnd.c b/test/t-sdiv_qrnnd.c
+index 2e9822e848..2676903826 100644
+--- a/test/t-sdiv_qrnnd.c
++++ b/test/t-sdiv_qrnnd.c
+@@ -33,7 +33,7 @@ int main(void)
+ {
+ d = n_randtest_not_zero(state);
+ nh = n_randtest(state);
+- } while ((FLINT_ABS(nh) >= FLINT_ABS(d)/2) || (nh == WORD_MIN));
++ } while ((nh == WORD_MIN) || (FLINT_ABS(nh) >= FLINT_ABS(d)/2));
+
+ nl = n_randtest(state);
+
diff --git a/testing/flintqs/APKBUILD b/testing/flintqs/APKBUILD
new file mode 100644
index 00000000000..a0c36ed9ee6
--- /dev/null
+++ b/testing/flintqs/APKBUILD
@@ -0,0 +1,41 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
+pkgname=flintqs
+pkgver=1.0
+pkgrel=1
+pkgdesc="Highly optimized multi-polynomial quadratic sieve for integer factorization"
+url="https://github.com/sagemath/FlintQS"
+arch="all"
+license="GPL-2.0-or-later"
+makedepends="autoconf automake gmp-dev libtool"
+source="https://github.com/sagemath/FlintQS/archive/v$pkgver/flintqs-v$pkgver.tar.gz"
+builddir="$srcdir/FlintQS-$pkgver"
+
+prepare() {
+ default_prepare
+ touch ChangeLog
+ autoreconf -fi
+}
+
+build() {
+ export CFLAGS="${CFLAGS/-Os/-O3}" # gotta go fast
+
+ ./configure \
+ --target="$CTARGET" \
+ --build="$CBUILD" \
+ --host="$CHOST" \
+ --prefix=/usr
+ make
+}
+
+check() {
+ echo 1000000000000000000000000000000000000000 | ./src/QuadraticSieve
+}
+
+package() {
+ install -Dm755 src/QuadraticSieve "$pkgdir"/usr/bin/QuadraticSieve
+}
+
+sha512sums="
+5be6422d1d666ffddf4fd29db761c4c5b6c196c3a4b2b62071e6ed0df9ef8645cbae4da6d01ca9bc1dfa1ffc680b7b9683f0f4291767af986f9fef6c0a37b793 flintqs-v1.0.tar.gz
+"
diff --git a/testing/flowd/APKBUILD b/testing/flowd/APKBUILD
index 919161738b5..2b3c5b6f433 100644
--- a/testing/flowd/APKBUILD
+++ b/testing/flowd/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Valery Kartel <valery.kartel@gmail.com>
pkgname=flowd
pkgver=0.9.1
-pkgrel=7
+pkgrel=9
pkgdesc="Small, fast and secure NetFlow collector"
url="https://www.mindrot.org/projects/flowd/"
arch="all"
@@ -15,7 +15,9 @@ subpackages="$pkgname-dev $pkgname-doc $pkgname-openrc
source="https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/$pkgname/$pkgname-$pkgver.tar.gz
fix_path.patch
fix_user.patch
- $pkgname.initd"
+ format-security.patch
+ $pkgname.initd
+ "
# Packages remove ddue to depending on python2
replaces="$pkgname-tools $pkgname-rrd py-$pkgname"
@@ -66,7 +68,10 @@ _perldoc() {
install_if="docs perl-$pkgname=$pkgver-r$pkgrel"
}
-sha512sums="c86d810de9a163206525c4ac12029d650209a370213d701d38b0e7ea746e087d2a0f80ab1657ccca87851cdf64628813666028e267529d6b7391b63542230967 flowd-0.9.1.tar.gz
+sha512sums="
+c86d810de9a163206525c4ac12029d650209a370213d701d38b0e7ea746e087d2a0f80ab1657ccca87851cdf64628813666028e267529d6b7391b63542230967 flowd-0.9.1.tar.gz
427a0b690519ddeb28da581ba7740faa6de9c6baf40ba285ad82f5652def3c950c8b080ca677de9748eea6cc1c2c5ab38559a139655e6cb176b021a5a9d5d912 fix_path.patch
5264f4e913464c7cd6957ea4ef2a458551e3b52c66d1b709e90bfbe014327b72fbff52e282acbf6a2222972ca96f5908410f6ab51c3d8a161e9eef111634d8f2 fix_user.patch
-68cfe2ea07eb981c02660f5c05018308c164705f52c0c1d90bdacc45ec993dca971439c60b02f5ba3e521c8730e54d968a31af1eddfe6924d39d33c50843836b flowd.initd"
+f3478a308ab1bae77c6469a8ebd74f9a91bbaeca6562ef5dbfd791556d8c05620b04a7b9ae1607b1d4c777a32af052c56aad1ca39b8fdc040449999de103565c format-security.patch
+68cfe2ea07eb981c02660f5c05018308c164705f52c0c1d90bdacc45ec993dca971439c60b02f5ba3e521c8730e54d968a31af1eddfe6924d39d33c50843836b flowd.initd
+"
diff --git a/testing/flowd/format-security.patch b/testing/flowd/format-security.patch
new file mode 100644
index 00000000000..9dbebc0a487
--- /dev/null
+++ b/testing/flowd/format-security.patch
@@ -0,0 +1,13 @@
+diff --git a/Flowd-perl/Flowd.xs b/Flowd-perl/Flowd.xs
+index 3b72d9b..1f0a5c0 100644
+--- a/Flowd-perl/Flowd.xs
++++ b/Flowd-perl/Flowd.xs
+@@ -70,7 +70,7 @@ void deserialise(...)
+ buf = (char *)SvPV(ST(0), len);
+ r = store_flow_deserialise(buf, len, &flow, ebuf, sizeof(ebuf));
+ if (r != STORE_ERR_OK)
+- croak(ebuf);
++ croak("%s", ebuf);
+
+ fields = ntohl(flow.hdr.fields);
+
diff --git a/testing/fluent-bit/10-def-core-stack-size.patch b/testing/fluent-bit/10-def-core-stack-size.patch
deleted file mode 100644
index 29bda6feb6e..00000000000
--- a/testing/fluent-bit/10-def-core-stack-size.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- a/include/fluent-bit/flb_coro.h
-+++ b/include/fluent-bit/flb_coro.h
-@@ -62,9 +62,7 @@
- void *data;
- };
-
--#ifdef FLB_CORO_STACK_SIZE
--#define FLB_CORO_STACK_SIZE FLB_CORO_STACK_SIZE
--#else
-+#ifndef FLB_CORO_STACK_SIZE
- #define FLB_CORO_STACK_SIZE ((3 * PTHREAD_STACK_MIN) / 2)
- #endif
-
diff --git a/testing/fluent-bit/APKBUILD b/testing/fluent-bit/APKBUILD
index 8fd4eed132d..c7387096b67 100644
--- a/testing/fluent-bit/APKBUILD
+++ b/testing/fluent-bit/APKBUILD
@@ -1,19 +1,25 @@
# Contributor: wener <wenermail@gmail.com>
# Maintainer: wener <wenermail@gmail.com>
pkgname=fluent-bit
-pkgver=1.8.13
+pkgver=2.1.10
pkgrel=0
pkgdesc="Fast and Lightweight Log processor and forwarder"
url="https://fluentbit.io/"
# riscv64: does not support bundled luajit
-arch="all !ppc64le !s390x !riscv64"
+# arm: doesn't build
+arch="all !armhf !armv7 !ppc64le !s390x !riscv64"
license="Apache-2.0"
+# XXX:
+# wamr, sqlite, rdkafka, c-ares, luajit are bundled
makedepends="
bison
cmake
flex
- fts-dev
gtest-dev
+ linux-headers
+ musl-fts-dev
+ openssl-dev
+ yaml-dev
zlib-dev
"
subpackages="
@@ -21,11 +27,10 @@ subpackages="
$pkgname-openrc
"
source="$pkgname-$pkgver.tar.gz::https://github.com/fluent/fluent-bit/archive/v$pkgver.tar.gz
- fluent-bit.confd
fluent-bit.initd
chunkio-static-lib-fts.patch
- 10-def-core-stack-size.patch
- stream_suffix.patch
+ exclude-luajit.patch
+ xsi-strerror.patch
"
# enable check when this solved - https://github.com/fluent/fluent-bit/issues/2464#issuecomment-673280055
options="!check"
@@ -58,17 +63,14 @@ package() {
install -Dm755 "$srcdir"/$pkgname.initd \
"$pkgdir"/etc/init.d/$pkgname
- install -Dm644 "$srcdir"/$pkgname.confd \
- "$pkgdir"/etc/conf.d/$pkgname
mv "$pkgdir"/usr/etc/* "$pkgdir"/etc
}
sha512sums="
-ee62102e31ae218a916d96b0ac1e42cbdc4889437947baaceaad1205b71de149cee72b42b3a91a05eab60ddd2250c007483ba2707306212b33ad8d4eb64b1fd4 fluent-bit-1.8.13.tar.gz
-f6431397c80a036980b5377b51e38aec25dfceeb8dbe4cd54dce1f6e77d669d9f8daf983fcc96d25332385888f1809ced5e8ab0e8ccfcd93d19494036e3dc949 fluent-bit.confd
-8ba6c8e84dee90176f9b4375fb2c6444fa5d32fa601d9bcf3ea7960fec87f1ef664f175caf08bd0b052843e971efdbf08e2a5cd180ad9a8f23ff2c5cb233814f fluent-bit.initd
+55caefa81cdeaf293b727829383c6eaa75bc2f8b8c61ebe15e1478c66033921fde6e50c39fc8c39a7d2d93d03892f709daf4d1b6caacf586133de5268de10299 fluent-bit-2.1.10.tar.gz
+e17c8b7d09b524855167baf3a3766c5420181370cdd1d21133e7c18d7316b224a6c0aa240be26d3d0443d91247a82759161f7ad12f142b4b84924da5694a61e6 fluent-bit.initd
6bd7d8b4da93a17f29b6ea1e0286ea226d0e376024284741110936779b3229bd8d6cd03ffbdc5d3b4842294e7f32a888de0dd16b0851b65d91b062ca58530ea0 chunkio-static-lib-fts.patch
-cecfa26e240491ed059f27e209eec8408514f0a59c2b5287fe837daba01179c15c33e8bc88e3bbe95ff39810f7fef6ef806643efbd84fb6dd86a3a7e188a319d 10-def-core-stack-size.patch
-9dc413422a5c12534d962e47b41387a589023b952eca86270fd58b12ea2d309c00d683f826f089618b4b774bd791e954da6d4f60bed7e42d6626ad44853c1a7d stream_suffix.patch
+e3308a8377fb8ba496415b7a31e9e022e5aa9965d27a0c33ea5166a29049b72cb364bbcdf9d8611ef3407b0968f9bd4adff12cdb39728bbebd382710e5bc75d0 exclude-luajit.patch
+d61f30344af997f126486fa5b34cd3fbfe88bfc9aea394a8c60d0206f4db8db998eadf637a3a581b89512411c1e7980c414e236e455d5e2b889d20a556ee6577 xsi-strerror.patch
"
diff --git a/testing/fluent-bit/exclude-luajit.patch b/testing/fluent-bit/exclude-luajit.patch
new file mode 100644
index 00000000000..b4df3383283
--- /dev/null
+++ b/testing/fluent-bit/exclude-luajit.patch
@@ -0,0 +1,12 @@
+otherwise it installs an unused /usr/bin/luajit ....
+-0
+diff --git a/cmake/luajit.cmake b/cmake/luajit.cmake
+index b6774eb..f8042ae 100644
+--- a/cmake/luajit.cmake
++++ b/cmake/luajit.cmake
+@@ -1,4 +1,4 @@
+ # luajit cmake
+ option(LUAJIT_DIR "Path of LuaJIT 2.1 source dir" ON)
+ set(LUAJIT_DIR ${FLB_PATH_ROOT_SOURCE}/${FLB_PATH_LIB_LUAJIT})
+-add_subdirectory("lib/luajit-cmake")
++add_subdirectory("lib/luajit-cmake" EXCLUDE_FROM_ALL)
diff --git a/testing/fluent-bit/fluent-bit.confd b/testing/fluent-bit/fluent-bit.confd
deleted file mode 100644
index 01ce1799ac1..00000000000
--- a/testing/fluent-bit/fluent-bit.confd
+++ /dev/null
@@ -1 +0,0 @@
-fluentbit_opts="-c /etc/fluent-bit/fluent-bit.conf"
diff --git a/testing/fluent-bit/fluent-bit.initd b/testing/fluent-bit/fluent-bit.initd
index e1059d8a963..84c5806e381 100644
--- a/testing/fluent-bit/fluent-bit.initd
+++ b/testing/fluent-bit/fluent-bit.initd
@@ -1,9 +1,12 @@
#!/sbin/openrc-run
-supervisor=supervise-daemon
+
+: ${cfgfile:="/etc/fluent-bit/fluent-bit.conf"}
name=fluent-bit
command="/usr/bin/fluent-bit"
-command_args="$fluentbit_opts"
+command_args="-c $cfgfile $fluentbit_opts"
+command_background="yes"
+pidfile="/run/fluent-bit.pid"
depend() {
need net
diff --git a/testing/fluent-bit/stream_suffix.patch b/testing/fluent-bit/stream_suffix.patch
deleted file mode 100644
index ab234d93f10..00000000000
--- a/testing/fluent-bit/stream_suffix.patch
+++ /dev/null
@@ -1,189 +0,0 @@
-From 26c796fc6fb6b65a1a4ec92acf272e763a756c80 Mon Sep 17 00:00:00 2001
-From: Brian Maher <bmaher@onetrust.com>
-Date: Wed, 25 Aug 2021 06:13:57 -0700
-Subject: [PATCH] aws: Rename struct process stdin,stdout,stderr to fix build
-
-Added _stream suffix to all to avoid issues when these are declared as macros.
-
-Signed-off-by: Brian Maher <bmaher@onetrust.com>
----
- src/aws/flb_aws_credentials_process.c | 78 +++++++++++++--------------
- 1 file changed, 39 insertions(+), 39 deletions(-)
-
-diff --git a/src/aws/flb_aws_credentials_process.c b/src/aws/flb_aws_credentials_process.c
-index d3e775f0dd..44c024ca77 100644
---- a/src/aws/flb_aws_credentials_process.c
-+++ b/src/aws/flb_aws_credentials_process.c
-@@ -414,9 +414,9 @@ static int waitpid_timeout(char* name, pid_t pid, int* wstatus)
- struct process {
- int initialized;
- char** args;
-- int stdin;
-- flb_pipefd_t stdout[2];
-- int stderr;
-+ int stdin_stream;
-+ flb_pipefd_t stdout_stream[2];
-+ int stderr_stream;
- pid_t pid;
- };
-
-@@ -433,35 +433,35 @@ static int new_process(struct process* p, char** args)
- *p = (struct process) {
- .initialized = FLB_TRUE,
- .args = args,
-- .stdin = -1,
-- .stdout = {-1, -1},
-- .stderr = -1,
-+ .stdin_stream = -1,
-+ .stdout_stream = {-1, -1},
-+ .stderr_stream = -1,
- .pid = -1,
- };
-
-- while ((p->stdin = open(DEV_NULL, O_RDONLY|O_CLOEXEC)) < 0) {
-+ while ((p->stdin_stream = open(DEV_NULL, O_RDONLY|O_CLOEXEC)) < 0) {
- if (errno != EINTR) {
- flb_errno();
- return -1;
- }
- }
-
-- if (flb_pipe_create(p->stdout) < 0) {;
-+ if (flb_pipe_create(p->stdout_stream) < 0) {;
- flb_errno();
- return -1;
- }
-
-- if (fcntl(p->stdout[0], F_SETFL, O_CLOEXEC) < 0) {
-+ if (fcntl(p->stdout_stream[0], F_SETFL, O_CLOEXEC) < 0) {
- flb_errno();
- return -1;
- }
-
-- if (fcntl(p->stdout[1], F_SETFL, O_CLOEXEC) < 0) {
-+ if (fcntl(p->stdout_stream[1], F_SETFL, O_CLOEXEC) < 0) {
- flb_errno();
- return -1;
- }
-
-- while ((p->stderr = open(DEV_NULL, O_WRONLY|O_CLOEXEC)) < 0) {
-+ while ((p->stderr_stream = open(DEV_NULL, O_WRONLY|O_CLOEXEC)) < 0) {
- if (errno != EINTR) {
- flb_errno();
- return -1;
-@@ -479,26 +479,26 @@ static int new_process(struct process* p, char** args)
- */
- static void exec_process_child(struct process* p)
- {
-- while ((dup2(p->stdin, STDIN_FILENO) < 0)) {
-+ while ((dup2(p->stdin_stream, STDIN_FILENO) < 0)) {
- if (errno != EINTR) {
- return;
- }
- }
-- while ((dup2(p->stdout[1], STDOUT_FILENO) < 0)) {
-+ while ((dup2(p->stdout_stream[1], STDOUT_FILENO) < 0)) {
- if (errno != EINTR) {
- return;
- }
- }
-- while ((dup2(p->stderr, STDERR_FILENO) < 0)) {
-+ while ((dup2(p->stderr_stream, STDERR_FILENO) < 0)) {
- if (errno != EINTR) {
- return;
- }
- }
-
-- close(p->stdin);
-- flb_pipe_close(p->stdout[0]);
-- flb_pipe_close(p->stdout[1]);
-- close(p->stderr);
-+ close(p->stdin_stream);
-+ flb_pipe_close(p->stdout_stream[0]);
-+ flb_pipe_close(p->stdout_stream[1]);
-+ close(p->stderr_stream);
-
- execvp(p->args[0], p->args);
- }
-@@ -525,14 +525,14 @@ static int exec_process(struct process* p)
- exit(EXIT_FAILURE);
- }
-
-- close(p->stdin);
-- p->stdin = -1;
-+ close(p->stdin_stream);
-+ p->stdin_stream = -1;
-
-- flb_pipe_close(p->stdout[1]);
-- p->stdout[1] = -1;
-+ flb_pipe_close(p->stdout_stream[1]);
-+ p->stdout_stream[1] = -1;
-
-- close(p->stderr);
-- p->stderr = -1;
-+ close(p->stderr_stream);
-+ p->stderr_stream = -1;
-
- return 0;
- }
-@@ -549,7 +549,7 @@ static int read_from_process(struct process* p, struct readbuf* buf)
- struct flb_time start, timeout, deadline, now, remaining;
- int remaining_ms;
-
-- if (fcntl(p->stdout[0], F_SETFL, O_NONBLOCK) < 0) {
-+ if (fcntl(p->stdout_stream[0], F_SETFL, O_NONBLOCK) < 0) {
- flb_errno();
- return -1;
- }
-@@ -567,7 +567,7 @@ static int read_from_process(struct process* p, struct readbuf* buf)
-
- while (1) {
- pfd = (struct pollfd) {
-- .fd = p->stdout[0],
-+ .fd = p->stdout_stream[0],
- .events = POLLIN,
- };
-
-@@ -617,7 +617,7 @@ static int read_from_process(struct process* p, struct readbuf* buf)
- }
-
- if ((pfd.revents & POLLIN) == POLLIN || (pfd.revents & POLLHUP) == POLLHUP) {
-- result = read_until_block(p->args[0], p->stdout[0], buf);
-+ result = read_until_block(p->args[0], p->stdout_stream[0], buf);
- if (result <= 0) {
- return result;
- }
-@@ -664,21 +664,21 @@ static int wait_process(struct process* p)
- static void destroy_process(struct process* p)
- {
- if (p->initialized) {
-- if (p->stdin >= 0) {
-- close(p->stdin);
-- p->stdin = -1;
-+ if (p->stdin_stream >= 0) {
-+ close(p->stdin_stream);
-+ p->stdin_stream = -1;
- }
-- if (p->stdout[0] >= 0) {
-- close(p->stdout[0]);
-- p->stdout[0] = -1;
-+ if (p->stdout_stream[0] >= 0) {
-+ close(p->stdout_stream[0]);
-+ p->stdout_stream[0] = -1;
- }
-- if (p->stdout[1] >= 0) {
-- close(p->stdout[1]);
-- p->stdout[1] = -1;
-+ if (p->stdout_stream[1] >= 0) {
-+ close(p->stdout_stream[1]);
-+ p->stdout_stream[1] = -1;
- }
-- if (p->stderr >= 0) {
-- close(p->stderr);
-- p->stderr = -1;
-+ if (p->stderr_stream >= 0) {
-+ close(p->stderr_stream);
-+ p->stderr_stream = -1;
- }
-
- if (p->pid > 0) {
diff --git a/testing/fluent-bit/xsi-strerror.patch b/testing/fluent-bit/xsi-strerror.patch
new file mode 100644
index 00000000000..527de20992a
--- /dev/null
+++ b/testing/fluent-bit/xsi-strerror.patch
@@ -0,0 +1,15 @@
+--- a/src/flb_network.c
++++ b/src/flb_network.c
+@@ -523,9 +523,10 @@
+ }
+
+ /* Connection is broken, not much to do here */
+- str = strerror_r(error, so_error_buf, sizeof(so_error_buf));
++ /* XXX: XSI */
++ int _err = strerror_r(error, so_error_buf, sizeof(so_error_buf));
+ flb_error("[net] TCP connection failed: %s:%i (%s)",
+- u->tcp_host, u->tcp_port, str);
++ u->tcp_host, u->tcp_port, so_error_buf);
+ return -1;
+ }
+ }
diff --git a/testing/fluffychat/APKBUILD b/testing/fluffychat/APKBUILD
new file mode 100644
index 00000000000..cd6d7571f2a
--- /dev/null
+++ b/testing/fluffychat/APKBUILD
@@ -0,0 +1,323 @@
+# Contributor: lauren n. liberda <lauren@selfisekai.rocks>
+# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
+pkgname=fluffychat
+pkgver=1.19.1
+pkgrel=0
+pkgdesc="Open source, nonprofit and cute Matrix messenger app"
+url="https://fluffychat.im/"
+arch="aarch64 x86_64" # flutter
+license="AGPL-3.0-only"
+# XXX: dart ffi does not generate from our headers,
+# works on hardcoded sonames
+# zenity: pub/file_picker
+depends="
+ so:libolm.so.3
+ so:libsqlite3.so.0
+ zenity
+ "
+makedepends="
+ alsa-lib-dev
+ aom-dev
+ brotli-dev
+ crc32c-dev
+ clang
+ dav1d-dev
+ ffmpeg-dev
+ flutter-desktop
+ fontconfig-dev
+ freetype-dev
+ glib-dev
+ gn
+ harfbuzz-dev
+ icu-dev
+ jsoncpp-dev
+ libavif-dev
+ libdrm-dev
+ libevent-dev
+ libjpeg-turbo-dev
+ libpng-dev
+ libsecret-dev
+ libwebp-dev
+ libvpx-dev
+ libxml2-dev
+ libxslt-dev
+ lld
+ llvm
+ olm-dev
+ openh264-dev
+ opus-dev
+ patchelf
+ pipewire-dev
+ pulseaudio-dev
+ re2-dev
+ snappy-dev
+ woff2-dev
+ zlib-dev
+ "
+_webrtcver=b951613befee9e718798dad97c98a299e1518328
+_fwwebrtcver=1cb24a45af87a99a513f72951673fcf814a5ecb0
+source="
+ https://github.com/krille-chan/fluffychat/archive/${_rev:-"refs/tags/v$pkgver"}/fluffychat-${_rev:-v"$pkgver"}.tar.gz
+ https://ab-sn.lnl.gay/fwebrtc-$_webrtcver.tar.zst
+ https://github.com/webrtc-sdk/libwebrtc/archive/$_fwwebrtcver/fwwebrtc-$_fwwebrtcver.tar.gz
+
+ system-flutter.patch
+ no-werror.patch
+
+ wrapper.patch.webrtc
+ gcc13.patch.webrtc
+ use-alpine-target.patch.webrtc
+ no-upgrade-debug-info.patch.webrtc
+ toolhack.patch.webrtc
+ sqlite-soname.patch.noauto
+ still-hive.patch
+ no-sqlcipher.patch.noauto
+
+ fluffychat.desktop
+ "
+[ "$_rev" = "" ] || builddir="$srcdir/fluffychat-$_rev"
+# net: pub dependencies
+# !check: no tests
+options="net !check"
+
+case "$CARCH" in
+ aarch64) _flutter_arch="arm64" ;;
+ x86_64) _flutter_arch="x64" ;;
+esac
+
+export PUB_CACHE="$srcdir/pub_cache"
+
+export CFLAGS="${CFLAGS/-g/} -O2 -Wno-error -Wno-unknown-warning-option -Wno-unused-command-line-argument"
+export CXXFLAGS="${CXXFLAGS/-g/} -O2 -Wno-error -Wno-unknown-warning-option -Wno-unused-command-line-argument"
+
+export CC=clang
+export CXX=clang++
+export AR=llvm-ar
+export NM=llvm-nm
+export LD=clang++
+
+# webrtc
+snapshot() {
+ mkdir -p "$srcdir"
+ cd "$srcdir"
+
+ # cleanup if retrying
+ rm -rf src
+ rm -rf fwebrtc-$_webrtcver
+ rm -f fwebrtc-$_webrtcver.tar
+ rm -f fwebrtc-$_webrtcver.tar.zst
+
+ echo "
+solutions = [{
+ 'name': 'src',
+ 'url': 'https://github.com/webrtc-sdk/webrtc.git@$_webrtcver',
+}]
+target_cpu = ['x64', 'arm64']
+target_cpu_only = True
+" > .gclient
+
+ gclient sync --no-history --nohooks --tpot-cipd-ignore-platformed
+
+ # needed DEPS hooks
+ python3 'src/build/landmines.py' --landmine-scripts 'src/tools_webrtc/get_landmines.py' --src-dir 'src'
+ python3 'src/build/util/lastchange.py' -o 'src/build/util/LASTCHANGE'
+
+ for elf in $(scanelf -RA -F "%F" src); do
+ rm -f "$elf"
+ done
+
+ find src -type f -path 'test_data' -delete
+ find src -type f -path 'testdata' -delete
+ find src -type f -path 'ChangeLog*' -delete
+ rm -rf third_party/blink/web_tests
+
+ mv src fwebrtc-$_webrtcver
+
+ msg "generating tarball.."
+ tar -cf fwebrtc-$_webrtcver.tar \
+ --exclude-backups \
+ --exclude-caches-all \
+ --exclude-vcs \
+ fwebrtc-$_webrtcver
+
+ zstd --auto-threads=logical --ultra --long -22 -T"${ZSTD_LIMIT:-0}" -vv fwebrtc-$_webrtcver.tar
+}
+
+prepare() {
+ default_prepare
+
+ msg "Applying more patches"
+ for x in $source; do
+ case "$x" in
+ *.patch.webrtc)
+ msg "$x"
+ patch -p1 -i "$srcdir"/$x -d "$srcdir"/fwebrtc-$_webrtcver
+ ;;
+ esac
+ done
+
+ (
+ cd "$srcdir"/fwebrtc-$_webrtcver
+
+ ln -sv "$srcdir"/libwebrtc-$_fwwebrtcver libwebrtc
+
+ local use_system="
+ brotli
+ crc32c
+ dav1d
+ ffmpeg
+ fontconfig
+ freetype
+ harfbuzz-ng
+ icu
+ jsoncpp
+ libaom
+ libavif
+ libdrm
+ libevent
+ libjpeg
+ libpng
+ libvpx
+ libwebp
+ libxml
+ libxslt
+ openh264
+ opus
+ re2
+ snappy
+ woff2
+ zlib
+ "
+ for _lib in $use_system libjpeg_turbo; do
+ msg "Removing buildscripts for system provided $_lib"
+ find . -type f -path "*third_party/$_lib/*" \
+ \! -path "*third_party/$_lib/chromium/*" \
+ \! -path "*third_party/$_lib/google/*" \
+ \! -path './third_party/libxml/*' \
+ \! -path './third_party/harfbuzz-ng/utils/hb_scoped.h' \
+ \! -regex '.*\.\(gn\|gni\|isolate\|py\)' \
+ -delete
+ done
+
+ msg "Replacing gn files"
+ python3 build/linux/unbundle/replace_gn_files.py --system-libraries \
+ $use_system
+
+ # allow system dependencies in "official builds"
+ sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
+ tools/generate_shim_headers/generate_shim_headers.py
+
+ mkdir path
+ ln -sv /usr/bin/python3 path/vpython3
+
+ # requires py3-setuptools to always print 0...
+ echo 'print(0)' > build/mac/should_use_hermetic_xcode.py
+ )
+
+
+ flutter pub get --enforce-lockfile
+
+ # if there is a binary in the pub_cache, we sure did not build it.
+ for elf in $(scanelf -RA -F "%F" "$PUB_CACHE"); do
+ rm -f "$elf"
+ done
+
+ patch -p1 -d "$srcdir" -i "$srcdir"/sqlite-soname.patch.noauto
+ rm "$PUB_CACHE"/hosted/pub.dev/sqlite3-*/assets/sqlite3.h
+ patch -p1 -d "$srcdir" -i "$srcdir"/no-sqlcipher.patch.noauto
+
+ # use our build of the webrtc wrapper
+ _fvwrtc="$(echo "$PUB_CACHE"/hosted/pub.dev/flutter_webrtc-*/third_party/libwebrtc)"
+ rm -rf $_fvwrtc
+ mkdir -p $_fvwrtc
+ ln -sv "$srcdir"/fwebrtc-$_webrtcver/kut $_fvwrtc/lib
+ ln -sv "$srcdir"/libwebrtc-$_fwwebrtcver/include $_fvwrtc/include
+}
+
+build() {
+ (
+ cd "$srcdir"/fwebrtc-$_webrtcver
+
+ # shellcheck disable=2089
+ local webrtc_args="
+ build_with_mozilla=false
+ chrome_pgo_phase=0
+ clang_use_chrome_plugins=false
+ clang_base_path=\"/usr\"
+ custom_toolchain=\"//build/toolchain/linux/unbundle:default\"
+ is_cfi=false
+ is_clang=true
+ is_debug=false
+ is_official_build=true
+ host_toolchain=\"//build/toolchain/linux/unbundle:default\"
+ libwebrtc_desktop_capture=false
+ proprietary_codecs=true
+ rtc_build_examples=false
+ rtc_build_tools=false
+ rtc_enable_protobuf=false
+ rtc_enable_sctp=false
+ rtc_include_tests=false
+ rtc_include_ilbc=false
+ rtc_libvpx_build_vp9=true
+ rtc_link_pipewire=true
+ rtc_use_pipewire=true
+ rtc_use_x11=false
+ symbol_level=0
+ use_custom_libcxx=false
+ use_sysroot=false
+ "
+
+ msg "Building libwebrtc"
+ # shellcheck disable=2090,2116
+ gn gen out --args="$(echo $webrtc_args)"
+ ninja -C out libwebrtc
+
+ mkdir -p kut/linux-$_flutter_arch
+ cp -v out/libwebrtc.so kut/linux-$_flutter_arch/libwebrtc.so
+ )
+
+ flutter build linux -v --release
+
+ patchelf --set-rpath '$ORIGIN/lib' build/linux/"$_flutter_arch"/release/bundle/$pkgname
+ for _elf in build/linux/"$_flutter_arch"/release/bundle/lib/lib*.so; do
+ # running patchelf on libapp (the AOT snapshot of the whole Dart codebase)
+ # breaks it with "[FATAL:flutter/runtime/dart_vm_initializer.cc(89)]
+ # Error while initializing the Dart VM: Invalid vm isolate snapshot seen".
+ #
+ # it has no rpath and only links to libc soname anyway. 🤷â€â™€ï¸
+ [ "$(basename "$_elf")" != "libapp.so" ] || continue
+
+ patchelf --set-rpath '$ORIGIN' "$_elf"
+ done
+}
+
+package() {
+ local bundle="$builddir"/build/linux/$_flutter_arch/release/bundle
+
+ install -Dm755 "$bundle"/$pkgname "$pkgdir"/usr/lib/$pkgname/$pkgname
+ cp -rv "$bundle"/lib "$pkgdir"/usr/lib/$pkgname/lib
+ cp -rv "$bundle"/data "$pkgdir"/usr/lib/$pkgname/data
+
+ mkdir -p "$pkgdir"/usr/bin
+ ln -sv /usr/lib/$pkgname/$pkgname "$pkgdir"/usr/bin/$pkgname
+
+ install -Dm644 "$srcdir"/$pkgname.desktop "$pkgdir"/usr/share/applications/$pkgname.desktop
+ install -Dm644 assets/logo.svg "$pkgdir"/usr/share/icons/hicolor/scalable/apps/im.fluffychat.Fluffychat.svg
+}
+
+sha512sums="
+102428eea072932de1d76726daca6d481a927403f63b6d7c87e742207192c0f11055377c9ebee8bfab149f06383a19666974d8a65857ccf96131facf56437e2b fluffychat-v1.19.1.tar.gz
+749cadd3309ba1c18203989bf3986944a4279d654c68cc6f3a4902719806004911e114fb2c5061ceaec8220474cd3f7d76a4db870202494d36d266934b6cd9e0 fwebrtc-b951613befee9e718798dad97c98a299e1518328.tar.zst
+7fc9a0ae14d396a9b6dbd969eaa060eff58e659d4c2d5ef6201bf29d64fbbf6b54d1927f8997c02803ee799eb34aa13d48a4502be291c1d17b0cbbd083998cb7 fwwebrtc-1cb24a45af87a99a513f72951673fcf814a5ecb0.tar.gz
+91014708ab7bb81518ce93db0612209d6479dfa503064d9e9d3186cd5e861165a3f63e286d271d5aac8a1d676868fc3acf51648ac01c16a215062a317ccb6623 system-flutter.patch
+1d2b7d28a09e26ed48d89aa5f5dffb738ba367fa2760b12980225239705e16fa1ec89901d7aecf26c8527de721a5f50f50cc77ea009cd5f25f219d1af8730ed8 no-werror.patch
+158360223539c6d80b32f17d2277473292e579255609a231719d1eaddb5f258fe36421801e5ce0fedb6fe86e01e46a7a77421abc800bdfaad59ffdcfe5273aa2 wrapper.patch.webrtc
+70251f951c4477e602c2e21a1a092e48e47133968fbfeb369178bc888b69c91027560ebb2c925d6b25a6b2ba6a6007523c2c42fa46fc7fbc27e727793ab52034 gcc13.patch.webrtc
+d9988e1c381030a79d0fa6567e098ee94234b66af96dbf2d0a2af7a33bdd98d4dd08bbe2eeaf4f08e44f1d22319464f9b0ed5bc96cdb76c238086f9ef4af6b76 use-alpine-target.patch.webrtc
+72fc71028a46f23c4d494eae22e100f048cd04071518532d5a839642d19cf8718592e7b93b4d15d40502c1a5e88d55cb3212c0edec8a3598f2d9fb2cb4f287c5 no-upgrade-debug-info.patch.webrtc
+2db3cf7759bd6902e0ce4d64441318bee7436aa272501113a3b6f0ebcf810d72760f875a3bd309fd612d6d4fde9e92e7319fa053fd0f34a793cfa026ced08fc5 toolhack.patch.webrtc
+d203a992da2f15beafb7bb1cff12bd2e365d81c0e3bd2c8caee4d34df64ba545aeae1f0d38df095b6859065065cdabe69e1e3fa89524083ae71b0a2abda2914b sqlite-soname.patch.noauto
+371859a0315ea7d79ab8fa749994f90445f18cec7c5a516fb69e264a94517d498e5bf2e3bfdd4e1257b9a82c3d065d41163a032a62f665d60713751586d470ec still-hive.patch
+7ac42cd22ea4f422c788d98ee5a9bc04a3a5d6687fa3f39f61330c369d78ef6446bf99f8f088d063d977634991c0948a6ec2026cf817d6f54314ed57131d89a0 no-sqlcipher.patch.noauto
+c4b3c2ab656da666623a8269ae47d841bfa58153097106efbef7b7895e7845bfed0513442ac355b42b6804b4a68c597079bf4147e72c57a1906ba5b65e3150f8 fluffychat.desktop
+"
diff --git a/testing/fluffychat/fluffychat.desktop b/testing/fluffychat/fluffychat.desktop
new file mode 100644
index 00000000000..578126c3e8e
--- /dev/null
+++ b/testing/fluffychat/fluffychat.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Type=Application
+Name=Fluffychat
+Icon=im.fluffychat.Fluffychat
+Exec=fluffychat %U
+Categories=Network;InstantMessaging;Chat;VideoConference;
+Keywords=Matrix;Chat;Messenger;Social
+X-Purism-FormFactor=Workstation;Mobile;
diff --git a/testing/fluffychat/gcc13.patch.webrtc b/testing/fluffychat/gcc13.patch.webrtc
new file mode 100644
index 00000000000..7acc82d104f
--- /dev/null
+++ b/testing/fluffychat/gcc13.patch.webrtc
@@ -0,0 +1,10 @@
+--- ./rtc_base/system/file_wrapper.h.orig
++++ ./rtc_base/system/file_wrapper.h
+@@ -12,6 +12,7 @@
+ #define RTC_BASE_SYSTEM_FILE_WRAPPER_H_
+
+ #include <stddef.h>
++#include <stdint.h>
+ #include <stdio.h>
+
+ #include <string>
diff --git a/testing/fluffychat/no-sqlcipher.patch.noauto b/testing/fluffychat/no-sqlcipher.patch.noauto
new file mode 100644
index 00000000000..c5e4b3ecce2
--- /dev/null
+++ b/testing/fluffychat/no-sqlcipher.patch.noauto
@@ -0,0 +1,49 @@
+--- ./pub_cache/hosted/pub.dev/sqlcipher_flutter_libs-0.6.1/linux/CMakeLists.txt.orig
++++ ./pub_cache/hosted/pub.dev/sqlcipher_flutter_libs-0.6.1/linux/CMakeLists.txt
+@@ -7,14 +7,9 @@
+ set(PLUGIN_NAME "sqlcipher_flutter_libs_plugin")
+
+ option(OPENSSL_USE_STATIC_LIBS "Whether to prefer linking to OpenSSL statically" ON)
+-find_package(OpenSSL REQUIRED)
+
+-# Using a prebuilt sqlcipher amalgation because building it requires TCL/TK which no one has.
+-file(DOWNLOAD "https://storage.googleapis.com/simon-public-euw3/assets/sqlcipher/v4_5_6.c" "${CMAKE_CURRENT_BINARY_DIR}/sqlcipher.c" EXPECTED_HASH SHA512=939ae692239adc0581211a37ed9ffa8b37c8f771c830977ecb06dc6accc4c3db767ce6abeaf91133815e2ae837785affa92f4c95b2e68cb6d563bd761f3e0cb1)
+-
+ add_library(${PLUGIN_NAME} SHARED
+ "sqlite3_flutter_libs_plugin.cc"
+- "${CMAKE_CURRENT_BINARY_DIR}/sqlcipher.c"
+ )
+
+ # Not applying the standard settings because we compile sqlite3
+@@ -27,30 +22,4 @@
+ target_compile_definitions(${PLUGIN_NAME} PRIVATE FLUTTER_PLUGIN_IMPL)
+ target_include_directories(${PLUGIN_NAME} INTERFACE
+ "${CMAKE_CURRENT_SOURCE_DIR}/include")
+-target_link_libraries(${PLUGIN_NAME} PRIVATE flutter OpenSSL::Crypto)
+-
+-# Note: Keep in sync with https://github.com/simolus3/sqlite-native-libraries/blob/master/sqlite3-native-library/cpp/CMakeLists.txt
+-# SQLITE_HAS_CODEC is required for sqlcipher
+-target_compile_definitions(${PLUGIN_NAME} PRIVATE
+- SQLITE_HAS_CODEC
+- SQLITE_DQS=0
+- SQLITE_THREADSAFE=1
+- SQLITE_DEFAULT_MEMSTATUS=0
+- SQLITE_TEMP_STORE=2
+- SQLITE_MAX_EXPR_DEPTH=0
+- SQLITE_OMIT_AUTHORIZATION
+- SQLITE_OMIT_DECLTYPE
+- SQLITE_OMIT_DEPRECATED
+- SQLITE_OMIT_GET_TABLE
+- SQLITE_OMIT_LOAD_EXTENSION
+- SQLITE_OMIT_PROGRESS_CALLBACK
+- SQLITE_OMIT_SHARED_CACHE
+- SQLITE_OMIT_TCL_VARIABLE
+- SQLITE_OMIT_TRACE
+- SQLITE_USE_ALLOCA
+- SQLITE_UNTESTABLE
+- SQLITE_HAVE_ISNAN
+- SQLITE_ENABLE_FTS5
+- SQLITE_ENABLE_JSON1
+- SQLITE_ENABLE_RTREE
+-)
++target_link_libraries(${PLUGIN_NAME} PRIVATE flutter)
diff --git a/testing/fluffychat/no-upgrade-debug-info.patch.webrtc b/testing/fluffychat/no-upgrade-debug-info.patch.webrtc
new file mode 100644
index 00000000000..04a57fd5197
--- /dev/null
+++ b/testing/fluffychat/no-upgrade-debug-info.patch.webrtc
@@ -0,0 +1,11 @@
+--- ./build/config/compiler/BUILD.gn.orig
++++ ./build/config/compiler/BUILD.gn
+@@ -732,7 +732,7 @@
+ # toolchain has this flag.
+ # We only use one version of LLVM within a build so there's no need to
+ # upgrade debug info, which can be expensive since it runs the verifier.
+- ldflags += [ "-Wl,-mllvm,-disable-auto-upgrade-debug-info" ]
++ #ldflags += [ "-Wl,-mllvm,-disable-auto-upgrade-debug-info" ]
+ }
+ }
+
diff --git a/testing/fluffychat/no-werror.patch b/testing/fluffychat/no-werror.patch
new file mode 100644
index 00000000000..ec8df348612
--- /dev/null
+++ b/testing/fluffychat/no-werror.patch
@@ -0,0 +1,11 @@
+--- ./linux/CMakeLists.txt.orig
++++ ./linux/CMakeLists.txt
+@@ -41,7 +41,7 @@
+ # of modifying this function.
+ function(APPLY_STANDARD_SETTINGS TARGET)
+ target_compile_features(${TARGET} PUBLIC cxx_std_14)
+- target_compile_options(${TARGET} PRIVATE -Wall -Werror)
++ target_compile_options(${TARGET} PRIVATE -Wall)
+ target_compile_options(${TARGET} PRIVATE "$<$<NOT:$<CONFIG:Debug>>:-O3>")
+ target_compile_definitions(${TARGET} PRIVATE "$<$<NOT:$<CONFIG:Debug>>:NDEBUG>")
+ endfunction()
diff --git a/testing/fluffychat/sqlite-soname.patch.noauto b/testing/fluffychat/sqlite-soname.patch.noauto
new file mode 100644
index 00000000000..a6ab1f6273e
--- /dev/null
+++ b/testing/fluffychat/sqlite-soname.patch.noauto
@@ -0,0 +1,11 @@
+--- ./pub_cache/hosted/pub.dev/sqlite3-2.3.0/lib/src/ffi/load_library.dart.orig
++++ ./pub_cache/hosted/pub.dev/sqlite3-2.3.0/lib/src/ffi/load_library.dart
+@@ -49,7 +49,7 @@
+ }
+
+ // Fall-back to system's libsqlite3 otherwise.
+- return DynamicLibrary.open('libsqlite3.so');
++ return DynamicLibrary.open('libsqlite3.so.0');
+ } else if (Platform.isIOS) {
+ try {
+ return DynamicLibrary.open('sqlite3.framework/sqlite3');
diff --git a/testing/fluffychat/still-hive.patch b/testing/fluffychat/still-hive.patch
new file mode 100644
index 00000000000..fd5a6d758e0
--- /dev/null
+++ b/testing/fluffychat/still-hive.patch
@@ -0,0 +1,90 @@
+From 1026d4c721546ff88a725a1605350e1d14aaef36 Mon Sep 17 00:00:00 2001
+From: The one with the braid <info@braid.business>
+Date: Wed, 10 Apr 2024 18:07:46 +0200
+Subject: [PATCH] fix: migrate back to Hive on Linux
+
+Signed-off-by: The one with the braid <info@braid.business>
+---
+ lib/utils/client_manager.dart | 7 +++-
+ .../builder.dart | 34 +++++++++++++------
+ 2 files changed, 30 insertions(+), 11 deletions(-)
+
+diff --git a/lib/utils/client_manager.dart b/lib/utils/client_manager.dart
+index f798e8737..155cd48ed 100644
+--- a/lib/utils/client_manager.dart
++++ b/lib/utils/client_manager.dart
+@@ -22,6 +22,7 @@ import 'matrix_sdk_extensions/flutter_matrix_dart_sdk_database/builder.dart';
+
+ abstract class ClientManager {
+ static const String clientNamespace = 'im.fluffychat.store.clients';
++
+ static Future<List<Client>> getClients({
+ bool initialize = true,
+ required SharedPreferences store,
+@@ -113,7 +114,11 @@ abstract class ClientManager {
+ },
+ logLevel: kReleaseMode ? Level.warning : Level.verbose,
+ databaseBuilder: flutterMatrixSdkDatabaseBuilder,
+- legacyDatabaseBuilder: FlutterHiveCollectionsDatabase.databaseBuilder,
++ // workaround : migrate back from SQLite to Hive on Linux
++ // Related : https://github.com/krille-chan/fluffychat/issues/972
++ legacyDatabaseBuilder: PlatformInfos.isLinux
++ ? (client) => flutterMatrixSdkDatabaseBuilder(client, isLegacy: true)
++ : FlutterHiveCollectionsDatabase.databaseBuilder,
+ supportedLoginTypes: {
+ AuthenticationTypes.password,
+ AuthenticationTypes.sso,
+diff --git a/lib/utils/matrix_sdk_extensions/flutter_matrix_dart_sdk_database/builder.dart b/lib/utils/matrix_sdk_extensions/flutter_matrix_dart_sdk_database/builder.dart
+index 301d0c6ee..55d7fbedc 100644
+--- a/lib/utils/matrix_sdk_extensions/flutter_matrix_dart_sdk_database/builder.dart
++++ b/lib/utils/matrix_sdk_extensions/flutter_matrix_dart_sdk_database/builder.dart
+@@ -18,9 +18,15 @@ import 'cipher.dart';
+ import 'sqlcipher_stub.dart'
+ if (dart.library.io) 'package:sqlcipher_flutter_libs/sqlcipher_flutter_libs.dart';
+
+-Future<DatabaseApi> flutterMatrixSdkDatabaseBuilder(Client client) async {
++Future<DatabaseApi> flutterMatrixSdkDatabaseBuilder(
++ Client client, {
++ bool isLegacy = false,
++}) async {
+ MatrixSdkDatabase? database;
+ try {
++ // unless it's the migration builder, always fall back onto Hive on Linux
++ if (PlatformInfos.isLinux && !isLegacy) throw UnimplementedError();
++
+ database = await _constructDatabase(client);
+ await database.open();
+ return database;
+@@ -34,15 +40,23 @@ Future<DatabaseApi> flutterMatrixSdkDatabaseBuilder(Client client) async {
+ ),
+ );
+
+- // Send error notification:
+- final l10n = lookupL10n(PlatformDispatcher.instance.locale);
+- ClientManager.sendInitNotification(
+- l10n.initAppError,
+- l10n.databaseBuildErrorBody(
+- AppConfig.newIssueUrl.toString(),
+- e.toString(),
+- ),
+- );
++ final bool hideErrorMessage = PlatformInfos.isLinux;
++ if (!hideErrorMessage) {
++ // Send error notification:
++ final l10n = lookupL10n(PlatformDispatcher.instance.locale);
++ ClientManager.sendInitNotification(
++ l10n.initAppError,
++ l10n.databaseBuildErrorBody(
++ AppConfig.newIssueUrl.toString(),
++ e.toString(),
++ ),
++ );
++ } else {
++ Logs().w(
++ 'Linux database error using SQfLite. Due to many issues in this implementation, falling back to Hive.',
++ e,
++ );
++ }
+
+ return FlutterHiveCollectionsDatabase.databaseBuilder(client);
+ }
diff --git a/testing/fluffychat/system-flutter.patch b/testing/fluffychat/system-flutter.patch
new file mode 100644
index 00000000000..e8f7270ec9a
--- /dev/null
+++ b/testing/fluffychat/system-flutter.patch
@@ -0,0 +1,15 @@
+--- a/linux/CMakeLists.txt
++++ b/linux/CMakeLists.txt
+@@ -110,12 +110,6 @@
+ install(TARGETS ${BINARY_NAME} RUNTIME DESTINATION "${CMAKE_INSTALL_PREFIX}"
+ COMPONENT Runtime)
+
+-install(FILES "${FLUTTER_ICU_DATA_FILE}" DESTINATION "${INSTALL_BUNDLE_DATA_DIR}"
+- COMPONENT Runtime)
+-
+-install(FILES "${FLUTTER_LIBRARY}" DESTINATION "${INSTALL_BUNDLE_LIB_DIR}"
+- COMPONENT Runtime)
+-
+ foreach(bundled_library ${PLUGIN_BUNDLED_LIBRARIES})
+ install(FILES "${bundled_library}"
+ DESTINATION "${INSTALL_BUNDLE_LIB_DIR}"
diff --git a/testing/fluffychat/toolhack.patch.webrtc b/testing/fluffychat/toolhack.patch.webrtc
new file mode 100644
index 00000000000..4028fe2d896
--- /dev/null
+++ b/testing/fluffychat/toolhack.patch.webrtc
@@ -0,0 +1,22 @@
+this breaks the clang include path
+--
+--- a/build/config/compiler/BUILD.gn
++++ a/build/config/compiler/BUILD.gn
+@@ -1310,7 +1310,7 @@
+ # paths to the tools it invokes. We don't want this because we don't
+ # really need it and it can mess up the goma cache entries.
+ if (is_clang && (!is_nacl || is_nacl_saigo)) {
+- cflags += [ "-no-canonical-prefixes" ]
++ #cflags += [ "-no-canonical-prefixes" ]
+
+ # Same for links: Let the compiler driver invoke the linker
+ # with a relative path and pass relative paths to built-in
+@@ -1319,7 +1319,7 @@
+ # We don't link on goma, so this change is just for cleaner
+ # internal linker invocations, for people who work on the build.
+ if (!is_win) {
+- ldflags += [ "-no-canonical-prefixes" ]
++ #ldflags += [ "-no-canonical-prefixes" ]
+ }
+ }
+ }
diff --git a/testing/fluffychat/use-alpine-target.patch.webrtc b/testing/fluffychat/use-alpine-target.patch.webrtc
new file mode 100644
index 00000000000..948bce889f7
--- /dev/null
+++ b/testing/fluffychat/use-alpine-target.patch.webrtc
@@ -0,0 +1,15 @@
+--- ./build/config/compiler/BUILD.gn.orig
++++ ./build/config/compiler/BUILD.gn
+@@ -1022,8 +1022,8 @@
+ } else if (current_cpu == "arm64") {
+ if (is_clang && !is_android && !is_nacl && !is_fuchsia &&
+ !(is_chromeos_lacros && is_chromeos_device)) {
+- cflags += [ "--target=aarch64-linux-gnu" ]
+- ldflags += [ "--target=aarch64-linux-gnu" ]
++ cflags += [ "--target=aarch64-alpine-linux-musl" ]
++ ldflags += [ "--target=aarch64-alpine-linux-musl" ]
+ }
+ if (is_high_end_android) {
+ cflags += [ "-march=armv8-a+lse" ]
+
+
diff --git a/testing/fluffychat/wrapper.patch.webrtc b/testing/fluffychat/wrapper.patch.webrtc
new file mode 100644
index 00000000000..145b64842c3
--- /dev/null
+++ b/testing/fluffychat/wrapper.patch.webrtc
@@ -0,0 +1,14 @@
+...yeah https://github.com/webrtc-sdk/libwebrtc?tab=readme-ov-file#modify-webrtcs-srcbuildgn-file-and-add-libwebrtc-to-groupdefault
+diff --git a/BUILD.gn b/BUILD.gn
+index e60d7dd0bd..b9b6acab8b 100644
+--- a/BUILD.gn
++++ b/BUILD.gn
+@@ -29,7 +29,7 @@ if (!build_with_chromium) {
+ # 'ninja default' and then 'ninja all', the second build should do no work.
+ group("default") {
+ testonly = true
+- deps = [ ":webrtc" ]
++ deps = [ ":webrtc", "//libwebrtc" ]
+ if (rtc_build_examples) {
+ deps += [ "examples" ]
+ }
diff --git a/testing/flutter/APKBUILD b/testing/flutter/APKBUILD
new file mode 100644
index 00000000000..e8c722a9596
--- /dev/null
+++ b/testing/flutter/APKBUILD
@@ -0,0 +1,505 @@
+# Contributor: lauren n. liberda <lauren@selfisekai.rocks>
+# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
+pkgname=flutter
+# upgrade checklist: https://md.sdomi.pl/Q-ECZTJ2Qqyp3ahfJuYSBw
+pkgver=3.19.4
+pkgrel=0
+pkgdesc="Cross-platform apps, built in Omelas"
+url="https://flutter.dev/"
+arch="aarch64 x86_64" # officially supported for linux desktop
+license="BSD-3-Clause"
+_dartver=3.3.2
+_depends_common="
+ bash
+ clang
+ cmake
+ dart-sdk~=$_dartver
+ git
+ gtk+3.0-dev
+ pkgconf
+ samurai
+ "
+makedepends="
+ $_depends_common
+ freetype-dev
+ gn
+ harfbuzz-dev
+ icu-dev
+ jpeg-dev
+ libpng-dev
+ llvm
+ python3
+ spirv-tools-dev
+ sqlite-dev
+ zlib-dev
+ zstd
+ "
+subpackages="
+ $pkgname-common
+ $pkgname-desktop
+ $pkgname-developer
+ $pkgname-glfw
+ $pkgname-gtk
+ $pkgname-tool
+ $pkgname-tool-developer:tool_developer
+ "
+
+case "$pkgver" in
+ *.*.*_alpha*)
+ _canonver="${pkgver/_alpha/-}"
+ _canonver="${_canonver/-r/.}.dev"
+ _channel=master
+ ;;
+ *.*.*_beta*)
+ _canonver="${pkgver/_beta/-}"
+ _canonver="${_canonver/-r/.}.beta"
+ _channel=beta
+ ;;
+ *.*.*_pre*)
+ _canonver="${pkgver/_pre/-}"
+ _canonver="${_canonver/-r/.}.pre"
+ _channel=master
+ ;;
+ *.*.*)
+ _canonver="$pkgver"
+ _channel=stable
+ ;;
+esac
+
+case "$_dartver" in
+ *.*.*_alpha*)
+ _dartcanonver="${_dartver/_alpha/-}"
+ _dartcanonver="${_dartcanonver/-r/.}.dev"
+ ;;
+ *.*.*_beta*)
+ _dartcanonver="${_dartver/_beta/-}"
+ _dartcanonver="${_dartcanonver/-r/.}.beta"
+ ;;
+ *.*.*)
+ _dartcanonver="$_dartver"
+ ;;
+esac
+
+_enginever=a5c24f538d05aaf66f7972fb23959d8cafb9f95a
+_materialfontsver=3012db47f3130e62f7cc0beabff968a33cbec8d8
+_gradlewver=fd5c1f2c013565a3bea56ada6df9d2b8e96d56aa
+options="!check" # idk no attempt to build tests even with --enable-unittests
+source="
+ https://github.com/flutter/flutter/archive/refs/tags/$_canonver/flutter-$_canonver.tar.gz
+ https://ab-sn.lnl.gay/flutter-engine-$_enginever.tar.zst
+ https://ab-sn.lnl.gay/dart-sdk-$_dartcanonver.tar.zst
+ fonts-$_materialfontsver.zip.noauto::https://storage.googleapis.com/flutter_infra_release/flutter/fonts/$_materialfontsver/fonts.zip
+ gradle-wrapper-$_gradlewver.tar.gz.noauto::https://storage.googleapis.com/flutter_infra_release/gradle-wrapper/$_gradlewver/gradle-wrapper.tgz
+
+ alpine-target.patch
+ doctor.patch
+ no-lock.patch
+ no-runtime-download.patch
+ opt-in-analytics.patch
+ unbundle.patch
+ version.patch
+
+ pmos-if-touch-is-a-mouse-then-mouse-is-touch.patch
+
+ git-revision.patch.engine
+ target-musl.patch.engine
+ musl-no-execinfo.patch.engine
+ musl-no-mallinfo.patch.engine
+ no-vpython.patch.engine
+ shared-libcxx.patch.engine
+ libstdc++13.patch.engine
+ system-icu.patch.engine
+ unbundle.patch.engine
+
+ flutter
+ "
+builddir="$srcdir/flutter-$_canonver"
+
+export PUB_CACHE="$srcdir/flutter-$_canonver/pub_cache"
+
+export CFLAGS="${CFLAGS/-g/} -O2 -Wno-error -Wno-absolute-value -Wno-implicit-float-conversion"
+export CXXFLAGS="${CXXFLAGS/-g/} -O2 -Wno-error -Wno-absolute-value -Wno-implicit-float-conversion"
+
+case "$CARCH" in
+ x86_64) _flutter_arch="x64" ;;
+ aarch64) _flutter_arch="arm64" ;;
+esac
+_out="$srcdir"/flutter-engine-$_enginever/out
+_modes='release profile debug'
+_release_out="$_out"/linux_release_$_flutter_arch
+_debug_out="$_out"/linux_debug_$_flutter_arch
+
+# gclient comes from teapot-tools
+_distbucket="sakamoto/lnl-aports-snapshots/"
+snapshot() {
+ mkdir -p "$srcdir"
+ cd "$srcdir"
+
+ rm -rf src
+ rm -rf flutter-engine-$_enginever
+ rm -f flutter-engine-$_enginever.tar
+ rm -f flutter-engine-$_enginever.tar.zst
+
+ echo "
+solutions = [{
+ 'name': 'src/flutter',
+ 'url': 'https://github.com/flutter/engine.git@$_enginever',
+ 'custom_vars': {
+ 'download_android_deps': False,
+ 'download_dart_sdk': False,
+ },
+}]
+target_cpu = ['x64', 'arm', 'arm64', 'riscv64']
+target_cpu_only = True
+" > .gclient
+
+ gclient sync --no-history --nohooks --tpot-cipd-ignore-platformed
+
+ for elf in $(scanelf -RA -F "%F" src); do
+ rm -f "$elf"
+ done
+
+ mv src flutter-engine-$_enginever
+
+ msg "generating tarball.."
+ tar -cf flutter-engine-$_enginever.tar \
+ --exclude="ChangeLog*" \
+ --exclude=".build-id" \
+ --exclude="third_party/dart" \
+ --exclude-backups \
+ --exclude-caches-all \
+ --exclude-vcs \
+ flutter-engine-$_enginever
+
+ zstd --auto-threads=logical --ultra --long -22 -T"${ZSTD_LIMIT:-0}" -vv flutter-engine-$_enginever.tar -o "$SRCDEST"/flutter-engine-$_enginever.tar.zst
+ mcli cp "$SRCDEST"/flutter-engine-$_enginever.tar.zst "$_distbucket"
+}
+
+prepare() {
+ dos2unix "$srcdir"/flutter-engine-$_enginever/third_party/vulkan_memory_allocator/include/vk_mem_alloc.h
+
+ default_prepare
+
+ msg "Applying more patches"
+ for x in $source; do
+ case "$x" in
+ *.patch.engine)
+ msg "$x"
+ patch -p1 -i "$srcdir"/$x -d "$srcdir"/flutter-engine-$_enginever
+ ;;
+ esac
+ done
+
+ _dart_installed="$(cat /usr/lib/dart/version)"
+ if [ "$_dart_installed" != "$_dartcanonver" ]; then
+ echo "mismatch between installed dart version ($_dart_installed) and downloaded source code ($_dartcanonver)"
+ exit 1
+ fi
+
+ echo -n "$_canonver" > version
+ mkdir bin/cache
+
+ (
+ cd "$srcdir"/flutter-engine-$_enginever
+
+ # bind dart source code
+ rm -rf third_party/dart
+ ln -s "$srcdir"/dart-sdk-$_dartcanonver third_party/dart
+ # bind dart build
+ mkdir -p third_party/dart/tools/sdks/dart-sdk/
+ ln -s /usr/lib/dart/bin third_party/dart/tools/sdks/dart-sdk/bin
+ mkdir -p flutter/prebuilts/linux-$_flutter_arch/dart-sdk/
+ ln -s /usr/lib/dart/bin flutter/prebuilts/linux-$_flutter_arch/dart-sdk/bin
+
+ mkdir -p flutter/third_party/gn/
+ ln -s /usr/bin/gn flutter/third_party/gn/gn
+
+ # https://github.com/dart-lang/sdk/issues/52295
+ mkdir -p third_party/dart/.git/logs
+ touch third_party/dart/.git/logs/HEAD
+
+ # DEPS hooks
+ python3 third_party/dart/tools/generate_package_config.py
+ python3 third_party/dart/tools/generate_sdk_version_file.py
+ python3 flutter/tools/pub_get_offline.py
+
+ # reusable system library settings
+ local use_system="
+ freetype2
+ harfbuzz
+ icu
+ libjpeg-turbo
+ libpng
+ libwebp
+ sqlite
+ vulkan-SPIRV-Headers
+ vulkan-SPIRV-Tools
+ zlib
+ "
+ for _lib in $use_system vulkan-deps/spirv-headers vulkan-deps/spirv-tools; do
+ msg "Removing buildscripts for system provided $_lib"
+ find . -type f -path "*third_party/$_lib/*" \
+ \! -path "*third_party/$_lib/chromium/*" \
+ \! -path "*third_party/$_lib/google/*" \
+ \! -regex '.*\.\(gn\|gni\|isolate\|py\)' \
+ -delete
+ done
+
+ msg "Replacing gn files"
+ python3 build/linux/unbundle/replace_gn_files.py --system-libraries \
+ $use_system
+ )
+
+ (
+ cd packages/flutter_tools/
+
+ # no pubspec.lock in repo (?)
+ dart pub get --no-offline --no-precompile
+ )
+}
+
+build() {
+
+ (
+ cd "$srcdir"/flutter-engine-$_enginever
+
+ # shellcheck disable=2089
+ local gn_args="
+ host_libc=\"musl\"
+ target_libc=\"musl\"
+ use_custom_libcxx=false
+ use_default_linux_sysroot=false
+ "
+ local gnw_args="
+ --no-goma
+ --no-dart-version-git-info
+ --linux
+ --linux-cpu=$_flutter_arch
+ --lto
+ --clang
+ --target-triple=$CTARGET
+ --no-backtrace
+ --no-stripped
+ --prebuilt-dart-sdk
+ --build-glfw-shell
+ --build-engine-artifacts
+ --no-enable-unittests
+ --enable-fontconfig
+ "
+ for _mode in $_modes; do
+ msg "Generating ninja files for engine - $_mode"
+ # shellcheck disable=2090,2116
+ python3 ./flutter/tools/gn \
+ $gnw_args \
+ --runtime-mode="$_mode" \
+ --gn-args="$(echo $gn_args)"
+ msg "Build engine artifacts - $_mode"
+ ninja -C "$_out"/linux_${_mode}_$_flutter_arch artifacts
+ done
+ msg "Build flutter common and product patched sdk"
+ ninja -C "$_release_out" flutter flutter_patched_sdk sky
+ msg "Build debug patched sdk"
+ ninja -C "$_debug_out" flutter_patched_sdk
+ )
+
+ dart --verbosity=error --disable-dart-dev \
+ --snapshot="bin/cache/flutter_tools.snapshot" --snapshot-kind="app-jit" \
+ --packages="packages/flutter_tools/.dart_tool/package_config.json" \
+ --no-enable-mirrors "packages/flutter_tools/bin/flutter_tools.dart"
+
+ sed -Ei 's|'"$PUB_CACHE"'|/usr/lib/flutter/pub_cache|g' packages/flutter_tools/.dart_tool/package_config.json
+
+ # looks like they can get created in the process
+ find "$PUB_CACHE" -name '*.aot' -delete
+}
+
+check() {
+ (
+ cd "$srcdir"/flutter-engine-$_enginever
+
+ ln -s ./linux_debug_$_flutter_arch ./out/linux_debug_unopt
+
+ python3 flutter/testing/run_tests.py --type=engine
+ )
+}
+
+package() {
+ depends="flutter-developer=$pkgver-r$pkgrel"
+
+ # our entrypoint
+ install -Dm755 "$srcdir"/flutter "$pkgdir"/usr/lib/flutter/bin/flutter
+ mkdir -p "$pkgdir"/usr/bin/
+ ln -s ../lib/flutter/bin/flutter "$pkgdir"/usr/bin/flutter
+
+ # our dart
+ mkdir -p "$pkgdir"/usr/lib/flutter/bin/cache/
+ ln -s ../../../dart "$pkgdir"/usr/lib/flutter/bin/cache/dart-sdk
+ _devtoolsver="$(grep 'devtools_rev' "$srcdir/dart-sdk-$_dartcanonver/DEPS" | head -n1 | awk -F\" '{ print $4 }')"
+ cat > "$pkgdir"/usr/lib/flutter/bin/cache/flutter.version.json <<EOF
+{
+ "frameworkVersion": "$_canonver",
+ "channel": "$_channel",
+ "repositoryUrl": "https://github.com/flutter/flutter.git",
+ "frameworkRevision": "alpineaports0000000000000000000000000000",
+ "frameworkCommitDate": "2038-01-19 03:14:08",
+ "engineRevision": "$_enginever",
+ "dartSdkVersion": "$_dartcanonver",
+ "devToolsVersion": $(jq '.version' < /usr/lib/dart/bin/resources/devtools/version.json),
+ "flutterVersion": "$_canonver"
+}
+EOF
+
+ # flutter tool (cli) snapshot
+ install -Dm755 "$builddir"/bin/cache/flutter_tools.snapshot "$pkgdir"/usr/lib/flutter/bin/cache/flutter_tools.snapshot
+
+ # patched sdk
+ mkdir -p "$pkgdir"/usr/lib/flutter/bin/cache/artifacts/engine/common
+ cp -r "$_release_out"/flutter_patched_sdk/ \
+ "$pkgdir"/usr/lib/flutter/bin/cache/artifacts/engine/common/flutter_patched_sdk_product
+ cp -r "$_debug_out"/flutter_patched_sdk/ \
+ "$pkgdir"/usr/lib/flutter/bin/cache/artifacts/engine/common/flutter_patched_sdk
+
+ # dart:ui package
+ mkdir -p "$pkgdir"/usr/lib/flutter/bin/cache/pkg
+ cp -rL "$_release_out"/gen/dart-pkg/sky_engine "$pkgdir"/usr/lib/flutter/bin/cache/pkg/sky_engine
+
+ # flutter tool and framework packages (as part of sdk)
+ cp -r "$builddir"/packages "$pkgdir"/usr/lib/flutter/packages
+ # needed for flutter analyze 🤨
+ cp -r "$builddir"/dev "$pkgdir"/usr/lib/flutter/dev
+ cp -r "$builddir"/examples "$pkgdir"/usr/lib/flutter/examples
+ # pub dependencies of flutter (part of sdk)
+ cp -r "$PUB_CACHE" "$pkgdir"/usr/lib/flutter/pub_cache
+
+ # version files
+ echo -n "$_canonver" > "$pkgdir"/usr/lib/flutter/version
+ mkdir -p "$pkgdir"/usr/lib/flutter/bin/internal/
+ echo -n "$_enginever" > "$pkgdir"/usr/lib/flutter/bin/internal/engine.version
+
+ # fonts
+ mkdir -p "$pkgdir"/usr/lib/flutter/bin/cache/artifacts/material_fonts
+ unzip "$srcdir"/fonts-"$_materialfontsver".zip.noauto \
+ -d "$pkgdir"/usr/lib/flutter/bin/cache/artifacts/material_fonts
+
+ # gradle wrapper (-developer only, needed for flutter create)
+ mkdir -p "$pkgdir"/usr/lib/flutter/bin/cache/artifacts/gradle_wrapper
+ tar xf "$srcdir"/gradle-wrapper-"$_gradlewver".tar.gz.noauto \
+ -C "$pkgdir"/usr/lib/flutter/bin/cache/artifacts/gradle_wrapper
+
+ # build-time artifacts from engine (for use by tool)
+ for _mode in $_modes; do
+ case "$_mode" in
+ debug) _mode_art_name=linux-$_flutter_arch ;;
+ *) _mode_art_name=linux-$_flutter_arch-$_mode ;;
+ esac
+ mkdir -p "$pkgdir"/usr/lib/flutter/bin/cache/artifacts/engine/$_mode_art_name/
+ unzip "$_out"/linux_${_mode}_$_flutter_arch/zip_archives/$_mode_art_name/artifacts.zip \
+ -d "$pkgdir"/usr/lib/flutter/bin/cache/artifacts/engine/$_mode_art_name/
+ done
+ # they are all the same, simply copied from tree
+ cp -r "$_release_out"/flutter_linux/ \
+ "$pkgdir"/usr/lib/flutter/bin/cache/artifacts/engine/linux-$_flutter_arch/flutter_linux
+ ln -s ../linux-$_flutter_arch/flutter_linux "$pkgdir"/usr/lib/flutter/bin/cache/artifacts/engine/linux-$_flutter_arch-profile/flutter_linux
+ ln -s ../linux-$_flutter_arch/flutter_linux "$pkgdir"/usr/lib/flutter/bin/cache/artifacts/engine/linux-$_flutter_arch-release/flutter_linux
+ mkdir -p "$pkgdir"/usr/include/
+ ln -s ../lib/flutter/bin/cache/artifacts/engine/linux-$_flutter_arch/flutter_linux \
+ "$pkgdir"/usr/include/flutter_linux
+
+ install -Dm755 "$_release_out"/libflutter_linux_gtk.so \
+ "$pkgdir"/usr/lib/libflutter_linux_gtk.so
+
+ # see system-icu.patch.engine
+ ln -s /usr/share/icu/*/icudt*l.dat "$pkgdir"/usr/lib/flutter/icudtl.dat
+
+ install -Dm755 "$_release_out"/libflutter_linux_glfw.so "$pkgdir"/usr/lib/libflutter_linux_glfw.so
+}
+
+common() {
+ pkgdesc="$pkgdesc (parts common to all targets)"
+ depends="$_depends_common"
+
+ amove usr/lib/flutter/bin/cache/artifacts/engine/common
+ amove usr/lib/flutter/bin/cache/artifacts/material_fonts
+ amove usr/lib/flutter/bin/cache/dart-sdk
+ amove usr/lib/flutter/bin/cache/pkg
+ amove usr/lib/flutter/bin/internal
+ amove usr/lib/flutter/packages
+ amove usr/lib/flutter/pub_cache
+}
+
+desktop() {
+ pkgdesc="$pkgdesc (release linux desktop target)"
+ depends="flutter-common=$pkgver-r$pkgrel flutter-glfw=$pkgver-r$pkgrel flutter-gtk=$pkgver-r$pkgrel flutter-tool=$pkgver-r$pkgrel"
+
+ amove usr/include/flutter_linux
+ amove usr/lib/flutter/bin/cache/artifacts/engine/linux-$_flutter_arch
+ amove usr/lib/flutter/bin/cache/artifacts/engine/linux-$_flutter_arch-release
+}
+
+developer() {
+ pkgdesc="$pkgdesc (app developer tools)"
+ depends="flutter-desktop=$pkgver-r$pkgrel flutter-tool-developer=$pkgver-r$pkgrel"
+
+ amove usr/lib/flutter/bin/cache/artifacts/engine/linux-$_flutter_arch-profile
+ amove usr/lib/flutter/bin/cache/artifacts/gradle_wrapper
+}
+
+gtk() {
+ pkgdesc="$pkgdesc (GTK embedder runtime)"
+ depends=""
+
+ amove usr/lib/libflutter_linux_gtk.so
+ amove usr/lib/flutter/icudtl.dat
+}
+
+glfw() {
+ pkgdesc="$pkgdesc (GLFW embedder runtime)"
+ depends=""
+
+ amove usr/lib/libflutter_linux_glfw.so
+}
+
+tool() {
+ pkgdesc="$pkgdesc (CLI tool)"
+ depends="flutter-common=$pkgver-r$pkgrel"
+
+ amove usr/bin/flutter
+ amove usr/lib/flutter/bin/cache/flutter_tools.snapshot
+ amove usr/lib/flutter/bin/cache/flutter.version.json
+ amove usr/lib/flutter/bin/flutter
+ amove usr/lib/flutter/version
+}
+
+tool_developer() {
+ pkgdesc="$pkgdesc (CLI tool, parts for app developers)"
+ depends="flutter-tool=$pkgver-r$pkgrel"
+
+ amove usr/lib/flutter/dev
+ amove usr/lib/flutter/examples
+}
+
+sha512sums="
+0596f04bad9ec32dbe258ab5e98585ea52d22d5da917edbfa82462d73599f06827d01cbf520f6b619f60dca423d6cd4c501ab1aef35639626e12222f3fa0d3a9 flutter-3.19.4.tar.gz
+c9c5f9dadb3cfa57d85ce00d24ebc4be0465a5bb46b772b7ec32df97823cee7b8f4b95a8c1a6702c408d1bfc74e7dcbeec1d8f34223db6b492f3b30bc927020b flutter-engine-a5c24f538d05aaf66f7972fb23959d8cafb9f95a.tar.zst
+f5521b4f779b9e657e351734af0a845cfa83fada99a65896d812643ed80467892c6bb4127d687f5ac6e684e7efd1c7eaf41dfed696dd69486897b29a6c9a9b42 dart-sdk-3.3.2.tar.zst
+604f9a256fb1ec8c1b3eb6636baa97f195012b89b68197aef28104ed59dbcb70bde4fc1c7e154018999beabda160b60fa1378bcc1cd1ebe71c79071f40ebb26f fonts-3012db47f3130e62f7cc0beabff968a33cbec8d8.zip.noauto
+fcce6b1659f3a4ee7849bf7f65a9b8e9b3046fc0cfae70d364efabbff2d6c1ed41e6e9009e5fabc522117cbd2f92c5c664f64426e2606fce6b69d9960dd6ca63 gradle-wrapper-fd5c1f2c013565a3bea56ada6df9d2b8e96d56aa.tar.gz.noauto
+a7d6e459a8884bd2b7083b15e6d113576e454c68feba8fcf467c6d288e6abca656a1e669eee2b9973d0b30a1dfbbd736d8ee65292d42bbd832059703b7067dd8 alpine-target.patch
+a9db5df026cf641728f744ffd3428db9cf3918718233c707fd154a88b321c4a7af8e41ac6c3b08f1f4614c6b49e0689653b3b01e35c1e3ff3c5c9e7920fdd8d4 doctor.patch
+f47f3bb1e97c79bdaf5fdd3b466936a335d80d48bffafa7c015a32d97a665d5450e63a33fd5eb0560215de57d556721eaa92db05848257427dd582b10543adda no-lock.patch
+b2705a855163660cc3c472f6416d5839d9d4947164e2ea0ed97e93645255f27b7b513e7dc7de196cae5685b5e328b35ebd65b614be9b32f2fddd1fc8053a3963 no-runtime-download.patch
+91e598d9da383519f107c75669d8ec71f85afea38fa9e9a89e2f6c6088ce27f3107ab57e68931c5b27aec73788c9cd81123bcfae87152d878a170465aec9a193 opt-in-analytics.patch
+9855cf075781e1d1032f6a8dcc160cdcfc4d360875bc4fe005c83ca87dec767f1ce15e7c55d653688f1f2f0cb6b0b0328ccfd826e18ececc50d5d41d8b5b89d2 unbundle.patch
+5b4dc7cdfe6476748c458a0f61267f75a3ce959fff73327e4b9083e1291d46f59000ff5d853d34ecfaa55ecc317d002754653528566ca5a8fc9126b20148a0e5 version.patch
+38673902256ee546c45cefd8e82f310ab7207ac50a038efcbf34c67dee04d626fa37462456729e7725729495ecd4ed7c0b16b72967ef768153d189d7b10c7439 pmos-if-touch-is-a-mouse-then-mouse-is-touch.patch
+cf07aec8878965cf4729700217857d66c37b9258ccab9a9cf4dd199f97f084504b6ad5dbf8d79ca538cbe86f94092f41be53251940ba0f062ca7fcb6d4de616a git-revision.patch.engine
+ebbd8f09e2418b9ac9d933fe94d599e474e4f230171edb5ddfb2f991bcfee39516f785d267e6b23414ef25452cfd5cc04ff5fef0dd5c0af5e6eee373424dee5a target-musl.patch.engine
+d2c55af9dc64c380905cd5d9bc792cec2e37063265cc84643b77995f9787d2239fe34f596a575ac6aa9eae5d82cd55dcd1ed20d59f58c631291064a8c9ae47c0 musl-no-execinfo.patch.engine
+5794a5f9f8532dc6615bc7c89c2f5953ad09a4e8cc1ef7618c9fa8a7816488714ab972b83fef0ff87da797404e182c516975d3376493b906be067edcda015914 musl-no-mallinfo.patch.engine
+6634043f5618835dd9f33a3ec473cdf11bfae2456ee670e2ea24c14f8f1f9d45f9dc273dcb035400d18404e74833c4df1d57e78a00de8010aa7e1e68099db6cd no-vpython.patch.engine
+e138d2b393db3aa1328199fc4d1ac4b2e0ef8384faf04bf077c6fd97ef9813f94b7f25fccbe5fed4919d7ec0bbd800289b5d3a9b8bc654cbe5c5574fb6bee329 shared-libcxx.patch.engine
+65ded76d27b4cdcf4e136294f45df23fdfa4ba7d31dc90a507e9def6d9be3fd7c93269a49769290c6c3be9a11b0eddc8d7d87979518f69f6fe8f0a386426443b libstdc++13.patch.engine
+c0066e5668405c8377292d17e8f5ec26b7c24caae1a44a64528130f5da2c2913f9f87718504983af9ab858b3f9783dbff9e3dcac70264e3195ae01b3c87aa87f system-icu.patch.engine
+61c480e317cdfc1187633d860c0e3341c32f56bd4e00d1b859014dfc52f4998df2f6e818332df0cdec13543e6537bd3da8f8922b0570a4185e5fa6b0ff34e3d2 unbundle.patch.engine
+9c6cb9b0bdb4333f139d1d7115792de688ac99e0ab6987b0f7e5881a83a1feab2d635bc483cd7aed246e4077a65974c83cfe489acbe59853e93abafdfa0cd7d8 flutter
+"
diff --git a/testing/flutter/alpine-target.patch b/testing/flutter/alpine-target.patch
new file mode 100644
index 00000000000..a431add8379
--- /dev/null
+++ b/testing/flutter/alpine-target.patch
@@ -0,0 +1,14 @@
+--- ./packages/flutter_tools/lib/src/linux/build_linux.dart.orig
++++ ./packages/flutter_tools/lib/src/linux/build_linux.dart
+@@ -135,9 +135,9 @@
+ if (needCrossBuild)
+ '-DFLUTTER_TARGET_PLATFORM_SYSROOT=$targetSysroot',
+ if (needCrossBuildOptionsForArm64)
+- '-DCMAKE_C_COMPILER_TARGET=aarch64-linux-gnu',
++ '-DCMAKE_C_COMPILER_TARGET=aarch64-alpine-linux-musl',
+ if (needCrossBuildOptionsForArm64)
+- '-DCMAKE_CXX_COMPILER_TARGET=aarch64-linux-gnu',
++ '-DCMAKE_CXX_COMPILER_TARGET=aarch64-alpine-linux-musl',
+ sourceDir.path,
+ ],
+ workingDirectory: buildDir.path,
diff --git a/testing/flutter/doctor.patch b/testing/flutter/doctor.patch
new file mode 100644
index 00000000000..76c51dd516f
--- /dev/null
+++ b/testing/flutter/doctor.patch
@@ -0,0 +1,17 @@
+--- a/packages/flutter_tools/lib/src/doctor.dart
++++ b/packages/flutter_tools/lib/src/doctor.dart
+@@ -621,14 +621,6 @@
+ '$flutterBinDir to your path.',
+ );
+ }
+- final String resolvedFlutterPath = flutterBin.resolveSymbolicLinksSync();
+- if (!_filePathContainsDirPath(flutterRoot, resolvedFlutterPath)) {
+- final String hint = 'Warning: `$binary` on your path resolves to '
+- '$resolvedFlutterPath, which is not inside your current Flutter '
+- 'SDK checkout at $flutterRoot. Consider adding $flutterBinDir to '
+- 'the front of your path.';
+- return ValidationMessage.hint(hint);
+- }
+ return null;
+ }
+
diff --git a/testing/flutter/flutter b/testing/flutter/flutter
new file mode 100755
index 00000000000..5ee21ccd927
--- /dev/null
+++ b/testing/flutter/flutter
@@ -0,0 +1,23 @@
+#!/bin/sh
+# adapted by lnl from project's repo
+
+# To debug the tool, you can pass the following env to enable debug
+# mode and set an observatory port:
+# FLUTTER_TOOL_ARGS="$FLUTTER_TOOL_ARGS --enable-asserts --observe=65432"
+
+set -e
+
+export FLUTTER_ROOT="/usr/lib/flutter"
+
+FLUTTER_TOOLS_DIR="$FLUTTER_ROOT/packages/flutter_tools"
+SNAPSHOT_PATH="$FLUTTER_ROOT/bin/cache/flutter_tools.snapshot"
+
+# Test if running as superuser – but don't warn if running within Docker or CI.
+if [ "$(id -u)" = "0" ] && ! [ -f /.dockerenv ] && [ "$CI" != "true" ] && [ "$BOT" != "true" ] && [ "$CONTINUOUS_INTEGRATION" != "true" ]; then
+ >&2 echo " Woah! You appear to be trying to run flutter as root."
+ >&2 echo " We strongly recommend running the flutter tool without superuser privileges."
+ >&2 echo " /"
+ >&2 echo "📎"
+fi
+
+exec dart --disable-dart-dev --packages="$FLUTTER_TOOLS_DIR/.dart_tool/package_config.json" $FLUTTER_TOOL_ARGS "$SNAPSHOT_PATH" "$@"
diff --git a/testing/flutter/git-revision.patch.engine b/testing/flutter/git-revision.patch.engine
new file mode 100644
index 00000000000..8cf115fdc72
--- /dev/null
+++ b/testing/flutter/git-revision.patch.engine
@@ -0,0 +1,22 @@
+--- a/flutter/build/git_revision.py
++++ b/flutter/build/git_revision.py
+@@ -22,18 +22,7 @@
+ if not os.path.exists(repository):
+ raise IOError('path does not exist')
+
+- git = 'git'
+- if is_windows():
+- git = 'git.bat'
+- version = subprocess.check_output([
+- git,
+- '-C',
+- repository,
+- 'rev-parse',
+- 'HEAD',
+- ])
+-
+- return str(version.strip(), 'utf-8')
++ return '0' * 41
+
+
+ def main():
diff --git a/testing/flutter/libstdc++13.patch.engine b/testing/flutter/libstdc++13.patch.engine
new file mode 100644
index 00000000000..0e6c5d01c35
--- /dev/null
+++ b/testing/flutter/libstdc++13.patch.engine
@@ -0,0 +1,103 @@
+missing libstdc++13 includes
+--
+--- ./third_party/vulkan_memory_allocator/include/vk_mem_alloc.h.orig
++++ ./third_party/vulkan_memory_allocator/include/vk_mem_alloc.h
+@@ -2566,6 +2566,7 @@
+ #undef VMA_IMPLEMENTATION
+
+ #include <cstdint>
++#include <cstdio>
+ #include <cstdlib>
+ #include <cstring>
+ #include <utility>
+--- ./flutter/third_party/tonic/filesystem/filesystem/file.h.orig
++++ ./flutter/third_party/tonic/filesystem/filesystem/file.h
+@@ -5,6 +5,7 @@
+ #ifndef FILESYSTEM_FILE_H_
+ #define FILESYSTEM_FILE_H_
+
++#include <stdint.h>
+ #include <string>
+ #include <vector>
+
+--- ./flutter/impeller/geometry/size.h.orig
++++ ./flutter/impeller/geometry/size.h
+@@ -6,6 +6,7 @@
+
+ #include <algorithm>
+ #include <cmath>
++#include <cstdint>
+ #include <limits>
+ #include <ostream>
+ #include <string>
+--- ./flutter/runtime/dart_service_isolate.h.orig
++++ ./flutter/runtime/dart_service_isolate.h
+@@ -6,6 +6,7 @@
+ #define FLUTTER_RUNTIME_DART_SERVICE_ISOLATE_H_
+
+ #include <functional>
++#include <memory>
+ #include <mutex>
+ #include <set>
+ #include <string>
+--- ./flutter/flow/paint_region.h.orig
++++ ./flutter/flow/paint_region.h
+@@ -5,6 +5,7 @@
+ #ifndef FLUTTER_FLOW_PAINT_REGION_H_
+ #define FLUTTER_FLOW_PAINT_REGION_H_
+
++#include <memory>
+ #include <utility>
+ #include <vector>
+ #include "flutter/fml/logging.h"
+--- ./flutter/vulkan/vulkan_surface.h.orig
++++ ./flutter/vulkan/vulkan_surface.h
+@@ -5,6 +5,8 @@
+ #ifndef FLUTTER_VULKAN_VULKAN_SURFACE_H_
+ #define FLUTTER_VULKAN_VULKAN_SURFACE_H_
+
++#include <memory>
++
+ #include "flutter/fml/macros.h"
+ #include "flutter/vulkan/procs/vulkan_handle.h"
+ #include "third_party/skia/include/core/SkSize.h"
+--- ./flutter/shell/platform/glfw/flutter_glfw.cc.orig
++++ ./flutter/shell/platform/glfw/flutter_glfw.cc
+@@ -7,6 +7,7 @@
+ #include <GLFW/glfw3.h>
+
+ #include <algorithm>
++#include <atomic>
+ #include <cassert>
+ #include <chrono>
+ #include <cstdlib>
+--- ./flutter/fml/cpu_affinity.cc.orig
++++ ./flutter/fml/cpu_affinity.cc
+@@ -5,6 +5,7 @@
+ #include "flutter/fml/cpu_affinity.h"
+ #include "flutter/fml/build_config.h"
+
++#include <cstdint>
+ #include <fstream>
+ #include <optional>
+ #include <string>
+--- ./flutter/fml/cpu_affinity.h.orig
++++ ./flutter/fml/cpu_affinity.h
+@@ -4,6 +4,7 @@
+
+ #pragma once
+
++#include <cstdint>
+ #include <optional>
+ #include <string>
+ #include <vector>
+--- ./flutter/impeller/geometry/path.h.orig
++++ ./flutter/impeller/geometry/path.h
+@@ -6,6 +6,7 @@
+ #define FLUTTER_IMPELLER_GEOMETRY_PATH_H_
+
+ #include <functional>
++#include <memory>
+ #include <optional>
+ #include <set>
+ #include <tuple>
diff --git a/testing/flutter/musl-no-execinfo.patch.engine b/testing/flutter/musl-no-execinfo.patch.engine
new file mode 100644
index 00000000000..140ab183c6e
--- /dev/null
+++ b/testing/flutter/musl-no-execinfo.patch.engine
@@ -0,0 +1,11 @@
+--- a/flutter/third_party/swiftshader/third_party/llvm-subzero/build/Linux/include/llvm/Config/config.h
++++ b/flutter/third_party/swiftshader/third_party/llvm-subzero/build/Linux/include/llvm/Config/config.h
+@@ -58,7 +58,7 @@
+ #define HAVE_ERRNO_H 1
+
+ /* Define to 1 if you have the <execinfo.h> header file. */
+-#define HAVE_EXECINFO_H 1
++/* #define HAVE_EXECINFO_H 1 */
+
+ /* Define to 1 if you have the <fcntl.h> header file. */
+ #define HAVE_FCNTL_H 1
diff --git a/testing/flutter/musl-no-mallinfo.patch.engine b/testing/flutter/musl-no-mallinfo.patch.engine
new file mode 100644
index 00000000000..8a5f4ce0a3b
--- /dev/null
+++ b/testing/flutter/musl-no-mallinfo.patch.engine
@@ -0,0 +1,29 @@
+--- ./flutter/third_party/swiftshader/third_party/llvm-subzero/lib/Support/Unix/Process.inc
++++ ./flutter/third_party/swiftshader/third_party/llvm-subzero/lib/Support/Unix/Process.inc.orig
+@@ -86,11 +86,11 @@
+ }
+
+ size_t Process::GetMallocUsage() {
+-#if defined(HAVE_MALLINFO2)
++#if defined(HAVE_MALLINFO2) && defined(__GLIBC__)
+ struct mallinfo2 mi;
+ mi = ::mallinfo2();
+ return mi.uordblks;
+-#elif defined(HAVE_MALLINFO)
++#elif defined(HAVE_MALLINFO) && defined(__GLIBC__)
+ struct mallinfo mi;
+ mi = ::mallinfo();
+ return mi.uordblks;
+
+--- ./flutter/third_party/swiftshader/third_party/llvm-10.0/configs/linux/include/llvm/Config/config.h.orig 2019-09-30 13:03:42.556880537 -0400
++++ ./flutter/third_party/swiftshader/third_party/llvm-10.0/configs/linux/include/llvm/Config/config.h 2019-09-30 13:07:27.989821227 -0400
+@@ -122,7 +122,9 @@
+ /* #undef HAVE_MALLCTL */
+
+ /* Define to 1 if you have the `mallinfo' function. */
++#if defined(__GLIBC__)
+ #define HAVE_MALLINFO 1
++#endif
+
+ /* Define to 1 if you have the <malloc.h> header file. */
+ #define HAVE_MALLOC_H 1
diff --git a/testing/flutter/no-lock.patch b/testing/flutter/no-lock.patch
new file mode 100644
index 00000000000..3a82ef894fa
--- /dev/null
+++ b/testing/flutter/no-lock.patch
@@ -0,0 +1,19 @@
+--- a/packages/flutter_tools/lib/src/cache.dart
++++ b/packages/flutter_tools/lib/src/cache.dart
+@@ -280,7 +280,7 @@
+ bool useUnsignedMacBinaries = false;
+
+ static RandomAccessFile? _lock;
+- static bool _lockEnabled = true;
++ static bool _lockEnabled = false;
+
+ /// Turn off the [lock]/[releaseLock] mechanism.
+ ///
+@@ -634,7 +634,6 @@
+ }
+
+ void setStampFor(String artifactName, String version) {
+- getStampFileFor(artifactName).writeAsStringSync(version);
+ }
+
+ File getStampFileFor(String artifactName) {
diff --git a/testing/flutter/no-runtime-download.patch b/testing/flutter/no-runtime-download.patch
new file mode 100644
index 00000000000..4814ab14933
--- /dev/null
+++ b/testing/flutter/no-runtime-download.patch
@@ -0,0 +1,38 @@
+--- a/packages/flutter_tools/lib/src/cache.dart
++++ b/packages/flutter_tools/lib/src/cache.dart
+@@ -926,26 +926,6 @@
+ }
+
+ Future<bool> checkForArtifacts(String? engineVersion) async {
+- engineVersion ??= version;
+- final String url = '${cache.storageBaseUrl}/flutter_infra_release/flutter/$engineVersion/';
+-
+- bool exists = false;
+- for (final String pkgName in getPackageDirs()) {
+- exists = await cache.doesRemoteExist('Checking package $pkgName is available...', Uri.parse('$url$pkgName.zip'));
+- if (!exists) {
+- return false;
+- }
+- }
+-
+- for (final List<String> toolsDir in getBinaryDirs()) {
+- final String cacheDir = toolsDir[0];
+- final String urlPath = toolsDir[1];
+- exists = await cache.doesRemoteExist('Checking $cacheDir tools are available...',
+- Uri.parse(url + urlPath));
+- if (!exists) {
+- return false;
+- }
+- }
+ return true;
+ }
+
+@@ -1036,6 +1016,8 @@
+ Directory location,
+ void Function(File, Directory) extractor,
+ ) async {
++ throwToolExit('Tried to download $url. Report on aports.');
++
+ final String downloadPath = flattenNameSubdirs(url, _fileSystem);
+ final File tempFile = _createDownloadFile(downloadPath);
+ Status status;
diff --git a/testing/flutter/no-vpython.patch.engine b/testing/flutter/no-vpython.patch.engine
new file mode 100644
index 00000000000..19ed192d695
--- /dev/null
+++ b/testing/flutter/no-vpython.patch.engine
@@ -0,0 +1,11 @@
+--- ./.gn.orig
++++ ./.gn
+@@ -3,7 +3,7 @@
+
+ # Use vpython3 from depot_tools for exec_script() calls.
+ # See `gn help dotfile` for details.
+-script_executable = "vpython3"
++script_executable = "python3"
+
+ # The location of the build configuration file.
+ buildconfig = "//build/config/BUILDCONFIG.gn"
diff --git a/testing/flutter/opt-in-analytics.patch b/testing/flutter/opt-in-analytics.patch
new file mode 100644
index 00000000000..9be73cf402e
--- /dev/null
+++ b/testing/flutter/opt-in-analytics.patch
@@ -0,0 +1,22 @@
+--- a/packages/flutter_tools/lib/src/reporting/usage.dart
++++ b/packages/flutter_tools/lib/src/reporting/usage.dart
+@@ -218,7 +218,7 @@
+ if (globals.platform.environment.containsKey('FLUTTER_HOST')) {
+ analytics.setSessionValue('aiid', globals.platform.environment['FLUTTER_HOST']);
+ }
+- analytics.analyticsOpt = AnalyticsOpt.optOut;
++ analytics.analyticsOpt = AnalyticsOpt.optIn;
+ }
+
+ return _DefaultUsage._(
+--- a/packages/flutter_tools/lib/src/reporting/first_run.dart
++++ b/packages/flutter_tools/lib/src/reporting/first_run.dart
+@@ -37,6 +37,8 @@
+ â•‘ See Google's privacy policy: â•‘
+ â•‘ https://policies.google.com/privacy â•‘
+ â•šâ•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•
++aports overrides: reporting is disabled by default. Opt-out is not a sent event.
++Run 'flutter config --analytics' to opt in to reports.
+ ''';
+
+ /// The first run messenger determines whether the first run license terms
diff --git a/testing/flutter/pmos-if-touch-is-a-mouse-then-mouse-is-touch.patch b/testing/flutter/pmos-if-touch-is-a-mouse-then-mouse-is-touch.patch
new file mode 100644
index 00000000000..5803026bff6
--- /dev/null
+++ b/testing/flutter/pmos-if-touch-is-a-mouse-then-mouse-is-touch.patch
@@ -0,0 +1,18 @@
+flutter defines a list of pointer kinds that can scroll the screen.
+however, it does not bother recognizing the pointer kind on linux,
+so every pointer is set to be recognized as mouse. effectively, touch
+can't scroll anything. this workarounds the issue by making mouse
+one of the "touch-like device types".
+
+Bug: https://github.com/flutter/flutter/issues/63209
+
+--- ./packages/flutter/lib/src/widgets/scroll_configuration.dart.orig
++++ ./packages/flutter/lib/src/widgets/scroll_configuration.dart
+@@ -25,6 +25,7 @@
+ // The VoiceAccess sends pointer events with unknown type when scrolling
+ // scrollables.
+ PointerDeviceKind.unknown,
++ PointerDeviceKind.mouse,
+ };
+
+ /// The default overscroll indicator applied on [TargetPlatform.android].
diff --git a/testing/flutter/shared-libcxx.patch.engine b/testing/flutter/shared-libcxx.patch.engine
new file mode 100644
index 00000000000..0fc66741f83
--- /dev/null
+++ b/testing/flutter/shared-libcxx.patch.engine
@@ -0,0 +1,33 @@
+--- ./build/config/BUILDCONFIG.gn.orig
++++ ./build/config/BUILDCONFIG.gn
+@@ -324,7 +324,7 @@
+ is_clang = true
+ }
+
+-use_flutter_cxx = is_clang && (is_linux || is_android || is_mac || is_ios)
++use_flutter_cxx = false
+
+ if (is_msan && !is_linux) {
+ assert(false, "Memory sanitizer is only available on Linux.")
+--- ./flutter/third_party/flatbuffers/include/flatbuffers/util.h.orig
++++ ./flutter/third_party/flatbuffers/include/flatbuffers/util.h
+@@ -202,7 +202,7 @@
+
+ // clang-format off
+ // Use locale independent functions {strtod_l, strtof_l, strtoll_l, strtoull_l}.
+-#if defined(FLATBUFFERS_LOCALE_INDEPENDENT) && (FLATBUFFERS_LOCALE_INDEPENDENT > 0)
++#if defined(__GLIBC__) && defined(FLATBUFFERS_LOCALE_INDEPENDENT) && (FLATBUFFERS_LOCALE_INDEPENDENT > 0)
+ class ClassicLocale {
+ #ifdef _MSC_VER
+ typedef _locale_t locale_type;
+--- ./flutter/third_party/flatbuffers/src/util.cpp.orig
++++ ./flutter/third_party/flatbuffers/src/util.cpp
+@@ -252,7 +252,7 @@
+ }
+
+ // Locale-independent code.
+-#if defined(FLATBUFFERS_LOCALE_INDEPENDENT) && \
++#if defined(__GLIBC__) && defined(FLATBUFFERS_LOCALE_INDEPENDENT) && \
+ (FLATBUFFERS_LOCALE_INDEPENDENT > 0)
+
+ // clang-format off
diff --git a/testing/flutter/system-icu.patch.engine b/testing/flutter/system-icu.patch.engine
new file mode 100644
index 00000000000..cf990049a6d
--- /dev/null
+++ b/testing/flutter/system-icu.patch.engine
@@ -0,0 +1,37 @@
+The icu library knows where icu data is at all times. It knows this because it
+knows where it isn't. By subtracting where it is from where it isn't, or where
+it isn't from where it is (whichever is greater), it obtains a difference, or
+deviation.
+
+The flutter build system uses deviations to generate "corrective" commands to
+drive the icu data path from a position where it is to a position where it
+isn't, and check at a position where it wasn't, it now is. Consequently, the
+position where it is, is now the position that it wasn't, and it follows that
+the position that it was, is now the position that it isn't.
+
+XXX: remove this field and whatever is trying to override the icu default with it
+
+--- a/flutter/shell/platform/linux/fl_dart_project.cc
++++ b/flutter/shell/platform/linux/fl_dart_project.cc
+@@ -64,7 +64,7 @@
+ self->assets_path =
+ g_build_filename(executable_dir, "data", "flutter_assets", nullptr);
+ self->icu_data_path =
+- g_build_filename(executable_dir, "data", "icudtl.dat", nullptr);
++ g_build_filename("/usr/lib/flutter/icudtl.dat", nullptr);
+
+ return self;
+ }
+--- ./flutter/build/archives/BUILD.gn.orig
++++ ./flutter/build/archives/BUILD.gn
+@@ -74,10 +74,6 @@
+ }
+ files += [
+ {
+- source = "//third_party/icu/flutter/icudtl.dat"
+- destination = "icudtl.dat"
+- },
+- {
+ source = "$root_out_dir/flutter_tester$exe"
+ destination = "flutter_tester$exe"
+ },
diff --git a/testing/flutter/target-musl.patch.engine b/testing/flutter/target-musl.patch.engine
new file mode 100644
index 00000000000..42134e52db0
--- /dev/null
+++ b/testing/flutter/target-musl.patch.engine
@@ -0,0 +1,345 @@
+From 903ae13d643c305c48c4271ed4a05939656ed041 Mon Sep 17 00:00:00 2001
+From: "Lauren N. Liberda" <lauren@selfisekai.rocks>
+Date: Sat, 8 Apr 2023 02:56:35 +0200
+Subject: [PATCH 1/2] add gn args specifying libc for linux
+
+---
+ build/config/compiler/BUILD.gn | 8 ++-
+ build/config/linux/detect_host_libc.py | 42 ++++++++++++
+ build/config/linux/libc.gni | 51 +++++++++++++++
+ build/toolchain/linux/BUILD.gn | 89 ++++++++++++++------------
+ 4 files changed, 147 insertions(+), 43 deletions(-)
+ create mode 100755 build/config/linux/detect_host_libc.py
+ create mode 100644 build/config/linux/libc.gni
+
+diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
+index 4c9a1ee..155d433 100644
+--- ./build/config/compiler/BUILD.gn.orig
++++ ./build/config/compiler/BUILD.gn
+@@ -12,6 +12,9 @@
+ if (is_win) {
+ import("//build/config/win/visual_studio_version.gni")
+ }
++if (is_linux) {
++ import("//build/config/linux/libc.gni")
++}
+
+ import("//build/config/c++/c++.gni")
+ import("//build/config/profiler.gni")
+@@ -339,8 +342,8 @@
+ ldflags += [ "-pthread" ]
+
+ if (current_cpu == "arm64") {
+- cflags += [ "--target=aarch64-linux-gnu" ]
+- ldflags += [ "--target=aarch64-linux-gnu" ]
++ cflags += [ "--target=aarch64-alpine-linux-musl" ]
++ ldflags += [ "--target=aarch64-alpine-linux-musl" ]
+ cflags += [ "-DBORINGSSL_CLANG_SUPPORTS_DOT_ARCH" ]
+ }
+ }
+@@ -622,12 +625,15 @@
+ default_warning_flags += [
+ # Enables.
+ "-Wendif-labels", # Weird old-style text after an #endif.
+- "-Werror", # Warnings as errors.
+
+ # Disables.
+ "-Wno-missing-field-initializers", # "struct foo f = {0};"
+ "-Wno-unused-parameter", # Unused function parameters.
+ ]
++ if (!is_linux || is_glibc) {
++ # Warnings as errors. Fails on musl.
++ default_warning_flags += [ "-Werror" ]
++ }
+
+ if (is_wasm) {
+ default_warning_flags += [
+diff --git a/build/config/linux/detect_host_libc.py b/build/config/linux/detect_host_libc.py
+new file mode 100755
+index 0000000..1ebb498
+--- /dev/null
++++ b/build/config/linux/detect_host_libc.py
+@@ -0,0 +1,42 @@
++#!/usr/bin/env python3
++#
++# Copyright (c) 2013 The Flutter Authors. All rights reserved.
++# Use of this source code is governed by a BSD-style license that can be
++# found in the LICENSE file.
++
++from optparse import OptionParser
++import re
++import subprocess
++import sys
++
++
++def main():
++ if 'linux' not in sys.platform:
++ return 1
++
++ parser = OptionParser()
++ parser.add_option('--compiler-path', action='store',
++ type='string', default='gcc')
++ (options, args) = parser.parse_args()
++
++ # should work with both gcc and clang
++ #
++ # example outputs: "aarch64-unknown-linux-gnu", "x86_64-alpine-linux-musl",
++ # "armv7-unknown-linux-musleabihf", "mipsel-linux-muslhf"
++ default_target = subprocess.check_output([
++ options.compiler_path, '-dumpmachine']).decode('utf-8').strip()
++
++ host_libc_re = re.match(
++ r'^(?:[^-]+-){1,2}linux-(?P<libc>gnu|musl|uclibc)(?:eabi)?(?:hf)?$',
++ default_target)
++ if host_libc_re is None:
++ print(f'Target not understood: {default_target}')
++
++ host_libc = host_libc_re.group('libc')
++ # print would add a newline
++ sys.stdout.write(host_libc)
++ return 0
++
++
++if __name__ == '__main__':
++ sys.exit(main())
+diff --git a/build/config/linux/libc.gni b/build/config/linux/libc.gni
+new file mode 100644
+index 0000000..653f312
+--- /dev/null
++++ b/build/config/linux/libc.gni
+@@ -0,0 +1,51 @@
++# Copyright (c) 2013 The Flutter Authors. All rights reserved.
++# Use of this source code is governed by a BSD-style license that can be
++# found in the LICENSE file.
++
++import("//build/config/sysroot.gni")
++
++declare_args() {
++ # The C library used by the compilation host.
++ # Expecting one of: "gnu" (glibc), "uclibc", "musl"
++ host_libc = ""
++
++ # The C library of the compilation target.
++ # Expecting one of: "gnu" (glibc), "uclibc", "musl"
++ target_libc = ""
++}
++
++# try to detect host's libc if not explicitly provided
++if (host_libc == "" && is_linux) {
++ if (sysroot == "") {
++ host_compiler = "gcc"
++ if (is_clang) {
++ host_compiler = "clang"
++ }
++
++ # tries to determine libc from "gcc/clang -printmachine"
++ host_libc = exec_script("//build/config/linux/detect_host_libc.py",
++ [
++ "--compiler-path",
++ host_compiler,
++ ],
++ "string")
++ } else {
++ # currently there is only debian sysroot
++ host_libc = "gnu"
++ }
++}
++
++assert(!is_linux || host_libc != "", "Host libc not specified and not detected")
++
++# assume compiling for host if not explicitly specified
++if (target_libc == "") {
++ target_libc = host_libc
++}
++
++is_cross_libc = host_libc != target_libc
++
++is_glibc = target_libc == "gnu"
++is_musl = target_libc == "musl"
++
++is_host_glibc = host_libc == "gnu"
++is_host_musl = host_libc == "musl"
+diff --git a/build/toolchain/linux/BUILD.gn b/build/toolchain/linux/BUILD.gn
+index 05630d0..b1288ce 100644
+--- a/build/toolchain/linux/BUILD.gn
++++ b/build/toolchain/linux/BUILD.gn
+@@ -2,6 +2,7 @@
+ # Use of this source code is governed by a BSD-style license that can be
+ # found in the LICENSE file.
+
++import("//build/config/linux/libc.gni")
+ import("//build/config/sysroot.gni")
+ import("//build/toolchain/ccache.gni")
+ import("//build/toolchain/gcc_toolchain.gni")
+@@ -39,16 +43,20 @@
+ link_prefix = ""
+ }
+
+-if (host_cpu == "arm64") {
+- rebased_clang_dir =
+- rebase_path("//buildtools/linux-arm64/clang/bin", root_build_dir)
++if (is_host_glibc) {
++ if (host_cpu == "arm64") {
++ rebased_clang_dir =
++ rebase_path("//buildtools/linux-arm64/clang/bin/", root_build_dir)
++ } else {
++ rebased_clang_dir =
++ rebase_path("//buildtools/linux-x64/clang/bin/", root_build_dir)
++ }
+ } else {
+- rebased_clang_dir =
+- rebase_path("//buildtools/linux-x64/clang/bin", root_build_dir)
++ rebased_clang_dir = ""
+ }
+
+ gcc_toolchain("arm") {
+- prefix = "arm-linux-gnueabihf-"
++ prefix = "arm-linux-${target_libc}eabihf-"
+ if (toolchain_prefix != "") {
+ prefix = toolchain_prefix
+ }
+@@ -70,15 +78,15 @@
+
+ gcc_toolchain("clang_arm") {
+ prefix = rebased_clang_dir
+- asm = "${prefix}/clang"
+- cc = "${compiler_prefix}${prefix}/clang"
+- cxx = "${compiler_prefix}${prefix}/clang++"
++ asm = "${prefix}clang"
++ cc = "${compiler_prefix}${prefix}clang"
++ cxx = "${compiler_prefix}${prefix}clang++"
+
+- readelf = "${prefix}/llvm-readelf"
+- nm = "${prefix}/llvm-nm"
+- ar = "${prefix}/llvm-ar"
+- ld = "${link_prefix}${prefix}/clang++"
+- llvm_objcopy = "${prefix}/llvm-objcopy"
++ readelf = "${prefix}llvm-readelf"
++ nm = "${prefix}llvm-nm"
++ ar = "${prefix}llvm-ar"
++ ld = "${link_prefix}${prefix}clang++"
++ llvm_objcopy = "${prefix}llvm-objcopy"
+
+ toolchain_cpu = "arm"
+ toolchain_os = "linux"
+@@ -86,7 +94,7 @@
+ }
+
+ gcc_toolchain("arm64") {
+- prefix = "aarch64-linux-gnu-"
++ prefix = "aarch64-linux-${target_libc}-"
+ if (toolchain_prefix != "") {
+ prefix = toolchain_prefix
+ }
+@@ -108,15 +116,15 @@
+
+ gcc_toolchain("clang_arm64") {
+ prefix = rebased_clang_dir
+- asm = "${prefix}/clang"
+- cc = "${compiler_prefix}${prefix}/clang"
+- cxx = "${compiler_prefix}${prefix}/clang++"
++ asm = "${prefix}clang"
++ cc = "${compiler_prefix}${prefix}clang"
++ cxx = "${compiler_prefix}${prefix}clang++"
+
+ readelf = "readelf"
+- nm = "${prefix}/llvm-nm"
+- ar = "${prefix}/llvm-ar"
+- ld = "${link_prefix}${prefix}/clang++"
+- llvm_objcopy = "${prefix}/llvm-objcopy"
++ nm = "${prefix}llvm-nm"
++ ar = "${prefix}llvm-ar"
++ ld = "${link_prefix}${prefix}clang++"
++ llvm_objcopy = "${prefix}llvm-objcopy"
+
+ toolchain_cpu = "arm64"
+ toolchain_os = "linux"
+@@ -125,15 +133,15 @@
+
+ gcc_toolchain("clang_x86") {
+ prefix = rebased_clang_dir
+- asm = "${prefix}/clang"
+- cc = "${compiler_prefix}${prefix}/clang"
+- cxx = "${compiler_prefix}${prefix}/clang++"
++ asm = "${prefix}clang"
++ cc = "${compiler_prefix}${prefix}clang"
++ cxx = "${compiler_prefix}${prefix}clang++"
+
+- readelf = "${prefix}/llvm-readelf"
+- nm = "${prefix}/llvm-nm"
+- ar = "${prefix}/llvm-ar"
+- ld = "${link_prefix}${prefix}/clang++"
+- llvm_objcopy = "${prefix}/llvm-objcopy"
++ readelf = "${prefix}llvm-readelf"
++ nm = "${prefix}llvm-nm"
++ ar = "${prefix}llvm-ar"
++ ld = "${link_prefix}${prefix}clang++"
++ llvm_objcopy = "${prefix}llvm-objcopy"
+
+ toolchain_cpu = "x86"
+ toolchain_os = "linux"
+@@ -159,15 +167,15 @@
+
+ gcc_toolchain("clang_x64") {
+ prefix = rebased_clang_dir
+- asm = "${prefix}/clang"
+- cc = "${compiler_prefix}${prefix}/clang"
+- cxx = "${compiler_prefix}${prefix}/clang++"
++ asm = "${prefix}clang"
++ cc = "${compiler_prefix}${prefix}clang"
++ cxx = "${compiler_prefix}${prefix}clang++"
+
+- readelf = "${prefix}/llvm-readelf"
+- nm = "${prefix}/llvm-nm"
+- ar = "${prefix}/llvm-ar"
+- ld = "${link_prefix}${prefix}/clang++"
+- llvm_objcopy = "${prefix}/llvm-objcopy"
++ readelf = "${prefix}llvm-readelf"
++ nm = "${prefix}llvm-nm"
++ ar = "${prefix}llvm-ar"
++ ld = "${link_prefix}${prefix}clang++"
++ llvm_objcopy = "${prefix}llvm-objcopy"
+
+ toolchain_cpu = "x64"
+ toolchain_os = "linux"
+@@ -192,7 +200,7 @@
+ }
+
+ gcc_toolchain("riscv32") {
+- prefix = "riscv32-linux-gnu-"
++ prefix = "riscv32-linux-${target_libc}-"
+ if (toolchain_prefix != "") {
+ prefix = toolchain_prefix
+ }
+@@ -230,7 +238,7 @@
+ }
+
+ gcc_toolchain("riscv64") {
+- prefix = "riscv64-linux-gnu-"
++ prefix = "riscv64-linux-${target_libc}-"
+ if (toolchain_prefix != "") {
+ prefix = toolchain_prefix
+ }
+@@ -252,15 +260,15 @@
+
+ gcc_toolchain("clang_riscv64") {
+ prefix = rebased_clang_dir
+- asm = "${prefix}/clang"
+- cc = "${compiler_prefix}${prefix}/clang"
+- cxx = "${compiler_prefix}${prefix}/clang++"
++ asm = "${prefix}clang"
++ cc = "${compiler_prefix}${prefix}clang"
++ cxx = "${compiler_prefix}${prefix}clang++"
+
+ readelf = "readelf"
+- nm = "${prefix}/llvm-nm"
+- ar = "${prefix}/llvm-ar"
+- ld = "${link_prefix}${prefix}/clang++"
+- llvm_objcopy = "${prefix}/llvm-objcopy"
++ nm = "${prefix}llvm-nm"
++ ar = "${prefix}llvm-ar"
++ ld = "${link_prefix}${prefix}clang++"
++ llvm_objcopy = "${prefix}llvm-objcopy"
+
+ toolchain_cpu = "riscv64"
+ toolchain_os = "linux"
diff --git a/testing/flutter/unbundle.patch b/testing/flutter/unbundle.patch
new file mode 100644
index 00000000000..8dc368813c3
--- /dev/null
+++ b/testing/flutter/unbundle.patch
@@ -0,0 +1,21 @@
+--- a/packages/flutter_tools/lib/src/build_system/targets/linux.dart
++++ b/packages/flutter_tools/lib/src/build_system/targets/linux.dart
+@@ -19,7 +19,6 @@
+
+ /// The only files/subdirectories we care out.
+ const List<String> _kLinuxArtifacts = <String>[
+- 'libflutter_linux_gtk.so',
+ ];
+
+ const String _kLinuxDepfile = 'linux_engine_sources.d';
+@@ -79,10 +78,6 @@
+ outputDirectory: outputDirectory,
+ artifacts: _kLinuxArtifacts,
+ clientSourcePaths: <String>[headersPath],
+- icuDataPath: environment.artifacts.getArtifactPath(
+- Artifact.icuData,
+- platform: targetPlatform,
+- )
+ );
+ final DepfileService depfileService = DepfileService(
+ fileSystem: environment.fileSystem,
diff --git a/testing/flutter/unbundle.patch.engine b/testing/flutter/unbundle.patch.engine
new file mode 100644
index 00000000000..cc6bce62687
--- /dev/null
+++ b/testing/flutter/unbundle.patch.engine
@@ -0,0 +1,950 @@
+diff --git a/build/linux/unbundle/fontconfig.gn b/build/linux/unbundle/fontconfig.gn
+new file mode 100644
+index 0000000..87926d5
+--- /dev/null
++++ b/build/linux/unbundle/fontconfig.gn
+@@ -0,0 +1,13 @@
++# Copyright 2017 The Chromium Authors
++# Use of this source code is governed by a BSD-style license that can be
++# found in the LICENSE file.
++
++assert(is_linux || is_chromeos)
++
++config("fontconfig_config") {
++ libs = [ "fontconfig" ]
++}
++
++group("fontconfig") {
++ public_configs = [ ":fontconfig_config" ]
++}
+diff --git a/build/linux/unbundle/freetype2.gn b/build/linux/unbundle/freetype2.gn
+new file mode 100644
+index 0000000..3b8cafb
+--- /dev/null
++++ b/build/linux/unbundle/freetype2.gn
+@@ -0,0 +1,35 @@
++# Copyright 2013 The Flutter Authors. All rights reserved.
++# Use of this source code is governed by a BSD-style license that can be
++# found in the LICENSE file.
++
++import("//build/config/linux/pkg_config.gni")
++import("//build/shim_headers.gni")
++
++config("freetype_config") {
++ include_dirs = [ "include/freetype-flutter-config" ]
++
++ cflags = []
++
++ if (is_clang) {
++ cflags += [
++ "-Wno-unused-function",
++ "-Wno-unused-variable",
++ ]
++ }
++}
++
++pkg_config("system_freetype2") {
++ packages = [ "freetype2" ]
++}
++
++source_set("freetype2") {
++ output_name = "freetype2"
++ deps = [
++ "//third_party/libpng",
++ "//third_party/zlib",
++ ]
++ public_configs = [
++ ":freetype_config",
++ ":system_freetype2",
++ ]
++}
+diff --git a/build/linux/unbundle/harfbuzz.gn b/build/linux/unbundle/harfbuzz.gn
+new file mode 100644
+index 0000000..72d3e06
+--- /dev/null
++++ b/build/linux/unbundle/harfbuzz.gn
+@@ -0,0 +1,31 @@
++# Copyright 2013 The Flutter Authors. All rights reserved.
++# Use of this source code is governed by a BSD-style license that can be
++# found in the LICENSE file.
++
++import("//build/config/linux/pkg_config.gni")
++
++pkg_config("system_harfbuzz") {
++ packages = [ "harfbuzz" ]
++}
++
++pkg_config("system_harfbuzz_subset") {
++ packages = [ "harfbuzz-subset" ]
++}
++
++source_set("harfbuzz") {
++ output_name = "harfbuzz"
++ deps = [
++ "//third_party/freetype2",
++ "//third_party/icu:icuuc",
++ ]
++ public_configs = [ ":system_harfbuzz" ]
++}
++
++source_set("harfbuzz_subset") {
++ output_name = "harfbuzz_subset"
++ deps = [
++ "//third_party/freetype2",
++ "//third_party/icu:icuuc",
++ ]
++ public_configs = [ ":system_harfbuzz_subset" ]
++}
+diff --git a/build/linux/unbundle/icu.gn b/build/linux/unbundle/icu.gn
+new file mode 100644
+index 0000000..9e54d4e
+--- /dev/null
++++ b/build/linux/unbundle/icu.gn
+@@ -0,0 +1,262 @@
++# Copyright 2016 The Chromium Authors
++# Use of this source code is governed by a BSD-style license that can be
++# found in the LICENSE file.
++
++import("//build/config/linux/pkg_config.gni")
++import("//build/shim_headers.gni")
++
++group("icu") {
++ public_deps = [
++ ":icui18n",
++ ":icuuc",
++ ]
++}
++
++config("icu_config") {
++ defines = [
++ "USING_SYSTEM_ICU=1",
++ "ICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_STATIC",
++
++ # U_EXPORT (defined in unicode/platform.h) is used to set public visibility
++ # on classes through the U_COMMON_API and U_I18N_API macros (among others).
++ # When linking against the system ICU library, we want its symbols to have
++ # public LTO visibility. This disables CFI checks for the ICU classes and
++ # allows whole-program optimization to be applied to the rest of Chromium.
++ #
++ # Both U_COMMON_API and U_I18N_API macros would be defined to U_EXPORT only
++ # when U_COMBINED_IMPLEMENTATION is defined (see unicode/utypes.h). Because
++ # we override the default system UCHAR_TYPE (char16_t), it is not possible
++ # to use U_COMBINED_IMPLEMENTATION at this moment, meaning the U_COMMON_API
++ # and U_I18N_API macros are set to U_IMPORT which is an empty definition.
++ #
++ # Until building with UCHAR_TYPE=char16_t is supported, one way to apply
++ # public visibility (and thus public LTO visibility) to all ICU classes is
++ # to define U_IMPORT to have the same value as U_EXPORT. For more details,
++ # please see: https://crbug.com/822820
++ "U_IMPORT=U_EXPORT",
++ ]
++}
++
++pkg_config("system_icui18n") {
++ packages = [ "icu-i18n" ]
++}
++
++pkg_config("system_icuuc") {
++ packages = [ "icu-uc" ]
++}
++
++source_set("icui18n") {
++ public_deps = [ ":icui18n_shim" ]
++ public_configs = [
++ ":icu_config",
++ ":system_icui18n",
++ ]
++}
++
++source_set("icuuc") {
++ public_deps = [ ":icuuc_shim" ]
++ public_configs = [
++ ":icu_config",
++ ":system_icuuc",
++ ]
++}
++
++group("icui18n_hidden_visibility") {
++ public_deps = [ ":icui18n" ]
++}
++
++group("icuuc_hidden_visibility") {
++ public_deps = [ ":icuuc" ]
++}
++
++shim_headers("icui18n_shim") {
++ root_path = "source/i18n"
++ headers = [
++ # This list can easily be updated using the commands below:
++ # cd third_party/icu/source/i18n
++ # find unicode -iname '*.h' -printf ' "%p",\n' | LC_ALL=C sort -u
++ "unicode/alphaindex.h",
++ "unicode/basictz.h",
++ "unicode/calendar.h",
++ "unicode/choicfmt.h",
++ "unicode/coleitr.h",
++ "unicode/coll.h",
++ "unicode/compactdecimalformat.h",
++ "unicode/curramt.h",
++ "unicode/currpinf.h",
++ "unicode/currunit.h",
++ "unicode/datefmt.h",
++ "unicode/dcfmtsym.h",
++ "unicode/decimfmt.h",
++ "unicode/dtfmtsym.h",
++ "unicode/dtitvfmt.h",
++ "unicode/dtitvinf.h",
++ "unicode/dtptngen.h",
++ "unicode/dtrule.h",
++ "unicode/fieldpos.h",
++ "unicode/fmtable.h",
++ "unicode/format.h",
++ "unicode/fpositer.h",
++ "unicode/gender.h",
++ "unicode/gregocal.h",
++ "unicode/listformatter.h",
++ "unicode/measfmt.h",
++ "unicode/measunit.h",
++ "unicode/measure.h",
++ "unicode/msgfmt.h",
++ "unicode/numfmt.h",
++ "unicode/numsys.h",
++ "unicode/plurfmt.h",
++ "unicode/plurrule.h",
++ "unicode/rbnf.h",
++ "unicode/rbtz.h",
++ "unicode/regex.h",
++ "unicode/region.h",
++ "unicode/reldatefmt.h",
++ "unicode/scientificnumberformatter.h",
++ "unicode/search.h",
++ "unicode/selfmt.h",
++ "unicode/simpletz.h",
++ "unicode/smpdtfmt.h",
++ "unicode/sortkey.h",
++ "unicode/stsearch.h",
++ "unicode/tblcoll.h",
++ "unicode/timezone.h",
++ "unicode/tmunit.h",
++ "unicode/tmutamt.h",
++ "unicode/tmutfmt.h",
++ "unicode/translit.h",
++ "unicode/tzfmt.h",
++ "unicode/tznames.h",
++ "unicode/tzrule.h",
++ "unicode/tztrans.h",
++ "unicode/ucal.h",
++ "unicode/ucol.h",
++ "unicode/ucoleitr.h",
++ "unicode/ucsdet.h",
++ "unicode/udat.h",
++ "unicode/udateintervalformat.h",
++ "unicode/udatpg.h",
++ "unicode/ufieldpositer.h",
++ "unicode/uformattable.h",
++ "unicode/ugender.h",
++ "unicode/ulocdata.h",
++ "unicode/umsg.h",
++ "unicode/unirepl.h",
++ "unicode/unum.h",
++ "unicode/unumsys.h",
++ "unicode/upluralrules.h",
++ "unicode/uregex.h",
++ "unicode/uregion.h",
++ "unicode/ureldatefmt.h",
++ "unicode/usearch.h",
++ "unicode/uspoof.h",
++ "unicode/utmscale.h",
++ "unicode/utrans.h",
++ "unicode/vtzone.h",
++ ]
++}
++
++shim_headers("icuuc_shim") {
++ root_path = "source/common"
++ headers = [
++ # This list can easily be updated using the commands below:
++ # cd third_party/icu/source/common
++ # find unicode -iname '*.h' -printf ' "%p",\n' | LC_ALL=C sort -u
++ "unicode/appendable.h",
++ "unicode/brkiter.h",
++ "unicode/bytestream.h",
++ "unicode/bytestrie.h",
++ "unicode/bytestriebuilder.h",
++ "unicode/caniter.h",
++ "unicode/casemap.h",
++ "unicode/char16ptr.h",
++ "unicode/chariter.h",
++ "unicode/dbbi.h",
++ "unicode/docmain.h",
++ "unicode/dtintrv.h",
++ "unicode/edits.h",
++ "unicode/enumset.h",
++ "unicode/errorcode.h",
++ "unicode/filteredbrk.h",
++ "unicode/icudataver.h",
++ "unicode/icuplug.h",
++ "unicode/idna.h",
++ "unicode/localematcher.h",
++ "unicode/localpointer.h",
++ "unicode/locdspnm.h",
++ "unicode/locid.h",
++ "unicode/messagepattern.h",
++ "unicode/normalizer2.h",
++ "unicode/normlzr.h",
++ "unicode/parseerr.h",
++ "unicode/parsepos.h",
++ "unicode/platform.h",
++ "unicode/ptypes.h",
++ "unicode/putil.h",
++ "unicode/rbbi.h",
++ "unicode/rep.h",
++ "unicode/resbund.h",
++ "unicode/schriter.h",
++ "unicode/simpleformatter.h",
++ "unicode/std_string.h",
++ "unicode/strenum.h",
++ "unicode/stringpiece.h",
++ "unicode/stringtriebuilder.h",
++ "unicode/symtable.h",
++ "unicode/ubidi.h",
++ "unicode/ubiditransform.h",
++ "unicode/ubrk.h",
++ "unicode/ucasemap.h",
++ "unicode/ucat.h",
++ "unicode/uchar.h",
++ "unicode/ucharstrie.h",
++ "unicode/ucharstriebuilder.h",
++ "unicode/uchriter.h",
++ "unicode/uclean.h",
++ "unicode/ucnv.h",
++ "unicode/ucnv_cb.h",
++ "unicode/ucnv_err.h",
++ "unicode/ucnvsel.h",
++ "unicode/uconfig.h",
++ "unicode/ucurr.h",
++ "unicode/udata.h",
++ "unicode/udisplaycontext.h",
++ "unicode/uenum.h",
++ "unicode/uidna.h",
++ "unicode/uiter.h",
++ "unicode/uldnames.h",
++ "unicode/ulistformatter.h",
++ "unicode/uloc.h",
++ "unicode/umachine.h",
++ "unicode/umisc.h",
++ "unicode/unifilt.h",
++ "unicode/unifunct.h",
++ "unicode/unimatch.h",
++ "unicode/uniset.h",
++ "unicode/unistr.h",
++ "unicode/unorm.h",
++ "unicode/unorm2.h",
++ "unicode/uobject.h",
++ "unicode/urename.h",
++ "unicode/urep.h",
++ "unicode/ures.h",
++ "unicode/uscript.h",
++ "unicode/uset.h",
++ "unicode/usetiter.h",
++ "unicode/ushape.h",
++ "unicode/usprep.h",
++ "unicode/ustring.h",
++ "unicode/ustringtrie.h",
++ "unicode/utext.h",
++ "unicode/utf.h",
++ "unicode/utf16.h",
++ "unicode/utf32.h",
++ "unicode/utf8.h",
++ "unicode/utf_old.h",
++ "unicode/utrace.h",
++ "unicode/utypes.h",
++ "unicode/uvernum.h",
++ "unicode/uversion.h",
++ ]
++}
+diff --git a/build/linux/unbundle/libjpeg-turbo.gn b/build/linux/unbundle/libjpeg-turbo.gn
+new file mode 100644
+index 0000000..be0c674
+--- /dev/null
++++ b/build/linux/unbundle/libjpeg-turbo.gn
+@@ -0,0 +1,11 @@
++# Copyright 2013 The Flutter Authors. All rights reserved.
++# Use of this source code is governed by a BSD-style license that can be
++# found in the LICENSE file.
++
++config("libjpeg_config") {
++ libs = [ "jpeg" ]
++}
++
++group("libjpeg") {
++ public_configs = [ ":libjpeg_config" ]
++}
+diff --git a/build/linux/unbundle/libpng.gn b/build/linux/unbundle/libpng.gn
+new file mode 100644
+index 0000000..91e0ee4
+--- /dev/null
++++ b/build/linux/unbundle/libpng.gn
+@@ -0,0 +1,23 @@
++# Copyright 2016 The Chromium Authors
++# Use of this source code is governed by a BSD-style license that can be
++# found in the LICENSE file.
++
++import("//build/config/linux/pkg_config.gni")
++import("//build/shim_headers.gni")
++
++pkg_config("libpng_config") {
++ packages = [ "libpng" ]
++}
++
++shim_headers("libpng_shim") {
++ root_path = "."
++ headers = [
++ "png.h",
++ "pngconf.h",
++ ]
++}
++
++source_set("libpng") {
++ deps = [ ":libpng_shim" ]
++ public_configs = [ ":libpng_config" ]
++}
+diff --git a/build/linux/unbundle/libwebp.gn b/build/linux/unbundle/libwebp.gn
+new file mode 100644
+index 0000000..708cc9c
+--- /dev/null
++++ b/build/linux/unbundle/libwebp.gn
+@@ -0,0 +1,35 @@
++# Copyright 2016 The Chromium Authors
++# Use of this source code is governed by a BSD-style license that can be
++# found in the LICENSE file.
++
++import("//build/config/linux/pkg_config.gni")
++import("//build/shim_headers.gni")
++
++pkg_config("system_libwebp") {
++ packages = [
++ "libwebp",
++ "libwebpdemux",
++ "libwebpmux",
++ ]
++}
++
++shim_headers("libwebp_shim") {
++ root_path = "src/src"
++ headers = [
++ "webp/decode.h",
++ "webp/demux.h",
++ "webp/encode.h",
++ "webp/mux.h",
++ "webp/mux_types.h",
++ "webp/types.h",
++ ]
++}
++
++source_set("libwebp_webp") {
++ deps = [ ":libwebp_shim" ]
++ public_configs = [ ":system_libwebp" ]
++}
++
++group("libwebp") {
++ deps = [ ":libwebp_webp" ]
++}
+diff --git a/build/linux/unbundle/libxml.gn b/build/linux/unbundle/libxml.gn
+new file mode 100644
+index 0000000..b42d044
+--- /dev/null
++++ b/build/linux/unbundle/libxml.gn
+@@ -0,0 +1,13 @@
++# Copyright 2016 The Chromium Authors
++# Use of this source code is governed by a BSD-style license that can be
++# found in the LICENSE file.
++
++import("//build/config/linux/pkg_config.gni")
++
++pkg_config("system_libxml") {
++ packages = [ "libxml-2.0" ]
++}
++
++source_set("libxml") {
++ public_configs = [ ":system_libxml" ]
++}
+diff --git a/build/linux/unbundle/replace_gn_files.py b/build/linux/unbundle/replace_gn_files.py
+new file mode 100755
+index 0000000..b8b24c6
+--- /dev/null
++++ b/build/linux/unbundle/replace_gn_files.py
+@@ -0,0 +1,101 @@
++#!/usr/bin/env python3
++# Copyright 2016 The Chromium Authors
++# Use of this source code is governed by a BSD-style license that can be
++# found in the LICENSE file.
++
++"""
++Replaces GN files in tree with files from here that
++make the build use system libraries.
++"""
++
++import argparse
++import os
++import shutil
++import sys
++
++
++REPLACEMENTS = {
++ # Use system libabsl_2xxx. These 18 shims MUST be used together.
++ 'absl_algorithm': 'third_party/abseil-cpp/absl/algorithm/BUILD.gn',
++ 'absl_base': 'third_party/abseil-cpp/absl/base/BUILD.gn',
++ 'absl_cleanup': 'third_party/abseil-cpp/absl/cleanup/BUILD.gn',
++ 'absl_container': 'third_party/abseil-cpp/absl/container/BUILD.gn',
++ 'absl_debugging': 'third_party/abseil-cpp/absl/debugging/BUILD.gn',
++ 'absl_flags': 'third_party/abseil-cpp/absl/flags/BUILD.gn',
++ 'absl_functional': 'third_party/abseil-cpp/absl/functional/BUILD.gn',
++ 'absl_hash': 'third_party/abseil-cpp/absl/hash/BUILD.gn',
++ 'absl_memory': 'third_party/abseil-cpp/absl/memory/BUILD.gn',
++ 'absl_meta': 'third_party/abseil-cpp/absl/meta/BUILD.gn',
++ 'absl_numeric': 'third_party/abseil-cpp/absl/numeric/BUILD.gn',
++ 'absl_random': 'third_party/abseil-cpp/absl/random/BUILD.gn',
++ 'absl_status': 'third_party/abseil-cpp/absl/status/BUILD.gn',
++ 'absl_strings': 'third_party/abseil-cpp/absl/strings/BUILD.gn',
++ 'absl_synchronization': 'third_party/abseil-cpp/absl/synchronization/BUILD.gn',
++ 'absl_time': 'third_party/abseil-cpp/absl/time/BUILD.gn',
++ 'absl_types': 'third_party/abseil-cpp/absl/types/BUILD.gn',
++ 'absl_utility': 'third_party/abseil-cpp/absl/utility/BUILD.gn',
++ #
++ 'fontconfig': 'third_party/fontconfig/BUILD.gn',
++ 'freetype2': 'third_party/freetype2/BUILD.gn',
++ 'harfbuzz': 'third_party/harfbuzz/BUILD.gn',
++ 'icu': 'third_party/icu/BUILD.gn',
++ 'libjpeg-turbo': 'flutter/third_party/libjpeg-turbo/BUILD.gn',
++ 'libpng': 'third_party/libpng/BUILD.gn',
++ 'libwebp': 'flutter/build/secondary/flutter/third_party/libwebp/BUILD.gn',
++ 'libxml': 'third_party/libxml/BUILD.gn',
++ 'libXNVCtrl': 'third_party/angle/src/third_party/libXNVCtrl/BUILD.gn',
++ 'sqlite': 'flutter/third_party/sqlite/BUILD.gn',
++ # Use system libSPIRV-Tools in Swiftshader. These two shims MUST be used together.
++ 'swiftshader-SPIRV-Headers': 'flutter/third_party/swiftshader/third_party/SPIRV-Headers/BUILD.gn',
++ 'swiftshader-SPIRV-Tools': 'flutter/third_party/swiftshader/third_party/SPIRV-Tools/BUILD.gn',
++ # Use system libSPIRV-Tools inside ANGLE. These two shims MUST be used together
++ # and can only be used if WebGPU is not compiled (use_dawn=false)
++ 'vulkan-SPIRV-Headers': 'third_party/vulkan-deps/spirv-headers/src/BUILD.gn',
++ 'vulkan-SPIRV-Tools': 'third_party/vulkan-deps/spirv-tools/src/BUILD.gn',
++ #
++ 'zlib': 'third_party/zlib/BUILD.gn',
++}
++
++
++def DoMain(argv):
++ my_dirname = os.path.dirname(__file__)
++ source_tree_root = os.path.abspath(
++ os.path.join(my_dirname, '..', '..', '..'))
++
++ parser = argparse.ArgumentParser()
++ parser.add_argument('--system-libraries', nargs='*', default=[])
++ parser.add_argument('--undo', action='store_true')
++
++ args = parser.parse_args(argv)
++
++ handled_libraries = set()
++ for lib, path in REPLACEMENTS.items():
++ if lib not in args.system_libraries:
++ continue
++ handled_libraries.add(lib)
++
++ if args.undo:
++ # Restore original file, and also remove the backup.
++ # This is meant to restore the source tree to its original state.
++ os.rename(os.path.join(source_tree_root, path + '.orig'),
++ os.path.join(source_tree_root, path))
++ else:
++ # Create a backup copy for --undo.
++ shutil.copyfile(os.path.join(source_tree_root, path),
++ os.path.join(source_tree_root, path + '.orig'))
++
++ # Copy the GN file from directory of this script to target path.
++ shutil.copyfile(os.path.join(my_dirname, '%s.gn' % lib),
++ os.path.join(source_tree_root, path))
++
++ unhandled_libraries = set(args.system_libraries) - handled_libraries
++ if unhandled_libraries:
++ print('Unrecognized system libraries requested: %s' % ', '.join(
++ sorted(unhandled_libraries)), file=sys.stderr)
++ return 1
++
++ return 0
++
++
++if __name__ == '__main__':
++ sys.exit(DoMain(sys.argv[1:]))
+diff --git a/build/linux/unbundle/sqlite.gn b/build/linux/unbundle/sqlite.gn
+new file mode 100644
+index 0000000..e6c653d
+--- /dev/null
++++ b/build/linux/unbundle/sqlite.gn
+@@ -0,0 +1,20 @@
++# Copyright 2013 The Flutter Authors. All rights reserved.
++# Use of this source code is governed by a BSD-style license that can be
++# found in the LICENSE file.
++
++import("//build/config/linux/pkg_config.gni")
++import("//build/shim_headers.gni")
++
++pkg_config("system_sqlite") {
++ packages = [ "sqlite3" ]
++}
++
++shim_headers("sqlite_shim") {
++ root_path = "//third_party/sqlite"
++ headers = [ "sqlite3.h" ]
++}
++
++source_set("sqlite") {
++ public_deps = [ ":sqlite_shim" ]
++ public_configs = [ ":system_sqlite" ]
++}
+diff --git a/build/linux/unbundle/zlib.gn b/build/linux/unbundle/zlib.gn
+new file mode 100644
+index 0000000..6daf3c6
+--- /dev/null
++++ b/build/linux/unbundle/zlib.gn
+@@ -0,0 +1,72 @@
++# Copyright 2016 The Chromium Authors
++# Use of this source code is governed by a BSD-style license that can be
++# found in the LICENSE file.
++
++import("//build/shim_headers.gni")
++
++declare_args() {
++ use_zlib_ng = false
++}
++
++if (use_zlib_ng) {
++ _suffix = "-ng"
++} else {
++ _suffix = ""
++}
++
++shim_headers("zlib_shim") {
++ root_path = "."
++ headers = [ "zlib.h%zlib$_suffix.h" ]
++ additional_includes = [ "third_party" ]
++}
++
++config("system_zlib") {
++ defines = [ "USE_SYSTEM_ZLIB=1" ]
++}
++
++config("zlib_config") {
++ configs = [ ":system_zlib" ]
++}
++
++source_set("zlib") {
++ public_deps = [ ":zlib_shim" ]
++ libs = [ "z$_suffix" ]
++ public_configs = [ ":system_zlib" ]
++}
++
++shim_headers("minizip_shim") {
++ root_path = "contrib"
++ headers = [
++ "minizip/crypt.h",
++ "minizip/ioapi.h",
++ "minizip/iowin32.h",
++ "minizip/mztools.h",
++ "minizip/unzip.h",
++ "minizip/zip.h",
++ ]
++}
++
++source_set("minizip") {
++ deps = [ ":minizip_shim" ]
++ libs = [ "minizip" ]
++}
++
++static_library("zip") {
++ sources = [
++ "google/zip.cc",
++ "google/zip.h",
++ "google/zip_internal.cc",
++ "google/zip_internal.h",
++ "google/zip_reader.cc",
++ "google/zip_reader.h",
++ ]
++ deps = [ ":minizip" ]
++}
++
++static_library("compression_utils") {
++ sources = [
++ "google/compression_utils.cc",
++ "google/compression_utils.h",
++ ]
++ deps = [ ":zlib" ]
++}
+diff --git a/build/shim_headers.gni b/build/shim_headers.gni
+new file mode 100644
+index 0000000..1d24e0a
+--- /dev/null
++++ b/build/shim_headers.gni
+@@ -0,0 +1,42 @@
++# Copyright 2016 The Chromium Authors
++# Use of this source code is governed by a BSD-style license that can be
++# found in the LICENSE file.
++template("shim_headers") {
++ action_name = "gen_${target_name}"
++ config_name = "${target_name}_config"
++ shim_headers_path = "${root_gen_dir}/shim_headers/${target_name}"
++ config(config_name) {
++ include_dirs = [ shim_headers_path ]
++ if (defined(invoker.additional_includes)) {
++ foreach(i, invoker.additional_includes) {
++ include_dirs += [ shim_headers_path + "/" + i ]
++ }
++ }
++ }
++ action(action_name) {
++ script = "//tools/generate_shim_headers.py"
++ args = [
++ "--generate",
++ "--headers-root",
++ rebase_path(invoker.root_path),
++ "--output-directory",
++ rebase_path(shim_headers_path),
++ ]
++ if (defined(invoker.prefix)) {
++ args += [
++ "--prefix",
++ invoker.prefix,
++ ]
++ }
++ args += invoker.headers
++ outputs = []
++ foreach(h, invoker.headers) {
++ outputs += [ shim_headers_path + "/" +
++ rebase_path(invoker.root_path, "//") + "/" + h ]
++ }
++ }
++ group(target_name) {
++ public_deps = [ ":${action_name}" ]
++ all_dependent_configs = [ ":${config_name}" ]
++ }
++}
+diff --git a/tools/generate_shim_headers.py b/tools/generate_shim_headers.py
+new file mode 100644
+index 0000000..aaa16f8
+--- /dev/null
++++ b/tools/generate_shim_headers.py
+@@ -0,0 +1,116 @@
++#!/usr/bin/env python
++# Copyright 2012 The Chromium Authors
++# Use of this source code is governed by a BSD-style license that can be
++# found in the LICENSE file.
++
++"""
++Generates shim headers that mirror the directory structure of bundled headers,
++but just forward to the system ones.
++
++This allows seamless compilation against system headers with no changes
++to our source code.
++"""
++
++
++import optparse
++import os.path
++import sys
++
++
++SHIM_TEMPLATE = """
++#if defined(OFFICIAL_BUILD)
++#error shim headers must not be used in official builds!
++#endif
++"""
++
++
++def GeneratorMain(argv):
++ parser = optparse.OptionParser()
++ parser.add_option('--headers-root', action='append')
++ parser.add_option('--define', action='append')
++ parser.add_option('--output-directory')
++ parser.add_option('--prefix', default='')
++ parser.add_option('--use-include-next', action='store_true')
++ parser.add_option('--outputs', action='store_true')
++ parser.add_option('--generate', action='store_true')
++
++ options, args = parser.parse_args(argv)
++
++ if not options.headers_root:
++ parser.error('Missing --headers-root parameter.')
++ if not options.output_directory:
++ parser.error('Missing --output-directory parameter.')
++ if not args:
++ parser.error('Missing arguments - header file names.')
++
++ source_tree_root = os.path.abspath(
++ os.path.join(os.path.dirname(__file__), '..'))
++
++ for root in options.headers_root:
++ target_directory = os.path.join(
++ options.output_directory,
++ os.path.relpath(root, source_tree_root))
++ if options.generate and not os.path.exists(target_directory):
++ os.makedirs(target_directory)
++
++ for header_spec in args:
++ if ';' in header_spec:
++ (header_filename,
++ include_before,
++ include_after) = header_spec.split(';', 2)
++ else:
++ header_filename = header_spec
++ include_before = ''
++ include_after = ''
++ if '%' in header_filename:
++ (header_filename,
++ upstream_header_filename) = header_filename.split('%', 1)
++ else:
++ upstream_header_filename = header_filename
++ if options.outputs:
++ yield os.path.join(target_directory, header_filename)
++ if options.generate:
++ header_path = os.path.join(target_directory, header_filename)
++ header_dir = os.path.dirname(header_path)
++ if not os.path.exists(header_dir):
++ os.makedirs(header_dir)
++ with open(header_path, 'w') as f:
++ f.write(SHIM_TEMPLATE)
++
++ if options.define:
++ for define in options.define:
++ key, value = define.split('=', 1)
++ # This non-standard push_macro extension is supported
++ # by compilers we support (GCC, clang).
++ f.write('#pragma push_macro("%s")\n' % key)
++ f.write('#undef %s\n' % key)
++ f.write('#define %s %s\n' % (key, value))
++
++ if include_before:
++ for header in include_before.split(':'):
++ f.write('#include %s\n' % header)
++
++ include_target = options.prefix + upstream_header_filename
++ if options.use_include_next:
++ f.write('#include_next <%s>\n' % include_target)
++ else:
++ f.write('#include <%s>\n' % include_target)
++
++ if include_after:
++ for header in include_after.split(':'):
++ f.write('#include %s\n' % header)
++
++ if options.define:
++ for define in options.define:
++ key, value = define.split('=', 1)
++ # This non-standard pop_macro extension is supported
++ # by compilers we support (GCC, clang).
++ f.write('#pragma pop_macro("%s")\n' % key)
++
++
++def DoMain(argv):
++ return '\n'.join(GeneratorMain(argv))
++
++
++if __name__ == '__main__':
++ DoMain(sys.argv[1:])
+--- /dev/null
++++ ./build/linux/unbundle/vulkan-SPIRV-Headers.gn
+@@ -0,0 +1,19 @@
++# This shim can only be used if you build Chromium without DAWN
++
++import("//build/shim_headers.gni")
++
++shim_headers("vulkan-SPIRV-Headers_shim") {
++ root_path = "include"
++ headers = [
++ "spirv/unified1/GLSL.std.450.h",
++ "spirv/unified1/NonSemanticClspvReflection.h",
++ "spirv/unified1/NonSemanticDebugPrintf.h",
++ "spirv/unified1/OpenCL.std.h",
++ "spirv/unified1/spirv.h",
++ "spirv/unified1/spirv.hpp",
++ ]
++}
++
++source_set("spv_headers") {
++ deps = [ ":vulkan-SPIRV-Headers_shim" ]
++}
+--- /dev/null
++++ ./build/linux/unbundle/vulkan-SPIRV-Tools.gn
+@@ -0,0 +1,73 @@
++# This shim can only be used if you build Chromium without DAWN
++
++import("//build/config/linux/pkg_config.gni")
++import("//build/shim_headers.gni")
++
++pkg_config("spvtools_internal_config") {
++ packages = [ "SPIRV-Tools" ]
++}
++
++shim_headers("vulkan-SPIRV-Tools_shim") {
++ root_path = "include"
++ headers = [
++ "spirv-tools/instrument.hpp",
++ "spirv-tools/libspirv.h",
++ "spirv-tools/libspirv.hpp",
++ "spirv-tools/linker.hpp",
++ "spirv-tools/optimizer.hpp",
++ ]
++}
++
++source_set("SPIRV-Tools") {
++ deps = [ ":vulkan-SPIRV-Tools_shim" ]
++ public_configs = [ ":spvtools_internal_config" ]
++}
++
++source_set("spvtools") {
++ deps = [ ":vulkan-SPIRV-Tools_shim" ]
++ public_configs = [ ":spvtools_internal_config" ]
++}
++
++source_set("spvtools_core_enums_unified1") {
++ deps = [ ":vulkan-SPIRV-Tools_shim" ]
++ public_configs = [ ":spvtools_internal_config" ]
++}
++
++source_set("spvtools_core_tables_unified1") {
++ deps = [ ":vulkan-SPIRV-Tools_shim" ]
++ public_configs = [ ":spvtools_internal_config" ]
++}
++
++source_set("spvtools_headers") {
++ deps = [ ":vulkan-SPIRV-Tools_shim" ]
++ public_configs = [ ":spvtools_internal_config" ]
++}
++
++source_set("spvtools_language_header_cldebuginfo100") {
++ deps = [ ":vulkan-SPIRV-Tools_shim" ]
++ public_configs = [ ":spvtools_internal_config" ]
++}
++
++source_set("spvtools_language_header_debuginfo") {
++ deps = [ ":vulkan-SPIRV-Tools_shim" ]
++ public_configs = [ ":spvtools_internal_config" ]
++}
++
++source_set("spvtools_language_header_vkdebuginfo100") {
++ deps = [ ":vulkan-SPIRV-Tools_shim" ]
++ public_configs = [ ":spvtools_internal_config" ]
++}
++
++source_set("spvtools_opt") {
++ deps = [ ":vulkan-SPIRV-Tools_shim" ]
++ public_configs = [ ":spvtools_internal_config" ]
++}
++
++config("spvtools_public_config") {
++ configs = [ ":spvtools_internal_config" ]
++}
++
++source_set("spvtools_val") {
++ deps = [ ":vulkan-SPIRV-Tools_shim" ]
++ public_configs = [ ":spvtools_internal_config" ]
++}
diff --git a/testing/flutter/version.patch b/testing/flutter/version.patch
new file mode 100644
index 00000000000..d9690a2cfa9
--- /dev/null
+++ b/testing/flutter/version.patch
@@ -0,0 +1,288 @@
+--- ./packages/flutter_tools/lib/src/version.dart.orig
++++ ./packages/flutter_tools/lib/src/version.dart
+@@ -91,7 +91,7 @@
+ }) {
+ final File versionFile = getVersionFile(fs, flutterRoot);
+
+- if (!fetchTags && versionFile.existsSync()) {
++ if (versionFile.existsSync()) {
+ final _FlutterVersionFromFile? version = _FlutterVersionFromFile.tryParseFromFile(
+ versionFile,
+ flutterRoot: flutterRoot,
+@@ -110,11 +110,7 @@
+ }
+ }
+
+- final String frameworkRevision = _runGit(
+- gitLog(<String>['-n', '1', '--pretty=format:%H']).join(' '),
+- globals.processUtils,
+- flutterRoot,
+- );
++ final String frameworkRevision = "alpineaports0000000000000000000000000000";
+
+ return FlutterVersion.fromRevision(
+ clock: clock,
+@@ -145,7 +141,7 @@
+ workingDirectory: flutterRoot,
+ fetchTags: fetchTags,
+ );
+- final String frameworkVersion = gitTagVersion.frameworkVersionFor(frameworkRevision);
++ final String frameworkVersion = globals.fs.file(globals.fs.path.join(Cache.flutterRoot!, 'version')).readAsStringSync();
+ return _FlutterVersionGit._(
+ clock: clock,
+ flutterRoot: flutterRoot,
+@@ -217,11 +213,7 @@
+ // TODO(fujino): calculate this relative to frameworkCommitDate for
+ // _FlutterVersionFromFile so we don't need a git call.
+ String get frameworkAge {
+- return _frameworkAge ??= _runGit(
+- FlutterVersion.gitLog(<String>['-n', '1', '--pretty=format:%ar']).join(' '),
+- globals.processUtils,
+- flutterRoot,
+- );
++ return _frameworkAge ??= 'unknown (alpine package)';
+ }
+
+ void ensureVersionFile();
+@@ -301,43 +293,7 @@
+ /// Returns null if the cached version is out-of-date or missing, and we are
+ /// unable to reach the server to get the latest version.
+ Future<DateTime?> _getLatestAvailableFlutterDate() async {
+- globals.cache.checkLockAcquired();
+- final VersionCheckStamp versionCheckStamp = await VersionCheckStamp.load(globals.cache, globals.logger);
+-
+- final DateTime now = _clock.now();
+- if (versionCheckStamp.lastTimeVersionWasChecked != null) {
+- final Duration timeSinceLastCheck = now.difference(
+- versionCheckStamp.lastTimeVersionWasChecked!,
+- );
+-
+- // Don't ping the server too often. Return cached value if it's fresh.
+- if (timeSinceLastCheck < VersionFreshnessValidator.checkAgeConsideredUpToDate) {
+- return versionCheckStamp.lastKnownRemoteVersion;
+- }
+- }
+-
+- // Cache is empty or it's been a while since the last server ping. Ping the server.
+- try {
+- final DateTime remoteFrameworkCommitDate = DateTime.parse(
+- await fetchRemoteFrameworkCommitDate(),
+- );
+- await versionCheckStamp.store(
+- newTimeVersionWasChecked: now,
+- newKnownRemoteVersion: remoteFrameworkCommitDate,
+- );
+- return remoteFrameworkCommitDate;
+- } on VersionCheckError catch (error) {
+- // This happens when any of the git commands fails, which can happen when
+- // there's no Internet connectivity. Remote version check is best effort
+- // only. We do not prevent the command from running when it fails.
+- globals.printTrace('Failed to check Flutter version in the remote repository: $error');
+- // Still update the timestamp to avoid us hitting the server on every single
+- // command if for some reason we cannot connect (eg. we may be offline).
+- await versionCheckStamp.store(
+- newTimeVersionWasChecked: now,
+- );
+- return null;
+- }
++ return null;
+ }
+
+ /// The date of the latest framework commit in the remote repository.
+@@ -421,32 +377,13 @@
+ bool lenient = false,
+ required String? workingDirectory,
+ }) {
+- final List<String> args = FlutterVersion.gitLog(<String>[
+- gitRef,
+- '-n',
+- '1',
+- '--pretty=format:%ad',
+- '--date=iso',
+- ]);
+- try {
+- // Don't plumb 'lenient' through directly so that we can print an error
+- // if something goes wrong.
+- return _runSync(
+- args,
+- lenient: false,
+- workingDirectory: workingDirectory,
+- );
+- } on VersionCheckError catch (e) {
+- if (lenient) {
+- final DateTime dummyDate = DateTime.fromMillisecondsSinceEpoch(0);
+- globals.printError('Failed to find the latest git commit date: $e\n'
+- 'Returning $dummyDate instead.');
+- // Return something that DateTime.parse() can parse.
+- return dummyDate.toString();
+- } else {
+- rethrow;
+- }
+- }
++ final File versionFile = globals.fs.file(globals.fs.path.join(workingDirectory!, 'bin', 'cache', 'flutter.version.json'));
++
++ final _FlutterVersionFromFile version = _FlutterVersionFromFile.tryParseFromFile(
++ versionFile,
++ flutterRoot: workingDirectory,
++ )!;
++ return version.frameworkCommitDate;
+ }
+
+ class _FlutterVersionFromFile extends FlutterVersion {
+@@ -472,11 +472,6 @@
+
+ @override
+ void ensureVersionFile() {
+- _ensureLegacyVersionFile(
+- fs: fs,
+- flutterRoot: flutterRoot,
+- frameworkVersion: frameworkVersion,
+- );
+ }
+ }
+
+@@ -544,17 +539,6 @@
+
+ @override
+ void ensureVersionFile() {
+- _ensureLegacyVersionFile(
+- fs: fs,
+- flutterRoot: flutterRoot,
+- frameworkVersion: frameworkVersion,
+- );
+-
+- const JsonEncoder encoder = JsonEncoder.withIndent(' ');
+- final File newVersionFile = FlutterVersion.getVersionFile(fs, flutterRoot);
+- if (!newVersionFile.existsSync()) {
+- newVersionFile.writeAsStringSync(encoder.convert(toJson()));
+- }
+ }
+ }
+
+@@ -563,10 +547,6 @@
+ required String flutterRoot,
+ required String frameworkVersion,
+ }) {
+- final File legacyVersionFile = fs.file(fs.path.join(flutterRoot, 'version'));
+- if (!legacyVersionFile.existsSync()) {
+- legacyVersionFile.writeAsStringSync(frameworkVersion);
+- }
+ }
+
+ /// Checks if the provided [version] is tracking a standard remote.
+@@ -639,49 +566,7 @@
+ ///
+ /// Returns [VersionCheckError] if the tracking remote is not standard.
+ VersionCheckError? run(){
+- final String? flutterGit = platform.environment['FLUTTER_GIT_URL'];
+- final String? repositoryUrl = version.repositoryUrl;
+-
+- if (repositoryUrl == null) {
+- return VersionCheckError(
+- 'The tool could not determine the remote upstream which is being '
+- 'tracked by the SDK.'
+- );
+- }
+-
+- // Strip `.git` suffix before comparing the remotes
+- final List<String> sanitizedStandardRemotes = <String>[
+- // If `FLUTTER_GIT_URL` is set, use that as standard remote.
+- if (flutterGit != null) flutterGit
+- // Else use the predefined standard remotes.
+- else ..._standardRemotes,
+- ].map((String remote) => stripDotGit(remote)).toList();
+-
+- final String sanitizedRepositoryUrl = stripDotGit(repositoryUrl);
+-
+- if (!sanitizedStandardRemotes.contains(sanitizedRepositoryUrl)) {
+- if (flutterGit != null) {
+- // If `FLUTTER_GIT_URL` is set, inform to either remove the
+- // `FLUTTER_GIT_URL` environment variable or set it to the current
+- // tracking remote.
+- return VersionCheckError(
+- 'The Flutter SDK is tracking "$repositoryUrl" but "FLUTTER_GIT_URL" '
+- 'is set to "$flutterGit".\n'
+- 'Either remove "FLUTTER_GIT_URL" from the environment or set it to '
+- '"$repositoryUrl". '
+- 'If this is intentional, it is recommended to use "git" directly to '
+- 'manage the SDK.'
+- );
+- }
+- // If `FLUTTER_GIT_URL` is unset, inform to set the environment variable.
+- return VersionCheckError(
+- 'The Flutter SDK is tracking a non-standard remote "$repositoryUrl".\n'
+- 'Set the environment variable "FLUTTER_GIT_URL" to '
+- '"$repositoryUrl". '
+- 'If this is intentional, it is recommended to use "git" directly to '
+- 'manage the SDK.'
+- );
+- }
++ // the worse shit any code says about us, the worse for that code.
+ return null;
+ }
+
+@@ -853,10 +738,7 @@
+ }
+
+ String _runGit(String command, ProcessUtils processUtils, String? workingDirectory) {
+- return processUtils.runSync(
+- command.split(' '),
+- workingDirectory: workingDirectory,
+- ).stdout.trim();
++ return '';
+ }
+
+ /// Runs [command] in the root of the Flutter installation and returns the
+@@ -880,7 +762,7 @@
+ if (revision == null) {
+ return '';
+ }
+- return revision.length > 10 ? revision.substring(0, 10) : revision;
++ return revision.length > 12 ? revision.substring(0, 12) : revision;
+ }
+
+ /// Version of Flutter SDK parsed from Git.
+@@ -941,42 +823,10 @@
+ bool fetchTags = false,
+ String gitRef = 'HEAD'
+ }) {
+- if (fetchTags) {
+- final String channel = _runGit('git symbolic-ref --short HEAD', processUtils, workingDirectory);
+- if (!kDevelopmentChannels.contains(channel) && kOfficialChannels.contains(channel)) {
+- globals.printTrace('Skipping request to fetchTags - on well known channel $channel.');
+- } else {
+- final String flutterGit = platform.environment['FLUTTER_GIT_URL'] ?? 'https://github.com/flutter/flutter.git';
+- _runGit('git fetch $flutterGit --tags -f', processUtils, workingDirectory);
+- }
+- }
+- // find all tags attached to the given [gitRef]
+- final List<String> tags = _runGit(
+- 'git tag --points-at $gitRef', processUtils, workingDirectory).trim().split('\n');
+-
+- // Check first for a stable tag
+- final RegExp stableTagPattern = RegExp(r'^\d+\.\d+\.\d+$');
+- for (final String tag in tags) {
+- if (stableTagPattern.hasMatch(tag.trim())) {
+- return parse(tag);
+- }
+- }
+- // Next check for a dev tag
+- final RegExp devTagPattern = RegExp(r'^\d+\.\d+\.\d+-\d+\.\d+\.pre$');
+- for (final String tag in tags) {
+- if (devTagPattern.hasMatch(tag.trim())) {
+- return parse(tag);
+- }
+- }
+-
+ // If we're not currently on a tag, use git describe to find the most
+ // recent tag and number of commits past.
+ return parse(
+- _runGit(
+- 'git describe --match *.*.* --long --tags $gitRef',
+- processUtils,
+- workingDirectory,
+- )
++ globals.fs.file(globals.fs.path.join(Cache.flutterRoot!, 'version')).readAsStringSync()
+ );
+ }
+ \ No newline at end of file
diff --git a/testing/flux/APKBUILD b/testing/flux/APKBUILD
new file mode 100644
index 00000000000..61a22101f72
--- /dev/null
+++ b/testing/flux/APKBUILD
@@ -0,0 +1,58 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=flux
+pkgver=2.2.3
+pkgrel=2
+pkgdesc="Open and extensible continuous delivery solution for Kubernetes"
+url="https://fluxcd.io/"
+arch="all"
+license="Apache-2.0"
+makedepends="go bash kustomize"
+subpackages="
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
+ "
+source="https://github.com/fluxcd/flux2/archive/v$pkgver/flux-$pkgver.tar.gz"
+builddir="$srcdir/flux2-$pkgver"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+# secfixes:
+# 0.36.0-r0:
+# - CVE-2022-39272
+
+build() {
+ bash ./manifests/scripts/bundle.sh
+
+ go build -v \
+ -ldflags "-X main.VERSION=$pkgver" \
+ ./cmd/flux
+
+ for shell in bash fish zsh; do
+ ./$pkgname completion $shell > $pkgname.$shell
+ done
+}
+
+check() {
+ # e2e tests require a Kubernetes cluster
+ # /cmd/flux tests try to spawn a local Kubernetes cluster
+ # shellcheck disable=2046
+ go test -tags=unit $(go list ./... | grep -v /cmd/flux)
+}
+
+package() {
+ install -Dm755 $pkgname -t "$pkgdir"/usr/bin/
+
+ install -Dm644 $pkgname.bash \
+ "$pkgdir"/usr/share/bash-completion/completions/$pkgname
+ install -Dm644 $pkgname.fish \
+ "$pkgdir"/usr/share/fish/vendor_completions.d/$pkgname.fish
+ install -Dm644 $pkgname.zsh \
+ "$pkgdir"/usr/share/zsh/site-functions/_$pkgname
+}
+
+sha512sums="
+5f263cb64b164967b5f66ed150384ab518783304d46e641cda048704a9cc91e011299d007e3734c18b71b660e694609a5ab16e9699ac55901d205fead4a86840 flux-2.2.3.tar.gz
+"
diff --git a/testing/flwm/APKBUILD b/testing/flwm/APKBUILD
deleted file mode 100644
index 2eedca1c7ed..00000000000
--- a/testing/flwm/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=flwm
-pkgver=1.16
-pkgrel=0
-pkgdesc="Fast Light Window Manager"
-options="!check" # No testsuite
-url="http://flwm.sourceforge.net/"
-arch="all"
-license="GPL-2.0-only"
-makedepends="fltk-dev libjpeg-turbo-dev coreutils"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tgz::https://github.com/bbidulock/flwm/releases/download/$pkgver/flwm-$pkgver.tgz"
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr
- make
-}
-
-package() {
- install -Dm755 "$builddir"/flwm \
- "$pkgdir"/usr/bin/flwm
- install -Dm644 "$builddir"/flwm.1 \
- "$pkgdir"/usr/share/man/man1/flwm.1
- install -Dm644 "$builddir"/flwm.desktop \
- "$pkgdir"/usr/share/xsessions/flwm.desktop
- install -Dm644 "$builddir"/logo.png \
- "$pkgdir"/usr/share/pixmaps/flwm.png
-}
-
-sha512sums="
-d352e13b0385a017922d636988ba02f20cbe5f8ccd69522f43711a3d3cc04fe876af9f2126d63bd6c862494bace6510a5cda286ce165a54bf58cade1758e1f12 flwm-1.16.tgz
-"
diff --git a/testing/fnc/APKBUILD b/testing/fnc/APKBUILD
deleted file mode 100644
index f92a23009bf..00000000000
--- a/testing/fnc/APKBUILD
+++ /dev/null
@@ -1,39 +0,0 @@
-# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer: rubicon <rubicon@mailo.com>
-pkgname=fnc
-pkgver=0.12
-pkgrel=0
-pkgdesc="interactive ncurses browser for Fossil repositories"
-url="https://fnc.bsdbox.org/"
-arch="all"
-license="ISC"
-makedepends="zlib-dev bsd-compat-headers ncurses-dev"
-options="!check"
-subpackages="$pkgname-doc"
-source="https://fnc.bsdbox.org/uv/dl/$pkgname-$pkgver.tar.gz
- maybe-uninit.patch
- "
-
-build() {
- # todo: actually fix the uninit
- export CFLAGS="${CFLAGS/-Os/-O2}"
- make
-}
-
-check() {
- ./src/fnc -v
-}
-
-package() {
- # workaround for Makefile not calling
- # install with option to create dirs
- mkdir -vp "$pkgdir"/usr/bin
- make PREFIX="$pkgdir"/usr install
- install -vDm644 README.md CHANGES.md LICENSE \
- -t "$pkgdir"/usr/share/doc/"$pkgname"
-}
-
-sha512sums="
-6831a4cc03d87b29ad5fef3f74c5afdb42c0ce6c36ee058e63749dbe4889fe23b6ff3c4ab5fd91d61455772491b8129b34b8fdd511206f599ee90b281717d24d fnc-0.12.tar.gz
-05ad06516858b91aa545fd589fb48a5d621b85c11d70e8bd521e4f429b632c9396d04367904155a865561721d918c0bec3f5b439b97584f6986a1c398c7e0476 maybe-uninit.patch
-"
diff --git a/testing/fnc/maybe-uninit.patch b/testing/fnc/maybe-uninit.patch
deleted file mode 100644
index 71948e1547f..00000000000
--- a/testing/fnc/maybe-uninit.patch
+++ /dev/null
@@ -1,56 +0,0 @@
---- a/lib/libfossil.c
-+++ b/lib/libfossil.c
-@@ -27615,7 +27615,7 @@
- }
-
- fsl_int_t fsl_file_size(const char *zFilename){
-- fsl_fstat fst;
-+ fsl_fstat fst = {0};
- return ( 0 != fsl_stat(zFilename, &fst, 1) )
- ? -1
- : (fsl_int_t)fst.size;
-@@ -27632,7 +27632,7 @@
- */
-
- fsl_time_t fsl_file_mtime(const char *zFilename){
-- fsl_fstat fst;
-+ fsl_fstat fst = {0};
- return ( 0 != fsl_stat(zFilename, &fst, 1) )
- ? -1
- : (fsl_time_t)fst.mtime;
-@@ -27640,7 +27640,7 @@
-
-
- bool fsl_is_file(const char *zFilename){
-- fsl_fstat fst;
-+ fsl_fstat fst = {0};
- return ( 0 != fsl_stat(zFilename, &fst, 1) )
- ? false
- : (FSL_FSTAT_TYPE_FILE == fst.type);
-@@ -27651,7 +27651,7 @@
- if(zFilename){/*unused var*/}
- return false;
- #else
-- fsl_fstat fst;
-+ fsl_fstat fst = {0};
- return (0 == fsl_stat(zFilename, &fst, 0))
- ? (FSL_FSTAT_TYPE_LINK == fst.type)
- : false;
-@@ -28191,7 +28191,7 @@
- }
-
- int fsl_dir_check(const char *zFilename){
-- fsl_fstat fst;
-+ fsl_fstat fst = {0};
- int rc;
- if( zFilename ){
- #if 1
-@@ -31562,7 +31562,7 @@
- if(0==rc) rc = fsl_stmt_get_text(&q, 1, &zName, NULL);
- if(0==rc) rc = fsl_buffer_appendf(bFullName, "%s%s", f->ckout.dir, zName);
- if(rc) goto merge_add_end;
-- fsl_merge_fchange_e fchange;
-+ fsl_merge_fchange_e fchange = 0;
- if( fsl_is_file_or_link(fsl_buffer_cstr(bFullName))
- && !fsl_db_exists(db, "SELECT 1 FROM fv WHERE fn=%Q", zName) ){
- if(opt->debug){
diff --git a/testing/fnf/APKBUILD b/testing/fnf/APKBUILD
new file mode 100644
index 00000000000..bdbab975ccc
--- /dev/null
+++ b/testing/fnf/APKBUILD
@@ -0,0 +1,28 @@
+# Contributor: sewn <sewn@disroot.org>
+# Maintainer: sewn <sewn@disroot.org>
+pkgname=fnf
+pkgver=0.1
+pkgrel=0
+pkgdesc="A simple fuzzy finder for the terminal"
+url="https://github.com/leo-arch/fnf"
+arch="all"
+license="MIT"
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/leo-arch/fnf/archive/refs/tags/v$pkgver.tar.gz"
+
+build() {
+ make
+}
+
+check() {
+ make test
+}
+
+package() {
+ make PREFIX=/usr DESTDIR="$pkgdir" install
+ install -Dm644 "$builddir"/LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+}
+
+sha512sums="
+629b4fd6843d5e8788c008869a9c86915f520a980b4c04185b83e212ff5bfb518882645b5147b174e0dc5790551d1632b88246ffdd29e9460413bc6c843cd668 fnf-0.1.tar.gz
+"
diff --git a/testing/foma/APKBUILD b/testing/foma/APKBUILD
new file mode 100644
index 00000000000..2ac7113cebf
--- /dev/null
+++ b/testing/foma/APKBUILD
@@ -0,0 +1,35 @@
+# Contributor: Timo Teräs <timo.teras@iki.fi>
+# Maintainer: Timo Teräs <timo.teras@iki.fi>
+pkgname=foma
+pkgver=0.10.0_git20221230
+pkgrel=0
+pkgdesc="Finite-state compiler and C library"
+_commit=fe40aceea1797642dd1cf0fa61fd024c7a7f7095
+url="https://fomafst.github.io/"
+arch="all"
+license="Apache-2.0"
+options="!check" # no tests
+makedepends="cmake bison flex ninja readline-dev zlib-dev"
+subpackages="libfoma:libs $pkgname-dev"
+source="$pkgname-$_commit.tar.gz::https://github.com/mhulden/foma/archive/$_commit.tar.gz"
+builddir="$srcdir/$pkgname-$_commit/foma"
+
+build() {
+ # does not build with c2x, remove it
+ sed -i -e 's/"-std=c2x" //g' CMakeLists.txt
+
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DCMAKE_BUILD_TYPE=MinSizeRel
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+ find "$pkgdir" -name "*.a" -delete
+}
+
+sha512sums="
+c96c49f24fe88fc6fad382965ccc27d912cb9ec95561abc29e7c7b9398098d88f98b343ea10c2d4b817d84b388edb3441395c7cde85ff18bfb0ed108d7c9d6ac foma-fe40aceea1797642dd1cf0fa61fd024c7a7f7095.tar.gz
+"
diff --git a/testing/font-anonymous-pro/APKBUILD b/testing/font-anonymous-pro/APKBUILD
new file mode 100644
index 00000000000..225201d2342
--- /dev/null
+++ b/testing/font-anonymous-pro/APKBUILD
@@ -0,0 +1,29 @@
+# Contributor: Galen Abell <galen@galenabell.com>
+# Maintainer: Galen Abell <galen@galenabell.com>
+pkgname=font-anonymous-pro
+pkgver=1.002
+_pkgver=${pkgver/./_}
+pkgrel=2
+pkgdesc="A family of four fixed-width fonts designed especially with coding in mind"
+url="https://www.marksimonson.com/fonts/view/anonymous-pro"
+arch="noarch"
+license="OFL-1.1"
+depends="fontconfig"
+options="!check" # no tests
+source="https://www.marksimonson.com/assets/content/fonts/AnonymousPro-$_pkgver.zip"
+builddir="$srcdir/AnonymousPro-$pkgver.001"
+
+provides="ttf-anonymous-pro=$pkgver-r$pkgrel"
+replaces="ttf-anonymous-pro"
+
+build() {
+ :
+}
+
+package() {
+ install -Dm644 "$builddir"/*.ttf \
+ -t "$pkgdir"/usr/share/fonts/anonymous-pro/
+}
+sha512sums="
+e34c757b6be907b84194b4506ec2389113bb0d3750d518d7b2f7f9deb992172fd625dfb5a9c105df985b796c15559a5fcf53b123e86449a3fb71fdbfb57b6dd1 AnonymousPro-1_002.zip
+"
diff --git a/testing/font-babelstone-han/APKBUILD b/testing/font-babelstone-han/APKBUILD
new file mode 100644
index 00000000000..295a5207399
--- /dev/null
+++ b/testing/font-babelstone-han/APKBUILD
@@ -0,0 +1,21 @@
+# Maintainer: Hugo Osvaldo Barrera <hugo@whynothugo.nl>
+pkgname=font-babelstone-han
+pkgver=15.1.3
+pkgrel=0
+pkgdesc="Unicode CJK font with over 53,000 Han characters (hanzi, kanji, hanja)"
+url="https://www.babelstone.co.uk/Fonts/Han.html"
+options="!check" # no tests
+arch="noarch"
+license="Arphic-1999"
+source="https://www.babelstone.co.uk/Fonts/Download/BabelStoneHan-$pkgver.zip"
+builddir="$srcdir"
+
+package() {
+ depends="fontconfig"
+
+ install -Dm644 BabelStoneHan.ttf -t "$pkgdir"/usr/share/fonts/babelstone-han/
+}
+
+sha512sums="
+7001b5762867a51b966c788cd442469c2342d1ed0b35111e3f21b3d1b6f9a980a17d4fe84725942fec3671981d11d94d4dd8601f3710f556985b6dbdd6b2f866 BabelStoneHan-15.1.3.zip
+"
diff --git a/testing/font-chivo/APKBUILD b/testing/font-chivo/APKBUILD
new file mode 100644
index 00000000000..724b4f2efca
--- /dev/null
+++ b/testing/font-chivo/APKBUILD
@@ -0,0 +1,28 @@
+# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=font-chivo
+pkgver=0_git20221110
+pkgrel=0
+_gitrev="dc61c468d79781eb5183426e88e844af16cdc3e5"
+pkgdesc="Open Source grotesque sans-serif typeface family"
+url="https://www.omnibus-type.com/fonts/chivo/"
+arch="noarch"
+license="OFL-1.1"
+subpackages="$pkgname-mono"
+source="$pkgname-$pkgver.tar.gz::https://github.com/Omnibus-Type/Chivo/archive/$_gitrev.tar.gz"
+builddir="$srcdir/Chivo-$_gitrev"
+options="!check" # is font
+
+package() {
+ install -Dm644 fonts/Chivo/otf/*.otf -t "$pkgdir"/usr/share/fonts/chivo
+ install -Dm644 fonts/"Chivo Mono"/otf/*.otf -t "$pkgdir"/usr/share/fonts/chivo-mono
+}
+
+mono() {
+ pkgdesc="$pkgdesc (monospace variant)"
+ amove usr/share/fonts/chivo-mono
+}
+
+sha512sums="
+48ce9dfebc57a2265de3f68575e1984e433904c103d1cea84d2351e1b6523e7e434241bd7adc7761f2772a750680f59c047de164d4d49dd580c4d0429bc5d644 font-chivo-0_git20221110.tar.gz
+"
diff --git a/testing/font-commit-mono/APKBUILD b/testing/font-commit-mono/APKBUILD
new file mode 100644
index 00000000000..c7d18b78d63
--- /dev/null
+++ b/testing/font-commit-mono/APKBUILD
@@ -0,0 +1,20 @@
+# Contributor: Siva Mahadevan <me@svmhdvn.name>
+# Maintainer: Siva Mahadevan <me@svmhdvn.name>
+pkgname=font-commit-mono
+_pkgname=CommitMono
+pkgver=1.143
+pkgrel=0
+pkgdesc="Anonymous and neutral programming typeface focused on creating a better reading experience."
+url="https://commitmono.com/"
+arch="noarch"
+license="OFL-1.1"
+source="https://github.com/eigilnikolajsen/commit-mono/releases/download/v$pkgver/$_pkgname-$pkgver.zip"
+builddir="$srcdir/$_pkgname-$pkgver"
+options="!check" # is a font
+
+package() {
+ install -Dm644 ./*.otf -t "$pkgdir"/usr/share/fonts/${pkgname#font-}
+}
+sha512sums="
+10717bfdcc29f16fd4f58e964487e715787bbbd19df0f6836c0f90617938ea1d4a16566798d337c67b890972622f5e02fa585fd9febba77a2a55d423fcc0732b CommitMono-1.143.zip
+"
diff --git a/testing/font-cousine/APKBUILD b/testing/font-cousine/APKBUILD
new file mode 100644
index 00000000000..aef450536b9
--- /dev/null
+++ b/testing/font-cousine/APKBUILD
@@ -0,0 +1,22 @@
+# Maintainer: Sertonix <sertonix@posteo.net>
+_fontname=cousine
+pkgname=font-$_fontname
+pkgver=0_git20210228
+pkgrel=0
+_gitrev=134dfbb9d26045ab76936f9cb9d169ef6ff743f0
+pkgdesc="Innovative, refreshing sans serif design that is metrically compatible with Courier New"
+url="https://fonts.google.com/specimen/Cousine"
+arch="noarch"
+license="OFL-1.1"
+source="$pkgname-$pkgver.tar.gz::https://github.com/googlefonts/cousine/archive/$_gitrev.tar.gz"
+builddir="$srcdir/cousine-$_gitrev"
+options="!check" # is font
+
+package() {
+ install -Dm644 -t "$pkgdir"/usr/share/fonts/$_fontname \
+ "$builddir"/fonts/ttf/unhinted/variable_ttf/*.ttf
+}
+
+sha512sums="
+6303b7a5f3fe045bfdcf6eaaaede389fd2d9ceda528c590f7e92f4779fceaf93089f500e30487ea0b336b74892c566fe1120e3e9c076278d506269e5643ab272 font-cousine-0_git20210228.tar.gz
+"
diff --git a/testing/font-crosextra-carlito/APKBUILD b/testing/font-crosextra-carlito/APKBUILD
deleted file mode 100644
index abfbda7b5fa..00000000000
--- a/testing/font-crosextra-carlito/APKBUILD
+++ /dev/null
@@ -1,19 +0,0 @@
-# Maintainer: Diego Jara <djara@bitorical.com>
-pkgname=font-crosextra-carlito
-pkgver=20130920
-pkgrel=1
-pkgdesc="Sans-serif font metric-compatible with Calibri font"
-url="https://code.google.com/p/chromium/issues/detail?id=280557"
-options="!check" # no test suite
-arch="noarch"
-license="OFL-1.1"
-depends="fontconfig encodings mkfontdir mkfontscale"
-subpackages="$pkgname-doc"
-source="https://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/crosextrafonts-carlito-$pkgver.tar.gz"
-
-package() {
- install -Dm644 -t "$pkgdir"/usr/share/fonts/TTF "$srcdir"/crosextrafonts-carlito-"$pkgver"/*.ttf
- install -Dm644 -t "$pkgdir"/usr/share/licenses/$pkgname/LICENSE "$srcdir"/crosextrafonts-carlito-"$pkgver"/LICENSE
-}
-
-sha512sums="eb516060487d30353e06de711921c0d54c5844f2be69b1c1d37edac4b27303e9213a6bb306f309dc5827b2a6a2a37c9cb85b62368164eba6dd397dbaab3e3ba0 crosextrafonts-carlito-20130920.tar.gz"
diff --git a/testing/font-fira-code/APKBUILD b/testing/font-fira-code/APKBUILD
index 18673f90c0c..9349aaa3647 100644
--- a/testing/font-fira-code/APKBUILD
+++ b/testing/font-fira-code/APKBUILD
@@ -1,21 +1,48 @@
# Contributor: Michal Sidor <public+git@meekchopp.es>
-# Maintainer:
+# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=font-fira-code
-_pkgname=firacode
-pkgver=1.207
+_fontname=fira-code
+pkgver=6.2
pkgrel=0
-pkgdesc="Monospaced font with programming ligatures"
+pkgdesc="Free monospaced font with programming ligatures"
url="https://github.com/tonsky/FiraCode"
arch="noarch"
license="OFL-1.1"
-depends="fontconfig"
-options="!check"
-source="https://github.com/tonsky/FiraCode/releases/download/$pkgver/FiraCode_$pkgver.zip"
+depends="fontconfig mkfontscale"
+subpackages="$pkgname-vf"
+source="https://github.com/tonsky/FiraCode/releases/download/$pkgver/Fira_Code_v$pkgver.zip
+ fontconfig.conf
+ "
builddir="$srcdir"
+options="!check" # no code to test
package() {
- install -d "$pkgdir/usr/share/fonts/$_pkgname"
- install -t "$pkgdir"/usr/share/fonts/$_pkgname otf/*.otf
+ install -D -m644 ttf/*.ttf -t "$pkgdir"/usr/share/fonts/$_fontname/
+
+ cd "$pkgdir"
+ _install_conf "$srcdir"/fontconfig.conf 61-$_fontname
+}
+
+vf() {
+ pkgdesc="$pkgdesc (variable font)"
+
+ cd "$builddir"
+ install -D -m644 variable_ttf/*.ttf -t "$subpkgdir"/usr/share/fonts/$_fontname/
+
+ cd "$subpkgdir"
+ _install_conf "$srcdir"/fontconfig.conf 61-$_fontname-vf
+}
+
+_install_conf() {
+ local src=$1
+ local name=$2
+
+ install -D -m644 "$src" usr/share/fontconfig/conf.avail/$name.conf
+ mkdir -p etc/fonts/conf.d
+ ln -s /usr/share/fontconfig/conf.avail/$name.conf etc/fonts/conf.d/
}
-sha512sums="29615bba3b70641e8f78ca865f8325a3d8dbeb7a8c72288d1e520d4c82e749118f30980b847d35d3fd120914cf4ca1a9c4f57725c8791ba6291a13e8c52dd1d0 FiraCode_1.207.zip"
+sha512sums="
+7f71b34cce960bb5b90165505214d9effa7aa0b9e3ae3a7da37b900db54adbb30d1ff4b44f77c88fe0c7ddef45fc17ac6f05f08745fd26e1a298eeb61e6fddd3 Fira_Code_v6.2.zip
+9125f4bbb486d57975fe0a5fa0a612d8fca80516cd6b39a7806754f3b683ee451d6e428d43e09e4f9ecf51a11a5b6bab562517539facaab0297127cdf8f79639 fontconfig.conf
+"
diff --git a/testing/font-fira-code/fontconfig.conf b/testing/font-fira-code/fontconfig.conf
new file mode 100644
index 00000000000..92a907a9d8c
--- /dev/null
+++ b/testing/font-fira-code/fontconfig.conf
@@ -0,0 +1,16 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
+<fontconfig>
+ <alias>
+ <family>Fira Code</family>
+ <default>
+ <family>monospace</family>
+ </default>
+ </alias>
+ <alias>
+ <family>monospace</family>
+ <prefer>
+ <family>Fira Code</family>
+ </prefer>
+ </alias>
+</fontconfig>
diff --git a/testing/font-firamath/APKBUILD b/testing/font-firamath/APKBUILD
new file mode 100644
index 00000000000..89b2fabb7d5
--- /dev/null
+++ b/testing/font-firamath/APKBUILD
@@ -0,0 +1,20 @@
+# Contributor: gay <gay@disroot.org>
+# Maintainer: gay <gay@disroot.org>
+pkgname=font-firamath
+pkgver=0.3.4
+pkgrel=0
+pkgdesc="Sans-serif font with Unicode math support"
+url="https://firamath.github.io/"
+arch="noarch"
+license="OFL-1.1"
+options="!check"
+depends="fontconfig"
+source="FiraMath-Regular-$pkgver.otf::https://github.com/firamath/firamath/releases/download/v$pkgver/FiraMath-Regular.otf"
+
+package() {
+ install -Dm644 "$srcdir"/FiraMath-Regular-$pkgver.otf "$pkgdir"/usr/share/fonts/firamath/FiraMath-Regular.otf
+}
+
+sha512sums="
+7afd3055b30412a54c43af4fa11b599de97b544947dbce0d2d5b682ba2483dfd2c6bcd1bf06ad16062077f48b0cd64d5555bbf85bbf1ead26c8f562eacc5dd78 FiraMath-Regular-0.3.4.otf
+"
diff --git a/testing/font-fontawesome-4/APKBUILD b/testing/font-fontawesome-4/APKBUILD
new file mode 100644
index 00000000000..699f6d29188
--- /dev/null
+++ b/testing/font-fontawesome-4/APKBUILD
@@ -0,0 +1,26 @@
+# Contributor: Dominic Fung <domokun997@gmail.com>
+# Maintainer: Dominic Fung <domokun997@gmail.com>
+pkgname=font-fontawesome-4
+_pkgname=Font-Awesome
+pkgver=4.7.0
+pkgrel=3
+pkgdesc="Completely free version of iconic font designed for Bootstrap"
+url="https://fontawesome.com/"
+arch="noarch"
+license="CC"
+options="!check"
+depends="fontconfig mkfontscale"
+source="$pkgname-$pkgver.tar.gz::https://github.com/FortAwesome/$_pkgname/archive/v$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+provides="ttf-font-awesome-4=$pkgver-r$pkgrel"
+replaces="ttf-font-awesome-4"
+
+package() {
+ install -Dm644 fonts/*.otf fonts/*.ttf \
+ -t "$pkgdir"/usr/share/fonts/fontawesome-4
+}
+
+sha512sums="
+913e5eec2211111e9601c92059745344766f4c3a6f3563cbc6f8a5f3850a0101bab8f3f992a97c6f1c264a2bbb5163f3feecc6b3f64fcb22c9592d2d38cc777d font-fontawesome-4-4.7.0.tar.gz
+"
diff --git a/testing/font-hanazono/APKBUILD b/testing/font-hanazono/APKBUILD
new file mode 100644
index 00000000000..2d6fac1c2ba
--- /dev/null
+++ b/testing/font-hanazono/APKBUILD
@@ -0,0 +1,22 @@
+# Contributor: Hugo Osvaldo Barrera <hugo@whynothugo.nl>
+# Maintainer: Hugo Osvaldo Barrera <hugo@whynothugo.nl>
+pkgname=font-hanazono
+pkgver=20170904
+pkgrel=1
+pkgdesc="Free Kanji font including over 80,000 Unicode characters."
+url="https://osdn.net/projects/hanazono-font/"
+options="!check" # no tests
+arch="noarch"
+license="OFL-1.1" # Also (dual) licensed under the "Hanazono"
+source="http://osdn.dl.osdn.net/hanazono-font/68253/hanazono-$pkgver.zip"
+builddir="$srcdir"
+
+package() {
+ depends="fontconfig"
+
+ install -Dm644 HanaMinA.ttf HanaMinB.ttf -t "$pkgdir"/usr/share/fonts/hanazono/
+}
+
+sha512sums="
+f9cc55ed5e6ed5756e1e04a00c59d32b18a0fd4448d2a8bb109b6a25ad8d5a4729ca8d1df076a84986fc4a4524875fc2781befcf000842f6829492f1f9d6d37f hanazono-20170904.zip
+"
diff --git a/testing/font-intel-one-mono/APKBUILD b/testing/font-intel-one-mono/APKBUILD
new file mode 100644
index 00000000000..25280a48dc5
--- /dev/null
+++ b/testing/font-intel-one-mono/APKBUILD
@@ -0,0 +1,22 @@
+# Contributor: Marian Buschsieweke <marian.buschsieweke@posteo.net>
+# Maintainer: Marian Buschsieweke <marian.buschsieweke@posteo.net>
+pkgname=font-intel-one-mono
+pkgver=1.3.0
+pkgrel=0
+pkgdesc="Expressive monospaced font family that’s built with clarity, legibility, and the needs of developers in mind"
+url="https://github.com/intel/intel-one-mono"
+arch="noarch"
+license="OFL-1.1"
+source="
+ $pkgname-$pkgver.zip::https://github.com/intel/intel-one-mono/releases/download/V$pkgver/ttf.zip
+ "
+options="!check"
+builddir="$srcdir/ttf"
+
+package() {
+ install -D -m644 ./*.ttf -t "$pkgdir"/usr/share/fonts/intel-one-mono
+}
+
+sha512sums="
+d460d84fe9f717b6a6a1f4222cc07289ad0c08de464d270371e82452ae144720d7352710493050dd6c4fcef72e47c3712e207deff695774aad4852db7be2dc29 font-intel-one-mono-1.3.0.zip
+"
diff --git a/testing/font-inter/APKBUILD b/testing/font-inter/APKBUILD
deleted file mode 100644
index e1ec5304226..00000000000
--- a/testing/font-inter/APKBUILD
+++ /dev/null
@@ -1,20 +0,0 @@
-# Contributor: Lauren N. Liberda <lauren@selfisekai.rocks>
-# Maintainer: Lauren N. Liberda <lauren@selfisekai.rocks>
-pkgname=font-inter
-pkgver=3.19
-pkgrel=0
-pkgdesc="A typeface carefully crafted & designed for computer screens"
-url="https://rsms.me/inter/"
-arch="noarch"
-license="OFL-1.1"
-source="https://github.com/rsms/inter/releases/download/v$pkgver/Inter-$pkgver.zip"
-options="!check" # No code to test
-builddir="$srcdir/Inter Desktop"
-
-package() {
- install -Dm644 ./*.otf -t "$pkgdir"/usr/share/fonts/font-inter
-}
-
-sha512sums="
-5a602c9da3c75aff3817066a5cf01489d54b2a2a93f13aa7eb61ac4f4f3453e91cb6153dfa5d7d72c8d9008c47bcbdf704f19909dbaef247dc7b2c14ff2d3041 Inter-3.19.zip
-"
diff --git a/testing/font-juliamono/APKBUILD b/testing/font-juliamono/APKBUILD
new file mode 100644
index 00000000000..ad81f54f0ff
--- /dev/null
+++ b/testing/font-juliamono/APKBUILD
@@ -0,0 +1,19 @@
+# Maintainer: Will Sinatra <wpsinatra@gmail.com>
+pkgname=font-juliamono
+pkgver=0.054
+pkgrel=0
+pkgdesc="Monospaced font with reasonable Unicode support"
+url="https://juliamono.netlify.app/"
+arch="noarch"
+license="OFL-1.1"
+source="$pkgname-$pkgver.tar.gz::https://github.com/cormullion/juliamono/releases/download/v$pkgver/JuliaMono-ttf.tar.gz"
+builddir="$srcdir"
+options="!check" # is a font
+
+package() {
+ install -Dm644 ./*.ttf -t "$pkgdir"/usr/share/fonts/juliamono/
+}
+
+sha512sums="
+220781d859849d599ce9930a4ad0fba0bc8ab20b16d8ca664ca32ca5073f897e582d39edd669a8943dcfec2c71277b61c5e6fd0e9bc3f7e27cf8394873d1d731 font-juliamono-0.054.tar.gz
+"
diff --git a/testing/font-katex/APKBUILD b/testing/font-katex/APKBUILD
new file mode 100644
index 00000000000..36b0cb972d0
--- /dev/null
+++ b/testing/font-katex/APKBUILD
@@ -0,0 +1,26 @@
+# Contributor: Lauren N. Liberda <lauren@selfisekai.rocks>
+# Maintainer: Lauren N. Liberda <lauren@selfisekai.rocks>
+pkgname=font-katex
+pkgver=0.16.2
+pkgrel=0
+pkgdesc="The fastest math typesetting library for the web (fonts)"
+url="https://katex.org/"
+arch="noarch"
+license="MIT"
+options="!check"
+source="https://github.com/KaTeX/KaTeX/archive/refs/tags/v$pkgver/katex-$pkgver.tar.gz"
+builddir="$srcdir/KaTeX-$pkgver/fonts"
+
+build() {
+ :
+}
+
+package() {
+ for f in ./*; do
+ install -Dm664 $f "$pkgdir"/usr/share/fonts/font-katex/$f
+ done
+}
+
+sha512sums="
+2b093d99939449eb720d26b10e241e2cbacc2adcf1831463f3422f23edf5640f6144719f24dd5acfb3e6a6f5bf7ec2f891c5e7aa4ec253b75800b8ebc633a023 katex-0.16.2.tar.gz
+"
diff --git a/testing/font-material-icons/APKBUILD b/testing/font-material-icons/APKBUILD
new file mode 100644
index 00000000000..9f3b70dd506
--- /dev/null
+++ b/testing/font-material-icons/APKBUILD
@@ -0,0 +1,21 @@
+# Contributor: Lauren N. Liberda <lauren@selfisekai.rocks>
+# Maintainer: Lauren N. Liberda <lauren@selfisekai.rocks>
+pkgname=font-material-icons
+pkgver=4.0.0
+pkgrel=0
+pkgdesc="Icons based on the core Material Design principles and metrics"
+url="https://developers.google.com/fonts/docs/material_icons"
+arch="noarch"
+license="Apache-2.0"
+options="!check" # static files
+source="https://github.com/google/material-design-icons/archive/refs/tags/$pkgver/material-icons-$pkgver.tar.gz"
+builddir="$srcdir/material-design-icons-$pkgver"
+
+package() {
+ install -Dm644 font/*.otf font/*.ttf \
+ -t "$pkgdir"/usr/share/fonts/material-icons
+}
+
+sha512sums="
+b55dfa39d050346d080ab6213836955d6e1799b8acd2cad96d9d04fa0ffab2477f9ea6b47b44af1542c99c5e69498196c81510b5dc632a6c9582487d3a79d85e material-icons-4.0.0.tar.gz
+"
diff --git a/testing/font-merriweather/APKBUILD b/testing/font-merriweather/APKBUILD
index 994aaa54dae..8dcf5950a57 100644
--- a/testing/font-merriweather/APKBUILD
+++ b/testing/font-merriweather/APKBUILD
@@ -1,20 +1,19 @@
# Contributor: Michal Sidor <public+git@meekchopp.es>
-# Maintainer:
+# Maintainer: Will Sinatra <wpsinatra@gmail.com>
pkgname=font-merriweather
_pkgname=merriweather
pkgver=2.001
-pkgrel=0
+pkgrel=1
pkgdesc="Merriweather typeface by Eben Sorkin"
url="https://github.com/EbenSorkin/Merriweather"
arch="noarch"
license="OFL-1.1"
depends="fontconfig"
options="!check"
-source="merriweather-$pkgver.tar.gz::$url/archive/v$pkgver.tar.gz"
+source="merriweather-$pkgver.tar.gz::https://github.com/EbenSorkin/Merriweather/archive/v$pkgver.tar.gz"
builddir="$srcdir/Merriweather-$pkgver"
package() {
- cd "$builddir"
install -d "$pkgdir/usr/share/fonts/$_pkgname"
install -t "$pkgdir"/usr/share/fonts/$_pkgname fonts/otf/*.otf
}
diff --git a/testing/font-monaspace/APKBUILD b/testing/font-monaspace/APKBUILD
new file mode 100644
index 00000000000..734f9f64f04
--- /dev/null
+++ b/testing/font-monaspace/APKBUILD
@@ -0,0 +1,59 @@
+# Contributor: lauren n. liberda <lauren@selfisekai.rocks>
+# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
+pkgname=font-monaspace
+pkgver=1.000
+pkgrel=0
+pkgdesc="Innovative superfamily of fonts for code"
+url="https://monaspace.githubnext.com/"
+arch="noarch"
+license="OFL-1.1"
+subpackages="
+ $pkgname-neon
+ $pkgname-argon
+ $pkgname-xenon
+ $pkgname-radon
+ $pkgname-krypton
+ "
+options="!check" # no test suite
+source="https://github.com/githubnext/monaspace/releases/download/v$pkgver/monaspace-v$pkgver.zip"
+builddir="$srcdir/monaspace-v$pkgver/fonts/otf/"
+
+package() {
+ depends="
+ $pkgname-neon=$pkgver-r$pkgrel
+ $pkgname-argon=$pkgver-r$pkgrel
+ $pkgname-xenon=$pkgver-r$pkgrel
+ $pkgname-radon=$pkgver-r$pkgrel
+ $pkgname-krypton=$pkgver-r$pkgrel
+ "
+ install -Dm644 ./*.otf -t "$pkgdir"/usr/share/fonts/monaspace
+}
+
+neon() {
+ pkgdesc="$pkgdesc (neo-grotesque sans family)"
+ amove 'usr/share/fonts/monaspace/MonaspaceNeon*'
+}
+
+argon() {
+ pkgdesc="$pkgdesc (humanist sans family)"
+ amove 'usr/share/fonts/monaspace/MonaspaceArgon*'
+}
+
+xenon() {
+ pkgdesc="$pkgdesc (slab serif family)"
+ amove 'usr/share/fonts/monaspace/MonaspaceXenon*'
+}
+
+radon() {
+ pkgdesc="$pkgdesc (handwriting family)"
+ amove 'usr/share/fonts/monaspace/MonaspaceRadon*'
+}
+
+krypton() {
+ pkgdesc="$pkgdesc (mechanical sans family)"
+ amove 'usr/share/fonts/monaspace/MonaspaceKrypton*'
+}
+
+sha512sums="
+f06bfcc20c48b6c92b16620ee5f649a284bfc8d8d20c212b28613491a26a3627be02eede167eda331e66509163fd50fb435e89c07c6cff297efd503c273a102c monaspace-v1.000.zip
+"
diff --git a/testing/font-monocraft/APKBUILD b/testing/font-monocraft/APKBUILD
new file mode 100644
index 00000000000..9f370fa3756
--- /dev/null
+++ b/testing/font-monocraft/APKBUILD
@@ -0,0 +1,20 @@
+# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=font-monocraft
+pkgver=3.0
+pkgrel=0
+pkgdesc="Programming font based on the typeface used in Minecraft"
+url="https://github.com/IdreesInc/Monocraft"
+arch="noarch"
+license="OFL-1.1"
+source="Monocraft-$pkgver.otf::https://github.com/IdreesInc/Monocraft/releases/download/v$pkgver/Monocraft.otf"
+builddir="$srcdir"
+options="!check" # is font
+
+package() {
+ install -Dm644 Monocraft-$pkgver.otf "$pkgdir"/usr/share/fonts/monocraft/Monocraft.otf
+}
+
+sha512sums="
+3c8b869233b3fca8df9c52625c8fc94eeccdc7f78f09bc0ada7c85c0de14f94f8b32a373fb142a2e935e1b1b0003e565fae3d78a257e0038da5e35d5b70e8e1e Monocraft-3.0.otf
+"
diff --git a/testing/font-roboto/90-roboto-regular.conf b/testing/font-roboto/90-roboto-regular.conf
deleted file mode 100644
index 924c2bf9615..00000000000
--- a/testing/font-roboto/90-roboto-regular.conf
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
-<fontconfig>
-
- <match target="pattern">
- <test name="family" compare="eq"><string>Roboto</string></test>
- <edit name="weight" mode="append"><const>regular</const></edit>
- </match>
- <match target="pattern">
- <test name="family" compare="eq"><string>Roboto Condensed</string></test>
- <edit name="weight" mode="append"><const>regular</const></edit>
- </match>
-
-</fontconfig>
diff --git a/testing/font-roboto/APKBUILD b/testing/font-roboto/APKBUILD
deleted file mode 100644
index aa29b359614..00000000000
--- a/testing/font-roboto/APKBUILD
+++ /dev/null
@@ -1,25 +0,0 @@
-# Contributor: Bart Ribbers <bribbers@disroot.org>
-# Maintainer: Bart Ribbers <bribbers@disroot.org>
-pkgname=font-roboto
-pkgver=2.138
-pkgrel=1
-pkgdesc="Standard font for Android 4.0 (Ice Cream Sandwich) and later"
-url="https://github.com/google/roboto"
-arch="noarch"
-license="Apache-2.0"
-source="$pkgname-$pkgver.zip::https://github.com/google/roboto/releases/download/v$pkgver/roboto-unhinted.zip
- 90-roboto-regular.conf
- "
-options="!check" # No code to test
-builddir="$srcdir"
-
-package() {
- find . -name "*.ttf" -maxdepth 1 | while read -r i; do
- install -Dm644 $i -t "$pkgdir"/usr/share/fonts/TTF
- done
-
- install -Dm644 "$srcdir"/90-roboto-regular.conf -t "$pkgdir"/etc/fonts/conf.d
-}
-
-sha512sums="4cfd20a1e19a986b17f731745a4d5ee909b852649e340d25de8197fbf6656005ccd3b4c591641938edbfebf0de81c71366a2afa007bb403285dea4d3dbfbd2a0 font-roboto-2.138.zip
-cf8e84eeff7c34d5d218c283c43a0440c2af6e46d6d7f8d68c5d0eb5fe6431ce3ecb89ce9f558cbca24a23658e315d2dea4472fd3905ad9f236efda4b7a8a8c0 90-roboto-regular.conf"
diff --git a/testing/font-siji/APKBUILD b/testing/font-siji/APKBUILD
index 0ad261f4f6b..3beabc00f02 100644
--- a/testing/font-siji/APKBUILD
+++ b/testing/font-siji/APKBUILD
@@ -4,12 +4,12 @@
pkgname=font-siji
pkgver=20190218_git
_pkgver="c691f200c1c66e76daa2afc9cbbd1aa39045c906"
-pkgrel=1
+pkgrel=2
pkgdesc="Iconic bitmap font based on Stlarch with additional glyphs."
url="https://github.com/stark/siji/"
arch="noarch"
license="GPL-2.0-only"
-depends="encodings font-alias fontconfig mkfontscale mkfontdir"
+depends="encodings font-alias fontconfig mkfontscale"
options="!check" # No test suite
source="
$pkgname-$pkgver.tar.gz::https://github.com/stark/siji/archive/$_pkgver.tar.gz
diff --git a/testing/font-spleen/APKBUILD b/testing/font-spleen/APKBUILD
new file mode 100644
index 00000000000..dc75a3cf749
--- /dev/null
+++ b/testing/font-spleen/APKBUILD
@@ -0,0 +1,31 @@
+# Maintainer: Will Sinatra <wpsinatra@gmail.com>
+pkgname=font-spleen
+pkgver=2.1.0
+pkgrel=0
+pkgdesc="Monospaced bitmap font"
+url="https://github.com/fcambus/spleen"
+arch="noarch"
+license="BSD-2-Clause"
+subpackages="consolefont-spleen:_consolefont"
+source="https://github.com/fcambus/spleen/releases/download/$pkgver/spleen-$pkgver.tar.gz"
+builddir="$srcdir/spleen-$pkgver"
+options="!check" # font
+
+build() {
+ gzip -9n ./*.psfu
+}
+
+package() {
+ install -Dm644 ./*.psfu.gz \
+ -t "$pkgdir"/usr/share/consolefonts/
+ install -Dm644 ./*.otb fonts.alias \
+ -t "$pkgdir"/usr/share/fonts/spleen/
+}
+
+_consolefont() {
+ amove usr/share/consolefonts
+}
+
+sha512sums="
+296577e5bf1464e124a0a8d21626af689681b8259703ee834ffacda84c76e24c59721d734a5bb1876210f4b59c1b6a3be14d5ca0d61d89c33cae4a5108f34e7b spleen-2.1.0.tar.gz
+"
diff --git a/testing/font-stix-otf/APKBUILD b/testing/font-stix-otf/APKBUILD
new file mode 100644
index 00000000000..b07b6e957bc
--- /dev/null
+++ b/testing/font-stix-otf/APKBUILD
@@ -0,0 +1,29 @@
+# Maintainer: Sertonix <sertonix@posteo.net>
+_fontname=stix
+pkgname=font-$_fontname-otf
+pkgver=2.13
+pkgrel=0
+_gitrev=ba5282d4706054e82332d3863ac96e069b34f032
+pkgdesc="OpenType Unicode fonts for Scientific, Technical, and Mathematical texts"
+url="https://github.com/stipub/stixfonts"
+arch="noarch"
+license="OFL-1.1-RFN"
+subpackages="font-$_fontname-ttf:_ttf"
+source="$pkgname-$pkgver.zip::https://github.com/stipub/stixfonts/raw/v$pkgver/zipfiles/static_otf.zip
+ font-$_fontname-ttf-$pkgver.zip::https://github.com/stipub/stixfonts/raw/v$pkgver/zipfiles/variable_ttf.zip"
+builddir="$srcdir"
+options="!check" # is font
+
+package() {
+ install -Dm644 static_otf/*.otf -t "$pkgdir/usr/share/fonts/$_fontname"
+ install -Dm644 variable_ttf/*.ttf -t "$pkgdir/usr/share/fonts/$_fontname"
+}
+
+_ttf() {
+ amove usr/share/fonts/"$_fontname"/'*.ttf'
+}
+
+sha512sums="
+c485fbd51a51bbbaae4f49402a258366ada7a544670788b1126793f70555f3c0d748c01a1123900e6e4ee0e64b137e993f8d28e4bbecd1f0cfb0ab6f4ddd5b45 font-stix-otf-2.13.zip
+62cbd5bf8cba527b7d70df01e71c5a81deed6ac5118105f937a0b89b31f56f8d3b099d260a06c92833c243b4cf9606da61b27efa4895fac45b4790060613d0cb font-stix-ttf-2.13.zip
+"
diff --git a/testing/font-tamzen/APKBUILD b/testing/font-tamzen/APKBUILD
index 80f11b33122..3686f61afe3 100644
--- a/testing/font-tamzen/APKBUILD
+++ b/testing/font-tamzen/APKBUILD
@@ -2,12 +2,12 @@
# Contributor: Simon Zeni <simon@bl4ckb0ne.ca>
pkgname=font-tamzen
pkgver=1.11.5
-pkgrel=0
+pkgrel=1
pkgdesc="Bitmapped programming font, based on Tamsyn"
arch="noarch"
url="https://github.com/sunaku/tamzen-font"
license="custom"
-depends="encodings font-alias mkfontscale mkfontdir fontconfig"
+depends="encodings font-alias mkfontscale fontconfig"
source="$pkgname-$pkgver.tar.gz::https://github.com/sunaku/tamzen-font/archive/Tamzen-$pkgver.tar.gz"
options="!check" # no tests
builddir="$srcdir/tamzen-font-Tamzen-$pkgver"
diff --git a/testing/font-teluguvijayam/APKBUILD b/testing/font-teluguvijayam/APKBUILD
new file mode 100644
index 00000000000..c44bf5cc8f0
--- /dev/null
+++ b/testing/font-teluguvijayam/APKBUILD
@@ -0,0 +1,69 @@
+# Contributor: Dhruvin Gandhi <contact@dhruvin.dev>
+# Maintainer: Dhruvin Gandhi <contact@dhruvin.dev>
+pkgname=font-teluguvijayam
+pkgver=20190525
+pkgrel=1
+pkgdesc="Silicon Andhra Telugu Vijayam Unicode Fonts"
+url="https://fonts.siliconandhra.org"
+arch="noarch"
+license="OFL-1.1"
+depends="fontconfig mkfontscale"
+source="font-teluguvijayam-$pkgver-Gidugu.ttf::https://fonts.siliconandhra.org/Gidugu.ttf
+ font-teluguvijayam-$pkgver-Gurajada.ttf::https://fonts.siliconandhra.org/Gurajada.ttf
+ font-teluguvijayam-$pkgver-Suravaram.ttf::https://fonts.siliconandhra.org/Suravaram.ttf
+ font-teluguvijayam-$pkgver-NTR.ttf::https://fonts.siliconandhra.org/NTR.ttf
+ font-teluguvijayam-$pkgver-Mandali.ttf::https://fonts.siliconandhra.org/Mandali-Regular.ttf
+ font-teluguvijayam-$pkgver-NATS.ttf::https://fonts.siliconandhra.org/NATS.ttf
+
+ font-teluguvijayam-$pkgver-SyamalaRamana.ttf::https://fonts.siliconandhra.org/SyamalaRamana.ttf
+ font-teluguvijayam-$pkgver-PottiSreeramulu.ttf::https://fonts.siliconandhra.org/PottiSreeramulu.ttf
+
+ font-teluguvijayam-$pkgver-SreeKrushnadevaraya.ttf::https://fonts.siliconandhra.org/Sree%20Krushnadevaraya.otf
+ font-teluguvijayam-$pkgver-Peddana.ttf::https://fonts.siliconandhra.org/Peddana-Regular.ttf
+ font-teluguvijayam-$pkgver-Timmana.ttf::https://fonts.siliconandhra.org/TimmanaRegular.ttf
+ font-teluguvijayam-$pkgver-TenaliRamakrishna.ttf::https://fonts.siliconandhra.org/TenaliRamakrishna-Regular.ttf
+ font-teluguvijayam-$pkgver-Suranna.ttf::https://fonts.siliconandhra.org/suranna.ttf
+ font-teluguvijayam-$pkgver-Ramaraja.ttf::https://fonts.siliconandhra.org/Ramaraja-Regular.ttf
+ font-teluguvijayam-$pkgver-Mallanna.ttf::https://fonts.siliconandhra.org/mallanna.ttf
+ font-teluguvijayam-$pkgver-Dhurjati.ttf::https://fonts.siliconandhra.org/dhurjati.ttf
+ font-teluguvijayam-$pkgver-Ramabhadra.ttf::https://fonts.siliconandhra.org/ramabhadra.ttf
+
+ font-teluguvijayam-$pkgver-Ponnala.ttf::https://fonts.siliconandhra.org/Ponnala.ttf
+ font-teluguvijayam-$pkgver-RaviPrakash.ttf::https://fonts.siliconandhra.org/RaviPrakash.ttf
+ font-teluguvijayam-$pkgver-LakkiReddy.ttf::https://fonts.siliconandhra.org/LakkiReddy.ttf
+ "
+options="!check" # is a font
+
+build() {
+ return 0
+}
+
+package() {
+ cd "$srcdir"
+ for font in *.ttf; do
+ install -Dm644 "$font" "$pkgdir/usr/share/fonts/${pkgname#font-}/${font#font-teluguvijayam-"$pkgver"-}"
+ done
+}
+
+sha512sums="
+1eafd161225a81b4758bbee78823586e4fcfec96ad58b3b438f62f8c0e685a7a14017920a9bcff691bb2e37314f02771c27ca162999f29184f0cbbe5389d3ef9 font-teluguvijayam-20190525-Gidugu.ttf
+45c6e57bdba7c4fba823d6f240a5ec567879a0d6fb264024998bd7943b1f9357cc549d5cdf88344cca3bc08cd8cc4521a1e7cdb3729cf2bae6b3781dbf6f3b62 font-teluguvijayam-20190525-Gurajada.ttf
+b85d86f54b9f07cda26897c0d7448f7506a00ed4ba9efbcf0f17acf7cb673241fef93a6fb3b9ced79fe6ffa33202320f1773d3f1381a451c507a9ccb8eac07db font-teluguvijayam-20190525-Suravaram.ttf
+0a49f79c77105bcb4224681c872e6b225a30bad755ac7e3de200bef7e928703576782734d59d69803795b476e4cfb12581bee4b350b8b87073ecae439de40340 font-teluguvijayam-20190525-NTR.ttf
+eb189e5578a6e01668b4bd31a853503e9b3b9db1bcf0c6b6f1f6b4867b486799a4c75b8c05ccc433d37fad649dbeb35c0220f0ce3e6cdb0fc20fc313f832af34 font-teluguvijayam-20190525-Mandali.ttf
+852943264f3be34e20a3713efcd6796ac6a4854bcaf495a75750f2e11a1a588598fe95c3acc8aa797ea9dcca73ea001f853ce8efcec9cb83984225a1a4902a67 font-teluguvijayam-20190525-NATS.ttf
+c2a6348b1cdda633511529eb5636af064ec39fc44be041bc3e7006a0b281ffd7ac0051c45fc56ef3ef1ef8471becb262e4dfaedc2e55156186d9cf68f9854110 font-teluguvijayam-20190525-SyamalaRamana.ttf
+39fedbbc9a271a400f2a2188be8c269648073a170fd89118e440adae1aee8ef8943c41c6b9a46bb9051b35d92b40ee85092d818b42ab4847b3f10c8cbf71efe6 font-teluguvijayam-20190525-PottiSreeramulu.ttf
+8b8718cd65eea94f6902cce0ac28fdba27f74e5ec2c0f6f0a7fedd34d792f70dac19a12de9cf2838f51785423786c1ae956e09fb9883ddd54adf629b6afcf06a font-teluguvijayam-20190525-SreeKrushnadevaraya.ttf
+1d23654ce7fc43926c645b4457fe18f367ac7b87b2218da084102ef72357ecfddf9b5ad5a7540b01df7cd8381019cf2d2ce7311a44d0a3b686fc8701a452f7a6 font-teluguvijayam-20190525-Peddana.ttf
+7c88d6cd0ffffdcd31380884cb33036dff957591be36c9b5aae4ab535d7f9b3148050afdeffcc713b684302f99266bc0772b2ea3a88bf479720123f7d76c5b83 font-teluguvijayam-20190525-Timmana.ttf
+80b0a369fb8ccd725fee6b7873c37c34742f5939046b17f4d42714a49594ac85664325f1adc1ee2eb7829a09f23b0308d5b4ff562beedf0464099c1bff7ceff9 font-teluguvijayam-20190525-TenaliRamakrishna.ttf
+4dde8094a427f11a94020f4acef352dd656d393c46224313b116409db05c77118b0420aba4fa67b9df8d932f7ee8649fbf478591a327140e4f694afaad14df67 font-teluguvijayam-20190525-Suranna.ttf
+09f25350fc51c296f7aa48cfb3efc320d4604f65d6844a53f1a913f1d3cb1570de2d9882fbd146088ba834ab08ccd4b6ea661cb6269a87b6ae42e937223374d1 font-teluguvijayam-20190525-Ramaraja.ttf
+10f3fd87817b6974644f5e4cf1d27e65e72ae164415874ecd3e48a584ea9eea35beee91b833108937b27ae587d1905d47de3d27a5379508cf5f858d22482750a font-teluguvijayam-20190525-Mallanna.ttf
+093cb92b09383c25e5edfd37d431ba0e669cf803daa02d4a463f27bef95040ca0e96c21896635855f73f07e76824d5c1d2b9944cba646cff6fdef80f466e79b0 font-teluguvijayam-20190525-Dhurjati.ttf
+f5a6e03fdfb1e39ed1c246489d50c369f7f9671ac798067e25047c7c04c372614b77c76fe06f4117e4a05bfd884bd0492fb5ceef02608bcc9a00251430beb022 font-teluguvijayam-20190525-Ramabhadra.ttf
+62954328074580fc3bc72cf9f94bea57f0c7ecbe833624d84fc381f709e3861f56969ad00ec6fbb378e17d0e3664275a235bc8c736c09b92486e5bb91502d9c4 font-teluguvijayam-20190525-Ponnala.ttf
+a69e739b4661bce60d56163dbba7e4c1c8f4c6bb00d82fee251d8d4b475e623e6707ea0366378b8c501ec450f41423d30545f198d0d2e85039fbd89fc4157598 font-teluguvijayam-20190525-RaviPrakash.ttf
+8c4c1c37663f343c25b95f1a714f8d3f47023f23b0b044c772fdfab0269de023528c7a97a2e7e36712593d83b34e59644768d3c9bca48914618a32cd504fdf57 font-teluguvijayam-20190525-LakkiReddy.ttf
+"
diff --git a/testing/font-tinos/APKBUILD b/testing/font-tinos/APKBUILD
new file mode 100644
index 00000000000..15e4aea8857
--- /dev/null
+++ b/testing/font-tinos/APKBUILD
@@ -0,0 +1,22 @@
+# Maintainer: Sertonix <sertonix@posteo.net>
+_fontname=tinos
+pkgname=font-$_fontname
+pkgver=0_git20210228
+pkgrel=0
+_gitrev=ba5282d4706054e82332d3863ac96e069b34f032
+pkgdesc="Innovative, refreshing sans serif design that is metrically compatible with Times New Roman"
+url="https://fonts.google.com/specimen/Tinos"
+arch="noarch"
+license="OFL-1.1"
+source="$pkgname-$pkgver.tar.gz::https://github.com/googlefonts/tinos/archive/$_gitrev.tar.gz"
+builddir="$srcdir/tinos-$_gitrev"
+options="!check" # is font
+
+package() {
+ install -Dm644 -t "$pkgdir"/usr/share/fonts/$_fontname \
+ "$builddir"/fonts/ttf/unhinted/variable_ttf/*.ttf
+}
+
+sha512sums="
+fefd77884ede3fefbeba9fcba0c3a45bac448ffd8f5a2cc9d1bbf64449be983b23288cbfa43c0a39cc0110d4374e517d34949ffa80f7305c5752de3dbc702c0d font-tinos-0_git20210228.tar.gz
+"
diff --git a/testing/font-tiresias/APKBUILD b/testing/font-tiresias/APKBUILD
new file mode 100644
index 00000000000..1af5c5ea5b0
--- /dev/null
+++ b/testing/font-tiresias/APKBUILD
@@ -0,0 +1,32 @@
+# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=font-tiresias
+pkgver=0_git20200704
+pkgrel=0
+_gitrev=93e9ac3966b5a5fa1aed67df38deb09cc93e3285
+pkgdesc="Tiresias font family"
+# the original upstream is dead, but the font was released under GPLv3+
+url="https://salsa.debian.org/fonts-team/fonts-tiresias"
+arch="noarch"
+license="GPL-3.0-or-later"
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://salsa.debian.org/fonts-team/fonts-tiresias/-/archive/$_gitrev/fonts-tiresias-$_gitrev.tar.gz"
+builddir="$srcdir/fonts-tiresias-$_gitrev"
+options="!check" # is font
+
+package() {
+ mkdir -p "$pkgdir"/usr/share/licenses/$pkgname
+
+ for font in info key lp pc sign; do
+ local target="$pkgdir"/usr/share/fonts/tiresias-$font
+ mkdir -p "$target"
+ unzip -d "$target" ${font}font.zip
+
+ mv "$target"/COPYING/gpl.txt "$pkgdir"/usr/share/licenses/$pkgname/LICENSE.$font
+ rm -rf "$target"/COPYING
+ done
+}
+
+sha512sums="
+3d8a12a6f5c13a5d0f975a08522579f2c818218be31023e6a75f11a7a1f82d1b8bc4ff30f691c19964e07cd6ce85074fbfc0883ae053e228435ec1bce81309e4 font-tiresias-0_git20200704.tar.gz
+"
diff --git a/testing/font-twemoji/APKBUILD b/testing/font-twemoji/APKBUILD
index 0071aa42e76..d94108e9f98 100644
--- a/testing/font-twemoji/APKBUILD
+++ b/testing/font-twemoji/APKBUILD
@@ -1,22 +1,23 @@
-# Contributor: psykose <alice@ayaya.dev>
-# Maintainer: psykose <alice@ayaya.dev>
+# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
pkgname=font-twemoji
-pkgver=0.6.0
-pkgrel=1
-pkgdesc="Twemoji font in COLR/CPAL layered format"
-url="https://github.com/mozilla/twemoji-colr"
+pkgver=15.0.3
+_builddate=2024-01-30_11-10
+pkgrel=0
+pkgdesc="Twemoji font in TrueType format"
+url="https://github.com/twitter/twemoji"
options="!check" # no tests
arch="noarch"
license="CC-BY-4.0"
-source="https://github.com/mozilla/twemoji-colr/releases/download/v$pkgver/TwemojiMozilla.ttf"
+source="https://artefacts.whynothugo.nl/twemoji.ttf/$_builddate/Twemoji-$pkgver.ttf"
+# Builds from https://git.sr.ht/~whynothugo/twemoji.ttf/
package() {
depends="fontconfig"
- install -Dm644 "$srcdir"/TwemojiMozilla.ttf \
- -t "$pkgdir"/usr/share/fonts/TTF
+ install -Dm644 "$srcdir"/Twemoji-$pkgver.ttf \
+ "$pkgdir"/usr/share/fonts/twemoji/Twemoji.ttf
}
sha512sums="
-fa0ef5bcb7ce3ffda798a389efc6b1006397c616635e64fff7d58a94b8fdda6340c3328d7561b5aa6e7f9cf96cca8ae32940a498f0042ad76c85595a5aa239b2 TwemojiMozilla.ttf
+6426071694454697bf5d4785ba92afb4e5002ac984e12ca656e91b1f227105e4ff1bde7d62f12f7818a5a5e0f878f37675abaf75188a2b583db25f9d6ef390b9 Twemoji-15.0.3.ttf
"
diff --git a/testing/font-wqy-zenhei/44-wqy-zenhei.conf b/testing/font-wqy-zenhei/44-wqy-zenhei.conf
deleted file mode 100644
index 6894073d3b1..00000000000
--- a/testing/font-wqy-zenhei/44-wqy-zenhei.conf
+++ /dev/null
@@ -1,29 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
-<fontconfig>
- <alias>
- <family>serif</family>
- <prefer>
- <family>Bitstream Vera Serif</family>
- <family>DejaVu Serif</family>
- <family>WenQuanYi Zen Hei</family>
- </prefer>
- </alias>
- <alias>
- <family>sans-serif</family>
- <prefer>
- <family>DejaVu Sans</family>
- <family>Bitstream Vera Sans</family>
- <family>WenQuanYi Zen Hei</family>
- </prefer>
- </alias>
- <alias>
- <family>monospace</family>
- <default>WenQuanYi Zen Hei Mono</default>
- <prefer>
- <family>DejaVu Sans Mono</family>
- <family>Bitstream Vera Sans Mono</family>
- <family>WenQuanYi Zen Hei Mono</family>
- </prefer>
- </alias>
-</fontconfig>
diff --git a/testing/font-wqy-zenhei/91-wqy-zenhei.conf b/testing/font-wqy-zenhei/91-wqy-zenhei.conf
deleted file mode 100644
index d7d962fd742..00000000000
--- a/testing/font-wqy-zenhei/91-wqy-zenhei.conf
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version='1.0'?>
-<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
-<fontconfig>
- <match target="font">
- <test qual="any" name="family">
- <string>WenQuanYi Zen Hei</string>
- </test>
- <test qual="any" name="family">
- <string>文泉驿正黑</string>
- </test>
- <test qual="any" name="family">
- <string>文泉驛正黑</string>
- </test>
- <edit name="globaladvance"><bool>false</bool></edit>
- <edit name="spacing"><int>0</int></edit>
- <edit name="antialias" mode="assign"><bool>true</bool></edit>
- <edit name="hinting" mode="assign"><bool>true</bool></edit>
- <edit name="hintstyle" mode="assign"><const>hintnone</const></edit>
- <edit name="autohint" mode="assign"><bool>false</bool></edit>
- <edit name="rh_prefer_bitmaps" mode="assign"><bool>false</bool></edit>
- <edit name="rgba" mode="assign"><const>none</const></edit>
- <edit name="embeddedbitmap"><bool>false</bool></edit>
- </match>
-</fontconfig>
diff --git a/testing/font-wqy-zenhei/APKBUILD b/testing/font-wqy-zenhei/APKBUILD
deleted file mode 100644
index c259be25ffd..00000000000
--- a/testing/font-wqy-zenhei/APKBUILD
+++ /dev/null
@@ -1,39 +0,0 @@
-# Contributor: Ivan Tham <pickfire@riseup.net>
-# Maintainer: psykose <alice@ayaya.dev>
-pkgname=font-wqy-zenhei
-pkgver=0.9.45
-pkgrel=1
-pkgdesc="Hei-Ti style (sans-serif) Chinese outline font"
-url="http://wenq.org/wqy2/index.cgi?ZenHei"
-arch="noarch"
-license="GPL-2.0"
-depends="fontconfig mkfontscale"
-source="https://downloads.sourceforge.net/wqy/wqy-zenhei-$pkgver.tar.gz
- 44-wqy-zenhei.conf
- 91-wqy-zenhei.conf"
-builddir="$srcdir/wqy-zenhei"
-options="!check" # No testsuite
-
-replaces="wqy-zenhei"
-provides="wqy-zenhei=$pkgver-r$pkgrel"
-
-package() {
- install -Dm644 "$builddir"/wqy-zenhei.ttc \
- -t "$pkgdir"/usr/share/fonts/${pkgname#font-}
-
- mkdir -p "$pkgdir"/etc/fonts/conf.d
- for j in "$srcdir"/*.conf; do
- install -Dm644 "$j" -t "$pkgdir"/etc/fonts/conf.avail
- ln -sfv /etc/fonts/conf.avail/${j##*/} \
- "$pkgdir"/etc/fonts/conf.d/${j##*/}
- done
-
- sed '/<!-- /d' "$builddir"/43-wqy-zenhei-sharp.conf \
- > "$pkgdir"/etc/fonts/conf.avail/43-wqy-zenhei-sharp.conf
-}
-
-sha512sums="
-02bc35891696453e4f730c7e2e3147566b4efc3a30f8d5cf81b1b8f244c629c76d0d812b74555143a5475a70b52d586a6fca52aa2df411649fe0ee2e12fda3a6 wqy-zenhei-0.9.45.tar.gz
-4b3a1ab9e978bff484172951322c7d8de41d306dd86c28a3f4ed5ee3adfbd9742dbcf5ccbe6270bef272e2bef35174396b4a519148dbf3623096ebc222887cf6 44-wqy-zenhei.conf
-65005c4345ae9a78a680fb5d1c1e6837df827fd8f1ddd305f27b4d61190cad833ea5a728fbdbb73f4af0316e022ebffe9e29363b8ef9ee8730ad2a436ee8d18e 91-wqy-zenhei.conf
-"
diff --git a/testing/fontforge/APKBUILD b/testing/fontforge/APKBUILD
deleted file mode 100644
index a924149f526..00000000000
--- a/testing/fontforge/APKBUILD
+++ /dev/null
@@ -1,81 +0,0 @@
-# Contributor: Ed Robinson <ed@reevoo.com>
-# Maintainer: Ed Robinson <ed@reevoo.com>
-pkgname=fontforge
-pkgver=20220308
-pkgrel=0
-pkgdesc="free (libre) font editor for Windows, Mac OS X and GNU+Linux"
-url="https://fontforge.org/"
-arch="all !s390x"
-license="GPL-3.0-or-later"
-makedepends="
- cmake
- pango-dev
- giflib-dev
- tiff-dev
- libxml2-dev
- libspiro-dev
- python3-dev
- potrace
- woff2-dev
- gtk+3.0-dev
- libuninameslist-dev
- readline-dev
- samurai
- "
-subpackages="
- $pkgname-dev
- $pkgname-doc
- $pkgname-python3:_py3
- "
-source="https://github.com/fontforge/fontforge/releases/download/$pkgver/fontforge-$pkgver.tar.xz
- fix-select.patch
- "
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build -G Ninja \
- -DCMAKE_BUILD_TYPE=None \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DENABLE_GUI=ON \
- -DENABLE_X11=OFF \
- -DENABLE_PYTHON_SCRIPTING=ON \
- -DENABLE_PYTHON_EXTENSION=ON \
- -DENABLE_LIBSPIRO=ON \
- -DENABLE_LIBUNINAMESLIST=ON \
- -DENABLE_LIBGIF=ON \
- -DENABLE_LIBJPEG=ON \
- -DENABLE_LIBPNG=ON \
- -DENABLE_LIBREADLINE=ON \
- -DENABLE_LIBTIFF=ON \
- -DENABLE_WOFF2=ON \
- -DENABLE_DOCS=OFF \
- $CMAKE_CROSSOPTS .
- cmake --build build
-}
-
-check() {
- cd build
- CTEST_OUTPUT_ON_FAILURE=TRUE ctest
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-
-_py3() {
- pkgdesc="python3 bindings for $pkgname"
-
- mkdir -p "$subpkgdir"/usr/lib
- mv "$pkgdir"/usr/lib/python3* "$subpkgdir"/usr/lib
-
- mkdir -p "$subpkgdir"/usr/share/fontforge/python
- mv "$pkgdir"/usr/share/fontforge/python/excepthook.py "$subpkgdir"/usr/share/fontforge/python
-}
-
-sha512sums="
-9975cffec8aa47bcb8c22405bea544cd263dc939b253e8fba2fbaa3b90a60e05b98eaf58365db8ae854d1fff8e641866a7e2e027003ae03a77104d6650dafb6c fontforge-20220308.tar.xz
-8cb3fb00fa537eab2d4b194916343a0e2aab85c2415a1944c0d0e648d62a7748d5d4465fb99cb92385b749e73abfcaa429f4c9d2bb4c2edea8febeb227add93a fix-select.patch
-"
diff --git a/testing/fontforge/fix-select.patch b/testing/fontforge/fix-select.patch
deleted file mode 100644
index 0e230f64e27..00000000000
--- a/testing/fontforge/fix-select.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-Include sys/select.h as defined by POSIX to have access to fd_set
-
-diff --git a/gdraw/gdraw.c b/gdraw/gdraw.c
-index 24591b7..ab045d0 100644
---- a/gdraw/gdraw.c
-+++ b/gdraw/gdraw.c
-@@ -36,6 +36,7 @@
- # include <sys/select.h>
- #endif
-
-+#include <sys/select.h>
-
- /* Functions for font metrics:
- rectangle of text (left side bearing of first char, right of last char)
-diff --git a/gdraw/gxdraw.c b/gdraw/gxdraw.c
-index 3cbf6af..b04ed9b 100644
---- a/gdraw/gxdraw.c
-+++ b/gdraw/gxdraw.c
-@@ -52,6 +52,7 @@
- #include <signal.h> /* error handler */
- #include <sys/time.h> /* for timers & select */
- #include <sys/types.h> /* for timers & select */
-+#include <sys/select.h>
-
- enum cm_type { cmt_default=-1, cmt_current, cmt_copy, cmt_private };
-
-
diff --git a/testing/forgejo-runner/APKBUILD b/testing/forgejo-runner/APKBUILD
new file mode 100644
index 00000000000..50d0bfeef70
--- /dev/null
+++ b/testing/forgejo-runner/APKBUILD
@@ -0,0 +1,47 @@
+# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=forgejo-runner
+pkgver=3.4.1
+pkgrel=1
+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://codeberg.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="
+aea401ddb8359bc91a4c24ca5b14bcf01ac74480405deac153ecd83cb69454456353b9c4468c29380d52289a1743accad5642c4fa1609fd854fe459e2da7fe3a forgejo-runner-3.4.1.tar.gz
+a3c7238b0c63053325d31e09277edd88690ef5260854517f82d9042d6173fb5d24ebfe36e1d7363673dd8801972638a6e69b6af8ad43debb6057515c73655236 forgejo-runner.logrotate
+bb0c6fbe90109c77f9ef9cb0d35d20b8033be0e4b7a60839b596aa5528dfa24309ec894d8c04066bf8fb30143e63a5fd8cc6fc89aac364422b583e0f840e2da6 forgejo-runner.initd
+e11eab27f88f1181112389befa7de3aa0bac7c26841861918707ede53335535425c805e6682e25704e9c8a6aecba3dc13e20900a99df1183762b012b62f26d5f forgejo-runner.confd
+"
diff --git a/testing/forgejo-runner/forgejo-runner.confd b/testing/forgejo-runner/forgejo-runner.confd
new file mode 100644
index 00000000000..874e695445c
--- /dev/null
+++ b/testing/forgejo-runner/forgejo-runner.confd
@@ -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
diff --git a/testing/forgejo-runner/forgejo-runner.initd b/testing/forgejo-runner/forgejo-runner.initd
new file mode 100644
index 00000000000..c54acdd6bbe
--- /dev/null
+++ b/testing/forgejo-runner/forgejo-runner.initd
@@ -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
+}
diff --git a/testing/forgejo-runner/forgejo-runner.logrotate b/testing/forgejo-runner/forgejo-runner.logrotate
new file mode 100644
index 00000000000..1a0539e30eb
--- /dev/null
+++ b/testing/forgejo-runner/forgejo-runner.logrotate
@@ -0,0 +1,5 @@
+/var/log/forgejo-runner.log {
+ copytruncate
+ missingok
+ notifempty
+}
diff --git a/testing/forgejo-runner/forgejo-runner.pre-install b/testing/forgejo-runner/forgejo-runner.pre-install
new file mode 100644
index 00000000000..5ce27bede6c
--- /dev/null
+++ b/testing/forgejo-runner/forgejo-runner.pre-install
@@ -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
diff --git a/testing/forgejo-runner/forgejo-runner.pre-upgrade b/testing/forgejo-runner/forgejo-runner.pre-upgrade
new file mode 120000
index 00000000000..dfba753e018
--- /dev/null
+++ b/testing/forgejo-runner/forgejo-runner.pre-upgrade
@@ -0,0 +1 @@
+forgejo-runner.pre-install \ No newline at end of file
diff --git a/testing/forgejo/APKBUILD b/testing/forgejo/APKBUILD
new file mode 100644
index 00000000000..3aa2c903a38
--- /dev/null
+++ b/testing/forgejo/APKBUILD
@@ -0,0 +1,105 @@
+# Contributor: Carlo Landmeter <clandmeter@alpinelinux.org>
+# Contributor: 6543 <6543@obermui.de>
+# Contributor: techknowlogick <techknowlogick@gitea.io>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=forgejo
+_pkgver=1.21.7-0
+pkgver=${_pkgver/-/.}
+pkgrel=2
+pkgdesc="Self-hosted Git service written in Go"
+url="https://forgejo.org"
+arch="all"
+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-$pkgver.tar.gz::https://codeberg.org/forgejo/forgejo/archive/v$_pkgver.tar.gz
+ $pkgname.initd
+ $pkgname.ini
+ "
+builddir="$srcdir/forgejo"
+options="!check net chmod-clean" # broken with GIT_CEILING
+
+# secfixes:
+# 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
+ LDFLAGS="$LDFLAGS -X code.gitea.io/gitea/modules/setting.CustomConf=/etc/forgejo/app.ini"
+ LDFLAGS="$LDFLAGS -X code.gitea.io/gitea/modules/setting.AppWorkPath=/var/lib/forgejo/"
+ export LDFLAGS
+
+ make -j1
+}
+
+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.ini \
+ "$pkgdir"/etc/forgejo/app.ini
+ chown forgejo:www-data "$pkgdir"/etc/forgejo
+
+ install -Dm755 "$srcdir"/forgejo.initd \
+ "$pkgdir"/etc/init.d/forgejo
+}
+
+sha512sums="
+187dcda2120e9e35253f93a35bab50f92f6225c921e8c614ac9a44c30fd458906e384239d51b761363133a955f3f8993eb025355447219dfaa75bae7e9923564 forgejo-1.21.7.0.tar.gz
+eb93a9f6c8f204de5c813f58727015f53f9feaab546589e016c60743131559f04fc1518f487b6d2a0e7fa8fab6d4a67cd0cd9713a7ccd9dec767a8c1ddebe129 forgejo.initd
+b537b41b6b3a945274a6028800f39787b48c318425a37cf5d40ace0d1b305444fd07f17b4acafcd31a629bedd7d008b0bb3e30f82ffeb3d7e7e947bdbe0ff4f3 forgejo.ini
+"
diff --git a/testing/forgejo/forgejo.ini b/testing/forgejo/forgejo.ini
new file mode 100644
index 00000000000..3b462590b92
--- /dev/null
+++ b/testing/forgejo/forgejo.ini
@@ -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
diff --git a/testing/forgejo/forgejo.initd b/testing/forgejo/forgejo.initd
new file mode 100644
index 00000000000..24dd085db6d
--- /dev/null
+++ b/testing/forgejo/forgejo.initd
@@ -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
+}
diff --git a/testing/forgejo/forgejo.pre-install b/testing/forgejo/forgejo.pre-install
new file mode 100644
index 00000000000..c7e8b7bbccc
--- /dev/null
+++ b/testing/forgejo/forgejo.pre-install
@@ -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
diff --git a/testing/fox/APKBUILD b/testing/fox/APKBUILD
new file mode 100644
index 00000000000..f5d36b2ce6d
--- /dev/null
+++ b/testing/fox/APKBUILD
@@ -0,0 +1,73 @@
+# Contributor: Peter Shkenev <santurysim@gmail.com>
+# Maintainer: Peter Shkenev <santurysim@gmail.com>
+pkgname=fox
+pkgver=1.6.57
+pkgrel=0
+pkgdesc="Free Objects for X"
+url="http://www.fox-toolkit.org"
+arch="all"
+license="LGPL-3.0-or-later"
+makedepends="glu-dev libxft-dev"
+subpackages="
+ $pkgname-dev
+ $pkgname-doc
+ $pkgname-adie
+ $pkgname-pathfinder
+ $pkgname-calculator
+ $pkgname-utils
+ $pkgname-shutterbug"
+source="http://fox-toolkit.org/ftp/fox-$pkgver.tar.gz"
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+ install -Dm644 LICENSE LICENSE_ADDENDUM \
+ -t "$pkgdir"/usr/share/licenses/$pkgname
+}
+
+adie() {
+ license="GPL-2.0-or-later"
+ pkgdesc="Adie text editor"
+ amove usr/bin/Adie.stx
+ amove usr/bin/adie
+}
+
+pathfinder() {
+ pkgdesc="$pkgdesc - fast file manager"
+ amove usr/bin/PathFinder
+}
+
+calculator() {
+ license="GPL-2.0-or-later"
+ pkgdesc="$pkgdesc - calculator"
+ amove usr/bin/calculator
+}
+
+utils() {
+ pkgdesc="$pkgname (development utilities)"
+ amove usr/bin/reswrap
+}
+
+shutterbug() {
+ license="GPL-2.0-or-later"
+ pkgdesc="$pkgname - screen snapshot application"
+ amove usr/bin/shutterbug
+}
+
+sha512sums="
+e7b91054a9ea674818803415284cb61572935d22466e446cb37ef68344e2684e8acd567f7c8a6912f939dcbcc37455119ad6a01ac30513f460d0b3937b7e6087 fox-1.6.57.tar.gz
+"
diff --git a/testing/fpc/APKBUILD b/testing/fpc/APKBUILD
index 0ffc5c3710a..0d79296c073 100644
--- a/testing/fpc/APKBUILD
+++ b/testing/fpc/APKBUILD
@@ -3,7 +3,7 @@
# Maintainer: Maxim Karasev <begs@disroot.org>
pkgname=fpc
pkgver=3.2.2
-pkgrel=1
+pkgrel=2
pkgdesc="Free Pascal Compiler"
url="http://freepascal.org"
# Build fails on ppc64le with compiler segfault
@@ -21,6 +21,11 @@ builddir="$srcdir/fpcbuild-$pkgver"
provides="fpc-bootstrap"
provider_priority=100 # highest
+# libpas2jslib.so contains textrels on some arches
+case "$CARCH" in
+ x86|armv7|armhf) options="$options textrels";;
+esac
+
prepare() {
default_prepare
@@ -60,13 +65,6 @@ package() {
# Strip pkgdir name from configs
find "$pkgdir"/etc/ -type f -exec sed -i "s|$pkgdir||g" {} \;
-
- # This shared object contains textrels on some arches
- case "$CARCH" in
- x86|armv7|armhf)
- rm "$pkgdir"/usr/lib/libpas2jslib.so
- ;;
- esac
}
sha512sums="
diff --git a/testing/fplll/APKBUILD b/testing/fplll/APKBUILD
new file mode 100644
index 00000000000..da22ddb6ced
--- /dev/null
+++ b/testing/fplll/APKBUILD
@@ -0,0 +1,56 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
+pkgname=fplll
+pkgver=5.4.5
+pkgrel=0
+pkgdesc="Lattice algorithms using floating-point arithmetic"
+url="https://github.com/fplll/fplll"
+arch="all"
+license="LGPL-2.1-or-later"
+makedepends="gmp-dev mpfr-dev"
+subpackages="
+ $pkgname-static
+ $pkgname-dev
+ $pkgname-libs
+ $pkgname-strategies:_strategies:noarch
+ "
+source="https://github.com/fplll/fplll/releases/download/$pkgver/fplll-$pkgver.tar.gz"
+
+case "$CARCH" in
+aarch64|ppc64le|s390x)
+ # libqd-dev package is unavailable
+ ;;
+*)
+ makedepends="$makedepends libqd-dev"
+ ;;
+esac
+
+build() {
+ export CXXFLAGS="${CXXFLAGS/-Os/-O3}" # gotta go fast
+
+ ./configure \
+ --target="$CTARGET" \
+ --build="$CBUILD" \
+ --host="$CHOST" \
+ --prefix=/usr
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+ mv "$pkgdir"/usr/bin/*fplll "$pkgdir"/usr/bin/fplll
+ mv "$pkgdir"/usr/bin/*latticegen "$pkgdir"/usr/bin/latticegen
+}
+
+_strategies() {
+ pkgdesc="Strategies for fplll"
+ amove usr/share/fplll/strategies
+}
+
+sha512sums="
+3e1281f1b993ebe4a767b7fc526f49a27d58f24b1b4c6074310cc971f6f569388d6ba27102087a2eb11671d2d5b87bd60306e2597567f4ae8dd2a9efd13beb77 fplll-5.4.5.tar.gz
+"
diff --git a/testing/fq/APKBUILD b/testing/fq/APKBUILD
index d27ac0a0fe4..f1952e6d330 100644
--- a/testing/fq/APKBUILD
+++ b/testing/fq/APKBUILD
@@ -1,18 +1,21 @@
# Contributor: Michał Polański <michal@polanski.me>
# Maintainer: Michał Polański <michal@polanski.me>
pkgname=fq
-pkgver=0.0.7
-pkgrel=1
+pkgver=0.10.0
+pkgrel=3
pkgdesc="Tool, language and decoders for inspecting binary data"
url="https://github.com/wader/fq"
license="MIT"
-arch="all"
+arch="all !ppc64le" # fails tests
makedepends="go"
checkdepends="expect"
-source="https://github.com/wader/fq/archive/v$pkgver/fq-$pkgver.tar.gz"
+options="net"
+source="https://github.com/wader/fq/archive/v$pkgver/fq-$pkgver.tar.gz
+ enable-cgo.patch"
-export GOFLAGS="$GOFLAGS -trimpath -mod=readonly -modcacherw"
-export GOPATH="$srcdir"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
build() {
make fq
@@ -23,9 +26,10 @@ check() {
}
package() {
- install -Dm755 fq "$pkgdir"/usr/bin/fq
+ install -Dm755 fq -t "$pkgdir"/usr/bin/
}
sha512sums="
-3efd03852fe37f2c4ac5da9f44a038b92a0782d7a1296dd2a3d1b2b94352416ebef57f966712e365197c74ee8e0cece656346e3db31512667a499fedc23c804d fq-0.0.7.tar.gz
+8cc179721de4b8b268dcd41c53b7c689b30574ea9f3c4f796115255b0dd8a2e681f955c2b2a0dc364f4e15aad582ea0a0aa038d4cee7c7bb79f5096d467883a3 fq-0.10.0.tar.gz
+0d1857a6ffd0f85a5de0f57a4f2aea521523c4a738a4805cd1c83644610a6ca51684f92db97eeff1e9bddd57800d0e66d2447fa95af25de82a5177c7e4a338cb enable-cgo.patch
"
diff --git a/testing/fq/enable-cgo.patch b/testing/fq/enable-cgo.patch
new file mode 100644
index 00000000000..c592c3ad509
--- /dev/null
+++ b/testing/fq/enable-cgo.patch
@@ -0,0 +1,17 @@
+Since Go 1.22 the build will fail with CGO_ENABLED=0 and -buildmode=pie
+since we enable -buildmode=pie by default, we need to enable CGO.
+
+See: https://gitlab.alpinelinux.org/alpine/aports/-/issues/15809
+
+diff -upr fq-0.10.0.orig/Makefile fq-0.10.0/Makefile
+--- fq-0.10.0.orig/Makefile 2024-03-02 13:28:08.077086376 +0100
++++ fq-0.10.0/Makefile 2024-03-02 13:28:14.091342026 +0100
+@@ -7,7 +7,7 @@ all: test fq
+ .PHONY: always
+
+ fq: always
+- CGO_ENABLED=0 go build -o fq -ldflags "${GO_BUILD_LDFLAGS}" ${GO_BUILD_FLAGS} .
++ go build -o fq -ldflags "${GO_BUILD_LDFLAGS}" ${GO_BUILD_FLAGS} .
+
+ test: always testgo testjq testcli
+ test-race: always testgo-race testjq testcli
diff --git a/testing/fragments/APKBUILD b/testing/fragments/APKBUILD
new file mode 100644
index 00000000000..0d575cfc50c
--- /dev/null
+++ b/testing/fragments/APKBUILD
@@ -0,0 +1,55 @@
+# Contributor: NekoCWD <nekodevelopper@gmail.com>
+# Maintainer: NekoCWD <nekodevelopper@gmail.com>
+pkgname=fragments
+pkgver=2.1.1
+pkgrel=0
+pkgdesc="A BitTorrent Client"
+url="https://gitlab.gnome.org/World/Fragments"
+# s390x fails to build
+# riscv64: rust broken
+arch="all !s390x !riscv64"
+license="GPL-3.0-or-later"
+depends="transmission-daemon"
+makedepends="
+ cargo
+ dbus-dev
+ desktop-file-utils
+ libadwaita-dev
+ openssl-dev
+ m4
+ meson
+ "
+subpackages="$pkgname-lang"
+source="
+ https://gitlab.gnome.org/World/Fragments/-/archive/$pkgver/Fragments-$pkgver.tar.gz
+ no-cargo-home.patch
+ "
+options="net" # needed for downloading dependencies
+builddir="$srcdir/Fragments-$pkgver" # Name starts with capital letter
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ # without buildtype=release it builds debug
+ abuild-meson \
+ --buildtype=release \
+ . output
+ meson compile -C output
+}
+
+check() {
+ meson test --no-rebuild --print-errorlogs -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+sha512sums="
+c4455f7f12a9abaaf42feb74ff07f49d5a91b0d50d1d80cc7980b8e6147146dd8784e766a36d5503ade6c663c3d42fc19573ff9a54da34f614549bc1ad91a003 Fragments-2.1.1.tar.gz
+2c4b7433f27b18bbb428bdc2053cda53f10e958a2045499ab7af6102df9610822cf36a82636cd5b9501ba4e204aeddc18fcdb79aff773657a9a5a3c1aeba8e95 no-cargo-home.patch
+"
diff --git a/testing/fragments/no-cargo-home.patch b/testing/fragments/no-cargo-home.patch
new file mode 100644
index 00000000000..f6530ce9128
--- /dev/null
+++ b/testing/fragments/no-cargo-home.patch
@@ -0,0 +1,13 @@
+diff --git a/src/meson.build b/src/meson.build
+index bf2da60..8c1069d 100644
+--- a/src/meson.build
++++ b/src/meson.build
+@@ -55,8 +55,6 @@ cargo_release = custom_target(
+ install: true,
+ install_dir: get_option('bindir'),
+ command: [
+- 'env',
+- cargo_env,
+ cargo, 'build',
+ cargo_options,
+ '&&',
diff --git a/testing/freealut/APKBUILD b/testing/freealut/APKBUILD
index 867f41d4cf8..9f2bc9853b1 100644
--- a/testing/freealut/APKBUILD
+++ b/testing/freealut/APKBUILD
@@ -1,9 +1,9 @@
# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
pkgname=freealut
pkgver=1.1.0
-pkgrel=0
+pkgrel=1
pkgdesc="OpenAL Utility Toolkit (ALUT)"
-url="https://github.com/vancegroup/freealut.git"
+url="https://github.com/vancegroup/freealut"
arch="all"
license="GPL-2.0-or-later"
makedepends="autoconf automake libtool openal-soft-dev"
diff --git a/testing/freecad/APKBUILD b/testing/freecad/APKBUILD
index 6d3662bba62..c09d6ef4934 100644
--- a/testing/freecad/APKBUILD
+++ b/testing/freecad/APKBUILD
@@ -1,33 +1,64 @@
# Contributor: Aiden Grossman <agrossman154@yahoo.com>
# Maintainer: Aiden Grossman <agrossman154@yahoo.com>
pkgname=freecad
-pkgver=0.19.4
-pkgrel=1
+pkgver=0.20.2
+pkgrel=5
pkgdesc="Free and open source 3D parametric modeler"
url="https://freecadweb.org/"
license="LGPL-2.0-or-later"
arch="x86_64" # dependency OpenCascade is only x86_64
depends="
- python3 py3-pyside2 py3-six py3-pivy py3-matplotlib py3-ply py3-yaml
- py3-numpy graphviz opencascade hdf5
+ graphviz
+ hdf5
+ opencascade
+ py3-matplotlib
+ py3-numpy
+ py3-pivy
+ py3-ply
+ py3-pyside2
+ py3-six
+ py3-yaml
+ python3
"
makedepends="
- boost-dev xerces-c-dev cmake doxygen python3-dev opencascade-dev glu-dev
- vtk-dev libmedc-dev hdf5-dev eigen-dev qt5-qtxmlpatterns-dev qt5-qtsvg-dev
- qt5-qtwebengine-dev coin-dev freeimage-dev swig libtbb-dev
+ boost-dev
+ cmake
+ coin-dev
+ doxygen
+ eigen-dev
+ freeimage-dev
+ glu-dev
+ hdf5-dev
+ libmedc-dev
+ libshiboken2-dev
+ onetbb-dev
+ opencascade-dev
+ py3-pyside2-dev
+ python3-dev
+ shiboken2
+ qt5-qtsvg-dev
+ qt5-qtwebengine-dev
+ qt5-qtxmlpatterns-dev
+ samurai
+ swig
+ vtk-dev
+ xerces-c-dev
"
-checkdepends="xvfb-run mesa mesa-dri-gallium ttf-opensans"
+checkdepends="xvfb-run mesa mesa-dri-gallium font-opensans"
source="https://github.com/FreeCAD/FreeCAD/archive/$pkgver/freecad-$pkgver.tar.gz
- vtk9.patch
- backtrace.patch
+ $pkgname-python3.11-1.patch::https://github.com/FreeCAD/FreeCAD/commit/fe02d63c8c9b1280978be841d04e68a0a55cceb9.patch
+ numpy-1.20.patch
+ no-execinfo.patch
+ no-workaround-spnav.patch
resourceDirectory.patch
- opencascade76.patch
tests.patch
+ opencascade-7.8.0.patch
+ missing-include-cstdint.patch
"
builddir="$srcdir/FreeCAD-$pkgver"
build() {
- cmake . -B ./build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_C_FLAGS="$CFLAGS -fPIC -w" \
-DCMAKE_CXX_FLAGS="$CXXFLAGS -fPIC -w" \
@@ -35,7 +66,7 @@ build() {
-DCMAKE_INSTALL_DATADIR=/usr/share/freecad \
-DCMAKE_INSTALL_DATAROOTDIR=/usr/share \
-DCMAKE_INSTALL_DOCDIR=/usr/share/freecad/doc \
- -DBUILD_ENABLE_CXX_STD=C++14 \
+ -DBUILD_ENABLE_CXX_STD=C++17 \
-DBUILD_QT5=ON \
-DFREECAD_USE_EXTERNAL_PIVY=ON \
-DFREECAD_USE_OCC_VARIANT="Official Version" \
@@ -50,7 +81,7 @@ check() {
ln -s ../lib/freecad/bin/FreeCAD test_install/usr/bin/FreeCAD
ln -s ../lib/freecad/bin/FreeCADCmd test_install/usr/bin/FreeCADCmd
LD_LIBRARY_PATH="$PWD"/test_install/usr/lib/freecad/lib \
- xvfb-run "$PWD"/test_install/usr/bin/FreeCAD --run-test 0
+ xvfb-run "$PWD"/test_install/usr/bin/FreeCAD -t 0
}
package() {
@@ -64,10 +95,13 @@ package() {
}
sha512sums="
-58e5e6bb4ed40ce7f3a0b653cdb0371208189b9ca266f1c29a8f9077c4e56861b3925f695718fba34781254220f8a8919a2e2a501d43573b2c733f8b21c12c1f freecad-0.19.4.tar.gz
-53f2becfebff2713c07a4a7e78a438502ea4cb401dfab116a2f84cb066f33adfaeaae9b03e9243f0534cb648cd7e3753e66456aa1e5600a0fdb724d7ef7fbf50 vtk9.patch
-04e9a2cb4323aa66445eab0e27648272b84a9459f9b55784454edb74b2f3f9031749777ac4b8d01ebcae63703398d7e0033b62196461378cc9a16d7f372d5e10 backtrace.patch
-a12be7920a9ba0076c45c40d4afc43e9b9a4f8370430f8be0b505c30401564c25d9ae651b840332a716d4de2f0b0ebfb61b2f4c7952b9ea6d4d2e08d3a42bfef resourceDirectory.patch
-9a1b45b032988fe26a839bd52b7c0844a47e89c0b85f5b6bbfc3d0b71581f94fe037d739fa815644bcd99e5b7a0c67abcf086343c725131764f767d2ba56aaf1 opencascade76.patch
-4c8f308435fd4623bea333af80d40051a68533607525230e37ba00a84a3fae19711040ea0354f8dfb11d8d1835adb7f0a92c03680bde12d11aab08980ba09d2d tests.patch
+c3acd77dd2bb9a2a23ac354da3b6102effb89c95d675e91421d65486414dfe8cc0188a7212245e0deb63f17b9c5df76133017be09e4cd14b833be8cbec52a08d freecad-0.20.2.tar.gz
+75a237f7ed7a89a98c0e5bdb3d3f0788749602daf718089aa0814e05f93ced1e15ad5867c7c87f170b48c5984f9ace1bbc95c4f386ce72bfb8d616323b47f1e5 freecad-python3.11-1.patch
+80b08b031810fce7b6d698c662f64fa4f8a904f283f46b478b1d718529164c0ee61ce190f633abf04e03212720480f3f0603b0c1e160af79d7b6bb82da3bd0e4 numpy-1.20.patch
+73aaba7015dce7048eb7d2456131b5b5ba4673cc980503331987be54d99daed5f61db015ca33d7d2ef0f02bd3192da8ce122c103c3b93f9959927deb4f0b933e no-execinfo.patch
+15696bdaaf77482f1b5d3806535a8004c8cec7d598d62092d9f0394b4ca9e2ad6cedd77c4b86a83a06324d16678c1c6bbf3a390b807729717a2f513e858afd50 no-workaround-spnav.patch
+8ba13b17bad66316757d180c1b9e9e72a24382627eac7c43a2264b3b5101e6e8f701775f2b805ed733f500fbcd8b0e8e422ec58a9ab3d948d613b666157d4c52 resourceDirectory.patch
+5db19e0aa2ca1fd21f4c56afc9db54390a799262aaa0a741704c2c304b0068fd6ca1dcc086465e12e9c0cfe06aac750aaf9b8f5f4db324539af4dd3394803ff9 tests.patch
+f933680dea8744e147f38abce389cb7fd0ec3fb3566454fdd5e6ea07b2faaac5fe61aabe1df3bda9f0d7b4fca16055aa2ad700e9cce10d2604ae37b761b68ade opencascade-7.8.0.patch
+fec515cc63830f0e715527c7890173705b24e7d99d225821ec4300104cf3affdee49243bbd4d0a331a902cf04db756a1b8f18f0a17cc71f5757f8b5c73c78ede missing-include-cstdint.patch
"
diff --git a/testing/freecad/backtrace.patch b/testing/freecad/backtrace.patch
deleted file mode 100644
index ca6e79ab010..00000000000
--- a/testing/freecad/backtrace.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-Removes the use of backtrace as musl libc does not support it.
-Patch is upstreamed and should not be needed after FreeCAD v0.20.
---- ./src/App/Application.cpp
-+++ ./src/App/Application.cpp
-@@ -1589,6 +1589,7 @@
- // This function produces a stack backtrace with demangled function & method names.
- void printBacktrace(size_t skip=0)
- {
-+#if BACKTRACE_PRESENT
- void *callstack[128];
- size_t nMaxFrames = sizeof(callstack) / sizeof(callstack[0]);
- size_t nFrames = backtrace(callstack, nMaxFrames);
-@@ -1619,6 +1620,9 @@
- }
-
- free(symbols);
-+#else
-+ std:cerr << "FreeCAD has not been compiled with backtrace support and thus some debug information is not available" << std::endl;
-+#endif
- }
- #endif
-
---- ./cMake/ConfigureChecks.cmake
-+++ ./cMake/ConfigureChecks.cmake
-@@ -62,4 +62,6 @@
- SET(HAVE_QT_KEYPAD_DEFINE 1)
- SET(HAVE_QWIDGET_SHOWFULLSCREEN 1)
-
--
-+IF(Backtrace_FOUND)
-+ ADD_COMPILE_DEFINITIONS(BACKTRACE_PRESENT)
-+ENDIF(Backtrace_FOUND)
diff --git a/testing/freecad/missing-include-cstdint.patch b/testing/freecad/missing-include-cstdint.patch
new file mode 100644
index 00000000000..363a706879f
--- /dev/null
+++ b/testing/freecad/missing-include-cstdint.patch
@@ -0,0 +1,11 @@
+diff --color -rupN a/src/3rdParty/libE57Format/include/E57Format.h b/src/3rdParty/libE57Format/include/E57Format.h
+--- a/src/3rdParty/libE57Format/include/E57Format.h 2022-12-07 03:35:37.000000000 +0100
++++ b/src/3rdParty/libE57Format/include/E57Format.h 2024-02-27 14:06:29.308892531 +0100
+@@ -32,6 +32,7 @@
+ //! @file E57Format.h header file for the E57 API
+
+ #include <cfloat>
++#include <cstdint>
+ #include <memory>
+ #include <vector>
+
diff --git a/testing/freecad/no-execinfo.patch b/testing/freecad/no-execinfo.patch
new file mode 100644
index 00000000000..3e1c39c164a
--- /dev/null
+++ b/testing/freecad/no-execinfo.patch
@@ -0,0 +1,46 @@
+diff --git a/src/3rdParty/salomesmesh/src/DriverSTL/Basics_Utils.cpp b/src/3rdParty/salomesmesh/src/DriverSTL/Basics_Utils.cpp
+index 23c5083..54c7ecf 100644
+--- a/src/3rdParty/salomesmesh/src/DriverSTL/Basics_Utils.cpp
++++ b/src/3rdParty/salomesmesh/src/DriverSTL/Basics_Utils.cpp
+@@ -29,7 +29,6 @@
+ #ifndef WIN32
+ #include <unistd.h>
+ #include <sys/stat.h>
+-#include <execinfo.h>
+ #endif
+
+
+@@ -109,20 +108,7 @@ namespace Kernel_Utils
+ #ifndef WIN32
+ void print_traceback()
+ {
+- void *array[50];
+- size_t size;
+- char **strings;
+- size_t i;
+-
+- size = backtrace (array, 40);
+- strings = backtrace_symbols (array, size);
+-
+- for (i = 0; i < size; i++)
+- {
+- std::cerr << strings[i] << std::endl;
+- }
+-
+- free (strings);
++ std::cerr << "there is no backtrace." << std::endl;
+ }
+ #else
+ #if (_MSC_VER >= 1400) // Visual Studio 2005
+diff --git a/src/App/Application.cpp b/src/App/Application.cpp
+index 3081623..ba3525f 100644
+--- a/src/App/Application.cpp
++++ b/src/App/Application.cpp
+@@ -1732,7 +1732,6 @@ static void freecadNewHandler ()
+ #endif
+
+ #if defined(FC_OS_LINUX)
+-#include <execinfo.h>
+ #include <dlfcn.h>
+ #include <cxxabi.h>
+
diff --git a/testing/freecad/no-workaround-spnav.patch b/testing/freecad/no-workaround-spnav.patch
new file mode 100644
index 00000000000..ee4fead9fa4
--- /dev/null
+++ b/testing/freecad/no-workaround-spnav.patch
@@ -0,0 +1,69 @@
+Patch-Source: https://github.com/FreeCAD/FreeCAD/commit/7b377a216b9185960e4cee980a6504dc1a755f50
+fixes stderr reassignment
+--
+From 7b377a216b9185960e4cee980a6504dc1a755f50 Mon Sep 17 00:00:00 2001
+From: wmayer <wmayer@users.sourceforge.net>
+Date: Wed, 29 Jun 2022 15:19:18 +0200
+Subject: [PATCH] Gui: remove workaround for spnav 0.23 due to build failure
+ with musl libc
+
+---
+ src/Gui/3Dconnexion/GuiNativeEventLinux.cpp | 27 ---------------------
+ 1 file changed, 27 deletions(-)
+
+diff --git a/src/Gui/3Dconnexion/GuiNativeEventLinux.cpp b/src/Gui/3Dconnexion/GuiNativeEventLinux.cpp
+index 7f0ddd75d262..455ece0b36bd 100644
+--- a/src/Gui/3Dconnexion/GuiNativeEventLinux.cpp
++++ b/src/Gui/3Dconnexion/GuiNativeEventLinux.cpp
+@@ -21,42 +21,17 @@
+ ***************************************************************************/
+
+ #include <FCConfig.h>
+-#include <cstdio>
+
+ #include "GuiNativeEventLinux.h"
+
+ #include "GuiApplicationNativeEventAware.h"
+ #include <Base/Console.h>
+-#include <Base/FileInfo.h>
+ #include <QMainWindow>
+
+ #include <QSocketNotifier>
+
+ #include <spnav.h>
+
+-namespace {
+-class RedirectStdErr
+-{
+-public:
+- RedirectStdErr()
+- : fi(Base::FileInfo::getTempFileName())
+- , file(stderr)
+- {
+- stderr = fopen(fi.filePath().c_str(), "w");
+- }
+- ~RedirectStdErr()
+- {
+- fclose(stderr);
+- fi.deleteFile();
+- stderr = file;
+- }
+-
+-private:
+- Base::FileInfo fi;
+- FILE* file;
+-};
+-}
+-
+ Gui::GuiNativeEvent::GuiNativeEvent(Gui::GUIApplicationNativeEventAware *app)
+ : GuiAbstractNativeEvent(app)
+ {
+@@ -72,8 +47,6 @@ Gui::GuiNativeEvent::~GuiNativeEvent()
+
+ void Gui::GuiNativeEvent::initSpaceball(QMainWindow *window)
+ {
+- // tmp. redirect stderr to a file to suppress an error message from spnav_open()
+- RedirectStdErr err;
+ Q_UNUSED(window)
+ if (spnav_open() == -1) {
+ Base::Console().Log("Couldn't connect to spacenav daemon. Please ignore if you don't have a spacemouse.\n");
diff --git a/testing/freecad/numpy-1.20.patch b/testing/freecad/numpy-1.20.patch
new file mode 100644
index 00000000000..20f4b412589
--- /dev/null
+++ b/testing/freecad/numpy-1.20.patch
@@ -0,0 +1,25 @@
+Patch-Source: https://github.com/FreeCAD/FreeCAD/commit/8b0df1dc936b544091f6a2d68df1c1a14ae3de5b
+--
+From 8b0df1dc936b544091f6a2d68df1c1a14ae3de5b Mon Sep 17 00:00:00 2001
+From: lorenz <looooo@users.noreply.github.com>
+Date: Tue, 27 Dec 2022 04:59:35 +0100
+Subject: [PATCH] FEM: femmesh: fix AttributeError: module 'numpy' has no
+ attribute 'int'
+
+---
+ src/Mod/Fem/femmesh/meshtools.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/Mod/Fem/femmesh/meshtools.py b/src/Mod/Fem/femmesh/meshtools.py
+index dd8671b..d2e2b0a 100644
+--- a/src/Mod/Fem/femmesh/meshtools.py
++++ b/src/Mod/Fem/femmesh/meshtools.py
+@@ -485,7 +485,7 @@ def get_femelement_sets(
+ # fem_objects = FreeCAD FEM document objects
+ # get femelements for reference shapes of each obj.References
+ count_femelements = 0
+- referenced_femelements = np.zeros((max(femelement_table.keys())+1,),dtype=np.int)
++ referenced_femelements = np.zeros((max(femelement_table.keys())+1,),dtype=int)
+ has_remaining_femelements = None
+ for fem_object_i, fem_object in enumerate(fem_objects):
+ obj = fem_object["Object"]
diff --git a/testing/freecad/opencascade-7.8.0.patch b/testing/freecad/opencascade-7.8.0.patch
new file mode 100644
index 00000000000..582fbde3547
--- /dev/null
+++ b/testing/freecad/opencascade-7.8.0.patch
@@ -0,0 +1,877 @@
+Fix compilation with opencascase 7.8.0
+
+Base on https://github.com/FreeCAD/FreeCAD/pull/11909
+
+diff --color -rupN a/cMake/FindOCC.cmake b/cMake/FindOCC.cmake
+--- a/cMake/FindOCC.cmake 2022-12-07 03:35:37.000000000 +0100
++++ b/cMake/FindOCC.cmake 2024-02-27 15:00:48.248873883 +0100
+@@ -127,8 +127,6 @@ if(OCC_FOUND)
+ TKG2d
+ TKG3d
+ TKMath
+- TKIGES
+- TKSTL
+ TKShHealing
+ TKXSBase
+ TKBool
+@@ -139,10 +137,6 @@ if(OCC_FOUND)
+ TKGeomBase
+ TKOffset
+ TKPrim
+- TKSTEPBase
+- TKSTEPAttr
+- TKSTEP209
+- TKSTEP
+ TKHLR
+ TKFeat
+ )
+@@ -154,17 +148,19 @@ if(OCC_FOUND)
+ TKLCAF
+ TKVCAF
+ TKCDF
+- TKXDESTEP
+- TKXDEIGES
+ TKMeshVS
+ TKService
+ TKV3d
+ )
+- if(OCC_VERSION_STRING VERSION_LESS 6.7.3)
+- list(APPEND OCC_OCAF_LIBRARIES TKAdvTools)
+- elseif(NOT OCC_VERSION_STRING VERSION_LESS 7.5.0)
++ if(NOT OCC_VERSION_STRING VERSION_LESS 7.5.0)
+ list(APPEND OCC_OCAF_LIBRARIES TKRWMesh)
+- endif(OCC_VERSION_STRING VERSION_LESS 6.7.3)
++ endif(NOT OCC_VERSION_STRING VERSION_LESS 7.5.0)
++ if(OCC_VERSION_STRING VERSION_LESS 7.8.0)
++ list(APPEND OCC_LIBRARIES TKIGES TKSTL TKSTEPBase TKSTEPAttr TKSTEP209 TKSTEP)
++ list(APPEND OCC_OCAF_LIBRARIES TKXDESTEP TKXDEIGES)
++ else(OCC_VERSION_STRING VERSION_LESS 7.8.0)
++ list(APPEND OCC_LIBRARIES TKDESTEP TKDEIGES TKDEGLTF TKDESTL)
++ endif(OCC_VERSION_STRING VERSION_LESS 7.8.0)
+ message(STATUS "-- Found OCE/OpenCASCADE version: ${OCC_VERSION_STRING}")
+ message(STATUS "-- OCE/OpenCASCADE include directory: ${OCC_INCLUDE_DIR}")
+ message(STATUS "-- OCE/OpenCASCADE shared libraries directory: ${OCC_LIBRARY_DIR}")
+diff --color -rupN a/src/3rdParty/salomesmesh/inc/SMESHDS_DataMapOfShape.hxx b/src/3rdParty/salomesmesh/inc/SMESHDS_DataMapOfShape.hxx
+--- a/src/3rdParty/salomesmesh/inc/SMESHDS_DataMapOfShape.hxx 2022-12-07 03:35:37.000000000 +0100
++++ b/src/3rdParty/salomesmesh/inc/SMESHDS_DataMapOfShape.hxx 2024-02-27 15:00:48.248873883 +0100
+@@ -29,22 +29,35 @@
+
+ #include <TopoDS_Shape.hxx>
+
++#include <Standard_Version.hxx>
++
+ /*
+ * This method needed for instance NCollection_DataMap with TopoDS_Shape as key
+ */
++#if OCC_VERSION_HEX >= 0x070800
+ struct SMESHDS_Hasher
+ {
+- static inline Standard_Boolean IsEqual(const TopoDS_Shape& S1,
+- const TopoDS_Shape& S2)
+- {
+- return S1.IsSame(S2);
++ size_t operator()(const TopoDS_Shape& S) const noexcept {
++ return std::hash<TopoDS_Shape>{}(S);
+ }
+- static inline Standard_Integer HashCode(const TopoDS_Shape& S,
+- const Standard_Integer Upper)
+- {
+- return ::HashCode( S, Upper);
++ size_t operator()(const TopoDS_Shape& S1, const TopoDS_Shape& S2) const noexcept {
++ return S1.IsSame(S2);
+ }
+ };
+-
++#else
++struct SMESHDS_Hasher
++{
++static inline Standard_Boolean IsEqual(const TopoDS_Shape& S1,
++ const TopoDS_Shape& S2)
++{
++ return S1.IsSame(S2);
++}
++static inline Standard_Integer HashCode(const TopoDS_Shape& S,
++ const Standard_Integer Upper)
++{
++ return ::HashCode( S, Upper);
++}
++};
++#endif
+
+ #endif
+diff --color -rupN a/src/3rdParty/salomesmesh/inc/SMESH_MeshVSLink.hxx b/src/3rdParty/salomesmesh/inc/SMESH_MeshVSLink.hxx
+--- a/src/3rdParty/salomesmesh/inc/SMESH_MeshVSLink.hxx 2022-12-07 03:35:37.000000000 +0100
++++ b/src/3rdParty/salomesmesh/inc/SMESH_MeshVSLink.hxx 2024-02-27 15:00:48.248873883 +0100
+@@ -57,9 +57,6 @@
+ #ifndef _MeshVS_EntityType_HeaderFile
+ #include <MeshVS_EntityType.hxx>
+ #endif
+-#ifndef _Standard_Address_HeaderFile
+-#include <Standard_Address.hxx>
+-#endif
+ #ifndef _TColStd_HArray1OfInteger_HeaderFile
+ #include <TColStd_HArray1OfInteger.hxx>
+ #endif
+diff --color -rupN a/src/3rdParty/salomesmesh/inc/SMESH_SMESH.hxx b/src/3rdParty/salomesmesh/inc/SMESH_SMESH.hxx
+--- a/src/3rdParty/salomesmesh/inc/SMESH_SMESH.hxx 2022-12-07 03:35:37.000000000 +0100
++++ b/src/3rdParty/salomesmesh/inc/SMESH_SMESH.hxx 2024-02-27 15:00:48.248873883 +0100
+@@ -37,4 +37,5 @@
+ #define SMESH_EXPORT
+ #endif
+
++#include <Standard_Version.hxx>
+ #endif
+diff --color -rupN a/src/3rdParty/salomesmesh/inc/SMESH_SequenceOfNode.hxx b/src/3rdParty/salomesmesh/inc/SMESH_SequenceOfNode.hxx
+--- a/src/3rdParty/salomesmesh/inc/SMESH_SequenceOfNode.hxx 2022-12-07 03:35:37.000000000 +0100
++++ b/src/3rdParty/salomesmesh/inc/SMESH_SequenceOfNode.hxx 2024-02-27 15:00:48.252207183 +0100
+@@ -28,10 +28,11 @@
+
+ #include "SMESH_SMESH.hxx"
+
+-#include <NCollection_DefineSequence.hxx>
+ #if OCC_VERSION_HEX >= 0x060703
+ #include <NCollection_IncAllocator.hxx>
+ #include <NCollection_Sequence.hxx>
++#else
++#include <NCollection_DefineSequence.hxx>
+ #endif
+
+ typedef const SMDS_MeshNode* SMDS_MeshNodePtr;
+diff --color -rupN a/src/3rdParty/salomesmesh/inc/SMESH_TypeDefs.hxx b/src/3rdParty/salomesmesh/inc/SMESH_TypeDefs.hxx
+--- a/src/3rdParty/salomesmesh/inc/SMESH_TypeDefs.hxx 2022-12-07 03:35:37.000000000 +0100
++++ b/src/3rdParty/salomesmesh/inc/SMESH_TypeDefs.hxx 2024-02-27 15:00:48.252207183 +0100
+@@ -185,11 +185,18 @@ typedef std::vector< UVPtStruct > UVPtSt
+
+ // --------------------------------------------------------------------------------
+ // class SMESH_SequenceOfElemPtr
++#include <Standard_Version.hxx>
++#if OCC_VERSION_HEX >= 0x060703
++#include <NCollection_Sequence.hxx>
++#else
+ #include <NCollection_DefineSequence.hxx>
++#endif
+
+ class SMDS_MeshElement;
+
+ typedef const SMDS_MeshElement* SMDS_MeshElementPtr;
++#define DEFINE_SEQUENCE(_ClassName_, _BaseCollection_, TheItemType) \
++typedef NCollection_Sequence<TheItemType > _ClassName_;
+
+ DEFINE_SEQUENCE (SMESH_SequenceOfElemPtr, SMESH_BaseCollectionElemPtr, SMDS_MeshElementPtr)
+
+diff --color -rupN a/src/3rdParty/salomesmesh/src/DriverSTL/DriverSTL_R_SMDS_Mesh.cpp b/src/3rdParty/salomesmesh/src/DriverSTL/DriverSTL_R_SMDS_Mesh.cpp
+--- a/src/3rdParty/salomesmesh/src/DriverSTL/DriverSTL_R_SMDS_Mesh.cpp 2022-12-07 03:35:37.000000000 +0100
++++ b/src/3rdParty/salomesmesh/src/DriverSTL/DriverSTL_R_SMDS_Mesh.cpp 2024-02-27 15:00:48.252207183 +0100
+@@ -33,10 +33,33 @@
+ #include "SMDS_MeshNode.hxx"
+ #include "SMESH_File.hxx"
+
++#include <Standard_Version.hxx>
++
+ namespace
+ {
+ struct Hasher
+ {
++#if OCC_VERSION_HEX >= 0x070800
++ size_t operator()(const gp_Pnt& point) const noexcept
++ {
++ union
++ {
++ Standard_Real R[3];
++ Standard_Integer I[6];
++ } U;
++
++ point.Coord( U.R[0], U.R[1], U.R[2] );
++ return std::hash<Standard_Integer>{}(U.I[0]/23+U.I[1]/19+U.I[2]/17+U.I[3]/13+U.I[4]/11+U.I[5]/7);
++ }
++
++ size_t operator()(const gp_Pnt& point1, const gp_Pnt& point2) const noexcept
++ {
++ static Standard_Real tab1[3], tab2[3];
++ point1.Coord(tab1[0],tab1[1],tab1[2]);
++ point2.Coord(tab2[0],tab2[1],tab2[2]);
++ return (memcmp(tab1,tab2,sizeof(tab1)) == 0);
++ }
++#else
+ //=======================================================================
+ //function : HashCode
+ //purpose :
+@@ -51,9 +74,9 @@ namespace
+ } U;
+
+ point.Coord( U.R[0], U.R[1], U.R[2] );
+-
+- return ::HashCode(U.I[0]/23+U.I[1]/19+U.I[2]/17+U.I[3]/13+U.I[4]/11+U.I[5]/7,Upper);
++ return std::hash<Standard_Integer>{}(U.I[0]/23+U.I[1]/19+U.I[2]/17+U.I[3]/13+U.I[4]/11+U.I[5]/7);
+ }
++
+ //=======================================================================
+ //function : IsEqual
+ //purpose :
+@@ -66,7 +89,9 @@ namespace
+ point2.Coord(tab2[0],tab2[1],tab2[2]);
+ return (memcmp(tab1,tab2,sizeof(tab1)) == 0);
+ }
++#endif
+ };
++
+ typedef NCollection_DataMap<gp_Pnt,SMDS_MeshNode*,Hasher> TDataMapOfPntNodePtr;
+
+ const int HEADER_SIZE = 84;
+diff --color -rupN a/src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_Quadrangle_2D.cpp b/src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_Quadrangle_2D.cpp
+--- a/src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_Quadrangle_2D.cpp 2022-12-07 03:35:37.000000000 +0100
++++ b/src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_Quadrangle_2D.cpp 2024-02-27 15:00:48.252207183 +0100
+@@ -48,7 +48,6 @@
+ #include <Bnd_Box.hxx>
+ #include <GeomAPI_ProjectPointOnSurf.hxx>
+ #include <Geom_Surface.hxx>
+-#include <NCollection_DefineArray2.hxx>
+ #include <Precision.hxx>
+ #include <Standard_Real.hxx>
+ #include <TColStd_SequenceOfInteger.hxx>
+diff --color -rupN a/src/Mod/Drawing/App/PreCompiled.h b/src/Mod/Drawing/App/PreCompiled.h
+--- a/src/Mod/Drawing/App/PreCompiled.h 2022-12-07 03:35:37.000000000 +0100
++++ b/src/Mod/Drawing/App/PreCompiled.h 2024-02-27 15:00:48.252207183 +0100
+@@ -70,7 +70,6 @@
+ #include <Standard_LicenseError.hxx>
+ #include <Standard_LicenseNotFound.hxx>
+ #include <Standard_Macro.hxx>
+-#include <Standard_math.hxx>
+ #include <Standard_MultiplyDefined.hxx>
+ #include <Standard_NegativeValue.hxx>
+ #include <Standard_NoMoreObject.hxx>
+diff --color -rupN a/src/Mod/Drawing/Gui/TaskDialog.cpp b/src/Mod/Drawing/Gui/TaskDialog.cpp
+--- a/src/Mod/Drawing/Gui/TaskDialog.cpp 2022-12-07 03:35:37.000000000 +0100
++++ b/src/Mod/Drawing/Gui/TaskDialog.cpp 2024-02-27 15:00:48.252207183 +0100
+@@ -29,7 +29,6 @@
+ #endif
+
+
+-#include <Standard_math.hxx>
+ #include "TaskDialog.h"
+ #include <Gui/Application.h>
+ #include <Gui/Command.h>
+diff --color -rupN a/src/Mod/Fem/Gui/PreCompiled.h b/src/Mod/Fem/Gui/PreCompiled.h
+--- a/src/Mod/Fem/Gui/PreCompiled.h 2022-12-07 03:35:37.000000000 +0100
++++ b/src/Mod/Fem/Gui/PreCompiled.h 2024-02-27 15:00:48.252207183 +0100
+@@ -63,7 +63,6 @@
+ #endif
+
+ // OCC
+-#include <Standard_math.hxx>
+ #include <Precision.hxx>
+ #include <TopoDS.hxx>
+ #include <BRepAdaptor_Surface.hxx>
+diff --color -rupN a/src/Mod/Fem/Gui/TaskCreateNodeSet.cpp b/src/Mod/Fem/Gui/TaskCreateNodeSet.cpp
+--- a/src/Mod/Fem/Gui/TaskCreateNodeSet.cpp 2022-12-07 03:35:37.000000000 +0100
++++ b/src/Mod/Fem/Gui/TaskCreateNodeSet.cpp 2024-02-27 15:00:48.252207183 +0100
+@@ -28,7 +28,6 @@
+
+ # include <SMESH_Mesh.hxx>
+ # include <SMESHDS_Mesh.hxx>
+-# include <Standard_math.hxx>
+ #endif
+
+ #include <Base/Console.h>
+diff --color -rupN a/src/Mod/Import/App/ImportOCAF.cpp b/src/Mod/Import/App/ImportOCAF.cpp
+--- a/src/Mod/Import/App/ImportOCAF.cpp 2022-12-07 03:35:37.000000000 +0100
++++ b/src/Mod/Import/App/ImportOCAF.cpp 2024-02-27 15:00:48.252207183 +0100
+@@ -165,7 +165,11 @@ void ImportOCAF::loadShapes(const TDF_La
+ std::vector<App::DocumentObject *> localValue;
+
+ if (aShapeTool->GetShape(label,aShape)) {
++#if OCC_VERSION_HEX >= 0x070800
++ hash = std::hash<TopoDS_Shape>{}(aShape);
++#else
+ hash = aShape.HashCode(HashUpper);
++#endif
+ }
+
+ Handle(TDataStd_Name) name;
+@@ -235,7 +239,11 @@ void ImportOCAF::loadShapes(const TDF_La
+ if (isRef || myRefShapes.find(hash) == myRefShapes.end()) {
+ TopoDS_Shape aShape;
+ if (isRef && aShapeTool->GetShape(label, aShape))
++#if OCC_VERSION_HEX >= 0x070800
++ myRefShapes.insert(std::hash<TopoDS_Shape>{}(aShape));
++#else
+ myRefShapes.insert(aShape.HashCode(HashUpper));
++#endif
+
+ if (aShapeTool->IsSimpleShape(label) && (isRef || aShapeTool->IsFree(label))) {
+ if (!asm_name.empty())
+@@ -565,7 +573,11 @@ void ImportXCAF::createShape(const TopoD
+ part->Label.setValue(default_name);
+ part->Shape.setValue(shape);
+ std::map<Standard_Integer, Quantity_ColorRGBA>::const_iterator jt;
++#if OCC_VERSION_HEX >= 0x070800
++ jt = myColorMap.find(std::hash<TopoDS_Shape>{}(shape));
++#else
+ jt = myColorMap.find(shape.HashCode(INT_MAX));
++#endif
+
+ App::Color partColor(0.8f,0.8f,0.8f);
+ #if 0//TODO
+@@ -586,7 +598,11 @@ void ImportXCAF::createShape(const TopoD
+ // set label name if defined
+ if (setname && !myNameMap.empty()) {
+ std::map<Standard_Integer, std::string>::const_iterator jt;
++#if OCC_VERSION_HEX >= 0x070800
++ jt = myNameMap.find(std::hash<TopoDS_Shape>{}(shape));
++#else
+ jt = myNameMap.find(shape.HashCode(INT_MAX));
++#endif
+ if (jt != myNameMap.end()) {
+ part->Label.setValue(jt->second);
+ }
+@@ -606,7 +622,11 @@ void ImportXCAF::createShape(const TopoD
+ faceColors.resize(faces.Extent(), partColor);
+ xp.Init(shape,TopAbs_FACE);
+ while (xp.More()) {
++#if OCC_VERSION_HEX >= 0x070800
++ jt = myColorMap.find(std::hash<TopoDS_Shape>{}(xp.Current()));
++#else
+ jt = myColorMap.find(xp.Current().HashCode(INT_MAX));
++#endif
+ if (jt != myColorMap.end()) {
+ int index = faces.FindIndex(xp.Current());
+ faceColors[index-1] = convertColor(jt->second);
+@@ -641,23 +661,51 @@ void ImportXCAF::loadShapes(const TDF_La
+ // add the shapes
+ TopExp_Explorer xp;
+ for (xp.Init(aShape, TopAbs_SOLID); xp.More(); xp.Next(), ctSolids++)
++#if OCC_VERSION_HEX >= 0x070800
++ this->mySolids[std::hash<TopoDS_Shape>{}(xp.Current())] = (xp.Current());
++#else
+ this->mySolids[xp.Current().HashCode(INT_MAX)] = (xp.Current());
++#endif
+ for (xp.Init(aShape, TopAbs_SHELL, TopAbs_SOLID); xp.More(); xp.Next(), ctShells++)
++#if OCC_VERSION_HEX >= 0x070800
++ this->myShells[std::hash<TopoDS_Shape>{}(xp.Current())] = (xp.Current());
++#else
+ this->myShells[xp.Current().HashCode(INT_MAX)] = (xp.Current());
++#endif
+ // if no solids and no shells were found then go for compounds
+ if (ctSolids == 0 && ctShells == 0) {
+ for (xp.Init(aShape, TopAbs_COMPOUND); xp.More(); xp.Next(), ctComps++)
++#if OCC_VERSION_HEX >= 0x070800
++ this->myCompds[std::hash<TopoDS_Shape>{}(xp.Current())] = (xp.Current());
++#else
+ this->myCompds[xp.Current().HashCode(INT_MAX)] = (xp.Current());
++#endif
+ }
+ if (ctComps == 0) {
+ for (xp.Init(aShape, TopAbs_FACE, TopAbs_SHELL); xp.More(); xp.Next())
++#if OCC_VERSION_HEX >= 0x070800
++ this->myShapes[std::hash<TopoDS_Shape>{}(xp.Current())] = (xp.Current());
++#else
+ this->myShapes[xp.Current().HashCode(INT_MAX)] = (xp.Current());
++#endif
+ for (xp.Init(aShape, TopAbs_WIRE, TopAbs_FACE); xp.More(); xp.Next())
++#if OCC_VERSION_HEX >= 0x070800
++ this->myShapes[std::hash<TopoDS_Shape>{}(xp.Current())] = (xp.Current());
++#else
+ this->myShapes[xp.Current().HashCode(INT_MAX)] = (xp.Current());
++#endif
+ for (xp.Init(aShape, TopAbs_EDGE, TopAbs_WIRE); xp.More(); xp.Next())
++#if OCC_VERSION_HEX >= 0x070800
++ this->myShapes[std::hash<TopoDS_Shape>{}(xp.Current())] = (xp.Current());
++#else
+ this->myShapes[xp.Current().HashCode(INT_MAX)] = (xp.Current());
++#endif
+ for (xp.Init(aShape, TopAbs_VERTEX, TopAbs_EDGE); xp.More(); xp.Next())
++#if OCC_VERSION_HEX >= 0x070800
++ this->myShapes[std::hash<TopoDS_Shape>{}(xp.Current())] = (xp.Current());
++#else
+ this->myShapes[xp.Current().HashCode(INT_MAX)] = (xp.Current());
++#endif
+ }
+ }
+
+@@ -667,7 +715,11 @@ void ImportXCAF::loadShapes(const TDF_La
+ hColors->GetColor(label, XCAFDoc_ColorSurf, col) ||
+ hColors->GetColor(label, XCAFDoc_ColorCurv, col)) {
+ // add defined color
++#if OCC_VERSION_HEX >= 0x070800
++ myColorMap[std::hash<TopoDS_Shape>{}(aShape)] = col;
++#else
+ myColorMap[aShape.HashCode(INT_MAX)] = col;
++#endif
+ }
+ else {
+ // http://www.opencascade.org/org/forum/thread_17107/
+@@ -677,7 +729,11 @@ void ImportXCAF::loadShapes(const TDF_La
+ hColors->GetColor(it.Value(), XCAFDoc_ColorSurf, col) ||
+ hColors->GetColor(it.Value(), XCAFDoc_ColorCurv, col)) {
+ // add defined color
++#if OCC_VERSION_HEX >= 0x070800
++ myColorMap[std::hash<TopoDS_Shape>{}(it.Value())] = col;
++#else
+ myColorMap[it.Value().HashCode(INT_MAX)] = col;
++#endif
+ }
+ }
+ }
+@@ -690,7 +746,11 @@ void ImportXCAF::loadShapes(const TDF_La
+ extstr.ToUTF8CString(str);
+ std::string labelName(str);
+ if (!labelName.empty())
++#if OCC_VERSION_HEX >= 0x070800
++ myNameMap[std::hash<TopoDS_Shape>{}(aShape)] = labelName;
++#else
+ myNameMap[aShape.HashCode(INT_MAX)] = labelName;
++#endif
+ delete [] str;
+ }
+
+diff --color -rupN a/src/Mod/Import/App/ImportOCAF.h b/src/Mod/Import/App/ImportOCAF.h
+--- a/src/Mod/Import/App/ImportOCAF.h 2022-12-07 03:35:37.000000000 +0100
++++ b/src/Mod/Import/App/ImportOCAF.h 2024-02-27 15:00:48.252207183 +0100
+@@ -29,7 +29,6 @@
+ #include <XCAFDoc_ShapeTool.hxx>
+ #include <Quantity_ColorRGBA.hxx>
+ #include <TopoDS_Shape.hxx>
+-#include <TDF_LabelMapHasher.hxx>
+ #include <climits>
+ #include <string>
+ #include <set>
+diff --color -rupN a/src/Mod/Import/App/ImportOCAF2.h b/src/Mod/Import/App/ImportOCAF2.h
+--- a/src/Mod/Import/App/ImportOCAF2.h 2022-12-07 03:35:37.000000000 +0100
++++ b/src/Mod/Import/App/ImportOCAF2.h 2024-02-27 15:06:12.358890276 +0100
+@@ -27,7 +27,6 @@
+ #include <XCAFDoc_ColorTool.hxx>
+ #include <XCAFDoc_ShapeTool.hxx>
+ #include <TopoDS_Shape.hxx>
+-#include <TDF_LabelMapHasher.hxx>
+ #include <climits>
+ #include <string>
+ #include <set>
+@@ -57,13 +56,21 @@ namespace Import {
+
+ struct ShapeHasher {
+ std::size_t operator()(const TopoDS_Shape &s) const {
++#if OCC_VERSION_HEX >= 0x070800
++ return std::hash<TopoDS_Shape>{}(s);
++#else
+ return s.HashCode(INT_MAX);
++#endif
+ }
+ };
+
+ struct LabelHasher {
+ std::size_t operator()(const TDF_Label &l) const {
++#if OCC_VERSION_HEX >= 0x070800
++ return std::hash<TDF_Label> {}(l);
++#else
+ return TDF_LabelMapHasher::HashCode(l,INT_MAX);
++#endif
+ }
+ };
+
+diff --color -rupN a/src/Mod/MeshPart/App/CurveProjector.h b/src/Mod/MeshPart/App/CurveProjector.h
+--- a/src/Mod/MeshPart/App/CurveProjector.h 2022-12-07 03:35:37.000000000 +0100
++++ b/src/Mod/MeshPart/App/CurveProjector.h 2024-02-27 15:00:48.252207183 +0100
+@@ -20,6 +20,7 @@
+ * *
+ ***************************************************************************/
+
++#include <Standard_Version.hxx>
+
+ #ifndef _CurveProjector_h_
+ #define _CurveProjector_h_
+@@ -64,8 +65,13 @@ public:
+
+ template<class T>
+ struct TopoDSLess {
+- bool operator()(const T& x, const T& y) const {
+- return x.HashCode(INT_MAX-1) < y.HashCode(INT_MAX-1);
++ bool operator()(const T& x, const T& y) const {
++#if OCC_VERSION_HEX >= 0x070800
++ std::hash<T> hasher;
++ return hasher(x) < hasher(y);
++#else
++ return x.HashCode(INT_MAX-1) < y.HashCode(INT_MAX-1);
++#endif
+ }
+ };
+
+diff --color -rupN a/src/Mod/MeshPart/App/PreCompiled.h b/src/Mod/MeshPart/App/PreCompiled.h
+--- a/src/Mod/MeshPart/App/PreCompiled.h 2022-12-07 03:35:37.000000000 +0100
++++ b/src/Mod/MeshPart/App/PreCompiled.h 2024-02-27 15:00:48.252207183 +0100
+@@ -76,7 +76,6 @@
+ #include <Standard_LicenseError.hxx>
+ #include <Standard_LicenseNotFound.hxx>
+ #include <Standard_Macro.hxx>
+-#include <Standard_math.hxx>
+ #include <Standard_MultiplyDefined.hxx>
+ #include <Standard_NegativeValue.hxx>
+ #include <Standard_NoMoreObject.hxx>
+diff --color -rupN a/src/Mod/MeshPart/Gui/CrossSections.cpp b/src/Mod/MeshPart/Gui/CrossSections.cpp
+--- a/src/Mod/MeshPart/Gui/CrossSections.cpp 2022-12-07 03:35:37.000000000 +0100
++++ b/src/Mod/MeshPart/Gui/CrossSections.cpp 2024-02-27 15:00:48.252207183 +0100
+@@ -24,7 +24,6 @@
+ #include "PreCompiled.h"
+ #ifndef _PreComp_
+ # include <sstream>
+-# include <Standard_math.hxx>
+ # include <BRep_Builder.hxx>
+ # include <BRepBuilderAPI_MakePolygon.hxx>
+ # include <TopoDS.hxx>
+diff --color -rupN a/src/Mod/Part/App/ImportStep.cpp b/src/Mod/Part/App/ImportStep.cpp
+--- a/src/Mod/Part/App/ImportStep.cpp 2022-12-07 03:35:37.000000000 +0100
++++ b/src/Mod/Part/App/ImportStep.cpp 2024-02-27 15:00:48.255540482 +0100
+@@ -167,7 +167,12 @@ int Part::ImportStepParts(App::Document
+ // This is a trick to access the GUI via Python and set the color property
+ // of the associated view provider. If no GUI is up an exception is thrown
+ // and cleared immediately
++#if OCC_VERSION_HEX >= 0x070800
++ std::hash<TopoDS_Solid> hasher;
++ std::map<int, Quantity_Color>::iterator it = hash_col.find(hasher(aSolid));
++#else
+ std::map<int, Quantity_Color>::iterator it = hash_col.find(aSolid.HashCode(INT_MAX));
++#endif
+ if (it != hash_col.end()) {
+ try {
+ Py::Object obj(pcFeature->getPyObject(), true);
+diff --color -rupN a/src/Mod/Part/App/OCCError.h b/src/Mod/Part/App/OCCError.h
+--- a/src/Mod/Part/App/OCCError.h 2022-12-07 03:35:37.000000000 +0100
++++ b/src/Mod/Part/App/OCCError.h 2024-02-27 15:00:48.255540482 +0100
+@@ -50,7 +50,6 @@
+ # include <Standard_Overflow.hxx>
+ # include <Standard_ProgramError.hxx>
+ # include <Standard_RangeError.hxx>
+-# include <Standard_TooManyUsers.hxx>
+ # include <Standard_TypeMismatch.hxx>
+ # include <Standard_Underflow.hxx>
+
+diff --color -rupN a/src/Mod/Part/App/OpenCascadeAll.h b/src/Mod/Part/App/OpenCascadeAll.h
+--- a/src/Mod/Part/App/OpenCascadeAll.h 2022-12-07 03:35:37.000000000 +0100
++++ b/src/Mod/Part/App/OpenCascadeAll.h 2024-02-27 15:00:48.255540482 +0100
+@@ -49,7 +49,6 @@
+ #include <Standard_LicenseError.hxx>
+ #include <Standard_LicenseNotFound.hxx>
+ #include <Standard_Macro.hxx>
+-#include <Standard_math.hxx>
+ #include <Standard_MultiplyDefined.hxx>
+ #include <Standard_NegativeValue.hxx>
+ #include <Standard_NoMoreObject.hxx>
+diff --color -rupN a/src/Mod/Part/App/TopoShapePyImp.cpp b/src/Mod/Part/App/TopoShapePyImp.cpp
+--- a/src/Mod/Part/App/TopoShapePyImp.cpp 2022-12-07 03:35:37.000000000 +0100
++++ b/src/Mod/Part/App/TopoShapePyImp.cpp 2024-02-27 15:00:48.255540482 +0100
+@@ -1321,7 +1321,11 @@ PyObject* TopoShapePy::ancestorsOfType(
+ TopTools_ListIteratorOfListOfShape it(ancestors);
+ for (; it.More(); it.Next()) {
+ // make sure to avoid duplicates
++#if OCC_VERSION_HEX >= 0x070800
++ const size_t code = std::hash<TopoDS_Shape>{}(static_cast<TopoDS_Shape>(it.Value()));
++#else
+ Standard_Integer code = it.Value().HashCode(INT_MAX);
++#endif
+ if (hashes.find(code) == hashes.end()) {
+ list.append(shape2pyshape(it.Value()));
+ hashes.insert(code);
+@@ -1943,7 +1947,11 @@ PyObject* TopoShapePy::hashCode(PyObject
+ if (!PyArg_ParseTuple(args, "|i",&upper))
+ return nullptr;
+
++#if OCC_VERSION_HEX >= 0x070800
++ int hc = std::hash<TopoDS_Shape>{}(getTopoShapePtr()->getShape());
++#else
+ int hc = getTopoShapePtr()->getShape().HashCode(upper);
++#endif
+ return Py_BuildValue("i", hc);
+ }
+
+diff --color -rupN a/src/Mod/Part/Gui/AppPartGui.cpp b/src/Mod/Part/Gui/AppPartGui.cpp
+--- a/src/Mod/Part/Gui/AppPartGui.cpp 2022-12-07 03:35:37.000000000 +0100
++++ b/src/Mod/Part/Gui/AppPartGui.cpp 2024-02-27 15:00:48.255540482 +0100
+@@ -11,9 +11,6 @@
+
+
+ #include "PreCompiled.h"
+-#ifndef _PreComp_
+-# include <Standard_math.hxx>
+-#endif
+
+ #include <Base/Console.h>
+ #include <Base/Interpreter.h>
+diff --color -rupN a/src/Mod/Part/Gui/Command.cpp b/src/Mod/Part/Gui/Command.cpp
+--- a/src/Mod/Part/Gui/Command.cpp 2022-12-07 03:35:37.000000000 +0100
++++ b/src/Mod/Part/Gui/Command.cpp 2024-02-27 15:00:48.255540482 +0100
+@@ -26,7 +26,6 @@
+ # include <QFileInfo>
+ # include <QPointer>
+ # include <QString>
+-# include <Standard_math.hxx>
+ # include <Standard_Version.hxx>
+ # include <TopExp_Explorer.hxx>
+ # include <TopoDS_Shape.hxx>
+diff --color -rupN a/src/Mod/Part/Gui/CommandSimple.cpp b/src/Mod/Part/Gui/CommandSimple.cpp
+--- a/src/Mod/Part/Gui/CommandSimple.cpp 2022-12-07 03:35:37.000000000 +0100
++++ b/src/Mod/Part/Gui/CommandSimple.cpp 2024-02-27 15:00:48.255540482 +0100
+@@ -22,9 +22,6 @@
+
+
+ #include "PreCompiled.h"
+-#ifndef _PreComp_
+-# include <Standard_math.hxx>
+-#endif
+
+ #include <App/Document.h>
+ #include <App/DocumentObject.h>
+diff --color -rupN a/src/Mod/Part/Gui/CrossSections.cpp b/src/Mod/Part/Gui/CrossSections.cpp
+--- a/src/Mod/Part/Gui/CrossSections.cpp 2022-12-07 03:35:37.000000000 +0100
++++ b/src/Mod/Part/Gui/CrossSections.cpp 2024-02-27 15:00:48.255540482 +0100
+@@ -23,7 +23,6 @@
+
+ #include "PreCompiled.h"
+ #ifndef _PreComp_
+-# include <Standard_math.hxx>
+ # include <BRep_Builder.hxx>
+ # include <BRepAlgoAPI_Section.hxx>
+ # include <BRepBuilderAPI_MakeWire.hxx>
+diff --color -rupN a/src/Mod/Part/Gui/ViewProvider2DObject.cpp b/src/Mod/Part/Gui/ViewProvider2DObject.cpp
+--- a/src/Mod/Part/Gui/ViewProvider2DObject.cpp 2022-12-07 03:35:37.000000000 +0100
++++ b/src/Mod/Part/Gui/ViewProvider2DObject.cpp 2024-02-27 15:00:48.255540482 +0100
+@@ -26,8 +26,6 @@
+ #ifndef _PreComp_
+ # include <cfloat>
+
+-# include <Standard_math.hxx>
+-
+ # include <Inventor/nodes/SoAnnotation.h>
+ # include <Inventor/nodes/SoBaseColor.h>
+ # include <Inventor/nodes/SoDepthBuffer.h>
+diff --color -rupN a/src/Mod/Part/Gui/ViewProviderExt.cpp b/src/Mod/Part/Gui/ViewProviderExt.cpp
+--- a/src/Mod/Part/Gui/ViewProviderExt.cpp 2022-12-07 03:35:37.000000000 +0100
++++ b/src/Mod/Part/Gui/ViewProviderExt.cpp 2024-02-27 15:00:48.255540482 +0100
+@@ -978,7 +978,11 @@ void ViewProviderPartExt::updateVisual()
+
+ TopExp_Explorer xp;
+ for (xp.Init(faceMap(i),TopAbs_EDGE);xp.More();xp.Next())
++#if OCC_VERSION_HEX >= 0x070800
++ faceEdges.insert(std::hash<TopoDS_Shape>{}(xp.Current()));
++#else
+ faceEdges.insert(xp.Current().HashCode(INT_MAX));
++#endif
+ numFaces++;
+ }
+
+@@ -1006,7 +1010,11 @@ void ViewProviderPartExt::updateVisual()
+ // So, we have to store the hashes of the edges associated to a face.
+ // If the hash of a given edge is not in this list we know it's really
+ // a free edge.
++#if OCC_VERSION_HEX >= 0x070800
++ int hash = std::hash<TopoDS_Shape>{}(aEdge);
++#else
+ int hash = aEdge.HashCode(INT_MAX);
++#endif
+ if (faceEdges.find(hash) == faceEdges.end()) {
+ Handle(Poly_Polygon3D) aPoly = Part::Tools::polygonOfEdge(aEdge, aLoc);
+ if (!aPoly.IsNull()) {
+@@ -1205,7 +1213,11 @@ void ViewProviderPartExt::updateVisual()
+ TopLoc_Location aLoc;
+
+ // handling of the free edge that are not associated to a face
++#if OCC_VERSION_HEX >= 0x070800
++ int hash = std::hash<TopoDS_Shape>{}(aEdge);
++#else
+ int hash = aEdge.HashCode(INT_MAX);
++#endif
+ if (faceEdges.find(hash) == faceEdges.end()) {
+ Handle(Poly_Polygon3D) aPoly = Part::Tools::polygonOfEdge(aEdge, aLoc);
+ if (!aPoly.IsNull()) {
+diff --color -rupN a/src/Mod/Part/Gui/ViewProviderExt.h b/src/Mod/Part/Gui/ViewProviderExt.h
+--- a/src/Mod/Part/Gui/ViewProviderExt.h 2022-12-07 03:35:37.000000000 +0100
++++ b/src/Mod/Part/Gui/ViewProviderExt.h 2024-02-27 15:00:48.255540482 +0100
+@@ -24,7 +24,6 @@
+ #ifndef PARTGUI_VIEWPROVIDERPARTEXT_H
+ #define PARTGUI_VIEWPROVIDERPARTEXT_H
+
+-#include <Standard_math.hxx>
+ #include <Standard_Boolean.hxx>
+ #include <TopoDS_Shape.hxx>
+ #include <TopoDS_Face.hxx>
+diff --color -rupN a/src/Mod/Part/Gui/ViewProviderMirror.cpp b/src/Mod/Part/Gui/ViewProviderMirror.cpp
+--- a/src/Mod/Part/Gui/ViewProviderMirror.cpp 2022-12-07 03:35:37.000000000 +0100
++++ b/src/Mod/Part/Gui/ViewProviderMirror.cpp 2024-02-27 15:00:48.255540482 +0100
+@@ -27,7 +27,6 @@
+ # include <QAction>
+ # include <QMenu>
+ # include <QTimer>
+-# include <Standard_math.hxx>
+ # include <TopExp.hxx>
+ # include <TopTools_IndexedMapOfShape.hxx>
+ # include <TopTools_ListOfShape.hxx>
+diff --color -rupN a/src/Mod/Part/Gui/ViewProviderPython.cpp b/src/Mod/Part/Gui/ViewProviderPython.cpp
+--- a/src/Mod/Part/Gui/ViewProviderPython.cpp 2022-12-07 03:35:37.000000000 +0100
++++ b/src/Mod/Part/Gui/ViewProviderPython.cpp 2024-02-27 15:00:48.255540482 +0100
+@@ -23,7 +23,6 @@
+
+ #include "PreCompiled.h"
+
+-#include <Standard_math.hxx>
+ #ifndef _PreComp_
+ # include <Inventor/nodes/SoSeparator.h>
+ #endif
+diff --color -rupN a/src/Mod/Part/Gui/ViewProviderReference.h b/src/Mod/Part/Gui/ViewProviderReference.h
+--- a/src/Mod/Part/Gui/ViewProviderReference.h 2022-12-07 03:35:37.000000000 +0100
++++ b/src/Mod/Part/Gui/ViewProviderReference.h 2024-02-27 15:00:48.255540482 +0100
+@@ -24,7 +24,6 @@
+ #ifndef PARTGUI_ViewProviderPartReference_H
+ #define PARTGUI_ViewProviderPartReference_H
+
+-#include <Standard_math.hxx>
+ #include <Standard_Boolean.hxx>
+ #include <TopoDS_Shape.hxx>
+ #include <Gui/ViewProviderGeometryObject.h>
+diff --color -rupN a/src/Mod/PartDesign/Gui/PreCompiled.h b/src/Mod/PartDesign/Gui/PreCompiled.h
+--- a/src/Mod/PartDesign/Gui/PreCompiled.h 2022-12-07 03:35:37.000000000 +0100
++++ b/src/Mod/PartDesign/Gui/PreCompiled.h 2024-02-27 15:00:48.255540482 +0100
+@@ -44,7 +44,6 @@
+ #include <boost/bind/bind.hpp>
+
+ // OCC
+-#include <Standard_math.hxx>
+ #include <Standard_Version.hxx>
+ #include <Bnd_Box.hxx>
+ #include <BRepBndLib.hxx>
+diff --color -rupN a/src/Mod/Path/App/Voronoi.cpp b/src/Mod/Path/App/Voronoi.cpp
+--- a/src/Mod/Path/App/Voronoi.cpp 2022-12-07 03:35:37.000000000 +0100
++++ b/src/Mod/Path/App/Voronoi.cpp 2024-02-27 15:00:48.255540482 +0100
+@@ -23,10 +23,6 @@
+
+ #include "PreCompiled.h"
+
+-#ifndef _PreComp_
+-# include <Standard_math.hxx>
+-#endif
+-
+ #include <Base/Vector3D.h>
+
+ #include "Voronoi.h"
+diff --color -rupN a/src/Mod/Path/Gui/PreCompiled.h b/src/Mod/Path/Gui/PreCompiled.h
+--- a/src/Mod/Path/Gui/PreCompiled.h 2022-12-07 03:35:37.000000000 +0100
++++ b/src/Mod/Path/Gui/PreCompiled.h 2024-02-27 15:00:48.258873781 +0100
+@@ -38,8 +38,6 @@
+ # define PathGuiExport
+ #endif
+
+-#include <Standard_math.hxx>
+-
+ #ifdef _MSC_VER
+ # pragma warning( disable : 4273 )
+ #endif
+diff --color -rupN a/src/Mod/Robot/Gui/PreCompiled.h b/src/Mod/Robot/Gui/PreCompiled.h
+--- a/src/Mod/Robot/Gui/PreCompiled.h 2022-12-07 03:35:37.000000000 +0100
++++ b/src/Mod/Robot/Gui/PreCompiled.h 2024-02-27 15:00:48.258873781 +0100
+@@ -39,8 +39,6 @@
+ # define RobotGuiExport
+ #endif
+
+-#include <Standard_math.hxx>
+-
+ #ifdef _MSC_VER
+ # pragma warning(disable : 4005)
+ # pragma warning(disable : 4273)
+diff --color -rupN a/src/Mod/Sandbox/Gui/AppSandboxGui.cpp b/src/Mod/Sandbox/Gui/AppSandboxGui.cpp
+--- a/src/Mod/Sandbox/Gui/AppSandboxGui.cpp 2022-12-07 03:35:37.000000000 +0100
++++ b/src/Mod/Sandbox/Gui/AppSandboxGui.cpp 2024-02-27 15:00:48.258873781 +0100
+@@ -24,7 +24,6 @@
+ #include "PreCompiled.h"
+ #ifndef _PreComp_
+ # include <Python.h>
+-# include <Standard_math.hxx>
+ # include <Inventor/nodes/SoLineSet.h>
+ # include <Inventor/nodes/SoBaseColor.h>
+ # include <Inventor/nodes/SoSeparator.h>
+diff --color -rupN a/src/Mod/Sketcher/App/SketchAnalysis.cpp b/src/Mod/Sketcher/App/SketchAnalysis.cpp
+--- a/src/Mod/Sketcher/App/SketchAnalysis.cpp 2022-12-07 03:35:37.000000000 +0100
++++ b/src/Mod/Sketcher/App/SketchAnalysis.cpp 2024-02-27 15:00:48.258873781 +0100
+@@ -25,7 +25,6 @@
+ #include "PreCompiled.h"
+
+ #ifndef _PreComp_
+-# include <Standard_math.hxx>
+ # include <BRep_Tool.hxx>
+ # include <gp_Pnt.hxx>
+ # include <Precision.hxx>
+diff --color -rupN a/src/Mod/Sketcher/Gui/DrawSketchHandler.cpp b/src/Mod/Sketcher/Gui/DrawSketchHandler.cpp
+--- a/src/Mod/Sketcher/Gui/DrawSketchHandler.cpp 2022-12-07 03:35:37.000000000 +0100
++++ b/src/Mod/Sketcher/Gui/DrawSketchHandler.cpp 2024-02-27 15:00:48.258873781 +0100
+@@ -24,7 +24,6 @@
+ #include "PreCompiled.h"
+
+ #ifndef _PreComp_
+-# include <Standard_math.hxx>
+ # include <Inventor/nodes/SoTranslation.h>
+ # include <Inventor/nodes/SoText2.h>
+ # include <Inventor/nodes/SoFont.h>
+diff --color -rupN a/src/Mod/Sketcher/Gui/EditDatumDialog.cpp b/src/Mod/Sketcher/Gui/EditDatumDialog.cpp
+--- a/src/Mod/Sketcher/Gui/EditDatumDialog.cpp 2022-12-07 03:35:37.000000000 +0100
++++ b/src/Mod/Sketcher/Gui/EditDatumDialog.cpp 2024-02-27 15:00:48.258873781 +0100
+@@ -23,7 +23,6 @@
+ #include "PreCompiled.h"
+
+ #ifndef _PreComp_
+-# include <Standard_math.hxx>
+ /// Qt Include Files
+ # include <QApplication>
+ # include <QDialog>
+diff --color -rupN a/src/Mod/Sketcher/Gui/TaskSketcherValidation.cpp b/src/Mod/Sketcher/Gui/TaskSketcherValidation.cpp
+--- a/src/Mod/Sketcher/Gui/TaskSketcherValidation.cpp 2022-12-07 03:35:37.000000000 +0100
++++ b/src/Mod/Sketcher/Gui/TaskSketcherValidation.cpp 2024-02-27 15:00:48.258873781 +0100
+@@ -24,7 +24,6 @@
+ #include "PreCompiled.h"
+
+ #ifndef _PreComp_
+-# include <Standard_math.hxx>
+ # include <QDoubleValidator>
+ # include <QLocale>
+ # include <QMessageBox>
+diff --color -rupN a/src/Mod/Sketcher/Gui/ViewProviderPython.cpp b/src/Mod/Sketcher/Gui/ViewProviderPython.cpp
+--- a/src/Mod/Sketcher/Gui/ViewProviderPython.cpp 2022-12-07 03:35:37.000000000 +0100
++++ b/src/Mod/Sketcher/Gui/ViewProviderPython.cpp 2024-02-27 15:00:48.258873781 +0100
+@@ -23,7 +23,6 @@
+
+ #include "PreCompiled.h"
+
+-#include <Standard_math.hxx>
+ #ifndef _PreComp_
+ # include <Inventor/nodes/SoSeparator.h>
+ #endif
+diff --color -rupN a/src/Mod/Sketcher/Gui/ViewProviderSketch.cpp b/src/Mod/Sketcher/Gui/ViewProviderSketch.cpp
+--- a/src/Mod/Sketcher/Gui/ViewProviderSketch.cpp 2022-12-07 03:35:37.000000000 +0100
++++ b/src/Mod/Sketcher/Gui/ViewProviderSketch.cpp 2024-02-27 15:00:48.258873781 +0100
+@@ -24,7 +24,6 @@
+ #include "PreCompiled.h"
+
+ #ifndef _PreComp_
+-# include <Standard_math.hxx>
+
+ # include <Inventor/actions/SoGetBoundingBoxAction.h>
+ # include <Inventor/SbBox3f.h>
+diff --color -rupN a/src/Mod/Surface/Gui/Command.cpp b/src/Mod/Surface/Gui/Command.cpp
+--- a/src/Mod/Surface/Gui/Command.cpp 2022-12-07 03:35:37.000000000 +0100
++++ b/src/Mod/Surface/Gui/Command.cpp 2024-02-27 15:00:48.258873781 +0100
+@@ -31,7 +31,6 @@
+ #include <QLineEdit>
+ #include <QMessageBox>
+ #include <QPointer>
+-#include <Standard_math.hxx>
+ #include <TopoDS_Shape.hxx>
+ #include <TopoDS_Edge.hxx>
+ #include <Geom_BezierCurve.hxx>
+diff --color -rupN a/src/Mod/TechDraw/Gui/TaskProjection.cpp b/src/Mod/TechDraw/Gui/TaskProjection.cpp
+--- a/src/Mod/TechDraw/Gui/TaskProjection.cpp 2022-12-07 03:35:37.000000000 +0100
++++ b/src/Mod/TechDraw/Gui/TaskProjection.cpp 2024-02-27 15:00:48.258873781 +0100
+@@ -29,9 +29,6 @@
+ # include <QMessageBox>
+ #endif
+
+-
+-#include <Standard_math.hxx>
+-
+ #include <Gui/Application.h>
+ #include <Gui/BitmapFactory.h>
+ #include <Gui/Command.h>
diff --git a/testing/freecad/opencascade76.patch b/testing/freecad/opencascade76.patch
deleted file mode 100644
index 5150b93aae5..00000000000
--- a/testing/freecad/opencascade76.patch
+++ /dev/null
@@ -1,3696 +0,0 @@
-Patches FreeCAD to work with OpenCascade v7.6.0 using upstream commits
-that resolve the issue. This patch can be removed once FreeCAD v0.20.0
-is released as it will be compatible with OpenCascade v7.6.0
-
-Patch-Source:https://github.com/FreeCAD/FreeCAD/commit/6f3b00d67ec0bd0072b7b493e2a38d2a2e3af27d.patch
-Patch-Source:https://github.com/FreeCAD/FreeCAD/commit/77b198048a63f1e9ca15eef64c8042d599a14cf3.patch
-Patch-Source:https://github.com/FreeCAD/FreeCAD/commit/9b4db7e06472bf5550d0b7627b28b425bfcc8470.patch
-Patch-Source:https://github.com/FreeCAD/FreeCAD/commit/74639da997d5f2e53f001d9f256be86ceee901f5.patch
-Patch-Source:https://github.com/FreeCAD/FreeCAD/commit/c9d17ebde2400f83d1e1e799bdb0a7f85a0da96d.patch
-Patch-Source:https://github.com/FreeCAD/FreeCAD/commit/442c8d52a1989da8f17d60fafea5b81d79cbf0ab.patch
-Patch-Source:https://github.com/FreeCAD/FreeCAD/commit/8e6dab209ee59be61d83a0ff249283a8809fa917.patch
-Patch-Source:https://github.com/FreeCAD/FreeCAD/commit/0f3b5d275070477b7cd2bbfa2dc930135448fb0c.patch
-Patch-Source:https://github.com/FreeCAD/FreeCAD/commit/08d46b5f882420c8d4066427fcc8dab5b1882097.patch
-Patch-Source:https://github.com/FreeCAD/FreeCAD/commit/51e4366085e59a9b511f7160d66493e9b3dfc7d8.patch
-Patch-Source:https://github.com/FreeCAD/FreeCAD/commit/c2c5ae1bf0c571270ecacf257a51e9b064fc609a.patch
-Patch-Source:https://github.com/FreeCAD/FreeCAD/commit/302568d177ddde171c28eaca89e8b4a49466974f.patch
-Patch-Source:https://github.com/FreeCAD/FreeCAD/commit/66d3dd897f63c2e4f8ffd6eced730c6a3372ad51.patch
-Patch-Source:https://github.com/FreeCAD/FreeCAD/commit/03be15cc6b460ab62548142287eb9f677f463a44.patch
-Patch-Source:https://github.com/FreeCAD/FreeCAD/commit/f628050732cc5d1d49fc18282ed508ca3061bb10.patch
-Patch-Source:https://github.com/FreeCAD/FreeCAD/commit/16ff933b09176d83fb0785e74f36038311f0eaeb.patch
-Patch-Source:https://github.com/FreeCAD/FreeCAD/commit/03da9d3501c6b596ad1828b99cb8d923cea56485.patch
-Patch-Source:https://github.com/FreeCAD/FreeCAD/commit/fecf9c2e8492ddab0858b4af23b56da36bff6f6a.patch
-Patch-Source:https://github.com/FreeCAD/FreeCAD/commit/8453d415150f289d36dfe4cbe6b91dfc512e82fe.patch
-Patch-Source:https://github.com/FreeCAD/FreeCAD/commit/3131b97aa88736ac628428a8ceb025d9b7a8a965.patch
-Patch-Source:https://github.com/FreeCAD/FreeCAD/commit/5b4c246944c72459016efff6ae903ac66c090991.patch
-Patch-Source:https://github.com/FreeCAD/FreeCAD/commit/f55c46cc86344a6d7389156c015194f7d0fd2b63.patch
-
-From 6f3b00d67ec0bd0072b7b493e2a38d2a2e3af27d Mon Sep 17 00:00:00 2001
-From: wmayer <wmayer@users.sourceforge.net>
-Date: Mon, 11 Oct 2021 00:30:22 +0200
-Subject: [PATCH] SMESH: port to OCCT 7.6
-
----
- .../src/NETGENPlugin/NETGENPlugin_Mesher.cpp | 7 +++++++
- .../salomesmesh/src/SMESH/SMESH_MeshAlgos.cpp | 7 +++++--
- .../src/StdMeshers/StdMeshers_Adaptive1D.cpp | 14 ++++++++++++++
- .../src/StdMeshers/StdMeshers_Quadrangle_2D.cpp | 2 +-
- .../src/StdMeshers/StdMeshers_ViscousLayers.cpp | 8 ++++++++
- 5 files changed, 35 insertions(+), 3 deletions(-)
-
-diff --git a/src/3rdParty/salomesmesh/src/NETGENPlugin/NETGENPlugin_Mesher.cpp b/src/3rdParty/salomesmesh/src/NETGENPlugin/NETGENPlugin_Mesher.cpp
-index cd6f0b2b075..ea83984b976 100644
---- a/src/3rdParty/salomesmesh/src/NETGENPlugin/NETGENPlugin_Mesher.cpp
-+++ b/src/3rdParty/salomesmesh/src/NETGENPlugin/NETGENPlugin_Mesher.cpp
-@@ -56,6 +56,7 @@
- #include <NCollection_Map.hxx>
- #include <Standard_ErrorHandler.hxx>
- #include <Standard_ProgramError.hxx>
-+#include <Standard_Version.hxx>
- #include <TColStd_MapOfInteger.hxx>
- #include <TopExp.hxx>
- #include <TopExp_Explorer.hxx>
-@@ -700,7 +701,13 @@ double NETGENPlugin_Mesher::GetDefaultMinSize(const TopoDS_Shape& geom,
- BRep_Tool::Triangulation ( TopoDS::Face( fExp.Current() ), loc);
- if ( triangulation.IsNull() ) continue;
- const double fTol = BRep_Tool::Tolerance( TopoDS::Face( fExp.Current() ));
-+#if OCC_VERSION_HEX < 0x070600
- const TColgp_Array1OfPnt& points = triangulation->Nodes();
-+#else
-+ auto points = [&triangulation](Standard_Integer index) {
-+ return triangulation->Node(index);
-+ };
-+#endif
- const Poly_Array1OfTriangle& trias = triangulation->Triangles();
- for ( int iT = trias.Lower(); iT <= trias.Upper(); ++iT )
- {
-diff --git a/src/3rdParty/salomesmesh/src/SMESH/SMESH_MeshAlgos.cpp b/src/3rdParty/salomesmesh/src/SMESH/SMESH_MeshAlgos.cpp
-index 5a07308310e..fbb1b250087 100644
---- a/src/3rdParty/salomesmesh/src/SMESH/SMESH_MeshAlgos.cpp
-+++ b/src/3rdParty/salomesmesh/src/SMESH/SMESH_MeshAlgos.cpp
-@@ -38,10 +38,13 @@
- #include <GC_MakeSegment.hxx>
- #include <GeomAPI_ExtremaCurveCurve.hxx>
- #include <Geom_Line.hxx>
--#include <IntAna_IntConicQuad.hxx>
--#include <IntAna_Quadric.hxx>
-+#include <gp_Cone.hxx>
-+#include <gp_Cylinder.hxx>
- #include <gp_Lin.hxx>
- #include <gp_Pln.hxx>
-+#include <gp_Sphere.hxx>
-+#include <IntAna_IntConicQuad.hxx>
-+#include <IntAna_Quadric.hxx>
-
- #include <limits>
- #include <numeric>
-diff --git a/src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_Adaptive1D.cpp b/src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_Adaptive1D.cpp
-index 88970f36b55..7c51601c7bb 100644
---- a/src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_Adaptive1D.cpp
-+++ b/src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_Adaptive1D.cpp
-@@ -46,6 +46,7 @@
- #include <Poly_Array1OfTriangle.hxx>
- #include <Poly_PolygonOnTriangulation.hxx>
- #include <Poly_Triangulation.hxx>
-+#include <Standard_Version.hxx>
- #include <TColgp_Array1OfPnt.hxx>
- #include <TopExp.hxx>
- #include <TopExp_Explorer.hxx>
-@@ -318,13 +319,26 @@ namespace // internal utils
- {
- myFaceTol = SMESH_MesherHelper::MaxTolerance( face );
- myTree = triaTree;
-+#if OCC_VERSION_HEX < 0x070600
- myNodes = & tr->Nodes();
-+#else
-+ TColgp_Array1OfPnt* trNodes = new TColgp_Array1OfPnt( 1, tr->NbNodes() );
-+ for (Standard_Integer i = myNodes->Lower(); i <= myNodes->Upper(); i++)
-+ {
-+ trNodes->SetValue(i, tr->Node(i));
-+ }
-+ myNodes = trNodes;
-+ myOwnNodes = true;
-+#endif
- myPolyTrias = & tr->Triangles();
- myTriasDeflection = tr->Deflection();
- if ( !loc.IsIdentity() ) // transform nodes if necessary
- {
- TColgp_Array1OfPnt* trsfNodes = new TColgp_Array1OfPnt( myNodes->Lower(), myNodes->Upper() );
- trsfNodes->Assign( *myNodes );
-+#if OCC_VERSION_HEX >= 0x070600
-+ delete myNodes; // it's already a copy
-+#endif
- myNodes = trsfNodes;
- myOwnNodes = true;
- const gp_Trsf& trsf = loc;
-diff --git a/src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_Quadrangle_2D.cpp b/src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_Quadrangle_2D.cpp
-index f7ac411d9a5..5d5c15c3661 100644
---- a/src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_Quadrangle_2D.cpp
-+++ b/src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_Quadrangle_2D.cpp
-@@ -50,7 +50,7 @@
- #include <Geom_Surface.hxx>
- #include <NCollection_DefineArray2.hxx>
- #include <Precision.hxx>
--#include <Quantity_Parameter.hxx>
-+#include <Standard_Real.hxx>
- #include <TColStd_SequenceOfInteger.hxx>
- #include <TColStd_SequenceOfReal.hxx>
- #include <TColgp_SequenceOfXY.hxx>
-diff --git a/src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_ViscousLayers.cpp b/src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_ViscousLayers.cpp
-index 8ee0e268325..e9f46183059 100644
---- a/src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_ViscousLayers.cpp
-+++ b/src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_ViscousLayers.cpp
-@@ -44,7 +44,10 @@
- #include "SMESH_subMeshEventListener.hxx"
- #include "StdMeshers_FaceSide.hxx"
-
-+#include <Standard_Version.hxx>
-+#if OCC_VERSION_HEX < 0x070600
- #include <Adaptor3d_HSurface.hxx>
-+#endif
- #include <BRepAdaptor_Curve2d.hxx>
- #include <BRepAdaptor_Surface.hxx>
- #include <BRepLProp_SLProps.hxx>
-@@ -1340,8 +1343,13 @@ namespace VISCOUS_3D
- //case GeomAbs_SurfaceOfExtrusion:
- case GeomAbs_OffsetSurface:
- {
-+#if OCC_VERSION_HEX < 0x070600
- Handle(Adaptor3d_HSurface) base = surface.BasisSurface();
- return getRovolutionAxis( base->Surface(), axis );
-+#else
-+ Handle(Adaptor3d_Surface) base = surface.BasisSurface();
-+ return getRovolutionAxis( *base, axis );
-+#endif
- }
- default: return false;
- }
-From 77b198048a63f1e9ca15eef64c8042d599a14cf3 Mon Sep 17 00:00:00 2001
-From: wmayer <wmayer@users.sourceforge.net>
-Date: Thu, 7 Oct 2021 11:10:12 +0200
-Subject: [PATCH] SMESH: [skip ci] do not undefine the guard of a header file
-
----
- src/3rdParty/salomesmesh/src/SMESH/SMESH_Mesh.cpp | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/3rdParty/salomesmesh/src/SMESH/SMESH_Mesh.cpp b/src/3rdParty/salomesmesh/src/SMESH/SMESH_Mesh.cpp
-index 24dc2d00a67..8e78712f4a4 100644
---- a/src/3rdParty/salomesmesh/src/SMESH/SMESH_Mesh.cpp
-+++ b/src/3rdParty/salomesmesh/src/SMESH/SMESH_Mesh.cpp
-@@ -64,7 +64,7 @@
-
- #include <GEOMUtils.hxx>
-
--#undef _Precision_HeaderFile
-+//#undef _Precision_HeaderFile
- #include <BRepBndLib.hxx>
- #include <BRepPrimAPI_MakeBox.hxx>
- #include <Bnd_Box.hxx>
-From 9b4db7e06472bf5550d0b7627b28b425bfcc8470 Mon Sep 17 00:00:00 2001
-From: wmayer <wmayer@users.sourceforge.net>
-Date: Fri, 8 Oct 2021 15:32:41 +0200
-Subject: [PATCH] Part: in Part.getFacets() use functions of Tools class
-
----
- src/Mod/Part/App/AppPartPy.cpp | 34 +++++++++++++---------------------
- 1 file changed, 13 insertions(+), 21 deletions(-)
-
-diff --git a/src/Mod/Part/App/AppPartPy.cpp b/src/Mod/Part/App/AppPartPy.cpp
-index 08e3e9fd470..f16ae7e221a 100644
---- a/src/Mod/Part/App/AppPartPy.cpp
-+++ b/src/Mod/Part/App/AppPartPy.cpp
-@@ -134,6 +134,7 @@
- #include "PartFeature.h"
- #include "PartPyCXX.h"
- #include "modelRefine.h"
-+#include "Tools.h"
-
- #ifdef FCUseFreeType
- # include "FT2FC.h"
-@@ -804,33 +805,24 @@ class Module : public Py::ExtensionModule<Module>
- auto theShape = static_cast<Part::TopoShapePy*>(shape)->getTopoShapePtr()->getShape();
- for (TopExp_Explorer ex(theShape, TopAbs_FACE); ex.More(); ex.Next()) {
- TopoDS_Face currentFace = TopoDS::Face(ex.Current());
-- TopLoc_Location loc;
-- Handle(Poly_Triangulation) facets = BRep_Tool::Triangulation(currentFace, loc);
-- const TopAbs_Orientation anOrientation = currentFace.Orientation();
-- bool flip = (anOrientation == TopAbs_REVERSED);
-- if (!facets.IsNull()) {
-- const TColgp_Array1OfPnt& nodes = facets->Nodes();
-- const Poly_Array1OfTriangle& triangles = facets->Triangles();
-- for (int i = 1; i <= triangles.Length(); i++) {
-+
-+ std::vector<gp_Pnt> points;
-+ std::vector<Poly_Triangle> facets;
-+ if (Tools::getTriangulation(currentFace, points, facets)) {
-+ for (const auto& it : facets) {
- Standard_Integer n1,n2,n3;
-- triangles(i).Get(n1, n2, n3);
-- gp_Pnt p1 = nodes(n1);
-- gp_Pnt p2 = nodes(n2);
-- gp_Pnt p3 = nodes(n3);
-- p1.Transform(loc.Transformation());
-- p2.Transform(loc.Transformation());
-- p3.Transform(loc.Transformation());
-+ it.Get(n1, n2, n3);
-+
-+ gp_Pnt p1 = points[n1];
-+ gp_Pnt p2 = points[n2];
-+ gp_Pnt p3 = points[n3];
-+
- // TODO: verify if tolerance should be hard coded
- if (!p1.IsEqual(p2, 0.01) && !p2.IsEqual(p3, 0.01) && !p3.IsEqual(p1, 0.01)) {
- PyObject *t1 = PyTuple_Pack(3, PyFloat_FromDouble(p1.X()), PyFloat_FromDouble(p1.Y()), PyFloat_FromDouble(p1.Z()));
- PyObject *t2 = PyTuple_Pack(3, PyFloat_FromDouble(p2.X()), PyFloat_FromDouble(p2.Y()), PyFloat_FromDouble(p2.Z()));
- PyObject *t3 = PyTuple_Pack(3, PyFloat_FromDouble(p3.X()), PyFloat_FromDouble(p3.Y()), PyFloat_FromDouble(p3.Z()));
-- if (flip) {
-- list.append(Py::asObject(PyTuple_Pack(3, t2, t1, t3)));
-- }
-- else {
-- list.append(Py::asObject(PyTuple_Pack(3, t1, t2, t3)));
-- }
-+ list.append(Py::asObject(PyTuple_Pack(3, t1, t2, t3)));
- }
- }
- }
-From 74639da997d5f2e53f001d9f256be86ceee901f5 Mon Sep 17 00:00:00 2001
-From: wmayer <wmayer@users.sourceforge.net>
-Date: Sat, 9 Oct 2021 13:49:02 +0200
-Subject: [PATCH] OCCT: port FreeCAD sources to version 7.6 SMESH is not yet
- ported Although FreeCAD code compiles with OCCT 7.6 it doesn't work at the
- moment
-
----
- src/Mod/Drawing/App/DrawingExport.cpp | 11 ++-
- src/Mod/Drawing/App/ProjectionAlgos.cpp | 3 -
- src/Mod/Import/App/ImpExpDxf.cpp | 9 +-
- .../App/GeomPlate/CurveConstraintPyImp.cpp | 41 +++++++++-
- src/Mod/Part/App/Geometry.cpp | 7 +-
- src/Mod/Part/App/PartFeatures.cpp | 22 ++---
- src/Mod/Part/App/TopoShape.cpp | 82 ++++++-------------
- src/Mod/Part/App/TopoShapeFacePyImp.cpp | 10 +++
- src/Mod/Part/App/TopoShapeWirePyImp.cpp | 6 +-
- src/Mod/Part/Gui/TaskCheckGeometry.cpp | 6 +-
- src/Mod/Part/Gui/ViewProviderExt.cpp | 17 ++++
- src/Mod/Path/App/AppPathPy.cpp | 5 +-
- src/Mod/TechDraw/App/Geometry.cpp | 12 ++-
- 13 files changed, 138 insertions(+), 93 deletions(-)
-
-diff --git a/src/Mod/Drawing/App/DrawingExport.cpp b/src/Mod/Drawing/App/DrawingExport.cpp
-index b87891ed507..7572be417cf 100644
---- a/src/Mod/Drawing/App/DrawingExport.cpp
-+++ b/src/Mod/Drawing/App/DrawingExport.cpp
-@@ -64,10 +64,7 @@
- #include <BRep_Tool.hxx>
-
- #include <BRepAdaptor_CompCurve.hxx>
--#include <BRepAdaptor_HCompCurve.hxx>
- #include <Approx_Curve3d.hxx>
--#include <BRepAdaptor_HCurve.hxx>
--#include <BRepAdaptor_HCurve.hxx>
- #include <Geom_BSplineCurve.hxx>
- #include <Geom_BezierCurve.hxx>
- #include <GeomConvert_BSplineCurveToBezierCurve.hxx>
-@@ -75,11 +72,19 @@
- #include <Geom2d_BSplineCurve.hxx>
- #include <BRepLProp_CLProps.hxx>
- #include <Standard_Failure.hxx>
-+#include <Standard_Version.hxx>
-+#if OCC_VERSION_HEX < 0x070600
-+#include <BRepAdaptor_HCurve.hxx>
-+#endif
-
- #include "DrawingExport.h"
- #include <Base/Tools.h>
- #include <Base/Vector3D.h>
-
-+#if OCC_VERSION_HEX >= 0x070600
-+using BRepAdaptor_HCurve = BRepAdaptor_Curve;
-+#endif
-+
- using namespace Drawing;
- using namespace std;
-
-diff --git a/src/Mod/Drawing/App/ProjectionAlgos.cpp b/src/Mod/Drawing/App/ProjectionAlgos.cpp
-index 9afae7e9c00..da03d490579 100644
---- a/src/Mod/Drawing/App/ProjectionAlgos.cpp
-+++ b/src/Mod/Drawing/App/ProjectionAlgos.cpp
-@@ -61,10 +61,7 @@
- #include <BRepMesh_IncrementalMesh.hxx>
- #include <BRepLib.hxx>
- #include <BRepAdaptor_CompCurve.hxx>
--#include <BRepAdaptor_HCompCurve.hxx>
- #include <Approx_Curve3d.hxx>
--#include <BRepAdaptor_HCurve.hxx>
--#include <BRepAdaptor_HCurve.hxx>
- #include <Geom_BSplineCurve.hxx>
- #include <Geom_BezierCurve.hxx>
- #include <GeomConvert_BSplineCurveToBezierCurve.hxx>
-diff --git a/src/Mod/Import/App/ImpExpDxf.cpp b/src/Mod/Import/App/ImpExpDxf.cpp
-index 09827bd9285..dcd88ef1384 100644
---- a/src/Mod/Import/App/ImpExpDxf.cpp
-+++ b/src/Mod/Import/App/ImpExpDxf.cpp
-@@ -29,7 +29,6 @@
-
- #include <Approx_Curve3d.hxx>
- #include <BRepAdaptor_Curve.hxx>
--#include <BRepAdaptor_HCurve.hxx>
- #include <BRep_Builder.hxx>
- #include <BRepBuilderAPI_MakeEdge.hxx>
- #include <BRepBuilderAPI_MakeVertex.hxx>
-@@ -47,6 +46,7 @@
- #include <gp_Pnt.hxx>
- #include <gp_Dir.hxx>
- #include <gp_Vec.hxx>
-+#include <Standard_Version.hxx>
- #include <TopoDS.hxx>
- #include <TopoDS_Edge.hxx>
- #include <TopoDS_Vertex.hxx>
-@@ -55,6 +55,9 @@
- #include <TopExp_Explorer.hxx>
- #include <TopoDS_Edge.hxx>
- #include <TColgp_Array1OfPnt.hxx>
-+#if OCC_VERSION_HEX < 0x070600
-+#include <BRepAdaptor_HCurve.hxx>
-+#endif
-
- #include <Base/Console.h>
- #include <Base/Parameter.h>
-@@ -68,6 +71,10 @@
-
- using namespace Import;
-
-+#if OCC_VERSION_HEX >= 0x070600
-+using BRepAdaptor_HCurve = BRepAdaptor_Curve;
-+#endif
-+
-
- //******************************************************************************
- // reading
-diff --git a/src/Mod/Part/App/GeomPlate/CurveConstraintPyImp.cpp b/src/Mod/Part/App/GeomPlate/CurveConstraintPyImp.cpp
-index 3271f3651a8..b63227d5374 100644
---- a/src/Mod/Part/App/GeomPlate/CurveConstraintPyImp.cpp
-+++ b/src/Mod/Part/App/GeomPlate/CurveConstraintPyImp.cpp
-@@ -24,10 +24,13 @@
- #include "PreCompiled.h"
- #ifndef _PreComp_
- # include <GeomAdaptor_Curve.hxx>
--# include <GeomAdaptor_HCurve.hxx>
- # include <Geom2dAdaptor_Curve.hxx>
--# include <Geom2dAdaptor_HCurve.hxx>
- # include <Standard_Failure.hxx>
-+# include <Standard_Version.hxx>
-+# if OCC_VERSION_HEX < 0x070600
-+# include <GeomAdaptor_HCurve.hxx>
-+# include <Geom2dAdaptor_HCurve.hxx>
-+# endif
- #endif
-
- #include "GeomPlate/CurveConstraintPy.h"
-@@ -76,6 +79,16 @@ int CurveConstraintPy::PyInit(PyObject* args, PyObject* kwds)
- return -1;
- }
-
-+#if OCC_VERSION_HEX >= 0x070600
-+ Handle(Adaptor3d_Curve) hCurve;
-+ if (curve->getTypeId().isDerivedFrom(GeomTrimmedCurve::getClassTypeId())) {
-+ GeomTrimmedCurve* trim = static_cast<GeomTrimmedCurve*>(curve);
-+ hCurve = new GeomAdaptor_Curve(handle, trim->getFirstParameter(), trim->getLastParameter());
-+ }
-+ else {
-+ hCurve = new GeomAdaptor_Curve(handle);
-+ }
-+#else
- Handle(Adaptor3d_HCurve) hCurve;
- if (curve->getTypeId().isDerivedFrom(GeomTrimmedCurve::getClassTypeId())) {
- GeomTrimmedCurve* trim = static_cast<GeomTrimmedCurve*>(curve);
-@@ -86,6 +99,7 @@ int CurveConstraintPy::PyInit(PyObject* args, PyObject* kwds)
- GeomAdaptor_Curve adapt(handle);
- hCurve = new GeomAdaptor_HCurve(adapt);
- }
-+#endif
-
- ptr.reset(new GeomPlate_CurveConstraint(hCurve, order, nbPts, tolDist, tolAng, tolCurv));
- }
-@@ -212,11 +226,15 @@ PyObject* CurveConstraintPy::curve3d(PyObject *args)
- return nullptr;
-
- try {
-- Handle(Adaptor3d_HCurve) hAdapt = getGeomPlate_CurveConstraintPtr()->Curve3d();
-+ auto hAdapt = getGeomPlate_CurveConstraintPtr()->Curve3d();
- if (hAdapt.IsNull())
- Py_Return;
-
-+#if OCC_VERSION_HEX >= 0x070600
-+ const Adaptor3d_Curve& a3d = *hAdapt;
-+#else
- const Adaptor3d_Curve& a3d = hAdapt->Curve();
-+#endif
- std::unique_ptr<GeomCurve> ptr(Part::makeFromCurveAdaptor(a3d));
- return ptr->getPyObject();
- }
-@@ -282,6 +300,16 @@ PyObject* CurveConstraintPy::setProjectedCurve(PyObject *args)
- return nullptr;
- }
-
-+#if OCC_VERSION_HEX >= 0x070600
-+ Handle(Adaptor2d_Curve2d) hCurve;
-+ if (handle->IsKind(STANDARD_TYPE(Geom2d_TrimmedCurve))) {
-+ Handle(Geom2d_TrimmedCurve) aTC (Handle(Geom2d_TrimmedCurve)::DownCast (handle));
-+ hCurve = new Geom2dAdaptor_Curve(handle, aTC->FirstParameter(), aTC->LastParameter());
-+ }
-+ else {
-+ hCurve = new Geom2dAdaptor_Curve(handle);
-+ }
-+#else
- Handle(Adaptor2d_HCurve2d) hCurve;
- if (handle->IsKind(STANDARD_TYPE(Geom2d_TrimmedCurve))) {
- Handle(Geom2d_TrimmedCurve) aTC (Handle(Geom2d_TrimmedCurve)::DownCast (handle));
-@@ -292,6 +320,7 @@ PyObject* CurveConstraintPy::setProjectedCurve(PyObject *args)
- Geom2dAdaptor_Curve adapt(handle);
- hCurve = new Geom2dAdaptor_HCurve(adapt);
- }
-+#endif
-
- getGeomPlate_CurveConstraintPtr()->SetProjectedCurve(hCurve, tolU, tolV);
- Py_Return;
-@@ -308,11 +337,15 @@ PyObject* CurveConstraintPy::projectedCurve(PyObject *args)
- return nullptr;
-
- try {
-- Handle(Adaptor2d_HCurve2d) hAdapt = getGeomPlate_CurveConstraintPtr()->ProjectedCurve();
-+ auto hAdapt = getGeomPlate_CurveConstraintPtr()->ProjectedCurve();
- if (hAdapt.IsNull())
- Py_Return;
-
-+#if OCC_VERSION_HEX >= 0x070600
-+ const Adaptor2d_Curve2d& a2d = *hAdapt;
-+#else
- const Adaptor2d_Curve2d& a2d = hAdapt->Curve2d();
-+#endif
- std::unique_ptr<Geom2dCurve> ptr(Part::makeFromCurveAdaptor2d(a2d));
- return ptr->getPyObject();
- }
-diff --git a/src/Mod/Part/App/Geometry.cpp b/src/Mod/Part/App/Geometry.cpp
-index e6d6396ca94..1d1d67d4f01 100644
---- a/src/Mod/Part/App/Geometry.cpp
-+++ b/src/Mod/Part/App/Geometry.cpp
-@@ -51,7 +51,6 @@
- # include <Geom_RectangularTrimmedSurface.hxx>
- # include <Geom_SurfaceOfRevolution.hxx>
- # include <Geom_SurfaceOfLinearExtrusion.hxx>
--# include <GeomAdaptor_HCurve.hxx>
- # include <GeomAPI_Interpolate.hxx>
- # include <GeomConvert.hxx>
- # include <GeomConvert_CompCurveToBSplineCurve.hxx>
-@@ -101,6 +100,9 @@
- # include <GeomAPI_ExtremaCurveCurve.hxx>
- # include <ShapeConstruct_Curve.hxx>
- # include <LProp_NotDefined.hxx>
-+# if OCC_VERSION_HEX < 0x070600
-+# include <GeomAdaptor_HCurve.hxx>
-+# endif
-
- # include <ctime>
- # include <cmath>
-@@ -144,6 +146,9 @@
-
- #include "Geometry.h"
-
-+#if OCC_VERSION_HEX >= 0x070600
-+using GeomAdaptor_HCurve = GeomAdaptor_Curve;
-+#endif
-
- using namespace Part;
-
-diff --git a/src/Mod/Part/App/PartFeatures.cpp b/src/Mod/Part/App/PartFeatures.cpp
-index 2dc503bdf21..4d9e1fc0f99 100644
---- a/src/Mod/Part/App/PartFeatures.cpp
-+++ b/src/Mod/Part/App/PartFeatures.cpp
-@@ -25,9 +25,7 @@
- #ifndef _PreComp_
- # include <BRepFill.hxx>
- # include <BRepAdaptor_Curve.hxx>
--# include <BRepAdaptor_HCurve.hxx>
- # include <BRepAdaptor_CompCurve.hxx>
--# include <BRepAdaptor_HCompCurve.hxx>
- # include <BRepLib_MakeWire.hxx>
- # include <Geom_BSplineSurface.hxx>
- # include <TopoDS.hxx>
-@@ -43,7 +41,7 @@
- # include <TopExp_Explorer.hxx>
- # include <TopoDS.hxx>
- # include <Precision.hxx>
--# include <Adaptor3d_HCurve.hxx>
-+# include <memory>
- #endif
-
-
-@@ -170,22 +168,18 @@ App::DocumentObjectExecReturn *RuledSurface::execute(void)
-
- if (Orientation.getValue() == 0) {
- // Automatic
-- Handle(Adaptor3d_HCurve) a1;
-- Handle(Adaptor3d_HCurve) a2;
-+ std::unique_ptr<Adaptor3d_Curve> a1;
-+ std::unique_ptr<Adaptor3d_Curve> a2;
- if (!isWire) {
-- BRepAdaptor_Curve adapt1(TopoDS::Edge(S1));
-- BRepAdaptor_Curve adapt2(TopoDS::Edge(S2));
-- a1 = new BRepAdaptor_HCurve(adapt1);
-- a2 = new BRepAdaptor_HCurve(adapt2);
-+ a1 = std::make_unique<BRepAdaptor_Curve>(TopoDS::Edge(S1));
-+ a2 = std::make_unique<BRepAdaptor_Curve>(TopoDS::Edge(S2));
- }
- else {
-- BRepAdaptor_CompCurve adapt1(TopoDS::Wire(S1));
-- BRepAdaptor_CompCurve adapt2(TopoDS::Wire(S2));
-- a1 = new BRepAdaptor_HCompCurve(adapt1);
-- a2 = new BRepAdaptor_HCompCurve(adapt2);
-+ a1 = std::make_unique<BRepAdaptor_CompCurve>(TopoDS::Wire(S1));
-+ a2 = std::make_unique<BRepAdaptor_CompCurve>(TopoDS::Wire(S2));
- }
-
-- if (!a1.IsNull() && !a2.IsNull()) {
-+ if (a1 && a2) {
- // get end points of 1st curve
- Standard_Real first, last;
- first = a1->FirstParameter();
-diff --git a/src/Mod/Part/App/TopoShape.cpp b/src/Mod/Part/App/TopoShape.cpp
-index 05341de3d66..b7617a3943e 100644
---- a/src/Mod/Part/App/TopoShape.cpp
-+++ b/src/Mod/Part/App/TopoShape.cpp
-@@ -38,8 +38,6 @@
- # include <BRep_Tool.hxx>
- # include <BRepAdaptor_Curve.hxx>
- # include <BRepAdaptor_CompCurve.hxx>
--# include <BRepAdaptor_HCurve.hxx>
--# include <BRepAdaptor_HCompCurve.hxx>
- # include <BRepAdaptor_Surface.hxx>
- # include <BRepAlgoAPI_Common.hxx>
- # include <BRepAlgoAPI_Cut.hxx>
-@@ -186,6 +184,12 @@
- #if OCC_VERSION_HEX >= 0x070300
- # include <BRepAlgoAPI_Defeaturing.hxx>
- #endif
-+
-+#if OCC_VERSION_HEX < 0x070600
-+# include <BRepAdaptor_HCurve.hxx>
-+# include <BRepAdaptor_HCompCurve.hxx>
-+#endif
-+
- #endif // _PreComp_
-
- #include <boost/algorithm/string/predicate.hpp>
-@@ -2133,12 +2137,20 @@ TopoDS_Shape TopoShape::makeTube(double radius, double tol, int cont, int maxdeg
- if (this->_Shape.IsNull())
- Standard_Failure::Raise("Cannot sweep along empty spine");
-
-+#if OCC_VERSION_HEX >= 0x070600
-+ Handle(Adaptor3d_Curve) myPath;
-+ if (this->_Shape.ShapeType() == TopAbs_EDGE) {
-+ const TopoDS_Edge& path_edge = TopoDS::Edge(this->_Shape);
-+ myPath = new BRepAdaptor_Curve(path_edge);
-+ }
-+#else
- Handle(Adaptor3d_HCurve) myPath;
- if (this->_Shape.ShapeType() == TopAbs_EDGE) {
- const TopoDS_Edge& path_edge = TopoDS::Edge(this->_Shape);
- BRepAdaptor_Curve path_adapt(path_edge);
- myPath = new BRepAdaptor_HCurve(path_adapt);
- }
-+#endif
- //else if (this->_Shape.ShapeType() == TopAbs_WIRE) {
- // const TopoDS_Wire& path_wire = TopoDS::Wire(this->_Shape);
- // BRepAdaptor_CompCurve path_adapt(path_wire);
-@@ -3777,72 +3789,32 @@ void TopoShape::getLinesFromSubElement(const Data::Segment* element,
- for(TopExp_Explorer exp(shape,TopAbs_EDGE);exp.More();exp.Next()) {
-
- TopoDS_Edge aEdge = TopoDS::Edge(exp.Current());
-- TopLoc_Location aLoc;
-- Handle(Poly_Polygon3D) aPoly = BRep_Tool::Polygon3D(aEdge, aLoc);
-+ std::vector<gp_Pnt> points;
-
-- gp_Trsf myTransf;
-- Standard_Integer nbNodesInFace;
--
-- auto line_start = vertices.size();
--
-- // triangulation succeeded?
-- if (!aPoly.IsNull()) {
-- if (!aLoc.IsIdentity()) {
-- myTransf = aLoc.Transformation();
-- }
-- nbNodesInFace = aPoly->NbNodes();
--
-- const TColgp_Array1OfPnt& Nodes = aPoly->Nodes();
--
-- gp_Pnt V;
-- for (Standard_Integer i=0;i < nbNodesInFace;i++) {
-- V = Nodes(i+1);
-- V.Transform(myTransf);
-- vertices.emplace_back(V.X(),V.Y(),V.Z());
-- }
-- }
-- else {
-+ if (!Tools::getPolygon3D(aEdge, points)) {
- // the edge has not its own triangulation, but then a face the edge is attached to
- // must provide this triangulation
-
- // Look for one face in our map (it doesn't care which one we take)
- int index = edge2Face.FindIndex(aEdge);
-- if(!index)
-+ if (index < 1)
- continue;
- const auto &faces = edge2Face.FindFromIndex(index);
-- if(!faces.Extent())
-+ if (faces.Extent() == 0)
- continue;
- const TopoDS_Face& aFace = TopoDS::Face(faces.First());
-
-- // take the face's triangulation instead
-- Handle(Poly_Triangulation) aPolyTria = BRep_Tool::Triangulation(aFace,aLoc);
-- if (!aLoc.IsIdentity()) {
-- myTransf = aLoc.Transformation();
-- }
--
-- if (aPolyTria.IsNull()) break;
--
-- // this holds the indices of the edge's triangulation to the actual points
-- Handle(Poly_PolygonOnTriangulation) aPoly = BRep_Tool::PolygonOnTriangulation(aEdge, aPolyTria, aLoc);
-- if (aPoly.IsNull())
-- continue; // polygon does not exist
--
-- // getting size and create the array
-- nbNodesInFace = aPoly->NbNodes();
--
-- const TColStd_Array1OfInteger& indices = aPoly->Nodes();
-- const TColgp_Array1OfPnt& Nodes = aPolyTria->Nodes();
--
-- gp_Pnt V;
-- // go through the index array
-- for (Standard_Integer i=indices.Lower();i <= indices.Upper();i++) {
-- V = Nodes(indices(i));
-- V.Transform(myTransf);
-- vertices.emplace_back(V.X(),V.Y(),V.Z());
-- }
-+ if (!Part::Tools::getPolygonOnTriangulation(aEdge, aFace, points))
-+ continue;
- }
-
-- if(line_start+1 < vertices.size()) {
-+ auto line_start = vertices.size();
-+ vertices.reserve(vertices.size() + points.size());
-+ std::for_each(points.begin(), points.end(), [&vertices](const gp_Pnt& p) {
-+ vertices.push_back(Base::convertTo<Base::Vector3d>(p));
-+ });
-+
-+ if (line_start+1 < vertices.size()) {
- lines.emplace_back();
- lines.back().I1 = line_start;
- lines.back().I2 = vertices.size()-1;
-diff --git a/src/Mod/Part/App/TopoShapeFacePyImp.cpp b/src/Mod/Part/App/TopoShapeFacePyImp.cpp
-index ea6cd98bdf4..63e8bead74d 100644
---- a/src/Mod/Part/App/TopoShapeFacePyImp.cpp
-+++ b/src/Mod/Part/App/TopoShapeFacePyImp.cpp
-@@ -493,6 +493,15 @@ PyObject* TopoShapeFacePy::getUVNodes(PyObject *args)
- return Py::new_reference_to(list);
- }
-
-+#if OCC_VERSION_HEX >= 0x070600
-+ for (int i=1; i<=mesh->NbNodes(); i++) {
-+ gp_Pnt2d pt2d = mesh->UVNode(i);
-+ Py::Tuple uv(2);
-+ uv.setItem(0, Py::Float(pt2d.X()));
-+ uv.setItem(1, Py::Float(pt2d.Y()));
-+ list.append(uv);
-+ }
-+#else
- const TColgp_Array1OfPnt2d& aNodesUV = mesh->UVNodes();
- for (int i=aNodesUV.Lower(); i<=aNodesUV.Upper(); i++) {
- gp_Pnt2d pt2d = aNodesUV(i);
-@@ -501,6 +510,7 @@ PyObject* TopoShapeFacePy::getUVNodes(PyObject *args)
- uv.setItem(1, Py::Float(pt2d.Y()));
- list.append(uv);
- }
-+#endif
-
- return Py::new_reference_to(list);
- }
-diff --git a/src/Mod/Part/App/TopoShapeWirePyImp.cpp b/src/Mod/Part/App/TopoShapeWirePyImp.cpp
-index 95c1aff6814..a1f32d6d03c 100644
---- a/src/Mod/Part/App/TopoShapeWirePyImp.cpp
-+++ b/src/Mod/Part/App/TopoShapeWirePyImp.cpp
-@@ -344,9 +344,9 @@ PyObject* TopoShapeWirePy::approximate(PyObject *args, PyObject *kwds)
- return 0;
- try {
- BRepAdaptor_CompCurve adapt(TopoDS::Wire(getTopoShapePtr()->getShape()));
-- Handle(Adaptor3d_HCurve) hcurve = adapt.Trim(adapt.FirstParameter(),
-- adapt.LastParameter(),
-- tol2d);
-+ auto hcurve = adapt.Trim(adapt.FirstParameter(),
-+ adapt.LastParameter(),
-+ tol2d);
- Approx_Curve3d approx(hcurve, tol3d, GeomAbs_C0, maxseg, maxdeg);
- if (approx.IsDone()) {
- return new BSplineCurvePy(new GeomBSplineCurve(approx.Curve()));
-diff --git a/src/Mod/Part/Gui/TaskCheckGeometry.cpp b/src/Mod/Part/Gui/TaskCheckGeometry.cpp
-index 5de7c169205..aaef13d9d07 100644
---- a/src/Mod/Part/Gui/TaskCheckGeometry.cpp
-+++ b/src/Mod/Part/Gui/TaskCheckGeometry.cpp
-@@ -711,8 +711,10 @@ int TaskCheckGeometryResults::goBOPSingleCheck(const TopoDS_Shape& shapeIn, Resu
- #if OCC_VERSION_HEX >= 0x060900
- #if OCC_VERSION_HEX < 0x070500
- BOPCheck.SetProgressIndicator(theProgress);
--#else
-+#elif OCC_VERSION_HEX < 0x070600
- BOPCheck.SetProgressIndicator(theScope);
-+#else
-+ Q_UNUSED(theScope)
- #endif // 0x070500
- #else
- Q_UNUSED(theProgress);
-@@ -740,7 +742,7 @@ int TaskCheckGeometryResults::goBOPSingleCheck(const TopoDS_Shape& shapeIn, Resu
- Base::TimeInfo start_time;
- #endif
-
--BOPCheck.Perform();
-+ BOPCheck.Perform();
-
- #ifdef FC_DEBUG
- float bopAlgoTime = Base::TimeInfo::diffTimeF(start_time,Base::TimeInfo());
-diff --git a/src/Mod/Part/Gui/ViewProviderExt.cpp b/src/Mod/Part/Gui/ViewProviderExt.cpp
-index 77cefbe3e08..8a52f1701ba 100644
---- a/src/Mod/Part/Gui/ViewProviderExt.cpp
-+++ b/src/Mod/Part/Gui/ViewProviderExt.cpp
-@@ -1102,7 +1111,11 @@ void ViewProviderPartExt::updateVisual()
- }
-
- // get the 3 points of this triangle
-+#if OCC_VERSION_HEX < 0x070600
- gp_Pnt V1(Nodes(N1)), V2(Nodes(N2)), V3(Nodes(N3));
-+#else
-+ gp_Pnt V1(mesh->Node(N1)), V2(mesh->Node(N2)), V3(mesh->Node(N3));
-+#endif
-
- // get the 3 normals of this triangle
- gp_Vec NV1, NV2, NV3;
-@@ -1179,7 +1192,11 @@ void ViewProviderPartExt::updateVisual()
- // rare cases where some points are only referenced by the polygon
- // but not by any triangle. Thus, we must apply the coordinates to
- // make sure that everything is properly set.
-+#if OCC_VERSION_HEX < 0x070600
- gp_Pnt p(Nodes(nodeIndex));
-+#else
-+ gp_Pnt p(mesh->Node(nodeIndex));
-+#endif
- if (!identity)
- p.Transform(myTransf);
- verts[index].setValue((float)(p.X()),(float)(p.Y()),(float)(p.Z()));
-diff --git a/src/Mod/Path/App/AppPathPy.cpp b/src/Mod/Path/App/AppPathPy.cpp
-index 6e0c72d2f53..ce912b44749 100644
---- a/src/Mod/Path/App/AppPathPy.cpp
-+++ b/src/Mod/Path/App/AppPathPy.cpp
-@@ -49,10 +49,7 @@
- #include <TopExp_Explorer.hxx>
- #include <gp_Lin.hxx>
- #include <BRep_Tool.hxx>
--#include <BRepAdaptor_CompCurve.hxx>
--#include <BRepAdaptor_HCompCurve.hxx>
--#include <Approx_Curve3d.hxx>
--#include <BRepAdaptor_HCurve.hxx>
-+#include <BRepAdaptor_Curve.hxx>
-
- #include "CommandPy.h"
- #include "PathPy.h"
-diff --git a/src/Mod/TechDraw/App/Geometry.cpp b/src/Mod/TechDraw/App/Geometry.cpp
-index b6c36371377..59a92d7e51b 100644
---- a/src/Mod/TechDraw/App/Geometry.cpp
-+++ b/src/Mod/TechDraw/App/Geometry.cpp
-@@ -28,13 +28,13 @@
- #include <BRepAdaptor_Curve.hxx>
- #include <BRep_Tool.hxx>
- #include <BRepTools.hxx>
--#include <BRepAdaptor_HCurve.hxx>
- #include <BRepLib.hxx>
- #include <BRepBuilderAPI_MakeVertex.hxx>
- #include <BRepBuilderAPI_MakeEdge.hxx>
- #include <BRepBuilderAPI_MakeWire.hxx>
- #include <BRepBuilderAPI_MakeFace.hxx>
- #include <BRepExtrema_DistShapeShape.hxx>
-+#include <BRepLProp_CLProps.hxx>
- #include <Precision.hxx>
- #include <GCPnts_AbscissaPoint.hxx>
- #include <gce_MakeCirc.hxx>
-@@ -58,14 +58,16 @@
- #include <GeomLProp_CLProps.hxx>
- #include <GeomAPI_ProjectPointOnCurve.hxx>
- #include <Poly_Polygon3D.hxx>
-+#include <Standard_Version.hxx>
- #include <TopoDS.hxx>
- #include <TopoDS_Edge.hxx>
- #include <TopExp.hxx>
- #include <TopExp_Explorer.hxx>
- #include <TColgp_Array1OfPnt2d.hxx>
- #include <TColgp_Array1OfPnt.hxx>
--#include <BRepLProp_CLProps.hxx>
--
-+#if OCC_VERSION_HEX < 0x070600
-+#include <BRepAdaptor_HCurve.hxx>
-+#endif
- #include <cmath>
- #endif // #ifndef _PreComp_
-
-@@ -86,6 +88,10 @@
- using namespace TechDraw;
- using namespace std;
-
-+#if OCC_VERSION_HEX >= 0x070600
-+using BRepAdaptor_HCurve = BRepAdaptor_Curve;
-+#endif
-+
- #define GEOMETRYEDGE 0
- #define COSMETICEDGE 1
- #define CENTERLINE 2
-diff --git a/src/Mod/Part/Gui/ViewProviderExt.cpp b/src/Mod/Part/Gui/ViewProviderExt.cpp
-index 77cefbe3e0..8a52f1701b 100644
---- a/src/Mod/Part/Gui/ViewProviderExt.cpp
-+++ b/src/Mod/Part/Gui/ViewProviderExt.cpp
-@@ -1154,16 +1154,25 @@
-
-
- // cycling through the poly mesh
-+#if OCC_VERSION_HEX < 0x070600
- const Poly_Array1OfTriangle& Triangles = mesh->Triangles();
- const TColgp_Array1OfPnt& Nodes = mesh->Nodes();
- TColgp_Array1OfDir Normals (Nodes.Lower(), Nodes.Upper());
-+#else
-+ int numNodes = mesh->NbNodes();
-+ TColgp_Array1OfDir Normals (1, numNodes);
-+#endif
- if (NormalsFromUV)
- getNormals(actFace, mesh, Normals);
-
- for (int g=1;g<=nbTriInFace;g++) {
- // Get the triangle
- Standard_Integer N1,N2,N3;
-+#if OCC_VERSION_HEX < 0x070600
- Triangles(g).Get(N1,N2,N3);
-+#else
-+ mesh->Triangle(g).Get(N1,N2,N3);
-+#endif
-
- // change orientation of the triangle if the face is reversed
- if ( orient != TopAbs_FORWARD ) {
-From c9d17ebde2400f83d1e1e799bdb0a7f85a0da96d Mon Sep 17 00:00:00 2001
-From: wmayer <wmayer@users.sourceforge.net>
-Date: Fri, 8 Oct 2021 12:41:07 +0200
-Subject: [PATCH] Part: add convenience functions to retrieve triangulation of
- a face or edge
-
----
- src/Mod/Part/App/Tools.cpp | 170 ++++++++++++++++++++++++++++++++++++-
- src/Mod/Part/App/Tools.h | 31 ++++++-
- 2 files changed, 198 insertions(+), 3 deletions(-)
-
-diff --git a/src/Mod/Part/App/Tools.cpp b/src/Mod/Part/App/Tools.cpp
-index b02c0560453..c0e59445089 100644
---- a/src/Mod/Part/App/Tools.cpp
-+++ b/src/Mod/Part/App/Tools.cpp
-@@ -25,25 +25,31 @@
- # include <cassert>
- # include <gp_Pln.hxx>
- # include <gp_Lin.hxx>
--# include <Adaptor3d_HCurveOnSurface.hxx>
-+# include <BRep_Tool.hxx>
- # include <Geom_BSplineSurface.hxx>
- # include <Geom_Plane.hxx>
--# include <GeomAdaptor_HCurve.hxx>
- # include <GeomAPI_IntSS.hxx>
- # include <Geom_Line.hxx>
- # include <Geom_Point.hxx>
-+# include <GeomAdaptor_Curve.hxx>
- # include <GeomPlate_BuildPlateSurface.hxx>
- # include <GeomPlate_CurveConstraint.hxx>
- # include <GeomPlate_MakeApprox.hxx>
- # include <GeomPlate_PlateG0Criterion.hxx>
- # include <GeomPlate_PointConstraint.hxx>
-+# include <Poly_Triangulation.hxx>
- # include <Precision.hxx>
- # include <Standard_Mutex.hxx>
- # include <Standard_TypeMismatch.hxx>
-+# include <Standard_Version.hxx>
- # include <TColStd_ListOfTransient.hxx>
- # include <TColStd_ListIteratorOfListOfTransient.hxx>
- # include <TColgp_SequenceOfXY.hxx>
- # include <TColgp_SequenceOfXYZ.hxx>
-+# if OCC_VERSION_HEX < 0x070600
-+# include <Adaptor3d_HCurveOnSurface.hxx>
-+# include <GeomAdaptor_HCurve.hxx>
-+# endif
- #endif
-
- #include <Base/Vector3D.h>
-@@ -138,6 +144,20 @@ Part::Tools::makeSurface(const TColStd_ListOfTransient &theBoundaries,
- assert (0);
- Standard_ConstructionError::Raise ("Tools::makeSurface()");
- }
-+#if OCC_VERSION_HEX >= 0x070600
-+ else if (aCur->IsKind (STANDARD_TYPE (Adaptor3d_CurveOnSurface))) {
-+ //G1 constraint
-+ Handle(Adaptor3d_CurveOnSurface) aHCOS (Handle(Adaptor3d_CurveOnSurface)::DownCast (aCur));
-+ Handle (GeomPlate_CurveConstraint) aConst = new GeomPlate_CurveConstraint (aHCOS, 1 /*GeomAbs_G1*/,aNbPnts, aTol3d, anAngTol, aCurvTol);
-+ aPlateBuilder.Add (aConst);
-+ }
-+ else if (aCur->IsKind (STANDARD_TYPE (GeomAdaptor_Curve))) {
-+ //G0 constraint
-+ Handle(GeomAdaptor_Curve) aHC (Handle(GeomAdaptor_Curve)::DownCast (aCur));
-+ Handle (GeomPlate_CurveConstraint) aConst = new GeomPlate_CurveConstraint (aHC, 0 /*GeomAbs_G0*/, aNbPnts, aTol3d);
-+ aPlateBuilder.Add (aConst);
-+ }
-+#else
- else if (aCur->IsKind (STANDARD_TYPE (Adaptor3d_HCurveOnSurface))) {
- //G1 constraint
- Handle(Adaptor3d_HCurveOnSurface) aHCOS (Handle(Adaptor3d_HCurveOnSurface)::DownCast (aCur));
-@@ -150,6 +170,7 @@ Part::Tools::makeSurface(const TColStd_ListOfTransient &theBoundaries,
- Handle (GeomPlate_CurveConstraint) aConst = new GeomPlate_CurveConstraint (aHC, 0 /*GeomAbs_G0*/, aNbPnts, aTol3d);
- aPlateBuilder.Add (aConst);
- }
-+#endif
- else if (aCur->IsKind (STANDARD_TYPE (Geom_Point))) {
- //Point constraint
- Handle(Geom_Point) aGP (Handle(Geom_Point)::DownCast (aCur));
-@@ -190,3 +211,148 @@ Part::Tools::makeSurface(const TColStd_ListOfTransient &theBoundaries,
-
- return aRes;
- }
-+
-+bool Part::Tools::getTriangulation(const TopoDS_Face& face, std::vector<gp_Pnt>& points, std::vector<Poly_Triangle>& facets)
-+{
-+ TopLoc_Location loc;
-+ Handle(Poly_Triangulation) hTria = BRep_Tool::Triangulation(face, loc);
-+ if (hTria.IsNull())
-+ return false;
-+
-+ // getting the transformation of the face
-+ gp_Trsf transf;
-+ bool identity = true;
-+ if (!loc.IsIdentity()) {
-+ identity = false;
-+ transf = loc.Transformation();
-+ }
-+
-+ // check orientation
-+ TopAbs_Orientation orient = face.Orientation();
-+
-+ Standard_Integer nbNodes = hTria->NbNodes();
-+ Standard_Integer nbTriangles = hTria->NbTriangles();
-+#if OCC_VERSION_HEX < 0x070600
-+ const TColgp_Array1OfPnt& nodes = hTria->Nodes();
-+ const Poly_Array1OfTriangle& triangles = hTria->Triangles();
-+#endif
-+
-+ points.reserve(nbNodes);
-+ facets.reserve(nbTriangles);
-+
-+ // cycling through the poly mesh
-+ //
-+ for (int i = 1; i <= nbNodes; i++) {
-+#if OCC_VERSION_HEX < 0x070600
-+ gp_Pnt p = nodes(i);
-+#else
-+ gp_Pnt p = hTria->Node(i);
-+#endif
-+
-+ // transform the vertices to the location of the face
-+ if (!identity) {
-+ p.Transform(transf);
-+ }
-+
-+ points.push_back(p);
-+ }
-+
-+ for (int i = 1; i <= nbTriangles; i++) {
-+ // Get the triangle
-+ Standard_Integer n1,n2,n3;
-+#if OCC_VERSION_HEX < 0x070600
-+ triangles(i).Get(n1, n2, n3);
-+#else
-+ hTria->Triangle(i).Get(n1, n2, n3);
-+#endif
-+ --n1; --n2; --n3;
-+
-+ // change orientation of the triangles
-+ if (orient != TopAbs_FORWARD) {
-+ std::swap(n1, n2);
-+ }
-+
-+ facets.emplace_back(n1, n2, n3);
-+ }
-+
-+ return true;
-+}
-+
-+bool Part::Tools::getPolygonOnTriangulation(const TopoDS_Edge& edge, const TopoDS_Face& face, std::vector<gp_Pnt>& points)
-+{
-+ TopLoc_Location loc;
-+ Handle(Poly_Triangulation) hTria = BRep_Tool::Triangulation(face, loc);
-+ if (hTria.IsNull())
-+ return false;
-+
-+ // this holds the indices of the edge's triangulation to the actual points
-+ Handle(Poly_PolygonOnTriangulation) hPoly = BRep_Tool::PolygonOnTriangulation(edge, hTria, loc);
-+ if (hPoly.IsNull())
-+ return false;
-+
-+ // getting the transformation of the edge
-+ gp_Trsf transf;
-+ bool identity = true;
-+ if (!loc.IsIdentity()) {
-+ identity = false;
-+ transf = loc.Transformation();
-+ }
-+
-+ // getting size and create the array
-+ Standard_Integer nbNodes = hPoly->NbNodes();
-+ points.reserve(nbNodes);
-+ const TColStd_Array1OfInteger& indices = hPoly->Nodes();
-+#if OCC_VERSION_HEX < 0x070600
-+ const TColgp_Array1OfPnt& Nodes = hTria->Nodes();
-+#endif
-+
-+ // go through the index array
-+ for (Standard_Integer i = indices.Lower(); i <= indices.Upper(); i++) {
-+#if OCC_VERSION_HEX < 0x070600
-+ gp_Pnt p = Nodes(indices(i));
-+#else
-+ gp_Pnt p = hTria->Node(indices(i));
-+#endif
-+ if (!identity) {
-+ p.Transform(transf);
-+ }
-+
-+ points.push_back(p);
-+ }
-+
-+ return true;
-+}
-+
-+bool Part::Tools::getPolygon3D(const TopoDS_Edge& edge, std::vector<gp_Pnt>& points)
-+{
-+ TopLoc_Location loc;
-+ Handle(Poly_Polygon3D) hPoly = BRep_Tool::Polygon3D(edge, loc);
-+ if (hPoly.IsNull())
-+ return false;
-+
-+ // getting the transformation of the edge
-+ gp_Trsf transf;
-+ bool identity = true;
-+ if (!loc.IsIdentity()) {
-+ identity = false;
-+ transf = loc.Transformation();
-+ }
-+
-+ // getting size and create the array
-+ Standard_Integer nbNodes = hPoly->NbNodes();
-+ points.reserve(nbNodes);
-+ const TColgp_Array1OfPnt& nodes = hPoly->Nodes();
-+
-+ for (int i = 1; i <= nbNodes; i++) {
-+ gp_Pnt p = nodes(i);
-+
-+ // transform the vertices to the location of the face
-+ if (!identity) {
-+ p.Transform(transf);
-+ }
-+
-+ points.push_back(p);
-+ }
-+
-+ return true;
-+}
-diff --git a/src/Mod/Part/App/Tools.h b/src/Mod/Part/App/Tools.h
-index a936c352c65..19ecf937fda 100644
---- a/src/Mod/Part/App/Tools.h
-+++ b/src/Mod/Part/App/Tools.h
-@@ -30,7 +30,11 @@
- #include <gp_Dir.hxx>
- #include <gp_XYZ.hxx>
- #include <Geom_Surface.hxx>
-+#include <Poly_Triangle.hxx>
- #include <TColStd_ListOfTransient.hxx>
-+#include <TopoDS_Edge.hxx>
-+#include <TopoDS_Face.hxx>
-+#include <vector>
-
- class gp_Lin;
- class gp_Pln;
-@@ -104,7 +108,32 @@ class PartExport Tools
- const Standard_Integer theNbPnts,
- const Standard_Integer theNbIter,
- const Standard_Integer theMaxDeg);
--
-+ /*!
-+ * @brief getTriangulation
-+ * The indexes of the triangles are adjusted to the points vector.
-+ * @param face
-+ * @param points
-+ * @param facets
-+ * @return true if a triangulation exists or false otherwise
-+ */
-+ static bool getTriangulation(const TopoDS_Face& face, std::vector<gp_Pnt>& points, std::vector<Poly_Triangle>& facets);
-+ /*!
-+ * \brief getPolygonOnTriangulation
-+ * Get the polygon of edge.
-+ * \note \a edge must belong to face.
-+ * \param edge
-+ * \param face
-+ * \param points
-+ * \return true if a triangulation exists or false otherwise
-+ */
-+ static bool getPolygonOnTriangulation(const TopoDS_Edge& edge, const TopoDS_Face& face, std::vector<gp_Pnt>& points);
-+ /*!
-+ * \brief getPolygon3D
-+ * \param edge
-+ * \param points
-+ * \return true if a polygon exists or false otherwise
-+ */
-+ static bool getPolygon3D(const TopoDS_Edge& edge, std::vector<gp_Pnt>& points);
- };
-
- } //namespace Part
-From 442c8d52a1989da8f17d60fafea5b81d79cbf0ab Mon Sep 17 00:00:00 2001
-From: wmayer <wmayer@users.sourceforge.net>
-Date: Fri, 8 Oct 2021 15:32:19 +0200
-Subject: [PATCH] Part: in TopoShape::getDomains use functions of Tools class
-
----
- src/Mod/Part/App/TopoShape.cpp | 56 +++++++++++++++-------------------
- 1 file changed, 25 insertions(+), 31 deletions(-)
-
-diff --git a/src/Mod/Part/App/TopoShape.cpp b/src/Mod/Part/App/TopoShape.cpp
-index 09cfab45bb0..05341de3d66 100644
---- a/src/Mod/Part/App/TopoShape.cpp
-+++ b/src/Mod/Part/App/TopoShape.cpp
-@@ -3360,46 +3360,40 @@ void TopoShape::getDomains(std::vector<Domain>& domains) const
- for (TopExp_Explorer xp(this->_Shape, TopAbs_FACE); xp.More(); xp.Next()) {
- TopoDS_Face face = TopoDS::Face(xp.Current());
-
-- TopLoc_Location loc;
-- Handle(Poly_Triangulation) theTriangulation = BRep_Tool::Triangulation(face, loc);
-- if (theTriangulation.IsNull()) {
-+ std::vector<gp_Pnt> points;
-+ std::vector<Poly_Triangle> facets;
-+ if (!Tools::getTriangulation(face, points, facets)) {
- // For a face that cannot be meshed append an empty domain.
- // It's important for some algorithms (e.g. color mapping) that the numbers of
- // faces and domains match
- Domain domain;
- domains.push_back(domain);
-- continue;
- }
-+ else {
-+ Domain domain;
-+ // copy the points
-+ domain.points.reserve(points.size());
-+ for (const auto& it : points) {
-+ Standard_Real X, Y, Z;
-+ it.Coord (X, Y, Z);
-+ domain.points.emplace_back(X, Y, Z);
-+ }
-
-- Domain domain;
-- // copy the points
-- const TColgp_Array1OfPnt& points = theTriangulation->Nodes();
-- domain.points.reserve(points.Length());
-- for (int i = 1; i <= points.Length(); i++) {
-- gp_Pnt p = points(i);
-- p.Transform(loc.Transformation());
-- Standard_Real X, Y, Z;
-- p.Coord (X, Y, Z);
-- domain.points.emplace_back(X, Y, Z);
-- }
-+ // copy the triangles
-+ domain.facets.reserve(facets.size());
-+ for (const auto& it : facets) {
-+ Standard_Integer N1, N2, N3;
-+ it.Get(N1, N2, N3);
-+
-+ Facet tria;
-+ tria.I1 = N1;
-+ tria.I2 = N2;
-+ tria.I3 = N3;
-+ domain.facets.push_back(tria);
-+ }
-
-- // copy the triangles
-- const TopAbs_Orientation anOrientation = face.Orientation();
-- bool flip = (anOrientation == TopAbs_REVERSED);
-- const Poly_Array1OfTriangle& faces = theTriangulation->Triangles();
-- domain.facets.reserve(faces.Length());
-- for (int i = 1; i <= faces.Length(); i++) {
-- Standard_Integer N1, N2, N3;
-- faces(i).Get(N1, N2, N3);
--
-- Facet tria;
-- tria.I1 = N1-1; tria.I2 = N2-1; tria.I3 = N3-1;
-- if (flip)
-- std::swap(tria.I1, tria.I2);
-- domain.facets.push_back(tria);
-+ domains.push_back(domain);
- }
--
-- domains.push_back(domain);
- }
- }
-
-From 8e6dab209ee59be61d83a0ff249283a8809fa917 Mon Sep 17 00:00:00 2001
-From: wmayer <wmayer@users.sourceforge.net>
-Date: Fri, 8 Oct 2021 12:43:06 +0200
-Subject: [PATCH] Part: change TopoShape::exportFaceSet and
- TopoShape::exportLineSet to use the functions of the Tools class
-
----
- src/Mod/Part/App/TopoShape.cpp | 141 +++++++--------------------------
- 1 file changed, 29 insertions(+), 112 deletions(-)
-
-diff --git a/src/Mod/Part/App/TopoShape.cpp b/src/Mod/Part/App/TopoShape.cpp
-index 614661594d0..09cfab45bb0 100644
---- a/src/Mod/Part/App/TopoShape.cpp
-+++ b/src/Mod/Part/App/TopoShape.cpp
-@@ -1097,65 +1097,27 @@ void TopoShape::exportFaceSet(double dev, double ca,
- for (ex.Init(this->_Shape, TopAbs_FACE); ex.More(); ex.Next(), index++) {
- // get the shape and mesh it
- const TopoDS_Face& aFace = TopoDS::Face(ex.Current());
-- Standard_Integer nbNodesInFace,nbTriInFace;
-+ std::vector<gp_Pnt> points;
-+ std::vector<Poly_Triangle> facets;
-+ if (!Tools::getTriangulation(aFace, points, facets))
-+ continue;
-+
- std::vector<Base::Vector3f> vertices;
- std::vector<int> indices;
-+ vertices.resize(points.size());
-+ indices.resize(4 * facets.size());
-
-- // doing the meshing and checking the result
-- TopLoc_Location aLoc;
-- Handle(Poly_Triangulation) aPoly = BRep_Tool::Triangulation(aFace,aLoc);
-- if (aPoly.IsNull()) continue;
--
-- // getting the transformation of the shape/face
-- gp_Trsf myTransf;
-- Standard_Boolean identity = true;
-- if (!aLoc.IsIdentity()) {
-- identity = false;
-- myTransf = aLoc.Transformation();
-+ for (std::size_t i = 0; i < points.size(); i++) {
-+ vertices[i] = Base::convertTo<Base::Vector3f>(points[i]);
- }
-
-- // getting size and create the array
-- nbNodesInFace = aPoly->NbNodes();
-- nbTriInFace = aPoly->NbTriangles();
-- vertices.resize(nbNodesInFace);
-- indices.resize(4*nbTriInFace);
--
-- // check orientation
-- TopAbs_Orientation orient = aFace.Orientation();
--
-- // cycling through the poly mesh
-- const Poly_Array1OfTriangle& Triangles = aPoly->Triangles();
-- const TColgp_Array1OfPnt& Nodes = aPoly->Nodes();
-- for (int i=1;i<=nbTriInFace;i++) {
-- // Get the triangle
-- Standard_Integer N1,N2,N3;
-- Triangles(i).Get(N1,N2,N3);
--
-- // change orientation of the triangles
-- if (orient != TopAbs_FORWARD) {
-- Standard_Integer tmp = N1;
-- N1 = N2;
-- N2 = tmp;
-- }
--
-- gp_Pnt V1 = Nodes(N1);
-- gp_Pnt V2 = Nodes(N2);
-- gp_Pnt V3 = Nodes(N3);
--
-- // transform the vertices to the place of the face
-- if (!identity) {
-- V1.Transform(myTransf);
-- V2.Transform(myTransf);
-- V3.Transform(myTransf);
-- }
--
-- vertices[N1-1].Set((float)(V1.X()),(float)(V1.Y()),(float)(V1.Z()));
-- vertices[N2-1].Set((float)(V2.X()),(float)(V2.Y()),(float)(V2.Z()));
-- vertices[N3-1].Set((float)(V3.X()),(float)(V3.Y()),(float)(V3.Z()));
--
-- int j = i - 1;
-- N1--; N2--; N3--;
-- indices[4*j] = N1; indices[4*j+1] = N2; indices[4*j+2] = N3; indices[4*j+3] = -1;
-+ for (std::size_t i = 0; i < facets.size(); i++) {
-+ Standard_Integer n1,n2,n3;
-+ facets[i].Get(n1, n2, n3);
-+ indices[4 * i ] = n1;
-+ indices[4 * i + 1] = n2;
-+ indices[4 * i + 2] = n3;
-+ indices[4 * i + 3] = -1;
- }
-
- builder.beginSeparator();
-@@ -1170,7 +1132,7 @@ void TopoShape::exportFaceSet(double dev, double ca,
- builder.endPoints();
- builder.addIndexedFaceSet(indices);
- builder.endSeparator();
-- } // end of face loop
-+ }
- }
-
- void TopoShape::exportLineSet(std::ostream& str) const
-@@ -1183,72 +1145,27 @@ void TopoShape::exportLineSet(std::ostream& str) const
- // build up map edge->face
- TopTools_IndexedDataMapOfShapeListOfShape edge2Face;
- TopExp::MapShapesAndAncestors(this->_Shape, TopAbs_EDGE, TopAbs_FACE, edge2Face);
-- for (int i=0; i<M.Extent(); i++)
-- {
-- const TopoDS_Edge& aEdge = TopoDS::Edge(M(i+1));
-- gp_Trsf myTransf;
-- TopLoc_Location aLoc;
--
-- // try to triangulate the edge
-- Handle(Poly_Polygon3D) aPoly = BRep_Tool::Polygon3D(aEdge, aLoc);
--
-- std::vector<Base::Vector3f> vertices;
-- Standard_Integer nbNodesInFace;
--
-- // triangulation succeeded?
-- if (!aPoly.IsNull()) {
-- if (!aLoc.IsIdentity()) {
-- myTransf = aLoc.Transformation();
-- }
-- nbNodesInFace = aPoly->NbNodes();
-- vertices.resize(nbNodesInFace);
-
-- const TColgp_Array1OfPnt& Nodes = aPoly->Nodes();
-+ for (int i=0; i<M.Extent(); i++) {
-+ const TopoDS_Edge& aEdge = TopoDS::Edge(M(i+1));
-+ std::vector<gp_Pnt> points;
-
-- gp_Pnt V;
-- for (Standard_Integer i=0;i < nbNodesInFace;i++) {
-- V = Nodes(i+1);
-- V.Transform(myTransf);
-- vertices[i].Set((float)(V.X()),(float)(V.Y()),(float)(V.Z()));
-- }
-- }
-- else {
-+ if (!Tools::getPolygon3D(aEdge, points)) {
- // the edge has not its own triangulation, but then a face the edge is attached to
- // must provide this triangulation
-
- // Look for one face in our map (it doesn't care which one we take)
- const TopoDS_Face& aFace = TopoDS::Face(edge2Face.FindFromKey(aEdge).First());
--
-- // take the face's triangulation instead
-- Handle(Poly_Triangulation) aPolyTria = BRep_Tool::Triangulation(aFace,aLoc);
-- if (!aLoc.IsIdentity()) {
-- myTransf = aLoc.Transformation();
-- }
--
-- if (aPolyTria.IsNull()) break;
--
-- // this holds the indices of the edge's triangulation to the actual points
-- Handle(Poly_PolygonOnTriangulation) aPoly = BRep_Tool::PolygonOnTriangulation(aEdge, aPolyTria, aLoc);
-- if (aPoly.IsNull())
-- continue; // polygon does not exist
--
-- // getting size and create the array
-- nbNodesInFace = aPoly->NbNodes();
-- vertices.resize(nbNodesInFace);
--
-- const TColStd_Array1OfInteger& indices = aPoly->Nodes();
-- const TColgp_Array1OfPnt& Nodes = aPolyTria->Nodes();
--
-- gp_Pnt V;
-- int pos = 0;
-- // go through the index array
-- for (Standard_Integer i=indices.Lower();i <= indices.Upper();i++) {
-- V = Nodes(indices(i));
-- V.Transform(myTransf);
-- vertices[pos++].Set((float)(V.X()),(float)(V.Y()),(float)(V.Z()));
-- }
-+ if (!Tools::getPolygonOnTriangulation(aEdge, aFace, points))
-+ continue;
- }
-
-+ std::vector<Base::Vector3f> vertices;
-+ vertices.reserve(points.size());
-+ std::for_each(points.begin(), points.end(), [&vertices](const gp_Pnt& p) {
-+ vertices.push_back(Base::convertTo<Base::Vector3f>(p));
-+ });
-+
- builder.addLineSet(vertices, 2, 0, 0, 0);
- }
- }
-From 0f3b5d275070477b7cd2bbfa2dc930135448fb0c Mon Sep 17 00:00:00 2001
-From: wmayer <wmayer@users.sourceforge.net>
-Date: Fri, 8 Oct 2021 15:29:36 +0200
-Subject: [PATCH] Raytracing: in PovTools/LuxTools use functions of Tools class
-
----
- src/Mod/Raytracing/App/LuxTools.cpp | 34 ++---
- src/Mod/Raytracing/App/PovTools.cpp | 220 ++++++----------------------
- src/Mod/Raytracing/App/PovTools.h | 3 -
- 3 files changed, 62 insertions(+), 195 deletions(-)
-
-diff --git a/src/Mod/Raytracing/App/LuxTools.cpp b/src/Mod/Raytracing/App/LuxTools.cpp
-index 881317f137b..86db2ee16f6 100644
---- a/src/Mod/Raytracing/App/LuxTools.cpp
-+++ b/src/Mod/Raytracing/App/LuxTools.cpp
-@@ -44,6 +44,7 @@
-
- #include "PovTools.h"
- #include "LuxTools.h"
-+#include <Mod/Part/App/Tools.h>
-
- using Base::Console;
-
-@@ -95,35 +96,34 @@ void LuxTools::writeShape(std::ostream &out, const char *PartName, const TopoDS_
- // get the shape and mesh it
- const TopoDS_Face& aFace = TopoDS::Face(ex.Current());
-
-- // this block mesh the face and transfers it in a C array of vertices and face indexes
-- Standard_Integer nbNodesInFace,nbTriInFace;
-- gp_Vec* vertices=0;
-- gp_Vec* vertexnormals=0;
-- long* cons=0;
-+ std::vector<gp_Pnt> points;
-+ std::vector<gp_Vec> vertexnormals;
-+ std::vector<Poly_Triangle> facets;
-+ if (!Part::Tools::getTriangulation(aFace, points, facets)) {
-+ break;
-+ }
-
-- PovTools::transferToArray(aFace,&vertices,&vertexnormals,&cons,nbNodesInFace,nbTriInFace);
-+ Part::Tools::getPointNormals(points, facets, vertexnormals);
-+ Part::Tools::getPointNormals(points, aFace, vertexnormals);
-
-- if (!vertices) break;
- // writing vertices
-- for (int i=0; i < nbNodesInFace; i++) {
-- P << vertices[i].X() << " " << vertices[i].Y() << " " << vertices[i].Z() << " ";
-+ for (std::size_t i=0; i < points.size(); i++) {
-+ P << points[i].X() << " " << points[i].Y() << " " << points[i].Z() << " ";
- }
-
- // writing per vertex normals
-- for (int j=0; j < nbNodesInFace; j++) {
-+ for (std::size_t j=0; j < vertexnormals.size(); j++) {
- N << vertexnormals[j].X() << " " << vertexnormals[j].Y() << " " << vertexnormals[j].Z() << " ";
- }
-
- // writing triangle indices
-- for (int k=0; k < nbTriInFace; k++) {
-- triindices << cons[3*k]+vi << " " << cons[3*k+2]+vi << " " << cons[3*k+1]+vi << " ";
-+ for (std::size_t k=0; k < facets.size(); k++) {
-+ Standard_Integer n1, n2, n3;
-+ facets[k].Get(n1, n2, n3);
-+ triindices << n1 + vi << " " << n3 + vi << " " << n2 + vi << " ";
- }
-
-- vi = vi + nbNodesInFace;
--
-- delete [] vertexnormals;
-- delete [] vertices;
-- delete [] cons;
-+ vi = vi + points.size();
-
- seq.next();
-
-diff --git a/src/Mod/Raytracing/App/PovTools.cpp b/src/Mod/Raytracing/App/PovTools.cpp
-index e2d7c1f4d7b..049308c8b9d 100644
---- a/src/Mod/Raytracing/App/PovTools.cpp
-+++ b/src/Mod/Raytracing/App/PovTools.cpp
-@@ -41,6 +41,7 @@
-
-
- #include "PovTools.h"
-+#include <Mod/Part/App/Tools.h>
-
- using Base::Console;
-
-@@ -242,53 +243,53 @@ void PovTools::writeShape(std::ostream &out, const char *PartName,
- // get the shape and mesh it
- const TopoDS_Face& aFace = TopoDS::Face(ex.Current());
-
-- // this block mesh the face and transfers it in a C array of vertices and face indexes
-- Standard_Integer nbNodesInFace,nbTriInFace;
-- gp_Vec* vertices=0;
-- gp_Vec* vertexnormals=0;
-- long* cons=0;
--
-- transferToArray(aFace,&vertices,&vertexnormals,&cons,nbNodesInFace,nbTriInFace);
-+ std::vector<gp_Pnt> points;
-+ std::vector<gp_Vec> vertexnormals;
-+ std::vector<Poly_Triangle> facets;
-+ if (!Part::Tools::getTriangulation(aFace, points, facets)) {
-+ break;
-+ }
-+ Part::Tools::getPointNormals(points, facets, vertexnormals);
-+ Part::Tools::getPointNormals(points, aFace, vertexnormals);
-
-- if (!vertices) break;
- // writing per face header
- out << "// face number" << l << " +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++" << endl
- << "#declare " << PartName << l << " = mesh2{" << endl
- << " vertex_vectors {" << endl
-- << " " << nbNodesInFace << "," << endl;
-+ << " " << points.size() << "," << endl;
- // writing vertices
-- for (int i=0; i < nbNodesInFace; i++) {
-- out << " <" << vertices[i].X() << ","
-- << vertices[i].Z() << ","
-- << vertices[i].Y() << ">,"
-- << endl;
-+ for (std::size_t i=0; i < points.size(); i++) {
-+ out << " <"
-+ << points[i].X() << ","
-+ << points[i].Z() << ","
-+ << points[i].Y() << ">,"
-+ << endl;
- }
- out << " }" << endl
- // writing per vertex normals
- << " normal_vectors {" << endl
-- << " " << nbNodesInFace << "," << endl;
-- for (int j=0; j < nbNodesInFace; j++) {
-- out << " <" << vertexnormals[j].X() << ","
-- << vertexnormals[j].Z() << ","
-- << vertexnormals[j].Y() << ">,"
-- << endl;
-+ << " " << vertexnormals.size() << "," << endl;
-+ for (std::size_t j=0; j < vertexnormals.size(); j++) {
-+ out << " <"
-+ << vertexnormals[j].X() << ","
-+ << vertexnormals[j].Z() << ","
-+ << vertexnormals[j].Y() << ">,"
-+ << endl;
- }
-
- out << " }" << endl
- // writing triangle indices
- << " face_indices {" << endl
-- << " " << nbTriInFace << "," << endl;
-- for (int k=0; k < nbTriInFace; k++) {
-- out << " <" << cons[3*k] << ","<< cons[3*k+2] << ","<< cons[3*k+1] << ">," << endl;
-+ << " " << facets.size() << "," << endl;
-+ for (std::size_t k=0; k < facets.size(); k++) {
-+ Standard_Integer n1, n2, n3;
-+ facets[k].Get(n1, n2, n3);
-+ out << " <" << n1 << ","<< n3 << "," << n2 << ">," << endl;
- }
- // end of face
- out << " }" << endl
- << "} // end of Face"<< l << endl << endl;
-
-- delete [] vertexnormals;
-- delete [] vertices;
-- delete [] cons;
--
- seq.next();
-
- } // end of face loop
-@@ -323,167 +324,36 @@ void PovTools::writeShapeCSV(const char *FileName,
- Base::SequencerLauncher seq("Writing file", l);
-
- // write the file
-- l = 1;
-- for (ex.Init(Shape, TopAbs_FACE); ex.More(); ex.Next(),l++) {
-+ for (ex.Init(Shape, TopAbs_FACE); ex.More(); ex.Next()) {
-
- // get the shape and mesh it
- const TopoDS_Face& aFace = TopoDS::Face(ex.Current());
-
-- // this block mesh the face and transfers it in a C array of vertices and face indexes
-- Standard_Integer nbNodesInFace,nbTriInFace;
-- gp_Vec* vertices=0;
-- gp_Vec* vertexnormals=0;
-- long* cons=0;
-+ std::vector<gp_Pnt> points;
-+ std::vector<gp_Vec> vertexnormals;
-+ std::vector<Poly_Triangle> facets;
-+ if (!Part::Tools::getTriangulation(aFace, points, facets)) {
-+ break;
-+ }
-
-- transferToArray(aFace,&vertices,&vertexnormals,&cons,nbNodesInFace,nbTriInFace);
-+ Part::Tools::getPointNormals(points, facets, vertexnormals);
-+ Part::Tools::getPointNormals(points, aFace, vertexnormals);
-
-- if (!vertices) break;
- // writing per face header
- // writing vertices
-- for (int i=0; i < nbNodesInFace; i++) {
-- fout << vertices[i].X() << cSeperator
-- << vertices[i].Z() << cSeperator
-- << vertices[i].Y() << cSeperator
-- << vertexnormals[i].X() * fLength <<cSeperator
-- << vertexnormals[i].Z() * fLength <<cSeperator
-- << vertexnormals[i].Y() * fLength <<cSeperator
-- << endl;
-+ for (std::size_t i=0; i < points.size(); i++) {
-+ fout << points[i].X() << cSeperator
-+ << points[i].Z() << cSeperator
-+ << points[i].Y() << cSeperator
-+ << vertexnormals[i].X() * fLength << cSeperator
-+ << vertexnormals[i].Z() * fLength << cSeperator
-+ << vertexnormals[i].Y() * fLength << cSeperator
-+ << endl;
- }
-
-- delete [] vertexnormals;
-- delete [] vertices;
-- delete [] cons;
--
- seq.next();
-
- } // end of face loop
-
- fout.close();
- }
--
--void PovTools::transferToArray(const TopoDS_Face& aFace,gp_Vec** vertices,gp_Vec** vertexnormals, long** cons,int &nbNodesInFace,int &nbTriInFace )
--{
-- TopLoc_Location aLoc;
--
-- // doing the meshing and checking the result
-- //BRepMesh_IncrementalMesh MESH(aFace,fDeflection);
-- Handle(Poly_Triangulation) aPoly = BRep_Tool::Triangulation(aFace,aLoc);
-- if (aPoly.IsNull()) {
-- Base::Console().Log("Empty face triangulation\n");
-- nbNodesInFace =0;
-- nbTriInFace = 0;
-- vertices = 0l;
-- cons = 0l;
-- return;
-- }
--
-- // getting the transformation of the shape/face
-- gp_Trsf myTransf;
-- Standard_Boolean identity = true;
-- if (!aLoc.IsIdentity()) {
-- identity = false;
-- myTransf = aLoc.Transformation();
-- }
--
-- Standard_Integer i;
-- // getting size and create the array
-- nbNodesInFace = aPoly->NbNodes();
-- nbTriInFace = aPoly->NbTriangles();
-- *vertices = new gp_Vec[nbNodesInFace];
-- *vertexnormals = new gp_Vec[nbNodesInFace];
-- for (i=0; i < nbNodesInFace; i++) {
-- (*vertexnormals)[i]= gp_Vec(0.0,0.0,0.0);
-- }
--
-- *cons = new long[3*(nbTriInFace)+1];
--
-- // check orientation
-- TopAbs_Orientation orient = aFace.Orientation();
--
-- // cycling through the poly mesh
-- const Poly_Array1OfTriangle& Triangles = aPoly->Triangles();
-- const TColgp_Array1OfPnt& Nodes = aPoly->Nodes();
-- for (i=1; i<=nbTriInFace; i++) {
-- // Get the triangle
-- Standard_Integer N1,N2,N3;
-- Triangles(i).Get(N1,N2,N3);
--
-- // change orientation of the triangles
-- if ( orient != TopAbs_FORWARD )
-- {
-- Standard_Integer tmp = N1;
-- N1 = N2;
-- N2 = tmp;
-- }
--
-- gp_Pnt V1 = Nodes(N1);
-- gp_Pnt V2 = Nodes(N2);
-- gp_Pnt V3 = Nodes(N3);
--
-- // transform the vertices to the place of the face
-- if (!identity) {
-- V1.Transform(myTransf);
-- V2.Transform(myTransf);
-- V3.Transform(myTransf);
-- }
--
-- // Calculate triangle normal
-- gp_Vec v1(V1.X(),V1.Y(),V1.Z()),v2(V2.X(),V2.Y(),V2.Z()),v3(V3.X(),V3.Y(),V3.Z());
-- gp_Vec Normal = (v2-v1)^(v3-v1);
--
-- //Standard_Real Area = 0.5 * Normal.Magnitude();
--
-- // add the triangle normal to the vertex normal for all points of this triangle
-- (*vertexnormals)[N1-1] += gp_Vec(Normal.X(),Normal.Y(),Normal.Z());
-- (*vertexnormals)[N2-1] += gp_Vec(Normal.X(),Normal.Y(),Normal.Z());
-- (*vertexnormals)[N3-1] += gp_Vec(Normal.X(),Normal.Y(),Normal.Z());
--
-- (*vertices)[N1-1].SetX((float)(V1.X()));
-- (*vertices)[N1-1].SetY((float)(V1.Y()));
-- (*vertices)[N1-1].SetZ((float)(V1.Z()));
-- (*vertices)[N2-1].SetX((float)(V2.X()));
-- (*vertices)[N2-1].SetY((float)(V2.Y()));
-- (*vertices)[N2-1].SetZ((float)(V2.Z()));
-- (*vertices)[N3-1].SetX((float)(V3.X()));
-- (*vertices)[N3-1].SetY((float)(V3.Y()));
-- (*vertices)[N3-1].SetZ((float)(V3.Z()));
--
-- int j = i - 1;
-- N1--;
-- N2--;
-- N3--;
-- (*cons)[3*j] = N1;
-- (*cons)[3*j+1] = N2;
-- (*cons)[3*j+2] = N3;
-- }
--
-- // normalize all vertex normals
-- for (i=0; i < nbNodesInFace; i++) {
--
-- gp_Dir clNormal;
--
-- try {
-- Handle(Geom_Surface) Surface = BRep_Tool::Surface(aFace);
--
-- gp_Pnt vertex((*vertices)[i].XYZ());
--// gp_Pnt vertex((*vertices)[i][0], (*vertices)[i][1], (*vertices)[i][2]);
-- GeomAPI_ProjectPointOnSurf ProPntSrf(vertex, Surface);
-- Standard_Real fU, fV;
-- ProPntSrf.Parameters(1, fU, fV);
--
-- GeomLProp_SLProps clPropOfFace(Surface, fU, fV, 2, gp::Resolution());
--
-- clNormal = clPropOfFace.Normal();
-- gp_Vec temp = clNormal;
-- //Base::Console().Log("unterschied:%.2f",temp.dot((*vertexnormals)[i]));
-- if ( temp * (*vertexnormals)[i] < 0 )
-- temp = -temp;
-- (*vertexnormals)[i] = temp;
--
-- }
-- catch (...) {
-- }
--
-- (*vertexnormals)[i].Normalize();
-- }
--}
-diff --git a/src/Mod/Raytracing/App/PovTools.h b/src/Mod/Raytracing/App/PovTools.h
-index d499e003a08..09088c5755d 100644
---- a/src/Mod/Raytracing/App/PovTools.h
-+++ b/src/Mod/Raytracing/App/PovTools.h
-@@ -110,9 +110,6 @@ class AppRaytracingExport PovTools
- const TopoDS_Shape& Shape,
- float fMeshDeviation,
- float fLength);
--
--
-- static void transferToArray(const TopoDS_Face& aFace,gp_Vec** vertices,gp_Vec** vertexnormals, long** cons,int &nbNodesInFace,int &nbTriInFace );
- };
-
-
-From 08d46b5f882420c8d4066427fcc8dab5b1882097 Mon Sep 17 00:00:00 2001
-From: wmayer <wmayer@users.sourceforge.net>
-Date: Fri, 8 Oct 2021 15:28:22 +0200
-Subject: [PATCH] Part: add methods to get the point normals of the
- triangulation or surface
-
----
- src/Mod/Part/App/Tools.cpp | 58 ++++++++++++++++++++++++++++++++++++++
- src/Mod/Part/App/Tools.h | 17 +++++++++++
- 2 files changed, 75 insertions(+)
-
-diff --git a/src/Mod/Part/App/Tools.cpp b/src/Mod/Part/App/Tools.cpp
-index c0e59445089..41284befede 100644
---- a/src/Mod/Part/App/Tools.cpp
-+++ b/src/Mod/Part/App/Tools.cpp
-@@ -29,6 +29,7 @@
- # include <Geom_BSplineSurface.hxx>
- # include <Geom_Plane.hxx>
- # include <GeomAPI_IntSS.hxx>
-+# include <GeomAPI_ProjectPointOnSurf.hxx>
- # include <Geom_Line.hxx>
- # include <Geom_Point.hxx>
- # include <GeomAdaptor_Curve.hxx>
-@@ -356,3 +357,60 @@ bool Part::Tools::getPolygon3D(const TopoDS_Edge& edge, std::vector<gp_Pnt>& poi
-
- return true;
- }
-+
-+void Part::Tools::getPointNormals(const std::vector<gp_Pnt>& points, const std::vector<Poly_Triangle>& facets, std::vector<gp_Vec>& vertexnormals)
-+{
-+ vertexnormals.resize(points.size());
-+
-+ for (const auto& it : facets) {
-+ // Get the triangle
-+ Standard_Integer n1,n2,n3;
-+ it.Get(n1,n2,n3);
-+
-+ // Calculate triangle normal
-+ gp_Vec v1(points[n1].XYZ());
-+ gp_Vec v2(points[n2].XYZ());
-+ gp_Vec v3(points[n3].XYZ());
-+ gp_Vec n = (v2 - v1) ^ (v3 - v1);
-+
-+ // add the triangle normal to the vertex normal for all points of this triangle
-+ vertexnormals[n1] += n;
-+ vertexnormals[n2] += n;
-+ vertexnormals[n3] += n;
-+ }
-+
-+ for (auto& it : vertexnormals)
-+ it.Normalize();
-+}
-+
-+void Part::Tools::getPointNormals(const std::vector<gp_Pnt>& points, const TopoDS_Face& face, std::vector<gp_Vec>& vertexnormals)
-+{
-+ if (points.size() != vertexnormals.size())
-+ return;
-+
-+ Handle(Geom_Surface) hSurface = BRep_Tool::Surface(face);
-+ if (hSurface.IsNull())
-+ return;
-+
-+ // normalize all vertex normals
-+ for (std::size_t i = 0; i < points.size(); i++) {
-+ try {
-+ GeomAPI_ProjectPointOnSurf ProPntSrf(points[i], hSurface);
-+ Standard_Real u, v;
-+ ProPntSrf.Parameters(1, u, v);
-+
-+ GeomLProp_SLProps propOfFace(hSurface, u, v, 2, gp::Resolution());
-+
-+ gp_Dir normal = propOfFace.Normal();
-+ gp_Vec temp = normal;
-+ if (temp * vertexnormals[i] < 0.0)
-+ temp = -temp;
-+ vertexnormals[i] = temp;
-+
-+ }
-+ catch (...) {
-+ }
-+
-+ vertexnormals[i].Normalize();
-+ }
-+}
-diff --git a/src/Mod/Part/App/Tools.h b/src/Mod/Part/App/Tools.h
-index 19ecf937fda..a487530a7dc 100644
---- a/src/Mod/Part/App/Tools.h
-+++ b/src/Mod/Part/App/Tools.h
-@@ -134,6 +134,23 @@ class PartExport Tools
- * \return true if a polygon exists or false otherwise
- */
- static bool getPolygon3D(const TopoDS_Edge& edge, std::vector<gp_Pnt>& points);
-+ /*!
-+ * \brief getPointNormals
-+ * Calculate the point normals of the given triangulation.
-+ * \param points
-+ * \param facets
-+ * \param normals
-+ */
-+ static void getPointNormals(const std::vector<gp_Pnt>& points, const std::vector<Poly_Triangle>& facets, std::vector<gp_Vec>& vertexnormals);
-+ /*!
-+ * \brief getPointNormals
-+ * Computes the more accurate surface normals for the points. If the calculation for a point fails then the precomputed
-+ * point normal of the triangulation is used.
-+ * \param points
-+ * \param face
-+ * \param vertexnormals
-+ */
-+ static void getPointNormals(const std::vector<gp_Pnt>& points, const TopoDS_Face& face, std::vector<gp_Vec>& vertexnormals);
- };
-
- } //namespace Part
-From 51e4366085e59a9b511f7160d66493e9b3dfc7d8 Mon Sep 17 00:00:00 2001
-From: wmayer <wmayer@users.sourceforge.net>
-Date: Mon, 11 Oct 2021 00:28:12 +0200
-Subject: [PATCH] OCCT: port FreeCAD sources to version 7.6
-
----
- src/Mod/Fem/App/FemConstraint.cpp | 12 ++++++++++--
- src/Mod/Fem/App/FemConstraintFixed.cpp | 2 --
- 2 files changed, 10 insertions(+), 4 deletions(-)
-
-diff --git a/src/Mod/Fem/App/FemConstraint.cpp b/src/Mod/Fem/App/FemConstraint.cpp
-index 18f72e87d20..8003fd6d79c 100644
---- a/src/Mod/Fem/App/FemConstraint.cpp
-+++ b/src/Mod/Fem/App/FemConstraint.cpp
-@@ -36,8 +36,6 @@
- # include <BRepAdaptor_Curve.hxx>
- # include <GCPnts_AbscissaPoint.hxx>
- # include <Adaptor3d_IsoCurve.hxx>
--# include <Adaptor3d_HSurface.hxx>
--# include <BRepAdaptor_HSurface.hxx>
- # include <BRepAdaptor_Surface.hxx>
- # include <GProp_GProps.hxx>
- # include <BRepGProp.hxx>
-@@ -51,6 +49,11 @@
- # include <Geom_Plane.hxx>
- # include <Geom_Line.hxx>
- # include <Precision.hxx>
-+# include <Standard_Version.hxx>
-+# if OCC_VERSION_HEX < 0x070600
-+# include <Adaptor3d_HSurface.hxx>
-+# include <BRepAdaptor_HSurface.hxx>
-+# endif
- #endif
-
- #include "FemConstraint.h"
-@@ -74,6 +77,11 @@ double round(double r) {
- }
- #endif
-
-+#if OCC_VERSION_HEX >= 0x070600
-+using Adaptor3d_HSurface = Adaptor3d_Surface;
-+using BRepAdaptor_HSurface = BRepAdaptor_Surface;
-+#endif
-+
- PROPERTY_SOURCE(Fem::Constraint, App::DocumentObject)
-
- Constraint::Constraint()
-diff --git a/src/Mod/Fem/App/FemConstraintFixed.cpp b/src/Mod/Fem/App/FemConstraintFixed.cpp
-index 4d809454903..5b8874ec90b 100644
---- a/src/Mod/Fem/App/FemConstraintFixed.cpp
-+++ b/src/Mod/Fem/App/FemConstraintFixed.cpp
-@@ -32,8 +32,6 @@
- #include <BRepAdaptor_Surface.hxx>
- #include <GCPnts_AbscissaPoint.hxx>
- #include <Adaptor3d_IsoCurve.hxx>
--#include <Adaptor3d_HSurface.hxx>
--#include <BRepAdaptor_HSurface.hxx>
- #include <GProp_GProps.hxx>
- #include <BRepGProp.hxx>
- #include <TopoDS_Vertex.hxx>
-From c2c5ae1bf0c571270ecacf257a51e9b064fc609a Mon Sep 17 00:00:00 2001
-From: wmayer <wmayer@users.sourceforge.net>
-Date: Fri, 8 Oct 2021 19:34:48 +0200
-Subject: [PATCH] Part: remove ViewProviderPartExt::getNormals
-
----
- src/Mod/Part/Gui/ViewProviderExt.cpp | 91 +------------------
- src/Mod/Part/Gui/ViewProviderExt.h | 2 -
- src/Mod/PartDesign/Gui/ViewProviderAddSub.cpp | 5 +-
- 3 files changed, 5 insertions(+), 93 deletions(-)
-
-diff --git a/src/Mod/Part/Gui/ViewProviderExt.cpp b/src/Mod/Part/Gui/ViewProviderExt.cpp
-index ba197f18113..77cefbe3e08 100644
---- a/src/Mod/Part/Gui/ViewProviderExt.cpp
-+++ b/src/Mod/Part/Gui/ViewProviderExt.cpp
-@@ -125,6 +125,7 @@
-
- #include <Mod/Part/App/PartFeature.h>
- #include <Mod/Part/App/PrimitiveFeature.h>
-+#include <Mod/Part/App/Tools.h>
-
- FC_LOG_LEVEL_INIT("Part", true, true)
-
-@@ -133,94 +134,6 @@ using namespace PartGui;
- PROPERTY_SOURCE(PartGui::ViewProviderPartExt, Gui::ViewProviderGeometryObject)
-
-
--void ViewProviderPartExt::getNormals(const TopoDS_Face& theFace,
-- const Handle(Poly_Triangulation)& aPolyTri,
-- TColgp_Array1OfDir& theNormals)
--{
-- const TColgp_Array1OfPnt& aNodes = aPolyTri->Nodes();
--
-- if(aPolyTri->HasNormals())
-- {
-- // normals pre-computed in triangulation structure
-- const TShort_Array1OfShortReal& aNormals = aPolyTri->Normals();
-- const Standard_ShortReal* aNormArr = &(aNormals.Value(aNormals.Lower()));
--
-- for(Standard_Integer aNodeIter = aNodes.Lower(); aNodeIter <= aNodes.Upper(); ++aNodeIter)
-- {
-- const Standard_Integer anId = 3 * (aNodeIter - aNodes.Lower());
-- const gp_Dir aNorm(aNormArr[anId + 0],
-- aNormArr[anId + 1],
-- aNormArr[anId + 2]);
-- theNormals(aNodeIter) = aNorm;
-- }
--
-- if(theFace.Orientation() == TopAbs_REVERSED)
-- {
-- for(Standard_Integer aNodeIter = aNodes.Lower(); aNodeIter <= aNodes.Upper(); ++aNodeIter)
-- {
-- theNormals.ChangeValue(aNodeIter).Reverse();
-- }
-- }
--
-- return;
-- }
--
-- // take in face the surface location
-- Poly_Connect thePolyConnect(aPolyTri);
-- const TopoDS_Face aZeroFace = TopoDS::Face(theFace.Located(TopLoc_Location()));
-- Handle(Geom_Surface) aSurf = BRep_Tool::Surface(aZeroFace);
-- const Standard_Real aTol = Precision::Confusion();
-- Handle(TShort_HArray1OfShortReal) aNormals = new TShort_HArray1OfShortReal(1, aPolyTri->NbNodes() * 3);
-- const Poly_Array1OfTriangle& aTriangles = aPolyTri->Triangles();
-- const TColgp_Array1OfPnt2d* aNodesUV = aPolyTri->HasUVNodes() && !aSurf.IsNull()
-- ? &aPolyTri->UVNodes()
-- : NULL;
-- Standard_Integer aTri[3];
--
-- for(Standard_Integer aNodeIter = aNodes.Lower(); aNodeIter <= aNodes.Upper(); ++aNodeIter)
-- {
-- // try to retrieve normal from real surface first, when UV coordinates are available
-- if(aNodesUV == NULL
-- || GeomLib::NormEstim(aSurf, aNodesUV->Value(aNodeIter), aTol, theNormals(aNodeIter)) > 1)
-- {
-- // compute flat normals
-- gp_XYZ eqPlan(0.0, 0.0, 0.0);
--
-- for(thePolyConnect.Initialize(aNodeIter); thePolyConnect.More(); thePolyConnect.Next())
-- {
-- aTriangles(thePolyConnect.Value()).Get(aTri[0], aTri[1], aTri[2]);
-- const gp_XYZ v1(aNodes(aTri[1]).Coord() - aNodes(aTri[0]).Coord());
-- const gp_XYZ v2(aNodes(aTri[2]).Coord() - aNodes(aTri[1]).Coord());
-- const gp_XYZ vv = v1 ^ v2;
-- const Standard_Real aMod = vv.Modulus();
--
-- if(aMod >= aTol)
-- {
-- eqPlan += vv / aMod;
-- }
-- }
--
-- const Standard_Real aModMax = eqPlan.Modulus();
-- theNormals(aNodeIter) = (aModMax > aTol) ? gp_Dir(eqPlan) : gp::DZ();
-- }
--
-- const Standard_Integer anId = (aNodeIter - aNodes.Lower()) * 3;
-- aNormals->SetValue(anId + 1, (Standard_ShortReal)theNormals(aNodeIter).X());
-- aNormals->SetValue(anId + 2, (Standard_ShortReal)theNormals(aNodeIter).Y());
-- aNormals->SetValue(anId + 3, (Standard_ShortReal)theNormals(aNodeIter).Z());
-- }
--
-- aPolyTri->SetNormals(aNormals);
--
-- if(theFace.Orientation() == TopAbs_REVERSED)
-- {
-- for(Standard_Integer aNodeIter = aNodes.Lower(); aNodeIter <= aNodes.Upper(); ++aNodeIter)
-- {
-- theNormals.ChangeValue(aNodeIter).Reverse();
-- }
-- }
--}
--
- //**************************************************************************
- // Construction/Destruction
-
-@@ -1174,7 +1087,7 @@ void ViewProviderPartExt::updateVisual()
- const TColgp_Array1OfPnt& Nodes = mesh->Nodes();
- TColgp_Array1OfDir Normals (Nodes.Lower(), Nodes.Upper());
- if (NormalsFromUV)
-- getNormals(actFace, mesh, Normals);
-+ Part::Tools::getPointNormals(actFace, mesh, Normals);
-
- for (int g=1;g<=nbTriInFace;g++) {
- // Get the triangle
-diff --git a/src/Mod/Part/Gui/ViewProviderExt.h b/src/Mod/Part/Gui/ViewProviderExt.h
-index d890e9a716e..2cb55c1873c 100644
---- a/src/Mod/Part/Gui/ViewProviderExt.h
-+++ b/src/Mod/Part/Gui/ViewProviderExt.h
-@@ -158,8 +158,6 @@ class PartGuiExport ViewProviderPartExt : public Gui::ViewProviderGeometryObject
- virtual void onChanged(const App::Property* prop) override;
- bool loadParameter();
- void updateVisual();
-- void getNormals(const TopoDS_Face& theFace, const Handle(Poly_Triangulation)& aPolyTri,
-- TColgp_Array1OfDir& theNormals);
-
- // nodes for the data representation
- SoMaterialBinding * pcFaceBind;
-diff --git a/src/Mod/PartDesign/Gui/ViewProviderAddSub.cpp b/src/Mod/PartDesign/Gui/ViewProviderAddSub.cpp
-index 85bcf6e551d..642eb9dc76a 100644
---- a/src/Mod/PartDesign/Gui/ViewProviderAddSub.cpp
-+++ b/src/Mod/PartDesign/Gui/ViewProviderAddSub.cpp
-@@ -40,7 +40,8 @@
- #endif
-
- #include "ViewProviderAddSub.h"
--#include "Mod/Part/Gui/SoBrepFaceSet.h"
-+#include <Mod/Part/Gui/SoBrepFaceSet.h>
-+#include <Mod/Part/App/Tools.h>
- #include <Mod/PartDesign/App/FeatureAddSub.h>
- #include <Gui/TaskView/TaskDialog.h>
- #include <Gui/Control.h>
-@@ -196,7 +197,7 @@ void ViewProviderAddSub::updateAddSubShapeIndicator() {
- const Poly_Array1OfTriangle& Triangles = mesh->Triangles();
- const TColgp_Array1OfPnt& Nodes = mesh->Nodes();
- TColgp_Array1OfDir Normals (Nodes.Lower(), Nodes.Upper());
-- getNormals(actFace, mesh, Normals);
-+ Part::Tools::getPointNormals(actFace, mesh, Normals);
-
- for (int g=1;g<=nbTriInFace;g++) {
- // Get the triangle
-From 302568d177ddde171c28eaca89e8b4a49466974f Mon Sep 17 00:00:00 2001
-From: wmayer <wmayer@users.sourceforge.net>
-Date: Fri, 8 Oct 2021 16:55:09 +0200
-Subject: [PATCH] Part: copy ViewProviderPartExt::getNormals to Tools class
-
----
- src/Mod/Part/App/PreCompiled.h | 1 +
- src/Mod/Part/App/Tools.cpp | 87 ++++++++++++++++++++++++++++++++++
- src/Mod/Part/App/Tools.h | 3 ++
- 3 files changed, 91 insertions(+)
-
-diff --git a/src/Mod/Part/App/PreCompiled.h b/src/Mod/Part/App/PreCompiled.h
-index bb9b1cb04fb..636b5ea3cb8 100644
---- a/src/Mod/Part/App/PreCompiled.h
-+++ b/src/Mod/Part/App/PreCompiled.h
-@@ -94,6 +94,7 @@
- #include "OpenCascadeAll.h"
- #include <math_Gauss.hxx>
- #include <math_Matrix.hxx>
-+#include <Poly_Connect.hxx>
-
- #elif defined(FC_OS_WIN32)
- #define WIN32_LEAN_AND_MEAN
-diff --git a/src/Mod/Part/App/Tools.cpp b/src/Mod/Part/App/Tools.cpp
-index 41284befede..74664dfa50a 100644
---- a/src/Mod/Part/App/Tools.cpp
-+++ b/src/Mod/Part/App/Tools.cpp
-@@ -33,11 +33,13 @@
- # include <Geom_Line.hxx>
- # include <Geom_Point.hxx>
- # include <GeomAdaptor_Curve.hxx>
-+# include <GeomLib.hxx>
- # include <GeomPlate_BuildPlateSurface.hxx>
- # include <GeomPlate_CurveConstraint.hxx>
- # include <GeomPlate_MakeApprox.hxx>
- # include <GeomPlate_PlateG0Criterion.hxx>
- # include <GeomPlate_PointConstraint.hxx>
-+# include <Poly_Connect.hxx>
- # include <Poly_Triangulation.hxx>
- # include <Precision.hxx>
- # include <Standard_Mutex.hxx>
-@@ -47,6 +49,7 @@
- # include <TColStd_ListIteratorOfListOfTransient.hxx>
- # include <TColgp_SequenceOfXY.hxx>
- # include <TColgp_SequenceOfXYZ.hxx>
-+# include <TopoDS.hxx>
- # if OCC_VERSION_HEX < 0x070600
- # include <Adaptor3d_HCurveOnSurface.hxx>
- # include <GeomAdaptor_HCurve.hxx>
-@@ -414,3 +417,87 @@ void Part::Tools::getPointNormals(const std::vector<gp_Pnt>& points, const TopoD
- vertexnormals[i].Normalize();
- }
- }
-+
-+void Part::Tools::getPointNormals(const TopoDS_Face& theFace, Handle(Poly_Triangulation) aPolyTri, TColgp_Array1OfDir& theNormals)
-+{
-+ const TColgp_Array1OfPnt& aNodes = aPolyTri->Nodes();
-+
-+ if(aPolyTri->HasNormals())
-+ {
-+ // normals pre-computed in triangulation structure
-+ const TShort_Array1OfShortReal& aNormals = aPolyTri->Normals();
-+ const Standard_ShortReal* aNormArr = &(aNormals.Value(aNormals.Lower()));
-+
-+ for(Standard_Integer aNodeIter = aNodes.Lower(); aNodeIter <= aNodes.Upper(); ++aNodeIter)
-+ {
-+ const Standard_Integer anId = 3 * (aNodeIter - aNodes.Lower());
-+ const gp_Dir aNorm(aNormArr[anId + 0],
-+ aNormArr[anId + 1],
-+ aNormArr[anId + 2]);
-+ theNormals(aNodeIter) = aNorm;
-+ }
-+
-+ if(theFace.Orientation() == TopAbs_REVERSED)
-+ {
-+ for(Standard_Integer aNodeIter = aNodes.Lower(); aNodeIter <= aNodes.Upper(); ++aNodeIter)
-+ {
-+ theNormals.ChangeValue(aNodeIter).Reverse();
-+ }
-+ }
-+ }
-+ else {
-+ // take in face the surface location
-+ Poly_Connect thePolyConnect(aPolyTri);
-+ const TopoDS_Face aZeroFace = TopoDS::Face(theFace.Located(TopLoc_Location()));
-+ Handle(Geom_Surface) aSurf = BRep_Tool::Surface(aZeroFace);
-+ const Standard_Real aTol = Precision::Confusion();
-+ Handle(TShort_HArray1OfShortReal) aNormals = new TShort_HArray1OfShortReal(1, aPolyTri->NbNodes() * 3);
-+ const Poly_Array1OfTriangle& aTriangles = aPolyTri->Triangles();
-+ const TColgp_Array1OfPnt2d* aNodesUV = aPolyTri->HasUVNodes() && !aSurf.IsNull()
-+ ? &aPolyTri->UVNodes()
-+ : nullptr;
-+ Standard_Integer aTri[3];
-+
-+ for(Standard_Integer aNodeIter = aNodes.Lower(); aNodeIter <= aNodes.Upper(); ++aNodeIter)
-+ {
-+ // try to retrieve normal from real surface first, when UV coordinates are available
-+ if (!aNodesUV || GeomLib::NormEstim(aSurf, aNodesUV->Value(aNodeIter), aTol, theNormals(aNodeIter)) > 1)
-+ {
-+ // compute flat normals
-+ gp_XYZ eqPlan(0.0, 0.0, 0.0);
-+
-+ for(thePolyConnect.Initialize(aNodeIter); thePolyConnect.More(); thePolyConnect.Next())
-+ {
-+ aTriangles(thePolyConnect.Value()).Get(aTri[0], aTri[1], aTri[2]);
-+ const gp_XYZ v1(aNodes(aTri[1]).Coord() - aNodes(aTri[0]).Coord());
-+ const gp_XYZ v2(aNodes(aTri[2]).Coord() - aNodes(aTri[1]).Coord());
-+ const gp_XYZ vv = v1 ^ v2;
-+ const Standard_Real aMod = vv.Modulus();
-+
-+ if(aMod >= aTol)
-+ {
-+ eqPlan += vv / aMod;
-+ }
-+ }
-+
-+ const Standard_Real aModMax = eqPlan.Modulus();
-+ theNormals(aNodeIter) = (aModMax > aTol) ? gp_Dir(eqPlan) : gp::DZ();
-+ }
-+
-+ const Standard_Integer anId = (aNodeIter - aNodes.Lower()) * 3;
-+ aNormals->SetValue(anId + 1, (Standard_ShortReal)theNormals(aNodeIter).X());
-+ aNormals->SetValue(anId + 2, (Standard_ShortReal)theNormals(aNodeIter).Y());
-+ aNormals->SetValue(anId + 3, (Standard_ShortReal)theNormals(aNodeIter).Z());
-+ }
-+
-+ aPolyTri->SetNormals(aNormals);
-+
-+ if(theFace.Orientation() == TopAbs_REVERSED)
-+ {
-+ for(Standard_Integer aNodeIter = aNodes.Lower(); aNodeIter <= aNodes.Upper(); ++aNodeIter)
-+ {
-+ theNormals.ChangeValue(aNodeIter).Reverse();
-+ }
-+ }
-+ }
-+}
-diff --git a/src/Mod/Part/App/Tools.h b/src/Mod/Part/App/Tools.h
-index a487530a7dc..43a01123b71 100644
---- a/src/Mod/Part/App/Tools.h
-+++ b/src/Mod/Part/App/Tools.h
-@@ -31,7 +31,9 @@
- #include <gp_XYZ.hxx>
- #include <Geom_Surface.hxx>
- #include <Poly_Triangle.hxx>
-+#include <Poly_Triangulation.hxx>
- #include <TColStd_ListOfTransient.hxx>
-+#include <TColgp_Array1OfDir.hxx>
- #include <TopoDS_Edge.hxx>
- #include <TopoDS_Face.hxx>
- #include <vector>
-@@ -151,6 +153,7 @@ class PartExport Tools
- * \param vertexnormals
- */
- static void getPointNormals(const std::vector<gp_Pnt>& points, const TopoDS_Face& face, std::vector<gp_Vec>& vertexnormals);
-+ static void getPointNormals(const TopoDS_Face& face, Handle(Poly_Triangulation) aPoly, TColgp_Array1OfDir& normals);
- };
-
- } //namespace Part
-From 66d3dd897f63c2e4f8ffd6eced730c6a3372ad51 Mon Sep 17 00:00:00 2001
-From: wmayer <wmayer@users.sourceforge.net>
-Date: Sat, 9 Oct 2021 11:37:18 +0200
-Subject: [PATCH] Part: add convenience function to convert TColgp_Array1OfDir
- to std::vector
-
----
- src/Mod/Part/App/Tools.cpp | 88 ++++++++++++++++++++++++++++++++++++++
- src/Mod/Part/App/Tools.h | 23 ++++++++++
- 2 files changed, 111 insertions(+)
-
-diff --git a/src/Mod/Part/App/Tools.cpp b/src/Mod/Part/App/Tools.cpp
-index 74664dfa50a..0a85e0c6df6 100644
---- a/src/Mod/Part/App/Tools.cpp
-+++ b/src/Mod/Part/App/Tools.cpp
-@@ -420,6 +420,7 @@ void Part::Tools::getPointNormals(const std::vector<gp_Pnt>& points, const TopoD
-
- void Part::Tools::getPointNormals(const TopoDS_Face& theFace, Handle(Poly_Triangulation) aPolyTri, TColgp_Array1OfDir& theNormals)
- {
-+#if OCC_VERSION_HEX < 0x070600
- const TColgp_Array1OfPnt& aNodes = aPolyTri->Nodes();
-
- if(aPolyTri->HasNormals())
-@@ -500,4 +501,91 @@ void Part::Tools::getPointNormals(const TopoDS_Face& theFace, Handle(Poly_Triang
- }
- }
- }
-+#else
-+ Standard_Integer numNodes = aPolyTri->NbNodes();
-+
-+ if(aPolyTri->HasNormals())
-+ {
-+ for(Standard_Integer aNodeIter = 1; aNodeIter <= numNodes; ++aNodeIter)
-+ {
-+ theNormals(aNodeIter) = aPolyTri->Normal(aNodeIter);
-+ }
-+
-+ if(theFace.Orientation() == TopAbs_REVERSED)
-+ {
-+ for(Standard_Integer aNodeIter = 1; aNodeIter <= numNodes; ++aNodeIter)
-+ {
-+ theNormals.ChangeValue(aNodeIter).Reverse();
-+ }
-+ }
-+ }
-+ else {
-+ // take in face the surface location
-+ Poly_Connect thePolyConnect(aPolyTri);
-+ const TopoDS_Face aZeroFace = TopoDS::Face(theFace.Located(TopLoc_Location()));
-+ Handle(Geom_Surface) aSurf = BRep_Tool::Surface(aZeroFace);
-+ const Standard_Real aTol = Precision::Confusion();
-+ Standard_Boolean hasNodesUV = aPolyTri->HasUVNodes() && !aSurf.IsNull();
-+ Standard_Integer aTri[3];
-+
-+ for(Standard_Integer aNodeIter = 1; aNodeIter <= numNodes; ++aNodeIter)
-+ {
-+ // try to retrieve normal from real surface first, when UV coordinates are available
-+ if (!hasNodesUV || GeomLib::NormEstim(aSurf, aPolyTri->UVNode(aNodeIter), aTol, theNormals(aNodeIter)) > 1)
-+ {
-+ // compute flat normals
-+ gp_XYZ eqPlan(0.0, 0.0, 0.0);
-+
-+ for(thePolyConnect.Initialize(aNodeIter); thePolyConnect.More(); thePolyConnect.Next())
-+ {
-+ aPolyTri->Triangle(thePolyConnect.Value()).Get(aTri[0], aTri[1], aTri[2]);
-+ const gp_XYZ v1(aPolyTri->Node(aTri[1]).Coord() - aPolyTri->Node(aTri[0]).Coord());
-+ const gp_XYZ v2(aPolyTri->Node(aTri[2]).Coord() - aPolyTri->Node(aTri[1]).Coord());
-+ const gp_XYZ vv = v1 ^ v2;
-+ const Standard_Real aMod = vv.Modulus();
-+
-+ if(aMod >= aTol)
-+ {
-+ eqPlan += vv / aMod;
-+ }
-+ }
-+
-+ const Standard_Real aModMax = eqPlan.Modulus();
-+ theNormals(aNodeIter) = (aModMax > aTol) ? gp_Dir(eqPlan) : gp::DZ();
-+ }
-+
-+ aPolyTri->SetNormal(aNodeIter, theNormals(aNodeIter));
-+ }
-+
-+ if(theFace.Orientation() == TopAbs_REVERSED)
-+ {
-+ for(Standard_Integer aNodeIter = 1; aNodeIter <= numNodes; ++aNodeIter)
-+ {
-+ theNormals.ChangeValue(aNodeIter).Reverse();
-+ }
-+ }
-+ }
-+#endif
-+}
-+
-+void Part::Tools::getPointNormals(const TopoDS_Face& face, Handle(Poly_Triangulation) aPoly, std::vector<gp_Vec>& normals)
-+{
-+ TColgp_Array1OfDir dirs (1, aPoly->NbNodes());
-+ getPointNormals(face, aPoly, dirs);
-+ normals.reserve(aPoly->NbNodes());
-+
-+ for (int i = dirs.Lower(); i <= dirs.Upper(); ++i) {
-+ normals.emplace_back(dirs(i).XYZ());
-+ }
-+}
-+
-+void Part::Tools::applyTransformationOnNormals(const TopLoc_Location& loc, std::vector<gp_Vec>& normals)
-+{
-+ if (!loc.IsIdentity()) {
-+ gp_Trsf myTransf = loc.Transformation();
-+
-+ for (auto& it : normals) {
-+ it.Transform(myTransf);
-+ }
-+ }
- }
-diff --git a/src/Mod/Part/App/Tools.h b/src/Mod/Part/App/Tools.h
-index 43a01123b71..425032a12d9 100644
---- a/src/Mod/Part/App/Tools.h
-+++ b/src/Mod/Part/App/Tools.h
-@@ -34,6 +34,7 @@
- #include <Poly_Triangulation.hxx>
- #include <TColStd_ListOfTransient.hxx>
- #include <TColgp_Array1OfDir.hxx>
-+#include <TopLoc_Location.hxx>
- #include <TopoDS_Edge.hxx>
- #include <TopoDS_Face.hxx>
- #include <vector>
-@@ -153,7 +154,29 @@ class PartExport Tools
- * \param vertexnormals
- */
- static void getPointNormals(const std::vector<gp_Pnt>& points, const TopoDS_Face& face, std::vector<gp_Vec>& vertexnormals);
-+ /*!
-+ * \brief getPointNormals
-+ * Computes the exact surface normals for the points by using the UV coordinates of the mesh vertexes.
-+ * \param face
-+ * \param aPoly
-+ * \param vertexnormals
-+ */
- static void getPointNormals(const TopoDS_Face& face, Handle(Poly_Triangulation) aPoly, TColgp_Array1OfDir& normals);
-+ /*!
-+ * \brief getPointNormals
-+ * Computes the exact surface normals for the points by using the UV coordinates of the mesh vertexes.
-+ * \param face
-+ * \param aPoly
-+ * \param vertexnormals
-+ */
-+ static void getPointNormals(const TopoDS_Face& face, Handle(Poly_Triangulation) aPoly, std::vector<gp_Vec>& normals);
-+ /*!
-+ * \brief applyTransformationOnNormals
-+ * Apply the transformation to the vectors
-+ * \param loc
-+ * \param normals
-+ */
-+ static void applyTransformationOnNormals(const TopLoc_Location& loc, std::vector<gp_Vec>& normals);
- };
-
- } //namespace Part
-From 03be15cc6b460ab62548142287eb9f677f463a44 Mon Sep 17 00:00:00 2001
-From: wmayer <wmayer@users.sourceforge.net>
-Date: Sat, 9 Oct 2021 14:34:04 +0200
-Subject: [PATCH] Part: fix bug in Part::Tools::getPointNormals for OCCT 7.6
-
----
- src/Mod/Part/App/Tools.cpp | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/src/Mod/Part/App/Tools.cpp b/src/Mod/Part/App/Tools.cpp
-index 0a85e0c6df6..d95e49eaf4f 100644
---- a/src/Mod/Part/App/Tools.cpp
-+++ b/src/Mod/Part/App/Tools.cpp
-@@ -528,6 +528,7 @@ void Part::Tools::getPointNormals(const TopoDS_Face& theFace, Handle(Poly_Triang
- Standard_Boolean hasNodesUV = aPolyTri->HasUVNodes() && !aSurf.IsNull();
- Standard_Integer aTri[3];
-
-+ aPolyTri->AddNormals();
- for(Standard_Integer aNodeIter = 1; aNodeIter <= numNodes; ++aNodeIter)
- {
- // try to retrieve normal from real surface first, when UV coordinates are available
-From f628050732cc5d1d49fc18282ed508ca3061bb10 Mon Sep 17 00:00:00 2001
-From: wmayer <wmayer@users.sourceforge.net>
-Date: Sat, 9 Oct 2021 11:38:25 +0200
-Subject: [PATCH] PD: simplify code to display add/sub shape
-
----
- src/Mod/PartDesign/Gui/ViewProviderAddSub.cpp | 111 ++++++------------
- 1 file changed, 39 insertions(+), 72 deletions(-)
-
-diff --git a/src/Mod/PartDesign/Gui/ViewProviderAddSub.cpp b/src/Mod/PartDesign/Gui/ViewProviderAddSub.cpp
-index 642eb9dc76a..2e2d2a55e54 100644
---- a/src/Mod/PartDesign/Gui/ViewProviderAddSub.cpp
-+++ b/src/Mod/PartDesign/Gui/ViewProviderAddSub.cpp
-@@ -116,9 +116,6 @@ void ViewProviderAddSub::updateAddSubShapeIndicator() {
- return;
- }
-
-- int numTriangles=0,numNodes=0,numNorms=0,numFaces=0;
-- std::set<int> faceEdges;
--
- try {
- // calculating the deflection value
- Bnd_Box bounds;
-@@ -126,16 +123,14 @@ void ViewProviderAddSub::updateAddSubShapeIndicator() {
- bounds.SetGap(0.0);
- Standard_Real xMin, yMin, zMin, xMax, yMax, zMax;
- bounds.Get(xMin, yMin, zMin, xMax, yMax, zMax);
-- Standard_Real deflection = ((xMax-xMin)+(yMax-yMin)+(zMax-zMin))/300.0 *
-- Deviation.getValue();
-+ Standard_Real deflection = ((xMax-xMin)+(yMax-yMin)+(zMax-zMin))/300.0 * Deviation.getValue();
-
- // create or use the mesh on the data structure
- #if OCC_VERSION_HEX >= 0x060600
- Standard_Real AngDeflectionRads = AngularDeflection.getValue() / 180.0 * M_PI;
-- BRepMesh_IncrementalMesh(cShape,deflection,Standard_False,
-- AngDeflectionRads,Standard_True);
-+ BRepMesh_IncrementalMesh(cShape, deflection, Standard_False, AngDeflectionRads, Standard_True);
- #else
-- BRepMesh_IncrementalMesh(cShape,deflection);
-+ BRepMesh_IncrementalMesh(cShape, deflection);
- #endif
- // We must reset the location here because the transformation data
- // are set in the placement property
-@@ -143,6 +138,7 @@ void ViewProviderAddSub::updateAddSubShapeIndicator() {
- cShape.Location(aLoc);
-
- // count triangles and nodes in the mesh
-+ int numTriangles=0,numNodes=0,numNorms=0,numFaces=0;
- TopExp_Explorer Ex;
- for (Ex.Init(cShape,TopAbs_FACE);Ex.More();Ex.Next()) {
- Handle (Poly_Triangulation) mesh = BRep_Tool::Triangulation(TopoDS::Face(Ex.Current()), aLoc);
-@@ -160,11 +156,12 @@ void ViewProviderAddSub::updateAddSubShapeIndicator() {
- previewNorm ->vector .setNum(numNorms);
- previewFaceSet ->coordIndex .setNum(numTriangles*4);
- previewFaceSet ->partIndex .setNum(numFaces);
-+
- // get the raw memory for fast fill up
-- SbVec3f* verts = previewCoords ->point .startEditing();
-- SbVec3f* previewNorms = previewNorm ->vector .startEditing();
-- int32_t* index = previewFaceSet ->coordIndex .startEditing();
-- int32_t* parts = previewFaceSet ->partIndex .startEditing();
-+ SbVec3f* verts = previewCoords ->point .startEditing();
-+ SbVec3f* previewNorms = previewNorm ->vector .startEditing();
-+ int32_t* index = previewFaceSet ->coordIndex .startEditing();
-+ int32_t* parts = previewFaceSet ->partIndex .startEditing();
-
- // preset the previewNormal vector with null vector
- for (int i=0;i < numNorms;i++)
-@@ -172,76 +169,46 @@ void ViewProviderAddSub::updateAddSubShapeIndicator() {
-
- int ii = 0,faceNodeOffset=0,faceTriaOffset=0;
- for (Ex.Init(cShape, TopAbs_FACE); Ex.More(); Ex.Next(),ii++) {
-- TopLoc_Location aLoc;
- const TopoDS_Face &actFace = TopoDS::Face(Ex.Current());
-- // get the mesh of the shape
-- Handle (Poly_Triangulation) mesh = BRep_Tool::Triangulation(actFace,aLoc);
-- if (mesh.IsNull()) continue;
--
-- // getting the transformation of the shape/face
-- gp_Trsf myTransf;
-- Standard_Boolean identity = true;
-- if (!aLoc.IsIdentity()) {
-- identity = false;
-- myTransf = aLoc.Transformation();
-- }
-+
-+ TopLoc_Location loc;
-+ Handle(Poly_Triangulation) mesh = BRep_Tool::Triangulation(actFace, loc);
-+ if (mesh.IsNull())
-+ continue;
-+
-+ // get triangulation
-+ std::vector<gp_Pnt> points;
-+ std::vector<Poly_Triangle> facets;
-+ Part::Tools::getTriangulation(actFace, points, facets);
-+
-+ // get normal per vertex
-+ std::vector<gp_Vec> vertexnormals;
-+ Part::Tools::getPointNormals(actFace, mesh, vertexnormals);
-+ Part::Tools::applyTransformationOnNormals(loc, vertexnormals);
-
- // getting size of node and triangle array of this face
-- int nbNodesInFace = mesh->NbNodes();
-- int nbTriInFace = mesh->NbTriangles();
-- // check orientation
-- TopAbs_Orientation orient = actFace.Orientation();
-+ std::size_t nbNodesInFace = points.size();
-+ std::size_t nbTriInFace = facets.size();
-
-+ for (std::size_t i = 0; i < points.size(); i++) {
-+ verts[faceNodeOffset+i] = SbVec3f(points[i].X(), points[i].Y(), points[i].Z());
-+ }
-
-- // cycling through the poly mesh
-- const Poly_Array1OfTriangle& Triangles = mesh->Triangles();
-- const TColgp_Array1OfPnt& Nodes = mesh->Nodes();
-- TColgp_Array1OfDir Normals (Nodes.Lower(), Nodes.Upper());
-- Part::Tools::getPointNormals(actFace, mesh, Normals);
-+ for (std::size_t i = 0; i < vertexnormals.size(); i++) {
-+ previewNorms[faceNodeOffset+i] = SbVec3f(vertexnormals[i].X(), vertexnormals[i].Y(), vertexnormals[i].Z());
-+ }
-
-- for (int g=1;g<=nbTriInFace;g++) {
-+ // cycling through the poly mesh
-+ for (std::size_t g=0; g < nbTriInFace; g++) {
- // Get the triangle
- Standard_Integer N1,N2,N3;
-- Triangles(g).Get(N1,N2,N3);
--
-- // change orientation of the triangle if the face is reversed
-- if ( orient != TopAbs_FORWARD ) {
-- Standard_Integer tmp = N1;
-- N1 = N2;
-- N2 = tmp;
-- }
--
-- // get the 3 points of this triangle
-- gp_Pnt V1(Nodes(N1)), V2(Nodes(N2)), V3(Nodes(N3));
--
-- // get the 3 previewNormals of this triangle
-- gp_Dir NV1(Normals(N1)), NV2(Normals(N2)), NV3(Normals(N3));
--
-- // transform the vertices and previewNormals to the place of the face
-- if(!identity) {
-- V1.Transform(myTransf);
-- V2.Transform(myTransf);
-- V3.Transform(myTransf);
-- NV1.Transform(myTransf);
-- NV2.Transform(myTransf);
-- NV3.Transform(myTransf);
-- }
--
-- // add the previewNormals for all points of this triangle
-- previewNorms[faceNodeOffset+N1-1] += SbVec3f(NV1.X(),NV1.Y(),NV1.Z());
-- previewNorms[faceNodeOffset+N2-1] += SbVec3f(NV2.X(),NV2.Y(),NV2.Z());
-- previewNorms[faceNodeOffset+N3-1] += SbVec3f(NV3.X(),NV3.Y(),NV3.Z());
--
-- // set the vertices
-- verts[faceNodeOffset+N1-1].setValue((float)(V1.X()),(float)(V1.Y()),(float)(V1.Z()));
-- verts[faceNodeOffset+N2-1].setValue((float)(V2.X()),(float)(V2.Y()),(float)(V2.Z()));
-- verts[faceNodeOffset+N3-1].setValue((float)(V3.X()),(float)(V3.Y()),(float)(V3.Z()));
-+ facets[g].Get(N1,N2,N3);
-
- // set the index vector with the 3 point indexes and the end delimiter
-- index[faceTriaOffset*4+4*(g-1)] = faceNodeOffset+N1-1;
-- index[faceTriaOffset*4+4*(g-1)+1] = faceNodeOffset+N2-1;
-- index[faceTriaOffset*4+4*(g-1)+2] = faceNodeOffset+N3-1;
-- index[faceTriaOffset*4+4*(g-1)+3] = SO_END_FACE_INDEX;
-+ index[faceTriaOffset*4+4*g] = faceNodeOffset+N1;
-+ index[faceTriaOffset*4+4*g+1] = faceNodeOffset+N2;
-+ index[faceTriaOffset*4+4*g+2] = faceNodeOffset+N3;
-+ index[faceTriaOffset*4+4*g+3] = SO_END_FACE_INDEX;
- }
-
- parts[ii] = nbTriInFace; // new part
-From 16ff933b09176d83fb0785e74f36038311f0eaeb Mon Sep 17 00:00:00 2001
-From: David Osterberg <davost@gmail.com>
-Date: Sat, 27 Feb 2021 09:27:23 +0100
-Subject: [PATCH] PartDesign: Transformded. Align the "property category" of
- Refine with other PD commands
-
----
- src/Mod/PartDesign/App/FeatureTransformed.cpp | 18 +++++++++---------
- 1 file changed, 9 insertions(+), 9 deletions(-)
-
-diff --git a/src/Mod/PartDesign/App/FeatureTransformed.cpp b/src/Mod/PartDesign/App/FeatureTransformed.cpp
-index 1818338dbcf..d24a0199f20 100644
---- a/src/Mod/PartDesign/App/FeatureTransformed.cpp
-+++ b/src/Mod/PartDesign/App/FeatureTransformed.cpp
-@@ -65,7 +65,7 @@ Transformed::Transformed()
- Originals.setSize(0);
- Placement.setStatus(App::Property::ReadOnly, true);
-
-- ADD_PROPERTY_TYPE(Refine,(0),"SketchBased",(App::PropertyType)(App::Prop_None),"Refine shape (clean up redundant edges) after adding/subtracting");
-+ ADD_PROPERTY_TYPE(Refine,(0),"Part Design",(App::PropertyType)(App::Prop_None),"Refine shape (clean up redundant edges) after adding/subtracting");
-
- //init Refine property
- Base::Reference<ParameterGrp> hGrp = App::GetApplication().GetUserParameter()
-@@ -89,7 +89,7 @@ Part::Feature* Transformed::getBaseObject(bool silent) const {
-
- const char* err = nullptr;
- const std::vector<App::DocumentObject*> & originals = Originals.getValues();
-- // NOTE: may be here supposed to be last origin but in order to keep the old behaviour keep here first
-+ // NOTE: may be here supposed to be last origin but in order to keep the old behaviour keep here first
- App::DocumentObject* firstOriginal = originals.empty() ? NULL : originals.front();
- if (firstOriginal) {
- if(firstOriginal->isDerivedFrom(Part::Feature::getClassTypeId())) {
-@@ -272,7 +272,7 @@ App::DocumentObjectExecReturn *Transformed::execute(void)
- fuseShape = fuseShape.makETransform(trsf);
- if (!cutShape.isNull())
- cutShape = cutShape.makETransform(trsf);
-- }
-+ }
- else {
- return new App::DocumentObjectExecReturn("Only additive and subtractive features can be transformed");
- }
-@@ -323,17 +323,17 @@ App::DocumentObjectExecReturn *Transformed::execute(void)
- //
- // Therefore, if the transformation succeeded, then we fuse it with the support now, before checking the intersection
- // of the next transformation.
--
-+
- /*v_transformations.push_back(t);
- v_transformedShapes.push_back(mkTrf.Shape());*/
--
-+
- // Note: Transformations that do not intersect the support are ignored in the overlap tests
--
-+
- //insert scheme here.
- /*TopoDS_Compound compoundTool;
- std::vector<TopoDS_Shape> individualTools;
- divideTools(v_transformedShapes, individualTools, compoundTool);*/
--
-+
- // Fuse/Cut the compounded transformed shapes with the support
- //TopoDS_Shape result;
-
-@@ -361,7 +361,7 @@ App::DocumentObjectExecReturn *Transformed::execute(void)
- shape = copy.Shape();
- if (shape.IsNull())
- return new App::DocumentObjectExecReturn("Transformed: Linked shape object is empty");
--
-+
- BRepBuilderAPI_Transform mkTrf(shape, *t, false); // No need to copy, now
- if (!mkTrf.IsDone())
- return new App::DocumentObjectExecReturn("Transformation failed", (*o));
-@@ -378,7 +378,7 @@ App::DocumentObjectExecReturn *Transformed::execute(void)
- } catch (Standard_Failure& e) {
- // Note: Ignoring this failure is probably pointless because if the intersection check fails, the later
- // fuse operation of the transformation result will also fail
--
-+
- std::string msg("Transformation: Intersection check failed");
- if (e.GetMessageString() != NULL)
- msg += std::string(": '") + e.GetMessageString() + "'";
-From 03da9d3501c6b596ad1828b99cb8d923cea56485 Mon Sep 17 00:00:00 2001
-From: David Osterberg <davost@gmail.com>
-Date: Sun, 21 Feb 2021 15:33:35 +0100
-Subject: [PATCH] PartDesign: Performance improvements in Transformed (pattern)
-
-- Use fuzzy fuse/cut method with tolerance Precision::Confusion()
-- Use parallel computation feature
-- Allow that individual patterned item fail to intersect the baseobject.
- Issue warning instead of error. This was done for performance reasons
- but it can also be considered a feature.
-- Simplify the code a bit
-- Distinguish between overlapping mode and non-overlapping mode. In non-overlapping mode
- the tool shapes are compounded instead of fused. For huge benefit in performance.
----
- src/Mod/PartDesign/App/FeatureTransformed.cpp | 191 ++++++++----------
- 1 file changed, 79 insertions(+), 112 deletions(-)
-
-diff --git a/src/Mod/PartDesign/App/FeatureTransformed.cpp b/src/Mod/PartDesign/App/FeatureTransformed.cpp
-index d24a0199f20..9e638f32d7f 100644
---- a/src/Mod/PartDesign/App/FeatureTransformed.cpp
-+++ b/src/Mod/PartDesign/App/FeatureTransformed.cpp
-@@ -36,6 +36,9 @@
- # include <Bnd_Box.hxx>
- #endif
-
-+#ifndef FC_DEBUG
-+#include <ctime>
-+#endif
-
- #include "FeatureTransformed.h"
- #include "FeatureMultiTransform.h"
-@@ -198,7 +201,11 @@ short Transformed::mustExecute() const
-
- App::DocumentObjectExecReturn *Transformed::execute(void)
- {
-- rejected.clear();
-+
-+#ifndef FC_DEBUG
-+ std::clock_t start0;
-+ start0 = std::clock();
-+#endif
-
- std::vector<App::DocumentObject*> originals = Originals.getValues();
- if (originals.empty()) // typically InsideMultiTransform
-@@ -246,10 +253,6 @@ App::DocumentObjectExecReturn *Transformed::execute(void)
- supportShape.setTransform(Base::Matrix4D());
- TopoDS_Shape support = supportShape.getShape();
-
-- typedef std::set<std::vector<gp_Trsf>::const_iterator> trsf_it;
-- typedef std::map<App::DocumentObject*, trsf_it> rej_it_map;
-- rej_it_map nointersect_trsfms;
--
- // NOTE: It would be possible to build a compound from all original addShapes/subShapes and then
- // transform the compounds as a whole. But we choose to apply the transformations to each
- // Original separately. This way it is easier to discover what feature causes a fuse/cut
-@@ -276,132 +279,93 @@ App::DocumentObjectExecReturn *Transformed::execute(void)
- else {
- return new App::DocumentObjectExecReturn("Only additive and subtractive features can be transformed");
- }
-+ TopoDS_Shape origShape = fuseShape.isNull()?cutShape.getShape():fuseShape.getShape();
-+
-+ TopoDS_Shape current = support;
-
-- // Transform the add/subshape and collect the resulting shapes for overlap testing
-- /*typedef std::vector<std::vector<gp_Trsf>::const_iterator> trsf_it_vec;
-- trsf_it_vec v_transformations;
-- std::vector<TopoDS_Shape> v_transformedShapes;*/
-+ BRep_Builder builder;
-+ TopoDS_Compound compShape;
-+ builder.MakeCompound(compShape);
-+ std::vector<TopoDS_Shape> shapes;
-+ bool overlapping = false;
-
- std::vector<gp_Trsf>::const_iterator t = transformations.begin();
- ++t; // Skip first transformation, which is always the identity transformation
- for (; t != transformations.end(); ++t) {
- // Make an explicit copy of the shape because the "true" parameter to BRepBuilderAPI_Transform
- // seems to be pretty broken
-- BRepBuilderAPI_Copy copy(fuseShape.isNull()?cutShape.getShape():fuseShape.getShape());
-+ BRepBuilderAPI_Copy copy(origShape);
-+
- shape = copy.Shape();
-- if (shape.IsNull())
-- return new App::DocumentObjectExecReturn("Transformed: Linked shape object is empty");
--
-- BRepBuilderAPI_Transform mkTrf(shape, *t, false); // No need to copy, now
-- if (!mkTrf.IsDone())
-- return new App::DocumentObjectExecReturn("Transformation failed", (*o));
--
-- shape = mkTrf.Shape();
-- try {
-- // Intersection checking for additive shape is redundant.
-- // Because according to CheckIntersection() source code, it is
-- // implemented using fusion and counting of the resulting
-- // solid, which will be done in the following modeling step
-- // anyway.
-- //
-- // There is little reason for doing intersection checking on
-- // subtractive shape either, because it does not produce
-- // multiple solids.
-- //
-- // if (!Part::checkIntersection(support, mkTrf.Shape(), false, true)) {
--
--
-- TopoDS_Shape current = support;
--
-- if (!fuseShape.isNull()) {
-- // We cannot wait to fuse a transformation with the support until all the transformations are done,
-- // because the "support" potentially changes with every transformation, basically when checking intersection
-- // above you need:
-- // 1. The original support
-- // 2. Any extra support gained by any previous transformation of any previous feature (multi-feature transform)
-- // 3. Any extra support gained by any previous transformation of this feature (feature multi-trasform)
-- //
-- // Therefore, if the transformation succeeded, then we fuse it with the support now, before checking the intersection
-- // of the next transformation.
--
-- /*v_transformations.push_back(t);
-- v_transformedShapes.push_back(mkTrf.Shape());*/
--
-- // Note: Transformations that do not intersect the support are ignored in the overlap tests
--
-- //insert scheme here.
-- /*TopoDS_Compound compoundTool;
-- std::vector<TopoDS_Shape> individualTools;
-- divideTools(v_transformedShapes, individualTools, compoundTool);*/
--
-- // Fuse/Cut the compounded transformed shapes with the support
-- //TopoDS_Shape result;
--
-- BRepAlgoAPI_Fuse mkFuse(current, shape);
-- if (!mkFuse.IsDone())
-- return new App::DocumentObjectExecReturn("Fusion with support failed", *o);
--
-- if(Part::TopoShape(current).countSubShapes(TopAbs_SOLID)
-- != Part::TopoShape(mkFuse.Shape()).countSubShapes(TopAbs_SOLID))
-- {
--#ifdef FC_DEBUG // do not write this in release mode because a message appears already in the task view
-- Base::Console().Warning("Transformed shape does not intersect support %s: Removed\n", (*o)->getNameInDocument());
-+
-+ shape.Move(*t);
-+ shapes.emplace_back(shape);
-+ builder.Add(compShape, shape);
-+
-+ overlapping = overlapping || (countSolids(TopoShape(origShape).fuse(shape))==1);
-+
-+ }
-+
-+ TopoDS_Shape toolShape;
-+
-+ if (overlapping) {
-+
-+#ifndef FC_DEBUG
-+ Base::Console().Message("Transformed: Overlapping feature mode (fusing tool shapes)\n");
- #endif
-- nointersect_trsfms[*o].insert(t);
-- continue;
-- }
-- // we have to get the solids (fuse sometimes creates compounds)
-- current = this->getSolid(mkFuse.Shape());
-- // lets check if the result is a solid
-- if (current.IsNull())
-- return new App::DocumentObjectExecReturn("Resulting shape is not a solid", *o);
--
-- if (!cutShape.isNull()) {
-- BRepBuilderAPI_Copy copy(cutShape.getShape());
-- shape = copy.Shape();
-- if (shape.IsNull())
-- return new App::DocumentObjectExecReturn("Transformed: Linked shape object is empty");
--
-- BRepBuilderAPI_Transform mkTrf(shape, *t, false); // No need to copy, now
-- if (!mkTrf.IsDone())
-- return new App::DocumentObjectExecReturn("Transformation failed", (*o));
-- shape = mkTrf.Shape();
-- }
-- }
-- if (!cutShape.isNull()) {
-- BRepAlgoAPI_Cut mkCut(current, shape);
-- if (!mkCut.IsDone())
-- return new App::DocumentObjectExecReturn("Cut out of support failed", *o);
-- current = mkCut.Shape();
-- }
-- support = current; // Use result of this operation for fuse/cut of next original
-- } catch (Standard_Failure& e) {
-- // Note: Ignoring this failure is probably pointless because if the intersection check fails, the later
-- // fuse operation of the transformation result will also fail
--
-- std::string msg("Transformation: Intersection check failed");
-- if (e.GetMessageString() != NULL)
-- msg += std::string(": '") + e.GetMessageString() + "'";
-- return new App::DocumentObjectExecReturn(msg.c_str());
-+
-+ toolShape = TopoShape(origShape).fuse(shapes, Precision::Confusion());
-+ } else {
-+
-+#ifndef FC_DEBUG
-+ Base::Console().Message("Transformed: Non-Overlapping feature mode (compound of tool shapes)\n");
-+#endif
-+
-+ toolShape = compShape;
-+ }
-+
-+ if (!fuseShape.isNull()) {
-+ std::unique_ptr<BRepAlgoAPI_BooleanOperation> mkBool(new BRepAlgoAPI_Fuse(current, toolShape));
-+ if (!mkBool->IsDone()) {
-+ std::stringstream error;
-+ error << "Boolean operation failed";
-+ return new App::DocumentObjectExecReturn(error.str());
-+ }
-+ current = mkBool->Shape();
-+ } else {
-+ std::unique_ptr<BRepAlgoAPI_BooleanOperation> mkBool(new BRepAlgoAPI_Cut(current, toolShape));
-+ if (!mkBool->IsDone()) {
-+ std::stringstream error;
-+ error << "Boolean operation failed";
-+ return new App::DocumentObjectExecReturn(error.str());
- }
-+ current = mkBool->Shape();
-+ }
-+ try {} catch (Standard_Failure& e) {
-+ // Note: Ignoring this failure is probably pointless because if the intersection check fails, the later
-+ // fuse operation of the transformation result will also fail
-+
-+ std::string msg("Transformation: Intersection check failed");
-+ if (e.GetMessageString() != NULL)
-+ msg += std::string(": '") + e.GetMessageString() + "'";
-+ return new App::DocumentObjectExecReturn(msg.c_str());
- }
-+
-+ support = current; // Use result of this operation for fuse/cut of next original
- }
-- support = refineShapeIfActive(support);
-
-- for (rej_it_map::const_iterator it = nointersect_trsfms.begin(); it != nointersect_trsfms.end(); ++it)
-- for (trsf_it::const_iterator it2 = it->second.begin(); it2 != it->second.end(); ++it2)
-- rejected[it->first].push_back(**it2);
-+ support = refineShapeIfActive(support);
-
- int solidCount = countSolids(support);
- if (solidCount > 1) {
-- return new App::DocumentObjectExecReturn("Transformed: Result has multiple solids. This is not supported at this time.");
-+ Base::Console().Warning("Transformed: Result has multiple solids. Only keeping the first.\n");
- }
-
-- this->Shape.setValue(getSolid(support));
-+ this->Shape.setValue(getSolid(support)); // picking the first solid
-
-- if (rejected.size() > 0) {
-- return new App::DocumentObjectExecReturn("Transformation failed");
-- }
-+#ifndef FC_DEBUG
-+ Base::Console().Message("Transformed: Elapsed CPU time: %f s\n", (std::clock() - start0 ) / (double)(CLOCKS_PER_SEC));
-+#endif
-
- return App::DocumentObject::StdReturn;
- }
-@@ -412,6 +376,9 @@ TopoDS_Shape Transformed::refineShapeIfActive(const TopoDS_Shape& oldShape) cons
- try {
- Part::BRepBuilderAPI_RefineModel mkRefine(oldShape);
- TopoDS_Shape resShape = mkRefine.Shape();
-+ if (!TopoShape(resShape).isClosed()) {
-+ return oldShape;
-+ }
- return resShape;
- }
- catch (Standard_Failure&) {
-From fecf9c2e8492ddab0858b4af23b56da36bff6f6a Mon Sep 17 00:00:00 2001
-From: David Osterberg <davost@gmail.com>
-Date: Tue, 23 Feb 2021 13:35:05 +0100
-Subject: [PATCH] PartDesign: Transformed: Allow explict selection of overlap
- mode
-
----
- src/Mod/PartDesign/App/FeatureTransformed.cpp | 23 +++++++++++--------
- src/Mod/PartDesign/App/FeatureTransformed.h | 8 +++++--
- 2 files changed, 19 insertions(+), 12 deletions(-)
-
-diff --git a/src/Mod/PartDesign/App/FeatureTransformed.cpp b/src/Mod/PartDesign/App/FeatureTransformed.cpp
-index 9e638f32d7f..cd35a4e3e69 100644
---- a/src/Mod/PartDesign/App/FeatureTransformed.cpp
-+++ b/src/Mod/PartDesign/App/FeatureTransformed.cpp
-@@ -60,6 +60,8 @@ using namespace PartDesign;
-
- namespace PartDesign {
-
-+const char* Transformed::OverlapEnums[] = { "Detect", "Overlap mode", "Non-overlap mode", NULL};
-+
- PROPERTY_SOURCE(PartDesign::Transformed, PartDesign::Feature)
-
- Transformed::Transformed()
-@@ -69,6 +71,8 @@ Transformed::Transformed()
- Placement.setStatus(App::Property::ReadOnly, true);
-
- ADD_PROPERTY_TYPE(Refine,(0),"Part Design",(App::PropertyType)(App::Prop_None),"Refine shape (clean up redundant edges) after adding/subtracting");
-+ ADD_PROPERTY_TYPE(Overlap, (0L), "Transform", App::Prop_None, "Feature overlapping behaviour");
-+ Overlap.setEnums(OverlapEnums);
-
- //init Refine property
- Base::Reference<ParameterGrp> hGrp = App::GetApplication().GetUserParameter()
-@@ -201,6 +205,8 @@ short Transformed::mustExecute() const
-
- App::DocumentObjectExecReturn *Transformed::execute(void)
- {
-+ std::string overlapMode = Overlap.getValueAsString();
-+ bool overlapDetectionMode = overlapMode == "Detect";
-
- #ifndef FC_DEBUG
- std::clock_t start0;
-@@ -302,27 +308,24 @@ App::DocumentObjectExecReturn *Transformed::execute(void)
- shapes.emplace_back(shape);
- builder.Add(compShape, shape);
-
-- overlapping = overlapping || (countSolids(TopoShape(origShape).fuse(shape))==1);
-+ if (overlapDetectionMode)
-+ overlapping = overlapping || (countSolids(TopoShape(origShape).fuse(shape))==1);
-
- }
-
- TopoDS_Shape toolShape;
-
-- if (overlapping) {
--
- #ifndef FC_DEBUG
-+ if (overlapping || overlapMode == "Overlap mode")
- Base::Console().Message("Transformed: Overlapping feature mode (fusing tool shapes)\n");
--#endif
--
-- toolShape = TopoShape(origShape).fuse(shapes, Precision::Confusion());
-- } else {
--
--#ifndef FC_DEBUG
-+ else
- Base::Console().Message("Transformed: Non-Overlapping feature mode (compound of tool shapes)\n");
- #endif
-
-+ if (overlapping || overlapMode == "Overlap mode")
-+ toolShape = TopoShape(origShape).fuse(shapes, Precision::Confusion());
-+ else
- toolShape = compShape;
-- }
-
- if (!fuseShape.isNull()) {
- std::unique_ptr<BRepAlgoAPI_BooleanOperation> mkBool(new BRepAlgoAPI_Fuse(current, toolShape));
-diff --git a/src/Mod/PartDesign/App/FeatureTransformed.h b/src/Mod/PartDesign/App/FeatureTransformed.h
-index ccb807ba433..b3ab64bc774 100644
---- a/src/Mod/PartDesign/App/FeatureTransformed.h
-+++ b/src/Mod/PartDesign/App/FeatureTransformed.h
-@@ -50,12 +50,13 @@ class PartDesignExport Transformed : public PartDesign::Feature
- App::PropertyLinkList Originals;
-
- App::PropertyBool Refine;
-+ App::PropertyEnumeration Overlap;
-
- /**
- * Returns the BaseFeature property's object(if any) otherwise return first original,
- * which serves as "Support" for old style workflows
- * @param silent if couldn't determine the base feature and silent == true,
-- * silently return a nullptr, otherwise throw Base::Exception.
-+ * silently return a nullptr, otherwise throw Base::Exception.
- * Default is false.
- */
- virtual Part::Feature* getBaseObject(bool silent=false) const;
-@@ -93,9 +94,12 @@ class PartDesignExport Transformed : public PartDesign::Feature
- virtual void positionBySupport(void);
- TopoDS_Shape refineShapeIfActive(const TopoDS_Shape&) const;
- void divideTools(const std::vector<TopoDS_Shape> &toolsIn, std::vector<TopoDS_Shape> &individualsOut,
-- TopoDS_Compound &compoundOut) const;
-+ TopoDS_Compound &compoundOut) const;
-
- rejectedMap rejected;
-+
-+private:
-+ static const char* OverlapEnums[];
- };
-
- } //namespace PartDesign
-From 8453d415150f289d36dfe4cbe6b91dfc512e82fe Mon Sep 17 00:00:00 2001
-From: David Osterberg <davost@gmail.com>
-Date: Sun, 28 Feb 2021 10:10:29 +0100
-Subject: [PATCH] PartDesign: Transformed. Fix regression for Mirrored, and
- multiple features
-
----
- src/Mod/PartDesign/App/FeatureTransformed.cpp | 13 ++++++++++---
- 1 file changed, 10 insertions(+), 3 deletions(-)
-
-diff --git a/src/Mod/PartDesign/App/FeatureTransformed.cpp b/src/Mod/PartDesign/App/FeatureTransformed.cpp
-index cd35a4e3e69..d241e767bf8 100644
---- a/src/Mod/PartDesign/App/FeatureTransformed.cpp
-+++ b/src/Mod/PartDesign/App/FeatureTransformed.cpp
-@@ -296,7 +296,8 @@ App::DocumentObjectExecReturn *Transformed::execute(void)
- bool overlapping = false;
-
- std::vector<gp_Trsf>::const_iterator t = transformations.begin();
-- ++t; // Skip first transformation, which is always the identity transformation
-+ //++t; // Skip first transformation, which is always the identity transformation
-+ bool first = true;
- for (; t != transformations.end(); ++t) {
- // Make an explicit copy of the shape because the "true" parameter to BRepBuilderAPI_Transform
- // seems to be pretty broken
-@@ -304,13 +305,19 @@ App::DocumentObjectExecReturn *Transformed::execute(void)
-
- shape = copy.Shape();
-
-- shape.Move(*t);
-+ BRepBuilderAPI_Transform mkTrf(shape, *t, false); // No need to copy, now
-+ if (!mkTrf.IsDone())
-+ return new App::DocumentObjectExecReturn("Transformation failed", (*o));
-+ shape = mkTrf.Shape();
-+
- shapes.emplace_back(shape);
- builder.Add(compShape, shape);
-
-- if (overlapDetectionMode)
-+ if (overlapDetectionMode && !first)
- overlapping = overlapping || (countSolids(TopoShape(origShape).fuse(shape))==1);
-
-+ if (first)
-+ first = false;
- }
-
- TopoDS_Shape toolShape;
-From 3131b97aa88736ac628428a8ceb025d9b7a8a965 Mon Sep 17 00:00:00 2001
-From: David Osterberg <davost@gmail.com>
-Date: Sun, 28 Feb 2021 13:35:14 +0100
-Subject: [PATCH] PartDesign: Transformed. Fix regression in preview
-
----
- src/Mod/PartDesign/App/FeatureTransformed.cpp | 21 ++++-
- src/Mod/PartDesign/App/FeatureTransformed.h | 10 +--
- .../Gui/ViewProviderTransformed.cpp | 78 ++++++++-----------
- 3 files changed, 56 insertions(+), 53 deletions(-)
-
-diff --git a/src/Mod/PartDesign/App/FeatureTransformed.cpp b/src/Mod/PartDesign/App/FeatureTransformed.cpp
-index d241e767bf8..1acf6193b2a 100644
---- a/src/Mod/PartDesign/App/FeatureTransformed.cpp
-+++ b/src/Mod/PartDesign/App/FeatureTransformed.cpp
-@@ -296,7 +296,6 @@ App::DocumentObjectExecReturn *Transformed::execute(void)
- bool overlapping = false;
-
- std::vector<gp_Trsf>::const_iterator t = transformations.begin();
-- //++t; // Skip first transformation, which is always the identity transformation
- bool first = true;
- for (; t != transformations.end(); ++t) {
- // Make an explicit copy of the shape because the "true" parameter to BRepBuilderAPI_Transform
-@@ -372,6 +371,7 @@ App::DocumentObjectExecReturn *Transformed::execute(void)
- }
-
- this->Shape.setValue(getSolid(support)); // picking the first solid
-+ rejected = getRemainingSolids(support);
-
- #ifndef FC_DEBUG
- Base::Console().Message("Transformed: Elapsed CPU time: %f s\n", (std::clock() - start0 ) / (double)(CLOCKS_PER_SEC));
-@@ -454,4 +454,23 @@ void Transformed::divideTools(const std::vector<TopoDS_Shape> &toolsIn, std::vec
- }
- }
-
-+TopoDS_Shape Transformed::getRemainingSolids(const TopoDS_Shape& shape)
-+{
-+ BRep_Builder builder;
-+ TopoDS_Compound compShape;
-+ builder.MakeCompound(compShape);
-+
-+ if (shape.IsNull())
-+ Standard_Failure::Raise("Shape is null");
-+ TopExp_Explorer xp;
-+ xp.Init(shape,TopAbs_SOLID);
-+ xp.Next(); // skip the first
-+
-+ for (; xp.More(); xp.Next()) {
-+ builder.Add(compShape, xp.Current());
-+ }
-+
-+ return compShape;
-+}
-+
- }
-diff --git a/src/Mod/PartDesign/App/FeatureTransformed.h b/src/Mod/PartDesign/App/FeatureTransformed.h
-index b3ab64bc774..e3068714976 100644
---- a/src/Mod/PartDesign/App/FeatureTransformed.h
-+++ b/src/Mod/PartDesign/App/FeatureTransformed.h
-@@ -83,20 +83,18 @@ class PartDesignExport Transformed : public PartDesign::Feature
- short mustExecute() const;
- //@}
-
-- /** returns a list of the transformations that where rejected during the last execute
-+ /** returns the compound of the shapes that were rejected during the last execute
- * because they did not overlap with the support
- */
-- typedef std::map<App::DocumentObject*, std::list<gp_Trsf> > rejectedMap;
-- const rejectedMap getRejectedTransformations(void) { return rejected; }
-+ TopoDS_Shape rejected;
-
- protected:
- void Restore(Base::XMLReader &reader);
- virtual void positionBySupport(void);
- TopoDS_Shape refineShapeIfActive(const TopoDS_Shape&) const;
- void divideTools(const std::vector<TopoDS_Shape> &toolsIn, std::vector<TopoDS_Shape> &individualsOut,
-- TopoDS_Compound &compoundOut) const;
--
-- rejectedMap rejected;
-+ TopoDS_Compound &compoundOut) const;
-+ static TopoDS_Shape getRemainingSolids(const TopoDS_Shape&);
-
- private:
- static const char* OverlapEnums[];
-diff --git a/src/Mod/PartDesign/Gui/ViewProviderTransformed.cpp b/src/Mod/PartDesign/Gui/ViewProviderTransformed.cpp
-index 1f83738f164..0d402d0b71a 100644
---- a/src/Mod/PartDesign/Gui/ViewProviderTransformed.cpp
-+++ b/src/Mod/PartDesign/Gui/ViewProviderTransformed.cpp
-@@ -157,10 +157,15 @@ void ViewProviderTransformed::recomputeFeature(bool recompute)
- PartDesign::Transformed* pcTransformed = static_cast<PartDesign::Transformed*>(getObject());
- if(recompute || (pcTransformed->isError() || pcTransformed->mustExecute()))
- pcTransformed->recomputeFeature(true);
-- const PartDesign::Transformed::rejectedMap &rejected_trsf = pcTransformed->getRejectedTransformations();
-+
- unsigned rejected = 0;
-- for (PartDesign::Transformed::rejectedMap::const_iterator r = rejected_trsf.begin(); r != rejected_trsf.end(); r++)
-- rejected += r->second.size();
-+ TopoDS_Shape cShape = pcTransformed->rejected;
-+ TopExp_Explorer xp;
-+ xp.Init(cShape, TopAbs_SOLID);
-+ for (; xp.More(); xp.Next()) {
-+ rejected++;
-+ }
-+
- QString msg = QString::fromLatin1("%1");
- if (rejected > 0) {
- msg = QString::fromLatin1("<font color='orange'>%1<br/></font>\r\n%2");
-@@ -192,21 +197,9 @@ void ViewProviderTransformed::recomputeFeature(bool recompute)
- pcRejectedRoot ->removeChild(7);
- }
-
-- for (PartDesign::Transformed::rejectedMap::const_iterator o = rejected_trsf.begin(); o != rejected_trsf.end(); o++) {
-- if (o->second.empty()) continue;
--
-- Part::TopoShape fuseShape;
-- Part::TopoShape cutShape;
-- if ((o->first)->getTypeId().isDerivedFrom(PartDesign::FeatureAddSub::getClassTypeId())) {
-- PartDesign::FeatureAddSub* feature = static_cast<PartDesign::FeatureAddSub*>(o->first);
-- feature->getAddSubShape(fuseShape, cutShape);
-- }
--
-- if (fuseShape.isNull()) continue;
--
-- // Display the rejected transformations in red
-- TopoDS_Shape cShape(fuseShape.getShape());
-+ // Display the rejected transformations in red
-
-+ if (rejected > 0) {
- try {
- // calculating the deflection value
- Standard_Real xMin, yMin, zMin, xMax, yMax, zMax;
-@@ -333,41 +326,34 @@ void ViewProviderTransformed::recomputeFeature(bool recompute)
- // counting up the per Face offsets
- FaceNodeOffset += nbNodesInFace;
- FaceTriaOffset += nbTriInFace;
-- }
-
-- // normalize all normals
-- for (int i=0; i < nbrNodes; i++)
-- norms[i].normalize();
--
-- // end the editing of the nodes
-- rejectedCoords ->point .finishEditing();
-- rejectedNorms ->vector .finishEditing();
-- rejectedFaceSet ->coordIndex .finishEditing();
--
-- // fill in the transformation matrices
-- SoMultipleCopy* rejectedTrfms = new SoMultipleCopy();
-- rejectedTrfms->matrix.setNum((o->second).size());
-- SbMatrix* mats = rejectedTrfms->matrix.startEditing();
--
-- std::list<gp_Trsf>::const_iterator trsf = (o->second).begin();
-- for (unsigned int i=0; i < (o->second).size(); i++,trsf++) {
-- Base::Matrix4D mat;
-- Part::TopoShape::convertToMatrix(*trsf,mat);
-- mats[i] = convert(mat);
-+
-+ // normalize all normals
-+ for (int i=0; i < nbrNodes; i++)
-+ norms[i].normalize();
-+
-+ // end the editing of the nodes
-+ rejectedCoords ->point .finishEditing();
-+ rejectedNorms ->vector .finishEditing();
-+ rejectedFaceSet ->coordIndex .finishEditing();
-+
-+ // fill in the transformation matrices
-+ SoMultipleCopy* rejectedTrfms = new SoMultipleCopy();
-+
-+
-+ rejectedTrfms->matrix.finishEditing();
-+ rejectedTrfms->addChild(rejectedFaceSet);
-+ SoSeparator* sep = new SoSeparator();
-+ sep->addChild(rejectedCoords);
-+ sep->addChild(rejectedNorms);
-+ sep->addChild(rejectedTrfms);
-+ pcRejectedRoot->addChild(sep);
- }
-- rejectedTrfms->matrix.finishEditing();
-- rejectedTrfms->addChild(rejectedFaceSet);
-- SoSeparator* sep = new SoSeparator();
-- sep->addChild(rejectedCoords);
-- sep->addChild(rejectedNorms);
-- sep->addChild(rejectedTrfms);
-- pcRejectedRoot->addChild(sep);
- }
- catch (...) {
- Base::Console().Error("Cannot compute Inventor representation for the rejected transformations of shape of %s.\n",
-- pcTransformed->getNameInDocument());
-+ pcTransformed->getNameInDocument());
- }
- }
--
- }
-
-From 5b4c246944c72459016efff6ae903ac66c090991 Mon Sep 17 00:00:00 2001
-From: wmayer <wmayer@users.sourceforge.net>
-Date: Fri, 8 Oct 2021 22:32:26 +0200
-Subject: [PATCH] PD: simplify code to display rejected shape and move it to
- its own function
-
----
- .../Gui/ViewProviderTransformed.cpp | 262 ++++++++----------
- .../PartDesign/Gui/ViewProviderTransformed.h | 3 +
- 2 files changed, 119 insertions(+), 146 deletions(-)
-
-diff --git a/src/Mod/PartDesign/Gui/ViewProviderTransformed.cpp b/src/Mod/PartDesign/Gui/ViewProviderTransformed.cpp
-index 0d402d0b71a..0e3b7f0b068 100644
---- a/src/Mod/PartDesign/Gui/ViewProviderTransformed.cpp
-+++ b/src/Mod/PartDesign/Gui/ViewProviderTransformed.cpp
-@@ -55,6 +55,7 @@
- #include <Gui/Application.h>
- #include <Gui/Command.h>
- #include <Mod/Part/App/TopoShape.h>
-+#include <Mod/Part/App/Tools.h>
- #include <Mod/PartDesign/App/FeatureTransformed.h>
- #include <Mod/PartDesign/App/FeatureAddSub.h>
- #include <Mod/PartDesign/App/FeatureMultiTransform.h>
-@@ -198,162 +199,131 @@ void ViewProviderTransformed::recomputeFeature(bool recompute)
- }
-
- // Display the rejected transformations in red
--
- if (rejected > 0) {
-- try {
-- // calculating the deflection value
-- Standard_Real xMin, yMin, zMin, xMax, yMax, zMax;
-- {
-- Bnd_Box bounds;
-- BRepBndLib::Add(cShape, bounds);
-- bounds.SetGap(0.0);
-- bounds.Get(xMin, yMin, zMin, xMax, yMax, zMax);
-- }
-- Standard_Real deflection = ((xMax-xMin)+(yMax-yMin)+(zMax-zMin))/300.0 * Deviation.getValue();
-+ showRejectedShape(cShape);
-+ }
-+}
-
-- // create or use the mesh on the data structure
-- // Note: This DOES have an effect on cShape
-+void ViewProviderTransformed::showRejectedShape(TopoDS_Shape shape)
-+{
-+ try {
-+ // calculating the deflection value
-+ Standard_Real xMin, yMin, zMin, xMax, yMax, zMax;
-+ {
-+ Bnd_Box bounds;
-+ BRepBndLib::Add(shape, bounds);
-+ bounds.SetGap(0.0);
-+ bounds.Get(xMin, yMin, zMin, xMax, yMax, zMax);
-+ }
-+ Standard_Real deflection = ((xMax-xMin)+(yMax-yMin)+(zMax-zMin))/300.0 * Deviation.getValue();
-+
-+ // create or use the mesh on the data structure
-+ // Note: This DOES have an effect on shape
- #if OCC_VERSION_HEX >= 0x060600
-- Standard_Real AngDeflectionRads = AngularDeflection.getValue() / 180.0 * M_PI;
-- BRepMesh_IncrementalMesh(cShape,deflection,Standard_False,
-- AngDeflectionRads,Standard_True);
-+ Standard_Real AngDeflectionRads = AngularDeflection.getValue() / 180.0 * M_PI;
-+ BRepMesh_IncrementalMesh(shape, deflection, Standard_False, AngDeflectionRads, Standard_True);
- #else
-- BRepMesh_IncrementalMesh(cShape,deflection);
-+ BRepMesh_IncrementalMesh(shape, deflection);
- #endif
-- // We must reset the location here because the transformation data
-- // are set in the placement property
-- TopLoc_Location aLoc;
-- cShape.Location(aLoc);
--
-- // count triangles and nodes in the mesh
-- int nbrTriangles=0, nbrNodes=0;
-- TopExp_Explorer Ex;
-- for (Ex.Init(cShape,TopAbs_FACE);Ex.More();Ex.Next()) {
-- Handle (Poly_Triangulation) mesh = BRep_Tool::Triangulation(TopoDS::Face(Ex.Current()), aLoc);
-- // Note: we must also count empty faces
-- if (!mesh.IsNull()) {
-- nbrTriangles += mesh->NbTriangles();
-- nbrNodes += mesh->NbNodes();
-- }
-+ // We must reset the location here because the transformation data
-+ // are set in the placement property
-+ TopLoc_Location aLoc;
-+ shape.Location(aLoc);
-+
-+ // count triangles and nodes in the mesh
-+ int nbrTriangles=0, nbrNodes=0;
-+ TopExp_Explorer Ex;
-+ for (Ex.Init(shape, TopAbs_FACE); Ex.More(); Ex.Next()) {
-+ Handle (Poly_Triangulation) mesh = BRep_Tool::Triangulation(TopoDS::Face(Ex.Current()), aLoc);
-+ // Note: we must also count empty faces
-+ if (!mesh.IsNull()) {
-+ nbrTriangles += mesh->NbTriangles();
-+ nbrNodes += mesh->NbNodes();
- }
-+ }
-
-- // create memory for the nodes and indexes
-- SoCoordinate3* rejectedCoords = new SoCoordinate3();
-- rejectedCoords ->point .setNum(nbrNodes);
-- SoNormal* rejectedNorms = new SoNormal();
-- rejectedNorms ->vector .setNum(nbrNodes);
-- SoIndexedFaceSet* rejectedFaceSet = new SoIndexedFaceSet();
-- rejectedFaceSet ->coordIndex .setNum(nbrTriangles*4);
-+ // create memory for the nodes and indexes
-+ SoCoordinate3* rejectedCoords = new SoCoordinate3();
-+ rejectedCoords ->point .setNum(nbrNodes);
-+ SoNormal* rejectedNorms = new SoNormal();
-+ rejectedNorms ->vector .setNum(nbrNodes);
-+ SoIndexedFaceSet* rejectedFaceSet = new SoIndexedFaceSet();
-+ rejectedFaceSet ->coordIndex .setNum(nbrTriangles*4);
-+
-+ // get the raw memory for fast fill up
-+ SbVec3f* verts = rejectedCoords ->point .startEditing();
-+ SbVec3f* norms = rejectedNorms ->vector .startEditing();
-+ int32_t* index = rejectedFaceSet ->coordIndex .startEditing();
-+
-+ // preset the normal vector with null vector
-+ for (int i=0; i < nbrNodes; i++)
-+ norms[i]= SbVec3f(0.0,0.0,0.0);
-+
-+ int FaceNodeOffset=0,FaceTriaOffset=0;
-+ for (Ex.Init(shape, TopAbs_FACE); Ex.More(); Ex.Next()) {
-+ const TopoDS_Face &actFace = TopoDS::Face(Ex.Current());
-+
-+ // get triangulation
-+ std::vector<gp_Pnt> points;
-+ std::vector<Poly_Triangle> facets;
-+ if (!Part::Tools::getTriangulation(actFace, points, facets))
-+ continue;
-+
-+ // get normal per vertex
-+ std::vector<gp_Vec> vertexnormals;
-+ Part::Tools::getPointNormals(points, facets, vertexnormals);
-+
-+ // getting size of node and triangle array of this face
-+ std::size_t nbNodesInFace = points.size();
-+ std::size_t nbTriInFace = facets.size();
-+
-+ for (std::size_t i = 0; i < points.size(); i++) {
-+ verts[FaceNodeOffset+i] = SbVec3f(points[i].X(), points[i].Y(), points[i].Z());
-+ }
-
-- // get the raw memory for fast fill up
-- SbVec3f* verts = rejectedCoords ->point .startEditing();
-- SbVec3f* norms = rejectedNorms ->vector .startEditing();
-- int32_t* index = rejectedFaceSet ->coordIndex .startEditing();
-+ for (std::size_t i = 0; i < vertexnormals.size(); i++) {
-+ norms[FaceNodeOffset+i] = SbVec3f(vertexnormals[i].X(), vertexnormals[i].Y(), vertexnormals[i].Z());
-+ }
-
-- // preset the normal vector with null vector
-- for (int i=0; i < nbrNodes; i++)
-- norms[i]= SbVec3f(0.0,0.0,0.0);
--
-- int ii = 0,FaceNodeOffset=0,FaceTriaOffset=0;
-- for (Ex.Init(cShape, TopAbs_FACE); Ex.More(); Ex.Next(),ii++) {
-- TopLoc_Location aLoc;
-- const TopoDS_Face &actFace = TopoDS::Face(Ex.Current());
-- // get the mesh of the shape
-- Handle (Poly_Triangulation) mesh = BRep_Tool::Triangulation(actFace,aLoc);
-- if (mesh.IsNull()) continue;
--
-- // getting the transformation of the shape/face
-- gp_Trsf myTransf;
-- Standard_Boolean identity = true;
-- if (!aLoc.IsIdentity()) {
-- identity = false;
-- myTransf = aLoc.Transformation();
-- }
--
-- // getting size of node and triangle array of this face
-- int nbNodesInFace = mesh->NbNodes();
-- int nbTriInFace = mesh->NbTriangles();
-- // check orientation
-- TopAbs_Orientation orient = actFace.Orientation();
--
-- // cycling through the poly mesh
-- const Poly_Array1OfTriangle& Triangles = mesh->Triangles();
-- const TColgp_Array1OfPnt& Nodes = mesh->Nodes();
-- for (int g=1; g <= nbTriInFace; g++) {
-- // Get the triangle
-- Standard_Integer N1,N2,N3;
-- Triangles(g).Get(N1,N2,N3);
--
-- // change orientation of the triangle if the face is reversed
-- if ( orient != TopAbs_FORWARD ) {
-- Standard_Integer tmp = N1;
-- N1 = N2;
-- N2 = tmp;
-- }
--
-- // get the 3 points of this triangle
-- gp_Pnt V1(Nodes(N1)), V2(Nodes(N2)), V3(Nodes(N3));
--
-- // transform the vertices to the place of the face
-- if (!identity) {
-- V1.Transform(myTransf);
-- V2.Transform(myTransf);
-- V3.Transform(myTransf);
-- }
--
-- // calculating per vertex normals
-- // Calculate triangle normal
-- gp_Vec v1(V1.X(),V1.Y(),V1.Z()),v2(V2.X(),V2.Y(),V2.Z()),v3(V3.X(),V3.Y(),V3.Z());
-- gp_Vec Normal = (v2-v1)^(v3-v1);
--
-- // add the triangle normal to the vertex normal for all points of this triangle
-- norms[FaceNodeOffset+N1-1] += SbVec3f(Normal.X(),Normal.Y(),Normal.Z());
-- norms[FaceNodeOffset+N2-1] += SbVec3f(Normal.X(),Normal.Y(),Normal.Z());
-- norms[FaceNodeOffset+N3-1] += SbVec3f(Normal.X(),Normal.Y(),Normal.Z());
--
-- // set the vertices
-- verts[FaceNodeOffset+N1-1].setValue((float)(V1.X()),(float)(V1.Y()),(float)(V1.Z()));
-- verts[FaceNodeOffset+N2-1].setValue((float)(V2.X()),(float)(V2.Y()),(float)(V2.Z()));
-- verts[FaceNodeOffset+N3-1].setValue((float)(V3.X()),(float)(V3.Y()),(float)(V3.Z()));
--
-- // set the index vector with the 3 point indexes and the end delimiter
-- index[FaceTriaOffset*4+4*(g-1)] = FaceNodeOffset+N1-1;
-- index[FaceTriaOffset*4+4*(g-1)+1] = FaceNodeOffset+N2-1;
-- index[FaceTriaOffset*4+4*(g-1)+2] = FaceNodeOffset+N3-1;
-- index[FaceTriaOffset*4+4*(g-1)+3] = SO_END_FACE_INDEX;
-- }
--
-- // counting up the per Face offsets
-- FaceNodeOffset += nbNodesInFace;
-- FaceTriaOffset += nbTriInFace;
--
--
-- // normalize all normals
-- for (int i=0; i < nbrNodes; i++)
-- norms[i].normalize();
--
-- // end the editing of the nodes
-- rejectedCoords ->point .finishEditing();
-- rejectedNorms ->vector .finishEditing();
-- rejectedFaceSet ->coordIndex .finishEditing();
--
-- // fill in the transformation matrices
-- SoMultipleCopy* rejectedTrfms = new SoMultipleCopy();
--
--
-- rejectedTrfms->matrix.finishEditing();
-- rejectedTrfms->addChild(rejectedFaceSet);
-- SoSeparator* sep = new SoSeparator();
-- sep->addChild(rejectedCoords);
-- sep->addChild(rejectedNorms);
-- sep->addChild(rejectedTrfms);
-- pcRejectedRoot->addChild(sep);
-+ // cycling through the poly mesh
-+ for (std::size_t g=0; g < nbTriInFace; g++) {
-+ // Get the triangle
-+ Standard_Integer N1,N2,N3;
-+ facets[g].Get(N1,N2,N3);
-+
-+ // set the index vector with the 3 point indexes and the end delimiter
-+ index[FaceTriaOffset*4+4*g] = FaceNodeOffset+N1;
-+ index[FaceTriaOffset*4+4*g+1] = FaceNodeOffset+N2;
-+ index[FaceTriaOffset*4+4*g+2] = FaceNodeOffset+N3;
-+ index[FaceTriaOffset*4+4*g+3] = SO_END_FACE_INDEX;
- }
-- }
-- catch (...) {
-- Base::Console().Error("Cannot compute Inventor representation for the rejected transformations of shape of %s.\n",
-- pcTransformed->getNameInDocument());
-+
-+ // counting up the per Face offsets
-+ FaceNodeOffset += nbNodesInFace;
-+ FaceTriaOffset += nbTriInFace;
-+
-+ // normalize all normals
-+ for (int i=0; i < nbrNodes; i++)
-+ norms[i].normalize();
-+
-+ // end the editing of the nodes
-+ rejectedCoords ->point .finishEditing();
-+ rejectedNorms ->vector .finishEditing();
-+ rejectedFaceSet ->coordIndex .finishEditing();
-+
-+ // fill in the transformation matrices
-+ SoMultipleCopy* rejectedTrfms = new SoMultipleCopy();
-+ rejectedTrfms->matrix.finishEditing();
-+ rejectedTrfms->addChild(rejectedFaceSet);
-+ SoSeparator* sep = new SoSeparator();
-+ sep->addChild(rejectedCoords);
-+ sep->addChild(rejectedNorms);
-+ sep->addChild(rejectedTrfms);
-+ pcRejectedRoot->addChild(sep);
- }
- }
-+ catch (...) {
-+ Base::Console().Error("Cannot compute Inventor representation for the rejected transformations of shape of %s.\n",
-+ getObject()->getNameInDocument());
-+ }
- }
--
-diff --git a/src/Mod/PartDesign/Gui/ViewProviderTransformed.h b/src/Mod/PartDesign/Gui/ViewProviderTransformed.h
-index 50a72ca1aeb..ec4b8e12263 100644
---- a/src/Mod/PartDesign/Gui/ViewProviderTransformed.h
-+++ b/src/Mod/PartDesign/Gui/ViewProviderTransformed.h
-@@ -68,6 +68,9 @@ class PartDesignGuiExport ViewProviderTransformed : public ViewProvider
- public:
- void recomputeFeature(bool recompute=true);
- QString getMessage() const {return diagMessage;}
-+
-+private:
-+ void showRejectedShape(TopoDS_Shape shape);
- };
-
-
-From f55c46cc86344a6d7389156c015194f7d0fd2b63 Mon Sep 17 00:00:00 2001
-From: wmayer <wmayer@users.sourceforge.net>
-Date: Sat, 13 Mar 2021 14:47:39 +0100
-Subject: [PATCH] PD: adjust unit test for mirrored offset that doesn't fail
- any more
-
----
- src/Mod/PartDesign/PartDesignTests/TestMirrored.py | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/src/Mod/PartDesign/PartDesignTests/TestMirrored.py b/src/Mod/PartDesign/PartDesignTests/TestMirrored.py
-index fd6b32a34f2..7faf0ffb971 100644
---- a/src/Mod/PartDesign/PartDesignTests/TestMirrored.py
-+++ b/src/Mod/PartDesign/PartDesignTests/TestMirrored.py
-@@ -69,7 +69,7 @@ def testMirroredPrimitiveCase(self):
- self.Doc.recompute()
- self.assertAlmostEqual(self.Mirrored.Shape.Volume, 2.0)
-
-- def testMirroredOffsetFailureCase(self):
-+ def testMirroredOffsetCase(self):
- self.Body = self.Doc.addObject('PartDesign::Body','Body')
- self.Rect = self.Doc.addObject('Sketcher::SketchObject','Rect')
- self.Body.addObject(self.Rect)
-@@ -85,7 +85,7 @@ def testMirroredOffsetFailureCase(self):
- self.Mirrored.MirrorPlane = (self.Rect, ["H_Axis"])
- self.Body.addObject(self.Mirrored)
- self.Doc.recompute()
-- self.assertIn("Invalid", self.Mirrored.State)
-+ self.assertIn("Up-to-date", self.Mirrored.State)
-
- def tearDown(self):
- #closing doc
diff --git a/testing/freecad/resourceDirectory.patch b/testing/freecad/resourceDirectory.patch
index 65227ae7e86..a2a16d1fe51 100644
--- a/testing/freecad/resourceDirectory.patch
+++ b/testing/freecad/resourceDirectory.patch
@@ -1,4 +1,4 @@
---- ./cMake/FreeCAD_Helpers/ConfigureCMakeVariables.cmake
+--- ./cMake/FreeCAD_Helpers/ConfigureCMakeVariables.cmake.orig
+++ ./cMake/FreeCAD_Helpers/ConfigureCMakeVariables.cmake
@@ -23,7 +23,7 @@
"Path to the directory containing PyCXX's cxxextensions.c source file")
@@ -6,6 +6,6 @@
# used as compiler defines
- set(RESOURCEDIR "${CMAKE_INSTALL_DATADIR}")
+ set(RESOURCEDIR "../../share/freecad")
+ set(LIBRARYDIR "${CMAKE_INSTALL_LIBDIR}")
set(DOCDIR "${CMAKE_INSTALL_DOCDIR}")
- message(STATUS "prefix: ${CMAKE_INSTALL_PREFIX}")
diff --git a/testing/freecad/tests.patch b/testing/freecad/tests.patch
index a8531f2e62e..4b63a2061db 100644
--- a/testing/freecad/tests.patch
+++ b/testing/freecad/tests.patch
@@ -1,6 +1,6 @@
---- ./src/Mod/Mesh/App/MeshTestsApp.py
+--- ./src/Mod/Mesh/App/MeshTestsApp.py.orig
+++ ./src/Mod/Mesh/App/MeshTestsApp.py
-@@ -190,30 +190,6 @@
+@@ -423,30 +423,6 @@
self.planarMesh = []
FreeCAD.newDocument("MeshTest")
@@ -22,138 +22,12 @@
- rp.setRay(coin.SbVec3f(-16.05,16.0,16.0),coin.SbVec3f(0,-1,0))
- rp.apply(view.getSoRenderManager().getSceneGraph())
- pp=rp.getPickedPoint()
-- self.failUnless(pp != None)
+- self.assertTrue(pp != None)
- det=pp.getDetail()
-- self.failUnless(det.getTypeId() == coin.SoFaceDetail.getClassTypeId())
-- det=coin.cast(det,str(det.getTypeId().getName()))
-- self.failUnless(det.getFaceIndex() == 1)
+- self.assertTrue(det.getTypeId() == coin.SoFaceDetail.getClassTypeId())
+- det=coin.cast(det, det.getTypeId().getName().getString())
+- self.assertTrue(det.getFaceIndex() == 1)
-
def testPrimitiveCount(self):
if not FreeCAD.GuiUp:
return
---- ./src/Mod/Fem/femtest/test_commands.sh
-+++ ./src/Mod/Fem/femtest/test_commands.sh
-@@ -95,11 +95,6 @@
- make -j 4 && ./bin/FreeCADCmd -t femtest.app.test_solver_calculix.TestSolverCalculix.test_thermomech_bimetall
- make -j 4 && ./bin/FreeCADCmd -t femtest.app.test_solver_calculix.TestSolverCalculix.test_thermomech_flow1D
- make -j 4 && ./bin/FreeCADCmd -t femtest.app.test_solver_calculix.TestSolverCalculix.test_thermomech_spine
--make -j 4 && ./bin/FreeCADCmd -t femtest.app.test_solver_elmer.TestSolverElmer.test_box_static_0_mm
--make -j 4 && ./bin/FreeCADCmd -t femtest.app.test_solver_elmer.TestSolverElmer.test_ccxcantilever_faceload_0_mm
--make -j 4 && ./bin/FreeCADCmd -t femtest.app.test_solver_elmer.TestSolverElmer.test_ccxcantilever_faceload_1_si
--make -j 4 && ./bin/FreeCADCmd -t femtest.app.test_solver_elmer.TestSolverElmer.test_ccxcantilever_nodeload_0_mm
--make -j 4 && ./bin/FreeCADCmd -t femtest.app.test_solver_elmer.TestSolverElmer.test_ccxcantilever_prescribeddisplacement_0_mm
- make -j 4 && ./bin/FreeCADCmd -t femtest.app.test_solver_z88.TestSolverZ88.test_ccxcantilever_faceload
- make -j 4 && ./bin/FreeCADCmd -t femtest.app.test_solver_z88.TestSolverZ88.test_ccxcantilever_hexa20
- make -j 4 && ./bin/FreeCADCmd -t femtest.app.test_solver_z88.TestSolverZ88.test_ccxcantilever_nodeload
---- ./src/Mod/Fem/femtest/app/test_solver_elmer.py
-+++ ./src/Mod/Fem/femtest/app/test_solver_elmer.py
-@@ -106,109 +106,6 @@
- param.SetInt("UserSchema", new_unit_schema)
-
- # ********************************************************************************************
-- def test_box_static_0_mm(
-- self
-- ):
-- fcc_print("")
-- self.set_unit_schema(0) # mm/kg/s
--
-- # set up the Elmer static analysis example
-- from femexamples.boxanalysis_static import setup
-- setup(self.document, "elmer")
--
-- # for information:
-- # elmer needs gmsh mesho object
-- # FIXME error message on Python solver run
-- # the examples do use a gmsh mesh object thus ok
--
-- base_name = get_namefromdef("test_")
-- analysis_dir = testtools.get_fem_test_tmp_dir(self.pre_dir_name + base_name)
--
-- # save the file
-- save_fc_file = join(analysis_dir, base_name + ".FCStd")
-- # fcc_print("Save FreeCAD file to {}...".format(save_fc_file))
-- self.document.saveAs(save_fc_file)
--
-- # write input files
-- # fcc_print("Checking FEM input file writing for Elmer solver framework solver ...")
-- machine_elmer = self.document.SolverElmer.Proxy.createMachine(
-- self.document.SolverElmer,
-- analysis_dir,
-- True
-- )
-- machine_elmer.target = femsolver.run.PREPARE
-- machine_elmer.start()
-- machine_elmer.join() # wait for the machine to finish.
--
-- fcc_print("Test writing STARTINFO file")
-- startinfo_given = join(self.test_file_dir, "ELMERSOLVER_STARTINFO")
-- startinfo_totest = join(analysis_dir, "ELMERSOLVER_STARTINFO")
-- # fcc_print("Comparing {} to {}".format(startinfo_given, startinfo_totest))
-- ret = testtools.compare_files(startinfo_given, startinfo_totest)
-- self.assertFalse(ret, "STARTINFO write file test failed.\n{}".format(ret))
--
-- fcc_print("Test writing case file")
-- casefile_given = join(self.test_file_dir, base_name + self.ending)
-- casefile_totest = join(analysis_dir, self.infilename + self.ending)
-- # fcc_print("Comparing {} to {}".format(casefile_given, casefile_totest))
-- ret = testtools.compare_files(casefile_given, casefile_totest)
-- self.assertFalse(ret, "case write file test failed.\n{}".format(ret))
--
-- fcc_print("Test writing GMSH geo file")
-- gmshgeofile_given = join(self.test_file_dir, "group_mesh.geo")
-- gmshgeofile_totest = join(analysis_dir, "group_mesh.geo")
-- # fcc_print("Comparing {} to {}".format(gmshgeofile_given, gmshgeofile_totest))
-- ret = testtools.compare_files(gmshgeofile_given, gmshgeofile_totest)
-- self.assertFalse(ret, "GMSH geo write file test failed.\n{}".format(ret))
--
-- # ********************************************************************************************
-- def test_ccxcantilever_faceload_0_mm(
-- self
-- ):
-- fcc_print("")
-- self.set_unit_schema(0) # mm/kg/s
-- from femexamples.ccx_cantilever_faceload import setup
-- setup(self.document, "elmer")
-- self.input_file_writing_test(get_namefromdef("test_"))
--
-- # ********************************************************************************************
-- def test_ccxcantilever_faceload_1_si(
-- self
-- ):
-- if sys.version_info.major < 3:
-- # TODO does not pass on Python 2
-- # https://travis-ci.org/github/FreeCAD/FreeCAD/builds/707885742
-- # https://api.travis-ci.org/v3/job/707885745/log.txt
-- fcc_print("Python 2: test aborted.")
-- return
--
-- fcc_print("")
-- self.set_unit_schema(1) # SI-units m/kg/s
-- from femexamples.ccx_cantilever_faceload import setup
-- setup(self.document, "elmer")
-- self.input_file_writing_test(get_namefromdef("test_"))
--
-- # ********************************************************************************************
-- def test_ccxcantilever_nodeload_0_mm(
-- self
-- ):
-- fcc_print("")
-- self.set_unit_schema(0) # mm/kg/s
-- from femexamples.ccx_cantilever_nodeload import setup
-- setup(self.document, "elmer")
-- self.input_file_writing_test(get_namefromdef("test_"))
--
-- # ********************************************************************************************
-- def test_ccxcantilever_prescribeddisplacement_0_mm(
-- self
-- ):
-- fcc_print("")
-- self.set_unit_schema(0) # mm/kg/s
-- from femexamples.ccx_cantilever_prescribeddisplacement import setup
-- setup(self.document, "elmer")
-- self.input_file_writing_test(get_namefromdef("test_"))
--
-- # ********************************************************************************************
- def input_file_writing_test(
- self,
- base_name
diff --git a/testing/freecad/vtk9.patch b/testing/freecad/vtk9.patch
deleted file mode 100644
index 25fda0099da..00000000000
--- a/testing/freecad/vtk9.patch
+++ /dev/null
@@ -1,830 +0,0 @@
-Originally from Fedora FreeCAD package
-https://src.fedoraproject.org/rpms/freecad/blob/rawhide/f/freecad-vtk9.patch
-Will not be needed once FreeCAD v0.20 comes out as it has native support for vtk9
-From bb9bcbd51df7c3cb76c5823038e4ea0f7e25a9ff Mon Sep 17 00:00:00 2001
-From: wmayer <wmayer@users.sourceforge.net>
-Date: Mon, 12 Oct 2020 17:56:03 +0200
-Subject: [PATCH] Make smesh compile with vtk9
-
----
- .../salomesmesh/inc/SMDS_MeshElement.hxx | 9 +++-
- .../salomesmesh/inc/SMDS_UnstructuredGrid.hxx | 4 ++
- .../salomesmesh/src/SMDS/SMDS_BallElement.cpp | 9 +++-
- .../salomesmesh/src/SMDS/SMDS_Downward.cpp | 44 +++++++++----------
- .../salomesmesh/src/SMDS/SMDS_Mesh.cpp | 6 ++-
- .../src/SMDS/SMDS_Mesh0DElement.cpp | 12 +++++
- .../salomesmesh/src/SMDS/SMDS_MeshNode.cpp | 10 ++---
- .../src/SMDS/SMDS_UnstructuredGrid.cpp | 35 +++++++++++++--
- .../src/SMDS/SMDS_VtkCellIterator.cpp | 7 +--
- .../salomesmesh/src/SMDS/SMDS_VtkEdge.cpp | 19 +++++++-
- .../salomesmesh/src/SMDS/SMDS_VtkFace.cpp | 29 ++++++++++--
- .../salomesmesh/src/SMDS/SMDS_VtkVolume.cpp | 38 +++++++++++-----
- .../src/SMESH/SMESH_MeshEditor.cpp | 8 ++--
- src/Mod/Fem/Gui/ViewProviderFemPostObject.cpp | 7 ++-
- 14 files changed, 179 insertions(+), 58 deletions(-)
-
-Index: FreeCAD-0.19.2/src/3rdParty/salomesmesh/inc/SMDS_MeshElement.hxx
-===================================================================
---- FreeCAD-0.19.2.orig/src/3rdParty/salomesmesh/inc/SMDS_MeshElement.hxx
-+++ FreeCAD-0.19.2/src/3rdParty/salomesmesh/inc/SMDS_MeshElement.hxx
-@@ -40,11 +40,16 @@
-
- #include <vtkType.h>
- #include <vtkCellType.h>
-+#include <vtkCellArray.h>
-
- //typedef unsigned short UShortType;
- typedef short ShortType;
- typedef int LongType;
--
-+#ifdef VTK_CELL_ARRAY_V2
-+typedef const vtkIdType* vtkIdTypePtr;
-+#else
-+typedef vtkIdType* vtkIdTypePtr;
-+#endif
- class SMDS_MeshNode;
- class SMDS_MeshEdge;
- class SMDS_MeshFace;
-@@ -192,7 +197,7 @@ protected:
- //! Element index in vector SMDS_Mesh::myNodes or SMDS_Mesh::myCells
- int myID;
- //! index in vtkUnstructuredGrid
-- int myVtkID;
-+ vtkIdType myVtkID;
- //! SMDS_Mesh identification in SMESH
- ShortType myMeshId;
- //! SubShape and SubMesh identification in SMESHDS
-Index: FreeCAD-0.19.2/src/3rdParty/salomesmesh/inc/SMDS_UnstructuredGrid.hxx
-===================================================================
---- FreeCAD-0.19.2.orig/src/3rdParty/salomesmesh/inc/SMDS_UnstructuredGrid.hxx
-+++ FreeCAD-0.19.2/src/3rdParty/salomesmesh/inc/SMDS_UnstructuredGrid.hxx
-@@ -95,7 +95,11 @@ public:
- std::map<int, std::map<long,int> >& nodeQuadDomains);
- vtkCellLinks* GetLinks()
- {
-+#ifdef VTK_CELL_ARRAY_V2
-+ return static_cast<vtkCellLinks*>(GetCellLinks());
-+#else
- return Links;
-+#endif
- }
- SMDS_Downward* getDownArray(unsigned char vtkType)
- {
-Index: FreeCAD-0.19.2/src/3rdParty/salomesmesh/src/SMDS/SMDS_BallElement.cpp
-===================================================================
---- FreeCAD-0.19.2.orig/src/3rdParty/salomesmesh/src/SMDS/SMDS_BallElement.cpp
-+++ FreeCAD-0.19.2/src/3rdParty/salomesmesh/src/SMDS/SMDS_BallElement.cpp
-@@ -67,10 +67,16 @@ void SMDS_BallElement::SetDiameter(doubl
- bool SMDS_BallElement::ChangeNode (const SMDS_MeshNode * node)
- {
- vtkUnstructuredGrid* grid = SMDS_Mesh::_meshList[myMeshId]->getGrid();
-+#ifdef VTK_CELL_ARRAY_V2
-+ vtkNew<vtkIdList> cellPoints;
-+ grid->GetCellPoints(myVtkID, cellPoints.GetPointer());
-+ cellPoints->SetId(0, node->getVtkId());
-+#else
- vtkIdType npts = 0;
- vtkIdType* pts = 0;
- grid->GetCellPoints(myVtkID, npts, pts);
- pts[0] = node->getVtkId();
-+#endif
- SMDS_Mesh::_meshList[myMeshId]->setMyModified();
- return true;
- }
-@@ -83,7 +89,8 @@ void SMDS_BallElement::Print (std::ostre
- const SMDS_MeshNode* SMDS_BallElement::GetNode (const int ind) const
- {
- vtkUnstructuredGrid* grid = SMDS_Mesh::_meshList[myMeshId]->getGrid();
-- vtkIdType npts, *pts;
-+ vtkIdType npts;
-+ vtkIdTypePtr pts;
- grid->GetCellPoints( myVtkID, npts, pts );
- return SMDS_Mesh::_meshList[myMeshId]->FindNodeVtk( pts[ 0 ]);
- }
-Index: FreeCAD-0.19.2/src/3rdParty/salomesmesh/src/SMDS/SMDS_Downward.cpp
-===================================================================
---- FreeCAD-0.19.2.orig/src/3rdParty/salomesmesh/src/SMDS/SMDS_Downward.cpp
-+++ FreeCAD-0.19.2/src/3rdParty/salomesmesh/src/SMDS/SMDS_Downward.cpp
-@@ -303,7 +303,7 @@ int SMDS_Down1D::getNodeSet(int cellId,
- void SMDS_Down1D::setNodes(int cellId, int vtkId)
- {
- vtkIdType npts = 0;
-- vtkIdType *pts; // will refer to the point id's of the face
-+ vtkIdTypePtr pts; // will refer to the point id's of the face
- _grid->GetCellPoints(vtkId, npts, pts);
- // MESSAGE(vtkId << " " << npts << " " << _nbDownCells);
- //ASSERT(npts == _nbDownCells);
-@@ -357,7 +357,7 @@ int SMDS_Down1D::computeVtkCells(int *pt
- {
- vtkIdType point = pts[i];
- int numCells = _grid->GetLinks()->GetNcells(point);
-- vtkIdType *cells = _grid->GetLinks()->GetCells(point);
-+ vtkIdTypePtr cells = _grid->GetLinks()->GetCells(point);
- for (int j = 0; j < numCells; j++)
- {
- int vtkCellId = cells[j];
-@@ -532,7 +532,7 @@ int SMDS_Down2D::computeVolumeIds(int ce
- // --- find point id's of the face
-
- vtkIdType npts = 0;
-- vtkIdType *pts; // will refer to the point id's of the face
-+ vtkIdTypePtr pts; // will refer to the point id's of the face
- _grid->GetCellPoints(cellId, npts, pts);
- vector<int> nodes;
- for (int i = 0; i < npts; i++)
-@@ -577,7 +577,7 @@ int SMDS_Down2D::computeVolumeIdsFromNod
- vtkIdType point = pts[i];
- int numCells = _grid->GetLinks()->GetNcells(point);
- //MESSAGE("cells pour " << i << " " << numCells);
-- vtkIdType *cells = _grid->GetLinks()->GetCells(point);
-+ vtkIdTypePtr cells = _grid->GetLinks()->GetCells(point);
- for (int j = 0; j < numCells; j++)
- {
- int vtkCellId = cells[j];
-@@ -627,7 +627,7 @@ int SMDS_Down2D::computeVolumeIdsFromNod
- void SMDS_Down2D::setTempNodes(int cellId, int vtkId)
- {
- vtkIdType npts = 0;
-- vtkIdType *pts; // will refer to the point id's of the face
-+ vtkIdTypePtr pts; // will refer to the point id's of the face
- _grid->GetCellPoints(vtkId, npts, pts);
- // MESSAGE(vtkId << " " << npts << " " << _nbNodes);
- //ASSERT(npts == _nbNodes);
-@@ -795,7 +795,7 @@ void SMDS_Down3D::getNodeIds(int cellId,
- {
- int vtkId = this->_vtkCellIds[cellId];
- vtkIdType npts = 0;
-- vtkIdType *nodes; // will refer to the point id's of the volume
-+ vtkIdTypePtr nodes; // will refer to the point id's of the volume
- _grid->GetCellPoints(vtkId, npts, nodes);
- for (int i = 0; i < npts; i++)
- nodeSet.insert(nodes[i]);
-@@ -1126,7 +1126,7 @@ void SMDS_DownTetra::getOrderedNodesOfFa
- //MESSAGE("cellId = " << cellId);
-
- vtkIdType npts = 0;
-- vtkIdType *nodes; // will refer to the point id's of the volume
-+ vtkIdTypePtr nodes; // will refer to the point id's of the volume
- _grid->GetCellPoints(this->_vtkCellIds[cellId], npts, nodes);
-
- set<int> tofind;
-@@ -1178,7 +1178,7 @@ void SMDS_DownTetra::computeFacesWithNod
- // --- find point id's of the volume
-
- vtkIdType npts = 0;
-- vtkIdType *nodes; // will refer to the point id's of the volume
-+ vtkIdTypePtr nodes; // will refer to the point id's of the volume
- _grid->GetCellPoints(cellId, npts, nodes);
-
- // --- create all the ordered list of node id's for each face
-@@ -1234,7 +1234,7 @@ void SMDS_DownQuadTetra::getOrderedNodes
- //MESSAGE("cellId = " << cellId);
-
- vtkIdType npts = 0;
-- vtkIdType *nodes; // will refer to the point id's of the volume
-+ vtkIdTypePtr nodes; // will refer to the point id's of the volume
- _grid->GetCellPoints(this->_vtkCellIds[cellId], npts, nodes);
-
- set<int> tofind;
-@@ -1288,7 +1288,7 @@ void SMDS_DownQuadTetra::computeFacesWit
- // --- find point id's of the volume
-
- vtkIdType npts = 0;
-- vtkIdType *nodes; // will refer to the point id's of the volume
-+ vtkIdTypePtr nodes; // will refer to the point id's of the volume
- _grid->GetCellPoints(cellId, npts, nodes);
-
- // --- create all the ordered list of node id's for each face
-@@ -1357,7 +1357,7 @@ void SMDS_DownPyramid::getOrderedNodesOf
- //MESSAGE("cellId = " << cellId);
-
- vtkIdType npts = 0;
-- vtkIdType *nodes; // will refer to the point id's of the volume
-+ vtkIdTypePtr nodes; // will refer to the point id's of the volume
- _grid->GetCellPoints(this->_vtkCellIds[cellId], npts, nodes);
-
- set<int> tofind;
-@@ -1435,7 +1435,7 @@ void SMDS_DownPyramid::computeFacesWithN
- // --- find point id's of the volume
-
- vtkIdType npts = 0;
-- vtkIdType *nodes; // will refer to the point id's of the volume
-+ vtkIdTypePtr nodes; // will refer to the point id's of the volume
- _grid->GetCellPoints(cellId, npts, nodes);
-
- // --- create all the ordered list of node id's for each face
-@@ -1500,7 +1500,7 @@ void SMDS_DownQuadPyramid::getOrderedNod
- //MESSAGE("cellId = " << cellId);
-
- vtkIdType npts = 0;
-- vtkIdType *nodes; // will refer to the point id's of the volume
-+ vtkIdTypePtr nodes; // will refer to the point id's of the volume
- _grid->GetCellPoints(this->_vtkCellIds[cellId], npts, nodes);
-
- set<int> tofind;
-@@ -1580,7 +1580,7 @@ void SMDS_DownQuadPyramid::computeFacesW
- // --- find point id's of the volume
-
- vtkIdType npts = 0;
-- vtkIdType *nodes; // will refer to the point id's of the volume
-+ vtkIdTypePtr nodes; // will refer to the point id's of the volume
- _grid->GetCellPoints(cellId, npts, nodes);
-
- // --- create all the ordered list of node id's for each face
-@@ -1660,7 +1660,7 @@ void SMDS_DownPenta::getOrderedNodesOfFa
- //MESSAGE("cellId = " << cellId);
-
- vtkIdType npts = 0;
-- vtkIdType *nodes; // will refer to the point id's of the volume
-+ vtkIdTypePtr nodes; // will refer to the point id's of the volume
- _grid->GetCellPoints(this->_vtkCellIds[cellId], npts, nodes);
-
- set<int> tofind;
-@@ -1744,7 +1744,7 @@ void SMDS_DownPenta::computeFacesWithNod
- // --- find point id's of the volume
-
- vtkIdType npts = 0;
-- vtkIdType *nodes; // will refer to the point id's of the volume
-+ vtkIdTypePtr nodes; // will refer to the point id's of the volume
- _grid->GetCellPoints(cellId, npts, nodes);
-
- // --- create all the ordered list of node id's for each face
-@@ -1810,7 +1810,7 @@ void SMDS_DownQuadPenta::getOrderedNodes
- //MESSAGE("cellId = " << cellId);
-
- vtkIdType npts = 0;
-- vtkIdType *nodes; // will refer to the point id's of the volume
-+ vtkIdTypePtr nodes; // will refer to the point id's of the volume
- _grid->GetCellPoints(this->_vtkCellIds[cellId], npts, nodes);
-
- set<int> tofind;
-@@ -1896,7 +1896,7 @@ void SMDS_DownQuadPenta::computeFacesWit
- // --- find point id's of the volume
-
- vtkIdType npts = 0;
-- vtkIdType *nodes; // will refer to the point id's of the volume
-+ vtkIdTypePtr nodes; // will refer to the point id's of the volume
- _grid->GetCellPoints(cellId, npts, nodes);
-
- // --- create all the ordered list of node id's for each face
-@@ -1981,7 +1981,7 @@ void SMDS_DownHexa::getOrderedNodesOfFac
- //MESSAGE("cellId = " << cellId);
-
- vtkIdType npts = 0;
-- vtkIdType *nodes; // will refer to the point id's of the volume
-+ vtkIdTypePtr nodes; // will refer to the point id's of the volume
- _grid->GetCellPoints(this->_vtkCellIds[cellId], npts, nodes);
-
- set<int> tofind;
-@@ -2036,7 +2036,7 @@ void SMDS_DownHexa::computeFacesWithNode
- // --- find point id's of the volume
-
- vtkIdType npts = 0;
-- vtkIdType *nodes; // will refer to the point id's of the volume
-+ vtkIdTypePtr nodes; // will refer to the point id's of the volume
- _grid->GetCellPoints(cellId, npts, nodes);
-
- // --- create all the ordered list of node id's for each face
-@@ -2112,7 +2112,7 @@ void SMDS_DownQuadHexa::getOrderedNodesO
- //MESSAGE("cellId = " << cellId);
-
- vtkIdType npts = 0;
-- vtkIdType *nodes; // will refer to the point id's of the volume
-+ vtkIdTypePtr nodes; // will refer to the point id's of the volume
- _grid->GetCellPoints(this->_vtkCellIds[cellId], npts, nodes);
-
- set<int> tofind;
-@@ -2167,7 +2167,7 @@ void SMDS_DownQuadHexa::computeFacesWith
- // --- find point id's of the volume
-
- vtkIdType npts = 0;
-- vtkIdType *nodes; // will refer to the point id's of the volume
-+ vtkIdTypePtr nodes; // will refer to the point id's of the volume
- _grid->GetCellPoints(cellId, npts, nodes);
-
- // --- create all the ordered list of node id's for each face
-Index: FreeCAD-0.19.2/src/3rdParty/salomesmesh/src/SMDS/SMDS_Mesh.cpp
-===================================================================
---- FreeCAD-0.19.2.orig/src/3rdParty/salomesmesh/src/SMDS/SMDS_Mesh.cpp
-+++ FreeCAD-0.19.2/src/3rdParty/salomesmesh/src/SMDS/SMDS_Mesh.cpp
-@@ -4768,7 +4768,11 @@ void SMDS_Mesh::dumpGrid(string ficdump)
- ficcon << endl;
- }
- ficcon << "-------------------------------- connectivity " << nbPoints << endl;
-- vtkCellLinks *links = myGrid->GetCellLinks();
-+#ifdef VTK_CELL_ARRAY_V2
-+ vtkCellLinks *links = static_cast<vtkCellLinks*>(myGrid->GetCellLinks());
-+#else
-+ vtkCellLinks *links = myGrid->GetCellLinks();
-+#endif
- for (int i=0; i<nbPoints; i++)
- {
- int ncells = links->GetNcells(i);
-Index: FreeCAD-0.19.2/src/3rdParty/salomesmesh/src/SMDS/SMDS_Mesh0DElement.cpp
-===================================================================
---- FreeCAD-0.19.2.orig/src/3rdParty/salomesmesh/src/SMDS/SMDS_Mesh0DElement.cpp
-+++ FreeCAD-0.19.2/src/3rdParty/salomesmesh/src/SMDS/SMDS_Mesh0DElement.cpp
-@@ -146,6 +146,17 @@ bool SMDS_Mesh0DElement::ChangeNodes(con
- if ( nbNodes == 1 )
- {
- vtkUnstructuredGrid* grid = SMDS_Mesh::_meshList[myMeshId]->getGrid();
-+#ifdef VTK_CELL_ARRAY_V2
-+ vtkNew<vtkIdList> cellPoints;
-+ grid->GetCellPoints(myVtkID, cellPoints.GetPointer());
-+ if (nbNodes != cellPoints->GetNumberOfIds())
-+ {
-+ MESSAGE("ChangeNodes problem: not the same number of nodes " << cellPoints->GetNumberOfIds() << " -> " << nbNodes);
-+ return false;
-+ }
-+ myNode = nodes[0];
-+ cellPoints->SetId(0, myNode->getVtkId());
-+#else
- vtkIdType npts = 0;
- vtkIdType* pts = 0;
- grid->GetCellPoints(myVtkID, npts, pts);
-@@ -156,6 +167,7 @@ bool SMDS_Mesh0DElement::ChangeNodes(con
- }
- myNode = nodes[0];
- pts[0] = myNode->getVtkId();
-+#endif
-
- SMDS_Mesh::_meshList[myMeshId]->setMyModified();
- return true;
-Index: FreeCAD-0.19.2/src/3rdParty/salomesmesh/src/SMDS/SMDS_MeshNode.cpp
-===================================================================
---- FreeCAD-0.19.2.orig/src/3rdParty/salomesmesh/src/SMDS/SMDS_MeshNode.cpp
-+++ FreeCAD-0.19.2/src/3rdParty/salomesmesh/src/SMDS/SMDS_MeshNode.cpp
-@@ -191,7 +191,7 @@ public:
- SMDS_ElemIteratorPtr SMDS_MeshNode::
- GetInverseElementIterator(SMDSAbs_ElementType type) const
- {
-- vtkCellLinks::Link l = SMDS_Mesh::_meshList[myMeshId]->getGrid()->GetCellLinks()->GetLink(myVtkID);
-+ vtkCellLinks::Link l = static_cast<vtkCellLinks*>(SMDS_Mesh::_meshList[myMeshId]->getGrid()->GetCellLinks())->GetLink(myVtkID);
- //MESSAGE("myID " << myID << " ncells " << l.ncells);
- return SMDS_ElemIteratorPtr(new SMDS_MeshNode_MyInvIterator(SMDS_Mesh::_meshList[myMeshId], l.cells, l.ncells, type));
- }
-@@ -251,7 +251,7 @@ elementsIterator(SMDSAbs_ElementType typ
- return SMDS_MeshElement::elementsIterator(SMDSAbs_Node);
- else
- {
-- vtkCellLinks::Link l = SMDS_Mesh::_meshList[myMeshId]->getGrid()->GetCellLinks()->GetLink(myVtkID);
-+ vtkCellLinks::Link l = static_cast<vtkCellLinks*>(SMDS_Mesh::_meshList[myMeshId]->getGrid()->GetCellLinks())->GetLink(myVtkID);
- return SMDS_ElemIteratorPtr(new SMDS_MeshNode_MyIterator(SMDS_Mesh::_meshList[myMeshId], l.cells, l.ncells, type));
- }
- }
-@@ -350,7 +350,7 @@ void SMDS_MeshNode::AddInverseElement(co
- const SMDS_MeshCell *cell = dynamic_cast<const SMDS_MeshCell*> (ME);
- assert(cell);
- SMDS_UnstructuredGrid* grid = SMDS_Mesh::_meshList[myMeshId]->getGrid();
-- vtkCellLinks *Links = grid->GetCellLinks();
-+ vtkCellLinks *Links = static_cast<vtkCellLinks*>(grid->GetCellLinks());
- Links->ResizeCellList(myVtkID, 1);
- Links->AddCellReference(cell->getVtkId(), myVtkID);
- }
-@@ -366,7 +366,7 @@ void SMDS_MeshNode::ClearInverseElements
-
- bool SMDS_MeshNode::emptyInverseElements()
- {
-- vtkCellLinks::Link l = SMDS_Mesh::_meshList[myMeshId]->getGrid()->GetCellLinks()->GetLink(myVtkID);
-+ vtkCellLinks::Link l = static_cast<vtkCellLinks*>(SMDS_Mesh::_meshList[myMeshId]->getGrid()->GetCellLinks())->GetLink(myVtkID);
- return (l.ncells == 0);
- }
-
-@@ -378,7 +378,7 @@ bool SMDS_MeshNode::emptyInverseElements
-
- int SMDS_MeshNode::NbInverseElements(SMDSAbs_ElementType type) const
- {
-- vtkCellLinks::Link l = SMDS_Mesh::_meshList[myMeshId]->getGrid()->GetCellLinks()->GetLink(myVtkID);
-+ vtkCellLinks::Link l = static_cast<vtkCellLinks*>(SMDS_Mesh::_meshList[myMeshId]->getGrid()->GetCellLinks())->GetLink(myVtkID);
-
- if ( type == SMDSAbs_All )
- return l.ncells;
-Index: FreeCAD-0.19.2/src/3rdParty/salomesmesh/src/SMDS/SMDS_UnstructuredGrid.cpp
-===================================================================
---- FreeCAD-0.19.2.orig/src/3rdParty/salomesmesh/src/SMDS/SMDS_UnstructuredGrid.cpp
-+++ FreeCAD-0.19.2/src/3rdParty/salomesmesh/src/SMDS/SMDS_UnstructuredGrid.cpp
-@@ -139,8 +139,8 @@ int SMDS_UnstructuredGrid::InsertNextLin
- for (; it != setOfNodes.end(); ++it)
- {
- //MESSAGE("reverse link for node " << *it << " cell " << cellid);
-- this->Links->ResizeCellList(*it, 1);
-- this->Links->AddCellReference(cellid, *it);
-+ this->GetLinks()->ResizeCellList(*it, 1);
-+ this->GetLinks()->AddCellReference(cellid, *it);
- }
-
- return cellid;
-@@ -332,9 +332,13 @@ void SMDS_UnstructuredGrid::copyBloc(vtk
- {
- newTypes->SetValue(alreadyCopied, this->Types->GetValue(j));
- idCellsOldToNew[j] = alreadyCopied; // old vtkId --> new vtkId
-+#ifdef VTK_CELL_ARRAY_V2
-+ vtkIdType oldLoc = this->GetCellLocationsArray()->GetValue(j);
-+#else
- vtkIdType oldLoc = this->Locations->GetValue(j);
-+#endif
- vtkIdType nbpts;
-- vtkIdType *oldPtsCell = 0;
-+ vtkIdTypePtr oldPtsCell = 0;
- this->Connectivity->GetCell(oldLoc, nbpts, oldPtsCell);
- assert(nbpts < NBMAXNODESINCELL);
- //MESSAGE(j << " " << alreadyCopied << " " << (int)this->Types->GetValue(j) << " " << oldLoc << " " << nbpts );
-@@ -952,6 +956,21 @@ void SMDS_UnstructuredGrid::GetNodeIds(s
- */
- void SMDS_UnstructuredGrid::ModifyCellNodes(int vtkVolId, std::map<int, int> localClonedNodeIds)
- {
-+#ifdef VTK_CELL_ARRAY_V2
-+ vtkNew<vtkIdList> cellPoints;
-+ this->GetCellPoints(vtkVolId, cellPoints.GetPointer());
-+ for (vtkIdType i = 0; i < cellPoints->GetNumberOfIds(); i++)
-+ {
-+ if (localClonedNodeIds.count(cellPoints->GetId(i)))
-+ {
-+ vtkIdType oldpt = cellPoints->GetId(i);
-+ cellPoints->SetId(i, localClonedNodeIds[oldpt]);
-+ //MESSAGE(oldpt << " --> " << pts[i]);
-+ //this->RemoveReferenceToCell(oldpt, vtkVolId);
-+ //this->AddReferenceToCell(pts[i], vtkVolId);
-+ }
-+ }
-+#else
- vtkIdType npts = 0;
- vtkIdType *pts; // will refer to the point id's of the face
- this->GetCellPoints(vtkVolId, npts, pts);
-@@ -966,6 +985,7 @@ void SMDS_UnstructuredGrid::ModifyCellNo
- //this->AddReferenceToCell(pts[i], vtkVolId);
- }
- }
-+#endif
- }
-
- /*! reorder the nodes of a face
-@@ -995,11 +1015,20 @@ void SMDS_UnstructuredGrid::BuildLinks()
- this->Links->UnRegister(this);
- }
-
-+#ifdef VTK_CELL_ARRAY_V2
-+ this->Links = SMDS_CellLinks::New();
-+ GetLinks()->Allocate(this->GetNumberOfPoints());
-+ GetLinks()->Register(this);
-+//FIXME: vtk9
-+ GetLinks()->BuildLinks(this);
-+ GetLinks()->Delete();
-+#else
- this->Links = SMDS_CellLinks::New();
- this->Links->Allocate(this->GetNumberOfPoints());
- this->Links->Register(this);
- this->Links->BuildLinks(this, this->Connectivity);
- this->Links->Delete();
-+#endif
- }
-
- /*! Create a volume (prism or hexahedron) by duplication of a face.
-Index: FreeCAD-0.19.2/src/3rdParty/salomesmesh/src/SMDS/SMDS_VtkCellIterator.cpp
-===================================================================
---- FreeCAD-0.19.2.orig/src/3rdParty/salomesmesh/src/SMDS/SMDS_VtkCellIterator.cpp
-+++ FreeCAD-0.19.2/src/3rdParty/salomesmesh/src/SMDS/SMDS_VtkCellIterator.cpp
-@@ -33,7 +33,8 @@ SMDS_VtkCellIterator::SMDS_VtkCellIterat
- }
- else
- {
-- vtkIdType npts, *pts;
-+ vtkIdType npts;
-+ vtkIdTypePtr pts;
- grid->GetCellPoints( _cellId, npts, pts );
- _vtkIdList->SetNumberOfIds( _nbNodes = npts );
- for (int i = 0; i < _nbNodes; i++)
-@@ -67,7 +68,7 @@ SMDS_VtkCellIteratorToUNV::SMDS_VtkCellI
- //MESSAGE("SMDS_VtkCellInterlacedIterator (UNV)" << _type);
-
- _vtkIdList = vtkIdList::New();
-- vtkIdType* pts;
-+ vtkIdTypePtr pts;
- vtkIdType npts;
- vtkUnstructuredGrid* grid = _mesh->getGrid();
- grid->GetCellPoints((vtkIdType)_cellId, npts, pts);
-@@ -182,7 +183,7 @@ SMDS_VtkCellIteratorPolyH::SMDS_VtkCellI
- {
- //MESSAGE("SMDS_VtkCellIterator Polyhedra");
- vtkIdType nFaces = 0;
-- vtkIdType* ptIds = 0;
-+ vtkIdTypePtr ptIds = 0;
- grid->GetFaceStream(_cellId, nFaces, ptIds);
- int id = 0;
- _nbNodesInFaces = 0;
-Index: FreeCAD-0.19.2/src/3rdParty/salomesmesh/src/SMDS/SMDS_VtkEdge.cpp
-===================================================================
---- FreeCAD-0.19.2.orig/src/3rdParty/salomesmesh/src/SMDS/SMDS_VtkEdge.cpp
-+++ FreeCAD-0.19.2/src/3rdParty/salomesmesh/src/SMDS/SMDS_VtkEdge.cpp
-@@ -67,6 +67,19 @@ bool SMDS_VtkEdge::ChangeNodes(const SMD
- bool SMDS_VtkEdge::ChangeNodes(const SMDS_MeshNode* nodes[], const int nbNodes)
- {
- vtkUnstructuredGrid* grid = SMDS_Mesh::_meshList[myMeshId]->getGrid();
-+#ifdef VTK_CELL_ARRAY_V2
-+ vtkNew<vtkIdList> cellPoints;
-+ grid->GetCellPoints(myVtkID, cellPoints.GetPointer());
-+ if (nbNodes != cellPoints->GetNumberOfIds())
-+ {
-+ MESSAGE("ChangeNodes problem: not the same number of nodes " << cellPoints->GetNumberOfIds() << " -> " << nbNodes);
-+ return false;
-+ }
-+ for (int i = 0; i < nbNodes; i++)
-+ {
-+ cellPoints->SetId(i, nodes[i]->getVtkId());
-+ }
-+#else
- vtkIdType npts = 0;
- vtkIdType* pts = 0;
- grid->GetCellPoints(myVtkID, npts, pts);
-@@ -79,6 +92,7 @@ bool SMDS_VtkEdge::ChangeNodes(const SMD
- {
- pts[i] = nodes[i]->getVtkId();
- }
-+#endif
- SMDS_Mesh::_meshList[myMeshId]->setMyModified();
- return true;
- }
-@@ -87,7 +101,7 @@ bool SMDS_VtkEdge::IsMediumNode(const SM
- {
- vtkUnstructuredGrid* grid = SMDS_Mesh::_meshList[myMeshId]->getGrid();
- vtkIdType npts = 0;
-- vtkIdType* pts = 0;
-+ vtkIdTypePtr pts = 0;
- grid->GetCellPoints(myVtkID, npts, pts);
- //MESSAGE("IsMediumNode " << npts << " " << (node->getVtkId() == pts[npts-1]));
- return ((npts == 3) && (node->getVtkId() == pts[2]));
-@@ -137,7 +151,8 @@ const SMDS_MeshNode*
- SMDS_VtkEdge::GetNode(const int ind) const
- {
- vtkUnstructuredGrid* grid = SMDS_Mesh::_meshList[myMeshId]->getGrid();
-- vtkIdType npts, *pts;
-+ vtkIdType npts;
-+ vtkIdTypePtr pts;
- grid->GetCellPoints( this->myVtkID, npts, pts );
- return SMDS_Mesh::_meshList[myMeshId]->FindNodeVtk( pts[ ind ]);
- }
-Index: FreeCAD-0.19.2/src/3rdParty/salomesmesh/src/SMDS/SMDS_VtkFace.cpp
-===================================================================
---- FreeCAD-0.19.2.orig/src/3rdParty/salomesmesh/src/SMDS/SMDS_VtkFace.cpp
-+++ FreeCAD-0.19.2/src/3rdParty/salomesmesh/src/SMDS/SMDS_VtkFace.cpp
-@@ -101,6 +101,19 @@ void SMDS_VtkFace::initQuadPoly(const st
- bool SMDS_VtkFace::ChangeNodes(const SMDS_MeshNode* nodes[], const int nbNodes)
- {
- vtkUnstructuredGrid* grid = SMDS_Mesh::_meshList[myMeshId]->getGrid();
-+#ifdef VTK_CELL_ARRAY_V2
-+ vtkNew<vtkIdList> cellPoints;
-+ grid->GetCellPoints(myVtkID, cellPoints.GetPointer());
-+ if (nbNodes != cellPoints->GetNumberOfIds())
-+ {
-+ MESSAGE("ChangeNodes problem: not the same number of nodes " << cellPoints->GetNumberOfIds() << " -> " << nbNodes);
-+ return false;
-+ }
-+ for (int i = 0; i < nbNodes; i++)
-+ {
-+ cellPoints->SetId(i, nodes[i]->getVtkId());
-+ }
-+#else
- vtkIdType npts = 0;
- vtkIdType* pts = 0;
- grid->GetCellPoints(myVtkID, npts, pts);
-@@ -113,6 +126,7 @@ bool SMDS_VtkFace::ChangeNodes(const SMD
- {
- pts[i] = nodes[i]->getVtkId();
- }
-+#endif
- SMDS_Mesh::_meshList[myMeshId]->setMyModified();
- return true;
- }
-@@ -173,7 +187,8 @@ const SMDS_MeshNode*
- SMDS_VtkFace::GetNode(const int ind) const
- {
- vtkUnstructuredGrid* grid = SMDS_Mesh::_meshList[myMeshId]->getGrid();
-- vtkIdType npts, *pts;
-+ vtkIdType npts;
-+ vtkIdTypePtr pts;
- grid->GetCellPoints( this->myVtkID, npts, pts );
- return SMDS_Mesh::_meshList[myMeshId]->FindNodeVtk( pts[ ind ]);
- }
-@@ -186,7 +201,8 @@ SMDS_VtkFace::GetNode(const int ind) con
- int SMDS_VtkFace::GetNodeIndex( const SMDS_MeshNode* node ) const
- {
- vtkUnstructuredGrid* grid = SMDS_Mesh::_meshList[myMeshId]->getGrid();
-- vtkIdType npts, *pts;
-+ vtkIdType npts;
-+ vtkIdTypePtr pts;
- grid->GetCellPoints( this->myVtkID, npts, pts );
- for ( vtkIdType i = 0; i < npts; ++i )
- if ( pts[i] == node->getVtkId() )
-@@ -251,7 +267,7 @@ bool SMDS_VtkFace::IsMediumNode(const SM
- return false;
- }
- vtkIdType npts = 0;
-- vtkIdType* pts = 0;
-+ vtkIdTypePtr pts = 0;
- grid->GetCellPoints(myVtkID, npts, pts);
- vtkIdType nodeId = node->getVtkId();
- for (int rank = 0; rank < npts; rank++)
-@@ -356,11 +372,18 @@ SMDS_NodeIteratorPtr SMDS_VtkFace::inter
- void SMDS_VtkFace::ChangeApex(SMDS_MeshNode* node)
- {
- vtkUnstructuredGrid* grid = SMDS_Mesh::_meshList[myMeshId]->getGrid();
-+#ifdef VTK_CELL_ARRAY_V2
-+ vtkNew<vtkIdList> cellPoints;
-+ grid->GetCellPoints(myVtkID, cellPoints.GetPointer());
-+ grid->RemoveReferenceToCell(cellPoints->GetId(0), myVtkID);
-+ cellPoints->SetId(0, node->getVtkId());
-+#else
- vtkIdType npts = 0;
- vtkIdType* pts = 0;
- grid->GetCellPoints(myVtkID, npts, pts);
- grid->RemoveReferenceToCell(pts[0], myVtkID);
- pts[0] = node->getVtkId();
-+#endif
- node->AddInverseElement(this),
- SMDS_Mesh::_meshList[myMeshId]->setMyModified();
- }
-Index: FreeCAD-0.19.2/src/3rdParty/salomesmesh/src/SMDS/SMDS_VtkVolume.cpp
-===================================================================
---- FreeCAD-0.19.2.orig/src/3rdParty/salomesmesh/src/SMDS/SMDS_VtkVolume.cpp
-+++ FreeCAD-0.19.2/src/3rdParty/salomesmesh/src/SMDS/SMDS_VtkVolume.cpp
-@@ -133,6 +133,19 @@ void SMDS_VtkVolume::initPoly(const std:
- bool SMDS_VtkVolume::ChangeNodes(const SMDS_MeshNode* nodes[], const int nbNodes)
- {
- vtkUnstructuredGrid* grid = SMDS_Mesh::_meshList[myMeshId]->getGrid();
-+#ifdef VTK_CELL_ARRAY_V2
-+ vtkNew<vtkIdList> cellPoints;
-+ grid->GetCellPoints(myVtkID, cellPoints.GetPointer());
-+ if (nbNodes != cellPoints->GetNumberOfIds())
-+ {
-+ MESSAGE("ChangeNodes problem: not the same number of nodes " << cellPoints->GetNumberOfIds() << " -> " << nbNodes);
-+ return false;
-+ }
-+ for (int i = 0; i < nbNodes; i++)
-+ {
-+ cellPoints->SetId(i, nodes[i]->getVtkId());
-+ }
-+#else
- vtkIdType npts = 0;
- vtkIdType* pts = 0;
- grid->GetCellPoints(myVtkID, npts, pts);
-@@ -145,6 +158,7 @@ bool SMDS_VtkVolume::ChangeNodes(const S
- {
- pts[i] = nodes[i]->getVtkId();
- }
-+#endif
- SMDS_Mesh::_meshList[myMeshId]->setMyModified();
- return true;
- }
-@@ -207,7 +221,7 @@ int SMDS_VtkVolume::NbFaces() const
- case VTK_POLYHEDRON:
- {
- vtkIdType nFaces = 0;
-- vtkIdType* ptIds = 0;
-+ vtkIdTypePtr ptIds = 0;
- grid->GetFaceStream(this->myVtkID, nFaces, ptIds);
- nbFaces = nFaces;
- break;
-@@ -236,7 +250,7 @@ int SMDS_VtkVolume::NbNodes() const
- else
- {
- vtkIdType nFaces = 0;
-- vtkIdType* ptIds = 0;
-+ vtkIdTypePtr ptIds = 0;
- grid->GetFaceStream(this->myVtkID, nFaces, ptIds);
- int id = 0;
- for (int i = 0; i < nFaces; i++)
-@@ -276,7 +290,7 @@ int SMDS_VtkVolume::NbEdges() const
- case VTK_POLYHEDRON:
- {
- vtkIdType nFaces = 0;
-- vtkIdType* ptIds = 0;
-+ vtkIdTypePtr ptIds = 0;
- grid->GetFaceStream(this->myVtkID, nFaces, ptIds);
- nbEdges = 0;
- int id = 0;
-@@ -312,7 +326,7 @@ int SMDS_VtkVolume::NbFaceNodes(const in
- if (aVtkType == VTK_POLYHEDRON)
- {
- vtkIdType nFaces = 0;
-- vtkIdType* ptIds = 0;
-+ vtkIdTypePtr ptIds = 0;
- grid->GetFaceStream(this->myVtkID, nFaces, ptIds);
- int id = 0;
- for (int i = 0; i < nFaces; i++)
-@@ -342,7 +356,7 @@ const SMDS_MeshNode* SMDS_VtkVolume::Get
- if (aVtkType == VTK_POLYHEDRON)
- {
- vtkIdType nFaces = 0;
-- vtkIdType* ptIds = 0;
-+ vtkIdTypePtr ptIds = 0;
- grid->GetFaceStream(this->myVtkID, nFaces, ptIds);
- int id = 0;
- for (int i = 0; i < nFaces; i++)
-@@ -372,7 +386,7 @@ std::vector<int> SMDS_VtkVolume::GetQuan
- if (aVtkType == VTK_POLYHEDRON)
- {
- vtkIdType nFaces = 0;
-- vtkIdType* ptIds = 0;
-+ vtkIdTypePtr ptIds = 0;
- grid->GetFaceStream(this->myVtkID, nFaces, ptIds);
- int id = 0;
- for (int i = 0; i < nFaces; i++)
-@@ -430,7 +444,7 @@ const SMDS_MeshNode* SMDS_VtkVolume::Get
- if ( aVtkType == VTK_POLYHEDRON)
- {
- vtkIdType nFaces = 0;
-- vtkIdType* ptIds = 0;
-+ vtkIdTypePtr ptIds = 0;
- grid->GetFaceStream(this->myVtkID, nFaces, ptIds);
- int id = 0, nbPoints = 0;
- for (int i = 0; i < nFaces; i++)
-@@ -443,7 +457,8 @@ const SMDS_MeshNode* SMDS_VtkVolume::Get
- }
- return 0;
- }
-- vtkIdType npts, *pts;
-+ vtkIdType npts;
-+ vtkIdTypePtr pts;
- grid->GetCellPoints( this->myVtkID, npts, pts );
- const std::vector<int>& interlace = SMDS_MeshCell::fromVtkOrder( VTKCellType( aVtkType ));
- return SMDS_Mesh::_meshList[myMeshId]->FindNodeVtk( pts[ interlace.empty() ? ind : interlace[ind]] );
-@@ -460,7 +475,7 @@ int SMDS_VtkVolume::GetNodeIndex( const
- if ( aVtkType == VTK_POLYHEDRON)
- {
- vtkIdType nFaces = 0;
-- vtkIdType* ptIds = 0;
-+ vtkIdTypePtr ptIds = 0;
- grid->GetFaceStream(this->myVtkID, nFaces, ptIds);
- int id = 0;
- for (int iF = 0; iF < nFaces; iF++)
-@@ -473,7 +488,8 @@ int SMDS_VtkVolume::GetNodeIndex( const
- }
- return -1;
- }
-- vtkIdType npts, *pts;
-+ vtkIdType npts;
-+ vtkIdTypePtr pts;
- grid->GetCellPoints( this->myVtkID, npts, pts );
- for ( vtkIdType i = 0; i < npts; ++i )
- if ( pts[i] == node->getVtkId() )
-@@ -534,7 +550,7 @@ bool SMDS_VtkVolume::IsMediumNode(const
- return false;
- }
- vtkIdType npts = 0;
-- vtkIdType* pts = 0;
-+ vtkIdTypePtr pts = 0;
- grid->GetCellPoints(myVtkID, npts, pts);
- vtkIdType nodeId = node->getVtkId();
- for (int rank = 0; rank < npts; rank++)
-Index: FreeCAD-0.19.2/src/3rdParty/salomesmesh/src/SMESH/SMESH_MeshEditor.cpp
-===================================================================
---- FreeCAD-0.19.2.orig/src/3rdParty/salomesmesh/src/SMESH/SMESH_MeshEditor.cpp
-+++ FreeCAD-0.19.2/src/3rdParty/salomesmesh/src/SMESH/SMESH_MeshEditor.cpp
-@@ -11348,7 +11348,7 @@ bool SMESH_MeshEditor::DoubleNodesOnGrou
- {
- int oldId = *itn;
- //MESSAGE(" node " << oldId);
-- vtkCellLinks::Link l = grid->GetCellLinks()->GetLink(oldId);
-+ vtkCellLinks::Link l = static_cast<vtkCellLinks*>(grid->GetCellLinks())->GetLink(oldId);
- for (int i=0; i<l.ncells; i++)
- {
- int vtkId = l.cells[i];
-@@ -11527,7 +11527,7 @@ bool SMESH_MeshEditor::DoubleNodesOnGrou
- //MESSAGE(" domain " << idom << " volume " << elem->GetID());
- double values[3];
- vtkIdType npts = 0;
-- vtkIdType* pts = 0;
-+ vtkIdTypePtr pts = 0;
- grid->GetCellPoints(vtkVolIds[ivol], npts, pts);
- SMDS_VtkVolume::gravityCenter(grid, pts, npts, values);
- if (id ==0)
-@@ -11708,7 +11708,7 @@ bool SMESH_MeshEditor::DoubleNodesOnGrou
- {
- int oldId = itnod->first;
- //MESSAGE(" node " << oldId);
-- vtkCellLinks::Link l = grid->GetCellLinks()->GetLink(oldId);
-+ vtkCellLinks::Link l = static_cast<vtkCellLinks*>(grid->GetCellLinks())->GetLink(oldId);
- for (int i = 0; i < l.ncells; i++)
- {
- int vtkId = l.cells[i];
-@@ -12165,7 +12165,7 @@ void SMESH_MeshEditor::CreateHoleSkin(do
- MESSAGE("volume to check, vtkId " << vtkId << " smdsId " << meshDS->fromVtkToSmds(vtkId));
- bool volInside = false;
- vtkIdType npts = 0;
-- vtkIdType* pts = 0;
-+ vtkIdTypePtr pts = 0;
- grid->GetCellPoints(vtkId, npts, pts);
- for (int i=0; i<npts; i++)
- {
-Index: FreeCAD-0.19.2/src/Mod/Fem/Gui/ViewProviderFemPostObject.cpp
-===================================================================
---- FreeCAD-0.19.2.orig/src/Mod/Fem/Gui/ViewProviderFemPostObject.cpp
-+++ FreeCAD-0.19.2/src/Mod/Fem/Gui/ViewProviderFemPostObject.cpp
-@@ -20,7 +20,6 @@
- * *
- ***************************************************************************/
-
--
- #include "PreCompiled.h"
-
- #ifndef _PreComp_
diff --git a/testing/freediameter/APKBUILD b/testing/freediameter/APKBUILD
new file mode 100644
index 00000000000..bfba7316863
--- /dev/null
+++ b/testing/freediameter/APKBUILD
@@ -0,0 +1,54 @@
+# Contributor: Peter Shkenev <santurysim@gmail.com>
+# Maintainer: Peter Shkenev <santurysim@gmail.com>
+pkgname=freediameter
+pkgver=1.5.0
+_gitcommit="33dbbd20c9107a765dbafb9b1fef16f5f47c65cd"
+pkgrel=1
+pkgdesc="Free implementation of Diameter protocol"
+url="https://github.com/open5gs/freediameter"
+arch="all"
+options="!check" #no test suite
+license="BSD-3-Clause"
+makedepends="cmake libgcrypt-dev libidn-dev gnutls-dev flex bison samurai"
+subpackages="$pkgname-dev $pkgname-libfdcore $pkgname-libfdproto $pkgname-extensions"
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/open5gs/freediameter/archive/$_gitcommit.tar.gz
+ "
+builddir="$srcdir/freeDiameter-$_gitcommit"
+
+build() {
+ if [ "$CBUILD" != "$CHOST" ]; then
+ CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=True \
+ -DCMAKE_BUILD_TYPE=None \
+ -DDISABLE_SCTP=ON \
+ $CMAKE_CROSSOPTS
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+libfdcore() {
+ pkgdesc="$pkgdesc (core library)"
+ amove usr/lib/libfdcore.so.*
+}
+
+libfdproto() {
+ pkgdesc="$pkgdesc (protocol library)"
+ amove usr/lib/libfdproto.so.*
+}
+
+extensions() {
+ pkgdesc="$pkgdesc (extensions)"
+ amove usr/lib/freeDiameter
+}
+
+sha512sums="
+91a003447bee8174e89b1244f6d89c67c0686193ea6b5e2b0588156ec648d8ff6ee4b16ce6ccf081e2606916c1f1e2a7037e044f3149e10cd180424b669f136c freediameter-1.5.0.tar.gz
+"
diff --git a/testing/freedoom/APKBUILD b/testing/freedoom/APKBUILD
index de7e48d5110..cd0909e960e 100644
--- a/testing/freedoom/APKBUILD
+++ b/testing/freedoom/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Antoine Fontaine <antoine.fontaine@epfl.ch>
-# Maintainer:
-pkgname="freedoom"
-pkgver="0.12.1"
-pkgrel=1
+# Maintainer: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
+pkgname=freedoom
+pkgver=0.12.1
+pkgrel=2
pkgdesc="an entirely free software game running on a Doom engine."
url="https://freedoom.github.io"
arch="noarch !s390x"
@@ -10,7 +10,10 @@ license="BSD-3-Clause-Clear"
makedepends="python3 py3-pillow make deutex asciidoc asciidoctor"
options="!check"
subpackages="$pkgname-doc"
-source="https://github.com/freedoom/freedoom/releases/download/v$pkgver/freedoom-$pkgver.tar.xz"
+source="
+ https://github.com/freedoom/freedoom/releases/download/v$pkgver/freedoom-$pkgver.tar.xz
+ support-python-pil-10.patch
+ "
build() {
make
@@ -21,4 +24,7 @@ package() {
make DESTDIR="$pkgdir" prefix=/usr install
}
-sha512sums="08a8489e1bbd9418262bfefaa9afe67a281b6f3fd38f77ac822438da434229bb034077e53658c06fa93cbf3ba3c5c25dab5fe1844fe23043e310d21866e12810 freedoom-0.12.1.tar.xz"
+sha512sums="
+08a8489e1bbd9418262bfefaa9afe67a281b6f3fd38f77ac822438da434229bb034077e53658c06fa93cbf3ba3c5c25dab5fe1844fe23043e310d21866e12810 freedoom-0.12.1.tar.xz
+0a11c8f79ab8e289f5940596203f43e11ad2709709b9c9ee4e14304e18ab3d0b0991bc292f77b2fe06ada7addcb63537aeb270b1cf3d3b7455ca8913ceee5e73 support-python-pil-10.patch
+"
diff --git a/testing/freedoom/support-python-pil-10.patch b/testing/freedoom/support-python-pil-10.patch
new file mode 100644
index 00000000000..9e3632728f4
--- /dev/null
+++ b/testing/freedoom/support-python-pil-10.patch
@@ -0,0 +1,40 @@
+Patch-source: https://github.com/freedoom/freedoom/commit/d64ddc6ea
+From d64ddc6ea90406e21b4b93f5a1e7f99abfaac0d9 Mon Sep 17 00:00:00 2001
+From: Steven Elliott <selliott512@gmail.com>
+Date: Sun, 16 Jul 2023 14:52:04 -0400
+Subject: [PATCH] create_caption: Python PIL 10.0.0 support (#1027)
+
+To support Python PIL 10.0.0 this change uses newer API textbbox() when
+available, and older API textsize() when not.
+---
+ graphics/text/create_caption | 17 +++++++++++++++--
+ 1 file changed, 15 insertions(+), 2 deletions(-)
+
+diff --git a/graphics/text/create_caption b/graphics/text/create_caption
+index 7ddbd8d66..22bc0507d 100755
+--- a/graphics/text/create_caption
++++ b/graphics/text/create_caption
+@@ -18,8 +18,21 @@ background_image.load()
+ background_image = background_image.convert("RGBA")
+ image = Image.new("RGBA", background_image.size, (0, 0, 0, 0))
+ draw = ImageDraw.Draw(image)
+-txt1_size = draw.textsize(txt1, font=font)
+-txt2_size = draw.textsize(txt2, font=font)
++
++# Getting the text size is tricky since for newer PIL, such as 10.0.0, only
++# textbbox() is supported, but for older PIL, such 7.2.0, only textsize()
++# is supported. The solution is to default to the newer API, but fallback to
++# the older one when it is not available.
++try:
++ # This newer API returns a four item tuple. The "xy" kwarg is returned in
++ # the first two items, and last two items is the size needed, but with "xy"
++ # added, so passing "(0, 0)" returns the size needed.
++ txt1_size = draw.textbbox(xy=(0, 0), text=txt1, font=font)[2:]
++ txt2_size = draw.textbbox(xy=(0, 0), text=txt2, font=font)[2:]
++except:
++ # This older API simply returns the size needed.
++ txt1_size = draw.textsize(txt1, font=font)
++ txt2_size = draw.textsize(txt2, font=font)
+
+ draw.text(
+ (5, int(image.height - txt1_size[1] - 5)),
diff --git a/testing/freeipmi/APKBUILD b/testing/freeipmi/APKBUILD
deleted file mode 100644
index 9a0103de434..00000000000
--- a/testing/freeipmi/APKBUILD
+++ /dev/null
@@ -1,67 +0,0 @@
-# Contributor: Sodface <sod@sodface.com>
-# Maintainer: Sodface <sod@sodface.com>
-pkgname=freeipmi
-pkgver=1.6.9
-pkgrel=0
-pkgdesc="IPMI library and utilities"
-url="https://www.gnu.org/software/freeipmi/"
-arch="all !ppc64le"
-license="GPL-3.0-or-later"
-options="!check" # no test suite
-makedepends="argp-standalone libgcrypt-dev"
-subpackages="$pkgname-doc $pkgname-dev $pkgname-libs $pkgname-openrc"
-source="https://ftp.gnu.org/gnu/freeipmi/freeipmi-$pkgver.tar.gz
- bmc-watchdog.confd
- bmc-watchdog.initd
- ipmidetectd.confd
- ipmidetectd.initd
- ipmiseld.confd
- ipmiseld.initd"
-
-prepare() {
- default_prepare
- update_config_sub
- update_config_guess
-}
-
-build() {
- # musl stropts.h does not define getmsg or putmsg
- # checked for by ipmi-sunbmc-driver.c. Disable it.
- ./configure ac_cv_header_sys_stropts_h=no \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --infodir=/usr/share/info \
- --localstatedir=/var \
- --disable-static \
- --disable-init-scripts
- make
-}
-
-package() {
- make -j1 DESTDIR="$pkgdir" install
- install -Dm 644 "$srcdir"/bmc-watchdog.confd \
- "$pkgdir"/etc/conf.d/bmc-watchdog
- install -Dm755 "$srcdir"/bmc-watchdog.initd \
- "$pkgdir"/etc/init.d/bmc-watchdog
- install -Dm 644 "$srcdir"/ipmidetectd.confd \
- "$pkgdir"/etc/conf.d/ipmidetectd
- install -Dm755 "$srcdir"/ipmidetectd.initd \
- "$pkgdir"/etc/init.d/ipmidetectd
- install -Dm 644 "$srcdir"/ipmiseld.confd \
- "$pkgdir"/etc/conf.d/ipmiseld
- install -Dm755 "$srcdir"/ipmiseld.initd \
- "$pkgdir"/etc/init.d/ipmiseld
-}
-
-sha512sums="
-536add8dc01aa4d9df45e3499f8be1318185b19beb579c8f991a11ca973626d7e0aabe1d8760a9addadc418ea5c1e2b5432053e46ba94fd9078fb6dcabf48280 freeipmi-1.6.9.tar.gz
-11bbd920eb67a64a9d3742e860ae146c1a00398f44d4cead49f8f6070f46a09249c05bb647a1b7bf2c4c6c78e1ae393b2e52395f640bc7e5139aade7c99b45b2 bmc-watchdog.confd
-1e064b0b295fbf76e5deddeaa4edf1b0e5d9b642c2e4be9f3c5cce0700c02ec18778eac4a0cd8196fc5d71ffad9921de8df08a8569812252dd3d604c6f67ad5a bmc-watchdog.initd
-f10e908a451c646b2c61338d79e69663c05216a54093745bd2b659041e0b91adb9be4077c92d63f6f3d62cb5510168b6a57e5e86375533e235fd3abb2b72a49c ipmidetectd.confd
-52e90bb45eb32b447250db3df44d7ba37f821a2d699bc586bdb50706b13e638008cd46ad97cb421fa2d2248f2bb3543d99ed95d27bfdd3b82b560a6fe5da153e ipmidetectd.initd
-0a031f29a4692085054d5fc2dfe6d0ad7fb762f7ee96849ce2d562a90d6e3b0f3ae8328ab852dc22bee6221bc5cd8b588bd02075222038fa0f0e2f64ac185799 ipmiseld.confd
-f95ed699a467689dc1c7c047bd2da8fde04eabc890d02a6517e044a3a5cd05e9ebdeb2b8504fdc053920a8ef281bcf4e2be5a38d3bb4746952bba0e96a47c153 ipmiseld.initd
-"
diff --git a/testing/freeipmi/bmc-watchdog.confd b/testing/freeipmi/bmc-watchdog.confd
deleted file mode 100644
index 4d39cf4d8b7..00000000000
--- a/testing/freeipmi/bmc-watchdog.confd
+++ /dev/null
@@ -1,44 +0,0 @@
-#
-# This configuration file controls the behaviour of the bmc-watchdog daemon
-# from FreeIPMI.
-#
-# -u INT, --timer-use=INT
-# Set timer use. The timer use value can be set to one of the
-# following: 1 = BIOS FRB2, 2 = BIOS POST, 3 = OS_LOAD, 4 = SMS
-# OS, 5 = OEM.
-#
-# -p INT, --pre-timeout-interrupt=INT
-# Set pre-timeout interrupt. The pre timeout interrupt can be set
-# to one of the following: 0 = None, 1 = SMI, 2 = NMI, 3 = Messag-
-# ing Interrupt.
-#
-# -a INT, --timeout-action=INT
-# Set timeout action. The timeout action can be set to one of the
-# following: 0 = No action, 1 = Hard Reset, 2 = Power Down, 3 =
-# Power Cycle.
-#
-# -F, --clear-bios-frb2
-# Clear BIOS FRB2 Timer Use Flag.
-#
-# -P, --clear-bios-post
-# Clear BIOS POST Timer Use Flag.
-#
-# -L, --clear-os-load
-# Clear OS Load Timer Use Flag.
-#
-# -S, --clear-sms-os
-# Clear SMS/OS Timer Use Flag.
-#
-# -O, --clear-oem
-# Clear OEM Timer Use Flag.
-#
-# -i SECS, --initial-countdown=SECS
-# Set initial countdown in seconds.
-#
-# -e, --reset-period
-# Time interval to wait before resetting timer. The default is 60
-# seconds.
-#
-# For the remaining options, consult man bmc-watchdog
-#
-OPTIONS="-d -u 4 -p 0 -a 1 -F -P -L -S -O -i 900 -e 60"
diff --git a/testing/freeipmi/bmc-watchdog.initd b/testing/freeipmi/bmc-watchdog.initd
deleted file mode 100644
index 6beab06597c..00000000000
--- a/testing/freeipmi/bmc-watchdog.initd
+++ /dev/null
@@ -1,26 +0,0 @@
-#!/sbin/openrc-run
-
-description="BMC Watchdog daemon"
-pidfile="/var/run/$RC_SVCNAME.pid"
-command="/usr/sbin/$RC_SVCNAME"
-
-start() {
- ebegin "Starting $RC_SVCNAME"
- start-stop-daemon --start \
- --exec $command \
- --pidfile $pidfile \
- --make-pidfile \
- --quiet \
- --background \
- -- \
- --daemon
- $OPTIONS
- eend $?
-}
-
-stop() {
- ebegin "Stopping $RC_SVCNAME"
- start-stop-daemon --stop \
- --pidfile $pidfile
- eend $?
-}
diff --git a/testing/freeipmi/ipmidetectd.confd b/testing/freeipmi/ipmidetectd.confd
deleted file mode 100644
index 74245f14c0c..00000000000
--- a/testing/freeipmi/ipmidetectd.confd
+++ /dev/null
@@ -1,5 +0,0 @@
-# This configuration file controls the behaviour of the ipmid daemon
-# from FreeIPMI.
-# See `man 8 ipmitdetectd` for further information.
-
-# OPTIONS="-c /etc/freeipmi/ipmidetectd.conf"
diff --git a/testing/freeipmi/ipmidetectd.initd b/testing/freeipmi/ipmidetectd.initd
deleted file mode 100644
index a791267f851..00000000000
--- a/testing/freeipmi/ipmidetectd.initd
+++ /dev/null
@@ -1,25 +0,0 @@
-#!/sbin/openrc-run
-
-description="IPMI node detection daemon"
-pidfile="/var/run/$RC_SVCNAME.pid"
-command="/usr/sbin/$RC_SVCNAME"
-
-start() {
- ebegin "Starting $RC_SVCNAME"
- start-stop-daemon --start \
- --exec $command \
- --pidfile $pidfile \
- --make-pidfile \
- --quiet \
- --background \
- -- \
- $OPTIONS
- eend $?
-}
-
-stop() {
- ebegin "Stopping $RC_SVCNAME"
- start-stop-daemon --stop \
- --pidfile $pidfile
- eend $?
-}
diff --git a/testing/freeipmi/ipmiseld.confd b/testing/freeipmi/ipmiseld.confd
deleted file mode 100644
index 8e40a5c0c8d..00000000000
--- a/testing/freeipmi/ipmiseld.confd
+++ /dev/null
@@ -1,5 +0,0 @@
-# This configuration file controls the behaviour of the ipmiseld daemon
-# from FreeIPMI.
-# See `man 8 ipmiseld` for further information.
-
-# OPTIONS="--config-file /etc/freeipmi/ipmiseld.conf"
diff --git a/testing/freeipmi/ipmiseld.initd b/testing/freeipmi/ipmiseld.initd
deleted file mode 100644
index ada5bcdde3c..00000000000
--- a/testing/freeipmi/ipmiseld.initd
+++ /dev/null
@@ -1,25 +0,0 @@
-#!/sbin/openrc-run
-
-description="IPMI system event log daemon"
-pidfile="/var/run/$RC_SVCNAME.pid"
-command="/usr/sbin/$RC_SVCNAME"
-
-start() {
- ebegin "Starting $RC_SVCNAME"
- start-stop-daemon --start \
- --exec $command \
- --pidfile $pidfile \
- --make-pidfile \
- --quiet \
- --background \
- -- \
- $OPTIONS
- eend $?
-}
-
-stop() {
- ebegin "Stopping $RC_SVCNAME"
- start-stop-daemon --stop \
- --pidfile $pidfile
- eend $?
-}
diff --git a/testing/freetube/APKBUILD b/testing/freetube/APKBUILD
new file mode 100644
index 00000000000..73d76afe70e
--- /dev/null
+++ b/testing/freetube/APKBUILD
@@ -0,0 +1,56 @@
+# Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>
+# Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
+pkgname=freetube
+pkgver=0.20.0
+pkgrel=0
+pkgdesc="An open source desktop YouTube player built with privacy in mind."
+arch="x86_64 aarch64" # blocked by electron
+license="AGPL-3.0-only"
+depends="
+ electron
+ font-roboto
+ "
+makedepends="
+ electron-tasje
+ nodejs
+ yarn
+ "
+url="https://freetubeapp.io"
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/FreeTubeApp/FreeTube/archive/v$pkgver-beta.tar.gz
+ freetube.sh
+ tasje-dotdash.patch
+ "
+options="net !check" # No testsuite
+builddir="$srcdir"/FreeTube-$pkgver-beta
+
+export npm_config_nodedir=/usr/include/electron/node_headers
+export npm_config_build_from_source=true
+
+prepare() {
+ default_prepare
+
+ yarn --cache-folder "$srcdir"/yarn-cache install --frozen-lockfile --ignore-scripts
+}
+
+build() {
+ yarn --cache-folder "$srcdir"/yarn-cache run pack
+
+ tasje --config _scripts/ebuilder.config.js pack
+}
+
+package() {
+ # directory creation + program copy
+ install -Dm755 build/resources/app.asar -t "$pkgdir"/usr/lib/$pkgname/
+
+ # link binaries + other items
+ install -Dm755 "$srcdir"/freetube.sh "$pkgdir"/usr/bin/$pkgname
+ install -Dm644 "$builddir"/_icons/icon.svg "$pkgdir"/usr/share/icons/hicolor/scalable/$pkgname.svg
+ install -Dm644 build/freetube.desktop "$pkgdir"/usr/share/applications/$pkgname.desktop
+}
+
+sha512sums="
+b82cdaff82d7bd325f3127794160382c97be3b72c5ef4bb3f327a8ada6b609043bc30a1f6af59c38e23237aac7d8b6ea2685c22aa82469c8d08b96cb839a3099 freetube-0.20.0.tar.gz
+2ce2effc794bb663789cefe968b5899122127983dbfa1b240aa33a2be383720b18204e6d01b4a550df72956f02b6636b79c93a58f470a970b09b770f5b8f2fc4 freetube.sh
+d27cb896b65a7e8d52ffe86e5f74eed72b6cf976b28e1a13012d34c7eceba5ff6f20298017738dfa93c0336ffa52b8ee4da7e06b02747062898db7e678819526 tasje-dotdash.patch
+"
diff --git a/testing/freetube/freetube.sh b/testing/freetube/freetube.sh
new file mode 100644
index 00000000000..5d2bb776c70
--- /dev/null
+++ b/testing/freetube/freetube.sh
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+exec electron /usr/lib/freetube/app.asar "$@"
diff --git a/testing/freetube/tasje-dotdash.patch b/testing/freetube/tasje-dotdash.patch
new file mode 100644
index 00000000000..9f2c2e0be90
--- /dev/null
+++ b/testing/freetube/tasje-dotdash.patch
@@ -0,0 +1,12 @@
+https://codeberg.org/selfisekai/electron_tasje/issues/27
+--- ./_scripts/ebuilder.config.js.orig
++++ ./_scripts/ebuilder.config.js
+@@ -20,7 +20,7 @@
+ files: [
+ '_icons/iconColor.*',
+ 'icon.svg',
+- './dist/**/*',
++ 'dist/**/*',
+ '!dist/web/*',
+ '!node_modules/**/*',
+ ],
diff --git a/testing/frescobaldi/APKBUILD b/testing/frescobaldi/APKBUILD
new file mode 100644
index 00000000000..844ead40b27
--- /dev/null
+++ b/testing/frescobaldi/APKBUILD
@@ -0,0 +1,35 @@
+# Maintainer: Krystian Chachuła <krystian@krystianch.com>
+pkgname=frescobaldi
+pkgver=3.3.0
+pkgrel=1
+pkgdesc="LilyPond sheet music text editor"
+url="https://www.frescobaldi.org/"
+arch="noarch"
+license="GPL-2.0-or-later"
+depends="py3-qt5 py3-poppler-qt5 py3-qpageview py3-ly"
+makedepends="py3-gpep517 py3-setuptools py3-wheel gettext"
+subpackages="$pkgname-pyc $pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/frescobaldi/frescobaldi/archive/refs/tags/v$pkgver.tar.gz"
+options="!check" # no tests
+
+build() {
+ make -C i18n
+
+ make -C linux
+
+ gpep517 build-wheel \
+ --wheel-dir dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ dist/*.whl
+
+ install -m 644 frescobaldi.1 \
+ "$pkgdir"/usr/share/man/man1/frescobaldi.1
+}
+
+sha512sums="
+0dc851cb2ab001f366d20d3c27159087a643cbb5661cc7388b9ec5209c03d4d47dc9114f378dab0562a1a4cb84c2a67eddd8b1981ceaa057e5ac79f8c277ad05 frescobaldi-3.3.0.tar.gz
+"
diff --git a/testing/freshrss/APKBUILD b/testing/freshrss/APKBUILD
new file mode 100644
index 00000000000..8a70bafb36d
--- /dev/null
+++ b/testing/freshrss/APKBUILD
@@ -0,0 +1,155 @@
+# Maintainer: Cowington Post <cowingtonpost@gmail.com>
+pkgname=freshrss
+pkgver=1.23.1
+pkgrel=1
+pkgdesc="Free and self hosted rss feed agregator"
+url="https://freshrss.org"
+arch="noarch"
+license="AGPL-3.0-or-later"
+pkgusers="freshrss"
+pkggroups="www-data"
+_php=php82
+depends="
+ $_php
+ $_php-ctype
+ $_php-curl
+ $_php-dom
+ $_php-fileinfo
+ $_php-fpm
+ $_php-gmp
+ $_php-intl
+ $_php-mbstring
+ $_php-session
+ $_php-xml
+ $_php-zip
+ "
+checkdepends="
+ $_php-phar
+ $_php-tokenizer
+ $_php-xmlwriter
+ phpunit
+ "
+install="$pkgname.pre-install $pkgname-openrc.post-install"
+subpackages="
+ $pkgname-doc
+ $pkgname-openrc
+ $pkgname-lang
+ $pkgname-themes
+ $pkgname-mysql
+ $pkgname-pgsql
+ $pkgname-sqlite"
+source="https://github.com/FreshRSS/FreshRSS/archive/refs/tags/$pkgver/freshrss-$pkgver.tar.gz
+ defaults.patch
+ freshrss.confd
+ fpm-pool.conf
+ freshrss.crontab
+ "
+builddir="$srcdir/FreshRSS-$pkgver"
+
+prepare() {
+ default_prepare
+
+ # Create directory for tests
+ mkdir -p "$srcdir"/data/users/_
+}
+
+check() {
+ DATA_PATH="$srcdir"/data \
+ $_php /usr/bin/phpunit ./tests --bootstrap ./tests/bootstrap.php
+}
+
+package() {
+ rm -f ./*.md
+ rm -rf .devcontainer
+ rm -f .dockerignore
+ rm -f .editorconfig
+ rm -f .eslint*
+ rm -f .jshint*
+ rm -f .style*
+ rm -f .markdownlint*
+ rm -f .hadolint*
+ rm -f .typos.toml
+ rm -f Makefile
+
+ install -d "$pkgdir"/usr/share/doc
+ mv ./docs "$pkgdir"/usr/share/doc/$pkgname
+
+ install -d "$pkgdir"/usr/share/webapps/freshrss
+ cp -r . "$pkgdir"/usr/share/webapps/freshrss/
+
+ find "$pkgdir/usr/share/webapps/freshrss" -name '.git*' -exec rm -rf {} \; || true
+
+ rm -rf "$pkgdir"/usr/share/webapps/freshrss/Docker
+ rm -rf "$pkgdir"/usr/share/webapps/freshrss/tests
+ install -dm755 "$pkgdir"/var/lib/freshrss
+
+ mv "$pkgdir"/usr/share/webapps/freshrss/data "$pkgdir"/var/lib/freshrss/data
+ chgrp -R "www-data" "$pkgdir"/var/lib/freshrss/
+ chown -R "$pkgname" "$pkgdir"/var/lib/freshrss/
+
+ install -dm775 -o "$pkgname" -g www-data "$pkgdir"/var/log/"$pkgname"
+
+ install -m600 -D "$srcdir"/freshrss.crontab "$pkgdir"/etc/crontabs/freshrss
+}
+
+openrc() {
+ install -m644 -D "$srcdir"/fpm-pool.conf "$subpkgdir/etc/$_php/php-fpm.d/$pkgname".conf
+ install -m644 -D "$srcdir/$pkgname".confd "$subpkgdir"/etc/conf.d/"$pkgname"
+
+ install -d -o freshrss -g www-data "$pkgdir"/var/tmp/freshrss
+
+ mkdir -p "$subpkgdir"/etc/init.d/
+ ln -s "php-fpm${_php#php}" "$subpkgdir"/etc/init.d/"$pkgname"
+}
+
+lang() {
+ pkgdesc="translations for $pkgname"
+ install_if="$pkgname=$pkgver-r$pkgrel lang"
+ local lang
+ for lang in "$pkgdir"/usr/share/webapps/freshrss/app/i18n/*; do
+ # keep in base for default language
+ if [ "$(basename "$lang")" != "en" ]; then
+ amove /usr/share/webapps/freshrss/app/i18n/"$(basename "$lang")"
+ fi
+ done
+}
+
+themes() {
+ pkgdesc="themes for $pkgname"
+ local theme
+ for theme in "$pkgdir"/usr/share/webapps/freshrss/p/themes/*; do
+ if [ -d "$theme" ]; then
+ case "$(basename "$theme")" in
+ # keep base-theme and default files, split the rest
+ base-theme | fonts | icons | Origine) ;;
+ *) amove /usr/share/webapps/freshrss/p/themes/"$(basename "$theme")" ;;
+ esac
+ fi
+ done
+}
+
+mysql() {
+ pkgdesc="FreshRSS MySQL support"
+ depends="$pkgname $_php-pdo_mysql"
+ mkdir -p "$subpkgdir"
+}
+
+pgsql() {
+ pkgdesc="FreshRSS PostgreSQL support"
+ depends="$pkgname $_php-pgsql $_php-pdo_pgsql"
+ mkdir -p "$subpkgdir"
+}
+
+sqlite() {
+ pkgdesc="FreshRSS SQLite support"
+ depends="$pkgname $_php-sqlite3 $_php-pdo_sqlite"
+ mkdir -p "$subpkgdir"
+}
+
+sha512sums="
+df4c7eedf3dc8c5c9d0de722e00e3846d1bb1b1605d53a9415b5fd49715b91d6cf22f7f64503a706af32dc6f96415e28d772f7442816e76e266b4aa908984e95 freshrss-1.23.1.tar.gz
+dbd1468439192cd536ae1fc063edcda0a8047504c053f2566486697d454bbc328bb5ba841b597c09c1c4954fa0d71d1c79044fb8a179915b5bcc136fa2b50889 defaults.patch
+304767cc14db425fdb6f0214aca8baaa92ea05e8fc767e79ec96c4d9032509c2b52cb687106dc25b291bc7150305dde0bd0a84d77b0fc8ad872d2331c458bacf freshrss.confd
+b6fe57b31bd48afb067d0c851ff42078e01ee42e3e2f01bbb64f8114429ddce740ce3fbd76eb487acf1b80909eb7e5e2721d5f3b2bdd6264d75d169d032dd2fe fpm-pool.conf
+96cbd84ea28ea193212505d228a5ec2124e7a63da02f3fbfb37460aacb5e3dbd9bd72385267f115e817177b9f640e8861e845e9cf9e121c7d9f7af1d22f449e4 freshrss.crontab
+"
diff --git a/testing/freshrss/defaults.patch b/testing/freshrss/defaults.patch
new file mode 100644
index 00000000000..6dfa447a62c
--- /dev/null
+++ b/testing/freshrss/defaults.patch
@@ -0,0 +1,26 @@
+diff --git a/config.default.php b/config.default.php
+index 87297554..51e42ad7 100644
+--- a/config.default.php
++++ b/config.default.php
+@@ -194,7 +194,7 @@ return array(
+ 'extensions' => [],
+
+ # Disable self-update,
+- 'disable_update' => false,
++ 'disable_update' => true,
+
+ # Trusted IPs (e.g. of last proxy) that are allowed to send unsafe HTTP headers.
+ # The connection IP used during FreshRSS setup is automatically added to this list.
+diff --git a/constants.php b/constants.php
+index 824a7a5f..a09fe6c2 100644
+--- a/constants.php
++++ b/constants.php
+@@ -45,7 +45,7 @@ $dataPath = getenv('DATA_PATH');
+ if (is_string($dataPath) && $dataPath !== '') {
+ define('DATA_PATH', $dataPath);
+ } else {
+- defined('DATA_PATH') or define('DATA_PATH', FRESHRSS_PATH . '/data');
++ defined('DATA_PATH') or define('DATA_PATH', '/var/lib/freshrss/data');
+ }
+
+ defined('UPDATE_FILENAME') or define('UPDATE_FILENAME', DATA_PATH . '/update.php');
diff --git a/testing/freshrss/fpm-pool.conf b/testing/freshrss/fpm-pool.conf
new file mode 100644
index 00000000000..216a9230975
--- /dev/null
+++ b/testing/freshrss/fpm-pool.conf
@@ -0,0 +1,56 @@
+[global]
+error_log = /var/log/freshrss/php-fpm.log
+
+log_level = warning
+
+emergency_restart_threshold = 10
+
+emergency_restart_interval = 1m
+
+process_control_timeout = 10s
+
+
+[freshrss]
+user = freshrss
+group = www-data
+
+listen = /run/freshrss/fastcgi.sock
+
+listen.mode = 0660
+
+pm = ondemand
+
+pm.max_children = 10
+
+pm.process_idle_timeout = 120s
+
+pm.max_requests = 500
+
+pm.status_path =
+
+ping.path = /ping
+
+env[PATH] = /usr/local/bin:/usr/bin:/bin
+env[TMP] = /tmp
+env[TMPDIR] = /tmp
+env[TEMP] = /tmp
+
+php_admin_flag[file_uploads] = true
+
+php_admin_value[memory_limit] = 512M
+php_admin_value[post_max_size] = 513M
+php_admin_value[upload_max_filesize] = 513M
+
+php_admin_value[session.save_path] = /var/tmp/freshrss
+php_admin_value[sys_temp_dir] = /var/tmp/freshrss
+
+php_admin_flag[log_errors] = on
+php_admin_value[error_log] = /var/log/freshrss/php.error.log
+
+php_admin_value[opcache.error_log] = /var/log/freshrss/php.error.log
+
+php_admin_flag[output_buffering] = false
+
+php_admin_flag[mbstring.func_overload] = false
+
+php_admin_value[always_populate_raw_post_data] = -1
diff --git a/testing/freshrss/freshrss-openrc.post-install b/testing/freshrss/freshrss-openrc.post-install
new file mode 100755
index 00000000000..48034186574
--- /dev/null
+++ b/testing/freshrss/freshrss-openrc.post-install
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+cat << EOF
+*
+* Point your web server to /run/freshrss/fastcgi.sock and
+* start FreshRSS with
+* /etc/init.d/freshrss start.
+*
+EOF
+
+exit 0
diff --git a/testing/freshrss/freshrss.confd b/testing/freshrss/freshrss.confd
new file mode 100755
index 00000000000..ef7582abddc
--- /dev/null
+++ b/testing/freshrss/freshrss.confd
@@ -0,0 +1,4 @@
+name="FreshRSS"
+user="freshrss"
+group="www-data"
+
diff --git a/testing/freshrss/freshrss.crontab b/testing/freshrss/freshrss.crontab
new file mode 100644
index 00000000000..3f371ee1b88
--- /dev/null
+++ b/testing/freshrss/freshrss.crontab
@@ -0,0 +1 @@
+*/15 * * * * php82 -f /usr/share/webapps/freshrss/app/actualize_script.php >> /dev/null 2>&1
diff --git a/testing/freshrss/freshrss.pre-install b/testing/freshrss/freshrss.pre-install
new file mode 100755
index 00000000000..6cb249022ea
--- /dev/null
+++ b/testing/freshrss/freshrss.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S -g 82 www-data 2>/dev/null
+adduser -S -D -H -h /var/lib/freshrss -s /sbin/nologin -G www-data -g FreshRSS freshrss 2>/dev/null
+
+exit 0
diff --git a/testing/fscryptctl/APKBUILD b/testing/fscryptctl/APKBUILD
new file mode 100644
index 00000000000..ee6862d0f0f
--- /dev/null
+++ b/testing/fscryptctl/APKBUILD
@@ -0,0 +1,26 @@
+# Contributor: Luca Weiss <luca@z3ntu.xyz>
+# Maintainer: Luca Weiss <luca@z3ntu.xyz>
+pkgname=fscryptctl
+pkgver=1.1.0
+pkgrel=0
+pkgdesc="Small C tool for Linux filesystem encryption"
+url="https://github.com/google/fscryptctl"
+arch="all"
+license="Apache-2.0"
+makedepends="linux-headers"
+source="https://github.com/google/fscryptctl/archive/v$pkgver/fscryptctl-$pkgver.tar.gz"
+options="!check" # tests require root
+
+# Skip building docs because pandoc is only available for x86_64 and aarch64
+
+build() {
+ make fscryptctl
+}
+
+package() {
+ make PREFIX=/usr DESTDIR="$pkgdir" install-bin
+}
+
+sha512sums="
+3ee37d3b10a145b2c50fa56644461313437d97f9ca1a840f6e897f527c5bf6c15af1172a1994b3ff0038f469a74edfa40f7383c08f24b195a78f3f5d35dd895b fscryptctl-1.1.0.tar.gz
+"
diff --git a/testing/fulcrum/APKBUILD b/testing/fulcrum/APKBUILD
index eae9e50a214..ded1777345a 100644
--- a/testing/fulcrum/APKBUILD
+++ b/testing/fulcrum/APKBUILD
@@ -1,18 +1,16 @@
-# Contributor: Scott Robinson <ssr@squareup.com>
-# Maintainer: Scott Robinson <ssr@squareup.com>
+# Contributor: Jurvis Tan <jurvis@squareup.com>
+# Maintainer: Jurvis Tan <jurvis@squareup.com>
pkgname=fulcrum
_pkgname=Fulcrum
-pkgver=1.6.0
+pkgver=1.9.8
pkgrel=0
pkgdesc="Fast & nimble SPV Server for BCH and BTC"
url="https://github.com/cculianu/Fulcrum"
arch="all !riscv64" # limited by rocksdb
license="GPL-3.0-or-later"
-makedepends="rocksdb-dev zlib-dev bzip2-dev zeromq-dev qt5-qtbase-dev"
+makedepends="rocksdb-dev<7.10 zlib-dev bzip2-dev zeromq-dev qt5-qtbase-dev"
subpackages="$pkgname-admin:admin:noarch $pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/cculianu/$_pkgname/archive/v$pkgver.tar.gz
- signet.patch
- "
+source="$pkgname-$pkgver.tar.gz::https://github.com/cculianu/$_pkgname/archive/v$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
options="!check"
@@ -34,6 +32,5 @@ admin() {
}
sha512sums="
-a292dda19aa510652a6f9fd2ac9b50add85054188ef6087bcae01143d8ee5b26af9203745b76736a2f5f489d4e539fe5917bc64243e7410f9ea07e1420fa7c27 fulcrum-1.6.0.tar.gz
-455b152c98c3850d8e4cc87c2881ca5e7d1ff922c8f5cc73b5fdf84bba3a5bee30a47afe48f950adb7f01ce3beb1743101ccd025cb4a87e010d3f6bcbc3b7291 signet.patch
+460b0a1fa0f10b5f379b556508d2773e1da64719f72acad2b663c7dce96ccdd35bd4db1f0a24d544a6afa0d870f7cca1fc3926c225e9cae3cbe6ebf4110be66a fulcrum-1.9.8.tar.gz
"
diff --git a/testing/fulcrum/signet.patch b/testing/fulcrum/signet.patch
deleted file mode 100644
index aed406fe688..00000000000
--- a/testing/fulcrum/signet.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/src/BTC.cpp b/src/BTC.cpp
-index 82473bd..12a4beb 100644
---- a/src/BTC.cpp
-+++ b/src/BTC.cpp
-@@ -175,6 +175,7 @@ namespace BTC
- {"testnet3", TestNet}, // bchd
- {"testnet4", TestNet4}, // possible future bchd
- {"regtest", RegTestNet}, // BCHN, BU, ABC, bchd
-+ {"signet", TestNet}, // BCHN
- }};
- const QString invalidNetName = "invalid";
- };
diff --git a/testing/fusee-nano/APKBUILD b/testing/fusee-nano/APKBUILD
index 5114ad8e3e8..01afa295a5d 100644
--- a/testing/fusee-nano/APKBUILD
+++ b/testing/fusee-nano/APKBUILD
@@ -1,36 +1,44 @@
# Contributor: TBK <alpine@jjtc.eu>
# Maintainer: TBK <alpine@jjtc.eu>
pkgname=fusee-nano
-pkgver=0.4
+pkgver=0.5.3
pkgrel=0
-pkgdesc="A minimalist re-implementation of the Fusée Gelée exploit, designed to run on embedded Linux devices."
+pkgdesc="Minimalist re-implementation of the Fusée Gelée exploit, designed to run on embedded Linux devices."
url="https://github.com/DavidBuchanan314/fusee-nano"
arch="all"
license="MIT"
options="!check" # No test suite
-makedepends="linux-headers"
+makedepends="linux-headers xxd"
subpackages="$pkgname-udev::noarch"
-source="$pkgname-$pkgver.tar.gz::https://github.com/DavidBuchanan314/fusee-nano/archive/$pkgver.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/DavidBuchanan314/fusee-nano/archive/$pkgver.tar.gz
+ broken-makefile.patch
+ "
build() {
- make
+ make CC="${CC:-cc}"
}
package() {
- mkdir -p "$pkgdir"/usr/share/$pkgname/
- cp -r files/* "$pkgdir"/usr/share/$pkgname/
- install -Dm 755 fusee-nano "$pkgdir"/usr/bin/fusee-nano
+ mkdir -p "$pkgdir"/usr/share/$pkgname/
+ cp -r files/* "$pkgdir"/usr/share/$pkgname/
+ install -Dm 755 fusee-nano "$pkgdir"/usr/bin/fusee-nano
- # Remove openwrt file
- rm "$pkgdir"/usr/share/$pkgname/20-tegra_rcm
+ # Remove openwrt file
+ rm "$pkgdir"/usr/share/$pkgname/20-tegra_rcm
+
+ mkdir -p "$pkgdir"/lib/udev/rules.d/
+ mv "$pkgdir"/usr/share/fusee-nano/*.rules \
+ "$pkgdir"/lib/udev/rules.d/
}
udev() {
- pkgdesc="udev rule for $pkgname"
- install_if="$pkgname=$pkgver-r$pkgrel eudev"
- mkdir -p "$subpkgdir"/lib/udev/rules.d/
- mv "$pkgdir"/usr/share/$pkgname/*.rules \
- "$subpkgdir"/lib/udev/rules.d/
+ pkgdesc="udev rule for $pkgname"
+ install_if="$pkgname=$pkgver-r$pkgrel eudev"
+
+ amove lib/udev/rules.d
}
-sha512sums="18fe586a111a9bc8dd9c6ff57002ac731843c83151bfe2d63dd8890305862a7a93a9737256405dbc1c76f5a3fab94475fa786135c55d712e26600d04e0c26450 fusee-nano-0.4.tar.gz"
+sha512sums="
+c110aa1597aaefbfb9c9ccd50c53d70450ce37854f794e625b4ed3438928e1b690091ff9cde9fd142b5e4d77c95a5e54a2926aa9d136f0bb2d54ebdacc106c81 fusee-nano-0.5.3.tar.gz
+c7f8c09625d357105015b620f012802513c6617e140d168f5e74a4c7c287578b78ca13f633cd6019a5f6494f85cece8c87260d8240035988ffc24afc53b7dcb4 broken-makefile.patch
+"
diff --git a/testing/fusee-nano/broken-makefile.patch b/testing/fusee-nano/broken-makefile.patch
new file mode 100644
index 00000000000..82fc107b076
--- /dev/null
+++ b/testing/fusee-nano/broken-makefile.patch
@@ -0,0 +1,13 @@
+diff --git a/Makefile b/Makefile
+index eae7a71..0b88a25 100644
+--- a/Makefile
++++ b/Makefile
+@@ -13,7 +13,7 @@ all: $(TARGET)
+ $(CC) -c -o $@ $< $(CFLAGS)
+
+ $(TARGET): $(OBJ)
+- $(CC) -o $@ $^ $(CFLAGS)
++ $(CC) -o $@ $^ $(CFLAGS) $(LDFLAGS)
+
+ clean:
+ rm $(TARGET) $(OBJ)
diff --git a/testing/fuzzylite/APKBUILD b/testing/fuzzylite/APKBUILD
new file mode 100644
index 00000000000..35901539d0d
--- /dev/null
+++ b/testing/fuzzylite/APKBUILD
@@ -0,0 +1,43 @@
+# Maintainer: ovf <ovf@mm.st>
+pkgname=fuzzylite
+pkgver=6.0
+pkgrel=0
+pkgdesc="A fuzzy logic control library in C++"
+url="https://fuzzylite.com"
+# only used for vcmi revdep
+arch="aarch64 x86_64"
+license="GPL-3.0-only"
+makedepends="cmake samurai"
+subpackages="$pkgname-libs $pkgname-dev $pkgname-doc"
+source="https://github.com/fuzzylite/fuzzylite/archive/refs/tags/v$pkgver/fuzzylite-$pkgver.tar.gz
+ no-werror.patch
+ "
+builddir="$srcdir/fuzzylite-$pkgver/fuzzylite"
+
+build() {
+ if [ "$CBUILD" != "$CHOST" ]; then
+ CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DCMAKE_BUILD_TYPE=None \
+ -DFL_BACKTRACE=OFF \
+ -DFL_BUILD_STATIC=OFF \
+ $CMAKE_CROSSOPTS
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+ install -Dm644 fuzzylite.1 -t "$pkgdir"/usr/share/man/man1/
+}
+
+sha512sums="
+6f5d40d0359458e109ac2aebfbf571f61867a8b49920f4a5e1b5d86bdf578dba038b942c9e05eab0d4620f73e8cded770abe7b5e597a3b4c39dbcf6a1259f4af fuzzylite-6.0.tar.gz
+536439896cfae4bcfc93f7d3a8474424a3e589b55e3ae57c1ab8936d3166dea688ae8f6f0ef414a79238150822d811f0420a3849c94b33c5a7cd011e755bb95b no-werror.patch
+"
diff --git a/testing/fuzzylite/no-werror.patch b/testing/fuzzylite/no-werror.patch
new file mode 100644
index 00000000000..06260b6af14
--- /dev/null
+++ b/testing/fuzzylite/no-werror.patch
@@ -0,0 +1,13 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 28435e2..3824c8f 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -74,7 +74,7 @@ set(CMAKE_RUNTIME_OUTPUT_DIRECTORY bin)
+ if(NOT MSVC)
+ #TODO: Remove -Werror before release.
+ #Add Unix compilation flags
+- set(CMAKE_CXX_FLAGS "-pedantic -Wall -Wextra -Werror ${CMAKE_CXX_FLAGS}")
++ set(CMAKE_CXX_FLAGS "-pedantic -Wall -Wextra ${CMAKE_CXX_FLAGS}")
+
+ set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG}")
+ set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE}")
diff --git a/testing/fwallet/APKBUILD b/testing/fwallet/APKBUILD
new file mode 100644
index 00000000000..cef42dc638c
--- /dev/null
+++ b/testing/fwallet/APKBUILD
@@ -0,0 +1,99 @@
+# Contributor: The one with the braid <info@braid.business>
+# Maintainer: The one with the braid <info@braid.business>
+pkgname=fwallet
+pkgver=1.1.4
+pkgrel=1
+pkgdesc="A beautiful cross-platform wallet application"
+url="https://gitlab.com/TheOneWithTheBraid/f_wallet"
+arch="aarch64 x86_64" # flutter
+license="EUPL-1.2"
+# xdg-user-dirs: pub/path_provider
+depends="
+ xdg-user-dirs
+ "
+makedepends="
+ flutter-desktop
+ libsecret-dev
+ patchelf
+ "
+source="
+ https://gitlab.com/TheOneWithTheBraid/f_wallet/-/archive/${_rev:-"v$pkgver"}/f_wallet-${_rev:-v"$pkgver"}.tar.gz
+
+ system-flutter.patch
+ no-werror.patch
+ flutter-3.19.patch
+ "
+builddir="$srcdir/f_wallet-${_rev:-"v$pkgver"}"
+# net: pub dependencies
+# !check: no tests
+options="net !check"
+
+export _pkgorg="business.braid.f_wallet"
+export _pkgexec="f_wallet"
+
+case "$CARCH" in
+ aarch64) _flutter_arch="arm64" ;;
+ x86_64) _flutter_arch="x64" ;;
+esac
+
+export PUB_CACHE="$srcdir/pub_cache"
+
+export CFLAGS="${CFLAGS/-g/} -O2 -Wno-error -Wno-unknown-warning-option -Wno-unused-command-line-argument"
+export CXXFLAGS="${CXXFLAGS/-g/} -O2 -Wno-error -Wno-unknown-warning-option -Wno-unused-command-line-argument"
+
+export CC=clang
+export CXX=clang++
+export AR=llvm-ar
+export NM=llvm-nm
+export LD=clang++
+
+prepare() {
+ default_prepare
+
+ flutter pub get --enforce-lockfile
+ flutter gen-l10n
+
+ # if there is a binary in the pub_cache, we sure did not build it.
+ for elf in $(scanelf -RA -F "%F" "$PUB_CACHE"); do
+ rm -f "$elf"
+ done
+}
+
+build() {
+ flutter build linux -v --release \
+ --dart-define=FWALLET_IS_STABLE=true \
+ --dart-define=FWALLET_VERSION=$pkgver
+
+ patchelf --set-rpath '$ORIGIN/lib' build/linux/"$_flutter_arch"/release/bundle/$_pkgexec
+ for _elf in build/linux/"$_flutter_arch"/release/bundle/lib/lib*.so; do
+ # running patchelf on libapp (the AOT snapshot of the whole Dart codebase)
+ # breaks it with "[FATAL:flutter/runtime/dart_vm_initializer.cc(89)]
+ # Error while initializing the Dart VM: Invalid vm isolate snapshot seen".
+ #
+ # it has no rpath and only links to libc soname anyway. 🤷â€â™€ï¸
+ [ "$(basename "$_elf")" != "libapp.so" ] || continue
+
+ patchelf --set-rpath '$ORIGIN' "$_elf"
+ done
+}
+
+package() {
+ local bundle="$builddir"/build/linux/$_flutter_arch/release/bundle
+
+ install -Dm755 "$bundle"/$_pkgexec "$pkgdir"/usr/lib/$pkgname/$_pkgexec
+ cp -rv "$bundle"/lib "$pkgdir"/usr/lib/$pkgname/lib
+ cp -rv "$bundle"/data "$pkgdir"/usr/lib/$pkgname/data
+
+ mkdir -p "$pkgdir"/usr/bin
+ ln -sv /usr/lib/$pkgname/$_pkgexec "$pkgdir"/usr/bin/$_pkgexec
+
+ install -Dm644 linux/$_pkgorg.desktop "$pkgdir"/usr/share/applications/$_pkgorg.desktop
+ install -Dm644 assets/logo/logo-circle.svg "$pkgdir"/usr/share/icons/hicolor/scalable/apps/$_pkgorg.svg
+}
+
+sha512sums="
+5ea49d2a766ff9f6ff7c7f6921cb91c5f71d67adfaeba41931ff175cd5332c5aed82a7feb5bd42c3376d1ab6b4e6bd58123bddb21ada352f0891021d03b665a2 f_wallet-v1.1.4.tar.gz
+91014708ab7bb81518ce93db0612209d6479dfa503064d9e9d3186cd5e861165a3f63e286d271d5aac8a1d676868fc3acf51648ac01c16a215062a317ccb6623 system-flutter.patch
+1d2b7d28a09e26ed48d89aa5f5dffb738ba367fa2760b12980225239705e16fa1ec89901d7aecf26c8527de721a5f50f50cc77ea009cd5f25f219d1af8730ed8 no-werror.patch
+68b198c617df5f94bf674348e5fd00d3aedd214d09dc5260257c88aaf0f9d11bafc9f5abde5240ec9495390f58f3674b3407e97a77c282985abc66ee843ad828 flutter-3.19.patch
+"
diff --git a/testing/fwallet/flutter-3.19.patch b/testing/fwallet/flutter-3.19.patch
new file mode 100644
index 00000000000..24302d071e7
--- /dev/null
+++ b/testing/fwallet/flutter-3.19.patch
@@ -0,0 +1,128 @@
+From de451759e1cd35edc55d6cfee88b5dfc97ae491f Mon Sep 17 00:00:00 2001
+From: "lauren n. liberda" <lauren@selfisekai.rocks>
+Date: Fri, 16 Feb 2024 09:19:43 +0100
+Subject: [PATCH] chore: upgrade flutter to 3.19.0
+
+---
+ .gitlab-ci.yml | 2 +-
+ flutter_version | 2 +-
+ pubspec.lock | 48 ++++++++++++++++++++++++++++++++++++++++--------
+ 3 files changed, 42 insertions(+), 10 deletions(-)
+
+diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
+index c69785f..550dc4d 100644
+--- a/.gitlab-ci.yml
++++ b/.gitlab-ci.yml
+@@ -1,5 +1,5 @@
+ variables:
+- FLUTTER_VERSION: 3.16.9
++ FLUTTER_VERSION: 3.19.0
+
+ image: registry.gitlab.com/theonewiththebraid/flutter-dockerimages:$FLUTTER_VERSION-base
+
+diff --git a/flutter_version b/flutter_version
+index f7be2e1..419f300 100644
+--- a/flutter_version
++++ b/flutter_version
+@@ -1 +1 @@
+-3.16.9
++3.19.0
+diff --git a/pubspec.lock b/pubspec.lock
+index fbe1bf5..b35f21c 100644
+--- a/pubspec.lock
++++ b/pubspec.lock
+@@ -421,6 +421,30 @@ packages:
+ url: "https://pub.dev"
+ source: hosted
+ version: "4.8.1"
++ leak_tracker:
++ dependency: transitive
++ description:
++ name: leak_tracker
++ sha256: "78eb209deea09858f5269f5a5b02be4049535f568c07b275096836f01ea323fa"
++ url: "https://pub.dev"
++ source: hosted
++ version: "10.0.0"
++ leak_tracker_flutter_testing:
++ dependency: transitive
++ description:
++ name: leak_tracker_flutter_testing
++ sha256: b46c5e37c19120a8a01918cfaf293547f47269f7cb4b0058f21531c2465d6ef0
++ url: "https://pub.dev"
++ source: hosted
++ version: "2.0.1"
++ leak_tracker_testing:
++ dependency: transitive
++ description:
++ name: leak_tracker_testing
++ sha256: a597f72a664dbd293f3bfc51f9ba69816f84dcd403cdac7066cb3f6003f3ab47
++ url: "https://pub.dev"
++ source: hosted
++ version: "2.0.1"
+ linkify:
+ dependency: transitive
+ description:
+@@ -449,26 +473,26 @@ packages:
+ dependency: transitive
+ description:
+ name: matcher
+- sha256: "1803e76e6653768d64ed8ff2e1e67bea3ad4b923eb5c56a295c3e634bad5960e"
++ sha256: d2323aa2060500f906aa31a895b4030b6da3ebdcc5619d14ce1aada65cd161cb
+ url: "https://pub.dev"
+ source: hosted
+- version: "0.12.16"
++ version: "0.12.16+1"
+ material_color_utilities:
+ dependency: transitive
+ description:
+ name: material_color_utilities
+- sha256: "9528f2f296073ff54cb9fee677df673ace1218163c3bc7628093e7eed5203d41"
++ sha256: "0e0a020085b65b6083975e499759762399b4475f766c21668c4ecca34ea74e5a"
+ url: "https://pub.dev"
+ source: hosted
+- version: "0.5.0"
++ version: "0.8.0"
+ meta:
+ dependency: transitive
+ description:
+ name: meta
+- sha256: a6e590c838b18133bb482a2745ad77c5bb7715fb0451209e1a7567d416678b8e
++ sha256: d584fa6707a52763a52446f02cc621b077888fb63b93bbcb1143a7be5a0c0c04
+ url: "https://pub.dev"
+ source: hosted
+- version: "1.10.0"
++ version: "1.11.0"
+ mime:
+ dependency: transitive
+ description:
+@@ -489,10 +513,10 @@ packages:
+ dependency: transitive
+ description:
+ name: path
+- sha256: "8829d8a55c13fc0e37127c29fedf290c102f4e40ae94ada574091fe0ff96c917"
++ sha256: "087ce49c3f0dc39180befefc60fdb4acd8f8620e5682fe2476afd0b3688bb4af"
+ url: "https://pub.dev"
+ source: hosted
+- version: "1.8.3"
++ version: "1.9.0"
+ path_provider:
+ dependency: "direct main"
+ description:
+@@ -770,6 +794,14 @@ packages:
+ url: "https://pub.dev"
+ source: hosted
+ version: "2.1.4"
++ vm_service:
++ dependency: transitive
++ description:
++ name: vm_service
++ sha256: b3d56ff4341b8f182b96aceb2fa20e3dcb336b9f867bc0eafc0de10f1048e957
++ url: "https://pub.dev"
++ source: hosted
++ version: "13.0.0"
+ web:
+ dependency: transitive
+ description:
+--
+2.43.1
+
diff --git a/testing/fwallet/no-werror.patch b/testing/fwallet/no-werror.patch
new file mode 100644
index 00000000000..ec8df348612
--- /dev/null
+++ b/testing/fwallet/no-werror.patch
@@ -0,0 +1,11 @@
+--- ./linux/CMakeLists.txt.orig
++++ ./linux/CMakeLists.txt
+@@ -41,7 +41,7 @@
+ # of modifying this function.
+ function(APPLY_STANDARD_SETTINGS TARGET)
+ target_compile_features(${TARGET} PUBLIC cxx_std_14)
+- target_compile_options(${TARGET} PRIVATE -Wall -Werror)
++ target_compile_options(${TARGET} PRIVATE -Wall)
+ target_compile_options(${TARGET} PRIVATE "$<$<NOT:$<CONFIG:Debug>>:-O3>")
+ target_compile_definitions(${TARGET} PRIVATE "$<$<NOT:$<CONFIG:Debug>>:NDEBUG>")
+ endfunction()
diff --git a/testing/fwallet/system-flutter.patch b/testing/fwallet/system-flutter.patch
new file mode 100644
index 00000000000..e8f7270ec9a
--- /dev/null
+++ b/testing/fwallet/system-flutter.patch
@@ -0,0 +1,15 @@
+--- a/linux/CMakeLists.txt
++++ b/linux/CMakeLists.txt
+@@ -110,12 +110,6 @@
+ install(TARGETS ${BINARY_NAME} RUNTIME DESTINATION "${CMAKE_INSTALL_PREFIX}"
+ COMPONENT Runtime)
+
+-install(FILES "${FLUTTER_ICU_DATA_FILE}" DESTINATION "${INSTALL_BUNDLE_DATA_DIR}"
+- COMPONENT Runtime)
+-
+-install(FILES "${FLUTTER_LIBRARY}" DESTINATION "${INSTALL_BUNDLE_LIB_DIR}"
+- COMPONENT Runtime)
+-
+ foreach(bundled_library ${PLUGIN_BUNDLED_LIBRARIES})
+ install(FILES "${bundled_library}"
+ DESTINATION "${INSTALL_BUNDLE_LIB_DIR}"
diff --git a/testing/fzy/APKBUILD b/testing/fzy/APKBUILD
index 03eaf4d9086..15b6ecbb40a 100644
--- a/testing/fzy/APKBUILD
+++ b/testing/fzy/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Eivind Uggedal <eu@eju.no>
pkgname=fzy
pkgver=1.0
-pkgrel=2
+pkgrel=3
pkgdesc="A better fuzzy finder"
url="https://github.com/jhawthorn/$pkgname"
arch="all"
diff --git a/testing/g4music/APKBUILD b/testing/g4music/APKBUILD
new file mode 100644
index 00000000000..d9155d61199
--- /dev/null
+++ b/testing/g4music/APKBUILD
@@ -0,0 +1,39 @@
+# Contributor: Jakob Meier <comcloudway@ccw.icu>
+# Maintainer: Jakob Meier <comcloudway@ccw.icu>
+pkgname=g4music
+pkgver=3.5.1
+pkgrel=0
+pkgdesc="Fast fluent lightweight music player written in GTK4, with a beautiful and adaptive user interface"
+url="https://gitlab.gnome.org/neithern/g4music"
+arch="all"
+license="GPL-3.0-only"
+subpackages="$pkgname-lang"
+makedepends="
+ cmake
+ desktop-file-utils
+ gettext-dev
+ gst-plugins-base-dev
+ gstreamer-dev
+ libadwaita-dev
+ meson
+ vala
+ "
+source="https://gitlab.gnome.org/neithern/g4music/-/archive/v$pkgver/g4music-v$pkgver.tar.gz"
+builddir="$srcdir/g4music-v$pkgver"
+
+build() {
+ abuild-meson \
+ . output
+ meson compile -C output
+}
+
+check() {
+ meson test --no-rebuild --print-errorlogs -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+sha512sums="
+1d992d791c9544e980829a00b00a528ba7d1c37adba327b2d20211e32eadcb1493bb0a77ada45748ea3219395a7a2d19d3fae78721f664aa6df92eecadcfc7ab g4music-v3.5.1.tar.gz
+"
diff --git a/testing/gadget-tool/APKBUILD b/testing/gadget-tool/APKBUILD
deleted file mode 100644
index c83aafdf1a4..00000000000
--- a/testing/gadget-tool/APKBUILD
+++ /dev/null
@@ -1,40 +0,0 @@
-# Maintainer: Luca Weiss <luca@z3ntu.xyz>
-pkgname=gadget-tool
-pkgver=0_git20220508
-pkgrel=0
-_commit="7f9c45d98425a27444e49606ce3cf375e6164e8e"
-pkgdesc="Linux command line tool for setting USB gadget using configFS"
-url="https://github.com/linux-usb-gadgets/gt"
-arch="all"
-license="Apache-2.0"
-makedepends="
- asciidoc
- cmake
- libusbgx-dev
- samurai
- "
-subpackages="$pkgname-doc $pkgname-bash-completion"
-source="https://github.com/linux-usb-gadgets/gt/archive/$_commit/gt-$_commit.tar.gz"
-builddir="$srcdir/gt-$_commit"
-options="!check" # no test suite
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build -G Ninja -S source \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- -DCMAKE_BUILD_TYPE=MinSizeRel \
- $CMAKE_CROSSOPTS
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-
-sha512sums="
-1581996da5f96a07f7aedfb17c826bdb69aaf30bf39f17df60ab914178dbbd8f475e614899a884b80f961ede513eaaac6d8fd8138f723a4644afabb63fabc6dd gt-7f9c45d98425a27444e49606ce3cf375e6164e8e.tar.gz
-"
diff --git a/testing/galera/APKBUILD b/testing/galera/APKBUILD
deleted file mode 100644
index b02be9b7d1b..00000000000
--- a/testing/galera/APKBUILD
+++ /dev/null
@@ -1,71 +0,0 @@
-# Contributor: Jake Buchholz <tomalok@gmail.com>
-# Maintainer: Jake Buchholz <tomalok@gmail.com>
-pkgname=galera
-pkgver=26.4.7
-pkgrel=3
-_wsrepver=26
-pkgdesc="Galera replication - Codership's implementation of the write set replication (wsrep) interface"
-url="https://galeracluster.com"
-arch="x86 x86_64" # doesn't work for the others
-license="GPL-2.0-or-later"
-depends="mariadb"
-makedepends="bash boost-dev check-dev cmake openssl-dev"
-subpackages="$pkgname-arbitrator $pkgname-arbitrator-doc:arbitrator_doc"
-source="
- https://github.com/codership/galera/archive/release_$pkgver.tar.gz
- https://github.com/codership/wsrep-API/archive/release_v$_wsrepver.tar.gz
- fix_gcomm-test-check_evs2.patch
- musl-page-size.patch
- musl-sched_param.patch
- musl-sys-poll-h.patch
- musl-wordsize.patch
-"
-builddir="$srcdir/$pkgname-release_$pkgver"
-
-prepare() {
- default_prepare
-
- ln -s /usr/bin/python3 python
- export PATH="$PATH:."
-}
-
-build() {
- rmdir wsrep/src
- cp -a ../wsrep-API-release_v$_wsrepver wsrep/src
- cmake .
- make
-}
-
-check() {
- make test
-}
-
-package() {
- mkdir -p "$pkgdir/usr/lib"
- mv libgalera_smm.so "$pkgdir/usr/lib"
-}
-
-arbitrator() {
- url="https://galeracluster.com/library/documentation/arbitrator.html"
- depends=""
- mkdir -p "$subpkgdir/usr/sbin"
- mv "$builddir/garb/garbd" "$subpkgdir/usr/sbin"
-}
-
-arbitrator_doc() {
- url="https://galeracluster.com/library/documentation/arbitrator.html"
- depends=""
- mkdir -p "$subpkgdir/usr/share/man/man8"
- mv "$builddir/man/garbd.8" "$subpkgdir/usr/share/man/man8"
- gzip "$subpkgdir/usr/share/man/man8/garbd.8"
-}
-
-sha512sums="
-cfffe2e19c6459d74fd2c3eb2412ccee53afd33663b17bc786e0c13642974a708b9bcddd4631ff924aee225e0b3e20341b492ef9d0353279461b25590dd59fdd release_26.4.7.tar.gz
-37ddc2c071ec22688ad6bce0cd44285aa00e2c07abce783d5ca6ba655e702feca8397e57c47e961f6ad4d2c14932fc38bac87b8995940b7b38fed655f6cd6671 release_v26.tar.gz
-7e3835046be86bcf36e08de85e3577dc9e56d19b89c0cb9270158d793576428f3d19ff420556a7bc6ddeb0721f6032e23e68952f903e15415e16cf524164663c fix_gcomm-test-check_evs2.patch
-196bae14790d6dad46617d107b5ddac6f01694468fb7a049736c6a21c9857b490863eec66be774eeb01300c0dbf4d9871a1b89da6847d92d67473b3aa80dbd3e musl-page-size.patch
-de08e34bf52cb39353a72a3608053d9204edcddd24f2f7babe2e5eb753d91bd0ca5909ee07a4d6c7ad54e37fba37ad2866403f1805401dcb68b9958514e17ac2 musl-sched_param.patch
-6248970137727c56a4c696bfd88eabaa9dc1dd55c287c4f04051f012470714ca53cb88918cd57027793e2705133237a2e7a608dd01ac36a2ae720448922dd4b4 musl-sys-poll-h.patch
-2baf88a6c16360ba1ac2ddf7a87a33f84b3039ca9819d84cfdd96b702da1a6050be1b4ac1f3fe6eff7f539158cdb6369906c4821545b1292d98899ec6e13b249 musl-wordsize.patch
-"
diff --git a/testing/galera/fix_gcomm-test-check_evs2.patch b/testing/galera/fix_gcomm-test-check_evs2.patch
deleted file mode 100644
index 649183b682e..00000000000
--- a/testing/galera/fix_gcomm-test-check_evs2.patch
+++ /dev/null
@@ -1,9 +0,0 @@
---- a/gcomm/test/check_evs2.cpp
-+++ b/gcomm/test/check_evs2.cpp
-@@ -2583,6 +2583,7 @@
- gu::datetime::SimClock::inc_time(300 * gu::datetime::MSec);
- evs_from_dummy(dn[1])->handle_timers();
- evs_from_dummy(dn[2])->handle_timers();
-+ prop.propagate_until_empty();
- ck_assert(evs_from_dummy(dn[1])->state() == gcomm::evs::Proto::S_GATHER);
- ck_assert(evs_from_dummy(dn[2])->state() == gcomm::evs::Proto::S_GATHER);
diff --git a/testing/galera/musl-page-size.patch b/testing/galera/musl-page-size.patch
deleted file mode 100644
index a0903e42780..00000000000
--- a/testing/galera/musl-page-size.patch
+++ /dev/null
@@ -1,16 +0,0 @@
---- a/galerautils/src/gu_alloc.cpp
-+++ b/galerautils/src/gu_alloc.cpp
-@@ -29,10 +29,11 @@
- if (gu_likely(size <= left_))
- {
- /* to avoid too frequent allocation, make it (at least) 64K */
-- static page_size_type const PAGE_SIZE(gu_page_size_multiple(1 << 16));
-+ /* was PAGE_SIZE but collided with a define */
-+ static page_size_type const PG_SZ(gu_page_size_multiple(1 << 16));
-
- page_size_type const page_size
-- (std::min(std::max(size, PAGE_SIZE), left_));
-+ (std::min(std::max(size, PG_SZ), left_));
-
- Page* ret = new HeapPage (page_size);
-
diff --git a/testing/galera/musl-sched_param.patch b/testing/galera/musl-sched_param.patch
deleted file mode 100644
index ef8640aa4ba..00000000000
--- a/testing/galera/musl-sched_param.patch
+++ /dev/null
@@ -1,12 +0,0 @@
---- a/galerautils/src/gu_thread.cpp
-+++ b/galerautils/src/gu_thread.cpp
-@@ -87,7 +87,8 @@
- #if defined(__sun__)
- struct sched_param spstr = { sp.prio(), { 0, } /* sched_pad array */};
- #else
-- struct sched_param spstr = { sp.prio() };
-+ /* musl has some reserved fields in sched_param... */
-+ struct sched_param spstr = { sp.prio(), 0, 0, 0, 0, 0, 0 };
- #endif
- int err;
- if ((err = pthread_setschedparam(thd, sp.policy(), &spstr)) != 0)
diff --git a/testing/galera/musl-sys-poll-h.patch b/testing/galera/musl-sys-poll-h.patch
deleted file mode 100644
index e3189c7ca2b..00000000000
--- a/testing/galera/musl-sys-poll-h.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/asio/asio/detail/socket_types.hpp
-+++ b/asio/asio/detail/socket_types.hpp
-@@ -58,7 +58,7 @@
- #else
- # include <sys/ioctl.h>
- # if !defined(__SYMBIAN32__)
--# include <sys/poll.h>
-+# include <poll.h> /* avoid "redirecting incorrect #include <sys/poll.h> to <poll.h>" warning */
- # endif
- # include <sys/types.h>
- # include <sys/stat.h>
diff --git a/testing/galera/musl-wordsize.patch b/testing/galera/musl-wordsize.patch
deleted file mode 100644
index 525f5329b5d..00000000000
--- a/testing/galera/musl-wordsize.patch
+++ /dev/null
@@ -1,14 +0,0 @@
---- a/galerautils/src/gu_arch.h
-+++ b/galerautils/src/gu_arch.h
-@@ -50,8 +50,9 @@
- #elif defined(__APPLE__) || defined(__FreeBSD__)
- # include <stdint.h>
- # define GU_WORDSIZE __WORDSIZE
--#else
--# include <bits/wordsize.h>
-+#else /* use this instead of bits/wordsize.h */
-+# include <stdint.h>
-+# include <bits/user.h>
- # define GU_WORDSIZE __WORDSIZE
- #endif
-
diff --git a/testing/gallery-dl/APKBUILD b/testing/gallery-dl/APKBUILD
deleted file mode 100644
index 921b7f3d020..00000000000
--- a/testing/gallery-dl/APKBUILD
+++ /dev/null
@@ -1,45 +0,0 @@
-# Contributor: Hoang Nguyen <folliekazetani@protonmail.com>
-# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
-pkgname=gallery-dl
-pkgver=1.22.0
-pkgrel=0
-pkgdesc="CLI tool to download image galleries"
-url="https://github.com/mikf/gallery-dl"
-arch="noarch"
-license="GPL-2.0-or-later"
-depends="
- py3-requests
- python3
- "
-makedepends="py3-setuptools"
-checkdepends="py3-pytest yt-dlp"
-subpackages="
- $pkgname-doc
- $pkgname-bash-completion
- $pkgname-zsh-completion
- $pkgname-fish-completion
- "
-source="$pkgname-$pkgver.tar.gz::https://github.com/mikf/gallery-dl/archive/v$pkgver.tar.gz"
-
-build() {
- python3 setup.py build
-
- make man completion
-}
-
-check() {
- make test
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-
- # Install fish completion to the correct directory
- rm -r "$pkgdir"/usr/share/fish/vendor_completions.d
- install -Dm644 data/completion/gallery-dl.fish \
- -t "$pkgdir"/usr/share/fish/completions
-}
-
-sha512sums="
-c621103562ad008327c1748b5ce0b49b4832511e1e2e12ee8656f49d1ae57abb133268ff6024a96a961de0949eceabd2b069441ceef9d30ea50e9bf52f846907 gallery-dl-1.22.0.tar.gz
-"
diff --git a/testing/gambit/APKBUILD b/testing/gambit/APKBUILD
new file mode 100644
index 00000000000..abb00d1f90b
--- /dev/null
+++ b/testing/gambit/APKBUILD
@@ -0,0 +1,42 @@
+# Contributor: Bryce Vandegrift <bryce@brycevandegrift.xyz>
+# Maintainer: Bryce Vandegrift <bryce@brycevandegrift.xyz>
+pkgname=gambit
+pkgver=4.9.5
+pkgrel=0
+pkgdesc="Portable and efficient implementation of the Scheme language"
+url="https://gambitscheme.org/"
+arch="all"
+license="LGPL-2.1-only, Apache-2.0"
+makedepends="openssl-dev"
+subpackages="$pkgname-dev $pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/gambit/gambit/archive/v$pkgver.tar.gz
+ tests.patch"
+
+build() {
+ ./configure --prefix=/usr \
+ --libdir=/usr/lib/gambit \
+ --docdir=/usr/share/doc/gambit \
+ --includedir=/usr/include/gambit \
+ --disable-cplusplus \
+ --disable-absolute-shared-libs \
+ --enable-single-host \
+ --enable-gcc-opts \
+ --enable-openssl \
+ --enable-poll \
+ --enable-compiler-name=gambit-gsc
+ make
+ make doc
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+d461fa5cce5d030b93165294a3d1dff12935745485e835cfda9164a794d12b1472506c4b4637b7ee7df0a9218f89a30ed6f44cd88557a7a9bf09b573f523c497 gambit-4.9.5.tar.gz
+53adf263417997e17ecda51299f6639c8b8812c3399243a61e81736c40d96b503c4cfaa2ee195e8066ac0297fd0d601ecd560b150e9af3813f5b3b8a1f9f6be3 tests.patch
+"
diff --git a/testing/gambit/tests.patch b/testing/gambit/tests.patch
new file mode 100644
index 00000000000..c74b293240b
--- /dev/null
+++ b/testing/gambit/tests.patch
@@ -0,0 +1,14 @@
+Some unit-tests expect an installed version of Gambit, redirect to the
+local source.
+
+--- a/tests/run-unit-tests.scm
++++ b/tests/run-unit-tests.scm
+@@ -184,7 +184,7 @@
+
+ (case target
+ ((C)
+- (run "../gsi/gsi" "-:debug-settings=-,io-settings=lu,~~=.." "-f" file))
++ (run "../gsi/gsi" "-:debug-settings=-,io-settings=lu,~~=..,~~lib=../lib" "-f" file))
+ (else
+ (let ((gsi (string-append "../gsi/gsi-" (symbol->string target))))
+ (run gsi "-f" file))))))
diff --git a/testing/game-devices-udev/APKBUILD b/testing/game-devices-udev/APKBUILD
new file mode 100644
index 00000000000..a20363d1df6
--- /dev/null
+++ b/testing/game-devices-udev/APKBUILD
@@ -0,0 +1,23 @@
+# Maintainer: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
+pkgname=game-devices-udev
+pkgver=0.22
+pkgrel=2
+pkgdesc="udev rules for a bunch of game controllers"
+url="https://codeberg.org/fabiscafe/game-devices-udev"
+arch="noarch"
+license="MIT"
+source="$pkgname-$pkgver.tgz::https://codeberg.org/fabiscafe/game-devices-udev/archive/$pkgver.tar.gz"
+builddir="$srcdir/game-devices-udev"
+options="!check" # just text files
+
+package() {
+ install -Dm644 ./*.rules -t "$pkgdir"/usr/lib/udev/rules.d/
+ install -Dm644 /dev/stdin "$pkgdir"/etc/modules-load.d/game-devices-udev.conf <<-EOF
+ # needed for a lot of controller inputs
+ uinput
+ EOF
+}
+
+sha512sums="
+8dde251f46613505a9cf5f96a6323224384311b5d06d2c41a9c3184a37039463fd5050d656510d2c69c634bbe901dd32f74aa60151833d2ff42aed3ea4d651c3 game-devices-udev-0.22.tgz
+"
diff --git a/testing/gamescope/APKBUILD b/testing/gamescope/APKBUILD
index 2891f53be26..ed9e7f98df5 100644
--- a/testing/gamescope/APKBUILD
+++ b/testing/gamescope/APKBUILD
@@ -2,57 +2,77 @@
# Contributor: Maxim Karasev <begs@disroot.org>
# Maintainer: Alisa <corg@disroot.org>
pkgname=gamescope
-pkgver=3.11.30
-_stb=af1a5bc352164740c1cc1354942b1c6b72eacb8a
-pkgrel=0
+pkgver=3.12.0
+pkgrel=1
+_openvr=1a0ea26642e517824b66871e6a12280a426cfec3
+_vkroots=26757103dde8133bab432d172b8841df6bb48155
pkgdesc="SteamOS session compositing window manager"
url="https://github.com/Plagman/gamescope"
arch="all"
license="BSD-2-Clause"
makedepends="
+ benchmark-dev
+ cmake
+ glm-dev
glslang-dev
+ hwdata-dev
libcap-dev
+ libdisplay-info-dev
libliftoff-dev
libx11-dev
libxcomposite-dev
+ libxmu-dev
libxrender-dev
libxres-dev
libxtst-dev
libxxf86vm-dev
meson
+ pipewire-dev
sdl2-dev
+ stb
vulkan-loader-dev
wayland-protocols
- wlroots-dev
+ wlroots0.16-dev
xwayland-dev
"
source="https://github.com/Plagman/gamescope/archive/refs/tags/$pkgver/gamescope-$pkgver.tar.gz
- https://github.com/nothings/stb/archive/$_stb/stb-$_stb.tar.gz
+ openvr-$_openvr.tar.gz::https://github.com/ValveSoftware/openvr/archive/$_openvr.tar.gz
+ vkroots-$_vkroots.tar.gz::https://github.com/Joshua-Ashton/vkroots/archive/$_vkroots.tar.gz
+ gcc13.patch
+ null.patch
system-wlroots-libliftoff.patch
"
options="!check" # no tests
-[ "$CARCH" = "riscv64" ] && options="$options textrels"
-
prepare() {
default_prepare
- ln -sfv "$srcdir"/stb-$_stb "$builddir"/subprojects/stb
- cp "$builddir"/subprojects/packagefiles/stb/meson.build \
- "$builddir"/subprojects/stb
+ rmdir subprojects/vkroots
+ ln -sfv "$srcdir"/vkroots-$_vkroots subprojects/vkroots
+ rmdir subprojects/openvr
+ ln -sfv "$srcdir"/openvr-$_openvr subprojects/openvr
}
build() {
- abuild-meson build
- meson compile -C build
+ CXXFLAGS="$CXXFLAGS -DRTLD_DEEPBIND=0" \
+ abuild-meson \
+ -Db_lto=true \
+ . output
+ meson compile -C output
}
package() {
- DESTDIR="$pkgdir" meson install --no-rebuild -C build
+ DESTDIR="$pkgdir" meson install \
+ --no-rebuild \
+ --skip-subprojects \
+ -C output
}
sha512sums="
-a04d4d3fbbfc921dfeec6f00b28378fabcdcae86a6362a5c08a0813629ccf8bb0e7cf8812b5f86fccbc958aefa061c8f58b8bffd249ade3473d56fbce19a9704 gamescope-3.11.30.tar.gz
-5937baa1a9b7342ddc0e41c37ba0ea6b0c878f670a81b55bb124681e6b5e381fdc1d9557c96637e3ba082d6d968ed67a78b47f16aa5555c1c43394d1f9e57f2d stb-af1a5bc352164740c1cc1354942b1c6b72eacb8a.tar.gz
+864d61d9caf0bb8b13c71a084dd54a74e4d9104168cdc9ff8bc971e5a78a019fa80bf43c3b58b2e5ade6d461842385c37c3184ceede7e058d4d8d989a9e62bd9 gamescope-3.12.0.tar.gz
+17ce420ed384e16abadddfae4912beba861d34a258c1dee7f39ccd3a83e6e44cca504fb5e994962fc06d97e220ca9a22d952f5e47ac18ba58e8f2c3341c0cf40 openvr-1a0ea26642e517824b66871e6a12280a426cfec3.tar.gz
+606395000264647f0e74aeb4699b63e29de367b5c97b8d26c01b9373cc130ae0cf872ffaa56b826ed6e0b4170654df1af8f4272f8ed6f83fcc6f75750e8d3c2a vkroots-26757103dde8133bab432d172b8841df6bb48155.tar.gz
+83ba06fbf89d84d1e56a69c5feb474ab3d1f2b2ccf686d5bdd4c408065b7aaaf0a847979e8e5e8d815d02b5fc88ce4592f88af7f2b2eaf9668b9cdad0070f17d gcc13.patch
+e32763bec60c9b8927882f5b1866c684bc8f6d220c6c9cad5fdfc6926bcf97bd02d2d105c3d91ff56baf4680e65a8460894e09bb58d859ee8c98c19973f4c684 null.patch
9fea6675d8c29d740c77d9ce6b69da4a1f54f39bf7a372fe538f154bb97f5cc21436033eeab1f2a154c5aee04410e5194b779c33104ab78b1a8a84ca5d798be2 system-wlroots-libliftoff.patch
"
diff --git a/testing/gamescope/gcc13.patch b/testing/gamescope/gcc13.patch
new file mode 100644
index 00000000000..6b0b47c94c1
--- /dev/null
+++ b/testing/gamescope/gcc13.patch
@@ -0,0 +1,41 @@
+diff --git a/src/drm.hpp b/src/drm.hpp
+index 2f416c4..849ec96 100644
+--- a/src/drm.hpp
++++ b/src/drm.hpp
+@@ -40,12 +40,13 @@ extern "C" {
+
+ #include "rendervulkan.hpp"
+
++#include <string>
+ #include <unordered_map>
+ #include <utility>
+ #include <atomic>
+ #include <map>
+ #include <unordered_map>
+ #include <mutex>
+ #include <vector>
+
+ struct saved_mode {
+diff --git a/src/main.cpp b/src/main.cpp
+index 99a7a48..4cab9d1 100644
+--- a/src/main.cpp
++++ b/src/main.cpp
+@@ -2,6 +2,7 @@
+
+ #include <cstdio>
+ #include <thread>
++#include <string>
+ #include <mutex>
+ #include <vector>
+ #include <cstring>
+diff --git a/src/sdlwindow.cpp b/src/sdlwindow.cpp
+index ecf95ce..d886e15 100644
+--- a/src/sdlwindow.cpp
++++ b/src/sdlwindow.cpp
+@@ -1,5 +1,6 @@
+ // For the nested case, reads input from the SDL window and send to wayland
+
++#include <string>
+ #include <thread>
+ #include <mutex>
+
diff --git a/testing/gamescope/null.patch b/testing/gamescope/null.patch
new file mode 100644
index 00000000000..dfe0ef2e6d9
--- /dev/null
+++ b/testing/gamescope/null.patch
@@ -0,0 +1,47 @@
+From 29163332b12cdc1bccb09a3b29501df23c2817d7 Mon Sep 17 00:00:00 2001
+From: psykose <alice@ayaya.dev>
+Date: Wed, 26 Jul 2023 02:35:43 +0000
+Subject: [PATCH] fix null handle for nul surface
+
+not every platform uses nullptr, some use 0LL or ((void*)0) directly.
+
+closes #917
+---
+ src/main.cpp | 2 +-
+ src/rendervulkan.cpp | 4 ++--
+ 2 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/src/main.cpp b/src/main.cpp
+index 6f7ec3f..fb4ceeb 100644
+--- a/src/main.cpp
++++ b/src/main.cpp
+@@ -662,7 +662,7 @@ int main(int argc, char **argv)
+ }
+
+ VkInstance instance = vulkan_create_instance();
+- VkSurfaceKHR surface = nullptr;
++ VkSurfaceKHR surface = VK_NULL_HANDLE;
+
+ if ( !BIsNested() )
+ {
+diff --git a/src/rendervulkan.cpp b/src/rendervulkan.cpp
+index 3f7861e..c508979 100644
+--- a/src/rendervulkan.cpp
++++ b/src/rendervulkan.cpp
+@@ -1751,11 +1751,11 @@ void CVulkanCmdBuffer::dispatch(uint32_t x, uint32_t y, uint32_t z)
+ shaperLutDescriptor[i].imageLayout = VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL;
+ // TODO(Josh): I hate the fact that srgbView = view *as* raw srgb and treat as linear.
+ // I need to change this, it's so utterly stupid and confusing.
+- shaperLutDescriptor[i].imageView = m_shaperLut[i] ? m_shaperLut[i]->srgbView() : nullptr;
++ shaperLutDescriptor[i].imageView = m_shaperLut[i] ? m_shaperLut[i]->srgbView() : VK_NULL_HANDLE;
+
+ lut3DDescriptor[i].sampler = m_device->sampler(nearestState);
+ lut3DDescriptor[i].imageLayout = VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL;
+- lut3DDescriptor[i].imageView = m_lut3D[i] ? m_lut3D[i]->srgbView() : nullptr;
++ lut3DDescriptor[i].imageView = m_lut3D[i] ? m_lut3D[i]->srgbView() : VK_NULL_HANDLE;
+ }
+
+ if (!m_target->isYcbcr())
+--
+2.41.0
+
diff --git a/testing/gamja/APKBUILD b/testing/gamja/APKBUILD
index a9b0195463f..3958f2da672 100644
--- a/testing/gamja/APKBUILD
+++ b/testing/gamja/APKBUILD
@@ -1,13 +1,13 @@
# Contributor: Michał Polański <michal@polanski.me>
# Maintainer: Michał Polański <michal@polanski.me>
pkgname=gamja
-pkgver=1.0.0_beta4
+pkgver=1.0.0_beta9
_pkgver=v${pkgver/_beta/-beta.}
pkgrel=0
pkgdesc="Simple IRC web client"
url="https://sr.ht/~emersion/gamja/"
license="AGPL-3.0"
-arch="noarch !riscv64" # blocked by nodejs
+arch="noarch"
makedepends="npm"
subpackages="$pkgname-doc"
source="$pkgname-$pkgver.tar.gz::https://git.sr.ht/~emersion/gamja/archive/$_pkgver.tar.gz"
@@ -31,5 +31,5 @@ package() {
}
sha512sums="
-8873026874f7b165eda2ed3ee94f0343f7b6bb35759db87051dcd03d8d2326d369d6c21b80e4349cc9d022967081b1678ecb736fbd8848df90bcf49a7fa4af48 gamja-1.0.0_beta4.tar.gz
+2759f727a89979321f31d61d5194c12dfdb5d67143532188b9995abac079a0d4ce7bb0e5b092ddf1d2271a3ae85470c6469e11b3a9804ac8cbce79aef75c9281 gamja-1.0.0_beta9.tar.gz
"
diff --git a/testing/gammastep/APKBUILD b/testing/gammastep/APKBUILD
index 206e4fedc19..698ef3e8f20 100644
--- a/testing/gammastep/APKBUILD
+++ b/testing/gammastep/APKBUILD
@@ -1,17 +1,25 @@
-#Contributor: Julian Weigt <juw@posteo.de>
-#Maintainer: Julian Weigt <juw@posteo.de>
-#taken from archlinux
+# Contributor: Julian Weigt <juw@posteo.de>
+# Maintainer: Julian Weigt <juw@posteo.de>
+# taken from archlinux
pkgname=gammastep
-pkgver=2.0.7
+pkgver=2.0.9
pkgrel=3
pkgdesc="Adjust the color temperature of your screen according to your surroundings"
arch="all"
url="https://gitlab.com/chinstrap/gammastep"
license="GPL-3.0-only"
-makedepends="autoconf python3 intltool gettext-dev automake libtool wayland-dev geoclue-dev"
-subpackages="$pkgname-lang"
+makedepends="
+ autoconf
+ automake
+ geoclue-dev
+ gettext-dev
+ intltool
+ libtool
+ python3
+ wayland-dev
+ "
+subpackages="$pkgname-lang $pkgname-doc $pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://gitlab.com/chinstrap/gammastep/-/archive/v$pkgver/gammastep-v$pkgver.tar.gz"
-subpackages="$pkgname-doc"
builddir="$srcdir/$pkgname-v$pkgver"
@@ -36,4 +44,7 @@ package() {
make DESTDIR="$pkgdir/" install
install -vDm 644 CONTRIBUTING.md NEWS.md README.md -t "$pkgdir/usr/share/doc/$pkgname"
}
-sha512sums="466811636d4c4d5f3fc21272e7ab8c208e2ad8830fbabd48c8d96c2eaa04d07c29da35f409166eaf95acdd0038f926a84d199fabf08df79fb027f45441ef0d08 gammastep-2.0.7.tar.gz"
+
+sha512sums="
+6bd5e2ee21424af87eafff394c7dbe1db19052fbdac2cadd6fbc2af99839f35743125352655dc7b3beccdaec038b480f66125649b61252826c6cbd663444cda0 gammastep-2.0.9.tar.gz
+"
diff --git a/testing/gatling/APKBUILD b/testing/gatling/APKBUILD
index ae206081447..fdd0c4a1926 100644
--- a/testing/gatling/APKBUILD
+++ b/testing/gatling/APKBUILD
@@ -1,13 +1,13 @@
# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
-# Maintainer:
+# Maintainer: Simon Rupf <simon@rupf.net>
pkgname=gatling
pkgver=0.16
-pkgrel=1
+pkgrel=4
pkgdesc="High performance web server"
url="https://www.fefe.de/gatling/"
arch="all"
license="GPL-2.0-only"
-makedepends="openssl-dev libowfat-dev zlib-dev libcap-dev"
+makedepends="openssl-dev>3 libowfat-dev zlib-dev libcap-dev"
install="gatling.pre-install"
subpackages="$pkgname-doc $pkgname-openrc"
source="https://www.fefe.de/gatling/gatling-$pkgver.tar.xz
@@ -20,6 +20,7 @@ source="https://www.fefe.de/gatling/gatling-$pkgver.tar.xz
build() {
CFLAGS="$CFLAGS -std=c99"
+ make havealloca.h
make prefix=/usr \
CFLAGS="$CFLAGS -I/usr/include/libowfat" \
LDFLAGS="$LDFLAGS" \
diff --git a/testing/gaupol/APKBUILD b/testing/gaupol/APKBUILD
index 458b08c4394..e259f06ee77 100644
--- a/testing/gaupol/APKBUILD
+++ b/testing/gaupol/APKBUILD
@@ -1,28 +1,43 @@
# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
pkgname=gaupol
-pkgver=1.10.1
-pkgrel=1
+pkgver=1.12
+pkgrel=2
pkgdesc="Editor for text-based subtitles"
url="https://otsaloma.io/gaupol/"
arch="noarch"
license="GPL-3.0-or-later"
depends="
- python3 gtk+3.0 gspell iso-codes py3-cairo gstreamer
- gst-libav gst-plugins-good gst-plugins-bad gst-plugins-ugly
- py3-gobject3 py3-chardet desktop-file-utils hicolor-icon-theme
+ desktop-file-utils
+ gspell
+ gst-libav
+ gst-plugins-bad
+ gst-plugins-good
+ gst-plugins-ugly
+ gstreamer
+ gtk+3.0
+ hicolor-icon-theme
+ iso-codes
+ py3-cairo
+ py3-chardet
+ py3-gobject3
+ python3
"
-makedepends="gettext-tiny-dev"
-subpackages="$pkgname-doc $pkgname-lang"
+makedepends="gettext-dev py3-setuptools py3-wheel py3-gpep517"
+subpackages="$pkgname-doc $pkgname-lang $pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/otsaloma/gaupol/archive/$pkgver.tar.gz"
+options="!check" # no tests
-check() {
- python3 setup.py check
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
-f294ea10c73dcf9941f70988ae58066917d7b321141e3a3ba3e12810e5f20a4711feca45d354dddc0e104a1ee2496fad24e529b129bdeee1cdb92010ec20be1d gaupol-1.10.1.tar.gz
+7e8002ceeff0a6c1144a6c23743aff006101a63aee394c4a4eb2742ad37635fe45425964d60ab2d6f10f9e212c72db673f5f1d849f738efcd7d9389054a1de36 gaupol-1.12.tar.gz
"
diff --git a/testing/gb/APKBUILD b/testing/gb/APKBUILD
index 70943909a72..053f8e684a0 100644
--- a/testing/gb/APKBUILD
+++ b/testing/gb/APKBUILD
@@ -3,7 +3,7 @@
pkgname=gb
pkgver=0.4.4
_errors_ver=0.8.0
-pkgrel=8
+pkgrel=23
pkgdesc="Project based build tool for Go"
options="!check"
url="https://github.com/constabulary/gb"
@@ -16,6 +16,10 @@ source="gb-$pkgver.tar.gz::https://github.com/constabulary/gb/archive/v$pkgver.t
"
builddir="$srcdir/src/github.com/constabulary/$pkgname"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
prepare() {
mkdir -p ${builddir%/*}
mv "$srcdir"/$pkgname-$pkgver "$builddir"/
diff --git a/testing/gcolor3/APKBUILD b/testing/gcolor3/APKBUILD
deleted file mode 100644
index db9261ce9e7..00000000000
--- a/testing/gcolor3/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Contributor: psykose <alice@ayaya.dev>
-# Maintainer: psykose <alice@ayaya.dev>
-pkgname=gcolor3
-pkgver=2.4.0
-pkgrel=0
-pkgdesc="gtk3 color picker"
-url="https://gitlab.gnome.org/World/gcolor3"
-arch="all !s390x !riscv64" # libhandy1
-license="GPL-2.0-or-later"
-makedepends="
- gtk+3.0-dev
- libhandy1-dev
- libportal-dev
- meson
- "
-subpackages="$pkgname-doc $pkgname-lang"
-source="https://gitlab.gnome.org/World/gcolor3/-/archive/v$pkgver/gcolor3-v$pkgver.tar.gz
- fix-libportal-build.patch
- "
-options="!check" # no tests
-builddir="$srcdir/$pkgname-v$pkgver"
-
-build() {
- abuild-meson . output
- meson compile -C output
-}
-
-package() {
- DESTDIR="$pkgdir" meson install --no-rebuild -C output
-}
-
-sha512sums="
-a491934d2edeaa2bca8f90e51cc6d0fee3706928ed67e092c46f60336f3ef90e247254e3b248cb537d77e38049ac1423062de0fcc34c914ccf84f9d3b5622c97 gcolor3-v2.4.0.tar.gz
-aa5b5d3e47f66ef4470924b42d08bd8b9066a4bb9fcfba944b5dd6936d2eaeb5d038c415bca6c50de30e472c4c748f7ab19a10feb32ff465d2f882c5fdc2a4be fix-libportal-build.patch
-"
diff --git a/testing/gcolor3/fix-libportal-build.patch b/testing/gcolor3/fix-libportal-build.patch
deleted file mode 100644
index c3a578d848e..00000000000
--- a/testing/gcolor3/fix-libportal-build.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-Patch-Source: https://gitlab.gnome.org/World/gcolor3/-/commit/1750369a3fd922aa9db6916207dc460c6f885e14
-From 1750369a3fd922aa9db6916207dc460c6f885e14 Mon Sep 17 00:00:00 2001
-From: Michal Vasilek <michal@vasilek.cz>
-Date: Mon, 27 Dec 2021 13:47:14 +0100
-Subject: [PATCH] Update to libportal 0.5
-
----
- meson.build | 2 ++
- src/gcolor3-color-selection.c | 2 +-
- src/meson.build | 1 +
- 3 files changed, 4 insertions(+), 1 deletion(-)
-
-diff --git a/meson.build b/meson.build
-index 6453679..7d6dc50 100644
---- a/meson.build
-+++ b/meson.build
-@@ -7,9 +7,11 @@ dep_gtk = dependency('gtk+-3.0', version: '>= 3.20.0', required: true)
- dep_libportal = dependency(
- 'libportal',
- required: true,
-+ version: '>= 0.5',
- fallback: ['libportal', 'libportal_dep'],
- default_options: ['gtk_doc=false'],
- )
-+dep_libportal_gtk3 = dependency('libportal-gtk3', version: '>= 0.5', required: true)
- cc = meson.get_compiler('c')
- dep_lm = cc.find_library('m', required: true)
-
-diff --git a/src/gcolor3-color-selection.c b/src/gcolor3-color-selection.c
-index 7413850..5df9d54 100644
---- a/src/gcolor3-color-selection.c
-+++ b/src/gcolor3-color-selection.c
-@@ -41,7 +41,7 @@
- #include <gtk/gtk.h>
- #include <glib/gi18n.h>
- #include <libportal/portal.h>
--#include <libportal/portal-gtk3.h>
-+#include <libportal-gtk3/portal-gtk3.h>
-
- #ifdef ENABLE_NLS
- #define P_(String) g_dgettext(GETTEXT_PACKAGE "-properties",String)
-diff --git a/src/meson.build b/src/meson.build
-index 3998f68..d488e51 100644
---- a/src/meson.build
-+++ b/src/meson.build
-@@ -42,6 +42,7 @@ executable(
- dependencies: [
- dep_gtk,
- dep_libportal,
-+ dep_libportal_gtk3,
- dep_lm
- ],
- install: true,
---
-GitLab
-
diff --git a/testing/gdb-esp/APKBUILD b/testing/gdb-esp/APKBUILD
new file mode 100644
index 00000000000..68e10a852eb
--- /dev/null
+++ b/testing/gdb-esp/APKBUILD
@@ -0,0 +1,134 @@
+# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
+_pkgbase=gdb
+_targets="
+ xtensa-esp8266-elf
+ xtensa-esp32-elf
+ xtensa-esp32s2-elf
+ xtensa-esp32s3-elf
+ "
+pkgname="$_pkgbase-esp"
+pkgver=13.2
+_xtensa_overlay_ver=2021r2-patch4
+pkgrel=2
+pkgdesc="The GNU Debugger for embedded targets patched for ESP support"
+# NOTE: gdb-multiarch replaces all the different cross-platform GDB versions
+# and supports architectures ranging from 8 bit microcontrollers
+# all the way up to super scalar multicore 64 bit server CPUs. The
+# list of supported architectures is long and even includes Xtensa.
+# However, the magic ESP MCUs are so illustrious and special, that
+# they are not to be spoken to by the common tools of mere mortals. In
+# fact, every ESP product list is so special that it needs its own magic
+# GDB version sprinkled with its own special stardust-unicorn-Espressif
+# patches to be barely worthy enough to interact with the blessed ESP
+# MCUs.
+#
+# tl;dr: Please don't use this as a role model, gdb-multiarch should normally
+# be all you need. This is only needed due to crappy upstreaming
+# policy of a shitty company.
+url="https://www.sourceware.org/gdb/"
+# riscv64: ld: BFD (GNU Binutils) 2.39 assertion fail elfnn-riscv.c:4816 segfault
+arch="all !riscv64"
+license="GPL-2.0-only GPL-2.0-or-later GPL-3.0-only GPL-3.0-or-later LGPL-2.1-only"
+depends="gdb"
+makedepends="
+ autoconf
+ automake
+ expat-dev
+ gmp-dev
+ libtool
+ linux-headers
+ ncurses-dev
+ perl
+ python3-dev
+ readline-dev
+ texinfo
+ zlib-dev
+ "
+source="
+ https://ftp.gnu.org/gnu/$_pkgbase/$_pkgbase-$pkgver.tar.xz
+ xtensa-overlay-$_xtensa_overlay_ver.tar.gz::https://github.com/espressif/xtensa-overlays/archive/refs/tags/esp-$_xtensa_overlay_ver.tar.gz
+ "
+for target in $_targets; do
+ targetnorm="${target//-/_}"
+ subpackages="$_pkgbase-$target:$targetnorm $subpackages"
+done
+
+options="!check"
+builddir="$srcdir"/$_pkgbase-$pkgver
+
+build() {
+ for target in $_targets; do
+ mkdir -p "$srcdir/build/$target"
+ cd "$srcdir/build/$target"
+
+ # copy ESP specific xtensa settings from overlay
+ dir="${target%%-elf}"
+ dir="${dir//-/_}"
+ dir="$srcdir/xtensa-overlays-esp-$_xtensa_overlay_ver/$dir/gdb"
+ cp -r "$dir"/* "$builddir"/
+ # add some glue for compatibility with recent GDB
+ echo "xtensa_gdbarch_tdep xtensa_tdep (rmap);" \
+ >> "$builddir"/gdb/xtensa-config.c
+
+ "$builddir/configure" \
+ --target=$target \
+ --prefix=/usr \
+ --mandir=/deleteme/man \
+ --infodir=/deleteme/info \
+ --pdfdir=/deleteme/pdf \
+ --htmldir=/deleteme/html \
+ --disable-nls \
+ --disable-werror \
+ --enable-interwork \
+ --enable-languages=c,c++ \
+ --enable-multilib \
+ --with-python=/usr/bin/python3 \
+ --with-system-gdbinit=/etc/gdb/gdbinit \
+ --with-system-readline \
+ --with-system-zlib
+ make
+ done
+}
+
+package() {
+ for target in $_targets; do
+ depends="$depends $_pkgbase-$target"
+ done
+ mkdir -p "$pkgdir"
+}
+
+_install_subpkg() {
+ target="${subpkgname#$_pkgbase-}"
+ pkgdesc="The GNU Debugger for $target"
+ cd "$srcdir/build/$target"
+ make DESTDIR="$subpkgdir" install
+
+ rm -rf "$subpkgdir"/deleteme
+
+ # those are provided by gdb
+ rm -rf "${subpkgdir:?}"/usr/share
+ # those are provided by binutils
+ rm -rf "${subpkgdir:?}"/usr/include
+ rm -rf "${subpkgdir:?}"/usr/lib
+}
+
+xtensa_esp8266_elf() {
+ _install_subpkg
+}
+
+xtensa_esp32_elf() {
+ _install_subpkg
+}
+
+xtensa_esp32s2_elf() {
+ _install_subpkg
+}
+
+xtensa_esp32s3_elf() {
+ _install_subpkg
+}
+
+sha512sums="
+8185d3e11ab60dafff5860a5016577bfe7dd7547ef01ebc867bc247603d82b74ff74c4f29492c7d2aee57076f52be33e289f4c6b414a4b870d4b3004909f4c34 gdb-13.2.tar.xz
+7b872a53b31ad2c02fd2b04e39b8d1c63924437f35433e2495a9dbe341a118b8754fbe087986c335a8b1c588519ad637fa73b7270a28a692ad350d58fe7bac10 xtensa-overlay-2021r2-patch4.tar.gz
+"
diff --git a/testing/gdcm/10-docbook4.patch b/testing/gdcm/10-docbook4.patch
new file mode 100644
index 00000000000..eeb8f317251
--- /dev/null
+++ b/testing/gdcm/10-docbook4.patch
@@ -0,0 +1,175 @@
+--- a/Utilities/doxygen/CMakeLists.txt
++++ b/Utilities/doxygen/CMakeLists.txt
+@@ -268,8 +268,8 @@
+
+ set(DOCBOOK_REWRITE_PREFIX_FOUND FALSE)
+ foreach(line ${xml_catalog})
+- string(REGEX MATCH "^.*systemIdStartString=\"http://docbook.sourceforge.net/release/xsl-ns/\".*" out1 ${line})
+- string(REGEX REPLACE "^.*systemIdStartString=\"http://docbook.sourceforge.net/release/xsl-ns/\".*\"([A-Za-z ]*)\".*" "\\1" output_variable ${line})
++ string(REGEX MATCH "^.*systemIdStartString=\"http://docbook.sourceforge.net/release/xsl/current\".*" out1 ${line})
++ string(REGEX REPLACE "^.*systemIdStartString=\"http://docbook.sourceforge.net/release/xsl/current\".*\"([A-Za-z ]*)\".*" "\\1" output_variable ${line})
+ if(out1)
+ message(STATUS "Your docbook install was found here :${output_variable}")
+ set(DOCBOOK_REWRITE_PREFIX_FOUND TRUE)
+--- a/Utilities/doxygen/man/gdcm2pnm.xml
++++ b/Utilities/doxygen/man/gdcm2pnm.xml
+@@ -1,5 +1,5 @@
+ <?xml version='1.0' encoding='UTF-8' standalone='no'?>
+-<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl-ns/current/manpages/docbook.xsl" ?>
++<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl" ?>
+ <!DOCTYPE Data [ <!ENTITY version SYSTEM 'version.txt'> ]>
+ <refentry xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <info>
+--- a/Utilities/doxygen/man/gdcm2vtk.xml
++++ b/Utilities/doxygen/man/gdcm2vtk.xml
+@@ -1,5 +1,5 @@
+ <?xml version='1.0' encoding='UTF-8' standalone='no'?>
+-<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl-ns/current/manpages/docbook.xsl" ?>
++<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl" ?>
+ <!DOCTYPE Data [ <!ENTITY version SYSTEM 'version.txt'> ]>
+ <refentry xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <info>
+--- a/Utilities/doxygen/man/gdcmanon.xml
++++ b/Utilities/doxygen/man/gdcmanon.xml
+@@ -1,5 +1,5 @@
+ <?xml version='1.0' encoding='UTF-8' standalone='no'?>
+-<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl-ns/current/manpages/docbook.xsl" ?>
++<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl" ?>
+ <!DOCTYPE Data [ <!ENTITY version SYSTEM 'version.txt'> ]>
+ <refentry xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <info>
+--- a/Utilities/doxygen/man/gdcmclean.xml
++++ b/Utilities/doxygen/man/gdcmclean.xml
+@@ -1,5 +1,5 @@
+ <?xml version='1.0' encoding='UTF-8' standalone='no'?>
+-<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl-ns/current/manpages/docbook.xsl" ?>
++<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl" ?>
+ <!DOCTYPE Data [ <!ENTITY version SYSTEM 'version.txt'> ]>
+ <refentry xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <info>
+--- a/Utilities/doxygen/man/gdcmconv.xml
++++ b/Utilities/doxygen/man/gdcmconv.xml
+@@ -1,5 +1,5 @@
+ <?xml version='1.0' encoding='UTF-8' standalone='no'?>
+-<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl-ns/current/manpages/docbook.xsl" ?>
++<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl" ?>
+ <!DOCTYPE Data [ <!ENTITY version SYSTEM 'version.txt'> ]>
+ <refentry xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <info>
+--- a/Utilities/doxygen/man/gdcmdiff.xml
++++ b/Utilities/doxygen/man/gdcmdiff.xml
+@@ -1,5 +1,5 @@
+ <?xml version='1.0' encoding='UTF-8' standalone='no'?>
+-<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl-ns/current/manpages/docbook.xsl" ?>
++<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl" ?>
+ <!DOCTYPE Data [ <!ENTITY version SYSTEM 'version.txt'> ]>
+ <refentry xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <info>
+--- a/Utilities/doxygen/man/gdcmdump.xml
++++ b/Utilities/doxygen/man/gdcmdump.xml
+@@ -1,5 +1,5 @@
+ <?xml version="1.0" encoding="utf-8"?>
+-<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl-ns/current/manpages/docbook.xsl" ?>
++<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl" ?>
+ <!DOCTYPE Data [ <!ENTITY version SYSTEM 'version.txt'> ]>
+ <refentry xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <info>
+--- a/Utilities/doxygen/man/gdcmgendir.xml
++++ b/Utilities/doxygen/man/gdcmgendir.xml
+@@ -1,5 +1,5 @@
+ <?xml version='1.0' encoding='UTF-8' standalone='no'?>
+-<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl-ns/current/manpages/docbook.xsl" ?>
++<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl" ?>
+ <!DOCTYPE Data [ <!ENTITY version SYSTEM 'version.txt'> ]>
+ <refentry xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <info>
+--- a/Utilities/doxygen/man/gdcmimg.xml
++++ b/Utilities/doxygen/man/gdcmimg.xml
+@@ -1,5 +1,5 @@
+ <?xml version='1.0' encoding='UTF-8' standalone='no'?>
+-<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl-ns/current/manpages/docbook.xsl" ?>
++<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl" ?>
+ <!DOCTYPE Data [ <!ENTITY version SYSTEM 'version.txt'> ]>
+ <refentry xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <info>
+--- a/Utilities/doxygen/man/gdcminfo.xml
++++ b/Utilities/doxygen/man/gdcminfo.xml
+@@ -1,5 +1,5 @@
+ <?xml version='1.0' encoding='UTF-8' standalone='no'?>
+-<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl-ns/current/manpages/docbook.xsl" ?>
++<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl" ?>
+ <!DOCTYPE Data [ <!ENTITY version SYSTEM 'version.txt'> ]>
+ <refentry xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <info>
+--- a/Utilities/doxygen/man/gdcmpap3.xml
++++ b/Utilities/doxygen/man/gdcmpap3.xml
+@@ -1,5 +1,5 @@
+ <?xml version='1.0' encoding='UTF-8' standalone='no'?>
+-<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl-ns/current/manpages/docbook.xsl" ?>
++<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl" ?>
+ <!DOCTYPE Data [ <!ENTITY version SYSTEM 'version.txt'> ]>
+ <refentry xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <info>
+--- a/Utilities/doxygen/man/gdcmpdf.xml
++++ b/Utilities/doxygen/man/gdcmpdf.xml
+@@ -1,5 +1,5 @@
+ <?xml version='1.0' encoding='UTF-8' standalone='no'?>
+-<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl-ns/current/manpages/docbook.xsl" ?>
++<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl" ?>
+ <!DOCTYPE Data [ <!ENTITY version SYSTEM 'version.txt'> ]>
+ <refentry xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <info>
+--- a/Utilities/doxygen/man/gdcmraw.xml
++++ b/Utilities/doxygen/man/gdcmraw.xml
+@@ -1,5 +1,5 @@
+ <?xml version='1.0' encoding='UTF-8' standalone='no'?>
+-<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl-ns/current/manpages/docbook.xsl" ?>
++<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl" ?>
+ <!DOCTYPE Data [ <!ENTITY version SYSTEM 'version.txt'> ]>
+ <refentry xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <info>
+--- a/Utilities/doxygen/man/gdcmscanner.xml
++++ b/Utilities/doxygen/man/gdcmscanner.xml
+@@ -1,5 +1,5 @@
+ <?xml version='1.0' encoding='UTF-8' standalone='no'?>
+-<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl-ns/current/manpages/docbook.xsl" ?>
++<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl" ?>
+ <!DOCTYPE Data [ <!ENTITY version SYSTEM 'version.txt'> ]>
+ <refentry xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <info>
+--- a/Utilities/doxygen/man/gdcmscu.xml
++++ b/Utilities/doxygen/man/gdcmscu.xml
+@@ -1,5 +1,5 @@
+ <?xml version='1.0' encoding='UTF-8' standalone='no'?>
+-<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl-ns/current/manpages/docbook.xsl" ?>
++<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl" ?>
+ <!DOCTYPE Data [ <!ENTITY version SYSTEM 'version.txt'> ]>
+ <refentry xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <info>
+--- a/Utilities/doxygen/man/gdcmtar.xml
++++ b/Utilities/doxygen/man/gdcmtar.xml
+@@ -1,5 +1,5 @@
+ <?xml version='1.0' encoding='UTF-8' standalone='no'?>
+-<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl-ns/current/manpages/docbook.xsl" ?>
++<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl" ?>
+ <!DOCTYPE Data [ <!ENTITY version SYSTEM 'version.txt'> ]>
+ <refentry xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <info>
+--- a/Utilities/doxygen/man/gdcmviewer.xml
++++ b/Utilities/doxygen/man/gdcmviewer.xml
+@@ -1,5 +1,5 @@
+ <?xml version='1.0' encoding='UTF-8' standalone='no'?>
+-<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl-ns/current/manpages/docbook.xsl" ?>
++<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl" ?>
+ <!DOCTYPE Data [ <!ENTITY version SYSTEM 'version.txt'> ]>
+ <refentry xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <info>
+--- a/Utilities/doxygen/man/gdcmxml.xml
++++ b/Utilities/doxygen/man/gdcmxml.xml
+@@ -1,5 +1,5 @@
+ <?xml version='1.0' encoding='UTF-8' standalone='no'?>
+-<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl-ns/current/manpages/docbook.xsl" ?>
++<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl" ?>
+ <!DOCTYPE Data [ <!ENTITY version SYSTEM 'version.txt'> ]>
+ <refentry xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <info>
diff --git a/testing/gdcm/30-off_t.patch b/testing/gdcm/30-off_t.patch
new file mode 100644
index 00000000000..2bcea169515
--- /dev/null
+++ b/testing/gdcm/30-off_t.patch
@@ -0,0 +1,211 @@
+--- a/Source/MediaStorageAndFileFormat/gdcmFileStreamer.cxx
++++ b/Source/MediaStorageAndFileFormat/gdcmFileStreamer.cxx
+@@ -49,7 +49,7 @@
+ // http://stackoverflow.com/questions/17863594/size-of-off-t-at-compilation-time
+ // Basically enforce use of off64_t over off_t since on windows off_t is pretty
+ // much guarantee to be 32bits only.
+-static inline int FSeeko(FILE *stream, off64_t offset, int whence)
++static inline int FSeeko(FILE *stream, off_t offset, int whence)
+ {
+ #if _WIN32
+ #if defined(__MINGW32__)
+@@ -62,7 +62,7 @@
+ #endif
+ }
+
+-static inline off64_t FTello(FILE *stream)
++static inline off_t FTello(FILE *stream)
+ {
+ #if _WIN32
+ #if defined(__MINGW32__)
+@@ -75,7 +75,7 @@
+ #endif
+ }
+
+-static inline bool FTruncate( const int fd, const off64_t len )
++static inline bool FTruncate( const int fd, const off_t len )
+ {
+ #if _WIN32
+ #if defined(__MINGW32__)
+@@ -93,7 +93,7 @@
+ #endif
+ }
+
+-static bool prepare_file( FILE * pFile, const off64_t offset, const off64_t inslen )
++static bool prepare_file( FILE * pFile, const off_t offset, const off_t inslen )
+ {
+ // fast path
+ if( inslen == 0 ) return true;
+@@ -108,13 +108,13 @@
+ {
+ if( inslen < 0 )
+ {
+- off64_t bytes_to_move = sb.st_size - offset;
+- off64_t read_start_offset = offset;
++ off_t bytes_to_move = sb.st_size - offset;
++ off_t read_start_offset = offset;
+ while (bytes_to_move != 0)
+ {
+- const size_t bytes_this_time = static_cast<size_t>(std::min((off64_t)BUFFERSIZE, bytes_to_move));
+- const off64_t rd_off = read_start_offset;
+- const off64_t wr_off = rd_off + inslen;
++ const size_t bytes_this_time = static_cast<size_t>(std::min((off_t)BUFFERSIZE, bytes_to_move));
++ const off_t rd_off = read_start_offset;
++ const off_t wr_off = rd_off + inslen;
+ if( FSeeko(pFile, rd_off, SEEK_SET) )
+ {
+ return false;
+@@ -148,14 +148,14 @@
+ #endif
+ if (sb.st_size > offset)
+ {
+- off64_t bytes_to_move = sb.st_size - offset;
+- off64_t read_end_offset = sb.st_size;
++ off_t bytes_to_move = sb.st_size - offset;
++ off_t read_end_offset = sb.st_size;
+ while (bytes_to_move != 0)
+ {
+- const size_t bytes_this_time = static_cast<size_t>(std::min((off64_t)BUFFERSIZE, bytes_to_move));
+- const off64_t rd_off = read_end_offset - bytes_this_time;
+- assert( (off64_t)rd_off >= offset );
+- const off64_t wr_off = rd_off + inslen;
++ const size_t bytes_this_time = static_cast<size_t>(std::min((off_t)BUFFERSIZE, bytes_to_move));
++ const off_t rd_off = read_end_offset - bytes_this_time;
++ assert( (off_t)rd_off >= offset );
++ const off_t wr_off = rd_off + inslen;
+ if( FSeeko(pFile, rd_off, SEEK_SET) )
+ {
+ return false;
+@@ -326,15 +326,15 @@
+ size_t dicomlen = 4 + 4; // Tag + VL for Implicit
+ if( TS.GetNegociatedType() == TransferSyntax::Explicit )
+ dicomlen += 4;
+- off64_t newlen = len;
++ off_t newlen = len;
+ assert( (size_t)newlen == len );
+ newlen += dicomlen;
+ newlen -= actualde;
+- off64_t plength = newlen;
++ off_t plength = newlen;
+ assert( ReservedDataLength >= 0 );
+ if( ReservedDataLength )
+ {
+- if( (newlen + ReservedDataLength) >= (off64_t)len )
++ if( (newlen + ReservedDataLength) >= (off_t)len )
+ {
+ plength = newlen + ReservedDataLength - len;
+ }
+@@ -345,8 +345,8 @@
+ ReservedDataLength -= len;
+ assert( ReservedDataLength >= 0 );
+ }
+- //if( !prepare_file( pFile, (off64_t)thepos + actualde, newlen ) )
+- if( !prepare_file( pFile, (off64_t)thepos + actualde, plength ) )
++ //if( !prepare_file( pFile, (off_t)thepos + actualde, newlen ) )
++ if( !prepare_file( pFile, (off_t)thepos + actualde, plength ) )
+ {
+ return false;
+ }
+@@ -360,18 +360,18 @@
+ else
+ {
+ assert( pFile );
+- const off64_t curpos = FTello(pFile);
++ const off_t curpos = FTello(pFile);
+ assert( curpos == thepos );
+- if( ReservedDataLength >= (off64_t)len )
++ if( ReservedDataLength >= (off_t)len )
+ {
+ // simply update remaining reserved buffer:
+ ReservedDataLength -= len;
+ }
+ else
+ {
+- const off64_t plength = len - ReservedDataLength;
++ const off_t plength = len - ReservedDataLength;
+ assert( plength >= 0 );
+- if( !prepare_file( pFile, (off64_t)curpos, plength) )
++ if( !prepare_file( pFile, (off_t)curpos, plength) )
+ {
+ return false;
+ }
+@@ -392,14 +392,14 @@
+ // Update DataElement:
+ const size_t currentdatalenth = CurrentDataLenth;
+ assert( ReservedDataLength >= 0);
+- //const off64_t refpos = FTello(pFile);
++ //const off_t refpos = FTello(pFile);
+ if( !UpdateDataElement( t ) )
+ {
+ return false;
+ }
+ if( ReservedDataLength > 0)
+ {
+- const off64_t curpos = thepos;
++ const off_t curpos = thepos;
+ if( !prepare_file( pFile, curpos + ReservedDataLength, - ReservedDataLength) )
+ {
+ return false;
+@@ -584,7 +584,7 @@
+ pFile = fopen(outfilename, "r+b");
+ assert( pFile );
+
+- if( !prepare_file( pFile, (off64_t)thepcpos, pclen ) )
++ if( !prepare_file( pFile, (off_t)thepcpos, pclen ) )
+ {
+ return false;
+ }
+@@ -670,7 +670,7 @@
+ size_t actualde;
+ size_t CurrentDataLenth;
+ Tag CurrentGroupTag;
+- off64_t ReservedDataLength{0};
++ off_t ReservedDataLength{0};
+ unsigned short ReservedGroupDataElement{0};
+ public:
+ FileStreamer *Self{nullptr};
+@@ -682,7 +682,7 @@
+ {
+ if( CurrentDataLenth % 2 == 1 )
+ {
+- const off64_t curpos = FTello(pFile);
++ const off_t curpos = FTello(pFile);
+ if( ReservedDataLength >= 1 )
+ {
+ // simply update remaining reserved buffer:
+@@ -690,7 +690,7 @@
+ }
+ else
+ {
+- if( !prepare_file( pFile, (off64_t)curpos, 1) )
++ if( !prepare_file( pFile, (off_t)curpos, 1) )
+ {
+ return false;
+ }
+@@ -702,7 +702,7 @@
+ CurrentDataLenth += 1;
+ }
+ assert( CurrentDataLenth % 2 == 0 );
+- off64_t vlpos = thepos;
++ off_t vlpos = thepos;
+ vlpos -= CurrentDataLenth;
+ vlpos -= 4; // VL
+ if( TS.GetNegociatedType() == TransferSyntax::Explicit )
+@@ -720,7 +720,7 @@
+ }
+ return true;
+ }
+- size_t WriteHelper( off64_t offset, const Tag & tag, const VL & vl )
++ size_t WriteHelper( off_t offset, const Tag & tag, const VL & vl )
+ {
+ FSeeko(pFile, offset, SEEK_SET);
+ std::stringstream ss;
+@@ -765,7 +765,7 @@
+ static int checksize = 0;
+ if( !checksize )
+ {
+- const int soff = sizeof( off64_t );
++ const int soff = sizeof( off_t );
+ const int si64 = sizeof( int64_t );
+ if( soff != si64 ) return false;
+ if( !(sizeof(sb.st_size) > 4) ) // LFS ?
diff --git a/testing/gdcm/40-java.patch b/testing/gdcm/40-java.patch
new file mode 100644
index 00000000000..291fe9c79b5
--- /dev/null
+++ b/testing/gdcm/40-java.patch
@@ -0,0 +1,18 @@
+--- a/Wrapping/Java/gdcm.i
++++ b/Wrapping/Java/gdcm.i
+@@ -247,7 +247,6 @@
+
+ // http://www.swig.org/Doc1.3/Java.html#imclass_pragmas
+ // Need to be located *after* gdcmConfigure.h
+-#ifdef GDCM_AUTOLOAD_GDCMJNI
+ %pragma(java) jniclasscode=%{
+ private final static String GDCMJNI = "gdcmjni";
+ static {
+@@ -339,7 +338,6 @@
+ }
+ }
+ %}
+-#endif
+
+
+ //%include "gdcmTypes.h"
diff --git a/testing/gdcm/50-use_copyright.patch b/testing/gdcm/50-use_copyright.patch
new file mode 100644
index 00000000000..298a9f67c37
--- /dev/null
+++ b/testing/gdcm/50-use_copyright.patch
@@ -0,0 +1,29 @@
+From 541353ba279245fb0297f50dcb23d2da0d45cdc4 Mon Sep 17 00:00:00 2001
+From: "Ankur Sinha (Ankur Sinha Gmail)" <sanjay.ankur@gmail.com>
+Date: Sun, 28 Jul 2019 16:38:52 +0100
+Subject: [PATCH] 3.0.1 Use copyright
+
+---
+ CMake/UseCopyright.cmake | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/CMake/UseCopyright.cmake b/CMake/UseCopyright.cmake
+index fb4fe1fad..d8bc8e8cb 100644
+--- a/CMake/UseCopyright.cmake
++++ b/CMake/UseCopyright.cmake
+@@ -18,8 +18,10 @@ macro(APPEND_COPYRIGHT)
+ # need to raise an error if COPYRIGHT_MODULE_FILENAME is not set...
+ if(EXISTS ${COPYRIGHT_MODULE_FILENAME} )
+ foreach(filename ${ARGN})
+- file(READ ${filename} content)
+- file(APPEND ${COPYRIGHT_MODULE_FILENAME} ${content})
++ if(EXISTS ${filename} )
++ file(READ ${filename} content)
++ file(APPEND ${COPYRIGHT_MODULE_FILENAME} ${content})
++ endif()
+ endforeach()
+ endif()
+ endmacro()
+--
+2.21.0
+
diff --git a/testing/gdcm/60-fix_export_variables.patch b/testing/gdcm/60-fix_export_variables.patch
new file mode 100644
index 00000000000..b9fc89cf38f
--- /dev/null
+++ b/testing/gdcm/60-fix_export_variables.patch
@@ -0,0 +1,34 @@
+From 204375d9cc8ba863a40fab23241844596bbb54e1 Mon Sep 17 00:00:00 2001
+From: "Ankur Sinha (Ankur Sinha Gmail)" <sanjay.ankur@gmail.com>
+Date: Sat, 23 Nov 2019 12:51:46 +0000
+Subject: [PATCH 2/2] Fix export variables
+
+---
+ CMake/ExportConfiguration/GDCMConfig.cmake.in | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/CMake/ExportConfiguration/GDCMConfig.cmake.in b/CMake/ExportConfiguration/GDCMConfig.cmake.in
+index f8e9d0ba5..4894d293e 100644
+--- a/CMake/ExportConfiguration/GDCMConfig.cmake.in
++++ b/CMake/ExportConfiguration/GDCMConfig.cmake.in
+@@ -37,14 +37,14 @@ get_filename_component(SELF_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH)
+ if(EXISTS ${SELF_DIR}/GDCMTargets.cmake)
+ # This is an install tree
+ include(${SELF_DIR}/GDCMTargets.cmake)
+- get_filename_component(GDCM_INCLUDE_ROOT "${SELF_DIR}/../../@GDCM_INSTALL_INCLUDE_DIR@" ABSOLUTE)
++ get_filename_component(GDCM_INCLUDE_ROOT "@GDCM_INSTALL_INCLUDE_DIR@" ABSOLUTE)
+ set(GDCM_INCLUDE_DIRS ${GDCM_INCLUDE_ROOT})
+- get_filename_component(GDCM_LIB_ROOT "${SELF_DIR}/../../@GDCM_INSTALL_LIB_DIR@" ABSOLUTE)
++ get_filename_component(GDCM_LIB_ROOT "@GDCM_INSTALL_LIB_DIR@" ABSOLUTE)
+ set(GDCM_LIBRARY_DIRS ${GDCM_LIB_ROOT})
+ else()
+ if(EXISTS ${SELF_DIR}/GDCMExports.cmake)
+ # This is a build tree
+- set( GDCM_INCLUDE_DIRS "@GDCM_INCLUDE_PATH@")
++ set(GDCM_INCLUDE_DIRS "@GDCM_INCLUDE_PATH@")
+ set(GDCM_LIBRARY_DIRS "@GDCM_LIBRARY_DIR@")
+
+ include(${SELF_DIR}/GDCMExports.cmake)
+--
+2.23.0
+
diff --git a/testing/gdcm/APKBUILD b/testing/gdcm/APKBUILD
new file mode 100644
index 00000000000..914be3b4edf
--- /dev/null
+++ b/testing/gdcm/APKBUILD
@@ -0,0 +1,181 @@
+# Contributor: Holger Jaekel <holger.jaekel@gmx.de>
+# Maintainer: Holger Jaekel <holger.jaekel@gmx.de>
+pkgname=gdcm
+pkgver=3.0.23
+pkgrel=2
+pkgdesc="Grassroots DiCoM is a C++ library for DICOM medical files"
+url="https://gdcm.sourceforge.net/"
+# armhf, aarch64: dcmtk missing
+# s390x: vtk missing
+arch="all !aarch64 !armhf !s390x"
+license="BSD-3-Clause"
+makedepends="
+ charls-dev
+ cmake
+ cmake
+ dcmtk-dev
+ docbook-xsl
+ doxygen
+ expat-dev
+ font-freefont
+ fontconfig-dev
+ graphviz
+ json-c-dev
+ libogg-dev
+ libtheora-dev
+ libxml2-dev
+ libxslt-dev
+ mesa-dev
+ openjpeg-dev
+ openssl-dev
+ poppler-dev
+ python3-dev
+ samurai
+ sqlite-dev
+ swig
+ util-linux-dev
+ vtk-dev
+ "
+subpackages="$pkgname-dev"
+# gdcmData.tar.bz2 is broken
+source="gdcm-$pkgver.tar.bz2::https://sourceforge.net/projects/gdcm/files/gdcm%203.x/GDCM%20$pkgver/gdcm-$pkgver.tar.bz2/download
+ https://downloads.sourceforge.net/project/gdcm/gdcmData/gdcmData/gdcmData.tar.gz
+ 10-docbook4.patch
+ 30-off_t.patch
+ 40-java.patch
+ 50-use_copyright.patch
+ 60-fix_export_variables.patch
+ "
+
+# Optional dependency texlive is not available on ppc64le
+#case "$CARCH" in
+# ppc64le|riscv64)
+ _with_doc="OFF"
+# ;;
+# *)
+# makedepends="$makedepends texlive texmf-dist-latexextra texlive-dvi"
+# subpackages="$subpackages $pkgname-doc-html $pkgname-doc-pdf"
+# _with_doc="ON"
+# ;;
+#esac
+subpackages="$subpackages $pkgname-doc py3-$pkgname:py3"
+
+# Optional dependency openjdk8-jdk is not available on riscv64
+case "$CARCH" in
+ riscv64)
+ _with_java="OFF"
+ ;;
+ *)
+ makedepends="$makedepends java-common openjdk8-jdk"
+ subpackages="$subpackages java-$pkgname:java"
+ _with_java="ON"
+ ;;
+esac
+subpackages="$subpackages lib$pkgname:lib"
+
+prepare() {
+ default_prepare
+
+ # Remove bundled utilities (we use Alpine's ones)
+ rm -rf Utilities/gdcmexpat
+ rm -rf Utilities/gdcmopenjpeg
+ rm -rf Utilities/gdcmopenjpeg
+ rm -rf Utilities/gdcmzlib
+ rm -rf Utilities/gdcmuuid
+ rm -rf Utilities/gdcmcharls
+
+ # Remove bundled utilities (we don't use them)
+ rm -rf Utilities/getopt
+ rm -rf Utilities/pvrg
+}
+
+build() {
+ if [ "$CBUILD" != "$CHOST" ]; then
+ local crossopts="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=None \
+ -DGDCM_INSTALL_PACKAGE_DIR=lib/cmake/gdcm \
+ -DGDCM_BUILD_TESTING:BOOL=ON \
+ -DGDCM_DATA_ROOT=../gdcmData/ \
+ -DGDCM_BUILD_EXAMPLES:BOOL=ON \
+ -DGDCM_DOCUMENTATION:BOOL=$_with_doc \
+ -DGDCM_WRAP_PYTHON:BOOL=ON \
+ -DPYTHON_EXECUTABLE="$(which python3)" \
+ -DGDCM_INSTALL_PYTHONMODULE_DIR="$(python -c 'import sysconfig; print(sysconfig.get_paths()["purelib"])')" \
+ -DGDCM_WRAP_JAVA:BOOL=$_with_java \
+ -DGDCM_WRAP_CSHARP:BOOL=OFF \
+ -DGDCM_BUILD_SHARED_LIBS:BOOL=ON \
+ -DGDCM_BUILD_APPLICATIONS:BOOL=ON \
+ -DGDCM_USE_VTK:BOOL=ON \
+ -DGDCM_USE_SYSTEM_CHARLS:BOOL=ON \
+ -DGDCM_USE_SYSTEM_EXPAT:BOOL=ON \
+ -DGDCM_USE_SYSTEM_OPENJPEG:BOOL=ON \
+ -DGDCM_USE_SYSTEM_ZLIB:BOOL=ON \
+ -DGDCM_USE_SYSTEM_UUID:BOOL=ON \
+ -DGDCM_USE_SYSTEM_LJPEG:BOOL=OFF \
+ -DGDCM_USE_SYSTEM_OPENSSL:BOOL=ON \
+ -DGDCM_USE_JPEGLS:BOOL=ON \
+ -DGDCM_USE_SYSTEM_LIBXML2:BOOL=ON \
+ -DGDCM_USE_SYSTEM_JSON:BOOL=ON \
+ -DGDCM_USE_SYSTEM_POPPLER:BOOL=ON \
+ -DJAVA_HOME=/usr/lib/jvm/default-jvm \
+ -DPYTHON_VERSION_MAJOR=3 \
+ $crossopts
+ cmake --build build
+}
+
+check() {
+ local test_excludes="(TestMD5$|TestSHA1$|TestWriter$|TestAnonymizer4$|TestImageChangeTransferSyntax1$|TestImageChangeTransferSyntax2$|TestImageChangeTransferSyntax3$|TestImageChangeTransferSyntax4$|TestImageChangeTransferSyntax6$|TestImageChangeTransferSyntax7$|TestPrinter1$|TestImageReader$|TestImageRegionReader1$|TestImageRegionReader2$|TestImageRegionReader3$|TestImageReaderRandomEmpty$|TestImageWriter$|TestCleaner4$|TestJSON1$|TestImageChangeTransferSyntax5$|TestUIDGeneratorPython4$|TestDCMTKMD5Python$|TestSCUValidation$|TestEcho$|TestFind$|TestWrapPython$|gdcmscu-echo-dicomserver$|gdcmscu-store-dicomserver$|gdcmscu-find-dicomserver$|TestStrictScanner1$|TestStrictScanner2_1$|TestStrictScanner2$|TestStrictScanner2_2$|TestDICOMDIRGenerator1$|TestUIDGeneratorPython$|TestvtkGDCMImageWriter1$|TestvtkGDCMMetaImageWriter$|TestvtkGDCMImageReader2_2$|TestvtkGDCMMetaImageWriter2$|TestFileChangeTransferSyntax1$|TestFileChangeTransferSyntax2$|TestFileChangeTransferSyntax2$|TestFileChangeTransferSyntax4$|TestReaderCanRead$|TestRescaler2$)"
+
+ ctest --test-dir build --output-on-failure -E $test_excludes
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+html() {
+ pkgdesc="Grassroots DiCoM HTML documentation"
+ amove usr/share/doc/gdcm-3.0/html
+}
+
+pdf() {
+ pkgdesc="Grassroots DiCoM PDF documentation"
+ amove usr/share/doc/gdcm-3.0/gdcm-$pkgver.pdf
+}
+
+java() {
+ pkgdesc="$pkgdesc (Java bindings)"
+ mkdir -p "$subpkgdir"/usr/share/java
+ mv "$pkgdir"/usr/lib/gdcm.jar "$subpkgdir"/usr/share/java/gdcm-$pkgver.jar
+ cd "$subpkgdir"/usr/share/java/
+ ln -s gdcm-$pkgver.jar gdcm.jar
+ amove usr/lib/libgdcmjni.so
+}
+
+py3() {
+ pkgdesc="$pkgdesc (Python3 bindings)"
+
+ amove usr/lib/python3*
+}
+
+lib() {
+ pkgdesc="Grassroots DiCoM runtime libraries"
+ amove usr/lib
+ amove usr/share/gdcm*
+
+}
+
+sha512sums="
+2d62e6c023a9597fb086d015110b60bea8e73b21fabbb850a3abf574b75a301e64a7d756582d8832b946904ed795746bb75f79967700923dcd794de248154641 gdcm-3.0.23.tar.bz2
+ddc67a7a0b41b2d6e1e03defb6fb8a06ceeb2e9dd9bb47dfa4f7283d79df7c1e52577b799c00e930719ae6cdda46bded9497a67b8241359f238f5366085ec9ee gdcmData.tar.gz
+87fcf6ea8f6eb34e27bf2ecf5cbd4501092d1f936341dfcf75085780da75fab9be7809521d5cb00a6c4a9e512bfbe7de20233104b19fab245391632e409498a3 10-docbook4.patch
+15520cd087ea401744d46a55e83eb307742ee4b94256476531b9f209be4ffaa2b0653d4ab8266b8c82282a52fceaa1f887d5fdebf83c1da0551c51335f74a08e 30-off_t.patch
+3254dd27821f9239c0379d8f9ca577a6f2a7ff14b55701cca9fb0ac47568c24d1e681bc404f1d97a9ed8ee00f2a11701c7d53eee7186e5ce9f7ca8eca7834326 40-java.patch
+da032530bd27b47ab4ec46652c4fcb65dda02ddeca4a3175f49cbf46efd43a1ff75b126475a694ce2df944e3970c67e378b1cf4db4cacf40d87bd999d37b4eed 50-use_copyright.patch
+6994893b96069874bacc9285b994c7f93314b9570c7dd8b64ee51bb701fd5c8bd9892641e3b9d2d6f11fa4f2b7aebbbe25d72c1e689b5cccad34280f4c5199a5 60-fix_export_variables.patch
+"
diff --git a/testing/gdm-settings/APKBUILD b/testing/gdm-settings/APKBUILD
new file mode 100644
index 00000000000..cc74a3f1803
--- /dev/null
+++ b/testing/gdm-settings/APKBUILD
@@ -0,0 +1,44 @@
+# Maintainer: Thomas Aldrian <aldrian.thom@proton.me>
+pkgname=gdm-settings
+pkgver=4.3
+pkgrel=1
+pkgdesc="A settings app for Gnome's Login Manager, GDM"
+url="https://github.com/gdm-settings/gdm-settings"
+arch="noarch !armhf !s390x" # Blocked by gdm
+license="AGPL-3.0-or-later"
+depends="
+ gdm
+ glib
+ libadwaita
+ polkit
+ py3-gobject3
+ "
+makedepends="
+ blueprint-compiler
+ desktop-file-utils
+ glib-dev
+ gobject-introspection
+ libadwaita-dev
+ meson
+ py3-gobject3-dev
+ "
+checkdepends="appstream"
+subpackages="$pkgname-lang"
+source="$pkgname-$pkgver.tar.gz::https://github.com/gdm-settings/gdm-settings/archive/refs/tags/v$pkgver.tar.gz"
+
+build() {
+ abuild-meson . output
+ meson compile -C output
+}
+
+check() {
+ meson test --no-rebuild --print-errorlogs -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+sha512sums="
+cc586eafdef9f61d90b7f8ae4fbfdf0636e55893ec8a73f989ce66d45d7c6a4c56e8c32b95dbf9bdcfecd7e911815f2f1cc22b7581841f4418991fbf1f4ef248 gdm-settings-4.3.tar.gz
+"
diff --git a/testing/gearmand/APKBUILD b/testing/gearmand/APKBUILD
index 65e7acfad9c..6b505c6a750 100644
--- a/testing/gearmand/APKBUILD
+++ b/testing/gearmand/APKBUILD
@@ -1,22 +1,32 @@
# Contributor: Aaron Hurt <ahurt@ena.com>
# Maintainer:
pkgname=gearmand
-pkgver=1.1.19.1
-pkgrel=4
+pkgver=1.1.21
+pkgrel=0
pkgdesc="A distributed job queue"
url="http://gearman.org"
arch="all"
license="BSD-3-Clause"
-makedepends="boost-dev gperf libevent-dev util-linux-dev
- hiredis-dev openssl-dev sqlite-dev libmemcached-dev"
+depends_dev="libevent-dev"
+makedepends="
+ $depends_dev
+ boost-dev
+ gperf
+ hiredis-dev
+ libmemcached-dev
+ openssl-dev>3
+ sqlite-dev
+ util-linux-dev
+ "
install="$pkgname.pre-install $pkgname.post-deinstall"
-subpackages="$pkgname-doc gearman-dev:gearman_dev gearman-libs:gearman_libs $pkgname-openrc"
+subpackages="$pkgname-doc gearman-dev gearman-libs $pkgname-openrc"
source="https://github.com/gearman/gearmand/releases/download/$pkgver/gearmand-$pkgver.tar.gz
- libtest-cmdline.cc.patch
- libhashkit-common.h.patch
$pkgname.initd
- $pkgname.confd"
+ $pkgname.confd
+ "
+ # libtest-cmdline.cc.patch
+ # libhashkit-common.h.patch
build() {
# Configure with only the most commonly used persistence backends.
# We are explicitly disabling tokyo cabinet, pgsql and mysql to reduce
@@ -36,7 +46,7 @@ build() {
--enable-ssl \
--enable-hiredis \
--enable-jobserver=no
- make
+ make V=1
}
package() {
@@ -48,24 +58,8 @@ package() {
"$pkgdir"/etc/conf.d/$pkgname
}
-gearman_dev() {
- default_dev
-
- pkgdesc="Library providing Gearman client and worker functions (development files)"
- depends="libevent-dev"
-}
-
-gearman_libs() {
- pkgdesc="Library providing Gearman client and worker functions"
-
- mkdir -p "$subpkgdir"/usr/lib
- mv "$pkgdir"/usr/lib/libgearman.so* "$subpkgdir"/usr/lib/
-}
-
sha512sums="
-cbcf85dfd7268aa9acc039eac9505385af3be89eeba48270ddb45739e0ccdcf0d2963d821ccbb6a471396fc9ab2521d096f5d6c2fc3d41b3fb050bd82a795f1f gearmand-1.1.19.1.tar.gz
-8d7c7473d8bcc06a6dfcb1975dd5b4992457661c6c2fab5e160f6252222af603003466c26de0c2d241d247ac33bc68f8fae853b7401691f36b2e6c57ff9b65ba libtest-cmdline.cc.patch
-08a1ce2ef071a33efc5c93de5812f83ee2b96ae604eaedb1d40a998ccb4e88a0f588d846d19623de9b8f98df18639168521763d27f1fb3ca046b4c679d61468b libhashkit-common.h.patch
+d8c6561ddcf7aaf3a861c2a05b014473ff9572fefa9e181ae25b0e88bac8ba09ab4852d98fb0c405b186ae78f6fac22c4248977395162dc41a0e35f53904db49 gearmand-1.1.21.tar.gz
d97dbee95c0b96f0a81e42b730afdb9d129eb83e09be101e1bc2b2cd06a95fe1259265b912bf3850a51c6404e2c5883532a008946dfd46992cb488e1221dae97 gearmand.initd
d27a6acbce663aad91055f96e374ddf12d00a1ccded318693be441b7c4dfde43db73c755002ecfc683a3c1e95139cf378f26e3ab39b5ab6584a40e3991efe245 gearmand.confd
"
diff --git a/testing/geckodriver/APKBUILD b/testing/geckodriver/APKBUILD
deleted file mode 100644
index 63d2915031f..00000000000
--- a/testing/geckodriver/APKBUILD
+++ /dev/null
@@ -1,28 +0,0 @@
-# Contributor: Nulo <git@nulo.in>
-# Maintainer: Nulo <git@nulo.in>
-pkgname=geckodriver
-pkgver=0.31.0
-pkgrel=0
-pkgdesc="Proxy for using W3C WebDriver compatible clients to interact with Gecko-based browsers."
-url="https://github.com/mozilla/geckodriver"
-# s390x: limited by cargo
-arch="all !s390x !riscv64"
-license="MPL"
-makedepends="cargo"
-source="$pkgname-$pkgver.tar.gz::https://github.com/mozilla/geckodriver/archive/refs/tags/v$pkgver.tar.gz"
-
-build() {
- cargo build --release --bin geckodriver
-}
-
-check() {
- cargo test --release
-}
-
-package() {
- install -Dm0755 target/release/$pkgname -t "$pkgdir"/usr/bin
-}
-
-sha512sums="
-e4723dd365f71e6209f54742c09d73773ea17801ec41913aab3dc4c63667001fd583544d4f41241aead19433a790de161be4c74881fb810e49b7925f28ac495a geckodriver-0.31.0.tar.gz
-"
diff --git a/testing/gede/APKBUILD b/testing/gede/APKBUILD
index 5ee27f9680c..95003ea5a19 100644
--- a/testing/gede/APKBUILD
+++ b/testing/gede/APKBUILD
@@ -1,15 +1,15 @@
# Contributor: Rasmus Thomsen <oss@cogitri.dev>
-# Maintainer: Rasmus Thomsen <oss@cogitri.dev>
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=gede
-pkgver=2.17.1
-pkgrel=0
+pkgver=2.18.2
+pkgrel=1
pkgdesc="Gede is a GUI to gdb using Qt5"
-url="http://gede.acidron.com/"
+url="http://gede.dexar.se/"
arch="all"
license="BSD-2-Clause"
options="!check" # no tests
depends="ctags"
-makedepends="openssl-dev qt5-qtbase-dev"
+makedepends="openssl-dev>3 qt5-qtbase-dev"
source="https://gede.dexar.se/uploads/source/gede-$pkgver.tar.xz"
build() {
@@ -18,10 +18,10 @@ build() {
make
}
-
package() {
- mkdir -p "$pkgdir"/usr/bin
- install -m0755 src/gede "$pkgdir"/usr/bin/
+ install -Dm755 src/gede -t "$pkgdir"/usr/bin/
}
-sha512sums="a06fb66cea49cb0091f6cb76083cadfe7cfb22a6b62d671657cfe09bfba3beff954fa6114c831398537da1e002e72fd7cad3e658f758821be293574d6878242e gede-2.17.1.tar.xz"
+sha512sums="
+54f5c3209ddb12af3aa5815937de87f9e5169dff9e6067f3497b237f57a044b110e4a29ede6bc66bb256b94e054bba6352f476ce74da6a6bb50c93e65bb87185 gede-2.18.2.tar.xz
+"
diff --git a/testing/genact/APKBUILD b/testing/genact/APKBUILD
new file mode 100644
index 00000000000..b62e6639c7b
--- /dev/null
+++ b/testing/genact/APKBUILD
@@ -0,0 +1,34 @@
+# Contributor: Guy Godfroy <guy.godfroy@gugod.fr>
+# Maintainer: Guy Godfroy <guy.godfroy@gugod.fr>
+pkgname=genact
+pkgver=1.4.2
+pkgrel=0
+pkgdesc="A nonsense activity generator"
+url="https://github.com/svenstaro/genact"
+arch="all !s390x" # s390x: https://github.com/nix-rust/nix/issues/1968
+license="MIT"
+makedepends="cargo cargo-auditable"
+source="$pkgname-$pkgver.tar.gz::https://github.com/svenstaro/genact/archive/refs/tags/v$pkgver.tar.gz"
+options="net"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm755 target/release/genact "$pkgdir"/usr/bin/genact
+}
+
+sha512sums="
+7d862050c44c95b8b3476664aeade12ac5caefe4ec0ffde73329656a176f1ad44db41eeda0f12cbcc0aecdd35a430c18d1278bdd11ece0da4bd0be166ff689d3 genact-1.4.2.tar.gz
+"
diff --git a/testing/geodns/APKBUILD b/testing/geodns/APKBUILD
index acc3d2d6e39..9ad786dc708 100644
--- a/testing/geodns/APKBUILD
+++ b/testing/geodns/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Kevin Daudt <kdaudt@alpinelinux.org>
pkgname=geodns
-pkgver=3.2.0
-pkgrel=3
+pkgver=3.3.0
+pkgrel=5
pkgdesc="DNS server with per-client targeted responses"
url="https://github.com/abh/geodns"
arch="all"
@@ -13,14 +13,16 @@ source="$pkgname-$pkgver.tar.gz::https://github.com/abh/geodns/archive/v$pkgver.
$pkgname.confd
"
-export GOMODCACHE="$srcdir/go"
export GOFLAGS="$GOFLAGS -modcacherw"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
build() {
- go build -v -ldflags "-s -w"
+ go build -v
cd geodns-logs
- go build -v -ldflags "-s -w"
+ go build -v
}
check() {
@@ -41,7 +43,7 @@ logs() {
}
sha512sums="
-b04ea8f80494fc7def5cc203341d9e3666530145b5a83a8a89d3ef0c3cdcd96fe1d67cdb5a8885d51e52d4f0a96b93c185cd13a95789d1d40171f0adc22a525a geodns-3.2.0.tar.gz
+4240d4827c403ab81cb3bdbb36b5f408144bf5ff20669b46dcd9ce452ca0d29549983a6de2897b2611bd8a7c26540423600affc40dc27ab669d5e730fd2d6ae3 geodns-3.3.0.tar.gz
dc315782eb77627e2cd23a78ebef2f85a0a37a9129f6e16c817d7b9540c8b02987d35fc46882d7752c09caca825c5a77d2d3a27ae19ccccf2bba2e04bc74940c geodns.initd
ce2c7f51151313fa35f132f05cb59458eabb0a74208a79d585d579ce88d0ab168eab389fd59e931b4b19da7fcbca202bf495af345156e47dccb187b746b3ee15 geodns.confd
"
diff --git a/testing/geomyidae/APKBUILD b/testing/geomyidae/APKBUILD
index c345538e07d..8bfb551a520 100644
--- a/testing/geomyidae/APKBUILD
+++ b/testing/geomyidae/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Sascha Paunovic <azarus@posteo.net>
pkgname=geomyidae
pkgver=0.34
-pkgrel=1
+pkgrel=2
pkgdesc="Simple gopherd"
url="gopher://bitreich.org/1/scm/geomyidae"
arch="all"
diff --git a/testing/geonames/APKBUILD b/testing/geonames/APKBUILD
new file mode 100644
index 00000000000..d8e82a46e1d
--- /dev/null
+++ b/testing/geonames/APKBUILD
@@ -0,0 +1,40 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Luca Weiss <luca@z3ntu.xyz>
+pkgname=geonames
+pkgver=0.3.1
+pkgrel=1
+pkgdesc="A library for parsing and querying a local copy of the geonames.org database"
+arch="all"
+url="https://gitlab.com/ubports/development/core/geonames"
+license="GPL-3.0-only"
+makedepends="
+ bash
+ cmake
+ glib-dev
+ gtk-doc
+ samurai
+ "
+source="https://gitlab.com/ubports/development/core/geonames/-/archive/$pkgver/geonames-$pkgver.tar.gz"
+subpackages="$pkgname-dev $pkgname-lang $pkgname-doc"
+options="!check" # https://gitlab.com/ubports/development/core/geonames/-/issues/2
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=None
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+449fd54127385afde1da2c896c2b6e287826ff2949e456537a066bd1a0aaee3fd484074f2d1366c3b65f9ffa4dd9ff28b926aa48a6db3e93f41fa20c4bfe725d geonames-0.3.1.tar.gz
+"
diff --git a/testing/geopard/APKBUILD b/testing/geopard/APKBUILD
deleted file mode 100644
index 9f43e774332..00000000000
--- a/testing/geopard/APKBUILD
+++ /dev/null
@@ -1,43 +0,0 @@
-# Contributor: knuxify <knuxify@gmail.com>
-# Maintainer: knuxify <knuxify@gmail.com>
-pkgname=geopard
-pkgver=1.1.0
-pkgrel=0
-pkgdesc="Colorful, adaptive gemini browser"
-url="https://ranfdev.com/projects/geopard/"
-arch="all !s390x !riscv64" # blocked by cargo -> rust / gtk4.0
-license="GPL-3.0-or-later"
-makedepends="
- blueprint-compiler
- cargo
- desktop-file-utils
- glib-dev
- gtk4.0-dev
- libadwaita-dev
- meson
- openssl-dev
- "
-source="$pkgname-$pkgver.tar.xz::https://github.com/ranfdev/Geopard/releases/download/v$pkgver/com.ranfdev.Geopard.tar.xz"
-options="!check" # no test suite
-
-prepare() {
- default_prepare
- rm -rf "$builddir"/subprojects/blueprint-compiler
-}
-
-build() {
- abuild-meson . output
- meson compile ${JOBS:+-j ${JOBS}} -C output
-}
-
-check() {
- meson test --no-rebuild -v -C output
-}
-
-package() {
- DESTDIR="$pkgdir" meson install --no-rebuild -C output
-}
-
-sha512sums="
-cf6266210eb468bc1a1630c39cdc1aee383624e51fff62e2d649bc3ddb238537a350ffa5b8fff37601a00dbcd012fef908a1437587dec048c43f891092d5c890 geopard-1.1.0.tar.xz
-"
diff --git a/testing/geotagging/APKBUILD b/testing/geotagging/APKBUILD
index 29d522efa73..25cdd388339 100644
--- a/testing/geotagging/APKBUILD
+++ b/testing/geotagging/APKBUILD
@@ -1,26 +1,27 @@
# Contributor: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
# Maintainer: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
pkgname=geotagging
-pkgver=0.6.1
-pkgrel=0
+pkgver=0.7.2
+pkgrel=1
pkgdesc="Photography geotagging tool"
url="https://github.com/jmlich/geotagging"
-arch="all !s390x !ppc64le !armhf !riscv64" # Limited by qt5-qtwebengine
+arch="x86_64 aarch64" # Limited by qt6-qtwebengine
license="GPL-3.0-or-later"
makedepends="
cmake
exiv2-dev
- qt5-qtbase-dev
- qt5-qttools-dev
- qt5-qtwebengine-dev
+ qt6-qtbase-dev
+ qt6-qttools-dev
+ qt6-qtwebengine-dev
samurai
"
-source="$pkgname-$pkgver.tar.gz::https://github.com/jmlich/geotagging/archive/refs/tags/$pkgver.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/jmlich/geotagging/archive/refs/tags/$pkgver.tar.gz
+ fix-exiv2.patch
+ "
options="!check" # No upstream test suite
build() {
- cmake -B build \
- -G Ninja \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_DATADIR=/usr/share/geotagging
@@ -33,5 +34,6 @@ package() {
}
sha512sums="
-1e836348b92da377b82d441b5d56dd971acb0d6bf26aebe2db598f287a3ef04fd3d4bb733caaaa34fabb4130bb5f4a3f80e7c483a3c5afbb569a36ce2bd1d68b geotagging-0.6.1.tar.gz
+8af30ea133fee81611316dae2f35e74376369f1b497e9d0dbd296b3f816f7ed01d350552d1e223269be5776b0beab4a3610e1c639f7097539e85ddfe1ae4804f geotagging-0.7.2.tar.gz
+f05cb172f704f4c5d03f98825a9788c0afb43d20d9adf39ce2ceaaa6cf60c4e29242b701f9296bc77035ee82cbbe109cebd5894f52528b550d3d7b7afbfc1431 fix-exiv2.patch
"
diff --git a/testing/geotagging/fix-exiv2.patch b/testing/geotagging/fix-exiv2.patch
new file mode 100644
index 00000000000..569959ffbe1
--- /dev/null
+++ b/testing/geotagging/fix-exiv2.patch
@@ -0,0 +1,11 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -111,7 +111,7 @@
+ target_compile_definitions(com.github.jmlich.geotagging
+ PRIVATE $<$<OR:$<CONFIG:Debug>,$<CONFIG:RelWithDebInfo>>:QT_QML_DEBUG>)
+ target_link_libraries(com.github.jmlich.geotagging
+- PRIVATE Qt6::Core Qt6::Gui Qt6::Network Qt6::Widgets Qt6::WebEngineWidgets Qt6::WebChannel exiv2lib)
++ PRIVATE Qt6::Core Qt6::Gui Qt6::Network Qt6::Widgets Qt6::WebEngineWidgets Qt6::WebChannel exiv2)
+
+
+ option(DEPLOY_QT_LIBRARIES "Deploy Qt libraries to executable path" OFF)
diff --git a/testing/getdns/APKBUILD b/testing/getdns/APKBUILD
new file mode 100644
index 00000000000..2bab66adcdb
--- /dev/null
+++ b/testing/getdns/APKBUILD
@@ -0,0 +1,50 @@
+# Contributor: Johannes Heimansberg <git@jhe.dedyn.io>
+# Maintainer: Johannes Heimansberg <git@jhe.dedyn.io>
+pkgname=getdns
+pkgver=1.7.3
+pkgrel=0
+pkgdesc="Modern asynchronous DNS API"
+url="https://getdnsapi.net"
+arch="all"
+license="BSD-3-Clause"
+subpackages="$pkgname-dev $pkgname-libs $pkgname-doc"
+makedepends="cmake
+ libidn2-dev
+ openssl-dev
+ samurai
+ unbound-dev
+ yaml-dev
+"
+checkdepends="check-dev"
+source="$pkgname-$pkgver.tar.gz::https://getdnsapi.net/dist/getdns-$pkgver.tar.gz"
+options="!check" # The DNS lookups executed in the tests time out due to lack of connectivity
+
+build() {
+ if [ "$CBUILD" != "$CHOST" ]; then
+ CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DBUILD_LIBEVENT2=OFF \
+ -DBUILD_LIBUV=OFF \
+ -DBUILD_LIBEV=OFF \
+ -DBUILD_STUBBY=OFF \
+ -DENABLE_UNBOUND_EVENT_API=OFF \
+ -DENABLE_STATIC=OFF \
+ -DBUILD_TESTING="$(want_check && echo ON || echo OFF)" \
+ $CMAKE_CROSSOPTS
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+d5725a24378b6fe0018daefdaba5565d2d4d51109ef66609fc34270a0a69accb95f5f895d0cdfc5caca51d2ec586db126f367439f05aed12507395af26739e2f getdns-1.7.3.tar.gz
+"
diff --git a/testing/getmail6/APKBUILD b/testing/getmail6/APKBUILD
new file mode 100644
index 00000000000..2a4021ca7ff
--- /dev/null
+++ b/testing/getmail6/APKBUILD
@@ -0,0 +1,35 @@
+# Contributor: Henrik Riomar <henrik.riomar@gmail.com>
+# Maintainer: Henrik Riomar <henrik.riomar@gmail.com>
+pkgname=getmail6
+pkgver=6.18.14
+pkgrel=1
+pkgdesc="mail retriever with support for POP3, IMAP4 and SDPS"
+url="https://getmail6.org/"
+arch="noarch"
+license="GPL-2.0-only"
+checkdepends="py3-pytest"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+depends="python3"
+subpackages="$pkgname-doc $pkgname-pyc"
+source="https://github.com/getmail6/getmail6/archive/v$pkgver/getmail-$pkgver.tar.gz"
+
+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 test/test.py
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" .dist/*.whl
+ mv "$pkgdir/usr/share/doc/getmail-$pkgver" "$pkgdir/usr/share/doc/$pkgname"
+}
+
+sha512sums="
+58450e3080d5be2c5338a156e854dd37c3c9e5d471de4875f76b179a5e981ceeb9ccdc5e3c0a353da60a7fbb00340aae86acd783ad32a4b743b15cf9cd23ca4b getmail-6.18.14.tar.gz
+"
diff --git a/testing/getssl/APKBUILD b/testing/getssl/APKBUILD
index 27122454021..dcc7ced4121 100644
--- a/testing/getssl/APKBUILD
+++ b/testing/getssl/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Leo Unglaub <leo@unglaub.at>
pkgname=getssl
-pkgver=2.22
-pkgrel=1
+pkgver=2.48
+pkgrel=0
pkgdesc="A pure shell implementation of the LetsEncrypt ACME protocol."
url="https://github.com/srvrco/getssl"
arch="noarch"
@@ -13,4 +13,7 @@ source="$pkgname-$pkgver.tar.gz::https://github.com/srvrco/getssl/archive/v$pkgv
package() {
make DESTDIR="$pkgdir" install
}
-sha512sums="de499636ed01d8f4c9123c061cd54986a956175a2562bec79b0383528e816db085dda7b5ddb8b5512726bb2dc2d763295b35137ce59a52bf2a11ae0846af3361 getssl-2.22.tar.gz"
+
+sha512sums="
+c1b3e8556a0df3c0a23b12dde2add335aece5ddfdb8678bb87ce0ebae8acdb909b337770c3a01d5439b61887e3ce30f5e3d90cdaa9355e22ba4c96fe1066cfcd getssl-2.48.tar.gz
+"
diff --git a/testing/gettext-tiny/APKBUILD b/testing/gettext-tiny/APKBUILD
deleted file mode 100644
index 0dd1b0e8593..00000000000
--- a/testing/gettext-tiny/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Maintainer: Ariadne Conill <ariadne@dereferenced.org>
-pkgname=gettext-tiny
-pkgver=0.3.2
-pkgrel=0
-pkgdesc="a software locale translation system"
-url="https://github.com/sabotage-linux/gettext-tiny"
-arch="all"
-options="!check" # No test suite.
-license="MIT"
-depends=""
-# Remove !gettext-dev when we drop GNU gettext.
-depends_dev="musl-libintl !gettext-dev"
-makedepends_build="$depends_dev"
-makedepends_host=""
-makedepends="$makedepends_build $makedepends_host"
-install=""
-subpackages="$pkgname-dev"
-source="http://ftp.barfooze.de/pub/sabotage/tarballs/gettext-tiny-$pkgver.tar.xz
- respect-cflags.patch::https://patch-diff.githubusercontent.com/raw/sabotage-linux/gettext-tiny/pull/58.patch"
-builddir="$srcdir/gettext-tiny-$pkgver"
-
-build() {
- make LIBSRC=libintl/libintl-musl.c prefix=/usr
-}
-
-package() {
- make DESTDIR="$pkgdir" prefix=/usr LIBSRC=libintl/libintl-musl.c install
-}
-
-dev() {
- # when we're ready to drop GNU gettext, uncomment the below line
- # provides="gettext-dev=9999"
- default_dev
-}
-
-sha512sums="0efde2ce995c1bc5e2b983a5c83b8532cb8e99ae9043c5de7085cf550eb2c052bad4641782fb64b2bc70434844a935f0935d9f1a62954d7facbe247fe4ce1e21 gettext-tiny-0.3.2.tar.xz
-61869565f3c329a43f8e2ffd3e03295a4bd0e09efb1b7905a1c48feeaef3aa77722845b9188f28849c070dbe3c64b73abd7aa1908595c36093e8778be75736db respect-cflags.patch"
diff --git a/testing/getting-things-gnome/APKBUILD b/testing/getting-things-gnome/APKBUILD
index 0f8a0f80041..7e829e21642 100644
--- a/testing/getting-things-gnome/APKBUILD
+++ b/testing/getting-things-gnome/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Rasmus Thomsen <oss@cogitri.dev>
-# Maintainer: Rasmus Thomsen <oss@cogitri.dev>
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=getting-things-gnome
pkgver=0.6
-pkgrel=0
+pkgrel=3
pkgdesc="A personal tasks and TODO-list items organizier for GNOME, inspired by the Getting Things Done methodology"
url="https://wiki.gnome.org/Apps/GTG"
arch="noarch"
@@ -16,7 +16,7 @@ builddir="$srcdir/gtg-$pkgver"
build() {
abuild-meson output
- meson compile ${JOBS:+-j ${JOBS}} -C output
+ meson compile -C output
}
check() {
diff --git a/testing/gf2x/APKBUILD b/testing/gf2x/APKBUILD
index ee7fe1907ce..ee7fe1907ce 100755..100644
--- a/testing/gf2x/APKBUILD
+++ b/testing/gf2x/APKBUILD
diff --git a/testing/gfan/APKBUILD b/testing/gfan/APKBUILD
new file mode 100644
index 00000000000..7661edd867f
--- /dev/null
+++ b/testing/gfan/APKBUILD
@@ -0,0 +1,31 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
+pkgname=gfan
+pkgver=0.6.2
+pkgrel=1
+pkgdesc="Software package for computing Grobner fans and tropical varieties"
+url="http://home.imf.au.dk/jensen/software/gfan/gfan.html"
+# armhf, armv7, x86: hang during tests
+arch="all !armhf !armv7 !x86"
+license="GPL-2.0-or-later"
+makedepends="cddlib-dev gmp-dev"
+source="http://home.imf.au.dk/jensen/software/gfan/gfan$pkgver.tar.gz"
+builddir="$srcdir/$pkgname$pkgver"
+
+build() {
+ export CFLAGS="${CFLAGS/-Os/-O3}" # gotta go fast
+ sed -i 's/#include "cdd/#include "cddlib/' src/*.cpp
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make PREFIX="$pkgdir"/usr install
+}
+
+sha512sums="
+5961820750af2522fdc1a86c0254742c3b003607a8707df5d6cd5f0bc6461e4d3db3b1d3cb537979d57eb9dff387974a58aeb91d0b5246d7c701cadc5a2cf4cf gfan0.6.2.tar.gz
+"
diff --git a/testing/gfold/APKBUILD b/testing/gfold/APKBUILD
deleted file mode 100644
index 98702b75f13..00000000000
--- a/testing/gfold/APKBUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-# Contributor: Michał Polański <michal@polanski.me>
-# Maintainer: Michał Polański <michal@polanski.me>
-pkgname=gfold
-pkgver=4.0.0
-pkgrel=0
-pkgdesc="CLI tool to help keep track of Git repositories"
-url="https://github.com/nickgerace/gfold"
-license="Apache-2.0"
-arch="all !s390x !riscv64" # blocked by rust/cargo
-makedepends="cargo"
-source="https://github.com/nickgerace/gfold/archive/$pkgver/gfold-$pkgver.tar.gz"
-
-prepare() {
- default_prepare
-
- cargo fetch --locked
-}
-
-build() {
- cargo build --release --frozen
-}
-
-check() {
- cargo test --frozen
-}
-
-package() {
- install -Dm755 target/release/gfold -t "$pkgdir"/usr/bin
-}
-
-sha512sums="
-aa2f5c8218b943e0d6e997139cc39892f91ccd0d006866f8ae2367acc6e52bcb326d361f6633fe0d21d1603ef6b580dcf4a894886110194fd27b587f2a423b7b gfold-4.0.0.tar.gz
-"
diff --git a/testing/ghidra/APKBUILD b/testing/ghidra/APKBUILD
new file mode 100644
index 00000000000..b13b5d86a9c
--- /dev/null
+++ b/testing/ghidra/APKBUILD
@@ -0,0 +1,116 @@
+# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
+# Contributor: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
+pkgname=ghidra
+pkgver=11.0
+pkgrel=0
+pkgdesc="A Cross Platform and Open Source Electronics Design Automation Suite"
+url="https://ghidra-sre.org/"
+# only x86_64 and aarch64 support provided by upstream
+# aarch64: jdk segfaults
+arch="x86_64"
+license="Apache-2.0"
+makedepends="
+ bash
+ gradle
+ protoc
+ unzip
+ "
+# Note: Ghidra refuses to launch with only JRE installed, so
+# please do not move JDK to makedepends
+depends="
+ openjdk17-jdk
+ wmname
+ "
+subpackages="
+ $pkgname-tutorials
+ $pkgname-doc
+ "
+source="
+ https://github.com/NationalSecurityAgency/ghidra/archive/refs/tags/Ghidra_${pkgver}_build.tar.gz
+ use-system-protoc.patch
+ ghidra.sh
+ ghidra.desktop
+ "
+# This contains binary executables in the exercises section of the
+# documentation. We don't want to spoil the fun by stripping them.
+options="net !check"
+builddir="$srcdir/ghidra-Ghidra_${pkgver}_build"
+
+prepare() {
+ default_prepare
+
+ local protoc_ver
+ protoc_ver="$(protoc --version | grep -o '[0-9][.0-9]*')"
+
+ # protoc version needs to match protobuf runtime version
+ sed \
+ -e "s/com.google.protobuf:protobuf-java:3.17.3/com.google.protobuf:protobuf-java:$protoc_ver/g" \
+ -i Ghidra/Debug/Debugger-gadp/build.gradle
+ sed \
+ -e "s!lib/protobuf-java-3.17.3.jar!lib/protobuf-java-$protoc_ver.jar!g" \
+ -i Ghidra/Debug/Debugger-gadp/Module.manifest
+}
+
+build() {
+ export GRADLE_USER_HOME="$srcdir"/.gradle
+ gradle --parallel -I gradle/support/fetchDependencies.gradle init
+ gradle --parallel buildGhidra
+}
+
+package() {
+ # impedance matching between different arch naming conventions:
+ local arch
+ case "$CARCH" in
+ aarch64)
+ arch="arm_64"
+ ;;
+ *)
+ arch="$CARCH"
+ ;;
+ esac
+
+ install -d "$pkgdir"/usr/share "$pkgdir"/usr/bin
+ unzip \
+ -u "build/dist/ghidra_${pkgver}_DEV_$(date +"%Y%m%d")_linux_$arch.zip" \
+ -d "$pkgdir"/usr/share
+ mv "$pkgdir"/usr/share/ghidra_${pkgver}_DEV "$pkgdir"/usr/share/ghidra
+
+ # remove precompiled 7zip native libs for x86_64 Mac, Windows, and glibc
+ # Linux. Ghidra is falling back to using a java implementation on musl
+ # anyway.
+ rm -rf "$pkgdir"/usr/share/ghidra/Ghidra/Features/FileFormats/data/sevenzipnativelibs
+
+ install -Dm755 "$srcdir"/ghidra.sh "$pkgdir"/usr/bin/ghidra
+ ln -s /usr/share/ghidra/support/analyzeHeadless "$pkgdir"/usr/bin/ghidra-headless
+ install -Dm644 \
+ Ghidra/Framework/Gui/src/main/resources/images/GhidraIcon64.png \
+ "$pkgdir"/usr/share/icons/hicolor/64x64/apps/$pkgname.png
+ install -Dm 644 $srcdir/ghidra.desktop -t $pkgdir/usr/share/applications
+}
+
+tutorials() {
+ pkgdesc="Ghidra tutorial files"
+ # dependency dump:
+ # openjdk17-jdk
+ # wmname
+ # so:libgcc_s.so.1
+ # so:libstdc++.so.6
+ # the tutorials subpackage contains exmaples linked against glibc
+ # which are ment to be decompiled by ghidra
+ options="!strip !tracedeps"
+
+ amove usr/share/ghidra/docs/GhidraClass
+}
+
+doc() {
+ default_doc
+
+ amove usr/share/ghidra/docs
+}
+
+sha512sums="
+9c6ad91a71ea49ce90bff422f45d2ad076898d618614b7aded6dfabf8660ccf05fc6579e4f41d50e49ea6c1dc88c03260ff63210d411e405f88aa78bb2cce29b Ghidra_11.0_build.tar.gz
+f0d87188e4b90cf64f86130cb479dea640328f2f91d27f0af085fcb9262255cdc34f50b997365c2d6ca3d97b98ac62587e89f48cbd29d4ce6cca0b1b76ec39c7 use-system-protoc.patch
+b075d5ac821bf4ed052acada45b882876a5493ab03cfa4d0537c4c5f27b666aa2b37de9ff561313b025f9d16b06b9ad17d59287ecf205c02798dbca2bc04925f ghidra.sh
+a85b8b3276e2ff4ed8bda6470c15d02711ebaa48463c775cd2a36549fad738e9fe073dab80f8c57646490ffc959cdc27e9d25b1dc2a5810b0ddb249b5dc99a9b ghidra.desktop
+"
diff --git a/testing/ghidra/ghidra.desktop b/testing/ghidra/ghidra.desktop
new file mode 100644
index 00000000000..f5d46dc9f4a
--- /dev/null
+++ b/testing/ghidra/ghidra.desktop
@@ -0,0 +1,9 @@
+[Desktop Entry]
+Version=1.0
+Type=Application
+Name=Ghidra
+Comment=Software reverse engineering framework
+Exec=ghidra
+Icon=ghidra
+Categories=Utility;
+Terminal=false
diff --git a/testing/ghidra/ghidra.sh b/testing/ghidra/ghidra.sh
new file mode 100644
index 00000000000..efa7ffde842
--- /dev/null
+++ b/testing/ghidra/ghidra.sh
@@ -0,0 +1,3 @@
+#!/bin/sh
+wmname LG3D
+AWT_TOOLKIT=MToolkit exec /usr/share/ghidra/ghidraRun "$@"
diff --git a/testing/ghidra/use-system-protoc.patch b/testing/ghidra/use-system-protoc.patch
new file mode 100644
index 00000000000..8dc0809b737
--- /dev/null
+++ b/testing/ghidra/use-system-protoc.patch
@@ -0,0 +1,97 @@
+diff --git a/Ghidra/Debug/Debugger-rmi-trace/build.gradle b/Ghidra/Debug/Debugger-rmi-trace/build.gradle
+index 40fbc17ab06..17de41dc95c 100644
+--- a/Ghidra/Debug/Debugger-rmi-trace/build.gradle
++++ b/Ghidra/Debug/Debugger-rmi-trace/build.gradle
+@@ -44,12 +44,8 @@ task generateProtoPy {
+ ext.outdir = file("build/generated/source/proto/main/py")
+ outputs.dir(outdir)
+ inputs.files(src)
+- dependsOn(configurations.protocArtifact)
+ doLast {
+- def exe = configurations.protocArtifact.first()
+- if (!isCurrentWindows()) {
+- exe.setExecutable(true)
+- }
++ def exe = "protoc"
+ exec {
+ commandLine exe, "--python_out=$outdir", "-I$srcdir"
+ args src
+diff --git a/Ghidra/Debug/Framework-AsyncComm/Module.manifest b/Ghidra/Debug/Framework-AsyncComm/Module.manifest
+index 89174007c96..582747e6540 100644
+--- a/Ghidra/Debug/Framework-AsyncComm/Module.manifest
++++ b/Ghidra/Debug/Framework-AsyncComm/Module.manifest
+@@ -1 +1 @@
+-MODULE FILE LICENSE: lib/protobuf-java-3.21.8.jar BSD-3-GOOGLE
++MODULE FILE LICENSE: lib/protobuf-java-3.24.4.jar BSD-3-GOOGLE
+diff --git a/Ghidra/Debug/Framework-AsyncComm/build.gradle b/Ghidra/Debug/Framework-AsyncComm/build.gradle
+index a84e1568088..5ff4fa75eee 100644
+--- a/Ghidra/Debug/Framework-AsyncComm/build.gradle
++++ b/Ghidra/Debug/Framework-AsyncComm/build.gradle
+@@ -22,7 +22,7 @@ apply plugin: 'eclipse'
+ eclipse.project.name = 'Debug Framework-AsyncComm'
+
+ dependencies {
+- api 'com.google.protobuf:protobuf-java:3.21.8'
++ api 'com.google.protobuf:protobuf-java:3.24.4'
+ api project(':Generic')
+ api project(':Graph')
+ api project(':ProposedUtils')
+diff --git a/gradle/debugger/hasProtobuf.gradle b/gradle/debugger/hasProtobuf.gradle
+index 23b4ce74bb1..0d9194f53d1 100644
+--- a/gradle/debugger/hasProtobuf.gradle
++++ b/gradle/debugger/hasProtobuf.gradle
+@@ -17,40 +17,10 @@
+ id 'com.google.protobuf' version '0.8.10'
+ }*/
+
+-configurations {
+- allProtocArtifacts
+- protocArtifact
+-}
+-
+ def platform = getCurrentPlatformName()
+
+
+ dependencies {
+- allProtocArtifacts 'com.google.protobuf:protoc:3.21.8:windows-x86_64@exe'
+- allProtocArtifacts 'com.google.protobuf:protoc:3.21.8:linux-x86_64@exe'
+- allProtocArtifacts 'com.google.protobuf:protoc:3.21.8:linux-aarch_64@exe'
+- allProtocArtifacts 'com.google.protobuf:protoc:3.21.8:osx-x86_64@exe'
+- allProtocArtifacts 'com.google.protobuf:protoc:3.21.8:osx-aarch_64@exe'
+-
+- if (isCurrentWindows()) {
+- protocArtifact 'com.google.protobuf:protoc:3.21.8:windows-x86_64@exe'
+- }
+- if (isCurrentLinux()) {
+- if (platform.endsWith("x86_64")) {
+- protocArtifact 'com.google.protobuf:protoc:3.21.8:linux-x86_64@exe'
+- }
+- else {
+- protocArtifact 'com.google.protobuf:protoc:3.21.8:linux-aarch_64@exe'
+- }
+- }
+- if (isCurrentMac()) {
+- if (platform.endsWith("x86_64")) {
+- protocArtifact 'com.google.protobuf:protoc:3.21.8:osx-x86_64@exe'
+- }
+- else {
+- protocArtifact 'com.google.protobuf:protoc:3.21.8:osx-aarch_64@exe'
+- }
+- }
+ }
+
+ /*protobuf {
+@@ -67,12 +37,8 @@ task generateProto {
+ ext.outdir = file("build/generated/source/proto/main/java")
+ outputs.dir(outdir)
+ inputs.files(src)
+- dependsOn(configurations.protocArtifact)
+ doLast {
+- def exe = configurations.protocArtifact.first()
+- if (!isCurrentWindows()) {
+- exe.setExecutable(true)
+- }
++ def exe = "protoc"
+ exec {
+ commandLine exe, "--java_out=$outdir", "-I$srcdir"
+ args src
diff --git a/testing/ghq/APKBUILD b/testing/ghq/APKBUILD
new file mode 100644
index 00000000000..f90e63f53ca
--- /dev/null
+++ b/testing/ghq/APKBUILD
@@ -0,0 +1,46 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=ghq
+pkgver=1.5.0
+pkgrel=2
+pkgdesc="CLI to manage remote repository clones"
+url="https://github.com/x-motemen/ghq"
+arch="all"
+license="MIT"
+makedepends="asciidoctor go"
+subpackages="
+ $pkgname-doc
+ $pkgname-bash-completion
+ $pkgname-zsh-completion
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/x-motemen/ghq/archive/refs/tags/v$pkgver.tar.gz"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ go build -v -ldflags "-X main.revision=AlpineLinux"
+
+ sed -i '1 s/^.*$/= ghq(1)/' README.adoc
+ asciidoctor -b manpage README.adoc
+}
+
+check() {
+ go test ./...
+}
+
+package() {
+ install -Dm755 ghq -t "$pkgdir"/usr/bin/
+
+ install -Dvm644 ghq.1 -t "$pkgdir"/usr/share/man/man1/
+ install -Dvm644 LICENSE -t "$pkgdir"/usr/share/licenses/$pkgname/
+
+ install -Dm644 misc/bash/_ghq \
+ "$pkgdir"/usr/share/bash-completion/completions/ghq
+ install -Dm644 misc/zsh/_ghq \
+ "$pkgdir"/usr/share/zsh/site-functions/_ghq
+}
+
+sha512sums="
+b626b86bbad033252902c2f6978d767e33d51e5f5643c39daea930b65b253824ff9b777688d36bc178117bcbe40de6d2d9f3322f38ed1d195d2eacf5e15ec625 ghq-1.5.0.tar.gz
+"
diff --git a/testing/ginac/APKBUILD b/testing/ginac/APKBUILD
index d1d14dd8111..ccbec4f223e 100644
--- a/testing/ginac/APKBUILD
+++ b/testing/ginac/APKBUILD
@@ -1,12 +1,12 @@
# Contributor: Alex Yam <alex@alexyam.com>
# Maintainer: Alex Yam <alex@alexyam.com>
pkgname=ginac
-pkgver=1.8.3
-pkgrel=0
+pkgver=1.8.7
+pkgrel=1
pkgdesc="C++ library for symbolic computations"
url="https://www.ginac.de/"
-arch="all !armv7 !armhf" # no cln
-license="GPL"
+arch="all"
+license="GPL-2.0-or-later"
makedepends="cmake cln-dev flex bison readline-dev python3 texinfo samurai"
subpackages="$pkgname-dev $pkgname-doc"
source="https://www.ginac.de/ginac-$pkgver.tar.bz2"
@@ -16,16 +16,18 @@ case "$CARCH" in
esac
build() {
- cmake -B build -G Ninja \
+ CXXFLAGS="$CXXFLAGS -O2 -flto=auto" \
+ CFLAGS="$CFLAGS -O2 -flto=auto" \
+ cmake -B build -G Ninja -Wno-dev \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_PREFIX_PATH=/usr \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib
- cmake --build build
+ cmake --build build --target all test_suite
}
check() {
- cmake --build build --target check
+ ctest --test-dir build --output-on-failure -j${JOBS:-2}
}
package() {
@@ -33,5 +35,5 @@ package() {
}
sha512sums="
-05f60293e9be1f52bbd1e5bddac023c7d733b720736dc4a0ff0ce0463309146d1a6124bee426b1bed83e2634ed3208660108cc002eddd64c78da0449d8da2917 ginac-1.8.3.tar.bz2
+29a5dbe1fa8a40668a32eb0065d1f676b074222d76ed70a05c5841a4be92c4b1a019ae3fc820e1c7007e641ef8ef94d00adab901f89673df0d372a4c8af8e51a ginac-1.8.7.tar.bz2
"
diff --git a/testing/ginger/APKBUILD b/testing/ginger/APKBUILD
index b884ced4105..f44183745e6 100644
--- a/testing/ginger/APKBUILD
+++ b/testing/ginger/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=ginger
pkgver=2.4.0
-pkgrel=4
+pkgrel=7
pkgdesc="WoK plugin for host management"
url="https://kimchi-project.github.io/ginger"
arch="noarch !s390x !riscv64" # blocked by wok
@@ -11,7 +11,7 @@ depends="py3-configobj py3-pyparted wok"
makedepends="automake autoconf libtool
python3-dev gettext-dev py3-pyflakes libxslt"
options="!check" # depends on unit2
-subpackages="$pkgname-lang"
+subpackages="$pkgname-lang $pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/kimchi-project/ginger/archive/$pkgver.tar.gz"
prepare() {
diff --git a/testing/gingerbase/APKBUILD b/testing/gingerbase/APKBUILD
index 9ca087ef210..7252fb20d73 100644
--- a/testing/gingerbase/APKBUILD
+++ b/testing/gingerbase/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=gingerbase
pkgver=2.3.0
-pkgrel=4
+pkgrel=7
pkgdesc="Gingerbase: basic host management for WoK"
url="https://kimchi-project.github.io/gingerbase/"
arch="noarch !s390x !riscv64" # blocked by wok
@@ -11,7 +11,7 @@ depends="py3-configobj py3-pyparted wok"
makedepends="automake autoconf libtool
python3-dev gettext-dev py3-pyflakes libxslt"
options="!check" # depends on unit2
-subpackages="$pkgname-lang"
+subpackages="$pkgname-lang $pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/kimchi-project/gingerbase/archive/$pkgver.tar.gz"
prepare() {
diff --git a/testing/git-bug/APKBUILD b/testing/git-bug/APKBUILD
index 8b83f4f0c5b..5509907b472 100644
--- a/testing/git-bug/APKBUILD
+++ b/testing/git-bug/APKBUILD
@@ -1,37 +1,67 @@
# Contributor: Thomas Kienlen <kommander@laposte.net>
# Maintainer: Thomas Kienlen <kommander@laposte.net>
pkgname=git-bug
-pkgver=0.7.2
-pkgrel=2
+pkgver=0.8.0
+pkgrel=11
pkgdesc="Distributed, offline-first bug tracker embedded in git, with bridges"
url="https://github.com/MichaelMure/git-bug"
arch="all"
license="GPL-3.0-or-later"
-makedepends="go"
+makedepends="
+ go
+ npm
+ "
+subpackages="
+ $pkgname-doc
+ $pkgname-bash-completion
+ $pkgname-zsh-completion
+ $pkgname-fish-completion
+ "
source="
git-bug-$pkgver.tar.gz::https://github.com/MichaelMure/git-bug/archive/v$pkgver.tar.gz
+ fix-tests.patch
Makefile.patch
"
+options="net"
export GIT_COMMIT=v$pkgver
export GIT_LAST_TAG=v$pkgver
export GIT_EXACT_TAG=v$pkgver
export GOFLAGS="$GOFLAGS -modcacherw"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+prepare() {
+ default_prepare
+
+ npm ci --prefix webui
+}
build() {
+ make pack-webui
make
}
check() {
make test
+ cd webui
+ make test
}
package() {
install -Dm755 git-bug "$pkgdir"/usr/bin/git-bug
+
+ install -Dm 644 misc/completion/bash/git-bug "$pkgdir"/usr/share/bash-completion/completions/git-bug
+ install -Dm 644 misc/completion/fish/git-bug "$pkgdir"/usr/share/fish/vendor_completions.d/git-bug.fish
+ install -Dm 644 misc/completion/zsh/git-bug "$pkgdir"/usr/share/zsh/site-functions/_git-bug
+
+ install -Dm 644 doc/man/*.1 -t "$pkgdir"/usr/share/man/man1
}
sha512sums="
-85dac95e09dc0946afafc8bcec303b1bcaac36081bb8c8057e767c57a488496c2e6971b7fcf257903a6021da54f946a7475a72e999e142645f29f7e228570ab2 git-bug-0.7.2.tar.gz
+85456c916f72c0d2764ccd09418d2db91a9aeed48182de12d6aaec7cd021c55ec323822e4aa9347739cfe232ff2287e1bc7adca37ff2574d822b78fc75121d83 git-bug-0.8.0.tar.gz
+54788f03849ea4022e942355024458008590f8b08c5d5e5a4b1255a461e4b3cce7242d97c948b6411613a3d6cd8b576ca58a49858a00206a91f6f83ca76f32fc fix-tests.patch
fed7c606b146976cf2c3fc4c2849ae81e8f1dd17505863dcf5dcbafd4715a96d3a1984124e27c70b6a6aaf09f22a5b957fdfde7725132c8b775bdf5a6bce0a24 Makefile.patch
"
diff --git a/testing/git-bug/fix-tests.patch b/testing/git-bug/fix-tests.patch
new file mode 100644
index 00000000000..515bdcfb538
--- /dev/null
+++ b/testing/git-bug/fix-tests.patch
@@ -0,0 +1,40 @@
+See:
+
+* https://github.com/MichaelMure/git-bug/issues/926
+* https://github.com/MichaelMure/git-bug/pull/984
+
+diff --git a/commands/add_test.go b/commands/add_test.go
+index 077995a6..d603e79a 100644
+--- a/commands/add_test.go
++++ b/commands/add_test.go
+@@ -4,12 +4,29 @@ import (
+ "strings"
+ "testing"
+
++ "github.com/fatih/color"
+ "github.com/stretchr/testify/require"
+ )
+
+ func newTestEnvAndBug(t *testing.T) (*testEnv, string) {
+ t.Helper()
+
++ // The Go testing framework either uses os.Stdout directly or a buffer
++ // depending on how the command is initially launched. This results
++ // in os.Stdout.Fd() sometimes being a Terminal, and other times not
++ // being a Terminal which determines whether the ANSI library sends
++ // escape sequences to colorize the text.
++ //
++ // The line below disables all colorization during testing so that the
++ // git-bug command output is consistent in all test scenarios.
++ //
++ // See:
++ // - https://github.com/MichaelMure/git-bug/issues/926
++ // - https://github.com/golang/go/issues/57671
++ // - https://github.com/golang/go/blob/f721fa3be9bb52524f97b409606f9423437535e8/src/cmd/go/internal/test/test.go#L1180-L1208
++ // - https://github.com/golang/go/issues/34877
++ color.NoColor = true
++
+ testEnv, _ := newTestEnvAndUser(t)
+ opts := addOptions{
+ title: "this is a bug title",
+
diff --git a/testing/git-cola/APKBUILD b/testing/git-cola/APKBUILD
index 9197677bd67..818a9245240 100644
--- a/testing/git-cola/APKBUILD
+++ b/testing/git-cola/APKBUILD
@@ -1,31 +1,36 @@
# Contributor: Kiyoshi Aman <kiyoshi.aman@gmail.com>
# Maintainer:
pkgname=git-cola
-pkgver=3.10.1
+pkgver=4.4.1
pkgrel=1
-pkgdesc="GUI application for git built on Python & Qt5"
+pkgdesc="GUI application for git built on Python & Qt"
url="https://git-cola.github.io"
-arch="noarch !armhf" # qtdeclarative
+arch="noarch !armhf !riscv64" # py3-qt6
license="GPL-2.0-or-later"
-depends="python3 py3-qt5"
-checkdepends="py3-nose"
-makedepends="py3-setuptools"
-subpackages="$pkgname-doc"
+depends="python3 py3-qt6 py3-qtpy"
+makedepends="py3-setuptools py3-setuptools_scm py3-gpep517 py3-installer py3-wheel"
+checkdepends="py3-pytest"
+subpackages="$pkgname-doc $pkgname-pyc"
source="git-cola-$pkgver.tar.gz::https://github.com/git-cola/git-cola/archive/v$pkgver.tar.gz"
# testsuite hangs after a while.
options="!check"
build() {
- make PYTHON=python3
+ export SETUPTOOLS_SCM_PRETEND_VERSION=$pkgver
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 1
}
+
check() {
- make PYTHON=python3 test
+ pytest
}
package() {
- make PYTHON=python3 prefix=/usr DESTDIR="$pkgdir" install
+ python3 -m installer -d "$pkgdir" \
+ .dist/git_cola*.whl
}
sha512sums="
-79496023bfaa05049079eec2cdaf8449a6598faebedb4a13acf178209edc63e725eb1b003700a1dcfee09072d34e5a49d7053f070e45b498562cc124cd0582d4 git-cola-3.10.1.tar.gz
+3e4e1cb8cd148b34e663c72c6b3d1e887815b5a86558ffbf13a19a5dfd3fb6b37c123290dc514b6f098893587dc67ca34424aaad5482768795e353f0efe92797 git-cola-4.4.1.tar.gz
"
diff --git a/testing/git-extras/APKBUILD b/testing/git-extras/APKBUILD
index 53fe55dac9c..0810196e54b 100644
--- a/testing/git-extras/APKBUILD
+++ b/testing/git-extras/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=git-extras
-pkgver=6.3.0
+pkgver=7.1.0
pkgrel=0
pkgdesc="Little git extras"
url="https://github.com/tj/git-extras"
@@ -16,7 +16,7 @@ package() {
GIT_CONFIG=/dev/null \
make install DESTDIR="$pkgdir" PREFIX=/usr SYSCONFDIR=/etc install
- rm -Rf "$pkgdir"/etc/bash_completion.d
+ rm -Rf "$pkgdir"/etc/bash-completion
install -D -m644 etc/bash_completion.sh \
"$pkgdir"/usr/share/bash-completion/completions/$pkgname
@@ -29,5 +29,5 @@ package() {
}
sha512sums="
-2be0a6f3f3907754638ffd975b0b28908e8c9490418fa170f47a73a2cdc9d0b8fd5d11e4734440ffe3114cd63aa7decf8b1cafc78a63d2794d06f7fcd2925ead git-extras-6.3.0.tar.gz
+955161b40c48ab92578efe487db78ea8d0fff499aaf8d4da2b13e8194a7f9297a84542c8642dd3a7c61c9a4d1e92342b5c586d341e4a003c9838d5e9731127b9 git-extras-7.1.0.tar.gz
"
diff --git a/testing/git-filter-repo/10-no-version-test.patch b/testing/git-filter-repo/10-no-version-test.patch
new file mode 100644
index 00000000000..234ba6faae8
--- /dev/null
+++ b/testing/git-filter-repo/10-no-version-test.patch
@@ -0,0 +1,17 @@
+Link: https://github.com/newren/git-filter-repo/issues/513
+
+--- a/t/t9390-filter-repo.sh
++++ b/t/t9390-filter-repo.sh
+@@ -1800,12 +1800,6 @@
+ )
+ '
+
+-test_expect_success '--version' '
+- git filter-repo --version >actual &&
+- git hash-object ../../git-filter-repo | cut -c 1-12 >expect &&
+- test_cmp expect actual
+-'
+-
+ test_expect_success 'empty author ident' '
+ test_create_repo empty_author_ident &&
+ (
diff --git a/testing/git-filter-repo/20-git-filter-repo.patch b/testing/git-filter-repo/20-git-filter-repo.patch
new file mode 100644
index 00000000000..fe9dfa70dcf
--- /dev/null
+++ b/testing/git-filter-repo/20-git-filter-repo.patch
@@ -0,0 +1,17 @@
+--- a/git-filter-repo
++++ b/git-filter-repo
+@@ -1,4 +1,4 @@
+-#!/usr/bin/env python3
++#!/usr/bin/python3
+
+ """
+ git-filter-repo filters git repositories, similar to git filter-branch, BFG
+@@ -64,7 +64,7 @@
+
+ def setup_gettext():
+ TEXTDOMAIN="git-filter-repo"
+- podir = os.environ.get("GIT_TEXTDOMAINDIR") or "@@LOCALEDIR@@"
++ podir = os.environ.get("GIT_TEXTDOMAINDIR") or "/usr/share/locale"
+ if not os.path.isdir(podir): # pragma: no cover
+ podir = None # Python has its own fallback; use that
+
diff --git a/testing/git-filter-repo/APKBUILD b/testing/git-filter-repo/APKBUILD
new file mode 100644
index 00000000000..0bfe8937a25
--- /dev/null
+++ b/testing/git-filter-repo/APKBUILD
@@ -0,0 +1,35 @@
+# Contributor: Lennart Jablonka <humm@ljabl.com>
+# Maintainer: Lennart Jablonka <humm@ljabl.com>
+pkgname=git-filter-repo
+pkgver=2.38.0
+pkgrel=0
+pkgdesc="quickly rewrite git repository history"
+url="https://github.com/newren/git-filter-repo"
+arch="noarch"
+license="MIT"
+source="
+ 10-no-version-test.patch
+ 20-git-filter-repo.patch
+ https://github.com/newren/git-filter-repo/releases/download/v$pkgver/git-filter-repo-$pkgver.tar.xz
+"
+depends="python3 git"
+checkdepends="bash perl rsync"
+subpackages="$pkgname-doc"
+
+check() {
+ ./t/run_tests
+}
+
+package() {
+ install -Dm755 git-filter-repo "$pkgdir"/usr/bin/git-filter-repo
+ local site=$(python3 -c 'import site; print(site.getsitepackages()[0])')
+ mkdir -p "$pkgdir$site"
+ ln -s -f /usr/bin/git-filter-repo "$pkgdir$site"/git_filter_repo.py
+ install -Dm644 Documentation/man1/git-filter-repo.1 "$pkgdir"/usr/share/man/man1/git-filter-repo.1
+}
+
+sha512sums="
+4dafe4458d2f7416d80269c38318f43eda1c389d9abbbdf9f7d4e8762917d774de119cd8792c192ee8e033e5381857450330ecd3320d87e5fc94423859642863 10-no-version-test.patch
+6591ce9c93efbb1f534784daf2867cf03da43aeda70e25861f26cf31bd638cc3ecccacae14462917749ad0eabcfec386d800ad08558c980d1c6263b84ebd015f 20-git-filter-repo.patch
+786c27c1952a5e3625c924e71958cfd61d9065d32754a3e957f258767ccb5b147778c5d499eb82c7c1bf36a2f5a50b1cde372ebbc927aeeedbd713e5ab6563d8 git-filter-repo-2.38.0.tar.xz
+"
diff --git a/testing/git-revise/APKBUILD b/testing/git-revise/APKBUILD
new file mode 100644
index 00000000000..2386c957d86
--- /dev/null
+++ b/testing/git-revise/APKBUILD
@@ -0,0 +1,26 @@
+# Maintainer:
+pkgname=git-revise
+pkgver=0.7.0
+pkgrel=4
+pkgdesc="Handy tool for doing efficient in-memory commit rebases & fixups with git"
+url="https://github.com/mystor/git-revise"
+arch="noarch"
+license="MIT"
+depends="python3 git"
+makedepends="py3-setuptools"
+checkdepends="py3-pytest py3-pytest-xdist py3-tox"
+subpackages="$pkgname-doc $pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/mystor/git-revise/archive/refs/tags/v$pkgver.tar.gz"
+options="!check" # tests fail to import self when not system installed
+
+build() {
+ python3 setup.py build
+}
+
+package() {
+ python3 setup.py install --skip-build --root="$pkgdir"
+}
+
+sha512sums="
+2c61df0854b20319286aa6bf663b3a1a1bcddb4b8aa144ce7850fe5a32a26ad861898d00b423a7fe7ace60b7964149470ad2c144eed2b3e1119df0c34acbe04d git-revise-0.7.0.tar.gz
+"
diff --git a/testing/git-secret/APKBUILD b/testing/git-secret/APKBUILD
index b6ec68fabed..8b9ac61e626 100644
--- a/testing/git-secret/APKBUILD
+++ b/testing/git-secret/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=git-secret
-pkgver=0.4.0
+pkgver=0.5.0
pkgrel=0
pkgdesc="A bash-tool to store your private data inside a git repository"
url="https://git-secret.io/"
@@ -26,5 +26,5 @@ package() {
}
sha512sums="
-d38d923bb761730979353869cd932db19b854120ea3ab4c415c8a08f55f4e42e07b76270117d5cad412a7c54dfdd2dc50694b5e41abf654ae07fea00775eee12 git-secret-0.4.0.tar.gz
+c685ee4d7b7d247c37805fc3a16c431eff7f6740899d65f9178514b99e84ff83cb59330e6fb73da627f00bb60d0cca76da8b31004fcc3926dcee3fed15d65b85 git-secret-0.5.0.tar.gz
"
diff --git a/testing/git-warp-time/APKBUILD b/testing/git-warp-time/APKBUILD
deleted file mode 100644
index 986113da133..00000000000
--- a/testing/git-warp-time/APKBUILD
+++ /dev/null
@@ -1,42 +0,0 @@
-# Contributor: Michał Polański <michal@polanski.me>
-# Maintainer: Michał Polański <michal@polanski.me>
-pkgname=git-warp-time
-pkgver=0.4.5
-pkgrel=0
-pkgdesc="Reset timestamps of Git repository files to the time of the last modifying commit"
-url="https://github.com/alerque/git-warp-time"
-license="GPL-3.0-only"
-arch="all !s390x !riscv64" # blocked by rust/cargo
-makedepends="cargo"
-subpackages="$pkgname-bash-completion $pkgname-fish-completion $pkgname-zsh-completion"
-source="https://github.com/alerque/git-warp-time/archive/v$pkgver/git-warp-time-$pkgver.tar.gz"
-
-prepare() {
- default_prepare
-
- cargo fetch --locked
-}
-
-build() {
- cargo build --frozen --release
-}
-
-check() {
- cargo test --frozen
-}
-
-package() {
- install -Dm755 target/release/git-warp-time "$pkgdir"/usr/bin/git-warp-time
-
- # shell completions
- find target/release -name $pkgname.bash \
- -exec install -Dm644 {} "$pkgdir"/usr/share/bash-completion/completions/$pkgname \;
- find target/release -name $pkgname.fish \
- -exec install -Dm644 {} "$pkgdir"/usr/share/fish/completions/$pkgname.fish \;
- find target/release -name _$pkgname \
- -exec install -Dm644 {} "$pkgdir"/usr/share/zsh/site-functions/_$pkgname \;
-}
-
-sha512sums="
-609acee135f7c244369c31c3b802fc96c91375c222e194377ec8fab3afe6ea66300f8dff867a9481042fa38bfd8dea1051a70f4032a42f6e98924777215ee4dc git-warp-time-0.4.5.tar.gz
-"
diff --git a/testing/git2json/APKBUILD b/testing/git2json/APKBUILD
index 260d6b742eb..a4bf4131111 100644
--- a/testing/git2json/APKBUILD
+++ b/testing/git2json/APKBUILD
@@ -1,23 +1,28 @@
# Contributor: Fabian Affolter <fabian@affolter-engineering.ch>
-# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=git2json
pkgver=0.2.3
-pkgrel=4
+pkgrel=8
pkgdesc="Convert git logs to JSON for easier analysis"
url="https://github.com/tarmstrong/git2json"
arch="noarch"
license="BSD-3-Clause"
-depends="python3"
-makedepends="py3-setuptools"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/g/git2json/git2json-$pkgver.tar.gz"
-
+options="!check" # no tests included
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
-sha512sums="3bac219c79b25a4e0e41c250214131911a7e207c1908a81316eab546df538e03dda2446f8c74a337f502deacf61c61cc76062f85f2313d29d3b6c5059447582d git2json-0.2.3.tar.gz"
+sha512sums="
+3bac219c79b25a4e0e41c250214131911a7e207c1908a81316eab546df538e03dda2446f8c74a337f502deacf61c61cc76062f85f2313d29d3b6c5059447582d git2json-0.2.3.tar.gz
+"
diff --git a/testing/gitoxide/APKBUILD b/testing/gitoxide/APKBUILD
new file mode 100644
index 00000000000..32eb8bd4b76
--- /dev/null
+++ b/testing/gitoxide/APKBUILD
@@ -0,0 +1,74 @@
+# Contributor: Jakub Jirutka <jakub@jirutka.cz>
+# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
+pkgname=gitoxide
+pkgver=0.14.0
+pkgrel=1
+pkgdesc="An idiomatic, lean, fast & safe pure Rust implementation of Git"
+url="https://github.com/Byron/gitoxide"
+# armhf, armv7, ppc64le, s390x: fails to build crate sha1-asm
+# riscv64: zlib-ng-dev is not available yet
+arch="all !armhf !armv7 !ppc64le !riscv64 !s390x"
+license="Apache-2.0 OR MIT"
+makedepends="
+ cargo
+ cargo-auditable
+ curl-dev
+ zlib-dev
+ zlib-ng-dev
+ "
+checkdepends="
+ bash
+ git-daemon
+ xz-dev
+ "
+source="https://github.com/Byron/gitoxide/archive/v$pkgver/gitoxide-$pkgver.tar.gz
+ system-curl.patch
+ zlib-ng.patch
+ skip-online-tests.patch
+ "
+
+options="!check" # tests need update to new version
+
+# unwind is required to assure that destructors are called, important for
+# tempfiles (comment from Cargo.toml).
+export CARGO_PROFILE_RELEASE_PANIC="unwind"
+
+_cargo_opts="--frozen --no-default-features --features lean"
+
+
+prepare() {
+ default_prepare
+
+ # Rust target triple.
+ local target=$(rustc -vV | sed -n 's/host: //p')
+
+ # Build against system-provided libz-ng.
+ mkdir -p .cargo
+ cat >> .cargo/config.toml <<-EOF
+ [target.$target]
+ z-ng = { rustc-link-lib = ["z-ng"], rustc-cfg = ["zng"] }
+ EOF
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build $_cargo_opts --release
+}
+
+check() {
+ # CI - skip tests that require TTY.
+ CI=1 make journey-tests
+}
+
+package() {
+ install -D -m755 target/release/gix -t "$pkgdir"/usr/bin/
+ install -D -m755 target/release/ein -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+2bd4c20a71ef3f37e37ef54d271fa5df9f43b7b396923e581ce1ae5f9b87969eabdc300267f365aeb5c06f83f2ccc68e2f709bee006ee54a6e65774f93979642 gitoxide-0.14.0.tar.gz
+e512f0b9904b57b181a5d203ffbed85bd2aed6db44b255bc7e370ec6ef94d0d6dbe8f62b334e8d7b980728cc10f7a3fd694487a73031e8a953604d2e2f1d9192 system-curl.patch
+ad2b931dfcecbf099d3b6c1abc4e9522016f60486b20f23a73bac55fe3061aa97236e877c53a1b1709495885e5f820a721c9d1a86dd99d72e09e21758135b50e zlib-ng.patch
+eabb202211c28ed6209522f39b6ae32e0f51c9ed71943c41a18550f236064f676b1b88d6ff0baa5490c7e76bea43ba06f04653824a6af50355d4eb6cfc92cf9e skip-online-tests.patch
+"
diff --git a/testing/gitoxide/skip-online-tests.patch b/testing/gitoxide/skip-online-tests.patch
new file mode 100644
index 00000000000..e064ae63336
--- /dev/null
+++ b/testing/gitoxide/skip-online-tests.patch
@@ -0,0 +1,20 @@
+--- a/tests/journey/gix.sh
++++ b/tests/journey/gix.sh
+@@ -205,7 +205,7 @@
+ )
+ )
+ )
+- (on_ci
++ (CI= on_ci
+ if test "$kind" = "max"; then
+ (with "https:// protocol"
+ (with "version 1"
+@@ -584,7 +584,7 @@
+ }
+ )
+ fi
+- (on_ci
++ (CI= on_ci
+ if [[ "$kind" = "max" ]]; then
+ (with "https:// protocol"
+ (with "version 1"
diff --git a/testing/gitoxide/system-curl.patch b/testing/gitoxide/system-curl.patch
new file mode 100644
index 00000000000..400e7f14f80
--- /dev/null
+++ b/testing/gitoxide/system-curl.patch
@@ -0,0 +1,27 @@
+--- a/git-transport/Cargo.toml
++++ b/git-transport/Cargo.toml
+@@ -70 +70 @@
+-curl = { version = "0.4", optional = true, features = ["static-curl", "static-ssl", "zlib-ng-compat"] }
++curl = { version = "0.4", optional = true }
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -2230,13 +2230,4 @@
+
+ [[package]]
+-name = "openssl-src"
+-version = "111.22.0+1.1.1q"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "8f31f0d509d1c1ae9cada2f9539ff8f37933831fd5098879e482aa687d659853"
+-dependencies = [
+- "cc",
+-]
+-
+-[[package]]
+ name = "openssl-sys"
+ version = "0.9.74"
+@@ -2247,5 +2238,4 @@
+ "cc",
+ "libc",
+- "openssl-src",
+ "pkg-config",
+ "vcpkg",
diff --git a/testing/gitoxide/zlib-ng.patch b/testing/gitoxide/zlib-ng.patch
new file mode 100644
index 00000000000..b1570e11879
--- /dev/null
+++ b/testing/gitoxide/zlib-ng.patch
@@ -0,0 +1,52 @@
+From: Jakub Jirutka <jakub@jirutka.cz>
+Date: Sat, 20 Aug 2022 00:09:00 +0200
+Subject: [PATCH] Build with native zlib-ng (no compat)
+
+Use zlib-ng (libz-ng-sys) with native API (no compat mode) that can
+co-exist with system libz (loaded by e.g. libcurl).
+
+--- a/git-features/Cargo.toml
++++ b/git-features/Cargo.toml
+@@ -46,2 +46,4 @@
+ zlib-rust-backend = ["flate2/rust_backend"]
++## Use zlib-ng (libz-ng-sys) with native API (no compat mode) that can co-exist with system libz.
++zlib-ng = ["flate2/zlib-ng"]
+
+--- a/git-repository/Cargo.toml
++++ b/git-repository/Cargo.toml
+@@ -66,3 +66,2 @@
+ "git-features/parallel",
+- "git-features/zlib-ng-compat",
+ "git-pack/pack-cache-lru-static",
+--- a/Cargo.toml
++++ b/Cargo.toml
+@@ -33 +33 @@
+-fast = ["git-features/parallel", "git-features/fast-sha1", "git-features/zlib-ng-compat", "git-repository/max-performance"]
++fast = ["git-features/parallel", "git-features/fast-sha1", "git-features/zlib-ng", "git-repository/max-performance"]
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -911,6 +911,7 @@
+ checksum = "f82b0f4c27ad9f8bfd1f3208d882da2b09c301bc1c828fd3a00d0216d2fbbff6"
+ dependencies = [
+ "crc32fast",
++ "libz-ng-sys",
+ "libz-sys",
+ "miniz_oxide",
+ ]
+@@ -2005,6 +2006,16 @@
+ "openssl-sys",
+ "pkg-config",
+ "vcpkg",
++]
++
++[[package]]
++name = "libz-ng-sys"
++version = "1.1.8"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "4399ae96a9966bf581e726de86969f803a81b7ce795fcd5480e640589457e0f2"
++dependencies = [
++ "cmake",
++ "libc",
+ ]
+
+ [[package]]
diff --git a/testing/glacier-browser/APKBUILD b/testing/glacier-browser/APKBUILD
deleted file mode 100644
index 25ab53f60bf..00000000000
--- a/testing/glacier-browser/APKBUILD
+++ /dev/null
@@ -1,40 +0,0 @@
-# Contributor: Bart Ribbers <bribbers@disroot.org>
-# Maintainer: Bart Ribbers <bribbers@disroot.org>
-pkgname=glacier-browser
-pkgver=0.1.1
-pkgrel=0
-pkgdesc="The Glacier browser"
-url="https://github.com/nemomobile-ux/glacier-browser"
-# armhf blocked by qt5-qtdeclarative
-# s390x, ppc64le and riscv64 blocked by qt5-qtwebengine-dev
-arch="all !armhf !s390x !ppc64le !riscv64"
-license="GPL-2.0-only"
-depends="
- qt5-qtbase-sqlite
- qtquickcontrols-nemo
- "
-makedepends="
- cmake
- libglacierapp-dev
- qt5-qtbase-dev
- qt5-qtdeclarative-dev
- qt5-qttools-dev
- qt5-qtwebengine-dev
- "
-source="https://github.com/nemomobile-ux/glacier-browser/archive/$pkgver/glacier-browser-$pkgver.tar.gz"
-
-build() {
- cmake -B build \
- -DCMAKE_BUILD_TYPE=None \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-
-sha512sums="
-d4ee59f7f21cbfb4279bfdef2aa244898d669b476f63ad9e34665a4384347125c8069768f564071ae621995aa1bd8536db79c582203dfa93b7a65aac890f20f5 glacier-browser-0.1.1.tar.gz
-"
diff --git a/testing/glfw-wayland/APKBUILD b/testing/glfw-wayland/APKBUILD
index f819eca5636..d9717e7a25a 100644
--- a/testing/glfw-wayland/APKBUILD
+++ b/testing/glfw-wayland/APKBUILD
@@ -1,18 +1,27 @@
# Contributor: Leo <thinkabit.ukim@gmail.com>
# Maintainer: rfaa <rfaa@rfaa.se>
pkgname=glfw-wayland
-pkgver=3.3.7
-pkgrel=0
+pkgver=3.3.8
+pkgrel=3
pkgdesc="Multi-platform library for OpenGL and Vulkan application development (Wayland)"
options="!check" # tests requires a working wayland session
url="https://www.glfw.org/"
arch="all !armhf" # Limited by extra-cmake-modules
license="Zlib"
-depends_dev="linux-headers mesa-dev extra-cmake-modules wayland-dev wayland-protocols
- libxkbcommon-dev"
+depends_dev="
+ extra-cmake-modules
+ libxkbcommon-dev
+ linux-headers
+ mesa-dev
+ wayland-dev
+ wayland-protocols
+ "
makedepends="$depends_dev cmake samurai"
-subpackages="$pkgname-dev"
-source="https://github.com/glfw/glfw/releases/download/$pkgver/glfw-$pkgver.zip"
+subpackages="$pkgname-dbg $pkgname-dev"
+source="https://github.com/glfw/glfw/releases/download/$pkgver/glfw-$pkgver.zip
+ request-order.patch
+ silence-gigaspam.patch
+ "
builddir="$srcdir/glfw-$pkgver"
provides="glfw=$pkgver-r$pkgrel"
@@ -36,13 +45,8 @@ package() {
DESTDIR="$pkgdir" cmake --install build
}
-dev() {
- provides="glfw-dev=$pkgver-r$pkgrel"
- replaces="glfw-dev"
-
- default_dev
-}
-
sha512sums="
-e4865731caf7c19de3ee79d066233373e188239bedb65afb70a47f243d4c051fa0cee859dcc704a71d595b8318b6e18b995bf95573b6026329aa5ee204e158a8 glfw-3.3.7.zip
+62baab460f22724ed2c63cf71475377f19c0cd086f4e64d46bdd4c8c38035917c7f66c71d27837ba5159ca323a900a6cfa2693e8b06091e73be838a509b278a1 glfw-3.3.8.zip
+326a44497b10b9e9aff3e0bf9e350f63d1a84a8a098fa1c50d1571012a48050546e6b14fa0af9a8bb8ec93be5c5e219f8b88676e5e3f9ea67b5466c48b474a04 request-order.patch
+297b7a444748ba496640553a5aec320a23e7e27e076e2c566801c745631c3cb5d8453c9f28010cd088798f78b2c98867c436627fb776666c04745761edb72b38 silence-gigaspam.patch
"
diff --git a/testing/glfw-wayland/request-order.patch b/testing/glfw-wayland/request-order.patch
new file mode 100644
index 00000000000..4bb04c8cc5a
--- /dev/null
+++ b/testing/glfw-wayland/request-order.patch
@@ -0,0 +1,49 @@
+Patch-Source: https://github.com/glfw/glfw/pull/2348
+--
+From c4d510cf34aec044eeb912054b8892d325d64c6d Mon Sep 17 00:00:00 2001
+From: lo-v-ol <gh@oleg.uk>
+Date: Mon, 5 Jun 2023 08:56:15 +0100
+Subject: [PATCH] EGL: make a request for client version before no_error
+
+mesa egl requires major version >= 2 for GL_CONTEXT_OPENGL_NO_ERROR_KHR,
+so fulfill the request to set client version beforehand.
+
+without this, a few pieces of software in the wild get
+
+ libEGL debug: bad context attribute 0x31b3
+ libEGL debug: EGL user error 0x3004 (EGL_BAD_ATTRIBUTE) in eglCreateContext
+
+when running glfw under wayland.
+---
+ src/egl_context.c | 12 ++++++------
+ 1 file changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/src/egl_context.c b/src/egl_context.c
+index 58d9557..5c662cb 100644
+--- a/src/egl_context.c
++++ b/src/egl_context.c
+@@ -546,18 +546,18 @@ GLFWbool _glfwCreateContextEGL(_GLFWwindow* window,
+ flags |= EGL_CONTEXT_OPENGL_ROBUST_ACCESS_BIT_KHR;
+ }
+
+- if (ctxconfig->noerror)
+- {
+- if (_glfw.egl.KHR_create_context_no_error)
+- setAttrib(EGL_CONTEXT_OPENGL_NO_ERROR_KHR, GLFW_TRUE);
+- }
+-
+ if (ctxconfig->major != 1 || ctxconfig->minor != 0)
+ {
+ setAttrib(EGL_CONTEXT_MAJOR_VERSION_KHR, ctxconfig->major);
+ setAttrib(EGL_CONTEXT_MINOR_VERSION_KHR, ctxconfig->minor);
+ }
+
++ if (ctxconfig->noerror)
++ {
++ if (_glfw.egl.KHR_create_context_no_error)
++ setAttrib(EGL_CONTEXT_OPENGL_NO_ERROR_KHR, GLFW_TRUE);
++ }
++
+ if (mask)
+ setAttrib(EGL_CONTEXT_OPENGL_PROFILE_MASK_KHR, mask);
+
diff --git a/testing/glfw-wayland/silence-gigaspam.patch b/testing/glfw-wayland/silence-gigaspam.patch
new file mode 100644
index 00000000000..e8a47e8c85b
--- /dev/null
+++ b/testing/glfw-wayland/silence-gigaspam.patch
@@ -0,0 +1,28 @@
+this prints a log line for every single client call..
+for applications that call this, it ends up calling this a hundred times a second and printing the same log line
+--
+diff --git a/src/wl_window.c b/src/wl_window.c
+index 53cbd33..cb2a2fb 100644
+--- a/src/wl_window.c
++++ b/src/wl_window.c
+@@ -1959,16 +1959,16 @@ void _glfwPlatformGetWindowPos(_GLFWwindow* window, int* xpos, int* ypos)
+ // A Wayland client is not aware of its position, so just warn and leave it
+ // as (0, 0)
+
+- _glfwInputError(GLFW_PLATFORM_ERROR,
+- "Wayland: Window position retrieval not supported");
++ //_glfwInputError(GLFW_PLATFORM_ERROR,
++ // "Wayland: Window position retrieval not supported");
+ }
+
+ void _glfwPlatformSetWindowPos(_GLFWwindow* window, int xpos, int ypos)
+ {
+ // A Wayland client can not set its position, so just warn
+
+- _glfwInputError(GLFW_PLATFORM_ERROR,
+- "Wayland: Window position setting not supported");
++ //_glfwInputError(GLFW_PLATFORM_ERROR,
++ // "Wayland: Window position setting not supported");
+ }
+
+ void _glfwPlatformGetWindowSize(_GLFWwindow* window, int* width, int* height)
diff --git a/testing/glmark2/APKBUILD b/testing/glmark2/APKBUILD
index 46b19c19fd9..646983d1646 100644
--- a/testing/glmark2/APKBUILD
+++ b/testing/glmark2/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Danct12 <danct12@disroot.org>
# Maintainer: Danct12 <danct12@disroot.org>
pkgname=glmark2
-pkgver=2021.12
+pkgver=2023.01
pkgrel=0
pkgdesc="OpenGL 2.0 and ES 2.0 benchmark"
url="https://github.com/glmark2/glmark2"
@@ -26,5 +26,5 @@ package() {
}
sha512sums="
-d1840e6213e27ead650987ff4945ef76276d900d2ff0c08e008e806b98b24d73d77c5fb248017590d9cc3c9293b2a5074d644f5e8473b8e655e0aedd55155eda glmark2-2021.12.tar.gz
+5aaad56bb341e9c09d8dc78ac8d07d9af39f2414a158fd6e7c2717db2427d1b353408a874a8f38065e241474c674e8220d001652a5dd5a6c893ffe778cff9006 glmark2-2023.01.tar.gz
"
diff --git a/testing/gloox/APKBUILD b/testing/gloox/APKBUILD
new file mode 100644
index 00000000000..c293f8bcb7a
--- /dev/null
+++ b/testing/gloox/APKBUILD
@@ -0,0 +1,35 @@
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=gloox
+pkgver=1.0.28
+pkgrel=0
+pkgdesc="C++ Jabber/XMPP client library"
+url="https://camaya.net/gloox/"
+arch="all"
+license="GPL-3.0-or-later"
+makedepends="gnutls-dev"
+subpackages="$pkgname-dev"
+source="https://camaya.net/download/gloox-$pkgver.tar.bz2"
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var \
+ --with-gnutls=yes
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+8be06963a54957d53bb285482d2ad01569fb281fcb53b03a29dc4444e1915f2f7d81e3fec1288f127bc09ca37d1c0beb4cb8e4f7079becb32dc223e3ceb50e00 gloox-1.0.28.tar.bz2
+"
diff --git a/testing/glossaico/APKBUILD b/testing/glossaico/APKBUILD
deleted file mode 100644
index fa8786c753c..00000000000
--- a/testing/glossaico/APKBUILD
+++ /dev/null
@@ -1,42 +0,0 @@
-# Contributor: Bart Ribbers <bribbers@disroot.org>
-# Maintainer: Bart Ribbers <bribbers@disroot.org>
-pkgname=glossaico
-pkgver=1.0
-pkgrel=1
-pkgdesc="Language learning application based on LibreLingo"
-url="https://codeberg.org/dimkard/glossaico"
-# armhf and riscv64 blocked by py3-pyside2
-# ppc64le blocked by py3-importlib-metadata
-arch="noarch !armhf !riscv64 !ppc64le"
-license="GPL-3.0-or-later"
-depends="
- py3-importlib-metadata
- py3-librelingo-audios
- py3-librelingo-utils
- py3-librelingo-yaml-loader
- py3-pyside2
- py3-requests
- py3-slugify
- py3-yaml
- python3
- "
-makedepends="py3-setuptools"
-source="$pkgname-$pkgver.tar.gz::https://codeberg.org/dimkard/glossaico/archive/v$pkgver.tar.gz"
-options="!check" # No tests
-builddir="$srcdir/$pkgname"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- pytest
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-42378f47825925171f815b7de7837dc036d06ed98eb169f79128ac54c68c4b270682f9fa97ca3a78f52ae3e0d87446e8c71729a0a8927299dacd302f2e187aa8 glossaico-1.0.tar.gz
-"
diff --git a/testing/glow/APKBUILD b/testing/glow/APKBUILD
index 4fd74b80a75..1fd8f7bd325 100644
--- a/testing/glow/APKBUILD
+++ b/testing/glow/APKBUILD
@@ -1,27 +1,47 @@
# Contributor: Hoang Nguyen <folliekazetani@protonmail.com>
# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
pkgname=glow
-pkgver=1.4.1
-pkgrel=4
+pkgver=1.5.1
+pkgrel=6
pkgdesc="Markdown renderer on the CLI, with pizzazz"
url="https://github.com/charmbracelet/glow"
arch="all"
license="MIT"
makedepends="go"
+subpackages="
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
+ "
source="https://github.com/charmbracelet/glow/archive/v$pkgver/glow-$pkgver.tar.gz"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
build() {
- go build -v -o bin/$pkgname -ldflags "-X main.Version=$pkgver"
+ go build -v -ldflags "-X main.Version=$pkgver"
+
+ for shell in bash fish zsh; do
+ ./$pkgname completion $shell > $pkgname.$shell
+ done
}
check() {
- go test -v ./...
+ go test ./...
}
package() {
- install -Dm755 bin/$pkgname "$pkgdir"/usr/bin/$pkgname
+ install -Dm755 $pkgname -t "$pkgdir"/usr/bin/
+
+ install -Dm644 $pkgname.bash \
+ "$pkgdir"/usr/share/bash-completion/completions/$pkgname
+ install -Dm644 $pkgname.fish \
+ "$pkgdir"/usr/share/fish/vendor_completions.d/$pkgname.fish
+ install -Dm644 $pkgname.zsh \
+ "$pkgdir"/usr/share/zsh/site-functions/_$pkgname
}
sha512sums="
-cb7bb7b3c65c70906ea59d85382b8cc32e900ab0276c3ecc4c79bce4c9ef2539043cbd6e3c7600b1622367ba667eaa65b553f60bc56db5af719d183488146721 glow-1.4.1.tar.gz
+d27005fdd10798957145e3ba4f55b78d15a9bf485f9b28a908dfec219524911f065d6f4248bcc79b30d9653588427e18bfeffab6400b1945ff0603bc95a5d888 glow-1.5.1.tar.gz
"
diff --git a/testing/glslviewer/APKBUILD b/testing/glslviewer/APKBUILD
new file mode 100644
index 00000000000..00bb7b2be25
--- /dev/null
+++ b/testing/glslviewer/APKBUILD
@@ -0,0 +1,54 @@
+# Contributor: Leon ROUX <leon.roux@federate.us>
+# Maintainer: Leon ROUX <leon.roux@federate.us>
+pkgname=glslviewer
+pkgver=3.2.4
+pkgrel=0
+pkgdesc="Console-based GLSL Sandbox for 2D/3D shaders"
+_vera="93b2496679c005a723d3e04327199602955ed1dc"
+url="https://github.com/patriciogonzalezvivo/glslViewer"
+license="BSD-3.0"
+arch="all"
+depends="
+ "
+makedepends="
+ cmake
+ ffmpeg-dev
+ libx11-dev
+ libxcursor-dev
+ libxi-dev
+ libxinerama-dev
+ libxrandr-dev
+ mesa-dev
+ musl-dev
+ samurai
+ "
+# ncurses-dev: disabled dependency because of upstream bug
+source="$pkgname-$pkgver.tar.gz::https://github.com/patriciogonzalezvivo/glslViewer/archive/refs/tags/$pkgver.tar.gz
+ vera-$_vera.tar.gz::https://github.com/patriciogonzalezvivo/vera/archive/$_vera.tar.gz
+ "
+builddir="$srcdir/glslViewer-$pkgver"
+options="!check" # does not have any tests
+
+prepare() {
+ default_prepare
+
+ rmdir deps/vera
+ ln -sfv "$srcdir"/vera-$_vera \
+ "$builddir"/deps/vera
+}
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DCMAKE_INSTALL_PREFIX=/usr
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+20766ad1fe288d4e193849809b5633635b2d3a551cd46c9378f80c8817aeb90180847f2e9540e02f6c5729e0fa7fd51c45b4a1fa5f7e4ed6e397c58ef3e32c47 glslviewer-3.2.4.tar.gz
+40cecbd9480f84141f1a22d7a0e730c408cc55729dd4f25d80c6f3fa8098a6e31f088b3b1bfacd3d1507a2bf093dffe3fdb9bc7cb05fdc5586a00bd6956dae16 vera-93b2496679c005a723d3e04327199602955ed1dc.tar.gz
+"
diff --git a/testing/gmenuharness/APKBUILD b/testing/gmenuharness/APKBUILD
new file mode 100644
index 00000000000..4dd796fd32a
--- /dev/null
+++ b/testing/gmenuharness/APKBUILD
@@ -0,0 +1,46 @@
+# Maintainer: Luca Weiss <luca@z3ntu.xyz>
+pkgname=gmenuharness
+pkgver=0.1.4
+pkgrel=0
+pkgdesc="Library to test GMenuModel structures"
+url="https://gitlab.com/ubports/development/core/gmenuharness"
+arch="all"
+license="LGPL-3.0-only"
+depends_dev="
+ glib-dev
+ gtest-dev
+ lomiri-api-dev
+ qt5-qtbase-dev
+ "
+makedepends="
+ $depends_dev
+ cmake
+ cmake-extras
+ gmock
+ libqtdbustest
+ samurai
+ "
+checkdepends="dbus"
+source="https://gitlab.com/ubports/development/core/gmenuharness/-/archive/$pkgver/gmenuharness-$pkgver.tar.gz"
+subpackages="$pkgname-dev"
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=None
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+0ff5ab2411b5f7ad104c27dabd1523c63cb9981212f76d13fb4d7241d19cab8336a9bb188d5fcef87cd916ccce037174227c31c36c546e6793f3ec3641b2547c gmenuharness-0.1.4.tar.gz
+"
diff --git a/testing/gmic/APKBUILD b/testing/gmic/APKBUILD
index 6b95d5776f4..9205ab2dcf1 100644
--- a/testing/gmic/APKBUILD
+++ b/testing/gmic/APKBUILD
@@ -1,59 +1,67 @@
# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
pkgname=gmic
-pkgver=3.0.0
+pkgver=3.3.3
pkgrel=0
pkgdesc="GREYC's Magic for Image Computing"
url="https://gmic.eu/"
-arch="all"
+# s390x: gimp
+arch="all !s390x"
license="CECILL-2.1"
makedepends="
- cmake
+ bash
curl-dev
eigen-dev
fftw-dev
+ gimp-dev
graphicsmagick-dev
openexr-dev
+ qt5-qtbase-dev
tiff-dev
"
-depends="ncurses"
subpackages="
$pkgname-bash-completion
$pkgname-doc
$pkgname-dev
$pkgname-libs
+ $pkgname-qt
+ gimp-plugin-gmic:gimp
+ "
+source="https://gmic.eu/files/source/gmic_$pkgver.tar.gz
+ notune.patch
+ rpath.patch
"
-source="https://gmic.eu/files/source/gmic_$pkgver.tar.gz"
options="!check" # No test suite
-# Enable opencv support when possible
-# opencv-dev is not available on s390x and ppc64le
-case "$CARCH" in
- s390x|ppc64le)
- _enable_opencv=OFF ;;
- *)
- makedepends="$makedepends opencv-dev"
- _enable_opencv=ON ;;
-esac
-
build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
-
- cmake -B build \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DENABLE_DYNAMIC_LINKING=ON \
- -DBUILD_LIB_STATIC=OFF \
- -DENABLE_OPENCV=$_enable_opencv \
- $CMAKE_CROSSOPTS .
- cmake --build build
+ export CFLAGS="$CFLAGS $LDFLAGS"
+ make lib
+ make cli_shared
+ make gimp_shared
+ make gmic_qt_shared
}
package() {
- DESTDIR="$pkgdir" cmake --install build
+ make DESTDIR="$pkgdir" PREFIX="/usr" install
+ install -Dm644 resources/gmic_cluts.gmz -t "$pkgdir"/usr/share/gmic
+}
+
+qt() {
+ pkgdesc="GMIC qt ui"
+
+ amove usr/bin/gmic_qt \
+ usr/share/applications \
+ usr/share/icons
+}
+
+gimp() {
+ pkgdesc="GMIC gimp plugin"
+ install_if="$pkgname=$pkgver-r$pkgrel gimp"
+
+ amove usr/lib/gimp
}
sha512sums="
-89353d16d6304e322400c93bafb50f7557df93c933ed2994f33a17d877e4e12ec511a355b38058680f356bccab5aa84b607fab225354c19d4b8ab3e64424c87c gmic_3.0.0.tar.gz
+3bdfb8d8c935ead77ea0e6927a25e78d3b45236d1dd3cb515a64b4f04206380da471031d8a3bb7bc6b177ac607b2ca1622a11fe35cd8c5ea29c69fccfbdfb90e gmic_3.3.3.tar.gz
+663773af7c6cd7a06d9bc84972dea60d40b0d2eb6fb9f5aef2da482ebf9ed8218f82f998f4e1846051365307a6740308e793abcc60d34f534e40080d0710c7bf notune.patch
+e9184cac37360d1da22b996c2e44b25ad26ae64d64c114b792b0a83c4383ebd1a698e8dc40f8d003334ed8a45b32b01e32413a14b8ed8976569fd9dc00359bb2 rpath.patch
"
diff --git a/testing/gmic/notune.patch b/testing/gmic/notune.patch
new file mode 100644
index 00000000000..96cac947acf
--- /dev/null
+++ b/testing/gmic/notune.patch
@@ -0,0 +1,13 @@
+diff --git a/src/Makefile b/src/Makefile
+index 4636079..cddbe0d 100644
+--- a/src/Makefile
++++ b/src/Makefile
+@@ -212,7 +212,7 @@ endif
+ FLTO = -flto
+ OPT_CFLAGS =
+ ifdef IS_GCC
+-OPT_CFLAGS += -O3 -mtune=generic # $(FLTO)
++OPT_CFLAGS += -O3 # $(FLTO)
+ OPT_LIBS = # $(FLTO)
+ endif
+ ifdef IS_CLANG
diff --git a/testing/gmic/rpath.patch b/testing/gmic/rpath.patch
new file mode 100644
index 00000000000..62a46291f2d
--- /dev/null
+++ b/testing/gmic/rpath.patch
@@ -0,0 +1,26 @@
+diff --git a/gmic-qt/gmic_qt.pro b/gmic-qt/gmic_qt.pro
+index dbabde7..b851af8 100644
+--- a/gmic-qt/gmic_qt.pro
++++ b/gmic-qt/gmic_qt.pro
+@@ -417,7 +417,7 @@ SOURCES += \
+
+ equals(GMIC_DYNAMIC_LINKING, "on" )|equals(GMIC_DYNAMIC_LINKING, "ON" ) {
+ message(Dynamic linking with libgmic)
+- LIBS += -Wl,-rpath,. $$GMIC_PATH/libgmic.so
++ LIBS += $$GMIC_PATH/libgmic.so
+ }
+
+ equals(GMIC_DYNAMIC_LINKING, "off" )|equals(GMIC_DYNAMIC_LINKING, "OFF" ) {
+diff --git a/src/Makefile b/src/Makefile
+index 4636079..41aeb28 100644
+--- a/src/Makefile
++++ b/src/Makefile
+@@ -188,7 +188,7 @@ MANDATORY_LIBS = $(shell pkg-config --libs zlib || echo -lz) $(EXTRA_LIBS)
+ ifndef NO_SRIPDLIB
+ MANDATORY_CFLAGS += -std=c++11 -pedantic
+ endif
+-MANDATORY_LIBS += -L. -L$(PREFIX)/$(LIB) -Wl,-rpath,.
++MANDATORY_LIBS += -L. -L$(PREFIX)/$(LIB)
+ ifdef IS_GCC
+ MANDATORY_CFLAGS += -Wall -Wextra -Wfatal-errors -Werror=unknown-pragmas -Werror=unused-label
+ GCC_VER_GTEQ5 = $(shell expr `$(CXX) -dumpversion | cut -f1 -d.` \>= 5)
diff --git a/testing/gmid/APKBUILD b/testing/gmid/APKBUILD
index 9d3419f0ba8..7efa4f27c49 100644
--- a/testing/gmid/APKBUILD
+++ b/testing/gmid/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Maxim Karasev <begs@disroot.org>
-# Maintainer: Maxim Karasev <begs@disroot.org>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=gmid
-pkgver=1.8.3
-pkgrel=1
+pkgver=2.0.2
+pkgrel=0
pkgdesc="Fast, small, and secure Gemini server"
url="https://www.omarpolo.com/pages/gmid.html"
arch="all !s390x" # test_unknown_host failed
@@ -13,11 +13,11 @@ makedepends="
libbsd-dev
libevent-dev
libretls-dev
- openssl1.1-compat-dev
+ openssl-dev
"
install="$pkgname.pre-install"
subpackages="$pkgname-openrc $pkgname-doc"
-source="$pkgname-$pkgver-nyaa.tar.gz::https://github.com/omar-polo/gmid/releases/download/$pkgver/gmid-$pkgver.tar.gz
+source="$pkgname-$pkgver.tar.gz::https://github.com/omar-polo/gmid/archive/$pkgver/gmid-$pkgver.tar.gz
$pkgname.confd
$pkgname.initd
$pkgname.conf
@@ -25,7 +25,7 @@ source="$pkgname-$pkgver-nyaa.tar.gz::https://github.com/omar-polo/gmid/releases
build() {
# Not a gnuautoconf, just a shell script
- ./configure DESTDIR="$pkgdir" PREFIX=/usr
+ ./configure PREFIX=/usr
make
}
@@ -42,7 +42,7 @@ package() {
}
sha512sums="
-2b54f8a65210d2312234dbef74f4c4eee39f2b2dc36a1f0a51946ac342a520c30e2a98f46f387ac1432e44a6df08facdb790d7fdfccab3dda546b3254c9cef75 gmid-1.8.3-nyaa.tar.gz
+5d4931f86b18de7b1ebec37e4b2343e401a31478c2e4a98bb9e6f13812bba1dbb01deefd3263a65090c2f6e4bf2321392c504d4b3177c30abb2f2acaa9f03361 gmid-2.0.2.tar.gz
b05d3685b66547d171a8feeb47518a9e27226a709a0a4d5a77e2cd51d7026ef4d3e0fc9e00a53e9fa58908b717df0bc0954452ab44d2158c949cdfec10b8cba5 gmid.confd
9d5c2fc00f08ab4fe187bfbd09d386b9daab39b7c984b0a2e6043ce0a66baf9b8a3d6609f8c4c41ed97e1e7161511ab7a7edea0e477bfce5eab10fcf10df27ba gmid.initd
9ebbac15a6e3b34f70a4bbf1a1c4a70f8e6b733ce3b838829fbcc995cfc6681f216f80a8ddca526c60cdc9b9a16de071e5f93faa31b42be65d707ad52897730b gmid.conf
diff --git a/testing/gmobile/APKBUILD b/testing/gmobile/APKBUILD
new file mode 100644
index 00000000000..485a5f8a706
--- /dev/null
+++ b/testing/gmobile/APKBUILD
@@ -0,0 +1,33 @@
+# Maintainer: fossdd <fossdd@pwned.life>
+pkgname=gmobile
+pkgver=0.1.0
+pkgrel=0
+pkgdesc="Functions useful in mobile related, glib based projects"
+url="https://gitlab.gnome.org/World/Phosh/gmobile"
+arch="all"
+license="GPL-3.0-only"
+makedepends="
+ meson
+ glib-dev
+ json-glib-dev
+ gobject-introspection-dev
+ "
+subpackages="$pkgname-dev"
+source="https://sources.phosh.mobi/releases/gmobile/gmobile-$pkgver.tar.xz"
+
+build() {
+ abuild-meson build
+ meson compile -C build
+}
+
+check() {
+ meson test -C build
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C build
+}
+
+sha512sums="
+eb17d0b39d5dbe197a2502fe974af37076317094c4759bbc4924d951fdb1bdb1fe8f13a85419dad756954c165bbd6dfca4ce555f6e3f5a3def4bac8bc913ab1a gmobile-0.1.0.tar.xz
+"
diff --git a/testing/gmsh/APKBUILD b/testing/gmsh/APKBUILD
new file mode 100644
index 00000000000..7ba5c2584dd
--- /dev/null
+++ b/testing/gmsh/APKBUILD
@@ -0,0 +1,59 @@
+# Contributor: Aiden Grossman <agrossman154@yahoo.com>
+# Maintainer: Aiden Grossman <agrossman154@yahoo.com>
+pkgname=gmsh
+pkgver=4.12.2
+pkgrel=0
+pkgdesc="Automatic 3D finite element mesh generator"
+url="https://gmsh.info/"
+# s390x: opencascade
+# armv7, armhf: segfaults
+# x86: fails tests
+arch="all !x86 !armv7 !armhf !s390x"
+license="GPL-2.0-or-later" # license lists several exceptions
+makedepends="
+ chrpath
+ cmake
+ fltk-dev
+ glu-dev
+ gmp-dev
+ hdf5-dev
+ jpeg-dev
+ mesa-dev
+ opencascade-dev
+ samurai
+ "
+subpackages="$pkgname-dbg $pkgname-doc gmsh-py:py:noarch"
+source="https://gmsh.info/src/gmsh-$pkgver-source.tgz"
+builddir="$srcdir/$pkgname-$pkgver-source"
+
+build() {
+ CFLAGS="$CFLAGS -O2" \
+ CXXFLAGS="$CXXFLAGS -O2" \
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DRPATH=OFF \
+ -DTESTS="$(want_check && echo ON || echo OFF)"
+ cmake --build build
+}
+
+check() {
+ ctest -j $JOBS --test-dir build --output-on-failure \
+ -E '../tutorials/t12.geo'
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+
+ # Drop redundant /usr/lib from rpath
+ chrpath -d "$pkgdir"/usr/bin/gmsh
+}
+
+py() {
+ depends="$pkgname=$pkgver-r$pkgrel python3"
+ amove usr/bin/onelab.py
+}
+
+sha512sums="
+935148aff89b608f9d671d5fd4f12aed52b5c8ba4453e978d0febcc6934c045f2bba0078b13a64b2cbf4e852b413bbd05873335099ea7a967cc81ef58a7f8367 gmsh-4.12.2-source.tgz
+"
diff --git a/testing/gn/APKBUILD b/testing/gn/APKBUILD
deleted file mode 100644
index e71398e32bf..00000000000
--- a/testing/gn/APKBUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-# Contributor: TBK <alpine@jjtc.eu>
-# Maintainer: TBK <alpine@jjtc.eu>
-pkgname=gn
-pkgver=0_git20201222
-pkgrel=0
-pkgdesc="Meta-build system that generates build files for Ninja"
-arch="all !riscv64" # FTBFS: "please add support for your architecture"
-url="https://gn.googlesource.com/gn"
-license="BSD-3-Clause"
-depends="samurai"
-makedepends="python3"
-# archive needs to include .git for the build script to be able to determine the version
-source="https://dev.alpinelinux.org/archive/gn/gn-$pkgver.tar.gz
- python3.patch
- "
-builddir="$srcdir"
-
-build() {
- ./build/gen.py
- ninja -C out
-}
-
-check() {
- ./out/gn_unittests
-}
-
-package() {
- install -Dm755 out/gn "$pkgdir"/usr/bin/gn
-}
-
-sha512sums="1c5a2526b8869c931994fd09cda0d84c82c0112b7fd171ef020acee76a848821cba6e298d91140a7155c82174737ba5bfd50438d79841cd1e95e216f33ea62ac gn-0_git20201222.tar.gz
-3ee020c43b858f27a47e869634e071126e14c6a748b7fbfeec2b49651a0b1ea1f3bab1e0a20e4249056f7434221081945af9ad5ad28bb45300d1457580df06ab python3.patch"
diff --git a/testing/gn/python3.patch b/testing/gn/python3.patch
deleted file mode 100644
index 891534d0f99..00000000000
--- a/testing/gn/python3.patch
+++ /dev/null
@@ -1,236 +0,0 @@
---- a/build/full_test.py
-+++ b/build/full_test.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- # Copyright 2018 The Chromium Authors. All rights reserved.
- # Use of this source code is governed by a BSD-style license that can be
- # found in the LICENSE file.
---- a/build/gen.py
-+++ b/build/gen.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- # Copyright 2014 The Chromium Authors. All rights reserved.
- # Use of this source code is governed by a BSD-style license that can be
- # found in the LICENSE file.
---- a/infra/recipes.py
-+++ b/infra/recipes.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
-
- # Copyright 2017 The LUCI Authors. All rights reserved.
- # Use of this source code is governed under the Apache License, Version 2.0
---- a/misc/help_as_html.py
-+++ b/misc/help_as_html.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- # Copyright 2014 The Chromium Authors. All rights reserved.
- # Use of this source code is governed by a BSD-style license that can be
- # found in the LICENSE file.
---- a/src/gn/exec_process_unittest.cc
-+++ b/src/gn/exec_process_unittest.cc
-@@ -33,7 +33,7 @@
- args.push_back(L"-c");
- args.push_back(base::UTF8ToUTF16(command));
- #else
-- args.push_back("python");
-+ args.push_back("python3");
- args.push_back("-c");
- args.push_back(command);
- #endif
---- a/src/gn/json_project_writer_unittest.cc
-+++ b/src/gn/json_project_writer_unittest.cc
-@@ -37,7 +37,7 @@
- SubstitutionList::MakeForTest("//out/Debug/output1.out");
-
- setup.build_settings()->set_python_path(
-- base::FilePath(FILE_PATH_LITERAL("/usr/bin/python")));
-+ base::FilePath(FILE_PATH_LITERAL("/usr/bin/python3")));
- std::vector<const Target*> targets;
- targets.push_back(&target);
- #if defined(OS_WIN)
-@@ -172,7 +172,7 @@
- SubstitutionList::MakeForTest("//out/Debug/{{source_name_part}}.out");
-
- setup.build_settings()->set_python_path(
-- base::FilePath(FILE_PATH_LITERAL("/usr/bin/python")));
-+ base::FilePath(FILE_PATH_LITERAL("/usr/bin/python3")));
- std::vector<const Target*> targets;
- targets.push_back(&target);
- #if defined(OS_WIN)
---- a/src/gn/ninja_action_target_writer_unittest.cc
-+++ b/src/gn/ninja_action_target_writer_unittest.cc
-@@ -54,14 +54,14 @@
- ASSERT_TRUE(target.OnResolved(&err));
-
- setup.build_settings()->set_python_path(
-- base::FilePath(FILE_PATH_LITERAL("/usr/bin/python")));
-+ base::FilePath(FILE_PATH_LITERAL("/usr/bin/python3")));
-
- std::ostringstream out;
- NinjaActionTargetWriter writer(&target, out);
- writer.Run();
-
- const char* expected = R"(rule __foo_bar___rule
-- command = /usr/bin/python ../../foo/script.py
-+ command = /usr/bin/python3 ../../foo/script.py
- description = ACTION //foo:bar()
- restat = 1
-
-@@ -96,7 +96,7 @@
- ASSERT_TRUE(target.OnResolved(&err));
-
- setup.build_settings()->set_python_path(
-- base::FilePath(FILE_PATH_LITERAL("/usr/bin/python")));
-+ base::FilePath(FILE_PATH_LITERAL("/usr/bin/python3")));
-
- std::ostringstream out;
- NinjaActionTargetWriter writer(&target, out);
-@@ -105,7 +105,7 @@
- // The console pool's name must be mapped exactly to the string "console"
- // which is a special pre-defined pool name in ninja.
- const char* expected = R"(rule __foo_bar___rule
-- command = /usr/bin/python ../../foo/script.py
-+ command = /usr/bin/python3 ../../foo/script.py
- description = ACTION //foo:bar()
- restat = 1
-
-@@ -138,7 +138,7 @@
- ASSERT_TRUE(target.OnResolved(&err));
-
- setup.build_settings()->set_python_path(
-- base::FilePath(FILE_PATH_LITERAL("/usr/bin/python")));
-+ base::FilePath(FILE_PATH_LITERAL("/usr/bin/python3")));
-
- std::ostringstream out;
- NinjaActionTargetWriter writer(&target, out);
-@@ -146,7 +146,7 @@
-
- const char expected_linux[] =
- "rule __foo_bar___rule\n"
-- " command = /usr/bin/python ../../foo/script.py\n"
-+ " command = /usr/bin/python3 ../../foo/script.py\n"
- " description = ACTION //foo:bar()\n"
- " restat = 1\n"
- "\n"
-@@ -207,7 +207,7 @@
- ASSERT_TRUE(target.OnResolved(&err));
-
- setup.build_settings()->set_python_path(
-- base::FilePath(FILE_PATH_LITERAL("/usr/bin/python")));
-+ base::FilePath(FILE_PATH_LITERAL("/usr/bin/python3")));
-
- std::ostringstream out;
- NinjaActionTargetWriter writer(&target, out);
-@@ -215,7 +215,7 @@
-
- const char expected_linux[] =
- "rule __foo_bar___rule\n"
-- " command = /usr/bin/python ../../foo/script.py -i ${in} "
-+ " command = /usr/bin/python3 ../../foo/script.py -i ${in} "
- // Escaping is different between Windows and Posix.
- #if defined(OS_WIN)
- "\"--out=foo$ bar${source_name_part}.o\"\n"
-@@ -273,7 +273,7 @@
- target.config_values().inputs().push_back(SourceFile("//foo/included.txt"));
-
- setup.build_settings()->set_python_path(
-- base::FilePath(FILE_PATH_LITERAL("/usr/bin/python")));
-+ base::FilePath(FILE_PATH_LITERAL("/usr/bin/python3")));
- setup.build_settings()->set_ninja_required_version(Version{1, 9, 0});
-
- std::ostringstream out;
-@@ -282,7 +282,7 @@
-
- const char expected_linux[] =
- "rule __foo_bar___rule\n"
-- " command = /usr/bin/python ../../foo/script.py -i ${in} "
-+ " command = /usr/bin/python3 ../../foo/script.py -i ${in} "
- #if defined(OS_WIN)
- "\"--out=foo$ bar${source_name_part}.o\"\n"
- #else
-@@ -331,7 +331,7 @@
- SubstitutionList::MakeForTest("//out/Debug/{{source_name_part}}.out");
-
- setup.build_settings()->set_python_path(
-- base::FilePath(FILE_PATH_LITERAL("/usr/bin/python")));
-+ base::FilePath(FILE_PATH_LITERAL("/usr/bin/python3")));
-
- std::ostringstream out;
- NinjaActionTargetWriter writer(&target, out);
-@@ -344,7 +344,7 @@
- // These come from rsp_file_contents above.
- " rspfile_content = -j ${source_name_part}\n"
- // These come from the args.
-- " command = /usr/bin/python ../../foo/script.py ${in} "
-+ " command = /usr/bin/python3 ../../foo/script.py ${in} "
- "${source_file_part} ${rspfile}\n"
- " description = ACTION //foo:bar()\n"
- " restat = 1\n"
-@@ -389,7 +389,7 @@
- SubstitutionList::MakeForTest("//out/Debug/{{source_name_part}}.out");
-
- setup.build_settings()->set_python_path(
-- base::FilePath(FILE_PATH_LITERAL("/usr/bin/python")));
-+ base::FilePath(FILE_PATH_LITERAL("/usr/bin/python3")));
-
- std::ostringstream out;
- NinjaActionTargetWriter writer(&target, out);
-@@ -398,7 +398,7 @@
- const char expected_linux[] =
- "rule __foo_bar___rule\n"
- // These come from the args.
-- " command = /usr/bin/python ../../foo/script.py ${in} "
-+ " command = /usr/bin/python3 ../../foo/script.py ${in} "
- "${source_file_part}\n"
- " description = ACTION //foo:bar()\n"
- " restat = 1\n"
-@@ -418,7 +418,7 @@
- TestWithScope setup;
-
- setup.build_settings()->set_python_path(
-- base::FilePath(FILE_PATH_LITERAL("/usr/bin/python")));
-+ base::FilePath(FILE_PATH_LITERAL("/usr/bin/python3")));
-
- Target dep(setup.settings(), Label(SourceDir("//foo/"), "dep"));
- dep.set_output_type(Target::ACTION);
-@@ -445,7 +445,7 @@
- const char expected_linux[] =
- "rule __foo_foo___rule\n"
- // These come from the args.
-- " command = /usr/bin/python ../../foo/script.py\n"
-+ " command = /usr/bin/python3 ../../foo/script.py\n"
- " description = ACTION //foo:foo()\n"
- " restat = 1\n"
- "\n"
-@@ -474,7 +474,7 @@
- const char expected_linux[] =
- "rule __bar_bar___rule\n"
- // These come from the args.
-- " command = /usr/bin/python ../../bar/script.py\n"
-+ " command = /usr/bin/python3 ../../bar/script.py\n"
- " description = ACTION //bar:bar()\n"
- " restat = 1\n"
- "\n"
---- a/src/gn/setup.cc
-+++ b/src/gn/setup.cc
-@@ -762,7 +762,7 @@
- }
- build_settings_.set_python_path(python_path.NormalizePathSeparatorsTo('/'));
- #else
-- build_settings_.set_python_path(base::FilePath("python"));
-+ build_settings_.set_python_path(base::FilePath("python3"));
- #endif
- }
- return true;
---- a/tools/find_unreachable.py
-+++ b/tools/find_unreachable.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- # Copyright 2020 The Chromium Authors. All rights reserved.
- # Use of this source code is governed by a BSD-style license that can be
- # found in the LICENSE file.
diff --git a/testing/gnome-common/APKBUILD b/testing/gnome-common/APKBUILD
new file mode 100644
index 00000000000..62036649876
--- /dev/null
+++ b/testing/gnome-common/APKBUILD
@@ -0,0 +1,32 @@
+# Contributor: Carlo Landmeter <clandmeter@alpinelinux.org>
+# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
+pkgname=gnome-common
+pkgver=3.18.0
+pkgrel=3
+pkgdesc="Common development macros for GNOME"
+url="https://www.gnome.org"
+arch="noarch"
+license="LGPL-2.1-or-later"
+source="https://download.gnome.org/sources/gnome-common/${pkgver%.*}/gnome-common-$pkgver.tar.xz"
+
+check() {
+ make check
+}
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --infodir=/usr/share/info \
+ --localstatedir=/var
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="b931c9a6668d996560549738bb2d95f86f56fa68ce930c077275bdc8fddbc2d28d215c1190099db1df851417902fca87ec81f1c0e644c5b9630a175e1cde0719 gnome-common-3.18.0.tar.xz"
diff --git a/testing/gnome-latex/APKBUILD b/testing/gnome-latex/APKBUILD
new file mode 100644
index 00000000000..4a8f09652a8
--- /dev/null
+++ b/testing/gnome-latex/APKBUILD
@@ -0,0 +1,61 @@
+# Contributor: Rasmus Thomsen <oss@cogitri.dev>
+# Maintainer: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
+pkgname=gnome-latex
+pkgver=3.44.0
+pkgrel=5
+pkgdesc="LaTeX editor for the GNOME desktop"
+url="https://gitlab.gnome.org/swilmet/gnome-latex"
+# s390x, ppc64le and riscv64 blocked by texlive
+arch="all !ppc64le !s390x !riscv64"
+license="GPL-3.0-or-later"
+depends="
+ gsettings-desktop-schemas
+ texlive
+ "
+makedepends="
+ autoconf
+ automake
+ dconf-dev
+ gobject-introspection-dev
+ gsettings-desktop-schemas-dev
+ gspell-dev
+ gtk-doc
+ intltool
+ itstool
+ libgee-dev
+ libtool
+ tepl-dev
+ vala
+ yelp
+ "
+subpackages="$pkgname-doc $pkgname-lang"
+source="https://download.gnome.org/sources/gnome-latex/${pkgver%.*}/gnome-latex-$pkgver.tar.xz
+ "
+
+prepare() {
+ default_prepare
+ autoreconf -fi
+}
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+d1dc7b2321438ebed7a209c7c750123a0dcf8ebcf92f73fd7eb4c79282f51d6b6a8328ee8759326f43e53dbd2ba9d1fadc056c2fcea11e7785e7c27574707e95 gnome-latex-3.44.0.tar.xz
+"
diff --git a/testing/gnome-metronome/APKBUILD b/testing/gnome-metronome/APKBUILD
index c52e51e987f..f55ae0e30b2 100644
--- a/testing/gnome-metronome/APKBUILD
+++ b/testing/gnome-metronome/APKBUILD
@@ -1,15 +1,15 @@
# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=gnome-metronome
-pkgver=1.2.0
+pkgver=1.3.0
pkgrel=0
pkgdesc="Metronome beats the rhythm for you"
url="https://apps.gnome.org/app/com.adrienplazas.Metronome/"
-# s390x, riscv64: blocked by cargo, gtk4.0, libadwaita, rust
-arch="all !s390x !riscv64"
+arch="all"
license="GPL-3.0-or-later"
makedepends="
cargo
+ desktop-file-utils
glib-dev
gst-plugins-bad-dev
gst-plugins-base-dev
@@ -19,17 +19,14 @@ makedepends="
meson
rust
"
+subpackages="$pkgname-lang"
source="https://gitlab.gnome.org/World/metronome/-/archive/$pkgver/metronome-$pkgver.tar.gz"
builddir="$srcdir/metronome-$pkgver"
-export CARGO_PROFILE_RELEASE_LTO=true
-export CARGO_PROFILE_RELEASE_PANIC=abort
-export CARGO_PROFILE_RELEASE_CODEGEN_UNITS=1
-export CARGO_PROFILE_RELEASE_OPT_LEVEL="s"
build() {
abuild-meson build
- meson compile ${JOBS:+-j ${JOBS}} -C build
+ meson compile -C build
}
check() {
@@ -41,5 +38,5 @@ package() {
}
sha512sums="
-b51b03380e5f0f54bed1093b8b5264cb5f6c319308ee56253e3e7255ad94dfaa390adb2a8df192ffeb15b265f04661432a90e0c971800db5804630ed2d6503ac metronome-1.2.0.tar.gz
+006f29f838895546af770d2fdddc8e947372f50c9499010b7ff4d77f2ef54d71dd4e7f8250ea5d20e0ad4842a0d6f9a87db5d6c549fb2f880f332eff56472c47 metronome-1.3.0.tar.gz
"
diff --git a/testing/gnomecast/APKBUILD b/testing/gnomecast/APKBUILD
new file mode 100644
index 00000000000..f4567d5b33a
--- /dev/null
+++ b/testing/gnomecast/APKBUILD
@@ -0,0 +1,50 @@
+# Contributor: Lauren N. Liberda <lauren@selfisekai.rocks>
+# Maintainer: Lauren N. Liberda <lauren@selfisekai.rocks>
+pkgname=gnomecast
+pkgver=1.9.11_git20220423
+_commit=d42d8915838b01c5cadacb322909e08ffa455d4f
+pkgrel=2
+pkgdesc="A native Linux GUI for casting local files to Chromecast devices"
+url="https://github.com/keredson/gnomecast"
+arch="noarch"
+license="GPL-3.0-only"
+depends="
+ ffmpeg
+ gtk+3.0
+ python3
+ py3-bottle
+ py3-dbus
+ py3-gobject3
+ py3-html5lib
+ py3-paste
+ py3-pycaption
+ py3-pychromecast
+ "
+makedepends="py3-setuptools"
+checkdepends="py3-pytest"
+options="!check" # broken tests
+subpackages="$pkgname-pyc"
+source="
+ https://github.com/keredson/gnomecast/archive/$_commit/gnomecast-$_commit.tar.gz
+
+ no-pandoc.patch
+ "
+builddir="$srcdir/gnomecast-$_commit"
+
+build() {
+ python3 setup.py build
+}
+
+check() {
+ pytest
+}
+
+package() {
+ python3 setup.py install --skip-build --root="$pkgdir"
+ rm -rf "$pkgdir"/usr/lib/python3*/site-packages/tests
+}
+
+sha512sums="
+00d254330b337d5bc4713de59d3ed1805ac5afb1dcf919c306c41dc6817345902717dff622f902dafa801c0289f76f7a9c328b70fe094a7829f7ec1f836c531f gnomecast-d42d8915838b01c5cadacb322909e08ffa455d4f.tar.gz
+3e15f74bcae0189a37a0ed716302c858738ef10f8fc24cc335ac54b06c6f6920854ac23bf07c3570d7b329e80dc2c3421b999fcf75e95bd6420c97c574510866 no-pandoc.patch
+"
diff --git a/testing/gnomecast/no-pandoc.patch b/testing/gnomecast/no-pandoc.patch
new file mode 100644
index 00000000000..2717ac45d94
--- /dev/null
+++ b/testing/gnomecast/no-pandoc.patch
@@ -0,0 +1,23 @@
+--- a/setup.py
++++ b/setup.py
+@@ -2,20 +2,10 @@
+
+ from setuptools import setup
+
+-def long_description():
+- os.system('pandoc --from=markdown --to=rst --output=README.rst README.md')
+- readme_fn = os.path.join(os.path.dirname(__file__), 'README.rst')
+- if os.path.exists(readme_fn):
+- with open(readme_fn) as f:
+- return f.read()
+- else:
+- return 'not available'
+-
+ setup(
+ name='gnomecast',
+ version=__import__('gnomecast').__version__,
+ description='A native Linux GUI for Chromecasting local files.',
+- long_description=long_description(),
+ author='Derek Anderson',
+ author_email='public@kered.org',
+ url='https://github.com/keredson/gnomecast',
diff --git a/testing/gnu-apl/APKBUILD b/testing/gnu-apl/APKBUILD
new file mode 100644
index 00000000000..ddecb201648
--- /dev/null
+++ b/testing/gnu-apl/APKBUILD
@@ -0,0 +1,40 @@
+# Maintainer: Dekedro <dekedro@protonmail.com>
+pkgname=gnu-apl
+pkgver=1.8
+pkgrel=1
+pkgdesc="GNU interpreter for the programming language APL"
+url="https://www.gnu.org/software/apl/"
+arch="all !ppc64le" # Fails to build
+license="GPL-3.0-or-later"
+makedepends="autoconf automake libtool"
+subpackages="$pkgname-dev $pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://ftp.gnu.org/gnu/apl/apl-$pkgver.tar.gz"
+builddir="$srcdir/apl-$pkgver"
+
+prepare() {
+ default_prepare
+ update_config_sub
+}
+
+build() {
+ ./configure CXX_WERROR='no' \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+7b903f2d280bba85fd4efb7c5f26e969930c34fdf4667b93adc445521b2eb19cba54f602d823ed56d31d6d596ffce29479c870a110a41f91aa5b7e1747000b54 gnu-apl-1.8.tar.gz
+"
diff --git a/testing/gnuradio/APKBUILD b/testing/gnuradio/APKBUILD
deleted file mode 100644
index 433f0b8ed2e..00000000000
--- a/testing/gnuradio/APKBUILD
+++ /dev/null
@@ -1,94 +0,0 @@
-# Contributor: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
-# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
-pkgname=gnuradio
-pkgver=3.9.6.0
-pkgrel=2
-pkgdesc="General purpose DSP and SDR toolkit"
-url="https://www.gnuradio.org"
-# libvolk only supports armv7, aarch64, x86_64. On armv7 other dependencies
-# are not available, so it also not supported for now.
-arch="aarch64 x86_64"
-license="GPL-3.0-or-later"
-checkdepends="xvfb-run"
-makedepends="
- blas-dev
- boost-dev
- cmake
- doxygen
- fftw-dev
- gmp-dev
- graphviz
- gsl-dev
- gsm-dev
- gtk+3.0-dev
- libvolk-dev
- libsndfile-dev
- log4cpp-dev
- mpir-dev
- py3-numpy-dev
- py3-pybind11-dev
- py3-sphinx
- python3-dev
- samurai
- soapy-sdr-dev
- qt5-qtbase-dev
- qwt-dev
- uhd-dev
- "
-depends="
- py3-cairo
- py3-gobject3
- py3-mako
- py3-numpy
- py3-qtgraph
- py3-qt5
- py3-scipy
- py3-six
- py3-yaml
- "
-subpackages="$pkgname-doc $pkgname-dev"
-source="
- $pkgname-$pkgver.tar.gz::https://github.com/gnuradio/gnuradio/archive/v$pkgver.tar.gz
- disable-test.patch
- "
-
-[ "$CARCH" = "aarch64" ] && options="!check" # tests hang on the builder
-
-build() {
- # inlining failed in call to 'always_inline' 'vsnprintf':
- # function body can be overwritten at link time
- export CXXFLAGS="$CXXFLAGS -U_FORTIFY_SOURCE"
- cmake -B build -G Ninja \
- -DCMAKE_BUILD_TYPE=MinSizeRel \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DCMAKE_VERBOSE_MAKEFILE=ON \
- -DENABLE_GRC=ON \
- -DENABLE_GR_QTGUI=ON \
- -DENABLE_PYTHON=ON \
- -Wno-dev
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --build build --target install
-}
-
-check() {
- # remove failing tests
- case "$CARCH" in
- x86_64)
- sed -i build/gr-blocks/python/blocks/CTestTestfile.cmake \
- -e '/add_test(qa_rotator_cc /d'
- sed -i build/gr-qtgui/python/qtgui/CTestTestfile.cmake \
- -e '/add_test(qa_qtgui /d'
- ;;
- esac
- export CTEST_PARALLEL_LEVEL=$JOBS
- xvfb-run ctest --output-on-failure --test-dir build
-}
-
-sha512sums="
-47a6605bdc0310d9fbac0f6717da2c3a7a53746da567d6d6219e43dc83e05b9c1b280a0be33b730b872d250c2d1271091cd27dc1116238fbc9a9a8ca202e0c1c gnuradio-3.9.6.0.tar.gz
-168fdf8737e7a52864f9baf13a5061574cb30c67003feb518b1ba906f639cc4fe77d90a71efe2b6cb1da86ac0e226f2311e8116c19be21d6ec653f197cb524e0 disable-test.patch
-"
diff --git a/testing/gnuradio/disable-test.patch b/testing/gnuradio/disable-test.patch
deleted file mode 100644
index 1cf04589e29..00000000000
--- a/testing/gnuradio/disable-test.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/gr-blocks/lib/CMakeLists.txt
-+++ b/gr-blocks/lib/CMakeLists.txt
-@@ -236,7 +236,6 @@
- qa_gr_flowgraph.cc
- qa_gr_hier_block2.cc
- qa_gr_hier_block2_derived.cc
-- qa_gr_top_block.cc
- qa_rotator.cc
- qa_set_msg_handler.cc
- )
diff --git a/testing/go-acceptlanguageparser/APKBUILD b/testing/go-acceptlanguageparser/APKBUILD
deleted file mode 100644
index c3bf774a695..00000000000
--- a/testing/go-acceptlanguageparser/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Maintainer: Leonardo Arena <rnalrd@alpinelinux.org>
-pkgname=go-acceptlanguageparser
-_pkgname=goacceptlanguageparser
-_vendor="strukturag"
-pkgver=100
-pkgrel=7
-pkgdesc="Go library for parsing HTTP request header Accept-Language"
-url="https://github.com/$_vendor/$_pkgname"
-arch="noarch"
-license="BSD-3-Clause"
-depends="go"
-subpackages="$pkgname-doc"
-options="!check" # no testsuite
-source="$pkgname-$pkgver.tar.gz::https://github.com/$_vendor/$_pkgname/archive/${_pkgname}_v$pkgver.tar.gz"
-builddir="$srcdir"/${_pkgname}-${_pkgname}_v$pkgver
-
-build() {
- return 0
-}
-
-package() {
- cd "$builddir"
- mkdir -p "$pkgdir"/usr/share/doc/$_vendor/$pkgname \
- "$pkgdir"/usr/lib/go/src/github.com/$_vendor/$_pkgname
- for file in \
- LICENSE \
- README.md \
- COPYRIGHT \
- AUTHORS \
- ; do \
- test -e $file && mv $file "$pkgdir"/usr/share/doc/$_vendor/$pkgname
- done
- mv *.go "$pkgdir"/usr/lib/go/src/github.com/$_vendor/$_pkgname
-}
-
-sha512sums="319bccac8bd61677b9e1437e54053b70feb4bdc1ce289ca9c68594fe0731b3efc3fbc77a9bfd2dbedc9a0a52d01bdd269981eb7d49a515ff0a6dc27c2811923d go-acceptlanguageparser-100.tar.gz"
diff --git a/testing/go-conf/APKBUILD b/testing/go-conf/APKBUILD
deleted file mode 100644
index f61a4c1bdb1..00000000000
--- a/testing/go-conf/APKBUILD
+++ /dev/null
@@ -1,43 +0,0 @@
-# Maintainer: Leonardo Arena <rnalrd@alpinelinux.org>
-pkgname=go-conf
-_pkgname=goconf
-_vendor=dlintw
-pkgver=0_git20170102
-pkgrel=7
-pkgdesc="goconf package - fork from https://code.google.com/p/goconf/"
-url="https://github.com/$_vendor/$_pkgname"
-arch="noarch"
-license="BSD-3-Clause"
-depends="go"
-subpackages="$pkgname-doc"
-source="https://dev.alpinelinux.org/archive/$_pkgname/$_pkgname-$pkgver.tar.gz"
-giturl="https://github.com/dlintw/$_pkgname.git"
-disturl="larena@dev.alpinelinux.org:/archive/$_pkgname/$_pkgname-$pkgver.tar.gz"
-builddir="$srcdir"/$_pkgname-$pkgver
-
-build() {
- cd "$builddir"
- export GOPATH="$srcdir" make all
-}
-
-check() {
- cd "$builddir"
- export GOPATH="$srcdir" make test
-}
-
-package() {
- cd "$builddir"
- mkdir -p "$pkgdir"/usr/share/doc/$_vendor/$pkgname \
- "$pkgdir"/usr/lib/go/src/vendor/github.com/$_vendor/$_pkgname
- for file in \
- LICENSE \
- README.* \
- COPYRIGHT \
- AUTHORS \
- ; do \
- test -e $file && mv $file "$pkgdir"/usr/share/doc/$_vendor/$pkgname
- done
- mv *.go "$pkgdir"/usr/lib/go/src/vendor/github.com/$_vendor/$_pkgname
-}
-
-sha512sums="b497d81356b8dc93b6421cadfd4e396399ff7eea183fec1509f925d46b3d19367294c2515589d3f1ee3dd20169980615a8bec030a9a7479274b9add2446c0e59 goconf-0_git20170102.tar.gz"
diff --git a/testing/go-context/APKBUILD b/testing/go-context/APKBUILD
deleted file mode 100644
index 4332bc79ffd..00000000000
--- a/testing/go-context/APKBUILD
+++ /dev/null
@@ -1,38 +0,0 @@
-# Contributor:
-# Maintainer: Leonardo Arena <rnalrd@alpinelinux.org>
-pkgname=go-context
-_pkgname=context
-_vendor=gorilla
-pkgver=1.1
-pkgrel=8
-pkgdesc="A golang registry for global request variables"
-url="https://www.gorillatoolkit.org/"
-arch="noarch"
-license="BSD-3-Clause"
-subpackages="$pkgname-doc"
-depends="go"
-options="!check" # no testsuite
-source="$pkgname-$pkgver.tar.gz::https://github.com/$_vendor/$_pkgname/archive/v$pkgver.tar.gz"
-builddir="$srcdir"/$_pkgname-$pkgver
-
-build() {
- return 0
-}
-
-package() {
- mkdir -p "$pkgdir"/usr/share/doc/$_vendor/$pkgname \
- "$pkgdir"/usr/lib/go/src/vendor/github.com/$_vendor/$_pkgname
- for file in \
- LICENSE \
- README.md \
- COPYRIGHT \
- AUTHORS \
- ; do \
- test -e $file && mv $file "$pkgdir"/usr/share/doc/$_vendor/$pkgname
- done
- mv -- * "$pkgdir"/usr/lib/go/src/vendor/github.com/$_vendor/$_pkgname
-}
-
-sha512sums="
-a4864abec77e82c63f075c18517b4c486e6196b80f234f667d3d7d29bbd67967f0c0df80a398c0aa9c7a6d4e57326b3c3045f541a258d02c02d6ced5f0bc2327 go-context-1.1.tar.gz
-"
diff --git a/testing/go-httputils/APKBUILD b/testing/go-httputils/APKBUILD
deleted file mode 100644
index f5f0330e738..00000000000
--- a/testing/go-httputils/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Maintainer: Leonardo Arena <rnalrd@alpinelinux.org>
-pkgname=go-httputils
-_pkgname=httputils
-_vendor="strukturag"
-pkgver=012
-pkgrel=6
-pkgdesc="Go support library for HTTP servers"
-url="https://github.com/$_vendor/$_pkgname"
-arch="noarch"
-license="BSD-3-Clause"
-depends="go"
-subpackages="$pkgname-doc"
-options="!check" # no testsuite
-source="$pkgname-$pkgver.tar.gz::https://github.com/strukturag/$_pkgname/archive/${_pkgname}_v$pkgver.tar.gz"
-builddir="$srcdir"/${_pkgname}-${_pkgname}_v$pkgver
-
-build() {
- return 0
-}
-
-package() {
- cd "$builddir"
- mkdir -p "$pkgdir"/usr/share/doc/$_vendor/$pkgname \
- "$pkgdir"/usr/lib/go/src/github.com/$_vendor/$_pkgname
- for file in \
- LICENSE \
- README.* \
- COPYRIGHT \
- AUTHORS \
- ; do \
- test -e $file && mv $file "$pkgdir"/usr/share/doc/$_vendor/$_pkgname
- done
- mv * "$pkgdir"/usr/lib/go/src/github.com/$_vendor/$_pkgname
-}
-
-sha512sums="e508c121f6b226dcc8f7eea2104e3bf620ada5c8d66e5569cb3e6f33f95d7ce5cac97f4e1b34afb34fc13e280ec9e3ea846b408412ddf3badcfb70674a328d84 go-httputils-012.tar.gz"
diff --git a/testing/go-jsonnet/APKBUILD b/testing/go-jsonnet/APKBUILD
new file mode 100644
index 00000000000..cbf26ec4a88
--- /dev/null
+++ b/testing/go-jsonnet/APKBUILD
@@ -0,0 +1,40 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=go-jsonnet
+pkgver=0.20.0
+pkgrel=6
+pkgdesc="Implementation of Jsonnet in Go"
+url="https://jsonnet.org"
+arch="all"
+license="Apache-2.0"
+makedepends="go"
+source="$pkgname-$pkgver.tar.gz::https://github.com/google/go-jsonnet/archive/refs/tags/v$pkgver.tar.gz"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+case "$CARCH" in
+ s390x|riscv64) options="!check" ;; # blocked by rapidyaml -> jsonnet-dev
+ *) checkdepends="jsonnet-dev" ;;
+esac
+
+build() {
+ for bin in jsonnet jsonnetfmt jsonnet-deps jsonnet-lint; do
+ go build ./cmd/$bin
+ done
+}
+
+check() {
+ # C bindings tests (using Python) depend on the vendored jsonnet C++ source code
+ go test ./...
+}
+
+package() {
+ for bin in jsonnet jsonnetfmt jsonnet-deps jsonnet-lint; do
+ install -Dm755 ./$bin -t "$pkgdir"/usr/bin/
+ done
+}
+
+sha512sums="
+0ba06e254a6442764fd016c912968ab373b7fd21044175bbbc465b8fbda42f669bcbbd30d518427279d44f84b9b7678f7152192116c58c4b0bd1642f24136a3c go-jsonnet-0.20.0.tar.gz
+"
diff --git a/testing/go-mtpfs/APKBUILD b/testing/go-mtpfs/APKBUILD
index ed81965210b..7874e81571e 100644
--- a/testing/go-mtpfs/APKBUILD
+++ b/testing/go-mtpfs/APKBUILD
@@ -1,7 +1,7 @@
-# Maintainer: Dekedro <dekedro@tankers.xyz>
+# Maintainer: Dekedro <dekedro@protonmail.com>
pkgname=go-mtpfs
pkgver=1.0.0
-pkgrel=4
+pkgrel=19
pkgdesc="Mount MTP devices over FUSE"
url="https://github.com/hanwen/go-mtpfs"
arch="all"
@@ -10,6 +10,10 @@ makedepends="go libusb-dev"
options="net !check" # tests require MTP device to be connected
source="$pkgname-$pkgver.tar.gz::https://github.com/hanwen/go-mtpfs/archive/refs/tags/v$pkgver.tar.gz"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
build() {
go build
}
diff --git a/testing/go-mux/APKBUILD b/testing/go-mux/APKBUILD
deleted file mode 100644
index ea0dc6e3767..00000000000
--- a/testing/go-mux/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Maintainer: Leonardo Arena <rnalrd@alpinelinux.org>
-pkgname=go-mux
-_pkgname=mux
-_vendor=gorilla
-pkgver=1.7.3
-pkgrel=5
-pkgdesc="A powerful URL router and dispatcher for golang"
-url="https://www.gorillatoolkit.org/"
-arch="noarch"
-license="BSD-3-Clause"
-depends="go"
-subpackages="$pkgname-doc"
-options="!check" # no testsuite
-source="$pkgname-$pkgver.tar.gz::https://github.com/gorilla/$_pkgname/archive/v$pkgver.tar.gz"
-builddir="$srcdir"/$_pkgname-$pkgver
-
-build() {
- return 0
-}
-
-package() {
- mkdir -p "$pkgdir"/usr/share/doc/$_vendor/$pkgname \
- "$pkgdir"/usr/lib/go/src/github.com/$_vendor/$_pkgname
- for file in \
- LICENSE \
- README.* \
- COPYRIGHT \
- AUTHORS \
- ; do \
- test -e $file && mv $file "$pkgdir"/usr/share/doc/$_vendor/$_pkgname
- done
- mv -- *.go "$pkgdir"/usr/lib/go/src/github.com/$_vendor/$_pkgname
-}
-
-sha512sums="
-90e3da0f680ea0cf8d771cae9cbb5e35867f0e0a08f9ab7d22048b19851b57f1353f435abff7ea1db3c190081e363092e93cd6a57c2a64b6531458c2f6054365 go-mux-1.7.3.tar.gz
-"
diff --git a/testing/go-nats/APKBUILD b/testing/go-nats/APKBUILD
deleted file mode 100644
index 347a1db3f41..00000000000
--- a/testing/go-nats/APKBUILD
+++ /dev/null
@@ -1,34 +0,0 @@
-# Maintainer: Leonardo Arena <rnalrd@alpinelinux.org>
-pkgname=go-nats
-pkgver=1.7.2
-pkgrel=4
-pkgdesc="Golang client for NATS, the cloud native messaging system"
-url="https://github.com/nats-io/go-nats"
-arch="noarch"
-license="MIT"
-depends="go"
-subpackages="$pkgname-doc"
-_vendor="nats-io"
-options="!check"
-source="$pkgname-$pkgver.tar.gz::https://github.com/$_vendor/$pkgname/archive/v$pkgver.tar.gz"
-builddir="$srcdir"/$pkgname-$pkgver
-
-package() {
- cd "$builddir"
- mkdir -p "$pkgdir"/usr/share/doc/$_vendor/$pkgname \
- "$pkgdir"/usr/lib/go/src/github.com/$_vendor/$pkgname
- # some programs look for "nats" library
- ln -s go-nats "$pkgdir"/usr/lib/go/src/github.com/$_vendor/nats
- for file in \
- LICENSE \
- README.* \
- COPYRIGHT \
- AUTHORS \
- TODO.* \
- ; do \
- test -e $file && mv $file "$pkgdir"/usr/share/doc/$_vendor/$pkgname
- done
- mv * "$pkgdir"/usr/lib/go/src/github.com/$_vendor/$pkgname
-}
-
-sha512sums="60656b1fb963b5b9a92107ff76c1160ddc55d5bf228f7065b141cfed40d9c528b7c1ff10491392709ecd52785185a60613bc1843c5b2d03adaf0f5c69df84bb0 go-nats-1.7.2.tar.gz"
diff --git a/testing/go-nuid/APKBUILD b/testing/go-nuid/APKBUILD
deleted file mode 100644
index 0f55e57ea09..00000000000
--- a/testing/go-nuid/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Maintainer: Leonardo Arena <rnalrd@alpinelinux.org>
-pkgname=go-nuid
-_pkgname=nuid
-_vendor="nats-io"
-pkgver=1.0.0
-pkgrel=7
-pkgdesc="NATS Unique Identifiers"
-url="https://github.com/$_vendor/$_pkgname"
-arch="noarch"
-license="MIT"
-depends="go"
-subpackages="$pkgname-doc"
-options="!check" # no testsuite
-source="$pkgname-$pkgver.tar.gz::https://github.com/$_vendor/$_pkgname/archive/v$pkgver.tar.gz"
-builddir="$srcdir"/$_pkgname-$pkgver
-
-build() {
- return 0
-}
-
-package() {
- cd "$builddir"
- mkdir -p "$pkgdir"/usr/share/doc/$_vendor/$pkgname \
- "$pkgdir"/usr/lib/go/src/vendor/github.com/$_vendor/$_pkgname
- for file in \
- LICENSE \
- README.* \
- COPYRIGHT \
- AUTHORS \
- ; do \
- test -e $file && mv $file "$pkgdir"/usr/share/doc/$_vendor/$pkgname
- done
- mv * "$pkgdir"/usr/lib/go/src/vendor/github.com/$_vendor/$_pkgname
-}
-
-sha512sums="b4a02aae9b29ee00bc482d7eda6ff9fdb1e64419e0d728ce4c1180027e6e4846444ace2376abf7a0f597c5e08a27594708d48257348555b1c611d6a588e2a734 go-nuid-1.0.0.tar.gz"
diff --git a/testing/go-passbolt-cli/APKBUILD b/testing/go-passbolt-cli/APKBUILD
index 2b7eb601e65..edceadae8cf 100644
--- a/testing/go-passbolt-cli/APKBUILD
+++ b/testing/go-passbolt-cli/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Thomas Kienlen <kommander@laposte.net>
-# Maintainer: Thomas Kienlen <kommander@laposte.net>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=go-passbolt-cli
-pkgver=0.1.7
-pkgrel=3
+pkgver=0.3.1
+pkgrel=0
pkgdesc="Command-line tool to interact with Passbolt"
url="https://github.com/passbolt/go-passbolt-cli"
arch="all"
@@ -13,11 +13,12 @@ source="
passbolt-cli-helper.sh
"
-export GOFLAGS="$GOFLAGS -modcacherw"
-export GOPATH="$srcdir"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
build() {
- go build -trimpath -o go-passbolt-cli
+ go build -o go-passbolt-cli
}
check() {
@@ -30,6 +31,6 @@ package() {
}
sha512sums="
-d67ab521ab664ae6cd6b033dd316dc7134c295c02bfbd44bf82cf4e101ed02a8fb3ba1086e1fd115d3307c8d138ebaf008e23053aba598cbe25276209fd27865 go-passbolt-cli-0.1.7.tar.gz
+d6f57f897d47597d6c0399ac5a0096fdb1c5ee371fac8ff07d75c679623886f81b90a3bdc6356df0ab0b44323fb73ace2d5128dd87238321f91a8a1d80aed905 go-passbolt-cli-0.3.1.tar.gz
93daf603af9945e70cd009eb7a9326049622299b3f1f55b41ae98f1eaa07ce8778d27915bf1e96aa7b7d34c492ab0ce11d8481f616b9ca464e497b82bd18289f passbolt-cli-helper.sh
"
diff --git a/testing/go-phoenix/APKBUILD b/testing/go-phoenix/APKBUILD
deleted file mode 100644
index cb4f16ac5dd..00000000000
--- a/testing/go-phoenix/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Maintainer: Leonardo Arena <rnalrd@alpinelinux.org>
-pkgname=go-phoenix
-_pkgname=phoenix
-_vendor="strukturag"
-pkgver=1.0.2
-_ver=${pkgver//./}
-pkgrel=7
-pkgdesc="Go library providing support functionality for application startup, configuration, logging, and profiling."
-url="https://github.com/$_vendor/$_pkgname"
-arch="noarch"
-license="BSD-3-Clause"
-depends="go"
-subpackages="$pkgname-doc"
-options="!check" # no testsuite
-source="$pkgname-$pkgver.tar.gz::https://github.com/strukturag/$_pkgname/archive/${_pkgname}_v$_ver.tar.gz"
-builddir="$srcdir"/$_pkgname-${_pkgname}_v$_ver
-
-build() {
- return 0
-}
-
-package() {
- cd "$builddir"
- mkdir -p "$pkgdir"/usr/share/doc/$_vendor/$pkgname \
- "$pkgdir"/usr/lib/go/src/github.com/$_vendor/$_pkgname
- for file in \
- LICENSE \
- README.* \
- COPYRIGHT \
- AUTHORS \
- ; do \
- test -e $file && mv $file "$pkgdir"/usr/share/doc/$_vendor/$pkgname
- done
- mv * "$pkgdir"/usr/lib/go/src/github.com/$_vendor/$_pkgname
-}
-
-sha512sums="7b673e57135098b99fcc54cbe6b72dbd84a0342e2f8371e3b815e0a7598c2e4d4dccbbe6a71d250b88f9ad9ce285a4e108886ff3d2a77acc7eba1cf19bd4f7a2 go-phoenix-1.0.2.tar.gz"
diff --git a/testing/go-pkac/APKBUILD b/testing/go-pkac/APKBUILD
deleted file mode 100644
index eea21004758..00000000000
--- a/testing/go-pkac/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Maintainer: Leonardo Arena <rnalrd@alpinelinux.org>
-pkgname=go-pkac
-_pkgname=pkac
-_vendor="longsleep"
-pkgver=0.1.0
-pkgrel=6
-pkgdesc="SPKAC/PKAC HTML keygen element data decoding for Go"
-url="https://github.com/$_vendor/$_pkgname"
-arch="noarch"
-license="BSD-3-Clause"
-depends="go"
-subpackages="$pkgname-doc"
-options="!check" # no testsuite
-source="$pkgname-$pkgver.tar.gz::https://github.com/$_vendor/$_pkgname/archive/$pkgver.tar.gz"
-builddir="$srcdir"/$_pkgname-$pkgver
-
-build() {
- return 0
-}
-
-package() {
- cd "$builddir"
- mkdir -p "$pkgdir"/usr/share/doc/$_vendor/$pkgname \
- "$pkgdir"/usr/lib/go/src/github.com/$_vendor/$_pkgname
- for file in \
- LICENSE \
- README.md \
- COPYRIGHT \
- AUTHORS \
- ; do \
- test -e $file && mv $file "$pkgdir"/usr/share/doc/$_vendor/$pkgname
- done
- mv * "$pkgdir"/usr/lib/go/src/github.com/$_vendor/$_pkgname
-}
-
-sha512sums="0c279736f116dc585ae2475cb727915c88b2424efa219a115b33f5c2da2272caa8faab0eee93f8473c749d5dea1a10f1ab32b10f7e17a69bf11380a1b066c99a go-pkac-0.1.0.tar.gz"
diff --git a/testing/go-securecookie/APKBUILD b/testing/go-securecookie/APKBUILD
deleted file mode 100644
index 2f5ba0b3a85..00000000000
--- a/testing/go-securecookie/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Maintainer: Leonardo Arena <rnalrd@alpinelinux.org>
-pkgname=go-securecookie
-_pkgname=securecookie
-_vendor=gorilla
-pkgver=1.1
-pkgrel=8
-pkgdesc="Encodes and decodes authenticated and optionally encrypted cookie values for Go"
-url="https://www.gorillatoolkit.org/"
-arch="noarch"
-license="BSD-3-Clause"
-depends="go"
-subpackages="$pkgname-doc"
-options="!check" # no testsuite
-source="$pkgname-$pkgver.tar.gz::https://github.com/$_vendor/$_pkgname/archive/v$pkgver.tar.gz"
-builddir="$srcdir"/$_pkgname-$pkgver
-
-build() {
- return 0
-}
-
-package() {
- mkdir -p "$pkgdir"/usr/share/doc/$_vendor/$pkgname \
- "$pkgdir"/usr/lib/go/src/github.com/$_vendor/$_pkgname
- for file in \
- LICENSE \
- README.* \
- COPYRIGHT \
- AUTHORS \
- ; do \
- test -e $file && mv $file "$pkgdir"/usr/share/doc/$_vendor/$pkgname
- done
- mv -- * "$pkgdir"/usr/lib/go/src/github.com/$_vendor/$_pkgname
-}
-
-sha512sums="
-6473fdeb32f7a5182dc836e9588f3b7c2a29e1a244f36ac2077caad7a60dedeb5acf2da7766d270a5ef0ab1cef2c229e4b296cdf259569af1e9c99a382e31c2b go-securecookie-1.1.tar.gz
-"
diff --git a/testing/go-sloth/APKBUILD b/testing/go-sloth/APKBUILD
deleted file mode 100644
index 8fc87f6df22..00000000000
--- a/testing/go-sloth/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Maintainer: Leonardo Arena <rnalrd@alpinelinux.org>
-pkgname=go-sloth
-_pkgname=sloth
-_vendor="strukturag"
-pkgver=0.9.2
-pkgrel=7
-pkgdesc="A tiny REST framework for Go"
-url="https://github.com/$_vendor/$_pkgname"
-arch="noarch"
-license="MIT"
-depends="go"
-subpackages="$pkgname-doc"
-options="!check"
-source="$pkgname-$pkgver.tar.gz::https://github.com/$_vendor/$_pkgname/archive/v$pkgver.tar.gz"
-builddir="$srcdir"/${_pkgname}-$pkgver
-
-build() {
- return 0
-}
-
-package() {
- cd "$builddir"
- mkdir -p "$pkgdir"/usr/share/doc/$_vendor/$pkgname \
- "$pkgdir"/usr/lib/go/src/github.com/$_vendor/$_pkgname
- for file in \
- LICENSE \
- README.* \
- COPYRIGHT \
- AUTHORS.* \
- ; do \
- test -e $file && mv $file "$pkgdir"/usr/share/doc/$_vendor/$pkgname
- done
- mv *.go "$pkgdir"/usr/lib/go/src/github.com/$_vendor/$_pkgname
-}
-
-sha512sums="2d7550e2cd0f7ae259567a5611886bb70132ca0bf5fc7e85f80f6cb31233cc45120cd8feb862666f31b43fd95de83713e7cfc38687074ea6659b9dd6dbd08332 go-sloth-0.9.2.tar.gz"
diff --git a/testing/go-spreed-turnservicecli/APKBUILD b/testing/go-spreed-turnservicecli/APKBUILD
deleted file mode 100644
index 1d72e89163e..00000000000
--- a/testing/go-spreed-turnservicecli/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Maintainer: Leonardo Arena <rnalrd@alpinelinux.org>
-pkgname=go-spreed-turnservicecli
-_pkgname=spreed-turnservicecli
-_vendor="strukturag"
-pkgver=0.1.0
-pkgrel=7
-pkgdesc="TURN service client implementation for Go"
-url="https://github.com/$_vendor/$_pkgname"
-arch="noarch"
-license="AGPL-3.0-only"
-depends="go"
-subpackages="$pkgname-doc"
-options="!check"
-source="$pkgname-$pkgver.tar.gz::https://github.com/$_vendor/$_pkgname/archive/v$pkgver.tar.gz"
-builddir="$srcdir"/$_pkgname-$pkgver
-
-build() {
- return 0
-}
-
-package() {
- cd "$builddir"
- mkdir -p "$pkgdir"/usr/share/doc/$_vendor/$pkgname \
- "$pkgdir"/usr/lib/go/src/github.com/$_vendor/$_pkgname
- for file in \
- LICENSE \
- README.* \
- COPYRIGHT \
- AUTHORS \
- ; do \
- test -e $file && mv $file "$pkgdir"/usr/share/doc/$_vendor/$pkgname
- done
- mv * "$pkgdir"/usr/lib/go/src/github.com/$_vendor/$_pkgname
-}
-
-sha512sums="a9b82985154c8d0ffa85c684204650fd28af4e868f3c20c1f1524144ab208adb7199f694c3a0787f09994485ad64f857321d41773f80ac18f22161f01273459d go-spreed-turnservicecli-0.1.0.tar.gz"
diff --git a/testing/go-swag/APKBUILD b/testing/go-swag/APKBUILD
new file mode 100644
index 00000000000..09808eb35cb
--- /dev/null
+++ b/testing/go-swag/APKBUILD
@@ -0,0 +1,46 @@
+# Contributor: Kevin Daudt <kdaudt@alpinelinux.org>
+# Maintainer: leso-kn <info@lesosoftware.com>
+pkgname=go-swag
+pkgver=1.8.12
+pkgrel=4
+pkgdesc="Automatically generate RESTful API documentation with Swagger 2.0 for Go"
+url="https://github.com/swaggo/swag"
+arch="all"
+license="MIT"
+makedepends="go"
+# upstream issue (enums-test-32bit): https://github.com/swaggo/swag/issues/1633
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/swaggo/swag/archive/refs/tags/v$pkgver.tar.gz
+ enums-test-32bit.patch
+ "
+builddir="$srcdir/swag-$pkgver"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ make build
+}
+
+check() {
+ # do not NOT as root! some tests fail if run as root.
+ export GOROOT="/usr/lib/go"
+
+ if [ "$CARCH" = "riscv64" ]; then
+ # TestGen_BuildDescriptionWithQuotes makes use of 'go build -buildmode=plugin' which is not supported on riscv64.
+ go test -run '!(^(TestGen_BuildDescriptionWithQuotes)$)' ./...
+ else
+ make test
+ fi
+}
+
+package() {
+ install -Dm0755 swag "$pkgdir"/usr/bin/go-swag
+ ln -s /usr/bin/go-swag "$pkgdir/usr/bin/swag"
+}
+
+sha512sums="
+29c29c0a9bd17c4b783436967c7c2a1a0fcde2ad11dfd4cb6ee26991f26c49c6fdd541c7a5d62628c3aa9b4f56a657d1ecaf46dd48b57264f4420cda2e984fee go-swag-1.8.12.tar.gz
+24a30976e7aab4708cc8e740ff77a99d5ce5b0bde0dffe4598161ab53ebbaa3ac39c19acb83d290cca9a38bc3515cb10ec8310def6a9a016f98ff86075d591a2 enums-test-32bit.patch
+"
diff --git a/testing/go-swag/enums-test-32bit.patch b/testing/go-swag/enums-test-32bit.patch
new file mode 100644
index 00000000000..770388886a1
--- /dev/null
+++ b/testing/go-swag/enums-test-32bit.patch
@@ -0,0 +1,22 @@
+diff --git a/enums_test.go b/enums_test.go
+index dbae10d..ca5f189 100644
+--- a/enums_test.go
++++ b/enums_test.go
+@@ -2,6 +2,7 @@ package swag
+
+ import (
+ "encoding/json"
++ "math"
+ "os"
+ "path/filepath"
+ "testing"
+@@ -21,7 +22,8 @@ func TestParseGlobalEnums(t *testing.T) {
+ assert.NoError(t, err)
+ assert.Equal(t, string(expected), string(b))
+ constsPath := "github.com/swaggo/swag/testdata/enums/consts"
+- assert.Equal(t, 64, p.packages.packages[constsPath].ConstTable["uintSize"].Value)
++ bitsizeHostUint := int(math.Round(math.Log2(float64(^uintptr(0)))))
++ assert.Equal(t, bitsizeHostUint, p.packages.packages[constsPath].ConstTable["uintSize"].Value)
+ assert.Equal(t, int32(62), p.packages.packages[constsPath].ConstTable["maxBase"].Value)
+ assert.Equal(t, 8, p.packages.packages[constsPath].ConstTable["shlByLen"].Value)
+ assert.Equal(t, 255, p.packages.packages[constsPath].ConstTable["hexnum"].Value)
diff --git a/testing/go-uuid/APKBUILD b/testing/go-uuid/APKBUILD
deleted file mode 100644
index a3aff75759b..00000000000
--- a/testing/go-uuid/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Maintainer: Leonardo Arena <rnalrd@alpinelinux.org>
-pkgname=go-uuid
-_pkgname=go.uuid
-pkgver=1.2.0
-pkgrel=6
-pkgdesc="UUID package for Go"
-url="https://github.com/satori/$_pkgname"
-arch="noarch"
-license="MIT"
-depends="go"
-subpackages="$pkgname-doc"
-_vendor="satori"
-options="!check"
-source="$pkgname-$pkgver.tar.gz::https://github.com/$_vendor/$_pkgname/archive/v$pkgver.tar.gz"
-builddir="$srcdir"/$_pkgname-$pkgver
-
-build() {
- return 0
-}
-
-package() {
- cd "$builddir"
- mkdir -p "$pkgdir"/usr/share/doc/$_vendor/$pkgname \
- "$pkgdir"/usr/lib/go/src/github.com/$_vendor/$_pkgname
- for file in \
- LICENSE \
- README.* \
- COPYRIGHT \
- AUTHORS \
- ; do \
- test -e $file && mv $file "$pkgdir"/usr/share/doc/$_vendor/$pkgname
- done
- mv * "$pkgdir"/usr/lib/go/src/github.com/$_vendor/$_pkgname
-}
-
-sha512sums="ed1089397ec2bd4f8852ec3d0888a48be73f183e1b2e582c74fcc6363f605bbcf7dcbb26142eeffe23026b72ec85dbe6af52ae1e16234258dd9a2d7a6bdc8dae go-uuid-1.2.0.tar.gz"
diff --git a/testing/go-websocket/APKBUILD b/testing/go-websocket/APKBUILD
deleted file mode 100644
index 1f1324e0291..00000000000
--- a/testing/go-websocket/APKBUILD
+++ /dev/null
@@ -1,34 +0,0 @@
-# Maintainer: Leonardo Arena <rnalrd@alpinelinux.org>
-pkgname=go-websocket
-_pkgname=websocket
-_vendor=gorilla
-pkgver=1.4.0
-pkgrel=5
-pkgdesc="A WebSocket implementation for Go"
-url="https://www.gorillatoolkit.org/"
-arch="noarch"
-license="BSD-2-Clause"
-depends="go"
-subpackages="$pkgname-doc"
-options="!check"
-source="$pkgname-$pkgver.tar.gz::https://github.com/$_vendor/$_pkgname/archive/v$pkgver.tar.gz"
-builddir="$srcdir"/$_pkgname-$pkgver
-
-package() {
- mkdir -p "$pkgdir"/usr/share/doc/$_vendor/$pkgname \
- "$pkgdir"/usr/lib/go/src/github.com/$_vendor/$_pkgname
- for file in \
- LICENSE \
- README.* \
- COPYRIGHT \
- AUTHORS \
- examples \
- ; do \
- test -e $file && mv $file "$pkgdir"/usr/share/doc/$_vendor/$pkgname
- done
- mv -- * "$pkgdir"/usr/lib/go/src/github.com/$_vendor/$_pkgname
-}
-
-sha512sums="
-c358358d8c081e32eb06bde901c1d060de7ca08c2a60541dc06f70936a94de3d6a8ae26dd86ebceeeef6c2b75f9c79a0c4a1f8fc6ee84f5ed7ec9fe6f9c7dee4 go-websocket-1.4.0.tar.gz
-"
diff --git a/testing/gobang/APKBUILD b/testing/gobang/APKBUILD
index aa074192297..8a4126fbe21 100644
--- a/testing/gobang/APKBUILD
+++ b/testing/gobang/APKBUILD
@@ -3,31 +3,28 @@
pkgname=gobang
pkgver=0.1.0_alpha5
_pkgver=0.1.0-alpha.5
-pkgrel=0
+pkgrel=1
pkgdesc="Cross-platform TUI database management tool written in Rust"
url="https://github.com/TaKO8Ki/gobang"
arch="x86_64 armv7 armhf aarch64 x86" # limited by rust/cargo/ring crate
license="GPL-2.0-or-later"
makedepends="
- rust
cargo
+ cargo-auditable
+ rust
"
source="https://github.com/TaKO8Ki/gobang/archive/refs/tags/v$_pkgver/gobang-v$_pkgver.tar.gz"
options="!check" # no test suite
builddir="$srcdir/$pkgname-$_pkgver/"
-export CARGO_PROFILE_RELEASE_LTO=true
-export CARGO_PROFILE_RELEASE_PANIC=abort
-export CARGO_PROFILE_RELEASE_CODEGEN_UNITS=1
-export CARGO_PROFILE_RELEASE_OPT_LEVEL=s
prepare() {
default_prepare
- cargo fetch --locked
+ cargo fetch --target="$CTARGET" --locked
}
build() {
- cargo build --release --frozen
+ cargo auditable build --release --frozen
}
package() {
diff --git a/testing/gobuster/APKBUILD b/testing/gobuster/APKBUILD
index 90112427ad2..952961cb56d 100644
--- a/testing/gobuster/APKBUILD
+++ b/testing/gobuster/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Pedro Filipe <xpecex@outlook.com>
pkgname=gobuster
-pkgver=3.1.0
-pkgrel=5
+pkgver=3.6.0
+pkgrel=4
pkgdesc="Directory/File, DNS and VHost busting tool written in Go"
url="https://github.com/OJ/gobuster"
arch="all !s390x"
@@ -9,19 +9,22 @@ license="Apache-2.0"
makedepends="go"
source="$pkgname-$pkgver.tar.gz::https://github.com/OJ/gobuster/archive/v$pkgver.tar.gz"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
build() {
- go build -ldflags "-s -w" \
- -gcflags="all=-trimpath=$GOPATH/src" \
- -asmflags="all=-trimpath=$GOPATH/src" \
- -o build/gobuster
+ go build -o build/gobuster
}
check() {
- make test
+ go test -v ./...
}
package() {
install -Dm755 "./build/gobuster" "$pkgdir/usr/bin/gobuster"
}
-sha512sums="956789e83aca3a06e04080ecf8bb723328b717019abf6b749e600c6e632c2c6a39b8ac9293521ed82c309cdcf3402a0a88107b62590d74e8947958f625c3de20 gobuster-3.1.0.tar.gz"
+sha512sums="
+838a90dfa439e7955ac190beee3871b8b3fb7bfa66ba0b42be9433cfa8b4ee695be0688a5726e7f7eea86f6cd517591b3fe4fbd10a8110874afa8c8199ce2108 gobuster-3.6.0.tar.gz
+"
diff --git a/testing/godot/APKBUILD b/testing/godot/APKBUILD
index 8a52e0bc426..bc2aff8aca5 100644
--- a/testing/godot/APKBUILD
+++ b/testing/godot/APKBUILD
@@ -1,55 +1,145 @@
# Contributor: Díaz Urbaneja Diego <sodomon2@gmail.com>
# Maintainer: Díaz Urbaneja Diego <sodomon2@gmail.com>
pkgname=godot
-pkgver=3.2.3
-pkgrel=3
-pkgdesc="An advanced, feature packed, multi-platform 2D and 3D game engine"
-url="http://www.godotengine.org"
-arch="x86_64" # deactivated for other architecture due to conflicts between binaries
+pkgver=4.1.3
+pkgrel=1
+pkgdesc="Multi-platform 2D and 3D game engine"
+url="https://godotengine.org"
license="MIT"
-# TODO: Use system freetype instead of bundled one.
+# Only armv7 and x86_64 are tested, give other architectures a try
+# build system is completely broken and refuses to detect anything correctly
+arch="x86_64 x86 armv7 aarch64"
makedepends="
alsa-lib-dev
- gcc
- libexecinfo-dev
+ enet-dev
+ freetype-dev
+ glslang-dev
+ graphite2-dev
+ harfbuzz-dev
+ icu-dev
+ libgudev-dev
+ libogg-dev
+ libpng-dev
+ libtheora-dev
+ libvorbis-dev
+ libwebp-dev
libx11-dev
libxcursor-dev
libxi-dev
libxinerama-dev
libxrandr-dev
+ mbedtls2-dev
mesa-dev
+ miniupnpc-dev
+ opusfile-dev
+ pcre2-dev
pulseaudio-dev
- python3
+ python3-dev
scons
- vulkan-headers
- yasm-dev
+ wslay-dev
+ zlib-dev
+ zstd-dev
"
-options="!check" # no testsuites
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/godotengine/godot/archive/$pkgver-stable.tar.gz
- crash_handler_x11.patch
+depends="ca-certificates-bundle"
+subpackages="$pkgname-doc $pkgname-templates"
+source="https://github.com/godotengine/godot/releases/download/$pkgver-stable/godot-$pkgver-stable.tar.xz
+ gcc13.patch
+ no-execinfo.patch
"
-builddir="$srcdir/$pkgname-$pkgver-stable"
+options="!check" # No tests
+builddir="$srcdir"/godot-"$pkgver"-stable
+_sconsflags="
+ builtin_certs=false
+ builtin_enet=false
+ builtin_freetype=false
+ builtin_glslang=false
+ builtin_graphite=false
+ builtin_harfbuzz=false
+ builtin_icu4c=false
+ builtin_libogg=false
+ builtin_libpng=false
+ builtin_libtheora=false
+ builtin_libvorbis=false
+ builtin_libwebp=false
+ builtin_mbedtls=false
+ builtin_miniupnpc=false
+ builtin_opus=false
+ builtin_pcre2=false
+ builtin_wslay=false
+ builtin_zlib=false
+ builtin_zstd=false
+ execinfo=false
+ system_certs_path=/etc/ssl/cert.pem
+ use_sowrap=false
+ speechd=false
+ use_static_cpp=false
+ "
+
+case "$CARCH" in
+aarch64|x86_64)
+ makedepends="$makedepends embree3-dev"
+ _sconsflags="$_sconsflags builtin_embree=false"
+ ;;
+esac
+
+case "$CARCH" in
+x86_64)
+ ;;
+*)
+ # only builds on x86_64
+ _sconsflags="$_sconsflags module_denoise_enabled=false"
+ ;;
+esac
build() {
- scons platform=x11 \
- tools=yes \
- target=release_debug \
- use_llvm=no \
- colored=yes \
- pulseaudio=yes \
- builtin_vulkan=yes \
- builtin_freetype=no \
- bits=64 \
- -j${JOBS:-1}
+ case "$CARCH" in
+ x86_64)
+ local arch="x86_64"
+ ;;
+ x86)
+ local arch="x86_32"
+ ;;
+ armv7)
+ local arch="arm32"
+ ;;
+ aarch64)
+ local arch="arm64"
+ ;;
+ esac
+ export BUILD_NAME="alpine_linux"
+ for target in editor template_release template_debug; do
+ scons -j${JOBS:-1} \
+ platform=linuxbsd \
+ target=$target \
+ arch=$arch \
+ $_sconsflags \
+ CFLAGS="$CFLAGS -O2 -flto=auto" \
+ CXXFLAGS="$CXXFLAGS -O2 -flto=auto" \
+ LINKFLAGS="$LDFLAGS"
+ done
}
package() {
- install -Dm644 misc/dist/linux/org.godotengine.Godot.desktop "$pkgdir/usr/share/applications/godot.desktop"
- install -Dm644 icon.svg "$pkgdir/usr/share/pixmaps/godot.svg"
+ pkgdesc="$pkgdesc (GUI editor)"
+ install -Dm644 misc/dist/linux/org.godotengine.Godot.desktop \
+ -t "$pkgdir"/usr/share/applications/
+ install -Dm644 misc/dist/linux/org.godotengine.Godot.appdata.xml \
+ -t "$pkgdir"/usr/share/metainfo/
+ install -Dm644 icon.png "$pkgdir"/usr/share/icons/hicolor/256x256/apps/godot.png
+ install -Dm644 icon.svg "$pkgdir"/usr/share/icons/hicolor/scalable/apps/godot.svg
+ install -Dm644 misc/dist/linux/godot.6 -t "$pkgdir"/usr/share/man/man6/
+ install -Dm755 bin/godot.*.editor.* "$pkgdir"/usr/bin/godot
+ install -Dm755 bin/godot.*.template_debug.* "$pkgdir"/usr/bin/godot-template-debug
+ install -Dm755 bin/godot.*.template_release.* "$pkgdir"/usr/bin/godot-template-release
+}
- install -D -m755 bin/godot.x11.opt.tools.64 "$pkgdir/usr/bin/godot"
- install -D -m644 misc/dist/linux/godot.6 "$pkgdir/usr/share/man/man6/godot.6"
+templates() {
+ pkgdesc="$pkgdesc (templates)"
+ amove usr/bin/*template*
}
-sha512sums="229a32f082e412f20533b781ee95a1e7a9039a6329fe3429f9a3388ba3aada311bcc49c2abecdeec7496ef039a81358009126b21daaeeb127c170b77c3def99f godot-3.2.3.tar.gz
-17f46f7260487d72353a5b16499e964360b8e0cb007780a485c756fd5bb36dbb422f8f9844100bf4753bcc99ab04ea58daa4ca1c1972c3fcdc22ca7efdc9efe2 crash_handler_x11.patch"
+
+sha512sums="
+e8dc812fc1bd98ce4d691d51fceb75d943fb40790c5a640e6178eb53b4de8b1078de8e1649e182963cb7beea26b2365c202f6deaea9bb679f789cd546d29f858 godot-4.1.3-stable.tar.xz
+129cf8c0331190a111b8d397b7975ef2087486d3fb083b3e02612d2a07b2601d989842f2ec591e2300819d37c4070f74b8d50194f8f9af3219452b856d534ff8 gcc13.patch
+7563942223564d5235d96a27c840ce0c9d7ceb9690ce1ed02f43c0c4e7b28e85f8311a18b79aeab545bdb83822604f05f98b561d2d00dd3a1b9cea60f528a7d8 no-execinfo.patch
+"
diff --git a/testing/godot/crash_handler_x11.patch b/testing/godot/crash_handler_x11.patch
deleted file mode 100644
index c46c2568502..00000000000
--- a/testing/godot/crash_handler_x11.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-Upstream: no
-Backtrace is not available on Musl systems
-
---- a/platform/x11/crash_handler_x11.cpp
-+++ b/platform/x11/crash_handler_x11.cpp
-@@ -49,7 +49,7 @@
- if (OS::get_singleton() == NULL) {
- abort();
- }
--
-+#if defined(__linux__) && defined(__GLIBC__)
- void *bt_buffer[256];
- size_t size = backtrace(bt_buffer, 256);
- String _execpath = OS::get_singleton()->get_executable_path();
-@@ -89,7 +89,6 @@
- free(demangled);
- }
- }
--
- List<String> args;
-
- char str[1024];
-@@ -115,6 +114,7 @@
- free(strings);
- }
- fprintf(stderr, "-- END OF BACKTRACE --\n");
-+#endif
-
- // Abort to pass the error to the OS
- abort();
diff --git a/testing/godot/gcc13.patch b/testing/godot/gcc13.patch
new file mode 100644
index 00000000000..0db5a116aa8
--- /dev/null
+++ b/testing/godot/gcc13.patch
@@ -0,0 +1,10 @@
+--- a/thirdparty/vhacd/inc/vhacdManifoldMesh.h
++++ b/thirdparty/vhacd/inc/vhacdManifoldMesh.h
+@@ -15,6 +15,7 @@
+ #pragma once
+ #ifndef VHACD_MANIFOLD_MESH_H
+ #define VHACD_MANIFOLD_MESH_H
++#include <cstdint>
+ #include "vhacdCircularList.h"
+ #include "vhacdSArray.h"
+ #include "vhacdVector.h"
diff --git a/testing/godot/no-execinfo.patch b/testing/godot/no-execinfo.patch
new file mode 100644
index 00000000000..202bc9c02aa
--- /dev/null
+++ b/testing/godot/no-execinfo.patch
@@ -0,0 +1,27 @@
+diff --git a/platform/linuxbsd/crash_handler_linuxbsd.cpp b/platform/linuxbsd/crash_handler_linuxbsd.cpp
+index 3a24546..ae7430f 100644
+--- a/platform/linuxbsd/crash_handler_linuxbsd.cpp
++++ b/platform/linuxbsd/crash_handler_linuxbsd.cpp
+@@ -37,7 +37,6 @@
+ #include "main/main.h"
+
+ #ifdef DEBUG_ENABLED
+-#define CRASH_HANDLER_ENABLED 1
+ #endif
+
+ #ifdef CRASH_HANDLER_ENABLED
+diff --git a/platform/linuxbsd/detect.py b/platform/linuxbsd/detect.py
+index 3f713d2..e27e1eb 100644
+--- a/platform/linuxbsd/detect.py
++++ b/platform/linuxbsd/detect.py
+@@ -429,8 +429,8 @@ def configure(env: "Environment"):
+ if not env["execinfo"] and platform.libc_ver()[0] != "glibc":
+ # The default crash handler depends on glibc, so if the host uses
+ # a different libc (BSD libc, musl), fall back to libexecinfo.
+- print("Note: Using `execinfo=yes` for the crash handler as required on platforms where glibc is missing.")
+- env["execinfo"] = True
++ # print("Note: Using `execinfo=yes` for the crash handler as required on platforms where glibc is missing.")
++ env["execinfo"] = False
+
+ if env["execinfo"]:
+ env.Append(LIBS=["execinfo"])
diff --git a/testing/gomaildrop/APKBUILD b/testing/gomaildrop/APKBUILD
deleted file mode 100644
index f9851e5b191..00000000000
--- a/testing/gomaildrop/APKBUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-# Contributor: Kevin Daudt <kdaudt@alpinelinux.org>
-# Maintainer: Kevin Daudt <kdaudt@alpinelinux.org>
-pkgname=gomaildrop
-pkgver=0.1
-pkgrel=0
-pkgdesc="deliver e-mail to local maildirs based on filters"
-url="https://gitlab.alpinelinux.org/kdaudt/gomaildrop"
-arch="all"
-license="MIT"
-makedepends="go redo gettext"
-source="https://gitlab.alpinelinux.org/kdaudt/gomaildrop/-/archive/v$pkgver/gomaildrop-v$pkgver.tar.gz"
-builddir="$srcdir/$pkgname-v$pkgver"
-
-export GOPATH="$srcdir/go"
-export GOFLAGS="$GOFLAGS -modcacherw -mod=readonly"
-
-build() {
- ./configure --prefix /usr
- redo build
-}
-
-check() {
- redo check
-}
-
-package() {
- cd "$builddir"
- DESTDIR="$pkgdir" redo install
-}
-
-sha512sums="
-409b5ca31e41747eeede763ec02d7b9c995fdb87ac6953a315a42e29a8dc04716c5e914afa03332b874d5a57b61329b55efd8f73c39c7c8b1cb8746032db192c gomaildrop-v0.1.tar.gz
-"
diff --git a/testing/gomp/APKBUILD b/testing/gomp/APKBUILD
new file mode 100644
index 00000000000..e7d4a401b5c
--- /dev/null
+++ b/testing/gomp/APKBUILD
@@ -0,0 +1,26 @@
+# Contributor: Hygna <hygna@proton.me>
+# Maintainer: Hygna <hygna@proton.me>
+pkgname=gomp
+pkgver=1.0.0
+pkgrel=4
+pkgdesc="MPD client inspired by ncmpcpp with builtin cover-art view and LastFM integration."
+url="https://github.com/aditya-K2/gomp"
+arch="all"
+license="GPL-3.0-only"
+makedepends="go"
+source="$pkgname-$pkgver.tar.gz::https://github.com/aditya-K2/gomp/archive/refs/tags/v$pkgver.tar.gz"
+options="!check" # no tests suite
+
+build() {
+ go generate
+ go build
+}
+
+package() {
+ install -Dm 755 gomp "$pkgdir"/usr/bin/gomp
+ install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
+
+sha512sums="
+ccbdbc0f480e53deea818cd972c51abcdc4218788170f5a1a115363a581abc30bdb207dbc7b2240867fa35c55faa9b7bfc7223e8230a313285c1cf60fe7209ee gomp-1.0.0.tar.gz
+"
diff --git a/testing/goomwwm/APKBUILD b/testing/goomwwm/APKBUILD
index 4054f2834ee..746d897eee3 100644
--- a/testing/goomwwm/APKBUILD
+++ b/testing/goomwwm/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Michael Pirogov <vbnet.ru@gmail.com>
pkgname=goomwwm
pkgver=1.0.0
-pkgrel=1
+pkgrel=4
pkgdesc="Get out of my way, Window Manager!"
url="https://github.com/seanpringle/goomwwm"
arch="all"
diff --git a/testing/gopls/APKBUILD b/testing/gopls/APKBUILD
deleted file mode 100644
index c537b0ce49c..00000000000
--- a/testing/gopls/APKBUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-# Contributor: David Florness <david@florness.com>
-# Maintainer: David Florness <david@florness.com>
-pkgname=gopls
-pkgver=0.8.4
-pkgrel=0
-pkgdesc="Language server for Go programming language"
-url="https://github.com/golang/tools/blob/master/gopls"
-license="BSD-3-Clause"
-arch="all"
-options="chmod-clean"
-makedepends="go"
-source="$pkgname-$pkgver.tar.gz::https://github.com/golang/tools/archive/gopls/v$pkgver.tar.gz"
-builddir="$srcdir/tools-$pkgname-v$pkgver/$pkgname"
-
-export GOPATH="$srcdir"
-
-check() {
- cd test
- go test
-}
-
-build() {
- go build -trimpath -o dist/gopls
-}
-
-package() {
- install -Dm755 dist/gopls "$pkgdir"/usr/bin/gopls
-}
-
-sha512sums="
-32b54a3905e2e2721c52c567511375b602078c482747173a1fa5a89decc29ef5cb15dcb4593fc5d9c6e8fa5ce793328f8ed55ca558f3c8715de0e0ef86c4ff3c gopls-0.8.4.tar.gz
-"
diff --git a/testing/goreman/APKBUILD b/testing/goreman/APKBUILD
index a6121b19895..b14631c0305 100644
--- a/testing/goreman/APKBUILD
+++ b/testing/goreman/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Thomas Kienlen <kommander@laposte.net>
# Maintainer: Thomas Kienlen <kommander@laposte.net>
pkgname=goreman
-pkgver=0.3.9
-pkgrel=3
+pkgver=0.3.15
+pkgrel=5
pkgdesc="Tool to manage Procfile-based applications"
url="https://github.com/mattn/goreman"
arch="all"
@@ -12,6 +12,9 @@ source="https://github.com/mattn/goreman/archive/v$pkgver/goreman-$pkgver.tar.gz
options="!check" # No test suite
export GOFLAGS="$GOFLAGS -modcacherw -trimpath"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
build() {
go build -o bin/goreman .
@@ -22,5 +25,5 @@ package() {
}
sha512sums="
-0ed05b347cfc01aa796559c1e6160800ba0df1c684aa910713126cfad0bb5223a4553df76c259489ccfa70b81c91806de285e78fc04012058ccd6d30f7918af9 goreman-0.3.9.tar.gz
+62b725e537bba7c3bc89c74ea300e2974db1957dc4bb1a9cc9c98970588aeefd33ab3864a5fd4cfc90b9245c329b46dd68fd88dc5664722920de722925b552c6 goreman-0.3.15.tar.gz
"
diff --git a/testing/gortr/APKBUILD b/testing/gortr/APKBUILD
index bdb40d77e01..4019390ebfa 100644
--- a/testing/gortr/APKBUILD
+++ b/testing/gortr/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Mike Crute <mike@crute.us>
# Maintainer: Mike Crute <mike@crute.us>
pkgname=gortr
-pkgver=0.14.7
+pkgver=0.14.8
pkgrel=5
pkgdesc="The RPKI-to-Router server used at Cloudflare"
url="https://rpki.cloudflare.com/"
@@ -18,17 +18,9 @@ source="$pkgname-$pkgver.tar.gz::https://github.com/cloudflare/gortr/archive/v$p
$pkgname.confd
"
-export GOPATH="$srcdir"
-
-prepare() {
- default_prepare
-
- # fix build on riscv64 (requires newer version of golang.org/x/sys)
- go mod edit -replace \
- golang.org/x/sys=golang.org/x/sys@v0.0.0-20210630005230-0f9fa26af87c
- go mod download golang.org/x/sys
-}
-
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
build() {
make \
@@ -55,6 +47,8 @@ package() {
install -Dm644 "$srcdir"/$pkgname.confd "$pkgdir"/etc/conf.d/$pkgname
}
-sha512sums="02cd38da2af1af11a3384578c81cc07098b6e0a5abdf17cd70dcc7256c7a0ec687a60d590e7ce7a133faa28d0a768ef206c7a59672a10998e52b8a2dc2752a44 gortr-0.14.7.tar.gz
+sha512sums="
+2d1793948783c40f4156f35e7b0ceb7422a09fe2d23f5d12373c8d3442688530329e1552c35ce63f6aef3b31efba10737095fde1e35e2bbb8a08fe4cbc1c311e gortr-0.14.8.tar.gz
62142d3faa1cb34b39c1e1eb9698feb81dc7c53b3b0db9607b0c8cc10f3b20affc45525641e70fbc0aa0515abd02a48fe7a8a05ea809315ad90f5e139df39801 gortr.initd
-06d5a49b90584a53ed879c12fab2d5a6d3ca0c3d35cd71e2d213b1513bb5335c3f107fabdacb0ff29f301a51e875fb5358076cdc4a366d3e400b6910bfde1ec6 gortr.confd"
+06d5a49b90584a53ed879c12fab2d5a6d3ca0c3d35cd71e2d213b1513bb5335c3f107fabdacb0ff29f301a51e875fb5358076cdc4a366d3e400b6910bfde1ec6 gortr.confd
+"
diff --git a/testing/gosu/APKBUILD b/testing/gosu/APKBUILD
index fdfbb36ac55..3142bfaa91e 100644
--- a/testing/gosu/APKBUILD
+++ b/testing/gosu/APKBUILD
@@ -1,49 +1,28 @@
# Contributor: David Huffman <storedbox@outlook.com>
# Maintainer: David Huffman <storedbox@outlook.com>
-
-_gosu_repo='github.com/tianon/gosu'
-_gosu_ver=1.14
-_gosu_src="gosu-$_gosu_ver"
-
-_runc_repo='github.com/opencontainers/runc'
-_runc_ver=1.1.0
-_runc_src="runc-$_runc_ver"
-
pkgname=gosu
-pkgver=$_gosu_ver
-pkgrel=3
+pkgver=1.17
+pkgrel=2
pkgdesc="Simple Go-based setuid+setgid+setgroups+exec"
url="https://github.com/tianon/gosu"
arch="all"
license="Apache-2.0"
makedepends="coreutils go"
-source="https://github.com/tianon/gosu/archive/$_gosu_ver/$_gosu_src.tar.gz
- https://github.com/opencontainers/runc/archive/v$_runc_ver/$_runc_src.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/tianon/gosu/archive/refs/tags/$pkgver.tar.gz"
options="!check" # require docker to run tests
-builddir="$srcdir"/$_gosu_repo
-prepare() {
- mkdir -p $_gosu_repo $_runc_repo
- mv -T $_gosu_src $_gosu_repo
- mv -T $_runc_src $_runc_repo
-
- default_prepare
-}
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
build() {
- CGO_ENABLED=0 \
- GOPATH="$startdir:$srcdir/$_runc_repo/Godeps/_workspace" \
- GO111MODULE=off \
- go build -v -ldflags '-s -w'
+ go build -v
}
package() {
- local bindir="$pkgdir/usr/bin"
- mkdir -p "$bindir"
- cp gosu "$bindir"
+ install -Dm755 gosu -t "$pkgdir"/usr/bin/
}
sha512sums="
-258bc33bf7150f4520e8b5cd0497ccfe3ee83d39c866565ec5e0cfe3ccd28ef1a5694075b301936c94a45cd44621c44e28c3e0fcd0acd465a3a4fe5cff85adf2 gosu-1.14.tar.gz
-542ea87c488fd120f2b77e53e2c197f09cd504fbe55dbe47008aaa5b0565aa300fc49f8cadc24ead796e45a4e95a30dfb08bfeefa58dc370145a218fd2869e41 runc-1.1.0.tar.gz
+5a8bd7fce5c9080118dcf2c86332671441e133e44d08baea7dbc9f622e8d1bec1a229d3d7a38846bdcdcb66538222d5871e565e71eea1677fcd5727b836cdbce gosu-1.17.tar.gz
"
diff --git a/testing/got/APKBUILD b/testing/got/APKBUILD
deleted file mode 100644
index b5de1ae6d2d..00000000000
--- a/testing/got/APKBUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-# Contributor: omni <omni+alpine@hack.org>
-# Maintainer: omni <omni+alpine@hack.org>
-pkgname=got
-_pkgname=got-portable
-pkgver=0.69
-pkgrel=0
-pkgdesc="A VCS which prioritizes ease of use and simplicity over flexibility"
-url="https://gameoftrees.org/"
-arch="all"
-license="ISC"
-makedepends="libbsd-dev util-linux-dev libressl-dev zlib-dev ncurses-dev"
-options="!check"
-subpackages="$pkgname-doc"
-source="https://gameoftrees.org/releases/portable/got-portable-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgname-$pkgver"
-
-build() {
- ./configure --prefix=/usr --exec_prefix=/usr --mandir=/usr/share/man \
- --sysconfdir=/etc --localstatedir=/var
- make
-}
-
-check() {
- make tests
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-7a8674a48fed6d0d85a8cc313be414d9636f362d8cb7b93a7f510d6ae0391f402e2a4c98443228fa48deda31f997e609a608f4256af1f8f7472ee318bc093531 got-portable-0.69.tar.gz
-"
diff --git a/testing/gotestsum/APKBUILD b/testing/gotestsum/APKBUILD
new file mode 100644
index 00000000000..d0a55a8272f
--- /dev/null
+++ b/testing/gotestsum/APKBUILD
@@ -0,0 +1,24 @@
+# Contributor: Guy Godfroy <guy.godfroy@gugod.fr>
+# Maintainer: Guy Godfroy <guy.godfroy@gugod.fr>
+pkgname=gotestsum
+pkgver=1.11.0
+pkgrel=2
+pkgdesc="Go test runner with output optimized for humans, JUnit XML for CI integration, and a summary of the test results"
+url="https://github.com/gotestyourself/gotestsum"
+arch="all"
+license="Apache-2.0"
+makedepends="go"
+source="$pkgname-$pkgver.tar.gz::https://github.com/gotestyourself/gotestsum/archive/refs/tags/v$pkgver.tar.gz"
+options="net !check" # No check available
+
+build() {
+ go build -o dist/gotestsum .
+}
+
+package() {
+ install -Dm0755 dist/* -t "$pkgdir"/usr/bin
+}
+
+sha512sums="
+600845132b0f08198951239d611122eebc7ad535194717f57ce488dc1d795f09856bea08a860e25c72eb7f2a5f573f43a9ca1dec6790098f3c105d127585211e gotestsum-1.11.0.tar.gz
+"
diff --git a/testing/goxel/APKBUILD b/testing/goxel/APKBUILD
index abc7447e523..179f3e56467 100644
--- a/testing/goxel/APKBUILD
+++ b/testing/goxel/APKBUILD
@@ -1,29 +1,34 @@
# Contributor: Díaz Urbaneja Diego <sodomon2@gmail.com>
# Maintainer: Díaz Urbaneja Diego <sodomon2@gmail.com>
pkgname=goxel
-pkgver=0.10.7
+pkgver=0.12.0
pkgrel=0
pkgdesc="Open source 3D voxel editor"
url="https://goxel.xyz/"
-arch="x86_64 x86" # only available on x86_64 and x86 due to compiling problems
+arch="all"
license="GPL-3.0-only"
makedepends="scons glfw-dev gtk+3.0-dev"
options="!check" # check function not implemented
-source="https://github.com/guillaumechereau/goxel/archive/v$pkgver/goxel-$pkgver.tar.gz
+source="https://github.com/guillaumechereau/goxel/archive/refs/tags/v$pkgver/goxel-$pkgver.tar.gz
goxel.desktop
fix-musl.patch
"
build() {
- scons mode=release
+ CFLAGS="$CFLAGS -flto=auto" \
+ CXXFLAGS="$CXXFLAGS -flto=auto" \
+ scons mode=release werror=false -j ${JOBS:-2}
}
package() {
install -Dm775 goxel "$pkgdir"/usr/bin/goxel
- install -Dm644 icon.png "$pkgdir"/usr/share/pixmaps/goxel.png
+ install -Dm644 icon.png "$pkgdir"/usr/share/icons/hicolor/1024x1024/apps/goxel.png
install -Dm644 "$srcdir"/goxel.desktop "$pkgdir"/usr/share/applications/goxel.desktop
}
-sha512sums="7d78b97c81c554ccea16d62ace4a53bbb8b09d794f1762dff09f55221d8c059557f684cbab61f2d6f6f08ec9754d8b188cc779073bb05a7ad4ef914cb2c2106b goxel-0.10.7.tar.gz
-99bd1c53c5db15412cd4d8a9454e9e6a0803209a4969bba052b95ba51b17ac43054c8c00d7cd89ab6b85f006a53b2b38d168dc290be3778966af79a67a5928ff fix-musl.patch
-10662d11d73a51d06db753b4f1727e05b1b9a5ef63ee4321cd4f445806f6162af010f89d7f98ff3ba25df14df1fb9bc8693a98d93206af208fdb28b7a49e46e9 goxel.desktop"
+
+sha512sums="
+6895d57eb393996e833b210dda09a442dc49d4cb42b2111114e925d8a0281c4f389d951d339dc2c475f59f66509e93e61deaa985860be9907d4ab222240a7080 goxel-0.12.0.tar.gz
+10662d11d73a51d06db753b4f1727e05b1b9a5ef63ee4321cd4f445806f6162af010f89d7f98ff3ba25df14df1fb9bc8693a98d93206af208fdb28b7a49e46e9 goxel.desktop
+f4305e54a67c4dc36386ba7943294537e38020c010b2483b2446a716f44072ed699358348101b2eb9229ef911b50141daab08a5462172d121f57e7ba9a8db59f fix-musl.patch
+"
diff --git a/testing/goxel/fix-musl.patch b/testing/goxel/fix-musl.patch
index 115ccb8e426..908107bb175 100644
--- a/testing/goxel/fix-musl.patch
+++ b/testing/goxel/fix-musl.patch
@@ -1,13 +1,13 @@
+diff --git a/ext_src/yocto/ext/filesystem.hpp b/ext_src/yocto/ext/filesystem.hpp
+index 860f5b2..c41e0e7 100644
--- a/ext_src/yocto/ext/filesystem.hpp
+++ b/ext_src/yocto/ext/filesystem.hpp
-@@ -1531,8 +1531,8 @@
- return rc == 0 ? (const char*)buffer : "Error in strerror_r!";
- #else
+@@ -1525,7 +1525,7 @@ GHC_INLINE std::string systemErrorText(ErrorNumber code = 0)
+ std::string msg = toUtf8(std::wstring((LPWSTR)msgBuf));
+ LocalFree(msgBuf);
+ return msg;
+-#elif defined(GHC_OS_MACOS) || ((_POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600) && !defined(_GNU_SOURCE)) || (defined(GHC_OS_ANDROID) && __ANDROID_API__ < 23) || defined(EMSCRIPTEN)
++#elif true || defined(GHC_OS_MACOS) || ((_POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600) && !defined(_GNU_SOURCE)) || (defined(GHC_OS_ANDROID) && __ANDROID_API__ < 23) || defined(EMSCRIPTEN)
char buffer[512];
-- char* msg = strerror_r(code ? code : errno, buffer, sizeof(buffer));
-- return msg ? msg : buffer;
-+ int msg = strerror_r(code ? code : errno, buffer, sizeof(buffer));
-+ return msg == 0 ? (const char*)buffer : "Error in strerror_r!";
- #endif
- }
-
+ int rc = strerror_r(code ? code : errno, buffer, sizeof(buffer));
+ return rc == 0 ? (const char*)buffer : "Error in strerror_r!";
diff --git a/testing/gpa/APKBUILD b/testing/gpa/APKBUILD
index 34200e87040..35e6bafbb01 100644
--- a/testing/gpa/APKBUILD
+++ b/testing/gpa/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer:
pkgname=gpa
pkgver=0.10.0
-pkgrel=1
+pkgrel=2
pkgdesc="A graphical user interface for the GnuPG"
url="https://gnupg.org/related_software/gpa/"
arch="all"
diff --git a/testing/gperftools/APKBUILD b/testing/gperftools/APKBUILD
new file mode 100644
index 00000000000..33bb5dc9159
--- /dev/null
+++ b/testing/gperftools/APKBUILD
@@ -0,0 +1,108 @@
+# Contributor: Alex Denes <caskd@redxen.eu>
+# Maintainer: Alex Denes <caskd@redxen.eu>
+pkgname=gperftools
+pkgver=2.10.80
+pkgrel=1
+pkgdesc="Fast, multi-threaded malloc and nifty performance analysis tools"
+url="https://github.com/gperftools/gperftools"
+# everything else fails even more tests or isn't supported
+arch="x86_64"
+license="BSD-3-Clause"
+makedepends="
+ autoconf
+ automake
+ libtool
+ libunwind-dev
+ linux-headers
+ "
+subpackages="
+ $pkgname-dev
+ $pkgname-doc
+ tcmalloc
+ tcmalloc-minimal:tcmalloc_minimal
+ tcmalloc-debug:tcmalloc_debug
+ tcmalloc-minimal-debug:tcmalloc_minimal_debug
+ tcmalloc-profiler:tcmalloc_profiler
+ "
+checkdepends="
+ curl
+ "
+builddir="$srcdir/gperftools-gperftools-$pkgver"
+source="https://github.com/gperftools/gperftools/archive/refs/tags/gperftools-$pkgver.tar.gz
+ failed-tests.patch
+ pkgconfig.patch
+ "
+
+prepare() {
+ default_prepare
+
+ autoreconf -fvi
+}
+
+build() {
+ case "$CARCH" in
+ x86_64)
+ local frame_pointers="--enable-frame-pointers"
+ ;;
+ esac
+
+ ./configure \
+ --prefix=/usr \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --enable-libunwind \
+ $frame_pointers
+
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+pprof() {
+ pkgdesc="$pkgdesc (pprof tools)"
+ depends="perl"
+
+ amove usr/bin/pprof*
+}
+
+tcmalloc() {
+ pkgdesc="$pkgdesc (tcmalloc, full variant)"
+
+ amove usr/lib/libtcmalloc.so.*
+}
+
+tcmalloc_debug() {
+ pkgdesc="$pkgdesc (tcmalloc, debug variant)"
+
+ amove usr/lib/libtcmalloc_debug.so.*
+}
+
+tcmalloc_minimal() {
+ pkgdesc="$pkgdesc (tcmalloc, minimal variant)"
+
+ amove usr/lib/libtcmalloc_minimal.so.*
+}
+
+tcmalloc_minimal_debug() {
+ pkgdesc="$pkgdesc (tcmalloc, minimal+debug variant)"
+
+ amove usr/lib/libtcmalloc_minimal_debug.so.*
+}
+
+tcmalloc_profiler() {
+ pkgdesc="$pkgdesc (tcmalloc, profiling variant)"
+
+ amove usr/lib/libtcmalloc_and_profiler.so.*
+}
+
+sha512sums="
+b30c68b8e6831c2a8d78d632862a77603a6bfb4833c9a40ba7efe43d12f58e9e203079e56510f0512ebb5bf656b1e2d7f0c2bd8f830bdf03d015c506abdb4a2d gperftools-2.10.80.tar.gz
+d4f7cb16985e8e232c0f2e5794adfc06b30d42b4df860fe21954ce79a7537571a439ce3392c652372a44499bb0f3f5ad640d7b7fb1dbf60aa739b841f4723587 failed-tests.patch
+bfec285aa83fb8cc1d494bcde50caee3faae8c23e1519c64c43bed05f3c3ccf5ef012bbcfac7a0f4dd41d82d6d2d4589bcb42697ff1e41e20ed548eb5b103ada pkgconfig.patch
+"
diff --git a/testing/gperftools/failed-tests.patch b/testing/gperftools/failed-tests.patch
new file mode 100644
index 00000000000..58db9eae775
--- /dev/null
+++ b/testing/gperftools/failed-tests.patch
@@ -0,0 +1,29 @@
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -1081,7 +1081,7 @@
+
+ if WITH_HEAP_CHECKER
+
+-TESTS += heap-checker-death_unittest.sh$(EXEEXT)
++#TESTS += heap-checker-death_unittest.sh$(EXEEXT)
+ heap_checker_death_unittest_sh_SOURCES = src/tests/heap-checker-death_unittest.sh
+ noinst_SCRIPTS += $(top_srcdir)/$(heap_checker_death_unittest_sh_SOURCES)
+ heap-checker-death_unittest.sh$(EXEEXT): $(heap_checker_death_unittest_sh_SOURCES) \
+@@ -1090,7 +1090,7 @@
+ cp -p $(top_srcdir)/$(heap_checker_death_unittest_sh_SOURCES) $@
+
+ # These are sub-programs used by heap-checker_unittest.sh
+-TESTS += heap-checker_unittest
++# TESTS += heap-checker_unittest
+ HEAP_CHECKER_UNITTEST_INCLUDES = src/config_for_unittests.h \
+ src/memory_region_map.h \
+ src/base/commandlineflags.h \
+@@ -1190,7 +1190,7 @@
+
+ if WITH_HEAP_CHECKER
+
+-TESTS += heap-checker_debug_unittest
++#TESTS += heap-checker_debug_unittest
+ heap_checker_debug_unittest_SOURCES = $(heap_checker_unittest_SOURCES)
+ heap_checker_debug_unittest_CXXFLAGS = $(heap_checker_unittest_CXXFLAGS)
+ heap_checker_debug_unittest_LDFLAGS = $(heap_checker_unittest_LDFLAGS)
diff --git a/testing/gperftools/pkgconfig.patch b/testing/gperftools/pkgconfig.patch
new file mode 100644
index 00000000000..83642d9eb9d
--- /dev/null
+++ b/testing/gperftools/pkgconfig.patch
@@ -0,0 +1,19 @@
+From: ptrcnull <git@ptrcnull.me>
+Date: Sun, 15 Oct 2023 22:45:06 +0200
+Subject: [PATCH] fix loading .pc file with new pkgconf
+
+see https://gitlab.alpinelinux.org/alpine/aports/-/issues/15364
+
+diff --git a/Makefile.am b/Makefile.am
+index 05465de..aff1899 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -1392,7 +1392,7 @@ libtcmalloc.pc: Makefile
+ echo '' >> "$@".tmp
+ echo 'Name: $(PACKAGE)' >> "$@".tmp
+ echo 'Version: $(VERSION)' >> "$@".tmp
+- echo 'Summary: Performance tools for C++' >> "$@".tmp
++ echo 'Description: Performance tools for C++' >> "$@".tmp
+ echo 'URL: https://github.com/gperftools/gperftools' >> "$@".tmp
+ echo 'Requires:' >> "$@".tmp
+ echo 'Libs: -L$${libdir} -ltcmalloc' >> "$@".tmp
diff --git a/testing/gpg-remailer/APKBUILD b/testing/gpg-remailer/APKBUILD
index f9d99ca6b9a..a41679ed4c0 100644
--- a/testing/gpg-remailer/APKBUILD
+++ b/testing/gpg-remailer/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Shiz <hi@shiz.me>
# Maintainer: Shiz <hi@shiz.me>
pkgname=gpg-remailer
-pkgver=3.04.05
+pkgver=3.04.07
pkgrel=0
pkgdesc="Decrypt GPG messages and re-encrypt them to a well-defined group"
url="https://gitlab.com/fbb-git/gpg-remailer"
@@ -28,4 +28,6 @@ package() {
rm -rf "$pkgdir"/usr/share/doc
}
-sha512sums="c3bffe98077131599484c3ea847aeecad4e3e057d69979134bf62347f792473ad8ac1b39076abc5e981745f47b03090172213942ef2de71b365cf780d42601c7 gpg-remailer-3.04.05.tar.gz"
+sha512sums="
+019089eaeffb474fffded265ca7c8d5ff9ba516fbaf2d88d03951ed9ad031e16eeceae2bd10bb09f39e658dff839f9c02b3290b929b8b7b2dc8eb044832c50ad gpg-remailer-3.04.07.tar.gz
+"
diff --git a/testing/gpg-tui/APKBUILD b/testing/gpg-tui/APKBUILD
deleted file mode 100644
index 7dc45dbb725..00000000000
--- a/testing/gpg-tui/APKBUILD
+++ /dev/null
@@ -1,42 +0,0 @@
-# Contributor: Michał Polański <michal@polanski.me>
-# Maintainer: Michał Polański <michal@polanski.me>
-pkgname=gpg-tui
-pkgver=0.8.3
-pkgrel=0
-pkgdesc="Terminal user interface for GnuPG"
-url="https://github.com/orhun/gpg-tui"
-license="MIT"
-arch="all !s390x !riscv64" # blocked by rust/cargo
-makedepends="cargo gpgme-dev libxcb-dev libxkbcommon-dev libgpg-error-dev"
-subpackages="
- $pkgname-doc
- $pkgname-bash-completion
- $pkgname-fish-completion
- $pkgname-zsh-completion
- "
-source="https://github.com/orhun/gpg-tui/archive/v$pkgver/gpg-tui-$pkgver.tar.gz"
-
-build() {
- cargo build --release --locked
-
- mkdir completions
- OUT_DIR=completions cargo run --release --bin gpg-tui-completions
-}
-
-check() {
- cargo test --release --locked
-}
-
-package() {
- install -Dm755 target/release/$pkgname "$pkgdir"/usr/bin/$pkgname
-
- install -Dm644 man/$pkgname.1 "$pkgdir"/usr/share/man/man1/$pkgname.1
-
- install -Dm644 completions/$pkgname.bash "$pkgdir"/usr/share/bash-completion/completions/$pkgname
- install -Dm644 completions/$pkgname.fish "$pkgdir"/usr/share/fish/completions/$pkgname.fish
- install -Dm644 completions/_$pkgname "$pkgdir"/usr/share/zsh/site-functions/_$pkgname
-}
-
-sha512sums="
-96b4c2fc78f27ba846e180051f186be6f41e47a2959db2531a7d0e71bd991a3cef6f35e7cd5b04adc34781b3d978c1b3011ac9d34f5a6582fa5641cf081cae7f gpg-tui-0.8.3.tar.gz
-"
diff --git a/testing/gping/APKBUILD b/testing/gping/APKBUILD
deleted file mode 100644
index 4513bed266e..00000000000
--- a/testing/gping/APKBUILD
+++ /dev/null
@@ -1,28 +0,0 @@
-# Contributor: Michał Polański <michal@polanski.me>
-# Maintainer: Michał Polański <michal@polanski.me>
-pkgname=gping
-pkgver=1.3.1
-pkgrel=0
-pkgdesc="Ping, but with a graph"
-url="https://github.com/orf/gping"
-license="MIT"
-arch="all !s390x !riscv64" # blocked by rust/cargo
-makedepends="cargo"
-source="https://github.com/orf/gping/archive/gping-v$pkgver/gping-$pkgver.tar.gz"
-builddir="$srcdir/gping-gping-v$pkgver"
-
-build() {
- cargo build --release --locked
-}
-
-check() {
- cargo test --release --locked
-}
-
-package() {
- install -Dm755 target/release/gping "$pkgdir"/usr/bin/gping
-}
-
-sha512sums="
-a1fdeb4f68916ecea4695d498f5e4b1b41c6dfdcb59a00b57749b3d782d992a00d4dd0630c16dd79ecae4ee129885710dffeb738f28c807763292f5fcb6bca80 gping-1.3.1.tar.gz
-"
diff --git a/testing/gprbuild/APKBUILD b/testing/gprbuild/APKBUILD
index e917ec2bbf0..7ff36ad2adb 100644
--- a/testing/gprbuild/APKBUILD
+++ b/testing/gprbuild/APKBUILD
@@ -1,28 +1,35 @@
# Contributor: Ian Douglas Scott <ian@iandouglasscott.com>
# Maintainer: Ian Douglas Scott <ian@iandouglasscott.com>
pkgname=gprbuild
-pkgver=2019
-pkgrel=1
+pkgver=22.0.0
+pkgrel=2
pkgdesc="Builder for multi-language systems"
arch="all !riscv64" # blocked by gcc-gnat
url="https://github.com/AdaCore/gprbuild"
license="GPL-3.0-or-later"
+makedepends="bash"
depends="gcc-gnat"
-source="$pkgname-$pkgver.tar.gz::https://community.download.adacore.com/v1/0c03c05cef70b85144ba0e624a46e8952183b666?filename=gprbuild-2019-20190517-194D8-src.tar.gz xmlada-$pkgver.tar.gz::https://community.download.adacore.com/v1/ce0b67754f149cd230ba842effeff0ab3033ed0c?filename=xmlada-2019-20190429-19B9D-src.tar.gz"
+source="gprbuild-$pkgver.tar.gz::https://github.com/AdaCore/gprbuild/archive/refs/tags/v$pkgver.tar.gz
+ xmlada-$pkgver.tar.gz::https://github.com/AdaCore/xmlada/archive/refs/tags/v$pkgver.tar.gz
+ gprconfig_kb-$pkgver.tar.gz::https://github.com/AdaCore/gprconfig_kb/archive/refs/tags/v$pkgver.tar.gz
+ "
# gprbuild doesn't seem to have tests
options="!check"
-_gprbuild_srcdir=$srcdir/$pkgname-$pkgver-20190517-194D8-src
-_xmlada_srcdir=$srcdir/xmlada-$pkgver-20190429-19B9D-src
-
build() {
- cd $_gprbuild_srcdir
- DESTDIR="$PWD/dest" ./bootstrap.sh --prefix=/usr --with-xmlada=$_xmlada_srcdir
+ DESTDIR="$PWD/dest" ./bootstrap.sh \
+ --prefix=/usr \
+ --with-xmlada="$srcdir"/xmlada-$pkgver \
+ --with-kb="$srcdir"/gprconfig_kb-$pkgver
}
package() {
mkdir -p "$pkgdir"
- cp -r $_gprbuild_srcdir/dest/usr "$pkgdir"
+ cp -r dest/usr "$pkgdir"
}
-sha512sums="0388d7e6cdf625fef40b33da764091b3283dd88714c64ecfad4b5e99253f183b1a9b717c19281e6d45cc4277a05fadb2e2ace394d6f30638664b66c97123052b gprbuild-2019.tar.gz
-f8e0e25b0aee9a7a18223ae7761603082af55134f062c767d0cd0dbf0dbcb2058fc7c57532b567fb2c6efa464a53ead57b300578e98962025866e5c3ad73e380 xmlada-2019.tar.gz"
+
+sha512sums="
+7e77d9441454670a7b3b14cff97339e654bb82e7321abd9d612a771e1559f3276057e5163b50ca08b6ab77ebb9fcfd36590ba3c9cfd28d07fce43c7673ad254a gprbuild-22.0.0.tar.gz
+7e8a0cab2f4c300fe3b0d31e00d17334e36798430e49868448caa696044964464f558cffba8f35e35a58b097c968322891119b2abd9f210737ca877f0189f32e xmlada-22.0.0.tar.gz
+69f8490af56b0e07afbfef51c12cd6361a00327af774cd0deacf8260ccc4782e1e8465a074e8a025024570ce43ba1b4b3adfbde9ae4ea372e487d342da6994d4 gprconfig_kb-22.0.0.tar.gz
+"
diff --git a/testing/gpsbabel/APKBUILD b/testing/gpsbabel/APKBUILD
new file mode 100644
index 00000000000..cbba9e13445
--- /dev/null
+++ b/testing/gpsbabel/APKBUILD
@@ -0,0 +1,63 @@
+# Maintainer: Daniel Fancsali <fancsali@gmail.com>
+pkgname=gpsbabel
+pkgver=1.8.0
+pkgrel=5
+pkgdesc="Convert, manipulate, and transfer data from GPS programs or GPS receivers"
+url="https://www.gpsbabel.org/"
+# armv7: qt5-qtwebengine disabled in b3b11fab054468f565777d32493039fe901fcef3
+arch="aarch64 x86_64"
+license="GPL-2.0-or-later"
+makedepends="
+ cmake
+ libusb-dev
+ qt5-qtserialport-dev
+ qt5-qttools-dev
+ qt5-qtwebchannel-dev
+ qt5-qtwebengine-dev
+ samurai
+ shapelib-dev
+ zlib-dev
+ "
+checkdepends="diffutils"
+subpackages="$pkgname-lang"
+source="$pkgname-$pkgver.tar.gz::https://github.com/GPSBabel/gpsbabel/archive/refs/tags/gpsbabel_${pkgver//./_}.tar.gz"
+builddir="$srcdir/gpsbabel-gpsbabel_${pkgver//./_}"
+
+build() {
+ CFLAGS="$CFLAGS -flto=auto -O2" \
+ CXXFLAGS="$CXXFLAGS -flto=auto -O2" \
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_SKIP_INSTALL_RPATH=ON \
+ -DGPSBABEL_WITH_ZLIB=pkgconfig \
+ -DGPSBABEL_WITH_SHAPELIB=pkgconfig \
+ -DGPSBABEL_WITH_LIBUSB=pkgconfig \
+ -DQT_VERSION_MAJOR=6
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure -j${JOBS:-2}
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+
+ # XXX: the above doesn't install anything (broken)
+ install -Dm755 build/gpsbabel build/gui/GPSBabelFE/gpsbabelfe -t "$pkgdir"/usr/bin
+ install -Dm644 gui/*.qm gui/coretool/*.qm -t "$pkgdir"/usr/share/gpsbabel/translations
+ install -Dm644 gui/gmapbase.html -t "$pkgdir"/usr/share/gpsbabel
+ install -Dm644 gui/gpsbabel.desktop -t "$pkgdir"/usr/share/applications
+}
+
+lang() {
+ pkgdesc="translations for $pkgname"
+ install_if="$pkgname=$pkgver-r$pkgrel lang"
+
+ amove usr/share/gpsbabel/translations
+}
+
+sha512sums="
+93137586cf887e185d96f06f59be4456cf9bae976979b9e5caad6ae8017c148d4c4c0fc182e8bd4c8547c3ed040c46f74e6f3cfb5f7b566d54fbc7fd767e27e4 gpsbabel-1.8.0.tar.gz
+"
diff --git a/testing/gpscorrelate/APKBUILD b/testing/gpscorrelate/APKBUILD
index 926c48e22a8..176d0d5af75 100644
--- a/testing/gpscorrelate/APKBUILD
+++ b/testing/gpscorrelate/APKBUILD
@@ -1,13 +1,13 @@
# Contributor: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
# Maintainer: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
pkgname=gpscorrelate
-pkgver=2.0_git20220118
-_githash=3ddce36e1a4641b67b77b5c489fe8a36b777bdeb
-pkgrel=1
+pkgver=2.0_git20230605
+_githash=fd556bc0cf9341511036f0535e76a50c1f50dcec
+pkgrel=0
pkgdesc="Program to match GPS tracks to photographs and store the matches in EXIF"
url="https://dfandrich.github.io/gpscorrelate/"
arch="all"
-license="GPL-2.0"
+license="GPL-2.0-or-later"
makedepends="
desktop-file-utils
exiv2-dev
@@ -19,7 +19,9 @@ makedepends="
libxslt-dev
"
subpackages="$pkgname-cli $pkgname-doc $pkgname-lang"
-source="$pkgname-$pkgver.tar.gz::https://github.com/dfandrich/gpscorrelate/archive/$_githash.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/dfandrich/gpscorrelate/archive/$_githash.tar.gz
+ exiv2-0.28.patch
+ "
builddir="$srcdir/$pkgname-$_githash"
build() {
@@ -40,5 +42,6 @@ cli() {
}
sha512sums="
-89e9782c1e0d474c3cf55e073f51be3d8063eff182e57744dcbfb0c832f5834fdac3fd3fcbe7e3fdbedad0bdeb73cfbdd1b3421ad0f62f3bc2d661cf30555d8d gpscorrelate-2.0_git20220118.tar.gz
+6baaf62180aaa86a0d0989808e206030d0d313428c6e51aaabb9b5ded7ecc836a91a8f9ac28b5b04f0a8f2f2d61fe53fc8d8a7d55da20d7f04c2a18ac875ef86 gpscorrelate-2.0_git20230605.tar.gz
+15ff7a1b48ac65c8a94928bf269a5c077b198a1c246a1c07a0b2749c7b228be13613e4816538542cb8e8dd6c29a3738ffe3cf67ea00e8075272f6de4229d7d5b exiv2-0.28.patch
"
diff --git a/testing/gpscorrelate/exiv2-0.28.patch b/testing/gpscorrelate/exiv2-0.28.patch
new file mode 100644
index 00000000000..48eddd24637
--- /dev/null
+++ b/testing/gpscorrelate/exiv2-0.28.patch
@@ -0,0 +1,87 @@
+Patch-Source: https://gitlab.archlinux.org/archlinux/packaging/packages/gpscorrelate/-/blob/9d84f5a7ec16d73970ab89924a106652348b7063/exiv2-0.28.patch
+--
+diff --git a/exif-gps.cpp b/exif-gps.cpp
+index d464d62..8c91cf4 100644
+--- a/exif-gps.cpp
++++ b/exif-gps.cpp
+@@ -97,7 +97,7 @@ int main(int argc, char* argv[])
+ char* ReadExifDate(const char* File, int* IncludesGPS)
+ {
+ // Open and read the file.
+- Exiv2::Image::AutoPtr Image;
++ Exiv2::Image::UniquePtr Image;
+
+ try {
+ Image = Exiv2::ImageFactory::open(File);
+@@ -154,7 +154,7 @@ char* ReadExifData(const char* File, double* Lat, double* Long, double* Elev, in
+ // much more data than the last, specifically
+ // for display purposes. For the GUI version.
+ // Open and read the file.
+- Exiv2::Image::AutoPtr Image;
++ Exiv2::Image::UniquePtr Image;
+
+ try {
+ Image = Exiv2::ImageFactory::open(File);
+@@ -273,7 +273,7 @@ char* ReadExifData(const char* File, double* Lat, double* Long, double* Elev, in
+
+ // Is the altitude below sea level? If so, negate the value.
+ GPSData = ExifRead["Exif.GPSInfo.GPSAltitudeRef"];
+- if (GPSData.count() >= 1 && GPSData.toLong() == 1)
++ if (GPSData.count() >= 1 && GPSData.toUint32() == 1)
+ {
+ // Negate the elevation.
+ *Elev = -*Elev;
+@@ -292,7 +292,7 @@ char* ReadGPSTimestamp(const char* File, char* DateStamp, char* TimeStamp, int*
+ // much more data than the last, specifically
+ // for display purposes. For the GUI version.
+ // Open and read the file.
+- Exiv2::Image::AutoPtr Image;
++ Exiv2::Image::UniquePtr Image;
+
+ try {
+ Image = Exiv2::ImageFactory::open(File);
+@@ -463,7 +463,7 @@ int WriteGPSData(const char* File, const struct GPSPoint* Point,
+ struct utimbuf utb;
+ if (NoChangeMtime)
+ stat(File, &statbuf);
+- Exiv2::Image::AutoPtr Image;
++ Exiv2::Image::UniquePtr Image;
+
+ try {
+ Image = Exiv2::ImageFactory::open(File);
+@@ -493,7 +493,7 @@ int WriteGPSData(const char* File, const struct GPSPoint* Point,
+ // Do all the easy constant ones first.
+ // GPSVersionID tag: standard says it should be four bytes: 02 02 00 00
+ // (and, must be present).
+- Exiv2::Value::AutoPtr Value = Exiv2::Value::create(Exiv2::unsignedByte);
++ Exiv2::Value::UniquePtr Value = Exiv2::Value::create(Exiv2::unsignedByte);
+ Value->read("2 2 0 0");
+ replace(ExifToWrite, Exiv2::ExifKey("Exif.GPSInfo.GPSVersionID"), Value.get());
+ // Datum: the datum of the measured data. The default is WGS-84.
+@@ -643,7 +643,7 @@ int WriteFixedDatestamp(const char* File, time_t Time)
+ struct utimbuf utb;
+ stat(File, &statbuf);
+
+- Exiv2::Image::AutoPtr Image;
++ Exiv2::Image::UniquePtr Image;
+
+ try {
+ Image = Exiv2::ImageFactory::open(File);
+@@ -672,7 +672,7 @@ int WriteFixedDatestamp(const char* File, time_t Time)
+ ExifToWrite.erase(ExifToWrite.findKey(Exiv2::ExifKey("Exif.GPSInfo.GPSDateStamp")));
+ ExifToWrite["Exif.GPSInfo.GPSDateStamp"] = ScratchBuf;
+
+- Exiv2::Value::AutoPtr Value = Exiv2::Value::create(Exiv2::unsignedRational);
++ Exiv2::Value::UniquePtr Value = Exiv2::Value::create(Exiv2::unsignedRational);
+ snprintf(ScratchBuf, sizeof(ScratchBuf), "%d/1 %d/1 %d/1",
+ TimeStamp.tm_hour, TimeStamp.tm_min,
+ TimeStamp.tm_sec);
+@@ -705,7 +705,7 @@ int RemoveGPSExif(const char* File, int NoChangeMtime, int NoWriteExif)
+ stat(File, &statbuf);
+
+ // Open the file and start reading.
+- Exiv2::Image::AutoPtr Image;
++ Exiv2::Image::UniquePtr Image;
+
+ try {
+ Image = Exiv2::ImageFactory::open(File);
diff --git a/testing/gqrx/APKBUILD b/testing/gqrx/APKBUILD
deleted file mode 100644
index 366feb614e8..00000000000
--- a/testing/gqrx/APKBUILD
+++ /dev/null
@@ -1,44 +0,0 @@
-# Contributor: Oleg Titov <oleg.titov@gmail.com>
-# Maintainer: Oleg Titov <oleg.titov@gmail.com>
-pkgname=gqrx
-pkgver=2.15.9
-pkgrel=2
-pkgdesc="Interactive SDR receiver waterfall for many devices"
-url="https://gqrx.dk/"
-arch="aarch64 x86_64" # limited by availability of gr-osmosdr
-license="GPL-3.0-or-later"
-options="!check" # No test suite from upstream
-makedepends="
- boost-dev
- cmake
- fftw-dev
- gmp-dev
- gnuradio-dev
- gr-osmosdr-dev
- libsndfile-dev
- log4cpp-dev
- mpir-dev
- pulseaudio-dev
- qt6-qtbase-dev
- qt6-qtsvg-dev
- "
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/gqrx-sdr/gqrx/archive/refs/tags/v$pkgver.tar.gz"
-
-build() {
- cmake -B build \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_BUILD_TYPE=MinSizeRel
-
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-
- install -Dm 644 -t "$pkgdir"/usr/share/doc/$pkgname/ README.md
-}
-
-sha512sums="
-0562f5c962b7fb48e5b5b8d88f15e328bfb08284b36e289e68e77528156452075eb04a0fa530b235c383495bf4008a7c80e78aae88dfcc30da6f4ba619dfd2f3 gqrx-2.15.9.tar.gz
-"
diff --git a/testing/gr-osmosdr/APKBUILD b/testing/gr-osmosdr/APKBUILD
deleted file mode 100644
index 5c402aeeb30..00000000000
--- a/testing/gr-osmosdr/APKBUILD
+++ /dev/null
@@ -1,62 +0,0 @@
-# Contributor: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
-# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
-pkgname=gr-osmosdr
-pkgver=0.2.3
-pkgrel=7
-pkgdesc="osmocom Gnu Radio Blocks"
-url="https://osmocom.org/projects/gr-osmosdr/wiki"
-arch="x86_64 aarch64" # limited by libvolk and gnuradio
-license="GPL-3.0-only"
-subpackages="$pkgname-doc $pkgname-dev"
-makedepends="
- boost-dev
- cmake
- doxygen
- fftw-dev
- gmp-dev
- gnuradio-dev
- graphviz
- hackrf-dev
- librtlsdr-dev
- libsndfile-dev
- libvolk-dev
- log4cpp-dev
- mpir-dev
- py3-numpy-dev
- py3-pybind11-dev
- python3-dev
- samurai
- soapy-sdr-dev
- uhd-dev
- "
-source="$pkgname-$pkgver.tar.gz::https://github.com/osmocom/gr-osmosdr/archive/v$pkgver.tar.gz
- use-std-shared-ptr.patch
- gnuradio-3.9-compat.patch
- fix-docstrings.patch
- add-python-bindings.patch
- "
-
-build() {
- cmake -B build -G Ninja \
- -DCMAKE_BUILD_TYPE=MinSizeRel \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -Wno-dev
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --build build --target install
-}
-
-check() {
- cmake --build build --target test
-}
-
-sha512sums="
-3c82a39972a309aa5b023b9c5e61f1fc80b797380b7a6c6c23cd4fe278cfaba3ab3019f32d38ebc01300868bb892f6aaaa7f12c9ee9b7ab5ba3e38817a40bf3e gr-osmosdr-0.2.3.tar.gz
-c0c06b9f5907db565ddea1c6ee5ebfaaa8e6bf66950581467d8173deb8cbecadc57ff32b3683eb3affd0368b11e399ded58824490cecddbe38b5b174d69b0630 use-std-shared-ptr.patch
-617edcdc27d7a9799caef1a1e778222d7954288cb767f76f81e68def2f66b4ba7640ff08866d696109a0d6bd0473bf996c3707bedadc59e283261d42c209bfbb gnuradio-3.9-compat.patch
-d66309f99144515aeae771a6bf4f64defa35f7a9f9c4c646e807c6d6df5d817346de0a66cb9114716b32990d9837ea9107efb3b2fc0fd32de7453ec235e1f667 fix-docstrings.patch
-94730f15580c8dd46803da78fe36b7c8afefc735330918c4f58beaabb0a12b5898041dfe70167d55a55e682c8536ef441d2b9ea4e3c069a637e3fbb1950716aa add-python-bindings.patch
-"
diff --git a/testing/gr-osmosdr/add-python-bindings.patch b/testing/gr-osmosdr/add-python-bindings.patch
deleted file mode 100644
index e1fea6dd15a..00000000000
--- a/testing/gr-osmosdr/add-python-bindings.patch
+++ /dev/null
@@ -1,173 +0,0 @@
-From 1f724162e1e0afd1636658c2e8fed60320f0809a Mon Sep 17 00:00:00 2001
-From: Clayton Smith <argilo@gmail.com>
-Date: Wed, 30 Dec 2020 10:05:36 -0500
-Subject: Add Python bindings
-
-Signed-off-by: Eric Wild <ewild@sysmocom.de>
----
- python/bindings/CMakeLists.txt | 3 +++
- python/bindings/device_python.cc | 27 +++++++++++++++++++++++++++
- python/bindings/python_bindings.cc | 8 ++++++++
- python/bindings/ranges_python.cc | 35 +++++++++++++++++++++++++++++++++++
- python/bindings/time_spec_python.cc | 33 +++++++++++++++++++++++++++++++++
- 5 files changed, 106 insertions(+)
- create mode 100644 python/bindings/device_python.cc
- create mode 100644 python/bindings/ranges_python.cc
- create mode 100644 python/bindings/time_spec_python.cc
-
-diff --git a/python/bindings/CMakeLists.txt b/python/bindings/CMakeLists.txt
-index ed50d7e..f2233cf 100644
---- a/python/bindings/CMakeLists.txt
-+++ b/python/bindings/CMakeLists.txt
-@@ -18,8 +18,11 @@ include(GrPybind)
- ########################################################################
-
- list(APPEND osmosdr_python_files
-+ device_python.cc
- sink_python.cc
- source_python.cc
-+ ranges_python.cc
-+ time_spec_python.cc
- python_bindings.cc)
-
- GR_PYBIND_MAKE_OOT(osmosdr
-diff --git a/python/bindings/device_python.cc b/python/bindings/device_python.cc
-new file mode 100644
-index 0000000..f82a48f
---- /dev/null
-+++ b/python/bindings/device_python.cc
-@@ -0,0 +1,27 @@
-+#include <pybind11/pybind11.h>
-+#include <pybind11/stl.h>
-+
-+namespace py = pybind11;
-+
-+#include <osmosdr/device.h>
-+
-+void bind_device(py::module& m)
-+{
-+ using device_t = ::osmosdr::device_t;
-+
-+ py::class_<device_t>(m, "device_t")
-+ .def(py::init<std::string&>(), py::arg("args") = "")
-+ .def("to_pp_string", &device_t::to_pp_string)
-+ .def("to_string", &device_t::to_string);
-+
-+
-+ using devices_t = ::osmosdr::devices_t;
-+
-+ py::class_<devices_t>(m, "devices_t");
-+
-+
-+ using device = ::osmosdr::device;
-+
-+ py::class_<device>(m, "device")
-+ .def_static("find", &device::find, py::arg("hint") = device_t());
-+}
-diff --git a/python/bindings/python_bindings.cc b/python/bindings/python_bindings.cc
-index fc11ee0..7204b2b 100644
---- a/python/bindings/python_bindings.cc
-+++ b/python/bindings/python_bindings.cc
-@@ -25,6 +25,10 @@ namespace py = pybind11;
- void bind_source(py::module& m);
- // ) END BINDING_FUNCTION_PROTOTYPES
-
-+void bind_device(py::module& m);
-+void bind_ranges(py::module& m);
-+void bind_time_spec(py::module& m);
-+
-
- // We need this hack because import_array() returns NULL
- // for newer Python versions.
-@@ -54,4 +58,8 @@ PYBIND11_MODULE(osmosdr_python, m)
- bind_sink(m);
- bind_source(m);
- // ) END BINDING_FUNCTION_CALLS
-+
-+ bind_device(m);
-+ bind_ranges(m);
-+ bind_time_spec(m);
- }
-diff --git a/python/bindings/ranges_python.cc b/python/bindings/ranges_python.cc
-new file mode 100644
-index 0000000..fce957c
---- /dev/null
-+++ b/python/bindings/ranges_python.cc
-@@ -0,0 +1,35 @@
-+#include <pybind11/pybind11.h>
-+
-+namespace py = pybind11;
-+
-+#include <osmosdr/ranges.h>
-+
-+void bind_ranges(py::module& m)
-+{
-+ m.attr("ALL_MBOARDS") = ::osmosdr::ALL_MBOARDS;
-+ m.attr("ALL_CHANS") = ::osmosdr::ALL_CHANS;
-+
-+
-+ using range_t = ::osmosdr::range_t;
-+
-+ py::class_<range_t>(m, "range_t")
-+ .def(py::init<double>(), py::arg("value") = 0)
-+ .def(py::init<double, double, double>(), py::arg("start"), py::arg("stop"), py::arg("step") = 0)
-+ .def("start", &range_t::start)
-+ .def("stop", &range_t::stop)
-+ .def("step", &range_t::step)
-+ .def("to_pp_string", &range_t::to_pp_string);
-+
-+
-+ using meta_range_t = ::osmosdr::meta_range_t;
-+
-+ py::class_<meta_range_t>(m, "meta_range_t")
-+ .def(py::init())
-+ .def(py::init<double, double, double>(), py::arg("start"), py::arg("stop"), py::arg("step") = 0)
-+ .def("start", &meta_range_t::start)
-+ .def("stop", &meta_range_t::stop)
-+ .def("step", &meta_range_t::step)
-+ .def("clip", &meta_range_t::clip, py::arg("value"), py::arg("clip_step") = false)
-+ .def("values", &meta_range_t::values)
-+ .def("to_pp_string", &meta_range_t::to_pp_string);
-+}
-diff --git a/python/bindings/time_spec_python.cc b/python/bindings/time_spec_python.cc
-new file mode 100644
-index 0000000..d12a3c7
---- /dev/null
-+++ b/python/bindings/time_spec_python.cc
-@@ -0,0 +1,33 @@
-+#include <pybind11/pybind11.h>
-+#include <pybind11/operators.h>
-+
-+namespace py = pybind11;
-+
-+#include <osmosdr/time_spec.h>
-+
-+void bind_time_spec(py::module& m)
-+{
-+ using time_spec_t = ::osmosdr::time_spec_t;
-+
-+ py::class_<time_spec_t>(m, "time_spec_t")
-+ .def_static("get_system_time", &time_spec_t::get_system_time)
-+ .def(py::init<double>(), py::arg("secs") = 0)
-+ .def(py::init<time_t, double>(), py::arg("full_secs"), py::arg("frac_secs") = 0)
-+ .def(py::init<time_t, long, double>(), py::arg("full_secs"), py::arg("tick_count"), py::arg("tick_rate"))
-+ .def_static("from_ticks", &time_spec_t::from_ticks, py::arg("ticks"), py::arg("tick_rate"))
-+ .def("get_tick_count", &time_spec_t::get_tick_count, py::arg("tick_rate"))
-+ .def("to_ticks", &time_spec_t::to_ticks, py::arg("tick_rate"))
-+ .def("get_real_secs", &time_spec_t::get_real_secs)
-+ .def("get_full_secs", &time_spec_t::get_full_secs)
-+ .def("get_frac_secs", &time_spec_t::get_frac_secs)
-+ .def(py::self + py::self)
-+ .def(py::self += py::self)
-+ .def(py::self - py::self)
-+ .def(py::self -= py::self)
-+ .def(py::self == py::self)
-+ .def(py::self != py::self)
-+ .def(py::self < py::self)
-+ .def(py::self > py::self)
-+ .def(py::self <= py::self)
-+ .def(py::self >= py::self);
-+}
---
-cgit v1.2.3
-
diff --git a/testing/gr-osmosdr/fix-docstrings.patch b/testing/gr-osmosdr/fix-docstrings.patch
deleted file mode 100644
index e9f42941db4..00000000000
--- a/testing/gr-osmosdr/fix-docstrings.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From f88dc7df2f6224d1724dc8b02dfa9f2fcde9a9d1 Mon Sep 17 00:00:00 2001
-From: Matt Mills <mmills@2bn.net>
-Date: Thu, 29 Oct 2020 18:47:29 -0600
-Subject: Fix docstrings in python bindings for gr namespace
-
-Signed-off-by: Eric Wild <ewild@sysmocom.de>
----
- python/bindings/docstrings/sink_pydoc_template.h | 2 +-
- python/bindings/docstrings/source_pydoc_template.h | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/python/bindings/docstrings/sink_pydoc_template.h b/python/bindings/docstrings/sink_pydoc_template.h
-index dad47cf..504105f 100644
---- a/python/bindings/docstrings/sink_pydoc_template.h
-+++ b/python/bindings/docstrings/sink_pydoc_template.h
-@@ -7,7 +7,7 @@
- *
- */
- #include "pydoc_macros.h"
--#define D(...) DOC(gr,osmosdr, __VA_ARGS__ )
-+#define D(...) DOC(osmosdr, __VA_ARGS__ )
- /*
- This file contains placeholders for docstrings for the Python bindings.
- Do not edit! These were automatically extracted during the binding process
-diff --git a/python/bindings/docstrings/source_pydoc_template.h b/python/bindings/docstrings/source_pydoc_template.h
-index f2c3ca4..17aae8e 100644
---- a/python/bindings/docstrings/source_pydoc_template.h
-+++ b/python/bindings/docstrings/source_pydoc_template.h
-@@ -7,7 +7,7 @@
- *
- */
- #include "pydoc_macros.h"
--#define D(...) DOC(gr,osmosdr, __VA_ARGS__ )
-+#define D(...) DOC(osmosdr, __VA_ARGS__ )
- /*
- This file contains placeholders for docstrings for the Python bindings.
- Do not edit! These were automatically extracted during the binding process
---
-cgit v1.2.3
-
diff --git a/testing/gr-osmosdr/gnuradio-3.9-compat.patch b/testing/gr-osmosdr/gnuradio-3.9-compat.patch
deleted file mode 100644
index ec514fd14ad..00000000000
--- a/testing/gr-osmosdr/gnuradio-3.9-compat.patch
+++ /dev/null
@@ -1,2298 +0,0 @@
-From 0d727b3ef8ea56132fd538c9aa54b671950e1297 Mon Sep 17 00:00:00 2001
-From: Matt Mills <mmills@2bn.net>
-Date: Thu, 29 Oct 2020 18:28:13 -0600
-Subject: Replace swig with pybind11 for gr3.9 master compat
-
-Signed-off-by: Eric Wild <ewild@sysmocom.de>
----
- CMakeLists.txt | 16 +-
- docs/doxygen/pydoc_macros.h | 19 ++
- docs/doxygen/swig_doc.py | 332 --------------------
- docs/doxygen/update_pydoc.py | 346 +++++++++++++++++++++
- python/CMakeLists.txt | 20 +-
- python/__init__.py | 29 +-
- python/bindings/CMakeLists.txt | 30 ++
- python/bindings/README.md | 0
- python/bindings/bind_oot_file.py | 53 ++++
- python/bindings/docstrings/README.md | 1 +
- python/bindings/docstrings/sink_pydoc_template.h | 153 +++++++++
- python/bindings/docstrings/source_pydoc_template.h | 162 ++++++++++
- python/bindings/header_utils.py | 78 +++++
- python/bindings/python_bindings.cc | 57 ++++
- python/bindings/sink_python.cc | 320 +++++++++++++++++++
- python/bindings/source_python.cc | 342 ++++++++++++++++++++
- swig/CMakeLists.txt | 57 ----
- swig/osmosdr_swig.i | 82 -----
- 18 files changed, 1583 insertions(+), 514 deletions(-)
- create mode 100644 docs/doxygen/pydoc_macros.h
- delete mode 100644 docs/doxygen/swig_doc.py
- create mode 100644 docs/doxygen/update_pydoc.py
- create mode 100644 python/bindings/CMakeLists.txt
- create mode 100644 python/bindings/README.md
- create mode 100644 python/bindings/bind_oot_file.py
- create mode 100644 python/bindings/docstrings/README.md
- create mode 100644 python/bindings/docstrings/sink_pydoc_template.h
- create mode 100644 python/bindings/docstrings/source_pydoc_template.h
- create mode 100644 python/bindings/header_utils.py
- create mode 100644 python/bindings/python_bindings.cc
- create mode 100644 python/bindings/sink_python.cc
- create mode 100644 python/bindings/source_python.cc
- delete mode 100644 swig/CMakeLists.txt
- delete mode 100644 swig/osmosdr_swig.i
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 74c54f5..b4bb535 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -41,7 +41,7 @@ set(CMAKE_BUILD_TYPE ${CMAKE_BUILD_TYPE} CACHE STRING "")
- list(INSERT CMAKE_MODULE_PATH 0 ${CMAKE_SOURCE_DIR}/cmake/Modules)
-
- # Find GNURadio (pmt and runtime are core, always included)
--find_package(Gnuradio "3.8" REQUIRED COMPONENTS blocks fft filter)
-+find_package(Gnuradio "3.9" REQUIRED COMPONENTS blocks fft filter)
-
- # Set the version information here
- set(VERSION_MAJOR 0)
-@@ -188,20 +188,11 @@ find_package(Doxygen)
- ##########
-
- find_package(PythonLibs 3)
--find_package(SWIG)
--
--if(SWIG_FOUND)
-- message(STATUS "Minimum SWIG version required is 1.3.31")
-- set(SWIG_VERSION_CHECK FALSE)
-- if("${SWIG_VERSION}" VERSION_GREATER "1.3.30")
-- set(SWIG_VERSION_CHECK TRUE)
-- endif()
--endif(SWIG_FOUND)
-+find_package(pybind11)
-
- GR_REGISTER_COMPONENT("Python support" ENABLE_PYTHON
- PYTHONLIBS_FOUND
-- SWIG_FOUND
-- SWIG_VERSION_CHECK
-+ pybind11_FOUND
- )
-
- ########################################################################
-@@ -269,7 +260,6 @@ add_custom_target(uninstall
- add_subdirectory(include/osmosdr)
- add_subdirectory(lib)
- if(ENABLE_PYTHON)
-- add_subdirectory(swig)
- add_subdirectory(python)
- add_subdirectory(grc)
- add_subdirectory(apps)
-diff --git a/docs/doxygen/pydoc_macros.h b/docs/doxygen/pydoc_macros.h
-new file mode 100644
-index 0000000..98bf7cd
---- /dev/null
-+++ b/docs/doxygen/pydoc_macros.h
-@@ -0,0 +1,19 @@
-+#ifndef PYDOC_MACROS_H
-+#define PYDOC_MACROS_H
-+
-+#define __EXPAND(x) x
-+#define __COUNT(_1, _2, _3, _4, _5, _6, _7, COUNT, ...) COUNT
-+#define __VA_SIZE(...) __EXPAND(__COUNT(__VA_ARGS__, 7, 6, 5, 4, 3, 2, 1))
-+#define __CAT1(a, b) a##b
-+#define __CAT2(a, b) __CAT1(a, b)
-+#define __DOC1(n1) __doc_##n1
-+#define __DOC2(n1, n2) __doc_##n1##_##n2
-+#define __DOC3(n1, n2, n3) __doc_##n1##_##n2##_##n3
-+#define __DOC4(n1, n2, n3, n4) __doc_##n1##_##n2##_##n3##_##n4
-+#define __DOC5(n1, n2, n3, n4, n5) __doc_##n1##_##n2##_##n3##_##n4##_##n5
-+#define __DOC6(n1, n2, n3, n4, n5, n6) __doc_##n1##_##n2##_##n3##_##n4##_##n5##_##n6
-+#define __DOC7(n1, n2, n3, n4, n5, n6, n7) \
-+ __doc_##n1##_##n2##_##n3##_##n4##_##n5##_##n6##_##n7
-+#define DOC(...) __EXPAND(__EXPAND(__CAT2(__DOC, __VA_SIZE(__VA_ARGS__)))(__VA_ARGS__))
-+
-+#endif // PYDOC_MACROS_H
-\ No newline at end of file
-diff --git a/docs/doxygen/swig_doc.py b/docs/doxygen/swig_doc.py
-deleted file mode 100644
-index e3b308e..0000000
---- a/docs/doxygen/swig_doc.py
-+++ /dev/null
-@@ -1,332 +0,0 @@
--#
--# Copyright 2010-2012 Free Software Foundation, Inc.
--#
--# This file was generated by gr_modtool, a tool from the GNU Radio framework
--# This file is a part of gr-osmosdr
--#
--# GNU Radio is free software; you can redistribute it and/or modify
--# it under the terms of the GNU General Public License as published by
--# the Free Software Foundation; either version 3, or (at your option)
--# any later version.
--#
--# GNU Radio is distributed in the hope that it will be useful,
--# but WITHOUT ANY WARRANTY; without even the implied warranty of
--# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
--# GNU General Public License for more details.
--#
--# You should have received a copy of the GNU General Public License
--# along with GNU Radio; see the file COPYING. If not, write to
--# the Free Software Foundation, Inc., 51 Franklin Street,
--# Boston, MA 02110-1301, USA.
--#
--"""
--Creates the swig_doc.i SWIG interface file.
--Execute using: python swig_doc.py xml_path outputfilename
--
--The file instructs SWIG to transfer the doxygen comments into the
--python docstrings.
--
--"""
--from __future__ import unicode_literals
--
--import sys, time
--
--from doxyxml import DoxyIndex, DoxyClass, DoxyFriend, DoxyFunction, DoxyFile
--from doxyxml import DoxyOther, base
--
--def py_name(name):
-- bits = name.split('_')
-- return '_'.join(bits[1:])
--
--def make_name(name):
-- bits = name.split('_')
-- return bits[0] + '_make_' + '_'.join(bits[1:])
--
--
--class Block(object):
-- """
-- Checks if doxyxml produced objects correspond to a gnuradio block.
-- """
--
-- @classmethod
-- def includes(cls, item):
-- if not isinstance(item, DoxyClass):
-- return False
-- # Check for a parsing error.
-- if item.error():
-- return False
-- friendname = make_name(item.name())
-- is_a_block = item.has_member(friendname, DoxyFriend)
-- # But now sometimes the make function isn't a friend so check again.
-- if not is_a_block:
-- is_a_block = di.has_member(friendname, DoxyFunction)
-- return is_a_block
--
--class Block2(object):
-- """
-- Checks if doxyxml produced objects correspond to a new style
-- gnuradio block.
-- """
--
-- @classmethod
-- def includes(cls, item):
-- if not isinstance(item, DoxyClass):
-- return False
-- # Check for a parsing error.
-- if item.error():
-- return False
-- is_a_block2 = item.has_member('make', DoxyFunction) and item.has_member('sptr', DoxyOther)
-- return is_a_block2
--
--
--def utoascii(text):
-- """
-- Convert unicode text into ascii and escape quotes and backslashes.
-- """
-- if text is None:
-- return ''
-- out = text.encode('ascii', 'replace')
-- # swig will require us to replace blackslash with 4 backslashes
-- out = out.replace(b'\\', b'\\\\\\\\')
-- out = out.replace(b'"', b'\\"').decode('ascii')
-- return str(out)
--
--
--def combine_descriptions(obj):
-- """
-- Combines the brief and detailed descriptions of an object together.
-- """
-- description = []
-- bd = obj.brief_description.strip()
-- dd = obj.detailed_description.strip()
-- if bd:
-- description.append(bd)
-- if dd:
-- description.append(dd)
-- return utoascii('\n\n'.join(description)).strip()
--
--def format_params(parameteritems):
-- output = ['Args:']
-- template = ' {0} : {1}'
-- for pi in parameteritems:
-- output.append(template.format(pi.name, pi.description))
-- return '\n'.join(output)
--
--entry_templ = '%feature("docstring") {name} "{docstring}"'
--def make_entry(obj, name=None, templ="{description}", description=None, params=[]):
-- """
-- Create a docstring entry for a swig interface file.
--
-- obj - a doxyxml object from which documentation will be extracted.
-- name - the name of the C object (defaults to obj.name())
-- templ - an optional template for the docstring containing only one
-- variable named 'description'.
-- description - if this optional variable is set then it's value is
-- used as the description instead of extracting it from obj.
-- """
-- if name is None:
-- name=obj.name()
-- if "operator " in name:
-- return ''
-- if description is None:
-- description = combine_descriptions(obj)
-- if params:
-- description += '\n\n'
-- description += utoascii(format_params(params))
-- docstring = templ.format(description=description)
-- if not docstring:
-- return ''
-- return entry_templ.format(
-- name=name,
-- docstring=docstring,
-- )
--
--
--def make_func_entry(func, name=None, description=None, params=None):
-- """
-- Create a function docstring entry for a swig interface file.
--
-- func - a doxyxml object from which documentation will be extracted.
-- name - the name of the C object (defaults to func.name())
-- description - if this optional variable is set then it's value is
-- used as the description instead of extracting it from func.
-- params - a parameter list that overrides using func.params.
-- """
-- #if params is None:
-- # params = func.params
-- #params = [prm.declname for prm in params]
-- #if params:
-- # sig = "Params: (%s)" % ", ".join(params)
-- #else:
-- # sig = "Params: (NONE)"
-- #templ = "{description}\n\n" + sig
-- #return make_entry(func, name=name, templ=utoascii(templ),
-- # description=description)
-- return make_entry(func, name=name, description=description, params=params)
--
--
--def make_class_entry(klass, description=None, ignored_methods=[], params=None):
-- """
-- Create a class docstring for a swig interface file.
-- """
-- if params is None:
-- params = klass.params
-- output = []
-- output.append(make_entry(klass, description=description, params=params))
-- for func in klass.in_category(DoxyFunction):
-- if func.name() not in ignored_methods:
-- name = klass.name() + '::' + func.name()
-- output.append(make_func_entry(func, name=name))
-- return "\n\n".join(output)
--
--
--def make_block_entry(di, block):
-- """
-- Create class and function docstrings of a gnuradio block for a
-- swig interface file.
-- """
-- descriptions = []
-- # Get the documentation associated with the class.
-- class_desc = combine_descriptions(block)
-- if class_desc:
-- descriptions.append(class_desc)
-- # Get the documentation associated with the make function
-- make_func = di.get_member(make_name(block.name()), DoxyFunction)
-- make_func_desc = combine_descriptions(make_func)
-- if make_func_desc:
-- descriptions.append(make_func_desc)
-- # Get the documentation associated with the file
-- try:
-- block_file = di.get_member(block.name() + ".h", DoxyFile)
-- file_desc = combine_descriptions(block_file)
-- if file_desc:
-- descriptions.append(file_desc)
-- except base.Base.NoSuchMember:
-- # Don't worry if we can't find a matching file.
-- pass
-- # And join them all together to make a super duper description.
-- super_description = "\n\n".join(descriptions)
-- # Associate the combined description with the class and
-- # the make function.
-- output = []
-- output.append(make_class_entry(block, description=super_description))
-- output.append(make_func_entry(make_func, description=super_description,
-- params=block.params))
-- return "\n\n".join(output)
--
--def make_block2_entry(di, block):
-- """
-- Create class and function docstrings of a new style gnuradio block for a
-- swig interface file.
-- """
-- descriptions = []
-- # For new style blocks all the relevant documentation should be
-- # associated with the 'make' method.
-- class_description = combine_descriptions(block)
-- make_func = block.get_member('make', DoxyFunction)
-- make_description = combine_descriptions(make_func)
-- description = class_description + "\n\nConstructor Specific Documentation:\n\n" + make_description
-- # Associate the combined description with the class and
-- # the make function.
-- output = []
-- output.append(make_class_entry(
-- block, description=description,
-- ignored_methods=['make'], params=make_func.params))
-- makename = block.name() + '::make'
-- output.append(make_func_entry(
-- make_func, name=makename, description=description,
-- params=make_func.params))
-- return "\n\n".join(output)
--
--def make_swig_interface_file(di, swigdocfilename, custom_output=None):
--
-- output = ["""
--/*
-- * This file was automatically generated using swig_doc.py.
-- *
-- * Any changes to it will be lost next time it is regenerated.
-- */
--"""]
--
-- if custom_output is not None:
-- output.append(custom_output)
--
-- # Create docstrings for the blocks.
-- blocks = di.in_category(Block)
-- blocks2 = di.in_category(Block2)
--
-- make_funcs = set([])
-- for block in blocks:
-- try:
-- make_func = di.get_member(make_name(block.name()), DoxyFunction)
-- # Don't want to risk writing to output twice.
-- if make_func.name() not in make_funcs:
-- make_funcs.add(make_func.name())
-- output.append(make_block_entry(di, block))
-- except block.ParsingError:
-- sys.stderr.write('Parsing error for block {0}\n'.format(block.name()))
-- raise
--
-- for block in blocks2:
-- try:
-- make_func = block.get_member('make', DoxyFunction)
-- make_func_name = block.name() +'::make'
-- # Don't want to risk writing to output twice.
-- if make_func_name not in make_funcs:
-- make_funcs.add(make_func_name)
-- output.append(make_block2_entry(di, block))
-- except block.ParsingError:
-- sys.stderr.write('Parsing error for block {0}\n'.format(block.name()))
-- raise
--
-- # Create docstrings for functions
-- # Don't include the make functions since they have already been dealt with.
-- funcs = [f for f in di.in_category(DoxyFunction)
-- if f.name() not in make_funcs and not f.name().startswith('std::')]
-- for f in funcs:
-- try:
-- output.append(make_func_entry(f))
-- except f.ParsingError:
-- sys.stderr.write('Parsing error for function {0}\n'.format(f.name()))
--
-- # Create docstrings for classes
-- block_names = [block.name() for block in blocks]
-- block_names += [block.name() for block in blocks2]
-- klasses = [k for k in di.in_category(DoxyClass)
-- if k.name() not in block_names and not k.name().startswith('std::')]
-- for k in klasses:
-- try:
-- output.append(make_class_entry(k))
-- except k.ParsingError:
-- sys.stderr.write('Parsing error for class {0}\n'.format(k.name()))
--
-- # Docstrings are not created for anything that is not a function or a class.
-- # If this excludes anything important please add it here.
--
-- output = "\n\n".join(output)
--
-- swig_doc = open(swigdocfilename, 'w')
-- swig_doc.write(output)
-- swig_doc.close()
--
--if __name__ == "__main__":
-- # Parse command line options and set up doxyxml.
-- err_msg = "Execute using: python swig_doc.py xml_path outputfilename"
-- if len(sys.argv) != 3:
-- raise Exception(err_msg)
-- xml_path = sys.argv[1]
-- swigdocfilename = sys.argv[2]
-- di = DoxyIndex(xml_path)
--
-- # gnuradio.gr.msq_queue.insert_tail and delete_head create errors unless docstrings are defined!
-- # This is presumably a bug in SWIG.
-- #msg_q = di.get_member(u'gr_msg_queue', DoxyClass)
-- #insert_tail = msg_q.get_member(u'insert_tail', DoxyFunction)
-- #delete_head = msg_q.get_member(u'delete_head', DoxyFunction)
-- output = []
-- #output.append(make_func_entry(insert_tail, name='gr_py_msg_queue__insert_tail'))
-- #output.append(make_func_entry(delete_head, name='gr_py_msg_queue__delete_head'))
-- custom_output = "\n\n".join(output)
--
-- # Generate the docstrings interface file.
-- make_swig_interface_file(di, swigdocfilename, custom_output=custom_output)
-diff --git a/docs/doxygen/update_pydoc.py b/docs/doxygen/update_pydoc.py
-new file mode 100644
-index 0000000..e6b4544
---- /dev/null
-+++ b/docs/doxygen/update_pydoc.py
-@@ -0,0 +1,346 @@
-+#
-+# Copyright 2010-2012 Free Software Foundation, Inc.
-+#
-+# This file was generated by gr_modtool, a tool from the GNU Radio framework
-+# This file is a part of gnuradio
-+#
-+# SPDX-License-Identifier: GPL-3.0-or-later
-+#
-+#
-+"""
-+Updates the *pydoc_h files for a module
-+Execute using: python update_pydoc.py xml_path outputfilename
-+
-+The file instructs Pybind11 to transfer the doxygen comments into the
-+python docstrings.
-+
-+"""
-+
-+import os, sys, time, glob, re, json
-+from argparse import ArgumentParser
-+
-+from doxyxml import DoxyIndex, DoxyClass, DoxyFriend, DoxyFunction, DoxyFile
-+from doxyxml import DoxyOther, base
-+
-+def py_name(name):
-+ bits = name.split('_')
-+ return '_'.join(bits[1:])
-+
-+def make_name(name):
-+ bits = name.split('_')
-+ return bits[0] + '_make_' + '_'.join(bits[1:])
-+
-+
-+class Block(object):
-+ """
-+ Checks if doxyxml produced objects correspond to a gnuradio block.
-+ """
-+
-+ @classmethod
-+ def includes(cls, item):
-+ if not isinstance(item, DoxyClass):
-+ return False
-+ # Check for a parsing error.
-+ if item.error():
-+ return False
-+ friendname = make_name(item.name())
-+ is_a_block = item.has_member(friendname, DoxyFriend)
-+ # But now sometimes the make function isn't a friend so check again.
-+ if not is_a_block:
-+ is_a_block = di.has_member(friendname, DoxyFunction)
-+ return is_a_block
-+
-+class Block2(object):
-+ """
-+ Checks if doxyxml produced objects correspond to a new style
-+ gnuradio block.
-+ """
-+
-+ @classmethod
-+ def includes(cls, item):
-+ if not isinstance(item, DoxyClass):
-+ return False
-+ # Check for a parsing error.
-+ if item.error():
-+ return False
-+ is_a_block2 = item.has_member('make', DoxyFunction) and item.has_member('sptr', DoxyOther)
-+ return is_a_block2
-+
-+
-+def utoascii(text):
-+ """
-+ Convert unicode text into ascii and escape quotes and backslashes.
-+ """
-+ if text is None:
-+ return ''
-+ out = text.encode('ascii', 'replace')
-+ # swig will require us to replace blackslash with 4 backslashes
-+ # TODO: evaluate what this should be for pybind11
-+ out = out.replace(b'\\', b'\\\\\\\\')
-+ out = out.replace(b'"', b'\\"').decode('ascii')
-+ return str(out)
-+
-+
-+def combine_descriptions(obj):
-+ """
-+ Combines the brief and detailed descriptions of an object together.
-+ """
-+ description = []
-+ bd = obj.brief_description.strip()
-+ dd = obj.detailed_description.strip()
-+ if bd:
-+ description.append(bd)
-+ if dd:
-+ description.append(dd)
-+ return utoascii('\n\n'.join(description)).strip()
-+
-+def format_params(parameteritems):
-+ output = ['Args:']
-+ template = ' {0} : {1}'
-+ for pi in parameteritems:
-+ output.append(template.format(pi.name, pi.description))
-+ return '\n'.join(output)
-+
-+entry_templ = '%feature("docstring") {name} "{docstring}"'
-+def make_entry(obj, name=None, templ="{description}", description=None, params=[]):
-+ """
-+ Create a docstring key/value pair, where the key is the object name.
-+
-+ obj - a doxyxml object from which documentation will be extracted.
-+ name - the name of the C object (defaults to obj.name())
-+ templ - an optional template for the docstring containing only one
-+ variable named 'description'.
-+ description - if this optional variable is set then it's value is
-+ used as the description instead of extracting it from obj.
-+ """
-+ if name is None:
-+ name=obj.name()
-+ if hasattr(obj,'_parse_data') and hasattr(obj._parse_data,'definition'):
-+ name=obj._parse_data.definition.split(' ')[-1]
-+ if "operator " in name:
-+ return ''
-+ if description is None:
-+ description = combine_descriptions(obj)
-+ if params:
-+ description += '\n\n'
-+ description += utoascii(format_params(params))
-+ docstring = templ.format(description=description)
-+
-+ return {name: docstring}
-+
-+
-+def make_class_entry(klass, description=None, ignored_methods=[], params=None):
-+ """
-+ Create a class docstring key/value pair.
-+ """
-+ if params is None:
-+ params = klass.params
-+ output = {}
-+ output.update(make_entry(klass, description=description, params=params))
-+ for func in klass.in_category(DoxyFunction):
-+ if func.name() not in ignored_methods:
-+ name = klass.name() + '::' + func.name()
-+ output.update(make_entry(func, name=name))
-+ return output
-+
-+
-+def make_block_entry(di, block):
-+ """
-+ Create class and function docstrings of a gnuradio block
-+ """
-+ descriptions = []
-+ # Get the documentation associated with the class.
-+ class_desc = combine_descriptions(block)
-+ if class_desc:
-+ descriptions.append(class_desc)
-+ # Get the documentation associated with the make function
-+ make_func = di.get_member(make_name(block.name()), DoxyFunction)
-+ make_func_desc = combine_descriptions(make_func)
-+ if make_func_desc:
-+ descriptions.append(make_func_desc)
-+ # Get the documentation associated with the file
-+ try:
-+ block_file = di.get_member(block.name() + ".h", DoxyFile)
-+ file_desc = combine_descriptions(block_file)
-+ if file_desc:
-+ descriptions.append(file_desc)
-+ except base.Base.NoSuchMember:
-+ # Don't worry if we can't find a matching file.
-+ pass
-+ # And join them all together to make a super duper description.
-+ super_description = "\n\n".join(descriptions)
-+ # Associate the combined description with the class and
-+ # the make function.
-+ output = {}
-+ output.update(make_class_entry(block, description=super_description))
-+ output.update(make_entry(make_func, description=super_description,
-+ params=block.params))
-+ return output
-+
-+def make_block2_entry(di, block):
-+ """
-+ Create class and function docstrings of a new style gnuradio block
-+ """
-+ # For new style blocks all the relevant documentation should be
-+ # associated with the 'make' method.
-+ class_description = combine_descriptions(block)
-+ make_func = block.get_member('make', DoxyFunction)
-+ make_description = combine_descriptions(make_func)
-+ description = class_description + "\n\nConstructor Specific Documentation:\n\n" + make_description
-+ # Associate the combined description with the class and
-+ # the make function.
-+ output = {}
-+ output.update(make_class_entry(
-+ block, description=description,
-+ ignored_methods=['make'], params=make_func.params))
-+ makename = block.name() + '::make'
-+ output.update(make_entry(
-+ make_func, name=makename, description=description,
-+ params=make_func.params))
-+ return output
-+
-+def get_docstrings_dict(di, custom_output=None):
-+
-+ output = {}
-+ if custom_output:
-+ output.update(custom_output)
-+
-+ # Create docstrings for the blocks.
-+ blocks = di.in_category(Block)
-+ blocks2 = di.in_category(Block2)
-+
-+ make_funcs = set([])
-+ for block in blocks:
-+ try:
-+ make_func = di.get_member(make_name(block.name()), DoxyFunction)
-+ # Don't want to risk writing to output twice.
-+ if make_func.name() not in make_funcs:
-+ make_funcs.add(make_func.name())
-+ output.update(make_block_entry(di, block))
-+ except block.ParsingError:
-+ sys.stderr.write('Parsing error for block {0}\n'.format(block.name()))
-+ raise
-+
-+ for block in blocks2:
-+ try:
-+ make_func = block.get_member('make', DoxyFunction)
-+ make_func_name = block.name() +'::make'
-+ # Don't want to risk writing to output twice.
-+ if make_func_name not in make_funcs:
-+ make_funcs.add(make_func_name)
-+ output.update(make_block2_entry(di, block))
-+ except block.ParsingError:
-+ sys.stderr.write('Parsing error for block {0}\n'.format(block.name()))
-+ raise
-+
-+ # Create docstrings for functions
-+ # Don't include the make functions since they have already been dealt with.
-+ funcs = [f for f in di.in_category(DoxyFunction)
-+ if f.name() not in make_funcs and not f.name().startswith('std::')]
-+ for f in funcs:
-+ try:
-+ output.update(make_entry(f))
-+ except f.ParsingError:
-+ sys.stderr.write('Parsing error for function {0}\n'.format(f.name()))
-+
-+ # Create docstrings for classes
-+ block_names = [block.name() for block in blocks]
-+ block_names += [block.name() for block in blocks2]
-+ klasses = [k for k in di.in_category(DoxyClass)
-+ if k.name() not in block_names and not k.name().startswith('std::')]
-+ for k in klasses:
-+ try:
-+ output.update(make_class_entry(k))
-+ except k.ParsingError:
-+ sys.stderr.write('Parsing error for class {0}\n'.format(k.name()))
-+
-+ # Docstrings are not created for anything that is not a function or a class.
-+ # If this excludes anything important please add it here.
-+
-+ return output
-+
-+def sub_docstring_in_pydoc_h(pydoc_files, docstrings_dict, output_dir, filter_str=None):
-+ if filter_str:
-+ docstrings_dict = {k: v for k, v in docstrings_dict.items() if k.startswith(filter_str)}
-+
-+ with open(os.path.join(output_dir,'docstring_status'),'w') as status_file:
-+
-+ for pydoc_file in pydoc_files:
-+ if filter_str:
-+ filter_str2 = "::".join((filter_str,os.path.split(pydoc_file)[-1].split('_pydoc_template.h')[0]))
-+ docstrings_dict2 = {k: v for k, v in docstrings_dict.items() if k.startswith(filter_str2)}
-+ else:
-+ docstrings_dict2 = docstrings_dict
-+
-+
-+
-+ file_in = open(pydoc_file,'r').read()
-+ for key, value in docstrings_dict2.items():
-+ file_in_tmp = file_in
-+ try:
-+ doc_key = key.split("::")
-+ # if 'gr' in doc_key:
-+ # doc_key.remove('gr')
-+ doc_key = '_'.join(doc_key)
-+ regexp = r'(__doc_{} =\sR\"doc\()[^)]*(\)doc\")'.format(doc_key)
-+ regexp = re.compile(regexp, re.MULTILINE)
-+
-+ (file_in, nsubs) = regexp.subn(r'\1'+value+r'\2', file_in, count=1)
-+ if nsubs == 1:
-+ status_file.write("PASS: " + pydoc_file + "\n")
-+ except KeyboardInterrupt:
-+ raise KeyboardInterrupt
-+ except: # be permissive, TODO log, but just leave the docstring blank
-+ status_file.write("FAIL: " + pydoc_file + "\n")
-+ file_in = file_in_tmp
-+
-+ output_pathname = os.path.join(output_dir, os.path.basename(pydoc_file).replace('_template.h','.h'))
-+ # FIXME: Remove this debug print
-+ print('output docstrings to {}'.format(output_pathname))
-+ with open(output_pathname,'w') as file_out:
-+ file_out.write(file_in)
-+
-+def copy_docstring_templates(pydoc_files, output_dir):
-+ with open(os.path.join(output_dir,'docstring_status'),'w') as status_file:
-+ for pydoc_file in pydoc_files:
-+ file_in = open(pydoc_file,'r').read()
-+ output_pathname = os.path.join(output_dir, os.path.basename(pydoc_file).replace('_template.h','.h'))
-+ # FIXME: Remove this debug print
-+ print('copy docstrings to {}'.format(output_pathname))
-+ with open(output_pathname,'w') as file_out:
-+ file_out.write(file_in)
-+ status_file.write("DONE")
-+
-+def argParse():
-+ """Parses commandline args."""
-+ desc='Scrape the doxygen generated xml for docstrings to insert into python bindings'
-+ parser = ArgumentParser(description=desc)
-+
-+ parser.add_argument("function", help="Operation to perform on docstrings", choices=["scrape","sub","copy"])
-+
-+ parser.add_argument("--xml_path")
-+ parser.add_argument("--bindings_dir")
-+ parser.add_argument("--output_dir")
-+ parser.add_argument("--json_path")
-+ parser.add_argument("--filter", default=None)
-+
-+ return parser.parse_args()
-+
-+if __name__ == "__main__":
-+ # Parse command line options and set up doxyxml.
-+ args = argParse()
-+ if args.function.lower() == 'scrape':
-+ di = DoxyIndex(args.xml_path)
-+ docstrings_dict = get_docstrings_dict(di)
-+ with open(args.json_path, 'w') as fp:
-+ json.dump(docstrings_dict, fp)
-+ elif args.function.lower() == 'sub':
-+ with open(args.json_path, 'r') as fp:
-+ docstrings_dict = json.load(fp)
-+ pydoc_files = glob.glob(os.path.join(args.bindings_dir,'*_pydoc_template.h'))
-+ sub_docstring_in_pydoc_h(pydoc_files, docstrings_dict, args.output_dir, args.filter)
-+ elif args.function.lower() == 'copy':
-+ pydoc_files = glob.glob(os.path.join(args.bindings_dir,'*_pydoc_template.h'))
-+ copy_docstring_templates(pydoc_files, args.output_dir)
-+
-+
-diff --git a/python/CMakeLists.txt b/python/CMakeLists.txt
-index 53cb61e..dcae02a 100644
---- a/python/CMakeLists.txt
-+++ b/python/CMakeLists.txt
-@@ -1,21 +1,10 @@
- # Copyright 2011 Free Software Foundation, Inc.
- #
--# This file is part of gr-osmosdr
-+# This file was generated by gr_modtool, a tool from the GNU Radio framework
-+# This file is a part of gr-osmosdr
- #
--# gr-osmosdr is free software; you can redistribute it and/or modify
--# it under the terms of the GNU General Public License as published by
--# the Free Software Foundation; either version 3, or (at your option)
--# any later version.
-+# SPDX-License-Identifier: GPL-3.0-or-later
- #
--# gr-osmosdr is distributed in the hope that it will be useful,
--# but WITHOUT ANY WARRANTY; without even the implied warranty of
--# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
--# GNU General Public License for more details.
--#
--# You should have received a copy of the GNU General Public License
--# along with gr-osmosdr; see the file COPYING. If not, write to
--# the Free Software Foundation, Inc., 51 Franklin Street,
--# Boston, MA 02110-1301, USA.
-
- ########################################################################
- # Include python install macros
-@@ -25,6 +14,8 @@ if(NOT PYTHONINTERP_FOUND)
- return()
- endif()
-
-+add_subdirectory(bindings)
-+
- ########################################################################
- # Install python sources
- ########################################################################
-@@ -40,4 +31,3 @@ GR_PYTHON_INSTALL(
- include(GrTest)
-
- set(GR_TEST_TARGET_DEPS gnuradio-osmosdr)
--set(GR_TEST_PYTHON_DIRS ${CMAKE_BINARY_DIR}/swig)
-diff --git a/python/__init__.py b/python/__init__.py
-index 1cb090f..e619f4f 100644
---- a/python/__init__.py
-+++ b/python/__init__.py
-@@ -1,25 +1,24 @@
- #
- # Copyright 2008,2009 Free Software Foundation, Inc.
- #
--# This application is free software; you can redistribute it and/or modify
--# it under the terms of the GNU General Public License as published by
--# the Free Software Foundation; either version 3, or (at your option)
--# any later version.
--#
--# This application is distributed in the hope that it will be useful,
--# but WITHOUT ANY WARRANTY; without even the implied warranty of
--# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
--# GNU General Public License for more details.
--#
--# You should have received a copy of the GNU General Public License along
--# with this program; if not, write to the Free Software Foundation, Inc.,
--# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-+# SPDX-License-Identifier: GPL-3.0-or-later
- #
-
- # The presence of this file turns this directory into a Python package
-
- '''
--This is the GNU Radio OsmoSDR module.
-+This is the GNU Radio OSMOSDR module. Place your Python package
-+description here (python/__init__.py).
- '''
-+import os
-
--from .osmosdr_swig import *
-+# import pybind11 generated symbols into the osmosdr namespace
-+try:
-+ from .osmosdr_python import *
-+except ImportError:
-+ dirname, filename = os.path.split(os.path.abspath(__file__))
-+ __path__.append(os.path.join(dirname, "bindings"))
-+ from .osmosdr_python import *
-+
-+# import any pure python here
-+#
-diff --git a/python/bindings/CMakeLists.txt b/python/bindings/CMakeLists.txt
-new file mode 100644
-index 0000000..ed50d7e
---- /dev/null
-+++ b/python/bindings/CMakeLists.txt
-@@ -0,0 +1,30 @@
-+# Copyright 2020 Free Software Foundation, Inc.
-+#
-+# This file is part of GNU Radio
-+#
-+# SPDX-License-Identifier: GPL-3.0-or-later
-+#
-+
-+GR_PYTHON_CHECK_MODULE_RAW(
-+ "pygccxml"
-+ "import pygccxml"
-+ PYGCCXML_FOUND
-+ )
-+
-+include(GrPybind)
-+
-+########################################################################
-+# Python Bindings
-+########################################################################
-+
-+list(APPEND osmosdr_python_files
-+ sink_python.cc
-+ source_python.cc
-+ python_bindings.cc)
-+
-+GR_PYBIND_MAKE_OOT(osmosdr
-+ ../..
-+ gr::osmosdr
-+ "${osmosdr_python_files}")
-+
-+install(TARGETS osmosdr_python DESTINATION ${GR_PYTHON_DIR}/osmosdr COMPONENT pythonapi)
-diff --git a/python/bindings/README.md b/python/bindings/README.md
-new file mode 100644
-index 0000000..e69de29
-diff --git a/python/bindings/bind_oot_file.py b/python/bindings/bind_oot_file.py
-new file mode 100644
-index 0000000..55de795
---- /dev/null
-+++ b/python/bindings/bind_oot_file.py
-@@ -0,0 +1,53 @@
-+import warnings
-+import argparse
-+import os
-+from gnuradio.bindtool import BindingGenerator
-+import pathlib
-+import sys
-+
-+parser = argparse.ArgumentParser(description='Bind a GR Out of Tree Block')
-+parser.add_argument('--module', type=str,
-+ help='Name of gr module containing file to bind (e.g. fft digital analog)')
-+
-+parser.add_argument('--output_dir', default='/tmp',
-+ help='Output directory of generated bindings')
-+parser.add_argument('--prefix', help='Prefix of Installed GNU Radio')
-+parser.add_argument('--src', help='Directory of gnuradio source tree',
-+ default=os.path.dirname(os.path.abspath(__file__))+'/../../..')
-+
-+parser.add_argument(
-+ '--filename', help="File to be parsed")
-+
-+parser.add_argument(
-+ '--include', help='Additional Include Dirs, separated', default=(), nargs='+')
-+
-+parser.add_argument(
-+ '--status', help='Location of output file for general status (used during cmake)', default=None
-+)
-+parser.add_argument(
-+ '--flag_automatic', default='0'
-+)
-+parser.add_argument(
-+ '--flag_pygccxml', default='0'
-+)
-+
-+args = parser.parse_args()
-+
-+prefix = args.prefix
-+output_dir = args.output_dir
-+includes = args.include
-+name = args.module
-+
-+namespace = [name]
-+prefix_include_root = name
-+
-+
-+with warnings.catch_warnings():
-+ warnings.filterwarnings("ignore", category=DeprecationWarning)
-+
-+ bg = BindingGenerator(prefix, namespace,
-+ prefix_include_root, output_dir, addl_includes=','.join(args.include), catch_exceptions=False, write_json_output=False, status_output=args.status,
-+ flag_automatic=True if args.flag_automatic.lower() in [
-+ '1', 'true'] else False,
-+ flag_pygccxml=True if args.flag_pygccxml.lower() in ['1', 'true'] else False)
-+ bg.gen_file_binding(args.filename)
-diff --git a/python/bindings/docstrings/README.md b/python/bindings/docstrings/README.md
-new file mode 100644
-index 0000000..295455a
---- /dev/null
-+++ b/python/bindings/docstrings/README.md
-@@ -0,0 +1 @@
-+This directory stores templates for docstrings that are scraped from the include header files for each block
-\ No newline at end of file
-diff --git a/python/bindings/docstrings/sink_pydoc_template.h b/python/bindings/docstrings/sink_pydoc_template.h
-new file mode 100644
-index 0000000..dad47cf
---- /dev/null
-+++ b/python/bindings/docstrings/sink_pydoc_template.h
-@@ -0,0 +1,153 @@
-+/*
-+ * Copyright 2020 Free Software Foundation, Inc.
-+ *
-+ * This file is part of GNU Radio
-+ *
-+ * SPDX-License-Identifier: GPL-3.0-or-later
-+ *
-+ */
-+#include "pydoc_macros.h"
-+#define D(...) DOC(gr,osmosdr, __VA_ARGS__ )
-+/*
-+ This file contains placeholders for docstrings for the Python bindings.
-+ Do not edit! These were automatically extracted during the binding process
-+ and will be overwritten during the build process
-+ */
-+
-+
-+
-+ static const char *__doc_osmosdr_sink = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_sink_0 = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_sink_1 = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_make = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_get_num_channels = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_get_sample_rates = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_set_sample_rate = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_get_sample_rate = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_get_freq_range = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_set_center_freq = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_get_center_freq = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_set_freq_corr = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_get_freq_corr = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_get_gain_names = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_get_gain_range_0 = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_get_gain_range_1 = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_set_gain_mode = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_get_gain_mode = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_set_gain_0 = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_set_gain_1 = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_get_gain_0 = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_get_gain_1 = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_set_if_gain = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_set_bb_gain = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_get_antennas = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_set_antenna = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_get_antenna = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_set_dc_offset = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_set_iq_balance = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_set_bandwidth = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_get_bandwidth = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_get_bandwidth_range = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_set_time_source = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_get_time_source = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_get_time_sources = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_set_clock_source = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_get_clock_source = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_get_clock_sources = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_get_clock_rate = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_set_clock_rate = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_get_time_now = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_get_time_last_pps = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_set_time_now = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_set_time_next_pps = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_sink_set_time_unknown_pps = R"doc()doc";
-+
-+
-diff --git a/python/bindings/docstrings/source_pydoc_template.h b/python/bindings/docstrings/source_pydoc_template.h
-new file mode 100644
-index 0000000..f2c3ca4
---- /dev/null
-+++ b/python/bindings/docstrings/source_pydoc_template.h
-@@ -0,0 +1,162 @@
-+/*
-+ * Copyright 2020 Free Software Foundation, Inc.
-+ *
-+ * This file is part of GNU Radio
-+ *
-+ * SPDX-License-Identifier: GPL-3.0-or-later
-+ *
-+ */
-+#include "pydoc_macros.h"
-+#define D(...) DOC(gr,osmosdr, __VA_ARGS__ )
-+/*
-+ This file contains placeholders for docstrings for the Python bindings.
-+ Do not edit! These were automatically extracted during the binding process
-+ and will be overwritten during the build process
-+ */
-+
-+
-+
-+ static const char *__doc_osmosdr_source = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_source_0 = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_source_1 = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_make = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_get_num_channels = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_seek = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_get_sample_rates = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_set_sample_rate = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_get_sample_rate = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_get_freq_range = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_set_center_freq = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_get_center_freq = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_set_freq_corr = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_get_freq_corr = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_get_gain_names = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_get_gain_range_0 = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_get_gain_range_1 = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_set_gain_mode = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_get_gain_mode = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_set_gain_0 = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_set_gain_1 = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_get_gain_0 = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_get_gain_1 = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_set_if_gain = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_set_bb_gain = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_get_antennas = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_set_antenna = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_get_antenna = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_set_dc_offset_mode = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_set_dc_offset = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_set_iq_balance_mode = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_set_iq_balance = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_set_bandwidth = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_get_bandwidth = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_get_bandwidth_range = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_set_time_source = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_get_time_source = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_get_time_sources = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_set_clock_source = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_get_clock_source = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_get_clock_sources = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_get_clock_rate = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_set_clock_rate = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_get_time_now = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_get_time_last_pps = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_set_time_now = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_set_time_next_pps = R"doc()doc";
-+
-+
-+ static const char *__doc_osmosdr_source_set_time_unknown_pps = R"doc()doc";
-+
-+
-diff --git a/python/bindings/header_utils.py b/python/bindings/header_utils.py
-new file mode 100644
-index 0000000..165124e
---- /dev/null
-+++ b/python/bindings/header_utils.py
-@@ -0,0 +1,78 @@
-+# Utilities for reading values in header files
-+
-+from argparse import ArgumentParser
-+import re
-+
-+
-+class PybindHeaderParser:
-+ def __init__(self, pathname):
-+ with open(pathname,'r') as f:
-+ self.file_txt = f.read()
-+
-+ def get_flag_automatic(self):
-+ # p = re.compile(r'BINDTOOL_GEN_AUTOMATIC\(([^\s])\)')
-+ # m = p.search(self.file_txt)
-+ m = re.search(r'BINDTOOL_GEN_AUTOMATIC\(([^\s])\)', self.file_txt)
-+ if (m and m.group(1) == '1'):
-+ return True
-+ else:
-+ return False
-+
-+ def get_flag_pygccxml(self):
-+ # p = re.compile(r'BINDTOOL_USE_PYGCCXML\(([^\s])\)')
-+ # m = p.search(self.file_txt)
-+ m = re.search(r'BINDTOOL_USE_PYGCCXML\(([^\s])\)', self.file_txt)
-+ if (m and m.group(1) == '1'):
-+ return True
-+ else:
-+ return False
-+
-+ def get_header_filename(self):
-+ # p = re.compile(r'BINDTOOL_HEADER_FILE\(([^\s]*)\)')
-+ # m = p.search(self.file_txt)
-+ m = re.search(r'BINDTOOL_HEADER_FILE\(([^\s]*)\)', self.file_txt)
-+ if (m):
-+ return m.group(1)
-+ else:
-+ return None
-+
-+ def get_header_file_hash(self):
-+ # p = re.compile(r'BINDTOOL_HEADER_FILE_HASH\(([^\s]*)\)')
-+ # m = p.search(self.file_txt)
-+ m = re.search(r'BINDTOOL_HEADER_FILE_HASH\(([^\s]*)\)', self.file_txt)
-+ if (m):
-+ return m.group(1)
-+ else:
-+ return None
-+
-+ def get_flags(self):
-+ return f'{self.get_flag_automatic()};{self.get_flag_pygccxml()};{self.get_header_filename()};{self.get_header_file_hash()};'
-+
-+
-+
-+def argParse():
-+ """Parses commandline args."""
-+ desc='Reads the parameters from the comment block in the pybind files'
-+ parser = ArgumentParser(description=desc)
-+
-+ parser.add_argument("function", help="Operation to perform on comment block of pybind file", choices=["flag_auto","flag_pygccxml","header_filename","header_file_hash","all"])
-+ parser.add_argument("pathname", help="Pathname of pybind c++ file to read, e.g. blockname_python.cc")
-+
-+ return parser.parse_args()
-+
-+if __name__ == "__main__":
-+ # Parse command line options and set up doxyxml.
-+ args = argParse()
-+
-+ pbhp = PybindHeaderParser(args.pathname)
-+
-+ if args.function == "flag_auto":
-+ print(pbhp.get_flag_automatic())
-+ elif args.function == "flag_pygccxml":
-+ print(pbhp.get_flag_pygccxml())
-+ elif args.function == "header_filename":
-+ print(pbhp.get_header_filename())
-+ elif args.function == "header_file_hash":
-+ print(pbhp.get_header_file_hash())
-+ elif args.function == "all":
-+ print(pbhp.get_flags())
-\ No newline at end of file
-diff --git a/python/bindings/python_bindings.cc b/python/bindings/python_bindings.cc
-new file mode 100644
-index 0000000..fc11ee0
---- /dev/null
-+++ b/python/bindings/python_bindings.cc
-@@ -0,0 +1,57 @@
-+/*
-+ * Copyright 2020 Free Software Foundation, Inc.
-+ *
-+ * This file is part of GNU Radio
-+ *
-+ * SPDX-License-Identifier: GPL-3.0-or-later
-+ *
-+ */
-+
-+#include <pybind11/pybind11.h>
-+
-+#define NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION
-+#include <numpy/arrayobject.h>
-+
-+namespace py = pybind11;
-+
-+// Headers for binding functions
-+/**************************************/
-+/* The following comment block is used for
-+/* gr_modtool to insert function prototypes
-+/* Please do not delete
-+/**************************************/
-+// BINDING_FUNCTION_PROTOTYPES(
-+ void bind_sink(py::module& m);
-+ void bind_source(py::module& m);
-+// ) END BINDING_FUNCTION_PROTOTYPES
-+
-+
-+// We need this hack because import_array() returns NULL
-+// for newer Python versions.
-+// This function is also necessary because it ensures access to the C API
-+// and removes a warning.
-+void* init_numpy()
-+{
-+ import_array();
-+ return NULL;
-+}
-+
-+PYBIND11_MODULE(osmosdr_python, m)
-+{
-+ // Initialize the numpy C API
-+ // (otherwise we will see segmentation faults)
-+ init_numpy();
-+
-+ // Allow access to base block methods
-+ py::module::import("gnuradio.gr");
-+
-+ /**************************************/
-+ /* The following comment block is used for
-+ /* gr_modtool to insert binding function calls
-+ /* Please do not delete
-+ /**************************************/
-+ // BINDING_FUNCTION_CALLS(
-+ bind_sink(m);
-+ bind_source(m);
-+ // ) END BINDING_FUNCTION_CALLS
-+}
-diff --git a/python/bindings/sink_python.cc b/python/bindings/sink_python.cc
-new file mode 100644
-index 0000000..1c6711d
---- /dev/null
-+++ b/python/bindings/sink_python.cc
-@@ -0,0 +1,320 @@
-+/*
-+ * Copyright 2020 Free Software Foundation, Inc.
-+ *
-+ * This file is part of GNU Radio
-+ *
-+ * SPDX-License-Identifier: GPL-3.0-or-later
-+ *
-+ */
-+
-+/***********************************************************************************/
-+/* This file is automatically generated using bindtool and can be manually edited */
-+/* The following lines can be configured to regenerate this file during cmake */
-+/* If manual edits are made, the following tags should be modified accordingly. */
-+/* BINDTOOL_GEN_AUTOMATIC(1) */
-+/* BINDTOOL_USE_PYGCCXML(0) */
-+/* BINDTOOL_HEADER_FILE(sink.h) */
-+/* BINDTOOL_HEADER_FILE_HASH(d4331eb8a19b7a2aa4ed0100039f7a0e) */
-+/***********************************************************************************/
-+
-+#include <pybind11/complex.h>
-+#include <pybind11/pybind11.h>
-+#include <pybind11/stl.h>
-+
-+namespace py = pybind11;
-+
-+#include <osmosdr/sink.h>
-+// pydoc.h is automatically generated in the build directory
-+#include <sink_pydoc.h>
-+
-+void bind_sink(py::module& m)
-+{
-+
-+ using sink = ::osmosdr::sink;
-+
-+
-+ py::class_<sink, gr::hier_block2,
-+ std::shared_ptr<sink>>(m, "sink", D(sink))
-+
-+ .def(py::init(&sink::make),
-+ py::arg("args") = "",
-+ D(sink,make)
-+ )
-+
-+
-+
-+
-+
-+ .def("get_num_channels",&sink::get_num_channels,
-+ D(sink,get_num_channels)
-+ )
-+
-+
-+ .def("get_sample_rates",&sink::get_sample_rates,
-+ D(sink,get_sample_rates)
-+ )
-+
-+
-+ .def("set_sample_rate",&sink::set_sample_rate,
-+ py::arg("rate"),
-+ D(sink,set_sample_rate)
-+ )
-+
-+
-+ .def("get_sample_rate",&sink::get_sample_rate,
-+ D(sink,get_sample_rate)
-+ )
-+
-+
-+ .def("get_freq_range",&sink::get_freq_range,
-+ py::arg("chan") = 0,
-+ D(sink,get_freq_range)
-+ )
-+
-+
-+ .def("set_center_freq",&sink::set_center_freq,
-+ py::arg("freq"),
-+ py::arg("chan") = 0,
-+ D(sink,set_center_freq)
-+ )
-+
-+
-+ .def("get_center_freq",&sink::get_center_freq,
-+ py::arg("chan") = 0,
-+ D(sink,get_center_freq)
-+ )
-+
-+
-+ .def("set_freq_corr",&sink::set_freq_corr,
-+ py::arg("ppm"),
-+ py::arg("chan") = 0,
-+ D(sink,set_freq_corr)
-+ )
-+
-+
-+ .def("get_freq_corr",&sink::get_freq_corr,
-+ py::arg("chan") = 0,
-+ D(sink,get_freq_corr)
-+ )
-+
-+
-+ .def("get_gain_names",&sink::get_gain_names,
-+ py::arg("chan") = 0,
-+ D(sink,get_gain_names)
-+ )
-+
-+
-+ .def("get_gain_range",(osmosdr::gain_range_t (sink::*)(size_t))&sink::get_gain_range,
-+ py::arg("chan") = 0,
-+ D(sink,get_gain_range,0)
-+ )
-+
-+
-+ .def("get_gain_range",(osmosdr::gain_range_t (sink::*)(std::string const &, size_t))&sink::get_gain_range,
-+ py::arg("name"),
-+ py::arg("chan") = 0,
-+ D(sink,get_gain_range,1)
-+ )
-+
-+
-+ .def("set_gain_mode",&sink::set_gain_mode,
-+ py::arg("automatic"),
-+ py::arg("chan") = 0,
-+ D(sink,set_gain_mode)
-+ )
-+
-+
-+ .def("get_gain_mode",&sink::get_gain_mode,
-+ py::arg("chan") = 0,
-+ D(sink,get_gain_mode)
-+ )
-+
-+
-+ .def("set_gain",(double (sink::*)(double, size_t))&sink::set_gain,
-+ py::arg("gain"),
-+ py::arg("chan") = 0,
-+ D(sink,set_gain,0)
-+ )
-+
-+
-+ .def("set_gain",(double (sink::*)(double, std::string const &, size_t))&sink::set_gain,
-+ py::arg("gain"),
-+ py::arg("name"),
-+ py::arg("chan") = 0,
-+ D(sink,set_gain,1)
-+ )
-+
-+
-+ .def("get_gain",(double (sink::*)(size_t))&sink::get_gain,
-+ py::arg("chan") = 0,
-+ D(sink,get_gain,0)
-+ )
-+
-+
-+ .def("get_gain",(double (sink::*)(std::string const &, size_t))&sink::get_gain,
-+ py::arg("name"),
-+ py::arg("chan") = 0,
-+ D(sink,get_gain,1)
-+ )
-+
-+
-+ .def("set_if_gain",&sink::set_if_gain,
-+ py::arg("gain"),
-+ py::arg("chan") = 0,
-+ D(sink,set_if_gain)
-+ )
-+
-+
-+ .def("set_bb_gain",&sink::set_bb_gain,
-+ py::arg("gain"),
-+ py::arg("chan") = 0,
-+ D(sink,set_bb_gain)
-+ )
-+
-+
-+ .def("get_antennas",&sink::get_antennas,
-+ py::arg("chan") = 0,
-+ D(sink,get_antennas)
-+ )
-+
-+
-+ .def("set_antenna",&sink::set_antenna,
-+ py::arg("antenna"),
-+ py::arg("chan") = 0,
-+ D(sink,set_antenna)
-+ )
-+
-+
-+ .def("get_antenna",&sink::get_antenna,
-+ py::arg("chan") = 0,
-+ D(sink,get_antenna)
-+ )
-+
-+
-+ .def("set_dc_offset",&sink::set_dc_offset,
-+ py::arg("offset"),
-+ py::arg("chan") = 0,
-+ D(sink,set_dc_offset)
-+ )
-+
-+
-+ .def("set_iq_balance",&sink::set_iq_balance,
-+ py::arg("balance"),
-+ py::arg("chan") = 0,
-+ D(sink,set_iq_balance)
-+ )
-+
-+
-+ .def("set_bandwidth",&sink::set_bandwidth,
-+ py::arg("bandwidth"),
-+ py::arg("chan") = 0,
-+ D(sink,set_bandwidth)
-+ )
-+
-+
-+ .def("get_bandwidth",&sink::get_bandwidth,
-+ py::arg("chan") = 0,
-+ D(sink,get_bandwidth)
-+ )
-+
-+
-+ .def("get_bandwidth_range",&sink::get_bandwidth_range,
-+ py::arg("chan") = 0,
-+ D(sink,get_bandwidth_range)
-+ )
-+
-+
-+ .def("set_time_source",&sink::set_time_source,
-+ py::arg("source"),
-+ py::arg("mboard") = 0,
-+ D(sink,set_time_source)
-+ )
-+
-+
-+ .def("get_time_source",&sink::get_time_source,
-+ py::arg("mboard"),
-+ D(sink,get_time_source)
-+ )
-+
-+
-+ .def("get_time_sources",&sink::get_time_sources,
-+ py::arg("mboard"),
-+ D(sink,get_time_sources)
-+ )
-+
-+
-+ .def("set_clock_source",&sink::set_clock_source,
-+ py::arg("source"),
-+ py::arg("mboard") = 0,
-+ D(sink,set_clock_source)
-+ )
-+
-+
-+ .def("get_clock_source",&sink::get_clock_source,
-+ py::arg("mboard"),
-+ D(sink,get_clock_source)
-+ )
-+
-+
-+ .def("get_clock_sources",&sink::get_clock_sources,
-+ py::arg("mboard"),
-+ D(sink,get_clock_sources)
-+ )
-+
-+
-+ .def("get_clock_rate",&sink::get_clock_rate,
-+ py::arg("mboard") = 0,
-+ D(sink,get_clock_rate)
-+ )
-+
-+
-+ .def("set_clock_rate",&sink::set_clock_rate,
-+ py::arg("rate"),
-+ py::arg("mboard") = 0,
-+ D(sink,set_clock_rate)
-+ )
-+
-+
-+ .def("get_time_now",&sink::get_time_now,
-+ py::arg("mboard") = 0,
-+ D(sink,get_time_now)
-+ )
-+
-+
-+ .def("get_time_last_pps",&sink::get_time_last_pps,
-+ py::arg("mboard") = 0,
-+ D(sink,get_time_last_pps)
-+ )
-+
-+
-+ .def("set_time_now",&sink::set_time_now,
-+ py::arg("time_spec"),
-+ py::arg("mboard") = 0,
-+ D(sink,set_time_now)
-+ )
-+
-+
-+ .def("set_time_next_pps",&sink::set_time_next_pps,
-+ py::arg("time_spec"),
-+ D(sink,set_time_next_pps)
-+ )
-+
-+
-+ .def("set_time_unknown_pps",&sink::set_time_unknown_pps,
-+ py::arg("time_spec"),
-+ D(sink,set_time_unknown_pps)
-+ )
-+
-+ ;
-+
-+
-+
-+
-+}
-+
-+
-+
-+
-+
-+
-+
-diff --git a/python/bindings/source_python.cc b/python/bindings/source_python.cc
-new file mode 100644
-index 0000000..48bf10c
---- /dev/null
-+++ b/python/bindings/source_python.cc
-@@ -0,0 +1,342 @@
-+/*
-+ * Copyright 2020 Free Software Foundation, Inc.
-+ *
-+ * This file is part of GNU Radio
-+ *
-+ * SPDX-License-Identifier: GPL-3.0-or-later
-+ *
-+ */
-+
-+/***********************************************************************************/
-+/* This file is automatically generated using bindtool and can be manually edited */
-+/* The following lines can be configured to regenerate this file during cmake */
-+/* If manual edits are made, the following tags should be modified accordingly. */
-+/* BINDTOOL_GEN_AUTOMATIC(1) */
-+/* BINDTOOL_USE_PYGCCXML(0) */
-+/* BINDTOOL_HEADER_FILE(source.h) */
-+/* BINDTOOL_HEADER_FILE_HASH(574373c3c7682569b0fd7eea577739da) */
-+/***********************************************************************************/
-+
-+#include <pybind11/complex.h>
-+#include <pybind11/pybind11.h>
-+#include <pybind11/stl.h>
-+
-+namespace py = pybind11;
-+
-+#include <osmosdr/source.h>
-+// pydoc.h is automatically generated in the build directory
-+#include <source_pydoc.h>
-+
-+void bind_source(py::module& m)
-+{
-+
-+ using source = ::osmosdr::source;
-+
-+
-+ py::class_<source, gr::hier_block2,
-+ std::shared_ptr<source>>(m, "source", D(source))
-+
-+ .def(py::init(&source::make),
-+ py::arg("args") = "",
-+ D(source,make)
-+ )
-+
-+
-+
-+
-+
-+ .def("get_num_channels",&source::get_num_channels,
-+ D(source,get_num_channels)
-+ )
-+
-+
-+ .def("seek",&source::seek,
-+ py::arg("seek_point"),
-+ py::arg("whence"),
-+ py::arg("chan") = 0,
-+ D(source,seek)
-+ )
-+
-+
-+ .def("get_sample_rates",&source::get_sample_rates,
-+ D(source,get_sample_rates)
-+ )
-+
-+
-+ .def("set_sample_rate",&source::set_sample_rate,
-+ py::arg("rate"),
-+ D(source,set_sample_rate)
-+ )
-+
-+
-+ .def("get_sample_rate",&source::get_sample_rate,
-+ D(source,get_sample_rate)
-+ )
-+
-+
-+ .def("get_freq_range",&source::get_freq_range,
-+ py::arg("chan") = 0,
-+ D(source,get_freq_range)
-+ )
-+
-+
-+ .def("set_center_freq",&source::set_center_freq,
-+ py::arg("freq"),
-+ py::arg("chan") = 0,
-+ D(source,set_center_freq)
-+ )
-+
-+
-+ .def("get_center_freq",&source::get_center_freq,
-+ py::arg("chan") = 0,
-+ D(source,get_center_freq)
-+ )
-+
-+
-+ .def("set_freq_corr",&source::set_freq_corr,
-+ py::arg("ppm"),
-+ py::arg("chan") = 0,
-+ D(source,set_freq_corr)
-+ )
-+
-+
-+ .def("get_freq_corr",&source::get_freq_corr,
-+ py::arg("chan") = 0,
-+ D(source,get_freq_corr)
-+ )
-+
-+
-+ .def("get_gain_names",&source::get_gain_names,
-+ py::arg("chan") = 0,
-+ D(source,get_gain_names)
-+ )
-+
-+
-+ .def("get_gain_range",(osmosdr::gain_range_t (source::*)(size_t))&source::get_gain_range,
-+ py::arg("chan") = 0,
-+ D(source,get_gain_range,0)
-+ )
-+
-+
-+ .def("get_gain_range",(osmosdr::gain_range_t (source::*)(std::string const &, size_t))&source::get_gain_range,
-+ py::arg("name"),
-+ py::arg("chan") = 0,
-+ D(source,get_gain_range,1)
-+ )
-+
-+
-+ .def("set_gain_mode",&source::set_gain_mode,
-+ py::arg("automatic"),
-+ py::arg("chan") = 0,
-+ D(source,set_gain_mode)
-+ )
-+
-+
-+ .def("get_gain_mode",&source::get_gain_mode,
-+ py::arg("chan") = 0,
-+ D(source,get_gain_mode)
-+ )
-+
-+
-+ .def("set_gain",(double (source::*)(double, size_t))&source::set_gain,
-+ py::arg("gain"),
-+ py::arg("chan") = 0,
-+ D(source,set_gain,0)
-+ )
-+
-+
-+ .def("set_gain",(double (source::*)(double, std::string const &, size_t))&source::set_gain,
-+ py::arg("gain"),
-+ py::arg("name"),
-+ py::arg("chan") = 0,
-+ D(source,set_gain,1)
-+ )
-+
-+
-+ .def("get_gain",(double (source::*)(size_t))&source::get_gain,
-+ py::arg("chan") = 0,
-+ D(source,get_gain,0)
-+ )
-+
-+
-+ .def("get_gain",(double (source::*)(std::string const &, size_t))&source::get_gain,
-+ py::arg("name"),
-+ py::arg("chan") = 0,
-+ D(source,get_gain,1)
-+ )
-+
-+
-+ .def("set_if_gain",&source::set_if_gain,
-+ py::arg("gain"),
-+ py::arg("chan") = 0,
-+ D(source,set_if_gain)
-+ )
-+
-+
-+ .def("set_bb_gain",&source::set_bb_gain,
-+ py::arg("gain"),
-+ py::arg("chan") = 0,
-+ D(source,set_bb_gain)
-+ )
-+
-+
-+ .def("get_antennas",&source::get_antennas,
-+ py::arg("chan") = 0,
-+ D(source,get_antennas)
-+ )
-+
-+
-+ .def("set_antenna",&source::set_antenna,
-+ py::arg("antenna"),
-+ py::arg("chan") = 0,
-+ D(source,set_antenna)
-+ )
-+
-+
-+ .def("get_antenna",&source::get_antenna,
-+ py::arg("chan") = 0,
-+ D(source,get_antenna)
-+ )
-+
-+
-+ .def("set_dc_offset_mode",&source::set_dc_offset_mode,
-+ py::arg("mode"),
-+ py::arg("chan") = 0,
-+ D(source,set_dc_offset_mode)
-+ )
-+
-+
-+ .def("set_dc_offset",&source::set_dc_offset,
-+ py::arg("offset"),
-+ py::arg("chan") = 0,
-+ D(source,set_dc_offset)
-+ )
-+
-+
-+ .def("set_iq_balance_mode",&source::set_iq_balance_mode,
-+ py::arg("mode"),
-+ py::arg("chan") = 0,
-+ D(source,set_iq_balance_mode)
-+ )
-+
-+
-+ .def("set_iq_balance",&source::set_iq_balance,
-+ py::arg("balance"),
-+ py::arg("chan") = 0,
-+ D(source,set_iq_balance)
-+ )
-+
-+
-+ .def("set_bandwidth",&source::set_bandwidth,
-+ py::arg("bandwidth"),
-+ py::arg("chan") = 0,
-+ D(source,set_bandwidth)
-+ )
-+
-+
-+ .def("get_bandwidth",&source::get_bandwidth,
-+ py::arg("chan") = 0,
-+ D(source,get_bandwidth)
-+ )
-+
-+
-+ .def("get_bandwidth_range",&source::get_bandwidth_range,
-+ py::arg("chan") = 0,
-+ D(source,get_bandwidth_range)
-+ )
-+
-+
-+ .def("set_time_source",&source::set_time_source,
-+ py::arg("source"),
-+ py::arg("mboard") = 0,
-+ D(source,set_time_source)
-+ )
-+
-+
-+ .def("get_time_source",&source::get_time_source,
-+ py::arg("mboard"),
-+ D(source,get_time_source)
-+ )
-+
-+
-+ .def("get_time_sources",&source::get_time_sources,
-+ py::arg("mboard"),
-+ D(source,get_time_sources)
-+ )
-+
-+
-+ .def("set_clock_source",&source::set_clock_source,
-+ py::arg("source"),
-+ py::arg("mboard") = 0,
-+ D(source,set_clock_source)
-+ )
-+
-+
-+ .def("get_clock_source",&source::get_clock_source,
-+ py::arg("mboard"),
-+ D(source,get_clock_source)
-+ )
-+
-+
-+ .def("get_clock_sources",&source::get_clock_sources,
-+ py::arg("mboard"),
-+ D(source,get_clock_sources)
-+ )
-+
-+
-+ .def("get_clock_rate",&source::get_clock_rate,
-+ py::arg("mboard") = 0,
-+ D(source,get_clock_rate)
-+ )
-+
-+
-+ .def("set_clock_rate",&source::set_clock_rate,
-+ py::arg("rate"),
-+ py::arg("mboard") = 0,
-+ D(source,set_clock_rate)
-+ )
-+
-+
-+ .def("get_time_now",&source::get_time_now,
-+ py::arg("mboard") = 0,
-+ D(source,get_time_now)
-+ )
-+
-+
-+ .def("get_time_last_pps",&source::get_time_last_pps,
-+ py::arg("mboard") = 0,
-+ D(source,get_time_last_pps)
-+ )
-+
-+
-+ .def("set_time_now",&source::set_time_now,
-+ py::arg("time_spec"),
-+ py::arg("mboard") = 0,
-+ D(source,set_time_now)
-+ )
-+
-+
-+ .def("set_time_next_pps",&source::set_time_next_pps,
-+ py::arg("time_spec"),
-+ D(source,set_time_next_pps)
-+ )
-+
-+
-+ .def("set_time_unknown_pps",&source::set_time_unknown_pps,
-+ py::arg("time_spec"),
-+ D(source,set_time_unknown_pps)
-+ )
-+
-+ ;
-+
-+
-+
-+
-+}
-+
-+
-+
-+
-+
-+
-+
-diff --git a/swig/CMakeLists.txt b/swig/CMakeLists.txt
-deleted file mode 100644
-index 159f212..0000000
---- a/swig/CMakeLists.txt
-+++ /dev/null
-@@ -1,57 +0,0 @@
--# Copyright 2011 Free Software Foundation, Inc.
--#
--# This file is part of gr-osmosdr
--#
--# gr-osmosdr is free software; you can redistribute it and/or modify
--# it under the terms of the GNU General Public License as published by
--# the Free Software Foundation; either version 3, or (at your option)
--# any later version.
--#
--# gr-osmosdr is distributed in the hope that it will be useful,
--# but WITHOUT ANY WARRANTY; without even the implied warranty of
--# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
--# GNU General Public License for more details.
--#
--# You should have received a copy of the GNU General Public License
--# along with gr-osmosdr; see the file COPYING. If not, write to
--# the Free Software Foundation, Inc., 51 Franklin Street,
--# Boston, MA 02110-1301, USA.
--
--########################################################################
--# Include swig generation macros
--########################################################################
--find_package(SWIG)
--find_package(PythonLibs 3)
--if(NOT SWIG_FOUND OR NOT PYTHONLIBS_FOUND)
-- return()
--endif()
--include(GrSwig)
--include(GrPython)
--
--########################################################################
--# Setup swig generation
--########################################################################
--set(GR_SWIG_INCLUDE_DIRS $<TARGET_PROPERTY:gnuradio::runtime_swig,INTERFACE_INCLUDE_DIRECTORIES>)
--set(GR_SWIG_TARGET_DEPS gnuradio::runtime_swig)
--
--set(GR_SWIG_LIBRARIES gnuradio-osmosdr)
--
--set(GR_SWIG_DOC_FILE ${CMAKE_CURRENT_BINARY_DIR}/osmosdr_swig_doc.i)
--set(GR_SWIG_DOC_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/../include/osmosdr)
--
--GR_SWIG_MAKE(osmosdr_swig osmosdr_swig.i)
--
--########################################################################
--# Install the build swig module
--########################################################################
--GR_SWIG_INSTALL(TARGETS osmosdr_swig DESTINATION ${GR_PYTHON_DIR}/osmosdr)
--
--########################################################################
--# Install swig .i files for development
--########################################################################
--install(
-- FILES
-- osmosdr_swig.i
-- ${CMAKE_CURRENT_BINARY_DIR}/osmosdr_swig_doc.i
-- DESTINATION ${GR_INCLUDE_DIR}/osmosdr/swig
--)
-diff --git a/swig/osmosdr_swig.i b/swig/osmosdr_swig.i
-deleted file mode 100644
-index da42e6e..0000000
---- a/swig/osmosdr_swig.i
-+++ /dev/null
-@@ -1,82 +0,0 @@
--/* -*- c++ -*- */
--
--#define OSMOSDR_API
--
--// suppress Warning 319: No access specifier given for base class 'boost::noncopyable' (ignored).
--#pragma SWIG nowarn=319
--
--%include "gnuradio.i" // the common stuff
--
--//load generated python docstrings
--%include "osmosdr_swig_doc.i"
--
--%{
--#include "osmosdr/device.h"
--#include "osmosdr/source.h"
--#include "osmosdr/sink.h"
--%}
--
--// Workaround for a SWIG 2.0.4 bug with templates. Probably needs to be looked in to.
--%{
--#if PY_VERSION_HEX >= 0x03020000
--# define SWIGPY_SLICE_ARG(obj) ((PyObject*) (obj))
--#else
--# define SWIGPY_SLICE_ARG(obj) ((PySliceObject*) (obj))
--#endif
--%}
--
--%template(string_vector_t) std::vector<std::string>;
--
--//%template(size_vector_t) std::vector<size_t>;
--
--%include <osmosdr/pimpl.h>
--
--%ignore osmosdr::device_t::operator[]; //ignore warnings about %extend
--
--%template(string_string_dict_t) std::map<std::string, std::string>; //define before device
--%template(devices_t) std::vector<osmosdr::device_t>;
--%include <osmosdr/device.h>
--
--//%extend std::map<std::string, std::string>{
--// std::string __getitem__(std::string key) {return (*self)[key];}
--// void __setitem__(std::string key, std::string val) {(*self)[key] = val;}
--//};
--
--%template(range_vector_t) std::vector<osmosdr::range_t>; //define before range
--%include <osmosdr/ranges.h>
--
--%include <osmosdr/time_spec.h>
--
--%extend osmosdr::time_spec_t{
-- osmosdr::time_spec_t __add__(const osmosdr::time_spec_t &what)
-- {
-- osmosdr::time_spec_t temp = *self;
-- temp += what;
-- return temp;
-- }
-- osmosdr::time_spec_t __sub__(const osmosdr::time_spec_t &what)
-- {
-- osmosdr::time_spec_t temp = *self;
-- temp -= what;
-- return temp;
-- }
--};
--
--%define OSMOSDR_SWIG_BLOCK_MAGIC2(PKG, BASE_NAME)
--%template(BASE_NAME ## _sptr) std::shared_ptr<PKG ## :: ## BASE_NAME>;
--%pythoncode %{
--BASE_NAME ## _sptr.__repr__ = lambda self: "<gr_block %s (%d)>" % (self.name(), self.unique_id())
--BASE_NAME = BASE_NAME.make;
--%}
--%enddef
--
--%include "osmosdr/source.h"
--%include "osmosdr/sink.h"
--
--OSMOSDR_SWIG_BLOCK_MAGIC2(osmosdr,source);
--OSMOSDR_SWIG_BLOCK_MAGIC2(osmosdr,sink);
--
--%{
--static const size_t ALL_MBOARDS = osmosdr::ALL_MBOARDS;
--%}
--//static const size_t ALL_MBOARDS;
---
-cgit v1.2.3
-
diff --git a/testing/gr-osmosdr/use-std-shared-ptr.patch b/testing/gr-osmosdr/use-std-shared-ptr.patch
deleted file mode 100644
index b16fd5c1633..00000000000
--- a/testing/gr-osmosdr/use-std-shared-ptr.patch
+++ /dev/null
@@ -1,548 +0,0 @@
-From 159885f9e67101834c100ceb7affc122e3f98bac Mon Sep 17 00:00:00 2001
-From: Clayton Smith <argilo@gmail.com>
-Date: Mon, 28 Dec 2020 22:27:22 -0500
-Subject: Replace boost::shared_ptr with std::shared_ptr
-
-Signed-off-by: Eric Wild <ewild@sysmocom.de>
----
- include/osmosdr/sink.h | 2 +-
- include/osmosdr/source.h | 2 +-
- lib/airspy/airspy_source_c.h | 6 +++---
- lib/airspyhf/airspyhf_source_c.h | 2 +-
- lib/bladerf/bladerf_sink_c.h | 6 +++---
- lib/bladerf/bladerf_source_c.h | 6 +++---
- lib/fcd/fcd_source_c.h | 2 +-
- lib/file/file_sink_c.h | 2 +-
- lib/file/file_source_c.h | 2 +-
- lib/freesrp/freesrp_sink_c.h | 6 +++---
- lib/freesrp/freesrp_source_c.h | 6 +++---
- lib/hackrf/hackrf_sink_c.h | 6 +++---
- lib/hackrf/hackrf_source_c.h | 6 +++---
- lib/redpitaya/redpitaya_sink_c.h | 2 +-
- lib/redpitaya/redpitaya_source_c.h | 2 +-
- lib/rfspace/rfspace_source_c.h | 6 +++---
- lib/rtl/rtl_source_c.h | 6 +++---
- lib/rtl_tcp/rtl_tcp_source_c.h | 2 +-
- lib/rtl_tcp/rtl_tcp_source_f.h | 2 +-
- lib/sdrplay/sdrplay_source_c.h | 6 +++---
- lib/soapy/soapy_sink_c.h | 6 +++---
- lib/soapy/soapy_source_c.h | 6 +++---
- lib/uhd/uhd_sink_c.h | 2 +-
- lib/uhd/uhd_source_c.h | 2 +-
- lib/xtrx/xtrx_obj.h | 2 +-
- lib/xtrx/xtrx_sink_c.h | 2 +-
- lib/xtrx/xtrx_source_c.h | 2 +-
- swig/osmosdr_swig.i | 2 +-
- 28 files changed, 52 insertions(+), 52 deletions(-)
-
-diff --git a/include/osmosdr/sink.h b/include/osmosdr/sink.h
-index 906976e..1f72a5e 100644
---- a/include/osmosdr/sink.h
-+++ b/include/osmosdr/sink.h
-@@ -38,7 +38,7 @@ class sink;
- class OSMOSDR_API sink : virtual public gr::hier_block2
- {
- public:
-- typedef boost::shared_ptr< sink > sptr;
-+ typedef std::shared_ptr< sink > sptr;
-
- /*!
- * \brief Return a shared_ptr to a new instance of sink.
-diff --git a/include/osmosdr/source.h b/include/osmosdr/source.h
-index 88f8385..3ea716d 100644
---- a/include/osmosdr/source.h
-+++ b/include/osmosdr/source.h
-@@ -38,7 +38,7 @@ class source;
- class OSMOSDR_API source : virtual public gr::hier_block2
- {
- public:
-- typedef boost::shared_ptr< source > sptr;
-+ typedef std::shared_ptr< source > sptr;
-
- /*!
- * \brief Return a shared_ptr to a new instance of source.
-diff --git a/lib/airspy/airspy_source_c.h b/lib/airspy/airspy_source_c.h
-index a7d817f..81add15 100644
---- a/lib/airspy/airspy_source_c.h
-+++ b/lib/airspy/airspy_source_c.h
-@@ -36,7 +36,7 @@
- class airspy_source_c;
-
- /*
-- * We use boost::shared_ptr's instead of raw pointers for all access
-+ * We use std::shared_ptr's instead of raw pointers for all access
- * to gr::blocks (and many other data structures). The shared_ptr gets
- * us transparent reference counting, which greatly simplifies storage
- * management issues. This is especially helpful in our hybrid
-@@ -44,9 +44,9 @@ class airspy_source_c;
- *
- * See http://www.boost.org/libs/smart_ptr/smart_ptr.htm
- *
-- * As a convention, the _sptr suffix indicates a boost::shared_ptr
-+ * As a convention, the _sptr suffix indicates a std::shared_ptr
- */
--typedef boost::shared_ptr<airspy_source_c> airspy_source_c_sptr;
-+typedef std::shared_ptr<airspy_source_c> airspy_source_c_sptr;
-
- /*!
- * \brief Return a shared_ptr to a new instance of airspy_source_c.
-diff --git a/lib/airspyhf/airspyhf_source_c.h b/lib/airspyhf/airspyhf_source_c.h
-index dbdd87a..d9dd952 100644
---- a/lib/airspyhf/airspyhf_source_c.h
-+++ b/lib/airspyhf/airspyhf_source_c.h
-@@ -35,7 +35,7 @@
-
- class airspyhf_source_c;
-
--typedef boost::shared_ptr<airspyhf_source_c> airspyhf_source_c_sptr;
-+typedef std::shared_ptr<airspyhf_source_c> airspyhf_source_c_sptr;
-
- /*!
- * \brief Return a shared_ptr to a new instance of airspyhf_source_c.
-diff --git a/lib/bladerf/bladerf_sink_c.h b/lib/bladerf/bladerf_sink_c.h
-index 9f8a496..268f8df 100644
---- a/lib/bladerf/bladerf_sink_c.h
-+++ b/lib/bladerf/bladerf_sink_c.h
-@@ -30,7 +30,7 @@
- class bladerf_sink_c;
-
- /*
-- * We use boost::shared_ptr's instead of raw pointers for all access
-+ * We use std::shared_ptr's instead of raw pointers for all access
- * to gr_blocks (and many other data structures). The shared_ptr gets
- * us transparent reference counting, which greatly simplifies storage
- * management issues. This is especially helpful in our hybrid
-@@ -38,9 +38,9 @@ class bladerf_sink_c;
- *
- * See http://www.boost.org/libs/smart_ptr/smart_ptr.htm
- *
-- * As a convention, the _sptr suffix indicates a boost::shared_ptr
-+ * As a convention, the _sptr suffix indicates a std::shared_ptr
- */
--typedef boost::shared_ptr<bladerf_sink_c> bladerf_sink_c_sptr;
-+typedef std::shared_ptr<bladerf_sink_c> bladerf_sink_c_sptr;
-
- /*!
- * \brief Return a shared_ptr to a new instance of bladerf_sink_c.
-diff --git a/lib/bladerf/bladerf_source_c.h b/lib/bladerf/bladerf_source_c.h
-index 05f9ddf..0cc26f4 100644
---- a/lib/bladerf/bladerf_source_c.h
-+++ b/lib/bladerf/bladerf_source_c.h
-@@ -30,7 +30,7 @@
- class bladerf_source_c;
-
- /*
-- * We use boost::shared_ptr's instead of raw pointers for all access
-+ * We use std::shared_ptr's instead of raw pointers for all access
- * to gr_blocks (and many other data structures). The shared_ptr gets
- * us transparent reference counting, which greatly simplifies storage
- * management issues. This is especially helpful in our hybrid
-@@ -38,9 +38,9 @@ class bladerf_source_c;
- *
- * See http://www.boost.org/libs/smart_ptr/smart_ptr.htm
- *
-- * As a convention, the _sptr suffix indicates a boost::shared_ptr
-+ * As a convention, the _sptr suffix indicates a std::shared_ptr
- */
--typedef boost::shared_ptr<bladerf_source_c> bladerf_source_c_sptr;
-+typedef std::shared_ptr<bladerf_source_c> bladerf_source_c_sptr;
-
- /*!
- * \brief Return a shared_ptr to a new instance of bladerf_source_c.
-diff --git a/lib/fcd/fcd_source_c.h b/lib/fcd/fcd_source_c.h
-index 2b02eb1..876e237 100644
---- a/lib/fcd/fcd_source_c.h
-+++ b/lib/fcd/fcd_source_c.h
-@@ -29,7 +29,7 @@
-
- class fcd_source_c;
-
--typedef boost::shared_ptr< fcd_source_c > fcd_source_c_sptr;
-+typedef std::shared_ptr< fcd_source_c > fcd_source_c_sptr;
-
- fcd_source_c_sptr make_fcd_source_c( const std::string & args = "" );
-
-diff --git a/lib/file/file_sink_c.h b/lib/file/file_sink_c.h
-index 6e59451..dac30f0 100644
---- a/lib/file/file_sink_c.h
-+++ b/lib/file/file_sink_c.h
-@@ -28,7 +28,7 @@
-
- class file_sink_c;
-
--typedef boost::shared_ptr< file_sink_c > file_sink_c_sptr;
-+typedef std::shared_ptr< file_sink_c > file_sink_c_sptr;
-
- file_sink_c_sptr make_file_sink_c( const std::string & args = "" );
-
-diff --git a/lib/file/file_source_c.h b/lib/file/file_source_c.h
-index 3e03037..b3d8b47 100644
---- a/lib/file/file_source_c.h
-+++ b/lib/file/file_source_c.h
-@@ -28,7 +28,7 @@
-
- class file_source_c;
-
--typedef boost::shared_ptr< file_source_c > file_source_c_sptr;
-+typedef std::shared_ptr< file_source_c > file_source_c_sptr;
-
- file_source_c_sptr make_file_source_c( const std::string & args = "" );
-
-diff --git a/lib/freesrp/freesrp_sink_c.h b/lib/freesrp/freesrp_sink_c.h
-index ce75785..23dd8ff 100644
---- a/lib/freesrp/freesrp_sink_c.h
-+++ b/lib/freesrp/freesrp_sink_c.h
-@@ -39,7 +39,7 @@
- class freesrp_sink_c;
-
- /*
-- * We use boost::shared_ptr's instead of raw pointers for all access
-+ * We use std::shared_ptr's instead of raw pointers for all access
- * to gr_blocks (and many other data structures). The shared_ptr gets
- * us transparent reference counting, which greatly simplifies storage
- * management issues. This is especially helpful in our hybrid
-@@ -47,9 +47,9 @@ class freesrp_sink_c;
- *
- * See http://www.boost.org/libs/smart_ptr/smart_ptr.htm
- *
-- * As a convention, the _sptr suffix indicates a boost::shared_ptr
-+ * As a convention, the _sptr suffix indicates a std::shared_ptr
- */
--typedef boost::shared_ptr<freesrp_sink_c> freesrp_sink_c_sptr;
-+typedef std::shared_ptr<freesrp_sink_c> freesrp_sink_c_sptr;
-
- /*!
- * \brief Return a shared_ptr to a new instance of freesrp_sink_c.
-diff --git a/lib/freesrp/freesrp_source_c.h b/lib/freesrp/freesrp_source_c.h
-index 08f115c..6b1604c 100644
---- a/lib/freesrp/freesrp_source_c.h
-+++ b/lib/freesrp/freesrp_source_c.h
-@@ -40,7 +40,7 @@
- class freesrp_source_c;
-
- /*
-- * We use boost::shared_ptr's instead of raw pointers for all access
-+ * We use std::shared_ptr's instead of raw pointers for all access
- * to gr_blocks (and many other data structures). The shared_ptr gets
- * us transparent reference counting, which greatly simplifies storage
- * management issues. This is especially helpful in our hybrid
-@@ -48,9 +48,9 @@ class freesrp_source_c;
- *
- * See http://www.boost.org/libs/smart_ptr/smart_ptr.htm
- *
-- * As a convention, the _sptr suffix indicates a boost::shared_ptr
-+ * As a convention, the _sptr suffix indicates a std::shared_ptr
- */
--typedef boost::shared_ptr<freesrp_source_c> freesrp_source_c_sptr;
-+typedef std::shared_ptr<freesrp_source_c> freesrp_source_c_sptr;
-
- /*!
- * \brief Return a shared_ptr to a new instance of freesrp_source_c.
-diff --git a/lib/hackrf/hackrf_sink_c.h b/lib/hackrf/hackrf_sink_c.h
-index 08ff2ca..ef719f3 100644
---- a/lib/hackrf/hackrf_sink_c.h
-+++ b/lib/hackrf/hackrf_sink_c.h
-@@ -45,7 +45,7 @@ typedef struct circular_buffer
- } circular_buffer_t;
-
- /*
-- * We use boost::shared_ptr's instead of raw pointers for all access
-+ * We use std::shared_ptr's instead of raw pointers for all access
- * to gr::blocks (and many other data structures). The shared_ptr gets
- * us transparent reference counting, which greatly simplifies storage
- * management issues. This is especially helpful in our hybrid
-@@ -53,9 +53,9 @@ typedef struct circular_buffer
- *
- * See http://www.boost.org/libs/smart_ptr/smart_ptr.htm
- *
-- * As a convention, the _sptr suffix indicates a boost::shared_ptr
-+ * As a convention, the _sptr suffix indicates a std::shared_ptr
- */
--typedef boost::shared_ptr<hackrf_sink_c> hackrf_sink_c_sptr;
-+typedef std::shared_ptr<hackrf_sink_c> hackrf_sink_c_sptr;
-
- /*!
- * \brief Return a shared_ptr to a new instance of hackrf_sink_c.
-diff --git a/lib/hackrf/hackrf_source_c.h b/lib/hackrf/hackrf_source_c.h
-index 0d38ac0..55a0fbb 100644
---- a/lib/hackrf/hackrf_source_c.h
-+++ b/lib/hackrf/hackrf_source_c.h
-@@ -34,7 +34,7 @@
- class hackrf_source_c;
-
- /*
-- * We use boost::shared_ptr's instead of raw pointers for all access
-+ * We use std::shared_ptr's instead of raw pointers for all access
- * to gr::blocks (and many other data structures). The shared_ptr gets
- * us transparent reference counting, which greatly simplifies storage
- * management issues. This is especially helpful in our hybrid
-@@ -42,9 +42,9 @@ class hackrf_source_c;
- *
- * See http://www.boost.org/libs/smart_ptr/smart_ptr.htm
- *
-- * As a convention, the _sptr suffix indicates a boost::shared_ptr
-+ * As a convention, the _sptr suffix indicates a std::shared_ptr
- */
--typedef boost::shared_ptr<hackrf_source_c> hackrf_source_c_sptr;
-+typedef std::shared_ptr<hackrf_source_c> hackrf_source_c_sptr;
-
- /*!
- * \brief Return a shared_ptr to a new instance of hackrf_source_c.
-diff --git a/lib/redpitaya/redpitaya_sink_c.h b/lib/redpitaya/redpitaya_sink_c.h
-index e03a13a..fceaa77 100644
---- a/lib/redpitaya/redpitaya_sink_c.h
-+++ b/lib/redpitaya/redpitaya_sink_c.h
-@@ -29,7 +29,7 @@
-
- class redpitaya_sink_c;
-
--typedef boost::shared_ptr< redpitaya_sink_c > redpitaya_sink_c_sptr;
-+typedef std::shared_ptr< redpitaya_sink_c > redpitaya_sink_c_sptr;
-
- redpitaya_sink_c_sptr make_redpitaya_sink_c( const std::string & args = "" );
-
-diff --git a/lib/redpitaya/redpitaya_source_c.h b/lib/redpitaya/redpitaya_source_c.h
-index 7d536ee..f4a2d80 100644
---- a/lib/redpitaya/redpitaya_source_c.h
-+++ b/lib/redpitaya/redpitaya_source_c.h
-@@ -29,7 +29,7 @@
-
- class redpitaya_source_c;
-
--typedef boost::shared_ptr< redpitaya_source_c > redpitaya_source_c_sptr;
-+typedef std::shared_ptr< redpitaya_source_c > redpitaya_source_c_sptr;
-
- redpitaya_source_c_sptr make_redpitaya_source_c( const std::string & args = "" );
-
-diff --git a/lib/rfspace/rfspace_source_c.h b/lib/rfspace/rfspace_source_c.h
-index d2bf66d..996f47b 100644
---- a/lib/rfspace/rfspace_source_c.h
-+++ b/lib/rfspace/rfspace_source_c.h
-@@ -38,7 +38,7 @@ class rfspace_source_c;
- #endif
-
- /*
-- * We use boost::shared_ptr's instead of raw pointers for all access
-+ * We use std::shared_ptr's instead of raw pointers for all access
- * to gr_blocks (and many other data structures). The shared_ptr gets
- * us transparent reference counting, which greatly simplifies storage
- * management issues. This is especially helpful in our hybrid
-@@ -46,9 +46,9 @@ class rfspace_source_c;
- *
- * See http://www.boost.org/libs/smart_ptr/smart_ptr.htm
- *
-- * As a convention, the _sptr suffix indicates a boost::shared_ptr
-+ * As a convention, the _sptr suffix indicates a std::shared_ptr
- */
--typedef boost::shared_ptr<rfspace_source_c> rfspace_source_c_sptr;
-+typedef std::shared_ptr<rfspace_source_c> rfspace_source_c_sptr;
-
- /*!
- * \brief Return a shared_ptr to a new instance of rfspace_source_c.
-diff --git a/lib/rtl/rtl_source_c.h b/lib/rtl/rtl_source_c.h
-index de3e349..99f14f4 100644
---- a/lib/rtl/rtl_source_c.h
-+++ b/lib/rtl/rtl_source_c.h
-@@ -35,7 +35,7 @@ class rtl_source_c;
- typedef struct rtlsdr_dev rtlsdr_dev_t;
-
- /*
-- * We use boost::shared_ptr's instead of raw pointers for all access
-+ * We use std::shared_ptr's instead of raw pointers for all access
- * to gr::blocks (and many other data structures). The shared_ptr gets
- * us transparent reference counting, which greatly simplifies storage
- * management issues. This is especially helpful in our hybrid
-@@ -43,9 +43,9 @@ typedef struct rtlsdr_dev rtlsdr_dev_t;
- *
- * See http://www.boost.org/libs/smart_ptr/smart_ptr.htm
- *
-- * As a convention, the _sptr suffix indicates a boost::shared_ptr
-+ * As a convention, the _sptr suffix indicates a std::shared_ptr
- */
--typedef boost::shared_ptr<rtl_source_c> rtl_source_c_sptr;
-+typedef std::shared_ptr<rtl_source_c> rtl_source_c_sptr;
-
- /*!
- * \brief Return a shared_ptr to a new instance of rtl_source_c.
-diff --git a/lib/rtl_tcp/rtl_tcp_source_c.h b/lib/rtl_tcp/rtl_tcp_source_c.h
-index b07e5dd..2c11018 100644
---- a/lib/rtl_tcp/rtl_tcp_source_c.h
-+++ b/lib/rtl_tcp/rtl_tcp_source_c.h
-@@ -26,7 +26,7 @@
-
- class rtl_tcp_source_c;
-
--typedef boost::shared_ptr< rtl_tcp_source_c > rtl_tcp_source_c_sptr;
-+typedef std::shared_ptr< rtl_tcp_source_c > rtl_tcp_source_c_sptr;
-
- rtl_tcp_source_c_sptr make_rtl_tcp_source_c( const std::string & args = "" );
-
-diff --git a/lib/rtl_tcp/rtl_tcp_source_f.h b/lib/rtl_tcp/rtl_tcp_source_f.h
-index 84ac57a..e9bc87d 100644
---- a/lib/rtl_tcp/rtl_tcp_source_f.h
-+++ b/lib/rtl_tcp/rtl_tcp_source_f.h
-@@ -59,7 +59,7 @@ enum rtlsdr_tuner {
- };
-
- class rtl_tcp_source_f;
--typedef boost::shared_ptr<rtl_tcp_source_f> rtl_tcp_source_f_sptr;
-+typedef std::shared_ptr<rtl_tcp_source_f> rtl_tcp_source_f_sptr;
-
- rtl_tcp_source_f_sptr make_rtl_tcp_source_f (
- size_t itemsize,
-diff --git a/lib/sdrplay/sdrplay_source_c.h b/lib/sdrplay/sdrplay_source_c.h
-index b59f44a..9ea6cb9 100644
---- a/lib/sdrplay/sdrplay_source_c.h
-+++ b/lib/sdrplay/sdrplay_source_c.h
-@@ -36,7 +36,7 @@ class sdrplay_source_c;
- typedef struct sdrplay_dev sdrplay_dev_t;
-
- /*
-- * We use boost::shared_ptr's instead of raw pointers for all access
-+ * We use std::shared_ptr's instead of raw pointers for all access
- * to gr::blocks (and many other data structures). The shared_ptr gets
- * us transparent reference counting, which greatly simplifies storage
- * management issues. This is especially helpful in our hybrid
-@@ -44,9 +44,9 @@ typedef struct sdrplay_dev sdrplay_dev_t;
- *
- * See http://www.boost.org/libs/smart_ptr/smart_ptr.htm
- *
-- * As a convention, the _sptr suffix indicates a boost::shared_ptr
-+ * As a convention, the _sptr suffix indicates a std::shared_ptr
- */
--typedef boost::shared_ptr<sdrplay_source_c> sdrplay_source_c_sptr;
-+typedef std::shared_ptr<sdrplay_source_c> sdrplay_source_c_sptr;
-
- /*!
- * \brief Return a shared_ptr to a new instance of sdrplay_source_c.
-diff --git a/lib/soapy/soapy_sink_c.h b/lib/soapy/soapy_sink_c.h
-index 4900d15..514f954 100644
---- a/lib/soapy/soapy_sink_c.h
-+++ b/lib/soapy/soapy_sink_c.h
-@@ -36,7 +36,7 @@ namespace SoapySDR
- }
-
- /*
-- * We use boost::shared_ptr's instead of raw pointers for all access
-+ * We use std::shared_ptr's instead of raw pointers for all access
- * to gr_blocks (and many other data structures). The shared_ptr gets
- * us transparent reference counting, which greatly simplifies storage
- * management issues. This is especially helpful in our hybrid
-@@ -44,9 +44,9 @@ namespace SoapySDR
- *
- * See http://www.boost.org/libs/smart_ptr/smart_ptr.htm
- *
-- * As a convention, the _sptr suffix indicates a boost::shared_ptr
-+ * As a convention, the _sptr suffix indicates a std::shared_ptr
- */
--typedef boost::shared_ptr<soapy_sink_c> soapy_sink_c_sptr;
-+typedef std::shared_ptr<soapy_sink_c> soapy_sink_c_sptr;
-
- /*!
- * \brief Return a shared_ptr to a new instance of soapy_sink_c.
-diff --git a/lib/soapy/soapy_source_c.h b/lib/soapy/soapy_source_c.h
-index b4db1ce..7ae6322 100644
---- a/lib/soapy/soapy_source_c.h
-+++ b/lib/soapy/soapy_source_c.h
-@@ -36,7 +36,7 @@ namespace SoapySDR
- }
-
- /*
-- * We use boost::shared_ptr's instead of raw pointers for all access
-+ * We use std::shared_ptr's instead of raw pointers for all access
- * to gr_blocks (and many other data structures). The shared_ptr gets
- * us transparent reference counting, which greatly simplifies storage
- * management issues. This is especially helpful in our hybrid
-@@ -44,9 +44,9 @@ namespace SoapySDR
- *
- * See http://www.boost.org/libs/smart_ptr/smart_ptr.htm
- *
-- * As a convention, the _sptr suffix indicates a boost::shared_ptr
-+ * As a convention, the _sptr suffix indicates a std::shared_ptr
- */
--typedef boost::shared_ptr<soapy_source_c> soapy_source_c_sptr;
-+typedef std::shared_ptr<soapy_source_c> soapy_source_c_sptr;
-
- /*!
- * \brief Return a shared_ptr to a new instance of soapy_source_c.
-diff --git a/lib/uhd/uhd_sink_c.h b/lib/uhd/uhd_sink_c.h
-index 700fe4a..9b673b0 100644
---- a/lib/uhd/uhd_sink_c.h
-+++ b/lib/uhd/uhd_sink_c.h
-@@ -27,7 +27,7 @@
-
- class uhd_sink_c;
-
--typedef boost::shared_ptr< uhd_sink_c > uhd_sink_c_sptr;
-+typedef std::shared_ptr< uhd_sink_c > uhd_sink_c_sptr;
-
- uhd_sink_c_sptr make_uhd_sink_c(const std::string &args = "");
-
-diff --git a/lib/uhd/uhd_source_c.h b/lib/uhd/uhd_source_c.h
-index e80be99..f3b2797 100644
---- a/lib/uhd/uhd_source_c.h
-+++ b/lib/uhd/uhd_source_c.h
-@@ -27,7 +27,7 @@
-
- class uhd_source_c;
-
--typedef boost::shared_ptr< uhd_source_c > uhd_source_c_sptr;
-+typedef std::shared_ptr< uhd_source_c > uhd_source_c_sptr;
-
- uhd_source_c_sptr make_uhd_source_c(const std::string &args = "");
-
-diff --git a/lib/xtrx/xtrx_obj.h b/lib/xtrx/xtrx_obj.h
-index e26947d..8f64260 100644
---- a/lib/xtrx/xtrx_obj.h
-+++ b/lib/xtrx/xtrx_obj.h
-@@ -28,7 +28,7 @@
-
- class xtrx_obj;
-
--typedef boost::shared_ptr<xtrx_obj> xtrx_obj_sptr;
-+typedef std::shared_ptr<xtrx_obj> xtrx_obj_sptr;
-
- class xtrx_obj
- {
-diff --git a/lib/xtrx/xtrx_sink_c.h b/lib/xtrx/xtrx_sink_c.h
-index 1263858..e923900 100644
---- a/lib/xtrx/xtrx_sink_c.h
-+++ b/lib/xtrx/xtrx_sink_c.h
-@@ -36,7 +36,7 @@ static const pmt::pmt_t COMMAND_KEY = pmt::string_to_symbol("tx_command");
-
- class xtrx_sink_c;
-
--typedef boost::shared_ptr< xtrx_sink_c > xtrx_sink_c_sptr;
-+typedef std::shared_ptr< xtrx_sink_c > xtrx_sink_c_sptr;
-
- xtrx_sink_c_sptr make_xtrx_sink_c( const std::string & args = "" );
-
-diff --git a/lib/xtrx/xtrx_source_c.h b/lib/xtrx/xtrx_source_c.h
-index fda9d77..6ec2fb2 100644
---- a/lib/xtrx/xtrx_source_c.h
-+++ b/lib/xtrx/xtrx_source_c.h
-@@ -32,7 +32,7 @@ static const pmt::pmt_t FREQ_KEY = pmt::string_to_symbol("rx_freq");
-
- class xtrx_source_c;
-
--typedef boost::shared_ptr< xtrx_source_c > xtrx_source_c_sptr;
-+typedef std::shared_ptr< xtrx_source_c > xtrx_source_c_sptr;
-
- xtrx_source_c_sptr make_xtrx_source_c( const std::string & args = "" );
-
-diff --git a/swig/osmosdr_swig.i b/swig/osmosdr_swig.i
-index 550008b..da42e6e 100644
---- a/swig/osmosdr_swig.i
-+++ b/swig/osmosdr_swig.i
-@@ -63,7 +63,7 @@
- };
-
- %define OSMOSDR_SWIG_BLOCK_MAGIC2(PKG, BASE_NAME)
--%template(BASE_NAME ## _sptr) boost::shared_ptr<PKG ## :: ## BASE_NAME>;
-+%template(BASE_NAME ## _sptr) std::shared_ptr<PKG ## :: ## BASE_NAME>;
- %pythoncode %{
- BASE_NAME ## _sptr.__repr__ = lambda self: "<gr_block %s (%d)>" % (self.name(), self.unique_id())
- BASE_NAME = BASE_NAME.make;
---
-cgit v1.2.3
-
diff --git a/testing/gr-satellites/APKBUILD b/testing/gr-satellites/APKBUILD
new file mode 100644
index 00000000000..8709db57239
--- /dev/null
+++ b/testing/gr-satellites/APKBUILD
@@ -0,0 +1,39 @@
+# Contributor: Edd Salkield <edd@salkield.uk>
+# Maintainer: Edd Salkield <edd@salkield.uk>
+pkgname=gr-satellites
+pkgver=5.3.0
+pkgrel=5
+pkgdesc="satellite decoder blocks for GNURadio"
+url="https://github.com/daniestevez/gr-satellites"
+# gnuradio
+arch="aarch64 armv7 x86_64"
+license="GPL-3.0-or-later"
+depends="python3 py3-requests py3-construct"
+makedepends="
+ cmake
+ fmt-dev
+ gnuradio-dev
+ samurai
+ "
+subpackages="$pkgname-dev $pkgname-doc"
+source="https://github.com/daniestevez/gr-satellites/archive/v$pkgver/gr-satellites-v$pkgver.tar.gz
+ no-zip-man.patch
+ "
+options="!check" # no integrated tests
+
+build() {
+ cmake -B build -G Ninja -Wno-dev \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DCMAKE_INSTALL_PREFIX=/usr
+
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+cefe7b7795c74f99b8388d3aa9d60749bc00d804ee3e843d9a5d32c41eb6e6fcd2ec2cb4693a872aee7984433e3cae5e4ab592efa402ec010eb009326c1f60ab gr-satellites-v5.3.0.tar.gz
+344ec6352da59e95492f70e389c9317c6e5700bb4cf05f4574aca841fa3660e6c00586124493a9822b1c47d4c28f0b59be2c9bc3ad1d6fc8790d764a3af04da1 no-zip-man.patch
+"
diff --git a/testing/gr-satellites/no-zip-man.patch b/testing/gr-satellites/no-zip-man.patch
new file mode 100644
index 00000000000..08449548fca
--- /dev/null
+++ b/testing/gr-satellites/no-zip-man.patch
@@ -0,0 +1,18 @@
+manpages should not be precompressed
+diff --git a/docs/CMakeLists.txt b/docs/CMakeLists.txt
+index a35ab8b..82ec3cc 100644
+--- a/docs/CMakeLists.txt
++++ b/docs/CMakeLists.txt
+@@ -64,11 +64,8 @@ list(APPEND manpages
+ set(MAN_INSTALL_DIR ${CMAKE_INSTALL_PREFIX}/share/man)
+
+ foreach(manpage ${manpages})
+- add_custom_target(generate_manpage_${manpage} ALL
+- COMMAND ${BZIP} -c ${MAN_SRC_DIR}/${manpage} > ${MAN_BUILD_DIR}/${manpage}.bz2
+- )
+ install(FILES
+- ${MAN_BUILD_DIR}/${manpage}.bz2
++ ${MAN_SRC_DIR}/${manpage}
+ DESTINATION ${MAN_INSTALL_DIR}/man1
+ )
+ endforeach(manpage)
diff --git a/testing/gradio/APKBUILD b/testing/gradio/APKBUILD
deleted file mode 100644
index d8f96fb86b4..00000000000
--- a/testing/gradio/APKBUILD
+++ /dev/null
@@ -1,28 +0,0 @@
-# Contributor: Daniele Debernardi <drebrez@gmail.com>
-# Maintainer: Daniele Debernardi <drebrez@gmail.com>
-pkgname=gradio
-pkgver=7.3
-pkgrel=3
-pkgdesc="A GTK3 app for finding and listening to internet radio stations"
-url="https://github.com/haecker-felix/Gradio"
-arch="all !armhf" # gst-plugins-good missing, which depends on qt5-declarative
-license="GPL-3.0-or-later"
-depends="gst-plugins-good"
-makedepends="meson vala gtk+3.0-dev libsoup-dev json-glib-dev gstreamer-dev gst-plugins-base-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/haecker-felix/$pkgname/archive/v$pkgver.tar.gz"
-builddir="$srcdir/Gradio-$pkgver"
-
-build() {
- abuild-meson . output
- meson compile ${JOBS:+-j ${JOBS}} -C output
-}
-
-check() {
- meson test --no-rebuild -v -C output
-}
-
-package() {
- DESTDIR="$pkgdir" meson install --no-rebuild -C output
-}
-
-sha512sums="d2bfd49ead90627b0516c320a5260f14ba2ea9ab5e417dafc38babc7eaaa706395986122d103bde931406f4240212210d2a7dbee6b69bddb901dc5705cac977b gradio-7.3.tar.gz"
diff --git a/testing/grafana-image-renderer/APKBUILD b/testing/grafana-image-renderer/APKBUILD
index 9b0b2c7ad56..a424a4150dd 100644
--- a/testing/grafana-image-renderer/APKBUILD
+++ b/testing/grafana-image-renderer/APKBUILD
@@ -1,30 +1,43 @@
# Contributor: Konstantin Kulikov <k.kulikov2@gmail.com>
# Maintainer: Konstantin Kulikov <k.kulikov2@gmail.com>
pkgname=grafana-image-renderer
-pkgver=3.4.2
+pkgver=3.10.2
pkgrel=0
pkgdesc="Grafana Backend Plugin that handles rendering of panels & dashboards to PNGs using headless chrome"
url="https://github.com/grafana/grafana-image-renderer"
arch="x86_64" # Requires chromium, aarch64 and armv7 doesn't build because of grpc.
license="Apache-2.0"
makedepends="yarn"
-depends="nodejs ttf-opensans chromium ca-certificates"
+depends="nodejs font-opensans chromium ca-certificates"
options="!check" # Has no test suite.
install="$pkgname.pre-install"
subpackages="$pkgname-openrc"
source="$pkgname-$pkgver.tar.gz::https://github.com/grafana/grafana-image-renderer/archive/v$pkgver.tar.gz
$pkgname.initd $pkgname.confd $pkgname.json"
+# secfixes:
+# 3.6.1-r0:
+# - CVE-2022-31176
+
build() {
export CHROME_BIN="/usr/bin/chromium-browser"
export PUPPETEER_SKIP_CHROMIUM_DOWNLOAD="true"
- # Don't pollute our aports repo with husky git hooks.
- # This command also acts as implicit "yarn install".
- yarn remove --pure-lockfile --ignore-engines -W husky
-
- # Wants nodejs 13, but alpine ships 14, ignore this requirement.
+ yarn install --pure-lockfile --ignore-engines
yarn --ignore-engines build
+ find . -type f \( \
+ -name '.*' -o \
+ -name '*.cmd' -o \
+ -name '*.bat' -o \
+ -name '*.map' -o \
+ -name '*.md' -o \
+ \( -name '*.ts' -a ! -name '*.d.ts' \) -o \
+ -name 'AUTHORS*' -o \
+ -name 'LICENSE*' -o \
+ -name 'license' -o \
+ -name 'Makefile' -o \
+ -name 'README*' -o \
+ -name 'readme.markdown' \) -delete
}
package() {
@@ -36,8 +49,8 @@ package() {
}
sha512sums="
-95757e89fc84fdd0f5b2efa0f9230a69dc91ccf9892ddb5c6db1bf2d1c1fd9b8b317938b59e88ddb37af9c80a6493e3215dcb3ce3a8b1fb8cdac709a6abafbd7 grafana-image-renderer-3.4.2.tar.gz
+c83f38caca013517febc8c52a2c2aa0d1d9346e084b3305f3ffe5d15fc1bae19a971751cb69554096afd22bdba98037b5a6cd36ba634e00d7a2bab89cffa576a grafana-image-renderer-3.10.2.tar.gz
06faad0f5abecf434c014ca91dccf3f07f18d96a8f526c3c1d2384cba8db44db5fe2b2165d8fc12a8fe8d121135077b0c70158ee29ebb1bfba8dd2a3110b349c grafana-image-renderer.initd
88a119ad18fbde490ab9213487ae16b8aeeb65437275a1112f7423fa581a7470e6fb68654c2fd439afa68c0333aeefd0711f3fffd53615fa51d0702c80ed1c1b grafana-image-renderer.confd
-2ce48b9ea1da4ce5a16da5acb3fd801480d297ab2c39848020a99dd285640e003eb0d1c26b407f06ef5ad0ff2968b5ae71f56c26870346e6ad86e1f70df4cb78 grafana-image-renderer.json
+8fc756536a429dc3343216e64fa33af8c601d83d03d81bd6096e46b33e5d1249f95be719ea489b13bd1af936771e8eeffd3ff7d8c5cdf622c3188b342c8fbdbd grafana-image-renderer.json
"
diff --git a/testing/grafana-image-renderer/grafana-image-renderer.json b/testing/grafana-image-renderer/grafana-image-renderer.json
index 7f00eb78034..55c8e6687dc 100644
--- a/testing/grafana-image-renderer/grafana-image-renderer.json
+++ b/testing/grafana-image-renderer/grafana-image-renderer.json
@@ -15,14 +15,15 @@
"json": true,
"colorize": false
}
+ },
+
+ "security": {
+ "authToken": "-"
}
},
"rendering": {
"chromeBin": "/usr/bin/chromium-browser",
- "args": [
- "--no-sandbox",
- "--disable-gpu"
- ],
+ "args": ["--no-sandbox", "--disable-gpu"],
"ignoresHttpsErrors": false,
"timezone": null,
@@ -32,15 +33,21 @@
"deviceScaleFactor": 1,
"maxWidth": 3080,
"maxHeight": 3000,
- "maxDeviceScaleFactor": 3,
+ "maxDeviceScaleFactor": 4,
+ "pageZoomLevel": 1,
+ "headed": false,
"mode": "default",
+ "emulateNetworkConditions": false,
"clustering": {
+ "monitor": false,
"mode": "browser",
- "maxConcurrency": 5
+ "maxConcurrency": 5,
+ "timeout": 30
},
"verboseLogging": false,
- "dumpio": false
+ "dumpio": false,
+ "timingMetrics": false
}
}
diff --git a/testing/granite7/APKBUILD b/testing/granite7/APKBUILD
new file mode 100644
index 00000000000..1fe8d467e3f
--- /dev/null
+++ b/testing/granite7/APKBUILD
@@ -0,0 +1,49 @@
+# Contributor: Jakub Jirutka <jakub@jirutka.cz>
+# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
+pkgname=granite7
+pkgver=7.4.0
+pkgrel=0
+pkgdesc="Library that extends GTK with common widgets and utilities"
+url="https://github.com/elementary/granite"
+arch="all"
+license="LGPL-3.0"
+depends="
+ gsettings-desktop-schemas
+ hicolor-icon-theme
+ "
+makedepends="
+ glib-dev
+ gobject-introspection-dev
+ gtk4.0-dev
+ libgee-dev
+ meson
+ sassc
+ vala
+ "
+subpackages="
+ $pkgname-dev
+ $pkgname-lang
+ "
+source="https://github.com/elementary/granite/archive/$pkgver/granite-$pkgver.tar.gz"
+options="!check" # no tests provided
+builddir="$srcdir/granite-$pkgver/"
+
+build() {
+ abuild-meson . output
+ meson compile -j ${JOBS:-0} -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+dev() {
+ default_dev
+
+ amove usr/bin/granite-7-demo
+ amove usr/share/applications/io.elementary.granite-7.demo.desktop
+}
+
+sha512sums="
+052db438b5314f0308be7f6084c04beae6d14855a02fbd5efd96b357ad264ab917baa2634cdc09172a09f5f7b145a9c2de18920ffd22762935ba98708b558611 granite-7.4.0.tar.gz
+"
diff --git a/testing/grass/APKBUILD b/testing/grass/APKBUILD
new file mode 100644
index 00000000000..a52633c1940
--- /dev/null
+++ b/testing/grass/APKBUILD
@@ -0,0 +1,35 @@
+# Contributor: Lauren N. Liberda <lauren@selfisekai.rocks>
+# Maintainer: Lauren N. Liberda <lauren@selfisekai.rocks>
+pkgname=grass
+pkgver=0.12.3
+pkgrel=1
+pkgdesc="Sass compiler written purely in Rust"
+url="https://github.com/connorskees/grass"
+arch="all"
+license="MIT"
+makedepends="cargo cargo-auditable"
+source="
+ https://github.com/connorskees/grass/archive/v$pkgver/grass-v$pkgver.tar.gz
+ "
+
+prepare() {
+ default_prepare
+
+ cargo fetch --locked --target="$CTARGET"
+}
+
+build() {
+ cargo auditable build -p grass --release --frozen
+}
+
+check() {
+ cargo test -p grass --tests
+}
+
+package() {
+ install -Dm755 target/release/grass "$pkgdir"/usr/bin/grass
+}
+
+sha512sums="
+ea70ce7627059cd567052edcd0c0259f9f7b5db38d66211ab4c3310470ba27cf19d828731930ae56ec506fe58d5acbc2e7b53b1aef9ae274dea51e3f78efaa23 grass-v0.12.3.tar.gz
+"
diff --git a/testing/grcov/APKBUILD b/testing/grcov/APKBUILD
index 28db5e6e04f..77f1f86a4dc 100644
--- a/testing/grcov/APKBUILD
+++ b/testing/grcov/APKBUILD
@@ -1,29 +1,36 @@
# Contributor: Rasmus Thomsen <oss@cogitri.dev>
-# Maintainer: Rasmus Thomsen <oss@cogitri.dev>
+# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=grcov
-pkgver=0.8.7
-pkgrel=0
+pkgver=0.8.19
+pkgrel=1
pkgdesc="Rust tool to collect and aggregate code coverage data"
url="https://github.com/mozilla/grcov"
arch="x86_64 armv7 armhf aarch64 x86 ppc64le" # Limited by cargo
license="MPL-2.0"
depends="gcc" # gcov
-makedepends="cargo"
+makedepends="cargo cargo-auditable"
options="net !check" # Failing due to utf-8 (locale?)
source="$pkgname-$pkgver.tar.gz::https://github.com/mozilla/grcov/archive/v$pkgver.tar.gz"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
build() {
- cargo build --release --locked --verbose
+ cargo auditable build --release --frozen
}
check() {
- cargo test --release --locked --verbose
+ cargo test --frozen
}
package() {
- install -Dm0755 target/release/grcov -t "$pkgdir"/usr/bin
+ install -Dm755 target/release/grcov -t "$pkgdir"/usr/bin
}
sha512sums="
-543f45b32225e85ebe1a5953ba9170a5a54911b9d6e227cef6e5acbb357024c406b90daa4186fcae57062955b92b379b55401a2f072faefba64268ef097d1b91 grcov-0.8.7.tar.gz
+623ebd9ac9951576584371fc90ceffc31f016a8816f02d66e3d980dd4a93bd81839c0630019d9c972a00927191b781645b15ff7d995881460082dd1c07875886 grcov-0.8.19.tar.gz
"
diff --git a/testing/greetd-gtkgreet/APKBUILD b/testing/greetd-gtkgreet/APKBUILD
deleted file mode 100644
index e4d872c9b98..00000000000
--- a/testing/greetd-gtkgreet/APKBUILD
+++ /dev/null
@@ -1,29 +0,0 @@
-# Contributor: Sean McAvoy <seanmcavoy@gmail.com>
-# Maintainer: Sean McAvoy <seanmcavoy@gmail.com>
-pkgname=greetd-gtkgreet
-_pkgname=gtkgreet
-pkgver=0.7
-pkgrel=0
-pkgdesc="GTK-based greeter for greetd"
-url="https://git.sr.ht/~kennylevinsen/gtkgreet"
-arch="all !s390x !riscv64" # blocked by greetd
-license="GPL-3.0-only"
-depends="greetd"
-makedepends="meson scdoc json-c-dev gtk+3.0-dev gtk-layer-shell-dev"
-options="!check" # no test suite
-subpackages="$pkgname-doc"
-source="greetd-gtkgreet-$pkgver.tar.gz::https://git.sr.ht/~kennylevinsen/gtkgreet/archive/$pkgver.tar.gz
- fix-for-musl-use-uint-ssize.patch"
-builddir="$srcdir/$_pkgname-$pkgver"
-
-build() {
- abuild-meson output .
- meson compile ${JOBS:+-j ${JOBS}} -C output
-}
-
-package() {
- DESTDIR="$pkgdir" meson install --no-rebuild -C output
-}
-
-sha512sums="eea3c90c9f6e4bb4cc8d7cc325668c6452e153dd7097b45694390b843769ee08e3598a7771da3b2765f09dd8f3b9de4910c5160221c8fc7191e2a09709a418f8 greetd-gtkgreet-0.7.tar.gz
-85b51914ba81f37c6d6d39c20d1f228bedceb34e11c963b0938e32b475e10c4f699852fb802bb7fb42a3b1de716a5c55d1038a2e9afe37ddb9f68061da8a30ca fix-for-musl-use-uint-ssize.patch"
diff --git a/testing/greetd-gtkgreet/fix-for-musl-use-uint-ssize.patch b/testing/greetd-gtkgreet/fix-for-musl-use-uint-ssize.patch
deleted file mode 100644
index 58221e74941..00000000000
--- a/testing/greetd-gtkgreet/fix-for-musl-use-uint-ssize.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-diff --git a/gtkgreet/proto.c b/gtkgreet/proto.c
-index 1ad17c1937..92619494a7 100644
---- a/gtkgreet/proto.c
-+++ b/gtkgreet/proto.c
-@@ -23,10 +23,10 @@ static int write_req(int fd, struct json_object* req) {
- const char* reqstr = json_object_get_string(req);
- uint32_t len = strlen(reqstr);
- char* headerp = (char*)&len;
-- ssize_t off = 0;
-+ size_t off = 0;
-
- while (off < 4) {
-- ssize_t n = write(fd, &headerp[off], 4-off);
-+ size_t n = write(fd, &headerp[off], 4-off);
- if (n < 1) {
- goto error;
- }
-@@ -35,7 +35,7 @@ static int write_req(int fd, struct json_object* req) {
-
- off = 0;
- while (off < len) {
-- ssize_t n = write(fd, &reqstr[off], len-off);
-+ size_t n = write(fd, &reqstr[off], len-off);
- if (n < 1) {
- goto error;
- }
-@@ -51,11 +51,11 @@ static struct json_object* read_resp(int fd) {
- struct json_object* resp = NULL;
- char *respstr = NULL;
- uint32_t len;
-- ssize_t off = 0;
-+ size_t off = 0;
-
- while (off < 4) {
- char* headerp = (char*)&len;
-- ssize_t n = read(fd, &headerp[off], 4-off);
-+ size_t n = read(fd, &headerp[off], 4-off);
- if (n < 1) {
- goto end;
- }
diff --git a/testing/greetd-mini-wl-greeter/APKBUILD b/testing/greetd-mini-wl-greeter/APKBUILD
new file mode 100644
index 00000000000..158e137c3ab
--- /dev/null
+++ b/testing/greetd-mini-wl-greeter/APKBUILD
@@ -0,0 +1,42 @@
+# Contributor: Hugo Osvaldo Barrera <hugo@whynothugo.nl>
+# Maintainer: Hugo Osvaldo Barrera <hugo@whynothugo.nl>
+pkgname=greetd-mini-wl-greeter
+pkgver=0_git20230821
+_commit=4caf09d20a9038d2a83349ad0f3e97cfa28ae979
+pkgrel=0
+pkgdesc="Extremely minimal raw Wayland greeter for greetd"
+url="https://github.com/philj56/greetd-mini-wl-greeter"
+arch="all"
+license="MIT"
+makedepends="
+ cairo-dev
+ json-c-dev
+ libepoxy-dev
+ libxkbcommon-dev
+ meson
+ musl-fts-dev
+ pango-dev
+ scdoc
+ wayland-dev
+ wayland-protocols
+ "
+subpackages="
+ $pkgname-doc
+ $pkgname-bash-completion
+ "
+source="https://github.com/philj56/greetd-mini-wl-greeter/archive/$_commit.tar.gz"
+options="!check" # no tests provided
+builddir="$srcdir/greetd-mini-wl-greeter-$_commit/"
+
+build() {
+ LDFLAGS="$LDFLAGS -lfts" abuild-meson . output
+ meson compile -j ${JOBS:-0} -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+sha512sums="
+a91eda7848d11c184b31967d2ac1b1bacf5fb728bf7e01bcc327ff822107272a379f13f278bc518714bea1ad2600aeb6002c5212c7593463e127725b7f92a907 4caf09d20a9038d2a83349ad0f3e97cfa28ae979.tar.gz
+"
diff --git a/testing/greetd-regreet/APKBUILD b/testing/greetd-regreet/APKBUILD
new file mode 100644
index 00000000000..41efad49a02
--- /dev/null
+++ b/testing/greetd-regreet/APKBUILD
@@ -0,0 +1,39 @@
+# Contributor: Guy Godfroy <guy.godfroy@gugod.fr>
+# Maintainer: Guy Godfroy <guy.godfroy@gugod.fr>
+pkgname=greetd-regreet
+pkgver=0.1.1
+pkgrel=0
+pkgdesc="Clean and customizable GTK4 based greeter for greetd"
+url="https://github.com/rharish101/ReGreet"
+# s390x, riscv64: greetd
+# armhf: fails to build
+arch="all !armhf !s390x !riscv64"
+license="GPL-3.0-or-later"
+depends="greetd"
+makedepends="cargo gtk4.0-dev cargo-auditable"
+source="$pkgname-$pkgver.tar.gz::https://github.com/rharish101/ReGreet/archive/refs/tags/$pkgver.tar.gz"
+builddir="$srcdir/ReGreet-$pkgver"
+
+_cargo_opts="--frozen --features gtk4_8"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build $_cargo_opts --release
+}
+
+check() {
+ cargo test $_cargo_opts
+}
+
+package() {
+ install -Dm755 target/release/regreet "$pkgdir"/usr/bin/regreet
+}
+
+sha512sums="
+c2276c9ee3699974a5ebdefe811bfdb15d5642f6d3d20f6ea6b4f5ce3b40a9691ed42441e50f506a503ef523b894ff28d1746844b26bc32dff5db18a1d5e8150 greetd-regreet-0.1.1.tar.gz
+"
diff --git a/testing/greetd-wlgreet/APKBUILD b/testing/greetd-wlgreet/APKBUILD
new file mode 100644
index 00000000000..842d9ada316
--- /dev/null
+++ b/testing/greetd-wlgreet/APKBUILD
@@ -0,0 +1,43 @@
+# Contributor: Jakub Jirutka <jakub@jirutka.cz>
+# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
+pkgname=greetd-wlgreet
+_projname=wlgreet
+pkgver=0.4.1
+pkgrel=0
+pkgdesc="Raw wayland greeter for greetd"
+url="https://git.sr.ht/~kennylevinsen/wlgreet"
+# riscv64, s390x: blocked by greetd
+arch="all !riscv64 !s390x"
+license="GPL-3.0-only"
+depends="
+ greetd
+ wayland-libs-client
+ "
+makedepends="
+ cargo
+ cargo-auditable
+ wayland-dev
+ "
+source="$pkgname-$pkgver.tar.gz::https://git.sr.ht/~kennylevinsen/wlgreet/archive/$pkgver.tar.gz"
+builddir="$srcdir/$_projname-$pkgver"
+options="!check" # no tests provided
+
+export CARGO_PROFILE_RELEASE_OPT_LEVEL="z"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release
+}
+
+package() {
+ install -D -m755 target/release/wlgreet -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+f5259992a43af751e91a328433594cc4c97805ad5a7c2bd81a0b455128994b8f925fe9e314759f08ce409a186c1e8942a77a60becbca5d974da647c8a045dcfb greetd-wlgreet-0.4.1.tar.gz
+"
diff --git a/testing/greetd/APKBUILD b/testing/greetd/APKBUILD
deleted file mode 100644
index 9585242ce7d..00000000000
--- a/testing/greetd/APKBUILD
+++ /dev/null
@@ -1,60 +0,0 @@
-# Contributor: Sean McAvoy <seanmcavoy@gmail.com>
-# Maintainer: Sean McAvoy <seanmcavoy@gmail.com>
-pkgname=greetd
-pkgver=0.8.0
-pkgrel=2
-pkgdesc="Minimal and flexible login manager daemon"
-url="https://git.sr.ht/~kennylevinsen/greetd"
-arch="all !s390x !riscv64" # limited by cargo/rust
-license="GPL-3.0-only"
-makedepends="cargo linux-pam-dev scdoc"
-install="$pkgname.pre-install"
-pkgusers="greetd"
-pkggroups="greetd"
-subpackages="$pkgname-doc $pkgname-openrc $pkgname-agreety"
-source="$pkgname-$pkgver.tar.gz::https://git.sr.ht/~kennylevinsen/greetd/archive/$pkgver.tar.gz
- $pkgname.pam
- $pkgname.initd
- $pkgname.confd
- config.patch
- "
-builddir="$srcdir/$pkgname-$pkgver"
-
-export RUSTFLAGS="--remap-path-prefix=$builddir=/build/"
-
-build() {
- cargo build --release --locked
- make -C man
-}
-
-check() {
- cargo check --locked
-}
-
-package() {
- install -Dm755 target/release/greetd "$pkgdir"/usr/sbin/greetd
- install -Dm755 target/release/agreety "$pkgdir"/usr/bin/agreety
-
- install -Dm644 config.toml "$pkgdir"/etc/greetd/config.toml
- install -Dm644 "$srcdir"/$pkgname.pam "$pkgdir"/etc/pam.d/$pkgname
-
- install -Dm755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
- install -Dm644 "$srcdir"/$pkgname.confd "$pkgdir"/etc/conf.d/$pkgname
-
- make -C man install PREFIX=/usr DESTDIR="$pkgdir"
-}
-
-agreety() {
- pkgdesc="Simple, text-based greeter"
- depends="$pkgname"
-
- amove usr/bin/agreety
-}
-
-sha512sums="
-40f007e38ca41faac97b3faba60e49d524c9e3afb4b594fcbc04a129701fa6177a915b2998e61f0ca615f4c8bd3078ef9fbd562c8fb72298f5605efd75a3f370 greetd-0.8.0.tar.gz
-0f786b639223bf52445b7248756bc2e83a450a81e0750f853b70095a0438edb0c40ecc50df42cdb82838a068202787d5286ca5ebc363e6e1c4e969f122df5dfa greetd.pam
-51286430587a06851b2f45120e08b091dab252796011a59b66aa91fa9e4f9874ab398ffae0eae0159e0cb87cd27a6e478cede6df03a6c52a52d4625e9152554a greetd.initd
-f6c5d5755fb8cca3d45d6879557fb7fc85c40879bc570e6c9aac462ce9133a2fa0a03cbac1e598f8162a9136d3e6020cea808e16e1797f4d37d4cf7dfc94c11c greetd.confd
-da49e5993e2189567d0661ea63a69dafb650ab4a1dfebdfa346dff2e2c195d1d8fdb1f2cd4f9f64b26fd2c0b453df2886cd19d6afc59680b6fb4c54eab97c729 config.patch
-"
diff --git a/testing/greetd/config.patch b/testing/greetd/config.patch
deleted file mode 100644
index 4ec895dcc63..00000000000
--- a/testing/greetd/config.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-Fix faulty default `command` to something that actually works
-(refer to https://todo.sr.ht/~kennylevinsen/greetd/21).
-
-Change the `user` to the one we have created for greetd.
-
---- a/config.toml
-+++ b/config.toml
-@@ -6,11 +6,11 @@
- # The default session, also known as the greeter.
- [default_session]
-
--# `agreety` is the bundled agetty/login-lookalike. You can replace `$SHELL`
-+# `agreety` is the bundled agetty/login-lookalike. You can replace `/bin/sh`
- # with whatever you want started, such as `sway`.
--command = "agreety --cmd $SHELL"
-+command = "agreety --cmd /bin/sh"
-
- # The user to run the command as. The privileges this user must have depends
- # on the greeter. A graphical greeter may for example require the user to be
- # in the `video` group.
--user = "greeter"
-+user = "greetd"
diff --git a/testing/greetd/greetd.confd b/testing/greetd/greetd.confd
deleted file mode 100644
index 9dd5522501b..00000000000
--- a/testing/greetd/greetd.confd
+++ /dev/null
@@ -1,7 +0,0 @@
-# Configuration for /etc/init.d/greetd
-
-# Path to config file to use.
-#cfgfile="/etc/greetd/config.toml"
-
-# Uncomment to use process supervisor.
-#supervisor=supervise-daemon
diff --git a/testing/greetd/greetd.initd b/testing/greetd/greetd.initd
deleted file mode 100644
index 3dd9ef5f411..00000000000
--- a/testing/greetd/greetd.initd
+++ /dev/null
@@ -1,18 +0,0 @@
-#!/sbin/openrc-run
-
-name="greetd"
-description="Greeter daemon"
-
-: ${cfgfile:="/etc/greetd/config.toml"}
-
-command=/usr/sbin/greetd
-command_args="--config $cfgfile ${command_args:-}"
-command_background=yes
-pidfile="/run/$RC_SVCNAME.pid"
-
-required_files="$cfgfile"
-
-depend() {
- need localmount
- provide display-manager
-}
diff --git a/testing/greetd/greetd.pam b/testing/greetd/greetd.pam
deleted file mode 100644
index 075cfa4e7e6..00000000000
--- a/testing/greetd/greetd.pam
+++ /dev/null
@@ -1,5 +0,0 @@
-#%PAM-1.0
-
-auth include system-local-login
-account include system-local-login
-session include system-local-login
diff --git a/testing/greetd/greetd.pre-install b/testing/greetd/greetd.pre-install
deleted file mode 100644
index 5c81aba4b74..00000000000
--- a/testing/greetd/greetd.pre-install
+++ /dev/null
@@ -1,9 +0,0 @@
-#!/bin/sh
-
-name=greetd
-
-addgroup -S $name 2>/dev/null
-adduser -S -D -H -h /run/greetd -s /sbin/nologin -G $name -g $name $name 2>/dev/null
-adduser $name video
-
-exit 0
diff --git a/testing/grip/APKBUILD b/testing/grip/APKBUILD
index b2911f6a8e6..dd1eb286671 100644
--- a/testing/grip/APKBUILD
+++ b/testing/grip/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
# Maintainer: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
pkgname=grip
-pkgver=4.2.3
+pkgver=4.2.4
pkgrel=0
pkgdesc="CD Player, Secure Ripper, and Encoder"
url="https://sourceforge.net/projects/grip/"
@@ -28,5 +28,5 @@ package() {
}
sha512sums="
-05b66c363af31835e534547ae5dcb21340a7b3a824e46b337b511a8ddd0bbd161ab16470b658eb1df3887838b391d71702069da9207160a692e1a8ebae0d52e0 grip-4.2.3.tar.gz
+fdc2808b91df617f4d2447114037c31bd5fa0657aa4ea2453e644b155468971c65a364bb0a3c6ed8ff2ba0e44e7117a51bec3081c7defd590f9fbc802a216bf5 grip-4.2.4.tar.gz
"
diff --git a/testing/gron/APKBUILD b/testing/gron/APKBUILD
index a633bc0b9b1..9cf7928d5cc 100644
--- a/testing/gron/APKBUILD
+++ b/testing/gron/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Tiago Ilieve <tiago.myhro@gmail.com>
pkgname=gron
pkgver=0.7.1
-pkgrel=1
+pkgrel=16
pkgdesc="Make JSON greppable"
url="https://github.com/tomnomnom/gron"
arch="all"
@@ -10,9 +10,9 @@ license="MIT"
makedepends="go>=1.11"
source="gron-$pkgver.tar.gz::https://github.com/tomnomnom/gron/archive/v$pkgver.tar.gz"
-export GOPATH="$srcdir/go"
-export GOCACHE="$srcdir/go-build"
-export GOTEMPDIR="$srcdir/go"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
export GOFLAGS="$GOFLAGS -modcacherw"
@@ -24,7 +24,7 @@ prepare() {
}
build() {
- go build -v -ldflags "-s -w -X main.gronVersion=$pkgver" -o gron
+ go build -v -ldflags "-X main.gronVersion=$pkgver" -o gron
}
check() {
diff --git a/testing/grpc-health-check/APKBUILD b/testing/grpc-health-check/APKBUILD
index 7d487449f35..1393a5e1b1d 100644
--- a/testing/grpc-health-check/APKBUILD
+++ b/testing/grpc-health-check/APKBUILD
@@ -1,30 +1,34 @@
-# Contributor:
# Maintainer: Build Robot <buildrobot@pay.pizza>
pkgname=grpc-health-check
pkgver=0.1.1
-pkgrel=0
+pkgrel=3
arch="all !s390x !ppc64le !armhf !armv7 !riscv64"
pkgdesc="gRPC health checking protocol"
url="https://github.com/paypizza/grpc-health-check"
license="Apache-2.0"
-makedepends="cargo protoc"
+makedepends="cargo protoc rustfmt cargo-auditable"
source="$pkgname-$pkgver.tar.gz::https://github.com/paypizza/grpc-health-check/archive/$pkgver.tar.gz"
+
prepare() {
default_prepare
- export PROTOC=/usr/bin/protoc
+ cargo fetch --target="$CTARGET"
}
build() {
- cargo build --release --features=mimalloc
+ export PROTOC=/usr/bin/protoc
+ cargo auditable build --release --frozen
}
check() {
- cargo test --release --features=mimalloc
+ export PROTOC=/usr/bin/protoc
+ cargo test --frozen
}
package() {
- make install.bin DESTDIR="$pkgdir/" PREFIX="/usr"
+ install -Dm755 target/release/grpc-health-check -t "$pkgdir"/usr/bin/
}
-sha512sums="4f97a0c7399643843f2599799a1b255c7b712c17d115fc7933c042281611250b69bfcd3c0d4c515fcb413eb22ccd6e1644733a6f671c2ad7be8def4e1f695d5b grpc-health-check-0.1.1.tar.gz"
+sha512sums="
+4f97a0c7399643843f2599799a1b255c7b712c17d115fc7933c042281611250b69bfcd3c0d4c515fcb413eb22ccd6e1644733a6f671c2ad7be8def4e1f695d5b grpc-health-check-0.1.1.tar.gz
+"
diff --git a/testing/grpcui/APKBUILD b/testing/grpcui/APKBUILD
new file mode 100644
index 00000000000..2964313436d
--- /dev/null
+++ b/testing/grpcui/APKBUILD
@@ -0,0 +1,31 @@
+# Contributor: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
+# Maintainer: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
+pkgname=grpcui
+pkgver=1.3.3
+pkgrel=2
+pkgdesc="Interactive web UI for gRPC, along the lines of postman"
+url="https://github.com/fullstorydev/grpcui"
+arch="all"
+license="MIT"
+makedepends="go"
+source="$pkgname-$pkgver.tar.gz::https://github.com/fullstorydev/grpcui/archive/refs/tags/v$pkgver.tar.gz"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ go build -v -ldflags "-X main.version=v$pkgver" ./cmd/grpcui/
+}
+
+check() {
+ go test ./...
+}
+
+package() {
+ install -Dm755 grpcui -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+ad4b715ee51dc0bfc592c84fa046b03f77a038f15feb58e8b869934360359e928016efda5aa101b22a2b7441f35dd497b863a4ef56922b0f9bc8dc391c10a1ff grpcui-1.3.3.tar.gz
+"
diff --git a/testing/grpcurl/APKBUILD b/testing/grpcurl/APKBUILD
new file mode 100644
index 00000000000..365d3b0f54d
--- /dev/null
+++ b/testing/grpcurl/APKBUILD
@@ -0,0 +1,31 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=grpcurl
+pkgver=1.8.9
+pkgrel=2
+pkgdesc="CLI tool to interact with gRPC servers"
+url="https://github.com/fullstorydev/grpcurl"
+arch="all"
+license="MIT"
+makedepends="go"
+options="net"
+source="$pkgname-$pkgver.tar.gz::https://github.com/fullstorydev/grpcurl/archive/refs/tags/v$pkgver.tar.gz"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ go build -v -ldflags "-X main.version=v$pkgver" ./cmd/grpcurl/
+}
+
+check() {
+ go test ./...
+}
+
+package() {
+ install -Dm755 $pkgname -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+5ef0e918a10ce8fcefebe4d77c6efd73830c9159c423e6fe54da54e4c2942665861bf7b5235b72317aa157328bf0b3681984873a70c39264f8060f9ab927fb99 grpcurl-1.8.9.tar.gz
+"
diff --git a/testing/grype/APKBUILD b/testing/grype/APKBUILD
deleted file mode 100644
index 17bd85f1b6e..00000000000
--- a/testing/grype/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Contributor: Michał Polański <michal@polanski.me>
-# Maintainer: Michał Polański <michal@polanski.me>
-pkgname=grype
-pkgver=0.38.0
-pkgrel=0
-pkgdesc="Vulnerability scanner for container images, filesystems, and SBOMs"
-url="https://github.com/anchore/grype"
-license="Apache-2.0"
-# ppc64le: build constraints exclude all Go files in /home/buildozer/aports/testing/grype/src/pkg/mod/modernc.org/libc@v1.14.12/uuid/uuid
-arch="all !ppc64le !armhf !armv7 !x86" # FTBFS on 32-bit arches
-makedepends="go"
-source="https://github.com/anchore/grype/archive/v$pkgver/grype-$pkgver.tar.gz"
-options="!check" # tests need docker
-
-export GOFLAGS="$GOFLAGS -trimpath -mod=readonly -modcacherw"
-export GOPATH="$srcdir"
-export CGO_ENABLED=0
-
-build() {
- go build -ldflags "-s -w
- -X github.com/anchore/grype/internal/version.version=$pkgver
- " \
- -o bin/grype
-}
-
-check() {
- go test ./...
-}
-
-package() {
- install -Dm755 bin/grype "$pkgdir"/usr/bin/grype
-}
-
-sha512sums="
-21d5d04daaa066ad8071516f917c5231850a6be090aa3743ace1adc05f1bd8770b53ef00a8576cc2a01c032bd47fd96ec931356938130f2e17d812f3f706b1bb grype-0.38.0.tar.gz
-"
diff --git a/testing/gsettings-qt/APKBUILD b/testing/gsettings-qt/APKBUILD
new file mode 100644
index 00000000000..7946f7dc06c
--- /dev/null
+++ b/testing/gsettings-qt/APKBUILD
@@ -0,0 +1,32 @@
+# Maintainer: Luca Weiss <luca@z3ntu.xyz>
+pkgname=gsettings-qt
+pkgver=0.2_git20220807
+_commit="d5e002d7e0bce46c315bcc99a44a8bd51f49f488"
+pkgrel=0
+pkgdesc="Library to access GSettings from Qt"
+url="https://gitlab.com/ubports/development/core/gsettings-qt"
+arch="all"
+license="LGPL-3.0-only"
+depends_dev="qt5-qtdeclarative-dev"
+makedepends="$depends_dev qt5-qtbase-dev"
+checkdepends="xvfb-run"
+subpackages="$pkgname-dev"
+source="https://gitlab.com/ubports/development/core/gsettings-qt/-/archive/$_commit/gsettings-qt-$_commit.tar.gz"
+builddir="$srcdir/$pkgname-$_commit"
+
+build() {
+ qmake-qt5
+ make
+}
+
+check() {
+ LD_LIBRARY_PATH=../src GSETTINGS_BACKEND=memory GSETTINGS_SCHEMA_DIR=. xvfb-run make check
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+}
+
+sha512sums="
+ead1c8fe4e050fe3b9a6f3881dbfda54e172b01948d59c52536ceb35e244222d75803849565d32e46bc80f9a1651abbeff545141a71545547252ce8786222175 gsettings-qt-d5e002d7e0bce46c315bcc99a44a8bd51f49f488.tar.gz
+"
diff --git a/testing/gsimplecal/APKBUILD b/testing/gsimplecal/APKBUILD
new file mode 100644
index 00000000000..c273ec419c0
--- /dev/null
+++ b/testing/gsimplecal/APKBUILD
@@ -0,0 +1,28 @@
+# Contributor: Robin Candau <robincandau@protonmail.com>
+# Maintainer: Robin Candau <robincandau@protonmail.com>
+pkgname=gsimplecal
+pkgver=2.5.1
+pkgrel=0
+pkgdesc="Simple and lightweight GTK calendar"
+url="https://dmedvinsky.github.io/gsimplecal/"
+arch="all"
+license="BSD-3-Clause"
+makedepends="autoconf automake pkgconf gtk+3.0-dev"
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/dmedvinsky/gsimplecal/archive/v$pkgver.tar.gz"
+options="!check" # no test suite
+
+build() {
+ ./autogen.sh
+ ./configure --prefix=/usr
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+ install -Dm 644 COPYING "$pkgdir/usr/share/licenses/$pkgname/COPYING"
+}
+
+sha512sums="
+0234dcecdc43e870bff68891fd620ea43750515ab687d845e692bf28598697b7274c46dca01af5d4cf1ab64c73d7a65612b5104dc000428d09186ce0740b974b gsimplecal-2.5.1.tar.gz
+"
diff --git a/testing/gst-plugins-rs/APKBUILD b/testing/gst-plugins-rs/APKBUILD
new file mode 100644
index 00000000000..a9e5ae6499a
--- /dev/null
+++ b/testing/gst-plugins-rs/APKBUILD
@@ -0,0 +1,60 @@
+# Maintainer: Krassy Boykinov <kboykinov@teamcentrixx.com>
+pkgname=gst-plugins-rs
+pkgver=0.12.4
+pkgrel=0
+pkgdesc="Gstreamer rust plugins"
+url="https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs"
+# ppc64le, s390x, riscv64: ring in gst-plugin-version-helper
+# armv7, armhf, x86: ring in gtk4
+arch="all !armhf !armv7 !ppc64le !riscv64 !s390x !x86"
+license="MIT AND Apache-2.0 AND MPL-2.0 AND LGPL-2.1-or-later"
+makedepends="
+ cargo
+ cargo-c
+ dav1d-dev
+ gst-plugins-bad-dev
+ gst-plugins-base-dev
+ gtk4.0-dev
+ libsodium-dev
+ meson
+ nasm
+ openssl-dev
+ "
+subpackages="$pkgname-dev $pkgname-tools"
+source="https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/archive/$pkgver/gst-plugins-rs-$pkgver.tar.gz
+ dylib.patch
+ "
+options="net !check" # they don't run
+
+export SODIUM_USE_PKG_CONFIG=1
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ export CARGO_PROFILE_RELEASE_OPT_LEVEL=3
+ abuild-meson \
+ --buildtype=release \
+ . output
+ meson compile -C output
+}
+
+check() {
+ meson test --no-rebuild --print-errorlogs -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+tools() {
+ amove usr/bin
+}
+
+sha512sums="
+1ef76d1ee8778e474590f6f2c7a88cd94b1496cd242b64282710d0fba54fc3f807a7a8e58e58437f44c365d65e5ce8d21bcf72d9aff55033695327849eced00d gst-plugins-rs-0.12.4.tar.gz
+5f354a7776859f62a235947b5a31779688bc681f3c47c3fbf85806c8a12f68023a731067c958e40dfd580af591ea271e4e5184ef3b45a193c9b855486c64fef0 dylib.patch
+"
diff --git a/testing/gst-plugins-rs/dylib.patch b/testing/gst-plugins-rs/dylib.patch
new file mode 100644
index 00000000000..a8ead65159e
--- /dev/null
+++ b/testing/gst-plugins-rs/dylib.patch
@@ -0,0 +1,13 @@
+cargo-c defaults to static for musl otherwise
+diff --git a/cargo_wrapper.py b/cargo_wrapper.py
+index e04ad39..e7b3e03 100644
+--- a/cargo_wrapper.py
++++ b/cargo_wrapper.py
+@@ -89,6 +89,7 @@ if __name__ == "__main__":
+ cargo_cmd += ['build']
+ else:
+ cargo_cmd += ['cbuild']
++ cargo_cmd += ['--library-type=cdylib']
+ if not opts.disable_doc:
+ features += ['doc']
+ if opts.target == 'release':
diff --git a/testing/gst-rtsp-server/APKBUILD b/testing/gst-rtsp-server/APKBUILD
index 4bd8b89d1e6..66c62e25a09 100644
--- a/testing/gst-rtsp-server/APKBUILD
+++ b/testing/gst-rtsp-server/APKBUILD
@@ -1,30 +1,40 @@
# Contributor: Andrew Panteleyev <insonifi@gmail.com>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=gst-rtsp-server
-pkgver=1.20.2
+pkgver=1.22.11
pkgrel=0
pkgdesc="GStreamer RTSP server"
url="https://gstreamer.freedesktop.org"
arch="all"
license="LGPL-2.0-or-later"
depends_dev="gst-plugins-base-dev"
-makedepends="$depends_dev gobject-introspection-dev gstreamer-dev meson gst-plugins-bad-dev"
+makedepends="
+ $depends_dev
+ gobject-introspection-dev
+ gst-plugins-bad-dev
+ gstreamer-dev
+ meson
+ "
checkdepends="gst-plugins-good"
subpackages="$pkgname-dev"
source="https://gstreamer.freedesktop.org/src/gst-rtsp-server/gst-rtsp-server-$pkgver.tar.xz"
options="!check" # tests pass locally but not in ci
build() {
+ CFLAGS="$CFLAGS -O2" \
+ CXXFLAGS="$CXXFLAGS -O2" \
+ CPPFLAGS="$CPPFLAGS -O2" \
abuild-meson \
+ -Db_lto=true \
-Dpackage-origin="https://alpinelinux.org" \
-Dpackage-name="GStreamer RTSP server (Alpine Linux)" \
-Dtests="$(want_check && echo enabled || echo disabled)" \
. output
- meson compile ${JOBS:+-j ${JOBS}} -C output
+ meson compile -C output
}
check() {
- meson test -v --no-rebuild -C output
+ meson test --print-errorlogs --no-rebuild -C output
}
package() {
@@ -32,5 +42,5 @@ package() {
}
sha512sums="
-fac3338603f1e31cb1da3c163784fbed1663e0cee722b47c3a6bb369296e5fbff3fdc9925952fe387d51f05ffaeef2a7400369a7006b805f3cb8b454566642bd gst-rtsp-server-1.20.2.tar.xz
+cf3c698dbbcaa790b6bb1b1df4bae88be5f54fb70ba4bce5a4a0f907d693616d52b1cf67e73f694dcd7c9588b63a6303949f9f36fde952011a2d2ff80f9b44de gst-rtsp-server-1.22.11.tar.xz
"
diff --git a/testing/gstreamer-vaapi/APKBUILD b/testing/gstreamer-vaapi/APKBUILD
deleted file mode 100644
index 7e7a3fd088c..00000000000
--- a/testing/gstreamer-vaapi/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Contributor: Taner Tas <taner76@gmail.com>
-# Maintainer: Taner Tas <taner76@gmail.com>
-pkgname=gstreamer-vaapi
-pkgver=1.20.2
-pkgrel=0
-pkgdesc="GStreamer streaming media framework VA API plug-ins"
-url="https://gstreamer.freedesktop.org/"
-arch="all"
-license="LGPL-2.1-or-later"
-makedepends="glib-dev gst-plugins-bad-dev libva-dev libxrandr-dev meson eudev-dev"
-options="!check" # Need actual display with HW accel
-source="https://gstreamer.freedesktop.org/src/gstreamer-vaapi/gstreamer-vaapi-$pkgver.tar.xz"
-
-build() {
- abuild-meson \
- -Dtests="$(want_check && echo enabled || echo disabled)" \
- . output
- meson compile ${JOBS:+-j ${JOBS}} -C output
-}
-
-check() {
- meson test -C output --print-errorlogs
-}
-
-package() {
- DESTDIR="$pkgdir" meson install --no-rebuild -C output
-}
-
-sha512sums="
-df5d510e910350f165b2a7bb0e433bd247608fcc719d0dc2cd72fb1f0a160a1d3c2c9006c8f6ec5d6fa454c4c15a1bb0df061cc9fd5d4e966f05a6d3f39bb491 gstreamer-vaapi-1.20.2.tar.xz
-"
diff --git a/testing/gstreamermm/APKBUILD b/testing/gstreamermm/APKBUILD
index e91abdbe66c..7d0ff37cb38 100644
--- a/testing/gstreamermm/APKBUILD
+++ b/testing/gstreamermm/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=gstreamermm
pkgver=1.10.0
-pkgrel=3
+pkgrel=4
pkgdesc="C++ interface for GStreamer"
url="https://gstreamer.freedesktop.org/bindings/cplusplus.html"
arch="all"
@@ -11,7 +11,9 @@ makedepends="glibmm-dev gst-plugins-base-dev"
checkdepends="gtest-dev"
options="!check" #tests are broken
subpackages="$pkgname-dev"
-source="https://download.gnome.org/sources/gstreamermm/${pkgver%.[0-9]*}/gstreamermm-$pkgver.tar.xz"
+source="https://download.gnome.org/sources/gstreamermm/${pkgver%.[0-9]*}/gstreamermm-$pkgver.tar.xz
+ $pkgname-glib-2.68.patch::https://gitlab.gnome.org/GNOME/gstreamermm/-/commit/37116547fb5f9066978e39b4cf9f79f2154ad425.patch
+ "
prepare() {
default_prepare
@@ -32,4 +34,7 @@ package() {
check() {
make check
}
-sha512sums="34eeb9eec5958c96acf7c7791eef80138e5d55fea6ddf1bf9ace6b1ec7f052da2abf04d87089e4c9ead51c631ef7afceaf9fceb946ec3d105da522187c69e429 gstreamermm-1.10.0.tar.xz"
+sha512sums="
+34eeb9eec5958c96acf7c7791eef80138e5d55fea6ddf1bf9ace6b1ec7f052da2abf04d87089e4c9ead51c631ef7afceaf9fceb946ec3d105da522187c69e429 gstreamermm-1.10.0.tar.xz
+ce821e8d733f460c9c093d90c76ba66e649439870ed8797b98d927112cfd0d776e5fb858831f50e7cff38cd660b06914a327589c5c27b5f4f8a3783a633fdc8f gstreamermm-glib-2.68.patch
+"
diff --git a/testing/gtk4-layer-shell/APKBUILD b/testing/gtk4-layer-shell/APKBUILD
new file mode 100644
index 00000000000..1b72a530f66
--- /dev/null
+++ b/testing/gtk4-layer-shell/APKBUILD
@@ -0,0 +1,62 @@
+# Maintainer:
+pkgname=gtk4-layer-shell
+pkgver=1.0.2
+pkgrel=0
+pkgdesc="Create panels and other desktop components in Wayland using the Layer Shell protocol in GTK4"
+url="https://github.com/wmww/gtk4-layer-shell"
+arch="all"
+license="MIT"
+makedepends="
+ gobject-introspection-dev
+ gtk4.0-dev
+ meson
+ vala
+ wayland-dev
+ wayland-protocols
+ "
+checkdepends="
+ font-dejavu
+ py3-gobject3
+ xvfb-run
+ "
+subpackages="$pkgname-dev $pkgname-demo"
+source="$pkgname-$pkgver.tar.gz::https://github.com/wmww/gtk4-layer-shell/archive/v$pkgver.tar.gz
+ no-lua-test.patch
+ "
+
+prepare() {
+ default_prepare
+
+ rm -fv test/smoke-tests/test-lua-example.py
+}
+
+build() {
+ abuild-meson \
+ -Db_lto=true \
+ -Dexamples=true \
+ -Ddocs=false \
+ -Dtests="$(want_check && echo true || echo false)" \
+ . output
+ meson compile -C output
+}
+
+check() {
+ XDG_RUNTIME_DIR="$(mktemp -d -p "$builddir")" \
+ xvfb-run -a \
+ meson test --no-rebuild --print-errorlogs -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+demo() {
+ pkgdesc="Demo of GTK4 Layer Shell"
+
+ amove usr/bin/gtk4-layer-demo
+}
+
+sha512sums="
+f43a75c20fa41e4bc44430a36cf60a01281ce67a19afb4ed8297633a91803394ba8fe14dfb81db46f5bccc3e3dfe1474175b6c3249cfa614b42b167329b279f3 gtk4-layer-shell-1.0.2.tar.gz
+d581a80a98a701d6ff7cd5555f0b1a7959efb91b72f54e3ba597f78b2094d3f5630f8d96249860c761fee927a271ee624a192edb9bd40e2884f2004136e545ed no-lua-test.patch
+"
diff --git a/testing/gtk4-layer-shell/no-lua-test.patch b/testing/gtk4-layer-shell/no-lua-test.patch
new file mode 100644
index 00000000000..e0d904160aa
--- /dev/null
+++ b/testing/gtk4-layer-shell/no-lua-test.patch
@@ -0,0 +1,13 @@
+a bad arg is passed to lgi
+--
+diff --git a/test/smoke-tests/meson.build b/test/smoke-tests/meson.build
+index e773c54..f2dab96 100644
+--- a/test/smoke-tests/meson.build
++++ b/test/smoke-tests/meson.build
+@@ -2,6 +2,5 @@ smoke_tests = [
+ 'test-c-example',
+ 'test-c-demo',
+ 'test-python-example',
+- 'test-lua-example',
+ 'test-vala-example',
+ ]
diff --git a/testing/gtkgreet/APKBUILD b/testing/gtkgreet/APKBUILD
deleted file mode 100644
index e516e3ee176..00000000000
--- a/testing/gtkgreet/APKBUILD
+++ /dev/null
@@ -1,41 +0,0 @@
-# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
-pkgname=gtkgreet
-pkgver=0.7_git20210325
-_gitrev=3471aaaaee4619fd4aded85803b27b4a8dff41a6
-pkgrel=0
-pkgdesc="GTK based greeter for greetd"
-url="https://git.sr.ht/~kennylevinsen/gtkgreet"
-arch="aarch64 armhf armv7 ppc64le x86 x86_64" # limited by greetd <- rust/cargo
-license="GPL-3.0"
-depends="greetd"
-makedepends="
- gtk+3.0-dev
- gtk-layer-shell-dev
- json-c-dev
- meson
- scdoc
- "
-subpackages="$pkgname-doc"
-source="$pkgname-$_gitrev.tar.gz::https://git.sr.ht/~kennylevinsen/gtkgreet/archive/$_gitrev.tar.gz"
-builddir="$srcdir/$pkgname-$_gitrev"
-
-build() {
- abuild-meson \
- -Dlayershell=enabled \
- -Dman-pages=enabled \
- . output
- meson compile ${JOBS:+-j ${JOBS}} -C output
-}
-
-check() {
- meson test --no-rebuild -v -C output
-}
-
-package() {
- DESTDIR="$pkgdir" meson install --no-rebuild -C output
-}
-
-sha512sums="
-aecf9c6068f612a294a81403fca1abf150e281f6d965d2f76ff3140eec7f6014354329e8242d344d47a340d84b488c1f2069592fb9662f00add072bb4beb97b0 gtkgreet-3471aaaaee4619fd4aded85803b27b4a8dff41a6.tar.gz
-"
diff --git a/testing/gtkhash/APKBUILD b/testing/gtkhash/APKBUILD
index d067ad02dd0..a3f35d0e0fb 100644
--- a/testing/gtkhash/APKBUILD
+++ b/testing/gtkhash/APKBUILD
@@ -1,8 +1,6 @@
-# Contributor: psykose <alice@ayaya.dev>
# Maintainer: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
pkgname=gtkhash
-_githash=f4409e2e7eea8c49b53748fb0f1f94cb3a527de0
-pkgver=1.4_git20220303
+pkgver=1.5
pkgrel=0
pkgdesc="Utility for computing message digests and checksums"
url="https://gtkhash.org/"
@@ -21,7 +19,7 @@ makedepends="
meson
nautilus-dev
nemo-dev
- openssl-dev
+ openssl-dev>3
thunar-dev
zlib-dev
"
@@ -29,16 +27,15 @@ checkdepends="xvfb-run" # Not running properly under CI
subpackages="
$pkgname-lang
caja-gtkhash-plugin:_caja
- nautilus-gtkhash-plugin:_nautilus
nemo-gtkhash-plugin:_nemo
thunar-gtkhash-plugin:_thunar
"
-source="$pkgname-$pkgver.tar.gz::https://github.com/tristanheaven/gtkhash/archive/$_githash.tar.gz"
-builddir="$srcdir/$pkgname-$_githash/"
+source="https://github.com/tristanheaven/gtkhash/releases/download/v$pkgver/gtkhash-$pkgver.tar.gz"
options="!check" # Disable check until failure under CI fixed
build() {
abuild-meson \
+ -Db_lto=true \
-Dblake2=true \
-Dgcrypt=true \
-Dglib-checksums=true \
@@ -50,7 +47,7 @@ build() {
-Dappstream=true \
-Dbuild-gtkhash=true \
-Dbuild-caja=true \
- -Dbuild-nautilus=true \
+ -Dbuild-nautilus=false \
-Dbuild-nemo=true \
-Dbuild-thunar=true \
. output
@@ -88,5 +85,5 @@ package() {
}
sha512sums="
-897449187d8268a2096d4fdff649b7e63b8ee2375305f4896d7f16ab186da6345e034706e77078407f7de0bfb826ac51c23ab2e82414802f16eb22eeed7fa231 gtkhash-1.4_git20220303.tar.gz
+a71ec8780533ecb72f16ae9bc6fdfb5cf58f945c8fab9c16ee5007b04c22af701aaac79895ded9f7b573625020e9597a191fb81a68cec63111c089f1d03e2347 gtkhash-1.5.tar.gz
"
diff --git a/testing/gtklock/APKBUILD b/testing/gtklock/APKBUILD
new file mode 100644
index 00000000000..64dae183ace
--- /dev/null
+++ b/testing/gtklock/APKBUILD
@@ -0,0 +1,25 @@
+# Contributor: Edd Salkield <edd@salkield.uk>
+# Maintainer: Edd Salkield <edd@salkield.uk>
+pkgname=gtklock
+pkgver=2.1.0
+pkgrel=0
+pkgdesc="GTK-based lockscreen for Wayland"
+url="https://github.com/jovanlanik/gtklock"
+arch="all"
+license="GPL-3.0-only"
+makedepends="linux-pam-dev glib-dev gtk-layer-shell-dev gtk+3.0-dev wayland-dev scdoc"
+subpackages="$pkgname-doc"
+source="https://github.com/jovanlanik/gtklock/archive/v$pkgver/gtklock-v$pkgver.tar.gz"
+options="!check" # no upstream tests
+
+build() {
+ make
+}
+
+package() {
+ make install DESTDIR="$pkgdir" PREFIX="/usr"
+}
+
+sha512sums="
+63fedae301089d922804398aa957eb784778ec033f0f7fd49e85fef0bbf6a029942e55751bcb05e99ded6c42ea88d601531a3b81cd33509ba0cae4cf81d84ce8 gtklock-v2.1.0.tar.gz
+"
diff --git a/testing/gtksourceviewmm3/APKBUILD b/testing/gtksourceviewmm3/APKBUILD
index 42162697c4c..d243a109835 100755..100644
--- a/testing/gtksourceviewmm3/APKBUILD
+++ b/testing/gtksourceviewmm3/APKBUILD
@@ -2,13 +2,13 @@
# Maintainer: Alex Yam <alex@alexyam.com>
pkgname=gtksourceviewmm3
pkgver=3.21.3
-pkgrel=1
+pkgrel=2
arch="all"
pkgdesc="C++ wrapper for the gtksourceview widget library"
url="https://gitlab.gnome.org/GNOME/gtksourceviewmm"
license="LGPL-2.1-or-later"
-makedepends="libtool mm-common gtksourceview-dev"
-subpackages="$pkgname-doc $pkgname-dev"
+makedepends="autoconf automake libtool mm-common gtksourceview-dev"
+subpackages="$pkgname-devhelp $pkgname-doc $pkgname-dev"
source="https://download.gnome.org/sources/gtksourceviewmm/${pkgver%.*}/gtksourceviewmm-$pkgver.tar.xz"
builddir="$srcdir/${pkgname:0:-1}-$pkgver"
@@ -33,14 +33,6 @@ package() {
make DESTDIR="$pkgdir" install
}
-doc() {
- default_doc
- # move /usr/share/devhelp to -doc package
- # necessary until abuild's doc() detects 'devhelp' as doc
- # abuild MR: https://gitlab.alpinelinux.org/alpine/abuild/-/merge_requests/87
- amove /usr/share/devhelp
-}
-
sha512sums="
bae4b1fc0792fee136b3be5a2514d29cc4ddc1e7ca663c090e5c15a693475fd6c80f081dd7972e53aa1a74f4ae85bc00d71438b7fb0a89d714a3e423cb5228ef gtksourceviewmm-3.21.3.tar.xz
"
diff --git a/testing/gtksourceviewmm4/APKBUILD b/testing/gtksourceviewmm4/APKBUILD
index 1913526cd0b..8689a1e3478 100755..100644
--- a/testing/gtksourceviewmm4/APKBUILD
+++ b/testing/gtksourceviewmm4/APKBUILD
@@ -3,13 +3,13 @@
pkgname=gtksourceviewmm4
# Preview release for 4.0.0
pkgver=3.91.1
-pkgrel=1
+pkgrel=2
arch="all"
pkgdesc="C++ wrapper for the gtksourceview widget library"
url="https://gitlab.gnome.org/GNOME/gtksourceviewmm"
license="LGPL-2.1-or-later"
-makedepends="libtool mm-common gtksourceview4-dev"
-subpackages="$pkgname-doc $pkgname-dev"
+makedepends="autoconf automake libtool mm-common gtksourceview4-dev"
+subpackages="$pkgname-devhelp $pkgname-doc $pkgname-dev"
source="https://download.gnome.org/sources/gtksourceviewmm/${pkgver%.*}/gtksourceviewmm-$pkgver.tar.xz"
builddir="$srcdir/${pkgname:0:-1}-$pkgver"
@@ -34,14 +34,6 @@ package() {
make DESTDIR="$pkgdir" install
}
-doc() {
- default_doc
- # move /usr/share/devhelp to -doc package
- # necessary until abuild's doc() detects 'devhelp' as doc
- # abuild MR: https://gitlab.alpinelinux.org/alpine/abuild/-/merge_requests/87
- amove /usr/share/devhelp
-}
-
sha512sums="
f28f5611ce21bf4bbe15008604a3963bab46a5a631aef1cb99197e7b397950dde0c6875948f433e9f27f279b669366b27623786ae07178391e3fa2b90665823e gtksourceviewmm-3.91.1.tar.xz
"
diff --git a/testing/gtkwave/APKBUILD b/testing/gtkwave/APKBUILD
new file mode 100644
index 00000000000..7ab9edaac8e
--- /dev/null
+++ b/testing/gtkwave/APKBUILD
@@ -0,0 +1,46 @@
+# Maintainer: Cowington Post <cowingtonpost@gmail.com>
+pkgname=gtkwave
+pkgver=3.3.117
+pkgrel=0
+pkgdesc="A wave viewer which reads LXT, LXT2, VZT, GHW and VCD/EVCD files"
+url="https://gtkwave.sourceforge.net/"
+arch="all"
+license="GPL-2.0-or-later"
+depends="desktop-file-utils"
+makedepends="
+ gtk+3.0-dev
+ bzip2-dev
+ xz-dev
+ dconf-dev
+ gperf
+ "
+subpackages="$pkgname-doc"
+source="https://gtkwave.sourceforge.net/gtkwave-gtk3-$pkgver.tar.gz"
+builddir="$srcdir/gtkwave-gtk3-$pkgver"
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var \
+ --disable-mime-update \
+ --with-gsettings \
+ --disable-tcl \
+ --enable-gtk3
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+b90d188f3d6fa2a631b582a0bcbfdc2a31580c0e03e01bff15a54c84e20cd2a7edea01026281d975e28ff6e6760d4c32944d2c405b129acbe7f57d73432318e4 gtkwave-gtk3-3.3.117.tar.gz
+"
diff --git a/testing/guacamole-server/APKBUILD b/testing/guacamole-server/APKBUILD
deleted file mode 100644
index aa93f05b82a..00000000000
--- a/testing/guacamole-server/APKBUILD
+++ /dev/null
@@ -1,63 +0,0 @@
-# Contributor:
-# Maintainer:
-pkgname=guacamole-server
-pkgver=1.4.0
-pkgrel=0
-pkgdesc="clientless remote desktop gateway server"
-url="https://guacamole.apache.org"
-arch="all"
-license="GPL-3.0-or-later"
-makedepends="cairo-dev libjpeg-turbo-dev libpng-dev ossp-uuid-dev ffmpeg4-dev
- freerdp-dev pango-dev libssh2-dev libvncserver-dev pulseaudio-dev
- openssl-dev libvorbis-dev libwebp-dev perl libwebsockets-dev cunit-dev
- "
-subpackages="$pkgname-doc $pkgname-dev"
-source="http://apache.org/dyn/closer.cgi?action=download&filename=guacamole/$pkgver/source/guacamole-server-$pkgver.tar.gz
- "
-
-build() {
- # Disables erroring out on functions that are deprecated
- # like 'av_init_packet' and 'VerifyCertificate'
- CFLAGS="$CFLAGS -Wno-error=deprecated-declarations" \
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var \
- --disable-static \
- --with-libavcodec \
- --with-libavutil \
- --with-libswscale \
- --with-ssl \
- --without-winsock \
- --with-vorbis \
- --with-pulse \
- --with-pango \
- --with-terminal \
- --with-vnc \
- --with-rdp \
- --with-ssh \
- --without-telnet \
- --with-webp \
- --with-websockets
- make
-}
-
-check() {
- # 4 Tests fail on s390x
- # test_common 10
- # test_common 12
- # test_common 13
- # test_common 14
- [ "$CARCH" = s390x ] && return 0
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-sha512sums="
-5a59430d6ca9e8808442067282e5d87b8da3c6a8fc92e6120c70044dce3a18beb9ec3c9f34ef14580ceeaac5fd00fd3f27e8cd60bd6c4e380f3bcca5e7f25632 guacamole-server-1.4.0.tar.gz
-"
diff --git a/testing/guake/APKBUILD b/testing/guake/APKBUILD
index 96b53d18a71..16f3cea0ad2 100644
--- a/testing/guake/APKBUILD
+++ b/testing/guake/APKBUILD
@@ -1,32 +1,53 @@
# Contributor: Francesco Colista <fcolista@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=guake
-pkgver=3.8.5
-pkgrel=0
+pkgver=3.10
+pkgrel=1
pkgdesc="Drop-down terminal for GNOME"
url="http://guake-project.org/"
arch="noarch"
license="GPL-2.0-only"
-depends="py3-pbr"
-makedepends="python3-dev py3-setuptools py3-setuptools_scm"
-source="https://pypi.io/packages/source/g/guake/guake-$pkgver.tar.gz"
+depends="
+ keybinder3
+ libnotify
+ libutempter
+ libwnck3
+ py3-cairo
+ py3-dbus
+ py3-gobject3
+ py3-pbr
+ py3-yaml
+ python3
+ vte3
+ "
+makedepends="
+ gettext-dev
+ py3-gpep517
+ py3-setuptools
+ py3-setuptools_scm
+ py3-wheel
+ python3-dev
+ "
+subpackages="$pkgname-lang $pkgname-pyc"
+source="$pkgname-$pkgver-2.tar.gz::https://github.com/Guake/guake/archive/refs/tags/$pkgver.tar.gz
+ fix-install.patch
+ "
+options="!check" # no tests
# secfixes:
# 3.8.5-r0:
# - CVE-2021-23556
build() {
- python3 setup.py build
-}
-
-check() {
- python3 setup.py check
+ export SETUPTOOLS_SCM_PRETEND_VERSION=$pkgver
+ make
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ make COMPILE_SCHEMA=0 DESTDIR="$pkgdir" PREFIX=/usr install
}
sha512sums="
-f5dbe724a53569f2b8acdbec9abe31d0cdbf35788df0b8588ea12d5bc0eb63283f30cd14f050642b1d126cc33bb1aeef5166950223ab076834e1d3f5253ba334 guake-3.8.5.tar.gz
+72e5b7a046ceab0c5fedde25e7baa4e4002edc7f97867db72ed0cacc7347ca5381d74813f1ae1f61167b9c9128d87d60c7b6610b25f7abad024a2e001d3b114a guake-3.10-2.tar.gz
+29207ce672ce166a0249f74fdfd19028b07214d79f7fffd460837ed5c0b3a4bbade6ba7be66b90236f30a09fcc9932e22b1bd3920fc5a1fa77c3a35c4bf98abf fix-install.patch
"
diff --git a/testing/guake/fix-install.patch b/testing/guake/fix-install.patch
new file mode 100644
index 00000000000..e874e45b554
--- /dev/null
+++ b/testing/guake/fix-install.patch
@@ -0,0 +1,19 @@
+diff --git a/Makefile b/Makefile
+index ccbf433..bd0026c 100644
+--- a/Makefile
++++ b/Makefile
+@@ -94,12 +94,12 @@ install-guake:
+ @sed -i -e 's|{{ LOGIN_DESTOP_PATH }}|"$(LOGIN_DESTOP_PATH)"|g' guake/paths.py
+ @sed -i -e 's|{{ AUTOSTART_FOLDER }}|"$(AUTOSTART_FOLDER)"|g' guake/paths.py
+
+- @$(PYTHON_INTERPRETER) -m pip install . --root "$(DESTDIR)" --prefix="/usr" || echo -e "\033[31;1msetup.py install failed, you may need to run \"sudo git config --global --add safe.directory '*'\"\033[0m"
++ @gpep517 build-wheel --wheel-dir dist --output-fd 3 3>&1 >&2
++ @python3 -m installer -d "$(DESTDIR)" dist/*.whl
+
+ @rm -f guake/paths.py
+ @if [ -f guake/paths.py.dev ]; then mv guake/paths.py.dev guake/paths.py; fi
+
+- @update-desktop-database || echo "Could not run update-desktop-database, are you root?"
+ @rm -rfv build *.egg-info
+
+ install-locale:
diff --git a/testing/guetzli/APKBUILD b/testing/guetzli/APKBUILD
index 516212daa42..dd2da63cef9 100755..100644
--- a/testing/guetzli/APKBUILD
+++ b/testing/guetzli/APKBUILD
@@ -3,7 +3,7 @@
pkgname=guetzli
pkgver=0_git20191025 # Last tagged release on Mar 21, 2017, 76 commits behind
_commit=214f2bb42abf5a577c079d00add5d6cc470620d3
-pkgrel=0
+pkgrel=1
pkgdesc="perceptual JPEG encoder that aims for excellent compression density at high visual quality"
url="https://github.com/google/guetzli"
license="Apache-2.0"
diff --git a/testing/gufw/APKBUILD b/testing/gufw/APKBUILD
index b159b6bf4ce..453f0eabab7 100644
--- a/testing/gufw/APKBUILD
+++ b/testing/gufw/APKBUILD
@@ -1,11 +1,11 @@
# Contributor: Thomas Kienlen <kommander@laposte.net>
# Maintainer: Thomas Kienlen <kommander@laposte.net>
pkgname=gufw
-pkgver=22.04
-pkgrel=0
+pkgver=24.04
+pkgrel=1
pkgdesc="GUI for Uncomplicated Firewall"
-url="https://gufw.org/"
-arch="noarch !riscv64 !s390x" # limited by polkit
+url="https://costales.github.io/projects/gufw/"
+arch="noarch"
options="!check" # no test suite
license="GPL-3.0-or-later"
depends="
@@ -20,9 +20,10 @@ depends="
makedepends="
intltool
py3-distutils-extra
+ py3-setuptools
"
source="https://github.com/costales/gufw/archive/$pkgver/gufw-$pkgver.tar.gz"
-subpackages="$pkgname-doc $pkgname-lang"
+subpackages="$pkgname-doc $pkgname-lang $pkgname-pyc"
build() {
local PYTHONVERSION="$(python3 -c 'import sys; print("{}.{}".format(sys.version_info.major, sys.version_info.minor))')"
@@ -37,9 +38,9 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir" -O1
+ python3 setup.py install --skip-build --root="$pkgdir" -O1
}
sha512sums="
-afddcf8c262666b82e93b9248d30426d86700ba9acbd43fd0dec8b77ccd9d0743ee18259be78c02d8c78300a853c50cfc5ba10a273cf30987744a33ae4920701 gufw-22.04.tar.gz
+c9b9d86c35ab574e6e93f3dc62fc1875c33b371c397ab7032e07935db7d594c7e0af37789678007b848ff83a5d1d69724c728687c0c36a4c890aaf56420c2228 gufw-24.04.tar.gz
"
diff --git a/testing/guile-reader/APKBUILD b/testing/guile-reader/APKBUILD
deleted file mode 100644
index b0c5fd2374e..00000000000
--- a/testing/guile-reader/APKBUILD
+++ /dev/null
@@ -1,38 +0,0 @@
-# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
-# Maintainer: Sören Tempel <soeren+alpine@soeren-tempel.net>
-pkgname=guile-reader
-pkgver=0.6.3
-pkgrel=1
-pkgdesc="A framework for building readers for GNU Guile"
-url="http://www.nongnu.org/guile-reader/"
-arch="all"
-license="GPL-3.0-or-later"
-depends="guile"
-makedepends="gperf guile-dev gmp-dev"
-# Don't split -dev: https://gitlab.alpinelinux.org/alpine/aports/-/issues/12783
-subpackages="$pkgname-doc"
-options="!strip" # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=907061
-source="https://download.savannah.nongnu.org/releases/guile-reader/guile-reader-$pkgver.tar.gz"
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-0f9f47ee5f24ebb79894863ac96d63b0c7d2801020a212c59d11c7685ff4006a646be988a696a9b623dc0e0605f46d4a9a8680bfabd299878e41eab92e75efd5 guile-reader-0.6.3.tar.gz
-"
diff --git a/testing/guish/APKBUILD b/testing/guish/APKBUILD
new file mode 100644
index 00000000000..fd137ccfcf9
--- /dev/null
+++ b/testing/guish/APKBUILD
@@ -0,0 +1,31 @@
+# Maintainer: Francesco Palumbo <phranz@subfc.net>
+# Contributor: Francesco Palumbo <phranz@subfc.net>
+pkgname=guish
+pkgver=2.6.10
+pkgrel=0
+pkgdesc="Language and swiss army knife to make and modify GUIs"
+# others not supported yet
+arch="x86 x86_64 armhf armv7 aarch64"
+url="https://codeberg.org/phranz/guish"
+license="GPL-3.0-or-later"
+makedepends="libx11-dev libxtst-dev imlib2-dev"
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://codeberg.org/phranz/guish/archive/$pkgver.tar.gz"
+builddir="$srcdir/guish"
+
+build() {
+ make
+}
+
+check() {
+ make tests
+}
+
+package() {
+ make DESTDIR="$pkgdir" PREFIX=/usr install
+ install -Dm644 COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING
+}
+
+sha512sums="
+ddebd1f8383b91e0bf16a77eb05c4ddb5dd7129a33a75bd86b4393df21def2664e8a431bec36becd52af0ca332776707a88786fd843e7fcc85ba6123ee47a65f guish-2.6.10.tar.gz
+"
diff --git a/testing/gutenprint/APKBUILD b/testing/gutenprint/APKBUILD
index 0e2946269dc..a9dbc5d1cfd 100644
--- a/testing/gutenprint/APKBUILD
+++ b/testing/gutenprint/APKBUILD
@@ -1,23 +1,21 @@
# Contributor: Natanael Copa <ncopa@alpinelinux.org>
+# Maintainer:
pkgname=gutenprint
pkgver=5.3.4
-pkgrel=0
+pkgrel=3
pkgdesc="Top quality printer drivers for POSIX systems"
-url="http://gimp-print.sourceforge.net/"
+url="https://gimp-print.sourceforge.net/"
arch="all"
license="GPL-2.0-or-later"
makedepends="
+ bash
cups-dev
- tiff-dev
+ gettext-dev
+ ghostscript-dev
libjpeg-turbo-dev
libpng-dev
- ghostscript-dev
libusb-dev
- autoconf
- automake
- libtool
- gettext-dev
- bash
+ tiff-dev
"
subpackages="$pkgname-static $pkgname-dev $pkgname-doc $pkgname-lang $pkgname-libs $pkgname-cups $pkgname-samples"
source="https://downloads.sourceforge.net/gimp-print/gutenprint-$pkgver.tar.xz"
@@ -45,18 +43,19 @@ package() {
cups() {
pkgdesc="CUPS drivers for Canon, Epson, HP and compatible printers"
- for d in usr/share usr/lib usr/bin usr/sbin etc; do
- mkdir -p "$subpkgdir"/$d || return 1
- mv "$pkgdir"/$d/cups* "$subpkgdir"/$d/
- done
+ amove \
+ usr/share/cups* \
+ usr/lib/cups* \
+ usr/bin/cups* \
+ usr/sbin/cups* \
+ etc/cups
}
samples() {
pkgdesc="Sample test pattern generator for gutenprint-dev"
- mkdir -p "$subpkgdir"/usr/share/gutenprint "$subpkgdir"/usr/bin
- mv "$pkgdir"/usr/share/gutenprint/samples \
- "$subpkgdir"/usr/share/gutenprint/
- mv "$pkgdir"/usr/bin/testpattern "$subpkgdir"/usr/bin/
+ amove \
+ usr/share/gutenprint/samples \
+ usr/bin/testpattern
}
diff --git a/testing/gx-go/APKBUILD b/testing/gx-go/APKBUILD
index 94fb7a5a673..9df0d782c60 100644
--- a/testing/gx-go/APKBUILD
+++ b/testing/gx-go/APKBUILD
@@ -2,58 +2,39 @@
# Maintainer: Oleg Titov <oleg.titov@gmail.com>
pkgname=gx-go
pkgver=1.9.0
-pkgrel=8
+pkgrel=24
pkgdesc="A tool to use with the gx package manager for packages written in go"
url="https://github.com/whyrusleeping/gx-go"
# riscv64: dependency github.com/minio/sha512-simd does not support riscv64
arch="all !riscv64"
license="MIT"
-options="!check" # Test suite issues
-makedepends="git glide go"
+options="!check net" # Test suite issues
+makedepends="go"
subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/whyrusleeping/$pkgname/archive/v$pkgver.tar.gz
- glide.yaml
- glide.lock
- "
-builddir="$srcdir/src/github.com/whyrusleeping/$pkgname"
+source="$pkgname-$pkgver.tar.gz::https://github.com/whyrusleeping/gx-go/archive/v$pkgver.tar.gz
+ gomod.patch
+ "
-prepare() {
- export GOPATH="$srcdir"
- export GO111MODULE=off
-
- mkdir -p $(dirname $builddir)
- mv "$srcdir"/$pkgname-$pkgver "$builddir"/
-
- cd "$builddir"
- cp "$srcdir"/glide.yaml "$srcdir"/glide.lock .
- glide install --skip-test
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+prepare() {
default_prepare
+ go mod download
}
build() {
- GOPATH="$srcdir" GOBIN="$GOPATH/bin" make
+ go build -o bin/gx-go
}
package() {
- cd "$srcdir"
install -Dm 755 bin/gx-go "$pkgdir/usr/bin/gx-go"
- cd "$builddir"
install -Dm 644 -t "$pkgdir/usr/share/licenses/$pkgname/" LICENSE
}
-glide_init() {
- abuild clean deps unpack prepare
- cd "$builddir"
- export GOPATH="$startdir"
- rm -f glide.yaml glide.lock
- glide init --non-interactive
- glide update
- cp glide.yaml glide.lock "$startdir"
- cd "$startdir" && abuild checksum clean
-}
-
-sha512sums="3df8a99d257098afdf99ba6cbf58d50eab196f823ae53db48865a4f4962e38b84a66ffc99d5a342b43ff9891c8245252a77677b75c770d86f93ef1ad3c9e879f gx-go-1.9.0.tar.gz
-db824fce3e8094e2806c68b18ba5b8decae4cb62068113f6bc97f72de1224bd326b3342297739ee9b5a86bd4f7c9ec2f9b04aa3610cc95903dc1b3bfd7b0934f glide.yaml
-32a2ae3e10d20c0ba1613a592d8b9fd7a6e9678e2bc9f262bb6887c22b65c0a8da2c7aef1f70d35b3d89ae6aa6b50ca26cdddd47c3ee274a8ddc1a8bf0b16016 glide.lock"
+sha512sums="
+3df8a99d257098afdf99ba6cbf58d50eab196f823ae53db48865a4f4962e38b84a66ffc99d5a342b43ff9891c8245252a77677b75c770d86f93ef1ad3c9e879f gx-go-1.9.0.tar.gz
+f7678e3ec2092ab9f4a78097dcaa892acb6288bf680c6f992b789d35d241e575d181d53c32e53b19e07ff6c793aed2188b5856c021287b2204eff82c78683e2f gomod.patch
+"
diff --git a/testing/gx-go/glide.lock b/testing/gx-go/glide.lock
deleted file mode 100644
index e30e2b7bc60..00000000000
--- a/testing/gx-go/glide.lock
+++ /dev/null
@@ -1,86 +0,0 @@
-hash: 95215163a517cde934cd6d76708d61d7593e3d0f75f09c30dab341e8462c4d8a
-updated: 2019-04-01T09:33:13.761921059-06:00
-imports:
-- name: github.com/btcsuite/btcd
- version: aa6e0f35703c1438cc45860ddc0c3f6e6c633c93
- subpackages:
- - btcec
-- name: github.com/gogo/protobuf
- version: 382325bbbb4d1c850eec1f3ec92a1a16f502d68b
- subpackages:
- - proto
-- name: github.com/gxed/hashland
- version: a72cc0875a1e95edd309d3134bc7c11bf2d7360b
- subpackages:
- - keccakpg
- - murmur3
-- name: github.com/ipfs/go-ipfs-api
- version: 26337195b3df044934572dc3ca9ccb175ce057b2
- subpackages:
- - options
-- name: github.com/ipfs/go-ipfs-files
- version: c68472a9b1ec45177ccf8fda607698c86ae0060f
-- name: github.com/kr/fs
- version: 1455def202f6e05b95cc7bfc7e8ae67ae5141eba
-- name: github.com/libp2p/go-flow-metrics
- version: 5b4a5750cdd34754b1a417b4c7c7d1c24790b4d4
-- name: github.com/libp2p/go-libp2p-crypto
- version: b0ed0e663e8b6832bad3f4502b2f6551ff2686cd
- subpackages:
- - pb
-- name: github.com/libp2p/go-libp2p-metrics
- version: a64ed6c7351276b3f21cbfa033ceba9bd096c3af
-- name: github.com/libp2p/go-libp2p-peer
- version: 96d6d7940e6fc555240a92d1b4615049cd451da2
-- name: github.com/libp2p/go-libp2p-protocol
- version: 89147e29c7ab3b76c6f8be5b6fcdf3839aec286f
-- name: github.com/minio/blake2b-simd
- version: 3f5f724cb5b182a5c278d6d3d55b40e7f8c2efb4
-- name: github.com/minio/sha256-simd
- version: 05b4dd3047e5d6e86cb4e0477164b850cd896261
-- name: github.com/mitchellh/go-homedir
- version: af06845cf3004701891bf4fdb884bfe4920b3727
-- name: github.com/mr-tron/base58
- version: 6598572f05537592acb5a609ff53c4c7fbba7a3e
- subpackages:
- - base58
-- name: github.com/multiformats/go-multiaddr
- version: ce21123d5172669bbf37a166078bc5f9d345ec2f
-- name: github.com/multiformats/go-multiaddr-dns
- version: 7d0de25ce05c9294aa44f320c03c7e85e11bbb0b
-- name: github.com/multiformats/go-multiaddr-net
- version: bd61b0499a3cfc893a8eb109c5669342b1671881
-- name: github.com/multiformats/go-multihash
- version: 2ca70e715b6950a9382097b770a3f44fd570d388
-- name: github.com/sabhiram/go-gitignore
- version: d3107576ba9425fc1c85f4b3569c4631b805a02e
-- name: github.com/urfave/cli
- version: 693af58b4d51b8fcc7f9d89576da170765980581
-- name: github.com/whyrusleeping/gx
- version: ca314b1e9e6be0432e50a30737c0e0720e67dd0f
- subpackages:
- - gxutil
-- name: github.com/whyrusleeping/gx-go
- version: d92567959e16cc58afd1edc83db02be880f495e9
- subpackages:
- - rewrite
-- name: github.com/whyrusleeping/progmeter
- version: f3e57218a75b913eff88d49a52c1debf9684ea04
-- name: github.com/whyrusleeping/stump
- version: 206f8f13aae1697a6fc1f4a55799faf955971fc5
-- name: github.com/whyrusleeping/tar-utils
- version: 8c6c8ba81d5c71fd69c0f48dbde4b2fb422b6dfc
-- name: golang.org/x/crypto
- version: a5d413f7728c81fb97d96a2b722368945f651e78
- subpackages:
- - blake2s
- - ed25519
- - ed25519/internal/edwards25519
- - sha3
-- name: golang.org/x/sys
- version: f49334f85ddcf0f08d7fb6dd7363e9e6d6b777eb
- subpackages:
- - cpu
- - unix
- - windows
-testImports: []
diff --git a/testing/gx-go/glide.yaml b/testing/gx-go/glide.yaml
deleted file mode 100644
index b5214da7244..00000000000
--- a/testing/gx-go/glide.yaml
+++ /dev/null
@@ -1,12 +0,0 @@
-package: src/github.com/whyrusleeping/gx-go
-import:
-- package: github.com/kr/fs
-- package: github.com/mitchellh/go-homedir
-- package: github.com/urfave/cli
-- package: github.com/whyrusleeping/gx-go
- subpackages:
- - rewrite
-- package: github.com/whyrusleeping/gx
- subpackages:
- - gxutil
-- package: github.com/whyrusleeping/stump
diff --git a/testing/gx-go/gomod.patch b/testing/gx-go/gomod.patch
new file mode 100644
index 00000000000..0372ec55b73
--- /dev/null
+++ b/testing/gx-go/gomod.patch
@@ -0,0 +1,190 @@
+diff --git a/go.mod b/go.mod
+new file mode 100644
+index 0000000..f130106
+--- /dev/null
++++ b/go.mod
+@@ -0,0 +1,41 @@
++module github.com/whyrusleeping/gx-go
++
++go 1.19
++
++require (
++ github.com/kr/fs v0.1.0
++ github.com/mitchellh/go-homedir v1.1.0
++ github.com/urfave/cli v1.22.9
++ github.com/whyrusleeping/gx v0.14.3
++ github.com/whyrusleeping/stump v0.0.0-20160611222256-206f8f13aae1
++)
++
++require (
++ github.com/btcsuite/btcd v0.0.0-20190213025234-306aecffea32 // indirect
++ github.com/cpuguy83/go-md2man/v2 v2.0.0-20190314233015-f79a8a8ca69d // indirect
++ github.com/gogo/protobuf v1.2.1 // indirect
++ github.com/ipfs/go-ipfs-api v0.0.3 // indirect
++ github.com/ipfs/go-ipfs-files v0.0.6 // indirect
++ github.com/libp2p/go-flow-metrics v0.0.1 // indirect
++ github.com/libp2p/go-libp2p-core v0.0.1 // indirect
++ github.com/libp2p/go-libp2p-crypto v0.1.0 // indirect
++ github.com/libp2p/go-libp2p-metrics v0.1.0 // indirect
++ github.com/libp2p/go-libp2p-peer v0.2.0 // indirect
++ github.com/minio/blake2b-simd v0.0.0-20160723061019-3f5f724cb5b1 // indirect
++ github.com/minio/sha256-simd v0.1.1-0.20190913151208-6de447530771 // indirect
++ github.com/mr-tron/base58 v1.1.3 // indirect
++ github.com/multiformats/go-multiaddr v0.2.0 // indirect
++ github.com/multiformats/go-multiaddr-net v0.1.2 // indirect
++ github.com/multiformats/go-multihash v0.0.13 // indirect
++ github.com/multiformats/go-varint v0.0.5 // indirect
++ github.com/russross/blackfriday/v2 v2.0.1 // indirect
++ github.com/sabhiram/go-gitignore v0.0.0-20180611051255-d3107576ba94 // indirect
++ github.com/shurcooL/sanitized_anchor_name v1.0.0 // indirect
++ github.com/spacemonkeygo/openssl v0.0.0-20181017203307-c2dcc5cca94a // indirect
++ github.com/spacemonkeygo/spacelog v0.0.0-20180420211403-2296661a0572 // indirect
++ github.com/spaolacci/murmur3 v1.1.0 // indirect
++ github.com/whyrusleeping/progmeter v0.0.0-20180725015555-f3e57218a75b // indirect
++ github.com/whyrusleeping/tar-utils v0.0.0-20180509141711-8c6c8ba81d5c // indirect
++ golang.org/x/crypto v0.0.0-20190611184440-5c40567a22f8 // indirect
++ golang.org/x/sys v0.0.0-20190412213103-97732733099d // indirect
++)
+diff --git a/go.sum b/go.sum
+new file mode 100644
+index 0000000..7a57a81
+--- /dev/null
++++ b/go.sum
+@@ -0,0 +1,137 @@
++github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU=
++github.com/aead/siphash v1.0.1/go.mod h1:Nywa3cDsYNNK3gaciGTWPwHt0wlpNV15vwmswBAUSII=
++github.com/blang/semver v3.5.1+incompatible/go.mod h1:kRBLl5iJ+tD4TcOOxsy/0fnwebNt5EWlYSAyrTnjyyk=
++github.com/btcsuite/btcd v0.0.0-20190213025234-306aecffea32 h1:qkOC5Gd33k54tobS36cXdAzJbeHaduLtnLQQwNoIi78=
++github.com/btcsuite/btcd v0.0.0-20190213025234-306aecffea32/go.mod h1:DrZx5ec/dmnfpw9KyYoQyYo7d0KEvTkk/5M/vbZjAr8=
++github.com/btcsuite/btclog v0.0.0-20170628155309-84c8d2346e9f/go.mod h1:TdznJufoqS23FtqVCzL0ZqgP5MqXbb4fg/WgDys70nA=
++github.com/btcsuite/btcutil v0.0.0-20190207003914-4c204d697803/go.mod h1:+5NJ2+qvTyV9exUAL/rxXi3DcLg2Ts+ymUAY5y4NvMg=
++github.com/btcsuite/go-socks v0.0.0-20170105172521-4720035b7bfd/go.mod h1:HHNXQzUsZCxOoE+CPiyCTO6x34Zs86zZUiwtpXoGdtg=
++github.com/btcsuite/goleveldb v0.0.0-20160330041536-7834afc9e8cd/go.mod h1:F+uVaaLLH7j4eDXPRvw78tMflu7Ie2bzYOH4Y8rRKBY=
++github.com/btcsuite/snappy-go v0.0.0-20151229074030-0bdef8d06723/go.mod h1:8woku9dyThutzjeg+3xrA5iCpBRH8XEEg3lh6TiUghc=
++github.com/btcsuite/websocket v0.0.0-20150119174127-31079b680792/go.mod h1:ghJtEyQwv5/p4Mg4C0fgbePVuGr935/5ddU9Z3TmDRY=
++github.com/btcsuite/winsvc v1.0.0/go.mod h1:jsenWakMcC0zFBFurPLEAyrnc/teJEM1O46fmI40EZs=
++github.com/cheekybits/is v0.0.0-20150225183255-68e9c0620927 h1:SKI1/fuSdodxmNNyVBR8d7X/HuLnRpvvFO0AgyQk764=
++github.com/cheekybits/is v0.0.0-20150225183255-68e9c0620927/go.mod h1:h/aW8ynjgkuj+NQRlZcDbAbM1ORAbXjXX77sX7T289U=
++github.com/coreos/go-semver v0.3.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3EedlOD2RNk=
++github.com/cpuguy83/go-md2man/v2 v2.0.0-20190314233015-f79a8a8ca69d h1:U+s90UTSYgptZMwQh2aRr3LuazLJIa+Pg3Kc1ylSYVY=
++github.com/cpuguy83/go-md2man/v2 v2.0.0-20190314233015-f79a8a8ca69d/go.mod h1:maD7wRr/U5Z6m/iR4s+kqSMx2CaBsrgA7czyZG/E6dU=
++github.com/davecgh/go-spew v0.0.0-20171005155431-ecdeabc65495/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
++github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
++github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
++github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo=
++github.com/gogo/protobuf v1.2.1 h1:/s5zKNz0uPFCZ5hddgPdo2TK2TVrUNMn0OOX8/aZMTE=
++github.com/gogo/protobuf v1.2.1/go.mod h1:hp+jE20tsWTFYpLwKvXlhS1hjn+gTNwPg2I6zVXpSg4=
++github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=
++github.com/gxed/hashland/keccakpg v0.0.1/go.mod h1:kRzw3HkwxFU1mpmPP8v1WyQzwdGfmKFJ6tItnhQ67kU=
++github.com/gxed/hashland/murmur3 v0.0.1/go.mod h1:KjXop02n4/ckmZSnY2+HKcLud/tcmvhST0bie/0lS48=
++github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU=
++github.com/ipfs/go-cid v0.0.1/go.mod h1:GHWU/WuQdMPmIosc4Yn1bcCT7dSeX4lBafM7iqUPQvM=
++github.com/ipfs/go-ipfs-api v0.0.3 h1:1XZBfVDGj0GyyO5WItLrz2opCwezIm9LfFcBfe+sRxM=
++github.com/ipfs/go-ipfs-api v0.0.3/go.mod h1:EgBqlEzrA22SnNKq4tcP2GDPKxbfF+uRTd2YFmR1uUk=
++github.com/ipfs/go-ipfs-files v0.0.6 h1:sMRtPiSmDrTA2FEiFTtk1vWgO2Dkg7bxXKJ+s8/cDAc=
++github.com/ipfs/go-ipfs-files v0.0.6/go.mod h1:lVYE6sgAdtZN5825beJjSAHibw7WOBNPDWz5LaJeukg=
++github.com/ipfs/go-ipfs-util v0.0.1/go.mod h1:spsl5z8KUnrve+73pOhSVZND1SIxPW5RyBCNzQxlJBc=
++github.com/jbenet/goprocess v0.0.0-20160826012719-b497e2f366b8/go.mod h1:Ly/wlsjFq/qrU3Rar62tu1gASgGw6chQbSh/XgIIXCY=
++github.com/jessevdk/go-flags v0.0.0-20141203071132-1679536dcc89/go.mod h1:4FA24M0QyGHXBuZZK/XkWh8h0e1EYbRYJSGM75WSRxI=
++github.com/jrick/logrotate v1.0.0/go.mod h1:LNinyqDIJnpAur+b8yyulnQw/wDuN1+BYKlTRt3OuAQ=
++github.com/kisielk/errcheck v1.1.0/go.mod h1:EZBBE59ingxPouuu3KfxchcWSUPOHkagtvWXihfKN4Q=
++github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck=
++github.com/kkdai/bstream v0.0.0-20161212061736-f391b8402d23/go.mod h1:J+Gs4SYgM6CZQHDETBtE9HaSEkGmuNXF86RwHhHUvq4=
++github.com/kr/fs v0.1.0 h1:Jskdu9ieNAYnjxsi0LbQp1ulIKZV1LAFgK1tWhpZgl8=
++github.com/kr/fs v0.1.0/go.mod h1:FFnZGqtBN9Gxj7eW1uZ42v5BccTP0vu6NEaFoC2HwRg=
++github.com/libp2p/go-flow-metrics v0.0.1 h1:0gxuFd2GuK7IIP5pKljLwps6TvcuYgvG7Atqi3INF5s=
++github.com/libp2p/go-flow-metrics v0.0.1/go.mod h1:Iv1GH0sG8DtYN3SVJ2eG221wMiNpZxBdp967ls1g+k8=
++github.com/libp2p/go-libp2p-core v0.0.1 h1:HSTZtFIq/W5Ue43Zw+uWZyy2Vl5WtF0zDjKN8/DT/1I=
++github.com/libp2p/go-libp2p-core v0.0.1/go.mod h1:g/VxnTZ/1ygHxH3dKok7Vno1VfpvGcGip57wjTU4fco=
++github.com/libp2p/go-libp2p-crypto v0.1.0 h1:k9MFy+o2zGDNGsaoZl0MA3iZ75qXxr9OOoAZF+sD5OQ=
++github.com/libp2p/go-libp2p-crypto v0.1.0/go.mod h1:sPUokVISZiy+nNuTTH/TY+leRSxnFj/2GLjtOTW90hI=
++github.com/libp2p/go-libp2p-metrics v0.1.0 h1:v7YMUTHNobFaQeqaMfJJMbnK3EPlZeb6/KFm4gE9dks=
++github.com/libp2p/go-libp2p-metrics v0.1.0/go.mod h1:rpoJmXWFxnj7qs5sJ02sxSzrhaZvpqBn8GCG6Sx6E1k=
++github.com/libp2p/go-libp2p-peer v0.2.0 h1:EQ8kMjaCUwt/Y5uLgjT8iY2qg0mGUT0N1zUjer50DsY=
++github.com/libp2p/go-libp2p-peer v0.2.0/go.mod h1:RCffaCvUyW2CJmG2gAWVqwePwW7JMgxjsHm7+J5kjWY=
++github.com/minio/blake2b-simd v0.0.0-20160723061019-3f5f724cb5b1 h1:lYpkrQH5ajf0OXOcUbGjvZxxijuBwbbmlSxLiuofa+g=
++github.com/minio/blake2b-simd v0.0.0-20160723061019-3f5f724cb5b1/go.mod h1:pD8RvIylQ358TN4wwqatJ8rNavkEINozVn9DtGI3dfQ=
++github.com/minio/sha256-simd v0.0.0-20190131020904-2d45a736cd16/go.mod h1:2FMWW+8GMoPweT6+pI63m9YE3Lmw4J71hV56Chs1E/U=
++github.com/minio/sha256-simd v0.1.1-0.20190913151208-6de447530771 h1:MHkK1uRtFbVqvAgvWxafZe54+5uBxLluGylDiKgdhwo=
++github.com/minio/sha256-simd v0.1.1-0.20190913151208-6de447530771/go.mod h1:B5e1o+1/KgNmWrSQK08Y6Z1Vb5pwIktudl0J58iy0KM=
++github.com/mitchellh/go-homedir v1.1.0 h1:lukF9ziXFxDFPkA1vsr5zpc1XuPDn/wFntq5mG+4E0Y=
++github.com/mitchellh/go-homedir v1.1.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0=
++github.com/mr-tron/base58 v1.1.0/go.mod h1:xcD2VGqlgYjBdcBLw+TuYLr8afG+Hj8g2eTVqeSzSU8=
++github.com/mr-tron/base58 v1.1.1/go.mod h1:xcD2VGqlgYjBdcBLw+TuYLr8afG+Hj8g2eTVqeSzSU8=
++github.com/mr-tron/base58 v1.1.2/go.mod h1:BinMc/sQntlIE1frQmRFPUoPA1Zkr8VRgBdjWI2mNwc=
++github.com/mr-tron/base58 v1.1.3 h1:v+sk57XuaCKGXpWtVBX8YJzO7hMGx4Aajh4TQbdEFdc=
++github.com/mr-tron/base58 v1.1.3/go.mod h1:BinMc/sQntlIE1frQmRFPUoPA1Zkr8VRgBdjWI2mNwc=
++github.com/multiformats/go-base32 v0.0.3/go.mod h1:pLiuGC8y0QR3Ue4Zug5UzK9LjgbkL8NSQj0zQ5Nz/AA=
++github.com/multiformats/go-multiaddr v0.0.2/go.mod h1:xKVEak1K9cS1VdmPZW3LSIb6lgmoS58qz/pzqmAxV44=
++github.com/multiformats/go-multiaddr v0.1.0/go.mod h1:xKVEak1K9cS1VdmPZW3LSIb6lgmoS58qz/pzqmAxV44=
++github.com/multiformats/go-multiaddr v0.2.0 h1:lR52sFwcTCuQb6bTfnXF6zA2XfyYvyd+5a9qECv/J90=
++github.com/multiformats/go-multiaddr v0.2.0/go.mod h1:0nO36NvPpyV4QzvTLi/lafl2y95ncPj0vFwVF6k6wJ4=
++github.com/multiformats/go-multiaddr-net v0.1.1/go.mod h1:5JNbcfBOP4dnhoZOv10JJVkJO0pCCEf8mTnipAo2UZQ=
++github.com/multiformats/go-multiaddr-net v0.1.2 h1:P7zcBH9FRETdPkDrylcXVjQLQ2t1JQtNItZULWNWgeg=
++github.com/multiformats/go-multiaddr-net v0.1.2/go.mod h1:QsWt3XK/3hwvNxZJp92iMQKME1qHfpYmyIjFVsSOY6Y=
++github.com/multiformats/go-multibase v0.0.1/go.mod h1:bja2MqRZ3ggyXtZSEDKpl0uO/gviWFaSteVbWT51qgs=
++github.com/multiformats/go-multihash v0.0.1/go.mod h1:w/5tugSrLEbWqlcgJabL3oHFKTwfvkofsjW2Qa1ct4U=
++github.com/multiformats/go-multihash v0.0.8/go.mod h1:YSLudS+Pi8NHE7o6tb3D8vrpKa63epEDmG8nTduyAew=
++github.com/multiformats/go-multihash v0.0.13 h1:06x+mk/zj1FoMsgNejLpy6QTvJqlSt/BhLEy87zidlc=
++github.com/multiformats/go-multihash v0.0.13/go.mod h1:VdAWLKTwram9oKAatUcLxBNUjdtcVwxObEQBtRfuyjc=
++github.com/multiformats/go-varint v0.0.1/go.mod h1:3Ls8CIEsrijN6+B7PbrXRPxHRPuXSrVKRY101jdMZYE=
++github.com/multiformats/go-varint v0.0.5 h1:XVZwSo04Cs3j/jS0uAEPpT3JY6DzMcVLLoWOSnCxOjg=
++github.com/multiformats/go-varint v0.0.5/go.mod h1:3Ls8CIEsrijN6+B7PbrXRPxHRPuXSrVKRY101jdMZYE=
++github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE=
++github.com/onsi/ginkgo v1.7.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE=
++github.com/onsi/gomega v1.4.3/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY=
++github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
++github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
++github.com/russross/blackfriday/v2 v2.0.1 h1:lPqVAte+HuHNfhJ/0LC98ESWRz8afy9tM/0RK8m9o+Q=
++github.com/russross/blackfriday/v2 v2.0.1/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM=
++github.com/sabhiram/go-gitignore v0.0.0-20180611051255-d3107576ba94 h1:G04eS0JkAIVZfaJLjla9dNxkJCPiKIGZlw9AfOhzOD0=
++github.com/sabhiram/go-gitignore v0.0.0-20180611051255-d3107576ba94/go.mod h1:b18R55ulyQ/h3RaWyloPyER7fWQVZvimKKhnI5OfrJQ=
++github.com/shurcooL/sanitized_anchor_name v1.0.0 h1:PdmoCO6wvbs+7yrJyMORt4/BmY5IYyJwS/kOiWx8mHo=
++github.com/shurcooL/sanitized_anchor_name v1.0.0/go.mod h1:1NzhyTcUVG4SuEtjjoZeVRXNmyL/1OwPU0+IJeTBvfc=
++github.com/spacemonkeygo/openssl v0.0.0-20181017203307-c2dcc5cca94a h1:/eS3yfGjQKG+9kayBkj0ip1BGhq6zJ3eaVksphxAaek=
++github.com/spacemonkeygo/openssl v0.0.0-20181017203307-c2dcc5cca94a/go.mod h1:7AyxJNCJ7SBZ1MfVQCWD6Uqo2oubI2Eq2y2eqf+A5r0=
++github.com/spacemonkeygo/spacelog v0.0.0-20180420211403-2296661a0572 h1:RC6RW7j+1+HkWaX/Yh71Ee5ZHaHYt7ZP4sQgUrm6cDU=
++github.com/spacemonkeygo/spacelog v0.0.0-20180420211403-2296661a0572/go.mod h1:w0SWMsp6j9O/dk4/ZpIhL+3CkG8ofA2vuv7k+ltqUMc=
++github.com/spaolacci/murmur3 v1.1.0 h1:7c1g84S4BPRrfL5Xrdp6fOJ206sU9y293DDHaoy0bLI=
++github.com/spaolacci/murmur3 v1.1.0/go.mod h1:JwIasOWyU6f++ZhiEuf87xNszmSA2myDM2Kzu9HwQUA=
++github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
++github.com/stretchr/testify v1.5.1 h1:nOGnQDM7FYENwehXlg/kFVnos3rEvtKTjRvOWSzb6H4=
++github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA=
++github.com/urfave/cli v1.22.2/go.mod h1:Gos4lmkARVdJ6EkW0WaNv/tZAAMe9V7XWyB60NtXRu0=
++github.com/urfave/cli v1.22.9 h1:cv3/KhXGBGjEXLC4bH0sLuJ9BewaAbpk5oyMOveu4pw=
++github.com/urfave/cli v1.22.9/go.mod h1:Gos4lmkARVdJ6EkW0WaNv/tZAAMe9V7XWyB60NtXRu0=
++github.com/whyrusleeping/gx v0.14.3 h1:Tn6kM1Rv2Dz6rI2cpWMOeCspdJFaza+cpv8/wIdUNUE=
++github.com/whyrusleeping/gx v0.14.3/go.mod h1:HfCLLEulN7GrYs60Cm6NIvvdohZamn/kjTWQX8uCb2o=
++github.com/whyrusleeping/json-filter v0.0.0-20160615203754-ff25329a9528/go.mod h1:5a88m1gFWhTL3QwRdNm1fiRNrBTME7Ch8f8pZZZes9g=
++github.com/whyrusleeping/progmeter v0.0.0-20180725015555-f3e57218a75b h1:jMJLc+G2DWK2ZX+C+X4Jv7x2ss+XReNGNMpQ+a3fdqo=
++github.com/whyrusleeping/progmeter v0.0.0-20180725015555-f3e57218a75b/go.mod h1:gyCeSVnUb+LQh0QCWbg0Sl30ckl2YgNC+yvSFvy5mFY=
++github.com/whyrusleeping/stump v0.0.0-20160611222256-206f8f13aae1 h1:57Pu2W5KJQ3qRtqKYqOS4GQtkwxGH4ppL4mLWaPnfZU=
++github.com/whyrusleeping/stump v0.0.0-20160611222256-206f8f13aae1/go.mod h1:Qv7QS+Xqv+q5lhOfseae0ZWF0wliLmab2hmikKoLhgE=
++github.com/whyrusleeping/tar-utils v0.0.0-20180509141711-8c6c8ba81d5c h1:GGsyl0dZ2jJgVT+VvWBf/cNijrHRhkrTjkmp5wg7li0=
++github.com/whyrusleeping/tar-utils v0.0.0-20180509141711-8c6c8ba81d5c/go.mod h1:xxcJeBb7SIUl/Wzkz1eVKJE/CB34YNrqX2TQI6jY9zs=
++golang.org/x/crypto v0.0.0-20170930174604-9419663f5a44/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
++golang.org/x/crypto v0.0.0-20190211182817-74369b46fc67/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
++golang.org/x/crypto v0.0.0-20190225124518-7f87c0fbb88b/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
++golang.org/x/crypto v0.0.0-20190228161510-8dd112bcdc25/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
++golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
++golang.org/x/crypto v0.0.0-20190611184440-5c40567a22f8 h1:1wopBVtVdWnn03fZelqdXTqk7U7zPQCb+T4rbU9ZEoU=
++golang.org/x/crypto v0.0.0-20190611184440-5c40567a22f8/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
++golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
++golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
++golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
++golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
++golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
++golang.org/x/sys v0.0.0-20190219092855-153ac476189d/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
++golang.org/x/sys v0.0.0-20190222072716-a9d3bda3a223/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
++golang.org/x/sys v0.0.0-20190228124157-a34e9553db1e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
++golang.org/x/sys v0.0.0-20190302025703-b6889370fb10/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
++golang.org/x/sys v0.0.0-20190412213103-97732733099d h1:+R4KGOnez64A81RvjARKc4UT5/tI9ujCIVX+P5KiHuI=
++golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
++golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
++golang.org/x/tools v0.0.0-20180221164845-07fd8470d635/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
++gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
++gopkg.in/fsnotify.v1 v1.4.7/go.mod h1:Tz8NjZHkW78fSQdbUxIjBTcgA1z1m8ZHf0WmKUhAMys=
++gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWDmTeBkI65Dw0HsyUHuEVlX15mw=
++gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
++gopkg.in/yaml.v2 v2.2.2 h1:ZCJp+EgiOT7lHqUV2J862kp8Qj64Jo6az82+3Td9dZw=
++gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
diff --git a/testing/gx/APKBUILD b/testing/gx/APKBUILD
index 9597d640465..4e5ddf238da 100644
--- a/testing/gx/APKBUILD
+++ b/testing/gx/APKBUILD
@@ -2,34 +2,27 @@
# Maintainer: Oleg Titov <oleg.titov@gmail.com>
pkgname=gx
pkgver=0.14.3
-pkgrel=6
+pkgrel=22
pkgdesc="Packaging tool build around the distributed, content addressed filesystem IPFS"
url="https://github.com/whyrusleeping/gx"
arch="all"
license="MIT"
-options="!check chmod-clean" # Test suite issues
-makedepends="git glide go"
+options="!check net" # Test suite issues
+makedepends="go"
subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/whyrusleeping/gx/archive/v$pkgver.tar.gz
- glide.yaml
- glide.lock
- "
-builddir="$srcdir/src/github.com/whyrusleeping/$pkgname"
+source="$pkgname-$pkgver.tar.gz::https://github.com/whyrusleeping/gx/archive/v$pkgver.tar.gz"
-prepare() {
- export GOPATH="$srcdir"
-
- mkdir -p $(dirname $builddir)
- mv "$srcdir"/$pkgname-$pkgver "$builddir"/
-
- cp "$srcdir"/glide.yaml "$srcdir"/glide.lock "$builddir"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+prepare() {
default_prepare
+ go mod download
}
build() {
- glide install --skip-test
- GOPATH="$srcdir" GOBIN="$GOPATH/bin" make
+ make
}
package() {
@@ -37,19 +30,6 @@ package() {
install -Dm 644 -t "$pkgdir/usr/share/licenses/gx" LICENSE
}
-glide_init() {
- abuild clean deps unpack prepare
- cd "$builddir"
- export GOPATH="$startdir"
- rm -f glide.yaml glide.lock
- glide init --non-interactive
- glide update
- cp glide.yaml glide.lock "$startdir"
- cd "$startdir" && abuild checksum clean
-}
-
sha512sums="
14280680254aea69b1295e625788b39404a77defdcdd47399529ee818695965c06c6001de8adb0a44f641e66f9386ca9da3fc2c56a038c4b96a8ddd6252c3d49 gx-0.14.3.tar.gz
-b1ac1cdd2ed760072cab4d63876ad711407bc467bee37ee3740b477f1071a13e0086afef99d15cb9267634ca8496aa92d1a1b399fc99f0479336433c9212810d glide.yaml
-6ddf9614c4244258191f0ba7fe1e41d5f84981795a71edc1f3d117f7ec72f1928d887a2dd9aecdb78c7cdac6c04eedf09e2e0af79f6049c337e122b5c7ac5ee7 glide.lock
"
diff --git a/testing/gx/glide.lock b/testing/gx/glide.lock
deleted file mode 100644
index 57726fe30b3..00000000000
--- a/testing/gx/glide.lock
+++ /dev/null
@@ -1,84 +0,0 @@
-hash: c90dd949f9035c5c1ecd184c4eaf04c28fbf02fbc3a30f036a68f15121a29c88
-updated: 2019-03-27T16:14:37.014733407-06:00
-imports:
-- name: github.com/blang/semver
- version: 3c1074078d32d767e08ab2c8564867292da86926
-- name: github.com/btcsuite/btcd
- version: aa6e0f35703c1438cc45860ddc0c3f6e6c633c93
- subpackages:
- - btcec
-- name: github.com/gogo/protobuf
- version: 382325bbbb4d1c850eec1f3ec92a1a16f502d68b
- subpackages:
- - proto
-- name: github.com/gxed/hashland
- version: a72cc0875a1e95edd309d3134bc7c11bf2d7360b
- subpackages:
- - keccakpg
- - murmur3
-- name: github.com/ipfs/go-ipfs-api
- version: 26337195b3df044934572dc3ca9ccb175ce057b2
- subpackages:
- - options
-- name: github.com/ipfs/go-ipfs-files
- version: c68472a9b1ec45177ccf8fda607698c86ae0060f
-- name: github.com/libp2p/go-flow-metrics
- version: 5b4a5750cdd34754b1a417b4c7c7d1c24790b4d4
-- name: github.com/libp2p/go-libp2p-crypto
- version: b0ed0e663e8b6832bad3f4502b2f6551ff2686cd
- subpackages:
- - pb
-- name: github.com/libp2p/go-libp2p-metrics
- version: a64ed6c7351276b3f21cbfa033ceba9bd096c3af
-- name: github.com/libp2p/go-libp2p-peer
- version: 96d6d7940e6fc555240a92d1b4615049cd451da2
-- name: github.com/libp2p/go-libp2p-protocol
- version: 89147e29c7ab3b76c6f8be5b6fcdf3839aec286f
-- name: github.com/minio/blake2b-simd
- version: 3f5f724cb5b182a5c278d6d3d55b40e7f8c2efb4
-- name: github.com/minio/sha256-simd
- version: 05b4dd3047e5d6e86cb4e0477164b850cd896261
-- name: github.com/mitchellh/go-homedir
- version: af06845cf3004701891bf4fdb884bfe4920b3727
-- name: github.com/mr-tron/base58
- version: 6598572f05537592acb5a609ff53c4c7fbba7a3e
- subpackages:
- - base58
-- name: github.com/multiformats/go-multiaddr
- version: ce21123d5172669bbf37a166078bc5f9d345ec2f
-- name: github.com/multiformats/go-multiaddr-dns
- version: 7d0de25ce05c9294aa44f320c03c7e85e11bbb0b
-- name: github.com/multiformats/go-multiaddr-net
- version: bd61b0499a3cfc893a8eb109c5669342b1671881
-- name: github.com/multiformats/go-multihash
- version: 2ca70e715b6950a9382097b770a3f44fd570d388
-- name: github.com/sabhiram/go-gitignore
- version: d3107576ba9425fc1c85f4b3569c4631b805a02e
-- name: github.com/urfave/cli
- version: 693af58b4d51b8fcc7f9d89576da170765980581
-- name: github.com/whyrusleeping/gx
- version: ca314b1e9e6be0432e50a30737c0e0720e67dd0f
- subpackages:
- - gxutil
-- name: github.com/whyrusleeping/json-filter
- version: ff25329a9528f01c5175414f16cc0a6a162a5b8b
-- name: github.com/whyrusleeping/progmeter
- version: f3e57218a75b913eff88d49a52c1debf9684ea04
-- name: github.com/whyrusleeping/stump
- version: 206f8f13aae1697a6fc1f4a55799faf955971fc5
-- name: github.com/whyrusleeping/tar-utils
- version: 8c6c8ba81d5c71fd69c0f48dbde4b2fb422b6dfc
-- name: golang.org/x/crypto
- version: a5d413f7728c81fb97d96a2b722368945f651e78
- subpackages:
- - blake2s
- - ed25519
- - ed25519/internal/edwards25519
- - sha3
-- name: golang.org/x/sys
- version: f49334f85ddcf0f08d7fb6dd7363e9e6d6b777eb
- subpackages:
- - cpu
- - unix
- - windows
-testImports: []
diff --git a/testing/gx/glide.yaml b/testing/gx/glide.yaml
deleted file mode 100644
index dea832a0ea8..00000000000
--- a/testing/gx/glide.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-package: src/github.com/whyrusleeping/gx
-import:
-- package: github.com/blang/semver
-- package: github.com/ipfs/go-ipfs-api
-- package: github.com/mitchellh/go-homedir
-- package: github.com/multiformats/go-multiaddr
-- package: github.com/multiformats/go-multiaddr-net
-- package: github.com/multiformats/go-multihash
-- package: github.com/sabhiram/go-gitignore
-- package: github.com/urfave/cli
-- package: github.com/whyrusleeping/gx
- subpackages:
- - gxutil
-- package: github.com/whyrusleeping/json-filter
-- package: github.com/whyrusleeping/progmeter
-- package: github.com/whyrusleeping/stump
diff --git a/testing/gyp/0001-fix-module-collections-has-no-attribute-mutableset-iterable.patch b/testing/gyp/0001-fix-module-collections-has-no-attribute-mutableset-iterable.patch
deleted file mode 100644
index cd7aa6ffc49..00000000000
--- a/testing/gyp/0001-fix-module-collections-has-no-attribute-mutableset-iterable.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-Author: Alex Yam <alex@alexyam.com>
-
-MutableSet and Iterable moved from collections to collections.abc in Python 3.10
-
---- a/pylib/gyp/common.py
-+++ b/pylib/gyp/common.py
-@@ -494,7 +494,7 @@
-
-
- # Based on http://code.activestate.com/recipes/576694/.
--class OrderedSet(collections.MutableSet):
-+class OrderedSet(collections.abc.MutableSet):
- def __init__(self, iterable=None):
- self.end = end = []
- end += [None, end, end] # sentinel node for doubly linked list
-
---- a/test/lib/TestGyp.py
-+++ b/test/lib/TestGyp.py
-@@ -496,7 +496,7 @@
- if status is None:
- kw['status'] = None
- else:
-- if not isinstance(status, collections.Iterable): status = (status,)
-+ if not isinstance(status, collections.abc.Iterable): status = (status,)
- kw['status'] = list(itertools.chain((0,), status))
- self.cmake_build(gyp_file, target, **kw)
- kw['status'] = status
diff --git a/testing/gyp/APKBUILD b/testing/gyp/APKBUILD
deleted file mode 100644
index 52833114887..00000000000
--- a/testing/gyp/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Contributor: Alex Yam <alex@alexyam.com>
-# Contributor: Leo <thinkabit.ukim@gmail.com>
-# Maintainer: Alex Yam <alex@alexyam.com>
-pkgname=gyp
-pkgver=20210831
-_gitrev=d6c5dd51dc3a60bf4ff32a5256713690a1a10376
-pkgrel=0
-pkgdesc="Generate Your Projects Meta-Build system"
-options="!check" # Tests currently fail
-url="https://gyp.gsrc.io"
-arch="noarch"
-license="BSD-3-Clause"
-depends="python3 ninja"
-makedepends="py3-setuptools"
-source="$pkgname-$_gitrev.tar.gz::https://github.com/chromium/gyp/archive/$_gitrev.tar.gz
- 0001-fix-module-collections-has-no-attribute-mutableset-iterable.patch
- "
-builddir="$srcdir/$pkgname-$_gitrev"
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --root="$pkgdir"
-}
-
-cleanup_srcdir() {
- [ -d src ] && chmod -R +w src
- default_cleanup_srcdir
-}
-
-sha512sums="
-25bc5f6d58b80c8c4bf47516950cd8587838db0c42b48ccd994ec9293d2f32b22b546a77fac61366afa5e8bce232a28860a44312300be1a598509bb20ff8229e gyp-d6c5dd51dc3a60bf4ff32a5256713690a1a10376.tar.gz
-cb6311e4778b14e9b2f495f6c65d1447e2ff7f74ff74f1b4552dc44f76fd4e5e51036629345b368d23bbf5ab18419d06855429280aae9daacf01ae0d975011a6 0001-fix-module-collections-has-no-attribute-mutableset-iterable.patch
-"
diff --git a/testing/gzdoom/0001-link-zipdir-against-fts.patch b/testing/gzdoom/0001-link-zipdir-against-fts.patch
deleted file mode 100644
index 449da8c75fd..00000000000
--- a/testing/gzdoom/0001-link-zipdir-against-fts.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/tools/zipdir/CMakeLists.txt
-+++ b/tools/zipdir/CMakeLists.txt
-@@ -4,6 +4,6 @@
- include_directories( "${ZLIB_INCLUDE_DIR}" "${BZIP2_INCLUDE_DIR}" "${LZMA_INCLUDE_DIR}" )
- add_executable( zipdir
- zipdir.c )
-- target_link_libraries( zipdir ${ZLIB_LIBRARIES} ${BZIP2_LIBRARIES} lzma )
-+ target_link_libraries( zipdir ${ZLIB_LIBRARIES} ${BZIP2_LIBRARIES} lzma fts )
- set( CROSS_EXPORTS ${CROSS_EXPORTS} zipdir PARENT_SCOPE )
- endif()
diff --git a/testing/gzdoom/0002-fix-musl-fts.patch b/testing/gzdoom/0002-fix-musl-fts.patch
deleted file mode 100644
index b8024004d37..00000000000
--- a/testing/gzdoom/0002-fix-musl-fts.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -275,6 +275,7 @@
- if ( NOT HAVE_FTS )
- include ( FindPkgConfig )
- pkg_check_modules( MUSL_FTS musl-fts )
-+ string(REPLACE ";" " " MUSL_FTS_LDFLAGS "${MUSL_FTS_LDFLAGS}")
- if ( MUSL_FTS_FOUND )
- set ( ALL_C_FLAGS "${ALL_C_FLAGS} ${MUSL_FTS_LDFLAGS}" )
- else ( MUSL_FTS_FOUND )
diff --git a/testing/gzdoom/APKBUILD b/testing/gzdoom/APKBUILD
deleted file mode 100644
index 82d81161e8a..00000000000
--- a/testing/gzdoom/APKBUILD
+++ /dev/null
@@ -1,75 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=gzdoom
-pkgver=4.7.1
-pkgrel=0
-pkgdesc="Feature centric port for all Doom engine games"
-url="https://www.zdoom.org/"
-# ppc64le blocked by zmusic
-# x86 blocked by sse2
-# fails to build, link-make applet not found
-arch="all !ppc64le !x86 !riscv64"
-license="GPL-3.0-or-later"
-depends="fluidsynth"
-makedepends="
- bzip2-dev
- cmake
- fts-dev
- gtk+3.0-dev
- libexecinfo-dev
- libgme-dev
- libjpeg-turbo-dev
- libsndfile-dev
- mesa-dev
- mpg123-dev
- nasm
- openal-soft-dev
- samurai
- sdl2-dev
- vulkan-loader-dev
- zlib-dev
- zmusic-dev
- "
-subpackages="$pkgname-doc"
-source="
- https://github.com/coelckers/gzdoom/archive/refs/tags/g$pkgver.tar.gz
- 0001-link-zipdir-against-fts.patch
- 0002-fix-musl-fts.patch
- "
-builddir="$srcdir/$pkgname-g$pkgver"
-options="!check" # No test suite
-
-# Enable openmp when possible
-case "$CARCH" in
-s390x)
- _no_openmp=ON
- ;;
-*)
- makedepends="$makedepends openmp-dev"
- _no_openmp=OFF
- ;;
-esac
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build -G Ninja \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DBUILD_SHARED_LIBS=True \
- -DDYN_GTK=OFF \
- -DDYN_OPENAL=OFF \
- -DNO_OPENMP=$_no_openmp \
- $CMAKE_CROSSOPTS
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-
-sha512sums="
-040a51d2783616cca9f3d7e70bf83adf0d6afa8d7378a9f743cbf152811c07c4f03eecdbbdb617d9fda625049a6f13313dce6e5017698bf36fae74e107c012f0 g4.7.1.tar.gz
-7e2f5e593cabf618c2e5c520380af01ba4aa3fef9955a6305888d2bb017af25579ee02bd16b6c6080ac4e823498b224edb553f998b8a6d7833d4789070931c38 0001-link-zipdir-against-fts.patch
-7fed60cb9006653c9a85c226e98efae02b3f7f6bd34c47db03f29bc98bf1584f7e128394ab920956d799efa6bace3605f628fd806e130410243e3fdc78b417bc 0002-fix-musl-fts.patch
-"
diff --git a/testing/h1-cli/APKBUILD b/testing/h1-cli/APKBUILD
deleted file mode 100644
index 05292847c68..00000000000
--- a/testing/h1-cli/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Contributor: Adam Dobrawy <a.dobrawy@hyperone.com>
-# Maintainer: HyperOne staff <pkg-maintainers@hyperone.com>
-pkgname=h1-cli
-_pkgname=${pkgname/-cli/}
-pkgver=1.8.1
-pkgrel=0
-pkgdesc="Command-line interface for HyperOne platform"
-url="https://www.hyperone.com/tools/cli/"
-arch="x86_64"
-license="MIT"
-depends="openssh-client"
-makedepends="nodejs npm"
-subpackages="rbx-cli:rbx"
-source="$pkgname-$pkgver.tar.gz::https://github.com/hyperonecom/$pkgname/archive/v$pkgver.tar.gz"
-options="!strip !check"
-
-build() {
- npm install
- npx pkg -c ./package.json -t "node12-alpine" -o "./dist/h1" "./bin/h1"
- npx pkg -c ./package.json -t "node12-alpine" -o "./dist/rbx" "./bin/rbx"
-}
-
-package() {
- mkdir -p "$pkgdir"/usr/bin
- cp "$builddir/dist/$_pkgname" "$pkgdir"/usr/bin/$_pkgname
-}
-
-rbx() {
- pkgdesc="Command-line interface for Rootbox platform"
- url="http://rootbox.com/"
- cd "$builddir"
- mkdir -p "$subpkgdir"/usr/bin
- cp "$builddir/dist/rbx" "$subpkgdir"/usr/bin/rbx
-}
-
-sha512sums="f5ce8f53e542e08de9edbaf71229580a86945fd68cbc62e49031e130db53bc664646b2c3384c317cee113972c665f79a3566943ac6b1b96e138c099b897a2500 h1-cli-1.8.1.tar.gz"
diff --git a/testing/h26forge/APKBUILD b/testing/h26forge/APKBUILD
new file mode 100644
index 00000000000..02773f2f8a1
--- /dev/null
+++ b/testing/h26forge/APKBUILD
@@ -0,0 +1,30 @@
+# Contributor: Adam Jensen <adam@acj.sh>
+# Maintainer: Adam Jensen <adam@acj.sh>
+pkgname=h26forge
+pkgver=0.1.0_git20231031
+# Project does not have semver-style releases yet
+_release_tag=latest-8dde7ec
+pkgrel=0
+pkgdesc="Analyze, generate, and manipulate syntactically correct but semantically spec-non-compliant video files"
+url="https://github.com/h26forge/h26forge"
+arch="x86_64 aarch64" # dependency crates fail to build on other arches
+license="MIT"
+makedepends="cargo cargo-auditable clang-dev"
+source="$pkgname-$_release_tag.tar.gz::https://github.com/h26forge/h26forge/archive/refs/tags/$_release_tag.tar.gz"
+builddir="$srcdir/$pkgname-$_release_tag"
+
+build() {
+ cargo auditable build --release
+}
+
+check() {
+ cargo test --release
+}
+
+package() {
+ install -Dm755 target/release/"$pkgname" -t "$pkgdir"/usr/bin
+}
+
+sha512sums="
+f5a3d9b84449388f705f399fd7a7ebba75b3f30b4ca6c0b54ca740e2dceb3583e75a77c8a5e98c6a4e49792e179900a19d5499aefd9324edae5d557aa157466e h26forge-latest-8dde7ec.tar.gz
+"
diff --git a/testing/h4h5tools/APKBUILD b/testing/h4h5tools/APKBUILD
index 3070bc9503e..5caf23cee8b 100644
--- a/testing/h4h5tools/APKBUILD
+++ b/testing/h4h5tools/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Edd Salkield <edd@salkield.uk>
pkgname=h4h5tools
pkgver=2.2.5
-pkgrel=0
+pkgrel=2
pkgdesc="Conversion utilities between hdf4 and hdf5"
url="https://support.hdfgroup.org/products/hdf5_tools/h4toh5/"
arch="all !riscv64" # limited by hdf4
@@ -10,7 +10,9 @@ license="custom"
depends_dev="hdf4-dev hdf5-dev zlib-dev portablexdr-dev jpeg-dev"
makedepends="$depends_dev"
subpackages="$pkgname-static $pkgname-dev $pkgname-doc"
-source="https://support.hdfgroup.org/ftp/HDF5/releases/h4toh5/h4toh5-$pkgver/src/h4h5tools-$pkgver.tar.gz"
+source="https://support.hdfgroup.org/ftp/HDF5/releases/h4toh5/h4toh5-$pkgver/src/h4h5tools-$pkgver.tar.gz
+ h4h5tools-format-security-fix.patch
+ "
options="!check" # Upstream tests appear broken
build() {
@@ -33,4 +35,5 @@ package() {
sha512sums="
1749c5d4383695296fcc79dc900c2d04be267f01cfb006be8fd0f4baf0e6d51a04d788c76881fedba3d06ad2bf440a0dbceeb98d8b02b5ceade520900a726d40 h4h5tools-2.2.5.tar.gz
+4ca99d14733299892e4c6f8815b761078dad2bbccae34fcff6747ebb230580ecddcf93e5d342cd454d579e37073f1f3437e3ac5a769064119484e90db2b93b80 h4h5tools-format-security-fix.patch
"
diff --git a/testing/h4h5tools/h4h5tools-format-security-fix.patch b/testing/h4h5tools/h4h5tools-format-security-fix.patch
new file mode 100644
index 00000000000..632a54e9da5
--- /dev/null
+++ b/testing/h4h5tools/h4h5tools-format-security-fix.patch
@@ -0,0 +1,46 @@
+From 42386fc3b0a4ef66baeeaba9e028e6d757a1548f Mon Sep 17 00:00:00 2001
+From: Angel de Vicente <angel.de.vicente@iac.es>
+Date: Sat, 9 Oct 2021 00:56:40 +0100
+Subject: [PATCH] fixed compiling error
+
+---
+ utils/h5toh4/h5toh4.c | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/utils/h5toh4/h5toh4.c b/utils/h5toh4/h5toh4.c
+index edb5300..dbc0fcf 100644
+--- a/utils/h5toh4/h5toh4.c
++++ b/utils/h5toh4/h5toh4.c
+@@ -302,7 +302,7 @@ main(int argc, char *argv[])
+ {
+ (void) fprintf(stderr, err1, argc);
+ PrintOptions_h5toh4();
+- (void) fprintf(stderr, err4);
++ (void) fprintf(stderr, "%s", err4);
+ return EXIT_FAILURE;
+ }
+
+@@ -317,7 +317,7 @@ main(int argc, char *argv[])
+ if ((token = gtoken(argv[i])) == TOK_ERR)
+ {
+ PrintOptions_h5toh4();
+- (void) fprintf(stderr, err4);
++ (void) fprintf(stderr, "%s", err4);
+ return EXIT_FAILURE;
+ }
+
+@@ -359,9 +359,9 @@ main(int argc, char *argv[])
+
+ case TOK_ERR: /* command syntax error */
+ default:
+- (void) fprintf(stderr, err2);
++ (void) fprintf(stderr, "%s", err2);
+ PrintOptions_h5toh4();
+- (void) fprintf(stderr, err4);
++ (void) fprintf(stderr, "%s", err4);
+ return EXIT_FAILURE;
+ }
+ }
+--
+2.33.0
+
diff --git a/testing/habitctl/APKBUILD b/testing/habitctl/APKBUILD
new file mode 100644
index 00000000000..542d217f646
--- /dev/null
+++ b/testing/habitctl/APKBUILD
@@ -0,0 +1,30 @@
+# Maintainer: Willow Barraco <contact@willowbarraco.fr>
+pkgname=habitctl
+pkgver=0.1.0
+pkgrel=2
+pkgdesc="Minimalist command line tool to track and examine habits"
+url="https://github.com/blinry/habitctl"
+arch="aarch64 armhf armv7 ppc64le x86 x86_64" # limited by rust/cargo
+license="GPL-2.0-or-later"
+makedepends="cargo cargo-auditable"
+source="$pkgname-$pkgver.tar.gz::https://github.com/blinry/$pkgname/archive/refs/tags/$pkgver.tar.gz"
+options="!check" # no tests provided
+
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+package() {
+ install -D -m755 target/release/$pkgname -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+7fddd078804d863f2bedc442db558b49d506381438ed2af7ca1197799d6135fd4e3ae3d9afc1203b48f78c6e2bc89a628fa6894352f5730e46d7ca84880eefa7 habitctl-0.1.0.tar.gz
+"
diff --git a/testing/hackrf/APKBUILD b/testing/hackrf/APKBUILD
deleted file mode 100644
index e73125a13e8..00000000000
--- a/testing/hackrf/APKBUILD
+++ /dev/null
@@ -1,41 +0,0 @@
-# Contributor: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
-# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
-pkgname=hackrf
-pkgver=2021.03.1
-pkgrel=1
-pkgdesc="Driver for HackRF, allowing general purpose software defined radio"
-url="https://github.com/mossmann/hackrf"
-arch="all"
-license="GPL-2.0-only"
-options="!check" # no test suite
-makedepends="libusb-dev fftw-dev cmake"
-subpackages="
- $pkgname-static
- $pkgname-dev
- $pkgname-firmware:firmware:noarch
- $pkgname-libs
- "
-source="$pkgname-$pkgver.tar.xz::https://github.com/mossmann/hackrf/releases/download/v$pkgver/hackrf-$pkgver.tar.xz"
-
-build() {
- cmake -B build \
- -DCMAKE_BUILD_TYPE=MinSizeRel \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- host
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --build build --target install
-}
-
-firmware() {
- pkgdesc="$pkgdesc (firmware)"
-
- find "$builddir/firmware-bin" -type f -exec install -Dm644 -t "$subpkgdir/usr/share/hackrf/" {} \;
-}
-
-sha512sums="
-4a88b877a9f6fee0c8d9496eb265655af4baa678e862ca6147596cd3a1d85dd50315da6531efa54d050847ce5068c4726393b4897d40576888d10a898ad57139 hackrf-2021.03.1.tar.xz
-"
diff --git a/testing/halp/APKBUILD b/testing/halp/APKBUILD
new file mode 100644
index 00000000000..25a942a1feb
--- /dev/null
+++ b/testing/halp/APKBUILD
@@ -0,0 +1,52 @@
+# Contributor: Orhun Parmaksız <orhunparmaksiz@gmail.com>
+# Maintainer: Orhun Parmaksız <orhunparmaksiz@gmail.com>
+pkgname=halp
+pkgver=0.1.7
+pkgrel=1
+pkgdesc="A CLI tool to get help with CLI tools"
+url="https://github.com/orhun/halp"
+# s390x, ppc64le, riscv64: blocked by ring crate
+arch="all !s390x !ppc64le !riscv64"
+license="MIT OR Apache-2.0"
+makedepends="cargo cargo-auditable"
+checkdepends="util-linux"
+subpackages="
+ $pkgname-doc
+ $pkgname-bash-completion
+ $pkgname-zsh-completion
+ $pkgname-fish-completion
+ "
+options="net"
+source="$pkgname-$pkgver.tar.gz::https://github.com/orhun/halp/archive/v$pkgver.tar.gz"
+
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release
+ mkdir -p man
+ OUT_DIR=man/ "./target/release/$pkgname-mangen"
+ mkdir -p completions
+ OUT_DIR=completions/ "./target/release/$pkgname-completions"
+}
+
+check() {
+ OUT_DIR=target cargo test --frozen
+}
+
+package() {
+ install -Dm 755 "target/release/$pkgname" -t "$pkgdir/usr/bin"
+ install -Dm 644 README.md -t "$pkgdir/usr/share/doc/$pkgname"
+ install -Dm 644 "man/$pkgname.1" -t "$pkgdir/usr/share/man/man1"
+ install -Dm 644 "completions/$pkgname.bash" "$pkgdir/usr/share/bash-completion/completions/$pkgname"
+ install -Dm 644 "completions/$pkgname.fish" -t "$pkgdir/usr/share/fish/vendor_completions.d"
+ install -Dm 644 "completions/_$pkgname" -t "$pkgdir/usr/share/zsh/site-functions"
+}
+
+sha512sums="
+6f30e87464c85c6c1d25d9a8e45fba0b245acdb2deab076d8f5306ee8b396fd9b55725277ed889ff3a8574acd9b3c82d19c7ac61469d5eac84a91e3b477090bf halp-0.1.7.tar.gz
+"
diff --git a/testing/hamlib/APKBUILD b/testing/hamlib/APKBUILD
deleted file mode 100644
index 5a166a23e9a..00000000000
--- a/testing/hamlib/APKBUILD
+++ /dev/null
@@ -1,62 +0,0 @@
-# Contributor: Bradford D. Boyle <bradford.d.boyle@gmail.com>
-# Maintainer: Bradford D. Boyle <bradford.d.boyle@gmail.com>
-pkgname=hamlib
-pkgver=4.4
-pkgrel=1
-pkgdesc="Library to control radio transceivers and receivers"
-url="https://hamlib.github.io/"
-arch="all"
-license="LGPL-2.0-or-later"
-makedepends="linux-headers perl-dev python3-dev swig tcl-dev chrpath libusb-dev"
-subpackages="$pkgname-dev $pkgname-doc $pkgname-perl py3-$pkgname:py3 $pkgname-tcl"
-source="https://github.com/Hamlib/Hamlib/releases/download/$pkgver/hamlib-$pkgver.tar.gz"
-
-build() {
- ./configure \
- PYTHON=/usr/bin/python3 \
- --prefix=/usr \
- --sbindir=/usr/bin \
- --with-perl-binding \
- --with-python-binding \
- --with-tcl-binding
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- rm -f "$pkgdir"/usr/lib/*.a
- rm -f "$pkgdir"/usr/lib/tcl8.6/Hamlib/hamlibtcl.a
-}
-
-perl() {
- pkgdesc="Perl bindings for $pkgname"
- depends="perl"
-
- mkdir -p "$subpkgdir"/usr/lib
- mv "$pkgdir"/usr/lib/perl5 "$subpkgdir"/usr/lib/
-
- # fix perl module location
- cd "$subpkgdir"/usr/lib/perl5/site_perl/
- mkdir current
- mv auto current
- mv Hamlib.pm current
- rm perltest.pl
-
- chrpath --delete "$subpkgdir"/usr/lib/perl5/site_perl/current/auto/Hamlib/Hamlib.so
-}
-
-py3() {
- pkgdesc="Python3 bindings for $pkgname"
- depends="python3"
-
- amove usr/lib/python3*
-}
-
-tcl() {
- mkdir -p "$subpkgdir"/usr/lib
- mv "$pkgdir"/usr/lib/tcl8.6 "$subpkgdir"/usr/lib/
-}
-
-sha512sums="
-37366ba180031de34da447c3d4e0086f156b893f57b5ab9bbc38b8e1f4bf9310fa1a9eb2a6d7884f1f11900dbdb811b4071e023aba571ea0ac5d07ddb122bf7b hamlib-4.4.tar.gz
-"
diff --git a/testing/hamster-time-tracker/0001-Catch-AttributeError-if-bindtextdomain-isn-t-there.patch b/testing/hamster-time-tracker/0001-Catch-AttributeError-if-bindtextdomain-isn-t-there.patch
deleted file mode 100644
index 2bd68a770c7..00000000000
--- a/testing/hamster-time-tracker/0001-Catch-AttributeError-if-bindtextdomain-isn-t-there.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From 1bfb5def3babb3d4ee9b9c865e029e485b5f07ae Mon Sep 17 00:00:00 2001
-From: Hakan Erduman <hakan@erduman.de>
-Date: Fri, 7 Jan 2022 09:44:04 +0100
-Subject: [PATCH] Catch AttributeError if bindtextdomain isn't there
-
- Affects musl based python compilations
- and may be also useful for the *BSDs
----
- src/hamster/lib/i18n.py | 9 ++++++---
- 1 file changed, 6 insertions(+), 3 deletions(-)
-
-diff --git a/src/hamster/lib/i18n.py b/src/hamster/lib/i18n.py
-index 7bb89773..58c435a4 100644
---- a/src/hamster/lib/i18n.py
-+++ b/src/hamster/lib/i18n.py
-@@ -18,10 +18,13 @@ def setup_i18n():
- locale_dir = os.path.realpath(os.path.join(defs.DATA_DIR, "locale"))
-
- for module in (locale,gettext):
-- module.bindtextdomain('hamster', locale_dir)
-- module.textdomain('hamster')
-+ try:
-+ module.bindtextdomain('hamster', locale_dir)
-+ module.textdomain('hamster')
-
-- module.bind_textdomain_codeset('hamster','utf8')
-+ module.bind_textdomain_codeset('hamster','utf8')
-+ except:
-+ continue
-
- gettext.install("hamster", locale_dir)
-
---
-2.34.1
-
diff --git a/testing/hamster-time-tracker/APKBUILD b/testing/hamster-time-tracker/APKBUILD
index b0973aecf5e..0637d26f21f 100644
--- a/testing/hamster-time-tracker/APKBUILD
+++ b/testing/hamster-time-tracker/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Hakan Erduman <hakan@erduman.de>
# Maintainer: Hakan Erduman <hakan@erduman.de>
pkgname=hamster-time-tracker
-pkgver=3.0.2
-pkgrel=0
+pkgver=3.0.3
+pkgrel=2
pkgdesc="time tracking for individuals"
url="https://github.com/projecthamster/hamster"
arch="noarch"
@@ -28,10 +28,11 @@ depends="
python3
"
source="$pkgname-$pkgver.tar.gz::https://github.com/projecthamster/hamster/archive/refs/tags/v$pkgver.tar.gz
- 0001-Catch-AttributeError-if-bindtextdomain-isn-t-there.patch
+ no-version-check.patch
"
builddir="$srcdir/hamster-$pkgver"
subpackages="
+ $pkgname-pyc
$pkgname-lang
$pkgname-doc
$pkgname-bash-completion
@@ -56,6 +57,6 @@ check() {
}
sha512sums="
-f619746e6742cf798a40fadf2b38c489a94693b6b55403839f80c3abc618b2795511242664f8a9ce2c070fd178c117462720f52ffb7c3c32aa801c63bdbaaabc hamster-time-tracker-3.0.2.tar.gz
-94fbc2179870174c4c012533de5e7268dfea8c3449a69c2a1d2978b9e217033815fa17639436d2ed25bcf6015fb5f5d935222b4aa827f4cc62f9fa2443954c3f 0001-Catch-AttributeError-if-bindtextdomain-isn-t-there.patch
+50f15ed22d87bce2dc8fd36f14826916d156eebe4ce0f9166541246d53a97e63b6875bfbcd83de1cda362035f23084a0ef2291f5c04364cd9acb0d7484ae05ff hamster-time-tracker-3.0.3.tar.gz
+9a1e1b6fee41f38b6635d44521b1ad2723d834dd3f222ab3701b84c78906963f3d862190b5317a9fb6985715c17afbba0f1992661d29a501924c0744d71892e7 no-version-check.patch
"
diff --git a/testing/hamster-time-tracker/no-version-check.patch b/testing/hamster-time-tracker/no-version-check.patch
new file mode 100644
index 00000000000..6622993254c
--- /dev/null
+++ b/testing/hamster-time-tracker/no-version-check.patch
@@ -0,0 +1,24 @@
+our py3-dbus is way newer, and their check depends on the removed distutils
+
+
+diff --git a/src/hamster/client.py b/src/hamster/client.py
+index 8a0c297..ab3d3ba 100644
+--- a/src/hamster/client.py
++++ b/src/hamster/client.py
+@@ -27,3 +27,2 @@ import sys
+ from calendar import timegm
+-from distutils.version import LooseVersion
+ from gi.repository import GObject as gobject
+@@ -44,12 +43,2 @@ from hamster.lib import datetime as dt
+
+-# bug fixed in dbus-python 1.2.14 (released on 2019-11-25)
+-assert not (
+- sys.version_info >= (3, 8)
+- and LooseVersion(dbus.__version__) < LooseVersion("1.2.14")
+- ), """python3.8 changed str(<dbus integers>).
+- That broke hamster (https://github.com/projecthamster/hamster/issues/477).
+- Please upgrade to dbus-python >= 1.2.14.
+- """
+-
+-
+ class Storage(gobject.GObject):
diff --git a/testing/handbrake/APKBUILD b/testing/handbrake/APKBUILD
deleted file mode 100644
index 0b74145c305..00000000000
--- a/testing/handbrake/APKBUILD
+++ /dev/null
@@ -1,116 +0,0 @@
-# Maintainer: Nathan Angelacos <nangel@alpinelinux.org>
-pkgname=handbrake
-_pkgname=HandBrake
-pkgver=1.5.1
-pkgrel=1
-pkgdesc="Handbrake video transcoder"
-url="https://handbrake.fr"
-arch="all !s390x"
-license="GPL-2.0-only"
-makedepends="
- autoconf
- automake
- bash
- cmake
- coreutils
- dav1d-dev
- dbus-glib-dev
- fdk-aac-dev
- ffmpeg4-dev
- fontconfig-dev
- freetype-dev
- fribidi-dev
- glib-dev
- gst-plugins-base-dev
- gtk+3.0-dev
- intltool
- jansson-dev
- lame-dev
- libass-dev
- libbluray-dev
- libbz2
- libdvdnav-dev
- libdvdread-dev
- libgudev-dev
- libnotify-dev
- libogg-dev
- libtheora-dev
- libtool
- libvorbis-dev
- libvpx-dev
- linux-headers
- meson
- nasm
- numactl-dev
- opus-dev
- python3
- speex-dev
- tinyxml-dev
- x264-dev
- x265-dev
- xz-dev
- yasm
- zlib-dev
- zimg-dev
- "
-subpackages="$pkgname-lang $pkgname-gtk"
-source="https://github.com/HandBrake/HandBrake/releases/download/$pkgver/HandBrake-$pkgver-source.tar.bz2
- handbrake-9999-remove-dvdnav-dup.patch
- fix-missing-x265-link-flag.patch
- "
-builddir="$srcdir/$_pkgname-$pkgver"
-options="!check"
-
-case "$CARCH" in
- # Enable support HW acceleration on Intel GPUs (Quick Sync Video).
- x86_64)
- makedepends="$makedepends intel-media-sdk-dev onevpl-dev"
- _conf_flags='--enable-qsv'
- ;;
- *) _conf_flags='--disable-qsv';;
-esac
-
-# This is a video transcoder, performance is the most important.
-export CFLAGS=${CFLAGS/-Os/}
-export CXXFLAGS=${CXXFLAGS/-Os/}
-export CPPFLAGS=${CPPFLAGS/-Os/}
-
-prepare() {
- default_prepare
-
- # build against external libs
- sed -i 's:.*contrib/.*::g' \
- make/include/main.defs
-}
-
-build() {
- ./configure \
- --prefix=/usr \
- --force \
- --verbose \
- --disable-nvenc \
- --enable-numa \
- --enable-x265 \
- --disable-df-fetch \
- --disable-gtk-update-checks \
- $_conf_flags
-
- make -C build
-}
-
-package() {
- make -C build -j1 install DESTDIR="$pkgdir"
-}
-
-gtk() {
- pkgdesc="HandBrake Video Transcoder - GUI"
-
- amove usr/bin/ghb
- amove usr/share
-}
-
-sha512sums="
-63c5933f77d417a89512abd278a1d844f2b7a36ec9f8ab664c1a1348fd228ee389fc8e349b2df6cbf5d617b912d4634457ebea86490ff5ed4930f39a90dc7568 HandBrake-1.5.1-source.tar.bz2
-a3d57dd37d518286a62554cfcc4722d6fd588a0c3966d30785100edc4476febb2b48fc4f9b2a7eb5b5dc049043fabd4398e1e190e10cbd63c25b2936824977d3 handbrake-9999-remove-dvdnav-dup.patch
-a930a00f0d4627dda87fed8b00533f1c531998b8b04bd2323121874115d43e2ab63ed431a98f4ae247c0ee3fa9161d31e6de3413e52c9428844cc81bc215570c fix-missing-x265-link-flag.patch
-"
diff --git a/testing/handbrake/fix-missing-x265-link-flag.patch b/testing/handbrake/fix-missing-x265-link-flag.patch
deleted file mode 100644
index 0e43023630a..00000000000
--- a/testing/handbrake/fix-missing-x265-link-flag.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-Patch-Source: https://github.com/void-linux/void-packages/blob/e7116617abefe5b09afceec30682bfe985f6a394/srcpkgs/handbrake/patches/fix-missing-x265-link-flag.patch
-
---- a/gtk/configure.ac
-+++ b/gtk/configure.ac
-@@ -203,7 +203,7 @@
-
- AM_CONDITIONAL([MINGW], [test "x$mingw_flag" = "xyes"])
-
--HB_LIBS="$HB_LIBS -lhandbrake -lavformat -lavfilter -lavcodec -lavutil -ldav1d -lswresample -lpostproc -ldvdnav -ldvdread -lmp3lame -lvorbis -lvorbisenc -logg -lswscale -ltheoraenc -ltheoradec -lvpx -lz -lbz2 -lbluray -lass -lfontconfig -lfreetype -lxml2 -ljansson -lopus -lspeex -lturbojpeg -llzma -lzimg"
-+HB_LIBS="$HB_LIBS -lhandbrake -lavformat -lavfilter -lavcodec -lavutil -ldav1d -lswresample -lpostproc -ldvdnav -ldvdread -lmp3lame -lvorbis -lvorbisenc -logg -lswscale -ltheoraenc -ltheoradec -lvpx -lz -lbz2 -lbluray -lass -lfontconfig -lfreetype -lxml2 -ljansson -lopus -lspeex -lturbojpeg -llzma -lzimg -ldl"
- HB_CPPFLAGS="$HB_CPPFLAGS $HBINC"
-
- PKG_CHECK_MODULES([x264], [x264], sys_x264=yes, sys_x264=no)
---- a/test/module.defs
-+++ b/test/module.defs
-@@ -69,6 +69,9 @@
- ifeq (1, $(FEATURE.numa))
- TEST.GCC.l += numa
- endif
-+ifeq (1, $(FEATURE.x265))
-+ TEST.GCC.l += x265
-+endif
- else ifeq ($(HOST.system),kfreebsd)
- TEST.GCC.l += pthread dl m
- else ifneq (,$(filter $(HOST.system),freebsd netbsd))
diff --git a/testing/handbrake/handbrake-9999-remove-dvdnav-dup.patch b/testing/handbrake/handbrake-9999-remove-dvdnav-dup.patch
deleted file mode 100644
index 8f4ddbb3bb7..00000000000
--- a/testing/handbrake/handbrake-9999-remove-dvdnav-dup.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- ./libhb/dvdnav.c 2013-05-05 16:14:10.265388521 +0200
-+++ ./libhb/dvdnav.c.2 2013-05-05 16:14:18.325388471 +0200
-@@ -1225,16 +1225,7 @@
- {
- for (kk = 0; kk < buttons; kk++)
- {
-- dvdnav_t *dvdnav_copy;
--
-- result = dvdnav_dup( &dvdnav_copy, d->dvdnav );
-- if (result != DVDNAV_STATUS_OK)
-- {
-- hb_log("dvdnav dup failed: %s", dvdnav_err_to_string(d->dvdnav));
-- goto done;
-- }
-- title = try_button( dvdnav_copy, kk, list_title );
-- dvdnav_free_dup( dvdnav_copy );
-+ title = try_button( d->dvdnav, kk, list_title );
-
- if ( title >= 0 )
- {
diff --git a/testing/handlebars/APKBUILD b/testing/handlebars/APKBUILD
index 89a4772c964..f0da360e978 100644
--- a/testing/handlebars/APKBUILD
+++ b/testing/handlebars/APKBUILD
@@ -2,23 +2,33 @@
# Maintainer: Rafael del Valle <rvalle@privaz.io>
pkgname=handlebars
_pkgname=handlebars.c
-pkgver=0.7.3
-pkgrel=0
-_mustachespec_ver="1.1.3"
-_handlebarsspec_ver="4.0.5-p1"
+pkgver=1.0.0
+pkgrel=1
+_mustachespec_ver="83b0721610a4e11832e83df19c73ace3289972b9"
+_handlebarsspec_ver="3eb919f19988f37a539779c08342d2ce50aa75d0"
pkgdesc="C implementation of handlebars.js"
url="https://github.com/jbboehr/handlebars.c"
license="LGPL-2.1-or-later"
arch="all !armv7"
-makedepends="autoconf automake bison check-dev flex json-c-dev libtool lmdb-dev
- pcre-dev talloc-dev yaml-dev"
+makedepends="
+ autoconf
+ automake
+ bison
+ check-dev
+ flex
+ json-c-dev
+ libtool
+ pcre-dev
+ talloc-dev
+ yaml-dev
+ "
subpackages="$pkgname-dev $pkgname-utils"
-source="$_pkgname-$pkgver.tar.gz::https://github.com/jbboehr/$_pkgname/archive/v$pkgver.tar.gz
- mustache-spec-$_mustachespec_ver.tar.gz::https://github.com/mustache/spec/archive/v$_mustachespec_ver.tar.gz
- handlebars-spec-$_handlebarsspec_ver.tar.gz::https://github.com/jbboehr/handlebars-spec/archive/v$_handlebarsspec_ver.tar.gz
- test_lmdb_cache.patch
+source="$_pkgname-$pkgver.tar.gz::https://github.com/jbboehr/handlebars.c/archive/v$pkgver.tar.gz
+ mustache-spec-$_mustachespec_ver.tar.gz::https://github.com/mustache/spec/archive/$_mustachespec_ver.tar.gz
+ handlebars-spec-$_handlebarsspec_ver.tar.gz::https://github.com/jbboehr/handlebars-spec/archive/$_handlebarsspec_ver.tar.gz
"
builddir="$srcdir/$_pkgname-$pkgver"
+options="!check" # bunch of off-by-one talloc failures
prepare() {
mkdir -p spec
@@ -49,11 +59,11 @@ package() {
utils() {
pkgdesc="Handlebars command line utilities"
- mkdir -p "$subpkgdir"/usr
- mv "$pkgdir"/usr/bin "$subpkgdir"/usr/
+ amove usr/bin
}
-sha512sums="a5bc93640bdea502bcbb2a1648d2e28b16c3f3ba7c3fb89826a1f0876c5d778a42d760f715b91d225d6c8b8c8f079b2cc3b0420c80e3113f3d4039949ec24b39 handlebars.c-0.7.3.tar.gz
-801a9cbf8a39080b183b20fbf327b420bcd6ed162bb58165dabafeb45fae277a9da506b6639ee7b955f6c206f0b8826d39588a43ffd86ab5ef4be6e9be2bc842 mustache-spec-1.1.3.tar.gz
-81f0ff5ffc2d6b72465bdcbd2325d022faf73ec79586f3d8dfb07b7a6ec9147280872a82184b8d7ecdd8b22611b6b420c02ab437794bcd0aba67d2bf2082bc5d handlebars-spec-4.0.5-p1.tar.gz
-6cdfae1356019c06ce993cba9c5091713e51f22b21f3572aaa2b2d4b1b18cf68f120f1fcb93822a118352e2885bd4c20635ea22aedb31a438e43dc40a6be581a test_lmdb_cache.patch"
+sha512sums="
+37f39db59253a9b8283441cfdec1b3bf5b2a7590c9d55b28679d7115e68ea1dae25b8008e3f443f3a5aa811e3c179ea76f6e70de28849099093f2867a133013d handlebars.c-1.0.0.tar.gz
+edc5cfeba455b932ea2732a19a7016ad84b9fb8bb8d7b0ee71c79f155c298620cce06e548d3c7adc297a69b7a2c85be2519ea4073d05c3519930d3bae0b022ba mustache-spec-83b0721610a4e11832e83df19c73ace3289972b9.tar.gz
+b8adb3ce8b6be1cc1e130fa3728d4f20b5a77e9773ccae9d91e2c161dad5356a23e2b531b56fe1da22846e93d2a94ebc32c70c144c9a2680914104bb4d8163fb handlebars-spec-3eb919f19988f37a539779c08342d2ce50aa75d0.tar.gz
+"
diff --git a/testing/handlebars/test_lmdb_cache.patch b/testing/handlebars/test_lmdb_cache.patch
deleted file mode 100644
index dfc73681d54..00000000000
--- a/testing/handlebars/test_lmdb_cache.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-reported upstream: https://github.com/jbboehr/handlebars.c/issues/71
-
-diff --git a/tests/test_cache.c b/tests/test_cache.c
-index bc010fd..45be590 100644
---- a/tests/test_cache.c
-+++ b/tests/test_cache.c
-@@ -275,7 +275,7 @@ Suite * parser_suite(void)
- REGISTER_TEST_FIXTURE(s, test_simple_cache_reset, "Simple Cache (Reset)");
- #ifdef HAVE_LIBLMDB
- REGISTER_TEST_FIXTURE(s, test_lmdb_cache_gc, "LMDB Cache (GC)");
-- REGISTER_TEST_FIXTURE(s, test_lmdb_cache_reset, "LMDB Cache (Reset)");
-+// REGISTER_TEST_FIXTURE(s, test_lmdb_cache_reset, "LMDB Cache (Reset)");
- #else
- REGISTER_TEST_FIXTURE(s, test_lmdb_cache_error, "LMDB Cache (Error)");
- #endif
diff --git a/testing/hangover-wine/APKBUILD b/testing/hangover-wine/APKBUILD
new file mode 100644
index 00000000000..1eac62e23a1
--- /dev/null
+++ b/testing/hangover-wine/APKBUILD
@@ -0,0 +1,133 @@
+# Maintainer: André Zwing <nerv@dawncrow.de>
+pkgname=hangover-wine
+pkgver=9.5
+pkgrel=0
+pkgdesc="Hangover runs simple Win32 applications on arm64 Linux"
+url="https://github.com/AndreRH/hangover/"
+# Wine already exist for x86_64 and x86, and Hangover is more advantageous on aarch64
+arch="aarch64"
+license="LGPL-2.0-or-later"
+depends="
+ libxi
+ libxrandr
+ "
+depends_dev="$pkgname perl"
+makedepends="
+ alsa-lib-dev
+ autoconf
+ automake
+ bison
+ clang17
+ cups-dev
+ dbus-dev
+ flex-dev
+ fontconfig-dev
+ freetype-dev
+ gnutls-dev
+ gstreamer-dev
+ gst-plugins-base-dev
+ krb5-dev
+ libgphoto2-dev
+ libpcap-dev
+ libusb-dev
+ libxcomposite-dev
+ libxcursor-dev
+ libxi-dev
+ libxinerama-dev
+ libxkbcommon-dev
+ libxrandr-dev
+ libxrender-dev
+ lld
+ llvm17
+ mesa-dev
+ ncurses-dev
+ opencl-dev
+ pcsc-lite-dev
+ pulseaudio-dev
+ sane-dev
+ sdl2-dev
+ udisks2-dev
+ v4l-utils-dev
+ vulkan-loader-dev
+ wayland-dev
+ "
+subpackages="$pkgname-dev $pkgname-doc"
+checkdepends="xvfb-run"
+source="hangover-$pkgver.tar.gz::https://github.com/AndreRH/wine/archive/refs/tags/hangover-$pkgver.tar.gz
+ rpath.patch
+ "
+builddir="$srcdir/wine-hangover-$pkgver"
+options="textrels !check" # As of 2.0.3 most of the tests fails
+# ignore tracing something in a weird rpath just to silence a warning
+# no effect
+somask="ntdll.so win32u.so"
+
+prepare() {
+ default_prepare
+ # fix opencl header detection
+ sed 's|OpenCL/opencl.h|CL/opencl.h|g' -i configure*
+}
+
+build() {
+ export CFLAGS="$CFLAGS -O2 -Wno-error=format-security"
+ export CXXFLAGS="$CXXFLAGS -O2 -Wno-error=format-security"
+ export CPPFLAGS="$CPPFLAGS -O2 -Wno-error=format-security"
+
+ # invalid to the msys linker
+ export LDFLAGS="${LDFLAGS/,-Wl,-z,pack-relative-relocs}"
+
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --libdir=/usr/lib \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --with-dbus \
+ --with-mingw \
+ --with-x \
+ --with-vulkan \
+ --disable-box64cpu \
+ --enable-archs=aarch64,i386 \
+ "$(want_check || echo --disable-tests)"
+ make
+}
+
+check() {
+ xvfb-run make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+
+ install -Dm755 tools/wineapploader \
+ "$pkgdir"/usr/bin/wineapploader
+
+ local file
+ for file in msiexec notepad regedit regsvr32 wineboot \
+ winecfg wineconsole winefile winemine winepath; do
+ rm -v "$pkgdir"/usr/bin/$file
+ ln -sfv /usr/bin/wineapploader "$pkgdir"/usr/bin/$file
+ done
+
+ llvm-strip --strip-unneeded "$pkgdir"/usr/lib/wine/*-windows/*.dll
+}
+
+dev() {
+ default_dev
+
+ local file
+ for file in widl wmc wrc winebuild winedump function_grep.pl \
+ winedbg winemaker winegcc winecpp wineg++; do
+ amove usr/bin/$file
+ done
+}
+
+doc() {
+ default_doc
+ rm -fr "$subpkgdir"/usr/share/man/*.UTF-8
+}
+sha512sums="
+4cef469a84d2fbf12ac85c3b4d7f7f531ebc48d7e07a5a9b5ce909582e37d34545c6ae969982da7188691443194d64077ec34159466cdee59c702aabf1d86f34 hangover-9.5.tar.gz
+9881abfd0e7e4589cd5724291f9ec06ccb9d88b842c69abb5ea7865b6c27c778a060e60a9776c3620a030555cf61b8cceded55db9f04d5e45d9c627306763bff rpath.patch
+"
diff --git a/testing/hangover-wine/rpath.patch b/testing/hangover-wine/rpath.patch
new file mode 100644
index 00000000000..b694468a27f
--- /dev/null
+++ b/testing/hangover-wine/rpath.patch
@@ -0,0 +1,57 @@
+diff --git a/configure b/configure
+index 296c3e4..e838871 100755
+--- a/configure
++++ b/configure
+@@ -10306,6 +10306,38 @@ then :
+ fi
+ ;;
+ esac
++
++ # do this at the end because it needs double dollar for makefile
++ as_ac_var=`printf "%s\n" "ac_cv_cflags_-Wl,-rpath,\\\\\\$ORIGIN" | $as_tr_sh`
++{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports -Wl,-rpath,\\\$ORIGIN" >&5
++printf %s "checking whether the compiler supports -Wl,-rpath,\\\$ORIGIN... " >&6; }
++if eval test \${$as_ac_var+y}
++then :
++ printf %s "(cached) " >&6
++else $as_nop
++ ac_wine_try_cflags_saved=$CFLAGS
++CFLAGS="$CFLAGS -Wl,-rpath,\\\$ORIGIN"
++cat confdefs.h - <<_ACEOF >conftest.$ac_ext
++/* end confdefs.h. */
++int main(int argc, char **argv) { return 0; }
++_ACEOF
++if ac_fn_c_try_link "$LINENO"
++then :
++ eval "$as_ac_var=yes"
++else $as_nop
++ eval "$as_ac_var=no"
++fi
++rm -f core conftest.err conftest.$ac_objext conftest.beam \
++ conftest$ac_exeext conftest.$ac_ext
++CFLAGS=$ac_wine_try_cflags_saved
++fi
++eval ac_res=\$$as_ac_var
++ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
++printf "%s\n" "$ac_res" >&6; }
++if eval test \"x\$"$as_ac_var"\" = x"yes"
++then :
++ UNIXLDFLAGS="$UNIXLDFLAGS '-Wl,-rpath,\$\$ORIGIN'"
++fi
+ ;;
+ esac
+
+diff --git a/configure.ac b/configure.ac
+index 140f26a..02497c9 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -784,6 +784,9 @@ case $host_os in
+ [WINELOADER_LDFLAGS="$WINELOADER_LDFLAGS -Wl,-z,max-page-size=0x1000"])
+ ;;
+ esac
++
++ # do this at the end because it needs double dollar for makefile
++ WINE_TRY_CFLAGS([-Wl,-rpath,\\\$ORIGIN],[UNIXLDFLAGS="$UNIXLDFLAGS '-Wl,-rpath,\$\$ORIGIN'"])
+ ;;
+ esac
+
diff --git a/testing/hardened-malloc/APKBUILD b/testing/hardened-malloc/APKBUILD
index 1de1b6cdd2d..b35cbccd9d5 100644
--- a/testing/hardened-malloc/APKBUILD
+++ b/testing/hardened-malloc/APKBUILD
@@ -1,8 +1,8 @@
# Contributor:
-# Maintainer: jvoisin <julien.voisin+alpine@dustri.org>
+# Maintainer: Julien Voisin <julien.voisin@dustri.org>
pkgname=hardened-malloc
-pkgver=11
-pkgrel=0
+pkgver=12
+pkgrel=1
pkgdesc="Hardened allocator designed for modern systems."
url="https://github.com/GrapheneOS/hardened_malloc"
arch="x86_64 aarch64"
@@ -29,5 +29,5 @@ package() {
}
sha512sums="
-82b1eda396cb6785534aaefe0067164d49a30b3bd9b51dc920fd02c4721f63db26f9ae79878ca71a7557d1b41494a68ff5575135673a27baa0a6613f7e363761 hardened-malloc-11.tar.gz
+d06c23c816058d02aec85d0e5e6fc1fe4ee23ab1406672793e2776c0dc706138c497709d636b10ba5758b69a26db438fd70d6fa302c4b2b9b237df9f202e867c hardened-malloc-12.tar.gz
"
diff --git a/testing/hare-cairo/APKBUILD b/testing/hare-cairo/APKBUILD
new file mode 100644
index 00000000000..beec68f2d84
--- /dev/null
+++ b/testing/hare-cairo/APKBUILD
@@ -0,0 +1,30 @@
+# Maintainer: Willow Barraco <contact@willowbarraco.fr>
+pkgname=hare-cairo
+pkgver=0_git20231112
+_commit=91e7381f29e57f58e4350b8c72b0dced289da364
+pkgrel=1
+pkgdesc="Hare interface to the cairo 2D graphics library"
+url="https://sr.ht/~une/hare-cairo"
+# Currently doesn't build on riscv64
+arch="x86_64 aarch64" # hare
+license="MPL-1.1"
+makedepends="hare"
+source="
+ $pkgname-codeberg-$_commit.tar.gz::https://codeberg.org/une/hare-cairo/archive/$_commit.tar.gz
+"
+builddir="$srcdir/$pkgname"
+
+build() {
+ make -j1 PREFIX=/usr
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" PREFIX=/usr install
+}
+sha512sums="
+1ac40f5d4a7a2d2eaa11e37a068896d376a1c2c567fe3e9da9609ca59947f88e9579eadf25dcbbb2b6f26b24747e57a7507fa8fcf6553a36729471a70cf6311d hare-cairo-codeberg-91e7381f29e57f58e4350b8c72b0dced289da364.tar.gz
+"
diff --git a/testing/hare-madeline/APKBUILD b/testing/hare-madeline/APKBUILD
new file mode 100644
index 00000000000..06f4917d3a1
--- /dev/null
+++ b/testing/hare-madeline/APKBUILD
@@ -0,0 +1,26 @@
+# Maintainer: Hugo Osvaldo Barrera <hugo@whynothugo.nl>
+pkgname=hare-madeline
+pkgver=0.1
+pkgrel=0
+pkgdesc="tiny readline-alike with some batteries included"
+url="https://git.d2evs.net/~ecs/madeline"
+arch="noarch"
+license="WTFPL"
+source="
+ $pkgname-$pkgver.tar.gz::https://git.d2evs.net/~ecs/madeline/archive/v$pkgver.tar.gz
+"
+subpackages="$pkgname-doc"
+builddir="$srcdir/madeline-v$pkgver"
+options="!check" # no tests
+
+package() {
+ install -dm755 "$pkgdir/usr/src/hare/third-party"
+ cp -Rd "graph" "made" "$pkgdir/usr/src/hare/third-party"
+
+ install -Dm644 -t "$pkgdir/usr/share/licenses/$pkgname" "LICENSE"
+ install -Dm644 -t "$pkgdir/usr/share/doc/$pkgname" "README"
+}
+
+sha512sums="
+00c4e48472f5d2e1428d9f4c7c905a00a6aab8c6f3ef9b3d2475e042640c86c9112acf745a84da44bbfe2a695fa25fc92d17083249fa647e1de7486099e19d25 hare-madeline-0.1.tar.gz
+"
diff --git a/testing/hare-scfg/APKBUILD b/testing/hare-scfg/APKBUILD
new file mode 100644
index 00000000000..007fee496b5
--- /dev/null
+++ b/testing/hare-scfg/APKBUILD
@@ -0,0 +1,28 @@
+# Contributor: Francesco Camuffo <dev@fmac.xyz>
+# Contributor: fossdd <fossdd@pwned.life>
+# Maintainer: fossdd <fossdd@pwned.life>
+pkgname=hare-scfg
+pkgver=0.24.0
+pkgrel=0
+pkgdesc="scfg implementation for Hare"
+url="https://git.sr.ht/~chrisppy/hare-scfg"
+arch="noarch !armhf !armv7 !ppc64le !s390x !x86" # blocked by hare
+license="MPL-2.0"
+makedepends="hare"
+source="$pkgname-$pkgver.tar.gz::https://git.sr.ht/~chrisppy/hare-scfg/archive/$pkgver.tar.gz"
+
+build() {
+ make -j1 PREFIX=/usr
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" PREFIX=/usr install
+}
+
+sha512sums="
+30a1b4dd38f76cb82b91ee8b2bc230e889d34f82711214becde1bb5a133b4aafe1a020bfaf830255a1aa9a1020ed0603cd151a7ef4feb32ce33a38e74adab668 hare-scfg-0.24.0.tar.gz
+"
diff --git a/testing/hare-wayland/APKBUILD b/testing/hare-wayland/APKBUILD
new file mode 100644
index 00000000000..c0a2a7395d2
--- /dev/null
+++ b/testing/hare-wayland/APKBUILD
@@ -0,0 +1,29 @@
+# Maintainer: Willow Barraco <contact@willowbarraco.fr>
+pkgname=hare-wayland
+pkgver=0_git20231129
+_commit=21ba2418387bd00221290b28e8056173a459fd4a
+pkgrel=0
+pkgdesc="Native Hare Wayland bindings"
+url="https://sr.ht/~sircmpwn/hare-wayland"
+arch="x86_64 aarch64 riscv64" # hare
+license="MPL-2.0"
+makedepends="hare hare-xml wayland-dev"
+source="
+ $pkgname-$_commit.tar.gz::https://git.sr.ht/~sircmpwn/hare-wayland/archive/$_commit.tar.gz
+"
+builddir="$srcdir/$pkgname-$_commit"
+
+build() {
+ make -j1 PREFIX=/usr
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" PREFIX=/usr install
+}
+sha512sums="
+05d86952b76c8a2d85fe384722e73eb67b0576789db7c47f7f5e2c12227ff2cd111743937e85acc37e2de7b5f455e27e0e2f41474f94caa500239fe68a679b9b hare-wayland-21ba2418387bd00221290b28e8056173a459fd4a.tar.gz
+"
diff --git a/testing/hare-xkb/APKBUILD b/testing/hare-xkb/APKBUILD
new file mode 100644
index 00000000000..570efb95661
--- /dev/null
+++ b/testing/hare-xkb/APKBUILD
@@ -0,0 +1,31 @@
+# Maintainer: Willow Barraco <contact@willowbarraco.fr>
+pkgname=hare-xkb
+pkgver=0_git20231011
+_commit=f26da188280caa8406d4d6345868f41021fdfdec
+pkgrel=0
+pkgdesc="Hare interface to the xkbcommon library"
+url="https://git.sr.ht/~stacyharper/hare-xkb"
+# Currently doesn't build on riscv64
+arch="x86_64 aarch64" # hare
+license="MPL-2.0"
+makedepends="hare"
+source="
+ $pkgname-$_commit.tar.gz::https://git.sr.ht/~stacyharper/hare-xkb/archive/$_commit.tar.gz
+"
+builddir="$srcdir/$pkgname-$_commit"
+
+build() {
+ make -j1 PREFIX=/usr
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" PREFIX=/usr install
+}
+
+sha512sums="
+9962b86e279892ce12e324fa8c68ffc5cbb3604ac153b787b1e27b4faf66b92411fc7d9dc27a27debd946f1eb9fbdfca6f711f803854872bd64ac772c5d5dd33 hare-xkb-f26da188280caa8406d4d6345868f41021fdfdec.tar.gz
+"
diff --git a/testing/haredo/APKBUILD b/testing/haredo/APKBUILD
new file mode 100644
index 00000000000..1664b82f5da
--- /dev/null
+++ b/testing/haredo/APKBUILD
@@ -0,0 +1,31 @@
+# Maintainer: Umar Getagazov <umar@handlerug.me>
+pkgname=haredo
+pkgver=1.0.4
+pkgrel=1
+pkgdesc="Simple, Unix-idiomatic build automator"
+url="https://sr.ht/~autumnull/haredo"
+arch="x86_64 aarch64 riscv64" # Hare
+license="WTFPL"
+makedepends="hare scdoc"
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://git.sr.ht/~autumnull/haredo/archive/$pkgver.tar.gz"
+
+build() {
+ # https://todo.sr.ht/~sircmpwn/hare/784
+ unset LDFLAGS
+ ./bootstrap.sh
+}
+
+check() {
+ PATH="$builddir/bin:$PATH" haredo test
+}
+
+package() {
+ # TODO remove path overwrite when patch is applied
+ # https://lists.sr.ht/~autumnull/haredo-devel/patches/46957
+ PREFIX="$pkgdir"/usr PATH="$builddir/bin:$PATH" ./bootstrap.sh install
+}
+
+sha512sums="
+a2063c706291b8fdec2cee34983ca415d070d51fa1c7cd9cc843be232fecc7c6027c2376f209d6f7e00c332f5eda7b1b28988c0d7135d54e882c9342966566b0 haredo-1.0.4.tar.gz
+"
diff --git a/testing/hari/APKBUILD b/testing/hari/APKBUILD
new file mode 100644
index 00000000000..a053b03e383
--- /dev/null
+++ b/testing/hari/APKBUILD
@@ -0,0 +1,24 @@
+# Maintainer: Willow Barraco <contact@willowbarraco.fr>
+pkgname=hari
+pkgver=0_git20240126
+_commit=f4ea1c986fa7431710f203e3443c533cdc753285
+pkgrel=0
+pkgdesc="UI toolkit for Hare"
+url="https://git.sr.ht/~sircmpwn/hari"
+arch="noarch !armhf !ppc64le !s390x !armv7 !x86" # hare
+license="MPL-2.0"
+makedepends="hare"
+options="!check" # no test suite
+source="
+ $pkgname-$_commit.tar.gz::https://git.sr.ht/~sircmpwn/hari/archive/$_commit.tar.gz
+"
+builddir="$srcdir/$pkgname-$_commit"
+
+package() {
+ mkdir -p "$pkgdir"/usr/src/hare/third-party/
+ cp -r hari "$pkgdir"/usr/src/hare/third-party/
+}
+
+sha512sums="
+271377508a30d0202f81b3e4c757463cd17008635ae253c9588f6a37f16d1b1ed509213e4a5b440add5f0703a737cfdebd8b7a3304b2cb47d0b50a648ed419e3 hari-f4ea1c986fa7431710f203e3443c533cdc753285.tar.gz
+"
diff --git a/testing/harminv/APKBUILD b/testing/harminv/APKBUILD
index 9a30bd9be23..b6b0eb895c4 100644
--- a/testing/harminv/APKBUILD
+++ b/testing/harminv/APKBUILD
@@ -1,22 +1,16 @@
# Contributor: Isaac Dunham <ibid.ag@gmail.com>
# Maintainer: Roberto Oliveira <robertoguimaraes8@gmail.com>
pkgname=harminv
-pkgver=1.4.1
-pkgrel=5
+pkgver=1.4.2
+pkgrel=1
pkgdesc="Free program to solve the problem of harmonic inversion"
-url="https://github.com/stevengj/harminv"
+url="https://github.com/NanoComp/harminv"
arch="all"
-license="GPL"
+license="GPL-2.0-or-later"
depends_dev="openblas-dev>=0.3.0"
makedepends="$depends_dev gfortran"
subpackages="$pkgname-dev $pkgname-doc $pkgname-libs"
-source="harminv-$pkgver.tar.gz::https://github.com/stevengj/harminv/releases/download/v$pkgver/harminv-$pkgver.tar.gz"
-
-prepare() {
- default_prepare
- update_config_guess
- update_config_sub
-}
+source="harminv-$pkgver.tar.gz::https://github.com/NanoComp/harminv/releases/download/v$pkgver/harminv-$pkgver.tar.gz"
build() {
./configure \
@@ -40,4 +34,6 @@ package() {
make DESTDIR="$pkgdir" install
}
-sha512sums="30720804286e4d373bcaae5b1b8238748b3077bfd6e6afb98eba571d8acfd13d927b84d1f6ab2b975bd665063dfc533bd7a0d19f199bf51694c6d93f6c7c947c harminv-1.4.1.tar.gz"
+sha512sums="
+965c62970b66832877e9d17ee7ac67f1e2bba8efbd5aa431f17602d452fa0323a67c3f8f02c93606dc7cca160cdc335251f62903f44723d079378a7cd0a059ee harminv-1.4.2.tar.gz
+"
diff --git a/testing/hashcat/APKBUILD b/testing/hashcat/APKBUILD
index d5a57803da5..e4d639ccbbc 100644
--- a/testing/hashcat/APKBUILD
+++ b/testing/hashcat/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=hashcat
-pkgver=6.2.5
+pkgver=6.2.6
pkgrel=0
pkgdesc="World's fastest and most advanced password recovery utility"
url="https://hashcat.net/hashcat/"
@@ -25,6 +25,6 @@ package() {
}
sha512sums="
-2b881146c625172c91cb74b33851473155dcde2421fba1b4acfba28116499b9cff832a62c4dbc24e16df06a827494f30699a7d0e5195d5ed107704f525255383 hashcat-6.2.5.tar.gz
+b5e4f40fb5ed0a47977243e1f95bf1deae0b04bd5ca26338395305c42573fe5b17557835f6f5d8b7402812e8eadda2b260d6b927ce99429fd1b87eb26f002f8a hashcat-6.2.6.tar.gz
9a58e709d69910f0f33cd7b0151b4709b78bd55b8592ad51e9bc5d41b807aaddaf87ed09102da3955f757a84349f59d7e06b073c6031b763418e3334da3de8a7 0001-fix-modules-path.patch
"
diff --git a/testing/hatop/APKBUILD b/testing/hatop/APKBUILD
new file mode 100644
index 00000000000..558d2cc07af
--- /dev/null
+++ b/testing/hatop/APKBUILD
@@ -0,0 +1,22 @@
+# Contributor: Guy Godfroy <guy.godfroy@gugod.fr>
+# Maintainer: Guy Godfroy <guy.godfroy@gugod.fr>
+pkgname=hatop
+pkgver=0.8.2
+pkgrel=0
+pkgdesc="Interactive ncurses client for HAProxy"
+url="https://github.com/jhunt/hatop"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="python3"
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/jhunt/hatop/archive/v$pkgver.tar.gz"
+options="!check" #test script requires docker
+
+package() {
+ install -Dm755 "$builddir"/bin/hatop -t "$pkgdir"/usr/bin/
+ install -Dm644 "$builddir"/man/hatop.1 -t "$pkgdir"/usr/share/man/man1/
+}
+
+sha512sums="
+5e772394d72962bdd014f93ee94ea59814cee33e17c1864af5b3ec97a19c2c33a6ad13f24d0cf0baf78335d9a82cee28b60a03754430b0aa9132c1dd92753cdb hatop-0.8.2.tar.gz
+"
diff --git a/testing/hctl/APKBUILD b/testing/hctl/APKBUILD
new file mode 100644
index 00000000000..a991afcbdfb
--- /dev/null
+++ b/testing/hctl/APKBUILD
@@ -0,0 +1,33 @@
+# Contributor: Michał Szmidt <michal.sz@disroot.org>
+# Maintainer: Michał Szmidt <michal.sz@disroot.org>
+pkgname=hctl
+pkgver=0.2.6
+pkgrel=0
+pkgdesc="Ultimate tool to manage (transform, merge, validate) hostlists written in rust for pihole/adguard/unbound dns blocker"
+url="https://github.com/michalszmidt/hctl"
+arch="all"
+license="BSD-3-Clause"
+makedepends="openssl-dev cargo cargo-auditable"
+source="$pkgname-$pkgver.tar.gz::https://github.com/michalszmidt/hctl/archive/refs/tags/$pkgver.tar.gz"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build -p hctl --frozen --release
+}
+
+check() {
+ cargo test --release --frozen
+}
+
+package() {
+ install -Dm755 target/release/hctl -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+e90273a3f5d386993a611135e8962838894be428600b149b138e2c3604bf669fa7ec04ad98b9a644e903880e626ede0a596b185025dc6abf4018f5effeee2d4c hctl-0.2.6.tar.gz
+"
diff --git a/testing/hdf4/APKBUILD b/testing/hdf4/APKBUILD
index b51638176fd..4d25d7a0f55 100644
--- a/testing/hdf4/APKBUILD
+++ b/testing/hdf4/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Edd Salkield <edd@salkield.uk>
pkgname=hdf4
pkgver=4.2.15
-pkgrel=0
+pkgrel=1
pkgdesc="Data model, library, and file format for storing and managing data"
url="https://www.hdfgroup.org/solutions/hdf4/"
arch="all !riscv64" # ftbfs
diff --git a/testing/hdr10plus-tool/APKBUILD b/testing/hdr10plus-tool/APKBUILD
new file mode 100644
index 00000000000..46533b8aee6
--- /dev/null
+++ b/testing/hdr10plus-tool/APKBUILD
@@ -0,0 +1,37 @@
+# Contributor: Petr Hodina <phodina@protonmail.com>
+# Maintainer: Petr Hodina <phodina@protonmail.com>
+pkgname=hdr10plus-tool
+pkgver=1.6.0
+pkgrel=0
+pkgdesc="CLI utility to work with HDR10+ in HEVC files"
+url="https://github.com/quietvoid/hdr10plus_tool"
+# arm: fails tests
+arch="all !armhf !armv7"
+license="MIT"
+makedepends="cargo cargo-auditable fontconfig-dev"
+checkdepends="font-opensans"
+source="$pkgname-$pkgver.tar.gz::https://github.com/quietvoid/hdr10plus_tool/archive/refs/tags/$pkgver.tar.gz"
+builddir=$srcdir/hdr10plus_tool-$pkgver
+options="net" # cargo fetch
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+check() {
+ cargo test --frozen --release
+}
+
+package() {
+ install -Dm755 target/release/hdr10plus_tool -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+bee366c7f2e85274bc5d231e31c4b2662424a754500c4cc6eeb7621cdb3cf66c55eb008957bff080792c513cbee989644d4c2e56159398d90845af42fd935026 hdr10plus-tool-1.6.0.tar.gz
+"
diff --git a/testing/headscale/APKBUILD b/testing/headscale/APKBUILD
index 1378e1bb2d0..bd309558927 100644
--- a/testing/headscale/APKBUILD
+++ b/testing/headscale/APKBUILD
@@ -1,34 +1,48 @@
# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=headscale
-pkgver=0.15.0
-pkgrel=2
-pkgdesc="An open source, self-hosted implementation of the Tailscale control server"
+pkgver=0.22.3
+pkgrel=6
+pkgdesc="Open source, self-hosted implementation of the Tailscale control server"
url="https://github.com/juanfont/headscale"
arch="all !ppc64le !riscv64" # go build fails
license="BSD-3-Clause"
pkgusers="headscale"
pkggroups="headscale"
makedepends="go"
-subpackages="$pkgname-openrc"
+subpackages="
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-openrc
+ $pkgname-zsh-completion
+ "
install="$pkgname.pre-install"
source="https://github.com/juanfont/headscale/archive/v$pkgver/headscale-$pkgver.tar.gz
headscale.initd
"
+options="net" # fetch dependencies
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
prepare() {
default_prepare
# move socket to a subdirectory to allow running as non-root
- sed -i 's|/var/run/headscale.sock|/var/run/headscale/headscale.sock|' config-example.yaml
+ sed -i 's|/var/run/headscale.sock|/run/headscale/headscale.sock|' config-example.yaml
}
build() {
- make build
+ go build -ldflags "-X github.com/juanfont/headscale/cmd/headscale/cli.Version=v$pkgver" ./cmd/headscale
+ mkdir completions
+ ./headscale completion bash > completions/bash
+ ./headscale completion fish > completions/fish
+ ./headscale completion zsh > completions/zsh
}
check() {
- make test
+ go test ./...
}
package() {
@@ -36,9 +50,14 @@ package() {
install -Dm755 "$srcdir"/headscale.initd "$pkgdir"/etc/init.d/headscale
install -Dm644 config-example.yaml "$pkgdir"/etc/headscale/config.yaml
+
+ # completions
+ install -Dm644 completions/bash "$pkgdir"/usr/share/bash-completion/completions/headscale
+ install -Dm644 completions/fish "$pkgdir"/usr/share/fish/vendor_completions.d/headscale.fish
+ install -Dm644 completions/zsh "$pkgdir"/usr/share/zsh/site-functions/_headscale
}
sha512sums="
-29b867f109e48bf04ab4f8a81bfab94155050f59f6c2aa2b4971567a7fb24ed343b869636e66e9cbb7b1b8df7d7415e769a85a7c3864d0fae169c15b6c7b6eb2 headscale-0.15.0.tar.gz
+c3ce7ae023dd0bd5c52e00ec2564b68eb87074a804a9982a3eb6f1e64335621a312cbb650d79571e89bef3f0d8e6d602b732156aa8851b67dfd455ac1156b311 headscale-0.22.3.tar.gz
0800829bfc087af283afc117406324a0129b30b587c8cc5df85e147ac09fc879d726fc2d0b62ed545fb0190ed887641f07256745da9dea56932dd2d90aa41625 headscale.initd
"
diff --git a/testing/heh/APKBUILD b/testing/heh/APKBUILD
new file mode 100644
index 00000000000..1c06ac0ae62
--- /dev/null
+++ b/testing/heh/APKBUILD
@@ -0,0 +1,40 @@
+# Contributor: Orhun Parmaksız <orhunparmaksiz@gmail.com>
+# Maintainer: Orhun Parmaksız <orhunparmaksiz@gmail.com>
+pkgname=heh
+pkgver=0.5.0
+pkgrel=0
+pkgdesc="A terminal UI to edit bytes by the nibble"
+url="https://github.com/ndd7xv/heh"
+arch="all !s390x !x86" # FTBFS
+license="MIT"
+makedepends="
+ cargo
+ cargo-auditable
+ "
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/ndd7xv/heh/archive/refs/tags/v$pkgver.tar.gz"
+options="net"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm 755 "target/release/$pkgname" -t "$pkgdir/usr/bin"
+ install -Dm 644 README.md -t "$pkgdir/usr/share/doc/$pkgname"
+ install -Dm 644 LICENSE -t "$pkgdir/usr/share/licenses/$pkgname"
+}
+
+sha512sums="
+3b1546d478ed8fb8a9a2b58215de1b957666f85f17c2db577a4e888c2b9d63c5e423b7585e19c9e526b42d2f6d0ebd71a17f4ae2f89fe1dc17be6eca2c58d781 heh-0.5.0.tar.gz
+"
diff --git a/testing/helm-ls/APKBUILD b/testing/helm-ls/APKBUILD
new file mode 100644
index 00000000000..b3d469199f3
--- /dev/null
+++ b/testing/helm-ls/APKBUILD
@@ -0,0 +1,35 @@
+# Contributor: Galen Abell <galen@galenabell.com>
+# Maintainer: Galen Abell <galen@galenabell.com>
+pkgname=helm-ls
+pkgver=0.0.12
+pkgrel=1
+pkgdesc="Language server for Helm"
+url="https://github.com/mrjosh/helm-ls"
+arch="all"
+license="MIT"
+makedepends="go"
+options="chmod-clean net"
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/mrjosh/helm-ls/archive/refs/tags/v$pkgver.tar.gz"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ go build -ldflags="-buildid= -X main.Version=$pkgver"
+}
+
+check() {
+ # Depends on yaml-ls
+ go test ./... -skip TestYamllsDiagnosticsIntegration
+}
+
+package() {
+ install -Dm755 "$pkgname" "$pkgdir"/usr/bin/helm_ls
+ install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
+
+sha512sums="
+163d0619b86c3368e29a0c0aa7fcb4f9ea3d8eeba19d86c95d54d06a3b4ad5b0fa5b455d911863c17e16849394191777bbba698c85a721046ea53b100010ac12 helm-ls-0.0.12.tar.gz
+"
diff --git a/testing/helm/APKBUILD b/testing/helm/APKBUILD
deleted file mode 100644
index 0adea2dfc0e..00000000000
--- a/testing/helm/APKBUILD
+++ /dev/null
@@ -1,56 +0,0 @@
-# Contributor: techknowlogick <techknowlogick@gitea.io>
-# Maintainer: techknowlogick <techknowlogick@gitea.io>
-pkgname=helm
-pkgver=3.9.0
-pkgrel=1
-pkgdesc="The Kubernetes Package Manager"
-url="https://helm.sh/"
-arch="all !armhf" # unit tests fails with armhf
-license="Apache-2.0"
-makedepends="bash go"
-options="net"
-subpackages="$pkgname-bash-completion $pkgname-fish-completion $pkgname-zsh-completion"
-source="$pkgname-$pkgver.tar.gz::https://github.com/helm/helm/archive/v$pkgver.tar.gz"
-
-# secfixes:
-# 3.6.0-r0:
-# - CVE-2021-21303
-# 3.6.1-r0:
-# - CVE-2021-32690
-
-case "$CARCH" in
- # Disable check on 32bit systems due to upstream test "TestPlatformPrepareCommand" that does not account for these platforms
- x86|armv7) options="$options !check" ;;
-esac
-
-export GOPATH="$srcdir/go"
-export GOCACHE="$srcdir/go-build"
-export GOTEMPDIR="$srcdir/go"
-
-export GOFLAGS="$GOFLAGS -modcacherw"
-export CGO_ENABLED=0
-
-build() {
- export CGO_ENABLED=0 # breaks on aarch64
- make GOFLAGS="$GOFLAGS" GIT_TAG="v$pkgver" GIT_COMMIT="" GIT_DIRTY=""
-
- ./bin/helm completion bash > $pkgname.bash
- ./bin/helm completion fish > $pkgname.fish
- ./bin/helm completion zsh > $pkgname.zsh
-}
-
-check() {
- make test-unit GOFLAGS="$GOFLAGS"
-}
-
-package() {
- install -Dm755 bin/helm -t "$pkgdir/usr/bin"
-
- install -Dm644 $pkgname.bash "$pkgdir"/usr/share/bash-completion/completions/$pkgname
- install -Dm644 $pkgname.fish "$pkgdir"/usr/share/fish/completions/$pkgname.fish
- install -Dm644 $pkgname.zsh "$pkgdir"/usr/share/zsh/site-functions/_$pkgname
-}
-
-sha512sums="
-8d5dc0627b1e7c7dba6774b8824002036d84f06999d7d73234f3ed5f1eb4053f92c3a42d8a37e2f4e9b3e04de821b7e528be2edfc665647c76bc79ef6c42ec1c helm-3.9.0.tar.gz
-"
diff --git a/testing/helmfile/APKBUILD b/testing/helmfile/APKBUILD
index 54294c7a0bb..f0b454e7d5b 100644
--- a/testing/helmfile/APKBUILD
+++ b/testing/helmfile/APKBUILD
@@ -1,37 +1,62 @@
# Contributor: Hoang Nguyen <folliekazetani@protonmail.com>
# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
pkgname=helmfile
-pkgver=0.144.0
-pkgrel=0
+pkgver=0.162.0
+pkgrel=2
pkgdesc="Declarative spec for deploying helm charts"
url="https://helmfile.readthedocs.io/"
-arch="all !armhf" # blocked by helm
+# armhf: ftbfs
+arch="all !armhf"
license="MIT"
depends="helm"
makedepends="go"
+checkdepends="bash"
subpackages="
+ $pkgname-doc
$pkgname-bash-completion
$pkgname-zsh-completion
+ $pkgname-fish-completion
"
-source="$pkgname-$pkgver.tar.gz::https://github.com/roboll/helmfile/archive/refs/tags/v$pkgver.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/helmfile/helmfile/archive/refs/tags/v$pkgver.tar.gz"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
build() {
- go build -v -o $pkgname -ldflags "-X github.com/roboll/helmfile/pkg/app/version.Version=v$pkgver"
+ local _goldflags="
+ -X go.szostok.io/version.version=$pkgver
+ -X go.szostok.io/version.buildDate=$(date -u "+%Y-%m-%dT%H:%M:%S%z" ${SOURCE_DATE_EPOCH:+-d @$SOURCE_DATE_EPOCH})
+ -X go.szostok.io/version.commitDate=$(date -u "+%Y-%m-%dT%H:%M:%S%z" ${SOURCE_DATE_EPOCH:+-d @$SOURCE_DATE_EPOCH})
+ -X go.szostok.io/version.commit=0000000
+ -X go.szostok.io/version.dirtyBuild=false
+ -X github.com/helmfile/helmfile/pkg/runtime.v1Mode=true
+ "
+ go build -v -o helmfile -ldflags "$_goldflags"
+
+ for shell in bash fish zsh; do
+ ./helmfile completion $shell > $pkgname.$shell
+ done
}
check() {
- go test ./...
+ # e2e/template test requires docker
+ # shellcheck disable=2046
+ go test $(go list ./... | grep -v /e2e)
}
package() {
install -Dm755 $pkgname "$pkgdir"/usr/bin/$pkgname
+ install -Dm644 LICENSE -t "$pkgdir"/usr/share/licenses/$pkgname/
- install -Dm644 autocomplete/helmfile_bash_autocomplete \
- "$pkgdir"/usr/share/bash-completion/completions/$pkgname
- install -Dm644 autocomplete/helmfile_zsh_autocomplete \
- "$pkgdir"/usr/share/zsh/site-functions/_$pkgname
+ install -Dm644 helmfile.bash \
+ "$pkgdir"/usr/share/bash-completion/completions/helmfile
+ install -Dm644 helmfile.zsh \
+ "$pkgdir"/usr/share/zsh/site-functions/_helmfile
+ install -Dm644 helmfile.fish \
+ "$pkgdir"/usr/share/fish/vendor_completions.d/helmfile.fish
}
sha512sums="
-677e714316f1b7a8c8895e5f1d300a433441cc007ee7c3793999ff924d6f9ee9c1ff33aff0876aa2fcaae6f93062108329aaf0a0e6ec7ccaa369bbd3ff8d18a1 helmfile-0.144.0.tar.gz
+54c114c4f1deb090e7e6b198469629c783de7638b315972320b35ba53bae95d31d18df6ee3b28ed1bca1f2eba2d6e75dd64dc45ebf4d60af9cf4281b14ab2e91 helmfile-0.162.0.tar.gz
"
diff --git a/testing/helvum/APKBUILD b/testing/helvum/APKBUILD
index 0baab42b174..836b316733c 100644
--- a/testing/helvum/APKBUILD
+++ b/testing/helvum/APKBUILD
@@ -1,20 +1,22 @@
# Contributor: Michał Polański <michal@polanski.me>
# Maintainer: Michał Polański <michal@polanski.me>
pkgname=helvum
-pkgver=0.3.4
+pkgver=0.5.1
pkgrel=0
pkgdesc="GTK patchbay for pipewire"
url="https://gitlab.freedesktop.org/pipewire/helvum"
license="GPL-3.0-only"
arch="all !s390x !riscv64" # blocked by rust/cargo
arch="$arch !x86 !armv7 !armhf" # FTBFS on 32-bit systems
-makedepends="bash cargo desktop-file-utils meson clang-dev glib-dev gtk4.0-dev pipewire-dev"
-source="https://gitlab.freedesktop.org/pipewire/helvum/-/archive/$pkgver/helvum-$pkgver.tar.gz"
+makedepends="bash cargo desktop-file-utils meson clang-dev glib-dev gtk4.0-dev pipewire-dev libadwaita-dev"
+source="https://gitlab.freedesktop.org/pipewire/helvum/-/archive/$pkgver/helvum-$pkgver.tar.gz
+ pipewire-rs-0.7.2.patch
+ "
options="!check" # no test suite
build() {
abuild-meson . output
- meson compile ${JOBS:+-j ${JOBS}} -C output
+ meson compile -C output
}
package() {
@@ -22,5 +24,6 @@ package() {
}
sha512sums="
-f8c73855a52e39337081ea8cf1e813444862ce8c214df7870b01c0064ed130e98074aaf305e982f1a50cc7e166d662b22246c2577c68043feca89cc325c1050f helvum-0.3.4.tar.gz
+7d4655a32d0c35c4bcc4164f8bc08654be08613d488a12ec237ef7757242ebd3ca6bc944eb757a234080187eec2c9b558bdba228e8e1a9d9e670c1620f5bb4d1 helvum-0.5.1.tar.gz
+7b2701c5e7f8a195ad3bdb68de3881becfdcc4c11db3de9e16acf4828a159389c34ba8fbdd9918b9474d0df51a7f8d0a7a449b1976dea0fddc007feb9e9372fa pipewire-rs-0.7.2.patch
"
diff --git a/testing/helvum/pipewire-rs-0.7.2.patch b/testing/helvum/pipewire-rs-0.7.2.patch
new file mode 100644
index 00000000000..6d5c3ec3411
--- /dev/null
+++ b/testing/helvum/pipewire-rs-0.7.2.patch
@@ -0,0 +1,17 @@
+Fix build issue by upgrading pipewire-rs to 0.7.2
+
+see: https://gitlab.freedesktop.org/pipewire/pipewire-rs/-/merge_requests/193
+
+diff --git a/Cargo.toml b/Cargo.toml
+index 1152519..b4e4421 100644
+--- a/Cargo.toml
++++ b/Cargo.toml
+@@ -14,7 +14,7 @@ categories = ["gui", "multimedia"]
+ # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
+
+ [dependencies]
+-pipewire = "0.7.1"
++pipewire = "0.7.2"
+ adw = { version = "0.5", package = "libadwaita", features = ["v1_3"] }
+ glib = { version = "0.18", features = ["log"] }
+
diff --git a/testing/heplify-server/APKBUILD b/testing/heplify-server/APKBUILD
index ff094243f12..276505c4081 100644
--- a/testing/heplify-server/APKBUILD
+++ b/testing/heplify-server/APKBUILD
@@ -1,21 +1,21 @@
# Maintainer: Leonardo Arena <rnalrd@alpinelinux.org>
pkgname=heplify-server
-pkgver=1.55
-pkgrel=5
+pkgver=1.59.7
+pkgrel=0
pkgdesc="HEP Capture Server & Switch in Go"
url="http://sipcapture.io"
-arch="all !riscv64" # FTBFS
+arch="all !riscv64 !ppc64le" # FTBFS
license="AGPL-3.0-or-later"
makedepends="go"
install="$pkgname.pre-install"
subpackages="$pkgname-openrc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/sipcapture/heplify-server/archive/$pkgver.tar.gz
+options="net"
+source="$pkgname-$pkgver.tar.gz::https://github.com/sipcapture/heplify-server/archive/refs/tags/v$pkgver.tar.gz
$pkgname.initd
- fix-go-vet-errors.patch
"
case $CARCH in
- riscv64)
+ ppc64le|riscv64)
makedepends="$makedepends lua5.1-dev"
export GOFLAGS="$GOFLAGS -tags=llua"
;;
@@ -24,15 +24,15 @@ case $CARCH in
;;
esac
-
-export GOPATH="$srcdir/go"
-export GOCACHE="$srcdir/go-build"
-export GOTEMPDIR="$srcdir/go"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
export GOFLAGS="$GOFLAGS -modcacherw"
prepare() {
default_prepare
+ go mod download
case $CARCH in
armhf|armv7|x86|s390x|riscv64)
@@ -60,7 +60,6 @@ package() {
}
sha512sums="
-1da175311e5638a356e3ff53799fb90ca309a6d10eb7a56fa51b84430c01e43d67654bfe89bc4d2031f30709db1ad1a90d9c5af344259acdbddc72501a5f572e heplify-server-1.55.tar.gz
-5c2c950e93bdbe5514be67e5012763883795d4ad3d83889d0fa360151b7eb860e9d4d00a47d188ab12722bc8db708cc557fbc3ea6dd912994e801758be62c02b heplify-server.initd
-2d1bdaffc9297e01b1b604bef3e511c5bc81817ddc231096e21036826fe32a9801d7db5ed38892b1dc8943455f3799b42347ef31d5df21db26caca4fe81e6a09 fix-go-vet-errors.patch
+3da594d16977ac967d2c52316f5634fbfb0a7464e44426eb1c8e55d0a47a3a4eea28964f12c53f4ac33deb88476816049544cf95973762ba99554ef368adea39 heplify-server-1.59.7.tar.gz
+72527dd11ee03923e9dbddf10929b3cb3b768d96aa33a7e04dae211d2198539f4d93303790bd2dcf8957c0fcc75afb45b03f6d2a40caabde616dc561e15c84ef heplify-server.initd
"
diff --git a/testing/heplify-server/fix-go-vet-errors.patch b/testing/heplify-server/fix-go-vet-errors.patch
deleted file mode 100644
index d098a203272..00000000000
--- a/testing/heplify-server/fix-go-vet-errors.patch
+++ /dev/null
@@ -1,77 +0,0 @@
-From e58baf45920806a959405e4b87223f1dd246a374 Mon Sep 17 00:00:00 2001
-From: Natanael Copa <ncopa@alpinelinux.org>
-Date: Mon, 7 Jun 2021 18:50:27 +0200
-Subject: [PATCH] Fix go vet errors (#473)
-
-Fixes go vet errors:
-
- # github.com/sipcapture/heplify-server/rotator
- rotator/rotator.go:222:2: unreachable code
- # github.com/sipcapture/heplify-server/decoder
- decoder/decoder.go:299:35: possible misuse of reflect.SliceHeader
-
-see https://github.com/golang/go/issues/40701
----
- decoder/decoder.go | 13 +++++++------
- rotator/rotator.go | 9 +++++----
- 2 files changed, 12 insertions(+), 10 deletions(-)
-
-diff --git a/decoder/decoder.go b/decoder/decoder.go
-index 309e31d..e563953 100644
---- a/decoder/decoder.go
-+++ b/decoder/decoder.go
-@@ -291,12 +291,13 @@ func WriteJSONString(w io.Writer, s string) (int, error) {
-
- func stb(s string) []byte {
- sh := (*reflect.StringHeader)(unsafe.Pointer(&s))
-- bh := reflect.SliceHeader{
-- Data: sh.Data,
-- Len: sh.Len,
-- Cap: sh.Len,
-- }
-- return *(*[]byte)(unsafe.Pointer(&bh))
-+ var res []byte
-+
-+ bh := (*reflect.SliceHeader)((unsafe.Pointer(&res)))
-+ bh.Data = sh.Data
-+ bh.Len = sh.Len
-+ bh.Cap = sh.Len
-+ return res
- }
-
- func toUTF8(s, replacement string) string {
-diff --git a/rotator/rotator.go b/rotator/rotator.go
-index d23fa6c..4f795da 100644
---- a/rotator/rotator.go
-+++ b/rotator/rotator.go
-@@ -194,6 +194,8 @@ func (r *Rotator) getSizeInBtyes() (float64, error) {
-
- func (r *Rotator) GetDatabaseSize(db *sql.DB, schema string) (float64, error) {
- var databaseSize string
-+ var size float64
-+ var err error
- switch schema {
- case "maxusage":
- rows, err := db.Query("select pg_database_size('homer_data');")
-@@ -205,7 +207,7 @@ func (r *Rotator) GetDatabaseSize(db *sql.DB, schema string) (float64, error) {
- return 0, err
- }
- }
-- return strconv.ParseFloat(databaseSize, 64)
-+ size, err = strconv.ParseFloat(databaseSize, 64)
- default:
- rows, err := db.Query("select * from sys_df();")
- checkDBErr(err)
-@@ -216,10 +218,9 @@ func (r *Rotator) GetDatabaseSize(db *sql.DB, schema string) (float64, error) {
- return 0, err
- }
- }
-- percentageUsage, _ := strconv.ParseFloat(strings.TrimSuffix(strings.Split(databaseSize[1:len(databaseSize)-1], ",")[4], "%"), 64)
-- return percentageUsage, nil
-+ size, err = strconv.ParseFloat(strings.TrimSuffix(strings.Split(databaseSize[1:len(databaseSize)-1], ",")[4], "%"), 64)
- }
-- return 0, nil
-+ return size, err
- }
-
- func (r *Rotator) UsageProtection(scheme string) error {
diff --git a/testing/heplify-server/heplify-server.initd b/testing/heplify-server/heplify-server.initd
index a7ac51e2019..3f31a3b7a40 100644
--- a/testing/heplify-server/heplify-server.initd
+++ b/testing/heplify-server/heplify-server.initd
@@ -1,9 +1,9 @@
#!/sbin/openrc-run
description="HEP Capture Server & Switch"
-supervisor=supervise-daemon
command=/usr/bin/heplify-server
command_args="-config /etc/homer/heplify-server.toml"
+command_background=yes
command_user=homer
command_group=homer
pidfile="/run/homer/${RC_SVCNAME}.pid"
@@ -20,7 +20,7 @@ start_pre() {
reload() {
ebegin "Reloading PromTargetIP and PromTargetName in ${RC_SVCNAME} configuration"
- ${supervisor} ${RC_SVCNAME} --signal HUP
+ start-stop-daemon --signal HUP --pidfile "${pidfile}"
eend $?
}
diff --git a/testing/heplify/APKBUILD b/testing/heplify/APKBUILD
index 28c9d17b2e1..02f3aaa65f9 100644
--- a/testing/heplify/APKBUILD
+++ b/testing/heplify/APKBUILD
@@ -1,26 +1,35 @@
# Maintainer: Leonardo Arena <rnalrd@alpinelinux.org>
pkgname=heplify
-pkgver=1.56
-pkgrel=7
+pkgver=1.66.2
+pkgrel=0
pkgdesc="Multi-Protocol Go HEP Capture Agent made Simple"
url="http://sipcapture.io"
-arch="all !riscv64" # FTBFS
+arch="all !riscv64 !ppc64le" # FTBFS, luajit
license="AGPL-3.0-or-later"
-makedepends="go libpcap-dev linux-headers"
+makedepends="go libpcap-dev linux-headers luajit-dev"
subpackages="$pkgname-openrc"
-source="https://github.com/sipcapture/heplify/archive/$pkgver/heplify-$pkgver.tar.gz
+source="$pkgname-$pkgver.tar.gz::https://github.com/sipcapture/heplify/archive/refs/tags/v$pkgver.tar.gz
$pkgname.initd
$pkgname.confd
"
# net required to download Go dependencies
-options="net"
+options="net !check" #several tests failing
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+prepare() {
+ default_prepare
+ go mod download
+}
build() {
- make all
+ go build -ldflags "-s -w" -o heplify main.go
}
check() {
- make test
+ go test -v ./...
}
package() {
@@ -29,8 +38,13 @@ package() {
install -D -m644 "$srcdir"/$pkgname.confd "$pkgdir"/etc/conf.d/$pkgname
}
+cleanup_srcdir() {
+ go clean -modcache
+ default_cleanup_srcdir
+}
+
sha512sums="
-d9eb0dec39c446a7a163b69221b32182733dc7bc1477e29e8e74bffddf961a1416c98d44a792cc9a3aae936002c7eb384e3128d96937736746829bf219f49555 heplify-1.56.tar.gz
-2f012f933f232f78362ee61332dcdec22e83fb70d1feb245f2342cb2dc668b8b53fcee10d73cda8920534370bb57b2884a4cfb77013fa7f584ab4f5a637a2d33 heplify.initd
+1ddc412c2a596e0b546681882dccf904d7b2958e71a3cc268dfdc75744f6c3917a811cfac4268bcc810b7c39fe63144940137acc0963756ebd6356e4fb3ed63a heplify-1.66.2.tar.gz
+0caa79fb124971bf68cd96336d127975ea8427962eed8d9e6fb68d4aa26ed635aa03746b6fcae4932a38c105beb6e267e96c7d41d495c799436cb91005405eee heplify.initd
da89419e17acd25cca30af13cca1a9278283cbe258de30da747fafa41bd567e3337992a8f1773cdc2eb64848ec35c30a132f81a10dada5d4dae431ef29d391f0 heplify.confd
"
diff --git a/testing/heplify/heplify.initd b/testing/heplify/heplify.initd
index c906f8c349d..8a9199748bc 100644
--- a/testing/heplify/heplify.initd
+++ b/testing/heplify/heplify.initd
@@ -1,9 +1,9 @@
#!/sbin/openrc-run
description="Multi-Protocol Go HEP Capture Agent"
-supervisor=supervise-daemon
command=/usr/bin/heplify
command_args=${CMD_OPTS:="-i lo"}
+command_background=yes
pidfile="/run/homer/${RC_SVCNAME}.pid"
depend() {
diff --git a/testing/herbe/APKBUILD b/testing/herbe/APKBUILD
new file mode 100644
index 00000000000..3e95a566fbf
--- /dev/null
+++ b/testing/herbe/APKBUILD
@@ -0,0 +1,24 @@
+# Contributor: Eloi Torrents <eloitor@disroot.org>
+# Maintainer: Eloi Torrents <eloitor@disroot.org>
+pkgname=herbe
+pkgver=1.0.0
+pkgrel=0
+pkgdesc="Daemon-less notifications without D-Bus"
+url="https://github.com/dudik/herbe"
+arch="all"
+license="MIT"
+makedepends="libxft-dev"
+source="$pkgname-$pkgver.tar.gz::https://github.com/dudik/herbe/archive/refs/tags/$pkgver.tar.gz"
+options="!check" # No tests
+
+build() {
+ make herbe
+}
+
+package() {
+ make DESTDIR="$pkgdir" PREFIX="/usr" install
+}
+
+sha512sums="
+3f49de25fd92194d1354054c207616343d9c21a9d82c6c4e3316ebc5228c0bd90650621438d14cd4730135f328c0438ef054a2b6843f3bd4d15f9cb47a22df12 herbe-1.0.0.tar.gz
+"
diff --git a/testing/hex/APKBUILD b/testing/hex/APKBUILD
index e1219b5baba..f05c53ec96d 100644
--- a/testing/hex/APKBUILD
+++ b/testing/hex/APKBUILD
@@ -1,17 +1,23 @@
# Contributor: guddaff <guddaff@protonmail.com>
# Maintainer: guddaff <guddaff@protonmail.com>
pkgname=hex
-pkgver=0.4.2
-pkgrel=1
+pkgver=0.6.0
+pkgrel=0
pkgdesc="futuristic take on hexdump"
url="https://github.com/sitkevij/hex"
arch="x86_64 armv7 armhf aarch64 x86 ppc64le" # limited by rust/cargo
license="MIT"
-makedepends="cargo"
+makedepends="cargo cargo-auditable"
source="$pkgname-$pkgver.tar.gz::https://github.com/sitkevij/hex/archive/refs/tags/v$pkgver.tar.gz"
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
build() {
- cargo build --release --locked
+ cargo auditable build --frozen --release
}
check() {
@@ -19,10 +25,10 @@ check() {
}
package() {
- cargo install --locked --path . --root="$pkgdir/usr"
+ cargo auditable install --locked --path . --root="$pkgdir/usr"
rm "$pkgdir"/usr/.crates*
}
sha512sums="
-5b5706d931c4f6a9a21de5e883b264c9a2831a8be463a5283ac4cd3552eb44c480f45779fa6364dd97390a2d38f252b44313e4567186ec42c594451f295e648f hex-0.4.2.tar.gz
+d5d787a34f1602c9ee1543844b59da83f81d70c1da16397b09ea96205e96f29fffd44a38d5a7f5655cf38626f3d3c73539afcde23d81e8f550758746f9dfc444 hex-0.6.0.tar.gz
"
diff --git a/testing/hexdiff/APKBUILD b/testing/hexdiff/APKBUILD
index 57f6dabe3b7..a505846939e 100644
--- a/testing/hexdiff/APKBUILD
+++ b/testing/hexdiff/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Alex Yam <alex@alexyam.com>
pkgname=hexdiff
pkgver=0.0.53
-pkgrel=1
+pkgrel=2
pkgdesc="ncurses hex editor with diff mode for binary file comparison"
url="http://tboudet.free.fr/hexdiff/"
arch="all"
diff --git a/testing/hexedit/APKBUILD b/testing/hexedit/APKBUILD
new file mode 100644
index 00000000000..b44fb9f7b03
--- /dev/null
+++ b/testing/hexedit/APKBUILD
@@ -0,0 +1,41 @@
+# Contributor: Rdbo <rdbodev@gmail.com>
+# Maintainer: Rdbo <rdbodev@gmail.com>
+pkgname=hexedit
+pkgver=1.6_git20230905
+pkgrel=0
+pkgdesc="View and edit files in hexadecimal or in ASCII"
+url="https://github.com/pixel/hexedit"
+arch="all"
+license="GPL-2.0-only"
+makedepends="autoconf ncurses-dev"
+_commit="3f0d6adf1636b4d7e01e014633eae8fdcdcb9570"
+source="https://github.com/pixel/hexedit/archive/$_commit/hexedit-$_commit.tar.gz"
+options="!check" # the program does not have testing capabilities
+builddir="$srcdir/hexedit-$_commit"
+subpackages="$pkgname-doc"
+
+prepare() {
+ default_prepare
+
+ ./autogen.sh
+}
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var
+
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+5a4d6482a8063b3784e51e9f413caac41ad70b650b1473968e4b7f549b357e061aa23044451f482a354f995866c403c02a61d88a562fd3dda2b7bc6cb9187677 hexedit-3f0d6adf1636b4d7e01e014633eae8fdcdcb9570.tar.gz
+"
diff --git a/testing/hexer/APKBUILD b/testing/hexer/APKBUILD
index 21518011583..39e0fa42465 100644
--- a/testing/hexer/APKBUILD
+++ b/testing/hexer/APKBUILD
@@ -2,15 +2,15 @@
# Maintainer: Bradley J Chambers <brad.chambers@gmail.com>
pkgname=hexer
pkgver=1.4.0
-pkgrel=10
+pkgrel=14
pkgdesc="LAS and OGR hexagonal density and boundary surface generation"
-url="https://github.com/hobu/hexer"
+url="https://github.com/hobuinc/hexer"
arch="all"
license="LGPL-2.0-or-later"
options="!check"
makedepends="cmake gdal-dev"
subpackages="$pkgname-dev"
-source="hexer-$pkgver.tar.gz::https://github.com/hobu/hexer/archive/$pkgver.tar.gz
+source="hexer-$pkgver.tar.gz::https://github.com/hobuinc/hexer/archive/$pkgver.tar.gz
10-missing-includes.patch
20-compile-test-for-execinfo.patch"
diff --git a/testing/hexinject/APKBUILD b/testing/hexinject/APKBUILD
deleted file mode 100644
index 7572fa90566..00000000000
--- a/testing/hexinject/APKBUILD
+++ /dev/null
@@ -1,30 +0,0 @@
-# Contributor: Arch3y <arch3y@riseup.net>
-# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
-pkgname=hexinject
-pkgver=1.6
-pkgrel=0
-pkgdesc="A very versatile packet injector and sniffer"
-url="http://hexinject.sourceforge.net/"
-arch="all"
-license="BSD"
-depends=""
-makedepends="libpcap-dev"
-source="https://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz
- fix-build.patch"
-options="!check"
-builddir="$srcdir/$pkgname"
-
-build() {
- cd "$builddir"
- make
-}
-
-package() {
- cd "$builddir"
- install -Dm755 hexinject $pkgdir/usr/bin/hexinject
- install -Dm755 prettypacket $pkgdir/usr/bin/prettypacket
- install -Dm755 hex2raw $pkgdir/usr/bin/hex2raw
-}
-
-sha512sums="7432122a7ca42b7ac066cc55daec2d4a656b08e0f390db1a49f626181080d07687026d04a150573e3341e4e76f87a20b6466deddcc9d022e7d66fadcb8dac1ad hexinject-1.6.tar.gz
-7ab2e5a576e23bb5bfdefc8d9b9a432008d3e75bf4693cab6b0f20661cdf9286487b9c3294b9dfe207d134b8631e2083ac638f0821edc16be1510b8cc4a206aa fix-build.patch"
diff --git a/testing/hexinject/fix-build.patch b/testing/hexinject/fix-build.patch
deleted file mode 100644
index cce8b1e4f3b..00000000000
--- a/testing/hexinject/fix-build.patch
+++ /dev/null
@@ -1,15 +0,0 @@
---- hexinject/Makefile.orig 2017-08-29 07:29:31.430661450 +0000
-+++ hexinject/Makefile 2017-08-29 07:29:53.634411237 +0000
-@@ -3,9 +3,9 @@
- LDFLAGS = -lpcap
-
- all:
-- $(CC) $(CFLAGS) $(LDFLAGS) -o hexinject hexinject.c
-- $(CC) $(CFLAGS) $(LDFLAGS) -o prettypacket prettypacket.c
-- $(CC) $(CFLAGS) $(LDFLAGS) -o hex2raw hex2raw.c
-+ $(CC) $(CFLAGS) -o hexinject hexinject.c $(LDFLAGS)
-+ $(CC) $(CFLAGS) -o prettypacket prettypacket.c $(LDFLAGS)
-+ $(CC) $(CFLAGS) -o hex2raw hex2raw.c $(LDFLAGS)
-
- clean:
- rm -f hexinject prettypacket hex2raw *~
diff --git a/testing/hfst/APKBUILD b/testing/hfst/APKBUILD
index ad3b8eb3edf..d727bce8c20 100644
--- a/testing/hfst/APKBUILD
+++ b/testing/hfst/APKBUILD
@@ -2,16 +2,23 @@
# Contributor: Frankie Robertson <frankie@robertson.name>
# Maintainer:
pkgname=hfst
-pkgver=3.13.0
-pkgrel=3
+pkgver=3.16.0
+pkgrel=2
pkgdesc="Helsinki Finite-State Transducer Technology toolkit"
-url="http://www.ling.helsinki.fi/kieliteknologia/tutkimus/$pkgname/"
+url="https://hfst.github.io/"
arch="all"
license="LGPL-3.0-or-later"
-makedepends="python3 bison python3-dev swig"
+makedepends="
+ bison
+ icu-dev
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ python3-dev
+ swig
+ "
subpackages="$pkgname-dev $pkgname-doc py3-$pkgname:py3 $pkgname-libs"
-source="https://github.com/hfst/hfst/releases/download/v$pkgver/hfst-$pkgver.tar.gz
- missing_unistd_include.patch"
+source="https://github.com/hfst/hfst/releases/download/v$pkgver/hfst-$pkgver.tar.gz"
build() {
./configure \
@@ -27,23 +34,28 @@ build() {
--enable-all-tools \
--disable-static \
PYTHON=python3
- make -j1
+ make
+
+ cd python
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
make DESTDIR="$pkgdir" install
cd python
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" .dist/*.whl
}
py3() {
pkgdesc="$pkgdesc (python3 bindings)"
depends="python3"
- mkdir -p "$subpkgdir"/usr/lib/
- cp -r "$pkgdir"/usr/lib/python3* "$subpkgdir"/usr/lib/
+ amove usr/lib/python3*
}
-sha512sums="9070d23577528ef562cce7229faf15206cbcf615b38500deedc6b5c58be4a0bdb14165f8bb3da644a2f264860ea0e8f2bc663e46284bc55c7b03a45c07845296 hfst-3.13.0.tar.gz
-0bfc63709dbefaaa4084bf78d169283a58ab4ee586e800446f5d92ee179d4c84959802f54e72ffa5366c49a2a30883deb54c562c9dcace21662d5cbdd06789d6 missing_unistd_include.patch"
+sha512sums="
+7c12b8641cd22f1c550c26741d5f46e8a9e1fbd3f9a8b462ce500e38ddac9641e33c59fe3d3474de5499217896fc056605da5fc9bd564fbac254c9949a80f36b hfst-3.16.0.tar.gz
+"
diff --git a/testing/hfst/missing_unistd_include.patch b/testing/hfst/missing_unistd_include.patch
deleted file mode 100644
index 5a5e6734c80..00000000000
--- a/testing/hfst/missing_unistd_include.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- hfst-3.8.2/libhfst/src/implementations/optimized-lookup/transducer.h
-+++ hfst-3.8.2/libhfst/src/implementations/optimized-lookup/transducer_new.h
-@@ -14,6 +14,7 @@
- #ifndef _HFST_OL_TRANSDUCER_TRANSDUCER_H_
- #define _HFST_OL_TRANSDUCER_TRANSDUCER_H_
-
-+#include <unistd.h>
- #include <vector>
- #include <set>
- #include <iostream>
diff --git a/testing/hiawatha/APKBUILD b/testing/hiawatha/APKBUILD
index c97ef090dde..e3d7c35ee9b 100644
--- a/testing/hiawatha/APKBUILD
+++ b/testing/hiawatha/APKBUILD
@@ -2,17 +2,17 @@
# Contributor: Pascal Ernster <aur at hardfalcon dot net>
# Contributor: Stuart Cardall <developer at it-offshore dot co.uk>
pkgname=hiawatha
-pkgver=10.12
-pkgrel=2
-_php=php8
+pkgver=11.5
+pkgrel=0
+_php=php81
pkgdesc='Secure and advanced webserver'
-url='https://www.hiawatha-webserver.org/'
+url='https://hiawatha.leisink.net/'
arch="all"
license='GPL-2.0-only'
options="suid !check"
subpackages="$pkgname-doc $pkgname-openrc $pkgname-letsencrypt::noarch"
makedepends="cmake libxml2-dev libxslt-dev mbedtls-dev"
-source="https://hiawatha-webserver.org/files/hiawatha-10/hiawatha-$pkgver.tar.gz
+source="https://hiawatha.leisink.net/files/hiawatha-$pkgver.tar.gz
hiawatha.initd
hiawatha.conf.sample
letsencrypt.helper
@@ -50,9 +50,10 @@ letsencrypt() {
depends="$_php $_php-openssl"
pkgdesc="PHP scripts to generate SSL certificates with letsencrypt"
- mkdir -p "$subpkgdir"/usr/sbin "$subpkgdir"/usr/share/man/man1
+ mkdir -p "$subpkgdir"/usr/sbin "$subpkgdir"/usr/share/man/man1 "$subpkgdir"/usr/lib/hiawatha
mv "$pkgdir"-doc/usr/share/man/man1/lefh.1.gz "$subpkgdir"/usr/share/man/man1/
- mv "$pkgdir"/usr/lib "$subpkgdir"/usr/
+ mv "$pkgdir"/usr/lib/hiawatha/letsencrypt "$subpkgdir"/usr/lib/hiawatha
+ rmdir -p "$pkgdir"/usr/lib/hiawatha || true
mv "$pkgdir"/usr/sbin/lefh "$subpkgdir"/usr/sbin/
mkdir -p "$subpkgdir"/usr/lib/hiawatha/letsencrypt/scripts
install -Dm750 "$builddir"/extra/letsencrypt/scripts/* "$subpkgdir"/usr/lib/hiawatha/letsencrypt/scripts/
@@ -60,8 +61,8 @@ letsencrypt() {
}
sha512sums="
-3b4866140e3073fdd4226a96362e7c29ab72f1d4a2b689ee1cd36e915f1aaa7e933bad453a2b236057c9fbfb3c5384b6b35589e59e85fdde38730e932ef045f8 hiawatha-10.12.tar.gz
+575013567488b76bf37734a882e6608378a236f4f8cce7bb35a3949c97b894c1efa5963ab589f59fe27e6e1ba06ff0490f0c7bf7cfc87cd77bd5b60ca85a4bb6 hiawatha-11.5.tar.gz
cec0adfb48e1751cf13031f2c28f4590340b2c747aa8e81d18c16bc8789bce69b2d9d99290a93b74b501db3b63190a071033a78abeeb8f60becba2dcaf3b5c40 hiawatha.initd
771bed17b5831bb9d4a28eb94482dd39de8c4b5b35b2c08e1c303a2778254f9e34e40a8d791cc7ef4e73740f474c502685252378e7fe2cba494c782c11f960d4 hiawatha.conf.sample
-704d4968feb0cbc9bc3fcd76a52c43efb708d89048349ea2daf2313bea1034c4b88a73a9473d6a012759e82ad8167408257b6dd3d266ae9eedef541255ba0ab6 letsencrypt.helper
+dbdd0cdf975b226d2ac27257861a1cc6c1f77c8387d632014368a1c835817a33b780f446cd3fdb7d9ca4322eaede1fea28652dde70928cc8a73f0b05dba46f6e letsencrypt.helper
"
diff --git a/testing/hiawatha/letsencrypt.helper b/testing/hiawatha/letsencrypt.helper
index c0e833fdea1..32ea2ac1c92 100644
--- a/testing/hiawatha/letsencrypt.helper
+++ b/testing/hiawatha/letsencrypt.helper
@@ -1,6 +1,6 @@
#!/bin/sh
-phplist="php8 php7"
+phplist="php81 php8 php7"
letsencrypt=/usr/sbin/lefh
find_php() {
diff --git a/testing/hidrd/APKBUILD b/testing/hidrd/APKBUILD
index 24d93ab1dc1..c6e1a23779a 100644
--- a/testing/hidrd/APKBUILD
+++ b/testing/hidrd/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=hidrd
pkgver=0.2.0_git20190603
-pkgrel=0
+pkgrel=1
_commit=6c0ed39708a5777ac620f902f39c8a0e03eefe4e
pkgdesc="HID report descriptor I/O library and conversion tool"
url="https://github.com/DIGImend/hidrd"
diff --git a/testing/highscore/0001-merge-file.patch b/testing/highscore/0001-merge-file.patch
deleted file mode 100644
index 161ae8534b3..00000000000
--- a/testing/highscore/0001-merge-file.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-Author: ptrcnull <git@ptrcnull.me>
-Date: Thu Feb 3 23:35:17 2022 +0100
-Patch-Source: https://gitlab.gnome.org/World/highscore/-/merge_requests/20
-
- Remove positional arguments from i18n.merge_file
-
-diff --git a/data/meson.build b/data/meson.build
-index 20bcbb8a..b851c317 100644
---- a/data/meson.build
-+++ b/data/meson.build
-@@ -44,7 +44,7 @@ mime_types = [
- desktop_conf = configuration_data()
- desktop_conf.set('icon', application_id)
- desktop_conf.set('mimetypes', ';'.join(mime_types) + ';')
--desktop_file = i18n.merge_file ('desktop-file',
-+desktop_file = i18n.merge_file (
- type: 'desktop',
- input: configure_file(
- input: files('org.gnome.Games.desktop.in.in'),
-@@ -70,7 +70,7 @@ endif
-
- appdata_conf = configuration_data()
- appdata_conf.set('appid', application_id)
--appdata_file = i18n.merge_file ('appdata-file',
-+appdata_file = i18n.merge_file (
- input: configure_file(
- input: files('org.gnome.Games.appdata.xml.in.in'),
- output: 'org.gnome.Games.appdata.xml.in',
diff --git a/testing/highscore/0002-use-tracker-3.0.patch b/testing/highscore/0002-use-tracker-3.0.patch
deleted file mode 100644
index 6248a5a94be..00000000000
--- a/testing/highscore/0002-use-tracker-3.0.patch
+++ /dev/null
@@ -1,162 +0,0 @@
-From ba6f2e8461093eeaebd485910f69c61265131adf Mon Sep 17 00:00:00 2001
-From: Jean Felder <jean.felder@gmail.com>
-Date: Fri, 4 Sep 2020 23:11:35 +0200
-Subject: [PATCH 1/3] application: Remove an empty line at the end of file
-Patch-Source: https://gitlab.gnome.org/Archive/gnome-games/-/merge_requests/424
-
----
- src/ui/application.vala | 1 -
- 1 file changed, 1 deletion(-)
-
-diff --git a/src/ui/application.vala b/src/ui/application.vala
-index ab738c4b..d65b7ae1 100644
---- a/src/ui/application.vala
-+++ b/src/ui/application.vala
-@@ -579,4 +579,3 @@ public class Games.Application : Gtk.Application {
- return GLib.Application.get_default () as Application;
- }
- }
--
---
-GitLab
-
-
-From d38e93160a8e16776bb1fdc46f547365d3f2c9ee Mon Sep 17 00:00:00 2001
-From: Jean Felder <jean.felder@gmail.com>
-Date: Sat, 30 May 2020 18:48:06 +0200
-Subject: [PATCH 2/3] Port to tracker3
-
-With tracker3, tracker-miner-fs dumps data in different graphs. Games
-only needs to access data stored in the tracker:Software graph.
-
-'tracker_sparql_connection_get' has been replaced by
-'tracker_sparql_connection_bus_new'.
----
- meson.build | 2 +-
- plugins/desktop/src/desktop-plugin.vala | 2 +-
- src/tracker/mime-type-tracker-uri-query.vala | 2 +-
- src/ui/application.vala | 4 ++--
- 4 files changed, 5 insertions(+), 5 deletions(-)
-
-diff --git a/meson.build b/meson.build
-index a46681b9..fbab320c 100644
---- a/meson.build
-+++ b/meson.build
-@@ -45,7 +45,7 @@ retro_gtk_dep = dependency ('retro-gtk-1', version: '>=' + retro_gtk_min_version
- rsvg_dep = dependency ('librsvg-2.0')
- soup_dep = dependency ('libsoup-2.4')
- sqlite_dep = dependency ('sqlite3')
--tracker_sparql_dep = dependency ('tracker-sparql-2.0')
-+tracker_sparql_dep = dependency ('tracker-sparql-3.0')
- xml_dep = dependency ('libxml-2.0')
-
- srcdir = join_paths (meson.source_root (), 'src')
-diff --git a/plugins/desktop/src/desktop-plugin.vala b/plugins/desktop/src/desktop-plugin.vala
-index 93f824c8..1c9da904 100644
---- a/plugins/desktop/src/desktop-plugin.vala
-+++ b/plugins/desktop/src/desktop-plugin.vala
-@@ -19,7 +19,7 @@ private class Games.DesktopPlugin : Object, Plugin {
- public UriSource[] get_uri_sources () {
- var query = new DesktopTrackerUriQuery ();
- try {
-- var connection = Tracker.Sparql.Connection.@get ();
-+ var connection = Tracker.Sparql.Connection.@bus_new ("org.freedesktop.Tracker3.Miner.Files", null, null);
- var uri_source = new TrackerUriSource (connection);
- uri_source.add_query (query);
-
-diff --git a/src/tracker/mime-type-tracker-uri-query.vala b/src/tracker/mime-type-tracker-uri-query.vala
-index d536899a..bf7b889a 100644
---- a/src/tracker/mime-type-tracker-uri-query.vala
-+++ b/src/tracker/mime-type-tracker-uri-query.vala
-@@ -8,6 +8,6 @@ public class Games.MimeTypeTrackerUriQuery : Object, TrackerUriQuery {
- }
-
- public string get_query () {
-- return @"SELECT DISTINCT nie:url(?urn) WHERE { ?urn nie:mimeType \"$mime_type\" . }";
-+ return @"SELECT DISTINCT nie:isStoredAs(?urn) { GRAPH tracker:Software { ?urn nie:mimeType \"$mime_type\" . } }";
- }
- }
-diff --git a/src/ui/application.vala b/src/ui/application.vala
-index d65b7ae1..80cf4f46 100644
---- a/src/ui/application.vala
-+++ b/src/ui/application.vala
-@@ -2,7 +2,7 @@
-
- public class Games.Application : Gtk.Application {
- const string HELP_URI = "https://wiki.gnome.org/Apps/Games/Documentation";
-- const string TEST_QUERY = "SELECT nie:url(?f) WHERE { ?f fts:match 'test query to check tracker' }";
-+ const string TEST_QUERY = "SELECT nie:isStoredAs(?f) WHERE { GRAPH tracker:Software { ?f fts:match 'test query to check tracker' } }";
-
- private static bool? is_flatpak;
-
-@@ -345,7 +345,7 @@ public class Games.Application : Gtk.Application {
-
- TrackerUriSource tracker_uri_source = null;
- try {
-- var connection = Tracker.Sparql.Connection.@get ();
-+ var connection = Tracker.Sparql.Connection.@bus_new ("org.freedesktop.Tracker3.Miner.Files", null, null);
- connection.query (TEST_QUERY);
- tracker_uri_source = new TrackerUriSource (connection);
- }
---
-GitLab
-
-
-From 4550d24a05b6ea9d9f95f44faf0696e91f7a0211 Mon Sep 17 00:00:00 2001
-From: Jean Felder <jean.felder@gmail.com>
-Date: Fri, 4 Sep 2020 23:03:12 +0200
-Subject: [PATCH 3/3] flatpak: Port to tracker3
-
-The add-policy permission allows to use the portal from Tracker
-3. Games only needs the tracker:Software graph.
-TRACKER_BACKEND can be removed. It does not do anything for Tracker 3.
----
- flatpak/org.gnome.Games.json | 25 +------------------------
- 1 file changed, 1 insertion(+), 24 deletions(-)
-
-diff --git a/flatpak/org.gnome.Games.json b/flatpak/org.gnome.Games.json
-index bddd58ba..3b68761c 100644
---- a/flatpak/org.gnome.Games.json
-+++ b/flatpak/org.gnome.Games.json
-@@ -15,8 +15,7 @@
- "--socket=wayland",
- "--device=dri",
- "--socket=pulseaudio",
-- "--talk-name=org.freedesktop.Tracker1",
-- "--env=TRACKER_SPARQL_BACKEND=bus",
-+ "--add-policy=Tracker3.dbus:org.freedesktop.Tracker3.Miner.Files=tracker:Software",
- "--share=network",
- "--device=all",
- "--talk-name=org.freedesktop.Flatpak",
-@@ -76,28 +75,6 @@
- "mkdir -p /app/lib/libretro/extra.d"
- ]
- },
-- {
-- "name" : "tracker",
-- "buildsystem" : "meson",
-- "config-opts" : [
-- "-Ddocs=false",
-- "-Dfts=false",
-- "-Dfunctional_tests=false",
-- "-Djournal=false",
-- "-Dnetwork_manager=disabled",
-- "-Dstemmer=disabled",
-- "-Dbash_completion=no",
-- "-Ddbus_services=/app/share/dbus-1/services",
-- "-Dsystemd_user_services=no"
-- ],
-- "sources" : [
-- {
-- "type" : "git",
-- "url" : "https://gitlab.gnome.org/GNOME/tracker.git",
-- "branch" : "tracker-2.3"
-- }
-- ]
-- },
- {
- "name" : "grilo",
- "buildsystem" : "meson",
---
-GitLab
-
diff --git a/testing/highscore/APKBUILD b/testing/highscore/APKBUILD
deleted file mode 100644
index b5a4963c001..00000000000
--- a/testing/highscore/APKBUILD
+++ /dev/null
@@ -1,46 +0,0 @@
-# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
-# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
-pkgname=highscore
-pkgver=40.0
-pkgrel=0
-pkgdesc="Retro gaming application"
-url="https://gitlab.gnome.org/World/highscore"
-# s390x: blocked by libhandy1-dev, librsvg-dev, tracker-dev
-arch="all !s390x !riscv64"
-license="GPL-3.0-or-later"
-makedepends="
- grilo-dev
- gtk+3.0-dev
- libarchive-dev
- libhandy1-dev
- libmanette-dev
- librsvg-dev
- libsoup-dev
- libxml2-dev
- meson
- retro-gtk-dev
- sqlite-dev
- tracker-dev
- vala
- "
-subpackages="$pkgname-lang"
-source="https://gitlab.gnome.org/World/highscore/-/archive/$pkgver/highscore-$pkgver.tar.gz
- 0001-merge-file.patch
- 0002-use-tracker-3.0.patch
- "
-options="!check"
-
-build() {
- abuild-meson . output
- meson compile ${JOBS:+-j ${JOBS}} -C output
-}
-
-package() {
- DESTDIR="$pkgdir" meson install --no-rebuild -C output
-}
-
-sha512sums="
-39e1abfe4dae8a349449d8a42070a5f1eb9e7556c5857477ef24213710aff09faebffd0e77ce1aaf22f65ea3e7d057c6f8b590810dcab97324f8772dd22a31fa highscore-40.0.tar.gz
-e303490fc6b972e42b2c7f32e48f70560762923561ce278479c97e9106e9356c8042b84f5282ca24d411d1cb2f883ca035c8e979a2640645dc0dd31042e3b4cc 0001-merge-file.patch
-4568cfc6b34ff6e28102f2da2bf6edc93448076c2246e65ad9137288299917afc69d6ee9a0470b15d5226974f1e9088ef9c23a363fdc5a3da6ed61c506e8760b 0002-use-tracker-3.0.patch
-"
diff --git a/testing/hikari/APKBUILD b/testing/hikari/APKBUILD
new file mode 100644
index 00000000000..a51dea472f6
--- /dev/null
+++ b/testing/hikari/APKBUILD
@@ -0,0 +1,45 @@
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=hikari
+pkgver=2.3.3
+pkgrel=6
+pkgdesc="Stacking Wayland compositor with additional tiling capabilities"
+url="https://hub.darcs.net/raichoo/hikari"
+arch="all"
+license="MIT"
+makedepends="
+ bmake
+ cairo-dev
+ libinput-dev
+ libucl-dev
+ libxkbcommon-dev
+ linux-pam-dev
+ pango-dev
+ pixman-dev
+ wayland-dev
+ wlroots0.15-dev
+ xwayland-dev
+ "
+subpackages="$pkgname-doc $pkgname-unlocker"
+source="https://hikari.acmelabs.space/releases/hikari-$pkgver.tar.gz
+ flag-arg.patch
+ "
+options="suid !check" # no tests, unlocker
+
+build() {
+ bmake WITH_ALL=1 ETC_PREFIX=/ PREFIX=/usr VERSION="$pkgver"
+}
+
+package() {
+ bmake DESTDIR="$pkgdir" ETC_PREFIX=/ PREFIX=/usr install
+}
+
+unlocker() {
+ pkgdesc="$pkgdesc (unlocker)"
+
+ amove usr/bin/hikari-unlocker
+}
+
+sha512sums="
+15b6244ef46b29ad069475e8fadbafb01a65c8f96d1f89dd315d36f79dfea9a542936a5472e42237000f506094c7e08be37961c92a7eeed31477f4ed548f39f3 hikari-2.3.3.tar.gz
+10b46bc1fee6953a3c6a1c74c38d168b167f5fd5832e195de043d6b1c202eac9e7f95ef58a79299007c40355fd345fb74d6f8e754525ab5df788bffc94d10804 flag-arg.patch
+"
diff --git a/testing/hikari/flag-arg.patch b/testing/hikari/flag-arg.patch
new file mode 100644
index 00000000000..41822d4efff
--- /dev/null
+++ b/testing/hikari/flag-arg.patch
@@ -0,0 +1,17 @@
+getopt returns an int.
+on non-x86 architectures where char is unsigned, this breaks starting the
+compositor
+(i think)
+diff --git a/main.c b/main.c
+index 50288b0..a6b03ed 100644
+--- a/main.c
++++ b/main.c
+@@ -144,7 +144,7 @@ parse_options(int argc, char **argv, struct options *options)
+ char *config_path = NULL;
+ char *autostart = NULL;
+
+- char flag;
++ int flag;
+ while ((flag = getopt(argc, argv, "vhc:a:")) != -1) {
+ switch (flag) {
+ case 'a':
diff --git a/testing/hilbish/APKBUILD b/testing/hilbish/APKBUILD
index 35303a761c2..b8ef6d3234b 100644
--- a/testing/hilbish/APKBUILD
+++ b/testing/hilbish/APKBUILD
@@ -1,12 +1,12 @@
# Contributor: Hoang Nguyen <folliekazetani@protonmail.com>
# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
pkgname=hilbish
-pkgver=1.2.0
-_lunacolors_commit=f2c7686b3d9bbe960c556ca9234768b03fdcc897
-_succulent_commit=96dc95c24989be6596ccb9f7f7244d37f03d4acd
-pkgrel=1
+pkgver=2.2.1
+_lunacolors_commit=34a57c964590f89aa065188a588c7b38aff99c28
+_succulent_commit=fc31cc91d9be1c1fa6209477118e8d35a4aab996
+pkgrel=2
pkgdesc="Extensible shell configured in Lua"
-url="https://github.com/Rosettea/Hilbish"
+url="https://rosettea.github.io/Hilbish/"
arch="all"
license="MIT"
depends="lua-inspect"
@@ -20,8 +20,13 @@ source="
"
builddir="$srcdir/Hilbish-$pkgver"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
build() {
- go build -v -o hilbish -ldflags "-X main.Version=$pkgver"
+ go build -v -o hilbish \
+ -ldflags "-X main.ver=v$pkgver -X main.dataDir=/usr/share/hilbish"
}
check() {
@@ -29,23 +34,25 @@ check() {
}
package() {
- # Don't add the shell to /etc/shells during the installation
- sed -i '\|/etc/shells|d' Makefile
+ install -Dm755 hilbish -t "$pkgdir"/usr/bin/
+ install -Dm644 .hilbishrc.lua -t "$pkgdir"/usr/share/hilbish/
+ cp -r libs emmyLuaDocs nature docs "$pkgdir"/usr/share/hilbish/
- DESTDIR="$pkgdir/" make install
- rm -rf "$pkgdir"/usr/share/hilbish/libs/inspect
- install -Dm644 "$srcdir"/"lunacolors-$_lunacolors_commit".lua "$pkgdir"/usr/share/hilbish/libs/lunacolors/init.lua
- install -Dm644 "$srcdir"/"succulent-$_succulent_commit".lua "$pkgdir"/usr/share/hilbish/libs/succulent/init.lua
+ install -Dm644 "$srcdir"/"lunacolors-$_lunacolors_commit".lua \
+ "$pkgdir"/usr/share/hilbish/libs/lunacolors/init.lua
+ install -Dm644 "$srcdir"/"succulent-$_succulent_commit".lua \
+ "$pkgdir"/usr/share/hilbish/libs/succulent/init.lua
}
_doc() {
pkgdesc="$pkgdesc (documentation)"
- mkdir -p "$subpkgdir"/usr/share/hilbish
- mv "$pkgdir"/usr/share/hilbish/docs "$subpkgdir"/usr/share/hilbish/
+ install_if="$pkgname=$pkgver-r$pkgrel docs"
+
+ amove usr/share/hilbish/docs
}
sha512sums="
-551385b277aed46ad863dcd07b4759ecbfcccbf6e51cdb8aa07891a182f160af1db265b00f89df460b7c17553b45a4045746a542224331bc988ec2db06f7d5da hilbish-1.2.0.tar.gz
-315e68192cb758c6c8d41d9eca5fa47dcc20d380d644a94b2424449d7a725bec23c0096d082fd48b16554204f25f9f41478a34cc0e04fcd377057699751dbd4f lunacolors-f2c7686b3d9bbe960c556ca9234768b03fdcc897.lua
-5a8b17943c6df88803040d9e5d1cdf04ba69afd590d3e6c345fda607de571d7a373743f50ddb92819fb2a88b3ef6272ea77ac38bf25499c4231406fab103b230 succulent-96dc95c24989be6596ccb9f7f7244d37f03d4acd.lua
+7ab726fa31d337eff48d9465ed1850cf086bd9d8e08f6fa7c60cab1ee4f0449f617fa32411e6fbdabb067fdb5de175621d16cca015d59edef6b2fb0b89424961 hilbish-2.2.1.tar.gz
+19c21fa66460254774ac795410b4771157d26be98790d94afa9dff4402904bbfa24556a88b9ae391f012536ba02c032857715352ad7b72d7b3175ee670edcad8 lunacolors-34a57c964590f89aa065188a588c7b38aff99c28.lua
+ce34e68fd4ab18267268d476b656946c6aad6530526c73ba8482180215a351255dc6b97ba3fc92bcedad0d27ac7b390e19602129e387326fac0eaf6a61718bc8 succulent-fc31cc91d9be1c1fa6209477118e8d35a4aab996.lua
"
diff --git a/testing/hime/APKBUILD b/testing/hime/APKBUILD
deleted file mode 100644
index ac64a7dc5f6..00000000000
--- a/testing/hime/APKBUILD
+++ /dev/null
@@ -1,101 +0,0 @@
-# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer: rubicon <rubicon@mailo.com>
-pkgname=hime
-pkgver=0.9.12_git20220426
-_gitrev=c66f0671a4d2a9e35d68c4e11af8986ffadc2d4f
-pkgrel=0
-pkgdesc="HIME Input Method Editor"
-url="https://hime-ime.github.io/"
-arch="all"
-license="LGPL-2.1-or-later AND GPL-2.0-or-later"
-depends="bash cmd:whereis"
-makedepends="
- bash
- libxtst-dev
- cmd:whereis
- cmd:iconv
- anthy-dev
- libchewing-dev
- gtk+2.0-dev
- gtk+3.0-dev
- qt5-qtbase-dev
- qt6-qtbase-dev
- "
-subpackages="
- $pkgname-doc
- $pkgname-lang
- $pkgname-dev
- $pkgname-anthy
- $pkgname-chewing
- $pkgname-gtk2
- $pkgname-gtk3
- $pkgname-qt5
- $pkgname-qt6
- "
-options="!check"
-source="$pkgname-$pkgver.tar.gz::https://github.com/hime-ime/hime/archive/$_gitrev/hime-$_gitrev.tar.gz
- use-bash-not-sh.patch
- fix-im-client-ldflags.patch
- "
-builddir="$srcdir/hime-$_gitrev"
-
-build() {
- ./configure --prefix=/usr \
- --with-gtk=2.0 \
- --qt6-moc-path=/usr/lib/qt6/libexec/moc
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-anthy() {
- pkgdesc="$pkgdesc (Anthy Hiragana support)"
- depends=""
- install_if="$pkgname=$pkgver-r$pkgrel anthy"
- amove usr/lib/hime/anthy-module.so
-}
-
-chewing() {
- pkgdesc="$pkgdesc (Chewing Bopomofo support)"
- depends=""
- install_if="$pkgname=$pkgver-r$pkgrel libchewing"
- amove usr/lib/hime/chewing-module.so
-}
-
-gtk2() {
- pkgdesc="$pkgdesc (Gtk+2 immodule)"
- depends=""
- install_if="$pkgname=$pkgver-r$pkgrel gtk+2.0"
- install="$subpkgname.post-install $subpkgname.post-upgrade"
- amove usr/lib/gtk-2.0/*/immodules/im-hime.so
-}
-
-gtk3() {
- pkgdesc="$pkgdesc (Gtk+3 immodule)"
- depends=""
- install_if="$pkgname=$pkgver-r$pkgrel gtk+3.0"
- install="$subpkgname.post-install $subpkgname.post-upgrade"
- amove usr/lib/gtk-3.0/*/immodules/im-hime.so
-}
-
-qt5() {
- pkgdesc="$pkgdesc (Qt5 immodule)"
- depends=""
- install_if="$pkgname=$pkgver-r$pkgrel qt5-qtbase-x11"
- amove usr/lib/qt5/plugins/platforminputcontexts/im-hime.so
-}
-
-qt6() {
- pkgdesc="$pkgdesc (Qt6 immodule)"
- depends=""
- install_if="$pkgname=$pkgver-r$pkgrel qt6-qtbase-x11"
- amove usr/lib/qt6/plugins/platforminputcontexts/im-hime.so
-}
-
-sha512sums="
-808766419ee1ea17b2dc162667e2213ac5b1a2882d64218d2636f3ca72db9de24bc7a262b88bc52fe84ffee5b60b1964406f9fd5324b44503de31f1c4b60cc06 hime-0.9.12_git20220426.tar.gz
-4e38121579f986fd90b926e77e413b81ee0001a6cba1ae1be14e66b22b2b9ac172dfd9ed1d51c15040bfab5135c2bd8214edb97e762648059aaa92162cab3a2c use-bash-not-sh.patch
-80fd7ff717bdac553e440dedc84d0db9785f0e775a7848dda9e92f1da9018713714ced7a9f6fe9120a2b0d9e3d49a4eb25557432d21f01a5e4298506a3aa21d9 fix-im-client-ldflags.patch
-"
diff --git a/testing/hime/fix-im-client-ldflags.patch b/testing/hime/fix-im-client-ldflags.patch
deleted file mode 100644
index 4e58f141380..00000000000
--- a/testing/hime/fix-im-client-ldflags.patch
+++ /dev/null
@@ -1,14 +0,0 @@
---- a/src/im-client/Makefile
-+++ b/src/im-client/Makefile
-@@ -35,9 +35,9 @@
- @echo "linking $@ ..."
-
- ifeq ($(FREEBSD), 0)
-- $(CC) $(SO_FLAGS) -Wl,-soname,libhime-im-client.so.1 $(OBJS) $(LDFLAGS+) -o $@ -L/usr/X11R6/lib
-+ $(CC) $(SO_FLAGS) -Wl,-soname,libhime-im-client.so.1 $(OBJS) $(LDFLAGS) -o $@ -L/usr/X11R6/lib
- else
-- $(CC) $(SO_FLAGS) -Wl,-soname,libhime-im-client.so.1 $(OBJS) $(LDFLAGS+) -o $@ -L/usr/local/lib
-+ $(CC) $(SO_FLAGS) -Wl,-soname,libhime-im-client.so.1 $(OBJS) $(LDFLAGS) -o $@ -L/usr/local/lib
- endif
- ln -sf $(SOFILEVER) $(SOFILE)
- ln -sf $(SOFILEVER) $(SOFILE).1
diff --git a/testing/hime/hime-gtk2.post-install b/testing/hime/hime-gtk2.post-install
deleted file mode 100755
index 4d32561b145..00000000000
--- a/testing/hime/hime-gtk2.post-install
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-/usr/bin/gtk-query-immodules-2.0 --update-cache
-
-exit 0
diff --git a/testing/hime/hime-gtk2.post-upgrade b/testing/hime/hime-gtk2.post-upgrade
deleted file mode 100755
index 4d32561b145..00000000000
--- a/testing/hime/hime-gtk2.post-upgrade
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-/usr/bin/gtk-query-immodules-2.0 --update-cache
-
-exit 0
diff --git a/testing/hime/hime-gtk3.post-install b/testing/hime/hime-gtk3.post-install
deleted file mode 100755
index 75e5a242951..00000000000
--- a/testing/hime/hime-gtk3.post-install
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-/usr/bin/gtk-query-immodules-3.0 --update-cache
-
-exit 0
diff --git a/testing/hime/hime-gtk3.post-upgrade b/testing/hime/hime-gtk3.post-upgrade
deleted file mode 100755
index 75e5a242951..00000000000
--- a/testing/hime/hime-gtk3.post-upgrade
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-/usr/bin/gtk-query-immodules-3.0 --update-cache
-
-exit 0
diff --git a/testing/hime/use-bash-not-sh.patch b/testing/hime/use-bash-not-sh.patch
deleted file mode 100644
index 006b13ef71a..00000000000
--- a/testing/hime/use-bash-not-sh.patch
+++ /dev/null
@@ -1,104 +0,0 @@
---- a/filter/arukas
-+++ b/filter/arukas
-@@ -1,4 +1,4 @@
--#!/bin/sh
-+#!/bin/bash
- # hime filter arukas version 0.0.1
- read -r -t 1 aa
- echo -n $aa | \
---- a/filter/big5only
-+++ b/filter/big5only
-@@ -1,4 +1,4 @@
--#!/bin/sh
-+#!/bin/bash
- # hime filter big5only version 0.0.1
- read -r -t 1 aa
- echo -n $aa | \
---- a/filter/jp2cn
-+++ b/filter/jp2cn
-@@ -1,4 +1,4 @@
--#!/bin/sh
-+#!/bin/bash
- # hime filter jp2cn version 0.0.3
- read -r aa
- MATCH=`tail -n 681 $0 | grep $aa | head -n 1`
---- a/filter/jp2tw
-+++ b/filter/jp2tw
-@@ -1,4 +1,4 @@
--#!/bin/sh
-+#!/bin/bash
- # hime filter jp2tw version 0.0.3
- read -r aa
- MATCH=`tail -n 327 $0 | grep $aa | head -n 1`
---- a/filter/sakura
-+++ b/filter/sakura
-@@ -1,4 +1,4 @@
--#!/bin/sh
-+#!/bin/bash
- # hime filter sakura version 0.0.3
- read -r -t 1 aa
- echo -n $aa | \
---- a/filter/tw2jp
-+++ b/filter/tw2jp
-@@ -1,4 +1,4 @@
--#!/bin/sh
-+#!/bin/bash
- # hime filter tw2jp version 0.0.2
- read -r aa
- MATCH=`tail -n 332 $0 | grep $aa | head -n 1`
---- a/filter/zh2jp
-+++ b/filter/zh2jp
-@@ -1,4 +1,4 @@
--#!/bin/sh
-+#!/bin/bash
- # hime filter zh2jp version 0.0.2
- read -r aa
- MATCH=`tail -n 787 $0 | grep $aa | head -n 1`
---- a/filter/zh2tw
-+++ b/filter/zh2tw
-@@ -1,4 +1,4 @@
--#!/bin/sh
-+#!/bin/bash
- # hime filter zh2tw version 0.0.3
- read -r -t 1 aa
- U2S=`echo -n $aa | iconv -f UTF-8 -t GB2312 -c`
---- a/scripts/gtab.append_prepare
-+++ b/scripts/gtab.append_prepare
-@@ -1,4 +1,4 @@
--#!/bin/sh
-+#!/bin/bash
-
- [ -f "$1" ] && exit 0
-
---- a/scripts/hime-env
-+++ b/scripts/hime-env
-@@ -1,4 +1,4 @@
--#!/bin/sh
-+#!/bin/bash
- # Copyright and license see bottom of this file
- echo "====Detecting hime install===="
- HIME_BINARY=$(whereis hime | cut -d ' ' -f 2)
---- a/scripts/hime-user-setup
-+++ b/scripts/hime-user-setup
-@@ -1,4 +1,4 @@
--#!/bin/sh
-+#!/bin/bash
-
- if [ -z "$1" ] || [ -z "$2" ]; then
- echo "please specify hime_table_dir hime_bin_dir"
---- a/scripts/tsin-gtab-import
-+++ b/scripts/tsin-gtab-import
-@@ -1,4 +1,4 @@
--#!/bin/sh
-+#!/bin/bash
-
- pushd "$HOME/.config/hime"
- f="$1.append.gtab.tsin-db"
---- a/scripts/utf8-edit
-+++ b/scripts/utf8-edit
-@@ -1,4 +1,4 @@
--#!/bin/sh
-+#!/bin/bash
-
- PATH="$PATH:/opt/gnome/bin:/usr/local/bin"
-
diff --git a/testing/himitsu-firefox/APKBUILD b/testing/himitsu-firefox/APKBUILD
new file mode 100644
index 00000000000..f39e930bef4
--- /dev/null
+++ b/testing/himitsu-firefox/APKBUILD
@@ -0,0 +1,26 @@
+# Maintainer:
+pkgname=himitsu-firefox
+pkgver=0.5
+pkgrel=0
+pkgdesc="Firefox integration for Himitsu"
+url="https://himitsustore.org"
+arch="x86_64 aarch64 riscv64" # Hare
+license="GPL-3.0-only"
+makedepends="hare hare-json himitsu-dev zip"
+source="
+ $pkgname-$pkgver.tar.gz::https://git.sr.ht/~sircmpwn/himitsu-firefox/archive/$pkgver.tar.gz
+"
+install="$pkgname.post-install"
+options="!check"
+
+build() {
+ make -j1 PREFIX=/usr
+}
+
+package() {
+ make DESTDIR="$pkgdir" PREFIX=/usr install-native
+}
+
+sha512sums="
+2a355ab273156c1e05b4ca9a0e248e068ebf1a564de32559b8692a03cb33f2880785c5aa63faeb69479f98b4adec3d353ac5c68329b24bc332833602b2f67006 himitsu-firefox-0.5.tar.gz
+"
diff --git a/testing/himitsu-firefox/himitsu-firefox.post-install b/testing/himitsu-firefox/himitsu-firefox.post-install
new file mode 100755
index 00000000000..45514924542
--- /dev/null
+++ b/testing/himitsu-firefox/himitsu-firefox.post-install
@@ -0,0 +1,10 @@
+#!/bin/sh
+cat >&2 <<EOF
+*
+* The himitsu-firefox package only includes the native messaging support for
+* the corresponding Firefox add-on. You must install the Firefox add-on
+* manually to actually use it:
+*
+* https://addons.mozilla.org/en-US/firefox/addon/himitsu-integration/
+*
+EOF
diff --git a/testing/himitsu-git/APKBUILD b/testing/himitsu-git/APKBUILD
new file mode 100644
index 00000000000..4b82fa2bcec
--- /dev/null
+++ b/testing/himitsu-git/APKBUILD
@@ -0,0 +1,28 @@
+# Maintainer: Hugo Osvaldo Barrera <hugo@whynothugo.nl>
+pkgname=himitsu-git
+_commit=3e6d6786cb74f985a671040a6f506be3306e6042
+pkgver=0.2.0
+pkgrel=0
+pkgdesc="git-credential integration for Himitsu"
+url="https://himitsustore.org"
+arch="x86_64 aarch64 riscv64" # Hare
+license="GPL-3.0-only"
+depends="himitsu"
+makedepends="hare scdoc himitsu-dev"
+source="
+ $pkgname-$pkgver.tar.gz::https://git.sr.ht/~sircmpwn/himitsu-git/archive/$_commit.tar.gz
+ "
+options="!check"
+builddir="$srcdir/$pkgname-$_commit"
+
+build() {
+ make -j1 PREFIX=/usr
+}
+
+package() {
+ make DESTDIR="$pkgdir" PREFIX=/usr install
+}
+
+sha512sums="
+0e380d2197d93a4f224ece66fc23e9ca474cdc33a103a71cb9764b50100b4712c4ab765741f24b77f1a7adb012210c006b875a6e01771cc9dcbcadcbfe48a1de himitsu-git-0.2.0.tar.gz
+"
diff --git a/testing/himitsu-keyring/APKBUILD b/testing/himitsu-keyring/APKBUILD
new file mode 100644
index 00000000000..b7e5ac9b267
--- /dev/null
+++ b/testing/himitsu-keyring/APKBUILD
@@ -0,0 +1,29 @@
+# Maintainer: Martijn Braam <martijn@brixit.nl>
+pkgname=himitsu-keyring
+pkgver=0.2.0
+pkgrel=0
+pkgdesc="Himitsu keystore frontend"
+url="https://git.sr.ht/~martijnbraam/keyring"
+arch="x86_64 aarch64" # Limited by himitsu
+license="GPL-3.0-or-later"
+source="$pkgname-$pkgver.tar.gz::https://git.sr.ht/~martijnbraam/keyring/archive/$pkgver.tar.gz"
+depends="python3 py3-gobject3 gtk+3.0 himitsu libhandy1"
+makedepends="py3-setuptools glib-dev meson ninja libhandy1-dev"
+builddir="$srcdir/keyring-$pkgver"
+
+build() {
+ abuild-meson . output
+ meson compile -C output
+}
+
+check() {
+ meson test --no-rebuild -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+sha512sums="
+3bfe6e8f021c2b62c35290c3614c17646c0835409eabd5dcc8abb45c91176867466b7bdd58373f9d61768e2c1083df0e4ebcc708e799bd651343b41b0c55fa63 himitsu-keyring-0.2.0.tar.gz
+"
diff --git a/testing/hinsightd/APKBUILD b/testing/hinsightd/APKBUILD
deleted file mode 100644
index 8df34ab185b..00000000000
--- a/testing/hinsightd/APKBUILD
+++ /dev/null
@@ -1,68 +0,0 @@
-# Contributor: Alexandru Campeanu <tiotags1@gmail.com>
-# Maintainer: Alexandru Campeanu <tiotags1@gmail.com>
-pkgname=hinsightd
-pkgver=0.9.14
-pkgrel=0
-pkgdesc="hinsightd a http/1.1 webserver with (hopefully) minimal goals"
-url="https://tiotags1.github.io/tiotags1/"
-arch="all"
-license="BSD-3-Clause"
-makedepends="cmake libcap lua-dev openssl-dev zlib-dev liburing-dev linux-headers"
-options="!check" # no test suite
-pkgusers="$pkgname"
-pkggroups="$pkgname"
-subpackages="$pkgname-dbg $pkgname-openrc"
-source="
- https://gitlab.com/tiotags/hin9/-/archive/v$pkgver/hin9-v$pkgver.tar.gz
- compile.patch
- "
-builddir="$srcdir"/hin9-v$pkgver
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DCMAKE_BUILD_TYPE=None \
- -DUSE_FCGI=1 \
- -DUSE_OPENSSL=1 \
- -DUSE_RPROXY=1 \
- $CMAKE_CROSSOPTS .
- cmake --build build
-}
-
-package() {
- install -D -m755 "$builddir"/build/hin9 \
- "$pkgdir"/usr/sbin/hinsightd
- setcap cap_net_bind_service+eip "$pkgdir"/usr/sbin/hinsightd
-
- # create dirs
- install -d -m2750 -o $pkgusers -g $pkggroups \
- "$pkgdir"/var/log/hinsightd/
- install -d -m755 \
- "$pkgdir"/etc/hinsightd/ \
- "$pkgdir"/etc/hinsightd/config/ \
- "$pkgdir"/var/www/localhost/htdocs
-
- install -m755 -D "$builddir"/external/packaging/$pkgname.initd.sh \
- "$pkgdir"/etc/init.d/$pkgname
- install -m644 -D "$builddir"/external/packaging/$pkgname.confd.sh \
- "$pkgdir"/etc/conf.d/$pkgname
- install -m644 -D "$builddir"/external/packaging/$pkgname.logrotate.sh \
- "$pkgdir"/etc/logrotate.d/$pkgname
-
- # config files
- local i; for i in main.lua lib.lua
- do
- install -m644 "$builddir"/workdir/"$i" "$pkgdir"/etc/$pkgname/"$i"
- done
- install -m644 -D "$builddir"/workdir/config/* -t "$pkgdir"/etc/$pkgname/config/
-
-}
-
-sha512sums="
-b2f473024570738717d16fc5be86ad91bbf79cf1886e1f61ea55fb64769bf8410943a1ae71585411053c70907ab1c4e7556135383a9d4048f516349b11ac952f hin9-v0.9.14.tar.gz
-16099be537f15c8c305824fdb1a9efb941a1d229b33dcd532b7b960875317b8a3ed97df324304a86fbfcf65f75eb5d255d09140233db670a039f20c80cfbe2e5 compile.patch
-"
diff --git a/testing/hinsightd/compile.patch b/testing/hinsightd/compile.patch
deleted file mode 100644
index 8331e66f632..00000000000
--- a/testing/hinsightd/compile.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-diff --git a/src/system/main.c b/src/system/main.c
-index f0ccba0..122b6e0 100644
---- a/src/system/main.c
-+++ b/src/system/main.c
-@@ -160,7 +160,7 @@ int hin_process_argv (basic_args_t * args, const char * name) {
- break;
- case CWORKDIR:
- case CLOGDIR:
-- case CTMPDIR:
-+ case CTMPDIR: {
- const char * path = basic_args_get (args);
- if (path == NULL) {
- printf ("missing %s path\n", cmd->nlong);
-@@ -179,7 +179,7 @@ int hin_process_argv (basic_args_t * args, const char * name) {
- hin_directory_path (path, &master.tmpdir_path);
- break;
- }
-- break;
-+ break; }
- case CPIDFILE: {
- const char * path = basic_args_get (args);
- if (path == NULL) {
diff --git a/testing/hiprompt-gtk-py/APKBUILD b/testing/hiprompt-gtk-py/APKBUILD
new file mode 100644
index 00000000000..6a7befb5f33
--- /dev/null
+++ b/testing/hiprompt-gtk-py/APKBUILD
@@ -0,0 +1,30 @@
+# Maintainer: Martijn Braam <martijn@brixit.nl>
+pkgname=hiprompt-gtk-py
+pkgver=0_git20230225
+pkgrel=0
+_commit=8d6ef1d042ec2731f84245164094e622f4be3f2d
+pkgdesc="A GTK+ Himitsu prompter for Wayland"
+url="https://git.sr.ht/~sircmpwn/hiprompt-gtk-py"
+arch="noarch"
+license="GPL-3.0-or-later"
+source="$pkgname-$_commit.tar.gz::https://git.sr.ht/~sircmpwn/hiprompt-gtk-py/archive/$_commit.tar.gz"
+depends="python3 py3-gobject3 gtk+3.0"
+makedepends="py3-setuptools glib-dev meson ninja"
+builddir="$srcdir/$pkgname-$_commit"
+
+build() {
+ abuild-meson . output
+ meson compile -C output
+}
+
+check() {
+ meson test --no-rebuild -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+sha512sums="
+cac43582ae8de7cb0c68cf28309644a10b6e797d8477ff6af06fc18fd14c3a3a86ae6f17e1f549b39dd263cd43482219a2fb10c7e77e5863da5c72f28c66993c hiprompt-gtk-py-8d6ef1d042ec2731f84245164094e622f4be3f2d.tar.gz
+"
diff --git a/testing/hiredict/APKBUILD b/testing/hiredict/APKBUILD
new file mode 100644
index 00000000000..9c574f9bc92
--- /dev/null
+++ b/testing/hiredict/APKBUILD
@@ -0,0 +1,51 @@
+# Contributor: Eivind Uggedal <eu@eju.no>
+# Contributor: Natanael Copa <ncopa@alpinelinux.org>
+# Maintainer: fossdd <fossdd@pwned.life>
+pkgname=hiredict
+pkgver=1.3.1
+pkgrel=0
+pkgdesc="C client library for Redict"
+url="https://codeberg.org/redict/hiredict"
+arch="all"
+license="BSD-3-Clause"
+makedepends="openssl-dev>3"
+checkdepends="redict"
+subpackages="$pkgname-ssl $pkgname-dev"
+source="$pkgname-$pkgver.tar.gz::https://codeberg.org/redict/hiredict/archive/$pkgver.tar.gz"
+builddir="$srcdir/$pkgname"
+
+build() {
+ make USE_SSL=1 PREFIX=/usr DEBUG="$CFLAGS" LDFLAGS="$LDFLAGS"
+}
+
+check() {
+ redict-server \
+ --dir "$builddir" \
+ --enable-debug-command local \
+ --unixsocket "$builddir"/redict.sock&
+ local _redictpid=$!
+
+ make hiredict-test
+
+ # make sure socket is available before we start running tests
+ local _n=100 # wait up to 10 sec
+ while ! [ -e "$builddir"/redict.sock ] && [ $_n -gt 0 ]; do
+ sleep 0.1s
+ _n="$((_n - 1))"
+ done
+
+ ./hiredict-test -s "$builddir"/redict.sock || (kill $_redictpid && false)
+ kill $_redictpid
+}
+
+package() {
+ make USE_SSL=1 PREFIX="$pkgdir"/usr install
+}
+
+ssl() {
+ amove usr/lib/libhiredict_ssl.so*
+}
+
+sha512sums="
+208672d4dbdcc8bf21cff494ea2191b97b9d67b2c4b5a4f94e2c165613315b28b09e9e03de0495a069320df671e3f9d22a43209f175c2aae71550b0d832c0112 hiredict-1.3.1.tar.gz
+"
diff --git a/testing/hledger-iadd/APKBUILD b/testing/hledger-iadd/APKBUILD
deleted file mode 100644
index 6caeee7bc84..00000000000
--- a/testing/hledger-iadd/APKBUILD
+++ /dev/null
@@ -1,40 +0,0 @@
-# Contributor: Dhruvin Gandhi <contact@dhruvin.dev>
-# Maintainer: Dhruvin Gandhi <contact@dhruvin.dev>
-pkgname=hledger-iadd
-pkgver=1.3.17
-pkgrel=0
-pkgdesc="A terminal UI as drop-in replacement for hledger add"
-url="https://github.com/hpdeifel/hledger-iadd#readme"
-arch="x86_64" # limited by ghc
-license="BSD-3-Clause"
-makedepends="ghc cabal libffi-dev ncurses-dev"
-source="https://hackage.haskell.org/package/hledger-iadd-$pkgver/hledger-iadd-$pkgver.tar.gz
- cabal.project.freeze"
-
-export CABAL_DIR="$srcdir"/cabal
-
-prepare() {
- default_prepare
- cp "$srcdir"/cabal.project.freeze .
-}
-
-build() {
- cabal update
- cabal build --prefix=/usr --enable-relocatable
-}
-
-check() {
- cabal test
-}
-
-package() {
- local ghcver=$(ghc --version | cut -d " " -f 8)
- install -Dm755 \
- "dist-newstyle/build/$arch-linux/ghc-$ghcver/$pkgname-$pkgver/x/$pkgname/build/$pkgname/$pkgname" \
- "$pkgdir"/usr/bin/$pkgname
-}
-
-sha512sums="
-44ae987d4a2b3950a0256d52e3afabea5b3b3351f1f802e8c9a8397753d35bb9b52ae90e7046e3f2f4a46406d05cefa7d7375cb326a9f6f6001c8fd623183896 hledger-iadd-1.3.17.tar.gz
-8ba67fa2a0f2ae9e938ed6f64875bf36ce5068fe6428c90731b08e4f7d7b0faf0aa5b6a9ccf9dbff5767986506b6b478b929e3cf20d93ff5949cbb0fb1c52d2b cabal.project.freeze
-"
diff --git a/testing/hledger-iadd/cabal.project.freeze b/testing/hledger-iadd/cabal.project.freeze
deleted file mode 100644
index e28d6574809..00000000000
--- a/testing/hledger-iadd/cabal.project.freeze
+++ /dev/null
@@ -1,179 +0,0 @@
-active-repositories: hackage.haskell.org:merge
-constraints: any.Cabal ==3.4.0.0,
- any.Decimal ==0.5.2,
- any.Glob ==0.10.2,
- any.HUnit ==1.6.2.0,
- any.OneTuple ==0.3.1,
- any.Only ==0.1,
- any.QuickCheck ==2.14.2,
- QuickCheck -old-random +templatehaskell,
- any.StateVar ==1.2.2,
- any.aeson ==2.0.3.0,
- aeson -cffi +ordered-keymap,
- any.aeson-pretty ==0.8.9,
- aeson-pretty -lib-only,
- any.ansi-terminal ==0.11.1,
- ansi-terminal -example,
- any.ansi-wl-pprint ==0.6.9,
- ansi-wl-pprint -example,
- any.array ==0.5.4.0,
- any.assoc ==1.0.2,
- any.attoparsec ==0.14.4,
- attoparsec -developer,
- any.base ==4.15.0.0,
- any.base-compat ==0.12.1,
- any.base-compat-batteries ==0.12.1,
- any.base-orphans ==0.8.6,
- any.bifunctors ==5.5.11,
- bifunctors +semigroups +tagged,
- any.binary ==0.8.8.0,
- any.blaze-builder ==0.4.2.2,
- any.blaze-markup ==0.8.2.8,
- any.brick ==0.67,
- brick -demos,
- any.bytestring ==0.10.12.1,
- any.cabal-doctest ==1.0.9,
- any.call-stack ==0.4.0,
- any.case-insensitive ==1.2.1.0,
- any.cassava ==0.5.2.0,
- cassava -bytestring--lt-0_10_4,
- any.cassava-megaparsec ==2.0.4,
- cassava-megaparsec -dev,
- any.clock ==0.8.3,
- clock -llvm,
- any.cmdargs ==0.10.21,
- cmdargs +quotation -testprog,
- any.colour ==2.3.6,
- any.comonad ==5.0.8,
- comonad +containers +distributive +indexed-traversable,
- any.config-ini ==0.2.4.0,
- config-ini -enable-doctests,
- any.containers ==0.6.4.1,
- any.contravariant ==1.5.5,
- contravariant +semigroups +statevar +tagged,
- any.csv ==0.1.2,
- any.data-clist ==0.2,
- any.data-default ==0.7.1.1,
- any.data-default-class ==0.1.2.0,
- any.data-default-instances-containers ==0.0.1,
- any.data-default-instances-dlist ==0.0.1,
- any.data-default-instances-old-locale ==0.0.1,
- any.data-fix ==0.3.2,
- any.deepseq ==1.4.5.0,
- any.directory ==1.3.6.1,
- any.distributive ==0.6.2.1,
- distributive +semigroups +tagged,
- any.dlist ==1.0,
- dlist -werror,
- any.doclayout ==0.3.1.1,
- any.emojis ==0.1.2,
- any.exceptions ==0.10.4,
- any.extra ==1.7.10,
- any.file-embed ==0.0.15.0,
- any.filepath ==1.4.2.1,
- any.free ==5.1.7,
- any.ghc ==9.0.1,
- any.ghc-bignum ==1.0,
- any.ghc-bignum-orphans ==0.1.1,
- any.ghc-boot ==9.0.1,
- any.ghc-boot-th ==9.0.1,
- any.ghc-heap ==9.0.1,
- any.ghc-prim ==0.7.0,
- any.ghci ==9.0.1,
- any.hashable ==1.4.0.2,
- hashable +containers +integer-gmp -random-initial-seed,
- any.hashtables ==1.3,
- hashtables -bounds-checking -debug -detailed-profiling -portable -sse42 +unsafe-tricks,
- any.hledger-lib ==1.25,
- any.hpc ==0.6.1.0,
- any.hspec ==2.9.4,
- any.hspec-core ==2.9.4,
- any.hspec-discover ==2.9.4,
- any.hspec-expectations ==0.8.2,
- any.html ==1.0.1.2,
- any.indexed-traversable ==0.1.2,
- any.indexed-traversable-instances ==0.1.1,
- any.integer-logarithms ==1.0.3.1,
- integer-logarithms -check-bounds +integer-gmp,
- any.megaparsec ==9.2.0,
- megaparsec -dev,
- any.microlens ==0.4.12.0,
- any.microlens-mtl ==0.2.0.1,
- any.microlens-th ==0.4.3.10,
- any.mtl ==2.2.2,
- any.old-locale ==1.0.0.7,
- any.optparse-applicative ==0.17.0.0,
- optparse-applicative +process,
- any.parallel ==3.2.2.0,
- any.parsec ==3.1.14.0,
- any.parser-combinators ==1.3.0,
- parser-combinators -dev,
- any.pretty ==1.1.3.6,
- any.pretty-simple ==4.0.0.0,
- pretty-simple -buildexample -buildexe,
- any.prettyprinter ==1.7.1,
- prettyprinter -buildreadme +text,
- any.prettyprinter-ansi-terminal ==1.1.3,
- any.primitive ==0.7.3.0,
- any.process ==1.6.11.0,
- any.profunctors ==5.6.2,
- any.quickcheck-io ==0.2.0,
- any.random ==1.2.1,
- any.regex-base ==0.94.0.2,
- any.regex-tdfa ==1.3.1.2,
- regex-tdfa -force-o2,
- any.rts ==1.0,
- any.safe ==0.3.19,
- any.scientific ==0.3.7.0,
- scientific -bytestring-builder -integer-simple,
- any.semialign ==1.2.0.1,
- semialign +semigroupoids,
- any.semigroupoids ==5.3.7,
- semigroupoids +comonad +containers +contravariant +distributive +tagged +unordered-containers,
- any.setenv ==0.1.1.3,
- any.splitmix ==0.1.0.4,
- splitmix -optimised-mixer,
- any.stm ==2.5.0.0,
- any.strict ==0.4.0.1,
- strict +assoc,
- any.tabular ==0.2.2.8,
- any.tagged ==0.8.6.1,
- tagged +deepseq +transformers,
- any.tasty ==1.4.2.1,
- tasty +clock +unix,
- any.tasty-hunit ==0.10.0.3,
- any.template-haskell ==2.17.0.0,
- any.terminfo ==0.4.1.4,
- any.text ==1.2.4.1,
- any.text-short ==0.1.5,
- text-short -asserts,
- any.text-zipper ==0.11,
- any.tf-random ==0.5,
- any.th-abstraction ==0.4.3.0,
- any.these ==1.1.1.1,
- these +assoc,
- any.time ==1.9.3,
- any.time-compat ==1.9.6.1,
- time-compat -old-locale,
- any.timeit ==2.0,
- any.transformers ==0.5.6.2,
- any.transformers-base ==0.4.6,
- transformers-base +orphaninstances,
- any.transformers-compat ==0.7.1,
- transformers-compat -five +five-three -four +generic-deriving +mtl -three -two,
- any.uglymemo ==0.1.0.1,
- any.unbounded-delays ==0.1.1.1,
- any.unix ==2.7.2.2,
- any.unordered-containers ==0.2.17.0,
- unordered-containers -debug,
- any.utf8-string ==1.0.2,
- any.uuid-types ==1.0.5,
- any.vector ==0.12.3.1,
- vector +boundschecks -internalchecks -unsafechecks -wall,
- any.vty ==5.34,
- any.wcwidth ==0.0.2,
- wcwidth -cli +split-base,
- any.witherable ==0.4.2,
- any.word-wrap ==0.5,
- any.xdg-basedir ==0.2.2
-index-state: hackage.haskell.org 2022-03-07T06:09:05Z
diff --git a/testing/hledger-interest/APKBUILD b/testing/hledger-interest/APKBUILD
deleted file mode 100644
index c01f95712d6..00000000000
--- a/testing/hledger-interest/APKBUILD
+++ /dev/null
@@ -1,40 +0,0 @@
-# Contributor: Dhruvin Gandhi <contact@dhruvin.dev>
-# Maintainer: Dhruvin Gandhi <contact@dhruvin.dev>
-pkgname=hledger-interest
-pkgver=1.6.3
-pkgrel=0
-pkgdesc="hledger addon to compute interest for a given account"
-url="https://github.com/peti/hledger-interest"
-arch="x86_64" # limited by ghc
-license="BSD-3-Clause"
-makedepends="ghc cabal libffi-dev"
-source="https://hackage.haskell.org/package/hledger-interest-$pkgver/hledger-interest-$pkgver.tar.gz
- cabal.project.freeze"
-
-export CABAL_DIR="$srcdir"/cabal
-
-prepare() {
- default_prepare
- cp "$srcdir"/cabal.project.freeze .
-}
-
-build() {
- cabal update
- cabal build --prefix=/usr --enable-relocatable
-}
-
-check() {
- cabal test
-}
-
-package() {
- local ghcver=$(ghc --version | cut -d " " -f 8)
- install -Dm755 \
- "dist-newstyle/build/$arch-linux/ghc-$ghcver/$pkgname-$pkgver/x/$pkgname/build/$pkgname/$pkgname" \
- "$pkgdir"/usr/bin/$pkgname
-}
-
-sha512sums="
-94dfd74ddc11e8e23ae1ac8e97332c619ac3c26bb047c04840089fbc21bb23cbe477e533424a4f76ca070e8ce4e882e327b3c79adf790496de69bf37690651b0 hledger-interest-1.6.3.tar.gz
-d6673244d3ee4ea601a88efdaf23b80dddeafeb3fdacc224cd04811cd1f2f15bae26c4fe1a68e662fbb8bf1c7e697be691034db241c0188b419ae2ded8d8e754 cabal.project.freeze
-"
diff --git a/testing/hledger-interest/cabal.project.freeze b/testing/hledger-interest/cabal.project.freeze
deleted file mode 100644
index 6db0f5c972c..00000000000
--- a/testing/hledger-interest/cabal.project.freeze
+++ /dev/null
@@ -1,147 +0,0 @@
-active-repositories: hackage.haskell.org:merge
-constraints: any.Cabal ==3.4.0.0,
- any.Decimal ==0.5.2,
- any.Glob ==0.10.2,
- any.OneTuple ==0.3.1,
- any.Only ==0.1,
- any.QuickCheck ==2.14.2,
- QuickCheck -old-random +templatehaskell,
- any.StateVar ==1.2.2,
- any.aeson ==2.0.3.0,
- aeson -cffi +ordered-keymap,
- any.aeson-pretty ==0.8.9,
- aeson-pretty -lib-only,
- any.ansi-terminal ==0.11.1,
- ansi-terminal -example,
- any.ansi-wl-pprint ==0.6.9,
- ansi-wl-pprint -example,
- any.array ==0.5.4.0,
- any.assoc ==1.0.2,
- any.attoparsec ==0.14.4,
- attoparsec -developer,
- any.base ==4.15.0.0,
- any.base-compat ==0.11.2,
- any.base-compat-batteries ==0.11.2,
- any.base-orphans ==0.8.6,
- any.bifunctors ==5.5.11,
- bifunctors +semigroups +tagged,
- any.binary ==0.8.8.0,
- any.blaze-builder ==0.4.2.2,
- any.blaze-markup ==0.8.2.8,
- any.bytestring ==0.10.12.1,
- any.cabal-doctest ==1.0.9,
- any.call-stack ==0.4.0,
- any.case-insensitive ==1.2.1.0,
- any.cassava ==0.5.2.0,
- cassava -bytestring--lt-0_10_4,
- any.cassava-megaparsec ==2.0.4,
- cassava-megaparsec -dev,
- any.clock ==0.8.3,
- clock -llvm,
- any.cmdargs ==0.10.21,
- cmdargs +quotation -testprog,
- any.colour ==2.3.6,
- any.comonad ==5.0.8,
- comonad +containers +distributive +indexed-traversable,
- any.containers ==0.6.4.1,
- any.contravariant ==1.5.5,
- contravariant +semigroups +statevar +tagged,
- any.csv ==0.1.2,
- any.data-default ==0.7.1.1,
- any.data-default-class ==0.1.2.0,
- any.data-default-instances-containers ==0.0.1,
- any.data-default-instances-dlist ==0.0.1,
- any.data-default-instances-old-locale ==0.0.1,
- any.data-fix ==0.3.2,
- any.deepseq ==1.4.5.0,
- any.directory ==1.3.6.1,
- any.distributive ==0.6.2.1,
- distributive +semigroups +tagged,
- any.dlist ==1.0,
- dlist -werror,
- any.extra ==1.7.10,
- any.file-embed ==0.0.15.0,
- any.filepath ==1.4.2.1,
- any.ghc-bignum ==1.0,
- any.ghc-bignum-orphans ==0.1.1,
- any.ghc-boot-th ==9.0.1,
- any.ghc-prim ==0.7.0,
- any.hashable ==1.4.0.2,
- hashable +containers +integer-gmp -random-initial-seed,
- any.hashtables ==1.3,
- hashtables -bounds-checking -debug -detailed-profiling -portable -sse42 +unsafe-tricks,
- any.hledger-lib ==1.23,
- any.html ==1.0.1.2,
- any.indexed-traversable ==0.1.2,
- any.indexed-traversable-instances ==0.1.1,
- any.integer-logarithms ==1.0.3.1,
- integer-logarithms -check-bounds +integer-gmp,
- any.megaparsec ==9.2.0,
- megaparsec -dev,
- any.microlens ==0.4.12.0,
- any.microlens-th ==0.4.3.10,
- any.mtl ==2.2.2,
- any.old-locale ==1.0.0.7,
- any.optparse-applicative ==0.17.0.0,
- optparse-applicative +process,
- any.parsec ==3.1.14.0,
- any.parser-combinators ==1.3.0,
- parser-combinators -dev,
- any.pretty ==1.1.3.6,
- any.pretty-simple ==4.0.0.0,
- pretty-simple -buildexample -buildexe,
- any.prettyprinter ==1.7.1,
- prettyprinter -buildreadme +text,
- any.prettyprinter-ansi-terminal ==1.1.3,
- any.primitive ==0.7.3.0,
- any.process ==1.6.11.0,
- any.random ==1.2.1,
- any.regex-base ==0.94.0.2,
- any.regex-tdfa ==1.3.1.2,
- regex-tdfa -force-o2,
- any.rts ==1.0,
- any.safe ==0.3.19,
- any.scientific ==0.3.7.0,
- scientific -bytestring-builder -integer-simple,
- any.semialign ==1.2.0.1,
- semialign +semigroupoids,
- any.semigroupoids ==5.3.7,
- semigroupoids +comonad +containers +contravariant +distributive +tagged +unordered-containers,
- any.splitmix ==0.1.0.4,
- splitmix -optimised-mixer,
- any.stm ==2.5.0.0,
- any.strict ==0.4.0.1,
- strict +assoc,
- any.tabular ==0.2.2.8,
- any.tagged ==0.8.6.1,
- tagged +deepseq +transformers,
- any.tasty ==1.4.2.1,
- tasty +clock +unix,
- any.tasty-hunit ==0.10.0.3,
- any.template-haskell ==2.17.0.0,
- any.text ==1.2.4.1,
- any.text-short ==0.1.5,
- text-short -asserts,
- any.th-abstraction ==0.4.3.0,
- any.these ==1.1.1.1,
- these +assoc,
- any.time ==1.9.3,
- any.time-compat ==1.9.6.1,
- time-compat -old-locale,
- any.timeit ==2.0,
- any.transformers ==0.5.6.2,
- any.transformers-compat ==0.7.1,
- transformers-compat -five +five-three -four +generic-deriving +mtl -three -two,
- any.uglymemo ==0.1.0.1,
- any.unbounded-delays ==0.1.1.1,
- any.unix ==2.7.2.2,
- any.unordered-containers ==0.2.17.0,
- unordered-containers -debug,
- any.utf8-string ==1.0.2,
- any.uuid-types ==1.0.5,
- any.vector ==0.12.3.1,
- vector +boundschecks -internalchecks -unsafechecks -wall,
- any.wcwidth ==0.0.2,
- wcwidth -cli +split-base,
- any.witherable ==0.4.2
-index-state: hackage.haskell.org 2022-03-16T08:39:25Z
diff --git a/testing/hledger-stockquotes/APKBUILD b/testing/hledger-stockquotes/APKBUILD
deleted file mode 100644
index 98a4b2cff7c..00000000000
--- a/testing/hledger-stockquotes/APKBUILD
+++ /dev/null
@@ -1,40 +0,0 @@
-# Contributor: Dhruvin Gandhi <contact@dhruvin.dev>
-# Maintainer: Dhruvin Gandhi <contact@dhruvin.dev>
-pkgname=hledger-stockquotes
-pkgver=0.1.2.0
-pkgrel=0
-pkgdesc="hledger addon that pulls historical stock prices for commodities"
-url="https://github.com/prikhi/hledger-stockquotes#readme"
-arch="x86_64" # limited by GHC
-license="BSD-3-Clause"
-makedepends="ghc cabal libffi-dev zlib-dev"
-source="https://hackage.haskell.org/package/hledger-stockquotes-$pkgver/hledger-stockquotes-$pkgver.tar.gz
- cabal.project.freeze"
-
-export CABAL_DIR="$srcdir"/cabal
-
-prepare() {
- default_prepare
- cp "$srcdir"/cabal.project.freeze .
-}
-
-build() {
- cabal update
- cabal build --prefix=/usr --enable-relocatable
-}
-
-check() {
- cabal test
-}
-
-package() {
- local ghcver=$(ghc --version | cut -d " " -f 8)
- install -Dm755 \
- "dist-newstyle/build/$arch-linux/ghc-$ghcver/$pkgname-$pkgver/x/$pkgname/build/$pkgname/$pkgname" \
- "$pkgdir"/usr/bin/$pkgname
-}
-
-sha512sums="
-20c49178305bc4da611df25aaf4e37b68d33a21f1092e1efb5c36b1d510ccab58bc8136e9cdb5082edf0bf19d0027ede1bb28c31c548af94ad30f9209f89fa5b hledger-stockquotes-0.1.2.0.tar.gz
-8e92de58c9ac797d6a26b4c082c2ffa5d71b3104cd11d362b032dc9d7c7b21a7d23cef8ed0ba755717940304be87e24d3933af226a3f5bbd7690ca174f685d23 cabal.project.freeze
-"
diff --git a/testing/hledger-stockquotes/cabal.project.freeze b/testing/hledger-stockquotes/cabal.project.freeze
deleted file mode 100644
index 867151e01ab..00000000000
--- a/testing/hledger-stockquotes/cabal.project.freeze
+++ /dev/null
@@ -1,241 +0,0 @@
-active-repositories: hackage.haskell.org:merge
-constraints: any.Cabal ==3.4.0.0,
- any.Decimal ==0.5.2,
- any.Glob ==0.10.2,
- any.Only ==0.1,
- any.QuickCheck ==2.14.2,
- QuickCheck -old-random +templatehaskell,
- any.RSA ==2.4.1,
- any.SHA ==1.6.4.4,
- SHA -exe,
- any.StateVar ==1.2.2,
- any.aeson ==1.5.6.0,
- aeson -bytestring-builder -cffi -developer -fast,
- any.aeson-pretty ==0.8.9,
- aeson-pretty -lib-only,
- any.ansi-terminal ==0.11.1,
- ansi-terminal -example,
- any.ansi-wl-pprint ==0.6.9,
- ansi-wl-pprint -example,
- any.appar ==0.1.8,
- any.array ==0.5.4.0,
- any.asn1-encoding ==0.9.6,
- any.asn1-parse ==0.9.5,
- any.asn1-types ==0.3.4,
- any.assoc ==1.0.2,
- any.async ==2.2.4,
- async -bench,
- any.attoparsec ==0.14.4,
- attoparsec -developer,
- any.attoparsec-iso8601 ==1.0.2.1,
- attoparsec-iso8601 -developer -fast,
- any.authenticate-oauth ==1.7,
- any.barbies ==2.0.3.1,
- any.base ==4.15.0.0,
- any.base-compat ==0.12.1,
- any.base-compat-batteries ==0.12.1,
- any.base-orphans ==0.8.6,
- any.base64-bytestring ==1.2.1.0,
- any.basement ==0.0.14,
- any.bifunctors ==5.5.11,
- bifunctors +semigroups +tagged,
- any.binary ==0.8.8.0,
- any.blaze-builder ==0.4.2.2,
- any.blaze-markup ==0.8.2.8,
- any.byteorder ==1.0.4,
- any.bytestring ==0.10.12.1,
- any.cabal-doctest ==1.0.9,
- any.call-stack ==0.4.0,
- any.case-insensitive ==1.2.1.0,
- any.cassava ==0.5.2.0,
- cassava -bytestring--lt-0_10_4,
- any.cassava-megaparsec ==2.0.4,
- cassava-megaparsec -dev,
- any.cereal ==0.5.8.2,
- cereal -bytestring-builder,
- any.clock ==0.8.3,
- clock -llvm,
- any.cmdargs ==0.10.21,
- cmdargs +quotation -testprog,
- any.colour ==2.3.6,
- any.comonad ==5.0.8,
- comonad +containers +distributive +indexed-traversable,
- any.concurrent-output ==1.10.15,
- any.conduit ==1.3.4.2,
- any.connection ==0.3.1,
- any.constraints ==0.13.3,
- any.containers ==0.6.4.1,
- any.contravariant ==1.5.5,
- contravariant +semigroups +statevar +tagged,
- any.cookie ==0.4.5,
- any.crypto-api ==0.13.3,
- crypto-api -all_cpolys,
- any.crypto-pubkey-types ==0.4.3,
- any.cryptonite ==0.30,
- cryptonite -check_alignment +integer-gmp -old_toolchain_inliner +support_aesni +support_deepseq -support_pclmuldq +support_rdrand -support_sse +use_target_attributes,
- any.csv ==0.1.2,
- any.data-default ==0.7.1.1,
- any.data-default-class ==0.1.2.0,
- any.data-default-instances-containers ==0.0.1,
- any.data-default-instances-dlist ==0.0.1,
- any.data-default-instances-old-locale ==0.0.1,
- any.data-fix ==0.3.2,
- any.deepseq ==1.4.5.0,
- any.directory ==1.3.6.1,
- any.distributive ==0.6.2.1,
- distributive +semigroups +tagged,
- any.dlist ==1.0,
- dlist -werror,
- any.doclayout ==0.3.1.1,
- any.emojis ==0.1.2,
- any.entropy ==0.4.1.7,
- entropy -halvm,
- any.erf ==2.0.0.0,
- any.exceptions ==0.10.4,
- any.extra ==1.7.10,
- any.file-embed ==0.0.15.0,
- any.filepath ==1.4.2.1,
- any.ghc-bignum ==1.0,
- any.ghc-boot-th ==9.0.1,
- any.ghc-prim ==0.7.0,
- any.happy ==1.20.0,
- any.hashable ==1.3.5.0,
- hashable +integer-gmp -random-initial-seed,
- any.hashtables ==1.2.4.2,
- hashtables -bounds-checking -debug -detailed-profiling -portable -sse42 +unsafe-tricks,
- any.haskell-lexer ==1.1,
- any.hedgehog ==1.1.1,
- any.hledger-lib ==1.25,
- any.hourglass ==0.2.12,
- any.hsc2hs ==0.68.8,
- hsc2hs -in-ghc-tree,
- any.html ==1.0.1.2,
- any.http-api-data ==0.4.3,
- http-api-data -use-text-show,
- any.http-client ==0.7.11,
- http-client +network-uri,
- any.http-client-tls ==0.3.6.1,
- any.http-types ==0.12.3,
- any.indexed-traversable ==0.1.2,
- any.integer-gmp ==1.1,
- any.integer-logarithms ==1.0.3.1,
- integer-logarithms -check-bounds +integer-gmp,
- any.iproute ==1.7.12,
- any.libyaml ==0.1.2,
- libyaml -no-unicode -system-libyaml,
- any.lifted-async ==0.10.2.2,
- any.lifted-base ==0.2.3.12,
- any.megaparsec ==9.2.0,
- megaparsec -dev,
- any.memory ==0.17.0,
- memory +support_bytestring +support_deepseq,
- any.microlens ==0.4.12.0,
- any.microlens-th ==0.4.3.10,
- any.mime-types ==0.1.0.9,
- any.mmorph ==1.2.0,
- any.modern-uri ==0.3.4.3,
- modern-uri -dev,
- any.monad-control ==1.0.3.1,
- any.mono-traversable ==1.0.15.3,
- any.mtl ==2.2.2,
- any.mtl-compat ==0.2.2,
- mtl-compat -two-point-one -two-point-two,
- any.network ==3.1.2.7,
- network -devel,
- any.network-uri ==2.6.4.1,
- any.old-locale ==1.0.0.7,
- any.optparse-applicative ==0.17.0.0,
- optparse-applicative +process,
- any.parsec ==3.1.14.0,
- any.parser-combinators ==1.3.0,
- parser-combinators -dev,
- any.pem ==0.2.4,
- any.pretty ==1.1.3.6,
- any.pretty-show ==1.10,
- any.pretty-simple ==4.0.0.0,
- pretty-simple -buildexample -buildexe,
- any.prettyprinter ==1.7.1,
- prettyprinter -buildreadme +text,
- any.prettyprinter-ansi-terminal ==1.1.3,
- any.primitive ==0.7.3.0,
- any.process ==1.6.11.0,
- any.profunctors ==5.6.2,
- any.random ==1.2.1,
- any.raw-strings-qq ==1.1,
- any.reflection ==2.1.6,
- reflection -slow +template-haskell,
- any.regex-base ==0.94.0.2,
- any.regex-tdfa ==1.3.1.2,
- regex-tdfa -force-o2,
- any.req ==3.10.0,
- req -dev,
- any.resourcet ==1.2.4.3,
- any.retry ==0.9.2.0,
- retry -lib-werror,
- any.rts ==1.0,
- any.safe ==0.3.19,
- any.safe-exceptions ==0.1.7.2,
- any.scientific ==0.3.7.0,
- scientific -bytestring-builder -integer-simple,
- any.socks ==0.6.1,
- any.split ==0.2.3.4,
- any.splitmix ==0.1.0.4,
- splitmix -optimised-mixer,
- any.stm ==2.5.0.0,
- any.streaming-commons ==0.2.2.4,
- streaming-commons -use-bytestring-builder,
- any.strict ==0.4.0.1,
- strict +assoc,
- any.tabular ==0.2.2.8,
- any.tagged ==0.8.6.1,
- tagged +deepseq +transformers,
- any.tasty ==1.4.2.1,
- tasty +clock +unix,
- any.tasty-hedgehog ==1.2.0.0,
- any.tasty-hunit ==0.10.0.3,
- any.template-haskell ==2.17.0.0,
- any.terminal-size ==0.3.2.1,
- any.text ==1.2.4.1,
- any.text-short ==0.1.5,
- text-short -asserts,
- any.th-abstraction ==0.4.3.0,
- any.th-compat ==0.1.3,
- any.these ==1.1.1.1,
- these +assoc,
- any.time ==1.9.3,
- any.time-compat ==1.9.6.1,
- time-compat -old-locale,
- any.timeit ==2.0,
- any.tls ==1.5.7,
- tls +compat -hans +network,
- any.transformers ==0.5.6.2,
- any.transformers-base ==0.4.6,
- transformers-base +orphaninstances,
- any.transformers-compat ==0.7.1,
- transformers-compat -five +five-three -four +generic-deriving +mtl -three -two,
- any.type-equality ==1,
- any.uglymemo ==0.1.0.1,
- any.unbounded-delays ==0.1.1.1,
- any.unix ==2.7.2.2,
- any.unliftio-core ==0.2.0.1,
- any.unordered-containers ==0.2.17.0,
- unordered-containers -debug,
- any.utf8-string ==1.0.2,
- any.uuid-types ==1.0.5,
- any.vector ==0.12.3.1,
- vector +boundschecks -internalchecks -unsafechecks -wall,
- any.vector-algorithms ==0.8.0.4,
- vector-algorithms +bench +boundschecks -internalchecks -llvm +properties -unsafechecks,
- any.wcwidth ==0.0.2,
- wcwidth -cli +split-base,
- any.wl-pprint-annotated ==0.1.0.1,
- any.x509 ==1.7.6,
- any.x509-store ==1.6.9,
- any.x509-system ==1.6.7,
- any.x509-validation ==1.6.12,
- any.xdg-basedir ==0.2.2,
- any.yaml ==0.11.8.0,
- yaml +no-examples +no-exe,
- any.zlib ==0.6.2.3,
- zlib -bundled-c-zlib -non-blocking-ffi -pkg-config
-index-state: hackage.haskell.org 2022-03-16T03:34:46Z
diff --git a/testing/hledger-ui/APKBUILD b/testing/hledger-ui/APKBUILD
deleted file mode 100644
index c2bb04a653e..00000000000
--- a/testing/hledger-ui/APKBUILD
+++ /dev/null
@@ -1,42 +0,0 @@
-# Contributor: Dhruvin Gandhi <contact@dhruvin.dev>
-# Maintainer: Dhruvin Gandhi <contact@dhruvin.dev>
-pkgname=hledger-ui
-pkgver=1.25
-pkgrel=0
-pkgdesc="Curses-style terminal interface for the hledger accounting system"
-url="https://hledger.org/hledger-ui.html"
-arch="x86_64" # limited by ghc
-license="GPL-3.0-only"
-makedepends="ghc cabal libffi-dev ncurses-dev"
-subpackages="$pkgname-doc"
-source="https://hackage.haskell.org/package/hledger-ui-$pkgver/hledger-ui-$pkgver.tar.gz
- cabal.project.freeze"
-
-export CABAL_DIR="$srcdir"/cabal
-
-prepare() {
- default_prepare
- cp "$srcdir"/cabal.project.freeze .
-}
-
-build() {
- cabal update
- cabal build --prefix=/usr --enable-relocatable
-}
-
-check() {
- cabal test
-}
-
-package() {
- local ghcver=$(ghc --version | cut -d " " -f 8)
- install -Dm755 \
- "dist-newstyle/build/$arch-linux/ghc-$ghcver/$pkgname-$pkgver/x/$pkgname/build/$pkgname/$pkgname" \
- "$pkgdir"/usr/bin/$pkgname
- install -Dm644 $pkgname.1 "$pkgdir"/usr/share/man/man1/$pkgname.1
-}
-
-sha512sums="
-100febd118e7ad538d82e215d7413aac1b8b914fcb8be1bc6a26c311d9d2ba2accad187ffa3bdc623c448e9c36ba5dcf81a86db139541fbc33abba3557dd8f62 hledger-ui-1.25.tar.gz
-f8b6a642cca9daa9befa39a774b7aa9eae4aaf31b30278be277fa73f1599d433cd5d85525f051bc2c7317ff1fb74f2dc05aec00a35baa8e8e79bf7c086aad40c cabal.project.freeze
-"
diff --git a/testing/hledger-ui/cabal.project.freeze b/testing/hledger-ui/cabal.project.freeze
deleted file mode 100644
index 2bc18211989..00000000000
--- a/testing/hledger-ui/cabal.project.freeze
+++ /dev/null
@@ -1,199 +0,0 @@
-active-repositories: hackage.haskell.org:merge
-constraints: any.Cabal ==3.4.0.0,
- any.Decimal ==0.5.2,
- any.Diff ==0.4.1,
- any.Glob ==0.10.2,
- any.OneTuple ==0.3.1,
- any.Only ==0.1,
- any.QuickCheck ==2.14.2,
- QuickCheck -old-random +templatehaskell,
- any.StateVar ==1.2.2,
- any.aeson ==2.0.3.0,
- aeson -cffi +ordered-keymap,
- any.aeson-pretty ==0.8.9,
- aeson-pretty -lib-only,
- any.ansi-terminal ==0.11.1,
- ansi-terminal -example,
- any.ansi-wl-pprint ==0.6.9,
- ansi-wl-pprint -example,
- any.array ==0.5.4.0,
- any.assoc ==1.0.2,
- any.async ==2.2.4,
- async -bench,
- any.attoparsec ==0.14.4,
- attoparsec -developer,
- any.base ==4.15.0.0,
- any.base-compat ==0.12.1,
- any.base-compat-batteries ==0.12.1,
- any.base-orphans ==0.8.6,
- any.bifunctors ==5.5.11,
- bifunctors +semigroups +tagged,
- any.binary ==0.8.8.0,
- any.blaze-builder ==0.4.2.2,
- any.blaze-html ==0.9.1.2,
- any.blaze-markup ==0.8.2.8,
- any.brick ==0.67,
- brick -demos,
- any.bytestring ==0.10.12.1,
- any.cabal-doctest ==1.0.9,
- any.call-stack ==0.4.0,
- any.case-insensitive ==1.2.1.0,
- any.cassava ==0.5.2.0,
- cassava -bytestring--lt-0_10_4,
- any.cassava-megaparsec ==2.0.4,
- cassava-megaparsec -dev,
- any.clock ==0.8.3,
- clock -llvm,
- any.cmdargs ==0.10.21,
- cmdargs +quotation -testprog,
- any.colour ==2.3.6,
- any.comonad ==5.0.8,
- comonad +containers +distributive +indexed-traversable,
- any.config-ini ==0.2.4.0,
- config-ini -enable-doctests,
- any.constraints ==0.13.3,
- any.containers ==0.6.4.1,
- any.contravariant ==1.5.5,
- contravariant +semigroups +statevar +tagged,
- any.control-monad-free ==0.6.2,
- any.csv ==0.1.2,
- any.data-clist ==0.2,
- any.data-default ==0.7.1.1,
- any.data-default-class ==0.1.2.0,
- any.data-default-instances-containers ==0.0.1,
- any.data-default-instances-dlist ==0.0.1,
- any.data-default-instances-old-locale ==0.0.1,
- any.data-fix ==0.3.2,
- any.deepseq ==1.4.5.0,
- any.directory ==1.3.6.1,
- any.distributive ==0.6.2.1,
- distributive +semigroups +tagged,
- any.dlist ==1.0,
- dlist -werror,
- any.doclayout ==0.3.1.1,
- any.emojis ==0.1.2,
- any.enclosed-exceptions ==1.0.3,
- any.exceptions ==0.10.4,
- any.extra ==1.7.10,
- any.file-embed ==0.0.15.0,
- any.filepath ==1.4.2.1,
- any.fsnotify ==0.3.0.1,
- any.ghc-bignum ==1.0,
- any.ghc-bignum-orphans ==0.1.1,
- any.ghc-boot-th ==9.0.1,
- any.ghc-prim ==0.7.0,
- any.githash ==0.1.6.2,
- any.hashable ==1.4.0.2,
- hashable +containers +integer-gmp -random-initial-seed,
- any.hashtables ==1.3,
- hashtables -bounds-checking -debug -detailed-profiling -portable -sse42 +unsafe-tricks,
- any.haskeline ==0.8.1.0,
- any.hinotify ==0.4.1,
- any.hledger ==1.25,
- hledger +terminfo +threaded,
- any.hledger-lib ==1.25,
- hledger-ui +threaded,
- any.html ==1.0.1.2,
- any.indexed-traversable ==0.1.2,
- any.indexed-traversable-instances ==0.1.1,
- any.integer-logarithms ==1.0.3.1,
- integer-logarithms -check-bounds +integer-gmp,
- any.lifted-async ==0.10.2.2,
- any.lifted-base ==0.2.3.12,
- any.lucid ==2.11.0,
- any.math-functions ==0.3.4.2,
- math-functions +system-erf +system-expm1,
- any.megaparsec ==9.2.0,
- megaparsec -dev,
- any.microlens ==0.4.12.0,
- any.microlens-ghc ==0.4.13.1,
- any.microlens-mtl ==0.2.0.1,
- any.microlens-platform ==0.4.2.1,
- any.microlens-th ==0.4.3.10,
- any.mmorph ==1.2.0,
- any.monad-control ==1.0.3.1,
- any.mtl ==2.2.2,
- any.old-locale ==1.0.0.7,
- any.optparse-applicative ==0.17.0.0,
- optparse-applicative +process,
- any.parallel ==3.2.2.0,
- any.parsec ==3.1.14.0,
- any.parser-combinators ==1.3.0,
- parser-combinators -dev,
- any.pretty ==1.1.3.6,
- any.pretty-simple ==4.0.0.0,
- pretty-simple -buildexample -buildexe,
- any.prettyprinter ==1.7.1,
- prettyprinter -buildreadme +text,
- any.prettyprinter-ansi-terminal ==1.1.3,
- any.primitive ==0.7.3.0,
- any.process ==1.6.11.0,
- any.random ==1.2.1,
- any.regex-base ==0.94.0.2,
- any.regex-tdfa ==1.3.1.2,
- regex-tdfa -force-o2,
- any.rts ==1.0,
- any.safe ==0.3.19,
- any.scientific ==0.3.7.0,
- scientific -bytestring-builder -integer-simple,
- any.semialign ==1.2.0.1,
- semialign +semigroupoids,
- any.semigroupoids ==5.3.7,
- semigroupoids +comonad +containers +contravariant +distributive +tagged +unordered-containers,
- any.shakespeare ==2.0.26,
- shakespeare -test_coffee -test_export -test_roy,
- any.shelly ==1.10.0,
- shelly -build-examples -lifted,
- any.split ==0.2.3.4,
- any.splitmix ==0.1.0.4,
- splitmix -optimised-mixer,
- any.stm ==2.5.0.0,
- any.strict ==0.4.0.1,
- strict +assoc,
- any.tabular ==0.2.2.8,
- any.tagged ==0.8.6.1,
- tagged +deepseq +transformers,
- any.tasty ==1.4.2.1,
- tasty +clock +unix,
- any.tasty-hunit ==0.10.0.3,
- any.template-haskell ==2.17.0.0,
- any.temporary ==1.3,
- any.terminfo ==0.4.1.4,
- any.text ==1.2.4.1,
- any.text-short ==0.1.5,
- text-short -asserts,
- any.text-zipper ==0.11,
- any.th-abstraction ==0.4.3.0,
- any.th-compat ==0.1.3,
- any.th-lift ==0.8.2,
- any.these ==1.1.1.1,
- these +assoc,
- any.time ==1.9.3,
- any.time-compat ==1.9.6.1,
- time-compat -old-locale,
- any.timeit ==2.0,
- any.transformers ==0.5.6.2,
- any.transformers-base ==0.4.6,
- transformers-base +orphaninstances,
- any.transformers-compat ==0.7.1,
- transformers-compat -five +five-three -four +generic-deriving +mtl -three -two,
- any.type-equality ==1,
- any.uglymemo ==0.1.0.1,
- any.unbounded-delays ==0.1.1.1,
- any.unix ==2.7.2.2,
- any.unix-compat ==0.5.4,
- unix-compat -old-time,
- any.unordered-containers ==0.2.17.0,
- unordered-containers -debug,
- any.utf8-string ==1.0.2,
- any.utility-ht ==0.0.16,
- any.uuid-types ==1.0.5,
- any.vector ==0.12.3.1,
- vector +boundschecks -internalchecks -unsafechecks -wall,
- any.vty ==5.34,
- any.wcwidth ==0.0.2,
- wcwidth -cli +split-base,
- any.witherable ==0.4.2,
- any.wizards ==1.0.3,
- any.word-wrap ==0.5
-index-state: hackage.haskell.org 2022-03-07T06:09:05Z
diff --git a/testing/hledger-web/APKBUILD b/testing/hledger-web/APKBUILD
deleted file mode 100644
index eae27422288..00000000000
--- a/testing/hledger-web/APKBUILD
+++ /dev/null
@@ -1,46 +0,0 @@
-# Contributor: Dhruvin Gandhi <contact@dhruvin.dev>
-# Maintainer: Dhruvin Gandhi <contact@dhruvin.dev>
-pkgname=hledger-web
-pkgver=1.25
-pkgrel=0
-pkgdesc="Web interface for the hledger accounting system"
-url="https://hledger.org/hledger-web.html"
-arch="x86_64" # limited by ghc
-license="GPL-3.0-only"
-makedepends="ghc cabal libffi-dev ncurses-dev zlib-dev"
-subpackages="$pkgname-doc $pkgname-openrc"
-source="https://hackage.haskell.org/package/hledger-web-$pkgver/hledger-web-$pkgver.tar.gz
- cabal.project.freeze
- hledger-web.initd"
-install="$pkgname.pre-install"
-
-export CABAL_DIR="$srcdir"/cabal
-
-prepare() {
- default_prepare
- cp "$srcdir"/cabal.project.freeze .
-}
-
-build() {
- cabal update
- cabal build --prefix=/usr --enable-relocatable
-}
-
-check() {
- cabal test
-}
-
-package() {
- local ghcver=$(ghc --version | cut -d " " -f 8)
- install -Dm755 \
- "dist-newstyle/build/$arch-linux/ghc-$ghcver/$pkgname-$pkgver/x/$pkgname/build/$pkgname/$pkgname" \
- "$pkgdir"/usr/bin/$pkgname
- install -Dm644 $pkgname.1 "$pkgdir"/usr/share/man/man1/$pkgname.1
- install -Dm755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
-}
-
-sha512sums="
-4be48eb2ba57f3f2e183c27bf6689c9b28d4028e194fcd6c400545d7e2119703cc947a8deaaa0b3a9d07668fda09e78744305f5138d5204330399ce557d4ca4f hledger-web-1.25.tar.gz
-5280a5348b6753d2d10a39171eb24af8acf353b5c5ae1d280eba188ed878d9e3138cf0880f5b7db55f30795c18414237d9b08af1887ae6dd4ae1f963a3e05350 cabal.project.freeze
-4fd0898b29736c1d7f5b41b1ccca8734f38999e5ba88656e092724a7ce4ed346b4f86d627c99be77934eaa7cd86e33ce20a33a60650f1ad8a527c57387179365 hledger-web.initd
-"
diff --git a/testing/hledger-web/cabal.project.freeze b/testing/hledger-web/cabal.project.freeze
deleted file mode 100644
index b210cf383ce..00000000000
--- a/testing/hledger-web/cabal.project.freeze
+++ /dev/null
@@ -1,331 +0,0 @@
-active-repositories: hackage.haskell.org:merge
-constraints: any.Cabal ==3.4.0.0,
- any.Decimal ==0.5.2,
- any.Diff ==0.4.1,
- any.Glob ==0.10.2,
- any.HUnit ==1.6.2.0,
- any.OneTuple ==0.3.1,
- any.Only ==0.1,
- any.QuickCheck ==2.14.2,
- QuickCheck -old-random +templatehaskell,
- any.StateVar ==1.2.2,
- any.aeson ==2.0.3.0,
- aeson -cffi +ordered-keymap,
- any.aeson-pretty ==0.8.9,
- aeson-pretty -lib-only,
- any.alex ==3.2.7.1,
- any.ansi-terminal ==0.11.1,
- ansi-terminal -example,
- any.ansi-wl-pprint ==0.6.9,
- ansi-wl-pprint -example,
- any.appar ==0.1.8,
- any.array ==0.5.4.0,
- any.asn1-encoding ==0.9.6,
- any.asn1-parse ==0.9.5,
- any.asn1-types ==0.3.4,
- any.assoc ==1.0.2,
- any.async ==2.2.4,
- async -bench,
- any.attoparsec ==0.14.4,
- attoparsec -developer,
- any.attoparsec-iso8601 ==1.0.2.1,
- attoparsec-iso8601 -developer -fast,
- any.auto-update ==0.1.6,
- any.base ==4.15.0.0,
- any.base-compat ==0.12.1,
- any.base-compat-batteries ==0.12.1,
- any.base-orphans ==0.8.6,
- any.base-unicode-symbols ==0.2.4.2,
- base-unicode-symbols +base-4-8 -old-base,
- any.base64 ==0.4.2.3,
- any.base64-bytestring ==1.2.1.0,
- any.basement ==0.0.14,
- any.bifunctors ==5.5.11,
- bifunctors +semigroups +tagged,
- any.binary ==0.8.8.0,
- any.blaze-builder ==0.4.2.2,
- any.blaze-html ==0.9.1.2,
- any.blaze-markup ==0.8.2.8,
- any.bsb-http-chunked ==0.0.0.4,
- any.byteable ==0.1.1,
- any.byteorder ==1.0.4,
- any.bytestring ==0.10.12.1,
- any.cabal-doctest ==1.0.9,
- any.call-stack ==0.4.0,
- any.case-insensitive ==1.2.1.0,
- any.cassava ==0.5.2.0,
- cassava -bytestring--lt-0_10_4,
- any.cassava-megaparsec ==2.0.4,
- cassava-megaparsec -dev,
- any.cereal ==0.5.8.2,
- cereal -bytestring-builder,
- any.cipher-aes ==0.2.11,
- cipher-aes +support_aesni,
- any.clientsession ==0.9.1.2,
- clientsession -test,
- any.clock ==0.8.3,
- clock -llvm,
- any.cmdargs ==0.10.21,
- cmdargs +quotation -testprog,
- any.colour ==2.3.6,
- any.comonad ==5.0.8,
- comonad +containers +distributive +indexed-traversable,
- any.conduit ==1.3.4.2,
- any.conduit-extra ==1.3.5,
- any.connection ==0.3.1,
- any.containers ==0.6.4.1,
- any.contravariant ==1.5.5,
- contravariant +semigroups +statevar +tagged,
- any.control-monad-free ==0.6.2,
- any.cookie ==0.4.5,
- any.cprng-aes ==0.6.1,
- any.crypto-api ==0.13.3,
- crypto-api -all_cpolys,
- any.crypto-cipher-types ==0.0.9,
- any.crypto-random ==0.0.9,
- any.cryptonite ==0.29,
- cryptonite -check_alignment +integer-gmp -old_toolchain_inliner +support_aesni +support_deepseq -support_pclmuldq +support_rdrand -support_sse +use_target_attributes,
- any.cryptonite-conduit ==0.2.2,
- any.css-text ==0.1.3.0,
- any.csv ==0.1.2,
- any.data-default ==0.7.1.1,
- any.data-default-class ==0.1.2.0,
- any.data-default-instances-containers ==0.0.1,
- any.data-default-instances-dlist ==0.0.1,
- any.data-default-instances-old-locale ==0.0.1,
- any.data-fix ==0.3.2,
- any.deepseq ==1.4.5.0,
- any.directory ==1.3.6.1,
- any.distributive ==0.6.2.1,
- distributive +semigroups +tagged,
- any.dlist ==1.0,
- dlist -werror,
- any.doclayout ==0.3.1.1,
- any.easy-file ==0.2.2,
- any.email-validate ==2.3.2.15,
- any.emojis ==0.1.2,
- any.entropy ==0.4.1.7,
- entropy -halvm,
- any.exceptions ==0.10.4,
- any.extra ==1.7.10,
- any.fast-logger ==3.1.1,
- any.file-embed ==0.0.15.0,
- any.filepath ==1.4.2.1,
- any.ghc ==9.0.1,
- any.ghc-bignum ==1.0,
- any.ghc-bignum-orphans ==0.1.1,
- any.ghc-boot ==9.0.1,
- any.ghc-boot-th ==9.0.1,
- any.ghc-byteorder ==4.11.0.0.10,
- any.ghc-heap ==9.0.1,
- any.ghc-prim ==0.7.0,
- any.ghci ==9.0.1,
- any.githash ==0.1.6.2,
- any.happy ==1.20.0,
- any.hashable ==1.4.0.2,
- hashable +containers +integer-gmp -random-initial-seed,
- any.hashtables ==1.3,
- hashtables -bounds-checking -debug -detailed-profiling -portable -sse42 +unsafe-tricks,
- any.haskeline ==0.8.1.0,
- any.haskell-lexer ==1.1,
- any.hjsmin ==0.2.0.4,
- any.hledger ==1.25,
- hledger +terminfo +threaded,
- any.hledger-lib ==1.25,
- hledger-web -dev -library-only +threaded,
- any.hourglass ==0.2.12,
- any.hpc ==0.6.1.0,
- any.hsc2hs ==0.68.8,
- hsc2hs -in-ghc-tree,
- any.hspec ==2.9.4,
- any.hspec-core ==2.9.4,
- any.hspec-discover ==2.9.4,
- any.hspec-expectations ==0.8.2,
- any.html ==1.0.1.2,
- any.html-conduit ==1.3.2.2,
- any.http-api-data ==0.4.3,
- http-api-data -use-text-show,
- any.http-client ==0.7.11,
- http-client +network-uri,
- any.http-client-tls ==0.3.6.1,
- any.http-conduit ==2.3.8,
- http-conduit +aeson,
- any.http-date ==0.0.11,
- any.http-types ==0.12.3,
- any.http2 ==3.0.3,
- http2 -devel -doc -h2spec,
- any.indexed-traversable ==0.1.2,
- any.indexed-traversable-instances ==0.1.1,
- any.integer-gmp ==1.1,
- any.integer-logarithms ==1.0.3.1,
- integer-logarithms -check-bounds +integer-gmp,
- any.iproute ==1.7.12,
- any.language-javascript ==0.7.1.0,
- any.libyaml ==0.1.2,
- libyaml -no-unicode -system-libyaml,
- any.lift-type ==0.1.0.1,
- any.lifted-base ==0.2.3.12,
- any.lucid ==2.11.0,
- any.math-functions ==0.3.4.2,
- math-functions +system-erf +system-expm1,
- any.megaparsec ==9.2.0,
- megaparsec -dev,
- any.memory ==0.16.0,
- memory +support_basement +support_bytestring +support_deepseq +support_foundation,
- any.microlens ==0.4.12.0,
- any.microlens-th ==0.4.3.10,
- any.mime-types ==0.1.0.9,
- any.mmorph ==1.2.0,
- any.monad-control ==1.0.3.1,
- any.monad-logger ==0.3.36,
- monad-logger +template_haskell,
- any.monad-loops ==0.4.3,
- monad-loops +base4,
- any.mono-traversable ==1.0.15.3,
- any.mtl ==2.2.2,
- any.network ==3.1.2.7,
- network -devel,
- any.network-byte-order ==0.1.6,
- any.network-uri ==2.6.4.1,
- any.old-locale ==1.0.0.7,
- any.old-time ==1.1.0.3,
- any.optparse-applicative ==0.17.0.0,
- optparse-applicative +process,
- any.parsec ==3.1.14.0,
- any.parser-combinators ==1.3.0,
- parser-combinators -dev,
- any.path-pieces ==0.2.1,
- any.pem ==0.2.4,
- any.persistent ==2.13.3.0,
- any.persistent-template ==2.12.0.0,
- any.pretty ==1.1.3.6,
- any.pretty-show ==1.10,
- any.pretty-simple ==4.0.0.0,
- pretty-simple -buildexample -buildexe,
- any.prettyprinter ==1.7.1,
- prettyprinter -buildreadme +text,
- any.prettyprinter-ansi-terminal ==1.1.3,
- any.primitive ==0.7.3.0,
- any.process ==1.6.11.0,
- any.psqueues ==0.2.7.3,
- any.quickcheck-io ==0.2.0,
- any.random ==1.2.1,
- any.regex-base ==0.94.0.2,
- any.regex-tdfa ==1.3.1.2,
- regex-tdfa -force-o2,
- any.resource-pool ==0.2.3.2,
- resource-pool -developer,
- any.resourcet ==1.2.4.3,
- any.rts ==1.0,
- any.safe ==0.3.19,
- any.scientific ==0.3.7.0,
- scientific -bytestring-builder -integer-simple,
- any.securemem ==0.1.10,
- any.semialign ==1.2.0.1,
- semialign +semigroupoids,
- any.semigroupoids ==5.3.7,
- semigroupoids +comonad +containers +contravariant +distributive +tagged +unordered-containers,
- any.setenv ==0.1.1.3,
- any.shakespeare ==2.0.26,
- shakespeare -test_coffee -test_export -test_roy,
- any.silently ==1.2.5.2,
- any.simple-sendfile ==0.2.30,
- simple-sendfile +allow-bsd,
- any.skein ==1.0.9.4,
- skein -big-endian -force-endianness -reference,
- any.socks ==0.6.1,
- any.split ==0.2.3.4,
- any.splitmix ==0.1.0.4,
- splitmix -optimised-mixer,
- any.stm ==2.5.0.0,
- any.stm-chans ==3.0.0.6,
- any.streaming-commons ==0.2.2.4,
- streaming-commons -use-bytestring-builder,
- any.strict ==0.4.0.1,
- strict +assoc,
- any.tabular ==0.2.2.8,
- any.tagged ==0.8.6.1,
- tagged +deepseq +transformers,
- any.tagsoup ==0.14.8,
- any.tasty ==1.4.2.1,
- tasty +clock +unix,
- any.tasty-hunit ==0.10.0.3,
- any.template-haskell ==2.17.0.0,
- any.temporary ==1.3,
- any.terminfo ==0.4.1.4,
- any.text ==1.2.4.1,
- any.text-short ==0.1.5,
- text-short -asserts,
- any.tf-random ==0.5,
- any.th-abstraction ==0.4.3.0,
- any.th-compat ==0.1.3,
- any.th-lift ==0.8.2,
- any.th-lift-instances ==0.1.19,
- any.these ==1.1.1.1,
- these +assoc,
- any.time ==1.9.3,
- any.time-compat ==1.9.6.1,
- time-compat -old-locale,
- any.time-manager ==0.0.0,
- any.timeit ==2.0,
- any.tls ==1.5.7,
- tls +compat -hans +network,
- any.transformers ==0.5.6.2,
- any.transformers-base ==0.4.6,
- transformers-base +orphaninstances,
- any.transformers-compat ==0.7.1,
- transformers-compat -five +five-three -four +generic-deriving +mtl -three -two,
- any.typed-process ==0.2.8.0,
- any.uglymemo ==0.1.0.1,
- any.unbounded-delays ==0.1.1.1,
- any.unix ==2.7.2.2,
- any.unix-compat ==0.5.4,
- unix-compat -old-time,
- any.unix-time ==0.4.7,
- any.unliftio ==0.2.21.0,
- any.unliftio-core ==0.2.0.1,
- any.unordered-containers ==0.2.17.0,
- unordered-containers -debug,
- any.utf8-string ==1.0.2,
- any.utility-ht ==0.0.16,
- any.uuid-types ==1.0.5,
- any.vault ==0.3.1.5,
- vault +useghc,
- any.vector ==0.12.3.1,
- vector +boundschecks -internalchecks -unsafechecks -wall,
- any.vector-algorithms ==0.8.0.4,
- vector-algorithms +bench +boundschecks -internalchecks -llvm +properties -unsafechecks,
- any.wai ==3.2.3,
- any.wai-app-static ==3.1.7.3,
- wai-app-static +cryptonite -print,
- any.wai-cors ==0.2.7,
- any.wai-extra ==3.1.8,
- wai-extra -build-example,
- any.wai-handler-launch ==3.0.3.1,
- any.wai-logger ==2.4.0,
- any.warp ==3.3.19,
- warp +allow-sendfilefd -network-bytestring -warp-debug,
- any.wcwidth ==0.0.2,
- wcwidth -cli +split-base,
- any.witherable ==0.4.2,
- any.wizards ==1.0.3,
- any.word8 ==0.1.3,
- any.x509 ==1.7.6,
- any.x509-store ==1.6.9,
- any.x509-system ==1.6.7,
- any.x509-validation ==1.6.12,
- any.xml-conduit ==1.9.1.1,
- any.xml-types ==0.3.8,
- any.xss-sanitize ==0.3.7,
- any.yaml ==0.11.8.0,
- yaml +no-examples +no-exe,
- any.yesod ==1.6.2,
- any.yesod-core ==1.6.21.0,
- any.yesod-form ==1.7.0,
- yesod-form +network-uri,
- any.yesod-persistent ==1.6.0.7,
- any.yesod-static ==1.6.1.0,
- any.yesod-test ==1.6.12,
- any.zlib ==0.6.2.3,
- zlib -bundled-c-zlib -non-blocking-ffi -pkg-config
-index-state: hackage.haskell.org 2022-03-07T06:09:05Z
diff --git a/testing/hledger-web/hledger-web.initd b/testing/hledger-web/hledger-web.initd
deleted file mode 100644
index 9373ec1bf60..00000000000
--- a/testing/hledger-web/hledger-web.initd
+++ /dev/null
@@ -1,22 +0,0 @@
-#!/sbin/openrc-run
-
-name=hledger-web
-command="/usr/bin/$name"
-command_args="${command_args:---serve}"
-command_background="yes"
-command_user="hledger"
-pidfile="/run/$name.pid"
-output_log="/var/log/$name"
-error_log="$output_log"
-
-depend() {
- need net
- after firewall
-}
-
-start_pre() {
- checkpath -F -o $command_user:$command_user \
- /var/log/$name
- checkpath -f -o $command_user:$command_user \
- /var/lib/hledger/.hledger.journal
-}
diff --git a/testing/hledger-web/hledger-web.pre-install b/testing/hledger-web/hledger-web.pre-install
deleted file mode 100644
index 4d51b873ab3..00000000000
--- a/testing/hledger-web/hledger-web.pre-install
+++ /dev/null
@@ -1,6 +0,0 @@
-#!/bin/sh
-
-addgroup -S hledger 2>/dev/null
-adduser -S -D -H -h /var/lib/hledger -s /sbin/nologin -G hledger -g hledger hledger 2>/dev/null
-
-exit 0
diff --git a/testing/hledger/APKBUILD b/testing/hledger/APKBUILD
deleted file mode 100644
index 3e4f494f171..00000000000
--- a/testing/hledger/APKBUILD
+++ /dev/null
@@ -1,44 +0,0 @@
-# Contributor: Dhruvin Gandhi <contact@dhruvin.dev>
-# Maintainer: Dhruvin Gandhi <contact@dhruvin.dev>
-pkgname=hledger
-pkgver=1.25
-pkgrel=0
-pkgdesc="Command-line interface for the hledger accounting system"
-url="https://hledger.org/hledger.html"
-arch="x86_64" # limited by ghc
-license="GPL-3.0-only"
-makedepends="ghc cabal libffi-dev ncurses-dev"
-subpackages="$pkgname-doc $pkgname-bash-completion"
-source="https://hackage.haskell.org/package/hledger-$pkgver/hledger-$pkgver.tar.gz
- cabal.project.freeze"
-
-export CABAL_DIR="$srcdir"/cabal
-
-prepare() {
- default_prepare
- cp "$srcdir"/cabal.project.freeze .
-}
-
-build() {
- cabal update
- cabal build --prefix=/usr --enable-relocatable
-}
-
-check() {
- cabal test
-}
-
-package() {
- local ghcver=$(ghc --version | cut -d " " -f 8)
- install -Dm755 \
- "dist-newstyle/build/$arch-linux/ghc-$ghcver/$pkgname-$pkgver/x/$pkgname/build/$pkgname/$pkgname" \
- "$pkgdir"/usr/bin/$pkgname
- install -Dm644 $pkgname.1 "$pkgdir"/usr/share/man/man1/$pkgname.1
- install -Dm644 shell-completion/$pkgname-completion.bash \
- "$pkgdir"/usr/share/bash-completion/completions/$pkgname
-}
-
-sha512sums="
-3a82fe62cb24b4f0a6216a020153a59d43927cb2ae9e6a92c2c8ac7a69192d63c9c521e94adfe7c3505a23555b0e78a458988c34a53f1b5e896e38c41fa611b6 hledger-1.25.tar.gz
-41db5fede4ec858b6e7cf491925565250c910082ebdc46e4d304b1283fac56289232284d537f117f9a22558bb527087762c1f8381946e4cdc2c6a53d89fa7914 cabal.project.freeze
-"
diff --git a/testing/hledger/cabal.project.freeze b/testing/hledger/cabal.project.freeze
deleted file mode 100644
index 652183c04e7..00000000000
--- a/testing/hledger/cabal.project.freeze
+++ /dev/null
@@ -1,169 +0,0 @@
-active-repositories: hackage.haskell.org:merge
-constraints: any.Cabal ==3.4.0.0,
- any.Decimal ==0.5.2,
- any.Diff ==0.4.1,
- any.Glob ==0.10.2,
- any.OneTuple ==0.3.1,
- any.Only ==0.1,
- any.QuickCheck ==2.14.2,
- QuickCheck -old-random +templatehaskell,
- any.StateVar ==1.2.2,
- any.aeson ==2.0.3.0,
- aeson -cffi +ordered-keymap,
- any.aeson-pretty ==0.8.9,
- aeson-pretty -lib-only,
- any.ansi-terminal ==0.11.1,
- ansi-terminal -example,
- any.ansi-wl-pprint ==0.6.9,
- ansi-wl-pprint -example,
- any.array ==0.5.4.0,
- any.assoc ==1.0.2,
- any.attoparsec ==0.14.4,
- attoparsec -developer,
- any.base ==4.15.0.0,
- any.base-compat ==0.12.1,
- any.base-compat-batteries ==0.12.1,
- any.base-orphans ==0.8.6,
- any.bifunctors ==5.5.11,
- bifunctors +semigroups +tagged,
- any.binary ==0.8.8.0,
- any.blaze-builder ==0.4.2.2,
- any.blaze-html ==0.9.1.2,
- any.blaze-markup ==0.8.2.8,
- any.bytestring ==0.10.12.1,
- any.cabal-doctest ==1.0.9,
- any.call-stack ==0.4.0,
- any.case-insensitive ==1.2.1.0,
- any.cassava ==0.5.2.0,
- cassava -bytestring--lt-0_10_4,
- any.cassava-megaparsec ==2.0.4,
- cassava-megaparsec -dev,
- any.clock ==0.8.3,
- clock -llvm,
- any.cmdargs ==0.10.21,
- cmdargs +quotation -testprog,
- any.colour ==2.3.6,
- any.comonad ==5.0.8,
- comonad +containers +distributive +indexed-traversable,
- any.containers ==0.6.4.1,
- any.contravariant ==1.5.5,
- contravariant +semigroups +statevar +tagged,
- any.control-monad-free ==0.6.2,
- any.csv ==0.1.2,
- any.data-default ==0.7.1.1,
- any.data-default-class ==0.1.2.0,
- any.data-default-instances-containers ==0.0.1,
- any.data-default-instances-dlist ==0.0.1,
- any.data-default-instances-old-locale ==0.0.1,
- any.data-fix ==0.3.2,
- any.deepseq ==1.4.5.0,
- any.directory ==1.3.6.1,
- any.distributive ==0.6.2.1,
- distributive +semigroups +tagged,
- any.dlist ==1.0,
- dlist -werror,
- any.doclayout ==0.3.1.1,
- any.emojis ==0.1.2,
- any.exceptions ==0.10.4,
- any.extra ==1.7.10,
- any.file-embed ==0.0.15.0,
- any.filepath ==1.4.2.1,
- any.ghc-bignum ==1.0,
- any.ghc-bignum-orphans ==0.1.1,
- any.ghc-boot-th ==9.0.1,
- any.ghc-prim ==0.7.0,
- any.githash ==0.1.6.2,
- any.hashable ==1.4.0.2,
- hashable +containers +integer-gmp -random-initial-seed,
- any.hashtables ==1.3,
- hashtables -bounds-checking -debug -detailed-profiling -portable -sse42 +unsafe-tricks,
- any.haskeline ==0.8.1.0,
- hledger +terminfo +threaded,
- any.hledger-lib ==1.25,
- any.html ==1.0.1.2,
- any.indexed-traversable ==0.1.2,
- any.indexed-traversable-instances ==0.1.1,
- any.integer-logarithms ==1.0.3.1,
- integer-logarithms -check-bounds +integer-gmp,
- any.lucid ==2.11.0,
- any.math-functions ==0.3.4.2,
- math-functions +system-erf +system-expm1,
- any.megaparsec ==9.2.0,
- megaparsec -dev,
- any.microlens ==0.4.12.0,
- any.microlens-th ==0.4.3.10,
- any.mmorph ==1.2.0,
- any.mtl ==2.2.2,
- any.old-locale ==1.0.0.7,
- any.optparse-applicative ==0.17.0.0,
- optparse-applicative +process,
- any.parsec ==3.1.14.0,
- any.parser-combinators ==1.3.0,
- parser-combinators -dev,
- any.pretty ==1.1.3.6,
- any.pretty-simple ==4.0.0.0,
- pretty-simple -buildexample -buildexe,
- any.prettyprinter ==1.7.1,
- prettyprinter -buildreadme +text,
- any.prettyprinter-ansi-terminal ==1.1.3,
- any.primitive ==0.7.3.0,
- any.process ==1.6.11.0,
- any.random ==1.2.1,
- any.regex-base ==0.94.0.2,
- any.regex-tdfa ==1.3.1.2,
- regex-tdfa -force-o2,
- any.rts ==1.0,
- any.safe ==0.3.19,
- any.scientific ==0.3.7.0,
- scientific -bytestring-builder -integer-simple,
- any.semialign ==1.2.0.1,
- semialign +semigroupoids,
- any.semigroupoids ==5.3.7,
- semigroupoids +comonad +containers +contravariant +distributive +tagged +unordered-containers,
- any.shakespeare ==2.0.26,
- shakespeare -test_coffee -test_export -test_roy,
- any.split ==0.2.3.4,
- any.splitmix ==0.1.0.4,
- splitmix -optimised-mixer,
- any.stm ==2.5.0.0,
- any.strict ==0.4.0.1,
- strict +assoc,
- any.tabular ==0.2.2.8,
- any.tagged ==0.8.6.1,
- tagged +deepseq +transformers,
- any.tasty ==1.4.2.1,
- tasty +clock +unix,
- any.tasty-hunit ==0.10.0.3,
- any.template-haskell ==2.17.0.0,
- any.temporary ==1.3,
- any.terminfo ==0.4.1.4,
- any.text ==1.2.4.1,
- any.text-short ==0.1.5,
- text-short -asserts,
- any.th-abstraction ==0.4.3.0,
- any.th-compat ==0.1.3,
- any.th-lift ==0.8.2,
- any.these ==1.1.1.1,
- these +assoc,
- any.time ==1.9.3,
- any.time-compat ==1.9.6.1,
- time-compat -old-locale,
- any.timeit ==2.0,
- any.transformers ==0.5.6.2,
- any.transformers-compat ==0.7.1,
- transformers-compat -five +five-three -four +generic-deriving +mtl -three -two,
- any.uglymemo ==0.1.0.1,
- any.unbounded-delays ==0.1.1.1,
- any.unix ==2.7.2.2,
- any.unordered-containers ==0.2.17.0,
- unordered-containers -debug,
- any.utf8-string ==1.0.2,
- any.utility-ht ==0.0.16,
- any.uuid-types ==1.0.5,
- any.vector ==0.12.3.1,
- vector +boundschecks -internalchecks -unsafechecks -wall,
- any.wcwidth ==0.0.2,
- wcwidth -cli +split-base,
- any.witherable ==0.4.2,
- any.wizards ==1.0.3
-index-state: hackage.haskell.org 2022-03-07T06:09:05Z
diff --git a/testing/homebank/APKBUILD b/testing/homebank/APKBUILD
index 363e5d1a282..44f1ee82717 100644
--- a/testing/homebank/APKBUILD
+++ b/testing/homebank/APKBUILD
@@ -1,19 +1,22 @@
# Contributor: 7heo <7heo@mail.com>
-# Maintainer:
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=homebank
-pkgver=5.5.4
+pkgver=5.7.4
pkgrel=0
pkgdesc="Free personal finance software, money management"
url="http://homebank.free.fr"
arch="all"
license="GPL-2.0-or-later"
-makedepends="bash gtk+3.0-dev libsoup-dev libofx-dev intltool"
+makedepends="gtk+3.0-dev libsoup3-dev libofx-dev intltool"
options="!check" # no test suite
subpackages="$pkgname-lang"
-source="http://homebank.free.fr/public/homebank-$pkgver.tar.gz"
+source="http://homebank.free.fr/public/sources/homebank-$pkgver.tar.gz"
build() {
- ./configure --prefix=/usr
+ ./configure \
+ --host=$CHOST \
+ --build=$CBUILD \
+ --prefix=/usr
make
}
@@ -22,5 +25,5 @@ package() {
}
sha512sums="
-ae85fcc46ef8428a0dca865ec0b51532f4ada28a2515873f00802ac8894cc9ad1c93be64a587a5e119efe3c61436d7aabd1f90ee559af047ddf65c3b59bc066d homebank-5.5.4.tar.gz
+d65127b49a7566f5ad88feb8c614883c43e322ea50d915e49691b169771fac222573da4988ab1c54d9f39b9dfdf2d724cba07269e093c67a04900828d0b87093 homebank-5.7.4.tar.gz
"
diff --git a/testing/homer-app/0001-change-web-and-config-paths.patch b/testing/homer-app/0001-change-web-and-config-paths.patch
new file mode 100644
index 00000000000..ff41ded7d33
--- /dev/null
+++ b/testing/homer-app/0001-change-web-and-config-paths.patch
@@ -0,0 +1,89 @@
+From 57893a68cec83e6900f810980ea8b8296aa75ea3 Mon Sep 17 00:00:00 2001
+From: Leonardo Arena <rnalrd@alpinelinux.org>
+Date: Wed, 17 Apr 2024 06:33:38 +0000
+Subject: [PATCH] change web and config paths
+
+---
+ etc/webapp_config.json | 14 +++++++-------
+ main.go | 4 ++--
+ 2 files changed, 9 insertions(+), 9 deletions(-)
+
+diff --git a/etc/webapp_config.json b/etc/webapp_config.json
+index c0bfbe3..5f1bb00 100644
+--- a/etc/webapp_config.json
++++ b/etc/webapp_config.json
+@@ -44,7 +44,7 @@
+ },
+ "swagger": {
+ "enable": true,
+- "api_json": "/usr/local/homer/etc/swagger.json",
++ "api_json": "/etc/homer/swagger.json",
+ "api_host": "127.0.0.1:9080"
+ },
+ "loki_config": {
+@@ -72,7 +72,7 @@
+ "help": "Settings for the HOMER Webapp Server. If you have gzip_static = false, please be sure that your dist directory has uncompressed .js files",
+ "host": "0.0.0.0",
+ "port": 9080,
+- "root": "/usr/local/homer/dist",
++ "root": "/usr/share/webapps/homer/dist",
+ "gzip": true,
+ "path": "/",
+ "gzip_static": true,
+@@ -94,12 +94,12 @@
+ "port": 443,
+ "min_tls_version": "1.2",
+ "use_mozilla_profile": true,
+- "cert": "/usr/local/homer/tls/cert.pem",
+- "key": "/usr/local/homer/tls/key.pem"
++ "cert": "/etc/homer/tls/cert.pem",
++ "key": "/etc/homer/tls/key.pem"
+ },
+ "system_settings": {
+ "help": "Settings for HOMER logs",
+- "logpath": "/usr/local/homer/log",
++ "logpath": "/var/log/homer",
+ "logname": "homer-app.log",
+ "_loglevels": "can be: fatal, error, warn, info, debug, trace",
+ "loglevel": "error",
+@@ -107,7 +107,7 @@
+ },
+ "dashboard_settings": {
+ "_comment": "Here you can define a customs dashboards home",
+- "dashboard_home": "/usr/local/homer/etc/dashboard_home.json"
++ "dashboard_home": "/etc/homer/dashboard_home.json"
+ },
+ "auth_settings": {
+ "_comment": "The type param can be internal, ldap, http_auth",
+@@ -196,4 +196,4 @@
+ "1_default"
+ ]
+ }
+-}
+\ No newline at end of file
++}
+diff --git a/main.go b/main.go
+index 159376b..cc682e1 100644
+--- a/main.go
++++ b/main.go
+@@ -191,7 +191,7 @@ func initFlags() {
+ appFlags.DatabaseHomerPassword = flag.String("database-homer-password", "homer_password", "database-homer-password")
+ appFlags.DatabaseHomerConfig = flag.String("database-homer-config", "homer_config", "database-homer-config")
+ appFlags.DatabaseHomerData = flag.String("database-homer-data", "homer_data", "database-homer-data")
+- appFlags.PathWebAppConfig = flag.String("webapp-config-path", "/usr/local/homer/etc", "the path to the webapp config file")
++ appFlags.PathWebAppConfig = flag.String("webapp-config-path", "/etc/homer", "the path to the webapp config file")
+ appFlags.LogName = flag.String("webapp-log-name", "", "the name prefix of the log file.")
+ appFlags.LogPathWebApp = flag.String("webapp-log-path", "", "the path for the log file.")
+ appFlags.APIPrefix = flag.String("webapp-api-prefix", "", "API prefix.")
+@@ -748,7 +748,7 @@ func configureAsHTTPServer() {
+ /* static */
+ rootPath := viper.GetString("http_settings.root")
+ if rootPath == "" {
+- rootPath = "/usr/local/homer/dist"
++ rootPath = "/usr/share/webapps/homer/dist"
+ }
+
+ /* static */
+--
+2.44.0
+
diff --git a/testing/homer-app/APKBUILD b/testing/homer-app/APKBUILD
index 2e9aa508b52..921656ae190 100644
--- a/testing/homer-app/APKBUILD
+++ b/testing/homer-app/APKBUILD
@@ -1,6 +1,6 @@
# Maintainer: Leonardo Arena <rnalrd@alpinelinux.org>
pkgname=homer-app
-pkgver=1.4.34
+pkgver=1.4.59
pkgrel=3
pkgdesc="HOMER 7.x Front-End and API Server"
url="http://sipcapture.io"
@@ -8,14 +8,24 @@ arch="x86_64"
license="AGPL-3.0-or-later"
makedepends="go"
install="$pkgname.pre-install"
-options="!check" # no test suite
+options="net"
subpackages="$pkgname-doc $pkgname-openrc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/sipcapture/homer-app/archive/$pkgver.tar.gz
- https://github.com/sipcapture/homer-app/releases/download/$pkgver/homer-ui-.tgz
+source="$pkgname-$pkgver.tar.gz::https://github.com/sipcapture/homer-app/archive/refs/tags/$pkgver.tar.gz
+ https://github.com/sipcapture/homer-app/releases/download/$pkgver/homer-ui-$pkgver.tgz
$pkgname.initd
- change-default-locations.patch
+
+ 0001-change-web-and-config-paths.patch
"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+prepare() {
+ default_prepare
+ go mod download
+}
+
build() {
make modules
make all
@@ -29,7 +39,6 @@ package() {
install -D -m755 release/homer-app_linux_amd64/homer-app "$pkgdir"/usr/bin/homer-app
install -D -m644 etc/webapp_config.json "$pkgdir"/etc/homer/webapp_config.json
mkdir -p "$pkgdir"/usr/share/webapps/homer \
- "$pkgdir"/var/log/homer \
"$pkgdir"/usr/share/licenses/$pkgname
mv "$srcdir"/dist/3rdpartylicenses.txt \
"$pkgdir"/usr/share/licenses/$pkgname/3rdpartylicenses.txt
@@ -38,8 +47,8 @@ package() {
}
sha512sums="
-215da7b49f3ad4fd380c0695b7216de774e94fa3d538782d6a464092d2a1419338a4065ef0fbbe098a2b6d18f8cfb3e1fc5d7dba2b6d36b1692f6e7c33049e17 homer-app-1.4.34.tar.gz
-6c29f7a61621d5dc4e1f308540c9bf9893feb7b2ecaa7cafbefca9a812d23a9b502e691335ecb1b9ff9f9c43443c662f46b11066a9a946c989b000c495aa5d47 homer-ui-.tgz
-2ba4e0403bd6f3b08a3a4d8bf366ec776941b5a29e9728ca2aefbfc663ce64c01f67a2f8f408a777db7921f8f66f93797fb5f056809901d3f25fe39b414b5865 homer-app.initd
-9620fb44c6b7b112bb6d2e7259b588de5381304deb25f81158e8327bbb27303447d53ca49af14c28f3cd5b9904e2864780534989bc08c5bf119bad8ad71649f1 change-default-locations.patch
+b62ded15ff9ad2651b4e58ecf497b10208cc0a9075eca01a62328c71402c14a7a12b5903a4ea1ce86d38f38052fbbcdda3f498f120fee77a2fd271b87a41fe3c homer-app-1.4.59.tar.gz
+561f858f72a620abe041d0bff8632e57c25fcfa5f13053fa416471deb4d9d766a4c90602b7a6b0987165d2ba61ccbcf66a567e53a99be63c704b341350258c87 homer-ui-1.4.59.tgz
+0eaace71fe329bead88d7180aa5ad80f6924f1e0b3426cfa45811121ff4e907b32a4b08d6db995ae77b9b9ddbdbfc66411c03c2eea9c0393f6b9ed12ad851a77 homer-app.initd
+f4073ebe4dda4d94a62a810179b707b5245a15e80473576253b992fd1c0a5ba3dbc2645c56ad10ce63c12ab494a9d9da5fe172b68f1b5594e28b45c18df99fe9 0001-change-web-and-config-paths.patch
"
diff --git a/testing/homer-app/change-default-locations.patch b/testing/homer-app/change-default-locations.patch
deleted file mode 100644
index 2c57c500ef8..00000000000
--- a/testing/homer-app/change-default-locations.patch
+++ /dev/null
@@ -1,73 +0,0 @@
-From f8182282ce64804af8418f6bbddb811541b7ec40 Mon Sep 17 00:00:00 2001
-From: Leonardo Arena <rnalrd@alpinelinux.org>
-Date: Thu, 24 Feb 2022 10:22:21 +0000
-Subject: [PATCH] change default paths
-
----
- etc/webapp_config.json | 12 ++++++------
- main.go | 2 +-
- 2 files changed, 7 insertions(+), 7 deletions(-)
-
-diff --git a/etc/webapp_config.json b/etc/webapp_config.json
-index 88c5db3..e0a2389 100644
---- a/etc/webapp_config.json
-+++ b/etc/webapp_config.json
-@@ -44,7 +44,7 @@
- },
- "swagger": {
- "enable": true,
-- "api_json": "/usr/local/homer/etc/swagger.json",
-+ "api_json": "/etc/homer/swagger.json",
- "api_host": "127.0.0.1:9080"
- },
- "loki_config": {
-@@ -67,7 +67,7 @@
- "help": "Settings for the HOMER Webapp Server. If you have gzip_static = false, please be sure that your dist directory has uncompressed .js files",
- "host": "0.0.0.0",
- "port": 9080,
-- "root": "/usr/local/homer/dist",
-+ "root": "/usr/share/webapps/homer/dist",
- "gzip": true,
- "path": "/",
- "gzip_static": true,
-@@ -86,12 +86,12 @@
- "enable": false,
- "host": "0.0.0.0",
- "port": 443,
-- "cert": "/usr/local/homer/tls/cert.pem",
-- "key": "/usr/local/homer/tls/key.pem"
-+ "cert": "/etc/homer/tls/cert.pem",
-+ "key": "/etc/homer/tls/key.pem"
- },
- "system_settings": {
- "help": "Settings for HOMER logs",
-- "logpath": "/usr/local/homer/log",
-+ "logpath": "/var/log/homer",
- "logname": "homer-app.log",
- "_loglevels": "can be: fatal, error, warn, info, debug, trace",
- "loglevel": "error",
-@@ -99,7 +99,7 @@
- },
- "dashboard_settings": {
- "_comment": "Here you can define a customs dashboards home",
-- "dashboard_home": "/usr/local/homer/etc/dashboard_home.json"
-+ "dashboard_home": "/etc/homer/dashboard_home.json"
- },
- "auth_settings": {
- "_comment": "The type param can be internal, ldap, http_auth",
-diff --git a/main.go b/main.go
-index 93be8e6..1b5b7bf 100644
---- a/main.go
-+++ b/main.go
-@@ -730,7 +730,7 @@ func configureAsHTTPServer() {
- /* static */
- rootPath := viper.GetString("http_settings.root")
- if rootPath == "" {
-- rootPath = "/usr/local/homer/dist"
-+ rootPath = "/usr/share/webapps/homer/dist"
- }
-
- /* static */
---
-2.35.1
-
diff --git a/testing/homer-app/homer-app.initd b/testing/homer-app/homer-app.initd
index ceeb0109215..88309124111 100644
--- a/testing/homer-app/homer-app.initd
+++ b/testing/homer-app/homer-app.initd
@@ -1,9 +1,9 @@
#!/sbin/openrc-run
description="HOMER App and UI"
-supervisor=supervise-daemon
command=/usr/bin/homer-app
command_args="-webapp-config-path=/etc/homer -webapp-log-path /var/log/homer"
+command_background=yes
command_user=homer
command_group=homer
pidfile="/run/homer/${RC_SVCNAME}.pid"
diff --git a/testing/hopalong/APKBUILD b/testing/hopalong/APKBUILD
index 0f3602a8a31..1b2e6610238 100644
--- a/testing/hopalong/APKBUILD
+++ b/testing/hopalong/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Ariadne Conill <ariadne@dereferenced.org>
pkgname=hopalong
pkgver=0.1
-pkgrel=2
+pkgrel=3
pkgdesc="a simple stacking Wayland compositor"
url="https://github.com/iridescent-desktop/hopalong"
arch="all"
@@ -19,14 +19,8 @@ builddir="$srcdir/hopalong-$pkgver"
options="!check"
build() {
- meson \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var \
- --buildtype=plain \
- . output
- meson compile -j 4 -C output
+ abuild-meson . output
+ meson compile -C output
}
check() {
@@ -38,4 +32,6 @@ package() {
DESTDIR="$pkgdir" meson install --no-rebuild -C output
}
-sha512sums="4a9b5698b3501dfc546b00f36341eac0b15bcbcf380f61a1ff064b55613a25e2f492324c5b9f202917eedc4c0a67b5f8e0be0598446ac4609cef4773d3a1e948 hopalong-0.1.tar.gz"
+sha512sums="
+4a9b5698b3501dfc546b00f36341eac0b15bcbcf380f61a1ff064b55613a25e2f492324c5b9f202917eedc4c0a67b5f8e0be0598446ac4609cef4773d3a1e948 hopalong-0.1.tar.gz
+"
diff --git a/testing/horizon/APKBUILD b/testing/horizon/APKBUILD
index 5a31a0d57dd..4d8fd3387ba 100644
--- a/testing/horizon/APKBUILD
+++ b/testing/horizon/APKBUILD
@@ -7,7 +7,7 @@
pkgname=horizon
pkgver=0.9.6
-pkgrel=3
+pkgrel=8
pkgdesc="installation environment and image mastering tools for APK-based distributions"
url="https://horizon.adelielinux.org/"
arch="all !s390x"
@@ -15,12 +15,14 @@ options="!check" # Unpackaged dependency ruby-aruba.
license="AGPL-3.0-or-later"
checkdepends="ruby-aruba ruby-rspec valgrind"
makedepends="bcnm-dev boost-dev cmake curl-dev eudev-dev libarchive-dev
- linux-headers parted-dev skalibs-dev util-linux-dev libxkbfile-dev"
+ linux-headers parted-dev skalibs-dev util-linux-dev libxkbfile-dev
+ samurai"
subpackages="$pkgname-image $pkgname-dbg $pkgname-dev $pkgname-doc
$pkgname-tools"
source="https://git.adelielinux.org/adelie/horizon/-/archive/$pkgver/horizon-$pkgver.tar.gz
json-cast-character-to-unsigned-for-comparrison.patch
riscv.patch
+ strerror.patch
werror.patch
"
@@ -28,25 +30,24 @@ build() {
if [ "$CBUILD" != "$CHOST" ]; then
CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
fi
- cmake \
+ cmake -B build -G Ninja \
-DCMAKE_INSTALL_PREFIX=/usr \
-DBUILD_SHARED_LIBS=True \
-DBUILD_TOOLS=ON \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_CXX_FLAGS="$CXXFLAGS -Wno-format-truncation" \
- -DCMAKE_C_FLAGS="$CFLAGS" \
-DINSTALL=ON \
$CMAKE_CROSSOPTS \
-Bbuild
- make -C build
+ cmake --build build
}
check() {
- CTEST_OUTPUT_ON_FAILURE=TRUE make -C build test
+ CTEST_OUTPUT_ON_FAILURE=TRUE ninja -C build test
}
package() {
- make DESTDIR="$pkgdir" -C build install
+ DESTDIR="$pkgdir" cmake --install build
# horizon is not yet supported for building ISOs, so delete it for now
rm -rf "$pkgdir"/usr/share/horizon/iso
@@ -132,5 +133,6 @@ sha512sums="
3ff46980387454f85a326ac3ea123b55cf16fc339faec48fdc77f10334e0bd93e8cf51e6adeed516d2e4309cf4426b9d1ac6760cdd479b196a5f4aa33c1f3a28 horizon-0.9.6.tar.gz
5ab7a35d239210e031739c4149fd8e68570ea0efd278a2eac9330d6e30c601d1310b9c17523563a41424c2a8aa2452e5a9bcbce5d8087330d2697cd1b77b312f json-cast-character-to-unsigned-for-comparrison.patch
2748d443bdec9bfcab3a50d6efd61e3febb195d25581b25a6cbf1a73ddeb209ea79ebee493cc55dc377ff69e1577385d31930ca63db35bbffe34caea1bd41c05 riscv.patch
+3fc8fbd2969b2c45730a5432430a5979572ce1447db124f8f1b8755633e7e109dd2ec9ecb1d7fa0a961ae0630995e22caafe7e362b74903d419b6c57bbbd2dd2 strerror.patch
4528ccee466bdfed4d2cd6095fb0b2f4f2b2e662c59a8d1a9f26877b4e9d2a8d0b7776932ed87d01dc7ac1e17a29dd5ac47651b91975a33cfe46516d1590f829 werror.patch
"
diff --git a/testing/horizon/strerror.patch b/testing/horizon/strerror.patch
new file mode 100644
index 00000000000..0983d555d9a
--- /dev/null
+++ b/testing/horizon/strerror.patch
@@ -0,0 +1,12 @@
+diff --git a/hscript/meta.cc b/hscript/meta.cc
+index e3d05f2..44872e6 100644
+--- a/hscript/meta.cc
++++ b/hscript/meta.cc
+@@ -11,6 +11,7 @@
+ */
+
+ #include <assert.h>
++#include <cstring>
+ #include <fstream>
+ #include <regex>
+ #include <set>
diff --git a/testing/horust/APKBUILD b/testing/horust/APKBUILD
new file mode 100644
index 00000000000..3506c67de27
--- /dev/null
+++ b/testing/horust/APKBUILD
@@ -0,0 +1,44 @@
+# Contributor: William Desportes <williamdes@wdes.fr>
+# Maintainer: William Desportes <williamdes@wdes.fr>
+pkgname=horust
+pkgver=0.1.7
+pkgrel=1
+pkgdesc="Horust is a supervisor / init system written in rust and designed to be run inside containers"
+url="https://github.com/FedericoPonzi/Horust"
+# s390x, riscv64: nix/libc crates lack support
+arch="all !s390x !riscv64"
+license="MIT"
+makedepends="cargo cargo-auditable"
+checkdepends="bash" # test_single_command uses bash
+subpackages="$pkgname-doc"
+options="net"
+source="$pkgname-$pkgver.tar.gz::https://github.com/FedericoPonzi/Horust/archive/v$pkgver.tar.gz
+ "
+builddir="$srcdir/Horust-$pkgver"
+
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+check() {
+ # Add USER ENV for test_should_correctly_deserialize_sample test
+ USER="$(whoami)" cargo test --frozen -- --skip test_termination_all_custom_signals
+}
+
+package() {
+ install -Dm755 target/release/horust -t "$pkgdir"/usr/bin
+ install -Dm0644 README.md -t "$pkgdir"/usr/share/doc/"$pkgname"
+ install -Dm0644 DOCUMENTATION.md -t "$pkgdir"/usr/share/doc/"$pkgname"
+ install -Dm0644 example_services/* -t "$pkgdir"/usr/share/doc/"$pkgname"/example_services
+}
+
+sha512sums="
+caa762f9ccc14ed058732f023e0e347fbf5968d500dea3e3f30c9ba91b4f93aeaaefd4e41e434fca320b8b1416550c9f83383d7406015a3e60de8f71d85418c3 horust-0.1.7.tar.gz
+"
diff --git a/testing/hotspot/APKBUILD b/testing/hotspot/APKBUILD
deleted file mode 100644
index 2d41e3b4204..00000000000
--- a/testing/hotspot/APKBUILD
+++ /dev/null
@@ -1,44 +0,0 @@
-# Contributor: Rasmus Thomsen <oss@cogitri.dev>
-# Maintainer: Rasmus Thomsen <oss@cogitri.dev>
-pkgname=hotspot
-pkgver=1.3.0
-pkgrel=0
-pkgdesc="The Linux perf GUI for performance analysis"
-url="https://github.com/KDAB/hotspot"
-# s390x: undefined reference to 'QDataStream::Version qbswap<QDataStream::Version>(QDataStream::Version)'
-# riscv64, armhf: missing qtdeclarative
-arch="all !s390x !armhf !riscv64"
-license="GPL-2.0-or-later"
-makedepends="cmake qt5-qtbase-dev elfutils-dev gettext-dev extra-cmake-modules
- threadweaver-dev ki18n-dev kconfigwidgets-dev kcoreaddons-dev kitemviews-dev
- kitemmodels-dev kio-dev solid-dev kwindowsystem-dev"
-options="!check" # wonky tests
-source="https://github.com/KDAB/hotspot/releases/download/v$pkgver/hotspot-v$pkgver.tar.gz"
-builddir="$srcdir/$pkgname-v$pkgver"
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- -DCMAKE_BUILD_TYPE=None \
- -DCMAKE_CXX_FLAGS="$CXXFLAGS" \
- -DCMAKE_C_FLAGS="$CFLAGS" \
- ${CMAKE_CROSSOPTS} .
- make
-}
-
-check() {
- CTEST_OUTPUT_ON_FAILURE=TRUE ctest
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- mkdir -p "$pkgdir"/usr/share/applications
- cp hotspot.desktop "$pkgdir"/usr/share/applications
-}
-
-sha512sums="8aa89f71cb85c5a73c8265eec27acf35fcc21612af33581c7d8804edbc8565cd587ab79906e85781f2c6db9d7747ba4371a7e10253e21052f280717d5dc1fbd4 hotspot-v1.3.0.tar.gz"
diff --git a/testing/howard-bc/APKBUILD b/testing/howard-bc/APKBUILD
index a975afd7629..af66f0ef6c5 100644
--- a/testing/howard-bc/APKBUILD
+++ b/testing/howard-bc/APKBUILD
@@ -1,14 +1,14 @@
# Contributor: Gavin D. Howard <yzena.tech@gmail.com>
# Maintainer: Gavin D. Howard <yzena.tech@gmail.com>
pkgname=howard-bc
-pkgver=5.2.1
+pkgver=6.7.5
pkgrel=0
pkgdesc="POSIX bc with GNU extensions"
-url="https://github.com/gavinhoward/bc"
+url="https://git.gavinhoward.com/gavin/bc"
arch="all"
license="BSD-2-Clause"
subpackages="$pkgname-doc"
-source="https://github.com/gavinhoward/bc/releases/download/$pkgver/bc-$pkgver.tar.xz"
+source="https://git.gavinhoward.com/gavin/bc/releases/download/$pkgver/bc-$pkgver.tar.xz"
builddir="$srcdir/bc-$pkgver"
build() {
@@ -25,5 +25,5 @@ package() {
}
sha512sums="
-8f5cfdfc0b2e1866d8fc1477d7bfc2882cf4d2e4844fcf41ded5f8b52b4d8124c073e845d86b355977f815a5a8a2f22fd98495ec4b5dd41737b808a3a4f4bb56 bc-5.2.1.tar.xz
+5f689fd20801ea7ede725ae5dc4e8744bdf2d72424bffef99c53193a950f4bd83b6eb4c5a07556576d0b3f5b6cd7f9fc7cbcb41d27891f488bb2e97a186f76a4 bc-6.7.5.tar.xz
"
diff --git a/testing/hplip/0025-Remove-all-ImageProcessor-functionality-which-is-clo.patch b/testing/hplip/0025-Remove-all-ImageProcessor-functionality-which-is-clo.patch
deleted file mode 100644
index 78f3828655d..00000000000
--- a/testing/hplip/0025-Remove-all-ImageProcessor-functionality-which-is-clo.patch
+++ /dev/null
@@ -1,143 +0,0 @@
-diff --git a/Makefile.am b/Makefile.am
-index ef6480f..2e6449f 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -166,7 +166,7 @@ if !HPLIP_CLASS_DRIVER
- dist_hplip_SCRIPTS = hpssd.py __init__.py hpdio.py
- endif #HPLIP_CLASS_DRIVER
-
--dist_noinst_DATA += prnt/drv/hpijs.drv.in.template prnt/drv/hpcups.drv.in.template prnt/hpcups/libImageProcessor-x86_64.so prnt/hpcups/libImageProcessor-x86_32.so
-+dist_noinst_DATA += prnt/drv/hpijs.drv.in.template prnt/drv/hpcups.drv.in.template
- dist_noinst_SCRIPTS += dat2drv.py install.py hplip-install init-suse-firewall init-iptables-firewall class_rpm_build.sh hplipclassdriver.spec createPPD.sh Makefile_dat2drv hpijs-drv
-
- if !HPLIP_CLASS_DRIVER
-@@ -594,7 +594,7 @@ hpcups_SOURCES = prnt/hpcups/HPCupsFilter.cpp prnt/hpcups/HPCupsFilter.h prnt/hp
- prnt/hpcups/ImageProcessor.h
-
- hpcups_CXXFLAGS = $(APDK_ENDIAN_FLAG) $(DBUS_CFLAGS)
--hpcups_LDADD = -L./prnt/hpcups/ -ljpeg -ldl -lImageProcessor -lcups -lcupsimage -lz $(DBUS_LIBS)
-+hpcups_LDADD = -L./prnt/hpcups/ -ljpeg -ldl -lcups -lcupsimage -lz $(DBUS_LIBS)
- #else
- #hpcupsdir = $(cupsfilterdir)
- #hpcups_PROGRAMS = hpcups
-@@ -684,16 +684,6 @@ endif #HPLIP_CLASS_DRIVER
-
- install-data-hook:
- if HPLIP_BUILD
-- if [ \( "$(UNAME)" = "x86_64" -a -d "$(libdir)/" \) ]; then \
-- cp prnt/hpcups/libImageProcessor-x86_64.so $(libdir)/ ; \
-- chmod 775 $(libdir)/libImageProcessor-x86_64.so ; \
-- ln -sf $(libdir)/libImageProcessor-x86_64.so $(libdir)/libImageProcessor.so ; \
-- fi; \
-- if [ \( \( "$(UNAME)" = "i686" -o "$(UNAME)" = "i386" \) -a -d "$(libdir)/" \) ]; then \
-- cp prnt/hpcups/libImageProcessor-x86_32.so $(libdir)/ ; \
-- chmod 775 $(libdir)/libImageProcessor-x86_32.so ; \
-- ln -sf $(libdir)/libImageProcessor-x86_32.so $(libdir)/libImageProcessor.so ; \
-- fi
- if !HPLIP_CLASS_DRIVER
- # If scanner build, add hpaio entry to sane dll.conf.
- if [ "$(scan_build)" = "yes" ]; then \
-diff --git a/Makefile.in b/Makefile.in
-index 5f69a92..aedc3bd 100644
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -103,7 +103,7 @@ DIST_COMMON = $(am__configure_deps) \
-
- # ip library
- @HPLIP_BUILD_TRUE@am__append_12 = libhpip.la
--@FULL_BUILD_TRUE@@HPLIP_BUILD_TRUE@am__append_13 = prnt/drv/hpijs.drv.in.template prnt/drv/hpcups.drv.in.template prnt/hpcups/libImageProcessor-x86_64.so prnt/hpcups/libImageProcessor-x86_32.so
-+@FULL_BUILD_TRUE@@HPLIP_BUILD_TRUE@am__append_13 = prnt/drv/hpijs.drv.in.template prnt/drv/hpcups.drv.in.template
- @FULL_BUILD_TRUE@@HPLIP_BUILD_TRUE@am__append_14 = dat2drv.py install.py hplip-install init-suse-firewall init-iptables-firewall class_rpm_build.sh hplipclassdriver.spec createPPD.sh Makefile_dat2drv hpijs-drv
- @FULL_BUILD_TRUE@@HPLIP_BUILD_TRUE@@HPLIP_CLASS_DRIVER_FALSE@am__append_15 = scan/sane/hpaio.desc \
- @FULL_BUILD_TRUE@@HPLIP_BUILD_TRUE@@HPLIP_CLASS_DRIVER_FALSE@ installer/text_install.py \
-@@ -723,8 +723,7 @@ am__dist_locatedriver_DATA_DIST = locatedriver
- am__dist_models_DATA_DIST = data/models/models.dat
- am__dist_noinst_DATA_DIST = prnt/drv/hpijs.drv.in.template \
- prnt/drv/hpcups.drv.in.template \
-- prnt/hpcups/libImageProcessor-x86_64.so \
-- prnt/hpcups/libImageProcessor-x86_32.so scan/sane/hpaio.desc \
-+ scan/sane/hpaio.desc \
- installer/text_install.py data/localization/hplip_de.ts \
- data/localization/hplip_es.ts data/localization/hplip_fr.ts \
- data/localization/hplip_it.ts data/localization/hplip_pt.ts \
-@@ -9384,16 +9383,6 @@ uninstall-am: uninstall-apparmor_abstractionDATA \
-
-
- install-data-hook:
--@HPLIP_BUILD_TRUE@ if [ \( "$(UNAME)" = "x86_64" -a -d "$(libdir)/" \) ]; then \
--@HPLIP_BUILD_TRUE@ cp prnt/hpcups/libImageProcessor-x86_64.so $(libdir)/ ; \
--@HPLIP_BUILD_TRUE@ chmod 775 $(libdir)/libImageProcessor-x86_64.so ; \
--@HPLIP_BUILD_TRUE@ ln -sf $(libdir)/libImageProcessor-x86_64.so $(libdir)/libImageProcessor.so ; \
--@HPLIP_BUILD_TRUE@ fi; \
--@HPLIP_BUILD_TRUE@ if [ \( \( "$(UNAME)" = "i686" -o "$(UNAME)" = "i386" \) -a -d "$(libdir)/" \) ]; then \
--@HPLIP_BUILD_TRUE@ cp prnt/hpcups/libImageProcessor-x86_32.so $(libdir)/ ; \
--@HPLIP_BUILD_TRUE@ chmod 775 $(libdir)/libImageProcessor-x86_32.so ; \
--@HPLIP_BUILD_TRUE@ ln -sf $(libdir)/libImageProcessor-x86_32.so $(libdir)/libImageProcessor.so ; \
--@HPLIP_BUILD_TRUE@ fi
- # If scanner build, add hpaio entry to sane dll.conf.
- @HPLIP_BUILD_TRUE@@HPLIP_CLASS_DRIVER_FALSE@ if [ "$(scan_build)" = "yes" ]; then \
- @HPLIP_BUILD_TRUE@@HPLIP_CLASS_DRIVER_FALSE@ $(mkinstalldirs) $(DESTDIR)/etc/sane.d; \
-diff --git a/prnt/hpcups/HPCupsFilter.cpp b/prnt/hpcups/HPCupsFilter.cpp
-index 5b282d8..0bacfaf 100644
---- a/prnt/hpcups/HPCupsFilter.cpp
-+++ b/prnt/hpcups/HPCupsFilter.cpp
-@@ -31,7 +31,6 @@
- \*****************************************************************************/
-
- #include "HPCupsFilter.h"
--#include "ImageProcessor.h"
-
- #include <signal.h>
- #include <sys/wait.h>
-@@ -637,16 +636,10 @@ int HPCupsFilter::processRasterData(cups_raster_t *cups_raster)
-
-
- sprintf(hpPreProcessedRasterFile, "%s/hp_%s_cups_SwapedPagesXXXXXX",CUPS_TMP_DIR, m_JA.user_name);
-- image_processor_t* imageProcessor = imageProcessorCreate();
-
- while (cupsRasterReadHeader2(cups_raster, &cups_header))
- {
-
-- IMAGE_PROCESSOR_ERROR result = imageProcessorStartPage(imageProcessor, &cups_header);
-- if (result != IPE_SUCCESS){
-- dbglog("DEBUG: imageProcessorStartPage failed result = %d\n", result);
-- }
--
- current_page_number++;
-
- if (current_page_number == 1) {
-@@ -745,12 +738,6 @@ int HPCupsFilter::processRasterData(cups_raster_t *cups_raster)
- color_raster = rgbRaster;
- black_raster = kRaster;
-
-- result = imageProcessorProcessLine(imageProcessor, m_pPrinterBuffer, cups_header.cupsBytesPerLine);
-- if (result != IPE_SUCCESS){
-- dbglog("DEBUG: imageProcessorProcessLine failed result = %d\n", result);
-- }
--
--
- if ((y == 0) && !is_ljmono) {
- //For ljmono, make sure that first line is not a blankRaster line.Otherwise printer
- //may not skip blank lines before actual data
-@@ -780,12 +767,6 @@ int HPCupsFilter::processRasterData(cups_raster_t *cups_raster)
- }
- } // for() loop end
-
-- result = imageProcessorEndPage(imageProcessor);
-- if (result != IPE_SUCCESS){
-- dbglog("DEBUG: imageProcessorEndPage failed result = %d\n", result);
-- }
--
--
- m_Job.NewPage();
- if (err != NO_ERROR) {
- break;
-@@ -800,8 +781,6 @@ int HPCupsFilter::processRasterData(cups_raster_t *cups_raster)
- rgbRaster = NULL;
- }
-
-- imageProcessorDestroy(imageProcessor);
--
- unlink(hpPreProcessedRasterFile);
- return ret_status;
- }
diff --git a/testing/hplip/APKBUILD b/testing/hplip/APKBUILD
index d10ddc8209b..3f5a0b72ebf 100644
--- a/testing/hplip/APKBUILD
+++ b/testing/hplip/APKBUILD
@@ -3,38 +3,29 @@
# Contributor: Timo Teräs <timo.teras@iki.fi>
# Contributor: Valery Kartel <valery.kartel@gmail.com>
pkgname=hplip
-pkgver=3.20.5
-pkgrel=5
+pkgver=3.23.12
+pkgrel=2
pkgdesc="Drivers for HP printers and scanners"
-arch="x86 x86_64 aarch64 armv7" # missing sane on several arches
-url="http://hplipopensource.com"
+arch="all"
+url="https://hplipopensource.com/"
license="GPL-2.0-only AND BSD-3-Clause AND MIT"
-makedepends="libjpeg-turbo-dev net-snmp-dev cups-dev libusb-dev sane-dev gawk python3-dev
- autoconf automake libtool"
-subpackages="$pkgname-doc $pkgname-libs sane-backend-hpaio:sane"
+makedepends="dbus-dev libjpeg-turbo-dev net-snmp-dev cups-dev libusb-dev sane-dev gawk python3-dev py3-setuptools"
+subpackages="$pkgname-doc $pkgname-libs $pkgname-ppd sane-backend-hpaio:sane"
source="https://downloads.sourceforge.net/hplip/hplip-$pkgver.tar.gz
- fix-includes.patch
fix-memmove.patch
- types-musl.patch
disable_upgrade.patch
- 0025-Remove-all-ImageProcessor-functionality-which-is-clo.patch
- python-3.8-compat.patch
+ more-imageprocessor-removes.patch
+ no-empty-glob.patch
+ types-musl.patch
"
-prepare() {
- default_prepare
- update_config_guess
- touch NEWS README AUTHORS ChangeLog
- autoreconf -vif
-}
-
build() {
./configure --prefix=/usr \
--with-docdir=/usr/share/doc/$pkgname \
--disable-doc-build \
--disable-gui-build \
--disable-fax-build \
- --disable-dbus-build \
+ --disable-imageProcessor-build \
--enable-cups-drv-install \
--enable-cups-ppd-install
make
@@ -46,13 +37,21 @@ check() {
package() {
make -j1 DESTDIR="$pkgdir" install
- rm -fr "$pkgdir"/usr/bin \
- "$pkgdir"/etc/udev \
- "$pkgdir"/etc/sane.d \
- "$pkgdir"/usr/share/hal \
- "$pkgdir"/usr/lib/systemd \
- "$pkgdir"/usr/lib/cups/filter/pstotiff
install -m755 -D prnt/filters/hpps "$pkgdir"/usr/lib/cups/filter/hpps
+
+ cd "$pkgdir"
+ rm -fr usr/bin \
+ etc/udev \
+ etc/sane.d \
+ usr/share/hal \
+ usr/lib/systemd \
+ usr/lib/cups/filter/pstotiff
+}
+
+ppd() {
+ pkgdesc="$pkgdesc (PPD files)"
+ mkdir -p "$subpkgdir"/usr/share/ppd/
+ mv "$pkgdir"/usr/share/ppd/HP "$subpkgdir"/usr/share/ppd/
}
sane() {
@@ -66,10 +65,11 @@ sane() {
echo "hpaio" > "$subpkgdir"/etc/sane.d/dll.d/hpaio
}
-sha512sums="fce3c7b8a2f3b0d2875bafd2ff65a3312fae867b658cd45eea16d9f3663646b6b0b70b58e6c2b46eb24627cdeefb318b6ca9ccf5a0e9790ff19519518992da07 hplip-3.20.5.tar.gz
-173f0c2bbf0daefc717282bf125d3fd94b3914da0754078c45b58b09ab841672aae9238ca8fc0448486a871e40fc50f960da17c1e07ad3f04053d217ed634498 fix-includes.patch
+sha512sums="
+7461ffec38be68421e4204021f53d2b1641e7a67c14f205390d45f487a1af90956fd221f7e1561635508103ae944f19e04d6052d3f8928f2c9685fdcdcf515df hplip-3.23.12.tar.gz
7d247b219595a8be4a9d709f14a9034eee1cef467981ffc29d18ee3c00bee125640b1149d7e57e3332242efd978d7cb3f8f25f21d41fb39e38f9520626cfe1ff fix-memmove.patch
-dbce7d859661b1a03847edf91db755c9b3d1ad7c2d3173741ecd89b954d1595d71f1adcbd481e81821ebd58cd9ae23adcef1cc026cfa09928fb0cba599781cd1 types-musl.patch
ac436b54aecc0c2a7fc0eb5ae8e28d483c1efd5bd9385b0a1480fb78b8ccdd28ef85db86a980aec5ca093e9095d5714f93df095bf606e9a9c919f07c64e29697 disable_upgrade.patch
-0ededf7b27abab1b2f889f19bb3587816d437ed1b8253a68e9e4af99684456057c1529b353c439e11b2235cb84560e90bb841d348fa53b49e4bbc123a41aba81 0025-Remove-all-ImageProcessor-functionality-which-is-clo.patch
-33e034c99d67535326fb2361d2f9c4a70b38ddd0b64b5e6edaf8d6ac3d786fdc9ef35295a5aed53abbf6953998e7260954b3372df66dad310729c71cea201091 python-3.8-compat.patch"
+d8e76cb3757a7659f667e3d54cd0b7572dd8af1f4f87e26694dd3e4b1e0ec5cba7fe2d0ca531e14d568a675aa4a201795a3edb2c8892230e41e0d9408959b726 more-imageprocessor-removes.patch
+69442c4bd2410e69a0d6314ce5db6b4638dd6a08c817b749f7b74e8e98db90eccb05ad3b44b71278e83cc3bbf6009fee8818855c1f08df9d6d8d5a35a078d68e no-empty-glob.patch
+dbce7d859661b1a03847edf91db755c9b3d1ad7c2d3173741ecd89b954d1595d71f1adcbd481e81821ebd58cd9ae23adcef1cc026cfa09928fb0cba599781cd1 types-musl.patch
+"
diff --git a/testing/hplip/fix-includes.patch b/testing/hplip/fix-includes.patch
deleted file mode 100644
index 4389125fda6..00000000000
--- a/testing/hplip/fix-includes.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-diff -ru hplip-3.16.10.orig/protocol/discovery/mdns.c hplip-3.16.10/protocol/discovery/mdns.c
---- hplip-3.16.10.orig/protocol/discovery/mdns.c 2016-10-21 13:48:34.000000000 +0300
-+++ hplip-3.16.10/protocol/discovery/mdns.c 2016-11-03 14:41:38.828298853 +0200
-@@ -24,10 +24,15 @@
- Author: Sanjay Kumar
- \*****************************************************************************/
-
--//#include <stdio.h>
-+#include <stdio.h>
-+#include <ctype.h>
-+#include <fcntl.h>
-+#include <unistd.h>
- #include <string.h>
- #include <syslog.h>
-+#include <malloc.h>
- #include <sys/socket.h>
-+#include <sys/select.h>
- #include <netinet/in.h>
- #include <netdb.h>
- #include <arpa/inet.h>
diff --git a/testing/hplip/more-imageprocessor-removes.patch b/testing/hplip/more-imageprocessor-removes.patch
new file mode 100644
index 00000000000..e4ea2090629
--- /dev/null
+++ b/testing/hplip/more-imageprocessor-removes.patch
@@ -0,0 +1,67 @@
+on x86 this seems to try symlink it in /usr/lib even when disabled
+--
+diff --git a/Makefile.in b/Makefile.in
+index 3c0621c..25d1635 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -122,8 +122,6 @@ DIST_COMMON = $(am__configure_deps) \
+ @HPLIP_BUILD_TRUE@am__append_12 = libhpip.la
+ @FULL_BUILD_TRUE@@HPLIP_BUILD_TRUE@am__append_13 = prnt/drv/hpijs.drv.in.template \
+ @FULL_BUILD_TRUE@@HPLIP_BUILD_TRUE@ prnt/drv/hpcups.drv.in.template \
+-@FULL_BUILD_TRUE@@HPLIP_BUILD_TRUE@ prnt/hpcups/libImageProcessor-x86_64.so \
+-@FULL_BUILD_TRUE@@HPLIP_BUILD_TRUE@ prnt/hpcups/libImageProcessor-x86_32.so \
+ @FULL_BUILD_TRUE@@HPLIP_BUILD_TRUE@ prnt/ipp-usb/HPLIP.conf
+ @FULL_BUILD_TRUE@@HPLIP_BUILD_TRUE@am__append_14 = dat2drv.py install.py hplip-install init-suse-firewall init-iptables-firewall class_rpm_build.sh hplipclassdriver.spec createPPD.sh Makefile_dat2drv hpijs-drv
+ @FULL_BUILD_TRUE@@HPLIP_BUILD_TRUE@@HPLIP_CLASS_DRIVER_FALSE@am__append_15 = scan/sane/hpaio.desc \
+@@ -774,8 +772,6 @@ am__dist_locatedriver_DATA_DIST = locatedriver
+ am__dist_models_DATA_DIST = data/models/models.dat
+ am__dist_noinst_DATA_DIST = prnt/drv/hpijs.drv.in.template \
+ prnt/drv/hpcups.drv.in.template \
+- prnt/hpcups/libImageProcessor-x86_64.so \
+- prnt/hpcups/libImageProcessor-x86_32.so \
+ prnt/ipp-usb/HPLIP.conf scan/sane/hpaio.desc \
+ installer/text_install.py data/localization/hplip_de.ts \
+ data/localization/hplip_es.ts data/localization/hplip_fr.ts \
+@@ -5215,11 +5211,10 @@ libapdk_la_CFLAGS = $(libapdk_la_CXXFLAGS) -Iprnt/hpijs
+ @HPCUPS_INSTALL_TRUE@ prnt/hpcups/flate_colorspace.h prnt/hpcups/RunLenEncoding.h prnt/hpcups/common_defines.h \
+ @HPCUPS_INSTALL_TRUE@ prnt/hpcups/genPCLm.h \
+ @HPCUPS_INSTALL_TRUE@ common/utils.c common/utils.h prnt/hpcups/Hbpl1_Wrapper.cpp prnt/hpcups/genPCLm.cpp \
+-@HPCUPS_INSTALL_TRUE@ prnt/hpcups/genJPEGStrips.cpp prnt/hpcups/RunLenEncoding.cpp \
+-@HPCUPS_INSTALL_TRUE@ prnt/hpcups/ImageProcessor.h
++@HPCUPS_INSTALL_TRUE@ prnt/hpcups/genJPEGStrips.cpp prnt/hpcups/RunLenEncoding.cpp
+
+ @HPCUPS_INSTALL_TRUE@hpcups_CXXFLAGS = $(APDK_ENDIAN_FLAG) $(DBUS_CFLAGS)
+-@HPCUPS_INSTALL_TRUE@hpcups_LDADD = -L./prnt/hpcups/ -ljpeg -ldl -lImageProcessor -lcups -lcupsimage -lz $(DBUS_LIBS)
++@HPCUPS_INSTALL_TRUE@hpcups_LDADD = -L./prnt/hpcups/ -ljpeg -ldl -lcups -lcupsimage -lz $(DBUS_LIBS)
+ #else
+ #hpcupsdir = $(cupsfilterdir)
+ #hpcups_PROGRAMS = hpcups
+@@ -10191,16 +10186,6 @@ uninstall-am: uninstall-apparmor_abstractionDATA \
+
+
+ install-data-hook:
+-@HPLIP_BUILD_TRUE@ if [ \( "$(UNAME)" = "x86_64" -a -d "$(libdir)/" \) ]; then \
+-@HPLIP_BUILD_TRUE@ cp prnt/hpcups/libImageProcessor-x86_64.so $(libdir)/ ; \
+-@HPLIP_BUILD_TRUE@ chmod 775 $(libdir)/libImageProcessor-x86_64.so ; \
+-@HPLIP_BUILD_TRUE@ ln -sf $(libdir)/libImageProcessor-x86_64.so $(libdir)/libImageProcessor.so ; \
+-@HPLIP_BUILD_TRUE@ fi; \
+-@HPLIP_BUILD_TRUE@ if [ \( \( "$(UNAME)" = "i686" -o "$(UNAME)" = "i386" \) -a -d "$(libdir)/" \) ]; then \
+-@HPLIP_BUILD_TRUE@ cp prnt/hpcups/libImageProcessor-x86_32.so $(libdir)/ ; \
+-@HPLIP_BUILD_TRUE@ chmod 775 $(libdir)/libImageProcessor-x86_32.so ; \
+-@HPLIP_BUILD_TRUE@ ln -sf $(libdir)/libImageProcessor-x86_32.so $(libdir)/libImageProcessor.so ; \
+-@HPLIP_BUILD_TRUE@ fi
+ @HPLIP_BUILD_TRUE@ if [ -d "/usr/share/ipp-usb/quirks/" ]; then \
+ @HPLIP_BUILD_TRUE@ echo "ipp-usb directory exists"; \
+ @HPLIP_BUILD_TRUE@ cp prnt/ipp-usb/HPLIP.conf /usr/share/ipp-usb/quirks/ ; \
+diff --git a/hplipclassdriver.spec b/hplipclassdriver.spec
+index 1dc4cce..25bd09e 100644
+--- a/hplipclassdriver.spec
++++ b/hplipclassdriver.spec
+@@ -10,7 +10,6 @@ Group: Applications
+ ldconfig
+ semodule -i /usr/share/hplip/selinux/mypol.pp
+ #ln -sf /usr/lib/libImageProcessor-x86_64.so /usr/lib/libImageProcessor.so
+-ln -sf /usr/lib/libImageProcessor-x86_32.so /usr/lib/libImageProcessor.so
+ %description
+ The HP Linux Imaging and Printing (HPLIP) system
+ provides a unified single and multi-function connectivity
diff --git a/testing/hplip/no-empty-glob.patch b/testing/hplip/no-empty-glob.patch
new file mode 100644
index 00000000000..49dd78f841f
--- /dev/null
+++ b/testing/hplip/no-empty-glob.patch
@@ -0,0 +1,18 @@
+--- a/createPPD.sh
++++ b/createPPD.sh
+@@ -81,6 +81,7 @@
+ install -d ppd/hpcups
+ ppdc -d ppd/hpcups prnt/drv/hpcups.drv
+ for i in ppd/hpcups/*.ppd; do
++ [ -f "$i" ] || continue
+ gzip -c "$i" > "$i.gz"
+ done
+
+@@ -88,6 +89,7 @@
+ ppdc -d ppd/hpijs prnt/drv/hpijs.drv
+ echo "gzip ppd files..."
+ for i in ppd/hpijs/*.ppd; do
++ [ -f "$i" ] || continue
+ gzip -c "$i" > "$i.gz"
+ done
+ echo "building foomatic_drv.inc..."
diff --git a/testing/hplip/python-3.8-compat.patch b/testing/hplip/python-3.8-compat.patch
deleted file mode 100644
index 10cc034fdd8..00000000000
--- a/testing/hplip/python-3.8-compat.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-diff --git a/configure.in b/configure.in
-index 470486d..d6acb9d 100755
---- a/configure.in
-+++ b/configure.in
-@@ -611,10 +611,6 @@ if test "$class_driver" = "no" && test "$hpijs_only_build" = "no" && test "$lite
- PYTHONINCLUDEDIR=`$PYTHON -c "from distutils.sysconfig import get_python_inc; print (get_python_inc());"`
- AC_MSG_RESULT("using $PYTHONINCLUDEDIR .... python${PYTHON_VERSION}/Python.h")
- AC_ARG_VAR(PYTHONINCLUDEDIR, [path to Python.h C header file])
-- AC_CHECK_HEADERS([python${PYTHON_VERSION}/Python.h python${PYTHON_VERSION}mu/Python.h python${PYTHON_VERSION}m/Python.h ],
-- [FOUND_HEADER=yes; break;])
-- AS_IF([test "x$FOUND_HEADER" != "xyes"],
-- [AC_MSG_ERROR([cannot find python-devel support], 6)])
- fi
-
- if test "$hpijs_only_build" = "no" && test "$scan_build" = "yes" && test "$hpcups_only_build" = "no"; then
diff --git a/testing/hr/APKBUILD b/testing/hr/APKBUILD
deleted file mode 100644
index 1e0a2f27561..00000000000
--- a/testing/hr/APKBUILD
+++ /dev/null
@@ -1,25 +0,0 @@
-# Contributor: Grigory Kirillov <txgk@bk.ru>
-# Maintainer: Grigory Kirillov <txgk@bk.ru>
-pkgname=hr
-pkgver=1.3
-pkgrel=0
-pkgdesc="Script that prints characters in the entire width of the terminal"
-url="https://github.com/LuRsT/hr"
-arch="noarch"
-license="MIT"
-options="!check" # no test suite
-depends="
- bash
- ncurses
- "
-subpackages="$pkgname-doc"
-source="https://github.com/LuRsT/hr/archive/$pkgver/hr-$pkgver.tar.gz"
-
-package() {
- install -Dm755 hr -t "$pkgdir"/usr/bin/
- install -Dm644 hr.1 -t "$pkgdir"/usr/share/man/man1/
-}
-
-sha512sums="
-9f461bde4048c9e3b061f7fead46fe203a30518079af31eef1f86c1dca578647935b61868eb27327134c2ad58497b970e42737cc199f27ddba173f01fd0f954b hr-1.3.tar.gz
-"
diff --git a/testing/hsetroot/APKBUILD b/testing/hsetroot/APKBUILD
index f6f3ec67cce..b586b5c26ff 100644
--- a/testing/hsetroot/APKBUILD
+++ b/testing/hsetroot/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname="hsetroot"
pkgver="1.0.5"
-pkgrel=0
+pkgrel=1
pkgdesc="Yet another wallpaper application"
url="https://github.com/himdel/hsetroot"
arch="all"
diff --git a/testing/hstdb/APKBUILD b/testing/hstdb/APKBUILD
new file mode 100644
index 00000000000..3c6dfee2c3e
--- /dev/null
+++ b/testing/hstdb/APKBUILD
@@ -0,0 +1,52 @@
+# Contributor: Jakub Jirutka <jakub@jirutka.cz>
+# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
+pkgname=hstdb
+pkgver=2.1.0
+pkgrel=2
+pkgdesc="Better history management for Zsh"
+url="https://github.com/AlexanderThaller/hstdb"
+# riscv64: textrels
+# s390x: fails to build nix crate
+arch="all !riscv64 !s390x"
+license="MIT"
+makedepends="cargo cargo-auditable"
+source="https://github.com/AlexanderThaller/hstdb/archive/$pkgver/hstdb-$pkgver.tar.gz
+ fix-format_duration-panicing.patch
+ replace-pretty_env_logger.patch
+ default-histfile-path.patch
+ rename-text_excluded.patch
+ strip-features.patch
+ "
+
+# Disable histdb-import that depends on sqlite.
+_cargo_opts="--frozen --no-default-features"
+
+prepare() {
+ cargo fetch --locked
+
+ default_prepare
+
+ # Update Cargo.lock after patching.
+ cargo fetch
+}
+
+build() {
+ cargo auditable build $_cargo_opts --release
+}
+
+check() {
+ cargo test $_cargo_opts
+}
+
+package() {
+ install -D -m755 target/release/$pkgname -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+1a29c81e52822823967178e53f9135ba66ed156ebe36145e778f48e8390e7e6b8420897d07d40dfc9434d3068fdbafc1831bf441d127d2f3ba42d7a2e686188e hstdb-2.1.0.tar.gz
+ffed0c79621123e5cf8fdce729e7d0e6d9d077e975fd0c5c7c3e83b91e8ff7071edf309c5b165241e3f24b7b20acf04618e5a4e2e856843e9f9b1927c90c7136 fix-format_duration-panicing.patch
+147c543d2dc9055c9072f5eba81be27f0dd911fe3867d460982fedd4db1a50043509df119d3a9759303465a6c97506b3dc37db1c26c7d7557b6ec40248b4a482 replace-pretty_env_logger.patch
+80eaa11a2114e0352ec99bf2db955136cc08fb85a48b978254c2d6ea806d1718058b8972135f33f7ed8a22b800843b6e421ca15e908b891d5f68cddf06f106fb default-histfile-path.patch
+d8a636d5b035bf2ce79db4be34f3011adde6a6015da1db22308e796f14a557b8053caeb2f3ff7b8391198ff97df6702bfbd0c9a81bad22e2d9ec6294f6c97c8b rename-text_excluded.patch
+2c001f5a40e962acf22006854853a52abd258148042b43e32086aeacdaaffa483ffa25d9ba082206bf63e66a22ba45f9eec727299c5fe0b91127b05ddbe28a43 strip-features.patch
+"
diff --git a/testing/hstdb/default-histfile-path.patch b/testing/hstdb/default-histfile-path.patch
new file mode 100644
index 00000000000..bdffebf2842
--- /dev/null
+++ b/testing/hstdb/default-histfile-path.patch
@@ -0,0 +1,33 @@
+Patch-Source: https://github.com/AlexanderThaller/hstdb/pull/55
+--
+From edd0899c6a53db041972a3411c0973d291b1cf77 Mon Sep 17 00:00:00 2001
+From: Jakub Jirutka <jakub@jirutka.cz>
+Date: Sun, 12 Mar 2023 19:36:37 +0100
+Subject: [PATCH] Get default histfile path from HISTFILE env. variable if
+ exists
+
+This is the standard Zsh variable to define the histfile location.
+---
+ src/opt.rs | 8 +++++---
+ 1 file changed, 5 insertions(+), 3 deletions(-)
+
+diff --git a/src/opt.rs b/src/opt.rs
+index af7fb97..91cae47 100644
+--- a/src/opt.rs
++++ b/src/opt.rs
+@@ -70,9 +70,11 @@ fn default_histdb_sqlite_path() -> PathBuf {
+ }
+
+ fn default_zsh_histfile_path() -> PathBuf {
+- let base_dirs = base_directory();
+- let home = base_dirs.home_dir();
+- home.join(".histfile")
++ std::env::var_os("HISTFILE").map(PathBuf::from).unwrap_or_else(|| {
++ let base_dirs = base_directory();
++ let home = base_dirs.home_dir();
++ home.join(".histfile")
++ })
+ }
+
+ fn default_socket_path() -> PathBuf {
+
diff --git a/testing/hstdb/fix-format_duration-panicing.patch b/testing/hstdb/fix-format_duration-panicing.patch
new file mode 100644
index 00000000000..05c355016d4
--- /dev/null
+++ b/testing/hstdb/fix-format_duration-panicing.patch
@@ -0,0 +1,332 @@
+Patch-Source: https://github.com/AlexanderThaller/hstdb/commit/977aa3bc96b27e27020eb98668fd24939eb6b56a
+--
+From 977aa3bc96b27e27020eb98668fd24939eb6b56a Mon Sep 17 00:00:00 2001
+From: Alexander Thaller <alexander.thaller@trivago.com>
+Date: Thu, 7 Jul 2022 14:34:49 +0200
+Subject: [PATCH] Fix format_duration panicing when printing negative duration
+ (#50)
+
+---
+ Cargo.lock | 19 ++++---
+ Cargo.toml | 1 +
+ src/main.rs | 2 +-
+ src/opt.rs | 4 +-
+ src/run/mod.rs | 138 ++++++++++++++++++++++++++++++++-----------------
+ 5 files changed, 109 insertions(+), 55 deletions(-)
+
+diff --git a/Cargo.lock b/Cargo.lock
+index 3f62a3f..163a042 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -306,6 +306,12 @@ dependencies = [
+ "termcolor",
+ ]
+
++[[package]]
++name = "exitcode"
++version = "1.1.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "de853764b47027c2e862a995c34978ffa63c1501f2e15f987ba11bd4f9bba193"
++
+ [[package]]
+ name = "fallible-iterator"
+ version = "0.2.0"
+@@ -453,6 +459,7 @@ dependencies = [
+ "csv",
+ "ctrlc",
+ "directories",
++ "exitcode",
+ "flume",
+ "glob",
+ "hostname",
+@@ -635,9 +642,9 @@ dependencies = [
+
+ [[package]]
+ name = "once_cell"
+-version = "1.12.0"
++version = "1.13.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "7709cef83f0c1f58f666e746a08b21e0085f7440fa6a29cc194d68aac97a4225"
++checksum = "18a6dbe30758c9f83eb00cbea4ac95966305f5a7772f3f42ebfc7fc7eddbd8e1"
+
+ [[package]]
+ name = "os_str_bytes"
+@@ -820,9 +827,9 @@ dependencies = [
+
+ [[package]]
+ name = "regex"
+-version = "1.5.6"
++version = "1.6.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "d83f127d94bdbcda4c8cc2e50f6f84f4b611f69c902699ca385a39c3a75f9ff1"
++checksum = "4c4eb3267174b8c6c2f654116623910a0fef09c4753f8dd83db29c48a0df988b"
+ dependencies = [
+ "aho-corasick",
+ "memchr",
+@@ -837,9 +844,9 @@ checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132"
+
+ [[package]]
+ name = "regex-syntax"
+-version = "0.6.26"
++version = "0.6.27"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "49b3de9ec5dc0a3417da371aab17d729997c15010e7fd24ff707773a33bddb64"
++checksum = "a3f87b73ce11b1619a3c6332f45341e0047173771e8b8b73f87bfeefb7b56244"
+
+ [[package]]
+ name = "remove_dir_all"
+diff --git a/Cargo.toml b/Cargo.toml
+index 4619534..4630e39 100644
+--- a/Cargo.toml
++++ b/Cargo.toml
+@@ -41,6 +41,7 @@ sled = "0.34"
+ thiserror = "1"
+ toml = "0.5"
+ uuid = { version = "1", features = ["serde", "v4"] }
++exitcode = "1.1.2"
+
+ [dev-dependencies]
+ tempfile = "3"
+diff --git a/src/main.rs b/src/main.rs
+index fd503ef..238d7f7 100644
+--- a/src/main.rs
++++ b/src/main.rs
+@@ -4,7 +4,6 @@
+ #![forbid(unsafe_code)]
+
+ use clap::Parser;
+-use log::error;
+
+ mod client;
+ mod config;
+@@ -15,6 +14,7 @@ mod run;
+ mod server;
+ mod store;
+
++use log::error;
+ use opt::Opt;
+
+ fn main() {
+diff --git a/src/opt.rs b/src/opt.rs
+index 9099228..af7fb97 100644
+--- a/src/opt.rs
++++ b/src/opt.rs
+@@ -400,10 +400,10 @@ impl Opt {
+ SubCommand::Import(s) => match s {
+ #[cfg(feature = "histdb-import")]
+ Import::Histdb(o) => run::import::histdb(&o.import_file, o.data_dir.data_dir)
+- .map_err(run::Error::Import),
++ .map_err(run::Error::ImportHistdb),
+ Import::Histfile(o) => {
+ run::import::histfile(&o.import_file, o.data_dir.data_dir)
+- .map_err(run::Error::Import)
++ .map_err(run::Error::ImportHistfile)
+ }
+ },
+ SubCommand::Init => {
+diff --git a/src/run/mod.rs b/src/run/mod.rs
+index d11de89..8caebbc 100644
+--- a/src/run/mod.rs
++++ b/src/run/mod.rs
+@@ -28,7 +28,10 @@ use comfy_table::{
+ Cell,
+ Table,
+ };
+-use log::debug;
++use log::{
++ debug,
++ warn,
++};
+ use std::{
+ convert::TryInto,
+ io::Write,
+@@ -69,11 +72,21 @@ pub enum Error {
+ #[error("can not write to stdout: {0}")]
+ WriteStdout(std::io::Error),
+
+- #[error("can not import entries: {0}")]
+- Import(import::Error),
+-
+ #[error("can not read configuration file: {0}")]
+ ReadConfig(config::Error),
++
++ #[error("encountered negative duration when trying to format duration")]
++ NegativeDuration,
++
++ #[cfg(feature = "histdb-import")]
++ #[error("can not import from histdb: {0}")]
++ ImportHistdb(import::Error),
++
++ #[error("can not import from histfile: {0}")]
++ ImportHistfile(import::Error),
++
++ #[error("can not format entry: {0}\nentry: {1:?}")]
++ FormatEntry(Box<Error>, Entry),
+ }
+
+ #[derive(Debug)]
+@@ -144,7 +157,9 @@ pub fn default(filter: &Filter, display: &TableDisplay, data_dir: PathBuf) -> Re
+ let entries = store::new(data_dir).get_entries(filter)?;
+
+ if display.format {
+- default_format(display, entries)
++ default_format(display, entries);
++
++ Ok(())
+ } else {
+ default_no_format(display, entries)
+ }
+@@ -187,40 +202,56 @@ pub fn default_no_format(display: &TableDisplay, entries: Vec<Entry>) -> Result<
+ }
+
+ for entry in entries {
+- let mut row = vec![format_timestamp(entry.time_finished)];
+-
+- if display.host.is_show() {
+- row.push(entry.hostname);
++ if let Err(err) = default_no_format_entry(&mut handle, display, &entry) {
++ warn!("{}", Error::FormatEntry(Box::new(err), entry));
+ }
++ }
+
+- if display.duration.is_show() {
+- row.push(format_duration(entry.time_start, entry.time_finished)?);
+- }
++ Ok(())
++}
+
+- if display.status.is_show() {
+- row.push(format!("{}", entry.result));
+- }
++fn default_no_format_entry<T>(
++ handle: &mut T,
++ display: &TableDisplay,
++ entry: &Entry,
++) -> Result<(), Error>
++where
++ T: Write,
++{
++ let mut row = vec![format_timestamp(entry.time_finished)];
+
+- if display.session.is_show() {
+- row.push(format_uuid(entry.session_id));
+- }
+- if display.pwd.is_show() {
+- row.push(format_pwd(&entry.pwd)?);
+- }
++ if display.host.is_show() {
++ row.push(entry.hostname.clone());
++ }
+
+- row.push(format_command(&entry.command, display.format));
++ if display.duration.is_show() {
++ row.push(format_duration(entry.time_start, entry.time_finished)?);
++ }
+
+- handle
+- .write_all(row.join("\t").as_bytes())
+- .map_err(Error::WriteStdout)?;
++ if display.status.is_show() {
++ row.push(format!("{}", entry.result));
++ }
+
+- handle.write_all(b"\n").map_err(Error::WriteStdout)?;
++ if display.session.is_show() {
++ row.push(format_uuid(entry.session_id));
++ }
++
++ if display.pwd.is_show() {
++ row.push(format_pwd(&entry.pwd)?);
+ }
+
++ row.push(format_command(&entry.command, display.format));
++
++ handle
++ .write_all(row.join("\t").as_bytes())
++ .map_err(Error::WriteStdout)?;
++
++ handle.write_all(b"\n").map_err(Error::WriteStdout)?;
++
+ Ok(())
+ }
+
+-pub fn default_format(display: &TableDisplay, entries: Vec<Entry>) -> Result<(), Error> {
++pub fn default_format(display: &TableDisplay, entries: Vec<Entry>) {
+ let mut table = Table::new();
+ table.load_preset(" ");
+ table.set_content_arrangement(comfy_table::ContentArrangement::Dynamic);
+@@ -254,33 +285,43 @@ pub fn default_format(display: &TableDisplay, entries: Vec<Entry>) -> Result<(),
+ }
+
+ for entry in entries {
+- let mut row = vec![format_timestamp(entry.time_finished)];
+-
+- if display.host.is_show() {
+- row.push(entry.hostname);
++ if let Err(err) = default_format_entry(&mut table, display, &entry) {
++ warn!("{}", Error::FormatEntry(Box::new(err), entry));
+ }
++ }
+
+- if display.duration.is_show() {
+- row.push(format_duration(entry.time_start, entry.time_finished)?);
+- }
++ println!("{}", table);
++}
+
+- if display.status.is_show() {
+- row.push(format!("{}", entry.result));
+- }
++fn default_format_entry(
++ table: &mut Table,
++ display: &TableDisplay,
++ entry: &Entry,
++) -> Result<(), Error> {
++ let mut row = vec![format_timestamp(entry.time_finished)];
+
+- if display.session.is_show() {
+- row.push(format_uuid(entry.session_id));
+- }
+- if display.pwd.is_show() {
+- row.push(format_pwd(&entry.pwd)?);
+- }
++ if display.host.is_show() {
++ row.push(entry.hostname.clone());
++ }
+
+- row.push(format_command(&entry.command, display.format));
++ if display.duration.is_show() {
++ row.push(format_duration(entry.time_start, entry.time_finished)?);
++ }
+
+- table.add_row(row);
++ if display.status.is_show() {
++ row.push(format!("{}", entry.result));
+ }
+
+- println!("{}", table);
++ if display.session.is_show() {
++ row.push(format_uuid(entry.session_id));
++ }
++ if display.pwd.is_show() {
++ row.push(format_pwd(&entry.pwd)?);
++ }
++
++ row.push(format_command(&entry.command, display.format));
++
++ table.add_row(row);
+
+ Ok(())
+ }
+@@ -418,6 +459,11 @@ fn format_duration(
+ ) -> Result<String, Error> {
+ let duration = time_finished - time_start;
+ let duration_ms = duration.num_milliseconds();
++
++ if duration_ms < 0 {
++ return Err(Error::NegativeDuration);
++ }
++
+ let duration_std =
+ std::time::Duration::from_millis(duration_ms.try_into().map_err(Error::ConvertDuration)?);
+
diff --git a/testing/hstdb/rename-text_excluded.patch b/testing/hstdb/rename-text_excluded.patch
new file mode 100644
index 00000000000..4b6c234498a
--- /dev/null
+++ b/testing/hstdb/rename-text_excluded.patch
@@ -0,0 +1,27 @@
+Patch-Source: https://github.com/AlexanderThaller/hstdb/pull/56
+--
+From 958fa44a77846142374f53e2beb1da8c667fc637 Mon Sep 17 00:00:00 2001
+From: Jakub Jirutka <jakub@jirutka.cz>
+Date: Sun, 12 Mar 2023 19:55:13 +0100
+Subject: [PATCH] Rename option --text_excluded to --text-excluded for
+ consistency
+
+All other options use kebab-case. The old name will still work, I've
+specified it as an alias.
+---
+ src/opt.rs | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/opt.rs b/src/opt.rs
+index af7fb97..db9f6e1 100644
+--- a/src/opt.rs
++++ b/src/opt.rs
+@@ -193,7 +193,7 @@ struct DefaultArgs {
+ command_text: Option<Regex>,
+
+ /// Only print entries not containing the given regex
+- #[clap(short = 'T', long = "text_excluded")]
++ #[clap(short = 'T', long = "text-excluded", alias = "text_excluded")]
+ command_text_excluded: Option<Regex>,
+
+ /// Only print entries that have been executed in the current directory
diff --git a/testing/hstdb/replace-pretty_env_logger.patch b/testing/hstdb/replace-pretty_env_logger.patch
new file mode 100644
index 00000000000..aa39770027b
--- /dev/null
+++ b/testing/hstdb/replace-pretty_env_logger.patch
@@ -0,0 +1,137 @@
+Patch-Source: https://github.com/AlexanderThaller/hstdb/pull/54
+--
+From 3754ddf5aff975e193b9a40beacbbd4e09d6d1dc Mon Sep 17 00:00:00 2001
+From: Jakub Jirutka <jakub@jirutka.cz>
+Date: Sun, 12 Mar 2023 01:44:36 +0100
+Subject: [PATCH] Replace outdated pretty_env_logger with env_logger
+
+pretty_env_logger hasn't been updated for 3 years and it pulls outdated
+version of env_logger.
+---
+ Cargo.lock | 40 ++++++----------------------------------
+ Cargo.toml | 2 +-
+ src/opt.rs | 2 +-
+ 3 files changed, 8 insertions(+), 36 deletions(-)
+
+diff --git a/Cargo.lock b/Cargo.lock
+index 163a042..aecf0b9 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -295,14 +295,11 @@ dependencies = [
+
+ [[package]]
+ name = "env_logger"
+-version = "0.7.1"
++version = "0.10.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "44533bbbb3bb3c1fa17d9f2e4e38bbbaf8396ba82193c4cb1b6445d711445d36"
++checksum = "85cdab6a89accf66733ad5a1693a4dcced6aeff64602b634530dd73c1f3ee9f0"
+ dependencies = [
+- "atty",
+- "humantime 1.3.0",
+ "log",
+- "regex",
+ "termcolor",
+ ]
+
+@@ -459,14 +456,14 @@ dependencies = [
+ "csv",
+ "ctrlc",
+ "directories",
++ "env_logger",
+ "exitcode",
+ "flume",
+ "glob",
+ "hostname",
+- "humantime 2.1.0",
++ "humantime",
+ "log",
+ "pretty_assertions",
+- "pretty_env_logger",
+ "regex",
+ "rusqlite",
+ "serde",
+@@ -477,15 +474,6 @@ dependencies = [
+ "uuid",
+ ]
+
+-[[package]]
+-name = "humantime"
+-version = "1.3.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "df004cfca50ef23c36850aaaa59ad52cc70d0e90243c3c7737a4dd32dc7a3c4f"
+-dependencies = [
+- "quick-error",
+-]
+-
+ [[package]]
+ name = "humantime"
+ version = "2.1.0"
+@@ -534,9 +522,9 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
+
+ [[package]]
+ name = "libc"
+-version = "0.2.126"
++version = "0.2.140"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "349d5a591cd28b49e1d1037471617a32ddcda5731b99419008085f72d5a53836"
++checksum = "99227334921fae1a979cf0bfdfcc6b3e5ce376ef57e16fb6fb3ea2ed6095f80c"
+
+ [[package]]
+ name = "libsqlite3-sys"
+@@ -747,16 +735,6 @@ dependencies = [
+ "output_vt100",
+ ]
+
+-[[package]]
+-name = "pretty_env_logger"
+-version = "0.4.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "926d36b9553851b8b0005f1275891b392ee4d2d833852c417ed025477350fb9d"
+-dependencies = [
+- "env_logger",
+- "log",
+-]
+-
+ [[package]]
+ name = "proc-macro-error"
+ version = "1.0.4"
+@@ -790,12 +768,6 @@ dependencies = [
+ "unicode-ident",
+ ]
+
+-[[package]]
+-name = "quick-error"
+-version = "1.2.3"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0"
+-
+ [[package]]
+ name = "quote"
+ version = "1.0.20"
+diff --git a/Cargo.toml b/Cargo.toml
+index 4630e39..7eb4fa7 100644
+--- a/Cargo.toml
++++ b/Cargo.toml
+@@ -33,7 +33,7 @@ glob = "0.3"
+ hostname = "0.3"
+ humantime = "2"
+ log = { version = "0.4", features = ["serde"] }
+-pretty_env_logger = "0.4"
++env_logger = { version = "0.10.0", default-features = false, features = ["color"] }
+ regex = "1"
+ rusqlite = { version = "0.27", optional = true }
+ serde = { version = "1", features = ["derive"] }
+diff --git a/src/opt.rs b/src/opt.rs
+index af7fb97..de1ef24 100644
+--- a/src/opt.rs
++++ b/src/opt.rs
+@@ -356,7 +356,7 @@ impl Opt {
+ if std::env::var_os("RUST_LOG").is_none() {
+ std::env::set_var("RUST_LOG", config.log_level.as_str());
+ }
+- pretty_env_logger::init();
++ env_logger::init();
+
+ sub_command.map_or_else(
+ || {
diff --git a/testing/hstdb/strip-features.patch b/testing/hstdb/strip-features.patch
new file mode 100644
index 00000000000..4081675fa28
--- /dev/null
+++ b/testing/hstdb/strip-features.patch
@@ -0,0 +1,12 @@
+Strip some unnecessary features in dependencies to reduce size and bloat.
+
+--- a/Cargo.toml
++++ b/Cargo.toml
+@@ -24 +24 @@
+-clap = { version = "3", features = ["derive", "env"] }
++clap = { version = "3", default-features = false, features = ["std", "derive", "env"] }
+@@ -35,2 +32,2 @@
+-env_logger = { version = "0.10.0", default-features = false, features = ["color"] }
+-regex = "1"
++env_logger = { version = "0.10.0", default-features = false }
++regex = { version = "1", default-features = false, features = ["std", "perf", "unicode-case", "unicode-gencat", "unicode-perl"] }
diff --git a/testing/htmlcxx/APKBUILD b/testing/htmlcxx/APKBUILD
index 720ad5598c4..77b8f5278f9 100644
--- a/testing/htmlcxx/APKBUILD
+++ b/testing/htmlcxx/APKBUILD
@@ -2,9 +2,9 @@
# Maintainer: shum <shum@posteo.net>
pkgname=htmlcxx
pkgver=0.87
-pkgrel=0
+pkgrel=1
pkgdesc="Simple non-validating CSS1 and HTML parser for C++"
-url="http://htmlcxx.sourceforge.net/"
+url="https://htmlcxx.sourceforge.net/"
arch="all"
license="LGPL-2.0-only"
options="!check" # no testsuite
@@ -12,7 +12,12 @@ subpackages="$pkgname-dev"
source="$pkgname-$pkgver.tar.gz::https://sourceforge.net/projects/htmlcxx/files/v$pkgver/htmlcxx-$pkgver.tar.gz"
build() {
- ./configure --prefix=/usr --build=$CBUILD --host=$CHOST
+ # gcc12 defaults to 17 which fails due to throw()
+ export CXXFLAGS="$CXXFLAGS -std=c++14"
+ ./configure \
+ --prefix=/usr \
+ --build=$CBUILD \
+ --host=$CHOST
make
}
diff --git a/testing/htmldoc/APKBUILD b/testing/htmldoc/APKBUILD
index 745e22511ff..635b9a8a43b 100644
--- a/testing/htmldoc/APKBUILD
+++ b/testing/htmldoc/APKBUILD
@@ -1,22 +1,17 @@
# Contributor: Grigory Kirillov <txgk@bk.ru>
-# Maintainer: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
pkgname=htmldoc
-pkgver=1.9.16
+pkgver=1.9.18
pkgrel=0
pkgdesc="HTML conversion software"
url="https://www.msweet.org/htmldoc"
arch="all"
license="GPL-2.0-only"
options="!check" # no test suite
-makedepends="fltk-dev libpng-dev libjpeg-turbo-dev zlib-dev"
+makedepends="cups-dev fltk-dev libpng-dev libjpeg-turbo-dev zlib-dev"
source="https://github.com/michaelrsweet/htmldoc/archive/v$pkgver/htmldoc-v$pkgver.tar.gz"
subpackages="$pkgname-doc"
-prepare() {
- default_prepare
- update_config_sub
-}
-
build() {
./configure \
--target="$CTARGET" \
@@ -31,5 +26,5 @@ package() {
}
sha512sums="
-3970df269a0aeb8145b65dd47daa2d2351c1453b6b71c1775e571089bcd97fffc6d83df8c14906fb8da5eb9af3e1d8bd0c0a689a4e64b59c974331a6ac73daab htmldoc-v1.9.16.tar.gz
+529726b719b9175c66a8e0b65902470a1b4faf6c166f3a36295ff58293a1c25324a5e4852f090760d7543f2d546d0d4e58fc70080dbfb0537895956126d0ae00 htmldoc-v1.9.18.tar.gz
"
diff --git a/testing/htmlmin/APKBUILD b/testing/htmlmin/APKBUILD
deleted file mode 100644
index 93746dd3c8a..00000000000
--- a/testing/htmlmin/APKBUILD
+++ /dev/null
@@ -1,25 +0,0 @@
-# Contributor: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-# Maintainer: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-pkgname=htmlmin
-pkgver=0.1.12
-pkgrel=1
-pkgdesc="A configurable HTML Minifier with safety features"
-options="!check" # no tests
-url="https://github.com/mankyd/htmlmin"
-arch="noarch"
-license="BSD-3-Clause"
-depends="python3"
-makedepends="py3-setuptools"
-source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/h/htmlmin/htmlmin-$pkgver.tar.gz"
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-5669327dc64d8d28accdfe0d9a222e723fccdc12b52e7f0315fb9caf958a734a0cf0514ad476cbd0b7d0f2d83514a207867127f135f5e51cfda9b15dbfe24b78 htmlmin-0.1.12.tar.gz
-"
diff --git a/testing/htmlq/APKBUILD b/testing/htmlq/APKBUILD
deleted file mode 100644
index bb85f5177d6..00000000000
--- a/testing/htmlq/APKBUILD
+++ /dev/null
@@ -1,24 +0,0 @@
-# Contributor: Michał Polański <michal@polanski.me>
-# Maintainer: Michał Polański <michal@polanski.me>
-pkgname=htmlq
-pkgver=0.4.0
-pkgrel=0
-pkgdesc="Like jq, but for HTML"
-url="https://github.com/mgdm/htmlq"
-license="MIT"
-arch="all !s390x !riscv64" # blocked by rust/cargo
-options="!check" # no test suite
-makedepends="cargo"
-source="https://github.com/mgdm/htmlq/archive/v$pkgver/htmlq-$pkgver.tar.gz"
-
-build() {
- cargo build --release --locked
-}
-
-package() {
- install -Dm755 target/release/htmlq "$pkgdir"/usr/bin/htmlq
-}
-
-sha512sums="
-3cbb53b66ca894b17c95487fe33a11587449af1b0acd5fa9e804b046e15fdd50a997b5367d0b00c20dce2587cfdf9d15b75cdd97007082928228a53b2f12fde7 htmlq-0.4.0.tar.gz
-"
diff --git a/testing/htslib/APKBUILD b/testing/htslib/APKBUILD
new file mode 100644
index 00000000000..8af6f3ca9bb
--- /dev/null
+++ b/testing/htslib/APKBUILD
@@ -0,0 +1,49 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
+pkgname=htslib
+pkgver=1.19
+pkgrel=0
+pkgdesc="C library for high-throughput sequencing data formats"
+url="https://github.com/samtools/htslib"
+arch="all"
+license="MIT AND BSD-3-Clause-Modification"
+options="!check" # no test suite
+makedepends="
+ bzip2-dev
+ curl-dev
+ libdeflate-dev
+ xz-dev
+ zlib-dev
+ "
+source="https://github.com/samtools/htslib/releases/download/$pkgver/htslib-$pkgver.tar.bz2"
+subpackages="
+ $pkgname-static
+ $pkgname-dev
+ $pkgname-tools:_tools
+ $pkgname-doc
+ "
+
+build() {
+ ./configure \
+ --target="$CTARGET" \
+ --build="$CBUILD" \
+ --host="$CHOST" \
+ --prefix=/usr \
+ --enable-libcurl \
+ --with-libdeflate \
+ --with-plugin-dir=/usr/lib/htslib/plugins
+ make
+}
+
+_tools() {
+ pkgdesc="Utilities for high-throughput sequencing data formats"
+ amove usr/bin
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+0001a5aba59bf655470fc3e0444b1b51575391f2b47e50bb66d0722407bfba744611ceaf8405450c4a630d506a583ef42e46bfa0842b2a95ea48cb359164f26a htslib-1.19.tar.bz2
+"
diff --git a/testing/httpie-oauth/APKBUILD b/testing/httpie-oauth/APKBUILD
index 5b6ef89eeef..a1ad687ae57 100644
--- a/testing/httpie-oauth/APKBUILD
+++ b/testing/httpie-oauth/APKBUILD
@@ -2,21 +2,25 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=httpie-oauth
pkgver=1.0.2
-pkgrel=4
+pkgrel=9
pkgdesc="OAuth plugin for HTTPie"
-url="https://github.com/jkbr/httpie-oauth"
+url="https://github.com/httpie/httpie-oauth"
arch="noarch"
license="BSD-3-Clause"
depends="python3 httpie py3-requests-oauthlib"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/h/httpie-oauth/httpie-oauth-$pkgver.tar.gz"
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="d2825143e839f82591db59995619f7437fccc42e9f126ca247e19b1533706cfaadaab5c3518d3d994e898fcb3d98ed899cd9a36f07963d701eb019587c2821c6 httpie-oauth-1.0.2.tar.gz"
diff --git a/testing/httrack/APKBUILD b/testing/httrack/APKBUILD
index b778fc09987..a171c6ab9ad 100644
--- a/testing/httrack/APKBUILD
+++ b/testing/httrack/APKBUILD
@@ -3,12 +3,12 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=httrack
pkgver=3.49.2
-pkgrel=3
+pkgrel=5
pkgdesc="Website Copier - Free Software Offline Browser"
url="http://www.httrack.com/"
arch="all"
license="GPL-3.0"
-makedepends="zlib-dev openssl-dev libtool"
+makedepends="zlib-dev openssl-dev>3 libtool"
source="http://mirror.httrack.com/historical/${pkgname}-${pkgver}.tar.gz"
subpackages="$pkgname-doc"
builddir="$srcdir/$pkgname-$pkgver"
diff --git a/testing/hub/APKBUILD b/testing/hub/APKBUILD
index 877cc5368b4..3c59fd424fa 100644
--- a/testing/hub/APKBUILD
+++ b/testing/hub/APKBUILD
@@ -4,7 +4,7 @@
# Maintainer: Roberto Oliveira <robertoguimaraes8@gmail.com>
pkgname=hub
pkgver=2.14.2
-pkgrel=6
+pkgrel=22
pkgdesc="Extends git with extra features for GitHub"
url="https://hub.github.com/"
arch="all"
@@ -21,6 +21,10 @@ source="$pkgname-$pkgver.tar.gz::https://github.com/github/hub/archive/v$pkgver.
builddir="$srcdir/src/github.com/github/hub"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
prepare() {
mkdir -p "${builddir%/*}"
mv $pkgname-$pkgver "$builddir"
@@ -44,7 +48,7 @@ package() {
install -Dm644 "$builddir"/etc/$pkgname.zsh_completion \
"$pkgdir"/usr/share/zsh/site-functions/_$pkgname
install -Dm644 "$builddir"/etc/$pkgname.fish_completion \
- "$pkgdir"/usr/share/fish/completions/$pkgname.fish
+ "$pkgdir"/usr/share/fish/vendor_completions.d/$pkgname.fish
}
sha512sums="4809d12966cc983f42c8aef482e07bc4226e25fc4deba838e418664ce14ac9d2ac42842d0721a46466a80c0e492392542ecfaaccc2cea0efdd60df8b60a3ca02 hub-2.14.2.tar.gz"
diff --git a/testing/hubble-cli/APKBUILD b/testing/hubble-cli/APKBUILD
new file mode 100644
index 00000000000..c1e06a5b7f0
--- /dev/null
+++ b/testing/hubble-cli/APKBUILD
@@ -0,0 +1,57 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=hubble-cli
+pkgver=0.13.0
+pkgrel=2
+pkgdesc="CLI for the distributed networking and security observability platform"
+url="https://github.com/cilium/hubble"
+arch="all"
+license="Apache-2.0"
+makedepends="go"
+subpackages="
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/cilium/hubble/archive/refs/tags/v$pkgver.tar.gz
+ byteorder-add-s390x-support.patch
+ "
+builddir="$srcdir/hubble-$pkgver"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+prepare() {
+ go mod vendor -v
+ default_prepare
+}
+
+build() {
+ go build -mod=vendor -v \
+ -ldflags "-X github.com/cilium/hubble/pkg.Version=$pkgver" \
+ -o hubble
+
+ for shell in bash fish zsh; do
+ ./hubble completion $shell > hubble.$shell
+ done
+}
+
+check() {
+ go test ./...
+}
+
+package() {
+ install -Dm755 hubble -t "$pkgdir"/usr/bin/
+
+ install -Dm644 hubble.bash \
+ "$pkgdir"/usr/share/bash-completion/completions/hubble
+ install -Dm644 hubble.fish \
+ "$pkgdir"/usr/share/fish/vendor_completions.d/hubble.fish
+ install -Dm644 hubble.zsh \
+ "$pkgdir"/usr/share/zsh/site-functions/_hubble
+}
+
+sha512sums="
+6ff073dcbb66c6015cb13065cec5620fec7292324df63b5bfbc7af80ea54435588157bce9ddc0cf6a5ecb437ffee60e2bc44a31a0733cf8ee48bd82ac4afab71 hubble-cli-0.13.0.tar.gz
+872ccb44ac714420f87c476743d7be1b644c3a5c7e2a975d47720dc970c632ce82bb678421b053ebbc219d4a3b1f2c9f37aa74f3733a055b0f8c1dbe15fed23f byteorder-add-s390x-support.patch
+"
diff --git a/testing/hubble-cli/byteorder-add-s390x-support.patch b/testing/hubble-cli/byteorder-add-s390x-support.patch
new file mode 100644
index 00000000000..5d7fdac46e8
--- /dev/null
+++ b/testing/hubble-cli/byteorder-add-s390x-support.patch
@@ -0,0 +1,11 @@
+--- a/vendor/github.com/cilium/cilium/pkg/byteorder/byteorder_bigendian.go
++++ b/vendor/github.com/cilium/cilium/pkg/byteorder/byteorder_bigendian.go
+@@ -1,7 +1,7 @@
+ // SPDX-License-Identifier: Apache-2.0
+ // Copyright Authors of Cilium
+
+-//go:build armbe || arm64be || mips || mips64 || ppc64
++//go:build armbe || arm64be || mips || mips64 || ppc64 || s390x
+
+ package byteorder
+
diff --git a/testing/hunspell-ca-es/APKBUILD b/testing/hunspell-ca-es/APKBUILD
new file mode 100644
index 00000000000..0f9cf685fa2
--- /dev/null
+++ b/testing/hunspell-ca-es/APKBUILD
@@ -0,0 +1,22 @@
+# Contributor: Eloi Torrents <eloitor@disroot.org>
+# Maintainer: Eloi Torrents <eloitor@disroot.org>
+pkgname=hunspell-ca-es
+pkgver=3.0.7
+pkgrel=0
+pkgdesc="Catalan (Spain) hunspell dictionaries"
+url="https://www.softcatala.org/projectes/corrector-ortografic/"
+arch="noarch"
+license="GPL-2.0-or-later, LGPL-2.1-or-later"
+makedepends="unzip"
+options="!check" # no tests available
+source="https://github.com/Softcatala/catalan-dict-tools/releases/download/v$pkgver/ca.$pkgver-hunspell.zip"
+builddir="$srcdir/"
+
+package() {
+ install -d "$pkgdir"/usr/share/hunspell
+ install -m644 catalan.aff "$pkgdir"/usr/share/hunspell/ca_ES.aff
+ install -m644 catalan.dic "$pkgdir"/usr/share/hunspell/ca_ES.dic
+}
+sha512sums="
+39972b3964fa2d0fa822a2cf729efe93208aff5327fd0d8ef1ebe8f3461084c351cba4c0c73e780187f0e77a78f605659eed3ce06754ab0a6d5f2ab93bc9d155 ca.3.0.7-hunspell.zip
+"
diff --git a/testing/hunspell-es-ar/APKBUILD b/testing/hunspell-es-ar/APKBUILD
new file mode 100644
index 00000000000..33c79def80f
--- /dev/null
+++ b/testing/hunspell-es-ar/APKBUILD
@@ -0,0 +1,35 @@
+# Maintainer: Hugo Osvaldo Barrera <hugo@whynothugo.nl>
+pkgname=hunspell-es-ar
+pkgver=2.7
+pkgrel=0
+pkgdesc="Spanish (Argentina) hunspell dictionaries"
+url="https://github.com/sbosio/rla-es"
+arch="noarch"
+license="GPL-3.0-or-later AND LGPL3.0-or-later AND MPL-1.1"
+source="es_AR-$pkgver.oxt::https://github.com/sbosio/rla-es/releases/download/v$pkgver/es_AR.oxt"
+# No tests
+options="!check"
+subpackages="$pkgname-doc"
+
+unpack() {
+ msg "Unpacking sources..."
+ mkdir -p "$builddir"
+ cd "$builddir"
+ for u in $source; do
+ local s="$SRCDEST/$(filename_from_uri $u)"
+ case "$s" in
+ *.oxt) unzip $s ;;
+ esac
+ done
+}
+
+package() {
+ install -Dm644 es_AR.dic es_AR.aff -t "$pkgdir"/usr/share/hunspell
+
+ # docs
+ install -Dm644 README.txt -t "$pkgdir"/usr/share/doc/$pkgname
+}
+
+sha512sums="
+7fcd900c8486a27a9ccba7c9a090c6d41242e285fd8c12669fcdd0ff26640f406895050491b4e36e9e920943acee0990ac61a3396367a019f251e29cce92c739 es_AR-2.7.oxt
+"
diff --git a/testing/hurl/APKBUILD b/testing/hurl/APKBUILD
new file mode 100644
index 00000000000..c5bedf02a46
--- /dev/null
+++ b/testing/hurl/APKBUILD
@@ -0,0 +1,30 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=hurl
+pkgver=4.2.0
+pkgrel=0
+pkgdesc="CLI to run HTTP requests defined in simple plain text format"
+url="https://hurl.dev/"
+arch="all"
+license="Apache-2.0"
+makedepends="cargo curl-dev libxml2-dev cargo-auditable"
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/Orange-OpenSource/hurl/archive/refs/tags/$pkgver.tar.gz"
+options="!check" # tests require a running local web server
+
+prepare() {
+ default_prepare
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+package() {
+ install -Dm755 target/release/hurl target/release/hurlfmt -t "$pkgdir"/usr/bin/
+ install -Dm644 docs/manual/hurl.1 docs/manual/hurlfmt.1 -t "$pkgdir"/usr/share/man/man1/
+}
+
+sha512sums="
+a1f2f83cb41baec4efa498899145008b159510db0d9447d4f0c2856df7eb80feb36483dd3842ef059a55593a6d1fb1ea19faaf18a29752327e8f0667435d3c25 hurl-4.2.0.tar.gz
+"
diff --git a/testing/hw-probe/APKBUILD b/testing/hw-probe/APKBUILD
index 7a80ee8e8f9..2ec5f0dfe03 100644
--- a/testing/hw-probe/APKBUILD
+++ b/testing/hw-probe/APKBUILD
@@ -1,16 +1,28 @@
# Contributor: Francesco Colista <fcolista@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=hw-probe
-pkgver=1.6.4
-pkgrel=0
+pkgver=1.6.5
+pkgrel=1
pkgdesc="A tool to probe for hardware and upload result to the Linux Hardware Database"
url="https://github.com/linuxhw/hw-probe"
arch="noarch"
-license="LGPL-2.1"
+license="LGPL-2.1-or-later OR BSD-4-Clause"
makedepends="perl-dev"
-depends="perl perl-digest-sha1 perl-libwww
-hwinfo curl dmidecode smartmontools hwids-pci hwids-usb hwids-net
-memtester hdparm i2c-tools acpica sysstat xz"
+depends="
+ acpica
+ curl
+ dmidecode
+ hdparm
+ hwdata
+ i2c-tools
+ memtester
+ perl
+ perl-digest-sha1
+ perl-libwww
+ smartmontools
+ sysstat
+ xz
+ "
options="!check" # no test available
source="$pkgname-$pkgver.tar.gz::https://github.com/linuxhw/hw-probe/archive/$pkgver.tar.gz"
@@ -23,5 +35,5 @@ package() {
}
sha512sums="
-c812ebdb23f6b8a4df2f2849a29ecc1307c09f758aeb912face6e899510af69f9dee606fb0ff1807a6de1e89a5f7a8b3259b894cc823b9d25efbf26accf60ac4 hw-probe-1.6.4.tar.gz
+68d6709ca4efe82e0e5de3b580c68f76fa31384af0c53645b6609cee14b944a410e58b12ac13f879d8d86220c1088cfaad17dc6edd24cf27700e449add6f6488 hw-probe-1.6.5.tar.gz
"
diff --git a/testing/hwatch/APKBUILD b/testing/hwatch/APKBUILD
new file mode 100644
index 00000000000..31e593f79ce
--- /dev/null
+++ b/testing/hwatch/APKBUILD
@@ -0,0 +1,42 @@
+# Contributor: Jakub Jirutka <jakub@jirutka.cz>
+# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
+pkgname=hwatch
+pkgver=0.3.11
+pkgrel=0
+pkgdesc="A modern alternative to the watch command"
+url="https://github.com/blacknon/hwatch"
+ # !s390x: nix crate
+arch="all !s390x"
+license="MIT"
+makedepends="cargo cargo-auditable"
+subpackages="
+ $pkgname-doc
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
+ "
+source="https://github.com/blacknon/hwatch/archive/refs/tags/$pkgver/hwatch-$pkgver.tar.gz"
+# !check: no tests provided
+# net: fetch dependencies
+options="!check net"
+
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release
+}
+
+package() {
+ install -D -m755 target/release/$pkgname -t "$pkgdir"/usr/bin/
+ install -D -m644 man/$pkgname.1 -t "$pkgdir"/usr/share/man/man1/
+ install -D -m644 completion/fish/* -t "$pkgdir"/usr/share/fish/vendor_completions.d/
+ install -D -m644 completion/zsh/* -t "$pkgdir"/usr/share/zsh/site-functions/
+}
+
+sha512sums="
+71279a93a0bce62f08c00cd2a7ebcd787e17af1c0d35b7447fda657268faa31c0cd474a8ea3fc4ea988a68d8930dcfa0b9497d01431aee7433e79ecc64938630 hwatch-0.3.11.tar.gz
+"
diff --git a/testing/hx/APKBUILD b/testing/hx/APKBUILD
new file mode 100644
index 00000000000..8cb67daabce
--- /dev/null
+++ b/testing/hx/APKBUILD
@@ -0,0 +1,30 @@
+# Contributor: Sergiy Stupar <owner@sestolab.pp.ua>
+# Maintainer: Sergiy Stupar <owner@sestolab.pp.ua>
+pkgname=hx
+pkgver=1.0.14
+pkgrel=0
+pkgdesc="Hex editor for the terminal using plain C99 + POSIX libs"
+url="https://github.com/krpors/hx"
+arch="all"
+license="MIT"
+install="$pkgname.post-install"
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/krpors/hx/archive/v$pkgver.tar.gz
+ broken-makefile.patch
+ "
+options="!check" # No tests
+
+build() {
+ make hx_version="$pkgver" hx_git_hash="alpine-r$pkgrel" PREFIX=/usr
+}
+
+package() {
+ make PREFIX=/usr DESTDIR="$pkgdir" install
+ # rename to avoid conflicts
+ mv "$pkgdir"/usr/bin/hx "$pkgdir"/usr/bin/hx-editor
+}
+
+sha512sums="
+e8fcf210aa7f1e9857b3cff6184dc9b4e655840056511be7ba36654d665a8f57e81be032791c7d35511153ec9c6cd2ae3b689a2b3177f9650ca985c1b6827bd3 hx-1.0.14.tar.gz
+1a8d87e6e5f346cebee7f6e7e623e5cb0555e25ddef0fd13ccbaf3a3706c9e4b521be4f88d8621a02ded179a19a4da7e8bd5c8b70c1281b71cdbf49a5c838b97 broken-makefile.patch
+"
diff --git a/testing/hx/broken-makefile.patch b/testing/hx/broken-makefile.patch
new file mode 100644
index 00000000000..e33f1243345
--- /dev/null
+++ b/testing/hx/broken-makefile.patch
@@ -0,0 +1,40 @@
+- don't ignore cflags/ldflags
+- install to usr/share not share
+- don't strip always
+- don't pre-compress manpage with minimum compression
+- don't rebuild for install
+--
+diff --git a/Makefile b/Makefile
+index 6b37510..35cb380 100644
+--- a/Makefile
++++ b/Makefile
+@@ -4,14 +4,13 @@ hx_version != git describe --tags 2>/dev/null || echo "1.0.0"
+ CPPFLAGS = -DNDEBUG -DHX_GIT_HASH=\"$(hx_git_hash)\" -DHX_VERSION=\"$(hx_version)\"
+ CPPFLAGS += -D_POSIX_SOURCE # sigaction
+ CPPFLAGS += -D__BSD_VISIBLE # SIGWINCH on FreeBSD.
+-CFLAGS = -std=c99 -Wall -Wextra -pedantic -O3 -MMD -MP
+-LDFLAGS = -O3
++CFLAGS += -std=c99 -Wall -Wextra -pedantic -MMD -MP
+
+ objects := hx.o editor.o charbuf.o util.o undo.o
+
+ PREFIX ?= /usr/local
+ bindir = /bin
+-mandir = /man
++mandir = /share/man
+
+ %.gz: %
+ gzip -k $<
+@@ -24,9 +23,9 @@ debug: CPPFLAGS += -UNDEBUG # undefine the NDEBUG flag to allow assert().
+ debug: CFLAGS += -ggdb -Og
+ debug: LDFLAGS += -ggdb -Og
+
+-install: all
+- install -Dm755 -s ./hx -t $(DESTDIR)$(PREFIX)$(bindir)
+- install -Dm644 ./hx.1.gz -t $(DESTDIR)$(PREFIX)$(mandir)/man1
++install:
++ install -Dm755 ./hx -t $(DESTDIR)$(PREFIX)$(bindir)
++ install -Dm644 ./hx.1 -t $(DESTDIR)$(PREFIX)$(mandir)/man1
+
+ static: all
+ static: LDFLAGS += -static
diff --git a/testing/hx/hx.post-install b/testing/hx/hx.post-install
new file mode 100644
index 00000000000..3171985b23c
--- /dev/null
+++ b/testing/hx/hx.post-install
@@ -0,0 +1,7 @@
+#!/bin/sh
+
+cat >&2 <<-EOF
+*
+* binary is renamed from 'hx' to 'hx-editor' to avoid conflicts
+*
+EOF
diff --git a/testing/hy/APKBUILD b/testing/hy/APKBUILD
index 31563eb607a..0648c0d7b55 100644
--- a/testing/hy/APKBUILD
+++ b/testing/hy/APKBUILD
@@ -1,48 +1,48 @@
# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
# Maintainer: Sören Tempel <soeren+alpine@soeren-tempel.net>
pkgname=hy
-pkgver=1.0_p4
-_realver=${pkgver%_p*}a${pkgver##*_p}
-pkgrel=0
+pkgver=0.28.0
+pkgrel=1
pkgdesc="Dialect of Lisp that's embedded in Python"
url="http://hylang.org/"
arch="noarch"
license="MIT"
-# XXX: py3-astor can be removed with python3 >= 3.10
-depends="python3 py3-funcparserlib py3-astor py3-rply py3-colorama"
-makedepends="py3-setuptools py3-sphinx py3-sphinxcontrib-hydomain py3-sphinx_rtd_theme"
+depends="python3 py3-funcparserlib py3-rply py3-colorama"
+makedepends="py3-setuptools py3-sphinx py3-sphinxcontrib-hydomain py3-sphinx_rtd_theme py3-wheel"
checkdepends="python3-tests py3-pytest py3-pytest-runner py3-tox"
-subpackages="$pkgname-doc"
options="net"
-source="$pkgname-$pkgver.tar.gz::https://github.com/hylang/hy/archive/$_realver.tar.gz"
-builddir="$srcdir/$pkgname-$_realver"
+subpackages="$pkgname-pyc"
+#subpackages="$pkgname-doc $pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/hylang/hy/archive/$pkgver.tar.gz"
# By default setup.py tries to determine the hy version using
# git-describe(1). Unfourtunatly, this will return the version
# of the aports repository on Alpine.
-export HY_VERSION="$_realver"
+export HY_VERSION="$pkgver"
build() {
python3 setup.py build
-
- cd docs
- sphinx-build . _build -b man
+
+ # TODO: Building the documentation requires py3-sphinx >= 7.X.
+ #cd docs
+ #sphinx-build . _build -b man
}
check() {
# Ignore tests requiring binaries to be installed
- py.test-3 --ignore tests/test_bin.py \
+ pytest --ignore tests/test_bin.py \
--ignore tests/test_hy2py.py
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
- local man
- for man in docs/_build/*.?; do
- install -Dm644 "$man" \
- "$pkgdir"/usr/share/man/man${man##*.}/${man##*/}
- done
+ # XXX: See comment regarding documentation above.
+ # local man
+ # for man in docs/_build/*.?; do
+ # install -Dm644 "$man" \
+ # "$pkgdir"/usr/share/man/man${man##*.}/${man##*/}
+ # done
# This file is only needed for setuptools-produced source
# distributions <https://github.com/hylang/hy/commit/bd7b8bf5e19e>.
@@ -50,5 +50,5 @@ package() {
}
sha512sums="
-38fe6444b7e90ec545648a1df7679d99226b917b058e810e8972ed0dc58fbed12a13d939483705f82812d1779de5fa8677e845ebef268b3f39ed4b70f60e82f2 hy-1.0_p4.tar.gz
+71873e7f8d000f0febd6e8c48870d2a4bfeaab7f842b88194b7373c9926c6bfe59a217814b96bd4f2ec0103c5070b31128b0a794874db7aed5f2f329b224f25a hy-0.28.0.tar.gz
"
diff --git a/testing/hyperlink/APKBUILD b/testing/hyperlink/APKBUILD
new file mode 100644
index 00000000000..9fa4f2a7368
--- /dev/null
+++ b/testing/hyperlink/APKBUILD
@@ -0,0 +1,40 @@
+# Maintainer: Hugo Osvaldo Barrera <hugo@whynothugo.nl>
+pkgname=hyperlink
+pkgver=0.1.32
+pkgrel=0
+pkgdesc="Very fast link checker for CI"
+url="https://github.com/untitaker/hyperlink"
+# riscv64: fails to build libc crate
+# armhf: builds freeze and time out
+arch="all !riscv64 !armhf"
+license="MIT"
+makedepends="cargo cargo-auditable"
+source="$pkgname-$pkgver.tar.gz::https://github.com/untitaker/hyperlink/archive/refs/tags/$pkgver.tar.gz
+ bump-getrandom.patch
+ "
+
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+check() {
+ # Tests try to execute the compiled binary. Without `--release`, they
+ # attempt to run the debug binary, which is not present and tests fail.
+ cargo test --release --frozen
+}
+
+package() {
+ install -Dm 0755 "target/release/$pkgname" "$pkgdir/usr/bin/$pkgname"
+}
+
+sha512sums="
+c5a79963c4d314f532eef0e8fdcdd9398b565c3a656b9f50719e1a60cb233f484409ff60dd9f7a5406a9ef92798c941ac868dc617859e6e55c0475dd58cc558b hyperlink-0.1.32.tar.gz
+6ef21529ce1161a4dd22f029f530463cc5f4e1c77a191876fdc63cfee1e8a453ae25a7b8eafc45218cdc7d7d2156d51dd0d87c8d37e21f4a7e6c1e2b51f70af2 bump-getrandom.patch
+"
diff --git a/testing/hyperlink/bump-getrandom.patch b/testing/hyperlink/bump-getrandom.patch
new file mode 100644
index 00000000000..f5676ccfdf0
--- /dev/null
+++ b/testing/hyperlink/bump-getrandom.patch
@@ -0,0 +1,42 @@
+needs to get updated due to open64 symbol linking issues
+
+diff --git a/Cargo.lock b/Cargo.lock
+index fec9908..e64aa1a 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -307,9 +307,9 @@ dependencies = [
+
+ [[package]]
+ name = "getrandom"
+-version = "0.2.3"
++version = "0.2.10"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "7fcd999463524c52659517fe2cea98493cfe485d10565e7b0fb07dbba7ad2753"
++checksum = "be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427"
+ dependencies = [
+ "cfg-if",
+ "libc",
+@@ -451,9 +451,9 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
+
+ [[package]]
+ name = "libc"
+-version = "0.2.94"
++version = "0.2.147"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "18794a8ad5b29321f790b55d93dfba91e125cb1a9edbd4f8e3150acc771c1a5e"
++checksum = "b4668fb0ea861c1df094127ac5f1da3409a82116a4ba74fca2e58ef927159bb3"
+
+ [[package]]
+ name = "log"
+@@ -867,9 +867,9 @@ dependencies = [
+
+ [[package]]
+ name = "wasi"
+-version = "0.10.2+wasi-snapshot-preview1"
++version = "0.11.0+wasi-snapshot-preview1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "fd6fbd9a79829dd1ad0cc20627bf1ed606756a7f77edff7b66b7064f9cb327c6"
++checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
+
+ [[package]]
+ name = "winapi"
diff --git a/testing/hypnotix/0001-fix-locale-has-no-attribute-bindtextdomain.patch b/testing/hypnotix/0001-fix-locale-has-no-attribute-bindtextdomain.patch
deleted file mode 100644
index daded32e0c1..00000000000
--- a/testing/hypnotix/0001-fix-locale-has-no-attribute-bindtextdomain.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/usr/lib/hypnotix/hypnotix.py
-+++ b/usr/lib/hypnotix/hypnotix.py
-@@ -30,7 +30,7 @@
- # i18n
- APP = 'hypnotix'
- LOCALE_DIR = "/usr/share/locale"
--locale.bindtextdomain(APP, LOCALE_DIR)
-+#locale.bindtextdomain(APP, LOCALE_DIR)
- gettext.bindtextdomain(APP, LOCALE_DIR)
- gettext.textdomain(APP)
- _ = gettext.gettext
diff --git a/testing/hypnotix/APKBUILD b/testing/hypnotix/APKBUILD
index b98ea147d77..e142fa9c0ff 100644
--- a/testing/hypnotix/APKBUILD
+++ b/testing/hypnotix/APKBUILD
@@ -1,21 +1,31 @@
# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
pkgname=hypnotix
-pkgver=2.0
+pkgver=3.5
pkgrel=0
pkgdesc="IPTV streaming application"
url="https://github.com/linuxmint/hypnotix"
arch="noarch"
license="GPL-3.0-or-later"
depends="
- dconf python3 py3-cairo xapp py3-requests
- py3-setproctitle py3-imdbpy mpv mpv-libs
+ dconf
+ gdk-pixbuf
+ glib
+ py3-cairo
+ py3-gettext
+ py3-imdbpy
+ py3-mpv
+ py3-pillow
+ py3-requests
+ py3-setproctitle
+ py3-unidecode
+ pango
+ python3
+ xapp
"
-makedepends="gettext-tiny"
+makedepends="gettext-dev"
subpackages="$pkgname-lang"
options="!check" # No testsuite
-source="$pkgname-$pkgver.tar.gz::https://github.com/linuxmint/hypnotix/archive/$pkgver.tar.gz
- 0001-fix-locale-has-no-attribute-bindtextdomain.patch
- "
+source="$pkgname-$pkgver.tar.gz::https://github.com/linuxmint/hypnotix/archive/$pkgver.tar.gz"
prepare() {
default_prepare
@@ -27,24 +37,10 @@ build() {
}
package() {
- install -D -t "$pkgdir"/usr/bin usr/bin/hypnotix
- install -D -t "$pkgdir"/usr/lib/hypnotix usr/lib/hypnotix/hypnotix.py
- install -D -t "$pkgdir"/usr/lib/hypnotix usr/lib/hypnotix/common.py
- install -Dm644 -t "$pkgdir"/usr/lib/hypnotix usr/lib/hypnotix/mpv.py
- install -Dm644 -t "$pkgdir"/usr/share/applications usr/share/applications/hypnotix.desktop
- install -Dm644 -t "$pkgdir"/usr/share/glib-2.0/schemas usr/share/glib-2.0/schemas/org.x.hypnotix.gschema.xml
- install -Dm644 -t "$pkgdir"/usr/share/hypnotix usr/share/hypnotix/*.css
- install -Dm644 -t "$pkgdir"/usr/share/hypnotix usr/share/hypnotix/*.ui
- install -Dm644 -t "$pkgdir"/usr/share/hypnotix usr/share/hypnotix/*.png
- install -Dm644 -t "$pkgdir"/usr/share/hypnotix/pictures usr/share/hypnotix/pictures/*.svg
- install -Dm644 -t "$pkgdir"/usr/share/hypnotix/pictures/badges usr/share/hypnotix/pictures/badges/*
- install -Dm644 -t "$pkgdir"/usr/share/icons/hicolor/scalable/apps usr/share/icons/hicolor/scalable/apps/hypnotix.svg
-
- # locales
- cp -a usr/share/locale "$pkgdir"/usr/share/locale
+ mkdir -p "$pkgdir"
+ mv usr/ "$pkgdir"/usr
}
sha512sums="
-a230cabc35e1a958c5fb146c6541980153d60b48130b828c5460a3f82116f279ee9e86e124e8fa6663dcc831715c22f79a96f10b574b6ff91f9e5ff74a157ce5 hypnotix-2.0.tar.gz
-b54f92f043b5d3bcba31266e21a263a0ef3428c3b3afbb4f9fcca11df1230a1e547abaf3bc047e4c975f8941d5a31c46c1ac1dbb9c3281dcb48553f941968478 0001-fix-locale-has-no-attribute-bindtextdomain.patch
+e0c3dd1fe113b669f7e79e57282b8f07d1c8638edfabf0f444bab7a6c58198cfd06f5bc3978c54fb6326e0661dfdbb5242d4cc5bb25743ce4d942b34faf9dddd hypnotix-3.5.tar.gz
"
diff --git a/testing/hyprcursor/APKBUILD b/testing/hyprcursor/APKBUILD
new file mode 100644
index 00000000000..e0a4fb17eaf
--- /dev/null
+++ b/testing/hyprcursor/APKBUILD
@@ -0,0 +1,50 @@
+# Contributor: Zach DeCook <zachdecook@librem.one>
+# Maintainer: Zach DeCook <zachdecook@librem.one>
+pkgname=hyprcursor
+pkgver=0.1.5
+pkgrel=0
+pkgdesc="The hyprland cursor format, library and utilities."
+url="https://github.com/hyprwm/Hyprcursor"
+arch="all"
+license="BSD-3-Clause"
+source="https://github.com/hyprwm/Hyprcursor/archive/v$pkgver/Hyprcursor-v$pkgver.tar.gz"
+options="!check" # tests are broken
+makedepends="
+ cairo-dev
+ cmake
+ hyprlang
+ librsvg-dev
+ libzip-dev
+ "
+subpackages="$pkgname-dev $pkgname-doc $pkgname-util"
+
+build() {
+ cmake -B build \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DCMAKE_BUILD_TYPE=None
+ cmake --build build
+}
+
+check() {
+ cd build
+ # Test won't work unless environment has a hyprcursor that can be loaded.
+ CTEST_OUTPUT_ON_FAILURE=TRUE ctest
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+ install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+ install -Dm644 -t "$pkgdir"/usr/share/doc/hyprcursor docs/*
+ install -Dm644 hyprcursor-util/README.md "$pkgdir"/usr/share/doc/hyprcursor/README.md
+}
+
+util() {
+ # TODO: Depend on xcur2png for -x option
+ amove usr/bin/hyprcursor-util
+}
+
+
+sha512sums="
+3092b6773a34fa1cab10f83fa48274d79a50cd373dfe8a89d0170a78767a66b5e0cbe57cd1b86bc4bb85371c23ac7425f59e61fb50723a895fef4e7f6039fdfc Hyprcursor-v0.1.5.tar.gz
+"
diff --git a/testing/hyprland/APKBUILD b/testing/hyprland/APKBUILD
new file mode 100644
index 00000000000..6c47294ded3
--- /dev/null
+++ b/testing/hyprland/APKBUILD
@@ -0,0 +1,99 @@
+# Contributor: Zach DeCook <zachdecook@librem.one>
+# Maintainer: Zach DeCook <zachdecook@librem.one>
+pkgname=hyprland
+pkgver=0.38.1
+pkgrel=0
+_commit="360ede79d124ffdeebbe8401f1ac4bc0dbec2c91"
+_wlroots_commit="50eae512d9cecbf0b3b1898bb1f0b40fa05fe19b"
+_wlroots_date=20240302
+pkgdesc="Highly customizable dynamic tiling Wayland compositor that doesn't sacrifice on its looks."
+url="https://hyprland.org"
+arch="all"
+license="BSD-3-Clause"
+source="
+ https://github.com/hyprwm/Hyprland/archive/v$pkgver/Hyprland-v$pkgver.tar.gz
+ https://gitlab.freedesktop.org/wlroots/wlroots/-/archive/$_wlroots_commit/wlroots-$_wlroots_commit.tar.gz
+ use-system-installed-udis86.patch
+ bump-soversion.patch.wlroots
+ "
+builddir="$srcdir/Hyprland-$pkgver"
+makedepends="
+ cairo-dev
+ cmake
+ elogind-dev
+ eudev-dev
+ glslang-dev
+ hwdata-dev
+ hyprcursor-dev
+ hyprland-protocols
+ hyprlang
+ jq
+ libcap-dev
+ libdisplay-info-dev
+ libdrm-dev
+ libinput-dev
+ libliftoff-dev
+ libseat-dev
+ libxcb-dev
+ libxkbcommon-dev
+ mesa-dev
+ meson
+ ninja
+ pango-dev
+ pixman-dev
+ tomlplusplus-dev
+ udis86-git-dev
+ vulkan-loader-dev
+ wayland-dev
+ wayland-protocols
+ xcb-util-image-dev
+ xcb-util-renderutil-dev
+ xcb-util-wm-dev
+ xkeyboard-config-dev
+ xwayland-dev
+ "
+subpackages="$pkgname-doc $pkgname-dev $pkgname-wallpapers::noarch"
+
+prepare() {
+ default_prepare
+ # Use downloaded wlroots (instead of git submodule)
+ rmdir subprojects/wlroots
+ mv "$srcdir/wlroots-$_wlroots_commit" "$builddir"/subprojects/wlroots
+ # Change the soversion (appending current hyprland version)
+ cd "$builddir"/subprojects/wlroots
+ git apply "$srcdir"/bump-soversion.patch.wlroots
+ # Make the version number valid
+ sed -i "s/-dev/_git$_wlroots_date/" "$builddir"/subprojects/wlroots/meson.build
+ # Set some variables in version.h.in
+ sed -i "s/@HASH@/$_commit/" "$builddir"/src/version.h.in
+ sed -i "s/@BRANCH@/build-alpine/" "$builddir"/src/version.h.in
+ message="with patches: $(printf %s "$source" | grep '.patch$' | tr '\n' ' ')"
+ sed -i "s~@MESSAGE@~$message~" "$builddir"/src/version.h.in
+ sed -i "s/@TAG@/v$pkgver/" "$builddir"/src/version.h.in
+}
+
+build() {
+ abuild-meson . output
+ meson compile ${JOBS:+-j ${JOBS}} -C output
+}
+
+check() {
+ meson test --no-rebuild -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+wallpapers() {
+ pkgdesc="Wallpapers for Hyprland"
+
+ amove usr/share/hyprland/wall*.png
+}
+
+sha512sums="
+a84c7c7e2b634032eb79d7c73efefaa99fb506f36eed7cea9dac09bfe53b46accef9145ae062b4a9fd3f8121d3abb52fe2465d176c950d498115da8ae111127e Hyprland-v0.38.1.tar.gz
+ce09d175f12cf25021caf18c0eac56aad97d238b3e2c4bfcc071d12d1bb8a44ee5c3aceab72ce3002928ca3c2c833bb5992b4820b44e0d0985c343ae903d056e wlroots-50eae512d9cecbf0b3b1898bb1f0b40fa05fe19b.tar.gz
+d2f7b35552fa0a3e992b9050f7066d983b3b7c193a888018b2e0d6fa9e17fc3deff922fa3989d0bb79e8bd82df2bc16ff0c27a82759ad0ce2e72789506eb07db use-system-installed-udis86.patch
+ca673fbb7a7c91a4902e6357ad90854070e9c7d16dc298787a819aac9d6f4832d4657029427b144709e56bead604d4df162d81892d23d6a2b94634e3bd2380ab bump-soversion.patch.wlroots
+"
diff --git a/testing/hyprland/bump-soversion.patch.wlroots b/testing/hyprland/bump-soversion.patch.wlroots
new file mode 100644
index 00000000000..fad516896e8
--- /dev/null
+++ b/testing/hyprland/bump-soversion.patch.wlroots
@@ -0,0 +1,13 @@
+diff --git a/meson.build b/meson.build
+index 95803a22..fd1bb7be 100644
+--- a/meson.build
++++ b/meson.build
+@@ -15,7 +15,7 @@ version = meson.project_version().split('-')[0]
+ version_major = version.split('.')[0]
+ version_minor = version.split('.')[1]
+ assert(version_major == '0')
+-soversion = version_minor.to_int() - 5
++soversion = 13037
+
+ little_endian = target_machine.endian() == 'little'
+ big_endian = target_machine.endian() == 'big'
diff --git a/testing/hyprland/use-system-installed-udis86.patch b/testing/hyprland/use-system-installed-udis86.patch
new file mode 100644
index 00000000000..d390f56d919
--- /dev/null
+++ b/testing/hyprland/use-system-installed-udis86.patch
@@ -0,0 +1,15 @@
+diff --git a/meson.build b/meson.build
+index de29528e..f2439290 100644
+--- a/meson.build
++++ b/meson.build
+@@ -37,9 +37,7 @@ wlroots = subproject('wlroots', default_options: ['examples=false', 'renderers=g
+ have_xwlr = wlroots.get_variable('features').get('xwayland')
+ xcb_dep = dependency('xcb', required: get_option('xwayland'))
+
+-cmake = import('cmake')
+-udis = cmake.subproject('udis86')
+-udis86 = udis.dependency('libudis86')
++udis86 = dependency('udis86')
+
+ if get_option('xwayland').enabled() and not have_xwlr
+ error('Cannot enable Xwayland in Hyprland: wlroots has been built without Xwayland support')
diff --git a/testing/hyx/APKBUILD b/testing/hyx/APKBUILD
new file mode 100644
index 00000000000..30b7cbca027
--- /dev/null
+++ b/testing/hyx/APKBUILD
@@ -0,0 +1,22 @@
+# Maintainer: Eirik Furuseth <alpine@heplaphon.com>
+pkgname=hyx
+pkgver=2021.06.09
+pkgrel=0
+pkgdesc="Minimalistic, but powerful console hex editor"
+url="https://yx7.cc/code/"
+arch="all"
+license="MIT"
+source="https://yx7.cc/code/hyx/hyx-$pkgver.tar.xz"
+options="!check" # no unit tests
+
+build() {
+ make
+}
+
+package() {
+ install -Dm0755 hyx -t "$pkgdir"/usr/bin
+}
+
+sha512sums="
+43f990e29ce097f8e2378a4511a3097e2576fd72e16f3b5c81688702487c8715e7189cb4a368e344c5440a90a1c759d2f76e7831ab401fa814f7e5ff7e145bd8 hyx-2021.06.09.tar.xz
+"
diff --git a/testing/i2util/APKBUILD b/testing/i2util/APKBUILD
index 61f685342f7..21586739ce6 100644
--- a/testing/i2util/APKBUILD
+++ b/testing/i2util/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Ariadne Conill <ariadne@dereferenced.org>
pkgname="i2util"
pkgver="4.2.1"
-pkgrel=0
+pkgrel=1
pkgdesc="Internet2 utility library"
url="https://github.com/perfsonar/i2util"
arch="all"
diff --git a/testing/i3blocks/APKBUILD b/testing/i3blocks/APKBUILD
deleted file mode 100644
index 310abb457e1..00000000000
--- a/testing/i3blocks/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Contributor: Marvin Preuss <marvin@xsteadfastx.org>
-# Maintainer: Marvin Preuss <marvin@xsteadfastx.org>
-pkgname=i3blocks
-pkgver=1.5
-pkgrel=0
-pkgdesc="A minimalist scheduler for your status line scripts"
-url="https://github.com/vivien/i3blocks"
-arch="all"
-license="GPL-3.0-or-later"
-options="!check" # no test suite
-makedepends="ronn autoconf automake bash-completion"
-subpackages="$pkgname-bash-completion $pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/vivien/i3blocks/archive/$pkgver.tar.gz
- fix-makefile.patch
- "
-
-prepare() {
- default_prepare
- autoreconf -fi
-}
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" PREFIX=/usr install
-}
-
-sha512sums="759829d59f94070251378d437891c2df05715fbd0b734c34dd41767d61957f301c6125b0058668295b8eeac29038fae6b2e8c194f903398ee736662213d1d534 i3blocks-1.5.tar.gz
-b54fb4b9f2a08a1bfafb7ebcf36c87c850d795af2c6f4509bcfa0853340f96bf13662445e24033a94c6e13b9e0b8a7ab6a52a914b99ee8196e0d2275eaf9b5d1 fix-makefile.patch"
diff --git a/testing/i3blocks/fix-makefile.patch b/testing/i3blocks/fix-makefile.patch
deleted file mode 100644
index 22c41a1a304..00000000000
--- a/testing/i3blocks/fix-makefile.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-diff --git a/Makefile.am b/Makefile.am
-index d755a2b..f8a598e 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -34,9 +34,6 @@ if ENABLE_BASH_COMPLETION
- bashcompletiondir = $(BASH_COMPLETION_DIR)
- bashcompletion_DATA = bash-completion
-
--install-data-local:
-- ( cd '$(DESTDIR)$(BASH_COMPLETION_DIR)' && mv bash-completion i3blocks )
--
- uninstall-local:
- ( cd '$(DESTDIR)$(BASH_COMPLETION_DIR)' && rm -rf i3blocks )
- endif
-
diff --git a/testing/i3status-rust/APKBUILD b/testing/i3status-rust/APKBUILD
index c45185e1feb..99d5a22f22d 100644
--- a/testing/i3status-rust/APKBUILD
+++ b/testing/i3status-rust/APKBUILD
@@ -2,41 +2,67 @@
# Contributor: Maxim Karasev <begs@disroot.org>
# Maintainer: Galen Abell <galen@galenabell.com>
pkgname=i3status-rust
-pkgver=0.21.10
-pkgrel=1
+pkgver=0.33.1
+pkgrel=0
pkgdesc="i3status replacement in Rust"
url="https://github.com/greshake/i3status-rust"
-arch="all !s390x !riscv64" # limited by cargo
+arch="all !s390x" # try unpinning s390x once nix crate is updated to 0.28
license="GPL-3.0-only"
-makedepends="rust cargo dbus-dev openssl-dev libpulse lm-sensors-dev"
-options="net !check" # no tests
-provides="i3status-rs"
+makedepends="
+ cargo
+ cargo-auditable
+ curl-dev
+ dbus-dev
+ lm-sensors-dev
+ notmuch-dev
+ openssl-dev>3
+ pulseaudio-dev
+ "
+options="net"
+provides="i3status-rs=$pkgver-r$pkgrel"
subpackages="$pkgname-doc"
-source="https://github.com/greshake/i3status-rust/archive/v$pkgver/i3status-rust-$pkgver.tar.gz"
+source="
+ https://github.com/greshake/i3status-rust/archive/refs/tags/v$pkgver/i3status-rust-v$pkgver.tar.gz
+ https://dev.alpinelinux.org/archive/i3status-rs/i3status-rs-$pkgver.1
+ "
-export CARGO_PROFILE_RELEASE_CODEGEN_UNITS=1
-export CARGO_PROFILE_RELEASE_LTO=true
-export CARGO_PROFILE_RELEASE_OPT_LEVEL=s
-export CARGO_PROFILE_RELEASE_PANIC=abort
+_common_features="pulseaudio,notmuch,maildir,icu_calendar"
+
+case "$CARCH" in
+ armhf | armv7 | x86)
+ # pipewire crate does not build on 32-bit arches: https://gitlab.freedesktop.org/pipewire/pipewire-rs/-/issues/43
+ _cargo_opts="--no-default-features --features $_common_features"
+ ;;
+ *)
+ makedepends="$makedepends clang-dev pipewire-dev"
+ _cargo_opts="--features $_common_features,pipewire"
+ ;;
+esac
prepare() {
default_prepare
- cargo fetch --locked
+ cargo fetch --target="$CTARGET" --locked
}
build() {
- cargo build --release --frozen
+ cargo auditable build --release --frozen $_cargo_opts
+}
+
+check() {
+ cargo test $_cargo_opts
}
package() {
- install -Dm755 target/release/i3status-rs "$pkgdir"/usr/bin/i3status-rs
+ install -Dm755 target/release/i3status-rs -t "$pkgdir"/usr/bin/
- install -Dm644 man/i3status-rs.1 "$pkgdir"/usr/share/man/man1/i3status-rs.1
+ install -Dm644 "$srcdir"/i3status-rs-$pkgver.1 \
+ "$pkgdir"/usr/share/man/man1/i3status-rs.1
- install -Dm644 -t "$pkgdir"/usr/share/i3status-rust/themes files/themes/*
- install -Dm644 -t "$pkgdir"/usr/share/i3status-rust/icons files/icons/*
+ install -Dm644 files/themes/* -t "$pkgdir"/usr/share/i3status-rust/themes/
+ install -Dm644 files/icons/* -t "$pkgdir"/usr/share/i3status-rust/icons/
}
sha512sums="
-8fdcf311b234cb237a46aa8fbb76d72b8a44a068669ace30af81a19e4843968eefd5f38f0679645b5c4ec216f5852323441fc5c1705cd90708550f187b194cbb i3status-rust-0.21.10.tar.gz
+756dd99603c98c4cf3167ffb1c769d766aae1347361459e9d128c10249c2e287983efda6c6496db5429a81f24c5c54a3bc5e54a38b3b2e93f2cb98a6d5dfffe3 i3status-rust-v0.33.1.tar.gz
+45933c5d140e397d84c3096fbe2a5af356f13c17ca3bc8f817af517f0b1d770455ae19177a439d47a95fe8ef94df869d88ee3c050184501969ec71eb6d474cf5 i3status-rs-0.33.1.1
"
diff --git a/testing/i3wm-gaps/APKBUILD b/testing/i3wm-gaps/APKBUILD
deleted file mode 100644
index 7818dfff1ba..00000000000
--- a/testing/i3wm-gaps/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Maintainer: prspkt <prspkt@protonmail.com>
-pkgname=i3wm-gaps
-pkgver=4.20.1
-pkgrel=0
-pkgdesc="Improved dynamic tiling window manager with additional features"
-url="https://github.com/Airblader/i3"
-arch="all"
-license="BSD-3-Clause"
-replaces="i3wm"
-depends_dev="$pkgname=$pkgver-r$pkgrel"
-makedepends="bison flex libxcb-dev xcb-util-cursor-dev
- xcb-util-keysyms-dev xcb-util-wm-dev libev-dev pango-dev cairo-dev
- yajl-dev startup-notification-dev pcre-dev libxkbcommon-dev
- xcb-util-xrm-dev asciidoc perl xmlto meson"
-subpackages="$pkgname-doc"
-source="i3wm-$pkgver.tar.gz::https://github.com/Airblader/i3/archive/$pkgver.tar.gz"
-builddir="$srcdir/i3-$pkgver"
-options="!check" # missing perl bindings for libxcb
-
-build() {
- abuild-meson -Dmans=true -Ddocs=true . output
- meson compile ${JOBS:+-j ${JOBS}} -C output
-}
-
-package() {
- DESTDIR="$pkgdir" meson install --no-rebuild -C output
-}
-
-sha512sums="
-0f3cab505f5dcd11d4d9ab63aa84d7d90e63ffebe6a867c9592c7979fe57d37db69869d555ea2127b84caa108778a028e03fa8fab1432d897c02723e3c83e6ba i3wm-4.20.1.tar.gz
-"
diff --git a/testing/ibus-anthy/APKBUILD b/testing/ibus-anthy/APKBUILD
deleted file mode 100644
index ca3aa3f8b03..00000000000
--- a/testing/ibus-anthy/APKBUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-# Maintainer: Drew DeVault <sir@cmpwn.com>
-pkgname=ibus-anthy
-pkgver=1.5.14
-pkgrel=0
-pkgdesc="Japanese input method Anthy IMEngine for IBus Framework"
-url="https://github.com/ibus/ibus-anthy"
-arch="all !s390x" # ibus needs librsvg which isn't available on s390x
-license="GPL-2.0-only"
-depends="ibus py3-gobject3 gtk-update-icon-cache"
-makedepends="
- m4 automake autoconf intltool gobject-introspection
- gobject-introspection-dev ibus-dev anthy-dev
- py3-pytest
-"
-source="$pkgname-$pkgver.tar.gz::https://github.com/ibus/ibus-anthy/archive/$pkgver.tar.gz"
-subpackages="$pkgname-lang"
-options="!check" # Not sure how to run the test suite, undocumented
-
-build() {
- ./autogen.sh \
- --prefix=/usr \
- --libexec=/usr/lib/ibus
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-4d06d4e177df62d22c61bf6ebfda04ddbf545ea1947d0c315e3dfe5e48d9ddc57e5fcc89919ae3b9f7430e6124a5dfb1295f4ca7362fbc35714d627f80fae6d8 ibus-anthy-1.5.14.tar.gz
-"
diff --git a/testing/ibus-libpinyin/APKBUILD b/testing/ibus-libpinyin/APKBUILD
new file mode 100644
index 00000000000..1ce9211f34f
--- /dev/null
+++ b/testing/ibus-libpinyin/APKBUILD
@@ -0,0 +1,42 @@
+# Contributor: Peng Huang <shawn.p.huang@gmail.com>
+# Contributor: BYVoid <byvoid1@gmail.com>
+# Contributor: Peng Wu <alexepico@gmail.com>
+# Maintainer: Ziyao <ziyao@disroot.org>
+pkgname=ibus-libpinyin
+pkgver=1.15.7
+pkgrel=0
+pkgdesc="Intelligent Pinyin engine based on libpinyin for IBus"
+url="https://github.com/libpinyin/ibus-libpinyin"
+# armhf: no libpinyin
+arch="all !armhf"
+license="GPL-3.0-only"
+makedepends="
+ ibus-dev
+ libpinyin-dev
+ sqlite-dev
+ "
+subpackages="$pkgname-lang"
+source="https://github.com/libpinyin/ibus-libpinyin/releases/download/$pkgver/ibus-libpinyin-$pkgver.tar.gz"
+options="!check" # there are none
+
+build() {
+ CFLAGS="$CFLAGS -flto=auto" \
+ CXXFLAGS="$CXXFLAGS -flto=auto" \
+ ./configure \
+ --host=$CHOST \
+ --build=$CBUILD \
+ --prefix=/usr \
+ --libexecdir=/usr/lib/ibus
+ make
+}
+
+package() {
+ make install DESTDIR=$pkgdir
+
+ # remove duplicate python bytecode
+ find "$pkgdir" -name "*.opt-1.pyc" -delete
+}
+
+sha512sums="
+084dc38178024ef0d13e2291c2b208c7fe431a7e8c5c4c579205480cae56cdd0076f3c2ce755353a2dc8d8e09141540431c189003a93cb85c598ee64d2947610 ibus-libpinyin-1.15.7.tar.gz
+"
diff --git a/testing/ibus-rime/APKBUILD b/testing/ibus-rime/APKBUILD
new file mode 100644
index 00000000000..bc75bb08688
--- /dev/null
+++ b/testing/ibus-rime/APKBUILD
@@ -0,0 +1,33 @@
+# Contributor: mio <miyopan@e.email>
+# Maintainer: mio <miyopan@e.email>
+pkgname=ibus-rime
+pkgver=1.5.0
+pkgrel=1
+pkgdesc="Chinese input method Rime for IBus Framework"
+url="https://github.com/rime/ibus-rime"
+arch="all"
+license="GPL-3.0-or-later"
+makedepends="
+ cmake
+ ibus-dev
+ libnotify-dev
+ librime-dev
+ samurai
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/rime/ibus-rime/archive/$pkgver.tar.gz"
+options="!check" # No tests
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DCMAKE_INSTALL_PREFIX=/usr
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+59b05efe7d5c7dd6dd88a213f05967b19f4946ad0685e29c6c87fbc47ffb3059cc16c88403cfbb945bcbf8637b20d34dcfd91d442c23bb6a9a18d60febbaf27b ibus-rime-1.5.0.tar.gz
+"
diff --git a/testing/icdiff/APKBUILD b/testing/icdiff/APKBUILD
deleted file mode 100644
index 9272518db8c..00000000000
--- a/testing/icdiff/APKBUILD
+++ /dev/null
@@ -1,38 +0,0 @@
-# Contributor: Kevin Daudt <kdaudt@alpinelinux.org>
-# Maintainer: Kevin Daudt <kdaudt@alpinelinux.org>
-pkgname=icdiff
-pkgver=2.0.5
-pkgrel=0
-pkgdesc="Improved colored diff"
-url="https://www.jefftk.com/icdiff"
-arch="noarch"
-license="Python-2.0"
-depends="python3"
-makedepends="py3-setuptools bash"
-checkdepends="black py3-flake8"
-source="https://github.com/jeffkaufman/icdiff/archive/release-$pkgver.tar.gz
- "
-builddir="$srcdir/icdiff-release-$pkgver"
-
-prepare() {
- default_prepare
-
- # patch removes executable bit
- chmod +x test.sh icdiff
-}
-
-build() {
- python3 setup.py build
-}
-
-check() {
- ./test.sh python3
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-9ac3705ba8fbc277b9af2c47a5b791bb8ed98da0546410cafc206992e25e98cc7fba6e920d6acd1a576c609be853ad52a5680e456a9c70132c5f323fb4b6694d release-2.0.5.tar.gz
-"
diff --git a/testing/icdiff/fix-flake8-binary.patch b/testing/icdiff/fix-flake8-binary.patch
deleted file mode 100644
index 87098ec55a1..00000000000
--- a/testing/icdiff/fix-flake8-binary.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-diff --git a/test.sh b/test.sh
-old mode 100755
-new mode 100644
-index b44425d817..be8eb15fa9
---- a/test.sh
-+++ b/test.sh
-@@ -129,7 +129,7 @@ if [ "$VERSION" != $(head -n 1 ChangeLog) ]; then
- fail
- fi
-
--if ! command -v 'flake8' >/dev/null 2>&1; then
-+if ! command -v 'flake8-3' >/dev/null 2>&1; then
- echo 'Could not find flake8. Ensure flake8 is installed and on your $PATH.'
- if [ -z "$VIRTUAL_ENV" ]; then
- echo 'It appears you have have forgotten to activate your virtualenv.'
-@@ -139,7 +139,7 @@ if ! command -v 'flake8' >/dev/null 2>&1; then
- fi
-
- echo 'Running flake8 linter...'
--if ! flake8 icdiff; then
-+if ! flake8-3 icdiff; then
- fail
- fi
-
diff --git a/testing/icestorm/0001-fix-format-specifiers.patch b/testing/icestorm/0001-fix-format-specifiers.patch
new file mode 100644
index 00000000000..d489fdb9d5d
--- /dev/null
+++ b/testing/icestorm/0001-fix-format-specifiers.patch
@@ -0,0 +1,95 @@
+Use `%zu` as format specifier for printing `size_t` for better portability.
+--- a/icebram/icebram.cc 2023-12-12 13:01:19.000000000 +0100
++++ b/icebram/icebram.cc 2024-01-10 14:32:01.012119690 +0100
+@@ -457,32 +457,32 @@ update(struct app_opts *opts)
+ // Perform checks
+ if ((hf_to.word_size() > 0) && (hf_from.word_size() > hf_to.word_size())) {
+ if (opts->verbose)
+- fprintf(stderr, "Padding to_hexfile words from %lu bits to %lu bits\n",
++ fprintf(stderr, "Padding to_hexfile words from %zu bits to %zu bits\n",
+ hf_to.word_size(), hf_from.word_size());
+ hf_to.pad_words_to(hf_from.word_size());
+ }
+
+ if (hf_to.word_size() != hf_from.word_size()) {
+- fprintf(stderr, "Hexfiles have different word sizes! (%lu bits vs. %lu bits)\n",
++ fprintf(stderr, "Hexfiles have different word sizes! (%zu bits vs. %zu bits)\n",
+ hf_from.word_size(), hf_to.word_size());
+ return 1;
+ }
+
+ if ((hf_to.size() > 0) && (hf_from.size() > hf_to.size())) {
+ if (opts->verbose)
+- fprintf(stderr, "Padding to_hexfile from %lu words to %lu\n",
++ fprintf(stderr, "Padding to_hexfile from %zu words to %zu\n",
+ hf_to.size(), hf_from.size());
+ hf_to.pad_to(hf_from.size());
+ }
+
+ if (hf_to.size() != hf_from.size()) {
+- fprintf(stderr, "Hexfiles have different number of words! (%lu vs. %lu)\n",
++ fprintf(stderr, "Hexfiles have different number of words! (%zu vs. %zu)\n",
+ hf_from.size(), hf_to.size());
+ return 1;
+ }
+
+ if (hf_from.size() % 256 != 0) {
+- fprintf(stderr, "Hexfile number of words (%lu) is not divisible by 256!\n",
++ fprintf(stderr, "Hexfile number of words (%zu) is not divisible by 256!\n",
+ hf_from.size());
+ return 1;
+ }
+@@ -494,20 +494,20 @@ update(struct app_opts *opts)
+
+ // Debug
+ if (opts->verbose)
+- fprintf(stderr, "Loaded pattern for %lu bits wide and %lu words deep memory.\n",
++ fprintf(stderr, "Loaded pattern for %zu bits wide and %zu words deep memory.\n",
+ hf_from.word_size(), hf_from.size());
+
+ // Generate mapping for slices
+ std::map<std::vector<bool>, std::pair<std::vector<bool>, int>> pattern = hf_from.generate_pattern(hf_to);
+ if (opts->verbose)
+- fprintf(stderr, "Extracted %lu bit slices from from/to hexfile data.\n", pattern.size());
++ fprintf(stderr, "Extracted %zu bit slices from from/to hexfile data.\n", pattern.size());
+
+ // Load FPGA config from stdin
+ AscFile bitstream;
+ bitstream.load_config(std::cin);
+
+ if (opts->verbose)
+- fprintf(stderr, "Found %lu initialized bram cells in asc file.\n", bitstream.n_ebrs());
++ fprintf(stderr, "Found %zu initialized bram cells in asc file.\n", bitstream.n_ebrs());
+
+ // Apply pattern
+ bitstream.apply_pattern(pattern);
+diff --color -rupN a/icepack/icepack.cc b/icepack/icepack.cc
+--- a/icepack/icepack.cc 2023-12-12 13:01:19.000000000 +0100
++++ b/icepack/icepack.cc 2024-01-10 14:30:17.829617241 +0100
+@@ -902,10 +902,10 @@ void FpgaConfig::write_ascii(std::ostrea
+ cic.get_cram_index(bit_x, bit_y, cram_bank, cram_x, cram_y);
+ tile_bits.insert(tile_bit_t(cram_bank, cram_x, cram_y));
+ if (cram_x > int(this->cram[cram_bank].size())) {
+- error("cram_x %d (bit %d, %d) larger than bank size %lu\n", cram_x, bit_x, bit_y, this->cram[cram_bank].size());
++ error("cram_x %d (bit %d, %d) larger than bank size %zu\n", cram_x, bit_x, bit_y, this->cram[cram_bank].size());
+ }
+ if (cram_y > int(this->cram[cram_bank][cram_x].size())) {
+- error("cram_y %d (bit %d, %d) larger than bank %d size %lu\n", cram_y, bit_x, bit_y, cram_bank, this->cram[cram_bank][cram_x].size());
++ error("cram_y %d (bit %d, %d) larger than bank %d size %zu\n", cram_y, bit_x, bit_y, cram_bank, this->cram[cram_bank][cram_x].size());
+ }
+ ofs << (this->cram[cram_bank][cram_x][cram_y] ? '1' : '0');
+ }
+@@ -924,11 +924,11 @@ void FpgaConfig::write_ascii(std::ostrea
+ int bram_bank, bram_x, bram_y;
+ bic.get_bram_index(bit_x+i, bit_y, bram_bank, bram_x, bram_y);
+ if (bram_x >= int(this->bram[bram_bank].size())) {
+- error("%d %d bram_x %d higher than loaded bram size %lu\n",bit_x+i, bit_y, bram_x, this->bram[bram_bank].size());
++ error("%d %d bram_x %d higher than loaded bram size %zu\n",bit_x+i, bit_y, bram_x, this->bram[bram_bank].size());
+ break;
+ }
+ if (bram_y >= int(this->bram[bram_bank][bram_x].size())) {
+- error("bram_y %d higher than loaded bram size %lu\n", bram_y, this->bram[bram_bank][bram_x].size());
++ error("bram_y %d higher than loaded bram size %zu\n", bram_y, this->bram[bram_bank][bram_x].size());
+ break;
+ }
+ if (this->bram[bram_bank][bram_x][bram_y])
diff --git a/testing/icestorm/APKBUILD b/testing/icestorm/APKBUILD
new file mode 100644
index 00000000000..9b36381f1f6
--- /dev/null
+++ b/testing/icestorm/APKBUILD
@@ -0,0 +1,33 @@
+# Maintainer: Marian Buschsieweke <marian.buschsieweke@posteo.net>
+pkgname=icestorm
+pkgver=0_git20231212
+_commit=1a40ae75d4eebee9cce73a2c4d634fd42ed0110f
+pkgrel=0
+pkgdesc="Project IceStorm - Lattice iCE40 FPGAs Bitstream Documentation"
+url="https://github.com/YosysHQ/icestorm"
+arch="all"
+license="ISC"
+makedepends="
+ libftdi1-dev
+ python3
+ "
+source="
+ $pkgname-$_commit.tar.gz::https://github.com/YosysHQ/icestorm/archive/$_commit.tar.gz
+
+ 0001-fix-format-specifiers.patch
+ "
+builddir="$srcdir/icestorm-$_commit"
+options="!check" # no unit tests provided
+
+build() {
+ make PREFIX="/usr"
+}
+
+package() {
+ DESTDIR="$pkgdir" make PREFIX="/usr" install
+}
+
+sha512sums="
+f0bfbc0af651a5d1cc45ecc4ce6cb9f6a8fdf4797f17b2af7e70278f0786b8d063503606cbf624aee558a3e32a3dc7c595694ac335ce7b52bfece9b18b5543da icestorm-1a40ae75d4eebee9cce73a2c4d634fd42ed0110f.tar.gz
+dbb175d424615405b9362b40167152c619c1a5722333b273345660e6c1582517f35f7cafb6423e7ea31c1bfd67faaa74b6dc141cb32e1a4539d3bca440808e38 0001-fix-format-specifiers.patch
+"
diff --git a/testing/icewm/APKBUILD b/testing/icewm/APKBUILD
deleted file mode 100644
index 740145f90eb..00000000000
--- a/testing/icewm/APKBUILD
+++ /dev/null
@@ -1,59 +0,0 @@
-# Contributor: Paul Bredbury <brebs@sent.com>
-# Maintainer: Paul Bredbury <brebs@sent.com>
-pkgname=icewm
-pkgver=2.9.7
-pkgrel=0
-pkgdesc="Window manager designed for speed, usability and consistency"
-url="https://github.com/ice-wm/icewm"
-arch="all"
-options="!check" # No test suite
-license="LGPL-2.0-only"
-subpackages="$pkgname-doc $pkgname-lang"
-makedepends="alsa-lib-dev
- asciidoctor
- cmake
- fribidi-dev
- glib-dev
- imlib2-dev
- libao-dev
- libintl
- libsm-dev
- libsndfile-dev
- libxcomposite-dev
- libxdamage-dev
- libxft-dev
- libxinerama-dev
- libxpm-dev
- libxrandr-dev
- perl"
-
-source="https://github.com/ice-wm/icewm/releases/download/$pkgver/icewm-$pkgver.tar.lz"
-
-case "$CARCH" in
- s390x|riscv64)
- ;;
- *)
- makedepends="$makedepends librsvg-dev"
- _arch_opts="-DCONFIG_LIBRSVG=ON"
- ;;
- esac
-
-build() {
- cmake -B build \
- -DCMAKE_BUILD_TYPE=None \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCFGDIR=/etc \
- -DENABLE_NLS=OFF \
- -DCONFIG_IMLIB2=ON \
- -DENABLE_LTO=ON \
- -DDOCDIR=/usr/share/doc/icewm $_arch_opts
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --build build --target install
-}
-
-sha512sums="
-1ec2a73536a08f252d2c16f21b8d8646f4179ce025d6e828c6b9ae2405febe048ed4ab5c7d079a4a83cb4a83a5e027ae6ef1262ee0438c68f4d6124da552114d icewm-2.9.7.tar.lz
-"
diff --git a/testing/icingaweb2-module-businessprocess/APKBUILD b/testing/icingaweb2-module-businessprocess/APKBUILD
index 0f3967114be..ef1ee2d6740 100644
--- a/testing/icingaweb2-module-businessprocess/APKBUILD
+++ b/testing/icingaweb2-module-businessprocess/APKBUILD
@@ -2,8 +2,8 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=icingaweb2-module-businessprocess
_module=${pkgname/*-/}
-pkgver=2.3.1
-pkgrel=1
+pkgver=2.4.0
+pkgrel=0
pkgdesc="Manage Business Processes in Icinga Web 2"
url="https://icinga.com/"
arch="noarch !x86 !armhf !armv7 !s390x"
@@ -42,7 +42,6 @@ For Apache:
For lighttpd:
# chown -R lighttpd /etc/icingaweb2/modules/$_module
-
Remember to enable the module with:
# icingacli $_module module enable $_module
@@ -52,5 +51,5 @@ EOF
}
sha512sums="
-ace3808232c4571bb553cf4159657a5c3aeada65ee4a00d5e0d7de11b3c47b646042c5a3ee854bf0944c963438638ed14b19b0a0a5057e67533b028a7d585c82 icingaweb2-module-businessprocess-2.3.1.tar.gz
+c73e6c1d316c67569b17554bdadfc7ce3fb78d7bf5bab972405c00c34f8e98bce6b64e73b26604d008de7a29782e4a4ffbc65854a23cd2ed707c50fb0c673b20 icingaweb2-module-businessprocess-2.4.0.tar.gz
"
diff --git a/testing/icingaweb2-module-fileshipper/APKBUILD b/testing/icingaweb2-module-fileshipper/APKBUILD
index 3ec0d0c3f1d..ae322c22bd1 100644
--- a/testing/icingaweb2-module-fileshipper/APKBUILD
+++ b/testing/icingaweb2-module-fileshipper/APKBUILD
@@ -3,12 +3,12 @@
pkgname=icingaweb2-module-fileshipper
_module=${pkgname/*-/}
pkgver=1.2.0
-pkgrel=1
+pkgrel=3
pkgdesc="Provide CSV, JSON, XML and YAML files as an Import Source for the Icinga Director"
url="https://icinga.com/"
arch="noarch !armhf !armv7 !s390x !x86" # see icingaweb2-module-director
license="GPL-2.0"
-_php=php7
+_php=php82
depends="icingaweb2-module-director ${_php}-xml"
pkggroups="icingaweb2"
subpackages="$pkgname-doc"
diff --git a/testing/icingaweb2-module-generictts/APKBUILD b/testing/icingaweb2-module-generictts/APKBUILD
index 00d88f79f28..f071abf04bf 100644
--- a/testing/icingaweb2-module-generictts/APKBUILD
+++ b/testing/icingaweb2-module-generictts/APKBUILD
@@ -2,8 +2,8 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=icingaweb2-module-generictts
_module=${pkgname/*-/}
-pkgver=2.0.0
-pkgrel=3
+pkgver=2.1.0
+pkgrel=0
pkgdesc="Generic ticket system integration into Icinga web 2"
url="https://icinga.com/"
arch="noarch !armhf !armv7 !s390x !x86"
@@ -51,5 +51,5 @@ EOF
}
sha512sums="
-90ccb2d57e34b9322792806628836c36f34ac40a21ea218a2464d25446a17632acdf7a3f73ba79c9a55b8dd4a04269cc60d243e89b9f9bc0195ed1f4f0cf6c4b icingaweb2-module-generictts-2.0.0.tar.gz
+11cb3c3ca88a392cd125138af4befe7f08425b6bb7048501b7fee37acdbfd554f5ad7053811c9b8aaaae3593195f8fb49af4a5cc4d04519bbf244d756f3daf70 icingaweb2-module-generictts-2.1.0.tar.gz
"
diff --git a/testing/icingaweb2-module-pnp/APKBUILD b/testing/icingaweb2-module-pnp/APKBUILD
index 8389ea9778b..11b51471c53 100644
--- a/testing/icingaweb2-module-pnp/APKBUILD
+++ b/testing/icingaweb2-module-pnp/APKBUILD
@@ -6,7 +6,7 @@ pkgver=1.1.0
pkgrel=1
pkgdesc="Integrate PNP graphs into Icinga Web 2"
url="https://icinga.com/"
-arch="noarch !armhf !armv7"
+arch="noarch !armhf !armv7 !s390x !x86" # blocked by icingaweb2-module-director
license="GPL-2.0"
_php=php7
depends="icingaweb2-module-director"
diff --git a/testing/icmake/APKBUILD b/testing/icmake/APKBUILD
index 7412387a34c..cbbb923580d 100644
--- a/testing/icmake/APKBUILD
+++ b/testing/icmake/APKBUILD
@@ -1,16 +1,15 @@
# Contributor: Shiz <hi@shiz.me>
# Maintainer: Shiz <hi@shiz.me>
pkgname=icmake
-pkgver=9.02.08
-pkgrel=2
+pkgver=9.03.01
+pkgrel=0
pkgdesc="Make utility using a C-like grammar"
-url="https://fbb-git.github.io/icmake/"
+url="https://fbb-git.gitlab.io/icmake/"
arch="all"
license="GPL-3.0-or-later"
makedepends="bash"
subpackages="$pkgname-doc"
-source="https://gitlab.com/fbb-git/icmake/-/archive/$pkgver/icmake-$pkgver.tar.bz2
- disable-clear-screen.patch"
+source="https://gitlab.com/fbb-git/icmake/-/archive/$pkgver/icmake-$pkgver.tar.bz2"
patch_args="-p2"
builddir="$srcdir/icmake-$pkgver/icmake"
@@ -32,6 +31,5 @@ package() {
}
sha512sums="
-d88877b7d575ce905639b5ee37008718623dfff910da547b11be9e22f1696f30809c438bf702a54a2709b9b4d6cdd929b7e28e41ae2923b8ceffbc058102b76b icmake-9.02.08.tar.bz2
-7eedfec5afca771db4253335a378aac8fa61fbdb9ce6072183e65fd303bce28bdf0bb0e1c3dd28fa6fe6ecfdb931945c56679ec7e3feb1c5980aa30aec85e66d disable-clear-screen.patch
+f3c76c19bf26926306ddce9491ae432a92f097bef2cc6434cb44e849a518c3e63beebdfc8edeb3ad26586ef13a7ed7a6e6074af710eb8a6573dac1f768db8c95 icmake-9.03.01.tar.bz2
"
diff --git a/testing/icmake/disable-clear-screen.patch b/testing/icmake/disable-clear-screen.patch
deleted file mode 100644
index 6034df16041..00000000000
--- a/testing/icmake/disable-clear-screen.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-This patch has been taken from ArchLinux. It should fix the yodl build
-on riscv64 and it's generally very undesirable to use tput(1) for
-buildlogs generated by the Alpine builders.
-
-commit 42d3987d08e41723a2ca8739550bbf5d58e45ea8
-Author: Baptiste Jonglez <git@bitsofnetworks.org>
-Date: Sat Jul 7 12:58:54 2018 +0200
-
- Disable screen clearing
-
- This tends to fail when building in a clean chroot (e.g. yodl) because of
- missing terminal definition, and is of dubious interest anyway.
-
-diff --git a/icmake/scripts/icmbuild.in b/icmake/scripts/icmbuild.in
-index c31e925..dba9607 100644
---- a/icmake/scripts/icmbuild.in
-+++ b/icmake/scripts/icmbuild.in
-@@ -618,7 +618,7 @@ void install(string what, string path)
-
- void clearScreen(int cls)
- {
-- if (cls)
-+ if (0)
- system("tput clear");
- }
-
diff --git a/testing/idesk/APKBUILD b/testing/idesk/APKBUILD
index ebe43551ffd..af1b68a9b3e 100644
--- a/testing/idesk/APKBUILD
+++ b/testing/idesk/APKBUILD
@@ -1,15 +1,23 @@
# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
pkgname=idesk
pkgver=1
-pkgrel=0
+pkgrel=1
pkgdesc="Program to show icons on the desktop"
-url="http://idesk.sourceforge.net/html/index.html"
+url="https://idesk.sourceforge.net/html/index.html"
arch="all"
license="GPL-2.0-only"
makedepends="texinfo automake autoconf imlib2-dev libxft-dev"
-source="https://github.com/antonialoytorrens/idesk/releases/download/v$pkgver/idesk-v$pkgver.tar.gz"
+source="https://github.com/antonialoytorrens/idesk/releases/download/v$pkgver/idesk-v$pkgver.tar.gz
+ imlib2.patch
+ "
builddir="$srcdir/idesk-v$pkgver"
+prepare() {
+ default_prepare
+
+ autoconf
+}
+
build() {
./configure --prefix=/usr
make
@@ -23,4 +31,7 @@ package() {
make DESTDIR="$pkgdir" install
}
-sha512sums="3190fca7a5c9fb36b66159107d22b5f6e50b4573afa21a3a4d8b8e3e5953dabda077c924e45d2607b849ee5fea141eb80f5b89ce5288ebc2490679f319edf768 idesk-v1.tar.gz"
+sha512sums="
+3190fca7a5c9fb36b66159107d22b5f6e50b4573afa21a3a4d8b8e3e5953dabda077c924e45d2607b849ee5fea141eb80f5b89ce5288ebc2490679f319edf768 idesk-v1.tar.gz
+6f58e1db76935a8477b02cf07a6fa17234e5fb6e9aa19426eb25df949519dc6ea85b4182436386f0f2fe0478d37d88053e3f4807ae94c6ca62c7444347b0d8c8 imlib2.patch
+"
diff --git a/testing/idesk/imlib2.patch b/testing/idesk/imlib2.patch
new file mode 100644
index 00000000000..6d3988170bd
--- /dev/null
+++ b/testing/idesk/imlib2.patch
@@ -0,0 +1,27 @@
+diff --git a/configure.in b/configure.in
+index 7eac592..eb68ad2 100644
+--- a/configure.in
++++ b/configure.in
+@@ -94,15 +94,15 @@ LIBS="$LIBS $Xext_lib"
+
+ dnl Imlib2 detection
+
+-AC_PATH_GENERIC(imlib2, , [
+- AC_SUBST(IMLIB_LIBS)
+- AC_SUBST(IMLIB_CXXFLAGS) ],
+- AC_MSG_ERROR(Cannot find imlib2: Is imlib2-config in the path?
+- You need Imlib2 to build Idesk. Verify that you have Imlib2-dev))
++# AC_PATH_GENERIC(imlib2, , [
++# AC_SUBST(IMLIB_LIBS)
++# AC_SUBST(IMLIB_CXXFLAGS) ],
++# AC_MSG_ERROR(Cannot find imlib2: Is imlib2-config in the path?
++# You need Imlib2 to build Idesk. Verify that you have Imlib2-dev))
+
+ dnl the above doesn't work for some reason :/
+-IMLIB_LIBS=`imlib2-config --libs`
+-IMLIB_CFLAGS=`imlib2-config --cflags`
++IMLIB_LIBS=`pkg-config --libs imlib2`
++IMLIB_CFLAGS=`pkg-config --cflags imlib2`
+ AC_SUBST(IMLIB_LIBS)
+ AC_SUBST(IMLIB_CXXFLAGS)
+
diff --git a/testing/ideviceinstaller/APKBUILD b/testing/ideviceinstaller/APKBUILD
index 9398d391280..bbe488f6380 100644
--- a/testing/ideviceinstaller/APKBUILD
+++ b/testing/ideviceinstaller/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Kasper K <kasperkantz@outlook.com>
pkgname=ideviceinstaller
pkgver=1.1.1
-pkgrel=0
+pkgrel=3
pkgdesc="Manage apps of iOS devices"
url="https://libimobiledevice.org"
arch="all"
@@ -28,4 +28,6 @@ package() {
make DESTDIR="$pkgdir" install
}
-sha512sums="fd117a5745890746237f381c9fe0e01cf8ea06d9c2341da397c52e5ebc0e058c73797e349a0a81b2777f5333dafc32e5c32e9e2c99ee70a864be159fe73e9568 ideviceinstaller-1.1.1.tar.bz2"
+sha512sums="
+fd117a5745890746237f381c9fe0e01cf8ea06d9c2341da397c52e5ebc0e058c73797e349a0a81b2777f5333dafc32e5c32e9e2c99ee70a864be159fe73e9568 ideviceinstaller-1.1.1.tar.bz2
+"
diff --git a/testing/idevicerestore/APKBUILD b/testing/idevicerestore/APKBUILD
index caf56aaf650..9233de2ef44 100644
--- a/testing/idevicerestore/APKBUILD
+++ b/testing/idevicerestore/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Kasper K <kasperkantz@outlook.com>
pkgname=idevicerestore
pkgver=1.0.0
-pkgrel=0
+pkgrel=3
pkgdesc="Restore/upgrade firmware of iOS devices"
url="https://libimobiledevice.org"
arch="all"
@@ -28,4 +28,6 @@ package() {
make DESTDIR="$pkgdir" install
}
-sha512sums="d62bd498fd12cacc0cd531a31b39255ee71e082a47de234a1d7bfc270745aec3ed18479fd67aeb2ccdc80e09980b98820e62b284c770e092fe24b96f3fca71a2 idevicerestore-1.0.0.tar.bz2"
+sha512sums="
+d62bd498fd12cacc0cd531a31b39255ee71e082a47de234a1d7bfc270745aec3ed18479fd67aeb2ccdc80e09980b98820e62b284c770e092fe24b96f3fca71a2 idevicerestore-1.0.0.tar.bz2
+"
diff --git a/testing/idris/APKBUILD b/testing/idris/APKBUILD
deleted file mode 100644
index 40740215ffb..00000000000
--- a/testing/idris/APKBUILD
+++ /dev/null
@@ -1,160 +0,0 @@
-# Contributor: Mitch Tishmack <mitch.tishmack@gmail.com>
-# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer: Mitch Tishmack <mitch.tishmack@gmail.com>
-pkgname=idris
-pkgver=1.3.3
-pkgrel=1
-pkgdesc="A Language with Dependent Types"
-url="https://www.idris-lang.org/"
-# Note: same as ghc, if it gets ported elsewhere this should run too.
-# armhf: disabled due to build failure
-arch="" # failed to build
-license="BSD-3-Clause"
-depends="gmp-dev gcc"
-makedepends="ghc cabal libffi-dev ncurses-dev zlib-dev"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/idris-lang/Idris-dev/archive/v$pkgver.tar.gz
- cabal.config
- "
-builddir="$srcdir/Idris-dev-$pkgver"
-
-_cabal_home="$srcdir/cabal"
-
-# Prevent cabal setup from using unbounded memory
-_cabal_install_opts=" --max-backjumps=10000"
-
-cabal_update() {
- msg "Updating constraints"
-
- cd "$builddir"
-
- # Create cabal config and fetch index.
- HOME="$_cabal_home" cabal v1-update
-
- # Resolve deps and generate fresh cabal.config with version constraints.
- rm -f cabal.config
- HOME="$_cabal_home" cabal v1-freeze --shadow-installed-packages
-
- # Add version tag at the first line.
- sed -i "1i--$pkgver" cabal.config
-
- # Remove rts/ghc-boot-sh package if they somehow got inserted
- sed -i -e "s/.*rts.*//g" -e "s/.*ghc-boot-th.*//g" cabal.config
-
- mv cabal.config "$startdir"/
-
- cd "$startdir"
- abuild checksum
-}
-
-
-# Used by the subsequent two functions.
-# This barf of a pipeline converts the cabal freeze config file lines from:
-# constraints: foo ==VERSION,
-# bar ==VERSION
-# etc...
-# To something we can more easily munge into what we need for other purposes
-# aka we end up with:
-# foo==VERSION bar==VERSION ...
-_cabal_constraints_prime() {
- printf "$(grep '==' cabal.config | \
- sed -e 's/constraints[:]//g' | \
- tr -d '[:space:]' | \
- sed -e 's/[,]/ /g')"
-}
-
-# Take the output from above and replace =='s to -'s so we can cabal fetch
-# the specific package-version's via cabal
-_cabal_pkgs() {
- printf "$(_cabal_constraints_prime)" | sed -e 's/==/-/g'
-}
-
-# Similar to the above, but convert to --constraint args used for cabal install
-# so that our cabal install line can use the same constraints for idris in cabal.config.
-#
-# This works around us running against a newer hackage index where one of the packages
-# in the freeze file has a newer version that cabal install libffi could end up
-# selecting due to libffi having more relaxed constraints than idris.
-#
-# That is:
-# --constraint=foo==VERSION --constraint=bar==VERSION
-_cabal_constraints() {
- printf " $(_cabal_constraints_prime)" | sed -e 's/ / --constraint=/g'
-}
-
-prepare() {
- default_prepare
-
- if [ "$(head -n 1 "$srcdir"/cabal.config)" != "--$pkgver" ]; then
- die "Requirements file is outdated, run 'abuild cabal_update'"
- fi
-
- # Create cabal config and fetch index.
- HOME="$_cabal_home" cabal v1-update
-
- # Cabal implicitly loads cabal.config from the project's directory.
- ln -sf "$srcdir"/cabal.config .
-
- # Create Cabal sandbox that will be used for all subsequent cabal
- # invocations. This is something like Python virtual env.
- cmd="cabal v1-sandbox init"
- msg "$cmd"
- HOME="$_cabal_home" $cmd
-
- # Fetch all dependencies.
- # Note: cabal-doctest is a transitive dependency for libffi-0.1 not idris
- cmd="cabal fetch --no-dependencies $(_cabal_pkgs) cabal-doctest-1.0.2 libffi-0.1"
- msg "$cmd"
- HOME="$_cabal_home" $cmd
-}
-
-build() {
- # Build dependencies
- # Note: for libffi force constraints manually via the freeze file to prevent
- # cabal from possibly using newer constraints for libffi that might intersect
- # with those idris uses.
- HOME="$_cabal_home" cabal v1-install $_cabal_install_opts --offline --constraint=cabal-doctest==1.0.2 \
- $(_cabal_constraints) -v libffi-0.1
- HOME="$_cabal_home" cabal v1-install $_cabal_install_opts --offline --only-dependencies -v
-
- # Note: ordering of prefixes is important!
- HOME="$_cabal_home" cabal v1-configure \
- --prefix='/usr' \
- --docdir='$prefix/share/doc' \
- --datadir='$prefix/share' \
- --htmldir='$docdir/html' \
- --libdir='$prefix/lib' \
- --libsubdir="$pkgname" \
- --datasubdir="$pkgname" \
- --dynlibdir="$pkgname" \
- --disable-shared \
- --disable-profiling \
- --disable-library-profiling \
- --flags='GMP FFI standalone'
- HOME="$_cabal_home" cabal v1-build -j
-}
-
-# TODO: Run upstream tests and/or figure out how to set paths to be able
-# to compile hello_world for check.
-check() {
- ./dist/build/idris/idris --version
-}
-
-package() {
- HOME="$_cabal_home" cabal v1-copy --destdir="$pkgdir"
-
- cd "$pkgdir"
-
- # We don't need the haskell shared libraries or interface files.
- rm -r usr/lib/idris
-
- mkdir -p usr/share/doc/idris/ \
- usr/share/licenses/$pkgname/
- mv usr/share/idris/docs usr/share/doc/idris
- mv usr/share/doc/LICENSE usr/share/licenses/$pkgname/
-}
-
-sha512sums="
-fc5c65847c8021ed691c7968043a04fcffaed3a44a6339f611fed616fddefa1b5bc2da8e7e6662dfa552981688a1c96571eadc197e4e50ba060de3c6ddbd03de idris-1.3.3.tar.gz
-497f2f0e37040b93669026dd148ece87c1df1a441598a164fdc3c8093beead6b22e543c4da8eb00ccdcf5482c6d1df4df67a55f5cb502d12c9e3eff668387c21 cabal.config
-"
diff --git a/testing/idris/cabal.config b/testing/idris/cabal.config
deleted file mode 100644
index b6c79f7d2e9..00000000000
--- a/testing/idris/cabal.config
+++ /dev/null
@@ -1,98 +0,0 @@
---1.3.3
-constraints: Cabal ==3.0.1.0,
- aeson ==1.4.7.1,
- annotated-wl-pprint ==0.7.0,
- ansi-terminal ==0.10.3,
- ansi-wl-pprint ==0.6.9,
- array ==0.5.4.0,
- async ==2.2.2,
- attoparsec ==0.13.2.4,
- base ==4.13.0.0,
- base-compat ==0.11.1,
- base-compat-batteries ==0.11.1,
- base-orphans ==0.8.2,
- base64-bytestring ==1.1.0.0,
- binary ==0.8.7.0,
- blaze-builder ==0.4.1.0,
- blaze-html ==0.9.1.2,
- blaze-markup ==0.8.2.5,
- bytestring ==0.10.10.0,
- case-insensitive ==1.2.1.0,
- cheapskate ==0.1.1.2,
- code-page ==0.2,
- colour ==2.3.5,
- constraints ==0.12,
- containers ==0.6.2.1,
- css-text ==0.1.3.0,
- data-default ==0.7.1.1,
- data-default-class ==0.1.2.0,
- data-default-instances-containers ==0.0.1,
- data-default-instances-dlist ==0.0.1,
- data-default-instances-old-locale ==0.0.1,
- deepseq ==1.4.4.0,
- digest ==0.0.1.2,
- directory ==1.3.6.0,
- dlist ==0.8.0.8,
- enclosed-exceptions ==1.0.3,
- exceptions ==0.10.4,
- filepath ==1.4.2.1,
- fingertree ==0.1.4.2,
- fsnotify ==0.3.0.1,
-
- ghc-prim ==0.5.3,
- hashable ==1.3.0.0,
- haskeline ==0.7.5.0,
- hinotify ==0.4,
- hsc2hs ==0.68.7,
- ieee754 ==0.8.0,
- integer-gmp ==1.0.2.0,
- integer-logarithms ==1.0.3,
- lifted-async ==0.10.0.6,
- lifted-base ==0.2.3.12,
- megaparsec ==8.0.0,
- monad-control ==1.0.2.3,
- mtl ==2.2.2,
- network ==3.1.1.1,
- network-uri ==2.6.3.0,
- old-locale ==1.0.0.7,
- optparse-applicative ==0.15.1.0,
- parsec ==3.1.14.0,
- parser-combinators ==1.2.1,
- pretty ==1.1.3.6,
- primitive ==0.7.1.0,
- process ==1.6.8.0,
- random ==1.1,
- regex-base ==0.94.0.0,
- regex-tdfa ==1.3.1.0,
-
- safe ==0.3.19,
- scientific ==0.3.6.2,
- semigroups ==0.19.1,
- shelly ==1.9.0,
- split ==0.2.3.4,
- stm ==2.5.0.0,
- syb ==0.7.1,
- tagged ==0.8.6,
- tagsoup ==0.14.8,
- template-haskell ==2.15.0.0,
- terminal-size ==0.3.2.1,
- terminfo ==0.4.1.4,
- text ==1.2.4.0,
- th-abstraction ==0.3.2.0,
- time ==1.9.3,
- time-compat ==1.9.3,
- transformers ==0.5.6.2,
- transformers-base ==0.4.5.2,
- transformers-compat ==0.6.5,
- type-equality ==1,
- uniplate ==1.6.12,
- unix ==2.7.2.2,
- unix-compat ==0.5.2,
- unordered-containers ==0.2.11.0,
- utf8-string ==1.0.1.1,
- uuid-types ==1.0.3,
- vector ==0.12.1.2,
- vector-binary-instances ==0.2.5.1,
- xss-sanitize ==0.3.6,
- zip-archive ==0.4.1,
- zlib ==0.6.2.1
diff --git a/testing/idris2-stage0/APKBUILD b/testing/idris2-stage0/APKBUILD
deleted file mode 100644
index 3491af1946d..00000000000
--- a/testing/idris2-stage0/APKBUILD
+++ /dev/null
@@ -1,42 +0,0 @@
-# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
-# Maintainer:
-pkgname=idris2-stage0
-pkgver=0.5.1
-pkgrel=1
-pkgdesc="Idris 2 version used to bootstrap the Idris 2 compiler"
-url="https://www.idris-lang.org"
-arch="x86 x86_64" # limited by chez-scheme
-license="BSD-3-Clause"
-depends="chez-scheme gmp-dev"
-makedepends="bash"
-source="https://github.com/idris-lang/Idris2/archive/v$pkgver/idris2-$pkgver.tar.gz"
-builddir="$srcdir/Idris2-$pkgver"
-
-# Provide idris2-bootstrap for testing/idris2.
-# See the comment in testing/idris2 for more information.
-provides="idris2-bootstrap"
-provider_priority=1 # lowest
-
-case "$CARCH" in
-x86) options="!check" ;; # XXX: https://github.com/idris-lang/Idris2/issues/1617
-esac
-
-build() {
- # Bootstrap Idris 2 compiler from scheme sources.
- make -j1 bootstrap PREFIX=/usr SCHEME=chez
-}
-
-check() {
- make -j1 bootstrap-test
-}
-
-package() {
- # Idris2 Makefile doesn't honor ${DESTDIR}
- # See https://github.com/idris-lang/Idris2/pull/1123
- make IDRIS2_PREFIX="$pkgdir/usr" \
- PREFIX="$pkgdir/usr" install
-}
-
-sha512sums="
-6b4a4092570136a684bdd80765d271bc1ebe163c273ff22d22c808f586183a8e90a326573dd0e4b339e1ab0b88fd31f1cc7bf2820ff7bab2742c4156b816c5b7 idris2-0.5.1.tar.gz
-"
diff --git a/testing/idris2/0001-fix-Flush-standard-when-prompting-for-package-inform.patch b/testing/idris2/0001-fix-Flush-standard-when-prompting-for-package-inform.patch
deleted file mode 100644
index 06d1d5b1b90..00000000000
--- a/testing/idris2/0001-fix-Flush-standard-when-prompting-for-package-inform.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-From ae04a54c37c6f132290bf91a0845fa80ec6601c9 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?S=C3=B6ren=20Tempel?= <soeren+git@soeren-tempel.net>
-Date: Mon, 7 Feb 2022 11:14:31 +0100
-Subject: [PATCH] [ fix ] Flush standard when prompting for package information
-
-On Unix-like operating systems stdio.h is usually line-buffered. As
-putStr uses fputs(3) from stdio.h internally, output will be written to
-standard out after a newline character is written to the buffer. Since
-the various prompts written by `idris2 --init` don't contain a newline
-character they are buffered indefinitely. As such, the prompt strings
-themselves are never presented to the user.
-
-To fix this issue, this commit introduces a prompt utility procedure
-which prints a prompt string and afterwards flushes standard output
-before receiving input using getLine. This ensures that the prompt
-string is always written before input is retrieved via getLine.
-
-This is similar to c725b11c891b9f9f1e25ead66d9fc75a91b69836.
----
- src/Idris/Package/Init.idr | 12 ++++++++----
- 1 file changed, 8 insertions(+), 4 deletions(-)
-
-diff --git a/src/Idris/Package/Init.idr b/src/Idris/Package/Init.idr
-index 991f1fde..4113ff5b 100644
---- a/src/Idris/Package/Init.idr
-+++ b/src/Idris/Package/Init.idr
-@@ -9,6 +9,7 @@ import Data.String
-
- import Idris.Package.Types
- import System.Directory
-+import Control.App.FileIO
-
- import Libraries.Utils.Path
- import Libraries.System.Directory.Tree
-@@ -59,14 +60,17 @@ findModules start = do
- (fileName dir :: path, (_ ** iot))
- go (mods ++ acc) (dirs ++ iots)
-
-+prompt : String -> IO String
-+prompt p = putStr p >> fflush stdout >> getLine
-+
- export
- covering
- interactive : IO PkgDesc
- interactive = do
-- pname <- putStr "Package name: " *> getLine
-- pauthors <- putStr "Package authors: " *> getLine
-- poptions <- putStr "Package options: " *> getLine
-- psource <- putStr "Source directory: " *> getLine
-+ pname <- prompt "Package name: "
-+ pauthors <- prompt "Package authors: "
-+ poptions <- prompt "Package options: "
-+ psource <- prompt "Source directory: "
- let sourcedir = mstring psource
- modules <- findModules sourcedir
- let pkg : PkgDesc =
diff --git a/testing/idris2/APKBUILD b/testing/idris2/APKBUILD
deleted file mode 100644
index d8e9e4f7798..00000000000
--- a/testing/idris2/APKBUILD
+++ /dev/null
@@ -1,93 +0,0 @@
-# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
-# Maintainer:
-pkgname=idris2
-pkgver=0.5.1
-# XXX: For chez-scheme rebuilds, re-bootstrap from -stage0 and
-# afterwards self-host by depending on idris2-bootstrap again.
-pkgrel=4
-pkgdesc="Purely functional programming language with first class types"
-url="https://www.idris-lang.org"
-arch="x86 x86_64" # limited by chez-scheme
-license="BSD-3-Clause"
-depends="chez-scheme gmp-dev"
-makedepends="idris2-bootstrap bash py3-sphinx py3-sphinx_rtd_theme"
-subpackages="$pkgname-doc $pkgname-api"
-source="https://github.com/idris-lang/Idris2/archive/v$pkgver/idris2-$pkgver.tar.gz
- 0001-fix-Flush-standard-when-prompting-for-package-inform.patch"
-builddir="$srcdir/Idris2-$pkgver"
-
-# Perform the idris2 self-hosting step by re-compiling Idris2
-# using the previous version of Idris2 or idris2-stage0. This
-# allows us to (a) compile the Idris2 API and (b) backport
-# patches from upstream.
-#
-# See also https://lists.alpinelinux.org/~alpine/devel/%3C33KG0XO61I4IL.2Z7RTAZ5J3SY6%408pit.net%3E
-provides="idris2-bootstrap"
-provider_priority=100 # highest
-
-case "$CARCH" in
-x86) options="!check" ;; # XXX: https://github.com/idris-lang/Idris2/issues/1617
-esac
-
-# TODO: Install idris libs to /usr/lib/idris-$pkgver instead of /usr/idris-$pkgver
-# TODO: Self-hosting step (maybe split into idris2 and idris2-bootstrap?)
-# TODO: https://github.com/idris-lang/Idris2/pull/1123
-
-build() {
- make -j1 PREFIX=/usr SCHEME=chez
- make -C docs html
-}
-
-check() {
- make test
-}
-
-package() {
- # Idris2 Makefile doesn't honor ${DESTDIR}
- # See https://github.com/idris-lang/Idris2/pull/1123
- export IDRIS2_BOOT=./build/exec/idris2
- make -j1 IDRIS2_PREFIX="$pkgdir/usr" \
- PREFIX="$pkgdir/usr" install install-api install-libdocs
-
- # Move package documentation to more sensible location.
- mkdir -p "$pkgdir"/usr/share/doc/$pkgname/
- mv "$pkgdir"/usr/idris2-$pkgver/docs/ \
- "$pkgdir"/usr/share/doc/$pkgname/pkgs
-
- # Install additional documentation files
- install -m644 CHANGELOG.md CONTRIBUTING.md \
- CONTRIBUTORS README.md "$pkgdir"/usr/share/doc/$pkgname/
- cp -r docs/build/html "$pkgdir"/usr/share/doc/$pkgname/
-
- # We don't want to ship directories in $PATH. The /usr/bin/idris2
- # file installed by default is just a shell script which sets up
- # LD_LIBRARY_PATH and executes idris2_app/idris2.so. We don't
- # need to modify LD_LIBRARY_PATH hence we can skip using the
- # script.
- #
- # See also: The Nix package for idris2 in nix/package.nix.
- mv "$pkgdir"/usr/bin/idris2_app/idris2.so "$pkgdir"/usr/bin/idris2
- rm -r "$pkgdir"/usr/bin/idris2_app
-
- # Make sure idris2 --install works by default.
- # See https://github.com/idris-lang/Idris2/issues/737
- mkdir -p "$pkgdir"/etc/profile.d/
- cat > "$pkgdir"/etc/profile.d/idris2.sh <<-EOF
- export IDRIS2_PREFIX="$HOME/.idris2"
- export IDRIS2_PACKAGE_PATH="/usr/idris2-$pkgver"
- export IDRIS2_LIBS="/usr/idris2-$pkgver/lib"
- export IDRIS2_DATA="/usr/idris2-$pkgver/support"
- EOF
-}
-
-api() {
- depends=""
- pkgdesc="Idris API for developing support tools (e.g. external code generator)"
-
- amove usr/idris2-$pkgver/idris2-$pkgver
-}
-
-sha512sums="
-6b4a4092570136a684bdd80765d271bc1ebe163c273ff22d22c808f586183a8e90a326573dd0e4b339e1ab0b88fd31f1cc7bf2820ff7bab2742c4156b816c5b7 idris2-0.5.1.tar.gz
-e3a54ee4a57e2089290fd6d9f69b374b04bf1600f6779dd514e513d59486c4bb51514952ed5019abb016abecf4a32e422996184854e4da32e4c7713eb8db2e46 0001-fix-Flush-standard-when-prompting-for-package-inform.patch
-"
diff --git a/testing/iec16022/APKBUILD b/testing/iec16022/APKBUILD
deleted file mode 100644
index 431e77f1d5c..00000000000
--- a/testing/iec16022/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Contributor: mio <miyopan@e.email>
-# Maintainer: mio <miyopan@e.email>
-pkgname=iec16022
-pkgver=0_git20211222
-pkgrel=0
-_gitrev=cdefe2cd993416104d2e607194ecba53150b1420
-pkgdesc="DataMatrix 2D barcode generator"
-url="https://rdoeffinger.github.io/"
-license="GPL-2.0-or-later"
-arch="all"
-makedepends="autoconf automake libtool popt-dev"
-subpackages="$pkgname-dev $pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/rdoeffinger/iec16022/archive/$_gitrev.tar.gz"
-builddir="$srcdir/$pkgname-$_gitrev"
-
-prepare() {
- default_prepare
- ./autogen.sh
-}
-
-build() {
- ./configure --prefix=/usr
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make install DESTDIR="$pkgdir"
-}
-
-sha512sums="
-0d76dc5da822bc1598f724e8c2ac4283bf1588a1d0d8845ded8e3f6a9905466160674a0e7dd6a9d9ed66ac31316a091e1957473dad70ef25c8677fd68858c2fe iec16022-0_git20211222.tar.gz
-"
diff --git a/testing/ifuse/APKBUILD b/testing/ifuse/APKBUILD
index 26f49c57d08..58fe27a80db 100644
--- a/testing/ifuse/APKBUILD
+++ b/testing/ifuse/APKBUILD
@@ -2,12 +2,13 @@
# Maintainer: Kasper K <kasperkantz@outlook.com>
pkgname=ifuse
pkgver=1.1.4
-pkgrel=0
+pkgrel=4
pkgdesc="Fuse filesystem to access the contents of iOS devices"
url="https://libimobiledevice.org"
arch="all"
license="LGPL-2.1-or-later"
-makedepends="libudev-zero-dev libimobiledevice-dev fuse-dev"
+depends="usbmuxd"
+makedepends="eudev-dev libimobiledevice-dev fuse-dev"
subpackages="$pkgname-doc"
source="https://github.com/libimobiledevice/ifuse/releases/download/$pkgver/ifuse-$pkgver.tar.bz2"
@@ -28,4 +29,6 @@ package() {
make DESTDIR="$pkgdir" install
}
-sha512sums="671fabb0828fb6dd5ddba80ef418005305f4ee4676ab1078513a83582e84616f47c8973c25e1fdd8897b08a01a135080898a55d3ad8b31e89c0bb72ee865cdff ifuse-1.1.4.tar.bz2"
+sha512sums="
+671fabb0828fb6dd5ddba80ef418005305f4ee4676ab1078513a83582e84616f47c8973c25e1fdd8897b08a01a135080898a55d3ad8b31e89c0bb72ee865cdff ifuse-1.1.4.tar.bz2
+"
diff --git a/testing/igrep/APKBUILD b/testing/igrep/APKBUILD
new file mode 100644
index 00000000000..76e157a8c1f
--- /dev/null
+++ b/testing/igrep/APKBUILD
@@ -0,0 +1,40 @@
+# Contributor: Orhun Parmaksız <orhunparmaksiz@gmail.com>
+# Maintainer: Orhun Parmaksız <orhunparmaksiz@gmail.com>
+pkgname=igrep
+pkgver=1.2.0
+pkgrel=0
+pkgdesc="Interactive grep"
+url="https://github.com/konradsz/igrep"
+arch="all"
+license="MIT"
+makedepends="
+ cargo
+ cargo-auditable
+ "
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/konradsz/igrep/archive/v$pkgver.tar.gz"
+options="net"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm 755 "target/release/ig" -t "$pkgdir/usr/bin"
+ install -Dm 644 README.md -t "$pkgdir/usr/share/doc/$pkgname"
+ install -Dm 644 LICENSE -t "$pkgdir/usr/share/licenses/$pkgname"
+}
+
+sha512sums="
+ad488485a4dfa615733eee81d2ad6bd010e15b1a10031f906d64fb095be1ef017ed5cd44f5781f2ab5021fe892f80997211692845a9f89b8b689d5cc543428a2 igrep-1.2.0.tar.gz
+"
diff --git a/testing/igt-gpu-tools/APKBUILD b/testing/igt-gpu-tools/APKBUILD
index bd2c8a4f861..69841caf8a3 100644
--- a/testing/igt-gpu-tools/APKBUILD
+++ b/testing/igt-gpu-tools/APKBUILD
@@ -1,34 +1,54 @@
# Contributor: Dennis Krupenik <dennis@krupenik.com>
# Maintainer: Dennis Krupenik <dennis@krupenik.com>
pkgname=igt-gpu-tools
-pkgver=1.25
-pkgrel=2
+pkgver=1.27.1
+pkgrel=1
pkgdesc="collection of tools for development and testing of the DRM drivers"
url="https://gitlab.freedesktop.org/drm/igt-gpu-tools/"
-arch="x86_64" # Mostly used for Intel integrated GPUs
+arch="x86_64" # intel gpus, aarch64 fails to build
license="MIT"
-depends_dev="alsa-lib-dev cairo-dev curl-dev elfutils-dev eudev-dev gsl-dev
- json-c-dev kmod-dev libdrm-dev liboping-dev libpciaccess-dev libunwind-dev
- libxrandr-dev libxv-dev pixman-dev procps-dev xmlrpc-c-dev"
-makedepends="bison flex meson $depends_dev"
+depends_dev="
+ alsa-lib-dev
+ cairo-dev
+ curl-dev
+ elfutils-dev
+ eudev-dev
+ gsl-dev
+ json-c-dev
+ kmod-dev
+ libdrm-dev
+ liboping-dev
+ libpciaccess-dev
+ libunwind-dev
+ libxrandr-dev
+ libxv-dev
+ pixman-dev
+ procps-compat-dev
+ xmlrpc-c-dev
+ "
+makedepends="
+ $depends_dev
+ bison
+ flex
+ meson
+ "
+checkdepends="bash"
subpackages="$pkgname-dev"
-source="https://gitlab.freedesktop.org/drm/igt-gpu-tools/-/archive/igt-gpu-tools-$pkgver/igt-gpu-tools-igt-gpu-tools-$pkgver.tar.bz2
- bash-sh.patch
+source="https://gitlab.freedesktop.org/drm/igt-gpu-tools/-/archive/v$pkgver/igt-gpu-tools-v$pkgver.tar.gz
musl.patch
- fix-meson.patch
- hdmi-vsdb-struct-padding-fix.patch
"
-builddir="$srcdir/igt-gpu-tools-igt-gpu-tools-$pkgver"
+builddir="$srcdir/igt-gpu-tools-v$pkgver"
build() {
abuild-meson \
-Dvalgrind=disabled \
+ -Dversion_hash=$pkgver \
. build
- meson compile ${JOBS:+-j ${JOBS}} -C build
+ meson compile -C build
}
check() {
- meson test --no-rebuild -v -C build
+ meson test --no-rebuild --print-errorlogs -C build
}
package() {
@@ -36,9 +56,6 @@ package() {
}
sha512sums="
-47a31c0af733e9481e3e8e718adede0a05cb04064d80dae6a7753a346deb71333fb8310664084f4dddfec957629e93c188bc44f2a6895744a10107e4823a9ee6 igt-gpu-tools-igt-gpu-tools-1.25.tar.bz2
-0e24d93cdc56517c78fbcdc64dac63067c9cf49bed66e3b2b6dec6111d67c7e27a2ad7ddb9f1e373746b4b8e9e3535993f8261800fc3729d1f2cdef37e392fc5 bash-sh.patch
-a79a3d4134a75e450b18188189614ad0b3d4218007c8ce68c74f5a928258ca8838ccce5c1f64f920038c44e188896d8d504a36e3cbdf1f8f16c3904bb3b9955f musl.patch
-f843466a5a48229a420ef2df665bf97ad3af120bb50d1de9cab8ad5390f5d2a80df1346f59b90c8e6fc6a211271e56e5dee67c09c42901b1eeb7370d7feff7ca fix-meson.patch
-e217d4a1f8e9c19d1b5110a4a3c91c70f1e93523e3ad4d98068ef6b9aa5a4e3b1c3e48aa4930d70d6a132e869f760795ba5395117dc6461d3505ed12b98a2c70 hdmi-vsdb-struct-padding-fix.patch
+b77d28f95098e4c51678a0a73ad755a5dd28748c77cf8e8c4f46f6d65444939032d2d0ed3c637e4968682d72a5d8cbabd7b8f47737f7fa279b02667fd4ddae9b igt-gpu-tools-v1.27.1.tar.gz
+f372d8e60519c6d9d72efd32d87fc9851eace59cf7c0b66dc5f8795dcfb9efd4aae5f316cd52396ebaba9e0c338f166f1d4ccf828ea473276ea6ed07f71fae32 musl.patch
"
diff --git a/testing/igt-gpu-tools/bash-sh.patch b/testing/igt-gpu-tools/bash-sh.patch
deleted file mode 100644
index e0daf825796..00000000000
--- a/testing/igt-gpu-tools/bash-sh.patch
+++ /dev/null
@@ -1,66 +0,0 @@
-Portability: run shell scripts with #!/bin/sh
----
---- a/tests/ddx_intel_after_fbdev
-+++ b/tests/ddx_intel_after_fbdev
-@@ -1,4 +1,4 @@
--#!/bin/bash
-+#!/bin/sh
- #
- # Testcase: Load Intel DDX after fbdev was loaded
- #
---- a/tests/igt_command_line.sh
-+++ b/tests/igt_command_line.sh
-@@ -1,4 +1,4 @@
--#!/bin/bash
-+#!/bin/sh
- #
- # Copyright © 2014 Intel Corporation
- #
---- a/tests/generate_testlist.sh
-+++ b/tests/generate_testlist.sh
-@@ -1,4 +1,4 @@
--#!/bin/bash
-+#!/bin/sh
-
- OUTPUT=$1
- shift
---- a/scripts/generate_clear_kernel.sh
-+++ b/scripts/generate_clear_kernel.sh
-@@ -1,4 +1,4 @@
--#!/bin/bash
-+#!/bin/sh
- #
- # SPDX-License-Identifier: MIT
- #
---- a/scripts/who.sh
-+++ b/scripts/who.sh
-@@ -1,4 +1,4 @@
--#!/bin/bash
-+#!/bin/sh
- #
- # usage: sudo who.sh
- #
---- a/scripts/run-tests.sh
-+++ b/scripts/run-tests.sh
-@@ -1,4 +1,4 @@
--#!/bin/bash
-+#!/bin/sh
- #
- # Copyright © 2014 Intel Corporation
- #
---- a/meson.sh
-+++ b/meson.sh
-@@ -1,4 +1,4 @@
--#!/bin/bash
-+#!/bin/sh
-
- cat > Makefile <<EOF
-
---- a/man/rst2man.sh
-+++ b/man/rst2man.sh
-@@ -1,4 +1,4 @@
--#!/bin/bash
-+#!/bin/sh
-
- rst2man=$1
- input=$2
diff --git a/testing/igt-gpu-tools/fix-meson.patch b/testing/igt-gpu-tools/fix-meson.patch
deleted file mode 100644
index 142e2fa44fb..00000000000
--- a/testing/igt-gpu-tools/fix-meson.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 963917a3565466832a3b2fc22e9285d34a0bf944 Mon Sep 17 00:00:00 2001
-From: Petri Latvala <petri.latvala@intel.com>
-Date: Thu, 28 Oct 2021 11:05:31 +0300
-Subject: [PATCH] lib/meson.build: Fix underscorify call
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-f.underscorify() is correct, f.underscorify(f) is an error that later
-meson versions don't like at all.
-
-Closes: https://gitlab.freedesktop.org/drm/igt-gpu-tools/-/issues/107
-Fixes: 588555f77909 ("lib/i915: Extract helpers for determining scheduler capabilities")
-Cc: Arkadiusz Hiler <arek@hiler.eu>
-Signed-off-by: Petri Latvala <petri.latvala@intel.com>
-Reviewed-by: José Roberto de Souza <jose.souza@intel.com>
----
- lib/meson.build | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/lib/meson.build b/lib/meson.build
-index c3080fc8..297b0ad2 100644
---- a/lib/meson.build
-+++ b/lib/meson.build
-@@ -155,7 +155,7 @@ lib_version = vcs_tag(input : 'version.h.in', output : 'version.h',
-
- lib_intermediates = []
- foreach f: lib_sources
-- name = f.underscorify(f)
-+ name = f.underscorify()
- lib = static_library('igt-' + name,
- [ f, lib_version ],
- include_directories: inc,
---
-GitLab
-
diff --git a/testing/igt-gpu-tools/hdmi-vsdb-struct-padding-fix.patch b/testing/igt-gpu-tools/hdmi-vsdb-struct-padding-fix.patch
deleted file mode 100644
index 3645c4e0f9c..00000000000
--- a/testing/igt-gpu-tools/hdmi-vsdb-struct-padding-fix.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-Patch-Source: https://gitlab.freedesktop.org/drm/igt-gpu-tools/-/commit/2107b0a53692fb329175bc16169c3699712187aa
-
-From 2107b0a53692fb329175bc16169c3699712187aa Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sat, 27 Feb 2021 14:10:41 -0800
-Subject: [PATCH] lib/igt_edid: Allocate raw 8-bytes for VSDB
-
-hdmi_vsdb is an element of cea_vsdb which makes the size of cea_vsdb to
-be 8 ( 3bytes ieee_oui ) + ( 5bytes hdmi_vsdb struct), its true that we
-only use 7 bytes technically we can only allocate 7byte array but since
-we are writing to elements of hdmi_vsdb struct which is sitting at offet
-4-8 in cea_vsdb, compiler thinks we have an element which is out of
-array bounds since out allocated size is 7bytes
-
-This errors out
-../git/lib/igt_edid.c:365:13: error: array subscript 'struct hdmi_vsdb[0]' is partly outside array bounds of 'char[7]' [-Werror=array-bounds]
- 365 | hdmi->src_phy_addr[0] = 0x10;
- | ^~
-
-allocating one extra byte matches with size of cea_vsdb and compiler is
-happy
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-Reviewed-by: Martin Peres <martin.peres@mupuf.org>
----
- lib/igt_edid.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/lib/igt_edid.c b/lib/igt_edid.c
-index 1c85486d..ce09cc47 100644
---- a/lib/igt_edid.c
-+++ b/lib/igt_edid.c
-@@ -351,7 +351,7 @@ void cea_sad_init_pcm(struct cea_sad *sad, int channels,
- const struct cea_vsdb *cea_vsdb_get_hdmi_default(size_t *size)
- {
- /* We'll generate a VSDB with 2 extension fields. */
-- static char raw[CEA_VSDB_HDMI_MIN_SIZE + 2] = {0};
-+ static char raw[CEA_VSDB_HDMI_MIN_SIZE + 3] = {0};
- struct cea_vsdb *vsdb;
- struct hdmi_vsdb *hdmi;
-
---
-GitLab
-
diff --git a/testing/igt-gpu-tools/musl.patch b/testing/igt-gpu-tools/musl.patch
index 507d6b8e98c..f07a073c71f 100644
--- a/testing/igt-gpu-tools/musl.patch
+++ b/testing/igt-gpu-tools/musl.patch
@@ -1,170 +1,99 @@
-Allow building on musl
-
----
-
---- a/benchmarks/gem_syslatency.c
-+++ b/benchmarks/gem_syslatency.c
-@@ -44,7 +44,11 @@
-
- #include <linux/unistd.h>
-
--#define sigev_notify_thread_id _sigev_un._tid
-+#ifndef __GLIBC__
-+#include "signal_compat.h"
-+#endif
-+
-+#define sigev_notify_thread_id sigev_notify_function
-
- static volatile int done;
-
---- a/lib/igt_aux.c
-+++ b/lib/igt_aux.c
-@@ -31,6 +31,7 @@
- #endif
- #include <stdio.h>
- #include <fcntl.h>
-+#include <limits.h> // PATH_MAX
- #include <sys/stat.h>
- #include <sys/ioctl.h>
- #include <string.h>
-@@ -73,6 +74,12 @@
- #include <libgen.h> /* for dirname() */
- #endif
-
-+#ifndef __GLIBC__
-+#include "signal_compat.h"
-+#endif
-+
-+//#include <asm-generic/siginfo.h>
-+
- /**
- * SECTION:igt_aux
- * @short_description: Auxiliary libraries and support functions
-
+diff --git a/benchmarks/gem_exec_tracer.c b/benchmarks/gem_exec_tracer.c
+index 7e86473..fc2dcf2 100644
+--- a/benchmarks/gem_exec_tracer.c
++++ b/benchmarks/gem_exec_tracer.c
+@@ -271,7 +271,7 @@ static int is_i915(int fd)
+ }
+
+ int
+-ioctl(int fd, unsigned long request, ...)
++ioctl(int fd, int request, ...)
+ {
+ struct trace *t, **p;
+ va_list args;
+diff --git a/lib/igt_aux.h b/lib/igt_aux.h
+index e734c87..1360516 100644
--- a/lib/igt_aux.h
+++ b/lib/igt_aux.h
-@@ -46,7 +46,7 @@
+@@ -48,7 +48,6 @@
+ # ifndef HAVE_GETTID
# define gettid() (pid_t)(syscall(__NR_gettid))
# endif
+-# define sigev_notify_thread_id _sigev_un._tid
#endif
--#define sigev_notify_thread_id _sigev_un._tid
-+#define sigev_notify_thread_id sigev_notify_function
-
+
/* auxialiary igt helpers from igt_aux.c */
- /* generally useful helpers */
-
+diff --git a/lib/igt_halffloat.c b/lib/igt_halffloat.c
+index 08ab05f..7d6a6e6 100644
--- a/lib/igt_halffloat.c
+++ b/lib/igt_halffloat.c
@@ -162,7 +162,7 @@ static inline float _half_to_float(uint16_t val)
return fi.f;
}
-
+
-#if defined(__x86_64__) && !defined(__clang__)
+#if defined(__x86_64__) && !defined(__clang__) && defined(__GLIBC__)
#pragma GCC push_options
#pragma GCC target("f16c")
-
+
+diff --git a/lib/igt_x86.c b/lib/igt_x86.c
+index 6ac700d..ddf5edd 100644
--- a/lib/igt_x86.c
+++ b/lib/igt_x86.c
@@ -190,7 +190,7 @@ char *igt_x86_features_to_string(unsigned features, char *line)
}
#endif
-
+
-#if defined(__x86_64__) && !defined(__clang__)
+#if defined(__x86_64__) && !defined(__clang__) && defined(__GLIBC__)
#pragma GCC push_options
#pragma GCC target("sse4.1")
#pragma GCC diagnostic ignored "-Wpointer-arith"
-
---- /dev/null
-+++ b/lib/signal_compat.h
-@@ -0,0 +1,8 @@
-+#define SIGEV_SIGNAL 0
-+#define SIGEV_NONE 1
-+#define SIGEV_THREAD 2
-+
-+#define SIGEV_SIGNAL 0 /* notify via signal */
-+#define SIGEV_NONE 1 /* other notification: meaningless */
-+#define SIGEV_THREAD 2 /* deliver via thread creation */
-+#define SIGEV_THREAD_ID 4 /* deliver to thread */
-
---- a/tests/drm_read.c
-+++ b/tests/drm_read.c
-@@ -220,7 +220,7 @@ static void test_short_buffer_wakeup(int in, enum pipe pipe)
- pthread_mutex_unlock(&w.mutex);
-
- /* Give each thread a chance to sleep in drm_read() */
-- pthread_yield();
-+ sched_yield();
-
- /* One event should wake all threads as none consume */
- generate_event(w.fd, pipe);
-
---- a/tests/kms_hdmi_inject.c
-+++ b/tests/kms_hdmi_inject.c
-@@ -23,7 +23,7 @@
- */
-
- #include "config.h"
--
-+#include <limits.h>
- #include <dirent.h>
-
- #include "igt.h"
-
---- a/tests/kms_sysfs_edid_timing.c
-+++ b/tests/kms_sysfs_edid_timing.c
-@@ -24,6 +24,7 @@
-
- #include <dirent.h>
- #include <fcntl.h>
-+#include <limits.h>
- #include <sys/stat.h>
-
- #define THRESHOLD_PER_CONNECTOR 10
-
---- a/tests/i915/gem_close_race.c
-+++ b/tests/i915/gem_close_race.c
-@@ -42,6 +42,10 @@
- #include <sys/syscall.h>
- #include "drm.h"
-
-+#ifndef __GLIBC__
-+#include "signal_compat.h"
-+#endif
-+
- #define OBJECT_SIZE (256 * 1024)
-
- #define COPY_BLT_CMD (2<<29|0x53<<22|0x6)
-@@ -51,7 +55,7 @@
- static uint32_t devid;
- static bool has_64bit_relocations;
-
--#define sigev_notify_thread_id _sigev_un._tid
-+#define sigev_notify_thread_id sigev_notify_function
-
- static void selfcopy(int fd, uint32_t handle, int loops)
- {
-
---- a/tests/panfrost_submit.c
-+++ b/tests/panfrost_submit.c
-@@ -68,7 +68,7 @@
- static void check_fb(int fd, struct panfrost_bo *bo)
- {
- int gpu_prod_id = igt_panfrost_get_param(fd, DRM_PANFROST_PARAM_GPU_PROD_ID);
-- __uint32_t *fbo;
-+ uint32_t *fbo;
- int i;
-
- fbo = bo->map;
-
+diff --git a/tests/kms_atomic.c b/tests/kms_atomic.c
+index 2a3fb74..781af5e 100644
--- a/tests/kms_atomic.c
+++ b/tests/kms_atomic.c
-@@ -683,7 +683,6 @@
+@@ -830,7 +830,7 @@ static void crtc_invalid_params_fence(igt_pipe_t *pipe,
{
int timeline, fence_fd;
void *map;
- const ptrdiff_t PAGE_SIZE = sysconf(_SC_PAGE_SIZE);
++ const ptrdiff_t intelsize = sysconf(_SC_PAGE_SIZE);
uint64_t old_mode_id = pipe->values[IGT_CRTC_MODE_ID];
-
+
igt_require_sw_sync();
+@@ -838,28 +838,28 @@ static void crtc_invalid_params_fence(igt_pipe_t *pipe,
+ timeline = sw_sync_timeline_create();
+
+ /* invalid out_fence_ptr */
+- map = mmap(NULL, PAGE_SIZE, PROT_READ, MAP_ANONYMOUS | MAP_PRIVATE, -1, 0);
++ map = mmap(NULL, intelsize, PROT_READ, MAP_ANONYMOUS | MAP_PRIVATE, -1, 0);
+ igt_assert(map != MAP_FAILED);
+
+ igt_pipe_obj_set_prop_value(pipe, IGT_CRTC_OUT_FENCE_PTR, (ptrdiff_t)map);
+ crtc_commit_atomic_err(pipe, plane, ATOMIC_RELAX_NONE, EFAULT);
+- munmap(map, PAGE_SIZE);
++ munmap(map, intelsize);
+
+ /* invalid out_fence_ptr */
+- map = mmap(NULL, PAGE_SIZE, PROT_EXEC, MAP_ANONYMOUS | MAP_PRIVATE, -1, 0);
++ map = mmap(NULL, intelsize, PROT_EXEC, MAP_ANONYMOUS | MAP_PRIVATE, -1, 0);
+ igt_assert(map != MAP_FAILED);
+
+ igt_pipe_obj_set_prop_value(pipe, IGT_CRTC_OUT_FENCE_PTR, (ptrdiff_t)map);
+ crtc_commit_atomic_err(pipe, plane, ATOMIC_RELAX_NONE, EFAULT);
+- munmap(map, PAGE_SIZE);
++ munmap(map, intelsize);
+
+ /* invalid out_fence_ptr */
+- map = mmap(NULL, PAGE_SIZE, PROT_NONE, MAP_ANONYMOUS | MAP_PRIVATE, -1, 0);
++ map = mmap(NULL, intelsize, PROT_NONE, MAP_ANONYMOUS | MAP_PRIVATE, -1, 0);
+ igt_assert(map != MAP_FAILED);
+
+ igt_pipe_obj_set_prop_value(pipe, IGT_CRTC_OUT_FENCE_PTR, (ptrdiff_t)map);
+ crtc_commit_atomic_err(pipe, plane, ATOMIC_RELAX_NONE, EFAULT);
+- munmap(map, PAGE_SIZE);
++ munmap(map, intelsize);
+
+ /* valid in fence but not allowed prop on crtc */
+ fence_fd = sw_sync_timeline_create_fence(timeline, 1);
diff --git a/testing/iipsrv/APKBUILD b/testing/iipsrv/APKBUILD
new file mode 100644
index 00000000000..31abdbb6ff3
--- /dev/null
+++ b/testing/iipsrv/APKBUILD
@@ -0,0 +1,63 @@
+# Contributor: Ruven Pillay <ruven@users.sourceforge.net>
+# Maintainer: Ruven Pillay <ruven@users.sourceforge.net>
+pkgname=iipsrv
+pkgver=1.2
+pkgrel=0
+pkgdesc="IIPImage image server: iipsrv. An advanced high-performance image server for high-resolution and scientific images"
+url="https://iipimage.sourceforge.io"
+arch="all"
+options="!check" # No test suite
+license="GPL-3.0-or-later"
+makedepends="tiff-dev fcgi-dev libjpeg-turbo-dev zlib-dev libmemcached-dev openjpeg-dev libpng-dev libwebp-dev"
+install="$pkgname.pre-install"
+source="https://downloads.sourceforge.net/iipimage/IIP%20Server/iipsrv-$pkgver/iipsrv-$pkgver.tar.bz2
+ lighttpd.iipsrv.conf
+ apache.iipsrv.conf
+ iipsrv.initd
+ iipsrv.confd
+ RawTile.patch"
+subpackages="$pkgname-doc $pkgname-openrc $pkgname-lighttpd:lighttpd:noarch $pkgname-apache:apache:noarch"
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+ # Rename our binary to just iipsrv and copy to /usr/bin
+ mv src/iipsrv.fcgi src/iipsrv
+ install -D -t $pkgdir/usr/bin/ src/iipsrv
+ # Remove FCGI includes
+ rm -fr $pkgdir/usr/include
+ # Add OpenRC files
+ install -Dm644 $srcdir/iipsrv.confd $pkgdir/etc/conf.d/iipsrv
+ install -Dm755 $srcdir/iipsrv.initd $pkgdir/etc/init.d/iipsrv
+}
+
+lighttpd() {
+ pkgdesc="Configuration file for Lighttpd"
+ install_if="$pkgname=$pkgver-r$pkgrel lighttpd"
+ install -Dm644 lighttpd.iipsrv.conf $subpkgdir/etc/lighttpd/iipsrv.conf
+}
+
+apache() {
+ pkgdesc="Configuration file for Apache"
+ install_if="$pkgname=$pkgver-r$pkgrel apache2-proxy"
+ install -Dm644 apache.iipsrv.conf $subpkgdir/etc/apache2/conf.d/iipsrv.conf
+}
+
+sha512sums="
+76d7dee476384e24dc13c8e37ed14999c8c584742303456cbc893eb11b2e5e6effe01f208f84830cefb48694290252908826550bf89d0fb1a8c6c82f1bc30fcd iipsrv-1.2.tar.bz2
+244c16de76c2c13975c7e48db61a9d957833c424f4060f2b762fc6984323339bc0a8fec27ebdbfa25677969e5ee49bde4c2aec11a57c7b25a73689f23d983ffc lighttpd.iipsrv.conf
+905c5c921bb1521963196a60e4cc2059a92fc197e7b37dfb19efeda35213d19721b790b7dc373d71f355329a4eb56d46a7a96e9e7dd52ee30001d4255dcb91a2 apache.iipsrv.conf
+035be8c8c10aa01531027c0ff05d0d2402812ac2bf066d247044a2f023581b3f1cd533532153a66fce67f0a819769639607542dc78e8de78e11b3da4bb7d7fc8 iipsrv.initd
+db17270cac0d142d0b187900415e5927269e0dc6f5d145b545c9855006ecd77cee4816ebeff7b1d9313abb4da9c07ec423c6eb4a7b63e07030a71589e48e330b iipsrv.confd
+6ff8e9b10ea7c3cb97a9570326d2538ea1f14bde41e2be5657d21e048e20ebf2e5d7cf7898dea8a29b6a420807c29af1549417fd217a2655f633e83c8c849509 RawTile.patch
+"
diff --git a/testing/iipsrv/RawTile.patch b/testing/iipsrv/RawTile.patch
new file mode 100644
index 00000000000..2b50a94cea6
--- /dev/null
+++ b/testing/iipsrv/RawTile.patch
@@ -0,0 +1,10 @@
+--- iipsrv-1.2/src/RawTile.h
++++ iipsrv-1.2/src/RawTile.new.h
+@@ -26,6 +26,7 @@
+ #include <string>
+ #include <cstdlib>
+ #include <ctime>
++#include <cstdint>
+
+ #if !( (__cplusplus >= 201103L) || ((defined(_MSC_VER) && _MSC_VER >= 1900)) )
+ #include <stdint.h> // Required for C++98
diff --git a/testing/iipsrv/apache.iipsrv.conf b/testing/iipsrv/apache.iipsrv.conf
new file mode 100644
index 00000000000..5889ba332b2
--- /dev/null
+++ b/testing/iipsrv/apache.iipsrv.conf
@@ -0,0 +1 @@
+ProxyPass "/fcgi-bin/iipsrv.fcgi" "fcgi://localhost:9000/"
diff --git a/testing/iipsrv/iipsrv.confd b/testing/iipsrv/iipsrv.confd
new file mode 100644
index 00000000000..dd51ed7ca7d
--- /dev/null
+++ b/testing/iipsrv/iipsrv.confd
@@ -0,0 +1,5 @@
+export HOST="0.0.0.0"
+export PORT=9000
+export VERBOSITY=1
+export URI_MAP="iiif=>IIIF"
+export LOGFILE="/var/log/iipsrv"
diff --git a/testing/iipsrv/iipsrv.initd b/testing/iipsrv/iipsrv.initd
new file mode 100644
index 00000000000..0266a7acb66
--- /dev/null
+++ b/testing/iipsrv/iipsrv.initd
@@ -0,0 +1,14 @@
+#!/sbin/openrc-run
+
+description="IIPImage server"
+supervisor=supervise-daemon
+
+command="/usr/bin/iipsrv"
+command_args="--bind $HOST:$PORT"
+command_user="iipsrv:wheel"
+
+start_pre() {
+ # Make sure logfile is writable
+ touch $LOGFILE
+ chown iipsrv:wheel $LOGFILE
+}
diff --git a/testing/iipsrv/iipsrv.pre-install b/testing/iipsrv/iipsrv.pre-install
new file mode 100644
index 00000000000..9067a6df9f0
--- /dev/null
+++ b/testing/iipsrv/iipsrv.pre-install
@@ -0,0 +1,8 @@
+#!/bin/sh
+
+addgroup -S -g 82 www-data 2>/dev/null
+addgroup -S iipsrv 2>/dev/null
+adduser -S -D -H -h /var/www -s /sbin/nologin -G iipsrv -g iipsrv iipsrv 2>/dev/null
+addgroup iipsrv www-data 2>/dev/null
+
+exit 0
diff --git a/testing/iipsrv/lighttpd.iipsrv.conf b/testing/iipsrv/lighttpd.iipsrv.conf
new file mode 100644
index 00000000000..56fd497676e
--- /dev/null
+++ b/testing/iipsrv/lighttpd.iipsrv.conf
@@ -0,0 +1,6 @@
+server.modules += ("mod_fastcgi")
+fastcgi.server = (
+ "/fcgi-bin/iipsrv.fcgi" => (
+ ("host"=>"0.0.0.0", "port"=>9000, "check-local"=>"disable")
+ )
+)
diff --git a/testing/iir1/APKBUILD b/testing/iir1/APKBUILD
new file mode 100644
index 00000000000..eb055b0414b
--- /dev/null
+++ b/testing/iir1/APKBUILD
@@ -0,0 +1,41 @@
+# Contributor: Milan P. Stanić <mps@arvanta.net>
+# Maintainer: Milan P. Stanić <mps@arvanta.net>
+pkgname=iir1
+pkgver=1.9.4
+pkgrel=0
+pkgdesc="dsp iir realtime C++ filter library"
+url="https://github.com/berndporr/iir1"
+arch="all"
+license="MIT"
+makedepends="cmake"
+subpackages="$pkgname-dev $pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/berndporr/iir1/archive/refs/tags/$pkgver.tar.gz"
+#builddir="$srcdir/"
+
+build() {
+ if [ "$CBUILD" != "$CHOST" ]; then
+ CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ cmake -B build \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=True \
+ -DCMAKE_BUILD_TYPE=MinSizeRel \
+ $CMAKE_CROSSOPTS
+ cmake --build build
+}
+
+check() {
+ cd build
+ CTEST_OUTPUT_ON_FAILURE=TRUE ctest
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+ mkdir -p "$pkgdir"/usr/share/doc/$pkgname
+ cp -r "$builddir"/docs "$pkgdir/usr/share/doc/$pkgname/manual"
+}
+
+sha512sums="
+e69b79ba48aa5d5ec2ddb0a31461ac4c15b0489df80fddc1f1f8adc143726fa189dc0dd94a0ed2bb7aa73712f953e27b345a762120ab2d10f54f57a868f0ea42 iir1-1.9.4.tar.gz
+"
diff --git a/testing/ijq/APKBUILD b/testing/ijq/APKBUILD
index fca0138bd47..fe1f427e105 100644
--- a/testing/ijq/APKBUILD
+++ b/testing/ijq/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: TBK <alpine@jjtc.eu>
# Maintainer: TBK <alpine@jjtc.eu>
pkgname=ijq
-pkgver=0.3.6
-pkgrel=4
+pkgver=1.1.0
+pkgrel=0
pkgdesc="Interactive jq tool"
url="https://git.sr.ht/~gpanders/ijq/"
license="GPL-3.0-or-later"
@@ -16,6 +16,11 @@ source="$pkgname-$pkgver.tar.gz::https://git.sr.ht/~gpanders/ijq/archive/v$pkgve
"
builddir="$srcdir/$pkgname-v$pkgver"
+export GOFLAGS="$GOFLAGS -buildvcs=false"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
build() {
make
}
@@ -25,6 +30,6 @@ package() {
}
sha512sums="
-5a88f62e7bb9c749444095da30ed3975d3079d9417b03b861e469a45f3332f7856da5f913251d3ab62d2a57d6295e9491f83c5716478391f5298c1c1f9b24f45 ijq-0.3.6.tar.gz
+4f78044a51433c88f70c20512d3f41eb1bdcc939e4532913cb8bfe8e3258ba2c7fe88607794e3a461a247cd1a4f4f2c1dbc18b122bec3c2a46bbce6df43015a8 ijq-1.1.0.tar.gz
ad49dafd0ae838f98fa6e656eb01bd1216f3e091128310b8d5ad081f5fce266e1dfdf1fe9991883116bc3b29b48828aebabd58481aa822715797c993f6f62e00 makefile.patch
"
diff --git a/testing/ima-evm-utils/APKBUILD b/testing/ima-evm-utils/APKBUILD
deleted file mode 100644
index 6f7825f3a68..00000000000
--- a/testing/ima-evm-utils/APKBUILD
+++ /dev/null
@@ -1,54 +0,0 @@
-# Contributor: Petr Vorel <petr.vorel@gmail.com>
-# Maintainer: Petr Vorel <petr.vorel@gmail.com>
-pkgname=ima-evm-utils
-pkgver=1.3.2
-pkgrel=0
-pkgdesc="Linux Integrity Measurement Architecture (IMA) Extended Verification Module (EVM) tools"
-url="https://sourceforge.net/p/linux-ima/wiki/Home/"
-arch="all"
-license="LGPL-2.1-or-later"
-makedepends="
- attr-dev
- asciidoc
- autoconf
- automake
- bash
- diffutils
- docbook-xsl
- keyutils-dev
- libtool
- libxslt
- linux-headers
- openssl-dev
- tpm2-tss-dev
- xxd
- "
-subpackages="$pkgname-dev $pkgname-doc"
-source="http://downloads.sourceforge.net/project/linux-ima/ima-evm-utils/ima-evm-utils-$pkgver.tar.gz"
-
-prepare() {
- default_prepare
- ./autogen.sh
-}
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var \
- --disable-static
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="af96935f953fbec8cdd40ba1a24001fae916633df03f9dee1e96775baec0ffea21a7a13798b3e3c3f375fd493a65fe65b5357887890b46cac0c4dcca5a5b79db ima-evm-utils-1.3.2.tar.gz"
diff --git a/testing/imageflow/APKBUILD b/testing/imageflow/APKBUILD
deleted file mode 100644
index d22a62d98c0..00000000000
--- a/testing/imageflow/APKBUILD
+++ /dev/null
@@ -1,65 +0,0 @@
-# Contributor: Adam Jensen <adam@acj.sh>
-# Maintainer: Adam Jensen <adam@acj.sh>
-pkgname=imageflow
-pkgver=1.5.8
-_rcver=-rc62 # needed until first official release
-_commit=1f6dc67eef41132d5d3300676daa5d42ae7f8941
-pkgrel=0
-pkgdesc="High-performance image manipulation for web servers"
-url="https://github.com/imazen/imageflow"
-arch="x86_64" # limited by cargo and SIMD dependency
-license="AGPL-3.0-only"
-makedepends="bash cargo zip nasm git openssl-dev wget curl libpng-dev dssim"
-source="$pkgname-$pkgver$_rcver.tar.gz::https://github.com/imazen/imageflow/archive/v$pkgver$_rcver.tar.gz"
-builddir="$srcdir/$pkgname-$pkgver$_rcver"
-subpackages="$pkgname-server:_server
- $pkgname-tool:_tool
- "
-
-prepare() {
- # Workaround for environment consistency checks in build
- touch .git
-
- default_prepare
-}
-
-build() {
- # Needed to populate fields displayed at runtime
- version_prefix="v$pkgver$_rcver"
- export GIT_COMMIT="$_commit"
- export GIT_COMMIT_SHORT="${GIT_COMMIT:0:7}"
- export GIT_OPTIONAL_TAG=$version_prefix
- export GIT_DESCRIBE_ALWAYS="$version_prefix"
- export GIT_DESCRIBE_ALWAYS_LONG="$version_prefix-0-alpine"
- export GIT_DESCRIBE_AAL="tags/$version_prefix-0-alpine"
- export GIT_OPTIONAL_BRANCH="n/a"
-
- cargo build --workspace --release --locked
-}
-
-check() {
- cargo test --workspace --release --locked
-}
-
-package() {
- install -Dm644 "$builddir/target/release/libimageflow.so" \
- "$pkgdir/usr/lib/libimageflow.so.$pkgver"
- ln -s "libimageflow.so.$pkgver" "$pkgdir/usr/lib/libimageflow.so.${pkgver:0:1}"
- ln -s "libimageflow.so.$pkgver" "$pkgdir/usr/lib/libimageflow.so"
-}
-
-_server() {
- pkgdesc="$pkgdesc (HTTP server)"
-
- install -Dm755 "$builddir/target/release/imageflow_server" \
- "$subpkgdir/usr/bin/imageflow_server"
-}
-
-_tool() {
- pkgdesc="$pkgdesc (image resizing tool)"
-
- install -Dm755 "$builddir/target/release/imageflow_tool" \
- "$subpkgdir/usr/bin/imageflow_tool"
-}
-
-sha512sums="2668a8a5a27f32889796714549031b2b1023e4df892718765841fb974680f1645c109190f1c94942350574919ca7773e2d41927330c940accd1a0dba1bdd6c0f imageflow-1.5.8-rc62.tar.gz"
diff --git a/testing/imapfilter/APKBUILD b/testing/imapfilter/APKBUILD
index 8d386ddf269..64b42426cbc 100644
--- a/testing/imapfilter/APKBUILD
+++ b/testing/imapfilter/APKBUILD
@@ -1,13 +1,13 @@
# Contributor: Andrew Hills <ahills@ednos.net>
# Maintainer: Andrew Hills <ahills@ednos.net>
pkgname=imapfilter
-pkgver=2.7.5
+pkgver=2.8.2
pkgrel=0
pkgdesc="Lua-based filtering for IMAP mailboxes"
url="https://github.com/lefcha/imapfilter"
arch="all"
license="MIT"
-makedepends="$depends_dev lua-dev openssl-dev pcre2-dev libc-dev"
+makedepends="$depends_dev lua-dev openssl-dev>3 pcre2-dev libc-dev"
options="!check" # no testsuite
subpackages="$pkgname-doc"
source="$pkgname-$pkgver.tar.gz::https://github.com/lefcha/imapfilter/archive/v$pkgver.tar.gz"
@@ -24,4 +24,6 @@ package() {
install
}
-sha512sums="a64747d745ecd5a2f61d486cd8fec1bceeb97ce459ec57454311a960dbfce526c15e8bddeb16860b8efd9710de93845adec61ec892355a0bef7bddc4517e1442 imapfilter-2.7.5.tar.gz"
+sha512sums="
+b16e684d6af4e8c3f465e22c008b9231209f1336b1f9a27fbd98460cf987f84e81040250ccb657d3986100b3804f1fc130a409cacc3921180920d26193dd5967 imapfilter-2.8.2.tar.gz
+"
diff --git a/testing/imath/APKBUILD b/testing/imath/APKBUILD
deleted file mode 100644
index 5eaef10fe6c..00000000000
--- a/testing/imath/APKBUILD
+++ /dev/null
@@ -1,58 +0,0 @@
-# Contributor: Alex Yam <alex@alexyam.com>
-# Maintainer: Alex Yam <alex@alexyam.com>
-pkgname=imath
-_pkgname=Imath
-pkgver=3.1.5
-pkgrel=1
-pkgdesc="C++ and python library of 2D and 3D vector, matrix, and math operations for computer graphics"
-url="https://github.com/AcademySoftwareFoundation/Imath"
-arch="all !x86"
-# The following tests FAILED:
-# 1 - PyImath.PyImathTest_Python3 (Failed)
-# 23 - Imath.testInterval (Subprocess aborted)
-# 33 - Imath.testBox (Subprocess aborted)
-license="BSD-3-Clause"
-makedepends="
- bash
- boost-dev
- clang-extra-tools
- cmake
- doxygen
- py3-breathe
- py3-numpy-dev
- py3-sphinx
- python3-dev
- samurai
- "
-subpackages="$pkgname-dev $pkgname-doc py3-$pkgname:_py"
-source="$pkgname-$pkgver.tar.gz::https://github.com/AcademySoftwareFoundation/Imath/archive/refs/tags/v$pkgver.tar.gz"
-builddir=$srcdir/$_pkgname-$pkgver
-
-build() {
- cmake -B build -G Ninja \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- -DCMAKE_BUILD_TYPE=None \
- -DDOCS=ON \
- -DPYTHON=ON
- cmake --build build
-}
-
-check() {
- cd build && CTEST_OUTPUT_ON_FAILURE=TRUE ctest
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-
-_py() {
- pkgdesc="Imath Python library"
- depends="python3 imath=$pkgver-r$pkgrel"
- amove usr/lib/python3*
-}
-
-sha512sums="
-8344e42c75d8e4bb21facb837535f0c9e4a9489d9edebcc25d5d3c6063535f2bf54e4517d8fca3fedada248457aa07c9bd77d6e843a9d115278fc154de2cdc9d imath-3.1.5.tar.gz
-"
diff --git a/testing/imediff/APKBUILD b/testing/imediff/APKBUILD
new file mode 100644
index 00000000000..44c3d5dd254
--- /dev/null
+++ b/testing/imediff/APKBUILD
@@ -0,0 +1,33 @@
+# Contributor: Vlad Glagolev <scm@vaygr.net>
+# Maintainer: Vlad Glagolev <scm@vaygr.net>
+pkgname=imediff
+pkgver=2.6
+pkgrel=1
+url="https://github.com/osamuaoki/imediff"
+pkgdesc="ncurses-based 2/3 file merge tool"
+arch="noarch"
+license="GPL-2.0-or-later"
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc $pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/osamuaoki/imediff/archive/$pkgver.tar.gz"
+options="!check" # outdated test suite
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+4d5abb2285580776e43f2c752bb90e631fb7ed9daaa83e62d488aa000077ed22404086bcc3bc4fe53ce1f166415a94ebae271c48b91cf05ffad55c3b4e5049e3 imediff-2.6.tar.gz
+"
diff --git a/testing/imgdiff/APKBUILD b/testing/imgdiff/APKBUILD
index 770459764c8..0c669161c04 100644
--- a/testing/imgdiff/APKBUILD
+++ b/testing/imgdiff/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Grigory Kirillov <txgk@bk.ru>
-# Maintainer: Grigory Kirillov <txgk@bk.ru>
+# Maintainer: Sergiy Stupar <owner@sestolab.pp.ua>
pkgname=imgdiff
pkgver=1.0.2
-pkgrel=1
+pkgrel=18
pkgdesc="Fast pixel-by-pixel image difference tool"
url="https://github.com/n7olkachev/imgdiff"
arch="all"
@@ -12,6 +12,10 @@ subpackages="$pkgname-doc"
makedepends="go"
source="https://github.com/n7olkachev/imgdiff/archive/v$pkgver/imgdiff-v$pkgver.tar.gz"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
build() {
go build -o imgdiff cmd/main.go
}
diff --git a/testing/imhex/APKBUILD b/testing/imhex/APKBUILD
deleted file mode 100644
index 3d85e56ecfc..00000000000
--- a/testing/imhex/APKBUILD
+++ /dev/null
@@ -1,103 +0,0 @@
-# Contributor: George Hopkins <george-hopkins@null.net>
-# Maintainer: George Hopkins <george-hopkins@null.net>
-pkgname=imhex
-pkgver=1.17.0
-pkgrel=1
-_nativefiledialog=28ade5a5cc5d17cea8fe4034572cac8fd54eb53f
-_xdgpp=f01f810714443d0f10c333d4d1d9c0383be41375
-_libromfs=f14e88a72759f7121cb611abb7afa6d6a126c7cf
-_capstone=d5141c04785678535c7792eddc21f146186e639f
-_pattern_language=f276631e73cec898ec92d77b0e1744a0f0ed5e13
-pkgdesc="Hex editor for reverse engineers and programmers"
-url="https://github.com/WerWolv/ImHex"
-# armhf, armv7: blocked by yara, int128
-# ppc64le: textrel in libromfs
-# x86: blocked by using int128
-arch="all !armhf !armv7 !ppc64le !x86"
-license="GPL-2.0-or-later"
-options="!check" # No testsuite
-makedepends="
- capstone-dev
- cmake
- curl-dev
- file-dev
- fmt-dev
- freetype-dev
- glfw-dev
- glm-dev
- gtk+3.0-dev
- llvm-dev
- llvm-static
- mbedtls-dev
- nlohmann-json
- openssl-dev
- python3-dev
- samurai
- yara-dev
- "
-source="$pkgname-$pkgver.tar.gz::https://github.com/WerWolv/ImHex/archive/v$pkgver.tar.gz
- nativefiledialog-$_nativefiledialog.tar.gz::https://github.com/btzy/nativefiledialog-extended/archive/$_nativefiledialog.tar.gz
- libromfs-$_libromfs.tar.gz::https://github.com/WerWolv/libromfs/archive/$_libromfs.tar.gz
- capstone-$_capstone.tar.gz::https://github.com/capstone-engine/capstone/archive/$_capstone.tar.gz
- pattern_language-$_pattern_language.tar.gz::https://github.com/WerWolv/PatternLanguage/archive/$_pattern_language.tar.gz
- https://git.sr.ht/~danyspin97/xdgpp/blob/$_xdgpp/xdg.hpp
- "
-builddir="$srcdir"/ImHex-$pkgver
-
-prepare() {
- default_prepare
-
- mv "$srcdir"/nativefiledialog-extended-$_nativefiledialog/* \
- "$builddir"/lib/external/nativefiledialog
- mv "$srcdir"/libromfs-$_libromfs/* \
- "$builddir"/lib/external/libromfs
- mv "$srcdir"/xdg.hpp \
- "$builddir"/lib/external/xdgpp
- mv "$srcdir"/capstone-$_capstone/* \
- "$builddir"/lib/external/capstone
- mv "$srcdir"/PatternLanguage-$_pattern_language/* \
- "$builddir"/lib/external/pattern_language
-
- # use system deps, new cmake script fails if these are empty
- # even if you set SYSTEM_ vars below..
- rmdir "$builddir"/lib/external/curl
- rmdir "$builddir"/lib/external/fmt
-
- # cmake script checks if there are at least two files or fails..
- # easier than patching
- touch "$builddir"/lib/external/xdgpp/abc
-
- sed -i 's|-Werror||g' \
- lib/libimhex/CMakeLists.txt \
- main/CMakeLists.txt \
- plugins/builtin/CMakeLists.txt
-}
-
-build() {
- # project cmake doesn't add llvm lib path correctly,
- # this is the easiest fix
- export LDFLAGS="$LDFLAGS -L$(llvm-config --libdir)"
- cmake -B build -G Ninja \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_VERBOSE_MAKEFILE=ON \
- -DUSE_SYSTEM_CURL=ON \
- -DUSE_SYSTEM_NLOHMANN_JSON=ON \
- -DUSE_SYSTEM_FMT=ON \
- -DUSE_SYSTEM_LLVM=ON \
- -DUSE_SYSTEM_YARA=ON
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-
-sha512sums="
-32d6979cef39a4428393ca75d806a06c64928ad805112b5c36d09613c397a0a8db0ed10e4214b9545b17dc67067c9ece833b1cf937f6f83fa5915b20dc7c770d imhex-1.17.0.tar.gz
-8910a3f80a009de0a14c0efa777e235161f17da9552ae5dd28266dc8eec8459fdc4efc9c067cdc3433201cfc65eafd6d06d28d4360c8d1f01f4118923ac13052 nativefiledialog-28ade5a5cc5d17cea8fe4034572cac8fd54eb53f.tar.gz
-077819e008b77e1107f5dce7757cba92ab05a92441776c85d6730f1d04e758cd11ace9a952b04601dedeee437cfa8eae73a89ab167abeb708a39950fe9ea0644 libromfs-f14e88a72759f7121cb611abb7afa6d6a126c7cf.tar.gz
-de9cf7da9fc3e502165b28b998b472791c8d5366e1a1a1fabd6bb8856a6fae80bf7d1fc4d268572d69c3526161bb0509a598ad4d94207e25a62aff6a5f9e9404 capstone-d5141c04785678535c7792eddc21f146186e639f.tar.gz
-ce5240378dc1a0205f39e309aea497cf1d1f5469ff2492596bf2e12b7886059091ac41fcd32df23fae83f1ae70a58746d94bdcef20f602422b39db7a99743103 pattern_language-f276631e73cec898ec92d77b0e1744a0f0ed5e13.tar.gz
-0cb56ded30b4eb9d4fc3b4879d9bb5d5c084e67bfe9820264c1ae606f4964e18391cf327fd64b0ca42f89c5c469afa9622b003a1642c584e3da249caefd0373f xdg.hpp
-"
diff --git a/testing/imrsh/APKBUILD b/testing/imrsh/APKBUILD
index 23a10b42e5b..26c0547c6ba 100644
--- a/testing/imrsh/APKBUILD
+++ b/testing/imrsh/APKBUILD
@@ -4,7 +4,7 @@ pkgname=imrsh
# NOTE: this software is not ready to be moved out of the testing repository
pkgver=0_git20210320
_commit=b97ad8e5b58061920f48d32f0343f66d5896a934
-pkgrel=0
+pkgrel=1
pkgdesc="Interactive POSIX shell"
url="https://git.sr.ht/~sircmpwn/imrsh"
license="GPL-3.0"
@@ -17,7 +17,7 @@ options="!check" # no test suite
build() {
abuild-meson . output
- meson compile ${JOBS:+-j ${JOBS}} -C output
+ meson compile -C output
}
package() {
diff --git a/testing/indi-3rdparty/APKBUILD b/testing/indi-3rdparty/APKBUILD
new file mode 100644
index 00000000000..61b118390c0
--- /dev/null
+++ b/testing/indi-3rdparty/APKBUILD
@@ -0,0 +1,50 @@
+# Contributor: Clayton Craft <clayton@craftyguy.net>
+# Maintainer: Clayton Craft <clayton@craftyguy.net>
+pkgname=indi-3rdparty
+# keep in sync with libindi !
+pkgver=2.0.7
+pkgrel=0
+pkgdesc="INDI 3rd Party drivers "
+url="https://github.com/indilib/indi-3rdparty"
+arch="all !armv7 !armhf !riscv64" # libnova
+license="LGPL-2.1-only"
+makedepends="
+ cfitsio-dev
+ cmake
+ gsl-dev
+ libgphoto2-dev
+ libindi-dev=$pkgver-r$pkgrel
+ libraw-dev
+ libusb-dev
+ samurai
+"
+subpackages="
+ $pkgname-gphoto:_gphoto
+"
+source="https://github.com/indilib/indi-3rdparty/archive/v$pkgver/indi-3rdparty-$pkgver.tar.gz"
+options="!check"
+
+package() {
+ mkdir -p "$pkgdir"
+}
+
+_build_3rdparty() {
+ pkgdesc="$1 3rd party INDI driver"
+ cd "$srcdir/indi-3rdparty-$pkgver/indi-$1"
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DCMAKE_BUILD_TYPE=None
+
+ cmake --build build
+ DESTDIR="$subpkgdir" cmake --install build
+ cd -
+}
+
+_gphoto() {
+ _build_3rdparty gphoto
+}
+
+sha512sums="
+e4fd21f01e2f801c6aa381fd6d9b0c3b8db4c4fa188029c144edfb2a99661a5a70b8331e742d1534f69aad3690a7f4558196872e95ea91e9a268ff90059d2687 indi-3rdparty-2.0.7.tar.gz
+"
diff --git a/testing/initify/APKBUILD b/testing/initify/APKBUILD
index 822e977d4e2..bfe2474855b 100644
--- a/testing/initify/APKBUILD
+++ b/testing/initify/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: TBK <alpine@jjtc.eu>
pkgname=initify
pkgver=0_git20171210
-pkgrel=0
+pkgrel=1
_commit="f9ccbb147924a2371a1ae5a925c1be6858cca5fa"
pkgdesc="Convert systemd services to OpenRC init-scripts."
arch="noarch"
diff --git a/testing/innernet/APKBUILD b/testing/innernet/APKBUILD
new file mode 100644
index 00000000000..8c8179eef70
--- /dev/null
+++ b/testing/innernet/APKBUILD
@@ -0,0 +1,69 @@
+# Contributor: Uli Baum <xeji@cat3.de>
+# Maintainer: Uli Baum <xeji@cat3.de>
+pkgname=innernet
+pkgver=1.6.1
+pkgrel=0
+pkgdesc="A private network system that uses WireGuard under the hood"
+url="https://github.com/tonarino/innernet"
+# s390x: nix crate fails to build
+arch="all !s390x"
+license="MIT"
+makedepends="cargo clang-dev sqlite-dev cargo-auditable"
+subpackages="
+ $pkgname-openrc
+ $pkgname-doc
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
+ "
+source="https://github.com/tonarino/innernet/archive/v$pkgver/innernet-$pkgver.tar.gz
+ $pkgname.initd
+ $pkgname.confd
+ $pkgname-server.initd
+ $pkgname-server.confd
+
+ unbundle-sqlite.patch
+ "
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+check() {
+ cargo test --release --frozen
+}
+
+package() {
+ install -Dm 755 -t "$pkgdir"/usr/sbin/ \
+ target/release/innernet target/release/innernet-server
+
+ install -Dm 755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
+ install -Dm 644 "$srcdir"/$pkgname.confd "$pkgdir"/etc/conf.d/$pkgname
+ install -Dm 755 "$srcdir"/$pkgname-server.initd "$pkgdir"/etc/init.d/$pkgname-server
+ install -Dm 644 "$srcdir"/$pkgname-server.confd "$pkgdir"/etc/conf.d/$pkgname-server
+
+ local binary; for binary in innernet innernet-server; do
+ install -Dm 644 doc/$binary.completions.bash "$pkgdir"/usr/share/bash-completion/completions/$binary
+ install -Dm 644 doc/$binary.completions.fish "$pkgdir"/usr/share/fish/vendor_completions.d/$binary.fish
+ install -Dm 644 doc/$binary.completions.zsh "$pkgdir"/usr/share/zsh/site-functions/_$binary
+ install -Dm 644 doc/$binary.8.gz -t "$pkgdir"/usr/share/man/man8
+ done
+
+ install -Dm 644 LICENSE -t "$pkgdir"/usr/share/licenses/$pkgname/
+ install -Dm 644 README.md -t "$pkgdir"/usr/share/doc/$pkgname/
+}
+
+sha512sums="
+f8d3bb1e269105ade2c9d4f1b778e13e903ef7c01921b5ab5ce1156f568935b9c032909a72e3f67cf46b67fc32101da26225847bde50d07d1b7d111fb8e000ad innernet-1.6.1.tar.gz
+695a58dd6440ad521c6fbc6f9ca2c9277639d9beed081a74d4afece2446c0c9134845371918e7f0dbd9a7d1c28116abfef88f4ab51ef3abad95e64f29c9ab3b8 innernet.initd
+e7ae351d75ad099f1694037994fcc4900c87ab91da585181912303b4a76eb802fd253157ce93c10a093d37272f75699a4e944d65187d020f93cd2bb33f4d7ec2 innernet.confd
+1d1ada2d24215d22f230d551634fe9fa464ce24430bfea3ea46b95b716e56f213d78b7ee55dac3808d4a31f271ee8f59a8076d7ea43c1feccb6f4581904667a6 innernet-server.initd
+3c3b5c9fc5a72a288eff9dcf58fe535a40b99c419b5f25938ca689049caac9f93ba1d664d51f0dde8ee7e4578fc6eff68741f7ab6b540d471c26bf0cfd064a90 innernet-server.confd
+e83ef3a3920f7598ffccb7f98ef083eb0f08b1c8ebd748cbe2287988d880321dadd0a94883e48915d68e35f1b57606d6bf90e9e56aa20c30419ec2dafce86377 unbundle-sqlite.patch
+"
diff --git a/testing/innernet/innernet-server.confd b/testing/innernet/innernet-server.confd
new file mode 100644
index 00000000000..3d660664793
--- /dev/null
+++ b/testing/innernet/innernet-server.confd
@@ -0,0 +1,4 @@
+# Configuration for /etc/init.d/innernet-server
+
+# extra arguments for command, see innernet-server(8)
+#command_extra_args=""
diff --git a/testing/innernet/innernet-server.initd b/testing/innernet/innernet-server.initd
new file mode 100644
index 00000000000..acf6f3b25b2
--- /dev/null
+++ b/testing/innernet/innernet-server.initd
@@ -0,0 +1,19 @@
+#!/sbin/openrc-run
+description="innernet VPN coordination server"
+
+# To manage the wireguard interface named "ifname", link this file
+# to /etc/init.d/innernet-server.ifname and start that service
+interface="${RC_SVCNAME##*.}"
+
+command="/usr/sbin/innernet-server"
+command_args="serve $interface $command_extra_args"
+command_background=true
+pidfile="/run/${RC_SVCNAME}.pid"
+
+stop_post() {
+ /usr/sbin/innernet down $interface
+}
+
+depend() {
+ use net
+}
diff --git a/testing/innernet/innernet.confd b/testing/innernet/innernet.confd
new file mode 100644
index 00000000000..e2313e5b67f
--- /dev/null
+++ b/testing/innernet/innernet.confd
@@ -0,0 +1,4 @@
+# Configuration for /etc/init.d/innernet
+
+# extra arguments for command, see innernet(8)
+#command_extra_args="--interval 60"
diff --git a/testing/innernet/innernet.initd b/testing/innernet/innernet.initd
new file mode 100644
index 00000000000..f3316f22c11
--- /dev/null
+++ b/testing/innernet/innernet.initd
@@ -0,0 +1,19 @@
+#!/sbin/openrc-run
+description="innernet VPN client service"
+
+# To manage the wireguard interface named "ifname", link this file
+# to /etc/init.d/innernet.ifname and start that service
+interface="${RC_SVCNAME##*.}"
+
+command="/usr/sbin/innernet"
+command_args="up $interface --daemon ${command_extra_args:---interval 60}"
+command_background=true
+pidfile="/run/${RC_SVCNAME}.pid"
+
+stop_post() {
+ $command down $interface
+}
+
+depend() {
+ use net
+}
diff --git a/testing/innernet/unbundle-sqlite.patch b/testing/innernet/unbundle-sqlite.patch
new file mode 100644
index 00000000000..c6eb830170b
--- /dev/null
+++ b/testing/innernet/unbundle-sqlite.patch
@@ -0,0 +1,25 @@
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -620,11 +620,10 @@
+ name = "libsqlite3-sys"
+ version = "0.26.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "afc22eff61b133b115c6e8c74e818c628d6d5e7a502afea6f64dee076dd94326"
+ dependencies = [
+- "cc",
+ "pkg-config",
+ "vcpkg",
+ ]
+
+ [[package]]
+--- a/server/Cargo.toml
++++ b/server/Cargo.toml
+@@ -56,7 +56,7 @@
+
+ # Workaround for https://github.com/rusqlite/rusqlite/issues/914
+ [target.'cfg(target_env = "musl")'.dependencies]
+-rusqlite = { version = "0.29", features = ["bundled"] }
++rusqlite = { version = "0.29" }
+
+ [dev-dependencies]
+ anyhow = "1"
diff --git a/testing/inspircd/APKBUILD b/testing/inspircd/APKBUILD
deleted file mode 100755
index 37128da0d0f..00000000000
--- a/testing/inspircd/APKBUILD
+++ /dev/null
@@ -1,54 +0,0 @@
-# Contributor: Alex Yam <alex@alexyam.com>
-# Maintainer: Alex Yam <alex@alexyam.com>
-pkgname=inspircd
-pkgver=3.13.0
-pkgrel=1
-pkgdesc="internet relay chat daemon (ircd)"
-url="https://www.inspircd.org/"
-pkgusers="inspircd"
-pkggroups="inspircd"
-arch="all"
-license="GPL-2.0-or-later"
-makedepends="
- argon2-dev
- gnutls-dev
- libpq-dev
- mariadb-dev
- openldap-dev
- pcre-dev
- perl
- re2-dev
- sqlite-dev
- "
-subpackages="$pkgname-doc"
-options="!check" # no test suite
-source="$pkgname-$pkgver.tar.gz::https://github.com/inspircd/inspircd/archive/v$pkgver.tar.gz"
-
-# secfixes:
-# 3.10.0-r0:
-# - CVE-2021-33586
-
-build() {
- ./configure \
- --enable-extras "argon2 ldap mysql pgsql regex_pcre regex_posix regex_re2 regex_stdlib sqlite3 ssl_gnutls sslrehashsignal"
- ./configure \
- --binary-dir /usr/bin \
- --data-dir /var/lib/inspircd/data \
- --example-dir /usr/share/inspircd/examples \
- --module-dir /usr/lib/inspircd/modules \
- --script-dir /usr/lib/inspircd/scripts \
- --disable-auto-extras \
- --distribution-label alpine$pkgrel \
- --gid inspircd \
- --uid inspircd \
- --system
- INSPIRCD_DISABLE_RPATH=1 make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-1466e6b4259ea0f1e62342133a6720839e01eea24f67398ab47f9d5d63703cb934b867c705f07c8e0d3a0fa25c20f9b20ce3f5dbc7bbe7c4f2d5d02b7a170cca inspircd-3.13.0.tar.gz
-"
diff --git a/testing/intel-compute-runtime/APKBUILD b/testing/intel-compute-runtime/APKBUILD
deleted file mode 100644
index f84550ffc76..00000000000
--- a/testing/intel-compute-runtime/APKBUILD
+++ /dev/null
@@ -1,43 +0,0 @@
-# Contributor: Dennis Krupenik <dennis@krupenik.com>
-# Maintainer: Dennis Krupenik <dennis@krupenik.com>
-pkgname=intel-compute-runtime
-pkgver=21.09.19150
-pkgrel=0
-pkgdesc="Intel® Graphics Compute Runtime for oneAPI Level Zero and OpenCL™ Driver"
-url="https://github.com/intel/compute-runtime"
-arch="x86_64"
-license="MIT"
-depends_dev="intel-gmmlib-dev intel-graphics-compiler-dev libexecinfo-dev libva-dev"
-makedepends="$depends_dev cmake"
-subpackages="$pkgname-dev"
-source="https://github.com/intel/compute-runtime/archive/$pkgver/compute-runtime-$pkgver.tar.gz
- link-execinfo.patch
- pthread-yield.patch
- remove-rtld-deepbind.patch
- remove-select.patch"
-builddir="$srcdir/compute-runtime-$pkgver"
-options="!check" # runs unit tests in preinstall
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build \
- -DCMAKE_BUILD_TYPE=None \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- -DSKIP_UNIT_TESTS=1 \
- $CMAKE_CROSSOPTS .
- nice make -C build -j"$(nproc)"
-}
-
-package() {
- make -C build DESTDIR="$pkgdir" install
-}
-
-sha512sums="e512e577a835dfe384b6187e687cadf663f7a4f5d720ed8df36c20e735083b99c5467f9ee2f0ceb12db6b4b0522e761f2dbeee2832ce7ccc03f5a520f72d790e compute-runtime-21.09.19150.tar.gz
-5cf4bb4114ffc9940e20f3d3f21edb5b1e6f9157b38c4232cb16ff7fb52e36eedb26b008ed5801c257233375315a950e4e6e47756be01ca9787a1b6f42fbe369 link-execinfo.patch
-855284aad45809046266e0def176f16f28dcd08154d39ffd2e34c92127f52da0f24a5679ec1d5005369f878a9947e69c21fd34cda31b636d04d055956b3cf06b pthread-yield.patch
-5b63d5a480fa72353cf6229d77391163631cdb00e1ce444d75d3681128468726df9f74eb3b44eebd47d62fb2779a61d12d983ebe38902d063a7e54ea3347a52a remove-rtld-deepbind.patch
-8ee0f776f06858cedaed0194618030eb7d0e27e27b7488daf975e3f6eb6df378461b93a300ecd68366ded2ec28d7c53ee35711e2c9cbe2c8634423bb03e9cf57 remove-select.patch"
diff --git a/testing/intel-compute-runtime/link-execinfo.patch b/testing/intel-compute-runtime/link-execinfo.patch
deleted file mode 100644
index b2ee2bc27d6..00000000000
--- a/testing/intel-compute-runtime/link-execinfo.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-add execinfo library
----
---- a/opencl/test/unit_test/offline_compiler/CMakeLists.txt
-+++ b/opencl/test/unit_test/offline_compiler/CMakeLists.txt
-@@ -87,7 +87,7 @@
- )
- target_compile_definitions(ocloc_tests PUBLIC MOCKABLE_VIRTUAL=virtual $<TARGET_PROPERTY:ocloc_lib,INTERFACE_COMPILE_DEFINITIONS>)
-
--target_link_libraries(ocloc_tests gmock-gtest)
-+target_link_libraries(ocloc_tests gmock-gtest execinfo)
-
- if(WIN32)
- target_link_libraries(ocloc_tests dbghelp)
-
---- a/opencl/test/unit_test/offline_compiler/segfault_test/CMakeLists.txt
-+++ b/opencl/test/unit_test/offline_compiler/segfault_test/CMakeLists.txt
-@@ -38,7 +38,7 @@
- target_link_libraries(ocloc_segfault_test dbghelp)
- endif()
- if(UNIX)
-- target_link_libraries(ocloc_segfault_test dl pthread)
-+ target_link_libraries(ocloc_segfault_test dl pthread execinfo)
- endif()
-
- set(CLOC_SEGFAULT_TEST_INCLUDES
-
---- a/shared/offline_compiler/source/CMakeLists.txt
-+++ b/shared/offline_compiler/source/CMakeLists.txt
-@@ -139,7 +139,7 @@
- endif()
-
- if(UNIX)
-- target_link_libraries(${OCLOC_NAME}_lib dl pthread)
-+ target_link_libraries(${OCLOC_NAME}_lib dl pthread execinfo)
- endif()
-
- set(CLOC_LIB_SRCS_LIB ${CLOC_LIB_SRCS_LIB} PARENT_SCOPE)
-
---- a/opencl/source/CMakeLists.txt
-+++ b/opencl/source/CMakeLists.txt
-@@ -81,7 +81,7 @@
- )
- target_compile_definitions(${NEO_STATIC_LIB_NAME} PRIVATE OGL=1)
- else()
-- set(IGDRCL_EXTRA_LIBS dl pthread)
-+ set(IGDRCL_EXTRA_LIBS dl pthread execinfo igc)
- target_include_directories(${NEO_STATIC_LIB_NAME} PUBLIC
- ${NEO_SHARED_DIRECTORY}/os_interface/linux
- ${NEO_SOURCE_DIR}/opencl/source/os_interface/linux
-
diff --git a/testing/intel-compute-runtime/pthread-yield.patch b/testing/intel-compute-runtime/pthread-yield.patch
deleted file mode 100644
index 8ca6a482e10..00000000000
--- a/testing/intel-compute-runtime/pthread-yield.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-pthread_yield -> sched_yield
----
---- a/opencl/test/unit_test/os_interface/linux/drm_gem_close_worker_tests.cpp
-+++ b/opencl/test/unit_test/os_interface/linux/drm_gem_close_worker_tests.cpp
-@@ -121,7 +121,7 @@
-
- //wait for worker to complete or deadCnt drops
- while (!worker->isEmpty() && (deadCnt-- > 0))
-- pthread_yield(); //yield to another threads
-+ sched_yield(); //yield to another threads
-
- worker->close(false);
-
-@@ -142,7 +142,7 @@
-
- //wait for worker to complete or deadCnt drops
- while (!worker->isEmpty() && (deadCnt-- > 0))
-- pthread_yield(); //yield to another threads
-+ sched_yield(); //yield to another threads
-
- //and check if GEM was closed
- EXPECT_EQ(1, this->drmMock->gem_close_cnt.load());
diff --git a/testing/intel-compute-runtime/remove-rtld-deepbind.patch b/testing/intel-compute-runtime/remove-rtld-deepbind.patch
deleted file mode 100644
index d2e1fbbd180..00000000000
--- a/testing/intel-compute-runtime/remove-rtld-deepbind.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-RTLD_DEEPBIND is a glibc thing
----
---- a/shared/source/os_interface/linux/os_library_linux.cpp
-+++ b/shared/source/os_interface/linux/os_library_linux.cpp
-@@ -29,13 +29,7 @@
- if (name.empty()) {
- this->handle = dlopen(0, RTLD_LAZY);
- } else {
--#ifdef SANITIZER_BUILD
-- constexpr auto dlopenFlag = RTLD_LAZY;
--#else
-- constexpr auto dlopenFlag = RTLD_LAZY | RTLD_DEEPBIND;
-- /* Background: https://github.com/intel/compute-runtime/issues/122 */
--#endif
-- this->handle = dlopen(name.c_str(), dlopenFlag);
-+ this->handle = dlopen(name.c_str(), RTLD_LAZY | RTLD_GLOBAL);
- }
- }
-
diff --git a/testing/intel-compute-runtime/remove-select.patch b/testing/intel-compute-runtime/remove-select.patch
deleted file mode 100644
index fddb761bd41..00000000000
--- a/testing/intel-compute-runtime/remove-select.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-do not redefine `select`
----
---- a/opencl/source/builtin_kernels_simulation/opencl_c.h
-+++ b/opencl/source/builtin_kernels_simulation/opencl_c.h
-@@ -220,8 +220,6 @@
- ( \
- (type)var)
-
--#define select(a, b, c) (c ? b : a)
--
- uint get_local_id(int dim);
- uint get_global_id(int dim);
- uint get_local_size(int dim);
-
diff --git a/testing/intel-graphics-compiler/APKBUILD b/testing/intel-graphics-compiler/APKBUILD
deleted file mode 100644
index 3da42be3129..00000000000
--- a/testing/intel-graphics-compiler/APKBUILD
+++ /dev/null
@@ -1,52 +0,0 @@
-# Contributor: Dennis Krupenik <dennis@krupenik.com>
-# Maintainer: Dennis Krupenik <dennis@krupenik.com>
-pkgname=intel-graphics-compiler
-pkgver=1.0.8744
-pkgrel=0
-pkgdesc="Intel® Graphics Compiler for OpenCL™"
-url="https://github.com/intel/intel-graphics-compiler"
-arch="x86_64"
-license="MIT"
-_llvm_ver="11.1.0"
-depends_dev="opencl-clang-dev lld-dev~$_llvm_ver"
-makedepends="$depends_dev bison cmake flex linux-headers lld-static~$_llvm_ver llvm-static~$_llvm_ver python3"
-subpackages="$pkgname-dev"
-source="https://github.com/intel/intel-graphics-compiler/archive/igc-$pkgver.tar.gz
- https://github.com/intel/vc-intrinsics/archive/9aafb518a05be160beffd7812a0f169c10786d04.zip
- xsi_strerror_r.patch
- remove-rtld-deepbind.patch
- "
-builddir="$srcdir/$pkgname-igc-$pkgver"
-options="!check" # no test suite upstream
-
-prepare() {
- default_prepare
- mv ../vc-intrinsics-* ../vc-intrinsics
-}
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build \
- -DCMAKE_BUILD_TYPE=None \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DIGC_OPTION__FORCE_SYSTEM_LLVM=1 \
- -DIGC_PREFERRED_LLVM_VERSION=$_llvm_ver \
- -DINSTALL_SPIRVDLL=0 \
- -Wno-dev \
- $CMAKE_CROSSOPTS .
- nice make -C build
-}
-
-package() {
- make -C build DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-dbbe6c08f32b80be305add570187df883aacefbf90b252c70b5705ecc7732f25873732a85558f0aed2ee8db5bcd1a59aec4d7ba110774922dbb19d4d3522a539 igc-1.0.8744.tar.gz
-19b9c2926ab1c76f8ccc0bd406f1302df9250ce57dec9f5610adba15a5a1e736da6aaa51328df0c2a012db0c1b66ef9f4ee3a19ab9f54b0ecc9dfbef0d5d97ec 9aafb518a05be160beffd7812a0f169c10786d04.zip
-6b1578b028140bd82c888c96e8b1d3d33b924b85657780c6214e24145d42c6965127b5faaea7a25bb0c919484ece9b9f40e714dab362ad5cf0cc064947aec694 xsi_strerror_r.patch
-28c6ce539b81b5c9bf5dbe0d6ee7da31de144da4f320473bf9a190d6ba2e672001f15553248afa194414310ea5cefdf68c344bee74accdcc38ee96accf99822e remove-rtld-deepbind.patch
-"
diff --git a/testing/intel-graphics-compiler/remove-rtld-deepbind.patch b/testing/intel-graphics-compiler/remove-rtld-deepbind.patch
deleted file mode 100644
index 475f0a074ff..00000000000
--- a/testing/intel-graphics-compiler/remove-rtld-deepbind.patch
+++ /dev/null
@@ -1,12 +0,0 @@
---- intel-graphics-compiler-igc-1.0.8744/IGC/VectorCompiler/lib/Driver/SPIRVWrapper.cpp 2021-09-16 11:50:38.000000000 +0300
-+++ intel-graphics-compiler-igc-1.0.8744/IGC/VectorCompiler/lib/Driver/SPIRVWrapper.cpp 2021-10-03 15:30:08.879638251 +0300
-@@ -157,8 +157,7 @@
- const std::string SpirvLibPath = findSpirvDLL();
- #if defined(__linux__)
- // Hack to workaround cmoc crashes during loading of SPIRV library
-- static auto DeepBindHack =
-- dlopen(SpirvLibPath.c_str(), RTLD_NOW | RTLD_DEEPBIND);
-+ static auto DeepBindHack = dlopen(SpirvLibPath.c_str(), RTLD_NOW);
- #endif // __linux__
-
- std::string ErrMsg;
diff --git a/testing/intel-graphics-compiler/xsi_strerror_r.patch b/testing/intel-graphics-compiler/xsi_strerror_r.patch
deleted file mode 100644
index 6b32764e5b5..00000000000
--- a/testing/intel-graphics-compiler/xsi_strerror_r.patch
+++ /dev/null
@@ -1,25 +0,0 @@
---- intel-graphics-compiler-igc-1.0.8744/visa/iga/IGALibrary/system.cpp 2021-09-16 11:50:38.000000000 +0300
-+++ intel-graphics-compiler-igc-1.0.8744/visa/iga/IGALibrary/system.cpp 2021-10-03 14:59:08.779865094 +0300
-@@ -246,9 +246,8 @@
- {
- std::string msg;
- char buf[256] {0};
-- char *errMsg = nullptr;
-+ char *errMsg = &buf[0];
- #ifdef _WIN32
-- errMsg = &buf[0];
- FormatMessageA(
- FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM,
- NULL,
-@@ -260,9 +259,9 @@
- if (errMsg)
- msg = errMsg;
- #else
-- errMsg = strerror_r(errCode, buf, sizeof(buf));
-+ strerror_r(errCode, buf, sizeof(buf));
- #endif // _WIN32
-- if (errMsg == nullptr || errMsg[0] == 0)
-+ if (errMsg[0] == 0)
- return "???";
- return std::string(errMsg);
- }
diff --git a/testing/interception-tools/APKBUILD b/testing/interception-tools/APKBUILD
new file mode 100644
index 00000000000..4ede7550cc9
--- /dev/null
+++ b/testing/interception-tools/APKBUILD
@@ -0,0 +1,50 @@
+# Contributor: Evan Johnston <evan@d2evs.net>
+# Maintainer: Evan Johnston <evan@d2evs.net>
+pkgname=interception-tools
+pkgver=0.6.8
+pkgrel=1
+pkgdesc="Minimal composable infrastructure on top of libudev and libevdev"
+url="https://gitlab.com/interception/linux/tools"
+arch="all"
+license="GPL-3.0-only"
+makedepends="
+ boost-dev
+ cmake
+ eudev-dev
+ libevdev-dev
+ samurai
+ yaml-cpp-dev
+ "
+subpackages="$pkgname-openrc"
+source="https://gitlab.com/interception/linux/tools/-/archive/v$pkgver/tools-v$pkgver.tar.gz
+ udevmon.initd
+ modules-load.conf
+ "
+builddir="$srcdir/tools-v$pkgver"
+options="!check" # no tests
+
+build() {
+ if [ "$CBUILD" != "$CHOST" ]; then
+ local crossopts="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ CFLAGS="$CFLAGS -flto=auto" \
+ CXXFLAGS="$CXXFLAGS -flto=auto" \
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=None \
+ $crossopts
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+ install -Dm755 "$srcdir"/udevmon.initd \
+ "$pkgdir"/etc/init.d/udevmon
+ install -Dm755 "$srcdir"/modules-load.conf \
+ "$pkgdir"/usr/lib/modules-load.d/$pkgname.conf
+}
+sha512sums="
+1d156641e3457624fc24e813eecd376f16b5537b56ad9ab3df36d94a3658d905d09ec2481bc0cf29e5ef1141c363f34c691295c2a70c982648713365d17fb1be tools-v0.6.8.tar.gz
+727fe6fa86b9e862a14c03a0bec3cb361147e55cd327cb98ec75d0ab67c040f895d00153015beac1259df4557549c2efef0a4251eb8d153fd07c0df90f181d61 udevmon.initd
+a9b069ed121ffeee887e0583d8cb46035ecf1fa90a26a4ecb3aa11ff03178b2b08621f6676db6b2350f290694c04aabcf36f2ce3e0813a76dde9a33555edb112 modules-load.conf
+"
diff --git a/testing/interception-tools/modules-load.conf b/testing/interception-tools/modules-load.conf
new file mode 100644
index 00000000000..42bc0053c78
--- /dev/null
+++ b/testing/interception-tools/modules-load.conf
@@ -0,0 +1 @@
+uinput
diff --git a/testing/interception-tools/udevmon.initd b/testing/interception-tools/udevmon.initd
new file mode 100644
index 00000000000..312a9395037
--- /dev/null
+++ b/testing/interception-tools/udevmon.initd
@@ -0,0 +1,11 @@
+#!/sbin/openrc-run
+
+command=/usr/bin/udevmon
+command_args="-c /etc/interception/udevmon.yaml"
+pidfile=/run/udevmon.pid
+command_background=true
+
+depend() {
+ want dev-settle
+ after dev-settle
+}
diff --git a/testing/intiface-central/APKBUILD b/testing/intiface-central/APKBUILD
new file mode 100644
index 00000000000..c2bac14c82e
--- /dev/null
+++ b/testing/intiface-central/APKBUILD
@@ -0,0 +1,85 @@
+# Contributor: lauren n. liberda <lauren@selfisekai.rocks>
+# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
+pkgname=intiface-central
+pkgver=2.5.6
+pkgrel=0
+pkgdesc="Frontend application for the Buttplug Sex Toy Control Library"
+url="https://intiface.com/central/"
+arch="aarch64 x86_64" # flutter
+license="GPL-3.0-only"
+makedepends="
+ cargo
+ corrosion
+ dbus-dev
+ eudev-dev
+ flutter-desktop
+ openssl-dev
+ patchelf
+ "
+options="net !check" # no tests
+source="
+ https://github.com/intiface/intiface-central/archive/refs/tags/v$pkgver/intiface-central-$pkgver.tar.gz
+
+ system-corrosion.patch
+ system-flutter.patch
+ pmos-fit-screen.patch
+ no-werror.patch
+
+ intiface-central
+ intiface-central.desktop
+ "
+
+case "$CARCH" in
+ x86_64) _flutter_arch="x64" ;;
+ aarch64) _flutter_arch="arm64" ;;
+esac
+
+prepare() {
+ default_prepare
+
+ flutter pub get --enforce-lockfile
+
+ (
+ cd intiface-engine-flutter-bridge
+
+ cargo fetch --target="$CTARGET" --locked
+ )
+}
+
+build() {
+ flutter build linux --release
+
+ for _elf in build/linux/$_flutter_arch/release/bundle/lib/lib*.so; do
+ # running patchelf on libapp (the AOT snapshot of the whole Dart codebase)
+ # breaks it with "[FATAL:flutter/runtime/dart_vm_initializer.cc(89)]
+ # Error while initializing the Dart VM: Invalid vm isolate snapshot seen".
+ #
+ # it has no rpath and only links to libc soname anyway. 🤷â€â™€ï¸
+ [ "$(basename "$_elf")" != "libapp.so" ] || continue
+
+ patchelf --set-rpath '$ORIGIN' "$_elf"
+ done
+}
+
+package() {
+ local bundle="$builddir"/build/linux/$_flutter_arch/release/bundle
+
+ install -Dm755 "$bundle"/${pkgname/-/_} "$pkgdir"/usr/lib/$pkgname/${pkgname/-/_}
+ cp -r "$bundle"/lib "$pkgdir"/usr/lib/$pkgname/lib
+ cp -r "$bundle"/data "$pkgdir"/usr/lib/$pkgname/data
+
+ install -Dm755 "$srcdir"/$pkgname "$pkgdir"/usr/bin/$pkgname
+
+ install -Dm644 "$srcdir"/$pkgname.desktop "$pkgdir"/usr/share/applications/$pkgname.desktop
+ install -Dm644 assets/icons/intiface_central_icon.png "$pkgdir"/usr/share/icons/hicolor/512x512/apps/$pkgname.png
+}
+
+sha512sums="
+b34be496b653bea69ec421ee7af23670da0a43fbea3c069009da23cb770c658831984ce25ed7e86b6fc572a768e87eb4fad5151667c795d0ef372b874a4b665a intiface-central-2.5.6.tar.gz
+ecad3c5cee9c53fc88b539d3088907539aff0b28980a89d4be2acb3c329a7a2154cb12743c0786e5c4a33de78af06b61b5b35f8eee633989cc943dc14e87dba6 system-corrosion.patch
+91014708ab7bb81518ce93db0612209d6479dfa503064d9e9d3186cd5e861165a3f63e286d271d5aac8a1d676868fc3acf51648ac01c16a215062a317ccb6623 system-flutter.patch
+a090ec306117675c555683a836a5368b7165423509439c5d4a75ffcf9a125ab5d7a2598f2c2253f044fc77785276f696b495aece74d4ab8eea9126404966e061 pmos-fit-screen.patch
+1d2b7d28a09e26ed48d89aa5f5dffb738ba367fa2760b12980225239705e16fa1ec89901d7aecf26c8527de721a5f50f50cc77ea009cd5f25f219d1af8730ed8 no-werror.patch
+a69d49b59ebd0dbeeace74954d72cd97c38aa79597887648f0c8f5ec4ecb191a1b47c43d3007e7c826323800a601951e621ee60ed739f17f67fca2f8855d95b0 intiface-central
+4015b388f997eb3abc2ecd69947bb703926e01de82807a940a42902f46e90d6759f609921215ba865cb6c91f5c6d404115c16a0a7ebe4bcc35315a4910adc081 intiface-central.desktop
+"
diff --git a/testing/intiface-central/intiface-central b/testing/intiface-central/intiface-central
new file mode 100644
index 00000000000..38da4ad2216
--- /dev/null
+++ b/testing/intiface-central/intiface-central
@@ -0,0 +1,7 @@
+#!/bin/sh
+
+# fixes "Error loading shared library lib/libintiface_engine_flutter_bridge.so:
+# No such file or directory"
+cd /usr/lib/intiface-central
+
+exec /usr/lib/intiface-central/intiface_central
diff --git a/testing/intiface-central/intiface-central.desktop b/testing/intiface-central/intiface-central.desktop
new file mode 100644
index 00000000000..f3328be2789
--- /dev/null
+++ b/testing/intiface-central/intiface-central.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Type=Application
+Name=Intiface Central
+Icon=intiface-central
+Exec=intiface-central %U
+Categories=Utility;Robotics;
+Keywords=Buttplug;Teledildonics;
+X-Purism-FormFactor=Workstation;Mobile;
diff --git a/testing/intiface-central/no-werror.patch b/testing/intiface-central/no-werror.patch
new file mode 100644
index 00000000000..ec8df348612
--- /dev/null
+++ b/testing/intiface-central/no-werror.patch
@@ -0,0 +1,11 @@
+--- ./linux/CMakeLists.txt.orig
++++ ./linux/CMakeLists.txt
+@@ -41,7 +41,7 @@
+ # of modifying this function.
+ function(APPLY_STANDARD_SETTINGS TARGET)
+ target_compile_features(${TARGET} PUBLIC cxx_std_14)
+- target_compile_options(${TARGET} PRIVATE -Wall -Werror)
++ target_compile_options(${TARGET} PRIVATE -Wall)
+ target_compile_options(${TARGET} PRIVATE "$<$<NOT:$<CONFIG:Debug>>:-O3>")
+ target_compile_definitions(${TARGET} PRIVATE "$<$<NOT:$<CONFIG:Debug>>:NDEBUG>")
+ endfunction()
diff --git a/testing/intiface-central/pmos-fit-screen.patch b/testing/intiface-central/pmos-fit-screen.patch
new file mode 100644
index 00000000000..b0cd7b31d58
--- /dev/null
+++ b/testing/intiface-central/pmos-fit-screen.patch
@@ -0,0 +1,105 @@
+From 369131e50242091de00163d0b1fc16de33336928 Mon Sep 17 00:00:00 2001
+From: "lauren n. liberda" <lauren@selfisekai.rocks>
+Date: Tue, 30 May 2023 03:06:58 +0200
+Subject: [PATCH 1/2] fix window/layout on pmos
+
+---
+ .../intiface_configuration_cubit.dart | 19 ++++++++++++++---
+ lib/intiface_central_app.dart | 21 +++++++++++--------
+ lib/util/intiface_util.dart | 8 +++++++
+ 3 files changed, 36 insertions(+), 12 deletions(-)
+
+diff --git a/lib/bloc/configuration/intiface_configuration_cubit.dart b/lib/bloc/configuration/intiface_configuration_cubit.dart
+index 6d761bf..0f23aa4 100644
+--- a/lib/bloc/configuration/intiface_configuration_cubit.dart
++++ b/lib/bloc/configuration/intiface_configuration_cubit.dart
+@@ -83,6 +83,11 @@
+ WebsocketServerPortState(this.value);
+ }
+
++class Pmos extends IntifaceConfigurationState {
++ final bool value;
++ Pmos(this.value);
++}
++
+ class UseCompactDisplayState extends IntifaceConfigurationState {
+ final bool value;
+ UseCompactDisplayState(this.value);
+@@ -186,9 +191,11 @@
+ // Our initializer runs through all of our known configuration values, either setting them to what they already are,
+ // or providing them with default values.
+
+- // Window settings for desktop. Will be ignored on mobile. Default to expanded.
+- useCompactDisplay = _prefs.getBool("useCompactDisplay") ?? false;
++ pmos = await isPostmarket();
+
++ // Window settings for desktop. Will be ignored on mobile. Default to expanded except pmos.
++ useCompactDisplay = _prefs.getBool("useCompactDisplay") ?? pmos;
++
+ // Crash reporting setting is now CrashReporting2, because it was originally slammed to true but never actually
+ // used anywhere. With the addition of Sentry, it's now defaulted to off so we're not sending data without the
+ // user's approval.
+@@ -207,7 +214,7 @@
+ showExtendedUI = _prefs.getBool("showExtendedUI") ?? false;
+ allowRawMessages = _prefs.getBool("allowRawMessages") ?? false;
+ unreadNews = _prefs.getBool("unreadNews") ?? false;
+- useSideNavigationBar = _prefs.getBool("useSideNavigationBar") ?? isDesktop();
++ useSideNavigationBar = _prefs.getBool("useSideNavigationBar") ?? isDesktop() && !pmos;
+ useLightTheme = _prefs.getBool("useLightTheme") ?? true;
+ restoreWindowLocation = _prefs.getBool("restoreWindowLocation") ?? true;
+
+@@ -264,6 +271,12 @@
+ set currentDeviceConfigEtag(String value) {
+ _prefs.setString("currentDeviceConfigEtag", value);
+ emit(CurrentDeviceConfigEtagState(value));
++ }
++
++ bool get pmos => _prefs.getBool("pmos")!;
++ set pmos(bool value) {
++ _prefs.setBool("pmos", value);
++ emit(Pmos(value));
+ }
+
+ // Slam to false until we figure out how to window resizing.
+diff --git a/lib/intiface_central_app.dart b/lib/intiface_central_app.dart
+index 1fac674..d547773 100644
+--- a/lib/intiface_central_app.dart
++++ b/lib/intiface_central_app.dart
+@@ -153,6 +153,7 @@
+ logInfo("Window location not restored due to configuration settings");
+ }
+
++ if (configCubit.pmos) {
+ windowDisplayModeResize(configCubit.useCompactDisplay, guiSettingsCubit);
+ await windowManager.waitUntilReadyToShow(windowOptions, () async {
+ await windowManager.show();
+@@ -165,6 +166,7 @@
+ }
+ windowDisplayModeResize(event.value, guiSettingsCubit);
+ });
++ }
+
+ // Only add app update checks on desktop, mobile apps will use stores.
+ updateRepo.addProvider(IntifaceCentralDesktopUpdater());
+diff --git a/lib/util/intiface_util.dart b/lib/util/intiface_util.dart
+index 2f2ccb6..fb3031e 100644
+--- a/lib/util/intiface_util.dart
++++ b/lib/util/intiface_util.dart
+@@ -1,3 +1,4 @@
++import 'package:device_info_plus/device_info_plus.dart';
+ import 'package:path_provider/path_provider.dart';
+ import 'package:path/path.dart' as p;
+ import 'dart:io';
+@@ -82,3 +83,10 @@
+ bool isDesktop() => Platform.isLinux || Platform.isMacOS || Platform.isWindows;
+ bool isMobile() => Platform.isAndroid || Platform.isIOS;
+ bool canShowUpdate() => !(const bool.fromEnvironment('NO_VISIBLE_UPDATES'));
++Future<bool> isPostmarket() async {
++ if (!Platform.isLinux) return false;
++
++ DeviceInfoPlugin deviceInfo = DeviceInfoPlugin();
++ LinuxDeviceInfo linuxInfo = await deviceInfo.linuxInfo;
++ return linuxInfo.id == "postmarketos";
++}
+--
+2.40.1
diff --git a/testing/intiface-central/system-corrosion.patch b/testing/intiface-central/system-corrosion.patch
new file mode 100644
index 00000000000..466dee97933
--- /dev/null
+++ b/testing/intiface-central/system-corrosion.patch
@@ -0,0 +1,24 @@
+--- ./linux/rust.cmake.orig
++++ ./linux/rust.cmake
+@@ -2,19 +2,9 @@
+ # many dependencies we would need to install Corrosion on the system.
+ # See instructions on https://github.com/AndrewGaspar/corrosion#cmake-install
+ # Once done, uncomment this line:
+-# find_package(Corrosion REQUIRED)
++find_package(Corrosion REQUIRED)
+
+-include(FetchContent)
+-
+-FetchContent_Declare(
+- Corrosion
+- GIT_REPOSITORY https://github.com/AndrewGaspar/corrosion.git
+- GIT_TAG origin/master # Optionally specify a version tag or branch here
+-)
+-
+-FetchContent_MakeAvailable(Corrosion)
+-
+-corrosion_import_crate(MANIFEST_PATH ../intiface-engine-flutter-bridge/Cargo.toml)
++corrosion_import_crate(MANIFEST_PATH ../intiface-engine-flutter-bridge/Cargo.toml FROZEN)
+
+ # Flutter-specific
+
diff --git a/testing/intiface-central/system-flutter.patch b/testing/intiface-central/system-flutter.patch
new file mode 100644
index 00000000000..e8f7270ec9a
--- /dev/null
+++ b/testing/intiface-central/system-flutter.patch
@@ -0,0 +1,15 @@
+--- a/linux/CMakeLists.txt
++++ b/linux/CMakeLists.txt
+@@ -110,12 +110,6 @@
+ install(TARGETS ${BINARY_NAME} RUNTIME DESTINATION "${CMAKE_INSTALL_PREFIX}"
+ COMPONENT Runtime)
+
+-install(FILES "${FLUTTER_ICU_DATA_FILE}" DESTINATION "${INSTALL_BUNDLE_DATA_DIR}"
+- COMPONENT Runtime)
+-
+-install(FILES "${FLUTTER_LIBRARY}" DESTINATION "${INSTALL_BUNDLE_LIB_DIR}"
+- COMPONENT Runtime)
+-
+ foreach(bundled_library ${PLUGIN_BUNDLED_LIBRARIES})
+ install(FILES "${bundled_library}"
+ DESTINATION "${INSTALL_BUNDLE_LIB_DIR}"
diff --git a/testing/iodine/APKBUILD b/testing/iodine/APKBUILD
deleted file mode 100644
index d1ca65e598d..00000000000
--- a/testing/iodine/APKBUILD
+++ /dev/null
@@ -1,27 +0,0 @@
-# Contributor: Guy Taylor <thebigguy.co.uk@gmail.com>
-# Maintainer:
-pkgname=iodine
-pkgver=0.7.0
-pkgrel=1
-pkgdesc="IP over DNS tunnel"
-url="http://code.kryo.se/iodine/"
-arch="all"
-license="ISC"
-depends=""
-makedepends="linux-headers zlib-dev"
-subpackages="$pkgname-doc"
-source="http://code.kryo.se/iodine/$pkgname-$pkgver.tar.gz"
-builddir="$srcdir/$pkgname-$pkgver"
-
-build() {
- cd "$builddir"
- CFLAGS="$CFLAGS -D__GLIBC__=1" make
-}
-
-
-package() {
- cd "$builddir"
- make DESTDIR="$pkgdir" prefix="/usr" install
-}
-
-sha512sums="49fe4f0cf614d3400cbfdade84eb4f50430f8f92004f663a08acc1514e8ff342443a8c3f855828bbca1864a3fafe419b5256f8a80fc4024b364d4c8c953fc0ec iodine-0.7.0.tar.gz"
diff --git a/testing/iozone/APKBUILD b/testing/iozone/APKBUILD
deleted file mode 100644
index 18d5ee8d906..00000000000
--- a/testing/iozone/APKBUILD
+++ /dev/null
@@ -1,49 +0,0 @@
-# Contributor: Oleg Titov <oleg.titov@gmail.com>
-# Maintainer: Oleg Titov <oleg.titov@gmail.com>
-pkgname=iozone
-pkgver=3.493
-_pkgver=${pkgver//./_}
-pkgrel=0
-pkgdesc="IOzone filesystem benchmark."
-url="http://iozone.org"
-arch="all !riscv64"
-license="custom"
-options="!check" # No test suite from upstream
-subpackages="$pkgname-doc"
-source="http://iozone.org/src/current/iozone$_pkgver.tgz
- https://www.iozone.org/docs/Iozone_License.txt
- "
-builddir="$srcdir/${pkgname}$_pkgver/"
-
-build() {
- local target=
- case "$CARCH" in
- x86_64) target="linux-AMD64" ;;
- x86) target="linux" ;;
- aarch64) target="linux-arm" ;;
- armv7) target="linux-arm" ;;
- armhf) target="linux-arm" ;;
- s390x) target="linux-S390X" ;;
- ppc64le) target="linux-powerpc64" ;;
- *) msg "Unable to determine architecture from (CARCH=$CARCH)" ; return 1 ;;
- esac
-
- cd "$builddir"/src/current/
- make $target CFLAGS='-DHAVE_PREADV -DHAVE_PWRITEV'
-}
-
-package() {
- install -m755 -D src/current/iozone \
- "$pkgdir"/usr/bin/iozone
-
- install -Dm644 "$srcdir"/Iozone_License.txt \
- "$pkgdir"/usr/share/licenses/$pkgname/Iozone_License.txt
-
- install -Dm644 "$builddir"/docs/iozone.1 \
- "$pkgdir"/usr/share/man/man1/iozone.1
-}
-
-sha512sums="
-89e41b8344f593cdf049c195a8b78468b3a59dcca3d0932e33feed15c02b4a15e290b5fca3c28a5490cc3d40009aa8c96093bb814cfb18a99bece4b3bb9ba8c8 iozone3_493.tgz
-9589952c15cde6701f239b6031996e504fd62f70ef1e63938544ca8ecf7e38b53ff731919e48285a9354080120b74fcdd9d548ada9a719368726e67b536e6fda Iozone_License.txt
-"
diff --git a/testing/ip2location/APKBUILD b/testing/ip2location/APKBUILD
new file mode 100644
index 00000000000..c403f41d00d
--- /dev/null
+++ b/testing/ip2location/APKBUILD
@@ -0,0 +1,40 @@
+# Maintainer: IP2Location <support@ip2location.com>
+pkgname=ip2location
+pkgver=8.6.1
+pkgrel=0
+pkgdesc="Lookup country, region and city information by IP addresses"
+url="https://www.ip2location.com/development-libraries/ip2location/c"
+arch="all"
+license="MIT"
+subpackages="$pkgname-dev $pkgname-doc"
+checkdepends="perl"
+makedepends="automake autoconf libtool"
+source="$pkgname-$pkgver.tar.gz::https://github.com/chrislim2888/IP2Location-C-Library/archive/refs/tags/$pkgver.tar.gz"
+builddir="$srcdir"/IP2Location-C-Library-$pkgver
+
+prepare() {
+ default_prepare
+ autoreconf -vif
+}
+
+build() {
+ ./configure \
+ --host=$CHOST \
+ --build=$CBUILD \
+ --prefix=/usr
+ make
+}
+
+check() {
+ cd data
+ ./ip-country.pl
+ make check
+}
+
+package() {
+ make install DESTDIR="$pkgdir"
+}
+
+sha512sums="
+1c3c8198c7eadbcc8b3f274f46cd9fb56115c5ec3713bd6cf96743f9de4bd3029f2f90ed07c86c47626bbd6de2adb6d0ddf9a656f3fc5ddfc07ea9f1d43b2d06 ip2location-8.6.1.tar.gz
+"
diff --git a/testing/iprange/APKBUILD b/testing/iprange/APKBUILD
index ed47c48e96f..2a8d7608e4a 100644
--- a/testing/iprange/APKBUILD
+++ b/testing/iprange/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Jonny Tyers <jtyers@gmail.com>
pkgname=iprange
pkgver=1.0.4
-pkgrel=0
+pkgrel=1
pkgdesc="manages IP ranges (part of FireHOL)"
url="https://github.com/firehol/iprange"
arch="all"
diff --git a/testing/irccd/APKBUILD b/testing/irccd/APKBUILD
index d0f10438110..a424d8936bc 100644
--- a/testing/irccd/APKBUILD
+++ b/testing/irccd/APKBUILD
@@ -1,13 +1,13 @@
# Contributor: David Demelier <markand@malikania.fr>
# Maintainer: David Demelier <markand@malikania.fr>
pkgname=irccd
-pkgver=4.0.1
-pkgrel=1
+pkgver=4.0.3
+pkgrel=0
pkgdesc="IRC Client Daemon"
url="http://projects.malikania.fr/irccd"
arch="all"
license="ISC"
-makedepends="bison cmake curl-dev flex openssl-dev"
+makedepends="bison cmake curl-dev flex openssl-dev>3"
subpackages="$pkgname-doc $pkgname-dev $pkgname-openrc"
source="http://releases.malikania.fr/irccd/$pkgver/irccd-$pkgver.tar.xz
irccd.initd
@@ -42,7 +42,7 @@ package() {
}
sha512sums="
-08784d62d5f9b17f5e54d32a6cee7a65dcf82c41ed2563144e408c7575f407d90eb1f76b8136a10ce0255b51d061770c2f16504938cfff90c36d4b504f092f1a irccd-4.0.1.tar.xz
+41643f0e81bde2cea8b26a0108addf2a1b29512ea479c2d5f6b106f5d796b4444f0d2a92ccd0fe306939cc9b33a95d5841cddea62ef9902f32940eddf8ecfa4b irccd-4.0.3.tar.xz
0ae7907a9724a55e30eac5d19c6b1e5e83ddea6ee90a8a377030f521de9c28c9cec103fbce4fc097ac59f55b7048bc9dee395affd9300de3a79ac2e86d0c75d0 irccd.initd
93ce8795790a21e87cdfb9d31737af73faa200244c448841cd65e52f0523e8f664151e61dbf431df8360473d73c3ca5b3b8b6bcb0ccec52f66e511ae9f2abbdb irccd.confd
"
diff --git a/testing/ircd-hybrid/APKBUILD b/testing/ircd-hybrid/APKBUILD
index a6b86cd9f43..407beb70eab 100755..100644
--- a/testing/ircd-hybrid/APKBUILD
+++ b/testing/ircd-hybrid/APKBUILD
@@ -1,13 +1,13 @@
# Contributor: Alex Yam <alex@alexyam.com>
# Maintainer: Alex Yam <alex@alexyam.com>
pkgname=ircd-hybrid
-pkgver=8.2.39
+pkgver=8.2.43
pkgrel=0
pkgdesc="lightweight and high-performance internet relay chat daemon (ircd)"
url="https://github.com/ircd-hybrid/ircd-hybrid/"
arch="all"
license="GPL-2.0-or-later"
-makedepends="openssl-dev"
+makedepends="openssl-dev>3"
source="$pkgname-$pkgver.tar.gz::https://github.com/ircd-hybrid/ircd-hybrid/archive/$pkgver.tar.gz"
subpackages="$pkgname-doc"
options="!check" # no test suite
@@ -40,5 +40,5 @@ package() {
}
sha512sums="
-7fcb878b723a2885ad8cdf947bed00908c6a34dab107acf981d57cd2039fc1dbe132b9ec1512e487b8889059fb528ebf7bf7d454dcc9c8f162ca29cb6da374e1 ircd-hybrid-8.2.39.tar.gz
+108ee77e18f3eeb23c960aeaf90b7a0a31d534333df6064be80d93cbe52696812f93af36e53be5df126a3db1587aabda699934f412f6a2b54972d86590f6e40c ircd-hybrid-8.2.43.tar.gz
"
diff --git a/testing/irclog2html/APKBUILD b/testing/irclog2html/APKBUILD
deleted file mode 100644
index 78b519494e0..00000000000
--- a/testing/irclog2html/APKBUILD
+++ /dev/null
@@ -1,26 +0,0 @@
-# Contributor: Fabian Affolter <fabian@affolter-engineering.ch>
-# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
-pkgname=irclog2html
-pkgver=2.17.3
-pkgrel=1
-pkgdesc="Script to convert IRC logs to HTML and other formats"
-url="https://mg.pov.lt/irclog2html/"
-arch="noarch"
-license="GPL-2.0-or-later"
-depends="python3"
-makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/i/irclog2html/irclog2html-$pkgver.tar.gz"
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
- install -Dpm 0644 src/$pkgname/irclog.css \
- "$pkgdir"/usr/share/$pkgname/irclog.css
-}
-
-sha512sums="
-2fce4bf10494e3bf3d71f425c363716b0db846ac40aeec7ef274e4344e36302ddd027b0922804a457c269f67f895e87d1b4e9d0e1dba60ca6f1f4b3e52500bff irclog2html-2.17.3.tar.gz
-"
diff --git a/testing/irssi-tcl/APKBUILD b/testing/irssi-tcl/APKBUILD
deleted file mode 100644
index 0025a048d61..00000000000
--- a/testing/irssi-tcl/APKBUILD
+++ /dev/null
@@ -1,43 +0,0 @@
-# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer: rubicon <rubicon@mailo.com>
-pkgname=irssi-tcl
-pkgver=0_git20210919
-_gitrev=9cd796620be88f0a1320d24532e35015a6dd94b5
-pkgrel=0
-pkgdesc="Tcl scripting module for the irssi IRC client"
-url="https://github.com/horgh/irssi-tcl"
-arch="all"
-license="GPL-3.0-or-later"
-depends="irssi"
-makedepends="glib-dev irssi-dev tcl-dev"
-subpackages="$pkgname-doc"
-options="!check"
-source="$pkgname-$pkgver.tar.gz::https://github.com/horgh/irssi-tcl/archive/$_gitrev/irssi-tcl-$_gitrev.tar.gz
- global-scripts-path.patch
- irssi_dir-returns-home.patch
- "
-builddir="$srcdir/irssi-tcl-$_gitrev"
-
-build() {
- # complains about 'GTimeVal' being deprecated in the files
- # server-rec.h and irc-servers.h from the irssi-dev package
- sed -i 's/-Werror //' src/Makefile
- # using DEBUG has only 1 effect: allowing us to specify the
- # global irssi script directory (/usr/share/irssi/scripts)
- make TCL_DIR=/usr/include DEBUG=-DDEBUG -C src
-}
-
-package() {
- install -Dv src/libtcl.so \
- -t "$pkgdir"/usr/lib/irssi/modules/
- install -Dvm644 README.md COPYING docs/*script*.md \
- -t "$pkgdir"/usr/share/doc/"$pkgname"/
- install -Dvm644 tcl/* \
- -t "$pkgdir"/usr/share/irssi/scripts/tcl/
-}
-
-sha512sums="
-5f659250a97310c49d4996f3067e92970e30b9689997277c01ad6869d42c1c90e3c5355ea2d83ad605c45583790a0073f1fb230d7bdf768ecfd319f1aff847e3 irssi-tcl-0_git20210919.tar.gz
-86868af9d42cc1bb4423e59c47b154be46ac972e395686399cc682f278657c3842fabadaf58c897db44273bd4eb4499cd0cc0e54c591259a8469d1fec67ce087 global-scripts-path.patch
-684854e7139dc18ea75d7ddeb1802eac82350854dd41d2c18fe4d543e4822016cc170a1673b032ad55881c75a0f5c4f99ee33a4b61ae41f90f1778ef8a65315a irssi_dir-returns-home.patch
-"
diff --git a/testing/irssi-tcl/global-scripts-path.patch b/testing/irssi-tcl/global-scripts-path.patch
deleted file mode 100644
index 29df2936be6..00000000000
--- a/testing/irssi-tcl/global-scripts-path.patch
+++ /dev/null
@@ -1,19 +0,0 @@
---- a/src/debug.h
-+++ b/src/debug.h
-@@ -4,7 +4,7 @@
- #define __DEBUG_H
-
- #ifdef DEBUG
--#define DEBUG_IRSSI_PATH "/home/will/code/irssi-tcl"
-+#define DEBUG_IRSSI_PATH "/usr/share/irssi/scripts"
- #endif
-
- #endif
---- a/tcl/irssi.tcl
-+++ b/tcl/irssi.tcl
-@@ -135,4 +135,4 @@
- source $script
- }
-
--load_script scripts.conf
-+load_script_absolute /usr/share/irssi/scripts/tcl/scripts.conf
diff --git a/testing/irssi-tcl/irssi_dir-returns-home.patch b/testing/irssi-tcl/irssi_dir-returns-home.patch
deleted file mode 100644
index 71e037443fe..00000000000
--- a/testing/irssi-tcl/irssi_dir-returns-home.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/src/tcl_commands.c
-+++ b/src/tcl_commands.c
-@@ -30,7 +30,7 @@
- }
- Tcl_DString dsPtr;
- Tcl_DStringInit(&dsPtr);
-- irssi_dir_ds(&dsPtr, "");
-+ Tcl_DStringAppend(&dsPtr, get_irssi_dir(), -1);
- Tcl_DStringResult(interp, &dsPtr);
- Tcl_DStringFree(&dsPtr);
- return TCL_OK;
diff --git a/testing/isa-l/APKBUILD b/testing/isa-l/APKBUILD
deleted file mode 100644
index caa1f11bd5e..00000000000
--- a/testing/isa-l/APKBUILD
+++ /dev/null
@@ -1,58 +0,0 @@
-# Contributor: Michael Pirogov <vbnet.ru@gmail.com>
-# Maintainer: Michael Pirogov <vbnet.ru@gmail.com>
-pkgname=isa-l
-pkgver=2.30.0
-pkgrel=0
-pkgdesc="Intelligent Storage Acceleration Library"
-url="https://github.com/intel/isa-l"
-arch="all !x86 !s390x" # https://github.com/intel/isa-l/issues/188
-license="BSD-3-Clause"
-source="$pkgname-$pkgver.tar.gz::https://github.com/intel/isa-l/archive/refs/tags/v$pkgver.tar.gz
- $pkgname-ec.patch
- $pkgname-sve-ec.patch
- "
-subpackages="$pkgname-static $pkgname-dev $pkgname-doc"
-makedepends="autoconf automake libtool nasm help2man linux-headers"
-
-case $CARCH in
- ppc64le|riscv64)
- ;;
- *)
- makedepends="$makedepends texlive doxygen texmf-dist-latexextra"
- ;;
-esac
-
-prepare() {
- default_prepare
- autoreconf -fi
-}
-
-build() {
- ./configure
- make
- if [ "$CARCH" != "ppc64le" ] && [ "$CARCH" != "riscv64" ]; then
- make doc
- fi
-}
-
-check() {
- make test
-}
-
-doc() {
- default_doc
- if [ "$CARCH" != "ppc64le" ] && [ "$CARCH" != "riscv64" ]; then
- mkdir -p "$subpkgdir"/usr/share/doc/$pkgname
- mv "$builddir"/${pkgname}_api_$pkgver.pdf "$subpkgdir"/usr/share/doc/$pkgname/
- fi
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-d3ecfb7326097534b06a74b584100336509525ae7cadc6112d0c27e3d8704f3810e18f583d3cc33fa266bfec96db023607622b22ddbf17988ec4bf1bb3b3b9b2 isa-l-2.30.0.tar.gz
-980ebc4280e83052862b36b8e1c2796c90249918f1889eb1acc51e95b8af27a185c3ab588038d7b6d7ea2ee9bc2af07e2a2772c0d5ded3314812019d18f613b2 isa-l-ec.patch
-28cdb88e77f04ec9763c273007bb75f5d9e6f99bef5e83336bca2491ab9792db6bdaac092aa743783e9088e7c75475a8e97d1d26517d7f160953f3506a35bf6c isa-l-sve-ec.patch
-"
diff --git a/testing/isa-l/isa-l-ec.patch b/testing/isa-l/isa-l-ec.patch
deleted file mode 100644
index 24e672fde3c..00000000000
--- a/testing/isa-l/isa-l-ec.patch
+++ /dev/null
@@ -1,155 +0,0 @@
-From db463aa139aa0f3eb996062bd7c65f0d10a7932b Mon Sep 17 00:00:00 2001
-From: luo rixin <luorixin@huawei.com>
-Date: Fri, 8 Jan 2021 16:16:02 +0800
-Subject: [PATCH] erasure_code: Fix text relocation on aarch64
-
-Here is the bug report on ceph. https://tracker.ceph.com/issues/48681
-
-Signed-off-by: luo rixin <luorixin@huawei.com>
----
- erasure_code/aarch64/gf_2vect_mad_neon.S | 5 +++--
- erasure_code/aarch64/gf_3vect_mad_neon.S | 5 +++--
- erasure_code/aarch64/gf_4vect_mad_neon.S | 5 +++--
- erasure_code/aarch64/gf_5vect_mad_neon.S | 5 +++--
- erasure_code/aarch64/gf_6vect_mad_neon.S | 5 +++--
- erasure_code/aarch64/gf_vect_mad_neon.S | 5 +++--
- 6 files changed, 18 insertions(+), 12 deletions(-)
-
-diff --git a/erasure_code/aarch64/gf_2vect_mad_neon.S b/erasure_code/aarch64/gf_2vect_mad_neon.S
-index 92c19f54..b8a8cadc 100644
---- a/erasure_code/aarch64/gf_2vect_mad_neon.S
-+++ b/erasure_code/aarch64/gf_2vect_mad_neon.S
-@@ -360,7 +360,8 @@ gf_2vect_mad_neon:
- sub x_dest1, x_dest1, x_tmp
- sub x_dest2, x_dest2, x_tmp
-
-- ldr x_const, =const_tbl
-+ adrp x_const, const_tbl
-+ add x_const, x_const, :lo12:const_tbl
- sub x_const, x_const, x_tmp
- ldr q_tmp, [x_const, #16]
-
-@@ -394,7 +395,7 @@ gf_2vect_mad_neon:
- mov w_ret, #1
- ret
-
--.section .data
-+.section .rodata
- .balign 8
- const_tbl:
- .dword 0x0000000000000000, 0x0000000000000000
-diff --git a/erasure_code/aarch64/gf_3vect_mad_neon.S b/erasure_code/aarch64/gf_3vect_mad_neon.S
-index 4a041e05..d9a3cccc 100644
---- a/erasure_code/aarch64/gf_3vect_mad_neon.S
-+++ b/erasure_code/aarch64/gf_3vect_mad_neon.S
-@@ -332,7 +332,8 @@ gf_3vect_mad_neon:
- sub x_dest2, x_dest2, x_tmp
- sub x_dest3, x_dest3, x_tmp
-
-- ldr x_const, =const_tbl
-+ adrp x_const, const_tbl
-+ add x_const, x_const, :lo12:const_tbl
- sub x_const, x_const, x_tmp
- ldr q_tmp, [x_const, #16]
-
-@@ -374,7 +375,7 @@ gf_3vect_mad_neon:
- mov w_ret, #1
- ret
-
--.section .data
-+.section .rodata
- .balign 8
- const_tbl:
- .dword 0x0000000000000000, 0x0000000000000000
-diff --git a/erasure_code/aarch64/gf_4vect_mad_neon.S b/erasure_code/aarch64/gf_4vect_mad_neon.S
-index d56cece4..86924370 100644
---- a/erasure_code/aarch64/gf_4vect_mad_neon.S
-+++ b/erasure_code/aarch64/gf_4vect_mad_neon.S
-@@ -397,7 +397,8 @@ gf_4vect_mad_neon:
- sub x_dest3, x_dest3, x_tmp
- sub x_dest4, x_dest4, x_tmp
-
-- ldr x_const, =const_tbl
-+ adrp x_const, const_tbl
-+ add x_const, x_const, :lo12:const_tbl
- sub x_const, x_const, x_tmp
- ldr q_tmp, [x_const, #16]
-
-@@ -448,7 +449,7 @@ gf_4vect_mad_neon:
- mov w_ret, #1
- ret
-
--.section .data
-+.section .rodata
- .balign 8
- const_tbl:
- .dword 0x0000000000000000, 0x0000000000000000
-diff --git a/erasure_code/aarch64/gf_5vect_mad_neon.S b/erasure_code/aarch64/gf_5vect_mad_neon.S
-index 5cbc6bf9..f0ff163f 100644
---- a/erasure_code/aarch64/gf_5vect_mad_neon.S
-+++ b/erasure_code/aarch64/gf_5vect_mad_neon.S
-@@ -463,7 +463,8 @@ gf_5vect_mad_neon:
- sub x_dest4, x_dest4, x_tmp
- sub x_dest5, x_dest5, x_tmp
-
-- ldr x_const, =const_tbl
-+ adrp x_const, const_tbl
-+ add x_const, x_const, :lo12:const_tbl
- sub x_const, x_const, x_tmp
- ldr q_tmp, [x_const, #16]
-
-@@ -527,7 +528,7 @@ gf_5vect_mad_neon:
- mov w_ret, #1
- ret
-
--.section .data
-+.section .rodata
- .balign 8
- const_tbl:
- .dword 0x0000000000000000, 0x0000000000000000
-diff --git a/erasure_code/aarch64/gf_6vect_mad_neon.S b/erasure_code/aarch64/gf_6vect_mad_neon.S
-index 4886440b..7ec2d80b 100644
---- a/erasure_code/aarch64/gf_6vect_mad_neon.S
-+++ b/erasure_code/aarch64/gf_6vect_mad_neon.S
-@@ -526,7 +526,8 @@ gf_6vect_mad_neon:
- sub x_dest5, x_dest5, x_tmp
- sub x_dest6, x_dest6, x_tmp
-
-- ldr x_const, =const_tbl
-+ adrp x_const, const_tbl
-+ add x_const, x_const, :lo12:const_tbl
- sub x_const, x_const, x_tmp
- ldr q_tmp, [x_const, #16]
-
-@@ -602,7 +603,7 @@ gf_6vect_mad_neon:
- mov w_ret, #1
- ret
-
--.section .data
-+.section .rodata
- .balign 8
- const_tbl:
- .dword 0x0000000000000000, 0x0000000000000000
-diff --git a/erasure_code/aarch64/gf_vect_mad_neon.S b/erasure_code/aarch64/gf_vect_mad_neon.S
-index 0e25a51e..9ebd86b4 100644
---- a/erasure_code/aarch64/gf_vect_mad_neon.S
-+++ b/erasure_code/aarch64/gf_vect_mad_neon.S
-@@ -281,7 +281,8 @@ gf_vect_mad_neon:
- mov x_src, x_src_end
- sub x_dest1, x_dest1, x_tmp
-
-- ldr x_const, =const_tbl
-+ adrp x_const, const_tbl
-+ add x_const, x_const, :lo12:const_tbl
- sub x_const, x_const, x_tmp
- ldr q_tmp, [x_const, #16]
-
-@@ -307,7 +308,7 @@ gf_vect_mad_neon:
- mov w_ret, #1
- ret
-
--.section .data
-+.section .rodata
- .balign 8
- const_tbl:
- .dword 0x0000000000000000, 0x0000000000000000
diff --git a/testing/isa-l/isa-l-sve-ec.patch b/testing/isa-l/isa-l-sve-ec.patch
deleted file mode 100644
index c713fd1dcd3..00000000000
--- a/testing/isa-l/isa-l-sve-ec.patch
+++ /dev/null
@@ -1,3369 +0,0 @@
-From 3b3d7cc47b9c21be4d004d2a53455f0ddee968a2 Mon Sep 17 00:00:00 2001
-From: Guodong Xu <guodong.xu@linaro.org>
-Date: Tue, 28 Dec 2021 17:32:39 +0800
-Subject: [PATCH] Enable SVE in ISA-L erasure code for aarch64
-
-This patch adds Arm (aarch64) SVE [1] variable-length vector assembly support
-into ISA-L erasure code library. "Arm designed the Scalable Vector Extension
-(SVE) as a next-generation SIMD extension to AArch64. SVE allows flexible
-vector length implementations with a range of possible values in CPU
-implementations. The vector length can vary from a minimum of 128 bits up to
-a maximum of 2048 bits, at 128-bit increments. The SVE design guarantees
-that the same application can run on different implementations that support
-SVE, without the need to recompile the code. " [3]
-
-Test method:
- - This patch was tested on Fujitsu's A64FX [2], and it passed all erasure
- code related test cases, including "make checks" , "make test", and
- "make perf".
- - To ensure code testing coverage, parameters in files (erasure_code/
- erasure_code_test.c , erasure_code_update_test.c and gf_vect_mad_test.c)
- are modified to cover all _vect versions of _mad_sve() / _dot_prod_sve()
- rutines.
-
-Performance improvements over NEON:
-In general, SVE benchmarks (bandwidth in MB/s) are 40% ~ 100% higher than NEON
-when running _cold style (data uncached and pulled from memory) perfs. This
-includes routines of dot_prod, mad, and mul.
-
-Optimization points:
-This patch was tuned for the best performance on A64FX. Tuning points being
-touched in this patch include:
-1) Data prefetch into L2 cache before loading. See _sve.S files.
-2) Instruction sequence orchestration. Such as interleaving every two
- 'ld1b/st1b' instructions with other instructions. See _sve.S files.
-3) To improve dest vectors parallelism, in highlevel, running
- gf_4vect_dot_prod_sve twice is better than running gf_8vect_dot_prod_sve()
- once, and it's also better than running _7vect + _vect, _6vect + _2vect,
- and _5vect + _3vect. The similar idea is applied to improve 11 ~ 9 dest
- vectors dot product computing as well. The related change can be found
- in ec_encode_data_sve() of file:
- erasure_code/aarch64/ec_aarch64_highlevel_func.c
-
-Notes:
-1) About vector length: A64FX has a vector register length of 512bit. However,
- this patchset was written with variable length assembly so it work
- automatically on aarch64 machines with any types of SVE vector length,
- such as SVE-128, SVE-256, etc..
-2) About optimization: Due to differences in microarchitecture and
- cache/memory design, to achieve optimum performance on SVE capable CPUs
- other than A64FX, it is considered necessary to do microarchitecture-level
- tunings on these CPUs.
-
-[1] Introduction to SVE - Arm Developer.
- https://developer.arm.com/documentation/102476/latest/
-[2] FUJITSU Processor A64FX.
- https://www.fujitsu.com/global/products/computing/servers/supercomputer/a64fx/
-[3] Introducing SVE.
- https://developer.arm.com/documentation/102476/0001/Introducing-SVE
-
-Change-Id: If49eb8a956154d799dcda0ba4c9c6d979f5064a9
-Signed-off-by: Guodong Xu <guodong.xu@linaro.org>
----
- erasure_code/aarch64/Makefile.am | 15 +
- erasure_code/aarch64/ec_aarch64_dispatcher.c | 30 +-
- .../aarch64/ec_aarch64_highlevel_func.c | 137 ++++++++
- erasure_code/aarch64/gf_2vect_dot_prod_sve.S | 164 ++++++++++
- erasure_code/aarch64/gf_2vect_mad_sve.S | 148 +++++++++
- erasure_code/aarch64/gf_3vect_dot_prod_sve.S | 185 +++++++++++
- erasure_code/aarch64/gf_3vect_mad_sve.S | 171 ++++++++++
- erasure_code/aarch64/gf_4vect_dot_prod_sve.S | 204 ++++++++++++
- erasure_code/aarch64/gf_4vect_mad_sve.S | 190 +++++++++++
- erasure_code/aarch64/gf_5vect_dot_prod_sve.S | 233 ++++++++++++++
- erasure_code/aarch64/gf_5vect_mad_sve.S | 214 +++++++++++++
- erasure_code/aarch64/gf_6vect_dot_prod_sve.S | 254 +++++++++++++++
- erasure_code/aarch64/gf_6vect_mad_sve.S | 233 ++++++++++++++
- erasure_code/aarch64/gf_7vect_dot_prod_sve.S | 277 ++++++++++++++++
- erasure_code/aarch64/gf_8vect_dot_prod_sve.S | 303 ++++++++++++++++++
- erasure_code/aarch64/gf_vect_dot_prod_sve.S | 128 ++++++++
- erasure_code/aarch64/gf_vect_mad_sve.S | 123 +++++++
- erasure_code/aarch64/gf_vect_mul_sve.S | 117 +++++++
- 18 files changed, 3121 insertions(+), 5 deletions(-)
- create mode 100644 erasure_code/aarch64/gf_2vect_dot_prod_sve.S
- create mode 100644 erasure_code/aarch64/gf_2vect_mad_sve.S
- create mode 100644 erasure_code/aarch64/gf_3vect_dot_prod_sve.S
- create mode 100644 erasure_code/aarch64/gf_3vect_mad_sve.S
- create mode 100644 erasure_code/aarch64/gf_4vect_dot_prod_sve.S
- create mode 100644 erasure_code/aarch64/gf_4vect_mad_sve.S
- create mode 100644 erasure_code/aarch64/gf_5vect_dot_prod_sve.S
- create mode 100644 erasure_code/aarch64/gf_5vect_mad_sve.S
- create mode 100644 erasure_code/aarch64/gf_6vect_dot_prod_sve.S
- create mode 100644 erasure_code/aarch64/gf_6vect_mad_sve.S
- create mode 100644 erasure_code/aarch64/gf_7vect_dot_prod_sve.S
- create mode 100644 erasure_code/aarch64/gf_8vect_dot_prod_sve.S
- create mode 100644 erasure_code/aarch64/gf_vect_dot_prod_sve.S
- create mode 100644 erasure_code/aarch64/gf_vect_mad_sve.S
- create mode 100644 erasure_code/aarch64/gf_vect_mul_sve.S
-
-diff --git a/erasure_code/aarch64/Makefile.am b/erasure_code/aarch64/Makefile.am
-index 94bb5a13..47bbf12d 100644
---- a/erasure_code/aarch64/Makefile.am
-+++ b/erasure_code/aarch64/Makefile.am
-@@ -42,4 +42,19 @@ lsrc_aarch64 += \
- erasure_code/aarch64/gf_5vect_mad_neon.S \
- erasure_code/aarch64/gf_6vect_mad_neon.S \
- erasure_code/aarch64/gf_vect_mul_neon.S \
-+ erasure_code/aarch64/gf_vect_mad_sve.S \
-+ erasure_code/aarch64/gf_2vect_mad_sve.S \
-+ erasure_code/aarch64/gf_3vect_mad_sve.S \
-+ erasure_code/aarch64/gf_4vect_mad_sve.S \
-+ erasure_code/aarch64/gf_5vect_mad_sve.S \
-+ erasure_code/aarch64/gf_6vect_mad_sve.S \
-+ erasure_code/aarch64/gf_vect_dot_prod_sve.S \
-+ erasure_code/aarch64/gf_2vect_dot_prod_sve.S \
-+ erasure_code/aarch64/gf_3vect_dot_prod_sve.S \
-+ erasure_code/aarch64/gf_4vect_dot_prod_sve.S \
-+ erasure_code/aarch64/gf_5vect_dot_prod_sve.S \
-+ erasure_code/aarch64/gf_6vect_dot_prod_sve.S \
-+ erasure_code/aarch64/gf_7vect_dot_prod_sve.S \
-+ erasure_code/aarch64/gf_8vect_dot_prod_sve.S \
-+ erasure_code/aarch64/gf_vect_mul_sve.S \
- erasure_code/aarch64/ec_multibinary_arm.S
-diff --git a/erasure_code/aarch64/ec_aarch64_dispatcher.c b/erasure_code/aarch64/ec_aarch64_dispatcher.c
-index ba663478..42bd7802 100644
---- a/erasure_code/aarch64/ec_aarch64_dispatcher.c
-+++ b/erasure_code/aarch64/ec_aarch64_dispatcher.c
-@@ -30,7 +30,11 @@
-
- DEFINE_INTERFACE_DISPATCHER(gf_vect_dot_prod)
- {
-- if (getauxval(AT_HWCAP) & HWCAP_ASIMD)
-+ unsigned long auxval = getauxval(AT_HWCAP);
-+
-+ if (auxval & HWCAP_SVE)
-+ return PROVIDER_INFO(gf_vect_dot_prod_sve);
-+ if (auxval & HWCAP_ASIMD)
- return PROVIDER_INFO(gf_vect_dot_prod_neon);
- return PROVIDER_BASIC(gf_vect_dot_prod);
-
-@@ -38,7 +42,11 @@ DEFINE_INTERFACE_DISPATCHER(gf_vect_dot_prod)
-
- DEFINE_INTERFACE_DISPATCHER(gf_vect_mad)
- {
-- if (getauxval(AT_HWCAP) & HWCAP_ASIMD)
-+ unsigned long auxval = getauxval(AT_HWCAP);
-+
-+ if (auxval & HWCAP_SVE)
-+ return PROVIDER_INFO(gf_vect_mad_sve);
-+ if (auxval & HWCAP_ASIMD)
- return PROVIDER_INFO(gf_vect_mad_neon);
- return PROVIDER_BASIC(gf_vect_mad);
-
-@@ -46,7 +54,11 @@ DEFINE_INTERFACE_DISPATCHER(gf_vect_mad)
-
- DEFINE_INTERFACE_DISPATCHER(ec_encode_data)
- {
-- if (getauxval(AT_HWCAP) & HWCAP_ASIMD)
-+ unsigned long auxval = getauxval(AT_HWCAP);
-+
-+ if (auxval & HWCAP_SVE)
-+ return PROVIDER_INFO(ec_encode_data_sve);
-+ if (auxval & HWCAP_ASIMD)
- return PROVIDER_INFO(ec_encode_data_neon);
- return PROVIDER_BASIC(ec_encode_data);
-
-@@ -54,7 +66,11 @@ DEFINE_INTERFACE_DISPATCHER(ec_encode_data)
-
- DEFINE_INTERFACE_DISPATCHER(ec_encode_data_update)
- {
-- if (getauxval(AT_HWCAP) & HWCAP_ASIMD)
-+ unsigned long auxval = getauxval(AT_HWCAP);
-+
-+ if (auxval & HWCAP_SVE)
-+ return PROVIDER_INFO(ec_encode_data_update_sve);
-+ if (auxval & HWCAP_ASIMD)
- return PROVIDER_INFO(ec_encode_data_update_neon);
- return PROVIDER_BASIC(ec_encode_data_update);
-
-@@ -62,7 +78,11 @@ DEFINE_INTERFACE_DISPATCHER(ec_encode_data_update)
-
- DEFINE_INTERFACE_DISPATCHER(gf_vect_mul)
- {
-- if (getauxval(AT_HWCAP) & HWCAP_ASIMD)
-+ unsigned long auxval = getauxval(AT_HWCAP);
-+
-+ if (auxval & HWCAP_SVE)
-+ return PROVIDER_INFO(gf_vect_mul_sve);
-+ if (auxval & HWCAP_ASIMD)
- return PROVIDER_INFO(gf_vect_mul_neon);
- return PROVIDER_BASIC(gf_vect_mul);
-
-diff --git a/erasure_code/aarch64/ec_aarch64_highlevel_func.c b/erasure_code/aarch64/ec_aarch64_highlevel_func.c
-index dd23702c..e001fd72 100644
---- a/erasure_code/aarch64/ec_aarch64_highlevel_func.c
-+++ b/erasure_code/aarch64/ec_aarch64_highlevel_func.c
-@@ -125,3 +125,140 @@ void ec_encode_data_update_neon(int len, int k, int rows, int vec_i, unsigned ch
- break;
- }
- }
-+
-+/* SVE */
-+extern void gf_vect_dot_prod_sve(int len, int vlen, unsigned char *gftbls,
-+ unsigned char **src, unsigned char *dest);
-+extern void gf_2vect_dot_prod_sve(int len, int vlen, unsigned char *gftbls,
-+ unsigned char **src, unsigned char **dest);
-+extern void gf_3vect_dot_prod_sve(int len, int vlen, unsigned char *gftbls,
-+ unsigned char **src, unsigned char **dest);
-+extern void gf_4vect_dot_prod_sve(int len, int vlen, unsigned char *gftbls,
-+ unsigned char **src, unsigned char **dest);
-+extern void gf_5vect_dot_prod_sve(int len, int vlen, unsigned char *gftbls,
-+ unsigned char **src, unsigned char **dest);
-+extern void gf_6vect_dot_prod_sve(int len, int vlen, unsigned char *gftbls,
-+ unsigned char **src, unsigned char **dest);
-+extern void gf_7vect_dot_prod_sve(int len, int vlen, unsigned char *gftbls,
-+ unsigned char **src, unsigned char **dest);
-+extern void gf_8vect_dot_prod_sve(int len, int vlen, unsigned char *gftbls,
-+ unsigned char **src, unsigned char **dest);
-+extern void gf_vect_mad_sve(int len, int vec, int vec_i, unsigned char *gftbls,
-+ unsigned char *src, unsigned char *dest);
-+extern void gf_2vect_mad_sve(int len, int vec, int vec_i, unsigned char *gftbls,
-+ unsigned char *src, unsigned char **dest);
-+extern void gf_3vect_mad_sve(int len, int vec, int vec_i, unsigned char *gftbls,
-+ unsigned char *src, unsigned char **dest);
-+extern void gf_4vect_mad_sve(int len, int vec, int vec_i, unsigned char *gftbls,
-+ unsigned char *src, unsigned char **dest);
-+extern void gf_5vect_mad_sve(int len, int vec, int vec_i, unsigned char *gftbls,
-+ unsigned char *src, unsigned char **dest);
-+extern void gf_6vect_mad_sve(int len, int vec, int vec_i, unsigned char *gftbls,
-+ unsigned char *src, unsigned char **dest);
-+
-+void ec_encode_data_sve(int len, int k, int rows, unsigned char *g_tbls, unsigned char **data,
-+ unsigned char **coding)
-+{
-+ if (len < 16) {
-+ ec_encode_data_base(len, k, rows, g_tbls, data, coding);
-+ return;
-+ }
-+
-+ while (rows > 11) {
-+ gf_6vect_dot_prod_sve(len, k, g_tbls, data, coding);
-+ g_tbls += 6 * k * 32;
-+ coding += 6;
-+ rows -= 6;
-+ }
-+
-+ switch (rows) {
-+ case 11:
-+ /* 7 + 4 */
-+ gf_7vect_dot_prod_sve(len, k, g_tbls, data, coding);
-+ g_tbls += 7 * k * 32;
-+ coding += 7;
-+ gf_4vect_dot_prod_sve(len, k, g_tbls, data, coding);
-+ break;
-+ case 10:
-+ /* 6 + 4 */
-+ gf_6vect_dot_prod_sve(len, k, g_tbls, data, coding);
-+ g_tbls += 6 * k * 32;
-+ coding += 6;
-+ gf_4vect_dot_prod_sve(len, k, g_tbls, data, coding);
-+ break;
-+ case 9:
-+ /* 5 + 4 */
-+ gf_5vect_dot_prod_sve(len, k, g_tbls, data, coding);
-+ g_tbls += 5 * k * 32;
-+ coding += 5;
-+ gf_4vect_dot_prod_sve(len, k, g_tbls, data, coding);
-+ break;
-+ case 8:
-+ /* 4 + 4 */
-+ gf_4vect_dot_prod_sve(len, k, g_tbls, data, coding);
-+ g_tbls += 4 * k * 32;
-+ coding += 4;
-+ gf_4vect_dot_prod_sve(len, k, g_tbls, data, coding);
-+ break;
-+ case 7:
-+ gf_7vect_dot_prod_sve(len, k, g_tbls, data, coding);
-+ break;
-+ case 6:
-+ gf_6vect_dot_prod_sve(len, k, g_tbls, data, coding);
-+ break;
-+ case 5:
-+ gf_5vect_dot_prod_sve(len, k, g_tbls, data, coding);
-+ break;
-+ case 4:
-+ gf_4vect_dot_prod_sve(len, k, g_tbls, data, coding);
-+ break;
-+ case 3:
-+ gf_3vect_dot_prod_sve(len, k, g_tbls, data, coding);
-+ break;
-+ case 2:
-+ gf_2vect_dot_prod_sve(len, k, g_tbls, data, coding);
-+ break;
-+ case 1:
-+ gf_vect_dot_prod_sve(len, k, g_tbls, data, *coding);
-+ break;
-+ default:
-+ break;
-+ }
-+}
-+
-+void ec_encode_data_update_sve(int len, int k, int rows, int vec_i, unsigned char *g_tbls,
-+ unsigned char *data, unsigned char **coding)
-+{
-+ if (len < 16) {
-+ ec_encode_data_update_base(len, k, rows, vec_i, g_tbls, data, coding);
-+ return;
-+ }
-+ while (rows > 6) {
-+ gf_6vect_mad_sve(len, k, vec_i, g_tbls, data, coding);
-+ g_tbls += 6 * k * 32;
-+ coding += 6;
-+ rows -= 6;
-+ }
-+ switch (rows) {
-+ case 6:
-+ gf_6vect_mad_sve(len, k, vec_i, g_tbls, data, coding);
-+ break;
-+ case 5:
-+ gf_5vect_mad_sve(len, k, vec_i, g_tbls, data, coding);
-+ break;
-+ case 4:
-+ gf_4vect_mad_sve(len, k, vec_i, g_tbls, data, coding);
-+ break;
-+ case 3:
-+ gf_3vect_mad_sve(len, k, vec_i, g_tbls, data, coding);
-+ break;
-+ case 2:
-+ gf_2vect_mad_sve(len, k, vec_i, g_tbls, data, coding);
-+ break;
-+ case 1:
-+ gf_vect_mad_sve(len, k, vec_i, g_tbls, data, *coding);
-+ break;
-+ default:
-+ break;
-+ }
-+}
-diff --git a/erasure_code/aarch64/gf_2vect_dot_prod_sve.S b/erasure_code/aarch64/gf_2vect_dot_prod_sve.S
-new file mode 100644
-index 00000000..abe50833
---- /dev/null
-+++ b/erasure_code/aarch64/gf_2vect_dot_prod_sve.S
-@@ -0,0 +1,164 @@
-+/*************************************************************
-+ Copyright (c) 2021 Linaro Ltd.
-+
-+ Redistribution and use in source and binary forms, with or without
-+ modification, are permitted provided that the following conditions
-+ are met:
-+ * Redistributions of source code must retain the above copyright
-+ notice, this list of conditions and the following disclaimer.
-+ * Redistributions in binary form must reproduce the above copyright
-+ notice, this list of conditions and the following disclaimer in
-+ the documentation and/or other materials provided with the
-+ distribution.
-+ * Neither the name of Huawei Corporation nor the names of its
-+ contributors may be used to endorse or promote products derived
-+ from this software without specific prior written permission.
-+
-+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+**********************************************************************/
-+.text
-+.align 6
-+.arch armv8-a+sve
-+
-+.global gf_2vect_dot_prod_sve
-+.type gf_2vect_dot_prod_sve, %function
-+/* void gf_2vect_dot_prod_sve(int len, int vlen, unsigned char *gftbls,
-+ unsigned char **src, unsigned char **dest);
-+ */
-+
-+/* arguments */
-+x_len .req x0 /* vector length */
-+x_vec .req x1 /* number of source vectors (ie. data blocks) */
-+x_tbl .req x2
-+x_src .req x3
-+x_dest .req x4
-+
-+/* returns */
-+w_ret .req w0
-+
-+/* local variables */
-+x_vec_i .req x5
-+x_ptr .req x6
-+x_pos .req x7
-+
-+x_tbl1 .req x8
-+x_tbl2 .req x9
-+x_dest1 .req x10
-+x_dest2 .req x_dest /* reused */
-+
-+/* r16,r17,r18,r29,r30: special role registers, avoided */
-+/* r19..r29 and SP must be preserved */
-+
-+/* vectors */
-+z_mask0f .req z0
-+
-+z_src .req z1
-+z_src_lo .req z2
-+z_src_hi .req z_src
-+
-+z_dest1 .req z3
-+
-+z_gft1_lo .req z4
-+z_gft1_hi .req z5
-+q_gft1_lo .req q4
-+q_gft1_hi .req q5
-+
-+/* bottom 64-bit of v8..v15 must be preserved if used */
-+z_gft2_lo .req z17
-+z_gft2_hi .req z18
-+q_gft2_lo .req q17
-+q_gft2_hi .req q18
-+
-+z_dest2 .req z27
-+
-+gf_2vect_dot_prod_sve:
-+ /* less than 16 bytes, return_fail */
-+ cmp x_len, #16
-+ blt .return_fail
-+
-+ mov z_mask0f.b, #0x0f /* z_mask0f = 0x0F0F...0F */
-+ mov x_pos, #0
-+ lsl x_vec, x_vec, #3
-+ ldp x_dest1, x_dest2, [x_dest, #8*0]
-+
-+/* Loop 1: x_len, vector length */
-+.Lloopsve_vl:
-+ whilelo p0.b, x_pos, x_len
-+ b.none .return_pass
-+
-+ mov x_vec_i, #0 /* clear x_vec_i */
-+ ldr x_ptr, [x_src, x_vec_i] /* x_ptr: src base addr. */
-+
-+ mov z_dest1.b, #0 /* clear z_dest1 */
-+ mov z_dest2.b, #0 /* clear z_dest2 */
-+
-+ /* gf_tbl base = (x_tbl + dest_idx * x_vec * 32) */
-+ mov x_tbl1, x_tbl /* reset x_tbl1 */
-+ add x_tbl2, x_tbl1, x_vec, LSL #2 /* reset x_tbl2 */
-+
-+/* Loop 2: x_vec, number of source vectors (ie. data blocks) */
-+.Lloopsve_vl_vects:
-+ /* load src data, governed by p0 */
-+ ld1b z_src.b, p0/z, [x_ptr, x_pos] /* load from: src base + pos offset */
-+ /* split 4-bit lo; 4-bit hi */
-+ and z_src_lo.d, z_src.d, z_mask0f.d
-+ lsr z_src_hi.b, z_src.b, #4
-+
-+
-+ /* gf_tbl addr: (x_tbl + dest_idx * x_vec * 32) + src_vec_idx * 32 */
-+ /* load gf_table's */
-+ ldp q_gft1_lo, q_gft1_hi, [x_tbl1], #32 /* x_tbl1 is post-added by #32 for each src vect */
-+ ldp q_gft2_lo, q_gft2_hi, [x_tbl2], #32
-+
-+ /* prefetch */
-+ prfb pldl2keep, p0, [x_tbl1]
-+ prfb pldl2keep, p0, [x_tbl2]
-+
-+ /* calc for next */
-+ add x_vec_i, x_vec_i, #8 /* move x_vec_i to next */
-+ ldr x_ptr, [x_src, x_vec_i] /* x_ptr: src base addr. */
-+
-+ /* dest 1 */
-+ /* table indexing, ie. gf(2^8) multiplication */
-+ tbl z_gft1_lo.b, {z_gft1_lo.b}, z_src_lo.b
-+ tbl z_gft1_hi.b, {z_gft1_hi.b}, z_src_hi.b
-+ /* exclusive or, ie. gf(2^8) add */
-+ eor z_dest1.d, z_gft1_lo.d, z_dest1.d
-+ eor z_dest1.d, z_dest1.d, z_gft1_hi.d
-+
-+ /* dest 2 */
-+ tbl z_gft2_lo.b, {z_gft2_lo.b}, z_src_lo.b
-+ tbl z_gft2_hi.b, {z_gft2_hi.b}, z_src_hi.b
-+ eor z_dest2.d, z_gft2_lo.d, z_dest2.d
-+ eor z_dest2.d, z_dest2.d, z_gft2_hi.d
-+
-+ cmp x_vec_i, x_vec
-+ blt .Lloopsve_vl_vects
-+/* end of Loop 2 */
-+
-+ /* store dest data, governed by p0 */
-+ st1b z_dest1.b, p0, [x_dest1, x_pos]
-+ st1b z_dest2.b, p0, [x_dest2, x_pos]
-+
-+ /* increment one vector length */
-+ incb x_pos
-+ b .Lloopsve_vl
-+/* end of Loop 1 */
-+
-+.return_pass:
-+ mov w_ret, #0
-+ ret
-+
-+.return_fail:
-+ mov w_ret, #1
-+ ret
-diff --git a/erasure_code/aarch64/gf_2vect_mad_sve.S b/erasure_code/aarch64/gf_2vect_mad_sve.S
-new file mode 100644
-index 00000000..5e832109
---- /dev/null
-+++ b/erasure_code/aarch64/gf_2vect_mad_sve.S
-@@ -0,0 +1,148 @@
-+/**************************************************************
-+ Copyright (c) 2021 Linaro Ltd.
-+
-+ Redistribution and use in source and binary forms, with or without
-+ modification, are permitted provided that the following conditions
-+ are met:
-+ * Redistributions of source code must retain the above copyright
-+ notice, this list of conditions and the following disclaimer.
-+ * Redistributions in binary form must reproduce the above copyright
-+ notice, this list of conditions and the following disclaimer in
-+ the documentation and/or other materials provided with the
-+ distribution.
-+ * Neither the name of Huawei Corporation nor the names of its
-+ contributors may be used to endorse or promote products derived
-+ from this software without specific prior written permission.
-+
-+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+**********************************************************************/
-+.text
-+.align 6
-+.arch armv8-a+sve
-+
-+.global gf_2vect_mad_sve
-+.type gf_2vect_mad_sve, %function
-+
-+/* gf_2vect_mad_sve(int len, int vec, int vec_i, unsigned char *gftbls,
-+ unsigned char *src, unsigned char **dest);
-+ */
-+/* arguments */
-+x_len .req x0
-+x_vec .req x1
-+x_vec_i .req x2
-+x_tbl .req x3
-+x_src .req x4
-+x_dest .req x5
-+
-+/* returns */
-+w_ret .req w0
-+
-+/* local variables */
-+x_pos .req x6
-+x_dest2 .req x7
-+x_dest1 .req x12
-+
-+/* vectors */
-+z_mask0f .req z0
-+
-+z_src .req z1
-+z_src_lo .req z2
-+z_src_hi .req z_src
-+
-+z_dest1 .req z3
-+
-+z_tmp_lo .req z4
-+z_tmp_hi .req z5
-+
-+z_gft1_lo .req z6
-+z_gft1_hi .req z7
-+q_gft1_lo .req q6
-+q_gft1_hi .req q7
-+
-+/* bottom 64-bit of v8..v15 must be preserved if used */
-+z_gft2_lo .req z17
-+z_gft2_hi .req z18
-+q_gft2_lo .req q17
-+q_gft2_hi .req q18
-+
-+z_dest2 .req z27
-+
-+gf_2vect_mad_sve:
-+ /* less than 16 bytes, return_fail */
-+ cmp x_len, #16
-+ blt .return_fail
-+
-+ mov z_mask0f.b, #0x0f /* z_mask0f = 0x0F0F...0F */
-+ /* load table 1 */
-+ add x_tbl, x_tbl, x_vec_i, LSL #5 /* x_tbl += x_vec_i * 2^5 */
-+
-+ /* Load table 1 with NEON instruction ldp */
-+ ldp q_gft1_lo, q_gft1_hi, [x_tbl]
-+ /* load table 2 */
-+ add x_tbl, x_tbl, x_vec, LSL #5 /* x_tbl += x_vec * 2^5 */
-+ ldp q_gft2_lo, q_gft2_hi, [x_tbl]
-+
-+ ldr x_dest1, [x_dest, #8*0] /* pointer to dest1 */
-+ ldr x_dest2, [x_dest, #8*1] /* pointer to dest2 */
-+
-+ mov x_pos, #0
-+
-+ /* vector length agnostic */
-+.Lloopsve_vl:
-+ whilelo p0.b, x_pos, x_len
-+ b.none .return_pass
-+
-+ /* prefetch dest data */
-+ prfb pldl2strm, p0, [x_dest1, x_pos]
-+ prfb pldl2strm, p0, [x_dest2, x_pos]
-+
-+ /* load src data, governed by p0 */
-+ ld1b z_src.b, p0/z, [x_src, x_pos]
-+
-+ /* split 4-bit lo; 4-bit hi */
-+ and z_src_lo.d, z_src.d, z_mask0f.d
-+ lsr z_src_hi.b, z_src.b, #4
-+
-+ /* load dest data, governed by p0 */
-+ ld1b z_dest1.b, p0/z, [x_dest1, x_pos]
-+ ld1b z_dest2.b, p0/z, [x_dest2, x_pos]
-+
-+ /* dest1 */
-+ /* table indexing, ie. gf(2^8) multiplication */
-+ tbl z_tmp_lo.b, {z_gft1_lo.b}, z_src_lo.b
-+ tbl z_tmp_hi.b, {z_gft1_hi.b}, z_src_hi.b
-+ /* exclusive or, ie. gf(2^8) add */
-+ eor z_dest1.d, z_tmp_lo.d, z_dest1.d
-+ eor z_dest1.d, z_tmp_hi.d, z_dest1.d
-+
-+ /* dest2 */
-+ tbl z_tmp_lo.b, {z_gft2_lo.b}, z_src_lo.b
-+ tbl z_tmp_hi.b, {z_gft2_hi.b}, z_src_hi.b
-+ eor z_dest2.d, z_tmp_lo.d, z_dest2.d
-+ eor z_dest2.d, z_tmp_hi.d, z_dest2.d
-+
-+ /* store dest data, governed by p0 */
-+ st1b z_dest1.b, p0, [x_dest1, x_pos]
-+ st1b z_dest2.b, p0, [x_dest2, x_pos]
-+ /* increment one vector length */
-+ incb x_pos
-+
-+ b .Lloopsve_vl
-+
-+.return_pass:
-+ mov w_ret, #0
-+ ret
-+
-+.return_fail:
-+ mov w_ret, #1
-+ ret
-diff --git a/erasure_code/aarch64/gf_3vect_dot_prod_sve.S b/erasure_code/aarch64/gf_3vect_dot_prod_sve.S
-new file mode 100644
-index 00000000..b326c72c
---- /dev/null
-+++ b/erasure_code/aarch64/gf_3vect_dot_prod_sve.S
-@@ -0,0 +1,185 @@
-+/*************************************************************
-+ Copyright (c) 2021 Linaro Ltd.
-+
-+ Redistribution and use in source and binary forms, with or without
-+ modification, are permitted provided that the following conditions
-+ are met:
-+ * Redistributions of source code must retain the above copyright
-+ notice, this list of conditions and the following disclaimer.
-+ * Redistributions in binary form must reproduce the above copyright
-+ notice, this list of conditions and the following disclaimer in
-+ the documentation and/or other materials provided with the
-+ distribution.
-+ * Neither the name of Huawei Corporation nor the names of its
-+ contributors may be used to endorse or promote products derived
-+ from this software without specific prior written permission.
-+
-+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+**********************************************************************/
-+.text
-+.align 6
-+.arch armv8-a+sve
-+
-+.global gf_3vect_dot_prod_sve
-+.type gf_3vect_dot_prod_sve, %function
-+/* void gf_3vect_dot_prod_sve(int len, int vlen, unsigned char *gftbls,
-+ unsigned char **src, unsigned char **dest);
-+ */
-+
-+/* arguments */
-+x_len .req x0 /* vector length */
-+x_vec .req x1 /* number of source vectors (ie. data blocks) */
-+x_tbl .req x2
-+x_src .req x3
-+x_dest .req x4
-+
-+/* returns */
-+w_ret .req w0
-+
-+/* local variables */
-+x_vec_i .req x5
-+x_ptr .req x6
-+x_pos .req x7
-+
-+x_tbl1 .req x8
-+x_tbl2 .req x9
-+x_tbl3 .req x10
-+x_dest1 .req x11
-+x_dest2 .req x12
-+x_dest3 .req x_dest /* reused */
-+
-+/* r16,r17,r18,r29,r30: special role registers, avoided */
-+/* r19..r29 and SP must be preserved */
-+
-+/* vectors */
-+z_mask0f .req z0
-+
-+z_src .req z1
-+z_src_lo .req z2
-+z_src_hi .req z_src
-+
-+z_dest1 .req z3
-+
-+z_gft1_lo .req z4
-+z_gft1_hi .req z5
-+q_gft1_lo .req q4
-+q_gft1_hi .req q5
-+
-+/* bottom 64-bit of v8..v15 must be preserved if used */
-+z_gft2_lo .req z17
-+z_gft2_hi .req z18
-+q_gft2_lo .req q17
-+q_gft2_hi .req q18
-+
-+z_gft3_lo .req z19
-+z_gft3_hi .req z20
-+q_gft3_lo .req q19
-+q_gft3_hi .req q20
-+
-+z_dest2 .req z27
-+z_dest3 .req z28
-+
-+gf_3vect_dot_prod_sve:
-+ /* less than 16 bytes, return_fail */
-+ cmp x_len, #16
-+ blt .return_fail
-+
-+ mov z_mask0f.b, #0x0f /* z_mask0f = 0x0F0F...0F */
-+ mov x_pos, #0
-+ lsl x_vec, x_vec, #3
-+ ldp x_dest1, x_dest2, [x_dest, #8*0]
-+ ldr x_dest3, [x_dest, #8*2]
-+
-+/* Loop 1: x_len, vector length */
-+.Lloopsve_vl:
-+ whilelo p0.b, x_pos, x_len
-+ b.none .return_pass
-+
-+ mov x_vec_i, #0 /* clear x_vec_i */
-+ ldr x_ptr, [x_src, x_vec_i] /* x_ptr: src base addr. */
-+
-+ mov z_dest1.b, #0 /* clear z_dest1 */
-+ mov z_dest2.b, #0 /* clear z_dest2 */
-+ mov z_dest3.b, #0 /* clear z_dest3 */
-+
-+ /* gf_tbl base = (x_tbl + dest_idx * x_vec * 32) */
-+ mov x_tbl1, x_tbl /* reset x_tbl1 */
-+ add x_tbl2, x_tbl1, x_vec, LSL #2 /* reset x_tbl2 */
-+ add x_tbl3, x_tbl2, x_vec, LSL #2 /* reset x_tbl3 */
-+
-+/* Loop 2: x_vec, number of source vectors (ie. data blocks) */
-+.Lloopsve_vl_vects:
-+ /* load src data, governed by p0 */
-+ ld1b z_src.b, p0/z, [x_ptr, x_pos] /* load from: src base + pos offset */
-+ /* split 4-bit lo; 4-bit hi */
-+ and z_src_lo.d, z_src.d, z_mask0f.d
-+ lsr z_src_hi.b, z_src.b, #4
-+
-+
-+ /* gf_tbl addr: (x_tbl + dest_idx * x_vec * 32) + src_vec_idx * 32 */
-+ /* load gf_table's */
-+ ldp q_gft1_lo, q_gft1_hi, [x_tbl1], #32 /* x_tbl1 is post-added by #32 for each src vect */
-+ ldp q_gft2_lo, q_gft2_hi, [x_tbl2], #32
-+
-+ /* prefetch */
-+ prfb pldl2keep, p0, [x_tbl1]
-+ prfb pldl2keep, p0, [x_tbl2]
-+
-+ /* calc for next */
-+ add x_vec_i, x_vec_i, #8 /* move x_vec_i to next */
-+ ldr x_ptr, [x_src, x_vec_i] /* x_ptr: src base addr. */
-+
-+ /* dest 1 */
-+ /* table indexing, ie. gf(2^8) multiplication */
-+ tbl z_gft1_lo.b, {z_gft1_lo.b}, z_src_lo.b
-+ tbl z_gft1_hi.b, {z_gft1_hi.b}, z_src_hi.b
-+ /* exclusive or, ie. gf(2^8) add */
-+ eor z_dest1.d, z_gft1_lo.d, z_dest1.d
-+ eor z_dest1.d, z_dest1.d, z_gft1_hi.d
-+
-+ ldp q_gft3_lo, q_gft3_hi, [x_tbl3], #32
-+ prfb pldl2keep, p0, [x_tbl3]
-+
-+ /* dest 2 */
-+ tbl z_gft2_lo.b, {z_gft2_lo.b}, z_src_lo.b
-+ tbl z_gft2_hi.b, {z_gft2_hi.b}, z_src_hi.b
-+ eor z_dest2.d, z_gft2_lo.d, z_dest2.d
-+ eor z_dest2.d, z_dest2.d, z_gft2_hi.d
-+
-+ /* dest 3 */
-+ tbl z_gft3_lo.b, {z_gft3_lo.b}, z_src_lo.b
-+ tbl z_gft3_hi.b, {z_gft3_hi.b}, z_src_hi.b
-+ eor z_dest3.d, z_gft3_lo.d, z_dest3.d
-+ eor z_dest3.d, z_dest3.d, z_gft3_hi.d
-+
-+ cmp x_vec_i, x_vec
-+ blt .Lloopsve_vl_vects
-+/* end of Loop 2 */
-+
-+ /* store dest data, governed by p0 */
-+ st1b z_dest1.b, p0, [x_dest1, x_pos]
-+ st1b z_dest2.b, p0, [x_dest2, x_pos]
-+ st1b z_dest3.b, p0, [x_dest3, x_pos]
-+
-+ /* increment one vector length */
-+ incb x_pos
-+ b .Lloopsve_vl
-+/* end of Loop 1 */
-+
-+.return_pass:
-+ mov w_ret, #0
-+ ret
-+
-+.return_fail:
-+ mov w_ret, #1
-+ ret
-diff --git a/erasure_code/aarch64/gf_3vect_mad_sve.S b/erasure_code/aarch64/gf_3vect_mad_sve.S
-new file mode 100644
-index 00000000..52c2ffc5
---- /dev/null
-+++ b/erasure_code/aarch64/gf_3vect_mad_sve.S
-@@ -0,0 +1,171 @@
-+/**************************************************************
-+ Copyright (c) 2021 Linaro Ltd.
-+
-+ Redistribution and use in source and binary forms, with or without
-+ modification, are permitted provided that the following conditions
-+ are met:
-+ * Redistributions of source code must retain the above copyright
-+ notice, this list of conditions and the following disclaimer.
-+ * Redistributions in binary form must reproduce the above copyright
-+ notice, this list of conditions and the following disclaimer in
-+ the documentation and/or other materials provided with the
-+ distribution.
-+ * Neither the name of Huawei Corporation nor the names of its
-+ contributors may be used to endorse or promote products derived
-+ from this software without specific prior written permission.
-+
-+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+**********************************************************************/
-+.text
-+.align 6
-+.arch armv8-a+sve
-+
-+.global gf_3vect_mad_sve
-+.type gf_3vect_mad_sve, %function
-+
-+/* gf_3vect_mad_sve(int len, int vec, int vec_i, unsigned char *gftbls,
-+ unsigned char *src, unsigned char **dest);
-+ */
-+/* arguments */
-+x_len .req x0
-+x_vec .req x1
-+x_vec_i .req x2
-+x_tbl .req x3
-+x_src .req x4
-+x_dest .req x5
-+
-+/* returns */
-+w_ret .req w0
-+
-+/* local variables */
-+x_pos .req x6
-+x_dest2 .req x7
-+x_dest3 .req x8
-+x_dest1 .req x12
-+
-+/* vectors */
-+z_mask0f .req z0
-+
-+z_src .req z1
-+z_src_lo .req z2
-+z_src_hi .req z_src
-+
-+z_dest1 .req z3
-+
-+z_tmp_lo .req z4
-+z_tmp_hi .req z5
-+
-+z_gft1_lo .req z6
-+z_gft1_hi .req z7
-+q_gft1_lo .req q6
-+q_gft1_hi .req q7
-+
-+/* bottom 64-bit of v8..v15 must be preserved if used */
-+z_gft2_lo .req z17
-+z_gft2_hi .req z18
-+q_gft2_lo .req q17
-+q_gft2_hi .req q18
-+
-+z_gft3_lo .req z19
-+z_gft3_hi .req z20
-+q_gft3_lo .req q19
-+q_gft3_hi .req q20
-+
-+z_dest2 .req z27
-+z_dest3 .req z28
-+
-+gf_3vect_mad_sve:
-+ /* less than 16 bytes, return_fail */
-+ cmp x_len, #16
-+ blt .return_fail
-+
-+ mov z_mask0f.b, #0x0f /* z_mask0f = 0x0F0F...0F */
-+ /* load table 1 */
-+ add x_tbl, x_tbl, x_vec_i, LSL #5 /* x_tbl += x_vec_i * 2^5 */
-+
-+ /* Load table 1 with NEON instruction ldp */
-+ ldp q_gft1_lo, q_gft1_hi, [x_tbl]
-+ /* load table 2 */
-+ add x_tbl, x_tbl, x_vec, LSL #5 /* x_tbl += x_vec * 2^5 */
-+ ldp q_gft2_lo, q_gft2_hi, [x_tbl]
-+ /* load table 3 */
-+ add x_tbl, x_tbl, x_vec, LSL #5 /* x_tbl += x_vec * 2^5 */
-+ ldp q_gft3_lo, q_gft3_hi, [x_tbl]
-+
-+ ldr x_dest1, [x_dest, #8*0] /* pointer to dest1 */
-+ ldr x_dest2, [x_dest, #8*1] /* pointer to dest2 */
-+ ldr x_dest3, [x_dest, #8*2] /* pointer to dest3 */
-+
-+ mov x_pos, #0
-+
-+ /* vector length agnostic */
-+.Lloopsve_vl:
-+ whilelo p0.b, x_pos, x_len
-+ b.none .return_pass
-+
-+ /* dest data prefetch */
-+ prfb pldl2strm, p0, [x_dest1, x_pos]
-+ prfb pldl2strm, p0, [x_dest2, x_pos]
-+
-+ /* load src data, governed by p0 */
-+ ld1b z_src.b, p0/z, [x_src, x_pos]
-+
-+ /* split 4-bit lo; 4-bit hi */
-+ and z_src_lo.d, z_src.d, z_mask0f.d
-+ lsr z_src_hi.b, z_src.b, #4
-+
-+ /* load dest data, governed by p0 */
-+ ld1b z_dest1.b, p0/z, [x_dest1, x_pos]
-+ ld1b z_dest2.b, p0/z, [x_dest2, x_pos]
-+ prfb pldl2strm, p0, [x_dest3, x_pos]
-+
-+ /* dest1 */
-+ /* table indexing, ie. gf(2^8) multiplication */
-+ tbl z_tmp_lo.b, {z_gft1_lo.b}, z_src_lo.b
-+ tbl z_tmp_hi.b, {z_gft1_hi.b}, z_src_hi.b
-+ /* exclusive or, ie. gf(2^8) add */
-+ eor z_dest1.d, z_tmp_lo.d, z_dest1.d
-+ eor z_dest1.d, z_tmp_hi.d, z_dest1.d
-+
-+ /* dest2 */
-+ tbl z_tmp_lo.b, {z_gft2_lo.b}, z_src_lo.b
-+ tbl z_tmp_hi.b, {z_gft2_hi.b}, z_src_hi.b
-+
-+ ld1b z_dest3.b, p0/z, [x_dest3, x_pos]
-+ /* store dest data, governed by p0 */
-+ st1b z_dest1.b, p0, [x_dest1, x_pos]
-+
-+ eor z_dest2.d, z_tmp_lo.d, z_dest2.d
-+ eor z_dest2.d, z_tmp_hi.d, z_dest2.d
-+
-+ /* dest3 */
-+ tbl z_tmp_lo.b, {z_gft3_lo.b}, z_src_lo.b
-+ tbl z_tmp_hi.b, {z_gft3_hi.b}, z_src_hi.b
-+ eor z_dest3.d, z_tmp_lo.d, z_dest3.d
-+ eor z_dest3.d, z_tmp_hi.d, z_dest3.d
-+
-+ /* store dest data, governed by p0 */
-+ st1b z_dest2.b, p0, [x_dest2, x_pos]
-+ st1b z_dest3.b, p0, [x_dest3, x_pos]
-+ /* increment one vector length */
-+ incb x_pos
-+
-+ b .Lloopsve_vl
-+
-+.return_pass:
-+ mov w_ret, #0
-+ ret
-+
-+.return_fail:
-+ mov w_ret, #1
-+ ret
-diff --git a/erasure_code/aarch64/gf_4vect_dot_prod_sve.S b/erasure_code/aarch64/gf_4vect_dot_prod_sve.S
-new file mode 100644
-index 00000000..ae7cdcbe
---- /dev/null
-+++ b/erasure_code/aarch64/gf_4vect_dot_prod_sve.S
-@@ -0,0 +1,204 @@
-+/*************************************************************
-+ Copyright (c) 2021 Linaro Ltd.
-+
-+ Redistribution and use in source and binary forms, with or without
-+ modification, are permitted provided that the following conditions
-+ are met:
-+ * Redistributions of source code must retain the above copyright
-+ notice, this list of conditions and the following disclaimer.
-+ * Redistributions in binary form must reproduce the above copyright
-+ notice, this list of conditions and the following disclaimer in
-+ the documentation and/or other materials provided with the
-+ distribution.
-+ * Neither the name of Huawei Corporation nor the names of its
-+ contributors may be used to endorse or promote products derived
-+ from this software without specific prior written permission.
-+
-+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+**********************************************************************/
-+.text
-+.align 6
-+.arch armv8-a+sve
-+
-+.global gf_4vect_dot_prod_sve
-+.type gf_4vect_dot_prod_sve, %function
-+/* void gf_4vect_dot_prod_sve(int len, int vlen, unsigned char *gftbls,
-+ unsigned char **src, unsigned char **dest);
-+ */
-+
-+/* arguments */
-+x_len .req x0 /* vector length */
-+x_vec .req x1 /* number of source vectors (ie. data blocks) */
-+x_tbl .req x2
-+x_src .req x3
-+x_dest .req x4
-+
-+/* returns */
-+w_ret .req w0
-+
-+/* local variables */
-+x_vec_i .req x5
-+x_ptr .req x6
-+x_pos .req x7
-+
-+x_tbl1 .req x8
-+x_tbl2 .req x9
-+x_tbl3 .req x10
-+x_tbl4 .req x11
-+x_dest1 .req x12
-+x_dest2 .req x13
-+x_dest3 .req x14
-+x_dest4 .req x_dest /* reused */
-+
-+/* r16,r17,r18,r29,r30: special role registers, avoided */
-+/* r19..r29 and SP must be preserved */
-+
-+/* vectors */
-+z_mask0f .req z0
-+
-+z_src .req z1
-+z_src_lo .req z2
-+z_src_hi .req z_src
-+
-+z_dest1 .req z3
-+
-+z_gft1_lo .req z4
-+z_gft1_hi .req z5
-+q_gft1_lo .req q4
-+q_gft1_hi .req q5
-+
-+/* bottom 64-bit of v8..v15 must be preserved if used */
-+z_gft2_lo .req z17
-+z_gft2_hi .req z18
-+q_gft2_lo .req q17
-+q_gft2_hi .req q18
-+
-+z_gft3_lo .req z19
-+z_gft3_hi .req z20
-+q_gft3_lo .req q19
-+q_gft3_hi .req q20
-+
-+z_gft4_lo .req z21
-+z_gft4_hi .req z22
-+q_gft4_lo .req q21
-+q_gft4_hi .req q22
-+
-+z_dest2 .req z27
-+z_dest3 .req z28
-+z_dest4 .req z29
-+
-+gf_4vect_dot_prod_sve:
-+ /* less than 16 bytes, return_fail */
-+ cmp x_len, #16
-+ blt .return_fail
-+
-+ mov z_mask0f.b, #0x0f /* z_mask0f = 0x0F0F...0F */
-+ mov x_pos, #0
-+ lsl x_vec, x_vec, #3
-+ ldp x_dest1, x_dest2, [x_dest, #8*0]
-+ ldp x_dest3, x_dest4, [x_dest, #8*2]
-+
-+/* Loop 1: x_len, vector length */
-+.Lloopsve_vl:
-+ whilelo p0.b, x_pos, x_len
-+ b.none .return_pass
-+
-+ mov x_vec_i, #0 /* clear x_vec_i */
-+ ldr x_ptr, [x_src, x_vec_i] /* x_ptr: src base addr. */
-+
-+ mov z_dest1.b, #0 /* clear z_dest1 */
-+ mov z_dest2.b, #0 /* clear z_dest2 */
-+ mov z_dest3.b, #0 /* clear z_dest3 */
-+ mov z_dest4.b, #0 /* clear z_dest4 */
-+
-+ /* gf_tbl base = (x_tbl + dest_idx * x_vec * 32) */
-+ mov x_tbl1, x_tbl /* reset x_tbl1 */
-+ add x_tbl2, x_tbl1, x_vec, LSL #2 /* reset x_tbl2 */
-+ add x_tbl3, x_tbl2, x_vec, LSL #2 /* reset x_tbl3 */
-+ add x_tbl4, x_tbl3, x_vec, LSL #2 /* reset x_tbl4 */
-+
-+/* Loop 2: x_vec, number of source vectors (ie. data blocks) */
-+.Lloopsve_vl_vects:
-+ /* load src data, governed by p0 */
-+ ld1b z_src.b, p0/z, [x_ptr, x_pos] /* load from: src base + pos offset */
-+ /* split 4-bit lo; 4-bit hi */
-+ and z_src_lo.d, z_src.d, z_mask0f.d
-+ lsr z_src_hi.b, z_src.b, #4
-+
-+
-+ /* gf_tbl addr: (x_tbl + dest_idx * x_vec * 32) + src_vec_idx * 32 */
-+ /* load gf_table's */
-+ ldp q_gft1_lo, q_gft1_hi, [x_tbl1], #32 /* x_tbl1 is post-added by #32 for each src vect */
-+ ldp q_gft2_lo, q_gft2_hi, [x_tbl2], #32
-+
-+ /* prefetch */
-+ prfb pldl2keep, p0, [x_tbl1]
-+ prfb pldl2keep, p0, [x_tbl2]
-+
-+ /* calc for next */
-+ add x_vec_i, x_vec_i, #8 /* move x_vec_i to next */
-+ ldr x_ptr, [x_src, x_vec_i] /* x_ptr: src base addr. */
-+
-+ /* dest 1 */
-+ /* table indexing, ie. gf(2^8) multiplication */
-+ tbl z_gft1_lo.b, {z_gft1_lo.b}, z_src_lo.b
-+ tbl z_gft1_hi.b, {z_gft1_hi.b}, z_src_hi.b
-+ /* exclusive or, ie. gf(2^8) add */
-+ eor z_dest1.d, z_gft1_lo.d, z_dest1.d
-+ eor z_dest1.d, z_dest1.d, z_gft1_hi.d
-+
-+ ldp q_gft3_lo, q_gft3_hi, [x_tbl3], #32
-+ ldp q_gft4_lo, q_gft4_hi, [x_tbl4], #32
-+ prfb pldl2keep, p0, [x_tbl3]
-+ prfb pldl2keep, p0, [x_tbl4]
-+
-+ /* dest 2 */
-+ tbl z_gft2_lo.b, {z_gft2_lo.b}, z_src_lo.b
-+ tbl z_gft2_hi.b, {z_gft2_hi.b}, z_src_hi.b
-+ eor z_dest2.d, z_gft2_lo.d, z_dest2.d
-+ eor z_dest2.d, z_dest2.d, z_gft2_hi.d
-+
-+ /* dest 3 */
-+ tbl z_gft3_lo.b, {z_gft3_lo.b}, z_src_lo.b
-+ tbl z_gft3_hi.b, {z_gft3_hi.b}, z_src_hi.b
-+ eor z_dest3.d, z_gft3_lo.d, z_dest3.d
-+ eor z_dest3.d, z_dest3.d, z_gft3_hi.d
-+
-+ /* dest 4 */
-+ tbl z_gft4_lo.b, {z_gft4_lo.b}, z_src_lo.b
-+ tbl z_gft4_hi.b, {z_gft4_hi.b}, z_src_hi.b
-+ eor z_dest4.d, z_gft4_lo.d, z_dest4.d
-+ eor z_dest4.d, z_dest4.d, z_gft4_hi.d
-+
-+ cmp x_vec_i, x_vec
-+ blt .Lloopsve_vl_vects
-+/* end of Loop 2 */
-+
-+ /* store dest data, governed by p0 */
-+ st1b z_dest1.b, p0, [x_dest1, x_pos]
-+ st1b z_dest2.b, p0, [x_dest2, x_pos]
-+ st1b z_dest3.b, p0, [x_dest3, x_pos]
-+ st1b z_dest4.b, p0, [x_dest4, x_pos]
-+
-+ /* increment one vector length */
-+ incb x_pos
-+ b .Lloopsve_vl
-+/* end of Loop 1 */
-+
-+.return_pass:
-+ mov w_ret, #0
-+ ret
-+
-+.return_fail:
-+ mov w_ret, #1
-+ ret
-diff --git a/erasure_code/aarch64/gf_4vect_mad_sve.S b/erasure_code/aarch64/gf_4vect_mad_sve.S
-new file mode 100644
-index 00000000..8bf682c5
---- /dev/null
-+++ b/erasure_code/aarch64/gf_4vect_mad_sve.S
-@@ -0,0 +1,190 @@
-+/**************************************************************
-+ Copyright (c) 2021 Linaro Ltd.
-+
-+ Redistribution and use in source and binary forms, with or without
-+ modification, are permitted provided that the following conditions
-+ are met:
-+ * Redistributions of source code must retain the above copyright
-+ notice, this list of conditions and the following disclaimer.
-+ * Redistributions in binary form must reproduce the above copyright
-+ notice, this list of conditions and the following disclaimer in
-+ the documentation and/or other materials provided with the
-+ distribution.
-+ * Neither the name of Huawei Corporation nor the names of its
-+ contributors may be used to endorse or promote products derived
-+ from this software without specific prior written permission.
-+
-+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+**********************************************************************/
-+.text
-+.align 6
-+.arch armv8-a+sve
-+
-+.global gf_4vect_mad_sve
-+.type gf_4vect_mad_sve, %function
-+
-+/* gf_4vect_mad_sve(int len, int vec, int vec_i, unsigned char *gftbls,
-+ unsigned char *src, unsigned char **dest);
-+ */
-+/* arguments */
-+x_len .req x0
-+x_vec .req x1
-+x_vec_i .req x2
-+x_tbl .req x3
-+x_src .req x4
-+x_dest .req x5
-+
-+/* returns */
-+w_ret .req w0
-+
-+/* local variables */
-+x_pos .req x6
-+x_dest2 .req x7
-+x_dest3 .req x8
-+x_dest4 .req x9
-+x_dest1 .req x12
-+
-+/* vectors */
-+z_mask0f .req z0
-+
-+z_src .req z1
-+z_src_lo .req z2
-+z_src_hi .req z_src
-+
-+z_dest1 .req z3
-+
-+z_tmp_lo .req z4
-+z_tmp_hi .req z5
-+
-+z_gft1_lo .req z6
-+z_gft1_hi .req z7
-+q_gft1_lo .req q6
-+q_gft1_hi .req q7
-+
-+/* bottom 64-bit of v8..v15 must be preserved if used */
-+z_gft2_lo .req z17
-+z_gft2_hi .req z18
-+q_gft2_lo .req q17
-+q_gft2_hi .req q18
-+
-+z_gft3_lo .req z19
-+z_gft3_hi .req z20
-+q_gft3_lo .req q19
-+q_gft3_hi .req q20
-+
-+z_gft4_lo .req z21
-+z_gft4_hi .req z22
-+q_gft4_lo .req q21
-+q_gft4_hi .req q22
-+
-+z_dest2 .req z27
-+z_dest3 .req z28
-+z_dest4 .req z29
-+
-+gf_4vect_mad_sve:
-+ /* less than 16 bytes, return_fail */
-+ cmp x_len, #16
-+ blt .return_fail
-+
-+ mov z_mask0f.b, #0x0f /* z_mask0f = 0x0F0F...0F */
-+ /* load table 1 */
-+ add x_tbl, x_tbl, x_vec_i, LSL #5 /* x_tbl += x_vec_i * 2^5 */
-+
-+ /* Load table 1 with NEON instruction ldp */
-+ ldp q_gft1_lo, q_gft1_hi, [x_tbl]
-+ /* load table 2 */
-+ add x_tbl, x_tbl, x_vec, LSL #5 /* x_tbl += x_vec * 2^5 */
-+ ldp q_gft2_lo, q_gft2_hi, [x_tbl]
-+ /* load table 3 */
-+ add x_tbl, x_tbl, x_vec, LSL #5 /* x_tbl += x_vec * 2^5 */
-+ ldp q_gft3_lo, q_gft3_hi, [x_tbl]
-+ /* load table 4 */
-+ add x_tbl, x_tbl, x_vec, LSL #5 /* x_tbl += x_vec * 2^5 */
-+ ldp q_gft4_lo, q_gft4_hi, [x_tbl]
-+
-+ ldr x_dest1, [x_dest, #8*0] /* pointer to dest1 */
-+ ldr x_dest2, [x_dest, #8*1] /* pointer to dest2 */
-+ ldr x_dest3, [x_dest, #8*2] /* pointer to dest3 */
-+ ldr x_dest4, [x_dest, #8*3] /* pointer to dest4 */
-+
-+ mov x_pos, #0
-+
-+ /* vector length agnostic */
-+.Lloopsve_vl:
-+ whilelo p0.b, x_pos, x_len
-+ b.none .return_pass
-+
-+ prfb pldl2strm, p0, [x_dest1, x_pos]
-+ prfb pldl2strm, p0, [x_dest2, x_pos]
-+
-+ /* load src data, governed by p0 */
-+ ld1b z_src.b, p0/z, [x_src, x_pos]
-+
-+ /* split 4-bit lo; 4-bit hi */
-+ and z_src_lo.d, z_src.d, z_mask0f.d
-+ lsr z_src_hi.b, z_src.b, #4
-+
-+ /* load dest data, governed by p0 */
-+ ld1b z_dest1.b, p0/z, [x_dest1, x_pos]
-+ ld1b z_dest2.b, p0/z, [x_dest2, x_pos]
-+
-+ prfb pldl2strm, p0, [x_dest3, x_pos]
-+ prfb pldl2strm, p0, [x_dest4, x_pos]
-+
-+ /* dest1 */
-+ /* table indexing, ie. gf(2^8) multiplication */
-+ tbl z_tmp_lo.b, {z_gft1_lo.b}, z_src_lo.b
-+ tbl z_tmp_hi.b, {z_gft1_hi.b}, z_src_hi.b
-+ /* exclusive or, ie. gf(2^8) add */
-+ eor z_dest1.d, z_tmp_lo.d, z_dest1.d
-+ eor z_dest1.d, z_tmp_hi.d, z_dest1.d
-+
-+ ld1b z_dest3.b, p0/z, [x_dest3, x_pos]
-+ ld1b z_dest4.b, p0/z, [x_dest4, x_pos]
-+
-+ /* dest2 */
-+ tbl z_tmp_lo.b, {z_gft2_lo.b}, z_src_lo.b
-+ tbl z_tmp_hi.b, {z_gft2_hi.b}, z_src_hi.b
-+ eor z_dest2.d, z_tmp_lo.d, z_dest2.d
-+ eor z_dest2.d, z_tmp_hi.d, z_dest2.d
-+
-+ /* dest3 */
-+ tbl z_tmp_lo.b, {z_gft3_lo.b}, z_src_lo.b
-+ tbl z_tmp_hi.b, {z_gft3_hi.b}, z_src_hi.b
-+ eor z_dest3.d, z_tmp_lo.d, z_dest3.d
-+ eor z_dest3.d, z_tmp_hi.d, z_dest3.d
-+
-+ /* store dest data, governed by p0 */
-+ st1b z_dest1.b, p0, [x_dest1, x_pos]
-+ st1b z_dest2.b, p0, [x_dest2, x_pos]
-+
-+ /* dest4 */
-+ tbl z_tmp_lo.b, {z_gft4_lo.b}, z_src_lo.b
-+ tbl z_tmp_hi.b, {z_gft4_hi.b}, z_src_hi.b
-+ eor z_dest4.d, z_tmp_lo.d, z_dest4.d
-+ eor z_dest4.d, z_tmp_hi.d, z_dest4.d
-+
-+ st1b z_dest3.b, p0, [x_dest3, x_pos]
-+ st1b z_dest4.b, p0, [x_dest4, x_pos]
-+ /* increment one vector length */
-+ incb x_pos
-+
-+ b .Lloopsve_vl
-+
-+.return_pass:
-+ mov w_ret, #0
-+ ret
-+
-+.return_fail:
-+ mov w_ret, #1
-+ ret
-diff --git a/erasure_code/aarch64/gf_5vect_dot_prod_sve.S b/erasure_code/aarch64/gf_5vect_dot_prod_sve.S
-new file mode 100644
-index 00000000..ae999ff4
---- /dev/null
-+++ b/erasure_code/aarch64/gf_5vect_dot_prod_sve.S
-@@ -0,0 +1,233 @@
-+/*************************************************************
-+ Copyright (c) 2021 Linaro Ltd.
-+
-+ Redistribution and use in source and binary forms, with or without
-+ modification, are permitted provided that the following conditions
-+ are met:
-+ * Redistributions of source code must retain the above copyright
-+ notice, this list of conditions and the following disclaimer.
-+ * Redistributions in binary form must reproduce the above copyright
-+ notice, this list of conditions and the following disclaimer in
-+ the documentation and/or other materials provided with the
-+ distribution.
-+ * Neither the name of Huawei Corporation nor the names of its
-+ contributors may be used to endorse or promote products derived
-+ from this software without specific prior written permission.
-+
-+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+**********************************************************************/
-+.text
-+.align 6
-+.arch armv8-a+sve
-+
-+.global gf_5vect_dot_prod_sve
-+.type gf_5vect_dot_prod_sve, %function
-+/* void gf_5vect_dot_prod_sve(int len, int vlen, unsigned char *gftbls,
-+ unsigned char **src, unsigned char **dest);
-+ */
-+
-+/* arguments */
-+x_len .req x0 /* vector length */
-+x_vec .req x1 /* number of source vectors (ie. data blocks) */
-+x_tbl .req x2
-+x_src .req x3
-+x_dest .req x4
-+
-+/* returns */
-+w_ret .req w0
-+
-+/* local variables */
-+x_vec_i .req x5
-+x_ptr .req x6
-+x_pos .req x7
-+
-+x_tbl1 .req x8
-+x_tbl2 .req x9
-+x_tbl3 .req x10
-+x_tbl4 .req x11
-+x_tbl5 .req x12
-+x_dest1 .req x13
-+x_dest2 .req x14
-+x_dest4 .req x15
-+x_dest5 .req x_dest /* reused */
-+
-+/* r16,r17,r18,r29,r30: special role registers, avoided */
-+/* r19..r29 and SP must be preserved */
-+x_dest3 .req x19
-+
-+/* vectors */
-+z_mask0f .req z0
-+
-+z_src .req z1
-+z_src_lo .req z2
-+z_src_hi .req z_src
-+
-+z_dest1 .req z3
-+
-+z_gft1_lo .req z4
-+z_gft1_hi .req z5
-+q_gft1_lo .req q4
-+q_gft1_hi .req q5
-+
-+/* bottom 64-bit of v8..v15 must be preserved if used */
-+z_gft2_lo .req z17
-+z_gft2_hi .req z18
-+q_gft2_lo .req q17
-+q_gft2_hi .req q18
-+
-+z_gft3_lo .req z19
-+z_gft3_hi .req z20
-+q_gft3_lo .req q19
-+q_gft3_hi .req q20
-+
-+z_gft4_lo .req z21
-+z_gft4_hi .req z22
-+q_gft4_lo .req q21
-+q_gft4_hi .req q22
-+
-+z_gft5_lo .req z23
-+z_gft5_hi .req z24
-+q_gft5_lo .req q23
-+q_gft5_hi .req q24
-+
-+z_dest2 .req z27
-+z_dest3 .req z28
-+z_dest4 .req z29
-+z_dest5 .req z30
-+
-+gf_5vect_dot_prod_sve:
-+ /* less than 16 bytes, return_fail */
-+ cmp x_len, #16
-+ blt .return_fail
-+
-+ /* save r19..r29 */
-+ sub sp, sp, #16 /* alignment */
-+ str x19, [sp]
-+
-+ mov z_mask0f.b, #0x0f /* z_mask0f = 0x0F0F...0F */
-+ mov x_pos, #0
-+ lsl x_vec, x_vec, #3
-+ ldp x_dest1, x_dest2, [x_dest, #8*0]
-+ ldp x_dest3, x_dest4, [x_dest, #8*2]
-+ ldr x_dest5, [x_dest, #8*4]
-+
-+/* Loop 1: x_len, vector length */
-+.Lloopsve_vl:
-+ whilelo p0.b, x_pos, x_len
-+ b.none .return_pass
-+
-+ mov x_vec_i, #0 /* clear x_vec_i */
-+ ldr x_ptr, [x_src, x_vec_i] /* x_ptr: src base addr. */
-+
-+ mov z_dest1.b, #0 /* clear z_dest1 */
-+ mov z_dest2.b, #0 /* clear z_dest2 */
-+ mov z_dest3.b, #0 /* clear z_dest3 */
-+ mov z_dest4.b, #0 /* clear z_dest4 */
-+ mov z_dest5.b, #0 /* clear z_dest5 */
-+
-+ /* gf_tbl base = (x_tbl + dest_idx * x_vec * 32) */
-+ mov x_tbl1, x_tbl /* reset x_tbl1 */
-+ add x_tbl2, x_tbl1, x_vec, LSL #2 /* reset x_tbl2 */
-+ add x_tbl3, x_tbl2, x_vec, LSL #2 /* reset x_tbl3 */
-+ add x_tbl4, x_tbl3, x_vec, LSL #2 /* reset x_tbl4 */
-+ add x_tbl5, x_tbl4, x_vec, LSL #2 /* reset x_tbl5 */
-+
-+/* Loop 2: x_vec, number of source vectors (ie. data blocks) */
-+.Lloopsve_vl_vects:
-+ /* load src data, governed by p0 */
-+ ld1b z_src.b, p0/z, [x_ptr, x_pos] /* load from: src base + pos offset */
-+ /* split 4-bit lo; 4-bit hi */
-+ and z_src_lo.d, z_src.d, z_mask0f.d
-+ lsr z_src_hi.b, z_src.b, #4
-+
-+
-+ /* gf_tbl addr: (x_tbl + dest_idx * x_vec * 32) + src_vec_idx * 32 */
-+ /* load gf_table's */
-+ ldp q_gft1_lo, q_gft1_hi, [x_tbl1], #32 /* x_tbl1 is post-added by #32 for each src vect */
-+ ldp q_gft2_lo, q_gft2_hi, [x_tbl2], #32
-+
-+ /* prefetch */
-+ prfb pldl2keep, p0, [x_tbl1]
-+ prfb pldl2keep, p0, [x_tbl2]
-+
-+ /* calc for next */
-+ add x_vec_i, x_vec_i, #8 /* move x_vec_i to next */
-+ ldr x_ptr, [x_src, x_vec_i] /* x_ptr: src base addr. */
-+
-+ /* dest 1 */
-+ /* table indexing, ie. gf(2^8) multiplication */
-+ tbl z_gft1_lo.b, {z_gft1_lo.b}, z_src_lo.b
-+ tbl z_gft1_hi.b, {z_gft1_hi.b}, z_src_hi.b
-+ /* exclusive or, ie. gf(2^8) add */
-+ eor z_dest1.d, z_gft1_lo.d, z_dest1.d
-+ eor z_dest1.d, z_dest1.d, z_gft1_hi.d
-+
-+ ldp q_gft3_lo, q_gft3_hi, [x_tbl3], #32
-+ ldp q_gft4_lo, q_gft4_hi, [x_tbl4], #32
-+ prfb pldl2keep, p0, [x_tbl3]
-+ prfb pldl2keep, p0, [x_tbl4]
-+
-+ /* dest 2 */
-+ tbl z_gft2_lo.b, {z_gft2_lo.b}, z_src_lo.b
-+ tbl z_gft2_hi.b, {z_gft2_hi.b}, z_src_hi.b
-+ eor z_dest2.d, z_gft2_lo.d, z_dest2.d
-+ eor z_dest2.d, z_dest2.d, z_gft2_hi.d
-+
-+ /* dest 3 */
-+ tbl z_gft3_lo.b, {z_gft3_lo.b}, z_src_lo.b
-+ tbl z_gft3_hi.b, {z_gft3_hi.b}, z_src_hi.b
-+ eor z_dest3.d, z_gft3_lo.d, z_dest3.d
-+ eor z_dest3.d, z_dest3.d, z_gft3_hi.d
-+
-+ ldp q_gft5_lo, q_gft5_hi, [x_tbl5], #32
-+ prfb pldl2keep, p0, [x_tbl5]
-+
-+ /* dest 4 */
-+ tbl z_gft4_lo.b, {z_gft4_lo.b}, z_src_lo.b
-+ tbl z_gft4_hi.b, {z_gft4_hi.b}, z_src_hi.b
-+ eor z_dest4.d, z_gft4_lo.d, z_dest4.d
-+ eor z_dest4.d, z_dest4.d, z_gft4_hi.d
-+
-+ /* dest 5 */
-+ tbl z_gft5_lo.b, {z_gft5_lo.b}, z_src_lo.b
-+ tbl z_gft5_hi.b, {z_gft5_hi.b}, z_src_hi.b
-+ eor z_dest5.d, z_gft5_lo.d, z_dest5.d
-+ eor z_dest5.d, z_dest5.d, z_gft5_hi.d
-+
-+ cmp x_vec_i, x_vec
-+ blt .Lloopsve_vl_vects
-+/* end of Loop 2 */
-+
-+ /* store dest data, governed by p0 */
-+ st1b z_dest1.b, p0, [x_dest1, x_pos]
-+ st1b z_dest2.b, p0, [x_dest2, x_pos]
-+ st1b z_dest3.b, p0, [x_dest3, x_pos]
-+ st1b z_dest4.b, p0, [x_dest4, x_pos]
-+ st1b z_dest5.b, p0, [x_dest5, x_pos]
-+
-+ /* increment one vector length */
-+ incb x_pos
-+ b .Lloopsve_vl
-+/* end of Loop 1 */
-+
-+.return_pass:
-+ /* restore r19..r29 */
-+ ldr x19, [sp]
-+ add sp, sp, #16
-+
-+ mov w_ret, #0
-+ ret
-+
-+.return_fail:
-+ mov w_ret, #1
-+ ret
-diff --git a/erasure_code/aarch64/gf_5vect_mad_sve.S b/erasure_code/aarch64/gf_5vect_mad_sve.S
-new file mode 100644
-index 00000000..82e88d98
---- /dev/null
-+++ b/erasure_code/aarch64/gf_5vect_mad_sve.S
-@@ -0,0 +1,214 @@
-+/**************************************************************
-+ Copyright (c) 2021 Linaro Ltd.
-+
-+ Redistribution and use in source and binary forms, with or without
-+ modification, are permitted provided that the following conditions
-+ are met:
-+ * Redistributions of source code must retain the above copyright
-+ notice, this list of conditions and the following disclaimer.
-+ * Redistributions in binary form must reproduce the above copyright
-+ notice, this list of conditions and the following disclaimer in
-+ the documentation and/or other materials provided with the
-+ distribution.
-+ * Neither the name of Huawei Corporation nor the names of its
-+ contributors may be used to endorse or promote products derived
-+ from this software without specific prior written permission.
-+
-+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+**********************************************************************/
-+.text
-+.align 6
-+.arch armv8-a+sve
-+
-+.global gf_5vect_mad_sve
-+.type gf_5vect_mad_sve, %function
-+
-+/* gf_5vect_mad_sve(int len, int vec, int vec_i, unsigned char *gftbls,
-+ unsigned char *src, unsigned char **dest);
-+ */
-+/* arguments */
-+x_len .req x0
-+x_vec .req x1
-+x_vec_i .req x2
-+x_tbl .req x3
-+x_src .req x4
-+x_dest .req x5
-+
-+/* returns */
-+w_ret .req w0
-+
-+/* local variables */
-+x_pos .req x6
-+x_dest2 .req x7
-+x_dest3 .req x8
-+x_dest4 .req x9
-+x_dest5 .req x10
-+x_dest1 .req x12
-+
-+/* vectors */
-+z_mask0f .req z0
-+
-+z_src .req z1
-+z_src_lo .req z2
-+z_src_hi .req z_src
-+
-+z_dest1 .req z3
-+
-+z_tmp_lo .req z4
-+z_tmp_hi .req z5
-+
-+z_gft1_lo .req z6
-+z_gft1_hi .req z7
-+q_gft1_lo .req q6
-+q_gft1_hi .req q7
-+
-+/* bottom 64-bit of v8..v15 must be preserved if used */
-+z_gft2_lo .req z17
-+z_gft2_hi .req z18
-+q_gft2_lo .req q17
-+q_gft2_hi .req q18
-+
-+z_gft3_lo .req z19
-+z_gft3_hi .req z20
-+q_gft3_lo .req q19
-+q_gft3_hi .req q20
-+
-+z_gft4_lo .req z21
-+z_gft4_hi .req z22
-+q_gft4_lo .req q21
-+q_gft4_hi .req q22
-+
-+z_gft5_lo .req z23
-+z_gft5_hi .req z24
-+q_gft5_lo .req q23
-+q_gft5_hi .req q24
-+
-+z_dest2 .req z27
-+z_dest3 .req z28
-+z_dest4 .req z29
-+z_dest5 .req z30
-+
-+gf_5vect_mad_sve:
-+ /* less than 16 bytes, return_fail */
-+ cmp x_len, #16
-+ blt .return_fail
-+
-+ mov z_mask0f.b, #0x0f /* z_mask0f = 0x0F0F...0F */
-+ /* load table 1 */
-+ add x_tbl, x_tbl, x_vec_i, LSL #5 /* x_tbl += x_vec_i * 2^5 */
-+
-+ /* Load with NEON instruction ldp */
-+ ldp q_gft1_lo, q_gft1_hi, [x_tbl]
-+ /* load table 2 */
-+ add x_tbl, x_tbl, x_vec, LSL #5 /* x_tbl += x_vec * 2^5 */
-+ ldp q_gft2_lo, q_gft2_hi, [x_tbl]
-+ /* load table 3 */
-+ add x_tbl, x_tbl, x_vec, LSL #5 /* x_tbl += x_vec * 2^5 */
-+ ldp q_gft3_lo, q_gft3_hi, [x_tbl]
-+ /* load table 4 */
-+ add x_tbl, x_tbl, x_vec, LSL #5 /* x_tbl += x_vec * 2^5 */
-+ ldp q_gft4_lo, q_gft4_hi, [x_tbl]
-+ /* load table 5 */
-+ add x_tbl, x_tbl, x_vec, LSL #5 /* x_tbl += x_vec * 2^5 */
-+ ldp q_gft5_lo, q_gft5_hi, [x_tbl]
-+
-+ ldr x_dest1, [x_dest, #8*0] /* pointer to dest1 */
-+ ldr x_dest2, [x_dest, #8*1] /* pointer to dest2 */
-+ ldr x_dest3, [x_dest, #8*2] /* pointer to dest3 */
-+ ldr x_dest4, [x_dest, #8*3] /* pointer to dest4 */
-+ ldr x_dest5, [x_dest, #8*4] /* pointer to dest5 */
-+
-+ mov x_pos, #0
-+
-+ /* vector length agnostic */
-+.Lloopsve_vl:
-+ whilelo p0.b, x_pos, x_len
-+ b.none .return_pass
-+
-+ prfb pldl2strm, p0, [x_dest1, x_pos]
-+ prfb pldl2strm, p0, [x_dest2, x_pos]
-+
-+ /* load src data, governed by p0 */
-+ ld1b z_src.b, p0/z, [x_src, x_pos]
-+
-+ /* split 4-bit lo; 4-bit hi */
-+ and z_src_lo.d, z_src.d, z_mask0f.d
-+ lsr z_src_hi.b, z_src.b, #4
-+
-+ /* load dest data, governed by p0 */
-+ ld1b z_dest1.b, p0/z, [x_dest1, x_pos]
-+ ld1b z_dest2.b, p0/z, [x_dest2, x_pos]
-+
-+ prfb pldl2strm, p0, [x_dest3, x_pos]
-+ prfb pldl2strm, p0, [x_dest4, x_pos]
-+
-+ /* dest1 */
-+ /* table indexing, ie. gf(2^8) multiplication */
-+ tbl z_tmp_lo.b, {z_gft1_lo.b}, z_src_lo.b
-+ tbl z_tmp_hi.b, {z_gft1_hi.b}, z_src_hi.b
-+ /* exclusive or, ie. gf(2^8) add */
-+ eor z_dest1.d, z_tmp_lo.d, z_dest1.d
-+ eor z_dest1.d, z_tmp_hi.d, z_dest1.d
-+
-+ ld1b z_dest3.b, p0/z, [x_dest3, x_pos]
-+ ld1b z_dest4.b, p0/z, [x_dest4, x_pos]
-+ prfb pldl2strm, p0, [x_dest5, x_pos]
-+
-+ /* dest2 */
-+ tbl z_tmp_lo.b, {z_gft2_lo.b}, z_src_lo.b
-+ tbl z_tmp_hi.b, {z_gft2_hi.b}, z_src_hi.b
-+ eor z_dest2.d, z_tmp_lo.d, z_dest2.d
-+ eor z_dest2.d, z_tmp_hi.d, z_dest2.d
-+
-+ ld1b z_dest5.b, p0/z, [x_dest5, x_pos]
-+
-+ /* store dest data, governed by p0 */
-+ st1b z_dest1.b, p0, [x_dest1, x_pos]
-+
-+ /* dest3 */
-+ tbl z_tmp_lo.b, {z_gft3_lo.b}, z_src_lo.b
-+ tbl z_tmp_hi.b, {z_gft3_hi.b}, z_src_hi.b
-+ eor z_dest3.d, z_tmp_lo.d, z_dest3.d
-+ eor z_dest3.d, z_tmp_hi.d, z_dest3.d
-+
-+ /* dest4 */
-+ tbl z_tmp_lo.b, {z_gft4_lo.b}, z_src_lo.b
-+ tbl z_tmp_hi.b, {z_gft4_hi.b}, z_src_hi.b
-+ eor z_dest4.d, z_tmp_lo.d, z_dest4.d
-+ eor z_dest4.d, z_tmp_hi.d, z_dest4.d
-+
-+ /* store dest data, governed by p0 */
-+ st1b z_dest2.b, p0, [x_dest2, x_pos]
-+ st1b z_dest3.b, p0, [x_dest3, x_pos]
-+
-+ /* dest5 */
-+ tbl z_tmp_lo.b, {z_gft5_lo.b}, z_src_lo.b
-+ tbl z_tmp_hi.b, {z_gft5_hi.b}, z_src_hi.b
-+ eor z_dest5.d, z_tmp_lo.d, z_dest5.d
-+ eor z_dest5.d, z_tmp_hi.d, z_dest5.d
-+
-+ /* store dest data, governed by p0 */
-+ st1b z_dest4.b, p0, [x_dest4, x_pos]
-+ st1b z_dest5.b, p0, [x_dest5, x_pos]
-+ /* increment one vector length */
-+ incb x_pos
-+
-+ b .Lloopsve_vl
-+
-+.return_pass:
-+ mov w_ret, #0
-+ ret
-+
-+.return_fail:
-+ mov w_ret, #1
-+ ret
-diff --git a/erasure_code/aarch64/gf_6vect_dot_prod_sve.S b/erasure_code/aarch64/gf_6vect_dot_prod_sve.S
-new file mode 100644
-index 00000000..1196bc19
---- /dev/null
-+++ b/erasure_code/aarch64/gf_6vect_dot_prod_sve.S
-@@ -0,0 +1,254 @@
-+/*************************************************************
-+ Copyright (c) 2021 Linaro Ltd.
-+
-+ Redistribution and use in source and binary forms, with or without
-+ modification, are permitted provided that the following conditions
-+ are met:
-+ * Redistributions of source code must retain the above copyright
-+ notice, this list of conditions and the following disclaimer.
-+ * Redistributions in binary form must reproduce the above copyright
-+ notice, this list of conditions and the following disclaimer in
-+ the documentation and/or other materials provided with the
-+ distribution.
-+ * Neither the name of Huawei Corporation nor the names of its
-+ contributors may be used to endorse or promote products derived
-+ from this software without specific prior written permission.
-+
-+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+**********************************************************************/
-+.text
-+.align 6
-+.arch armv8-a+sve
-+
-+.global gf_6vect_dot_prod_sve
-+.type gf_6vect_dot_prod_sve, %function
-+/* void gf_6vect_dot_prod_sve(int len, int vlen, unsigned char *gftbls,
-+ unsigned char **src, unsigned char **dest);
-+ */
-+
-+/* arguments */
-+x_len .req x0 /* vector length */
-+x_vec .req x1 /* number of source vectors (ie. data blocks) */
-+x_tbl .req x2
-+x_src .req x3
-+x_dest .req x4
-+
-+/* returns */
-+w_ret .req w0
-+
-+/* local variables */
-+x_vec_i .req x5
-+x_ptr .req x6
-+x_pos .req x7
-+
-+x_tbl1 .req x8
-+x_tbl2 .req x9
-+x_tbl3 .req x10
-+x_tbl4 .req x11
-+x_tbl5 .req x12
-+x_tbl6 .req x13
-+x_dest1 .req x14
-+x_dest2 .req x15
-+x_dest6 .req x_dest /* reused */
-+
-+/* r16,r17,r18,r29,r30: special role registers, avoided */
-+/* r19..r29 and SP must be preserved */
-+x_dest3 .req x19
-+x_dest4 .req x20
-+x_dest5 .req x21
-+
-+/* vectors */
-+z_mask0f .req z0
-+
-+z_src .req z1
-+z_src_lo .req z2
-+z_src_hi .req z_src
-+
-+z_dest1 .req z3
-+
-+z_gft1_lo .req z4
-+z_gft1_hi .req z5
-+q_gft1_lo .req q4
-+q_gft1_hi .req q5
-+
-+/* bottom 64-bit of v8..v15 must be preserved if used */
-+z_gft2_lo .req z17
-+z_gft2_hi .req z18
-+q_gft2_lo .req q17
-+q_gft2_hi .req q18
-+
-+z_gft3_lo .req z19
-+z_gft3_hi .req z20
-+q_gft3_lo .req q19
-+q_gft3_hi .req q20
-+
-+z_gft4_lo .req z21
-+z_gft4_hi .req z22
-+q_gft4_lo .req q21
-+q_gft4_hi .req q22
-+
-+z_gft5_lo .req z23
-+z_gft5_hi .req z24
-+q_gft5_lo .req q23
-+q_gft5_hi .req q24
-+
-+z_gft6_lo .req z25
-+z_gft6_hi .req z26
-+q_gft6_lo .req q25
-+q_gft6_hi .req q26
-+
-+z_dest2 .req z27
-+z_dest3 .req z28
-+z_dest4 .req z29
-+z_dest5 .req z30
-+z_dest6 .req z31
-+
-+gf_6vect_dot_prod_sve:
-+ /* less than 16 bytes, return_fail */
-+ cmp x_len, #16
-+ blt .return_fail
-+
-+ /* save r19..r29 */
-+ sub sp, sp, #32 /* alignment */
-+ stp x19, x20, [sp]
-+ str x21, [sp, #16]
-+
-+ mov z_mask0f.b, #0x0f /* z_mask0f = 0x0F0F...0F */
-+ mov x_pos, #0
-+ lsl x_vec, x_vec, #3
-+ ldp x_dest1, x_dest2, [x_dest, #8*0]
-+ ldp x_dest3, x_dest4, [x_dest, #8*2]
-+ ldp x_dest5, x_dest6, [x_dest, #8*4] /* x_dest6 reuses x_dest */
-+
-+/* Loop 1: x_len, vector length */
-+.Lloopsve_vl:
-+ whilelo p0.b, x_pos, x_len
-+ b.none .return_pass
-+
-+ mov x_vec_i, #0 /* clear x_vec_i */
-+ ldr x_ptr, [x_src, x_vec_i] /* x_ptr: src base addr. */
-+
-+ mov z_dest1.b, #0 /* clear z_dest1 */
-+ mov z_dest2.b, #0 /* clear z_dest2 */
-+ mov z_dest3.b, #0 /* clear z_dest3 */
-+ mov z_dest4.b, #0 /* clear z_dest4 */
-+ mov z_dest5.b, #0 /* clear z_dest5 */
-+ mov z_dest6.b, #0 /* clear z_dest6 */
-+
-+ /* gf_tbl base = (x_tbl + dest_idx * x_vec * 32) */
-+ mov x_tbl1, x_tbl /* reset x_tbl1 */
-+ add x_tbl2, x_tbl1, x_vec, LSL #2 /* reset x_tbl2 */
-+ add x_tbl3, x_tbl2, x_vec, LSL #2 /* reset x_tbl3 */
-+ add x_tbl4, x_tbl3, x_vec, LSL #2 /* reset x_tbl4 */
-+ add x_tbl5, x_tbl4, x_vec, LSL #2 /* reset x_tbl5 */
-+ add x_tbl6, x_tbl5, x_vec, LSL #2 /* reset x_tbl6 */
-+
-+/* Loop 2: x_vec, number of source vectors (ie. data blocks) */
-+.Lloopsve_vl_vects:
-+ /* load src data, governed by p0 */
-+ ld1b z_src.b, p0/z, [x_ptr, x_pos] /* load from: src base + pos offset */
-+ /* split 4-bit lo; 4-bit hi */
-+ and z_src_lo.d, z_src.d, z_mask0f.d
-+ lsr z_src_hi.b, z_src.b, #4
-+
-+
-+ /* gf_tbl addr: (x_tbl + dest_idx * x_vec * 32) + src_vec_idx * 32 */
-+ /* load gf_table's */
-+ ldp q_gft1_lo, q_gft1_hi, [x_tbl1], #32 /* x_tbl1 is post-added by #32 for each src vect */
-+ ldp q_gft2_lo, q_gft2_hi, [x_tbl2], #32
-+
-+ /* prefetch */
-+ prfb pldl2keep, p0, [x_tbl1]
-+ prfb pldl2keep, p0, [x_tbl2]
-+
-+ /* calc for next and prefetch */
-+ add x_vec_i, x_vec_i, #8 /* move x_vec_i to next */
-+ ldr x_ptr, [x_src, x_vec_i] /* x_ptr: src base addr. */
-+
-+ /* dest 1 */
-+ /* table indexing, ie. gf(2^8) multiplication */
-+ tbl z_gft1_lo.b, {z_gft1_lo.b}, z_src_lo.b
-+ tbl z_gft1_hi.b, {z_gft1_hi.b}, z_src_hi.b
-+ /* exclusive or, ie. gf(2^8) add */
-+ eor z_dest1.d, z_gft1_lo.d, z_dest1.d
-+ eor z_dest1.d, z_dest1.d, z_gft1_hi.d
-+
-+ ldp q_gft3_lo, q_gft3_hi, [x_tbl3], #32
-+ ldp q_gft4_lo, q_gft4_hi, [x_tbl4], #32
-+ prfb pldl2keep, p0, [x_tbl3]
-+ prfb pldl2keep, p0, [x_tbl4]
-+
-+ /* dest 2 */
-+ tbl z_gft2_lo.b, {z_gft2_lo.b}, z_src_lo.b
-+ tbl z_gft2_hi.b, {z_gft2_hi.b}, z_src_hi.b
-+ eor z_dest2.d, z_gft2_lo.d, z_dest2.d
-+ eor z_dest2.d, z_dest2.d, z_gft2_hi.d
-+
-+ /* dest 3 */
-+ tbl z_gft3_lo.b, {z_gft3_lo.b}, z_src_lo.b
-+ tbl z_gft3_hi.b, {z_gft3_hi.b}, z_src_hi.b
-+ eor z_dest3.d, z_gft3_lo.d, z_dest3.d
-+ eor z_dest3.d, z_dest3.d, z_gft3_hi.d
-+
-+ ldp q_gft5_lo, q_gft5_hi, [x_tbl5], #32
-+ ldp q_gft6_lo, q_gft6_hi, [x_tbl6], #32
-+ prfb pldl2keep, p0, [x_tbl5]
-+ prfb pldl2keep, p0, [x_tbl6]
-+
-+ /* dest 4 */
-+ tbl z_gft4_lo.b, {z_gft4_lo.b}, z_src_lo.b
-+ tbl z_gft4_hi.b, {z_gft4_hi.b}, z_src_hi.b
-+ eor z_dest4.d, z_gft4_lo.d, z_dest4.d
-+ eor z_dest4.d, z_dest4.d, z_gft4_hi.d
-+
-+ /* dest 5 */
-+ tbl z_gft5_lo.b, {z_gft5_lo.b}, z_src_lo.b
-+ tbl z_gft5_hi.b, {z_gft5_hi.b}, z_src_hi.b
-+ eor z_dest5.d, z_gft5_lo.d, z_dest5.d
-+ eor z_dest5.d, z_dest5.d, z_gft5_hi.d
-+
-+ /* dest 6 */
-+ tbl z_gft6_lo.b, {z_gft6_lo.b}, z_src_lo.b
-+ tbl z_gft6_hi.b, {z_gft6_hi.b}, z_src_hi.b
-+ eor z_dest6.d, z_gft6_lo.d, z_dest6.d
-+ eor z_dest6.d, z_dest6.d, z_gft6_hi.d
-+
-+ cmp x_vec_i, x_vec
-+ blt .Lloopsve_vl_vects
-+/* end of Loop 2 */
-+
-+ /* store dest data, governed by p0 */
-+ st1b z_dest1.b, p0, [x_dest1, x_pos]
-+ st1b z_dest2.b, p0, [x_dest2, x_pos]
-+ st1b z_dest3.b, p0, [x_dest3, x_pos]
-+ st1b z_dest4.b, p0, [x_dest4, x_pos]
-+ st1b z_dest5.b, p0, [x_dest5, x_pos]
-+ st1b z_dest6.b, p0, [x_dest6, x_pos]
-+
-+ /* increment one vector length */
-+ incb x_pos
-+ b .Lloopsve_vl
-+/* end of Loop 1 */
-+
-+.return_pass:
-+ /* restore r19..r29 */
-+ ldr x21, [sp, #16]
-+ ldp x19, x20, [sp]
-+ add sp, sp, #32
-+
-+ mov w_ret, #0
-+ ret
-+
-+.return_fail:
-+ mov w_ret, #1
-+ ret
-diff --git a/erasure_code/aarch64/gf_6vect_mad_sve.S b/erasure_code/aarch64/gf_6vect_mad_sve.S
-new file mode 100644
-index 00000000..670e664d
---- /dev/null
-+++ b/erasure_code/aarch64/gf_6vect_mad_sve.S
-@@ -0,0 +1,233 @@
-+/**************************************************************
-+ Copyright (c) 2021 Linaro Ltd.
-+
-+ Redistribution and use in source and binary forms, with or without
-+ modification, are permitted provided that the following conditions
-+ are met:
-+ * Redistributions of source code must retain the above copyright
-+ notice, this list of conditions and the following disclaimer.
-+ * Redistributions in binary form must reproduce the above copyright
-+ notice, this list of conditions and the following disclaimer in
-+ the documentation and/or other materials provided with the
-+ distribution.
-+ * Neither the name of Huawei Corporation nor the names of its
-+ contributors may be used to endorse or promote products derived
-+ from this software without specific prior written permission.
-+
-+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+**********************************************************************/
-+.text
-+.align 6
-+.arch armv8-a+sve
-+
-+.global gf_6vect_mad_sve
-+.type gf_6vect_mad_sve, %function
-+
-+/* gf_6vect_mad_sve(int len, int vec, int vec_i, unsigned char *gftbls,
-+ unsigned char *src, unsigned char **dest);
-+ */
-+/* arguments */
-+x_len .req x0
-+x_vec .req x1
-+x_vec_i .req x2
-+x_tbl .req x3
-+x_src .req x4
-+x_dest .req x5
-+
-+/* returns */
-+w_ret .req w0
-+
-+/* local variables */
-+x_pos .req x6
-+x_dest2 .req x7
-+x_dest3 .req x8
-+x_dest4 .req x9
-+x_dest5 .req x10
-+x_dest6 .req x11
-+x_dest1 .req x12
-+
-+/* vectors */
-+z_mask0f .req z0
-+
-+z_src .req z1
-+z_src_lo .req z2
-+z_src_hi .req z_src
-+
-+z_dest1 .req z3
-+
-+z_tmp_lo .req z4
-+z_tmp_hi .req z5
-+
-+z_gft1_lo .req z6
-+z_gft1_hi .req z7
-+q_gft1_lo .req q6
-+q_gft1_hi .req q7
-+
-+/* bottom 64-bit of v8..v15 must be preserved if used */
-+z_gft2_lo .req z17
-+z_gft2_hi .req z18
-+q_gft2_lo .req q17
-+q_gft2_hi .req q18
-+
-+z_gft3_lo .req z19
-+z_gft3_hi .req z20
-+q_gft3_lo .req q19
-+q_gft3_hi .req q20
-+
-+z_gft4_lo .req z21
-+z_gft4_hi .req z22
-+q_gft4_lo .req q21
-+q_gft4_hi .req q22
-+
-+z_gft5_lo .req z23
-+z_gft5_hi .req z24
-+q_gft5_lo .req q23
-+q_gft5_hi .req q24
-+
-+z_gft6_lo .req z25
-+z_gft6_hi .req z26
-+q_gft6_lo .req q25
-+q_gft6_hi .req q26
-+
-+z_dest2 .req z27
-+z_dest3 .req z28
-+z_dest4 .req z29
-+z_dest5 .req z30
-+z_dest6 .req z31
-+
-+gf_6vect_mad_sve:
-+ /* less than 16 bytes, return_fail */
-+ cmp x_len, #16
-+ blt .return_fail
-+
-+ mov z_mask0f.b, #0x0f /* z_mask0f = 0x0F0F...0F */
-+ /* load table 1 */
-+ add x_tbl, x_tbl, x_vec_i, LSL #5 /* x_tbl += x_vec_i * 2^5 */
-+
-+ /* Load with NEON instruction ldp */
-+ ldp q_gft1_lo, q_gft1_hi, [x_tbl]
-+ /* load table 2 */
-+ add x_tbl, x_tbl, x_vec, LSL #5 /* x_tbl += x_vec * 2^5 */
-+ ldp q_gft2_lo, q_gft2_hi, [x_tbl]
-+ /* load table 3 */
-+ add x_tbl, x_tbl, x_vec, LSL #5 /* x_tbl += x_vec * 2^5 */
-+ ldp q_gft3_lo, q_gft3_hi, [x_tbl]
-+ /* load table 4 */
-+ add x_tbl, x_tbl, x_vec, LSL #5 /* x_tbl += x_vec * 2^5 */
-+ ldp q_gft4_lo, q_gft4_hi, [x_tbl]
-+ /* load table 5 */
-+ add x_tbl, x_tbl, x_vec, LSL #5 /* x_tbl += x_vec * 2^5 */
-+ ldp q_gft5_lo, q_gft5_hi, [x_tbl]
-+ /* load table 6 */
-+ add x_tbl, x_tbl, x_vec, LSL #5 /* x_tbl += x_vec * 2^5 */
-+ ldp q_gft6_lo, q_gft6_hi, [x_tbl]
-+
-+ ldr x_dest1, [x_dest, #8*0] /* pointer to dest1 */
-+ ldr x_dest2, [x_dest, #8*1] /* pointer to dest2 */
-+ ldr x_dest3, [x_dest, #8*2] /* pointer to dest3 */
-+ ldr x_dest4, [x_dest, #8*3] /* pointer to dest4 */
-+ ldr x_dest5, [x_dest, #8*4] /* pointer to dest5 */
-+ ldr x_dest6, [x_dest, #8*5] /* pointer to dest6 */
-+
-+ mov x_pos, #0
-+
-+ /* vector length agnostic */
-+.Lloopsve_vl:
-+ whilelo p0.b, x_pos, x_len
-+ b.none .return_pass
-+
-+ prfb pldl2strm, p0, [x_dest1, x_pos]
-+ prfb pldl2strm, p0, [x_dest2, x_pos]
-+
-+ /* load src data, governed by p0 */
-+ ld1b z_src.b, p0/z, [x_src, x_pos]
-+
-+ /* split 4-bit lo; 4-bit hi */
-+ and z_src_lo.d, z_src.d, z_mask0f.d
-+ lsr z_src_hi.b, z_src.b, #4
-+
-+ /* load dest data, governed by p0 */
-+ ld1b z_dest1.b, p0/z, [x_dest1, x_pos]
-+ ld1b z_dest2.b, p0/z, [x_dest2, x_pos]
-+
-+ prfb pldl2strm, p0, [x_dest3, x_pos]
-+ prfb pldl2strm, p0, [x_dest4, x_pos]
-+
-+ /* dest1 */
-+ /* table indexing, ie. gf(2^8) multiplication */
-+ tbl z_tmp_lo.b, {z_gft1_lo.b}, z_src_lo.b
-+ tbl z_tmp_hi.b, {z_gft1_hi.b}, z_src_hi.b
-+ /* exclusive or, ie. gf(2^8) add */
-+ eor z_dest1.d, z_tmp_lo.d, z_dest1.d
-+ eor z_dest1.d, z_tmp_hi.d, z_dest1.d
-+
-+ ld1b z_dest3.b, p0/z, [x_dest3, x_pos]
-+ ld1b z_dest4.b, p0/z, [x_dest4, x_pos]
-+
-+ prfb pldl2strm, p0, [x_dest5, x_pos]
-+ prfb pldl2strm, p0, [x_dest6, x_pos]
-+
-+ /* dest2 */
-+ tbl z_tmp_lo.b, {z_gft2_lo.b}, z_src_lo.b
-+ tbl z_tmp_hi.b, {z_gft2_hi.b}, z_src_hi.b
-+ eor z_dest2.d, z_tmp_lo.d, z_dest2.d
-+ eor z_dest2.d, z_tmp_hi.d, z_dest2.d
-+
-+ ld1b z_dest5.b, p0/z, [x_dest5, x_pos]
-+ ld1b z_dest6.b, p0/z, [x_dest6, x_pos]
-+
-+ /* dest3 */
-+ tbl z_tmp_lo.b, {z_gft3_lo.b}, z_src_lo.b
-+ tbl z_tmp_hi.b, {z_gft3_hi.b}, z_src_hi.b
-+ eor z_dest3.d, z_tmp_lo.d, z_dest3.d
-+ eor z_dest3.d, z_tmp_hi.d, z_dest3.d
-+
-+ /* store dest data, governed by p0 */
-+ st1b z_dest1.b, p0, [x_dest1, x_pos]
-+ st1b z_dest2.b, p0, [x_dest2, x_pos]
-+
-+ /* dest4 */
-+ tbl z_tmp_lo.b, {z_gft4_lo.b}, z_src_lo.b
-+ tbl z_tmp_hi.b, {z_gft4_hi.b}, z_src_hi.b
-+ eor z_dest4.d, z_tmp_lo.d, z_dest4.d
-+ eor z_dest4.d, z_tmp_hi.d, z_dest4.d
-+
-+ /* dest5 */
-+ tbl z_tmp_lo.b, {z_gft5_lo.b}, z_src_lo.b
-+ tbl z_tmp_hi.b, {z_gft5_hi.b}, z_src_hi.b
-+ eor z_dest5.d, z_tmp_lo.d, z_dest5.d
-+ eor z_dest5.d, z_tmp_hi.d, z_dest5.d
-+
-+ st1b z_dest3.b, p0, [x_dest3, x_pos]
-+ st1b z_dest4.b, p0, [x_dest4, x_pos]
-+
-+ /* dest6 */
-+ tbl z_tmp_lo.b, {z_gft6_lo.b}, z_src_lo.b
-+ tbl z_tmp_hi.b, {z_gft6_hi.b}, z_src_hi.b
-+ eor z_dest6.d, z_tmp_lo.d, z_dest6.d
-+ eor z_dest6.d, z_tmp_hi.d, z_dest6.d
-+
-+ st1b z_dest5.b, p0, [x_dest5, x_pos]
-+ st1b z_dest6.b, p0, [x_dest6, x_pos]
-+ /* increment one vector length */
-+ incb x_pos
-+
-+ b .Lloopsve_vl
-+
-+.return_pass:
-+ mov w_ret, #0
-+ ret
-+
-+.return_fail:
-+ mov w_ret, #1
-+ ret
-diff --git a/erasure_code/aarch64/gf_7vect_dot_prod_sve.S b/erasure_code/aarch64/gf_7vect_dot_prod_sve.S
-new file mode 100644
-index 00000000..cccaec5c
---- /dev/null
-+++ b/erasure_code/aarch64/gf_7vect_dot_prod_sve.S
-@@ -0,0 +1,277 @@
-+/*************************************************************
-+ Copyright (c) 2021 Linaro Ltd.
-+
-+ Redistribution and use in source and binary forms, with or without
-+ modification, are permitted provided that the following conditions
-+ are met:
-+ * Redistributions of source code must retain the above copyright
-+ notice, this list of conditions and the following disclaimer.
-+ * Redistributions in binary form must reproduce the above copyright
-+ notice, this list of conditions and the following disclaimer in
-+ the documentation and/or other materials provided with the
-+ distribution.
-+ * Neither the name of Huawei Corporation nor the names of its
-+ contributors may be used to endorse or promote products derived
-+ from this software without specific prior written permission.
-+
-+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+**********************************************************************/
-+.text
-+.align 6
-+.arch armv8-a+sve
-+
-+.global gf_7vect_dot_prod_sve
-+.type gf_7vect_dot_prod_sve, %function
-+/* void gf_7vect_dot_prod_sve(int len, int vlen, unsigned char *gftbls,
-+ unsigned char **src, unsigned char **dest);
-+ */
-+
-+/* arguments */
-+x_len .req x0 /* vector length */
-+x_vec .req x1 /* number of source vectors (ie. data blocks) */
-+x_tbl .req x2
-+x_src .req x3
-+x_dest .req x4
-+
-+/* returns */
-+w_ret .req w0
-+
-+/* local variables */
-+x_vec_i .req x5
-+x_ptr .req x6
-+x_pos .req x7
-+
-+x_tbl1 .req x8
-+x_tbl2 .req x9
-+x_tbl3 .req x10
-+x_tbl4 .req x11
-+x_tbl5 .req x12
-+x_tbl6 .req x13
-+x_tbl7 .req x14
-+
-+x_dest1 .req x15
-+
-+/* r16,r17,r18,r29,r30: special role registers, avoided */
-+/* r19..r29 and SP must be preserved */
-+x_dest2 .req x19
-+x_dest3 .req x20
-+x_dest4 .req x21
-+x_dest5 .req x22
-+x_dest6 .req x23
-+x_dest7 .req x_dest /* reused */
-+
-+/* vectors */
-+z_mask0f .req z0
-+
-+z_src .req z1
-+z_src_lo .req z2
-+z_src_hi .req z_src
-+
-+z_dest1 .req z3
-+z_gft1_lo .req z4
-+z_gft1_hi .req z5
-+q_gft1_lo .req q4
-+q_gft1_hi .req q5
-+
-+z_gft7_lo .req z6
-+z_gft7_hi .req z7
-+q_gft7_lo .req q6
-+q_gft7_hi .req q7
-+
-+/* bottom 64-bit of v8..v15 must be preserved if used */
-+z_dest7 .req z16
-+
-+z_gft2_lo .req z17
-+z_gft2_hi .req z18
-+q_gft2_lo .req q17
-+q_gft2_hi .req q18
-+
-+z_gft3_lo .req z19
-+z_gft3_hi .req z20
-+q_gft3_lo .req q19
-+q_gft3_hi .req q20
-+
-+z_gft4_lo .req z21
-+z_gft4_hi .req z22
-+q_gft4_lo .req q21
-+q_gft4_hi .req q22
-+
-+z_gft5_lo .req z23
-+z_gft5_hi .req z24
-+q_gft5_lo .req q23
-+q_gft5_hi .req q24
-+
-+z_gft6_lo .req z25
-+z_gft6_hi .req z26
-+q_gft6_lo .req q25
-+q_gft6_hi .req q26
-+
-+z_dest2 .req z27
-+z_dest3 .req z28
-+z_dest4 .req z29
-+z_dest5 .req z30
-+z_dest6 .req z31
-+
-+gf_7vect_dot_prod_sve:
-+ /* less than 16 bytes, return_fail */
-+ cmp x_len, #16
-+ blt .return_fail
-+
-+ /* save r19..r29 */
-+ sub sp, sp, #48 /* alignment */
-+ stp x19, x20, [sp]
-+ stp x21, x22, [sp, #16]
-+ str x23, [sp, #32]
-+
-+ mov z_mask0f.b, #0x0f /* z_mask0f = 0x0F0F...0F */
-+ mov x_pos, #0
-+ lsl x_vec, x_vec, #3
-+ ldp x_dest1, x_dest2, [x_dest, #8*0]
-+ ldp x_dest3, x_dest4, [x_dest, #8*2]
-+ ldp x_dest5, x_dest6, [x_dest, #8*4]
-+ ldr x_dest7, [x_dest, #8*6] /* x_dest7 reuses x_dest */
-+
-+/* Loop 1: x_len, vector length */
-+.Lloopsve_vl:
-+ whilelo p0.b, x_pos, x_len
-+ b.none .return_pass
-+
-+ mov x_vec_i, #0 /* clear x_vec_i */
-+ ldr x_ptr, [x_src, x_vec_i] /* x_ptr: src base addr. */
-+
-+ mov z_dest1.b, #0 /* clear z_dest1 */
-+ mov z_dest2.b, #0 /* clear z_dest2 */
-+ mov z_dest3.b, #0 /* clear z_dest3 */
-+ mov z_dest4.b, #0 /* clear z_dest4 */
-+ mov z_dest5.b, #0 /* clear z_dest5 */
-+ mov z_dest6.b, #0 /* clear z_dest6 */
-+ mov z_dest7.b, #0 /* clear z_dest7 */
-+
-+ /* gf_tbl base = (x_tbl + dest_idx * x_vec * 32) */
-+ mov x_tbl1, x_tbl /* reset x_tbl1 */
-+ add x_tbl2, x_tbl1, x_vec, LSL #2 /* reset x_tbl2 */
-+ add x_tbl3, x_tbl2, x_vec, LSL #2 /* reset x_tbl3 */
-+ add x_tbl4, x_tbl3, x_vec, LSL #2 /* reset x_tbl4 */
-+ add x_tbl5, x_tbl4, x_vec, LSL #2 /* reset x_tbl5 */
-+ add x_tbl6, x_tbl5, x_vec, LSL #2 /* reset x_tbl6 */
-+ add x_tbl7, x_tbl6, x_vec, LSL #2 /* reset x_tbl7 */
-+
-+/* Loop 2: x_vec, number of source vectors (ie. data blocks) */
-+.Lloopsve_vl_vects:
-+ /* load src data, governed by p0 */
-+ ld1b z_src.b, p0/z, [x_ptr, x_pos] /* load from: src base + pos offset */
-+ /* split 4-bit lo; 4-bit hi */
-+ and z_src_lo.d, z_src.d, z_mask0f.d
-+ lsr z_src_hi.b, z_src.b, #4
-+
-+ /* gf_tbl addr: (x_tbl + dest_idx * x_vec * 32) + src_vec_idx * 32 */
-+ /* load gf_table's */
-+ ldp q_gft1_lo, q_gft1_hi, [x_tbl1], #32 /* x_tbl1 is post-added by #32 for each src vect */
-+ ldp q_gft2_lo, q_gft2_hi, [x_tbl2], #32
-+
-+ /* prefetch */
-+ prfb pldl2keep, p0, [x_tbl1]
-+ prfb pldl2keep, p0, [x_tbl2]
-+
-+ /* calc for next and prefetch */
-+ add x_vec_i, x_vec_i, #8 /* move x_vec_i to next */
-+ ldr x_ptr, [x_src, x_vec_i] /* x_ptr: src base addr. */
-+
-+ /* dest 1 */
-+ /* table indexing, ie. gf(2^8) multiplication */
-+ tbl z_gft1_lo.b, {z_gft1_lo.b}, z_src_lo.b
-+ tbl z_gft1_hi.b, {z_gft1_hi.b}, z_src_hi.b
-+ /* exclusive or, ie. gf(2^8) add */
-+ eor z_dest1.d, z_gft1_lo.d, z_dest1.d
-+ eor z_dest1.d, z_gft1_hi.d, z_dest1.d
-+
-+ ldp q_gft3_lo, q_gft3_hi, [x_tbl3], #32
-+ ldp q_gft4_lo, q_gft4_hi, [x_tbl4], #32
-+ prfb pldl2keep, p0, [x_tbl3]
-+ prfb pldl2keep, p0, [x_tbl4]
-+
-+ /* dest 2 */
-+ tbl z_gft2_lo.b, {z_gft2_lo.b}, z_src_lo.b
-+ tbl z_gft2_hi.b, {z_gft2_hi.b}, z_src_hi.b
-+ eor z_dest2.d, z_gft2_lo.d, z_dest2.d
-+ eor z_dest2.d, z_gft2_hi.d, z_dest2.d
-+
-+ /* dest 3 */
-+ tbl z_gft3_lo.b, {z_gft3_lo.b}, z_src_lo.b
-+ tbl z_gft3_hi.b, {z_gft3_hi.b}, z_src_hi.b
-+ eor z_dest3.d, z_gft3_lo.d, z_dest3.d
-+ eor z_dest3.d, z_gft3_hi.d, z_dest3.d
-+
-+ ldp q_gft5_lo, q_gft5_hi, [x_tbl5], #32
-+ ldp q_gft6_lo, q_gft6_hi, [x_tbl6], #32
-+ prfb pldl2keep, p0, [x_tbl5]
-+ prfb pldl2keep, p0, [x_tbl6]
-+
-+ /* dest 4 */
-+ tbl z_gft4_lo.b, {z_gft4_lo.b}, z_src_lo.b
-+ tbl z_gft4_hi.b, {z_gft4_hi.b}, z_src_hi.b
-+ eor z_dest4.d, z_gft4_lo.d, z_dest4.d
-+ eor z_dest4.d, z_gft4_hi.d, z_dest4.d
-+
-+ /* dest 5 */
-+ tbl z_gft5_lo.b, {z_gft5_lo.b}, z_src_lo.b
-+ tbl z_gft5_hi.b, {z_gft5_hi.b}, z_src_hi.b
-+ eor z_dest5.d, z_gft5_lo.d, z_dest5.d
-+ eor z_dest5.d, z_gft5_hi.d, z_dest5.d
-+
-+ ldp q_gft7_lo, q_gft7_hi, [x_tbl7], #32
-+ prfb pldl2keep, p0, [x_tbl7]
-+
-+ /* dest 6 */
-+ tbl z_gft6_lo.b, {z_gft6_lo.b}, z_src_lo.b
-+ tbl z_gft6_hi.b, {z_gft6_hi.b}, z_src_hi.b
-+ eor z_dest6.d, z_gft6_lo.d, z_dest6.d
-+ eor z_dest6.d, z_gft6_hi.d, z_dest6.d
-+
-+ /* dest 7 */
-+ tbl z_gft7_lo.b, {z_gft7_lo.b}, z_src_lo.b
-+ tbl z_gft7_hi.b, {z_gft7_hi.b}, z_src_hi.b
-+ eor z_dest7.d, z_gft7_lo.d, z_dest7.d
-+ eor z_dest7.d, z_gft7_hi.d, z_dest7.d
-+
-+ cmp x_vec_i, x_vec
-+ blt .Lloopsve_vl_vects
-+/* end of Loop 2 */
-+
-+ /* store dest data, governed by p0 */
-+ st1b z_dest1.b, p0, [x_dest1, x_pos]
-+ st1b z_dest2.b, p0, [x_dest2, x_pos]
-+ st1b z_dest3.b, p0, [x_dest3, x_pos]
-+ st1b z_dest4.b, p0, [x_dest4, x_pos]
-+ st1b z_dest5.b, p0, [x_dest5, x_pos]
-+ st1b z_dest6.b, p0, [x_dest6, x_pos]
-+ st1b z_dest7.b, p0, [x_dest7, x_pos]
-+
-+ /* increment one vector length */
-+ incb x_pos
-+ b .Lloopsve_vl
-+/* end of Loop 1 */
-+
-+.return_pass:
-+ /* restore r19..r29 */
-+ ldr x23, [sp, #32]
-+ ldp x21, x22, [sp, #16]
-+ ldp x19, x20, [sp]
-+ add sp, sp, #48
-+
-+ mov w_ret, #0
-+ ret
-+
-+.return_fail:
-+ mov w_ret, #1
-+ ret
-diff --git a/erasure_code/aarch64/gf_8vect_dot_prod_sve.S b/erasure_code/aarch64/gf_8vect_dot_prod_sve.S
-new file mode 100644
-index 00000000..ee839a43
---- /dev/null
-+++ b/erasure_code/aarch64/gf_8vect_dot_prod_sve.S
-@@ -0,0 +1,303 @@
-+/*************************************************************
-+ Copyright (c) 2021 Linaro Ltd.
-+
-+ Redistribution and use in source and binary forms, with or without
-+ modification, are permitted provided that the following conditions
-+ are met:
-+ * Redistributions of source code must retain the above copyright
-+ notice, this list of conditions and the following disclaimer.
-+ * Redistributions in binary form must reproduce the above copyright
-+ notice, this list of conditions and the following disclaimer in
-+ the documentation and/or other materials provided with the
-+ distribution.
-+ * Neither the name of Huawei Corporation nor the names of its
-+ contributors may be used to endorse or promote products derived
-+ from this software without specific prior written permission.
-+
-+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+**********************************************************************/
-+.text
-+.align 6
-+.arch armv8-a+sve
-+
-+.global gf_8vect_dot_prod_sve
-+.type gf_8vect_dot_prod_sve, %function
-+/* void gf_8vect_dot_prod_sve(int len, int vlen, unsigned char *gftbls,
-+ unsigned char **src, unsigned char **dest);
-+ */
-+
-+/* arguments */
-+x_len .req x0 /* vector length */
-+x_vec .req x1 /* number of source vectors (ie. data blocks) */
-+x_tbl .req x2
-+x_src .req x3
-+x_dest .req x4
-+
-+/* returns */
-+w_ret .req w0
-+
-+/* local variables */
-+x_vec_i .req x5
-+x_ptr .req x6
-+x_pos .req x7
-+
-+x_tbl1 .req x8
-+x_tbl2 .req x9
-+x_tbl3 .req x10
-+x_tbl4 .req x11
-+x_tbl5 .req x12
-+x_tbl6 .req x13
-+x_tbl7 .req x14
-+
-+x_dest1 .req x15
-+
-+/* r16,r17,r18,r29,r30: special role registers, avoided */
-+/* r19..r29 and SP must be preserved */
-+x_dest2 .req x19
-+x_dest3 .req x20
-+x_dest4 .req x21
-+x_dest5 .req x22
-+x_dest6 .req x23
-+x_dest7 .req x24
-+x_dest8 .req x_dest /* reused */
-+x_tbl8 .req x25
-+
-+/* vectors */
-+z_mask0f .req z0
-+
-+z_src .req z1
-+z_src_lo .req z2
-+z_src_hi .req z_src
-+
-+z_dest1 .req z3
-+z_gft1_lo .req z4
-+z_gft1_hi .req z5
-+q_gft1_lo .req q4
-+q_gft1_hi .req q5
-+
-+z_gft7_lo .req z6
-+z_gft7_hi .req z7
-+q_gft7_lo .req q6
-+q_gft7_hi .req q7
-+
-+/* bottom 64-bit of v8..v15 must be preserved if used */
-+z_dest7 .req z8
-+
-+z_gft8_lo .req z9
-+z_gft8_hi .req z10
-+q_gft8_lo .req q9
-+q_gft8_hi .req q10
-+
-+z_dest8 .req z16
-+
-+z_gft2_lo .req z17
-+z_gft2_hi .req z18
-+q_gft2_lo .req q17
-+q_gft2_hi .req q18
-+
-+z_gft3_lo .req z19
-+z_gft3_hi .req z20
-+q_gft3_lo .req q19
-+q_gft3_hi .req q20
-+
-+z_gft4_lo .req z21
-+z_gft4_hi .req z22
-+q_gft4_lo .req q21
-+q_gft4_hi .req q22
-+
-+z_gft5_lo .req z23
-+z_gft5_hi .req z24
-+q_gft5_lo .req q23
-+q_gft5_hi .req q24
-+
-+z_gft6_lo .req z25
-+z_gft6_hi .req z26
-+q_gft6_lo .req q25
-+q_gft6_hi .req q26
-+
-+z_dest2 .req z27
-+z_dest3 .req z28
-+z_dest4 .req z29
-+z_dest5 .req z30
-+z_dest6 .req z31
-+
-+gf_8vect_dot_prod_sve:
-+ /* less than 16 bytes, return_fail */
-+ cmp x_len, #16
-+ blt .return_fail
-+
-+ /* save r19..r29 */
-+ sub sp, sp, #80 /* alignment */
-+ stp x19, x20, [sp]
-+ stp x21, x22, [sp, #16]
-+ stp x23, x24, [sp, #32]
-+ stp d8, d9, [sp, #48]
-+ str d10, [sp, #56]
-+ str x25, [sp, #64]
-+
-+ mov z_mask0f.b, #0x0f /* z_mask0f = 0x0F0F...0F */
-+ mov x_pos, #0
-+ lsl x_vec, x_vec, #3
-+ ldp x_dest1, x_dest2, [x_dest, #8*0]
-+ ldp x_dest3, x_dest4, [x_dest, #8*2]
-+ ldp x_dest5, x_dest6, [x_dest, #8*4]
-+ ldp x_dest7, x_dest8, [x_dest, #8*6] /* x_dest8 reuses x_dest */
-+
-+/* Loop 1: x_len, vector length */
-+.Lloopsve_vl:
-+ whilelo p0.b, x_pos, x_len
-+ b.none .return_pass
-+
-+ mov x_vec_i, #0 /* clear x_vec_i */
-+ ldr x_ptr, [x_src, x_vec_i] /* x_ptr: src base addr. */
-+
-+ mov z_dest1.b, #0 /* clear z_dest1 */
-+ mov z_dest2.b, #0 /* clear z_dest2 */
-+ mov z_dest3.b, #0 /* clear z_dest3 */
-+ mov z_dest4.b, #0 /* clear z_dest4 */
-+ mov z_dest5.b, #0 /* clear z_dest5 */
-+ mov z_dest6.b, #0 /* clear z_dest6 */
-+ mov z_dest7.b, #0 /* clear z_dest7 */
-+ mov z_dest8.b, #0 /* clear z_dest8 */
-+
-+ /* gf_tbl base = (x_tbl + dest_idx * x_vec * 32) */
-+ mov x_tbl1, x_tbl /* reset x_tbl1 */
-+ add x_tbl2, x_tbl1, x_vec, LSL #2 /* reset x_tbl2 */
-+ add x_tbl3, x_tbl2, x_vec, LSL #2 /* reset x_tbl3 */
-+ add x_tbl4, x_tbl3, x_vec, LSL #2 /* reset x_tbl4 */
-+ add x_tbl5, x_tbl4, x_vec, LSL #2 /* reset x_tbl5 */
-+ add x_tbl6, x_tbl5, x_vec, LSL #2 /* reset x_tbl6 */
-+ add x_tbl7, x_tbl6, x_vec, LSL #2 /* reset x_tbl7 */
-+ add x_tbl8, x_tbl7, x_vec, LSL #2 /* reset x_tbl8 */
-+
-+/* Loop 2: x_vec, number of source vectors (ie. data blocks) */
-+.Lloopsve_vl_vects:
-+ /* load src data, governed by p0 */
-+ ld1b z_src.b, p0/z, [x_ptr, x_pos] /* load from: src base + pos offset */
-+ /* split 4-bit lo; 4-bit hi */
-+ and z_src_lo.d, z_src.d, z_mask0f.d
-+ lsr z_src_hi.b, z_src.b, #4
-+
-+ /* gf_tbl addr: (x_tbl + dest_idx * x_vec * 32) + src_vec_idx * 32 */
-+ /* load gf_table's */
-+ ldp q_gft1_lo, q_gft1_hi, [x_tbl1], #32 /* x_tbl1 is post-added by #32 for each src vect */
-+ ldp q_gft2_lo, q_gft2_hi, [x_tbl2], #32
-+
-+ /* prefetch */
-+ prfb pldl2keep, p0, [x_tbl1]
-+ prfb pldl2keep, p0, [x_tbl2]
-+
-+ /* calc for next and prefetch */
-+ add x_vec_i, x_vec_i, #8 /* move x_vec_i to next */
-+ ldr x_ptr, [x_src, x_vec_i] /* x_ptr: src base addr. */
-+
-+ /* dest 1 */
-+ /* table indexing, ie. gf(2^8) multiplication */
-+ tbl z_gft1_lo.b, {z_gft1_lo.b}, z_src_lo.b
-+ tbl z_gft1_hi.b, {z_gft1_hi.b}, z_src_hi.b
-+ /* exclusive or, ie. gf(2^8) add */
-+ eor z_dest1.d, z_gft1_lo.d, z_dest1.d
-+ eor z_dest1.d, z_gft1_hi.d, z_dest1.d
-+
-+ ldp q_gft3_lo, q_gft3_hi, [x_tbl3], #32
-+ ldp q_gft4_lo, q_gft4_hi, [x_tbl4], #32
-+ prfb pldl2keep, p0, [x_tbl3]
-+ prfb pldl2keep, p0, [x_tbl4]
-+
-+ /* dest 2 */
-+ tbl z_gft2_lo.b, {z_gft2_lo.b}, z_src_lo.b
-+ tbl z_gft2_hi.b, {z_gft2_hi.b}, z_src_hi.b
-+ eor z_dest2.d, z_gft2_lo.d, z_dest2.d
-+ eor z_dest2.d, z_gft2_hi.d, z_dest2.d
-+
-+ /* dest 3 */
-+ tbl z_gft3_lo.b, {z_gft3_lo.b}, z_src_lo.b
-+ tbl z_gft3_hi.b, {z_gft3_hi.b}, z_src_hi.b
-+ eor z_dest3.d, z_gft3_lo.d, z_dest3.d
-+ eor z_dest3.d, z_gft3_hi.d, z_dest3.d
-+
-+ ldp q_gft5_lo, q_gft5_hi, [x_tbl5], #32
-+ ldp q_gft6_lo, q_gft6_hi, [x_tbl6], #32
-+ prfb pldl2keep, p0, [x_tbl5]
-+ prfb pldl2keep, p0, [x_tbl6]
-+
-+ /* dest 4 */
-+ tbl z_gft4_lo.b, {z_gft4_lo.b}, z_src_lo.b
-+ tbl z_gft4_hi.b, {z_gft4_hi.b}, z_src_hi.b
-+ eor z_dest4.d, z_gft4_lo.d, z_dest4.d
-+ eor z_dest4.d, z_gft4_hi.d, z_dest4.d
-+
-+ /* dest 5 */
-+ tbl z_gft5_lo.b, {z_gft5_lo.b}, z_src_lo.b
-+ tbl z_gft5_hi.b, {z_gft5_hi.b}, z_src_hi.b
-+ eor z_dest5.d, z_gft5_lo.d, z_dest5.d
-+ eor z_dest5.d, z_gft5_hi.d, z_dest5.d
-+
-+ ldp q_gft7_lo, q_gft7_hi, [x_tbl7], #32
-+ ldp q_gft8_lo, q_gft8_hi, [x_tbl8], #32
-+ prfb pldl2keep, p0, [x_tbl7]
-+ prfb pldl2keep, p0, [x_tbl8]
-+
-+ /* dest 6 */
-+ tbl z_gft6_lo.b, {z_gft6_lo.b}, z_src_lo.b
-+ tbl z_gft6_hi.b, {z_gft6_hi.b}, z_src_hi.b
-+ eor z_dest6.d, z_gft6_lo.d, z_dest6.d
-+ eor z_dest6.d, z_gft6_hi.d, z_dest6.d
-+
-+ /* dest 7 */
-+ tbl z_gft7_lo.b, {z_gft7_lo.b}, z_src_lo.b
-+ tbl z_gft7_hi.b, {z_gft7_hi.b}, z_src_hi.b
-+ eor z_dest7.d, z_gft7_lo.d, z_dest7.d
-+ eor z_dest7.d, z_gft7_hi.d, z_dest7.d
-+
-+ /* dest 8 */
-+ tbl z_gft8_lo.b, {z_gft8_lo.b}, z_src_lo.b
-+ tbl z_gft8_hi.b, {z_gft8_hi.b}, z_src_hi.b
-+ eor z_dest8.d, z_gft8_lo.d, z_dest8.d
-+ eor z_dest8.d, z_gft8_hi.d, z_dest8.d
-+
-+ cmp x_vec_i, x_vec
-+ blt .Lloopsve_vl_vects
-+/* end of Loop 2 */
-+
-+ /* store dest data, governed by p0 */
-+ st1b z_dest1.b, p0, [x_dest1, x_pos]
-+ st1b z_dest2.b, p0, [x_dest2, x_pos]
-+ st1b z_dest3.b, p0, [x_dest3, x_pos]
-+ st1b z_dest4.b, p0, [x_dest4, x_pos]
-+ st1b z_dest5.b, p0, [x_dest5, x_pos]
-+ st1b z_dest6.b, p0, [x_dest6, x_pos]
-+ st1b z_dest7.b, p0, [x_dest7, x_pos]
-+ st1b z_dest8.b, p0, [x_dest8, x_pos]
-+
-+ /* increment one vector length */
-+ incb x_pos
-+ b .Lloopsve_vl
-+/* end of Loop 1 */
-+
-+.return_pass:
-+ /* restore r19..r29 */
-+ ldr x25, [sp, #64]
-+ ldr d10, [sp, #56]
-+ ldp d8, d9, [sp, #48]
-+ ldp x23, x24, [sp, #32]
-+ ldp x21, x22, [sp, #16]
-+ ldp x19, x20, [sp]
-+ add sp, sp, #80
-+
-+ mov w_ret, #0
-+ ret
-+
-+.return_fail:
-+ mov w_ret, #1
-+ ret
-diff --git a/erasure_code/aarch64/gf_vect_dot_prod_sve.S b/erasure_code/aarch64/gf_vect_dot_prod_sve.S
-new file mode 100644
-index 00000000..7cf3d0df
---- /dev/null
-+++ b/erasure_code/aarch64/gf_vect_dot_prod_sve.S
-@@ -0,0 +1,128 @@
-+/**************************************************************
-+ Copyright (c) 2021 Linaro Ltd.
-+
-+ Redistribution and use in source and binary forms, with or without
-+ modification, are permitted provided that the following conditions
-+ are met:
-+ * Redistributions of source code must retain the above copyright
-+ notice, this list of conditions and the following disclaimer.
-+ * Redistributions in binary form must reproduce the above copyright
-+ notice, this list of conditions and the following disclaimer in
-+ the documentation and/or other materials provided with the
-+ distribution.
-+ * Neither the name of Huawei Corporation nor the names of its
-+ contributors may be used to endorse or promote products derived
-+ from this software without specific prior written permission.
-+
-+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+**********************************************************************/
-+.text
-+.align 6
-+.arch armv8-a+sve
-+
-+.global gf_vect_dot_prod_sve
-+.type gf_vect_dot_prod_sve, %function
-+/* void gf_vect_dot_prod_sve(int len, int vlen, unsigned char *gftbls,
-+ unsigned char **src, unsigned char *dest);
-+ */
-+
-+/* arguments */
-+x_len .req x0 /* vector length */
-+x_vec .req x1 /* number of source vectors (ie. data blocks) */
-+x_tbl .req x2
-+x_src .req x3
-+x_dest1 .req x4
-+
-+/* returns */
-+w_ret .req w0
-+
-+/* local variables */
-+x_vec_i .req x5
-+x_ptr .req x6
-+x_pos .req x7
-+x_tbl1 .req x8
-+
-+/* vectors */
-+z_mask0f .req z0
-+
-+z_src .req z1
-+z_src_lo .req z2
-+z_src_hi .req z_src
-+
-+z_dest .req z3
-+
-+z_gft1_lo .req z4
-+z_gft1_hi .req z5
-+q_gft1_lo .req q4
-+q_gft1_hi .req q5
-+
-+gf_vect_dot_prod_sve:
-+ /* less than 16 bytes, return_fail */
-+ cmp x_len, #16
-+ blt .return_fail
-+
-+ mov z_mask0f.b, #0x0f /* z_mask0f = 0x0F0F...0F */
-+ mov x_pos, #0
-+ lsl x_vec, x_vec, #3
-+
-+/* Loop 1: x_len, vector length */
-+.Lloopsve_vl:
-+ whilelo p0.b, x_pos, x_len
-+ b.none .return_pass
-+
-+ mov z_dest.b, #0 /* clear z_dest */
-+ mov x_vec_i, #0 /* clear x_vec_i */
-+ mov x_tbl1, x_tbl /* reset x_tbl1 */
-+
-+/* Loop 2: x_vec, number of source vectors (ie. data blocks) */
-+.Lloopsve_vl_vects:
-+ ldr x_ptr, [x_src, x_vec_i] /* x_ptr: src base addr. */
-+ /* load src data, governed by p0 */
-+ ld1b z_src.b, p0/z, [x_ptr, x_pos] /* load from: src base + pos offset */
-+
-+ add x_vec_i, x_vec_i, #8 /* move x_vec_i to next */
-+
-+ /* load gf_table */
-+ ldp q_gft1_lo, q_gft1_hi, [x_tbl1], #32 /* x_tbl1 is added by #32
-+ for each src vect */
-+
-+ /* split 4-bit lo; 4-bit hi */
-+ and z_src_lo.d, z_src.d, z_mask0f.d
-+ lsr z_src_hi.b, z_src.b, #4
-+
-+ /* table indexing, ie. gf(2^8) multiplication */
-+ tbl z_gft1_lo.b, {z_gft1_lo.b}, z_src_lo.b
-+ tbl z_gft1_hi.b, {z_gft1_hi.b}, z_src_hi.b
-+
-+ /* exclusive or, ie. gf(2^8) add */
-+ eor z_dest.d, z_gft1_lo.d, z_dest.d
-+ eor z_dest.d, z_gft1_hi.d, z_dest.d
-+
-+ cmp x_vec_i, x_vec
-+ blt .Lloopsve_vl_vects
-+
-+ /* end of Loop 2 */
-+ /* store dest data, governed by p0 */
-+ st1b z_dest.b, p0, [x_dest1, x_pos]
-+ /* increment one vector length */
-+ incb x_pos
-+
-+ b .Lloopsve_vl
-+
-+.return_pass:
-+ mov w_ret, #0
-+ ret
-+
-+.return_fail:
-+ mov w_ret, #1
-+ ret
-diff --git a/erasure_code/aarch64/gf_vect_mad_sve.S b/erasure_code/aarch64/gf_vect_mad_sve.S
-new file mode 100644
-index 00000000..970cf237
---- /dev/null
-+++ b/erasure_code/aarch64/gf_vect_mad_sve.S
-@@ -0,0 +1,123 @@
-+/**************************************************************
-+ Copyright (c) 2021 Linaro Ltd.
-+
-+ Redistribution and use in source and binary forms, with or without
-+ modification, are permitted provided that the following conditions
-+ are met:
-+ * Redistributions of source code must retain the above copyright
-+ notice, this list of conditions and the following disclaimer.
-+ * Redistributions in binary form must reproduce the above copyright
-+ notice, this list of conditions and the following disclaimer in
-+ the documentation and/or other materials provided with the
-+ distribution.
-+ * Neither the name of Huawei Corporation nor the names of its
-+ contributors may be used to endorse or promote products derived
-+ from this software without specific prior written permission.
-+
-+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+**********************************************************************/
-+.text
-+.align 6
-+.arch armv8-a+sve
-+
-+
-+.global gf_vect_mad_sve
-+.type gf_vect_mad_sve, %function
-+
-+/* gf_vect_mad_sve(int len, int vec, int vec_i, unsigned char *gftbls,
-+ unsigned char *src, unsigned char *dest);
-+ */
-+/* arguments */
-+x_len .req x0
-+x_vec .req x1
-+x_vec_i .req x2
-+x_tbl .req x3
-+x_src .req x4
-+x_dest .req x5
-+
-+/* returns */
-+w_ret .req w0
-+
-+/* local variables */
-+x_pos .req x6
-+
-+/* vectors */
-+z_mask0f .req z0
-+
-+z_src .req z1
-+z_src_lo .req z2
-+z_src_hi .req z_src
-+
-+z_dest .req z3
-+
-+z_tmp1_lo .req z4
-+z_tmp1_hi .req z5
-+
-+z_gft1_lo .req z6
-+z_gft1_hi .req z7
-+q_gft1_lo .req q6
-+q_gft1_hi .req q7
-+
-+gf_vect_mad_sve:
-+ /* less than 16 bytes, return_fail */
-+ cmp x_len, #16
-+ blt .return_fail
-+
-+ mov z_mask0f.b, #0x0f /* z_mask0f = 0x0F0F...0F */
-+ add x_tbl, x_tbl, x_vec_i, LSL #5 /* x_tbl += x_vec_i * 2^5 */
-+
-+ /* Load with NEON instruction ldp */
-+ ldp q_gft1_lo, q_gft1_hi, [x_tbl]
-+
-+ mov x_pos, #0
-+
-+ /* vector length agnostic */
-+.Lloopsve_vl:
-+ whilelo p0.b, x_pos, x_len
-+ b.none .return_pass
-+
-+ /* prefetch dest data */
-+ prfb pldl2strm, p0, [x_dest, x_pos]
-+
-+ /* load src data, governed by p0 */
-+ ld1b z_src.b, p0/z, [x_src, x_pos]
-+
-+ /* split 4-bit lo; 4-bit hi */
-+ and z_src_lo.d, z_src.d, z_mask0f.d
-+ lsr z_src_hi.b, z_src.b, #4
-+
-+ /* load dest data, governed by p0 */
-+ ld1b z_dest.b, p0/z, [x_dest, x_pos]
-+
-+ /* table indexing, ie. gf(2^8) multiplication */
-+ tbl z_tmp1_lo.b, {z_gft1_lo.b}, z_src_lo.b
-+ tbl z_tmp1_hi.b, {z_gft1_hi.b}, z_src_hi.b
-+
-+ /* exclusive or, ie. gf(2^8) add */
-+ eor z_dest.d, z_tmp1_lo.d, z_dest.d
-+ eor z_dest.d, z_tmp1_hi.d, z_dest.d
-+
-+ /* store dest data, governed by p0 */
-+ st1b z_dest.b, p0, [x_dest, x_pos]
-+ /* increment one vector length */
-+ incb x_pos
-+
-+ b .Lloopsve_vl
-+
-+.return_pass:
-+ mov w_ret, #0
-+ ret
-+
-+.return_fail:
-+ mov w_ret, #1
-+ ret
-diff --git a/erasure_code/aarch64/gf_vect_mul_sve.S b/erasure_code/aarch64/gf_vect_mul_sve.S
-new file mode 100644
-index 00000000..195b5973
---- /dev/null
-+++ b/erasure_code/aarch64/gf_vect_mul_sve.S
-@@ -0,0 +1,117 @@
-+/**************************************************************
-+ Copyright (c) 2021 Linaro Ltd.
-+
-+ Redistribution and use in source and binary forms, with or without
-+ modification, are permitted provided that the following conditions
-+ are met:
-+ * Redistributions of source code must retain the above copyright
-+ notice, this list of conditions and the following disclaimer.
-+ * Redistributions in binary form must reproduce the above copyright
-+ notice, this list of conditions and the following disclaimer in
-+ the documentation and/or other materials provided with the
-+ distribution.
-+ * Neither the name of Huawei Corporation nor the names of its
-+ contributors may be used to endorse or promote products derived
-+ from this software without specific prior written permission.
-+
-+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+**********************************************************************/
-+.text
-+.align 6
-+.arch armv8-a+sve
-+
-+.global gf_vect_mul_sve
-+.type gf_vect_mul_sve, %function
-+
-+/* Refer to include/gf_vect_mul.h
-+ *
-+ * @param len Length of vector in bytes. Must be aligned to 32B.
-+ * @param gftbl Pointer to 32-byte array of pre-calculated constants based on C.
-+ * @param src Pointer to src data array. Must be aligned to 32B.
-+ * @param dest Pointer to destination data array. Must be aligned to 32B.
-+ * @returns 0 pass, other fail
-+ *
-+ * int gf_vect_mul(int len, unsigned char *gftbl, void *src, void *dest);
-+ */
-+
-+/* arguments */
-+x_len .req x0
-+x_tbl .req x1
-+x_src .req x2
-+x_dest .req x3
-+
-+/* returns */
-+w_ret .req w0
-+
-+/* local variables */
-+x_pos .req x4
-+
-+/* vectors */
-+z_mask0f .req z0
-+
-+z_src .req z1
-+z_src_lo .req z2
-+z_src_hi .req z_src /* reuse */
-+
-+z_dest .req z3
-+z_tmp1_lo .req z4
-+z_tmp1_hi .req z_dest /* reuse */
-+
-+z_gft1_lo .req z6
-+z_gft1_hi .req z7
-+q_gft1_lo .req q6
-+q_gft1_hi .req q7
-+
-+gf_vect_mul_sve:
-+ /* less than 32 bytes, return_fail */
-+ cmp x_len, #32
-+ blt .return_fail
-+
-+ mov z_mask0f.b, #0x0f /* z_mask0f = 0x0F0F...0F */
-+ mov x_pos, #0
-+
-+ /* Load with NEON instruction ldp */
-+ ldp q_gft1_lo, q_gft1_hi, [x_tbl]
-+
-+ /* vector length agnostic */
-+.Lloopsve_vl:
-+ whilelo p0.b, x_pos, x_len
-+ b.none .return_pass
-+
-+ /* load src data, governed by p0 */
-+ ld1b z_src.b, p0/z, [x_src, x_pos]
-+
-+ /* split 4-bit lo; 4-bit hi */
-+ and z_src_lo.d, z_src.d, z_mask0f.d
-+ lsr z_src_hi.b, z_src.b, #4
-+
-+ /* table indexing, ie. gf(2^8) multiplication */
-+ tbl z_tmp1_lo.b, {z_gft1_lo.b}, z_src_lo.b
-+ tbl z_tmp1_hi.b, {z_gft1_hi.b}, z_src_hi.b
-+ /* exclusive or, ie. gf(2^8) add */
-+ eor z_dest.d, z_tmp1_hi.d, z_tmp1_lo.d
-+
-+ /* store dest data, governed by p0 */
-+ st1b z_dest.b, p0, [x_dest, x_pos]
-+ /* increment one vector length */
-+ incb x_pos
-+
-+ b .Lloopsve_vl
-+
-+.return_pass:
-+ mov w_ret, #0
-+ ret
-+
-+.return_fail:
-+ mov w_ret, #1
-+ ret
diff --git a/testing/isoinfo/APKBUILD b/testing/isoinfo/APKBUILD
index c63de7a1ea9..addcc95c27c 100644
--- a/testing/isoinfo/APKBUILD
+++ b/testing/isoinfo/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Hossein Hosni <hosni.hossein@gmail.com>
pkgname=isoinfo
pkgver=0_git20131217 # the git repo doesn't have a release yet
-pkgrel=0
+pkgrel=1
pkgdesc="Utility programs for dumping and verifying iso9660 images"
url="https://github.com/cmatsuoka/isoinfo"
arch="all"
diff --git a/testing/isomd5sum/APKBUILD b/testing/isomd5sum/APKBUILD
index 95678eba2ba..067d82119ad 100644
--- a/testing/isomd5sum/APKBUILD
+++ b/testing/isomd5sum/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Hossein Hosni <hosni.hossein@gmail.com>
pkgname=isomd5sum
pkgver=1.2.3
-pkgrel=1
+pkgrel=2
pkgdesc="Utilities for working with md5sum implanted in ISO images"
url="https://github.com/rhinstaller/isomd5sum"
arch="all !armv7 !armhf"
diff --git a/testing/itd/APKBUILD b/testing/itd/APKBUILD
new file mode 100644
index 00000000000..37d9af87ec2
--- /dev/null
+++ b/testing/itd/APKBUILD
@@ -0,0 +1,33 @@
+# Contributor: Eloi Torrents <eloitor@disroot.org>
+# Maintainer: Eloi Torrents <eloitor@disroot.org>
+pkgname=itd
+pkgver=1.1.0
+pkgrel=5
+pkgdesc="Daemon that interfaces with InfiniTime firmware on the PineTime smartwatch"
+url="https://gitea.elara.ws/Elara6331/itd"
+arch="all"
+license="GPL-3.0-only"
+depends="bluez dbus"
+makedepends="go"
+source="$pkgname-v$pkgver.tar.gz::https://gitea.elara.ws/Elara6331/itd/archive/v$pkgver.tar.gz"
+builddir="$srcdir/$pkgname"
+
+prepare() {
+ default_prepare
+
+ echo -n $pkgver > version.txt
+}
+
+build() {
+ make all -o version.txt
+}
+
+package() {
+ make DESTDIR="$pkgdir" PREFIX=/usr install
+ # just a systemd service
+ rm -r "$pkgdir"/usr/lib
+}
+
+sha512sums="
+5fbaedf936c316defd5486d53ea20daefdfda05932f950a5885149cf2656fd753becd9a98e926b15ce25358906524a40661076d4a922136c1a91b0764ac3e13a itd-v1.1.0.tar.gz
+"
diff --git a/testing/iverilog/APKBUILD b/testing/iverilog/APKBUILD
deleted file mode 100644
index 9d1b3ed6512..00000000000
--- a/testing/iverilog/APKBUILD
+++ /dev/null
@@ -1,46 +0,0 @@
-# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
-# Maintainer:
-pkgname=iverilog
-_pkgver=11_0
-pkgver=${_pkgver%%_*}.${_pkgver##*_}
-pkgrel=0
-pkgdesc="Icarus Verilog compiler and simulation tool"
-url="http://iverilog.icarus.com"
-arch="all"
-license="GPL-2.0-or-later"
-makedepends="automake autoconf gperf bison flex"
-subpackages="$pkgname-dev $pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/steveicarus/iverilog/archive/v$_pkgver.tar.gz
- autoconf-2.70.patch"
-builddir="$srcdir/$pkgname-$_pkgver"
-
-prepare() {
- default_prepare
- update_config_guess
- update_config_sub
- aclocal && autoconf
-}
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-5d6a65e1c3b6b62e99af708cd5a259cc69c6b789dd6eff69e225903d9b8c115d9e5d6f7635b30c6558197cd0ee6fd8196a163fbd98956e24c211d97328b85056 iverilog-11.0.tar.gz
-1a57dfd29799ff2aeeb27632325b9522b9764faaecf223ff7120bf224ebae8cda2beffb5f2b04bfc148e518332680272cc32491e0bcd103c2d0dffd46a37aa0e autoconf-2.70.patch
-"
diff --git a/testing/iverilog/autoconf-2.70.patch b/testing/iverilog/autoconf-2.70.patch
deleted file mode 100644
index 83864afa618..00000000000
--- a/testing/iverilog/autoconf-2.70.patch
+++ /dev/null
@@ -1,304 +0,0 @@
-From 4b3e1099e5517333dd690ba948bce1236466a395 Mon Sep 17 00:00:00 2001
-From: Martin Whitaker <icarus@martin-whitaker.me.uk>
-Date: Fri, 1 Jan 2021 18:42:01 +0000
-Subject: [PATCH] Fix configure scripts to work with autoconf 2.70.
-
-Numerous deprecated features have now become obsolete. Mostly done by
-running autoupdate, but that left a few fixes to be done manually.
-
-This includes the latest version of AX_PROG_CC_FOR_BUILD from
-https://www.gnu.org/software/autoconf-archive/ax_prog_cc_for_build.html
----
- INSTALL | 5 ++--
- Makefile.in | 2 +-
- README.txt | 2 +-
- aclocal.m4 | 57 ++++++++++++++++++++++--------------
- configure.in => configure.ac | 45 +++++++++++++---------------
- 5 files changed, 59 insertions(+), 52 deletions(-)
- rename configure.in => configure.ac (87%)
-
-diff --git a/INSTALL b/INSTALL
-index a2c8722cc..95b403761 100644
---- a/INSTALL
-+++ b/INSTALL
-@@ -19,8 +19,8 @@ diffs or instructions to the address given in the `README' so they can
- be considered for the next release. If at some point `config.cache'
- contains results you don't want to keep, you may remove or edit it.
-
-- The file `configure.in' is used to create `configure' by a program
--called `autoconf'. You only need `configure.in' if you want to change
-+ The file `configure.ac' is used to create `configure' by a program
-+called `autoconf'. You only need `configure.ac' if you want to change
- it or regenerate `configure' using a newer version of `autoconf'.
-
- The simplest way to compile this package is:
-@@ -178,4 +178,3 @@ operates.
- script, and exit.
-
- `configure' also accepts some other, not widely useful, options.
--
-diff --git a/Makefile.in b/Makefile.in
-index 974593374..90ecadeb5 100644
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -202,7 +202,7 @@ stamp-_pli_types-h: $(srcdir)/_pli_types.h.in config.status
- ./config.status _pli_types.h
- _pli_types.h: stamp-_pli_types-h
-
--$(srcdir)/configure: $(srcdir)/configure.in $(srcdir)/aclocal.m4
-+$(srcdir)/configure: $(srcdir)/configure.ac $(srcdir)/aclocal.m4
- cd $(srcdir) && autoconf
-
- config.status: $(srcdir)/configure
-diff --git a/README.txt b/README.txt
-index 26533ebcf..d04dab88c 100644
---- a/README.txt
-+++ b/README.txt
-@@ -72,7 +72,7 @@ If you are building from git, you will also need software to generate
- the configure scripts.
-
- - autoconf 2.53 or later
-- This generates configure scripts from configure.in. The 2.53
-+ This generates configure scripts from configure.ac. The 2.53
- or later versions are known to work, autoconf 2.13 is
- reported to *not* work.
-
-diff --git a/aclocal.m4 b/aclocal.m4
-index 1b2dd6a1e..5fcc7cbf2 100644
---- a/aclocal.m4
-+++ b/aclocal.m4
-@@ -6,7 +6,7 @@
- # different builds. Remember to change the default suffix string to some
- # value appropriate for the current version.
- AC_DEFUN([AX_ENABLE_SUFFIX],
--[AC_ARG_ENABLE([suffix],[AC_HELP_STRING([--enable-suffix],
-+[AC_ARG_ENABLE([suffix],[AS_HELP_STRING([--enable-suffix],
- [Use/set the installation command suffix])],
- [true],[enable_suffix=no])
- if test X$enable_suffix = Xyes; then
-@@ -250,7 +250,7 @@ echo "timestamp for $_config_header" > `AS_DIRNAME(["$_config_header"])`/[]$_sta
- ]) #_AC_AM_CONFIG_HEADER_HOOK
-
- # ===========================================================================
--# http://www.gnu.org/software/autoconf-archive/ax_prog_cc_for_build.html
-+# https://www.gnu.org/software/autoconf-archive/ax_prog_cc_for_build.html
- # ===========================================================================
- #
- # SYNOPSIS
-@@ -283,31 +283,35 @@ echo "timestamp for $_config_header" > `AS_DIRNAME(["$_config_header"])`/[]$_sta
- # and this notice are preserved. This file is offered as-is, without any
- # warranty.
-
--#serial 8
-+#serial 18
-
- AU_ALIAS([AC_PROG_CC_FOR_BUILD], [AX_PROG_CC_FOR_BUILD])
- AC_DEFUN([AX_PROG_CC_FOR_BUILD], [dnl
- AC_REQUIRE([AC_PROG_CC])dnl
- AC_REQUIRE([AC_PROG_CPP])dnl
--AC_REQUIRE([AC_EXEEXT])dnl
--AC_REQUIRE([AC_CANONICAL_HOST])dnl
-+AC_REQUIRE([AC_CANONICAL_BUILD])dnl
-
- dnl Use the standard macros, but make them use other variable names
- dnl
- pushdef([ac_cv_prog_CPP], ac_cv_build_prog_CPP)dnl
-+pushdef([ac_cv_prog_cc_c89], ac_cv_build_prog_cc_c89)dnl
- pushdef([ac_cv_prog_gcc], ac_cv_build_prog_gcc)dnl
- pushdef([ac_cv_prog_cc_works], ac_cv_build_prog_cc_works)dnl
- pushdef([ac_cv_prog_cc_cross], ac_cv_build_prog_cc_cross)dnl
- pushdef([ac_cv_prog_cc_g], ac_cv_build_prog_cc_g)dnl
-+pushdef([ac_cv_c_compiler_gnu], ac_cv_build_c_compiler_gnu)dnl
- pushdef([ac_cv_exeext], ac_cv_build_exeext)dnl
- pushdef([ac_cv_objext], ac_cv_build_objext)dnl
- pushdef([ac_exeext], ac_build_exeext)dnl
- pushdef([ac_objext], ac_build_objext)dnl
- pushdef([CC], CC_FOR_BUILD)dnl
- pushdef([CPP], CPP_FOR_BUILD)dnl
-+pushdef([GCC], GCC_FOR_BUILD)dnl
- pushdef([CFLAGS], CFLAGS_FOR_BUILD)dnl
- pushdef([CPPFLAGS], CPPFLAGS_FOR_BUILD)dnl
-+pushdef([EXEEXT], BUILD_EXEEXT)dnl
- pushdef([LDFLAGS], LDFLAGS_FOR_BUILD)dnl
-+pushdef([OBJEXT], BUILD_OBJEXT)dnl
- pushdef([host], build)dnl
- pushdef([host_alias], build_alias)dnl
- pushdef([host_cpu], build_cpu)dnl
-@@ -318,27 +322,29 @@ pushdef([ac_cv_host_alias], ac_cv_build_alias)dnl
- pushdef([ac_cv_host_cpu], ac_cv_build_cpu)dnl
- pushdef([ac_cv_host_vendor], ac_cv_build_vendor)dnl
- pushdef([ac_cv_host_os], ac_cv_build_os)dnl
--pushdef([ac_cpp], ac_build_cpp)dnl
--pushdef([ac_compile], ac_build_compile)dnl
--pushdef([ac_link], ac_build_link)dnl
-+pushdef([ac_tool_prefix], ac_build_tool_prefix)dnl
-+pushdef([am_cv_CC_dependencies_compiler_type], am_cv_build_CC_dependencies_compiler_type)dnl
-+pushdef([am_cv_prog_cc_c_o], am_cv_build_prog_cc_c_o)dnl
-+pushdef([cross_compiling], cross_compiling_build)dnl
-
--save_cross_compiling=$cross_compiling
--save_ac_tool_prefix=$ac_tool_prefix
--cross_compiling=no
--ac_tool_prefix=
-+cross_compiling_build=no
-
-+ac_build_tool_prefix=
-+AS_IF([test -n "$build"], [ac_build_tool_prefix="$build-"],
-+ [test -n "$build_alias"],[ac_build_tool_prefix="$build_alias-"])
-+
-+AC_LANG_PUSH([C])
- AC_PROG_CC
-+_AC_COMPILER_EXEEXT
-+_AC_COMPILER_OBJEXT
- AC_PROG_CPP
--AC_EXEEXT
--
--ac_tool_prefix=$save_ac_tool_prefix
--cross_compiling=$save_cross_compiling
-
- dnl Restore the old definitions
- dnl
--popdef([ac_link])dnl
--popdef([ac_compile])dnl
--popdef([ac_cpp])dnl
-+popdef([cross_compiling])dnl
-+popdef([am_cv_prog_cc_c_o])dnl
-+popdef([am_cv_CC_dependencies_compiler_type])dnl
-+popdef([ac_tool_prefix])dnl
- popdef([ac_cv_host_os])dnl
- popdef([ac_cv_host_vendor])dnl
- popdef([ac_cv_host_cpu])dnl
-@@ -349,29 +355,36 @@ popdef([host_vendor])dnl
- popdef([host_cpu])dnl
- popdef([host_alias])dnl
- popdef([host])dnl
-+popdef([OBJEXT])dnl
- popdef([LDFLAGS])dnl
-+popdef([EXEEXT])dnl
- popdef([CPPFLAGS])dnl
- popdef([CFLAGS])dnl
-+popdef([GCC])dnl
- popdef([CPP])dnl
- popdef([CC])dnl
- popdef([ac_objext])dnl
- popdef([ac_exeext])dnl
- popdef([ac_cv_objext])dnl
- popdef([ac_cv_exeext])dnl
-+popdef([ac_cv_c_compiler_gnu])dnl
- popdef([ac_cv_prog_cc_g])dnl
- popdef([ac_cv_prog_cc_cross])dnl
- popdef([ac_cv_prog_cc_works])dnl
-+popdef([ac_cv_prog_cc_c89])dnl
- popdef([ac_cv_prog_gcc])dnl
- popdef([ac_cv_prog_CPP])dnl
-
-+dnl restore global variables ac_ext, ac_cpp, ac_compile,
-+dnl ac_link, ac_compiler_gnu (dependant on the current
-+dnl language after popping):
-+AC_LANG_POP([C])
-+
- dnl Finally, set Makefile variables
- dnl
--BUILD_EXEEXT=$ac_build_exeext
--BUILD_OBJEXT=$ac_build_objext
- AC_SUBST(BUILD_EXEEXT)dnl
- AC_SUBST(BUILD_OBJEXT)dnl
- AC_SUBST([CFLAGS_FOR_BUILD])dnl
- AC_SUBST([CPPFLAGS_FOR_BUILD])dnl
- AC_SUBST([LDFLAGS_FOR_BUILD])dnl
- ])
--
-diff --git a/configure.in b/configure.ac
-similarity index 87%
-rename from configure.in
-rename to configure.ac
-index 83e0fe50e..8913fb74c 100644
---- a/configure.in
-+++ b/configure.ac
-@@ -1,21 +1,19 @@
- dnl Process this file with autoconf to produce a configure script.
--AC_INIT(netlist.h)
--AC_CONFIG_HEADER(config.h)
--AC_CONFIG_HEADER(_pli_types.h)
--AC_CONFIG_HEADER(vhdlpp/vhdlpp_config.h)
--AC_CONFIG_HEADER(vvp/config.h)
--AC_CONFIG_HEADER(vpi/vpi_config.h)
--AC_CONFIG_HEADER(libveriuser/config.h)
--AC_CONFIG_HEADER(tgt-vvp/vvp_config.h)
--AC_CONFIG_HEADER(tgt-vhdl/vhdl_config.h)
--AC_CONFIG_HEADER(tgt-pcb/pcb_config.h)
-+AC_INIT
-+AC_CONFIG_SRCDIR([netlist.h])
-+AC_CONFIG_HEADERS([config.h])
-+AC_CONFIG_HEADERS([_pli_types.h])
-+AC_CONFIG_HEADERS([vhdlpp/vhdlpp_config.h])
-+AC_CONFIG_HEADERS([vvp/config.h])
-+AC_CONFIG_HEADERS([vpi/vpi_config.h])
-+AC_CONFIG_HEADERS([libveriuser/config.h])
-+AC_CONFIG_HEADERS([tgt-vvp/vvp_config.h])
-+AC_CONFIG_HEADERS([tgt-vhdl/vhdl_config.h])
-+AC_CONFIG_HEADERS([tgt-pcb/pcb_config.h])
-
- AC_CANONICAL_HOST
- dnl Checks for programs.
- AC_PROG_CC
--# AC_PROG_CC_C99 is only available in autoconf version 2.60 and later.
--AC_PREREQ([2.60])
--AC_PROG_CC_C99
- AC_PROG_CXX
- AC_PROG_RANLIB
- AC_CHECK_TOOL(LD, ld, false)
-@@ -92,7 +90,7 @@ fi
-
- AC_LANG(C++)
-
--AC_ARG_WITH([m32], [AC_HELP_STRING([--with-m32], [Compile 32-bit on x86_64])],
-+AC_ARG_WITH([m32], [AS_HELP_STRING([--with-m32],[Compile 32-bit on x86_64])],
- [ with_m32=yes ],[ with_m32=no ])
-
- AS_IF( [test "x$with_m32" = xyes],
-@@ -170,8 +168,7 @@ AC_FUNC_ALLOCA
- AC_FUNC_FSEEKO
-
- # valgrind checks
--AC_ARG_WITH([valgrind], [AC_HELP_STRING([--with-valgrind],
-- [Add valgrind hooks])],
-+AC_ARG_WITH([valgrind], [AS_HELP_STRING([--with-valgrind],[Add valgrind hooks])],
- [], [check_valgrind=yes])
-
- AS_IF([test "x$check_valgrind" = xyes],
-@@ -182,14 +179,11 @@ AS_IF([test "x$check_valgrind" = xyes],
- [AC_MSG_ERROR([Could not find <valgrind/memcheck.h>])])])
-
- AC_MSG_CHECKING(for sys/times)
--AC_TRY_LINK(
--#include <unistd.h>
-+AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <unistd.h>
- #include <sys/times.h>
--,{clock_t a = times(0)/sysconf(_SC_CLK_TCK);},
--do_times=yes
--AC_DEFINE([HAVE_TIMES], [1], [The times system call is available in the host operating system.]),
--do_times=no
--)
-+]], [[{clock_t a = times(0)/sysconf(_SC_CLK_TCK);}]])],[do_times=yes
-+AC_DEFINE(HAVE_TIMES, 1, The times system call is available in the host operating system.)],[do_times=no
-+])
- AC_MSG_RESULT($do_times)
-
- # --
-@@ -262,7 +256,7 @@ AC_CHECK_FUNCS(fopen64)
- # The following math functions may be defined in the math library so look
- # in the default libraries first and then look in -lm for them. On some
- # systems we may need to use the compiler in C99 mode to get a definition.
--# We requested C99 mode earlier with AC_PROG_CC_C99.
-+# Modern versions of autoconf will enable C99 if it is available.
- AC_SEARCH_LIBS([lround], [m], [AC_DEFINE([HAVE_LROUND], [1])])
- AC_SEARCH_LIBS([llround], [m], [AC_DEFINE([HAVE_LLROUND], [1])])
- AC_SEARCH_LIBS([nan], [m], [AC_DEFINE([HAVE_NAN], [1])])
-@@ -337,4 +331,5 @@ AC_MSG_ERROR(cannot configure white space in libdir: $libdir)
- fi
- AC_MSG_RESULT(ok)
- AX_PROG_CC_FOR_BUILD
--AC_OUTPUT(Makefile ivlpp/Makefile vhdlpp/Makefile vvp/Makefile vpi/Makefile driver/Makefile driver-vpi/Makefile cadpli/Makefile libveriuser/Makefile tgt-null/Makefile tgt-stub/Makefile tgt-vvp/Makefile tgt-vhdl/Makefile tgt-fpga/Makefile tgt-verilog/Makefile tgt-pal/Makefile tgt-vlog95/Makefile tgt-pcb/Makefile tgt-blif/Makefile tgt-sizer/Makefile)
-+AC_CONFIG_FILES([Makefile ivlpp/Makefile vhdlpp/Makefile vvp/Makefile vpi/Makefile driver/Makefile driver-vpi/Makefile cadpli/Makefile libveriuser/Makefile tgt-null/Makefile tgt-stub/Makefile tgt-vvp/Makefile tgt-vhdl/Makefile tgt-fpga/Makefile tgt-verilog/Makefile tgt-pal/Makefile tgt-vlog95/Makefile tgt-pcb/Makefile tgt-blif/Makefile tgt-sizer/Makefile])
-+AC_OUTPUT
diff --git a/testing/j4-dmenu-desktop/APKBUILD b/testing/j4-dmenu-desktop/APKBUILD
index 2313e688eef..ab0a2e17502 100644
--- a/testing/j4-dmenu-desktop/APKBUILD
+++ b/testing/j4-dmenu-desktop/APKBUILD
@@ -1,29 +1,38 @@
# Maintainer: Bradley Saulteaux <bradsoto@gmail.com>
pkgname=j4-dmenu-desktop
pkgver=2.18
-pkgrel=0
+pkgrel=1
pkgdesc="A fast desktop menu"
-options="!check" # Requires a desktop-style system layout not present in builders
-url="https://github.com/enkore/$pkgname"
+url="https://github.com/enkore/j4-dmenu-desktop"
arch="all"
license="GPL-3.0-only"
-depends="dmenu"
-makedepends="cmake git"
-source="$pkgname-$pkgver.tar.gz::$url/archive/r$pkgver.tar.gz"
+depends="dmenu-virtual"
+makedepends="cmake samurai"
+source="$pkgname-$pkgver.tar.gz::https://github.com/enkore/j4-dmenu-desktop/archive/r$pkgver.tar.gz"
builddir="$srcdir"/$pkgname-r$pkgver
+# Requires a desktop-style system layout not present in builders
+# needs catch
+options="!check"
build() {
- cmake -DCMAKE_INSTALL_PREFIX=/usr .
- make
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DWITH_GIT_CATCH=OFF \
+ -DWITH_TESTS="$(want_check && echo ON || echo OFF)"
+
+ cmake --build build
}
check() {
# Test depends on /usr/share/applications existing on the system
- make test
+ ctest --output-on-failure --test-dir build
}
package() {
- make DESTDIR="$pkgdir" install
+ DESTDIR="$pkgdir" cmake --install build
}
-sha512sums="f8b0c825d567d60da0fb418e6f0b24a6d9daa9fb142b194b0a8b249303f4e09b6694fce72bf031007ac67253e488fc7666d4ba7beb032bc74cc2a32aca0f6c96 j4-dmenu-desktop-2.18.tar.gz"
+sha512sums="
+f8b0c825d567d60da0fb418e6f0b24a6d9daa9fb142b194b0a8b249303f4e09b6694fce72bf031007ac67253e488fc7666d4ba7beb032bc74cc2a32aca0f6c96 j4-dmenu-desktop-2.18.tar.gz
+"
diff --git a/testing/jack_capture/APKBUILD b/testing/jack_capture/APKBUILD
index 6715fadc338..a6332f0a49f 100644
--- a/testing/jack_capture/APKBUILD
+++ b/testing/jack_capture/APKBUILD
@@ -1,11 +1,11 @@
-# Contributor: Kevin Thomas <me@kevinthomas.dev>
-# Maintainer: Kevin Thomas <me@kevinthomas.dev>
+# Contributor: Kay Thomas <kaythomas@pm.me>
+# Maintainer: Kay Thomas <kaythomas@pm.me>
pkgname=jack_capture
pkgver=0.9.73_git20210429
# Upstream hasn't cut a release since May 2017 and there have been several
# changes since then. There's currently an open issue to cut a new release.
_commit=fa6f2907e4119a9c59e8d4abed0e32c4422a5523
-pkgrel=1
+pkgrel=2
pkgdesc="Program for recording soundfiles with jack"
url="https://github.com/kmatheussen/jack_capture"
arch="all"
@@ -15,8 +15,6 @@ source="https://github.com/kmatheussen/jack_capture/archive/$_commit/jack_captur
builddir="$srcdir/$pkgname-$_commit"
options="!check" # No testsuite
-[ "$CARCH" = "riscv64" ] && options="$options textrels"
-
build() {
make
}
diff --git a/testing/jackal/APKBUILD b/testing/jackal/APKBUILD
new file mode 100644
index 00000000000..035aabd65fc
--- /dev/null
+++ b/testing/jackal/APKBUILD
@@ -0,0 +1,60 @@
+# Maintainer: Sam Whited <sam@samwhited.com>
+pkgname=jackal
+pkgver=0.64.0
+pkgrel=7
+pkgdesc="Instant messaging server using XMPP"
+url="https://github.com/ortuman/jackal"
+arch="all"
+license="Apache-2.0"
+depends="gettext openssl"
+makedepends="go"
+install="jackal.pre-install jackal.post-install"
+pkgusers="jackal"
+pkggroups="jackal"
+subpackages="$pkgname-openrc"
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/ortuman/jackal/archive/refs/tags/v$pkgver.tar.gz
+ jackal.initd
+ jackal.logrotate
+ init.sql
+ config.yml.tmpl
+ "
+# !check: checks require unpackaged external tools
+# net: fetch dependencies
+options="!check net"
+
+export GOPATH="$srcdir/go"
+export GOCACHE="$srcdir/go-build"
+export GOTEMPDIR="$srcdir/go"
+
+prepare() {
+ default_prepare
+
+ go mod download
+}
+
+build() {
+ go build ./cmd/jackal
+ go build ./cmd/jackalctl
+}
+
+package() {
+ install -d -o jackal -g jackal "$pkgdir"/etc/jackal
+ install -d -m755 -o jackal -g jackal "$pkgdir"/var/lib/jackal
+ install -D -m644 -o jackal -g jackal "$srcdir"/init.sql "$pkgdir"/var/lib/jackal/init.sql
+ install -D -m644 -o jackal -g jackal sql/postgres.up.psql "$pkgdir"/var/lib/jackal/postgres.up.psql
+
+ install -D -m755 jackal "$pkgdir"/usr/bin/jackal
+ install -D -m755 jackalctl "$pkgdir"/usr/bin/jackalctl
+ install -D -m755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
+ install -D -m644 "$srcdir"/config.yml.tmpl "$pkgdir"/etc/jackal/config.yml.tmpl
+ install -D -m644 "$srcdir"/$pkgname.logrotate "$pkgdir"/etc/logrotate.d/$pkgname
+}
+
+sha512sums="
+40b4f489bd43ce64ea49bdc8b6f97483d9b159c85ed6a8b8d032b35befaa72b4cac6ee8235b2c4bead64c4e2025d03db53ff9bd2eace25ac1c5660a153c623b5 jackal-0.64.0.tar.gz
+5e18714da66506d0ec6bacf051e9060b0e38976addff0aed8d9c8b553505a1fd637de2056aa91e3a46b486e8920c8a7d64990f0d497d35a74de02833bccf7f9f jackal.initd
+d38852e817665b1a408dba66de671e673dc11200142362127ef2f6e34489ca3ed7cdcd6bbd05ab876ba89015d64d30f14f1899a899dd92ccd6a000511930277c jackal.logrotate
+7c4220f2e92ef9230dadbc0dca3f75510f2abc368d57d938ff06e29042a1a284f257fd3bb94ac7fd35ffbef6cb31cbcb643a881e8f06f5802e912f7a92e143b2 init.sql
+1a6ff8979ac80bd0e954cf44aec94ad2540d2151114418a97650b0835494e73a33c414664e52ca036f8e76f3c36eec7cf818b88ae64c59be1b7c0b752a52bc62 config.yml.tmpl
+"
diff --git a/testing/jackal/config.yml.tmpl b/testing/jackal/config.yml.tmpl
new file mode 100644
index 00000000000..b30e30a4af9
--- /dev/null
+++ b/testing/jackal/config.yml.tmpl
@@ -0,0 +1,138 @@
+peppers:
+ keys:
+ v1: ${pepper}
+ use: v1
+
+logger:
+ level: "debug"
+
+# Prometheus metrics, pprof & health check
+http:
+ port: 6060
+
+admin:
+ port: 15280
+
+#hosts:
+# - domain: jackal.im
+# tls:
+# cert_file: ""
+# privkey_file: ""
+
+storage:
+ type: pgsql
+ pgsql:
+ host: 127.0.0.1:5432
+ user: jackal
+ password: ${psql_user}
+ database: jackal
+ max_open_conns: 16
+
+# cache:
+# type: redis
+# redis:
+# addresses:
+# - localhost:6379
+
+#cluster:
+# type: kv
+# kv:
+# type: etcd
+# etcd:
+# username: root
+# endpoints:
+# - http://127.0.0.1:2379
+#
+# server:
+# port: 14369
+
+shapers:
+# - name: super
+# max_sessions: 20
+# rate:
+# limit: 131072
+# burst: 65536
+# matching:
+# jid:
+# regex: ^(ortuman|noelia).+
+
+ - name: normal
+ max_sessions: 10
+ rate:
+ limit: 65536
+ burst: 32768
+
+c2s:
+ listeners:
+ - port: 5222
+ req_timeout: 60s
+ transport: socket
+ sasl:
+ mechanisms:
+ - scram_sha_1
+ - scram_sha_256
+
+ # Authentication gateway
+ # (proto: https://github.com/jackal-xmpp/jackal-proto/blob/master/jackal/proto/authenticator/v1/authenticator.proto)
+ external:
+ address: 127.0.0.1:4567
+ is_secure: false
+
+ - port: 5223
+ direct_tls: true
+ req_timeout: 60s
+ transport: socket
+ sasl:
+ mechanisms:
+ - scram_sha_1
+ - scram_sha_256
+
+s2s:
+ listeners:
+ - port: 5269
+ req_timeout: 60s
+ max_stanza_size: 131072
+
+ - port: 5270
+ direct_tls: true
+ req_timeout: 60s
+ max_stanza_size: 131072
+
+ out:
+ dialback_secret: ${dialback}
+ dial_timeout: 5s
+ req_timeout: 60s
+ max_stanza_size: 131072
+
+modules:
+# enabled:
+# - roster
+# - offline
+# - last # XEP-0012: Last Activity
+# - disco # XEP-0030: Service Discovery
+# - private # XEP-0049: Private XML Storage
+# - vcard # XEP-0054: vcard-temp
+# - version # XEP-0092: Software Version
+# - caps # XEP-0115: Entity Capabilities
+# - blocklist # XEP-0191: Blocking Command
+# - stream_mgmt # XEP-0198: Stream Management
+# - ping # XEP-0199: XMPP Ping
+# - time # XEP-0202: Entity Time
+# - carbons # XEP-0280: Message Carbons
+#
+# version:
+# show_os: true
+#
+# offline:
+# queue_size: 300
+#
+# ping:
+# ack_timeout: 90s
+# interval: 3m
+# send_pings: true
+# timeout_action: kill
+
+#components:
+# secret: a-super-secret-key
+# listeners:
+# - port: 5275
diff --git a/testing/jackal/init.sql b/testing/jackal/init.sql
new file mode 100644
index 00000000000..f40756d61b9
--- /dev/null
+++ b/testing/jackal/init.sql
@@ -0,0 +1,3 @@
+CREATE ROLE jackal WITH LOGIN PASSWORD '${psql_password}';
+CREATE DATABASE jackal;
+GRANT ALL PRIVILEGES ON DATABASE jackal TO jackal;
diff --git a/testing/jackal/jackal.initd b/testing/jackal/jackal.initd
new file mode 100644
index 00000000000..08f5d22c4eb
--- /dev/null
+++ b/testing/jackal/jackal.initd
@@ -0,0 +1,18 @@
+#!/sbin/openrc-run
+
+description="Jackal is a server for jackal/XMPP written in Go."
+
+: ${cfgfile:="/etc/jackal/config.yml"}
+
+command="/usr/bin/jackal"
+command_args="--config $cfgfile $command_args"
+command_background=yes
+pidfile="/run/$RC_SVCNAME.pid"
+directory="/var/lib/jackal"
+error_logger="logger -t jackal -p daemon.info >/dev/null 2>&1"
+
+required_files="$cfgfile"
+
+start_pre() {
+ checkpath -d -m 0750 -o jackal:jackal /var/log/jackal
+}
diff --git a/testing/jackal/jackal.logrotate b/testing/jackal/jackal.logrotate
new file mode 100644
index 00000000000..cffa74a5be8
--- /dev/null
+++ b/testing/jackal/jackal.logrotate
@@ -0,0 +1,7 @@
+/var/log/jackal/jackal.log {
+ daily
+ rotate 14
+ compress
+ sharedscripts
+ missingok
+}
diff --git a/testing/jackal/jackal.post-install b/testing/jackal/jackal.post-install
new file mode 100644
index 00000000000..d2714aa045a
--- /dev/null
+++ b/testing/jackal/jackal.post-install
@@ -0,0 +1,12 @@
+#!/bin/sh
+
+echo "--"
+echo "Create a PostgreSQL database and role using /var/lib/jackal/init.sql."
+echo "Be sure to set the database password in the config at /etc/jackal/config.yml."
+echo "Afterwards, the schema can be created with /var/lib/jackal/postgres.up.psql."
+echo "--"
+
+export pepper=$(openssl rand -hex 12)
+export dialback=$(openssl rand -hex 12)
+umask 007
+envsubst < /etc/jackal/config.yml.tmpl > /etc/jackal/config.yml
diff --git a/testing/jackal/jackal.pre-install b/testing/jackal/jackal.pre-install
new file mode 100644
index 00000000000..abeb046940f
--- /dev/null
+++ b/testing/jackal/jackal.pre-install
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+addgroup -S jackal 2>/dev/null
+adduser -S -D \
+ -h /var/lib/jackal \
+ -s /sbin/nologin \
+ -G jackal \
+ -g "jackal XMPP Server" \
+ jackal 2>/dev/null
+
+exit 0
diff --git a/testing/jackdaw/APKBUILD b/testing/jackdaw/APKBUILD
new file mode 100644
index 00000000000..2a3c02b4059
--- /dev/null
+++ b/testing/jackdaw/APKBUILD
@@ -0,0 +1,46 @@
+# Contributor: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
+# Maintainer: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
+pkgname=jackdaw
+pkgver=0.3.1
+pkgrel=1
+pkgdesc="Gathering shiny things from your domain"
+url="https://github.com/skelsec/jackdaw"
+# s390x: py3-igraph
+arch="all !s390x"
+license="MIT"
+depends="
+ py3-aiosmb
+ py3-asyauth
+ py3-asysocks
+ py3-igraph
+ py3-minikerberos
+ py3-msldap
+ py3-networkx
+ py3-sqlalchemy
+ py3-tqdm
+ py3-winacl
+ python3
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/skelsec/jackdaw/archive/refs/tags/$pkgver.tar.gz"
+options="!check" # no tests provided
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+142ae1167feec099f082f873128002909ef91e575e285935d7b78a115e5c39192b25291d1cb5300f0d3fb1f80c40aa306963e0296ed70a607e35f605c5132196 jackdaw-0.3.1.tar.gz
+"
diff --git a/testing/jackett/APKBUILD b/testing/jackett/APKBUILD
new file mode 100644
index 00000000000..3d52c2501e0
--- /dev/null
+++ b/testing/jackett/APKBUILD
@@ -0,0 +1,70 @@
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=jackett
+pkgver=0.21.1946
+pkgrel=0
+pkgdesc="API Support for your favorite torrent trackers"
+url="https://github.com/Jackett/Jackett"
+arch="x86_64 aarch64 armv7"
+license="GPL-3.0-only"
+options="net !check" # no tests
+depends="aspnetcore6-runtime"
+makedepends="dotnet6-sdk"
+subpackages="$pkgname-openrc"
+install="$pkgname.pre-install"
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/Jackett/Jackett/archive/refs/tags/v$pkgver.tar.gz
+ jackett.initd
+ jackett.confd
+ "
+builddir="$srcdir/Jackett-$pkgver/src"
+pkgusers="jackett"
+pkggroups="jackett"
+
+# map arch to dotnet
+case $CARCH in
+ x86_64) _dotnet_arch="x64" ;;
+ aarch64) _dotnet_arch="arm64" ;;
+ armv7) _dotnet_arch="arm" ;;
+ *) _dotnet_arch="$CARCH" ;;
+esac
+
+# custom variables
+_runtime="linux-musl-$_dotnet_arch"
+_framework="net6.0"
+_output="Jackett.Server/bin/Release"
+_artifacts="$_output/$_framework/$_runtime/publish"
+
+prepare() {
+ default_prepare
+
+ # replace version info
+ local buildprops=Jackett.Common/Jackett.Common.csproj
+ sed -i -e "s/<Version>[0-9.*]\+<\/Version>/<Version>$pkgver<\/Version>/g" "$buildprops"
+}
+
+build() {
+ dotnet publish Jackett.Server \
+ -f "$_framework" \
+ --no-self-contained \
+ -r "$_runtime" \
+ -c Release
+}
+
+package() {
+ local DESTDIR="$pkgdir"/usr/lib/jackett
+
+ mkdir -p "$DESTDIR"
+ cp -af "$_artifacts"/* "$DESTDIR"/
+
+ install -Dm755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
+ install -Dm644 "$srcdir"/$pkgname.confd "$pkgdir"/etc/conf.d/$pkgname
+
+ # remove erroneously installed mono runtime library
+ rm -rf "$pkgdir"/usr/lib/jackett/libMono.Unix.so
+}
+
+sha512sums="
+1a8728a84f711140cdfa88ec00523ddc47b2c1e1baceec8b492430209ad987787cf5244c5d01900b92332f2b9581487915bf4c92045eeabae63fa86ec0be363a jackett-0.21.1946.tar.gz
+71dc80cee88d0166bcd18a784e9beda0eda6f5b34cf256f65a364375e6407bcf0f6b3eedadc2d1148d48acff9e5489134c28462d92a07c98fb5363e6adf4154a jackett.initd
+c9963ddf11e8ebb35891172226c2486d56f9bafdf7e40c99fab5d34489a5afc37902af55d9cf097d5f9cb713a6bff8b5ce4d04c3d4553b647315ba0d847dbc20 jackett.confd
+"
diff --git a/testing/jackett/jackett.confd b/testing/jackett/jackett.confd
new file mode 100644
index 00000000000..36149654cf8
--- /dev/null
+++ b/testing/jackett/jackett.confd
@@ -0,0 +1,6 @@
+# Jackett configuration options
+
+command_user="jackett:jackett" # user:group
+directory="/var/lib/jackett"
+logdir="/var/log/jackett"
+supervisor="supervise-daemon"
diff --git a/testing/jackett/jackett.initd b/testing/jackett/jackett.initd
new file mode 100644
index 00000000000..f016b81b773
--- /dev/null
+++ b/testing/jackett/jackett.initd
@@ -0,0 +1,26 @@
+#!/sbin/openrc-run
+
+# fallback values for /etc/conf.d/jackett
+: ${command_user:=jackett:jackett}
+: ${directory:=/var/lib/jackett}
+: ${logdir:=/var/log/jackett}
+
+name=jackett
+description="Jackett daemon"
+command="/usr/lib/jackett/jackett"
+command_args="--NoUpdates --DataFolder=$directory"
+command_background=true
+
+pidfile="/run/$name.pid"
+output_log="$logdir/output.log"
+error_log="$logdir/error.log"
+
+depend() {
+ need net
+ use dns logger netmount
+}
+
+start_pre() {
+ checkpath -d -o "$command_user" "$directory" "$logdir"
+ checkpath -f -o "$command_user" "$output_log" "$error_log"
+}
diff --git a/testing/jackett/jackett.pre-install b/testing/jackett/jackett.pre-install
new file mode 100644
index 00000000000..bca67f7824d
--- /dev/null
+++ b/testing/jackett/jackett.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S jackett 2>/dev/null
+adduser -S -D -h /var/lib/jackett -s /sbin/nologin -G jackett -g jackett jackett 2>/dev/null
+
+exit 0
diff --git a/testing/jackline/APKBUILD b/testing/jackline/APKBUILD
index 1b98cdeb6ad..50e652aa4e7 100644
--- a/testing/jackline/APKBUILD
+++ b/testing/jackline/APKBUILD
@@ -1,12 +1,12 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=jackline
pkgver=0.1.0
-pkgrel=0
+pkgrel=3
pkgdesc="Minimalistic and secure XMPP client written in OCaml"
url="https://github.com/hannesm/jackline"
-# limited by riscv64: ocaml, ppc64le: ocaml-uucp and ocaml-erm_xmpp
-arch="all !riscv64 !ppc64le"
+# limited by riscv64, loongarch64: ocaml, ppc64le: ocaml-uucp and ocaml-erm_xmpp
+arch="all !riscv64 !loongarch64 !ppc64le"
license="BSD-2-Clause"
makedepends="
ocaml-ppx_deriving-dev
@@ -37,7 +37,6 @@ makedepends="
"
source="$pkgname-$pkgver.tar.gz::https://github.com/hannesm/jackline/archive/refs/tags/v$pkgver.tar.gz
use-built-in-uchar-lib.patch
- latest-notty-compat.patch
"
_ocamldir=usr/lib/ocaml
@@ -71,21 +70,39 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
a3c9eb7df16912a1a8435a0379f1dca2ec5d287a452cf626c50d9c403db167f64a5a4360b0631a16536ca76cd0fa230bb883344227e028b48ee73264b34a000f jackline-0.1.0.tar.gz
712de8f691e8573a80ac0a4cdf7f9cc9d61957cab58b7c7ed832e362807a1f80e075d3cfa6411e91198791b589336055b2ecd233dabe2d209bdb9a7287a9dd1e use-built-in-uchar-lib.patch
-049665823032ff23df2a2d8c1930a92ef29999d1d88a3d3fc121b7e255c53621189a1f5179b4133c1790077fc15a692e626ed967c2c2049553178879d176cd9b latest-notty-compat.patch
"
diff --git a/testing/jackline/latest-notty-compat.patch b/testing/jackline/latest-notty-compat.patch
deleted file mode 100644
index c8a6284a1eb..00000000000
--- a/testing/jackline/latest-notty-compat.patch
+++ /dev/null
@@ -1,211 +0,0 @@
---- a/cli/cli_client.ml
-+++ b/cli/cli_client.ml
-@@ -116,14 +116,14 @@
- let a = A.(a ++ buddy_to_color (Contact.color contact resource)) in
- let first =
- match has_notifications state jid, Contact.expanded contact with
-- | true, true -> I.char a '*' 1 1
-- | false, false -> I.char a (if potentially_visible_resource state contact then '+' else ' ') 1 1
-+ | true, true -> I.char ~attr:a '*' 1 1
-+ | false, false -> I.char ~attr:a (if potentially_visible_resource state contact then '+' else ' ') 1 1
- | true, false -> Chars.star a 1
-- | false, true -> I.char a ' ' 1 1
-+ | false, true -> I.char ~attr:a ' ' 1 1
- and data = if s then Contact.oneline contact None else Contact.oneline contact resource
- in
-- let buddy = I.(first <|> string a data) in
-- v_space (I.char a ' ' 1 1) width buddy I.empty
-+ let buddy = I.(first <|> string ~attr:a data) in
-+ v_space (I.char ~attr:a ' ' 1 1) width buddy I.empty
-
- let format_buddies state w buddies =
- (* where buddies is (contact * resource list) list *)
-@@ -162,16 +162,16 @@
- I.vsnap ~align:`Top h formatted
-
- let horizontal_line buddy resource a scrollback filter width =
-- let pre = I.(Chars.hdash a 2 <|> I.char a ' ' 1 1)
-- and scroll = if scrollback = 0 then I.empty else I.string a ("*scrolling " ^ string_of_int scrollback ^ "* ")
-- and filter = match filter with None -> I.empty | Some x -> I.string a ("*filter: " ^ x ^ "* ")
-+ let pre = I.(Chars.hdash a 2 <|> I.char ~attr:a ' ' 1 1)
-+ and scroll = if scrollback = 0 then I.empty else I.string ~attr:a ("*scrolling " ^ string_of_int scrollback ^ "* ")
-+ and filter = match filter with None -> I.empty | Some x -> I.string ~attr:a ("*filter: " ^ x ^ "* ")
- and jid =
- let p = match buddy with
- | `User _ -> "buddy: "
- | `Room _ -> "room: "
- in
- let id = Contact.jid buddy resource in
-- I.string a (p ^ Xjid.jid_to_string id ^ " ")
-+ I.string ~attr:a (p ^ Xjid.jid_to_string id ^ " ")
- and otr =
- match buddy, resource with
- | `User user, Some (`Session s) ->
-@@ -183,7 +183,7 @@
- (User.verification_status_to_color vs, User.verification_status_to_string vs))
- (User.otr_fingerprint s.User.otr)
- in
-- I.(string a " " <|> string A.(a ++ buddy_to_color col) (data ^ " ") <|> Chars.hdash a 1)
-+ I.(string ~attr:a " " <|> string ~attr:A.(a ++ buddy_to_color col) (data ^ " ") <|> Chars.hdash a 1)
- | _ -> I.empty
- and presence_status =
- let tr p s =
-@@ -193,10 +193,10 @@
- (fun x ->
- match split_on_nl a x with
- | [] -> I.empty
-- | x::_ -> I.(x <|> string a " "))
-+ | x::_ -> I.(x <|> string ~attr:a " "))
- s
- in
-- I.(string a (" " ^ User.presence_to_string p ^ " ") <|> status <|> Chars.hdash a 1)
-+ I.(string ~attr:a (" " ^ User.presence_to_string p ^ " ") <|> status <|> Chars.hdash a 1)
- in
- Utils.option
- I.empty
-@@ -209,17 +209,17 @@
-
- let status_line self mysession notify log a width =
- let a = A.(a ++ st bold) in
-- let notify = if notify then I.string A.(a ++ st blink ++ Cli_colour.kind `Warning) "##" else Chars.hdash a 2
-+ let notify = if notify then I.string ~attr:A.(a ++ st blink ++ Cli_colour.kind `Warning) "##" else Chars.hdash a 2
- and jid =
- let data = User.userid self mysession
- and a' = if log then A.(st reverse) else a
- in
-- I.(string a "< " <|> string a' data <|> string a " >")
-+ I.(string ~attr:a "< " <|> string ~attr:a' data <|> string ~attr:a " >")
- and status =
- let data = User.presence_to_string mysession.User.presence
- and color = if mysession.User.presence = `Offline then `Bad else `Good
- in
-- I.(string a "[ " <|> string A.(buddy_to_color color ++ a) data <|> string a " ]" <|> Chars.hdash a 1)
-+ I.(string ~attr:a "[ " <|> string ~attr:A.(buddy_to_color color ++ a) data <|> string ~attr:a " ]" <|> Chars.hdash a 1)
- in
- v_space (Chars.hdash a 1) width I.(notify <|> jid) status
-
-@@ -256,7 +256,7 @@
- in
-
- if main_height <= 4 || chat_width <= 20 then
-- (I.string A.empty "need more space", 1)
-+ (I.string ~attr:A.empty "need more space", 1)
- else
- let active = active state
- and resource = resource state
-@@ -275,18 +275,18 @@
-
- let iinp =
- let inp = Array.of_list pre in
-- I.uchars A.empty inp
-+ I.uchars ~attr:A.empty inp
- and iinp2 =
- let inp2 = Array.of_list post in
-- I.uchars A.empty inp2
-+ I.uchars ~attr:A.empty inp2
- in
- let r = match post with
- | [] ->
- let input = char_list_to_str pre in
- ( match Cli_commands.completion state input with
- | [] -> I.empty
-- | [x] -> I.string (Cli_colour.kind `Info) x
-- | xs -> I.string (Cli_colour.kind `Info) (String.concat "|" xs) )
-+ | [x] -> I.string ~attr:(Cli_colour.kind `Info) x
-+ | xs -> I.string ~attr:(Cli_colour.kind `Info) (String.concat "|" xs) )
- | _ -> iinp2
- in
- v_center iinp r width
---- a/cli/cli_config.ml
-+++ b/cli/cli_config.ml
-@@ -16,7 +16,7 @@
- let input = I.(inp <|> inp2) in
- let above = wrap above in
- let below = wrap below in
-- let input = if I.width input = 0 then I.string A.empty " " else input in
-+ let input = if I.width input = 0 then I.string ~attr:A.empty " " else input in
- let image = I.(above <-> content <-> input <-> below) in
- Notty_lwt.Term.image term image >>= fun () ->
- let col, row =
-@@ -31,10 +31,10 @@
- let rec go (pre, post) =
- let iinp =
- let inp = Array.of_list pre in
-- I.uchars A.(st reverse) inp
-+ I.uchars ~attr:A.(st reverse) inp
- and iinp2 =
- let inp2 = Array.of_list post in
-- I.uchars A.(st reverse) inp2
-+ I.uchars ~attr:A.(st reverse) inp2
- in
- rewrap term above below (prefix, iinp, iinp2) (Notty_lwt.Term.size term) >>= fun () ->
- Lwt_stream.next (Notty_lwt.Term.events term) >>= fun e ->
-@@ -55,7 +55,7 @@
-
- let read_password ?(above = []) ?(prefix = "") ?(below = []) term =
- let rec go pre =
-- let w = I.(width (uchars A.empty (Array.of_list pre))) in
-+ let w = I.(width (uchars ~attr:A.empty (Array.of_list pre))) in
- let input = Chars.star A.(st reverse) w in
- rewrap term above below (prefix, input, I.empty) (Notty_lwt.Term.size term) >>= fun () ->
- Lwt_stream.next (Notty_lwt.Term.events term) >>= function
---- a/cli/cli_support.ml
-+++ b/cli/cli_support.ml
-@@ -4,19 +4,19 @@
- module Chars = struct
- let hdash a w =
- if !Utils.unicode then
-- I.uchar a (Uchar.of_int 0x2500) w 1
-+ I.uchar ~attr:a (Uchar.of_int 0x2500) w 1
- else
-- I.char a '-' w 1
-+ I.char ~attr:a '-' w 1
- and vdash a h =
- if !Utils.unicode then
-- I.uchar a (Uchar.of_int 0x2502) 1 h
-+ I.uchar ~attr:a (Uchar.of_int 0x2502) 1 h
- else
-- I.char a '|' 1 h
-+ I.char ~attr:a '|' 1 h
- and star a w =
- if !Utils.unicode then
-- I.uchar a (Uchar.of_int 0x2605) w 1
-+ I.uchar ~attr:a (Uchar.of_int 0x2605) w 1
- else
-- I.char a '*' w 1
-+ I.char ~attr:a '*' w 1
- end
-
- (* line wrapping is a bit tricky, since we prefer to wrap at word boundaries.
-@@ -123,11 +123,11 @@
- | `End -> if line = [] then lines else List.rev line::lines
- in
- let lines = go 0 [] [] [] `Await in
-- List.map (fun l -> I.uchars a (Array.of_list l)) (List.rev lines)
-+ List.map (fun l -> I.uchars ~attr:a (Array.of_list l)) (List.rev lines)
-
- let split_unicode strip len a str =
- (* first try to fit str in len *)
-- let whole = I.string a str in
-+ let whole = I.string ~attr:a str in
- if I.width whole <= len then
- [ whole ]
- else
-@@ -158,7 +158,7 @@
- let els =
- if Astring.String.Ascii.is_valid l then
- let lines = split_ascii strip_ws width l [] in
-- List.map (I.string a) lines
-+ List.map (I.string ~attr:a) lines
- else
- split_unicode strip_ws width a l
- in
-@@ -171,7 +171,7 @@
- I.vcat lines
-
- let split_on_nl a m =
-- List.map (I.string a) (Astring.String.cuts ~sep:"\n" ~empty:false m)
-+ List.map (I.string ~attr:a) (Astring.String.cuts ~sep:"\n" ~empty:false m)
-
- let v_space f width left right =
- let len = width - I.(width left + width right) in
diff --git a/testing/jalv/APKBUILD b/testing/jalv/APKBUILD
new file mode 100644
index 00000000000..2f9c662e0f0
--- /dev/null
+++ b/testing/jalv/APKBUILD
@@ -0,0 +1,55 @@
+# Maintainer:
+pkgname=jalv
+pkgver=1.6.8
+pkgrel=1
+pkgdesc="Simple but fully featured LV2 host for Jack"
+url="https://drobilla.net/software/jalv.html"
+arch="all"
+license="ISC"
+makedepends="
+ gtk+3.0-dev
+ jack-dev
+ lilv-dev
+ lv2-dev
+ meson
+ serd-dev
+ sord-dev
+ sratom-dev
+ suil-dev
+ "
+subpackages="$pkgname-gtk $pkgname-doc"
+source="https://download.drobilla.net/jalv-$pkgver.tar.xz"
+
+build() {
+ abuild-meson \
+ -Db_lto=true \
+ -Dcxx=enabled \
+ -Dgtk2=disabled \
+ -Dgtk3=enabled \
+ -Dportaudio=disabled \
+ -Dqt5=disabled \
+ -Dsuil=enabled \
+ -Dtests="$(want_check && echo enabled || echo disabled)" \
+ . output
+ meson compile -C output
+}
+
+check() {
+ meson test --no-rebuild --print-errorlogs -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+gtk() {
+ pkgdesc="$pkgdesc (GTK3 UI)"
+
+ amove \
+ usr/bin/jalv.gtk3 \
+ usr/share/applications/jalv.desktop
+}
+
+sha512sums="
+a3361239cbff8b02a0d46bb06480d727ad45abe1856ad4cec1a1299851392be04fdfa58ba6803ed2a446eb8964c4a44191733b53fe8529c65155b0221323428f jalv-1.6.8.tar.xz
+"
diff --git a/testing/jami-daemon/APKBUILD b/testing/jami-daemon/APKBUILD
new file mode 100644
index 00000000000..250da94c980
--- /dev/null
+++ b/testing/jami-daemon/APKBUILD
@@ -0,0 +1,86 @@
+# Contributor: Anjandev Momi <anjan@momi.ca>
+# Maintainer: Anjandev Momi <anjan@momi.ca>
+pkgname=jami-daemon
+pkgver=4.0.0_git20230925
+pkgrel=1
+_gitrev=f19b0fad9b99181e9a5e5a892ae354d940db2bb2
+_pjprojectver=1489db073be280629e41d387c1c2561f20b0bfb3
+_dhtnetver=4796de15ed32b41949489c328bc250d17c431c80
+pkgdesc="Free and universal communication platform which preserves the users’ privacy and freedoms (daemon component)"
+url="https://jami.net"
+arch="all !ppc64le !s390x !riscv64" # no webrtc-audio-processing
+license="GPL-3.0-or-later"
+makedepends="
+ alsa-lib-dev
+ asio-dev
+ cmake
+ eudev-dev
+ fmt-dev
+ ffmpeg-dev
+ gnutls-dev
+ jsoncpp-dev
+ libarchive-dev
+ libgit2-dev
+ libsecp256k1-dev
+ libupnp-dev
+ meson
+ msgpack-cxx-dev
+ opendht-dev
+ pulseaudio-dev
+ restinio-dev
+ speex-dev
+ speexdsp-dev
+ sqlite-dev
+ webrtc-audio-processing-dev
+ yaml-cpp-dev
+ zlib-dev
+ "
+subpackages="$pkgname-dev"
+source="$pkgname-$_gitrev.tar.gz::https://git.jami.net/savoirfairelinux/jami-daemon/-/archive/$_gitrev/jami-daemon-$_gitrev.tar.gz
+ pjproject-$_pjprojectver.tar.gz.noauto::https://github.com/savoirfairelinux/pjproject/archive/$_pjprojectver/pjproject-$_pjprojectver.tar.gz
+ dhtnet-$_dhtnetver.tar.gz.noauto::https://git.jami.net/savoirfairelinux/dhtnet/-/archive/$_dhtnetver/dhtnet-$_dhtnetver.tar.gz
+ dhtnet-unpack-dir.patch
+ "
+builddir="$srcdir/$pkgname-$_gitrev"
+options="!check" # https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/649
+
+prepare() {
+ default_prepare
+
+ cp -v ../pjproject-$_pjprojectver.tar.gz.noauto \
+ contrib/tarballs/pjproject-$_pjprojectver.tar.gz
+ cp -v ../dhtnet-$_dhtnetver.tar.gz.noauto \
+ contrib/tarballs/dhtnet-$_dhtnetver.tar.gz
+ mkdir -v contrib/native
+}
+
+build() {
+ cd contrib/native
+ ../bootstrap \
+ --disable-downloads \
+ --disable-all \
+ --enable-pjproject \
+ --enable-dhtnet
+ make DEPS_pjproject= DEPS_dhtnet=pjproject
+
+ cd "$builddir"
+ abuild-meson \
+ -Dinterfaces=library \
+ -Dopensl=disabled \
+ -Dportaudio=disabled \
+ -Dtests=false \
+ -Dpkg_config_path="$builddir/contrib/$(cc -dumpmachine)/lib/pkgconfig" \
+ . output
+ meson compile -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+sha512sums="
+0d8591013d1e26c436de593d1ee974bf334acdb70ac2e7e2fab3d1e426bb52b7a2b3c8de21603c5945dd2f7829caf781982c95dcc5efa7fe225aa6ba49f64fbb jami-daemon-f19b0fad9b99181e9a5e5a892ae354d940db2bb2.tar.gz
+4a7cf995827f3d450627f32dbba463593e7ee9e268e6050c12622cae9c5ee8b6f7aadd1897e218b5665f467d89d40608681e56017d3cf817b69ad7348070afc7 pjproject-1489db073be280629e41d387c1c2561f20b0bfb3.tar.gz.noauto
+c940ea273c25a38ca1d2b63077dddfeed7740405d5c16ac8f8db0a14e3fdf838a69f4c09bd68ef98b72fe04d1a3feb3f61fed2d34fb8e073c492211c121b8fae dhtnet-4796de15ed32b41949489c328bc250d17c431c80.tar.gz.noauto
+812b720831d35fffbaef1bb64cdc085bc72fb0f92f6e8ebe06ff3f1a20cf5a07cdd9dbc6dd00694cc880e7f905dfdc0fa956127b4bcb3ee78c4e08b763d2d807 dhtnet-unpack-dir.patch
+"
diff --git a/testing/jami-daemon/dhtnet-unpack-dir.patch b/testing/jami-daemon/dhtnet-unpack-dir.patch
new file mode 100644
index 00000000000..33ee641c5e8
--- /dev/null
+++ b/testing/jami-daemon/dhtnet-unpack-dir.patch
@@ -0,0 +1,11 @@
+--- a/contrib/src/dhtnet/rules.mak
++++ b/contrib/src/dhtnet/rules.mak
+@@ -30,7 +30,7 @@
+
+ dhtnet: dhtnet-$(DHTNET_VERSION).tar.gz
+ mkdir -p $(UNPACK_DIR)
+- $(UNPACK) -C $(UNPACK_DIR)
++ $(UNPACK) -C $(UNPACK_DIR)/../
+ $(APPLY) $(SRC)/dhtnet/libjami-testable.patch
+ $(MOVE)
+
diff --git a/testing/jami-qt/APKBUILD b/testing/jami-qt/APKBUILD
new file mode 100644
index 00000000000..29c4c7762a8
--- /dev/null
+++ b/testing/jami-qt/APKBUILD
@@ -0,0 +1,77 @@
+# Contributor: Anjandev Momi <anjan@momi.ca>
+# Maintainer: Anjandev Momi <anjan@momi.ca>
+pkgname=jami-qt
+pkgver=20230925
+pkgrel=0
+_gitrev=70ce0c091e4aa7abec2826ab826ae0417f593f0d
+_sortfilter=a2a0c72e4db38e1c5478bd3e0f67ff99fae11f00
+pkgdesc="Free and universal communication platform which preserves the users’ privacy and freedoms (Qt client)"
+url="https://jami.net"
+arch="all !s390x !ppc64le !riscv64" # missing jami-daemon dependency
+license="GPL-3.0-or-later"
+depends="qt6-qtbase-sqlite"
+makedepends="
+ cmake
+ jami-daemon-dev
+ libqrencode-dev
+ md4c-dev
+ python3
+ qt6-qt5compat-dev
+ qt6-qtmultimedia-dev
+ qt6-qtnetworkauth-dev
+ qt6-qtpositioning-dev
+ qt6-qtsvg-dev
+ qt6-qttools-dev
+ qt6-qtwebchannel-dev
+ samurai
+ tidyhtml-dev
+ "
+subpackages="$pkgname-doc $pkgname-lang"
+source="$pkgname-$_gitrev.tar.gz::https://git.jami.net/savoirfairelinux/jami-client-qt/-/archive/$_gitrev/jami-client-qt-$_gitrev.tar.gz
+ sortfilterproxymodel-$_sortfilter.tar.gz::https://github.com/atraczyk/SortFilterProxyModel/archive/$_sortfilter.tar.gz
+ drop-qt-version-check.patch
+ system.patch
+ "
+builddir="$srcdir/jami-client-qt-$_gitrev"
+
+prepare() {
+ default_prepare
+
+ rmdir 3rdparty/SortFilterProxyModel
+ ln -sfv "$srcdir"/SortFilterProxyModel-$_sortfilter 3rdparty/SortFilterProxyModel
+}
+
+build() {
+ if [ "$CBUILD" != "$CHOST" ]; then
+ CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ cmake -B build -G Ninja -Wno-dev \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=True \
+ -DCMAKE_BUILD_TYPE=None \
+ -DENABLE_LIBWRAP=ON \
+ -DWITH_WEBENGINE=false
+ cmake --build build
+}
+
+check() {
+ cd build
+ CTEST_OUTPUT_ON_FAILURE=TRUE ctest
+}
+
+lang() {
+ amove usr/share/jami/translations
+
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+97e15b8be1bfe334270a0f5f1bc6a5a3646f8bcf04027b83fd69b56f75c30a1124a2ee92fb9c0f10a56e523a2f9b2060f909e3f26f20db174b2cc11c162d11ed jami-qt-70ce0c091e4aa7abec2826ab826ae0417f593f0d.tar.gz
+9c02e206829ea12fb77fdd34e4ac42572d38e33d8ed60534f6d6495ac53c8449c57162fe09060a1e1de05b01f6fdbefb63a614860dd402af4911749aa8c012f8 sortfilterproxymodel-a2a0c72e4db38e1c5478bd3e0f67ff99fae11f00.tar.gz
+5bc7d449bd7b1b1176361126ef58737c69262ca7cd2f6c96695c142a793a1eb74e1cfd2a10e6677eed3a47ffb3789c7f727d8ffbd8e708abfa2319b43d3d930f drop-qt-version-check.patch
+6886c36ba43110b1519cb763fad60a4ffa1ea0170a5482a96a730d28c58d03e4164b2d8777a035fa8e07257e589eda14c97ffd3e870c7d0bd5de2e8850638506 system.patch
+"
diff --git a/testing/jami-qt/drop-qt-version-check.patch b/testing/jami-qt/drop-qt-version-check.patch
new file mode 100644
index 00000000000..90c3ee38c28
--- /dev/null
+++ b/testing/jami-qt/drop-qt-version-check.patch
@@ -0,0 +1,19 @@
+Author: Bruno Pagani
+URL: https://github.com/archlinux/svntogit-community/commit/0368876157edf0b25cb0ae1ee1eb99d155bf101f
+Summary: Drop strict Qt version check. Qt is ABI stable and jami is not using any private API
+----
+--- a/src/app/mainapplication.cpp
++++ b/src/app/mainapplication.cpp
+@@ -100,12 +100,6 @@ ScreenInfo::setCurrentFocusWindow(QWindow* window)
+ MainApplication::MainApplication(int& argc, char** argv)
+ : QApplication(argc, argv)
+ {
+- const char* qtVersion = qVersion();
+- qInfo() << "Using Qt runtime version:" << qtVersion;
+- if (strncmp(qtVersion, QT_VERSION_STR, strnlen(qtVersion, sizeof qtVersion)) != 0) {
+- qFatal("Qt build version mismatch! %s", QT_VERSION_STR);
+- }
+-
+ parseArguments();
+ QObject::connect(this, &QApplication::aboutToQuit, [this] { cleanup(); });
+ }
diff --git a/testing/jami-qt/system.patch b/testing/jami-qt/system.patch
new file mode 100644
index 00000000000..5206b4d49cf
--- /dev/null
+++ b/testing/jami-qt/system.patch
@@ -0,0 +1,33 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 5f06f2c..4d44325 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -498,20 +498,17 @@ set(BUILD_SFPM_PIC ON CACHE BOOL "enable -fPIC for SFPM" FORCE)
+ add_subdirectory(3rdparty/SortFilterProxyModel)
+ set(SFPM_OBJECTS $<TARGET_OBJECTS:SortFilterProxyModel>)
+
++find_package(PkgConfig REQUIRED)
++pkg_check_modules(tidy REQUIRED tidy)
++pkg_check_modules(md4c REQUIRED md4c-html)
++
+ # md4c
+-set(BUILD_SHARED_LIBS OFF CACHE BOOL "Don't build shared md4c library" FORCE)
+-add_subdirectory(3rdparty/md4c EXCLUDE_FROM_ALL)
+-list(APPEND CLIENT_LINK_DIRS ${MD4C_BINARY_DIR}/src)
+-list(APPEND CLIENT_INCLUDE_DIRS ${MD4C_SOURCE_DIR}/src)
+-list(APPEND CLIENT_LIBS md4c-html)
++list(APPEND CLIENT_INCLUDE_DIRS ${md4c_INCLUDE_DIRS})
++list(APPEND CLIENT_LIBS ${md4c_LIBRARIES})
+
+ # tidy-html5
+-set(BUILD_SHARED_LIB OFF CACHE BOOL "Don't build shared tidy library" FORCE)
+-set(SUPPORT_CONSOLE_APP OFF CACHE BOOL "Don't build tidy console app" FORCE)
+-add_subdirectory(3rdparty/tidy-html5 EXCLUDE_FROM_ALL)
+-list(APPEND CLIENT_LINK_DIRS ${tidy_BINARY_DIR}/Release)
+-list(APPEND CLIENT_INCLUDE_DIRS ${tidy_SOURCE_DIR}/include)
+-list(APPEND CLIENT_LIBS tidy-static)
++list(APPEND CLIENT_INCLUDE_DIRS ${tidy_INCLUDE_DIRS})
++list(APPEND CLIENT_LIBS ${tidy_LIBRARIES})
+
+ # common executable sources
+ qt_add_executable(
diff --git a/testing/janus-gateway/APKBUILD b/testing/janus-gateway/APKBUILD
deleted file mode 100644
index eb3d4e76248..00000000000
--- a/testing/janus-gateway/APKBUILD
+++ /dev/null
@@ -1,67 +0,0 @@
-# Contributor: Michael Pirogov <vbnet.ru@gmail.com>
-# Maintainer: Michael Pirogov <vbnet.ru@gmail.com>
-pkgname=janus-gateway
-pkgver=1.0.1
-pkgrel=0
-pkgdesc="Janus WebRTC Server"
-url="https://janus.conf.meetecho.com/"
-license="GPL-3.0-only"
-arch="all !riscv64" # blocked by nodejs/npm
-install="$pkgname.pre-install"
-makedepends="autoconf automake libtool gengetopt lua5.3-dev cmake libsrtp-dev
- libnice-dev jansson-dev libconfig-dev libusrsctp-dev libmicrohttpd-dev
- libwebsockets-dev rabbitmq-c-dev curl-dev libogg-dev libopusenc-dev
- lua duktape-dev npm doxygen graphviz ffmpeg-dev zlib-dev libogg-dev
- libuv-dev sofia-sip-dev paho-mqtt-c-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/meetecho/janus-gateway/archive/refs/tags/v$pkgver.tar.gz
- $pkgname.initd
- $pkgname.confd
- "
-subpackages="$pkgname-doc $pkgname-openrc"
-options="!check" # missing aiortc
-
-# nanomsg not available on armv7
-case "$CARCH" in
- arm*)
- ;;
- *)
- makedepends="$makedepends nanomsg-dev"
- ;;
-esac
-
-prepare() {
- default_prepare
- autoreconf -fi
-}
-
-build() {
- ./configure \
- --prefix=/usr \
- --sysconfdir=/etc \
- --runstatedir=/run \
- --enable-sample-event-handler \
- --enable-rest \
- --enable-javascript-es-module \
- --enable-all-js-modules \
- --enable-post-processing \
- --enable-json-logger \
- --enable-plugin-lua \
- --enable-plugin-sip \
- --enable-plugin-duktape \
- --enable-plugin-mqtt \
- --enable-docs \
- --disable-aes-gcm
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- install -Dm755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
- install -Dm644 "$srcdir"/$pkgname.confd "$pkgdir"/etc/conf.d/$pkgname
-}
-
-sha512sums="
-0d0071078a9fa7d48ba7347da93266720100d23375ff4dbb9f63aea7bfb0fc86f13694a9bb0f5bcee0d09767249157eba4e03a079c0ca5bbe7c85ce75737b8fc janus-gateway-1.0.1.tar.gz
-942d8566219a426671d78b962f1584a910137995a2dbfc9af2a5c2901f30dc8992bbc749543d149d9f3d24bd751090abc226fca405276450ef84acff1cd74cc1 janus-gateway.initd
-f442a419a435f5d1adab673011b7689a5680064f32f712e5e4668c486ce10f1442822c60cb302ee850ddc576a9e9f610a0863f02204e56f1fc68aa3ee312ebe0 janus-gateway.confd
-"
diff --git a/testing/janus-gateway/janus-gateway.confd b/testing/janus-gateway/janus-gateway.confd
deleted file mode 100644
index f4170eeadbb..00000000000
--- a/testing/janus-gateway/janus-gateway.confd
+++ /dev/null
@@ -1,3 +0,0 @@
-JANUS_USER="janus"
-JANUS_GROUP="janus"
-JANUS_OPTS="-D -o"
diff --git a/testing/janus-gateway/janus-gateway.initd b/testing/janus-gateway/janus-gateway.initd
deleted file mode 100644
index 6806daab674..00000000000
--- a/testing/janus-gateway/janus-gateway.initd
+++ /dev/null
@@ -1,32 +0,0 @@
-#!/sbin/openrc-run
-
-PIDFILE=/var/run/janus.pid
-
-depend() {
- need net
-}
-
-start_pre() {
- checkpath -f -o $JANUS_USER:$JANUS_GROUP -m644 /var/log/janus.log
- if [ ! -f /etc/janus/janus.jcfg ] ; then
- eerror "/etc/janus/janus.jcfg file doesn't exists!"
- return 1
- fi
-
-}
-
-start() {
- ebegin "Starting Janus gateway server"
- start-stop-daemon --start --make-pidfile --exec /usr/bin/janus \
- --pidfile "${PIDFILE}" --background --quiet \
- --user "${JANUS_USER}" \
- -- ${JANUS_OPTS} -L /var/log/janus.log
- eend $?
-}
-
-stop() {
- ebegin "Stopping Janus gateway server"
- start-stop-daemon --stop --quiet --pidfile "${PIDFILE}"
- eend $?
-}
-
diff --git a/testing/janus-gateway/janus-gateway.pre-install b/testing/janus-gateway/janus-gateway.pre-install
deleted file mode 100644
index 717dba6fa8b..00000000000
--- a/testing/janus-gateway/janus-gateway.pre-install
+++ /dev/null
@@ -1,5 +0,0 @@
-#!/bin/sh
-
-addgroup -S janus &>/dev/null
-adduser -S -G janus -s /sbin/nologin -D janus &>/dev/null
-exit 0
diff --git a/testing/jaq/APKBUILD b/testing/jaq/APKBUILD
new file mode 100644
index 00000000000..6904518ab19
--- /dev/null
+++ b/testing/jaq/APKBUILD
@@ -0,0 +1,36 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=jaq
+pkgver=1.3.0
+pkgrel=0
+pkgdesc="jq clone focused on correctness, speed and simplicity"
+url="https://github.com/01mf02/jaq"
+arch="all"
+license="MIT"
+makedepends="cargo cargo-auditable"
+source="
+ https://github.com/01mf02/jaq/archive/v$pkgver/jaq-$pkgver.tar.gz
+ fix-drop-test.patch
+ "
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm755 target/release/jaq -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+00e3b32dc53036d8437708f48734c136a3c2a219ac84106c65d0bbac5797bac51aa2665064402d7b0efbc8710c859286cec20c5232be3d4e26e1896b968e515b jaq-1.3.0.tar.gz
+8307cc6ba54b38ec08c4c33ece617683e326793ce70242826abe6f543cd4306c90db7acdeb2119a02910ac4856c73da42ece11b06aa00ca5a402a8b04ac629ff fix-drop-test.patch
+"
diff --git a/testing/jaq/fix-drop-test.patch b/testing/jaq/fix-drop-test.patch
new file mode 100644
index 00000000000..57c77d1923f
--- /dev/null
+++ b/testing/jaq/fix-drop-test.patch
@@ -0,0 +1,13 @@
+diff --git a/jaq-interpret/src/rc_lazy_list.rs b/jaq-interpret/src/rc_lazy_list.rs
+index 0342de9..20b7076 100644
+--- a/jaq-interpret/src/rc_lazy_list.rs
++++ b/jaq-interpret/src/rc_lazy_list.rs
+@@ -50,7 +50,7 @@ fn drop() {
+ let list = List::from_iter(0..100_000);
+ // clone() ensures that we keep a copy of the whole list around
+ // sum() then evaluates the whole list
+- assert_eq!(list.clone().sum::<usize>(), 4999950000);
++ assert_eq!(list.clone().sum::<u64>(), 4999950000);
+ // at the end, a long, fully evaluated list is dropped,
+ // which would result in a stack overflow without the custom `Drop` impl
+ std::mem::drop(list);
diff --git a/testing/jasper/APKBUILD b/testing/jasper/APKBUILD
deleted file mode 100644
index 9b796addec6..00000000000
--- a/testing/jasper/APKBUILD
+++ /dev/null
@@ -1,41 +0,0 @@
-# Contributor: Bart Ribbers <bribbers@disroot.org>
-# Maintainer: Bart Ribbers <bribbers@disroot.org>
-pkgname=jasper
-pkgver=3.0.3
-pkgrel=0
-pkgdesc="Software-based implementation of the codec specified in the emerging JPEG-2000 Part-1 standard"
-url="https://www.ece.uvic.ca/~mdadams/jasper/"
-arch="all"
-license="custom:JasPer2.0"
-makedepends="
- cmake
- samurai
- "
-subpackages="$pkgname-dev $pkgname-doc"
-source="https://github.com/mdadams/jasper/releases/download/version-$pkgver/jasper-$pkgver.tar.gz"
-builddir="$srcdir/$pkgname-$pkgver"
-
-build() {
- cmake -B build-jasper -G Ninja \
- -DCMAKE_BUILD_TYPE=MinSizeRel \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DCMAKE_SKIP_RPATH=ON \
- -DJAS_ENABLE_OPENGL=ON \
- -DJAS_ENABLE_LIBJPEG=ON \
- -DJAS_ENABLE_AUTOMATIC_DEPENDENCIES=OFF
- cmake --build build-jasper
-}
-
-check() {
- cd build-jasper
- CTEST_OUTPUT_ON_FAILURE=TRUE ctest
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build-jasper
-}
-
-sha512sums="
-82132f3fd55c4c0f8fecd8f871d1118acbfc4849fedb70c124368b3ad1628f966308e6179cc1c8b231297d19c34a7495c0839408952bd1080f08b3d49db9df65 jasper-3.0.3.tar.gz
-"
diff --git a/testing/java-asmtools/APKBUILD b/testing/java-asmtools/APKBUILD
index 32ef6e11b2d..4c993dc14de 100644
--- a/testing/java-asmtools/APKBUILD
+++ b/testing/java-asmtools/APKBUILD
@@ -1,21 +1,23 @@
# Contributor: Simon Frankenberger <simon-alpine@fraho.eu>
# Maintainer: Simon Frankenberger <simon-alpine@fraho.eu>
pkgname=java-asmtools
-_pkgver=7.0-b09
+_pkgver=8.0-b09
pkgver=${_pkgver/-b/.}
pkgrel=0
pkgdesc="The AsmTools open source project is used to develop tools for the production of proper and improper Java '.class' files"
url="https://github.com/openjdk/asmtools"
-# s390x: ftbfs due to sigfpe
-# aarch64: hangs on build
-# riscv64: java
-arch="noarch !riscv64 !aarch64 !s390x"
+# riscv64: no java
+# s390x: FTBFS due to SIGFPE (see #12275)
+# armhf / armv7 / x86 / ppc64le: requires java 17
+arch="noarch !riscv64 !armhf !armv7 !x86 !ppc64le !s390x"
license="GPL-2.0"
makedepends="java-jdk"
options="!check" # this package has no tests
subpackages="$pkgname-doc:_doc"
source="https://github.com/openjdk/asmtools/archive/$_pkgver/asmtools-$_pkgver.tar.gz
https://archive.apache.org/dist/ant/binaries/apache-ant-1.9.13-bin.zip
+
+ java-version-check.patch
"
builddir="$srcdir/asmtools-$_pkgver"
@@ -49,6 +51,7 @@ _doc() {
}
sha512sums="
-027744e2b92719525c8d00cc16c03563dc1ca6c9e7d771145cd39ba841fe35934e3f3d3e2982ca12156466050b98a458f08f204ed44d964b467d37517d7d288a asmtools-7.0-b09.tar.gz
+27d4378061d0c703d0220b35b75ce67bcd20dce3f0339cdbd68e8396cf647719ae029720081abac22e186ae9d5ed5c1fb4050adea30f3ef855586eaacba1dca7 asmtools-8.0-b09.tar.gz
873062cf789e1572ec4ef3cdbb15c0d3a57e5a0794068591565367d4cec15b9f9a24f59734a85170d61b23eb9288d6bafd35a9ae2b015b09c7a175e344cb4e1c apache-ant-1.9.13-bin.zip
+e6687969df9d1386c9d7e2948f0f08f1c447f14d30281372f29efb47a894a709b1a901429087e5e7cb69daa9f3e935f3613750239e9eb848ddaf736b4affd056 java-version-check.patch
"
diff --git a/testing/java-asmtools/java-version-check.patch b/testing/java-asmtools/java-version-check.patch
new file mode 100644
index 00000000000..a3ee7ba7a10
--- /dev/null
+++ b/testing/java-asmtools/java-version-check.patch
@@ -0,0 +1,17 @@
+Author: Simon Frankenberger <simon-alpine@fraho.eu>
+Subject: Fix java version check
+
+The java version check only detects java 17, 18, 19
+and does not work with java 20+. This patch fixes the regex.
+
+--- old/build/build.xml
++++ new/build/build.xml
+@@ -174,7 +174,7 @@
+ <target name="-check-java-version?">
+ <echo></echo>
+ <condition property="check-java-version.passed">
+- <matches pattern="1[789]+.*" string="${ant.java.version}"/>
++ <matches pattern="(1[789]+|2[0-9]+).*" string="${ant.java.version}"/>
+ </condition>
+ <fail unless="check-java-version.passed">
+ .${line.separator}${line.separator}
diff --git a/testing/java-jtharness/APKBUILD b/testing/java-jtharness/APKBUILD
index f99e9d9983e..90c37e34cab 100644
--- a/testing/java-jtharness/APKBUILD
+++ b/testing/java-jtharness/APKBUILD
@@ -1,25 +1,24 @@
# Contributor: Simon Frankenberger <simon-alpine@fraho.eu>
# Maintainer: Simon Frankenberger <simon-alpine@fraho.eu>
pkgname=java-jtharness
-pkgver=6.0_p10
+pkgver=6.0_p12
_pkgver=${pkgver/_p/-b}
-pkgrel=1
+pkgrel=0
pkgdesc="The JT harness is a general purpose, fully-featured, flexible, and configurable test harness"
-url="https://hg.openjdk.java.net/code-tools/jtharness"
-arch="noarch !riscv64" # blocked by java-jdk
+url="https://github.com/openjdk/jtharness"
+# riscv64: java
+arch="noarch !riscv64"
license="GPL-2.0"
-makedepends="java-jdk"
+makedepends="java-jdk apache-ant"
options="!check" # this package has no tests
subpackages="$pkgname-doc:_doc $pkgname-examples:_examples"
-source="jtharness-$_pkgver.tar.bz2::https://hg.openjdk.java.net/code-tools/jtharness/archive/jt$_pkgver.tar.bz2
-https://archive.apache.org/dist/ant/binaries/apache-ant-1.9.13-bin.tar.bz2
+source="jtharness-$_pkgver.tar.gz::https://github.com/openjdk/jtharness/archive/refs/tags/jt$_pkgver.tar.gz
https://repo1.maven.org/maven2/asm/asm-all/3.1/asm-all-3.1.jar
https://repo1.maven.org/maven2/junit/junit/4.4/junit-4.4.jar
https://repo1.maven.org/maven2/javax/servlet/javax.servlet-api/3.0.1/javax.servlet-api-3.0.1.jar
"
builddir="$srcdir/jtharness-jt$_pkgver"
-_ant_home="$srcdir"/apache-ant-1.9.13/
_servletjar="$srcdir"/javax.servlet-api-3.0.1.jar
_bytecodelib="$srcdir"/asm-all-3.1.jar
_junitlib="$srcdir"/junit-4.4.jar
@@ -39,7 +38,7 @@ prepare() {
build() {
cd "$builddir/build"
- JAVA_HOME=/usr/lib/jvm/default-jvm $_ant_home/bin/ant
+ JAVA_HOME=/usr/lib/jvm/default-jvm ant
}
package() {
@@ -65,8 +64,9 @@ _doc() {
"$_destdir"
}
-sha512sums="f910c608dbc7f89066f47b355c18f561cfef429298e2e740fe678cb741ca847de97a821f542d38c96c34ba9bcd30661d852a773b29b75dcdcc91e2e8f9082fe8 jtharness-6.0-b10.tar.bz2
-e9b602aacbac7bf721a830f56ea06cde60a7a674a6d67f05ce82848ac01b2ee84f7003190286fea1030abb523398fa1a280d265377f41f57e7cf7e6d1fe37465 apache-ant-1.9.13-bin.tar.bz2
+sha512sums="
+b4e4437892fa829e37e74aa57becae845d7dbc7fc861f18d4a50a5ed4c9cde22c8fb29791a0a4d6ca0ad5b8be7d3e26476843651ba0cb6eda84b9aef898525dd jtharness-6.0-b12.tar.gz
00990aa9d39fe874f6799dc8d9d1b208b61e6358a949df86014edeacbea63dcdc4ac7870948a54270e1db4b8ec134313b200fe7cdede7aa6746c812c36f0ac13 asm-all-3.1.jar
4ae9fb09ebd9800ba1c9f0bfc43f07f7bc499e41894dea74b50f01fd69690b5d4e8f7949e2afce10fa0da719e8a2df223430e3aef7e2529662c7b70a12c80ab9 junit-4.4.jar
-1e087f1e4632048f1c6ea12e3820a30c7a6e66b13277ec8e784d8c5aba99335cd90cdb08e23756e815324cc9c8dc22d0937c7ccf4b89ee00222cd5e4a1d2a0de javax.servlet-api-3.0.1.jar"
+1e087f1e4632048f1c6ea12e3820a30c7a6e66b13277ec8e784d8c5aba99335cd90cdb08e23756e815324cc9c8dc22d0937c7ccf4b89ee00222cd5e4a1d2a0de javax.servlet-api-3.0.1.jar
+"
diff --git a/testing/java-jtreg/APKBUILD b/testing/java-jtreg/APKBUILD
index 5406486f439..91ed21eae32 100644
--- a/testing/java-jtreg/APKBUILD
+++ b/testing/java-jtreg/APKBUILD
@@ -1,30 +1,59 @@
# Contributor: Simon Frankenberger <simon-alpine@fraho.eu>
# Maintainer: Simon Frankenberger <simon-alpine@fraho.eu>
pkgname=java-jtreg
-pkgver=5.1_p01
-_pkgver=${pkgver/_p/-b}
-pkgrel=2
+pkgver=7.3.1_p1
+_pkgver=${pkgver/_p/+}
+pkgrel=0
pkgdesc="jtreg is the test harness used by the JDK test framework"
url="https://github.com/openjdk/jtreg"
-arch="noarch !riscv64" # blocked by openjdk8
+# oracle dropped support for 32 bit
+# riscv64 blocked by openjdk11
+# s390x, ppc64le due to java-asmtools
+arch="all !x86 !armhf !armv7 !riscv64 !s390x !ppc64le"
license="GPL-2.0"
-depends="java-jtharness java-asmtools"
-makedepends="openjdk8 zip" # explicitly required java 8 to compile
-options="!check" # the tests require an X11 or VNC display
-#subpackages="$pkgname-doc:_doc $pkgname-examples:_examples"
-source="jtreg-$_pkgver.tar.bz2::https://github.com/openjdk/jtreg/archive/jtreg$_pkgver.tar.gz
-
-jtreg-symlink-patch.txt
-jtdiff-symlink-patch.txt
-fix-version-number.patch
-fix-build-script.patch
+depends="java-jtharness java-asmtools apache-ant"
+makedepends="bash openjdk11 zip" # explicitly requires java 11 to compile
+checkdepends="diffutils grep"
+
+# check gets stuck on builder
+[ "$CARCH" = "ppc64le" ] && options="$options !check"
+
+source="jtreg-$_pkgver.tar.gz::https://github.com/openjdk/jtreg/archive/jtreg-$_pkgver.tar.gz
+
+ fix-build.patch
+ headless-tests.patch
+
+ jtreg-symlink-patch.txt
+ jtdiff-symlink-patch.txt
"
-builddir="$srcdir/jtreg-jtreg$_pkgver"
+builddir="$srcdir/jtreg-jtreg-${pkgver/_p/-}"
build() {
- builddir="$builddir" \
- TAG_INFO="jtreg$_pkgver" \
- ash make/build-all.sh /usr/lib/jvm/default-jvm
+ export JTREG_BUILD_VERSION="${_pkgver%+*}" \
+ JTREG_BUILD_NUMBER="${_pkgver/*+}"
+
+ local ant_home=/usr/share/java/apache-ant
+ export ANT="$ant_home"/bin/ant \
+ ANT_JAR="$ant_home"/lib/ant.jar
+
+ local asmtools_home=/usr/share/java/asmtools
+ export ASMTOOLS_JAR="$asmtools_home"/lib/asmtools.jar \
+ ASMTOOLS_LICENSE="$asmtools_home"/LICENSE
+
+ local jtharness_home=/usr/share/java/jtharness
+ export JTHARNESS_JAVATEST_JAR="$jtharness_home"/lib/javatest.jar \
+ JTHARNESS_LICENSE="$jtharness_home"/legal/license.txt \
+ JTHARNESS_COPYRIGHT="$jtharness_home"/legal/copyright.txt
+
+ bash make/build.sh \
+ --jdk /usr/lib/jvm/java-11-openjdk \
+ -- \
+ -j1
+}
+
+check() {
+ sed -i 's/-j1/quick-test/' build/make.sh
+ bash build/make.sh
}
package() {
@@ -64,8 +93,10 @@ _doc() {
"$_destdir"
}
-sha512sums="64277f72847b6c182cd00fee39c817a1c510d7e6eef0dd01f3642d4ca661cd5215330ef4627e3557d4ba9eb212bdca3ef6539f1b5c0f72ba617c5a18063ef990 jtreg-5.1-b01.tar.bz2
+sha512sums="
+3d098a77da247092b48a60aa1c336c8e07340ad9bc760a1d054c754c10d93a72ab72674cc1eb2e27d391043c37a01d6c067a50d9fd3e7bcbc3c960841f93423c jtreg-7.3.1+1.tar.gz
+2c4bcfdc7792bacdb9c5ed81feb52bbbb1cdcbe8ac1cb9c9c6e1e5c6474ede625a748829a75c12cbd0cba57582f69006221ec7d3f7e999d116955022575697ff fix-build.patch
+1b10c0b3f27541d2456166930c925d32db95b6a7d73625df8340a61f781b85d3bfb0d50f3099bdd448b498c0c9be8e7dd8ab0646142592c2538a291ab4a579b8 headless-tests.patch
136e6e58b85d05f3e97467344c95303cbd310ada7c6533a129a6e62786d5e9498a1842b75de9838b432e68d0d863058ac5aeeea2a78e98a2170b4a0c1c113083 jtreg-symlink-patch.txt
67f63317a2aaedd17e822389065ff5d86d574f4cb2e2af375856a9c7356dd048c396517372788b889db376fe4aa73c66d530938b8975d11d7714ac84e3dcd00d jtdiff-symlink-patch.txt
-769de697c43c8aeb68945f5c0f5fd42925e3cae422b732bc1c771d261ef947d1e0c865225e0384208262facad20a74f97c2905c9828215ccc24d997ee06a1356 fix-version-number.patch
-a8dcf8038f8b5578a9b0580d167513933a3582f2f6d0b7230630d7abbb0e4fff1aa98f9d4e5be6a6a2fb2bbc660a5c53bd5d6ad6772bbda20c74dc3d28ba7aae fix-build-script.patch"
+"
diff --git a/testing/java-jtreg/fix-build-script.patch b/testing/java-jtreg/fix-build-script.patch
deleted file mode 100644
index 1bc8e9e6609..00000000000
--- a/testing/java-jtreg/fix-build-script.patch
+++ /dev/null
@@ -1,110 +0,0 @@
---- old/make/Defs.gmk
-+++ new/make/Defs.gmk
-@@ -411,7 +411,7 @@
- SORT = /usr/bin/sort
- TEST = /usr/bin/test
- TIDY = /usr/bin/tidy
--TOUCH = /usr/bin/touch
-+TOUCH = /bin/touch
- UNZIP = /usr/bin/unzip
- WC = /usr/bin/wc
- ZIP = /usr/bin/zip
---- old/make/build-all.sh
-+++ new/make/build-all.sh
-@@ -60,35 +60,10 @@
- if [ $CYGWIN -eq 1 ]; then echo `cygpath -m $1`; else echo $1; fi
- }
-
--get_scm_type() {
-- if [ -d .hg ]; then
-- echo "HG"
-- elif [ -d .git ]; then
-- echo "GIT"
-- else
-- echo "Error: unrecognized repository, it must be Git or Mercurial" >&2
-- exit 1
-- fi
--}
--
--SCM_TYPE=`get_scm_type`
--
- get_root() {
-- case $SCM_TYPE in
-- HG) hg root ;;
-- GIT) git rev-parse --show-toplevel ;;
-- *) echo "Error: unknown SCM" >&2 ; exit 1 ;;
-- esac
-+ echo $builddir
- }
-
--get_tag_info() {
-- case $SCM_TYPE in
-- HG) hg tags | grep jtreg | head -1 ;;
-- GIT) git tag | grep jtreg | tail -1 ;;
-- *) echo "Error: unknown SCM" >&2 ; exit 1 ;;
-- esac
--}
--
- export JAVA_HOME=$1
- export PATH="$JAVA_HOME:$PATH"
-
-@@ -147,7 +122,7 @@
- ANT_VERSION=${ANT_VERSION:-apache-ant-1.9.4}
- ANT_ZIP=${ANT_DIR}/${ANT_VERSION}.zip
- WGet ${APACHE_ANT_URL}/${ANT_VERSION}-bin.zip ${ANT_ZIP}
--echo "ec57a35eb869a307abdfef8712f3688fff70887f ${ANT_ZIP}" | ${SHASUM} --check -
-+echo "ec57a35eb869a307abdfef8712f3688fff70887f ${ANT_ZIP}" | ${SHASUM} -c -
- ${UNZIP} ${UNZIP_OPTS} -d ${ANT_DIR} ${ANT_ZIP}
-
- ANT_JAR=${ANT_DIR}/${ANT_VERSION}/lib/ant.jar
-@@ -210,17 +185,17 @@
- ASM_JAR=${JCOV_DEPS_DIR}/asm-6.2.jar
- ASM_JAR_CHECKSUM='1b6c4ff09ce03f3052429139c2a68e295cae6604'
- WGet ${MAVEN_REPO_URL}/org/ow2/asm/asm/6.2/asm-6.2.jar ${ASM_JAR}
--echo "${ASM_JAR_CHECKSUM} ${ASM_JAR}" | ${SHASUM} --check -
-+echo "${ASM_JAR_CHECKSUM} ${ASM_JAR}" | ${SHASUM} -c -
-
- ASM_TREE_JAR=${JCOV_DEPS_DIR}/asm-tree-6.2.jar
- ASM_TREE_JAR_CHECKSUM='61570e046111559f38d4e0e580c005f75988c0a6'
- WGet ${MAVEN_REPO_URL}/org/ow2/asm/asm-tree/6.2/asm-tree-6.2.jar ${ASM_TREE_JAR}
--echo "${ASM_TREE_JAR_CHECKSUM} ${ASM_TREE_JAR}" | ${SHASUM} --check -
-+echo "${ASM_TREE_JAR_CHECKSUM} ${ASM_TREE_JAR}" | ${SHASUM} -c -
-
- ASM_UTIL_JAR=${JCOV_DEPS_DIR}/asm-utils-6.2.jar
- ASM_UTIL_JAR_CHECKSUM='a9690730f92cc79eeadc20e400ebb41eccce10b1'
- WGet ${MAVEN_REPO_URL}/org/ow2/asm/asm-util/6.2/asm-util-6.2.jar ${ASM_UTIL_JAR}
--echo "${ASM_UTIL_JAR_CHECKSUM} ${ASM_UTIL_JAR}" | ${SHASUM} --check -
-+echo "${ASM_UTIL_JAR_CHECKSUM} ${ASM_UTIL_JAR}" | ${SHASUM} -c -
-
- # Build jcov
- JCOV_SRC_ZIP=${JCOV_BUILD_DIR}/source.zip
-@@ -263,7 +238,7 @@
-
- JUNIT_JAR=${JUNIT_DEPS_DIR}/junit-4.10.jar
- WGet ${MAVEN_REPO_URL}/junit/junit/4.10/junit-4.10.jar ${JUNIT_JAR}
--echo "e4f1766ce7404a08f45d859fb9c226fc9e41a861 ${JUNIT_JAR}" | ${SHASUM} --check -
-+echo "e4f1766ce7404a08f45d859fb9c226fc9e41a861 ${JUNIT_JAR}" | ${SHASUM} -c -
-
- ${UNZIP} ${UNZIP_OPTS} ${JUNIT_JAR} LICENSE.txt -d ${JUNIT_DEPS_DIR}
- JUNIT_LICENSE=${JUNIT_DEPS_DIR}/LICENSE.txt
-@@ -274,18 +249,17 @@
-
- TESTNG_JAR=${TESTNG_DEPS_DIR}/testng-6.9.5.jar
- WGet ${MAVEN_REPO_URL}/org/testng/testng/6.9.5/testng-6.9.5.jar ${TESTNG_JAR}
--echo "5d12ea207fc47c3f341a3f8ecc88a3eac396a777 ${TESTNG_JAR}" | ${SHASUM} --check -
-+echo "5d12ea207fc47c3f341a3f8ecc88a3eac396a777 ${TESTNG_JAR}" | ${SHASUM} -c -
-
- TESTNG_LICENSE=${TESTNG_DEPS_DIR}/LICENSE.txt
- WGet https://raw.githubusercontent.com/cbeust/testng/testng-6.9.5/LICENSE.txt ${TESTNG_LICENSE}
-
- JCOMMANDER_JAR=${TESTNG_DEPS_DIR}/jcommander-1.72.jar
- WGet ${MAVEN_REPO_URL}/com/beust/jcommander/1.72/jcommander-1.72.jar ${JCOMMANDER_JAR}
--echo "6375e521c1e11d6563d4f25a07ce124ccf8cd171 ${JCOMMANDER_JAR}" | ${SHASUM} --check -
-+echo "6375e521c1e11d6563d4f25a07ce124ccf8cd171 ${JCOMMANDER_JAR}" | ${SHASUM} -c -
-
-
- ## Set version and build numbers to the latest tagged version by default
--TAG_INFO=`get_tag_info`
- if [ -z ${BUILD_NUMBER:-} ]; then
- BUILD_NUMBER=`echo $TAG_INFO | sed 's/jtreg\([0-9]\.[0-9]\)-\(b[0-9]*\).*/\2/'`
- fi
diff --git a/testing/java-jtreg/fix-build.patch b/testing/java-jtreg/fix-build.patch
new file mode 100644
index 00000000000..e8417c69f0f
--- /dev/null
+++ b/testing/java-jtreg/fix-build.patch
@@ -0,0 +1,11 @@
+--- old/make/Defs.gmk
++++ new/make/Defs.gmk
+@@ -173,7 +173,7 @@
+ else
+ TIDY = /usr/bin/tidy
+ endif
+-TOUCH = /usr/bin/touch
++TOUCH = /bin/touch
+ UNZIP = /usr/bin/unzip
+ WC = /usr/bin/wc
+ ZIP = /usr/bin/zip
diff --git a/testing/java-jtreg/fix-version-number.patch b/testing/java-jtreg/fix-version-number.patch
deleted file mode 100644
index 086d7e42230..00000000000
--- a/testing/java-jtreg/fix-version-number.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-The 5.1b01 release has the wrong version information set, so correct them
-
---- old/make/Defs.gmk
-+++ new/make/Defs.gmk
-@@ -445,9 +445,9 @@
- # Version tags
- #
- # BUILD_* variables are normally set (overridden) by RE builds
--BUILD_VERSION = 5.0
-+BUILD_VERSION = 5.1
- BUILD_MILESTONE = dev
--BUILD_NUMBER = b00
-+BUILD_NUMBER = b01
-
- # don't eval dates here directly, because that leads to unstable builds
- #BUILD_YEAR:sh = /bin/date +"%Y"
---- old/make/build.properties
-+++ new/make/build.properties
-@@ -65,6 +65,6 @@
- # checkstyle (should be version 5.4 or better)
- checkstyle.home = ${jtreg.build.resources}/checkstyle/5.4
-
--build.version = 5.0
-+build.version = 5.1
- build.milestone = dev
--build.number = b00
-+build.number = b01
diff --git a/testing/java-jtreg/headless-tests.patch b/testing/java-jtreg/headless-tests.patch
new file mode 100644
index 00000000000..656dcf691dc
--- /dev/null
+++ b/testing/java-jtreg/headless-tests.patch
@@ -0,0 +1,17 @@
+From: Simon Frankenberger <simon-alpine@fraho.eu>
+Subject: Run tests in headless mode
+
+Could't figure out how to make them run with xvfb-run, so just disable the ui tests
+
+diff -ru old/test/basic/Basic.gmk new/test/basic/Basic.gmk
+--- old/test/basic/Basic.gmk 2023-03-04 00:55:23.000000000 +0000
++++ new/test/basic/Basic.gmk 2023-04-25 13:41:38.485264258 +0000
+@@ -55,7 +55,7 @@
+
+ #----------------------------------------------------------------------
+
+-ENVVARS="DISPLAY=$${DISPLAY:-`uname -n`:0.0}"
++ENVVARS="-Djava.awt.headless=true"
+
+ ifeq ($(OS_NAME), windows)
+ BASIC_TESTS := $(shell cygpath -m $(abspath $(TESTDIR)/share/basic) )
diff --git a/testing/java-libsignal-client/APKBUILD b/testing/java-libsignal-client/APKBUILD
deleted file mode 100644
index fd163e50ee5..00000000000
--- a/testing/java-libsignal-client/APKBUILD
+++ /dev/null
@@ -1,39 +0,0 @@
-# Contributor: Simon Frankenberger <simon-alpine@fraho.eu>
-# Maintainer: Simon Frankenberger <simon-alpine@fraho.eu>
-pkgname=java-libsignal-client
-pkgver=0.16.0
-pkgrel=0
-pkgdesc="libsignal-client contains platform-agnostic APIs useful for Signal client apps"
-url="https://github.com/signalapp/libsignal-client"
-# * disabled on aarch64 due to:
-# error[E0554]: #![feature] may not be used on the stable release channel
-# --> /home/buildozer/.cargo/registry/src/github.com-1ecc6299db9ec823/polyval-0.5.3/src/lib.rs:80:5
-# * rust and cargo not available on s390x and riscv64
-arch="all !aarch64 !s390x !riscv64"
-license="AGPL-3.0-or-later"
-depends="java-jre-headless"
-makedepends="bash cargo openjdk8 protoc rust zip"
-source="$pkgname-$pkgver.tar.gz::https://github.com/signalapp/libsignal-client/archive/v$pkgver.tar.gz"
-install="$pkgname.post-install $pkgname.post-upgrade"
-builddir="$srcdir/libsignal-$pkgver/java"
-
-build() {
- ./gradlew --no-daemon :client:jar
-}
-
-check() {
- ./gradlew --no-daemon :client:test
-}
-
-package() {
- install -D -m644 "$builddir"/client/build/libs/libsignal-client-$pkgver.jar \
- -t "$pkgdir"/usr/share/java/libsignal-client
- install -D -m755 "$builddir"/../target/release/libsignal_jni.so \
- -t "$pkgdir"/usr/lib
- zip -d "$pkgdir"/usr/share/java/libsignal-client/libsignal-client-$pkgver.jar \
- libsignal_jni.so
-}
-
-sha512sums="
-34c410de5dbbd415e20a9383aaad22ee4956c43d2df89d7e0f4c27ed9b3f3b0eed08ebd6aa82fbe58701b07365d069101ca647a1345e7a94de9848f761396b88 java-libsignal-client-0.16.0.tar.gz
-"
diff --git a/testing/java-libsignal-client/java-libsignal-client.post-install b/testing/java-libsignal-client/java-libsignal-client.post-install
deleted file mode 100755
index 99a814ee788..00000000000
--- a/testing/java-libsignal-client/java-libsignal-client.post-install
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/bin/sh
-
-cd /usr/share/java/libsignal-client
-LATEST=`ls -d signal-client-java-*.jar | sort -Vr | head -1`
-if [ -n "$LATEST" ]; then
- ln -sf $LATEST /usr/share/java/libsignal-client/signal-client-java.jar
-fi
-
diff --git a/testing/java-libsignal-client/java-libsignal-client.post-upgrade b/testing/java-libsignal-client/java-libsignal-client.post-upgrade
deleted file mode 100755
index 99a814ee788..00000000000
--- a/testing/java-libsignal-client/java-libsignal-client.post-upgrade
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/bin/sh
-
-cd /usr/share/java/libsignal-client
-LATEST=`ls -d signal-client-java-*.jar | sort -Vr | head -1`
-if [ -n "$LATEST" ]; then
- ln -sf $LATEST /usr/share/java/libsignal-client/signal-client-java.jar
-fi
-
diff --git a/testing/jbigkit/APKBUILD b/testing/jbigkit/APKBUILD
index 78e9578dcb1..d620ed40d33 100644
--- a/testing/jbigkit/APKBUILD
+++ b/testing/jbigkit/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=jbigkit
pkgver=2.1
-pkgrel=1
+pkgrel=2
pkgdesc="Data compression library/utilities for bi-level high-resolution images"
url="http://www.cl.cam.ac.uk/~mgk25/jbigkit/"
arch="all"
@@ -18,7 +18,7 @@ prepare() {
default_prepare
cd "$builddir"
unset CFLAGS CPPFLAGS LDFLAGS
- if [ "$CARCH" == "x86_64" ]; then
+ if [ "$CARCH" = "x86_64" ]; then
export CFLAGS="$CFLAGS -fPIC"
else
export CFLAGS="$CFLAGS"
diff --git a/testing/jdebp-redo/APKBUILD b/testing/jdebp-redo/APKBUILD
index 130a1564f8e..ab9cdb4052a 100644
--- a/testing/jdebp-redo/APKBUILD
+++ b/testing/jdebp-redo/APKBUILD
@@ -1,6 +1,7 @@
+# Maintainer:
pkgname=jdebp-redo
pkgver=1.4
-pkgrel=0
+pkgrel=1
pkgdesc="Smaller, easier, more powerful, and more reliable than make"
arch="all"
url="http://jdebp.info/Softwares/redo/"
@@ -9,6 +10,7 @@ makedepends="perl"
subpackages="$pkgname-doc"
source="http://jdebp.info/Repository/freebsd/redo-$pkgver.tar.gz"
provides="redo"
+provider_priority=30
options="!check" # No test suite from upstream
builddir="$srcdir/source"
@@ -36,4 +38,6 @@ doc() {
install -Dm644 COPYING "$subpkgdir"/usr/share/licenses/$pkgname/COPYING
}
-sha512sums="c90c75acc53cb478edefb6fa5d6e76807239f94837416cbf814e0d08c4b30bcf5a9edb7b9065358e30395619ad5deb749790819eb8ed45719facbe680e150d63 redo-1.4.tar.gz"
+sha512sums="
+c90c75acc53cb478edefb6fa5d6e76807239f94837416cbf814e0d08c4b30bcf5a9edb7b9065358e30395619ad5deb749790819eb8ed45719facbe680e150d63 redo-1.4.tar.gz
+"
diff --git a/testing/jdupes/APKBUILD b/testing/jdupes/APKBUILD
index 4c8e1264758..ae235f39850 100644
--- a/testing/jdupes/APKBUILD
+++ b/testing/jdupes/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: tcely <tcely@users.noreply.github.com>
# Maintainer: Roberto Oliveira <robertoguimaraes8@gmail.com>
pkgname=jdupes
-pkgver=1.20.2
+pkgver=1.27.3
pkgrel=0
pkgdesc="identifying and taking actions upon duplicate files"
options="!check" # No testsuite
@@ -9,8 +9,10 @@ url="https://github.com/jbruchon/jdupes"
arch="all"
license="MIT"
subpackages="$pkgname-doc"
-makedepends="linux-headers"
-source="$pkgname-$pkgver.tar.gz::https://github.com/jbruchon/jdupes/archive/v$pkgver.tar.gz"
+makedepends="linux-headers libjodycode-dev xxhash-dev"
+source="$pkgname-$pkgver.tar.gz::https://github.com/jbruchon/jdupes/archive/v$pkgver.tar.gz
+ system-xxhash.patch
+ "
build() {
make ENABLE_DEDUPE=1
@@ -21,5 +23,6 @@ package() {
}
sha512sums="
-21deb839d4f7e072ce08bacc6b595ac9ccd4ac6fac538d0aab69a4c12ac3d3bb5c98cd03eab9415e991ec9cdfaec7548656470e85c148528f4890b21f7223714 jdupes-1.20.2.tar.gz
+634ce1d1efa4666c7cc968e99d8d8d7da5e80e6e0ed86a080088ab127b7ecc4cc5266305d8a5c3d9c524721a2adc99c700281aa3dba37efade3cc1b90df1544e jdupes-1.27.3.tar.gz
+6c8430b76fba6cf4458d1a8e3f0c431250a59029a18cfc38f4befe23a94da25153cb1e54eb4b6de3c66a8015ca1c083c46d2cf215f594317c48eed580078ba6b system-xxhash.patch
"
diff --git a/testing/jdupes/system-xxhash.patch b/testing/jdupes/system-xxhash.patch
new file mode 100644
index 00000000000..9436158c8fb
--- /dev/null
+++ b/testing/jdupes/system-xxhash.patch
@@ -0,0 +1,48 @@
+diff --git a/Makefile b/Makefile
+index 7e09923..93153ac 100644
+--- a/Makefile
++++ b/Makefile
+@@ -120,15 +120,8 @@ ifdef LOW_MEMORY
+ endif
+ endif
+
+-# Use jody_hash instead of xxHash if requested
+-ifdef USE_JODY_HASH
+- COMPILER_OPTIONS += -DUSE_JODY_HASH -DNO_XXHASH2
+- OBJS_CLEAN += xxhash.o
+- else
+- ifndef EXTERNAL_HASH_LIB
+- OBJS += xxhash.o
+- endif
+-endif # USE_JODY_HASH
++CFLAGS += `pkg-config --cflags libxxhash`
++LDFLAGS += `pkg-config --libs libxxhash`
+
+ # Stack size limit can be too small for deep directory trees, so set to 16 MiB
+ # The ld syntax for Windows is the same for both Cygwin and MinGW
+diff --git a/jdupes.c b/jdupes.c
+index e3e5762..bc66c05 100644
+--- a/jdupes.c
++++ b/jdupes.c
+@@ -62,7 +62,7 @@
+ #include "version.h"
+
+ #ifndef USE_JODY_HASH
+- #include "xxhash.h"
++ #include <xxhash.h>
+ #endif
+ #ifdef ENABLE_DEDUPE
+ #ifdef __linux__
+diff --git a/filehash.c b/filehash.c
+index 8b05d87..2975fbb 100644
+--- a/filehash.c
++++ b/filehash.c
+@@ -21,7 +21,7 @@
+ #include "interrupt.h"
+ #include "progress.h"
+ #include "jdupes.h"
+-#include "xxhash.h"
++#include <xxhash.h>
+
+ const char *hash_algo_list[2] = {
+ "xxHash64 v2",
diff --git a/testing/jedi-language-server/APKBUILD b/testing/jedi-language-server/APKBUILD
index b19d66d27a1..4a9e8779473 100644
--- a/testing/jedi-language-server/APKBUILD
+++ b/testing/jedi-language-server/APKBUILD
@@ -1,45 +1,46 @@
# Contributor: Galen Abell <galen@galenabell.com>
# Maintainer: Galen Abell <galen@galenabell.com>
pkgname=jedi-language-server
-pkgver=0.36.0
+pkgver=0.41.4
pkgrel=0
pkgdesc="Python language server exclusively for Jedi"
url="https://github.com/pappasam/jedi-language-server"
arch="noarch"
license="MIT"
depends="
+ py3-cattrs
py3-docstring-to-markdown
py3-gls
py3-jedi
- py3-pydantic
+ py3-lsprotocol
+ py3-typing-extensions
python3
"
makedepends="
- poetry
- py3-build
- py3-installer
- py3-wheel
+ py3-gpep517
+ py3-poetry-core
"
-checkdepends="py3-pytest py3-pyhamcrest py3-jsonrpc-server"
+checkdepends="py3-pytest py3-pyhamcrest py3-jsonrpc-server py3-lsp-jsonrpc"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/pappasam/jedi-language-server/archive/v$pkgver.tar.gz"
build() {
- # XXX: hack for poetry to not ignore files
- GIT_DIR=. python3 -m build --skip-dependency-check --no-isolation --wheel
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- python3 -m installer -d testenv \
- dist/jedi_language_server-$pkgver-py3-none-any.whl
- local sitedir="$(python3 -c 'import site;print(site.getsitepackages()[0])')"
- PYTHONPATH="$PWD/testenv/$sitedir" python3 -m pytest
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
}
package() {
python3 -m installer -d "$pkgdir" \
- dist/jedi_language_server-$pkgver-py3-none-any.whl
+ .dist/jedi_language_server-$pkgver-py3-none-any.whl
}
sha512sums="
-29889768df2ef4430ddd908f525d8f498dfa695b5c7c715e8e747a69ab80fce73882f6c05a49242a5765bea85f7ea90bb6be1fa1e16e5b08a49868511d3147d8 jedi-language-server-0.36.0.tar.gz
+a8fcdd5328255b969a8e533f32f87a977362a18adfcdd2cb5552d00abb943dab778cd4a2da2cfd6af2d8fc3d7aec182d18d8b8871c0a715a94ea55d902e658b8 jedi-language-server-0.41.4.tar.gz
"
diff --git a/testing/jellyfin-web/APKBUILD b/testing/jellyfin-web/APKBUILD
deleted file mode 100644
index 71c731c69d1..00000000000
--- a/testing/jellyfin-web/APKBUILD
+++ /dev/null
@@ -1,30 +0,0 @@
-# Contributor: Simon Zeni <simon@bl4ckb0ne.ca>
-# Maintainer: Simon Zeni <simon@bl4ckb0ne.ca>
-pkgname=jellyfin-web
-pkgver=10.8.0_beta3
-_pkgver=10.8.0-beta3
-pkgrel=0
-pkgdesc="Web Client for Jellyfin"
-url="https://jellyfin.org/"
-arch="x86_64" # blocked by jellyfin
-options="!check net" # no tests
-license="GPL-2.0-only"
-install="$pkgname.post-install"
-depends="jellyfin"
-makedepends="npm"
-source="$pkgname-$pkgver.tar.gz::https://github.com/jellyfin/jellyfin-web/archive/refs/tags/v$_pkgver.tar.gz"
-builddir="$srcdir/$pkgname-$_pkgver"
-
-build() {
- npm ci --no-audit
-}
-
-package() {
- mkdir -p "$pkgdir"/usr/lib/jellyfin/jellyfin-web
-
- cp -r "$builddir"/dist/* "$pkgdir"/usr/lib/jellyfin/jellyfin-web
-}
-
-sha512sums="
-11f0e91d77099f1898ecfc381f32db5a1e33f264044fe6c009fd038d05a53fcb05cecdd19f85014c4bef2663d7c55b68e4d5fb1266f9d4517b200918f087248a jellyfin-web-10.8.0_beta3.tar.gz
-"
diff --git a/testing/jellyfin-web/jellyfin-web.post-install b/testing/jellyfin-web/jellyfin-web.post-install
deleted file mode 100644
index a6e69426fe7..00000000000
--- a/testing/jellyfin-web/jellyfin-web.post-install
+++ /dev/null
@@ -1,6 +0,0 @@
-#!/bin/sh
-
-printf " *\n * The default jellyfin configuration does not enable the web ui.\n"
-printf " * Remove the '--nowebclient' option from /etc/conf.d/jellyfin to enable it.\n *\n"
-
-exit 0
diff --git a/testing/jellyfin/APKBUILD b/testing/jellyfin/APKBUILD
deleted file mode 100644
index 434b651a2d7..00000000000
--- a/testing/jellyfin/APKBUILD
+++ /dev/null
@@ -1,59 +0,0 @@
-# Contributor: Simon Zeni <simon@bl4ckb0ne.ca>
-# Maintainer: Simon Zeni <simon@bl4ckb0ne.ca>
-pkgname=jellyfin
-pkgver=10.8.0_beta3
-_pkgver=10.8.0-beta3
-pkgrel=0
-pkgdesc="The Free Software Media System"
-pkgusers="$pkgname"
-pkggroups="$pkgname"
-install="$pkgname.pre-install"
-url="https://jellyfin.org/"
-arch="x86_64" # blocked by runtimes
-license="GPL-2.0-only"
-makedepends="dotnet6-sdk"
-depends="aspnetcore6-runtime ffmpeg"
-subpackages="$pkgname-openrc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/jellyfin/jellyfin/archive/refs/tags/v$_pkgver.tar.gz
- $pkgname.initd
- $pkgname.confd"
-builddir="$srcdir/$pkgname-$_pkgver"
-
-build() {
- dotnet build --configuration Release Jellyfin.Server
- dotnet publish --configuration Release Jellyfin.Server --output publish
-
- # Remove unnecessary runtimes, we only need linux-musl-x64 and alpine-x64
- rm -rf publish/runtimes/linux-arm
- rm -rf publish/runtimes/linux-arm64
- rm -rf publish/runtimes/linux-armel
- rm -rf publish/runtimes/linux-mips64
- rm -rf publish/runtimes/linux-s390x
- rm -rf publish/runtimes/linux-x64
- rm -rf publish/runtimes/linux-x86
- rm -rf publish/runtimes/osx*
- rm -rf publish/runtimes/win*
-}
-
-check() {
- dotnet test
-}
-
-package() {
- mkdir -p "$pkgdir"/usr/lib
- cp -dr publish "$pkgdir"/usr/lib/jellyfin
-
- mkdir -p "$pkgdir"/usr/bin
- ln -s /usr/lib/jellyfin/jellyfin "$pkgdir"/usr/bin/jellyfin
-
- install -Dm755 "$srcdir"/$pkgname.initd \
- "$pkgdir"/etc/init.d/$pkgname
- install -Dm644 "$srcdir"/$pkgname.confd \
- "$pkgdir"/etc/conf.d/$pkgname
-}
-
-sha512sums="
-fa5242717b93cbfc74dc3b518628a1d4239007c263941c6183d5f733eb25ec447443d67e785fba258c905b9b45249790487d9ad28fe0a568cfb05847cbb470c8 jellyfin-10.8.0_beta3.tar.gz
-364a70a953d921048a249fd370642c1782e434c850334cd55e35bbb10d1bb93482d37faa1c11da5d7acba96a084d9832e5db212b65b0fa9907c7d3afe553aaf9 jellyfin.initd
-d35eb07d11d711b8ad35c7726e151a8096609712fee3bfea00c9adeff8e56660e3cde3d9b0b2dc8a847514af4d2b32340e2b29b77facfab4f8921ba15ba671b0 jellyfin.confd
-"
diff --git a/testing/jellyfin/jellyfin.confd b/testing/jellyfin/jellyfin.confd
deleted file mode 100644
index 6cd891ce6d9..00000000000
--- a/testing/jellyfin/jellyfin.confd
+++ /dev/null
@@ -1,5 +0,0 @@
-supervisor=supervise-daemon
-datadir="/var/lib/jellyfin"
-cachedir="/var/cache/jellyfin"
-logdir="/var/log/jellyfin"
-opts="--nowebclient"
diff --git a/testing/jellyfin/jellyfin.initd b/testing/jellyfin/jellyfin.initd
deleted file mode 100644
index 278d79dddae..00000000000
--- a/testing/jellyfin/jellyfin.initd
+++ /dev/null
@@ -1,20 +0,0 @@
-#!/sbin/openrc-run
-
-name=jellyfin
-description="The Free Software Media System"
-
-command=/usr/bin/jellyfin
-command_user=jellyfin:jellyfin
-command_args="--datadir ${datadir} --cachedir ${cachedir} --logdir ${logdir} ${opts}"
-
-depend() {
- use logger dns
- need net
- after firewall
-}
-
-start_pre() {
- checkpath -d -o $command_user "$datadir"
- checkpath -d -o $command_user "$cachedir"
- checkpath -d -o $command_user "$logdir"
-}
diff --git a/testing/jellyfin/jellyfin.pre-install b/testing/jellyfin/jellyfin.pre-install
deleted file mode 100644
index 6e647160deb..00000000000
--- a/testing/jellyfin/jellyfin.pre-install
+++ /dev/null
@@ -1,9 +0,0 @@
-#!/bin/sh
-
-user=jellyfin
-group=jellyfin
-
-addgroup -S $group 2>/dev/null
-adduser -S -D -h /var/lib/$user -s /sbin/nologin -G $group -g $user $user 2>/dev/null
-
-exit 0
diff --git a/testing/jfrog-cli/APKBUILD b/testing/jfrog-cli/APKBUILD
index dc26ae140e4..18f8d26ed8b 100644
--- a/testing/jfrog-cli/APKBUILD
+++ b/testing/jfrog-cli/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Gennady Feldman <gena01@gmail.com>
pkgname=jfrog-cli
-pkgver=2.11.0
-pkgrel=3
+pkgver=2.45.0
+pkgrel=4
pkgdesc="JFrog cli"
url="https://jfrog.com/getcli/"
arch="all"
@@ -12,8 +12,12 @@ replaces="jfrog-cli-go"
provides="jfrog-cli-go=$pkgver-r$pkgrel"
source="$pkgname-$pkgver.tar.gz::https://github.com/jfrog/jfrog-cli/archive/v$pkgver.tar.gz"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
build() {
- go build -o bin/jfrog -ldflags '-w -extldflags "-static"' main.go
+ go build -o bin/jfrog main.go
}
package() {
@@ -21,5 +25,5 @@ package() {
}
sha512sums="
-abf8ac6874ae6ee75d69d68ca66e101387d2db54ebb87ff59fd50dbd4a13555a1f4701517d4e37cb332cffdadde28751bafa1c409ebb3453d774e3c14d28adde jfrog-cli-2.11.0.tar.gz
+4534d986a27b0d16a423bfe601ec5bef1b8d21c20a92d9b2af3d009831c11cbcff954c13f12799986eb98c4e2035c32c5141e185f62bf0c1e633a5548a770585 jfrog-cli-2.45.0.tar.gz
"
diff --git a/testing/jhead/APKBUILD b/testing/jhead/APKBUILD
index 1d64d5345f9..2ea4b41b5b3 100644
--- a/testing/jhead/APKBUILD
+++ b/testing/jhead/APKBUILD
@@ -1,15 +1,15 @@
# Contributor: Richard Mortier <mort@cantab.net>
# Maintainer: Richard Mortier <mort@cantab.net>
pkgname=jhead
-pkgver=3.06.0.1
-pkgrel=1
+pkgver=3.08
+pkgrel=0
pkgdesc="Exif Jpeg header manipulation tool"
url="http://www.sentex.net/~mwandel/jhead/"
arch="all"
license="custom"
subpackages="$pkgname-doc"
source="$pkgname-$pkgver.tar.gz::https://github.com/Matthias-Wandel/jhead/archive/refs/tags/$pkgver.tar.gz"
-options="!check" # no test suite
+options="!check" # fixme: failing tests
# secfixes:
# 3.06.0.1-r0:
@@ -20,16 +20,17 @@ build() {
make all
}
-package() {
- install -Dm755 jhead "$pkgdir"/usr/bin/jhead
+check() {
+ cd tests
+ ./runtests
+ diff expected-txt results-txt
}
-doc() {
- cd "$builddir"
- gzip -v9 jhead.1
- install -Dm644 jhead.1.gz "$subpkgdir"/usr/share/man/man1/jhead.1.gz
- install -Dm644 readme.txt \
- "$subpkgdir"/usr/share/licenses/$pkgname/readme.txt
+package() {
+ install -Dm755 jhead "$pkgdir"/usr/bin/jhead
+ install -Dm644 jhead.1 -t "$pkgdir"/usr/share/man/man1/
}
-sha512sums="7804f4bab1b07eb08ed981364b3634b1c25e0657d57651871aede640254c33f9d2307ba7c9fb3bc81eb06b71ba5d27437275a3fe53859e9e9457e37e12545db9 jhead-3.06.0.1.tar.gz"
+sha512sums="
+eb50e487eaacf2b489ce5e76f09730c8bb0c50a0e2d7c854ebe8bd204ead8f6256e052c49c72af179dc46dd5372c1eff32ff549b947637b242dc7bbe8c7b20d5 jhead-3.08.tar.gz
+"
diff --git a/testing/jicofo/APKBUILD b/testing/jicofo/APKBUILD
new file mode 100644
index 00000000000..334fb76f6a4
--- /dev/null
+++ b/testing/jicofo/APKBUILD
@@ -0,0 +1,63 @@
+# Maintainer: Noel Kuntze <noel.kuntze@contauro.com>
+pkgname=jicofo
+pkgver=1.0.1062
+_tag="jitsi-meet_9220"
+pkgrel=0
+pkgdesc="Jitsi meet conference focus"
+url="https://github.com/jitsi/jicofo"
+arch="x86_64 aarch64 s390x"
+license="Apache-2.0"
+options="!check" # No test suite
+depends="openjdk11-jre-headless prosody bash"
+makedepends="maven"
+install="$pkgname.pre-install"
+subpackages="$pkgname-openrc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/jitsi/jicofo/archive/refs/tags/stable/$_tag.tar.gz
+ $pkgname.initd
+ $pkgname.conf
+ $pkgname.confd
+ $pkgname.logrotate
+ sip-communicator.properties
+ "
+
+builddir="$srcdir/$pkgname-stable-$_tag"
+
+build() {
+ export JAVA_HOME=/usr/lib/jvm/java-11-openjdk
+ export PATH=$JAVA_HOME/bin:$PATH
+ mvn clean
+ mvn -DskipTests -Dassembly.skipAssembly=true -Dmaven.repo.local="$builddir/.m2/repository" clean package install
+ mvn dependency:copy-dependencies -DincludeScope=runtime -Dmaven.repo.local="$builddir/.m2/repository"
+}
+
+package() {
+ DESTDIR="$pkgdir"/usr/lib/$pkgname
+ CONFDIR="$pkgdir"/etc/jitsi/jicofo
+
+ # dependencies, libraries and java launch files
+ #install -Dm644 -t "$DESTDIR"/lib ./*/target/dependency/*
+ install -Dm644 -t "$DESTDIR"/lib jicofo/target/dependency/*
+ install -Dm644 jicofo/target/jicofo*.jar "$DESTDIR"/jicofo.jar
+ install -Dm755 -t "$DESTDIR" resources/jicofo.sh
+ install -Dm755 -t "$DESTDIR" resources/collect-dump-logs.sh
+
+ # configuration
+ install -dm755 "$CONFDIR"
+ install -Dm644 "$srcdir/jicofo.conf" "$CONFDIR/jicofo.conf"
+ install -Dm640 "$srcdir"/sip-communicator.properties "$CONFDIR/sip-communicator.properties"
+ install -Dm644 -t "$CONFDIR" "lib/logging.properties"
+
+ # init scripts and logrotate
+ install -Dm755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
+ install -Dm640 "$srcdir"/$pkgname.confd "$pkgdir"/etc/conf.d/$pkgname
+ install -Dm644 "$srcdir"/$pkgname.logrotate "$pkgdir"/etc/logrotate.d/$pkgname
+}
+
+sha512sums="
+df61ec1065dfb39c53b329bd2a1ac49232e03a75d91f800d8cad31b1f1e07f962c6b464e9908c8291284f522d3e592af0a9ae0a40f03aed784322e1dcc8ab419 jicofo-1.0.1062.tar.gz
+d8a5a2bdde124d6e8aff7d1d26c68146ef3cc8fac988360486dcd86e3247a7cfcc311ba9a4b8e64c04524511db350ad98ad4bb6e7aa1b19162b0231d2b57d40a jicofo.initd
+2e0f56e6d68edf6250714274cd8f0bcaf150b8c0f2dbdece9e97873e0fcf2e6520800f329f7d9407266cd28414523b873c159e2c32336464633b03d9608b8109 jicofo.conf
+f99851031af2a88590b4970106bc27cf8d5f7555f82e4c34bd33498904b36bff7efa1c85e5f2ca778a6f0e19cbe2fdd8bfc9357920f990c4b7c532c768d05cf7 jicofo.confd
+64f34dafc1062187485671a29fa147d651c050d9b52331c2933c6c3f024654cd02961d40b1d178e70d2cac9107be4f881654be871423c27459ef6669bcd5402c jicofo.logrotate
+4d87dce61ab19920f9b790ddf52aa8057f17ad0657a5a763efeebd5df2bd51758baffd5167355421ccd9e21b4e87fbaac6210f11e4c31d6beb0a890ea3ff2486 sip-communicator.properties
+"
diff --git a/testing/jicofo/jicofo.conf b/testing/jicofo/jicofo.conf
new file mode 100644
index 00000000000..1f9c90c06cf
--- /dev/null
+++ b/testing/jicofo/jicofo.conf
@@ -0,0 +1,10 @@
+# Jicofo HOCON configuration. See /usr/share/jicofo/jicofo.jar/reference.conf for
+#available options, syntax, and default values.
+jicofo {
+ xmpp: {
+ client: {
+ client-proxy: focus.jitsi.example.com
+ }
+ }
+}
+
diff --git a/testing/jicofo/jicofo.confd b/testing/jicofo/jicofo.confd
new file mode 100644
index 00000000000..156d29a9831
--- /dev/null
+++ b/testing/jicofo/jicofo.confd
@@ -0,0 +1,36 @@
+## Jitsi Conference Focus settings
+
+# sets the host name of the XMPP server
+JICOFO_HOST=localhost
+
+# sets the XMPP domain (default: none)
+JICOFO_HOSTNAME=jitsi.example.com
+
+# sets the secret used to authenticate as an XMPP component
+JICOFO_SECRET=SECRET2
+
+# sets the port to use for the XMPP component connection
+JICOFO_PORT=5347
+
+# sets the XMPP domain name to use for XMPP user logins
+JICOFO_AUTH_DOMAIN=auth.jitsi.example.com
+
+# sets the username to use for XMPP user logins
+JICOFO_AUTH_USER=focus
+
+# sets the password to use for XMPP user logins
+JICOFO_AUTH_PASSWORD=SECRET3
+
+# extra options to pass to the jicofo daemon
+JICOFO_OPTS=""
+
+# sets the log directory and service log file
+JICOFO_LOGDIR="/var/log/jitsi"
+JICOFO_LOGFILE="$JICOFO_LOGDIR/jicofo.log"
+
+# adds java system props that are passed to jicofo (default are for home and logging config file)
+JAVA_SYS_PROPS="-Xmx3072m\
+ -Dnet.java.sip.communicator.SC_HOME_DIR_LOCATION=/etc/jitsi\
+ -Dnet.java.sip.communicator.SC_HOME_DIR_NAME=jicofo\
+ -Dnet.java.sip.communicator.SC_LOG_DIR_LOCATION=$JICOFO_LOGDIR\
+ -Djava.util.logging.config.file=/etc/jitsi/jicofo/logging.properties"
diff --git a/testing/jicofo/jicofo.initd b/testing/jicofo/jicofo.initd
new file mode 100644
index 00000000000..8cd28a5d264
--- /dev/null
+++ b/testing/jicofo/jicofo.initd
@@ -0,0 +1,28 @@
+#!/sbin/openrc-run
+
+description="Jitsi Conference Focus"
+
+pidfile="/var/run/jicofo/jicofo.pid"
+# launcher script below will work on OpenRC also
+command="/usr/share/jicofo/jicofo.sh"
+command_args=" --host=$JICOFO_HOST --domain=$JICOFO_HOSTNAME --port=$JICOFO_PORT --user_name=$JICOFO_AUTH_USER --user_domain=$JICOFO_AUTH_DOMAIN ${JICOFO_OPTS}"
+command_user="jicofo:jitsi"
+command_background=true
+
+depend() {
+ need net
+ want jabber-server
+}
+
+start_pre() {
+ checkpath -d -o $command_user -m 770 /var/run/jicofo
+}
+
+start() {
+ ebegin "Starting ${name}"
+ export JICOFO_SECRET JICOFO_AUTH_PASSWORD JICOFO_MAX_MEMORY
+ start-stop-daemon --start --quiet --background --chuid $command_user \
+ -m --pidfile $pidfile \
+ --exec /bin/bash -- -c "JAVA_SYS_PROPS=\"$JAVA_SYS_PROPS\" exec $command $command_args >> $JICOFO_LOGFILE 2>&1"
+ eend $?
+}
diff --git a/testing/jicofo/jicofo.logrotate b/testing/jicofo/jicofo.logrotate
new file mode 100644
index 00000000000..991c6bd15da
--- /dev/null
+++ b/testing/jicofo/jicofo.logrotate
@@ -0,0 +1,10 @@
+/var/log/jitsi/jicofo.log {
+ daily
+ missingok
+ rotate 7
+ compress
+ delaycompress
+ notifempty
+ copytruncate
+ su jicofo jitsi
+}
diff --git a/testing/jicofo/jicofo.pre-install b/testing/jicofo/jicofo.pre-install
new file mode 100644
index 00000000000..974e67a526f
--- /dev/null
+++ b/testing/jicofo/jicofo.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S jitsi 2>/dev/null
+adduser -S -D -H -h /usr/share/jicofo -s /sbin/nologin -G jitsi -g jicofo jicofo 2>/dev/null
+
+exit 0
diff --git a/testing/jicofo/sip-communicator.properties b/testing/jicofo/sip-communicator.properties
new file mode 100644
index 00000000000..2bcf31fb82e
--- /dev/null
+++ b/testing/jicofo/sip-communicator.properties
@@ -0,0 +1 @@
+org.jitsi.jicofo.BRIDGE_MUC=JvbBrewery@internal.auth.jitsi.example.org
diff --git a/testing/jigasi/APKBUILD b/testing/jigasi/APKBUILD
new file mode 100644
index 00000000000..1daa975ad3a
--- /dev/null
+++ b/testing/jigasi/APKBUILD
@@ -0,0 +1,55 @@
+# Maintainer: Noel Kuntze <noel.kuntze@contauro.com>
+pkgname=jigasi
+pkgver=20240325
+pkgrel=0
+_gitrev=04ad08f0ab9cd079c62f47f9cecc7367ce3f4ba4
+pkgdesc="Jitsi meet SIP gateway"
+url="https://github.com/jitsi/jigasi"
+arch="x86_64"
+license="Apache-2.0"
+depends="openjdk11-jre-headless jicofo jitsi-videobridge jitsi-meet"
+makedepends="maven"
+install="$pkgname.pre-install"
+subpackages="$pkgname-openrc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/jitsi/jigasi/archive/$_gitrev.tar.gz
+ $pkgname.initd
+ $pkgname.confd
+ $pkgname.logrotate
+ "
+builddir="$srcdir/jigasi-$_gitrev"
+options="!check" # No test suite
+
+build() {
+ mvn clean
+ mvn package -DskipTests -Dassembly.skipAssembly=true -Dmaven.repo.local="$builddir/.m2/repository"
+ mvn dependency:copy-dependencies -DincludeScope=runtime -Dmaven.repo.local="$builddir/.m2/repository"
+}
+
+package() {
+ DESTDIR="$pkgdir/usr/lib/$pkgname"
+ CONFDIR="$pkgdir/etc/jitsi/jigasi"
+
+ # dependencies, libraries and java launch files
+ install -Dm644 -t "$DESTDIR/lib" target/dependency/*
+ install -Dm644 target/jigasi-*-SNAPSHOT.jar "$DESTDIR/jigasi.jar"
+ install -Dm755 -t "$DESTDIR" "jigasi.sh"
+ install -Dm755 -t "$DESTDIR" "script/graceful_shutdown.sh"
+ install -Dm755 -t "$DESTDIR" "script/collect-dump-logs.sh"
+
+
+ # configuration
+ install -dm700 "$CONFDIR"
+ install -Dm640 -t "$CONFDIR" "lib/logging.properties" "jigasi-home/sip-communicator.properties"
+
+ # init scripts and logrotate
+ install -m755 -D "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
+ install -m644 -D "$srcdir"/$pkgname.confd "$pkgdir"/etc/conf.d/$pkgname
+ install -m644 -D "$srcdir"/$pkgname.logrotate "$pkgdir"/etc/logrotate.d/$pkgname
+}
+
+sha512sums="
+4c5d15f9545d8fb345a9b8a09a369886b4b62a6785e9b4ddd8c0e99c23dd00abd567113ed6ed6145c46e0f0e32c200cd577bdb880be673ddb2f914624fea84a2 jigasi-20240325.tar.gz
+4785f72bc3c60488df409c292f1daffc583169138cf477253cbc80226da4d5b185a044d8d7d2b5bbe39290b852bf27e4443fa1a0eda55e9a385fcf7a53215748 jigasi.initd
+2fc7bdcabbdf46c01c7edb02f22d76e972f9fa060999f8f120759cb78f64475d8d36ef7b07875cbcb2309f8d0220e5cdd86ab0a3ed1c050a50f8026ccea23009 jigasi.confd
+9a3c97e983d1fc67bac3066a7f13cf043bd48e0448044c32ef8c6025f59d7df476ca22ffe305054d7d17c60a366eaa16ca653e1877a373eb1f896a863dd5e343 jigasi.logrotate
+"
diff --git a/testing/jigasi/jigasi.confd b/testing/jigasi/jigasi.confd
new file mode 100644
index 00000000000..090fc57e353
--- /dev/null
+++ b/testing/jigasi/jigasi.confd
@@ -0,0 +1,27 @@
+## Jigasi settings
+
+# SIP account
+JIGASI_SIPUSER=xxx
+
+# SIP password. Store it with $(echo -n $PWD | base64 -)
+JIGASI_SIPPWD=PASSWORD1
+
+# 8-chars random secret, alternative to pwgen 8
+# head -c 8 /dev/urandom | tr '\0-\377' 'a-zA-Z0-9a-zA-Z0-9a-zA-Z0-9a-zA-Z0-9@@@@####'
+JIGASI_SECRET=SECRET4
+
+# Domain name. Use the XMPP domain (JVB_HOSTNAME) here
+JIGASI_HOSTNAME=jitsi.example.com
+
+# Host name (default: localhost)
+JIGASI_HOST=localhost
+
+# Extra options to pass to the jigasi daemon
+JIGASI_OPTS=""
+
+# sets the log directory and service log file
+JIGASI_LOGDIR="/var/log/jitsi"
+JIGASI_LOGFILE="$JIGASI_LOGDIR/jigasi.log"
+
+# Add java system props that are passed to jigasi
+JAVA_SYS_PROPS="-Djava.util.logging.config.file=/etc/jitsi/jigasi/logging.properties"
diff --git a/testing/jigasi/jigasi.initd b/testing/jigasi/jigasi.initd
new file mode 100644
index 00000000000..394fbab8fa9
--- /dev/null
+++ b/testing/jigasi/jigasi.initd
@@ -0,0 +1,29 @@
+#!/sbin/openrc-run
+
+description="Jitsi Gateway for SIP"
+
+pidfile="/var/run/jigasi/jigasi.pid"
+# launcher script below will work on OpenRC also
+command="/usr/share/jigasi/jigasi.sh"
+command_args=" --host=$JIGASI_HOST --domain=$JIGASI_HOSTNAME --subdomain=callcontrol --secret=$JIGASI_SECRET --logdir=$JIGASI_LOGDIR --configdir=/etc/jitsi --configdirname=jigasi $JIGASI_OPTS"
+command_user="jigasi:jitsi"
+command_background=true
+
+depend() {
+ need net
+ want jabber-server
+}
+
+start_pre() {
+ mkdir -m 770 -p /var/run/jigasi
+ chown "${command_user}" /var/run/jigasi
+ return 0
+}
+
+start() {
+ ebegin "Starting ${name}"
+ start-stop-daemon --start --quiet --background --chuid $command_user \
+ -m --pidfile $pidfile \
+ --exec /bin/bash -- -c "JAVA_SYS_PROPS=\"$JAVA_SYS_PROPS\" exec $command $command_args >> $JIGASI_LOGFILE 2>&1"
+ eend $?
+}
diff --git a/testing/jigasi/jigasi.logrotate b/testing/jigasi/jigasi.logrotate
new file mode 100644
index 00000000000..b9b48d0af13
--- /dev/null
+++ b/testing/jigasi/jigasi.logrotate
@@ -0,0 +1,10 @@
+/var/log/jitsi/jigasi.log {
+ daily
+ missingok
+ rotate 7
+ compress
+ delaycompress
+ notifempty
+ copytruncate
+ su jigasi jitsi
+}
diff --git a/testing/jigasi/jigasi.pre-install b/testing/jigasi/jigasi.pre-install
new file mode 100644
index 00000000000..cd74c1dce0d
--- /dev/null
+++ b/testing/jigasi/jigasi.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S jitsi 2>/dev/null
+adduser -S -D -H -h /usr/share/jigasi -s /sbin/nologin -G jitsi -g jigasi jigasi 2>/dev/null
+
+exit 0
diff --git a/testing/jigasi/sip-communicator.properties b/testing/jigasi/sip-communicator.properties
new file mode 100644
index 00000000000..f8c8be96965
--- /dev/null
+++ b/testing/jigasi/sip-communicator.properties
@@ -0,0 +1,160 @@
+#Sample config with one XMPP and one SIP account configured
+# Replace {sip-pass-hash} with SIP user password hash
+# as well as other account properties
+
+# Name of default JVB room that will be joined if no special header is included
+# in SIP invite
+org.jitsi.jigasi.DEFAULT_JVB_ROOM_NAME=siptest
+
+net.java.sip.communicator.impl.protocol.SingleCallInProgressPolicy.enabled=false
+
+# Should be enabled when using translator mode
+#net.java.sip.communicator.impl.neomedia.audioSystem.audiosilence.captureDevice_list=["AudioSilenceCaptureDevice:noTransferData"]
+
+# Adjust opus encoder complexity
+net.java.sip.communicator.impl.neomedia.codec.audio.opus.encoder.COMPLEXITY=10
+
+# Disables packet logging
+net.java.sip.communicator.packetlogging.PACKET_LOGGING_ENABLED=true
+
+net.java.sip.communicator.impl.protocol.sip.acc1403273890647=acc1403273890647
+net.java.sip.communicator.impl.protocol.sip.acc1403273890647.ACCOUNT_UID=SIP\:<<JIGASI_SIPUSER>>
+net.java.sip.communicator.impl.protocol.sip.acc1403273890647.PASSWORD=<<JIGASI_SIPPWD>>
+net.java.sip.communicator.impl.protocol.sip.acc1403273890647.PROTOCOL_NAME=SIP
+net.java.sip.communicator.impl.protocol.sip.acc1403273890647.SERVER_ADDRESS=<<JIGASI_SIPSERVER>>
+net.java.sip.communicator.impl.protocol.sip.acc1403273890647.USER_ID=<<JIGASI_SIPUSER>>
+net.java.sip.communicator.impl.protocol.sip.acc1403273890647.KEEP_ALIVE_INTERVAL=25
+net.java.sip.communicator.impl.protocol.sip.acc1403273890647.KEEP_ALIVE_METHOD=OPTIONS
+net.java.sip.communicator.impl.protocol.sip.acc1403273890647.VOICEMAIL_ENABLED=false
+net.java.sip.communicator.impl.protocol.sip.acc1403273890647.Encodings.AMR-WB/16000=750
+net.java.sip.communicator.impl.protocol.sip.acc1403273890647.Encodings.G722/8000=700
+net.java.sip.communicator.impl.protocol.sip.acc1403273890647.Encodings.GSM/8000=0
+net.java.sip.communicator.impl.protocol.sip.acc1403273890647.Encodings.H263-1998/90000=0
+net.java.sip.communicator.impl.protocol.sip.acc1403273890647.Encodings.H264/90000=0
+net.java.sip.communicator.impl.protocol.sip.acc1403273890647.Encodings.PCMA/8000=600
+net.java.sip.communicator.impl.protocol.sip.acc1403273890647.Encodings.PCMU/8000=650
+net.java.sip.communicator.impl.protocol.sip.acc1403273890647.Encodings.SILK/12000=0
+net.java.sip.communicator.impl.protocol.sip.acc1403273890647.Encodings.SILK/16000=0
+net.java.sip.communicator.impl.protocol.sip.acc1403273890647.Encodings.SILK/24000=0
+net.java.sip.communicator.impl.protocol.sip.acc1403273890647.Encodings.SILK/8000=0
+net.java.sip.communicator.impl.protocol.sip.acc1403273890647.Encodings.VP8/90000=0
+net.java.sip.communicator.impl.protocol.sip.acc1403273890647.Encodings.iLBC/8000=10
+net.java.sip.communicator.impl.protocol.sip.acc1403273890647.Encodings.opus/48000=1000
+net.java.sip.communicator.impl.protocol.sip.acc1403273890647.Encodings.red/90000=0
+net.java.sip.communicator.impl.protocol.sip.acc1403273890647.Encodings.speex/16000=0
+net.java.sip.communicator.impl.protocol.sip.acc1403273890647.Encodings.speex/32000=0
+net.java.sip.communicator.impl.protocol.sip.acc1403273890647.Encodings.speex/8000=0
+net.java.sip.communicator.impl.protocol.sip.acc1403273890647.Encodings.telephone-event/8000=1
+net.java.sip.communicator.impl.protocol.sip.acc1403273890647.Encodings.ulpfec/90000=0
+net.java.sip.communicator.impl.protocol.sip.acc1403273890647.OVERRIDE_ENCODINGS=true
+net.java.sip.communicator.impl.protocol.sip.acc1403273890647.DEFAULT_ENCRYPTION=false
+
+# If an authenticated (hidden) domain is used to connect to a conference,
+# PREVENT_AUTH_LOGIN will prevent the SIP participant from being seen as a
+# hidden participant in the conference
+#net.java.sip.communicator.impl.protocol.sip.acc1403273890647.PREVENT_AUTH_LOGIN=FALSE
+
+# Used when incoming calls are used in multidomain environment, used to detect subdomains
+# used for constructing callResource and eventually contacting jicofo
+net.java.sip.communicator.impl.protocol.sip.acc1403273890647.DOMAIN_BASE=<<DOMAIN_BASE>>
+
+# the pattern to be used as bosh url when using bosh in multidomain environment
+#net.java.sip.communicator.impl.protocol.sip.acc1403273890647.BOSH_URL_PATTERN=https://{host}{subdomain}/http-bind?room={roomName}
+
+# can be enabled to disable audio mixing and use translator, jigasi will act as jvb, just forward every ssrc stream it receives.
+#net.java.sip.communicator.impl.protocol.sip.acc1403273890647.USE_TRANSLATOR_IN_CONFERENCE=true
+
+# We can use the prefix org.jitsi.jigasi.xmpp.acc to override any of the
+# properties that will be used for creating xmpp account for communication.
+
+# The following two props assume we are using jigasi on the same machine as
+# the xmpp server.
+org.jitsi.jigasi.xmpp.acc.IS_SERVER_OVERRIDDEN=true
+org.jitsi.jigasi.xmpp.acc.SERVER_ADDRESS=127.0.0.1
+org.jitsi.jigasi.xmpp.acc.VIDEO_CALLING_DISABLED=true
+org.jitsi.jigasi.xmpp.acc.JINGLE_NODES_ENABLED=false
+org.jitsi.jigasi.xmpp.acc.IM_DISABLED=true
+org.jitsi.jigasi.xmpp.acc.SERVER_STORED_INFO_DISABLED=true
+org.jitsi.jigasi.xmpp.acc.IS_FILE_TRANSFER_DISABLED=true
+# Or you can use bosh for the connection establishment by specifing the URL to use.
+# org.jitsi.jigasi.xmpp.acc.BOSH_URL_PATTERN=https://server.com/http-bind?room={roomName}
+
+#Used when outgoing calls are used in multidomain environment, used to detect subdomains
+#org.jitsi.jigasi.xmpp.acc.DOMAIN_BASE=<<DOMAIN_BASE>>
+#org.jitsi.jigasi.xmpp.acc.BOSH_URL_PATTERN=https://{host}{subdomain}/http-bind?room={roomName}
+
+# can be enabled to disable audio mixing and use translator, jigasi will act as jvb, just forward every ssrc stream it receives.
+#org.jitsi.jigasi.xmpp.acc.USE_TRANSLATOR_IN_CONFERENCE=true
+
+# If you want jigasi to perform authenticated login instead of anonymous login
+# to the XMPP server, you can set the following properties.
+# org.jitsi.jigasi.xmpp.acc.USER_ID=SOME_USER@SOME_DOMAIN
+# org.jitsi.jigasi.xmpp.acc.PASS=SOME_PASS
+# org.jitsi.jigasi.xmpp.acc.ANONYMOUS_AUTH=false
+
+# If you want to use the SIP user part of the incoming/outgoing call SIP URI
+# you can set the following property to true.
+# org.jitsi.jigasi.USE_SIP_USER_AS_XMPP_RESOURCE=true
+
+# Activate this property if you are using self-signed certificates or other
+# type of non-trusted certicates. In this mode your service trust in the
+# remote certificates always.
+# net.java.sip.communicator.service.gui.ALWAYS_TRUST_MODE_ENABLED=true
+
+# Enable this property to be able to shutdown gracefully jigasi using
+# a rest command
+# org.jitsi.jigasi.ENABLE_REST_SHUTDOWN=true
+
+# Options regarding Transcription. Read the README for a detailed description
+# about each property
+
+#org.jitsi.jigasi.ENABLE_TRANSCRIPTION=false
+#org.jitsi.jigasi.ENABLE_SIP=true
+
+# whether to use the more expensive, but better performing
+# "video" model when doing transcription
+# org.jitsi.jigasi.transcription.USE_VIDEO_MODEL = false
+
+# delivering final transcript
+# org.jitsi.jigasi.transcription.DIRECTORY=/var/lib/jigasi/transcripts
+# org.jitsi.jigasi.transcription.BASE_URL=http://localhost/
+# org.jitsi.jigasi.transcription.jetty.port=-1
+# org.jitsi.jigasi.transcription.ADVERTISE_URL=false
+
+# save formats
+# org.jitsi.jigasi.transcription.SAVE_JSON=false
+# org.jitsi.jigasi.transcription.SAVE_TXT=true
+
+# send formats
+# org.jitsi.jigasi.transcription.SEND_JSON=true
+# org.jitsi.jigasi.transcription.SEND_TXT=false
+
+# translation
+# org.jitsi.jigasi.transcription.ENABLE_TRANSLATION=false
+
+# record audio. Currently only wav format is supported
+# org.jitsi.jigasi.transcription.RECORD_AUDIO=false
+# org.jitsi.jigasi.transcription.RECORD_AUDIO_FORMAT=wav
+
+# execute one or more scripts when a transcript or recording is saved
+# org.jitsi.jigasi.transcription.EXECUTE_SCRIPTS=true
+# org.jitsi.jigasi.transcription.SCRIPTS_TO_EXECUTE_LIST_SEPARATOR=","
+# org.jitsi.jigasi.transcription.SCRIPTS_TO_EXECUTE_LIST=script/example_handle_transcript_directory.sh
+
+# properties for optionally sending statistics to a DataDog server
+#org.jitsi.ddclient.prefix=jitsi.jigasi
+#org.jitsi.ddclient.host=localhost
+#org.jitsi.ddclient.port=8125
+
+# sip health checking
+# Enables sip health checking by specifying a number/uri to call
+# the target just needs to auto-connect the call play some audio,
+# the call must be established for less than 10 seconds
+# org.jitsi.jigasi.HEALTH_CHECK_SIP_URI=healthcheck
+#
+# The interval between healthcheck calls, by default is 5 minutes
+# org.jitsi.jigasi.HEALTH_CHECK_INTERVAL=300000
+#
+# The timeout of healthcheck, if there was no successful health check for
+# 10 minutes (default value) we consider jigasi unhealthy
+# org.jitsi.jigasi.HEALTH_CHECK_TIMEOUT=600000
diff --git a/testing/jinja2-cli/APKBUILD b/testing/jinja2-cli/APKBUILD
deleted file mode 100644
index 426b12d75b6..00000000000
--- a/testing/jinja2-cli/APKBUILD
+++ /dev/null
@@ -1,25 +0,0 @@
-# Contributor: Kaarle Ritvanen <kunkku@alpinelinux.org>
-# Maintainer:
-pkgname=jinja2-cli
-pkgver=0.8.2
-pkgrel=0
-pkgdesc="CLI for Jinja2"
-options="!check" # No testsuite in pypi tarball
-url=https://github.com/mattrobenolt/jinja2-cli
-arch=noarch
-license="BSD-2-Clause"
-depends="python3 py3-jinja2"
-makedepends="py3-setuptools"
-source=https://files.pythonhosted.org/packages/source/j/jinja2-cli/jinja2-cli-$pkgver.tar.gz
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --root "$pkgdir"
-}
-
-sha512sums="
-0ceaa7d0baa0fca9fa9f2d794809bd4d2327438283d7a84c74a7c80e5cc51c10d340e894346a014d390e9d213226a3bed800d4b724ceea2a7a96e3603a32cf29 jinja2-cli-0.8.2.tar.gz
-"
diff --git a/testing/jitsi-meet/APKBUILD b/testing/jitsi-meet/APKBUILD
new file mode 100644
index 00000000000..49914fe2e72
--- /dev/null
+++ b/testing/jitsi-meet/APKBUILD
@@ -0,0 +1,86 @@
+# Maintainer: Noel Kuntze <noel.kuntze@contauro.com>
+pkgname=jitsi-meet
+pkgver=1.0.7762
+_tag="jitsi-meet_9220"
+pkgrel=1
+pkgdesc="WebRTC JavaScript video conferences"
+url="https://github.com/jitsi/jitsi-meet"
+arch="x86_64 aarch64 s390x"
+license="Apache-2.0"
+depends="jicofo jitsi-videobridge nginx"
+_depends_prosody="$pkgname prosody"
+makedepends="npm"
+subpackages="$pkgname-doc $pkgname-prosody"
+source="$pkgname-$pkgver.tar.gz::https://github.com/jitsi/jitsi-meet/archive/stable/$_tag.tar.gz
+ openssl3.patch
+ "
+
+builddir="$srcdir/$pkgname-stable-$_tag"
+options="!check" # No test suite
+
+build() {
+ npm ci
+ make
+ make source-package
+}
+
+package() {
+ DESTDIR="$pkgdir"/usr/share/$pkgname
+ CONFDIR="$pkgdir"/etc/jitsi/meet
+
+ install -d "$DESTDIR"
+ install -d "$CONFDIR"
+
+ tar xjf "$pkgname.tar.bz2" -C "$DESTDIR" --strip 1
+ install -Dm644 -t "$DESTDIR" manifest.json
+
+ # Hack https://github.com/jitsi/jitsi-meet/pull/6925
+ for l in $(node -p "Object.keys(require('./lang/languages.json')).join(' ')"); do
+ c=${l:0:2}
+ if [ -f "node_modules/i18n-iso-countries/langs/$c.json" ]; then
+ install -m644 "node_modules/i18n-iso-countries/langs/$c.json" "$DESTDIR/lang/countries-$l.json"
+ fi
+ done
+
+ # get rid of all local references
+ find "$DESTDIR" -type f -name "*.js" -exec sed -i "s#$builddir##g" "{}" \+
+
+ # Non-deterministic race in npm gives 777 permissions to random directories.
+ # See https://github.com/npm/npm/issues/9359 for details.
+ chmod -R 755 "$DESTDIR"
+
+ # configuration files
+ for i in interface_config.js config.js; do
+ install -Dm644 "$DESTDIR/$i" "$CONFDIR/$i"
+ ln -sf "/etc/jitsi/meet/$i" "$DESTDIR/$i"
+ done
+
+ # general documentation
+ install -Dm644 -t "$pkgdir/usr/share/doc/$pkgname" doc/debian/jitsi-meet/jitsi-meet.example doc/debian/jitsi-meet/jitsi-meet.example-apache config.js
+ sed -i "s@/usr/share/$pkgname@/usr/share/webapps/$pkgname@" "$pkgdir/usr/share/doc/$pkgname/"*
+ sed -i "s@/etc/jitsi/meet@/etc/webapps/$pkgname@" "$pkgdir/usr/share/doc/$pkgname/"*
+
+ # npm gives ownership of ALL FILES to build user
+ # https://bugs.archlinux.org/task/63396
+ chown -R root:root "$pkgdir"
+}
+
+prosody() {
+ pkgdesc="Jitsi Meet Prosody Plugins"
+ depends="$_depends_prosody"
+
+ cd "$builddir"
+ DESTDIR="$subpkgdir/usr/share/$pkgname"
+ install -d "$DESTDIR"
+ cp -r resources/prosody-plugins "$DESTDIR"
+
+ # prosody documentation
+ install -Dm644 -t "$pkgdir-doc/usr/share/doc/$pkgname" doc/debian/jitsi-meet-prosody/prosody.cfg.lua-jvb.example doc/debian/jitsi-meet-prosody/jaas.cfg.lua
+ sed -i 's@/usr/share/jitsi-meet/prosody-plugins/@/usr/lib/'$pkgname'@' "$pkgdir-doc/usr/share/doc/$pkgname/prosody.cfg.lua-jvb.example"
+
+}
+
+sha512sums="
+3e4a577fcd2c0b9f1bb1d875780ac185cb5c8946cf9dc35f6c89f039284a577b793ddf3b611dc19cfa4edd0c1602351e6e102e4e7bfdc8cc02ccdce9f4095d1e jitsi-meet-1.0.7762.tar.gz
+f752d2eafd7f4e3a331c92b8ad25e6c150d608303fe74f32950a8deb55784853bd7225923d71ab55778b828955e150058e725d85995e4e6f776855015e4e16a9 openssl3.patch
+"
diff --git a/testing/jitsi-meet/openssl3.patch b/testing/jitsi-meet/openssl3.patch
new file mode 100644
index 00000000000..7806252ca07
--- /dev/null
+++ b/testing/jitsi-meet/openssl3.patch
@@ -0,0 +1,13 @@
+diff --git a/Makefile b/Makefile
+index 040f8c9..bcbf826 100644
+--- a/Makefile
++++ b/Makefile
+@@ -27,7 +27,7 @@ endif
+ all: compile deploy clean
+
+ compile:
+- NODE_OPTIONS=--max-old-space-size=8192 \
++ NODE_OPTIONS="--max-old-space-size=8192 --openssl-legacy-provider" \
+ $(WEBPACK)
+
+ clean:
diff --git a/testing/jitsi-videobridge/APKBUILD b/testing/jitsi-videobridge/APKBUILD
new file mode 100644
index 00000000000..99a8869de8a
--- /dev/null
+++ b/testing/jitsi-videobridge/APKBUILD
@@ -0,0 +1,67 @@
+# Maintainer: Noel Kuntze <noel.kuntze@contauro.com>
+pkgname=jitsi-videobridge
+pkgver=2.3.67
+_tag="jitsi-meet_9220"
+pkgrel=0
+pkgdesc="Videobridge for Jitsi Meet"
+url="https://github.com/jitsi/jitsi-videobridge"
+arch="x86_64 aarch64 ppc64le s390x"
+license="Apache-2.0"
+options="!check" # No test suite
+depends="openjdk11-jre-headless prosody bash"
+makedepends="maven"
+install="$pkgname.pre-install"
+subpackages="$pkgname-openrc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/jitsi/jitsi-videobridge/archive/stable/$_tag.tar.gz
+ $pkgname.initd
+ $pkgname.confd
+ $pkgname.logrotate
+ jvb.conf
+ sip-communicator.properties
+ "
+
+builddir="$srcdir/$pkgname-stable-$_tag"
+
+build() {
+ export JAVA_HOME=/usr/lib/jvm/java-11-openjdk
+ export PATH=$JAVA_HOME/bin:$PATH
+
+ mvn clean
+ mvn package -DskipTests -Dassembly.skipAssembly=true -Dmaven.repo.local="$builddir/.m2/repository" install
+ mvn dependency:copy-dependencies -DincludeScope=runtime -Dmaven.repo.local="$builddir/.m2/repository"
+}
+
+package() {
+ DESTDIR="$pkgdir"/usr/lib/$pkgname
+ CONFDIR="$pkgdir"/etc/jitsi/videobridge
+
+ install -Dm644 -t "$DESTDIR/lib" \
+ jvb/target/dependency/* \
+ jvb/lib/videobridge.rc
+
+ install -Dm644 jvb/target/$pkgname*.jar "$DESTDIR/$pkgname.jar"
+ install -Dm755 -t "$DESTDIR" "jvb/resources/jvb.sh"
+ install -Dm755 -t "$DESTDIR" "resources/graceful_shutdown.sh"
+ install -Dm755 -t "$DESTDIR" "resources/collect-dump-logs.sh"
+
+ # configuration
+ install -dm755 "$CONFDIR"
+ install -Dm644 "$srcdir"/jvb.conf "$CONFDIR/jvb.conf"
+ install -Dm640 "$srcdir"/sip-communicator.properties "$CONFDIR/sip-communicator.properties"
+ install -Dm644 -t "$CONFDIR" "jvb/lib/logging.properties"
+ install -Dm644 "config/20-jvb-udp-buffers.conf" "$pkgdir/etc/sysctl.d/$pkgname.conf"
+
+ # init scripts and logrotate
+ install -Dm755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
+ install -Dm640 "$srcdir"/$pkgname.confd "$pkgdir"/etc/conf.d/$pkgname
+ install -Dm644 "$srcdir"/$pkgname.logrotate "$pkgdir"/etc/logrotate.d/$pkgname
+}
+
+sha512sums="
+f1840ae8fbcbbe2a4590fdf3213b512bbd24e143589a6c7364fae7493f1c60c3e7edaceaa04c2c7bf53a99454f05acb3f2eee4811643298b6ba82319459c1d7c jitsi-videobridge-2.3.67.tar.gz
+f10f9291187c6c44838312f73a5f5ff4cedb8970a338373ba37b7e141d018413bf176d8fd3f15cb891516238182498ac3c8bc7587880831994e17f1289a3b755 jitsi-videobridge.initd
+c63cd36d1710a81df255ffc9ab62e413546f37c0d244327b03381bb32381242d881a35dc7384af093976dff645e415acd0e1d82769e54c01f5a2c35dc6ef469a jitsi-videobridge.confd
+86806b7fd222d5a3d0fc50daf8f2f0f2ef757011f44c8ce7ddd8836455393a7ac3e6f6d73bb6a929b796c3e877e1220c8bc2a3fe8178ed70cdede16d13ddce85 jitsi-videobridge.logrotate
+ec1c50d94f13faea50c38d7dedf200111df5ed937821f9b427cc30c5f29b8579b5f78400a1934caca0a123a201fe0822f963cea28fb16e92fde858eac5255034 jvb.conf
+ad3bea4485f4c3d74194ab77f40086e6086eb294b68c96732e7a42059981afe33585f5152da7ac9dd81bf4a2a604d15a8d5c0cd54641afb04e58c812de31e996 sip-communicator.properties
+"
diff --git a/testing/jitsi-videobridge/jitsi-videobridge.confd b/testing/jitsi-videobridge/jitsi-videobridge.confd
new file mode 100644
index 00000000000..f9a6dd356ea
--- /dev/null
+++ b/testing/jitsi-videobridge/jitsi-videobridge.confd
@@ -0,0 +1,34 @@
+## Jitsi Videobridge settings
+
+# sets the XMPP domain (default: none)
+JVB_HOSTNAME=jitsi.example.com
+
+# sets the hostname of the XMPP server (default: domain if set, localhost otherwise)
+JVB_HOST=localhost
+
+# sets the port of the XMPP server (default: 5275)
+JVB_PORT=5347
+
+# sets the shared secret used to authenticate to the XMPP server
+JVB_SECRET=SECRET1
+
+# extra options to pass to the JVB daemon
+# --apis defaults to xmpp, which breaks the current jvb2 as of 2020-05-02
+JVB_OPTS="--apis=xmpp,"
+
+# sets the log directory and service log file
+JVB_LOGDIR="/var/log/jitsi"
+JVB_LOGFILE="$JVB_LOGDIR/jvb.log"
+
+# adds java system props that are passed to jvb (default are for home and logging config file)
+JAVA_SYS_PROPS="\
+ -Dnet.java.sip.communicator.SC_HOME_DIR_LOCATION=/etc/jitsi\
+ -Dnet.java.sip.communicator.SC_HOME_DIR_NAME=videobridge\
+ -Dnet.java.sip.communicator.SC_LOG_DIR_LOCATION=$JVB_LOGDIR\
+ -Djava.util.logging.config.file=/etc/jitsi/videobridge/logging.properties\
+ -Dconfig.file=/etc/jitsi/videobridge/jvb.conf"
+
+# application config (not ready yet)
+# https://github.com/jitsi/jitsi-videobridge/issues/1229
+#JAVA_SYS_PROPS="-Dconfig.file=/etc/jitsi/videobridge/application.conf -Djava.util.logging.config.file=/etc/jitsi/videobridge/logging.properties"
+
diff --git a/testing/jitsi-videobridge/jitsi-videobridge.initd b/testing/jitsi-videobridge/jitsi-videobridge.initd
new file mode 100644
index 00000000000..369d2721ac0
--- /dev/null
+++ b/testing/jitsi-videobridge/jitsi-videobridge.initd
@@ -0,0 +1,28 @@
+#!/sbin/openrc-run
+
+description="Jitsi Videobridge"
+
+pidfile="/run/jvb/jvb.pid"
+# launcher script below will work on OpenRC also
+command="/usr/lib/jitsi-videobridge/jvb.sh"
+command_args="${JVB_OPTS}"
+command_user="jvb:jitsi"
+command_background=true
+
+depend() {
+ need net
+ want jabber-server
+}
+
+start_pre() {
+ checkpath -d -m 770 -o $command_user /run/jvb
+}
+
+start() {
+ ebegin "Starting ${name}"
+ start-stop-daemon --start --quiet --background --chuid $command_user \
+ -m --pidfile $pidfile \
+ --exec /bin/bash -- -c "JAVA_SYS_PROPS=\"$JAVA_SYS_PROPS\" exec $command $command_args >> $JVB_LOGFILE 2>&1"
+ eend $?
+}
+
diff --git a/testing/jitsi-videobridge/jitsi-videobridge.logrotate b/testing/jitsi-videobridge/jitsi-videobridge.logrotate
new file mode 100644
index 00000000000..190e54f9a9c
--- /dev/null
+++ b/testing/jitsi-videobridge/jitsi-videobridge.logrotate
@@ -0,0 +1,12 @@
+/var/log/jitsi/jvb.log {
+ hourly
+ size 100M
+ missingok
+ rotate 24
+ compress
+ delaycompress
+ notifempty
+ copytruncate
+ su jvb jitsi
+}
+
diff --git a/testing/jitsi-videobridge/jitsi-videobridge.pre-install b/testing/jitsi-videobridge/jitsi-videobridge.pre-install
new file mode 100644
index 00000000000..4f90bd8e2cb
--- /dev/null
+++ b/testing/jitsi-videobridge/jitsi-videobridge.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S jitsi 2>/dev/null
+adduser -S -D -H -h /usr/lib/jitsi-videobridge -s /sbin/nologin -G jitsi -g jvb jvb 2>/dev/null
+
+exit 0
diff --git a/testing/jitsi-videobridge/jvb.conf b/testing/jitsi-videobridge/jvb.conf
new file mode 100644
index 00000000000..6e6b342f697
--- /dev/null
+++ b/testing/jitsi-videobridge/jvb.conf
@@ -0,0 +1,13 @@
+videobridge {
+ http-servers {
+ public {
+ port = 9090
+ }
+ }
+ websockets {
+ enabled = true
+ domain = "jitsi.example.com:443"
+ tls = true
+ }
+}
+
diff --git a/testing/jitsi-videobridge/sip-communicator.properties b/testing/jitsi-videobridge/sip-communicator.properties
new file mode 100644
index 00000000000..949dcbe95f9
--- /dev/null
+++ b/testing/jitsi-videobridge/sip-communicator.properties
@@ -0,0 +1,20 @@
+org.ice4j.ice.harvest.DISABLE_AWS_HARVESTER=true
+org.ice4j.ice.harvest.STUN_MAPPING_HARVESTER_ADDRESSES=meet-jit-si-turnrelay.jitsi.net:443
+
+# Enable broadcasting stats/presence in a MUC
+org.jitsi.videobridge.ENABLE_STATISTICS=true
+org.jitsi.videobridge.STATISTICS_TRANSPORT=muc
+
+# Uncomment and configure to enable XMPP client
+org.jitsi.videobridge.xmpp.user.shard.HOSTNAME=localhost
+org.jitsi.videobridge.xmpp.user.shard.DOMAIN=auth.jitsi.example.com
+org.jitsi.videobridge.xmpp.user.shard.USERNAME=jvb
+org.jitsi.videobridge.xmpp.user.shard.PASSWORD=JVB_SECRET
+org.jitsi.videobridge.xmpp.user.shard.MUC_JIDS=JvbBrewery@internal.auth.jitsi.example.com
+org.jitsi.videobridge.xmpp.user.shard.MUC_NICKNAME=SOME_RANDOM_UUID
+#org.jitsi.videobridge.xmpp.user.shard.DISABLE_CERTIFICATE_VERIFICATION=true
+
+# If you're behind a nat, define local and public IPv4
+#org.ice4j.ice.harvest.NAT_HARVESTER_LOCAL_ADDRESS=LOCAL_IPV4_GOES_HERE
+#org.ice4j.ice.harvest.NAT_HARVESTER_PUBLIC_ADDRESS=PUBLIC_IPV4_GOES_HERE
+
diff --git a/testing/jreleaser/APKBUILD b/testing/jreleaser/APKBUILD
new file mode 100644
index 00000000000..a026fa086aa
--- /dev/null
+++ b/testing/jreleaser/APKBUILD
@@ -0,0 +1,61 @@
+# Contributor: Andres Almiray <aalmiray@yahoo.com>
+# Maintainer: Andres Almiray <aalmiray@yahoo.com>
+pkgname=jreleaser
+pkgver=1.11.0
+pkgrel=0
+pkgdesc="Release projects quickly and easily with JReleaser"
+url="https://jreleaser.org/"
+# aarch64: openjdk currently segfaults
+# ppc64le: openjdk hangs
+# riscv64, 32-bit: no jdk11
+arch="all !aarch64 !ppc64le !armv7 !armhf !x86 !riscv64"
+license="Apache-2.0"
+depends="openjdk11-jdk"
+makedepends="gradle"
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/jreleaser/jreleaser/archive/refs/tags/v$pkgver.tar.gz"
+options="!check" #Check occurs in build
+
+prepare() {
+ default_prepare
+
+ # generate a copy of the wrapper with the chosen version
+ mkdir "$srcdir"/temp
+ cd "$srcdir"/temp
+ echo "rootProject.name = 'wrapper-project'" > settings.gradle
+ # this will fetch an older version of gradle
+ gradle --no-daemon wrapper --gradle-version 8.6
+
+ cd "$builddir"
+
+ # copy wrapper files into source distribution
+ cp -r "$srcdir"/temp/gradlew* "$builddir"
+ cp -r "$srcdir"/temp/gradle/* "$builddir"/gradle/
+}
+
+build() {
+ # build requires Java 11
+ export JAVA_HOME="/usr/lib/jvm/java-11-openjdk"
+ ./gradlew --no-daemon -PreproducibleBuild=true -x :jreleaser:setupJdks :jreleaser:distZip
+}
+
+package() {
+ unzip -qo plugins/jreleaser/build/distributions/jreleaser-$pkgver.zip
+
+ local apphome="/usr/share/java/jreleaser"
+ local destdir="$pkgdir/$apphome"
+
+ rm "jreleaser-$pkgver"/bin/*.bat
+ install -Dm755 "jreleaser-$pkgver"/bin/* -t "$destdir"/bin
+
+ mkdir -p "$pkgdir"/usr/bin
+ ln -sf ../share/java/jreleaser/bin/jreleaser "$pkgdir"/usr/bin/jreleaser
+
+ install -Dm644 "jreleaser-$pkgver"/lib/*.jar -t "$destdir"/lib
+ install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
+
+sha512sums="
+b3b777b51cbcc103d2fa57ab5807f1ad198415f8582415c8565516c0f70de2df6ba7d7814105f2a570cf713c13ceef4bab1a6bf5bbc6677385a747c4cac21c82 jreleaser-1.11.0.tar.gz
+"
+
diff --git a/testing/jrsonnet-cli/APKBUILD b/testing/jrsonnet-cli/APKBUILD
new file mode 100644
index 00000000000..0c7585374c9
--- /dev/null
+++ b/testing/jrsonnet-cli/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: Lauren N. Liberda <lauren@selfisekai.rocks>
+# Maintainer: Lauren N. Liberda <lauren@selfisekai.rocks>
+pkgname=jrsonnet-cli
+pkgver=0.4.2
+pkgrel=1
+pkgdesc="Rust implementation of Jsonnet language"
+url="https://github.com/CertainLach/jrsonnet"
+# riscv64: libc crate
+arch="all !riscv64"
+license="MIT"
+makedepends="cargo cargo-auditable"
+source="https://github.com/CertainLach/jrsonnet/archive/refs/tags/v$pkgver/jrsonnet-v$pkgver.tar.gz"
+builddir="$srcdir/jrsonnet-$pkgver"
+
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --offline --release -p jrsonnet
+}
+
+check() {
+ cargo test --frozen --offline
+}
+
+package() {
+ install -Dm755 target/release/jrsonnet "$pkgdir"/usr/bin/jrsonnet
+}
+
+sha512sums="
+884feaba07e95d993bd47ecee06b0a3acfd47febf411558430e8dca8e418bade47d85f9a552e34c5e4f8b3f4e44596eb616cf1928cc33fde98f7440e025edd1e jrsonnet-v0.4.2.tar.gz
+"
diff --git a/testing/jshon/APKBUILD b/testing/jshon/APKBUILD
deleted file mode 100644
index 95e3ae8c591..00000000000
--- a/testing/jshon/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Contributor: Carlo Landmeter <clandmeter@alpinelinux.org>
-# Maintainer:
-pkgname=jshon
-pkgver=20131105
-pkgrel=0
-pkgdesc="SON parser designed for maximum convenience within the shell"
-url="http://kmkeen.com/jshon/"
-arch="all"
-license="MIT"
-depends=""
-makedepends="jansson-dev"
-options="!check"
-subpackages="$pkgname-doc"
-source="jshon-$pkgver.tar.gz::https://github.com/keenerd/jshon/archive/$pkgver.tar.gz
- disable-werror.patch
- missing-typesh.patch
- "
-builddir="$srcdir/jshon-$pkgver"
-
-build() {
- cd "$builddir"
- make
-}
-
-check() {
- cd "$builddir"
- make check
-}
-
-package() {
- cd "$builddir"
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="0f27cc8d0157bda12e5180f99b4e894326e7240d8cd004dadcadfad09f926852e224e3cd2b03cc6d51f7e7efafea0e5ccb1a0b66ab0d8349326809bc7db8ffb4 jshon-20131105.tar.gz
-0f862ebcf1028cf2ad46610483df6b46e1f380b7b30605e672b342132fb1e123133d9c9672181d13217de5aa58e92522daf0eaa3537eacf810c978fbced364dc disable-werror.patch
-fc9a589cd39493c10e4616628040f19d758893545df59d2dc415d21eae12d8af12d5dd1fc160d0c95694086e5e86c8e9a463332dbab1fbd89babb606da139554 missing-typesh.patch"
diff --git a/testing/jshon/disable-werror.patch b/testing/jshon/disable-werror.patch
deleted file mode 100644
index fff4dc474e6..00000000000
--- a/testing/jshon/disable-werror.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- ./Makefile
-+++ ./Makefile
-@@ -1,6 +1,6 @@
- # jshon - command line JSON parsing
-
--CFLAGS := -std=c99 -Wall -pedantic -Wextra -Werror ${CFLAGS}
-+CFLAGS := -std=c99 -Wall -pedantic -Wextra ${CFLAGS}
- LDLIBS = -ljansson
- INSTALL=install
- DESTDIR?=/
diff --git a/testing/jshon/missing-typesh.patch b/testing/jshon/missing-typesh.patch
deleted file mode 100644
index d94c2a0ac0b..00000000000
--- a/testing/jshon/missing-typesh.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- ./jshon.c.orig
-+++ ./jshon.c
-@@ -5,6 +5,7 @@
- #include <stdlib.h>
- #include <sys/param.h>
- #include <sys/stat.h>
-+#include <sys/types.h>
- #include <unistd.h>
- #include <jansson.h>
- #include <errno.h>
diff --git a/testing/jsmn/APKBUILD b/testing/jsmn/APKBUILD
new file mode 100644
index 00000000000..2f3252f0a0d
--- /dev/null
+++ b/testing/jsmn/APKBUILD
@@ -0,0 +1,22 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer: Sergiy Stupar <owner@sestolab.pp.ua>
+pkgname=jsmn
+pkgver=1.1.0
+pkgrel=2
+pkgdesc="Small stream-oriented header-only JSON parser for C"
+url="https://github.com/zserge/jsmn"
+arch="noarch"
+license="MIT"
+source="https://github.com/zserge/jsmn/archive/v$pkgver/jsmn-v$pkgver.tar.gz"
+
+check() {
+ make test
+}
+
+package() {
+ install -Dm644 jsmn.h "$pkgdir"/usr/include/jsmn.h
+}
+
+sha512sums="
+474fa44740a4fae8389534ad08fe0e11ed3ba54cbedbce39a720984da4d20a21176f6abd1633ff2601a9b19421fd2f88320151c520764b4b05f73ed8abda76aa jsmn-v1.1.0.tar.gz
+"
diff --git a/testing/json-c0.12/APKBUILD b/testing/json-c0.12/APKBUILD
deleted file mode 100644
index ced8d7bace7..00000000000
--- a/testing/json-c0.12/APKBUILD
+++ /dev/null
@@ -1,45 +0,0 @@
-# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
-pkgname=json-c0.12
-pkgver=0.12.1
-pkgrel=2
-pkgdesc="A JSON implementation in C"
-url="https://github.com/json-c/json-c/wiki"
-arch="all"
-license="MIT"
-makedepends=" autoconf automake libtool"
-subpackages="$pkgname-dev"
-replaces="json-c"
-source="https://s3.amazonaws.com/json-c_releases/releases/json-c-$pkgver.tar.gz
- "
-
-builddir="$srcdir"/json-c-$pkgver
-prepare() {
- default_prepare
- autoreconf -f -v -i
-}
-
-build() {
- export CFLAGS="$CFLAGS -Wno-error=unused-but-set-variable -Wno-error=implicit-fallthrough"
- ./configure --prefix=/usr \
- --build=$CBUILD \
- --host=$CHOST \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --infodir=/usr/share/info \
- --localstatedir=/var \
- --enable-shared \
- --disable-static \
- ac_cv_func_malloc_0_nonnull=yes \
- ac_cv_func_realloc_0_nonnull=yes
- make -j1
-}
-
-check() {
- make USE_VALGRIND=0 check
-}
-
-package() {
- make -j1 DESTDIR="$pkgdir" install
-}
-
-sha512sums="038676a0ce815e5174161fbd4339524feadc294d517f732fb408ad6aa7c4906423451c13386107569d9f24746a1a101564ca511e92e8276c5bf5b8c022ca42ed json-c-0.12.1.tar.gz"
diff --git a/testing/json2tsv/APKBUILD b/testing/json2tsv/APKBUILD
new file mode 100644
index 00000000000..91b7bedfba9
--- /dev/null
+++ b/testing/json2tsv/APKBUILD
@@ -0,0 +1,52 @@
+# Contributor: Sergiy Stupar <owner@sestolab.pp.ua>
+# Maintainer: Sergiy Stupar <owner@sestolab.pp.ua>
+pkgname=json2tsv
+pkgver=1.1
+pkgrel=0
+pkgdesc="JSON to TSV converter"
+url="https://codemadness.org/json2tsv.html"
+arch="all"
+license="ISC"
+subpackages="$pkgname-doc $pkgname-jaq::noarch $pkgname-jaq-doc:jaq_doc"
+source="https://codemadness.org/releases/json2tsv/json2tsv-$pkgver.tar.gz"
+options="!check" # No tests
+
+build() {
+ make
+}
+
+package() {
+ make MANPREFIX=/usr/share/man PREFIX=/usr DESTDIR="$pkgdir" install
+
+ # conflicts with jaq package
+ mv "$pkgdir"/usr/bin/jaq "$pkgdir"/usr/bin/json2tsv-jaq
+ mv "$pkgdir"/usr/share/man/man1/jaq.1 "$pkgdir"/usr/share/man/man1/json2tsv-jaq.1
+ gzip -9n "$pkgdir"/usr/share/man/man1/*.1
+}
+
+jaq() {
+ pkgdesc="$pkgdesc (shellscript wrapper)"
+ depends="$pkgname=$pkgver-r$pkgrel"
+
+ amove usr/bin/json2tsv-jaq
+}
+
+doc() {
+ pkgdesc="$pkgdesc (documentation)"
+ install_if="docs $pkgname-jaq=$pkgver-r$pkgrel"
+
+ amove \
+ usr/share/man/man1/json2tsv.1* \
+ usr/share/doc
+}
+
+jaq_doc() {
+ pkgdesc="$pkgdesc (shellscript wrapper documentation)"
+ install_if="docs $pkgname-jaq=$pkgver-r$pkgrel"
+
+ amove usr/share/man/man1/json2tsv-jaq.1*
+}
+
+sha512sums="
+3166a32ad2ba09e1f54915322ccf68324c67486e5374045b2a70784dc4b97d7cc55af2d516cf4d011942fe18337005032cead10ddf8c7942cfb7c1af44294a8c json2tsv-1.1.tar.gz
+"
diff --git a/testing/jsonnet-bundler/APKBUILD b/testing/jsonnet-bundler/APKBUILD
new file mode 100644
index 00000000000..5da7e641f17
--- /dev/null
+++ b/testing/jsonnet-bundler/APKBUILD
@@ -0,0 +1,30 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=jsonnet-bundler
+pkgver=0.5.1
+pkgrel=12
+pkgdesc="Jsonnet package manager"
+url="https://github.com/jsonnet-bundler/jsonnet-bundler"
+arch="all"
+license="Apache-2.0"
+makedepends="go"
+source="$pkgname-$pkgver.tar.gz::https://github.com/jsonnet-bundler/jsonnet-bundler/archive/refs/tags/v$pkgver.tar.gz"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ go build -v -o jb -ldflags "-X main.Version=v$pkgver" ./cmd/jb
+}
+
+check() {
+ go test ./...
+}
+
+package() {
+ install -Dm755 jb -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+92432998b64571a141f869deaf2f01d65e963fb192db11724238dd178f815829fcf23a2809d2fd04b991530321bcca698cb6b1d4a6cd854336877d46b89b918b jsonnet-bundler-0.5.1.tar.gz
+"
diff --git a/testing/jsonnet-language-server/APKBUILD b/testing/jsonnet-language-server/APKBUILD
new file mode 100644
index 00000000000..f64b679d9ae
--- /dev/null
+++ b/testing/jsonnet-language-server/APKBUILD
@@ -0,0 +1,30 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=jsonnet-language-server
+pkgver=0.13.1
+pkgrel=2
+pkgdesc="Jsonnet language server"
+url="https://github.com/grafana/jsonnet-language-server"
+arch="all"
+license="AGPL-3.0-or-later"
+makedepends="go"
+source="$pkgname-$pkgver.tar.gz::https://github.com/grafana/jsonnet-language-server/archive/refs/tags/v$pkgver.tar.gz"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ go build -v -ldflags "-X main.version=v$pkgver"
+}
+
+check() {
+ go test ./...
+}
+
+package() {
+ install -Dm755 $pkgname -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+4a3bd06a23c0606aa0d35a827001d390cb7a1fbfb4d4cd75a9e012ecbe2998ff9649489b5d3fdc48c7ce166f09a4ca97bce8d70e6ca46d6f6850bf689f2ffae5 jsonnet-language-server-0.13.1.tar.gz
+"
diff --git a/testing/judo/APKBUILD b/testing/judo/APKBUILD
deleted file mode 100644
index 55035983568..00000000000
--- a/testing/judo/APKBUILD
+++ /dev/null
@@ -1,30 +0,0 @@
-# Contributor: omni <omni+alpine@hack.org>
-# Maintainer: omni <omni+alpine@hack.org>
-pkgname=judo
-pkgver=0.5
-pkgrel=0
-pkgdesc="Simple orchestration & configuration management"
-url="https://github.com/rollcat/judo"
-license="MIT"
-arch="all"
-makedepends="go"
-source="$pkgname-$pkgver.tar.gz::https://github.com/rollcat/judo/archive/refs/tags/$pkgver.tar.gz"
-
-export GOPATH="$srcdir"
-export GOFLAGS="$GOFLAGS -trimpath -mod=readonly -modcacherw"
-
-build() {
- go build -v .
-}
-
-check() {
- go test -v ./...
-}
-
-package() {
- install -Dm0755 "$pkgname" -t "$pkgdir"/usr/bin
-}
-
-sha512sums="
-d984535d38d480c988b469b319e77692b7815be7cbfe649f69cba4c66fc979e157c32c98f06f16d7c1e0a9d532ce6d082981de454eec90f77f254328e73bde27 judo-0.5.tar.gz
-"
diff --git a/testing/junit2html/APKBUILD b/testing/junit2html/APKBUILD
index a681932d199..0b409bc8163 100644
--- a/testing/junit2html/APKBUILD
+++ b/testing/junit2html/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Charles Wimmer <charles@wimmer.net>
# Maintainer: Charles Wimmer <charles@wimmer.net>
pkgname=junit2html
-pkgver=0.1.0
-pkgrel=2
+pkgver=0.2.0
+pkgrel=3
pkgdesc="Simple self-contained python tool to produce a single html file from a single junit xml file"
url="https://gitlab.com/inorton/junit2html"
arch="noarch"
@@ -10,6 +10,7 @@ license="MIT"
depends="python3"
makedepends="py3-setuptools"
builddir="$srcdir/$pkgname-v$pkgver"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://gitlab.com/inorton/junit2html/-/archive/v$pkgver/junit2html-v$pkgver.tar.gz
setup.py.patch
"
@@ -23,8 +24,10 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="4603b78cc950656df73c89b211cee030783435afc771b53715d677c1a47d5cc0d280e2f2eadec2e6382dbad3d7b88ff9ea3ce4d5b5a0bf6d216d7485659952b2 junit2html-0.1.0.tar.gz
-c3b5a80d3ff23cbf4391d4822ee841b216ec60bc9463d84b1c017a247295145ccdfa821a990dbf26c473e6055f7ef4b364f847628fb897a03d905d7ad0a7540b setup.py.patch"
+sha512sums="
+85902808752d299c9dd94e9158f4913b74f3b8c0639eb52a4ec32cc27774ef096072a3e18560a809f20a7c9ccc8d8ce8b107d6b6fd3d4e68ed51fbe2d90ce344 junit2html-0.2.0.tar.gz
+c3b5a80d3ff23cbf4391d4822ee841b216ec60bc9463d84b1c017a247295145ccdfa821a990dbf26c473e6055f7ef4b364f847628fb897a03d905d7ad0a7540b setup.py.patch
+"
diff --git a/testing/jwt-cli/APKBUILD b/testing/jwt-cli/APKBUILD
new file mode 100644
index 00000000000..8b029d963d7
--- /dev/null
+++ b/testing/jwt-cli/APKBUILD
@@ -0,0 +1,34 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=jwt-cli
+pkgver=6.0.0
+pkgrel=0
+pkgdesc="Super fast CLI tool to decode and encode JWTs"
+url="https://github.com/mike-engel/jwt-cli"
+# blocked by ring crate
+arch="all !s390x !ppc64le !riscv64"
+license="MIT"
+makedepends="cargo cargo-auditable"
+source="$pkgname-$pkgver.tar.gz::https://github.com/mike-engel/jwt-cli/archive/refs/tags/$pkgver.tar.gz"
+
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm755 target/release/jwt -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+2d0b7dfd98bc16448d1bd67763d7deea4be6ad5069134deacf6a3dcd5c64cf88f7b01fe09bdb03fc80845889706e3e172755b054f349a4c0141adafcd4458943 jwt-cli-6.0.0.tar.gz
+"
diff --git a/testing/k0sctl/0001-Fix-upload-test-when-tmp-is-empty-318.patch b/testing/k0sctl/0001-Fix-upload-test-when-tmp-is-empty-318.patch
deleted file mode 100644
index d29f25d8423..00000000000
--- a/testing/k0sctl/0001-Fix-upload-test-when-tmp-is-empty-318.patch
+++ /dev/null
@@ -1,71 +0,0 @@
-From 22c694ab0335a1e6146d0d3f939ef79d2c005a3d Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= <Mic92@users.noreply.github.com>
-Date: Wed, 9 Feb 2022 11:55:25 +0000
-Subject: [PATCH] Fix upload test when /tmp is empty (#318)
-
----
- .../v1beta1/cluster/uploadfile_test.go | 20 +++++++++----------
- 1 file changed, 10 insertions(+), 10 deletions(-)
-
-diff --git a/pkg/apis/k0sctl.k0sproject.io/v1beta1/cluster/uploadfile_test.go b/pkg/apis/k0sctl.k0sproject.io/v1beta1/cluster/uploadfile_test.go
-index f3e0edb..1c796f8 100644
---- a/pkg/apis/k0sctl.k0sproject.io/v1beta1/cluster/uploadfile_test.go
-+++ b/pkg/apis/k0sctl.k0sproject.io/v1beta1/cluster/uploadfile_test.go
-@@ -10,8 +10,8 @@ import (
- func TestPermStringUnmarshalWithOctal(t *testing.T) {
- u := UploadFile{}
- yml := []byte(`
--src: /tmp
--dstDir: /tmp
-+src: .
-+dstDir: .
- perm: 0755
- `)
-
-@@ -22,8 +22,8 @@ perm: 0755
- func TestPermStringUnmarshalWithString(t *testing.T) {
- u := UploadFile{}
- yml := []byte(`
--src: /tmp
--dstDir: /tmp
-+src: .
-+dstDir: .
- perm: "0755"
- `)
-
-@@ -34,8 +34,8 @@ perm: "0755"
- func TestPermStringUnmarshalWithInvalidString(t *testing.T) {
- u := UploadFile{}
- yml := []byte(`
--src: /tmp
--dstDir: /tmp
-+src: .
-+dstDir: .
- perm: u+rwx
- `)
-
-@@ -45,8 +45,8 @@ perm: u+rwx
- func TestPermStringUnmarshalWithInvalidNumber(t *testing.T) {
- u := UploadFile{}
- yml := []byte(`
--src: /tmp
--dstDir: /tmp
-+src: .
-+dstDir: .
- perm: 0800
- `)
-
-@@ -56,8 +56,8 @@ perm: 0800
- func TestPermStringUnmarshalWithZero(t *testing.T) {
- u := UploadFile{}
- yml := []byte(`
--src: /tmp
--dstDir: /tmp
-+src: .
-+dstDir: .
- perm: 0
- `)
-
---
-2.36.1
-
diff --git a/testing/k0sctl/0001-Use-go-1.18-345.patch b/testing/k0sctl/0001-Use-go-1.18-345.patch
deleted file mode 100644
index c55cf85a4a2..00000000000
--- a/testing/k0sctl/0001-Use-go-1.18-345.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From 3a9d8de5ecb5e057034d181cf61a1b640ecfdeed Mon Sep 17 00:00:00 2001
-From: Kimmo Lehto <klehto@mirantis.com>
-Date: Mon, 21 Mar 2022 14:20:23 +0200
-Subject: [PATCH] Use go 1.18 (#345)
-
-Upgrade golangci-lint too
-
-SA1019
-
-Unnecessary newline in println
-
-Unused: shlex
----
- .github/workflows/go.yml | 24 ++++++++++++------------
- .github/workflows/release.yaml | 2 +-
- cmd/flags.go | 2 +-
- go.mod | 4 ++--
- phase/runhooks.go | 7 +++++--
- 5 files changed, 21 insertions(+), 18 deletions(-)
-
-diff --git a/cmd/flags.go b/cmd/flags.go
-index e960d7c..37cf82d 100644
---- a/cmd/flags.go
-+++ b/cmd/flags.go
-@@ -338,7 +338,7 @@ func fileLoggerHook(logFile io.Writer) *loghook {
- }
-
- func displayLogo(_ *cli.Context) error {
-- fmt.Println(logo)
-+ fmt.Print(logo)
- return nil
- }
-
diff --git a/testing/k0sctl/APKBUILD b/testing/k0sctl/APKBUILD
deleted file mode 100644
index cfd6174fca1..00000000000
--- a/testing/k0sctl/APKBUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
-pkgname=k0sctl
-pkgver=0.12.6
-pkgrel=0
-pkgdesc="Bootstrapping and management tool for k0s clusters"
-url="https://github.com/k0sproject/k0sctl"
-arch="all"
-license="Apache-2.0"
-makedepends="go"
-source="https://github.com/k0sproject/k0sctl/archive/refs/tags/v$pkgver/k0sctl-$pkgver.tar.gz
- 0001-Fix-upload-test-when-tmp-is-empty-318.patch
- 0001-Use-go-1.18-345.patch
- "
-builddir="$srcdir/k0sctl-$pkgver"
-
-build() {
- make
-}
-
-check() {
- make test
-}
-
-package() {
- make PREFIX=/usr DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-15f1fd170336953e52209a95ff493d0fd1707829a3bc9b0a60d5c11a36a89c4bfcb3282634702e00b62eb27ba25df7d9b7c10b0b433906e734cc8f94d5407b8a k0sctl-0.12.6.tar.gz
-d70b7d621afdf7c577ef1466fc08a16db901ccae433a50697362fc2dbb9b10992ab01c6e9aa702e20e2f84abf3496919b024063521b07ba36e351a0a56554061 0001-Fix-upload-test-when-tmp-is-empty-318.patch
-1c1912bed67c6f056fc3772e8512984d4130c5db1fc5731c440dac597a460282bbffbf0f43f5c7b6ae4dd66178077d9ee27dc996b5a82fdbc7637c647a05a36b 0001-Use-go-1.18-345.patch
-"
diff --git a/testing/k2/APKBUILD b/testing/k2/APKBUILD
new file mode 100644
index 00000000000..f1b1216193f
--- /dev/null
+++ b/testing/k2/APKBUILD
@@ -0,0 +1,27 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
+pkgname=k2
+pkgver=0_git20220807
+_commit="45fbcc2aede0af9b829547e1390c48adee57e8e3"
+pkgrel=1
+pkgdesc="Chess engine with UCI and Xboard interface"
+url="https://github.com/serg-meus/k2"
+arch="all"
+license="GPL-2.0-only"
+options="!check" # no test suite
+makedepends="qt5-qtbase-dev" # qmake
+source="https://github.com/serg-meus/k2/archive/$_commit.tar.gz"
+builddir="$srcdir/k2-$_commit"
+
+build() {
+ qmake-qt5
+ make -e
+}
+
+package() {
+ install -Dm755 k2 -t "$pkgdir"/usr/bin
+}
+
+sha512sums="
+eb69aab7a68ee82faaf3c275b92ae0cfee75d0d869f154b1fc85eb7c08b580f49f88d3d7ff9add8018626b54ea2360da0d9407b427e15db4c0cd23efb721dc48 45fbcc2aede0af9b829547e1390c48adee57e8e3.tar.gz
+"
diff --git a/testing/k3sup/APKBUILD b/testing/k3sup/APKBUILD
new file mode 100644
index 00000000000..9dff8818a80
--- /dev/null
+++ b/testing/k3sup/APKBUILD
@@ -0,0 +1,53 @@
+# Contributor: Lauren N. Liberda <lauren@selfisekai.rocks>
+# Maintainer: Lauren N. Liberda <lauren@selfisekai.rocks>
+pkgname=k3sup
+pkgver=0.13.5
+pkgrel=2
+pkgdesc="A light-weight utility to get from zero to KUBECONFIG with k3s"
+url="https://k3sup.dev/"
+arch="all"
+license="MIT"
+makedepends="go"
+subpackages="
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
+ "
+source="https://github.com/alexellis/k3sup/archive/refs/tags/$pkgver/k3sup-$pkgver.tar.gz"
+
+# secfixes:
+# 0.13.4-r0:
+# - CVE-2023-48795
+
+prepare() {
+ default_prepare
+
+ mkdir -p bin/
+}
+
+build() {
+ go build -a \
+ -ldflags "-X github.com/alexellis/k3sup/cmd.Version=$pkgver" \
+ -o bin/k3sup
+
+ for i in bash fish zsh; do
+ ./bin/k3sup completion "$i" > "$builddir"/k3sup.$i
+ done
+}
+
+check() {
+ # shellcheck disable=SC2046
+ go test $(go list ./... | grep -v /vendor/ | xargs) -cover
+}
+
+package() {
+ install -Dm755 bin/k3sup "$pkgdir"/usr/bin/k3sup
+
+ install -Dm644 "$builddir"/$pkgname.bash "$pkgdir"/usr/share/bash-completion/completions/$pkgname
+ install -Dm644 "$builddir"/$pkgname.fish "$pkgdir"/usr/share/fish/vendor_completions.d/$pkgname.fish
+ install -Dm644 "$builddir"/$pkgname.zsh "$pkgdir"/usr/share/zsh/site-functions/_$pkgname
+}
+
+sha512sums="
+4172da9d9b15a63e27a0bb6f41b32e6c82af3ce9e0d45c9989fb82ee97f087c2b80e21c6201134152adef235651ba61be900ea2544864e33b748bfcd46a93e8f k3sup-0.13.5.tar.gz
+"
diff --git a/testing/kabmat/APKBUILD b/testing/kabmat/APKBUILD
new file mode 100644
index 00000000000..685ff42b1ef
--- /dev/null
+++ b/testing/kabmat/APKBUILD
@@ -0,0 +1,29 @@
+# Contributor: Guy Godfroy <guy.godfroy@gugod.fr>
+# Maintainer: Guy Godfroy <guy.godfroy@gugod.fr>
+pkgname=kabmat
+pkgver=2.7.0
+pkgrel=0
+pkgdesc="TUI program for managing kanban boards with vim-like keybindings"
+url="https://github.com/PlankCipher/kabmat"
+arch="all"
+license="GPL-3.0-only"
+makedepends="ncurses-dev"
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/PlankCipher/kabmat/archive/v$pkgver.tar.gz
+ makefile.patch
+ "
+options="!check" # No test defined upstream
+
+build() {
+ # extremely broken project that passes 'cflags' to cxx and also ignores everything by default
+ make CFLAGS="-std=c++17 $CFLAGS $CXXFLAGS $LDFLAGS"
+}
+
+package() {
+ make PREFIX="/usr" DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+22bf8fde34d705ceac71ccb54c0f9a5a10be7716b49aecea38b70de595c2350ffbe3126cc6a2c12cd651f74be51783c262c7ec0bc94810872aa470305898e76f kabmat-2.7.0.tar.gz
+9c7909c857fa9b69ae1e4399c51e9b56a3fd4ad4191ae8b9131e2c70c141aa9fc4e180736402d5392ee553f906b26dbb56cf376084361ee64d07d411f2d6d5e9 makefile.patch
+"
diff --git a/testing/kabmat/makefile.patch b/testing/kabmat/makefile.patch
new file mode 100644
index 00000000000..4c38c6d9f81
--- /dev/null
+++ b/testing/kabmat/makefile.patch
@@ -0,0 +1,43 @@
+diff --git a/Makefile b/Makefile
+index 611b1c3..4f796dd 100644
+--- a/Makefile
++++ b/Makefile
+@@ -1,7 +1,18 @@
++# Common prefix for installation directories, following GNU conventions.
++# See https://www.gnu.org/prep/standards/html_node/Directory-Variables.html for details.
++
++# Installation prefix
++PREFIX = /usr/local
++DATAROOTDIR = $(PREFIX)/share
++
++# Where to put the executable.
++BINDIR = $(PREFIX)/bin
++# Where to put the manual pages.
++MANDIR = $(DATAROOTDIR)/man
++
+ TARGET = kabmat
+ SRC_DIR = src
+ BUILD_DIR = bin
+-INSTALL_DIR = /usr/bin/
+ DATA_DIR = ~/.local/share/kabmat
+
+ CFLAGS = -std=c++17 -Wall -Wextra
+@@ -31,7 +42,14 @@ clean:
+
+ .PHONY: install
+ install:
+- $(MAKE)
+- sudo cp ./$(TARGET) $(INSTALL_DIR)
+- sudo mkdir -p /usr/local/man/man1
+- sudo cp ./doc/kabmat.1 /usr/local/man/man1/
++ mkdir -p $(DESTDIR)$(BINDIR) $(DESTDIR)$(MANDIR)/man1
++ cp ./$(TARGET) $(DESTDIR)$(BINDIR)
++ chmod 0755 $(DESTDIR)$(BINDIR)/$(TARGET)
++ cp ./doc/kabmat.1 $(DESTDIR)$(MANDIR)/man1
++ chmod 0644 $(DESTDIR)$(MANDIR)/man1/kabmat.1
++ $(MAKE) clean
++
++.PHONY: uninstall
++uninstall:
++ rm $(DESTDIR)$(BINDIR)/$(TARGET)
++ rm $(DESTDIR)$(MANDIR)/man1/kabmat.1
diff --git a/testing/kak-lsp/APKBUILD b/testing/kak-lsp/APKBUILD
index a52dc38e220..d7e9016388b 100644
--- a/testing/kak-lsp/APKBUILD
+++ b/testing/kak-lsp/APKBUILD
@@ -1,29 +1,24 @@
# Contributor: Siva Mahadevan <me@svmhdvn.name>
# Maintainer: Siva Mahadevan <me@svmhdvn.name>
pkgname=kak-lsp
-pkgver=12.2.1
+pkgver=15.0.1
pkgrel=0
pkgdesc="Language Server Protocol client for Kakoune implemented in Rust"
url="https://github.com/kak-lsp/kak-lsp"
arch="all !s390x !riscv64" # limited by cargo
license="Unlicense OR MIT"
-makedepends="cargo"
+makedepends="cargo cargo-auditable"
source="$pkgname-$pkgver.tar.gz::https://github.com/kak-lsp/kak-lsp/archive/v$pkgver.tar.gz"
-# Reduce binary size
-export CARGO_PROFILE_RELEASE_CODEGEN_UNITS=1
-export CARGO_PROFILE_RELEASE_LTO="true"
-export CARGO_PROFILE_RELEASE_OPT_LEVEL="z"
-export CARGO_PROFILE_RELEASE_PANIC="abort"
prepare() {
default_prepare
- cargo fetch --locked
+ cargo fetch --target="$CTARGET" --locked
}
build() {
- cargo build --frozen --release
+ cargo auditable build --frozen --release
}
check() {
@@ -35,5 +30,5 @@ package() {
}
sha512sums="
-5135a3d7aa3bcd75590ece9dcf14c949262bf5e1643eece06ea7e1dde2717cd2732d05681418c51e3651aead5e4aac472f95c0759aeaac83c64c99d167889029 kak-lsp-12.2.1.tar.gz
+46e3d054e30be698a58b23fa5818cc29ebee6ddacdd7189af23a2faa20151bde779bd556034d668f50127ee0cd023b5ad6582c4fedfd22b6d7e40fa0dd928b13 kak-lsp-15.0.1.tar.gz
"
diff --git a/testing/kakoune-cr/APKBUILD b/testing/kakoune-cr/APKBUILD
deleted file mode 100644
index 1c612a7c537..00000000000
--- a/testing/kakoune-cr/APKBUILD
+++ /dev/null
@@ -1,48 +0,0 @@
-# Maintainer: Stacy Harper <contact@stacyharper.net>
-pkgname=kakoune-cr
-pkgver=0.0.2
-pkgrel=0
-pkgdesc="kakoune.cr (kcr) is a command-line tool for Kakoune"
-url="https://github.com/alexherbo2/kakoune.cr"
-arch="x86_64 aarch64" # limited by crystal
-license="MIT"
-depends="jq"
-makedepends="crystal shards"
-_commit="d2b59774382328343cb4e6336f371e15d2a84b96"
-source="
- $pkgname-$pkgver.tar.gz::https://github.com/alexherbo2/kakoune.cr/archive/$_commit.tar.gz
- kcr.kak
-"
-builddir="$srcdir/kakoune.cr-$_commit"
-subpackages="$pkgname-commands"
-
-build() {
- make build
-}
-
-package() {
- install -Dm755 bin/kcr "$pkgdir"/usr/bin/kcr
-
- cd share/kcr
- find init/ pages/ -type f -exec install -Dm644 "{}" "$pkgdir/usr/share/kcr/{}" \;
-
- install -Dm644 applications/kcr.desktop "$pkgdir"/usr/share/applications/kcr.desktop
-
- mkdir -p "$pkgdir"/usr/share/kak/autoload/kcr
- install -Dm644 "$startdir"/kcr.kak "$pkgdir"/usr/share/kak/rc/kcr/kcr.kak
-
-}
-
-commands() {
- depends="$depends fd fzf"
-
- cd "$builddir"/share/kcr
- find commands/ -type f -name 'kcr-*' | while read file; do
- install -Dm755 "$file" "$subpkgdir/usr/bin/$(basename "$file")"
- done
-}
-
-sha512sums="
-e57ae8dcdf51a1ffaeee834dd93c006ffd94200c0fe47d1647180ac2597e2be8abda1edff647af2d31774f7fb3174a6cb5c27049620fdf011f8ad982403b800b kakoune-cr-0.0.2.tar.gz
-5d44426f8829e07c34ac6e3b5a483f0103da5d9648d1705636df5f273bb35d81935474545240359455d6837461b54cef860f461ee52dfa3fddbf3233efded94f kcr.kak
-"
diff --git a/testing/kakoune-cr/kcr.kak b/testing/kakoune-cr/kcr.kak
deleted file mode 100644
index 31a101650f0..00000000000
--- a/testing/kakoune-cr/kcr.kak
+++ /dev/null
@@ -1,3 +0,0 @@
-evaluate-commands %sh{
- kcr init kakoune
-}
diff --git a/testing/kanister-tools/APKBUILD b/testing/kanister-tools/APKBUILD
new file mode 100644
index 00000000000..07e4536b58b
--- /dev/null
+++ b/testing/kanister-tools/APKBUILD
@@ -0,0 +1,62 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=kanister-tools
+pkgver=0.105.0
+pkgrel=2
+pkgdesc="CLI tools for application-level data management on Kubernetes"
+url="https://kanister.io/"
+arch="all"
+license="Apache-2.0"
+makedepends="go"
+subpackages="
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/kanisterio/kanister/archive/refs/tags/$pkgver.tar.gz"
+builddir="$srcdir/kanister-$pkgver"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ local _goldflags="
+ -X github.com/kanisterio/kanister/pkg/version.VERSION=$pkgver
+ -X github.com/kanisterio/kanister/pkg/version.GIT_COMMIT=AlpineLinux
+ -X github.com/kanisterio/kanister/pkg/version.BUILD_DATE=$(date -u "+%Y-%m-%dT%TZ" ${SOURCE_DATE_EPOCH:+-d @$SOURCE_DATE_EPOCH})
+ "
+ for binary in kanctl kando; do
+ go build -v -o $binary \
+ -ldflags "$_goldflags" \
+ ./cmd/$binary
+
+ for shell in bash fish zsh; do
+ ./$binary completion $shell > $binary.$shell
+ done
+ done
+}
+
+check() {
+ # Only run tests for the built binaries.
+ # Some of the other tests require a Kubernetes cluster to run
+ for binary in kanctl kando; do
+ go test ./pkg/$binary/...
+ done
+}
+
+package() {
+ for binary in kanctl kando; do
+ install -Dm755 $binary -t "$pkgdir"/usr/bin/
+
+ install -Dm644 $binary.bash \
+ "$pkgdir"/usr/share/bash-completion/completions/$binary
+ install -Dm644 $binary.fish \
+ "$pkgdir"/usr/share/fish/vendor_completions.d/$binary.fish
+ install -Dm644 $binary.zsh \
+ "$pkgdir"/usr/share/zsh/site-functions/_$binary
+ done
+}
+
+sha512sums="
+ed11dbf2049d864bac41fd774150e0f44645aab8ff4edc4399465342099ab5eb7fd25a3c78d3b5174c0c6a445b7a35b4c50ecbf371fc668fd2e11f90c22468a6 kanister-tools-0.105.0.tar.gz
+"
diff --git a/testing/kannel/APKBUILD b/testing/kannel/APKBUILD
index 793050c2c4a..cceeeec2fce 100644
--- a/testing/kannel/APKBUILD
+++ b/testing/kannel/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer:
pkgname=kannel
pkgver=1.5.0
-pkgrel=10
+pkgrel=11
pkgdesc="Opensource WAP/SMS Gateway"
url="https://www.kannel.org/"
arch="all"
diff --git a/testing/kapow/APKBUILD b/testing/kapow/APKBUILD
index f4ccbe1ff24..40be1588db4 100644
--- a/testing/kapow/APKBUILD
+++ b/testing/kapow/APKBUILD
@@ -1,14 +1,19 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=kapow
-pkgver=0.5.4
+pkgver=0.7.1
pkgrel=5
pkgdesc="turn shell commands into HTTP API"
url="https://kapow.readthedocs.io/en/stable/"
license="Apache-2.0"
arch="all"
makedepends="go"
-source="https://github.com/BBVA/kapow/archive/v$pkgver/kapow-$pkgver.tar.gz"
-builddir="$srcdir/kapow-$pkgver"
+source="https://github.com/BBVA/kapow/archive/v$pkgver/kapow-$pkgver.tar.gz
+ fix-cgo.patch
+ "
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
build() {
make build
@@ -22,4 +27,7 @@ package() {
install -Dm755 build/kapow "$pkgdir"/usr/bin/kapow
}
-sha512sums="a1ee66f2d1404c1b323b8c6b3eaabcd804d61653ad0a28a0b8ffa75d804b8c42cfebf81400a0a5822055ae8135f4f4bcc6ca159aa8c6c701799f4a11cb86d0bb kapow-0.5.4.tar.gz"
+sha512sums="
+823a184bc988fde3e5680728438b5c2af2e2f15b4fde27768b0ae269bd04193252bbc23d295106d686055e6c54f2ab1f2d727e342b7e0774ab3b188b147e0301 kapow-0.7.1.tar.gz
+f0fcc64df68757fe9e9625411627d71468b05859f53828bc4708fbd87cac1aa24819ea14b79864d23fe4e4b9f89a8d5c728d158ac625b9eee7b2cdafef6c9d29 fix-cgo.patch
+"
diff --git a/testing/kapow/fix-cgo.patch b/testing/kapow/fix-cgo.patch
new file mode 100644
index 00000000000..b7d1d590d15
--- /dev/null
+++ b/testing/kapow/fix-cgo.patch
@@ -0,0 +1,11 @@
+--- a/Makefile
++++ b/Makefile
+@@ -24,7 +24,7 @@
+
+ build: deps
+ mkdir -p $(BUILD_DIR)
+- CGO_ENABLED=0 $(GOBUILD) -o $(BUILD_DIR)/$(BINARY_NAME) -v
++ $(GOBUILD) -o $(BUILD_DIR)/$(BINARY_NAME) -v
+
+ test: build jaillover
+ $(GOTEST) -v -coverprofile=$(TMP_DIR)/c.out ./...
diff --git a/testing/katana/APKBUILD b/testing/katana/APKBUILD
new file mode 100644
index 00000000000..4f25da1dbe9
--- /dev/null
+++ b/testing/katana/APKBUILD
@@ -0,0 +1,35 @@
+# Contributor: Sergiy Stupar <owner@sestolab.pp.ua>
+# Maintainer: Sergiy Stupar <owner@sestolab.pp.ua>
+pkgname=katana
+pkgver=1.1.0
+pkgrel=1
+pkgdesc="Next-generation crawling and spidering framework"
+url="https://github.com/projectdiscovery/katana"
+arch="all"
+license="MIT"
+makedepends="go"
+source="$pkgname-$pkgver.tar.gz::https://github.com/projectdiscovery/katana/archive/v$pkgver.tar.gz"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ go build \
+ -mod=readonly \
+ -ldflags "-extldflags \"$LDFLAGS\"" \
+ -o "$pkgname" \
+ -v "./cmd/$pkgname/main.go"
+}
+
+check() {
+ go test -v ./...
+}
+
+package() {
+ install -Dm755 "$pkgname" -t "$pkgdir"/usr/bin
+}
+
+sha512sums="
+46b6586d9f3433a0b67e548dbb2c74b96be1f162db35f139cd628873608a8bf0052f6bd265503b02530d08bc29c6986ca30d545d229ad748eacd1ca89e300a88 katana-1.1.0.tar.gz
+"
diff --git a/testing/kbs2/APKBUILD b/testing/kbs2/APKBUILD
index fdf12a22ade..b2e1a8795fc 100644
--- a/testing/kbs2/APKBUILD
+++ b/testing/kbs2/APKBUILD
@@ -1,34 +1,30 @@
-# Contributor: psykose <alice@ayaya.dev>
-# Maintainer: psykose <alice@ayaya.dev>
+# Maintainer:
pkgname=kbs2
-pkgver=0.5.1
-pkgrel=0
+pkgver=0.7.2
+pkgrel=3
pkgdesc="Secret manager backed by age"
url="https://github.com/woodruffw/kbs2"
arch="all !s390x !riscv64" # blocked by cargo
license="MIT"
-makedepends="cargo libxcb-dev python3"
+makedepends="cargo python3 cargo-auditable"
subpackages="
$pkgname-bash-completion
$pkgname-fish-completion
$pkgname-zsh-completion
"
-source="$pkgname-$pkgver.tar.gz::https://github.com/woodruffw/kbs2/archive/refs/tags/v$pkgver.tar.gz"
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/woodruffw/kbs2/archive/refs/tags/v$pkgver.tar.gz
+ cargo-update-libc-lfs64.patch
+ "
+
prepare() {
default_prepare
- cargo fetch --locked
+ cargo fetch --target="$CTARGET" --locked
}
build() {
- cat >> Cargo.toml <<- EOF
- [profile.release]
- codegen-units = 1
- lto = true
- opt-level = "s"
- panic = "abort"
- EOF
- cargo build --release --frozen
+ cargo auditable build --release --frozen
./target/release/kbs2 --completions bash > kbs2.bash
./target/release/kbs2 --completions fish > kbs2.fish
@@ -45,11 +41,12 @@ package() {
install -Dm644 "$builddir"/kbs2.bash \
"$pkgdir"/usr/share/bash-completion/completions/kbs2
install -Dm644 "$builddir"/kbs2.fish \
- "$pkgdir"/usr/share/fish/completions/kbs2.fish
+ "$pkgdir"/usr/share/fish/vendor_completions.d/kbs2.fish
install -Dm644 "$builddir"/kbs2.zsh \
"$pkgdir"/usr/share/zsh/site-functions/_kbs2
}
sha512sums="
-91a4a24eca8d0ba4b0f033cfc61e90a98ad0ecf57c5fc3b55cb44d720e45b2aa63429c2596502a30578af7b74190159b65dc47d07381030bd73859c5e24e972c kbs2-0.5.1.tar.gz
+9d74dfaa17702a44e20332618aa094e52899a1f27a6af35a65ef928f62d5dc0bebe1a8ed20618a89b8ae468d47cb6ef4608d538ec4d5b317f6f5d9338cf8b2b7 kbs2-0.7.2.tar.gz
+8df79f751501a7c9ac85bd75c3c901113fb8e19d422b1074f7bde1d1503f23835a6b80a43f39999aac5f7099ebe24437fd90d66b20b9e9b355a65d774d206a43 cargo-update-libc-lfs64.patch
"
diff --git a/testing/kbs2/cargo-update-libc-lfs64.patch b/testing/kbs2/cargo-update-libc-lfs64.patch
new file mode 100644
index 00000000000..c1db0f7c95c
--- /dev/null
+++ b/testing/kbs2/cargo-update-libc-lfs64.patch
@@ -0,0 +1,16 @@
+diff --git a/Cargo.lock b/Cargo.lock
+index b008628..b3e623e 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -990,9 +990,9 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
+
+ [[package]]
+ name = "libc"
+-version = "0.2.139"
++version = "0.2.147"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "201de327520df007757c1f0adce6e827fe8562fbc28bfd9c15571c66ca1f5f79"
++checksum = "b4668fb0ea861c1df094127ac5f1da3409a82116a4ba74fca2e58ef927159bb3"
+
+ [[package]]
+ name = "linux-raw-sys"
diff --git a/testing/kcgi/APKBUILD b/testing/kcgi/APKBUILD
deleted file mode 100644
index c283b6951bc..00000000000
--- a/testing/kcgi/APKBUILD
+++ /dev/null
@@ -1,38 +0,0 @@
-# Contributor: David Demelier <markand@malikania.fr>
-# Maintainer: David Demelier <markand@malikania.fr>
-pkgname=kcgi
-pkgver=0.13.0
-_pkgver=${pkgver//./_}
-pkgrel=0
-pkgdesc="CGI and FastCGI library for C/C++ web applications"
-url="https://kristaps.bsd.lv/kcgi"
-arch="all"
-license="ISC"
-makedepends="bmake zlib-dev"
-checkdepends="curl-dev"
-subpackages="$pkgname-static $pkgname-dev $pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/kristapsdz/kcgi/archive/VERSION_$_pkgver.tar.gz"
-builddir="$srcdir/kcgi-VERSION_$_pkgver"
-
-build() {
- # https://github.com/kristapsdz/kcgi/issues/91
- case $CARCH in
- aarch64)
- echo HAVE_SECCOMP_FILTER=0 > configure.local ;;
- esac
-
- ./configure PREFIX=/usr MANDIR=/usr/share/man SBINDIR=/usr/sbin
- bmake
-}
-
-package() {
- bmake DESTDIR="$pkgdir" install
-}
-
-check() {
- bmake regress
-}
-
-sha512sums="
-244b264bce78dc9f1ed2738a2ee7649ccb69ac6703cd0005b7e5f1f2d7e01901daa10188af16bc53e16caca234801334c111ac04b22451a0f10992f2df9b8752 kcgi-0.13.0.tar.gz
-"
diff --git a/testing/kdiskmark/APKBUILD b/testing/kdiskmark/APKBUILD
new file mode 100644
index 00000000000..440b7bf3c0b
--- /dev/null
+++ b/testing/kdiskmark/APKBUILD
@@ -0,0 +1,47 @@
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=kdiskmark
+pkgver=3.1.4
+pkgrel=1
+pkgdesc="Simple open-source disk benchmark tool for Linux distros"
+url="https://github.com/JonMagon/KDiskMark"
+arch="all"
+license="GPL-3.0-or-later"
+depends="fio"
+makedepends="
+ cmake
+ extra-cmake-modules
+ polkit-qt-dev
+ qt5-qtbase-dev
+ qt5-qttools-dev
+ samurai
+ "
+langdir="/usr/share/kdiskmark/kdiskmark/translations"
+subpackages="$pkgname-lang"
+source="https://github.com/JonMagon/KDiskMark/releases/download/$pkgver/KDiskMark-$pkgver-source.tar.gz"
+builddir="$srcdir/KDiskMark-$pkgver"
+
+build() {
+ if [ "$CBUILD" != "$CHOST" ]; then
+ local crossopts="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ CXXFLAGS="$CXXFLAGS -flto=auto" \
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=MinSizeRel \
+ $crossopts
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+53f292e4137ac36dfbc09ad400496170bfd13a8c18f1c474bd15b00cdd931918713e034e35d6f3dbda29eb1ee89d8f273dd8e794a9e70c95ec96ebf31f0baedf KDiskMark-3.1.4-source.tar.gz
+"
diff --git a/testing/keama/APKBUILD b/testing/keama/APKBUILD
deleted file mode 100644
index 4f57e4b9fef..00000000000
--- a/testing/keama/APKBUILD
+++ /dev/null
@@ -1,44 +0,0 @@
-# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer:
-pkgname=keama
-pkgver="4.4.1_git20191205"
-_gitrev="2fefb3ff08295c688fd32d43e3e8fdfa7558f867"
-pkgrel=0
-pkgdesc="Kae DHCP Migration Assistant"
-url="https://gitlab.isc.org/isc-projects/dhcp"
-arch="all"
-license="ISC"
-subpackages="$pkgname-doc"
-source="https://gitlab.isc.org/isc-projects/dhcp/-/archive/$_gitrev/dhcp-$_gitrev.tar.gz"
-builddir="$srcdir/dhcp-$_gitrev"
-
-# XXX: Hotfix for building with gcc >= 10
-export CFLAGS="$CFLAGS -fcommon"
-
-prepare() {
- default_prepare
-
- update_config_sub
- update_config_guess
-}
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var
- make -C keama
-}
-
-check() {
- make -C keama check
-}
-
-package() {
- make -C keama install DESTDIR="$pkgdir"
-}
-
-sha512sums="a60093ead04200ae4d82108232b4005bc5993a3b5d5579cf18afb7bbf886aa9e9a61fc34f07c937accbee4f29faa81f3d6e7583f6285bd4920b0f724ecc29769 dhcp-2fefb3ff08295c688fd32d43e3e8fdfa7558f867.tar.gz"
diff --git a/testing/keepassxc-browser/APKBUILD b/testing/keepassxc-browser/APKBUILD
new file mode 100644
index 00000000000..216ccdb5f73
--- /dev/null
+++ b/testing/keepassxc-browser/APKBUILD
@@ -0,0 +1,30 @@
+# Contributor: Hugo Osvaldo Barrera <hugo@whynothugo.nl>
+# Maintainer: Hugo Osvaldo Barrera <hugo@whynothugo.nl>
+pkgname=keepassxc-browser
+pkgver=1.8.9
+pkgrel=0
+pkgdesc="KeePassXC Browser Extension"
+url="https://github.com/keepassxreboot/keepassxc-browser/"
+arch="noarch"
+license="GPL-3.0-or-later"
+makedepends="npm"
+source="keepassxc-browser-$pkgver.tar.gz::https://github.com/keepassxreboot/keepassxc-browser/archive/refs/tags/$pkgver.tar.gz"
+options="!check net" # no tests, build fetches assets
+
+prepare() {
+ default_prepare
+ npm ci
+}
+
+build() {
+ # fetching translations requires a user account (and unmet dependencies).
+ npm run build -- --skip-translations
+}
+
+package() {
+ install -Dm644 keepassxc-browser_1.8.9_firefox.zip "$pkgdir/usr/lib/firefox/browser/extensions/keepassxc-browser@keepassxc.org.xpi"
+}
+
+sha512sums="
+15d19c6bd03fc338d9deee1aabf2e81dd1709b515d48b0e051e5891fefb9350af4a1616d1f7e1d1c8e91c78244b44abe0ce44abd993d4c2c8f8c40c987e9bd78 keepassxc-browser-1.8.9.tar.gz
+"
diff --git a/testing/keepassxc-proxy-static/APKBUILD b/testing/keepassxc-proxy-static/APKBUILD
deleted file mode 100644
index 61f9d0f4d78..00000000000
--- a/testing/keepassxc-proxy-static/APKBUILD
+++ /dev/null
@@ -1,60 +0,0 @@
-# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
-#
-# CAUTION: Don't move this to the community repository until #12941 is fixed,
-# so it can be built with cargo+rustc from aports!
-pkgname=keepassxc-proxy-static
-_projname=keepassxc-proxy-rust
-pkgver=0_git20210116
-_gitrev=338735e6f4ab95f4b53734b05fe64c70694ea219
-pkgrel=1
-pkgdesc="A statically linked proxy between Native Messaging browser extension and KeePassXC (for use with Flatpak)"
-url="https://github.com/varjolintu/keepassxc-proxy-rust"
-arch="x86_64" # limited by rustup, fails to build on aarch64
-license="GPL-3.0-or-later"
-makedepends="rustup"
-install="$pkgname.post-install"
-source="https://github.com/varjolintu/keepassxc-proxy-rust/archive/$_gitrev/$_projname-$_gitrev.tar.gz
- keepassxc-proxy-install.in
- "
-builddir="$srcdir/$_projname-$_gitrev"
-options="!check" # no tests provided
-
-export CARGO_HOME="$srcdir/.cargo"
-export RUSTUP_HOME="$srcdir/.rustup"
-
-prepare() {
- default_prepare
-
- sed "s/@@VERSION@@/$pkgver/" "$srcdir"/keepassxc-proxy-install.in \
- > "$srcdir"/keepassxc-proxy-install
-
- # Optimize binary for size.
- cat >> Cargo.toml <<-EOF
-
- [profile.release]
- codegen-units = 1
- lto = true
- opt-level = "z"
- panic = "abort"
- EOF
-
- # TODO: This is a workaround for https://gitlab.alpinelinux.org/alpine/aports/-/issues/12941.
- # Remove it and build with cargo+rustc from aports (using `-C target-feature=+crt-static`)
- # after it's fixed.
- rustup-init --target "$CARCH-unknown-linux-musl" --profile minimal --no-modify-path -y
-}
-
-build() {
- PATH="$CARGO_HOME/bin:$PATH" cargo build --locked --release
-}
-
-package() {
- install -D -m755 target/release/keepassxc-proxy "$pkgdir"/usr/libexec/keepassxc-proxy.static
- install -D -m755 "$srcdir"/keepassxc-proxy-install "$pkgdir"/usr/bin/keepassxc-proxy-install
-}
-
-sha512sums="
-9926503b297a7ee72c80d9bfcc4972f76366d897a5ef24bd4fb2394b2eb60e1db75508168333daef2e65e3fcf3a0c755ec539fc3ff0fc71566b3b12951a91b0c keepassxc-proxy-rust-338735e6f4ab95f4b53734b05fe64c70694ea219.tar.gz
-3d31ed8d2a430f1e61960990128a9b7277106fcf74c16952ccefdeca3a3ba5cb9e6917d08d801bff1d4d354566689bda8f54d10f3711b03063d01374913c0387 keepassxc-proxy-install.in
-"
diff --git a/testing/keepassxc-proxy-static/keepassxc-proxy-install.in b/testing/keepassxc-proxy-static/keepassxc-proxy-install.in
deleted file mode 100644
index 12f4fc0d740..00000000000
--- a/testing/keepassxc-proxy-static/keepassxc-proxy-install.in
+++ /dev/null
@@ -1,100 +0,0 @@
-#!/bin/sh
-set -eu
-
-readonly PROGNAME=${0##*/}
-readonly VERSION=@@VERSION@@
-
-readonly PROXY_BIN='/usr/libexec/keepassxc-proxy.static'
-
-readonly NAME='org.keepassxc.keepassxc_browser'
-readonly DESTDIR_FIREFOX='.var/app/org.mozilla.firefox/.mozilla/native-messaging-hosts'
-readonly DESTDIR_CHROMIUM='.var/app/org.chromium.Chromium/.config/chromium/NativeMessagingHosts'
-
-
-help() {
- cat <<-EOF
- Usage:
- $PROGNAME [options] <browser>
-
- Install proxy between Native Messaging browser extension and KeePassXC
- to your browser.
-
- The default <destdir> locations correspond to Flatpak applications:
-
- firefox: ~/$DESTDIR_FIREFOX
- chromium: ~/$DESTDIR_CHROMIUM
-
- TIP: You will also need to expose KeePassXC's BrowserServer socket to
- the Flatpak application:
-
- flatpak override --filesystem=xdg-run/org.keepassxc.KeePassXC.BrowserServer:ro <app-id>
-
- Arguments:
- <browser> One of "firefox" (default), or "chromium".
-
- Options:
- -d <destdir> Override location of the native-messaging-hosts directory
- (defaults are listed above).
- -q Be quiet.
- -V Print keepassxc-proxy version and exit.
- -h Show this message and exit.
- EOF
-}
-
-die() {
- printf "$PROGNAME: %s\n" "$1"
- exit 1
-}
-
-gen_manifest() {
- cat <<-EOF
- {
- "name": "$NAME",
- "description": "KeePassXC integration with native messaging support, workaround for flatpaked Firefox, see https://is.gd/flatpakFirefoxKPXC",
- "path": "$DESTDIR/keepassxc-proxy",
- "type": "stdio",
- EOF
- case "$BROWSER" in
- firefox) cat <<-EOF
- "allowed_extensions": [
- "keepassxc-browser@keepassxc.org"
- ]
- EOF
- ;;
- *) cat <<-EOF
- "allowed_origins": [
- "chrome-extension://oboonakemofpalcgghocfoadofidjkkk/"
- ]
- EOF
- ;;
- esac
- echo '}'
-}
-
-BROWSER=firefox
-DESTDIR=
-QUIET=false
-while getopts ':d:qVh' OPT; do
- case "$OPT" in
- d) DESTDIR=$OPTARG;;
- q) QUIET=true;;
- V) echo "keepassxc-proxy-rust $VERSION"; exit 0;;
- h) help; exit 0;;
- \?) die "unknown option: -$OPTARG";;
- esac
-done
-shift $((OPTIND - 1))
-
-[ $# -eq 1 ] || die "invalid number of arguments, see '$PROGNAME -h'"
-BROWSER=$1
-
-[ "$DESTDIR" ] || case "$BROWSER" in
- firefox) DESTDIR="$HOME/$DESTDIR_FIREFOX";;
- chromium) DESTDIR="$HOME/$DESTDIR_CHROMIUM";;
- *) die "unsupported browser: $BROWSER";;
-esac
-
-$QUIET || echo "Installing keepassxc-proxy for $BROWSER to $DESTDIR" >&2
-
-install -D -m755 "$PROXY_BIN" "$DESTDIR"/keepassxc-proxy
-gen_manifest > "$DESTDIR/$NAME.json"
diff --git a/testing/keepassxc-proxy-static/keepassxc-proxy-static.post-install b/testing/keepassxc-proxy-static/keepassxc-proxy-static.post-install
deleted file mode 100644
index 2fbdc2baf77..00000000000
--- a/testing/keepassxc-proxy-static/keepassxc-proxy-static.post-install
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/bin/sh
-
-cat >&2 <<-EOF
-*
-* Use command keepassxc-proxy-install to install keepassxc-proxy to your browser.
-*
-EOF
diff --git a/testing/kerberoast/APKBUILD b/testing/kerberoast/APKBUILD
new file mode 100644
index 00000000000..eb7fb985719
--- /dev/null
+++ b/testing/kerberoast/APKBUILD
@@ -0,0 +1,37 @@
+# Contributor: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
+# Maintainer: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
+pkgname=kerberoast
+pkgver=0.2.0
+pkgrel=1
+pkgdesc="Kerberos security toolkit for Python"
+url="https://github.com/skelsec/kerberoast"
+arch="noarch"
+license="MIT"
+depends="
+ py3-minikerberos
+ py3-msldap
+ py3-winacl
+ "
+makedepends="
+ py3-gpep517
+ py3-wheel
+ py3-setuptools
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/skelsec/kerberoast/archive/refs/tags/$pkgver.tar.gz"
+options="!check" # no tests in version 0.2.0
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+1617b22fc4aa43fd5597cbb4a720f3771e6dd21c9b76d9164b01aacbf6c1011be6ef5ca6c2b46a54d5d15cb2eea2d9e108393ec3cbf8652a95e266489e58a63c kerberoast-0.2.0.tar.gz
+"
diff --git a/testing/kexec-tools/APKBUILD b/testing/kexec-tools/APKBUILD
deleted file mode 100644
index d28883f8602..00000000000
--- a/testing/kexec-tools/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Contributor: Duncan Guthrie <dguthrie@posteo.net>
-# Maintainer: Duncan Guthrie <dguthrie@posteo.net>
-pkgname=kexec-tools
-pkgver=2.0.21
-pkgrel=0
-pkgdesc="Directly boot into a new kernel over a currently running one"
-url="https://git.kernel.org/pub/scm/utils/kernel/kexec/kexec-tools.git/"
-arch="all !riscv64" # not supported on riscv64 yet
-license="GPL-2.0-only"
-makedepends="zlib-dev xz-dev linux-headers"
-subpackages="$pkgname-doc"
-source="https://www.kernel.org/pub/linux/utils/kernel/kexec/kexec-tools-$pkgver.tar.xz
- fix-build-on-Alpine-linux.patch
- "
-options="!check"
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var \
- --with-zlib \
- --with-lzma
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="f487d2e243c2c4f29fbc9da7d06806f65210f717904655fc84d8d162b9c4614c3dd62e1bb47104a79f0dc2af04e462baf764fb309b5d7e6d287264cb48fd2a3e kexec-tools-2.0.21.tar.xz
-228166102bfc48f81c04f3b13fbf29d6edf2e66918a967f243c8d2652f40c27af565f1db6b1a58783bd12d67184a70e6b00b1ab82e0f0d195dd51009260c3329 fix-build-on-Alpine-linux.patch"
diff --git a/testing/kexec-tools/fix-build-on-Alpine-linux.patch b/testing/kexec-tools/fix-build-on-Alpine-linux.patch
deleted file mode 100644
index ee96f057275..00000000000
--- a/testing/kexec-tools/fix-build-on-Alpine-linux.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From d390f1f873fa42fa5791ba48f9acf0f41da33632 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Milan=20P=2E=20Stani=C4=87?= <mps@arvanta.net>
-Date: Sat, 19 Oct 2019 17:10:16 +0000
-Subject: [PATCH] kexec/arch/i386/kexec-x86.c: fix build on Alpine linux x86
- arch
-
----
- kexec/arch/i386/kexec-x86.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/kexec/arch/i386/kexec-x86.c b/kexec/arch/i386/kexec-x86.c
-index 444cb69..6001e76 100644
---- a/kexec/arch/i386/kexec-x86.c
-+++ b/kexec/arch/i386/kexec-x86.c
-@@ -36,8 +36,8 @@
- struct file_type file_type[] = {
- { "multiboot-x86", multiboot_x86_probe, multiboot_x86_load,
- multiboot_x86_usage },
-- { "multiboot2-x86", multiboot2_x86_probe, multiboot2_x86_load,
-- multiboot2_x86_usage },
-+ { "multiboot2-x86", multiboot_x86_probe, multiboot_x86_load,
-+ multiboot_x86_usage },
- { "elf-x86", elf_x86_probe, elf_x86_load, elf_x86_usage },
- { "bzImage", bzImage_probe, bzImage_load, bzImage_usage },
- { "beoboot-x86", beoboot_probe, beoboot_load, beoboot_usage },
---
-2.23.0
-
diff --git a/testing/keybase-client/APKBUILD b/testing/keybase-client/APKBUILD
index 91c5cf41297..a8f7c7e9ee2 100644
--- a/testing/keybase-client/APKBUILD
+++ b/testing/keybase-client/APKBUILD
@@ -2,8 +2,8 @@
# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=keybase-client
-pkgver=5.2.1
-pkgrel=6
+pkgver=6.2.8
+pkgrel=2
pkgdesc="CLI client for keybase.io"
url="https://github.com/keybase/client"
arch="all"
@@ -13,11 +13,13 @@ options="!check" # need access to localhost:3000, which doesn't work with our in
source="$pkgname-$pkgver.tar.gz::https://github.com/keybase/client/archive/v$pkgver.tar.gz"
builddir="$srcdir/client-$pkgver"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
build() {
cd "$srcdir"
export GOPATH="$PWD"
- export GO15VENDOREXPERIMENT=1
- export GO111MODULE=off
mkdir -p src/github.com/keybase
cp -r "$srcdir/client-$pkgver" src/github.com/keybase/client
@@ -29,4 +31,6 @@ package() {
install -Dm755 "$srcdir/keybase" "$pkgdir/usr/bin/keybase"
}
-sha512sums="5ef045e714209d732c8b421f9a27cd32026dfd83af321bdc2be191ad8d5d458a947cd44b9b644e44c98fdcaefe9a17f0dd5546edd7bf97c3fb3cd97dd08cbc54 keybase-client-5.2.1.tar.gz"
+sha512sums="
+61e590a4de3a240f814d33e90b92a2db3662a871e354c5a48fa72d2ee597701b5fcac4f9f8cb520d99f66e139939b05b37477332dbb03e8816a19755e922caeb keybase-client-6.2.8.tar.gz
+"
diff --git a/testing/keynav/APKBUILD b/testing/keynav/APKBUILD
deleted file mode 100644
index ab6b605bffc..00000000000
--- a/testing/keynav/APKBUILD
+++ /dev/null
@@ -1,30 +0,0 @@
-# Maintainer: Miles Alan <m@milesalan.com>
-pkgname=keynav
-pkgver=0_git20180820
-_gitrev="78f9e076a5618aba43b030fbb9344c415c30c1e5"
-pkgrel=0
-pkgdesc="Quick way to use cursor via the keyboard"
-url="https://www.semicomplete.com/projects/keynav/"
-arch="all"
-license="BSD-3-Clause"
-depends="xorg-server"
-makedepends="cairo-dev libxinerama-dev xdotool-dev glib-dev libxrandr-dev perl"
-checkdepends="xvfb"
-subpackages="$pkgname-doc"
-source="https://github.com/jordansissel/keynav/archive/$_gitrev/keynav-$_gitrev.tar.gz"
-builddir="$srcdir/keynav-$_gitrev"
-
-build() {
- make
-}
-
-check() {
- ./test.sh
-}
-
-package() {
- install -Dm0755 keynav $pkgdir/usr/bin/keynav
- make keynav.1
- install -Dm644 ./*.1 -t $pkgdir/usr/share/man/man1/
-}
-sha512sums="5e0e3c4cf3b89a2ffecfc662d379864f18cfa0f9117564cc1f551757dc46e5a4684c3fea0891ae39da872ece9ef44b8b81fa51f0843457d4895db8517d7bd094 keynav-78f9e076a5618aba43b030fbb9344c415c30c1e5.tar.gz"
diff --git a/testing/keystone/APKBUILD b/testing/keystone/APKBUILD
index a41e195b8e7..fd79ad90237 100644
--- a/testing/keystone/APKBUILD
+++ b/testing/keystone/APKBUILD
@@ -2,13 +2,13 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=keystone
pkgver=0.9.2
-pkgrel=3
+pkgrel=6
pkgdesc="Keystone assembler framework: Core (Arm, Arm64, Hexagon, Mips, PowerPC, Sparc, SystemZ & X86) + bindings"
url="https://www.keystone-engine.org/"
arch="all !riscv64" # weird cmake + autoconf hybrid system is weird and hates riscv
license="custom"
makedepends="cmake python3-dev py3-setuptools"
-subpackages="$pkgname-dev $pkgname-python"
+subpackages="$pkgname-dev $pkgname-python-pyc $pkgname-python"
source="$pkgname-$pkgver.tar.gz::https://github.com/keystone-engine/keystone/archive/$pkgver.tar.gz"
prepare() {
@@ -35,7 +35,7 @@ package() {
make -C build-shared DESTDIR="$pkgdir" install
cd "$builddir"/bindings/python
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
python() {
diff --git a/testing/kfc/APKBUILD b/testing/kfc/APKBUILD
new file mode 100644
index 00000000000..cb65a3d731b
--- /dev/null
+++ b/testing/kfc/APKBUILD
@@ -0,0 +1,26 @@
+# Contributor: Sergiy Stupar <owner@sestolab.pp.ua>
+# Maintainer: Sergiy Stupar <owner@sestolab.pp.ua>
+pkgname=kfc
+pkgver=0.1.4
+pkgrel=0
+pkgdesc="Terminal-emulator color palette setter written in POSIX C99"
+url="https://github.com/mcpcpc/kfc"
+arch="all"
+license="MIT"
+source="$pkgname-$pkgver.tar.gz::https://github.com/mcpcpc/kfc/archive/$pkgver.tar.gz
+ $pkgname-no-x11.patch::https://github.com/mcpcpc/kfc/commit/5c8017255c976ca47bd027dda76df3e07010f667.diff
+ "
+options="!check" # No tests
+
+build() {
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+c9f282732149c88c186154ba8f2b3e30d1c3adaf7f15ddc78b97488598d4dd8863dedec595e1799d0ff8c612e206a3e432fa32dda4228f388494fcc1202d22fd kfc-0.1.4.tar.gz
+080c27b7a64470a480290484c38feba91b9a1add1f559b43df0a2795ac486b5a3f1e55de3c218f85b545d61d93d0f81008207ce881413778a27052770b8a654e kfc-no-x11.patch
+"
diff --git a/testing/kgeotag/APKBUILD b/testing/kgeotag/APKBUILD
deleted file mode 100644
index 80fdd47ca7f..00000000000
--- a/testing/kgeotag/APKBUILD
+++ /dev/null
@@ -1,47 +0,0 @@
-# Contributor: Bart Ribbers <bribbers@disroot.org>
-# Maintainer: Bart Ribbers <bribbers@disroot.org>
-pkgname=kgeotag
-pkgver=1.2.0
-pkgrel=0
-# armhf blocked by extra-cmake-modules
-# ppc64le blocked by qt5-qtwebengine -> marble
-# s390x, riscv64 blocked by polkit -> kxmlgui
-arch="all !armhf !ppc64le !s390x !riscv64"
-url="https://apps.kde.org/kgeotag/"
-pkgdesc="Photo geotagging program"
-license="GPL-3.0-or-later"
-makedepends="
- extra-cmake-modules
- kconfigwidgets-dev
- kcoreaddons-dev
- kcrash-dev
- ki18n-dev
- kxmlgui-dev
- libkexiv2-dev
- marble-dev
- qt5-qtbase-dev
- "
-checkdepends="xvfb-run"
-source="https://download.kde.org/stable/kgeotag/$pkgver/kgeotag-$pkgver.tar.xz"
-subpackages="$pkgname-lang"
-
-build() {
- cmake -B build \
- -DCMAKE_BUILD_TYPE=None \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib
- cmake --build build
-}
-
-check() {
- cd build
- CTEST_OUTPUT_ON_FAILURE=TRUE xvfb-run ctest
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-
-sha512sums="
-818a89babe613602b9843109c10632b09dfe0bba5e28d5332eb17c1c3841a30049dbe298a4b3c8123d72751dfa29eb5994d9d4e683a85f9b121161005c4fee65 kgeotag-1.2.0.tar.xz
-"
diff --git a/testing/khal/APKBUILD b/testing/khal/APKBUILD
deleted file mode 100644
index 9161ab00bd4..00000000000
--- a/testing/khal/APKBUILD
+++ /dev/null
@@ -1,60 +0,0 @@
-# Contributor: Galen Abell <galen@galenabell.com>
-# Maintainer: Galen Abell <galen@galenabell.com>
-pkgname=khal
-_pyname=$pkgname
-pkgver=0.10.4
-pkgrel=1
-pkgdesc="CLI calendar application build around CalDAV"
-url="https://lostpackets.de/khal"
-arch="noarch"
-license="MIT"
-options="net"
-depends="
- python3
- py3-atomicwrites
- py3-click
- py3-click-log
- py3-configobj
- py3-dateutil
- py3-icalendar
- py3-tz
- py3-tzlocal
- py3-urwid
- py3-xdg
- "
-makedepends="py3-setuptools py3-setuptools_scm py3-sphinx py3-sphinxcontrib-newsfeed"
-checkdepends="py3-pytest py3-freezegun vdirsyncer"
-subpackages="$pkgname-doc"
-source="https://files.pythonhosted.org/packages/source/${_pyname%${_pyname#?}}/$_pyname/$_pyname-$pkgver.tar.gz"
-
-build() {
- python3 setup.py build
- make -C doc man PYTHONPATH="$PWD"
-}
-
-check() {
- # skip locale tests
- # many tests are flaky: https://github.com/pimutils/khal/issues/860
- # test_import_from_stdin doesn't work in docker: https://github.com/pimutils/khal/issues/683
- local skip_tests="
- not test_vertical_month_unicode \
- and not test_vertical_month_unicode_weekdeays \
- and not test_vertical_month_unicode_weekdeays_gr \
- and not test_vertical_month_abbr_fr \
- and not test_multi_uid_vdir \
- and not test_event_different_timezones \
- and not test_birthdays \
- and not test_birthdays_no_year \
- and not test_birthdays_29feb \
- and not test_import_from_stdin"
- pytest -v -k "$skip_tests"
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
- install -Dm644 doc/build/man/$pkgname.1 "$pkgdir"/usr/share/man/man1/$pkgname.1
-}
-
-sha512sums="
-b32f1bfe5d3a3976278726a6570eb345a5ad44f63a52b75f045fd0509d145edd5b76e11a10acffd9c3982edc124f93daec34a37c39299c2311796c0314016eb6 khal-0.10.4.tar.gz
-"
diff --git a/testing/khard/APKBUILD b/testing/khard/APKBUILD
deleted file mode 100644
index d44317d481f..00000000000
--- a/testing/khard/APKBUILD
+++ /dev/null
@@ -1,46 +0,0 @@
-# Contributor: Galen Abell <galen@galenabell.com>
-# Maintainer: Galen Abell <galen@galenabell.com>
-pkgname=khard
-pkgver=0.17.0
-pkgrel=2
-pkgdesc="Console CardDAV client"
-url="https://github.com/scheibler/khard"
-arch="noarch !x86" # deps not available on x86
-license="GPL-3.0-only"
-depends="
- python3
- py3-atomicwrites
- py3-configobj
- py3-ruamel.yaml
- py3-unidecode
- py3-vobject
- "
-makedepends="
- py3-setuptools
- py3-setuptools_scm
- py3-sphinx
- py3-sphinx-autoapi
- py3-sphinx-autodoc-typehints
- "
-checkdepends="py3-pytest"
-subpackages="$pkgname-doc"
-source="https://files.pythonhosted.org/packages/source/k/khard/khard-$pkgver.tar.gz"
-
-build() {
- python3 setup.py build
- make -C doc man
-}
-
-check() {
- pytest -v -s
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
- install -Dm644 doc/build/man/$pkgname.1 "$pkgdir"/usr/share/man/man1/$pkgname.1
- install -Dm644 doc/build/man/$pkgname.conf.5 "$pkgdir"/usr/share/man/man5/$pkgname.conf.5
-}
-
-sha512sums="
-9cb936aeaa327b9837488a752906bf603429ca0c7240703829220119049f5f62e84f7e4c90bb81799307fe446c3aa47fe6ee4112c276b6bb329c959be438ba25 khard-0.17.0.tar.gz
-"
diff --git a/testing/khinsider/APKBUILD b/testing/khinsider/APKBUILD
new file mode 100644
index 00000000000..02a8086e681
--- /dev/null
+++ b/testing/khinsider/APKBUILD
@@ -0,0 +1,34 @@
+# Contributor: Edd Salkield <edd@salkield.uk>
+# Maintainer: Edd Salkield <edd@salkield.uk>
+pkgname=khinsider
+pkgver=2.0.7
+pkgrel=12
+pkgdesc="A khinsider downloader written in Go"
+url="https://github.com/marcus-crane/khinsider"
+arch="all"
+license="MIT"
+makedepends="go"
+source="https://github.com/marcus-crane/khinsider/archive/v$pkgver/khinsider-v$pkgver.tar.gz"
+options="!check net" # No upstream tests
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+export GOFLAGS="$GOFLAGS -modcacherw"
+
+prepare() {
+ default_prepare
+ go mod download
+}
+
+build() {
+ go build
+}
+
+package() {
+ install -Dm755 "$builddir"/khinsider "$pkgdir"/usr/bin/khinsider
+}
+
+sha512sums="
+f91b2c3f27fd1704b1fbeef31f202a50438ef37915b912cb6b391ea0553aa15e361f258cf99691cd434b3b30fd7b296b8fec584f436ccdf384267a001afbc3f5 khinsider-v2.0.7.tar.gz
+"
diff --git a/testing/khronos/APKBUILD b/testing/khronos/APKBUILD
new file mode 100644
index 00000000000..65b2619c2ce
--- /dev/null
+++ b/testing/khronos/APKBUILD
@@ -0,0 +1,38 @@
+# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=khronos
+pkgver=4.0.1
+pkgrel=0
+pkgdesc="Track each task's time in a simple inobtrusive way"
+url="https://github.com/lainsce/khronos/"
+arch="all"
+license="GPL-3.0-or-later"
+makedepends="
+ desktop-file-utils
+ gtk4.0-dev
+ json-glib-dev
+ libadwaita-dev
+ libgee-dev
+ meson
+ vala
+ "
+subpackages="$pkgname-lang"
+source="https://github.com/lainsce/khronos/archive/refs/tags/$pkgver/khronos-$pkgver.tar.gz"
+
+build() {
+ abuild-meson \
+ . output
+ meson compile -C output
+}
+
+check() {
+ meson test --no-rebuild --print-errorlogs -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+sha512sums="
+e69c5fda0ea645cd69d65bc55d3b2bfd9b3da1e4099f41fd94fdcbf11e55a30a15a6ccb46d1b678112858d4f8aae36e78f289c146b344c903eb96d689760d253 khronos-4.0.1.tar.gz
+"
diff --git a/testing/kicad-library/APKBUILD b/testing/kicad-library/APKBUILD
deleted file mode 100644
index 0231ed67f83..00000000000
--- a/testing/kicad-library/APKBUILD
+++ /dev/null
@@ -1,58 +0,0 @@
-# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
-# Contributor: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
-pkgname=kicad-library
-pkgver=6.0.1
-pkgrel=0
-pkgdesc="Kicad component and footprint libraries"
-url="https://kicad.github.io/"
-# limited by kicad
-arch="noarch !riscv64 !s390x"
-license="GPL-3.0-or-later"
-makedepends="cmake"
-depends="kicad"
-subpackages="$pkgname-3d:three_d"
-source="
- https://gitlab.com/kicad/libraries/kicad-symbols/-/archive/$pkgver/kicad-symbols-$pkgver.tar.bz2
- https://gitlab.com/kicad/libraries/kicad-footprints/-/archive/$pkgver/kicad-footprints-$pkgver.tar.bz2
- https://gitlab.com/kicad/libraries/kicad-packages3D/-/archive/$pkgver/kicad-packages3D-$pkgver.tar.bz2
- "
-options="!check" # package only provides data files, so not tests possible
-
-build() {
- cd "$srcdir"/kicad-symbols-$pkgver
- cmake . \
- -DCMAKE_INSTALL_PREFIX=/usr
- make
-
- cd "$srcdir"/kicad-footprints-$pkgver
- cmake . \
- -DCMAKE_INSTALL_PREFIX=/usr
- make
-
- cd "$srcdir"/kicad-packages3D-$pkgver
- cmake . \
- -DCMAKE_INSTALL_PREFIX=/usr
- make
-}
-
-package() {
- cd "$srcdir"/kicad-symbols-$pkgver
- make DESTDIR="$pkgdir" install
-
- cd "$srcdir"/kicad-footprints-$pkgver
- make DESTDIR="$pkgdir" install
-}
-
-three_d() {
- cd "$srcdir"/kicad-packages3D-$pkgver
- make DESTDIR="$subpkgdir" install
-
- # Remove .step version of 3D models; only .wrl versions are needed
- find "$subpkgdir" -name '*.step' -exec rm {} \;
-}
-
-sha512sums="
-7521e405da71cbd2e79909aef251b6989493c8ce2f813eeda2f2603caf38dcf4770ffdb89ee56e0278f3551a4ba83a564fe643249636735896f98c58279505c3 kicad-symbols-6.0.1.tar.bz2
-f1f889f9d3e660c53d19bf19cf2cfff648fbddf1131e4388f08069728d19931623b411fddc7ca3908a3634e7e0aa2bbaf4cb2df0b5580cd11a7443a81c3a80d1 kicad-footprints-6.0.1.tar.bz2
-aed9c2d25e4da28081b150324a031d2ceb865ddb83b6020de8490a2e30da4b52ddbb08a922d00b672a4afb7f3e1b87d766cce26ce3ba16b586fdd3fd04af44dc kicad-packages3D-6.0.1.tar.bz2
-"
diff --git a/testing/kicad/APKBUILD b/testing/kicad/APKBUILD
deleted file mode 100644
index 69ad73288c3..00000000000
--- a/testing/kicad/APKBUILD
+++ /dev/null
@@ -1,110 +0,0 @@
-# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
-# Contributor: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
-pkgname=kicad
-pkgver=6.0.4
-pkgrel=1
-pkgdesc="A Cross Platform and Open Source Electronics Design Automation Suite"
-url="https://kicad-pcb.org/"
-# No support for s390x/riscv64 in libcontext (shipped with kicad)
-arch="all !riscv64 !s390x"
-license="GPL-3.0-or-later"
-makedepends="
- boost-dev
- cairo-dev
- chrpath
- cmake
- curl-dev
- glew-dev
- glm-dev
- ngspice-dev
- py3-wxpython
- python3-dev
- swig
- wxgtk-base-dev
- wxgtk3-dev
- zlib-dev
- "
-depends="python3"
-subpackages="$pkgname-doc"
-source="
- https://gitlab.com/kicad/code/kicad/-/archive/$pkgver/kicad-$pkgver.tar.gz
- "
-
-case "$CARCH" in
- x86_64)
- makedepends="$makedepends opencascade-dev vtk-dev"
- subpackages="$subpackages kicad-opencascade"
- ;;
- *)
- # Dependency opencascade (needed for STEP file support in 3D preview)
- # not available on all other architectures
- ;;
-esac
-
-_build_kicad() {
- mkdir -p "$1"
- cd "$1"
- cmake .. \
- -DCMAKE_BUILD_TYPE=None \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DKICAD_USE_OCE=OFF \
- -DKICAD_USE_OCC=$2 \
- -DKICAD_SCRIPTING=ON \
- -DKICAD_SCRIPTING_PYTHON3=ON \
- -DKICAD_SCRIPTING_MODULES=ON \
- -DKICAD_SCRIPTING_WXPYTHON=ON \
- -DKICAD_SCRIPTING_ACTION_MENU=ON \
- -DKICAD_SCRIPTING_WXPYTHON_PHOENIX=ON \
- -DwxWidgets_CONFIG_EXECUTABLE=/usr/bin/wx-config-gtk3 \
- -DwxWidgets_INCLUDE_DIRS=/usr/include \
- -DBUILD_GITHUB_PLUGIN=ON
- make
- cd "$builddir"
-}
-
-build() {
- # First build without opencascade
- _build_kicad "build" "OFF"
-
- # Now build with opencascade, if possible
- case "$CARCH" in
- x86_64)
- _build_kicad "build-occ" "ON"
- ;;
- *)
- # Dependency opencascade (needed for STEP file support in 3D preview)
- # not available on all other architectures
- ;;
- esac
-}
-
-check() {
- cd build
- make test
-}
-
-package() {
- cd build
- make DESTDIR="$pkgdir" install
-
- local sitedir=$(python3 -c "import site; print(site.getsitepackages()[0])")
- chrpath -d "$pkgdir/$sitedir"/_pcbnew.so
-}
-
-opencascade() {
- pkgdesc="kicad with support for STEP file in 3D preview"
- replaces="$pkgname"
- provides="$pkgname=$pkgver-r$pkgrel"
- cd "$builddir/build-occ"
- make DESTDIR="$subpkgdir" install
- # Remove documentation. $pkgname-doc is build from the root package.
- rm -rf "$subpkgdir"/usr/shared/doc
-
- local sitedir=$(python3 -c "import site; print(site.getsitepackages()[0])")
- chrpath -d "$subpkgdir/$sitedir"/_pcbnew.so
-}
-
-sha512sums="
-3134aee924bf0aab6f12a7e9663d081ec038a2ccb2e6854be8ad8b1f71b36a9f286938101adb4ca0fa56487eecffd42691bb8737113bcaffcc56a2f68f6a9908 kicad-6.0.4.tar.gz
-"
diff --git a/testing/kimchi/APKBUILD b/testing/kimchi/APKBUILD
index 991300aceed..9dd0eb48c06 100644
--- a/testing/kimchi/APKBUILD
+++ b/testing/kimchi/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=kimchi
pkgver=3.0.0
-pkgrel=3
+pkgrel=7
pkgdesc="An HTML5 management interface for KVM"
url="https://github.com/kimchi-project/kimchi"
arch="noarch !s390x !riscv64" # blocked by wok and others
@@ -26,7 +26,6 @@ depends="
py3-pillow
py3-psutil
py3-simplejson
- py3-six
py3-yaml
python3
qemu
@@ -51,14 +50,13 @@ makedepends="
py3-pytest
py3-setuptools
python3-dev
- spice-html5
"
checkdepends="py3-requests"
options="!check" # depends on jaraco
-subpackages="$pkgname-lang"
+subpackages="$pkgname-lang $pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/kimchi-project/kimchi/archive/$pkgver.tar.gz"
-build() {
+build() {
sh ./autogen.sh --system
./configure \
--prefix=/usr \
diff --git a/testing/kind/APKBUILD b/testing/kind/APKBUILD
new file mode 100644
index 00000000000..3031ac85728
--- /dev/null
+++ b/testing/kind/APKBUILD
@@ -0,0 +1,47 @@
+# Contributor: Michał Polański <michal@polanski.me>
+# Maintainer: Michał Polański <michal@polanski.me>
+pkgname=kind
+pkgver=0.22.0
+pkgrel=2
+pkgdesc="Kubernetes IN Docker - local clusters for testing Kubernetes"
+url="https://kind.sigs.k8s.io/"
+license="Apache-2.0"
+arch="all"
+makedepends="go"
+subpackages="
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
+ "
+source="https://github.com/kubernetes-sigs/kind/archive/v$pkgver/kind-$pkgver.tar.gz
+ skip-version-test.patch
+ "
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ go build
+
+ ./kind completion bash > $pkgname.bash
+ ./kind completion fish > $pkgname.fish
+ ./kind completion zsh > $pkgname.zsh
+}
+
+check() {
+ go test -tags=nointegration ./...
+}
+
+package() {
+ install -Dm755 $pkgname -t "$pkgdir"/usr/bin/
+
+ install -Dm644 $pkgname.bash "$pkgdir"/usr/share/bash-completion/completions/$pkgname
+ install -Dm644 $pkgname.fish "$pkgdir"/usr/share/fish/vendor_completions.d/$pkgname.fish
+ install -Dm644 $pkgname.zsh "$pkgdir"/usr/share/zsh/site-functions/_$pkgname
+}
+
+sha512sums="
+f9e6570cb7696a85a4b03ef1a474a3c41c1f7b2350bd182dbabddf00685d91351853452871a7729220e8643be7c1975de9b49d7178a739349babf05993f36c1e kind-0.22.0.tar.gz
+6993628a0a5c938b0e59b92e04b32bd7d454dc4ee7e5c445c4122dacdb786d0372836c59749c767f5921b9ac96b4452c5d696c2c7d701ea8e10ac256d6d7d67c skip-version-test.patch
+"
diff --git a/testing/kind/skip-version-test.patch b/testing/kind/skip-version-test.patch
new file mode 100644
index 00000000000..8ce38a4a7fc
--- /dev/null
+++ b/testing/kind/skip-version-test.patch
@@ -0,0 +1,11 @@
+--- a/pkg/cmd/kind/version/version_test.go
++++ b/pkg/cmd/kind/version/version_test.go
+@@ -62,6 +62,8 @@ func TestTruncate(t *testing.T) {
+ }
+
+ func TestVersion(t *testing.T) {
++ t.Skip("only works on prerelease versions")
++
+ tests := []struct {
+ name string
+ gitCommit string
diff --git a/testing/kine/APKBUILD b/testing/kine/APKBUILD
index a10c1023e26..27177592516 100644
--- a/testing/kine/APKBUILD
+++ b/testing/kine/APKBUILD
@@ -1,19 +1,25 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=kine
-pkgver=0.5.1
-pkgrel=5
+pkgver=0.10.1
+pkgrel=4
pkgdesc="etcd API with sqlite, Postgres, Mysql, or dqlite backed"
-url="https://github.com/rancher/kine"
+url="https://github.com/k3s-io/kine"
arch="all"
license="Apache-2.0"
makedepends="sqlite-dev go"
subpackages="$pkgname-doc"
options="!check" # no testsuite
-source="$pkgname-$pkgver.tar.gz::https://github.com/rancher/kine/archive/v$pkgver.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/k3s-io/kine/archive/v$pkgver.tar.gz"
provides="etcd-api"
+provider_priority=1
+
+export GOFLAGS="$GOFLAGS -tags=libsqlite3"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
build() {
- go build -v -ldflags="-w -s" .
+ go build -v .
}
package() {
@@ -21,4 +27,6 @@ package() {
install -D -m644 LICENSE "$pkgdir"/usr/share/licenses/kine/LICENSE
}
-sha512sums="0eb5bbfd473fc0a656f0592e655fffd23b83277c3d1f3e6e338f2362b1e168dbf497c503f013a4b56cf2bd1fe5b95f74024ee53bc452765799cc903c12a2df59 kine-0.5.1.tar.gz"
+sha512sums="
+01b94a0ede751d03ef91c8a33be65fc95212147cec5df7eecbb6b6b35af0d1f002abed6c22caedeea38c13f5422b8385d5d7d8ff1d5ade9046964e0a30eec5f7 kine-0.10.1.tar.gz
+"
diff --git a/testing/kirc/APKBUILD b/testing/kirc/APKBUILD
new file mode 100644
index 00000000000..06bbbd985da
--- /dev/null
+++ b/testing/kirc/APKBUILD
@@ -0,0 +1,29 @@
+# Contributor: Sergiy Stupar <owner@sestolab.pp.ua>
+# Maintainer: Sergiy Stupar <owner@sestolab.pp.ua>
+pkgname=kirc
+pkgver=0.3.2
+pkgrel=0
+pkgdesc="Tiny IRC client written in POSIX C99"
+url="https://github.com/mcpcpc/kirc"
+arch="all"
+license="MIT"
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/mcpcpc/kirc/archive/$pkgver.tar.gz"
+options="!check" # No tests
+
+prepare() {
+ default_prepare
+ sed -i 's/^\(install:\) all$/\1/' Makefile
+}
+
+build() {
+ make PREFIX=/usr CFLAGS="$CFLAGS -std=c99"
+}
+
+package() {
+ make PREFIX=/usr DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+12fe29a93d8f95ba60b8e77ab984fcbfee5102c2ddd5633690f24f67be376a36c0f6e0516dd311a2e8d351b249054c68150fb4ffb023822418416ac9fe8c15ff kirc-0.3.2.tar.gz
+"
diff --git a/testing/kismet/APKBUILD b/testing/kismet/APKBUILD
index fc81de38f74..fd8a5f4a96a 100644
--- a/testing/kismet/APKBUILD
+++ b/testing/kismet/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: George Hopkins <george-hopkins@null.net>
# Maintainer: George Hopkins <george-hopkins@null.net>
pkgname=kismet
-_pkgver=2020-12-R3
+_pkgver=2023-07-R1
pkgver=${_pkgver/-R/.}
pkgver=0.${pkgver/-/}
pkgrel=2
@@ -9,8 +9,18 @@ pkgdesc="Wireless network and device detector"
url="https://www.kismetwireless.net/"
arch="all"
license="GPL-2.0-only"
-makedepends="linux-headers libnl3-dev libpcap-dev protobuf-dev protobuf-c-dev
- sqlite-dev zlib-dev"
+makedepends="
+ abseil-cpp-dev
+ libnl3-dev
+ libpcap-dev
+ linux-headers
+ openssl-dev
+ pcre2-dev
+ protobuf-c-dev
+ protobuf-dev
+ sqlite-dev
+ zlib-dev
+ "
subpackages="$pkgname-logtools
$pkgname-linux-bluetooth:linux_bluetooth
$pkgname-linux-wifi:linux_wifi
@@ -18,13 +28,9 @@ subpackages="$pkgname-logtools
$pkgname-nxp-kw41z:nxp_kw41z
"
options="!check" # no test-suite available
-source="$pkgname-$pkgver.tar.xz::https://www.kismetwireless.net/code/kismet-$_pkgver.tar.xz
- sqlite3-longlong.patch
- "
+source="$pkgname-$pkgver.tar.xz::https://www.kismetwireless.net/code/kismet-$_pkgver.tar.xz"
builddir="$srcdir/kismet-$_pkgver"
-[ "$CARCH" = "riscv64" ] && options="$options textrels"
-
prepare() {
default_prepare
update_config_sub
@@ -39,8 +45,9 @@ build() {
--sysconfdir=/etc/kismet \
--disable-libusb \
--disable-libwebsockets \
- --disable-python-tools
- make
+ --disable-python-tools \
+ --disable-wifi-coconut
+ make -j $((JOBS < 16 ? JOBS : 16))
}
package() {
@@ -51,41 +58,37 @@ package() {
logtools() {
pkgdesc="$pkgdesc - log tools"
- mkdir -p "$subpkgdir"/usr/bin
- mv "$pkgdir"/usr/bin/kismetdb_* "$subpkgdir"/usr/bin
+ amove usr/bin/kismetdb_*
}
linux_bluetooth() {
pkgdesc="$pkgdesc - Bluetooth capture support"
- depends="$pkgname"
+ depends="$pkgname=$pkgver-r$pkgrel"
- mkdir -p "$subpkgdir"/usr/bin
- mv "$pkgdir"/usr/bin/kismet_cap_linux_bluetooth "$subpkgdir"/usr/bin
+ amove usr/bin/kismet_cap_linux_bluetooth
}
linux_wifi() {
pkgdesc="$pkgdesc - Wi-Fi capture support"
- depends="$pkgname"
+ depends="$pkgname=$pkgver-r$pkgrel"
- mkdir -p "$subpkgdir"/usr/bin
- mv "$pkgdir"/usr/bin/kismet_cap_linux_wifi "$subpkgdir"/usr/bin
+ amove usr/bin/kismet_cap_linux_wifi
}
nrf_51822() {
pkgdesc="$pkgdesc - nRF51822 capture support"
- depends="$pkgname"
+ depends="$pkgname=$pkgver-r$pkgrel"
- mkdir -p "$subpkgdir"/usr/bin
- mv "$pkgdir"/usr/bin/kismet_cap_nrf_51822 "$subpkgdir"/usr/bin
+ amove usr/bin/kismet_cap_nrf_51822
}
nxp_kw41z() {
pkgdesc="$pkgdesc - NXP KW41Z capture support"
- depends="$pkgname"
+ depends="$pkgname=$pkgver-r$pkgrel"
- mkdir -p "$subpkgdir"/usr/bin
- mv "$pkgdir"/usr/bin/kismet_cap_nxp_kw41z "$subpkgdir"/usr/bin
+ amove usr/bin/kismet_cap_nxp_kw41z
}
-sha512sums="6c4c95a9963977d5a383e34f662f814a803d0d36d7dbc35d3d0a42d3e67c20e8d46357df0ee544b8dd3c7f527bd43ef9c0d913577d4979f261764fc9761cd6d1 kismet-0.202012.3.tar.xz
-1f49cf45963f32b1eaec9b15e5cab53f46999362f87daf9b39f8f244fa3dd1ac602f0a22eb04682a3a22abcaf2b09fc59060ff12626844e77125b6a28e4350bd sqlite3-longlong.patch"
+sha512sums="
+b8b320b8e09be5be582848ce8a1a66f71a96eccc3c78f52d3f1f18122abbe614ff3b5a55b5fcedf3e6a1fc959a72838adc0d7278ffd6c25a1c179a1caf5584ce kismet-0.202307.1.tar.xz
+"
diff --git a/testing/kismet/sqlite3-longlong.patch b/testing/kismet/sqlite3-longlong.patch
deleted file mode 100644
index 9fa7d83fd6c..00000000000
--- a/testing/kismet/sqlite3-longlong.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-On some systems time_t is defined as long long. In this case, the
-current release does not contain the appropriate getter to read
-values of this type from the database.
-
-https://github.com/kismetwireless/kismet/pull/334
-
-diff -ru a/sqlite3_cpp11.cc b/sqlite3_cpp11.cc
---- a/sqlite3_cpp11.cc 2020-12-06 21:24:46.000000000 +0100
-+++ b/sqlite3_cpp11.cc 2021-01-04 11:21:17.239367923 +0100
-@@ -412,6 +412,11 @@
- }
-
- template<>
-+ long long sqlite3_column_as(std::shared_ptr<sqlite3_stmt> stmt, unsigned int column) {
-+ return (long long) sqlite3_column_int64(stmt.get(), column);
-+ }
-+
-+ template<>
- unsigned long long sqlite3_column_as(std::shared_ptr<sqlite3_stmt> stmt, unsigned int column) {
- return (unsigned long long) sqlite3_column_int64(stmt.get(), column);
- }
diff --git a/testing/kjv/APKBUILD b/testing/kjv/APKBUILD
new file mode 100644
index 00000000000..a6114ecc917
--- /dev/null
+++ b/testing/kjv/APKBUILD
@@ -0,0 +1,30 @@
+# Contributor: Adam Thiede <me@adamthiede.com>
+# Maintainer: Adam Thiede <me@adamthiede.com>
+pkgname=kjv
+_pkgbase=0
+_pkgsnap=20221103
+_commit=1b675c0396806a2a3d134c51fd11d9fed8ea3dc5
+pkgver=${_pkgbase}_git$_pkgsnap
+pkgrel=0
+pkgdesc="Read the Word of God from your terminal"
+url="https://github.com/LukeSmithxyz/kjv"
+arch="noarch"
+license="Unlicense"
+depends="less sed gawk"
+makedepends="make tar"
+checkdepends="shellcheck"
+options="!check"
+source="$pkgname-$pkgver.tar.gz::https://github.com/LukeSmithxyz/kjv/archive/$_commit.tar.gz"
+builddir="$srcdir/$pkgname-$_commit/"
+
+check() {
+ make test
+}
+
+package() {
+ make install PREFIX="$pkgdir"/usr
+}
+
+sha512sums="
+b4003456e404adcea109f68bea1e564ad3ba89a11c9fae0d0c458a9e88d1873e2c80af2221e8af5a8e0b546cb286a5732293426b1ed9e525e933c26428fd4158 kjv-0_git20221103.tar.gz
+"
diff --git a/testing/klfc/APKBUILD b/testing/klfc/APKBUILD
index a845b9ef43e..2c6bd11ff1c 100644
--- a/testing/klfc/APKBUILD
+++ b/testing/klfc/APKBUILD
@@ -1,15 +1,17 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer:
pkgname=klfc
-pkgver=1.5.6
-pkgrel=1
+pkgver=1.5.7
+pkgrel=0
pkgdesc="Keyboard Layout Files Creator"
url="https://github.com/39aldo39/klfc"
-arch="" # failed to build, limited by ghc / cabal
+arch="x86_64 aarch64" # limited by ghc / cabal
license="GPL-3.0"
makedepends="cabal ghc"
subpackages="$pkgname-doc"
source="https://github.com/39aldo39/klfc/archive/v$pkgver/klfc-$pkgver.tar.gz
+ ghc9-001.patch
+ ghc9-002.patch
cabal.config
"
options="!check" # it seems that no tests are provided
@@ -18,20 +20,19 @@ options="!check" # it seems that no tests are provided
export CABAL_DIR="$srcdir/.cabal"
cabal_update() {
- abuild unpack
-
msg "Freezing $pkgname dependencies"
# Resolve deps and generate fresh cabal.config with version constraints.
cabal update
+ (
+ cd "$builddir"
+ cabal v1-freeze --shadow-installed-packages
- cd "$builddir"
- cabal freeze --shadow-installed-packages
-
- # Add version tag at the first line.
- sed -i "1i--$pkgver" cabal.config
+ # Add version tag at the first line.
+ sed -i "1i--$pkgver" cabal.config
- mv cabal.config "$startdir"/
+ mv cabal.config "$startdir"/
+ )
cd "$startdir"
abuild checksum || die "Failed to update checksum, run 'abuild checksum' manually"
@@ -44,11 +45,11 @@ prepare() {
die "Requirements file is outdated, run 'abuild cabal_update'"
fi
ln -sf "$srcdir"/cabal.config "$builddir"/cabal.config
-
- cabal update
}
build() {
+ cabal update
+ cabal install --only-dependencies
cabal configure \
--prefix='/usr' \
--bindir='$prefix/bin' \
@@ -63,6 +64,10 @@ build() {
cabal build
}
+check() {
+ cabal test
+}
+
package() {
local docdir="$pkgdir/usr/share/doc/$pkgname"
@@ -75,6 +80,8 @@ package() {
}
sha512sums="
-218190f53b5bfe4f438ef6831cabbccc3359ace821e4ce1937515bc08bb8ae459b5b1361c0ce42f839cfd657e76f089d3f088c5c4e04efdb783a5c2ee52eccf5 klfc-1.5.6.tar.gz
-368d0ff3a6ba3fdc8deec13868240b55cccfd674783bd8837bad2338a424ae30a9978f266e8d418648bb878afde6ddd381f2ad6d9793e4a52d4f60c217a2b082 cabal.config
+bae6c7b3c21419e9fea73b38eaea7c7c27b9cb78b5bccd7ce11e733729f37d8d0b8d20435fa63bfb3c5be6479cca0caccc63d59a99aa04477414eddf9ce20919 klfc-1.5.7.tar.gz
+6acf2cb52be8b22bf8d40186bbea8a211f7237b808d72321d077722d33f9fb5f3da5f7f2ed345b2a8631046c31ed0feaeec3cb4ea24f68439d2af48f366e2a1b ghc9-001.patch
+febe8b7ce38393f8f0576cfd77c4eca56864c05c9028c2f94cf008f73eeca753c6247a71f03728e8f650e612193cf737b95b9ad3fbc96edc251f8fedc3cfe8ce ghc9-002.patch
+5be1e6dbfe1849fb5b7c01ada95ccdbf0c769463bac62dc49732fed8346e6b32bab2a52dadafc9e8cb7608122d85e4bbda4c1dd967a606902e79357e2571fba7 cabal.config
"
diff --git a/testing/klfc/cabal.config b/testing/klfc/cabal.config
index eb14046ebe8..1820689f5db 100644
--- a/testing/klfc/cabal.config
+++ b/testing/klfc/cabal.config
@@ -1,68 +1,68 @@
---1.5.6
+--1.5.7
constraints: aeson ==1.5.6.0,
- ansi-terminal ==0.11,
+ ansi-terminal ==0.11.3,
ansi-wl-pprint ==0.6.9,
array ==0.5.4.0,
assoc ==1.0.2,
- attoparsec ==0.14.1,
- base ==4.13.0.0,
- base-compat ==0.11.2,
- base-compat-batteries ==0.11.2,
- base-orphans ==0.8.4,
- base-prelude ==1.4,
+ attoparsec ==0.14.4,
+ base ==4.15.1.0,
+ base-compat ==0.12.2,
+ base-compat-batteries ==0.12.2,
+ base-orphans ==0.8.7,
+ base-prelude ==1.6.1,
base-unicode-symbols ==0.2.4.2,
- bifunctors ==5.5.11,
- binary ==0.8.7.0,
- bytestring ==0.10.10.1,
+ bifunctors ==5.5.12,
+ binary ==0.8.8.0,
+ bytestring ==0.10.12.1,
case-insensitive ==1.2.1.0,
chunked-data ==0.3.1,
colour ==2.3.6,
comonad ==5.0.8,
- containers ==0.6.2.1,
+ containers ==0.6.4.1,
containers-unicode-symbols ==0.3.1.3,
data-fix ==0.3.2,
- deepseq ==1.4.4.0,
- directory ==1.3.6.0,
+ deepseq ==1.4.5.0,
+ directory ==1.3.6.2,
distributive ==0.6.2.1,
dlist ==1.0,
fail ==4.9.0.0,
- file-embed ==0.0.14.0,
+ file-embed ==0.0.15.0,
filepath ==1.4.2.1,
- ghc-boot-th ==8.8.4,
- ghc-prim ==0.5.3,
- hashable ==1.3.3.0,
- indexed-traversable ==0.1.1,
- integer-gmp ==1.0.2.0,
+ ghc-bignum ==1.1,
+ ghc-boot-th ==9.0.2,
+ ghc-prim ==0.7.0,
+ hashable ==1.3.5.0,
+ indexed-traversable ==0.1.2,
integer-logarithms ==1.0.3.1,
- megaparsec ==9.1.0,
- microlens ==0.4.12.0,
- microlens-ghc ==0.4.13,
- microlens-mtl ==0.2.0.1,
- microlens-platform ==0.4.2,
+ megaparsec ==9.2.1,
+ microlens ==0.4.13.0,
+ microlens-ghc ==0.4.14.0,
+ microlens-mtl ==0.2.0.2,
+ microlens-platform ==0.4.3.2,
microlens-th ==0.4.3.10,
mtl ==2.2.2,
- optparse-applicative ==0.16.1.0,
+ optparse-applicative ==0.17.0.0,
parser-combinators ==1.3.0,
pretty ==1.1.3.6,
- primitive ==0.7.2.0,
- process ==1.6.9.0,
- random ==1.2.0,
- rts ==1.0,
+ primitive ==0.7.4.0,
+ process ==1.6.13.2,
+ random ==1.2.1.1,
+ rts ==1.0.2,
scientific ==0.3.7.0,
- semigroups ==0.19.1,
- splitmix ==0.1.0.3,
+ semigroups ==0.20,
+ splitmix ==0.1.0.4,
strict ==0.4.0.1,
tagged ==0.8.6.1,
- template-haskell ==2.15.0.0,
- text ==1.2.4.0,
- th-abstraction ==0.4.2.0,
+ template-haskell ==2.17.0.0,
+ text ==1.2.5.0,
+ th-abstraction ==0.4.4.0,
these ==1.1.1.1,
time ==1.9.3,
- time-compat ==1.9.6,
+ time-compat ==1.9.6.1,
transformers ==0.5.6.2,
- transformers-compat ==0.7,
+ transformers-compat ==0.7.2,
unix ==2.7.2.2,
- unordered-containers ==0.2.14.0,
+ unordered-containers ==0.2.19.1,
uuid-types ==1.0.5,
- vector ==0.12.3.0,
+ vector ==0.12.3.1,
xml ==1.3.14
diff --git a/testing/klfc/ghc9-001.patch b/testing/klfc/ghc9-001.patch
new file mode 100644
index 00000000000..265877877a3
--- /dev/null
+++ b/testing/klfc/ghc9-001.patch
@@ -0,0 +1,22 @@
+From ad4a431513470f8386dd7a8c28aeef35187193fe Mon Sep 17 00:00:00 2001
+From: Aldo Gunsing <dev@aldogunsing.nl>
+Date: Fri, 17 Dec 2021 00:11:58 +0100
+Subject: [PATCH] More fixes for GHC 9.0
+
+---
+ src/Layout/Modifier.hs | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/Layout/Modifier.hs b/src/Layout/Modifier.hs
+index 1fe456e..0d5e44c 100644
+--- a/src/Layout/Modifier.hs
++++ b/src/Layout/Modifier.hs
+@@ -22,7 +22,7 @@ module Layout.Modifier
+ , activatedBy
+ ) where
+
+-import BasePrelude hiding (Alt, Control, empty, fromList)
++import BasePrelude hiding (Alt, Control, empty, fromList, singleton)
+ import Prelude.Unicode hiding ((∈))
+ import Data.Foldable.Unicode ((∈))
+ import Data.Monoid.Unicode ((∅), (⊕))
diff --git a/testing/klfc/ghc9-002.patch b/testing/klfc/ghc9-002.patch
new file mode 100644
index 00000000000..eb8f452bf81
--- /dev/null
+++ b/testing/klfc/ghc9-002.patch
@@ -0,0 +1,41 @@
+From fee9bdeb76cc1f9e9e36b91764aff665c9164164 Mon Sep 17 00:00:00 2001
+From: Aldo Gunsing <dev@aldogunsing.nl>
+Date: Thu, 16 Dec 2021 22:38:09 +0100
+Subject: [PATCH] Fix compilation with GHC 9.0 (#40)
+
+See https://gitlab.haskell.org/ghc/ghc/-/wikis/migration/9.0#simplified-subsumption
+for the required eta-expansion in lensWithDefault'
+
+Hiding singleton from BasePrelude gives a warning for previous GHC versions,
+but this is a minor issue
+---
+ src/Util.hs | 2 +-
+ src/WithPlus.hs | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/Util.hs b/src/Util.hs
+index 0dc0884..dc096db 100644
+--- a/src/Util.hs
++++ b/src/Util.hs
+@@ -80,7 +80,7 @@ lensWithDefault guess setter getter f x =
+ (\y → setter (Just y) x) <$> f (fromMaybe (guess x) (getter x))
+
+ lensWithDefault' ∷ α → (Maybe α → σ → σ) → (σ → Maybe α) → Lens' σ α
+-lensWithDefault' = lensWithDefault ∘ const
++lensWithDefault' x = lensWithDefault (const x)
+
+ (!?) ∷ [α] → Int → Maybe α
+ (!?) xs i =
+diff --git a/src/WithPlus.hs b/src/WithPlus.hs
+index 1a46faf..558591d 100644
+--- a/src/WithPlus.hs
++++ b/src/WithPlus.hs
+@@ -9,7 +9,7 @@ module WithPlus
+ , parseString
+ ) where
+
+-import BasePrelude hiding (toList, fromList)
++import BasePrelude hiding (toList, fromList, singleton)
+ import Prelude.Unicode
+ import Data.Monoid.Unicode ((∅))
+ import Util (HumanReadable, split)
diff --git a/testing/klibc/APKBUILD b/testing/klibc/APKBUILD
deleted file mode 100644
index 2c98e8546d6..00000000000
--- a/testing/klibc/APKBUILD
+++ /dev/null
@@ -1,215 +0,0 @@
-# Contributor: Olliver Schinagl <oliver@schinagl.nl>
-# Maintainer: Olliver Schinagl <oliver@schinagl.nl>
-pkgname="klibc"
-pkgver="2.0.9"
-pkgrel=0
-pkgdesc="A minimalistic libc subset for use with initramfs"
-url="https://git.kernel.org/pub/scm/libs/klibc/klibc.git/"
-arch="all"
-license="GPL-2.0-or-later"
-makedepends="linux-headers perl"
-subpackages="
- ${pkgname}-dash
- ${pkgname}-dev
- ${pkgname}-doc
- ${pkgname}-static:static
- ${pkgname}-fstype:bins
- ${pkgname}-ipconfig:bins
- ${pkgname}-kinit::noarch
- ${pkgname}-klcc::noarch
- ${pkgname}-nfsmount:bins
- ${pkgname}-resume:bins
- ${pkgname}-run-init:bins
- ${pkgname}-utils
- lib${pkgname}:libs
-"
-source="
- https://git.kernel.org/pub/scm/libs/klibc/klibc.git/snapshot/${pkgname}-${pkgver}.tar.gz
-
- lib${pkgname}.post-deinstall
- lib${pkgname}.post-install
-"
-_installdir="/usr/lib/${pkgname}-${CARCH}/"
-
-# secfixes:
-# 2.0.9-r0:
-# - CVE-2021-31870
-# - CVE-2021-31871
-# - CVE-2021-31872
-# - CVE-2021-31873
-
-build() {
- # klibc's header misses the struct declaration, Linux's misses
- # the function declaration. Combine them here.
- if [ ! -e "${builddir}/usr/include/sys/sysinfo.h.orig" ]; then
- mv "${builddir}/usr/include/sys/sysinfo.h" \
- "${builddir}/usr/include/sys/sysinfo.h.orig"
- fi
- cat \
- "/usr/include/linux/sysinfo.h" \
- "${builddir}/usr/include/sys/sysinfo.h.orig" > \
- "${builddir}/usr/include/sys/sysinfo.h"
-
- make \
- KBUILD_REPRODUCIBLE=1 \
- KLIBCKERNELSRC="/usr/"
-}
-
-check() {
- make \
- KBUILD_REPRODUCIBLE=1 \
- KLIBCKERNELSRC="/usr/" \
- test
-}
-
-package() {
- depends="
- lib${pkgname}
- ${pkgname}-dash
- ${pkgname}-kinit
- ${pkgname}-utils
- "
-
-case "${CARCH}" in
- aarch64)
- _klibcarch="arm64"
- ;;
- armhf)
- _klibcarch="arm"
- CPU_ARCH="armv6zk"
- CPU_TUNE="arm1176jzf-s"
- ;;
- armv7)
- _klibcarch="arm"
- CPU_ARCH="armv7"
- CPU_TUNE="generic-armv7-a"
- ;;
- ppc)
- _klibcarch="ppc"
- ;;
- ppc64|ppc64le)
- _klibcarch="ppc64"
- ;;
- riscv64)
- _klibcarch="riscv64"
- ;;
- s390x)
- _klibcarch="s390"
- ;;
- x86)
- _klibcarch="i386"
- ;;
- x86_64)
- _klibcarch="x86_64"
- ;;
- *)
- echo 'Unsupported architecture'
- ;;
- esac
- export CPU_ARCH
- export CPU_TUNE
- make \
- INSTALLDIR="${_installdir}" \
- INSTALLROOT="${pkgdir}" \
- KBUILD_REPRODUCIBLE=1 \
- KLIBCKERNELSRC="/usr/" \
- mandir="/usr/share/man" \
- install
-
- # Duplicated in INSTALLDIR/lib and replaced with post.install
- rm -r "${pkgdir:?}/lib"
-
- for _arch in "${pkgdir}/${_installdir}/include/arch/"*; do
- if [ "${_arch##*/}" != "${_klibcarch}" ]; then
- rm -r "${_arch:?}"
- fi
- done
-
- # Replace hardlinks with symlinks
- unlink "${pkgdir}/${_installdir}/bin/gunzip"
- unlink "${pkgdir}/${_installdir}/bin/poweroff"
- unlink "${pkgdir}/${_installdir}/bin/reboot"
- unlink "${pkgdir}/${_installdir}/bin/zcat"
-
- ln -s "gzip" "${pkgdir}/${_installdir}/bin/gunzip"
- ln -s "gzip" "${pkgdir}/${_installdir}/bin/zcat"
-
- ln -s "halt" "${pkgdir}/${_installdir}/bin/poweroff"
- ln -s "halt" "${pkgdir}/${_installdir}/bin/reboot"
-}
-
-klcc() {
- depends="perl"
-
- mkdir -p "${subpkgdir}/usr/bin"
- mv "${pkgdir}/usr/bin/klcc" "${subpkgdir}/usr/bin/"
-}
-
-libs() {
- install="lib${pkgname}.post-deinstall lib${pkgname}.post-install"
-
- mkdir -p "${subpkgdir}/${_installdir}"
- mv "${pkgdir}/${_installdir}/lib" "${subpkgdir}/${_installdir}/"
-}
-
-bins() {
- depends="lib${pkgname}"
-
- mkdir -p "${subpkgdir}/${_installdir}/bin"
- mv "${pkgdir}/${_installdir}/bin/${subpkgname#${pkgname}-}" "${subpkgdir}/${_installdir}/bin/"
-}
-
-dash() {
- depends="lib${pkgname}"
-
- mkdir -p "${subpkgdir}/${_installdir}/bin"
- mv "${pkgdir}/${_installdir}/bin/sh" "${subpkgdir}/${_installdir}/bin/"
-}
-
-kinit() {
- depends="
- ${pkgname}-fstype
- ${pkgname}-ipconfig
- ${pkgname}-nfsmount
- ${pkgname}-resume
- ${pkgname}-run-init
- "
-
- mkdir -p "${subpkgdir}"
-}
-
-utils() {
- depends="lib${pkgname}"
-
- mkdir -p "${subpkgdir}/${_installdir}/"
- mv "${pkgdir}/${_installdir}/bin" "${subpkgdir}/${_installdir}/"
-}
-
-static() {
- mkdir -p "${subpkgdir}/${_installdir}/bin"
-
- find "${builddir}" -type d -name 'static' | while read -r _staticbins; do
- for _bin in "${_staticbins}/"*; do
- if [ -z "${_bin%%*.g}" ]; then
- continue
- fi
-
- install -D -m 755 "${_bin}" \
- "${subpkgdir}/${_installdir}/bin/${_bin##*/}.static"
- done
- done
-
- mv "${pkgdir}/${_installdir}/bin/gunzip" \
- "${subpkgdir}/${_installdir}/bin/gunzip.static"
-
- mv "${pkgdir}/${_installdir}/bin/gzip" \
- "${subpkgdir}/${_installdir}/bin/gzip.static"
-
- mv "${pkgdir}/${_installdir}/bin/zcat" \
- "${subpkgdir}/${_installdir}/bin/zcat.static"
-}
-
-
-sha512sums="a03afd73d1576f45d6abbca396373feb08ff4edbae576fef7789a3b729a38f6272539425cfaa9c7705d5551519b81367fb2c6d1fef57892a0430566b8321a34c klibc-2.0.9.tar.gz
-672f87b240b3349b2ffee2768ef6b1d37f6395d8f00bdf33375c03f967041de14b6365bcecff2d3918130b16c250ec5e3d50f1ac04c9530f0b169bc01e7d39cb libklibc.post-deinstall
-7340bfd2c048b8b7a6edd752d552e1007c202a5b44bf9d0ae741a80dcea1cbfdde38ade50f7d008c723a2b99570156877476273073039da286b604693323e484 libklibc.post-install"
diff --git a/testing/klibc/libklibc.post-deinstall b/testing/klibc/libklibc.post-deinstall
deleted file mode 100755
index b5e49d7057e..00000000000
--- a/testing/klibc/libklibc.post-deinstall
+++ /dev/null
@@ -1,17 +0,0 @@
-#!/bin/sh
-
-set -eu
-
-
-if [ -n "${CARCH:-}" ] || \
- CARCH="$(${APK:-apk} --print-arch 2> "/dev/null")"; then
- for _klibcso in "/lib/klibc-"*".so"; do
- if [ -L "${_klibcso}" ] && \
- _klibclink="$(readlink "${_klibcso}")" && \
- [ ! -e "${_klibclink:-}" ]; then
- unlink "${_klibcso}"
- fi
- done
-fi
-
-exit 0
diff --git a/testing/klibc/libklibc.post-install b/testing/klibc/libklibc.post-install
deleted file mode 100755
index 2ad83264739..00000000000
--- a/testing/klibc/libklibc.post-install
+++ /dev/null
@@ -1,18 +0,0 @@
-#!/bin/sh
-
-set -eu
-
-
-if [ -n "${CARCH:-}" ] || \
- CARCH="$(${APK:-apk} --print-arch 2> "/dev/null")"; then
- for _klibcso in "/lib/klibc-"*".so"; do
- if [ -L "${_klibcso}" ] && \
- ! readlink -f "${_klibcso}"; then
- unlink "${_klibcso}"
- fi
- done
-
- ln -f -s "/usr/lib/klibc-${CARCH}/lib/klibc-"*".so" "/lib/"
-fi
-
-exit 0
diff --git a/testing/kmscon/APKBUILD b/testing/kmscon/APKBUILD
new file mode 100644
index 00000000000..b300f29a22f
--- /dev/null
+++ b/testing/kmscon/APKBUILD
@@ -0,0 +1,47 @@
+# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=kmscon
+pkgver=9.0.0
+pkgrel=0
+pkgdesc="Simple terminal emulator based on linux kernel mode setting"
+url="https://github.com/Aetf/kmscon"
+# ppc64le: FTBFS: compiled for a big endian system and target is little endian
+arch="all !ppc64le"
+license="MIT AND LGPL-2.1-or-later AND ( OFL-1.1 AND GPL-2.0-or-later WITH Font-exception-2.0 ) AND MIT AND BSD-2-Clause AND custom"
+makedepends="
+ eudev-dev
+ libdrm-dev
+ libtsm-dev
+ libxkbcommon-dev
+ mesa-dev
+ meson
+ pango-dev
+ pixman-dev
+ "
+checkdepends="mesa-dri-gallium xvfb-run"
+subpackages="$pkgname-doc"
+source="https://github.com/Aetf/kmscon/releases/download/v$pkgver/kmscon-$pkgver.tar.xz"
+# requires opening raw tty
+options="!spdx !check"
+
+build() {
+ abuild-meson \
+ -Db_lto=true \
+ -Dtests="$(want_check && echo true || echo false)" \
+ . output
+
+ meson compile -C output
+}
+
+check() {
+ xvfb-run -a meson test --no-rebuild --print-errorlogs -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+ rm -rf "$pkgdir"/usr/lib/systemd/
+}
+
+sha512sums="
+2d4bca093c40307e155c9cfa349eef433d7ab6d08f8e134a61fa9c5ccb9ad594575725371075aaf917c2a9dfb3cb3cd148296dce25065a02b3a211650cde9c3c kmscon-9.0.0.tar.xz
+"
diff --git a/testing/knative-client/APKBUILD b/testing/knative-client/APKBUILD
new file mode 100644
index 00000000000..a3ac5b1105b
--- /dev/null
+++ b/testing/knative-client/APKBUILD
@@ -0,0 +1,49 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=knative-client
+pkgver=1.13.0
+pkgrel=2
+pkgdesc="CLI client for Knative the serverless container platform in Kubernetes"
+url="https://knative.dev/"
+arch="all"
+license="Apache-2.0"
+makedepends="go"
+checkdepends="bash"
+subpackages="$pkgname-bash-completion $pkgname-zsh-completion"
+source="https://github.com/knative/client/archive/refs/tags/knative-v$pkgver.tar.gz"
+builddir="$srcdir/client-knative-v$pkgver"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ local _goldflags="
+ -X knative.dev/client/pkg/kn/commands/version.Version=v$pkgver
+ -X knative.dev/client/pkg/kn/commands/version.GitRevision=AlpineLinux
+ -X 'knative.dev/client/pkg/kn/commands/version.BuildDate=$(date -u "+%Y-%m-%d %H:%M:%S" ${SOURCE_DATE_EPOCH:+-d @$SOURCE_DATE_EPOCH})'
+ "
+
+ go build -v -ldflags "$_goldflags" ./cmd/kn/
+
+ for shell in bash zsh; do
+ ./kn completion $shell > kn.$shell
+ done
+}
+
+check() {
+ # knative.dev/client/pkg/kn/plugin/verify_test.go needs to access itself during test
+ GOFLAGS="${GOFLAGS/-trimpath/}" go test ./...
+}
+
+package() {
+ install -Dm755 kn -t "$pkgdir"/usr/bin/
+
+ install -Dm644 kn.bash \
+ "$pkgdir"/usr/share/bash-completion/completions/kn
+ install -Dm644 kn.zsh \
+ "$pkgdir"/usr/share/zsh/site-functions/_kn
+}
+
+sha512sums="
+97c35c3711f9025f7c4cfd155ff1b9d51ee0c31c7f8d08dc8d6844ec07dd22d9b6d98da4410564f62087818fe96bae7f9016f5325ed3252bbe4a6a61fecade55 knative-v1.13.0.tar.gz
+"
diff --git a/testing/knxd/APKBUILD b/testing/knxd/APKBUILD
index 71ed66a4354..5d560a1b693 100644
--- a/testing/knxd/APKBUILD
+++ b/testing/knxd/APKBUILD
@@ -1,22 +1,33 @@
# Maintainer: Cían Hughes <Ci@nHugh.es>
pkgname=knxd
-pkgver=0.14.39
-pkgrel=1
+pkgver=0.14.59
+pkgrel=0
pkgdesc="Knxd is an advanced KNX router/gateway; it can talk to all known KNX interfaces"
arch="all"
url="https://github.com/knxd/knxd"
license="GPL-2.0-only"
-makedepends="fmt-dev linux-headers libev-dev libusb-dev argp-standalone bsd-compat-headers automake autoconf libtool m4"
-source="$pkgname-$pkgver.tar.gz::https://codeload.github.com/knxd/knxd/tar.gz/$pkgver"
-options="!check" # no tests
-
+makedepends="
+ argp-standalone
+ autoconf
+ automake
+ bsd-compat-headers
+ fmt-dev
+ libev-dev
+ libtool
+ libusb-dev
+ linux-headers
+ m4
+ "
subpackages="$pkgname-dev"
+source="$pkgname-$pkgver.tar.gz::https://codeload.github.com/knxd/knxd/tar.gz/$pkgver
+ $pkgname-$pkgver-fmt10.patch::https://github.com/knxd/knxd/commit/797283251470786bffd6586571407337da899d30.patch"
+options="!check" # no tests
prepare() {
default_prepare
printf "#!/bin/sh\n\necho %s" "$pkgver" > ./tools/version.sh
- ./bootstrap.sh
+ sh ./bootstrap.sh
}
build() {
@@ -32,4 +43,7 @@ package() {
make DESTDIR="$pkgdir" install
}
-sha512sums="e376ca39a0a990c13e11a79a33acead8d19c6ec546f4f924645c59f3980d902e3384189dfbb4a03984d9e3bab44fa7e961a5a2538a31babd1a71c66d0d6cbe90 knxd-0.14.39.tar.gz"
+sha512sums="
+0ae842bf9d753cb793df486a76a4830b702bc3c1e9af12a8e6ba603a8b419b40ad711d4db73c5b581b15bbe938026c7ae28953fc0b18b485c64f72ff99996fda knxd-0.14.59.tar.gz
+9aae4a071272f1bf654a38d98d29879180df04caabf25f5e3a493d38ae4cf357c2d0b2acd7e328ebc4eddaaaeb92441ea79d696c6c86455087efa34c932acb35 knxd-0.14.59-fmt10.patch
+"
diff --git a/testing/ko/APKBUILD b/testing/ko/APKBUILD
new file mode 100644
index 00000000000..0e308d6a312
--- /dev/null
+++ b/testing/ko/APKBUILD
@@ -0,0 +1,47 @@
+# Maintainer: Ariadne Conill <ariadne@dereferenced.org>
+pkgname=ko
+pkgver=0.15.2
+pkgrel=1
+pkgdesc="Build containers from Go projects"
+url="https://ko.build/"
+arch="all"
+license="Apache-2.0"
+makedepends="go"
+subpackages="
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
+ "
+source="https://github.com/ko-build/ko/archive/v$pkgver/ko-$pkgver.tar.gz
+ unset-CGO_ENABLED.patch
+ "
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ go build -v -ldflags "-X github.com/google/ko/pkg/commands.Version=$pkgver"
+
+ for i in bash fish zsh; do
+ ./ko completion $i > ko.$i
+ done
+}
+
+check() {
+ # TestNewPublisherCanPublish test tries to connect to the Docker socket.
+ go test -skip TestNewPublisherCanPublish ./...
+}
+
+package() {
+ install -Dm755 ko -t "$pkgdir"/usr/bin/
+
+ install -Dm644 ko.bash "$pkgdir"/usr/share/bash-completion/completions/ko
+ install -Dm644 ko.fish "$pkgdir"/usr/share/fish/vendor_completions.d/ko.fish
+ install -Dm644 ko.zsh "$pkgdir"/usr/share/zsh/site-functions/_ko
+}
+
+sha512sums="
+3beee6f1540a2badf9f98a6b7a08800e4c49c58cc8d3fede20d309d0b06be1ab8d43f495a96e33c3d4ac319fed402bccfee197f07420c58e37759ffe3ea04c40 ko-0.15.2.tar.gz
+d9d8106872ce929f340978a4ff78c588a3ea7cb135a89669e7900b9568586b753a38a2b0cbfdf0e9610d9fdc2d1bed2f7027132263a926fdc9ef1a6b3fe36bd4 unset-CGO_ENABLED.patch
+"
diff --git a/testing/ko/unset-CGO_ENABLED.patch b/testing/ko/unset-CGO_ENABLED.patch
new file mode 100644
index 00000000000..32e48155925
--- /dev/null
+++ b/testing/ko/unset-CGO_ENABLED.patch
@@ -0,0 +1,20 @@
+--- a/pkg/build/gobuild_test.go
++++ b/pkg/build/gobuild_test.go
+@@ -229,7 +229,6 @@ func TestBuildEnv(t *testing.T) {
+ expectedEnvs: map[string]string{
+ "GOOS": "linux",
+ "GOARCH": "amd64",
+- "CGO_ENABLED": "0",
+ },
+ }, {
+ description: "override a default value",
+--- a/pkg/build/gobuild.go
++++ b/pkg/build/gobuild.go
+@@ -442,7 +442,6 @@ func cycloneDX() sbomber {
+ func buildEnv(platform v1.Platform, userEnv, configEnv []string) ([]string, error) {
+ // Default env
+ env := []string{
+- "CGO_ENABLED=0",
+ "GOOS=" + platform.OS,
+ "GOARCH=" + platform.Architecture,
+ }
diff --git a/testing/kodi-audioencoder-flac/APKBUILD b/testing/kodi-audioencoder-flac/APKBUILD
index 42c39bfa40d..767fb031e3d 100644
--- a/testing/kodi-audioencoder-flac/APKBUILD
+++ b/testing/kodi-audioencoder-flac/APKBUILD
@@ -1,29 +1,30 @@
# Contributor: Damian Kurek <starfire24680@gmail.com>
# Maintainer: Damian Kurek <starfire24680@gmail.com>
pkgname=kodi-audioencoder-flac
-pkgver=3.0.0
-_realname=Matrix
-pkgrel=0
+pkgver=20.2.0
+_realname=Nexus
+pkgrel=1
pkgdesc="Flac encoder addon for Kodi"
options="!check" # no test suite
url="https://github.com/xbmc/audioencoder.flac"
-arch="x86 x86_64 aarch64 armv7" # kodi
+arch="x86_64 aarch64 armv7" # kodi is available only on these architectures
license="GPL-2.0-only"
-makedepends="cmake flac-dev kodi-dev"
+makedepends="cmake flac-dev kodi-dev samurai"
source="$pkgname-$pkgver-$_realname.tar.gz::https://github.com/xbmc/audioencoder.flac/archive/$pkgver-$_realname.tar.gz"
builddir="$srcdir/audioencoder.flac-$pkgver-$_realname"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi \
- -DUSE_LTO=1
- make -C build
+ -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi
+ cmake --build build
}
package() {
- make -C build DESTDIR="$pkgdir" install
+ DESTDIR="$pkgdir" cmake --install build
}
-sha512sums="73dd9526a498dd92076eb98044f75baaeb4dd93251f6a9a2d9e9a9a8553fb9b047b861b8518c2fe2803ce06cd794a5436f80561bedd82de1fc2df727f28d1b7c kodi-audioencoder-flac-3.0.0-Matrix.tar.gz"
+sha512sums="
+83e3a6cd0311af05c7f3ae456bbe3d5627e47bc5d8f163bdfe57f3e70f798db6e9728698c73b3dc9da6cca2204e6a07004edff012f9bbf2e2b062e3fb97d5338 kodi-audioencoder-flac-20.2.0-Nexus.tar.gz
+"
diff --git a/testing/kodi-audioencoder-lame/APKBUILD b/testing/kodi-audioencoder-lame/APKBUILD
index c28ce9ef632..3bef430f9f4 100644
--- a/testing/kodi-audioencoder-lame/APKBUILD
+++ b/testing/kodi-audioencoder-lame/APKBUILD
@@ -1,29 +1,30 @@
# Contributor: Damian Kurek <starfire24680@gmail.com>
# Maintainer: Damian Kurek <starfire24680@gmail.com>
pkgname=kodi-audioencoder-lame
-pkgver=3.0.2
-_realname=Matrix
-pkgrel=0
+pkgver=20.3.0
+_realname=Nexus
+pkgrel=1
pkgdesc="Lame MP3 encoder addon for Kodi"
options="!check" # no test suite
url="https://github.com/xbmc/audioencoder.lame"
-arch="x86 x86_64 aarch64 armv7" # kodi
+arch="x86_64 aarch64 armv7" # kodi is available only on these architectures
license="GPL-2.0-only"
-makedepends="cmake lame-dev kodi-dev"
+makedepends="cmake lame-dev kodi-dev samurai"
source="$pkgname-$pkgver-$_realname.tar.gz::https://github.com/xbmc/audioencoder.lame/archive/$pkgver-$_realname.tar.gz"
builddir="$srcdir/audioencoder.lame-$pkgver-$_realname"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi \
- -DUSE_LTO=1
- make -C build
+ -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi
+ cmake --build build
}
package() {
- make -C build DESTDIR="$pkgdir" install
+ DESTDIR="$pkgdir" cmake --install build
}
-sha512sums="28a8c95804292820e07e96b02b206fe7fcdfe93c0e7113cf5d2f9fb43f718f92fdbe3686441064e55a9de1674a40c3ba9574db5e44d24cbd2397feafd97e74e2 kodi-audioencoder-lame-3.0.2-Matrix.tar.gz"
+sha512sums="
+83956e7874e84f6f1e211352ff031764f8173d554fa22c45eedb96d01275969858378ef52cc8cdb8ab10914e04c5bb460104d511b96f9724c23b4eaa654dd1b9 kodi-audioencoder-lame-20.3.0-Nexus.tar.gz
+"
diff --git a/testing/kodi-audioencoder-vorbis/APKBUILD b/testing/kodi-audioencoder-vorbis/APKBUILD
index 03dd71a4d6d..90e8113f509 100644
--- a/testing/kodi-audioencoder-vorbis/APKBUILD
+++ b/testing/kodi-audioencoder-vorbis/APKBUILD
@@ -1,29 +1,30 @@
# Contributor: Damian Kurek <starfire24680@gmail.com>
# Maintainer: Damian Kurek <starfire24680@gmail.com>
pkgname=kodi-audioencoder-vorbis
-pkgver=3.0.1
-_realname=Matrix
-pkgrel=0
+pkgver=20.2.0
+_realname=Nexus
+pkgrel=1
pkgdesc="Vorbis encoder addon for Kodi"
options="!check" # no test suite
url="https://github.com/xbmc/audioencoder.vorbis"
-arch="x86 x86_64 aarch64 armv7" # kodi
+arch="x86_64 aarch64 armv7" # kodi is available only on these architectures
license="GPL-2.0-only"
-makedepends="cmake libvorbis-dev kodi-dev"
+makedepends="cmake libvorbis-dev kodi-dev samurai"
source="$pkgname-$pkgver-$_realname.tar.gz::https://github.com/xbmc/audioencoder.vorbis/archive/$pkgver-$_realname.tar.gz"
builddir="$srcdir/audioencoder.vorbis-$pkgver-$_realname"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi \
- -DUSE_LTO=1
- make -C build
+ -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi
+ cmake --build build
}
package() {
- make -C build DESTDIR="$pkgdir" install
+ DESTDIR="$pkgdir" cmake --install build
}
-sha512sums="f0e9e152574881943f4c8bad6e8249e502590503104e5c456858e25634004c223e9be91b274b2870dd07327254664f7ffa5549cf573241192088a3287d2511ad kodi-audioencoder-vorbis-3.0.1-Matrix.tar.gz"
+sha512sums="
+8465b4ad73efee6adaa385eeaa75ceca725a8257fbf4867c8094661408fcb7d028f977b913c9f873ff1cbd6fa7e20afdc92b95ed38e48dfcba9c00e3ac4b81ae kodi-audioencoder-vorbis-20.2.0-Nexus.tar.gz
+"
diff --git a/testing/kodi-audioencoder-wav/APKBUILD b/testing/kodi-audioencoder-wav/APKBUILD
index 774ef3471d9..a38e23ba93a 100644
--- a/testing/kodi-audioencoder-wav/APKBUILD
+++ b/testing/kodi-audioencoder-wav/APKBUILD
@@ -1,29 +1,30 @@
# Contributor: Damian Kurek <starfire24680@gmail.com>
# Maintainer: Damian Kurek <starfire24680@gmail.com>
pkgname=kodi-audioencoder-wav
-pkgver=3.0.0
-_realname=Matrix
-pkgrel=0
+pkgver=20.2.0
+_realname=Nexus
+pkgrel=1
pkgdesc="WAV encoder addon for Kodi"
options="!check" # no test suite
url="https://github.com/xbmc/audioencoder.wav"
-arch="x86 x86_64 aarch64 armv7" # kodi
+arch="x86_64 aarch64 armv7" # kodi is available only on these architectures
license="GPL-2.0-only"
-makedepends="cmake kodi-dev"
+makedepends="cmake kodi-dev samurai"
source="$pkgname-$pkgver-$_realname.tar.gz::https://github.com/xbmc/audioencoder.wav/archive/$pkgver-$_realname.tar.gz"
builddir="$srcdir/audioencoder.wav-$pkgver-$_realname"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi \
- -DUSE_LTO=1
- make -C build
+ -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi
+ cmake --build build
}
package() {
- make -C build DESTDIR="$pkgdir" install
+ DESTDIR="$pkgdir" cmake --install build
}
-sha512sums="68673e432d377b895172e398628c5dfd506bdb46c83c38933d0d674abaf1715d44e488d4c158d27c0480b92a947f21534502aa8ed473e9225c37f62e28b05512 kodi-audioencoder-wav-3.0.0-Matrix.tar.gz"
+sha512sums="
+7249bfbb0f01820353b089456fa766727dda62ab88306671e0e0941079808ee452f2d1f2824c30b6910bac37547a635f76f04ca682f4d8e5cfb3addffbff3459 kodi-audioencoder-wav-20.2.0-Nexus.tar.gz
+"
diff --git a/testing/kodi-game-libretro-atari800/APKBUILD b/testing/kodi-game-libretro-atari800/APKBUILD
index cb4ff8f214f..148680c9b6d 100644
--- a/testing/kodi-game-libretro-atari800/APKBUILD
+++ b/testing/kodi-game-libretro-atari800/APKBUILD
@@ -1,33 +1,34 @@
# Contributor: Damian Kurek <starfire24680@gmail.com>
# Maintainer: Damian Kurek <starfire24680@gmail.com>
pkgname=kodi-game-libretro-atari800
-pkgver=3.1.0.9
-_realname=Matrix
-pkgrel=1
+pkgver=3.1.0.28
+_realname=Nexus
+pkgrel=0
pkgdesc="Atari800 for libretro/libco WIP"
options="!check" # no test suite
url="https://github.com/kodi-game/game.libretro.atari800"
-arch="x86 x86_64 aarch64 armv7" # kodi
+arch="x86_64 aarch64 armv7" # kodi is available only on these architectures
license="GPL-2.0-only"
-makedepends="cmake libretro-atari800 kodi-dev"
depends="kodi-game-libretro libretro-atari800"
+makedepends="cmake kodi-dev samurai"
source="$pkgname-$pkgver-$_realname.tar.gz::https://github.com/kodi-game/game.libretro.atari800/archive/$pkgver-$_realname.tar.gz"
builddir="$srcdir/game.libretro.atari800-$pkgver-$_realname"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi \
- -DUSE_LTO=1
+ -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi
cmake --build build
}
package() {
- DESTDIR="$pkgdir" cmake --build build --target install
- rm -f "$pkgdir"/usr/lib/kodi/addons/game.libretro.atari800/game.libretro.atari800.so
- ln -s /usr/lib/libretro/atari800_libretro.so \
+ DESTDIR="$pkgdir" cmake --install build
+ rm -v "$pkgdir"/usr/lib/kodi/addons/game.libretro.atari800/game.libretro.atari800.so
+ ln -sfv /usr/lib/libretro/atari800_libretro.so \
"$pkgdir"/usr/lib/kodi/addons/game.libretro.atari800/game.libretro.atari800.so
}
-sha512sums="60abf022fceda4141c5244906f2a44776ba1b17b6b982e1b3f63d314c811b6bffcb7a6070c66413f461d31a30fca014990af505047b8d331c16ffcb032a5c015 kodi-game-libretro-atari800-3.1.0.9-Matrix.tar.gz"
+sha512sums="
+4ff46faa3a075cfb2e877c0d44c501434b234cd9cc010706e0a3dde3e0a1dab197dd9a1bead9e7b6219873a03415139feb7050deab25352fdaf2e45bbd7c7d94 kodi-game-libretro-atari800-3.1.0.28-Nexus.tar.gz
+"
diff --git a/testing/kodi-game-libretro-beetle-bsnes/APKBUILD b/testing/kodi-game-libretro-beetle-bsnes/APKBUILD
index 2675b6b0998..f7fa08d860d 100644
--- a/testing/kodi-game-libretro-beetle-bsnes/APKBUILD
+++ b/testing/kodi-game-libretro-beetle-bsnes/APKBUILD
@@ -1,30 +1,29 @@
# Contributor: Damian Kurek <starfire24680@gmail.com>
# Maintainer: Damian Kurek <starfire24680@gmail.com>
pkgname=kodi-game-libretro-beetle-bsnes
-pkgver=0.9.26.10
-_realname=Matrix
+pkgver=0.9.26.27
+_realname=Nexus
pkgrel=0
pkgdesc="Beetle-BSNES for Kodi"
options="!check" # no test suite
url="https://github.com/kodi-game/game.libretro.beetle-bsnes"
-arch="x86 x86_64 aarch64 armv7" # kodi
+arch="x86_64 aarch64 armv7" # kodi is available only on these architectures
license="GPL-2.0-only"
-makedepends="cmake kodi-dev"
+makedepends="cmake kodi-dev samurai"
depends="kodi-game-libretro libretro-beetle-bsnes"
source="$pkgname-$pkgver-$_realname.tar.gz::https://github.com/kodi-game/game.libretro.beetle-bsnes/archive/$pkgver-$_realname.tar.gz"
builddir="$srcdir/game.libretro.beetle-bsnes-$pkgver-$_realname"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi \
- -DUSE_LTO=1
+ -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi
cmake --build build
}
package() {
- DESTDIR="$pkgdir" cmake --build build --target install
+ DESTDIR="$pkgdir" cmake --install build
rm -r "$pkgdir"/usr/share/kodi/addons/game.libretro.beetle-bsnes/resources/icon.png \
"$pkgdir"/usr/share/kodi/addons/game.libretro.beetle-bsnes/resources/screenshot* \
"$pkgdir"/usr/lib/kodi/addons/game.libretro.beetle-bsnes/game.libretro.beetle-bsnes.so
@@ -33,4 +32,6 @@ package() {
sed -i '/<assets>/,/<\/assets>/d' "$pkgdir"/usr/share/kodi/addons/game.libretro.beetle-bsnes/addon.xml
}
-sha512sums="cc9ec7d760cb27323cc62914c607f8b971c39202db65207cfa7aab8db5c7124ae923f397811c2831e0c38b8f00bb17b2c5d9e5cdb63915ea7cfae837563127f2 kodi-game-libretro-beetle-bsnes-0.9.26.10-Matrix.tar.gz"
+sha512sums="
+d050c2b7691df604ba0841da406777f84da0796752992de84a9ebd5f69b13ee0a3cc5f000afa9ba1825b2093b4dcca7a6bb8138c4b377b170034d21ce7024c66 kodi-game-libretro-beetle-bsnes-0.9.26.27-Nexus.tar.gz
+"
diff --git a/testing/kodi-game-libretro-beetle-lynx/APKBUILD b/testing/kodi-game-libretro-beetle-lynx/APKBUILD
index e9bcb07cab3..b1ba85497bf 100644
--- a/testing/kodi-game-libretro-beetle-lynx/APKBUILD
+++ b/testing/kodi-game-libretro-beetle-lynx/APKBUILD
@@ -1,21 +1,21 @@
# Contributor: Damian Kurek <starfire24680@gmail.com>
# Maintainer: Damian Kurek <starfire24680@gmail.com>
pkgname=kodi-game-libretro-beetle-lynx
-pkgver=1.24.0.16
-_realname=Matrix
-pkgrel=1
+pkgver=1.24.0.50
+_realname=Nexus
+pkgrel=0
pkgdesc="Beetle-Lynx for Kodi"
options="!check" # no test suite
url="https://github.com/kodi-game/game.libretro.beetle-lynx"
-arch="x86 x86_64 aarch64 armv7" # kodi
+arch="x86_64 aarch64 armv7" # kodi is available only on these architectures
license="GPL-2.0-only AND Zlib"
-makedepends="cmake kodi-dev"
+makedepends="cmake kodi-dev samurai"
depends="kodi-game-libretro libretro-beetle-lynx"
source="$pkgname-$pkgver-$_realname.tar.gz::https://github.com/kodi-game/game.libretro.beetle-lynx/archive/$pkgver-$_realname.tar.gz"
builddir="$srcdir/game.libretro.beetle-lynx-$pkgver-$_realname"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi
@@ -23,7 +23,7 @@ build() {
}
package() {
- DESTDIR="$pkgdir" cmake --build build --target install
+ DESTDIR="$pkgdir" cmake --install build
rm -r "$pkgdir"/usr/share/kodi/addons/game.libretro.beetle-lynx/resources/icon.png \
"$pkgdir"/usr/share/kodi/addons/game.libretro.beetle-lynx/resources/screenshot* \
"$pkgdir"/usr/lib/kodi/addons/game.libretro.beetle-lynx/game.libretro.beetle-lynx.so
@@ -32,4 +32,6 @@ package() {
sed -i '/<assets>/,/<\/assets>/d' "$pkgdir"/usr/share/kodi/addons/game.libretro.beetle-lynx/addon.xml
}
-sha512sums="38906104c3ff76c9161b684ef7708e05905ffdd9841027cfaac7f9a0059783d26dccdf321cd223f98ec480978823c888fe04cae9b9e6a9cb132631b1e2a2413c kodi-game-libretro-beetle-lynx-1.24.0.16-Matrix.tar.gz"
+sha512sums="
+b62d0aed7d7730836da80d4454ed565d9252c8eccf89f054456859e252b05b193266e6da5826775d1ed69bba0258f6c40b6284b93117d1d10fe0ae4ed2f2d40d kodi-game-libretro-beetle-lynx-1.24.0.50-Nexus.tar.gz
+"
diff --git a/testing/kodi-game-libretro-beetle-ngp/APKBUILD b/testing/kodi-game-libretro-beetle-ngp/APKBUILD
index 6fc612cce2e..383f48f3960 100644
--- a/testing/kodi-game-libretro-beetle-ngp/APKBUILD
+++ b/testing/kodi-game-libretro-beetle-ngp/APKBUILD
@@ -1,30 +1,29 @@
# Contributor: Damian Kurek <starfire24680@gmail.com>
# Maintainer: Damian Kurek <starfire24680@gmail.com>
pkgname=kodi-game-libretro-beetle-ngp
-pkgver=0.9.36.14
-_realname=Matrix
+pkgver=1.29.0.35
+_realname=Nexus
pkgrel=0
pkgdesc="Beetle-NGP for Kodi"
options="!check" # no test suite
url="https://github.com/kodi-game/game.libretro.beetle-ngp"
-arch="x86 x86_64 aarch64 armv7" # kodi
+arch="x86_64 aarch64 armv7" # kodi is available only on these architectures
license="GPL-2.0-only"
-makedepends="cmake kodi-dev"
+makedepends="cmake kodi-dev samurai"
depends="kodi-game-libretro libretro-beetle-ngp"
source="$pkgname-$pkgver-$_realname.tar.gz::https://github.com/kodi-game/game.libretro.beetle-ngp/archive/$pkgver-$_realname.tar.gz"
builddir="$srcdir/game.libretro.beetle-ngp-$pkgver-$_realname"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi \
- -DUSE_LTO=1
+ -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi
cmake --build build
}
package() {
- DESTDIR="$pkgdir" cmake --build build --target install
+ DESTDIR="$pkgdir" cmake --install build
rm -r "$pkgdir"/usr/share/kodi/addons/game.libretro.beetle-ngp/resources/icon.png \
"$pkgdir"/usr/share/kodi/addons/game.libretro.beetle-ngp/resources/screenshot* \
"$pkgdir"/usr/lib/kodi/addons/game.libretro.beetle-ngp/game.libretro.beetle-ngp.so
@@ -33,4 +32,6 @@ package() {
sed -i '/<assets>/,/<\/assets>/d' "$pkgdir"/usr/share/kodi/addons/game.libretro.beetle-ngp/addon.xml
}
-sha512sums="9d05158d5e11fffa94308b17898f740890ab79ac5cdc97de8733f1105c29babf339e15cade031dce04b148c8633e8a0c1216b46a11a7d2a2e76d3729c8b5aaa3 kodi-game-libretro-beetle-ngp-0.9.36.14-Matrix.tar.gz"
+sha512sums="
+4f3f78e022ef2a06fb8415dd52319878792f33871ba78294102b8ad403c47dec45733f6c08f7e2ee70eeb9cc13306f68deb5cefeec12d493c6afed766a3a91e7 kodi-game-libretro-beetle-ngp-1.29.0.35-Nexus.tar.gz
+"
diff --git a/testing/kodi-game-libretro-beetle-pce-fast/APKBUILD b/testing/kodi-game-libretro-beetle-pce-fast/APKBUILD
index 42b308b6e4a..7114e602030 100644
--- a/testing/kodi-game-libretro-beetle-pce-fast/APKBUILD
+++ b/testing/kodi-game-libretro-beetle-pce-fast/APKBUILD
@@ -1,30 +1,29 @@
# Contributor: Damian Kurek <starfire24680@gmail.com>
# Maintainer: Damian Kurek <starfire24680@gmail.com>
pkgname=kodi-game-libretro-beetle-pce-fast
-pkgver=0.9.38.17
-_realname=Matrix
+pkgver=1.31.0.43
+_realname=Nexus
pkgrel=0
pkgdesc="Beetle-PCE-fast for Kodi"
options="!check" # no test suite
url="https://github.com/kodi-game/game.libretro.beetle-pce-fast"
-arch="x86 x86_64 aarch64 armv7" # kodi
+arch="x86_64 aarch64 armv7" # kodi is available only on these architectures
license="GPL-2.0-only"
-makedepends="cmake kodi-dev"
+makedepends="cmake kodi-dev samurai"
depends="kodi-game-libretro libretro-beetle-pce-fast"
source="$pkgname-$pkgver-$_realname.tar.gz::https://github.com/kodi-game/game.libretro.beetle-pce-fast/archive/$pkgver-$_realname.tar.gz"
builddir="$srcdir/game.libretro.beetle-pce-fast-$pkgver-$_realname"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi \
- -DUSE_LTO=1
+ -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi
cmake --build build
}
package() {
- DESTDIR="$pkgdir" cmake --build build --target install
+ DESTDIR="$pkgdir" cmake --install build
rm -r "$pkgdir"/usr/share/kodi/addons/game.libretro.beetle-pce-fast/resources/icon.png \
"$pkgdir"/usr/share/kodi/addons/game.libretro.beetle-pce-fast/resources/screenshot* \
"$pkgdir"/usr/lib/kodi/addons/game.libretro.beetle-pce-fast/game.libretro.beetle-pce-fast.so
@@ -33,4 +32,6 @@ package() {
sed -i '/<assets>/,/<\/assets>/d' "$pkgdir"/usr/share/kodi/addons/game.libretro.beetle-pce-fast/addon.xml
}
-sha512sums="4de653f1973f1115d9cdc98440d7d572a205998ee853199ba7e6a20f397558c413415607601877a15068aa0895571ead1b2f16fa242406de2c7950b423705721 kodi-game-libretro-beetle-pce-fast-0.9.38.17-Matrix.tar.gz"
+sha512sums="
+449f1e05ebff42ed5c82bb7369356805029c2d742ea6d66bbeda48b901a464a2a4cc6f3e64d9797b0fa8f31ade80916ebaf30ac3cdf9e61b34c8e79b364dfd60 kodi-game-libretro-beetle-pce-fast-1.31.0.43-Nexus.tar.gz
+"
diff --git a/testing/kodi-game-libretro-beetle-pcfx/APKBUILD b/testing/kodi-game-libretro-beetle-pcfx/APKBUILD
index 4a19c748150..07a77188048 100644
--- a/testing/kodi-game-libretro-beetle-pcfx/APKBUILD
+++ b/testing/kodi-game-libretro-beetle-pcfx/APKBUILD
@@ -1,33 +1,34 @@
# Contributor: Damian Kurek <starfire24680@gmail.com>
# Maintainer: Damian Kurek <starfire24680@gmail.com>
pkgname=kodi-game-libretro-beetle-pcfx
-pkgver=0.9.36.15
-_realname=Matrix
+pkgver=0.9.36.36
+_realname=Nexus
pkgrel=0
pkgdesc="Beetle-pcfx for Kodi"
options="!check" # no test suite
url="https://github.com/kodi-game/game.libretro.beetle-pcfx"
-arch="x86 x86_64 aarch64 armv7" # kodi
+arch="x86_64 aarch64 armv7" # kodi is available only on these architectures
license="GPL-2.0-only"
-makedepends="cmake kodi-dev"
+makedepends="cmake kodi-dev samurai"
depends="kodi-game-libretro libretro-beetle-pcfx"
source="$pkgname-$pkgver-$_realname.tar.gz::https://github.com/kodi-game/game.libretro.beetle-pcfx/archive/$pkgver-$_realname.tar.gz"
builddir="$srcdir/game.libretro.beetle-pcfx-$pkgver-$_realname"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi \
- -DUSE_LTO=1
+ -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi
cmake --build build
}
package() {
- DESTDIR="$pkgdir" cmake --build build --target install
+ DESTDIR="$pkgdir" cmake --install build
rm -r "$pkgdir"/usr/lib/kodi/addons/game.libretro.beetle-pcfx/game.libretro.beetle-pcfx.so
ln -s /usr/lib/libretro/mednafen_pcfx_libretro.so \
"$pkgdir"/usr/lib/kodi/addons/game.libretro.beetle-pcfx/game.libretro.beetle-pcfx.so
}
-sha512sums="d701ba504608c7b666b44426373b20a55e83544808d7e782e10a1a7aad49b3aff89325b9dbf7292fd704fc2ebed5a2f34c63d56f4154240d0856c1b3bea49461 kodi-game-libretro-beetle-pcfx-0.9.36.15-Matrix.tar.gz"
+sha512sums="
+a459a02fd9934d4ea81b87dfc160caf52b77c6e4001d7f08761f465b2b427772f251bf00377e7588681ef737e9f90963daaebe1791379c8927930e187234969c kodi-game-libretro-beetle-pcfx-0.9.36.36-Nexus.tar.gz
+"
diff --git a/testing/kodi-game-libretro-beetle-psx/APKBUILD b/testing/kodi-game-libretro-beetle-psx/APKBUILD
index 182e0bde31c..df7818169a6 100644
--- a/testing/kodi-game-libretro-beetle-psx/APKBUILD
+++ b/testing/kodi-game-libretro-beetle-psx/APKBUILD
@@ -1,33 +1,34 @@
# Contributor: Damian Kurek <starfire24680@gmail.com>
# Maintainer: Damian Kurek <starfire24680@gmail.com>
pkgname=kodi-game-libretro-beetle-psx
-pkgver=0.9.44.22
-_realname=Matrix
-pkgrel=1
+pkgver=0.9.44.53
+_realname=Nexus
+pkgrel=0
pkgdesc="Beetle-PSX for Kodi"
options="!check" # no test suite
url="https://github.com/kodi-game/game.libretro.beetle-psx"
-arch="x86 x86_64 aarch64 armv7" # kodi
+arch="x86_64 aarch64 armv7" # kodi is available only on these architectures
license="GPL-2.0-or-later"
-makedepends="cmake libretro-beetle-psx kodi-dev"
depends="kodi-game-libretro libretro-beetle-psx"
+makedepends="cmake kodi-dev samurai"
source="$pkgname-$pkgver-$_realname.tar.gz::https://github.com/kodi-game/game.libretro.beetle-psx/archive/$pkgver-$_realname.tar.gz"
builddir="$srcdir/game.libretro.beetle-psx-$pkgver-$_realname"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi \
- -DUSE_LTO=1
+ -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi
cmake --build build
}
package() {
- DESTDIR="$pkgdir" cmake --build build --target install
+ DESTDIR="$pkgdir" cmake --install build
rm -f "$pkgdir"/usr/lib/kodi/addons/game.libretro.beetle-psx/game.libretro.beetle-psx.so
ln -s /usr/lib/libretro/mednafen_psx_libretro.so \
"$pkgdir"/usr/lib/kodi/addons/game.libretro.beetle-psx/game.libretro.beetle-psx.so
}
-sha512sums="d36c7239b161769fa3e9d7274b9d3903355c8ac7ec2f6a3456d2c607acabc0ad3501f86c32656d4e300c84d5eeda7be61c05734a0013ed84146854774c0ad66c kodi-game-libretro-beetle-psx-0.9.44.22-Matrix.tar.gz"
+sha512sums="
+853ab086d35ca5f2a2cab924ef55d443bec63451a5b38951fe89b91822f80dcaf5b541dad293b6bd370785812e62c49ad8b2a9f5e819b2b4393eee4020e9c965 kodi-game-libretro-beetle-psx-0.9.44.53-Nexus.tar.gz
+"
diff --git a/testing/kodi-game-libretro-beetle-saturn/APKBUILD b/testing/kodi-game-libretro-beetle-saturn/APKBUILD
index 5f1b2a1ccf9..e8a549af524 100644
--- a/testing/kodi-game-libretro-beetle-saturn/APKBUILD
+++ b/testing/kodi-game-libretro-beetle-saturn/APKBUILD
@@ -1,21 +1,21 @@
# Contributor: Damian Kurek <starfire24680@gmail.com>
# Maintainer: Damian Kurek <starfire24680@gmail.com>
pkgname=kodi-game-libretro-beetle-saturn
-pkgver=1.22.2.18
-_realname=Matrix
-pkgrel=1
+pkgver=1.29.0.40
+_realname=Nexus
+pkgrel=0
pkgdesc="Beetle-Saturn for Kodi"
options="!check" # no test suite
url="https://github.com/kodi-game/game.libretro.beetle-saturn"
-arch="x86 x86_64 aarch64 armv7" # kodi
+arch="x86_64 aarch64 armv7" # kodi is available only on these architectures
license="GPL-2.0-only"
-makedepends="cmake kodi-dev"
+makedepends="cmake kodi-dev samurai"
depends="kodi-game-libretro libretro-beetle-saturn"
source="$pkgname-$pkgver-$_realname.tar.gz::https://github.com/kodi-game/game.libretro.beetle-saturn/archive/$pkgver-$_realname.tar.gz"
builddir="$srcdir/game.libretro.beetle-saturn-$pkgver-$_realname"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi
@@ -23,7 +23,7 @@ build() {
}
package() {
- DESTDIR="$pkgdir" cmake --build build --target install
+ DESTDIR="$pkgdir" cmake --install build
rm -r "$pkgdir"/usr/share/kodi/addons/game.libretro.beetle-saturn/resources/icon.png \
"$pkgdir"/usr/lib/kodi/addons/game.libretro.beetle-saturn/game.libretro.beetle-saturn.so
ln -s /usr/lib/libretro/mednafen_saturn_libretro.so \
@@ -31,4 +31,6 @@ package() {
sed -i '/<assets>/,/<\/assets>/d' "$pkgdir"/usr/share/kodi/addons/game.libretro.beetle-saturn/addon.xml
}
-sha512sums="7e8e7074891a5dc49670cbf1849f1d5c51028466a3b2284bf6cb8ad921d377a504ffc0700de08d8aa938eccea359fecf98175f873a92daa1aeb216eaaa1c1c33 kodi-game-libretro-beetle-saturn-1.22.2.18-Matrix.tar.gz"
+sha512sums="
+20476e6cec3c239eb3024612ba46886176b1fc1c3c97cd09579948d2f7cbf3906c97a5957e0fc0c8e79c05c045d8faec5309e59243eb19eca05be6a577996873 kodi-game-libretro-beetle-saturn-1.29.0.40-Nexus.tar.gz
+"
diff --git a/testing/kodi-game-libretro-beetle-supergrafx/APKBUILD b/testing/kodi-game-libretro-beetle-supergrafx/APKBUILD
index e340ed8a47a..f2841da586c 100644
--- a/testing/kodi-game-libretro-beetle-supergrafx/APKBUILD
+++ b/testing/kodi-game-libretro-beetle-supergrafx/APKBUILD
@@ -1,21 +1,21 @@
# Contributor: Damian Kurek <starfire24680@gmail.com>
# Maintainer: Damian Kurek <starfire24680@gmail.com>
pkgname=kodi-game-libretro-beetle-supergrafx
-pkgver=1.23.0.15
-_realname=Matrix
-pkgrel=1
+pkgver=1.29.0.39
+_realname=Nexus
+pkgrel=0
pkgdesc="Beetle-Supergrafx for Kodi"
options="!check" # no test suite
url="https://github.com/kodi-game/game.libretro.beetle-supergrafx"
-arch="x86 x86_64 aarch64 armv7" # kodi
+arch="x86_64 aarch64 armv7" # kodi is available only on these architectures
license="GPL-2.0-only"
-makedepends="cmake kodi-dev"
+makedepends="cmake kodi-dev samurai"
depends="kodi-game-libretro libretro-beetle-supergrafx"
source="$pkgname-$pkgver-$_realname.tar.gz::https://github.com/kodi-game/game.libretro.beetle-supergrafx/archive/$pkgver-$_realname.tar.gz"
builddir="$srcdir/game.libretro.beetle-supergrafx-$pkgver-$_realname"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi
@@ -23,7 +23,7 @@ build() {
}
package() {
- DESTDIR="$pkgdir" cmake --build build --target install
+ DESTDIR="$pkgdir" cmake --install build
rm -r "$pkgdir"/usr/share/kodi/addons/game.libretro.beetle-supergrafx/resources/icon.png \
"$pkgdir"/usr/share/kodi/addons/game.libretro.beetle-supergrafx/resources/screenshot* \
"$pkgdir"/usr/lib/kodi/addons/game.libretro.beetle-supergrafx/game.libretro.beetle-supergrafx.so
@@ -32,4 +32,6 @@ package() {
sed -i '/<assets>/,/<\/assets>/d' "$pkgdir"/usr/share/kodi/addons/game.libretro.beetle-supergrafx/addon.xml
}
-sha512sums="119142dea17078d9275e38552a1719faa4ee2b34a15f2896d42a32cf551b1abb1024f624da0e979cdead0581703c07bd230f33a3669ccef4b85af1ac287ea847 kodi-game-libretro-beetle-supergrafx-1.23.0.15-Matrix.tar.gz"
+sha512sums="
+6f23cf859d19fc4a5577b8214fb56a379f3776f6bdf53265c9ae3d0e1da4699a45037610f52c366d23be3554a84e06d600fed1a70bd53d99a22163da42bd309d kodi-game-libretro-beetle-supergrafx-1.29.0.39-Nexus.tar.gz
+"
diff --git a/testing/kodi-game-libretro-beetle-vb/APKBUILD b/testing/kodi-game-libretro-beetle-vb/APKBUILD
index a723e9d171d..19011b245e0 100644
--- a/testing/kodi-game-libretro-beetle-vb/APKBUILD
+++ b/testing/kodi-game-libretro-beetle-vb/APKBUILD
@@ -1,30 +1,29 @@
# Contributor: Damian Kurek <starfire24680@gmail.com>
# Maintainer: Damian Kurek <starfire24680@gmail.com>
pkgname=kodi-game-libretro-beetle-vb
-pkgver=0.9.36.14
-_realname=Matrix
+pkgver=1.31.0.34
+_realname=Nexus
pkgrel=0
pkgdesc="Beetle-VB for Kodi"
options="!check" # no test suite
url="https://github.com/kodi-game/game.libretro.beetle-vb"
-arch="x86 x86_64 aarch64 armv7" # kodi
+arch="x86_64 aarch64 armv7" # kodi is available only on these architectures
license="GPL-2.0-only"
-makedepends="cmake kodi-dev"
+makedepends="cmake kodi-dev samurai"
depends="kodi-game-libretro libretro-beetle-vb"
source="$pkgname-$pkgver-$_realname.tar.gz::https://github.com/kodi-game/game.libretro.beetle-vb/archive/$pkgver-$_realname.tar.gz"
builddir="$srcdir/game.libretro.beetle-vb-$pkgver-$_realname"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi \
- -DUSE_LTO=1
+ -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi
cmake --build build
}
package() {
- DESTDIR="$pkgdir" cmake --build build --target install
+ DESTDIR="$pkgdir" cmake --install build
rm -r "$pkgdir"/usr/share/kodi/addons/game.libretro.beetle-vb/resources/icon.png \
"$pkgdir"/usr/share/kodi/addons/game.libretro.beetle-vb/resources/screenshot* \
"$pkgdir"/usr/lib/kodi/addons/game.libretro.beetle-vb/game.libretro.beetle-vb.so
@@ -34,4 +33,6 @@ package() {
}
-sha512sums="fd287e6d7bdae25f091cb9018298c88d960de3e615f0cb76beec04f9130f2c43d194d28ff1ea998f2c01882e5aff9e512a6b9da323d7151ab784363ec69585c9 kodi-game-libretro-beetle-vb-0.9.36.14-Matrix.tar.gz"
+sha512sums="
+42ab8efca903f90e7abf1ad97b89e89b5d69793c944c795311237551144be71c319b0493404798067c7163e9863aa685c34b4eada31fa4c21de5c05d9d8577c7 kodi-game-libretro-beetle-vb-1.31.0.34-Nexus.tar.gz
+"
diff --git a/testing/kodi-game-libretro-beetle-wswan/APKBUILD b/testing/kodi-game-libretro-beetle-wswan/APKBUILD
index ea864f018af..7b20fbcd50c 100644
--- a/testing/kodi-game-libretro-beetle-wswan/APKBUILD
+++ b/testing/kodi-game-libretro-beetle-wswan/APKBUILD
@@ -1,30 +1,29 @@
# Contributor: Damian Kurek <starfire24680@gmail.com>
# Maintainer: Damian Kurek <starfire24680@gmail.com>
pkgname=kodi-game-libretro-beetle-wswan
-pkgver=0.9.35.16
-_realname=Matrix
+pkgver=0.9.35.41
+_realname=Nexus
pkgrel=0
pkgdesc="Beetle-wswan for Kodi"
options="!check" # no test suite
url="https://github.com/kodi-game/game.libretro.beetle-wswan"
-arch="x86 x86_64 aarch64 armv7" # kodi
+arch="x86_64 aarch64 armv7" # kodi is available only on these architectures
license="GPL-2.0-only"
-makedepends="cmake kodi-dev"
+makedepends="cmake kodi-dev samurai"
depends="kodi-game-libretro libretro-beetle-wswan"
source="$pkgname-$pkgver-$_realname.tar.gz::https://github.com/kodi-game/game.libretro.beetle-wswan/archive/$pkgver-$_realname.tar.gz"
builddir="$srcdir/game.libretro.beetle-wswan-$pkgver-$_realname"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi \
- -DUSE_LTO=1
+ -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi
cmake --build build
}
package() {
- DESTDIR="$pkgdir" cmake --build build --target install
+ DESTDIR="$pkgdir" cmake --install build
rm -r "$pkgdir"/usr/share/kodi/addons/game.libretro.beetle-wswan/resources/icon.png \
"$pkgdir"/usr/share/kodi/addons/game.libretro.beetle-wswan/resources/screenshot* \
"$pkgdir"/usr/lib/kodi/addons/game.libretro.beetle-wswan/game.libretro.beetle-wswan.so
@@ -33,4 +32,6 @@ package() {
sed -i '/<assets>/,/<\/assets>/d' "$pkgdir"/usr/share/kodi/addons/game.libretro.beetle-wswan/addon.xml
}
-sha512sums="767aca213b4bf4f9b0987b5aded334f1cb83ecc388beaafff9ee1c00787031c643379aae04cf63c3f2da8b61e35c09809734a65340483c4c292d6108abf62c75 kodi-game-libretro-beetle-wswan-0.9.35.16-Matrix.tar.gz"
+sha512sums="
+b44d73836867a43ba137e116a6b77c7ba8df68d70a492ea9f48dd394ec88bcdd635dcd497eeec4965bd117ef43b7872d671cc2d3e3194328156df5b6555987bc kodi-game-libretro-beetle-wswan-0.9.35.41-Nexus.tar.gz
+"
diff --git a/testing/kodi-game-libretro-desmume/APKBUILD b/testing/kodi-game-libretro-desmume/APKBUILD
index 4ba9f510e27..453fcdfda6b 100644
--- a/testing/kodi-game-libretro-desmume/APKBUILD
+++ b/testing/kodi-game-libretro-desmume/APKBUILD
@@ -1,33 +1,34 @@
# Contributor: Damian Kurek <starfire24680@gmail.com>
# Maintainer: Damian Kurek <starfire24680@gmail.com>
pkgname=kodi-game-libretro-desmume
-pkgver=0.0.1.9
-_realname=Matrix
-pkgrel=1
+pkgver=0.0.1.28
+_realname=Nexus
+pkgrel=0
pkgdesc="DESMuME GameClient for Kodi"
options="!check" # no test suite
url="https://github.com/kodi-game/game.libretro.desmume"
-arch="x86 x86_64 aarch64 armv7" # kodi
+arch="x86_64 aarch64 armv7" # kodi is available only on these architectures
license="GPL-2.0-or-later"
-makedepends="cmake libretro-desmume kodi-dev"
depends="kodi-game-libretro libretro-desmume"
+makedepends="cmake kodi-dev samurai"
source="$pkgname-$pkgver-$_realname.tar.gz::https://github.com/kodi-game/game.libretro.desmume/archive/$pkgver-$_realname.tar.gz"
builddir="$srcdir/game.libretro.desmume-$pkgver-$_realname"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi \
- -DUSE_LTO=1
+ -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi
cmake --build build
}
package() {
- DESTDIR="$pkgdir" cmake --build build --target install
+ DESTDIR="$pkgdir" cmake --install build
rm -f "$pkgdir"/usr/lib/kodi/addons/game.libretro.desmume/game.libretro.desmume.so
ln -s /usr/lib/libretro/desmume_libretro.so \
"$pkgdir"/usr/lib/kodi/addons/game.libretro.desmume/game.libretro.desmume.so
}
-sha512sums="222cad6c58e0dd4bac6b124cf44afa659f6f7ed42af95187548873d1eb7348589af76e7a2b91724e5bc78049bfe52bfe818c003bfb02d213616bb45416934fab kodi-game-libretro-desmume-0.0.1.9-Matrix.tar.gz"
+sha512sums="
+d9d419aaee1c8cfd8fd572ffd822fa74551e34ededed2595512dcf1945f3027a35523a4cda73a3207132e8942259ce4ad123b3fdcd92ad2977291bb3d10750f6 kodi-game-libretro-desmume-0.0.1.28-Nexus.tar.gz
+"
diff --git a/testing/kodi-game-libretro-dosbox/APKBUILD b/testing/kodi-game-libretro-dosbox/APKBUILD
index 79baa16ba70..6be1a556dab 100644
--- a/testing/kodi-game-libretro-dosbox/APKBUILD
+++ b/testing/kodi-game-libretro-dosbox/APKBUILD
@@ -1,36 +1,34 @@
# Contributor: Damian Kurek <starfire24680@gmail.com>
# Maintainer: Damian Kurek <starfire24680@gmail.com>
pkgname=kodi-game-libretro-dosbox
-pkgver=0.74.0.9
-_realname=Matrix
+pkgver=0.74.0.25
+_realname=Nexus
pkgrel=0
pkgdesc="DosBox GameClient for XBMC"
options="!check" # no test suite
url="https://github.com/kodi-game/game.libretro.dosbox"
-arch="x86 x86_64 aarch64 armv7" # kodi is available only on those arches
+arch="x86_64 aarch64 armv7" # kodi is available only on these architectures
license="GPL-2.0-only"
-makedepends="cmake kodi-dev"
+makedepends="cmake kodi-dev samurai"
depends="kodi-game-libretro libretro-dosbox"
source="$pkgname-$pkgver-$_realname.tar.gz::https://github.com/kodi-game/game.libretro.dosbox/archive/$pkgver-$_realname.tar.gz"
builddir="$srcdir/game.libretro.dosbox-$pkgver-$_realname"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi \
- -DUSE_LTO=1
+ -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi
cmake --build build
}
package() {
- DESTDIR="$pkgdir" cmake --build build --target install
- rm -r "$pkgdir"/usr/share/kodi/addons/game.libretro.dosbox/changelog.txt \
- "$pkgdir"/usr/lib/kodi/addons/game.libretro.dosbox/game.libretro.dosbox.so
+ DESTDIR="$pkgdir" cmake --install build
+ rm "$pkgdir"/usr/lib/kodi/addons/game.libretro.dosbox/game.libretro.dosbox.so
ln -s /usr/lib/libretro/dosbox_libretro.so \
"$pkgdir"/usr/lib/kodi/addons/game.libretro.dosbox/game.libretro.dosbox.so
}
sha512sums="
-1915f3156acfdf525d974b290af5204902e18a2d9505b1391b4fc95dd59d5e2c729610ff5024c6bf56af79d822ad0aba0b9680da8ba932d7357dbcd847414a07 kodi-game-libretro-dosbox-0.74.0.9-Matrix.tar.gz
+13fe96afaac484cab0a1db242bc6f80b8a732543ee1b554dece3b099f7e308338d96564a6ad7c469aee07363ddcfc387aa126613d3ed203faaff19a9cadc08b9 kodi-game-libretro-dosbox-0.74.0.25-Nexus.tar.gz
"
diff --git a/testing/kodi-game-libretro-fbneo/APKBUILD b/testing/kodi-game-libretro-fbneo/APKBUILD
index c6b327e7597..bcf0316f6a1 100644
--- a/testing/kodi-game-libretro-fbneo/APKBUILD
+++ b/testing/kodi-game-libretro-fbneo/APKBUILD
@@ -1,21 +1,21 @@
# Contributor: Damian Kurek <starfire24680@gmail.com>
# Maintainer: Damian Kurek <starfire24680@gmail.com>
pkgname=kodi-game-libretro-fbneo
-pkgver=1.0.0.34
-_realname=Matrix
+pkgver=1.0.0.71
+_realname=Nexus
pkgrel=0
pkgdesc="FinalBurn Neo GameClient for Kodi"
options="!check" # no test suite
url="https://github.com/kodi-game/game.libretro.fbneo"
-arch="x86 x86_64 aarch64 armv7" # kodi is available only on those architectures
+arch="x86_64 aarch64 armv7" # kodi is available only on these architectures
license="GPL-2.0-or-later"
-makedepends="cmake libretro-fbneo kodi-dev"
depends="kodi-game-libretro libretro-fbneo"
+makedepends="cmake kodi-dev samurai"
source="$pkgname-$pkgver-$_realname.tar.gz::https://github.com/kodi-game/game.libretro.fbneo/archive/$pkgver-$_realname.tar.gz"
builddir="$srcdir/game.libretro.fbneo-$pkgver-$_realname"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi
@@ -23,12 +23,12 @@ build() {
}
package() {
- DESTDIR="$pkgdir" cmake --build build --target install
+ DESTDIR="$pkgdir" cmake --install build
rm -f "$pkgdir"/usr/lib/kodi/addons/game.libretro.fbneo/game.libretro.fbneo.so
ln -s /usr/lib/libretro/fbneo_libretro.so \
"$pkgdir"/usr/lib/kodi/addons/game.libretro.fbneo/game.libretro.fbneo.so
}
sha512sums="
-fd2ee01307ca0ef80af735ea06f302d6ec6d5be39d95eaa75c56c360d3d3418d1dfcc41141c00d0d8b835aa54bbd4061880f43c39fbfcb535f3d7b54d82ed244 kodi-game-libretro-fbneo-1.0.0.34-Matrix.tar.gz
+aff721d7d062f1e58c21340d0c2f3500ccd0c45350179b36c14e6015a04386899517908eddceaea80087372d11600e8f7af92c7ae198a0a77acb190e443ec4b6 kodi-game-libretro-fbneo-1.0.0.71-Nexus.tar.gz
"
diff --git a/testing/kodi-game-libretro-frodo/APKBUILD b/testing/kodi-game-libretro-frodo/APKBUILD
index 2f868672e45..af221dda812 100644
--- a/testing/kodi-game-libretro-frodo/APKBUILD
+++ b/testing/kodi-game-libretro-frodo/APKBUILD
@@ -1,33 +1,34 @@
# Contributor: Damian Kurek <starfire24680@gmail.com>
# Maintainer: Damian Kurek <starfire24680@gmail.com>
pkgname=kodi-game-libretro-frodo
-pkgver=0.0.1.5
-_realname=Matrix
+pkgver=0.0.1.25
+_realname=Nexus
pkgrel=0
pkgdesc="Commodore - C64 (Frodo) game addon for Kodi"
options="!check" # no test suite
url="https://github.com/kodi-game/game.libretro.frodo"
-arch="x86 x86_64 aarch64 armv7" # kodi
+arch="x86_64 aarch64 armv7" # kodi is available only on these architectures
license="GPL-2.0-only"
-makedepends="cmake kodi-dev"
+makedepends="cmake kodi-dev samurai"
depends="kodi-game-libretro libretro-frodo"
source="$pkgname-$pkgver-$_realname.tar.gz::https://github.com/kodi-game/game.libretro.frodo/archive/$pkgver-$_realname.tar.gz"
builddir="$srcdir/game.libretro.frodo-$pkgver-$_realname"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi \
- -DUSE_LTO=1
+ -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi
cmake --build build
}
package() {
- DESTDIR="$pkgdir" cmake --build build --target install
+ DESTDIR="$pkgdir" cmake --install build
rm -r "$pkgdir"/usr/lib/kodi/addons/game.libretro.frodo/game.libretro.frodo.so
ln -s /usr/lib/libretro/frodo_libretro.so \
"$pkgdir"/usr/lib/kodi/addons/game.libretro.frodo/game.libretro.frodo.so
}
-sha512sums="3ce19c82ad0021c3f27d91dd2b3ab4fe152091e8faca8a1bc71878ffe15a936529e86b691b0dcf8348d769580a604be163ad35d0f6b1b5d8a978b994ac144db6 kodi-game-libretro-frodo-0.0.1.5-Matrix.tar.gz"
+sha512sums="
+f96e40fa6f177bb45a353a31fe121d1040166419fc589f8aee28ebc0da25083657973c23c673a246b6375c60c909c9d7eeb92738cd3a96212547e48e66f3126e kodi-game-libretro-frodo-0.0.1.25-Nexus.tar.gz
+"
diff --git a/testing/kodi-game-libretro-mame2000/APKBUILD b/testing/kodi-game-libretro-mame2000/APKBUILD
index a3567b49e84..f510035af12 100644
--- a/testing/kodi-game-libretro-mame2000/APKBUILD
+++ b/testing/kodi-game-libretro-mame2000/APKBUILD
@@ -1,22 +1,22 @@
# Contributor: Damian Kurek <starfire24680@gmail.com>
# Maintainer: Damian Kurek <starfire24680@gmail.com>
pkgname=kodi-game-libretro-mame2000
-pkgver=0.37.0.12
-_realname=Matrix
-pkgrel=1
+pkgver=0.37.0.32
+_realname=Nexus
+pkgrel=0
pkgdesc="MAME 2000 GameClient for Kodi"
options="!check" # no test suite
url="https://github.com/kodi-game/game.libretro.mame2000"
-arch="x86 x86_64" # kodi
+arch="x86_64 armv7" # kodi is available only on these architectures
#aarch64: blocked by libretro-mame2000 (why?)
license="custom"
-makedepends="cmake kodi-dev"
+makedepends="cmake kodi-dev samurai"
depends="kodi-game-libretro libretro-mame2000"
source="$pkgname-$pkgver-$_realname.tar.gz::https://github.com/kodi-game/game.libretro.mame2000/archive/$pkgver-$_realname.tar.gz"
builddir="$srcdir/game.libretro.mame2000-$pkgver-$_realname"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi
@@ -24,10 +24,12 @@ build() {
}
package() {
- DESTDIR="$pkgdir" cmake --build build --target install
+ DESTDIR="$pkgdir" cmake --install build
rm -r "$pkgdir"/usr/lib/kodi/addons/game.libretro.mame2000/game.libretro.mame2000.so
ln -s /usr/lib/libretro/mame2000_libretro.so \
"$pkgdir"/usr/lib/kodi/addons/game.libretro.mame2000/game.libretro.mame2000.so
}
-sha512sums="d15e205c769f214796ee5640e62378164980ab093b92d97b7b36d98633f3e956de6dfd7beb60ef06cfd6d1d338adf07c7ea27b50b2741f82485aa3ecff801c7d kodi-game-libretro-mame2000-0.37.0.12-Matrix.tar.gz"
+sha512sums="
+23cd9cebfc222d49d16e820b508fe4303a9f3429f625aa64a3b68ee11264bf887b4172d7cf3d30000a936927e5da59105cc4d4e815f762ae0afd960115f7bc27 kodi-game-libretro-mame2000-0.37.0.32-Nexus.tar.gz
+"
diff --git a/testing/kodi-game-libretro-mame2003/APKBUILD b/testing/kodi-game-libretro-mame2003/APKBUILD
index f415e440313..ba9b6a46bc6 100644
--- a/testing/kodi-game-libretro-mame2003/APKBUILD
+++ b/testing/kodi-game-libretro-mame2003/APKBUILD
@@ -1,21 +1,21 @@
# Contributor: Damian Kurek <starfire24680@gmail.com>
# Maintainer: Damian Kurek <starfire24680@gmail.com>
pkgname=kodi-game-libretro-mame2003
-pkgver=0.78.0.29
-_realname=Matrix
-pkgrel=1
+pkgver=0.78.0.54
+_realname=Nexus
+pkgrel=0
pkgdesc="MAME 2003 GameClient for Kodi"
options="!check" # no test suite
url="https://github.com/kodi-game/game.libretro.mame2003"
-arch="x86 x86_64 aarch64 armv7" # kodi
+arch="x86_64 aarch64 armv7" # kodi is available only on these architectures
license="custom"
-makedepends="cmake kodi-dev"
+makedepends="cmake kodi-dev samurai"
depends="kodi-game-libretro libretro-mame2003"
source="$pkgname-$pkgver-$_realname.tar.gz::https://github.com/kodi-game/game.libretro.mame2003/archive/$pkgver-$_realname.tar.gz"
builddir="$srcdir/game.libretro.mame2003-$pkgver-$_realname"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi
@@ -23,10 +23,12 @@ build() {
}
package() {
- DESTDIR="$pkgdir" cmake --build build --target install
+ DESTDIR="$pkgdir" cmake --install build
rm -r "$pkgdir"/usr/lib/kodi/addons/game.libretro.mame2003/game.libretro.mame2003.so
ln -s /usr/lib/libretro/mame2003_libretro.so \
"$pkgdir"/usr/lib/kodi/addons/game.libretro.mame2003/game.libretro.mame2003.so
}
-sha512sums="72614af0cdc17b45ddd4fc9ad498eefab2f5763a9a6f8757677ef623c74c52375a959649ad59a22d4b39bd6cf0f51151112f99404524d6e355104e25bdf50a67 kodi-game-libretro-mame2003-0.78.0.29-Matrix.tar.gz"
+sha512sums="
+23eb904bd16b8aff0eb32754635e1498a3df962e1a63c1402f4fead327267fd8c3375b27d1c4d0cd29b62e0552862d213ec6583c943196aac13a3bd3995b1874 kodi-game-libretro-mame2003-0.78.0.54-Nexus.tar.gz
+"
diff --git a/testing/kodi-game-libretro-mgba/APKBUILD b/testing/kodi-game-libretro-mgba/APKBUILD
index 245b19e45c5..479afbc0bbb 100644
--- a/testing/kodi-game-libretro-mgba/APKBUILD
+++ b/testing/kodi-game-libretro-mgba/APKBUILD
@@ -1,21 +1,21 @@
# Contributor: Damian Kurek <starfire24680@gmail.com>
# Maintainer: Damian Kurek <starfire24680@gmail.com>
pkgname=kodi-game-libretro-mgba
-pkgver=0.8.4.19
-_realname=Matrix
-pkgrel=1
+pkgver=0.11.0.44
+_realname=Nexus
+pkgrel=0
pkgdesc="mGBA for Kodi"
options="!check" # no test suite
url="https://github.com/kodi-game/game.libretro.mgba"
-arch="x86 x86_64 aarch64 armv7" # kodi
+arch="x86_64 aarch64 armv7" # kodi is available only on these architectures
license="MPL-2.0"
-makedepends="cmake kodi-dev"
+makedepends="cmake kodi-dev samurai"
depends="kodi-game-libretro libretro-mgba"
source="$pkgname-$pkgver-$_realname.tar.gz::https://github.com/kodi-game/game.libretro.mgba/archive/$pkgver-$_realname.tar.gz"
builddir="$srcdir/game.libretro.mgba-$pkgver-$_realname"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi
@@ -23,7 +23,7 @@ build() {
}
package() {
- DESTDIR="$pkgdir" cmake --build build --target install
+ DESTDIR="$pkgdir" cmake --install build
rm -r "$pkgdir"/usr/share/kodi/addons/game.libretro.mgba/resources/icon.png \
"$pkgdir"/usr/share/kodi/addons/game.libretro.mgba/resources/screenshot* \
"$pkgdir"/usr/lib/kodi/addons/game.libretro.mgba/game.libretro.mgba.so
@@ -32,4 +32,6 @@ package() {
sed -i '/<assets>/,/<\/assets>/d' "$pkgdir"/usr/share/kodi/addons/game.libretro.mgba/addon.xml
}
-sha512sums="380e7737af4eea765e843424345ccd2efce2e93bc21a207e2f865037323819f2a9935984c10b5ee21d04599ae9b7e97fc54a1574c528a5b4b2998fd79578edca kodi-game-libretro-mgba-0.8.4.19-Matrix.tar.gz"
+sha512sums="
+5ba66fae0349ffc8d0eb3760d1ac8e38cb83f7e75dfb50d942ac304fa60059e63449965a8a2480f1989f40e6527774ba8350f5cbc788d6fef33de1b872469f94 kodi-game-libretro-mgba-0.11.0.44-Nexus.tar.gz
+"
diff --git a/testing/kodi-game-libretro-mupen64plus-nx/APKBUILD b/testing/kodi-game-libretro-mupen64plus-nx/APKBUILD
index 710f8e691f9..de79343c67d 100644
--- a/testing/kodi-game-libretro-mupen64plus-nx/APKBUILD
+++ b/testing/kodi-game-libretro-mupen64plus-nx/APKBUILD
@@ -1,21 +1,21 @@
# Contributor: Damian Kurek <starfire24680@gmail.com>
# Maintainer: Damian Kurek <starfire24680@gmail.com>
pkgname=kodi-game-libretro-mupen64plus-nx
-pkgver=2.1.0.10
-_realname=Matrix
-pkgrel=1
+pkgver=2.5.0.40
+_realname=Nexus
+pkgrel=0
pkgdesc="N64 emulation library for the libretro API, based on Mupen64Plus"
options="!check" # no test suite
url="https://github.com/kodi-game/game.libretro.mupen64plus-nx"
-arch="x86_64" # blocked by libretro-mupen64plus
+arch="x86_64" # libretro-mupen64plus available only on these architectures
license="GPL-2.0-or-later"
-makedepends="cmake kodi-dev"
+makedepends="cmake kodi-dev samurai"
depends="kodi-game-libretro libretro-mupen64plus"
source="$pkgname-$pkgver-$_realname.tar.gz::https://github.com/kodi-game/game.libretro.mupen64plus-nx/archive/$pkgver-$_realname.tar.gz"
builddir="$srcdir/game.libretro.mupen64plus-nx-$pkgver-$_realname"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi
@@ -23,10 +23,12 @@ build() {
}
package() {
- DESTDIR="$pkgdir" cmake --build build --target install
+ DESTDIR="$pkgdir" cmake --install build
rm -r "$pkgdir"/usr/lib/kodi/addons/game.libretro.mupen64plus-nx/game.libretro.mupen64plus-nx.so
ln -s /usr/lib/libretro/mupen64plus_next_libretro.so \
"$pkgdir"/usr/lib/kodi/addons/game.libretro.mupen64plus-nx/game.libretro.mupen64plus-nx.so
}
-sha512sums="a45751fa5e3a41f20a45832ccba86a9aa47f7a87e0f5936a4407dc46316665d55f9e03cac0c0d3aea9720618943a3d7d75f17a0c6df58da1abda205136d1d280 kodi-game-libretro-mupen64plus-nx-2.1.0.10-Matrix.tar.gz"
+sha512sums="
+15ce92449a473e0cf0114797f1e3cad653138aa388d0b47198173494a4a1f8ca3ca7361e19f276b42c4dd9ef3d17c9f5685896aade1fad38f912b134eb334334 kodi-game-libretro-mupen64plus-nx-2.5.0.40-Nexus.tar.gz
+"
diff --git a/testing/kodi-game-libretro-nestopia/APKBUILD b/testing/kodi-game-libretro-nestopia/APKBUILD
index 8ac2c85087f..235c225683d 100644
--- a/testing/kodi-game-libretro-nestopia/APKBUILD
+++ b/testing/kodi-game-libretro-nestopia/APKBUILD
@@ -1,33 +1,31 @@
# Contributor: Damian Kurek <starfire24680@gmail.com>
# Maintainer: Damian Kurek <starfire24680@gmail.com>
pkgname=kodi-game-libretro-nestopia
-pkgver=1.51.0.16
-_realname=Matrix
+pkgver=1.52.0.41
+_realname=Nexus
pkgrel=0
pkgdesc="Nestopia GameClient for XBMC"
options="!check" # no test suite
url="https://github.com/kodi-game/game.libretro.nestopia"
-arch="x86 x86_64 aarch64 armv7" # kodi is available only on those arches
+arch="x86_64 aarch64 armv7" # kodi is available only on these architectures
license="GPL-2.0-or-later"
-makedepends="cmake kodi-dev"
+makedepends="cmake kodi-dev samurai"
depends="kodi-game-libretro libretro-nestopia"
source="$pkgname-$pkgver-$_realname.tar.gz::https://github.com/kodi-game/game.libretro.nestopia/archive/$pkgver-$_realname.tar.gz"
builddir="$srcdir/game.libretro.nestopia-$pkgver-$_realname"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi \
- -DUSE_LTO=1
+ -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi
cmake --build build
}
package() {
- DESTDIR="$pkgdir" cmake --build build --target install
+ DESTDIR="$pkgdir" cmake --install build
rm -r "$pkgdir"/usr/share/kodi/addons/game.libretro.nestopia/resources/icon.png \
"$pkgdir"/usr/share/kodi/addons/game.libretro.nestopia/resources/screenshot* \
- "$pkgdir"/usr/share/kodi/addons/game.libretro.nestopia/changelog.txt \
"$pkgdir"/usr/lib/kodi/addons/game.libretro.nestopia/game.libretro.nestopia.so
ln -s /usr/lib/libretro/nestopia_libretro.so \
"$pkgdir"/usr/lib/kodi/addons/game.libretro.nestopia/game.libretro.nestopia.so
@@ -35,5 +33,5 @@ package() {
}
sha512sums="
-04ba221323699f4a2a0efdf4f9daae48ab703e641cc3a65254fb654e3227f07b380c43a8d541c1371690cdced9040db5d2471eab26c3871cc3544290baf203db kodi-game-libretro-nestopia-1.51.0.16-Matrix.tar.gz
+86b893f699285c7c7e881f31af98109cd7045d03f93a93621d28f969cfae0c22bdc8e431d48a9313755880d8bf27912d8eb872cbd81041fa701aad83f0da7383 kodi-game-libretro-nestopia-1.52.0.41-Nexus.tar.gz
"
diff --git a/testing/kodi-game-libretro-snes9x/APKBUILD b/testing/kodi-game-libretro-snes9x/APKBUILD
index 9c1fb3f4868..aefba1b7967 100644
--- a/testing/kodi-game-libretro-snes9x/APKBUILD
+++ b/testing/kodi-game-libretro-snes9x/APKBUILD
@@ -1,21 +1,21 @@
# Contributor: Damian Kurek <starfire24680@gmail.com>
# Maintainer: Damian Kurek <starfire24680@gmail.com>
pkgname=kodi-game-libretro-snes9x
-pkgver=1.60.0.20
-_realname=Matrix
+pkgver=1.62.3.45
+_realname=Nexus
pkgrel=0
pkgdesc="Snes9X GameClient for XBMC"
options="!check" # no test suite
url="https://github.com/kodi-game/game.libretro.snes9x"
-arch="x86 x86_64 aarch64 armv7" # kodi is available only on those architectures
+arch="x86_64 aarch64 armv7" # kodi is available only on these architectures
license="custom"
-makedepends="cmake kodi-dev"
+makedepends="cmake kodi-dev samurai"
depends="kodi-game-libretro libretro-snes9x"
source="$pkgname-$pkgver-$_realname.tar.gz::https://github.com/kodi-game/game.libretro.snes9x/archive/$pkgver-$_realname.tar.gz"
builddir="$srcdir/game.libretro.snes9x-$pkgver-$_realname"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi
@@ -23,15 +23,14 @@ build() {
}
package() {
- DESTDIR="$pkgdir" cmake --build build --target install
+ DESTDIR="$pkgdir" cmake --install build
rm -r "$pkgdir"/usr/share/kodi/addons/game.libretro.snes9x/resources/icon.png \
"$pkgdir"/usr/share/kodi/addons/game.libretro.snes9x/resources/screenshot* \
- "$pkgdir"/usr/share/kodi/addons/game.libretro.snes9x/changelog.txt \
"$pkgdir"/usr/lib/kodi/addons/game.libretro.snes9x/game.libretro.snes9x.so
ln -s /usr/lib/libretro/snes9x_libretro.so \
"$pkgdir"/usr/lib/kodi/addons/game.libretro.snes9x/game.libretro.snes9x.so
}
sha512sums="
-8306989b775e26772b83362d3f9c9a3d581e661422280b57aa718035ce0222da35e1ad7c15ddcf8016cd0851e85c8d48c7487dcc7e04b1d760aed87817894513 kodi-game-libretro-snes9x-1.60.0.20-Matrix.tar.gz
+dd6903283059195975134662c9a1d8b2b1fb82ea1ea494c4a5087ac20c19d7b6ad3534351f1c2e1461041e9168a56f8b198dfb0b726e56e6b047a4c3f6d9abc7 kodi-game-libretro-snes9x-1.62.3.45-Nexus.tar.gz
"
diff --git a/testing/kodi-game-libretro-theodore/APKBUILD b/testing/kodi-game-libretro-theodore/APKBUILD
index 6fb65bfe91c..f6cc8b486a4 100644
--- a/testing/kodi-game-libretro-theodore/APKBUILD
+++ b/testing/kodi-game-libretro-theodore/APKBUILD
@@ -1,21 +1,21 @@
# Contributor: Damian Kurek <starfire24680@gmail.com>
# Maintainer: Damian Kurek <starfire24680@gmail.com>
pkgname=kodi-game-libretro-theodore
-pkgver=0.0.1.11
-_realname=Matrix
-pkgrel=1
+pkgver=0.0.1.32
+_realname=Nexus
+pkgrel=0
pkgdesc="Libretro core for Thomson MO/TO emulation"
options="!check" # no test suite
url="https://github.com/kodi-game/game.libretro.theodore"
-arch="x86 x86_64 aarch64 armv7" # kodi
+arch="x86_64 aarch64 armv7" # kodi is available only on these architectures
license="GPL-3.0-only"
-makedepends="cmake kodi-dev"
+makedepends="cmake kodi-dev samurai"
depends="kodi-game-libretro libretro-theodore"
source="$pkgname-$pkgver-$_realname.tar.gz::https://github.com/kodi-game/game.libretro.theodore/archive/$pkgver-$_realname.tar.gz"
builddir="$srcdir/game.libretro.theodore-$pkgver-$_realname"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi
@@ -23,7 +23,7 @@ build() {
}
package() {
- DESTDIR="$pkgdir" cmake --build build --target install
+ DESTDIR="$pkgdir" cmake --install build
rm -r "$pkgdir"/usr/share/kodi/addons/game.libretro.theodore/resources/icon.png \
"$pkgdir"/usr/share/kodi/addons/game.libretro.theodore/resources/screenshot* \
"$pkgdir"/usr/lib/kodi/addons/game.libretro.theodore/game.libretro.theodore.so
@@ -32,4 +32,6 @@ package() {
sed -i '/<assets>/,/<\/assets>/d' "$pkgdir"/usr/share/kodi/addons/game.libretro.theodore/addon.xml
}
-sha512sums="14bdae1c11963bd9a716a4e76870f66bad623fa2330036fe6acc01edbf246dcbae9b2104c860b14230a406abb060fed5f1795de3de6bbec01547e5ce2794e5b0 kodi-game-libretro-theodore-0.0.1.11-Matrix.tar.gz"
+sha512sums="
+c24c015361cd8c35152fe8f651aa31044c7f33836942f0d6696e4fe670f9d5dfcd39d49a5cd803e91518ddedcfa59bf14a8cabc06219dafdf16d4d6860145844 kodi-game-libretro-theodore-0.0.1.32-Nexus.tar.gz
+"
diff --git a/testing/kodi-game-libretro/APKBUILD b/testing/kodi-game-libretro/APKBUILD
index 2f484a5b89b..9f73b7e5840 100644
--- a/testing/kodi-game-libretro/APKBUILD
+++ b/testing/kodi-game-libretro/APKBUILD
@@ -1,25 +1,24 @@
# Contributor: Damian Kurek <starfire24680@gmail.com>
# Maintainer: Damian Kurek <starfire24680@gmail.com>
pkgname=kodi-game-libretro
-pkgver=2.2.0
-_realname=Matrix
+pkgver=20.1.0
+_realname=Nexus
pkgrel=0
pkgdesc="Libretro compatibility layer for the Kodi Game API"
options="!check" # no test suite
url="https://github.com/kodi-game/game.libretro"
-arch="x86 x86_64 aarch64 armv7" # kodi
+arch="x86_64 aarch64 armv7" # kodi is available only on these architectures
license="GPL-2.0-only"
-makedepends="cmake kodi-dev"
+makedepends="cmake kodi-dev samurai"
depends="libretro-core-info"
source="$pkgname-$pkgver-$_realname.tar.gz::https://github.com/kodi-game/game.libretro/archive/$pkgver-$_realname.tar.gz"
builddir="$srcdir/game.libretro-$pkgver-$_realname"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi \
- -DUSE_LTO=1
+ -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi
cmake --build build
}
@@ -27,4 +26,6 @@ package() {
DESTDIR="$pkgdir" cmake --build build --target install
}
-sha512sums="f1a5671b468ebf0ea3a86b757ae2481115bfb38082043757aa94d6f193b6eea560b37ccafafe63e686b729d80aa89ac58640899900894d0a72472badadbf27ac kodi-game-libretro-2.2.0-Matrix.tar.gz"
+sha512sums="
+df1ea78b978a753b8698e808cd241fafc34d731e38d4f165b713e2bb836e9b1353ea6d8506e2f4915116e5e430286903615faa7eb6c3526f163e7cba88cedabf kodi-game-libretro-20.1.0-Nexus.tar.gz
+"
diff --git a/testing/kodi-inputstream-adaptive/APKBUILD b/testing/kodi-inputstream-adaptive/APKBUILD
index 1951481bd7e..5268c6af3aa 100644
--- a/testing/kodi-inputstream-adaptive/APKBUILD
+++ b/testing/kodi-inputstream-adaptive/APKBUILD
@@ -1,34 +1,41 @@
# Contributor: Damian Kurek <starfire24680@gmail.com>
# Maintainer: Damian Kurek <starfire24680@gmail.com>
pkgname=kodi-inputstream-adaptive
-pkgver=2.6.23
-_realname=Matrix
+pkgver=20.3.12
+_realname=Nexus
pkgrel=0
pkgdesc="kodi inputstream addon for several manifest types"
-url="https://github.com/peak3d/inputstream.adaptive"
-arch="x86 x86_64 aarch64" # tests fail on armv7
+url="https://github.com/xbmc/inputstream.adaptive"
+arch="x86_64 aarch64 armv7" # kodi is available only on these architectures
license="GPL-2.0-only"
-makedepends="cmake expat-dev kodi-dev"
-source="$pkgname-$pkgver-$_realname.tar.gz::https://github.com/peak3d/inputstream.adaptive/archive/$pkgver-$_realname.tar.gz"
+makedepends="cmake expat-dev kodi-dev samurai"
+source="$pkgname-$pkgver-$_realname.tar.gz::https://github.com/xbmc/inputstream.adaptive/archive/$pkgver-$_realname.tar.gz
+ "
builddir="$srcdir/inputstream.adaptive-$pkgver-$_realname"
+options="net" # special bento4
+
+# fails some string comparison
+case "$CARCH" in
+armv7) options="$options !check" ;;
+esac
build() {
- cmake -B build \
+ cmake -B build -G Ninja -Wno-dev \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi \
- -DUSE_LTO=1
- make -C build
+ -DENABLE_INTERNAL_BENTO4=ON
+ cmake --build build
}
check() {
- make -C build test
+ ctest --test-dir build --output-on-failure
}
package() {
- make -C build DESTDIR="$pkgdir" install
+ DESTDIR="$pkgdir" cmake --install build
}
sha512sums="
-8aa33acf1c4658d6d515bc92972e42c6a32c3a03a2e51f381b19452f7d214b5f5e770c6a62b78618cf8800157c20767629f9de3fa5920a800c559f720a36f808 kodi-inputstream-adaptive-2.6.23-Matrix.tar.gz
+269f568ae9830b21ea62659b12e7d9a9b7dc27ac3df1c60802ce5a36902ca0e83e69b609bbd44ca82d91a0b8749fdb0e83bb3472d41534c10fc8d197fed0ae8b kodi-inputstream-adaptive-20.3.12-Nexus.tar.gz
"
diff --git a/testing/kodi-inputstream-ffmpegdirect/APKBUILD b/testing/kodi-inputstream-ffmpegdirect/APKBUILD
index 6fa99325195..4d927268694 100644
--- a/testing/kodi-inputstream-ffmpegdirect/APKBUILD
+++ b/testing/kodi-inputstream-ffmpegdirect/APKBUILD
@@ -1,30 +1,35 @@
# Contributor: Damian Kurek <starfire24680@gmail.com>
# Maintainer: Damian Kurek <starfire24680@gmail.com>
pkgname=kodi-inputstream-ffmpegdirect
-pkgver=1.21.8
-_realname=Matrix
-pkgrel=0
+pkgver=20.5.0
+_realname=Nexus
+pkgrel=1
pkgdesc="Supports streams opened by FFmpeg's libavformat or Kodi's cURL such as plain TS, HLS and DASH (non-DRM) as well as many others"
options="!check" # no test suite
url="https://github.com/xbmc/inputstream.ffmpegdirect"
-arch="x86 x86_64 aarch64 armv7" # kodi
+arch="x86_64 aarch64 armv7" # kodi is available only on these architectures
license="GPL-2.0-only"
-makedepends="cmake kodi-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/xbmc/inputstream.ffmpegdirect/archive/$pkgver-$_realname.tar.gz"
+makedepends="cmake kodi-dev samurai"
+source="$pkgname-$pkgver.tar.gz::https://github.com/xbmc/inputstream.ffmpegdirect/archive/$pkgver-$_realname.tar.gz
+ ctime.patch
+ gcc13.patch
+ "
builddir="$srcdir/inputstream.ffmpegdirect-$pkgver-$_realname"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi
- make -C build
+ cmake --build build
}
package() {
- make -C build DESTDIR="$pkgdir" install
+ DESTDIR="$pkgdir" cmake --install build
}
sha512sums="
-d303a96f3a728356d4ed4fe841288de9ee545d8a20e9dae611f9adeffca66eaeee462f44ce15a1fc2e8790a1c6b2b376cc349ed3857baea4d6ac191f0de22854 kodi-inputstream-ffmpegdirect-1.21.8.tar.gz
+9db8e25f04400635e13cf7c79f7079be9c7ffbf427423abcfc449dcd06f6259dcf9ed1ad1eae1563db239978c8399e054e7c6adcbebb5cc70c4de1c01643d074 kodi-inputstream-ffmpegdirect-20.5.0.tar.gz
+9483f8b0b8fafc269f2aeb6156ab7f798154ada57a0dd7cc0578605cfeb90546a7a79de70df67847aaf343a1d86896f9ee2eab9f29872063135902fc370d9f17 ctime.patch
+29d5dcb312cbfa9b73f776688c8db7a3488ae8cff172b7585883d2d0dfef487dc49e8ccbe6de74ad7b4e0d4abeb9c12285a5c06726db55b76a8af3b06289c478 gcc13.patch
"
diff --git a/testing/kodi-inputstream-ffmpegdirect/ctime.patch b/testing/kodi-inputstream-ffmpegdirect/ctime.patch
new file mode 100644
index 00000000000..75936aa9d1c
--- /dev/null
+++ b/testing/kodi-inputstream-ffmpegdirect/ctime.patch
@@ -0,0 +1,12 @@
+diff --git a/src/utils/Properties.h b/src/utils/Properties.h
+index e068052..e992946 100644
+--- a/src/utils/Properties.h
++++ b/src/utils/Properties.h
+@@ -7,6 +7,7 @@
+
+ #pragma once
+
++#include <ctime>
+ #include <string>
+
+ namespace ffmpegdirect
diff --git a/testing/kodi-inputstream-ffmpegdirect/gcc13.patch b/testing/kodi-inputstream-ffmpegdirect/gcc13.patch
new file mode 100644
index 00000000000..05761ba9c42
--- /dev/null
+++ b/testing/kodi-inputstream-ffmpegdirect/gcc13.patch
@@ -0,0 +1,24 @@
+diff --git a/src/utils/DiskUtils.h b/src/utils/DiskUtils.h
+index 79e3426..f900ec5 100644
+--- a/src/utils/DiskUtils.h
++++ b/src/utils/DiskUtils.h
+@@ -7,6 +7,7 @@
+
+ #pragma once
+
++#include <cstdint>
+ #include <string>
+
+ namespace ffmpegdirect
+diff --git a/src/utils/HttpProxy.h b/src/utils/HttpProxy.h
+index eb0c99c..00841af 100644
+--- a/src/utils/HttpProxy.h
++++ b/src/utils/HttpProxy.h
+@@ -7,6 +7,7 @@
+
+ #pragma once
+
++#include <cstdint>
+ #include <string>
+
+ namespace ffmpegdirect
diff --git a/testing/kodi-inputstream-rtmp/APKBUILD b/testing/kodi-inputstream-rtmp/APKBUILD
index 206b2eab014..e2e4f28ff23 100644
--- a/testing/kodi-inputstream-rtmp/APKBUILD
+++ b/testing/kodi-inputstream-rtmp/APKBUILD
@@ -1,29 +1,30 @@
# Contributor: Damian Kurek <starfire24680@gmail.com>
# Maintainer: Damian Kurek <starfire24680@gmail.com>
pkgname=kodi-inputstream-rtmp
-pkgver=3.4.0
-_realname=Matrix
-pkgrel=0
+pkgver=20.3.0
+_realname=Nexus
+pkgrel=1
pkgdesc="RTMP input stream add-on for Kodi"
options="!check" # no test suite
url="https://github.com/xbmc/inputstream.rtmp"
-arch="x86 x86_64 aarch64 armv7" # kodi
+arch="x86_64 aarch64 armv7" # kodi is available only on these architectures
license="GPL-2.0-only"
-makedepends="cmake rtmpdump-dev kodi-dev"
+makedepends="cmake rtmpdump-dev kodi-dev samurai"
source="$pkgname-$pkgver-$_realname.tar.gz::https://github.com/xbmc/inputstream.rtmp/archive/$pkgver-$_realname.tar.gz"
builddir="$srcdir/inputstream.rtmp-$pkgver-$_realname"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi \
- -DUSE_LTO=1
+ -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi
cmake --build build
}
package() {
- DESTDIR="$pkgdir" cmake --build build --target install
+ DESTDIR="$pkgdir" cmake --install build
}
-sha512sums="5016d5454761bc854e3ccaec375123ae5f96777a1639c68c21b94073aa7b1e7a615204739017704ae03f4119a92afb225152a833f3891e302b95da60904bf39c kodi-inputstream-rtmp-3.4.0-Matrix.tar.gz"
+sha512sums="
+4c70d3df184eae19e359460560257012fece6cbd571d9a27c01f0dbdff84f1ce12b88527a1797cdc3c2a12e39edb92a7a82dd1cfd5721b553290a295733df9f6 kodi-inputstream-rtmp-20.3.0-Nexus.tar.gz
+"
diff --git a/testing/kodi-peripheral-joystick/APKBUILD b/testing/kodi-peripheral-joystick/APKBUILD
index ef6149bc49c..dc134e6a7aa 100644
--- a/testing/kodi-peripheral-joystick/APKBUILD
+++ b/testing/kodi-peripheral-joystick/APKBUILD
@@ -1,31 +1,30 @@
# Contributor: Damian Kurek <starfire24680@gmail.com>
# Maintainer: Damian Kurek <starfire24680@gmail.com>
pkgname=kodi-peripheral-joystick
-pkgver=1.7.2
-_realname=Matrix
+pkgver=20.1.9
+_realname=Nexus
pkgrel=0
pkgdesc="Kodi joystick support (drivers and button maps)"
options="!check" # no test suite
url="https://github.com/xbmc/peripheral.joystick"
-arch="x86 x86_64 aarch64 armv7" # kodi is available only on those architectures
+arch="x86_64 aarch64 armv7" # kodi is available only on these architectures
license="GPL-2.0-only"
-makedepends="cmake kodi-dev tinyxml-dev"
+makedepends="cmake kodi-dev samurai tinyxml-dev"
source="$pkgname-$pkgver-$_realname.tar.gz::https://github.com/xbmc/peripheral.joystick/archive/$pkgver-$_realname.tar.gz"
builddir="$srcdir/peripheral.joystick-$pkgver-$_realname"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi \
- -DUSE_LTO=1
+ -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi
cmake --build build
}
package() {
- DESTDIR="$pkgdir" cmake --build build --target install
+ DESTDIR="$pkgdir" cmake --install build
}
sha512sums="
-d838f44281704e2bc7f3280f05b93347dd2e7a10b8e2b31efdc34b8994723f6aa6ca643fce01f515003caf7d85abbd3eed6a3833e6adf88b9fb22184d2c2e1ae kodi-peripheral-joystick-1.7.2-Matrix.tar.gz
+1e906317ae471495b8b39333b30cc11fd8902fd1bf2fadbfbee72d785667227c44f76d009e80c1de2a87b91396a7c75f3ff53fc745395dd6584582c321d64481 kodi-peripheral-joystick-20.1.9-Nexus.tar.gz
"
diff --git a/testing/kodi-pvr-hts/APKBUILD b/testing/kodi-pvr-hts/APKBUILD
index 18ecbd89a1a..b3d90ba73a7 100644
--- a/testing/kodi-pvr-hts/APKBUILD
+++ b/testing/kodi-pvr-hts/APKBUILD
@@ -1,31 +1,33 @@
# Contributor: Damian Kurek <starfire24680@gmail.com>
# Maintainer: Damian Kurek <starfire24680@gmail.com>
pkgname=kodi-pvr-hts
-pkgver=8.4.0
-_realname=Matrix
-pkgrel=0
+pkgver=20.6.2
+_realname=Nexus
+pkgrel=1
pkgdesc="Kodi's Tvheadend HTSP client addon"
options="!check" # no test suite
url="https://github.com/kodi-pvr/pvr.hts"
-arch="x86 x86_64 aarch64 armv7" # kodi
+arch="x86_64 aarch64 armv7" # kodi is available only on these architectures
license="GPL-2.0-only"
-makedepends="bsd-compat-headers cmake kodi-dev"
-source="$pkgname-$pkgver-$_realname.tar.gz::https://github.com/kodi-pvr/pvr.hts/archive/$pkgver-$_realname.tar.gz"
+makedepends="cmake kodi-dev samurai"
+source="$pkgname-$pkgver-$_realname.tar.gz::https://github.com/kodi-pvr/pvr.hts/archive/$pkgver-$_realname.tar.gz
+ ctime.patch
+ "
builddir="$srcdir/pvr.hts-$pkgver-$_realname"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi \
- -DUSE_LTO=1
+ -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi
cmake --build build
}
package() {
- DESTDIR="$pkgdir" cmake --build build --target install
+ DESTDIR="$pkgdir" cmake --install build
}
sha512sums="
-929d32e0702b7199cf2e80a7bd7b0ec6654194fbd17f15defa11da7aa41e068bf999cad25ebb7dcb594e5895354824483b4a4e896cc97a7b06b9183d21c0fbff kodi-pvr-hts-8.4.0-Matrix.tar.gz
+8213b2d061abc3eeb8253426c37425826ed00450e43cc1561d154311b19d5280190e3ad09666cb01134a72ac02956395a56a36e78eb97c88f88cb8ded7eaad2f kodi-pvr-hts-20.6.2-Nexus.tar.gz
+e5171f4fd01488e569caff1c4854f99af7201c9eaf5548f636aa0698b45ec062e1004c30bca165e93af9e232ae96875a41bc84f8cfc6a95ee2b8ce1085baa4c7 ctime.patch
"
diff --git a/testing/kodi-pvr-hts/ctime.patch b/testing/kodi-pvr-hts/ctime.patch
new file mode 100644
index 00000000000..1a00c057551
--- /dev/null
+++ b/testing/kodi-pvr-hts/ctime.patch
@@ -0,0 +1,12 @@
+diff --git a/src/tvheadend/entity/Event.h b/src/tvheadend/entity/Event.h
+index 513bdaa..8569312 100644
+--- a/src/tvheadend/entity/Event.h
++++ b/src/tvheadend/entity/Event.h
+@@ -10,6 +10,7 @@
+ #include "Entity.h"
+
+ #include <cstdint>
++#include <ctime>
+ #include <map>
+ #include <string>
+ #include <vector>
diff --git a/testing/kodi-pvr-iptvsimple/APKBUILD b/testing/kodi-pvr-iptvsimple/APKBUILD
index 0fa6ed10f73..bf097608287 100644
--- a/testing/kodi-pvr-iptvsimple/APKBUILD
+++ b/testing/kodi-pvr-iptvsimple/APKBUILD
@@ -1,31 +1,30 @@
# Contributor: Damian Kurek <starfire24680@gmail.com>
# Maintainer: Damian Kurek <starfire24680@gmail.com>
pkgname=kodi-pvr-iptvsimple
-pkgver=7.6.10
-_realname=Matrix
+pkgver=20.11.0
+_realname=Nexus
pkgrel=0
pkgdesc="IPTV Simple client addon for Kodi"
options="!check" # no test suite
url="https://github.com/kodi-pvr/pvr.iptvsimple"
-arch="x86 x86_64 aarch64 armv7" # kodi is only available on those architectures
+arch="x86_64 aarch64 armv7" # kodi is available only on these architectures
license="GPL-2.0-only"
-makedepends="cmake kodi-dev"
+makedepends="cmake kodi-dev samurai"
source="$pkgname-$pkgver-$_realname.tar.gz::https://github.com/kodi-pvr/pvr.iptvsimple/archive/$pkgver-$_realname.tar.gz"
builddir="$srcdir/pvr.iptvsimple-$pkgver-$_realname"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi \
- -DUSE_LTO=1
+ -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi
cmake --build build
}
package() {
- DESTDIR="$pkgdir" cmake --build build --target install
+ DESTDIR="$pkgdir" cmake --install build
}
sha512sums="
-76c8ab57e5341b3c7c9324560337c6f7d8f9fce5902f6277ea40e420eefa71d39f9904eb513ea2ae9ff2153a15ca22545e65cbbdf0044e171a15ee50cbd96750 kodi-pvr-iptvsimple-7.6.10-Matrix.tar.gz
+052da2a550c7264f396a64277bffd068d6fbfc1eb252c8270e3b2846a856d642a1d45f69a2115db528a8654afa377316ee9153907afbf6be1a630d581621bea5 kodi-pvr-iptvsimple-20.11.0-Nexus.tar.gz
"
diff --git a/testing/kodi-vfs-libarchive/APKBUILD b/testing/kodi-vfs-libarchive/APKBUILD
index 3fa1ba91c59..a4d076ab9a9 100644
--- a/testing/kodi-vfs-libarchive/APKBUILD
+++ b/testing/kodi-vfs-libarchive/APKBUILD
@@ -1,24 +1,23 @@
# Contributor: Damian Kurek <starfire24680@gmail.com>
# Maintainer: Damian Kurek <starfire24680@gmail.com>
pkgname=kodi-vfs-libarchive
-pkgver=2.0.1
-_realname=Matrix
-pkgrel=0
+pkgver=20.3.0
+_realname=Nexus
+pkgrel=1
pkgdesc="Libarchive VFS add-on for Kodi"
options="!check" # no test suite
url="https://github.com/xbmc/vfs.libarchive"
-arch="x86 x86_64 aarch64 armv7" # kodi is available only on those arches
+arch="x86_64 aarch64 armv7" # kodi is available only on these architectures
license="GPL-2.0-only"
-makedepends="cmake libarchive-dev lz4-dev kodi-dev"
+makedepends="cmake libarchive-dev lz4-dev kodi-dev samurai"
source="$pkgname-$pkgver-$_realname.tar.gz::https://github.com/xbmc/vfs.libarchive/archive/$pkgver-$_realname.tar.gz"
builddir="$srcdir/vfs.libarchive-$pkgver-$_realname"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi \
- -DUSE_LTO=1
+ -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi
cmake --build build
}
@@ -27,5 +26,5 @@ package() {
}
sha512sums="
-8a72a1ef01beedf6cbbc4349b4f1cec135dc99158cdd1d5fcda0bfbde74ed3cced9f2f8c01dafdb3891109c5b257b16a2448124de2396cb6db50b0316f67efb7 kodi-vfs-libarchive-2.0.1-Matrix.tar.gz
+cedb21992b23b821ae1070f18c41b3329fb8208fc753ba2cdf7354058cb14f8c2f88f63d5d6791c819b27221468441852c7cecb03b649a9ebdafd282a971d1ca kodi-vfs-libarchive-20.3.0-Nexus.tar.gz
"
diff --git a/testing/kodi-vfs-rar/APKBUILD b/testing/kodi-vfs-rar/APKBUILD
index d0a50fc6408..59c093a4c12 100644
--- a/testing/kodi-vfs-rar/APKBUILD
+++ b/testing/kodi-vfs-rar/APKBUILD
@@ -1,24 +1,23 @@
# Contributor: Damian Kurek <starfire24680@gmail.com>
# Maintainer: Damian Kurek <starfire24680@gmail.com>
pkgname=kodi-vfs-rar
-pkgver=4.0.0
-_realname=Matrix
-pkgrel=0
+pkgver=20.1.0
+_realname=Nexus
+pkgrel=1
pkgdesc="RAR VFS add-on for Kodi"
options="!check" # no test suite
url="https://github.com/xbmc/vfs.rar"
-arch="x86 x86_64 aarch64 armv7" # kodi is available only on those arches
+arch="x86_64 aarch64 armv7" # kodi is available only on these architectures
license="GPL-2.0-only"
-makedepends="cmake kodi-dev"
+makedepends="cmake kodi-dev samurai"
source="$pkgname-$pkgver-$_realname.tar.gz::https://github.com/xbmc/vfs.rar/archive/$pkgver-$_realname.tar.gz"
builddir="$srcdir/vfs.rar-$pkgver-$_realname"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi \
- -DUSE_LTO=1
+ -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi
cmake --build build
}
@@ -27,5 +26,5 @@ package() {
}
sha512sums="
-6287c277419f964b950220a858f098eb9aa9bbab4aaff1277850a84f8dfd90a6d5f4fd6c9ea04e84a3c1744ee69cfc4dd7010e2e29f6578640960220f3f716cc kodi-vfs-rar-4.0.0-Matrix.tar.gz
+01674c857c547eaa9042840d6558598fac0e95b3426d0ea9a8f4815dd40efcf3418e98025283de81281ddd5a5f1f1f52f0b35557c56a0862798d1e760a797e52 kodi-vfs-rar-20.1.0-Nexus.tar.gz
"
diff --git a/testing/kodi-vfs-sacd/APKBUILD b/testing/kodi-vfs-sacd/APKBUILD
index cc8747a288a..516e087deeb 100644
--- a/testing/kodi-vfs-sacd/APKBUILD
+++ b/testing/kodi-vfs-sacd/APKBUILD
@@ -1,24 +1,25 @@
# Contributor: Damian Kurek <starfire24680@gmail.com>
# Maintainer: Damian Kurek <starfire24680@gmail.com>
pkgname=kodi-vfs-sacd
-pkgver=2.0.0
-_realname=Matrix
-pkgrel=0
+pkgver=20.1.0
+_realname=Nexus
+pkgrel=1
pkgdesc="SACD VFS add-on for Kodi"
options="!check" # no test suite
url="https://github.com/xbmc/vfs.sacd"
-arch="x86 x86_64 aarch64 armv7" # kodi is available only on those arches
+arch="x86_64 aarch64 armv7" # kodi is available only on these architectures
license="GPL-2.0-only"
-makedepends="cmake libssh-dev kodi-dev"
-source="$pkgname-$pkgver-$_realname.tar.gz::https://github.com/xbmc/vfs.sacd/archive/$pkgver-$_realname.tar.gz"
+makedepends="cmake libssh-dev kodi-dev samurai"
+source="$pkgname-$pkgver-$_realname.tar.gz::https://github.com/xbmc/vfs.sacd/archive/$pkgver-$_realname.tar.gz
+ int-conversion.patch
+ "
builddir="$srcdir/vfs.sacd-$pkgver-$_realname"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi \
- -DUSE_LTO=1
+ -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi
cmake --build build
}
@@ -27,5 +28,6 @@ package() {
}
sha512sums="
-1b701189c81cd38d410de10382942478c017647050ddc6bce14f48558cd7085cae5c085cda213c88a15815be01199f8ef00f0306f4de2d3ca82293b20179f78a kodi-vfs-sacd-2.0.0-Matrix.tar.gz
+50d6272465dc55c4b08479e72f3751eb5efc7075c1aa10c51a7fd7d1bc5b3135961b971f34ffe354cc45679635dc2db460c8b04f3d1dd4afe877d2295feb2ca6 kodi-vfs-sacd-20.1.0-Nexus.tar.gz
+6be95313c2a5a97dc9ed50d90c2311b2486eb4b05e2a4f4aca9e2da8cad1193de4d8bc945a24e77b964b6072f5805018b7cc18b78112bb942fb58f99be62dd6c int-conversion.patch
"
diff --git a/testing/kodi-vfs-sacd/int-conversion.patch b/testing/kodi-vfs-sacd/int-conversion.patch
new file mode 100644
index 00000000000..e54c6d36461
--- /dev/null
+++ b/testing/kodi-vfs-sacd/int-conversion.patch
@@ -0,0 +1,16 @@
+this type is used to hold fds, and is passed around as such
+it's wrong for it to be int.
+--
+diff --git a/lib/libsacd/sacd_input.c b/lib/libsacd/sacd_input.c
+index d96b968..858ce33 100644
+--- a/lib/libsacd/sacd_input.c
++++ b/lib/libsacd/sacd_input.c
+@@ -62,7 +62,7 @@ uint32_t (*sacd_input_total_sectors)(sacd_input_t);
+
+ struct sacd_input_s
+ {
+- void* fd;
++ int fd;
+ uint8_t *input_buffer;
+ ssize_t total_sectors;
+ };
diff --git a/testing/kodi-vfs-sftp/APKBUILD b/testing/kodi-vfs-sftp/APKBUILD
index 9781e291937..eed76973c4f 100644
--- a/testing/kodi-vfs-sftp/APKBUILD
+++ b/testing/kodi-vfs-sftp/APKBUILD
@@ -1,24 +1,23 @@
# Contributor: Damian Kurek <starfire24680@gmail.com>
# Maintainer: Damian Kurek <starfire24680@gmail.com>
pkgname=kodi-vfs-sftp
-pkgver=2.0.0
-_realname=Matrix
-pkgrel=0
+pkgver=20.2.0
+_realname=Nexus
+pkgrel=1
pkgdesc="SFTP VFS add-on for Kodi"
options="!check" # no test suite
url="https://github.com/xbmc/vfs.sftp"
-arch="x86 x86_64 aarch64 armv7" # kodi is available only on those arches
+arch="x86_64 aarch64 armv7" # kodi is available only on these architectures
license="GPL-2.0-only"
-makedepends="cmake libssh-dev kodi-dev"
+makedepends="cmake libssh-dev kodi-dev samurai"
source="$pkgname-$pkgver-$_realname.tar.gz::https://github.com/xbmc/vfs.sftp/archive/$pkgver-$_realname.tar.gz"
builddir="$srcdir/vfs.sftp-$pkgver-$_realname"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi \
- -DUSE_LTO=1
+ -DCMAKE_MODULE_PATH=/usr/lib/cmake/kodi
cmake --build build
}
@@ -27,5 +26,5 @@ package() {
}
sha512sums="
-223dc0f7ef53318963e77f4b4c5ddb9bc3afa9f3ea5d8ba202269d71a68f24600b99c6927ee856441fe216fbec9e821af8328c3911ef306dff61bb107a7cf0df kodi-vfs-sftp-2.0.0-Matrix.tar.gz
+aadf58a9ab31f602219e781f19c0d6277b21a494197a4b9efcca75b33455e7d9d99e5c799fb4002e2900e25adc764bd82926be0516473e749767381123651a43 kodi-vfs-sftp-20.2.0-Nexus.tar.gz
"
diff --git a/testing/komikku/APKBUILD b/testing/komikku/APKBUILD
new file mode 100644
index 00000000000..523c95057fc
--- /dev/null
+++ b/testing/komikku/APKBUILD
@@ -0,0 +1,59 @@
+# Contributor: Jakob Meier <comcloudway@ccw.icu>
+# Maintainer: Jakob Meier <comcloudway@ccw.icu>
+pkgname=komikku
+pkgver=1.39.0
+pkgrel=1
+pkgdesc="manga reader for GNOME"
+url="https://codeberg.org/valos/Komikku"
+arch="noarch !s390x" # limited by blueprint-compiler
+license="GPL-3.0-only"
+depends="
+ libadwaita
+ py3-beautifulsoup4
+ py3-brotli
+ py3-colorthief
+ py3-dateparser
+ py3-emoji
+ py3-gobject3
+ py3-keyring
+ py3-lxml
+ py3-magic
+ py3-natsort
+ py3-piexif
+ py3-pillow
+ py3-pure_protobuf
+ py3-rarfile
+ py3-requests
+ py3-unidecode
+ webkit2gtk-6.0
+ "
+makedepends="
+ blueprint-compiler-dev
+ cmake
+ desktop-file-utils
+ gobject-introspection-dev
+ gtk4.0-dev
+ libadwaita-dev
+ meson
+ "
+subpackages="$pkgname-lang $pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://codeberg.org/valos/Komikku/archive/v$pkgver.tar.gz"
+builddir="$srcdir/komikku"
+
+build() {
+ abuild-meson build
+
+ ninja -C build
+}
+
+check() {
+ meson test -C build --print-errorlog
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install -C build
+}
+
+sha512sums="
+c8c8c2d6cb4beadb7eba22d6764bd49c469614ae49c345723a22cf68376262516d733495f1530206fce20333c408062c50fd88533ef841ff8cbaef7ab06e121a komikku-1.39.0.tar.gz
+"
diff --git a/testing/kompose/APKBUILD b/testing/kompose/APKBUILD
index 581346564f6..071a6fd758b 100644
--- a/testing/kompose/APKBUILD
+++ b/testing/kompose/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: TBK <alpine@jjtc.eu>
# Maintainer: TBK <alpine@jjtc.eu>
pkgname=kompose
-pkgver=1.26.1
-pkgrel=4
+pkgver=1.31.2
+pkgrel=2
pkgdesc="Tool to move from docker-compose to Kubernetes"
url="https://kompose.io/"
license="Apache-2.0"
@@ -14,17 +14,16 @@ subpackages="
$pkgname-zsh-completion
$pkgname-fish-completion
"
-source="$pkgname-$pkgver.tar.gz::https://github.com/kubernetes/kompose/archive/v$pkgver.tar.gz"
-builddir="$srcdir/src/github.com/kubernetes/$pkgname"
+source="$pkgname-$pkgver.tar.gz::https://github.com/kubernetes/kompose/archive/v$pkgver.tar.gz
+ fix-cgo.patch
+ "
-prepare() {
- mkdir -p "$srcdir/src/github.com/kubernetes/"
- ln -sf "$srcdir/$pkgname-$pkgver" "$srcdir/src/github.com/kubernetes/$pkgname"
- default_prepare
-}
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
build() {
- GOPATH="$srcdir" make
+ make
# Generate completion scripts
./kompose completion bash > completion.bash
@@ -37,9 +36,10 @@ package() {
install -Dm644 completion.bash "$pkgdir"/usr/share/bash-completion/completions/$pkgname
install -Dm644 completion.zsh "$pkgdir"/usr/share/zsh/site-functions/_$pkgname
- install -Dm644 completion.fish "$pkgdir"/usr/share/fish/completions/$pkgname.fish
+ install -Dm644 completion.fish "$pkgdir"/usr/share/fish/vendor_completions.d/$pkgname.fish
}
sha512sums="
-d9d181b12908298c11d99b9dda6f5e48b0bf44fca84836a7397bc726746f8d1a615a7b26aa90ea64a0fd90c50ddceae6c325d0c9d8c0c14840fc5828cefe8c23 kompose-1.26.1.tar.gz
+44d08269d2c65b4452a5319e8339721fb4c355ea18982b4b0b942511982da9a9d20982f4247499c98ff787496f8ed5c47312f7662065059d8de5fc8380c1d109 kompose-1.31.2.tar.gz
+ff078eb2f3b62fd085a74527233417e5fc1c594657c2041a5b807815d9a8ec47e5dcb380ca95a84bb2294e07c53c3d1f7889e875628ac3533409acd2a3881c4c fix-cgo.patch
"
diff --git a/testing/kompose/fix-cgo.patch b/testing/kompose/fix-cgo.patch
new file mode 100644
index 00000000000..eccf57c6238
--- /dev/null
+++ b/testing/kompose/fix-cgo.patch
@@ -0,0 +1,11 @@
+--- a/Makefile
++++ b/Makefile
+@@ -39,7 +39,7 @@
+
+ .PHONY: bin
+ bin:
+- CGO_ENABLED=0 GO111MODULE=on go build ${BUILD_FLAGS} -o kompose main.go
++ GO111MODULE=on go build ${BUILD_FLAGS} -o kompose main.go
+
+ .PHONY: install
+ install:
diff --git a/testing/kondo/APKBUILD b/testing/kondo/APKBUILD
new file mode 100644
index 00000000000..72a96c036f1
--- /dev/null
+++ b/testing/kondo/APKBUILD
@@ -0,0 +1,45 @@
+# Maintainer: Michał Polański <michal@polanski.me>
+pkgname=kondo
+pkgver=0.8
+pkgrel=0
+pkgdesc="Cleans dependencies and build artifacts from your projects"
+url="https://github.com/tbillington/kondo"
+license="MIT"
+arch="all"
+makedepends="cargo cargo-auditable"
+subpackages="
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
+ "
+source="https://github.com/tbillington/kondo/archive/v$pkgver/kondo-$pkgver.tar.gz"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release
+
+ target/release/kondo --completions bash > $pkgname.bash
+ target/release/kondo --completions fish > $pkgname.fish
+ target/release/kondo --completions zsh > $pkgname.zsh
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm755 target/release/$pkgname -t "$pkgdir"/usr/bin/
+
+ install -Dm644 $pkgname.bash "$pkgdir"/usr/share/bash-completion/completions/$pkgname
+ install -Dm644 $pkgname.fish "$pkgdir"/usr/share/fish/vendor_completions.d/$pkgname.fish
+ install -Dm644 $pkgname.zsh "$pkgdir"/usr/share/zsh/site-functions/_$pkgname
+}
+
+sha512sums="
+62cf51c7db440fa36d33206759a60b084a1c98fc718988cfa01c417ad1eb4e6a930e3c66e83d2ae9fc169acb93c98ed18fe8cf4ca3ab5a40d2adbfa27363f9a0 kondo-0.8.tar.gz
+"
diff --git a/testing/kooha/APKBUILD b/testing/kooha/APKBUILD
deleted file mode 100644
index 5ce1691cbb1..00000000000
--- a/testing/kooha/APKBUILD
+++ /dev/null
@@ -1,71 +0,0 @@
-# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
-pkgname=kooha
-pkgver=2.0.1
-pkgrel=1
-pkgdesc="Elegantly record your screen"
-url="https://github.com/SeaDve/Kooha"
-arch="aarch64 armhf armv7 ppc64le x86 x86_64" # blocked by rust/cargo
-license="GPL-3.0-or-later"
-depends="
- gst-plugin-pipewire
- gst-plugins-good
- pipewire
- xdg-desktop-portal
- "
-makedepends="
- cargo
- gettext-dev
- glib-dev
- gst-plugins-base-dev
- gstreamer-dev
- gstreamer-vaapi
- gtk4.0-dev
- libadwaita-dev
- meson
- pulseaudio-dev
- wayland-dev
- x264-dev
- "
-checkdepends="
- cmd:desktop-file-validate
- "
-subpackages="$pkgname-lang $pkgname-mp4"
-source="https://github.com/SeaDve/Kooha/releases/download/v$pkgver/kooha-$pkgver.tar.xz"
-
-prepare() {
- default_prepare
-
- # Optimize binary for size (but don't use panic=abort here).
- cat >> Cargo.toml <<-EOF
-
- [profile.release]
- codegen-units = 1
- lto = true
- opt-level = "s"
- EOF
-}
-
-build() {
- abuild-meson -Db_lto=true . output
- meson compile -j ${JOBS:-0} -C output
-}
-
-check() {
- meson test --no-rebuild -v -C output
-}
-
-package() {
- DESTDIR="$pkgdir" meson install --no-rebuild -C output
-}
-
-mp4() {
- pkgdesc="Kooha dependencies for recording into MP4 format"
- depends="$pkgname=$pkgver-r$pkgrel gst-plugins-ugly"
-
- mkdir -p "$subpkgdir"
-}
-
-sha512sums="
-230d3c9547f586393568772d346dc384c2f9f242c936e86edaa0237f762df409173da2ec10a8ceea7490d944199d63e88eaef1c717632e8dccde66062a7e4fd7 kooha-2.0.1.tar.xz
-"
diff --git a/testing/kopano-core/0001-python-Use-libmdbx-instead-of-bsddb.patch b/testing/kopano-core/0001-python-Use-libmdbx-instead-of-bsddb.patch
deleted file mode 100644
index 9ab75dab39e..00000000000
--- a/testing/kopano-core/0001-python-Use-libmdbx-instead-of-bsddb.patch
+++ /dev/null
@@ -1,228 +0,0 @@
-From c370923f2896d6569ccb0327acf5a273ffa5afa1 Mon Sep 17 00:00:00 2001
-From: Noel Kuntze <noel.kuntze@thermi.consulting>
-Date: Fri, 20 Aug 2021 10:40:21 +0200
-Subject: [PATCH] python: Use libmdbx instead of bsddb
-
----
- ECtools/backup/kopano_backup/__init__.py | 30 ++++++++---------------
- ECtools/backup/requirements.txt | 2 +-
- ECtools/search/kopano_search/__init__.py | 10 ++++----
- ECtools/search/requirements.txt | 2 +-
- ECtools/spamd/kopano_spamd/__init__.py | 6 ++---
- ECtools/spamd/requirements.txt | 2 +-
- ECtools/utils/kopano_utils/autorespond.py | 6 ++---
- 7 files changed, 24 insertions(+), 34 deletions(-)
-
-diff --git a/ECtools/backup/kopano_backup/__init__.py b/ECtools/backup/kopano_backup/__init__.py
-index ad9d3485f..dd4387c42 100644
---- a/ECtools/backup/kopano_backup/__init__.py
-+++ b/ECtools/backup/kopano_backup/__init__.py
-@@ -18,7 +18,7 @@ try:
- import cPickle as pickle
- except ImportError:
- import _pickle as pickle
--import bsddb3 as bsddb
-+import libmdbx
-
- from MAPI import (
- PT_UNICODE, PT_ERROR, KEEP_OPEN_READWRITE,
-@@ -107,7 +107,7 @@ def fatal(s):
- sys.exit(1)
-
- def dbopen(path):
-- return bsddb.hashopen(path, 'c')
-+ return libmdbx.Env(path)
-
- def _copy_folder_meta(from_dir, to_dir, keep_db=False):
- if not os.path.exists(to_dir):
-@@ -594,7 +594,6 @@ class Service(kopano.Service):
- stats['folders'] += 1
-
- else: # check all items for deletion
-- items_deleted = False
- with closing(dbopen(fpath+'/items')) as db_items:
- with closing(dbopen(fpath+'/index')) as db_index:
- delete_items = []
-@@ -604,23 +603,12 @@ class Service(kopano.Service):
- if backup_deleted and (self.timestamp - backup_deleted).days >= self.options.purge:
- delete_items.append(item)
-
-- if delete_items:
-- items_deleted = True
--
- for item in delete_items:
- stats['items'] += 1
- self.log.debug('purging item: %s', item)
- del db_index[item]
- if item in db_items:
- del db_items[item]
-- if items_deleted:
-- self.log.debug('compacting index database')
-- freed_pages = db_index.db.compact(flags=bsddb.db.DB_FREE_SPACE)
-- self.log.debug('returned %d pages to the underlying filesystem', freed_pages)
-- if items_deleted:
-- self.log.debug('compacting items database')
-- freed_pages = db_items.db.compact(flags=bsddb.db.DB_FREE_SPACE)
-- self.log.debug('returned %d pages to the underlying filesystem', freed_pages)
-
- self.log.info('purged %d folders and %d items', stats['folders'], stats['items'])
-
-@@ -891,11 +879,13 @@ def folder_struct(data_path, options, mapper=None): # XXX deprecate?
-
- def folder_deleted(data_path):
- if os.path.exists(data_path+'/index'):
-- with closing(bsddb.hashopen(data_path+'/index')) as db:
-- idx = db.get(b'folder')
-- if idx and pickle_loads(idx).get(b'backup_deleted'):
-- return pickle_loads(idx).get(b'backup_deleted')
-- return None
-+ # implement usage as "with" and use it.
-+ env=libmdbx.Env(data_path+'/index')
-+ idx=env[b'folder']
-+ if idx:
-+ value=pickle_loads(idx).get(b'backup_deleted')
-+ if value:
-+ return value
-
- def show_contents(data_path, options):
- """ summary of contents of backup directory, at the item or folder level, in CSV format """
-@@ -920,7 +910,7 @@ def show_contents(data_path, options):
-
- # filter items on date using 'index' database
- if os.path.exists(data_path+'/index'):
-- with closing(bsddb.hashopen(data_path+'/index')) as db:
-+ with closing(libmdbx.Env(data_path+'/index')) as db:
- for key, value in db.items():
- d = pickle_loads(value)
- if ((key == b'folder') or
-diff --git a/ECtools/backup/requirements.txt b/ECtools/backup/requirements.txt
-index 6ee1b7b47..2e968c7f0 100644
---- a/ECtools/backup/requirements.txt
-+++ b/ECtools/backup/requirements.txt
-@@ -1,3 +1,3 @@
- MAPI
--bsddb3
-+libmdbx
- kopano
-diff --git a/ECtools/search/kopano_search/__init__.py b/ECtools/search/kopano_search/__init__.py
-index 631b40d68..496392a63 100644
---- a/ECtools/search/kopano_search/__init__.py
-+++ b/ECtools/search/kopano_search/__init__.py
-@@ -11,7 +11,7 @@ from multiprocessing import Queue, Value
- import time
- import sys
-
--import bsddb3 as bsddb
-+import libmdbx
- from queue import Empty
-
- from kopano_search import plaintext
-@@ -78,7 +78,7 @@ def db_get(db_path, key):
- """ get value from db file """
- if not isinstance(key, bytes): # python3
- key = key.encode('ascii')
-- with closing(bsddb.hashopen(db_path, 'c')) as db:
-+ with closing(libmdbx.Env(db_path)) as db:
- value = db.get(key)
- if value is not None:
- return db.get(key).decode('ascii')
-@@ -89,7 +89,7 @@ def db_put(db_path, key, value):
- key = key.encode('ascii')
- with open(db_path+'.lock', 'w') as lockfile:
- fcntl.flock(lockfile.fileno(), fcntl.LOCK_EX)
-- with closing(bsddb.hashopen(db_path, 'c')) as db:
-+ with closing(libmdbx.Env(db_path)) as db:
- db[key] = value
-
- class SearchWorker(kopano.Worker):
-@@ -340,8 +340,8 @@ class Service(kopano.Service):
- worker.start()
- try:
- self.state = db_get(self.state_db, 'SERVER')
-- except bsddb.db.DBAccessError:
-- self.log.error("Cannot access '%s': permission denied", self.state_db)
-+ except libmdbx.MDBXErrorExc as exc:
-+ self.log.error("Cannot access '%s': %s", self.state_db, exc.message)
- sys.exit(1)
-
- if self.state:
-diff --git a/ECtools/search/requirements.txt b/ECtools/search/requirements.txt
-index ba0834df3..04b7c433f 100644
---- a/ECtools/search/requirements.txt
-+++ b/ECtools/search/requirements.txt
-@@ -1,3 +1,3 @@
--bsddb3
-+libmdbx
- kopano
- xapian
-diff --git a/ECtools/spamd/kopano_spamd/__init__.py b/ECtools/spamd/kopano_spamd/__init__.py
-index 7fb8f422d..c31afb277 100644
---- a/ECtools/spamd/kopano_spamd/__init__.py
-+++ b/ECtools/spamd/kopano_spamd/__init__.py
-@@ -8,7 +8,7 @@ import os
- import sys
- import time
-
--import bsddb3 as bsddb
-+import libmdbx
-
- import kopano
- from kopano import Config, log_exc
-@@ -53,13 +53,13 @@ class Importer:
- def mark_spam(self, searchkey):
- if not isinstance(searchkey, bytes): # python3
- searchkey = searchkey.encode('ascii')
-- with closing(bsddb.btopen(self.spamdb, 'c')) as db:
-+ with closing(libmdbx.Env(self.spamdb)) as db:
- db[searchkey] = ''
-
- def was_spam(self, searchkey):
- if not isinstance(searchkey, bytes): # python3
- searchkey = searchkey.encode('ascii')
-- with closing(bsddb.btopen(self.spamdb, 'c')) as db:
-+ with closing(libmdbx.Env(self.spamdb)) as db:
- return searchkey in db
-
- def update(self, item, flags):
-diff --git a/ECtools/spamd/requirements.txt b/ECtools/spamd/requirements.txt
-index 82a553bb6..f0b35cb8a 100644
---- a/ECtools/spamd/requirements.txt
-+++ b/ECtools/spamd/requirements.txt
-@@ -1,2 +1,2 @@
- kopano
--bsddb3
-+libmdbx
-diff --git a/ECtools/utils/kopano_utils/autorespond.py b/ECtools/utils/kopano_utils/autorespond.py
-index 1f83a41d2..0664e3390 100644
---- a/ECtools/utils/kopano_utils/autorespond.py
-+++ b/ECtools/utils/kopano_utils/autorespond.py
-@@ -9,7 +9,7 @@ import time
- import kopano
- from kopano.log import logger
-
--import bsddb3 as bsddb
-+import libmdbx
-
- CONFIG = {
- "autorespond_cc": kopano.Config.boolean(default=False),
-@@ -41,7 +41,7 @@ def send_ooo(server, username, msg, copy_to_sentmail):
-
-
- def check_time(senddb, timelimit, username, to):
-- with closing(bsddb.btopen(senddb, 'c')) as db:
-+ with closing(libmdbx.Env(senddb)) as db:
- key = username + ":" + to
- key = key.encode('utf-8')
- if key in db:
-@@ -52,7 +52,7 @@ def check_time(senddb, timelimit, username, to):
-
-
- def add_time(senddb, username, to):
-- with closing(bsddb.btopen(senddb, 'c')) as db:
-+ with closing(libmdbx.Env(senddb)) as db:
- key = username + ":" + to
- key = key.encode('utf-8')
- db[key] = str(int(time.time()))
---
-2.33.0
-
diff --git a/testing/kopano-core/0002-provider.patch b/testing/kopano-core/0002-provider.patch
deleted file mode 100644
index 70a5ba081b4..00000000000
--- a/testing/kopano-core/0002-provider.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-diff --git a/provider/client/WSUtil.cpp b/provider/client/WSUtil.cpp
-index 2bfa558ec..64d99fa9f 100644
---- a/provider/client/WSUtil.cpp
-+++ b/provider/client/WSUtil.cpp
-@@ -2077,7 +2077,14 @@ static HRESULT CopyMAPISourceKeyToSoapSourceKey(const SBinary *lpsMAPISourceKey,
- {
- if (lpsMAPISourceKey == nullptr || lpsSoapSourceKey == nullptr)
- return MAPI_E_INVALID_PARAMETER;
-- lpsSoapSourceKey->__ptr = soap_new_unsignedByte(nullptr, lpsSoapSourceKey->__size);
-+ if (lpsMAPISourceKey->lpb == nullptr) {
-+ lpsSoapSourceKey->__ptr = nullptr;
-+ lpsSoapSourceKey->__size = 0;
-+ return hrSuccess;
-+ }
-+ lpsSoapSourceKey->__ptr = soap_new_unsignedByte(nullptr, lpsMAPISourceKey->cb);
-+ if (lpsSoapSourceKey->__ptr == nullptr)
-+ throw std::bad_alloc();
- lpsSoapSourceKey->__size = lpsMAPISourceKey->cb;
- memcpy(lpsSoapSourceKey->__ptr, lpsMAPISourceKey->lpb, lpsSoapSourceKey->__size);
- return hrSuccess;
diff --git a/testing/kopano-core/0003-spamd-Correct-owner-and-group-of-spamd-ham_dir-spam_.patch b/testing/kopano-core/0003-spamd-Correct-owner-and-group-of-spamd-ham_dir-spam_.patch
deleted file mode 100644
index bc74f7c6361..00000000000
--- a/testing/kopano-core/0003-spamd-Correct-owner-and-group-of-spamd-ham_dir-spam_.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 8c9b91a8177bbf77f5e3e40097b58c0058f64045 Mon Sep 17 00:00:00 2001
-From: Noel Kuntze <noel.kuntze@thermi.consulting>
-Date: Wed, 30 Jun 2021 03:37:39 +0200
-Subject: [PATCH] spamd: Correct owner and group of spamd ham_dir, spam_dir and
- spam_db
-
-Fixes cd1a549bf51673c7c9885bdc339b8a21bd24b867
----
- ECtools/spamd/kopano_spamd/__init__.py | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/ECtools/spamd/kopano_spamd/__init__.py b/ECtools/spamd/kopano_spamd/__init__.py
-index c31afb277..b38fc9290 100644
---- a/ECtools/spamd/kopano_spamd/__init__.py
-+++ b/ECtools/spamd/kopano_spamd/__init__.py
-@@ -113,6 +113,9 @@ def main():
- service = Service('spamd', config=CONFIG, options=options)
- if service.config['learn_ham'] == True and not os.path.exists(service.config['ham_dir']):
- os.makedirs(service.config['ham_dir'])
-+ for directory in "ham_dir", "spam_dir", "spam_db":
-+ os.chown(service.config[directory], pwd.getpwnam(service.config["run_as_user"]).pw_uid,
-+ pwd.getgrnam(service.config["run_as_group"]).pw_gid)
- service.start()
-
-
---
-2.32.0
-
diff --git a/testing/kopano-core/0004-configure.ac-depend-on-libldap-not-libldap_r-doesn-t.patch b/testing/kopano-core/0004-configure.ac-depend-on-libldap-not-libldap_r-doesn-t.patch
deleted file mode 100644
index e2b3b2d5ea9..00000000000
--- a/testing/kopano-core/0004-configure.ac-depend-on-libldap-not-libldap_r-doesn-t.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 5ff9fe841d118d5d853b2939cc69bb242512eecc Mon Sep 17 00:00:00 2001
-From: Noel Kuntze <noel.kuntze@thermi.consulting>
-Date: Sat, 18 Dec 2021 01:21:13 +0100
-Subject: [PATCH] configure.ac: depend on libldap, not libldap_r (doesn't exist
- anymore in openldap on Alpine)
-
----
- configure.ac | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/configure.ac b/configure.ac
-index fcc7fd92f..b7f641546 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -423,7 +423,7 @@ LDAP_FLAGS=""
- LDAP_LIBS=""
- AC_CHECK_HEADERS([ldap.h], [
- LDAP_FLAGS="-DLDAP_DEPRECATED=1"
-- LDAP_LIBS="-lldap_r"
-+ LDAP_LIBS="-lldap"
- want_ldap=yes
- ])
- AC_SUBST(LDAP_LIBS)
---
-2.34.1
-
diff --git a/testing/kopano-core/APKBUILD b/testing/kopano-core/APKBUILD
deleted file mode 100644
index 09112a64d5d..00000000000
--- a/testing/kopano-core/APKBUILD
+++ /dev/null
@@ -1,369 +0,0 @@
-# Maintainer: Noel Kuntze <noel.kuntze@contauro.com>
-pkgname=kopano-core
-subpackages="$pkgname-dbg $pkgname-openrc $pkgname-doc $pkgname-bash-completion"
-pkgver=10.1.1
-pkgrel=12
-pkgdesc="Open Source Groupware Solution"
-# ppc64le blocked by py3-libmdbx
-arch="all !ppc64le"
-url="https://www.kopano.com/"
-license="AGPL-3.0-or-later"
-options="!check" # No test suite
-_phpver=7
-_php=php$_phpver
-makedepends="
- autoconf
- automake
- curl-dev
- db-dev
- docbook-xsl
- e2fsprogs
- gnu-libiconv-dev
- gsoap
- gsoap-dev
- icu-dev
- jsoncpp-dev
- krb5-dev
- libhx-dev
- libical-dev
- libtool
- libvmime-dev
- libxml2-dev
- mariadb-dev
- openldap-dev
- $_php-dev
- py3-setuptools
- python3-dev
- sed
- swig3
- xapian-core-dev
- xmlto
- xorgproto
-"
-pkgusers="kopano-core kopano-gateway kopano-ical postfix"
-pkggroups="kopano http kopano-diraccess"
-depends="
- bash-completion
- bison
- boost
- boost-libs
- catdoc
- cyrus-sasl
- gnu-libiconv
- krb5
- libxslt
- mariadb
- openldap
- openrc
- $_php
- $_php-fpm
- poppler
- postfix
- py3-daemon
- py3-dateutil
- py3-dnspython
- py3-flask
- py3-lockfile
- py3-magic
- py3-libmdbx
- py3-minimock
- py3-nose
- py3-openssl
- py3-soappy
- py3-tlslite-ng
- py3-tzlocal
- w3m
- xapian-bindings-$_php
- xapian-bindings-python3
- xorgproto
-"
-
-install="$pkgname.pre-install"
-
-source="
- https://github.com/Kopano-dev/kopano-core/archive/kopanocore-$pkgver.zip
- kopano-ical.initd
- kopano-search.initd
- kopano-spooler.initd
- kopano-dagent.initd
- kopano-monitor.initd
- kopano-server.initd
- kopano-gateway.initd
- kopano-spamd.initd
- kopano-server.conf
- 0001-python-Use-libmdbx-instead-of-bsddb.patch
- 0002-provider.patch
- 0003-spamd-Correct-owner-and-group-of-spamd-ham_dir-spam_.patch
- 0004-configure.ac-depend-on-libldap-not-libldap_r-doesn-t.patch
- fix-icu-70-1.patch
- fix-build-with-musl-1.2.3.patch
-"
-
-builddir="$srcdir/kopano-core-kopanocore-$pkgver/"
-
-prepare() {
- default_prepare
- sed -i 's/0.9.2k1/0.9.2/g' configure.ac
-
- ./bootstrap.sh
-}
-
-build() {
- PYTHON=/usr/bin/python3 ./configure \
- --prefix=/usr \
- --localstatedir=/var \
- --sysconfdir=/etc \
- --exec-prefix=/usr \
- --sbindir=/usr/bin \
- --datarootdir=/usr/share \
- --includedir=/usr/include \
- --enable-release \
- --enable-epoll \
- --enable-python \
- --disable-static \
- --with-quotatemplate-prefix=/etc/kopano/quotamails \
- --with-searchscripts-prefix=/etc/kopano/searchscripts \
- --with-php=$_phpver \
- --with-php-config=php-config$_phpver
-
- make
-}
-
-_cfg_set() {
- local config_attribute="$1"
- local config_attribute_prefix=$(echo -n "$config_attribute" | sed "s|\(_\).*|\1|")
- local config_value="$2"
- local config_file="$3"
-
- # Uncomment And Set Attribute
- if grep -q "$config_attribute" $config_file ;
- then
- # Uncomment (Replaces Optional Comments And Spaces)
- sed -i "s|^#*\s*\($config_attribute.*\)|\1|" $config_file
-
- # Set ("name = value" => "name = newvalue")
- sed -i "s|^\($config_attribute\)\s*\=.*|\1 = $config_value|" $config_file
-
- # Add Attribute At Right Position
- elif [ -n "$config_attribute_prefix" ] \
- && grep -q "$config_attribute_prefix" $config_file ;
- then
- # Find Last Attribut From Prefix-Group
- local config_attribute_last_from_group=$(tac $config_file | grep -m 1 "^#*\s*$config_attribute_prefix" | grep -o "${config_attribute_prefix}[^ =]*")
- sed -i "s|\($config_attribute_last_from_group.*$\)|\1\n$config_attribute = $config_value|" $config_file
-
- # Add Attribute At The End of File
- else
- echo $config_attribute = $config_value >> $config_file
-
- fi
-}
-
-package() {
- mkdir -p "$pkgdir"
- make install -j1 DESTDIR="$(realpath $pkgdir)"
- mkdir -p $pkgdir/usr/share/bash-completion/completions
- mv $pkgdir/usr/share/bash-completion/completions/kopano-bash-completion.sh $pkgdir/usr/share/bash-completion/completions/kopano
-
- rm -Rf "$pkgdir/etc/kopano/license" "$pkgdir/usr/lib/sysusers.d/" "$pkgdir/usr/lib/tmpfiles.d/"
-
- mkdir -p "$pkgdir/usr/share/licenses/$pkgname"
- cp AGPL-3 "$pkgdir/usr/share/licenses/$pkgname"
- mkdir -p "$pkgdir/usr/share/doc/$pkgname"
- cp -R RELNOTES.txt CONTRIBUTING.md "$pkgdir/usr/share/doc/$pkgname"
-
- # General
- share_path="$pkgdir/usr/share/doc/kopano/example-config"
- #cfg_path="$pkgdir/etc/kopano"
- cfg_path="$share_path/"
- run_as_user="kopano-core"
- run_as_group="kopano"
- server_socket="/run/kopano/server.sock"
- server_lo_port="tcp://127.0.0.1:236"
- server_socket_prio="/run/kopano/prio.sock"
- search_socket="/run/kopano/search.sock"
- server_tls_min_proto="TLSv1 TLSv1\.1 TLSv1\.2"
- ssl_ciphers="AES256\+EECDH:AES256\+EDH:\!aNULL"
- server_tls_min_proto="tls1\.2"
- gateway_tls_min_proto="tls1\.2"
- ical_tls_min_proto="tls1\.2"
- ssl_privatekey="/etc/ssl/private/kopano.key"
- ssl_certificate="/etc/ssl/private/kopano.crt"
-
- # admin.cfg
- cfg="$cfg_path/admin.cfg"
- _cfg_set "server_socket" "file://$server_socket" $cfg
-
- # server.cfg
- cfg="$cfg_path/server.cfg"
- _cfg_set "attachment_compression" "0" $cfg
- _cfg_set "disabled_features" "" $cfg
- _cfg_set "hide_everyone" "yes" $cfg
- _cfg_set "search_enabled" "yes" "$cfg"
- _cfg_set "search_socket" "file://$search_socket" "$cfg"
- _cfg_set "mysql_socket" "/run/mysqld/mysqld.sock" $cfg
- _cfg_set "mysql_user" "kopano" $cfg
- _cfg_set "mysql_password" "kopano" $cfg
- #=> service
- _cfg_set "run_as_user" "$run_as_user" $cfg
- _cfg_set "run_as_group" "$run_as_group" $cfg
- _cfg_set "log_method" "file" $cfg
- _cfg_set "log_file" "/var/log/kopano/server.log" $cfg
- _cfg_set "log_level" "3" $cfg
- #=> server-connection (socket only)
- _cfg_set "server_pipe_name" "$server_socket" $cfg
- _cfg_set "server_pipe_priority" "$server_socket_prio" $cfg
- _cfg_set "server_listen" "" $cfg
- _cfg_set "server_listen_tls" "" $cfg
- _cfg_set "server_ssl_prefer_server_ciphers" "yes" $cfg
- _cfg_set "server_tls_min_proto" "$server_tls_min_proto" $cfg
- _cfg_set "server_ssl_ciphers" "$ssl_ciphers" $cfg
- _cfg_set "server_ssl_key_file" "$ssl_privatekey" $cfg
- _cfg_set "server_ssl_key_pass" "" $cfg
- _cfg_set "server_ssl_ca_file" "$ssl_certificate" $cfg
- _cfg_set "server_ssl_ca_path" "/etc/ssl/certs" $cfg
-
- # archiver.cfg
- cfg="$cfg_path/archiver.cfg"
- #=> service
- _cfg_set "log_method" "file" $cfg
- _cfg_set "log_file" "/var/log/kopano/archiver.log" $cfg
- _cfg_set "log_level" "3" $cfg
- #=> server-connection
- _cfg_set "server_socket" "file://$server_socket" $cfg
-
- # backup.cfg
- cfg="$cfg_path/backup.cfg"
- #=> service
- _cfg_set "log_method" "file" $cfg
- _cfg_set "log_file" "/var/log/kopano/backup.log" $cfg
- _cfg_set "log_level" "3" $cfg
- #=> server-connection
- _cfg_set "server_socket" "file://$server_socket" $cfg
-
- # dagent.cfg
- cfg="$cfg_path/dagent.cfg"
- #=> service
- _cfg_set "run_as_user" "$run_as_user" $cfg
- _cfg_set "run_as_group" "$run_as_group" $cfg
- _cfg_set "log_method" "file" $cfg
- _cfg_set "log_file" "/var/log/kopano/dagent.log" $cfg
- _cfg_set "log_level" "3" $cfg
- #=> server-connection
- _cfg_set "server_bind" "127.0.0.1" $cfg
- _cfg_set "server_socket" "file://$server_socket" $cfg
-
- # gateway.cfg
- cfg="$cfg_path/gateway.cfg"
- _cfg_set "imap_public_folders" "yes" "$cfg"
- _cfg_set "process_model" "fork" $cfg
- #=> service (avoid requests to be upgraded to admin privileges)
- _cfg_set "run_as_user" "kopano-gateway" $cfg
- _cfg_set "run_as_group" "kopano" $cfg
- _cfg_set "log_method" "file" $cfg
- _cfg_set "log_file" "/var/log/kopano/gateway.log" $cfg
- _cfg_set "log_level" "3" $cfg
- #=> server-connection
- _cfg_set "server_socket" "server_lo_port" $cfg
- _cfg_set "ssl_prefer_server_ciphers" "yes" $cfg
- _cfg_set "tls_min_proto" "$gateway_tls_min_proto" $cfg
- _cfg_set "ssl_ciphers" "$ssl_ciphers" $cfg
- _cfg_set "ssl_private_key_file" "$ssl_privatekey" $cfg
- _cfg_set "ssl_certificate_file" "$ssl_certificate" $cfg
-
- # ical.cfg
- cfg="$cfg_path/ical.cfg"
- _cfg_set "process_model" "fork" $cfg
- #=> service (avoid requests to be upgraded to kopano-admin)
- _cfg_set "run_as_user" "kopano-ical" $cfg
- _cfg_set "run_as_group" "kopano" $cfg
- _cfg_set "log_method" "file" $cfg
- _cfg_set "log_file" "/var/log/kopano/ical.log" $cfg
- _cfg_set "log_level" "3" $cfg
- #=> server-connection
- _cfg_set "server_socket" "file://$server_socket" $cfg
- _cfg_set "ssl_prefer_server_ciphers" "yes" $cfg
- _cfg_set "tls_min_proto" "$ical_tls_min_proto" $cfg
- _cfg_set "ssl_ciphers" "$ssl_ciphers" $cfg
- _cfg_set "ssl_private_key_file" "$ssl_privatekey" $cfg
- _cfg_set "ssl_certificate_file" "$ssl_certificate" $cfg
-
- # monitor.cfg
- cfg="$cfg_path/monitor.cfg"
- #=> service
- _cfg_set "run_as_user" "$run_as_user" $cfg
- _cfg_set "run_as_group" "$run_as_group" $cfg
- _cfg_set "log_method" "file" $cfg
- _cfg_set "log_file" "/var/log/kopano/monitor.log" $cfg
- _cfg_set "log_level" "3" $cfg
- #=> server-connection
- _cfg_set "server_socket" "file://$server_socket" $cfg
-
- # search.cfg
- cfg="$cfg_path/search.cfg"
- _cfg_set "index_attachements" "yes" "$cfg"
- _cfg_set "server_bind_name" "file://$search_socket" "$cfg"
- _cfg_set "ssl_private_key_file" "$ssl_privatekey" $cfg
- _cfg_set "ssl_certificate_file" "$ssl_certificate" $cfg
- #=> service
- _cfg_set "run_as_user" "$run_as_user" $cfg
- _cfg_set "run_as_group" "$run_as_group" $cfg
- _cfg_set "log_method" "syslog" $cfg
- _cfg_set "log_file" "-" $cfg
- _cfg_set "log_level" "3" $cfg
- _cfg_set "pid_file" "/run/kopano/search.pid" $cfg
- #=> server-connection
- _cfg_set "server_socket" "file://$server_socket" $cfg
-
- # spooler.cfg
- cfg="$cfg_path/spooler.cfg"
- _cfg_set "allow_send_to_everyone" "no" "$cfg"
- #=> service
- _cfg_set "run_as_user" "$run_as_user" $cfg
- _cfg_set "run_as_group" "$run_as_group" $cfg
- _cfg_set "log_method" "syslog" $cfg
- _cfg_set "log_file" "-" $cfg
- _cfg_set "log_level" "3" $cfg
- #=> server-connection
- _cfg_set "server_socket" "file://$server_socket" $cfg
-
- # spamd.cfg
- cfg="$cfg_path/spamd.cfg"
- _cfg_set "run_as_user" "$run_as_user" $cfg
- _cfg_set "run_as_group" "$run_as_group" $cfg
- #=> server-connection
- _cfg_set "server_socket" "file://$server_socket" $cfg
-
- install -dm0770 -okopano-core -gkopano "$pkgdir/var/log/kopano"
- install -dm0770 -okopano-core -gkopano-diraccess "$pkgdir/var/lib/kopano"
- install -dm0550 -okopano-core -gkopano "$pkgdir/etc/kopano"
-
- rm -rf "$pkgdir/usr/lib/systemd"
- # copy init files
- for item in kopano-ical kopano-search kopano-spooler kopano-dagent \
- kopano-monitor kopano-server kopano-gateway kopano-spamd
- do
- install -Dm 755 "$srcdir/$item.initd" "$pkgdir/etc/init.d/$item"
- done
- # copy conf.d file
- install -Dm 644 "$srcdir/kopano-server.conf" "$pkgdir/etc/conf.d/kopano-server"
-}
-
-sha512sums="
-72983d2147bf37b52230d4cd72bbc3950613b640147f6d8eb045d85556940d5895acc59ce4fbe4b95fc09bf21551b08f51744bb6e82c3df134a830c874e5ade7 kopanocore-10.1.1.zip
-0ca7c888b19cf9b33688373b22eb515b103a1d7ab4eb8b9302a4a5b005fa3eaa332f434db1efb372f0d3440567e542ac5ba85e4f8c2dc46597899e3472af506a kopano-ical.initd
-6458f64076bbc398a8cc10a75ed2a9a32851b0a689956b3cb26e7f24364df666f6b173245f90a259a9db0fad8b0436636732c92c2d7fc908e2870fc6cbfad6ef kopano-search.initd
-88b7af9b3e999526d326353b4637a8f64b2684987b22e771d5a3667993e4e715f6722a9ebf17e46fafcdb66520ac8c39dac3f0b16e287053ea05da9946ee6e43 kopano-spooler.initd
-a5db7e50f7e43d3d2f282c873cc9d4a4c2035f09cbe75e8b075040f72d63e8c4fcbf3d7c575b2bee0920e4a067c4eb23149144d71375903faeea6a1167a76702 kopano-dagent.initd
-3e5d19ff8df78177141bdb79370658e88841affbb5fd9f5f50e0ca5bb9119257c905ca58ac93525b0924a702d3610a5fa40e5f5f3c2e8378d9bcf48b23b31878 kopano-monitor.initd
-d962229807e185b82c88465b05f400974273224116216ebd2099cf3ab457e217565ce0839c26ddfdea4eee913b3341b92fd53b02ed30fdd63166a4ac19261a80 kopano-server.initd
-b3581c3a93cdd09bae3fbd9070e8263bf61db52348da1c7f1a9ad4657c684af4b83607ea47d036887938ca6d9d609b2ea77d38da00d4173f4051df3eb640be66 kopano-gateway.initd
-d19e37a561f192c9d975e0b81341fffccc60f72fabc197eeddbd8423deb93ee83ddadea59c056138c9c6c9ec13e9421cc226719c8e7ca31fa8657eb6ae213405 kopano-spamd.initd
-626e40d0a544290aa32210ce15b34ab871edbb670046762004af82dd5db0b3d18cd2f1982af615c393020118133a6b156c3953e5afa85012407efadd4bc49928 kopano-server.conf
-fe52eab1c33e4b0469506e8215216131e2d4c45f225dfec6511ab81f0b88180507a4019637691873dc3e2d21ccf9cacc4de1434000e28f480189253ac23a5f44 0001-python-Use-libmdbx-instead-of-bsddb.patch
-603409480e56a557dc2031bb6790a72a2fb310937f06acbd637f7d5c4617344bb0e037d3730f8b6b03f25d12ff32f8ef33ab87c2611b33e4865c47529cc103ae 0002-provider.patch
-ec72f40ccdb574efcb984ea0aded82668f787eef6d95fd0ca9f953a77d78cb4b3fe04ce233c6dabce72911462d7f11af8aacaa201a78cf125f84970978a5342e 0003-spamd-Correct-owner-and-group-of-spamd-ham_dir-spam_.patch
-9ccb1db734905972d96ea3f02fdfab8bfde55b7c43c606dc220a7a84863823a9526c972c5da830ab99e8f3215c84821ee89062e872f7935152e3c92b1d469b82 0004-configure.ac-depend-on-libldap-not-libldap_r-doesn-t.patch
-fc793af00cdf28f5c3a5e51a6e51e8c64debc864b5d7b2ae6c5cfb760afed7d34b09d3fe5b04b401457e4ee829b6162358a632ccac23093309e082631195940c fix-icu-70-1.patch
-0510629c00faa2dbbfce980747cf02180aa9480c784f59222815f935917db6fdafb0c07dc0e300aad83e39dc9d6755829a9340b366ffce9b77e8c85b86af30c4 fix-build-with-musl-1.2.3.patch
-"
diff --git a/testing/kopano-core/fix-build-with-musl-1.2.3.patch b/testing/kopano-core/fix-build-with-musl-1.2.3.patch
deleted file mode 100644
index 89405b7261f..00000000000
--- a/testing/kopano-core/fix-build-with-musl-1.2.3.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/swig/IECServiceAdmin.i
-+++ b/swig/IECServiceAdmin.i
-@@ -11,7 +11,7 @@
- %apply MAPILIST {LPECSVRNAMELIST};
- %apply MAPILIST * {LPECSERVERLIST* OUTPUT};
-
--%typemap(in,numinputs=0) (bool *OUTPUT) (bool bBool = NULL) {
-+%typemap(in,numinputs=0) (bool *OUTPUT) (bool bBool = 0) {
- $1 = &bBool;
- }
- %typemap(argout, fragment="SWIG_From_int") bool *OUTPUT{
diff --git a/testing/kopano-core/fix-icu-70-1.patch b/testing/kopano-core/fix-icu-70-1.patch
deleted file mode 100644
index c27a5e27b7a..00000000000
--- a/testing/kopano-core/fix-icu-70-1.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-#https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/26412/diffs#961ab7ed8701436ae6dfa236ad9fd2e113c50859
-
---- a/provider/client/ECGenericProp.cpp
-+++ b/provider/client/ECGenericProp.cpp
-@@ -854,7 +854,7 @@
- ++nProblem;
- continue;
- }
-- auto hrT = HrDeleteRealProp(lpPropTagArray->aulPropTag[i],FALSE);
-+ auto hrT = HrDeleteRealProp(lpPropTagArray->aulPropTag[i],false);
- if (hrT == hrSuccess)
- continue;
- // Add the error
diff --git a/testing/kopano-core/kopano-core.pre-install b/testing/kopano-core/kopano-core.pre-install
deleted file mode 100644
index 426b69f81b3..00000000000
--- a/testing/kopano-core/kopano-core.pre-install
+++ /dev/null
@@ -1,15 +0,0 @@
-#!/bin/sh
-
-addgroup -S kopano >/dev/null 2>/dev/null
-addgroup http >/dev/null 2>/dev/null
-adduser -S -D -H -h /var/lib/kopano -s /sbin/nologin -g kopano-core kopano-core >/dev/null 2>/dev/null
-addgroup -S kopano-core kopano >/dev/null 2>/dev/null
-addgroup -S kopano-diraccess >/dev/null 2>/dev/null
-addgroup -S kopano-gateway >/dev/null 2>/dev/null
-addgroup -S kopano-ical >/dev/null 2>/dev/null
-adduser postfix kopano-diraccess >/dev/null 2>/dev/null
-adduser -S -D -H -h /var/lib/kopano/ -s /sbin/nologin -g kopano-gateway kopano-gateway >/dev/null 2>/dev/null
-adduser -S -D -H -h /var/lib/kopano/ -s /sbin/nologin -g kopano-ical kopano-ical >/dev/null 2>/dev/null
-addgroup -S kopano-gateway kopano >/dev/null 2>/dev/null
-addgroup -S kopano-ical kopano >/dev/null 2>/dev/null
-exit 0
diff --git a/testing/kopano-core/kopano-dagent.initd b/testing/kopano-core/kopano-dagent.initd
deleted file mode 100644
index 120661cf30a..00000000000
--- a/testing/kopano-core/kopano-dagent.initd
+++ /dev/null
@@ -1,12 +0,0 @@
-#!/sbin/openrc-run
-supervisor=supervise-daemon
-name=$RC_SVCNAME
-command="/usr/bin/kopano-dagent"
-command_args="-l -c /etc/kopano/dagent.cfg"
-depend() {
- need net kopano-server
-}
-
-start_pre() {
- checkpath -d -m 750 -o kopano-core:kopano /var/lib/kopano/dagent
-}
diff --git a/testing/kopano-core/kopano-gateway.initd b/testing/kopano-core/kopano-gateway.initd
deleted file mode 100644
index aeba770cedf..00000000000
--- a/testing/kopano-core/kopano-gateway.initd
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/sbin/openrc-run
-supervisor=supervise-daemon
-name=$RC_SVCNAME
-command="/usr/bin/kopano-gateway"
-
-depend() {
- need kopano-server
-}
diff --git a/testing/kopano-core/kopano-ical.initd b/testing/kopano-core/kopano-ical.initd
deleted file mode 100644
index e2d07c2c18e..00000000000
--- a/testing/kopano-core/kopano-ical.initd
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/sbin/openrc-run
-supervisor=supervise-daemon
-name=$RC_SVCNAME
-command="/usr/bin/kopano-ical"
-
-depend() {
- need kopano-server
-}
diff --git a/testing/kopano-core/kopano-monitor.initd b/testing/kopano-core/kopano-monitor.initd
deleted file mode 100644
index 99abc802cb5..00000000000
--- a/testing/kopano-core/kopano-monitor.initd
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/sbin/openrc-run
-supervisor=supervise-daemon
-name=$RC_SVCNAME
-command="/usr/bin/kopano-monitor"
-
-depend() {
- need kopano-server
-}
diff --git a/testing/kopano-core/kopano-search.initd b/testing/kopano-core/kopano-search.initd
deleted file mode 100644
index c793c70b1b3..00000000000
--- a/testing/kopano-core/kopano-search.initd
+++ /dev/null
@@ -1,12 +0,0 @@
-#!/sbin/openrc-run
-supervisor=supervise-daemon
-name=$RC_SVCNAME
-command="/usr/bin/kopano-search"
-
-depend() {
- need kopano-server
-}
-
-start_pre() {
- checkpath -d -m 750 -o kopano-core:kopano /var/lib/kopano/search
-}
diff --git a/testing/kopano-core/kopano-server.conf b/testing/kopano-core/kopano-server.conf
deleted file mode 100644
index 1ca85468053..00000000000
--- a/testing/kopano-core/kopano-server.conf
+++ /dev/null
@@ -1 +0,0 @@
-rc_ulimit="-n 60000"
diff --git a/testing/kopano-core/kopano-server.initd b/testing/kopano-core/kopano-server.initd
deleted file mode 100644
index 62bb69fdef7..00000000000
--- a/testing/kopano-core/kopano-server.initd
+++ /dev/null
@@ -1,12 +0,0 @@
-#!/sbin/openrc-run
-supervisor=supervise-daemon
-name=$RC_SVCNAME
-command="/usr/bin/kopano-server"
-
-depend() {
- after mariadb
-}
-
-start_pre() {
- checkpath -d -m 750 -o kopano-core:kopano /run/kopano
-}
diff --git a/testing/kopano-core/kopano-spamd.initd b/testing/kopano-core/kopano-spamd.initd
deleted file mode 100644
index c3801818e85..00000000000
--- a/testing/kopano-core/kopano-spamd.initd
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/sbin/openrc-run
-supervisor=supervise-daemon
-name=$RC_SVCNAME
-command="/usr/bin/kopano-spamd"
-
-depend() {
- need kopano-server
-}
diff --git a/testing/kopano-core/kopano-spooler.initd b/testing/kopano-core/kopano-spooler.initd
deleted file mode 100644
index b65da6bce23..00000000000
--- a/testing/kopano-core/kopano-spooler.initd
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/sbin/openrc-run
-supervisor=supervise-daemon
-name=$RC_SVCNAME
-command="/usr/bin/kopano-spooler"
-
-depend() {
- need kopano-server
-}
diff --git a/testing/kopano-webapp-desktopnotifications/APKBUILD b/testing/kopano-webapp-desktopnotifications/APKBUILD
deleted file mode 100644
index 01081c3806e..00000000000
--- a/testing/kopano-webapp-desktopnotifications/APKBUILD
+++ /dev/null
@@ -1,112 +0,0 @@
-# Maintainer: Noel Kuntze <noel.kuntze@contauro.com>
-pkgname=kopano-webapp-desktopnotifications
-pkgdesc="desktop notification plugin for kopano-webapp"
-pkgver=2.0.3
-pkgrel=2
-# ppc64le and riscv64 blocked by libmdbx -> kopano-core -> kopano-webapp
-arch="noarch !ppc64le !riscv64"
-url="https://stash.kopano.io/projects/KWA/repos/desktopnotifications/browse"
-license="AGPL-3.0-only"
-options="!check" # No test suite
-depends="kopano-webapp"
-# kopano-core necessary for mapi php module
-makedepends="apache-ant openjdk8 kopano-webapp-src kopano-core"
-source="
- kopano-webapp-desktopnotifications-$pkgver.zip::https://stash.kopano.io/rest/api/latest/projects/KWA/repos/desktopnotifications/archive?at=refs%2Ftags%2Fv$pkgver&format=zip
-"
-
-_pluginname="${pkgname//kopano-webapp-/}"
-
-builddir="$srcdir/"
-
-#helper function
-unpack() {
- local u
- verify
- initdcheck
- mkdir -p "$srcdir"
- local gunzip="$(command -v pigz || echo gunzip)"
- [ $gunzip = "/usr/bin/pigz" ] && gunzip="$gunzip -d"
- for u in $source; do
- local s
- local filename="$(filename_from_uri $u)"
- local new_root_dir="$builddir/${filename%%-[0-9]*}"
- if is_remote "$u"; then
- s="$SRCDEST/$filename"
- else
- s="$startdir/$u"
- fi
- case "$s" in
- *.tar)
- msg "Unpacking $s..."
- mkdir -p "$new_root_dir"
- tar -C "$new_root_dir" -xf "$s" ;;
- *.tar.gz|*.tgz)
- msg "Unpacking $s..."
- mkdir -p "$new_root_dir"
- $gunzip -c "$s" | tar -C "$new_root_dir" -x ;;
- *.tar.bz2)
- msg "Unpacking $s..."
- tar -C "$new_root_dir" -jxf "$s" ;;
- *.tar.lz)
- msg "Unpacking $s..."
- tar -C "$new_root_dir" --lzip -xf "$s" ;;
- *.tar.lzma)
- msg "Unpacking $s..."
- unlzma -T 0 -c "$s" | tar -C "$new_root_dir" -x ;;
- *.tar.xz)
- msg "Unpacking $s..."
- local threads_opt
- if [ "$(readlink -f "$(command -v unxz)")" != "/bin/busybox" ]; then
- threads_opt="--threads=0"
- fi
- unxz $threads_opt -c "$s" | tar -C "$new_root_dir" -x ;;
- *.zip)
- msg "Unpacking $s..."
- unzip -n -q "$s" -d "$new_root_dir" ;;
- esac
- done
-}
-
-prepare() {
- cp -R /usr/share/src/kopano-webapp/ kopano-webapp
- find "kopano-webapp/plugins/" -type d -mindepth 1 -maxdepth 2 -print0 | xargs -0 -- rm -rf
- mv $pkgname kopano-webapp/plugins/$_pluginname
- default_prepare
-}
-
-build() {
- cd kopano-webapp
- ant tools
- cd plugins/$_pluginname
- ant deploy -Droot-folder="$(pwd)/../../" -Dtarget-folder="$(pwd)/../../deploy/plugins"
-}
-
-package() {
- cd "$srcdir/kopano-webapp/deploy/plugins/$_pluginname/"
-
- sed -i -e "s/\(PLUGIN_DESKTOPNOTIFICATION_USER_DEFAULT_ENABLE', \)\(.*\)\();$\)/\1true\3/" config.php
-
- # /usr/share
- mkdir -p "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/"
- cp -R -- * "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/"
- rm -f "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/config.php"
-
- # /var/lib
- install -dm 0700 -o kopano-webapp -g root "$pkgdir/var/lib/kopano-webapp/plugins/$_pluginname"
- # /etc
- if [ -e "config.php" ]; then
- ## perform settings
- # convert windows line break to unix: http://stackoverflow.com/questions/11680815/removing-windows-newlines-on-linux-sed-vs-awk
- sed -i -e $'s/\r//' config.php
- install -dm 0750 -g kopano-webapp "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/"
- ## config mains
- install -m 0750 -g kopano-webapp config.php "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php"
- ln -sf "/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php" "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/config.php"
- ## config examples
- install -m 0750 "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php" "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.example.php"
- fi
-}
-sha512sums="
-b806536a173b34a4403581bc60a57f82214fd9d7a247ebbb0c87f1242fb1f341850b9eedb95ef7f4be0c5c33453ce95a19c69145bc04b8867332959cb585f3e9 kopano-webapp-desktopnotifications-2.0.3.zip
-"
diff --git a/testing/kopano-webapp-fetchmail/APKBUILD b/testing/kopano-webapp-fetchmail/APKBUILD
deleted file mode 100644
index 095768190ed..00000000000
--- a/testing/kopano-webapp-fetchmail/APKBUILD
+++ /dev/null
@@ -1,109 +0,0 @@
-# Maintainer: Noel Kuntze <noel.kuntze@contauro.com>
-pkgname=kopano-webapp-fetchmail
-pkgdesc="fetchmail plugin for kopano-webapp"
-pkgver=1.3
-pkgrel=2
-# ppc64le and riscv64 blocked by libmdbx -> kopano-core -> kopano-webapp
-arch="noarch !ppc64le !riscv64"
-url="https://github.com/mpietruschka/kopano-webapp-fetchmail"
-license="AGPL-3.0-only"
-options="!check" # No test suite
-depends="kopano-webapp php7-mysqli fetchmail"
-# kopano-core necessary for mapi php module
-makedepends="apache-ant openjdk8 kopano-webapp-src kopano-core"
-source="
- kopano-webapp-fetchmail-$pkgver.zip::https://github.com/mpietruschka/kopano-webapp-fetchmail/archive/refs/tags/$pkgver.zip
-"
-
-_pluginname="${pkgname//kopano-webapp-/}"
-
-builddir="$srcdir/"
-
-#helper function
-unpack() {
- local u
- verify
- initdcheck
- mkdir -p "$srcdir"
- local gunzip="$(command -v pigz || echo gunzip)"
- [ $gunzip = "/usr/bin/pigz" ] && gunzip="$gunzip -d"
- for u in $source; do
- local s
- local filename="$(filename_from_uri $u)"
- local new_root_dir="$builddir/${filename%%-[0-9]*}"
- if is_remote "$u"; then
- s="$SRCDEST/$filename"
- else
- s="$startdir/$u"
- fi
- case "$s" in
- *.tar)
- msg "Unpacking $s..."
- mkdir -p "$new_root_dir"
- tar -C "$new_root_dir" -xf "$s" ;;
- *.tar.gz|*.tgz)
- msg "Unpacking $s..."
- mkdir -p "$new_root_dir"
- $gunzip -c "$s" | tar -C "$new_root_dir" -x ;;
- *.tar.bz2)
- msg "Unpacking $s..."
- tar -C "$new_root_dir" -jxf "$s" ;;
- *.tar.lz)
- msg "Unpacking $s..."
- tar -C "$new_root_dir" --lzip -xf "$s" ;;
- *.tar.lzma)
- msg "Unpacking $s..."
- unlzma -T 0 -c "$s" | tar -C "$new_root_dir" -x ;;
- *.tar.xz)
- msg "Unpacking $s..."
- local threads_opt
- if [ "$(readlink -f "$(command -v unxz)")" != "/bin/busybox" ]; then
- threads_opt="--threads=0"
- fi
- unxz $threads_opt -c "$s" | tar -C "$new_root_dir" -x ;;
- *.zip)
- msg "Unpacking $s..."
- unzip -n -q "$s" -d "$new_root_dir" ;;
- esac
- done
-}
-
-prepare() {
- cp -R /usr/share/src/kopano-webapp/ kopano-webapp
- find "kopano-webapp/plugins/" -type d -mindepth 1 -maxdepth 2 -print0 | xargs -0 -- rm -rf
- mv $pkgname/kopano-webapp-fetchmail-* kopano-webapp/plugins/$_pluginname
- default_prepare
-}
-
-build() {
- cd kopano-webapp
- ant tools
- cd plugins/$_pluginname
- ant deploy -Droot-folder="$(pwd)/../../" -Dtarget-folder="$(pwd)/../../deploy/plugins"
-}
-
-package() {
- cd "$srcdir/kopano-webapp/deploy/plugins/$_pluginname/"
- # /usr/share
- mkdir -p "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/"
- cp -R -- * "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/"
- rm -f "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/config.php"
-
- # /var/lib
- install -dm 0700 -o kopano-webapp -g root "$pkgdir/var/lib/kopano-webapp/plugins/$_pluginname"
- # /etc
- if [ -e "config.php" ]; then
- ## perform settings
- # convert windows line break to unix: http://stackoverflow.com/questions/11680815/removing-windows-newlines-on-linux-sed-vs-awk
- sed -i -e $'s/\r//' config.php
- install -dm 0750 -g kopano-webapp "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/"
- ## config mains
- install -m 0750 -g kopano-webapp config.php "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php"
- ln -sf "/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php" "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/config.php"
- ## config examples
- install -m 0750 "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php" "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.example.php"
- fi
-}
-sha512sums="
-96f10a7d9b23f2a24610e2ef8f32e67f39c9435a9b73bc92b478478a85798fbe475aa8387113dfabeb57af636f53e930f50204fee07d6a04b5c8053d467573da kopano-webapp-fetchmail-1.3.zip
-"
diff --git a/testing/kopano-webapp-filepreviewer/APKBUILD b/testing/kopano-webapp-filepreviewer/APKBUILD
deleted file mode 100644
index d1c0c279bca..00000000000
--- a/testing/kopano-webapp-filepreviewer/APKBUILD
+++ /dev/null
@@ -1,109 +0,0 @@
-# Maintainer: Noel Kuntze <noel.kuntze@contauro.com>
-pkgname=kopano-webapp-filepreviewer
-pkgdesc="filepreviewer plugin for kopano-webapp"
-pkgver=2.2.0
-pkgrel=2
-# ppc64le and riscv64 blocked by libmdbx -> kopano-core -> kopano-webapp
-arch="noarch !ppc64le !riscv64"
-url="https://stash.kopano.io/projects/KWA/repos/filepreviewer/browse"
-license="AGPL-3.0-only"
-options="!check" # No test suite
-depends="kopano-webapp"
-# kopano-core necessary for mapi php module
-makedepends="apache-ant openjdk8 kopano-webapp-src kopano-core"
-source="
- kopano-webapp-filepreviewer-$pkgver.zip::https://stash.kopano.io/rest/api/latest/projects/KWA/repos/filepreviewer/archive?at=refs%2Ftags%2Fv$pkgver&format=zip
-"
-
-_pluginname="${pkgname//kopano-webapp-/}"
-
-builddir="$srcdir/"
-
-#helper function
-unpack() {
- local u
- verify
- initdcheck
- mkdir -p "$srcdir"
- local gunzip="$(command -v pigz || echo gunzip)"
- [ $gunzip = "/usr/bin/pigz" ] && gunzip="$gunzip -d"
- for u in $source; do
- local s
- local filename="$(filename_from_uri $u)"
- local new_root_dir="$builddir/${filename%%-[0-9]*}"
- if is_remote "$u"; then
- s="$SRCDEST/$filename"
- else
- s="$startdir/$u"
- fi
- case "$s" in
- *.tar)
- msg "Unpacking $s..."
- mkdir -p "$new_root_dir"
- tar -C "$new_root_dir" -xf "$s" ;;
- *.tar.gz|*.tgz)
- msg "Unpacking $s..."
- mkdir -p "$new_root_dir"
- $gunzip -c "$s" | tar -C "$new_root_dir" -x ;;
- *.tar.bz2)
- msg "Unpacking $s..."
- tar -C "$new_root_dir" -jxf "$s" ;;
- *.tar.lz)
- msg "Unpacking $s..."
- tar -C "$new_root_dir" --lzip -xf "$s" ;;
- *.tar.lzma)
- msg "Unpacking $s..."
- unlzma -T 0 -c "$s" | tar -C "$new_root_dir" -x ;;
- *.tar.xz)
- msg "Unpacking $s..."
- local threads_opt
- if [ "$(readlink -f "$(command -v unxz)")" != "/bin/busybox" ]; then
- threads_opt="--threads=0"
- fi
- unxz $threads_opt -c "$s" | tar -C "$new_root_dir" -x ;;
- *.zip)
- msg "Unpacking $s..."
- unzip -n -q "$s" -d "$new_root_dir" ;;
- esac
- done
-}
-
-prepare() {
- cp -R /usr/share/src/kopano-webapp/ kopano-webapp
- find "kopano-webapp/plugins/" -type d -mindepth 1 -maxdepth 2 -print0 | xargs -0 -- rm -rf
- mv $pkgname kopano-webapp/plugins/$_pluginname
- default_prepare
-}
-
-build() {
- cd kopano-webapp
- ant tools
- cd plugins/$_pluginname
- ant deploy -Droot-folder="$(pwd)/../../" -Dtarget-folder="$(pwd)/../../deploy/plugins"
-}
-
-package() {
- cd "$srcdir/kopano-webapp/deploy/plugins/$_pluginname/"
- # /usr/share
- mkdir -p "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/"
- cp -R -- * "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/"
- rm -f "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/config.php"
-
- # /var/lib
- install -dm 0700 -o kopano-webapp -g root "$pkgdir/var/lib/kopano-webapp/plugins/$_pluginname"
- # /etc
- if [ -e "config.php" ]; then
- ## perform settings
- # convert windows line break to unix: http://stackoverflow.com/questions/11680815/removing-windows-newlines-on-linux-sed-vs-awk
- sed -i -e $'s/\r//' config.php
- install -dm 0750 -g kopano-webapp "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/"
- ## config mains
- install -m 0750 -g kopano-webapp config.php "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php"
- ln -sf "/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php" "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/config.php"
- ## config examples
- install -m 0750 "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php" "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.example.php"
- fi
-}
-sha512sums="
-d56aaae46153bd2350dc13a67a3c75305db12b88047e9bd038dcfc2bae8a991af4c4913641641ab1088548fb3dc49a02f402a2a3aa01640b08d0286b27175950 kopano-webapp-filepreviewer-2.2.0.zip
-"
diff --git a/testing/kopano-webapp-files-backend-owncloud/APKBUILD b/testing/kopano-webapp-files-backend-owncloud/APKBUILD
deleted file mode 100644
index ff9ab419a15..00000000000
--- a/testing/kopano-webapp-files-backend-owncloud/APKBUILD
+++ /dev/null
@@ -1,110 +0,0 @@
-# Maintainer: Noel Kuntze <noel.kuntze@contauro.com>
-pkgname=kopano-webapp-files-backend-owncloud
-pkgdesc="owncloud backend for the files plugin for kopano-webapp"
-pkgver=4.0.0
-pkgrel=2
-# ppc64le and riscv64 blocked by libmdbx -> kopano-core
-arch="noarch !ppc64le !riscv64"
-url="http://www.kopano.com/"
-license="AGPL-3.0-only"
-options="!check" # No test suite
-depends="kopano-webapp-files"
-# kopano-core necessary for mapi php module
-makedepends="apache-ant openjdk8 kopano-webapp-src kopano-core"
-source="
- kopano-webapp-files-backend-owncloud-$pkgver.zip::https://stash.kopano.io/rest/api/latest/projects/KWA/repos/files-owncloud-backend/archive?at=refs%2Ftags%2Fv$pkgver&format=zip
-"
-
-# special name
-_pluginname="filesbackendOwncloud"
-
-builddir="$srcdir/"
-
-#helper function
-unpack() {
- local u
- verify
- initdcheck
- mkdir -p "$srcdir"
- local gunzip="$(command -v pigz || echo gunzip)"
- [ $gunzip = "/usr/bin/pigz" ] && gunzip="$gunzip -d"
- for u in $source; do
- local s
- local filename="$(filename_from_uri $u)"
- local new_root_dir="$builddir/${filename%%-[0-9]*}"
- if is_remote "$u"; then
- s="$SRCDEST/$filename"
- else
- s="$startdir/$u"
- fi
- case "$s" in
- *.tar)
- msg "Unpacking $s..."
- mkdir -p "$new_root_dir"
- tar -C "$new_root_dir" -xf "$s" ;;
- *.tar.gz|*.tgz)
- msg "Unpacking $s..."
- mkdir -p "$new_root_dir"
- $gunzip -c "$s" | tar -C "$new_root_dir" -x ;;
- *.tar.bz2)
- msg "Unpacking $s..."
- tar -C "$new_root_dir" -jxf "$s" ;;
- *.tar.lz)
- msg "Unpacking $s..."
- tar -C "$new_root_dir" --lzip -xf "$s" ;;
- *.tar.lzma)
- msg "Unpacking $s..."
- unlzma -T 0 -c "$s" | tar -C "$new_root_dir" -x ;;
- *.tar.xz)
- msg "Unpacking $s..."
- local threads_opt
- if [ "$(readlink -f "$(command -v unxz)")" != "/bin/busybox" ]; then
- threads_opt="--threads=0"
- fi
- unxz $threads_opt -c "$s" | tar -C "$new_root_dir" -x ;;
- *.zip)
- msg "Unpacking $s..."
- unzip -n -q "$s" -d "$new_root_dir" ;;
- esac
- done
-}
-
-prepare() {
- cp -R /usr/share/src/kopano-webapp/ kopano-webapp
- find "kopano-webapp/plugins/" -type d -mindepth 1 -maxdepth 2 -print0 | xargs -0 -- rm -rf
- mv $pkgname kopano-webapp/plugins/$_pluginname
- default_prepare
-}
-
-build() {
- cd kopano-webapp
- ant tools
- cd plugins/$_pluginname
- ant deploy -Droot-folder="$(pwd)/../../" -Dtarget-folder="$(pwd)/../../deploy/plugins"
-}
-
-package() {
- cd "$srcdir/kopano-webapp/deploy/plugins/$_pluginname/"
- # /usr/share
- mkdir -p "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/"
- cp -R -- * "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/"
- rm -f "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/config.php"
-
- # /var/lib
- install -dm 0700 -o kopano-webapp -g root "$pkgdir/var/lib/kopano-webapp/plugins/$_pluginname"
- # /etc
- if [ -e "config.php" ]; then
- ## perform settings
- # convert windows line break to unix: http://stackoverflow.com/questions/11680815/removing-windows-newlines-on-linux-sed-vs-awk
- sed -i -e $'s/\r//' config.php
- install -dm 0750 -g kopano-webapp "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/"
- ## config mains
- install -m 0750 -g kopano-webapp config.php "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php"
- ln -sf "/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php" "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/config.php"
- ## config examples
- install -m 0750 "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php" "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.example.php"
- fi
-}
-sha512sums="
-57d833241fa590ff8498dbdd23b8280c534c3c0b885135f9d0c4102a529aa27c4899d22b748f93f09306a06bf19a62cacc0fe6a85c0db179e5ea3d347473a4e2 kopano-webapp-files-backend-owncloud-4.0.0.zip
-"
diff --git a/testing/kopano-webapp-files-backend-smb/APKBUILD b/testing/kopano-webapp-files-backend-smb/APKBUILD
deleted file mode 100644
index d9eb5f213c7..00000000000
--- a/testing/kopano-webapp-files-backend-smb/APKBUILD
+++ /dev/null
@@ -1,110 +0,0 @@
-# Maintainer: Noel Kuntze <noel.kuntze@contauro.com>
-pkgname=kopano-webapp-files-backend-smb
-pkgdesc="smb backend for the files plugin for kopano-webapp"
-pkgver=4.0.0
-pkgrel=2
-# ppc64le and riscv64 blocked by libmdbx -> kopano-core
-arch="noarch !ppc64le !riscv64"
-url="http://www.kopano.com/"
-license="AGPL-3.0-only"
-options="!check" # No test suite
-depends="kopano-webapp-files"
-# kopano-core necessary for mapi php module
-makedepends="apache-ant openjdk8 kopano-webapp-src kopano-core"
-source="
- kopano-webapp-files-backend-smb-$pkgver.zip::https://stash.kopano.io/rest/api/latest/projects/KWA/repos/files-smb-backend/archive?at=refs%2Ftags%2Fv$pkgver&format=zip
-"
-
-# special name
-_pluginname="filesbackendSMB"
-
-builddir="$srcdir/"
-
-#helper function
-unpack() {
- local u
- verify
- initdcheck
- mkdir -p "$srcdir"
- local gunzip="$(command -v pigz || echo gunzip)"
- [ $gunzip = "/usr/bin/pigz" ] && gunzip="$gunzip -d"
- for u in $source; do
- local s
- local filename="$(filename_from_uri $u)"
- local new_root_dir="$builddir/${filename%%-[0-9]*}"
- if is_remote "$u"; then
- s="$SRCDEST/$filename"
- else
- s="$startdir/$u"
- fi
- case "$s" in
- *.tar)
- msg "Unpacking $s..."
- mkdir -p "$new_root_dir"
- tar -C "$new_root_dir" -xf "$s" ;;
- *.tar.gz|*.tgz)
- msg "Unpacking $s..."
- mkdir -p "$new_root_dir"
- $gunzip -c "$s" | tar -C "$new_root_dir" -x ;;
- *.tar.bz2)
- msg "Unpacking $s..."
- tar -C "$new_root_dir" -jxf "$s" ;;
- *.tar.lz)
- msg "Unpacking $s..."
- tar -C "$new_root_dir" --lzip -xf "$s" ;;
- *.tar.lzma)
- msg "Unpacking $s..."
- unlzma -T 0 -c "$s" | tar -C "$new_root_dir" -x ;;
- *.tar.xz)
- msg "Unpacking $s..."
- local threads_opt
- if [ "$(readlink -f "$(command -v unxz)")" != "/bin/busybox" ]; then
- threads_opt="--threads=0"
- fi
- unxz $threads_opt -c "$s" | tar -C "$new_root_dir" -x ;;
- *.zip)
- msg "Unpacking $s..."
- unzip -n -q "$s" -d "$new_root_dir" ;;
- esac
- done
-}
-
-prepare() {
- cp -R /usr/share/src/kopano-webapp/ kopano-webapp
- find "kopano-webapp/plugins/" -type d -mindepth 1 -maxdepth 2 -print0 | xargs -0 -- rm -rf
- mv $pkgname kopano-webapp/plugins/$_pluginname
- default_prepare
-}
-
-build() {
- cd kopano-webapp
- ant tools
- cd plugins/$_pluginname
- ant deploy -Droot-folder="$(pwd)/../../" -Dtarget-folder="$(pwd)/../../deploy/plugins"
-}
-
-package() {
- cd "$srcdir/kopano-webapp/deploy/plugins/$_pluginname/"
- # /usr/share
- mkdir -p "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/"
- cp -R -- * "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/"
- rm -f "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/config.php"
-
- # /var/lib
- install -dm 0700 -o kopano-webapp -g root "$pkgdir/var/lib/kopano-webapp/plugins/$_pluginname"
- # /etc
- if [ -e "config.php" ]; then
- ## perform settings
- # convert windows line break to unix: http://stackoverflow.com/questions/11680815/removing-windows-newlines-on-linux-sed-vs-awk
- sed -i -e $'s/\r//' config.php
- install -dm 0750 -g kopano-webapp "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/"
- ## config mains
- install -m 0750 -g kopano-webapp config.php "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php"
- ln -sf "/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php" "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/config.php"
- ## config examples
- install -m 0750 "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php" "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.example.php"
- fi
-}
-sha512sums="
-7af79cac8e8bd8be380db380ff01574a8630d7dc234005c1e92e9b6a07cccdde7b784d67ce9ec020d251fb0cbc7971ca96d2ac4abd185880b8f6beedf0d41280 kopano-webapp-files-backend-smb-4.0.0.zip
-"
diff --git a/testing/kopano-webapp-files/APKBUILD b/testing/kopano-webapp-files/APKBUILD
deleted file mode 100644
index 893511c297b..00000000000
--- a/testing/kopano-webapp-files/APKBUILD
+++ /dev/null
@@ -1,119 +0,0 @@
-# Maintainer: Noel Kuntze <noel.kuntze@contauro.com>
-pkgname=kopano-webapp-files
-pkgdesc="files plugin for kopano-webapp"
-pkgver=3.0.1
-pkgrel=2
-# ppc64le and riscv64 blocked by libmdbx -> kopano-core -> kopano-webapp
-arch="noarch !ppc64le !riscv64"
-url="https://stash.kopano.io/projects/KWA/repos/files/browse"
-license="AGPL-3.0-only"
-options="!check" # No test suite
-depends="kopano-webapp"
-# kopano-core necessary for mapi php module
-makedepends="apache-ant openjdk8 kopano-webapp-src kopano-core"
-source="
- kopano-webapp-files-$pkgver.zip::https://stash.kopano.io/rest/api/latest/projects/KWA/repos/files/archive?at=refs%2Ftags%2Fv$pkgver&format=zip
- kopano-webapp-files.ini
-"
-
-_pluginname="${pkgname//kopano-webapp-/}"
-
-builddir="$srcdir/"
-
-#helper function
-unpack() {
- local u
- verify
- initdcheck
- mkdir -p "$srcdir"
- local gunzip="$(command -v pigz || echo gunzip)"
- [ $gunzip = "/usr/bin/pigz" ] && gunzip="$gunzip -d"
- for u in $source; do
- local s
- local filename="$(filename_from_uri $u)"
- local new_root_dir="$builddir/${filename%%-[0-9]*}"
- if is_remote "$u"; then
- s="$SRCDEST/$filename"
- else
- s="$startdir/$u"
- fi
- case "$s" in
- *.tar)
- msg "Unpacking $s..."
- mkdir -p "$new_root_dir"
- tar -C "$new_root_dir" -xf "$s" ;;
- *.tar.gz|*.tgz)
- msg "Unpacking $s..."
- mkdir -p "$new_root_dir"
- $gunzip -c "$s" | tar -C "$new_root_dir" -x ;;
- *.tar.bz2)
- msg "Unpacking $s..."
- tar -C "$new_root_dir" -jxf "$s" ;;
- *.tar.lz)
- msg "Unpacking $s..."
- tar -C "$new_root_dir" --lzip -xf "$s" ;;
- *.tar.lzma)
- msg "Unpacking $s..."
- unlzma -T 0 -c "$s" | tar -C "$new_root_dir" -x ;;
- *.tar.xz)
- msg "Unpacking $s..."
- local threads_opt
- if [ "$(readlink -f "$(command -v unxz)")" != "/bin/busybox" ]; then
- threads_opt="--threads=0"
- fi
- unxz $threads_opt -c "$s" | tar -C "$new_root_dir" -x ;;
- *.zip)
- msg "Unpacking $s..."
- unzip -n -q "$s" -d "$new_root_dir" ;;
- esac
- done
-}
-
-prepare() {
- cp -R /usr/share/src/kopano-webapp/ kopano-webapp
- find "kopano-webapp/plugins/" -type d -mindepth 1 -maxdepth 2 -print0 | xargs -0 -- rm -rf
- mv $pkgname kopano-webapp/plugins/$_pluginname
- default_prepare
-}
-
-build() {
- cd kopano-webapp
- ant tools
- cd plugins/$_pluginname
- ant deploy -Droot-folder="$(pwd)/../../" -Dtarget-folder="$(pwd)/../../deploy/plugins"
-}
-
-package() {
- cd "$srcdir/kopano-webapp/deploy/plugins/$_pluginname/"
-
- sed -i -e "s|\(PLUGIN_FILESBROWSER_LOGLEVEL', \)\(.*\)\();$\)|\1'ERROR'\3|" config.php
- sed -i -e "s|\(PLUGIN_FILES_CACHE_DIR', \)\(.*\)\();$\)|\1'/var/lib/kopano-webapp/plugins/files'\3|" config.php
-
- # /usr/share
- mkdir -p "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/"
- cp -R -- * "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/"
- rm -f "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/config.php"
-
- # /var/lib
- install -dm 0700 -o kopano-webapp -g root "$pkgdir/var/lib/kopano-webapp/plugins/$_pluginname"
-
- # /etc
- if [ -e "config.php" ]; then
- ## perform settings
- # convert windows line break to unix: http://stackoverflow.com/questions/11680815/removing-windows-newlines-on-linux-sed-vs-awk
- sed -i -e $'s/\r//' config.php
- install -dm 0750 -g kopano-webapp "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/"
- ## config mains
- install -m 0750 -g kopano-webapp config.php "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php"
- ln -sf "/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php" "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/config.php"
- ## config examples
- install -m 0750 "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php" "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.example.php"
- fi
-
- mkdir -p "$pkgdir/etc/php/conf.d"
- cp "$srcdir/$pkgname.ini" "$pkgdir/etc/php/conf.d"
-}
-sha512sums="
-7cd4ad26833920397c4d864077e29f24e34848c086a120e85fd838cffc8326ced19fd8b9c3ccd182e3b64c8f18db363e3a172f00d5adecb24141928fe3e303bd kopano-webapp-files-3.0.1.zip
-8bda45524ba341753a1503e5a8bf2b4f73a365d9cf9b71c0e33cdb1f3b2a32b39186bad39fedc4a955d724884dee6333ceb218a44859151cb1964932c4fab198 kopano-webapp-files.ini
-"
diff --git a/testing/kopano-webapp-files/kopano-webapp-files.ini b/testing/kopano-webapp-files/kopano-webapp-files.ini
deleted file mode 100644
index 8a24027fc17..00000000000
--- a/testing/kopano-webapp-files/kopano-webapp-files.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-extension=curl
-#extension=memcached
diff --git a/testing/kopano-webapp-intranet/APKBUILD b/testing/kopano-webapp-intranet/APKBUILD
deleted file mode 100644
index 9ff53bd8199..00000000000
--- a/testing/kopano-webapp-intranet/APKBUILD
+++ /dev/null
@@ -1,110 +0,0 @@
-# Maintainer: Noel Kuntze <noel.kuntze@contauro.com>
-pkgname=kopano-webapp-intranet
-pkgdesc="intranet plugin for kopano-webapp"
-pkgver=1.0.1
-pkgrel=2
-# ppc64le and riscv64 blocked by libmdbx -> kopano-core -> kopano-webapp
-arch="noarch !ppc64le !riscv64"
-url="https://stash.kopano.io/projects/KWA/repos/intranet/browse"
-license="AGPL-3.0-only"
-options="!check" # No test suite
-depends="kopano-webapp"
-# kopano-core necessary for mapi php module
-makedepends="apache-ant openjdk8 kopano-webapp-src kopano-core"
-source="
- kopano-webapp-intranet-$pkgver.zip::https://stash.kopano.io/rest/api/latest/projects/KWA/repos/intranet/archive?at=refs%2Ftags%2Fv$pkgver&format=zip
-"
-
-_pluginname="${pkgname//kopano-webapp-/}"
-
-builddir="$srcdir/"
-
-#helper function
-unpack() {
- local u
- verify
- initdcheck
- mkdir -p "$srcdir"
- local gunzip="$(command -v pigz || echo gunzip)"
- [ $gunzip = "/usr/bin/pigz" ] && gunzip="$gunzip -d"
- for u in $source; do
- local s
- local filename="$(filename_from_uri $u)"
- local new_root_dir="$builddir/${filename%%-[0-9]*}"
- if is_remote "$u"; then
- s="$SRCDEST/$filename"
- else
- s="$startdir/$u"
- fi
- case "$s" in
- *.tar)
- msg "Unpacking $s..."
- mkdir -p "$new_root_dir"
- tar -C "$new_root_dir" -xf "$s" ;;
- *.tar.gz|*.tgz)
- msg "Unpacking $s..."
- mkdir -p "$new_root_dir"
- $gunzip -c "$s" | tar -C "$new_root_dir" -x ;;
- *.tar.bz2)
- msg "Unpacking $s..."
- tar -C "$new_root_dir" -jxf "$s" ;;
- *.tar.lz)
- msg "Unpacking $s..."
- tar -C "$new_root_dir" --lzip -xf "$s" ;;
- *.tar.lzma)
- msg "Unpacking $s..."
- unlzma -T 0 -c "$s" | tar -C "$new_root_dir" -x ;;
- *.tar.xz)
- msg "Unpacking $s..."
- local threads_opt
- if [ "$(readlink -f "$(command -v unxz)")" != "/bin/busybox" ]; then
- threads_opt="--threads=0"
- fi
- unxz $threads_opt -c "$s" | tar -C "$new_root_dir" -x ;;
- *.zip)
- msg "Unpacking $s..."
- unzip -n -q "$s" -d "$new_root_dir" ;;
- esac
- done
-}
-
-prepare() {
- cp -R /usr/share/src/kopano-webapp/ kopano-webapp
- find "kopano-webapp/plugins/" -type d -mindepth 1 -maxdepth 2 -print0 | xargs -0 -- rm -rf
- mv $pkgname kopano-webapp/plugins/$_pluginname
- default_prepare
-}
-
-build() {
- cd kopano-webapp
- ant tools
- cd plugins/$_pluginname
- ant deploy -Droot-folder="$(pwd)/../../" -Dtarget-folder="$(pwd)/../../deploy/plugins"
-}
-
-package() {
- cd "$srcdir/kopano-webapp/deploy/plugins/$_pluginname/"
-
- # /usr/share
- mkdir -p "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/"
- cp -R -- * "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/"
- rm -f "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/config.php"
-
- # /var/lib
- install -dm 0700 -o kopano-webapp -g root "$pkgdir/var/lib/kopano-webapp/plugins/$_pluginname"
- # /etc
- if [ -e "config.php" ]; then
- ## perform settings
- # convert windows line break to unix: http://stackoverflow.com/questions/11680815/removing-windows-newlines-on-linux-sed-vs-awk
- sed -i -e $'s/\r//' config.php
- install -dm 0750 -g kopano-webapp "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/"
- ## config mains
- install -m 0750 -g kopano-webapp config.php "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php"
- ln -sf "/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php" "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/config.php"
- ## config examples
- install -m 0750 "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php" "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.example.php"
- fi
-}
-sha512sums="
-45b3f8534c72892e900c28a71d1ed5f37b9b1835679454a635865681a71c267a9f465cfc3215d9c0fb5969538ac81d4570e4bc5f43bf49d41508ad84546bf4fd kopano-webapp-intranet-1.0.1.zip
-"
diff --git a/testing/kopano-webapp-mdm/APKBUILD b/testing/kopano-webapp-mdm/APKBUILD
deleted file mode 100644
index f866cf8cf60..00000000000
--- a/testing/kopano-webapp-mdm/APKBUILD
+++ /dev/null
@@ -1,114 +0,0 @@
-# Maintainer: Noel Kuntze <noel.kuntze@contauro.com>
-pkgname=kopano-webapp-mdm
-pkgdesc="mobile device management plugin for kopano-webapp"
-pkgver=3.3.0
-pkgrel=2
-# ppc64le and riscv64 blocked by libmdbx -> kopano-core -> kopano-webapp
-arch="noarch !ppc64le !riscv64"
-url="https://stash.kopano.io/projects/KWA/repos/mobile-device-management/browse"
-license="AGPL-3.0-only"
-options="!check" # No test suite
-depends="kopano-webapp z-push php7-soap"
-# kopano-core necessary for mapi php module
-makedepends="apache-ant openjdk8 kopano-webapp-src"
-source="
- kopano-webapp-mdm-$pkgver.zip::https://stash.kopano.io/rest/api/latest/projects/KWA/repos/mobile-device-management/archive?at=refs%2Ftags%2Fv$pkgver&format=zip
-"
-
-_pluginname="${pkgname//kopano-webapp-/}"
-
-builddir="$srcdir/"
-
-#helper function
-unpack() {
- local u
- verify
- initdcheck
- mkdir -p "$srcdir"
- local gunzip="$(command -v pigz || echo gunzip)"
- [ $gunzip = "/usr/bin/pigz" ] && gunzip="$gunzip -d"
- for u in $source; do
- local s
- local filename="$(filename_from_uri $u)"
- local new_root_dir="$builddir/${filename%%-[0-9]*}"
- if is_remote "$u"; then
- s="$SRCDEST/$filename"
- else
- s="$startdir/$u"
- fi
- case "$s" in
- *.tar)
- msg "Unpacking $s..."
- mkdir -p "$new_root_dir"
- tar -C "$new_root_dir" -xf "$s" ;;
- *.tar.gz|*.tgz)
- msg "Unpacking $s..."
- mkdir -p "$new_root_dir"
- $gunzip -c "$s" | tar -C "$new_root_dir" -x ;;
- *.tar.bz2)
- msg "Unpacking $s..."
- tar -C "$new_root_dir" -jxf "$s" ;;
- *.tar.lz)
- msg "Unpacking $s..."
- tar -C "$new_root_dir" --lzip -xf "$s" ;;
- *.tar.lzma)
- msg "Unpacking $s..."
- unlzma -T 0 -c "$s" | tar -C "$new_root_dir" -x ;;
- *.tar.xz)
- msg "Unpacking $s..."
- local threads_opt
- if [ "$(readlink -f "$(command -v unxz)")" != "/bin/busybox" ]; then
- threads_opt="--threads=0"
- fi
- unxz $threads_opt -c "$s" | tar -C "$new_root_dir" -x ;;
- *.zip)
- msg "Unpacking $s..."
- unzip -n -q "$s" -d "$new_root_dir" ;;
- esac
- done
-}
-
-prepare() {
- cp -R /usr/share/src/kopano-webapp/ kopano-webapp
- find "kopano-webapp/plugins/" -type d -mindepth 1 -maxdepth 2 -print0 | xargs -0 -- rm -rf
- mv $pkgname kopano-webapp/plugins/$_pluginname
- default_prepare
-}
-
-build() {
- cd kopano-webapp
- ant tools
- cd plugins/$_pluginname
- ant deploy -Droot-folder="$(pwd)/../../" -Dtarget-folder="$(pwd)/../../deploy/plugins"
-}
-
-package() {
- cd "$srcdir/kopano-webapp/deploy/plugins/$_pluginname/"
-
- sed -i -e "s/\(PLUGIN_MDM_USER_DEFAULT_ENABLE_MDM', \)\(.*\)\();$\)/\1true\3/" config.php
- sed -i -e "s/\(PLUGIN_MDM_SERVER', \)\(.*\)\();$\)/\1'127.0.0.1:81'\3/" config.php
- sed -i -e "s/\(PLUGIN_MDM_SERVER_SSL', \)\(.*\)\();$\)/\1false\3/" config.php
-
- # /usr/share
- mkdir -p "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/"
- cp -R -- * "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/"
- rm -f "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/config.php"
-
- # /var/lib
- install -dm 0700 -o kopano-webapp -g root "$pkgdir/var/lib/kopano-webapp/plugins/$_pluginname"
- # /etc
- if [ -e "config.php" ]; then
- ## perform settings
- # convert windows line break to unix: http://stackoverflow.com/questions/11680815/removing-windows-newlines-on-linux-sed-vs-awk
- sed -i -e $'s/\r//' config.php
- install -dm 0750 -g kopano-webapp "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/"
- ## config mains
- install -m 0750 -g kopano-webapp config.php "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php"
- ln -sf "/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php" "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/config.php"
- ## config examples
- install -m 0750 "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php" "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.example.php"
- fi
-}
-sha512sums="
-d64533242c16a5646fb0a9d2a05e089055129d8ec95b20adcd03a7f88e52203240ec36501c4212cb6d40e774e54886bc327f81b4adcbeaa1126a9529de9fbc55 kopano-webapp-mdm-3.3.0.zip
-"
diff --git a/testing/kopano-webapp-smime/APKBUILD b/testing/kopano-webapp-smime/APKBUILD
deleted file mode 100644
index 57bac5166e3..00000000000
--- a/testing/kopano-webapp-smime/APKBUILD
+++ /dev/null
@@ -1,112 +0,0 @@
-# Maintainer: Noel Kuntze <noel.kuntze@contauro.com>
-pkgname=kopano-webapp-smime
-pkgdesc="smime plugin for kopano-webapp"
-pkgver=2.2.4
-pkgrel=2
-# ppc64le and riscv64 blocked by libmdbx -> kopano-core -> kopano-webapp
-arch="noarch !ppc64le !riscv64"
-url="https://stash.kopano.io/projects/KWA/repos/mobile-device-management/browse"
-license="AGPL-3.0-only"
-options="!check" # No test suite
-depends="kopano-webapp"
-# kopano-core necessary for mapi php module
-makedepends="apache-ant openjdk8 kopano-webapp-src"
-source="
- kopano-webapp-smime-$pkgver.zip::https://stash.kopano.io/rest/api/latest/projects/KWA/repos/smime/archive?at=refs%2Ftags%2Fv$pkgver&format=zip
-"
-
-_pluginname="${pkgname//kopano-webapp-/}"
-
-builddir="$srcdir/"
-
-#helper function
-unpack() {
- local u
- verify
- initdcheck
- mkdir -p "$srcdir"
- local gunzip="$(command -v pigz || echo gunzip)"
- [ $gunzip = "/usr/bin/pigz" ] && gunzip="$gunzip -d"
- for u in $source; do
- local s
- local filename="$(filename_from_uri $u)"
- local new_root_dir="$builddir/${filename%%-[0-9]*}"
- if is_remote "$u"; then
- s="$SRCDEST/$filename"
- else
- s="$startdir/$u"
- fi
- case "$s" in
- *.tar)
- msg "Unpacking $s..."
- mkdir -p "$new_root_dir"
- tar -C "$new_root_dir" -xf "$s" ;;
- *.tar.gz|*.tgz)
- msg "Unpacking $s..."
- mkdir -p "$new_root_dir"
- $gunzip -c "$s" | tar -C "$new_root_dir" -x ;;
- *.tar.bz2)
- msg "Unpacking $s..."
- tar -C "$new_root_dir" -jxf "$s" ;;
- *.tar.lz)
- msg "Unpacking $s..."
- tar -C "$new_root_dir" --lzip -xf "$s" ;;
- *.tar.lzma)
- msg "Unpacking $s..."
- unlzma -T 0 -c "$s" | tar -C "$new_root_dir" -x ;;
- *.tar.xz)
- msg "Unpacking $s..."
- local threads_opt
- if [ "$(readlink -f "$(command -v unxz)")" != "/bin/busybox" ]; then
- threads_opt="--threads=0"
- fi
- unxz $threads_opt -c "$s" | tar -C "$new_root_dir" -x ;;
- *.zip)
- msg "Unpacking $s..."
- unzip -n -q "$s" -d "$new_root_dir" ;;
- esac
- done
-}
-
-prepare() {
- cp -R /usr/share/src/kopano-webapp/ kopano-webapp
- find "kopano-webapp/plugins/" -type d -mindepth 1 -maxdepth 2 -print0 | xargs -0 -- rm -rf
- mv $pkgname kopano-webapp/plugins/$_pluginname
- default_prepare
-}
-
-build() {
- cd kopano-webapp
- ant tools
- cd plugins/$_pluginname
- ant deploy -Droot-folder="$(pwd)/../../" -Dtarget-folder="$(pwd)/../../deploy/plugins"
-}
-
-package() {
- cd "$srcdir/kopano-webapp/deploy/plugins/$_pluginname/"
-
- sed -i -e "s/\(PLUGIN_SMIME_CIPHER', \)\(.*\)\();$\)/\1OPENSSL_CIPHER_AES_256_CBC\3/" config.php
-
- # /usr/share
- mkdir -p "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/"
- cp -R -- * "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/"
- rm -f "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/config.php"
-
- # /var/lib
- install -dm 0700 -o kopano-webapp -g root "$pkgdir/var/lib/kopano-webapp/plugins/$_pluginname"
- # /etc
- if [ -e "config.php" ]; then
- ## perform settings
- # convert windows line break to unix: http://stackoverflow.com/questions/11680815/removing-windows-newlines-on-linux-sed-vs-awk
- sed -i -e $'s/\r//' config.php
- install -dm 0750 -g kopano-webapp "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/"
- ## config mains
- install -m 0750 -g kopano-webapp config.php "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php"
- ln -sf "/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php" "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/config.php"
- ## config examples
- install -m 0750 "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php" "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.example.php"
- fi
-}
-sha512sums="
-14af8910a32bec884fe2c638faf871d68ecc2a3c137f3ecc8c2033cc53d9b73c6f813ca5976fae82e2e4c51e4c18d5d49218672e808b129c60f77d148dee5e52 kopano-webapp-smime-2.2.4.zip
-"
diff --git a/testing/kopano-webapp-spellchecker-languagepack-de-at/APKBUILD b/testing/kopano-webapp-spellchecker-languagepack-de-at/APKBUILD
deleted file mode 100644
index b8c69ddf35c..00000000000
--- a/testing/kopano-webapp-spellchecker-languagepack-de-at/APKBUILD
+++ /dev/null
@@ -1,109 +0,0 @@
-# Maintainer: Noel Kuntze <noel.kuntze@contauro.com>
-pkgname=kopano-webapp-spellchecker-languagepack-de-at
-pkgdesc="German (Austria) languagepack for kopano-webapp's spellchecker plugin"
-pkgver=2.0.1
-pkgrel=2
-# ppc64le and riscv64 blocked by libmdbx -> kopano-core -> kopano-webapp
-arch="noarch !ppc64le !riscv64"
-url="https://stash.kopano.io/projects/KWA/repos/spellchecker-languagepack-de-at/browse"
-license="AGPL-3.0-only"
-options="!check" # No test suite
-depends="kopano-webapp-spellchecker"
-# kopano-core necessary for mapi php module
-makedepends="apache-ant openjdk8 kopano-webapp-src"
-source="
- kopano-webapp-spellchecker-languagepack-de-at-$pkgver.zip::https://stash.kopano.io/rest/api/latest/projects/KWA/repos/spellchecker-languagepack-de-at/archive?at=refs%2Ftags%2Fv$pkgver&format=zip
-"
-
-_pluginname="${pkgname//kopano-webapp-/}"
-
-builddir="$srcdir/"
-
-#helper function
-unpack() {
- local u
- verify
- initdcheck
- mkdir -p "$srcdir"
- local gunzip="$(command -v pigz || echo gunzip)"
- [ $gunzip = "/usr/bin/pigz" ] && gunzip="$gunzip -d"
- for u in $source; do
- local s
- local filename="$(filename_from_uri $u)"
- local new_root_dir="$builddir/${filename%%-[0-9]*}"
- if is_remote "$u"; then
- s="$SRCDEST/$filename"
- else
- s="$startdir/$u"
- fi
- case "$s" in
- *.tar)
- msg "Unpacking $s..."
- mkdir -p "$new_root_dir"
- tar -C "$new_root_dir" -xf "$s" ;;
- *.tar.gz|*.tgz)
- msg "Unpacking $s..."
- mkdir -p "$new_root_dir"
- $gunzip -c "$s" | tar -C "$new_root_dir" -x ;;
- *.tar.bz2)
- msg "Unpacking $s..."
- tar -C "$new_root_dir" -jxf "$s" ;;
- *.tar.lz)
- msg "Unpacking $s..."
- tar -C "$new_root_dir" --lzip -xf "$s" ;;
- *.tar.lzma)
- msg "Unpacking $s..."
- unlzma -T 0 -c "$s" | tar -C "$new_root_dir" -x ;;
- *.tar.xz)
- msg "Unpacking $s..."
- local threads_opt
- if [ "$(readlink -f "$(command -v unxz)")" != "/bin/busybox" ]; then
- threads_opt="--threads=0"
- fi
- unxz $threads_opt -c "$s" | tar -C "$new_root_dir" -x ;;
- *.zip)
- msg "Unpacking $s..."
- unzip -n -q "$s" -d "$new_root_dir" ;;
- esac
- done
-}
-
-prepare() {
- cp -R /usr/share/src/kopano-webapp/ kopano-webapp
- find "kopano-webapp/plugins/" -type d -mindepth 1 -maxdepth 2 -print0 | xargs -0 -- rm -rf
- mv $pkgname kopano-webapp/plugins/$_pluginname
- default_prepare
-}
-
-build() {
- cd kopano-webapp
- ant tools
- cd plugins/$_pluginname
- ant deploy -Droot-folder="$(pwd)/../../" -Dtarget-folder="$(pwd)/../../deploy/plugins"
-}
-
-package() {
- cd "$srcdir/kopano-webapp/deploy/plugins/$_pluginname/"
- # /usr/share
- mkdir -p "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/"
- cp -R -- * "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/"
- rm -f "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/config.php"
-
- # /var/lib
- install -dm 0700 -o kopano-webapp -g root "$pkgdir/var/lib/kopano-webapp/plugins/$_pluginname"
- # /etc
- if [ -e "config.php" ]; then
- ## perform settings
- # convert windows line break to unix: http://stackoverflow.com/questions/11680815/removing-windows-newlines-on-linux-sed-vs-awk
- sed -i -e $'s/\r//' config.php
- install -dm 0750 -g kopano-webapp "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/"
- ## config mains
- install -m 0750 -g kopano-webapp config.php "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php"
- ln -sf "/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php" "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/config.php"
- ## config examples
- install -m 0750 "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php" "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.example.php"
- fi
-}
-sha512sums="
-ea6f5524dc798273d0c08149582bb222372d3364f57fcfde23b319f1a6332cd3a5fe307c2bb22922b7dc10f0d2c025ceb3bdec70a992bf9ef9ed717ba47fb5e6 kopano-webapp-spellchecker-languagepack-de-at-2.0.1.zip
-"
diff --git a/testing/kopano-webapp-spellchecker-languagepack-de-ch/APKBUILD b/testing/kopano-webapp-spellchecker-languagepack-de-ch/APKBUILD
deleted file mode 100644
index 2cbc8a010bc..00000000000
--- a/testing/kopano-webapp-spellchecker-languagepack-de-ch/APKBUILD
+++ /dev/null
@@ -1,113 +0,0 @@
-# Maintainer: Noel Kuntze <noel.kuntze@contauro.com>
-pkgname=kopano-webapp-spellchecker-languagepack-de-ch
-pkgdesc="German (Switzerland) languagepack for kopano-webapp's spellchecker plugin"
-pkgver=2.0.1
-pkgrel=2
-# ppc64le and riscv64 blocked by libmdbx -> kopano-core -> kopano-webapp
-arch="noarch !ppc64le !riscv64"
-url="https://stash.kopano.io/projects/KWA/repos/spellchecker-languagepack-de-ch/browse"
-license="AGPL-3.0-only"
-options="!check" # No test suite
-depends="kopano-webapp-spellchecker"
-# kopano-core necessary for mapi php module
-makedepends="apache-ant openjdk8 kopano-webapp-src"
-source="
- kopano-webapp-spellchecker-languagepack-de-ch-$pkgver.zip::https://stash.kopano.io/rest/api/latest/projects/KWA/repos/spellchecker-languagepack-de-ch/archive?at=refs%2Ftags%2Fv$pkgver&format=zip
-"
-
-_pluginname="${pkgname//kopano-webapp-/}"
-
-builddir="$srcdir/"
-
-#helper function
-unpack() {
- local u
- verify
- initdcheck
- mkdir -p "$srcdir"
- local gunzip="$(command -v pigz || echo gunzip)"
- [ $gunzip = "/usr/bin/pigz" ] && gunzip="$gunzip -d"
- for u in $source; do
- local s
- local filename="$(filename_from_uri $u)"
- local new_root_dir="$builddir/${filename%%-[0-9]*}"
- if is_remote "$u"; then
- s="$SRCDEST/$filename"
- else
- s="$startdir/$u"
- fi
- case "$s" in
- *.tar)
- msg "Unpacking $s..."
- mkdir -p "$new_root_dir"
- tar -C "$new_root_dir" -xf "$s" ;;
- *.tar.gz|*.tgz)
- msg "Unpacking $s..."
- mkdir -p "$new_root_dir"
- $gunzip -c "$s" | tar -C "$new_root_dir" -x ;;
- *.tar.bz2)
- msg "Unpacking $s..."
- tar -C "$new_root_dir" -jxf "$s" ;;
- *.tar.lz)
- msg "Unpacking $s..."
- tar -C "$new_root_dir" --lzip -xf "$s" ;;
- *.tar.lzma)
- msg "Unpacking $s..."
- unlzma -T 0 -c "$s" | tar -C "$new_root_dir" -x ;;
- *.tar.xz)
- msg "Unpacking $s..."
- local threads_opt
- if [ "$(readlink -f "$(command -v unxz)")" != "/bin/busybox" ]; then
- threads_opt="--threads=0"
- fi
- unxz $threads_opt -c "$s" | tar -C "$new_root_dir" -x ;;
- *.zip)
- msg "Unpacking $s..."
- unzip -n -q "$s" -d "$new_root_dir" ;;
- esac
- done
-}
-
-prepare() {
- cp -R /usr/share/src/kopano-webapp/ kopano-webapp
- find "kopano-webapp/plugins/" -type d -mindepth 1 -maxdepth 2 -print0 | xargs -0 -- rm -rf
- mv kopano-webapp-spellchecker-languagepack-de-ch "kopano-webapp/plugins/$_pluginname"
- default_prepare
-}
-
-build() {
- cd kopano-webapp
- ant tools
- cd plugins/$_pluginname
- ant deploy -Droot-folder="$(pwd)/../../" -Dtarget-folder="$(pwd)/../../deploy/plugins"
-}
-
-package() {
- # copy files into right subdir
- echo "_pluginname: $_pluginname" >&2
-
- echo "Packaging $pkgname with _pluginname $_pluginname" >&2
- cd "$srcdir/kopano-webapp/deploy/plugins/$_pluginname/"
- # /usr/share
- mkdir -p "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/"
- cp -R -- * "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/"
- rm -f "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/config.php"
-
- # /var/lib
- install -dm 0700 -o kopano-webapp -g root "$pkgdir/var/lib/kopano-webapp/plugins/$_pluginname"
- # /etc
- if [ -e "config.php" ]; then
- ## perform settings
- # convert windows line break to unix: http://stackoverflow.com/questions/11680815/removing-windows-newlines-on-linux-sed-vs-awk
- sed -i -e $'s/\r//' config.php
- install -dm 0750 -g kopano-webapp "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/"
- ## config mains
- install -m 0750 -g kopano-webapp config.php "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php"
- ln -sf "/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php" "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/config.php"
- ## config examples
- install -m 0750 "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php" "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.example.php"
- fi
-}
-sha512sums="
-366429da7cf94a337c62dbb9a4f918d87a9f3f0bc84af9ec702e7bf846595d7bde049cca49db5f38ed8b800577766b6578bc9ac4bc173c5a784edfd23eab644d kopano-webapp-spellchecker-languagepack-de-ch-2.0.1.zip
-"
diff --git a/testing/kopano-webapp-spellchecker-languagepack-de-de/APKBUILD b/testing/kopano-webapp-spellchecker-languagepack-de-de/APKBUILD
deleted file mode 100644
index 0f2ebe70066..00000000000
--- a/testing/kopano-webapp-spellchecker-languagepack-de-de/APKBUILD
+++ /dev/null
@@ -1,113 +0,0 @@
-# Maintainer: Noel Kuntze <noel.kuntze@contauro.com>
-pkgname=kopano-webapp-spellchecker-languagepack-de-de
-pkgdesc="German (Germany) languagepack for kopano-webapp's spellchecker plugin"
-pkgver=2.0.1
-pkgrel=2
-# ppc64le and riscv64 blocked by libmdbx -> kopano-core -> kopano-webapp
-arch="noarch !ppc64le !riscv64"
-url="https://stash.kopano.io/projects/KWA/repos/spellchecker-languagepack-de-de/browse"
-license="AGPL-3.0-only"
-options="!check" # No test suite
-depends="kopano-webapp-spellchecker"
-# kopano-core necessary for mapi php module
-makedepends="apache-ant openjdk8 kopano-webapp-src"
-source="
- kopano-webapp-spellchecker-languagepack-de-de-$pkgver.zip::https://stash.kopano.io/rest/api/latest/projects/KWA/repos/spellchecker-languagepack-de-de/archive?at=refs%2Ftags%2Fv$pkgver&format=zip
-"
-
-_pluginname="${pkgname//kopano-webapp-/}"
-
-builddir="$srcdir/"
-
-#helper function
-unpack() {
- local u
- verify
- initdcheck
- mkdir -p "$srcdir"
- local gunzip="$(command -v pigz || echo gunzip)"
- [ $gunzip = "/usr/bin/pigz" ] && gunzip="$gunzip -d"
- for u in $source; do
- local s
- local filename="$(filename_from_uri $u)"
- local new_root_dir="$builddir/${filename%%-[0-9]*}"
- if is_remote "$u"; then
- s="$SRCDEST/$filename"
- else
- s="$startdir/$u"
- fi
- case "$s" in
- *.tar)
- msg "Unpacking $s..."
- mkdir -p "$new_root_dir"
- tar -C "$new_root_dir" -xf "$s" ;;
- *.tar.gz|*.tgz)
- msg "Unpacking $s..."
- mkdir -p "$new_root_dir"
- $gunzip -c "$s" | tar -C "$new_root_dir" -x ;;
- *.tar.bz2)
- msg "Unpacking $s..."
- tar -C "$new_root_dir" -jxf "$s" ;;
- *.tar.lz)
- msg "Unpacking $s..."
- tar -C "$new_root_dir" --lzip -xf "$s" ;;
- *.tar.lzma)
- msg "Unpacking $s..."
- unlzma -T 0 -c "$s" | tar -C "$new_root_dir" -x ;;
- *.tar.xz)
- msg "Unpacking $s..."
- local threads_opt
- if [ "$(readlink -f "$(command -v unxz)")" != "/bin/busybox" ]; then
- threads_opt="--threads=0"
- fi
- unxz $threads_opt -c "$s" | tar -C "$new_root_dir" -x ;;
- *.zip)
- msg "Unpacking $s..."
- unzip -n -q "$s" -d "$new_root_dir" ;;
- esac
- done
-}
-
-prepare() {
- cp -R /usr/share/src/kopano-webapp/ kopano-webapp
- find "kopano-webapp/plugins/" -type d -mindepth 1 -maxdepth 2 -print0 | xargs -0 -- rm -rf
- mv kopano-webapp-spellchecker-languagepack-de-de "kopano-webapp/plugins/$_pluginname"
- default_prepare
-}
-
-build() {
- cd kopano-webapp
- ant tools
- cd plugins/$_pluginname
- ant deploy -Droot-folder="$(pwd)/../../" -Dtarget-folder="$(pwd)/../../deploy/plugins"
-}
-
-package() {
- # copy files into right subdir
- echo "_pluginname: $_pluginname" >&2
-
- echo "Packaging $pkgname with _pluginname $_pluginname" >&2
- cd "$srcdir/kopano-webapp/deploy/plugins/$_pluginname/"
- # /usr/share
- mkdir -p "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/"
- cp -R -- * "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/"
- rm -f "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/config.php"
-
- # /var/lib
- install -dm 0700 -o kopano-webapp -g root "$pkgdir/var/lib/kopano-webapp/plugins/$_pluginname"
- # /etc
- if [ -e "config.php" ]; then
- ## perform settings
- # convert windows line break to unix: http://stackoverflow.com/questions/11680815/removing-windows-newlines-on-linux-sed-vs-awk
- sed -i -e $'s/\r//' config.php
- install -dm 0750 -g kopano-webapp "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/"
- ## config mains
- install -m 0750 -g kopano-webapp config.php "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php"
- ln -sf "/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php" "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/config.php"
- ## config examples
- install -m 0750 "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php" "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.example.php"
- fi
-}
-sha512sums="
-a40092d3a2f835d3c014734addebec9ec8e9dbba2a144d442c61f88e8d46b5cf9c29069feaeaff961813215ce800ec69567fdf9918fed9cdec57b25dd9a80465 kopano-webapp-spellchecker-languagepack-de-de-2.0.1.zip
-"
diff --git a/testing/kopano-webapp-spellchecker-languagepack-en-gb/APKBUILD b/testing/kopano-webapp-spellchecker-languagepack-en-gb/APKBUILD
deleted file mode 100644
index c9d6ba0e8f1..00000000000
--- a/testing/kopano-webapp-spellchecker-languagepack-en-gb/APKBUILD
+++ /dev/null
@@ -1,113 +0,0 @@
-# Maintainer: Noel Kuntze <noel.kuntze@contauro.com>
-pkgname=kopano-webapp-spellchecker-languagepack-en-gb
-pkgdesc="English (Great-Britain) languagepack for kopano-webapp's spellchecker plugin"
-pkgver=2.0.1
-pkgrel=2
-# ppc64le and riscv64 blocked by libmdbx -> kopano-core -> kopano-webapp
-arch="noarch !ppc64le !riscv64"
-url="https://stash.kopano.io/projects/KWA/repos/spellchecker-languagepack-en-gb/browse"
-license="AGPL-3.0-only"
-options="!check" # No test suite
-depends="kopano-webapp-spellchecker"
-# kopano-core necessary for mapi php module
-makedepends="apache-ant openjdk8 kopano-webapp-src"
-source="
- kopano-webapp-spellchecker-languagepack-en-gb-$pkgver.zip::https://stash.kopano.io/rest/api/latest/projects/KWA/repos/spellchecker-languagepack-en-gb/archive?at=refs%2Ftags%2Fv$pkgver&format=zip
-"
-
-_pluginname="${pkgname//kopano-webapp-/}"
-
-builddir="$srcdir/"
-
-#helper function
-unpack() {
- local u
- verify
- initdcheck
- mkdir -p "$srcdir"
- local gunzip="$(command -v pigz || echo gunzip)"
- [ $gunzip = "/usr/bin/pigz" ] && gunzip="$gunzip -d"
- for u in $source; do
- local s
- local filename="$(filename_from_uri $u)"
- local new_root_dir="$builddir/${filename%%-[0-9]*}"
- if is_remote "$u"; then
- s="$SRCDEST/$filename"
- else
- s="$startdir/$u"
- fi
- case "$s" in
- *.tar)
- msg "Unpacking $s..."
- mkdir -p "$new_root_dir"
- tar -C "$new_root_dir" -xf "$s" ;;
- *.tar.gz|*.tgz)
- msg "Unpacking $s..."
- mkdir -p "$new_root_dir"
- $gunzip -c "$s" | tar -C "$new_root_dir" -x ;;
- *.tar.bz2)
- msg "Unpacking $s..."
- tar -C "$new_root_dir" -jxf "$s" ;;
- *.tar.lz)
- msg "Unpacking $s..."
- tar -C "$new_root_dir" --lzip -xf "$s" ;;
- *.tar.lzma)
- msg "Unpacking $s..."
- unlzma -T 0 -c "$s" | tar -C "$new_root_dir" -x ;;
- *.tar.xz)
- msg "Unpacking $s..."
- local threads_opt
- if [ "$(readlink -f "$(command -v unxz)")" != "/bin/busybox" ]; then
- threads_opt="--threads=0"
- fi
- unxz $threads_opt -c "$s" | tar -C "$new_root_dir" -x ;;
- *.zip)
- msg "Unpacking $s..."
- unzip -n -q "$s" -d "$new_root_dir" ;;
- esac
- done
-}
-
-prepare() {
- cp -R /usr/share/src/kopano-webapp/ kopano-webapp
- find "kopano-webapp/plugins/" -type d -mindepth 1 -maxdepth 2 -print0 | xargs -0 -- rm -rf
- mv kopano-webapp-spellchecker-languagepack-en-gb "kopano-webapp/plugins/$_pluginname"
- default_prepare
-}
-
-build() {
- cd kopano-webapp
- ant tools
- cd plugins/$_pluginname
- ant deploy -Droot-folder="$(pwd)/../../" -Dtarget-folder="$(pwd)/../../deploy/plugins"
-}
-
-package() {
- # copy files into right subdir
- echo "_pluginname: $_pluginname" >&2
-
- echo "Packaging $pkgname with _pluginname $_pluginname" >&2
- cd "$srcdir/kopano-webapp/deploy/plugins/$_pluginname/"
- # /usr/share
- mkdir -p "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/"
- cp -R -- * "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/"
- rm -f "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/config.php"
-
- # /var/lib
- install -dm 0700 -o kopano-webapp -g root "$pkgdir/var/lib/kopano-webapp/plugins/$_pluginname"
- # /etc
- if [ -e "config.php" ]; then
- ## perform settings
- # convert windows line break to unix: http://stackoverflow.com/questions/11680815/removing-windows-newlines-on-linux-sed-vs-awk
- sed -i -e $'s/\r//' config.php
- install -dm 0750 -g kopano-webapp "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/"
- ## config mains
- install -m 0750 -g kopano-webapp config.php "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php"
- ln -sf "/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php" "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/config.php"
- ## config examples
- install -m 0750 "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php" "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.example.php"
- fi
-}
-sha512sums="
-6fbeab01b7cd3015ca46aa46b30d2129a6a5a1ba129613e338f27de3e4c4d3474297649141b7c20411d3cbbf5d27615e8b7cb9007480cd152b33dcce801b6686 kopano-webapp-spellchecker-languagepack-en-gb-2.0.1.zip
-"
diff --git a/testing/kopano-webapp-spellchecker-languagepack-en-us/APKBUILD b/testing/kopano-webapp-spellchecker-languagepack-en-us/APKBUILD
deleted file mode 100644
index dced7d110c0..00000000000
--- a/testing/kopano-webapp-spellchecker-languagepack-en-us/APKBUILD
+++ /dev/null
@@ -1,109 +0,0 @@
-# Maintainer: Noel Kuntze <noel.kuntze@contauro.com>
-pkgname=kopano-webapp-spellchecker-languagepack-en-us
-pkgdesc="English (United States) languagepack for kopano-webapp's spellchecker plugin"
-pkgver=2.0.1
-pkgrel=2
-# ppc64le and riscv64 blocked by libmdbx -> kopano-core -> kopano-webapp
-arch="noarch !ppc64le !riscv64"
-url="https://stash.kopano.io/projects/KWA/repos/spellchecker-languagepack-en-us/browse"
-license="AGPL-3.0-only"
-options="!check" # No test suite
-depends="kopano-webapp-spellchecker"
-# kopano-core necessary for mapi php module
-makedepends="apache-ant openjdk8 kopano-webapp-src"
-source="
- kopano-webapp-spellchecker-languagepack-en-us-$pkgver.zip::https://stash.kopano.io/rest/api/latest/projects/KWA/repos/spellchecker-languagepack-en-us/archive?at=refs%2Ftags%2Fv$pkgver&format=zip
-"
-
-_pluginname="${pkgname//kopano-webapp-/}"
-
-builddir="$srcdir/"
-
-#helper function
-unpack() {
- local u
- verify
- initdcheck
- mkdir -p "$srcdir"
- local gunzip="$(command -v pigz || echo gunzip)"
- [ $gunzip = "/usr/bin/pigz" ] && gunzip="$gunzip -d"
- for u in $source; do
- local s
- local filename="$(filename_from_uri $u)"
- local new_root_dir="$builddir/${filename%%-[0-9]*}"
- if is_remote "$u"; then
- s="$SRCDEST/$filename"
- else
- s="$startdir/$u"
- fi
- case "$s" in
- *.tar)
- msg "Unpacking $s..."
- mkdir -p "$new_root_dir"
- tar -C "$new_root_dir" -xf "$s" ;;
- *.tar.gz|*.tgz)
- msg "Unpacking $s..."
- mkdir -p "$new_root_dir"
- $gunzip -c "$s" | tar -C "$new_root_dir" -x ;;
- *.tar.bz2)
- msg "Unpacking $s..."
- tar -C "$new_root_dir" -jxf "$s" ;;
- *.tar.lz)
- msg "Unpacking $s..."
- tar -C "$new_root_dir" --lzip -xf "$s" ;;
- *.tar.lzma)
- msg "Unpacking $s..."
- unlzma -T 0 -c "$s" | tar -C "$new_root_dir" -x ;;
- *.tar.xz)
- msg "Unpacking $s..."
- local threads_opt
- if [ "$(readlink -f "$(command -v unxz)")" != "/bin/busybox" ]; then
- threads_opt="--threads=0"
- fi
- unxz $threads_opt -c "$s" | tar -C "$new_root_dir" -x ;;
- *.zip)
- msg "Unpacking $s..."
- unzip -n -q "$s" -d "$new_root_dir" ;;
- esac
- done
-}
-
-prepare() {
- cp -R /usr/share/src/kopano-webapp/ kopano-webapp
- find "kopano-webapp/plugins/" -type d -mindepth 1 -maxdepth 2 -print0 | xargs -0 -- rm -rf
- mv $pkgname kopano-webapp/plugins/$_pluginname
- default_prepare
-}
-
-build() {
- cd kopano-webapp
- ant tools
- cd plugins/$_pluginname
- ant deploy -Droot-folder="$(pwd)/../../" -Dtarget-folder="$(pwd)/../../deploy/plugins"
-}
-
-package() {
- cd "$srcdir/kopano-webapp/deploy/plugins/$_pluginname/"
- # /usr/share
- mkdir -p "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/"
- cp -R -- * "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/"
- rm -f "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/config.php"
-
- # /var/lib
- install -dm 0700 -o kopano-webapp -g root "$pkgdir/var/lib/kopano-webapp/plugins/$_pluginname"
- # /etc
- if [ -e "config.php" ]; then
- ## perform settings
- # convert windows line break to unix: http://stackoverflow.com/questions/11680815/removing-windows-newlines-on-linux-sed-vs-awk
- sed -i -e $'s/\r//' config.php
- install -dm 0750 -g kopano-webapp "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/"
- ## config mains
- install -m 0750 -g kopano-webapp config.php "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php"
- ln -sf "/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php" "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/config.php"
- ## config examples
- install -m 0750 "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php" "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.example.php"
- fi
-}
-sha512sums="
-9234816e09988e6042af15a9e5d7d08a1d1c22c41025d659279f6fa895d0a65ce293622b49b395144eb2690a3221a644720e7370af1782a982e3088026be32fb kopano-webapp-spellchecker-languagepack-en-us-2.0.1.zip
-"
diff --git a/testing/kopano-webapp-spellchecker-languagepack-es-es/APKBUILD b/testing/kopano-webapp-spellchecker-languagepack-es-es/APKBUILD
deleted file mode 100644
index f6fda8a6928..00000000000
--- a/testing/kopano-webapp-spellchecker-languagepack-es-es/APKBUILD
+++ /dev/null
@@ -1,109 +0,0 @@
-# Maintainer: Noel Kuntze <noel.kuntze@contauro.com>
-pkgname=kopano-webapp-spellchecker-languagepack-es-es
-pkgdesc="Spanish (Spain) languagepack for kopano-webapp's spellchecker plugin"
-pkgver=2.0.1
-pkgrel=2
-# ppc64le and riscv64 blocked by libmdbx -> kopano-core -> kopano-webapp
-arch="noarch !ppc64le !riscv64"
-url="https://stash.kopano.io/projects/KWA/repos/spellchecker-languagepack-es-es/browse"
-license="AGPL-3.0-only"
-options="!check" # No test suite
-depends="kopano-webapp-spellchecker"
-# kopano-core necessary for mapi php module
-makedepends="apache-ant openjdk8 kopano-webapp-src"
-source="
- kopano-webapp-spellchecker-languagepack-es-es-$pkgver.zip::https://stash.kopano.io/rest/api/latest/projects/KWA/repos/spellchecker-languagepack-es-es/archive?at=refs%2Ftags%2Fv$pkgver&format=zip
-"
-
-_pluginname="${pkgname//kopano-webapp-/}"
-
-builddir="$srcdir/"
-
-#helper function
-unpack() {
- local u
- verify
- initdcheck
- mkdir -p "$srcdir"
- local gunzip="$(command -v pigz || echo gunzip)"
- [ $gunzip = "/usr/bin/pigz" ] && gunzip="$gunzip -d"
- for u in $source; do
- local s
- local filename="$(filename_from_uri $u)"
- local new_root_dir="$builddir/${filename%%-[0-9]*}"
- if is_remote "$u"; then
- s="$SRCDEST/$filename"
- else
- s="$startdir/$u"
- fi
- case "$s" in
- *.tar)
- msg "Unpacking $s..."
- mkdir -p "$new_root_dir"
- tar -C "$new_root_dir" -xf "$s" ;;
- *.tar.gz|*.tgz)
- msg "Unpacking $s..."
- mkdir -p "$new_root_dir"
- $gunzip -c "$s" | tar -C "$new_root_dir" -x ;;
- *.tar.bz2)
- msg "Unpacking $s..."
- tar -C "$new_root_dir" -jxf "$s" ;;
- *.tar.lz)
- msg "Unpacking $s..."
- tar -C "$new_root_dir" --lzip -xf "$s" ;;
- *.tar.lzma)
- msg "Unpacking $s..."
- unlzma -T 0 -c "$s" | tar -C "$new_root_dir" -x ;;
- *.tar.xz)
- msg "Unpacking $s..."
- local threads_opt
- if [ "$(readlink -f "$(command -v unxz)")" != "/bin/busybox" ]; then
- threads_opt="--threads=0"
- fi
- unxz $threads_opt -c "$s" | tar -C "$new_root_dir" -x ;;
- *.zip)
- msg "Unpacking $s..."
- unzip -n -q "$s" -d "$new_root_dir" ;;
- esac
- done
-}
-
-prepare() {
- cp -R /usr/share/src/kopano-webapp/ kopano-webapp
- find "kopano-webapp/plugins/" -type d -mindepth 1 -maxdepth 2 -print0 | xargs -0 -- rm -rf
- mv $pkgname kopano-webapp/plugins/$_pluginname
- default_prepare
-}
-
-build() {
- cd kopano-webapp
- ant tools
- cd plugins/$_pluginname
- ant deploy -Droot-folder="$(pwd)/../../" -Dtarget-folder="$(pwd)/../../deploy/plugins"
-}
-
-package() {
- cd "$srcdir/kopano-webapp/deploy/plugins/$_pluginname/"
- # /usr/share
- mkdir -p "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/"
- cp -R -- * "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/"
- rm -f "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/config.php"
-
- # /var/lib
- install -dm 0700 -o kopano-webapp -g root "$pkgdir/var/lib/kopano-webapp/plugins/$_pluginname"
- # /etc
- if [ -e "config.php" ]; then
- ## perform settings
- # convert windows line break to unix: http://stackoverflow.com/questions/11680815/removing-windows-newlines-on-linux-sed-vs-awk
- sed -i -e $'s/\r//' config.php
- install -dm 0750 -g kopano-webapp "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/"
- ## config mains
- install -m 0750 -g kopano-webapp config.php "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php"
- ln -sf "/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php" "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/config.php"
- ## config examples
- install -m 0750 "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php" "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.example.php"
- fi
-}
-sha512sums="
-d279c12faab208f6f3046b8f869d3ac6d15da10b13dccfaa35c2f6756eeef410c91ab5b164adfd844f961bc48ce53c6ef6f305567937c9b1d5267fd0fbd9491a kopano-webapp-spellchecker-languagepack-es-es-2.0.1.zip
-"
diff --git a/testing/kopano-webapp-spellchecker-languagepack-fr-fr/APKBUILD b/testing/kopano-webapp-spellchecker-languagepack-fr-fr/APKBUILD
deleted file mode 100644
index 0dfb684a32a..00000000000
--- a/testing/kopano-webapp-spellchecker-languagepack-fr-fr/APKBUILD
+++ /dev/null
@@ -1,109 +0,0 @@
-# Maintainer: Noel Kuntze <noel.kuntze@contauro.com>
-pkgname=kopano-webapp-spellchecker-languagepack-fr-fr
-pkgdesc="French (France) languagepack for kopano-webapp's spellchecker plugin"
-pkgver=2.0.1
-pkgrel=2
-# ppc64le and riscv64 blocked by libmdbx -> kopano-core -> kopano-webapp
-arch="noarch !ppc64le !riscv64"
-url="https://stash.kopano.io/projects/KWA/repos/spellchecker-languagepack-fr-fr/browse"
-license="AGPL-3.0-only"
-options="!check" # No test suite
-depends="kopano-webapp-spellchecker"
-# kopano-core necessary for mapi php module
-makedepends="apache-ant openjdk8 kopano-webapp-src"
-source="
- kopano-webapp-spellchecker-languagepack-fr-fr-$pkgver.zip::https://stash.kopano.io/rest/api/latest/projects/KWA/repos/spellchecker-languagepack-fr-fr/archive?at=refs%2Ftags%2Fv$pkgver&format=zip
-"
-
-_pluginname="${pkgname//kopano-webapp-/}"
-
-builddir="$srcdir/"
-
-#helper function
-unpack() {
- local u
- verify
- initdcheck
- mkdir -p "$srcdir"
- local gunzip="$(command -v pigz || echo gunzip)"
- [ $gunzip = "/usr/bin/pigz" ] && gunzip="$gunzip -d"
- for u in $source; do
- local s
- local filename="$(filename_from_uri $u)"
- local new_root_dir="$builddir/${filename%%-[0-9]*}"
- if is_remote "$u"; then
- s="$SRCDEST/$filename"
- else
- s="$startdir/$u"
- fi
- case "$s" in
- *.tar)
- msg "Unpacking $s..."
- mkdir -p "$new_root_dir"
- tar -C "$new_root_dir" -xf "$s" ;;
- *.tar.gz|*.tgz)
- msg "Unpacking $s..."
- mkdir -p "$new_root_dir"
- $gunzip -c "$s" | tar -C "$new_root_dir" -x ;;
- *.tar.bz2)
- msg "Unpacking $s..."
- tar -C "$new_root_dir" -jxf "$s" ;;
- *.tar.lz)
- msg "Unpacking $s..."
- tar -C "$new_root_dir" --lzip -xf "$s" ;;
- *.tar.lzma)
- msg "Unpacking $s..."
- unlzma -T 0 -c "$s" | tar -C "$new_root_dir" -x ;;
- *.tar.xz)
- msg "Unpacking $s..."
- local threads_opt
- if [ "$(readlink -f "$(command -v unxz)")" != "/bin/busybox" ]; then
- threads_opt="--threads=0"
- fi
- unxz $threads_opt -c "$s" | tar -C "$new_root_dir" -x ;;
- *.zip)
- msg "Unpacking $s..."
- unzip -n -q "$s" -d "$new_root_dir" ;;
- esac
- done
-}
-
-prepare() {
- cp -R /usr/share/src/kopano-webapp/ kopano-webapp
- find "kopano-webapp/plugins/" -type d -mindepth 1 -maxdepth 2 -print0 | xargs -0 -- rm -rf
- mv $pkgname kopano-webapp/plugins/$_pluginname
- default_prepare
-}
-
-build() {
- cd kopano-webapp
- ant tools
- cd plugins/$_pluginname
- ant deploy -Droot-folder="$(pwd)/../../" -Dtarget-folder="$(pwd)/../../deploy/plugins"
-}
-
-package() {
- cd "$srcdir/kopano-webapp/deploy/plugins/$_pluginname/"
- # /usr/share
- mkdir -p "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/"
- cp -R -- * "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/"
- rm -f "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/config.php"
-
- # /var/lib
- install -dm 0700 -o kopano-webapp -g root "$pkgdir/var/lib/kopano-webapp/plugins/$_pluginname"
- # /etc
- if [ -e "config.php" ]; then
- ## perform settings
- # convert windows line break to unix: http://stackoverflow.com/questions/11680815/removing-windows-newlines-on-linux-sed-vs-awk
- sed -i -e $'s/\r//' config.php
- install -dm 0750 -g kopano-webapp "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/"
- ## config mains
- install -m 0750 -g kopano-webapp config.php "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php"
- ln -sf "/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php" "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/config.php"
- ## config examples
- install -m 0750 "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php" "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.example.php"
- fi
-}
-sha512sums="
-0e54c2fcc749a946c8c82d2b445cb85692a79109ae7ff7ab94c5c2c186bf6902b085fb3061beb596045d988e6145c45e202323d1af9b05220d50224a3fc4f36c kopano-webapp-spellchecker-languagepack-fr-fr-2.0.1.zip
-"
diff --git a/testing/kopano-webapp-spellchecker-languagepack-it-it/APKBUILD b/testing/kopano-webapp-spellchecker-languagepack-it-it/APKBUILD
deleted file mode 100644
index fd0d8886b51..00000000000
--- a/testing/kopano-webapp-spellchecker-languagepack-it-it/APKBUILD
+++ /dev/null
@@ -1,113 +0,0 @@
-# Maintainer: Noel Kuntze <noel.kuntze@contauro.com>
-pkgname=kopano-webapp-spellchecker-languagepack-it-it
-pkgdesc="Italian (Italy) languagepack for kopano-webapp's spellchecker plugin"
-pkgver=1.0.0
-pkgrel=2
-# ppc64le and riscv64 blocked by libmdbx -> kopano-core -> kopano-webapp
-arch="noarch !ppc64le !riscv64"
-url="https://stash.kopano.io/projects/KWA/repos/spellchecker-languagepack-italian-it/browse"
-license="AGPL-3.0-only"
-options="!check" # No test suite
-depends="kopano-webapp-spellchecker"
-# kopano-core necessary for mapi php module
-makedepends="apache-ant openjdk8 kopano-webapp-src"
-source="
- kopano-webapp-spellchecker-languagepack-italian-it-$pkgver.zip::https://stash.kopano.io/rest/api/latest/projects/KWA/repos/spellchecker-languagepack-italian-it/archive?at=refs%2Ftags%2Fv$pkgver&format=zip
-"
-
-_pluginname="${pkgname//kopano-webapp-/}"
-
-builddir="$srcdir/"
-
-#helper function
-unpack() {
- local u
- verify
- initdcheck
- mkdir -p "$srcdir"
- local gunzip="$(command -v pigz || echo gunzip)"
- [ $gunzip = "/usr/bin/pigz" ] && gunzip="$gunzip -d"
- for u in $source; do
- local s
- local filename="$(filename_from_uri $u)"
- local new_root_dir="$builddir/${filename%%-[0-9]*}"
- if is_remote "$u"; then
- s="$SRCDEST/$filename"
- else
- s="$startdir/$u"
- fi
- case "$s" in
- *.tar)
- msg "Unpacking $s..."
- mkdir -p "$new_root_dir"
- tar -C "$new_root_dir" -xf "$s" ;;
- *.tar.gz|*.tgz)
- msg "Unpacking $s..."
- mkdir -p "$new_root_dir"
- $gunzip -c "$s" | tar -C "$new_root_dir" -x ;;
- *.tar.bz2)
- msg "Unpacking $s..."
- tar -C "$new_root_dir" -jxf "$s" ;;
- *.tar.lz)
- msg "Unpacking $s..."
- tar -C "$new_root_dir" --lzip -xf "$s" ;;
- *.tar.lzma)
- msg "Unpacking $s..."
- unlzma -T 0 -c "$s" | tar -C "$new_root_dir" -x ;;
- *.tar.xz)
- msg "Unpacking $s..."
- local threads_opt
- if [ "$(readlink -f "$(command -v unxz)")" != "/bin/busybox" ]; then
- threads_opt="--threads=0"
- fi
- unxz $threads_opt -c "$s" | tar -C "$new_root_dir" -x ;;
- *.zip)
- msg "Unpacking $s..."
- unzip -n -q "$s" -d "$new_root_dir" ;;
- esac
- done
-}
-
-prepare() {
- cp -R /usr/share/src/kopano-webapp/ kopano-webapp
- find "kopano-webapp/plugins/" -type d -mindepth 1 -maxdepth 2 -print0 | xargs -0 -- rm -rf
- mv kopano-webapp-spellchecker-languagepack-italian-it "kopano-webapp/plugins/$_pluginname"
- default_prepare
-}
-
-build() {
- cd kopano-webapp
- ant tools
- cd plugins/$_pluginname
- ant deploy -Droot-folder="$(pwd)/../../" -Dtarget-folder="$(pwd)/../../deploy/plugins"
-}
-
-package() {
- # copy files into right subdir
- echo "_pluginname: $_pluginname" >&2
-
- echo "Packaging $pkgname with _pluginname $_pluginname" >&2
- cd "$srcdir/kopano-webapp/deploy/plugins/$_pluginname/"
- # /usr/share
- mkdir -p "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/"
- cp -R -- * "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/"
- rm -f "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/config.php"
-
- # /var/lib
- install -dm 0700 -o kopano-webapp -g root "$pkgdir/var/lib/kopano-webapp/plugins/$_pluginname"
- # /etc
- if [ -e "config.php" ]; then
- ## perform settings
- # convert windows line break to unix: http://stackoverflow.com/questions/11680815/removing-windows-newlines-on-linux-sed-vs-awk
- sed -i -e $'s/\r//' config.php
- install -dm 0750 -g kopano-webapp "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/"
- ## config mains
- install -m 0750 -g kopano-webapp config.php "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php"
- ln -sf "/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php" "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/config.php"
- ## config examples
- install -m 0750 "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php" "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.example.php"
- fi
-}
-sha512sums="
-901ffd3f903bd7a589555ab28d827ba61f83263f1f9f9b234c4460374c3fa05d3092a68f31795ea5ce88f3499fd84dde782bb49b638ef1ad029e8c13a8551550 kopano-webapp-spellchecker-languagepack-italian-it-1.0.0.zip
-"
diff --git a/testing/kopano-webapp-spellchecker-languagepack-nl-nl/APKBUILD b/testing/kopano-webapp-spellchecker-languagepack-nl-nl/APKBUILD
deleted file mode 100644
index 8a94abc20e7..00000000000
--- a/testing/kopano-webapp-spellchecker-languagepack-nl-nl/APKBUILD
+++ /dev/null
@@ -1,113 +0,0 @@
-# Maintainer: Noel Kuntze <noel.kuntze@contauro.com>
-pkgname=kopano-webapp-spellchecker-languagepack-nl
-pkgdesc="Dutch (Netherlands) languagepack for kopano-webapp's spellchecker plugin"
-pkgver=2.0.1
-pkgrel=2
-# ppc64le and riscv64 blocked by libmdbx -> kopano-core -> kopano-webapp
-arch="noarch !ppc64le !riscv64"
-url="https://stash.kopano.io/projects/KWA/repos/spellchecker-languagepack-nl/browse"
-license="AGPL-3.0-only"
-options="!check" # No test suite
-depends="kopano-webapp-spellchecker"
-# kopano-core necessary for mapi php module
-makedepends="apache-ant openjdk8 kopano-webapp-src"
-source="
- kopano-webapp-spellchecker-languagepack-nl-$pkgver.zip::https://stash.kopano.io/rest/api/latest/projects/KWA/repos/spellchecker-languagepack-nl/archive?at=refs%2Ftags%2Fv$pkgver&format=zip
-"
-
-_pluginname="${pkgname//kopano-webapp-/}"
-
-builddir="$srcdir/"
-
-#helper function
-unpack() {
- local u
- verify
- initdcheck
- mkdir -p "$srcdir"
- local gunzip="$(command -v pigz || echo gunzip)"
- [ $gunzip = "/usr/bin/pigz" ] && gunzip="$gunzip -d"
- for u in $source; do
- local s
- local filename="$(filename_from_uri $u)"
- local new_root_dir="$builddir/${filename%%-[0-9]*}"
- if is_remote "$u"; then
- s="$SRCDEST/$filename"
- else
- s="$startdir/$u"
- fi
- case "$s" in
- *.tar)
- msg "Unpacking $s..."
- mkdir -p "$new_root_dir"
- tar -C "$new_root_dir" -xf "$s" ;;
- *.tar.gz|*.tgz)
- msg "Unpacking $s..."
- mkdir -p "$new_root_dir"
- $gunzip -c "$s" | tar -C "$new_root_dir" -x ;;
- *.tar.bz2)
- msg "Unpacking $s..."
- tar -C "$new_root_dir" -jxf "$s" ;;
- *.tar.lz)
- msg "Unpacking $s..."
- tar -C "$new_root_dir" --lzip -xf "$s" ;;
- *.tar.lzma)
- msg "Unpacking $s..."
- unlzma -T 0 -c "$s" | tar -C "$new_root_dir" -x ;;
- *.tar.xz)
- msg "Unpacking $s..."
- local threads_opt
- if [ "$(readlink -f "$(command -v unxz)")" != "/bin/busybox" ]; then
- threads_opt="--threads=0"
- fi
- unxz $threads_opt -c "$s" | tar -C "$new_root_dir" -x ;;
- *.zip)
- msg "Unpacking $s..."
- unzip -n -q "$s" -d "$new_root_dir" ;;
- esac
- done
-}
-
-prepare() {
- cp -R /usr/share/src/kopano-webapp/ kopano-webapp
- find "kopano-webapp/plugins/" -type d -mindepth 1 -maxdepth 2 -print0 | xargs -0 -- rm -rf
- mv kopano-webapp-spellchecker-languagepack-nl "kopano-webapp/plugins/$_pluginname"
- default_prepare
-}
-
-build() {
- cd kopano-webapp
- ant tools
- cd plugins/$_pluginname
- ant deploy -Droot-folder="$(pwd)/../../" -Dtarget-folder="$(pwd)/../../deploy/plugins"
-}
-
-package() {
- # copy files into right subdir
- echo "_pluginname: $_pluginname" >&2
-
- echo "Packaging $pkgname with _pluginname $_pluginname" >&2
- cd "$srcdir/kopano-webapp/deploy/plugins/$_pluginname/"
- # /usr/share
- mkdir -p "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/"
- cp -R -- * "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/"
- rm -f "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/config.php"
-
- # /var/lib
- install -dm 0700 -o kopano-webapp -g root "$pkgdir/var/lib/kopano-webapp/plugins/$_pluginname"
- # /etc
- if [ -e "config.php" ]; then
- ## perform settings
- # convert windows line break to unix: http://stackoverflow.com/questions/11680815/removing-windows-newlines-on-linux-sed-vs-awk
- sed -i -e $'s/\r//' config.php
- install -dm 0750 -g kopano-webapp "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/"
- ## config mains
- install -m 0750 -g kopano-webapp config.php "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php"
- ln -sf "/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php" "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/config.php"
- ## config examples
- install -m 0750 "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php" "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.example.php"
- fi
-}
-sha512sums="
-98db2fbc088409b66039f6ede3196f334af6dc97f289e84f0756b66942fa9c66908a159aa108468119f26ce30e0b6d248feb134804c5bb02b07436e9e3003f11 kopano-webapp-spellchecker-languagepack-nl-2.0.1.zip
-"
diff --git a/testing/kopano-webapp-spellchecker-languagepack-pl-pl/APKBUILD b/testing/kopano-webapp-spellchecker-languagepack-pl-pl/APKBUILD
deleted file mode 100644
index 02ce5dda1c2..00000000000
--- a/testing/kopano-webapp-spellchecker-languagepack-pl-pl/APKBUILD
+++ /dev/null
@@ -1,113 +0,0 @@
-# Maintainer: Noel Kuntze <noel.kuntze@contauro.com>
-pkgname=kopano-webapp-spellchecker-languagepack-pl-pl
-pkgdesc="Polish (Poland) languagepack for kopano-webapp's spellchecker plugin"
-pkgver=2.0.0
-pkgrel=2
-# ppc64le and riscv64 blocked by libmdbx -> kopano-core -> kopano-webapp
-arch="noarch !ppc64le !riscv64"
-url="https://stash.kopano.io/projects/KWA/repos/spellchecker-languagepack-pl-pl/browse"
-license="AGPL-3.0-only"
-options="!check" # No test suite
-depends="kopano-webapp-spellchecker"
-# kopano-core necessary for mapi php module
-makedepends="apache-ant openjdk8 kopano-webapp-src"
-source="
- kopano-webapp-spellchecker-languagepack-pl-pl-$pkgver.zip::https://stash.kopano.io/rest/api/latest/projects/KWA/repos/spellchecker-languagepack-pl-pl/archive?at=refs%2Ftags%2Fv$pkgver&format=zip
-"
-
-_pluginname="${pkgname//kopano-webapp-/}"
-
-builddir="$srcdir/"
-
-#helper function
-unpack() {
- local u
- verify
- initdcheck
- mkdir -p "$srcdir"
- local gunzip="$(command -v pigz || echo gunzip)"
- [ $gunzip = "/usr/bin/pigz" ] && gunzip="$gunzip -d"
- for u in $source; do
- local s
- local filename="$(filename_from_uri $u)"
- local new_root_dir="$builddir/${filename%%-[0-9]*}"
- if is_remote "$u"; then
- s="$SRCDEST/$filename"
- else
- s="$startdir/$u"
- fi
- case "$s" in
- *.tar)
- msg "Unpacking $s..."
- mkdir -p "$new_root_dir"
- tar -C "$new_root_dir" -xf "$s" ;;
- *.tar.gz|*.tgz)
- msg "Unpacking $s..."
- mkdir -p "$new_root_dir"
- $gunzip -c "$s" | tar -C "$new_root_dir" -x ;;
- *.tar.bz2)
- msg "Unpacking $s..."
- tar -C "$new_root_dir" -jxf "$s" ;;
- *.tar.lz)
- msg "Unpacking $s..."
- tar -C "$new_root_dir" --lzip -xf "$s" ;;
- *.tar.lzma)
- msg "Unpacking $s..."
- unlzma -T 0 -c "$s" | tar -C "$new_root_dir" -x ;;
- *.tar.xz)
- msg "Unpacking $s..."
- local threads_opt
- if [ "$(readlink -f "$(command -v unxz)")" != "/bin/busybox" ]; then
- threads_opt="--threads=0"
- fi
- unxz $threads_opt -c "$s" | tar -C "$new_root_dir" -x ;;
- *.zip)
- msg "Unpacking $s..."
- unzip -n -q "$s" -d "$new_root_dir" ;;
- esac
- done
-}
-
-prepare() {
- cp -R /usr/share/src/kopano-webapp/ kopano-webapp
- find "kopano-webapp/plugins/" -type d -mindepth 1 -maxdepth 2 -print0 | xargs -0 -- rm -rf
- mv kopano-webapp-spellchecker-languagepack-pl-pl "kopano-webapp/plugins/$_pluginname"
- default_prepare
-}
-
-build() {
- cd kopano-webapp
- ant tools
- cd plugins/$_pluginname
- ant deploy -Droot-folder="$(pwd)/../../" -Dtarget-folder="$(pwd)/../../deploy/plugins"
-}
-
-package() {
- # copy files into right subdir
- echo "_pluginname: $_pluginname" >&2
-
- echo "Packaging $pkgname with _pluginname $_pluginname" >&2
- cd "$srcdir/kopano-webapp/deploy/plugins/$_pluginname/"
- # /usr/share
- mkdir -p "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/"
- cp -R -- * "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/"
- rm -f "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/config.php"
-
- # /var/lib
- install -dm 0700 -o kopano-webapp -g root "$pkgdir/var/lib/kopano-webapp/plugins/$_pluginname"
- # /etc
- if [ -e "config.php" ]; then
- ## perform settings
- # convert windows line break to unix: http://stackoverflow.com/questions/11680815/removing-windows-newlines-on-linux-sed-vs-awk
- sed -i -e $'s/\r//' config.php
- install -dm 0750 -g kopano-webapp "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/"
- ## config mains
- install -m 0750 -g kopano-webapp config.php "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php"
- ln -sf "/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php" "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/config.php"
- ## config examples
- install -m 0750 "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php" "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.example.php"
- fi
-}
-sha512sums="
-ad3193b01ea6b618aec74833274e1be40326b6b9aaa197d833036302138a46534428371a7e95284baa87dd1320a6f925a9de028189f88d039570f60d884a3fac kopano-webapp-spellchecker-languagepack-pl-pl-2.0.0.zip
-"
diff --git a/testing/kopano-webapp-spellchecker/APKBUILD b/testing/kopano-webapp-spellchecker/APKBUILD
deleted file mode 100644
index 50f5158986c..00000000000
--- a/testing/kopano-webapp-spellchecker/APKBUILD
+++ /dev/null
@@ -1,111 +0,0 @@
-# Maintainer: Noel Kuntze <noel.kuntze@contauro.com>
-pkgname=kopano-webapp-spellchecker
-pkgdesc="spellchecker plugin for kopano-webapp"
-pkgver=2.0.1
-pkgrel=2
-# ppc64le and riscv64 blocked by libmdbx -> kopano-core
-arch="noarch !ppc64le !riscv64"
-url="https://stash.kopano.io/projects/KWA/repos/spellchecker/browse"
-license="AGPL-3.0-only"
-options="!check" # No test suite
-depends="kopano-webapp php-enchant"
-# kopano-core necessary for mapi php module
-makedepends="apache-ant openjdk8 kopano-webapp-src"
-source="
- kopano-webapp-spellchecker-$pkgver.zip::https://stash.kopano.io/rest/api/latest/projects/KWA/repos/spellchecker/archive?at=refs%2Ftags%2Fv$pkgver&format=zip
- kopano-webapp-spellchecker.ini
-"
-
-_pluginname="${pkgname//kopano-webapp-/}"
-
-builddir="$srcdir/"
-
-#helper function
-unpack() {
- local u
- verify
- initdcheck
- mkdir -p "$srcdir"
- local gunzip="$(command -v pigz || echo gunzip)"
- [ $gunzip = "/usr/bin/pigz" ] && gunzip="$gunzip -d"
- for u in $source; do
- local s
- local filename="$(filename_from_uri $u)"
- local new_root_dir="$builddir/${filename%%-[0-9]*}"
- if is_remote "$u"; then
- s="$SRCDEST/$filename"
- else
- s="$startdir/$u"
- fi
- case "$s" in
- *.tar)
- msg "Unpacking $s..."
- mkdir -p "$new_root_dir"
- tar -C "$new_root_dir" -xf "$s" ;;
- *.tar.gz|*.tgz)
- msg "Unpacking $s..."
- mkdir -p "$new_root_dir"
- $gunzip -c "$s" | tar -C "$new_root_dir" -x ;;
- *.tar.bz2)
- msg "Unpacking $s..."
- tar -C "$new_root_dir" -jxf "$s" ;;
- *.tar.lz)
- msg "Unpacking $s..."
- tar -C "$new_root_dir" --lzip -xf "$s" ;;
- *.tar.lzma)
- msg "Unpacking $s..."
- unlzma -T 0 -c "$s" | tar -C "$new_root_dir" -x ;;
- *.tar.xz)
- msg "Unpacking $s..."
- local threads_opt
- if [ "$(readlink -f "$(command -v unxz)")" != "/bin/busybox" ]; then
- threads_opt="--threads=0"
- fi
- unxz $threads_opt -c "$s" | tar -C "$new_root_dir" -x ;;
- *.zip)
- msg "Unpacking $s..."
- unzip -n -q "$s" -d "$new_root_dir" ;;
- esac
- done
-}
-
-prepare() {
- cp -R /usr/share/src/kopano-webapp/ kopano-webapp
- find "kopano-webapp/plugins/" -type d -mindepth 1 -maxdepth 2 -print0 | xargs -0 -- rm -rf
- mv $pkgname kopano-webapp/plugins/$_pluginname
- default_prepare
-}
-
-build() {
- cd kopano-webapp
- ant tools
- cd plugins/$_pluginname
- ant deploy -Droot-folder="$(pwd)/../../" -Dtarget-folder="$(pwd)/../../deploy/plugins"
-}
-
-package() {
- cd "$srcdir/kopano-webapp/deploy/plugins/$_pluginname/"
- # /usr/share
- mkdir -p "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/"
- cp -R -- * "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/"
- rm -f "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/config.php"
-
- # /var/lib
- install -dm 0700 -o kopano-webapp -g root "$pkgdir/var/lib/kopano-webapp/plugins/$_pluginname"
- # /etc
- if [ -e "config.php" ]; then
- ## perform settings
- # convert windows line break to unix: http://stackoverflow.com/questions/11680815/removing-windows-newlines-on-linux-sed-vs-awk
- sed -i -e $'s/\r//' config.php
- install -dm 0750 -g kopano-webapp "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/"
- ## config mains
- install -m 0750 -g kopano-webapp config.php "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php"
- ln -sf "/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php" "$pkgdir/usr/share/webapps/kopano-webapp/plugins/$_pluginname/config.php"
- ## config examples
- install -m 0750 "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.php" "$pkgdir/etc/webapps/kopano-webapp/plugins/$_pluginname/config.example.php"
- fi
-}
-sha512sums="
-59e05779047878fa3d79a56e0689b1336b209feffab352a38e441a3068290132b259b7fb6056f34ef66e9b404b4fb2342499ae8520899d7fac261e8879325ef1 kopano-webapp-spellchecker-2.0.1.zip
-e8bf6c3fa6baf8638116a032a767dc5c4ab9e989c553e8d5f3510e3f6c8de8b23f6917bcb0a6203d1686bf98efb1b0b88d7d5c2c14909a3e3b0a70927fce20bb kopano-webapp-spellchecker.ini
-"
diff --git a/testing/kopano-webapp-spellchecker/kopano-webapp-spellchecker.ini b/testing/kopano-webapp-spellchecker/kopano-webapp-spellchecker.ini
deleted file mode 100644
index 219c2fd4293..00000000000
--- a/testing/kopano-webapp-spellchecker/kopano-webapp-spellchecker.ini
+++ /dev/null
@@ -1 +0,0 @@
-extension=enchant
diff --git a/testing/kopano-webapp/0001-Fix-fatal-errors-in-translation-files.patch b/testing/kopano-webapp/0001-Fix-fatal-errors-in-translation-files.patch
deleted file mode 100644
index 706fed869a1..00000000000
--- a/testing/kopano-webapp/0001-Fix-fatal-errors-in-translation-files.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From ebf9b017d4f24f01277be3ecb645e1d46ce4836d Mon Sep 17 00:00:00 2001
-From: Noel Kuntze <noel.kuntze@thermi.consulting>
-Date: Wed, 14 Jul 2021 20:17:21 +0200
-Subject: [PATCH] Fix fatal errors in translation files
-
----
- server/language/de_DE.UTF-8/LC_MESSAGES/zarafa_webapp.po | 4 ++--
- server/language/nl_NL.UTF-8/LC_MESSAGES/zarafa_webapp.po | 2 +-
- 2 files changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/server/language/de_DE.UTF-8/LC_MESSAGES/zarafa_webapp.po b/server/language/de_DE.UTF-8/LC_MESSAGES/zarafa_webapp.po
-index dcc6b2cb..3994d87c 100644
---- a/server/language/de_DE.UTF-8/LC_MESSAGES/zarafa_webapp.po
-+++ b/server/language/de_DE.UTF-8/LC_MESSAGES/zarafa_webapp.po
-@@ -6265,9 +6265,9 @@ msgstr[1] ""
- msgid "Occurs every %s effective %s for %s occurrence."
- msgid_plural "Occurs every %s effective %s for %s occurrences."
- msgstr[0] ""
--"Findet jeden %s statt, beginnend am %s für %s Wiederholung von %s bis %s."
-+"Findet jeden %s statt, beginnend am %s für %s Wiederholung."
- msgstr[1] ""
--"Findet jeden %s statt, beginnend am %s für %s Wiederholungen von %s bis %s."
-+"Findet jeden %s statt, beginnend am %s für %s Wiederholungen."
-
- #, php-format
- msgid "Occurs every %s %s effective %s for %s occurrence."
-diff --git a/server/language/nl_NL.UTF-8/LC_MESSAGES/zarafa_webapp.po b/server/language/nl_NL.UTF-8/LC_MESSAGES/zarafa_webapp.po
-index 0dc4c5c1..8cda61a4 100644
---- a/server/language/nl_NL.UTF-8/LC_MESSAGES/zarafa_webapp.po
-+++ b/server/language/nl_NL.UTF-8/LC_MESSAGES/zarafa_webapp.po
-@@ -6270,7 +6270,7 @@ msgstr[1] "Vind plaats iedere %s %s, vanaf %s voor %s keren van %s tot %s."
- #, php-format
- msgid "Occurs every %s effective %s for %s occurrence."
- msgid_plural "Occurs every %s effective %s for %s occurrences."
--msgstr[0] "Vind iedere %s plaats, vanaf %s voor % keer."
-+msgstr[0] "Vind iedere %s plaats, vanaf %s voor %s keer."
- msgstr[1] "Vind iedere %s plaats, vanaf %s voor %s keren."
-
- #, php-format
---
-2.32.0
-
diff --git a/testing/kopano-webapp/APKBUILD b/testing/kopano-webapp/APKBUILD
deleted file mode 100644
index f53038460dc..00000000000
--- a/testing/kopano-webapp/APKBUILD
+++ /dev/null
@@ -1,242 +0,0 @@
-# Maintainer: Noel Kuntze <noel.kuntze@contauro.com>
-pkgname=kopano-webapp
-pkgdesc="WebApp for Kopano"
-pkgver=5.2.0
-pkgrel=4
-# ppc64le and riscv64 blocked by libmdbx -> kopano-core
- arch="noarch !ppc64le !riscv64"
-url="http://www.kopano.com/"
-license="AGPL-3.0-only"
-options="!check" # No test suite
-depends="php7 php7-fpm php7-json php7-gettext php7-iconv php7-session php7-openssl php7-simplexml php7-soap"
-# kopano-core necessary for mapi php module
-makedepends="apache-ant openjdk8 kopano-core bash gettext-dev libxml2-utils php7-soap"
-replaces="zarafa-webapp"
-subpackages="
- kopano-webapp-contactfax:simple_plugin_splitfunc:noarch
- kopano-webapp-gmaps:simple_plugin_splitfunc:noarch
- kopano-webapp-pimfolder:simple_plugin_splitfunc:noarch
- kopano-webapp-src:_src:noarch
-"
-# kopano-webapp-passwd:kopano_webapp_passwd_splitfunc
-
-pkgusers="kopano-webapp"
-pkggroups="kopano-webapp"
-
-install="kopano-webapp.pre-install"
-
-source="kopano-webapp-$pkgver.zip::https://stash.kopano.io/rest/api/latest/projects/KW/repos/kopano-webapp/archive?at=refs%2Ftags%2Fv$pkgver&format=zip
- nginx-location.conf
- php-fpm.example.conf
- kopano-webapp.conf
- kopano-webapp.ini
- compress-static
- 0001-Fix-fatal-errors-in-translation-files.patch
-"
-
-# 0001-Remove-error-dev-stdout.patch"
-# No passwd plugin for now because of no known good upstream and untested code
-#kopano-webapp-passwd-$_pkgverpasswd.tar.gz::https://github.com/silentsakky/zarafa-webapp-passwd/archive/$_commithashpasswd.tar.gz
-
-builddir="$srcdir/"
-
-prepare() {
- olddir="$builddir"
- builddir="$srcdir/$pkgname"
- default_prepare
- builddir="$olddir"
-}
-
-#helper function
-unpack() {
- local u
- verify
- initdcheck
- mkdir -p "$srcdir"
- local gunzip="$(command -v pigz || echo gunzip)"
- [ $gunzip = "/usr/bin/pigz" ] && gunzip="$gunzip -d"
- for u in $source; do
- local s
- local filename="$(filename_from_uri $u)"
- local new_root_dir="$builddir/${filename%%-[0-9]*}"
- if is_remote "$u"; then
- s="$SRCDEST/$filename"
- else
- s="$startdir/$u"
- fi
- case "$s" in
- *.tar)
- msg "Unpacking $s..."
- mkdir -p "$new_root_dir"
- tar -C "$new_root_dir" -xf "$s" ;;
- *.tar.gz|*.tgz)
- msg "Unpacking $s..."
- mkdir -p "$new_root_dir"
- $gunzip -c "$s" | tar -C "$new_root_dir" -x ;;
- *.tar.bz2)
- msg "Unpacking $s..."
- tar -C "$new_root_dir" -jxf "$s" ;;
- *.tar.lz)
- msg "Unpacking $s..."
- tar -C "$new_root_dir" --lzip -xf "$s" ;;
- *.tar.lzma)
- msg "Unpacking $s..."
- unlzma -T 0 -c "$s" | tar -C "$new_root_dir" -x ;;
- *.tar.xz)
- msg "Unpacking $s..."
- local threads_opt
- if [ "$(readlink -f "$(command -v unxz)")" != "/bin/busybox" ]; then
- threads_opt="--threads=0"
- fi
- unxz $threads_opt -c "$s" | tar -C "$new_root_dir" -x ;;
- *.zip)
- msg "Unpacking $s..."
- unzip -n -q "$s" -d "$new_root_dir" ;;
- esac
- done
-}
-
-build() {
- # create translations, compress javascript-files
- cd kopano-webapp/
- ant deploy
- ant deploy-plugins
- # antdeploy-plugins leads to errors
- # execution one by one
- cd "$srcdir"
- for f in kopano-webapp-*; do
- if [ -d "$f" ]; then
- dest="kopano-webapp/plugins/${f//kopano-webapp-/}"
- test="$(find . -name "$f/$f-*" 2>/dev/null | head -n 1)"
- case "${f//kopano-webapp-/}" in
- spellchecker-languagepack-italian)
- dest=kopano-webapp/plugins/spellchecker-languagepack-italian-it
- ;;
- files-backend-owncloud)
- dest=kopano-webapp/plugins/filesbackendOwncloud
- ;;
- files-backend-smb)
- dest=kopano-webapp/plugins/filesbackendSMB
- ;;
- fetchmail)
- mv "$f"/*/ "$dest"
- ;;
- *)
- ;;
- esac
- if [ -d "$test" ]; then
- mv "$test" "$dest"
- else
- mv "$f" "$dest"
- fi
- cd "$dest"*
- ant deploy -Droot-folder="$(pwd)/../../" -Dtarget-folder="$(pwd)/../../deploy/plugins"
- cd "$srcdir"
- fi
- done
-}
-package() {
- # application
- cd "$srcdir/kopano-webapp/deploy"
- install -dm 755 "$pkgdir/usr/share/webapps/$pkgname/"
-
- cp -r -- * "$pkgdir/usr/share/webapps/$pkgname/"
- cp "$srcdir/kopano-webapp/.htaccess" "$pkgdir/usr/share/webapps/$pkgname/"
- rm -R -- "$pkgdir/usr/share/webapps/$pkgname/plugins/"*
-
- # set version
- echo "$pkgver" > "$pkgdir/usr/share/webapps/$pkgname/version"
- ## precompress for nginx
- find "$pkgdir/usr/share/webapps/$pkgname" -type f -exec "$srcdir/compress-static" "{}" \;
- ## config examples
- install -dm 0750 -g kopano-webapp "$pkgdir/etc/webapps/$pkgname/"
- install -Dm 0644 -g kopano-webapp "$srcdir/php-fpm.example.conf" "$srcdir/nginx-location.conf" "$pkgdir/etc/webapps/$pkgname/"
- install -Dm 0644 -g kopano-webapp "$srcdir/kopano-webapp.conf" "$pkgdir/etc/webapps/$pkgname/apache.example.conf"
- install -Dm 0644 -g kopano-webapp "$srcdir/nginx-location.conf" "$pkgdir/etc/webapps/$pkgname/nginx.example.conf"
- ## config mains
- install -Dm 0644 -g kopano-webapp config.php.dist "$pkgdir/etc/webapps/$pkgname/config.php"
- sed -i 's%define("DEBUG_DUMP_FILE", BASE_PATH . "debug.txt");%define("DEBUG_DUMP_FILE", "/var/log/kopano-webapp/debug.txt");%g' debug.php.dist
-
- sed -i -e 's|\(\"DEBUG_LOADER\", \).*$|\1LOAD_RELEASE);|' debug.php.dist
- install -Dm 0644 debug.php.dist "$pkgdir/etc/webapps/$pkgname/debug.php.dist"
- ln -sf "/etc/webapps/$pkgname/config.php" "$pkgdir/usr/share/webapps/$pkgname/config.php"
- ln -sf "/etc/webapps/$pkgname/debug.php" "$pkgdir/usr/share/webapps/$pkgname/debug.php"
- ## php
- install -Dm 0644 "$srcdir/$pkgname.ini" "$pkgdir/etc/php7/conf.d/$pkgname.ini"
- ## php-fpm
- install -Dm 0644 "$srcdir/$pkgname.conf" "$pkgdir/etc/php7/php-fpm.d/$pkgname.conf"
- # /var/lib
- install -dm 0770 -g kopano-webapp "$pkgdir/var/lib/$pkgname/" "$pkgdir/var/lib/$pkgname/plugins" "$pkgdir/var/log/$pkgname"
- install -dm 0770 -g kopano-webapp "$pkgdir/var/lib/$pkgname/tmp"
- touch "$pkgdir/var/log/$pkgname/debug.txt"
- ln -sf "/var/log/$pkgname/debug.txt" "$pkgdir/usr/share/webapps/$pkgname/debug.txt"
- chown root:kopano-webapp "$pkgdir/usr/share/webapps/$pkgname"
- chmod 750 "$pkgdir/usr/share/webapps/$pkgname"
- chmod 660 "$pkgdir/var/log/$pkgname/debug.txt"
- chown root:kopano-webapp "$pkgdir/var/log/$pkgname/debug.txt"
- # fix access
- chmod 644 "$pkgdir/usr/share/webapps/kopano-webapp/client/kopano.js.map"
- # copy dompurify
- install -dm 755 "$pkgdir/usr/share/webapps/kopano-webapp/client/dompurify"
- # we're currently in srcdir/kopano-webapp/deploy
- install -Dm 644 ../client/dompurify/*.js* "$pkgdir/usr/share/webapps/kopano-webapp/client/dompurify/"
- chmod 0755 "$pkgdir/usr/share/webapps/$pkgname/"
-}
-
-simple_plugin_splitfunc() {
- depends="kopano-webapp"
- package_plugin
-}
-# FUNCTIONS
-package_plugin() {
- : "${pluginname:="${subpkgname//kopano-webapp-/}"}"
- echo "Pluginname: $pluginname" >&2
-
- echo "Packaging $pkgname with pluginname $pluginname" >&2
- cd "$srcdir/kopano-webapp/deploy/plugins/$pluginname/"
- # /usr/share
- install -dm 755 "$subpkgdir/usr/share/webapps/kopano-webapp/plugins/$pluginname/"
- cp -R -- * "$subpkgdir/usr/share/webapps/kopano-webapp/plugins/$pluginname/"
- rm -f "$subpkgdir/usr/share/webapps/kopano-webapp/plugins/$pluginname/config.php"
- "$srcdir/compress-static" "$subpkgdir/usr/share/webapps/kopano-webapp/plugins/$pluginname/"
- # /var/lib
- install -dm 0700 -o kopano-webapp -g root "$subpkgdir/var/lib/kopano-webapp/plugins/$pluginname"
- # /etc
- if [ -e "config.php" ]; then
- ## perform settings
- # convert windows line break to unix: http://stackoverflow.com/questions/11680815/removing-windows-newlines-on-linux-sed-vs-awk
- sed -i -e $'s/\r//' config.php
- install -dm 0750 -g kopano-webapp "$subpkgdir/etc/webapps/kopano-webapp/plugins/$pluginname/"
- ## config mains
- install -m 0750 -g kopano-webapp config.php "$subpkgdir/etc/webapps/kopano-webapp/plugins/$pluginname/config.php"
- ln -sf "/etc/webapps/kopano-webapp/plugins/$pluginname/config.php" "$subpkgdir/usr/share/webapps/kopano-webapp/plugins/$pluginname/config.php"
- ## config examples
- install -m 0750 "$subpkgdir/etc/webapps/kopano-webapp/plugins/$pluginname/config.php" "$subpkgdir/etc/webapps/kopano-webapp/plugins/$pluginname/config.example.php"
- fi
- if [ -e "$srcdir/$pluginname.ini" ]; then
- ## php
- mkdir -p "$subpkgdir/etc/php/conf.d"
- cp "$srcdir/$pluginname.ini" "$subpkgdir/etc/php/conf.d"
- fi
-}
-
-_src() {
- pkgdesc="kopano-webapp (sources)"
- destdir="$subpkgdir/usr/share/src/"
- mkdir -p "$destdir"
- cp -R "$srcdir/kopano-webapp/" "$destdir"
- cd "$destdir/kopano-webapp/"
- ant clean
- # everything using the -src package requires tools. Saves some seconds at build time for those packages
- ant tools
-}
-
-sha512sums="
-b81a19e90da8498f94033b76e3020215f152ec4cd1f86a0545964a26f9b8d8e2e68745a4ca70d9efa7ea73154e6ae8d40a9a7b718377541864ecfd1d72f51487 kopano-webapp-5.2.0.zip
-849f08412c6754603cf6d31866ae0b257719530861fcb40fd6acc4530576da59c45792eecf0ff483de41398401a21f1b20e36f1183c8cfbb88053b1b8bd603f4 nginx-location.conf
-bad70098b919c4cacce3152b276da489d7a36ca195b607508ad316211401dc98f07433ef505deb82a91388993e58b398cce2bc3eb295cf812362bae96b40fb35 php-fpm.example.conf
-bdfe3960f88c776264e4caae47404a3647508f545f915a5aa205d486415d32c5ac89f8b4dbd9905a0b0751ec0ed42a2aef690cf8bca20f66e1f322141fad0f01 kopano-webapp.conf
-062103e4ebf63c5dc4589d25e03f5ebe1df711613d5ea27a27265f3041832677ed384a16460e2bf8905c59f800abc84ef30a70512738c2cb335b76d275332ce8 kopano-webapp.ini
-a9421b4206f06ec9e61a79fad5907b3616d030386585ee06af8fc20d376b2023e0ca65fa20ef290029d3a0eb523f6ef8ed3d7a8be48a5340285ed2f004d99f9c compress-static
-f4d77690324eff874c22ff92a3717cc719fd66c0295baf60213cd8fbaa59110a8c4ca238caae9c36d4e606cbe56c7462c18225f917aaebac42b45e6b7683f0df 0001-Fix-fatal-errors-in-translation-files.patch
-"
diff --git a/testing/kopano-webapp/compress-static b/testing/kopano-webapp/compress-static
deleted file mode 100755
index 4d3aa61cf7f..00000000000
--- a/testing/kopano-webapp/compress-static
+++ /dev/null
@@ -1,38 +0,0 @@
-#!/bin/ash
-
-FILES="htm|css|html|js"
-
-process() {
- FILE="$1"
-
- if ! $(echo "$FILE" | egrep '.*\.('$FILES')')
- then
- return 0
- fi
-
-
- if [ -f "$FILE".gz ]
- then
- FILE_ORIG=$(stat -c %Y "$FILE")
- FILE_GZIP=$(stat -c %Y "$FILE".gz)
- if [ $FILE_ORIG -gt $FILE_GZIP ]
- then
- rm "$FILE".gz
- gzip -k -9 "$FILE"
- if [ "$DEBUG" == 1 ]
- then
- echo "Deleted old .gz and created new one at: $FILE.gz"
- sleep $SLEEP_DELAY
- fi
- else
- if [ "$DEBUG" == 1 ]
- then
- echo "Skipping - Already up to date: $FILE.gz"
- fi
- fi
- else
- gzip -k -9 "$FILE"
- echo "Created new: $FILE.gz"
- fi
-}
-process
diff --git a/testing/kopano-webapp/kopano-webapp.conf b/testing/kopano-webapp/kopano-webapp.conf
deleted file mode 100644
index dfcf033c3e3..00000000000
--- a/testing/kopano-webapp/kopano-webapp.conf
+++ /dev/null
@@ -1,32 +0,0 @@
-[kopano-webapp]
-listen = /var/lib/php7/fpm/kopano-webapp.sock
-listen.owner = kopano-webapp
-listen.group = http
-listen.mode = 0660
-
-user = kopano-webapp
-group = kopano
-
-; 5 kopano-webapp users
-pm = ondemand
-pm.max_children = 15
-pm.max_requests = 500
-
-env[HOSTNAME] = $HOSTNAME
-env[PATH] = /usr/local/bin:/usr/bin:/bin
-env[TMP] = /tmp
-env[TMPDIR] = /tmp
-env[TEMP] = /tmp
-env[HOME] = /home
-
-php_flag[short_open_tag] = on
-php_flag[register_globals] = off
-php_flag[magic_quotes_gpc] = off
-php_flag[magic_quotes_runtime] = off
-
-; The maximum POST limit. To upload large files, this value must be larger than upload_max_filesize.
-php_admin_value[upload_max_filesize] = 30M
-php_admin_value[post_max_size] = 31M
-
-php_admin_value[open_basedir] = ${open_basedir}:/usr/share/webapps/kopano-webapp:/etc/webapps/kopano-webapp:/var/lib/kopano-webapp:/var/log/kopano-webapp:/usr/share/php/mapi
-php_admin_value[session.save_path] = /var/lib/kopano-webapp/tmp
diff --git a/testing/kopano-webapp/kopano-webapp.ini b/testing/kopano-webapp/kopano-webapp.ini
deleted file mode 100644
index 8a719d9bce4..00000000000
--- a/testing/kopano-webapp/kopano-webapp.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-extension=mapi
-extension=iconv
-extension=gettext
diff --git a/testing/kopano-webapp/kopano-webapp.pre-install b/testing/kopano-webapp/kopano-webapp.pre-install
deleted file mode 100644
index 5fcbe5d7800..00000000000
--- a/testing/kopano-webapp/kopano-webapp.pre-install
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/bin/sh
-
-addgroup -S kopano-webapp >/dev/null 2>/dev/null
-addgroup -S http >/dev/null 2>/dev/null
-adduser -S -D -H -h /var/lib/kopano -s /sbin/nologin -G kopano-webapp -g kopano-webapp kopano-webapp >/dev/null 2>/dev/null
-addgroup -S kopano-webapp kopano
-exit 0
diff --git a/testing/kopano-webapp/nginx-location.conf b/testing/kopano-webapp/nginx-location.conf
deleted file mode 100644
index 157997e187c..00000000000
--- a/testing/kopano-webapp/nginx-location.conf
+++ /dev/null
@@ -1,43 +0,0 @@
- ###
- ## In order to run this component you need to define a server-context in.
- ## /etc/nginx/nginx.conf:
- ##
- ## http {
- ## server {
- ## listen 80;
- ## include ${PATH_TO_THIS_LOCATION_FILE};
- ## }
- ## }
- ##
- ## Or include this file in your existing server-context.
- ##
- location /kopano-webapp {
- root /usr/share/webapps;
- index index.php;
- gzip_static on;
- gzip_vary on;
- ## [WARNING] The following header states that the browser should only communicate
- ## with your server over a secure connection for the next 24 months.
- add_header Strict-Transport-Security max-age=63072000;
- add_header X-Frame-Options SAMEORIGIN;
- add_header X-Content-Type-Options nosniff;
-
- # HIDDEN FILES AND FOLDERS
- rewrite ^(.*)\/\.(.*)$ @404 break;
-
- ## Increase this if you want to upload large attachments
- client_max_body_size 20m;
-
- # Pass PHP scripts to PHP-FPM
- location ~* \.php$ {
- if (!-f $request_filename) {
- return 404;
- }
-
- fastcgi_index index.php;
- fastcgi_pass unix:/var/lib/php7/fpm/kopano-webapp.sock;
- include fastcgi_params;
- fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
- fastcgi_param SCRIPT_NAME $fastcgi_script_name;
- }
- }
diff --git a/testing/kopano-webapp/php-fpm.example.conf b/testing/kopano-webapp/php-fpm.example.conf
deleted file mode 100644
index 97b9777f109..00000000000
--- a/testing/kopano-webapp/php-fpm.example.conf
+++ /dev/null
@@ -1,6 +0,0 @@
-include = /etc/php/fpm.d/*.conf
-
-[global]
-pid = /run/php-fpm/php-fpm.pid
-error_log = syslog
-log_level = notice
diff --git a/testing/kopia/APKBUILD b/testing/kopia/APKBUILD
index 2bf6bf71255..c140219a936 100644
--- a/testing/kopia/APKBUILD
+++ b/testing/kopia/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Michał Polański <michal@polanski.me>
-# Maintainer: Michał Polański <michal@polanski.me>
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
pkgname=kopia
-pkgver=0.10.7
+pkgver=0.15.0
pkgrel=2
pkgdesc="Fast and secure backup tool"
url="https://kopia.io/"
@@ -10,33 +10,42 @@ arch="all !armhf !armv7 !x86" # tests fail with out of memory error
makedepends="go"
subpackages="$pkgname-bash-completion $pkgname-zsh-completion"
checkdepends="openssh-keygen"
-source="https://github.com/kopia/kopia/archive/v$pkgver/kopia-$pkgver.tar.gz
+source="
+ https://github.com/kopia/kopia/archive/v$pkgver/kopia-$pkgver.tar.gz
skip-docker-tests.patch
"
-export GOFLAGS="$GOFLAGS -trimpath -mod=readonly -modcacherw"
-export GOPATH="$srcdir"
-export CGO_ENABLED=0
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+export CGO_ENABLED=1
build() {
- go build -ldflags "-s -w -X github.com/kopia/kopia/repo.BuildVersion=$pkgver"
+ local _goldflags="
+ -X github.com/kopia/kopia/repo.BuildVersion=$pkgver
+ -X github.com/kopia/kopia/repo.BuildInfo=AlpineLinux
+ -X github.com/kopia/kopia/repo.BuildGitHubRepo=kopia/kopia
+ "
+ go build -ldflags "$_goldflags"
./kopia --completion-script-bash > $pkgname.bash
./kopia --completion-script-zsh > $pkgname.zsh
}
check() {
- go test -tags testing ./...
+ # XXX: end to end restore_test fails to get same buffer from backup
+ # shellcheck disable=2046
+ go test $(go list -tags testing ./... | grep -Ev 'end_to_end_test')
}
package() {
- install -Dm755 kopia "$pkgdir"/usr/bin/kopia
+ install -Dm755 kopia -t "$pkgdir"/usr/bin/
install -Dm644 $pkgname.bash "$pkgdir"/usr/share/bash-completion/completions/$pkgname
install -Dm644 $pkgname.zsh "$pkgdir"/usr/share/zsh/site-functions/_$pkgname
}
sha512sums="
-e66897d1fd09d0ac538f6d27a1294917fc41f77288428768ee08cc7dd286b4e418d28ccdb6ce3fcf60ebc31cce91821febdf04ad0118ad8ad698912823445fea kopia-0.10.7.tar.gz
+c12e75457d6a77d6968f1e577efdb5703ce6fa99991e3088a73e9b5dfa51fdfa96d8264e62a9fad1b2ee8ce07d98ca3bfd986acbc4dac277b2a84ec3187cfd97 kopia-0.15.0.tar.gz
6c1c8ca52d83c940c561f11adc18298147882b709810edd8c6560c8988ff1bd30dae2adba4c18055d283e7c2c655a6c6f10c3951829826d6fe5eea20c8cb821d skip-docker-tests.patch
"
diff --git a/testing/kops/APKBUILD b/testing/kops/APKBUILD
index a43b905ed8c..943648c7a55 100644
--- a/testing/kops/APKBUILD
+++ b/testing/kops/APKBUILD
@@ -1,27 +1,21 @@
# Contributor: Kaarle Ritvanen <kunkku@alpinelinux.org>
# Maintainer: Kevin Daudt <kdaudt@alpinelinux.org>
pkgname=kops
-pkgver=1.23.0
+pkgver=1.28.4
pkgrel=2
pkgdesc="Kubernetes Operations"
url="https://github.com/kubernetes/kops"
arch="x86_64"
license="Apache-2.0"
depends="kubernetes"
-makedepends="go"
+makedepends="go bash"
options="net"
source="$pkgname-$pkgver.tar.gz::https://github.com/kubernetes/kops/archive/v$pkgver.tar.gz"
-export GOMODCACHE="$srcdir"/go
export GOFLAGS="$GOFLAGS -modcacherw -mod=readonly"
-
-prepare() {
- default_prepare
-
- # v0.1.6 is broken with go1.18
- go mod edit -replace golang.org/x/tools=golang.org/x/tools@v0.1.8
- go mod tidy
-}
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
build() {
make kops
@@ -32,9 +26,9 @@ check() {
}
package() {
- install -Dm0755 .build/local/kops "$pkgdir"/usr/bin/kops
+ install -Dm0755 .build/dist/linux/*/kops "$pkgdir"/usr/bin/kops
}
sha512sums="
-99550f34a617a5ff8316a9c360f45a3c946e3f1dd7b5d067aaa6de9b8fc6b1108c78bc5db83b45cc2586ff28e0a41c89c7f2d0a1aedf2173c5dc6f545a83b0ff kops-1.23.0.tar.gz
+ca1f63bd1bec167cafa152fd1d510f6d927f301b05f2910e21ca015ded795fc00b7d9344e291acc3d3a6252143823d1adda8855fea52d5d8f5723534a056bb19 kops-1.28.4.tar.gz
"
diff --git a/testing/kops/fix-go1.18-segfault.patch b/testing/kops/fix-go1.18-segfault.patch
deleted file mode 100644
index 85d975b245f..00000000000
--- a/testing/kops/fix-go1.18-segfault.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-diff --git a/go.mod b/go.mod
-index f46f2f5..32d115d 100644
---- a/go.mod
-+++ b/go.mod
-@@ -61,7 +61,9 @@ require (
- github.com/hashicorp/vault/api v1.1.0
- github.com/jacksontj/memberlistmesh v0.0.0-20190905163944-93462b9d2bb7
- github.com/jetstack/cert-manager v1.3.1
-+ github.com/json-iterator/go v1.1.12 // indirect
- github.com/mitchellh/mapstructure v1.4.1
-+ github.com/modern-go/reflect2 v1.0.2 // indirect
- github.com/pelletier/go-toml v1.9.0
- github.com/pkg/sftp v1.13.0
- github.com/prometheus/client_golang v1.10.0
-diff --git a/go.sum b/go.sum
-index 5eab4e8..8bbadb6 100644
---- a/go.sum
-+++ b/go.sum
-@@ -702,6 +702,8 @@ github.com/json-iterator/go v1.1.7/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/u
- github.com/json-iterator/go v1.1.8/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4=
- github.com/json-iterator/go v1.1.10 h1:Kz6Cvnvv2wGdaG/V8yMvfkmNiXq9Ya2KUv4rouJJr68=
- github.com/json-iterator/go v1.1.10/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4=
-+github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM=
-+github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo=
- github.com/jstemmer/go-junit-report v0.0.0-20190106144839-af01ea7f8024/go.mod h1:6v2b51hI/fHJwM22ozAgKL4VKDeJcHhJFhtBdhmNjmU=
- github.com/jstemmer/go-junit-report v0.9.1/go.mod h1:Brl9GWCQeLvo8nXZwPNNblvFj/XSXhF0NWZEnDohbsk=
- github.com/jtolds/gls v4.20.0+incompatible h1:xdiiI2gbIgH/gLH7ADydsJ1uDOEzR8yvV7C0MuV77Wo=
-@@ -830,6 +832,8 @@ github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJ
- github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0=
- github.com/modern-go/reflect2 v1.0.1 h1:9f412s+6RmYXLWZSEzVVgPGK7C2PphHj5RJrvfx9AWI=
- github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0=
-+github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M=
-+github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk=
- github.com/mohae/deepcopy v0.0.0-20170603005431-491d3605edfb/go.mod h1:TaXosZuwdSHYgviHp1DAtfrULt5eUgsSMsZf+YrPgl8=
- github.com/monochromegane/go-gitignore v0.0.0-20200626010858-205db1a8cc00 h1:n6/2gBQ3RWajuToeY6ZtZTIKv2v7ThUy5KKusIT0yc0=
- github.com/monochromegane/go-gitignore v0.0.0-20200626010858-205db1a8cc00/go.mod h1:Pm3mSP3c5uWn86xMLZ5Sa7JB9GsEZySvHYXCTK4E9q4=
diff --git a/testing/kotlin-language-server/APKBUILD b/testing/kotlin-language-server/APKBUILD
new file mode 100644
index 00000000000..0806101905f
--- /dev/null
+++ b/testing/kotlin-language-server/APKBUILD
@@ -0,0 +1,31 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=kotlin-language-server
+pkgver=1.3.7
+pkgrel=0
+pkgdesc="Kotlin code completion, linting and more for any editor/IDE using the Language Server Protocol"
+url="https://github.com/fwcd/kotlin-language-server"
+arch="x86_64" # blocked by openjdk11, rest don't build, time out, or fail to build tests
+license="MIT"
+checkdepends="maven"
+depends="openjdk11"
+source="$pkgname-$pkgver.tar.gz::https://github.com/fwcd/kotlin-language-server/archive/refs/tags/$pkgver.tar.gz"
+options="!archcheck"
+
+build() {
+ ./gradlew :server:installDist
+}
+
+check() {
+ ./gradlew :server:test
+}
+
+package() {
+ mkdir -p "$pkgdir"/usr/share/kotlin "$pkgdir"/usr/bin
+ cp -r server/build/install/server "$pkgdir"/usr/share/kotlin/kotlin-language-server
+ ln -sf /usr/share/kotlin/kotlin-language-server/bin/kotlin-language-server "$pkgdir"/usr/bin/kotlin-language-server
+}
+
+sha512sums="
+78ec728cdef1c1ac75804a25f9884f71e5af4c39a9275504aa87f9bd9588cd02eb8da4ffb04de9f50b5afb70e32d73f4ae53097e253b33b40f8162925760fbaf kotlin-language-server-1.3.7.tar.gz
+"
diff --git a/testing/kpatch/02-argp.patch b/testing/kpatch/02-argp.patch
new file mode 100644
index 00000000000..b363bb42dab
--- /dev/null
+++ b/testing/kpatch/02-argp.patch
@@ -0,0 +1,11 @@
+--- a/kpatch-build/Makefile 2022-08-03 22:25:45.096931535 +0200
++++ b/kpatch-build/Makefile 2022-08-03 22:26:00.168298699 +0200
+@@ -2,7 +2,7 @@ include ../Makefile.inc
+
+ CFLAGS += -MMD -MP -I../kmod/patch -Iinsn -Wall -Wsign-compare \
+ -Wconversion -Wno-sign-conversion -g -Werror
+-LDLIBS = -lelf
++LDLIBS = -lelf -largp
+
+ TARGETS = create-diff-object create-klp-module create-kpatch-module
+ SOURCES = create-diff-object.c kpatch-elf.c \
diff --git a/testing/kpatch/03-ppc64.patch b/testing/kpatch/03-ppc64.patch
new file mode 100644
index 00000000000..3fc853b6ff1
--- /dev/null
+++ b/testing/kpatch/03-ppc64.patch
@@ -0,0 +1,15 @@
+--- a/kpatch-build/create-diff-object.c 2022-08-03 22:33:54.297782237 +0200
++++ b/kpatch-build/create-diff-object.c 2022-08-03 22:34:53.442204389 +0200
+@@ -132,12 +132,6 @@ static int is_bundleable(struct symbol *
+ return 0;
+ }
+
+-/* Symbol st_others value for powerpc */
+-#define STO_PPC64_LOCAL_BIT 5
+-#define STO_PPC64_LOCAL_MASK (7 << STO_PPC64_LOCAL_BIT)
+-#define PPC64_LOCAL_ENTRY_OFFSET(other) \
+- (((1 << (((other) & STO_PPC64_LOCAL_MASK) >> STO_PPC64_LOCAL_BIT)) >> 2) << 2)
+-
+ /*
+ * On ppc64le, the function prologue generated by GCC 6+ has the sequence:
+ *
diff --git a/testing/kpatch/APKBUILD b/testing/kpatch/APKBUILD
new file mode 100644
index 00000000000..1ac7c182f3f
--- /dev/null
+++ b/testing/kpatch/APKBUILD
@@ -0,0 +1,41 @@
+# Contributor: Nicolas Lorin <androw95220@gmail.com>
+# Maintainer: Nicolas Lorin <androw95220@gmail.com>
+pkgname=kpatch
+pkgver=0.9.9
+pkgrel=0
+pkgdesc="live kernel patching"
+url="https://github.com/dynup/kpatch"
+arch="x86_64"
+license="GPL-2.0-only"
+depends="
+ bash
+ binutils
+ elfutils-dev
+ gawk
+ gcc
+ "
+makedepends="argp-standalone"
+options="!check"
+subpackages="kpatch-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/dynup/kpatch/archive/v$pkgver.tar.gz
+ 02-argp.patch
+ 03-ppc64.patch
+ "
+
+build() {
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" PREFIX="/usr" install
+ cd "$pkgdir"
+
+ # Remove incompatible init system file
+ rm -r etc/init
+}
+
+sha512sums="
+2e1fd4ee11cbbe0f0838023e13547a58f352ea7a35e257b651fdcccd04de3ddfc418ae0c658a3fd8c26e43c549ae17df935f28acc0c32f0865831796795a4ca9 kpatch-0.9.9.tar.gz
+69b05b0941e40189b246159de4faafdf78527b4f08d6b28e82eabae0f3e10935adcdf237b0ff402dd1bc9e6cc96315f3e65438c7a827246da5c3a119d4fc207b 02-argp.patch
+99256fd74ffa98d00bc614115b1acb3d7f4d829b641cc4e46a342cd4bfdb97fb1197888ca438c0562881f2382a6e7d2dd6995cf8d24915d261385dcea95df27f 03-ppc64.patch
+"
diff --git a/testing/kristall/APKBUILD b/testing/kristall/APKBUILD
deleted file mode 100644
index c5c354427df..00000000000
--- a/testing/kristall/APKBUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-# Contributor: omni <omni@gitlab.alpinelinux.org>
-# Maintainer: omni <omni@gitlab.alpinelinux.org>
-pkgname=kristall
-pkgver=0.3_git20211120
-_commit=6b39f24484bb0796f3f383401f95904f85b74d7b
-pkgrel=0
-pkgdesc="Qt small-internet client for gemini, gopher, finger and http(s)"
-url="https://kristall.random-projects.net/"
-# armhf: missing qt5-qtdeclarative
-arch="all !armhf"
-license="GPL-3.0-or-later"
-depends="qt5-qtsvg"
-makedepends="qtchooser qt5-qtbase-dev qt5-qtsvg-dev qt5-qtmultimedia-dev
- qt5-qttools-dev coreutils"
-options="!check" # no test suite
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/MasterQ32/kristall/archive/$_commit.tar.gz
- set-kristall-version.patch"
-builddir="$srcdir/$pkgname-$_commit"
-
-build() {
- export pkgver # for set-kristall-version.patch
- make
-}
-
-package() {
- make install PREFIX="$pkgdir"/usr
-}
-
-sha512sums="
-63cefc47b0b28eb1780ed3e3cf989fb06d9d214c1e64bbbcc47f027ccbb0ef33d482aaa501ff10b1fd077d17541871d8809290d6b31d0e26cc51118dfbdf60bf kristall-0.3_git20211120.tar.gz
-4b7cd03af976a04ae2ec03db1f07a4b5a8842306a2a2620b5d328d64cb57f53b19c3909bc757fc8008ac93819f8fae3eadf1955128835a61170c7cda83d96695 set-kristall-version.patch
-"
diff --git a/testing/kristall/set-kristall-version.patch b/testing/kristall/set-kristall-version.patch
deleted file mode 100644
index 4311ac4f508..00000000000
--- a/testing/kristall/set-kristall-version.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/src/kristall.pro
-+++ b/src/kristall.pro
-@@ -9,7 +9,7 @@ greaterThan(QT_MAJOR_VERSION, 4): QT +=
- # deprecated API in order to know how to port your code away from it.
- DEFINES += QT_DEPRECATED_WARNINGS
-
--DEFINES += KRISTALL_VERSION="\"$(shell cd $$PWD; git describe --tags)\""
-+DEFINES += KRISTALL_VERSION="\"$$(pkgver)\""
-
- # You can also make your code fail to compile if it uses deprecated APIs.
- # In order to do so, uncomment the following line.
diff --git a/testing/krita-plugin-gmic/APKBUILD b/testing/krita-plugin-gmic/APKBUILD
new file mode 100644
index 00000000000..d0139f76c69
--- /dev/null
+++ b/testing/krita-plugin-gmic/APKBUILD
@@ -0,0 +1,53 @@
+# Maintainer:
+pkgname=krita-plugin-gmic
+# match version to gmic.
+pkgver=3.2.4.1
+pkgrel=3
+pkgdesc="Krita plugin for GMIC"
+url="https://github.com/amyspark/gmic"
+# krita
+arch="all !s390x !armhf !armv7"
+license="CECILL-2.1"
+depends="gmic"
+makedepends="
+ bash
+ cmake
+ extra-cmake-modules
+ fftw-dev
+ kcoreaddons5-dev
+ krita-dev
+ gmic-dev
+ qt5-qtbase-dev
+ qt5-qttools-dev
+ samurai
+ zstd
+ "
+source="https://github.com/amyspark/gmic/releases/download/v$pkgver/gmic-$pkgver-patched.tar.zst
+ gmic-sys.patch
+ no-qt6.patch
+ "
+builddir="$srcdir/gmic-$pkgver-patched"
+options="!check" # no tests
+
+build() {
+ CFLAGS="$CFLAGS -flto=auto" \
+ CXXFLAGS="$CXXFLAGS -flto=auto" \
+ cmake -B build -G Ninja -S gmic-qt \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DGMIC_QT_HOST=krita-plugin \
+ -DQT_MAJOR_VERSION=5
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+ # comes from gmic
+ rm -fv "$pkgdir"/usr/share/gmic/gmic_cluts.gmz
+}
+
+sha512sums="
+36de14ac7823e94e1988ada4e095ba18408bb9e7ab98f745573fcf759d0835e8182d887aa2c26e980a7974f5c2bdef44227c0cc6b9155849b7aafa49c6821c4c gmic-3.2.4.1-patched.tar.zst
+673c3644dbb55621204975b97346d8bbe4fd4860344dcbde849f84da6b343a412405944bf40d3eb215335127b9fb173b615b67a85a0b5bc36084e9bdcdcd42b4 gmic-sys.patch
+34a605e417fed6233fb8f64108c56398cc2daa1b7bbbb847c1763c97100d1afc5a11929931b61f7fd67de10f215c87992a0e3ab1a8a86a3a9ceeac702e836230 no-qt6.patch
+"
diff --git a/testing/krita-plugin-gmic/gmic-sys.patch b/testing/krita-plugin-gmic/gmic-sys.patch
new file mode 100644
index 00000000000..4af1494d8ba
--- /dev/null
+++ b/testing/krita-plugin-gmic/gmic-sys.patch
@@ -0,0 +1,14 @@
+diff --git a/gmic-qt/CMakeLists.txt b/gmic-qt/CMakeLists.txt
+index 6c76f54..d0fb719 100644
+--- a/gmic-qt/CMakeLists.txt
++++ b/gmic-qt/CMakeLists.txt
+@@ -142,7 +142,8 @@ endif()
+ # Gmic
+ #
+ if (ENABLE_SYSTEM_GMIC)
+- find_package(Gmic REQUIRED CONFIG)
++ set(GMIC_LIB_PATH /usr/lib)
++ #find_package(Gmic REQUIRED CONFIG)
+ endif (ENABLE_SYSTEM_GMIC)
+
+ #
diff --git a/testing/krita-plugin-gmic/no-qt6.patch b/testing/krita-plugin-gmic/no-qt6.patch
new file mode 100644
index 00000000000..be34dc917f6
--- /dev/null
+++ b/testing/krita-plugin-gmic/no-qt6.patch
@@ -0,0 +1,11 @@
+we build krita with qt5, so this has to match
+
+diff --git a/gmic-qt/CMakeLists.txt b/gmic-qt/CMakeLists.txt
+index d0fb719..c106470 100644
+--- a/gmic-qt/CMakeLists.txt
++++ b/gmic-qt/CMakeLists.txt
+@@ -156,3 +156,3 @@ find_package(Threads REQUIRED)
+ #
+-find_package(QT NAMES Qt6 Qt5 REQUIRED COMPONENTS Core)
++find_package(QT NAMES Qt5 REQUIRED COMPONENTS Core)
+ find_package(Qt${QT_VERSION_MAJOR} ${MIN_QT_VERSION}
diff --git a/testing/kstars/APKBUILD b/testing/kstars/APKBUILD
new file mode 100644
index 00000000000..0ba9fa13cfa
--- /dev/null
+++ b/testing/kstars/APKBUILD
@@ -0,0 +1,76 @@
+# Contributor: Clayton Craft <clayton@craftyguy.net>
+# Maintainer: team/kde <clayton@craftyguy.net>
+pkgname=kstars
+pkgver=3.7.0
+pkgrel=0
+pkgdesc="Astronomy software"
+url="https://kde.org/applications/education/kstars"
+# arm, riscv64: no support in deps
+# ppc64le: build fails and I don't care about that arch
+arch="all !armv7 !armhf !ppc64le !riscv64"
+license="GPL-2.0-or-later"
+makedepends="
+ cfitsio-dev
+ cmake
+ eigen-dev
+ extra-cmake-modules
+ gsl-dev
+ kconfig5
+ kconfigwidgets5
+ kcoreaddons5
+ kcrash5
+ kdoctools5-dev
+ ki18n5
+ kio5
+ knewstuff5-dev
+ knotifications5
+ knotifyconfig5-dev
+ kplotting5-dev
+ kwidgetsaddons5
+ kxmlgui5
+ libindi-dev
+ libnova-dev
+ libraw-dev
+ libxisf-dev
+ qt5-qtbase-dev
+ qt5-qtdatavis3d-dev
+ qt5-qtdeclarative-dev
+ qt5-qtquickcontrols2-dev
+ qt5-qtsvg-dev
+ qt5-qtwebsockets-dev
+ qtkeychain-dev
+ samurai
+ stellarsolver-dev
+ wcslib-dev
+"
+subpackages="$pkgname-dev $pkgname-doc"
+source="
+ https://download.kde.org/stable/kstars/kstars-$pkgver.tar.xz
+ tests-disable-ngc4535-autofocus3.patch
+ "
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DCMAKE_BUILD_TYPE=None
+ cmake --build build
+}
+
+check() {
+ # Note: excluded tests fail because they cannot find TZrules.dat and other
+ # things in the 'data' dir. Seems like test framework would allow
+ # specifying or overriding the search dir since data is in $srcdir, but I
+ # couldn't figure it out yet, so disabling tests...
+ ctest --test-dir build --output-on-failure \
+ -E "StarCorrespondenceTest|Test(ArtificialHorizon|CatalogDownload|EkosCapture|EkosFilterWheel|EkosFocus|EkosMeridianFlipState|EkosMount|EkosScheduler|EkosSchedulerOps|EkosSimulator|KSPaths|PolarAlign)"
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+b62ccc4706dcc23aee2098c8b7614514110b22fd8150efe6119be056d9bd17f29fcf1943b0282364b02e02b32d1d7cfd2f1175a2cf79e4f4d0085865b4716c79 kstars-3.7.0.tar.xz
+16967f51398456e259f351f91307d57885cbe9778199521c6b9c157d6b19477a49a055311d3d75ce10b9b3266211344aee153b4c09881dd553ebd28d2692684c tests-disable-ngc4535-autofocus3.patch
+"
diff --git a/testing/kstars/tests-disable-ngc4535-autofocus3.patch b/testing/kstars/tests-disable-ngc4535-autofocus3.patch
new file mode 100644
index 00000000000..08311f54af2
--- /dev/null
+++ b/testing/kstars/tests-disable-ngc4535-autofocus3.patch
@@ -0,0 +1,12 @@
+diff --git a/Tests/fitsviewer/testfitsdata.cpp b/Tests/fitsviewer/testfitsdata.cpp
+index 0a5a4b4..bb2cc35 100644
+--- a/Tests/fitsviewer/testfitsdata.cpp
++++ b/Tests/fitsviewer/testfitsdata.cpp
+@@ -55,7 +55,6 @@ void TestFitsData::testComputeHFR_data()
+ // Normal HFR tests
+ QTest::newRow("NGC4535-1-FOCUS") << "ngc4535-autofocus1.fits" << FITS_FOCUS << 11 << 3.92;
+ QTest::newRow("NGC4535-2-FOCUS") << "ngc4535-autofocus2.fits" << FITS_FOCUS << 17 << 2.13;
+- QTest::newRow("NGC4535-3-FOCUS") << "ngc4535-autofocus3.fits" << FITS_FOCUS << 126 << 1.254911;
+
+ // Focus HFR tests
+ QTest::newRow("NGC4535-1-NORMAL") << "ngc4535-autofocus1.fits" << FITS_NORMAL << 3 << 3.17;
diff --git a/testing/kube-no-trouble/APKBUILD b/testing/kube-no-trouble/APKBUILD
new file mode 100644
index 00000000000..31f09f8f4e5
--- /dev/null
+++ b/testing/kube-no-trouble/APKBUILD
@@ -0,0 +1,39 @@
+# Contributor: Thomas Deutsch <thomas@tuxpeople.org>
+# Maintainer: Thomas Deutsch <thomas@tuxpeople.org>
+pkgname=kube-no-trouble
+_pkgname=github.com/doitintl/kube-no-trouble
+pkgver=0.7.2
+pkgrel=1
+pkgdesc="Easily check your clusters for use of deprecated APIs"
+url="https://github.com/doitintl/kube-no-trouble"
+arch="all"
+license="MIT"
+makedepends="go"
+source="$pkgname-$pkgver.tar.gz::https://github.com/doitintl/kube-no-trouble/archive/refs/tags/$pkgver.tar.gz"
+options="net"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ local ldflags="
+ -X main.version=$pkgver
+ -X $_pkgname/cmd.version=$pkgver
+ -X $_pkgname/cmd.commit=AlpineLinux
+ -X $_pkgname/cmd.date=$(date -u +%FT%T%Z ${SOURCE_DATE_EPOCH:+-d @$SOURCE_DATE_EPOCH})
+ "
+ go build -ldflags "$ldflags" -o execs/$pkgname cmd/kubent/main.go
+}
+
+check() {
+ go test ./...
+}
+
+package() {
+ install -Dm755 execs/$pkgname "$pkgdir"/usr/bin/$pkgname
+}
+
+sha512sums="
+171d4a82c4911860bcf262b740523fd1571863e3f98c0d68539b13540c6fda44ec819cd46a9a1503785b377b4aee72f9ed492a2ef1c901ea1d090c9d93882078 kube-no-trouble-0.7.2.tar.gz
+"
diff --git a/testing/kubectl-cert-manager/APKBUILD b/testing/kubectl-cert-manager/APKBUILD
new file mode 100644
index 00000000000..7f616df6f76
--- /dev/null
+++ b/testing/kubectl-cert-manager/APKBUILD
@@ -0,0 +1,34 @@
+# Contributor: Michał Polański <michal@polanski.me>
+# Maintainer: Michał Polański <michal@polanski.me>
+pkgname=kubectl-cert-manager
+pkgver=1.14.4
+pkgrel=2
+pkgdesc="Manage and configure cert-manager resources for Kubernetes"
+url="https://cert-manager.io/"
+license="Apache-2.0"
+arch="all !armhf !riscv64" # limited by kubectl
+depends="kubectl"
+makedepends="go"
+source="https://github.com/cert-manager/cert-manager/archive/v$pkgver/kubectl-cert-manager-$pkgver.tar.gz"
+builddir="$srcdir/cert-manager-$pkgver/cmd/ctl"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ go build \
+ -ldflags "-X github.com/cert-manager/cert-manager/pkg/util.AppVersion=v$pkgver"
+}
+
+check() {
+ go test ./...
+}
+
+package() {
+ install -Dm755 ctl "$pkgdir"/usr/bin/kubectl-cert_manager
+}
+
+sha512sums="
+3f3af43223093ce058a1dee8ae1e1e52dd90029cbd537860754f0cdff9ccb030041ebd65402ecd4e44ee6fde69a3748b622e77d8af4907d7f696f04d8c72c762 kubectl-cert-manager-1.14.4.tar.gz
+"
diff --git a/testing/kubectl-krew/APKBUILD b/testing/kubectl-krew/APKBUILD
new file mode 100644
index 00000000000..d42528ba5e6
--- /dev/null
+++ b/testing/kubectl-krew/APKBUILD
@@ -0,0 +1,42 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=kubectl-krew
+pkgver=0.4.4
+pkgrel=4
+pkgdesc="Find and install kubectl plugins"
+url="https://krew.sigs.k8s.io/"
+arch="all !armhf !riscv64" # kubectl
+license="Apache-2.0"
+depends="kubectl"
+makedepends="go"
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/kubernetes-sigs/krew/archive/refs/tags/v$pkgver.tar.gz
+ test-use-testing-tmpdir.patch
+ "
+builddir="$srcdir/krew-$pkgver"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ GOLDFLAGS="
+ -X sigs.k8s.io/krew/internal/version.gitCommit=AlpineLinux
+ -X sigs.k8s.io/krew/internal/version.gitTag=v$pkgver
+ "
+ go build -tags netgo -ldflags "$GOLDFLAGS" -o bin/$pkgname ./cmd/krew/main.go
+}
+
+check() {
+ # uses github api and gets 403
+ # shellcheck disable=2046
+ KREW_BINARY="$builddir/bin/$pkgname" go test $(go list ./... | grep -Ev '(cmd/internal)')
+}
+
+package() {
+ install -Dm755 bin/$pkgname "$pkgdir"/usr/bin/$pkgname
+}
+
+sha512sums="
+888362c564500d3f9f00b3207f5d63ee6546f9da6c884736fa55d49e78b91d5085a518f69f41b156cc8dc13667846be98bc2459392ca3d970c89721b6f4b632b kubectl-krew-0.4.4.tar.gz
+797a0f1361d893289217569e09dd5564fe545eaf2f0b3dc40367c63cb124b8120c5600d190732ced7885a020ae56a9417b49bccb8bca2c87faf72bf3e1359a81 test-use-testing-tmpdir.patch
+"
diff --git a/testing/kubectl-krew/test-use-testing-tmpdir.patch b/testing/kubectl-krew/test-use-testing-tmpdir.patch
new file mode 100644
index 00000000000..ff70a23f122
--- /dev/null
+++ b/testing/kubectl-krew/test-use-testing-tmpdir.patch
@@ -0,0 +1,15 @@
+Outdated index files from previous builds break tests. Use t.TempDir() to make
+sure a new index file is used.
+diff --git a/integration_test/testutil_test.go b/integration_test/testutil_test.go
+index 66ebc98..d91635b 100644
+--- a/integration_test/testutil_test.go
++++ b/integration_test/testutil_test.go
+@@ -277,7 +277,7 @@ func (it *ITest) loadReceipt(path string) index.Receipt {
+ // It caches the index tree as in-memory tar after the first run.
+ func (it *ITest) initializeIndex() {
+ initIndexOnce.Do(func() {
+- persistentCacheFile := filepath.Join(os.TempDir(), persistentIndexCache)
++ persistentCacheFile := filepath.Join(it.t.TempDir(), persistentIndexCache)
+ fileInfo, err := os.Stat(persistentCacheFile)
+
+ if err == nil && fileInfo.Mode().IsRegular() {
diff --git a/testing/kubectl-oidc_login/APKBUILD b/testing/kubectl-oidc_login/APKBUILD
new file mode 100644
index 00000000000..88441965eed
--- /dev/null
+++ b/testing/kubectl-oidc_login/APKBUILD
@@ -0,0 +1,32 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=kubectl-oidc_login
+pkgver=1.28.0
+pkgrel=5
+pkgdesc="kubectl plugin for Kubernetes OpenID Connect authentication"
+url="https://github.com/int128/kubelogin"
+arch="all !armhf !riscv64" # blocked by kubectl
+license="Apache-2.0"
+depends="kubectl"
+makedepends="go"
+source="$pkgname-$pkgver.tar.gz::https://github.com/int128/kubelogin/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/kubelogin-$pkgver"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ go build -v -ldflags "-X main.version=$pkgver"
+}
+
+check() {
+ go test ./...
+}
+
+package() {
+ install -Dm755 kubelogin "$pkgdir"/usr/bin/kubectl-oidc_login
+}
+
+sha512sums="
+b39cdb31aab7cb1bedbf5d13a449e289569b6e17c319900d18e741aeb8b88a8eee5534aec57753457e6a5b9b139b85b95f2bdb438b79773a8ae54e3eb57a4358 kubectl-oidc_login-1.28.0.tar.gz
+"
diff --git a/testing/kubeone/APKBUILD b/testing/kubeone/APKBUILD
new file mode 100644
index 00000000000..7da1e6d9d7e
--- /dev/null
+++ b/testing/kubeone/APKBUILD
@@ -0,0 +1,61 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=kubeone
+pkgver=1.7.3
+# Use the latest stable Kubernetes version at the time as the default (https://dl.k8s.io/release/stable-1.27.txt).
+# See https://docs.kubermatic.com/kubeone/main/tutorials/creating-clusters/#step-5--provisioning-the-cluster for
+# the table of compatible Kubernetes versions.
+_k8sver=1.27.11
+pkgrel=2
+pkgdesc="Automate Kubernetes cluster operations on all platforms"
+url="https://kubeone.io/"
+arch="all"
+license="Apache-2.0"
+makedepends="go"
+subpackages="
+ $pkgname-doc
+ $pkgname-bash-completion
+ $pkgname-zsh-completion
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/kubermatic/kubeone/archive/refs/tags/v$pkgver.tar.gz"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ local _goldflags="
+ -X k8c.io/kubeone/pkg/cmd.commit=AlpineLinux
+ -X k8c.io/kubeone/pkg/cmd.version=$pkgver
+ -X k8c.io/kubeone/pkg/cmd.date=$(date -u "+%Y-%m-%dT%H:%M:%SZ" ${SOURCE_DATE_EPOCH:+-d @$SOURCE_DATE_EPOCH})
+ -X k8c.io/kubeone/pkg/cmd.defaultKubeVersion=$_k8sver
+ -X k8c.io/kubeone/pkg/cmd.defaultCloudProviderName=none
+ "
+
+ go build -v -ldflags "$_goldflags"
+
+ mkdir -p man
+ ./kubeone document man -o man/
+
+ for shell in bash zsh; do
+ ./kubeone completion $shell > kubeone.$shell
+ done
+}
+
+check() {
+ go test ./pkg/... ./test/...
+}
+
+package() {
+ install -Dm755 kubeone -t "$pkgdir"/usr/bin/
+
+ install -Dm644 man/*.1 -t "$pkgdir"/usr/share/man/man1/
+
+ install -Dm644 kubeone.bash \
+ "$pkgdir"/usr/share/bash-completion/completions/kubeone
+ install -Dm644 kubeone.zsh \
+ "$pkgdir"/usr/share/zsh/site-functions/_kubeone
+}
+
+sha512sums="
+0fe36eeb3fd9ad14a831c48dcd4c22f76d7e7274522c4e6b6623588294a1fd820cd8d795b0135295f40d66bcefcba479546556d079313feb8ec734cb5710081d kubeone-1.7.3.tar.gz
+"
diff --git a/testing/kubepug/APKBUILD b/testing/kubepug/APKBUILD
new file mode 100644
index 00000000000..60d7e3f5d11
--- /dev/null
+++ b/testing/kubepug/APKBUILD
@@ -0,0 +1,52 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=kubepug
+pkgver=1.7.1
+pkgrel=2
+pkgdesc="Kubernetes pre-upgrade deprecation checker"
+url="https://github.com/rikatz/kubepug"
+arch="all"
+license="Apache-2.0"
+makedepends="go"
+subpackages="
+ $pkgname-bash-completion
+ $pkgname-zsh-completion
+ $pkgname-fish-completion
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/rikatz/kubepug/archive/refs/tags/v$pkgver.tar.gz"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ local _goldflags="
+ -X sigs.k8s.io/release-utils/version.gitVersion=v$pkgver
+ -X sigs.k8s.io/release-utils/version.gitCommit=AlpineLinux
+ -X sigs.k8s.io/release-utils/version.gitTreeState=clean
+ -X sigs.k8s.io/release-utils/version.buildDate=$(date -u '+%Y-%m-%dT%H:%M:%SZ' ${SOURCE_DATE_EPOCH:+-d @$SOURCE_DATE_EPOCH})
+ "
+ go build -v -ldflags "$_goldflags" -o bin/$pkgname
+
+ for shell in bash zsh fish; do
+ ./bin/kubepug completion $shell > kubepug.$shell
+ done
+}
+
+check() {
+ go test ./...
+}
+
+package() {
+ install -Dm755 bin/$pkgname -t "$pkgdir"/usr/bin
+
+ install -Dm644 kubepug.bash \
+ "$pkgdir"/usr/share/bash-completion/completions/kubepug
+ install -Dm644 kubepug.zsh \
+ "$pkgdir"/usr/share/zsh/site-functions/_kubepug
+ install -Dm644 kubepug.fish \
+ "$pkgdir"/usr/share/fish/vendor_completions.d/kubepug.fish
+}
+
+sha512sums="
+a04411b6e51a9ffa49c80c23391546478dc912bafffff85dcdaf931167f9cc4844120360871d177120c7f50b04e01a40fbf0694759dc5973ec5ee18d8d285d6d kubepug-1.7.1.tar.gz
+"
diff --git a/testing/kubernetes/APKBUILD b/testing/kubernetes/APKBUILD
deleted file mode 100644
index 8933c4a6750..00000000000
--- a/testing/kubernetes/APKBUILD
+++ /dev/null
@@ -1,224 +0,0 @@
-# Contributor: Francesco Colista <fcolista@alpinelinux.org>
-# Contributor: Mateusz Mikuła <matti@marinelayer.io>
-# Contributor: Tiago Ilieve <tiago.myhro@gmail.com>
-# Contributor: Dave <dj.2dixx@gmail.com>
-# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
-pkgname=kubernetes
-pkgver=1.24.0
-pkgrel=2
-pkgdesc="Container Cluster Manager"
-url="https://kubernetes.io/"
-# ppc64le: failed to build
-arch="x86_64 aarch64 armv7 x86"
-license="Apache-2.0"
-options="!check chmod-clean" # Tests hang
-
-_kube_proxy_deps="iptables"
-_kubelet_deps="iptables"
-_kubeadm_deps="iproute2 socat ethtool conntrack-tools cri-tools"
-makedepends="go go-bindata linux-headers rsync grep findutils bash
- $_kube_proxy_deps
- $_kubelet_deps
- $_kubeadm_deps
- "
-subpackages="
- kubeadm:_kubeadm
- kubectl:_kubectl
- kubelet:_kubelet
- kubelet-openrc:_kubelet_openrc
- kube-apiserver:_apiserver
- kube-apiserver-openrc:_apiserver_openrc
- kube-controller-manager:_controllermanager
- kube-controller-manager-openrc:_controllermanager_openrc
- kube-proxy:_proxy
- kube-proxy-openrc:_proxy_openrc
- kube-scheduler:_scheduler
- kube-scheduler-openrc:_scheduler_openrc
- kubeadm-bash-completion:_kubeadm_bash:noarch
- kubectl-bash-completion:_kubectl_bash:noarch
- kubeadm-zsh-completion:_kubeadm_zsh:noarch
- kubectl-zsh-completion:_kubectl_zsh:noarch
-"
-
-source="$pkgname-$pkgver.tar.gz::https://github.com/kubernetes/kubernetes/archive/v$pkgver.tar.gz
- make-e2e_node-run-over-distro-bins.patch
- make-test-cmd-run-over-hyperkube-based-kubectl.patch
-
- kube-apiserver.initd
- kube-apiserver.confd
- kube-apiserver.logrotated
-
- kube-controller-manager.initd
- kube-controller-manager.confd
- kube-controller-manager.logrotated
-
- kube-proxy.initd
- kube-proxy.confd
- kube-proxy.logrotated
-
- kube-scheduler.initd
- kube-scheduler.confd
- kube-scheduler.logrotated
-
- kubelet.initd
- kubelet.confd
- kubelet.logrotated"
-
-_agent="kubelet"
-_cli="kubeadm kubectl"
-_services="kube-apiserver kube-controller-manager kube-proxy kube-scheduler"
-
-build() {
- make generated_files
- for _pkgs in $_agent $_cli $_services ; do
- make GOFLAGS="-buildmode=pie -v -tags=providerless" GOLDFLAGS="-extldflags=-static -w -s" WHAT=cmd/$_pkgs
- done
-}
-
-package() {
- for bin in $_agent $_cli $_services; do
- install -Dm755 _output/local/bin/linux/*/$bin "$pkgdir"/usr/bin/$bin
- done
- mkdir -p "$pkgdir"/etc/kubernetes
-}
-
-
-_do_subpkg() {
- local _pkg=$1
- pkgdesc="Kubernetes - $_pkg"
- case "$_pkg" in
- kubelet) depends="$_kubelet_deps" ;;
- kubeadm) depends="$_kubeadm_deps" ;;
- esac
- mkdir -p "$subpkgdir"/usr/bin
- mv "$pkgdir"/usr/bin/$_pkg "$subpkgdir"/usr/bin
- return 0
-}
-
-_kubeadm() { _do_subpkg kubeadm; }
-_kubectl() { _do_subpkg kubectl; }
-
-_kubeadm_bash() { _do_bashcomp kubeadm; }
-_kubectl_bash() { _do_bashcomp kubectl; }
-
-_kubeadm_zsh() { _do_zshcomp kubeadm; }
-_kubectl_zsh() { _do_zshcomp kubectl; }
-
-_kubelet() {
- _do_subpkg kubelet
- install -d "$subpkgdir"/var/lib/kubelet
- install -d "$subpkgdir"/var/log/kubelet
-
- install -Dm644 "$srcdir"/kubelet.logrotated "$subpkgdir"/etc/logrotate.d/kubelet
-}
-
-_kubelet_openrc() {
- pkgdesc="Kubernetes - kubelet (OpenRC init scripts)"
- depends="openrc"
- install_if="openrc kubelet=$pkgver-r$pkgrel"
-
- install -Dm755 "$srcdir"/kubelet.initd "$subpkgdir"/etc/init.d/kubelet
- install -Dm644 "$srcdir"/kubelet.confd "$subpkgdir"/etc/conf.d/kubelet
-}
-
-_apiserver() {
- _do_subpkg kube-apiserver
-
- install -d "$subpkgdir"/var/log/kube-apiserver
- install -Dm644 "$srcdir"/kube-apiserver.logrotated "$subpkgdir"/etc/logrotate.d/kube-apiserver
-}
-
-_apiserver_openrc() {
- pkgdesc="Kubernetes - kube-apiserver (OpenRC init scripts)"
- depends="openrc"
- install_if="openrc kube-apiserver=$pkgver-r$pkgrel"
- install -Dm755 "$srcdir"/kube-apiserver.initd "$subpkgdir"/etc/init.d/kube-apiserver
- install -Dm644 "$srcdir"/kube-apiserver.confd "$subpkgdir"/etc/conf.d/kube-apiserver
-}
-
-_controllermanager() {
- _do_subpkg kube-controller-manager
-
- install -d "$subpkgdir"/var/log/kube-controller-manager
- install -Dm644 "$srcdir"/kube-controller-manager.logrotated "$subpkgdir"/etc/logrotate.d/kube-controller-manager
-}
-
-_controllermanager_openrc() {
- pkgdesc="Kubernetes - kube-controller-manager (OpenRC init scripts)"
- depends="openrc"
- install_if="openrc kube-controller-manager=$pkgver-r$pkgrel"
-
- install -Dm755 "$srcdir"/kube-controller-manager.initd "$subpkgdir"/etc/init.d/kube-controller-manager
- install -Dm644 "$srcdir"/kube-controller-manager.confd "$subpkgdir"/etc/conf.d/kube-controller-manager
-}
-
-_proxy() {
- _do_subpkg kube-proxy
- depends="$_kube_proxy_deps"
-
- install -d "$subpkgdir"/var/lib/kube-proxy
- install -d "$subpkgdir"/var/log/kube-proxy
- install -Dm644 "$srcdir"/kube-proxy.logrotated "$subpkgdir"/etc/logrotate.d/kube-proxy
-}
-
-_proxy_openrc() {
- pkgdesc="Kubernetes - kube-proxy (OpenRC init scripts)"
- depends="openrc"
- install_if="openrc kube-proxy=$pkgver-r$pkgrel"
- install -Dm755 "$srcdir"/kube-proxy.initd "$subpkgdir"/etc/init.d/kube-proxy
- install -Dm644 "$srcdir"/kube-proxy.confd "$subpkgdir"/etc/conf.d/kube-proxy
-}
-
-_scheduler() {
- _do_subpkg kube-scheduler
- install -d "$subpkgdir"/var/log/kube-scheduler
- install -Dm644 "$srcdir"/kube-scheduler.logrotated "$subpkgdir"/etc/logrotate.d/kube-scheduler
-}
-
-_scheduler_openrc() {
- pkgdesc="Kubernetes - kube-scheduler (OpenRC init scripts)"
- depends="openrc"
- install_if="openrc kube-scheduler=$pkgver-r$pkgrel"
- install -Dm755 "$srcdir"/kube-scheduler.initd "$subpkgdir"/etc/init.d/kube-scheduler
- install -Dm644 "$srcdir"/kube-scheduler.confd "$subpkgdir"/etc/conf.d/kube-scheduler
-}
-
-_do_bashcomp() {
- local _pkgname=$1
- pkgdesc="Bash completions for $_pkgname"
- install_if="$_pkgname=$pkgver-r$pkgrel bash-completion"
-
- mkdir -p "$subpkgdir"/usr/share/bash-completion/completions
- "$builddir"/_output/local/bin/linux/*/$_pkgname completion bash>"$subpkgdir"/usr/share/bash-completion/completions/$_pkgname
-}
-
-_do_zshcomp() {
- local _pkgname=$1
- pkgdesc="Zsh completions for $_pkgname"
- install_if="$_pkgname=$pkgver-r$pkgrel zsh"
-
- mkdir -p "$subpkgdir"/usr/share/zsh/site-functions
- "$builddir"/_output/local/bin/linux/*/$_pkgname completion zsh \
- > "$subpkgdir"/usr/share/zsh/site-functions/_$_pkgname
-}
-
-sha512sums="
-7a52d789164928d98e687356b191d59fc69e9a36bade05b5a9a93f02f675a859a17a01ec0f6c5472d05783312cb07ed3acfec82dc79ed9a777ee80721b46eef0 kubernetes-1.24.0.tar.gz
-c350bb0a63ada0cc3657fe07598101775243083aa1eabda898080b7b01b129e6fdd7ad1a61950cc039b73b081f38de3b856baedf5c075f39916be1547b11d184 make-e2e_node-run-over-distro-bins.patch
-56201491d2dfe3a487931cbf5c6e60af898701b9541a936d80e3823948fcfb98508e3d51f4aaa415ce971f7bd20a7b51f74f025c76b83f58d5a8de8ce0ab679b make-test-cmd-run-over-hyperkube-based-kubectl.patch
-e690daff2adb1013c92124f32e71f8ed9a18c611ae6ae5fcb5ce9674768dbf9d911a05d7e4028488cda886e63b82e8ac0606d14389a05844c1b5538a33dd09d1 kube-apiserver.initd
-302b2a7ec715967c0aa7d1c177d4e55b26e37ebba8d04dd37ecf627d20042fe91cd7e6192ff9d71422129b0ea54a9eec6046f505af550548bd450998924f37ee kube-apiserver.confd
-1a4bcd54dafaedc614e34bbadc2a1163f003b5925d47552fb2c47049c033c147e612171e263d9659d189fc2d95688a0b7153322d8dba97c083c079fdef6c400e kube-apiserver.logrotated
-90b9a9708e6d7c9084de17c8b28cbf6ff543400128d47f4d168883d8d3461b4dcbbb1796950a12ffc79b0f341b3881b48bba7651e3c232c1731a7e6dbddb62b8 kube-controller-manager.initd
-347dcf514abec4bc94036955d0fb2d32f141a39d1a70d7fb37e7bf8eb5792e5c29560d500a08aafcd3e19422d04466004b832bca7108eb2815610feb144688fe kube-controller-manager.confd
-e00cd9297d8ac75fcd504a2bfb80d5c5e145e7d475dd15edf9361dc28721afdc069c5b6e79438b75a774e972028841a17e8f7842dcfb3d7835c436a3e503704c kube-controller-manager.logrotated
-cd43587f69bd9fc6f1fdf0896d99df89377f677f4fa9b367dcaee1bf6f66469577dd79c60833ba0cd60ffdb68deedd0fb9bc00caa2b06854af4e6e56f1ffe365 kube-proxy.initd
-4c8c34ae8668bcfa5167c2d2af006fc46b461a5dafb3ec5b64cb8cdf2a830c22ddb5cf806c93b1404f60dabf91b4153724947fa2d2c494376f20e637eeed5018 kube-proxy.confd
-d7e022ee22da191bda7382f87cb293d9c9d115a3df0c2054bf918279eb866f99c6d5c21e4c98eae84bacf925f7793bbe3087e0bcf6732ccb33844d15e4386fb5 kube-proxy.logrotated
-561bef5633ba4b9021720624443d9c279a561e5fabea76e5d0fbee2e7ad8999029a2511a45895fbec8448026212a3c5b4c197b248a6afa7f8bd945f705524ea7 kube-scheduler.initd
-af88b382ab75657d0ff13c3f8f6d924cef9f2df7807a9a27daa63495981801bc4b607998f65c0758c11a7e070e43c24f7184ba7720711109c74b1c4d57919e34 kube-scheduler.confd
-3692da349dd6ed0f5acc09d7b95ac562ffecb103e2270bebdfe4a7808d48dada9d2debff262d85b11c47f9ca3f0c20000712d03629ed813ff08a3e02d69267e6 kube-scheduler.logrotated
-70fb5c95a02083025f38b099fa50d1a1e8893bc4141955031c4129c0d4aa20fde05c565c3f2e5b6ea31efb954673aeb8289f22eadcedeb7cb89e197898dfc65d kubelet.initd
-f79ea6dec632ca052f8cd061bf0c5f7f821c7013c048b4737752e1a41c677c020c1f9454ddabe7f9ba5d55c2a8a4718170e30049b7212a4a2dc91148a3ac7ebc kubelet.confd
-dda5fb57b55926fd2e9cebe6c1593da699afba0398c58dfa8b923c53a9ae6e63d765778577211460047f20863a6095e8e2ab3e7769e38c4f6a1c55c0e3485501 kubelet.logrotated
-"
diff --git a/testing/kubernetes/kube-apiserver.confd b/testing/kubernetes/kube-apiserver.confd
deleted file mode 100644
index db74d27f020..00000000000
--- a/testing/kubernetes/kube-apiserver.confd
+++ /dev/null
@@ -1,7 +0,0 @@
-###
-# kubernetes system config
-#
-# The following values are used to configure the kube-apiserver
-#
-
-command_args=""
diff --git a/testing/kubernetes/kube-apiserver.initd b/testing/kubernetes/kube-apiserver.initd
deleted file mode 100755
index df460dc0e01..00000000000
--- a/testing/kubernetes/kube-apiserver.initd
+++ /dev/null
@@ -1,21 +0,0 @@
-#!/sbin/openrc-run
-# Copyright 2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-supervisor=supervise-daemon
-description="Kubernetes API Server"
-
-if [ -e /var/lib/kubernetes/kube-apiserver-flags.env ]; then
- . /var/lib/kubernetes/kube-apiserver-flags.env;
-fi
-
-command="/usr/bin/kube-apiserver"
-command_args="${command_args} ${KUBE_APISERVER_ARGS}"
-: ${output_log:=/var/log/$RC_SVCNAME/$RC_SVCNAME.log}
-: ${error_log:=/var/log/$RC_SVCNAME/$RC_SVCNAME.log}
-
-
-depend() {
- after net
-}
-
diff --git a/testing/kubernetes/kube-apiserver.logrotated b/testing/kubernetes/kube-apiserver.logrotated
deleted file mode 100644
index 4ed84506231..00000000000
--- a/testing/kubernetes/kube-apiserver.logrotated
+++ /dev/null
@@ -1,7 +0,0 @@
-/var/log/kube-apiserver/*.log {
- missingok
- size 5M
- rotate 3
- compress
- copytruncate
-}
diff --git a/testing/kubernetes/kube-controller-manager.confd b/testing/kubernetes/kube-controller-manager.confd
deleted file mode 100644
index 5134f2b2df1..00000000000
--- a/testing/kubernetes/kube-controller-manager.confd
+++ /dev/null
@@ -1,7 +0,0 @@
-###
-# kubernetes system config
-#
-# The following values are used to configure the kube-controller-manager
-#
-
-command_args=""
diff --git a/testing/kubernetes/kube-controller-manager.initd b/testing/kubernetes/kube-controller-manager.initd
deleted file mode 100755
index 92563046485..00000000000
--- a/testing/kubernetes/kube-controller-manager.initd
+++ /dev/null
@@ -1,19 +0,0 @@
-#!/sbin/openrc-run
-# Copyright 2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-supervisor=supervise-daemon
-description="Kubernetes Controller Manager service"
-
-if [ -e /var/lib/kubernetes/kube-controller-manager-flags.env ]; then
- . /var/lib/kubernetes/kube-controller-manager-flags.env;
-fi
-
-command="/usr/bin/kube-controller-manager"
-command_args="${command_args} ${KUBE_CONTROLLER_MANAGER_ARGS}"
-: ${output_log:=/var/log/$RC_SVCNAME/$RC_SVCNAME.log}
-: ${error_log:=/var/log/$RC_SVCNAME/$RC_SVCNAME.log}
-
-depend() {
- after net
-}
diff --git a/testing/kubernetes/kube-controller-manager.logrotated b/testing/kubernetes/kube-controller-manager.logrotated
deleted file mode 100644
index 06efce23406..00000000000
--- a/testing/kubernetes/kube-controller-manager.logrotated
+++ /dev/null
@@ -1,7 +0,0 @@
-/var/log/kube-controller-manager/*.log {
- missingok
- size 5M
- rotate 3
- compress
- copytruncate
-}
diff --git a/testing/kubernetes/kube-proxy.confd b/testing/kubernetes/kube-proxy.confd
deleted file mode 100644
index 00f33f358bb..00000000000
--- a/testing/kubernetes/kube-proxy.confd
+++ /dev/null
@@ -1,4 +0,0 @@
-###
-# Kubernetes kube-proxy config
-#
-command_args=""
diff --git a/testing/kubernetes/kube-proxy.initd b/testing/kubernetes/kube-proxy.initd
deleted file mode 100755
index 3de243d243e..00000000000
--- a/testing/kubernetes/kube-proxy.initd
+++ /dev/null
@@ -1,20 +0,0 @@
-#!/sbin/openrc-run
-# Copyright 2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-supervisor=supervise-daemon
-description="Kubernetes Proxy service"
-
-if [ -e /var/lib/kubernetes/kube-proxy-flags.env ]; then
- . /var/lib/kubernetes/kube-proxy-flags.env;
-fi
-
-command="/usr/bin/kube-proxy"
-command_args="${command_args} ${KUBE_PROXY_ARGS}"
-: ${output_log:=/var/log/$RC_SVCNAME/$RC_SVCNAME.log}
-: ${error_log:=/var/log/$RC_SVCNAME/$RC_SVCNAME.log}
-
-depend() {
- after net
-}
-
diff --git a/testing/kubernetes/kube-proxy.logrotated b/testing/kubernetes/kube-proxy.logrotated
deleted file mode 100644
index e90a1015136..00000000000
--- a/testing/kubernetes/kube-proxy.logrotated
+++ /dev/null
@@ -1,8 +0,0 @@
-/var/log/kube-proxy/*.log {
- missingok
- size 5M
- rotate 3
- compress
- copytruncate
-}
-
diff --git a/testing/kubernetes/kube-scheduler.confd b/testing/kubernetes/kube-scheduler.confd
deleted file mode 100644
index 35da3d2228a..00000000000
--- a/testing/kubernetes/kube-scheduler.confd
+++ /dev/null
@@ -1,7 +0,0 @@
-###
-# kubernetes system config
-#
-# The following values are used to configure the kube-scheduler
-#
-
-command_args=""
diff --git a/testing/kubernetes/kube-scheduler.initd b/testing/kubernetes/kube-scheduler.initd
deleted file mode 100755
index bd165f2ed4c..00000000000
--- a/testing/kubernetes/kube-scheduler.initd
+++ /dev/null
@@ -1,19 +0,0 @@
-#!/sbin/openrc-run
-# Copyright 2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-supervisor=supervise-daemon
-description="Kubernetes Scheduler service"
-
-if [ -e /var/lib/kubernetes/kube-scheduler-flags.env ]; then
- . /var/lib/kubernetes/kube-scheduler-flags.env;
-fi
-
-command="/usr/bin/kube-scheduler"
-command_args="${command_args} ${KUBE_SCHEDULER_ARGS}"
-: ${output_log:=/var/log/$RC_SVCNAME/$RC_SVCNAME.log}
-: ${error_log:=/var/log/$RC_SVCNAME/$RC_SVCNAME.log}
-
-depend() {
- after net
-}
diff --git a/testing/kubernetes/kube-scheduler.logrotated b/testing/kubernetes/kube-scheduler.logrotated
deleted file mode 100644
index 6cce6c6f5be..00000000000
--- a/testing/kubernetes/kube-scheduler.logrotated
+++ /dev/null
@@ -1,7 +0,0 @@
-/var/log/kube-scheduler/*.log {
- missingok
- size 5M
- rotate 3
- compress
- copytruncate
-}
diff --git a/testing/kubernetes/kubelet.confd b/testing/kubernetes/kubelet.confd
deleted file mode 100644
index 3d40778b560..00000000000
--- a/testing/kubernetes/kubelet.confd
+++ /dev/null
@@ -1 +0,0 @@
-command_args="--bootstrap-kubeconfig=/etc/kubernetes/bootstrap-kubelet.conf --kubeconfig=/etc/kubernetes/kubelet.conf --cgroup-driver=cgroupfs --config=/var/lib/kubelet/config.yaml"
diff --git a/testing/kubernetes/kubelet.initd b/testing/kubernetes/kubelet.initd
deleted file mode 100755
index 7031f4cda5e..00000000000
--- a/testing/kubernetes/kubelet.initd
+++ /dev/null
@@ -1,21 +0,0 @@
-#!/sbin/openrc-run
-# Copyright 2016-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-supervisor=supervise-daemon
-description="Kubelet, a Kubernetes node agent"
-
-if [ -e /var/lib/kubelet/kubeadm-flags.env ]; then
- . /var/lib/kubelet/kubeadm-flags.env;
-fi
-
-command="/usr/bin/kubelet"
-command_args="${command_args} ${KUBELET_KUBEADM_ARGS}"
-pidfile="${KUBELET_PIDFILE:-/run/${RC_SVCNAME}.pid}"
-: ${output_log:=/var/log/$RC_SVCNAME/$RC_SVCNAME.log}
-: ${error_log:=/var/log/$RC_SVCNAME/$RC_SVCNAME.log}
-
-depend() {
- after net
- need cgroups
-}
diff --git a/testing/kubernetes/kubelet.logrotated b/testing/kubernetes/kubelet.logrotated
deleted file mode 100644
index f87767fe985..00000000000
--- a/testing/kubernetes/kubelet.logrotated
+++ /dev/null
@@ -1,7 +0,0 @@
-/var/log/kubelet/*.log {
- missingok
- size 5M
- rotate 3
- compress
- copytruncate
-}
diff --git a/testing/kubernetes/make-e2e_node-run-over-distro-bins.patch b/testing/kubernetes/make-e2e_node-run-over-distro-bins.patch
deleted file mode 100644
index 8fa737bfd2c..00000000000
--- a/testing/kubernetes/make-e2e_node-run-over-distro-bins.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/hack/make-rules/test-e2e-node.sh b/hack/make-rules/test-e2e-node.sh
-index fb0720a7..43a57c1f 100755
---- a/hack/make-rules/test-e2e-node.sh
-+++ b/hack/make-rules/test-e2e-node.sh
-@@ -240,6 +240,6 @@ else
- --alsologtostderr --v 4 --report-dir=${artifacts} --node-name $(hostname) \
- ${test_args}" --runtime-config="${runtime_config}" \
- --kubelet-config-file="${kubelet_config_file}" \
-- --build-dependencies=true 2>&1 | tee -i "${artifacts}/build-log.txt"
-+ --k8s-bin-dir "/usr/bin" --build-dependencies=true 2>&1 | tee -i "${artifacts}/build-log.txt"
- exit $?
- fi
diff --git a/testing/kubernetes/make-test-cmd-run-over-hyperkube-based-kubectl.patch b/testing/kubernetes/make-test-cmd-run-over-hyperkube-based-kubectl.patch
deleted file mode 100644
index 16f4407e223..00000000000
--- a/testing/kubernetes/make-test-cmd-run-over-hyperkube-based-kubectl.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-diff --git a/hack/lib/test.sh b/hack/lib/test.sh
-index 62a6765f..775d1d96 100644
---- a/hack/lib/test.sh
-+++ b/hack/lib/test.sh
-@@ -77,12 +77,12 @@ kube::test::object_assert() {
- local object=$2
- local request=$3
- local expected=$4
-- local args=${5:-}
-+ local get_args=${5:-}
-
- for j in $(seq 1 "${tries}"); do
- # shellcheck disable=SC2086
- # Disabling because "args" needs to allow for expansion here
-- res=$(eval kubectl get "${kube_flags[@]}" ${args} "${object}" -o go-template=\""${request}"\")
-+ res=$(eval kubectl ${args} get "${kube_flags[@]}" ${get_args} "${object}" -o go-template=\""${request}"\")
- if [[ "${res}" =~ ^$expected$ ]]; then
- echo -n "${green}"
- echo "$(kube::test::get_caller 3): Successful get ${object} ${request}: ${res}"
diff --git a/testing/kubesplit/APKBUILD b/testing/kubesplit/APKBUILD
index 6fc6b59bf3c..a2c7b4bc586 100644
--- a/testing/kubesplit/APKBUILD
+++ b/testing/kubesplit/APKBUILD
@@ -1,31 +1,40 @@
# Contributor: Galen Abell <galen@galenabell.com>
# Maintainer: Galen Abell <galen@galenabell.com>
pkgname=kubesplit
-pkgver=0.3.1
-pkgrel=2
+pkgver=0.3.3
+pkgrel=1
pkgdesc="Split multidoc yaml formatted kubernetes descriptors to a set of single resource files"
url="https://github.com/looztra/kubesplit"
arch="noarch"
license="Apache-2.0"
depends="python3 py3-ruamel.yaml yamkix"
-makedepends="py3-setuptools"
+makedepends="
+ py3-gpep517
+ py3-installer
+ py3-poetry-core
+ py3-poetry-dynamic-versioning
+ py3-wheel
+ "
checkdepends="py3-pytest py3-pytest-runner"
-source="$pkgname-$pkgver.tar.gz::https://github.com/looztra/kubesplit/archive/v$pkgver.tar.gz
- remove-hard-pytest-requirement.patch"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/looztra/kubesplit/archive/v$pkgver.tar.gz"
build() {
- python3 setup.py build
+ export POETRY_DYNAMIC_VERSIONING_BYPASS="$pkgver"
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- python3 setup.py test
+ pytest
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
-06d9d12cdaf1fc46e372508ff348dbec2dc829885e92b4710147df14e59326138114d48da3b42b6c27f3b5c128a5e7d8f5ce66b48ae810371528fc2e1b371132 kubesplit-0.3.1.tar.gz
-3bfd9e08cd27a249336341d0271943f4c38e1dadf0b031b456cca43af41055a17338c5a213b5eaa43e9c1a76981f9ba45651ccc2ebe85ba3b13ea9efd42471bf remove-hard-pytest-requirement.patch
+b2122caed952de1bc70bafd993f6d16d153f0511ab19481ab346c3399a2660eb493e46b36a7bb3703bfa7beae6c9822067316e2242f03faac7445eeb2649931c kubesplit-0.3.3.tar.gz
"
diff --git a/testing/kubesplit/remove-hard-pytest-requirement.patch b/testing/kubesplit/remove-hard-pytest-requirement.patch
deleted file mode 100644
index 1a06a181525..00000000000
--- a/testing/kubesplit/remove-hard-pytest-requirement.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-diff -urN kubesplit-0.3.1.orig/setup.py kubesplit-0.3.1/setup.py
---- kubesplit-0.3.1.orig/setup.py 2021-07-26 23:14:23.440970320 -0600
-+++ kubesplit-0.3.1/setup.py 2021-07-26 23:15:01.301173153 -0600
-@@ -13,9 +13,9 @@
-
- requirements = ["ruamel.yaml>=0.16.10", "yamkix>=0.9.0"]
-
--setup_requirements = ["pytest-runner"]
-+setup_requirements = []
-
--test_requirements = ["pytest"]
-+test_requirements = []
-
- setup(
- author="Christophe Furmaniak",
diff --git a/testing/kumactl/APKBUILD b/testing/kumactl/APKBUILD
new file mode 100644
index 00000000000..8dd8be59b98
--- /dev/null
+++ b/testing/kumactl/APKBUILD
@@ -0,0 +1,114 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=kumactl
+pkgver=2.6.1
+# Keep this in sync with the version of envoyproxy package
+_envoyver=1.28.1
+pkgrel=2
+pkgdesc="CLI for the multi-zone service mesh Kuma"
+url="https://kuma.io"
+# The only build targets for eBPF module
+# https://github.com/kumahq/kuma/tree/master/pkg/transparentproxy/ebpf/programs
+arch="x86_64 aarch64"
+license="Apache-2.0"
+makedepends="go"
+subpackages="
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
+ kuma-cp:_controlplane
+ kuma-cp-openrc:_controlplane_openrc
+ kuma-dp:_dataplane
+ kuma-dp-openrc:_dataplane_openrc
+ "
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/kumahq/kuma/archive/refs/tags/$pkgver.tar.gz
+ kuma-cp.initd
+ kuma-cp.confd
+ kuma-dp.initd
+ kuma-dp.confd
+ "
+builddir="$srcdir/kuma-$pkgver"
+
+# secfixes:
+# 2.1.0-r0:
+# - CVE-2020-8911
+# - CVE-2020-8912
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ local _goldflags="
+ -X github.com/kumahq/kuma/pkg/version.Envoy=$_envoyver
+ -X github.com/kumahq/kuma/pkg/version.version=$pkgver
+ -X github.com/kumahq/kuma/pkg/version.gitTag=v$pkgver
+ -X github.com/kumahq/kuma/pkg/version.gitCommit=AlpineLinux
+ -X github.com/kumahq/kuma/pkg/version.buildDate=$(date -u "+%Y-%m-%dT%H:%M:%SZ" ${SOURCE_DATE_EPOCH:+-d @$SOURCE_DATE_EPOCH})
+ "
+ for prog in kumactl kuma-cp kuma-dp; do
+ go build -v -o $prog -ldflags "$_goldflags" ./app/$prog
+ done
+
+ # Only generate shell completions for the client program
+ for shell in bash fish zsh; do
+ ./kumactl completion $shell > kumactl.$shell
+ done
+}
+
+check() {
+ # Only run tests against related modules
+ for prog in kumactl kuma-cp kuma-dp; do
+ # shellcheck disable=2046
+ go test \
+ -ldflags "-X github.com/kumahq/kuma/pkg/version.Envoy=$_envoyver" \
+ $(go list ./app/$prog/... ./pkg/config/app/$prog/...)
+ done
+}
+
+package() {
+ install -Dm755 kumactl kuma-cp kuma-dp -t "$pkgdir"/usr/bin/
+
+ install -Dm644 $pkgname.bash \
+ "$pkgdir"/usr/share/bash-completion/completions/$pkgname
+ install -Dm644 $pkgname.fish \
+ "$pkgdir"/usr/share/fish/vendor_completions.d/$pkgname.fish
+ install -Dm644 $pkgname.zsh \
+ "$pkgdir"/usr/share/zsh/site-functions/_$pkgname
+}
+
+_controlplane() {
+ pkgdesc="Control plane program for the multi-zone service mesh Kuma"
+ amove usr/bin/kuma-cp
+}
+
+_controlplane_openrc() {
+ pkgdesc="Control plane program for the multi-zone service mesh Kuma (OpenRC init scripts)"
+ install_if="openrc kuma-cp=$pkgver-r$pkgrel"
+
+ install -Dm755 "$srcdir"/kuma-cp.initd "$subpkgdir"/etc/init.d/kuma-cp
+ install -Dm644 "$srcdir"/kuma-cp.confd "$subpkgdir"/etc/conf.d/kuma-cp
+}
+
+_dataplane() {
+ pkgdesc="Data plane program for the multi-zone service mesh Kuma"
+ # TODO: package Envoy as it is the direct dependency of kuma-dp
+ # depends="envoyproxy"
+ amove usr/bin/kuma-dp
+}
+
+_dataplane_openrc() {
+ pkgdesc="Data plane program for the multi-zone service mesh Kuma (OpenRC init scripts)"
+ install_if="openrc kuma-dp=$pkgver-r$pkgrel"
+
+ install -Dm755 "$srcdir"/kuma-dp.initd "$subpkgdir"/etc/init.d/kuma-dp
+ install -Dm644 "$srcdir"/kuma-dp.confd "$subpkgdir"/etc/conf.d/kuma-dp
+}
+
+sha512sums="
+2b71ed354f4631723100682e79e7f30fd3e51f296c330142f04f5833fdb9ce1d2608ffb512551e9aef14d50b2a84e6e87210d707321e0c591d4f3e3ae9d91137 kumactl-2.6.1.tar.gz
+001e46b18ab4c1d0b131667d07567d0ec13fcadcc850265f97c4e82a0342285a5607191e0225e9fe8f683ce62551af833286b867e1df784f19935eca779ada79 kuma-cp.initd
+a3285adff02e44f2ae8e38e94fea91d0039d1edd4b42fbe598d60e1d46495fbf7b38cab3a60eb331590f791ad83701094f7f7e331bcc54921746430ed0abd749 kuma-cp.confd
+d9c3fc8c4f8bfe488db871551d632009733c65318a73c8ebca13d216a69de1f11f3a68d782b8c34b7d3258f65acc39bd8d7bb5b2d012d2b7b9f0e727797edf66 kuma-dp.initd
+10caa08a588af0b5889e964094cf7f1f4c5e201dd7cf8e162bda3c050aa64542aed6444b7246208b1c19c138e807c202ad5b7ee42bf187ca219511ab33894a8a kuma-dp.confd
+"
diff --git a/testing/kumactl/kuma-cp.confd b/testing/kumactl/kuma-cp.confd
new file mode 100644
index 00000000000..ecb73d5bc1b
--- /dev/null
+++ b/testing/kumactl/kuma-cp.confd
@@ -0,0 +1,16 @@
+# kuma-cp service configuration options
+
+# extra arguments to pass to kuma-cp
+command_args=""
+
+# user:group to run the process with
+command_user="kuma:kuma"
+
+# location of kuma-cp config file
+#configfile="/etc/kuma/kuma-cp.yaml"
+
+# where to store output logs for kuma-cp process
+logfile="/var/log/kuma/kuma-cp.log"
+
+# comment to use traditional service management
+supervisor=supervise-daemon
diff --git a/testing/kumactl/kuma-cp.initd b/testing/kumactl/kuma-cp.initd
new file mode 100644
index 00000000000..44e931135db
--- /dev/null
+++ b/testing/kumactl/kuma-cp.initd
@@ -0,0 +1,29 @@
+#!/sbin/openrc-run
+
+: ${command_user:="kuma:kuma"}
+
+name=kuma-cp
+description="Kuma control plane"
+command="/usr/bin/kuma-cp"
+command_args="
+ run
+ ${logfile:+"--log-output-path \"$logfile\""}
+ ${configfile:+"--config-file \"$configfile\""}
+ ${command_args:-}
+ "
+command_background="yes"
+pidfile="/run/$RC_SVCNAME.pid"
+
+KUMA_MODE="standalone"
+
+depend() {
+ need net
+ after firewall
+}
+
+start_pre() {
+ checkpath -d -o "$command_user" /var/lib/kuma /var/log/kuma
+ if [ -n "$logfile" ]; then
+ checkpath -f -m 640 -o "$command_user" "$logfile"
+ fi
+}
diff --git a/testing/kumactl/kuma-cp.pre-install b/testing/kumactl/kuma-cp.pre-install
new file mode 100644
index 00000000000..45d040046b1
--- /dev/null
+++ b/testing/kumactl/kuma-cp.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S kuma 2>/dev/null
+adduser -S -D -h /var/lib/kuma -s /sbin/nologin -G kuma -g kuma kuma 2>/dev/null
+
+exit 0
diff --git a/testing/kumactl/kuma-dp.confd b/testing/kumactl/kuma-dp.confd
new file mode 100644
index 00000000000..fc28138a8cf
--- /dev/null
+++ b/testing/kumactl/kuma-dp.confd
@@ -0,0 +1,16 @@
+# kuma-dp service configuration options
+
+# extra arguments to pass to kuma-dp
+command_args=""
+
+# user:group to run the process with
+command_user="kuma:kuma"
+
+# binary path to the Envoy executable
+envoypath="/usr/bin/envoy"
+
+# where to store output logs for kuma-dp process
+logfile="/var/log/kuma/kuma-dp.log"
+
+# comment to use traditional service management
+supervisor=supervise-daemon
diff --git a/testing/kumactl/kuma-dp.initd b/testing/kumactl/kuma-dp.initd
new file mode 100644
index 00000000000..5d218a14548
--- /dev/null
+++ b/testing/kumactl/kuma-dp.initd
@@ -0,0 +1,28 @@
+#!/sbin/openrc-run
+
+: ${command_user:="kuma:kuma"}
+: ${envoypath:="/usr/bin/envoy"}
+
+name=kuma-dp
+description="Kuma data plane proxy"
+command="/usr/bin/kuma-dp"
+command_args="
+ run
+ ${envoypath:+"--binary-path \"$envoypath\""}
+ ${logfile:+"--log-output-path \"$logfile\""}
+ ${command_args:-}
+ "
+command_background="yes"
+pidfile="/run/$RC_SVCNAME.pid"
+
+depend() {
+ need net
+ after firewall
+}
+
+start_pre() {
+ checkpath -d -o "$command_user" /var/lib/kuma /var/log/kuma
+ if [ -n "$logfile" ]; then
+ checkpath -f -m 640 -o "$command_user" "$logfile"
+ fi
+}
diff --git a/testing/kumactl/kuma-dp.pre-install b/testing/kumactl/kuma-dp.pre-install
new file mode 120000
index 00000000000..fe08a9890ee
--- /dev/null
+++ b/testing/kumactl/kuma-dp.pre-install
@@ -0,0 +1 @@
+kuma-cp.pre-install \ No newline at end of file
diff --git a/testing/kustomize/APKBUILD b/testing/kustomize/APKBUILD
deleted file mode 100644
index f61006e0d56..00000000000
--- a/testing/kustomize/APKBUILD
+++ /dev/null
@@ -1,50 +0,0 @@
-# Contributor: Michał Polański <michal@polanski.me>
-# Maintainer: Michał Polański <michal@polanski.me>
-pkgname=kustomize
-pkgver=4.5.5
-pkgrel=0
-pkgdesc="Template-free customization of Kubernetes YAML manifests"
-url="https://kustomize.io/"
-license="Apache-2.0"
-arch="all"
-makedepends="go"
-subpackages="
- $pkgname-bash-completion
- $pkgname-fish-completion
- $pkgname-zsh-completion
- "
-source="https://github.com/kubernetes-sigs/kustomize/archive/kustomize/v$pkgver/kustomize-$pkgver.tar.gz"
-builddir="$srcdir/kustomize-kustomize-v$pkgver/kustomize"
-
-export GOFLAGS="$GOFLAGS -trimpath -mod=readonly -modcacherw"
-export GOPATH="$srcdir"
-export CGO_ENABLED=0
-
-build() {
- local builddate="$(date -u "+%Y-%m-%dT%TZ" ${SOURCE_DATE_EPOCH:+-d @$SOURCE_DATE_EPOCH})"
-
- go build -ldflags="-s -w
- -X sigs.k8s.io/kustomize/api/provenance.version=$pkgver
- -X sigs.k8s.io/kustomize/api/provenance.buildDate=$builddate
- "
-
- ./kustomize completion bash > $pkgname.bash
- ./kustomize completion fish > $pkgname.fish
- ./kustomize completion zsh > $pkgname.zsh
-}
-
-check() {
- go test ./...
-}
-
-package() {
- install -Dm755 kustomize -t "$pkgdir"/usr/bin
-
- install -Dm644 $pkgname.bash "$pkgdir"/usr/share/bash-completion/completions/$pkgname
- install -Dm644 $pkgname.fish "$pkgdir"/usr/share/fish/completions/$pkgname.fish
- install -Dm644 $pkgname.zsh "$pkgdir"/usr/share/zsh/site-functions/_$pkgname
-}
-
-sha512sums="
-db2375977059eeb0479adf842c5ddd42db15216a872bab66e7a2cbd595e4d5d8ba32d66f50ad1ebc5a5b3db8b16c60ecf9ae44bd58f63dff1c03c6fb450554f0 kustomize-4.5.5.tar.gz
-"
diff --git a/testing/laminar/APKBUILD b/testing/laminar/APKBUILD
new file mode 100644
index 00000000000..6e96d5267e2
--- /dev/null
+++ b/testing/laminar/APKBUILD
@@ -0,0 +1,77 @@
+# Contributor: Michał Polański <michal@polanski.me>
+# Maintainer: Michał Polański <michal@polanski.me>
+pkgname=laminar
+pkgver=1.3
+pkgrel=3
+pkgdesc="Fast and lightweight Continuous Integration server"
+url="https://laminar.ohwg.net/"
+license="GPL-3.0-or-later"
+arch="all !armhf !armv7 !x86" # FTBFS on 32-bit arches
+arch="$arch !ppc64le !s390x" # tests fail
+install="$pkgname.pre-install"
+makedepends="clang cmake samurai boost-dev capnproto-dev rapidjson-dev sqlite-dev gtest-dev"
+subpackages="
+ $pkgname-doc
+ $pkgname-openrc
+ $pkgname-bash-completion
+ $pkgname-zsh-completion
+ "
+_vue_ver=2.6.12
+_ansi_up_ver=4.0.4
+_chart_ver=3.9.1
+source="https://github.com/ohwgiles/laminar/archive/$pkgver/laminar-$pkgver.tar.gz
+ vue-$_vue_ver.min.js::https://cdnjs.cloudflare.com/ajax/libs/vue/$_vue_ver/vue.min.js
+ ansi_up-$_ansi_up_ver.js::https://raw.githubusercontent.com/drudru/ansi_up/v$_ansi_up_ver/ansi_up.js
+ https://github.com/chartjs/Chart.js/releases/download/v$_chart_ver/chart.js-$_chart_ver.tgz
+ $pkgname.initd
+ no-network.patch
+ laminard-location.patch
+ libstdc++13.patch
+ musl.patch
+ "
+
+prepare() {
+ default_prepare
+
+ sed -i 's/^#LAMINAR/#export LAMINAR/g' etc/laminar.conf
+
+ install -Dm644 "$srcdir"/vue-$_vue_ver.min.js build/js/vue.min.js
+ install -Dm644 "$srcdir"/ansi_up-$_ansi_up_ver.js build/js/ansi_up.js
+ install -Dm644 "$srcdir"/package/dist/chart.min.js build/js/Chart.min.js
+}
+
+check() {
+ ./build/laminar-tests
+}
+
+build() {
+ CC=clang CXX=clang++ \
+ cmake -G Ninja -B build \
+ -DCMAKE_BUILD_TYPE=MinSizeRel \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DLAMINAR_VERSION=$pkgver \
+ -DSYSTEMD_UNITDIR=/no_systemd \
+ -DBUILD_TESTS=ON
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+
+ install -Dm755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
+
+ # we don't use systemd
+ rm -r "$pkgdir"/no_systemd
+}
+
+sha512sums="
+cdcf3544e641bf6250361e8b693de90300014d86ed1053e65a2670243b8901707c16c274ea63cebb613943fa81a9a9037778a00ad4a1296c3f7efb2888fe52a3 laminar-1.3.tar.gz
+04a6d247e71fcb12dd300b04d2768b45e1522e0f3fa636e07f11e1fe4fe4502f361f2eebe87b51e612e1a1b6a59f681c4efce4cb27a1add444763a6c430cb627 vue-2.6.12.min.js
+34c8cb74f687abc77ab84c4a504a04d9b334e9224ceffd35e6e3b31f0ff1c59ee3ddb239e5d731b6839de00485d47db34f338e2943affba04a80f6ecb43eafc3 ansi_up-4.0.4.js
+468d896cb9af83cde05c5e45e2c9e2690fa54db4afd7c13e4c87f670e7a21f522a7763c614eb5e9be0d4b9f319b02270144ef2c0f3a97d7141c114c6abb761eb chart.js-3.9.1.tgz
+c203f573cc44a76f3f66f170b7baa3d9784ceae7532f872985a071e1b06cd1d436ff3e45f39260cdb0333b9bb64312fcbff6eb3ac1230711636f57c92d4922ff laminar.initd
+f5845eaa845358a55b549632f85d8cdd29fe09592ef99ec5df0f22493e4a2b00161dca6266f4180f54a90aae7b5826e3751fe9ca5f23ff1aec0b5817b24bbf6a no-network.patch
+cef3436e6123c2fc71cab4cb565db625cf60e8311410fd08548f140c42745de1114e950b1459011f70bbdf45c220e63db2798b1cdeb01e82df09719208ef9620 laminard-location.patch
+9c0b11f0c141c716185992f49a6ebbc3e168a7ab91de8ac70be890ecf003e67976ee41952d76bfc668144d2520e1434a2b6c74ec63803191d6163716f38993d0 libstdc++13.patch
+6b532e15a9f308a7d1c51c2c346492c0e49710b813efb1cd17ca3520479ab700d844908119a44c8e3eca3fa0d3798d98bc0c572a0ea3e865c6694eda9a656b73 musl.patch
+"
diff --git a/testing/laminar/laminar.initd b/testing/laminar/laminar.initd
new file mode 100644
index 00000000000..c6e4d282655
--- /dev/null
+++ b/testing/laminar/laminar.initd
@@ -0,0 +1,23 @@
+#!/sbin/openrc-run
+
+name="Laminar CI"
+description="Fast and lightweight Continuous Integration server"
+
+: ${output_logger="logger -t laminard -p daemon.info >/dev/null 2>&1"}
+: ${error_logger="logger -t laminard -p daemon.err >/dev/null 2>&1"}
+
+command="/usr/bin/laminard"
+command_user="laminar:laminar"
+command_background="yes"
+directory="/var/lib/$RC_SVCNAME"
+pidfile="/run/$RC_SVCNAME.pid"
+
+depend() {
+ need localmount
+}
+
+start_pre() {
+ checkpath -d -o "$command_user" "$directory"
+
+ source /etc/laminar.conf
+}
diff --git a/testing/laminar/laminar.pre-install b/testing/laminar/laminar.pre-install
new file mode 100644
index 00000000000..5c2edc4555b
--- /dev/null
+++ b/testing/laminar/laminar.pre-install
@@ -0,0 +1,10 @@
+#!/bin/sh
+
+user=laminar
+group=laminar
+gecos="Laminar CI"
+
+addgroup -S $group 2>/dev/null
+adduser -S -D -H -h /var/lib/$user -s /sbin/nologin -G $group -g "$gecos" $user 2>/dev/null
+
+exit 0
diff --git a/testing/laminar/laminard-location.patch b/testing/laminar/laminard-location.patch
new file mode 100644
index 00000000000..6566ade866e
--- /dev/null
+++ b/testing/laminar/laminard-location.patch
@@ -0,0 +1,13 @@
+Install laminard under bin.
+
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -142,7 +142,7 @@ endif()
+ set(SYSTEMD_UNITDIR /lib/systemd/system CACHE PATH "Path to systemd unit files")
+ set(BASH_COMPLETIONS_DIR /usr/share/bash-completion/completions CACHE PATH "Path to bash completions directory")
+ set(ZSH_COMPLETIONS_DIR /usr/share/zsh/site-functions CACHE PATH "Path to zsh completions directory")
+-install(TARGETS laminard RUNTIME DESTINATION sbin)
++install(TARGETS laminard RUNTIME DESTINATION bin)
+ install(TARGETS laminarc RUNTIME DESTINATION bin)
+ install(FILES etc/laminar.conf DESTINATION /etc)
+ install(FILES etc/laminarc-completion.bash DESTINATION ${BASH_COMPLETIONS_DIR} RENAME laminarc)
diff --git a/testing/laminar/libstdc++13.patch b/testing/laminar/libstdc++13.patch
new file mode 100644
index 00000000000..4bf38456020
--- /dev/null
+++ b/testing/laminar/libstdc++13.patch
@@ -0,0 +1,12 @@
+diff --git a/src/database.cpp b/src/database.cpp
+index 8cf77a1..67965b2 100644
+--- a/src/database.cpp
++++ b/src/database.cpp
+@@ -18,6 +18,7 @@
+ ///
+ #include "database.h"
+
++#include <cstdint>
+ #include <sqlite3.h>
+ #include <string.h>
+ #include <math.h>
diff --git a/testing/laminar/musl.patch b/testing/laminar/musl.patch
new file mode 100644
index 00000000000..0763f2e9234
--- /dev/null
+++ b/testing/laminar/musl.patch
@@ -0,0 +1,12 @@
+--- a/test/eventsource.h
++++ b/test/eventsource.h
+@@ -24,6 +24,9 @@
+ #include <rapidjson/document.h>
+ #include <vector>
+
++// Definition needed for musl
++typedef unsigned long ulong;
++
+ class EventSource {
+ public:
+ EventSource(kj::AsyncIoContext& ctx, const char* httpConnectAddr, const char* path) :
diff --git a/testing/laminar/no-network.patch b/testing/laminar/no-network.patch
new file mode 100644
index 00000000000..78521bf4614
--- /dev/null
+++ b/testing/laminar/no-network.patch
@@ -0,0 +1,22 @@
+We install these frontend libraries in the `prepare` step.
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index ae86ce9..8a108d1 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -82,14 +82,7 @@ add_custom_command(OUTPUT index_html_size.h
+ COMMAND sh -c '( echo -n "\\#define INDEX_HTML_UNCOMPRESSED_SIZE " && wc -c < "${CMAKE_SOURCE_DIR}/src/resources/index.html" ) > index_html_size.h'
+ DEPENDS src/resources/index.html)
+
+-# Download 3rd-party frontend JS libs...
+-file(DOWNLOAD https://cdnjs.cloudflare.com/ajax/libs/vue/2.6.12/vue.min.js
+- js/vue.min.js EXPECTED_MD5 fb192338844efe86ec759a40152fcb8e)
+-file(DOWNLOAD https://raw.githubusercontent.com/drudru/ansi_up/v4.0.4/ansi_up.js
+- js/ansi_up.js EXPECTED_MD5 b31968e1a8fed0fa82305e978161f7f5)
+-file(DOWNLOAD https://cdnjs.cloudflare.com/ajax/libs/Chart.js/3.9.1/chart.min.js
+- js/Chart.min.js EXPECTED_MD5 7dd5ea7d2cf22a1c42b43c40093d2669)
+-# ...and compile them
++# Compile 3rd-party frontend JS libs...
+ generate_compressed_bins(${CMAKE_BINARY_DIR} js/vue.min.js
+ js/ansi_up.js js/Chart.min.js)
+ # (see resources.cpp where these are fetched)
diff --git a/testing/lapce/APKBUILD b/testing/lapce/APKBUILD
deleted file mode 100644
index b7e4841da7c..00000000000
--- a/testing/lapce/APKBUILD
+++ /dev/null
@@ -1,77 +0,0 @@
-# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
-#
-# TODO: Unbundle tree-sitter grammars (https://github.com/lapce/lapce/issues/486)
-#
-pkgname=lapce
-pkgver=0.1.0
-pkgrel=0
-pkgdesc="Lightning-fast and Powerful Code Editor written in Rust"
-url="https://lapce.dev"
-# ppc64le: ring crate fails to build
-# armhf, armv7, x86: wasmer-vm crate fails to build (unsupported platform)
-# risv64, s390x: blocked by rust/cargo
-arch="aarch64 x86_64" # limited by rust/cargo
-license="Apache-2.0"
-makedepends="
- cargo
- cmd:patchelf
- fontconfig-dev
- freetype-dev
- libgit2-dev
- libssh2-dev
- libxcb-dev
- libxfixes-dev
- libxkbcommon-dev
- openssl-dev
- python3
- vulkan-loader-dev
- wayland-dev
- "
-subpackages="$pkgname-proxy"
-source="https://github.com/lapce/lapce/archive/v$pkgver/lapce-$pkgver.tar.gz
- $pkgname.desktop
- "
-options="!check" # no tests provided
-
-export CARGO_PROFILE_RELEASE_CODEGEN_UNITS=1
-export CARGO_PROFILE_RELEASE_LTO="true"
-export CARGO_PROFILE_RELEASE_OPT_LEVEL=2
-
-export LIBSSH2_SYS_USE_PKG_CONFIG=1 # use system libssh2
-
-prepare() {
- default_prepare
-
- sed -i 's/"vendored-openssl"//' ./*/Cargo.toml
-
- # --locked is intentionally omitted to update Cargo.lock after the update above.
- cargo fetch
-}
-
-build() {
- cargo build --release --frozen
-
- # Add missing vulkan dependency.
- patchelf --add-needed libvulkan.so.1 target/release/lapce
-}
-
-package() {
- install -D -m755 target/release/lapce -t "$pkgdir"/usr/bin/
- install -D -m755 target/release/lapce-proxy -t "$pkgdir"/usr/bin/
-
- install -D -m644 "$srcdir"/$pkgname.desktop -t "$pkgdir"/usr/share/applications/
- install -D -m644 extra/images/logo.svg \
- "$pkgdir"/usr/share/icons/hicolor/scalable/apps/$pkgname.svg
-}
-
-proxy() {
- # TODO: add pkgdesc
-
- amove usr/bin/lapce-proxy
-}
-
-sha512sums="
-7c5b708941f7b01527a7e309b93fab6d0e7582f921c97c01ed57a787e200ed9d4f40e6176a9af9ccf1a6de05bca99db5f7ee658630960324e86ec2c3d08876bc lapce-0.1.0.tar.gz
-4daa808a02a3570d322d0d5a5f8a82323400cf20c4e167f9e1388f9f51e933965ce9076a0c7f1849b7888a732d30b1719eceabc6a187059484d0ae2496cb2870 lapce.desktop
-"
diff --git a/testing/lapce/lapce.desktop b/testing/lapce/lapce.desktop
deleted file mode 100644
index 7c237784910..00000000000
--- a/testing/lapce/lapce.desktop
+++ /dev/null
@@ -1,12 +0,0 @@
-[Desktop Entry]
-Name=Lapce
-GenericName=Text Editor
-Comment=Lightning-fast and Powerful Code Editor
-TryExec=lapce
-Exec=lapce %F
-Type=Application
-Keywords=Text;editor;
-Icon=lapce
-Categories=TextEditor;Development;IDE;
-StartupNotify=false
-MimeType=text/english;text/plain;text/x-makefile;text/x-c++hdr;text/x-c++src;text/x-chdr;text/x-csrc;text/x-java;text/x-moc;text/x-pascal;text/x-tcl;text/x-tex;application/x-shellscript;text/x-c;text/x-c++;
diff --git a/testing/laze/APKBUILD b/testing/laze/APKBUILD
new file mode 100644
index 00000000000..a6700e78a65
--- /dev/null
+++ b/testing/laze/APKBUILD
@@ -0,0 +1,60 @@
+# Contributor: Kaspar Schleiser <kaspar@schleiser.de>
+# Maintainer: Kaspar Schleiser <kaspar@schleiser.de>
+pkgname=laze
+pkgver=0.1.21
+pkgrel=0
+pkgdesc="laze is a build system based on Ninja, aiming to be the next goto-alternative to make"
+url="https://laze-build.org"
+arch="all"
+license="Apache-2.0"
+depends="ninja"
+makedepends="cargo cargo-auditable"
+checkdepends="xz"
+subpackages="$pkgname-doc
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
+ "
+source="https://github.com/kaspar030/laze/archive/$pkgver/laze-$pkgver.tar.gz"
+
+prepare() {
+ default_prepare
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm755 "target/release/laze" "$pkgdir/usr/bin/laze"
+
+ # create man pages
+ mkdir -p tmp/man tmp/completions
+ target/release/laze manpage tmp/man
+
+ install -Dm644 "tmp/man/laze.1" "$pkgdir/usr/share/man/man1/laze.1"
+ install -Dm644 "tmp/man/laze-build.1" "$pkgdir/usr/share/man/man1/laze-build.1"
+ install -Dm644 "tmp/man/laze-clean.1" "$pkgdir/usr/share/man/man1/laze-clean.1"
+
+ # create completions
+ for shell in bash zsh fish; do
+ target/release/laze -Ctmp/completions completion --generate $shell \
+ > tmp/completions/$shell
+ done
+
+ install -Dm644 "tmp/completions/bash" \
+ "$pkgdir/usr/share/bash-completion/completions/laze"
+ install -Dm644 "tmp/completions/fish" \
+ "$pkgdir/usr/share/fish/vendor_completions.d/laze.fish"
+ install -Dm644 "tmp/completions/zsh" \
+ "$pkgdir/usr/share/zsh/site-functions/_laze"
+}
+
+sha512sums="
+16026189437f59517e85e64843516d6cdde76f826901c09b6c990a4ae48bf85bd6eb24da1b867b1aa662c74e0ef3e55b8608ee6406abef02f980c7ad3367858e laze-0.1.21.tar.gz
+"
diff --git a/testing/lazydocker/APKBUILD b/testing/lazydocker/APKBUILD
deleted file mode 100644
index 85b9436dbfc..00000000000
--- a/testing/lazydocker/APKBUILD
+++ /dev/null
@@ -1,27 +0,0 @@
-# Contributor: Thomas Deutsch <thomas@tuxpeople.org>
-# Maintainer: Thomas Deutsch <thomas@tuxpeople.org>
-pkgname=lazydocker
-pkgver=0.12
-pkgrel=5
-pkgdesc="Simple terminal UI for both docker and docker-compose"
-url="https://github.com/jesseduffield/lazydocker"
-arch="all"
-license="MIT"
-makedepends="go"
-options="chmod-clean !check" # checks failing, reported upstream: https://github.com/jesseduffield/lazydocker/issues/236
-source="$pkgname-$pkgver.tar.gz::https://github.com/jesseduffield/lazydocker/archive/v$pkgver.tar.gz"
-
-build() {
- GOPATH="$srcdir" go build
-}
-
-check() {
- GOPATH="$srcdir" go test ./...
-}
-
-package() {
- install -Dm755 $pkgname "$pkgdir"/usr/bin/lazydocker
-}
-
-
-sha512sums="59198b2f8e7c7c0686d4b1ddef3f585411e672055ede5f6a279c28cd8d94ba619078658d5b8f6c43915667f8180feb7d9407ea1003b3bc3b642e1502a165c78e lazydocker-0.12.tar.gz"
diff --git a/testing/lazymc/APKBUILD b/testing/lazymc/APKBUILD
new file mode 100644
index 00000000000..5542c684bc2
--- /dev/null
+++ b/testing/lazymc/APKBUILD
@@ -0,0 +1,45 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=lazymc
+pkgver=0.2.11
+pkgrel=0
+pkgdesc="Put your Minecraft server to rest when idle"
+url="https://github.com/timvisee/lazymc"
+arch="all"
+license="GPL-3.0-only"
+makedepends="
+ cargo
+ cargo-auditable
+"
+install="$pkgname.pre-install"
+subpackages="$pkgname-openrc"
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/timvisee/lazymc/archive/refs/tags/v$pkgver.tar.gz
+ lazymc.initd
+ lazymc.confd
+"
+options="net !check" # no tests
+
+prepare() {
+ default_prepare
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+package() {
+ install -Dm 755 target/release/lazymc "$pkgdir"/usr/bin/lazymc
+
+ install -Dm 755 "$srcdir"/lazymc.initd "$pkgdir"/etc/init.d/lazymc
+ install -Dm 644 "$srcdir"/lazymc.confd "$pkgdir"/etc/conf.d/lazymc
+
+ "$pkgdir"/usr/bin/lazymc config generate -c "$pkgdir"/etc/lazymc.toml
+}
+
+sha512sums="
+64750b0bc5c4a4f08bf8aa19683b8415fdc62c0215208c4503e6d338c976decccf391aa0b8913676082d07a0e6ec7d45e05aef17e0765698679ca6eb2257a643 lazymc-0.2.11.tar.gz
+29479bc55dbea006944b974ec507c907de43ab33dd7be27d41c42d157824ecc704b4ca4bb20a46dd889d92d5b715af4977ec9e92f2a2a8632ca3af942c873d7d lazymc.initd
+9eb8e36476c471c2ae42e5ca985746f0f020437cdc4e38c25eecde70605d3ee48db539370be991258c0b3e25a0946ce9245754c26d64d7ac2e1994ee573a5502 lazymc.confd
+"
diff --git a/testing/lazymc/lazymc.confd b/testing/lazymc/lazymc.confd
new file mode 100644
index 00000000000..e421bb5e292
--- /dev/null
+++ b/testing/lazymc/lazymc.confd
@@ -0,0 +1,3 @@
+command_user=lazymc:lazymc
+logdir=/var/log/lazymc
+_conf_path=/etc/lazymc.toml
diff --git a/testing/lazymc/lazymc.initd b/testing/lazymc/lazymc.initd
new file mode 100644
index 00000000000..adf427236b7
--- /dev/null
+++ b/testing/lazymc/lazymc.initd
@@ -0,0 +1,27 @@
+#!/sbin/openrc-run
+supervisor="supervise-daemon"
+
+# fallback values for /etc/conf.d/lazymc
+: ${command_user:=lazymc:lazymc}
+: ${logdir:=/var/log/lazymc}
+: ${_conf_path:=/etc/lazymc.toml}
+
+name=lazymc
+description="Put your Minecraft server to rest when idle"
+command="/usr/bin/lazymc"
+command_args="-c $_conf_path"
+command_background=true
+
+pidfile="/run/$name.pid"
+output_log="$logdir/output.log"
+error_log="$logdir/error.log"
+
+depend() {
+ need net
+ use logger
+}
+
+start_pre() {
+ checkpath -d -o "$command_user" "$logdir"
+ checkpath -f -o "$command_user" "$output_log" "$error_log"
+}
diff --git a/testing/lazymc/lazymc.pre-install b/testing/lazymc/lazymc.pre-install
new file mode 100644
index 00000000000..426deff112c
--- /dev/null
+++ b/testing/lazymc/lazymc.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S lazymc #2>/dev/null
+adduser -S -D -s /sbin/nologin -G lazymc -g lazymc lazymc #2>/dev/null
+
+exit 0
diff --git a/testing/lcalc/APKBUILD b/testing/lcalc/APKBUILD
new file mode 100644
index 00000000000..4843e6ae99c
--- /dev/null
+++ b/testing/lcalc/APKBUILD
@@ -0,0 +1,39 @@
+# Contributor: Eloi Torrents <eloitor@disroot.org>
+# Maintainer: Eloi Torrents <eloitor@disroot.org>
+pkgname=lcalc
+pkgver=2.0.5
+pkgrel=1
+pkgdesc="Michael Rubinstein's L-function calculator"
+url="https://gitlab.com/sagemath/lcalc"
+# blocked by pari
+arch="all !armhf !armv7 !x86"
+license="GPL-2.0-or-later"
+makedepends="gengetopt gmp-dev pari-dev"
+subpackages="$pkgname-dev $pkgname-libs $pkgname-doc"
+source="https://gitlab.com/sagemath/lcalc/uploads/25f029f3c02fcb6c3174972e0ac0e192/lcalc-$pkgver.tar.xz"
+
+build() {
+ CFLAGS="$CFLAGS -O2 -flto=auto" \
+ CXXFLAGS="$CXXFLAGS -O2 -flto=auto" \
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var \
+ --with-pari
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+d3b7fa25dd3c2a8f88671076dfb5ab5e933be7feff24bbd160c92a476953f5553f9fb58f72c36b9c668929385084918fc3396e1a0bcc55de12ea8cb647c53929 lcalc-2.0.5.tar.xz
+"
diff --git a/testing/lcov/APKBUILD b/testing/lcov/APKBUILD
index b9f417be5fe..b0d15b007ae 100644
--- a/testing/lcov/APKBUILD
+++ b/testing/lcov/APKBUILD
@@ -1,13 +1,23 @@
# Contributor: Shiva Velmurugan <shiv@shiv.me>
# Maintainer: Shiva Velmurugan <shiv@shiv.me>
pkgname=lcov
-pkgver=1.15
-pkgrel=0
+pkgver=2.0
+pkgrel=2
pkgdesc="LCOV is an extension to GCOV. It provides a graphical frontend for converage information"
url="https://github.com/linux-test-project/lcov"
arch="noarch"
license="GPL-2.0-or-later"
-depends="bash perl"
+depends="
+ bash
+ perl
+ perl-capture-tiny
+ perl-datetime
+ perl-digest-md5
+ perl-json-xs
+ perl-memory-process
+ perl-time-hires
+ perl-timedate
+ "
subpackages="$pkgname-doc"
source="https://github.com/linux-test-project/lcov/releases/download/v$pkgver/lcov-$pkgver.tar.gz"
@@ -15,4 +25,6 @@ package() {
make DESTDIR="$pkgdir" PREFIX="/usr" install
}
-sha512sums="dda0eadbd0ea2093f17cba039309ccda3dbcb7266d083b46bda61e02cd7f049d66de49be1e005157c3e5af910d2703ffbc9cfe7f1242bd67b9787f8508e4d052 lcov-1.15.tar.gz"
+sha512sums="
+b19b6debc93c0de0e7e5b2aaffa6c74d20a1313ea4d20d8731c6a5ea7f4cc40933316d28ef791c91fdc12ca77c9449a388405f3dc0793588e366b72f596ab49b lcov-2.0.tar.gz
+"
diff --git a/testing/ldapdomaindump/APKBUILD b/testing/ldapdomaindump/APKBUILD
new file mode 100644
index 00000000000..36577453961
--- /dev/null
+++ b/testing/ldapdomaindump/APKBUILD
@@ -0,0 +1,37 @@
+# Contributor: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
+# Maintainer: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
+pkgname=ldapdomaindump
+pkgver=0.9.4
+pkgrel=1
+pkgdesc="Active Directory information dumper via LDAP"
+url="https://github.com/dirkjanm/ldapdomaindump"
+arch="noarch"
+license="MIT"
+depends="
+ py3-dnspython
+ py3-future
+ py3-ldap3
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/dirkjanm/ldapdomaindump/archive/refs/tags/v$pkgver.tar.gz"
+options="!check" # no tests provided
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+0da9ab936e391d08829ae12ba893b7a2dd088e1fe37cbce612bd4772a35c3dbcae836711f80a3abffb1e5d786af30b093e45534acab84c7c0ae36064f6980407 ldapdomaindump-0.9.4.tar.gz
+"
diff --git a/testing/ledmon/10-musl-build.patch b/testing/ledmon/10-musl-build.patch
new file mode 100644
index 00000000000..030271b8b87
--- /dev/null
+++ b/testing/ledmon/10-musl-build.patch
@@ -0,0 +1,218 @@
+--- a/src/ledctl.c
++++ b/src/ledctl.c
+@@ -214,15 +214,11 @@
+ *
+ * This is internal function of ledctl utility. The function cleans up a memory
+ * allocated for the application and closes all opened handles. This function is
+- * design to be registered as on_exit() handler function.
++ * design to be registered as atexit() handler function.
+ *
+- * @param[in] status exit status of the ledctl application.
+- * @param[in] ignored function ignores this argument.
+- *
+ * @return The function does not return a value.
+ */
+-static void _ledctl_fini(int status __attribute__ ((unused)),
+- void *ignore __attribute__ ((unused)))
++static void _ledctl_fini(void)
+ {
+ sysfs_reset();
+ list_erase(&ibpi_list);
+@@ -948,7 +944,7 @@
+ * @brief Application's entry point.
+ *
+ * This is the entry point of ledctl utility. This function does all the work.
+- * It allocates and initializes all used structures. Registers on_exit()
++ * It allocates and initializes all used structures. Registers atexit()
+ * handlers.
+ * Then the function parses command line options and commands given and scans
+ * sysfs tree for controllers, block devices and RAID devices. If no error is
+@@ -983,7 +979,7 @@
+ status = _init_ledctl_conf();
+ if (status != LEDCTL_STATUS_SUCCESS)
+ return status;
+- if (on_exit(_ledctl_fini, progname))
++ if (atexit(_ledctl_fini))
+ exit(LEDCTL_STATUS_ONEXIT_ERROR);
+ slot_request_init(&slot_req);
+ status = _cmdline_parse(argc, argv, &slot_req);
+--- a/src/ledmon.c
++++ b/src/ledmon.c
+@@ -58,6 +58,19 @@
+ #include "vmdssd.h"
+
+ /**
++ * This macro is the alternative way to get exit status
++ * in atexit() callback function
++ */
++#define EXIT(x) ((exit)(exit_status = (x)))
++
++static int exit_status;
++
++/**
++ * Flag to print exit status
++ */
++static int ignore;
++
++/**
+ * @brief List of active block devices.
+ *
+ * This list holds all block devices attached to supported storage controllers.
+@@ -151,20 +164,16 @@
+ *
+ * This is internal function of monitor service. It is used to finalize daemon
+ * process i.e. free allocated memory, unlock and remove pidfile and close log
+- * file and syslog. The function is registered as on_exit() handler.
++ * file and syslog. The function is registered as atexit() handler.
+ *
+- * @param[in] status The function ignores this parameter.
+- * @param[in] program_name The name of the binary file. This argument
+- * is passed via on_exit() function.
+- *
+ * @return The function does not return a value.
+ */
+-static void _ledmon_fini(int __attribute__ ((unused)) status, void *program_name)
++static void _ledmon_fini(void)
+ {
+ sysfs_reset();
+ list_erase(&ledmon_block_list);
+ log_close();
+- pidfile_remove(program_name);
++ pidfile_remove(progname);
+ }
+
+ typedef enum {
+@@ -207,30 +216,25 @@
+ *
+ * This is internal function of monitor service. It is used to report an exit
+ * status of the monitor service. The message is logged in to syslog and to log
+- * file. The function is registered as on_exit() hander.
++ * file. The function is registered as atexit() hander.
+ *
+- * @param[in] status Status given in the last call to exit()
+- * function.
+- * @param[in] arg Argument passed to on_exit().
+- *
+ * @return The function does not return a value.
+ */
+-static void _ledmon_status(int status, void *arg)
++static void _ledmon_status(void)
+ {
+ int log_level;
+ char message[4096];
+- int ignore = *((int *)arg);
+
+ if (ignore)
+ return;
+
+- if (status == LEDMON_STATUS_SUCCESS)
++ if (exit_status == LEDMON_STATUS_SUCCESS)
+ log_level = LOG_LEVEL_INFO;
+ else
+ log_level = LOG_LEVEL_ERROR;
+
+ snprintf(message, sizeof(message), "exit status is %s.",
+- ledmon_strstatus(status));
++ ledmon_strstatus(exit_status));
+
+ if (get_log_fd() >= 0)
+ _log(log_level, message);
+@@ -364,10 +368,10 @@
+ break;
+ case 'h':
+ _ledmon_help();
+- exit(EXIT_SUCCESS);
++ EXIT(EXIT_SUCCESS);
+ case 'v':
+ _ledmon_version();
+- exit(EXIT_SUCCESS);
++ EXIT(EXIT_SUCCESS);
+ case ':':
+ case '?':
+ return LEDMON_STATUS_CMDLINE_ERROR;
+@@ -890,14 +894,13 @@
+ int main(int argc, char *argv[])
+ {
+ ledmon_status_code_t status = LEDMON_STATUS_SUCCESS;
+- static int ignore;
+
+ setup_options(&longopt, &shortopt, possible_params,
+ possible_params_size);
+ set_invocation_name(argv[0]);
+ openlog(progname, LOG_PID | LOG_PERROR, LOG_DAEMON);
+
+- if (on_exit(_ledmon_status, &ignore))
++ if (atexit(_ledmon_status))
+ return LEDMON_STATUS_ONEXIT_ERROR;
+
+ if (_cmdline_parse_non_daemonise(argc, argv) != LEDMON_STATUS_SUCCESS)
+@@ -935,18 +938,18 @@
+
+ if (pid < 0) {
+ log_debug("main(): fork() failed (errno=%d).", errno);
+- exit(EXIT_FAILURE);
++ EXIT(EXIT_FAILURE);
+ }
+ if (pid > 0) {
+ ignore = 1; /* parent: don't print exit status */
+- exit(EXIT_SUCCESS);
++ EXIT(EXIT_SUCCESS);
+ }
+
+ pid_t sid = setsid();
+
+ if (sid < 0) {
+ log_debug("main(): setsid() failed (errno=%d).", errno);
+- exit(EXIT_FAILURE);
++ EXIT(EXIT_FAILURE);
+ }
+
+ _close_parent_fds();
+@@ -960,16 +963,16 @@
+
+ if (chdir("/") < 0) {
+ log_debug("main(): chdir() failed (errno=%d).", errno);
+- exit(EXIT_FAILURE);
++ EXIT(EXIT_FAILURE);
+ }
+ if (pidfile_create(progname)) {
+ log_debug("main(): pidfile_creat() failed.");
+- exit(EXIT_FAILURE);
++ EXIT(EXIT_FAILURE);
+ }
+ _ledmon_setup_signals();
+
+- if (on_exit(_ledmon_fini, progname))
+- exit(LEDMON_STATUS_ONEXIT_ERROR);
++ if (atexit(_ledmon_fini))
++ EXIT(LEDMON_STATUS_ONEXIT_ERROR);
+ list_init(&ledmon_block_list, (item_free_t)block_device_fini);
+ sysfs_init();
+ log_info("monitor service has been started...");
+@@ -987,5 +990,5 @@
+ }
+ ledmon_remove_shared_conf();
+ stop_udev_monitor();
+- exit(EXIT_SUCCESS);
++ EXIT(EXIT_SUCCESS);
+ }
+--- a/src/utils.h
++++ b/src/utils.h
+@@ -22,6 +22,7 @@
+ #define _UTILS_H_INCLUDED_
+
+ #include <getopt.h>
++#include <sys/types.h>
+ #include "config_file.h"
+ #include "stdlib.h"
+ #include "stdint.h"
+--- a/src/utils.c
++++ b/src/utils.c
+@@ -33,7 +33,6 @@
+ #include <string.h>
+ #include <sys/stat.h>
+ #include <sys/time.h>
+-#include <sys/types.h>
+ #include <time.h>
+ #include <unistd.h>
+ #include <assert.h>
diff --git a/testing/ledmon/APKBUILD b/testing/ledmon/APKBUILD
new file mode 100644
index 00000000000..578d0de0beb
--- /dev/null
+++ b/testing/ledmon/APKBUILD
@@ -0,0 +1,42 @@
+# Contributor: Steve McMaster <code@mcmaster.io>
+# Maintainer: Steve McMaster <code@mcmaster.io>
+pkgname=ledmon
+pkgver=0.97
+pkgrel=1
+pkgdesc="Enclosure LED Utilities"
+url="https://github.com/intel/ledmon"
+arch="all"
+# Provided tests expect to run on a host with supported hardware
+options="!check"
+license="GPL-2.0-only"
+makedepends="automake autoconf eudev-dev linux-headers pciutils-dev sg3_utils-dev"
+source="$pkgname-$pkgver.tar.gz::https://github.com/intel/ledmon/archive/v$pkgver.tar.gz
+ 10-musl-build.patch
+ "
+subpackages="$pkgname-doc"
+
+prepare() {
+ default_prepare
+ autoreconf -vif
+}
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var \
+ --disable-static
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+7a8f6c6f7cbaa10ae17ee60c2dfbce4100524b9b85fdc01a139f1fd2a33779348845df29b93f6c2cbabed4fa92a2a17a80636c2658e13507743bd2242fc08914 ledmon-0.97.tar.gz
+0ad5de757b34fb9f7264091cfdeb3ebd6cb66c1dbe31ebf423573027b065376b075f824eaaf20d79295605e5f671cca0ab17a0da4afeb131dd91a38a6841f098 10-musl-build.patch
+"
diff --git a/testing/legume/APKBUILD b/testing/legume/APKBUILD
new file mode 100644
index 00000000000..5e6d4bec179
--- /dev/null
+++ b/testing/legume/APKBUILD
@@ -0,0 +1,34 @@
+# Contributor: Sean E. Russell <ser@ser1.net>
+# Maintainer: Sean E. Russell <ser@ser1.net>
+pkgname=legume
+pkgver=1.4.2
+pkgrel=1
+pkgdesc="A distributed issue tracker base on developer code comments such as TODO and FIXME."
+url="https://sr.ht/~ser/legume"
+arch="all"
+license="MIT"
+makedepends="go"
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://hg.sr.ht/~ser/legume/archive/v$pkgver.tar.gz"
+builddir="$srcdir/$pkgname-v$pkgver"
+
+build() {
+ go build -ldflags "-X main.Version=v$pkgver" -v -o leg ./cmd/leg
+}
+
+check() {
+ [ "$(./leg -V)" = "legume v$pkgver" ]
+
+ go test ./cmd/leg ./fs ./parse ./stream
+}
+
+package() {
+ install -Dm755 leg "$pkgdir"/usr/bin/leg
+ install -Dm644 leg.1 "$pkgdir"/usr/share/man/man1/leg.1
+ install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/"$pkgname"/LICENSE
+ install -Dm644 README.md "$pkgdir"/usr/share/doc/"$pkgname"/README.md
+}
+
+sha512sums="
+460cab3111243ea1b6eb5c42bdb5d32488fb60dee7a13e8bc2b6007ff3b1718062c53cce4810b897f1c32e51bd807241c81741ec10e5ae1faa530faf1346435b legume-1.4.2.tar.gz
+"
diff --git a/testing/lemmy-ui/APKBUILD b/testing/lemmy-ui/APKBUILD
new file mode 100644
index 00000000000..9ff575697b9
--- /dev/null
+++ b/testing/lemmy-ui/APKBUILD
@@ -0,0 +1,97 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=lemmy-ui
+pkgver=0.19.3
+# this needs to be synced with lemmy
+_translations_commit=c3e61706e2ff7977db83e964e3010f72cad5e408
+pkgrel=0
+pkgdesc="Link aggregator and forum for the Fediverse - Official webapp"
+url="https://join-lemmy.org/"
+# ppc64le: vips not available
+# riscv64: RuntimeError: memory access out of bounds
+# x86: Zone Allocation failed - process out of memory
+# armhf, armv7, s390x: follow lemmy aport
+arch="aarch64 x86_64"
+license="AGPL-3.0-only"
+depends="nodejs"
+makedepends="npm vips-dev yarn"
+checkdepends="cmd:start-stop-daemon curl"
+install="$pkgname.pre-install"
+pkgusers="lemmy-ui"
+pkggroups="lemmy-ui"
+subpackages="$pkgname-openrc"
+source="https://github.com/LemmyNet/lemmy-ui/archive/$pkgver/lemmy-ui-$pkgver.tar.gz
+ https://github.com/LemmyNet/lemmy-translations/archive/$_translations_commit/lemmy-translations-$pkgver.tar.gz
+ lemmy-ui.confd
+ lemmy-ui.initd
+ "
+
+# Workaround for bad gyp usage causing 'stat64' errors
+export CFLAGS="$CFLAGS -D_LARGEFILE64_SOURCE -U_FORTIFY_SOURCE"
+export CPPFLAGS="$CPPFLAGS -D_LARGEFILE64_SOURCE -U_FORTIFY_SOURCE"
+export CXXFLAGS="$CXXFLAGS -std=c++17 -D_LARGEFILE64_SOURCE -U_FORTIFY_SOURCE"
+
+prepare() {
+ default_prepare
+
+ rmdir -v lemmy-translations
+ ln -sv "$srcdir/lemmy-translations-$_translations_commit" \
+ lemmy-translations
+
+ sed -i "s/unknown version/$pkgver/" src/shared/version.ts
+ yarn install --frozen-lockfile --production
+}
+
+build() {
+ export GIT_DIR="$builddir"
+ NODE_ENV=production yarn build:prod
+ unset GIT_DIR
+}
+
+check() {
+ start-stop-daemon -Sbmp "$startdir"/test.pid -w 5000 \
+ -e 'NODE_ENV=production' -x node dist/js/server.js
+ curl -o "$startdir"/test.out http://127.0.0.1:1234 || true
+ start-stop-daemon -Kp "$startdir"/test.pid
+ grep -q "UI: $pkgver" "$startdir"/test.out
+}
+
+package() {
+ mkdir -p "$pkgdir"/usr/share/webapps/$pkgname
+ cp -r dist node_modules "$pkgdir"/usr/share/webapps/$pkgname/
+
+ # cleanup unused files
+ find "$pkgdir" -type f -a \( \
+ -name "*.ts" \
+ -o -name "webpack*" \
+ -o -name "tsconfig*" \
+ -o -name "babel.config*" \
+ -o -name "README*" \
+ -o -name "readme*" \
+ -o -name "CHANGELOG*" \
+ -o -name "*.map" \
+ -o -name "LICENSE*" \
+ -o -name "License" \
+ -o -name "license" \
+ -o -name "*.md" \
+ \) \
+ -delete
+ find "$pkgdir" -type d -a \( \
+ -name "example" \
+ -o -name "examples" \
+ -o -name "test" \
+ -o -name "tests" \
+ -o -name ".github" \
+ \) \
+ -exec rm -rf '{}' \+
+
+ install -Dm644 "$srcdir"/lemmy-ui.confd "$pkgdir"/etc/conf.d/lemmy-ui
+ install -Dm755 "$srcdir"/lemmy-ui.initd "$pkgdir"/etc/init.d/lemmy-ui
+}
+
+sha512sums="
+cf4dfc6a13b7989751a2a0b1ec807cc40c4fbdc9aed296b6f8f4e24117d7d68ec5be9c7bcd4d572b50f68aefa0be845bea07e5a1de526f5e7a64a31d89e97803 lemmy-ui-0.19.3.tar.gz
+8f3ba3a343e328ee2a5ffeed4f1e6feb7ea580620f004c8f2e9fc8cf00e647e6a7ed5a9c5e68d9bce854819357ac56a9d35b667acb9925701063f0451014f075 lemmy-translations-0.19.3.tar.gz
+cac55baba8fa7cd49e41877e80296b1505aee35444d025c6c612a5c7091f36c92adeab17117d8f58d228f7bbe9f016a9e752a8b9c0f9a940bd8980132577e1a9 lemmy-ui.confd
+59559ffab27cd9562b0f920a72df0a66676f96612960c573132ef1d8914d16ff36300e2514c0fd8e3d16ffd13af58fc129afc88b14f64a16468457e224b97fbd lemmy-ui.initd
+"
diff --git a/testing/lemmy-ui/lemmy-ui.confd b/testing/lemmy-ui/lemmy-ui.confd
new file mode 100644
index 00000000000..a3ec74ece3a
--- /dev/null
+++ b/testing/lemmy-ui/lemmy-ui.confd
@@ -0,0 +1,13 @@
+# Configuration for /etc/init.d/lemmy-ui
+
+# The IP:port lemmy-ui listens on
+LEMMY_UI_HOST="0.0.0.0:1234"
+
+# The internal IP:port for accessing the lemmy backend
+LEMMY_UI_LEMMY_INTERNAL_HOST="127.0.0.1:8536"
+
+# The external domain lemmy is hosted at
+LEMMY_UI_LEMMY_EXTERNAL_HOST="lemmy.example.com"
+
+# Whether to use https
+LEMMY_UI_HTTPS="true"
diff --git a/testing/lemmy-ui/lemmy-ui.initd b/testing/lemmy-ui/lemmy-ui.initd
new file mode 100644
index 00000000000..745d7a11548
--- /dev/null
+++ b/testing/lemmy-ui/lemmy-ui.initd
@@ -0,0 +1,27 @@
+#!/sbin/openrc-run
+
+name=lemmy-ui
+description="Lemmy UI"
+
+export NODE_ENV=production
+export LEMMY_UI_HOST
+export LEMMY_UI_LEMMY_INTERNAL_HOST
+export LEMMY_UI_LEMMY_EXTERNAL_HOST
+export LEMMY_UI_HTTPS
+
+command="/usr/bin/node"
+command_args="dist/js/server.js"
+command_background=true
+command_user="lemmy-ui:lemmy-ui"
+pidfile="/run/${RC_SVCNAME}.pid"
+directory="/usr/share/webapps/lemmy-ui"
+error_log="/var/log/lemmy-ui.log"
+
+depend() {
+ need localmount net
+ after firewall lemmy
+}
+
+start_pre() {
+ checkpath -f -m 0640 -o "$command_user" "$error_log"
+}
diff --git a/testing/lemmy-ui/lemmy-ui.pre-install b/testing/lemmy-ui/lemmy-ui.pre-install
new file mode 100644
index 00000000000..f9482c0af2b
--- /dev/null
+++ b/testing/lemmy-ui/lemmy-ui.pre-install
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+addgroup -S lemmy-ui 2>/dev/null
+adduser -S -D -H \
+ -h /var/empty \
+ -s /sbin/nologin \
+ -G lemmy-ui \
+ -g "Lemmy UI" \
+ lemmy-ui 2>/dev/null
+
+exit 0
diff --git a/testing/lemmy/APKBUILD b/testing/lemmy/APKBUILD
new file mode 100644
index 00000000000..5307f618032
--- /dev/null
+++ b/testing/lemmy/APKBUILD
@@ -0,0 +1,76 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=lemmy
+pkgver=0.19.3
+# this needs to be synced with lemmy-ui
+_translations_commit=c3e61706e2ff7977db83e964e3010f72cad5e408
+pkgrel=1
+pkgdesc="Link aggregator and forum for the Fediverse - Backend server"
+url="https://join-lemmy.org/"
+# armhf, armv7: fatal runtime error while compiling lemmy_server crate
+# ppc64le, riscv64, s390x: ring crate
+# x86: follow lemmy-ui aport
+arch="aarch64 x86_64"
+license="AGPL-3.0-only"
+makedepends="
+ cargo
+ cargo-auditable
+ libpq-dev
+ openssl-dev
+ "
+install="$pkgname.pre-install $pkgname-localdb.post-install"
+pkgusers="lemmy"
+pkggroups="lemmy"
+subpackages="$pkgname-openrc $pkgname-localdb::noarch"
+source="https://github.com/LemmyNet/lemmy/archive/$pkgver/lemmy-$pkgver.tar.gz
+ https://github.com/LemmyNet/lemmy-translations/archive/$_translations_commit/lemmy-translations-$pkgver.tar.gz
+ fix-db-init-script.patch
+ lemmy.initd
+ "
+options="!check" # fails to load settings file as it is not found
+
+# html2md required by lemmy_apub fails to build with panic=abort
+export CARGO_PROFILE_RELEASE_PANIC="unwind"
+
+prepare() {
+ default_prepare
+
+ rmdir -v crates/utils/translations
+ ln -sv "$srcdir/lemmy-translations-$_translations_commit" \
+ crates/utils/translations
+
+ sed -i "s/unknown version/$pkgver/" crates/utils/src/version.rs
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm755 target/release/lemmy_server -t "$pkgdir"/usr/bin
+ install -Dm640 -g lemmy config/defaults.hjson \
+ "$pkgdir"/etc/lemmy/lemmy.hjson
+
+ install -Dm755 scripts/db-init.sh -t "$pkgdir"/usr/lib/$pkgname
+ install -Dm755 "$srcdir"/lemmy.initd "$pkgdir"/etc/init.d/lemmy
+}
+
+localdb() {
+ pkgdesc="Use $pkgname with a local PostgreSQL server"
+ install_if="$pkgname=$pkgver-r$pkgrel postgresql"
+ depends="$pkgname=$pkgver-r$pkgrel postgresql-contrib"
+
+ amove usr/lib/$pkgname/db-init.sh
+}
+
+sha512sums="
+e050fafafad45a3354460bb706387e609187e3894de9ac6c93f26f171f48dbefadc3e0d816f29efdde092dc7454a47e5c3b1786443e89763e31e7ce044a56f09 lemmy-0.19.3.tar.gz
+8f3ba3a343e328ee2a5ffeed4f1e6feb7ea580620f004c8f2e9fc8cf00e647e6a7ed5a9c5e68d9bce854819357ac56a9d35b667acb9925701063f0451014f075 lemmy-translations-0.19.3.tar.gz
+fcfb3881abf8ee671bb55e47c71fef8ef1328a04b3278fd9602478260b0de0bdb55b27c1f6127e9729a65e3fc05cbcd245bd1f98b93ea307755ff748a68d770d fix-db-init-script.patch
+7b4cf4242950f48914fbbb49de932a10f793ae3bb14ac3d2b2430edef1cd76cfc6d0228c3041fb09313b00547068fddbd36ed9e74edc330924a6f55732698bf2 lemmy.initd
+"
diff --git a/testing/lemmy/fix-db-init-script.patch b/testing/lemmy/fix-db-init-script.patch
new file mode 100644
index 00000000000..d039f232f0c
--- /dev/null
+++ b/testing/lemmy/fix-db-init-script.patch
@@ -0,0 +1,26 @@
+--- a/scripts/db-init.sh
++++ b/scripts/db-init.sh
+@@ -1,4 +1,4 @@
+-#!/usr/bin/env bash
++#!/bin/sh
+ set -e
+
+ # Default configurations
+@@ -43,7 +43,7 @@
+ do
+ read -p "Database name: " dbname
+ read -p "Username: " username
+- read -p "Password: password"
++ read -p "Password: " password
+ read -p "Port: " port
+ #echo
+
+@@ -68,7 +68,7 @@
+
+ ask_for_db_config
+
+-psql -c "CREATE USER $username WITH PASSWORD '$password' SUPERUSER;" -U postgres
++psql -c "CREATE USER $username WITH PASSWORD '$password';" -U postgres
+ psql -c "CREATE DATABASE $dbname WITH OWNER $username;" -U postgres
+ export LEMMY_DATABASE_URL=postgres://$username:$password@localhost:$port/$dbname
+
diff --git a/testing/lemmy/lemmy-localdb.post-install b/testing/lemmy/lemmy-localdb.post-install
new file mode 100644
index 00000000000..57821bc1804
--- /dev/null
+++ b/testing/lemmy/lemmy-localdb.post-install
@@ -0,0 +1,9 @@
+#!/bin/sh
+
+cat >&2 <<EOF
+*
+* Create a PostgreSQL user and database by running /usr/lib/lemmy/db-init.sh.
+* Edit the config at /etc/lemmy/lemmy.hjson, a lot of optional lines can be deleted.
+* Run the lemmy-ui service, and configure pict-rs if you have enabled it in the config.
+*
+EOF
diff --git a/testing/lemmy/lemmy.initd b/testing/lemmy/lemmy.initd
new file mode 100644
index 00000000000..2c0878c2542
--- /dev/null
+++ b/testing/lemmy/lemmy.initd
@@ -0,0 +1,26 @@
+#!/sbin/openrc-run
+
+name=lemmy
+description="Lemmy Backend"
+
+: ${cfgfile:="/etc/lemmy/lemmy.hjson"}
+export LEMMY_CONFIG_LOCATION="${cfgfile}"
+
+command="/usr/bin/lemmy_server"
+command_background=true
+command_user="lemmy:lemmy"
+pidfile="/run/${RC_SVCNAME}.pid"
+output_log="/var/log/lemmy.log"
+error_log="/var/log/lemmy.err"
+
+required_files="$cfgfile"
+
+depend() {
+ need localmount net
+ after firewall postgresql
+}
+
+start_pre() {
+ checkpath -f -m 0640 -o "root:lemmy" "$cfgfile"
+ checkpath -f -m 0640 -o "$command_user" "$output_log" "$error_log"
+}
diff --git a/testing/lemmy/lemmy.pre-install b/testing/lemmy/lemmy.pre-install
new file mode 100644
index 00000000000..60c82625b6e
--- /dev/null
+++ b/testing/lemmy/lemmy.pre-install
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+addgroup -S lemmy 2>/dev/null
+adduser -S -D -H \
+ -h /var/empty \
+ -s /sbin/nologin \
+ -G lemmy \
+ -g "Lemmy Backend" \
+ lemmy 2>/dev/null
+
+exit 0
diff --git a/testing/lemonbar/APKBUILD b/testing/lemonbar/APKBUILD
index 860f5129b47..c6926dcbc90 100644
--- a/testing/lemonbar/APKBUILD
+++ b/testing/lemonbar/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Camille Scholtz <onodera@openmailbox.org>
pkgname=lemonbar
pkgver=1.4
-pkgrel=0
+pkgrel=1
pkgdesc="featherlight, lemon-scented, bar based on xcb"
url="https://github.com/Lemonboy/bar"
arch="all"
diff --git a/testing/leocad/APKBUILD b/testing/leocad/APKBUILD
deleted file mode 100644
index 7f94e3958c4..00000000000
--- a/testing/leocad/APKBUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-# Contributor: mio <miyopan@e.email>
-# Maintainer: mio <miyopan@e.email>
-pkgname=leocad
-pkgver=21.06
-_libver=20.03
-pkgrel=0
-pkgdesc="CAD application for creating virtual LEGO models"
-url="https://www.leocad.org/"
-license="GPL-2.0-only"
-arch="all"
-makedepends="qt5-qtbase-dev qt5-qttools-dev zlib-dev"
-subpackages="$pkgname-doc"
-source="https://github.com/leozide/leocad/archive/v$pkgver/leocad-v$pkgver.tar.gz
- https://github.com/leozide/leocad/releases/download/v$pkgver/Library-$_libver.zip
- "
-options="!check" # No tests
-
-build() {
- DISABLE_UPDATE_CHECK=1 LDRAW_LIBRARY_PATH=/usr/share/leocad \
- qmake-qt5 leocad.pro
- make
-}
-
-package() {
- INSTALL_ROOT="$pkgdir" make install
- # Install parts library
- mkdir -p "$pkgdir"/usr/share/leocad
- mv "$srcdir"/library.bin "$pkgdir"/usr/share/leocad/
-}
-sha512sums="
-6cc868d3da15f9fe003a70d3a8ebaf2b4e6562a8728652cb7fc9e3ab5ddd9a90c5e433fd4d37cc9f972dc314399b4edb34fe5d9cd47ad63bf7c5d71e04e3c662 leocad-v21.06.tar.gz
-b339a07cb1e9fc5a35f108bba915a0363361b295ba82980550b7b4f82eaa43be45187cb6084cf123c65b52b2d89038c8abab847d0933f6166cac59404dda671a Library-20.03.zip
-"
diff --git a/testing/leptosfmt/APKBUILD b/testing/leptosfmt/APKBUILD
new file mode 100644
index 00000000000..fc43a3c32f4
--- /dev/null
+++ b/testing/leptosfmt/APKBUILD
@@ -0,0 +1,42 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=leptosfmt
+pkgver=0.1.18
+pkgrel=0
+pkgdesc="A formatter for the leptos view! macro"
+url="https://github.com/bram209/leptosfmt"
+arch="all"
+license="MIT OR Apache-2.0"
+makedepends="
+ cargo
+ cargo-auditable
+"
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/bram209/leptosfmt/archive/refs/tags/$pkgver.tar.gz"
+options="net"
+
+prepare() {
+ default_prepare
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm 755 target/release/leptosfmt "$pkgdir"/usr/bin/leptosfmt
+
+ for l in -APACHE -MIT
+ do
+ install -Dm 644 LICENSE"$l" "$pkgdir"/usr/share/licenses/"$pkgname"/LICENSE"$l"
+ done
+}
+
+sha512sums="
+d060878e6c99899143ab8760fa15f618fc6cc99b06250a9c5feefceec64d8fba616c5f82e8533da52880a2f11e2e914c4eebd86b58948cb6ae4e0a4d17f6853a leptosfmt-0.1.18.tar.gz
+"
diff --git a/testing/level-zero/APKBUILD b/testing/level-zero/APKBUILD
new file mode 100644
index 00000000000..b156c930942
--- /dev/null
+++ b/testing/level-zero/APKBUILD
@@ -0,0 +1,37 @@
+# Contributor: Leon Marz <main@lmarz.org>
+# Maintainer: Leon Marz <main@lmarz.org>
+pkgname=level-zero
+pkgver=1.16.14
+pkgrel=0
+pkgdesc="oneAPI Level Zero Loader"
+url="https://spec.oneapi.com/versions/latest/elements/l0/source/index.html"
+arch="all"
+license="MIT"
+makedepends="cmake samurai"
+subpackages="$pkgname-dev"
+source="$pkgname-$pkgver.tar.gz::https://github.com/oneapi-src/level-zero/archive/v$pkgver.tar.gz"
+options="!check" # no testsuite
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=None
+
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+dev() {
+ default_dev
+ amove 'usr/lib/libze_tracing_layer.so*'
+ amove 'usr/lib/libze_validation_layer.so*'
+}
+
+sha512sums="
+8c80d75909398245c0173a4198748d1a1e469e21a09138f60b314061ff556e7f529807e02c6ec1f3a47f2871e17c24b7be6d363810a25fee11e73b5c97c7c62a level-zero-1.16.14.tar.gz
+"
diff --git a/testing/lexbor/APKBUILD b/testing/lexbor/APKBUILD
deleted file mode 100644
index 2b048a02d30..00000000000
--- a/testing/lexbor/APKBUILD
+++ /dev/null
@@ -1,34 +0,0 @@
-# Contributor: Grigory Kirillov <txgk@bk.ru>
-# Maintainer: Grigory Kirillov <txgk@bk.ru>
-pkgname=lexbor
-pkgver=2.1.0
-pkgrel=0
-pkgdesc="Open source HTML Renderer library"
-url="http://lexbor.com"
-# segfaults on 32-bit arches https://github.com/lexbor/lexbor/issues/153
-arch="all !x86 !armv7 !armhf"
-license="Apache-2.0"
-makedepends="cmake samurai"
-subpackages="$pkgname-static $pkgname-dev"
-source="https://github.com/lexbor/lexbor/archive/v$pkgver/lexbor-$pkgver.tar.gz"
-
-build() {
- cmake -B build -G Ninja \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_BUILD_TYPE=MinSizeRel \
- -DLEXBOR_BUILD_TESTS=ON \
- -DLEXBOR_BUILD_SEPARATELY=ON
- cmake --build build
-}
-
-check() {
- ctest --output-on-failure --test-dir build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-
-sha512sums="
-02ab46fa63b21c79778f8ac6678ce8ea089f58e0094e77ae444bcbc90d54f1964b5c9aaa6e513311c4b639b39d656ae4e6d878c1e97fede6778a677cf7c7af26 lexbor-2.1.0.tar.gz
-"
diff --git a/testing/lf/APKBUILD b/testing/lf/APKBUILD
deleted file mode 100644
index 4e08ee9483c..00000000000
--- a/testing/lf/APKBUILD
+++ /dev/null
@@ -1,50 +0,0 @@
-# Contributor: Leo <thinkabit.ukim@gmail.com>
-# Maintainer: Miles Alan <m@milesalan.com>
-pkgname=lf
-pkgver=26
-pkgrel=2
-pkgdesc="Terminal filemanager written in Go with vim-style keybindings"
-options="chmod-clean net"
-url="https://github.com/gokcehan/lf"
-license="MIT"
-arch="all"
-makedepends="go"
-subpackages="
- $pkgname-doc
- $pkgname-bash-completion
- $pkgname-zsh-completion
- $pkgname-fish-completion
- "
-source="$pkgname-$pkgver.tar.gz::https://github.com/gokcehan/lf/archive/r$pkgver.tar.gz"
-builddir="$srcdir/lf-r$pkgver"
-
-export GOPATH="$srcdir"
-export GOCACHE="$srcdir"
-export GOTMPDIR="$srcdir"
-
-build() {
- go build -v -o bin/$pkgname
-}
-
-check() {
- go test ./...
-}
-
-package() {
- install -Dm0755 bin/$pkgname -t "$pkgdir"/usr/bin
-
- # Manpages
- install -Dm0644 lf.1 "$pkgdir"/usr/share/man/man1/lf.1
-
- # .desktop file for menus
- install -Dm0644 lf.desktop -t "$pkgdir"/usr/share/applications
-
- # Shell completions
- install -Dm0644 etc/lf.bash "$pkgdir"/usr/share/bash-completion/completions/lf
- install -Dm0644 etc/lf.zsh "$pkgdir"/usr/share/zsh/site-functions/_lf
- install -Dm0644 etc/lf.fish -t "$pkgdir"/usr/share/fish/completions
-}
-
-sha512sums="
-662ce00ca666f47cb22abe7488cbb600e6a703ac9bce082a88b98d9b3a8c1d6b6188976a1c9b7f75a2eb819212065f4499441e13b4b04a79fe9a6f853ee69815 lf-26.tar.gz
-"
diff --git a/testing/lfm/APKBUILD b/testing/lfm/APKBUILD
new file mode 100644
index 00000000000..a92b4f1c9a4
--- /dev/null
+++ b/testing/lfm/APKBUILD
@@ -0,0 +1,27 @@
+# Maintainer:
+pkgname=lfm
+pkgver=3.1
+pkgrel=4
+pkgdesc="Last File Manager"
+url="https://inigo.katxi.org/devel/lfm/"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="py3-setuptools"
+subpackages="$pkgname-doc $pkgname-pyc"
+source="https://inigo.katxi.org/devel/lfm/lfm-$pkgver.tar.gz
+ interp.patch
+ "
+options="!check" # no tests
+
+build() {
+ python3 setup.py build
+}
+
+package() {
+ python3 setup.py install --skip-build --root="$pkgdir"
+}
+
+sha512sums="
+9e6142c0d871fe19b4b82e5333e03de562ca87a7498bd7fb496cca27e0b42c56a33913f2a7eb46439447ab7adb4a87da44bfcc1548101e15703aaa21ec105af8 lfm-3.1.tar.gz
+4db0a0fb905a814e9b46a336a3bec3ca651e0eaa8a382d61702f7366dbef6bd4b111d2fd0fa6d0adac827ff3bd8b5dfc9aa8ab1f6a9bc002920f7b1cf888f3c8 interp.patch
+"
diff --git a/testing/lfm/interp.patch b/testing/lfm/interp.patch
new file mode 100644
index 00000000000..bb28f505181
--- /dev/null
+++ b/testing/lfm/interp.patch
@@ -0,0 +1,10 @@
+diff --git a/lfm/lfm.py b/lfm/lfm.py
+index 3e1aac0..3aaf8b0 100755
+--- a/lfm/lfm.py
++++ b/lfm/lfm.py
+@@ -1,4 +1,4 @@
+-#!/bin/env python3
++#!/usr/bin/env python3
+ # -*- coding: utf-8 -*-
+
+ # Copyright (C) 2001-17 Iñigo Serna
diff --git a/testing/lgogdownloader/APKBUILD b/testing/lgogdownloader/APKBUILD
index 9b1042ce516..0ec648ee664 100644
--- a/testing/lgogdownloader/APKBUILD
+++ b/testing/lgogdownloader/APKBUILD
@@ -1,14 +1,14 @@
# Contributor: shum <shum@posteo.net>
# Maintainer: shum <shum@posteo.net>
pkgname=lgogdownloader
-pkgver=3.8
+pkgver=3.12
pkgrel=1
pkgdesc="Open source downloader for GOG.com games"
url="https://github.com/Sude-/lgogdownloader"
arch="all"
license="WTFPL"
options="!check" # no testsuite
-makedepends="help2man cmake boost-dev tinyxml2-dev jsoncpp-dev rhash-dev curl-dev htmlcxx-dev"
+makedepends="help2man cmake boost-dev tinyxml2-dev jsoncpp-dev rhash-dev curl-dev htmlcxx-dev samurai"
subpackages="$pkgname-doc"
source="$pkgname-$pkgver.tar.gz::https://github.com/Sude-/lgogdownloader/archive/refs/tags/v$pkgver.tar.gz"
@@ -16,7 +16,7 @@ build() {
if [ "$CBUILD" != "$CHOST" ]; then
CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
fi
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
-DBUILD_SHARED_LIBS=True \
@@ -32,5 +32,5 @@ package() {
}
sha512sums="
-28d5ca08c4cd879437a9616df9832ff4962dd41a810eff36cde1746663fc5d26ebd50ecfc56c7ee1cfc38112efa3705af8e868e6382fe85d0c5c3d5b056cc69c lgogdownloader-3.8.tar.gz
+d86d1542f48488f0fd0c880557bd95c0d5c561342690b4c635aebceab73aab9c605bbaaa72715d26b6578657cd2015138a0d3b804059931f3d9f3cac8e05e568 lgogdownloader-3.12.tar.gz
"
diff --git a/testing/lib3mf/APKBUILD b/testing/lib3mf/APKBUILD
deleted file mode 100644
index 4d16134f5db..00000000000
--- a/testing/lib3mf/APKBUILD
+++ /dev/null
@@ -1,46 +0,0 @@
-# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
-pkgname=lib3mf
-pkgver=2.2.0
-pkgrel=0
-pkgdesc="A C++ implementation of the 3D Manufacturing Format file standard"
-url="https://github.com/3MFConsortium/lib3mf"
-# "Generating hourglass API bindings and implementation stub" fail on ARM, s390x, and ppc64le
-arch="all !armv7 !armhf !aarch64 !s390x !ppc64le"
-license="BSD-2-Clause"
-subpackages="$pkgname-dev"
-makedepends="
- cmake
- libzip-dev
- ninja
- util-linux-dev
- zlib-dev
- "
-source="$pkgname-$pkgver.tar.gz::https://github.com/3MFConsortium/lib3mf/archive/v$pkgver.tar.gz"
-options="!check" # Unit tests requires source code of googletest, which is git submodule but not included in the release
-
-build() {
- cmake -B build \
- -G Ninja \
- -DCMAKE_BUILD_TYPE=MinSizeRel \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_INCLUDEDIR=include/lib3mf \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DUSE_INCLUDED_ZLIB=OFF \
- -DUSE_INCLUDED_LIBZIP=OFF \
- -DLIB3MF_TESTS=FALSE
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
- # fix Cflags in lib3mf.pc
- sed -e 's!Cflags: -I${includedir}!Cflags: -I${includedir} -I${includedir}/Bindings/C -I${includedir}/Bindings/Cpp!' \
- -i "$pkgdir"/usr/lib/pkgconfig/lib3mf.pc
-
- # some packages expect lib3MF.pc instead of lib3mf.pc
- ln -s lib3mf.pc "$pkgdir"/usr/lib/pkgconfig/lib3MF.pc
-}
-
-sha512sums="
-2a9ee92312396b8966967a7ed696c58c69a77438f94432ad071659adc8c9d12fba34a3cf3d8c8d3ad3b26c12c9a89f4d8645e6f396987dc05b04952b004a1f07 lib3mf-2.2.0.tar.gz
-"
diff --git a/testing/libabigail/APKBUILD b/testing/libabigail/APKBUILD
new file mode 100644
index 00000000000..2762fa9c364
--- /dev/null
+++ b/testing/libabigail/APKBUILD
@@ -0,0 +1,96 @@
+# Contributor: Jakub Jirutka <jakub@jirutka.cz>
+# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
+pkgname=libabigail
+pkgver=2.3
+pkgrel=0
+pkgdesc="The ABI Generic Analysis and Instrumentation Library"
+url="https://sourceware.org/libabigail/"
+arch="all"
+license="Apache-2.0 WITH LLVM-exception"
+makedepends="
+ autoconf
+ automake
+ elfutils-dev
+ libtool
+ libxml2-dev
+ musl-fts-dev
+ py3-sphinx
+ "
+checkdepends="
+ bash
+ python3
+ "
+subpackages="
+ $pkgname-dev
+ $pkgname-tools
+ $pkgname-doc
+ $pkgname-bash-completion
+ "
+source="https://mirrors.kernel.org/sourceware/libabigail/libabigail-$pkgver.tar.xz
+ musl-fts.patch
+ apk.patch
+ "
+
+prepare() {
+ default_prepare
+
+ autoreconf -fi
+}
+
+build() {
+ # utilities use a bit more stack size than normal
+ export LDFLAGS="$LDFLAGS -Wl,-z,stack-size=512000"
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var \
+ --enable-rpm=no \
+ --enable-rpm415=no \
+ --enable-debug-self-comparison=no \
+ --enable-deb=no \
+ --enable-tar=yes \
+ --enable-apidoc=no \
+ --enable-manual=yes \
+ --enable-bash-completion=yes \
+ --enable-fedabipkgdiff=no \
+ --enable-python3=yes
+ make
+ make -C doc/manuals man
+}
+
+check() {
+ make check check-self-compare || {
+ cat tests/test-suite.log
+ return 1
+ }
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+ make -C doc/manuals DESTDIR="$pkgdir" install-man-and-info-doc
+
+ cd bash-completion
+ install -D -m644 -t "$pkgdir"/usr/share/bash-completion/completions/ \
+ abicompat \
+ abidiff \
+ abidw \
+ abilint \
+ abipkgdiff
+
+}
+
+tools() {
+ pkgdesc="$pkgdesc (CLI tools)"
+ depends="$pkgname=$pkgver-r$pkgrel"
+
+ amove usr/bin
+}
+
+sha512sums="
+fdf0df51e2c262c723c11bef58cd0b89b27e67be196edeb33444fc06e7e61d3c2c227f59cb961aea6fc0c9b7f6f04e08b787a1cbbeb3d5507b968b8ae7630527 libabigail-2.3.tar.xz
+d789a76dfedf9e74c13906aa72da4f9f4113484a98326f662ed9a2badbd29d7fb5e402272bfe24dbdfaf44992ba6a9be3d8ecbdda275910e00cf4f0abaac96e2 musl-fts.patch
+78bdbb2fd285b5dd2ceaac8a3631e433d4f154b6882c09be7117ef4ead35f872a19b33ca21e1c8d738baa78e3784aebd2d25c731b50a8c3c3c47d616dc33b5fd apk.patch
+"
diff --git a/testing/libabigail/apk.patch b/testing/libabigail/apk.patch
new file mode 100644
index 00000000000..cf2a92368ed
--- /dev/null
+++ b/testing/libabigail/apk.patch
@@ -0,0 +1,16 @@
+Detect .apk as tarballs.
+
+This is based on https://github.com/void-linux/void-packages/blob/c4880df0bb88e6e9ba08bd22f2ada592a6e60fc7/srcpkgs/libabigail/patches/xbps.patch.
+
+--- a/src/abg-tools-utils.cc
++++ b/src/abg-tools-utils.cc
+@@ -690,7 +690,8 @@
+ || string_ends_with(file_path, ".tlz")
+ || string_ends_with(file_path, ".tar.Z")
+ || string_ends_with(file_path, ".taz")
+- || string_ends_with(file_path, ".tz"))
++ || string_ends_with(file_path, ".tz")
++ || string_ends_with(file_path, ".apk"))
+ return FILE_TYPE_TAR;
+
+ ifstream in(file_path.c_str(), ifstream::binary);
diff --git a/testing/libabigail/musl-fts.patch b/testing/libabigail/musl-fts.patch
new file mode 100644
index 00000000000..917ee64c388
--- /dev/null
+++ b/testing/libabigail/musl-fts.patch
@@ -0,0 +1,11 @@
+--- a/configure.ac
++++ b/configure.ac
+@@ -261,6 +261,6 @@
+
+-dnl On musl, we need to find fts-standalone
++dnl On musl, we need to find musl-fts
+ AS_CASE(
+ [${host_os}], [*-musl*], [
+- PKG_CHECK_MODULES([FTS], [fts-standalone])
++ PKG_CHECK_MODULES([FTS], [musl-fts])
+ ])
diff --git a/testing/libantic/APKBUILD b/testing/libantic/APKBUILD
new file mode 100644
index 00000000000..79ccebf86ec
--- /dev/null
+++ b/testing/libantic/APKBUILD
@@ -0,0 +1,40 @@
+# Contributor: Jakob Meier <comcloudway@ccw.icu>
+# Maintainer: Jakob Meier <comcloudway@ccw.icu>
+pkgname=libantic
+pkgver=0.2.5
+pkgrel=0
+pkgdesc="Algebraic Number Theory In C"
+url="https://github.com/wbhart/antic"
+arch="all !s390x" # flint-dev
+license="LGPL-2.1-or-later"
+makedepends="
+ cmake
+ flint-dev
+ gmp-dev
+ mpfr-dev
+ samurai
+ "
+subpackages="$pkgname-dev"
+source="$pkgname-$pkgver.tar.gz::https://github.com/wbhart/antic/archive/v$pkgver/antic-$pkgver.tar.gz"
+builddir="$srcdir/antic-$pkgver"
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DBUILD_TESTING="$(want_check && echo ON || echo OFF)"
+
+ cmake --build build
+}
+
+check() {
+ ctest -j4 --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+ffcb7f696abf3ae1b6960368bcbb508711cec00f42e8093782de337a8328f66f00f7f0cf2f6069a6b835a8a70282b50642b36a1acfa387b98ded36a85717eec6 libantic-0.2.5.tar.gz
+"
diff --git a/testing/libantlr3c/APKBUILD b/testing/libantlr3c/APKBUILD
index 5066e33aa54..44d317ac5ed 100644
--- a/testing/libantlr3c/APKBUILD
+++ b/testing/libantlr3c/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer:
pkgname=libantlr3c
pkgver=3.4
-pkgrel=1
+pkgrel=3
pkgdesc="C runtime for the ANTLR parsing library"
url="https://www.antlr.org/"
arch="all"
@@ -29,6 +29,10 @@ build() {
make
}
+check() {
+ make check
+}
+
package() {
make DESTDIR="$pkgdir" install
}
diff --git a/testing/libarb/APKBUILD b/testing/libarb/APKBUILD
new file mode 100644
index 00000000000..2f5e1662687
--- /dev/null
+++ b/testing/libarb/APKBUILD
@@ -0,0 +1,38 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
+pkgname=libarb
+pkgver=2.23.0
+pkgrel=2
+pkgdesc="Library for rigorous real and complex arithmetic with arbitrary precision"
+url="https://arblib.org"
+# s390x: blocked by flint
+arch="all !s390x"
+license="LGPL-2.1-or-later"
+makedepends="gmp-dev flint-dev mpfr-dev"
+subpackages="$pkgname-static $pkgname-dev"
+source="https://github.com/fredrik-johansson/arb/archive/$pkgver/arb-$pkgver.tar.gz"
+builddir="$srcdir/arb-$pkgver"
+
+build() {
+ export CFLAGS="${CFLAGS/-Os/-O3}" # gotta go fast
+
+ # Not an autoconf configure!
+ ./configure \
+ --prefix=/usr \
+ CC="$CC" \
+ CXX="$CXX" \
+ CFLAGS="$CFLAGS"
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+cd15c1adc1c8a6b7cd7b98f5d32afec3b04f6849998cd8586924a6ebb5fe1a1a6efc250fa7fc1d346b2331daa02a4d07133ee58edeae3cc6684d306c8b78c4ae arb-2.23.0.tar.gz
+"
diff --git a/testing/libaudec/APKBUILD b/testing/libaudec/APKBUILD
new file mode 100644
index 00000000000..533fee679ae
--- /dev/null
+++ b/testing/libaudec/APKBUILD
@@ -0,0 +1,42 @@
+# Maintainer:
+pkgname=libaudec
+pkgver=0.3.4
+pkgrel=3
+pkgdesc="lib audio decoder"
+url="https://git.sr.ht/~alextee/libaudec"
+arch="all"
+license="GPL-3.0-or-later"
+depends_dev="$pkgname"
+makedepends="
+ libsamplerate-dev
+ libsndfile-dev
+ meson
+ "
+subpackages="$pkgname-static $pkgname-dev $pkgname-tools"
+source="$pkgname-$pkgver.tar.gz::https://git.sr.ht/~alextee/libaudec/archive/v$pkgver.tar.gz"
+builddir="$srcdir/$pkgname-v$pkgver"
+
+build() {
+ abuild-meson \
+ -Dtests="$(want_check && echo true || echo false)" \
+ . output
+ meson compile -C output
+}
+
+check() {
+ meson test --print-errorlogs --no-rebuild -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+tools() {
+ pkgdesc="$pkgdesc (tools)"
+
+ amove usr/bin
+}
+
+sha512sums="
+9c50b866e2f0d1897d7a55a83263e74c3a1cf77772a52bd446632c9a92f2ccbbb3e2e1ecfde8b05fc41e59e4d60a57935a656ec8f40b6680fc4bbe201ea045ef libaudec-0.3.4.tar.gz
+"
diff --git a/testing/libbamf/APKBUILD b/testing/libbamf/APKBUILD
new file mode 100644
index 00000000000..65108da8fbd
--- /dev/null
+++ b/testing/libbamf/APKBUILD
@@ -0,0 +1,41 @@
+# Contributor: jpdw34 <jpdw34@gmail.com>
+# Maintainer: jpdw34 <jpdw34@gmail.com>
+pkgname=libbamf
+_pkgname=bamf
+pkgver=0.5.6
+_pkgver=0.5
+pkgrel=1
+pkgdesc="Window matching library"
+url="https://launchpad.net/bamf"
+arch="all"
+license="LGPL-2.1-only OR LGPL-3.0-only"
+depends_dev="libwnck3-dev libgtop-dev"
+makedepends="$depends_dev glib-dev py3-lxml"
+subpackages="$pkgname-doc $pkgname-dev"
+source="https://launchpad.net/$_pkgname/$_pkgver/$pkgver/+download/$_pkgname-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ ./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --infodir=/usr/share/info \
+ --localstatedir=/var
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+ rm -rf "$pkgdir/usr/lib/systemd" "$pkgdir/usr/share/upstart"
+}
+
+sha512sums="
+cfb2dcc511bc4c30b6ea167d2502784e5e1f3baada24d916842bd0cf8e920b78e3c120157136f818899a899979a648c666d85a54a8573c56edeb8743b7da7601 bamf-0.5.6.tar.gz
+"
diff --git a/testing/libbaseencode/APKBUILD b/testing/libbaseencode/APKBUILD
deleted file mode 100644
index 07364abaed0..00000000000
--- a/testing/libbaseencode/APKBUILD
+++ /dev/null
@@ -1,29 +0,0 @@
-# Contributor: Leo <thinkabit.ukim@gmail.com>
-# Maintainer:
-pkgname=libbaseencode
-pkgver=1.0.14
-pkgrel=0
-pkgdesc="Library for encoding decoding data use base32 or base64"
-url="https://github.com/paolostivanin/libbaseencode"
-license="Apache-2.0"
-arch="all"
-makedepends="cmake"
-subpackages="$pkgname-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/paolostivanin/libbaseencode/archive/v$pkgver.tar.gz"
-options="!check" # no working testsuite
-
-build() {
- cmake -B build \
- -DCMAKE_BUILD_TYPE=None \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-
-sha512sums="
-a327997279567f72d7253417d64ba264117ce09c78630d98ecadcec090ffd85fbfb636515121b58f422ec421fa4e973a1e7851de20e512812f835a377de5581d libbaseencode-1.0.14.tar.gz
-"
diff --git a/testing/libblastrampoline/APKBUILD b/testing/libblastrampoline/APKBUILD
index 456c1c74167..7322e5b6d32 100644
--- a/testing/libblastrampoline/APKBUILD
+++ b/testing/libblastrampoline/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=libblastrampoline
-pkgver=5.1.0
+pkgver=5.2.0
pkgrel=0
pkgdesc="Using PLT trampolines to provide a BLAS and LAPACK demuxing library"
url="https://github.com/JuliaLinearAlgebra/libblastrampoline"
@@ -33,5 +33,5 @@ package() {
}
sha512sums="
-ccba0b22bd9280f3b2634e71b105ed34f75e591ab6517115ebc174a701c61d60fac90a180b9daed0e60717c00e64756a9a8ad9ab0756485f6277ce5b3e17a800 libblastrampoline-5.1.0.tar.gz
+543d6d858daea9daadcb6f795e833f59cb27590015f5d4c84f24594ddc8fb51cdd473c93fa2acc9bf331b39aa252a6901a23b2e40655797a0b3106276095c429 libblastrampoline-5.2.0.tar.gz
"
diff --git a/testing/libbloom/APKBUILD b/testing/libbloom/APKBUILD
index 02e3390729b..cba699b2881 100644
--- a/testing/libbloom/APKBUILD
+++ b/testing/libbloom/APKBUILD
@@ -1,11 +1,11 @@
# Contributor: Leo <thinkabit.ukim@gmail.com>
# Maintainer:
pkgname=libbloom
-pkgver=1.6
-pkgrel=2
+pkgver=2.0
+pkgrel=0
pkgdesc="Simple and small bloom filter in plain C"
url="https://github.com/jvirkki/libbloom"
-arch="all"
+arch="all !armhf !armv7 !x86" # 32-bit not supported
license="BSD-2-Clause"
subpackages="$pkgname-dev"
source="$pkgname-$pkgver.tar.gz::https://github.com/jvirkki/libbloom/archive/v$pkgver.tar.gz"
@@ -25,4 +25,6 @@ package() {
ln -s libbloom.so.$pkgver "$pkgdir"/usr/lib/libbloom.so.${pkgver%.*}
}
-sha512sums="3dd4343d68def05800dd6ffc5a05b05d0702a8c0c9f0a397f105d4389c88a7bffa419734aeb4fa4e1a2c418b12a8192fa27ddcbaeee72906450d64cbfd64db15 libbloom-1.6.tar.gz"
+sha512sums="
+68369966d595c550e10ebc5f81d167aafa2878cfb403627ce43f5f9a7805fa0b360f369eacc66d3c96e35da922966a640ec8595399db76f8bbbba24b0d9e3144 libbloom-2.0.tar.gz
+"
diff --git a/testing/libbraiding/APKBUILD b/testing/libbraiding/APKBUILD
new file mode 100644
index 00000000000..ba300db859c
--- /dev/null
+++ b/testing/libbraiding/APKBUILD
@@ -0,0 +1,32 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
+pkgname=libbraiding
+pkgver=1.2
+pkgrel=2
+pkgdesc="Library for computations on braid groups"
+url="https://github.com/miguelmarco/libbraiding"
+arch="all"
+license="GPL-2.0-or-later"
+options="!check" # no test suite
+subpackages="$pkgname-dev"
+source="https://github.com/miguelmarco/libbraiding/releases/download/$pkgver/libbraiding-$pkgver.tar.gz"
+
+build() {
+ export CFLAGS="${CFLAGS/-Os/-O3}" # gotta go fast
+
+ ./configure \
+ --target="$CTARGET" \
+ --build="$CBUILD" \
+ --host="$CHOST" \
+ --prefix=/usr \
+ --disable-static
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+f3dcfa77d5313ecfa91c0b9a61988eb2048dd27ed77f46a5c34fc57adb9eee53b250946a7158918b3198559bd016c723dba98465036d01c482b5c6000ab59d8a libbraiding-1.2.tar.gz
+"
diff --git a/testing/libbs2b/APKBUILD b/testing/libbs2b/APKBUILD
deleted file mode 100644
index b7835689401..00000000000
--- a/testing/libbs2b/APKBUILD
+++ /dev/null
@@ -1,42 +0,0 @@
-# Contributor: psykose <alice@ayaya.dev>
-# Maintainer: psykose <alice@ayaya.dev>
-pkgname=libbs2b
-pkgver=3.1.0
-pkgrel=0
-pkgdesc="Unofficial fork of Bauer stereophonic-to-binaural DSP library"
-url="https://github.com/alexmarsev/libbs2b"
-arch="all"
-license="MIT"
-options="!check" # no testsuite
-makedepends="autoconf automake libsndfile-dev libtool"
-subpackages="$pkgname-dev $pkgname-tools"
-source="https://downloads.sourceforge.net/sourceforge/bs2b/libbs2b-$pkgver.tar.gz"
-
-prepare() {
- default_prepare
- # old configure script with now-nonexistent dist-lzma definition
- sed -i 's/dist-lzma//' configure.ac
- autoreconf -fi
-}
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr
-
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-tools() {
- pkgdesc="$pkgdesc (tools)"
- amove usr/bin
-}
-
-sha512sums="
-3fba925fb07b28183f3bf3abe31c13915cb8c3fdd2a7c567819ab912a61463fd5769c4644faa3a114bd68ed7cd51d6fbf5304ab83a02f1004ae34fb93a748fbb libbs2b-3.1.0.tar.gz
-"
diff --git a/testing/libcec-rpi/APKBUILD b/testing/libcec-rpi/APKBUILD
index 7c9c575d60c..40dc9477fc6 100644
--- a/testing/libcec-rpi/APKBUILD
+++ b/testing/libcec-rpi/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=libcec-rpi
pkgver=6.0.2
-pkgrel=0
+pkgrel=3
pkgdesc="libcec for the Pulse-Eight USB-CEC adapter for the Raspberry Pi"
url="https://github.com/Pulse-Eight/libcec"
arch="armhf armv7 aarch64" # Only Raspberry Pi platforms
@@ -18,15 +18,18 @@ makedepends="$depends_dev
p8-platform-dev
raspberrypi-libs
raspberrypi-dev
+ samurai
"
subpackages="$pkgname-dev py3-$pkgname:py3"
-source="https://github.com/Pulse-Eight/libcec/archive/libcec-$pkgver.tar.gz"
+source="https://github.com/Pulse-Eight/libcec/archive/libcec-$pkgver.tar.gz
+ fix-null-return.patch
+ "
provides="libcec=$pkgver-r$pkgrel"
builddir="$srcdir"/libcec-libcec-$pkgver
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DBUILD_SHARED_LIBS=1 \
-DCMAKE_INSTALL_PREFIX=/usr \
@@ -48,4 +51,7 @@ py3() {
mv "$pkgdir"/usr/lib/python* "$subpkgdir"/usr/lib/
}
-sha512sums="c16ac268e67b01d4e35fad644e5927e1d9fc7bcaeff698ac5f0eadd31ec63a0bef2a2b2bc37860d1571e1e0cdc55911c2de468c661c7c7ae1d492f80188035cb libcec-6.0.2.tar.gz"
+sha512sums="
+c16ac268e67b01d4e35fad644e5927e1d9fc7bcaeff698ac5f0eadd31ec63a0bef2a2b2bc37860d1571e1e0cdc55911c2de468c661c7c7ae1d492f80188035cb libcec-6.0.2.tar.gz
+0aa63e622ecf3d9009efc06db801c7a5558aa30a0543701e2e12bf052a54155240fc2d2bf339aab1af7288c3e85c7edf5087e4de6ce800398fba05897cf6d22f fix-null-return.patch
+"
diff --git a/testing/libcec-rpi/fix-null-return.patch b/testing/libcec-rpi/fix-null-return.patch
new file mode 100644
index 00000000000..5ace754d987
--- /dev/null
+++ b/testing/libcec-rpi/fix-null-return.patch
@@ -0,0 +1,20 @@
+--- a/include/cecloader.h
++++ b/include/cecloader.h
+@@ -172,7 +172,7 @@
+ if (!g_libCEC)
+ {
+ std::cout << dlerror() << std::endl;
+- return NULL;
++ return false;
+ }
+ }
+
+@@ -181,7 +181,7 @@
+ if (!LibCecBootloader)
+ {
+ std::cout << "cannot find CECStartBootloader" << std::endl;
+- return NULL;
++ return false;
+ }
+
+ bool bReturn = LibCecBootloader();
diff --git a/testing/libcork/APKBUILD b/testing/libcork/APKBUILD
index 7b0d0aab01a..196146144a2 100644
--- a/testing/libcork/APKBUILD
+++ b/testing/libcork/APKBUILD
@@ -1,10 +1,10 @@
# Contributor: Leo <thinkabit.ukim@gmail.com>
-# Maintainer:
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=libcork
pkgver=0.15.0
-pkgrel=4
+pkgrel=7
pkgdesc="Simple, easily embeddable cross-platform C library"
-url="https://github.com/redjack/libcork"
+url="https://github.com/dcreager/libcork"
arch="all"
license="BSD-3-Clause"
makedepends="cmake check-dev samurai"
@@ -13,6 +13,8 @@ subpackages="$pkgname-dev $pkgname-tools"
source="$pkgname-$pkgver.tar.gz::https://github.com/dcreager/libcork/archive/$pkgver.tar.gz
fix-dumb-script.patch
fix-gcc-10.patch
+ no-git.patch
+ format-security.patch
"
prepare() {
@@ -49,4 +51,6 @@ sha512sums="
8f41cce2101b96707068a21e5bd0a43c23f996c3620e7dd36621ed4bdd3f92851a92ea56ed92db40d7d8fe55ddfbdfcdaac4d2c8b2fc6cb3b1abe3b0e74c6a75 libcork-0.15.0.tar.gz
c80c3edb45e4051b5b3aac4b4980296e54d78bee0410e833278034a9dcdd971f174be01f8420bb94e294bc229e69d13b200679c600ee56920348af94ccd51b45 fix-dumb-script.patch
b0ce51a8f63eb8095160dd018f54134988fce7cb18d9fcdce45aae250ea098339aab786509d3bd3bbdd3d71c6cbd459f9ff3950ebeb21a0ea0774d53b3892067 fix-gcc-10.patch
+26d4ae2e433b4c969c6991fa3607956df9732614cd51628d05286907cfed91dbcce418033e266461c0a3fb5671629f5155b50bf1ba56875ed51dc2b497748a2b no-git.patch
+9a2dcc1bb939cbce1401388dd4aa6c4a8cf83c1f0801cb3836beab3feaeab751ddafa1af972b0ff160989e38081bb157925d2502cc837f70204c56366c156728 format-security.patch
"
diff --git a/testing/libcork/format-security.patch b/testing/libcork/format-security.patch
new file mode 100644
index 00000000000..af516ea20f7
--- /dev/null
+++ b/testing/libcork/format-security.patch
@@ -0,0 +1,13 @@
+diff --git a/tests/helpers.h b/tests/helpers.h
+index 8be1d40..efc7ea5 100644
+--- a/tests/helpers.h
++++ b/tests/helpers.h
+@@ -66,7 +66,7 @@ setup_allocator(void)
+ do { \
+ call; \
+ if (cork_error_occurred()) { \
+- ck_abort_msg(cork_error_message()); \
++ ck_abort_msg("%s", cork_error_message()); \
+ } \
+ } while (0)
+
diff --git a/testing/libcork/no-git.patch b/testing/libcork/no-git.patch
new file mode 100644
index 00000000000..edca647f66a
--- /dev/null
+++ b/testing/libcork/no-git.patch
@@ -0,0 +1,33 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 1e236f9..3f9a494 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -42,17 +42,17 @@ else(BASE_VERSION MATCHES "^([0-9]+)\\.([0-9]+)\\.([0-9]+)(-dev)?$")
+ message(FATAL_ERROR "Invalid version number: ${VERSION}")
+ endif(BASE_VERSION MATCHES "^([0-9]+)\\.([0-9]+)\\.([0-9]+)(-dev)?$")
+
+-execute_process(
+- COMMAND git rev-parse HEAD
+- WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
+- RESULT_VARIABLE GIT_SHA1_RESULT
+- OUTPUT_VARIABLE GIT_SHA1
+- OUTPUT_STRIP_TRAILING_WHITESPACE
+-)
+-if(GIT_SHA1_RESULT)
+- message(FATAL_ERROR
+- "Cannot determine git commit: " ${GIT_SHA1_RESULT})
+-endif(GIT_SHA1_RESULT)
++# execute_process(
++# COMMAND git rev-parse HEAD
++# WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
++# RESULT_VARIABLE GIT_SHA1_RESULT
++# OUTPUT_VARIABLE GIT_SHA1
++# OUTPUT_STRIP_TRAILING_WHITESPACE
++# )
++# if(GIT_SHA1_RESULT)
++# message(FATAL_ERROR
++# "Cannot determine git commit: " ${GIT_SHA1_RESULT})
++# endif(GIT_SHA1_RESULT)
+
+ #-----------------------------------------------------------------------
+ # Check for building on Tilera
diff --git a/testing/libcorkipset/APKBUILD b/testing/libcorkipset/APKBUILD
index 4eedace04a9..8c5d6b839ba 100644
--- a/testing/libcorkipset/APKBUILD
+++ b/testing/libcorkipset/APKBUILD
@@ -1,9 +1,9 @@
# Contributor: Leo <thinkabit.ukim@gmail.com>
-# Maintainer:
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=libcorkipset
pkgver=1.1.1
_debver=20150311-8
-pkgrel=3
+pkgrel=4
pkgdesc="Small C helper library for storing sets of IPv4 and IPv6 addresses"
url="https://github.com/rogers0/libcorkipset"
arch="all"
diff --git a/testing/libcotp/APKBUILD b/testing/libcotp/APKBUILD
index 61c8033e0d7..a0a5f8fcb63 100644
--- a/testing/libcotp/APKBUILD
+++ b/testing/libcotp/APKBUILD
@@ -1,19 +1,19 @@
# Contributor: Michał Polański <michal@polanski.me>
# Maintainer: Michał Polański <michal@polanski.me>
pkgname=libcotp
-pkgver=1.2.6
+pkgver=2.0.2
pkgrel=0
pkgdesc="Library for generating TOTP and HOTP"
url="https://github.com/paolostivanin/libcotp"
license="Apache-2.0"
arch="all"
-makedepends="cmake libgcrypt-dev libbaseencode-dev"
+makedepends="cmake libgcrypt-dev samurai"
subpackages="$pkgname-dev"
source="https://github.com/paolostivanin/libcotp/archive/v$pkgver/libcotp-$pkgver.tar.gz"
options="!check" # needs criterion
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib
@@ -25,5 +25,5 @@ package() {
}
sha512sums="
-4feda16035aae63aaff3c66c12d69bcd227cc40cafc551fe97dbcc36e338b0d6e2b80d97716946b24a526077e9ab90ad75c29f010ddee7c448668e80721b5f61 libcotp-1.2.6.tar.gz
+c630ba7787aef66cdd8bf5dad8b439165795a6c875a850b6ffc4462a1f414c4d81a7db784831f68ec7fce6c9f393fd857cb84afb0c63527a5b4be85ca14896d9 libcotp-2.0.2.tar.gz
"
diff --git a/testing/libctl/APKBUILD b/testing/libctl/APKBUILD
index 12c616ab6a3..94416222c5b 100644
--- a/testing/libctl/APKBUILD
+++ b/testing/libctl/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer:
pkgname=libctl
pkgver=4.5.1
-pkgrel=0
+pkgrel=1
pkgdesc="Guile-based library implementing flexible control files for scientific simulations"
url="https://libctl.readthedocs.io/"
arch="all"
diff --git a/testing/libcyaml/APKBUILD b/testing/libcyaml/APKBUILD
index cd517a2bd3c..f0458de0652 100644
--- a/testing/libcyaml/APKBUILD
+++ b/testing/libcyaml/APKBUILD
@@ -1,14 +1,14 @@
# Contributor: Grigory Kirillov <txgk@bk.ru>
-# Maintainer: Grigory Kirillov <txgk@bk.ru>
+# Maintainer: Sergiy Stupar <owner@sestolab.pp.ua>
pkgname=libcyaml
-pkgver=1.3.1
-pkgrel=0
+pkgver=1.4.1
+pkgrel=2
pkgdesc="C library for reading and writing YAML"
url="https://github.com/tlsa/libcyaml"
arch="all"
license="ISC"
makedepends="yaml-dev"
-subpackages="$pkgname-static $pkgname-dev $pkgname-doc"
+subpackages="$pkgname-static $pkgname-doc $pkgname-dev"
source="https://github.com/tlsa/libcyaml/archive/v$pkgver/libcyaml-v$pkgver.tar.gz"
build() {
@@ -28,5 +28,5 @@ package() {
}
sha512sums="
-2daa380e579836aae78d442323ca4a13125ba0ac7be2a0ad9fc79d05b5b3c14a4c5041ee50c5c28ed71793d7748e50d68ac3c65cf856afe2614d098ad62b6e88 libcyaml-v1.3.1.tar.gz
+ecbb8f9e7091027fe288b3a2c8c995cdea83b5c7fe208a87db3a8e1b72b7201c42adfb1b9bc6628d478b66be9d1f7c8dd134358ce43fa6d6cc6c9d20f6452a36 libcyaml-v1.4.1.tar.gz
"
diff --git a/testing/libcypher-parser/APKBUILD b/testing/libcypher-parser/APKBUILD
deleted file mode 100644
index d2b02dd18e5..00000000000
--- a/testing/libcypher-parser/APKBUILD
+++ /dev/null
@@ -1,61 +0,0 @@
-# Contributor: Chris Leishman <chris@leishman.org>
-# Maintainer: Chris Leishman <chris@leishman.org>
-pkgname=libcypher-parser
-pkgver=0.6.2
-pkgrel=0
-pkgdesc="Parsing library for the Cypher query language"
-url="https://github.com/cleishm/libcypher-parser"
-arch="all"
-license="Apache-2.0"
-makedepends="$depends_dev automake autoconf libtool check-dev doxygen pkgconfig"
-subpackages="$pkgname-dev $pkgname-doc::noarch cypher-lint cypher-lint-doc::noarch"
-source="https://github.com/cleishm/libcypher-parser/releases/download/v$pkgver/libcypher-parser-$pkgver.tar.gz"
-
-build() {
- ./configure \
- --prefix=/usr
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- mkdir -p "$pkgdir"/usr/share/doc/libcypher-parser
-}
-
-doc() {
- depends="$depends_doc"
- pkgdesc="$pkgdesc (documentation)"
- install_if="docs $pkgname=$pkgver-r$pkgrel"
-
- if [ "$subpkgname" = "libcypher-parser-doc" ]; then
- mkdir -p "$subpkgdir"/usr/share
- mv "$pkgdir"/usr/share/doc "$subpkgdir"/usr/share/
- elif [ "$subpkgname" = "cypher-lint-doc" ]; then
- mkdir -p "$subpkgdir"/usr/share
- mv "$pkgdir"/usr/share/man "$subpkgdir"/usr/share/
- find "$subpkgdir"/usr/share/man/ -type f | xargs gzip -9
- else
- die "Unknown doc package $pkgname"
- fi
-
- # remove if empty, ignore error (not empty)
- rmdir "$pkgdir"/usr/share "$pkgdir"/usr || true 2>/dev/null
- return 0
-}
-
-lint() {
- pkgdesc="Lint tool for the Cypher query language"
-
- mkdir -p "$subpkgdir"/usr
- mv "$pkgdir"/usr/bin "$subpkgdir"/usr/
-
- # remove if empty, ignore error (not empty)
- rmdir "$pkgdir"/usr/bin "$pkgdir"/usr || true 2>/dev/null
- return 0
-}
-
-sha512sums="71d1fd966c2d7e5637be1b59a17483cf8a782aa75582f4dcc64e0ea7b3f50c80cbf92cf07df2c601aeaa1186910a0e3b529c58da1318a34357f8c860f8e97361 libcypher-parser-0.6.2.tar.gz"
diff --git a/testing/libdecor/APKBUILD b/testing/libdecor/APKBUILD
deleted file mode 100644
index 294ced14f6f..00000000000
--- a/testing/libdecor/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Contributor: Michał Polański <michal@polanski.me>
-# Maintainer: Michał Polański <michal@polanski.me>
-pkgname=libdecor
-pkgver=0.1.0
-pkgrel=0
-pkgdesc="Client-side decorations library for Wayland clients"
-url="https://gitlab.gnome.org/jadahl/libdecor"
-license="MIT"
-arch="all"
-makedepends="
- meson
- cairo-dev
- dbus-dev
- pango-dev
- wayland-dev
- wayland-protocols
- "
-subpackages="$pkgname-dev"
-source="https://gitlab.gnome.org/jadahl/libdecor/-/archive/$pkgver/libdecor-$pkgver.tar.gz"
-options="!check" # no test suite
-
-build() {
- abuild-meson \
- -Ddemo=false \
- . output
- meson compile -C output
-}
-
-package() {
- DESTDIR="$pkgdir" meson install --no-rebuild -C output
-}
-
-sha512sums="
-7e228b276efc98894085398ac8b4a37fb23a8ce3dfbb16c3d664d833f99e7d6365c43276880ef36d21d6471e1cdcae1925e6daaf95b4904b5701d103e023a916 libdecor-0.1.0.tar.gz
-"
diff --git a/testing/libdng/APKBUILD b/testing/libdng/APKBUILD
new file mode 100644
index 00000000000..e1f0abd732e
--- /dev/null
+++ b/testing/libdng/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: Martijn Braam <martijn@brixit.nl>
+# Maintainer: Martijn Braam <martijn@brixit.nl>
+pkgname=libdng
+pkgver=0.1.1
+pkgrel=0
+pkgdesc="Interface library between libtiff and the world to make sure the output is valid DNG"
+url="https://gitlab.com/megapixels-org/libdng"
+arch="all !s390x" # Libtiff does weird things on s390x
+license="MIT"
+source="https://gitlab.com/megapixels-org/libdng/-/archive/$pkgver/libdng-$pkgver.tar.gz"
+makedepends="cmake linux-headers meson tiff-dev scdoc"
+subpackages="$pkgname-doc $pkgname-dev $pkgname-utils"
+
+build() {
+ abuild-meson . output
+ meson compile ${JOBS:+-j ${JOBS}} -C output
+}
+
+check() {
+ meson test --no-rebuild -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+ install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
+
+utils() {
+ pkgdesc="DNG manipulation utlities using libdng"
+ amove usr/bin
+}
+
+
+sha512sums="
+e8f8f0d78ff89fc50e2fde1787d528946c171b43b1056eecd645904f93ac57e52a516361667628a1457783169703649a7aebd496c054cd38751f9de21e84be1d libdng-0.1.1.tar.gz
+"
diff --git a/testing/libdotconf/APKBUILD b/testing/libdotconf/APKBUILD
deleted file mode 100644
index dcf0b336f23..00000000000
--- a/testing/libdotconf/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Contributor: Blake Oliver <oliver22213@me.com>
-# Maintainer: Blake Oliver <oliver22213@me.com>
-pkgname=libdotconf
-pkgver=1.3
-pkgrel=0
-pkgdesc="dot.conf configuration file parser"
-url="https://github.com/williamh/dotconf"
-arch="all"
-license="LGPL-2.1-only"
-makedepends="autoconf automake libtool"
-subpackages="$pkgname-dev $pkgname-doc"
-source="https://github.com/williamh/dotconf/archive/v$pkgver/libdotconf-$pkgver.tar.gz"
-builddir="$srcdir/dotconf-$pkgver"
-options="!check" # No test suite
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var
- make
-}
-
-prepare() {
- autoreconf -fi
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="ccd806685879e2438efaa06949cd685af8bd318d38111babf8c289134b90d01bc2857277f2aa01549a1ffe8a2f2d5bbb0685f46de0d7b987412350af8a28d6d5 libdotconf-1.3.tar.gz"
diff --git a/testing/libeantic/APKBUILD b/testing/libeantic/APKBUILD
new file mode 100644
index 00000000000..4e5ab08e273
--- /dev/null
+++ b/testing/libeantic/APKBUILD
@@ -0,0 +1,73 @@
+# Contributor: Jakob Meier <comcloudway@ccw.icu>
+# Maintainer: Jakob Meier <comcloudway@ccw.icu>
+pkgname=libeantic
+pkgver=2.0.2
+pkgrel=0
+pkgdesc="Embedded algebraic number fields"
+url="https://github.com/flatsurf/e-antic"
+arch="all !s390x" # flint-dev
+license="LGPL-3.0-or-later"
+makedepends="
+ autoconf
+ automake
+ boost-dev
+ flint-dev
+ gmp-dev
+ libantic-dev
+ libarb-dev
+ libtool
+ mpfr-dev
+ py3-setuptools
+ "
+subpackages="$pkgname-dev"
+# todo
+# subpackages="$pkgname-dev py3-pyeantic:py3"
+source="e-antic-$pkgver.tar.gz::https://github.com/flatsurf/e-antic/releases/download/$pkgver/e-antic-$pkgver.tar.gz
+ t-init-test.patch
+ "
+builddir="$srcdir/e-antic-$pkgver"
+
+build() {
+ # better math opts
+ export CFLAGS="$CFLAGS -O3 -flto=auto"
+ export CXXFLAGS="$CXXFLAGS -O3 -flto=auto"
+
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var \
+ --without-benchmark \
+ --without-byexample \
+ --without-pytest \
+ --without-doc \
+ --disable-dependency-tracking \
+ --disable-static
+
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+
+ # requires py3-cppyy
+ rm -r "$pkgdir"/usr/lib/python3*
+}
+
+py3() {
+ pkgdesc="$pkgdesc (python module)"
+ depends="python3 py3-cppyy"
+
+ amove usr/lib/python*
+}
+
+sha512sums="
+2c13e8498d3fa21265749f3cc9448737ef0c55cc4f2bf71834e9a6c6816280782cd96e96f4cb33d5b4c0c14208f9a9004bdf21fb4b70dd39425cce6efbe111ee e-antic-2.0.2.tar.gz
+ecb0c89612c1ab2c7d2c8a2feaacf94958994f34e6ce664dd6c9e054d0b244a0f6e9e510149d98b7603b7003e0532f81d43d1fb17dcb8106e540d0c0b060ef63 t-init-test.patch
+"
diff --git a/testing/libeantic/t-init-test.patch b/testing/libeantic/t-init-test.patch
new file mode 100644
index 00000000000..41974ab6463
--- /dev/null
+++ b/testing/libeantic/t-init-test.patch
@@ -0,0 +1,20 @@
+diff --git a/libeantic/test/Makefile.am b/libeantic/test/Makefile.am
+index ce01fb7..759f7c1 100644
+--- a/libeantic/test/Makefile.am
++++ b/libeantic/test/Makefile.am
+@@ -25,7 +25,6 @@ check_PROGRAMS = \
+ fmpz_poly_extra/t-scale_0_1_fmpq \
+ fmpz_poly_extra/t-set_str_pretty \
+ fmpz_poly_extra/t-squarefree_part \
+- renf/t-init \
+ renf/t-init_nth_root_fmpq \
+ renf/t-randtest \
+ renf/t-real_embeddings \
+@@ -83,7 +82,6 @@ fmpz_poly_extra_t_randtest_irreducible_SOURCES = fmpz_poly_extra/t-randtest_irre
+ fmpz_poly_extra_t_scale_0_1_fmpq_SOURCES = fmpz_poly_extra/t-scale_0_1_fmpq.c
+ fmpz_poly_extra_t_set_str_pretty_SOURCES = fmpz_poly_extra/t-set_str_pretty.c
+ fmpz_poly_extra_t_squarefree_part_SOURCES = fmpz_poly_extra/t-squarefree_part.c
+-renf_t_init_SOURCES = renf/t-init.c
+ renf_t_init_nth_root_fmpq_SOURCES = renf/t-init_nth_root_fmpq.c
+ renf_t_randtest_SOURCES = renf/t-randtest.c
+ renf_t_real_embeddings_SOURCES = renf/t-real_embeddings.c
diff --git a/testing/libeatmydata/18.patch b/testing/libeatmydata/18.patch
deleted file mode 100644
index 9858ac40ad9..00000000000
--- a/testing/libeatmydata/18.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-Upstream: https://github.com/stewartsmith/libeatmydata/pull/18
-Reason: Libeatmydata redefines open and open64 so it can make those a NO_OP
-for tests. Musl also defines these in fnctl.h, so we have to undefine them
-to not get conflicting definitions
-diff --git a/libeatmydata/libeatmydata.c b/libeatmydata/libeatmydata.c
-index 8fe1b6a..95d940b 100644
---- a/libeatmydata/libeatmydata.c
-+++ b/libeatmydata/libeatmydata.c
-@@ -131,6 +131,8 @@ void LIBEATMYDATA_API sync(void)
- (*libc_sync)();
- }
-
-+#undef open
-+
- int LIBEATMYDATA_API open(const char* pathname, int flags, ...)
- {
- va_list ap;
-@@ -157,6 +159,8 @@ int LIBEATMYDATA_API open(const char* pathname, int flags, ...)
- return (*libc_open)(pathname,flags,mode);
- }
-
-+#undef open64
-+
- #ifndef __USE_FILE_OFFSET64
- int LIBEATMYDATA_API open64(const char* pathname, int flags, ...)
- {
diff --git a/testing/libeatmydata/APKBUILD b/testing/libeatmydata/APKBUILD
deleted file mode 100644
index 4ee571e85f0..00000000000
--- a/testing/libeatmydata/APKBUILD
+++ /dev/null
@@ -1,46 +0,0 @@
-# Contributor: Rasmus Thomsen <oss@cogitri.dev>
-# Maintainer: Rasmus Thomsen <oss@cogitri.dev>
-pkgname=libeatmydata
-pkgver=105
-pkgrel=0
-pkgdesc="An LD_PRELOAD library that disables all forms of writing data safely to disk"
-url="https://www.flamingspork.com/projects/libeatmydata/"
-arch="all"
-license="GPL-3.0-or-later"
-makedepends="autoconf automake libtool"
-checkdepends="strace"
-source="https://github.com/stewartsmith/libeatmydata/archive/libeatmydata-$pkgver/libeatmydata-$pkgver.tar.gz
- 18.patch
- autoconf-2.71.patch"
-builddir="$srcdir/$pkgname-$pkgname-$pkgver"
-
-prepare() {
- default_prepare
-
- autoreconf -fi
-}
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var
- make
-}
-
-check() {
- make check-debug
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-225453a12913c08fd91371e3546a256e102438f9a88e7f51726dd5befbcf6c396850c039a38ca3d939558f0369df23d232e24b487564cdf86562645b8b5f92d6 libeatmydata-105.tar.gz
-8fff381b392cf7ee3faf39c41e20d3f152529ec4b2d4ffb503695ff8dce49b86872cbcc56001b2160b617ceb76bb4d1d389939922b1d539413a00fea35904b2a 18.patch
-4eff62d7d14e55e426d98b8ca7be006fd5fdbe8c5c9715d3edb7d8d28694f6827a972d568bfbd797cc2d88af28540c595a1a43102220ebd65059c1aad22958e0 autoconf-2.71.patch
-"
diff --git a/testing/libeatmydata/autoconf-2.71.patch b/testing/libeatmydata/autoconf-2.71.patch
deleted file mode 100644
index 0238fc7e9a8..00000000000
--- a/testing/libeatmydata/autoconf-2.71.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -urN libeatmydata-libeatmydata-105.orig/m4/pandora_canonical.m4 libeatmydata-libeatmydata-105/m4/pandora_canonical.m4
---- libeatmydata-libeatmydata-105.orig/m4/pandora_canonical.m4 2021-07-26 23:33:42.433846352 -0600
-+++ libeatmydata-libeatmydata-105/m4/pandora_canonical.m4 2021-07-26 23:34:18.850708125 -0600
-@@ -72,8 +72,6 @@
- ])
- ])
-
-- AC_CONFIG_MACRO_DIR([m4])
--
- m4_if(m4_substr(m4_esyscmd(test -d src && echo 0),0,1),0,[
- AC_CONFIG_HEADERS([src/config.h])
- ],[
diff --git a/testing/libebur128/APKBUILD b/testing/libebur128/APKBUILD
deleted file mode 100644
index 609f520a526..00000000000
--- a/testing/libebur128/APKBUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-# Contributor: psykose <alice@ayaya.dev>
-# Maintainer: psykose <alice@ayaya.dev>
-pkgname=libebur128
-pkgver=1.2.6
-pkgrel=0
-pkgdesc="Library implementing the EBU R128 loudness standard"
-url="https://github.com/jiixyj/libebur128"
-arch="all"
-license="MIT"
-options="!check" # needs extra unpackaged wav files
-makedepends="cmake"
-subpackages="$pkgname-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/jiixyj/libebur128/archive/refs/tags/v$pkgver.tar.gz"
-
-build() {
- cmake -B build \
- -DCMAKE_BUILD_TYPE=MinSizeRel \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DCMAKE_VERBOSE_MAKEFILE=1 \
- -DENABLE_TESTS=OFF
- cmake --build build
-
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-
-sha512sums="
-ab188c6d32cd14613119258313a8a3fb1167b55501c9f5b6d3ba738d674bc58f24ac3034c23d9730ed8dc3e95a23619bfb81719e4c79807a9a16c1a5b3423582 libebur128-1.2.6.tar.gz
-"
diff --git a/testing/libecap/APKBUILD b/testing/libecap/APKBUILD
index 9be986958d0..d2ebea40d4e 100644
--- a/testing/libecap/APKBUILD
+++ b/testing/libecap/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Roger Newman <roger.newman@riseup.net>
pkgname=libecap
pkgver=1.0.1
-pkgrel=0
+pkgrel=1
pkgdesc="API for implementing ICAP content analysis and adaptation"
options="!check" # No testsuite
url="http://www.e-cap.org/"
diff --git a/testing/libemf2svg/APKBUILD b/testing/libemf2svg/APKBUILD
index ed8d8fd8283..ce1ba3017d2 100644
--- a/testing/libemf2svg/APKBUILD
+++ b/testing/libemf2svg/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Leonardo Arena <rnalrd@alpinelinux.org>
pkgname=libemf2svg
pkgver=1.1.0
-pkgrel=1
+pkgrel=2
pkgdesc="MS EMF (Enhanced Metafile) to SVG conversion library"
url="https://github.com/kakwa/libemf2svg"
arch="all"
diff --git a/testing/liberasurecode/APKBUILD b/testing/liberasurecode/APKBUILD
index 51e7e0058b4..845dc916b24 100644
--- a/testing/liberasurecode/APKBUILD
+++ b/testing/liberasurecode/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Ehud Kaldor <ehud@unfairfunction.org>
# Maintainer: Ehud Kaldor <ehud@unfairfunction.org>
pkgname=liberasurecode
-pkgver=1.6.2
-pkgrel=0
+pkgver=1.6.3
+pkgrel=1
pkgdesc="Erasure Code API library written in C with pluggable Erasure Code backends"
url="https://github.com/openstack/liberasurecode"
arch="all"
@@ -36,4 +36,6 @@ package() {
make DESTDIR="$pkgdir" install
}
-sha512sums="027def96275eac67b32b2e3e7144f3042acbcafe5b27b353eb5944e73b55d34931a11324018f131b2acb381007cc79e31a5afd7390fdc517ed30ee592d6f90d5 liberasurecode-1.6.2.tar.gz"
+sha512sums="
+d5daa962324ef19fd195cfa842ec375d9dd5e62e3391b4a1cbf49a850b852b18cfc9be929ab18786d6b839139f6260d5cb4c88a0ba440c06b0e54e04ffb1bee1 liberasurecode-1.6.3.tar.gz
+"
diff --git a/testing/libetebase/APKBUILD b/testing/libetebase/APKBUILD
deleted file mode 100644
index 3add73f04f7..00000000000
--- a/testing/libetebase/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Contributor: pcworld <0188801@gmail.com>
-# Maintainer:
-pkgname=libetebase
-pkgver=0.5.1
-pkgrel=0
-pkgdesc="Etebase C library providing end-to-end encrypted backend as a service"
-url="https://github.com/etesync/libetebase"
-# s390x and riscv64 blocked by rust/cargo
-arch="all !s390x !riscv64"
-license="BSD-3-Clause"
-makedepends="openssl-dev libsodium-dev cargo"
-subpackages="$pkgname-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/etesync/libetebase/archive/refs/tags/v$pkgver.tar.gz"
-options="!check"
-
-export SODIUM_USE_PKG_CONFIG=1
-
-build() {
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-
- # Move the solink-named library to a full path then create
- # symlinks, soname is already set but upstream didn't create
- # these
- # See: https://github.com/etesync/libetebase/issues/4
- mv "$pkgdir/usr/lib/libetebase.so" "$pkgdir/usr/lib/libetebase.so.0.0.0"
- ln -s libetebase.so.0.0.0 "$pkgdir/usr/lib/libetebase.so.0"
- ln -s libetebase.so.0.0.0 "$pkgdir/usr/lib/libetebase.so"
-}
-
-sha512sums="
-73a6c861bd6adfef80fa7bc90b1f229351916ad8ecb508d27756ad12d9e653641531efcd0e1f85c5fc3b0b15c27c8c20a4efcf6a811cb331fb456a65cc19b9eb libetebase-0.5.1.tar.gz
-"
diff --git a/testing/libexosip2/APKBUILD b/testing/libexosip2/APKBUILD
deleted file mode 100644
index 9a5b4be4a5c..00000000000
--- a/testing/libexosip2/APKBUILD
+++ /dev/null
@@ -1,48 +0,0 @@
-# Maintainer: David Sugar <tychosoft@gmail.com>
-# Contributor: David Sugar <tychosoft@gmail.com>
-pkgname=libexosip2
-# Needs to be kept in sync with libosip2
-pkgver=5.3.0
-pkgrel=0
-pkgdesc="Extended osip2 library"
-url="http://savannah.nongnu.org/projects/exosip"
-arch="all"
-license="GPL-2.0-or-later"
-makedepends="
- autoconf
- automake
- libtool
- c-ares-dev
- libosip2-dev
- openssl-dev
-"
-options="libtool"
-subpackages="$pkgname-dev"
-source="http://download.savannah.nongnu.org/releases/exosip/libexosip2-$pkgver.tar.gz"
-
-prepare() {
- default_prepare
-
- update_config_sub
-}
-
-build() {
- ./autogen.sh
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --disable-tools \
- --enable-pthread \
- --with-gnu-ld \
- --disable-static
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-546491224d2ac542c032d704be0e08ef0a08dcf74aa706ad40bd0d30d8e3c28419139d14fa2c31f601e19879d00b2b0cea65c08edecbf560b3f5599ef0335828 libexosip2-5.3.0.tar.gz
-"
diff --git a/testing/libfaketime/APKBUILD b/testing/libfaketime/APKBUILD
deleted file mode 100644
index 58c2b9fadc4..00000000000
--- a/testing/libfaketime/APKBUILD
+++ /dev/null
@@ -1,29 +0,0 @@
-# Contributor: Rasmus Thomsen <oss@cogitri.dev>
-# Maintainer: Rasmus Thomsen <oss@cogitri.dev>
-pkgname=libfaketime
-pkgver=0.9.10
-pkgrel=0
-pkgdesc="intercept system calls related to time and return user-defined values"
-options="!check" # https://github.com/wolfcw/libfaketime/issues/259
-url="https://github.com/wolfcw/libfaketime"
-arch="all"
-makedepends="coreutils"
-license="GPL-2.0-or-later"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/wolfcw/libfaketime/archive/v$pkgver.tar.gz"
-
-build() {
- make
-}
-
-check() {
- make -j1 test
-}
-
-package() {
- make DESTDIR="$pkgdir" PREFIX="/usr" install
-}
-
-sha512sums="
-07c431bee21e31343b680d1322dd529ea276e3cc4dbec61646c12bf5d0263163faf6186efeb36b199e24b655578a493c43e3b7a7acf8eba8b9ff84a1e94d618b libfaketime-0.9.10.tar.gz
-"
diff --git a/testing/libfishsound/APKBUILD b/testing/libfishsound/APKBUILD
index c39814b02ab..042ab8462fb 100644
--- a/testing/libfishsound/APKBUILD
+++ b/testing/libfishsound/APKBUILD
@@ -9,7 +9,7 @@ arch="all"
license="BSD-3-Clause"
makedepends="libvorbis-dev speex"
subpackages="$pkgname-dev $pkgname-doc"
-source="http://downloads.xiph.org/releases/libfishsound/libfishsound-$pkgver.tar.gz"
+source="https://downloads.xiph.org/releases/libfishsound/libfishsound-$pkgver.tar.gz"
prepare() {
default_prepare
diff --git a/testing/libfm-qt/APKBUILD b/testing/libfm-qt/APKBUILD
deleted file mode 100644
index 37ef7c9f35e..00000000000
--- a/testing/libfm-qt/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=libfm-qt
-pkgver=1.1.0
-pkgrel=0
-pkgdesc="Qt port of libfm"
-url="https://github.com/lxqt/libfm-qt"
-arch="all !s390x" # s390x blocked by libfm
-license="LGPL-2.0-or-later"
-makedepends="
- cmake lxqt-build-tools qt5-qtx11extras-dev qt5-qttools-dev
- menu-cache-dev libexif-dev libfm-dev qt5-qtbase-dev
- "
-subpackages="$pkgname-dev"
-options="!check" # No testsuite
-source="https://github.com/lxqt/libfm-qt/releases/download/$pkgver/libfm-qt-$pkgver.tar.xz"
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- $CMAKE_CROSSOPTS .
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --build build --target install
-}
-sha512sums="
-6717bc3fd3a2795389071e4dbfba2e73f3abfeafce8a583f99b3281e60347430db48246eb29796c5b7647b35b064824e90fc3a286547288798a1c6da3a3f5137 libfm-qt-1.1.0.tar.xz
-"
diff --git a/testing/libfossil/APKBUILD b/testing/libfossil/APKBUILD
new file mode 100644
index 00000000000..642210a3dc3
--- /dev/null
+++ b/testing/libfossil/APKBUILD
@@ -0,0 +1,46 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=libfossil
+pkgver=0.20240211.1220
+_fslhash=8caf0ac36e
+pkgrel=0
+pkgdesc="Unofficial Fossil SCM library"
+url="https://fossil.wanderinghorse.net/r/libfossil"
+arch="all !ppc64le !riscv64 !s390x" # ftbfs
+license="BSD-2-Clause"
+makedepends="bash tcl zlib-dev"
+subpackages="$pkgname-apps $pkgname-dev"
+source="https://fossil.wanderinghorse.net/r/libfossil/tarball/$_fslhash/libfossil-$_fslhash.tar.gz"
+builddir="$srcdir/$pkgname-$_fslhash"
+options="!check" # no tests provided
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var \
+ --no-c++ \
+ --no-debug \
+ --no-fnc
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+
+ install -Dvm644 include/*.h -t "$pkgdir"/usr/include/
+ install -Dvm644 include/fossil-scm/*.h -t "$pkgdir"/usr/include/fossil-scm/
+}
+
+apps() {
+ pkgdesc="$pkgdesc (command-line apps)"
+
+ amove usr/bin
+}
+
+sha512sums="
+61a5d4f358ff786db5ddbfafb545b040813597b9e6fb887135cb2a4f61039eeaa4ba6a7231347e642e6809a1715e4cae331f006e078685fce1ffc26b9701be11 libfossil-8caf0ac36e.tar.gz
+"
diff --git a/testing/libfyaml/APKBUILD b/testing/libfyaml/APKBUILD
index 1766a92ed43..d1ac2689ac9 100644
--- a/testing/libfyaml/APKBUILD
+++ b/testing/libfyaml/APKBUILD
@@ -1,17 +1,16 @@
# Contributor: Lucas Ramage <ramage.lucas@protonmail.com>
# Maintainer: Lucas Ramage <ramage.lucas@protonmail.com>
pkgname=libfyaml
-pkgver=0.7.12
+pkgver=0.9
pkgrel=0
pkgdesc="Fully feature complete YAML parser and emitter"
url="https://github.com/pantoniou/libfyaml"
arch="all"
license="MIT"
-makedepends="bash libtool m4"
+makedepends="bash libtool linux-headers m4"
checkdepends="check git"
subpackages="$pkgname-dev $pkgname-doc"
source="https://github.com/pantoniou/libfyaml/releases/download/v$pkgver/libfyaml-$pkgver.tar.gz"
-options="!check" # tests failing, (See: https://github.com/pantoniou/libfyaml/issues/20)
build() {
./configure \
@@ -35,5 +34,5 @@ check() {
}
sha512sums="
-568beadf007d002babd760abbf8153ef8c4191dface276d8614b30ffc0c9606eb7cffc2f63047042f843da5ded7ef4b302b36a36ed19a6f38e2c6e22f310aa29 libfyaml-0.7.12.tar.gz
+95979361ed50a46acc6da698e4750562f6e3e46aa5d050180225d93afb74929981d9c1d1ca3b6a77fe21a1546a68a9e3df17cdfef5f93257ad5d0c7ad03ae2eb libfyaml-0.9.tar.gz
"
diff --git a/testing/libgdiplus/APKBUILD b/testing/libgdiplus/APKBUILD
deleted file mode 100644
index 5854727b2e5..00000000000
--- a/testing/libgdiplus/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Contributor: Carlo Landmeter <clandmeter@alpinelinux.org>
-# Maintainer:
-pkgname=libgdiplus
-pkgver=6.1
-pkgrel=0
-pkgdesc="Open Source Implementation of the GDI+ API"
-url="https://www.mono-project.com/"
-arch="all"
-license="MIT"
-depends_dev="tiff-dev cairo-dev libexif-dev giflib-dev glib-dev pango-dev"
-makedepends="$depends_dev"
-subpackages="$pkgname-dev"
-source="https://download.mono-project.com/sources/libgdiplus/libgdiplus-$pkgver.tar.gz
- "
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --infodir=/usr/share/info \
- --localstatedir=/var \
- --with-pango
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-7f176d38024d5bde4a825ad00b907006f7dd3ff174e12aba6e91df0b624431cc9b536f1bcf206998bad11f6d03e6fe5122710591f58877de0f2c08e8cb4e46cd libgdiplus-6.1.tar.gz
-"
diff --git a/testing/libgivaro/APKBUILD b/testing/libgivaro/APKBUILD
new file mode 100644
index 00000000000..2a691dc010a
--- /dev/null
+++ b/testing/libgivaro/APKBUILD
@@ -0,0 +1,41 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
+pkgname=libgivaro
+pkgver=4.2.0
+pkgrel=2
+pkgdesc="C++ library for arithmetic and algebraic computations"
+url="https://casys.gricad-pages.univ-grenoble-alpes.fr/givaro"
+arch="all"
+license="CECILL-B"
+makedepends="gmp-dev"
+source="https://github.com/linbox-team/givaro/releases/download/v$pkgver/givaro-$pkgver.tar.gz
+ gcc13.patch
+ "
+subpackages="$pkgname-static $pkgname-dev"
+builddir="$srcdir/givaro-$pkgver"
+
+build() {
+ export CFLAGS="${CFLAGS/-Os/-O3}" # gotta go fast
+
+ ./configure \
+ --target="$CTARGET" \
+ --build="$CBUILD" \
+ --host="$CHOST" \
+ --prefix=/usr \
+ --program-prefix=
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+ rm -r "${pkgdir:?}"/usr/share
+}
+
+sha512sums="
+1a3280563181710d364b77e1efe8c8f52ce3119a08b35f329cfd98136a742431b7e9d102289448d337797f815439682d0cfce1567a5a88d5851b244673a84486 givaro-4.2.0.tar.gz
+6a6c02d78c287d48e10b8a9c5b294867fca1e523f28b55e6ee8596ada014360adbb026eef3282e816532c40a0e803010a870a1f62a990aaeb470507e7f191645 gcc13.patch
+"
diff --git a/testing/libgivaro/gcc13.patch b/testing/libgivaro/gcc13.patch
new file mode 100644
index 00000000000..9541907033f
--- /dev/null
+++ b/testing/libgivaro/gcc13.patch
@@ -0,0 +1,12 @@
+diff --git a/src/library/poly1/givdegree.h b/src/library/poly1/givdegree.h
+index 3753a42..c34cc2a 100644
+--- a/src/library/poly1/givdegree.h
++++ b/src/library/poly1/givdegree.h
+@@ -19,6 +19,7 @@
+ #ifndef __GIVARO_poly1degree_H
+ #define __GIVARO_poly1degree_H
+
++#include <cstdint>
+ #include <iostream>
+
+ namespace Givaro {
diff --git a/testing/libgme/APKBUILD b/testing/libgme/APKBUILD
deleted file mode 100644
index 439e7775da3..00000000000
--- a/testing/libgme/APKBUILD
+++ /dev/null
@@ -1,38 +0,0 @@
-# Contributor: Díaz Urbaneja Diego <sodomon2@gmail.com>
-# Maintainer: Díaz Urbaneja Diego <sodomon2@gmail.com>
-pkgname=libgme
-pkgver=0.6.3
-pkgrel=1
-pkgdesc="Video game music file emulation/playback library"
-url="https://bitbucket.org/mpyne/game-music-emu/wiki/Home"
-arch="all"
-license="LGPL-2.1-only"
-makedepends="cmake zlib-dev"
-subpackages="$pkgname-dev"
-options="!check" # make check not implemented
-source="$pkgname-$pkgver.tar.xz::https://bitbucket.org/mpyne/game-music-emu/downloads/game-music-emu-$pkgver.tar.xz
- ppc-musl.patch"
-builddir="$srcdir/game-music-emu-$pkgver"
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
-
- cmake -B build \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DBUILD_SHARED_LIBS=True \
- -DCMAKE_BUILD_TYPE=None \
- -DCMAKE_CXX_FLAGS="$CXXFLAGS" \
- -DCMAKE_C_FLAGS="$CFLAGS" \
- -DENABLE_UBSAN=OFF \
- $CMAKE_CROSSOPTS
- make -C build
-}
-
-package() {
- make -C build DESTDIR="$pkgdir" install
-}
-
-sha512sums="4b20c69ced696bb879c34bcb7ce0f5f276642458d4cebca8ede673eed7d50664e527626e2077f85a3411a26660f1b3f01e43cccd72945e1edb2994421efeb552 libgme-0.6.3.tar.xz
-5134ab6028467f67fd83750dc5a8bcc5511ca66fdabb2adde121e8b7eaed80785d05db2ffd7be7d0d929a7e06f44c92037006899852e39f92a0f473215e7b8f0 ppc-musl.patch"
diff --git a/testing/libgme/ppc-musl.patch b/testing/libgme/ppc-musl.patch
deleted file mode 100644
index f84cbd68ea9..00000000000
--- a/testing/libgme/ppc-musl.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-This removes an invalid assumption that results in both BLARGG_LITTLE_ENDIAN
-and BLARGG_BIG_ENDIAN being defined on little endian musl, as we're already
-covered by __LITTLE_ENDIAN__/__BIG_ENDIAN__ (which is specified as a part
-of the ELFv2 ABI itself to be always present). Glibc was not broken because
-it has its own check before that.
-
---- a/gme/blargg_endian.h
-+++ b/gme/blargg_endian.h
-@@ -36,7 +36,7 @@
- #endif
-
- #if defined (MSB_FIRST) || defined (__BIG_ENDIAN__) || defined (WORDS_BIGENDIAN) || \
-- defined (__sparc__) || BLARGG_CPU_POWERPC || \
-+ defined (__sparc__) || \
- (defined (BIG_ENDIAN) && BIG_ENDIAN+0 != 4321)
- #define BLARGG_BIG_ENDIAN 1
- #elif !defined (__mips__) \ No newline at end of file
diff --git a/testing/libgpod/0001-323-Segmentation-fault-when-opening-ipod.patch b/testing/libgpod/0001-323-Segmentation-fault-when-opening-ipod.patch
deleted file mode 100644
index 727f18b3702..00000000000
--- a/testing/libgpod/0001-323-Segmentation-fault-when-opening-ipod.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From 8dc5015ae036b219c4c9579a156886aa3a722aa5 Mon Sep 17 00:00:00 2001
-From: phantomjinx <p.g.richardson@phantomjinx.co.uk>
-Date: Sat, 9 Aug 2014 19:57:10 +0100
-Subject: [PATCH] #323 Segmentation fault when opening ipod
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-* Patch submitted in bug report from François Melchior / James Burton
----
- src/itdb_itunesdb.c | 6 ++++--
- 1 file changed, 4 insertions(+), 2 deletions(-)
-
-diff --git a/src/itdb_itunesdb.c b/src/itdb_itunesdb.c
-index 4cc771a..1e85476 100644
---- a/src/itdb_itunesdb.c
-+++ b/src/itdb_itunesdb.c
-@@ -1156,6 +1156,7 @@ static gboolean playcounts_plist_read (FImport *fimp, GValue *plist_data)
- GHashTable *pc_dict, *track_dict;
- GValue *to_parse;
- GArray *array;
-+ GValue value;
- gint i;
- guint32 mac_time;
- guint64 *dbid;
-@@ -1175,11 +1176,12 @@ static gboolean playcounts_plist_read (FImport *fimp, GValue *plist_data)
-
- array = (GArray*)g_value_get_boxed (to_parse);
- for (i = 0; i < array->len; i++) {
-- if (!G_VALUE_HOLDS (g_array_index (array, GValue *, i), G_TYPE_HASH_TABLE)) {
-+ value = g_array_index (array, GValue, i);
-+ if (!G_VALUE_HOLDS (&value, G_TYPE_HASH_TABLE)) {
- continue;
- }
-
-- track_dict = g_value_get_boxed (g_array_index (array, GValue *, i));
-+ track_dict = g_value_get_boxed (&value);
- if (track_dict == NULL)
- continue;
-
---
-2.12.2
-
diff --git a/testing/libgpod/0002-Fix-spelling-errors-in-comments-and-strings-using-co.patch b/testing/libgpod/0002-Fix-spelling-errors-in-comments-and-strings-using-co.patch
deleted file mode 100644
index f003a570b01..00000000000
--- a/testing/libgpod/0002-Fix-spelling-errors-in-comments-and-strings-using-co.patch
+++ /dev/null
@@ -1,293 +0,0 @@
-From 8b85cadf2d9e9d26ce6e52336177beb8d1472458 Mon Sep 17 00:00:00 2001
-From: Daniele Forsi <daniele@forsi.it>
-Date: Mon, 24 Mar 2014 20:13:50 +0100
-Subject: [PATCH 1/3] Fix spelling errors in comments and strings using
- codespell
-
-See https://github.com/lucasdemarchi/codespell
----
- README.overview | 2 +-
- docs/reference/tmpl/itunesdb-lowlevel.sgml | 2 +-
- src/db-artwork-writer.c | 2 +-
- src/itdb.h | 4 ++--
- src/itdb_device.c | 6 +++---
- src/itdb_itunesdb.c | 26 +++++++++++++-------------
- src/itdb_photoalbum.c | 2 +-
- src/itdb_sqlite.c | 8 ++++----
- src/itdb_tzinfo.c | 2 +-
- src/ithumb-writer.c | 2 +-
- 10 files changed, 28 insertions(+), 28 deletions(-)
-
-diff --git a/README.overview b/README.overview
-index a02ad5c..4bc2071 100644
---- a/README.overview
-+++ b/README.overview
-@@ -20,7 +20,7 @@ device to get an XML file describing the device capabilities (artwork formats
- supported, serial number, ...) and dumps this XML file to
- iPod_Control/Device/SysInfoExtended for future use by libgpod. libgpod doesn't
- do it directly because sending these SCSI/USB commands might need elevated
--priviledges.
-+privileges.
-
- * the application uses libgpod to read the device content
-
-diff --git a/docs/reference/tmpl/itunesdb-lowlevel.sgml b/docs/reference/tmpl/itunesdb-lowlevel.sgml
-index 1c89c91..c16ed7a 100644
---- a/docs/reference/tmpl/itunesdb-lowlevel.sgml
-+++ b/docs/reference/tmpl/itunesdb-lowlevel.sgml
-@@ -6,7 +6,7 @@ Low-level functions which shouldn't be needed in normal situations
-
- <!-- ##### SECTION Long_Description ##### -->
- <para>
--These functions are not normally needed but are avalable to allow for finer
-+These functions are not normally needed but are available to allow for finer
- control over the iPod database.
- </para>
-
-diff --git a/src/db-artwork-writer.c b/src/db-artwork-writer.c
-index 824b502..5d6de0d 100644
---- a/src/db-artwork-writer.c
-+++ b/src/db-artwork-writer.c
-@@ -1094,7 +1094,7 @@ ipod_artwork_mark_new_doubles (Itdb_iTunesDB *itdb, guint max_id)
- artwork->dbid = 0;
- }
- else
-- { /* first occurence of this artwork */
-+ { /* first occurrence of this artwork */
- artwork->id = ++max_id;
- artwork->dbid = track->dbid;
- g_hash_table_insert (hash, g_strdup (checkstring), artwork);
-diff --git a/src/itdb.h b/src/itdb.h
-index 858cae7..72299ac 100644
---- a/src/itdb.h
-+++ b/src/itdb.h
-@@ -265,7 +265,7 @@ typedef enum {
- /**
- * Itdb_IpodInfo:
- * @model_number: The model number. This is abbreviated. If the first
-- * character is not numeric, it is ommited. e.g.
-+ * character is not numeric, it is omitted. e.g.
- * "MA350 -> A350", "M9829 -> 9829"
- * @capacity: The iPod's capacity in gigabytes
- * @ipod_model: The iPod model
-@@ -1747,7 +1747,7 @@ struct _Itdb_Track
-
- /**
- * ItdbFileError:
-- * @ITDB_FILE_ERROR_SEEK: file corrupt: illegal seek occured
-+ * @ITDB_FILE_ERROR_SEEK: file corrupt: illegal seek occurred
- * @ITDB_FILE_ERROR_CORRUPT: file corrupt
- * @ITDB_FILE_ERROR_NOTFOUND: file not found
- * @ITDB_FILE_ERROR_RENAME: file could not be renamed
-diff --git a/src/itdb_device.c b/src/itdb_device.c
-index 6f1bc0b..e12f488 100644
---- a/src/itdb_device.c
-+++ b/src/itdb_device.c
-@@ -1527,9 +1527,9 @@ itdb_device_musicdirs_number (Itdb_Device *device)
- * @path: the file to look at.
- * @hdr: the header string (4 bytes) in case of LITTLE_ENDIAN
- *
-- * Check if endianess can be determined by looking at header of @path.
-+ * Check if endianness can be determined by looking at header of @path.
- *
-- * Returns: G_LITTLE_ENDIAN, G_BIG_ENDIAN or 0 if endianess could not be
-+ * Returns: G_LITTLE_ENDIAN, G_BIG_ENDIAN or 0 if endianness could not be
- * determined.
- */
- static guint endianess_check_path (const gchar *path, const gchar *hdr)
-@@ -1565,7 +1565,7 @@ static guint endianess_check_path (const gchar *path, const gchar *hdr)
- return byte_order;
- }
-
--/* Attempt to guess the endianess used by this iPod.
-+/* Attempt to guess the endianness used by this iPod.
- *
- * It will overwrite the previous setting.
- *
-diff --git a/src/itdb_itunesdb.c b/src/itdb_itunesdb.c
-index a177e26..4cc771a 100644
---- a/src/itdb_itunesdb.c
-+++ b/src/itdb_itunesdb.c
-@@ -1560,7 +1560,7 @@ static char *extract_mhod_string (FContents *cts, glong seek)
- Itdb_SPLPREF OR Itdb_SPLRULES.
-
- *mhod_len is set to the total length of the mhod (-1 in case an
-- *error occured).
-+ *error occurred).
-
- MHODData.valid is set to FALSE in case of any error. cts->error
- will be set accordingly.
-@@ -1974,13 +1974,13 @@ static void set_error_a_header_smaller_than_b (GError **error,
- }
-
-
--/* finds next occurence of section @a in section b (@b_seek) starting
-+/* finds next occurrence of section @a in section b (@b_seek) starting
- at @start_seek
- */
- /* Return value:
- -1 and cts->error not set: section @a could not be found
-- -1 and cts->error set: some error occured
-- >=0: start of next occurence of section @a
-+ -1 and cts->error set: some error occurred
-+ >=0: start of next occurrence of section @a
- */
- static glong find_next_a_in_b (FContents *cts,
- const gchar *a,
-@@ -2767,7 +2767,7 @@ static glong get_mhit (FImport *fimp, glong mhit_seek)
- * adding a new playlist (named @plname) with the tracks specified in
- * @cts. If @plname is NULL, a standard name will be substituted */
- /* Returns FALSE on error, TRUE on success. On error @fimp->error will
-- * be set apropriately. */
-+ * be set appropriately. */
- static gboolean process_OTG_file (FImport *fimp, FContents *cts,
- const gchar *plname)
- {
-@@ -2911,7 +2911,7 @@ static gboolean read_OTG_playlists (FImport *fimp)
- (this is treated as a programming error) */
- /* Return value:
- TRUE: import successful
-- FALSE: error occured, fimp->error is set */
-+ FALSE: error occurred, fimp->error is set */
- static gboolean parse_tracks (FImport *fimp, glong mhsd_seek)
- {
- FContents *cts;
-@@ -2976,7 +2976,7 @@ static gboolean parse_tracks (FImport *fimp, glong mhsd_seek)
- mhsd (this is treated as a programming error) */
- /* Return value:
- TRUE: import successful
-- FALSE: error occured, fimp->error is set */
-+ FALSE: error occurred, fimp->error is set */
- static gboolean parse_playlists (FImport *fimp, glong mhsd_seek)
- {
- FContents *cts;
-@@ -3443,7 +3443,7 @@ Itdb_iTunesDB *itdb_parse_file (const gchar *filename, GError **error)
- /* ---------------------------------------------------------------------- */
- /* from here on we have the functions for writing the iTunesDB */
-
--/* will expand @cts when necessary in order to accomodate @len bytes
-+/* will expand @cts when necessary in order to accommodate @len bytes
- starting at @seek */
- static void wcontents_maybe_expand (WContents *cts, gulong len,
- gulong seek)
-@@ -3500,7 +3500,7 @@ static void put_string (WContents *cts, gchar *string)
- }
-
- /* Write 4-byte long @header identifcation taking into account
-- * possible reversed endianess */
-+ * possible reversed endianness */
- static void put_header (WContents *cts, gchar *header)
- {
- gchar rdata[4];
-@@ -3874,7 +3874,7 @@ static void mk_mhbd (FExport *fexp, guint32 children)
-
- /* 0x22 */
- put16lint (cts, fexp->itdb->priv->unk_0x22); /* unknown */
-- put64lint (cts, fexp->itdb->priv->id_0x24); /* unkown id */
-+ put64lint (cts, fexp->itdb->priv->id_0x24); /* unknown id */
- put32lint (cts, 0); /* unknown */
- /* 0x30 */
- put16lint (cts, 0); /* set hashing scheme to 0 for now, will be set
-@@ -5993,7 +5993,7 @@ static gboolean itdb_write_file_internal (Itdb_iTunesDB *itdb,
-
- if (!filename) filename = itdb->filename;
-
-- /* set endianess flag */
-+ /* set endianness flag */
- if (!itdb->device->byte_order)
- itdb_device_autodetect_endianess (itdb->device);
-
-@@ -6896,7 +6896,7 @@ gboolean itdb_shuffle_write_file (Itdb_iTunesDB *itdb,
- g_return_val_if_fail (filename, FALSE);
- g_return_val_if_fail (itdb->device, FALSE);
-
-- /* Set endianess flag just in case */
-+ /* Set endianness flag just in case */
- if (!itdb->device->byte_order)
- itdb_device_autodetect_endianess (itdb->device);
-
-@@ -7065,7 +7065,7 @@ gboolean itdb_rename_files (const gchar *mp, GError **error)
- if (plcname_o)
- {
- if (rename (plcname_o, plcname_n) == -1)
-- { /* an error occured */
-+ { /* an error occurred */
- g_set_error (error,
- G_FILE_ERROR,
- g_file_error_from_errno (errno),
-diff --git a/src/itdb_photoalbum.c b/src/itdb_photoalbum.c
-index a2c8c29..403848a 100644
---- a/src/itdb_photoalbum.c
-+++ b/src/itdb_photoalbum.c
-@@ -206,7 +206,7 @@ gchar *itdb_get_photos_thumb_dir (const gchar *mountpoint)
- /**
- * itdb_photodb_parse:
- * @mp: mountpoint of the iPod
-- * @error: will contain the error description when an error occured.
-+ * @error: will contain the error description when an error occurred.
- *
- * Parses the photo database of an iPod mounted at @mp.
- *
-diff --git a/src/itdb_sqlite.c b/src/itdb_sqlite.c
-index b5b2975..21d8eed 100644
---- a/src/itdb_sqlite.c
-+++ b/src/itdb_sqlite.c
-@@ -839,7 +839,7 @@ static int mk_Library(Itdb_iTunesDB *itdb,
- /* name order */
- sqlite3_bind_int(stmt_container, ++idx, pos++);
- /* parent_pid */
-- /* TODO: unkown meaning, always 0? */
-+ /* TODO: unknown meaning, always 0? */
- sqlite3_bind_int(stmt_container, ++idx, 0);
- /* media_kinds */
- sqlite3_bind_int(stmt_container, ++idx, types);
-@@ -900,10 +900,10 @@ static int mk_Library(Itdb_iTunesDB *itdb,
- sqlite3_bind_null(stmt_db_info, ++idx);
- }
- /* bib */
-- /* TODO: unkown meaning, set to NULL */
-+ /* TODO: unknown meaning, set to NULL */
- sqlite3_bind_null(stmt_db_info, ++idx);
- /* rib */
-- /* TODO: unkown meaning, set to NULL */
-+ /* TODO: unknown meaning, set to NULL */
- sqlite3_bind_null(stmt_db_info, ++idx);
-
- res = sqlite3_step(stmt_db_info);
-@@ -1958,7 +1958,7 @@ static void run_post_process_commands(Itdb_iTunesDB *itdb, const char *outpath,
- g_hash_table_destroy(sqlcmd_map);
-
- printf("[%s] %d out of %d post process commands successfully executed\n", __func__, ok_cnt, cnt);
-- /* TODO perhaps we want to roll back when an error has occured ? */
-+ /* TODO perhaps we want to roll back when an error has occurred ? */
- sqlite3_exec(db, "COMMIT;", NULL, NULL, NULL);
- } else {
- printf("[%s]: Error: could not create hash table!\n", __func__);
-diff --git a/src/itdb_tzinfo.c b/src/itdb_tzinfo.c
-index 3c29947..ce8216d 100644
---- a/src/itdb_tzinfo.c
-+++ b/src/itdb_tzinfo.c
-@@ -160,7 +160,7 @@ static gboolean raw_timezone_to_utc_shift_5g (gint16 raw_timezone,
- * going from Tokyo to LA and then to Europe).
- * The calculation below shifts the origin so that 0 corresponds
- * to UTC-12 and the max is 24*60 and corresponds to UTC+12
-- * Finally, we substract 12*60 to that value to get a signed number
-+ * Finally, we subtract 12*60 to that value to get a signed number
- * giving the timezone relative to UTC.
- */
- *utc_shift = raw_timezone*60 - TZ_SHIFT*3600;
-diff --git a/src/ithumb-writer.c b/src/ithumb-writer.c
-index 6b47aa6..b33cc5c 100644
---- a/src/ithumb-writer.c
-+++ b/src/ithumb-writer.c
-@@ -1215,7 +1215,7 @@ static gboolean ithumb_rearrange_thumbnail_file (gpointer _key,
-
- /* printf ("%s: %d\n", filename, g_list_length (thumbs)); */
-
-- /* check if an error occured */
-+ /* check if an error occurred */
- if (*result == FALSE)
- goto out;
-
---
-2.1.4
diff --git a/testing/libgpod/0003-Fixed-PList-deprecation.patch b/testing/libgpod/0003-Fixed-PList-deprecation.patch
deleted file mode 100644
index 6f270bcce94..00000000000
--- a/testing/libgpod/0003-Fixed-PList-deprecation.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From e6994dc234395f68fd7195bbe7424f83c39d0f3d Mon Sep 17 00:00:00 2001
-From: Tuukka Pasanen <tuukka.pasanen@ilmi.fi>
-Date: Thu, 22 Oct 2015 09:53:05 +0300
-Subject: [PATCH 3/3] Fixed PList deprication
-
----
- tools/ipod-lockdown.c | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/tools/ipod-lockdown.c b/tools/ipod-lockdown.c
-index f345726..8503798 100644
---- a/tools/ipod-lockdown.c
-+++ b/tools/ipod-lockdown.c
-@@ -100,7 +100,7 @@ read_sysinfo_extended_by_uuid (const char *uuid)
- plist_get_string_val(ptr, &str);
- if (str != NULL) {
- ptr = plist_new_string(str);
-- plist_dict_insert_item(value, "SerialNumber", ptr);
-+ plist_dict_set_item(value, "SerialNumber", ptr);
- free(str);
- }
-
-@@ -112,15 +112,15 @@ read_sysinfo_extended_by_uuid (const char *uuid)
- plist_get_string_val(ptr, &str);
- if (str != NULL) {
- ptr = plist_new_string(str);
-- plist_dict_insert_item(value, "VisibleBuildID", ptr);
-+ plist_dict_set_item(value, "VisibleBuildID", ptr);
- free(str);
- }
-
- ptr = plist_new_string(uuid);
-- plist_dict_insert_item(value, "FireWireGUID", ptr);
-+ plist_dict_set_item(value, "FireWireGUID", ptr);
-
- ptr = plist_new_string(uuid);
-- plist_dict_insert_item(value, "UniqueDeviceID", ptr);
-+ plist_dict_set_item(value, "UniqueDeviceID", ptr);
-
- plist_to_xml(value, &xml, &xml_length);
-
---
-2.1.4
-
diff --git a/testing/libgpod/APKBUILD b/testing/libgpod/APKBUILD
deleted file mode 100644
index b00871d4593..00000000000
--- a/testing/libgpod/APKBUILD
+++ /dev/null
@@ -1,50 +0,0 @@
-# Contributor: Francesco Colista <fcolista@alpinelinux.org>
-# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
-pkgname=libgpod
-pkgver=0.8.3
-pkgrel=7
-pkgdesc="A shared library to access the contents of an iPod"
-url="http://www.gtkpod.org/libgpod"
-arch="all"
-license="LGPL-2.1-or-later"
-makedepends="automake autoconf libtool intltool libimobiledevice-dev libplist-dev
- swig mutagen sg3_utils-dev gdk-pixbuf-dev glib-dev sqlite-dev
- gobject-introspection-dev libxml2-dev gtk-doc"
-subpackages="$pkgname-dev $pkgname-doc $pkgname-lang"
-source="https://downloads.sourceforge.net/project/gtkpod/libgpod/libgpod-0.8/libgpod-$pkgver.tar.bz2
- 0001-323-Segmentation-fault-when-opening-ipod.patch
- 0002-Fix-spelling-errors-in-comments-and-strings-using-co.patch
- 0003-Fixed-PList-deprecation.patch
- libgpod-0.8.2-pkgconfig_overlinking.patch
- "
-prepare() {
- default_prepare
- sed -e 's|libplist >= 1.0|libplist-2.0 >= 2.2|' -i configure.ac # support libplist 2.2
- autoreconf -fi
-}
-
-build() {
- MCS=/usr/bin/mcs ./configure \
- --prefix=/usr \
- --with-udev-dir=/lib/udev \
- --enable-udev
- make PREFIX=/usr
- sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
-}
-
-check() {
- make check
-}
-
-package() {
- make PREFIX=/usr DESTDIR="$pkgdir" install
- rmdir "$pkgdir"/tmp
-}
-
-sha512sums="
-e39f22054c2d2bdf5fc764aa1f692de17a1a06c7c7e9c60883d126b216dacca7840bf818e7e7e039218fe2a64c0920ba96d8cbbe310e11c1c4e68b82e7cbbd8e libgpod-0.8.3.tar.bz2
-d1a813a45230ca716e0c6ed5497d68089762ce5b4cac9462f1959083fdf40bedbf7449a55d63170800d74372921fad02a9d5a3146e9f8ed652ffd58238360b49 0001-323-Segmentation-fault-when-opening-ipod.patch
-f95d53e616763e4e620862fb2e1abc2fcec29951c2047b7f08bfbee69ce68661772f499f90f87d81a2707583b3d8017d11dcaf75a9028f50b7c3260a9768c285 0002-Fix-spelling-errors-in-comments-and-strings-using-co.patch
-163e33c3e727240561021dd8a4d921bad4724845db00d1d87c963a9e8619dbfda90de9d42944bf33f5b3479b00b3908e550a831489b12c7d4f0e83cdaae697ad 0003-Fixed-PList-deprecation.patch
-c8ebcc18ba7b44aef8fada3f9fea88fdaaf6bae12cf809b08f98e85ab6396ae032bfd7706809cd266be67c694749d4364a9cc591eb750478e095cbbcbe061419 libgpod-0.8.2-pkgconfig_overlinking.patch
-"
diff --git a/testing/libgpod/libgpod-0.8.2-pkgconfig_overlinking.patch b/testing/libgpod/libgpod-0.8.2-pkgconfig_overlinking.patch
deleted file mode 100644
index a5dafb28576..00000000000
--- a/testing/libgpod/libgpod-0.8.2-pkgconfig_overlinking.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-diff -up libgpod-0.8.2/libgpod-1.0.pc.in.pkgconfig_overlinking libgpod-0.8.2/libgpod-1.0.pc.in
---- libgpod-0.8.2/libgpod-1.0.pc.in.pkgconfig_overlinking 2011-04-15 03:37:34.000000000 -0500
-+++ libgpod-0.8.2/libgpod-1.0.pc.in 2012-08-10 13:53:00.294631805 -0500
-@@ -6,6 +6,6 @@ includedir=@includedir@
- Name: libgpod
- Description: A library to manipulate songs and playlists stored on an ipod
- Version: @VERSION@
--Requires: glib-2.0 >= 2.8.0 gobject-2.0 @GDKPIXBUF_REQ@ @LIBIMOBILEDEVICE_REQ@
-+Requires.private: glib-2.0 >= 2.8.0 gobject-2.0 @GDKPIXBUF_REQ@ @LIBIMOBILEDEVICE_REQ@
- Libs: -L${libdir} -lgpod
- Cflags: -I${includedir}/gpod-1.0
diff --git a/testing/libguestfs/APKBUILD b/testing/libguestfs/APKBUILD
index 6f5db7781e9..fb5610f90a8 100644
--- a/testing/libguestfs/APKBUILD
+++ b/testing/libguestfs/APKBUILD
@@ -1,118 +1,147 @@
-# Maintainer: Fathi Boudra <fathi.boudra@linaro.org>
+# Contributor: Fathi Boudra <fathi.boudra@linaro.org>
+# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=libguestfs
-pkgver=1.44.1
-pkgrel=0
-pkgdesc="tools for accessing and modifying virtual machine disk images"
+pkgver=1.52.0
+pkgrel=1
+pkgdesc="Access and modify virtual machine disk images"
url="https://libguestfs.org/"
-# only x86_64 is supported unless the qemu-system-x86_64 dependency can be parameterized with $arch
-arch="x86_64"
-# arch="all !s390x" # limited by libvirt-dev
+# riscv64, loongarch64: blocked by ocaml
+arch="all !riscv64 !loongarch64"
license="GPL-2.0-or-later"
-depends="cdrkit curl gptfdisk qemu-img qemu-system-x86_64"
+depends="
+ cmd:mkisofs
+ curl
+ qemu-img
+ "
makedepends="
- autoconf automake libtool
- acl-dev
- augeas-dev
- bash
- bison
- coreutils
- cpio
- file-dev
- flex
- fuse-dev
- gawk
- gettext-dev
- hivex-dev
- jansson-dev
- gperf
- libcap-dev
- libconfig-dev
- libselinux-dev
- libselinux-utils
- libtirpc-dev
- libvirt-dev
- libxml2-dev
- libxml2-utils
- ncurses-dev
- ocaml
- ocaml-findlib
- pcre-dev
- perl
- psmisc
- python3-dev
- qemu-system-aarch64
- qemu-system-arm
- qemu-system-i386
- qemu-system-ppc64
- qemu-system-s390x
- qemu-system-x86_64
- readline-dev
- xz
- xz-dev
-"
-subpackages="$pkgname-dev $pkgname-doc $pkgname-lang py3-$pkgname:_py"
-source="
- http://download.libguestfs.org/1.44-stable/libguestfs-$pkgver.tar.gz
- https://raw.githubusercontent.com/alpinelinux/aports/3.9-stable/main/kbd/error.h
- ocaml-m4.patch
-"
-options="!check charset.alias" # Test suite does not support Alpine Linux at this moment
+ acl-dev
+ augeas-dev
+ bash
+ bison
+ cmd:xzcat
+ cmd:zstdcat
+ coreutils
+ file-dev
+ flex
+ fuse-dev
+ gawk
+ gperf
+ hivex-dev
+ jansson-dev
+ libcap-dev
+ libconfig-dev
+ libtirpc-dev
+ libxml2-dev
+ lua5.1-dev
+ musl-libintl
+ ocaml
+ ocaml-findlib
+ pcre2-dev
+ perl
+ python3-dev
+ readline-dev
+ ruby-dev
+ ruby-rake
+ zstd-dev
+ "
+subpackages="
+ $pkgname-static
+ $pkgname-dev
+ $pkgname-doc
+ guestfs-tools
+ lua5.1-$pkgname:_lua51
+ py3-$pkgname:_py
+ ruby-$pkgname:_ruby
+ "
+source="https://download.libguestfs.org/${pkgver%.*}-stable/libguestfs-$pkgver.tar.gz
+ fix-missing-int64_t.patch
+ fix-missing-error-h.patch
+ "
+options="!check" # XXX: Test suite does not support Alpine Linux at this moment
+
+case "$CARCH" in
+ arm*) _qemu="qemu-system-arm";;
+ ppc64le) _qemu="qemu-system-ppc64";;
+ x86_64 | x86) _qemu="qemu-system-x86_64";;
+ *) _qemu="qemu-system-$CARCH";;
+esac
+depends="$depends $_qemu"
prepare() {
default_prepare
- autoreconf -vif
+
# busybox gzip does not support --best
sed -i 's/gzip --best/gzip -9/g' test-data/files/*
- # musl lacks error.h
- cp -a "$srcdir"/error.h "$builddir"/lib/
}
build() {
+ # TODO: build and package appliance
+ # NOTE: libvirt is a huge dependency linked into libguestfs.so,
+ # so it cannot be easily split.
PYTHON=/usr/bin/python3 ./configure \
--prefix=/usr \
--mandir=/usr/share/man \
--sysconfdir=/etc \
+ --disable-nls \
+ --enable-fuse \
--disable-probes \
--disable-daemon \
--disable-appliance \
--disable-ocaml \
--disable-perl \
- --disable-ruby \
+ --enable-ruby \
--disable-haskell \
--disable-php \
--disable-erlang \
- --disable-lua \
+ --enable-lua \
--disable-golang \
--disable-gobject \
- --without-java
- # Building index-parse.c and index-scan.c by hand works around a race
- # condition in the autotools cruft, where two other more copies of yacc
- # race with each other, resulting in a corrupted file.
- make -j1 -C builder index-parse.c
- make -j1 -C builder index-scan.c
- make V=1 INSTALLDIRS=vendor LTLIBINTL=-lintl
+ --disable-rust \
+ --enable-vala=no \
+ --with-readline \
+ --without-java \
+ --without-libvirt \
+ --with-qemu="$_qemu"
+ make V=1
}
-# FIXME test require supermin to create an appliance or a prebuilt binary appliance
-# check() {
-# cd "$builddir"
-# wget http://download.libguestfs.org/binaries/appliance/appliance-1.38.0.tar.xz -O /tmp/appliance-1.38.0.tar.xz
-# $(cd /tmp && tar xf appliance-1.38.0.tar.xz)
-# export LIBGUESTFS_PATH=/tmp/appliance
-# make quickcheck
-# }
-
package() {
- make V=1 INSTALLDIRS=vendor DESTDIR="$pkgdir" install
- make V=1 INSTALLDIRS=vendor DESTDIR="$pkgdir" -C python install
+ # INSTALLDIRS ensures that Perl and Ruby libs are installed in the
+ # vendor dir not the site dir.
+ make V=1 DESTDIR="$pkgdir" INSTALLDIRS="vendor" install
+}
+
+tools() {
+ pkgdesc="$pkgdesc (CLI tools)"
+ depends=""
+
+ amove etc
+ amove usr/bin
+}
+
+_lua51() {
+ pkgdesc="Lua 5.1 bindings for $pkgname"
+ depends=""
+
+ amove usr/lib/lua
}
_py() {
- pkgdesc="$pkgname - Python 3 bindings"
- mkdir -p "$subpkgdir"/usr/lib
- mv "$pkgdir"/usr/lib/python3* "$subpkgdir"/usr/lib/
+ pkgdesc="Python 3 bindings for $pkgname"
+ depends=""
+
+ amove usr/lib/python3*
}
-sha512sums="db6eab7350d9318a5ad5f968b24ed77ab411c9be3476b62b2b8448cf06db2462af1e3c9d8b02b54011d43651c281d74db7cb8023426a3f09667aa5b3597c7c33 libguestfs-1.44.1.tar.gz
-c66f6b0d8c8b8d285c740bdbe7130dee272ac01cd5e73b35a58cedf1a77fe8d9e062631b804fb58014d8eb9861c8f28aed07bc022ef31662bcc61b5c85a21752 error.h
-20c0e0abe7c30d55c9335a8579aac654603cf29d0074a2fbada3749529a5a121b30963ad6666d79eadab4126a73d59bcd2b01c3e118f927ac39f90681561249c ocaml-m4.patch"
+_ruby() {
+ pkgdesc="Ruby bindings for $pkgname"
+ depends=""
+
+ amove usr/lib/ruby
+}
+
+sha512sums="
+48dfaabb6b371ab3476b42310d363addf2fd1dfe43876be3bc984953f6919a30c7de13ef235d83fdd39117d71aa6bbfb5fbb645c1b17bc3031798a2a2b3df9d7 libguestfs-1.52.0.tar.gz
+9ca7a2ac8572553394d42eda0e02f8b694651288ce58f1f4c7569eaab81cd3295b0992dcd6452a42b4b284cec54a666fd277eafcee05d54d05b1e84560ac7b06 fix-missing-int64_t.patch
+e4d0cac4ba856d871ca524ebeb4dedf25b3a956fe6a1ab4c93481eba03954fb684621c63085526fc1846b3bffd4cbe30dadfba2b92844d24b8ec277c0e84bf5c fix-missing-error-h.patch
+"
diff --git a/testing/libguestfs/fix-missing-error-h.patch b/testing/libguestfs/fix-missing-error-h.patch
new file mode 100644
index 00000000000..7cdf3eaf8a3
--- /dev/null
+++ b/testing/libguestfs/fix-missing-error-h.patch
@@ -0,0 +1,46 @@
+From: Jakub Jirutka <jakub@jirutka.cz>
+Date: Thu, 12 Oct 2023 01:05:47 +0200
+Subject: [PATCH] Fix <error.h> not found in libvirt-is-version.c
+
+ libvirt-is-version.c:26:10: fatal error: error.h: No such file or directory
+ 26 | #include <error.h>
+ | ^~~~~~~~~
+
+ libvirt-is-version.c:(.text+0x61): undefined reference to `error'
+ ld: libvirt_is_version-libvirt-is-version.o: in function `main':
+ libvirt-is-version.c:(.text.startup+0xa9): undefined reference to `error'
+
+--- a/lib/Makefile.am
++++ b/lib/Makefile.am
+@@ -178,10 +178,12 @@
+
+ libvirt_is_version_LDADD = \
+ $(LIBVIRT_LIBS) \
+- $(LTLIBINTL)
++ $(LTLIBINTL) \
++ ../gnulib/lib/libgnu.la
+
+ libvirt_is_version_CPPFLAGS = \
+- -DLOCALEBASEDIR=\""$(datadir)/locale"\"
++ -DLOCALEBASEDIR=\""$(datadir)/locale"\" \
++ -I$(top_srcdir)/gnulib/lib -I$(top_builddir)/gnulib/lib
+
+ libvirt_is_version_CFLAGS = \
+ $(WARN_CFLAGS) $(WERROR_CFLAGS) \
+--- a/lib/Makefile.in
++++ b/lib/Makefile.in
+@@ -1115,10 +1115,12 @@
+ @HAVE_LIBVIRT_TRUE@libvirt_is_version_SOURCES = libvirt-is-version.c
+ @HAVE_LIBVIRT_TRUE@libvirt_is_version_LDADD = \
+ @HAVE_LIBVIRT_TRUE@ $(LIBVIRT_LIBS) \
+-@HAVE_LIBVIRT_TRUE@ $(LTLIBINTL)
++@HAVE_LIBVIRT_TRUE@ $(LTLIBINTL) \
++@HAVE_LIBVIRT_TRUE@ ../gnulib/lib/libgnu.la
+
+ @HAVE_LIBVIRT_TRUE@libvirt_is_version_CPPFLAGS = \
+-@HAVE_LIBVIRT_TRUE@ -DLOCALEBASEDIR=\""$(datadir)/locale"\"
++@HAVE_LIBVIRT_TRUE@ -DLOCALEBASEDIR=\""$(datadir)/locale"\" \
++@HAVE_LIBVIRT_TRUE@ -I$(top_srcdir)/gnulib/lib -I$(top_builddir)/gnulib/lib
+
+ @HAVE_LIBVIRT_TRUE@libvirt_is_version_CFLAGS = \
+ @HAVE_LIBVIRT_TRUE@ $(WARN_CFLAGS) $(WERROR_CFLAGS) \
diff --git a/testing/libguestfs/fix-missing-int64_t.patch b/testing/libguestfs/fix-missing-int64_t.patch
new file mode 100644
index 00000000000..0ef8e7f4ef9
--- /dev/null
+++ b/testing/libguestfs/fix-missing-int64_t.patch
@@ -0,0 +1,22 @@
+From: Jakub Jirutka <jakub@jirutka.cz>
+Date: Thu, 12 Oct 2023 01:05:47 +0200
+Subject: [PATCH] Fix unknown type name 'int64_t'
+
+ guestfs-utils.h:62:32: error: unknown type name 'int64_t'
+ 62 | extern int guestfs_int_is_reg (int64_t mode);
+ | ^~~~~~~
+ guestfs-utils.h:40:1: note: 'int64_t' is defined in header '<stdint.h>'; did you forget to '#include <stdint.h>'?
+ 39 | #include "cleanups.h"
+ +++ |+#include <stdint.h>
+ 40 | #include "guestfs-stringlists-utils.h"
+
+--- a/common/utils/guestfs-utils.h
++++ b/common/utils/guestfs-utils.h
+@@ -34,6 +34,7 @@
+
+ #include <stdio.h>
+ #include <stdbool.h>
++#include <stdint.h>
+
+ #include "guestfs-internal-all.h"
+ #include "cleanups.h"
diff --git a/testing/libguestfs/ocaml-m4.patch b/testing/libguestfs/ocaml-m4.patch
deleted file mode 100644
index 32f2f4fbfee..00000000000
--- a/testing/libguestfs/ocaml-m4.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-guestfs-ocaml.m4: Check caml_alloc_initialized_string
-
-Always check, even if --disable-ocaml is selected
-
----
- m4/guestfs-ocaml.m4 | 3 +--
- 1 file changed, 1 insertion(+), 2 deletions(-)
-
-diff --git a/m4/guestfs-ocaml.m4 b/m4/guestfs-ocaml.m4
-index 18f95c2..bf07799 100644
---- a/m4/guestfs-ocaml.m4
-+++ b/m4/guestfs-ocaml.m4
-@@ -214,8 +214,7 @@ AM_CONDITIONAL([HAVE_BYTES_COMPAT_ML],
- [test "x$have_Bytes_module" = "xno"])
-
- dnl Check if OCaml has caml_alloc_initialized_string (added 2017).
--AS_IF([test "x$OCAMLC" != "xno" && test "x$OCAMLFIND" != "xno" && \
-- test "x$enable_ocaml" = "xyes"],[
-+AS_IF([test "x$OCAMLC" != "xno" && test "x$OCAMLFIND" != "xno"],[
- AC_MSG_CHECKING([for caml_alloc_initialized_string])
- cat >conftest.c <<'EOF'
- #include <caml/alloc.h>
---
-2.31.1
-
diff --git a/testing/libhomfly/APKBUILD b/testing/libhomfly/APKBUILD
new file mode 100644
index 00000000000..a8ca960e50e
--- /dev/null
+++ b/testing/libhomfly/APKBUILD
@@ -0,0 +1,37 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
+pkgname=libhomfly
+pkgver=1.02_p6
+_pkgver=${pkgver//_p/r}
+pkgrel=1
+pkgdesc="Library to compute the homfly polynomial of a link"
+url="https://github.com/miguelmarco/libhomfly"
+arch="all"
+license="Unlicense"
+makedepends="gc-dev"
+subpackages="$pkgname-dev"
+source="https://github.com/miguelmarco/libhomfly/releases/download/$_pkgver/libhomfly-$_pkgver.tar.gz"
+builddir=$srcdir/libhomfly-$_pkgver
+
+build() {
+ export CFLAGS="${CFLAGS/-Os/-O3}" # gotta go fast
+
+ ./configure \
+ --target="$CTARGET" \
+ --build="$CBUILD" \
+ --host="$CHOST" \
+ --prefix=/usr
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+44f81815a0ba4c0358d433eb9769944af2ee02790d78aaa08e791d03ba68ba3dcf0389b4287f687211e6a7ba84e1bea3d2ebe69fc8bb4f12d677b7f54872d618 libhomfly-1.02r6.tar.gz
+"
diff --git a/testing/libhwpwm/APKBUILD b/testing/libhwpwm/APKBUILD
new file mode 100644
index 00000000000..e3bc7196c2a
--- /dev/null
+++ b/testing/libhwpwm/APKBUILD
@@ -0,0 +1,26 @@
+# Maintainer: Zsolt Vadasz <zsolt_vadasz@protonmail.com>
+pkgname=libhwpwm
+pkgver=0.4.4
+pkgrel=0
+pkgdesc="An easy to use library to communicate with the Linux kernel's sysfs PWM interface."
+url="https://github.com/zsoltiv/libhwpwm"
+arch="all"
+license="LGPL-3.0-or-later"
+makedepends="scdoc"
+options="!check" # no tests provided by upstream
+subpackages="$pkgname-dev $pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/zsoltiv/libhwpwm/archive/refs/tags/$pkgver.tar.gz"
+
+build() {
+ make
+}
+
+package() {
+ make install PREFIX=/usr DESTDIR="$pkgdir"
+ make install-man PREFIX=/usr DESTDIR="$pkgdir"
+}
+
+
+sha512sums="
+280c57a08fa4200fccbd0912fd11d7d53c4ac9acd94cfefdc8d55c8b094c61cb23433f52f36391fcaafe2f87f566e7b7e77d9e0300ad630208f2f04b36fd2820 libhwpwm-0.4.4.tar.gz
+"
diff --git a/testing/libhx/APKBUILD b/testing/libhx/APKBUILD
index 98da89f70ad..ba5b0966fe2 100644
--- a/testing/libhx/APKBUILD
+++ b/testing/libhx/APKBUILD
@@ -1,11 +1,12 @@
# Maintainer: Noel Kuntze <noel.kuntze@thermi.consulting>
pkgname=libhx
-pkgver=4.2
+pkgver=4.21
pkgrel=0
pkgdesc="library for queue, tree, I/O and utility functions"
arch="all"
url="https://inai.de/projects/libhx/"
license="GPL-3.0-only"
+makedepends="linux-headers"
subpackages="$pkgname-dev"
source="https://inai.de/files/libhx/libHX-$pkgver.tar.xz"
builddir="$srcdir/libHX-$pkgver"
@@ -23,5 +24,5 @@ package() {
}
sha512sums="
-c07baa1999d6e3110df6f6f104368ac0f48a8e48a05f5e5edc8e63a5e25a255e43475722b9cdf573559ad5f976a7af29dc5b69269906b78f864ad4c71b3d0d84 libHX-4.2.tar.xz
+cf3c5fd7b1137c9f56b56abe52886a47ec21256cfa393bd31339f1f9f4683cfeca2107f46ac0fc5571962f5daeb9c5c060c6db442667cc99380f6e55183a6ab5 libHX-4.21.tar.xz
"
diff --git a/testing/libibmad/APKBUILD b/testing/libibmad/APKBUILD
index 10793eddc05..449367abcf1 100644
--- a/testing/libibmad/APKBUILD
+++ b/testing/libibmad/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer:
pkgname=libibmad
pkgver=1.3.13
-pkgrel=1
+pkgrel=2
pkgdesc="Generic InfiniBand MAD handling library"
options="!check" # No testsuite
url="https://www.openfabrics.org/downloads/management/"
diff --git a/testing/libibumad/APKBUILD b/testing/libibumad/APKBUILD
index 2fe9c12ddb5..ec1b941e45b 100644
--- a/testing/libibumad/APKBUILD
+++ b/testing/libibumad/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer:
pkgname=libibumad
pkgver=1.3.10.2
-pkgrel=2
+pkgrel=3
pkgdesc="Interface to ib_umad module (user_mad) library. (InfiniBand)"
options="!check" # No testsuite
url="https://www.openfabrics.org/downloads/management/"
diff --git a/testing/libideviceactivation/APKBUILD b/testing/libideviceactivation/APKBUILD
index 1cb315ead19..1e3b0925e7d 100644
--- a/testing/libideviceactivation/APKBUILD
+++ b/testing/libideviceactivation/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Kasper K <kasperkantz@outlook.com>
pkgname=libideviceactivation
pkgver=1.1.1
-pkgrel=0
+pkgrel=4
pkgdesc="Library to handle the activation process of iOS devices"
url="https://libimobiledevice.org"
arch="all"
@@ -28,4 +28,6 @@ package() {
make DESTDIR="$pkgdir" install
}
-sha512sums="72d6e7024404d1a45e419ccdb7603268a1d96845c8636696b55d2c6edd3177b881ef0f5bd7aea548e88ef7976c83fbac63d3c3d7a9b76eba83de492c269ab02a libideviceactivation-1.1.1.tar.bz2"
+sha512sums="
+72d6e7024404d1a45e419ccdb7603268a1d96845c8636696b55d2c6edd3177b881ef0f5bd7aea548e88ef7976c83fbac63d3c3d7a9b76eba83de492c269ab02a libideviceactivation-1.1.1.tar.bz2
+"
diff --git a/testing/libigraph/APKBUILD b/testing/libigraph/APKBUILD
new file mode 100644
index 00000000000..8d835e5e900
--- /dev/null
+++ b/testing/libigraph/APKBUILD
@@ -0,0 +1,46 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
+pkgname=libigraph
+pkgver=0.10.11
+pkgrel=0
+pkgdesc="Library for creating and manipulating graphs"
+url="https://igraph.org"
+# s390x: blocked by openmp
+arch="all !s390x"
+license="GPL-2.0-or-later"
+# bison and flex are needed when building from commit
+makedepends="
+ arpack-dev
+ cmake
+ glpk-dev
+ libxml2-dev
+ openblas-dev
+ plfit-dev
+ samurai
+ "
+subpackages="$pkgname-dev"
+source="https://github.com/igraph/igraph/releases/download/$pkgver/igraph-$pkgver.tar.gz"
+builddir="$srcdir/igraph-$pkgver"
+
+build() {
+ # For building against master branch:
+ #echo "$pkgver" > IGRAPH_VERSION
+
+ cmake -B builddir -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DBUILD_SHARED_LIBS=ON
+ cmake --build builddir
+}
+
+check() {
+ cmake --build builddir --target check
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install builddir
+}
+
+sha512sums="
+d6978589f12ed20b87777394b46f47b4ffc045ef693e5b4fc90163b9482361b2bf0ed2bb04aa99bf4a0653f7e4355cd480b0a165213d90ff7188ef6c86147c86 igraph-0.10.11.tar.gz
+"
diff --git a/testing/libiio/APKBUILD b/testing/libiio/APKBUILD
new file mode 100644
index 00000000000..269cb143f3e
--- /dev/null
+++ b/testing/libiio/APKBUILD
@@ -0,0 +1,63 @@
+# Contributor: Edd Salkield <edd@salkield.uk>
+# Maintainer: Edd Salkield <edd@salkield.uk>
+pkgname=libiio
+pkgver=0.25
+pkgrel=1
+pkgdesc="Interface to the Linux Industrial Input/Output (IIO) Subsystem"
+url="http://analogdevicesinc.github.io/libiio/"
+arch="all"
+license="LGPL-2.1-or-later"
+makedepends="
+ avahi-dev
+ bash
+ bison
+ cmake
+ flex
+ libaio-dev
+ libserialport-dev
+ libusb-dev
+ libxml2-dev
+ py3-setuptools
+ samurai
+ "
+subpackages="
+ $pkgname-dev
+ $pkgname-doc
+ $pkgname-pyc
+ py3-$pkgname:python
+ $pkgname-tools
+ "
+source="https://github.com/analogdevicesinc/libiio/archive/v$pkgver/libiio-v$pkgver.tar.gz"
+options="!check" # no actual tests
+
+build() {
+ cmake -B build -G Ninja -Wno-dev \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_SBINDIR=bin \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DCMAKE_BUILD_TYPE=None \
+ -DPYTHON_BINDINGS=ON \
+ -DUDEV_RULES_INSTALL_DIR=/usr/lib/udev/rules.d \
+ -DWITH_MAN=ON \
+ -DWITH_SERIAL_BACKEND=ON \
+ -DWITH_TESTS=ON # these are test binaries but not actual tyests
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+tools() {
+ amove usr/bin/*
+}
+
+python() {
+ pkgdesc="$pkgdesc (python module)"
+
+ amove usr/lib/python*
+}
+
+sha512sums="
+e0f2f5545b4c78d1f0f56b037db6e363aab01aad69af3a095b3546af74dab6effe0b00f5c336ef799a739f76c5f16ab76a6b8e823508861edd2745a9d3fd2599 libiio-v0.25.tar.gz
+"
diff --git a/testing/libime/APKBUILD b/testing/libime/APKBUILD
new file mode 100644
index 00000000000..f51d22d09f0
--- /dev/null
+++ b/testing/libime/APKBUILD
@@ -0,0 +1,76 @@
+# Contributor: Lindsay Zhou <i@lin.moe>
+# Maintainer: Lindsay Zhou <i@lin.moe>
+pkgname=libime
+pkgver=1.1.6
+pkgrel=0
+_kenlm=bcd4af619a2fa45f5876d8855f7876cc09f663af
+pkgdesc="Fcitx input method engine library"
+url="https://github.com/fcitx/libime"
+arch="all"
+license="LGPL-2.1-or-later"
+depends_dev="boost-dev"
+makedepends="
+ $depends_dev
+ cmake
+ extra-cmake-modules
+ fcitx5-dev
+ samurai
+ "
+subpackages="$pkgname-dev"
+source="$pkgname-$pkgver.tar.gz::https://github.com/fcitx/libime/archive/refs/tags/$pkgver.tar.gz
+ kenlm-$_kenlm.tar.gz::https://github.com/kpu/kenlm/archive/$_kenlm.tar.gz
+ "
+options="net" # build fetches some checksummed language data itself, todo
+
+prepare() {
+ default_prepare
+
+ rmdir src/libime/core/kenlm
+ ln -sfv "$srcdir"/kenlm-$_kenlm src/libime/core/kenlm
+}
+
+build() {
+ if [ "$CBUILD" != "$CHOST" ]; then
+ CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=True \
+ -DCMAKE_BUILD_TYPE=None \
+ -DENABLE_TEST="$(want_check && echo ON || echo OFF)" \
+ $CMAKE_CROSSOPTS
+ cmake --build build
+}
+
+check() {
+ cd build
+ CTEST_OUTPUT_ON_FAILURE=TRUE ctest
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+core() {
+ pkgdesc="$pkgdesc (core module)"
+
+ amove usr/lib/libIMECore.so.*
+}
+
+pinyin() {
+ pkgdesc="$pkgdesc (pinyin module)"
+
+ amove usr/lib/libIMEPinyin.so.*
+}
+
+table() {
+ pkgdesc="$pkgdesc (table module)"
+
+ amove usr/lib/libIMETable.so.*
+}
+
+sha512sums="
+0c9ed4fcb545fee19a7333b1cf6157a95f8498e1322773b526a9e1469e18091c2458ee2410383a1c23dea051cb1dabceb190664e43a806902a91a050cce44c30 libime-1.1.6.tar.gz
+0ed68ed3b927b8c8353ab3815d17d0706b3357dce8a446176bd48ef6b73989bcf142983008e2b2b5e44769428a684dc1abcf3973f9f99c76b9bfc5f80a3aa363 kenlm-bcd4af619a2fa45f5876d8855f7876cc09f663af.tar.gz
+"
diff --git a/testing/libiml/APKBUILD b/testing/libiml/APKBUILD
new file mode 100644
index 00000000000..de0695e500f
--- /dev/null
+++ b/testing/libiml/APKBUILD
@@ -0,0 +1,44 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
+pkgname=libiml
+pkgver=1.0.5
+pkgrel=3
+pkgdesc="Library for solving linear equations over the integers"
+url="https://cs.uwaterloo.ca/~astorjoh/iml.html"
+arch="all"
+license="BSD-3-Clause"
+makedepends="gmp-dev openblas-dev pkgconf"
+source="https://www.cs.uwaterloo.ca/~astorjoh/iml-$pkgver.tar.bz2"
+subpackages="$pkgname-static $pkgname-dev"
+builddir="$srcdir/iml-$pkgver"
+
+prepare() {
+ default_prepare
+ update_config_guess
+ update_config_sub
+}
+
+build() {
+ export CFLAGS="${CFLAGS/-Os/-O3}" # gotta go fast
+
+ ./configure \
+ --target="$CTARGET" \
+ --build="$CBUILD" \
+ --host="$CHOST" \
+ --prefix=/usr \
+ --enable-shared \
+ --with-cblas="$(pkgconf --libs openblas)"
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+b5a85982636035cc50acba7dcff5478c6271be3669313f01915b2761302d4c77617c0dd7932daf74433098670d3ffdb2ef19eb24450b40709750a0b7c8f797f1 iml-1.0.5.tar.bz2
+"
diff --git a/testing/libimobiledevice-glue/APKBUILD b/testing/libimobiledevice-glue/APKBUILD
new file mode 100644
index 00000000000..a0035bddad4
--- /dev/null
+++ b/testing/libimobiledevice-glue/APKBUILD
@@ -0,0 +1,35 @@
+# Maintainer:
+pkgname=libimobiledevice-glue
+pkgver=1.0.0
+pkgrel=1
+pkgdesc="Library for common code of the libimobiledevice project"
+url="https://github.com/libimobiledevice/libimobiledevice-glue"
+arch="all"
+license="LGPL-2.1-or-later"
+makedepends="
+ libplist-dev
+ "
+subpackages="$pkgname-dev"
+source="https://github.com/libimobiledevice/libimobiledevice-glue/releases/download/$pkgver/libimobiledevice-glue-$pkgver.tar.bz2"
+
+build() {
+ CFLAGS="$CFLAGS -flto=auto" \
+ ./configure \
+ --host=$CHOST \
+ --build=$CBUILD \
+ --prefix=/usr \
+ --disable-static
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+b9bc696ba857e8d58dea83f3333f80fb94a4802bfa458820fdb3575263f317324b33ca14cadcf2d54cbf15df492ccc16c759e33c1b69698f4dbecc8138e6915d libimobiledevice-glue-1.0.0.tar.bz2
+"
diff --git a/testing/libindi/0001-explicitly-include-sockets.h.patch b/testing/libindi/0001-explicitly-include-sockets.h.patch
new file mode 100644
index 00000000000..9737b23ef0d
--- /dev/null
+++ b/testing/libindi/0001-explicitly-include-sockets.h.patch
@@ -0,0 +1,24 @@
+From e243d8bed70dbfdf3cf855056548eeaa347f9262 Mon Sep 17 00:00:00 2001
+From: Clayton Craft <clayton@craftyguy.net>
+Date: Fri, 23 Feb 2024 23:23:54 -0800
+Subject: [PATCH] explicitly include sockets.h
+
+---
+ libs/sockets/select.h | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/libs/sockets/select.h b/libs/sockets/select.h
+index 5cbdf72..e8b5b77 100644
+--- a/libs/sockets/select.h
++++ b/libs/sockets/select.h
+@@ -35,6 +35,7 @@ static const SocketFileDescriptor SocketInvalid = INVALID_SOCKET;
+ #include <unistd.h>
+ #include <netdb.h>
+ #include <sys/socket.h> // select
++#include <sys/select.h> // select
+ typedef int SocketFileDescriptor;
+ static const SocketFileDescriptor SocketInvalid = -1;
+ #endif
+--
+2.43.2
+
diff --git a/testing/libindi/APKBUILD b/testing/libindi/APKBUILD
new file mode 100644
index 00000000000..3dea02406d0
--- /dev/null
+++ b/testing/libindi/APKBUILD
@@ -0,0 +1,57 @@
+# Contributor: Clayton Craft <clayton@craftyguy.net>
+# Maintainer: Clayton Craft <clayton@craftyguy.net>
+pkgname=libindi
+pkgver=2.0.7
+pkgrel=0
+pkgdesc="implementation of the INDI protocol for astronomical instrumentation control"
+url="https://indilib.org"
+arch="all !armv7 !armhf !riscv64" # libnova
+license="LGPL-2.1-only AND GPL-2.0-only AND BSD-3-Clause"
+makedepends="
+ boost1.82-program_options
+ cfitsio-dev
+ cmake
+ curl-dev
+ fftw-dev
+ gsl-dev
+ jpeg-dev
+ libcamera-dev
+ libev-dev
+ libnova-dev
+ libogg-dev
+ libtheora-dev
+ libusb-dev
+ libxisf-dev
+ qt5-qtbase-dev
+ samurai
+ tiff-dev
+"
+subpackages="
+ $pkgname-dev
+"
+source="
+ https://github.com/indilib/indi/archive/v$pkgver/indi-$pkgver.tar.gz
+ 0001-explicitly-include-sockets.h.patch
+ "
+builddir="$srcdir/indi-$pkgver"
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DCMAKE_BUILD_TYPE=None \
+ -DINDI_BUILD_QT5_CLIENT=ON
+ cmake --build build
+}
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+292c0a5b8f07b24c42ea9424be19012c97317206b837d8601ec4d771fa35c314bf00712509f8199ee3da193ea12f0c3e90036a49deece304dc256cdeba60810d indi-2.0.7.tar.gz
+b9a6be6b9e99546b678e7cbbdad03d8266a1d3680d50d8e2d156f9838ce5fcf7e89fb287fc57cffa23b5304c6edd12a0d50e58089d64337ea6a3a268a1dd0ec9 0001-explicitly-include-sockets.h.patch
+"
diff --git a/testing/libirecovery/APKBUILD b/testing/libirecovery/APKBUILD
index a56b00f3a5a..ee0ec9229a3 100644
--- a/testing/libirecovery/APKBUILD
+++ b/testing/libirecovery/APKBUILD
@@ -1,13 +1,17 @@
# Contributor: Kasper K <kasperkantz@outlook.com>
# Maintainer: Kasper K <kasperkantz@outlook.com>
pkgname=libirecovery
-pkgver=1.0.0
+pkgver=1.1.0
pkgrel=0
pkgdesc="Library and utility to talk to iBoot/iBSS via USB on Mac OS X, Windows, and Linux"
url="https://libimobiledevice.org"
arch="all"
license="LGPL-2.1-or-later"
-makedepends="readline-dev libusb-dev"
+makedepends="
+ libimobiledevice-glue-dev
+ libusb-dev
+ readline-dev
+ "
subpackages="$pkgname-dev $pkgname-progs"
source="https://github.com/libimobiledevice/libirecovery/releases/download/$pkgver/libirecovery-$pkgver.tar.bz2"
@@ -34,4 +38,6 @@ progs() {
amove usr/bin
}
-sha512sums="7e6f53766c85c714c2d4088e880f56486bcb4d198a9da1108d31f8f1a2444f45ac319a90a4706d00a24cbddc0af9ce8dddf267ba458fe3fa225cc14ea7150797 libirecovery-1.0.0.tar.bz2"
+sha512sums="
+c37c426651abd2b8532ddf46c9c004fc5993c3ab6f559f920a64db68c4ffd582109348d5954f3cda8915f8dc8195c9b93075587a841655865bdef08234c58fc4 libirecovery-1.1.0.tar.bz2
+"
diff --git a/testing/libiscsi/APKBUILD b/testing/libiscsi/APKBUILD
index 8707449d41b..18a02486fa1 100644
--- a/testing/libiscsi/APKBUILD
+++ b/testing/libiscsi/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname="libiscsi"
pkgver="1.19.0"
-pkgrel=0
+pkgrel=2
pkgdesc="iSCSI client library and utilities"
url="https://github.com/sahlberg/libiscsi"
arch="all"
diff --git a/testing/libite/APKBUILD b/testing/libite/APKBUILD
deleted file mode 100644
index 4fb7399f225..00000000000
--- a/testing/libite/APKBUILD
+++ /dev/null
@@ -1,42 +0,0 @@
-# Contributor: David Demelier <markand@malikania.fr>
-# Maintainer: David Demelier <markand@malikania.fr>
-pkgname=libite
-pkgver=2.4.0
-pkgrel=0
-pkgdesc="that missing frog DNA you've been looking for"
-url="https://github.com/troglobit/libite"
-arch="all"
-license="MIT"
-makedepends="autoconf automake libtool"
-subpackages="$pkgname-dev $pkgname-doc"
-source="https://github.com/troglobit/libite/releases/download/v$pkgver/libite-$pkgver.tar.xz"
-
-prepare() {
- default_prepare
- # Remove a test that does not work on chroot builds.
- sed -i -e "/tempfile/d" tests/Makefile.am
- autoreconf -vif
-}
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-8e79084b616150dd4de491c6b8441d5043c81cf161bb655a32b6b7f8536682b967f4810870d8af4ae92780dedb7302bbc8db093036493506c88126143cb9bbef libite-2.4.0.tar.xz
-"
diff --git a/testing/libjodycode/APKBUILD b/testing/libjodycode/APKBUILD
new file mode 100644
index 00000000000..bc8bdb6c17c
--- /dev/null
+++ b/testing/libjodycode/APKBUILD
@@ -0,0 +1,28 @@
+# Maintainer:
+pkgname=libjodycode
+pkgver=3.1
+pkgrel=1
+pkgdesc="Shared code used by several utilities written by Jody Bruchon"
+url="https://github.com/jbruchon/libjodycode"
+arch="all"
+license="MIT"
+subpackages="$pkgname-dev $pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/jbruchon/libjodycode/archive/refs/tags/v$pkgver.tar.gz"
+options="!check" # no tests
+
+build() {
+ make \
+ NO_SIMD=1 \
+ NO_SSE2=1 \
+ NO_AVX2=1 \
+ CFLAGS="$CFLAGS -DNO_SSE2 -DNO_SIMD -DNO_AVX2 -flto=auto"
+}
+
+package() {
+ make DESTDIR="$pkgdir" PREFIX=/usr install
+ rm -v "$pkgdir"/usr/lib/*.a
+}
+
+sha512sums="
+980f1797084594f710cae92b26d10c46a73415d11e89af608c8a87730ea39f497fec0889f9bd88af7c23aa0067dd6642758edc2b2756d9eba6e6a4a50c583751 libjodycode-3.1.tar.gz
+"
diff --git a/testing/libjwt/APKBUILD b/testing/libjwt/APKBUILD
deleted file mode 100644
index 99fa2230ecd..00000000000
--- a/testing/libjwt/APKBUILD
+++ /dev/null
@@ -1,39 +0,0 @@
-# Contributor: psykose <alice@ayaya.dev>
-# Maintainer: psykose <alice@ayaya.dev>
-pkgname=libjwt
-pkgver=1.13.1
-pkgrel=0
-pkgdesc="JWT C Library"
-url="https://github.com/benmcollins/libjwt"
-arch="all"
-license="MPL-2.0"
-makedepends="autoconf automake jansson-dev libtool openssl-dev"
-checkdepends="check-dev"
-subpackages="$pkgname-static $pkgname-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/benmcollins/libjwt/archive/v$pkgver.tar.gz"
-
-prepare() {
- default_prepare
- autoreconf -i
-}
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --without-examples
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-e2b4a561048dbd57deb784aa6f071e03dd2f77457c702c2e1d479b981e249ca7c9062edcbea57e68ba359c9099ad941cf95d751e9e808c6736553cf1c28d9526 libjwt-1.13.1.tar.gz
-"
diff --git a/testing/libkkc/APKBUILD b/testing/libkkc/APKBUILD
new file mode 100644
index 00000000000..12004bdb8a7
--- /dev/null
+++ b/testing/libkkc/APKBUILD
@@ -0,0 +1,61 @@
+# Maintainer:
+pkgname=libkkc
+pkgver=0.3.5
+pkgrel=2
+pkgdesc="Japanese Kana Kanji conversion input method library"
+url="https://github.com/ueno/libkkc"
+arch="all"
+license="GPL-3.0-or-later"
+makedepends="
+ intltool
+ json-glib-dev
+ libgee-dev
+ libmarisa-dev
+ py3-marisa
+ "
+subpackages="$pkgname-dev $pkgname-lang kkc-package-data"
+source="https://github.com/ueno/libkkc/releases/download/v$pkgver/libkkc-$pkgver.tar.gz
+ $pkgname-py3.patch::https://github.com/ueno/libkkc/commit/ba1c1bd3eb86d887fc3689c3142732658071b5f7.patch
+ "
+
+prepare() {
+ default_prepare
+ update_config_guess
+ update_config_sub
+}
+
+build() {
+ ./configure \
+ --prefix=/usr \
+ --host=$CHOST \
+ --build=$CBUILD \
+ --disable-static \
+ --disable-silent-rules \
+ --disable-vapigen
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+data() {
+ pkgdesc="$pkgdesc (data downloader script)"
+ amove usr/bin
+}
+
+lang() {
+ pkgdesc="translations for $pkgname"
+
+ mkdir -p "$subpkgdir"/usr/share
+ mv "$pkgdir"/usr/lib/locale "$subpkgdir"/usr/share/
+}
+
+sha512sums="
+f611c3104a22ad38af29746870849d8937b6af2a7fee0952cc25f36ef845b5617a192df7ca63ff2a507384f7a6a13c9c1b4fa3b9a34f3f041bee8793d04b9236 libkkc-0.3.5.tar.gz
+ba74aa8e545d32d40244f86009a49dedb575a6a8dd171baa5fc3e9a7aeac0ea51e4a7e2064a3f2b62f09bfa4751e3a33454a996b0acfe0fab45413dd84881755 libkkc-py3.patch
+"
diff --git a/testing/liblastfm-qt/APKBUILD b/testing/liblastfm-qt/APKBUILD
index 3132ad849e2..b392cb4fc9d 100644
--- a/testing/liblastfm-qt/APKBUILD
+++ b/testing/liblastfm-qt/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: knuxify <knuxify@gmail.com>
pkgname=liblastfm-qt
pkgver=1.1.10_git20190823
-pkgrel=1
+pkgrel=2
_commit=2ce2bfe1879227af8ffafddb82b218faff813db9
pkgdesc="A Qt C++ library for the Last.fm webservices "
url="https://last.fm"
diff --git a/testing/libliftoff/APKBUILD b/testing/libliftoff/APKBUILD
deleted file mode 100644
index b6298263a1e..00000000000
--- a/testing/libliftoff/APKBUILD
+++ /dev/null
@@ -1,30 +0,0 @@
-# Contributor: Michał Polański <michal@polanski.me>
-# Maintainer: Michał Polański <michal@polanski.me>
-pkgname=libliftoff
-pkgver=0.2.0
-pkgrel=0
-pkgdesc="Lightweight KMS plane library"
-url="https://gitlab.freedesktop.org/emersion/libliftoff"
-license="MIT"
-arch="all"
-makedepends="meson libdrm-dev"
-subpackages="$pkgname-dev"
-source="https://gitlab.freedesktop.org/emersion/libliftoff/-/archive/v$pkgver/libliftoff-v$pkgver.tar.gz"
-builddir="$srcdir/$pkgname-v$pkgver"
-
-build() {
- abuild-meson . build
- meson compile ${JOBS:+-j ${JOBS}} -C build
-}
-
-check() {
- meson test --no-rebuild -C build
-}
-
-package() {
- DESTDIR="$pkgdir" meson install --no-rebuild -C build
-}
-
-sha512sums="
-5a1c4e5d99ac0631fbdba8165cdd03c2461b7f5ac610ed94f5ba80521aee45391c9cd3cbee0644cc6bdcd1f6e0523018a50c4a6ae4dcc9410767055b9fe382bd libliftoff-v0.2.0.tar.gz
-"
diff --git a/testing/liblinbox/APKBUILD b/testing/liblinbox/APKBUILD
new file mode 100644
index 00000000000..d5be20d3547
--- /dev/null
+++ b/testing/liblinbox/APKBUILD
@@ -0,0 +1,50 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
+pkgname=liblinbox
+pkgver=1.7.0
+pkgrel=3
+pkgdesc="Library for exact, high-performance linear algebra computation"
+url="https://linalg.org"
+# armhf, armv7, x86: fail tests
+# s390x: blocked by flint
+arch="all !armhf !armv7 !x86 !s390x"
+license="LGPL-2.1-or-later"
+makedepends="
+ fflas-ffpack
+ flint-dev
+ fplll-dev
+ gfortran
+ gmp-dev
+ libiml-dev
+ libm4rie-dev
+ mpfr-dev
+ openblas-dev
+ "
+source="https://github.com/linbox-team/linbox/releases/download/v$pkgver/linbox-$pkgver.tar.gz"
+subpackages="$pkgname-static $pkgname-dev $pkgname-doc"
+builddir="$srcdir/linbox-$pkgver"
+
+build() {
+ export CXXFLAGS="${CXXFLAGS/-Os/-O3}" # gotta go fast
+
+ ./configure \
+ --target="$CTARGET" \
+ --build="$CBUILD" \
+ --host="$CHOST" \
+ --prefix=/usr \
+ --program-prefix= \
+ --without-archnative
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+cb4e848186d1f6357f498d1e3bda6484b4c789c02440f9614a227a2ae206a31fb20b32be40bda74da3f2f8f981bbd58d80fc97c95499b5151bb06eafb867ef9e linbox-1.7.0.tar.gz
+"
diff --git a/testing/liblouis/APKBUILD b/testing/liblouis/APKBUILD
deleted file mode 100644
index c4137ebdaa2..00000000000
--- a/testing/liblouis/APKBUILD
+++ /dev/null
@@ -1,44 +0,0 @@
-# Contributor: Drew DeVault <sir@cmpwn.com>
-# Maintainer:
-pkgname=liblouis
-pkgver=3.21.0
-pkgrel=1
-pkgdesc="Braille translator and back-translator"
-url="http://liblouis.org/"
-arch="all"
-license="GPL-3.0-or-later"
-makedepends="help2man python3"
-checkdepends="bash"
-subpackages="$pkgname-static $pkgname-dev $pkgname-bin:_bin $pkgname-doc"
-source="
- $pkgname-$pkgver.tar.gz::https://github.com/liblouis/liblouis/releases/download/v$pkgver/liblouis-$pkgver.tar.gz
- "
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var \
- --enable-ucs4
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-_bin() {
- mkdir -p "$subpkgdir"/usr
- mv "$pkgdir"/usr/bin "$subpkgdir"/usr
-}
-
-sha512sums="
-538d8e4a088a6bbabcd53fa8886962844edd03eddd998a75be5f5c39d78c6164a209c71a38aba3c95a3f16c9db98e2e490fb64aba3689311599751dd8adb43b7 liblouis-3.21.0.tar.gz
-"
diff --git a/testing/liblxqt/APKBUILD b/testing/liblxqt/APKBUILD
deleted file mode 100644
index fa25b538a8a..00000000000
--- a/testing/liblxqt/APKBUILD
+++ /dev/null
@@ -1,57 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=liblxqt
-pkgver=1.1.0
-pkgrel=0
-pkgdesc="Common base library for LXQt components"
-url="https://github.com/lxqt/liblxqt"
-# armhf blocked by extra-cmake-modules -> kwindowsystem
-arch="all !armhf"
-license="LGPL-2.0-or-later"
-makedepends="
- cmake
- lxqt-build-tools
- qt5-qttools-dev
- libqtxdg-dev
- kwindowsystem-dev
- qt5-qtx11extras-dev
- libxscrnsaver-dev
- "
-subpackages="$pkgname-dev"
-source="https://github.com/lxqt/liblxqt/releases/download/$pkgver/liblxqt-$pkgver.tar.xz"
-options="!check" # No testsuite
-
-# Enable backlight support when possible
-case "$CARCH" in
- s390x|riscv64) ;;
- *) makedepends="$makedepends polkit-qt-1-dev" ;;
-esac
-
-build() {
- # Requires polkit-qt-1-dev which requires polkit
- # which is not available on rust-less arches like
- # s390x
- case "$CARCH" in
- s390x|riscv64) _build_backlight=OFF ;;
- *) _build_backlight=ON ;;
- esac
-
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- -DBUILD_BACKLIGHT_LINUX_BACKEND=$_build_backlight \
- $CMAKE_CROSSOPTS
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-
-sha512sums="
-6789bc64da94d0643dfa7d234a95c533ff31123e9c7e52544d0951b309ce0e86c7323808c527f37b9dc7d06ebb35bef57a7713596d5969d2ae30ccb44cbec283 liblxqt-1.1.0.tar.xz
-"
diff --git a/testing/libm4ri/APKBUILD b/testing/libm4ri/APKBUILD
new file mode 100644
index 00000000000..0b98a4bac8b
--- /dev/null
+++ b/testing/libm4ri/APKBUILD
@@ -0,0 +1,48 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
+pkgname=libm4ri
+pkgver=20200125
+pkgrel=4
+pkgdesc="Library for fast arithmetic with dense matrices over F2"
+url="https://github.com/malb/m4ri"
+arch="all"
+license="GPL-2.0-or-later"
+makedepends="
+ autoconf
+ automake
+ libpng-dev
+ libtool
+ "
+source="https://github.com/malb/m4ri/archive/release-$pkgver/m4ri-$pkgver.tar.gz"
+subpackages="$pkgname-static $pkgname-dev"
+builddir="$srcdir/m4ri-release-$pkgver"
+
+prepare() {
+ default_prepare
+ autoreconf -fi
+}
+
+build() {
+ export CFLAGS="${CFLAGS/-Os/-O3}" # gotta go fast
+
+ ./configure \
+ --target="$CTARGET" \
+ --build="$CBUILD" \
+ --host="$CHOST" \
+ --prefix=/usr \
+ --enable-thread-safe \
+ --enable-openmp
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+220c965c2c65aa96d7a138bdaf987e5649199464804bdf80a41f04f645934a07236cd5667a9752c4491bc3727dba6eda1f17779cdcf93d453374f5d7a4976698 m4ri-20200125.tar.gz
+"
diff --git a/testing/libm4rie/APKBUILD b/testing/libm4rie/APKBUILD
new file mode 100644
index 00000000000..8ab2909c795
--- /dev/null
+++ b/testing/libm4rie/APKBUILD
@@ -0,0 +1,37 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
+pkgname=libm4rie
+pkgver=20200125
+pkgrel=3
+pkgdesc="Library for fast arithmetic with dense matrices over GF(2^e) for 2 <= e <= 16"
+url="https://bitbucket.org/malb/m4rie"
+arch="all"
+license="GPL-2.0-or-later"
+makedepends="libm4ri-dev"
+source="https://bitbucket.org/malb/m4rie/downloads/m4rie-$pkgver.tar.gz"
+subpackages="$pkgname-static $pkgname-dev"
+builddir="$srcdir/m4rie-$pkgver"
+
+build() {
+ export CFLAGS="${CFLAGS/-Os/-O3}" # gotta go fast
+
+ ./configure \
+ --target="$CTARGET" \
+ --build="$CBUILD" \
+ --host="$CHOST" \
+ --prefix=/usr \
+ --enable-openmp
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+761ba9d8eeec381356b45d37a63bac9e70e2b1227435fb717d89a2358df610458fd4f7b7b4af90ad24c918bae81a25c926380761d2c514a762b92d8c661b52e7 m4rie-20200125.tar.gz
+"
diff --git a/testing/libmdbx/APKBUILD b/testing/libmdbx/APKBUILD
index 847c396ef44..9395a84e7a5 100644
--- a/testing/libmdbx/APKBUILD
+++ b/testing/libmdbx/APKBUILD
@@ -1,15 +1,15 @@
# Contributor: Noel Kuntze <noel.kuntze@thermi.consulting>
# Maintainer: Noel Kuntze <noel.kuntze@thermi.consulting>
pkgname=libmdbx
-pkgver=0.11.1
+pkgver=0.11.8
pkgrel=0
pkgdesc="fast, compact, powerful, embedded, transactional key-value database, with permissive license"
-url="https://github.com/erthink/libmdbx"
+url="https://libmdbx.dqdkfa.ru/"
arch="all"
license="OLDAP-2.8"
-makedepends="linux-headers cmake bash"
+makedepends="linux-headers cmake bash samurai"
subpackages="$pkgname-dbg $pkgname-dev $pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/erthink/libmdbx/archive/refs/tags/v$pkgver.tar.gz
+source="$pkgname-$pkgver.tar.gz::https://github.com/Thermi/libmdbx/archive/refs/tags/v$pkgver.tar.gz
0001-mdbx-Remove-all-checks-for-amalgated-or-git-source-i.patch
fix-example.patch
"
@@ -21,21 +21,19 @@ build() {
CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
fi
export CFLAGS="$CFLAGS -fPIC -Wno-int-to-pointer-cast"
- cmake -B build \
+ cmake -G Ninja -B build \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
-DBUILD_SHARED_LIBS=True \
- -DCMAKE_BUILD_TYPE=None \
+ -DCMAKE_BUILD_TYPE=MinSizeRel \
-DMDBX_ENABLE_TESTS=True \
- $CMAKE_CROSSOPTS .
+ $CMAKE_CROSSOPTS
cmake --build build
}
check() {
- cd build
-# export CFLAGS="$CFLAGS -fPIC -Wno-int-to-pointer-cast"
-# cmake . -DMDBX_ENABLE_TESTS=True
- make -f Makefile mdbx-test test-singleprocess build-test TEST_DB=/tmp/mdbx-test.db TEST_LOG=/tmp/mdbx-test.log.gz
+ TEST_DB=/tmp/mdbx-test.db TEST_LOG=/tmp/mdbx-test.log.gz \
+ ninja -C build mdbx-test test-singleprocess build-test
rm /tmp/mdbx-test.*
}
@@ -44,7 +42,7 @@ package() {
}
sha512sums="
-f253f94bb6edae955e4400fb69e6db6efcbfff59f8ff2856495904bbc508b835ac78aa650f8c2c4eeaddf688e7432eca3d71b49f372d469cd90004a1aba40831 libmdbx-0.11.1.tar.gz
+5751de7e288dc63f428a3cbeea5e9e355bfc96163d826b1a9d55c44b1b9b0e22c2dedba56d4ebca2d2edd7c85d7f6724526cf6183b2dd497e2cf7307548e0095 libmdbx-0.11.8.tar.gz
5e5fef4219279b10f0d4371fcbf3e2d4a7d958eb337f9de92aebb6a7d0d6644faa65eb804f46021678997a638ac601b03d9facbbf1164b45ae9075384d300df2 0001-mdbx-Remove-all-checks-for-amalgated-or-git-source-i.patch
baeb79efa7bb5d36af474f6dbefece9c597cf0b4d86cee96b9855da9cba4ee43aa46fab97c0c85c74ac76df9c4e3adc39666775ae14d79c394d07344569940ce fix-example.patch
"
diff --git a/testing/libmdf/APKBUILD b/testing/libmdf/APKBUILD
index 4351a053636..d5639b3259c 100644
--- a/testing/libmdf/APKBUILD
+++ b/testing/libmdf/APKBUILD
@@ -1,18 +1,26 @@
# Contributor: Henrik Holst <henrik.holst@millistream.com>
# Maintainer:
pkgname=libmdf
-pkgver=1.0.23
-pkgrel=2
+pkgver=1.0.27
+pkgrel=0
pkgdesc="Millistream Data Feed API library"
url="https://millistream.com"
arch="all !ppc64le" # Fails to fetch on builders
license="LGPL-3.0-or-later"
-makedepends="openssl-dev zlib-dev"
+makedepends="
+ openssl-dev>3
+ zlib-dev
+ zstd-dev
+ "
subpackages="$pkgname-dev"
source="https://packages.millistream.com/source/libmdf-$pkgver.tar.gz"
build() {
- ./configure --prefix=/usr --disable-static
+ ./configure \
+ --host=$CHOST \
+ --build=$CBUILD \
+ --prefix=/usr \
+ --disable-static
make
}
@@ -24,4 +32,6 @@ package() {
make DESTDIR="$pkgdir" install
}
-sha512sums="31d7922cb72df6bf5c3df1b3fffd2b5b6df0f00a5c4ff9a69d4018cb7e44d5f845f2ca4fe12d709db580e4ae1e9763ffa3bf8566bb0b8e354cc957aaf81115eb libmdf-1.0.23.tar.gz"
+sha512sums="
+fdcd148d4abb3914c90cf5ddc9ea4b0bb47b79b4c631d3ca4559137a39a670c955669be0893255a10268a0f4ec9dfa3c206d9fdf09f607e119edef5adaefe203 libmdf-1.0.27.tar.gz
+"
diff --git a/testing/libmedc/APKBUILD b/testing/libmedc/APKBUILD
index 21e6f59f328..b0d7e48db99 100644
--- a/testing/libmedc/APKBUILD
+++ b/testing/libmedc/APKBUILD
@@ -1,35 +1,33 @@
# Contributor: Aiden Grossman <agrossman154@yahoo.com>
# Maintainer: Aiden Grossman <agrossman154@yahoo.com>
pkgname=libmedc
-pkgver=4.1.0
-pkgrel=1
+pkgver=4.1.1
+pkgrel=2
pkgdesc="Open source library for numerical simulation"
-url="https://www.salome-platform.org/downloads/current-version"
+url="https://www.salome-platform.org/"
arch="all"
license="GPL-3.0-or-later"
-makedepends="cmake hdf5-dev swig python3-dev"
+makedepends="cmake hdf5-dev swig python3-dev samurai"
options="!check" #test suite is nonfunctional with python bindings
-subpackages="$pkgname-dev $pkgname-doc $pkgname-python:_py"
+subpackages="$pkgname-dev $pkgname-doc $pkgname-python-pyc $pkgname-python:_py"
source="
- https://files.salome-platform.org/Salome/other/med-$pkgver.tar.gz
- hdf5-1.12.patch
- hdf-version.patch
+ https://files.salome-platform.org/Salome/medfile/med-$pkgver.tar.gz
+ hdf5.patch
cmake-config-dir.patch
"
builddir="$srcdir/med-$pkgver"
build() {
- cmake \
- -B ./build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
-DMEDFILE_BUILD_TESTS=OFF \
- -DMEDFILE_BUILD_PYTHON=ON .
- make -C build
+ -DMEDFILE_BUILD_PYTHON=ON
+ cmake --build build
}
package() {
- DESTDIR="$pkgdir" make -C build install
+ DESTDIR="$pkgdir" cmake --install build
}
_py() {
@@ -39,8 +37,7 @@ _py() {
}
sha512sums="
-94d07663c2f6a3cd497f54b480c3d742476d2a25172feb567980c9e75d49f4661aa2c6aaf570470938265997154e348bc1608065b86d42afda52d4e6361fedf8 med-4.1.0.tar.gz
-65e68a1ddf077f0406498cf26165d5012039c279d6a5da03e29f67edad3fa4bbf6bb0e767fb4bfe279db0f68d0e6ab67c1e973db4ea967ad014bb40dff51b36d hdf5-1.12.patch
-665f765ed752aaa69b844c1428e551aa93e168f39436877afef0353674a0b8cb61f2774d9ab1de45701d1bb6e99b8654018d895f28ac09ad1d592463fd620133 hdf-version.patch
-b794675b97d81a982f06ea3ac07f0a2c6f820cb829055aca9c3259e9157809e674e5de7f7f6502548f3c841f55b27a1521e3734d2aab9291933b131f53b67d59 cmake-config-dir.patch
+f211fa82750a7cc935baa3a50a55d16e40117a0f2254b482492ba8396d82781ca84960995da7a16b2b5be0b93ce76368bf4b311bb8af0e5f0243e7051c9c554c med-4.1.1.tar.gz
+68d9291e73a68d674081314028c0fce7bbd4a7b78b93b7e5078117ce62f2d07318bc33ec95091ce677148ec3926c1ce653d0760c34e74b29257a7be59210f040 hdf5.patch
+8d0f58cd67d205fbacaff0e6da76e2ee5473457b478ede13a551ebe5853c0716c7406b74c3792e1ace33a34d352fccca8dd2940f063a7c060a12529d060a991a cmake-config-dir.patch
"
diff --git a/testing/libmedc/cmake-config-dir.patch b/testing/libmedc/cmake-config-dir.patch
index 067179b45f4..e1f43a47cc3 100644
--- a/testing/libmedc/cmake-config-dir.patch
+++ b/testing/libmedc/cmake-config-dir.patch
@@ -1,10 +1,11 @@
---- c/CMakeLists.txt
-+++ w/CMakeLists.txt
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
@@ -101,7 +101,7 @@
IF(WIN32 AND NOT CYGWIN)
SET(INSTALL_CMAKE_CONFIG_DIR cmake)
ELSE()
-- SET(INSTALL_CMAKE_CONFIG_DIR share/cmake/med-fichier-${MED_STR_VERSION})
-+ SET(INSTALL_CMAKE_CONFIG_DIR lib/cmake/med-fichier-${MED_STR_VERSION})
+- SET(INSTALL_CMAKE_CONFIG_DIR share/cmake/medfile-${MED_STR_VERSION})
++ SET(INSTALL_CMAKE_CONFIG_DIR lib${LIB_SUFFIX}/cmake/medfile-${MED_STR_VERSION})
ENDIF()
SET(INSTALL_INCLUDE_DIR include)
+
diff --git a/testing/libmedc/hdf-version.patch b/testing/libmedc/hdf-version.patch
deleted file mode 100644
index 5262846936d..00000000000
--- a/testing/libmedc/hdf-version.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- c/src/ci/MEDfileCompatibility.c
-+++ w/src/ci/MEDfileCompatibility.c
-@@ -113,7 +113,7 @@
- #if MED_NUM_MAJEUR != 4
- #error "Don't forget to update the test version here when you change the major version of the library !"
- #endif
--#if H5_VERS_MINOR > 10
-+#if 0
- #error "Don't forget to check the compatibility version of the library, depending on the internal hdf model choice !"
- #error "Cf. _MEDfileCreate ..."
- #endif
diff --git a/testing/libmedc/hdf5-1.12.patch b/testing/libmedc/hdf5-1.12.patch
deleted file mode 100644
index f9a75e5e39f..00000000000
--- a/testing/libmedc/hdf5-1.12.patch
+++ /dev/null
@@ -1,92 +0,0 @@
-Originally from https://gist.github.com/jedbrown/527ef81ff59a0dccf833da40fdd15a47
-diff --git c/config/cmake_files/medMacros.cmake w/config/cmake_files/medMacros.cmake
-index b79f387..7c82cec 100644
---- c/config/cmake_files/medMacros.cmake
-+++ w/config/cmake_files/medMacros.cmake
-@@ -398,7 +398,7 @@ MACRO(MED_FIND_HDF5)
- ##
- ## Requires 1.10.x version
- ##
-- IF (NOT HDF_VERSION_MAJOR_REF EQUAL 1 OR NOT HDF_VERSION_MINOR_REF EQUAL 10 OR NOT HDF_VERSION_RELEASE_REF GREATER 1)
-+ IF (HDF5_VERSION VERSION_LESS 1.10.2)
- MESSAGE(FATAL_ERROR "HDF5 version is ${HDF_VERSION_REF}. Only versions >= 1.10.2 are supported.")
- ENDIF()
- ##
-diff --git c/src/ci/MEDfileCompatibility.c w/src/ci/MEDfileCompatibility.c
-index b5c42d1..d94e6a8 100644
---- c/src/ci/MEDfileCompatibility.c
-+++ w/src/ci/MEDfileCompatibility.c
-@@ -71,7 +71,7 @@ MEDfileCompatibility(const char* const filename,
- _hversionMMR=10000*_hmajeur+100*_hmineur+_hrelease;
- /* ISCRUTE(_hversionMMR); */
- /* ISCRUTE(HDF_VERSION_NUM_REF); */
-- if ( (_hversionMMR >= HDF_VERSION_NUM_REF) && (_hmineur == HDF_VERSION_MINOR_REF) ) *hdfok = MED_TRUE;
-+ if (_hversionMMR >= HDF_VERSION_NUM_REF) *hdfok = MED_TRUE;
-
- /* TODO : Vérifier si la version mineure HDF du fichier est supérieur
- à la version mineure de la bibliothèque HDF utilisée */
-diff --git c/src/hdfi/_MEDfileCreate.c w/src/hdfi/_MEDfileCreate.c
-index 34c75cc..66073c1 100644
---- c/src/hdfi/_MEDfileCreate.c
-+++ w/src/hdfi/_MEDfileCreate.c
-@@ -84,7 +84,7 @@ med_idt _MEDfileCreate(const char * const filename, const med_access_mode access
- * En HDF5-1.10.0p1 cela n'a aucun effet !
- * Un test autoconf permet de fixer un intervalle de version HDF à MED.
- */
--#if H5_VERS_MINOR > 10
-+#if H5_VERS_MINOR > 12
- #error "Don't forget to change the compatibility version of the library !"
- #endif
-
-diff --git c/src/hdfi/_MEDfileOpen.c w/src/hdfi/_MEDfileOpen.c
-index 7d0b798..6a7de9a 100644
---- c/src/hdfi/_MEDfileOpen.c
-+++ w/src/hdfi/_MEDfileOpen.c
-@@ -72,7 +72,7 @@ med_idt _MEDfileOpen(const char * const filename,const med_access_mode accessmod
-
- • The creation order tracking property, H5P_CRT_ORDER_TRACKED, has been set in the group creation property list (see H5Pset_link_creation_order).
- */
--#if H5_VERS_MINOR > 10
-+#if H5_VERS_MINOR > 12
- #error "Don't forget to change the compatibility version of the library !"
- #endif
- /* L'avantage de bloquer le modèle interne HDF5
-diff --git c/src/hdfi/_MEDmemFileOpen.c w/src/hdfi/_MEDmemFileOpen.c
-index 9449cda..a3f4adc 100644
---- c/src/hdfi/_MEDmemFileOpen.c
-+++ w/src/hdfi/_MEDmemFileOpen.c
-@@ -434,7 +434,7 @@ med_idt _MEDmemFileOpen(const char * const filename, med_memfile * const memfile
- goto ERROR;
- }
-
--#if H5_VERS_MINOR > 10
-+#if H5_VERS_MINOR > 12
- #error "Don't forget to change the compatibility version of the library !"
- #endif
- if ( H5Pset_libver_bounds( _fapl, H5F_LIBVER_18, H5F_LIBVER_18) ) {
-diff --git c/src/hdfi/_MEDparFileCreate.c w/src/hdfi/_MEDparFileCreate.c
-index c6d9f44..b3b2a41 100644
---- c/src/hdfi/_MEDparFileCreate.c
-+++ w/src/hdfi/_MEDparFileCreate.c
-@@ -64,7 +64,7 @@ med_idt _MEDparFileCreate(const char * const filename, const med_access_mode acc
- * En HDF5-1.10.0p1 cela n'a aucun effet !
- * Un test autoconf permet de fixer un intervalle de version HDF à MED.
- */
--#if H5_VERS_MINOR > 10
-+#if H5_VERS_MINOR > 12
- #error "Don't forget to change the compatibility version of the library !"
- #endif
-
-diff --git c/src/hdfi/_MEDparFileOpen.c w/src/hdfi/_MEDparFileOpen.c
-index 0100729..dfad95c 100644
---- c/src/hdfi/_MEDparFileOpen.c
-+++ w/src/hdfi/_MEDparFileOpen.c
-@@ -55,7 +55,7 @@ med_idt _MEDparFileOpen(const char * const filename,const med_access_mode access
- MED_ERR_(_fid,MED_ERR_INIT,MED_ERR_PROPERTY,MED_ERR_PARALLEL_MSG);
- goto ERROR;
- }
--#if H5_VERS_MINOR > 10
-+#if H5_VERS_MINOR > 12
- #error "Don't forget to change the compatibility version of the library !"
- #endif
- if ( H5Pset_libver_bounds( _fapl, H5F_LIBVER_18, H5F_LIBVER_18 ) ) {
diff --git a/testing/libmedc/hdf5.patch b/testing/libmedc/hdf5.patch
new file mode 100644
index 00000000000..bc4764b444d
--- /dev/null
+++ b/testing/libmedc/hdf5.patch
@@ -0,0 +1,94 @@
+Originally from https://gist.github.com/jedbrown/527ef81ff59a0dccf833da40fdd15a47
+diff -rupN med-4.1.0/config/cmake_files/medMacros.cmake med-4.1.0-new/config/cmake_files/medMacros.cmake
+--- med-4.1.0/config/cmake_files/medMacros.cmake 2021-12-03 09:35:30.675827163 +0100
++++ med-4.1.0-new/config/cmake_files/medMacros.cmake 2021-12-03 09:32:31.894994147 +0100
+@@ -447,7 +447,7 @@ MACRO(MED_FIND_HDF5)
+ ##
+ ## Requires 1.10.x version
+ ##
+- IF (NOT HDF_VERSION_MAJOR_REF EQUAL 1 OR NOT HDF_VERSION_MINOR_REF EQUAL 10 OR NOT HDF_VERSION_RELEASE_REF GREATER 1)
++ IF (HDF5_VERSION VERSION_LESS 1.10.2)
+ MESSAGE(FATAL_ERROR "HDF5 version is ${HDF_VERSION_REF}. Only versions >= 1.10.2 are supported.")
+ ENDIF()
+ ##
+diff -rupN med-4.1.0/src/ci/MEDfileCompatibility.c med-4.1.0-new/src/ci/MEDfileCompatibility.c
+--- med-4.1.0/src/ci/MEDfileCompatibility.c 2021-12-03 09:35:30.676827162 +0100
++++ med-4.1.0-new/src/ci/MEDfileCompatibility.c 2021-12-03 09:33:26.292942149 +0100
+@@ -71,7 +71,7 @@ MEDfileCompatibility(const char* const f
+ _hversionMMR=10000*_hmajeur+100*_hmineur+_hrelease;
+ /* ISCRUTE(_hversionMMR); */
+ /* ISCRUTE(HDF_VERSION_NUM_REF); */
+- if ( (_hversionMMR >= HDF_VERSION_NUM_REF) && (_hmineur == HDF_VERSION_MINOR_REF) ) *hdfok = MED_TRUE;
++ if (_hversionMMR >= HDF_VERSION_NUM_REF) *hdfok = MED_TRUE;
+
+ /* TODO : Vérifier si la version mineure HDF du fichier est supérieure
+ à la version mineure de la bibliothèque HDF utilisée :
+@@ -113,7 +113,7 @@ MEDfileCompatibility(const char* const f
+ #if MED_NUM_MAJEUR != 4
+ #error "Don't forget to update the test version here when you change the major version of the library !"
+ #endif
+-#if H5_VERS_MINOR > 10
++#if H5_VERS_MINOR > 14
+ #error "Don't forget to check the compatibility version of the library, depending on the internal hdf model choice !"
+ #error "Cf. _MEDfileCreate ..."
+ #endif
+diff -rupN med-4.1.0/src/hdfi/_MEDfileCreate.c med-4.1.0-new/src/hdfi/_MEDfileCreate.c
+--- med-4.1.0/src/hdfi/_MEDfileCreate.c 2021-12-03 09:35:30.677827161 +0100
++++ med-4.1.0-new/src/hdfi/_MEDfileCreate.c 2021-12-03 09:32:31.894994147 +0100
+@@ -159,7 +159,7 @@ med_idt _MEDfileCreate(const char * cons
+ * En HDF5-1.10.0p1 cela n'a aucun effet !
+ * Un test autoconf permet de fixer un intervalle de version HDF à MED.
+ */
+-#if H5_VERS_MINOR > 10
++#if H5_VERS_MINOR > 14
+ #error "Don't forget to change the compatibility version of the library !"
+ #endif
+
+diff -rupN med-4.1.0/src/hdfi/_MEDfileOpen.c med-4.1.0-new/src/hdfi/_MEDfileOpen.c
+--- med-4.1.0/src/hdfi/_MEDfileOpen.c 2021-12-03 09:35:30.677827161 +0100
++++ med-4.1.0-new/src/hdfi/_MEDfileOpen.c 2021-12-03 09:32:31.894994147 +0100
+@@ -72,7 +72,7 @@ med_idt _MEDfileOpen(const char * const
+
+ • The creation order tracking property, H5P_CRT_ORDER_TRACKED, has been set in the group creation property list (see H5Pset_link_creation_order).
+ */
+-#if H5_VERS_MINOR > 10
++#if H5_VERS_MINOR > 14
+ #error "Don't forget to change the compatibility version of the library !"
+ #endif
+ /* L'avantage de bloquer le modèle interne HDF5
+diff -rupN med-4.1.0/src/hdfi/_MEDmemFileOpen.c med-4.1.0-new/src/hdfi/_MEDmemFileOpen.c
+--- med-4.1.0/src/hdfi/_MEDmemFileOpen.c 2021-12-03 09:35:30.678827160 +0100
++++ med-4.1.0-new/src/hdfi/_MEDmemFileOpen.c 2021-12-03 09:32:31.894994147 +0100
+@@ -434,7 +434,7 @@ med_idt _MEDmemFileOpen(const char * con
+ goto ERROR;
+ }
+
+-#if H5_VERS_MINOR > 10
++#if H5_VERS_MINOR > 14
+ #error "Don't forget to change the compatibility version of the library !"
+ #endif
+ if ( H5Pset_libver_bounds( _fapl, H5F_LIBVER_18, H5F_LIBVER_18) ) {
+diff -rupN med-4.1.0/src/hdfi/_MEDparFileCreate.c med-4.1.0-new/src/hdfi/_MEDparFileCreate.c
+--- med-4.1.0/src/hdfi/_MEDparFileCreate.c 2021-12-03 09:35:30.678827160 +0100
++++ med-4.1.0-new/src/hdfi/_MEDparFileCreate.c 2021-12-03 09:32:31.894994147 +0100
+@@ -64,7 +64,7 @@ med_idt _MEDparFileCreate(const char * c
+ * En HDF5-1.10.0p1 cela n'a aucun effet !
+ * Un test autoconf permet de fixer un intervalle de version HDF à MED.
+ */
+-#if H5_VERS_MINOR > 10
++#if H5_VERS_MINOR > 14
+ #error "Don't forget to change the compatibility version of the library !"
+ #endif
+
+diff -rupN med-4.1.0/src/hdfi/_MEDparFileOpen.c med-4.1.0-new/src/hdfi/_MEDparFileOpen.c
+--- med-4.1.0/src/hdfi/_MEDparFileOpen.c 2021-12-03 09:35:30.679827159 +0100
++++ med-4.1.0-new/src/hdfi/_MEDparFileOpen.c 2021-12-03 09:32:31.894994147 +0100
+@@ -55,7 +55,7 @@ med_idt _MEDparFileOpen(const char * con
+ MED_ERR_(_fid,MED_ERR_INIT,MED_ERR_PROPERTY,MED_ERR_PARALLEL_MSG);
+ goto ERROR;
+ }
+-#if H5_VERS_MINOR > 10
++#if H5_VERS_MINOR > 14
+ #error "Don't forget to change the compatibility version of the library !"
+ #endif
+ if ( H5Pset_libver_bounds( _fapl, H5F_LIBVER_18, H5F_LIBVER_18 ) ) {
diff --git a/testing/libmesode/APKBUILD b/testing/libmesode/APKBUILD
deleted file mode 100644
index eba02d3a2b4..00000000000
--- a/testing/libmesode/APKBUILD
+++ /dev/null
@@ -1,45 +0,0 @@
-# Contributor: Galen Abell <galen@galenabell.com>
-# Maintainer: Galen Abell <galen@galenabell.com>
-pkgname=libmesode
-pkgver=0.10.1
-pkgrel=0
-pkgdesc="Fork of libstrophe for use with Profanity XMPP Client"
-url="https://github.com/profanity-im/libmesode"
-arch="all"
-license="GPL-3.0-only MIT"
-makedepends="expat-dev doxygen openssl-dev automake autoconf libtool"
-subpackages="$pkgname-dev $pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/profanity-im/libmesode/archive/$pkgver.tar.gz"
-
-prepare() {
- default_prepare
- ./bootstrap.sh
-}
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var
- make
- doxygen
-}
-
-doc() {
- cd "$builddir"
- mkdir -p "$subpkgdir"/usr/share/html/$pkgname
- mv docs/html/* "$subpkgdir"/usr/share/html/$pkgname/
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- rm -f "$pkgdir"/usr/lib/*.a
-}
-sha512sums="00890ac903ed367872903242116527f229255bcc8988f87005b12a40a903d3b6133dff26229387c49de1ba6d911707adfc73a8a662864843899322c90e10dba7 libmesode-0.10.1.tar.gz"
diff --git a/testing/libmhash/APKBUILD b/testing/libmhash/APKBUILD
index ca3adb283af..6b0a2ac181e 100644
--- a/testing/libmhash/APKBUILD
+++ b/testing/libmhash/APKBUILD
@@ -2,9 +2,9 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=libmhash
pkgver=0.9.9.9
-pkgrel=2
+pkgrel=3
pkgdesc="Library which provides a uniform interface to a large number of hash algorithms"
-url="http://mhash.sourceforge.net/"
+url="https://mhash.sourceforge.net/"
arch="all"
license="LGPL-2.0-only and LGPL-2.1-or-later"
subpackages="$pkgname-dev $pkgname-doc"
diff --git a/testing/libmpfi/APKBUILD b/testing/libmpfi/APKBUILD
new file mode 100644
index 00000000000..7516eab7d94
--- /dev/null
+++ b/testing/libmpfi/APKBUILD
@@ -0,0 +1,44 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
+pkgname=libmpfi
+pkgver=1.5.4
+pkgrel=2
+pkgdesc="Library for multiple precision interval arithmetic"
+url="https://github.com/arpra-project/mpfi"
+arch="all"
+license="GPL-3.0-only OR LGPL-3.0-only"
+makedepends="
+ autoconf
+ automake
+ gmp-dev
+ libtool
+ mpfr-dev
+ "
+options="!check" # tests are broken
+subpackages="$pkgname-static $pkgname-dev $pkgname-doc"
+source="https://github.com/arpra-project/mpfi/archive/$pkgver/mpfi-$pkgver.tar.gz"
+builddir="$srcdir/mpfi-$pkgver"
+
+prepare() {
+ default_prepare
+ autoreconf -fi
+}
+
+build() {
+ export CFLAGS="${CFLAGS/-Os/-O3}" # gotta go fast
+
+ ./configure \
+ --target="$CTARGET" \
+ --build="$CBUILD" \
+ --host="$CHOST" \
+ --prefix=/usr
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+3e2df2243f40b20d49b6698db534c668be583eaa5c75d37b70a2e6e5be2c0fcc303df1b991b8e427dca78eca5eb2aef120ea75cefe1587c13a71996e1190ff5d mpfi-1.5.4.tar.gz
+"
diff --git a/testing/libmustache/APKBUILD b/testing/libmustache/APKBUILD
index 342753546b6..aff67624c63 100644
--- a/testing/libmustache/APKBUILD
+++ b/testing/libmustache/APKBUILD
@@ -3,7 +3,7 @@
pkgname=libmustache
_mustachespec_gitrev=b96be9fd4c6d6984828d93169fe7e86d8a8aec2f
pkgver=0.5.0
-pkgrel=0
+pkgrel=1
pkgdesc="C++ implementation of Mustache intended mainly for use as a PHP extension"
url="https://github.com/jbboehr/libmustache"
arch=all
diff --git a/testing/libmygpo-qt/APKBUILD b/testing/libmygpo-qt/APKBUILD
index 4d45afba9a2..99c0ad18deb 100644
--- a/testing/libmygpo-qt/APKBUILD
+++ b/testing/libmygpo-qt/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: knuxify <knuxify@gmail.com>
pkgname=libmygpo-qt
pkgver=1.1.0
-pkgrel=0
+pkgrel=1
pkgdesc="A C++/Qt client library for gpodder.net"
url="http://wiki.gpodder.org/wiki/Libmygpo-qt"
arch="all"
diff --git a/testing/libmysofa/APKBUILD b/testing/libmysofa/APKBUILD
index 3ef67b83908..e716c4c9457 100644
--- a/testing/libmysofa/APKBUILD
+++ b/testing/libmysofa/APKBUILD
@@ -1,39 +1,52 @@
# Contributor: Taner Tas <taner76@gmail.com>
# Maintainer: Taner Tas <taner76@gmail.com>
pkgname=libmysofa
-pkgver=1.2.1
+pkgver=1.3.2
pkgrel=0
pkgdesc="Set of C functions to read AES SOFA files"
url="https://github.com/hoene/libmysofa"
license="BSD-3-Clause-Clear"
-arch="all !riscv64" # blocked by nodejs
+arch="all"
arch="$arch !s390x" # tests fail
makedepends="
cmake
cunit-dev
- nodejs
+ samurai
zlib-dev
"
-subpackages="$pkgname-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/hoene/libmysofa/archive/v$pkgver.tar.gz"
+checkdepends="nodejs"
+subpackages="$pkgname-dev $pkgname-tools"
+source="$pkgname-$pkgver.tar.gz::https://github.com/hoene/libmysofa/archive/v$pkgver.tar.gz
+ install-header.patch
+ "
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=MinSizeRel \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
- -DCODE_COVERAGE=OFF
- make -C build all
+ -DCODE_COVERAGE=OFF \
+ -DBUILD_TESTS=ON \
+ -DBUILD_STATIC_LIBS=OFF
+ cmake --build build
}
check() {
- make -C build test
+ ctest -j1 --test-dir build --output-on-failure
}
package() {
- make -C build DESTDIR="$pkgdir" install
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+tools() {
+ pkgdesc="$pkgdesc (tools)"
+
+ amove usr/bin
+ amove usr/share
}
sha512sums="
-2058c94cd09aeeabe40975edd320d7447bd9e535108f32b2a5305c023c7bf89f0c2f44df182390b7e4be8f6ffc9b09c2e35817896bb5e63d3ec9f1bd5b7e972c libmysofa-1.2.1.tar.gz
+de7f5d36079b8be06860f3380c7a359e22f59e3e57d86f5f5df1512a20b321e392e2452a34f3ea979779fb84c7493fd4febd386c89b6da4182d6c0cfb0ce1d75 libmysofa-1.3.2.tar.gz
+35bcc9836db9873826a558146dce9045000f4c4028bc52f0940cf24a60cc515c1765adfa8134c24c72b9cc29dc7b08f9fa111bec9f54127a46df7285a785088c install-header.patch
"
diff --git a/testing/libmysofa/install-header.patch b/testing/libmysofa/install-header.patch
new file mode 100644
index 00000000000..e1ab25cc98c
--- /dev/null
+++ b/testing/libmysofa/install-header.patch
@@ -0,0 +1,25 @@
+Patch-Source: https://github.com/hoene/libmysofa/commit/1b7d3bb0c5d13a6d2db0b439231ce65f4ad4cca0.patch
+--
+From 1b7d3bb0c5d13a6d2db0b439231ce65f4ad4cca0 Mon Sep 17 00:00:00 2001
+From: "Jason E. Hale" <jhale@FreeBSD.org>
+Date: Tue, 17 Oct 2023 15:10:23 -0400
+Subject: [PATCH] Install header when only building shared library
+
+Fixes #210
+---
+ src/CMakeLists.txt | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index dcaa92a..0de9632 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -127,6 +127,8 @@ if(BUILD_SHARED_LIBS)
+ # with the mysofa-static library.
+ set_target_properties(mysofa-shared
+ PROPERTIES ARCHIVE_OUTPUT_NAME mysofa_shared)
++ set_target_properties(mysofa-shared
++ PROPERTIES PUBLIC_HEADER "${public-headers}")
+
+ set_property(
+ TARGET mysofa-shared
diff --git a/testing/libnbd/APKBUILD b/testing/libnbd/APKBUILD
deleted file mode 100644
index 3f5ab483f78..00000000000
--- a/testing/libnbd/APKBUILD
+++ /dev/null
@@ -1,46 +0,0 @@
-# Contributor: Sean McAvoy <seanmcavoy@gmail.com>
-# Maintainer: Sean McAvoy <seanmcavoy@gmail.com>
-pkgname=libnbd
-pkgver=1.10.5
-pkgrel=0
-pkgdesc="NBD client library in userspace"
-url="https://github.com/libguestfs/libnbd"
-arch="all"
-license="LGPL-2.0-or-later"
-makedepends="perl autoconf automake gnutls-dev linux-headers libtool python3-dev
- bash bash-completion"
-checkdepends="qemu-img bash python3"
-subpackages="$pkgname-dev $pkgname-doc $pkgname-bash-completion"
-source="
- https://download.libguestfs.org/libnbd/1.10-stable/libnbd-$pkgver.tar.gz
- "
-
-# secfixes:
-# 1.10.5-r0:
-# - CVE-2021-20286
-
-prepare() {
- default_prepare
- autoreconf -fi
-}
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR=$pkgdir install
-}
-
-sha512sums="
-036c13d29bc1490d44051db79dcce01c5f61d8b2108f8ffa28eb5f225c75a622f7e490e7a5a4dff4eba14b8ff2535ba1d4183cf8e4a5569d6201c72bfea4bb11 libnbd-1.10.5.tar.gz
-"
diff --git a/testing/libneo4j-client/APKBUILD b/testing/libneo4j-client/APKBUILD
index d1a6072ec23..e2ae86f2359 100644
--- a/testing/libneo4j-client/APKBUILD
+++ b/testing/libneo4j-client/APKBUILD
@@ -2,70 +2,59 @@
# Maintainer: Chris Leishman <chris@leishman.org>
pkgname=libneo4j-client
pkgver=2.2.0
-pkgrel=2
+pkgrel=3
pkgdesc="Client library for the Neo4j graph database"
url="https://github.com/cleishm/libneo4j-client"
-arch="x86_64 aarch64 ppc64le"
+arch="aarch64 ppc64le x86_64"
license="Apache-2.0"
-depends="openssl"
-depends_dev="openssl-dev"
-makedepends="$depends_dev automake autoconf libtool check-dev doxygen pkgconfig fts fts-dev libedit-dev libcypher-parser-dev"
-install=""
-subpackages="$pkgname-dev $pkgname-doc::noarch neo4j-client:client neo4j-client-doc::noarch"
+makedepends="
+ autoconf
+ automake
+ check-dev
+ doxygen
+ libcypher-parser-dev
+ libedit-dev
+ libtool
+ musl-fts-dev
+ openssl-dev
+ "
+subpackages="
+ $pkgname-dev
+ neo4j-client
+ neo4j-client-doc
+ "
source="https://github.com/cleishm/libneo4j-client/releases/download/v$pkgver/$pkgname-$pkgver.tar.gz"
-builddir="$srcdir"/"$pkgname-$pkgver"
build() {
- cd "$builddir"
- ./configure \
- --prefix=/usr
- make
- make doc
+ export CFLAGS="$CFLAGS -Wno-error=maybe-uninitialized -Wno-error=uninitialized -Wno-error=nonnull"
+
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var \
+ --disable-doxygen-html \
+ --disable-doxygen-pdf
+ make
+
}
check() {
- cd "$builddir"
- make LIBS="-lfts" check
+ make LIBS="-lfts" check
}
package() {
- cd "$builddir"
- make DESTDIR="$pkgdir" install
- mkdir -p "$pkgdir"/usr/share/doc/libneo4j-client
- mv doc/html/* "$pkgdir"/usr/share/doc/libneo4j-client/
-}
-
-doc() {
- depends="$depends_doc"
- pkgdesc="$pkgdesc (documentation)"
- install_if="docs $pkgname=$pkgver-r$pkgrel"
-
- if [ "$subpkgname" = "libneo4j-client-doc" ]; then
- mkdir -p "$subpkgdir"/usr/share
- mv "$pkgdir"/usr/share/doc "$subpkgdir"/usr/share/
- elif [ "$subpkgname" = "neo4j-client-doc" ]; then
- mkdir -p "$subpkgdir"/usr/share
- mv "$pkgdir"/usr/share/man "$subpkgdir"/usr/share/
- find "$subpkgdir"/usr/share/man/ -type f | xargs gzip -9
- else
- die "Unknown doc package $pkgname"
- fi
-
- # remove if empty, ignore error (not empty)
- rmdir "$pkgdir"/usr/share "$pkgdir"/usr || true 2>/dev/null
- return 0
+ make DESTDIR="$pkgdir" install
}
client() {
- depends="libedit libcypher-parser"
- pkgdesc="Command line shell for Neo4j"
-
- mkdir -p "$subpkgdir"/usr
- mv "$pkgdir"/usr/bin "$subpkgdir"/usr/
+ pkgdesc="Command line shell for Neo4j"
- # remove if empty, ignore error (not empty)
- rmdir "$pkgdir"/usr/bin "$pkgdir"/usr 2>/dev/null || true
- return 0
+ amove usr/bin/neo4j-client
}
-sha512sums="973f8e49ee780b9ef8710dad057f264db1004523059ece5504af32c2ba5367e9199898d24aa133c017c953b0b750b2a23495765069c9a5ad470e8387a0eb4d9a libneo4j-client-2.2.0.tar.gz"
+sha512sums="
+973f8e49ee780b9ef8710dad057f264db1004523059ece5504af32c2ba5367e9199898d24aa133c017c953b0b750b2a23495765069c9a5ad470e8387a0eb4d9a libneo4j-client-2.2.0.tar.gz
+"
diff --git a/testing/libnest2d/APKBUILD b/testing/libnest2d/APKBUILD
index 6e501c268c9..3cb42f7fe31 100644
--- a/testing/libnest2d/APKBUILD
+++ b/testing/libnest2d/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Anjandev Momi <anjan@momi.ca>
pkgname=libnest2d
pkgver=0.4
-pkgrel=1
+pkgrel=5
pkgdesc="2D irregular bin packaging and nesting library written in modern C++"
url="https://github.com/tamasmeszaros/libnest2d"
arch="noarch"
diff --git a/testing/libnfc/APKBUILD b/testing/libnfc/APKBUILD
new file mode 100644
index 00000000000..a7a8dec815f
--- /dev/null
+++ b/testing/libnfc/APKBUILD
@@ -0,0 +1,47 @@
+# Contributor: Maarten van Gompel <proycon@anaproy.nl>
+# Maintainer: Maarten van Gompel <proycon@anaproy.nl>
+pkgname=libnfc
+pkgver=1.8.0
+pkgrel=1
+pkgdesc="Platform independent Near Field Communication (NFC) library"
+url="http://nfc-tools.org"
+arch="all"
+license="LGPL-3.0-or-later"
+makedepends="
+ bsd-compat-headers
+ libusb-compat-dev
+ linux-headers
+ openssl-dev
+ "
+subpackages="$pkgname-dev $pkgname-tools $pkgname-doc"
+source="$pkgname-$pkgver.tar.bz2::https://github.com/nfc-tools/libnfc/releases/download/libnfc-$pkgver/libnfc-$pkgver.tar.bz2"
+
+build() {
+ CFLAGS="$CFLAGS -flto=auto" \
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --disable-static
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+tools() {
+ pkgdesc="$pkgdesc (tools)"
+
+ amove usr/bin
+}
+
+sha512sums="
+aa8762ecb5b94167d20346f2c81491bb5b634bcedbf2aae3e2efdb301bca89ceb7c2e15148d0934fdc1cce6d77ee0225e28e84893232999fdc09d8a90ae2a7c5 libnfc-1.8.0.tar.bz2
+"
diff --git a/testing/libnova/0001-support-for-linux-musl.patch b/testing/libnova/0001-support-for-linux-musl.patch
new file mode 100644
index 00000000000..e3725c4d57c
--- /dev/null
+++ b/testing/libnova/0001-support-for-linux-musl.patch
@@ -0,0 +1,24 @@
+From 618d262ebd45108bf3b031b89cf93b189a1dae32 Mon Sep 17 00:00:00 2001
+From: Clayton Craft <clayton@craftyguy.net>
+Date: Fri, 23 Feb 2024 22:30:51 -0800
+Subject: [PATCH] support for linux-musl
+
+---
+ config.sub | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/config.sub b/config.sub
+index c894da4..b3968e7 100755
+--- a/config.sub
++++ b/config.sub
+@@ -124,6 +124,7 @@ maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
+ case $maybe_os in
+ nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
+ linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
++ linux-musl | \
+ knetbsd*-gnu* | netbsd*-gnu* | \
+ kopensolaris*-gnu* | \
+ storm-chaos* | os2-emx* | rtmk-nova*)
+--
+2.43.2
+
diff --git a/testing/libnova/APKBUILD b/testing/libnova/APKBUILD
new file mode 100644
index 00000000000..80ecd3013dd
--- /dev/null
+++ b/testing/libnova/APKBUILD
@@ -0,0 +1,45 @@
+# Contributor: Clayton Craft <clayton@craftyguy.net>
+# Maintainer: Clayton Craft <clayton@craftyguy.net>
+pkgname=libnova
+pkgver=0.15.0
+pkgrel=0
+pkgdesc="general purpose, double precision, celestial mechanics, astrometry and astrodynamics library"
+url="https://sourceforge.net/projects/libnova/"
+arch="all !armv7 !armhf !riscv64" # riscv64: no build target upstream
+license="GPL-2.0-only"
+makedepends="
+ autoconf
+ automake
+ libtool
+"
+subpackages="$pkgname-dev"
+source="
+ https://downloads.sourceforge.net/sourceforge/libnova/libnova-$pkgver.tar.gz
+ 0001-support-for-linux-musl.patch
+"
+
+build() {
+ autoreconf -i
+
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+77ab0ccbfe462c03a21e88656cb4d6389994ea1da0ee8da997f19a83d24ad8fd9e505e70e1580b75332e826e5b7859b5f2af4417f65eb811440493ba586f2574 libnova-0.15.0.tar.gz
+142342e88506a784c437b78d310c4279a5418fd5f7952f64ba99919f232a07a0bea7604569a5f59d11544b3b643fc2fd3666b2aa20a2995827611c9f7daeb26c 0001-support-for-linux-musl.patch
+"
diff --git a/testing/libntl/APKBUILD b/testing/libntl/APKBUILD
new file mode 100644
index 00000000000..70ae58553c8
--- /dev/null
+++ b/testing/libntl/APKBUILD
@@ -0,0 +1,50 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
+pkgname=libntl
+pkgver=11.5.1
+pkgrel=3
+pkgdesc="Library for doing number theory"
+url="https://libntl.org"
+arch="all"
+license="LGPL-2.1-or-later"
+makedepends="autoconf automake gf2x-dev gmp-dev perl"
+source="https://libntl.org/ntl-$pkgver.tar.gz"
+subpackages="$pkgname-static $pkgname-dev $pkgname-doc"
+builddir="$srcdir/ntl-$pkgver/src"
+
+prepare() {
+ default_prepare
+
+ cd libtool-origin
+ update_config_guess
+ update_config_sub
+}
+
+build() {
+ export CXXFLAGS="${CXXFLAGS/-Os/-O2}" # gotta go fast
+
+ # This configure script wasn't generated by autoconf, however during
+ # configuration an inlying perl scripts will use autoconf utilities...
+ ./configure \
+ NATIVE=off \
+ SHARED=on \
+ TUNE=generic \
+ CXXFLAGS="$CXXFLAGS" \
+ LDFLAGS="$LDFLAGS" \
+ DEF_PREFIX=/usr \
+ NTL_GF2X_LIB=on \
+ NTL_GMP_LIP=on
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+cf1f642b8a0f9cdc6dda888e07183817dc67ff494e56a852053aeb15b3d2a0e61fbc05824779c5d1f20b8115fba6f97266acf7e0b0b527c25df5989c86d5928f ntl-11.5.1.tar.gz
+"
diff --git a/testing/libofx/APKBUILD b/testing/libofx/APKBUILD
index 39676c0e25c..0795aa0fe08 100644
--- a/testing/libofx/APKBUILD
+++ b/testing/libofx/APKBUILD
@@ -1,38 +1,47 @@
# Contributor: Leo <thinkabit.ukim@gmail.com>
# Contributor: 7heo <7heo@mail.com>
-# Maintainer:
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=libofx
-pkgver=0.10.3
-pkgrel=0
+pkgver=0.10.9
+pkgrel=1
pkgdesc="OFX banking protocol abstraction library"
url="https://github.com/libofx/libofx"
arch="all"
license="GPL-2.0-or-later"
-makedepends="bash automake autoconf libtool gengetopt opensp-dev"
-subpackages="$pkgname-dev $pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/libofx/libofx/archive/$pkgver.tar.gz"
+makedepends="
+ cmake
+ curl-dev
+ gengetopt
+ libxml++-2.6-dev
+ opensp-dev
+ samurai
+ "
+subpackages="$pkgname-dev $pkgname-tools"
+source="https://github.com/libofx/libofx/releases/download/$pkgver/libofx-$pkgver.tar.gz"
+options="!check" # fails if /tmp/catalog exists
-prepare() {
- default_prepare
- ./autogen.sh
+build() {
+ cmake -B build -G Ninja -Wno-dev \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCMAKE_INSTALL_PREFIX=/usr
+ cmake --build build
}
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var \
- --disable-static
- make -j1
+check() {
+ ctest --test-dir build --output-on-failure
}
package() {
- make -j1 DESTDIR="$pkgdir" install
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+tools() {
+ pkgdesc="$pkgdesc (tools)"
+
+ amove usr/bin
+ amove usr/share
}
sha512sums="
-6c024628a6a11d9542c669a438223331a033eb820b1a2c3001c60d1ab3fad45ccdec64f9b54dd206fe0058ead8e14e751eb7a3bd88e8f9e1013b0bdd5b6c5242 libofx-0.10.3.tar.gz
+89425912fa8c800ede9d7177ccd5cb3ea2a2301b42aa6580ddb105406fe68c770e2c461eefdea5bc7e883967c90e3519a219bf0b56d12c7de1030d0964d50cac libofx-0.10.9.tar.gz
"
diff --git a/testing/liboggz/APKBUILD b/testing/liboggz/APKBUILD
index 217aa5d34a3..77ec51d84fa 100644
--- a/testing/liboggz/APKBUILD
+++ b/testing/liboggz/APKBUILD
@@ -2,14 +2,14 @@
# Maintainer: Roberto Oliveira <robertoguimaraes8@gmail.com>
pkgname=liboggz
pkgver=1.1.1
-pkgrel=1
+pkgrel=2
pkgdesc="Provides a simple programming interface for reading and writing Ogg files and streams"
url="https://www.xiph.org/oggz/"
arch="all"
license="BSD-3-Clause"
makedepends="libogg-dev"
subpackages="$pkgname-dev $pkgname-doc"
-source="http://downloads.xiph.org/releases/$pkgname/$pkgname-$pkgver.tar.gz"
+source="https://downloads.xiph.org/releases/liboggz/liboggz-$pkgver.tar.gz"
prepare() {
default_prepare
diff --git a/testing/libopenraw/APKBUILD b/testing/libopenraw/APKBUILD
deleted file mode 100644
index 887de0a05f9..00000000000
--- a/testing/libopenraw/APKBUILD
+++ /dev/null
@@ -1,52 +0,0 @@
-# Contributor: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
-# Maintainer: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
-pkgname=libopenraw
-pkgver=0.3.0
-pkgrel=2
-pkgdesc="Desktop agnostic effort to support digital camera RAW files"
-url="https://libopenraw.freedesktop.org/"
-arch="all !s390x !riscv64"
-license="LGPL-3.0-or-later"
-makedepends="
- autoconf
- autoconf-archive
- automake
- boost-dev
- cargo
- curl-dev
- gdk-pixbuf-dev
- libjpeg-turbo-dev
- libxml2-dev
- m4
- rust
- "
-subpackages="$pkgname-dev"
-source="https://libopenraw.freedesktop.org/download/libopenraw-$pkgver.tar.bz2
- gcc-11.patch
- "
-
-prepare() {
- default_prepare
- update_config_sub
-}
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make install DESTDIR="$pkgdir"
-}
-
-sha512sums="
-bf0c83f1114fc7bab34d81b385120284059c85eeb38b8ccdb73dc678ae4995b90f744948891924dc0ec612297a4d9ea2507d7cec2c29cb09b70b4ee840618361 libopenraw-0.3.0.tar.bz2
-e13ca01242a3c61db3e36a3f0b5be1903a390a8b76d93b250e7e2c00c624ff569f8888375a2a21c20be1125cbd22f8be193aea05599e464c981ad5ac3e8d7dc4 gcc-11.patch
-"
diff --git a/testing/libopenraw/gcc-11.patch b/testing/libopenraw/gcc-11.patch
deleted file mode 100644
index 289142cbbd9..00000000000
--- a/testing/libopenraw/gcc-11.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-Patch-Source: https://gitlab.freedesktop.org/libopenraw/libopenraw/-/commit/43fac545b135bce981b6837aa6cb111ee853f090
-From 43fac545b135bce981b6837aa6cb111ee853f090 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Hubert=20Figui=C3=A8re?= <hub@figuiere.net>
-Date: Thu, 18 Mar 2021 20:51:56 -0400
-Subject: [PATCH] Issue #6 - Fix build on gcc 11
-
-- include <limits> where needed
-
-https://gitlab.freedesktop.org/libopenraw/libopenraw/-/issues/6
----
- lib/cr2file.cpp | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/lib/cr2file.cpp b/lib/cr2file.cpp
-index e0a2d7e..993a750 100644
---- a/lib/cr2file.cpp
-+++ b/lib/cr2file.cpp
-@@ -2,7 +2,7 @@
- /*
- * libopenraw - cr2file.cpp
- *
-- * Copyright (C) 2006-2020 Hubert Figuière
-+ * Copyright (C) 2006-2021 Hubert Figuière
- * Copyright (C) 2008 Novell, Inc.
- *
- * This library is free software: you can redistribute it and/or
-@@ -23,6 +23,7 @@
- #include <stddef.h>
- #include <cstdint>
- #include <vector>
-+#include <limits>
- #include <memory>
-
- #include <libopenraw/cameraids.h>
---
-GitLab
-
diff --git a/testing/libopensles-standalone/APKBUILD b/testing/libopensles-standalone/APKBUILD
new file mode 100644
index 00000000000..4402033b496
--- /dev/null
+++ b/testing/libopensles-standalone/APKBUILD
@@ -0,0 +1,38 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=libopensles-standalone
+pkgver=0_git20231019
+pkgrel=2
+_commit="6e6e8e5bfa9f53deaa947e8ec4f1a70b892b764f"
+pkgdesc="A lightly patched version of Google's libOpenSLES implementation"
+url="https://gitlab.com/android_translation_layer/libopensles-standalone"
+arch="x86_64 aarch64 armv7"
+license="Apache-2.0"
+makedepends="
+ libsndfile-dev
+ meson
+ openjdk8-jdk
+ sdl2-dev
+ "
+subpackages="$pkgname-dev $pkgname-dbg"
+source="https://gitlab.com/android_translation_layer/libopensles-standalone/-/archive/$_commit/libopensles-standalone-$_commit.tar.gz"
+options="!check" # No tests
+builddir="$srcdir/libopensles-standalone-$_commit"
+
+build() {
+ abuild-meson \
+ . output
+ meson compile -C output
+}
+
+check() {
+ meson test --no-rebuild --print-errorlogs -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+sha512sums="
+9f26cf3814c1066c8e670753cb2ce8ee6781a656b91d3745df621feb905df60139254ec7baa5257548de538a6c4ace8a414cac699e44e02a15777d8c20c68577 libopensles-standalone-6e6e8e5bfa9f53deaa947e8ec4f1a70b892b764f.tar.gz
+"
diff --git a/testing/libosip2/APKBUILD b/testing/libosip2/APKBUILD
deleted file mode 100644
index a1244ec5a37..00000000000
--- a/testing/libosip2/APKBUILD
+++ /dev/null
@@ -1,39 +0,0 @@
-# Maintainer: David Sugar <tychosoft@gmail.com>
-# Contributor: David Sugar <tychosoft@gmail.com>
-pkgname=libosip2
-# Needs to be kept in sync with libexosip2
-pkgver=5.3.0
-pkgrel=0
-pkgdesc="oSIP is an implementation of SIP"
-url="https://www.gnu.org/software/osip/"
-arch="all"
-license="LGPL-2.1-or-later"
-makedepends="autoconf automake libtool"
-options="libtool"
-subpackages="$pkgname-dev $pkgname-doc"
-source="https://ftp.gnu.org/gnu/osip/libosip2-$pkgver.tar.gz"
-
-prepare() {
- default_prepare
- ./autogen.sh
- update_config_sub
- update_config_guess
-}
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --disable-static \
- --with-gnu-ld
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-010830af0aca7cab48f2d28b130bf8a2443a7eb552ccfd3e6100d3262a1e2a4cca4ab457a073cbf6ff032ed7177a781e2ce980a1f095688659cff8c0005fce50 libosip2-5.3.0.tar.gz
-"
diff --git a/testing/libqb/APKBUILD b/testing/libqb/APKBUILD
index fc868764e6a..f8f7917a922 100644
--- a/testing/libqb/APKBUILD
+++ b/testing/libqb/APKBUILD
@@ -1,13 +1,21 @@
# Contributor: Michał Polański <michal@polanski.me>
# Maintainer:
pkgname=libqb
-pkgver=2.0.2
-pkgrel=1
+pkgver=2.0.8
+pkgrel=0
pkgdesc="Library providing high performance logging, tracing, ipc, and poll"
url="https://clusterlabs.github.io/libqb"
license="LGPL-2.1-or-later"
arch="all"
-makedepends="autoconf automake libtool libxml2-dev doxygen coreutils"
+makedepends="
+ autoconf
+ automake
+ coreutils
+ doxygen
+ graphviz-dev
+ libtool
+ libxml2-dev
+ "
checkdepends="check-dev"
subpackages="$pkgname-dev $pkgname-doc $pkgname-tools"
source="https://github.com/ClusterLabs/libqb/releases/download/v$pkgver/libqb-$pkgver.tar.xz"
@@ -45,4 +53,6 @@ tools() {
amove usr/sbin
}
-sha512sums="634509032bb4b60fdddf97283bd5be2bbc97bae475c1aa90e53a73df3350c80706d0688b9b5c869c7c37429c54102e46a2d20ab9df49682c93afd6fa7e7bb19a libqb-2.0.2.tar.xz"
+sha512sums="
+9db87b248af87d9aa0520bc0045264a5f0a710fd582a16285990685cb8f8b485ba24b774f2ab7eb719bac5ed3bbf3a315696f7191a5fcf7beea33126a4402a09 libqb-2.0.8.tar.xz
+"
diff --git a/testing/libqd/APKBUILD b/testing/libqd/APKBUILD
new file mode 100644
index 00000000000..c1881c0183f
--- /dev/null
+++ b/testing/libqd/APKBUILD
@@ -0,0 +1,37 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
+pkgname=libqd
+pkgver=2.3.24
+pkgrel=0
+pkgdesc="Double-double and quad-double library for Fortran and C++"
+url="https://www.davidhbailey.com/dhbsoftware"
+# aarch64, ppc64le, s390x: fail tests
+arch="all !aarch64 !ppc64le !s390x"
+license="BSD-3-Clause-LBNL"
+makedepends="autoconf gfortran"
+source="https://www.davidhbailey.com/dhbsoftware/qd-$pkgver.tar.gz"
+subpackages="$pkgname-static $pkgname-dev $pkgname-doc"
+builddir="$srcdir/qd-$pkgver"
+
+build() {
+ export CXXFLAGS="${CXXFLAGS/-Os/-O3}" # gotta go fast
+
+ ./configure \
+ --target="$CTARGET" \
+ --build="$CBUILD" \
+ --host="$CHOST" \
+ --prefix=/usr
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+7f233e9d0edcb442da160a49bc97df87acf258c3251828e2d473206022a36581295f38c685ac5f0c78b106605f12698f3d0cc0b4865be220a50b3536820ac1b7 qd-2.3.24.tar.gz
+"
diff --git a/testing/libqmycroft/APKBUILD b/testing/libqmycroft/APKBUILD
deleted file mode 100644
index 562aa0baecc..00000000000
--- a/testing/libqmycroft/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Contributor: Bart Ribbers <bribbers@disroot.org>
-# Maintainer: Bart Ribbers <bribbers@disroot.org>
-pkgname=libqmycroft
-pkgver=0_git20210702
-pkgrel=0
-_commit="79f60584bd83f1a0b3b69b40dbe848e445acd3b0"
-pkgdesc="Mycroft integration library using a mock api to integrate apps as skill in Mycroft"
-url="https://invent.kde.org/libraries/libqmycroft"
-# armhf blocked by extra-cmake-modules
-arch="all !armhf"
-license="Apache-2.0"
-makedepends="
- extra-cmake-modules
- qt5-qtbase-dev
- qt5-qtdeclarative-dev
- qt5-qtmultimedia-dev
- qt5-qtwebsockets-dev
- "
-source="https://invent.kde.org/libraries/libqmycroft/-/archive/$_commit/libqmycroft-$_commit.tar.gz"
-options="!check" # No tests
-builddir="$srcdir/$pkgname-$_commit"
-
-build() {
- cmake -B build \
- -DCMAKE_BUILD_TYPE=None \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-
-sha512sums="
-89102c3733c6bba9f23581266818d2a00606b045bf02d81fa13ac3ebd5602fd9d7dacac2939817a79b0b6c3fb52031709c02365630447cd376c79e74507d6609 libqmycroft-79f60584bd83f1a0b3b69b40dbe848e445acd3b0.tar.gz
-"
diff --git a/testing/libqofono/APKBUILD b/testing/libqofono/APKBUILD
new file mode 100644
index 00000000000..5fc8237cb15
--- /dev/null
+++ b/testing/libqofono/APKBUILD
@@ -0,0 +1,55 @@
+# Maintainer: Luca Weiss <luca@z3ntu.xyz>
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+pkgname=libqofono
+pkgver=0.122
+pkgrel=0
+pkgdesc="Library for accessing the ofono daemon, and a Qt declarative plugin for it"
+url="https://github.com/sailfishos/libqofono"
+# armhf blocked by qt5-qtdeclarative
+arch="all !armhf"
+license="LGPL-2.1-or-later"
+depends_dev="
+ qt5-qtbase-dev
+ qt5-qtdeclarative-dev
+ qt6-qtbase-dev
+ qt6-qtdeclarative-dev
+ "
+makedepends="$depends_dev"
+subpackages="$pkgname-dev $pkgname-qt5:_qt5 $pkgname-qt6:_qt6"
+source="https://github.com/sailfishos/libqofono/archive/$pkgver/libqofono-$pkgver.tar.gz"
+options="!check" # requires running ofono
+
+build() {
+ mkdir build-qt5 && cd build-qt5
+ /usr/lib/qt5/bin/qmake ..
+ make
+
+ mkdir ../build-qt6 && cd ../build-qt6
+ /usr/lib/qt6/bin/qmake ..
+ make
+}
+
+package() {
+ cd build-qt5
+ INSTALL_ROOT="$pkgdir" make install
+
+ cd ../build-qt6
+ INSTALL_ROOT="$pkgdir" make install
+
+ # Remove installed tests
+ rm -r "$pkgdir"/opt
+}
+
+_qt5() {
+ amove usr/lib/libqofono-qt5.so*
+ amove usr/lib/qt5
+}
+
+_qt6() {
+ amove usr/lib/libqofono-qt6.so*
+ amove usr/lib/qt6
+}
+
+sha512sums="
+a9ffaa1a5aad20ed679df85cf312da678c9ab0667f21bd1bca173c7c1169d558f13eb021ec3b5eb1eec4b14597ba9871069f692e0544fd02d4aec552d691ee7b libqofono-0.122.tar.gz
+"
diff --git a/testing/libqtdbusmock/APKBUILD b/testing/libqtdbusmock/APKBUILD
new file mode 100644
index 00000000000..73624e13d51
--- /dev/null
+++ b/testing/libqtdbusmock/APKBUILD
@@ -0,0 +1,45 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Luca Weiss <luca@z3ntu.xyz>
+pkgname=libqtdbusmock
+pkgver=0.9.1
+pkgrel=0
+pkgdesc="Library for mocking DBus interactions using Qt"
+url='https://gitlab.com/ubports/development/core/libqtdbusmock'
+arch="all"
+license="LGPL-3.0-only"
+makedepends="
+ cmake
+ cmake-extras
+ gmock
+ gtest-dev
+ libqtdbustest
+ networkmanager-dev
+ qt5-qtbase-dev
+ samurai
+ "
+checkdepends="
+ py3-dbusmock
+ procps
+ "
+source="https://gitlab.com/ubports/development/core/libqtdbusmock/-/archive/$pkgver/libqtdbusmock-$pkgver.tar.gz"
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=None
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+d33a93aca9d7320f2246f800c62c1e97bc1b4af9e8408c7eeafa697862669ccc3c818a1e97143e93747087c0a55b247e4e6748ddbc2b624f2e07845b842e9028 libqtdbusmock-0.9.1.tar.gz
+"
diff --git a/testing/libqtdbustest/APKBUILD b/testing/libqtdbustest/APKBUILD
new file mode 100644
index 00000000000..5b8f0bf6ec5
--- /dev/null
+++ b/testing/libqtdbustest/APKBUILD
@@ -0,0 +1,43 @@
+# Maintainer: Luca Weiss <luca@z3ntu.xyz>
+pkgname=libqtdbustest
+pkgver=0.3.2
+pkgrel=0
+pkgdesc='Library for testing DBus interactions using Qt'
+url='https://gitlab.com/ubports/development/core/libqtdbustest'
+arch="all"
+license="LGPL-3.0-only"
+makedepends="
+ cmake
+ cmake-extras
+ gmock
+ gtest-dev
+ qt5-qtbase-dev
+ samurai
+ "
+checkdepends="
+ dbus-x11
+ procps
+ py3-dbusmock
+ "
+source="https://gitlab.com/ubports/development/core/libqtdbustest/-/archive/$pkgver/libqtdbustest-$pkgver.tar.gz"
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=None
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+963b13f7ea3ad5003b5bf9af1421959c0028b43e8ac52b6f74ee9a1260cb586c753342c689b6f3d78d54f01f549f16e81739eaee53f2753b813d5e1e5132baf6 libqtdbustest-0.3.2.tar.gz
+"
diff --git a/testing/libqtxdg/APKBUILD b/testing/libqtxdg/APKBUILD
deleted file mode 100644
index c86b69873ed..00000000000
--- a/testing/libqtxdg/APKBUILD
+++ /dev/null
@@ -1,46 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=libqtxdg
-pkgver=3.9.0
-pkgrel=0
-pkgdesc="Qt implementation of freedesktop.org xdg specifications"
-url="https://github.com/lxqt/libqtxdg"
-arch="all"
-license="LGPL-2.0-or-later"
-depends="gtk+3.0"
-makedepends="
- cmake lxqt-build-tools qt5-qtbase-dev
- qt5-qtsvg-dev glib-dev
- "
-checkdepends="xvfb-run"
-subpackages="$pkgname-dev"
-source="https://github.com/lxqt/libqtxdg/releases/download/$pkgver/libqtxdg-$pkgver.tar.xz"
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- -DBUILD_TESTS=Yes \
- $CMAKE_CROSSOPTS .
- cmake --build build
-
-}
-
-check() {
- CTEST_OUTPUT_ON_FAILURE=TRUE xvfb-run cmake --build build --target test
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --build build --target install
-
- mkdir -p "$pkgdir"/usr/lib
- mv "$pkgdir"/usr/share/cmake "$pkgdir"/usr/lib
-}
-
-sha512sums="
-ec2763f148125fc62518eedbc28d1c1bed9337c15da566342749cbb3659ed7d5b8771785df116fe3d707f613c5d79337e440993bfa713fbc5b280acc3d687cfa libqtxdg-3.9.0.tar.xz
-"
diff --git a/testing/libreoffice-voikko/APKBUILD b/testing/libreoffice-voikko/APKBUILD
new file mode 100644
index 00000000000..73e1beb1ebe
--- /dev/null
+++ b/testing/libreoffice-voikko/APKBUILD
@@ -0,0 +1,27 @@
+# Contributor: Timo Teräs <timo.teras@iki.fi>
+# Maintainer: Timo Teräs <timo.teras@iki.fi>
+pkgname=libreoffice-voikko
+pkgver=5.0_git20200127
+pkgrel=0
+pkgdesc="Voikko spelling, hyphenation and grammar checker extension for LibreOffice"
+_commit=d7363092551a72cb51d95a1b89a3a4af8dabc6b4
+url="https://voikko.puimula.org/"
+arch="noarch"
+license="MPL-2.0 OR GPL-3.0-or-later"
+depends="libvoikko"
+makedepends="zip"
+options="!check" # no tests
+source="$pkgname-$_commit.tar.gz::https://github.com/voikko/libreoffice-voikko/archive/$_commit.tar.gz"
+builddir="$srcdir/$pkgname-$_commit"
+
+build() {
+ make oxt
+}
+
+package() {
+ make DESTDIR="$pkgdir/usr/lib/libreoffice/share/extensions/voikko" install-unpacked
+}
+
+sha512sums="
+3d08f7efbb13cd8c79c35f27d3be3e7aa76b3b9fa90f7a2a63acb43507930009d6a52383bc63beb2c8179d5710ac5ab6fade261ca73dbec8ea90d0162c12be8d libreoffice-voikko-d7363092551a72cb51d95a1b89a3a4af8dabc6b4.tar.gz
+"
diff --git a/testing/librespot/APKBUILD b/testing/librespot/APKBUILD
index a5d488f1501..05fc7f6df1c 100644
--- a/testing/librespot/APKBUILD
+++ b/testing/librespot/APKBUILD
@@ -1,28 +1,33 @@
# Contributor: Carlo Landmeter <clandmeter@gmail.com>
-# Maintainer: Michael Ekstrand <md@ekstrandom.net>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=librespot
-pkgver=0.4.1
-pkgrel=0
+pkgver=0.4.2
+pkgrel=4
pkgdesc="Open Source Spotify client library"
url="https://github.com/librespot-org/librespot"
arch="all !s390x !riscv64" # limited by cargo
license="MIT"
options="!check" # no test suite
-makedepends="cargo>=1.53 alsa-lib-dev"
+makedepends="cargo alsa-lib-dev cargo-auditable"
install="$pkgname.pre-install"
subpackages="$pkgname-openrc"
source="librespot-$pkgver.tar.gz::https://github.com/librespot-org/librespot/archive/v$pkgver.tar.gz
$pkgname.initd
$pkgname.confd
+
+ cargo-bump-libc-lfs64.patch
"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
build() {
- export CARGO_HOME="$srcdir"/cargo
- export RUSTFLAGS="-C target-feature=-crt-static"
- cargo build \
- --release \
- --features alsa-backend \
- --verbose
+ cargo auditable build --release --frozen \
+ --features alsa-backend
}
package() {
@@ -32,7 +37,8 @@ package() {
}
sha512sums="
-63ecff22e850a70c0370d3d0a2188f3ba793f869bab56267bf97265382c1bbd556bc8bb01750bbf8143902b15f5903d731b9846d1dae1f6661c84d3724a4d9d2 librespot-0.4.1.tar.gz
-c48ea30e2bd076691a2f1e0e3f6c6329921a8cf25e4f39ca82e07aca5a1c2c519007f081f2b6bbd1566086407a52dce787450b840e8a07e3010227cefda0452a librespot.initd
-4286a3d1cc9678af2f43074c30a0ab7a9f686301468a0fd435d37a62773f0d1501b7201851bef4237324a83361ad93531ceb512a42ee0a63d4d14677760f5ec5 librespot.confd
+62377c0c7b868a5414c3e62b5edcac118f83c0bf1e218c9aa6e8174c875ab63707fc1eef2e64188bf2aac2891cbbd4fddc086cb4b9b4a760ded20c63fe4f8ebe librespot-0.4.2.tar.gz
+c7cf6dd1afc67d02c710cd01baacee3084812cbf326514667c9b053fe0b4b7769fdac9f7fc4c2e3ee9755c6fe6d3b9bf4fda1279e507e0abd254157adf44d4c2 librespot.initd
+7be717bbe23b40d6c52b1e9b1ce4cb6d5f243b75ce5479a28fa3fff97f7e80f565321a839259ae7ee4eba47f490f1c0aec72b52e71d25620a98e4c7bcd696cde librespot.confd
+386e08e1fe5a928f6fbef4a6ad00b39bfcd792121205bff3a644af3010c7451c3746538270806a1c2393aa9d292405d658d50ad2df2d036761624d826a33cc1e cargo-bump-libc-lfs64.patch
"
diff --git a/testing/librespot/cargo-bump-libc-lfs64.patch b/testing/librespot/cargo-bump-libc-lfs64.patch
new file mode 100644
index 00000000000..41ab4e77a3e
--- /dev/null
+++ b/testing/librespot/cargo-bump-libc-lfs64.patch
@@ -0,0 +1,16 @@
+diff --git a/Cargo.lock b/Cargo.lock
+index f21b877..c500357 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -1130,9 +1130,9 @@ dependencies = [
+
+ [[package]]
+ name = "libc"
+-version = "0.2.126"
++version = "0.2.147"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "349d5a591cd28b49e1d1037471617a32ddcda5731b99419008085f72d5a53836"
++checksum = "b4668fb0ea861c1df094127ac5f1da3409a82116a4ba74fca2e58ef927159bb3"
+
+ [[package]]
+ name = "libloading"
diff --git a/testing/librespot/librespot.confd b/testing/librespot/librespot.confd
index ea74e317924..0cf3adad61b 100644
--- a/testing/librespot/librespot.confd
+++ b/testing/librespot/librespot.confd
@@ -1 +1,4 @@
librespot_args=""
+
+# uncomment to use process supervisor
+#supervisor=supervise-daemon
diff --git a/testing/librespot/librespot.initd b/testing/librespot/librespot.initd
index 8a7e42ea68c..414526802b7 100644
--- a/testing/librespot/librespot.initd
+++ b/testing/librespot/librespot.initd
@@ -4,10 +4,15 @@ command=/usr/bin/librespot
command_args="${librespot_args}"
pidfile=/run/librespot.pid
command_background=true
-logfile="/var/log/librespot.log"
-start_stop_daemon_args="--user ${librespot_user:-librespot} --group ${librespot_group:-audio} --stdout $logfile --stderr $logfile"
+command_user="${librespot_user:-librespot}:${librespot_group:-librespot}"
+output_log=/var/log/librespot.log
+error_log=/var/log/librespot.log
-depends() {
+depend() {
need localmount net
before firewall
}
+
+start_pre() {
+ checkpath -f -o $command_user $output_log
+}
diff --git a/testing/librespot/librespot.pre-install b/testing/librespot/librespot.pre-install
index 203bd5edf41..272833101c7 100644
--- a/testing/librespot/librespot.pre-install
+++ b/testing/librespot/librespot.pre-install
@@ -1,5 +1,7 @@
#!/bin/sh
-adduser -S -D -H -s /sbin/nologin -G audio -g audio librespot 2>/dev/null
+addgroup -S librespot 2>/dev/null
+adduser -S -D -H -s /sbin/nologin -G librespot -g librespot librespot 2>/dev/null
+addgroup librespot audio 2>/dev/null
exit 0
diff --git a/testing/libretro-3dengine/APKBUILD b/testing/libretro-3dengine/APKBUILD
deleted file mode 100644
index 418b67cc735..00000000000
--- a/testing/libretro-3dengine/APKBUILD
+++ /dev/null
@@ -1,30 +0,0 @@
-# Contributor: David Demelier <markand@malikania.fr>
-# Maintainer: David Demelier <markand@malikania.fr>
-pkgname=libretro-3dengine
-pkgver=0_git20220405
-pkgrel=1
-_commit="b8807815ca5313933883a4c6c9a8a047883e757d"
-pkgdesc="3D engine for libretro GL with additional features"
-url="https://github.com/libretro/libretro-3dengine"
-arch="all"
-license="GPL-3.0-only"
-makedepends="mesa-dev zlib-dev"
-source="$pkgname-$_commit.tar.gz::https://github.com/libretro/libretro-3dengine/archive/$_commit.tar.gz
- patch-unbundle.patch
- "
-builddir="$srcdir/libretro-3dengine-$_commit"
-options="!check" # No tests
-
-build() {
- rm -rf deps
- make
-}
-
-package() {
- install -Dm644 3dengine_libretro.so "$pkgdir"/usr/lib/libretro/3dengine_libretro.so
-}
-
-sha512sums="
-a50ec29057ce63545ecb39520bca7387ee75ccb8152f4b76263d9717cb63e26ce12f4ad9453fd9a83aa34ea279da2c0523fc68d090e4dad5f24f11b95d8b2b9a libretro-3dengine-b8807815ca5313933883a4c6c9a8a047883e757d.tar.gz
-b2d5693dae7bd88081f8a053a47f9790013d47528384bba201d28343a06acae557a3cf6e952397aacef8b0e7e7662655b1d5affd350ddcb09b7f4bf1d2d825c6 patch-unbundle.patch
-"
diff --git a/testing/libretro-3dengine/patch-unbundle.patch b/testing/libretro-3dengine/patch-unbundle.patch
deleted file mode 100644
index 0de3d20fc4b..00000000000
--- a/testing/libretro-3dengine/patch-unbundle.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-Remove bundled zlib.
---- a/Makefile.common
-+++ b/Makefile.common
-@@ -4,8 +4,7 @@
- -I$(CORE_DIR)/utils \
- -I$(CORE_DIR)/helpers \
- -I$(CORE_DIR)/include \
-- -I$(CORE_DIR)/libretro-common/include \
-- -I$(DEPS_DIR)/zlib
-+ -I$(CORE_DIR)/libretro-common/include
-
- SOURCES_CXX := $(CORE_DIR)/engine/mesh.cpp \
- $(CORE_DIR)/engine/texture.cpp \
-@@ -28,22 +27,6 @@
- $(CORE_DIR)/libretro-common/streams/trans_stream_zlib.c
-
- ifneq ($(STATIC_LINKING), 1)
--#include zlib
--SOURCES_C += $(DEPS_DIR)/zlib/adler32.c \
-- $(DEPS_DIR)/zlib/compress.c \
-- $(DEPS_DIR)/zlib/crc32.c \
-- $(DEPS_DIR)/zlib/deflate.c \
-- $(DEPS_DIR)/zlib/gzclose.c \
-- $(DEPS_DIR)/zlib/gzlib.c \
-- $(DEPS_DIR)/zlib/gzread.c \
-- $(DEPS_DIR)/zlib/gzwrite.c \
-- $(DEPS_DIR)/zlib/inffast.c \
-- $(DEPS_DIR)/zlib/inflate.c \
-- $(DEPS_DIR)/zlib/inftrees.c \
-- $(DEPS_DIR)/zlib/trees.c \
-- $(DEPS_DIR)/zlib/uncompr.c \
-- $(DEPS_DIR)/zlib/zutil.c
--
- SOURCES_C += \
- $(CORE_DIR)/libretro-common/compat/compat_strl.c \
- $(CORE_DIR)/libretro-common/compat/compat_posix_string.c \
---- a/Makefile
-+++ b/Makefile
-@@ -265,6 +265,8 @@
- LD = $(CXX)
- endif
-
-+LIBS += -lz
-+
- %.o: %.cpp
- $(CXX) $(CXXFLAGS) -c $(OBJOUT)$@ $<
-
diff --git a/testing/libretro-cannonball/APKBUILD b/testing/libretro-cannonball/APKBUILD
index bdc69654a1d..a29e43dbeaa 100644
--- a/testing/libretro-cannonball/APKBUILD
+++ b/testing/libretro-cannonball/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: David Demelier <markand@malikania.fr>
pkgname=libretro-cannonball
pkgver=0_git20220309
-pkgrel=1
+pkgrel=5
_commit="8fb0d9561ee110f31f45610661649f0c1ff068ee"
pkgdesc="an enhanced OutRun Engine"
url="https://github.com/libretro/cannonball"
diff --git a/testing/libretro-dolphin/APKBUILD b/testing/libretro-dolphin/APKBUILD
index b3d0657606f..5f86a68e58d 100644
--- a/testing/libretro-dolphin/APKBUILD
+++ b/testing/libretro-dolphin/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: David Demelier <markand@malikania.fr>
pkgname=libretro-dolphin
pkgver=0_git20220407
-pkgrel=1
+pkgrel=2
_commit="6a0b6ee8a4d5363e669f5faf43abc8f17e4278a8"
pkgdesc="libretro core for dolphin"
url="https://github.com/libretro/dolphin"
@@ -16,7 +16,7 @@ makedepends="
libusb-dev
libxi-dev
libxrandr-dev
- mbedtls-dev
+ mbedtls2-dev
mesa-dev
xz-dev
zlib-dev
diff --git a/testing/libretro-genesis-plus-gx/APKBUILD b/testing/libretro-genesis-plus-gx/APKBUILD
index 0a4c0abbc03..80cacedb7fd 100644
--- a/testing/libretro-genesis-plus-gx/APKBUILD
+++ b/testing/libretro-genesis-plus-gx/APKBUILD
@@ -1,9 +1,9 @@
# Contributor: David Demelier <markand@malikania.fr>
# Maintainer: David Demelier <markand@malikania.fr>
pkgname=libretro-genesis-plus-gx
-pkgver=0_git20220417
+pkgver=0_git20230503
pkgrel=0
-_commit="7520ac8aae7b08262c0472e724e6ef0bfe41d285"
+_commit="790776699bea2a570535e1632481aa27174c8dce"
pkgdesc="an enhanced port of Genesis Plus"
url="https://github.com/libretro/Genesis-Plus-GX"
arch="all"
@@ -21,5 +21,5 @@ package() {
}
sha512sums="
-e2501c09162146a293cfde6bfde6e87ea8395db416a2190c5f8376b5e9cdfe3138e13edf63dfddb10e620191521a2da87abfad84ee84695c8e5780b405449a09 libretro-genesis-plus-gx-7520ac8aae7b08262c0472e724e6ef0bfe41d285.tar.gz
+8ec11fd558606cdb696a81e192437649e160d25f055ce4089e3e50d48bbd7b0e9456bb8ec5decf7c8108528bde6098cc766ed7391160beddda11b744a888226e libretro-genesis-plus-gx-790776699bea2a570535e1632481aa27174c8dce.tar.gz
"
diff --git a/testing/libretro-picodrive/APKBUILD b/testing/libretro-picodrive/APKBUILD
index 88353529628..414892847c2 100644
--- a/testing/libretro-picodrive/APKBUILD
+++ b/testing/libretro-picodrive/APKBUILD
@@ -18,8 +18,7 @@ source="$pkgname-$_commit.tar.gz::https://github.com/libretro/picodrive/archive/
builddir="$srcdir/picodrive-$_commit"
options="!check" # No tests
-prepare()
-{
+prepare() {
default_prepare
rm -rf platform/common/dr_libs && mv "$srcdir/dr_libs-$_commit_dr_libs" platform/common/dr_libs
rm -rf pico/cd/libchdr && mv "$srcdir/libchdr-$_commit_libchdr" pico/cd/libchdr
diff --git a/testing/libretro-ppsspp/APKBUILD b/testing/libretro-ppsspp/APKBUILD
index bf8a7276909..a55ccf1a750 100644
--- a/testing/libretro-ppsspp/APKBUILD
+++ b/testing/libretro-ppsspp/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: David Demelier <markand@malikania.fr>
pkgname=libretro-ppsspp
pkgver=0_git20210516
-pkgrel=1
+pkgrel=12
_vers="v1.11.3-672-gf1bf596f5"
_commit="f1bf596f5c6301a9f757b18b7823fd9f34f235ef"
_commit_armips="7885552b208493a6a0f21663770c446c3ba65576"
@@ -33,16 +33,18 @@ source="$pkgname-$_commit.tar.gz::https://github.com/hrydgard/ppsspp/archive/$_c
$pkgname-spirv-cross-$_commit_spirv_cross.tar.gz::https://github.com/KhronosGroup/spirv-cross/archive/$_commit_spirv_cross.tar.gz
patch-unbundle.patch
patch-disable-git-version.patch
+ gcc12.patch
+ gcc13.patch
"
builddir="$srcdir/ppsspp-$_commit"
options="!check" # No tests
prepare() {
- default_prepare
rm -rf ext/armips && mv "$srcdir"/armips-$_commit_armips ext/armips
rm -rf ext/rapidjson && mv "$srcdir"/rapidjson-$_commit_rapidjson ext/rapidjson
rm -rf ext/SPIRV-Cross && mv "$srcdir"/SPIRV-Cross-$_commit_spirv_cross ext/SPIRV-Cross
rm -rf assets/lang && mv "$srcdir"/ppsspp-lang-$_commit_ppsspp_lang assets/lang
+ default_prepare
sed -i -e "s,@VERSION@,$_vers," git-version.cmake
}
@@ -80,4 +82,6 @@ sha512sums="
be77131814691dfbe65de3a2d3ea65de98c7169824997056637bbce39485327ff0f64e7eed8588237615948824e1f9dff1d083472b8cbccd3748a52379411e4e libretro-ppsspp-spirv-cross-9acb9ec31f5a8ef80ea6b994bb77be787b08d3d1.tar.gz
bce348cba279e746b77d3e75bddbdbdbbdb6643385e7a5f9d3f1dcb22a1fd7708acf16cc5e7acc8756e9ab9da9caeaef1a140d245df141acb23c07f9c23080e8 patch-unbundle.patch
859901bd42934b52f82c28c1f5f3b43277f54d79d58c035c063e615de3a5959a373ef8d9c0199ed1326bbd64b7b12f4582957851d57d2dd66b5ba8488bbb8734 patch-disable-git-version.patch
+ace2abbfe6757f51e9839f179c3d9ce74c14e5b0214f7928aec1de3fd80bb54ffe114d9dfbc061716626841a9a721e1204de4f0d419e280f05f473d7214ff3b1 gcc12.patch
+a744b901dfb86e5b4dd9e7447323649452cf9797050567ab262a6d670cdae20dabb62a582fbbcfb2afed9648314a04b6015257c3b0abb0afb9357e000553d77a gcc13.patch
"
diff --git a/testing/libretro-ppsspp/gcc12.patch b/testing/libretro-ppsspp/gcc12.patch
new file mode 100644
index 00000000000..9d6b73a155d
--- /dev/null
+++ b/testing/libretro-ppsspp/gcc12.patch
@@ -0,0 +1,12 @@
+diff --git a/Core/HW/Camera.h b/Core/HW/Camera.h
+index c232909..ec58952 100644
+--- a/Core/HW/Camera.h
++++ b/Core/HW/Camera.h
+@@ -20,6 +20,7 @@
+ #include "ppsspp_config.h"
+ #include "Core/HLE/sceUsbCam.h"
+ #include "Log.h"
++#include <pthread.h>
+
+ #include "ext/jpge/jpgd.h"
+ #include "ext/jpge/jpge.h"
diff --git a/testing/libretro-ppsspp/gcc13.patch b/testing/libretro-ppsspp/gcc13.patch
new file mode 100644
index 00000000000..cd49802e370
--- /dev/null
+++ b/testing/libretro-ppsspp/gcc13.patch
@@ -0,0 +1,71 @@
+diff --git a/Common/Data/Format/IniFile.h b/Common/Data/Format/IniFile.h
+index 6499562..a0b6ef2 100644
+--- a/Common/Data/Format/IniFile.h
++++ b/Common/Data/Format/IniFile.h
+@@ -4,6 +4,7 @@
+
+ #pragma once
+
++#include <cstdint>
+ #include <istream>
+ #include <map>
+ #include <string>
+diff --git a/Common/GPU/OpenGL/GLFeatures.h b/Common/GPU/OpenGL/GLFeatures.h
+index 6a8f15b..63ff9c0 100644
+--- a/Common/GPU/OpenGL/GLFeatures.h
++++ b/Common/GPU/OpenGL/GLFeatures.h
+@@ -4,6 +4,7 @@
+
+ #pragma once
+
++#include <cstdint>
+ #include <string>
+
+ // TODO: Replace with thin3d's vendor enum.
+diff --git a/Common/Net/NetBuffer.h b/Common/Net/NetBuffer.h
+index 6247aca..19f24b3 100644
+--- a/Common/Net/NetBuffer.h
++++ b/Common/Net/NetBuffer.h
+@@ -1,5 +1,6 @@
+ #pragma once
+
++#include <cstdint>
+ #include "Common/Buffer.h"
+
+ namespace net {
+diff --git a/Common/StringUtils.h b/Common/StringUtils.h
+index 89127be..de8c360 100644
+--- a/Common/StringUtils.h
++++ b/Common/StringUtils.h
+@@ -19,6 +19,7 @@
+
+ #include "Common.h"
+
++#include <cstdint>
+ #include <string>
+ #include <vector>
+
+diff --git a/Core/Reporting.h b/Core/Reporting.h
+index a1b04ab..77e5847 100644
+--- a/Core/Reporting.h
++++ b/Core/Reporting.h
+@@ -17,6 +17,7 @@
+
+ #pragma once
+
++#include <cstdint>
+ #include <string>
+ #include <vector>
+
+diff --git a/GPU/Common/IndexGenerator.cpp b/GPU/Common/IndexGenerator.cpp
+index 446d7a6..f3fb34c 100644
+--- a/GPU/Common/IndexGenerator.cpp
++++ b/GPU/Common/IndexGenerator.cpp
+@@ -17,6 +17,7 @@
+
+ #include <cstring>
+
++#include <cstdint>
+ #include "ppsspp_config.h"
+ #include "CPUDetect.h"
+ #include "Common.h"
diff --git a/testing/librewolf/APKBUILD b/testing/librewolf/APKBUILD
new file mode 100644
index 00000000000..32c172403ec
--- /dev/null
+++ b/testing/librewolf/APKBUILD
@@ -0,0 +1,752 @@
+# Contributor: Natanael Copa <ncopa@alpinelinux.org>
+# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
+# Contributor: Rasmus Thomsen <oss@cogitri.dev>
+# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
+# Contributor: Sertonix <sertonix@posteo.net>
+# Maintainer: Sertonix <sertonix@posteo.net>
+_pkgname=Librewolf
+pkgname=librewolf
+pkgver=124.0.2_p1
+_releasedate=2024-04-03
+pkgrel=0
+pkgdesc="Community-maintained fork of Firefox, focused on privacy, security and freedom."
+url="https://librewolf.net/"
+# s390x blocked by lld
+# armhf: https://bugzilla.mozilla.org/show_bug.cgi?id=1680495
+# riscv64: vpx symbol is missing #15412
+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"
+# ffmpeg 6 -> 112
+depends="
+ ffmpeg-libavcodec
+ mesa-egl
+ mesa-gl
+ pciutils-libs
+ "
+_llvmver=17
+makedepends="
+ alsa-lib-dev
+ automake
+ bsd-compat-headers
+ cargo
+ cbindgen
+ clang$_llvmver
+ clang$_llvmver-libclang
+ compiler-rt
+ dbus
+ dbus-glib-dev
+ gettext
+ gtk+3.0-dev
+ hunspell-dev
+ icu-dev
+ libevent-dev
+ libffi-dev
+ libjpeg-turbo-dev
+ libnotify-dev
+ libogg-dev
+ libtheora-dev
+ libtool
+ libvorbis-dev
+ libvpx-dev
+ libwebp-dev
+ libxcomposite-dev
+ libxt-dev
+ lld
+ llvm$_llvmver-dev
+ m4
+ mesa-dev
+ mesa-dri-gallium
+ nasm
+ nodejs
+ nspr-dev
+ nss-dev
+ patchelf
+ pciutils
+ pipewire-dev
+ pulseaudio-dev
+ py3-zstandard
+ python3
+ scudo-malloc
+ sed
+ wasi-sdk
+ wireless-tools-dev
+ xvfb-run
+ zip
+ "
+subpackages="$pkgname-intl"
+case "$CARCH" in
+riscv64) ;;
+*) subpackages="$subpackages $pkgname-dbg" ;;
+esac
+
+# The source has to change once the codeberg migration is done.
+source="$pkgname-$pkgver.tar.gz::https://gitlab.com/api/v4/projects/32320088/packages/generic/librewolf-source/${pkgver/_p/-}/librewolf-${pkgver/_p/-}.source.tar.gz
+ disable-moz-stackwalk.patch
+ fix-fortify-system-wrappers.patch
+ fix-rust-target.patch
+ fix-webrtc-glibcisms.patch
+ force-can-use-pack-relative-relocs.patch
+ icu74.patch
+ lfs64.patch
+ no-ccache-stats.patch
+ ppc-musttail.patch
+ python-deps.patch
+ res_nquery.patch
+ rust-lto-thin.patch
+ riscv64-no-lto.patch
+ sandbox-fork.patch
+ sandbox-largefile.patch
+ sandbox-sched_setscheduler.patch
+ sqlite-ppc.patch
+
+ librewolf.desktop
+ distribution.ini
+ vendor-prefs.js
+ "
+# tests are hard to run
+options="!check"
+
+builddir="$srcdir"/$pkgname-${pkgver/_p/-}
+_mozappdir=/usr/lib/$pkgname
+
+# help our shared-object scanner to find the libs
+ldpath="$_mozappdir"
+sonameprefix="$pkgname:"
+
+# secfixes:
+# 103.0-r0:
+# - CVE-2022-2505
+# - CVE-2022-36314
+# - CVE-2022-36315
+# - CVE-2022-36316
+# - CVE-2022-36317
+# - CVE-2022-36318
+# - CVE-2022-36319
+# - CVE-2022-36320
+# 102.0-r0:
+# - CVE-2022-2200
+# - CVE-2022-34468
+# - CVE-2022-34469
+# - CVE-2022-34470
+# - CVE-2022-34471
+# - CVE-2022-34472
+# - CVE-2022-34473
+# - CVE-2022-34474
+# - CVE-2022-34475
+# - CVE-2022-34476
+# - CVE-2022-34477
+# - CVE-2022-34478
+# - CVE-2022-34479
+# - CVE-2022-34480
+# - CVE-2022-34481
+# - CVE-2022-34482
+# - CVE-2022-34483
+# - CVE-2022-34484
+# - CVE-2022-34485
+# 101.0-r0:
+# - CVE-2022-1919
+# - CVE-2022-31736
+# - CVE-2022-31737
+# - CVE-2022-31738
+# - CVE-2022-31739
+# - CVE-2022-31740
+# - CVE-2022-31741
+# - CVE-2022-31742
+# - CVE-2022-31743
+# - CVE-2022-31744
+# - CVE-2022-31745
+# - CVE-2022-31747
+# - CVE-2022-31748
+# 100.0.2-r0:
+# - CVE-2022-1529
+# - CVE-2022-1802
+# 100.0-r0:
+# - CVE-2022-29909
+# - CVE-2022-29910
+# - CVE-2022-29911
+# - CVE-2022-29912
+# - CVE-2022-29914
+# - CVE-2022-29915
+# - CVE-2022-29916
+# - CVE-2022-29917
+# - CVE-2022-29918
+# 99.0-r0:
+# - CVE-2022-1097
+# - CVE-2022-24713
+# - CVE-2022-28281
+# - CVE-2022-28282
+# - CVE-2022-28283
+# - CVE-2022-28284
+# - CVE-2022-28285
+# - CVE-2022-28286
+# - CVE-2022-28287
+# - CVE-2022-28288
+# - CVE-2022-28289
+# 98.0-r0:
+# - CVE-2022-0843
+# - CVE-2022-26381
+# - CVE-2022-26382
+# - CVE-2022-26383
+# - CVE-2022-26384
+# - CVE-2022-26385
+# - CVE-2022-26387
+# 97.0.2-r0:
+# - CVE-2022-26485
+# - CVE-2022-26486
+# 97.0-r0:
+# - CVE-2021-4140
+# - CVE-2022-0511
+# - CVE-2022-22736
+# - CVE-2022-22737
+# - CVE-2022-22738
+# - CVE-2022-22739
+# - CVE-2022-22740
+# - CVE-2022-22741
+# - CVE-2022-22742
+# - CVE-2022-22743
+# - CVE-2022-22744
+# - CVE-2022-22745
+# - CVE-2022-22746
+# - CVE-2022-22747
+# - CVE-2022-22748
+# - CVE-2022-22749
+# - CVE-2022-22750
+# - CVE-2022-22751
+# - CVE-2022-22752
+# - CVE-2022-22753
+# - CVE-2022-22754
+# - CVE-2022-22755
+# - CVE-2022-22756
+# - CVE-2022-22757
+# - CVE-2022-22758
+# - CVE-2022-22759
+# - CVE-2022-22760
+# - CVE-2022-22761
+# - CVE-2022-22762
+# - CVE-2022-22764
+# 95.0-r0:
+# - CVE-2021-43536
+# - CVE-2021-43537
+# - CVE-2021-43538
+# - CVE-2021-43539
+# - CVE-2021-43540
+# - CVE-2021-43541
+# - CVE-2021-43542
+# - CVE-2021-43543
+# - CVE-2021-43544
+# - CVE-2021-43545
+# - CVE-2021-43546
+# 94.0-r0:
+# - CVE-2021-38503
+# - CVE-2021-38504
+# - CVE-2021-38505
+# - CVE-2021-38506
+# - CVE-2021-38507
+# - CVE-2021-38508
+# - CVE-2021-38509
+# - CVE-2021-38510
+# 93.0-r0:
+# - CVE-2021-32810
+# - CVE-2021-38496
+# - CVE-2021-38497
+# - CVE-2021-38498
+# - CVE-2021-38499
+# - CVE-2021-38500
+# - CVE-2021-38501
+# 92.0.1-r0:
+# - CVE-2021-29980
+# - CVE-2021-29981
+# - CVE-2021-29982
+# - CVE-2021-29983
+# - CVE-2021-29984
+# - CVE-2021-29985
+# - CVE-2021-29986
+# - CVE-2021-29987
+# - CVE-2021-29988
+# - CVE-2021-29989
+# - CVE-2021-29990
+# - CVE-2021-29991
+# - CVE-2021-29993
+# - CVE-2021-38491
+# - CVE-2021-38492
+# - CVE-2021-38493
+# - CVE-2021-38494
+# 90.0-r0:
+# - CVE-2021-29970
+# - CVE-2021-29972
+# - CVE-2021-29974
+# - CVE-2021-29975
+# - CVE-2021-29976
+# - CVE-2021-29977
+# - CVE-2021-30547
+# 89.0-r0:
+# - CVE-2021-29959
+# - CVE-2021-29960
+# - CVE-2021-29961
+# - CVE-2021-29962
+# - CVE-2021-29963
+# - CVE-2021-29965
+# - CVE-2021-29966
+# - CVE-2021-29967
+# 88.0.1-r0:
+# - CVE-2021-29952
+# 88.0-r0:
+# - CVE-2021-23994
+# - CVE-2021-23995
+# - CVE-2021-23996
+# - CVE-2021-23997
+# - CVE-2021-23998
+# - CVE-2021-23999
+# - CVE-2021-24000
+# - CVE-2021-24001
+# - CVE-2021-24002
+# - CVE-2021-29944
+# - CVE-2021-29945
+# - CVE-2021-29946
+# - CVE-2021-29947
+# 87.0-r0:
+# - CVE-2021-23968
+# - CVE-2021-23969
+# - CVE-2021-23970
+# - CVE-2021-23971
+# - CVE-2021-23972
+# - CVE-2021-23973
+# - CVE-2021-23974
+# - CVE-2021-23975
+# - CVE-2021-23976
+# - CVE-2021-23977
+# - CVE-2021-23978
+# - CVE-2021-23979
+# - CVE-2021-23981
+# - CVE-2021-23982
+# - CVE-2021-23983
+# - CVE-2021-23984
+# - CVE-2021-23985
+# - CVE-2021-23986
+# - CVE-2021-23987
+# - CVE-2021-23988
+# 85.0-r0:
+# - CVE-2021-23954
+# - CVE-2021-23955
+# - CVE-2021-23956
+# - CVE-2021-23957
+# - CVE-2021-23958
+# - CVE-2021-23959
+# - CVE-2021-23960
+# - CVE-2021-23961
+# - CVE-2021-23962
+# - CVE-2021-23963
+# - CVE-2021-23964
+# - CVE-2021-23965
+# 84.0.2-r0:
+# - CVE-2020-16044
+# 84.0.1-r0:
+# - CVE-2020-16042
+# - CVE-2020-26971
+# - CVE-2020-26972
+# - CVE-2020-26973
+# - CVE-2020-26974
+# - CVE-2020-26975
+# - CVE-2020-26976
+# - CVE-2020-26977
+# - CVE-2020-26978
+# - CVE-2020-26979
+# - CVE-2020-35111
+# - CVE-2020-35112
+# - CVE-2020-35113
+# - CVE-2020-35114
+# 83.0-r0:
+# - CVE-2020-15999
+# - CVE-2020-16012
+# - CVE-2020-26952
+# - CVE-2020-26953
+# - CVE-2020-26954
+# - CVE-2020-26955
+# - CVE-2020-26956
+# - CVE-2020-26957
+# - CVE-2020-26958
+# - CVE-2020-26959
+# - CVE-2020-26960
+# - CVE-2020-26961
+# - CVE-2020-26962
+# - CVE-2020-26963
+# - CVE-2020-26964
+# - CVE-2020-26965
+# - CVE-2020-26966
+# - CVE-2020-26967
+# - CVE-2020-26968
+# - CVE-2020-26969
+# 82.0.3-r0:
+# - CVE-2020-26950
+# 82.0-r0:
+# - CVE-2020-15254
+# - CVE-2020-15680
+# - CVE-2020-15681
+# - CVE-2020-15682
+# - CVE-2020-15683
+# - CVE-2020-15684
+# - CVE-2020-15969
+# 81.0-r0:
+# - CVE-2020-15673
+# - CVE-2020-15674
+# - CVE-2020-15675
+# - CVE-2020-15676
+# - CVE-2020-15677
+# - CVE-2020-15678
+# 80.0-r0:
+# - CVE-2020-6829
+# - CVE-2020-12400
+# - CVE-2020-12401
+# - CVE-2020-15663
+# - CVE-2020-15664
+# - CVE-2020-15665
+# - CVE-2020-15666
+# - CVE-2020-15667
+# - CVE-2020-15668
+# - CVE-2020-15670
+# 79.0-r0:
+# - CVE-2020-6463
+# - CVE-2020-6514
+# - CVE-2020-15652
+# - CVE-2020-15653
+# - CVE-2020-15654
+# - CVE-2020-15655
+# - CVE-2020-15656
+# - CVE-2020-15657
+# - CVE-2020-15658
+# - CVE-2020-15659
+# 78.0-r0:
+# - CVE-2020-12415
+# - CVE-2020-12416
+# - CVE-2020-12417
+# - CVE-2020-12418
+# - CVE-2020-12419
+# - CVE-2020-12420
+# - CVE-2020-12402
+# - CVE-2020-12421
+# - CVE-2020-12422
+# - CVE-2020-12423
+# - CVE-2020-12424
+# - CVE-2020-12425
+# - CVE-2020-12426
+# 77.0-r0:
+# - CVE-2020-12399
+# - CVE-2020-12405
+# - CVE-2020-12406
+# - CVE-2020-12407
+# - CVE-2020-12408
+# - CVE-2020-12409
+# - CVE-2020-12411
+# 76.0-r0:
+# - CVE-2020-6831
+# - CVE-2020-12387
+# - CVE-2020-12388
+# - CVE-2020-12389
+# - CVE-2020-12390
+# - CVE-2020-12391
+# - CVE-2020-12392
+# - CVE-2020-12393
+# - CVE-2020-12394
+# - CVE-2020-12395
+# - CVE-2020-12396
+# 75.0-r0:
+# - CVE-2020-6821
+# - CVE-2020-6822
+# - CVE-2020-6823
+# - CVE-2020-6824
+# - CVE-2020-6825
+# - CVE-2020-6826
+# 74.0.1-r0:
+# - CVE-2020-6819
+# - CVE-2020-6820
+# 74.0-r0:
+# - CVE-2020-6805
+# - CVE-2020-6806
+# - CVE-2020-6807
+# - CVE-2020-6808
+# - CVE-2020-6809
+# - CVE-2020-6810
+# - CVE-2020-6811
+# - CVE-2019-20503
+# - CVE-2020-6812
+# - CVE-2020-6813
+# - CVE-2020-6814
+# - CVE-2020-6815
+# 71.0.1-r0:
+# - CVE-2019-17016
+# - CVE-2019-17017
+# - CVE-2019-17020
+# - CVE-2019-17022
+# - CVE-2019-17023
+# - CVE-2019-17024
+# - CVE-2019-17025
+# - CVE-2019-17026
+# 70.0-r0:
+# - CVE-2018-6156
+# - CVE-2019-15903
+# - CVE-2019-11757
+# - CVE-2019-11759
+# - CVE-2019-11760
+# - CVE-2019-11761
+# - CVE-2019-11762
+# - CVE-2019-11763
+# - CVE-2019-11764
+# - CVE-2019-11765
+# - CVE-2019-17000
+# - CVE-2019-17001
+# - CVE-2019-17002
+# 68.0.2-r0:
+# - CVE-2019-11733
+
+# we need this because cargo verifies checksums of all files in vendor
+# crates when it builds and gives us no way to override or update the
+# file sanely... so just clear out the file list
+_clear_vendor_checksums() {
+ sed -i 's/\("files":{\)[^}]*/\1/' third_party/rust/$1/.cargo-checksum.json
+}
+
+prepare() {
+ default_prepare
+
+ export CFLAGS="${CFLAGS/-fstack-clash-protection/} -g0 -O2"
+ export CXXFLAGS="${CXXFLAGS/-fstack-clash-protection/} -g0 -O2 -Wno-deprecated-builtins -Wno-deprecated-declarations"
+
+ _clear_vendor_checksums audio_thread_priority
+
+ cat > base-mozconfig <<-EOF
+ ac_add_options --with-app-name=$pkgname
+ export MOZ_APP_REMOTINGNAME=$_pkgname
+ ac_add_options --with-branding=browser/branding/librewolf
+
+ # disable unwanted things
+ ac_add_options --disable-bootstrap
+ ac_add_options --disable-cargo-incremental
+ ac_add_options --disable-crashreporter
+ ac_add_options --disable-debug
+ ac_add_options --disable-debug-symbols
+ ac_add_options --disable-install-strip
+ ac_add_options --disable-jemalloc
+ ac_add_options --disable-strip
+ ac_add_options --disable-tests
+ ac_add_options --disable-updater
+ mk_add_options MOZ_CRASHREPORTER=0
+ mk_add_options MOZ_DATA_REPORTING=0
+ mk_add_options MOZ_SERVICES_HEALTHREPORT=0
+ mk_add_options MOZ_TELEMETRY_REPORTING=0
+
+ # features
+ ac_add_options --enable-alsa
+ ac_add_options --enable-dbus
+ ac_add_options --enable-default-toolkit=cairo-gtk3-wayland
+ ac_add_options --enable-ffmpeg
+ ac_add_options --enable-hardening
+ ac_add_options --enable-linker=lld
+ ac_add_options --enable-necko-wifi
+ ac_add_options --enable-optimize="$CFLAGS"
+ ac_add_options --enable-pulseaudio
+ ac_add_options --enable-release
+ ac_add_options --enable-update-channel=release
+
+ # system libs
+ ac_add_options --enable-system-pixman
+ ac_add_options --with-system-ffi
+ ac_add_options --with-system-icu
+ ac_add_options --with-system-jpeg
+ ac_add_options --with-system-libevent
+ ac_add_options --with-system-libvpx
+ ac_add_options --with-system-nspr
+ ac_add_options --with-system-nss
+ ac_add_options --with-system-png
+ ac_add_options --with-system-webp
+ ac_add_options --with-system-zlib
+
+ # misc
+ ac_add_options --allow-addon-sideload
+ ac_add_options --prefix=/usr
+ ac_add_options --with-distribution-id=org.alpinelinux
+ ac_add_options --with-libclang-path=/usr/lib
+ ac_add_options --with-unsigned-addon-scopes=app,system
+ ac_add_options --with-wasi-sysroot=/usr/share/wasi-sysroot
+ ac_add_options --host=$CHOST
+ ac_add_options --target=$CTARGET
+
+ # objdir
+ mk_add_options MOZ_OBJDIR="$builddir/obj"
+
+ mk_add_options RUSTFLAGS="$RUSTFLAGS"
+ EOF
+}
+
+build() {
+ export MOZ_BUILD_DATE="$(date ${SOURCE_DATE_EPOCH:+ -d@${SOURCE_DATE_EPOCH}} "+%Y%m%d%H%M%S")"
+
+ # for lto
+ ulimit -n 4096
+
+ # can't be set here and fail
+ unset RUSTFLAGS
+
+ local thinlto_jobs=${JOBS:-1}
+ local link_threads=${JOBS:-1}
+
+ case "$CARCH" in
+ # on this platform, lld seems to not utilise >1 threads for thinlto for some reason.
+ # at the same time, having more than 8 also crashes lld for librewolf buildsystems (why?).
+ aarch64)
+ if [ $thinlto_jobs -gt 8 ]; then
+ thinlto_jobs=8
+ fi
+ ;;
+ esac
+
+ case "$CARCH" in
+ arm*|x86)
+ link_threads=1
+ ;;
+ esac
+
+ export LDFLAGS="$LDFLAGS -Wl,--thinlto-jobs=$thinlto_jobs -Wl,--threads=$link_threads"
+
+ export SHELL=/bin/sh
+ export USE_SHORT_LIBNAME=1
+ export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=system
+ export MOZBUILD_STATE_PATH="$srcdir"/mozbuild
+ # disable desktop notifications
+ export MOZ_NOSPAM=1
+ # Find our triplet JSON
+ export RUST_TARGET="$CTARGET"
+
+ # has to be same version or older than lld
+ export CC="clang-$_llvmver"
+ export CXX="clang++-$_llvmver"
+
+ # set rpath so linker finds the libs
+ export LDFLAGS="$LDFLAGS -Wl,-rpath,$_mozappdir"
+
+ # let librewolf do this itself.
+ unset CARGO_PROFILE_RELEASE_OPT_LEVEL
+ unset CARGO_PROFILE_RELEASE_LTO
+
+ case "$CARCH" in
+ aarch64|x86_64|ppc64le)
+ msg "building instrumented $pkgname"
+ cat > mozconfig base-mozconfig - <<-EOF
+ ac_add_options --enable-profile-generate=cross
+ EOF
+ ./mach build
+ ./mach package
+
+ msg "profiling $pkgname"
+
+ LLVM_PROFDATA=llvm-profdata \
+ JARLOG_FILE="$PWD"/jarlog \
+ GDK_BACKEND=x11 \
+ LD_LIBRARY_PATH="$PWD"/obj/dist/$pkgname \
+ XDG_RUNTIME_DIR="$(mktemp -d "$builddir/pgo-runtime-XXXXXX")" \
+ MOZ_ENABLE_WAYLAND=0 \
+ xvfb-run -a -s "-screen 0 1920x1080x24 -nolisten local" \
+ dbus-run-session -- \
+ ./mach python build/pgo/profileserver.py
+
+ test -s merged.profdata
+ test -s jarlog
+
+ ./mach clobber
+
+ msg "building optimised $pkgname"
+ cat > mozconfig base-mozconfig - <<-EOF
+ ac_add_options --enable-lto=cross
+ ac_add_options --enable-profile-use=cross
+ ac_add_options --with-pgo-profile-path="$PWD"/merged.profdata
+ ac_add_options --with-pgo-jarlog="$PWD"/jarlog
+ EOF
+ ./mach build
+ ;;
+ armv7|x86|riscv64)
+ # no pgo here as it uses too much memory/broken on riscv
+ msg "building regular $pkgname"
+ cat > mozconfig base-mozconfig - <<-EOF
+ ac_add_options --disable-profiling
+ EOF
+ ./mach build
+ ;;
+ *)
+ msg "implement build for $CARCH"
+ exit 1
+ esac
+}
+
+package() {
+ DESTDIR="$pkgdir" ./mach install
+
+ local _png
+ for _png in ./browser/branding/librewolf/default*.png; do
+ local i=${_png%.png}
+ i=${i##*/default}
+ install -d "$pkgdir"/usr/share/icons/hicolor/"$i"x"$i"/apps/
+ ln -s "$_mozappdir"/browser/chrome/icons/default/default"$i".png \
+ "$pkgdir"/usr/share/icons/hicolor/"$i"x"$i"/apps/$pkgname.png
+ done
+
+ case "$CARCH" in
+ x86|arm*) ;;
+ *) patchelf --add-needed libscudo.so "$pkgdir"/usr/lib/$pkgname/$pkgname ;;
+ esac
+
+ install -Dm644 browser/branding/librewolf/content/about-logo.png \
+ "$pkgdir"/usr/share/icons/hicolor/192x192/apps/$pkgname.png
+ install -Dm644 browser/branding/librewolf/content/about-logo@2x.png \
+ "$pkgdir"/usr/share/icons/hicolor/384x384/apps/$pkgname.png
+ install -Dm644 browser/branding/librewolf/content/about-logo.svg \
+ "$pkgdir"/usr/share/icons/hicolor/scalable/apps/$pkgname.svg
+
+ install -Dm644 "$srcdir"/librewolf.desktop \
+ "$pkgdir"/usr/share/applications/$pkgname.desktop
+
+ install -Dm644 "$srcdir"/distribution.ini \
+ "$pkgdir"/$_mozappdir/distribution/distribution.ini
+
+ # install our vendor prefs
+ install -Dm644 "$srcdir"/vendor-prefs.js \
+ "$pkgdir"/$_mozappdir/browser/defaults/preferences/vendor.js
+
+ # Replace duplicate binary with wrapper
+ # https://bugzilla.mozilla.org/show_bug.cgi?id=658850
+ install -Dm755 /dev/stdin "$pkgdir"/usr/bin/$pkgname <<- EOF
+ #!/bin/sh
+ exec $_mozappdir/$pkgname "\$@"
+ EOF
+ rm "$pkgdir"/$_mozappdir/$pkgname-bin
+ ln -sfv /usr/bin/$pkgname "$pkgdir"/$_mozappdir/$pkgname-bin
+}
+
+intl() {
+ pkgdesc="$pkgname - International ICU data"
+ depends="icu-data-full"
+ install_if="$pkgname=$pkgver-r$pkgrel icu"
+ mkdir -p "$subpkgdir"
+}
+
+sha512sums="
+117106622d8f342a80d56619720b9ccdc20c04f1d3758cfb7fa1b24416f2f9e86182176ca96e8bf78dfa19272edbbca15846978f96daef747e25f619bc8a3266 librewolf-124.0.2_p1.tar.gz
+eb49b791280a8d765e6b056816ad6d7ec20a3b13723ebe648a8ecd2c086a5bc83277a3b4c127a470e7bb7105cfa4ed7611c19ac683545140190cafaa880ad515 disable-moz-stackwalk.patch
+19eea840aa9c1c21e7bd1f832ec078989fe6f08fca40baa271be7e74f1cffeb5ab8d3218a93e664b8d90a41506dede524e2a5174cd47580866109bc6711ea969 fix-fortify-system-wrappers.patch
+cd68b89e29e5f6379fbd5679db27b9a5ef70ea65e51c0d0a8137e1f1fd210e35a8cfb047798e9549bc7275606d7ec5c8d8af1335d29da4699db7acd8bc7ff556 fix-rust-target.patch
+305c874fdea3096e9c4c6aa6520ac64bb1c347c4b59db8360096646593fe684c3b5377874d91cecd33d56d1410b4714fbdea2b514923723ecbeff79d51265d9b fix-webrtc-glibcisms.patch
+b7a2beef126569d71242198f2503bb6a32acd1ea89080ef7bed6ba0f0d10819282c2c346c6f729d81cd90e328e607b88acaac8785ed057cc8cb562e315890334 force-can-use-pack-relative-relocs.patch
+0f6c1f4b32b2f501c03db14b67a94419acf1ac58a5ea9efeacd47dc85d73194e479efcf056949c74a0ef9deebc2ba178564bec45dba871fabfc5c909123e003d icu74.patch
+5fa9382c692e4bd6a2634308f24a6526fd12a60a2563d2090056d43a60505df3ec9881bbf54562e69394467529b3b0dc45955afca46ed329af03cea074fff070 lfs64.patch
+c0437a6753f3f350968fa12d250efdfe1bea77baf0e4c06b072b5cc9e78c774dbf4506bc536337030d349fb3ba4460097b75b0c7c5b8fb2d39d8b0a392948936 no-ccache-stats.patch
+2d8dff86212d6d2a904cbb5a5a1d6c17b89adc929fc6a3f4c6cb669f5e83ecddff5a799225319ba445a187b04d111251af75dd3ce8a039164bc14d2a432a2a04 ppc-musttail.patch
+4de65266f5fc1c5bf1d7cd00a0e4728a1ec96b7680b5ea72d6e9ed463b7a0bba11792b3411d25ef1e26f62408eb7f8b06dc62209dbb0454c779d8858d8d59725 python-deps.patch
+f635243e587b5be2c82e96d8ad11e93f99e3130765e4b9e329ff7424f685d8f7bf385de66ca2698084e95da422d55192053a45412e75915423b327f2415f581d res_nquery.patch
+1c6918dd6655d3a1251bfd4af2e1c561cbb00d540a883b4c1ebf7f5de530d754d9ac07b4b5f56cdab6c511d25c8910ec94043f5733e97501a67abffe1bafaeb1 rust-lto-thin.patch
+b12dbff6513ac8c231d91c257a9accecc034d9ea9c31d99ca0454334ccf80fe7b50d6a356182dc46a9f25064366ea9a177f463cb2544b1cf5368ee6bd71bc095 riscv64-no-lto.patch
+2518f2fc75b5db30058e0735f47d60fdf1e7adfaeee4b33fb2afb1bd9a616ce943fd88f4404d0802d4083703f4acf1d5ad42377218d025bc768807fbaf7e1609 sandbox-fork.patch
+b7d0a6126bdf6c0569f80aabf5b37ed2c7a35712eb8a0404a2d85381552f5555d4f97d213ea26cec6a45dc2785f22439376ed5f8e78b4fd664ef0223307b333e sandbox-largefile.patch
+f8c3555ef6207933cbffbf4fc101a9b4c0d2990c0063162f0f0bde70ef0b46f86bfac42e7110695183424a87948de593f3927b2d8509ede3e4fc7bd8a1fad1ce sandbox-sched_setscheduler.patch
+67bc0be3da973e6859256bf9be4df7100837430e6076fc0bd623f504c35e02e6c191e9c5a3a1d202e5ad4d89f874f254a09e164e39c7bfd97bbc8d4c8d0632a5 sqlite-ppc.patch
+73e9c51977d1a675c38fafeaa7478499d002d0dbfc8741ed7d9810ac39fb190870bd3295b86f7c9f7e8191f0fda7b7d6454d0a4cc1d7c61f3810a4d3a165180f librewolf.desktop
+b6ceaf541ecb16a91398e1f629c7479e37c42c467e78980895ade8fe16feeb307ead50c839bac72f18bf74b7be46382c431a1361b3194cf3dffc6d58d67f82e5 distribution.ini
+bd20f3a9606890d239b9a7fb66f75c7aa860622005613186e3dda8804fd9d8a89a00ace19b34c198e6bb5620b1c5ae36edc82a2edf437251df2dcbca67180ce7 vendor-prefs.js
+"
diff --git a/testing/librewolf/disable-moz-stackwalk.patch b/testing/librewolf/disable-moz-stackwalk.patch
new file mode 100644
index 00000000000..54990d799fc
--- /dev/null
+++ b/testing/librewolf/disable-moz-stackwalk.patch
@@ -0,0 +1,28 @@
+upstream bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1882329
+diff --git a/mozglue/misc/StackWalk.cpp b/mozglue/misc/StackWalk.cpp
+index 2fefc5b..57c56e6 100644
+--- a/mozglue/misc/StackWalk.cpp
++++ b/mozglue/misc/StackWalk.cpp
+@@ -46,5 +46,12 @@ using namespace mozilla;
+
++#if __GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1)
++# define HAVE___LIBC_STACK_END 1
++#else
++# define HAVE___LIBC_STACK_END 0
++#endif
++
+ #if (defined(linux) && \
+ ((defined(__GNUC__) && (defined(__i386) || defined(PPC))) || \
+- defined(HAVE__UNWIND_BACKTRACE)))
++ defined(HAVE__UNWIND_BACKTRACE)) && \
++ (HAVE___LIBC_STACK_END || ANDROID))
+ # define MOZ_STACKWALK_SUPPORTS_LINUX 1
+@@ -54,8 +61,2 @@ using namespace mozilla;
+
+-#if __GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1)
+-# define HAVE___LIBC_STACK_END 1
+-#else
+-# define HAVE___LIBC_STACK_END 0
+-#endif
+-
+ #if HAVE___LIBC_STACK_END
diff --git a/testing/librewolf/distribution.ini b/testing/librewolf/distribution.ini
new file mode 100644
index 00000000000..89237980d8e
--- /dev/null
+++ b/testing/librewolf/distribution.ini
@@ -0,0 +1,9 @@
+[Global]
+id=alpinelinux
+version=1.0
+about=Librewolf
+
+[Preferences]
+app.distributor=alpinelinux
+app.distributor.channel=librewolf
+app.partner.librewolf=librewolf
diff --git a/testing/librewolf/fix-fortify-system-wrappers.patch b/testing/librewolf/fix-fortify-system-wrappers.patch
new file mode 100644
index 00000000000..a1a89c6520b
--- /dev/null
+++ b/testing/librewolf/fix-fortify-system-wrappers.patch
@@ -0,0 +1,11 @@
+The wrapper features.h gets pulled in by system headers causing thigns to
+break. We work around it by simply not wrap features.h
+
+diff --git a/config/system-headers.mozbuild b/config/system-headers.mozbuild
+index 07d48e7..d2ce2b2 100644
+--- a/config/system-headers.mozbuild
++++ b/config/system-headers.mozbuild
+@@ -227,3 +227,2 @@ system_headers = [
+ "fcntl.h",
+- "features.h",
+ "fenv.h",
diff --git a/testing/librewolf/fix-rust-target.patch b/testing/librewolf/fix-rust-target.patch
new file mode 100644
index 00000000000..9342063c33a
--- /dev/null
+++ b/testing/librewolf/fix-rust-target.patch
@@ -0,0 +1,31 @@
+Allow us to just set RUST_TARGEt ourselves instead of hacking around in mozilla's
+weird custom build system...
+
+--- a/build/moz.configure/rust.configure
++++ b/build/moz.configure/rust.configure
+@@ -225,7 +225,9 @@
+ data.setdefault(key, []).append(namespace(rust_target=t, target=info))
+ return data
+
+-
++@imports('os')
++@imports(_from='mozbuild.util', _import='ensure_unicode')
++@imports(_from='mozbuild.util', _import='system_encoding')
+ def detect_rustc_target(
+ host_or_target, compiler_info, arm_target, rust_supported_targets
+ ):
+@@ -340,13 +342,13 @@
+
+ return None
+
+- rustc_target = find_candidate(candidates)
++ rustc_target = os.environ['RUST_TARGET']
+
+ if rustc_target is None:
+ die("Don't know how to translate {} for rustc".format(host_or_target.alias))
+
+- return rustc_target
++ return ensure_unicode(rustc_target, system_encoding)
+
+
+ @imports('os')
diff --git a/testing/librewolf/fix-webrtc-glibcisms.patch b/testing/librewolf/fix-webrtc-glibcisms.patch
new file mode 100644
index 00000000000..4f9043b58e1
--- /dev/null
+++ b/testing/librewolf/fix-webrtc-glibcisms.patch
@@ -0,0 +1,20 @@
+--- a/third_party/libwebrtc/system_wrappers/source/cpu_features_linux.cc
++++ b/third_party/libwebrtc/system_wrappers/source/cpu_features_linux.cc
+@@ -18,7 +18,7 @@
+ #define WEBRTC_GLIBC_PREREQ(a, b) 0
+ #endif
+
+-#if WEBRTC_GLIBC_PREREQ(2, 16)
++#if !__GLIBC__ || WEBRTC_GLIBC_PREREQ(2, 16)
+ #include <sys/auxv.h>
+ #else
+ #include <errno.h>
+@@ -40,7 +40,7 @@
+ int architecture = 0;
+ uint64_t hwcap = 0;
+ const char* platform = NULL;
+-#if WEBRTC_GLIBC_PREREQ(2, 16)
++#if !__GLIBC__ || WEBRTC_GLIBC_PREREQ(2, 16)
+ hwcap = getauxval(AT_HWCAP);
+ platform = (const char*)getauxval(AT_PLATFORM);
+ #else
diff --git a/testing/librewolf/force-can-use-pack-relative-relocs.patch b/testing/librewolf/force-can-use-pack-relative-relocs.patch
new file mode 100644
index 00000000000..b1161080d8d
--- /dev/null
+++ b/testing/librewolf/force-can-use-pack-relative-relocs.patch
@@ -0,0 +1,11 @@
+--- a/toolkit/moz.configure
++++ b/toolkit/moz.configure
+@@ -1517,7 +1517,7 @@ with only_when("--enable-compile-environ
+ # packed relative relocations rather than elfhack.
+ if android_version:
+ return android_version >= 30
+- return have_arc4random
++ return have_arc4random or True
+
+ @depends(
+ c_compiler,
diff --git a/testing/librewolf/icu74.patch b/testing/librewolf/icu74.patch
new file mode 100644
index 00000000000..1c2e3dbbcfb
--- /dev/null
+++ b/testing/librewolf/icu74.patch
@@ -0,0 +1,37 @@
+https://bugzilla.mozilla.org/show_bug.cgi?id=1862601
+
+# HG changeset patch
+# User André Bargull <andre.bargull@gmail.com>
+# Date 1697435923 -7200
+# Node ID d5f3b0c4f08a426ce00a153c04e177eecb6820e2
+# Parent c63994f8259efdf6e745c960aa9e1409d5477049
+Bug xxx - Part 12: Add new line break classes. r?
+
+diff --git a/intl/lwbrk/LineBreaker.cpp b/intl/lwbrk/LineBreaker.cpp
+--- a/intl/lwbrk/LineBreaker.cpp
++++ b/intl/lwbrk/LineBreaker.cpp
+@@ -443,17 +443,23 @@ static int8_t GetClass(uint32_t u, LineB
+ /* JT = 34, [JT] */ CLASS_CHARACTER,
+ /* JV = 35, [JV] */ CLASS_CHARACTER,
+ /* CLOSE_PARENTHESIS = 36, [CP] */ CLASS_CLOSE_LIKE_CHARACTER,
+ /* CONDITIONAL_JAPANESE_STARTER = 37, [CJ] */ CLASS_CLOSE,
+ /* HEBREW_LETTER = 38, [HL] */ CLASS_CHARACTER,
+ /* REGIONAL_INDICATOR = 39, [RI] */ CLASS_CHARACTER,
+ /* E_BASE = 40, [EB] */ CLASS_BREAKABLE,
+ /* E_MODIFIER = 41, [EM] */ CLASS_CHARACTER,
+- /* ZWJ = 42, [ZWJ]*/ CLASS_CHARACTER};
++ /* ZWJ = 42, [ZWJ]*/ CLASS_CHARACTER,
++ /* AKSARA = 43, [AK] */ CLASS_CHARACTER,
++ /* AKSARA_PREBASE = 44, [AP] */ CLASS_CHARACTER,
++ /* AKSARA_START = 45, [AS] */ CLASS_CHARACTER,
++ /* VIRAMA_FINAL = 46, [VF] */ CLASS_CHARACTER,
++ /* VIRAMA = 47, [VI] */ CLASS_CHARACTER,
++ };
+
+ static_assert(U_LB_COUNT == mozilla::ArrayLength(sUnicodeLineBreakToClass),
+ "Gecko vs ICU LineBreak class mismatch");
+
+ auto cls = GetLineBreakClass(u);
+ MOZ_ASSERT(cls < mozilla::ArrayLength(sUnicodeLineBreakToClass));
+
+ // Overrides based on rules for the different line-break values given in
diff --git a/testing/librewolf/lfs64.patch b/testing/librewolf/lfs64.patch
new file mode 100644
index 00000000000..bae8b5d16d2
--- /dev/null
+++ b/testing/librewolf/lfs64.patch
@@ -0,0 +1,35 @@
+force stat() instead of stat64() on 32-bit
+--
+--- a/xpcom/io/nsLocalFileUnix.h
++++ b/xpcom/io/nsLocalFileUnix.h
+@@ -21,7 +21,7 @@
+
+ // stat64 and lstat64 are deprecated on OS X. Normal stat and lstat are
+ // 64-bit by default on OS X 10.6+.
+-#if defined(HAVE_STAT64) && defined(HAVE_LSTAT64) && !defined(XP_DARWIN)
++#if 0 && defined(HAVE_STAT64) && defined(HAVE_LSTAT64) && !defined(XP_DARWIN)
+ # if defined(AIX)
+ # if defined STAT
+ # undef STAT
+--- a/mozglue/baseprofiler/core/shared-libraries-linux.cc
++++ b/mozglue/baseprofiler/core/shared-libraries-linux.cc
+@@ -178,7 +178,7 @@
+ return false;
+ }
+
+-#if defined(__x86_64__) || defined(__aarch64__) || \
++#if 1 || defined(__x86_64__) || defined(__aarch64__) || \
+ (defined(__mips__) && _MIPS_SIM == _ABI64) || \
+ !(defined(GP_OS_linux) || defined(GP_OS_android))
+
+--- a/security/sandbox/linux/broker/SandboxBrokerUtils.h
++++ b/security/sandbox/linux/broker/SandboxBrokerUtils.h
+@@ -15,7 +15,7 @@
+ // calls. We'll intercept those and handle them in the stat functions
+ // but must be sure to use the right structure layout.
+
+-#if defined(__NR_stat64) || defined(__NR_fstatat64)
++#if 0 && (defined(__NR_stat64) || defined(__NR_fstatat64) )
+ typedef struct stat64 statstruct;
+ # define statsyscall stat64
+ # define lstatsyscall lstat64
diff --git a/testing/librewolf/librewolf.desktop b/testing/librewolf/librewolf.desktop
new file mode 100644
index 00000000000..aa22fd9dfac
--- /dev/null
+++ b/testing/librewolf/librewolf.desktop
@@ -0,0 +1,386 @@
+[Desktop Entry]
+Version=1.0
+Name=LibreWolf
+Name[ar]=متصÙØ­ الويب ÙَيَرÙÙكْس
+Name[ast]=Restolador web LibreWolf
+Name[bn]=ফায়ারফকà§à¦¸ ওয়েব বà§à¦°à¦¾à¦‰à¦œà¦¾à¦°
+Name[ca]=Navegador web LibreWolf
+Name[cs]=LibreWolf Webový prohlížeÄ
+Name[da]=LibreWolf - internetbrowser
+Name[el]=ΠεÏιηγητής LibreWolf
+Name[es]=Navegador web LibreWolf
+Name[et]=LibreWolfi veebibrauser
+Name[fa]=مرورگر اینترنتی LibreWolf
+Name[fi]=LibreWolf-selain
+Name[fr]=Navigateur Web LibreWolf
+Name[gl]=Navegador web LibreWolf
+Name[he]=דפדפן ×”×ינטרנט LibreWolf
+Name[hr]=LibreWolf web preglednik
+Name[hu]=LibreWolf webböngésző
+Name[it]=LibreWolf Browser Web
+Name[ja]=LibreWolf ウェブ・ブラウザ
+Name[ko]=LibreWolf 웹 브ë¼ìš°ì €
+Name[ku]=Geroka torê LibreWolf
+Name[lt]=LibreWolf interneto naršyklė
+Name[nb]=LibreWolf Nettleser
+Name[nl]=LibreWolf webbrowser
+Name[nn]=LibreWolf Nettlesar
+Name[no]=LibreWolf Nettleser
+Name[pl]=PrzeglÄ…darka WWW LibreWolf
+Name[pt]=LibreWolf Navegador Web
+Name[pt_BR]=Navegador Web LibreWolf
+Name[ro]=LibreWolf – Navigator Internet
+Name[ru]=Веб-браузер LibreWolf
+Name[sk]=LibreWolf - internetový prehliadaÄ
+Name[sl]=LibreWolf spletni brskalnik
+Name[sv]=LibreWolf webbläsare
+Name[tr]=LibreWolf Web Tarayıcısı
+Name[ug]=LibreWolf توركۆرگۈ
+Name[uk]=Веб-браузер LibreWolf
+Name[vi]=Trình duyệt web LibreWolf
+Name[zh_CN]=LibreWolf 网络æµè§ˆå™¨
+Name[zh_TW]=LibreWolf 網路ç€è¦½å™¨
+Comment=Browse the World Wide Web
+Comment[ar]=تصÙØ­ الشبكة العنكبوتية العالمية
+Comment[ast]=Restola pela Rede
+Comment[bn]=ইনà§à¦Ÿà¦¾à¦°à¦¨à§‡à¦Ÿ বà§à¦°à¦¾à¦‰à¦œ করà§à¦¨
+Comment[ca]=Navegueu per la 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]=Äể duyệt các trang web
+Comment[zh_CN]=æµè§ˆäº’è”网
+Comment[zh_TW]=ç€è¦½ç¶²éš›ç¶²è·¯
+GenericName=Web Browser
+GenericName[ar]=متصÙØ­ ويب
+GenericName[ast]=Restolador Web
+GenericName[bn]=ওয়েব বà§à¦°à¦¾à¦‰à¦œà¦¾à¦°
+GenericName[ca]=Navegador web
+GenericName[cs]=Webový prohlížeÄ
+GenericName[da]=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 duyệt Web
+GenericName[zh_CN]=网络æµè§ˆå™¨
+GenericName[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;Διαδίκτυο;ΠεÏιηγητής;LibreWolf;ΦιÏεφοχ;ΙντεÏνετ
+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 duyệt;Trang web
+Keywords[zh_CN]=Internet;WWW;Browser;Web;Explorer;网页;æµè§ˆ;上网;ç«ç‹;LibreWolf;ff;互è”网;网站;
+Keywords[zh_TW]=Internet;WWW;Browser;Web;Explorer;網際網路;網路;ç€è¦½å™¨;上網;網é ;ç«ç‹
+Exec=librewolf %u
+Icon=librewolf
+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=LibreWolf
+Categories=Network;WebBrowser;
+Actions=new-window;new-private-window;profile-manager-window;
+
+[Desktop Action new-window]
+Name=Open a 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]=Cửa sổ mới
+Name[wo]=Palanteer bu bees
+Name[xh]=Ifestile entsha
+Name[zh_CN]=新建窗å£
+Name[zh_TW]=開新視窗
+Exec=librewolf --new-window %u
+
+[Desktop Action new-private-window]
+Name=Open a 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]=Cửa sổ riêng tư mới
+Name[wo]=Panlanteeru biir bu bees
+Name[xh]=Ifestile yangasese entsha
+Name[zh_CN]=新建éšç§æµè§ˆçª—å£
+Name[zh_TW]=新增隱ç§è¦–窗
+Exec=librewolf --private-window %u
+
+[Desktop Action profile-manager-window]
+Name=Open the Profile Manager
+Name[cs]=Správa profilů
+Name[de]=Profilverwaltung öffnen
+Name[es]=Abrir el Gestor de Perfiles
+Name[fr]=Ouvrir le gestionnaire de profils
+Exec=librewolf --ProfileManager %u
diff --git a/testing/librewolf/no-ccache-stats.patch b/testing/librewolf/no-ccache-stats.patch
new file mode 100644
index 00000000000..4d557a01504
--- /dev/null
+++ b/testing/librewolf/no-ccache-stats.patch
@@ -0,0 +1,13 @@
+prevents a call to ccache
+diff --git a/python/mozbuild/mozbuild/controller/building.py b/python/mozbuild/mozbuild/controller/building.py
+index bf7009a..011c012 100644
+--- a/python/mozbuild/mozbuild/controller/building.py
++++ b/python/mozbuild/mozbuild/controller/building.py
+@@ -570,6 +570,7 @@ class BuildMonitor(MozbuildObject):
+ )
+
+ def ccache_stats(self, ccache=None):
++ return None
+ ccache_stats = None
+
+ if ccache is None:
diff --git a/testing/librewolf/ppc-musttail.patch b/testing/librewolf/ppc-musttail.patch
new file mode 100644
index 00000000000..ebe06c0ebe8
--- /dev/null
+++ b/testing/librewolf/ppc-musttail.patch
@@ -0,0 +1,30 @@
+Patch-Source: https://github.com/chimera-linux/cports/blob/506127954653ccebf9b82df1452cce4ed0dae3b1/contrib/thunderbird/patches/ppc-musttail.patch
+--
+commit 5e66655e1456c9d26637ceaed3f4533b537322c4
+Author: Daniel Kolesa <daniel@octaforge.org>
+Date: Sat May 13 23:00:04 2023 +0200
+
+ disable musttail on ppc
+
+ 41:38.04 LLVM ERROR: failed to perform tail call elimination on a call site marked musttail
+ 41:38.04 PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
+ 41:38.04 Stack dump:
+ 41:38.04 0. Running pass 'Function Pass Manager' on module '/builddir/thunderbird-114.0_beta1/obj-powerpc64le-unknown-linux-musl/toolkit/library/build/../../../gfx/skia/SkOpts.o'.
+ 41:38.04 1. Running pass 'PowerPC DAG->DAG Pattern Instruction Selection' on function '@_ZN8portableL15init_lane_masksEPNS_6ParamsEP21SkRasterPipelineStageffff'
+ 41:38.95 clang-16: error: unable to execute command: Aborted
+
+ To be investigated later.
+
+diff --git a/gfx/skia/skia/src/core/SkRasterPipeline.h b/gfx/skia/skia/src/core/SkRasterPipeline.h
+index 766bb0c..88c6cb2 100644
+--- a/gfx/skia/skia/src/core/SkRasterPipeline.h
++++ b/gfx/skia/skia/src/core/SkRasterPipeline.h
+@@ -24,7 +24,7 @@ enum SkColorType : int;
+ struct SkImageInfo;
+ struct skcms_TransferFunction;
+
+-#if __has_cpp_attribute(clang::musttail) && !defined(__EMSCRIPTEN__) && !defined(SK_CPU_ARM32)
++#if __has_cpp_attribute(clang::musttail) && !defined(__EMSCRIPTEN__) && !defined(SK_CPU_ARM32) && !defined(__powerpc__)
+ #define SK_HAS_MUSTTAIL 1
+ #else
+ #define SK_HAS_MUSTTAIL 0
diff --git a/testing/librewolf/python-deps.patch b/testing/librewolf/python-deps.patch
new file mode 100644
index 00000000000..7884095f02a
--- /dev/null
+++ b/testing/librewolf/python-deps.patch
@@ -0,0 +1,10 @@
+diff --git a/python/sites/mach.txt b/python/sites/mach.txt
+index 8945d44..8746f70 100644
+--- a/python/sites/mach.txt
++++ b/python/sites/mach.txt
+@@ -98,3 +98,3 @@ pypi-optional:glean-sdk==55.0.0:telemetry will not be collected
+ # support down to the oldest locally-installed version (5.4.2).
+-pypi-optional:psutil>=5.4.2,<=5.9.4:telemetry will be missing some data
+-pypi-optional:zstandard>=0.11.1,<=0.22.0:zstd archives will not be possible to extract
++pypi-optional:psutil>=5.4.2,<=5.10.0:telemetry will be missing some data
++pypi-optional:zstandard>=0.11.1,<=0.24.0:zstd archives will not be possible to extract
diff --git a/testing/librewolf/res_nquery.patch b/testing/librewolf/res_nquery.patch
new file mode 100644
index 00000000000..1b6474a926d
--- /dev/null
+++ b/testing/librewolf/res_nquery.patch
@@ -0,0 +1,17 @@
+musl doesn't have res_nquery - fall back to res_query
+--- a/netwerk/dns/PlatformDNSUnix.cpp
++++ b/netwerk/dns/PlatformDNSUnix.cpp
+@@ -32,11 +32,11 @@
+ rv = packet.FillBuffer(
+ [&](unsigned char response[DNSPacket::MAX_SIZE]) -> int {
+ int len = 0;
+-#if defined(XP_LINUX)
++#if defined(__GLIBC__)
+ len = res_nquery(&_res, host.get(), ns_c_in,
+ nsIDNSService::RESOLVE_TYPE_HTTPSSVC, response,
+ DNSPacket::MAX_SIZE);
+-#elif defined(XP_MACOSX)
++#elif defined(XP_LINUX) || defined(XP_MACOSX)
+ len =
+ res_query(host.get(), ns_c_in, nsIDNSService::RESOLVE_TYPE_HTTPSSVC,
+ response, DNSPacket::MAX_SIZE);
diff --git a/testing/librewolf/riscv64-no-lto.patch b/testing/librewolf/riscv64-no-lto.patch
new file mode 100644
index 00000000000..90c9b5def1a
--- /dev/null
+++ b/testing/librewolf/riscv64-no-lto.patch
@@ -0,0 +1,16 @@
+--- a/config/makefiles/rust.mk
++++ b/config/makefiles/rust.mk
+@@ -91,11 +91,13 @@
+ ifndef rustflags_sancov
+ # Never enable when coverage is enabled to work around https://github.com/rust-lang/rust/issues/90045.
+ ifndef MOZ_CODE_COVERAGE
++ifeq (,$(findstring riscv64,$(RUST_TARGET)))
+ ifeq (,$(findstring gkrust_gtest,$(RUST_LIBRARY_FILE)))
+ cargo_rustc_flags += -Clto=thin
+ endif
+ # We need -Cembed-bitcode=yes for all crates when using -Clto.
+ RUSTFLAGS += -Cembed-bitcode=yes
++endif
+ endif
+ endif
+ endif
diff --git a/testing/librewolf/rust-lto-thin.patch b/testing/librewolf/rust-lto-thin.patch
new file mode 100644
index 00000000000..788fceab39f
--- /dev/null
+++ b/testing/librewolf/rust-lto-thin.patch
@@ -0,0 +1,12 @@
+set rust crate lto to thin to not use fatlto for gkrust which fails sometimes
+--- a/config/makefiles/rust.mk
++++ b/config/makefiles/rust.mk
+@@ -92,7 +92,7 @@
+ # Never enable when coverage is enabled to work around https://github.com/rust-lang/rust/issues/90045.
+ ifndef MOZ_CODE_COVERAGE
+ ifeq (,$(findstring gkrust_gtest,$(RUST_LIBRARY_FILE)))
+-cargo_rustc_flags += -Clto$(if $(filter full,$(MOZ_LTO_RUST_CROSS)),=fat)
++cargo_rustc_flags += -Clto=thin
+ endif
+ # We need -Cembed-bitcode=yes for all crates when using -Clto.
+ RUSTFLAGS += -Cembed-bitcode=yes
diff --git a/testing/librewolf/sandbox-fork.patch b/testing/librewolf/sandbox-fork.patch
new file mode 100644
index 00000000000..c7222ab494d
--- /dev/null
+++ b/testing/librewolf/sandbox-fork.patch
@@ -0,0 +1,15 @@
+make SYS_fork non-fatal, musl uses it for fork(2)
+
+--- a/security/sandbox/linux/SandboxFilter.cpp
++++ b/security/sandbox/linux/SandboxFilter.cpp
+@@ -1253,6 +1253,10 @@
+ // usually do something reasonable on error.
+ case __NR_clone:
+ return ClonePolicy(Error(EPERM));
++#ifdef __NR_fork
++ case __NR_fork:
++ return Error(ENOSYS);
++#endif
+
+ # ifdef __NR_fadvise64
+ case __NR_fadvise64:
diff --git a/testing/librewolf/sandbox-largefile.patch b/testing/librewolf/sandbox-largefile.patch
new file mode 100644
index 00000000000..f1cf28b51b9
--- /dev/null
+++ b/testing/librewolf/sandbox-largefile.patch
@@ -0,0 +1,17 @@
+--- a/security/sandbox/linux/SandboxFilter.cpp 2020-11-23 22:41:14.556378950 +0100
++++ b/security/sandbox/linux/SandboxFilter.cpp 2020-11-23 22:40:23.595806444 +0100
+@@ -68,7 +68,13 @@
+
+ // The headers define O_LARGEFILE as 0 on x86_64, but we need the
+ // actual value because it shows up in file flags.
+-#define O_LARGEFILE_REAL 00100000
++#if defined(__x86_64__) || defined(__i386__) || defined(__mips__)
++#define O_LARGEFILE_REAL 0100000
++#elif defined(__powerpc__)
++#define O_LARGEFILE_REAL 0200000
++#else
++#define O_LARGEFILE_REAL O_LARGEFILE
++#endif
+
+ // Not part of UAPI, but userspace sees it in F_GETFL; see bug 1650751.
+ #define FMODE_NONOTIFY 0x4000000
diff --git a/testing/librewolf/sandbox-sched_setscheduler.patch b/testing/librewolf/sandbox-sched_setscheduler.patch
new file mode 100644
index 00000000000..ffdf12678bc
--- /dev/null
+++ b/testing/librewolf/sandbox-sched_setscheduler.patch
@@ -0,0 +1,24 @@
+upstream bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1657849
+diff --git a/security/sandbox/linux/SandboxFilter.cpp b/security/sandbox/linux/SandboxFilter.cpp
+index ed958bc..9824433 100644
+--- a/security/sandbox/linux/SandboxFilter.cpp
++++ b/security/sandbox/linux/SandboxFilter.cpp
+@@ -1751,6 +1751,6 @@ class GMPSandboxPolicy : public SandboxPolicyCommon {
+ case __NR_sched_get_priority_max:
++ case __NR_sched_setscheduler:
+ return Allow();
+ case __NR_sched_getparam:
+- case __NR_sched_getscheduler:
+- case __NR_sched_setscheduler: {
++ case __NR_sched_getscheduler: {
+ Arg<pid_t> pid(0);
+@@ -1926,3 +1926,2 @@ class RDDSandboxPolicy final : public SandboxPolicyCommon {
+ case __NR_sched_getscheduler:
+- case __NR_sched_setscheduler:
+ case __NR_sched_getattr:
+@@ -1932,2 +1931,5 @@ class RDDSandboxPolicy final : public SandboxPolicyCommon {
+ }
++ // sched_setscheduler gets special treatment here (bug 1657849):
++ case __NR_sched_setscheduler:
++ return Allow();
+
diff --git a/testing/librewolf/sqlite-ppc.patch b/testing/librewolf/sqlite-ppc.patch
new file mode 100644
index 00000000000..30d80281f71
--- /dev/null
+++ b/testing/librewolf/sqlite-ppc.patch
@@ -0,0 +1,39 @@
+Patch-Source: https://github.com/chimera-linux/cports/blob/0b7b1b1/contrib/firefox/patches/sqlite-ppc.patch
+From 67157b1aa7da0a146b7d2d5abb9237eea1f434ec Mon Sep 17 00:00:00 2001
+From: Daniel Kolesa <daniel@octaforge.org>
+Date: Fri, 23 Sep 2022 02:38:29 +0200
+Subject: [PATCH] fix sqlite3 on ppc with clang
+
+The __ppc__ macro is always defined on clang but not gcc, which
+results in sqlite mistakenly thinking that ppc64le with clang
+is big endian.
+
+Also disable some inline assembly stuff on ppc that is never used
+with gcc and probably was never tested with modern machines.
+
+rebased 2024-01-24 by @ptrcnull:
+upstream removed the __ppc__ check,
+adding a __LITTLE_ENDIAN__ check to match what they do
+---
+ third_party/sqlite3/src/sqlite3.c | 10 +++++-----
+ 1 file changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/third_party/sqlite3/src/sqlite3.c b/third_party/sqlite3/src/sqlite3.c
+index 9443127..8593d8a 100644
+--- a/third_party/sqlite3/src/sqlite3.c
++++ b/third_party/sqlite3/src/sqlite3.c
+@@ -14874,2 +14874,4 @@ typedef INT16_TYPE LogEst;
+ # define SQLITE_BYTEORDER 4321
++# elif defined(__LITTLE_ENDIAN__) && __LITTLE_ENDIAN__==1
++# define SQLITE_BYTEORDER 1234
+ # elif defined(i386) || defined(__i386__) || defined(_M_IX86) || \
+@@ -36340,3 +36342,3 @@ SQLITE_PRIVATE int sqlite3VListNameToNum(VList *pIn, const char *zName, int nNam
+
+-#elif !defined(__STRICT_ANSI__) && (defined(__GNUC__) && defined(__ppc__))
++#elif 0
+
+@@ -207002,2 +207004,4 @@ struct RtreeMatchArg {
+ # define SQLITE_BYTEORDER 4321
++# elif defined(__LITTLE_ENDIAN__) && __LITTLE_ENDIAN__==1
++# define SQLITE_BYTEORDER 1234
+ # elif defined(i386) || defined(__i386__) || defined(_M_IX86) || \
diff --git a/testing/librewolf/vendor-prefs.js b/testing/librewolf/vendor-prefs.js
new file mode 100644
index 00000000000..115617e0f17
--- /dev/null
+++ b/testing/librewolf/vendor-prefs.js
@@ -0,0 +1,9 @@
+// Use LANG environment variable to choose locale
+pref("intl.locale.requested", "");
+
+// Use system-provided dictionaries
+pref("spellchecker.dictionary_path", "/usr/share/hunspell");
+
+// Don't disable our bundled extensions in the application directory
+pref("extensions.autoDisableScopes", 11);
+pref("extensions.shownSelectionUI", true);
diff --git a/testing/librime/APKBUILD b/testing/librime/APKBUILD
deleted file mode 100644
index d8d6c96c78d..00000000000
--- a/testing/librime/APKBUILD
+++ /dev/null
@@ -1,71 +0,0 @@
-# Contributor: Alex Yam <alex@alexyam.com>
-# Maintainer: Alex Yam <alex@alexyam.com>
-pkgname=librime
-pkgver=1.7.2_git20220126
-_gitrev=be0ea833456bba4319103915c1a819d3fa885728
-pkgrel=3
-pkgdesc="Rime input method engine"
-url="https://github.com/rime/librime"
-arch="all"
-license="BSD-3-Clause"
-makedepends="
- boost-dev
- capnproto-dev
- cmake
- leveldb-dev
- libmarisa-dev
- opencc-dev
- yaml-cpp-dev
- "
-checkdepends="gtest-dev"
-subpackages="$pkgname-dev"
-source="$pkgname-$_gitrev.tar.gz::https://github.com/rime/librime/archive/$_gitrev.tar.gz"
-builddir="$srcdir"/$pkgname-$_gitrev
-
-if [ "$CARCH" = riscv64 ]; then
- # no glog on riscv64, disable logging (enabled by default)
- riscv64_logging_off="-DENABLE_LOGGING=OFF"
-else
- makedepends="$makedepends glog-dev"
- riscv64_logging_off="-DENABLE_LOGGING=ON"
-fi
-
-build() {
- cmake -B build \
- -DCMAKE_BUILD_TYPE=MinSizeRel \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_FULL_DATADIR=/usr/share \
- -DCMAKE_INSTALL_FULL_LIBDIR=/usr/lib \
- -DBOOST_USE_CXX11=ON \
- -DBOOST_USE_SIGNALS2=ON \
- -DBUILD_DATA=ON \
- -DBUILD_MERGED_PLUGINS=OFF \
- -DBUILD_SAMPLE=OFF \
- -DBUILD_SEPARATE_LIBS=OFF \
- -DBUILD_SHARED_LIBS=ON \
- -DBUILD_STATIC=OFF \
- -DBUILD_TEST=$(want_check && echo ON || echo OFF) \
- -DENABLE_ASAN=OFF \
- -DENABLE_EXTERNAL_PLUGINS=ON \
- -DINSTALL_PRIVATE_HEADERS=ON \
- $riscv64_logging_off
- cmake --build build
-}
-
-check() {
- cd build && ctest --output-on-failure
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
- cd "$pkgdir"
- # move rime/RimeConfig.cmake from /usr/share/cmake to /usr/lib/cmake
- mv -v usr/share/cmake usr/lib/cmake
- # create missing default paths for other ime packages to find rime data
- # (e.g. ibus-rime uses -DRIME_DATA_DIR="/usr/share/rime-data")
- mkdir -v usr/share/rime-data usr/lib/rime-plugins
-}
-
-sha512sums="
-11b521991071679ac5a107daad2607e2494259bfd9cbb037a8526ffe8d4f81f3bdaeaa64598751b5994a6d6f1844df2016d95e8b848131a57f950ea50bcdeec9 librime-be0ea833456bba4319103915c1a819d3fa885728.tar.gz
-"
diff --git a/testing/libsemanage/APKBUILD b/testing/libsemanage/APKBUILD
index 69637fa86dd..ff7eebce555 100644
--- a/testing/libsemanage/APKBUILD
+++ b/testing/libsemanage/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Tycho Andersen <tycho@docker.com>
# Maintainer: Tycho Andersen <tycho@docker.com>
pkgname=libsemanage
-pkgver=2.8
-pkgrel=1
+pkgver=3.6
+pkgrel=0
pkgdesc="SELinux binary policy manipulation library"
url="https://github.com/SELinuxProject/selinux/wiki"
arch="all"
@@ -18,7 +18,7 @@ makedepends="
python3
"
subpackages="$pkgname-dev $pkgname-doc"
-source="https://raw.githubusercontent.com/wiki/SELinuxProject/selinux/files/releases/20180524/libsemanage-$pkgver.tar.gz"
+source="https://github.com/SELinuxProject/selinux/releases/download/$pkgver/libsemanage-$pkgver.tar.gz"
build() {
make PYTHON=python3
@@ -29,5 +29,5 @@ package() {
}
sha512sums="
-53f09c79da168a79b853f55e0f1c20a96229df9d82929c514bcaf72697446ae836f7f0457fc0056d2418cc6d0712157faf0152881518fe84a1b1b9b9af17e7ef libsemanage-2.8.tar.gz
+8998b6a1b254a9673b99ae4d70a1edc769bb728a44f573cdf62e0a9c9392b77644ee2d70e1936a2f8a9a7f8b063ce98a981f4b8b7060f5b82791889330d69364 libsemanage-3.6.tar.gz
"
diff --git a/testing/libsemigroups/APKBUILD b/testing/libsemigroups/APKBUILD
new file mode 100644
index 00000000000..66b2ad77b2f
--- /dev/null
+++ b/testing/libsemigroups/APKBUILD
@@ -0,0 +1,39 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
+pkgname=libsemigroups
+pkgver=2.7.3
+pkgrel=0
+pkgdesc="Library for computing semigroups and monoids"
+url="https://github.com/libsemigroups/libsemigroups"
+arch="all"
+license="GPL-3.0-or-later"
+makedepends="eigen-dev fmt-dev"
+subpackages="$pkgname-static $pkgname-dev"
+source="https://github.com/libsemigroups/libsemigroups/releases/download/v$pkgver/libsemigroups-$pkgver.tar.gz"
+
+build() {
+ export CXXFLAGS="${CXXFLAGS/-Os/-O3}" # gotta go fast
+
+ ./configure \
+ --target="$CTARGET" \
+ --build="$CBUILD" \
+ --host="$CHOST" \
+ --prefix=/usr \
+ --enable-eigen \
+ --enable-fmt \
+ --with-external-eigen \
+ --with-external-fmt
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+001cfdfc55ee9a0bb3fe0914229905083e8eaaec682952bb23b2dc44680631909478bf32e67e93488a7347bfb674305b0cc3b713afa9bce1997a0b1a5693ad36 libsemigroups-2.7.3.tar.gz
+"
diff --git a/testing/libsigrok/APKBUILD b/testing/libsigrok/APKBUILD
index 7c04e630e35..c18812d67a4 100644
--- a/testing/libsigrok/APKBUILD
+++ b/testing/libsigrok/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
pkgname=libsigrok
pkgver=0.5.2
-pkgrel=1
+pkgrel=2
pkgdesc="A C library providing access to logic analyzers and related file formats"
url="https://sigrok.org/wiki/Libsigrok"
makedepends="libzip-dev glib-dev libserialport-dev libusb-dev libftdi1-dev
diff --git a/testing/libsigrokdecode/APKBUILD b/testing/libsigrokdecode/APKBUILD
index f64dbace646..510667ec565 100644
--- a/testing/libsigrokdecode/APKBUILD
+++ b/testing/libsigrokdecode/APKBUILD
@@ -1,8 +1,8 @@
# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
-pkgname="libsigrokdecode"
+pkgname=libsigrokdecode
pkgver=0.5.3
-pkgrel=2
+pkgrel=4
pkgdesc="A C library to decode protocol data captured by logic analyzers"
url="https://sigrok.org/wiki/Libsigrokdecode"
makedepends="glib-dev libserialport-dev libzip-dev libusb-dev libftdi1-dev
@@ -12,7 +12,7 @@ arch="all"
license="GPL-3.0-only"
source="http://sigrok.org/download/source/libsigrokdecode/libsigrokdecode-$pkgver.tar.gz
version.patch
- python-3.10.patch
+ python-3.12.patch
"
subpackages="$pkgname-dev"
@@ -37,5 +37,5 @@ package() {
sha512sums="
23393504b68135ed4ae8e8a654df024620af02e84fa3955956c61899388812229108155b4ae8d946e61f33dc8a8807db090d608350548a7a717d966442b07b9e libsigrokdecode-0.5.3.tar.gz
6d8fa69a891b4333fe77213cf75df218090e58b51d6c92197351d95a977634f2228a63c9c0c75fcb1d816c59ee9eaf410d5e79827ac7c79b0784262ea0f9c3fd version.patch
-6c9533cf9afa51167cee5eb0522e69a5854a77b9018babbf8999c7a64fffcbbb71dd6c636e69167745d8ebad41076e3f98fb2f710e7684517dd5431eadb6b0f3 python-3.10.patch
+22227cafc70d493cba413956861d6f6a43ad071a27f07bf328a4c811c6b78d5241dd31ce461bc086b684d4a2057cd35db305750e8030ee0e2b30512668b5d5bd python-3.12.patch
"
diff --git a/testing/libsigrokdecode/python-3.10.patch b/testing/libsigrokdecode/python-3.10.patch
deleted file mode 100644
index beec673c4c9..00000000000
--- a/testing/libsigrokdecode/python-3.10.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 9b0ad5177bd692f7556a4756bdbd2da81d9c34ce Mon Sep 17 00:00:00 2001
-From: =?utf8?q?Dan=20Hor=C3=A1k?= <dan@danny.cz>
-Date: Tue, 4 Aug 2020 09:19:44 +0200
-Subject: [PATCH] configure.ac: Add support for Python 3.9.
-
----
- configure.ac | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/configure.ac b/configure.ac
-index f9958b3..2917cb3 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -100,7 +100,7 @@ SR_PKG_CHECK_SUMMARY([srd_pkglibs_summary])
- # first, since usually only that variant will add "-lpython3.8".
- # https://docs.python.org/3/whatsnew/3.8.html#debug-build-uses-the-same-abi-as-release-build
- SR_PKG_CHECK([python3], [SRD_PKGLIBS],
-- [python-3.8-embed], [python-3.8 >= 3.8], [python-3.7 >= 3.7], [python-3.6 >= 3.6], [python-3.5 >= 3.5], [python-3.4 >= 3.4], [python-3.3 >= 3.3], [python-3.2 >= 3.2], [python3 >= 3.2])
-+ [python-3.10-embed], [python-3.8-embed], [python-3.8 >= 3.8], [python-3.7 >= 3.7], [python-3.6 >= 3.6], [python-3.5 >= 3.5], [python-3.4 >= 3.4], [python-3.3 >= 3.3], [python-3.2 >= 3.2], [python3 >= 3.2])
- AS_IF([test "x$sr_have_python3" = xno],
- [AC_MSG_ERROR([Cannot find Python 3 development headers.])])
-
---
-2.24.0.rc2
-
diff --git a/testing/libsigrokdecode/python-3.12.patch b/testing/libsigrokdecode/python-3.12.patch
new file mode 100644
index 00000000000..c854edd5227
--- /dev/null
+++ b/testing/libsigrokdecode/python-3.12.patch
@@ -0,0 +1,25 @@
+From 9b0ad5177bd692f7556a4756bdbd2da81d9c34ce Mon Sep 17 00:00:00 2001
+From: =?utf8?q?Dan=20Hor=C3=A1k?= <dan@danny.cz>
+Date: Tue, 4 Aug 2020 09:19:44 +0200
+Subject: [PATCH] configure.ac: Add support for Python 3.9.
+
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index f9958b3..2917cb3 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -100,7 +100,7 @@ SR_PKG_CHECK_SUMMARY([srd_pkglibs_summary])
+ # first, since usually only that variant will add "-lpython3.8".
+ # https://docs.python.org/3/whatsnew/3.8.html#debug-build-uses-the-same-abi-as-release-build
+ SR_PKG_CHECK([python3], [SRD_PKGLIBS],
+- [python-3.8-embed], [python-3.8 >= 3.8], [python-3.7 >= 3.7], [python-3.6 >= 3.6], [python-3.5 >= 3.5], [python-3.4 >= 3.4], [python-3.3 >= 3.3], [python-3.2 >= 3.2], [python3 >= 3.2])
++ [python-3.12-embed], [python-3.11-embed], [python-3.8-embed], [python-3.8 >= 3.8], [python-3.7 >= 3.7], [python-3.6 >= 3.6], [python-3.5 >= 3.5], [python-3.4 >= 3.4], [python-3.3 >= 3.3], [python-3.2 >= 3.2], [python3 >= 3.2])
+ AS_IF([test "x$sr_have_python3" = xno],
+ [AC_MSG_ERROR([Cannot find Python 3 development headers.])])
+
+--
+2.24.0.rc2
+
diff --git a/testing/libsirocco/APKBUILD b/testing/libsirocco/APKBUILD
new file mode 100644
index 00000000000..da9ddabc813
--- /dev/null
+++ b/testing/libsirocco/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
+pkgname=libsirocco
+pkgver=2.1.0
+pkgrel=2
+pkgdesc="Library for computing homotopy continuation of roots"
+url="https://github.com/miguelmarco/SIROCCO2"
+arch="all"
+license="GPL-3.0-or-later"
+makedepends="gmp-dev mpfr-dev"
+subpackages="$pkgname-dev"
+source="https://github.com/miguelmarco/SIROCCO2/releases/download/$pkgver/libsirocco-$pkgver.tar.gz"
+
+build() {
+ export CFLAGS="${CFLAGS/-Os/-O3}" # gotta go fast
+
+ ./configure \
+ --target="$CTARGET" \
+ --build="$CBUILD" \
+ --host="$CHOST" \
+ --prefix=/usr \
+ --disable-static
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+1afd32efbe81b44a02b9ca41345bb4c70ec7d936d878aac2d6cdf7587d753cb26026ea36bfe43f2963afdb221544e594b58bf32a5b70b54ce619e59594a8535f libsirocco-2.1.0.tar.gz
+"
diff --git a/testing/libsixel/APKBUILD b/testing/libsixel/APKBUILD
deleted file mode 100644
index 3fe145f211d..00000000000
--- a/testing/libsixel/APKBUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-# Contributor: Maxim Karasev <begs@disroot.org>
-# Contributor: Dmitry Kruchko <corg@disroot.org>
-# Maintainer: Maxim Karasev <begs@disroot.org>
-pkgname=libsixel
-_commit=bc93c8ce570b35b8f3bb429ea5892ac260e4c8b1
-pkgver=1.10.3_git20211017
-pkgrel=1
-pkgdesc="SIXEL encoder/decoder implementation"
-url="https://github.com/libsixel/libsixel"
-arch="all"
-license="MIT"
-makedepends="meson libpng-dev libjpeg-turbo-dev zlib-dev libtool"
-subpackages="
- $pkgname-dev
- $pkgname-doc
- $pkgname-bash-completion
- $pkgname-zsh-completion
- "
-source="https://github.com/libsixel/libsixel/archive/$_commit.tar.gz"
-builddir="$srcdir/libsixel-$_commit"
-
-build() {
- abuild-meson . output
- meson compile -C output
-}
-
-package() {
- DESTDIR="$pkgdir" meson install --no-rebuild -C output
-}
-
-sha512sums="
-d7ea52073a9e3015922f44f887d7f6f693d9271b2e2c8ab88823adb31b1591282b6e65343d26820fe6d4c049143fde6871a2c818c8aefc6b621616e05ac92826 bc93c8ce570b35b8f3bb429ea5892ac260e4c8b1.tar.gz
-"
diff --git a/testing/libsmi/APKBUILD b/testing/libsmi/APKBUILD
deleted file mode 100644
index 61c639fb3e9..00000000000
--- a/testing/libsmi/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Contributor: Mikolaj Chwalisz <chwalisz@tkn.tu-berlin.de>
-# Maintainer: Mikolaj Chwalisz <chwalisz@tkn.tu-berlin.de>
-pkgname=libsmi
-pkgver=0.5.0
-pkgrel=1
-pkgdesc="Library to access SMI management information"
-url="https://www.ibr.cs.tu-bs.de/projects/libsmi/"
-arch="all"
-license="BSD-3-Clause AND MIT"
-makedepends="$depends_dev"
-subpackages="$pkgname-dev $pkgname-doc"
-source="https://www.ibr.cs.tu-bs.de/projects/libsmi/download/libsmi-$pkgver.tar.gz"
-
-prepare() {
- default_prepare
- update_config_sub
-}
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var \
- --libexecdir=/usr/lib
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="be82e6b7054426e4634ac9d90467b89a51a9c836273c9d516f07ff3cec3a8dcc8b3bb0e0396d5facec3d9c952b17fb67f24ff2d3959e7e5cf9eced72023a0708 libsmi-0.5.0.tar.gz"
diff --git a/testing/libsoundio/APKBUILD b/testing/libsoundio/APKBUILD
deleted file mode 100644
index b22ed2e1a3e..00000000000
--- a/testing/libsoundio/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Maintainer: Mark Jynx <markjynx@cock.li>
-pkgname="libsoundio"
-pkgver="2.0.0"
-pkgrel=1
-pkgdesc="C library for cross-platform real-time audio input and output"
-url="http://libsound.io"
-arch="all"
-options="!check" # Tests are not automated
-license="MIT"
-depends_dev="alsa-lib-dev"
-makedepends="cmake $depends_dev"
-subpackages="$pkgname-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/andrewrk/libsoundio/archive/$pkgver.tar.gz"
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake \
- -DCMAKE_BUILD_TYPE=None \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_STATIC_LIBS=OFF \
- -DBUILD_EXAMPLE_PROGRAMS=OFF \
- -DCMAKE_CXX_FLAGS="$CXXFLAGS" \
- -DCMAKE_C_FLAGS="$CFLAGS" \
- ${CMAKE_CROSSOPTS} .
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="347a9be1789a41e778ea8d0efa1d00e03e725a4ab65e3aaf6c71e49138643f08a50a81bd60087d86a3b4d63beaeec617e47ba6b81f829ece8a3ac17418eb5309 libsoundio-2.0.0.tar.gz"
diff --git a/testing/libspatialindex/APKBUILD b/testing/libspatialindex/APKBUILD
index d60bed334b9..1de655215db 100755..100644
--- a/testing/libspatialindex/APKBUILD
+++ b/testing/libspatialindex/APKBUILD
@@ -3,7 +3,7 @@
pkgname=libspatialindex
pkgver=0_git20210205
_commit=8ee223632f95c81f49f5eb2d547ad973475c4601
-pkgrel=0
+pkgrel=1
pkgdesc="extensible framework for robust spatial indexing methods"
url="https://libspatialindex.org/"
arch="all"
@@ -15,7 +15,7 @@ builddir="$srcdir/$pkgname-$_commit"
build() {
cmake -B build \
- -DCMAKE_BUILD_TYPE=None \
+ -DCMAKE_BUILD_TYPE=MinSizeRel \
-DCMAKE_PREFIX_PATH=/usr \
-DCMAKE_INSTALL_PREFIX=/usr \
-DBUILD_TESTING=ON
diff --git a/testing/libspiro/APKBUILD b/testing/libspiro/APKBUILD
deleted file mode 100644
index 9c91214a399..00000000000
--- a/testing/libspiro/APKBUILD
+++ /dev/null
@@ -1,38 +0,0 @@
-# Contributor: Ed Robinson <ed@reevoo.com>
-# Maintainer: Ed Robinson <ed@reevoo.com>
-pkgname=libspiro
-pkgver=20200505
-pkgrel=0
-pkgdesc="Spiro is the creation of Raph Levien. It simplifies the drawing of beautiful curves."
-url="https://github.com/fontforge/libspiro"
-arch="all"
-license="GPL-3.0-or-later"
-subpackages="$pkgname-dev $pkgname-doc"
-source="https://github.com/fontforge/libspiro/releases/download/$pkgver/libspiro-dist-$pkgver.tar.gz"
-
-# secfixes:
-# 20200505-r0:
-# - CVE-2019-19847
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --infodir=/usr/share/info \
- --localstatedir=/var \
- --disable-static
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="84627e8925bd6090cd7d234a0b5f3ee109d3341d24c038a0fb1ce4c09ab97fe8fc7eb92bc5df040d559c5ebe3b4fc8f51652a2538e155be9b2f3c78b96b706ee libspiro-dist-20200505.tar.gz"
diff --git a/testing/libspnav/APKBUILD b/testing/libspnav/APKBUILD
deleted file mode 100644
index 4143c9f05a6..00000000000
--- a/testing/libspnav/APKBUILD
+++ /dev/null
@@ -1,44 +0,0 @@
-# Contributor: guddaff <guddaff@protonmail.com>
-# Maintainer: guddaff <guddaff@protonmail.com>
-pkgname=libspnav
-pkgver=1.0
-pkgrel=1
-pkgdesc="library for communicating with spacenavd or 3dxsrv"
-url="http://spacenav.sourceforge.net/"
-arch="all"
-license="BSD-3-Clause"
-options="!check" #no checks
-makedepends="libx11-dev"
-subpackages="$pkgname-static $pkgname-dev"
-source="https://github.com/FreeSpacenav/libspnav/releases/download/v$pkgver/libspnav-$pkgver.tar.gz
- configure.patch
- "
-
-prepare() {
- default_prepare
- sed -i "s/@PKGVERSION@/$pkgver/" "$builddir"/configure
-}
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-ae36ea51dbca7d5ba31d82ffaa46bad2bd877f5f7c077d2e711747427f6d60a000ab0c827ae6523ba6a275dbad205eea8c20520fe2575a6fa6b554ea8b5e0eaa libspnav-1.0.tar.gz
-1536a172843459c1f26806ad774194afddf93baca0421d0803337eb90b6dd4bcc9dc9b6ebcb1a4e7de0c6f52b16da51538d302a07d57f0625a3a3311a14327f9 configure.patch
-"
diff --git a/testing/libspnav/configure.patch b/testing/libspnav/configure.patch
deleted file mode 100644
index 5cc2fbb1630..00000000000
--- a/testing/libspnav/configure.patch
+++ /dev/null
@@ -1,22 +0,0 @@
---- a/configure
-+++ b/configure
-@@ -6,18 +6,8 @@
- OPT=yes
- DBG=yes
- X11=yes
--VER=`git describe --tags 2>/dev/null`
-+VER="@PKGVERSION@"
-
--if [ -z "$VER" ]; then
-- VER=`git rev-parse --short HEAD 2>/dev/null`
-- if [ -z "$VER" ]; then
-- VER=v`pwd | grep 'libspnav-[0-9]\+\.' | sed 's/.*libspnav-\(\([0-9]\+\.\)\+[0-9]\+\).*$/\1/'`
-- if [ $VER = v ]; then
-- VER='<unknown version>'
-- fi
-- fi
--fi
--
- echo "configuring libspnav - $VER"
-
- srcdir="`dirname "$0"`"
diff --git a/testing/libstatgrab/APKBUILD b/testing/libstatgrab/APKBUILD
deleted file mode 100644
index 28db5605fb4..00000000000
--- a/testing/libstatgrab/APKBUILD
+++ /dev/null
@@ -1,34 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=libstatgrab
-pkgver=0.92.1
-pkgrel=0
-pkgdesc="Cross platform library for accessing system statistics"
-url="https://libstatgrab.org/"
-arch="all"
-license="LGPL-2.0-or-later"
-depends_dev="ncurses-dev"
-checkdepends="perl"
-makedepends="autoconf automake libtool utmps-dev linux-headers $depends_dev"
-subpackages="$pkgname-dev $pkgname-doc"
-source="https://github.com/libstatgrab/libstatgrab/releases/download/LIBSTATGRAB_0_92_1/libstatgrab-$pkgver.tar.gz"
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var \
- --disable-static
- make
-}
-
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-e1f14df8abbb044d02b0ecebc23fbe9effaa0bac6738686e661de015564df5a4d872edef6d07fd150db25764b449d47ef54beecbe12c51987a679b07edc53c97 libstatgrab-0.92.1.tar.gz
-"
diff --git a/testing/libstirshaken/0001-eradicate-Werror.patch b/testing/libstirshaken/0001-eradicate-Werror.patch
new file mode 100644
index 00000000000..a9b8a8e7a44
--- /dev/null
+++ b/testing/libstirshaken/0001-eradicate-Werror.patch
@@ -0,0 +1,36 @@
+From 8aa458351ef544dc65194214368815268953ccf9 Mon Sep 17 00:00:00 2001
+From: Leonardo Arena <rnalrd@alpinelinux.org>
+Date: Thu, 8 Feb 2024 09:08:06 +0000
+Subject: [PATCH] eradicate -Werror
+
+---
+ Makefile.am | 2 +-
+ configure.ac | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/Makefile.am b/Makefile.am
+index f9e38df..3d80a7f 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -1,5 +1,5 @@
+ ACLOCAL_AMFLAGS = -I build/m4
+-AM_CFLAGS = -I./src -Iinclude -I$(srcdir)/include $(KS_CFLAGS) $(CURL_CFLAGS) $(JWT_CFLAGS) $(openssl_CFLAGS) -Wall -Wno-gnu-zero-variadic-macro-arguments -pedantic -Werror
++AM_CFLAGS = -I./src -Iinclude -I$(srcdir)/include $(KS_CFLAGS) $(CURL_CFLAGS) $(JWT_CFLAGS) $(openssl_CFLAGS) -Wall -Wno-gnu-zero-variadic-macro-arguments -pedantic
+
+ lib_LTLIBRARIES = libstirshaken.la
+ libstirshaken_la_SOURCES = src/stir_shaken.c src/stir_shaken_service.c src/stir_shaken_passport.c src/stir_shaken_verify.c src/stir_shaken_ssl.c src/stir_shaken_acme.c src/stir_shaken_sp.c src/stir_shaken_version.c
+diff --git a/configure.ac b/configure.ac
+index 0674352..ed24061 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -1,6 +1,6 @@
+ AC_INIT([libstirshaken], [m4_esyscmd_s([git rev-parse HEAD])], [https://github.com/signalwire/libstirshaken], [libstirshaken], [signalwire.com])
+
+-AM_INIT_AUTOMAKE([subdir-objects -Wall -Werror foreign])
++AM_INIT_AUTOMAKE([subdir-objects -Wall foreign])
+
+ AC_CONFIG_MACRO_DIRS([build/m4])
+
+--
+2.42.0
+
diff --git a/testing/libstirshaken/APKBUILD b/testing/libstirshaken/APKBUILD
new file mode 100755
index 00000000000..51c64d69a33
--- /dev/null
+++ b/testing/libstirshaken/APKBUILD
@@ -0,0 +1,46 @@
+# Maintainer: Leonardo Arena <rnalrd@alpinelinux.org>
+
+_gitcommit="6d99ee01ecb3d2930d5440b0e78e2cb3b1f3f326"
+
+pkgname=libstirshaken
+pkgver=0_git20240208
+pkgrel=2
+pkgdesc="C library implementing STIR-shaken STI-SP AS/VS, STI-CA"
+url="https://github.com/signalwire/libstirshaken"
+arch="all"
+license="MIT"
+subpackages="$pkgname-dev $pkgname-tools"
+makedepends="autoconf automake bash curl-dev libjwt-dev libks-dev libtool util-linux-dev"
+options="!check" # FAIL: Failed to write cert to disk. test/stir_shaken_test_8.c:116
+source="$pkgname-$pkgver.tar.gz::https://github.com/signalwire/libstirshaken/archive/$_gitcommit.tar.gz
+ 0001-eradicate-Werror.patch
+ "
+builddir="$srcdir/$pkgname-$_gitcommit"
+
+build() {
+ autoreconf -i
+ ./configure --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --infodir=/usr/share/info
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+
+}
+
+check() {
+ make check
+}
+
+tools() {
+ pkgdesc="libstirshaken binary tools"
+ amove usr/bin
+}
+
+sha512sums="
+93ca507f11e28be4c5fdee41e3a3de6d755bb1c0db7ff55b28cc4e35f4ce583f39ec6e43f090e5d3506afc72f94ecd049d2b726bfd31085d683a0436bf9d1e15 libstirshaken-0_git20240208.tar.gz
+4f3a10416970d33c15736c1b3e751a91e603841d30e7fee18e77dbc46a15740967117230d6e032c7df3c5b3e05203141bb58ba52fd7e0ce918c85661f55d33c3 0001-eradicate-Werror.patch
+"
diff --git a/testing/libstrophe/APKBUILD b/testing/libstrophe/APKBUILD
deleted file mode 100644
index e8d3f431b31..00000000000
--- a/testing/libstrophe/APKBUILD
+++ /dev/null
@@ -1,34 +0,0 @@
-# Maintainer: j.r <j.r@jugendhacker.de>
-pkgname=libstrophe
-pkgver=0.12.0
-pkgrel=0
-pkgdesc="Simple, lightweight C library for writing XMPP clients"
-url="https://strophe.im/libstrophe/"
-arch="all"
-license="GPL-3.0-only MIT"
-makedepends="expat-dev openssl-dev"
-subpackages="$pkgname-dev"
-source="https://github.com/strophe/libstrophe/releases/download/$pkgver/libstrophe-$pkgver.tar.gz"
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-cfd47f4cd7737cb18a4c0d7a5aa7819035466f2c81de3919d406ac599f322cde69cec82bfa6832d29c4cf74e0053bf5ee358ee0559881a6d02540ca413f21aee libstrophe-0.12.0.tar.gz
-"
diff --git a/testing/libsv/APKBUILD b/testing/libsv/APKBUILD
new file mode 100644
index 00000000000..ddd84151698
--- /dev/null
+++ b/testing/libsv/APKBUILD
@@ -0,0 +1,38 @@
+# Contributor: qaqland <qaq@qaq.land>
+# Maintainer: qaqland <qaq@qaq.land>
+pkgname=libsv
+pkgver=1.2
+pkgrel=0
+pkgdesc="Public domain cross-platform semantic versioning in c99"
+url="https://github.com/uael/sv"
+arch="all"
+license="Unlicense"
+makedepends="cmake samurai"
+subpackages="$pkgname-dev"
+source="$pkgname-$pkgver.tar.gz::https://github.com/uael/sv/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/sv-$pkgver"
+
+build() {
+ if [ "$CBUILD" != "$CHOST" ]; then
+ local crossopts="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=None \
+ $crossopts
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+9dd3747a8db2eb3852e01086ec5e1f7652e836f5e5e0cd3d593ce3afed9ef86b161e0b476d156fb298d66172d579e246863d76fc639aef48657b0e5547c52b4d libsv-1.2.tar.gz
+"
diff --git a/testing/libsymmetrica/APKBUILD b/testing/libsymmetrica/APKBUILD
new file mode 100644
index 00000000000..75aa968d58d
--- /dev/null
+++ b/testing/libsymmetrica/APKBUILD
@@ -0,0 +1,43 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
+pkgname=libsymmetrica
+pkgver=3.0.1
+pkgrel=2
+pkgdesc="Library with a collection of routines for combinatorial mathematics"
+url="https://gitlab.com/sagemath/symmetrica"
+arch="all"
+license="ISC"
+makedepends="autoconf automake libtool"
+source="https://gitlab.com/sagemath/symmetrica/-/archive/$pkgver/symmetrica-$pkgver.tar.gz"
+subpackages="$pkgname-static $pkgname-dev"
+builddir="$srcdir/symmetrica-$pkgver"
+
+prepare() {
+ default_prepare
+ autoreconf -fi
+}
+
+build() {
+ export CFLAGS="${CFLAGS/-Os/-O3}" # gotta go fast
+
+ ./configure \
+ --target="$CTARGET" \
+ --build="$CBUILD" \
+ --host="$CHOST" \
+ --prefix=/usr
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+ # It has just a README.md from repository.
+ rm -r "${pkgdir:?}"/usr/share
+}
+
+sha512sums="
+fd663ba1bf0d6ca91aa67cbb642f2a9150c7e938f3fef54b4227f67e1269b9f5b64af597aaebf158ce936441025d348db907fa0cbf0d7ddeca19985e8ea565de symmetrica-3.0.1.tar.gz
+"
diff --git a/testing/libsysstat/APKBUILD b/testing/libsysstat/APKBUILD
deleted file mode 100644
index da4b8c5030d..00000000000
--- a/testing/libsysstat/APKBUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=libsysstat
-pkgver=0.4.6
-pkgrel=0
-pkgdesc="Library used to query system info and statistics"
-url="https://github.com/lxqt/libsysstat"
-arch="all"
-license="LGPL-2.1-or-later"
-subpackages="$pkgname-dev"
-makedepends="lxqt-build-tools cmake qt5-qtbase-dev"
-options="!check" # No testsuite
-source="https://github.com/lxqt/libsysstat/releases/download/$pkgver/libsysstat-$pkgver.tar.xz"
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build \
- -DCMAKE_BUILD_TYPE=None \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- $CMAKE_CROSSOPTS .
- cmake --build build
-
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --build build --target install
-}
-
-sha512sums="
-dd0e6f67509658691082b043e06589c6a89eea016a0e68cdb7d377f25a0bc63aa476b5eb90f230593daab462a9e22f6f636c0723110fb36faeea7c0aa6d0b85b libsysstat-0.4.6.tar.xz
-"
diff --git a/testing/libtbox/APKBUILD b/testing/libtbox/APKBUILD
new file mode 100644
index 00000000000..353a63965ae
--- /dev/null
+++ b/testing/libtbox/APKBUILD
@@ -0,0 +1,50 @@
+# Contributor: qaqland <qaq@qaq.land>
+# Maintainer: qaqland <qaq@qaq.land>
+pkgname=libtbox
+pkgver=1.7.5
+pkgrel=1
+pkgdesc="A glib-like multi-platform c library"
+url="https://github.com/tboox/tbox"
+arch="all"
+license="Apache-2.0"
+subpackages="$pkgname-dev"
+makedepends="linux-headers"
+source="$pkgname-$pkgver.tar.gz::https://github.com/tboox/tbox/archive/refs/tags/v$pkgver.tar.gz
+ $pkgname.pc
+ "
+builddir="$srcdir/tbox-$pkgver"
+
+prepare() {
+ default_prepare
+ chmod -x ./*.md
+}
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --kind=shared \
+ --force_utf8=yes \
+ --charset=yes \
+ --float=yes \
+ --hash=yes
+ make
+}
+
+check() {
+ make run
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+ rm "$pkgdir/usr/bin/demo"
+
+ mkdir -p "$pkgdir/usr/lib/pkgconfig/"
+ sed "s/@VERSION@/$pkgver/" "$srcdir/$pkgname.pc" > "$pkgdir/usr/lib/pkgconfig/$pkgname.pc"
+}
+
+sha512sums="
+e451b0e24db3c80028ec841f0696bcb9e086745f399de1a996955b6508f0504dc22931e0ef70f298a4776619e4b96dbe5f517275d26263b3ad1076d6b5292682 libtbox-1.7.5.tar.gz
+9b9e41014af55df80419fde320784e396a6a54005cf09393567f43ce146b94494090927fdfa2685edf3b72bc5ff4d155c99a037d4ea8c9a3cb649187ac4c9a32 libtbox.pc
+"
diff --git a/testing/libtbox/libtbox.pc b/testing/libtbox/libtbox.pc
new file mode 100644
index 00000000000..9d78fb84203
--- /dev/null
+++ b/testing/libtbox/libtbox.pc
@@ -0,0 +1,9 @@
+prefix=/usr
+exec_prefix=${prefix}
+libdir=${exec_prefix}/lib
+includedir=${prefix}/include
+
+Name: libtbox
+Description: A glib-like multi-platform c library
+Version: @VERSION@
+Libs: -ltbox
diff --git a/testing/libtickit/APKBUILD b/testing/libtickit/APKBUILD
deleted file mode 100644
index 6d15c02fc5a..00000000000
--- a/testing/libtickit/APKBUILD
+++ /dev/null
@@ -1,46 +0,0 @@
-# Contributor: Roberto Oliveira <robertoguimaraes8@gmail.com>
-# Maintainer: Roberto Oliveira <robertoguimaraes8@gmail.com>
-pkgname=libtickit
-pkgver=0.4.2a
-pkgrel=0
-pkgdesc="library that provides an abstracted mechanism for building interactive full-screen terminal programs"
-url="http://www.leonerd.org.uk/code/libtickit/"
-arch="all"
-license="MIT"
-makedepends="libtermkey-dev libtool"
-checkdepends="perl-test-harness-utils"
-subpackages="$pkgname-static $pkgname-dev $pkgname-doc"
-source="http://www.leonerd.org.uk/code/libtickit/libtickit-$pkgver.tar.gz
- missing-include.patch
- "
-
-prepare() {
- default_prepare
- sed -i -e "s/PREFIX=\/usr\/local/PREFIX=\/usr/g" Makefile
-}
-
-build() {
- make PREFIX=/usr
-}
-
-check() {
- # test is flawed
- rm t/11term-output-screen.c
- TERM=linux make test
-}
-
-package() {
- make install DESTDIR="$pkgdir"
-}
-
-static() {
- depends=""
- pkgdesc="$pkgdesc (static library)"
- mkdir -p "$subpkgdir"/usr/lib
- mv "$pkgdir"/usr/lib/*.a "$subpkgdir"/usr/lib
-}
-
-sha512sums="
-8bec53a52f731a2a312b78205e504de4e488c28855443718fe8fa0e0519d7c8749c4800e633c156e7066aac13a64430c50816df3615643d90a9ab829fbf31cfd libtickit-0.4.2a.tar.gz
-2936e5bdb60e9f2320be0dccec75cebd1aa3dce5343ad4c315405ed1e83da53fd11ab3ae4f782706aed60151e81e44405491c605f6c4e878cb18104eaa1113f4 missing-include.patch
-"
diff --git a/testing/libtickit/missing-include.patch b/testing/libtickit/missing-include.patch
deleted file mode 100644
index 5183e1b6ea8..00000000000
--- a/testing/libtickit/missing-include.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/include/tickit.h b/include/tickit.h
-index 1315b47..d1bba1c 100644
---- a/include/tickit.h
-+++ b/include/tickit.h
-@@ -17,6 +17,7 @@ extern "C" {
- #include <stdbool.h>
-
- #include <sys/time.h>
-+#include <sys/types.h> /* pid_t */
-
- #ifdef __GNUC__
- # define DEPRECATED __attribute__((deprecated))
diff --git a/testing/libtins/APKBUILD b/testing/libtins/APKBUILD
index b36af208a78..8241c00f381 100644
--- a/testing/libtins/APKBUILD
+++ b/testing/libtins/APKBUILD
@@ -1,14 +1,14 @@
# Contributor: Francesco Colista <fcolista@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=libtins
-pkgver=4.4
-pkgrel=1
+pkgver=4.5
+pkgrel=0
pkgdesc="A high-level, multiplatform C++ network packet sniffing and crafting library"
url="http://libtins.github.io/"
arch="all"
license="BSD-2-Clause"
options="!check"
-makedepends="libpcap-dev openssl-dev boost-dev cmake"
+makedepends="libpcap-dev openssl-dev>3 boost-dev cmake"
subpackages="$pkgname-dev $pkgname-doc"
source="$pkgname-$pkgver.tar.gz::https://github.com/mfontanini/libtins/archive/v$pkgver.tar.gz"
@@ -31,5 +31,5 @@ package() {
install -Dm644 ../LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
}
sha512sums="
-3edecaa1e1e8564fff2aa10df6c1fd25a8f16e338ffed9c1fa9983fd4b957ade20267bc9e98a59162fe57c92da798171d1fbc60cb9fc62cf599a99e493f5cf40 libtins-4.4.tar.gz
+d8887949cb545dbaf4247c8405feb5cc1032f370bb418dd5344043dc97555b1b826a8d33cfc7dd0a7a9a9af6f3a46bd6fcbed89f98d5eb23fdd10294f823fcd6 libtins-4.5.tar.gz
"
diff --git a/testing/libtommath/APKBUILD b/testing/libtommath/APKBUILD
index d70d736d238..2d8f438d470 100644
--- a/testing/libtommath/APKBUILD
+++ b/testing/libtommath/APKBUILD
@@ -1,35 +1,30 @@
# Contributor: Alex Yam <alex@alexyam.com>
# Maintainer: Alex Yam <alex@alexyam.com>
pkgname=libtommath
-pkgver=0_git20210921
-_gitrev=8355b88db088e41d6f7e19a8d58d46c9ed0333d3
+pkgver=1.2.1
pkgrel=0
pkgdesc="number theoretic multiple-precision integer library"
url="https://www.libtom.net/LibTomMath/"
-# arch: all except x86 and x86_64 failed 2 tests:
-# test_mp_sqrtmod_prime, line 726: DO(mp_sqrtmod_prime(&b, &a, &c)) failed: Value out of range
-# test_mp_kronecker, line 345: EXPECT(i == kronecker[cnt].c[m + 10]) failed
-arch="all !armhf !armv7 !aarch64 !ppc64le !s390x"
+arch="all"
license="Unlicense"
makedepends="libtool"
-checkdepends="coreutils" # Using BusyBox's "timeout" resulted in - unrecognized option: foreground
subpackages="$pkgname-dev"
-source="$pkgname-$_gitrev.tar.gz::https://github.com/libtom/libtommath/archive/$_gitrev.tar.gz"
-builddir=$srcdir/$pkgname-$_gitrev
+source="$pkgname-$pkgver.tar.xz::https://github.com/libtom/libtommath/releases/download/v$pkgver/ltm-$pkgver.tar.xz"
+
+# secfixes:
+# 1.2.1-r0:
+# - CVE-2023-36328
build() {
make -f makefile.shared
}
check() {
- # testme.sh runs its own CC and make
- # resulting in .lo files in $builddir that break package() with error:
- # "libtool: error: 'mp_2expt.lo' is not a valid libtool object"
- # clone $builddir to testdir for running testme.sh
- cp -rp $builddir $builddir/../testdir
- cd $builddir/../testdir
- ./testme.sh
- cat test_gcc.log
+ # make test creates a stand-alone test binary that executes several test routines.
+ # clone $builddir to testdir for running tests
+ cp -rp $builddir $srcdir/testdir
+ cd $srcdir/testdir
+ make test
}
package() {
@@ -37,5 +32,5 @@ package() {
}
sha512sums="
-5f763bf0d38e8a6bab741dc3100894baece89eccbf5c76f78bc144a2a2499486bde552f5c9817722563717cc12e86e55cd69ef977f8d9f48d72893663f811914 libtommath-8355b88db088e41d6f7e19a8d58d46c9ed0333d3.tar.gz
+50c9459357aa7f5076af93de6701c617da0dbbf2230a2f4468062704a6cd6e9d3c2fbb27016f68a7e1d6b35d6ddb2088630b24ea6acc20ed8c19594913d36e95 libtommath-1.2.1.tar.xz
"
diff --git a/testing/libtpms/APKBUILD b/testing/libtpms/APKBUILD
deleted file mode 100644
index 48e973209b0..00000000000
--- a/testing/libtpms/APKBUILD
+++ /dev/null
@@ -1,40 +0,0 @@
-# Contributor: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
-# Maintainer: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
-pkgname=libtpms
-pkgver=0.9.4
-pkgrel=0
-pkgdesc="library providing software emulation of a Trusted Platform Module (TPM 1.2 and TPM 2.0)"
-url="https://github.com/stefanberger/libtpms"
-arch="aarch64 armhf x86 x86_64"
-license="BSD-3-Clause"
-makedepends="autoconf automake bash build-base gawk libtool make openssl-dev"
-subpackages="$pkgname-dev $pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::$url/archive/v$pkgver.tar.gz"
-
-prepare() {
- default_prepare
- NOCONFIGURE=1 ./autogen.sh
-}
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --libdir=/usr/lib \
- --with-tpm2 \
- --with-openssl
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-ae3e2613bc31d98c10def546c70d0c25bd1246af5090268afa0411502bfd0e454967046ebcd9025350976817441e595fa4e21562f800285db98331e4c2743505 libtpms-0.9.4.tar.gz
-"
diff --git a/testing/libtsm/APKBUILD b/testing/libtsm/APKBUILD
new file mode 100644
index 00000000000..35258ba7d57
--- /dev/null
+++ b/testing/libtsm/APKBUILD
@@ -0,0 +1,33 @@
+# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=libtsm
+pkgver=4.0.2
+pkgrel=0
+pkgdesc="Terminal-emulator State Machine"
+url="https://github.com/Aetf/libtsm"
+arch="all"
+license="MIT AND BSD-2-Clause"
+makedepends="cmake samurai"
+checkdepends="check-dev"
+subpackages="$pkgname-dev"
+source="$pkgname-$pkgver.tar.gz::https://github.com/Aetf/libtsm/archive/refs/tags/v$pkgver.tar.gz"
+
+build() {
+ cmake -B build -G Ninja -Wno-dev \
+ -DCMAKE_BUILD_TYPE=MinSizeRel \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DBUILD_TESTING="$(want_check && echo ON || echo OFF)"
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+58eb955012fd154b7c165d799d0f80c9a71a504481e78471103fd299f2e73f3b7d89487387166895a9a5996165344335baa56f0550317caaa2eec6b0bad55e59 libtsm-4.0.2.tar.gz
+"
diff --git a/testing/libubox/APKBUILD b/testing/libubox/APKBUILD
new file mode 100644
index 00000000000..da21285b060
--- /dev/null
+++ b/testing/libubox/APKBUILD
@@ -0,0 +1,54 @@
+# Maintainer: Ariadne Conill <ariadne@dereferenced.org>
+pkgname=libubox
+pkgver=20230523
+pkgrel=0
+pkgdesc="OpenWrt utility and data structures library"
+url="https://git.openwrt.org/project/ustream-ssl.git"
+arch="all"
+license="ISC"
+depends=""
+depends_dev="libubox json-c-dev"
+makedepends="cmake $depends_dev"
+subpackages="libblobmsg jshn $pkgname-static $pkgname-dev"
+_owrtgit=75a3b870
+_owrtver="${pkgver:0:4}-${pkgver:4:2}-${pkgver:6:2}-${_owrtgit}"
+source="https://sources.openwrt.org/libubox-${_owrtver}.tar.xz"
+builddir="$srcdir/libubox-${_owrtver}"
+
+build() {
+ if [ "$CBUILD" != "$CHOST" ]; then
+ CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ CFLAGS="$CFLAGS -fPIC -DPIC" cmake -B build \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=True \
+ -DCMAKE_BUILD_TYPE=None \
+ -DBUILD_LUA=OFF \
+ -DBUILD_EXAMPLES=OFF \
+ $CMAKE_CROSSOPTS .
+ cmake --build build
+}
+
+jshn() {
+ amove usr/bin/jshn
+ amove usr/share/libubox/jshn.sh
+}
+
+libblobmsg() {
+ amove usr/lib/libblobmsg_json.so
+ amove usr/lib/libjson_script.so
+}
+
+check() {
+ cd build
+ CTEST_OUTPUT_ON_FAILURE=TRUE ctest
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+67cac344dc58bccd54937a8a32d8492be8b8d007b2419c3b90e6290d5ac995934c9de6f29f3a0e48382b9ef2af83ec2e4a2a97c346b4de2d42999b70eecfaf88 libubox-2023-05-23-75a3b870.tar.xz
+"
diff --git a/testing/libucl/APKBUILD b/testing/libucl/APKBUILD
new file mode 100644
index 00000000000..8f16e09b373
--- /dev/null
+++ b/testing/libucl/APKBUILD
@@ -0,0 +1,42 @@
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=libucl
+pkgver=0.9.0
+pkgrel=0
+pkgdesc="Universal configuration library parser"
+url="https://github.com/vstakhov/libucl"
+arch="all"
+license="BSD-2-Clause"
+makedepends="
+ autoconf
+ automake
+ libtool
+ "
+subpackages="$pkgname-dev $pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/vstakhov/libucl/archive/refs/tags/$pkgver.tar.gz"
+options="!check" # fail for no reason
+
+prepare() {
+ default_prepare
+ autoreconf -fvi
+}
+
+build() {
+ ./configure \
+ --prefix=/usr \
+ --build=$CBUILD \
+ --host=$CHOST
+
+ make
+}
+
+check() {
+ make -j1 check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+a7bcb03dc3b5e3b8e5c141fb3edee0c749e20d63ad69fba4d3c6ca56ef56b1130287b0f497de37bf9789c2263a46121c662fedc7a870354c2849d2e14d90cab5 libucl-0.9.0.tar.gz
+"
diff --git a/testing/libuecc/APKBUILD b/testing/libuecc/APKBUILD
index 3fa9028d842..8add61d168e 100644
--- a/testing/libuecc/APKBUILD
+++ b/testing/libuecc/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Johannes Matheis <jomat+alpinebuild@jmt.gr>
-# Maintainer: Johannes Matheis <jomat+alpinebuild@jmt.gr>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=libuecc
pkgver=7
-pkgrel=2
+pkgrel=3
pkgdesc="Very small Elliptic Curve Cryptography library"
url="https://git.universe-factory.net/libuecc"
arch="all"
diff --git a/testing/libui/APKBUILD b/testing/libui/APKBUILD
index df6b4635261..508b500503d 100644
--- a/testing/libui/APKBUILD
+++ b/testing/libui/APKBUILD
@@ -1,4 +1,4 @@
-# Maintainer: Drew DeVault <sir@cmpwn.com>
+# Maintainer:
pkgname=libui
pkgver=4.1_alpha20211213
_commit=fea45b2d5b75839be0af9acc842a147c5cba9295
@@ -20,7 +20,7 @@ build() {
pwd
echo $builddir
abuild-meson . output
- meson compile ${JOBS:+-j ${JOBS}} -C output
+ meson compile -C output
}
package() {
diff --git a/testing/libunicode/APKBUILD b/testing/libunicode/APKBUILD
new file mode 100644
index 00000000000..79befe2d44f
--- /dev/null
+++ b/testing/libunicode/APKBUILD
@@ -0,0 +1,58 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=libunicode
+pkgver=0.4.0
+pkgrel=0
+pkgdesc="Modern C++17 Unicode library"
+url="https://contour-terminal.org"
+arch="x86_64 aarch64" # 'intrinsics' has not been declared
+license="Apache-2.0"
+makedepends="
+ catch2-3
+ cmake
+ fmt-dev
+ python3
+ samurai
+ unicode-character-database
+"
+subpackages="
+ $pkgname-dev
+ $pkgname-doc
+ $pkgname-tools
+"
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/contour-terminal/libunicode/archive/refs/tags/v$pkgver.tar.gz
+ rm-catch2-supression.patch
+"
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DBUILD_SHARED_LIBS=ON \
+ -DLIBUNICODE_UCD_DIR=/usr/share/unicode \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DLIBUNICODE_TESTING=ON
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build -C Release --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+
+ install -Dm 644 LICENSE "$pkgdir"/usr/share/licenses/"$pkgname"/LICENSE
+}
+
+tools() {
+ pkgdesc="$pkgdesc - query tools"
+
+ mkdir -p "$subpkgdir"/usr/bin
+ mv "$pkgdir"/usr/bin/unicode-query -t "$subpkgdir"/usr/bin
+}
+
+sha512sums="
+48be9f3397f97432ae6a4d6e116fd8e77abf7d085b5dbb74c45828671fd45b6f5ee0e54751cf4aeeec61ab025b6831232cdb9ed1c34e1e7a4ebf84bbe1b4f84b libunicode-0.4.0.tar.gz
+449d88a998259688efec173d36d9bef1171e92f1b2cb3c28b9960417479e1300a849ff9a0fb40453f75375df5d795d2a479bef6eb75a761d66fea9a3f5fb89c6 rm-catch2-supression.patch
+"
diff --git a/testing/libunicode/rm-catch2-supression.patch b/testing/libunicode/rm-catch2-supression.patch
new file mode 100644
index 00000000000..4e47af0d3fe
--- /dev/null
+++ b/testing/libunicode/rm-catch2-supression.patch
@@ -0,0 +1,17 @@
+--- a/src/libunicode/CMakeLists.txt
++++ b/src/libunicode/CMakeLists.txt
+@@ -220,14 +220,6 @@
+ word_segmenter_test.cpp
+ )
+
+- # supress conversion warnings for Catch2
+- # https://github.com/catchorg/Catch2/issues/2583
+- # https://github.com/SFML/SFML/blob/e45628e2ebc5843baa3739781276fa85a54d4653/test/CMakeLists.txt#L18-L22
+- set_target_properties(Catch2 PROPERTIES COMPILE_OPTIONS "" EXPORT_COMPILE_COMMANDS OFF)
+- set_target_properties(Catch2WithMain PROPERTIES EXPORT_COMPILE_COMMANDS OFF)
+- get_target_property(CATCH2_INCLUDE_DIRS Catch2 INTERFACE_INCLUDE_DIRECTORIES)
+- target_include_directories(Catch2 SYSTEM INTERFACE ${CATCH2_INCLUDE_DIRS})
+-
+ target_link_libraries(unicode_test unicode Catch2::Catch2WithMain fmt::fmt-header-only)
+ add_test(unicode_test unicode_test)
+ endif()
diff --git a/testing/libuninameslist/APKBUILD b/testing/libuninameslist/APKBUILD
index f7c3e679410..b52e0dce833 100644
--- a/testing/libuninameslist/APKBUILD
+++ b/testing/libuninameslist/APKBUILD
@@ -1,23 +1,21 @@
# Contributor: Ed Robinson <ed@reevoo.com>
# Maintainer: Ed Robinson <ed@reevoo.com>
pkgname=libuninameslist
-pkgver=20210626
+pkgver=20230916
pkgrel=0
pkgdesc="A Library of Unicode names and annotation data"
url="https://github.com/fontforge/libuninameslist"
arch="all"
license="BSD-3-Clause"
-makedepends="autoconf automake libtool"
-subpackages="$pkgname-static $pkgname-dev $pkgname-doc"
+subpackages="$pkgname-dev $pkgname-doc"
source="https://github.com/fontforge/libuninameslist/releases/download/$pkgver/libuninameslist-dist-$pkgver.tar.gz"
-prepare() {
- default_prepare
- autoreconf -fi
-}
-
build() {
- ./configure --prefix=/usr
+ ./configure \
+ --prefix=/usr \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --disable-static
make
}
@@ -29,12 +27,6 @@ package() {
make DESTDIR="$pkgdir" install
}
-static() {
- depends=""
- pkgdesc="$pkgdesc (static library)"
- mkdir -p "$subpkgdir"/usr/lib
- mv "$pkgdir"/usr/lib/*.a "$subpkgdir"/usr/lib
-}
sha512sums="
-aa28179b837609ccea4c15c1870fc8210c11fbb6e73d8a6e0843e8faa957fe6efd1824ec5818a2f46be427ba3a98f6a04f59102f6e1d01d38098f488c940d766 libuninameslist-dist-20210626.tar.gz
+32d5c59b0bdc07332dc24d4d6adc4f9173c8e9f41cad1adf1c6f5b9dd0ef8dd62a4ca3c8151d8ef4b5cb7f9ea4df63d8b63e906658b7d7062c5a17edd452c3e5 libuninameslist-dist-20230916.tar.gz
"
diff --git a/testing/libupnpp/APKBUILD b/testing/libupnpp/APKBUILD
deleted file mode 100644
index 456aae8ce86..00000000000
--- a/testing/libupnpp/APKBUILD
+++ /dev/null
@@ -1,24 +0,0 @@
-# Contributor: Marvin Preuss <marvin@xsteadfastx.org>
-# Maintainer: Marvin Preuss <marvin@xsteadfastx.org>
-pkgname=libupnpp
-pkgver=0.21.0
-pkgrel=0
-pkgdesc="C++ wrapper for libupnp"
-url="https://framagit.org/medoc92/libupnpp"
-arch="all"
-license="LGPL-2.0-or-later"
-options="!check"
-makedepends="curl-dev expat-dev libnpupnp-dev"
-subpackages="$pkgname-dev"
-source="libupnpp-$pkgver.tar.gz::https://www.lesbonscomptes.com/upmpdcli/downloads/libupnpp-$pkgver.tar.gz"
-
-build() {
- ./configure --prefix=/usr
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="1032ef83e6880c1e4ae4903f6e175640b1d3da7090bfb04bf480f70d58436ef89e6a43886c86dcda2c4aab8370cbd0d5260601ac359a3dded0688ac2748d30fd libupnpp-0.21.0.tar.gz"
diff --git a/testing/libusbgx/APKBUILD b/testing/libusbgx/APKBUILD
deleted file mode 100644
index c1d60d5e1e3..00000000000
--- a/testing/libusbgx/APKBUILD
+++ /dev/null
@@ -1,55 +0,0 @@
-# Maintainer: Luca Weiss <luca@z3ntu.xyz>
-pkgname=libusbgx
-pkgver=0.2.0
-pkgrel=0
-pkgdesc="C library encapsulating the Linux kernel USB gadget configfs userspace API functionality"
-url="https://github.com/linux-usb-gadgets/libusbgx"
-arch="all"
-license="LGPL-2.1-or-later"
-depends_dev="
- bsd-compat-headers
- "
-makedepends="
- $depends_dev
- autoconf
- automake
- libconfig-dev
- libtool
- linux-headers
- "
-subpackages="$pkgname-static $pkgname-dev $pkgname-tools"
-source="https://github.com/linux-usb-gadgets/libusbgx/archive/refs/tags/libusbgx-v$pkgver.tar.gz
- sysmacros.patch
- "
-builddir="$srcdir/libusbgx-libusbgx-v$pkgver"
-options="!check" # tests don't build
-
-prepare() {
- default_prepare
- autoreconf -fi
-}
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-tools() {
- pkgdesc="$pkgdesc (tools)"
- amove usr/bin
-}
-
-sha512sums="
-616457b0675099bd68d8cc8d42bcbd6cbe362177967264a547c2e82e8d3c13d8a3e8348244a4cfd8b4a82e1cf08b49336c5b5f352e2cc3163f452319a899cf28 libusbgx-v0.2.0.tar.gz
-53afb8ec402f331bdb19a685397dfec6db9c81baeb51670ac7e645b537c4a948662602f603848c538e432a15d85426a7cd68f86139662bd374cd21d331ca7307 sysmacros.patch
-"
diff --git a/testing/libusbgx/sysmacros.patch b/testing/libusbgx/sysmacros.patch
deleted file mode 100644
index ca057fa1fe7..00000000000
--- a/testing/libusbgx/sysmacros.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-diff --git a/examples/show-gadgets.c b/examples/show-gadgets.c
-index 707d448..a2a21c8 100644
---- a/examples/show-gadgets.c
-+++ b/examples/show-gadgets.c
-@@ -21,6 +21,7 @@
- #include <errno.h>
- #include <stdio.h>
- #include <string.h>
-+#include <sys/sysmacros.h>
- #include <netinet/ether.h>
- #include <usbg/usbg.h>
- #include <usbg/function/ms.h>
-diff --git a/src/usbg_common.c b/src/usbg_common.c
-index f8822fc..6f12a38 100644
---- a/src/usbg_common.c
-+++ b/src/usbg_common.c
-@@ -15,6 +15,7 @@
-
- #include <errno.h>
- #include <sys/stat.h>
-+#include <sys/sysmacros.h>
- #include <sys/types.h>
- #include <malloc.h>
- #include <stdio.h>
-diff --git a/src/usbg_common_libconfig.c b/src/usbg_common_libconfig.c
-index d2576d7..321b2db 100644
---- a/src/usbg_common_libconfig.c
-+++ b/src/usbg_common_libconfig.c
-@@ -13,6 +13,8 @@
- #include "usbg/usbg_internal.h"
- #include "usbg/usbg_internal_libconfig.h"
-
-+#include <sys/sysmacros.h>
-+
- int usbg_get_config_node_int(config_setting_t *root,
- const char *node_name, void *val)
- {
diff --git a/testing/libva-utils/APKBUILD b/testing/libva-utils/APKBUILD
deleted file mode 100644
index 7f9092fc82f..00000000000
--- a/testing/libva-utils/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Contributor: Leo <thinkabit.ukim@gmail.com>
-# Contributor: Taner Tas <taner76@gmail.com>
-# Maintainer: Taner Tas <taner76@gmail.com>
-pkgname=libva-utils
-pkgver=2.14.0
-pkgrel=0
-pkgdesc="Intel VA-API Media Applications and Scripts for libva"
-options="!check" # Most tests fail
-url="https://github.com/01org/libva-utils"
-arch="all"
-license="MIT"
-makedepends="
- meson
- libva-dev
- libdrm-dev
- wayland-dev
- "
-source="https://github.com/01org/libva-utils/archive/$pkgver/libva-utils-$pkgver.tar.gz"
-
-build() {
- abuild-meson \
- -Ddrm=true \
- -Dx11=true \
- -Dwayland=true \
- -Dtests=false \
- . output
- meson compile ${JOBS:+-j ${JOBS}} -C output
-}
-
-package() {
- DESTDIR="$pkgdir" meson install --no-rebuild -C output
-}
-
-sha512sums="
-631e9becf5b2f6d083906962c004c9080d2e2b2d98b6003638a31dde8ad4e2549606301b97e88822471e29007232fc470a2116be09dc0c55d3cc2df6a45a7be1 libva-utils-2.14.0.tar.gz
-"
diff --git a/testing/libvisio2svg/APKBUILD b/testing/libvisio2svg/APKBUILD
index e49212a89ac..bd0be91012e 100644
--- a/testing/libvisio2svg/APKBUILD
+++ b/testing/libvisio2svg/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Leonardo Arena <rnalrd@alpinelinux.org>
pkgname=libvisio2svg
pkgver=0.5.5
-pkgrel=1
+pkgrel=3
pkgdesc="Library/Utilities to convert Microsoft (MS) Visio Documents and Stencils (VSS and VSD) to SVG"
url="https://github.com/kakwa/libvisio2svg"
arch="all"
diff --git a/testing/libvmaf/APKBUILD b/testing/libvmaf/APKBUILD
new file mode 100644
index 00000000000..ab61f93c047
--- /dev/null
+++ b/testing/libvmaf/APKBUILD
@@ -0,0 +1,30 @@
+# Contributor: Sam Nystrom <sam@samnystrom.dev>
+# Maintainer: Sam Nystrom <sam@samnystrom.dev>
+pkgname=libvmaf
+pkgver=3.0.0
+pkgrel=0
+pkgdesc="Perceptual video quality assessment based on multi-method fusion"
+url="https://github.com/Netflix/vmaf"
+arch="all"
+license="BSD-2-Clause-Patent"
+makedepends="meson nasm xxd"
+subpackages="$pkgname-dev"
+source="$pkgname-$pkgver.tar.gz::https://github.com/Netflix/vmaf/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/vmaf-$pkgver/libvmaf"
+
+build() {
+ abuild-meson . output
+ meson compile -C output
+}
+
+check() {
+ meson test --no-rebuild --print-errorlogs -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+sha512sums="
+9e356bb274ce7d5d85a64d2a1a122ea9d267809edd83bb6e663fb348a1a46355882eb9044982bf679f03df7f93c6f66c9b0d9a94661979b2c722db30b21c4f32 libvmaf-3.0.0.tar.gz
+"
diff --git a/testing/libvmime/APKBUILD b/testing/libvmime/APKBUILD
index 316c3dfc01d..80ecd5cca6f 100644
--- a/testing/libvmime/APKBUILD
+++ b/testing/libvmime/APKBUILD
@@ -1,20 +1,34 @@
# Maintainer: Noel Kuntze <noel.kuntze@thermi.consulting>
pkgname=libvmime
-pkgver=0.9.2k4
-pkgrel=5
+pkgver=0.9.2_p4
+_pkgver=${pkgver//_p/k}
+pkgrel=10
pkgdesc="Library for working with RFC 5322, MIME messages and IMAP/POP/SMTP"
-arch="all"
+# ftbfs
+#arch="all"
url="https://www.vmime.org/"
license="GPL-3.0-only"
# cmake config file isn't suitable for explicitely setting the TLS lib when it finds gnutls
-makedepends="libgsasl-dev openssl-dev cmake gtk+3.0-dev doxygen
- cppunit-dev graphviz !gnutls-dev samurai"
+makedepends="
+ !gnutls-dev
+ cmake
+ cppunit-dev
+ doxygen
+ graphviz
+ gtk+3.0-dev
+ libgsasl-dev
+ icu-dev
+ openssl-dev
+ samurai
+ "
+checkdepends="icu-data-full"
subpackages="$pkgname-dbg $pkgname-dev"
-source="libvmime-$pkgver.tar.gz::https://github.com/Kopano-dev/vmime/archive/v$pkgver.tar.gz
+source="libvmime-$pkgver.tar.gz::https://github.com/Kopano-dev/vmime/archive/v$_pkgver.tar.gz
fix-icu-70-1.patch
+ gsasl-2.2.0.patch::https://github.com/kisli/vmime/commit/c750e899b8b3a76379167148468e164b7e52f6e2.patch
"
-builddir="$srcdir/vmime-$pkgver"
+builddir="$srcdir/vmime-$_pkgver"
# can't build in other directory because cmake config is broken here.
# library will not exist at package time.
@@ -37,6 +51,7 @@ package() {
}
sha512sums="
-90ebce51151944fe9cf09a8385b4ffe4db199c87e79579f66d70221f45a4bf4b048f3115077cff83536119af40ebe89eddacc301b54b7fb017438f44bd0f273c libvmime-0.9.2k4.tar.gz
+90ebce51151944fe9cf09a8385b4ffe4db199c87e79579f66d70221f45a4bf4b048f3115077cff83536119af40ebe89eddacc301b54b7fb017438f44bd0f273c libvmime-0.9.2_p4.tar.gz
65c0c1ec56a9a56167bb8b18e01feee4ea65fa958f5e2f233aa13d0472a803574d8b2751b2e6011edcd1db119f91c66e2401fd4916eecbb3af04dc2e527c125c fix-icu-70-1.patch
+6a07daff1b3830a913df722ed736465e8bbe022ee18b3ba1b704d58d3db16d8bbaeba5daa2e0705792b69aa2ced96b7d3c21a5e43a87b6585eaa318db069054e gsasl-2.2.0.patch
"
diff --git a/testing/libvoikko/APKBUILD b/testing/libvoikko/APKBUILD
new file mode 100644
index 00000000000..77b031706a6
--- /dev/null
+++ b/testing/libvoikko/APKBUILD
@@ -0,0 +1,40 @@
+# Contributor: Timo Teräs <timo.teras@iki.fi>
+# Maintainer: Timo Teräs <timo.teras@iki.fi>
+pkgname=libvoikko
+pkgver=4.3.2
+pkgrel=1
+pkgdesc="Voikko spelling, hyphenation and grammar checker"
+url="https://voikko.puimula.org/"
+arch="all"
+license="MPL-1.1 GPL-2.0-or-later LGPL-2.1-or-later"
+makedepends="foma python3"
+options="!check" # test suite is broken
+subpackages="$pkgname-dev $pkgname-doc"
+source="https://www.puimula.org/voikko-sources/libvoikko/libvoikko-$pkgver.tar.gz"
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var \
+ --disable-static \
+ --enable-hfst=false \
+ --with-dictionary-path=/usr/share/voikko
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+
+ # python bindings
+ local sitedir=$(python3 -c "import site; print(site.getsitepackages()[0])")
+ mkdir -p "$pkgdir/$sitedir/"
+ cp python/libvoikko.py "$pkgdir/$sitedir/libvoikko.py"
+}
+
+sha512sums="
+d510a9344501f86b2f644c1237faf8709f02b5d17bca76f7934c8422495aeee307f12c60dde47df15a39c24c3311253d3dea2d0648050fc3a056a22497de695c libvoikko-4.3.2.tar.gz
+"
diff --git a/testing/libvolk/APKBUILD b/testing/libvolk/APKBUILD
deleted file mode 100644
index d39e0c184f4..00000000000
--- a/testing/libvolk/APKBUILD
+++ /dev/null
@@ -1,47 +0,0 @@
-# Contributor: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
-# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
-pkgname=libvolk
-pkgver=2.5.0
-_cpufeaturesver=0.6.0
-pkgrel=2
-pkgdesc="Vector-Optimized Library of Kernels"
-url="https://www.libvolk.org/"
-# libvolk provides hand-written SIMD code. Hence, support needs to be manually
-# added to new platforms. Currently only supported are:
-arch="armv7 aarch64 x86_64"
-license="GPL-3.0-or-later"
-depends="python3"
-makedepends="cmake py3-mako boost-dev orc-dev"
-subpackages="$pkgname-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/gnuradio/volk/archive/v$pkgver.tar.gz
- cpu_features-$_cpufeaturesver.tar.gz::https://github.com/google/cpu_features/archive/v$_cpufeaturesver.tar.gz
- "
-builddir="$srcdir/volk-$pkgver"
-
-prepare() {
- default_prepare
-
- rm -r cpu_features
- ln -s "../cpu_features-$_cpufeaturesver" cpu_features
-}
-
-build() {
- cmake -B build \
- -DCMAKE_BUILD_TYPE=None \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --build build --target install
-}
-
-check() {
- cmake --build build --target test
-}
-
-sha512sums="
-60b9d3aae57a3c0b40d5d5830f585b141245eb61e3d9991576f2bd8daad93bbe9938c963427e150edaff8f93b5e3d851a5736950d6573a955c4516255f43c00d libvolk-2.5.0.tar.gz
-006a2e05253712cf605ecabccdda63dd9325445f8d145d5e2432c4342332e652f318810997321849be131082db435d88143020fdc85268fba204586cf37eef0d cpu_features-0.6.0.tar.gz
-"
diff --git a/testing/libwhich/APKBUILD b/testing/libwhich/APKBUILD
index cfc09c3bcdb..546008c2bec 100644
--- a/testing/libwhich/APKBUILD
+++ b/testing/libwhich/APKBUILD
@@ -1,16 +1,14 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=libwhich
-pkgver=1.1.0
+pkgver=1.2.0
pkgrel=0
pkgdesc="Like which(1), but for dynamic libraries"
url="https://github.com/vtjnash/libwhich"
arch="all"
license="MIT"
checkdepends="sed zlib-dev"
-source="https://github.com/vtjnash/libwhich/archive/v$pkgver/libwhich-$pkgver.tar.gz
- make-install.patch
- "
+source="https://github.com/vtjnash/libwhich/archive/v$pkgver/libwhich-$pkgver.tar.gz"
build() {
make
@@ -25,6 +23,5 @@ package() {
}
sha512sums="
-80beae0860d34d441d940b96114f9532f145a5e4d81bf810d336fdde9aec35d4bb8525e11c1bcb2063c282f2c5095aa62d951f913aca2f76812d7a20899d3d95 libwhich-1.1.0.tar.gz
-273bfcdc16a8e717950d58616af875f77326ed42068b02121a7e93baaf2d0702366d5029687659231308dfb8e1aa5727deea55acb2584b6fa8014f19a93a4879 make-install.patch
+004d6a0a06e7486f51118fd02167e2f3c0757956bbe40448f1443c7f8eeb8d322cdae1e61e1169e75166fc16ef10528b893198faadfb9024f8c39453e4204616 libwhich-1.2.0.tar.gz
"
diff --git a/testing/libwhich/make-install.patch b/testing/libwhich/make-install.patch
deleted file mode 100644
index 563defcd1a2..00000000000
--- a/testing/libwhich/make-install.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-Patch-Source: https://github.com/vtjnash/libwhich/pull/18
---
-From 969dc971df739d4a64e96ebf8423f372967fdb6c Mon Sep 17 00:00:00 2001
-From: Jakub Jirutka <jakub@jirutka.cz>
-Date: Sat, 21 May 2022 23:59:20 +0200
-Subject: [PATCH] add make install
-
-Resolves #10
----
- Makefile | 11 ++++++++++-
- 1 file changed, 10 insertions(+), 1 deletion(-)
-
-diff --git a/Makefile b/Makefile
-index 4297cf2..5314924 100644
---- a/Makefile
-+++ b/Makefile
-@@ -1,5 +1,10 @@
- default: libwhich
-
-+prefix := /usr
-+bindir := $(prefix)/bin
-+
-+INSTALL := install
-+
- TARGET = $(shell uname)
- override CFLAGS := -Wall -pedantic -O2 $(CFLAGS)
- override LDFLAGS := $(LDFLAGS)
-@@ -36,4 +41,8 @@ clean:
- check: libwhich
- ./test-libwhich.sh
-
--.PHONY: clean check default
-+install: libwhich
-+ mkdir -p $(DESTDIR)$(bindir)
-+ $(INSTALL) -m755 libwhich $(DESTDIR)$(bindir)/libwhich
-+
-+.PHONY: clean check default install
diff --git a/testing/libxaw3d/APKBUILD b/testing/libxaw3d/APKBUILD
deleted file mode 100644
index 0c7cffefece..00000000000
--- a/testing/libxaw3d/APKBUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-# Contributor: Grigory Kirillov <txgk@bk.ru>
-# Maintainer: Grigory Kirillov <txgk@bk.ru>
-pkgname=libxaw3d
-pkgver=1.6.3
-pkgrel=0
-pkgdesc="Toolkit that adds a 3D appearance and support for XPM images"
-url="https://directory.fsf.org/wiki/Xaw3d"
-arch="all"
-license="MIT"
-options="!check" # no test suite
-makedepends="libxmu-dev util-macros"
-source="https://xorg.freedesktop.org/archive/individual/lib/libXaw3d-$pkgver.tar.gz"
-subpackages="$pkgname-dev $pkgname-doc"
-builddir="$srcdir/libXaw3d-$pkgver"
-
-build() {
- ./configure \
- --target="$CTARGET" \
- --build="$CBUILD" \
- --host="$CHOST" \
- --prefix=/usr \
- --disable-static
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- install -Dm644 COPYING -t "$pkgdir"/usr/share/licenses/"$pkgname"/
-}
-
-sha512sums="
-f1f404121ca4d41e7d1b244c67c6bc198474c517d52e14ef5477ff53fac5c0ad3d7dbd11ed9391aa894ba8af5302de105a5dea8803685213bde2618c260c3360 libXaw3d-1.6.3.tar.gz
-"
diff --git a/testing/libxisf/APKBUILD b/testing/libxisf/APKBUILD
new file mode 100644
index 00000000000..dd7a614317a
--- /dev/null
+++ b/testing/libxisf/APKBUILD
@@ -0,0 +1,38 @@
+# Contributor: Clayton Craft <clayton@craftyguy.net>
+# Maintainer: Clayton Craft <clayton@craftyguy.net>
+pkgname=libxisf
+pkgver=0.2.12
+pkgrel=0
+pkgdesc="library to load and write XISF format from PixInsight"
+url="https://gitea.nouspiro.space/nou/libXISF"
+arch="all"
+license="GPL-3.0-or-later"
+makedepends="cmake samurai"
+subpackages="$pkgname-dev"
+source="$pkgname-$pkgver.tar.gz::https://gitea.nouspiro.space/nou/libXISF/archive/v$pkgver.tar.gz"
+builddir="$srcdir/$pkgname"
+
+build() {
+ if [ "$CBUILD" != "$CHOST" ]; then
+ local crossopts="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=None \
+ $crossopts
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+f946ecfb14a74d9d9526d11ae33a43453eb376988f77e679e231100df62c12ced2500a151d1f6cc3422c3858f99c83692e45f6e0504cefd0871b10b69615682a libxisf-0.2.12.tar.gz
+"
diff --git a/testing/libxml++/APKBUILD b/testing/libxml++/APKBUILD
index 0c9be67e674..0054c103359 100644
--- a/testing/libxml++/APKBUILD
+++ b/testing/libxml++/APKBUILD
@@ -1,32 +1,40 @@
# Contributor: Francesco Colista <fcolista@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=libxml++
-pkgver=3.2.2
-pkgrel=0
+pkgver=5.0.3
+pkgrel=1
pkgdesc="C++ wrapper for the libxml XML parser library"
-url="http://libxmlplusplus.sourceforge.net/"
+url="https://libxmlplusplus.sourceforge.net/"
arch="all"
license="LGPL-2.1-or-later"
-makedepends="meson libxml2-dev glibmm-dev python3 perl doxygen graphviz"
-subpackages="$pkgname-dev $pkgname-doc"
+makedepends="
+ libxml2-dev
+ meson
+ mm-common
+ python3
+ "
+subpackages="$pkgname-dev"
source="https://download.gnome.org/sources/libxml++/${pkgver%.[0-9]*}/libxml++-$pkgver.tar.xz"
+options="!check" # fail against new libxml
build() {
abuild-meson \
+ -Db_lto=true \
-Dbuild-tests=true \
-Dbuild-examples=false \
- -Dbuild-documentation=true \
+ -Dbuild-documentation=false \
. output
- meson compile ${JOBS:+-j ${JOBS}} -C output
+ meson compile -C output
}
check() {
- meson test --no-rebuild -v -C output
+ meson test --no-rebuild --print-errorlogs -C output
}
package() {
DESTDIR="$pkgdir" meson install --no-rebuild -C output
- ln -s libxml++-3.0.pc "$pkgdir"/usr/lib/pkgconfig/libxml++.pc
}
-sha512sums="c000d438aae487b92de2a1c60277d5e3ad3bf93824fc8fa99684778ea2334a45bf621f8d253190bdadedc591772d9beee53a98ebc3e20015d2ca68e097c0a253 libxml++-3.2.2.tar.xz"
+sha512sums="
+418723a96f018fb8e332847d0ab601eda38c99d6be48c83b6cda6f07789e5ecac76bb417540e29d0abace2828a74eb1e08695ff2fc92ebf3e7458364547ef675 libxml++-5.0.3.tar.xz
+"
diff --git a/testing/libxmp/APKBUILD b/testing/libxmp/APKBUILD
index d070b070287..8bb63e845a3 100644
--- a/testing/libxmp/APKBUILD
+++ b/testing/libxmp/APKBUILD
@@ -1,36 +1,34 @@
# Maintainer: Dominika Liberda <ja@sdomi.pl>
# Contributor: Dominika Liberda <ja@sdomi.pl>
pkgname=libxmp
-pkgver=4.5.0
+pkgver=4.6.0
pkgrel=0
-pkgdesc="Libxmp is a library that renders module files to PCM data. "
+pkgdesc="Libxmp is a library that renders module files to PCM data"
url="https://github.com/libxmp/libxmp/"
arch="all"
license="LGPL-2.1-or-later"
-makedepends="autoconf"
-source="https://github.com/libxmp/libxmp/archive/refs/tags/libxmp-$pkgver.tar.gz"
+makedepends="cmake samurai"
subpackages="$pkgname-dev"
-builddir="$srcdir/$pkgname-$pkgname-$pkgver/"
-
-prepare() {
- default_prepare
- autoconf
-}
+source="https://github.com/libxmp/libxmp/releases/download/libxmp-$pkgver/libxmp-$pkgver.tar.gz"
build() {
- ./configure prefix=/usr
- make
+ CFLAGS="$CFLAGS -flto=auto -DNDEBUG" \
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DBUILD_STATIC=OFF \
+ -DWITH_UNIT_TESTS="$(want_check && echo ON || echo OFF)"
+ cmake --build build
}
-package() {
- make install DESTDIR="$pkgdir" PREFIX=/usr
+check() {
+ ctest --test-dir build --output-on-failure
}
-check() {
- cd test
- make
+package() {
+ DESTDIR="$pkgdir" cmake --install build
}
sha512sums="
-2dbc5caae67293b1b518bc8b2192208806ca55ade2a654c0be450a694725194066d1d665f781a2f879638f61ae0917bc3f5e4bd69e182d0ca2971801fd66c458 libxmp-4.5.0.tar.gz
+d287544c9b569515f1a3fa92d8d930097b252e84f86cba5dd70e9b4460d0fa70754ece45dcc7ec314e434d821b43207d700afb12c9df80b467d73e9d029baafe libxmp-4.6.0.tar.gz
"
diff --git a/testing/libzn_poly/APKBUILD b/testing/libzn_poly/APKBUILD
new file mode 100644
index 00000000000..8870c93ca45
--- /dev/null
+++ b/testing/libzn_poly/APKBUILD
@@ -0,0 +1,45 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
+pkgname=libzn_poly
+pkgver=0.9.2
+pkgrel=2
+pkgdesc="Library for polynomial arithmetic over Z/nZ"
+url="https://gitlab.com/sagemath/zn_poly"
+arch="all"
+# https://gitlab.com/sagemath/zn_poly/-/blob/master/COPYING
+license="( GPL-2.0-only OR GPL-3.0-only ) AND GPL-2.0-or-later AND LGPL-2.1-or-later"
+makedepends="gmp-dev python3"
+subpackages="$pkgname-static $pkgname-dev"
+source="https://gitlab.com/sagemath/zn_poly/-/archive/$pkgver/zn_poly-$pkgver.tar.gz"
+builddir="$srcdir/zn_poly-$pkgver"
+
+build() {
+ ## We need to explicitly set PIC because ld yields:
+ # src/misc.o: warning: relocation against `ZNP_version_string' in read-only section `.text'
+ # src/mulmid.o: relocation R_X86_64_PC32 against symbol `ZNP_tuning_info' can not be used when making a shared object; recompile with -fPIC
+ # final link failed: bad value
+ export CFLAGS="$CFLAGS -fPIC"
+
+ python3 makemakefile.py \
+ --cflags="${CFLAGS/-Os/-O3}" \
+ --cxxflags="${CXXFLAGS/-Os/-O3}" \
+ --ldflags="$LDFLAGS" > GNUmakefile
+ make all libzn_poly.so
+}
+
+check() {
+ make check
+}
+
+package() {
+ install -Dm644 include/zn_poly.h -t "$pkgdir"/usr/include/zn_poly
+ install -Dm644 include/wide_arith.h -t "$pkgdir"/usr/include/zn_poly
+ install -Dm755 libzn_poly.a -t "$pkgdir"/usr/lib
+ install -Dm755 libzn_poly-"$pkgver".so -t "$pkgdir"/usr/lib
+ ln -s libzn_poly-"$pkgver".so "$pkgdir"/usr/lib/libzn_poly-"${pkgver%.*}".so
+ ln -s libzn_poly-"${pkgver%.*}".so "$pkgdir"/usr/lib/libzn_poly.so
+}
+
+sha512sums="
+472994bdefdcc353983a5c831af0a49777582c422d069867802a268d8ab4c7b040cd88284dc066632e893d3a4cf5b4a88ac5f1910504b8b5d3c84306c56333bd zn_poly-0.9.2.tar.gz
+"
diff --git a/testing/libzookeeper/APKBUILD b/testing/libzookeeper/APKBUILD
deleted file mode 100644
index 17d9d55aaab..00000000000
--- a/testing/libzookeeper/APKBUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-# Contributor: Maciej Klak <klak.maciej@gmail.com>
-# Maintainer: Maciej Klak <klak.maciej@gmail.com>
-pkgname=libzookeeper
-pkgver=3.4.14
-pkgrel=1
-pkgdesc="The Apache ZooKeeper system for distributed coordination is a high-performance service for building distributed applications."
-url="https://zookeeper.apache.org"
-arch="all"
-license="Apache-2.0"
-subpackages="$pkgname-dev"
-options="!check" # No test suite
-source="https://archive.apache.org/dist/zookeeper/zookeeper-$pkgver/zookeeper-$pkgver.tar.gz
- fix-sprintf-overflow.patch"
-builddir="$srcdir/zookeeper-$pkgver/zookeeper-client/zookeeper-client-c"
-
-prepare() {
- default_prepare
- update_config_guess
- update_config_sub
-}
-
-build() {
- ./configure --prefix=/usr
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="b2e03d95f8cf18b97a46e2f53871cef5a5da9d5d80b97009375aed7fb35368c440ca944c7e8b64efabbc065f6fb98bb86239f7c1491f0490efc71876d5a7f424 zookeeper-3.4.14.tar.gz
-91c6ef3f4c8edf1e95ccbd85fc961760f21f4943631fc8a7f6e2a7984ca0fc6b381075ac55f7b91c6439e9c7dc2fdb74d016238250e5c156bbd1f4bc11e2abaa fix-sprintf-overflow.patch"
diff --git a/testing/libzookeeper/fix-sprintf-overflow.patch b/testing/libzookeeper/fix-sprintf-overflow.patch
deleted file mode 100644
index b0ea6db1e0c..00000000000
--- a/testing/libzookeeper/fix-sprintf-overflow.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/src/zookeeper.c
-+++ b/src/zookeeper.c
-@@ -3477,7 +3477,7 @@
-
- static const char* format_endpoint_info(const struct sockaddr_storage* ep)
- {
-- static char buf[128];
-+ static char buf[128 + 6]; // include space for the port :xxxxx
- char addrstr[128];
- void *inaddr;
- #ifdef WIN32
diff --git a/testing/licenseheaders/APKBUILD b/testing/licenseheaders/APKBUILD
index f66adf5afe3..50d198a4470 100644
--- a/testing/licenseheaders/APKBUILD
+++ b/testing/licenseheaders/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Rasmus Thomsen <oss@cogitri.dev>
-# Maintainer: Rasmus Thomsen <oss@cogitri.dev>
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=licenseheaders
-pkgver=0.8.6
-pkgrel=1
+pkgver=0.8.8
+pkgrel=3
pkgdesc="Add/Replace license headers in a directory tree of source files"
url="https://github.com/johann-petrak/licenseheaders"
arch="noarch"
@@ -10,6 +10,7 @@ license="MIT"
depends="python3 py3-regex"
makedepends="py3-setuptools"
options="!check" # no tests
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/l/licenseheaders/licenseheaders-$pkgver.tar.gz"
build() {
@@ -17,7 +18,9 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="84f0250e332910c8814be1acc27c3c69a2b4ec4d565a9ba2fc04076cf3de4625ee6d0ffd39666a9f6bd91600c526e76a9960a58be087498eec959923cf4885a4 licenseheaders-0.8.6.tar.gz"
+sha512sums="
+3894d843493a7ac27763bc02265de2b7169989b1e6868146e64e4092355bc665e37b7d82e23c81f70040696298530d5ac424c255d8494573b5ace0abf93bc071 licenseheaders-0.8.8.tar.gz
+"
diff --git a/testing/lidarr/0001-disable-restart.patch b/testing/lidarr/0001-disable-restart.patch
new file mode 100644
index 00000000000..8dc5aebe628
--- /dev/null
+++ b/testing/lidarr/0001-disable-restart.patch
@@ -0,0 +1,20 @@
+Disable the restart functionality so the daemon can manage it.
+
+---
+ src/NzbDrone.Core/Lifecycle/LifecycleService.cs | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/src/NzbDrone.Core/Lifecycle/LifecycleService.cs b/src/NzbDrone.Core/Lifecycle/LifecycleService.cs
+index 9ed36a42e..565641284 100644
+--- a/src/NzbDrone.Core/Lifecycle/LifecycleService.cs
++++ b/src/NzbDrone.Core/Lifecycle/LifecycleService.cs
+@@ -46,8 +46,7 @@ public void Shutdown()
+ public void Restart()
+ {
+ _logger.Info("Restart requested.");
+-
+- _eventAggregator.PublishEvent(new ApplicationShutdownRequested(true));
++ _eventAggregator.PublishEvent(new ApplicationShutdownRequested());
+
+ if (_runtimeInfo.IsWindowsService)
+ {
diff --git a/testing/lidarr/APKBUILD b/testing/lidarr/APKBUILD
new file mode 100644
index 00000000000..7d933812801
--- /dev/null
+++ b/testing/lidarr/APKBUILD
@@ -0,0 +1,102 @@
+# Contributor: Fabricio Silva <hi@fabricio.dev>
+# Maintainer: Fabricio Silva <hi@fabricio.dev>
+pkgname=lidarr
+pkgver=2.1.7.4030
+pkgrel=0
+pkgdesc="Music download automation for usenet and torrents."
+url="https://github.com/Lidarr/Lidarr"
+arch="x86_64 aarch64 armv7"
+license="GPL-3.0-only"
+options="net !check" # no tests
+depends="
+ aspnetcore6-runtime
+ chromaprint
+ sqlite-libs
+ "
+makedepends="
+ dotnet6-sdk
+ yarn
+ "
+subpackages="$pkgname-openrc"
+install="$pkgname.pre-install"
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/Lidarr/Lidarr/archive/refs/tags/v$pkgver.tar.gz
+ 0001-disable-restart.patch
+ lidarr.initd
+ lidarr.confd
+ package_info
+ "
+builddir="$srcdir/Lidarr-$pkgver"
+pkgusers="lidarr"
+pkggroups="lidarr"
+
+# map arch to dotnet
+case $CARCH in
+ x86_64) _dotnet_arch="x64" ;;
+ aarch64) _dotnet_arch="arm64" ;;
+ armv7) _dotnet_arch="arm" ;;
+ *) _dotnet_arch="$CARCH" ;;
+esac
+
+# custom variables
+_runtime="linux-musl-$_dotnet_arch"
+_framework="net6.0"
+_output="_output"
+_artifacts="$_output/$_framework/$_runtime/publish"
+
+prepare() {
+ default_prepare
+
+ # increase max opened files
+ ulimit -n 4096
+
+ # replace version info
+ local buildprops=src/Directory.Build.props
+ sed -i "/<AssemblyVersion>/s/>.*<\//>$pkgver<\//" "$buildprops"
+ sed -i "/<AssemblyConfiguration>/s/>.*<\//>master<\//" "$buildprops"
+
+ export BROWSERSLIST_IGNORE_OLD_DATA=true
+ yarn install --frozen-lockfile --network-timeout 120000
+}
+
+build() {
+ dotnet build src \
+ -p:RuntimeIdentifiers="$_runtime" \
+ -p:Configuration=Release \
+ -p:SelfContained=false \
+ -t:PublishAllRids
+ yarn build --env production --no-stats
+
+ # use fpcalc from chromaprint package
+ rm -f "$_artifacts"/fpcalc
+
+ # cleanup
+ find "$_artifacts" \( \
+ -name "ServiceUninstall.*" -o \
+ -name "ServiceInstall.*" -o \
+ -name "Lidarr.Windows.*" \) -delete
+
+ mv "$_output"/UI "$_artifacts"
+}
+
+package() {
+ local DESTDIR="$pkgdir"/usr/lib/lidarr
+
+ # use package_info to disable update feature
+ install -Dm644 "$srcdir"/package_info "$DESTDIR"/package_info
+ echo "PackageVersion=$pkgver-r$pkgrel" >>"$DESTDIR"/package_info
+
+ cp -af "$_artifacts" "$DESTDIR"/bin
+ chown -R "$pkgusers:$pkggroups" "$DESTDIR"
+
+ install -Dm755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
+ install -Dm644 "$srcdir"/$pkgname.confd "$pkgdir"/etc/conf.d/$pkgname
+}
+
+sha512sums="
+0f3a1ba1f0f8675c1a445e015583e443e51a0f4355df753cb2607d449e585cbded788644c7040a81b420334fcc79d61ae7755e63c1901292b7b2c847f7ba818c lidarr-2.1.7.4030.tar.gz
+753520379a6c5f2899b4ddfd820d5573598a32cb105f74c6fd978a3f2c98895cf709ef2d9afe2bae8c4856da86cb6a1364f5713ea7ef6a36bb21b5a5840c1471 0001-disable-restart.patch
+194dce13e5220d71ffe262d40dbd1b124166f158500a420a8032279baa8f046c1772857cb7f4ab9428384481b962ff4939de0e2cdc6197f91cd35d1c0871a8e4 lidarr.initd
+babbb145648ad296b53271db5c642edddb9d0a5173479c4e383c48aab1d6b616c176e1ef73ae78078f41b4e6ca0e5768a96b36d844a3669f59179226ba8e97ad lidarr.confd
+67c4dd1cf8259296d994c350dfd3962d23333071889ce0b4ef6b2f4cbb4349490c5dbe4dcc202c99bab7a5c4b7611be56d7c8835b2b13924526c45311db1c3fb package_info
+"
diff --git a/testing/lidarr/lidarr.confd b/testing/lidarr/lidarr.confd
new file mode 100644
index 00000000000..d4201334c6e
--- /dev/null
+++ b/testing/lidarr/lidarr.confd
@@ -0,0 +1,10 @@
+# Lidarr configuration options
+
+command_user="lidarr:lidarr" # user:group
+directory="/var/lib/lidarr"
+umask=0002
+supervisor="supervise-daemon"
+
+#logdir="/var/log/lidarr"
+#error_log="$logdir/error.log"
+#output_log="$logdir/output.log"
diff --git a/testing/lidarr/lidarr.initd b/testing/lidarr/lidarr.initd
new file mode 100644
index 00000000000..1363dbbf392
--- /dev/null
+++ b/testing/lidarr/lidarr.initd
@@ -0,0 +1,34 @@
+#!/sbin/openrc-run
+
+# fallback values for /etc/conf.d/lidarr
+: ${command_user:=lidarr:lidarr}
+: ${directory:=/var/lib/lidarr}
+: ${umask:=0002}
+
+name=lidarr
+description="Lidarr daemon"
+command="/usr/lib/lidarr/bin/Lidarr"
+command_args="-nobrowser -data=$directory"
+command_background=true
+pidfile="/run/$name.pid"
+
+depend() {
+ need net
+ use dns logger netmount
+}
+
+start_pre() {
+ checkpath -d -o "$command_user" "$directory"
+
+ if [ -n "$logdir" ]; then
+ checkpath -d -o "$command_user" "$logdir"
+ fi
+
+ if [ -n "$output_log" ]; then
+ checkpath -f -o "$command_user" "$output_log"
+ fi
+
+ if [ -n "$error_log" ]; then
+ checkpath -f -o "$command_user" "$error_log"
+ fi
+}
diff --git a/testing/lidarr/lidarr.pre-install b/testing/lidarr/lidarr.pre-install
new file mode 100644
index 00000000000..6ba2680d0e0
--- /dev/null
+++ b/testing/lidarr/lidarr.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S lidarr 2>/dev/null
+adduser -S -D -h /var/lib/lidarr -s /sbin/nologin -G lidarr -g lidarr lidarr 2>/dev/null
+
+exit 0
diff --git a/testing/lidarr/package_info b/testing/lidarr/package_info
new file mode 100644
index 00000000000..c2e444817cd
--- /dev/null
+++ b/testing/lidarr/package_info
@@ -0,0 +1,4 @@
+# PackageVersion is added by APKBUILD
+PackageAuthor=[alpine](https://pkgs.alpinelinux.org/packages)
+UpdateMethod=External
+Branch=master
diff --git a/testing/lightdm-settings/APKBUILD b/testing/lightdm-settings/APKBUILD
new file mode 100644
index 00000000000..0281759f2c6
--- /dev/null
+++ b/testing/lightdm-settings/APKBUILD
@@ -0,0 +1,35 @@
+# Contributor: Jakko <jahau@rocketmail.com>
+# Maintainer: Jakko <jahau@rocketmail.com>
+pkgname=lightdm-settings
+pkgver=2.0.2
+pkgrel=0
+pkgdesc="LightDM configuration tool – supports slick-greeter only"
+url="https://github.com/linuxmint/lightdm-settings"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="py3-setproctitle xrandr"
+makedepends="gettext-dev"
+subpackages="$pkgname-lang"
+source="$pkgname-$pkgver.tar.gz::https://github.com/linuxmint/lightdm-settings/archive/refs/tags/$pkgver.tar.gz"
+options="!check" # no test suite
+
+build() {
+ make
+}
+
+package() {
+ install -Dm755 usr/bin/lightdm-settings \
+ "$pkgdir"/usr/bin/lightdm-settings
+
+ install -Dm755 usr/lib/lightdm-settings/SettingsWidgets.py \
+ "$pkgdir"/usr/lib/lightdm-settings/SettingsWidgets.py
+
+ install -Dm755 usr/lib/lightdm-settings/lightdm-settings \
+ "$pkgdir"/usr/lib/lightdm-settings/lightdm-settings
+
+ cp -a usr/share "$pkgdir"/usr/share
+}
+
+sha512sums="
+aa64955f26bb6ea47ae9136e8299f48b3eaa803ca913a646af09f61d447a80bde67fa1d54c494577c7d72533e834d05c230031e252739dbe5389473b4f4bd55a lightdm-settings-2.0.2.tar.gz
+"
diff --git a/testing/lighthouse/APKBUILD b/testing/lighthouse/APKBUILD
deleted file mode 100644
index 6a3c04f6caf..00000000000
--- a/testing/lighthouse/APKBUILD
+++ /dev/null
@@ -1,42 +0,0 @@
-# Contributor: Oleg Titov <oleg.titov@gmail.com>
-# Maintainer: Oleg Titov <oleg.titov@gmail.com>
-pkgname=lighthouse
-pkgver=2.2.1
-pkgrel=0
-pkgdesc="Ethereum 2.0 Client"
-url="https://lighthouse.sigmaprime.io/"
-arch="x86_64 aarch64" # limited by upstream
-license="Apache-2.0"
-makedepends="cargo clang-dev cmake openssl-dev protoc"
-options="!check" # disable check as it takes too long
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/sigp/lighthouse/archive/v$pkgver/lighthouse-$pkgver.tar.gz"
-
-# secfixes:
-# 2.2.0-r0:
-# - CVE-2022-0778
-
-export OPENSSL_NO_VENDOR=true
-export RUSTFLAGS="$RUSTFLAGS -L /usr/lib/"
-
-build() {
- cargo build --release --locked
-}
-
-check() {
- cargo test --release --locked \
- --workspace \
- --exclude ef_tests \
- --exclude eth1 \
- --exclude genesis
-}
-
-package() {
- install -D -m755 "target/release/lighthouse" "$pkgdir/usr/bin/lighthouse"
-
- install -Dm 644 -t "$pkgdir/usr/share/doc/lighthouse" README.md
-}
-
-sha512sums="
-d4c549eb1a0dd3d2edd32ef60f058cdb129e7e14d5b05f10ff1271bd6d3bdd42e6bb7616b443ee246e6a37f3c517f133567a27b92c234d72afefad9754f07ec2 lighthouse-2.2.1.tar.gz
-"
diff --git a/testing/lilv/APKBUILD b/testing/lilv/APKBUILD
deleted file mode 100644
index f083baf2185..00000000000
--- a/testing/lilv/APKBUILD
+++ /dev/null
@@ -1,24 +0,0 @@
-# Contributor: David Demelier <markand@malikania.fr>
-# Maintainer: David Demelier <markand@malikania.fr>
-pkgname=lilv
-pkgver=0.24.12
-pkgrel=3
-pkgdesc="C library for simpler use of LV2 plugins"
-url="https://drobilla.net/software/lilv"
-arch="all"
-license="ISC"
-makedepends="lv2-dev python3 serd-dev libsndfile-dev sord-dev sratom-dev"
-subpackages="$pkgname-dev $pkgname-doc"
-source="http://download.drobilla.net/lilv-$pkgver.tar.bz2"
-options="!check" # No tests
-
-build() {
- python3 waf configure --prefix=/usr
- python3 waf build
-}
-
-package() {
- python3 waf install --destdir="$pkgdir"
-}
-
-sha512sums="ea22db4e995792b62d60d793169c792549b8fb0255c2cf7a85780dd149811921e2fae5eaea0fb83465f01b14dfa66361af3be40bf7cb3733e98655b943f4faee lilv-0.24.12.tar.bz2"
diff --git a/testing/limkd/APKBUILD b/testing/limkd/APKBUILD
new file mode 100644
index 00000000000..cd324239eb0
--- /dev/null
+++ b/testing/limkd/APKBUILD
@@ -0,0 +1,35 @@
+# Maintainer: Miles Alan <m@milesalan.com>
+pkgname=limkd
+pkgver=0.1.2
+pkgrel=0
+pkgdesc="Libinput multipress key daemon"
+url="https://git.sr.ht/~mil/limkd"
+arch="aarch64 x86_64" # Limited by zig aport
+license="GPL-3.0-or-later"
+makedepends="
+ libinput-dev
+ libevdev-dev
+ zig
+ "
+source="
+ $pkgname-$pkgver.tar.gz::https://git.sr.ht/~mil/limkd/archive/$pkgver.tar.gz
+ "
+subpackages="$pkgname-doc"
+
+# We may want other than "baseline" for other targets, when enabled by zig
+case "$CARCH" in
+ aarch64|x86_64) cputarget=baseline ;;
+esac
+
+build() {
+ zig build -Drelease-safe=true ${cputarget:+-Dcpu="$cputarget"}
+}
+
+package() {
+ install -Dm755 zig-out/bin/limkd -t "$pkgdir/usr/bin/"
+ install -Dm644 limkd.1 -t "$pkgdir/usr/share/man/man1/"
+}
+
+sha512sums="
+2b4bdfef19759e12607e125318d4fbb45b0ea897c81c0d45a6f67d262c2225ed02bc785276a3ce5c8051b33ab9d0b6d6c20b928d136d08fec226e9d7c82756ab limkd-0.1.2.tar.gz
+"
diff --git a/testing/limnoria/APKBUILD b/testing/limnoria/APKBUILD
index 550a9bb441c..cf47f4009c5 100644
--- a/testing/limnoria/APKBUILD
+++ b/testing/limnoria/APKBUILD
@@ -1,9 +1,9 @@
# Contributor: Anjandev Momi <anjan@momi.ca>
# Maintainer: Anjandev Momi <anjan@momi.ca>
pkgname=limnoria
-pkgver=20220427
-_pkgver=2022-04-27
-pkgrel=0
+pkgver=20220927
+_pkgver=2022-09-27
+pkgrel=3
pkgdesc="A robust, full-featured, and user/programmer-friendly Python IRC bot, with many existing plugins"
url="https://limnoria.net/"
arch="noarch"
@@ -11,7 +11,7 @@ license="BSD-3-Clause"
depends="python3 py3-cryptography"
makedepends="py3-setuptools"
checkdepends="py3-pytest py3-mock"
-subpackages="$pkgname-doc"
+subpackages="$pkgname-doc $pkgname-pyc"
source="https://github.com/progval/Limnoria/archive/refs/tags/master-$_pkgver.tar.gz"
builddir="$srcdir/Limnoria-master-$_pkgver"
options="!check" # check requires installing limnoria before testing
@@ -26,9 +26,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
-d4f617cec32ebfc67c738b542a55d2a1cd92a287a107dc84d516a1431abe0e4f440fa7b4f2a4b7fce18f24582cfdcb2ad2ed66ff2779e6a64ba7788840c1adf3 master-2022-04-27.tar.gz
+9e8d57c34d1ff23e1772be618d9f9a8fae909200d3002ea97a95a5ba6545781d68194c4c796fa7f8683a0f3a267566ade01dd74f26110e7e0febef8ff739d88a master-2022-09-27.tar.gz
"
diff --git a/testing/links-graphics/APKBUILD b/testing/links-graphics/APKBUILD
index 770abd75678..fd1ca8757dd 100644
--- a/testing/links-graphics/APKBUILD
+++ b/testing/links-graphics/APKBUILD
@@ -1,25 +1,38 @@
# Contributor: Jeremy O'Brien <neutral@fastmail.com>
-# Maintainer: Jeremy O'Brien <neutral@fastmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=links-graphics
-pkgver=2.20.1
+pkgver=2.29
pkgrel=1
pkgdesc="Web browser running in both graphics and text mode"
-builddir="$srcdir"/links-$pkgver
-url="http://atrey.karlin.mff.cuni.cz/~clock/twibright/links"
+url="http://links.twibright.com/"
arch="all"
-options="!check" # No test suite.
license="GPL-2.0-or-later"
+makedepends="
+ bzip2-dev
+ jpeg-dev
+ libevent-dev
+ libpng-dev
+ openssl-dev
+ xorg-server-dev
+ zlib-dev
+ zstd-dev
+ "
subpackages="$pkgname-doc"
-makedepends="bzip2-dev openssl-dev zlib-dev libevent-dev zstd-dev xorg-server-dev jpeg-dev libpng-dev"
-provides="links"
source="http://links.twibright.com/download/links-$pkgver.tar.bz2"
+builddir="$srcdir/links-$pkgver"
+options="!check" # No test suite.
+
+provides="links"
+provider_priority=20
build() {
./configure \
--build=$CBUILD \
--host=$CHOST \
--prefix=/usr \
+ --sysconfdir=/etc \
--mandir=/usr/share/man \
+ --localstatedir=/var \
--disable-javascript \
--enable-graphics \
--with-x \
@@ -32,4 +45,7 @@ build() {
package() {
make DESTDIR="$pkgdir" install
}
-sha512sums="c7258e303a2012e9016385abd1e8882ffec47dd3baf479a54448742e41b03508d874387af6ea97c7ef9c4d37f2eecbe7bc0121d923df79b0f455f4f466747ca2 links-2.20.1.tar.bz2"
+
+sha512sums="
+5ea8b2fd0eb74d9dc2b45614aef6ee878fe686dff9bcee75ac6ea01f6a7331670f7709233d31986fc64ad86ce549616a4471057837b6caf15af6d1c5c503ac75 links-2.29.tar.bz2
+"
diff --git a/testing/linphone/APKBUILD b/testing/linphone/APKBUILD
index ac159b403d2..da6d0fdff83 100644
--- a/testing/linphone/APKBUILD
+++ b/testing/linphone/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Francesco Colista <fcolista@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=linphone
-pkgver=4.5.16
+pkgver=5.3.38
pkgrel=0
pkgdesc="An opensource SIP phone for voice/video calls and instant messaging"
url="https://linphone.org/"
@@ -9,41 +9,58 @@ url="https://linphone.org/"
arch="all !riscv64"
license="GPL-2.0-or-later"
options="!check" # no test available
-makedepends="cmake ortp-dev readline-dev sqlite-dev
- bctoolbox-dev libxml2-dev zlib-dev libnotify-dev
- speex-dev mediastreamer2-dev belle-sip-dev belcard-dev belr-dev
- libxv-dev v4l-utils-dev graphviz-dev xerces-c-dev"
-subpackages="$pkgname-dev"
-source="https://gitlab.linphone.org/BC/public/liblinphone/-/archive/$pkgver/liblinphone-$pkgver.tar.gz"
+# needed for linphonec
+depends="belcard"
+makedepends="
+ bctoolbox-dev
+ belcard-dev
+ belle-sip-dev
+ belr-dev
+ cmake
+ graphviz-dev
+ libnotify-dev
+ libxml2-dev
+ libxv-dev
+ mediastreamer2-dev
+ ortp-dev
+ readline-dev
+ samurai
+ speex-dev
+ sqlite-dev
+ v4l-utils-dev
+ xerces-c-dev
+ zlib-dev
+ zxing-cpp-dev
+ "
+subpackages="$pkgname-dev $pkgname-libs"
+source="https://gitlab.linphone.org/BC/public/liblinphone/-/archive/$pkgver/liblinphone-$pkgver.tar.gz
+ fix-cmake-path.patch
+ "
builddir="$srcdir/lib$pkgname-$pkgver"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
- -DCMAKE_SKIP_BUILD_RPATH=ON \
- -DENABLE_SHARED=YES \
- -DENABLE_STATIC=NO \
+ -DCMAKE_SKIP_RPATH=ON \
-DENABLE_CONSOLE_UI=YES \
- -DENABLE_TOOLS=YES \
+ -DENABLE_CXX_WRAPPER=NO \
-DENABLE_DAEMON=YES \
- -DENABLE_SQLITE_STORAGE=YES \
- -DENABLE_STRICT=NO \
- -DENABLE_VIDEO=YES \
- -DENABLE_VCARD=YES \
- -DENABLE_NLS=NO \
+ -DENABLE_DB_STORAGE=NO \
+ -DENABLE_DOC=NO \
+ -DENABLE_FLEXIAPI=NO \
+ -DENABLE_GTK_UI=NO \
-DENABLE_LIME=NO \
+ -DENABLE_LIME_X3DH=NO \
-DENABLE_NOTIFY=YES \
- -DENABLE_GTK_UI=NO \
- -DENABLE_ASSISTANT=NO \
+ -DBUILD_SHARED_LIBS=YES \
+ -DENABLE_STATIC=NO \
-DENABLE_STRICT=NO \
- -DENABLE_ROOTCA_DOWNLOAD=NO \
- -DENABLE_ADVANCED_IM=NO \
- -DENABLE_DB_STORAGE=NO \
- -DENABLE_LIME_X3DH=NO \
+ -DENABLE_STRICT=NO \
+ -DENABLE_TOOLS=YES \
-DENABLE_UNIT_TESTS=NO \
- -DENABLE_CXX_WRAPPER=NO \
- -DENABLE_DOC=NO
+ -DENABLE_VCARD=YES \
+ -DENABLE_VIDEO=YES
cmake --build build
}
@@ -53,13 +70,12 @@ package() {
dev() {
default_dev
- mkdir -p "$subpkgdir"/usr/lib/cmake/Linphone
- mv "$pkgdir"/usr/share/Linphone/cmake/* "$subpkgdir"/usr/lib/cmake/Linphone
# Fix includes
- sed -i -e 's/INTERFACE_INCLUDE_DIRECTORIES.*/INTERFACE_INCLUDE_DIRECTORIES\ \"\/usr\/include\"/g' "$subpkgdir"/usr/lib/cmake/Linphone/LinphoneTargets.cmake
+ sed -i -e 's/INTERFACE_INCLUDE_DIRECTORIES.*/INTERFACE_INCLUDE_DIRECTORIES\ \"\/usr\/include\"/g' "$subpkgdir"/usr/lib/cmake/LibLinphone/LibLinphoneTargets.cmake
}
sha512sums="
-1640866589e28e814a8fe780acebc4ab6b9fb7383d26d2d5f6f2682e43f5ecf9bb1277c3a86ec1821bf3ce61e12282f56ad95a3b3761f105a5bdcad445f2a0a8 liblinphone-4.5.16.tar.gz
+3a73cae2665bcc40939000bd7d474551499cfc5a075e49ee6d4afa723c127fa599589e0fabd15de34f28d87529bfe002fa8cdfa4ae42ec31cf734fbeaa862f74 liblinphone-5.3.38.tar.gz
+57f3c1ab1172133167991429150e3bbff6213817deea988c302d367a6a0b1315030f2027b6493a64c9b41f3d112d95eeea4a20ae3dc07c3ebb3be3aa95e42d3f fix-cmake-path.patch
"
diff --git a/testing/linphone/fix-cmake-path.patch b/testing/linphone/fix-cmake-path.patch
new file mode 100644
index 00000000000..5ee0f9786ab
--- /dev/null
+++ b/testing/linphone/fix-cmake-path.patch
@@ -0,0 +1,31 @@
+Adapted from https://github.com/OpenMandrivaAssociation/linphone/blob/master/liblinphone-5.3.6-cmake-config-location.patch
+
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -397,7 +397,7 @@
+ endif()
+
+ include(CMakePackageConfigHelpers)
+-set(CMAKE_MODULES_INSTALL_DIR "${CMAKE_INSTALL_DATADIR}/${PROJECT_NAME}/cmake")
++set(CMAKE_MODULES_INSTALL_DIR "${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}/")
+ configure_package_config_file("cmake/${PROJECT_NAME}Config.cmake.in" "${PROJECT_BINARY_DIR}/${PROJECT_NAME}Config.cmake"
+ INSTALL_DESTINATION "${CMAKE_MODULES_INSTALL_DIR}"
+ PATH_VARS LIBLINPHONE_PLUGINS_DIR
+--- a/wrappers/cpp/CMakeLists.txt
++++ b/wrappers/cpp/CMakeLists.txt
+@@ -98,12 +98,12 @@
+
+ install(EXPORT LinphoneCxxTargets
+ FILE LinphoneCxxTargets.cmake
+- DESTINATION "${CMAKE_INSTALL_DATADIR}/LinphoneCxx/cmake"
++ DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/LinphoneCxx"
+ )
+ install(FILES
+ "${CMAKE_CURRENT_BINARY_DIR}/LinphoneCxxConfig.cmake"
+ "${CMAKE_CURRENT_BINARY_DIR}/LinphoneCxxVersion.cmake"
+- DESTINATION "${CMAKE_INSTALL_DATADIR}/LinphoneCxx/cmake"
++ DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/LinphoneCxx"
+ )
+
+ if(ENABLE_DOC OR ENABLE_CXX_WRAPPER)
+
diff --git a/testing/linux-amlogic/0001-ARM64-defconfig-enable-CEC-support.patch b/testing/linux-amlogic/0001-ARM64-defconfig-enable-CEC-support.patch
deleted file mode 100644
index 41791a5c25a..00000000000
--- a/testing/linux-amlogic/0001-ARM64-defconfig-enable-CEC-support.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From 0c815d66dbaa54b53e4b54105992ce44dfe8c36f Mon Sep 17 00:00:00 2001
-From: Jerome Brunet <jbrunet@baylibre.com>
-Date: Mon, 13 Nov 2017 12:09:40 +0100
-Subject: [PATCH] ARM64: defconfig: enable CEC support
-
-Turn on CONFIG_CEC_SUPPORT and CONFIG_CEC_PLATFORM_DRIVERS
-Turn on CONFIG_VIDEO_MESON_AO_CEC as module
-Turn on CONFIG_DRM_DW_HDMI_CEC as module
-
-Signed-off-by: Jerome Brunet <jbrunet@baylibre.com>
-Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
-
----
- arch/arm64/configs/defconfig | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
-index db8d364..ab1cb51 100644
---- a/arch/arm64/configs/defconfig
-+++ b/arch/arm64/configs/defconfig
-@@ -413,6 +413,7 @@ CONFIG_MEDIA_SUPPORT=m
- CONFIG_MEDIA_CAMERA_SUPPORT=y
- CONFIG_MEDIA_ANALOG_TV_SUPPORT=y
- CONFIG_MEDIA_DIGITAL_TV_SUPPORT=y
-+CONFIG_MEDIA_CEC_SUPPORT=y
- CONFIG_MEDIA_CONTROLLER=y
- CONFIG_VIDEO_V4L2_SUBDEV_API=y
- # CONFIG_DVB_NET is not set
-@@ -424,6 +425,8 @@ CONFIG_VIDEO_SAMSUNG_S5P_MFC=m
- CONFIG_VIDEO_SAMSUNG_EXYNOS_GSC=m
- CONFIG_VIDEO_RENESAS_FCP=m
- CONFIG_VIDEO_RENESAS_VSP1=m
-+CONFIG_CEC_PLATFORM_DRIVERS=y
-+CONFIG_VIDEO_MESON_AO_CEC=m
- CONFIG_DRM=m
- CONFIG_DRM_NOUVEAU=m
- CONFIG_DRM_EXYNOS=m
-@@ -444,6 +447,7 @@ CONFIG_DRM_RCAR_LVDS=m
- CONFIG_DRM_TEGRA=m
- CONFIG_DRM_PANEL_SIMPLE=m
- CONFIG_DRM_I2C_ADV7511=m
-+CONFIG_DRM_DW_HDMI_CEC=m
- CONFIG_DRM_VC4=m
- CONFIG_DRM_HISI_HIBMC=m
- CONFIG_DRM_HISI_KIRIN=m
diff --git a/testing/linux-amlogic/0001-arm64-dts-meson-Fix-IRQ-trigger-type-for-macirq.patch b/testing/linux-amlogic/0001-arm64-dts-meson-Fix-IRQ-trigger-type-for-macirq.patch
deleted file mode 100644
index 5bcec06be2a..00000000000
--- a/testing/linux-amlogic/0001-arm64-dts-meson-Fix-IRQ-trigger-type-for-macirq.patch
+++ /dev/null
@@ -1,62 +0,0 @@
-From e2c70445f3533e8fa62f8c645713508148f8e4f6 Mon Sep 17 00:00:00 2001
-From: Carlo Caione <ccaione@baylibre.com>
-Date: Tue, 4 Dec 2018 16:04:46 +0000
-Subject: [PATCH] arm64: dts: meson: Fix IRQ trigger type for macirq
-
-A long running stress test on a custom board shipping an AXG SoCs and a
-Realtek RTL8211F PHY revealed that after a few hours the connection
-speed would drop drastically, from ~1000Mbps to ~3Mbps. At the same time
-the 'macirq' (eth0) IRQ would stop being triggered at all and as
-consequence the GMAC IRQs never ACKed.
-
-After a painful investigation the problem seemed to be due to a wrong
-defined IRQ type for the GMAC IRQ that should be LEVEL_HIGH instead of
-EDGE_RISING.
-
-Signed-off-by: Carlo Caione <ccaione@baylibre.com>
-Acked-by: Neil Armstrong <narmstrong@baylibre.com>
----
- arch/arm/boot/dts/meson.dtsi | 2 +-
- arch/arm64/boot/dts/amlogic/meson-axg.dtsi | 2 +-
- arch/arm64/boot/dts/amlogic/meson-gx.dtsi | 2 +-
- 3 files changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/arch/arm/boot/dts/meson.dtsi b/arch/arm/boot/dts/meson.dtsi
-index 0d9faf1a51ea..a86b89086334 100644
---- a/arch/arm/boot/dts/meson.dtsi
-+++ b/arch/arm/boot/dts/meson.dtsi
-@@ -263,7 +263,7 @@
- compatible = "amlogic,meson6-dwmac", "snps,dwmac";
- reg = <0xc9410000 0x10000
- 0xc1108108 0x4>;
-- interrupts = <GIC_SPI 8 IRQ_TYPE_EDGE_RISING>;
-+ interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
- interrupt-names = "macirq";
- status = "disabled";
- };
-diff --git a/arch/arm64/boot/dts/amlogic/meson-axg.dtsi b/arch/arm64/boot/dts/amlogic/meson-axg.dtsi
-index c518130e5ce7..81dcbde9e674 100644
---- a/arch/arm64/boot/dts/amlogic/meson-axg.dtsi
-+++ b/arch/arm64/boot/dts/amlogic/meson-axg.dtsi
-@@ -461,7 +461,7 @@
- compatible = "amlogic,meson-gxbb-dwmac", "snps,dwmac";
- reg = <0x0 0xff3f0000 0x0 0x10000
- 0x0 0xff634540 0x0 0x8>;
-- interrupts = <GIC_SPI 8 IRQ_TYPE_EDGE_RISING>;
-+ interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
- interrupt-names = "macirq";
- clocks = <&clkc CLKID_ETH>,
- <&clkc CLKID_FCLK_DIV2>,
-diff --git a/arch/arm64/boot/dts/amlogic/meson-gx.dtsi b/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
-index 5d2820ef9a88..d03737acbae1 100644
---- a/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
-+++ b/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
-@@ -511,7 +511,7 @@
- compatible = "amlogic,meson-gx-dwmac", "amlogic,meson-gxbb-dwmac", "snps,dwmac";
- reg = <0x0 0xc9410000 0x0 0x10000
- 0x0 0xc8834540 0x0 0x4>;
-- interrupts = <GIC_SPI 8 IRQ_TYPE_EDGE_RISING>;
-+ interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
- interrupt-names = "macirq";
- status = "disabled";
- };
diff --git a/testing/linux-amlogic/0001-drm-meson-fix-max-mode_config-height-width.patch b/testing/linux-amlogic/0001-drm-meson-fix-max-mode_config-height-width.patch
deleted file mode 100644
index b9c5c2ca500..00000000000
--- a/testing/linux-amlogic/0001-drm-meson-fix-max-mode_config-height-width.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From a2b8a766c2fb57096c065e539d93f9f4fbd7ace4 Mon Sep 17 00:00:00 2001
-From: Neil Armstrong <narmstrong@baylibre.com>
-Date: Thu, 4 Oct 2018 10:42:43 +0200
-Subject: [PATCH] drm/meson: fix max mode_config height/width
-
-The mode_config max_width/max_height determines the maximum framebuffer
-size the pixel reader can handle. But the values were set thinking they
-were determining the maximum screen dimensions.
-
-This patch changes the values to the maximum height/width the CANVAS block
-can handle rounded to some coherent values.
-
-Fixes: a41e82e6c457 ("drm/meson: Add support for components")
-Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
----
- drivers/gpu/drm/meson/meson_drv.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/drivers/gpu/drm/meson/meson_drv.c b/drivers/gpu/drm/meson/meson_drv.c
-index 3ee4d4a4ecba..b3c04ecc75f3 100644
---- a/drivers/gpu/drm/meson/meson_drv.c
-+++ b/drivers/gpu/drm/meson/meson_drv.c
-@@ -263,8 +263,8 @@ static int meson_drv_bind_master(struct device *dev, bool has_components)
- goto free_drm;
-
- drm_mode_config_init(drm);
-- drm->mode_config.max_width = 3840;
-- drm->mode_config.max_height = 2160;
-+ drm->mode_config.max_width = 16384;
-+ drm->mode_config.max_height = 8192;
- drm->mode_config.funcs = &meson_mode_config_funcs;
-
- /* Hardware Initialization */
diff --git a/testing/linux-amlogic/0002-ASoC-meson-add-meson-audio-core-driver.patch b/testing/linux-amlogic/0002-ASoC-meson-add-meson-audio-core-driver.patch
deleted file mode 100644
index 6acbf80c86e..00000000000
--- a/testing/linux-amlogic/0002-ASoC-meson-add-meson-audio-core-driver.patch
+++ /dev/null
@@ -1,288 +0,0 @@
-From 4770a464de7b87bc849e4e110f197ef9fa7bccf6 Mon Sep 17 00:00:00 2001
-From: Jerome Brunet <jbrunet@baylibre.com>
-Date: Thu, 30 Mar 2017 11:49:55 +0200
-Subject: [PATCH] ASoC: meson: add meson audio core driver
-
-This patch adds support for the audio core driver for the Amlogic Meson SoC
-family. The purpose of this driver is to properly reset the audio block and
-provide register access for the different devices scattered in this address
-space. This includes output and input DMAs, pcm, i2s and spdif dai, card
-level routing, internal codec for the gxl variant
-
-For more information, please refer to the section 5 of the public datasheet
-of the S905 (gxbb). This datasheet is available here: [0].
-
-[0]: http://dn.odroid.com/S905/DataSheet/S905_Public_Datasheet_V1.1.4.pdf
-
-Signed-off-by: Jerome Brunet <jbrunet@baylibre.com>
-
----
- sound/soc/meson/Kconfig | 10 +++
- sound/soc/meson/Makefile | 4 +
- sound/soc/meson/audio-core.c | 190 +++++++++++++++++++++++++++++++++++++++++++
- sound/soc/meson/audio-core.h | 28 +++++++
- 4 files changed, 232 insertions(+)
- create mode 100644 sound/soc/meson/audio-core.c
- create mode 100644 sound/soc/meson/audio-core.h
-
-diff --git a/sound/soc/meson/Kconfig b/sound/soc/meson/Kconfig
-index 8af8bc3..ed432d4 100644
---- a/sound/soc/meson/Kconfig
-+++ b/sound/soc/meson/Kconfig
-@@ -63,3 +63,13 @@ config SND_MESON_AXG_SPDIFOUT
- in the Amlogic AXG SoC family
-
- endmenu
-+
-+menuconfig SND_SOC_MESON
-+ tristate "ASoC support for Amlogic Meson SoCs"
-+ depends on ARCH_MESON
-+ select MFD_CORE
-+ select REGMAP_MMIO
-+ help
-+ Say Y or M if you want to add support for codecs attached to
-+ the Amlogic Meson SoCs Audio interfaces. You will also need to
-+ select the audio interfaces to support below.
-diff --git a/sound/soc/meson/Makefile b/sound/soc/meson/Makefile
-index c5e003b..768d7c4 100644
---- a/sound/soc/meson/Makefile
-+++ b/sound/soc/meson/Makefile
-@@ -19,3 +19,7 @@ obj-$(CONFIG_SND_MESON_AXG_TDMIN) += snd-soc-meson-axg-tdmin.o
- obj-$(CONFIG_SND_MESON_AXG_TDMOUT) += snd-soc-meson-axg-tdmout.o
- obj-$(CONFIG_SND_MESON_AXG_SOUND_CARD) += snd-soc-meson-axg-sound-card.o
- obj-$(CONFIG_SND_MESON_AXG_SPDIFOUT) += snd-soc-meson-axg-spdifout.o
-+
-+snd-soc-meson-audio-core-objs := audio-core.o
-+
-+obj-$(CONFIG_SND_SOC_MESON) += snd-soc-meson-audio-core.o
-\ No newline at end of file
-diff --git a/sound/soc/meson/audio-core.c b/sound/soc/meson/audio-core.c
-new file mode 100644
-index 0000000..99993ec
---- /dev/null
-+++ b/sound/soc/meson/audio-core.c
-@@ -0,0 +1,190 @@
-+/*
-+ * Copyright (C) 2017 BayLibre, SAS
-+ * Author: Jerome Brunet <jbrunet@baylibre.com>
-+ * Copyright (C) 2017 Amlogic, Inc. All rights reserved.
-+ *
-+ * This program is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU General Public License as
-+ * published by the Free Software Foundation; either version 2 of the
-+ * License, or (at your option) any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful, but
-+ * WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+ * General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, see <http://www.gnu.org/licenses/>.
-+ */
-+
-+#include <linux/clk.h>
-+#include <linux/mfd/core.h>
-+#include <linux/module.h>
-+#include <linux/of.h>
-+#include <linux/platform_device.h>
-+#include <linux/regmap.h>
-+#include <linux/reset.h>
-+
-+#include "audio-core.h"
-+
-+#define DRV_NAME "meson-audio-core"
-+
-+static const char * const acore_clock_names[] = { "aiu_top",
-+ "aiu_glue",
-+ "audin" };
-+
-+static int meson_acore_init_clocks(struct device *dev)
-+{
-+ struct clk *clock;
-+ int i, ret;
-+
-+ for (i = 0; i < ARRAY_SIZE(acore_clock_names); i++) {
-+ clock = devm_clk_get(dev, acore_clock_names[i]);
-+ if (IS_ERR(clock)) {
-+ if (PTR_ERR(clock) != -EPROBE_DEFER)
-+ dev_err(dev, "Failed to get %s clock\n",
-+ acore_clock_names[i]);
-+ return PTR_ERR(clock);
-+ }
-+
-+ ret = clk_prepare_enable(clock);
-+ if (ret) {
-+ dev_err(dev, "Failed to enable %s clock\n",
-+ acore_clock_names[i]);
-+ return ret;
-+ }
-+
-+ ret = devm_add_action_or_reset(dev,
-+ (void(*)(void *))clk_disable_unprepare,
-+ clock);
-+ if (ret)
-+ return ret;
-+ }
-+
-+ return 0;
-+}
-+
-+static const char * const acore_reset_names[] = { "aiu",
-+ "audin" };
-+
-+static int meson_acore_init_resets(struct device *dev)
-+{
-+ struct reset_control *reset;
-+ int i, ret;
-+
-+ for (i = 0; i < ARRAY_SIZE(acore_reset_names); i++) {
-+ reset = devm_reset_control_get_exclusive(dev,
-+ acore_reset_names[i]);
-+ if (IS_ERR(reset)) {
-+ if (PTR_ERR(reset) != -EPROBE_DEFER)
-+ dev_err(dev, "Failed to get %s reset\n",
-+ acore_reset_names[i]);
-+ return PTR_ERR(reset);
-+ }
-+
-+ ret = reset_control_reset(reset);
-+ if (ret) {
-+ dev_err(dev, "Failed to pulse %s reset\n",
-+ acore_reset_names[i]);
-+ return ret;
-+ }
-+ }
-+
-+ return 0;
-+}
-+
-+static const struct regmap_config meson_acore_regmap_config = {
-+ .reg_bits = 32,
-+ .val_bits = 32,
-+ .reg_stride = 4,
-+};
-+
-+static const struct mfd_cell meson_acore_devs[] = {
-+ {
-+ .name = "meson-i2s-dai",
-+ .of_compatible = "amlogic,meson-i2s-dai",
-+ },
-+ {
-+ .name = "meson-spdif-dai",
-+ .of_compatible = "amlogic,meson-spdif-dai",
-+ },
-+ {
-+ .name = "meson-aiu-i2s-dma",
-+ .of_compatible = "amlogic,meson-aiu-i2s-dma",
-+ },
-+ {
-+ .name = "meson-aiu-spdif-dma",
-+ .of_compatible = "amlogic,meson-aiu-spdif-dma",
-+ },
-+};
-+
-+static int meson_acore_probe(struct platform_device *pdev)
-+{
-+ struct device *dev = &pdev->dev;
-+ struct meson_audio_core_data *data;
-+ struct resource *res;
-+ void __iomem *regs;
-+ int ret;
-+
-+ data = devm_kzalloc(dev, sizeof(*data), GFP_KERNEL);
-+ if (!data)
-+ return -ENOMEM;
-+ platform_set_drvdata(pdev, data);
-+
-+ ret = meson_acore_init_clocks(dev);
-+ if (ret)
-+ return ret;
-+
-+ ret = meson_acore_init_resets(dev);
-+ if (ret)
-+ return ret;
-+
-+ res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "aiu");
-+ regs = devm_ioremap_resource(dev, res);
-+ if (IS_ERR(regs))
-+ return PTR_ERR(regs);
-+
-+ data->aiu = devm_regmap_init_mmio(dev, regs,
-+ &meson_acore_regmap_config);
-+ if (IS_ERR(data->aiu)) {
-+ dev_err(dev, "Couldn't create the AIU regmap\n");
-+ return PTR_ERR(data->aiu);
-+ }
-+
-+ res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "audin");
-+ regs = devm_ioremap_resource(dev, res);
-+ if (IS_ERR(regs))
-+ return PTR_ERR(regs);
-+
-+ data->audin = devm_regmap_init_mmio(dev, regs,
-+ &meson_acore_regmap_config);
-+ if (IS_ERR(data->audin)) {
-+ dev_err(dev, "Couldn't create the AUDIN regmap\n");
-+ return PTR_ERR(data->audin);
-+ }
-+
-+ return devm_mfd_add_devices(dev, PLATFORM_DEVID_AUTO, meson_acore_devs,
-+ ARRAY_SIZE(meson_acore_devs), NULL, 0,
-+ NULL);
-+}
-+
-+static const struct of_device_id meson_acore_of_match[] = {
-+ { .compatible = "amlogic,meson-audio-core", },
-+ { .compatible = "amlogic,meson-gxbb-audio-core", },
-+ { .compatible = "amlogic,meson-gxl-audio-core", },
-+ {}
-+};
-+MODULE_DEVICE_TABLE(of, meson_acore_of_match);
-+
-+static struct platform_driver meson_acore_pdrv = {
-+ .probe = meson_acore_probe,
-+ .driver = {
-+ .name = DRV_NAME,
-+ .of_match_table = meson_acore_of_match,
-+ },
-+};
-+module_platform_driver(meson_acore_pdrv);
-+
-+MODULE_DESCRIPTION("Meson Audio Core Driver");
-+MODULE_AUTHOR("Jerome Brunet <jbrunet@baylibre.com>");
-+MODULE_LICENSE("GPL v2");
-diff --git a/sound/soc/meson/audio-core.h b/sound/soc/meson/audio-core.h
-new file mode 100644
-index 0000000..6e7a24c
---- /dev/null
-+++ b/sound/soc/meson/audio-core.h
-@@ -0,0 +1,28 @@
-+/*
-+ * Copyright (C) 2017 BayLibre, SAS
-+ * Author: Jerome Brunet <jbrunet@baylibre.com>
-+ * Copyright (C) 2017 Amlogic, Inc. All rights reserved.
-+ *
-+ * This program is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU General Public License as
-+ * published by the Free Software Foundation; either version 2 of the
-+ * License, or (at your option) any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful, but
-+ * WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+ * General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, see <http://www.gnu.org/licenses/>.
-+ */
-+
-+#ifndef _MESON_AUDIO_CORE_H_
-+#define _MESON_AUDIO_CORE_H_
-+
-+struct meson_audio_core_data {
-+ struct regmap *aiu;
-+ struct regmap *audin;
-+};
-+
-+#endif /* _MESON_AUDIO_CORE_H_ */
diff --git a/testing/linux-amlogic/0003-ASoC-meson-add-register-definitions.patch b/testing/linux-amlogic/0003-ASoC-meson-add-register-definitions.patch
deleted file mode 100644
index cb4027a2c4d..00000000000
--- a/testing/linux-amlogic/0003-ASoC-meson-add-register-definitions.patch
+++ /dev/null
@@ -1,358 +0,0 @@
-From dc1d93ea8dc61686364e2659c1ac1392681b64b4 Mon Sep 17 00:00:00 2001
-From: Jerome Brunet <jbrunet@baylibre.com>
-Date: Thu, 30 Mar 2017 12:00:10 +0200
-Subject: [PATCH] ASoC: meson: add register definitions
-
-Add the register definition for the AIU and AUDIN blocks
-
-Signed-off-by: Jerome Brunet <jbrunet@baylibre.com>
-
----
- sound/soc/meson/aiu-regs.h | 182 +++++++++++++++++++++++++++++++++++++++++++
- sound/soc/meson/audin-regs.h | 148 +++++++++++++++++++++++++++++++++++
- 2 files changed, 330 insertions(+)
- create mode 100644 sound/soc/meson/aiu-regs.h
- create mode 100644 sound/soc/meson/audin-regs.h
-
-diff --git a/sound/soc/meson/aiu-regs.h b/sound/soc/meson/aiu-regs.h
-new file mode 100644
-index 0000000..67391e6
---- /dev/null
-+++ b/sound/soc/meson/aiu-regs.h
-@@ -0,0 +1,182 @@
-+/*
-+ * Copyright (C) 2017 BayLibre, SAS
-+ * Author: Jerome Brunet <jbrunet@baylibre.com>
-+ * Copyright (C) 2017 Amlogic, Inc. All rights reserved.
-+ *
-+ * This program is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU General Public License as
-+ * published by the Free Software Foundation; either version 2 of the
-+ * License, or (at your option) any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful, but
-+ * WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+ * General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, see <http://www.gnu.org/licenses/>.
-+ */
-+
-+#ifndef _AIU_REGS_H_
-+#define _AIU_REGS_H_
-+
-+#define AIU_958_BPF 0x000
-+#define AIU_958_BRST 0x004
-+#define AIU_958_LENGTH 0x008
-+#define AIU_958_PADDSIZE 0x00C
-+#define AIU_958_MISC 0x010
-+#define AIU_958_FORCE_LEFT 0x014 /* Unknown */
-+#define AIU_958_DISCARD_NUM 0x018
-+#define AIU_958_DCU_FF_CTRL 0x01C
-+#define AIU_958_CHSTAT_L0 0x020
-+#define AIU_958_CHSTAT_L1 0x024
-+#define AIU_958_CTRL 0x028
-+#define AIU_958_RPT 0x02C
-+#define AIU_I2S_MUTE_SWAP 0x030
-+#define AIU_I2S_SOURCE_DESC 0x034
-+#define AIU_I2S_MED_CTRL 0x038
-+#define AIU_I2S_MED_THRESH 0x03C
-+#define AIU_I2S_DAC_CFG 0x040
-+#define AIU_I2S_SYNC 0x044 /* Unknown */
-+#define AIU_I2S_MISC 0x048
-+#define AIU_I2S_OUT_CFG 0x04C
-+#define AIU_I2S_FF_CTRL 0x050 /* Unknown */
-+#define AIU_RST_SOFT 0x054
-+#define AIU_CLK_CTRL 0x058
-+#define AIU_MIX_ADCCFG 0x05C
-+#define AIU_MIX_CTRL 0x060
-+#define AIU_CLK_CTRL_MORE 0x064
-+#define AIU_958_POP 0x068
-+#define AIU_MIX_GAIN 0x06C
-+#define AIU_958_SYNWORD1 0x070
-+#define AIU_958_SYNWORD2 0x074
-+#define AIU_958_SYNWORD3 0x078
-+#define AIU_958_SYNWORD1_MASK 0x07C
-+#define AIU_958_SYNWORD2_MASK 0x080
-+#define AIU_958_SYNWORD3_MASK 0x084
-+#define AIU_958_FFRDOUT_THD 0x088
-+#define AIU_958_LENGTH_PER_PAUSE 0x08C
-+#define AIU_958_PAUSE_NUM 0x090
-+#define AIU_958_PAUSE_PAYLOAD 0x094
-+#define AIU_958_AUTO_PAUSE 0x098
-+#define AIU_958_PAUSE_PD_LENGTH 0x09C
-+#define AIU_CODEC_DAC_LRCLK_CTRL 0x0A0
-+#define AIU_CODEC_ADC_LRCLK_CTRL 0x0A4
-+#define AIU_HDMI_CLK_DATA_CTRL 0x0A8
-+#define AIU_CODEC_CLK_DATA_CTRL 0x0AC
-+#define AIU_ACODEC_CTRL 0x0B0
-+#define AIU_958_CHSTAT_R0 0x0C0
-+#define AIU_958_CHSTAT_R1 0x0C4
-+#define AIU_958_VALID_CTRL 0x0C8
-+#define AIU_AUDIO_AMP_REG0 0x0F0 /* Unknown */
-+#define AIU_AUDIO_AMP_REG1 0x0F4 /* Unknown */
-+#define AIU_AUDIO_AMP_REG2 0x0F8 /* Unknown */
-+#define AIU_AUDIO_AMP_REG3 0x0FC /* Unknown */
-+#define AIU_AIFIFO2_CTRL 0x100
-+#define AIU_AIFIFO2_STATUS 0x104
-+#define AIU_AIFIFO2_GBIT 0x108
-+#define AIU_AIFIFO2_CLB 0x10C
-+#define AIU_CRC_CTRL 0x110
-+#define AIU_CRC_STATUS 0x114
-+#define AIU_CRC_SHIFT_REG 0x118
-+#define AIU_CRC_IREG 0x11C
-+#define AIU_CRC_CAL_REG1 0x120
-+#define AIU_CRC_CAL_REG0 0x124
-+#define AIU_CRC_POLY_COEF1 0x128
-+#define AIU_CRC_POLY_COEF0 0x12C
-+#define AIU_CRC_BIT_SIZE1 0x130
-+#define AIU_CRC_BIT_SIZE0 0x134
-+#define AIU_CRC_BIT_CNT1 0x138
-+#define AIU_CRC_BIT_CNT0 0x13C
-+#define AIU_AMCLK_GATE_HI 0x140
-+#define AIU_AMCLK_GATE_LO 0x144
-+#define AIU_AMCLK_MSR 0x148
-+#define AIU_AUDAC_CTRL0 0x14C /* Unknown */
-+#define AIU_DELTA_SIGMA0 0x154 /* Unknown */
-+#define AIU_DELTA_SIGMA1 0x158 /* Unknown */
-+#define AIU_DELTA_SIGMA2 0x15C /* Unknown */
-+#define AIU_DELTA_SIGMA3 0x160 /* Unknown */
-+#define AIU_DELTA_SIGMA4 0x164 /* Unknown */
-+#define AIU_DELTA_SIGMA5 0x168 /* Unknown */
-+#define AIU_DELTA_SIGMA6 0x16C /* Unknown */
-+#define AIU_DELTA_SIGMA7 0x170 /* Unknown */
-+#define AIU_DELTA_SIGMA_LCNTS 0x174 /* Unknown */
-+#define AIU_DELTA_SIGMA_RCNTS 0x178 /* Unknown */
-+#define AIU_MEM_I2S_START_PTR 0x180
-+#define AIU_MEM_I2S_RD_PTR 0x184
-+#define AIU_MEM_I2S_END_PTR 0x188
-+#define AIU_MEM_I2S_MASKS 0x18C
-+#define AIU_MEM_I2S_CONTROL 0x190
-+#define AIU_MEM_IEC958_START_PTR 0x194
-+#define AIU_MEM_IEC958_RD_PTR 0x198
-+#define AIU_MEM_IEC958_END_PTR 0x19C
-+#define AIU_MEM_IEC958_MASKS 0x1A0
-+#define AIU_MEM_IEC958_CONTROL 0x1A4
-+#define AIU_MEM_AIFIFO2_START_PTR 0x1A8
-+#define AIU_MEM_AIFIFO2_CURR_PTR 0x1AC
-+#define AIU_MEM_AIFIFO2_END_PTR 0x1B0
-+#define AIU_MEM_AIFIFO2_BYTES_AVAIL 0x1B4
-+#define AIU_MEM_AIFIFO2_CONTROL 0x1B8
-+#define AIU_MEM_AIFIFO2_MAN_WP 0x1BC
-+#define AIU_MEM_AIFIFO2_MAN_RP 0x1C0
-+#define AIU_MEM_AIFIFO2_LEVEL 0x1C4
-+#define AIU_MEM_AIFIFO2_BUF_CNTL 0x1C8
-+#define AIU_MEM_I2S_MAN_WP 0x1CC
-+#define AIU_MEM_I2S_MAN_RP 0x1D0
-+#define AIU_MEM_I2S_LEVEL 0x1D4
-+#define AIU_MEM_I2S_BUF_CNTL 0x1D8
-+#define AIU_MEM_I2S_BUF_WRAP_COUNT 0x1DC
-+#define AIU_MEM_I2S_MEM_CTL 0x1E0
-+#define AIU_MEM_IEC958_MEM_CTL 0x1E4
-+#define AIU_MEM_IEC958_WRAP_COUNT 0x1E8
-+#define AIU_MEM_IEC958_IRQ_LEVEL 0x1EC
-+#define AIU_MEM_IEC958_MAN_WP 0x1F0
-+#define AIU_MEM_IEC958_MAN_RP 0x1F4
-+#define AIU_MEM_IEC958_LEVEL 0x1F8
-+#define AIU_MEM_IEC958_BUF_CNTL 0x1FC
-+#define AIU_AIFIFO_CTRL 0x200
-+#define AIU_AIFIFO_STATUS 0x204
-+#define AIU_AIFIFO_GBIT 0x208
-+#define AIU_AIFIFO_CLB 0x20C
-+#define AIU_MEM_AIFIFO_START_PTR 0x210
-+#define AIU_MEM_AIFIFO_CURR_PTR 0x214
-+#define AIU_MEM_AIFIFO_END_PTR 0x218
-+#define AIU_MEM_AIFIFO_BYTES_AVAIL 0x21C
-+#define AIU_MEM_AIFIFO_CONTROL 0x220
-+#define AIU_MEM_AIFIFO_MAN_WP 0x224
-+#define AIU_MEM_AIFIFO_MAN_RP 0x228
-+#define AIU_MEM_AIFIFO_LEVEL 0x22C
-+#define AIU_MEM_AIFIFO_BUF_CNTL 0x230
-+#define AIU_MEM_AIFIFO_BUF_WRAP_COUNT 0x234
-+#define AIU_MEM_AIFIFO2_BUF_WRAP_COUNT 0x238
-+#define AIU_MEM_AIFIFO_MEM_CTL 0x23C
-+#define AIFIFO_TIME_STAMP_CNTL 0x240
-+#define AIFIFO_TIME_STAMP_SYNC_0 0x244
-+#define AIFIFO_TIME_STAMP_SYNC_1 0x248
-+#define AIFIFO_TIME_STAMP_0 0x24C
-+#define AIFIFO_TIME_STAMP_1 0x250
-+#define AIFIFO_TIME_STAMP_2 0x254
-+#define AIFIFO_TIME_STAMP_3 0x258
-+#define AIFIFO_TIME_STAMP_LENGTH 0x25C
-+#define AIFIFO2_TIME_STAMP_CNTL 0x260
-+#define AIFIFO2_TIME_STAMP_SYNC_0 0x264
-+#define AIFIFO2_TIME_STAMP_SYNC_1 0x268
-+#define AIFIFO2_TIME_STAMP_0 0x26C
-+#define AIFIFO2_TIME_STAMP_1 0x270
-+#define AIFIFO2_TIME_STAMP_2 0x274
-+#define AIFIFO2_TIME_STAMP_3 0x278
-+#define AIFIFO2_TIME_STAMP_LENGTH 0x27C
-+#define IEC958_TIME_STAMP_CNTL 0x280
-+#define IEC958_TIME_STAMP_SYNC_0 0x284
-+#define IEC958_TIME_STAMP_SYNC_1 0x288
-+#define IEC958_TIME_STAMP_0 0x28C
-+#define IEC958_TIME_STAMP_1 0x290
-+#define IEC958_TIME_STAMP_2 0x294
-+#define IEC958_TIME_STAMP_3 0x298
-+#define IEC958_TIME_STAMP_LENGTH 0x29C
-+#define AIU_MEM_AIFIFO2_MEM_CTL 0x2A0
-+#define AIU_I2S_CBUS_DDR_CNTL 0x2A4
-+#define AIU_I2S_CBUS_DDR_WDATA 0x2A8
-+#define AIU_I2S_CBUS_DDR_ADDR 0x2AC
-+
-+#endif /* _AIU_REGS_H_ */
-diff --git a/sound/soc/meson/audin-regs.h b/sound/soc/meson/audin-regs.h
-new file mode 100644
-index 0000000..f224610
---- /dev/null
-+++ b/sound/soc/meson/audin-regs.h
-@@ -0,0 +1,148 @@
-+/*
-+ * Copyright (C) 2017 BayLibre, SAS
-+ * Author: Jerome Brunet <jbrunet@baylibre.com>
-+ * Copyright (C) 2017 Amlogic, Inc. All rights reserved.
-+ *
-+ * This program is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU General Public License as
-+ * published by the Free Software Foundation; either version 2 of the
-+ * License, or (at your option) any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful, but
-+ * WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+ * General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, see <http://www.gnu.org/licenses/>.
-+ */
-+
-+#ifndef _AUDIN_REGS_H_
-+#define _AUDIN_REGS_H_
-+
-+/*
-+ * Note :
-+ * Datasheet issue page 196
-+ * AUDIN_MUTE_VAL 0x35 => impossible: Already assigned to AUDIN_FIFO1_PTR
-+ * AUDIN_FIFO1_PTR is more likely to be correct here since surrounding registers
-+ * also deal with AUDIN_FIFO1
-+ *
-+ * Clarification needed from Amlogic
-+ */
-+
-+#define AUDIN_SPDIF_MODE 0x000
-+#define AUDIN_SPDIF_FS_CLK_RLTN 0x004
-+#define AUDIN_SPDIF_CHNL_STS_A 0x008
-+#define AUDIN_SPDIF_CHNL_STS_B 0x00C
-+#define AUDIN_SPDIF_MISC 0x010
-+#define AUDIN_SPDIF_NPCM_PCPD 0x014
-+#define AUDIN_SPDIF_END 0x03C /* Unknown */
-+#define AUDIN_I2SIN_CTRL 0x040
-+#define AUDIN_SOURCE_SEL 0x044
-+#define AUDIN_DECODE_FORMAT 0x048
-+#define AUDIN_DECODE_CONTROL_STATUS 0x04C
-+#define AUDIN_DECODE_CHANNEL_STATUS_A_0 0x050
-+#define AUDIN_DECODE_CHANNEL_STATUS_A_1 0x054
-+#define AUDIN_DECODE_CHANNEL_STATUS_A_2 0x058
-+#define AUDIN_DECODE_CHANNEL_STATUS_A_3 0x05C
-+#define AUDIN_DECODE_CHANNEL_STATUS_A_4 0x060
-+#define AUDIN_DECODE_CHANNEL_STATUS_A_5 0x064
-+#define AUDIN_FIFO0_START 0x080
-+#define AUDIN_FIFO0_END 0x084
-+#define AUDIN_FIFO0_PTR 0x088
-+#define AUDIN_FIFO0_INTR 0x08C
-+#define AUDIN_FIFO0_RDPTR 0x090
-+#define AUDIN_FIFO0_CTRL 0x094
-+#define AUDIN_FIFO0_CTRL1 0x098
-+#define AUDIN_FIFO0_LVL0 0x09C
-+#define AUDIN_FIFO0_LVL1 0x0A0
-+#define AUDIN_FIFO0_LVL2 0x0A4
-+#define AUDIN_FIFO0_REQID 0x0C0
-+#define AUDIN_FIFO0_WRAP 0x0C4
-+#define AUDIN_FIFO1_START 0x0CC
-+#define AUDIN_FIFO1_END 0x0D0
-+#define AUDIN_FIFO1_PTR 0x0D4
-+#define AUDIN_FIFO1_INTR 0x0D8
-+#define AUDIN_FIFO1_RDPTR 0x0DC
-+#define AUDIN_FIFO1_CTRL 0x0E0
-+#define AUDIN_FIFO1_CTRL1 0x0E4
-+#define AUDIN_FIFO1_LVL0 0x100
-+#define AUDIN_FIFO1_LVL1 0x104
-+#define AUDIN_FIFO1_LVL2 0x108
-+#define AUDIN_FIFO1_REQID 0x10C
-+#define AUDIN_FIFO1_WRAP 0x110
-+#define AUDIN_FIFO2_START 0x114
-+#define AUDIN_FIFO2_END 0x118
-+#define AUDIN_FIFO2_PTR 0x11C
-+#define AUDIN_FIFO2_INTR 0x120
-+#define AUDIN_FIFO2_RDPTR 0x124
-+#define AUDIN_FIFO2_CTRL 0x128
-+#define AUDIN_FIFO2_CTRL1 0x12C
-+#define AUDIN_FIFO2_LVL0 0x130
-+#define AUDIN_FIFO2_LVL1 0x134
-+#define AUDIN_FIFO2_LVL2 0x138
-+#define AUDIN_FIFO2_REQID 0x13C
-+#define AUDIN_FIFO2_WRAP 0x140
-+#define AUDIN_INT_CTRL 0x144
-+#define AUDIN_FIFO_INT 0x148
-+#define PCMIN_CTRL0 0x180
-+#define PCMIN_CTRL1 0x184
-+#define PCMIN1_CTRL0 0x188
-+#define PCMIN1_CTRL1 0x18C
-+#define PCMOUT_CTRL0 0x1C0
-+#define PCMOUT_CTRL1 0x1C4
-+#define PCMOUT_CTRL2 0x1C8
-+#define PCMOUT_CTRL3 0x1CC
-+#define PCMOUT1_CTRL0 0x1D0
-+#define PCMOUT1_CTRL1 0x1D4
-+#define PCMOUT1_CTRL2 0x1D8
-+#define PCMOUT1_CTRL3 0x1DC
-+#define AUDOUT_CTRL 0x200
-+#define AUDOUT_CTRL1 0x204
-+#define AUDOUT_BUF0_STA 0x208
-+#define AUDOUT_BUF0_EDA 0x20C
-+#define AUDOUT_BUF0_WPTR 0x210
-+#define AUDOUT_BUF1_STA 0x214
-+#define AUDOUT_BUF1_EDA 0x218
-+#define AUDOUT_BUF1_WPTR 0x21C
-+#define AUDOUT_FIFO_RPTR 0x220
-+#define AUDOUT_INTR_PTR 0x224
-+#define AUDOUT_FIFO_STS 0x228
-+#define AUDOUT1_CTRL 0x240
-+#define AUDOUT1_CTRL1 0x244
-+#define AUDOUT1_BUF0_STA 0x248
-+#define AUDOUT1_BUF0_EDA 0x24C
-+#define AUDOUT1_BUF0_WPTR 0x250
-+#define AUDOUT1_BUF1_STA 0x254
-+#define AUDOUT1_BUF1_EDA 0x258
-+#define AUDOUT1_BUF1_WPTR 0x25C
-+#define AUDOUT1_FIFO_RPTR 0x260
-+#define AUDOUT1_INTR_PTR 0x264
-+#define AUDOUT1_FIFO_STS 0x268
-+#define AUDIN_HDMI_MEAS_CTRL 0x280
-+#define AUDIN_HDMI_MEAS_CYCLES_M1 0x284
-+#define AUDIN_HDMI_MEAS_INTR_MASKN 0x288
-+#define AUDIN_HDMI_MEAS_INTR_STAT 0x28C
-+#define AUDIN_HDMI_REF_CYCLES_STAT_0 0x290
-+#define AUDIN_HDMI_REF_CYCLES_STAT_1 0x294
-+#define AUDIN_HDMIRX_AFIFO_STAT 0x298
-+#define AUDIN_FIFO0_PIO_STS 0x2C0
-+#define AUDIN_FIFO0_PIO_RDL 0x2C4
-+#define AUDIN_FIFO0_PIO_RDH 0x2C8
-+#define AUDIN_FIFO1_PIO_STS 0x2CC
-+#define AUDIN_FIFO1_PIO_RDL 0x2D0
-+#define AUDIN_FIFO1_PIO_RDH 0x2D4
-+#define AUDIN_FIFO2_PIO_STS 0x2D8
-+#define AUDIN_FIFO2_PIO_RDL 0x2DC
-+#define AUDIN_FIFO2_PIO_RDH 0x2E0
-+#define AUDOUT_FIFO_PIO_STS 0x2E4
-+#define AUDOUT_FIFO_PIO_WRL 0x2E8
-+#define AUDOUT_FIFO_PIO_WRH 0x2EC
-+#define AUDOUT1_FIFO_PIO_STS 0x2F0 /* Unknown */
-+#define AUDOUT1_FIFO_PIO_WRL 0x2F4 /* Unknown */
-+#define AUDOUT1_FIFO_PIO_WRH 0x2F8 /* Unknown */
-+#define AUD_RESAMPLE_CTRL0 0x2FC
-+#define AUD_RESAMPLE_CTRL1 0x300
-+#define AUD_RESAMPLE_STATUS 0x304
-+
-+#endif /* _AUDIN_REGS_H_ */
diff --git a/testing/linux-amlogic/0004-ASoC-meson-add-aiu-i2s-dma-support.patch b/testing/linux-amlogic/0004-ASoC-meson-add-aiu-i2s-dma-support.patch
deleted file mode 100644
index 900659845e2..00000000000
--- a/testing/linux-amlogic/0004-ASoC-meson-add-aiu-i2s-dma-support.patch
+++ /dev/null
@@ -1,422 +0,0 @@
-From ef53207463b1ffa58dbc8b994cb470f35bf12420 Mon Sep 17 00:00:00 2001
-From: Jerome Brunet <jbrunet@baylibre.com>
-Date: Thu, 30 Mar 2017 12:14:40 +0200
-Subject: [PATCH] ASoC: meson: add aiu i2s dma support
-
-Add support for the i2s output dma which is part of the AIU block
-
-Signed-off-by: Jerome Brunet <jbrunet@baylibre.com>
-
----
- sound/soc/meson/Kconfig | 7 +
- sound/soc/meson/Makefile | 4 +-
- sound/soc/meson/aiu-i2s-dma.c | 370 ++++++++++++++++++++++++++++++++++++++++++
- 3 files changed, 380 insertions(+), 1 deletion(-)
- create mode 100644 sound/soc/meson/aiu-i2s-dma.c
-
-diff --git a/sound/soc/meson/Kconfig b/sound/soc/meson/Kconfig
-index ed432d4..6e030b5 100644
---- a/sound/soc/meson/Kconfig
-+++ b/sound/soc/meson/Kconfig
-@@ -73,3 +73,10 @@ menuconfig SND_SOC_MESON
- Say Y or M if you want to add support for codecs attached to
- the Amlogic Meson SoCs Audio interfaces. You will also need to
- select the audio interfaces to support below.
-+
-+config SND_SOC_MESON_I2S
-+ tristate "Meson i2s interface"
-+ depends on SND_SOC_MESON
-+ help
-+ Say Y or M if you want to add support for i2s dma driver for Amlogic
-+ Meson SoCs.
-diff --git a/sound/soc/meson/Makefile b/sound/soc/meson/Makefile
-index 768d7c4..5796007 100644
---- a/sound/soc/meson/Makefile
-+++ b/sound/soc/meson/Makefile
-@@ -21,5 +21,7 @@ obj-$(CONFIG_SND_MESON_AXG_SOUND_CARD) += snd-soc-meson-axg-sound-card.o
- obj-$(CONFIG_SND_MESON_AXG_SPDIFOUT) += snd-soc-meson-axg-spdifout.o
-
- snd-soc-meson-audio-core-objs := audio-core.o
-+snd-soc-meson-aiu-i2s-dma-objs := aiu-i2s-dma.o
-
--obj-$(CONFIG_SND_SOC_MESON) += snd-soc-meson-audio-core.o
-\ No newline at end of file
-+obj-$(CONFIG_SND_SOC_MESON) += snd-soc-meson-audio-core.o
-+obj-$(CONFIG_SND_SOC_MESON_I2S) += snd-soc-meson-aiu-i2s-dma.o
-\ No newline at end of file
-diff --git a/sound/soc/meson/aiu-i2s-dma.c b/sound/soc/meson/aiu-i2s-dma.c
-new file mode 100644
-index 0000000..2684bd0
---- /dev/null
-+++ b/sound/soc/meson/aiu-i2s-dma.c
-@@ -0,0 +1,370 @@
-+/*
-+ * Copyright (C) 2017 BayLibre, SAS
-+ * Author: Jerome Brunet <jbrunet@baylibre.com>
-+ * Copyright (C) 2017 Amlogic, Inc. All rights reserved.
-+ *
-+ * This program is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU General Public License as
-+ * published by the Free Software Foundation; either version 2 of the
-+ * License, or (at your option) any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful, but
-+ * WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+ * General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, see <http://www.gnu.org/licenses/>.
-+ */
-+
-+#include <linux/clk.h>
-+#include <linux/mfd/syscon.h>
-+#include <linux/module.h>
-+#include <linux/of.h>
-+#include <linux/platform_device.h>
-+#include <linux/regmap.h>
-+
-+#include <sound/pcm_params.h>
-+#include <sound/soc.h>
-+
-+#include "aiu-regs.h"
-+#include "audio-core.h"
-+
-+#define DRV_NAME "meson-aiu-i2s-dma"
-+
-+struct aiu_i2s_dma {
-+ struct meson_audio_core_data *core;
-+ struct clk *fast;
-+ int irq;
-+};
-+
-+#define AIU_MEM_I2S_BUF_CNTL_INIT BIT(0)
-+#define AIU_MEM_I2S_CONTROL_INIT BIT(0)
-+#define AIU_MEM_I2S_CONTROL_FILL_EN BIT(1)
-+#define AIU_MEM_I2S_CONTROL_EMPTY_EN BIT(2)
-+#define AIU_MEM_I2S_CONTROL_MODE_16BIT BIT(6)
-+#define AIU_MEM_I2S_CONTROL_BUSY BIT(7)
-+#define AIU_MEM_I2S_CONTROL_DATA_READY BIT(8)
-+#define AIU_MEM_I2S_CONTROL_LEVEL_CNTL BIT(9)
-+#define AIU_MEM_I2S_MASKS_IRQ_BLOCK_MASK GENMASK(31, 16)
-+#define AIU_MEM_I2S_MASKS_IRQ_BLOCK(n) ((n) << 16)
-+#define AIU_MEM_I2S_MASKS_CH_MEM_MASK GENMASK(15, 8)
-+#define AIU_MEM_I2S_MASKS_CH_MEM(ch) ((ch) << 8)
-+#define AIU_MEM_I2S_MASKS_CH_RD_MASK GENMASK(7, 0)
-+#define AIU_MEM_I2S_MASKS_CH_RD(ch) ((ch) << 0)
-+#define AIU_RST_SOFT_I2S_FAST_DOMAIN BIT(0)
-+#define AIU_RST_SOFT_I2S_SLOW_DOMAIN BIT(1)
-+
-+/*
-+ * The DMA works by i2s "blocks" (or DMA burst). The burst size and the memory
-+ * layout expected depends on the mode of operation.
-+ *
-+ * - Normal mode: The channels are expected to be packed in 32 bytes groups
-+ * interleaved the buffer. AIU_MEM_I2S_MASKS_CH_MEM is a bitfield representing
-+ * the channels present in memory. AIU_MEM_I2S_MASKS_CH_MEM represents the
-+ * channels read by the DMA. This is very flexible but the unsual memory layout
-+ * makes it less easy to deal with. The burst size is 32 bytes times the number
-+ * of channels read.
-+ *
-+ * - Split mode:
-+ * Classical channel interleaved frame organisation. In this mode,
-+ * AIU_MEM_I2S_MASKS_CH_MEM and AIU_MEM_I2S_MASKS_CH_MEM must be set to 0xff and
-+ * the burst size is fixed to 256 bytes. The input can be either 2 or 8
-+ * channels.
-+ *
-+ * The following driver implements the split mode.
-+ */
-+
-+#define AIU_I2S_DMA_BURST 256
-+
-+static struct snd_pcm_hardware aiu_i2s_dma_hw = {
-+ .info = (SNDRV_PCM_INFO_INTERLEAVED |
-+ SNDRV_PCM_INFO_MMAP |
-+ SNDRV_PCM_INFO_MMAP_VALID |
-+ SNDRV_PCM_INFO_PAUSE),
-+
-+ .formats = (SNDRV_PCM_FMTBIT_S16_LE |
-+ SNDRV_PCM_FMTBIT_S24_LE |
-+ SNDRV_PCM_FMTBIT_S32_LE),
-+
-+ /*
-+ * TODO: The DMA can change the endianness, the msb position
-+ * and deal with unsigned - support this later on
-+ */
-+
-+ .rate_min = 8000,
-+ .rate_max = 192000,
-+ .channels_min = 2,
-+ .channels_max = 8,
-+ .period_bytes_min = AIU_I2S_DMA_BURST,
-+ .period_bytes_max = AIU_I2S_DMA_BURST * 65535,
-+ .periods_min = 2,
-+ .periods_max = UINT_MAX,
-+ .buffer_bytes_max = 1 * 1024 * 1024,
-+ .fifo_size = 0,
-+};
-+
-+static struct aiu_i2s_dma *aiu_i2s_dma_priv(struct snd_pcm_substream *s)
-+{
-+ struct snd_soc_pcm_runtime *rtd = s->private_data;
-+ struct snd_soc_component *component = snd_soc_rtdcom_lookup(rtd, DRV_NAME);
-+
-+ return snd_soc_component_get_drvdata(component);
-+}
-+
-+static snd_pcm_uframes_t
-+aiu_i2s_dma_pointer(struct snd_pcm_substream *substream)
-+{
-+ struct snd_pcm_runtime *runtime = substream->runtime;
-+ struct aiu_i2s_dma *priv = aiu_i2s_dma_priv(substream);
-+ unsigned int addr;
-+ int ret;
-+
-+ ret = regmap_read(priv->core->aiu, AIU_MEM_I2S_RD_PTR,
-+ &addr);
-+ if (ret)
-+ return 0;
-+
-+ return bytes_to_frames(runtime, addr - (unsigned int)runtime->dma_addr);
-+}
-+
-+static void __dma_enable(struct aiu_i2s_dma *priv, bool enable)
-+{
-+ unsigned int en_mask = (AIU_MEM_I2S_CONTROL_FILL_EN |
-+ AIU_MEM_I2S_CONTROL_EMPTY_EN);
-+
-+ regmap_update_bits(priv->core->aiu, AIU_MEM_I2S_CONTROL, en_mask,
-+ enable ? en_mask : 0);
-+
-+}
-+
-+static int aiu_i2s_dma_trigger(struct snd_pcm_substream *substream, int cmd)
-+{
-+ struct aiu_i2s_dma *priv = aiu_i2s_dma_priv(substream);
-+
-+ switch (cmd) {
-+ case SNDRV_PCM_TRIGGER_START:
-+ case SNDRV_PCM_TRIGGER_RESUME:
-+ case SNDRV_PCM_TRIGGER_PAUSE_RELEASE:
-+ __dma_enable(priv, true);
-+ break;
-+ case SNDRV_PCM_TRIGGER_SUSPEND:
-+ case SNDRV_PCM_TRIGGER_PAUSE_PUSH:
-+ case SNDRV_PCM_TRIGGER_STOP:
-+ __dma_enable(priv, false);
-+ break;
-+ default:
-+ return -EINVAL;
-+ }
-+
-+ return 0;
-+}
-+
-+static void __dma_init_mem(struct aiu_i2s_dma *priv)
-+{
-+ regmap_update_bits(priv->core->aiu, AIU_MEM_I2S_CONTROL,
-+ AIU_MEM_I2S_CONTROL_INIT,
-+ AIU_MEM_I2S_CONTROL_INIT);
-+ regmap_update_bits(priv->core->aiu, AIU_MEM_I2S_BUF_CNTL,
-+ AIU_MEM_I2S_BUF_CNTL_INIT,
-+ AIU_MEM_I2S_BUF_CNTL_INIT);
-+
-+ regmap_update_bits(priv->core->aiu, AIU_MEM_I2S_CONTROL,
-+ AIU_MEM_I2S_CONTROL_INIT,
-+ 0);
-+ regmap_update_bits(priv->core->aiu, AIU_MEM_I2S_BUF_CNTL,
-+ AIU_MEM_I2S_BUF_CNTL_INIT,
-+ 0);
-+}
-+
-+static int aiu_i2s_dma_prepare(struct snd_pcm_substream *substream)
-+{
-+ struct aiu_i2s_dma *priv = aiu_i2s_dma_priv(substream);
-+
-+ __dma_init_mem(priv);
-+
-+ return 0;
-+}
-+
-+static int aiu_i2s_dma_hw_params(struct snd_pcm_substream *substream,
-+ struct snd_pcm_hw_params *params)
-+{
-+ struct snd_pcm_runtime *runtime = substream->runtime;
-+ struct aiu_i2s_dma *priv = aiu_i2s_dma_priv(substream);
-+ int ret;
-+ u32 burst_num, mem_ctl;
-+ dma_addr_t end_ptr;
-+
-+ ret = snd_pcm_lib_malloc_pages(substream, params_buffer_bytes(params));
-+ if (ret < 0)
-+ return ret;
-+
-+ /* Setup memory layout */
-+ if (params_physical_width(params) == 16)
-+ mem_ctl = AIU_MEM_I2S_CONTROL_MODE_16BIT;
-+ else
-+ mem_ctl = 0;
-+
-+ regmap_update_bits(priv->core->aiu, AIU_MEM_I2S_CONTROL,
-+ AIU_MEM_I2S_CONTROL_MODE_16BIT,
-+ mem_ctl);
-+
-+ /* Initialize memory pointers */
-+ regmap_write(priv->core->aiu, AIU_MEM_I2S_START_PTR, runtime->dma_addr);
-+ regmap_write(priv->core->aiu, AIU_MEM_I2S_RD_PTR, runtime->dma_addr);
-+
-+ /* The end pointer is the address of the last valid block */
-+ end_ptr = runtime->dma_addr + runtime->dma_bytes - AIU_I2S_DMA_BURST;
-+ regmap_write(priv->core->aiu, AIU_MEM_I2S_END_PTR, end_ptr);
-+
-+ /* Memory masks */
-+ burst_num = params_period_bytes(params) / AIU_I2S_DMA_BURST;
-+ regmap_write(priv->core->aiu, AIU_MEM_I2S_MASKS,
-+ AIU_MEM_I2S_MASKS_CH_RD(0xff) |
-+ AIU_MEM_I2S_MASKS_CH_MEM(0xff) |
-+ AIU_MEM_I2S_MASKS_IRQ_BLOCK(burst_num));
-+
-+ return 0;
-+}
-+
-+static int aiu_i2s_dma_hw_free(struct snd_pcm_substream *substream)
-+{
-+ return snd_pcm_lib_free_pages(substream);
-+}
-+
-+
-+static irqreturn_t aiu_i2s_dma_irq_block(int irq, void *dev_id)
-+{
-+ struct snd_pcm_substream *playback = dev_id;
-+
-+ snd_pcm_period_elapsed(playback);
-+
-+ return IRQ_HANDLED;
-+}
-+
-+static int aiu_i2s_dma_open(struct snd_pcm_substream *substream)
-+{
-+ struct aiu_i2s_dma *priv = aiu_i2s_dma_priv(substream);
-+ int ret;
-+
-+ snd_soc_set_runtime_hwparams(substream, &aiu_i2s_dma_hw);
-+
-+ /*
-+ * Make sure the buffer and period size are multiple of the DMA burst
-+ * size
-+ */
-+ ret = snd_pcm_hw_constraint_step(substream->runtime, 0,
-+ SNDRV_PCM_HW_PARAM_BUFFER_BYTES,
-+ AIU_I2S_DMA_BURST);
-+ if (ret)
-+ return ret;
-+
-+ ret = snd_pcm_hw_constraint_step(substream->runtime, 0,
-+ SNDRV_PCM_HW_PARAM_PERIOD_BYTES,
-+ AIU_I2S_DMA_BURST);
-+ if (ret)
-+ return ret;
-+
-+ /* Request the I2S DDR irq */
-+ ret = request_irq(priv->irq, aiu_i2s_dma_irq_block, 0,
-+ DRV_NAME, substream);
-+ if (ret)
-+ return ret;
-+
-+ /* Power up the i2s fast domain - can't write the registers w/o it */
-+ ret = clk_prepare_enable(priv->fast);
-+ if (ret)
-+ return ret;
-+
-+ /* Make sure the dma is initially disabled */
-+ __dma_enable(priv, false);
-+
-+ return 0;
-+}
-+
-+static int aiu_i2s_dma_close(struct snd_pcm_substream *substream)
-+{
-+ struct aiu_i2s_dma *priv = aiu_i2s_dma_priv(substream);
-+
-+ clk_disable_unprepare(priv->fast);
-+ free_irq(priv->irq, substream);
-+
-+ return 0;
-+}
-+
-+static const struct snd_pcm_ops aiu_i2s_dma_ops = {
-+ .open = aiu_i2s_dma_open,
-+ .close = aiu_i2s_dma_close,
-+ .ioctl = snd_pcm_lib_ioctl,
-+ .hw_params = aiu_i2s_dma_hw_params,
-+ .hw_free = aiu_i2s_dma_hw_free,
-+ .prepare = aiu_i2s_dma_prepare,
-+ .pointer = aiu_i2s_dma_pointer,
-+ .trigger = aiu_i2s_dma_trigger,
-+};
-+
-+static int aiu_i2s_dma_new(struct snd_soc_pcm_runtime *rtd)
-+{
-+ struct snd_card *card = rtd->card->snd_card;
-+ size_t size = aiu_i2s_dma_hw.buffer_bytes_max;
-+
-+ return snd_pcm_lib_preallocate_pages_for_all(rtd->pcm,
-+ SNDRV_DMA_TYPE_DEV,
-+ card->dev, size, size);
-+}
-+
-+static const struct snd_soc_component_driver aiu_i2s_platform = {
-+ .ops = &aiu_i2s_dma_ops,
-+ .pcm_new = aiu_i2s_dma_new,
-+ .name = DRV_NAME,
-+};
-+
-+static int aiu_i2s_dma_probe(struct platform_device *pdev)
-+{
-+ struct device *dev = &pdev->dev;
-+ struct aiu_i2s_dma *priv;
-+
-+ priv = devm_kzalloc(dev, sizeof(*priv), GFP_KERNEL);
-+ if (!priv)
-+ return -ENOMEM;
-+
-+ platform_set_drvdata(pdev, priv);
-+ priv->core = dev_get_drvdata(dev->parent);
-+
-+ priv->fast = devm_clk_get(dev, "fast");
-+ if (IS_ERR(priv->fast)) {
-+ if (PTR_ERR(priv->fast) != -EPROBE_DEFER)
-+ dev_err(dev, "Can't get i2s fast domain clock\n");
-+ return PTR_ERR(priv->fast);
-+ }
-+
-+ priv->irq = platform_get_irq(pdev, 0);
-+ if (priv->irq <= 0) {
-+ dev_err(dev, "Can't get i2s ddr irq\n");
-+ return priv->irq;
-+ }
-+
-+ return devm_snd_soc_register_component(dev, &aiu_i2s_platform,
-+ NULL, 0);
-+}
-+
-+static const struct of_device_id aiu_i2s_dma_of_match[] = {
-+ { .compatible = "amlogic,meson-aiu-i2s-dma", },
-+ { .compatible = "amlogic,meson-gxbb-aiu-i2s-dma", },
-+ { .compatible = "amlogic,meson-gxl-aiu-i2s-dma", },
-+ {}
-+};
-+MODULE_DEVICE_TABLE(of, aiu_i2s_dma_of_match);
-+
-+static struct platform_driver aiu_i2s_dma_pdrv = {
-+ .probe = aiu_i2s_dma_probe,
-+ .driver = {
-+ .name = DRV_NAME,
-+ .of_match_table = aiu_i2s_dma_of_match,
-+ },
-+};
-+module_platform_driver(aiu_i2s_dma_pdrv);
-+
-+MODULE_DESCRIPTION("Meson AIU i2s DMA ASoC Driver");
-+MODULE_AUTHOR("Jerome Brunet <jbrunet@baylibre.com>");
-+MODULE_LICENSE("GPL v2");
diff --git a/testing/linux-amlogic/0005-ASoC-meson-add-initial-i2s-dai-support.patch b/testing/linux-amlogic/0005-ASoC-meson-add-initial-i2s-dai-support.patch
deleted file mode 100644
index e1be6fab36d..00000000000
--- a/testing/linux-amlogic/0005-ASoC-meson-add-initial-i2s-dai-support.patch
+++ /dev/null
@@ -1,516 +0,0 @@
-From 9031b415030a316ec4ca513185e2d2c0fbb894c4 Mon Sep 17 00:00:00 2001
-From: Jerome Brunet <jbrunet@baylibre.com>
-Date: Thu, 30 Mar 2017 12:17:27 +0200
-Subject: [PATCH] ASoC: meson: add initial i2s dai support
-
-Add support for the i2s dai found on Amlogic Meson SoC family.
-With this initial implementation, only playback is supported.
-Capture will be part of furture work.
-
-Signed-off-by: Jerome Brunet <jbrunet@baylibre.com>
-
----
- sound/soc/meson/Kconfig | 2 +-
- sound/soc/meson/Makefile | 4 +-
- sound/soc/meson/i2s-dai.c | 465 ++++++++++++++++++++++++++++++++++++++++++++++
- 3 files changed, 469 insertions(+), 2 deletions(-)
- create mode 100644 sound/soc/meson/i2s-dai.c
-
-diff --git a/sound/soc/meson/Kconfig b/sound/soc/meson/Kconfig
-index 6e030b5..5904e9e 100644
---- a/sound/soc/meson/Kconfig
-+++ b/sound/soc/meson/Kconfig
-@@ -78,5 +78,5 @@ config SND_SOC_MESON_I2S
- tristate "Meson i2s interface"
- depends on SND_SOC_MESON
- help
-- Say Y or M if you want to add support for i2s dma driver for Amlogic
-+ Say Y or M if you want to add support for i2s driver for Amlogic
- Meson SoCs.
-diff --git a/sound/soc/meson/Makefile b/sound/soc/meson/Makefile
-index 5796007..b8641f9 100644
---- a/sound/soc/meson/Makefile
-+++ b/sound/soc/meson/Makefile
-@@ -22,6 +22,8 @@ obj-$(CONFIG_SND_MESON_AXG_SPDIFOUT) += snd-soc-meson-axg-spdifout.o
-
- snd-soc-meson-audio-core-objs := audio-core.o
- snd-soc-meson-aiu-i2s-dma-objs := aiu-i2s-dma.o
-+snd-soc-meson-i2s-dai-objs := i2s-dai.o
-
- obj-$(CONFIG_SND_SOC_MESON) += snd-soc-meson-audio-core.o
--obj-$(CONFIG_SND_SOC_MESON_I2S) += snd-soc-meson-aiu-i2s-dma.o
-\ No newline at end of file
-+obj-$(CONFIG_SND_SOC_MESON_I2S) += snd-soc-meson-aiu-i2s-dma.o
-+obj-$(CONFIG_SND_SOC_MESON_I2S) += snd-soc-meson-i2s-dai.o
-\ No newline at end of file
-diff --git a/sound/soc/meson/i2s-dai.c b/sound/soc/meson/i2s-dai.c
-new file mode 100644
-index 0000000..1008af8
---- /dev/null
-+++ b/sound/soc/meson/i2s-dai.c
-@@ -0,0 +1,465 @@
-+/*
-+ * Copyright (C) 2017 BayLibre, SAS
-+ * Author: Jerome Brunet <jbrunet@baylibre.com>
-+ * Copyright (C) 2017 Amlogic, Inc. All rights reserved.
-+ *
-+ * This program is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU General Public License as
-+ * published by the Free Software Foundation; either version 2 of the
-+ * License, or (at your option) any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful, but
-+ * WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+ * General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, see <http://www.gnu.org/licenses/>.
-+ */
-+
-+#include <linux/clk.h>
-+#include <linux/mfd/syscon.h>
-+#include <linux/module.h>
-+#include <linux/of.h>
-+#include <linux/platform_device.h>
-+#include <linux/regmap.h>
-+
-+#include <sound/pcm_params.h>
-+#include <sound/soc.h>
-+#include <sound/soc-dai.h>
-+
-+#include "aiu-regs.h"
-+#include "audio-core.h"
-+
-+#define DRV_NAME "meson-i2s-dai"
-+
-+struct meson_i2s_dai {
-+ struct meson_audio_core_data *core;
-+ struct clk *mclk;
-+ struct clk *bclks;
-+ struct clk *iface;
-+ struct clk *fast;
-+ bool bclks_idle;
-+};
-+
-+#define AIU_CLK_CTRL_I2S_DIV_EN BIT(0)
-+#define AIU_CLK_CTRL_I2S_DIV_MASK GENMASK(3, 2)
-+#define AIU_CLK_CTRL_AOCLK_POLARITY_MASK BIT(6)
-+#define AIU_CLK_CTRL_AOCLK_POLARITY_NORMAL (0 << 6)
-+#define AIU_CLK_CTRL_AOCLK_POLARITY_INVERTED (1 << 6)
-+#define AIU_CLK_CTRL_ALRCLK_POLARITY_MASK BIT(7)
-+#define AIU_CLK_CTRL_ALRCLK_POLARITY_NORMAL (0 << 7)
-+#define AIU_CLK_CTRL_ALRCLK_POLARITY_INVERTED (1 << 7)
-+#define AIU_CLK_CTRL_ALRCLK_SKEW_MASK GENMASK(9, 8)
-+#define AIU_CLK_CTRL_ALRCLK_LEFT_J (0 << 8)
-+#define AIU_CLK_CTRL_ALRCLK_I2S (1 << 8)
-+#define AIU_CLK_CTRL_ALRCLK_RIGHT_J (2 << 8)
-+#define AIU_CLK_CTRL_MORE_I2S_DIV_MASK GENMASK(5, 0)
-+#define AIU_CLK_CTRL_MORE_I2S_DIV(div) (((div) - 1) << 0)
-+#define AIU_CODEC_DAC_LRCLK_CTRL_DIV_MASK GENMASK(11, 0)
-+#define AIU_CODEC_DAC_LRCLK_CTRL_DIV(div) (((div) - 1) << 0)
-+#define AIU_I2S_DAC_CFG_PAYLOAD_SIZE_MASK GENMASK(1, 0)
-+#define AIU_I2S_DAC_CFG_AOCLK_32 (0 << 0)
-+#define AIU_I2S_DAC_CFG_AOCLK_48 (2 << 0)
-+#define AIU_I2S_DAC_CFG_AOCLK_64 (3 << 0)
-+#define AIU_I2S_MISC_HOLD_EN BIT(2)
-+#define AIU_I2S_SOURCE_DESC_MODE_8CH BIT(0)
-+#define AIU_I2S_SOURCE_DESC_MODE_24BIT BIT(5)
-+#define AIU_I2S_SOURCE_DESC_MODE_32BIT BIT(9)
-+#define AIU_I2S_SOURCE_DESC_MODE_SPLIT BIT(11)
-+
-+static void __hold(struct meson_i2s_dai *priv, bool enable)
-+{
-+ regmap_update_bits(priv->core->aiu, AIU_I2S_MISC,
-+ AIU_I2S_MISC_HOLD_EN,
-+ enable ? AIU_I2S_MISC_HOLD_EN : 0);
-+}
-+
-+static void __divider_enable(struct meson_i2s_dai *priv, bool enable)
-+{
-+ regmap_update_bits(priv->core->aiu, AIU_CLK_CTRL,
-+ AIU_CLK_CTRL_I2S_DIV_EN,
-+ enable ? AIU_CLK_CTRL_I2S_DIV_EN : 0);
-+}
-+
-+static void __playback_start(struct meson_i2s_dai *priv)
-+{
-+ __divider_enable(priv, true);
-+ __hold(priv, false);
-+}
-+
-+static void __playback_stop(struct meson_i2s_dai *priv, bool clk_force)
-+{
-+ __hold(priv, true);
-+ /* Disable the bit clks if necessary */
-+ if (clk_force || !priv->bclks_idle)
-+ __divider_enable(priv, false);
-+}
-+
-+static int meson_i2s_dai_trigger(struct snd_pcm_substream *substream, int cmd,
-+ struct snd_soc_dai *dai)
-+{
-+ struct meson_i2s_dai *priv = snd_soc_dai_get_drvdata(dai);
-+ bool clk_force_stop = false;
-+
-+ switch (cmd) {
-+ case SNDRV_PCM_TRIGGER_START:
-+ case SNDRV_PCM_TRIGGER_RESUME:
-+ case SNDRV_PCM_TRIGGER_PAUSE_RELEASE:
-+ __playback_start(priv);
-+ return 0;
-+
-+ case SNDRV_PCM_TRIGGER_STOP:
-+ case SNDRV_PCM_TRIGGER_SUSPEND:
-+ clk_force_stop = true;
-+ case SNDRV_PCM_TRIGGER_PAUSE_PUSH:
-+ __playback_stop(priv, clk_force_stop);
-+ return 0;
-+
-+ default:
-+ return -EINVAL;
-+ }
-+}
-+
-+static int __bclks_set_rate(struct meson_i2s_dai *priv, unsigned int srate,
-+ unsigned int width)
-+{
-+ unsigned int fs;
-+
-+ /* Get the oversampling factor */
-+ fs = DIV_ROUND_CLOSEST(clk_get_rate(priv->mclk), srate);
-+
-+ /*
-+ * This DAI is usually connected to the dw-hdmi which does not support
-+ * bclk being 32 * lrclk or 48 * lrclk
-+ * Restrict to blck = 64 * lrclk
-+ */
-+ if (fs % 64)
-+ return -EINVAL;
-+
-+ /* Set the divider between lrclk and bclk */
-+ regmap_update_bits(priv->core->aiu, AIU_I2S_DAC_CFG,
-+ AIU_I2S_DAC_CFG_PAYLOAD_SIZE_MASK,
-+ AIU_I2S_DAC_CFG_AOCLK_64);
-+
-+ regmap_update_bits(priv->core->aiu, AIU_CODEC_DAC_LRCLK_CTRL,
-+ AIU_CODEC_DAC_LRCLK_CTRL_DIV_MASK,
-+ AIU_CODEC_DAC_LRCLK_CTRL_DIV(64));
-+
-+ /* Use CLK_MORE for the i2s divider */
-+ regmap_update_bits(priv->core->aiu, AIU_CLK_CTRL,
-+ AIU_CLK_CTRL_I2S_DIV_MASK,
-+ 0);
-+
-+ regmap_update_bits(priv->core->aiu, AIU_CLK_CTRL_MORE,
-+ AIU_CLK_CTRL_MORE_I2S_DIV_MASK,
-+ AIU_CLK_CTRL_MORE_I2S_DIV(fs / 64));
-+
-+ return 0;
-+}
-+
-+static int __setup_desc(struct meson_i2s_dai *priv, unsigned int width,
-+ unsigned int channels)
-+{
-+ u32 desc = 0;
-+
-+ switch (width) {
-+ case 24:
-+ /*
-+ * For some reason, 24 bits wide audio don't play well
-+ * if the 32 bits mode is not set
-+ */
-+ desc |= (AIU_I2S_SOURCE_DESC_MODE_24BIT |
-+ AIU_I2S_SOURCE_DESC_MODE_32BIT);
-+ break;
-+ case 16:
-+ break;
-+
-+ default:
-+ return -EINVAL;
-+ }
-+
-+ switch (channels) {
-+ case 2: /* Nothing to do */
-+ break;
-+ case 8:
-+ /* TODO: Still requires testing ... */
-+ desc |= AIU_I2S_SOURCE_DESC_MODE_8CH;
-+ break;
-+ default:
-+ return -EINVAL;
-+ }
-+
-+ regmap_update_bits(priv->core->aiu, AIU_I2S_SOURCE_DESC,
-+ AIU_I2S_SOURCE_DESC_MODE_8CH |
-+ AIU_I2S_SOURCE_DESC_MODE_24BIT |
-+ AIU_I2S_SOURCE_DESC_MODE_32BIT,
-+ desc);
-+
-+ return 0;
-+}
-+
-+static int meson_i2s_dai_hw_params(struct snd_pcm_substream *substream,
-+ struct snd_pcm_hw_params *params,
-+ struct snd_soc_dai *dai)
-+{
-+ struct meson_i2s_dai *priv = snd_soc_dai_get_drvdata(dai);
-+ unsigned int width = params_width(params);
-+ unsigned int channels = params_channels(params);
-+ unsigned int rate = params_rate(params);
-+ int ret;
-+
-+ ret = __setup_desc(priv, width, channels);
-+ if (ret) {
-+ dev_err(dai->dev, "Unable set to set i2s description\n");
-+ return ret;
-+ }
-+
-+ ret = __bclks_set_rate(priv, rate, width);
-+ if (ret) {
-+ dev_err(dai->dev, "Unable set to the i2s clock rates\n");
-+ return ret;
-+ }
-+
-+ return 0;
-+}
-+
-+static int meson_i2s_dai_set_fmt(struct snd_soc_dai *dai, unsigned int fmt)
-+{
-+ struct meson_i2s_dai *priv = snd_soc_dai_get_drvdata(dai);
-+ u32 val;
-+
-+ if ((fmt & SND_SOC_DAIFMT_MASTER_MASK) != SND_SOC_DAIFMT_CBS_CFS)
-+ return -EINVAL;
-+
-+ /* DAI output mode */
-+ switch (fmt & SND_SOC_DAIFMT_FORMAT_MASK) {
-+ case SND_SOC_DAIFMT_I2S:
-+ val = AIU_CLK_CTRL_ALRCLK_I2S;
-+ break;
-+ case SND_SOC_DAIFMT_LEFT_J:
-+ val = AIU_CLK_CTRL_ALRCLK_LEFT_J;
-+ break;
-+ case SND_SOC_DAIFMT_RIGHT_J:
-+ val = AIU_CLK_CTRL_ALRCLK_RIGHT_J;
-+ break;
-+ default:
-+ return -EINVAL;
-+ }
-+
-+ regmap_update_bits(priv->core->aiu, AIU_CLK_CTRL,
-+ AIU_CLK_CTRL_ALRCLK_SKEW_MASK,
-+ val);
-+
-+ /* DAI clock polarity */
-+ switch (fmt & SND_SOC_DAIFMT_INV_MASK) {
-+ case SND_SOC_DAIFMT_IB_IF:
-+ /* Invert both clocks */
-+ val = AIU_CLK_CTRL_ALRCLK_POLARITY_INVERTED |
-+ AIU_CLK_CTRL_AOCLK_POLARITY_INVERTED;
-+ break;
-+ case SND_SOC_DAIFMT_IB_NF:
-+ /* Invert bit clock */
-+ val = AIU_CLK_CTRL_ALRCLK_POLARITY_NORMAL |
-+ AIU_CLK_CTRL_AOCLK_POLARITY_INVERTED;
-+ break;
-+ case SND_SOC_DAIFMT_NB_IF:
-+ /* Invert frame clock */
-+ val = AIU_CLK_CTRL_ALRCLK_POLARITY_INVERTED |
-+ AIU_CLK_CTRL_AOCLK_POLARITY_NORMAL;
-+ break;
-+ case SND_SOC_DAIFMT_NB_NF:
-+ /* Normal clocks */
-+ val = AIU_CLK_CTRL_ALRCLK_POLARITY_NORMAL |
-+ AIU_CLK_CTRL_AOCLK_POLARITY_NORMAL;
-+ break;
-+ default:
-+ return -EINVAL;
-+ }
-+
-+ regmap_update_bits(priv->core->aiu, AIU_CLK_CTRL,
-+ AIU_CLK_CTRL_ALRCLK_POLARITY_MASK |
-+ AIU_CLK_CTRL_AOCLK_POLARITY_MASK,
-+ val);
-+
-+ switch (fmt & SND_SOC_DAIFMT_CLOCK_MASK) {
-+ case SND_SOC_DAIFMT_CONT:
-+ priv->bclks_idle = true;
-+ break;
-+ case SND_SOC_DAIFMT_GATED:
-+ priv->bclks_idle = false;
-+ break;
-+ default:
-+ return -EINVAL;
-+ }
-+
-+ return 0;
-+}
-+
-+static int meson_i2s_dai_set_sysclk(struct snd_soc_dai *dai, int clk_id,
-+ unsigned int freq, int dir)
-+{
-+ struct meson_i2s_dai *priv = snd_soc_dai_get_drvdata(dai);
-+ int ret;
-+
-+ if (WARN_ON(clk_id != 0))
-+ return -EINVAL;
-+
-+ if (dir == SND_SOC_CLOCK_IN)
-+ return 0;
-+
-+ ret = clk_set_rate(priv->mclk, freq);
-+ if (ret) {
-+ dev_err(dai->dev, "Failed to set sysclk to %uHz", freq);
-+ return ret;
-+ }
-+
-+ return 0;
-+}
-+
-+static int meson_i2s_dai_startup(struct snd_pcm_substream *substream,
-+ struct snd_soc_dai *dai)
-+{
-+ struct meson_i2s_dai *priv = snd_soc_dai_get_drvdata(dai);
-+ int ret;
-+
-+ /* Power up the i2s fast domain - can't write the registers w/o it */
-+ ret = clk_prepare_enable(priv->fast);
-+ if (ret)
-+ goto out_clk_fast;
-+
-+ /* Make sure nothing gets out of the DAI yet */
-+ __hold(priv, true);
-+
-+ /* I2S encoder needs the mixer interface gate */
-+ ret = clk_prepare_enable(priv->iface);
-+ if (ret)
-+ goto out_clk_iface;
-+
-+ /* Enable the i2s master clock */
-+ ret = clk_prepare_enable(priv->mclk);
-+ if (ret)
-+ goto out_mclk;
-+
-+ /* Enable the bit clock gate */
-+ ret = clk_prepare_enable(priv->bclks);
-+ if (ret)
-+ goto out_bclks;
-+
-+ /* Make sure the interface expect a memory layout we can work with */
-+ regmap_update_bits(priv->core->aiu, AIU_I2S_SOURCE_DESC,
-+ AIU_I2S_SOURCE_DESC_MODE_SPLIT,
-+ AIU_I2S_SOURCE_DESC_MODE_SPLIT);
-+
-+ return 0;
-+
-+out_bclks:
-+ clk_disable_unprepare(priv->mclk);
-+out_mclk:
-+ clk_disable_unprepare(priv->iface);
-+out_clk_iface:
-+ clk_disable_unprepare(priv->fast);
-+out_clk_fast:
-+ return ret;
-+}
-+
-+static void meson_i2s_dai_shutdown(struct snd_pcm_substream *substream,
-+ struct snd_soc_dai *dai)
-+{
-+ struct meson_i2s_dai *priv = snd_soc_dai_get_drvdata(dai);
-+
-+ clk_disable_unprepare(priv->bclks);
-+ clk_disable_unprepare(priv->mclk);
-+ clk_disable_unprepare(priv->iface);
-+ clk_disable_unprepare(priv->fast);
-+}
-+
-+static const struct snd_soc_dai_ops meson_i2s_dai_ops = {
-+ .startup = meson_i2s_dai_startup,
-+ .shutdown = meson_i2s_dai_shutdown,
-+ .trigger = meson_i2s_dai_trigger,
-+ .hw_params = meson_i2s_dai_hw_params,
-+ .set_fmt = meson_i2s_dai_set_fmt,
-+ .set_sysclk = meson_i2s_dai_set_sysclk,
-+};
-+
-+static struct snd_soc_dai_driver meson_i2s_dai = {
-+ .playback = {
-+ .stream_name = "Playback",
-+ .channels_min = 2,
-+ .channels_max = 8,
-+ .rates = SNDRV_PCM_RATE_8000_192000,
-+ .formats = (SNDRV_PCM_FMTBIT_S16_LE |
-+ SNDRV_PCM_FMTBIT_S24_LE)
-+ },
-+ .ops = &meson_i2s_dai_ops,
-+};
-+
-+static const struct snd_soc_component_driver meson_i2s_dai_component = {
-+ .name = DRV_NAME,
-+};
-+
-+static int meson_i2s_dai_probe(struct platform_device *pdev)
-+{
-+ struct device *dev = &pdev->dev;
-+ struct meson_i2s_dai *priv;
-+
-+ priv = devm_kzalloc(dev, sizeof(*priv), GFP_KERNEL);
-+ if (!priv)
-+ return -ENOMEM;
-+
-+ platform_set_drvdata(pdev, priv);
-+ priv->core = dev_get_drvdata(dev->parent);
-+
-+ priv->fast = devm_clk_get(dev, "fast");
-+ if (IS_ERR(priv->fast)) {
-+ if (PTR_ERR(priv->fast) != -EPROBE_DEFER)
-+ dev_err(dev, "Can't get the i2s fast domain clock\n");
-+ return PTR_ERR(priv->fast);
-+ }
-+
-+ priv->iface = devm_clk_get(dev, "iface");
-+ if (IS_ERR(priv->iface)) {
-+ if (PTR_ERR(priv->iface) != -EPROBE_DEFER)
-+ dev_err(dev, "Can't get i2s dai clock gate\n");
-+ return PTR_ERR(priv->iface);
-+ }
-+
-+ priv->bclks = devm_clk_get(dev, "bclks");
-+ if (IS_ERR(priv->bclks)) {
-+ if (PTR_ERR(priv->bclks) != -EPROBE_DEFER)
-+ dev_err(dev, "Can't get bit clocks gate\n");
-+ return PTR_ERR(priv->bclks);
-+ }
-+
-+ priv->mclk = devm_clk_get(dev, "mclk");
-+ if (IS_ERR(priv->mclk)) {
-+ if (PTR_ERR(priv->mclk) != -EPROBE_DEFER)
-+ dev_err(dev, "failed to get the i2s master clock\n");
-+ return PTR_ERR(priv->mclk);
-+ }
-+
-+ return devm_snd_soc_register_component(dev, &meson_i2s_dai_component,
-+ &meson_i2s_dai, 1);
-+}
-+
-+static const struct of_device_id meson_i2s_dai_of_match[] = {
-+ { .compatible = "amlogic,meson-i2s-dai", },
-+ { .compatible = "amlogic,meson-gxbb-i2s-dai", },
-+ { .compatible = "amlogic,meson-gxl-i2s-dai", },
-+ {}
-+};
-+MODULE_DEVICE_TABLE(of, meson_i2s_dai_of_match);
-+
-+static struct platform_driver meson_i2s_dai_pdrv = {
-+ .probe = meson_i2s_dai_probe,
-+ .driver = {
-+ .name = DRV_NAME,
-+ .of_match_table = meson_i2s_dai_of_match,
-+ },
-+};
-+module_platform_driver(meson_i2s_dai_pdrv);
-+
-+MODULE_DESCRIPTION("Meson i2s DAI ASoC Driver");
-+MODULE_AUTHOR("Jerome Brunet <jbrunet@baylibre.com>");
-+MODULE_LICENSE("GPL v2");
diff --git a/testing/linux-amlogic/0006-ASoC-meson-add-aiu-spdif-dma-support.patch b/testing/linux-amlogic/0006-ASoC-meson-add-aiu-spdif-dma-support.patch
deleted file mode 100644
index 31cef2e53dc..00000000000
--- a/testing/linux-amlogic/0006-ASoC-meson-add-aiu-spdif-dma-support.patch
+++ /dev/null
@@ -1,443 +0,0 @@
-From 32a55958cc2d89e2feee831ca4e6ceae8458e950 Mon Sep 17 00:00:00 2001
-From: Jerome Brunet <jbrunet@baylibre.com>
-Date: Thu, 30 Mar 2017 13:43:52 +0200
-Subject: [PATCH] ASoC: meson: add aiu spdif dma support
-
-Add support for the spdif output dma which is part of the AIU block
-
-Signed-off-by: Jerome Brunet <jbrunet@baylibre.com>
-
----
- sound/soc/meson/Kconfig | 7 +
- sound/soc/meson/Makefile | 4 +-
- sound/soc/meson/aiu-spdif-dma.c | 388 ++++++++++++++++++++++++++++++++++++++++
- 3 files changed, 398 insertions(+), 1 deletion(-)
- create mode 100644 sound/soc/meson/aiu-spdif-dma.c
-
-diff --git a/sound/soc/meson/Kconfig b/sound/soc/meson/Kconfig
-index 5904e9e..712303f 100644
---- a/sound/soc/meson/Kconfig
-+++ b/sound/soc/meson/Kconfig
-@@ -80,3 +80,10 @@ config SND_SOC_MESON_I2S
- help
- Say Y or M if you want to add support for i2s driver for Amlogic
- Meson SoCs.
-+
-+config SND_SOC_MESON_SPDIF
-+ tristate "Meson spdif interface"
-+ depends on SND_SOC_MESON
-+ help
-+ Say Y or M if you want to add support for spdif dma driver for Amlogic
-+ Meson SoCs.
-diff --git a/sound/soc/meson/Makefile b/sound/soc/meson/Makefile
-index b8641f9..dc5164a7 100644
---- a/sound/soc/meson/Makefile
-+++ b/sound/soc/meson/Makefile
-@@ -22,8 +22,10 @@ obj-$(CONFIG_SND_MESON_AXG_SPDIFOUT) += snd-soc-meson-axg-spdifout.o
-
- snd-soc-meson-audio-core-objs := audio-core.o
- snd-soc-meson-aiu-i2s-dma-objs := aiu-i2s-dma.o
-+snd-soc-meson-aiu-spdif-dma-objs := aiu-spdif-dma.o
- snd-soc-meson-i2s-dai-objs := i2s-dai.o
-
- obj-$(CONFIG_SND_SOC_MESON) += snd-soc-meson-audio-core.o
- obj-$(CONFIG_SND_SOC_MESON_I2S) += snd-soc-meson-aiu-i2s-dma.o
--obj-$(CONFIG_SND_SOC_MESON_I2S) += snd-soc-meson-i2s-dai.o
-\ No newline at end of file
-+obj-$(CONFIG_SND_SOC_MESON_I2S) += snd-soc-meson-i2s-dai.o
-+obj-$(CONFIG_SND_SOC_MESON_SPDIF) += snd-soc-meson-aiu-spdif-dma.o
-\ No newline at end of file
-diff --git a/sound/soc/meson/aiu-spdif-dma.c b/sound/soc/meson/aiu-spdif-dma.c
-new file mode 100644
-index 0000000..81c3b85
---- /dev/null
-+++ b/sound/soc/meson/aiu-spdif-dma.c
-@@ -0,0 +1,388 @@
-+/*
-+ * Copyright (C) 2017 BayLibre, SAS
-+ * Author: Jerome Brunet <jbrunet@baylibre.com>
-+ * Copyright (C) 2017 Amlogic, Inc. All rights reserved.
-+ *
-+ * This program is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU General Public License as
-+ * published by the Free Software Foundation; either version 2 of the
-+ * License, or (at your option) any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful, but
-+ * WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+ * General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, see <http://www.gnu.org/licenses/>.
-+ */
-+
-+#include <linux/clk.h>
-+#include <linux/mfd/syscon.h>
-+#include <linux/module.h>
-+#include <linux/of.h>
-+#include <linux/platform_device.h>
-+#include <linux/regmap.h>
-+
-+#include <sound/pcm_params.h>
-+#include <sound/soc.h>
-+
-+#include "aiu-regs.h"
-+#include "audio-core.h"
-+
-+#define DRV_NAME "meson-aiu-spdif-dma"
-+
-+struct aiu_spdif_dma {
-+ struct meson_audio_core_data *core;
-+ struct clk *fast;
-+ int irq;
-+};
-+
-+#define AIU_958_DCU_FF_CTRL_EN BIT(0)
-+#define AIU_958_DCU_FF_CTRL_AUTO_DISABLE BIT(1)
-+#define AIU_958_DCU_FF_CTRL_IRQ_MODE_MASK GENMASK(3, 2)
-+#define AIU_958_DCU_FF_CTRL_IRQ_OUT_THD BIT(2)
-+#define AIU_958_DCU_FF_CTRL_IRQ_FRAME_READ BIT(3)
-+#define AIU_958_DCU_FF_CTRL_SYNC_HEAD_EN BIT(4)
-+#define AIU_958_DCU_FF_CTRL_BYTE_SEEK BIT(5)
-+#define AIU_958_DCU_FF_CTRL_CONTINUE BIT(6)
-+#define AIU_MEM_IEC958_BUF_CNTL_INIT BIT(0)
-+#define AIU_MEM_IEC958_CONTROL_INIT BIT(0)
-+#define AIU_MEM_IEC958_CONTROL_FILL_EN BIT(1)
-+#define AIU_MEM_IEC958_CONTROL_EMPTY_EN BIT(2)
-+#define AIU_MEM_IEC958_CONTROL_ENDIAN_MASK GENMASK(5, 3)
-+#define AIU_MEM_IEC958_CONTROL_RD_DDR BIT(6)
-+#define AIU_MEM_IEC958_CONTROL_MODE_16BIT BIT(7)
-+#define AIU_MEM_IEC958_MASKS_CH_MEM_MASK GENMASK(15, 8)
-+#define AIU_MEM_IEC958_MASKS_CH_MEM(ch) ((ch) << 8)
-+#define AIU_MEM_IEC958_MASKS_CH_RD_MASK GENMASK(7, 0)
-+#define AIU_MEM_IEC958_MASKS_CH_RD(ch) ((ch) << 0)
-+
-+#define AIU_SPDIF_DMA_BURST 8
-+#define AIU_SPDIF_BPF_MAX USHRT_MAX
-+
-+static struct snd_pcm_hardware aiu_spdif_dma_hw = {
-+ .info = (SNDRV_PCM_INFO_INTERLEAVED |
-+ SNDRV_PCM_INFO_MMAP |
-+ SNDRV_PCM_INFO_MMAP_VALID |
-+ SNDRV_PCM_INFO_PAUSE),
-+
-+ .formats = (SNDRV_PCM_FMTBIT_S16_LE |
-+ SNDRV_PCM_FMTBIT_S24_LE |
-+ SNDRV_PCM_FMTBIT_S32_LE),
-+
-+ .rates = (SNDRV_PCM_RATE_32000 |
-+ SNDRV_PCM_RATE_44100 |
-+ SNDRV_PCM_RATE_48000 |
-+ SNDRV_PCM_RATE_96000 |
-+ SNDRV_PCM_RATE_192000),
-+ /*
-+ * TODO: The DMA can change the endianness, the msb position
-+ * and deal with unsigned - support this later on
-+ */
-+
-+ .channels_min = 2,
-+ .channels_max = 2,
-+ .period_bytes_min = AIU_SPDIF_DMA_BURST,
-+ .period_bytes_max = AIU_SPDIF_BPF_MAX,
-+ .periods_min = 2,
-+ .periods_max = UINT_MAX,
-+ .buffer_bytes_max = 1 * 1024 * 1024,
-+ .fifo_size = 0,
-+};
-+
-+static struct aiu_spdif_dma *aiu_spdif_dma_priv(struct snd_pcm_substream *s)
-+{
-+ struct snd_soc_pcm_runtime *rtd = s->private_data;
-+ struct snd_soc_component *component = snd_soc_rtdcom_lookup(rtd, DRV_NAME);
-+
-+ return snd_soc_component_get_drvdata(component);
-+}
-+
-+static snd_pcm_uframes_t
-+aiu_spdif_dma_pointer(struct snd_pcm_substream *substream)
-+{
-+ struct snd_pcm_runtime *runtime = substream->runtime;
-+ struct aiu_spdif_dma *priv = aiu_spdif_dma_priv(substream);
-+ unsigned int addr;
-+ int ret;
-+
-+ ret = regmap_read(priv->core->aiu, AIU_MEM_IEC958_RD_PTR,
-+ &addr);
-+ if (ret)
-+ return 0;
-+
-+ return bytes_to_frames(runtime, addr - (unsigned int)runtime->dma_addr);
-+}
-+
-+static void __dma_enable(struct aiu_spdif_dma *priv, bool enable)
-+{
-+ unsigned int en_mask = (AIU_MEM_IEC958_CONTROL_FILL_EN |
-+ AIU_MEM_IEC958_CONTROL_EMPTY_EN);
-+
-+ regmap_update_bits(priv->core->aiu, AIU_MEM_IEC958_CONTROL, en_mask,
-+ enable ? en_mask : 0);
-+}
-+
-+static void __dcu_fifo_enable(struct aiu_spdif_dma *priv, bool enable)
-+{
-+ regmap_update_bits(priv->core->aiu, AIU_958_DCU_FF_CTRL,
-+ AIU_958_DCU_FF_CTRL_EN,
-+ enable ? AIU_958_DCU_FF_CTRL_EN : 0);
-+}
-+
-+static int aiu_spdif_dma_trigger(struct snd_pcm_substream *substream, int cmd)
-+{
-+ struct aiu_spdif_dma *priv = aiu_spdif_dma_priv(substream);
-+
-+ switch (cmd) {
-+ case SNDRV_PCM_TRIGGER_START:
-+ case SNDRV_PCM_TRIGGER_RESUME:
-+ case SNDRV_PCM_TRIGGER_PAUSE_RELEASE:
-+ __dcu_fifo_enable(priv, true);
-+ __dma_enable(priv, true);
-+ break;
-+ case SNDRV_PCM_TRIGGER_SUSPEND:
-+ case SNDRV_PCM_TRIGGER_PAUSE_PUSH:
-+ case SNDRV_PCM_TRIGGER_STOP:
-+ __dma_enable(priv, false);
-+ __dcu_fifo_enable(priv, false);
-+ break;
-+ default:
-+ return -EINVAL;
-+ }
-+
-+ return 0;
-+}
-+
-+static void __dma_init_mem(struct aiu_spdif_dma *priv)
-+{
-+ regmap_update_bits(priv->core->aiu, AIU_MEM_IEC958_CONTROL,
-+ AIU_MEM_IEC958_CONTROL_INIT,
-+ AIU_MEM_IEC958_CONTROL_INIT);
-+ regmap_update_bits(priv->core->aiu, AIU_MEM_IEC958_BUF_CNTL,
-+ AIU_MEM_IEC958_BUF_CNTL_INIT,
-+ AIU_MEM_IEC958_BUF_CNTL_INIT);
-+
-+ regmap_update_bits(priv->core->aiu, AIU_MEM_IEC958_CONTROL,
-+ AIU_MEM_IEC958_CONTROL_INIT,
-+ 0);
-+ regmap_update_bits(priv->core->aiu, AIU_MEM_IEC958_BUF_CNTL,
-+ AIU_MEM_IEC958_BUF_CNTL_INIT,
-+ 0);
-+}
-+
-+static int aiu_spdif_dma_prepare(struct snd_pcm_substream *substream)
-+{
-+ struct aiu_spdif_dma *priv = aiu_spdif_dma_priv(substream);
-+
-+ __dma_init_mem(priv);
-+
-+ return 0;
-+}
-+
-+static int __setup_memory_layout(struct aiu_spdif_dma *priv,
-+ unsigned int width)
-+{
-+ u32 mem_ctl = AIU_MEM_IEC958_CONTROL_RD_DDR;
-+
-+ if (width == 16)
-+ mem_ctl |= AIU_MEM_IEC958_CONTROL_MODE_16BIT;
-+
-+ regmap_update_bits(priv->core->aiu, AIU_MEM_IEC958_CONTROL,
-+ AIU_MEM_IEC958_CONTROL_ENDIAN_MASK |
-+ AIU_MEM_IEC958_CONTROL_MODE_16BIT |
-+ AIU_MEM_IEC958_CONTROL_RD_DDR,
-+ mem_ctl);
-+
-+ return 0;
-+}
-+
-+static int aiu_spdif_dma_hw_params(struct snd_pcm_substream *substream,
-+ struct snd_pcm_hw_params *params)
-+{
-+ struct snd_pcm_runtime *runtime = substream->runtime;
-+ struct aiu_spdif_dma *priv = aiu_spdif_dma_priv(substream);
-+ int ret;
-+ dma_addr_t end_ptr;
-+
-+ ret = snd_pcm_lib_malloc_pages(substream, params_buffer_bytes(params));
-+ if (ret < 0)
-+ return ret;
-+
-+ ret = __setup_memory_layout(priv, params_physical_width(params));
-+ if (ret)
-+ return ret;
-+
-+ /* Initialize memory pointers */
-+ regmap_write(priv->core->aiu,
-+ AIU_MEM_IEC958_START_PTR, runtime->dma_addr);
-+ regmap_write(priv->core->aiu,
-+ AIU_MEM_IEC958_RD_PTR, runtime->dma_addr);
-+
-+ /* The end pointer is the address of the last valid block */
-+ end_ptr = runtime->dma_addr + runtime->dma_bytes - AIU_SPDIF_DMA_BURST;
-+ regmap_write(priv->core->aiu, AIU_MEM_IEC958_END_PTR, end_ptr);
-+
-+ /* Memory masks */
-+ regmap_write(priv->core->aiu, AIU_MEM_IEC958_MASKS,
-+ AIU_MEM_IEC958_MASKS_CH_RD(0xff) |
-+ AIU_MEM_IEC958_MASKS_CH_MEM(0xff));
-+
-+ /* Setup the number bytes read by the FIFO between each IRQ */
-+ regmap_write(priv->core->aiu, AIU_958_BPF, params_period_bytes(params));
-+
-+ /*
-+ * AUTO_DISABLE and SYNC_HEAD are enabled by default but
-+ * this should be disabled in PCM (uncompressed) mode
-+ */
-+ regmap_update_bits(priv->core->aiu, AIU_958_DCU_FF_CTRL,
-+ AIU_958_DCU_FF_CTRL_AUTO_DISABLE |
-+ AIU_958_DCU_FF_CTRL_IRQ_MODE_MASK |
-+ AIU_958_DCU_FF_CTRL_SYNC_HEAD_EN,
-+ AIU_958_DCU_FF_CTRL_IRQ_FRAME_READ);
-+
-+ return 0;
-+}
-+
-+static int aiu_spdif_dma_hw_free(struct snd_pcm_substream *substream)
-+{
-+ return snd_pcm_lib_free_pages(substream);
-+}
-+
-+static irqreturn_t aiu_spdif_dma_irq(int irq, void *dev_id)
-+{
-+ struct snd_pcm_substream *playback = dev_id;
-+
-+ snd_pcm_period_elapsed(playback);
-+
-+ return IRQ_HANDLED;
-+}
-+
-+static int aiu_spdif_dma_open(struct snd_pcm_substream *substream)
-+{
-+ struct aiu_spdif_dma *priv = aiu_spdif_dma_priv(substream);
-+ int ret;
-+
-+ snd_soc_set_runtime_hwparams(substream, &aiu_spdif_dma_hw);
-+
-+ /*
-+ * Make sure the buffer and period size are multiple of the DMA burst
-+ * size
-+ */
-+ ret = snd_pcm_hw_constraint_step(substream->runtime, 0,
-+ SNDRV_PCM_HW_PARAM_BUFFER_BYTES,
-+ AIU_SPDIF_DMA_BURST);
-+ if (ret)
-+ return ret;
-+
-+ ret = snd_pcm_hw_constraint_step(substream->runtime, 0,
-+ SNDRV_PCM_HW_PARAM_PERIOD_BYTES,
-+ AIU_SPDIF_DMA_BURST);
-+ if (ret)
-+ return ret;
-+
-+ /* Request the SPDIF DDR irq */
-+ ret = request_irq(priv->irq, aiu_spdif_dma_irq, 0,
-+ DRV_NAME, substream);
-+ if (ret)
-+ return ret;
-+
-+ /* Power up the spdif fast domain - can't write the register w/o it */
-+ ret = clk_prepare_enable(priv->fast);
-+ if (ret)
-+ return ret;
-+
-+ /* Make sure the dma is initially halted */
-+ __dma_enable(priv, false);
-+ __dcu_fifo_enable(priv, false);
-+
-+ return 0;
-+}
-+
-+static int aiu_spdif_dma_close(struct snd_pcm_substream *substream)
-+{
-+ struct aiu_spdif_dma *priv = aiu_spdif_dma_priv(substream);
-+
-+ clk_disable_unprepare(priv->fast);
-+ free_irq(priv->irq, substream);
-+
-+ return 0;
-+}
-+
-+static const struct snd_pcm_ops aiu_spdif_dma_ops = {
-+ .open = aiu_spdif_dma_open,
-+ .close = aiu_spdif_dma_close,
-+ .ioctl = snd_pcm_lib_ioctl,
-+ .hw_params = aiu_spdif_dma_hw_params,
-+ .hw_free = aiu_spdif_dma_hw_free,
-+ .prepare = aiu_spdif_dma_prepare,
-+ .pointer = aiu_spdif_dma_pointer,
-+ .trigger = aiu_spdif_dma_trigger,
-+};
-+
-+static int aiu_spdif_dma_new(struct snd_soc_pcm_runtime *rtd)
-+{
-+ struct snd_card *card = rtd->card->snd_card;
-+ size_t size = aiu_spdif_dma_hw.buffer_bytes_max;
-+
-+ return snd_pcm_lib_preallocate_pages_for_all(rtd->pcm,
-+ SNDRV_DMA_TYPE_DEV,
-+ card->dev, size, size);
-+}
-+
-+static const struct snd_soc_component_driver aiu_spdif_platform = {
-+ .ops = &aiu_spdif_dma_ops,
-+ .pcm_new = aiu_spdif_dma_new,
-+ .name = DRV_NAME,
-+};
-+
-+static int aiu_spdif_dma_probe(struct platform_device *pdev)
-+{
-+ struct device *dev = &pdev->dev;
-+ struct aiu_spdif_dma *priv;
-+
-+ priv = devm_kzalloc(dev, sizeof(*priv), GFP_KERNEL);
-+ if (!priv)
-+ return -ENOMEM;
-+
-+ platform_set_drvdata(pdev, priv);
-+ priv->core = dev_get_drvdata(dev->parent);
-+
-+ priv->fast = devm_clk_get(dev, "fast");
-+ if (IS_ERR(priv->fast)) {
-+ if (PTR_ERR(priv->fast) != -EPROBE_DEFER)
-+ dev_err(dev, "Can't get spdif fast domain clock\n");
-+ return PTR_ERR(priv->fast);
-+ }
-+
-+ priv->irq = platform_get_irq(pdev, 0);
-+ if (priv->irq <= 0) {
-+ dev_err(dev, "Can't get spdif ddr irq\n");
-+ return priv->irq;
-+ }
-+
-+ return devm_snd_soc_register_component(dev, &aiu_spdif_platform,
-+ NULL, 0);
-+}
-+
-+static const struct of_device_id aiu_spdif_dma_of_match[] = {
-+ { .compatible = "amlogic,meson-aiu-spdif-dma", },
-+ { .compatible = "amlogic,meson-gxbb-aiu-spdif-dma", },
-+ { .compatible = "amlogic,meson-gxl-aiu-spdif-dma", },
-+ {}
-+};
-+MODULE_DEVICE_TABLE(of, aiu_spdif_dma_of_match);
-+
-+static struct platform_driver aiu_spdif_dma_pdrv = {
-+ .probe = aiu_spdif_dma_probe,
-+ .driver = {
-+ .name = DRV_NAME,
-+ .of_match_table = aiu_spdif_dma_of_match,
-+ },
-+};
-+module_platform_driver(aiu_spdif_dma_pdrv);
-+
-+MODULE_DESCRIPTION("Meson AIU spdif DMA ASoC Driver");
-+MODULE_AUTHOR("Jerome Brunet <jbrunet@baylibre.com>");
-+MODULE_LICENSE("GPL");
diff --git a/testing/linux-amlogic/0007-ASoC-meson-add-initial-spdif-dai-support.patch b/testing/linux-amlogic/0007-ASoC-meson-add-initial-spdif-dai-support.patch
deleted file mode 100644
index c60779b4658..00000000000
--- a/testing/linux-amlogic/0007-ASoC-meson-add-initial-spdif-dai-support.patch
+++ /dev/null
@@ -1,430 +0,0 @@
-From 67e2a1601f80648f5c318728218b788c51081fa3 Mon Sep 17 00:00:00 2001
-From: Jerome Brunet <jbrunet@baylibre.com>
-Date: Thu, 30 Mar 2017 13:46:03 +0200
-Subject: [PATCH] ASoC: meson: add initial spdif dai support
-
-Add support for the spdif dai found on Amlogic Meson SoC family.
-With this initial implementation, only uncompressed pcm playback
-from the spdif dma is supported. Future work will add compressed
-support, pcm playback from i2s dma and capture.
-
-Signed-off-by: Jerome Brunet <jbrunet@baylibre.com>
-
----
- sound/soc/meson/Kconfig | 3 +-
- sound/soc/meson/Makefile | 4 +-
- sound/soc/meson/spdif-dai.c | 374 ++++++++++++++++++++++++++++++++++++++++++++
- 3 files changed, 379 insertions(+), 2 deletions(-)
- create mode 100644 sound/soc/meson/spdif-dai.c
-
-diff --git a/sound/soc/meson/Kconfig b/sound/soc/meson/Kconfig
-index 712303f..bc3d6f2 100644
---- a/sound/soc/meson/Kconfig
-+++ b/sound/soc/meson/Kconfig
-@@ -84,6 +84,7 @@ config SND_SOC_MESON_I2S
- config SND_SOC_MESON_SPDIF
- tristate "Meson spdif interface"
- depends on SND_SOC_MESON
-+ select SND_PCM_IEC958
- help
-- Say Y or M if you want to add support for spdif dma driver for Amlogic
-+ Say Y or M if you want to add support for spdif driver for Amlogic
- Meson SoCs.
-diff --git a/sound/soc/meson/Makefile b/sound/soc/meson/Makefile
-index dc5164a7..44f79d8 100644
---- a/sound/soc/meson/Makefile
-+++ b/sound/soc/meson/Makefile
-@@ -24,8 +24,10 @@ snd-soc-meson-audio-core-objs := audio-core.o
- snd-soc-meson-aiu-i2s-dma-objs := aiu-i2s-dma.o
- snd-soc-meson-aiu-spdif-dma-objs := aiu-spdif-dma.o
- snd-soc-meson-i2s-dai-objs := i2s-dai.o
-+snd-soc-meson-spdif-dai-objs := spdif-dai.o
-
- obj-$(CONFIG_SND_SOC_MESON) += snd-soc-meson-audio-core.o
- obj-$(CONFIG_SND_SOC_MESON_I2S) += snd-soc-meson-aiu-i2s-dma.o
- obj-$(CONFIG_SND_SOC_MESON_I2S) += snd-soc-meson-i2s-dai.o
--obj-$(CONFIG_SND_SOC_MESON_SPDIF) += snd-soc-meson-aiu-spdif-dma.o
-\ No newline at end of file
-+obj-$(CONFIG_SND_SOC_MESON_SPDIF) += snd-soc-meson-aiu-spdif-dma.o
-+obj-$(CONFIG_SND_SOC_MESON_SPDIF) += snd-soc-meson-spdif-dai.o
-\ No newline at end of file
-diff --git a/sound/soc/meson/spdif-dai.c b/sound/soc/meson/spdif-dai.c
-new file mode 100644
-index 0000000..e763000
---- /dev/null
-+++ b/sound/soc/meson/spdif-dai.c
-@@ -0,0 +1,374 @@
-+/*
-+ * Copyright (C) 2017 BayLibre, SAS
-+ * Author: Jerome Brunet <jbrunet@baylibre.com>
-+ * Copyright (C) 2017 Amlogic, Inc. All rights reserved.
-+ *
-+ * This program is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU General Public License as
-+ * published by the Free Software Foundation; either version 2 of the
-+ * License, or (at your option) any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful, but
-+ * WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+ * General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, see <http://www.gnu.org/licenses/>.
-+ */
-+
-+#include <linux/clk.h>
-+#include <linux/mfd/syscon.h>
-+#include <linux/module.h>
-+#include <linux/of.h>
-+#include <linux/platform_device.h>
-+#include <linux/regmap.h>
-+
-+#include <sound/pcm_params.h>
-+#include <sound/soc.h>
-+#include <sound/soc-dai.h>
-+#include <sound/pcm_iec958.h>
-+
-+#include "aiu-regs.h"
-+#include "audio-core.h"
-+
-+#define DRV_NAME "meson-spdif-dai"
-+
-+struct meson_spdif_dai {
-+ struct meson_audio_core_data *core;
-+ struct clk *iface;
-+ struct clk *fast;
-+ struct clk *mclk_i958;
-+ struct clk *mclk;
-+};
-+
-+#define AIU_CLK_CTRL_958_DIV_EN BIT(1)
-+#define AIU_CLK_CTRL_958_DIV_MASK GENMASK(5, 4)
-+#define AIU_CLK_CTRL_958_DIV_MORE BIT(12)
-+#define AIU_MEM_IEC958_CONTROL_MODE_LINEAR BIT(8)
-+#define AIU_958_CTRL_HOLD_EN BIT(0)
-+#define AIU_958_MISC_NON_PCM BIT(0)
-+#define AIU_958_MISC_MODE_16BITS BIT(1)
-+#define AIU_958_MISC_16BITS_ALIGN_MASK GENMASK(6, 5)
-+#define AIU_958_MISC_16BITS_ALIGN(val) ((val) << 5)
-+#define AIU_958_MISC_MODE_32BITS BIT(7)
-+#define AIU_958_MISC_32BITS_SHIFT_MASK GENMASK(10, 8)
-+#define AIU_958_MISC_32BITS_SHIFT(val) ((val) << 8)
-+#define AIU_958_MISC_U_FROM_STREAM BIT(12)
-+#define AIU_958_MISC_FORCE_LR BIT(13)
-+
-+#define AIU_CS_WORD_LEN 4
-+
-+static void __hold(struct meson_spdif_dai *priv, bool enable)
-+{
-+ regmap_update_bits(priv->core->aiu, AIU_958_CTRL,
-+ AIU_958_CTRL_HOLD_EN,
-+ enable ? AIU_958_CTRL_HOLD_EN : 0);
-+}
-+
-+static void __divider_enable(struct meson_spdif_dai *priv, bool enable)
-+{
-+ regmap_update_bits(priv->core->aiu, AIU_CLK_CTRL,
-+ AIU_CLK_CTRL_958_DIV_EN,
-+ enable ? AIU_CLK_CTRL_958_DIV_EN : 0);
-+}
-+
-+static void __playback_start(struct meson_spdif_dai *priv)
-+{
-+ __divider_enable(priv, true);
-+ __hold(priv, false);
-+}
-+
-+static void __playback_stop(struct meson_spdif_dai *priv)
-+{
-+ __hold(priv, true);
-+ __divider_enable(priv, false);
-+}
-+
-+static int meson_spdif_dai_trigger(struct snd_pcm_substream *substream, int cmd,
-+ struct snd_soc_dai *dai)
-+{
-+ struct meson_spdif_dai *priv = snd_soc_dai_get_drvdata(dai);
-+
-+ switch (cmd) {
-+ case SNDRV_PCM_TRIGGER_START:
-+ case SNDRV_PCM_TRIGGER_RESUME:
-+ case SNDRV_PCM_TRIGGER_PAUSE_RELEASE:
-+ __playback_start(priv);
-+ return 0;
-+
-+ case SNDRV_PCM_TRIGGER_STOP:
-+ case SNDRV_PCM_TRIGGER_SUSPEND:
-+ case SNDRV_PCM_TRIGGER_PAUSE_PUSH:
-+ __playback_stop(priv);
-+ return 0;
-+
-+ default:
-+ return -EINVAL;
-+ }
-+}
-+
-+static int __setup_spdif_clk(struct meson_spdif_dai *priv, unsigned int rate)
-+{
-+ unsigned int mrate;
-+
-+ /* Leave the internal divisor alone */
-+ regmap_update_bits(priv->core->aiu, AIU_CLK_CTRL,
-+ AIU_CLK_CTRL_958_DIV_MASK |
-+ AIU_CLK_CTRL_958_DIV_MORE,
-+ 0);
-+
-+ /* 2 * 32bits per subframe * 2 channels = 128 */
-+ mrate = rate * 128;
-+ return clk_set_rate(priv->mclk, mrate);
-+}
-+
-+static int __setup_cs_word(struct meson_spdif_dai *priv,
-+ struct snd_pcm_hw_params *params)
-+{
-+ u8 cs[AIU_CS_WORD_LEN];
-+ u32 val;
-+ int ret;
-+
-+ ret = snd_pcm_create_iec958_consumer_hw_params(params, cs,
-+ AIU_CS_WORD_LEN);
-+ if (ret < 0)
-+ return -EINVAL;
-+
-+ /* Write the 1st half word */
-+ val = cs[1] | cs[0] << 8;
-+ regmap_write(priv->core->aiu, AIU_958_CHSTAT_L0, val);
-+ regmap_write(priv->core->aiu, AIU_958_CHSTAT_R0, val);
-+
-+ /* Write the 2nd half word */
-+ val = cs[3] | cs[2] << 8;
-+ regmap_write(priv->core->aiu, AIU_958_CHSTAT_L1, val);
-+ regmap_write(priv->core->aiu, AIU_958_CHSTAT_R1, val);
-+
-+ return 0;
-+}
-+
-+static int __setup_pcm_fmt(struct meson_spdif_dai *priv,
-+ unsigned int width)
-+{
-+ u32 val = 0;
-+
-+ switch (width) {
-+ case 16:
-+ val |= AIU_958_MISC_MODE_16BITS;
-+ val |= AIU_958_MISC_16BITS_ALIGN(2);
-+ break;
-+ case 32:
-+ case 24:
-+ /*
-+ * Looks like this should only be set for 32bits mode, but the
-+ * vendor kernel sets it like this for 24bits as well, let's
-+ * try and see
-+ */
-+ val |= AIU_958_MISC_MODE_32BITS;
-+ break;
-+ default:
-+ return -EINVAL;
-+ }
-+
-+ /* No idea what this actually does, copying the vendor kernel for now */
-+ val |= AIU_958_MISC_FORCE_LR;
-+ val |= AIU_958_MISC_U_FROM_STREAM;
-+
-+ regmap_update_bits(priv->core->aiu, AIU_958_MISC,
-+ AIU_958_MISC_NON_PCM |
-+ AIU_958_MISC_MODE_16BITS |
-+ AIU_958_MISC_16BITS_ALIGN_MASK |
-+ AIU_958_MISC_MODE_32BITS |
-+ AIU_958_MISC_FORCE_LR,
-+ val);
-+
-+ return 0;
-+}
-+
-+static int meson_spdif_dai_hw_params(struct snd_pcm_substream *substream,
-+ struct snd_pcm_hw_params *params,
-+ struct snd_soc_dai *dai)
-+{
-+ struct meson_spdif_dai *priv = snd_soc_dai_get_drvdata(dai);
-+ int ret;
-+
-+ ret = __setup_spdif_clk(priv, params_rate(params));
-+ if (ret) {
-+ dev_err(dai->dev, "Unable to set the spdif clock\n");
-+ return ret;
-+ }
-+
-+ ret = __setup_cs_word(priv, params);
-+ if (ret) {
-+ dev_err(dai->dev, "Unable to set the channel status word\n");
-+ return ret;
-+ }
-+
-+ ret = __setup_pcm_fmt(priv, params_width(params));
-+ if (ret) {
-+ dev_err(dai->dev, "Unable to set the pcm format\n");
-+ return ret;
-+ }
-+
-+ return 0;
-+}
-+
-+static int meson_spdif_dai_startup(struct snd_pcm_substream *substream,
-+ struct snd_soc_dai *dai)
-+{
-+ struct meson_spdif_dai *priv = snd_soc_dai_get_drvdata(dai);
-+ int ret;
-+
-+ /* Power up the spdif fast domain - can't write the registers w/o it */
-+ ret = clk_prepare_enable(priv->fast);
-+ if (ret)
-+ goto out_clk_fast;
-+
-+ /* Make sure nothing gets out of the DAI yet*/
-+ __hold(priv, true);
-+
-+ ret = clk_set_parent(priv->mclk, priv->mclk_i958);
-+ if (ret)
-+ return ret;
-+
-+ /* Enable the clock gate */
-+ ret = clk_prepare_enable(priv->iface);
-+ if (ret)
-+ goto out_clk_iface;
-+
-+ /* Enable the spdif clock */
-+ ret = clk_prepare_enable(priv->mclk);
-+ if (ret)
-+ goto out_mclk;
-+
-+ /*
-+ * Make sure the interface expect a memory layout we can work with
-+ * MEM prefixed register usually belong to the DMA, but when the spdif
-+ * DAI takes data from the i2s buffer, we need to make sure it works in
-+ * split mode and not the "normal mode" (channel samples packed in
-+ * 32 bytes groups)
-+ */
-+ regmap_update_bits(priv->core->aiu, AIU_MEM_IEC958_CONTROL,
-+ AIU_MEM_IEC958_CONTROL_MODE_LINEAR,
-+ AIU_MEM_IEC958_CONTROL_MODE_LINEAR);
-+
-+ return 0;
-+
-+out_mclk:
-+ clk_disable_unprepare(priv->iface);
-+out_clk_iface:
-+ clk_disable_unprepare(priv->fast);
-+out_clk_fast:
-+ return ret;
-+}
-+
-+static void meson_spdif_dai_shutdown(struct snd_pcm_substream *substream,
-+ struct snd_soc_dai *dai)
-+{
-+ struct meson_spdif_dai *priv = snd_soc_dai_get_drvdata(dai);
-+
-+ clk_disable_unprepare(priv->iface);
-+ clk_disable_unprepare(priv->mclk);
-+ clk_disable_unprepare(priv->fast);
-+}
-+
-+static const struct snd_soc_dai_ops meson_spdif_dai_ops = {
-+ .startup = meson_spdif_dai_startup,
-+ .shutdown = meson_spdif_dai_shutdown,
-+ .trigger = meson_spdif_dai_trigger,
-+ .hw_params = meson_spdif_dai_hw_params,
-+};
-+
-+static struct snd_soc_dai_driver meson_spdif_dai = {
-+ .playback = {
-+ .stream_name = "Playback",
-+ .channels_min = 2,
-+ .channels_max = 2,
-+ .rates = (SNDRV_PCM_RATE_32000 |
-+ SNDRV_PCM_RATE_44100 |
-+ SNDRV_PCM_RATE_48000 |
-+ SNDRV_PCM_RATE_96000 |
-+ SNDRV_PCM_RATE_192000),
-+ .formats = (SNDRV_PCM_FMTBIT_S16_LE |
-+ SNDRV_PCM_FMTBIT_S24_LE)
-+ },
-+ .ops = &meson_spdif_dai_ops,
-+};
-+
-+static const struct snd_soc_component_driver meson_spdif_dai_component = {
-+ .name = DRV_NAME,
-+};
-+
-+static int meson_spdif_dai_probe(struct platform_device *pdev)
-+{
-+ struct device *dev = &pdev->dev;
-+ struct meson_spdif_dai *priv;
-+
-+ priv = devm_kzalloc(dev, sizeof(*priv), GFP_KERNEL);
-+ if (!priv)
-+ return -ENOMEM;
-+
-+ platform_set_drvdata(pdev, priv);
-+ priv->core = dev_get_drvdata(dev->parent);
-+
-+ priv->fast = devm_clk_get(dev, "fast");
-+ if (IS_ERR(priv->fast)) {
-+ if (PTR_ERR(priv->fast) != -EPROBE_DEFER)
-+ dev_err(dev, "Can't get spdif fast domain clockt\n");
-+ return PTR_ERR(priv->fast);
-+ }
-+
-+ priv->iface = devm_clk_get(dev, "iface");
-+ if (IS_ERR(priv->iface)) {
-+ if (PTR_ERR(priv->iface) != -EPROBE_DEFER)
-+ dev_err(dev,
-+ "Can't get the dai clock gate\n");
-+ return PTR_ERR(priv->iface);
-+ }
-+
-+ priv->mclk_i958 = devm_clk_get(dev, "mclk_i958");
-+ if (IS_ERR(priv->mclk_i958)) {
-+ if (PTR_ERR(priv->mclk_i958) != -EPROBE_DEFER)
-+ dev_err(dev, "Can't get the spdif master clock\n");
-+ return PTR_ERR(priv->mclk_i958);
-+ }
-+
-+ /*
-+ * TODO: the spdif dai can also get its data from the i2s fifo.
-+ * For this use-case, the DAI driver will need to get the i2s master
-+ * clock in order to reparent the spdif clock from cts_mclk_i958 to
-+ * cts_amclk
-+ */
-+
-+ priv->mclk = devm_clk_get(dev, "mclk");
-+ if (IS_ERR(priv->mclk)) {
-+ if (PTR_ERR(priv->mclk) != -EPROBE_DEFER)
-+ dev_err(dev, "Can't get the spdif input mux clock\n");
-+ return PTR_ERR(priv->mclk);
-+ }
-+
-+ return devm_snd_soc_register_component(dev, &meson_spdif_dai_component,
-+ &meson_spdif_dai, 1);
-+}
-+
-+static const struct of_device_id meson_spdif_dai_of_match[] = {
-+ { .compatible = "amlogic,meson-spdif-dai", },
-+ { .compatible = "amlogic,meson-gxbb-spdif-dai", },
-+ { .compatible = "amlogic,meson-gxl-spdif-dai", },
-+ {}
-+};
-+MODULE_DEVICE_TABLE(of, meson_spdif_dai_of_match);
-+
-+static struct platform_driver meson_spdif_dai_pdrv = {
-+ .probe = meson_spdif_dai_probe,
-+ .driver = {
-+ .name = DRV_NAME,
-+ .of_match_table = meson_spdif_dai_of_match,
-+ },
-+};
-+module_platform_driver(meson_spdif_dai_pdrv);
-+
-+MODULE_DESCRIPTION("Meson spdif DAI ASoC Driver");
-+MODULE_AUTHOR("Jerome Brunet <jbrunet@baylibre.com>");
-+MODULE_LICENSE("GPL v2");
diff --git a/testing/linux-amlogic/0008-ARM64-defconfig-enable-audio-support-for-meson-SoCs-.patch b/testing/linux-amlogic/0008-ARM64-defconfig-enable-audio-support-for-meson-SoCs-.patch
deleted file mode 100644
index 2f8854bf36a..00000000000
--- a/testing/linux-amlogic/0008-ARM64-defconfig-enable-audio-support-for-meson-SoCs-.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From 93621178cb2f756c8ca8901801c2ce914ac7dc6b Mon Sep 17 00:00:00 2001
-From: Jerome Brunet <jbrunet@baylibre.com>
-Date: Fri, 31 Mar 2017 15:55:03 +0200
-Subject: [PATCH] ARM64: defconfig: enable audio support for meson SoCs as
- module
-
-Add audio support for meson SoCs. This includes the audio core
-driver and the i2s and spdif output interfaces
-
-Signed-off-by: Jerome Brunet <jbrunet@baylibre.com>
-
----
- arch/arm64/configs/defconfig | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
-index ab1cb51..a4bf54b 100644
---- a/arch/arm64/configs/defconfig
-+++ b/arch/arm64/configs/defconfig
-@@ -464,6 +464,9 @@ CONFIG_SOUND=y
- CONFIG_SND=y
- CONFIG_SND_SOC=y
- CONFIG_SND_BCM2835_SOC_I2S=m
-+CONFIG_SND_SOC_MESON=m
-+CONFIG_SND_SOC_MESON_I2S=m
-+CONFIG_SND_SOC_MESON_SPDIF=m
- CONFIG_SND_SOC_ROCKCHIP=m
- CONFIG_SND_SOC_ROCKCHIP_I2S=m
- CONFIG_SND_SOC_ROCKCHIP_SPDIF=m
diff --git a/testing/linux-amlogic/0008-drm-meson-Add-HDMI-1.4-4k-modes.patch b/testing/linux-amlogic/0008-drm-meson-Add-HDMI-1.4-4k-modes.patch
deleted file mode 100644
index 194ba6e2de8..00000000000
--- a/testing/linux-amlogic/0008-drm-meson-Add-HDMI-1.4-4k-modes.patch
+++ /dev/null
@@ -1,165 +0,0 @@
-From 24b38ca3bd2579d4bac18f57526c93bc63354959 Mon Sep 17 00:00:00 2001
-From: Neil Armstrong <narmstrong@baylibre.com>
-Date: Fri, 20 Jul 2018 15:29:18 +0200
-Subject: [PATCH] drm/meson: Add HDMI 1.4 4k modes
-
-Add the timings for the HDMI 1.4 4K modes support :
-- 3840x2160@30
-- 3840x2160@25
-- 3840x2160@24
-
-Since the 297000Hz pixel clock is already managed and the modes are
-compatible with the HDMI 1.4 current HDMI PHY+Controller support, only
-the missing timings values needs to be added.
-
----
- drivers/gpu/drm/meson/meson_venc.c | 129 +++++++++++++++++++++++++++++++++++++
- 1 file changed, 129 insertions(+)
-
-diff --git a/drivers/gpu/drm/meson/meson_venc.c b/drivers/gpu/drm/meson/meson_venc.c
-index 14aac66..d68ccbf 100644
---- a/drivers/gpu/drm/meson/meson_venc.c
-+++ b/drivers/gpu/drm/meson/meson_venc.c
-@@ -698,6 +698,132 @@ union meson_hdmi_venc_mode meson_hdmi_encp_mode_1080p60 = {
- },
- };
-
-+union meson_hdmi_venc_mode meson_hdmi_encp_mode_2160p24 = {
-+ .encp = {
-+ .dvi_settings = 0x1,
-+ .video_mode = 0x4040,
-+ .video_mode_adv = 0x8,
-+ /* video_sync_mode */
-+ /* video_yc_dly */
-+ /* video_rgb_ctrl */
-+ .video_filt_ctrl = 0x1000,
-+ .video_filt_ctrl_present = true,
-+ /* video_ofld_voav_ofst */
-+ .yfp1_htime = 140,
-+ .yfp2_htime = 140+3840,
-+ .max_pxcnt = 3840+1660-1,
-+ .hspuls_begin = 2156+1920,
-+ .hspuls_end = 44,
-+ .hspuls_switch = 44,
-+ .vspuls_begin = 140,
-+ .vspuls_end = 2059+1920,
-+ .vspuls_bline = 0,
-+ .vspuls_eline = 4,
-+ .havon_begin = 148,
-+ .havon_end = 3987,
-+ .vavon_bline = 89,
-+ .vavon_eline = 2248,
-+ /* eqpuls_begin */
-+ /* eqpuls_end */
-+ /* eqpuls_bline */
-+ /* eqpuls_eline */
-+ .hso_begin = 44,
-+ .hso_end = 2156+1920,
-+ .vso_begin = 2100+1920,
-+ .vso_end = 2164+1920,
-+ .vso_bline = 51,
-+ .vso_eline = 53,
-+ .vso_eline_present = true,
-+ /* sy_val */
-+ /* sy2_val */
-+ .max_lncnt = 2249,
-+ },
-+};
-+
-+union meson_hdmi_venc_mode meson_hdmi_encp_mode_2160p25 = {
-+ .encp = {
-+ .dvi_settings = 0x1,
-+ .video_mode = 0x4040,
-+ .video_mode_adv = 0x8,
-+ /* video_sync_mode */
-+ /* video_yc_dly */
-+ /* video_rgb_ctrl */
-+ .video_filt_ctrl = 0x1000,
-+ .video_filt_ctrl_present = true,
-+ /* video_ofld_voav_ofst */
-+ .yfp1_htime = 140,
-+ .yfp2_htime = 140+3840,
-+ .max_pxcnt = 3840+1440-1,
-+ .hspuls_begin = 2156+1920,
-+ .hspuls_end = 44,
-+ .hspuls_switch = 44,
-+ .vspuls_begin = 140,
-+ .vspuls_end = 2059+1920,
-+ .vspuls_bline = 0,
-+ .vspuls_eline = 4,
-+ .havon_begin = 148,
-+ .havon_end = 3987,
-+ .vavon_bline = 89,
-+ .vavon_eline = 2248,
-+ /* eqpuls_begin */
-+ /* eqpuls_end */
-+ /* eqpuls_bline */
-+ /* eqpuls_eline */
-+ .hso_begin = 44,
-+ .hso_end = 2156+1920,
-+ .vso_begin = 2100+1920,
-+ .vso_end = 2164+1920,
-+ .vso_bline = 51,
-+ .vso_eline = 53,
-+ .vso_eline_present = true,
-+ /* sy_val */
-+ /* sy2_val */
-+ .max_lncnt = 2249,
-+ },
-+};
-+
-+union meson_hdmi_venc_mode meson_hdmi_encp_mode_2160p30 = {
-+ .encp = {
-+ .dvi_settings = 0x1,
-+ .video_mode = 0x4040,
-+ .video_mode_adv = 0x8,
-+ /* video_sync_mode */
-+ /* video_yc_dly */
-+ /* video_rgb_ctrl */
-+ .video_filt_ctrl = 0x1000,
-+ .video_filt_ctrl_present = true,
-+ /* video_ofld_voav_ofst */
-+ .yfp1_htime = 140,
-+ .yfp2_htime = 140+3840,
-+ .max_pxcnt = 3840+560-1,
-+ .hspuls_begin = 2156+1920,
-+ .hspuls_end = 44,
-+ .hspuls_switch = 44,
-+ .vspuls_begin = 140,
-+ .vspuls_end = 2059+1920,
-+ .vspuls_bline = 0,
-+ .vspuls_eline = 4,
-+ .havon_begin = 148,
-+ .havon_end = 3987,
-+ .vavon_bline = 89,
-+ .vavon_eline = 2248,
-+ /* eqpuls_begin */
-+ /* eqpuls_end */
-+ /* eqpuls_bline */
-+ /* eqpuls_eline */
-+ .hso_begin = 44,
-+ .hso_end = 2156+1920,
-+ .vso_begin = 2100+1920,
-+ .vso_end = 2164+1920,
-+ .vso_bline = 51,
-+ .vso_eline = 53,
-+ .vso_eline_present = true,
-+ /* sy_val */
-+ /* sy2_val */
-+ .max_lncnt = 2249,
-+ },
-+};
-+
- struct meson_hdmi_venc_vic_mode {
- unsigned int vic;
- union meson_hdmi_venc_mode *mode;
-@@ -718,6 +844,9 @@ struct meson_hdmi_venc_vic_mode {
- { 34, &meson_hdmi_encp_mode_1080p30 },
- { 31, &meson_hdmi_encp_mode_1080p50 },
- { 16, &meson_hdmi_encp_mode_1080p60 },
-+ { 93, &meson_hdmi_encp_mode_2160p24 },
-+ { 94, &meson_hdmi_encp_mode_2160p25 },
-+ { 95, &meson_hdmi_encp_mode_2160p30 },
- { 0, NULL}, /* sentinel */
- };
-
diff --git a/testing/linux-amlogic/0009-ARM64-dts-meson-gx-add-audio-controller-nodes.patch b/testing/linux-amlogic/0009-ARM64-dts-meson-gx-add-audio-controller-nodes.patch
deleted file mode 100644
index f16edd0d1b6..00000000000
--- a/testing/linux-amlogic/0009-ARM64-dts-meson-gx-add-audio-controller-nodes.patch
+++ /dev/null
@@ -1,187 +0,0 @@
-From 7ecd280bd317cff3c608b32b2a185929b2ec17ca Mon Sep 17 00:00:00 2001
-From: Jerome Brunet <jbrunet@baylibre.com>
-Date: Thu, 30 Mar 2017 15:19:04 +0200
-Subject: [PATCH] ARM64: dts: meson-gx: add audio controller nodes
-
-Add audio controller nodes for Amlogic meson gxbb and gxl.
-This includes the audio-core node, the i2s and spdif DAIs, i2s and spdif
-aiu DMAs.
-
-Audio on this SoC family is still a work in progress. More nodes are likely
-to be added later on (pcm DAIs, input DMAs, etc ...)
-
-Signed-off-by: Jerome Brunet <jbrunet@baylibre.com>
-
----
- arch/arm64/boot/dts/amlogic/meson-gx.dtsi | 35 ++++++++++++++++++++++++++
- arch/arm64/boot/dts/amlogic/meson-gxbb.dtsi | 39 +++++++++++++++++++++++++++++
- arch/arm64/boot/dts/amlogic/meson-gxl.dtsi | 38 ++++++++++++++++++++++++++++
- 3 files changed, 112 insertions(+)
-
-diff --git a/arch/arm64/boot/dts/amlogic/meson-gx.dtsi b/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
-index b8dc4db..6b64b63 100644
---- a/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
-+++ b/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
-@@ -203,6 +203,41 @@
- #reset-cells = <1>;
- };
-
-+ audio: audio@5400 {
-+ compatible = "amlogic,meson-audio-core";
-+ reg = <0x0 0x5400 0x0 0x2ac>,
-+ <0x0 0xa000 0x0 0x304>;
-+ reg-names = "aiu", "audin";
-+ status = "disabled";
-+
-+ aiu_i2s_dma: aiu_i2s_dma {
-+ #sound-dai-cells = <0>;
-+ compatible = "amlogic,meson-aiu-i2s-dma";
-+ interrupts = <GIC_SPI 48 IRQ_TYPE_EDGE_RISING>;
-+ status = "disabled";
-+ };
-+
-+ aiu_spdif_dma: aiu_spdif_dma {
-+ #sound-dai-cells = <0>;
-+ compatible = "amlogic,meson-aiu-spdif-dma";
-+ interrupts = <GIC_SPI 50 IRQ_TYPE_EDGE_RISING>;
-+ status = "disabled";
-+ };
-+
-+ i2s_dai: i2s_dai {
-+ #sound-dai-cells = <0>;
-+ compatible = "amlogic,meson-i2s-dai";
-+ status = "disabled";
-+ };
-+
-+ spdif_dai: spdif_dai {
-+ #sound-dai-cells = <0>;
-+ compatible = "amlogic,meson-spdif-dai";
-+ status = "disabled";
-+ };
-+
-+ };
-+
- uart_A: serial@84c0 {
- compatible = "amlogic,meson-gx-uart";
- reg = <0x0 0x84c0 0x0 0x18>;
-diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb.dtsi b/arch/arm64/boot/dts/amlogic/meson-gxbb.dtsi
-index 98cbba6..7913249 100644
---- a/arch/arm64/boot/dts/amlogic/meson-gxbb.dtsi
-+++ b/arch/arm64/boot/dts/amlogic/meson-gxbb.dtsi
-@@ -659,6 +659,35 @@
- };
- };
-
-+&audio {
-+ clocks = <&clkc CLKID_AIU>,
-+ <&clkc CLKID_AIU_GLUE>,
-+ <&clkc CLKID_I2S_SPDIF>;
-+ clock-names = "aiu_top", "aiu_glue", "audin";
-+ resets = <&reset RESET_AIU>,
-+ <&reset RESET_AUDIN>;
-+ reset-names = "aiu", "audin";
-+};
-+
-+&aiu_i2s_dma {
-+ clocks = <&clkc CLKID_I2S_OUT>;
-+ clock-names = "fast";
-+};
-+
-+&aiu_spdif_dma {
-+ clocks = <&clkc CLKID_IEC958>;
-+ clock-names = "fast";
-+
-+};
-+
-+&i2s_dai {
-+ clocks = <&clkc CLKID_I2S_OUT>,
-+ <&clkc CLKID_MIXER_IFACE>,
-+ <&clkc CLKID_AOCLK_GATE>,
-+ <&clkc CLKID_CTS_AMCLK>;
-+ clock-names = "fast", "iface", "bclks", "mclk";
-+};
-+
- &pwrc_vpu {
- resets = <&reset RESET_VIU>,
- <&reset RESET_VENC>,
-@@ -741,6 +770,15 @@
- num-cs = <1>;
- };
-
-+&spdif_dai {
-+ clocks = <&clkc CLKID_IEC958>,
-+ <&clkc CLKID_IEC958_GATE>,
-+ <&clkc CLKID_CTS_MCLK_I958>,
-+ <&clkc CLKID_CTS_AMCLK>,
-+ <&clkc CLKID_CTS_I958>;
-+ clock-names = "fast", "iface", "mclk_i958", "mclk_i2s", "mclk";
-+};
-+
- &spifc {
- clocks = <&clkc CLKID_SPI>;
- };
-@@ -774,3 +812,4 @@
- compatible = "amlogic,meson-gxbb-vpu", "amlogic,meson-gx-vpu";
- power-domains = <&pwrc_vpu>;
- };
-+
-diff --git a/arch/arm64/boot/dts/amlogic/meson-gxl.dtsi b/arch/arm64/boot/dts/amlogic/meson-gxl.dtsi
-index c87a80e..20922cd 100644
---- a/arch/arm64/boot/dts/amlogic/meson-gxl.dtsi
-+++ b/arch/arm64/boot/dts/amlogic/meson-gxl.dtsi
-@@ -660,6 +660,34 @@
- };
- };
-
-+&audio {
-+ clocks = <&clkc CLKID_AIU>,
-+ <&clkc CLKID_AIU_GLUE>,
-+ <&clkc CLKID_I2S_SPDIF>;
-+ clock-names = "aiu_top", "aiu_glue", "audin";
-+ resets = <&reset RESET_AIU>,
-+ <&reset RESET_AUDIN>;
-+ reset-names = "aiu", "audin";
-+};
-+
-+&aiu_i2s_dma {
-+ clocks = <&clkc CLKID_I2S_OUT>;
-+ clock-names = "fast";
-+};
-+
-+&aiu_spdif_dma {
-+ clocks = <&clkc CLKID_IEC958>;
-+ clock-names = "fast";
-+};
-+
-+&i2s_dai {
-+ clocks = <&clkc CLKID_I2S_OUT>,
-+ <&clkc CLKID_MIXER_IFACE>,
-+ <&clkc CLKID_AOCLK_GATE>,
-+ <&clkc CLKID_CTS_AMCLK>;
-+ clock-names = "fast", "iface", "bclks", "mclk";
-+};
-+
- &pwrc_vpu {
- resets = <&reset RESET_VIU>,
- <&reset RESET_VENC>,
-@@ -742,6 +770,15 @@
- num-cs = <1>;
- };
-
-+&spdif_dai {
-+ clocks = <&clkc CLKID_IEC958>,
-+ <&clkc CLKID_IEC958_GATE>,
-+ <&clkc CLKID_CTS_MCLK_I958>,
-+ <&clkc CLKID_CTS_AMCLK>,
-+ <&clkc CLKID_CTS_I958>;
-+ clock-names = "fast", "iface", "mclk_i958", "mclk_i2s", "mclk";
-+};
-+
- &spifc {
- clocks = <&clkc CLKID_SPI>;
- };
-@@ -775,3 +812,4 @@
- compatible = "amlogic,meson-gxl-vpu", "amlogic,meson-gx-vpu";
- power-domains = <&pwrc_vpu>;
- };
-+
diff --git a/testing/linux-amlogic/0009-drm-meson-Use-drm_fbdev_generic_setup.patch b/testing/linux-amlogic/0009-drm-meson-Use-drm_fbdev_generic_setup.patch
deleted file mode 100644
index fc3511a1114..00000000000
--- a/testing/linux-amlogic/0009-drm-meson-Use-drm_fbdev_generic_setup.patch
+++ /dev/null
@@ -1,100 +0,0 @@
-From a753ec94679503680fcf86ffad3f3d3eb817c6b9 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?= <noralf@tronnes.org>
-Date: Sat, 8 Sep 2018 15:46:33 +0200
-Subject: [PATCH] drm/meson: Use drm_fbdev_generic_setup()
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-The CMA helper is already using the drm_fb_helper_generic_probe part of
-the generic fbdev emulation. This patch makes full use of the generic
-fbdev emulation by using its drm_client callbacks. This means that
-drm_mode_config_funcs->output_poll_changed and drm_driver->lastclose are
-now handled by the emulation code. Additionally fbdev unregister happens
-automatically on drm_dev_unregister().
-
-The drm_fbdev_generic_setup() call is put after drm_dev_register() in the
-driver. This is done to highlight the fact that fbdev emulation is an
-internal client that makes use of the driver, it is not part of the
-driver as such. If fbdev setup fails, an error is printed, but the driver
-succeeds probing.
-
-Cc: Neil Armstrong <narmstrong@baylibre.com>
-Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
-
----
- drivers/gpu/drm/meson/meson_drv.c | 19 ++-----------------
- drivers/gpu/drm/meson/meson_drv.h | 1 -
- 2 files changed, 2 insertions(+), 18 deletions(-)
-
-diff --git a/drivers/gpu/drm/meson/meson_drv.c b/drivers/gpu/drm/meson/meson_drv.c
-index b55e03d..3997e3e 100644
---- a/drivers/gpu/drm/meson/meson_drv.c
-+++ b/drivers/gpu/drm/meson/meson_drv.c
-@@ -69,15 +69,7 @@
- * - Powering Up HDMI controller and PHY
- */
-
--static void meson_fb_output_poll_changed(struct drm_device *dev)
--{
-- struct meson_drm *priv = dev->dev_private;
--
-- drm_fbdev_cma_hotplug_event(priv->fbdev);
--}
--
- static const struct drm_mode_config_funcs meson_mode_config_funcs = {
-- .output_poll_changed = meson_fb_output_poll_changed,
- .atomic_check = drm_atomic_helper_check,
- .atomic_commit = drm_atomic_helper_commit,
- .fb_create = drm_gem_fb_create,
-@@ -314,13 +306,6 @@ static int meson_drv_bind_master(struct device *dev, bool has_components)
-
- drm_mode_config_reset(drm);
-
-- priv->fbdev = drm_fbdev_cma_init(drm, 32,
-- drm->mode_config.num_connector);
-- if (IS_ERR(priv->fbdev)) {
-- ret = PTR_ERR(priv->fbdev);
-- goto free_drm;
-- }
--
- drm_kms_helper_poll_init(drm);
-
- platform_set_drvdata(pdev, priv);
-@@ -329,6 +314,8 @@ static int meson_drv_bind_master(struct device *dev, bool has_components)
- if (ret)
- goto free_drm;
-
-+ drm_fbdev_generic_setup(drm, 32);
-+
- return 0;
-
- free_drm:
-@@ -345,7 +332,6 @@ static int meson_drv_bind(struct device *dev)
- static void meson_drv_unbind(struct device *dev)
- {
- struct drm_device *drm = dev_get_drvdata(dev);
-- struct meson_drm *priv = drm->dev_private;
-
- if (priv->canvas) {
- meson_canvas_free(priv->canvas, priv->canvas_id_osd1);
-@@ -356,7 +342,6 @@ static void meson_drv_unbind(struct device *dev)
-
- drm_dev_unregister(drm);
- drm_kms_helper_poll_fini(drm);
-- drm_fbdev_cma_fini(priv->fbdev);
- drm_mode_config_cleanup(drm);
- drm_dev_put(drm);
-
-diff --git a/drivers/gpu/drm/meson/meson_drv.h b/drivers/gpu/drm/meson/meson_drv.h
-index a955354..4dccf4c 100644
---- a/drivers/gpu/drm/meson/meson_drv.h
-+++ b/drivers/gpu/drm/meson/meson_drv.h
-@@ -40,7 +40,6 @@ struct meson_drm {
-
- struct drm_device *drm;
- struct drm_crtc *crtc;
-- struct drm_fbdev_cma *fbdev;
- struct drm_plane *primary_plane;
- struct drm_plane *overlay_plane;
-
diff --git a/testing/linux-amlogic/0010-fixup-drm-meson-Use-optional-canvas-provider.patch b/testing/linux-amlogic/0010-fixup-drm-meson-Use-optional-canvas-provider.patch
deleted file mode 100644
index 9ea9352c9b5..00000000000
--- a/testing/linux-amlogic/0010-fixup-drm-meson-Use-optional-canvas-provider.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-From 07145ad0791209d3782eca4800406e7028e40a24 Mon Sep 17 00:00:00 2001
-From: Neil Armstrong <narmstrong@baylibre.com>
-Date: Wed, 7 Nov 2018 11:24:43 +0100
-Subject: [PATCH] fixup! drm/meson: Use optional canvas provider
-
----
- drivers/gpu/drm/meson/meson_drv.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/drivers/gpu/drm/meson/meson_drv.c b/drivers/gpu/drm/meson/meson_drv.c
-index 3997e3e..3ee4d4a4e 100644
---- a/drivers/gpu/drm/meson/meson_drv.c
-+++ b/drivers/gpu/drm/meson/meson_drv.c
-@@ -332,6 +332,7 @@ static int meson_drv_bind(struct device *dev)
- static void meson_drv_unbind(struct device *dev)
- {
- struct drm_device *drm = dev_get_drvdata(dev);
-+ struct meson_drm *priv = drm->dev_private;
-
- if (priv->canvas) {
- meson_canvas_free(priv->canvas, priv->canvas_id_osd1);
diff --git a/testing/linux-amlogic/0010-snd-meson-activate-HDMI-audio-path.patch b/testing/linux-amlogic/0010-snd-meson-activate-HDMI-audio-path.patch
deleted file mode 100644
index 8a3ea861f26..00000000000
--- a/testing/linux-amlogic/0010-snd-meson-activate-HDMI-audio-path.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-From c89e4a9d376b72bb00c1c71795b86fe81914a3ea Mon Sep 17 00:00:00 2001
-From: Jerome Brunet <jbrunet@baylibre.com>
-Date: Fri, 7 Jul 2017 17:39:21 +0200
-Subject: [PATCH] snd: meson: activate HDMI audio path
-
-Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
-
----
- sound/soc/meson/i2s-dai.c | 22 ++++++++++++++++++++++
- 1 file changed, 22 insertions(+)
-
-diff --git a/sound/soc/meson/i2s-dai.c b/sound/soc/meson/i2s-dai.c
-index 1008af8..63fe098 100644
---- a/sound/soc/meson/i2s-dai.c
-+++ b/sound/soc/meson/i2s-dai.c
-@@ -56,8 +56,19 @@ struct meson_i2s_dai {
- #define AIU_CLK_CTRL_ALRCLK_RIGHT_J (2 << 8)
- #define AIU_CLK_CTRL_MORE_I2S_DIV_MASK GENMASK(5, 0)
- #define AIU_CLK_CTRL_MORE_I2S_DIV(div) (((div) - 1) << 0)
-+#define AIU_CLK_CTRL_MORE_HDMI_TX_SEL_MASK BIT(6)
-+#define AIU_CLK_CTRL_MORE_HDMI_TX_I958_CLK (0 << 6)
-+#define AIU_CLK_CTRL_MORE_HDMI_TX_INT_CLK (1 << 6)
- #define AIU_CODEC_DAC_LRCLK_CTRL_DIV_MASK GENMASK(11, 0)
- #define AIU_CODEC_DAC_LRCLK_CTRL_DIV(div) (((div) - 1) << 0)
-+#define AIU_HDMI_CLK_DATA_CTRL_CLK_SEL_MASK GENMASK(1, 0)
-+#define AIU_HDMI_CLK_DATA_CTRL_CLK_DISABLE (0 << 0)
-+#define AIU_HDMI_CLK_DATA_CTRL_CLK_PCM (1 << 0)
-+#define AIU_HDMI_CLK_DATA_CTRL_CLK_I2S (2 << 0)
-+#define AIU_HDMI_CLK_DATA_CTRL_DATA_SEL_MASK GENMASK(5, 4)
-+#define AIU_HDMI_CLK_DATA_CTRL_DATA_MUTE (0 << 4)
-+#define AIU_HDMI_CLK_DATA_CTRL_DATA_PCM (1 << 4)
-+#define AIU_HDMI_CLK_DATA_CTRL_DATA_I2S (2 << 4)
- #define AIU_I2S_DAC_CFG_PAYLOAD_SIZE_MASK GENMASK(1, 0)
- #define AIU_I2S_DAC_CFG_AOCLK_32 (0 << 0)
- #define AIU_I2S_DAC_CFG_AOCLK_48 (2 << 0)
-@@ -221,6 +232,17 @@ static int meson_i2s_dai_hw_params(struct snd_pcm_substream *substream,
- return ret;
- }
-
-+ /* Quick and dirty hack for HDMI */
-+ regmap_update_bits(priv->core->aiu, AIU_HDMI_CLK_DATA_CTRL,
-+ AIU_HDMI_CLK_DATA_CTRL_CLK_SEL_MASK |
-+ AIU_HDMI_CLK_DATA_CTRL_DATA_SEL_MASK,
-+ AIU_HDMI_CLK_DATA_CTRL_CLK_I2S |
-+ AIU_HDMI_CLK_DATA_CTRL_DATA_I2S);
-+
-+ regmap_update_bits(priv->core->aiu, AIU_CLK_CTRL_MORE,
-+ AIU_CLK_CTRL_MORE_HDMI_TX_SEL_MASK,
-+ AIU_CLK_CTRL_MORE_HDMI_TX_INT_CLK);
-+
- return 0;
- }
-
diff --git a/testing/linux-amlogic/0011-drm-meson-select-dw-hdmi-i2s-audio-for-meson-hdmi.patch b/testing/linux-amlogic/0011-drm-meson-select-dw-hdmi-i2s-audio-for-meson-hdmi.patch
deleted file mode 100644
index 25c5a7f968e..00000000000
--- a/testing/linux-amlogic/0011-drm-meson-select-dw-hdmi-i2s-audio-for-meson-hdmi.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-From d46542e83265b476b32b94729e609a9a7767deac Mon Sep 17 00:00:00 2001
-From: Jerome Brunet <jbrunet@baylibre.com>
-Date: Tue, 14 Feb 2017 19:18:04 +0100
-Subject: [PATCH] drm/meson: select dw-hdmi i2s audio for meson hdmi
-
-Signed-off-by: Jerome Brunet <jbrunet@baylibre.com>
-
----
- drivers/gpu/drm/meson/Kconfig | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/drivers/gpu/drm/meson/Kconfig b/drivers/gpu/drm/meson/Kconfig
-index 3ce51d8..02d400b 100644
---- a/drivers/gpu/drm/meson/Kconfig
-+++ b/drivers/gpu/drm/meson/Kconfig
-@@ -13,3 +13,4 @@ config DRM_MESON_DW_HDMI
- depends on DRM_MESON
- default y if DRM_MESON
- select DRM_DW_HDMI
-+ select DRM_DW_HDMI_I2S_AUDIO
diff --git a/testing/linux-amlogic/0012-ARM64-dts-meson-gx-add-sound-dai-cells-to-HDMI-node.patch b/testing/linux-amlogic/0012-ARM64-dts-meson-gx-add-sound-dai-cells-to-HDMI-node.patch
deleted file mode 100644
index 0b84218aa9e..00000000000
--- a/testing/linux-amlogic/0012-ARM64-dts-meson-gx-add-sound-dai-cells-to-HDMI-node.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 0eb1a7bb3fd9e1ff2f368bb20490c7a032fc96e6 Mon Sep 17 00:00:00 2001
-From: Jerome Brunet <jbrunet@baylibre.com>
-Date: Wed, 20 Sep 2017 18:01:26 +0200
-Subject: [PATCH] ARM64: dts: meson-gx: add sound-dai-cells to HDMI node
-
-Signed-off-by: Jerome Brunet <jbrunet@baylibre.com>
-
----
- arch/arm64/boot/dts/amlogic/meson-gxbb.dtsi | 1 +
- arch/arm64/boot/dts/amlogic/meson-gxl.dtsi | 1 +
- 2 files changed, 2 insertions(+)
-
-diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb.dtsi b/arch/arm64/boot/dts/amlogic/meson-gxbb.dtsi
-index 7913249..2a4d506 100644
---- a/arch/arm64/boot/dts/amlogic/meson-gxbb.dtsi
-+++ b/arch/arm64/boot/dts/amlogic/meson-gxbb.dtsi
-@@ -305,6 +305,7 @@
- <&clkc CLKID_CLK81>,
- <&clkc CLKID_GCLK_VENCI_INT0>;
- clock-names = "isfr", "iahb", "venci";
-+ #sound-dai-cells = <0>;
- };
-
- &sysctrl {
-diff --git a/arch/arm64/boot/dts/amlogic/meson-gxl.dtsi b/arch/arm64/boot/dts/amlogic/meson-gxl.dtsi
-index 20922cd..9f4b618 100644
---- a/arch/arm64/boot/dts/amlogic/meson-gxl.dtsi
-+++ b/arch/arm64/boot/dts/amlogic/meson-gxl.dtsi
-@@ -257,6 +257,7 @@
- <&clkc CLKID_CLK81>,
- <&clkc CLKID_GCLK_VENCI_INT0>;
- clock-names = "isfr", "iahb", "venci";
-+ #sound-dai-cells = <0>;
- };
-
- &sysctrl {
diff --git a/testing/linux-amlogic/0012-drm-meson-add-support-for-1080p25-mode.patch b/testing/linux-amlogic/0012-drm-meson-add-support-for-1080p25-mode.patch
deleted file mode 100644
index bd267a5c032..00000000000
--- a/testing/linux-amlogic/0012-drm-meson-add-support-for-1080p25-mode.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-From 1f929f36f48f0f957f6c73cec309235243bd42f9 Mon Sep 17 00:00:00 2001
-From: Neil Armstrong <narmstrong@baylibre.com>
-Date: Mon, 12 Nov 2018 16:10:31 +0100
-Subject: [PATCH] drm/meson: add support for 1080p25 mode
-
----
- drivers/gpu/drm/meson/meson_venc.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/drivers/gpu/drm/meson/meson_venc.c b/drivers/gpu/drm/meson/meson_venc.c
-index d68ccbf..0fbe525 100644
---- a/drivers/gpu/drm/meson/meson_venc.c
-+++ b/drivers/gpu/drm/meson/meson_venc.c
-@@ -841,6 +841,7 @@ struct meson_hdmi_venc_vic_mode {
- { 5, &meson_hdmi_encp_mode_1080i60 },
- { 20, &meson_hdmi_encp_mode_1080i50 },
- { 32, &meson_hdmi_encp_mode_1080p24 },
-+ { 33, &meson_hdmi_encp_mode_1080p50 },
- { 34, &meson_hdmi_encp_mode_1080p30 },
- { 31, &meson_hdmi_encp_mode_1080p50 },
- { 16, &meson_hdmi_encp_mode_1080p60 },
diff --git a/testing/linux-amlogic/0013-ARM64-dts-meson-activate-hdmi-audio-HDMI-enabled-boa.patch b/testing/linux-amlogic/0013-ARM64-dts-meson-activate-hdmi-audio-HDMI-enabled-boa.patch
deleted file mode 100644
index 3ad65fc4730..00000000000
--- a/testing/linux-amlogic/0013-ARM64-dts-meson-activate-hdmi-audio-HDMI-enabled-boa.patch
+++ /dev/null
@@ -1,861 +0,0 @@
-From f0417a0c309fb02a5896abb868a52a1a3e23d610 Mon Sep 17 00:00:00 2001
-From: Jerome Brunet <jbrunet@baylibre.com>
-Date: Wed, 20 Sep 2017 18:10:08 +0200
-Subject: [PATCH] ARM64: dts: meson: activate hdmi audio HDMI enabled boards
-
-This patch activate audio over HDMI on selected boards
-
-Please note that this audio support is based on WIP changes
-This should be considered as preview and it does not reflect
-the audio I expect to see merged
-
-Signed-off-by: Jerome Brunet <jbrunet@baylibre.com>
-Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
-
----
- .../arm64/boot/dts/amlogic/meson-gx-p23x-q20x.dtsi | 45 ++++++++++++++++++++++
- .../boot/dts/amlogic/meson-gxbb-nanopi-k2.dts | 45 ++++++++++++++++++++++
- .../boot/dts/amlogic/meson-gxbb-nexbox-a95x.dts | 45 ++++++++++++++++++++++
- .../arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts | 45 ++++++++++++++++++++++
- arch/arm64/boot/dts/amlogic/meson-gxbb-p20x.dtsi | 45 ++++++++++++++++++++++
- arch/arm64/boot/dts/amlogic/meson-gxbb-wetek.dtsi | 45 ++++++++++++++++++++++
- .../dts/amlogic/meson-gxl-s905x-khadas-vim.dts | 45 ++++++++++++++++++++++
- .../dts/amlogic/meson-gxl-s905x-libretech-cc.dts | 45 ++++++++++++++++++++++
- .../dts/amlogic/meson-gxl-s905x-nexbox-a95x.dts | 45 ++++++++++++++++++++++
- .../boot/dts/amlogic/meson-gxl-s905x-p212.dts | 45 ++++++++++++++++++++++
- .../boot/dts/amlogic/meson-gxm-khadas-vim2.dts | 45 ++++++++++++++++++++++
- .../arm64/boot/dts/amlogic/meson-gxm-nexbox-a1.dts | 45 ++++++++++++++++++++++
- 12 files changed, 540 insertions(+)
-
-diff --git a/arch/arm64/boot/dts/amlogic/meson-gx-p23x-q20x.dtsi b/arch/arm64/boot/dts/amlogic/meson-gx-p23x-q20x.dtsi
-index 765247b..fb9ad6f 100644
---- a/arch/arm64/boot/dts/amlogic/meson-gx-p23x-q20x.dtsi
-+++ b/arch/arm64/boot/dts/amlogic/meson-gx-p23x-q20x.dtsi
-@@ -102,6 +102,39 @@
- };
- };
- };
-+
-+ sound {
-+ compatible = "simple-audio-card";
-+ simple-audio-card,name = "meson-gx-audio";
-+
-+ assigned-clocks = <&clkc CLKID_MPLL2>,
-+ <&clkc CLKID_MPLL0>,
-+ <&clkc CLKID_MPLL1>;
-+ assigned-clock-parents = <0>, <0>, <0>;
-+ assigned-clock-rates = <294912000>,
-+ <270950400>,
-+ <393216000>;
-+
-+ simple-audio-card,dai-link@0 {
-+ /* HDMI Output */
-+ format = "i2s";
-+ mclk-fs = <256>;
-+ bitclock-master = <&i2s_dai>;
-+ frame-master = <&i2s_dai>;
-+
-+ plat {
-+ sound-dai = <&aiu_i2s_dma>;
-+ };
-+
-+ cpu {
-+ sound-dai = <&i2s_dai>;
-+ };
-+
-+ codec {
-+ sound-dai = <&hdmi_tx>;
-+ };
-+ };
-+ };
- };
-
- &cec_AO {
-@@ -111,6 +144,14 @@
- hdmi-phandle = <&hdmi_tx>;
- };
-
-+&audio {
-+ status = "okay";
-+};
-+
-+&aiu_i2s_dma {
-+ status = "okay";
-+};
-+
- &cvbs_vdac_port {
- cvbs_vdac_out: endpoint {
- remote-endpoint = <&cvbs_connector_in>;
-@@ -133,6 +174,10 @@
- };
- };
-
-+&i2s_dai {
-+ status = "okay";
-+};
-+
- &ir {
- status = "okay";
- pinctrl-0 = <&remote_input_ao_pins>;
-diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb-nanopi-k2.dts b/arch/arm64/boot/dts/amlogic/meson-gxbb-nanopi-k2.dts
-index cbe99bd..5b10de9 100644
---- a/arch/arm64/boot/dts/amlogic/meson-gxbb-nanopi-k2.dts
-+++ b/arch/arm64/boot/dts/amlogic/meson-gxbb-nanopi-k2.dts
-@@ -88,6 +88,39 @@
- clock-names = "ext_clock";
- };
-
-+ sound {
-+ compatible = "simple-audio-card";
-+ simple-audio-card,name = "meson-gx-audio";
-+
-+ assigned-clocks = <&clkc CLKID_MPLL2>,
-+ <&clkc CLKID_MPLL0>,
-+ <&clkc CLKID_MPLL1>;
-+ assigned-clock-parents = <0>, <0>, <0>;
-+ assigned-clock-rates = <294912000>,
-+ <270950400>,
-+ <393216000>;
-+
-+ simple-audio-card,dai-link@0 {
-+ /* HDMI Output */
-+ format = "i2s";
-+ mclk-fs = <256>;
-+ bitclock-master = <&i2s_dai>;
-+ frame-master = <&i2s_dai>;
-+
-+ plat {
-+ sound-dai = <&aiu_i2s_dma>;
-+ };
-+
-+ cpu {
-+ sound-dai = <&i2s_dai>;
-+ };
-+
-+ codec {
-+ sound-dai = <&hdmi_tx>;
-+ };
-+ };
-+ };
-+
- vcc1v8: regulator-vcc1v8 {
- compatible = "regulator-fixed";
- regulator-name = "VCC1.8V";
-@@ -131,6 +164,14 @@
- };
- };
-
-+&audio {
-+ status = "okay";
-+};
-+
-+&aiu_i2s_dma {
-+ status = "okay";
-+};
-+
- &cec_AO {
- status = "okay";
- pinctrl-0 = <&ao_cec_pins>;
-@@ -185,6 +226,10 @@
- };
- };
-
-+&i2s_dai {
-+ status = "okay";
-+};
-+
- &ir {
- status = "okay";
- pinctrl-0 = <&remote_input_ao_pins>;
-diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb-nexbox-a95x.dts b/arch/arm64/boot/dts/amlogic/meson-gxbb-nexbox-a95x.dts
-index 4cf7f6e..ff87bdc 100644
---- a/arch/arm64/boot/dts/amlogic/meson-gxbb-nexbox-a95x.dts
-+++ b/arch/arm64/boot/dts/amlogic/meson-gxbb-nexbox-a95x.dts
-@@ -119,6 +119,39 @@
- clock-names = "ext_clock";
- };
-
-+ sound {
-+ compatible = "simple-audio-card";
-+ simple-audio-card,name = "meson-gx-audio";
-+
-+ assigned-clocks = <&clkc CLKID_MPLL2>,
-+ <&clkc CLKID_MPLL0>,
-+ <&clkc CLKID_MPLL1>;
-+ assigned-clock-parents = <0>, <0>, <0>;
-+ assigned-clock-rates = <294912000>,
-+ <270950400>,
-+ <393216000>;
-+
-+ simple-audio-card,dai-link@0 {
-+ /* HDMI Output */
-+ format = "i2s";
-+ mclk-fs = <256>;
-+ bitclock-master = <&i2s_dai>;
-+ frame-master = <&i2s_dai>;
-+
-+ plat {
-+ sound-dai = <&aiu_i2s_dma>;
-+ };
-+
-+ cpu {
-+ sound-dai = <&i2s_dai>;
-+ };
-+
-+ codec {
-+ sound-dai = <&hdmi_tx>;
-+ };
-+ };
-+ };
-+
- cvbs-connector {
- compatible = "composite-video-connector";
-
-@@ -154,6 +187,14 @@
- hdmi-phandle = <&hdmi_tx>;
- };
-
-+&audio {
-+ status = "okay";
-+};
-+
-+&aiu_i2s_dma {
-+ status = "okay";
-+};
-+
- &ethmac {
- status = "okay";
- pinctrl-0 = <&eth_rmii_pins>;
-@@ -190,6 +231,10 @@
- };
- };
-
-+&i2s_dai {
-+ status = "okay";
-+};
-+
- &ir {
- status = "okay";
- pinctrl-0 = <&remote_input_ao_pins>;
-diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts b/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts
-index 54954b3..3da3309 100644
---- a/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts
-+++ b/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts
-@@ -110,6 +110,39 @@
- };
- };
- };
-+
-+ sound {
-+ compatible = "simple-audio-card";
-+ simple-audio-card,name = "meson-gx-audio";
-+
-+ assigned-clocks = <&clkc CLKID_MPLL2>,
-+ <&clkc CLKID_MPLL0>,
-+ <&clkc CLKID_MPLL1>;
-+ assigned-clock-parents = <0>, <0>, <0>;
-+ assigned-clock-rates = <294912000>,
-+ <270950400>,
-+ <393216000>;
-+
-+ simple-audio-card,dai-link@0 {
-+ /* HDMI Output */
-+ format = "i2s";
-+ mclk-fs = <256>;
-+ bitclock-master = <&i2s_dai>;
-+ frame-master = <&i2s_dai>;
-+
-+ plat {
-+ sound-dai = <&aiu_i2s_dma>;
-+ };
-+
-+ cpu {
-+ sound-dai = <&i2s_dai>;
-+ };
-+
-+ codec {
-+ sound-dai = <&hdmi_tx>;
-+ };
-+ };
-+ };
- };
-
- &cec_AO {
-@@ -119,6 +152,14 @@
- hdmi-phandle = <&hdmi_tx>;
- };
-
-+&audio {
-+ status = "okay";
-+};
-+
-+&aiu_i2s_dma {
-+ status = "okay";
-+};
-+
- &ethmac {
- status = "okay";
- pinctrl-0 = <&eth_rgmii_pins>;
-@@ -181,6 +222,10 @@
- pinctrl-names = "default";
- };
-
-+&i2s_dai {
-+ status = "okay";
-+};
-+
- &ir {
- status = "okay";
- pinctrl-0 = <&remote_input_ao_pins>;
-diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb-p20x.dtsi b/arch/arm64/boot/dts/amlogic/meson-gxbb-p20x.dtsi
-index ce86226..84eb93b 100644
---- a/arch/arm64/boot/dts/amlogic/meson-gxbb-p20x.dtsi
-+++ b/arch/arm64/boot/dts/amlogic/meson-gxbb-p20x.dtsi
-@@ -113,6 +113,39 @@
- };
- };
- };
-+
-+ sound {
-+ compatible = "simple-audio-card";
-+ simple-audio-card,name = "meson-gx-audio";
-+
-+ assigned-clocks = <&clkc CLKID_MPLL2>,
-+ <&clkc CLKID_MPLL0>,
-+ <&clkc CLKID_MPLL1>;
-+ assigned-clock-parents = <0>, <0>, <0>;
-+ assigned-clock-rates = <294912000>,
-+ <270950400>,
-+ <393216000>;
-+
-+ simple-audio-card,dai-link@0 {
-+ /* HDMI Output */
-+ format = "i2s";
-+ mclk-fs = <256>;
-+ bitclock-master = <&i2s_dai>;
-+ frame-master = <&i2s_dai>;
-+
-+ plat {
-+ sound-dai = <&aiu_i2s_dma>;
-+ };
-+
-+ cpu {
-+ sound-dai = <&i2s_dai>;
-+ };
-+
-+ codec {
-+ sound-dai = <&hdmi_tx>;
-+ };
-+ };
-+ };
- };
-
- &cec_AO {
-@@ -122,6 +155,14 @@
- hdmi-phandle = <&hdmi_tx>;
- };
-
-+&audio {
-+ status = "okay";
-+};
-+
-+&aiu_i2s_dma {
-+ status = "okay";
-+};
-+
- &cvbs_vdac_port {
- cvbs_vdac_out: endpoint {
- remote-endpoint = <&cvbs_connector_in>;
-@@ -140,6 +181,10 @@
- };
- };
-
-+&i2s_dai {
-+ status = "okay";
-+};
-+
- &ir {
- status = "okay";
- pinctrl-0 = <&remote_input_ao_pins>;
-diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb-wetek.dtsi b/arch/arm64/boot/dts/amlogic/meson-gxbb-wetek.dtsi
-index 70325b2..7d1f172 100644
---- a/arch/arm64/boot/dts/amlogic/meson-gxbb-wetek.dtsi
-+++ b/arch/arm64/boot/dts/amlogic/meson-gxbb-wetek.dtsi
-@@ -105,6 +105,47 @@
- };
- };
- };
-+
-+ sound {
-+ compatible = "simple-audio-card";
-+ simple-audio-card,name = "meson-gx-audio";
-+
-+ assigned-clocks = <&clkc CLKID_MPLL2>,
-+ <&clkc CLKID_MPLL0>,
-+ <&clkc CLKID_MPLL1>;
-+ assigned-clock-parents = <0>, <0>, <0>;
-+ assigned-clock-rates = <294912000>,
-+ <270950400>,
-+ <393216000>;
-+
-+ simple-audio-card,dai-link@0 {
-+ /* HDMI Output */
-+ format = "i2s";
-+ mclk-fs = <256>;
-+ bitclock-master = <&i2s_dai>;
-+ frame-master = <&i2s_dai>;
-+
-+ plat {
-+ sound-dai = <&aiu_i2s_dma>;
-+ };
-+
-+ cpu {
-+ sound-dai = <&i2s_dai>;
-+ };
-+
-+ codec {
-+ sound-dai = <&hdmi_tx>;
-+ };
-+ };
-+ };
-+};
-+
-+&audio {
-+ status = "okay";
-+};
-+
-+&aiu_i2s_dma {
-+ status = "okay";
- };
-
- &cec_AO {
-@@ -159,6 +200,10 @@
- };
- };
-
-+&i2s_dai {
-+ status = "okay";
-+};
-+
- &ir {
- status = "okay";
- pinctrl-0 = <&remote_input_ao_pins>;
-diff --git a/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-khadas-vim.dts b/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-khadas-vim.dts
-index d32cf38..f053595 100644
---- a/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-khadas-vim.dts
-+++ b/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-khadas-vim.dts
-@@ -65,6 +65,39 @@
- };
- };
- };
-+
-+ sound {
-+ compatible = "simple-audio-card";
-+ simple-audio-card,name = "meson-gx-audio";
-+
-+ assigned-clocks = <&clkc CLKID_MPLL2>,
-+ <&clkc CLKID_MPLL0>,
-+ <&clkc CLKID_MPLL1>;
-+ assigned-clock-parents = <0>, <0>, <0>;
-+ assigned-clock-rates = <294912000>,
-+ <270950400>,
-+ <393216000>;
-+
-+ simple-audio-card,dai-link@0 {
-+ /* HDMI Output */
-+ format = "i2s";
-+ mclk-fs = <256>;
-+ bitclock-master = <&i2s_dai>;
-+ frame-master = <&i2s_dai>;
-+
-+ plat {
-+ sound-dai = <&aiu_i2s_dma>;
-+ };
-+
-+ cpu {
-+ sound-dai = <&i2s_dai>;
-+ };
-+
-+ codec {
-+ sound-dai = <&hdmi_tx>;
-+ };
-+ };
-+ };
- };
-
- &cec_AO {
-@@ -74,6 +107,14 @@
- hdmi-phandle = <&hdmi_tx>;
- };
-
-+&audio {
-+ status = "okay";
-+};
-+
-+&aiu_i2s_dma {
-+ status = "okay";
-+};
-+
- &hdmi_tx {
- status = "okay";
- pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>;
-@@ -86,6 +127,10 @@
- };
- };
-
-+&i2s_dai {
-+ status = "okay";
-+};
-+
- &i2c_A {
- status = "okay";
- pinctrl-0 = <&i2c_a_pins>;
-diff --git a/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-libretech-cc.dts b/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-libretech-cc.dts
-index f63bceb..f56969e 100644
---- a/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-libretech-cc.dts
-+++ b/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-libretech-cc.dts
-@@ -84,6 +84,39 @@
- regulator-always-on;
- };
-
-+ sound {
-+ compatible = "simple-audio-card";
-+ simple-audio-card,name = "meson-gx-audio";
-+
-+ assigned-clocks = <&clkc CLKID_MPLL2>,
-+ <&clkc CLKID_MPLL0>,
-+ <&clkc CLKID_MPLL1>;
-+ assigned-clock-parents = <0>, <0>, <0>;
-+ assigned-clock-rates = <294912000>,
-+ <270950400>,
-+ <393216000>;
-+
-+ simple-audio-card,dai-link@0 {
-+ /* HDMI Output */
-+ format = "i2s";
-+ mclk-fs = <256>;
-+ bitclock-master = <&i2s_dai>;
-+ frame-master = <&i2s_dai>;
-+
-+ plat {
-+ sound-dai = <&aiu_i2s_dma>;
-+ };
-+
-+ cpu {
-+ sound-dai = <&i2s_dai>;
-+ };
-+
-+ codec {
-+ sound-dai = <&hdmi_tx>;
-+ };
-+ };
-+ };
-+
- vcc_3v3: regulator-vcc_3v3 {
- compatible = "regulator-fixed";
- regulator-name = "VCC_3V3";
-@@ -130,6 +163,14 @@
- hdmi-phandle = <&hdmi_tx>;
- };
-
-+&audio {
-+ status = "okay";
-+};
-+
-+&aiu_i2s_dma {
-+ status = "okay";
-+};
-+
- &cvbs_vdac_port {
- cvbs_vdac_out: endpoint {
- remote-endpoint = <&cvbs_connector_in>;
-@@ -151,6 +192,10 @@
- pinctrl-names = "default";
- };
-
-+&i2s_dai {
-+ status = "okay";
-+};
-+
- &hdmi_tx {
- status = "okay";
- pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>;
-diff --git a/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-nexbox-a95x.dts b/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-nexbox-a95x.dts
-index 6739697..e3e777f 100644
---- a/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-nexbox-a95x.dts
-+++ b/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-nexbox-a95x.dts
-@@ -102,6 +102,39 @@
- };
- };
- };
-+
-+ sound {
-+ compatible = "simple-audio-card";
-+ simple-audio-card,name = "meson-gx-audio";
-+
-+ assigned-clocks = <&clkc CLKID_MPLL2>,
-+ <&clkc CLKID_MPLL0>,
-+ <&clkc CLKID_MPLL1>;
-+ assigned-clock-parents = <0>, <0>, <0>;
-+ assigned-clock-rates = <294912000>,
-+ <270950400>,
-+ <393216000>;
-+
-+ simple-audio-card,dai-link@0 {
-+ /* HDMI Output */
-+ format = "i2s";
-+ mclk-fs = <256>;
-+ bitclock-master = <&i2s_dai>;
-+ frame-master = <&i2s_dai>;
-+
-+ plat {
-+ sound-dai = <&aiu_i2s_dma>;
-+ };
-+
-+ cpu {
-+ sound-dai = <&i2s_dai>;
-+ };
-+
-+ codec {
-+ sound-dai = <&hdmi_tx>;
-+ };
-+ };
-+ };
- };
-
- &cec_AO {
-@@ -111,6 +144,14 @@
- hdmi-phandle = <&hdmi_tx>;
- };
-
-+&audio {
-+ status = "okay";
-+};
-+
-+&aiu_i2s_dma {
-+ status = "okay";
-+};
-+
- &cvbs_vdac_port {
- cvbs_vdac_out: endpoint {
- remote-endpoint = <&cvbs_connector_in>;
-@@ -135,6 +176,10 @@
- };
- };
-
-+&i2s_dai {
-+ status = "okay";
-+};
-+
- &ir {
- status = "okay";
- pinctrl-0 = <&remote_input_ao_pins>;
-diff --git a/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-p212.dts b/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-p212.dts
-index 5896e8a..f8c66a7 100644
---- a/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-p212.dts
-+++ b/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-p212.dts
-@@ -32,6 +32,39 @@
- };
- };
- };
-+
-+ sound {
-+ compatible = "simple-audio-card";
-+ simple-audio-card,name = "meson-gx-audio";
-+
-+ assigned-clocks = <&clkc CLKID_MPLL2>,
-+ <&clkc CLKID_MPLL0>,
-+ <&clkc CLKID_MPLL1>;
-+ assigned-clock-parents = <0>, <0>, <0>;
-+ assigned-clock-rates = <294912000>,
-+ <270950400>,
-+ <393216000>;
-+
-+ simple-audio-card,dai-link@0 {
-+ /* HDMI Output */
-+ format = "i2s";
-+ mclk-fs = <256>;
-+ bitclock-master = <&i2s_dai>;
-+ frame-master = <&i2s_dai>;
-+
-+ plat {
-+ sound-dai = <&aiu_i2s_dma>;
-+ };
-+
-+ cpu {
-+ sound-dai = <&i2s_dai>;
-+ };
-+
-+ codec {
-+ sound-dai = <&hdmi_tx>;
-+ };
-+ };
-+ };
- };
-
- &cec_AO {
-@@ -41,12 +74,24 @@
- hdmi-phandle = <&hdmi_tx>;
- };
-
-+&audio {
-+ status = "okay";
-+};
-+
-+&aiu_i2s_dma {
-+ status = "okay";
-+};
-+
- &cvbs_vdac_port {
- cvbs_vdac_out: endpoint {
- remote-endpoint = <&cvbs_connector_in>;
- };
- };
-
-+&i2s_dai {
-+ status = "okay";
-+};
-+
- &hdmi_tx {
- status = "okay";
- pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>;
-diff --git a/arch/arm64/boot/dts/amlogic/meson-gxm-khadas-vim2.dts b/arch/arm64/boot/dts/amlogic/meson-gxm-khadas-vim2.dts
-index 313f88f..4fbfa5a 100644
---- a/arch/arm64/boot/dts/amlogic/meson-gxm-khadas-vim2.dts
-+++ b/arch/arm64/boot/dts/amlogic/meson-gxm-khadas-vim2.dts
-@@ -85,6 +85,39 @@
- };
- };
-
-+ sound {
-+ compatible = "simple-audio-card";
-+ simple-audio-card,name = "meson-gx-audio";
-+
-+ assigned-clocks = <&clkc CLKID_MPLL2>,
-+ <&clkc CLKID_MPLL0>,
-+ <&clkc CLKID_MPLL1>;
-+ assigned-clock-parents = <0>, <0>, <0>;
-+ assigned-clock-rates = <294912000>,
-+ <270950400>,
-+ <393216000>;
-+
-+ simple-audio-card,dai-link@0 {
-+ /* HDMI Output */
-+ format = "i2s";
-+ mclk-fs = <256>;
-+ bitclock-master = <&i2s_dai>;
-+ frame-master = <&i2s_dai>;
-+
-+ plat {
-+ sound-dai = <&aiu_i2s_dma>;
-+ };
-+
-+ cpu {
-+ sound-dai = <&i2s_dai>;
-+ };
-+
-+ codec {
-+ sound-dai = <&hdmi_tx>;
-+ };
-+ };
-+ };
-+
- pwmleds {
- compatible = "pwm-leds";
-
-@@ -205,6 +238,14 @@
- hdmi-phandle = <&hdmi_tx>;
- };
-
-+&audio {
-+ status = "okay";
-+};
-+
-+&aiu_i2s_dma {
-+ status = "okay";
-+};
-+
- &cpu0 {
- #cooling-cells = <2>;
- };
-@@ -279,6 +320,10 @@
- };
- };
-
-+&i2s_dai {
-+ status = "okay";
-+};
-+
- &i2c_A {
- status = "okay";
- pinctrl-0 = <&i2c_a_pins>;
-diff --git a/arch/arm64/boot/dts/amlogic/meson-gxm-nexbox-a1.dts b/arch/arm64/boot/dts/amlogic/meson-gxm-nexbox-a1.dts
-index f7a1cff..b9c5e64 100644
---- a/arch/arm64/boot/dts/amlogic/meson-gxm-nexbox-a1.dts
-+++ b/arch/arm64/boot/dts/amlogic/meson-gxm-nexbox-a1.dts
-@@ -75,6 +75,39 @@
- };
- };
- };
-+
-+ sound {
-+ compatible = "simple-audio-card";
-+ simple-audio-card,name = "meson-gx-audio";
-+
-+ assigned-clocks = <&clkc CLKID_MPLL2>,
-+ <&clkc CLKID_MPLL0>,
-+ <&clkc CLKID_MPLL1>;
-+ assigned-clock-parents = <0>, <0>, <0>;
-+ assigned-clock-rates = <294912000>,
-+ <270950400>,
-+ <393216000>;
-+
-+ simple-audio-card,dai-link@0 {
-+ /* HDMI Output */
-+ format = "i2s";
-+ mclk-fs = <256>;
-+ bitclock-master = <&i2s_dai>;
-+ frame-master = <&i2s_dai>;
-+
-+ plat {
-+ sound-dai = <&aiu_i2s_dma>;
-+ };
-+
-+ cpu {
-+ sound-dai = <&i2s_dai>;
-+ };
-+
-+ codec {
-+ sound-dai = <&hdmi_tx>;
-+ };
-+ };
-+ };
- };
-
- &cec_AO {
-@@ -84,6 +117,14 @@
- hdmi-phandle = <&hdmi_tx>;
- };
-
-+&audio {
-+ status = "okay";
-+};
-+
-+&aiu_i2s_dma {
-+ status = "okay";
-+};
-+
- &cvbs_vdac_port {
- cvbs_vdac_out: endpoint {
- remote-endpoint = <&cvbs_connector_in>;
-@@ -129,6 +170,10 @@
- };
- };
-
-+&i2s_dai {
-+ status = "okay";
-+};
-+
- &ir {
- status = "okay";
- pinctrl-0 = <&remote_input_ao_pins>;
diff --git a/testing/linux-amlogic/0014-drm-bridge-dw-hdmi-Add-SCDC-and-TMDS-Scrambling-supp.patch b/testing/linux-amlogic/0014-drm-bridge-dw-hdmi-Add-SCDC-and-TMDS-Scrambling-supp.patch
deleted file mode 100644
index 832af82c2ae..00000000000
--- a/testing/linux-amlogic/0014-drm-bridge-dw-hdmi-Add-SCDC-and-TMDS-Scrambling-supp.patch
+++ /dev/null
@@ -1,147 +0,0 @@
-From 2ffa6ba6e67706f195b1938c5f7e8a385252bd8e Mon Sep 17 00:00:00 2001
-From: Neil Armstrong <narmstrong@baylibre.com>
-Date: Wed, 14 Nov 2018 16:48:50 +0100
-Subject: [PATCH] drm/bridge: dw-hdmi: Add SCDC and TMDS Scrambling support
-
-Add support for SCDC Setup for TMDS Clock > 3.4GHz and enable TMDS
-Scrambling when supported or mandatory.
-
-This patch also adds an helper to setup the control bit to support
-the hight TMDS Bit Period/TMDS Clock-Period Ratio as required with
-TMDS Clock > 3.4GHz for HDMI2.0 3840x2160@60/50 modes.
-
-These changes were based on work done by Huicong Xu <xhc@rock-chips.com>
-and Nickey Yang <nickey.yang@rock-chips.com> to support HDMI2.0 modes
-on the Rockchip 4.4 BSP kernel at [1]
-
-[1] https://github.com/rockchip-linux/kernel/tree/release-4.4
-
-Cc: Nickey Yang <nickey.yang@rock-chips.com>
-Cc: Huicong Xu <xhc@rock-chips.com>
-Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
-
----
- drivers/gpu/drm/bridge/synopsys/dw-hdmi.c | 45 ++++++++++++++++++++++++++++---
- drivers/gpu/drm/bridge/synopsys/dw-hdmi.h | 1 +
- include/drm/bridge/dw_hdmi.h | 1 +
- 3 files changed, 44 insertions(+), 3 deletions(-)
-
-diff --git a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c
-index 1fc1270..2a30d83 100644
---- a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c
-+++ b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c
-@@ -28,6 +28,7 @@
- #include <drm/drm_crtc_helper.h>
- #include <drm/drm_edid.h>
- #include <drm/drm_encoder_slave.h>
-+#include <drm/drm_scdc_helper.h>
- #include <drm/bridge/dw_hdmi.h>
-
- #include <uapi/linux/media-bus-format.h>
-@@ -1026,6 +1027,20 @@ void dw_hdmi_phy_i2c_write(struct dw_hdmi *hdmi, unsigned short data,
- }
- EXPORT_SYMBOL_GPL(dw_hdmi_phy_i2c_write);
-
-+void dw_hdmi_set_high_tmds_clock_ratio(struct dw_hdmi *hdmi)
-+{
-+ unsigned long mtmdsclock = hdmi->hdmi_data.video_mode.mpixelclock;
-+
-+ /* Control for TMDS Bit Period/TMDS Clock-Period Ratio */
-+ if (hdmi->connector.display_info.hdmi.scdc.supported) {
-+ if (mtmdsclock > 340000000)
-+ drm_scdc_set_high_tmds_clock_ratio(hdmi->ddc, 1);
-+ else
-+ drm_scdc_set_high_tmds_clock_ratio(hdmi->ddc, 0);
-+ }
-+}
-+EXPORT_SYMBOL_GPL(dw_hdmi_set_high_tmds_clock_ratio);
-+
- static void dw_hdmi_phy_enable_powerdown(struct dw_hdmi *hdmi, bool enable)
- {
- hdmi_mask_writeb(hdmi, !enable, HDMI_PHY_CONF0,
-@@ -1351,11 +1366,12 @@ static void hdmi_tx_hdcp_config(struct dw_hdmi *hdmi)
-
- static void hdmi_config_AVI(struct dw_hdmi *hdmi, struct drm_display_mode *mode)
- {
-+ bool is_hdmi2_sink = hdmi->connector.display_info.hdmi.scdc.supported;
- struct hdmi_avi_infoframe frame;
- u8 val;
-
- /* Initialise info frame from DRM mode */
-- drm_hdmi_avi_infoframe_from_display_mode(&frame, mode, false);
-+ drm_hdmi_avi_infoframe_from_display_mode(&frame, mode, is_hdmi2_sink);
-
- if (hdmi_bus_fmt_is_yuv444(hdmi->hdmi_data.enc_out_bus_format))
- frame.colorspace = HDMI_COLORSPACE_YUV444;
-@@ -1514,7 +1530,8 @@ static void hdmi_config_vendor_specific_infoframe(struct dw_hdmi *hdmi,
- static void hdmi_av_composer(struct dw_hdmi *hdmi,
- const struct drm_display_mode *mode)
- {
-- u8 inv_val;
-+ u8 inv_val, bytes;
-+ struct drm_hdmi_info *hdmi_info = &hdmi->connector.display_info.hdmi;
- struct hdmi_vmode *vmode = &hdmi->hdmi_data.video_mode;
- int hblank, vblank, h_de_hs, v_de_vs, hsync_len, vsync_len;
- unsigned int vdisplay;
-@@ -1524,7 +1541,9 @@ static void hdmi_av_composer(struct dw_hdmi *hdmi,
- dev_dbg(hdmi->dev, "final pixclk = %d\n", vmode->mpixelclock);
-
- /* Set up HDMI_FC_INVIDCONF */
-- inv_val = (hdmi->hdmi_data.hdcp_enable ?
-+ inv_val = (hdmi->hdmi_data.hdcp_enable ||
-+ vmode->mpixelclock > 340000000 ||
-+ hdmi_info->scdc.scrambling.low_rates ?
- HDMI_FC_INVIDCONF_HDCP_KEEPOUT_ACTIVE :
- HDMI_FC_INVIDCONF_HDCP_KEEPOUT_INACTIVE);
-
-@@ -1573,6 +1592,26 @@ static void hdmi_av_composer(struct dw_hdmi *hdmi,
- vsync_len /= 2;
- }
-
-+ /* Scrambling Control */
-+ if (hdmi_info->scdc.supported) {
-+ if (vmode->mpixelclock > 340000000 ||
-+ hdmi_info->scdc.scrambling.low_rates) {
-+ drm_scdc_readb(&hdmi->i2c->adap, SCDC_SINK_VERSION,
-+ &bytes);
-+ drm_scdc_writeb(&hdmi->i2c->adap, SCDC_SOURCE_VERSION,
-+ bytes);
-+ drm_scdc_set_scrambling(&hdmi->i2c->adap, 1);
-+ hdmi_writeb(hdmi, (u8)~HDMI_MC_SWRSTZ_TMDSSWRST_REQ,
-+ HDMI_MC_SWRSTZ);
-+ hdmi_writeb(hdmi, 1, HDMI_FC_SCRAMBLER_CTRL);
-+ } else {
-+ hdmi_writeb(hdmi, 0, HDMI_FC_SCRAMBLER_CTRL);
-+ hdmi_writeb(hdmi, (u8)~HDMI_MC_SWRSTZ_TMDSSWRST_REQ,
-+ HDMI_MC_SWRSTZ);
-+ drm_scdc_set_scrambling(&hdmi->i2c->adap, 0);
-+ }
-+ }
-+
- /* Set up horizontal active pixel width */
- hdmi_writeb(hdmi, mode->hdisplay >> 8, HDMI_FC_INHACTV1);
- hdmi_writeb(hdmi, mode->hdisplay, HDMI_FC_INHACTV0);
-diff --git a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.h b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.h
-index 9d90eb9..3f3c616 100644
---- a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.h
-+++ b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.h
-@@ -255,6 +255,7 @@
- #define HDMI_FC_MASK2 0x10DA
- #define HDMI_FC_POL2 0x10DB
- #define HDMI_FC_PRCONF 0x10E0
-+#define HDMI_FC_SCRAMBLER_CTRL 0x10E1
-
- #define HDMI_FC_GMD_STAT 0x1100
- #define HDMI_FC_GMD_EN 0x1101
-diff --git a/include/drm/bridge/dw_hdmi.h b/include/drm/bridge/dw_hdmi.h
-index ccb5aa8..d7cc5d0 100644
---- a/include/drm/bridge/dw_hdmi.h
-+++ b/include/drm/bridge/dw_hdmi.h
-@@ -156,6 +156,7 @@ void dw_hdmi_setup_rx_sense(struct dw_hdmi *hdmi, bool hpd, bool rx_sense);
- void dw_hdmi_set_sample_rate(struct dw_hdmi *hdmi, unsigned int rate);
- void dw_hdmi_audio_enable(struct dw_hdmi *hdmi);
- void dw_hdmi_audio_disable(struct dw_hdmi *hdmi);
-+void dw_hdmi_set_high_tmds_clock_ratio(struct dw_hdmi *hdmi);
-
- /* PHY configuration */
- void dw_hdmi_phy_i2c_set_addr(struct dw_hdmi *hdmi, u8 address);
diff --git a/testing/linux-amlogic/0014-drm-bridge-dw-hdmi-Use-AUTO-CTS-setup-mode-when-non-.patch b/testing/linux-amlogic/0014-drm-bridge-dw-hdmi-Use-AUTO-CTS-setup-mode-when-non-.patch
deleted file mode 100644
index 702f0c71415..00000000000
--- a/testing/linux-amlogic/0014-drm-bridge-dw-hdmi-Use-AUTO-CTS-setup-mode-when-non-.patch
+++ /dev/null
@@ -1,76 +0,0 @@
-From 68854b3c7771ad5754ad46d42f45f626ca87b4ac Mon Sep 17 00:00:00 2001
-From: Neil Armstrong <narmstrong@baylibre.com>
-Date: Mon, 2 Jul 2018 12:21:55 +0200
-Subject: [PATCH] drm: bridge: dw-hdmi: Use AUTO CTS setup mode when non-AHB
- audio
-
-Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
-
----
- drivers/gpu/drm/bridge/synopsys/dw-hdmi.c | 41 ++++++++++++++++++++-----------
- 1 file changed, 26 insertions(+), 15 deletions(-)
-
-diff --git a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c
-index 5971976..1fc1270 100644
---- a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c
-+++ b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c
-@@ -430,8 +430,12 @@ static void hdmi_set_cts_n(struct dw_hdmi *hdmi, unsigned int cts,
- /* nshift factor = 0 */
- hdmi_modb(hdmi, 0, HDMI_AUD_CTS3_N_SHIFT_MASK, HDMI_AUD_CTS3);
-
-- hdmi_writeb(hdmi, ((cts >> 16) & HDMI_AUD_CTS3_AUDCTS19_16_MASK) |
-- HDMI_AUD_CTS3_CTS_MANUAL, HDMI_AUD_CTS3);
-+ /* Use Auto CTS mode with CTS is unknown */
-+ if (cts)
-+ hdmi_writeb(hdmi, ((cts >> 16) & HDMI_AUD_CTS3_AUDCTS19_16_MASK) |
-+ HDMI_AUD_CTS3_CTS_MANUAL, HDMI_AUD_CTS3);
-+ else
-+ hdmi_writeb(hdmi, 0, HDMI_AUD_CTS3);
- hdmi_writeb(hdmi, (cts >> 8) & 0xff, HDMI_AUD_CTS2);
- hdmi_writeb(hdmi, cts & 0xff, HDMI_AUD_CTS1);
-
-@@ -501,24 +505,31 @@ static void hdmi_set_clk_regenerator(struct dw_hdmi *hdmi,
- {
- unsigned long ftdms = pixel_clk;
- unsigned int n, cts;
-+ u8 config3;
- u64 tmp;
-
- n = hdmi_compute_n(sample_rate, pixel_clk);
-
-- /*
-- * Compute the CTS value from the N value. Note that CTS and N
-- * can be up to 20 bits in total, so we need 64-bit math. Also
-- * note that our TDMS clock is not fully accurate; it is accurate
-- * to kHz. This can introduce an unnecessary remainder in the
-- * calculation below, so we don't try to warn about that.
-- */
-- tmp = (u64)ftdms * n;
-- do_div(tmp, 128 * sample_rate);
-- cts = tmp;
-+ config3 = hdmi_readb(hdmi, HDMI_CONFIG3_ID);
-
-- dev_dbg(hdmi->dev, "%s: fs=%uHz ftdms=%lu.%03luMHz N=%d cts=%d\n",
-- __func__, sample_rate, ftdms / 1000000, (ftdms / 1000) % 1000,
-- n, cts);
-+ if (config3 & HDMI_CONFIG3_AHBAUDDMA) {
-+ /*
-+ * Compute the CTS value from the N value. Note that CTS and N
-+ * can be up to 20 bits in total, so we need 64-bit math. Also
-+ * note that our TDMS clock is not fully accurate; it is
-+ * accurate to kHz. This can introduce an unnecessary remainder
-+ * in the calculation below, so we don't try to warn about that.
-+ */
-+ tmp = (u64)ftdms * n;
-+ do_div(tmp, 128 * sample_rate);
-+ cts = tmp;
-+
-+ dev_dbg(hdmi->dev, "%s: fs=%uHz ftdms=%lu.%03luMHz N=%d cts=%d\n",
-+ __func__, sample_rate,
-+ ftdms / 1000000, (ftdms / 1000) % 1000,
-+ n, cts);
-+ } else
-+ cts = 0;
-
- spin_lock_irq(&hdmi->audio_lock);
- hdmi->audio_n = n;
diff --git a/testing/linux-amlogic/0015-drm-meson-add-HDMI-div40-TMDS-mode.patch b/testing/linux-amlogic/0015-drm-meson-add-HDMI-div40-TMDS-mode.patch
deleted file mode 100644
index 3af3749c724..00000000000
--- a/testing/linux-amlogic/0015-drm-meson-add-HDMI-div40-TMDS-mode.patch
+++ /dev/null
@@ -1,69 +0,0 @@
-From cd02f4b3e7ad491111dbd6e1eccf3db9bbc1bc81 Mon Sep 17 00:00:00 2001
-From: Neil Armstrong <narmstrong@baylibre.com>
-Date: Mon, 12 Nov 2018 16:08:13 +0100
-Subject: [PATCH] drm/meson: add HDMI div40 TMDS mode
-
-Add support for TMDS Clock > 3.4GHz for HDMI2.0 display modes.
-
-Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
-
----
- drivers/gpu/drm/meson/meson_dw_hdmi.c | 24 ++++++++++++++++++++----
- 1 file changed, 20 insertions(+), 4 deletions(-)
-
-diff --git a/drivers/gpu/drm/meson/meson_dw_hdmi.c b/drivers/gpu/drm/meson/meson_dw_hdmi.c
-index d8c5cc3..118c49e 100644
---- a/drivers/gpu/drm/meson/meson_dw_hdmi.c
-+++ b/drivers/gpu/drm/meson/meson_dw_hdmi.c
-@@ -365,7 +365,8 @@ static int dw_hdmi_phy_init(struct dw_hdmi *hdmi, void *data,
- unsigned int wr_clk =
- readl_relaxed(priv->io_base + _REG(VPU_HDMI_SETTING));
-
-- DRM_DEBUG_DRIVER("%d:\"%s\"\n", mode->base.id, mode->name);
-+ DRM_DEBUG_DRIVER("%d:\"%s\" div%d\n", mode->base.id, mode->name,
-+ mode->clock > 340000 ? 40 : 10);
-
- /* Enable clocks */
- regmap_update_bits(priv->hhi, HHI_HDMI_CLK_CNTL, 0xffff, 0x100);
-@@ -385,9 +386,17 @@ static int dw_hdmi_phy_init(struct dw_hdmi *hdmi, void *data,
- /* Enable normal output to PHY */
- dw_hdmi_top_write(dw_hdmi, HDMITX_TOP_BIST_CNTL, BIT(12));
-
-- /* TMDS pattern setup (TOFIX pattern for 4k2k scrambling) */
-- dw_hdmi_top_write(dw_hdmi, HDMITX_TOP_TMDS_CLK_PTTN_01, 0x001f001f);
-- dw_hdmi_top_write(dw_hdmi, HDMITX_TOP_TMDS_CLK_PTTN_23, 0x001f001f);
-+ /* TMDS pattern setup (TOFIX Handle the YUV420 case) */
-+ if (mode->clock > 340000) {
-+ dw_hdmi_top_write(dw_hdmi, HDMITX_TOP_TMDS_CLK_PTTN_01, 0);
-+ dw_hdmi_top_write(dw_hdmi, HDMITX_TOP_TMDS_CLK_PTTN_23,
-+ 0x03ff03ff);
-+ } else {
-+ dw_hdmi_top_write(dw_hdmi, HDMITX_TOP_TMDS_CLK_PTTN_01,
-+ 0x001f001f);
-+ dw_hdmi_top_write(dw_hdmi, HDMITX_TOP_TMDS_CLK_PTTN_23,
-+ 0x001f001f);
-+ }
-
- /* Load TMDS pattern */
- dw_hdmi_top_write(dw_hdmi, HDMITX_TOP_TMDS_CLK_PTTN_CNTL, 0x1);
-@@ -413,6 +422,8 @@ static int dw_hdmi_phy_init(struct dw_hdmi *hdmi, void *data,
- /* Disable clock, fifo, fifo_wr */
- regmap_update_bits(priv->hhi, HHI_HDMI_PHY_CNTL1, 0xf, 0);
-
-+ dw_hdmi_set_high_tmds_clock_ratio(hdmi);
-+
- msleep(100);
-
- /* Reset PHY 3 times in a row */
-@@ -562,6 +573,11 @@ dw_hdmi_mode_valid(struct drm_connector *connector,
- mode->vdisplay, mode->vsync_start,
- mode->vsync_end, mode->vtotal, mode->type, mode->flags);
-
-+ /* If sink max TMDS clock < 340MHz, we reject the HDMI2.0 modes */
-+ if (mode->clock > 340000 &&
-+ connector->display_info.max_tmds_clock < 340000)
-+ return MODE_BAD;
-+
- /* Check against non-VIC supported modes */
- if (!vic) {
- status = meson_venc_hdmi_supported_mode(mode);
diff --git a/testing/linux-amlogic/0016-drm-meson-add-support-for-HDMI2.0-2160p-modes.patch b/testing/linux-amlogic/0016-drm-meson-add-support-for-HDMI2.0-2160p-modes.patch
deleted file mode 100644
index 4a860acdbcf..00000000000
--- a/testing/linux-amlogic/0016-drm-meson-add-support-for-HDMI2.0-2160p-modes.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From b48d4a78b2c3dd2db65ac391be3e12e323b6759e Mon Sep 17 00:00:00 2001
-From: Neil Armstrong <narmstrong@baylibre.com>
-Date: Mon, 12 Nov 2018 16:10:07 +0100
-Subject: [PATCH] drm/meson: add support for HDMI2.0 2160p modes
-
-Now we support the TMDS Clock > 3.4GHz and support the SCDC Control
-operation in the DW-HDMI Controller, we can enable support for the
-HDMI2.0 3840x2160@60/50 RGB444 display modes.
-
-Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
-
----
- drivers/gpu/drm/meson/meson_venc.c | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/drivers/gpu/drm/meson/meson_venc.c b/drivers/gpu/drm/meson/meson_venc.c
-index 0fbe525..1bcd642 100644
---- a/drivers/gpu/drm/meson/meson_venc.c
-+++ b/drivers/gpu/drm/meson/meson_venc.c
-@@ -848,6 +848,8 @@ struct meson_hdmi_venc_vic_mode {
- { 93, &meson_hdmi_encp_mode_2160p24 },
- { 94, &meson_hdmi_encp_mode_2160p25 },
- { 95, &meson_hdmi_encp_mode_2160p30 },
-+ { 96, &meson_hdmi_encp_mode_2160p25 },
-+ { 97, &meson_hdmi_encp_mode_2160p30 },
- { 0, NULL}, /* sentinel */
- };
-
diff --git a/testing/linux-amlogic/0017-drm-bridge-dw-hdmi-add-support-for-YUV420-output.patch b/testing/linux-amlogic/0017-drm-bridge-dw-hdmi-add-support-for-YUV420-output.patch
deleted file mode 100644
index 9c36ea2b488..00000000000
--- a/testing/linux-amlogic/0017-drm-bridge-dw-hdmi-add-support-for-YUV420-output.patch
+++ /dev/null
@@ -1,198 +0,0 @@
-From 3e7f3ec3de8753faefdeb02ed6d00cc580e6ad52 Mon Sep 17 00:00:00 2001
-From: Neil Armstrong <narmstrong@baylibre.com>
-Date: Wed, 14 Nov 2018 17:19:36 +0100
-Subject: [PATCH] drm/bridge: dw-hdmi: add support for YUV420 output
-
-In order to support the HDMI2.0 YUV420 display modes, this patch
-adds support for the YUV420 TMDS Clock divided by 2 and the controller
-passthrough mode.
-
-This patch is based on work from Zheng Yang <zhengyang@rock-chips.com> in
-the Rockchip Linux 4.4 BSP at [1]
-
-[1] https://github.com/rockchip-linux/kernel/tree/release-4.4
-
-Cc: Zheng Yang <zhengyang@rock-chips.com>
-Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
-
----
- drivers/gpu/drm/bridge/synopsys/dw-hdmi.c | 63 ++++++++++++++++++++++++-------
- 1 file changed, 50 insertions(+), 13 deletions(-)
-
-diff --git a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c
-index 2a30d83..c3e4ed1 100644
---- a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c
-+++ b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c
-@@ -94,6 +94,7 @@ struct hdmi_vmode {
- unsigned int mpixelclock;
- unsigned int mpixelrepetitioninput;
- unsigned int mpixelrepetitionoutput;
-+ unsigned int mtmdsclock;
- };
-
- struct hdmi_data_info {
-@@ -549,7 +550,7 @@ static void hdmi_init_clk_regenerator(struct dw_hdmi *hdmi)
- static void hdmi_clk_regenerator_update_pixel_clock(struct dw_hdmi *hdmi)
- {
- mutex_lock(&hdmi->audio_mutex);
-- hdmi_set_clk_regenerator(hdmi, hdmi->hdmi_data.video_mode.mpixelclock,
-+ hdmi_set_clk_regenerator(hdmi, hdmi->hdmi_data.video_mode.mtmdsclock,
- hdmi->sample_rate);
- mutex_unlock(&hdmi->audio_mutex);
- }
-@@ -558,7 +559,7 @@ void dw_hdmi_set_sample_rate(struct dw_hdmi *hdmi, unsigned int rate)
- {
- mutex_lock(&hdmi->audio_mutex);
- hdmi->sample_rate = rate;
-- hdmi_set_clk_regenerator(hdmi, hdmi->hdmi_data.video_mode.mpixelclock,
-+ hdmi_set_clk_regenerator(hdmi, hdmi->hdmi_data.video_mode.mtmdsclock,
- hdmi->sample_rate);
- mutex_unlock(&hdmi->audio_mutex);
- }
-@@ -659,6 +660,20 @@ static bool hdmi_bus_fmt_is_yuv422(unsigned int bus_format)
- }
- }
-
-+static bool hdmi_bus_fmt_is_yuv420(unsigned int bus_format)
-+{
-+ switch (bus_format) {
-+ case MEDIA_BUS_FMT_UYYVYY8_0_5X24:
-+ case MEDIA_BUS_FMT_UYYVYY10_0_5X30:
-+ case MEDIA_BUS_FMT_UYYVYY12_0_5X36:
-+ case MEDIA_BUS_FMT_UYYVYY16_0_5X48:
-+ return true;
-+
-+ default:
-+ return false;
-+ }
-+}
-+
- static int hdmi_bus_fmt_color_depth(unsigned int bus_format)
- {
- switch (bus_format) {
-@@ -888,7 +903,8 @@ static void hdmi_video_packetize(struct dw_hdmi *hdmi)
- u8 val, vp_conf;
-
- if (hdmi_bus_fmt_is_rgb(hdmi->hdmi_data.enc_out_bus_format) ||
-- hdmi_bus_fmt_is_yuv444(hdmi->hdmi_data.enc_out_bus_format)) {
-+ hdmi_bus_fmt_is_yuv444(hdmi->hdmi_data.enc_out_bus_format) ||
-+ hdmi_bus_fmt_is_yuv420(hdmi->hdmi_data.enc_out_bus_format)) {
- switch (hdmi_bus_fmt_color_depth(
- hdmi->hdmi_data.enc_out_bus_format)) {
- case 8:
-@@ -1029,7 +1045,7 @@ EXPORT_SYMBOL_GPL(dw_hdmi_phy_i2c_write);
-
- void dw_hdmi_set_high_tmds_clock_ratio(struct dw_hdmi *hdmi)
- {
-- unsigned long mtmdsclock = hdmi->hdmi_data.video_mode.mpixelclock;
-+ unsigned long mtmdsclock = hdmi->hdmi_data.video_mode.mtmdsclock;
-
- /* Control for TMDS Bit Period/TMDS Clock-Period Ratio */
- if (hdmi->connector.display_info.hdmi.scdc.supported) {
-@@ -1370,6 +1386,9 @@ static void hdmi_config_AVI(struct dw_hdmi *hdmi, struct drm_display_mode *mode)
- struct hdmi_avi_infoframe frame;
- u8 val;
-
-+ if (hdmi_bus_fmt_is_yuv420(hdmi->hdmi_data.enc_out_bus_format))
-+ is_hdmi2_sink = true;
-+
- /* Initialise info frame from DRM mode */
- drm_hdmi_avi_infoframe_from_display_mode(&frame, mode, is_hdmi2_sink);
-
-@@ -1377,6 +1396,8 @@ static void hdmi_config_AVI(struct dw_hdmi *hdmi, struct drm_display_mode *mode)
- frame.colorspace = HDMI_COLORSPACE_YUV444;
- else if (hdmi_bus_fmt_is_yuv422(hdmi->hdmi_data.enc_out_bus_format))
- frame.colorspace = HDMI_COLORSPACE_YUV422;
-+ else if (hdmi_bus_fmt_is_yuv420(hdmi->hdmi_data.enc_out_bus_format))
-+ frame.colorspace = HDMI_COLORSPACE_YUV420;
- else
- frame.colorspace = HDMI_COLORSPACE_RGB;
-
-@@ -1534,15 +1555,18 @@ static void hdmi_av_composer(struct dw_hdmi *hdmi,
- struct drm_hdmi_info *hdmi_info = &hdmi->connector.display_info.hdmi;
- struct hdmi_vmode *vmode = &hdmi->hdmi_data.video_mode;
- int hblank, vblank, h_de_hs, v_de_vs, hsync_len, vsync_len;
-- unsigned int vdisplay;
-+ unsigned int vdisplay, hdisplay;
-
-- vmode->mpixelclock = mode->clock * 1000;
-+ vmode->mtmdsclock = vmode->mpixelclock = mode->clock * 1000;
-
- dev_dbg(hdmi->dev, "final pixclk = %d\n", vmode->mpixelclock);
-
-+ if (hdmi_bus_fmt_is_yuv420(hdmi->hdmi_data.enc_out_bus_format))
-+ vmode->mtmdsclock /= 2;
-+
- /* Set up HDMI_FC_INVIDCONF */
- inv_val = (hdmi->hdmi_data.hdcp_enable ||
-- vmode->mpixelclock > 340000000 ||
-+ vmode->mtmdsclock > 340000000 ||
- hdmi_info->scdc.scrambling.low_rates ?
- HDMI_FC_INVIDCONF_HDCP_KEEPOUT_ACTIVE :
- HDMI_FC_INVIDCONF_HDCP_KEEPOUT_INACTIVE);
-@@ -1576,6 +1600,22 @@ static void hdmi_av_composer(struct dw_hdmi *hdmi,
-
- hdmi_writeb(hdmi, inv_val, HDMI_FC_INVIDCONF);
-
-+ hdisplay = mode->hdisplay;
-+ hblank = mode->htotal - mode->hdisplay;
-+ h_de_hs = mode->hsync_start - mode->hdisplay;
-+ hsync_len = mode->hsync_end - mode->hsync_start;
-+
-+ /*
-+ * When we're setting a YCbCr420 mode, we need
-+ * to adjust the horizontal timing to suit.
-+ */
-+ if (hdmi_bus_fmt_is_yuv420(hdmi->hdmi_data.enc_out_bus_format)) {
-+ hdisplay /= 2;
-+ hblank /= 2;
-+ h_de_hs /= 2;
-+ hsync_len /= 2;
-+ }
-+
- vdisplay = mode->vdisplay;
- vblank = mode->vtotal - mode->vdisplay;
- v_de_vs = mode->vsync_start - mode->vdisplay;
-@@ -1594,7 +1634,7 @@ static void hdmi_av_composer(struct dw_hdmi *hdmi,
-
- /* Scrambling Control */
- if (hdmi_info->scdc.supported) {
-- if (vmode->mpixelclock > 340000000 ||
-+ if (vmode->mtmdsclock > 340000000 ||
- hdmi_info->scdc.scrambling.low_rates) {
- drm_scdc_readb(&hdmi->i2c->adap, SCDC_SINK_VERSION,
- &bytes);
-@@ -1613,15 +1653,14 @@ static void hdmi_av_composer(struct dw_hdmi *hdmi,
- }
-
- /* Set up horizontal active pixel width */
-- hdmi_writeb(hdmi, mode->hdisplay >> 8, HDMI_FC_INHACTV1);
-- hdmi_writeb(hdmi, mode->hdisplay, HDMI_FC_INHACTV0);
-+ hdmi_writeb(hdmi, hdisplay >> 8, HDMI_FC_INHACTV1);
-+ hdmi_writeb(hdmi, hdisplay, HDMI_FC_INHACTV0);
-
- /* Set up vertical active lines */
- hdmi_writeb(hdmi, vdisplay >> 8, HDMI_FC_INVACTV1);
- hdmi_writeb(hdmi, vdisplay, HDMI_FC_INVACTV0);
-
- /* Set up horizontal blanking pixel region width */
-- hblank = mode->htotal - mode->hdisplay;
- hdmi_writeb(hdmi, hblank >> 8, HDMI_FC_INHBLANK1);
- hdmi_writeb(hdmi, hblank, HDMI_FC_INHBLANK0);
-
-@@ -1629,7 +1668,6 @@ static void hdmi_av_composer(struct dw_hdmi *hdmi,
- hdmi_writeb(hdmi, vblank, HDMI_FC_INVBLANK);
-
- /* Set up HSYNC active edge delay width (in pixel clks) */
-- h_de_hs = mode->hsync_start - mode->hdisplay;
- hdmi_writeb(hdmi, h_de_hs >> 8, HDMI_FC_HSYNCINDELAY1);
- hdmi_writeb(hdmi, h_de_hs, HDMI_FC_HSYNCINDELAY0);
-
-@@ -1637,7 +1675,6 @@ static void hdmi_av_composer(struct dw_hdmi *hdmi,
- hdmi_writeb(hdmi, v_de_vs, HDMI_FC_VSYNCINDELAY);
-
- /* Set up HSYNC active pulse width (in pixel clks) */
-- hsync_len = mode->hsync_end - mode->hsync_start;
- hdmi_writeb(hdmi, hsync_len >> 8, HDMI_FC_HSYNCINWIDTH1);
- hdmi_writeb(hdmi, hsync_len, HDMI_FC_HSYNCINWIDTH0);
-
diff --git a/testing/linux-amlogic/0017-soc-amlogic-add-meson-canvas-driver.patch b/testing/linux-amlogic/0017-soc-amlogic-add-meson-canvas-driver.patch
deleted file mode 100644
index 4bb5731f308..00000000000
--- a/testing/linux-amlogic/0017-soc-amlogic-add-meson-canvas-driver.patch
+++ /dev/null
@@ -1,314 +0,0 @@
-From 47756c823298bef3895fa2837c4b3e97062e9842 Mon Sep 17 00:00:00 2001
-From: Maxime Jourdan <maxi.jourdan@wanadoo.fr>
-Date: Fri, 20 Apr 2018 13:17:07 +0200
-Subject: [PATCH] soc: amlogic: add meson-canvas driver
-
-Amlogic SoCs have a repository of 256 canvas which they use to
-describe pixel buffers.
-
-They contain metadata like width, height, block mode, endianness [..]
-
-Many IPs within those SoCs like vdec/vpu rely on those canvas to read/write
-pixels.
-
-Reviewed-by: Jerome Brunet <jbrunet@baylibre.com>
-Tested-by: Neil Armstrong <narmstrong@baylibre.com>
-Signed-off-by: Maxime Jourdan <mjourdan@baylibre.com>
-
----
- drivers/soc/amlogic/Kconfig | 7 ++
- drivers/soc/amlogic/Makefile | 1 +
- drivers/soc/amlogic/meson-canvas.c | 185 +++++++++++++++++++++++++++++++
- include/linux/soc/amlogic/meson-canvas.h | 65 +++++++++++
- 4 files changed, 258 insertions(+)
- create mode 100644 drivers/soc/amlogic/meson-canvas.c
- create mode 100644 include/linux/soc/amlogic/meson-canvas.h
-
-diff --git a/drivers/soc/amlogic/Kconfig b/drivers/soc/amlogic/Kconfig
-index b04f6e4..2f282b4 100644
---- a/drivers/soc/amlogic/Kconfig
-+++ b/drivers/soc/amlogic/Kconfig
-@@ -1,5 +1,12 @@
- menu "Amlogic SoC drivers"
-
-+config MESON_CANVAS
-+ tristate "Amlogic Meson Canvas driver"
-+ depends on ARCH_MESON || COMPILE_TEST
-+ default n
-+ help
-+ Say yes to support the canvas IP for Amlogic SoCs.
-+
- config MESON_GX_SOCINFO
- bool "Amlogic Meson GX SoC Information driver"
- depends on ARCH_MESON || COMPILE_TEST
-diff --git a/drivers/soc/amlogic/Makefile b/drivers/soc/amlogic/Makefile
-index 8fa3218..0ab16d3 100644
---- a/drivers/soc/amlogic/Makefile
-+++ b/drivers/soc/amlogic/Makefile
-@@ -1,3 +1,4 @@
-+obj-$(CONFIG_MESON_CANVAS) += meson-canvas.o
- obj-$(CONFIG_MESON_GX_SOCINFO) += meson-gx-socinfo.o
- obj-$(CONFIG_MESON_GX_PM_DOMAINS) += meson-gx-pwrc-vpu.o
- obj-$(CONFIG_MESON_MX_SOCINFO) += meson-mx-socinfo.o
-diff --git a/drivers/soc/amlogic/meson-canvas.c b/drivers/soc/amlogic/meson-canvas.c
-new file mode 100644
-index 0000000..fce33ca
---- /dev/null
-+++ b/drivers/soc/amlogic/meson-canvas.c
-@@ -0,0 +1,185 @@
-+// SPDX-License-Identifier: GPL-2.0+
-+/*
-+ * Copyright (C) 2018 BayLibre, SAS
-+ * Copyright (C) 2015 Amlogic, Inc. All rights reserved.
-+ * Copyright (C) 2014 Endless Mobile
-+ */
-+
-+#include <linux/kernel.h>
-+#include <linux/mfd/syscon.h>
-+#include <linux/module.h>
-+#include <linux/regmap.h>
-+#include <linux/soc/amlogic/meson-canvas.h>
-+#include <linux/of_address.h>
-+#include <linux/of_platform.h>
-+#include <linux/io.h>
-+
-+#define NUM_CANVAS 256
-+
-+/* DMC Registers */
-+#define DMC_CAV_LUT_DATAL 0x00
-+ #define CANVAS_WIDTH_LBIT 29
-+ #define CANVAS_WIDTH_LWID 3
-+#define DMC_CAV_LUT_DATAH 0x04
-+ #define CANVAS_WIDTH_HBIT 0
-+ #define CANVAS_HEIGHT_BIT 9
-+ #define CANVAS_WRAP_BIT 22
-+ #define CANVAS_BLKMODE_BIT 24
-+ #define CANVAS_ENDIAN_BIT 26
-+#define DMC_CAV_LUT_ADDR 0x08
-+ #define CANVAS_LUT_WR_EN BIT(9)
-+ #define CANVAS_LUT_RD_EN BIT(8)
-+
-+struct meson_canvas {
-+ struct device *dev;
-+ void __iomem *reg_base;
-+ spinlock_t lock; /* canvas device lock */
-+ u8 used[NUM_CANVAS];
-+};
-+
-+static void canvas_write(struct meson_canvas *canvas, u32 reg, u32 val)
-+{
-+ writel_relaxed(val, canvas->reg_base + reg);
-+}
-+
-+static u32 canvas_read(struct meson_canvas *canvas, u32 reg)
-+{
-+ return readl_relaxed(canvas->reg_base + reg);
-+}
-+
-+struct meson_canvas *meson_canvas_get(struct device *dev)
-+{
-+ struct device_node *canvas_node;
-+ struct platform_device *canvas_pdev;
-+
-+ canvas_node = of_parse_phandle(dev->of_node, "amlogic,canvas", 0);
-+ if (!canvas_node)
-+ return ERR_PTR(-ENODEV);
-+
-+ canvas_pdev = of_find_device_by_node(canvas_node);
-+ if (!canvas_pdev)
-+ return ERR_PTR(-EPROBE_DEFER);
-+
-+ return dev_get_drvdata(&canvas_pdev->dev);
-+}
-+EXPORT_SYMBOL_GPL(meson_canvas_get);
-+
-+int meson_canvas_config(struct meson_canvas *canvas, u8 canvas_index,
-+ u32 addr, u32 stride, u32 height,
-+ unsigned int wrap,
-+ unsigned int blkmode,
-+ unsigned int endian)
-+{
-+ unsigned long flags;
-+
-+ spin_lock_irqsave(&canvas->lock, flags);
-+ if (!canvas->used[canvas_index]) {
-+ dev_err(canvas->dev,
-+ "Trying to setup non allocated canvas %u\n",
-+ canvas_index);
-+ spin_unlock_irqrestore(&canvas->lock, flags);
-+ return -EINVAL;
-+ }
-+
-+ canvas_write(canvas, DMC_CAV_LUT_DATAL,
-+ ((addr + 7) >> 3) |
-+ (((stride + 7) >> 3) << CANVAS_WIDTH_LBIT));
-+
-+ canvas_write(canvas, DMC_CAV_LUT_DATAH,
-+ ((((stride + 7) >> 3) >> CANVAS_WIDTH_LWID) <<
-+ CANVAS_WIDTH_HBIT) |
-+ (height << CANVAS_HEIGHT_BIT) |
-+ (wrap << CANVAS_WRAP_BIT) |
-+ (blkmode << CANVAS_BLKMODE_BIT) |
-+ (endian << CANVAS_ENDIAN_BIT));
-+
-+ canvas_write(canvas, DMC_CAV_LUT_ADDR,
-+ CANVAS_LUT_WR_EN | canvas_index);
-+
-+ /* Force a read-back to make sure everything is flushed. */
-+ canvas_read(canvas, DMC_CAV_LUT_DATAH);
-+ spin_unlock_irqrestore(&canvas->lock, flags);
-+
-+ return 0;
-+}
-+EXPORT_SYMBOL_GPL(meson_canvas_config);
-+
-+int meson_canvas_alloc(struct meson_canvas *canvas, u8 *canvas_index)
-+{
-+ int i;
-+ unsigned long flags;
-+
-+ spin_lock_irqsave(&canvas->lock, flags);
-+ for (i = 0; i < NUM_CANVAS; ++i) {
-+ if (!canvas->used[i]) {
-+ canvas->used[i] = 1;
-+ spin_unlock_irqrestore(&canvas->lock, flags);
-+ *canvas_index = i;
-+ return 0;
-+ }
-+ }
-+ spin_unlock_irqrestore(&canvas->lock, flags);
-+
-+ dev_err(canvas->dev, "No more canvas available\n");
-+ return -ENODEV;
-+}
-+EXPORT_SYMBOL_GPL(meson_canvas_alloc);
-+
-+int meson_canvas_free(struct meson_canvas *canvas, u8 canvas_index)
-+{
-+ unsigned long flags;
-+
-+ spin_lock_irqsave(&canvas->lock, flags);
-+ if (!canvas->used[canvas_index]) {
-+ dev_err(canvas->dev,
-+ "Trying to free unused canvas %u\n", canvas_index);
-+ spin_unlock_irqrestore(&canvas->lock, flags);
-+ return -EINVAL;
-+ }
-+ canvas->used[canvas_index] = 0;
-+ spin_unlock_irqrestore(&canvas->lock, flags);
-+
-+ return 0;
-+}
-+EXPORT_SYMBOL_GPL(meson_canvas_free);
-+
-+static int meson_canvas_probe(struct platform_device *pdev)
-+{
-+ struct resource *res;
-+ struct meson_canvas *canvas;
-+ struct device *dev = &pdev->dev;
-+
-+ canvas = devm_kzalloc(dev, sizeof(*canvas), GFP_KERNEL);
-+ if (!canvas)
-+ return -ENOMEM;
-+
-+ res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
-+ canvas->reg_base = devm_ioremap_resource(dev, res);
-+ if (IS_ERR(canvas->reg_base))
-+ return PTR_ERR(canvas->reg_base);
-+
-+ canvas->dev = dev;
-+ spin_lock_init(&canvas->lock);
-+ dev_set_drvdata(dev, canvas);
-+
-+ return 0;
-+}
-+
-+static const struct of_device_id canvas_dt_match[] = {
-+ { .compatible = "amlogic,canvas" },
-+ {}
-+};
-+MODULE_DEVICE_TABLE(of, canvas_dt_match);
-+
-+static struct platform_driver meson_canvas_driver = {
-+ .probe = meson_canvas_probe,
-+ .driver = {
-+ .name = "amlogic-canvas",
-+ .of_match_table = canvas_dt_match,
-+ },
-+};
-+module_platform_driver(meson_canvas_driver);
-+
-+MODULE_DESCRIPTION("Amlogic Canvas driver");
-+MODULE_AUTHOR("Maxime Jourdan <mjourdan@baylibre.com>");
-+MODULE_LICENSE("GPL");
-diff --git a/include/linux/soc/amlogic/meson-canvas.h b/include/linux/soc/amlogic/meson-canvas.h
-new file mode 100644
-index 0000000..b4dde2f
---- /dev/null
-+++ b/include/linux/soc/amlogic/meson-canvas.h
-@@ -0,0 +1,65 @@
-+/* SPDX-License-Identifier: GPL-2.0+ */
-+/*
-+ * Copyright (C) 2018 BayLibre, SAS
-+ */
-+#ifndef __SOC_MESON_CANVAS_H
-+#define __SOC_MESON_CANVAS_H
-+
-+#include <linux/kernel.h>
-+
-+#define MESON_CANVAS_WRAP_NONE 0x00
-+#define MESON_CANVAS_WRAP_X 0x01
-+#define MESON_CANVAS_WRAP_Y 0x02
-+
-+#define MESON_CANVAS_BLKMODE_LINEAR 0x00
-+#define MESON_CANVAS_BLKMODE_32x32 0x01
-+#define MESON_CANVAS_BLKMODE_64x64 0x02
-+
-+#define MESON_CANVAS_ENDIAN_SWAP16 0x1
-+#define MESON_CANVAS_ENDIAN_SWAP32 0x3
-+#define MESON_CANVAS_ENDIAN_SWAP64 0x7
-+#define MESON_CANVAS_ENDIAN_SWAP128 0xf
-+
-+struct meson_canvas;
-+
-+/**
-+ * meson_canvas_get() - get a canvas provider instance
-+ *
-+ * @dev: consumer device pointer
-+ */
-+struct meson_canvas *meson_canvas_get(struct device *dev);
-+
-+/**
-+ * meson_canvas_alloc() - take ownership of a canvas
-+ *
-+ * @canvas: canvas provider instance retrieved from meson_canvas_get()
-+ * @canvas_index: will be filled with the canvas ID
-+ */
-+int meson_canvas_alloc(struct meson_canvas *canvas, u8 *canvas_index);
-+
-+/**
-+ * meson_canvas_free() - remove ownership from a canvas
-+ *
-+ * @canvas: canvas provider instance retrieved from meson_canvas_get()
-+ * @canvas_index: canvas ID that was obtained via meson_canvas_alloc()
-+ */
-+int meson_canvas_free(struct meson_canvas *canvas, u8 canvas_index);
-+
-+/**
-+ * meson_canvas_config() - configure a canvas
-+ *
-+ * @canvas: canvas provider instance retrieved from meson_canvas_get()
-+ * @canvas_index: canvas ID that was obtained via meson_canvas_alloc()
-+ * @addr: physical address to the pixel buffer
-+ * @stride: width of the buffer
-+ * @height: height of the buffer
-+ * @wrap: undocumented
-+ * @blkmode: block mode (linear, 32x32, 64x64)
-+ * @endian: byte swapping (swap16, swap32, swap64, swap128)
-+ */
-+int meson_canvas_config(struct meson_canvas *canvas, u8 canvas_index,
-+ u32 addr, u32 stride, u32 height,
-+ unsigned int wrap, unsigned int blkmode,
-+ unsigned int endian);
-+
-+#endif
diff --git a/testing/linux-amlogic/0018-ARM64-dts-meson-gx-add-dmcbus-and-canvas-nodes.patch b/testing/linux-amlogic/0018-ARM64-dts-meson-gx-add-dmcbus-and-canvas-nodes.patch
deleted file mode 100644
index b09c7c8488e..00000000000
--- a/testing/linux-amlogic/0018-ARM64-dts-meson-gx-add-dmcbus-and-canvas-nodes.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From b2b84d801a2e8145b2a08e0d310682fc5e88b0ad Mon Sep 17 00:00:00 2001
-From: Maxime Jourdan <maxi.jourdan@wanadoo.fr>
-Date: Fri, 20 Apr 2018 16:09:09 +0200
-Subject: [PATCH] ARM64: dts: meson-gx: add dmcbus and canvas nodes.
-
-DMC is a small memory region with various registers,
-including the ones needed for the canvas module.
-
-Reviewed-by: Jerome Brunet <jbrunet@baylibre.com>
-Signed-off-by: Maxime Jourdan <mjourdan@baylibre.com>
-
----
- arch/arm64/boot/dts/amlogic/meson-gx.dtsi | 13 +++++++++++++
- 1 file changed, 13 insertions(+)
-
-diff --git a/arch/arm64/boot/dts/amlogic/meson-gx.dtsi b/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
-index 6b64b63..fb64354 100644
---- a/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
-+++ b/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
-@@ -458,6 +458,19 @@
- };
- };
-
-+ dmcbus: bus@c8838000 {
-+ compatible = "simple-bus";
-+ reg = <0x0 0xc8838000 0x0 0x400>;
-+ #address-cells = <2>;
-+ #size-cells = <2>;
-+ ranges = <0x0 0x0 0x0 0xc8838000 0x0 0x400>;
-+
-+ canvas: video-lut@48 {
-+ compatible = "amlogic,canvas";
-+ reg = <0x0 0x48 0x0 0x14>;
-+ };
-+ };
-+
- hiubus: bus@c883c000 {
- compatible = "simple-bus";
- reg = <0x0 0xc883c000 0x0 0x2000>;
diff --git a/testing/linux-amlogic/0018-drm-bridge-dw-hdmi-support-dynamically-get-input-out.patch b/testing/linux-amlogic/0018-drm-bridge-dw-hdmi-support-dynamically-get-input-out.patch
deleted file mode 100644
index bc86f579892..00000000000
--- a/testing/linux-amlogic/0018-drm-bridge-dw-hdmi-support-dynamically-get-input-out.patch
+++ /dev/null
@@ -1,102 +0,0 @@
-From 2dcf2d31652207dfe20d7606804ca3b763b7f094 Mon Sep 17 00:00:00 2001
-From: Zheng Yang <zhengyang@rock-chips.com>
-Date: Tue, 27 Jun 2017 16:22:01 +0800
-Subject: [PATCH] drm/bridge: dw-hdmi: support dynamically get input/out color
- info
-
-To get input/output bus_format/enc_format dynamically, this patch
-introduce following funstion in plat_data:
- - get_input_bus_format
- - get_output_bus_format
- - get_enc_in_encoding
- - get_enc_out_encoding
-
-Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
-Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
-
----
- drivers/gpu/drm/bridge/synopsys/dw-hdmi.c | 28 +++++++++++++++++++++-------
- include/drm/bridge/dw_hdmi.h | 5 +++++
- 2 files changed, 26 insertions(+), 7 deletions(-)
-
-diff --git a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c
-index c3e4ed1..6473df3 100644
---- a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c
-+++ b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c
-@@ -1774,6 +1774,7 @@ static void hdmi_disable_overflow_interrupts(struct dw_hdmi *hdmi)
- static int dw_hdmi_setup(struct dw_hdmi *hdmi, struct drm_display_mode *mode)
- {
- int ret;
-+ void *data = hdmi->plat_data->phy_data;
-
- hdmi_disable_overflow_interrupts(hdmi);
-
-@@ -1785,10 +1786,13 @@ static int dw_hdmi_setup(struct dw_hdmi *hdmi, struct drm_display_mode *mode)
- dev_dbg(hdmi->dev, "CEA mode used vic=%d\n", hdmi->vic);
- }
-
-- if ((hdmi->vic == 6) || (hdmi->vic == 7) ||
-- (hdmi->vic == 21) || (hdmi->vic == 22) ||
-- (hdmi->vic == 2) || (hdmi->vic == 3) ||
-- (hdmi->vic == 17) || (hdmi->vic == 18))
-+ if (hdmi->plat_data->get_enc_out_encoding)
-+ hdmi->hdmi_data.enc_out_encoding =
-+ hdmi->plat_data->get_enc_out_encoding(data);
-+ else if ((hdmi->vic == 6) || (hdmi->vic == 7) ||
-+ (hdmi->vic == 21) || (hdmi->vic == 22) ||
-+ (hdmi->vic == 2) || (hdmi->vic == 3) ||
-+ (hdmi->vic == 17) || (hdmi->vic == 18))
- hdmi->hdmi_data.enc_out_encoding = V4L2_YCBCR_ENC_601;
- else
- hdmi->hdmi_data.enc_out_encoding = V4L2_YCBCR_ENC_709;
-@@ -1797,21 +1801,31 @@ static int dw_hdmi_setup(struct dw_hdmi *hdmi, struct drm_display_mode *mode)
- hdmi->hdmi_data.video_mode.mpixelrepetitioninput = 0;
-
- /* TOFIX: Get input format from plat data or fallback to RGB888 */
-- if (hdmi->plat_data->input_bus_format)
-+ if (hdmi->plat_data->get_input_bus_format)
-+ hdmi->hdmi_data.enc_in_bus_format =
-+ hdmi->plat_data->get_input_bus_format(data);
-+ else if (hdmi->plat_data->input_bus_format)
- hdmi->hdmi_data.enc_in_bus_format =
- hdmi->plat_data->input_bus_format;
- else
- hdmi->hdmi_data.enc_in_bus_format = MEDIA_BUS_FMT_RGB888_1X24;
-
- /* TOFIX: Get input encoding from plat data or fallback to none */
-- if (hdmi->plat_data->input_bus_encoding)
-+ if (hdmi->plat_data->get_enc_in_encoding)
-+ hdmi->hdmi_data.enc_in_encoding =
-+ hdmi->plat_data->get_enc_in_encoding(data);
-+ else if (hdmi->plat_data->input_bus_encoding)
- hdmi->hdmi_data.enc_in_encoding =
- hdmi->plat_data->input_bus_encoding;
- else
- hdmi->hdmi_data.enc_in_encoding = V4L2_YCBCR_ENC_DEFAULT;
-
- /* TOFIX: Default to RGB888 output format */
-- hdmi->hdmi_data.enc_out_bus_format = MEDIA_BUS_FMT_RGB888_1X24;
-+ if (hdmi->plat_data->get_output_bus_format)
-+ hdmi->hdmi_data.enc_out_bus_format =
-+ hdmi->plat_data->get_output_bus_format(data);
-+ else
-+ hdmi->hdmi_data.enc_out_bus_format = MEDIA_BUS_FMT_RGB888_1X24;
-
- hdmi->hdmi_data.pix_repet_factor = 0;
- hdmi->hdmi_data.hdcp_enable = 0;
-diff --git a/include/drm/bridge/dw_hdmi.h b/include/drm/bridge/dw_hdmi.h
-index d7cc5d0..27f9cce 100644
---- a/include/drm/bridge/dw_hdmi.h
-+++ b/include/drm/bridge/dw_hdmi.h
-@@ -141,6 +141,11 @@ struct dw_hdmi_plat_data {
- int (*configure_phy)(struct dw_hdmi *hdmi,
- const struct dw_hdmi_plat_data *pdata,
- unsigned long mpixelclock);
-+
-+ unsigned long (*get_input_bus_format)(void *data);
-+ unsigned long (*get_output_bus_format)(void *data);
-+ unsigned long (*get_enc_in_encoding)(void *data);
-+ unsigned long (*get_enc_out_encoding)(void *data);
- };
-
- struct dw_hdmi *dw_hdmi_probe(struct platform_device *pdev,
diff --git a/testing/linux-amlogic/0019-drm-bridge-dw-hdmi-allow-ycbcr420-modes-for-0x200a.patch b/testing/linux-amlogic/0019-drm-bridge-dw-hdmi-allow-ycbcr420-modes-for-0x200a.patch
deleted file mode 100644
index 54939c84e9c..00000000000
--- a/testing/linux-amlogic/0019-drm-bridge-dw-hdmi-allow-ycbcr420-modes-for-0x200a.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-From 94d815707144fb76f2e6f718a864f10a8d3f6306 Mon Sep 17 00:00:00 2001
-From: Neil Armstrong <narmstrong@baylibre.com>
-Date: Wed, 14 Nov 2018 17:39:46 +0100
-Subject: [PATCH] drm/bridge: dw-hdmi: allow ycbcr420 modes for >= 0x200a
-
-Now the DW-HDMI Controller supports the HDMI2.0 modes, enable support
-for these modes in the connector if the platform supports them.
-We limit these modes to DW-HDMI IP version >= 0x200a which
-are designed to support HDMI2.0 display modes.
-
-Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
-
----
- drivers/gpu/drm/bridge/synopsys/dw-hdmi.c | 6 ++++++
- include/drm/bridge/dw_hdmi.h | 1 +
- 2 files changed, 7 insertions(+)
-
-diff --git a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c
-index 6473df3..d10277f 100644
---- a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c
-+++ b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c
-@@ -2575,6 +2575,12 @@ __dw_hdmi_probe(struct platform_device *pdev,
- if (hdmi->phy.ops->setup_hpd)
- hdmi->phy.ops->setup_hpd(hdmi, hdmi->phy.data);
-
-+ if (hdmi->version >= 0x200a)
-+ hdmi->connector.ycbcr_420_allowed =
-+ hdmi->plat_data->ycbcr_420_allowed;
-+ else
-+ hdmi->connector.ycbcr_420_allowed = false;
-+
- memset(&pdevinfo, 0, sizeof(pdevinfo));
- pdevinfo.parent = dev;
- pdevinfo.id = PLATFORM_DEVID_AUTO;
-diff --git a/include/drm/bridge/dw_hdmi.h b/include/drm/bridge/dw_hdmi.h
-index 27f9cce..c04f497a 100644
---- a/include/drm/bridge/dw_hdmi.h
-+++ b/include/drm/bridge/dw_hdmi.h
-@@ -128,6 +128,7 @@ struct dw_hdmi_plat_data {
- const struct drm_display_mode *mode);
- unsigned long input_bus_format;
- unsigned long input_bus_encoding;
-+ bool ycbcr_420_allowed;
-
- /* Vendor PHY support */
- const struct dw_hdmi_phy_ops *phy_ops;
diff --git a/testing/linux-amlogic/0020-drm-meson-Add-YUV420-output-support.patch b/testing/linux-amlogic/0020-drm-meson-Add-YUV420-output-support.patch
deleted file mode 100644
index ab69cd67c9b..00000000000
--- a/testing/linux-amlogic/0020-drm-meson-Add-YUV420-output-support.patch
+++ /dev/null
@@ -1,582 +0,0 @@
-From fb1abdc9ba8015b1a5c2a6c53ffc08fa0676db04 Mon Sep 17 00:00:00 2001
-From: Neil Armstrong <narmstrong@baylibre.com>
-Date: Thu, 15 Nov 2018 16:41:23 +0100
-Subject: [PATCH] drm/meson: Add YUV420 output support
-
-This patch adds support for the YUV420 output from the Amlogic Meson SoCs
-Video Processing Unit to the HDMI Controller.
-
-The YUV420 is obtained by generating a YUV444 pixel stream like
-the classic HDMI display modes, but then the Video Encoder output
-can be configured to down-sample the YUV444 pixel stream to a YUV420
-stream.
-In addition if pixel stream down-sampling, the Y Cb Cr components must
-also be mapped differently to align with the HDMI2.0 specifications.
-
-This mode needs a different clock generation scheme since the TMDS PHY
-clock must match the 10x ration with the YUV420 pixel clock, but
-the video encoder must run at 2x the pixel clock.
-
-This patch adds the TMDS PHY clock value in all the video clock setup
-in order to better support these specific uses cases and switch
-to the Common Clock framework for clocks handling in the future.
-
-Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
-
----
- drivers/gpu/drm/meson/meson_dw_hdmi.c | 108 +++++++++++++++++++++++++++-----
- drivers/gpu/drm/meson/meson_vclk.c | 95 +++++++++++++++++++++-------
- drivers/gpu/drm/meson/meson_vclk.h | 7 ++-
- drivers/gpu/drm/meson/meson_venc.c | 6 +-
- drivers/gpu/drm/meson/meson_venc.h | 11 ++++
- drivers/gpu/drm/meson/meson_venc_cvbs.c | 3 +-
- 6 files changed, 184 insertions(+), 46 deletions(-)
-
-diff --git a/drivers/gpu/drm/meson/meson_dw_hdmi.c b/drivers/gpu/drm/meson/meson_dw_hdmi.c
-index 118c49e..0b9ecbf 100644
---- a/drivers/gpu/drm/meson/meson_dw_hdmi.c
-+++ b/drivers/gpu/drm/meson/meson_dw_hdmi.c
-@@ -141,6 +141,8 @@ struct meson_dw_hdmi {
- struct regulator *hdmi_supply;
- u32 irq_stat;
- struct dw_hdmi *hdmi;
-+ unsigned long input_bus_format;
-+ unsigned long output_bus_format;
- };
- #define encoder_to_meson_dw_hdmi(x) \
- container_of(x, struct meson_dw_hdmi, encoder)
-@@ -323,25 +325,36 @@ static void dw_hdmi_set_vclk(struct meson_dw_hdmi *dw_hdmi,
- {
- struct meson_drm *priv = dw_hdmi->priv;
- int vic = drm_match_cea_mode(mode);
-+ unsigned int phy_freq;
- unsigned int vclk_freq;
- unsigned int venc_freq;
- unsigned int hdmi_freq;
-
- vclk_freq = mode->clock;
-
-+ /* For 420, pixel clock is half unlike venc clock */
-+ if (dw_hdmi->input_bus_format == MEDIA_BUS_FMT_UYYVYY8_0_5X24)
-+ vclk_freq /= 2;
-+
-+ /* TMDS clock is pixel_clock * 10 */
-+ phy_freq = vclk_freq * 10;
-+
- if (!vic) {
-- meson_vclk_setup(priv, MESON_VCLK_TARGET_DMT, vclk_freq,
-- vclk_freq, vclk_freq, false);
-+ meson_vclk_setup(priv, MESON_VCLK_TARGET_DMT, phy_freq,
-+ vclk_freq, vclk_freq, vclk_freq, false);
- return;
- }
-
-+ /* 480i/576i needs global pixel doubling */
- if (mode->flags & DRM_MODE_FLAG_DBLCLK)
- vclk_freq *= 2;
-
- venc_freq = vclk_freq;
- hdmi_freq = vclk_freq;
-
-- if (meson_venc_hdmi_venc_repeat(vic))
-+ /* VENC double pixels for 1080i, 720p and YUV420 modes */
-+ if (meson_venc_hdmi_venc_repeat(vic) ||
-+ dw_hdmi->input_bus_format == MEDIA_BUS_FMT_UYYVYY8_0_5X24)
- venc_freq *= 2;
-
- vclk_freq = max(venc_freq, hdmi_freq);
-@@ -349,11 +362,11 @@ static void dw_hdmi_set_vclk(struct meson_dw_hdmi *dw_hdmi,
- if (mode->flags & DRM_MODE_FLAG_DBLCLK)
- venc_freq /= 2;
-
-- DRM_DEBUG_DRIVER("vclk:%d venc=%d hdmi=%d enci=%d\n",
-- vclk_freq, venc_freq, hdmi_freq,
-+ DRM_DEBUG_DRIVER("vclk:%d phy=%d venc=%d hdmi=%d enci=%d\n",
-+ phy_freq, vclk_freq, venc_freq, hdmi_freq,
- priv->venc.hdmi_use_enci);
-
-- meson_vclk_setup(priv, MESON_VCLK_TARGET_HDMI, vclk_freq,
-+ meson_vclk_setup(priv, MESON_VCLK_TARGET_HDMI, phy_freq, vclk_freq,
- venc_freq, hdmi_freq, priv->venc.hdmi_use_enci);
- }
-
-@@ -387,7 +400,8 @@ static int dw_hdmi_phy_init(struct dw_hdmi *hdmi, void *data,
- dw_hdmi_top_write(dw_hdmi, HDMITX_TOP_BIST_CNTL, BIT(12));
-
- /* TMDS pattern setup (TOFIX Handle the YUV420 case) */
-- if (mode->clock > 340000) {
-+ if (mode->clock > 340000 &&
-+ dw_hdmi->input_bus_format == MEDIA_BUS_FMT_YUV8_1X24) {
- dw_hdmi_top_write(dw_hdmi, HDMITX_TOP_TMDS_CLK_PTTN_01, 0);
- dw_hdmi_top_write(dw_hdmi, HDMITX_TOP_TMDS_CLK_PTTN_23,
- 0x03ff03ff);
-@@ -560,6 +574,8 @@ dw_hdmi_mode_valid(struct drm_connector *connector,
- const struct drm_display_mode *mode)
- {
- struct meson_drm *priv = connector->dev->dev_private;
-+ bool is_hdmi2_sink = connector->display_info.hdmi.scdc.supported;
-+ unsigned int phy_freq;
- unsigned int vclk_freq;
- unsigned int venc_freq;
- unsigned int hdmi_freq;
-@@ -573,9 +589,11 @@ dw_hdmi_mode_valid(struct drm_connector *connector,
- mode->vdisplay, mode->vsync_start,
- mode->vsync_end, mode->vtotal, mode->type, mode->flags);
-
-- /* If sink max TMDS clock < 340MHz, we reject the HDMI2.0 modes */
-+ /* If sink does not support 540MHz, reject the non-420 HDMI2 modes */
- if (mode->clock > 340000 &&
-- connector->display_info.max_tmds_clock < 340000)
-+ connector->display_info.max_tmds_clock < 340000 &&
-+ !drm_mode_is_420_only(&connector->display_info, mode) &&
-+ !drm_mode_is_420_also(&connector->display_info, mode))
- return MODE_BAD;
-
- /* Check against non-VIC supported modes */
-@@ -591,6 +609,15 @@ dw_hdmi_mode_valid(struct drm_connector *connector,
-
- vclk_freq = mode->clock;
-
-+ /* For 420, pixel clock is half unlike venc clock */
-+ if (drm_mode_is_420_only(&connector->display_info, mode) ||
-+ (!is_hdmi2_sink &&
-+ drm_mode_is_420_also(&connector->display_info, mode)))
-+ vclk_freq /= 2;
-+
-+ /* TMDS clock is pixel_clock * 10 */
-+ phy_freq = vclk_freq * 10;
-+
- /* 480i/576i needs global pixel doubling */
- if (mode->flags & DRM_MODE_FLAG_DBLCLK)
- vclk_freq *= 2;
-@@ -598,8 +625,11 @@ dw_hdmi_mode_valid(struct drm_connector *connector,
- venc_freq = vclk_freq;
- hdmi_freq = vclk_freq;
-
-- /* VENC double pixels for 1080i and 720p modes */
-- if (meson_venc_hdmi_venc_repeat(vic))
-+ /* VENC double pixels for 1080i, 720p and YUV420 modes */
-+ if (meson_venc_hdmi_venc_repeat(vic) ||
-+ drm_mode_is_420_only(&connector->display_info, mode) ||
-+ (!is_hdmi2_sink &&
-+ drm_mode_is_420_also(&connector->display_info, mode)))
- venc_freq *= 2;
-
- vclk_freq = max(venc_freq, hdmi_freq);
-@@ -607,10 +637,10 @@ dw_hdmi_mode_valid(struct drm_connector *connector,
- if (mode->flags & DRM_MODE_FLAG_DBLCLK)
- venc_freq /= 2;
-
-- dev_dbg(connector->dev->dev, "%s: vclk:%d venc=%d hdmi=%d\n", __func__,
-- vclk_freq, venc_freq, hdmi_freq);
-+ dev_dbg(connector->dev->dev, "%s: vclk:%d phy=%d venc=%d hdmi=%d\n",
-+ __func__, phy_freq, vclk_freq, venc_freq, hdmi_freq);
-
-- return meson_vclk_vic_supported_freq(vclk_freq);
-+ return meson_vclk_vic_supported_freq(phy_freq, vclk_freq);
- }
-
- /* Encoder */
-@@ -628,6 +658,21 @@ static int meson_venc_hdmi_encoder_atomic_check(struct drm_encoder *encoder,
- struct drm_crtc_state *crtc_state,
- struct drm_connector_state *conn_state)
- {
-+ struct meson_dw_hdmi *dw_hdmi = encoder_to_meson_dw_hdmi(encoder);
-+ struct drm_display_info *info = &conn_state->connector->display_info;
-+ struct drm_display_mode *mode = &crtc_state->mode;
-+ bool is_hdmi2_sink =
-+ conn_state->connector->display_info.hdmi.scdc.supported;
-+
-+ if (drm_mode_is_420_only(info, mode) ||
-+ (!is_hdmi2_sink && drm_mode_is_420_also(info, mode))) {
-+ dw_hdmi->input_bus_format = MEDIA_BUS_FMT_UYYVYY8_0_5X24;
-+ dw_hdmi->output_bus_format = MEDIA_BUS_FMT_UYYVYY8_0_5X24;
-+ } else {
-+ dw_hdmi->input_bus_format = MEDIA_BUS_FMT_YUV8_1X24;
-+ dw_hdmi->output_bus_format = MEDIA_BUS_FMT_RGB888_1X24;
-+ }
-+
- return 0;
- }
-
-@@ -665,18 +710,30 @@ static void meson_venc_hdmi_encoder_mode_set(struct drm_encoder *encoder,
- struct meson_dw_hdmi *dw_hdmi = encoder_to_meson_dw_hdmi(encoder);
- struct meson_drm *priv = dw_hdmi->priv;
- int vic = drm_match_cea_mode(mode);
-+ unsigned int ycrcb_map = MESON_VENC_MAP_CB_Y_CR;
-+ bool yuv420_mode = false;
-
- DRM_DEBUG_DRIVER("%d:\"%s\" vic %d\n",
- mode->base.id, mode->name, vic);
-
-+ if (dw_hdmi->input_bus_format == MEDIA_BUS_FMT_UYYVYY8_0_5X24) {
-+ ycrcb_map = MESON_VENC_MAP_CR_Y_CB;
-+ yuv420_mode = true;
-+ }
-+
- /* VENC + VENC-DVI Mode setup */
-- meson_venc_hdmi_mode_set(priv, vic, mode);
-+ meson_venc_hdmi_mode_set(priv, vic, ycrcb_map, yuv420_mode, mode);
-
- /* VCLK Set clock */
- dw_hdmi_set_vclk(dw_hdmi, mode);
-
-- /* Setup YUV444 to HDMI-TX, no 10bit diphering */
-- writel_relaxed(0, priv->io_base + _REG(VPU_HDMI_FMT_CTRL));
-+ if (dw_hdmi->input_bus_format == MEDIA_BUS_FMT_UYYVYY8_0_5X24)
-+ /* Setup YUV420 to HDMI-TX, no 10bit diphering */
-+ writel_relaxed(2 | (2 << 2),
-+ priv->io_base + _REG(VPU_HDMI_FMT_CTRL));
-+ else
-+ /* Setup YUV444 to HDMI-TX, no 10bit diphering */
-+ writel_relaxed(0, priv->io_base + _REG(VPU_HDMI_FMT_CTRL));
- }
-
- static const struct drm_encoder_helper_funcs
-@@ -714,6 +771,20 @@ static const struct regmap_config meson_dw_hdmi_regmap_config = {
- .max_register = 0x10000,
- };
-
-+static unsigned long meson_dw_hdmi_get_in_bus_format(void *data)
-+{
-+ struct meson_dw_hdmi *dw_hdmi = (struct meson_dw_hdmi *)data;
-+
-+ return dw_hdmi->input_bus_format;
-+}
-+
-+static unsigned long meson_dw_hdmi_get_out_bus_format(void *data)
-+{
-+ struct meson_dw_hdmi *dw_hdmi = (struct meson_dw_hdmi *)data;
-+
-+ return dw_hdmi->output_bus_format;
-+}
-+
- static bool meson_hdmi_connector_is_available(struct device *dev)
- {
- struct device_node *ep, *remote;
-@@ -890,6 +961,9 @@ static int meson_dw_hdmi_bind(struct device *dev, struct device *master,
- dw_plat_data->phy_data = meson_dw_hdmi;
- dw_plat_data->input_bus_format = MEDIA_BUS_FMT_YUV8_1X24;
- dw_plat_data->input_bus_encoding = V4L2_YCBCR_ENC_709;
-+ dw_plat_data->get_input_bus_format = meson_dw_hdmi_get_in_bus_format;
-+ dw_plat_data->get_output_bus_format = meson_dw_hdmi_get_out_bus_format;
-+ dw_plat_data->ycbcr_420_allowed = true;
-
- platform_set_drvdata(pdev, meson_dw_hdmi);
-
-diff --git a/drivers/gpu/drm/meson/meson_vclk.c b/drivers/gpu/drm/meson/meson_vclk.c
-index 5accceb..27c9c5e 100644
---- a/drivers/gpu/drm/meson/meson_vclk.c
-+++ b/drivers/gpu/drm/meson/meson_vclk.c
-@@ -337,12 +337,17 @@ enum {
- /* 2970 /1 /1 /1 /5 /2 => /1 /1 */
- MESON_VCLK_HDMI_297000,
- /* 5940 /1 /1 /2 /5 /1 => /1 /1 */
-- MESON_VCLK_HDMI_594000
-+ MESON_VCLK_HDMI_594000,
-+/* 2970 /1 /1 /1 /5 /1 => /1 /2 */
-+ MESON_VCLK_HDMI_594000_YUV420,
- };
-
- struct meson_vclk_params {
-+ unsigned int pll_freq;
-+ unsigned int phy_freq;
-+ unsigned int vclk_freq;
-+ unsigned int venc_freq;
- unsigned int pixel_freq;
-- unsigned int pll_base_freq;
- unsigned int pll_od1;
- unsigned int pll_od2;
- unsigned int pll_od3;
-@@ -350,8 +355,11 @@ struct meson_vclk_params {
- unsigned int vclk_div;
- } params[] = {
- [MESON_VCLK_HDMI_ENCI_54000] = {
-+ .pll_freq = 4320000,
-+ .phy_freq = 270000,
-+ .vclk_freq = 54000,
-+ .venc_freq = 54000,
- .pixel_freq = 54000,
-- .pll_base_freq = 4320000,
- .pll_od1 = 4,
- .pll_od2 = 4,
- .pll_od3 = 1,
-@@ -359,8 +367,11 @@ struct meson_vclk_params {
- .vclk_div = 1,
- },
- [MESON_VCLK_HDMI_DDR_54000] = {
-- .pixel_freq = 54000,
-- .pll_base_freq = 4320000,
-+ .pll_freq = 4320000,
-+ .phy_freq = 270000,
-+ .vclk_freq = 54000,
-+ .venc_freq = 54000,
-+ .pixel_freq = 27000,
- .pll_od1 = 4,
- .pll_od2 = 4,
- .pll_od3 = 1,
-@@ -368,8 +379,11 @@ struct meson_vclk_params {
- .vclk_div = 1,
- },
- [MESON_VCLK_HDMI_DDR_148500] = {
-- .pixel_freq = 148500,
-- .pll_base_freq = 2970000,
-+ .pll_freq = 2970000,
-+ .phy_freq = 742500,
-+ .vclk_freq = 148500,
-+ .venc_freq = 148500,
-+ .pixel_freq = 74250,
- .pll_od1 = 4,
- .pll_od2 = 1,
- .pll_od3 = 1,
-@@ -377,8 +391,11 @@ struct meson_vclk_params {
- .vclk_div = 1,
- },
- [MESON_VCLK_HDMI_74250] = {
-+ .pll_freq = 2970000,
-+ .phy_freq = 742500,
-+ .vclk_freq = 74250,
-+ .venc_freq = 74250,
- .pixel_freq = 74250,
-- .pll_base_freq = 2970000,
- .pll_od1 = 2,
- .pll_od2 = 2,
- .pll_od3 = 2,
-@@ -386,8 +403,11 @@ struct meson_vclk_params {
- .vclk_div = 1,
- },
- [MESON_VCLK_HDMI_148500] = {
-+ .pll_freq = 2970000,
-+ .phy_freq = 1485000,
-+ .vclk_freq = 148500,
-+ .venc_freq = 148500,
- .pixel_freq = 148500,
-- .pll_base_freq = 2970000,
- .pll_od1 = 1,
- .pll_od2 = 2,
- .pll_od3 = 2,
-@@ -395,8 +415,11 @@ struct meson_vclk_params {
- .vclk_div = 1,
- },
- [MESON_VCLK_HDMI_297000] = {
-+ .pll_freq = 2970000,
-+ .phy_freq = 2970000,
-+ .venc_freq = 297000,
-+ .vclk_freq = 297000,
- .pixel_freq = 297000,
-- .pll_base_freq = 2970000,
- .pll_od1 = 1,
- .pll_od2 = 1,
- .pll_od3 = 1,
-@@ -404,14 +427,29 @@ struct meson_vclk_params {
- .vclk_div = 2,
- },
- [MESON_VCLK_HDMI_594000] = {
-+ .pll_freq = 5940000,
-+ .phy_freq = 5940000,
-+ .venc_freq = 594000,
-+ .vclk_freq = 594000,
- .pixel_freq = 594000,
-- .pll_base_freq = 5940000,
- .pll_od1 = 1,
- .pll_od2 = 1,
- .pll_od3 = 2,
- .vid_pll_div = VID_PLL_DIV_5,
- .vclk_div = 1,
- },
-+ [MESON_VCLK_HDMI_594000_YUV420] = {
-+ .pll_freq = 2970000,
-+ .phy_freq = 2970000,
-+ .venc_freq = 594000,
-+ .vclk_freq = 594000,
-+ .pixel_freq = 297000,
-+ .pll_od1 = 1,
-+ .pll_od2 = 1,
-+ .pll_od3 = 1,
-+ .vid_pll_div = VID_PLL_DIV_5,
-+ .vclk_div = 1,
-+ },
- { /* sentinel */ },
- };
-
-@@ -616,6 +654,7 @@ static void meson_hdmi_pll_generic_set(struct meson_drm *priv,
- unsigned int od, m, frac, od1, od2, od3;
-
- if (meson_hdmi_pll_find_params(priv, pll_freq, &m, &frac, &od)) {
-+ /* OD2 goes to the PHY, and needs to be *10, so keep OD3=1 */
- od3 = 1;
- if (od < 4) {
- od1 = 2;
-@@ -638,21 +677,28 @@ static void meson_hdmi_pll_generic_set(struct meson_drm *priv,
- }
-
- enum drm_mode_status
--meson_vclk_vic_supported_freq(unsigned int freq)
-+meson_vclk_vic_supported_freq(unsigned int phy_freq,
-+ unsigned int vclk_freq)
- {
- int i;
-
-- DRM_DEBUG_DRIVER("freq = %d\n", freq);
-+ DRM_DEBUG_DRIVER("phy_freq = %d vclk_freq = %d\n",
-+ phy_freq, vclk_freq);
-
- for (i = 0 ; params[i].pixel_freq ; ++i) {
- DRM_DEBUG_DRIVER("i = %d pixel_freq = %d alt = %d\n",
- i, params[i].pixel_freq,
- FREQ_1000_1001(params[i].pixel_freq));
-+ DRM_DEBUG_DRIVER("i = %d phy_freq = %d alt = %d\n",
-+ i, params[i].phy_freq,
-+ FREQ_1000_1001(params[i].phy_freq/10)*10);
- /* Match strict frequency */
-- if (freq == params[i].pixel_freq)
-+ if (phy_freq == params[i].phy_freq &&
-+ vclk_freq == params[i].vclk_freq)
- return MODE_OK;
- /* Match 1000/1001 variant */
-- if (freq == FREQ_1000_1001(params[i].pixel_freq))
-+ if (phy_freq == (FREQ_1000_1001(params[i].phy_freq/10)*10) &&
-+ vclk_freq == FREQ_1000_1001(params[i].vclk_freq))
- return MODE_OK;
- }
-
-@@ -666,7 +712,7 @@ static void meson_vclk_set(struct meson_drm *priv, unsigned int pll_base_freq,
- unsigned int hdmi_tx_div, unsigned int venc_div,
- bool hdmi_use_enci, bool vic_alternate_clock)
- {
-- unsigned int m, frac;
-+ unsigned int m = 0, frac = 0;
-
- /* Set HDMI-TX sys clock */
- regmap_update_bits(priv->hhi, HHI_HDMI_CLK_CNTL,
-@@ -863,8 +909,9 @@ static void meson_vclk_set(struct meson_drm *priv, unsigned int pll_base_freq,
- }
-
- void meson_vclk_setup(struct meson_drm *priv, unsigned int target,
-- unsigned int vclk_freq, unsigned int venc_freq,
-- unsigned int dac_freq, bool hdmi_use_enci)
-+ unsigned int phy_freq, unsigned int vclk_freq,
-+ unsigned int venc_freq, unsigned int dac_freq,
-+ bool hdmi_use_enci)
- {
- bool vic_alternate_clock = false;
- unsigned int freq;
-@@ -883,7 +930,7 @@ void meson_vclk_setup(struct meson_drm *priv, unsigned int target,
- * - venc_div = 1
- * - encp encoder
- */
-- meson_vclk_set(priv, vclk_freq * 10, 0, 0, 0,
-+ meson_vclk_set(priv, phy_freq, 0, 0, 0,
- VID_PLL_DIV_5, 2, 1, 1, false, false);
- return;
- }
-@@ -905,9 +952,11 @@ void meson_vclk_setup(struct meson_drm *priv, unsigned int target,
- }
-
- for (freq = 0 ; params[freq].pixel_freq ; ++freq) {
-- if (vclk_freq == params[freq].pixel_freq ||
-- vclk_freq == FREQ_1000_1001(params[freq].pixel_freq)) {
-- if (vclk_freq != params[freq].pixel_freq)
-+ if ((phy_freq == params[freq].phy_freq ||
-+ phy_freq == FREQ_1000_1001(params[freq].phy_freq/10)*10) &&
-+ (vclk_freq == params[freq].vclk_freq ||
-+ vclk_freq == FREQ_1000_1001(params[freq].vclk_freq))) {
-+ if (vclk_freq != params[freq].vclk_freq)
- vic_alternate_clock = true;
- else
- vic_alternate_clock = false;
-@@ -936,7 +985,7 @@ void meson_vclk_setup(struct meson_drm *priv, unsigned int target,
- return;
- }
-
-- meson_vclk_set(priv, params[freq].pll_base_freq,
-+ meson_vclk_set(priv, params[freq].pll_freq,
- params[freq].pll_od1, params[freq].pll_od2,
- params[freq].pll_od3, params[freq].vid_pll_div,
- params[freq].vclk_div, hdmi_tx_div, venc_div,
-diff --git a/drivers/gpu/drm/meson/meson_vclk.h b/drivers/gpu/drm/meson/meson_vclk.h
-index 4bd8752..c4d19dd 100644
---- a/drivers/gpu/drm/meson/meson_vclk.h
-+++ b/drivers/gpu/drm/meson/meson_vclk.h
-@@ -33,10 +33,11 @@ enum {
- enum drm_mode_status
- meson_vclk_dmt_supported_freq(struct meson_drm *priv, unsigned int freq);
- enum drm_mode_status
--meson_vclk_vic_supported_freq(unsigned int freq);
-+meson_vclk_vic_supported_freq(unsigned int phy_freq, unsigned int vclk_freq);
-
- void meson_vclk_setup(struct meson_drm *priv, unsigned int target,
-- unsigned int vclk_freq, unsigned int venc_freq,
-- unsigned int dac_freq, bool hdmi_use_enci);
-+ unsigned int phy_freq, unsigned int vclk_freq,
-+ unsigned int venc_freq, unsigned int dac_freq,
-+ bool hdmi_use_enci);
-
- #endif /* __MESON_VCLK_H */
-diff --git a/drivers/gpu/drm/meson/meson_venc.c b/drivers/gpu/drm/meson/meson_venc.c
-index 1bcd642..ab72ddd 100644
---- a/drivers/gpu/drm/meson/meson_venc.c
-+++ b/drivers/gpu/drm/meson/meson_venc.c
-@@ -956,6 +956,8 @@ bool meson_venc_hdmi_venc_repeat(int vic)
- EXPORT_SYMBOL_GPL(meson_venc_hdmi_venc_repeat);
-
- void meson_venc_hdmi_mode_set(struct meson_drm *priv, int vic,
-+ unsigned int ycrcb_map,
-+ bool yuv420_mode,
- struct drm_display_mode *mode)
- {
- union meson_hdmi_venc_mode *vmode = NULL;
-@@ -1505,8 +1507,8 @@ void meson_venc_hdmi_mode_set(struct meson_drm *priv, int vic,
- writel_relaxed((use_enci ? 1 : 2) |
- (mode->flags & DRM_MODE_FLAG_PHSYNC ? 1 << 2 : 0) |
- (mode->flags & DRM_MODE_FLAG_PVSYNC ? 1 << 3 : 0) |
-- 4 << 5 |
-- (venc_repeat ? 1 << 8 : 0) |
-+ (ycrcb_map << 5) |
-+ (venc_repeat || yuv420_mode ? 1 << 8 : 0) |
- (hdmi_repeat ? 1 << 12 : 0),
- priv->io_base + _REG(VPU_HDMI_SETTING));
-
-diff --git a/drivers/gpu/drm/meson/meson_venc.h b/drivers/gpu/drm/meson/meson_venc.h
-index 97eaebb..5580bf3 100644
---- a/drivers/gpu/drm/meson/meson_venc.h
-+++ b/drivers/gpu/drm/meson/meson_venc.h
-@@ -33,6 +33,15 @@ enum {
- MESON_VENC_MODE_HDMI,
- };
-
-+enum {
-+ MESON_VENC_MAP_CR_Y_CB = 0,
-+ MESON_VENC_MAP_Y_CB_CR,
-+ MESON_VENC_MAP_Y_CR_CB,
-+ MESON_VENC_MAP_CB_CR_Y,
-+ MESON_VENC_MAP_CB_Y_CR,
-+ MESON_VENC_MAP_CR_CB_Y,
-+};
-+
- struct meson_cvbs_enci_mode {
- unsigned int mode_tag;
- unsigned int hso_begin; /* HSO begin position */
-@@ -70,6 +79,8 @@ extern struct meson_cvbs_enci_mode meson_cvbs_enci_ntsc;
- void meson_venci_cvbs_mode_set(struct meson_drm *priv,
- struct meson_cvbs_enci_mode *mode);
- void meson_venc_hdmi_mode_set(struct meson_drm *priv, int vic,
-+ unsigned int ycrcb_map,
-+ bool yuv420_mode,
- struct drm_display_mode *mode);
- unsigned int meson_venci_get_field(struct meson_drm *priv);
-
-diff --git a/drivers/gpu/drm/meson/meson_venc_cvbs.c b/drivers/gpu/drm/meson/meson_venc_cvbs.c
-index f7945ba..38a1117 100644
---- a/drivers/gpu/drm/meson/meson_venc_cvbs.c
-+++ b/drivers/gpu/drm/meson/meson_venc_cvbs.c
-@@ -207,7 +207,8 @@ static void meson_venc_cvbs_encoder_mode_set(struct drm_encoder *encoder,
- /* Setup 27MHz vclk2 for ENCI and VDAC */
- meson_vclk_setup(priv, MESON_VCLK_TARGET_CVBS,
- MESON_VCLK_CVBS, MESON_VCLK_CVBS,
-- MESON_VCLK_CVBS, true);
-+ MESON_VCLK_CVBS, MESON_VCLK_CVBS,
-+ true);
- break;
- }
- }
diff --git a/testing/linux-amlogic/0020-drm-meson-Use-optional-canvas-provider.patch b/testing/linux-amlogic/0020-drm-meson-Use-optional-canvas-provider.patch
deleted file mode 100644
index 3988b698554..00000000000
--- a/testing/linux-amlogic/0020-drm-meson-Use-optional-canvas-provider.patch
+++ /dev/null
@@ -1,172 +0,0 @@
-From 21a926d5d6a2973c1a1665482accac7548c1a67d Mon Sep 17 00:00:00 2001
-From: Maxime Jourdan <mjourdan@baylibre.com>
-Date: Mon, 15 Oct 2018 14:37:18 +0200
-Subject: [PATCH] drm/meson: Use optional canvas provider
-
-This is the first step into converting the meson/drm driver to use
-the canvas module.
-
-If a canvas provider node is detected in DT, use it. Otherwise,
-fall back to what is currently being done.
-
-Signed-off-by: Maxime Jourdan <mjourdan@baylibre.com>
-
----
- drivers/gpu/drm/meson/Kconfig | 1 +
- drivers/gpu/drm/meson/meson_crtc.c | 14 +++++++----
- drivers/gpu/drm/meson/meson_drv.c | 46 +++++++++++++++++++++++--------------
- drivers/gpu/drm/meson/meson_drv.h | 4 ++++
- drivers/gpu/drm/meson/meson_plane.c | 8 ++++++-
- 5 files changed, 51 insertions(+), 22 deletions(-)
-
-diff --git a/drivers/gpu/drm/meson/Kconfig b/drivers/gpu/drm/meson/Kconfig
-index 02d400b..8929058 100644
---- a/drivers/gpu/drm/meson/Kconfig
-+++ b/drivers/gpu/drm/meson/Kconfig
-@@ -7,6 +7,7 @@ config DRM_MESON
- select DRM_GEM_CMA_HELPER
- select VIDEOMODE_HELPERS
- select REGMAP_MMIO
-+ select MESON_CANVAS
-
- config DRM_MESON_DW_HDMI
- tristate "HDMI Synopsys Controller support for Amlogic Meson Display"
-diff --git a/drivers/gpu/drm/meson/meson_crtc.c b/drivers/gpu/drm/meson/meson_crtc.c
-index 7c0bdc8..8744244 100644
---- a/drivers/gpu/drm/meson/meson_crtc.c
-+++ b/drivers/gpu/drm/meson/meson_crtc.c
-@@ -197,10 +197,16 @@ void meson_crtc_irq(struct meson_drm *priv)
- } else
- meson_vpp_disable_interlace_vscaler_osd1(priv);
-
-- meson_canvas_setup(priv, MESON_CANVAS_ID_OSD1,
-- priv->viu.osd1_addr, priv->viu.osd1_stride,
-- priv->viu.osd1_height, MESON_CANVAS_WRAP_NONE,
-- MESON_CANVAS_BLKMODE_LINEAR);
-+ if (priv->canvas)
-+ meson_canvas_config(priv->canvas, priv->canvas_id_osd1,
-+ priv->viu.osd1_addr, priv->viu.osd1_stride,
-+ priv->viu.osd1_height, MESON_CANVAS_WRAP_NONE,
-+ MESON_CANVAS_BLKMODE_LINEAR, 0);
-+ else
-+ meson_canvas_setup(priv, MESON_CANVAS_ID_OSD1,
-+ priv->viu.osd1_addr, priv->viu.osd1_stride,
-+ priv->viu.osd1_height, MESON_CANVAS_WRAP_NONE,
-+ MESON_CANVAS_BLKMODE_LINEAR);
-
- /* Enable OSD1 */
- writel_bits_relaxed(VPP_OSD1_POSTBLEND, VPP_OSD1_POSTBLEND,
-diff --git a/drivers/gpu/drm/meson/meson_drv.c b/drivers/gpu/drm/meson/meson_drv.c
-index d344312..b39c38c 100644
---- a/drivers/gpu/drm/meson/meson_drv.c
-+++ b/drivers/gpu/drm/meson/meson_drv.c
-@@ -216,24 +216,33 @@ static int meson_drv_bind_master(struct device *dev, bool has_components)
- goto free_drm;
- }
-
-- res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "dmc");
-- if (!res) {
-- ret = -EINVAL;
-- goto free_drm;
-- }
-- /* Simply ioremap since it may be a shared register zone */
-- regs = devm_ioremap(dev, res->start, resource_size(res));
-- if (!regs) {
-- ret = -EADDRNOTAVAIL;
-- goto free_drm;
-- }
-+ priv->canvas = meson_canvas_get(dev);
-+ if (!IS_ERR(priv->canvas)) {
-+ ret = meson_canvas_alloc(priv->canvas, &priv->canvas_id_osd1);
-+ if (ret)
-+ goto free_drm;
-+ } else {
-+ priv->canvas = NULL;
-
-- priv->dmc = devm_regmap_init_mmio(dev, regs,
-- &meson_regmap_config);
-- if (IS_ERR(priv->dmc)) {
-- dev_err(&pdev->dev, "Couldn't create the DMC regmap\n");
-- ret = PTR_ERR(priv->dmc);
-- goto free_drm;
-+ res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "dmc");
-+ if (!res) {
-+ ret = -EINVAL;
-+ goto free_drm;
-+ }
-+ /* Simply ioremap since it may be a shared register zone */
-+ regs = devm_ioremap(dev, res->start, resource_size(res));
-+ if (!regs) {
-+ ret = -EADDRNOTAVAIL;
-+ goto free_drm;
-+ }
-+
-+ priv->dmc = devm_regmap_init_mmio(dev, regs,
-+ &meson_regmap_config);
-+ if (IS_ERR(priv->dmc)) {
-+ dev_err(&pdev->dev, "Couldn't create the DMC regmap\n");
-+ ret = PTR_ERR(priv->dmc);
-+ goto free_drm;
-+ }
- }
-
- priv->vsync_irq = platform_get_irq(pdev, 0);
-@@ -315,6 +324,9 @@ static void meson_drv_unbind(struct device *dev)
- struct drm_device *drm = dev_get_drvdata(dev);
- struct meson_drm *priv = drm->dev_private;
-
-+ if (priv->canvas)
-+ meson_canvas_free(priv->canvas, priv->canvas_id_osd1);
-+
- drm_dev_unregister(drm);
- drm_kms_helper_poll_fini(drm);
- drm_fbdev_cma_fini(priv->fbdev);
-diff --git a/drivers/gpu/drm/meson/meson_drv.h b/drivers/gpu/drm/meson/meson_drv.h
-index 8450d6ac..728d0ca 100644
---- a/drivers/gpu/drm/meson/meson_drv.h
-+++ b/drivers/gpu/drm/meson/meson_drv.h
-@@ -22,6 +22,7 @@
- #include <linux/platform_device.h>
- #include <linux/regmap.h>
- #include <linux/of.h>
-+#include <linux/soc/amlogic/meson-canvas.h>
- #include <drm/drmP.h>
-
- struct meson_drm {
-@@ -31,6 +32,9 @@ struct meson_drm {
- struct regmap *dmc;
- int vsync_irq;
-
-+ struct meson_canvas *canvas;
-+ u8 canvas_id_osd1;
-+
- struct drm_device *drm;
- struct drm_crtc *crtc;
- struct drm_fbdev_cma *fbdev;
-diff --git a/drivers/gpu/drm/meson/meson_plane.c b/drivers/gpu/drm/meson/meson_plane.c
-index 12c80df..51bec8e 100644
---- a/drivers/gpu/drm/meson/meson_plane.c
-+++ b/drivers/gpu/drm/meson/meson_plane.c
-@@ -90,6 +90,7 @@ static void meson_plane_atomic_update(struct drm_plane *plane,
- .y2 = state->crtc_y + state->crtc_h,
- };
- unsigned long flags;
-+ u8 canvas_id_osd1;
-
- /*
- * Update Coordinates
-@@ -104,8 +105,13 @@ static void meson_plane_atomic_update(struct drm_plane *plane,
- (0xFF << OSD_GLOBAL_ALPHA_SHIFT) |
- OSD_BLK0_ENABLE;
-
-+ if (priv->canvas)
-+ canvas_id_osd1 = priv->canvas_id_osd1;
-+ else
-+ canvas_id_osd1 = MESON_CANVAS_ID_OSD1;
-+
- /* Set up BLK0 to point to the right canvas */
-- priv->viu.osd1_blk0_cfg[0] = ((MESON_CANVAS_ID_OSD1 << OSD_CANVAS_SEL) |
-+ priv->viu.osd1_blk0_cfg[0] = ((canvas_id_osd1 << OSD_CANVAS_SEL) |
- OSD_ENDIANNESS_LE);
-
- /* On GXBB, Use the old non-HDR RGB2YUV converter */
diff --git a/testing/linux-amlogic/0021-arm64-dts-meson-gx-Add-canvas-provider-node-to-the-v.patch b/testing/linux-amlogic/0021-arm64-dts-meson-gx-Add-canvas-provider-node-to-the-v.patch
deleted file mode 100644
index fa25f46426a..00000000000
--- a/testing/linux-amlogic/0021-arm64-dts-meson-gx-Add-canvas-provider-node-to-the-v.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 7d3414ae548dd7d6e7caad845322b0dedcf05cb1 Mon Sep 17 00:00:00 2001
-From: Maxime Jourdan <mjourdan@baylibre.com>
-Date: Mon, 15 Oct 2018 14:38:24 +0200
-Subject: [PATCH] arm64: dts: meson-gx: Add canvas provider node to the vpu
-
-Allows the vpu driver to optionally use a canvas provider node.
-
-Signed-off-by: Maxime Jourdan <mjourdan@baylibre.com>
-
----
- arch/arm64/boot/dts/amlogic/meson-gx.dtsi | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/arch/arm64/boot/dts/amlogic/meson-gx.dtsi b/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
-index fb64354..5012607 100644
---- a/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
-+++ b/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
-@@ -540,6 +540,7 @@
- interrupts = <GIC_SPI 3 IRQ_TYPE_EDGE_RISING>;
- #address-cells = <1>;
- #size-cells = <0>;
-+ amlogic,canvas = <&canvas>;
-
- /* CVBS VDAC output port */
- cvbs_vdac_port: port@0 {
diff --git a/testing/linux-amlogic/0021-drm-meson-Output-in-YUV444-if-sink-supports-it.patch b/testing/linux-amlogic/0021-drm-meson-Output-in-YUV444-if-sink-supports-it.patch
deleted file mode 100644
index 50aa112db25..00000000000
--- a/testing/linux-amlogic/0021-drm-meson-Output-in-YUV444-if-sink-supports-it.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From c9cf1e80259276c3da76bc03ab0aaa9dfac481ae Mon Sep 17 00:00:00 2001
-From: Neil Armstrong <narmstrong@baylibre.com>
-Date: Sun, 18 Nov 2018 14:06:11 +0100
-Subject: [PATCH] drm/meson: Output in YUV444 if sink supports it
-
-With the YUV420 handling, we can no dynamically setup the HDMI output
-pixel format depending on the mode and connector info.
-So now, we can output in YUV444, which is the native video pipeline
-format, directly the the HDMI Sink it it's supported, without
-involving the HDMI Controller CSC.
-
----
- drivers/gpu/drm/meson/meson_dw_hdmi.c | 5 ++++-
- 1 file changed, 4 insertions(+), 1 deletion(-)
-
-diff --git a/drivers/gpu/drm/meson/meson_dw_hdmi.c b/drivers/gpu/drm/meson/meson_dw_hdmi.c
-index 0b9ecbf..6df124c 100644
---- a/drivers/gpu/drm/meson/meson_dw_hdmi.c
-+++ b/drivers/gpu/drm/meson/meson_dw_hdmi.c
-@@ -670,7 +670,10 @@ static int meson_venc_hdmi_encoder_atomic_check(struct drm_encoder *encoder,
- dw_hdmi->output_bus_format = MEDIA_BUS_FMT_UYYVYY8_0_5X24;
- } else {
- dw_hdmi->input_bus_format = MEDIA_BUS_FMT_YUV8_1X24;
-- dw_hdmi->output_bus_format = MEDIA_BUS_FMT_RGB888_1X24;
-+ if (info->color_formats & DRM_COLOR_FORMAT_YCRCB444)
-+ dw_hdmi->output_bus_format = MEDIA_BUS_FMT_YUV8_1X24;
-+ else
-+ dw_hdmi->output_bus_format = MEDIA_BUS_FMT_RGB888_1X24;
- }
-
- return 0;
diff --git a/testing/linux-amlogic/0022-drm-meson-Support-Overlay-plane-for-video-rendering.patch b/testing/linux-amlogic/0022-drm-meson-Support-Overlay-plane-for-video-rendering.patch
deleted file mode 100644
index 704b26c8786..00000000000
--- a/testing/linux-amlogic/0022-drm-meson-Support-Overlay-plane-for-video-rendering.patch
+++ /dev/null
@@ -1,1258 +0,0 @@
-From cfcbd82639be569a7ef6f71e991d7506b5e372ab Mon Sep 17 00:00:00 2001
-From: Neil Armstrong <narmstrong@baylibre.com>
-Date: Thu, 2 Aug 2018 10:00:01 +0200
-Subject: [PATCH] drm/meson: Support Overlay plane for video rendering
-
-The Amlogic Meson GX SoCs support an Overlay plane behind the primary
-plane for video rendering.
-
-This Overlay plane support various YUV layouts :
-- YUYV
-- NV12 / NV21
-- YUV444 / 422 / 420 / 411 / 410
-
-The scaler supports a wide range of scaling ratios, but for simplicity,
-plane atomic check limits the scaling from x5 to /5 in vertical and
-horizontal scaling.
-
-The z-order is fixed and always behind the primary plane and cannot be changed.
-
-The scaling parameter algorithm was taken from the Amlogic vendor kernel
-code and rewritten to match the atomic universal plane requirements.
-
-The video rendering using this overlay plane support has been tested using
-the new Kodi DRM-KMS Prime rendering path along the in-review V4L2 Mem2Mem
-Hardware Video Decoder up to 3840x2160 NV12 frames on various display modes.
-
----
- drivers/gpu/drm/meson/Makefile | 2 +-
- drivers/gpu/drm/meson/meson_canvas.c | 7 +-
- drivers/gpu/drm/meson/meson_canvas.h | 11 +-
- drivers/gpu/drm/meson/meson_crtc.c | 216 +++++++++++-
- drivers/gpu/drm/meson/meson_drv.c | 29 +-
- drivers/gpu/drm/meson/meson_drv.h | 52 +++
- drivers/gpu/drm/meson/meson_overlay.c | 586 ++++++++++++++++++++++++++++++++
- drivers/gpu/drm/meson/meson_overlay.h | 14 +
- drivers/gpu/drm/meson/meson_registers.h | 3 +
- drivers/gpu/drm/meson/meson_viu.c | 15 +
- drivers/gpu/drm/meson/meson_vpp.c | 44 ++-
- 11 files changed, 971 insertions(+), 8 deletions(-)
- create mode 100644 drivers/gpu/drm/meson/meson_overlay.c
- create mode 100644 drivers/gpu/drm/meson/meson_overlay.h
-
-diff --git a/drivers/gpu/drm/meson/Makefile b/drivers/gpu/drm/meson/Makefile
-index c5c4cc3..7709f2f 100644
---- a/drivers/gpu/drm/meson/Makefile
-+++ b/drivers/gpu/drm/meson/Makefile
-@@ -1,5 +1,5 @@
- meson-drm-y := meson_drv.o meson_plane.o meson_crtc.o meson_venc_cvbs.o
--meson-drm-y += meson_viu.o meson_vpp.o meson_venc.o meson_vclk.o meson_canvas.o
-+meson-drm-y += meson_viu.o meson_vpp.o meson_venc.o meson_vclk.o meson_canvas.o meson_overlay.o
-
- obj-$(CONFIG_DRM_MESON) += meson-drm.o
- obj-$(CONFIG_DRM_MESON_DW_HDMI) += meson_dw_hdmi.o
-diff --git a/drivers/gpu/drm/meson/meson_canvas.c b/drivers/gpu/drm/meson/meson_canvas.c
-index 08f6073..5de11aa 100644
---- a/drivers/gpu/drm/meson/meson_canvas.c
-+++ b/drivers/gpu/drm/meson/meson_canvas.c
-@@ -39,6 +39,7 @@
- #define CANVAS_WIDTH_HBIT 0
- #define CANVAS_HEIGHT_BIT 9
- #define CANVAS_BLKMODE_BIT 24
-+#define CANVAS_ENDIAN_BIT 26
- #define DMC_CAV_LUT_ADDR 0x50 /* 0x14 offset in data sheet */
- #define CANVAS_LUT_WR_EN (0x2 << 8)
- #define CANVAS_LUT_RD_EN (0x1 << 8)
-@@ -47,7 +48,8 @@ void meson_canvas_setup(struct meson_drm *priv,
- uint32_t canvas_index, uint32_t addr,
- uint32_t stride, uint32_t height,
- unsigned int wrap,
-- unsigned int blkmode)
-+ unsigned int blkmode,
-+ unsigned int endian)
- {
- unsigned int val;
-
-@@ -60,7 +62,8 @@ void meson_canvas_setup(struct meson_drm *priv,
- CANVAS_WIDTH_HBIT) |
- (height << CANVAS_HEIGHT_BIT) |
- (wrap << 22) |
-- (blkmode << CANVAS_BLKMODE_BIT));
-+ (blkmode << CANVAS_BLKMODE_BIT) |
-+ (endian << CANVAS_ENDIAN_BIT));
-
- regmap_write(priv->dmc, DMC_CAV_LUT_ADDR,
- CANVAS_LUT_WR_EN | canvas_index);
-diff --git a/drivers/gpu/drm/meson/meson_canvas.h b/drivers/gpu/drm/meson/meson_canvas.h
-index af1759d..85dbf26 100644
---- a/drivers/gpu/drm/meson/meson_canvas.h
-+++ b/drivers/gpu/drm/meson/meson_canvas.h
-@@ -23,6 +23,9 @@
- #define __MESON_CANVAS_H
-
- #define MESON_CANVAS_ID_OSD1 0x4e
-+#define MESON_CANVAS_ID_VD1_0 0x60
-+#define MESON_CANVAS_ID_VD1_1 0x61
-+#define MESON_CANVAS_ID_VD1_2 0x62
-
- /* Canvas configuration. */
- #define MESON_CANVAS_WRAP_NONE 0x00
-@@ -33,10 +36,16 @@
- #define MESON_CANVAS_BLKMODE_32x32 0x01
- #define MESON_CANVAS_BLKMODE_64x64 0x02
-
-+#define MESON_CANVAS_ENDIAN_SWAP16 0x1
-+#define MESON_CANVAS_ENDIAN_SWAP32 0x3
-+#define MESON_CANVAS_ENDIAN_SWAP64 0x7
-+#define MESON_CANVAS_ENDIAN_SWAP128 0xf
-+
- void meson_canvas_setup(struct meson_drm *priv,
- uint32_t canvas_index, uint32_t addr,
- uint32_t stride, uint32_t height,
- unsigned int wrap,
-- unsigned int blkmode);
-+ unsigned int blkmode,
-+ unsigned int endian);
-
- #endif /* __MESON_CANVAS_H */
-diff --git a/drivers/gpu/drm/meson/meson_crtc.c b/drivers/gpu/drm/meson/meson_crtc.c
-index 8744244..1d9d22c 100644
---- a/drivers/gpu/drm/meson/meson_crtc.c
-+++ b/drivers/gpu/drm/meson/meson_crtc.c
-@@ -25,6 +25,7 @@
- #include <linux/module.h>
- #include <linux/mutex.h>
- #include <linux/platform_device.h>
-+#include <linux/bitfield.h>
- #include <drm/drmP.h>
- #include <drm/drm_atomic.h>
- #include <drm/drm_atomic_helper.h>
-@@ -98,6 +99,10 @@ static void meson_crtc_atomic_enable(struct drm_crtc *crtc,
- writel(crtc_state->mode.hdisplay,
- priv->io_base + _REG(VPP_POSTBLEND_H_SIZE));
-
-+ /* VD1 Preblend vertical start/end */
-+ writel(FIELD_PREP(GENMASK(11, 0), 2303),
-+ priv->io_base + _REG(VPP_PREBLEND_VD1_V_START_END));
-+
- writel_bits_relaxed(VPP_POSTBLEND_ENABLE, VPP_POSTBLEND_ENABLE,
- priv->io_base + _REG(VPP_MISC));
-
-@@ -114,11 +119,17 @@ static void meson_crtc_atomic_disable(struct drm_crtc *crtc,
-
- drm_crtc_vblank_off(crtc);
-
-+ DRM_DEBUG_DRIVER("\n");
-+
- priv->viu.osd1_enabled = false;
- priv->viu.osd1_commit = false;
-
-+ priv->viu.vd1_enabled = false;
-+ priv->viu.vd1_commit = false;
-+
- /* Disable VPP Postblend */
-- writel_bits_relaxed(VPP_POSTBLEND_ENABLE, 0,
-+ writel_bits_relaxed(VPP_OSD1_POSTBLEND | VPP_VD1_POSTBLEND |
-+ VPP_VD1_PREBLEND | VPP_POSTBLEND_ENABLE, 0,
- priv->io_base + _REG(VPP_MISC));
-
- if (crtc->state->event && !crtc->state->active) {
-@@ -153,6 +164,7 @@ static void meson_crtc_atomic_flush(struct drm_crtc *crtc,
- struct meson_drm *priv = meson_crtc->priv;
-
- priv->viu.osd1_commit = true;
-+ priv->viu.vd1_commit = true;
- }
-
- static const struct drm_crtc_helper_funcs meson_crtc_helper_funcs = {
-@@ -206,7 +218,7 @@ void meson_crtc_irq(struct meson_drm *priv)
- meson_canvas_setup(priv, MESON_CANVAS_ID_OSD1,
- priv->viu.osd1_addr, priv->viu.osd1_stride,
- priv->viu.osd1_height, MESON_CANVAS_WRAP_NONE,
-- MESON_CANVAS_BLKMODE_LINEAR);
-+ MESON_CANVAS_BLKMODE_LINEAR, 0);
-
- /* Enable OSD1 */
- writel_bits_relaxed(VPP_OSD1_POSTBLEND, VPP_OSD1_POSTBLEND,
-@@ -215,6 +227,206 @@ void meson_crtc_irq(struct meson_drm *priv)
- priv->viu.osd1_commit = false;
- }
-
-+ /* Update the VD1 registers */
-+ if (priv->viu.vd1_enabled && priv->viu.vd1_commit) {
-+
-+ switch (priv->viu.vd1_planes) {
-+ case 3:
-+ if (priv->canvas)
-+ meson_canvas_config(priv->canvas,
-+ priv->canvas_id_vd1_2,
-+ priv->viu.vd1_addr2,
-+ priv->viu.vd1_stride2,
-+ priv->viu.vd1_height2,
-+ MESON_CANVAS_WRAP_NONE,
-+ MESON_CANVAS_BLKMODE_LINEAR,
-+ MESON_CANVAS_ENDIAN_SWAP64);
-+ else
-+ meson_canvas_setup(priv, MESON_CANVAS_ID_VD1_2,
-+ priv->viu.vd1_addr2,
-+ priv->viu.vd1_stride2,
-+ priv->viu.vd1_height2,
-+ MESON_CANVAS_WRAP_NONE,
-+ MESON_CANVAS_BLKMODE_LINEAR,
-+ MESON_CANVAS_ENDIAN_SWAP64);
-+ /* fallthrough */
-+ case 2:
-+ if (priv->canvas)
-+ meson_canvas_config(priv->canvas,
-+ priv->canvas_id_vd1_1,
-+ priv->viu.vd1_addr1,
-+ priv->viu.vd1_stride1,
-+ priv->viu.vd1_height1,
-+ MESON_CANVAS_WRAP_NONE,
-+ MESON_CANVAS_BLKMODE_LINEAR,
-+ MESON_CANVAS_ENDIAN_SWAP64);
-+ else
-+ meson_canvas_setup(priv, MESON_CANVAS_ID_VD1_1,
-+ priv->viu.vd1_addr2,
-+ priv->viu.vd1_stride2,
-+ priv->viu.vd1_height2,
-+ MESON_CANVAS_WRAP_NONE,
-+ MESON_CANVAS_BLKMODE_LINEAR,
-+ MESON_CANVAS_ENDIAN_SWAP64);
-+ /* fallthrough */
-+ case 1:
-+ if (priv->canvas)
-+ meson_canvas_config(priv->canvas,
-+ priv->canvas_id_vd1_0,
-+ priv->viu.vd1_addr0,
-+ priv->viu.vd1_stride0,
-+ priv->viu.vd1_height0,
-+ MESON_CANVAS_WRAP_NONE,
-+ MESON_CANVAS_BLKMODE_LINEAR,
-+ MESON_CANVAS_ENDIAN_SWAP64);
-+ else
-+ meson_canvas_setup(priv, MESON_CANVAS_ID_VD1_0,
-+ priv->viu.vd1_addr2,
-+ priv->viu.vd1_stride2,
-+ priv->viu.vd1_height2,
-+ MESON_CANVAS_WRAP_NONE,
-+ MESON_CANVAS_BLKMODE_LINEAR,
-+ MESON_CANVAS_ENDIAN_SWAP64);
-+ };
-+
-+ writel_relaxed(priv->viu.vd1_if0_gen_reg,
-+ priv->io_base + _REG(VD1_IF0_GEN_REG));
-+ writel_relaxed(priv->viu.vd1_if0_gen_reg,
-+ priv->io_base + _REG(VD2_IF0_GEN_REG));
-+ writel_relaxed(priv->viu.vd1_if0_gen_reg2,
-+ priv->io_base + _REG(VD1_IF0_GEN_REG2));
-+ writel_relaxed(priv->viu.viu_vd1_fmt_ctrl,
-+ priv->io_base + _REG(VIU_VD1_FMT_CTRL));
-+ writel_relaxed(priv->viu.viu_vd1_fmt_ctrl,
-+ priv->io_base + _REG(VIU_VD2_FMT_CTRL));
-+ writel_relaxed(priv->viu.viu_vd1_fmt_w,
-+ priv->io_base + _REG(VIU_VD1_FMT_W));
-+ writel_relaxed(priv->viu.viu_vd1_fmt_w,
-+ priv->io_base + _REG(VIU_VD2_FMT_W));
-+ writel_relaxed(priv->viu.vd1_if0_canvas0,
-+ priv->io_base + _REG(VD1_IF0_CANVAS0));
-+ writel_relaxed(priv->viu.vd1_if0_canvas0,
-+ priv->io_base + _REG(VD1_IF0_CANVAS1));
-+ writel_relaxed(priv->viu.vd1_if0_canvas0,
-+ priv->io_base + _REG(VD2_IF0_CANVAS0));
-+ writel_relaxed(priv->viu.vd1_if0_canvas0,
-+ priv->io_base + _REG(VD2_IF0_CANVAS1));
-+ writel_relaxed(priv->viu.vd1_if0_luma_x0,
-+ priv->io_base + _REG(VD1_IF0_LUMA_X0));
-+ writel_relaxed(priv->viu.vd1_if0_luma_x0,
-+ priv->io_base + _REG(VD1_IF0_LUMA_X1));
-+ writel_relaxed(priv->viu.vd1_if0_luma_x0,
-+ priv->io_base + _REG(VD2_IF0_LUMA_X0));
-+ writel_relaxed(priv->viu.vd1_if0_luma_x0,
-+ priv->io_base + _REG(VD2_IF0_LUMA_X1));
-+ writel_relaxed(priv->viu.vd1_if0_luma_y0,
-+ priv->io_base + _REG(VD1_IF0_LUMA_Y0));
-+ writel_relaxed(priv->viu.vd1_if0_luma_y0,
-+ priv->io_base + _REG(VD1_IF0_LUMA_Y1));
-+ writel_relaxed(priv->viu.vd1_if0_luma_y0,
-+ priv->io_base + _REG(VD2_IF0_LUMA_Y0));
-+ writel_relaxed(priv->viu.vd1_if0_luma_y0,
-+ priv->io_base + _REG(VD2_IF0_LUMA_Y1));
-+ writel_relaxed(priv->viu.vd1_if0_chroma_x0,
-+ priv->io_base + _REG(VD1_IF0_CHROMA_X0));
-+ writel_relaxed(priv->viu.vd1_if0_chroma_x0,
-+ priv->io_base + _REG(VD1_IF0_CHROMA_X1));
-+ writel_relaxed(priv->viu.vd1_if0_chroma_x0,
-+ priv->io_base + _REG(VD2_IF0_CHROMA_X0));
-+ writel_relaxed(priv->viu.vd1_if0_chroma_x0,
-+ priv->io_base + _REG(VD2_IF0_CHROMA_X1));
-+ writel_relaxed(priv->viu.vd1_if0_chroma_y0,
-+ priv->io_base + _REG(VD1_IF0_CHROMA_Y0));
-+ writel_relaxed(priv->viu.vd1_if0_chroma_y0,
-+ priv->io_base + _REG(VD1_IF0_CHROMA_Y1));
-+ writel_relaxed(priv->viu.vd1_if0_chroma_y0,
-+ priv->io_base + _REG(VD2_IF0_CHROMA_Y0));
-+ writel_relaxed(priv->viu.vd1_if0_chroma_y0,
-+ priv->io_base + _REG(VD2_IF0_CHROMA_Y1));
-+ writel_relaxed(priv->viu.vd1_if0_repeat_loop,
-+ priv->io_base + _REG(VD1_IF0_RPT_LOOP));
-+ writel_relaxed(priv->viu.vd1_if0_repeat_loop,
-+ priv->io_base + _REG(VD2_IF0_RPT_LOOP));
-+ writel_relaxed(priv->viu.vd1_if0_luma0_rpt_pat,
-+ priv->io_base + _REG(VD1_IF0_LUMA0_RPT_PAT));
-+ writel_relaxed(priv->viu.vd1_if0_luma0_rpt_pat,
-+ priv->io_base + _REG(VD2_IF0_LUMA0_RPT_PAT));
-+ writel_relaxed(priv->viu.vd1_if0_luma0_rpt_pat,
-+ priv->io_base + _REG(VD1_IF0_LUMA1_RPT_PAT));
-+ writel_relaxed(priv->viu.vd1_if0_luma0_rpt_pat,
-+ priv->io_base + _REG(VD2_IF0_LUMA1_RPT_PAT));
-+ writel_relaxed(priv->viu.vd1_if0_chroma0_rpt_pat,
-+ priv->io_base + _REG(VD1_IF0_CHROMA0_RPT_PAT));
-+ writel_relaxed(priv->viu.vd1_if0_chroma0_rpt_pat,
-+ priv->io_base + _REG(VD2_IF0_CHROMA0_RPT_PAT));
-+ writel_relaxed(priv->viu.vd1_if0_chroma0_rpt_pat,
-+ priv->io_base + _REG(VD1_IF0_CHROMA1_RPT_PAT));
-+ writel_relaxed(priv->viu.vd1_if0_chroma0_rpt_pat,
-+ priv->io_base + _REG(VD2_IF0_CHROMA1_RPT_PAT));
-+ writel_relaxed(0, priv->io_base + _REG(VD1_IF0_LUMA_PSEL));
-+ writel_relaxed(0, priv->io_base + _REG(VD1_IF0_CHROMA_PSEL));
-+ writel_relaxed(0, priv->io_base + _REG(VD2_IF0_LUMA_PSEL));
-+ writel_relaxed(0, priv->io_base + _REG(VD2_IF0_CHROMA_PSEL));
-+ writel_relaxed(priv->viu.vd1_range_map_y,
-+ priv->io_base + _REG(VD1_IF0_RANGE_MAP_Y));
-+ writel_relaxed(priv->viu.vd1_range_map_cb,
-+ priv->io_base + _REG(VD1_IF0_RANGE_MAP_CB));
-+ writel_relaxed(priv->viu.vd1_range_map_cr,
-+ priv->io_base + _REG(VD1_IF0_RANGE_MAP_CR));
-+ writel_relaxed(0x78404,
-+ priv->io_base + _REG(VPP_SC_MISC));
-+ writel_relaxed(priv->viu.vpp_pic_in_height,
-+ priv->io_base + _REG(VPP_PIC_IN_HEIGHT));
-+ writel_relaxed(priv->viu.vpp_postblend_vd1_h_start_end,
-+ priv->io_base + _REG(VPP_POSTBLEND_VD1_H_START_END));
-+ writel_relaxed(priv->viu.vpp_blend_vd2_h_start_end,
-+ priv->io_base + _REG(VPP_BLEND_VD2_H_START_END));
-+ writel_relaxed(priv->viu.vpp_postblend_vd1_v_start_end,
-+ priv->io_base + _REG(VPP_POSTBLEND_VD1_V_START_END));
-+ writel_relaxed(priv->viu.vpp_blend_vd2_v_start_end,
-+ priv->io_base + _REG(VPP_BLEND_VD2_V_START_END));
-+ writel_relaxed(priv->viu.vpp_hsc_region12_startp,
-+ priv->io_base + _REG(VPP_HSC_REGION12_STARTP));
-+ writel_relaxed(priv->viu.vpp_hsc_region34_startp,
-+ priv->io_base + _REG(VPP_HSC_REGION34_STARTP));
-+ writel_relaxed(priv->viu.vpp_hsc_region4_endp,
-+ priv->io_base + _REG(VPP_HSC_REGION4_ENDP));
-+ writel_relaxed(priv->viu.vpp_hsc_start_phase_step,
-+ priv->io_base + _REG(VPP_HSC_START_PHASE_STEP));
-+ writel_relaxed(priv->viu.vpp_hsc_region1_phase_slope,
-+ priv->io_base + _REG(VPP_HSC_REGION1_PHASE_SLOPE));
-+ writel_relaxed(priv->viu.vpp_hsc_region3_phase_slope,
-+ priv->io_base + _REG(VPP_HSC_REGION3_PHASE_SLOPE));
-+ writel_relaxed(priv->viu.vpp_line_in_length,
-+ priv->io_base + _REG(VPP_LINE_IN_LENGTH));
-+ writel_relaxed(priv->viu.vpp_preblend_h_size,
-+ priv->io_base + _REG(VPP_PREBLEND_H_SIZE));
-+ writel_relaxed(priv->viu.vpp_vsc_region12_startp,
-+ priv->io_base + _REG(VPP_VSC_REGION12_STARTP));
-+ writel_relaxed(priv->viu.vpp_vsc_region34_startp,
-+ priv->io_base + _REG(VPP_VSC_REGION34_STARTP));
-+ writel_relaxed(priv->viu.vpp_vsc_region4_endp,
-+ priv->io_base + _REG(VPP_VSC_REGION4_ENDP));
-+ writel_relaxed(priv->viu.vpp_vsc_start_phase_step,
-+ priv->io_base + _REG(VPP_VSC_START_PHASE_STEP));
-+ writel_relaxed(priv->viu.vpp_vsc_ini_phase,
-+ priv->io_base + _REG(VPP_VSC_INI_PHASE));
-+ writel_relaxed(priv->viu.vpp_vsc_phase_ctrl,
-+ priv->io_base + _REG(VPP_VSC_PHASE_CTRL));
-+ writel_relaxed(priv->viu.vpp_hsc_phase_ctrl,
-+ priv->io_base + _REG(VPP_HSC_PHASE_CTRL));
-+ writel_relaxed(0x42, priv->io_base + _REG(VPP_SCALE_COEF_IDX));
-+
-+ /* Enable VD1 */
-+ writel_bits_relaxed(VPP_VD1_PREBLEND | VPP_VD1_POSTBLEND |
-+ VPP_COLOR_MNG_ENABLE,
-+ VPP_VD1_PREBLEND | VPP_VD1_POSTBLEND |
-+ VPP_COLOR_MNG_ENABLE,
-+ priv->io_base + _REG(VPP_MISC));
-+
-+ priv->viu.vd1_commit = false;
-+ }
-+
- drm_crtc_handle_vblank(priv->crtc);
-
- spin_lock_irqsave(&priv->drm->event_lock, flags);
-diff --git a/drivers/gpu/drm/meson/meson_drv.c b/drivers/gpu/drm/meson/meson_drv.c
-index b39c38c..b55e03d 100644
---- a/drivers/gpu/drm/meson/meson_drv.c
-+++ b/drivers/gpu/drm/meson/meson_drv.c
-@@ -41,6 +41,7 @@
-
- #include "meson_drv.h"
- #include "meson_plane.h"
-+#include "meson_overlay.h"
- #include "meson_crtc.h"
- #include "meson_venc_cvbs.h"
-
-@@ -221,6 +222,24 @@ static int meson_drv_bind_master(struct device *dev, bool has_components)
- ret = meson_canvas_alloc(priv->canvas, &priv->canvas_id_osd1);
- if (ret)
- goto free_drm;
-+ ret = meson_canvas_alloc(priv->canvas, &priv->canvas_id_vd1_0);
-+ if (ret) {
-+ meson_canvas_free(priv->canvas, priv->canvas_id_osd1);
-+ goto free_drm;
-+ }
-+ ret = meson_canvas_alloc(priv->canvas, &priv->canvas_id_vd1_1);
-+ if (ret) {
-+ meson_canvas_free(priv->canvas, priv->canvas_id_osd1);
-+ meson_canvas_free(priv->canvas, priv->canvas_id_vd1_0);
-+ goto free_drm;
-+ }
-+ ret = meson_canvas_alloc(priv->canvas, &priv->canvas_id_vd1_2);
-+ if (ret) {
-+ meson_canvas_free(priv->canvas, priv->canvas_id_osd1);
-+ meson_canvas_free(priv->canvas, priv->canvas_id_vd1_0);
-+ meson_canvas_free(priv->canvas, priv->canvas_id_vd1_1);
-+ goto free_drm;
-+ }
- } else {
- priv->canvas = NULL;
-
-@@ -281,6 +300,10 @@ static int meson_drv_bind_master(struct device *dev, bool has_components)
- if (ret)
- goto free_drm;
-
-+ ret = meson_overlay_create(priv);
-+ if (ret)
-+ goto free_drm;
-+
- ret = meson_crtc_create(priv);
- if (ret)
- goto free_drm;
-@@ -324,8 +347,12 @@ static void meson_drv_unbind(struct device *dev)
- struct drm_device *drm = dev_get_drvdata(dev);
- struct meson_drm *priv = drm->dev_private;
-
-- if (priv->canvas)
-+ if (priv->canvas) {
- meson_canvas_free(priv->canvas, priv->canvas_id_osd1);
-+ meson_canvas_free(priv->canvas, priv->canvas_id_vd1_0);
-+ meson_canvas_free(priv->canvas, priv->canvas_id_vd1_1);
-+ meson_canvas_free(priv->canvas, priv->canvas_id_vd1_2);
-+ }
-
- drm_dev_unregister(drm);
- drm_kms_helper_poll_fini(drm);
-diff --git a/drivers/gpu/drm/meson/meson_drv.h b/drivers/gpu/drm/meson/meson_drv.h
-index 728d0ca..c971557 100644
---- a/drivers/gpu/drm/meson/meson_drv.h
-+++ b/drivers/gpu/drm/meson/meson_drv.h
-@@ -34,11 +34,15 @@ struct meson_drm {
-
- struct meson_canvas *canvas;
- u8 canvas_id_osd1;
-+ u8 canvas_id_vd1_0;
-+ u8 canvas_id_vd1_1;
-+ u8 canvas_id_vd1_2;
-
- struct drm_device *drm;
- struct drm_crtc *crtc;
- struct drm_fbdev_cma *fbdev;
- struct drm_plane *primary_plane;
-+ struct drm_plane *overlay_plane;
-
- /* Components Data */
- struct {
-@@ -50,6 +54,54 @@ struct meson_drm {
- uint32_t osd1_addr;
- uint32_t osd1_stride;
- uint32_t osd1_height;
-+
-+ bool vd1_enabled;
-+ bool vd1_commit;
-+ unsigned int vd1_planes;
-+ uint32_t vd1_if0_gen_reg;
-+ uint32_t vd1_if0_luma_x0;
-+ uint32_t vd1_if0_luma_y0;
-+ uint32_t vd1_if0_chroma_x0;
-+ uint32_t vd1_if0_chroma_y0;
-+ uint32_t vd1_if0_repeat_loop;
-+ uint32_t vd1_if0_luma0_rpt_pat;
-+ uint32_t vd1_if0_chroma0_rpt_pat;
-+ uint32_t vd1_range_map_y;
-+ uint32_t vd1_range_map_cb;
-+ uint32_t vd1_range_map_cr;
-+ uint32_t viu_vd1_fmt_w;
-+ uint32_t vd1_if0_canvas0;
-+ uint32_t vd1_if0_gen_reg2;
-+ uint32_t viu_vd1_fmt_ctrl;
-+ uint32_t vd1_addr0;
-+ uint32_t vd1_addr1;
-+ uint32_t vd1_addr2;
-+ uint32_t vd1_stride0;
-+ uint32_t vd1_stride1;
-+ uint32_t vd1_stride2;
-+ uint32_t vd1_height0;
-+ uint32_t vd1_height1;
-+ uint32_t vd1_height2;
-+ uint32_t vpp_pic_in_height;
-+ uint32_t vpp_postblend_vd1_h_start_end;
-+ uint32_t vpp_postblend_vd1_v_start_end;
-+ uint32_t vpp_hsc_region12_startp;
-+ uint32_t vpp_hsc_region34_startp;
-+ uint32_t vpp_hsc_region4_endp;
-+ uint32_t vpp_hsc_start_phase_step;
-+ uint32_t vpp_hsc_region1_phase_slope;
-+ uint32_t vpp_hsc_region3_phase_slope;
-+ uint32_t vpp_line_in_length;
-+ uint32_t vpp_preblend_h_size;
-+ uint32_t vpp_vsc_region12_startp;
-+ uint32_t vpp_vsc_region34_startp;
-+ uint32_t vpp_vsc_region4_endp;
-+ uint32_t vpp_vsc_start_phase_step;
-+ uint32_t vpp_vsc_ini_phase;
-+ uint32_t vpp_vsc_phase_ctrl;
-+ uint32_t vpp_hsc_phase_ctrl;
-+ uint32_t vpp_blend_vd2_h_start_end;
-+ uint32_t vpp_blend_vd2_v_start_end;
- } viu;
-
- struct {
-diff --git a/drivers/gpu/drm/meson/meson_overlay.c b/drivers/gpu/drm/meson/meson_overlay.c
-new file mode 100644
-index 0000000..9aebc5e
---- /dev/null
-+++ b/drivers/gpu/drm/meson/meson_overlay.c
-@@ -0,0 +1,586 @@
-+// SPDX-License-Identifier: GPL-2.0+
-+/*
-+ * Copyright (C) 2018 BayLibre, SAS
-+ * Author: Neil Armstrong <narmstrong@baylibre.com>
-+ * Copyright (C) 2015 Amlogic, Inc. All rights reserved.
-+ */
-+
-+#include <linux/kernel.h>
-+#include <linux/module.h>
-+#include <linux/mutex.h>
-+#include <linux/bitfield.h>
-+#include <linux/platform_device.h>
-+#include <drm/drmP.h>
-+#include <drm/drm_atomic.h>
-+#include <drm/drm_atomic_helper.h>
-+#include <drm/drm_plane_helper.h>
-+#include <drm/drm_gem_cma_helper.h>
-+#include <drm/drm_fb_cma_helper.h>
-+#include <drm/drm_rect.h>
-+
-+#include "meson_overlay.h"
-+#include "meson_vpp.h"
-+#include "meson_viu.h"
-+#include "meson_canvas.h"
-+#include "meson_registers.h"
-+
-+/* VD1_IF0_GEN_REG */
-+#define VD_URGENT_CHROMA BIT(28)
-+#define VD_URGENT_LUMA BIT(27)
-+#define VD_HOLD_LINES(lines) FIELD_PREP(GENMASK(24, 19), lines)
-+#define VD_DEMUX_MODE_RGB BIT(16)
-+#define VD_BYTES_PER_PIXEL(val) FIELD_PREP(GENMASK(15, 14), val)
-+#define VD_CHRO_RPT_LASTL_CTRL BIT(6)
-+#define VD_LITTLE_ENDIAN BIT(4)
-+#define VD_SEPARATE_EN BIT(1)
-+#define VD_ENABLE BIT(0)
-+
-+/* VD1_IF0_CANVAS0 */
-+#define CANVAS_ADDR2(addr) FIELD_PREP(GENMASK(23, 16), addr)
-+#define CANVAS_ADDR1(addr) FIELD_PREP(GENMASK(15, 8), addr)
-+#define CANVAS_ADDR0(addr) FIELD_PREP(GENMASK(7, 0), addr)
-+
-+/* VD1_IF0_LUMA_X0 VD1_IF0_CHROMA_X0 */
-+#define VD_X_START(value) FIELD_PREP(GENMASK(14, 0), value)
-+#define VD_X_END(value) FIELD_PREP(GENMASK(30, 16), value)
-+
-+/* VD1_IF0_LUMA_Y0 VD1_IF0_CHROMA_Y0 */
-+#define VD_Y_START(value) FIELD_PREP(GENMASK(12, 0), value)
-+#define VD_Y_END(value) FIELD_PREP(GENMASK(28, 16), value)
-+
-+/* VD1_IF0_GEN_REG2 */
-+#define VD_COLOR_MAP(value) FIELD_PREP(GENMASK(1, 0), value)
-+
-+/* VIU_VD1_FMT_CTRL */
-+#define VD_HORZ_Y_C_RATIO(value) FIELD_PREP(GENMASK(22, 21), value)
-+#define VD_HORZ_FMT_EN BIT(20)
-+#define VD_VERT_RPT_LINE0 BIT(16)
-+#define VD_VERT_INITIAL_PHASE(value) FIELD_PREP(GENMASK(11, 8), value)
-+#define VD_VERT_PHASE_STEP(value) FIELD_PREP(GENMASK(7, 1), value)
-+#define VD_VERT_FMT_EN BIT(0)
-+
-+/* VPP_POSTBLEND_VD1_H_START_END */
-+#define VD_H_END(value) FIELD_PREP(GENMASK(11, 0), value)
-+#define VD_H_START(value) FIELD_PREP(GENMASK(27, 16), value)
-+
-+/* VPP_POSTBLEND_VD1_V_START_END */
-+#define VD_V_END(value) FIELD_PREP(GENMASK(11, 0), value)
-+#define VD_V_START(value) FIELD_PREP(GENMASK(27, 16), value)
-+
-+/* VPP_BLEND_VD2_V_START_END */
-+#define VD2_V_END(value) FIELD_PREP(GENMASK(11, 0), value)
-+#define VD2_V_START(value) FIELD_PREP(GENMASK(27, 16), value)
-+
-+/* VIU_VD1_FMT_W */
-+#define VD_V_WIDTH(value) FIELD_PREP(GENMASK(11, 0), value)
-+#define VD_H_WIDTH(value) FIELD_PREP(GENMASK(27, 16), value)
-+
-+/* VPP_HSC_REGION12_STARTP VPP_HSC_REGION34_STARTP */
-+#define VD_REGION24_START(value) FIELD_PREP(GENMASK(11, 0), value)
-+#define VD_REGION13_END(value) FIELD_PREP(GENMASK(27, 16), value)
-+
-+struct meson_overlay {
-+ struct drm_plane base;
-+ struct meson_drm *priv;
-+};
-+#define to_meson_overlay(x) container_of(x, struct meson_overlay, base)
-+
-+#define FRAC_16_16(mult, div) (((mult) << 16) / (div))
-+
-+static int meson_overlay_atomic_check(struct drm_plane *plane,
-+ struct drm_plane_state *state)
-+{
-+ struct drm_crtc_state *crtc_state;
-+
-+ if (!state->crtc)
-+ return 0;
-+
-+ crtc_state = drm_atomic_get_crtc_state(state->state, state->crtc);
-+ if (IS_ERR(crtc_state))
-+ return PTR_ERR(crtc_state);
-+
-+ return drm_atomic_helper_check_plane_state(state, crtc_state,
-+ FRAC_16_16(1, 5),
-+ FRAC_16_16(5, 1),
-+ true, true);
-+}
-+
-+/* Takes a fixed 16.16 number and converts it to integer. */
-+static inline int64_t fixed16_to_int(int64_t value)
-+{
-+ return value >> 16;
-+}
-+
-+static const uint8_t skip_tab[6] = {
-+ 0x24, 0x04, 0x68, 0x48, 0x28, 0x08,
-+};
-+
-+static void meson_overlay_get_vertical_phase(unsigned int ratio_y, int *phase,
-+ int *repeat, bool interlace)
-+{
-+ int offset_in = 0;
-+ int offset_out = 0;
-+ int repeat_skip = 0;
-+
-+ if (!interlace && ratio_y > (1 << 18))
-+ offset_out = (1 * ratio_y) >> 10;
-+
-+ while ((offset_in + (4 << 8)) <= offset_out) {
-+ repeat_skip++;
-+ offset_in += 4 << 8;
-+ }
-+
-+ *phase = (offset_out - offset_in) >> 2;
-+
-+ if (*phase > 0x100)
-+ repeat_skip++;
-+
-+ *phase = *phase & 0xff;
-+
-+ if (repeat_skip > 5)
-+ repeat_skip = 5;
-+
-+ *repeat = skip_tab[repeat_skip];
-+}
-+
-+static void meson_overlay_setup_scaler_params(struct meson_drm *priv,
-+ struct drm_plane *plane,
-+ bool interlace_mode)
-+{
-+ struct drm_crtc_state *crtc_state = priv->crtc->state;
-+ int video_top, video_left, video_width, video_height;
-+ struct drm_plane_state *state = plane->state;
-+ unsigned int vd_start_lines, vd_end_lines;
-+ unsigned int hd_start_lines, hd_end_lines;
-+ unsigned int crtc_height, crtc_width;
-+ unsigned int vsc_startp, vsc_endp;
-+ unsigned int hsc_startp, hsc_endp;
-+ unsigned int crop_top, crop_left;
-+ int vphase, vphase_repeat_skip;
-+ unsigned int ratio_x, ratio_y;
-+ int temp_height, temp_width;
-+ unsigned int w_in, h_in;
-+ int temp, start, end;
-+
-+ if (!crtc_state) {
-+ DRM_ERROR("Invalid crtc_state\n");
-+ return;
-+ }
-+
-+ crtc_height = crtc_state->mode.vdisplay;
-+ crtc_width = crtc_state->mode.hdisplay;
-+
-+ w_in = fixed16_to_int(state->src_w);
-+ h_in = fixed16_to_int(state->src_h);
-+ crop_top = fixed16_to_int(state->src_x);
-+ crop_left = fixed16_to_int(state->src_x);
-+
-+ video_top = state->crtc_y;
-+ video_left = state->crtc_x;
-+ video_width = state->crtc_w;
-+ video_height = state->crtc_h;
-+
-+ DRM_DEBUG("crtc_width %d crtc_height %d interlace %d\n",
-+ crtc_width, crtc_height, interlace_mode);
-+ DRM_DEBUG("w_in %d h_in %d crop_top %d crop_left %d\n",
-+ w_in, h_in, crop_top, crop_left);
-+ DRM_DEBUG("video top %d left %d width %d height %d\n",
-+ video_top, video_left, video_width, video_height);
-+
-+ ratio_x = (w_in << 18) / video_width;
-+ ratio_y = (h_in << 18) / video_height;
-+
-+ if (ratio_x * video_width < (w_in << 18))
-+ ratio_x++;
-+
-+ DRM_DEBUG("ratio x 0x%x y 0x%x\n", ratio_x, ratio_y);
-+
-+ meson_overlay_get_vertical_phase(ratio_y, &vphase, &vphase_repeat_skip,
-+ interlace_mode);
-+
-+ DRM_DEBUG("vphase 0x%x skip %d\n", vphase, vphase_repeat_skip);
-+
-+ /* Vertical */
-+
-+ start = video_top + video_height / 2 - ((h_in << 17) / ratio_y);
-+ end = (h_in << 18) / ratio_y + start - 1;
-+
-+ if (video_top < 0 && start < 0)
-+ vd_start_lines = (-(start) * ratio_y) >> 18;
-+ else if (start < video_top)
-+ vd_start_lines = ((video_top - start) * ratio_y) >> 18;
-+ else
-+ vd_start_lines = 0;
-+
-+ if (video_top < 0)
-+ temp_height = min_t(unsigned int,
-+ video_top + video_height - 1,
-+ crtc_height - 1);
-+ else
-+ temp_height = min_t(unsigned int,
-+ video_top + video_height - 1,
-+ crtc_height - 1) - video_top + 1;
-+
-+ temp = vd_start_lines + (temp_height * ratio_y >> 18);
-+ vd_end_lines = (temp <= (h_in - 1)) ? temp : (h_in - 1);
-+
-+ vd_start_lines += crop_left;
-+ vd_end_lines += crop_left;
-+
-+ /*
-+ * TOFIX: Input frames are handled and scaled like progressive frames,
-+ * proper handling of interlaced field input frames need to be figured
-+ * out using the proper framebuffer flags set by userspace.
-+ */
-+ if (interlace_mode) {
-+ start >>= 1;
-+ end >>= 1;
-+ }
-+
-+ vsc_startp = max_t(int, start,
-+ max_t(int, 0, video_top));
-+ vsc_endp = min_t(int, end,
-+ min_t(int, crtc_height - 1,
-+ video_top + video_height - 1));
-+
-+ DRM_DEBUG("vsc startp %d endp %d start_lines %d end_lines %d\n",
-+ vsc_startp, vsc_endp, vd_start_lines, vd_end_lines);
-+
-+ /* Horizontal */
-+
-+ start = video_left + video_width / 2 - ((w_in << 17) / ratio_x);
-+ end = (w_in << 18) / ratio_x + start - 1;
-+
-+ if (video_left < 0 && start < 0)
-+ hd_start_lines = (-(start) * ratio_x) >> 18;
-+ else if (start < video_left)
-+ hd_start_lines = ((video_left - start) * ratio_x) >> 18;
-+ else
-+ hd_start_lines = 0;
-+
-+ if (video_left < 0)
-+ temp_width = min_t(unsigned int,
-+ video_left + video_width - 1,
-+ crtc_width - 1);
-+ else
-+ temp_width = min_t(unsigned int,
-+ video_left + video_width - 1,
-+ crtc_width - 1) - video_left + 1;
-+
-+ temp = hd_start_lines + (temp_width * ratio_x >> 18);
-+ hd_end_lines = (temp <= (w_in - 1)) ? temp : (w_in - 1);
-+
-+ priv->viu.vpp_line_in_length = hd_end_lines - hd_start_lines + 1;
-+ hsc_startp = max_t(int, start, max_t(int, 0, video_left));
-+ hsc_endp = min_t(int, end, min_t(int, crtc_width - 1,
-+ video_left + video_width - 1));
-+
-+ hd_start_lines += crop_top;
-+ hd_end_lines += crop_top;
-+
-+ DRM_DEBUG("hsc startp %d endp %d start_lines %d end_lines %d\n",
-+ hsc_startp, hsc_endp, hd_start_lines, hd_end_lines);
-+
-+ priv->viu.vpp_vsc_start_phase_step = ratio_y << 6;
-+
-+ priv->viu.vpp_vsc_ini_phase = vphase << 8;
-+ priv->viu.vpp_vsc_phase_ctrl = (1 << 13) | (4 << 8) |
-+ vphase_repeat_skip;
-+
-+ priv->viu.vd1_if0_luma_x0 = VD_X_START(hd_start_lines) |
-+ VD_X_END(hd_end_lines);
-+ priv->viu.vd1_if0_chroma_x0 = VD_X_START(hd_start_lines >> 1) |
-+ VD_X_END(hd_end_lines >> 1);
-+
-+ priv->viu.viu_vd1_fmt_w =
-+ VD_H_WIDTH(hd_end_lines - hd_start_lines + 1) |
-+ VD_V_WIDTH(hd_end_lines/2 - hd_start_lines/2 + 1);
-+
-+ priv->viu.vd1_if0_luma_y0 = VD_Y_START(vd_start_lines) |
-+ VD_Y_END(vd_end_lines);
-+
-+ priv->viu.vd1_if0_chroma_y0 = VD_Y_START(vd_start_lines >> 1) |
-+ VD_Y_END(vd_end_lines >> 1);
-+
-+ priv->viu.vpp_pic_in_height = h_in;
-+
-+ priv->viu.vpp_postblend_vd1_h_start_end = VD_H_START(hsc_startp) |
-+ VD_H_END(hsc_endp);
-+ priv->viu.vpp_blend_vd2_h_start_end = VD_H_START(hd_start_lines) |
-+ VD_H_END(hd_end_lines);
-+ priv->viu.vpp_hsc_region12_startp = VD_REGION13_END(0) |
-+ VD_REGION24_START(hsc_startp);
-+ priv->viu.vpp_hsc_region34_startp =
-+ VD_REGION13_END(hsc_startp) |
-+ VD_REGION24_START(hsc_endp - hsc_startp);
-+ priv->viu.vpp_hsc_region4_endp = hsc_endp - hsc_startp;
-+ priv->viu.vpp_hsc_start_phase_step = ratio_x << 6;
-+ priv->viu.vpp_hsc_region1_phase_slope = 0;
-+ priv->viu.vpp_hsc_region3_phase_slope = 0;
-+ priv->viu.vpp_hsc_phase_ctrl = (1 << 21) | (4 << 16);
-+
-+ priv->viu.vpp_line_in_length = hd_end_lines - hd_start_lines + 1;
-+ priv->viu.vpp_preblend_h_size = hd_end_lines - hd_start_lines + 1;
-+
-+ priv->viu.vpp_postblend_vd1_v_start_end = VD_V_START(vsc_startp) |
-+ VD_V_END(vsc_endp);
-+ priv->viu.vpp_blend_vd2_v_start_end =
-+ VD2_V_START((vd_end_lines + 1) >> 1) |
-+ VD2_V_END(vd_end_lines);
-+
-+ priv->viu.vpp_vsc_region12_startp = 0;
-+ priv->viu.vpp_vsc_region34_startp =
-+ VD_REGION13_END(vsc_endp - vsc_startp) |
-+ VD_REGION24_START(vsc_endp - vsc_startp);
-+ priv->viu.vpp_vsc_region4_endp = vsc_endp - vsc_startp;
-+ priv->viu.vpp_vsc_start_phase_step = ratio_y << 6;
-+}
-+
-+static void meson_overlay_atomic_update(struct drm_plane *plane,
-+ struct drm_plane_state *old_state)
-+{
-+ struct meson_overlay *meson_overlay = to_meson_overlay(plane);
-+ struct drm_plane_state *state = plane->state;
-+ struct drm_framebuffer *fb = state->fb;
-+ struct meson_drm *priv = meson_overlay->priv;
-+ struct drm_gem_cma_object *gem;
-+ unsigned long flags;
-+ bool interlace_mode;
-+
-+ DRM_DEBUG_DRIVER("\n");
-+
-+ /* Fallback is canvas provider is not available */
-+ if (!priv->canvas) {
-+ priv->canvas_id_vd1_0 = MESON_CANVAS_ID_VD1_0;
-+ priv->canvas_id_vd1_1 = MESON_CANVAS_ID_VD1_1;
-+ priv->canvas_id_vd1_2 = MESON_CANVAS_ID_VD1_2;
-+ }
-+
-+ interlace_mode = state->crtc->mode.flags & DRM_MODE_FLAG_INTERLACE;
-+
-+ spin_lock_irqsave(&priv->drm->event_lock, flags);
-+
-+ priv->viu.vd1_if0_gen_reg = VD_URGENT_CHROMA |
-+ VD_URGENT_LUMA |
-+ VD_HOLD_LINES(9) |
-+ VD_CHRO_RPT_LASTL_CTRL |
-+ VD_ENABLE;
-+
-+ /* Setup scaler params */
-+ meson_overlay_setup_scaler_params(priv, plane, interlace_mode);
-+
-+ priv->viu.vd1_if0_repeat_loop = 0;
-+ priv->viu.vd1_if0_luma0_rpt_pat = interlace_mode ? 8 : 0;
-+ priv->viu.vd1_if0_chroma0_rpt_pat = interlace_mode ? 8 : 0;
-+ priv->viu.vd1_range_map_y = 0;
-+ priv->viu.vd1_range_map_cb = 0;
-+ priv->viu.vd1_range_map_cr = 0;
-+
-+ /* Default values for RGB888/YUV444 */
-+ priv->viu.vd1_if0_gen_reg2 = 0;
-+ priv->viu.viu_vd1_fmt_ctrl = 0;
-+
-+ switch (fb->format->format) {
-+ /* TOFIX DRM_FORMAT_RGB888 should be supported */
-+ case DRM_FORMAT_YUYV:
-+ priv->viu.vd1_if0_gen_reg |= VD_BYTES_PER_PIXEL(1);
-+ priv->viu.vd1_if0_canvas0 =
-+ CANVAS_ADDR2(priv->canvas_id_vd1_0) |
-+ CANVAS_ADDR1(priv->canvas_id_vd1_0) |
-+ CANVAS_ADDR0(priv->canvas_id_vd1_0);
-+ priv->viu.viu_vd1_fmt_ctrl = VD_HORZ_Y_C_RATIO(1) | /* /2 */
-+ VD_HORZ_FMT_EN |
-+ VD_VERT_RPT_LINE0 |
-+ VD_VERT_INITIAL_PHASE(12) |
-+ VD_VERT_PHASE_STEP(16) | /* /2 */
-+ VD_VERT_FMT_EN;
-+ break;
-+ case DRM_FORMAT_NV12:
-+ case DRM_FORMAT_NV21:
-+ priv->viu.vd1_if0_gen_reg |= VD_SEPARATE_EN;
-+ priv->viu.vd1_if0_canvas0 =
-+ CANVAS_ADDR2(priv->canvas_id_vd1_1) |
-+ CANVAS_ADDR1(priv->canvas_id_vd1_1) |
-+ CANVAS_ADDR0(priv->canvas_id_vd1_0);
-+ if (fb->format->format == DRM_FORMAT_NV12)
-+ priv->viu.vd1_if0_gen_reg2 = VD_COLOR_MAP(1);
-+ else
-+ priv->viu.vd1_if0_gen_reg2 = VD_COLOR_MAP(2);
-+ priv->viu.viu_vd1_fmt_ctrl = VD_HORZ_Y_C_RATIO(1) | /* /2 */
-+ VD_HORZ_FMT_EN |
-+ VD_VERT_RPT_LINE0 |
-+ VD_VERT_INITIAL_PHASE(12) |
-+ VD_VERT_PHASE_STEP(8) | /* /4 */
-+ VD_VERT_FMT_EN;
-+ break;
-+ case DRM_FORMAT_YUV444:
-+ case DRM_FORMAT_YUV422:
-+ case DRM_FORMAT_YUV420:
-+ case DRM_FORMAT_YUV411:
-+ case DRM_FORMAT_YUV410:
-+ priv->viu.vd1_if0_gen_reg |= VD_SEPARATE_EN;
-+ priv->viu.vd1_if0_canvas0 =
-+ CANVAS_ADDR2(priv->canvas_id_vd1_2) |
-+ CANVAS_ADDR1(priv->canvas_id_vd1_1) |
-+ CANVAS_ADDR0(priv->canvas_id_vd1_0);
-+ switch (fb->format->format) {
-+ case DRM_FORMAT_YUV422:
-+ priv->viu.viu_vd1_fmt_ctrl =
-+ VD_HORZ_Y_C_RATIO(1) | /* /2 */
-+ VD_HORZ_FMT_EN |
-+ VD_VERT_RPT_LINE0 |
-+ VD_VERT_INITIAL_PHASE(12) |
-+ VD_VERT_PHASE_STEP(16) | /* /2 */
-+ VD_VERT_FMT_EN;
-+ break;
-+ case DRM_FORMAT_YUV420:
-+ priv->viu.viu_vd1_fmt_ctrl =
-+ VD_HORZ_Y_C_RATIO(1) | /* /2 */
-+ VD_HORZ_FMT_EN |
-+ VD_VERT_RPT_LINE0 |
-+ VD_VERT_INITIAL_PHASE(12) |
-+ VD_VERT_PHASE_STEP(8) | /* /4 */
-+ VD_VERT_FMT_EN;
-+ break;
-+ case DRM_FORMAT_YUV411:
-+ priv->viu.viu_vd1_fmt_ctrl =
-+ VD_HORZ_Y_C_RATIO(2) | /* /4 */
-+ VD_HORZ_FMT_EN |
-+ VD_VERT_RPT_LINE0 |
-+ VD_VERT_INITIAL_PHASE(12) |
-+ VD_VERT_PHASE_STEP(16) | /* /2 */
-+ VD_VERT_FMT_EN;
-+ break;
-+ case DRM_FORMAT_YUV410:
-+ priv->viu.viu_vd1_fmt_ctrl =
-+ VD_HORZ_Y_C_RATIO(2) | /* /4 */
-+ VD_HORZ_FMT_EN |
-+ VD_VERT_RPT_LINE0 |
-+ VD_VERT_INITIAL_PHASE(12) |
-+ VD_VERT_PHASE_STEP(8) | /* /4 */
-+ VD_VERT_FMT_EN;
-+ break;
-+ }
-+ break;
-+ }
-+
-+ /* Update Canvas with buffer address */
-+ priv->viu.vd1_planes = drm_format_num_planes(fb->format->format);
-+
-+ switch (priv->viu.vd1_planes) {
-+ case 3:
-+ gem = drm_fb_cma_get_gem_obj(fb, 2);
-+ priv->viu.vd1_addr2 = gem->paddr + fb->offsets[2];
-+ priv->viu.vd1_stride2 = fb->pitches[2];
-+ priv->viu.vd1_height2 =
-+ drm_format_plane_height(fb->height,
-+ fb->format->format, 2);
-+ DRM_DEBUG("plane 2 addr 0x%x stride %d height %d\n",
-+ priv->viu.vd1_addr2,
-+ priv->viu.vd1_stride2,
-+ priv->viu.vd1_height2);
-+ /* fallthrough */
-+ case 2:
-+ gem = drm_fb_cma_get_gem_obj(fb, 1);
-+ priv->viu.vd1_addr1 = gem->paddr + fb->offsets[1];
-+ priv->viu.vd1_stride1 = fb->pitches[1];
-+ priv->viu.vd1_height1 =
-+ drm_format_plane_height(fb->height,
-+ fb->format->format, 1);
-+ DRM_DEBUG("plane 1 addr 0x%x stride %d height %d\n",
-+ priv->viu.vd1_addr1,
-+ priv->viu.vd1_stride1,
-+ priv->viu.vd1_height1);
-+ /* fallthrough */
-+ case 1:
-+ gem = drm_fb_cma_get_gem_obj(fb, 0);
-+ priv->viu.vd1_addr0 = gem->paddr + fb->offsets[0];
-+ priv->viu.vd1_stride0 = fb->pitches[0];
-+ priv->viu.vd1_height0 =
-+ drm_format_plane_height(fb->height,
-+ fb->format->format, 0);
-+ DRM_DEBUG("plane 0 addr 0x%x stride %d height %d\n",
-+ priv->viu.vd1_addr0,
-+ priv->viu.vd1_stride0,
-+ priv->viu.vd1_height0);
-+ }
-+
-+ priv->viu.vd1_enabled = true;
-+
-+ spin_unlock_irqrestore(&priv->drm->event_lock, flags);
-+
-+ DRM_DEBUG_DRIVER("\n");
-+}
-+
-+static void meson_overlay_atomic_disable(struct drm_plane *plane,
-+ struct drm_plane_state *old_state)
-+{
-+ struct meson_overlay *meson_overlay = to_meson_overlay(plane);
-+ struct meson_drm *priv = meson_overlay->priv;
-+
-+ DRM_DEBUG_DRIVER("\n");
-+
-+ priv->viu.vd1_enabled = false;
-+
-+ /* Disable VD1 */
-+ writel_bits_relaxed(VPP_VD1_POSTBLEND | VPP_VD1_PREBLEND, 0,
-+ priv->io_base + _REG(VPP_MISC));
-+
-+}
-+
-+static const struct drm_plane_helper_funcs meson_overlay_helper_funcs = {
-+ .atomic_check = meson_overlay_atomic_check,
-+ .atomic_disable = meson_overlay_atomic_disable,
-+ .atomic_update = meson_overlay_atomic_update,
-+};
-+
-+static const struct drm_plane_funcs meson_overlay_funcs = {
-+ .update_plane = drm_atomic_helper_update_plane,
-+ .disable_plane = drm_atomic_helper_disable_plane,
-+ .destroy = drm_plane_cleanup,
-+ .reset = drm_atomic_helper_plane_reset,
-+ .atomic_duplicate_state = drm_atomic_helper_plane_duplicate_state,
-+ .atomic_destroy_state = drm_atomic_helper_plane_destroy_state,
-+};
-+
-+static const uint32_t supported_drm_formats[] = {
-+ DRM_FORMAT_YUYV,
-+ DRM_FORMAT_NV12,
-+ DRM_FORMAT_NV21,
-+ DRM_FORMAT_YUV444,
-+ DRM_FORMAT_YUV422,
-+ DRM_FORMAT_YUV420,
-+ DRM_FORMAT_YUV411,
-+ DRM_FORMAT_YUV410,
-+};
-+
-+int meson_overlay_create(struct meson_drm *priv)
-+{
-+ struct meson_overlay *meson_overlay;
-+ struct drm_plane *plane;
-+
-+ DRM_DEBUG_DRIVER("\n");
-+
-+ meson_overlay = devm_kzalloc(priv->drm->dev, sizeof(*meson_overlay),
-+ GFP_KERNEL);
-+ if (!meson_overlay)
-+ return -ENOMEM;
-+
-+ meson_overlay->priv = priv;
-+ plane = &meson_overlay->base;
-+
-+ drm_universal_plane_init(priv->drm, plane, 0xFF,
-+ &meson_overlay_funcs,
-+ supported_drm_formats,
-+ ARRAY_SIZE(supported_drm_formats),
-+ NULL,
-+ DRM_PLANE_TYPE_OVERLAY, "meson_overlay_plane");
-+
-+ drm_plane_helper_add(plane, &meson_overlay_helper_funcs);
-+
-+ priv->overlay_plane = plane;
-+
-+ DRM_DEBUG_DRIVER("\n");
-+
-+ return 0;
-+}
-diff --git a/drivers/gpu/drm/meson/meson_overlay.h b/drivers/gpu/drm/meson/meson_overlay.h
-new file mode 100644
-index 0000000..dae24f5
---- /dev/null
-+++ b/drivers/gpu/drm/meson/meson_overlay.h
-@@ -0,0 +1,14 @@
-+/* SPDX-License-Identifier: GPL-2.0+ */
-+/*
-+ * Copyright (C) 2018 BayLibre, SAS
-+ * Author: Neil Armstrong <narmstrong@baylibre.com>
-+ */
-+
-+#ifndef __MESON_OVERLAY_H
-+#define __MESON_OVERLAY_H
-+
-+#include "meson_drv.h"
-+
-+int meson_overlay_create(struct meson_drm *priv);
-+
-+#endif /* __MESON_OVERLAY_H */
-diff --git a/drivers/gpu/drm/meson/meson_registers.h b/drivers/gpu/drm/meson/meson_registers.h
-index bca8714..5c7e02c 100644
---- a/drivers/gpu/drm/meson/meson_registers.h
-+++ b/drivers/gpu/drm/meson/meson_registers.h
-@@ -286,6 +286,7 @@
- #define VIU_OSD1_MATRIX_COEF22_30 0x1a9d
- #define VIU_OSD1_MATRIX_COEF31_32 0x1a9e
- #define VIU_OSD1_MATRIX_COEF40_41 0x1a9f
-+#define VD1_IF0_GEN_REG3 0x1aa7
- #define VIU_OSD1_EOTF_CTL 0x1ad4
- #define VIU_OSD1_EOTF_COEF00_01 0x1ad5
- #define VIU_OSD1_EOTF_COEF02_10 0x1ad6
-@@ -297,6 +298,7 @@
- #define VIU_OSD1_OETF_CTL 0x1adc
- #define VIU_OSD1_OETF_LUT_ADDR_PORT 0x1add
- #define VIU_OSD1_OETF_LUT_DATA_PORT 0x1ade
-+#define AFBC_ENABLE 0x1ae0
-
- /* vpp */
- #define VPP_DUMMY_DATA 0x1d00
-@@ -349,6 +351,7 @@
- #define VPP_VD2_PREBLEND BIT(15)
- #define VPP_OSD1_PREBLEND BIT(16)
- #define VPP_OSD2_PREBLEND BIT(17)
-+#define VPP_COLOR_MNG_ENABLE BIT(28)
- #define VPP_OFIFO_SIZE 0x1d27
- #define VPP_FIFO_STATUS 0x1d28
- #define VPP_SMOKE_CTRL 0x1d29
-diff --git a/drivers/gpu/drm/meson/meson_viu.c b/drivers/gpu/drm/meson/meson_viu.c
-index 6bcfa52..2dffb98 100644
---- a/drivers/gpu/drm/meson/meson_viu.c
-+++ b/drivers/gpu/drm/meson/meson_viu.c
-@@ -329,6 +329,21 @@ void meson_viu_init(struct meson_drm *priv)
- 0xff << OSD_REPLACE_SHIFT,
- priv->io_base + _REG(VIU_OSD2_CTRL_STAT2));
-
-+ /* Disable VD1 AFBC */
-+ /* di_mif0_en=0 mif0_to_vpp_en=0 di_mad_en=0 */
-+ writel_bits_relaxed(0x7 << 16, 0,
-+ priv->io_base + _REG(VIU_MISC_CTRL0));
-+ /* afbc vd1 set=0 */
-+ writel_bits_relaxed(BIT(20), 0,
-+ priv->io_base + _REG(VIU_MISC_CTRL0));
-+ writel_relaxed(0, priv->io_base + _REG(AFBC_ENABLE));
-+
-+ writel_relaxed(0x00FF00C0,
-+ priv->io_base + _REG(VD1_IF0_LUMA_FIFO_SIZE));
-+ writel_relaxed(0x00FF00C0,
-+ priv->io_base + _REG(VD2_IF0_LUMA_FIFO_SIZE));
-+
-+
- priv->viu.osd1_enabled = false;
- priv->viu.osd1_commit = false;
- priv->viu.osd1_interlace = false;
-diff --git a/drivers/gpu/drm/meson/meson_vpp.c b/drivers/gpu/drm/meson/meson_vpp.c
-index 27356f8..5dc24a9 100644
---- a/drivers/gpu/drm/meson/meson_vpp.c
-+++ b/drivers/gpu/drm/meson/meson_vpp.c
-@@ -122,6 +122,31 @@ static void meson_vpp_write_scaling_filter_coefs(struct meson_drm *priv,
- priv->io_base + _REG(VPP_OSD_SCALE_COEF));
- }
-
-+static const uint32_t vpp_filter_coefs_bicubic[] = {
-+ 0x00800000, 0x007f0100, 0xff7f0200, 0xfe7f0300,
-+ 0xfd7e0500, 0xfc7e0600, 0xfb7d0800, 0xfb7c0900,
-+ 0xfa7b0b00, 0xfa7a0dff, 0xf9790fff, 0xf97711ff,
-+ 0xf87613ff, 0xf87416fe, 0xf87218fe, 0xf8701afe,
-+ 0xf76f1dfd, 0xf76d1ffd, 0xf76b21fd, 0xf76824fd,
-+ 0xf76627fc, 0xf76429fc, 0xf7612cfc, 0xf75f2ffb,
-+ 0xf75d31fb, 0xf75a34fb, 0xf75837fa, 0xf7553afa,
-+ 0xf8523cfa, 0xf8503ff9, 0xf84d42f9, 0xf84a45f9,
-+ 0xf84848f8
-+};
-+
-+static void meson_vpp_write_vd_scaling_filter_coefs(struct meson_drm *priv,
-+ const unsigned int *coefs,
-+ bool is_horizontal)
-+{
-+ int i;
-+
-+ writel_relaxed(is_horizontal ? BIT(8) : 0,
-+ priv->io_base + _REG(VPP_SCALE_COEF_IDX));
-+ for (i = 0; i < 33; i++)
-+ writel_relaxed(coefs[i],
-+ priv->io_base + _REG(VPP_SCALE_COEF));
-+}
-+
- void meson_vpp_init(struct meson_drm *priv)
- {
- /* set dummy data default YUV black */
-@@ -150,17 +175,34 @@ void meson_vpp_init(struct meson_drm *priv)
-
- /* Force all planes off */
- writel_bits_relaxed(VPP_OSD1_POSTBLEND | VPP_OSD2_POSTBLEND |
-- VPP_VD1_POSTBLEND | VPP_VD2_POSTBLEND, 0,
-+ VPP_VD1_POSTBLEND | VPP_VD2_POSTBLEND |
-+ VPP_VD1_PREBLEND | VPP_VD2_PREBLEND, 0,
- priv->io_base + _REG(VPP_MISC));
-
-+ /* Setup default VD settings */
-+ writel_relaxed(4096,
-+ priv->io_base + _REG(VPP_PREBLEND_VD1_H_START_END));
-+ writel_relaxed(4096,
-+ priv->io_base + _REG(VPP_BLEND_VD2_H_START_END));
-+
- /* Disable Scalers */
- writel_relaxed(0, priv->io_base + _REG(VPP_OSD_SC_CTRL0));
- writel_relaxed(0, priv->io_base + _REG(VPP_OSD_VSC_CTRL0));
- writel_relaxed(0, priv->io_base + _REG(VPP_OSD_HSC_CTRL0));
-+ writel_relaxed(4 | (4 << 8) | BIT(15),
-+ priv->io_base + _REG(VPP_SC_MISC));
-+
-+ writel_relaxed(1, priv->io_base + _REG(VPP_VADJ_CTRL));
-
- /* Write in the proper filter coefficients. */
- meson_vpp_write_scaling_filter_coefs(priv,
- vpp_filter_coefs_4point_bspline, false);
- meson_vpp_write_scaling_filter_coefs(priv,
- vpp_filter_coefs_4point_bspline, true);
-+
-+ /* Write the VD proper filter coefficients. */
-+ meson_vpp_write_vd_scaling_filter_coefs(priv, vpp_filter_coefs_bicubic,
-+ false);
-+ meson_vpp_write_vd_scaling_filter_coefs(priv, vpp_filter_coefs_bicubic,
-+ true);
- }
diff --git a/testing/linux-amlogic/0023-drm-meson-Fix-an-Alpha-Primary-Plane-bug-on-Meson-GX.patch b/testing/linux-amlogic/0023-drm-meson-Fix-an-Alpha-Primary-Plane-bug-on-Meson-GX.patch
deleted file mode 100644
index 23d0bc366f1..00000000000
--- a/testing/linux-amlogic/0023-drm-meson-Fix-an-Alpha-Primary-Plane-bug-on-Meson-GX.patch
+++ /dev/null
@@ -1,124 +0,0 @@
-From 90c2e40067b0591a1419472da186463f3f84613b Mon Sep 17 00:00:00 2001
-From: Neil Armstrong <narmstrong@baylibre.com>
-Date: Thu, 22 Nov 2018 17:27:20 +0100
-Subject: [PATCH] drm/meson: Fix an Alpha Primary Plane bug on Meson GXL/GXM
- SoCs
-
-On the Amlogic GXL & GXM SoCs, a bug occurs in the OSD1 plane when
-alpha is used where the alpha is not aligned with the pixel content.
-
-The woraround Amlogic implemented is the reset the OSD1 plane hardware
-block each time the plane is updated, solving the issue.
-
-In the reset, we still need to save the content of 2 registers which
-depends on the status of the plane, in addition to reload the scaler
-conversion matrix in the same time.
-
-Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
-
----
- drivers/gpu/drm/meson/meson_crtc.c | 1 +
- drivers/gpu/drm/meson/meson_plane.c | 12 ++++++++++++
- drivers/gpu/drm/meson/meson_viu.c | 27 +++++++++++++++++++++++++++
- drivers/gpu/drm/meson/meson_viu.h | 1 +
- 4 files changed, 41 insertions(+)
-
-diff --git a/drivers/gpu/drm/meson/meson_crtc.c b/drivers/gpu/drm/meson/meson_crtc.c
-index f8e260b..5312cce 100644
---- a/drivers/gpu/drm/meson/meson_crtc.c
-+++ b/drivers/gpu/drm/meson/meson_crtc.c
-@@ -202,6 +202,7 @@ void meson_crtc_irq(struct meson_drm *priv)
-
- /* Update the OSD registers */
- if (priv->viu.osd1_enabled && priv->viu.osd1_commit) {
-+
- writel_relaxed(priv->viu.osd1_ctrl_stat,
- priv->io_base + _REG(VIU_OSD1_CTRL_STAT));
- writel_relaxed(priv->viu.osd1_blk0_cfg[0],
-diff --git a/drivers/gpu/drm/meson/meson_plane.c b/drivers/gpu/drm/meson/meson_plane.c
-index 12a47b4..8372288 100644
---- a/drivers/gpu/drm/meson/meson_plane.c
-+++ b/drivers/gpu/drm/meson/meson_plane.c
-@@ -79,6 +79,7 @@
- struct meson_plane {
- struct drm_plane base;
- struct meson_drm *priv;
-+ bool enabled;
- };
- #define to_meson_plane(x) container_of(x, struct meson_plane, base)
-
-@@ -303,6 +304,15 @@ static void meson_plane_atomic_update(struct drm_plane *plane,
- priv->viu.osd1_stride = fb->pitches[0];
- priv->viu.osd1_height = fb->height;
-
-+ if (!meson_plane->enabled) {
-+ /* Reset OSD1 at updates on GXL+ SoCs */
-+ if (meson_vpu_is_compatible(priv, "amlogic,meson-gxm-vpu") ||
-+ meson_vpu_is_compatible(priv, "amlogic,meson-gxl-vpu"))
-+ meson_viu_reset(priv);
-+
-+ meson_plane->enabled = true;
-+ }
-+
- spin_unlock_irqrestore(&priv->drm->event_lock, flags);
- }
-
-@@ -316,6 +326,8 @@ static void meson_plane_atomic_disable(struct drm_plane *plane,
- writel_bits_relaxed(VPP_OSD1_POSTBLEND, 0,
- priv->io_base + _REG(VPP_MISC));
-
-+ meson_plane->enabled = false;
-+
- }
-
- static const struct drm_plane_helper_funcs meson_plane_helper_funcs = {
-diff --git a/drivers/gpu/drm/meson/meson_viu.c b/drivers/gpu/drm/meson/meson_viu.c
-index 2dffb98..a41dd6c 100644
---- a/drivers/gpu/drm/meson/meson_viu.c
-+++ b/drivers/gpu/drm/meson/meson_viu.c
-@@ -296,6 +296,33 @@ static void meson_viu_load_matrix(struct meson_drm *priv)
- true);
- }
-
-+/* VIU OSD1 Reset as workaround for GXL+ Alpha OSD Bug */
-+void meson_viu_reset(struct meson_drm *priv)
-+{
-+ uint32_t osd1_fifo_ctrl_stat, osd1_ctrl_stat2;
-+
-+ /* Save these 2 registers state */
-+ osd1_fifo_ctrl_stat = readl_relaxed(
-+ priv->io_base + _REG(VIU_OSD1_FIFO_CTRL_STAT));
-+ osd1_ctrl_stat2 = readl_relaxed(
-+ priv->io_base + _REG(VIU_OSD1_CTRL_STAT2));
-+
-+ /* Reset OSD1 */
-+ writel_bits_relaxed(BIT(0), BIT(0),
-+ priv->io_base + _REG(VIU_SW_RESET));
-+ writel_bits_relaxed(BIT(0), 0,
-+ priv->io_base + _REG(VIU_SW_RESET));
-+
-+ /* Rewrite these registers state lost in the reset */
-+ writel_relaxed(osd1_fifo_ctrl_stat,
-+ priv->io_base + _REG(VIU_OSD1_FIFO_CTRL_STAT));
-+ writel_relaxed(osd1_ctrl_stat2,
-+ priv->io_base + _REG(VIU_OSD1_CTRL_STAT2));
-+
-+ /* Reload the conversion matrix */
-+ meson_viu_load_matrix(priv);
-+}
-+
- void meson_viu_init(struct meson_drm *priv)
- {
- uint32_t reg;
-diff --git a/drivers/gpu/drm/meson/meson_viu.h b/drivers/gpu/drm/meson/meson_viu.h
-index 073b191..e4a6e2f 100644
---- a/drivers/gpu/drm/meson/meson_viu.h
-+++ b/drivers/gpu/drm/meson/meson_viu.h
-@@ -59,6 +59,7 @@
- #define OSD_REPLACE_EN BIT(14)
- #define OSD_REPLACE_SHIFT 6
-
-+void meson_viu_reset(struct meson_drm *priv);
- void meson_viu_init(struct meson_drm *priv);
-
- #endif /* __MESON_VIU_H */
diff --git a/testing/linux-amlogic/0023-drm-meson-move-OSD-scaler-management-into-plane-atom.patch b/testing/linux-amlogic/0023-drm-meson-move-OSD-scaler-management-into-plane-atom.patch
deleted file mode 100644
index 54b356de642..00000000000
--- a/testing/linux-amlogic/0023-drm-meson-move-OSD-scaler-management-into-plane-atom.patch
+++ /dev/null
@@ -1,198 +0,0 @@
-From b92e7773bdb2d5c86091cbb2d03cc55ec6365115 Mon Sep 17 00:00:00 2001
-From: Neil Armstrong <narmstrong@baylibre.com>
-Date: Mon, 29 Oct 2018 17:04:05 +0100
-Subject: [PATCH] drm/meson: move OSD scaler management into plane atomic
- update
-
-In preparation to support the Primary Plane scaling, move the basic
-OSD Interlace-Only scaler setup code into the primary plane atomic
-update callback and handle the vsync scaler update like the overlay
-plane scaling registers update.
-
----
- drivers/gpu/drm/meson/meson_crtc.c | 35 ++++++++++++++++------------
- drivers/gpu/drm/meson/meson_drv.h | 10 ++++++++
- drivers/gpu/drm/meson/meson_plane.c | 39 ++++++++++++++++++++++++++++++-
- drivers/gpu/drm/meson/meson_vpp.c | 46 -------------------------------------
- 4 files changed, 68 insertions(+), 62 deletions(-)
-
-diff --git a/drivers/gpu/drm/meson/meson_crtc.c b/drivers/gpu/drm/meson/meson_crtc.c
-index 1d9d22c..6099997 100644
---- a/drivers/gpu/drm/meson/meson_crtc.c
-+++ b/drivers/gpu/drm/meson/meson_crtc.c
-@@ -193,21 +193,26 @@ void meson_crtc_irq(struct meson_drm *priv)
- priv->io_base + _REG(VIU_OSD1_BLK0_CFG_W3));
- writel_relaxed(priv->viu.osd1_blk0_cfg[4],
- priv->io_base + _REG(VIU_OSD1_BLK0_CFG_W4));
--
-- /* If output is interlace, make use of the Scaler */
-- if (priv->viu.osd1_interlace) {
-- struct drm_plane *plane = priv->primary_plane;
-- struct drm_plane_state *state = plane->state;
-- struct drm_rect dest = {
-- .x1 = state->crtc_x,
-- .y1 = state->crtc_y,
-- .x2 = state->crtc_x + state->crtc_w,
-- .y2 = state->crtc_y + state->crtc_h,
-- };
--
-- meson_vpp_setup_interlace_vscaler_osd1(priv, &dest);
-- } else
-- meson_vpp_disable_interlace_vscaler_osd1(priv);
-+ writel_relaxed(priv->viu.osd_sc_ctrl0,
-+ priv->io_base + _REG(VPP_OSD_SC_CTRL0));
-+ writel_relaxed(priv->viu.osd_sc_i_wh_m1,
-+ priv->io_base + _REG(VPP_OSD_SCI_WH_M1));
-+ writel_relaxed(priv->viu.osd_sc_o_h_start_end,
-+ priv->io_base + _REG(VPP_OSD_SCO_H_START_END));
-+ writel_relaxed(priv->viu.osd_sc_o_v_start_end,
-+ priv->io_base + _REG(VPP_OSD_SCO_V_START_END));
-+ writel_relaxed(priv->viu.osd_sc_v_ini_phase,
-+ priv->io_base + _REG(VPP_OSD_VSC_INI_PHASE));
-+ writel_relaxed(priv->viu.osd_sc_v_phase_step,
-+ priv->io_base + _REG(VPP_OSD_VSC_PHASE_STEP));
-+ writel_relaxed(priv->viu.osd_sc_h_ini_phase,
-+ priv->io_base + _REG(VPP_OSD_HSC_INI_PHASE));
-+ writel_relaxed(priv->viu.osd_sc_h_phase_step,
-+ priv->io_base + _REG(VPP_OSD_HSC_PHASE_STEP));
-+ writel_relaxed(priv->viu.osd_sc_h_ctrl0,
-+ priv->io_base + _REG(VPP_OSD_HSC_CTRL0));
-+ writel_relaxed(priv->viu.osd_sc_v_ctrl0,
-+ priv->io_base + _REG(VPP_OSD_VSC_CTRL0));
-
- if (priv->canvas)
- meson_canvas_config(priv->canvas, priv->canvas_id_osd1,
-diff --git a/drivers/gpu/drm/meson/meson_drv.h b/drivers/gpu/drm/meson/meson_drv.h
-index c971557..a955354 100644
---- a/drivers/gpu/drm/meson/meson_drv.h
-+++ b/drivers/gpu/drm/meson/meson_drv.h
-@@ -54,6 +54,16 @@ struct meson_drm {
- uint32_t osd1_addr;
- uint32_t osd1_stride;
- uint32_t osd1_height;
-+ uint32_t osd_sc_ctrl0;
-+ uint32_t osd_sc_i_wh_m1;
-+ uint32_t osd_sc_o_h_start_end;
-+ uint32_t osd_sc_o_v_start_end;
-+ uint32_t osd_sc_v_ini_phase;
-+ uint32_t osd_sc_v_phase_step;
-+ uint32_t osd_sc_h_ini_phase;
-+ uint32_t osd_sc_h_phase_step;
-+ uint32_t osd_sc_h_ctrl0;
-+ uint32_t osd_sc_v_ctrl0;
-
- bool vd1_enabled;
- bool vd1_commit;
-diff --git a/drivers/gpu/drm/meson/meson_plane.c b/drivers/gpu/drm/meson/meson_plane.c
-index 51bec8e..f915a79 100644
---- a/drivers/gpu/drm/meson/meson_plane.c
-+++ b/drivers/gpu/drm/meson/meson_plane.c
-@@ -143,13 +143,50 @@ static void meson_plane_atomic_update(struct drm_plane *plane,
- break;
- };
-
-+ /*
-+ * When the output is interlaced, the OSD must switch between
-+ * each field using the INTERLACE_SEL_ODD (0) of VIU_OSD1_BLK0_CFG_W0
-+ * at each vsync.
-+ * But the vertical scaler can provide such funtionnality if
-+ * is configured for 2:1 scaling with interlace options enabled.
-+ */
- if (state->crtc->mode.flags & DRM_MODE_FLAG_INTERLACE) {
- priv->viu.osd1_interlace = true;
-
- dest.y1 /= 2;
- dest.y2 /= 2;
-- } else
-+
-+ priv->viu.osd_sc_ctrl0 = BIT(3)| /* Enable scaler */
-+ BIT(2); /* Select OSD1 */
-+
-+ /* 2:1 scaling */
-+ priv->viu.osd_sc_i_wh_m1 = ((drm_rect_width(&dest) - 1) << 16) |
-+ (drm_rect_height(&dest) - 1);
-+ priv->viu.osd_sc_o_h_start_end = (dest.x1 << 16) | dest.x2;
-+ priv->viu.osd_sc_o_v_start_end = (dest.y1 << 16) | dest.y2;
-+
-+ /* 2:1 vertical scaling values */
-+ priv->viu.osd_sc_v_ini_phase = BIT(16);
-+ priv->viu.osd_sc_v_phase_step = BIT(25);
-+ priv->viu.osd_sc_v_ctrl0 =
-+ (4 << 0) | /* osd_vsc_bank_length */
-+ (4 << 3) | /* osd_vsc_top_ini_rcv_num0 */
-+ (1 << 8) | /* osd_vsc_top_rpt_p0_num0 */
-+ (6 << 11) | /* osd_vsc_bot_ini_rcv_num0 */
-+ (2 << 16) | /* osd_vsc_bot_rpt_p0_num0 */
-+ BIT(23) | /* osd_prog_interlace */
-+ BIT(24); /* Enable vertical scaler */
-+
-+ /* No horizontal scaling */
-+ priv->viu.osd_sc_h_ini_phase = 0;
-+ priv->viu.osd_sc_h_phase_step = 0;
-+ priv->viu.osd_sc_h_ctrl0 = 0;
-+ } else {
- priv->viu.osd1_interlace = false;
-+ priv->viu.osd_sc_ctrl0 = 0;
-+ priv->viu.osd_sc_h_ctrl0 = 0;
-+ priv->viu.osd_sc_v_ctrl0 = 0;
-+ }
-
- /*
- * The format of these registers is (x2 << 16 | x1),
-diff --git a/drivers/gpu/drm/meson/meson_vpp.c b/drivers/gpu/drm/meson/meson_vpp.c
-index 5dc24a9..f9efb43 100644
---- a/drivers/gpu/drm/meson/meson_vpp.c
-+++ b/drivers/gpu/drm/meson/meson_vpp.c
-@@ -51,52 +51,6 @@ void meson_vpp_setup_mux(struct meson_drm *priv, unsigned int mux)
- writel(mux, priv->io_base + _REG(VPU_VIU_VENC_MUX_CTRL));
- }
-
--/*
-- * When the output is interlaced, the OSD must switch between
-- * each field using the INTERLACE_SEL_ODD (0) of VIU_OSD1_BLK0_CFG_W0
-- * at each vsync.
-- * But the vertical scaler can provide such funtionnality if
-- * is configured for 2:1 scaling with interlace options enabled.
-- */
--void meson_vpp_setup_interlace_vscaler_osd1(struct meson_drm *priv,
-- struct drm_rect *input)
--{
-- writel_relaxed(BIT(3) /* Enable scaler */ |
-- BIT(2), /* Select OSD1 */
-- priv->io_base + _REG(VPP_OSD_SC_CTRL0));
--
-- writel_relaxed(((drm_rect_width(input) - 1) << 16) |
-- (drm_rect_height(input) - 1),
-- priv->io_base + _REG(VPP_OSD_SCI_WH_M1));
-- /* 2:1 scaling */
-- writel_relaxed(((input->x1) << 16) | (input->x2),
-- priv->io_base + _REG(VPP_OSD_SCO_H_START_END));
-- writel_relaxed(((input->y1 >> 1) << 16) | (input->y2 >> 1),
-- priv->io_base + _REG(VPP_OSD_SCO_V_START_END));
--
-- /* 2:1 scaling values */
-- writel_relaxed(BIT(16), priv->io_base + _REG(VPP_OSD_VSC_INI_PHASE));
-- writel_relaxed(BIT(25), priv->io_base + _REG(VPP_OSD_VSC_PHASE_STEP));
--
-- writel_relaxed(0, priv->io_base + _REG(VPP_OSD_HSC_CTRL0));
--
-- writel_relaxed((4 << 0) /* osd_vsc_bank_length */ |
-- (4 << 3) /* osd_vsc_top_ini_rcv_num0 */ |
-- (1 << 8) /* osd_vsc_top_rpt_p0_num0 */ |
-- (6 << 11) /* osd_vsc_bot_ini_rcv_num0 */ |
-- (2 << 16) /* osd_vsc_bot_rpt_p0_num0 */ |
-- BIT(23) /* osd_prog_interlace */ |
-- BIT(24), /* Enable vertical scaler */
-- priv->io_base + _REG(VPP_OSD_VSC_CTRL0));
--}
--
--void meson_vpp_disable_interlace_vscaler_osd1(struct meson_drm *priv)
--{
-- writel_relaxed(0, priv->io_base + _REG(VPP_OSD_SC_CTRL0));
-- writel_relaxed(0, priv->io_base + _REG(VPP_OSD_VSC_CTRL0));
-- writel_relaxed(0, priv->io_base + _REG(VPP_OSD_HSC_CTRL0));
--}
--
- static unsigned int vpp_filter_coefs_4point_bspline[] = {
- 0x15561500, 0x14561600, 0x13561700, 0x12561800,
- 0x11551a00, 0x11541b00, 0x10541c00, 0x0f541d00,
diff --git a/testing/linux-amlogic/0024-drm-meson-Add-primary-plane-scaling.patch b/testing/linux-amlogic/0024-drm-meson-Add-primary-plane-scaling.patch
deleted file mode 100644
index 472355a105b..00000000000
--- a/testing/linux-amlogic/0024-drm-meson-Add-primary-plane-scaling.patch
+++ /dev/null
@@ -1,285 +0,0 @@
-From 7489078416fdb581625f99ec87b828c2e22794ee Mon Sep 17 00:00:00 2001
-From: Neil Armstrong <narmstrong@baylibre.com>
-Date: Tue, 30 Oct 2018 14:29:10 +0100
-Subject: [PATCH] drm/meson: Add primary plane scaling
-
-This patch adds support for the Primary Plane scaling.
-
-On the Amlogic GX SoCs, the primary plane is used as On-Screen-Display
-layer on top of video, and it's needed to keep the OSD layer to a lower
-size as the physical display size to :
-- lower the memory bandwidth
-- lower the OSD rendering
-- lower the memory usage
-
-This use-case is used when setting the display mode to 3840x2160 and the
-OSD layer is rendered using the GPU. In this case, the GXBB & GXL cannot
-work on more than 2000x2000 buffer, thus needing the OSD layer to be kept
-at 1920x1080 and upscaled to 3840x2160 in hardware.
-
-The primary plane atomic check still allow 1:1 scaling, allowing native
-3840x2160 if needed by user-space applications.
-
----
- drivers/gpu/drm/meson/meson_plane.c | 186 +++++++++++++++++++++++++++---------
- 1 file changed, 141 insertions(+), 45 deletions(-)
-
-diff --git a/drivers/gpu/drm/meson/meson_plane.c b/drivers/gpu/drm/meson/meson_plane.c
-index f915a79..12a47b4 100644
---- a/drivers/gpu/drm/meson/meson_plane.c
-+++ b/drivers/gpu/drm/meson/meson_plane.c
-@@ -24,6 +24,7 @@
- #include <linux/kernel.h>
- #include <linux/module.h>
- #include <linux/mutex.h>
-+#include <linux/bitfield.h>
- #include <linux/platform_device.h>
- #include <drm/drmP.h>
- #include <drm/drm_atomic.h>
-@@ -39,12 +40,50 @@
- #include "meson_canvas.h"
- #include "meson_registers.h"
-
-+/* OSD_SCI_WH_M1 */
-+#define SCI_WH_M1_W(w) FIELD_PREP(GENMASK(28, 16), w)
-+#define SCI_WH_M1_H(h) FIELD_PREP(GENMASK(12, 0), h)
-+
-+/* OSD_SCO_H_START_END */
-+/* OSD_SCO_V_START_END */
-+#define SCO_HV_START(start) FIELD_PREP(GENMASK(27, 16), start)
-+#define SCO_HV_END(end) FIELD_PREP(GENMASK(11, 0), end)
-+
-+/* OSD_SC_CTRL0 */
-+#define SC_CTRL0_PATH_EN BIT(3)
-+#define SC_CTRL0_SEL_OSD1 BIT(2)
-+
-+/* OSD_VSC_CTRL0 */
-+#define VSC_BANK_LEN(value) FIELD_PREP(GENMASK(2, 0), value)
-+#define VSC_TOP_INI_RCV_NUM(value) FIELD_PREP(GENMASK(6, 3), value)
-+#define VSC_TOP_RPT_L0_NUM(value) FIELD_PREP(GENMASK(9, 8), value)
-+#define VSC_BOT_INI_RCV_NUM(value) FIELD_PREP(GENMASK(14, 11), value)
-+#define VSC_BOT_RPT_L0_NUM(value) FIELD_PREP(GENMASK(17, 16), value)
-+#define VSC_PROG_INTERLACE BIT(23)
-+#define VSC_VERTICAL_SCALER_EN BIT(24)
-+
-+/* OSD_VSC_INI_PHASE */
-+#define VSC_INI_PHASE_BOT(bottom) FIELD_PREP(GENMASK(31, 16), bottom)
-+#define VSC_INI_PHASE_TOP(top) FIELD_PREP(GENMASK(15, 0), top)
-+
-+/* OSD_HSC_CTRL0 */
-+#define HSC_BANK_LENGTH(value) FIELD_PREP(GENMASK(2, 0), value)
-+#define HSC_INI_RCV_NUM0(value) FIELD_PREP(GENMASK(6, 3), value)
-+#define HSC_RPT_P0_NUM0(value) FIELD_PREP(GENMASK(9, 8), value)
-+#define HSC_HORIZ_SCALER_EN BIT(22)
-+
-+/* VPP_OSD_VSC_PHASE_STEP */
-+/* VPP_OSD_HSC_PHASE_STEP */
-+#define SC_PHASE_STEP(value) FIELD_PREP(GENMASK(27, 0), value)
-+
- struct meson_plane {
- struct drm_plane base;
- struct meson_drm *priv;
- };
- #define to_meson_plane(x) container_of(x, struct meson_plane, base)
-
-+#define FRAC_16_16(mult, div) (((mult) << 16) / (div))
-+
- static int meson_plane_atomic_check(struct drm_plane *plane,
- struct drm_plane_state *state)
- {
-@@ -57,10 +96,15 @@ static int meson_plane_atomic_check(struct drm_plane *plane,
- if (IS_ERR(crtc_state))
- return PTR_ERR(crtc_state);
-
-+ /*
-+ * Only allow :
-+ * - Upscaling up to 5x, vertical and horizontal
-+ * - Final coordinates must match crtc size
-+ */
- return drm_atomic_helper_check_plane_state(state, crtc_state,
-+ FRAC_16_16(1, 5),
- DRM_PLANE_HELPER_NO_SCALING,
-- DRM_PLANE_HELPER_NO_SCALING,
-- true, true);
-+ false, true);
- }
-
- /* Takes a fixed 16.16 number and converts it to integer. */
-@@ -74,22 +118,19 @@ static void meson_plane_atomic_update(struct drm_plane *plane,
- {
- struct meson_plane *meson_plane = to_meson_plane(plane);
- struct drm_plane_state *state = plane->state;
-- struct drm_framebuffer *fb = state->fb;
-+ struct drm_rect dest = drm_plane_state_dest(state);
- struct meson_drm *priv = meson_plane->priv;
-+ struct drm_framebuffer *fb = state->fb;
- struct drm_gem_cma_object *gem;
-- struct drm_rect src = {
-- .x1 = (state->src_x),
-- .y1 = (state->src_y),
-- .x2 = (state->src_x + state->src_w),
-- .y2 = (state->src_y + state->src_h),
-- };
-- struct drm_rect dest = {
-- .x1 = state->crtc_x,
-- .y1 = state->crtc_y,
-- .x2 = state->crtc_x + state->crtc_w,
-- .y2 = state->crtc_y + state->crtc_h,
-- };
- unsigned long flags;
-+ int vsc_ini_rcv_num, vsc_ini_rpt_p0_num;
-+ int vsc_bot_rcv_num, vsc_bot_rpt_p0_num;
-+ int hsc_ini_rcv_num, hsc_ini_rpt_p0_num;
-+ int hf_phase_step, vf_phase_step;
-+ int src_w, src_h, dst_w, dst_h;
-+ int bot_ini_phase;
-+ int hf_bank_len;
-+ int vf_bank_len;
- u8 canvas_id_osd1;
-
- /*
-@@ -143,6 +184,27 @@ static void meson_plane_atomic_update(struct drm_plane *plane,
- break;
- };
-
-+ /* Default scaler parameters */
-+ vsc_bot_rcv_num = 0;
-+ vsc_bot_rpt_p0_num = 0;
-+ hf_bank_len = 4;
-+ vf_bank_len = 4;
-+
-+ if (state->crtc->mode.flags & DRM_MODE_FLAG_INTERLACE) {
-+ vsc_bot_rcv_num = 6;
-+ vsc_bot_rpt_p0_num = 2;
-+ }
-+
-+ hsc_ini_rcv_num = hf_bank_len;
-+ vsc_ini_rcv_num = vf_bank_len;
-+ hsc_ini_rpt_p0_num = (hf_bank_len / 2) - 1;
-+ vsc_ini_rpt_p0_num = (vf_bank_len / 2) - 1;
-+
-+ src_w = fixed16_to_int(state->src_w);
-+ src_h = fixed16_to_int(state->src_h);
-+ dst_w = state->crtc_w;
-+ dst_h = state->crtc_h;
-+
- /*
- * When the output is interlaced, the OSD must switch between
- * each field using the INTERLACE_SEL_ODD (0) of VIU_OSD1_BLK0_CFG_W0
-@@ -151,41 +213,73 @@ static void meson_plane_atomic_update(struct drm_plane *plane,
- * is configured for 2:1 scaling with interlace options enabled.
- */
- if (state->crtc->mode.flags & DRM_MODE_FLAG_INTERLACE) {
-- priv->viu.osd1_interlace = true;
--
- dest.y1 /= 2;
- dest.y2 /= 2;
-+ dst_h /= 2;
-+ }
-
-- priv->viu.osd_sc_ctrl0 = BIT(3)| /* Enable scaler */
-- BIT(2); /* Select OSD1 */
-+ hf_phase_step = ((src_w << 18) / dst_w) << 6;
-+ vf_phase_step = (src_h << 20) / dst_h;
-
-- /* 2:1 scaling */
-- priv->viu.osd_sc_i_wh_m1 = ((drm_rect_width(&dest) - 1) << 16) |
-- (drm_rect_height(&dest) - 1);
-- priv->viu.osd_sc_o_h_start_end = (dest.x1 << 16) | dest.x2;
-- priv->viu.osd_sc_o_v_start_end = (dest.y1 << 16) | dest.y2;
-+ if (state->crtc->mode.flags & DRM_MODE_FLAG_INTERLACE)
-+ bot_ini_phase = ((vf_phase_step / 2) >> 4);
-+ else
-+ bot_ini_phase = 0;
-+
-+ vf_phase_step = (vf_phase_step << 4);
-+
-+ /* In interlaced mode, scaler is always active */
-+ if (src_h != dst_h || src_w != dst_w) {
-+ priv->viu.osd_sc_i_wh_m1 = SCI_WH_M1_W(src_w - 1) |
-+ SCI_WH_M1_H(src_h - 1);
-+ priv->viu.osd_sc_o_h_start_end = SCO_HV_START(dest.x1) |
-+ SCO_HV_END(dest.x2 - 1);
-+ priv->viu.osd_sc_o_v_start_end = SCO_HV_START(dest.y1) |
-+ SCO_HV_END(dest.y2 - 1);
-+ /* Enable OSD Scaler */
-+ priv->viu.osd_sc_ctrl0 = SC_CTRL0_PATH_EN | SC_CTRL0_SEL_OSD1;
-+ } else {
-+ priv->viu.osd_sc_i_wh_m1 = 0;
-+ priv->viu.osd_sc_o_h_start_end = 0;
-+ priv->viu.osd_sc_o_v_start_end = 0;
-+ priv->viu.osd_sc_ctrl0 = 0;
-+ }
-
-- /* 2:1 vertical scaling values */
-- priv->viu.osd_sc_v_ini_phase = BIT(16);
-- priv->viu.osd_sc_v_phase_step = BIT(25);
-+ /* In interlaced mode, vertical scaler is always active */
-+ if (src_h != dst_h) {
- priv->viu.osd_sc_v_ctrl0 =
-- (4 << 0) | /* osd_vsc_bank_length */
-- (4 << 3) | /* osd_vsc_top_ini_rcv_num0 */
-- (1 << 8) | /* osd_vsc_top_rpt_p0_num0 */
-- (6 << 11) | /* osd_vsc_bot_ini_rcv_num0 */
-- (2 << 16) | /* osd_vsc_bot_rpt_p0_num0 */
-- BIT(23) | /* osd_prog_interlace */
-- BIT(24); /* Enable vertical scaler */
--
-- /* No horizontal scaling */
-+ VSC_BANK_LEN(vf_bank_len) |
-+ VSC_TOP_INI_RCV_NUM(vsc_ini_rcv_num) |
-+ VSC_TOP_RPT_L0_NUM(vsc_ini_rpt_p0_num) |
-+ VSC_VERTICAL_SCALER_EN;
-+
-+ if (state->crtc->mode.flags & DRM_MODE_FLAG_INTERLACE)
-+ priv->viu.osd_sc_v_ctrl0 |=
-+ VSC_BOT_INI_RCV_NUM(vsc_bot_rcv_num) |
-+ VSC_BOT_RPT_L0_NUM(vsc_bot_rpt_p0_num) |
-+ VSC_PROG_INTERLACE;
-+
-+ priv->viu.osd_sc_v_phase_step = SC_PHASE_STEP(vf_phase_step);
-+ priv->viu.osd_sc_v_ini_phase = VSC_INI_PHASE_BOT(bot_ini_phase);
-+ } else {
-+ priv->viu.osd_sc_v_ctrl0 = 0;
-+ priv->viu.osd_sc_v_phase_step = 0;
-+ priv->viu.osd_sc_v_ini_phase = 0;
-+ }
-+
-+ /* Horizontal scaler is only used if width does not match */
-+ if (src_w != dst_w) {
-+ priv->viu.osd_sc_h_ctrl0 =
-+ HSC_BANK_LENGTH(hf_bank_len) |
-+ HSC_INI_RCV_NUM0(hsc_ini_rcv_num) |
-+ HSC_RPT_P0_NUM0(hsc_ini_rpt_p0_num) |
-+ HSC_HORIZ_SCALER_EN;
-+ priv->viu.osd_sc_h_phase_step = SC_PHASE_STEP(hf_phase_step);
- priv->viu.osd_sc_h_ini_phase = 0;
-- priv->viu.osd_sc_h_phase_step = 0;
-- priv->viu.osd_sc_h_ctrl0 = 0;
- } else {
-- priv->viu.osd1_interlace = false;
-- priv->viu.osd_sc_ctrl0 = 0;
- priv->viu.osd_sc_h_ctrl0 = 0;
-- priv->viu.osd_sc_v_ctrl0 = 0;
-+ priv->viu.osd_sc_h_phase_step = 0;
-+ priv->viu.osd_sc_h_ini_phase = 0;
- }
-
- /*
-@@ -193,10 +287,12 @@ static void meson_plane_atomic_update(struct drm_plane *plane,
- * where x2 is exclusive.
- * e.g. +30x1920 would be (1919 << 16) | 30
- */
-- priv->viu.osd1_blk0_cfg[1] = ((fixed16_to_int(src.x2) - 1) << 16) |
-- fixed16_to_int(src.x1);
-- priv->viu.osd1_blk0_cfg[2] = ((fixed16_to_int(src.y2) - 1) << 16) |
-- fixed16_to_int(src.y1);
-+ priv->viu.osd1_blk0_cfg[1] =
-+ ((fixed16_to_int(state->src.x2) - 1) << 16) |
-+ fixed16_to_int(state->src.x1);
-+ priv->viu.osd1_blk0_cfg[2] =
-+ ((fixed16_to_int(state->src.y2) - 1) << 16) |
-+ fixed16_to_int(state->src.y1);
- priv->viu.osd1_blk0_cfg[3] = ((dest.x2 - 1) << 16) | dest.x1;
- priv->viu.osd1_blk0_cfg[4] = ((dest.y2 - 1) << 16) | dest.y1;
-
diff --git a/testing/linux-amlogic/0026-pinctrl-meson-gxl-remove-invalid-GPIOX-tsin_a-pins.patch b/testing/linux-amlogic/0026-pinctrl-meson-gxl-remove-invalid-GPIOX-tsin_a-pins.patch
deleted file mode 100644
index d07847edac2..00000000000
--- a/testing/linux-amlogic/0026-pinctrl-meson-gxl-remove-invalid-GPIOX-tsin_a-pins.patch
+++ /dev/null
@@ -1,55 +0,0 @@
-From 90af79faeb239f3a32974d99a2b58d4ce37cd0c1 Mon Sep 17 00:00:00 2001
-From: Neil Armstrong <narmstrong@baylibre.com>
-Date: Wed, 7 Nov 2018 11:34:47 +0100
-Subject: [PATCH] pinctrl: meson-gxl: remove invalid GPIOX tsin_a pins
-
-The GPIOX tsin_a pins wrongly uses the SDCard pinctrl bits, this
-patch completely removes these pins entries until we find out what
-are the correct bits and registers to be used instead.
-
-Fixes: 5a6ae9b80139 ("pinctrl: meson-gxl: add tsin_a pins")
-
----
- drivers/pinctrl/meson/pinctrl-meson-gxl.c | 12 ++----------
- 1 file changed, 2 insertions(+), 10 deletions(-)
-
-diff --git a/drivers/pinctrl/meson/pinctrl-meson-gxl.c b/drivers/pinctrl/meson/pinctrl-meson-gxl.c
-index 158f618..0c0a501 100644
---- a/drivers/pinctrl/meson/pinctrl-meson-gxl.c
-+++ b/drivers/pinctrl/meson/pinctrl-meson-gxl.c
-@@ -239,13 +239,9 @@ static const unsigned int eth_link_led_pins[] = { GPIOZ_14 };
- static const unsigned int eth_act_led_pins[] = { GPIOZ_15 };
-
- static const unsigned int tsin_a_d0_pins[] = { GPIODV_0 };
--static const unsigned int tsin_a_d0_x_pins[] = { GPIOX_10 };
- static const unsigned int tsin_a_clk_pins[] = { GPIODV_8 };
--static const unsigned int tsin_a_clk_x_pins[] = { GPIOX_11 };
- static const unsigned int tsin_a_sop_pins[] = { GPIODV_9 };
--static const unsigned int tsin_a_sop_x_pins[] = { GPIOX_8 };
- static const unsigned int tsin_a_d_valid_pins[] = { GPIODV_10 };
--static const unsigned int tsin_a_d_valid_x_pins[] = { GPIOX_9 };
- static const unsigned int tsin_a_fail_pins[] = { GPIODV_11 };
- static const unsigned int tsin_a_dp_pins[] = {
- GPIODV_1, GPIODV_2, GPIODV_3, GPIODV_4, GPIODV_5, GPIODV_6, GPIODV_7,
-@@ -432,10 +428,6 @@ static struct meson_pmx_group meson_gxl_periphs_groups[] = {
- GROUP(spi_miso, 5, 2),
- GROUP(spi_ss0, 5, 1),
- GROUP(spi_sclk, 5, 0),
-- GROUP(tsin_a_sop_x, 6, 3),
-- GROUP(tsin_a_d_valid_x, 6, 2),
-- GROUP(tsin_a_d0_x, 6, 1),
-- GROUP(tsin_a_clk_x, 6, 0),
-
- /* Bank Z */
- GROUP(eth_mdio, 4, 23),
-@@ -698,8 +690,8 @@ static const char * const eth_led_groups[] = {
- };
-
- static const char * const tsin_a_groups[] = {
-- "tsin_a_clk", "tsin_a_clk_x", "tsin_a_sop", "tsin_a_sop_x",
-- "tsin_a_d_valid", "tsin_a_d_valid_x", "tsin_a_d0", "tsin_a_d0_x",
-+ "tsin_a_clk", "tsin_a_sop",
-+ "tsin_a_d_valid", "tsin_a_d0",
- "tsin_a_dp", "tsin_a_fail",
- };
-
diff --git a/testing/linux-amlogic/0027-arm64-dts-meson-gx-Add-hdmi_5v-regulator-as-hdmi-tx-.patch b/testing/linux-amlogic/0027-arm64-dts-meson-gx-Add-hdmi_5v-regulator-as-hdmi-tx-.patch
deleted file mode 100644
index f1ee60638e1..00000000000
--- a/testing/linux-amlogic/0027-arm64-dts-meson-gx-Add-hdmi_5v-regulator-as-hdmi-tx-.patch
+++ /dev/null
@@ -1,79 +0,0 @@
-From 6c4496753e3bea38dd4b42266c8402d048bde635 Mon Sep 17 00:00:00 2001
-From: Neil Armstrong <narmstrong@baylibre.com>
-Date: Thu, 8 Nov 2018 14:24:38 +0100
-Subject: [PATCH] arm64: dts: meson-gx: Add hdmi_5v regulator as hdmi tx supply
-
-The hdmi_5v regulator must be enabled to provide power to the physical HDMI
-PHY and enables the HDMI 5V presence loopback for the monitor.
-
-Fixes: b409f625a6d5 ("ARM64: dts: meson-gx: Add HDMI_5V regulator on selected boards")
-Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
-
----
- arch/arm64/boot/dts/amlogic/meson-gx-p23x-q20x.dtsi | 1 +
- arch/arm64/boot/dts/amlogic/meson-gxl-s905x-khadas-vim.dts | 1 +
- arch/arm64/boot/dts/amlogic/meson-gxl-s905x-libretech-cc.dts | 1 +
- arch/arm64/boot/dts/amlogic/meson-gxl-s905x-p212.dts | 1 +
- arch/arm64/boot/dts/amlogic/meson-gxm-khadas-vim2.dts | 1 +
- 5 files changed, 5 insertions(+)
-
-diff --git a/arch/arm64/boot/dts/amlogic/meson-gx-p23x-q20x.dtsi b/arch/arm64/boot/dts/amlogic/meson-gx-p23x-q20x.dtsi
-index fb9ad6f..774f8af 100644
---- a/arch/arm64/boot/dts/amlogic/meson-gx-p23x-q20x.dtsi
-+++ b/arch/arm64/boot/dts/amlogic/meson-gx-p23x-q20x.dtsi
-@@ -166,6 +166,7 @@
- status = "okay";
- pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>;
- pinctrl-names = "default";
-+ hdmi-supply = <&hdmi_5v>;
- };
-
- &hdmi_tx_tmds_port {
-diff --git a/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-khadas-vim.dts b/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-khadas-vim.dts
-index f053595..e5ef9b0 100644
---- a/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-khadas-vim.dts
-+++ b/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-khadas-vim.dts
-@@ -119,6 +119,7 @@
- status = "okay";
- pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>;
- pinctrl-names = "default";
-+ hdmi-supply = <&hdmi_5v>;
- };
-
- &hdmi_tx_tmds_port {
-diff --git a/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-libretech-cc.dts b/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-libretech-cc.dts
-index f56969e..ca0228e 100644
---- a/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-libretech-cc.dts
-+++ b/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-libretech-cc.dts
-@@ -200,6 +200,7 @@
- status = "okay";
- pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>;
- pinctrl-names = "default";
-+ hdmi-supply = <&hdmi_5v>;
- };
-
- &hdmi_tx_tmds_port {
-diff --git a/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-p212.dts b/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-p212.dts
-index f8c66a7..29c9837 100644
---- a/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-p212.dts
-+++ b/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-p212.dts
-@@ -96,6 +96,7 @@
- status = "okay";
- pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>;
- pinctrl-names = "default";
-+ hdmi-supply = <&hdmi_5v>;
- };
-
- &hdmi_tx_tmds_port {
-diff --git a/arch/arm64/boot/dts/amlogic/meson-gxm-khadas-vim2.dts b/arch/arm64/boot/dts/amlogic/meson-gxm-khadas-vim2.dts
-index 4fbfa5a..fe8e726 100644
---- a/arch/arm64/boot/dts/amlogic/meson-gxm-khadas-vim2.dts
-+++ b/arch/arm64/boot/dts/amlogic/meson-gxm-khadas-vim2.dts
-@@ -312,6 +312,7 @@
- status = "okay";
- pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>;
- pinctrl-names = "default";
-+ hdmi-supply = <&hdmi_5v>;
- };
-
- &hdmi_tx_tmds_port {
diff --git a/testing/linux-amlogic/0028-arm64-dts-meson-gxl-libretech-cc-fix-GPIO-lines-name.patch b/testing/linux-amlogic/0028-arm64-dts-meson-gxl-libretech-cc-fix-GPIO-lines-name.patch
deleted file mode 100644
index ca8d27efb3a..00000000000
--- a/testing/linux-amlogic/0028-arm64-dts-meson-gxl-libretech-cc-fix-GPIO-lines-name.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From a0d84363005399bb41b3eee556aa813a129bbcdf Mon Sep 17 00:00:00 2001
-From: Neil Armstrong <narmstrong@baylibre.com>
-Date: Wed, 7 Nov 2018 11:45:47 +0100
-Subject: [PATCH] arm64: dts: meson-gxl-libretech-cc: fix GPIO lines names
-
-The gpio line names were set in the pinctrl node instead of the gpio node,
-at the time it was merged, it worked, but was obviously wrong.
-This patch moves the properties to the gpio nodes.
-
-Fixes: 47884c5c746e ("ARM64: dts: meson-gxl-libretech-cc: Add GPIO lines names")
-Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
-
----
- arch/arm64/boot/dts/amlogic/meson-gxl-s905x-libretech-cc.dts | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-libretech-cc.dts b/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-libretech-cc.dts
-index ca0228e..bb2a8c7 100644
---- a/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-libretech-cc.dts
-+++ b/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-libretech-cc.dts
-@@ -209,7 +209,7 @@
- };
- };
-
--&pinctrl_aobus {
-+&gpio_ao {
- gpio-line-names = "UART TX",
- "UART RX",
- "Blue LED",
-@@ -224,7 +224,7 @@
- "7J1 Header Pin15";
- };
-
--&pinctrl_periphs {
-+&gpio {
- gpio-line-names = /* Bank GPIOZ */
- "", "", "", "", "", "", "",
- "", "", "", "", "", "", "",
diff --git a/testing/linux-amlogic/0029-arm64-dts-meson-gxbb-nanopi-k2-fix-GPIO-lines-names.patch b/testing/linux-amlogic/0029-arm64-dts-meson-gxbb-nanopi-k2-fix-GPIO-lines-names.patch
deleted file mode 100644
index 4ee05f01f14..00000000000
--- a/testing/linux-amlogic/0029-arm64-dts-meson-gxbb-nanopi-k2-fix-GPIO-lines-names.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From 29cf4c3c228fd4cea4f46db9fa5e9386b3e794e6 Mon Sep 17 00:00:00 2001
-From: Neil Armstrong <narmstrong@baylibre.com>
-Date: Wed, 7 Nov 2018 11:45:48 +0100
-Subject: [PATCH] arm64: dts: meson-gxbb-nanopi-k2: fix GPIO lines names
-
-The gpio line names were set in the pinctrl node instead of the gpio node,
-at the time it was merged, it worked, but was obviously wrong.
-This patch moves the properties to the gpio nodes.
-
-Fixes: 12ada0513d7a ("ARM64: dts: meson-gxbb-nanopi-k2: Add GPIO lines names")
-Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
-
----
- arch/arm64/boot/dts/amlogic/meson-gxbb-nanopi-k2.dts | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb-nanopi-k2.dts b/arch/arm64/boot/dts/amlogic/meson-gxbb-nanopi-k2.dts
-index 5b10de9..8ea5ed5 100644
---- a/arch/arm64/boot/dts/amlogic/meson-gxbb-nanopi-k2.dts
-+++ b/arch/arm64/boot/dts/amlogic/meson-gxbb-nanopi-k2.dts
-@@ -236,7 +236,7 @@
- pinctrl-names = "default";
- };
-
--&pinctrl_aobus {
-+&gpio_ao {
- gpio-line-names = "UART TX", "UART RX", "Power Control", "Power Key In",
- "VCCK En", "CON1 Header Pin31",
- "I2S Header Pin6", "IR In", "I2S Header Pin7",
-@@ -246,7 +246,7 @@
- "";
- };
-
--&pinctrl_periphs {
-+&gpio {
- gpio-line-names = /* Bank GPIOZ */
- "Eth MDIO", "Eth MDC", "Eth RGMII RX Clk",
- "Eth RX DV", "Eth RX D0", "Eth RX D1", "Eth RX D2",
diff --git a/testing/linux-amlogic/0030-arm64-dts-meson-gxbb-odroidc2-fix-GPIO-lines-names.patch b/testing/linux-amlogic/0030-arm64-dts-meson-gxbb-odroidc2-fix-GPIO-lines-names.patch
deleted file mode 100644
index 57e37258f58..00000000000
--- a/testing/linux-amlogic/0030-arm64-dts-meson-gxbb-odroidc2-fix-GPIO-lines-names.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From fe156961d17219329389eee52306a731b8151b49 Mon Sep 17 00:00:00 2001
-From: Neil Armstrong <narmstrong@baylibre.com>
-Date: Wed, 7 Nov 2018 11:45:49 +0100
-Subject: [PATCH] arm64: dts: meson-gxbb-odroidc2: fix GPIO lines names
-
-The gpio line names were set in the pinctrl node instead of the gpio node,
-at the time it was merged, it worked, but was obviously wrong.
-This patch moves the properties to the gpio nodes.
-
-Fixes: b03c7d6438bb ("ARM64: dts: meson-gxbb-odroidc2: Add GPIO lines names")
-Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
-
----
- arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts b/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts
-index 3da3309..73cc801 100644
---- a/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts
-+++ b/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts
-@@ -232,7 +232,7 @@
- pinctrl-names = "default";
- };
-
--&pinctrl_aobus {
-+&gpio_ao {
- gpio-line-names = "UART TX", "UART RX", "VCCK En", "TF 3V3/1V8 En",
- "USB HUB nRESET", "USB OTG Power En",
- "J7 Header Pin2", "IR In", "J7 Header Pin4",
-@@ -242,7 +242,7 @@
- "";
- };
-
--&pinctrl_periphs {
-+&gpio {
- gpio-line-names = /* Bank GPIOZ */
- "Eth MDIO", "Eth MDC", "Eth RGMII RX Clk",
- "Eth RX DV", "Eth RX D0", "Eth RX D1", "Eth RX D2",
diff --git a/testing/linux-amlogic/0031-arm64-dts-meson-gxl-khadas-vim-fix-GPIO-lines-names.patch b/testing/linux-amlogic/0031-arm64-dts-meson-gxl-khadas-vim-fix-GPIO-lines-names.patch
deleted file mode 100644
index 3e686149e6f..00000000000
--- a/testing/linux-amlogic/0031-arm64-dts-meson-gxl-khadas-vim-fix-GPIO-lines-names.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From 06df453970ccfbd1affb8ecd6ea50808fa132774 Mon Sep 17 00:00:00 2001
-From: Neil Armstrong <narmstrong@baylibre.com>
-Date: Wed, 7 Nov 2018 11:45:50 +0100
-Subject: [PATCH] arm64: dts: meson-gxl-khadas-vim: fix GPIO lines names
-
-The gpio line names were set in the pinctrl node instead of the gpio node,
-at the time it was merged, it worked, but was obviously wrong.
-This patch moves the properties to the gpio nodes.
-
-Fixes: 60795933b709 ("ARM64: dts: meson-gxl-khadas-vim: Add GPIO lines names")
-Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
-
----
- arch/arm64/boot/dts/amlogic/meson-gxl-s905x-khadas-vim.dts | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-khadas-vim.dts b/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-khadas-vim.dts
-index e5ef9b0..1a4b3f3 100644
---- a/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-khadas-vim.dts
-+++ b/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-khadas-vim.dts
-@@ -158,7 +158,7 @@
- linux,rc-map-name = "rc-geekbox";
- };
-
--&pinctrl_aobus {
-+&gpio_ao {
- gpio-line-names = "UART TX",
- "UART RX",
- "Power Key In",
-@@ -173,7 +173,7 @@
- "";
- };
-
--&pinctrl_periphs {
-+&gpio {
- gpio-line-names = /* Bank GPIOZ */
- "", "", "", "", "", "", "",
- "", "", "", "", "", "", "",
diff --git a/testing/linux-amlogic/0032-drm-meson-Add-support-for-VIC-alternate-timings.patch b/testing/linux-amlogic/0032-drm-meson-Add-support-for-VIC-alternate-timings.patch
deleted file mode 100644
index 42673f4bc2a..00000000000
--- a/testing/linux-amlogic/0032-drm-meson-Add-support-for-VIC-alternate-timings.patch
+++ /dev/null
@@ -1,328 +0,0 @@
-From 96c3cc9c6943cb27ee519cafe17cb563c3fcc28d Mon Sep 17 00:00:00 2001
-From: Neil Armstrong <narmstrong@baylibre.com>
-Date: Tue, 6 Nov 2018 11:54:35 +0100
-Subject: [PATCH] drm/meson: Add support for VIC alternate timings
-
-This change is an attempt to handle the alternate clock for the CEA mode.
-60Hz vs. 59.94Hz, 30Hz vs 29.97Hz or 24Hz vs 23.97Hz on the Amlogic Meson SoC
-DRM Driver pixel clock generation.
-
-The actual clock generation will be moved to the Common Clock framework once
-all the video clock are handled by the Amlogic Meson SoC clock driver,
-then these alternate timings will be handled in the same time in a cleaner
-fashion.
-
-Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
-
----
- drivers/gpu/drm/meson/meson_dw_hdmi.c | 12 +---
- drivers/gpu/drm/meson/meson_vclk.c | 127 +++++++++++++++++++++++-----------
- drivers/gpu/drm/meson/meson_vclk.h | 2 +
- 3 files changed, 89 insertions(+), 52 deletions(-)
-
-diff --git a/drivers/gpu/drm/meson/meson_dw_hdmi.c b/drivers/gpu/drm/meson/meson_dw_hdmi.c
-index df7247c..d8c5cc3 100644
---- a/drivers/gpu/drm/meson/meson_dw_hdmi.c
-+++ b/drivers/gpu/drm/meson/meson_dw_hdmi.c
-@@ -594,17 +594,7 @@ dw_hdmi_mode_valid(struct drm_connector *connector,
- dev_dbg(connector->dev->dev, "%s: vclk:%d venc=%d hdmi=%d\n", __func__,
- vclk_freq, venc_freq, hdmi_freq);
-
-- /* Finally filter by configurable vclk frequencies for VIC modes */
-- switch (vclk_freq) {
-- case 54000:
-- case 74250:
-- case 148500:
-- case 297000:
-- case 594000:
-- return MODE_OK;
-- }
--
-- return MODE_CLOCK_RANGE;
-+ return meson_vclk_vic_supported_freq(vclk_freq);
- }
-
- /* Encoder */
-diff --git a/drivers/gpu/drm/meson/meson_vclk.c b/drivers/gpu/drm/meson/meson_vclk.c
-index ae54732..5accceb 100644
---- a/drivers/gpu/drm/meson/meson_vclk.c
-+++ b/drivers/gpu/drm/meson/meson_vclk.c
-@@ -117,6 +117,8 @@
- #define HDMI_PLL_RESET BIT(28)
- #define HDMI_PLL_LOCK BIT(31)
-
-+#define FREQ_1000_1001(_freq) DIV_ROUND_CLOSEST(_freq * 1000, 1001)
-+
- /* VID PLL Dividers */
- enum {
- VID_PLL_DIV_1 = 0,
-@@ -323,7 +325,7 @@ static void meson_venci_cvbs_clock_config(struct meson_drm *priv)
- enum {
- /* PLL O1 O2 O3 VP DV EN TX */
- /* 4320 /4 /4 /1 /5 /1 => /2 /2 */
-- MESON_VCLK_HDMI_ENCI_54000 = 1,
-+ MESON_VCLK_HDMI_ENCI_54000 = 0,
- /* 4320 /4 /4 /1 /5 /1 => /1 /2 */
- MESON_VCLK_HDMI_DDR_54000,
- /* 2970 /4 /1 /1 /5 /1 => /1 /2 */
-@@ -339,6 +341,7 @@ enum {
- };
-
- struct meson_vclk_params {
-+ unsigned int pixel_freq;
- unsigned int pll_base_freq;
- unsigned int pll_od1;
- unsigned int pll_od2;
-@@ -347,6 +350,7 @@ struct meson_vclk_params {
- unsigned int vclk_div;
- } params[] = {
- [MESON_VCLK_HDMI_ENCI_54000] = {
-+ .pixel_freq = 54000,
- .pll_base_freq = 4320000,
- .pll_od1 = 4,
- .pll_od2 = 4,
-@@ -355,6 +359,7 @@ struct meson_vclk_params {
- .vclk_div = 1,
- },
- [MESON_VCLK_HDMI_DDR_54000] = {
-+ .pixel_freq = 54000,
- .pll_base_freq = 4320000,
- .pll_od1 = 4,
- .pll_od2 = 4,
-@@ -363,6 +368,7 @@ struct meson_vclk_params {
- .vclk_div = 1,
- },
- [MESON_VCLK_HDMI_DDR_148500] = {
-+ .pixel_freq = 148500,
- .pll_base_freq = 2970000,
- .pll_od1 = 4,
- .pll_od2 = 1,
-@@ -371,6 +377,7 @@ struct meson_vclk_params {
- .vclk_div = 1,
- },
- [MESON_VCLK_HDMI_74250] = {
-+ .pixel_freq = 74250,
- .pll_base_freq = 2970000,
- .pll_od1 = 2,
- .pll_od2 = 2,
-@@ -379,6 +386,7 @@ struct meson_vclk_params {
- .vclk_div = 1,
- },
- [MESON_VCLK_HDMI_148500] = {
-+ .pixel_freq = 148500,
- .pll_base_freq = 2970000,
- .pll_od1 = 1,
- .pll_od2 = 2,
-@@ -387,6 +395,7 @@ struct meson_vclk_params {
- .vclk_div = 1,
- },
- [MESON_VCLK_HDMI_297000] = {
-+ .pixel_freq = 297000,
- .pll_base_freq = 2970000,
- .pll_od1 = 1,
- .pll_od2 = 1,
-@@ -395,6 +404,7 @@ struct meson_vclk_params {
- .vclk_div = 2,
- },
- [MESON_VCLK_HDMI_594000] = {
-+ .pixel_freq = 594000,
- .pll_base_freq = 5940000,
- .pll_od1 = 1,
- .pll_od2 = 1,
-@@ -402,6 +412,7 @@ struct meson_vclk_params {
- .vid_pll_div = VID_PLL_DIV_5,
- .vclk_div = 1,
- },
-+ { /* sentinel */ },
- };
-
- static inline unsigned int pll_od_to_reg(unsigned int od)
-@@ -626,12 +637,37 @@ static void meson_hdmi_pll_generic_set(struct meson_drm *priv,
- pll_freq);
- }
-
-+enum drm_mode_status
-+meson_vclk_vic_supported_freq(unsigned int freq)
-+{
-+ int i;
-+
-+ DRM_DEBUG_DRIVER("freq = %d\n", freq);
-+
-+ for (i = 0 ; params[i].pixel_freq ; ++i) {
-+ DRM_DEBUG_DRIVER("i = %d pixel_freq = %d alt = %d\n",
-+ i, params[i].pixel_freq,
-+ FREQ_1000_1001(params[i].pixel_freq));
-+ /* Match strict frequency */
-+ if (freq == params[i].pixel_freq)
-+ return MODE_OK;
-+ /* Match 1000/1001 variant */
-+ if (freq == FREQ_1000_1001(params[i].pixel_freq))
-+ return MODE_OK;
-+ }
-+
-+ return MODE_CLOCK_RANGE;
-+}
-+EXPORT_SYMBOL_GPL(meson_vclk_vic_supported_freq);
-+
- static void meson_vclk_set(struct meson_drm *priv, unsigned int pll_base_freq,
- unsigned int od1, unsigned int od2, unsigned int od3,
- unsigned int vid_pll_div, unsigned int vclk_div,
- unsigned int hdmi_tx_div, unsigned int venc_div,
-- bool hdmi_use_enci)
-+ bool hdmi_use_enci, bool vic_alternate_clock)
- {
-+ unsigned int m, frac;
-+
- /* Set HDMI-TX sys clock */
- regmap_update_bits(priv->hhi, HHI_HDMI_CLK_CNTL,
- CTS_HDMI_SYS_SEL_MASK, 0);
-@@ -646,34 +682,38 @@ static void meson_vclk_set(struct meson_drm *priv, unsigned int pll_base_freq,
- } else if (meson_vpu_is_compatible(priv, "amlogic,meson-gxbb-vpu")) {
- switch (pll_base_freq) {
- case 2970000:
-- meson_hdmi_pll_set_params(priv, 0x3d, 0xe00,
-- od1, od2, od3);
-+ m = 0x3d;
-+ frac = vic_alternate_clock ? 0xd02 : 0xe00;
- break;
- case 4320000:
-- meson_hdmi_pll_set_params(priv, 0x5a, 0,
-- od1, od2, od3);
-+ m = vic_alternate_clock ? 0x59 : 0x5a;
-+ frac = vic_alternate_clock ? 0xe8f : 0;
- break;
- case 5940000:
-- meson_hdmi_pll_set_params(priv, 0x7b, 0xc00,
-- od1, od2, od3);
-+ m = 0x7b;
-+ frac = vic_alternate_clock ? 0xa05 : 0xc00;
- break;
- }
-+
-+ meson_hdmi_pll_set_params(priv, m, frac, od1, od2, od3);
- } else if (meson_vpu_is_compatible(priv, "amlogic,meson-gxm-vpu") ||
- meson_vpu_is_compatible(priv, "amlogic,meson-gxl-vpu")) {
- switch (pll_base_freq) {
- case 2970000:
-- meson_hdmi_pll_set_params(priv, 0x7b, 0x300,
-- od1, od2, od3);
-+ m = 0x7b;
-+ frac = vic_alternate_clock ? 0x281 : 0x300;
- break;
- case 4320000:
-- meson_hdmi_pll_set_params(priv, 0xb4, 0,
-- od1, od2, od3);
-+ m = vic_alternate_clock ? 0xb3 : 0xb4;
-+ frac = vic_alternate_clock ? 0x347 : 0;
- break;
- case 5940000:
-- meson_hdmi_pll_set_params(priv, 0xf7, 0x200,
-- od1, od2, od3);
-+ m = 0xf7;
-+ frac = vic_alternate_clock ? 0x102 : 0x200;
- break;
- }
-+
-+ meson_hdmi_pll_set_params(priv, m, frac, od1, od2, od3);
- }
-
- /* Setup vid_pll divider */
-@@ -826,6 +866,7 @@ void meson_vclk_setup(struct meson_drm *priv, unsigned int target,
- unsigned int vclk_freq, unsigned int venc_freq,
- unsigned int dac_freq, bool hdmi_use_enci)
- {
-+ bool vic_alternate_clock = false;
- unsigned int freq;
- unsigned int hdmi_tx_div;
- unsigned int venc_div;
-@@ -843,7 +884,7 @@ void meson_vclk_setup(struct meson_drm *priv, unsigned int target,
- * - encp encoder
- */
- meson_vclk_set(priv, vclk_freq * 10, 0, 0, 0,
-- VID_PLL_DIV_5, 2, 1, 1, false);
-+ VID_PLL_DIV_5, 2, 1, 1, false, false);
- return;
- }
-
-@@ -863,31 +904,35 @@ void meson_vclk_setup(struct meson_drm *priv, unsigned int target,
- return;
- }
-
-- switch (vclk_freq) {
-- case 54000:
-- if (hdmi_use_enci)
-- freq = MESON_VCLK_HDMI_ENCI_54000;
-- else
-- freq = MESON_VCLK_HDMI_DDR_54000;
-- break;
-- case 74250:
-- freq = MESON_VCLK_HDMI_74250;
-- break;
-- case 148500:
-- if (dac_freq != 148500)
-- freq = MESON_VCLK_HDMI_DDR_148500;
-- else
-- freq = MESON_VCLK_HDMI_148500;
-- break;
-- case 297000:
-- freq = MESON_VCLK_HDMI_297000;
-- break;
-- case 594000:
-- freq = MESON_VCLK_HDMI_594000;
-- break;
-- default:
-- pr_err("Fatal Error, invalid HDMI vclk freq %d\n",
-- vclk_freq);
-+ for (freq = 0 ; params[freq].pixel_freq ; ++freq) {
-+ if (vclk_freq == params[freq].pixel_freq ||
-+ vclk_freq == FREQ_1000_1001(params[freq].pixel_freq)) {
-+ if (vclk_freq != params[freq].pixel_freq)
-+ vic_alternate_clock = true;
-+ else
-+ vic_alternate_clock = false;
-+
-+ if (freq == MESON_VCLK_HDMI_ENCI_54000 &&
-+ !hdmi_use_enci)
-+ continue;
-+
-+ if (freq == MESON_VCLK_HDMI_DDR_54000 &&
-+ hdmi_use_enci)
-+ continue;
-+
-+ if (freq == MESON_VCLK_HDMI_DDR_148500 &&
-+ dac_freq == vclk_freq)
-+ continue;
-+
-+ if (freq == MESON_VCLK_HDMI_148500 &&
-+ dac_freq != vclk_freq)
-+ continue;
-+ break;
-+ }
-+ }
-+
-+ if (!params[freq].pixel_freq) {
-+ pr_err("Fatal Error, invalid HDMI vclk freq %d\n", vclk_freq);
- return;
- }
-
-@@ -895,6 +940,6 @@ void meson_vclk_setup(struct meson_drm *priv, unsigned int target,
- params[freq].pll_od1, params[freq].pll_od2,
- params[freq].pll_od3, params[freq].vid_pll_div,
- params[freq].vclk_div, hdmi_tx_div, venc_div,
-- hdmi_use_enci);
-+ hdmi_use_enci, vic_alternate_clock);
- }
- EXPORT_SYMBOL_GPL(meson_vclk_setup);
-diff --git a/drivers/gpu/drm/meson/meson_vclk.h b/drivers/gpu/drm/meson/meson_vclk.h
-index 869fa3a..4bd8752 100644
---- a/drivers/gpu/drm/meson/meson_vclk.h
-+++ b/drivers/gpu/drm/meson/meson_vclk.h
-@@ -32,6 +32,8 @@ enum {
-
- enum drm_mode_status
- meson_vclk_dmt_supported_freq(struct meson_drm *priv, unsigned int freq);
-+enum drm_mode_status
-+meson_vclk_vic_supported_freq(unsigned int freq);
-
- void meson_vclk_setup(struct meson_drm *priv, unsigned int target,
- unsigned int vclk_freq, unsigned int venc_freq,
diff --git a/testing/linux-amlogic/0033-media-meson-add-v4l2-m2m-video-decoder-driver.patch b/testing/linux-amlogic/0033-media-meson-add-v4l2-m2m-video-decoder-driver.patch
deleted file mode 100644
index 3604a6e456a..00000000000
--- a/testing/linux-amlogic/0033-media-meson-add-v4l2-m2m-video-decoder-driver.patch
+++ /dev/null
@@ -1,2969 +0,0 @@
-From 2c28b1d1f1487bf4aecb36986c2d7b73eb8ac94d Mon Sep 17 00:00:00 2001
-From: Maxime Jourdan <mjourdan@baylibre.com>
-Date: Wed, 29 Aug 2018 15:17:22 +0200
-Subject: [PATCH] media: meson: add v4l2 m2m video decoder driver
-
-Amlogic SoCs feature a powerful video decoder unit able to
-decode many formats, with a performance of usually up to 4k60.
-
-This is a driver for this IP that is based around the v4l2 m2m framework.
-
-It features decoding for:
-- MPEG 1
-- MPEG 2
-
-Supported SoCs are: GXBB (S905), GXL (S905X/W/D), GXM (S912)
-
-There is also a hardware bitstream parser (ESPARSER) that is handled here.
-
-Signed-off-by: Maxime Jourdan <mjourdan@baylibre.com>
-
----
- drivers/media/platform/Kconfig | 10 +
- drivers/media/platform/meson/Makefile | 1 +
- drivers/media/platform/meson/vdec/Makefile | 8 +
- drivers/media/platform/meson/vdec/codec_mpeg12.c | 209 +++++
- drivers/media/platform/meson/vdec/codec_mpeg12.h | 14 +
- drivers/media/platform/meson/vdec/dos_regs.h | 98 ++
- drivers/media/platform/meson/vdec/esparser.c | 322 +++++++
- drivers/media/platform/meson/vdec/esparser.h | 32 +
- drivers/media/platform/meson/vdec/vdec.c | 1034 +++++++++++++++++++++
- drivers/media/platform/meson/vdec/vdec.h | 251 +++++
- drivers/media/platform/meson/vdec/vdec_1.c | 231 +++++
- drivers/media/platform/meson/vdec/vdec_1.h | 14 +
- drivers/media/platform/meson/vdec/vdec_helpers.c | 412 ++++++++
- drivers/media/platform/meson/vdec/vdec_helpers.h | 48 +
- drivers/media/platform/meson/vdec/vdec_platform.c | 101 ++
- drivers/media/platform/meson/vdec/vdec_platform.h | 30 +
- 16 files changed, 2815 insertions(+)
- create mode 100644 drivers/media/platform/meson/vdec/Makefile
- create mode 100644 drivers/media/platform/meson/vdec/codec_mpeg12.c
- create mode 100644 drivers/media/platform/meson/vdec/codec_mpeg12.h
- create mode 100644 drivers/media/platform/meson/vdec/dos_regs.h
- create mode 100644 drivers/media/platform/meson/vdec/esparser.c
- create mode 100644 drivers/media/platform/meson/vdec/esparser.h
- create mode 100644 drivers/media/platform/meson/vdec/vdec.c
- create mode 100644 drivers/media/platform/meson/vdec/vdec.h
- create mode 100644 drivers/media/platform/meson/vdec/vdec_1.c
- create mode 100644 drivers/media/platform/meson/vdec/vdec_1.h
- create mode 100644 drivers/media/platform/meson/vdec/vdec_helpers.c
- create mode 100644 drivers/media/platform/meson/vdec/vdec_helpers.h
- create mode 100644 drivers/media/platform/meson/vdec/vdec_platform.c
- create mode 100644 drivers/media/platform/meson/vdec/vdec_platform.h
-
-diff --git a/drivers/media/platform/Kconfig b/drivers/media/platform/Kconfig
-index 54fe90a..6bffb0c 100644
---- a/drivers/media/platform/Kconfig
-+++ b/drivers/media/platform/Kconfig
-@@ -482,6 +482,16 @@ config VIDEO_QCOM_VENUS
- on various Qualcomm SoCs.
- To compile this driver as a module choose m here.
-
-+config VIDEO_MESON_VDEC
-+ tristate "Amlogic video decoder driver"
-+ depends on VIDEO_DEV && VIDEO_V4L2 && HAS_DMA
-+ depends on ARCH_MESON || COMPILE_TEST
-+ select VIDEOBUF2_DMA_CONTIG
-+ select V4L2_MEM2MEM_DEV
-+ select MESON_CANVAS
-+ help
-+ Support for the video decoder found in gxbb/gxl/gxm chips.
-+
- endif # V4L_MEM2MEM_DRIVERS
-
- # TI VIDEO PORT Helper Modules
-diff --git a/drivers/media/platform/meson/Makefile b/drivers/media/platform/meson/Makefile
-index 597beb8..f7c6e10 100644
---- a/drivers/media/platform/meson/Makefile
-+++ b/drivers/media/platform/meson/Makefile
-@@ -1 +1,2 @@
- obj-$(CONFIG_VIDEO_MESON_AO_CEC) += ao-cec.o
-+obj-$(CONFIG_VIDEO_MESON_VDEC) += vdec/
-diff --git a/drivers/media/platform/meson/vdec/Makefile b/drivers/media/platform/meson/vdec/Makefile
-new file mode 100644
-index 0000000..6bea129
---- /dev/null
-+++ b/drivers/media/platform/meson/vdec/Makefile
-@@ -0,0 +1,8 @@
-+# SPDX-License-Identifier: GPL-2.0
-+# Makefile for Amlogic meson video decoder driver
-+
-+meson-vdec-objs = esparser.o vdec.o vdec_helpers.o vdec_platform.o
-+meson-vdec-objs += vdec_1.o
-+meson-vdec-objs += codec_mpeg12.o
-+
-+obj-$(CONFIG_VIDEO_MESON_VDEC) += meson-vdec.o
-diff --git a/drivers/media/platform/meson/vdec/codec_mpeg12.c b/drivers/media/platform/meson/vdec/codec_mpeg12.c
-new file mode 100644
-index 0000000..1bd6fb7
---- /dev/null
-+++ b/drivers/media/platform/meson/vdec/codec_mpeg12.c
-@@ -0,0 +1,209 @@
-+// SPDX-License-Identifier: GPL-2.0+
-+/*
-+ * Copyright (C) 2018 BayLibre, SAS
-+ * Author: Maxime Jourdan <mjourdan@baylibre.com>
-+ */
-+
-+#include <media/v4l2-mem2mem.h>
-+#include <media/videobuf2-dma-contig.h>
-+
-+#include "vdec_helpers.h"
-+#include "dos_regs.h"
-+
-+#define SIZE_WORKSPACE SZ_128K
-+/* Offset substracted by the firmware from the workspace paddr */
-+#define WORKSPACE_OFFSET (5 * SZ_1K)
-+
-+/* map firmware registers to known MPEG1/2 functions */
-+#define MREG_SEQ_INFO AV_SCRATCH_4
-+ #define MPEG2_SEQ_DAR_MASK GENMASK(3, 0)
-+ #define MPEG2_DAR_4_3 2
-+ #define MPEG2_DAR_16_9 3
-+ #define MPEG2_DAR_221_100 4
-+#define MREG_PIC_INFO AV_SCRATCH_5
-+#define MREG_PIC_WIDTH AV_SCRATCH_6
-+#define MREG_PIC_HEIGHT AV_SCRATCH_7
-+#define MREG_BUFFERIN AV_SCRATCH_8
-+#define MREG_BUFFEROUT AV_SCRATCH_9
-+#define MREG_CMD AV_SCRATCH_A
-+#define MREG_CO_MV_START AV_SCRATCH_B
-+#define MREG_ERROR_COUNT AV_SCRATCH_C
-+#define MREG_FRAME_OFFSET AV_SCRATCH_D
-+#define MREG_WAIT_BUFFER AV_SCRATCH_E
-+#define MREG_FATAL_ERROR AV_SCRATCH_F
-+
-+#define PICINFO_PROG 0x00008000
-+#define PICINFO_TOP_FIRST 0x00002000
-+
-+struct codec_mpeg12 {
-+ /* Buffer for the MPEG1/2 Workspace */
-+ void *workspace_vaddr;
-+ dma_addr_t workspace_paddr;
-+};
-+
-+static const u8 eos_sequence[SZ_1K] = { 0x00, 0x00, 0x01, 0xB7 };
-+
-+static const u8 *codec_mpeg12_eos_sequence(u32 *len)
-+{
-+ *len = ARRAY_SIZE(eos_sequence);
-+ return eos_sequence;
-+}
-+
-+static int codec_mpeg12_can_recycle(struct amvdec_core *core)
-+{
-+ return !amvdec_read_dos(core, MREG_BUFFERIN);
-+}
-+
-+static void codec_mpeg12_recycle(struct amvdec_core *core, u32 buf_idx)
-+{
-+ amvdec_write_dos(core, MREG_BUFFERIN, buf_idx + 1);
-+}
-+
-+static int codec_mpeg12_start(struct amvdec_session *sess)
-+{
-+ struct amvdec_core *core = sess->core;
-+ struct codec_mpeg12 *mpeg12 = sess->priv;
-+ int ret;
-+
-+ mpeg12 = kzalloc(sizeof(*mpeg12), GFP_KERNEL);
-+ if (!mpeg12)
-+ return -ENOMEM;
-+
-+ /* Allocate some memory for the MPEG1/2 decoder's state */
-+ mpeg12->workspace_vaddr = dma_alloc_coherent(core->dev, SIZE_WORKSPACE,
-+ &mpeg12->workspace_paddr,
-+ GFP_KERNEL);
-+ if (!mpeg12->workspace_vaddr) {
-+ dev_err(core->dev, "Failed to request MPEG 1/2 Workspace\n");
-+ ret = -ENOMEM;
-+ goto free_mpeg12;
-+ }
-+
-+ ret = amvdec_set_canvases(sess, (u32[]){ AV_SCRATCH_0, 0 },
-+ (u32[]){ 8, 0 });
-+ if (ret)
-+ goto free_workspace;
-+
-+ amvdec_write_dos(core, POWER_CTL_VLD, BIT(4));
-+ amvdec_write_dos(core, MREG_CO_MV_START,
-+ mpeg12->workspace_paddr + WORKSPACE_OFFSET);
-+
-+ amvdec_write_dos(core, MPEG1_2_REG, 0);
-+ amvdec_write_dos(core, PSCALE_CTRL, 0);
-+ amvdec_write_dos(core, PIC_HEAD_INFO, 0x380);
-+ amvdec_write_dos(core, M4_CONTROL_REG, 0);
-+ amvdec_write_dos(core, MREG_BUFFERIN, 0);
-+ amvdec_write_dos(core, MREG_BUFFEROUT, 0);
-+ amvdec_write_dos(core, MREG_CMD, (sess->width << 16) | sess->height);
-+ amvdec_write_dos(core, MREG_ERROR_COUNT, 0);
-+ amvdec_write_dos(core, MREG_FATAL_ERROR, 0);
-+ amvdec_write_dos(core, MREG_WAIT_BUFFER, 0);
-+
-+ sess->keyframe_found = 1;
-+ sess->priv = mpeg12;
-+
-+ return 0;
-+
-+free_workspace:
-+ dma_free_coherent(core->dev, SIZE_WORKSPACE, mpeg12->workspace_vaddr,
-+ mpeg12->workspace_paddr);
-+free_mpeg12:
-+ kfree(mpeg12);
-+
-+ return ret;
-+}
-+
-+static int codec_mpeg12_stop(struct amvdec_session *sess)
-+{
-+ struct codec_mpeg12 *mpeg12 = sess->priv;
-+ struct amvdec_core *core = sess->core;
-+
-+ if (mpeg12->workspace_vaddr)
-+ dma_free_coherent(core->dev, SIZE_WORKSPACE,
-+ mpeg12->workspace_vaddr,
-+ mpeg12->workspace_paddr);
-+
-+ return 0;
-+}
-+
-+static void codec_mpeg12_update_dar(struct amvdec_session *sess)
-+{
-+ struct amvdec_core *core = sess->core;
-+ u32 seq = amvdec_read_dos(core, MREG_SEQ_INFO);
-+ u32 ar = seq & MPEG2_SEQ_DAR_MASK;
-+
-+ switch (ar) {
-+ case MPEG2_DAR_4_3:
-+ amvdec_set_par_from_dar(sess, 4, 3);
-+ break;
-+ case MPEG2_DAR_16_9:
-+ amvdec_set_par_from_dar(sess, 16, 9);
-+ break;
-+ case MPEG2_DAR_221_100:
-+ amvdec_set_par_from_dar(sess, 221, 100);
-+ break;
-+ default:
-+ sess->pixelaspect.numerator = 1;
-+ sess->pixelaspect.denominator = 1;
-+ break;
-+ };
-+}
-+
-+static irqreturn_t codec_mpeg12_threaded_isr(struct amvdec_session *sess)
-+{
-+ struct amvdec_core *core = sess->core;
-+ u32 reg;
-+ u32 pic_info;
-+ u32 is_progressive;
-+ u32 buffer_index;
-+ u32 field = V4L2_FIELD_NONE;
-+ u32 offset;
-+
-+ amvdec_write_dos(core, ASSIST_MBOX1_CLR_REG, 1);
-+ reg = amvdec_read_dos(core, MREG_FATAL_ERROR);
-+ if (reg == 1) {
-+ dev_err(core->dev, "MPEG1/2 fatal error\n");
-+ amvdec_abort(sess);
-+ return IRQ_HANDLED;
-+ }
-+
-+ reg = amvdec_read_dos(core, MREG_BUFFEROUT);
-+ if (!reg)
-+ return IRQ_HANDLED;
-+
-+ /* Unclear what this means */
-+ if ((reg & GENMASK(23, 17)) == GENMASK(23, 17))
-+ goto end;
-+
-+ pic_info = amvdec_read_dos(core, MREG_PIC_INFO);
-+ is_progressive = pic_info & PICINFO_PROG;
-+
-+ if (!is_progressive)
-+ field = (pic_info & PICINFO_TOP_FIRST) ?
-+ V4L2_FIELD_INTERLACED_TB :
-+ V4L2_FIELD_INTERLACED_BT;
-+
-+ codec_mpeg12_update_dar(sess);
-+ buffer_index = ((reg & 0xf) - 1) & 7;
-+ offset = amvdec_read_dos(core, MREG_FRAME_OFFSET);
-+ amvdec_dst_buf_done_idx(sess, buffer_index, offset, field);
-+
-+end:
-+ amvdec_write_dos(core, MREG_BUFFEROUT, 0);
-+ return IRQ_HANDLED;
-+}
-+
-+static irqreturn_t codec_mpeg12_isr(struct amvdec_session *sess)
-+{
-+ return IRQ_WAKE_THREAD;
-+}
-+
-+struct amvdec_codec_ops codec_mpeg12_ops = {
-+ .start = codec_mpeg12_start,
-+ .stop = codec_mpeg12_stop,
-+ .isr = codec_mpeg12_isr,
-+ .threaded_isr = codec_mpeg12_threaded_isr,
-+ .can_recycle = codec_mpeg12_can_recycle,
-+ .recycle = codec_mpeg12_recycle,
-+ .eos_sequence = codec_mpeg12_eos_sequence,
-+};
-diff --git a/drivers/media/platform/meson/vdec/codec_mpeg12.h b/drivers/media/platform/meson/vdec/codec_mpeg12.h
-new file mode 100644
-index 0000000..43cab5f
---- /dev/null
-+++ b/drivers/media/platform/meson/vdec/codec_mpeg12.h
-@@ -0,0 +1,14 @@
-+/* SPDX-License-Identifier: GPL-2.0+ */
-+/*
-+ * Copyright (C) 2018 BayLibre, SAS
-+ * Author: Maxime Jourdan <mjourdan@baylibre.com>
-+ */
-+
-+#ifndef __MESON_VDEC_CODEC_MPEG12_H_
-+#define __MESON_VDEC_CODEC_MPEG12_H_
-+
-+#include "vdec.h"
-+
-+extern struct amvdec_codec_ops codec_mpeg12_ops;
-+
-+#endif
-diff --git a/drivers/media/platform/meson/vdec/dos_regs.h b/drivers/media/platform/meson/vdec/dos_regs.h
-new file mode 100644
-index 0000000..abd8105
---- /dev/null
-+++ b/drivers/media/platform/meson/vdec/dos_regs.h
-@@ -0,0 +1,98 @@
-+/* SPDX-License-Identifier: GPL-2.0+ */
-+/*
-+ * Copyright (C) 2018 BayLibre, SAS
-+ * Author: Maxime Jourdan <mjourdan@baylibre.com>
-+ */
-+
-+#ifndef __MESON_VDEC_DOS_REGS_H_
-+#define __MESON_VDEC_DOS_REGS_H_
-+
-+/* DOS registers */
-+#define VDEC_ASSIST_AMR1_INT8 0x00b4
-+
-+#define ASSIST_MBOX1_CLR_REG 0x01d4
-+#define ASSIST_MBOX1_MASK 0x01d8
-+
-+#define MPSR 0x0c04
-+#define MCPU_INTR_MSK 0x0c10
-+#define CPSR 0x0c84
-+
-+#define IMEM_DMA_CTRL 0x0d00
-+#define IMEM_DMA_ADR 0x0d04
-+#define IMEM_DMA_COUNT 0x0d08
-+#define LMEM_DMA_CTRL 0x0d40
-+
-+#define MC_STATUS0 0x2424
-+#define MC_CTRL1 0x242c
-+
-+#define PSCALE_RST 0x2440
-+#define PSCALE_CTRL 0x2444
-+#define PSCALE_BMEM_ADDR 0x247c
-+#define PSCALE_BMEM_DAT 0x2480
-+
-+#define DBLK_CTRL 0x2544
-+#define DBLK_STATUS 0x254c
-+
-+#define GCLK_EN 0x260c
-+#define MDEC_PIC_DC_CTRL 0x2638
-+#define MDEC_PIC_DC_STATUS 0x263c
-+#define ANC0_CANVAS_ADDR 0x2640
-+#define MDEC_PIC_DC_THRESH 0x26e0
-+
-+/* Firmware interface registers */
-+#define AV_SCRATCH_0 0x2700
-+#define AV_SCRATCH_1 0x2704
-+#define AV_SCRATCH_2 0x2708
-+#define AV_SCRATCH_3 0x270c
-+#define AV_SCRATCH_4 0x2710
-+#define AV_SCRATCH_5 0x2714
-+#define AV_SCRATCH_6 0x2718
-+#define AV_SCRATCH_7 0x271c
-+#define AV_SCRATCH_8 0x2720
-+#define AV_SCRATCH_9 0x2724
-+#define AV_SCRATCH_A 0x2728
-+#define AV_SCRATCH_B 0x272c
-+#define AV_SCRATCH_C 0x2730
-+#define AV_SCRATCH_D 0x2734
-+#define AV_SCRATCH_E 0x2738
-+#define AV_SCRATCH_F 0x273c
-+#define AV_SCRATCH_G 0x2740
-+#define AV_SCRATCH_H 0x2744
-+#define AV_SCRATCH_I 0x2748
-+#define AV_SCRATCH_J 0x274c
-+#define AV_SCRATCH_K 0x2750
-+#define AV_SCRATCH_L 0x2754
-+
-+#define MPEG1_2_REG 0x3004
-+#define PIC_HEAD_INFO 0x300c
-+#define POWER_CTL_VLD 0x3020
-+#define M4_CONTROL_REG 0x30a4
-+
-+/* Stream Buffer (stbuf) regs */
-+#define VLD_MEM_VIFIFO_START_PTR 0x3100
-+#define VLD_MEM_VIFIFO_CURR_PTR 0x3104
-+#define VLD_MEM_VIFIFO_END_PTR 0x3108
-+#define VLD_MEM_VIFIFO_CONTROL 0x3110
-+ #define MEM_FIFO_CNT_BIT 16
-+ #define MEM_FILL_ON_LEVEL BIT(10)
-+ #define MEM_CTRL_EMPTY_EN BIT(2)
-+ #define MEM_CTRL_FILL_EN BIT(1)
-+#define VLD_MEM_VIFIFO_WP 0x3114
-+#define VLD_MEM_VIFIFO_RP 0x3118
-+#define VLD_MEM_VIFIFO_LEVEL 0x311c
-+#define VLD_MEM_VIFIFO_BUF_CNTL 0x3120
-+ #define MEM_BUFCTRL_MANUAL BIT(1)
-+#define VLD_MEM_VIFIFO_WRAP_COUNT 0x3144
-+
-+#define DCAC_DMA_CTRL 0x3848
-+
-+#define DOS_SW_RESET0 0xfc00
-+#define DOS_GCLK_EN0 0xfc04
-+#define DOS_GEN_CTRL0 0xfc08
-+#define DOS_MEM_PD_VDEC 0xfcc0
-+#define DOS_MEM_PD_HEVC 0xfccc
-+#define DOS_SW_RESET3 0xfcd0
-+#define DOS_GCLK_EN3 0xfcd4
-+#define DOS_VDEC_MCRCC_STALL_CTRL 0xfd00
-+
-+#endif
-diff --git a/drivers/media/platform/meson/vdec/esparser.c b/drivers/media/platform/meson/vdec/esparser.c
-new file mode 100644
-index 0000000..9498812
---- /dev/null
-+++ b/drivers/media/platform/meson/vdec/esparser.c
-@@ -0,0 +1,322 @@
-+// SPDX-License-Identifier: GPL-2.0+
-+/*
-+ * Copyright (C) 2018 BayLibre, SAS
-+ * Author: Maxime Jourdan <mjourdan@baylibre.com>
-+ *
-+ * The Elementary Stream Parser is a HW bitstream parser.
-+ * It reads bitstream buffers and feeds them to the VIFIFO
-+ */
-+
-+#include <linux/init.h>
-+#include <linux/ioctl.h>
-+#include <linux/list.h>
-+#include <linux/module.h>
-+#include <linux/of_device.h>
-+#include <linux/reset.h>
-+#include <media/videobuf2-dma-contig.h>
-+#include <media/v4l2-mem2mem.h>
-+
-+#include "dos_regs.h"
-+#include "esparser.h"
-+#include "vdec_helpers.h"
-+
-+/* PARSER REGS (CBUS) */
-+#define PARSER_CONTROL 0x00
-+ #define ES_PACK_SIZE_BIT 8
-+ #define ES_WRITE BIT(5)
-+ #define ES_SEARCH BIT(1)
-+ #define ES_PARSER_START BIT(0)
-+#define PARSER_FETCH_ADDR 0x4
-+#define PARSER_FETCH_CMD 0x8
-+#define PARSER_CONFIG 0x14
-+ #define PS_CFG_MAX_FETCH_CYCLE_BIT 0
-+ #define PS_CFG_STARTCODE_WID_24_BIT 10
-+ #define PS_CFG_MAX_ES_WR_CYCLE_BIT 12
-+ #define PS_CFG_PFIFO_EMPTY_CNT_BIT 16
-+#define PFIFO_WR_PTR 0x18
-+#define PFIFO_RD_PTR 0x1c
-+#define PARSER_SEARCH_PATTERN 0x24
-+ #define ES_START_CODE_PATTERN 0x00000100
-+#define PARSER_SEARCH_MASK 0x28
-+ #define ES_START_CODE_MASK 0xffffff00
-+ #define FETCH_ENDIAN_BIT 27
-+#define PARSER_INT_ENABLE 0x2c
-+ #define PARSER_INT_HOST_EN_BIT 8
-+#define PARSER_INT_STATUS 0x30
-+ #define PARSER_INTSTAT_SC_FOUND 1
-+#define PARSER_ES_CONTROL 0x5c
-+#define PARSER_VIDEO_START_PTR 0x80
-+#define PARSER_VIDEO_END_PTR 0x84
-+#define PARSER_VIDEO_WP 0x88
-+#define PARSER_VIDEO_HOLE 0x90
-+
-+#define SEARCH_PATTERN_LEN 512
-+
-+static DECLARE_WAIT_QUEUE_HEAD(wq);
-+static int search_done;
-+
-+static irqreturn_t esparser_isr(int irq, void *dev)
-+{
-+ int int_status;
-+ struct amvdec_core *core = dev;
-+
-+ int_status = amvdec_read_parser(core, PARSER_INT_STATUS);
-+ amvdec_write_parser(core, PARSER_INT_STATUS, int_status);
-+
-+ if (int_status & PARSER_INTSTAT_SC_FOUND) {
-+ amvdec_write_parser(core, PFIFO_RD_PTR, 0);
-+ amvdec_write_parser(core, PFIFO_WR_PTR, 0);
-+ search_done = 1;
-+ wake_up_interruptible(&wq);
-+ }
-+
-+ return IRQ_HANDLED;
-+}
-+
-+/* Pad the packet to at least 4KiB bytes otherwise the VDEC unit won't trigger
-+ * ISRs.
-+ * Also append a start code 000001ff at the end to trigger
-+ * the ESPARSER interrupt.
-+ */
-+static u32 esparser_pad_start_code(struct vb2_buffer *vb)
-+{
-+ u32 payload_size = vb2_get_plane_payload(vb, 0);
-+ u32 pad_size = 0;
-+ u8 *vaddr = vb2_plane_vaddr(vb, 0) + payload_size;
-+
-+ if (payload_size < ESPARSER_MIN_PACKET_SIZE) {
-+ pad_size = ESPARSER_MIN_PACKET_SIZE - payload_size;
-+ memset(vaddr, 0, pad_size);
-+ }
-+
-+ memset(vaddr + pad_size, 0, SEARCH_PATTERN_LEN);
-+ vaddr[pad_size] = 0x00;
-+ vaddr[pad_size + 1] = 0x00;
-+ vaddr[pad_size + 2] = 0x01;
-+ vaddr[pad_size + 3] = 0xff;
-+
-+ return pad_size;
-+}
-+
-+static int
-+esparser_write_data(struct amvdec_core *core, dma_addr_t addr, u32 size)
-+{
-+ amvdec_write_parser(core, PFIFO_RD_PTR, 0);
-+ amvdec_write_parser(core, PFIFO_WR_PTR, 0);
-+ amvdec_write_parser(core, PARSER_CONTROL,
-+ ES_WRITE |
-+ ES_PARSER_START |
-+ ES_SEARCH |
-+ (size << ES_PACK_SIZE_BIT));
-+
-+ amvdec_write_parser(core, PARSER_FETCH_ADDR, addr);
-+ amvdec_write_parser(core, PARSER_FETCH_CMD,
-+ (7 << FETCH_ENDIAN_BIT) |
-+ (size + SEARCH_PATTERN_LEN));
-+
-+ search_done = 0;
-+ return wait_event_interruptible_timeout(wq, search_done, (HZ / 5));
-+}
-+
-+static u32 esparser_vififo_get_free_space(struct amvdec_session *sess)
-+{
-+ u32 vififo_usage;
-+ struct amvdec_ops *vdec_ops = sess->fmt_out->vdec_ops;
-+ struct amvdec_core *core = sess->core;
-+
-+ vififo_usage = vdec_ops->vififo_level(sess);
-+ vififo_usage += amvdec_read_parser(core, PARSER_VIDEO_HOLE);
-+ vififo_usage += (6 * SZ_1K); // 6 KiB internal fifo
-+
-+ if (vififo_usage > sess->vififo_size) {
-+ dev_warn(sess->core->dev,
-+ "VIFIFO usage (%u) > VIFIFO size (%u)\n",
-+ vififo_usage, sess->vififo_size);
-+ return 0;
-+ }
-+
-+ return sess->vififo_size - vififo_usage;
-+}
-+
-+int esparser_queue_eos(struct amvdec_core *core, const u8 *data, u32 len)
-+{
-+ struct device *dev = core->dev;
-+ void *eos_vaddr;
-+ dma_addr_t eos_paddr;
-+ int ret;
-+
-+ eos_vaddr = dma_alloc_coherent(dev,
-+ len + SEARCH_PATTERN_LEN,
-+ &eos_paddr, GFP_KERNEL);
-+ if (!eos_vaddr)
-+ return -ENOMEM;
-+
-+ memset(eos_vaddr, 0, len + SEARCH_PATTERN_LEN);
-+ memcpy(eos_vaddr, data, len);
-+ ret = esparser_write_data(core, eos_paddr, len);
-+ dma_free_coherent(dev, len + SEARCH_PATTERN_LEN,
-+ eos_vaddr, eos_paddr);
-+
-+ return ret;
-+}
-+
-+static u32 esparser_get_offset(struct amvdec_session *sess)
-+{
-+ struct amvdec_core *core = sess->core;
-+ u32 offset = amvdec_read_parser(core, PARSER_VIDEO_WP) -
-+ sess->vififo_paddr;
-+
-+ if (offset < sess->last_offset)
-+ sess->wrap_count++;
-+
-+ sess->last_offset = offset;
-+ offset += (sess->wrap_count * sess->vififo_size);
-+
-+ return offset;
-+}
-+
-+static int
-+esparser_queue(struct amvdec_session *sess, struct vb2_v4l2_buffer *vbuf)
-+{
-+ int ret;
-+ struct vb2_buffer *vb = &vbuf->vb2_buf;
-+ struct amvdec_core *core = sess->core;
-+ struct amvdec_codec_ops *codec_ops = sess->fmt_out->codec_ops;
-+ u32 num_dst_bufs = 0;
-+ u32 payload_size = vb2_get_plane_payload(vb, 0);
-+ dma_addr_t phy = vb2_dma_contig_plane_dma_addr(vb, 0);
-+ u32 offset;
-+ u32 pad_size;
-+
-+ if (codec_ops->num_pending_bufs)
-+ num_dst_bufs = codec_ops->num_pending_bufs(sess);
-+
-+ num_dst_bufs += v4l2_m2m_num_dst_bufs_ready(sess->m2m_ctx);
-+
-+ if (esparser_vififo_get_free_space(sess) < payload_size ||
-+ atomic_read(&sess->esparser_queued_bufs) >= num_dst_bufs)
-+ return -EAGAIN;
-+
-+ v4l2_m2m_src_buf_remove_by_buf(sess->m2m_ctx, vbuf);
-+
-+ offset = esparser_get_offset(sess);
-+
-+ amvdec_add_ts_reorder(sess, vb->timestamp, offset);
-+ dev_dbg(core->dev, "esparser: ts = %llu pld_size = %u offset = %08X\n",
-+ vb->timestamp, payload_size, offset);
-+
-+ pad_size = esparser_pad_start_code(vb);
-+ ret = esparser_write_data(core, phy, payload_size + pad_size);
-+
-+ if (ret <= 0) {
-+ dev_warn(core->dev, "esparser: input parsing error\n");
-+ amvdec_remove_ts(sess, vb->timestamp);
-+ v4l2_m2m_buf_done(vbuf, VB2_BUF_STATE_ERROR);
-+ amvdec_write_parser(core, PARSER_FETCH_CMD, 0);
-+
-+ return 0;
-+ }
-+
-+ /* We need to wait until we parse the first keyframe.
-+ * All buffers prior to the first keyframe must be dropped.
-+ */
-+ if (!sess->keyframe_found)
-+ usleep_range(1000, 2000);
-+
-+ if (sess->keyframe_found)
-+ atomic_inc(&sess->esparser_queued_bufs);
-+ else
-+ amvdec_remove_ts(sess, vb->timestamp);
-+
-+ vbuf->flags = 0;
-+ vbuf->field = V4L2_FIELD_NONE;
-+ v4l2_m2m_buf_done(vbuf, VB2_BUF_STATE_DONE);
-+
-+ return 0;
-+}
-+
-+void esparser_queue_all_src(struct work_struct *work)
-+{
-+ struct v4l2_m2m_buffer *buf, *n;
-+ struct amvdec_session *sess =
-+ container_of(work, struct amvdec_session, esparser_queue_work);
-+
-+ mutex_lock(&sess->lock);
-+ v4l2_m2m_for_each_src_buf_safe(sess->m2m_ctx, buf, n) {
-+ if (esparser_queue(sess, &buf->vb) < 0)
-+ break;
-+ }
-+ mutex_unlock(&sess->lock);
-+}
-+
-+int esparser_power_up(struct amvdec_session *sess)
-+{
-+ struct amvdec_core *core = sess->core;
-+ struct amvdec_ops *vdec_ops = sess->fmt_out->vdec_ops;
-+
-+ reset_control_reset(core->esparser_reset);
-+ amvdec_write_parser(core, PARSER_CONFIG,
-+ (10 << PS_CFG_PFIFO_EMPTY_CNT_BIT) |
-+ (1 << PS_CFG_MAX_ES_WR_CYCLE_BIT) |
-+ (16 << PS_CFG_MAX_FETCH_CYCLE_BIT));
-+
-+ amvdec_write_parser(core, PFIFO_RD_PTR, 0);
-+ amvdec_write_parser(core, PFIFO_WR_PTR, 0);
-+
-+ amvdec_write_parser(core, PARSER_SEARCH_PATTERN,
-+ ES_START_CODE_PATTERN);
-+ amvdec_write_parser(core, PARSER_SEARCH_MASK, ES_START_CODE_MASK);
-+
-+ amvdec_write_parser(core, PARSER_CONFIG,
-+ (10 << PS_CFG_PFIFO_EMPTY_CNT_BIT) |
-+ (1 << PS_CFG_MAX_ES_WR_CYCLE_BIT) |
-+ (16 << PS_CFG_MAX_FETCH_CYCLE_BIT) |
-+ (2 << PS_CFG_STARTCODE_WID_24_BIT));
-+
-+ amvdec_write_parser(core, PARSER_CONTROL,
-+ (ES_SEARCH | ES_PARSER_START));
-+
-+ amvdec_write_parser(core, PARSER_VIDEO_START_PTR, sess->vififo_paddr);
-+ amvdec_write_parser(core, PARSER_VIDEO_END_PTR,
-+ sess->vififo_paddr + sess->vififo_size - 8);
-+ amvdec_write_parser(core, PARSER_ES_CONTROL,
-+ amvdec_read_parser(core, PARSER_ES_CONTROL) & ~1);
-+
-+ if (vdec_ops->conf_esparser)
-+ vdec_ops->conf_esparser(sess);
-+
-+ amvdec_write_parser(core, PARSER_INT_STATUS, 0xffff);
-+ amvdec_write_parser(core, PARSER_INT_ENABLE,
-+ BIT(PARSER_INT_HOST_EN_BIT));
-+
-+ return 0;
-+}
-+
-+int esparser_init(struct platform_device *pdev, struct amvdec_core *core)
-+{
-+ struct device *dev = &pdev->dev;
-+ int ret;
-+ int irq;
-+
-+ irq = platform_get_irq_byname(pdev, "esparser");
-+ if (irq < 0) {
-+ dev_err(dev, "Failed getting ESPARSER IRQ from dtb\n");
-+ return irq;
-+ }
-+
-+ ret = devm_request_irq(dev, irq, esparser_isr, IRQF_SHARED,
-+ "esparserirq", core);
-+ if (ret) {
-+ dev_err(dev, "Failed requesting ESPARSER IRQ\n");
-+ return ret;
-+ }
-+
-+ core->esparser_reset =
-+ devm_reset_control_get_exclusive(dev, "esparser");
-+ if (IS_ERR(core->esparser_reset)) {
-+ dev_err(dev, "Failed to get esparser_reset\n");
-+ return PTR_ERR(core->esparser_reset);
-+ }
-+
-+ return 0;
-+}
-diff --git a/drivers/media/platform/meson/vdec/esparser.h b/drivers/media/platform/meson/vdec/esparser.h
-new file mode 100644
-index 0000000..ff51fe7
---- /dev/null
-+++ b/drivers/media/platform/meson/vdec/esparser.h
-@@ -0,0 +1,32 @@
-+/* SPDX-License-Identifier: GPL-2.0+ */
-+/*
-+ * Copyright (C) 2018 BayLibre, SAS
-+ * Author: Maxime Jourdan <mjourdan@baylibre.com>
-+ */
-+
-+#ifndef __MESON_VDEC_ESPARSER_H_
-+#define __MESON_VDEC_ESPARSER_H_
-+
-+#include <linux/platform_device.h>
-+
-+#include "vdec.h"
-+
-+int esparser_init(struct platform_device *pdev, struct amvdec_core *core);
-+int esparser_power_up(struct amvdec_session *sess);
-+
-+/**
-+ * esparser_queue_eos() - write End Of Stream sequence to the ESPARSER
-+ *
-+ * @core vdec core struct
-+ */
-+int esparser_queue_eos(struct amvdec_core *core, const u8 *data, u32 len);
-+
-+/**
-+ * esparser_queue_all_src() - work handler that writes as many src buffers
-+ * as possible to the ESPARSER
-+ */
-+void esparser_queue_all_src(struct work_struct *work);
-+
-+#define ESPARSER_MIN_PACKET_SIZE SZ_4K
-+
-+#endif
-diff --git a/drivers/media/platform/meson/vdec/vdec.c b/drivers/media/platform/meson/vdec/vdec.c
-new file mode 100644
-index 0000000..d8db52c
---- /dev/null
-+++ b/drivers/media/platform/meson/vdec/vdec.c
-@@ -0,0 +1,1034 @@
-+// SPDX-License-Identifier: GPL-2.0+
-+/*
-+ * Copyright (C) 2018 BayLibre, SAS
-+ * Author: Maxime Jourdan <mjourdan@baylibre.com>
-+ */
-+
-+#include <linux/of_device.h>
-+#include <linux/clk.h>
-+#include <linux/io.h>
-+#include <linux/module.h>
-+#include <linux/platform_device.h>
-+#include <linux/mfd/syscon.h>
-+#include <linux/slab.h>
-+#include <media/v4l2-ioctl.h>
-+#include <media/v4l2-event.h>
-+#include <media/v4l2-ctrls.h>
-+#include <media/v4l2-mem2mem.h>
-+#include <media/v4l2-dev.h>
-+#include <media/videobuf2-dma-contig.h>
-+
-+#include "vdec.h"
-+#include "esparser.h"
-+#include "vdec_helpers.h"
-+
-+struct dummy_buf {
-+ struct vb2_v4l2_buffer vb;
-+ struct list_head list;
-+};
-+
-+/* 16 MiB for parsed bitstream swap exchange */
-+#define SIZE_VIFIFO SZ_16M
-+
-+static u32 get_output_size(u32 width, u32 height)
-+{
-+ return ALIGN(width * height, SZ_64K);
-+}
-+
-+u32 amvdec_get_output_size(struct amvdec_session *sess)
-+{
-+ return get_output_size(sess->width, sess->height);
-+}
-+EXPORT_SYMBOL_GPL(amvdec_get_output_size);
-+
-+static int vdec_codec_needs_recycle(struct amvdec_session *sess)
-+{
-+ struct amvdec_codec_ops *codec_ops = sess->fmt_out->codec_ops;
-+
-+ return codec_ops->can_recycle && codec_ops->recycle;
-+}
-+
-+static int vdec_recycle_thread(void *data)
-+{
-+ struct amvdec_session *sess = data;
-+ struct amvdec_core *core = sess->core;
-+ struct amvdec_codec_ops *codec_ops = sess->fmt_out->codec_ops;
-+ struct amvdec_buffer *tmp, *n;
-+
-+ while (!kthread_should_stop()) {
-+ mutex_lock(&sess->bufs_recycle_lock);
-+ list_for_each_entry_safe(tmp, n, &sess->bufs_recycle, list) {
-+ if (!codec_ops->can_recycle(core))
-+ break;
-+
-+ codec_ops->recycle(core, tmp->vb->index);
-+ list_del(&tmp->list);
-+ kfree(tmp);
-+ }
-+ mutex_unlock(&sess->bufs_recycle_lock);
-+
-+ usleep_range(5000, 10000);
-+ }
-+
-+ return 0;
-+}
-+
-+static int vdec_poweron(struct amvdec_session *sess)
-+{
-+ int ret;
-+ struct amvdec_ops *vdec_ops = sess->fmt_out->vdec_ops;
-+
-+ ret = clk_prepare_enable(sess->core->dos_parser_clk);
-+ if (ret)
-+ return ret;
-+
-+ ret = clk_prepare_enable(sess->core->dos_clk);
-+ if (ret)
-+ goto disable_dos_parser;
-+
-+ ret = vdec_ops->start(sess);
-+ if (ret)
-+ goto disable_dos;
-+
-+ esparser_power_up(sess);
-+
-+ return 0;
-+
-+disable_dos:
-+ clk_disable_unprepare(sess->core->dos_clk);
-+disable_dos_parser:
-+ clk_disable_unprepare(sess->core->dos_parser_clk);
-+
-+ return ret;
-+}
-+
-+static void vdec_wait_inactive(struct amvdec_session *sess)
-+{
-+ /* We consider 50ms with no IRQ to be inactive. */
-+ while (time_is_after_jiffies64(sess->last_irq_jiffies +
-+ msecs_to_jiffies(50)))
-+ msleep(25);
-+}
-+
-+static void vdec_poweroff(struct amvdec_session *sess)
-+{
-+ struct amvdec_ops *vdec_ops = sess->fmt_out->vdec_ops;
-+ struct amvdec_codec_ops *codec_ops = sess->fmt_out->codec_ops;
-+
-+ vdec_wait_inactive(sess);
-+ if (codec_ops->drain)
-+ codec_ops->drain(sess);
-+
-+ vdec_ops->stop(sess);
-+ clk_disable_unprepare(sess->core->dos_clk);
-+ clk_disable_unprepare(sess->core->dos_parser_clk);
-+}
-+
-+static void
-+vdec_queue_recycle(struct amvdec_session *sess, struct vb2_buffer *vb)
-+{
-+ struct amvdec_buffer *new_buf;
-+
-+ new_buf = kmalloc(sizeof(*new_buf), GFP_KERNEL);
-+ new_buf->vb = vb;
-+
-+ mutex_lock(&sess->bufs_recycle_lock);
-+ list_add_tail(&new_buf->list, &sess->bufs_recycle);
-+ mutex_unlock(&sess->bufs_recycle_lock);
-+}
-+
-+static void vdec_m2m_device_run(void *priv)
-+{
-+ struct amvdec_session *sess = priv;
-+
-+ schedule_work(&sess->esparser_queue_work);
-+}
-+
-+static void vdec_m2m_job_abort(void *priv)
-+{
-+ struct amvdec_session *sess = priv;
-+
-+ v4l2_m2m_job_finish(sess->m2m_dev, sess->m2m_ctx);
-+}
-+
-+static const struct v4l2_m2m_ops vdec_m2m_ops = {
-+ .device_run = vdec_m2m_device_run,
-+ .job_abort = vdec_m2m_job_abort,
-+};
-+
-+static int vdec_queue_setup(struct vb2_queue *q,
-+ unsigned int *num_buffers, unsigned int *num_planes,
-+ unsigned int sizes[], struct device *alloc_devs[])
-+{
-+ struct amvdec_session *sess = vb2_get_drv_priv(q);
-+ const struct amvdec_format *fmt_out = sess->fmt_out;
-+ u32 output_size = amvdec_get_output_size(sess);
-+ u32 buffers_total;
-+
-+ if (*num_planes) {
-+ switch (q->type) {
-+ case V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE:
-+ if (*num_planes != 1 || sizes[0] < output_size)
-+ return -EINVAL;
-+ break;
-+ case V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE:
-+ switch (sess->pixfmt_cap) {
-+ case V4L2_PIX_FMT_NV12M:
-+ if (*num_planes != 2 ||
-+ sizes[0] < output_size ||
-+ sizes[1] < output_size / 2)
-+ return -EINVAL;
-+ break;
-+ case V4L2_PIX_FMT_YUV420M:
-+ if (*num_planes != 3 ||
-+ sizes[0] < output_size ||
-+ sizes[1] < output_size / 4 ||
-+ sizes[2] < output_size / 4)
-+ return -EINVAL;
-+ break;
-+ default:
-+ return -EINVAL;
-+ }
-+ break;
-+ }
-+
-+ return 0;
-+ }
-+
-+ switch (q->type) {
-+ case V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE:
-+ sizes[0] = amvdec_get_output_size(sess);
-+ *num_planes = 1;
-+ break;
-+ case V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE:
-+ switch (sess->pixfmt_cap) {
-+ case V4L2_PIX_FMT_NV12M:
-+ sizes[0] = output_size;
-+ sizes[1] = output_size / 2;
-+ *num_planes = 2;
-+ break;
-+ case V4L2_PIX_FMT_YUV420M:
-+ sizes[0] = output_size;
-+ sizes[1] = output_size / 4;
-+ sizes[2] = output_size / 4;
-+ *num_planes = 3;
-+ break;
-+ default:
-+ return -EINVAL;
-+ }
-+
-+ buffers_total = q->num_buffers + *num_buffers;
-+
-+ if (buffers_total < fmt_out->min_buffers)
-+ *num_buffers = fmt_out->min_buffers - q->num_buffers;
-+ if (buffers_total > fmt_out->max_buffers)
-+ *num_buffers = fmt_out->max_buffers - q->num_buffers;
-+
-+ /* We need to program the complete CAPTURE buffer list
-+ * in registers during start_streaming, and the firmwares
-+ * are free to choose any of them to write frames to. As such,
-+ * we need all of them to be queued into the driver
-+ */
-+ q->min_buffers_needed = q->num_buffers + *num_buffers;
-+ break;
-+ default:
-+ return -EINVAL;
-+ }
-+
-+ return 0;
-+}
-+
-+static void vdec_vb2_buf_queue(struct vb2_buffer *vb)
-+{
-+ struct vb2_v4l2_buffer *vbuf = to_vb2_v4l2_buffer(vb);
-+ struct amvdec_session *sess = vb2_get_drv_priv(vb->vb2_queue);
-+ struct v4l2_m2m_ctx *m2m_ctx = sess->m2m_ctx;
-+
-+ v4l2_m2m_buf_queue(m2m_ctx, vbuf);
-+
-+ if (!sess->streamon_out || !sess->streamon_cap)
-+ return;
-+
-+ if (vb->type == V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE &&
-+ vdec_codec_needs_recycle(sess))
-+ vdec_queue_recycle(sess, vb);
-+
-+ schedule_work(&sess->esparser_queue_work);
-+}
-+
-+static int vdec_start_streaming(struct vb2_queue *q, unsigned int count)
-+{
-+ struct amvdec_session *sess = vb2_get_drv_priv(q);
-+ struct amvdec_core *core = sess->core;
-+ struct vb2_v4l2_buffer *buf;
-+ int ret;
-+
-+ if (core->cur_sess && core->cur_sess != sess) {
-+ ret = -EBUSY;
-+ goto bufs_done;
-+ }
-+
-+ if (q->type == V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE)
-+ sess->streamon_out = 1;
-+ else
-+ sess->streamon_cap = 1;
-+
-+ if (!sess->streamon_out || !sess->streamon_cap)
-+ return 0;
-+
-+ sess->vififo_size = SIZE_VIFIFO;
-+ sess->vififo_vaddr =
-+ dma_alloc_coherent(sess->core->dev, sess->vififo_size,
-+ &sess->vififo_paddr, GFP_KERNEL);
-+ if (!sess->vififo_vaddr) {
-+ dev_err(sess->core->dev, "Failed to request VIFIFO buffer\n");
-+ ret = -ENOMEM;
-+ goto bufs_done;
-+ }
-+
-+ sess->should_stop = 0;
-+ sess->keyframe_found = 0;
-+ sess->last_offset = 0;
-+ sess->wrap_count = 0;
-+ sess->pixelaspect.numerator = 1;
-+ sess->pixelaspect.denominator = 1;
-+ atomic_set(&sess->esparser_queued_bufs, 0);
-+
-+ ret = vdec_poweron(sess);
-+ if (ret)
-+ goto vififo_free;
-+
-+ sess->sequence_cap = 0;
-+ if (vdec_codec_needs_recycle(sess))
-+ sess->recycle_thread = kthread_run(vdec_recycle_thread, sess,
-+ "vdec_recycle");
-+
-+ core->cur_sess = sess;
-+
-+ return 0;
-+
-+vififo_free:
-+ dma_free_coherent(sess->core->dev, sess->vififo_size,
-+ sess->vififo_vaddr, sess->vififo_paddr);
-+bufs_done:
-+ while ((buf = v4l2_m2m_src_buf_remove(sess->m2m_ctx)))
-+ v4l2_m2m_buf_done(buf, VB2_BUF_STATE_QUEUED);
-+ while ((buf = v4l2_m2m_dst_buf_remove(sess->m2m_ctx)))
-+ v4l2_m2m_buf_done(buf, VB2_BUF_STATE_QUEUED);
-+
-+ if (q->type == V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE)
-+ sess->streamon_out = 0;
-+ else
-+ sess->streamon_cap = 0;
-+
-+ return ret;
-+}
-+
-+static void vdec_free_canvas(struct amvdec_session *sess)
-+{
-+ int i;
-+
-+ for (i = 0; i < sess->canvas_num; ++i)
-+ meson_canvas_free(sess->core->canvas, sess->canvas_alloc[i]);
-+
-+ sess->canvas_num = 0;
-+}
-+
-+static void vdec_reset_timestamps(struct amvdec_session *sess)
-+{
-+ struct amvdec_timestamp *tmp, *n;
-+
-+ list_for_each_entry_safe(tmp, n, &sess->timestamps, list) {
-+ list_del(&tmp->list);
-+ kfree(tmp);
-+ }
-+}
-+
-+static void vdec_reset_bufs_recycle(struct amvdec_session *sess)
-+{
-+ struct amvdec_buffer *tmp, *n;
-+
-+ list_for_each_entry_safe(tmp, n, &sess->bufs_recycle, list) {
-+ list_del(&tmp->list);
-+ kfree(tmp);
-+ }
-+}
-+
-+static void vdec_stop_streaming(struct vb2_queue *q)
-+{
-+ struct amvdec_session *sess = vb2_get_drv_priv(q);
-+ struct amvdec_core *core = sess->core;
-+ struct vb2_v4l2_buffer *buf;
-+
-+ if (sess->streamon_out && sess->streamon_cap) {
-+ if (vdec_codec_needs_recycle(sess))
-+ kthread_stop(sess->recycle_thread);
-+
-+ vdec_poweroff(sess);
-+ vdec_free_canvas(sess);
-+ dma_free_coherent(sess->core->dev, sess->vififo_size,
-+ sess->vififo_vaddr, sess->vififo_paddr);
-+ vdec_reset_timestamps(sess);
-+ vdec_reset_bufs_recycle(sess);
-+ kfree(sess->priv);
-+ sess->priv = NULL;
-+ core->cur_sess = NULL;
-+ }
-+
-+ if (q->type == V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE) {
-+ while ((buf = v4l2_m2m_src_buf_remove(sess->m2m_ctx)))
-+ v4l2_m2m_buf_done(buf, VB2_BUF_STATE_ERROR);
-+
-+ sess->streamon_out = 0;
-+ } else {
-+ while ((buf = v4l2_m2m_dst_buf_remove(sess->m2m_ctx)))
-+ v4l2_m2m_buf_done(buf, VB2_BUF_STATE_ERROR);
-+
-+ sess->streamon_cap = 0;
-+ }
-+}
-+
-+static const struct vb2_ops vdec_vb2_ops = {
-+ .queue_setup = vdec_queue_setup,
-+ .start_streaming = vdec_start_streaming,
-+ .stop_streaming = vdec_stop_streaming,
-+ .buf_queue = vdec_vb2_buf_queue,
-+ .wait_prepare = vb2_ops_wait_prepare,
-+ .wait_finish = vb2_ops_wait_finish,
-+};
-+
-+static int
-+vdec_querycap(struct file *file, void *fh, struct v4l2_capability *cap)
-+{
-+ strscpy(cap->driver, "meson-vdec", sizeof(cap->driver));
-+ strscpy(cap->card, "Amlogic Video Decoder", sizeof(cap->card));
-+ strscpy(cap->bus_info, "platform:meson-vdec", sizeof(cap->bus_info));
-+
-+ return 0;
-+}
-+
-+static const struct amvdec_format *
-+find_format(const struct amvdec_format *fmts, u32 size, u32 pixfmt)
-+{
-+ unsigned int i;
-+
-+ for (i = 0; i < size; i++) {
-+ if (fmts[i].pixfmt == pixfmt)
-+ return &fmts[i];
-+ }
-+
-+ return NULL;
-+}
-+
-+static unsigned int
-+vdec_supports_pixfmt_cap(const struct amvdec_format *fmt_out, u32 pixfmt_cap)
-+{
-+ int i;
-+
-+ for (i = 0; fmt_out->pixfmts_cap[i]; i++)
-+ if (fmt_out->pixfmts_cap[i] == pixfmt_cap)
-+ return 1;
-+
-+ return 0;
-+}
-+
-+static const struct amvdec_format *
-+vdec_try_fmt_common(struct amvdec_session *sess, u32 size,
-+ struct v4l2_format *f)
-+{
-+ struct v4l2_pix_format_mplane *pixmp = &f->fmt.pix_mp;
-+ struct v4l2_plane_pix_format *pfmt = pixmp->plane_fmt;
-+ const struct amvdec_format *fmts = sess->core->platform->formats;
-+ const struct amvdec_format *fmt_out;
-+
-+ memset(pfmt[0].reserved, 0, sizeof(pfmt[0].reserved));
-+ memset(pixmp->reserved, 0, sizeof(pixmp->reserved));
-+
-+ if (f->type == V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE) {
-+ fmt_out = find_format(fmts, size, pixmp->pixelformat);
-+ if (!fmt_out) {
-+ pixmp->pixelformat = V4L2_PIX_FMT_MPEG2;
-+ fmt_out = find_format(fmts, size, pixmp->pixelformat);
-+ }
-+
-+ pfmt[0].sizeimage =
-+ get_output_size(pixmp->width, pixmp->height);
-+ pfmt[0].bytesperline = 0;
-+ pixmp->num_planes = 1;
-+ } else if (f->type == V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE) {
-+ fmt_out = sess->fmt_out;
-+ if (!vdec_supports_pixfmt_cap(fmt_out, pixmp->pixelformat))
-+ pixmp->pixelformat = fmt_out->pixfmts_cap[0];
-+
-+ memset(pfmt[1].reserved, 0, sizeof(pfmt[1].reserved));
-+ if (pixmp->pixelformat == V4L2_PIX_FMT_NV12M) {
-+ pfmt[0].sizeimage =
-+ get_output_size(pixmp->width, pixmp->height);
-+ pfmt[0].bytesperline = ALIGN(pixmp->width, 64);
-+
-+ pfmt[1].sizeimage =
-+ get_output_size(pixmp->width, pixmp->height) / 2;
-+ pfmt[1].bytesperline = ALIGN(pixmp->width, 64);
-+ pixmp->num_planes = 2;
-+ } else if (pixmp->pixelformat == V4L2_PIX_FMT_YUV420M) {
-+ pfmt[0].sizeimage =
-+ get_output_size(pixmp->width, pixmp->height);
-+ pfmt[0].bytesperline = ALIGN(pixmp->width, 64);
-+
-+ pfmt[1].sizeimage =
-+ get_output_size(pixmp->width, pixmp->height) / 4;
-+ pfmt[1].bytesperline = ALIGN(pixmp->width, 64) / 2;
-+
-+ pfmt[2].sizeimage =
-+ get_output_size(pixmp->width, pixmp->height) / 4;
-+ pfmt[2].bytesperline = ALIGN(pixmp->width, 64) / 2;
-+ pixmp->num_planes = 3;
-+ }
-+ } else {
-+ return NULL;
-+ }
-+
-+ pixmp->width = clamp(pixmp->width, (u32)256, fmt_out->max_width);
-+ pixmp->height = clamp(pixmp->height, (u32)144, fmt_out->max_height);
-+
-+ if (pixmp->field == V4L2_FIELD_ANY)
-+ pixmp->field = V4L2_FIELD_NONE;
-+
-+ return fmt_out;
-+}
-+
-+static int vdec_try_fmt(struct file *file, void *fh, struct v4l2_format *f)
-+{
-+ struct amvdec_session *sess =
-+ container_of(file->private_data, struct amvdec_session, fh);
-+
-+ vdec_try_fmt_common(sess, sess->core->platform->num_formats, f);
-+
-+ return 0;
-+}
-+
-+static int vdec_g_fmt(struct file *file, void *fh, struct v4l2_format *f)
-+{
-+ struct amvdec_session *sess =
-+ container_of(file->private_data, struct amvdec_session, fh);
-+ struct v4l2_pix_format_mplane *pixmp = &f->fmt.pix_mp;
-+
-+ if (f->type == V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE)
-+ pixmp->pixelformat = sess->pixfmt_cap;
-+ else if (f->type == V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE)
-+ pixmp->pixelformat = sess->fmt_out->pixfmt;
-+
-+ if (f->type == V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE) {
-+ pixmp->width = sess->width;
-+ pixmp->height = sess->height;
-+ pixmp->colorspace = sess->colorspace;
-+ pixmp->ycbcr_enc = sess->ycbcr_enc;
-+ pixmp->quantization = sess->quantization;
-+ pixmp->xfer_func = sess->xfer_func;
-+ } else if (f->type == V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE) {
-+ pixmp->width = sess->width;
-+ pixmp->height = sess->height;
-+ }
-+
-+ vdec_try_fmt_common(sess, sess->core->platform->num_formats, f);
-+
-+ return 0;
-+}
-+
-+static int vdec_s_fmt(struct file *file, void *fh, struct v4l2_format *f)
-+{
-+ struct amvdec_session *sess =
-+ container_of(file->private_data, struct amvdec_session, fh);
-+ struct v4l2_pix_format_mplane *pixmp = &f->fmt.pix_mp;
-+ u32 num_formats = sess->core->platform->num_formats;
-+ const struct amvdec_format *fmt_out;
-+ struct v4l2_pix_format_mplane orig_pixmp;
-+ struct v4l2_format format;
-+ u32 pixfmt_out = 0, pixfmt_cap = 0;
-+
-+ orig_pixmp = *pixmp;
-+
-+ fmt_out = vdec_try_fmt_common(sess, num_formats, f);
-+
-+ if (f->type == V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE) {
-+ pixfmt_out = pixmp->pixelformat;
-+ pixfmt_cap = sess->pixfmt_cap;
-+ } else if (f->type == V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE) {
-+ pixfmt_cap = pixmp->pixelformat;
-+ pixfmt_out = sess->fmt_out->pixfmt;
-+ }
-+
-+ memset(&format, 0, sizeof(format));
-+
-+ format.type = V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE;
-+ format.fmt.pix_mp.pixelformat = pixfmt_out;
-+ format.fmt.pix_mp.width = orig_pixmp.width;
-+ format.fmt.pix_mp.height = orig_pixmp.height;
-+ vdec_try_fmt_common(sess, num_formats, &format);
-+
-+ if (f->type == V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE) {
-+ sess->width = format.fmt.pix_mp.width;
-+ sess->height = format.fmt.pix_mp.height;
-+ sess->colorspace = pixmp->colorspace;
-+ sess->ycbcr_enc = pixmp->ycbcr_enc;
-+ sess->quantization = pixmp->quantization;
-+ sess->xfer_func = pixmp->xfer_func;
-+ }
-+
-+ memset(&format, 0, sizeof(format));
-+
-+ format.type = V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE;
-+ format.fmt.pix_mp.pixelformat = pixfmt_cap;
-+ format.fmt.pix_mp.width = orig_pixmp.width;
-+ format.fmt.pix_mp.height = orig_pixmp.height;
-+ vdec_try_fmt_common(sess, num_formats, &format);
-+
-+ sess->width = format.fmt.pix_mp.width;
-+ sess->height = format.fmt.pix_mp.height;
-+
-+ if (f->type == V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE)
-+ sess->fmt_out = fmt_out;
-+ else if (f->type == V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE)
-+ sess->pixfmt_cap = format.fmt.pix_mp.pixelformat;
-+
-+ return 0;
-+}
-+
-+static int vdec_enum_fmt(struct file *file, void *fh, struct v4l2_fmtdesc *f)
-+{
-+ struct amvdec_session *sess =
-+ container_of(file->private_data, struct amvdec_session, fh);
-+ const struct vdec_platform *platform = sess->core->platform;
-+ const struct amvdec_format *fmt_out;
-+
-+ memset(f->reserved, 0, sizeof(f->reserved));
-+
-+ if (f->type == V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE) {
-+ if (f->index >= platform->num_formats)
-+ return -EINVAL;
-+
-+ fmt_out = &platform->formats[f->index];
-+ f->pixelformat = fmt_out->pixfmt;
-+ } else if (f->type == V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE) {
-+ fmt_out = sess->fmt_out;
-+ if (f->index >= 4 || !fmt_out->pixfmts_cap[f->index])
-+ return -EINVAL;
-+
-+ f->pixelformat = fmt_out->pixfmts_cap[f->index];
-+ } else {
-+ return -EINVAL;
-+ }
-+
-+ return 0;
-+}
-+
-+static int vdec_enum_framesizes(struct file *file, void *fh,
-+ struct v4l2_frmsizeenum *fsize)
-+{
-+ struct amvdec_session *sess =
-+ container_of(file->private_data, struct amvdec_session, fh);
-+ const struct amvdec_format *formats = sess->core->platform->formats;
-+ const struct amvdec_format *fmt;
-+ u32 num_formats = sess->core->platform->num_formats;
-+
-+ fmt = find_format(formats, num_formats, fsize->pixel_format);
-+ if (!fmt || fsize->index)
-+ return -EINVAL;
-+
-+ fsize->type = V4L2_FRMSIZE_TYPE_STEPWISE;
-+
-+ fsize->stepwise.min_width = 256;
-+ fsize->stepwise.max_width = fmt->max_width;
-+ fsize->stepwise.step_width = 1;
-+ fsize->stepwise.min_height = 144;
-+ fsize->stepwise.max_height = fmt->max_height;
-+ fsize->stepwise.step_height = 1;
-+
-+ return 0;
-+}
-+
-+static int
-+vdec_try_decoder_cmd(struct file *file, void *fh, struct v4l2_decoder_cmd *cmd)
-+{
-+ switch (cmd->cmd) {
-+ case V4L2_DEC_CMD_STOP:
-+ if (cmd->flags & V4L2_DEC_CMD_STOP_TO_BLACK)
-+ return -EINVAL;
-+ break;
-+ default:
-+ return -EINVAL;
-+ }
-+
-+ return 0;
-+}
-+
-+static int
-+vdec_decoder_cmd(struct file *file, void *fh, struct v4l2_decoder_cmd *cmd)
-+{
-+ struct amvdec_session *sess =
-+ container_of(file->private_data, struct amvdec_session, fh);
-+ struct amvdec_codec_ops *codec_ops = sess->fmt_out->codec_ops;
-+ struct device *dev = sess->core->dev;
-+ int ret;
-+
-+ ret = vdec_try_decoder_cmd(file, fh, cmd);
-+ if (ret)
-+ return ret;
-+
-+ if (!(sess->streamon_out & sess->streamon_cap))
-+ return 0;
-+
-+ dev_dbg(dev, "Received V4L2_DEC_CMD_STOP\n");
-+ sess->should_stop = 1;
-+
-+ vdec_wait_inactive(sess);
-+
-+ if (codec_ops->drain) {
-+ codec_ops->drain(sess);
-+ } else if (codec_ops->eos_sequence) {
-+ u32 len;
-+ const u8 *data = codec_ops->eos_sequence(&len);
-+
-+ esparser_queue_eos(sess->core, data, len);
-+ }
-+
-+ return ret;
-+}
-+
-+static int vdec_subscribe_event(struct v4l2_fh *fh,
-+ const struct v4l2_event_subscription *sub)
-+{
-+ switch (sub->type) {
-+ case V4L2_EVENT_EOS:
-+ return v4l2_event_subscribe(fh, sub, 2, NULL);
-+ default:
-+ return -EINVAL;
-+ }
-+}
-+
-+static int vdec_cropcap(struct file *file, void *fh,
-+ struct v4l2_cropcap *crop)
-+{
-+ struct amvdec_session *sess =
-+ container_of(file->private_data, struct amvdec_session, fh);
-+
-+ if (crop->type != V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE)
-+ return -EINVAL;
-+
-+ crop->pixelaspect = sess->pixelaspect;
-+ return 0;
-+}
-+
-+static const struct v4l2_ioctl_ops vdec_ioctl_ops = {
-+ .vidioc_querycap = vdec_querycap,
-+ .vidioc_enum_fmt_vid_cap_mplane = vdec_enum_fmt,
-+ .vidioc_enum_fmt_vid_out_mplane = vdec_enum_fmt,
-+ .vidioc_s_fmt_vid_cap_mplane = vdec_s_fmt,
-+ .vidioc_s_fmt_vid_out_mplane = vdec_s_fmt,
-+ .vidioc_g_fmt_vid_cap_mplane = vdec_g_fmt,
-+ .vidioc_g_fmt_vid_out_mplane = vdec_g_fmt,
-+ .vidioc_try_fmt_vid_cap_mplane = vdec_try_fmt,
-+ .vidioc_try_fmt_vid_out_mplane = vdec_try_fmt,
-+ .vidioc_reqbufs = v4l2_m2m_ioctl_reqbufs,
-+ .vidioc_querybuf = v4l2_m2m_ioctl_querybuf,
-+ .vidioc_prepare_buf = v4l2_m2m_ioctl_prepare_buf,
-+ .vidioc_qbuf = v4l2_m2m_ioctl_qbuf,
-+ .vidioc_expbuf = v4l2_m2m_ioctl_expbuf,
-+ .vidioc_dqbuf = v4l2_m2m_ioctl_dqbuf,
-+ .vidioc_streamon = v4l2_m2m_ioctl_streamon,
-+ .vidioc_streamoff = v4l2_m2m_ioctl_streamoff,
-+ .vidioc_enum_framesizes = vdec_enum_framesizes,
-+ .vidioc_subscribe_event = vdec_subscribe_event,
-+ .vidioc_unsubscribe_event = v4l2_event_unsubscribe,
-+ .vidioc_try_decoder_cmd = vdec_try_decoder_cmd,
-+ .vidioc_decoder_cmd = vdec_decoder_cmd,
-+ .vidioc_cropcap = vdec_cropcap,
-+};
-+
-+static int m2m_queue_init(void *priv, struct vb2_queue *src_vq,
-+ struct vb2_queue *dst_vq)
-+{
-+ struct amvdec_session *sess = priv;
-+ int ret;
-+
-+ src_vq->type = V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE;
-+ src_vq->io_modes = VB2_MMAP | VB2_DMABUF;
-+ src_vq->timestamp_flags = V4L2_BUF_FLAG_TIMESTAMP_COPY;
-+ src_vq->ops = &vdec_vb2_ops;
-+ src_vq->mem_ops = &vb2_dma_contig_memops;
-+ src_vq->drv_priv = sess;
-+ src_vq->buf_struct_size = sizeof(struct dummy_buf);
-+ src_vq->min_buffers_needed = 1;
-+ src_vq->dev = sess->core->dev;
-+ src_vq->lock = &sess->lock;
-+ ret = vb2_queue_init(src_vq);
-+ if (ret)
-+ return ret;
-+
-+ dst_vq->type = V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE;
-+ dst_vq->io_modes = VB2_MMAP | VB2_DMABUF;
-+ dst_vq->timestamp_flags = V4L2_BUF_FLAG_TIMESTAMP_COPY;
-+ dst_vq->ops = &vdec_vb2_ops;
-+ dst_vq->mem_ops = &vb2_dma_contig_memops;
-+ dst_vq->drv_priv = sess;
-+ dst_vq->buf_struct_size = sizeof(struct dummy_buf);
-+ dst_vq->min_buffers_needed = 1;
-+ dst_vq->dev = sess->core->dev;
-+ dst_vq->lock = &sess->lock;
-+ ret = vb2_queue_init(dst_vq);
-+ if (ret) {
-+ vb2_queue_release(src_vq);
-+ return ret;
-+ }
-+
-+ return 0;
-+}
-+
-+static int vdec_open(struct file *file)
-+{
-+ struct amvdec_core *core = video_drvdata(file);
-+ struct device *dev = core->dev;
-+ const struct amvdec_format *formats = core->platform->formats;
-+ struct amvdec_session *sess;
-+ int ret;
-+
-+ sess = kzalloc(sizeof(*sess), GFP_KERNEL);
-+ if (!sess)
-+ return -ENOMEM;
-+
-+ sess->core = core;
-+
-+ sess->m2m_dev = v4l2_m2m_init(&vdec_m2m_ops);
-+ if (IS_ERR(sess->m2m_dev)) {
-+ dev_err(dev, "Fail to v4l2_m2m_init\n");
-+ ret = PTR_ERR(sess->m2m_dev);
-+ goto err_free_sess;
-+ }
-+
-+ sess->m2m_ctx = v4l2_m2m_ctx_init(sess->m2m_dev, sess, m2m_queue_init);
-+ if (IS_ERR(sess->m2m_ctx)) {
-+ dev_err(dev, "Fail to v4l2_m2m_ctx_init\n");
-+ ret = PTR_ERR(sess->m2m_ctx);
-+ goto err_m2m_release;
-+ }
-+
-+ sess->pixfmt_cap = formats[0].pixfmts_cap[0];
-+ sess->fmt_out = &formats[0];
-+ sess->width = 1280;
-+ sess->height = 720;
-+ sess->pixelaspect.numerator = 1;
-+ sess->pixelaspect.denominator = 1;
-+
-+ INIT_LIST_HEAD(&sess->timestamps);
-+ INIT_LIST_HEAD(&sess->bufs_recycle);
-+ INIT_WORK(&sess->esparser_queue_work, esparser_queue_all_src);
-+ mutex_init(&sess->lock);
-+ mutex_init(&sess->bufs_recycle_lock);
-+ spin_lock_init(&sess->ts_spinlock);
-+
-+ v4l2_fh_init(&sess->fh, core->vdev_dec);
-+ v4l2_fh_add(&sess->fh);
-+ sess->fh.m2m_ctx = sess->m2m_ctx;
-+ file->private_data = &sess->fh;
-+
-+ return 0;
-+
-+err_m2m_release:
-+ v4l2_m2m_release(sess->m2m_dev);
-+err_free_sess:
-+ kfree(sess);
-+ return ret;
-+}
-+
-+static int vdec_close(struct file *file)
-+{
-+ struct amvdec_session *sess =
-+ container_of(file->private_data, struct amvdec_session, fh);
-+
-+ v4l2_m2m_ctx_release(sess->m2m_ctx);
-+ v4l2_m2m_release(sess->m2m_dev);
-+ v4l2_fh_del(&sess->fh);
-+ v4l2_fh_exit(&sess->fh);
-+
-+ mutex_destroy(&sess->lock);
-+ mutex_destroy(&sess->bufs_recycle_lock);
-+
-+ kfree(sess);
-+
-+ return 0;
-+}
-+
-+static const struct v4l2_file_operations vdec_fops = {
-+ .owner = THIS_MODULE,
-+ .open = vdec_open,
-+ .release = vdec_close,
-+ .unlocked_ioctl = video_ioctl2,
-+ .poll = v4l2_m2m_fop_poll,
-+ .mmap = v4l2_m2m_fop_mmap,
-+};
-+
-+static irqreturn_t vdec_isr(int irq, void *data)
-+{
-+ struct amvdec_core *core = data;
-+ struct amvdec_session *sess = core->cur_sess;
-+
-+ sess->last_irq_jiffies = get_jiffies_64();
-+
-+ return sess->fmt_out->codec_ops->isr(sess);
-+}
-+
-+static irqreturn_t vdec_threaded_isr(int irq, void *data)
-+{
-+ struct amvdec_core *core = data;
-+ struct amvdec_session *sess = core->cur_sess;
-+
-+ return sess->fmt_out->codec_ops->threaded_isr(sess);
-+}
-+
-+static const struct of_device_id vdec_dt_match[] = {
-+ { .compatible = "amlogic,gxbb-vdec",
-+ .data = &vdec_platform_gxbb },
-+ { .compatible = "amlogic,gxm-vdec",
-+ .data = &vdec_platform_gxm },
-+ { .compatible = "amlogic,gxl-vdec",
-+ .data = &vdec_platform_gxl },
-+ {}
-+};
-+MODULE_DEVICE_TABLE(of, vdec_dt_match);
-+
-+static int vdec_probe(struct platform_device *pdev)
-+{
-+ struct device *dev = &pdev->dev;
-+ struct video_device *vdev;
-+ struct amvdec_core *core;
-+ struct resource *r;
-+ const struct of_device_id *of_id;
-+ int irq;
-+ int ret;
-+
-+ core = devm_kzalloc(dev, sizeof(*core), GFP_KERNEL);
-+ if (!core)
-+ return -ENOMEM;
-+
-+ core->dev = dev;
-+ platform_set_drvdata(pdev, core);
-+
-+ r = platform_get_resource_byname(pdev, IORESOURCE_MEM, "dos");
-+ core->dos_base = devm_ioremap_resource(dev, r);
-+ if (IS_ERR(core->dos_base)) {
-+ dev_err(dev, "Couldn't remap DOS memory\n");
-+ return PTR_ERR(core->dos_base);
-+ }
-+
-+ r = platform_get_resource_byname(pdev, IORESOURCE_MEM, "esparser");
-+ core->esparser_base = devm_ioremap_resource(dev, r);
-+ if (IS_ERR(core->esparser_base)) {
-+ dev_err(dev, "Couldn't remap ESPARSER memory\n");
-+ return PTR_ERR(core->esparser_base);
-+ }
-+
-+ core->regmap_ao = syscon_regmap_lookup_by_phandle(dev->of_node,
-+ "amlogic,ao-sysctrl");
-+ if (IS_ERR(core->regmap_ao)) {
-+ dev_err(dev, "Couldn't regmap AO sysctrl\n");
-+ return PTR_ERR(core->regmap_ao);
-+ }
-+
-+ core->canvas = meson_canvas_get(dev);
-+ if (!core->canvas)
-+ return PTR_ERR(core->canvas);
-+
-+ core->dos_parser_clk = devm_clk_get(dev, "dos_parser");
-+ if (IS_ERR(core->dos_parser_clk))
-+ return -EPROBE_DEFER;
-+
-+ core->dos_clk = devm_clk_get(dev, "dos");
-+ if (IS_ERR(core->dos_clk))
-+ return -EPROBE_DEFER;
-+
-+ core->vdec_1_clk = devm_clk_get(dev, "vdec_1");
-+ if (IS_ERR(core->vdec_1_clk))
-+ return -EPROBE_DEFER;
-+
-+ core->vdec_hevc_clk = devm_clk_get(dev, "vdec_hevc");
-+ if (IS_ERR(core->vdec_hevc_clk))
-+ return -EPROBE_DEFER;
-+
-+ irq = platform_get_irq_byname(pdev, "vdec");
-+ if (irq < 0)
-+ return irq;
-+
-+ ret = devm_request_threaded_irq(core->dev, irq, vdec_isr,
-+ vdec_threaded_isr, IRQF_ONESHOT,
-+ "vdec", core);
-+ if (ret)
-+ return ret;
-+
-+ ret = esparser_init(pdev, core);
-+ if (ret)
-+ return ret;
-+
-+ ret = v4l2_device_register(dev, &core->v4l2_dev);
-+ if (ret) {
-+ dev_err(dev, "Couldn't register v4l2 device\n");
-+ return -ENOMEM;
-+ }
-+
-+ vdev = video_device_alloc();
-+ if (!vdev) {
-+ ret = -ENOMEM;
-+ goto err_vdev_release;
-+ }
-+
-+ of_id = of_match_node(vdec_dt_match, dev->of_node);
-+ core->platform = of_id->data;
-+ core->vdev_dec = vdev;
-+ core->dev_dec = dev;
-+ mutex_init(&core->lock);
-+
-+ strscpy(vdev->name, "meson-video-decoder", sizeof(vdev->name));
-+ vdev->release = video_device_release;
-+ vdev->fops = &vdec_fops;
-+ vdev->ioctl_ops = &vdec_ioctl_ops;
-+ vdev->vfl_dir = VFL_DIR_M2M;
-+ vdev->v4l2_dev = &core->v4l2_dev;
-+ vdev->lock = &core->lock;
-+ vdev->device_caps = V4L2_CAP_VIDEO_M2M_MPLANE | V4L2_CAP_STREAMING;
-+
-+ video_set_drvdata(vdev, core);
-+
-+ ret = video_register_device(vdev, VFL_TYPE_GRABBER, -1);
-+ if (ret) {
-+ dev_err(dev, "Failed registering video device\n");
-+ goto err_vdev_release;
-+ }
-+
-+ return 0;
-+
-+err_vdev_release:
-+ video_device_release(vdev);
-+ return ret;
-+}
-+
-+static int vdec_remove(struct platform_device *pdev)
-+{
-+ struct amvdec_core *core = platform_get_drvdata(pdev);
-+
-+ video_unregister_device(core->vdev_dec);
-+
-+ return 0;
-+}
-+
-+static struct platform_driver meson_vdec_driver = {
-+ .probe = vdec_probe,
-+ .remove = vdec_remove,
-+ .driver = {
-+ .name = "meson-vdec",
-+ .of_match_table = vdec_dt_match,
-+ },
-+};
-+module_platform_driver(meson_vdec_driver);
-+
-+MODULE_DESCRIPTION("Meson video decoder driver for GXBB/GXL/GXM");
-+MODULE_AUTHOR("Maxime Jourdan <mjourdan@baylibre.com>");
-+MODULE_LICENSE("GPL");
-diff --git a/drivers/media/platform/meson/vdec/vdec.h b/drivers/media/platform/meson/vdec/vdec.h
-new file mode 100644
-index 0000000..4e8c3f1
---- /dev/null
-+++ b/drivers/media/platform/meson/vdec/vdec.h
-@@ -0,0 +1,251 @@
-+/* SPDX-License-Identifier: GPL-2.0+ */
-+/*
-+ * Copyright (C) 2018 BayLibre, SAS
-+ * Author: Maxime Jourdan <mjourdan@baylibre.com>
-+ */
-+
-+#ifndef __MESON_VDEC_CORE_H_
-+#define __MESON_VDEC_CORE_H_
-+
-+#include <linux/regmap.h>
-+#include <linux/list.h>
-+#include <media/videobuf2-v4l2.h>
-+#include <media/v4l2-ctrls.h>
-+#include <media/v4l2-device.h>
-+#include <linux/soc/amlogic/meson-canvas.h>
-+
-+#include "vdec_platform.h"
-+
-+/* 32 buffers in 3-plane YUV420 */
-+#define MAX_CANVAS (32 * 3)
-+
-+struct amvdec_buffer {
-+ struct list_head list;
-+ struct vb2_buffer *vb;
-+};
-+
-+/**
-+ * struct amvdec_timestamp - stores a src timestamp along with a VIFIFO offset
-+ *
-+ * @list: used to make lists out of this struct
-+ * @ts: timestamp
-+ * @offset: offset in the VIFIFO where the associated packet was written
-+ */
-+struct amvdec_timestamp {
-+ struct list_head list;
-+ u64 ts;
-+ u32 offset;
-+};
-+
-+struct amvdec_session;
-+
-+/**
-+ * struct amvdec_core - device parameters, singleton
-+ *
-+ * @dos_base: DOS memory base address
-+ * @esparser_base: PARSER memory base address
-+ * @regmap_ao: regmap for the AO bus
-+ * @dev: core device
-+ * @dev_dec: decoder device
-+ * @platform: platform-specific data
-+ * @canvas: canvas provider reference
-+ * @dos_parser_clk: DOS_PARSER clock
-+ * @dos_clk: DOS clock
-+ * @vdec_1_clk: VDEC_1 clock
-+ * @vdec_hevc_clk: VDEC_HEVC clock
-+ * @esparser_reset: RESET for the PARSER
-+ * @vdec_dec: video device for the decoder
-+ * @v4l2_dev: v4l2 device
-+ * @cur_sess: current decoding session
-+ * @lock: lock for this structure
-+ */
-+struct amvdec_core {
-+ void __iomem *dos_base;
-+ void __iomem *esparser_base;
-+ struct regmap *regmap_ao;
-+
-+ struct device *dev;
-+ struct device *dev_dec;
-+ const struct vdec_platform *platform;
-+
-+ struct meson_canvas *canvas;
-+
-+ struct clk *dos_parser_clk;
-+ struct clk *dos_clk;
-+ struct clk *vdec_1_clk;
-+ struct clk *vdec_hevc_clk;
-+
-+ struct reset_control *esparser_reset;
-+
-+ struct video_device *vdev_dec;
-+ struct v4l2_device v4l2_dev;
-+
-+ struct amvdec_session *cur_sess;
-+ struct mutex lock;
-+};
-+
-+/**
-+ * struct amvdec_ops - vdec operations
-+ *
-+ * @start: mandatory call when the vdec needs to initialize
-+ * @stop: mandatory call when the vdec needs to stop
-+ * @conf_esparser: mandatory call to let the vdec configure the ESPARSER
-+ * @vififo_level: mandatory call to get the current amount of data
-+ * in the VIFIFO
-+ * @use_offsets: mandatory call. Returns 1 if the VDEC supports vififo offsets
-+ */
-+struct amvdec_ops {
-+ int (*start)(struct amvdec_session *sess);
-+ int (*stop)(struct amvdec_session *sess);
-+ void (*conf_esparser)(struct amvdec_session *sess);
-+ u32 (*vififo_level)(struct amvdec_session *sess);
-+};
-+
-+/**
-+ * struct amvdec_codec_ops - codec operations
-+ *
-+ * @start: mandatory call when the codec needs to initialize
-+ * @stop: mandatory call when the codec needs to stop
-+ * @load_extended_firmware: optional call to load additional firmware bits
-+ * @num_pending_bufs: optional call to get the number of dst buffers on hold
-+ * @can_recycle: optional call to know if the codec is ready to recycle
-+ * a dst buffer
-+ * @recycle: optional call to tell the codec to recycle a dst buffer. Must go
-+ * in pair with @can_recycle
-+ * @drain: optional call if the codec has a custom way of draining
-+ * @eos_sequence: optional call to get an end sequence to send to esparser
-+ * for flush. Mutually exclusive with @drain.
-+ * @isr: mandatory call when the ISR triggers
-+ * @threaded_isr: mandatory call for the threaded ISR
-+ */
-+struct amvdec_codec_ops {
-+ int (*start)(struct amvdec_session *sess);
-+ int (*stop)(struct amvdec_session *sess);
-+ int (*load_extended_firmware)(struct amvdec_session *sess,
-+ const u8 *data, u32 len);
-+ u32 (*num_pending_bufs)(struct amvdec_session *sess);
-+ int (*can_recycle)(struct amvdec_core *core);
-+ void (*recycle)(struct amvdec_core *core, u32 buf_idx);
-+ void (*drain)(struct amvdec_session *sess);
-+ const u8 * (*eos_sequence)(u32 *len);
-+ irqreturn_t (*isr)(struct amvdec_session *sess);
-+ irqreturn_t (*threaded_isr)(struct amvdec_session *sess);
-+};
-+
-+/**
-+ * struct amvdec_format - describes one of the OUTPUT (src) format supported
-+ *
-+ * @pixfmt: V4L2 pixel format
-+ * @min_buffers: minimum amount of CAPTURE (dst) buffers
-+ * @max_buffers: maximum amount of CAPTURE (dst) buffers
-+ * @max_width: maximum picture width supported
-+ * @max_height: maximum picture height supported
-+ * @vdec_ops: the VDEC operations that support this format
-+ * @codec_ops: the codec operations that support this format
-+ * @firmware_path: Path to the firmware that supports this format
-+ * @pixfmts_cap: list of CAPTURE pixel formats available with pixfmt
-+ */
-+struct amvdec_format {
-+ u32 pixfmt;
-+ u32 min_buffers;
-+ u32 max_buffers;
-+ u32 max_width;
-+ u32 max_height;
-+
-+ struct amvdec_ops *vdec_ops;
-+ struct amvdec_codec_ops *codec_ops;
-+
-+ char *firmware_path;
-+ u32 pixfmts_cap[4];
-+};
-+
-+/**
-+ * struct amvdec_session - decoding session parameters
-+ *
-+ * @core: reference to the vdec core struct
-+ * @fh: v4l2 file handle
-+ * @m2m_dev: v4l2 m2m device
-+ * @m2m_ctx: v4l2 m2m context
-+ * @lock: session lock
-+ * @fmt_out: vdec pixel format for the OUTPUT queue
-+ * @pixfmt_cap: V4L2 pixel format for the CAPTURE queue
-+ * @width: current picture width
-+ * @height: current picture height
-+ * @colorspace: current colorspace
-+ * @ycbcr_enc: current ycbcr_enc
-+ * @quantization: current quantization
-+ * @xfer_func: current transfer function
-+ * @pixelaspect: Pixel Aspect Ratio reported by the decoder
-+ * @esparser_queued_bufs: number of buffers currently queued into ESPARSER
-+ * @esparser_queue_work: work struct for the ESPARSER to process src buffers
-+ * @streamon_cap: stream on flag for capture queue
-+ * @streamon_out: stream on flag for output queue
-+ * @sequence_cap: capture sequence counter
-+ * @should_stop: flag set if userspace signaled EOS via command
-+ * or empty buffer
-+ * @keyframe_found: flag set once a keyframe has been parsed
-+ * @canvas_alloc: array of all the canvas IDs allocated
-+ * @canvas_num: number of canvas IDs allocated
-+ * @vififo_vaddr: virtual address for the VIFIFO
-+ * @vififo_paddr: physical address for the VIFIFO
-+ * @vififo_size: size of the VIFIFO dma alloc
-+ * @bufs_recycle: list of buffers that need to be recycled
-+ * @bufs_recycle_lock: lock for the bufs_recycle list
-+ * @recycle_thread: task struct for the recycling thread
-+ * @timestamps: chronological list of src timestamps
-+ * @ts_spinlock: spinlock for the timestamps list
-+ * @last_irq_jiffies: tracks last time the vdec triggered an IRQ
-+ * @priv: codec private data
-+ */
-+struct amvdec_session {
-+ struct amvdec_core *core;
-+
-+ struct v4l2_fh fh;
-+ struct v4l2_m2m_dev *m2m_dev;
-+ struct v4l2_m2m_ctx *m2m_ctx;
-+ struct mutex lock;
-+
-+ const struct amvdec_format *fmt_out;
-+ u32 pixfmt_cap;
-+
-+ u32 width;
-+ u32 height;
-+ u32 colorspace;
-+ u8 ycbcr_enc;
-+ u8 quantization;
-+ u8 xfer_func;
-+
-+ struct v4l2_fract pixelaspect;
-+
-+ atomic_t esparser_queued_bufs;
-+ struct work_struct esparser_queue_work;
-+
-+ unsigned int streamon_cap, streamon_out;
-+ unsigned int sequence_cap;
-+ unsigned int should_stop;
-+ unsigned int keyframe_found;
-+
-+ u8 canvas_alloc[MAX_CANVAS];
-+ u32 canvas_num;
-+
-+ void *vififo_vaddr;
-+ dma_addr_t vififo_paddr;
-+ u32 vififo_size;
-+
-+ struct list_head bufs_recycle;
-+ struct mutex bufs_recycle_lock;
-+ struct task_struct *recycle_thread;
-+
-+ struct list_head timestamps;
-+ spinlock_t ts_spinlock;
-+
-+ u64 last_irq_jiffies;
-+ u32 last_offset;
-+ u32 wrap_count;
-+
-+ void *priv;
-+};
-+
-+u32 amvdec_get_output_size(struct amvdec_session *sess);
-+
-+#endif
-diff --git a/drivers/media/platform/meson/vdec/vdec_1.c b/drivers/media/platform/meson/vdec/vdec_1.c
-new file mode 100644
-index 0000000..88b8bed
---- /dev/null
-+++ b/drivers/media/platform/meson/vdec/vdec_1.c
-@@ -0,0 +1,231 @@
-+// SPDX-License-Identifier: GPL-2.0+
-+/*
-+ * Copyright (C) 2018 BayLibre, SAS
-+ * Author: Maxime Jourdan <mjourdan@baylibre.com>
-+ *
-+ * VDEC_1 is a video decoding block that allows decoding of
-+ * MPEG 1/2/4, H.263, H.264, MJPEG, VC1
-+ */
-+
-+#include <linux/firmware.h>
-+#include <linux/clk.h>
-+
-+#include "vdec_1.h"
-+#include "vdec_helpers.h"
-+#include "dos_regs.h"
-+
-+/* AO Registers */
-+#define AO_RTI_GEN_PWR_SLEEP0 0xe8
-+#define AO_RTI_GEN_PWR_ISO0 0xec
-+ #define GEN_PWR_VDEC_1 (BIT(3) | BIT(2))
-+
-+#define MC_SIZE (4096 * 4)
-+
-+static int
-+vdec_1_load_firmware(struct amvdec_session *sess, const char *fwname)
-+{
-+ const struct firmware *fw;
-+ struct amvdec_core *core = sess->core;
-+ struct device *dev = core->dev_dec;
-+ struct amvdec_codec_ops *codec_ops = sess->fmt_out->codec_ops;
-+ static void *mc_addr;
-+ static dma_addr_t mc_addr_map;
-+ int ret;
-+ u32 i = 1000;
-+
-+ ret = request_firmware(&fw, fwname, dev);
-+ if (ret < 0)
-+ return -EINVAL;
-+
-+ if (fw->size < MC_SIZE) {
-+ dev_err(dev, "Firmware size %zu is too small. Expected %u.\n",
-+ fw->size, MC_SIZE);
-+ ret = -EINVAL;
-+ goto release_firmware;
-+ }
-+
-+ mc_addr = dma_alloc_coherent(core->dev, MC_SIZE,
-+ &mc_addr_map, GFP_KERNEL);
-+ if (!mc_addr) {
-+ dev_err(dev,
-+ "Failed allocating memory for firmware loading\n");
-+ ret = -ENOMEM;
-+ goto release_firmware;
-+ }
-+
-+ memcpy(mc_addr, fw->data, MC_SIZE);
-+
-+ amvdec_write_dos(core, MPSR, 0);
-+ amvdec_write_dos(core, CPSR, 0);
-+
-+ amvdec_clear_dos_bits(core, MDEC_PIC_DC_CTRL, BIT(31));
-+
-+ amvdec_write_dos(core, IMEM_DMA_ADR, mc_addr_map);
-+ amvdec_write_dos(core, IMEM_DMA_COUNT, MC_SIZE / 4);
-+ amvdec_write_dos(core, IMEM_DMA_CTRL, (0x8000 | (7 << 16)));
-+
-+ while (--i && amvdec_read_dos(core, IMEM_DMA_CTRL) & 0x8000) { }
-+
-+ if (i == 0) {
-+ dev_err(dev, "Firmware load fail (DMA hang?)\n");
-+ ret = -EINVAL;
-+ goto free_mc;
-+ }
-+
-+ if (codec_ops->load_extended_firmware)
-+ ret = codec_ops->load_extended_firmware(sess,
-+ fw->data + MC_SIZE,
-+ fw->size - MC_SIZE);
-+
-+free_mc:
-+ dma_free_coherent(core->dev, MC_SIZE, mc_addr, mc_addr_map);
-+release_firmware:
-+ release_firmware(fw);
-+ return ret;
-+}
-+
-+int vdec_1_stbuf_power_up(struct amvdec_session *sess)
-+{
-+ struct amvdec_core *core = sess->core;
-+
-+ amvdec_write_dos(core, VLD_MEM_VIFIFO_CONTROL, 0);
-+ amvdec_write_dos(core, VLD_MEM_VIFIFO_WRAP_COUNT, 0);
-+ amvdec_write_dos(core, POWER_CTL_VLD, BIT(4));
-+
-+ amvdec_write_dos(core, VLD_MEM_VIFIFO_START_PTR, sess->vififo_paddr);
-+ amvdec_write_dos(core, VLD_MEM_VIFIFO_CURR_PTR, sess->vififo_paddr);
-+ amvdec_write_dos(core, VLD_MEM_VIFIFO_END_PTR,
-+ sess->vififo_paddr + sess->vififo_size - 8);
-+
-+ amvdec_write_dos_bits(core, VLD_MEM_VIFIFO_CONTROL, 1);
-+ amvdec_clear_dos_bits(core, VLD_MEM_VIFIFO_CONTROL, 1);
-+
-+ amvdec_write_dos(core, VLD_MEM_VIFIFO_BUF_CNTL, MEM_BUFCTRL_MANUAL);
-+ amvdec_write_dos(core, VLD_MEM_VIFIFO_WP, sess->vififo_paddr);
-+
-+ amvdec_write_dos_bits(core, VLD_MEM_VIFIFO_BUF_CNTL, 1);
-+ amvdec_clear_dos_bits(core, VLD_MEM_VIFIFO_BUF_CNTL, 1);
-+
-+ amvdec_write_dos_bits(core, VLD_MEM_VIFIFO_CONTROL,
-+ (0x11 << MEM_FIFO_CNT_BIT) | MEM_FILL_ON_LEVEL |
-+ MEM_CTRL_FILL_EN | MEM_CTRL_EMPTY_EN);
-+
-+ return 0;
-+}
-+
-+static void vdec_1_conf_esparser(struct amvdec_session *sess)
-+{
-+ struct amvdec_core *core = sess->core;
-+
-+ /* VDEC_1 specific ESPARSER stuff */
-+ amvdec_write_dos(core, DOS_GEN_CTRL0, 0);
-+ amvdec_write_dos(core, VLD_MEM_VIFIFO_BUF_CNTL, 1);
-+ amvdec_clear_dos_bits(core, VLD_MEM_VIFIFO_BUF_CNTL, 1);
-+}
-+
-+static u32 vdec_1_vififo_level(struct amvdec_session *sess)
-+{
-+ struct amvdec_core *core = sess->core;
-+
-+ return amvdec_read_dos(core, VLD_MEM_VIFIFO_LEVEL);
-+}
-+
-+static int vdec_1_stop(struct amvdec_session *sess)
-+{
-+ struct amvdec_core *core = sess->core;
-+ struct amvdec_codec_ops *codec_ops = sess->fmt_out->codec_ops;
-+
-+ amvdec_write_dos(core, MPSR, 0);
-+ amvdec_write_dos(core, CPSR, 0);
-+ amvdec_write_dos(core, ASSIST_MBOX1_MASK, 0);
-+
-+ amvdec_write_dos(core, DOS_SW_RESET0, BIT(12) | BIT(11));
-+ amvdec_write_dos(core, DOS_SW_RESET0, 0);
-+ amvdec_read_dos(core, DOS_SW_RESET0);
-+
-+ /* enable vdec1 isolation */
-+ regmap_write(core->regmap_ao, AO_RTI_GEN_PWR_ISO0, 0xc0);
-+ /* power off vdec1 memories */
-+ amvdec_write_dos(core, DOS_MEM_PD_VDEC, 0xffffffff);
-+ /* power off vdec1 */
-+ regmap_update_bits(core->regmap_ao, AO_RTI_GEN_PWR_SLEEP0,
-+ GEN_PWR_VDEC_1, GEN_PWR_VDEC_1);
-+
-+ clk_disable_unprepare(core->vdec_1_clk);
-+
-+ if (sess->priv)
-+ codec_ops->stop(sess);
-+
-+ return 0;
-+}
-+
-+static int vdec_1_start(struct amvdec_session *sess)
-+{
-+ int ret;
-+ struct amvdec_core *core = sess->core;
-+ struct amvdec_codec_ops *codec_ops = sess->fmt_out->codec_ops;
-+
-+ /* Configure the vdec clk to the maximum available */
-+ clk_set_rate(core->vdec_1_clk, 666666666);
-+ ret = clk_prepare_enable(core->vdec_1_clk);
-+ if (ret)
-+ return ret;
-+
-+ regmap_update_bits(core->regmap_ao, AO_RTI_GEN_PWR_SLEEP0,
-+ GEN_PWR_VDEC_1, 0);
-+ udelay(10);
-+
-+ /* Reset VDEC1 */
-+ amvdec_write_dos(core, DOS_SW_RESET0, 0xfffffffc);
-+ amvdec_write_dos(core, DOS_SW_RESET0, 0x00000000);
-+
-+ amvdec_write_dos(core, DOS_GCLK_EN0, 0x3ff);
-+
-+ /* enable VDEC Memories */
-+ amvdec_write_dos(core, DOS_MEM_PD_VDEC, 0);
-+ /* Remove VDEC1 Isolation */
-+ regmap_write(core->regmap_ao, AO_RTI_GEN_PWR_ISO0, 0);
-+ /* Reset DOS top registers */
-+ amvdec_write_dos(core, DOS_VDEC_MCRCC_STALL_CTRL, 0);
-+
-+ amvdec_write_dos(core, GCLK_EN, 0x3ff);
-+ amvdec_clear_dos_bits(core, MDEC_PIC_DC_CTRL, BIT(31));
-+
-+ vdec_1_stbuf_power_up(sess);
-+
-+ ret = vdec_1_load_firmware(sess, sess->fmt_out->firmware_path);
-+ if (ret)
-+ goto stop;
-+
-+ ret = codec_ops->start(sess);
-+ if (ret)
-+ goto stop;
-+
-+ /* Enable IRQ */
-+ amvdec_write_dos(core, ASSIST_MBOX1_CLR_REG, 1);
-+ amvdec_write_dos(core, ASSIST_MBOX1_MASK, 1);
-+
-+ /* Enable 2-plane output */
-+ if (sess->pixfmt_cap == V4L2_PIX_FMT_NV12M)
-+ amvdec_write_dos_bits(core, MDEC_PIC_DC_CTRL, BIT(17));
-+ else
-+ amvdec_clear_dos_bits(core, MDEC_PIC_DC_CTRL, BIT(17));
-+
-+ /* Enable firmware processor */
-+ amvdec_write_dos(core, MPSR, 1);
-+ /* Let the firmware settle */
-+ udelay(10);
-+
-+ return 0;
-+
-+stop:
-+ vdec_1_stop(sess);
-+ return ret;
-+}
-+
-+struct amvdec_ops vdec_1_ops = {
-+ .start = vdec_1_start,
-+ .stop = vdec_1_stop,
-+ .conf_esparser = vdec_1_conf_esparser,
-+ .vififo_level = vdec_1_vififo_level,
-+};
-diff --git a/drivers/media/platform/meson/vdec/vdec_1.h b/drivers/media/platform/meson/vdec/vdec_1.h
-new file mode 100644
-index 0000000..042d930
---- /dev/null
-+++ b/drivers/media/platform/meson/vdec/vdec_1.h
-@@ -0,0 +1,14 @@
-+/* SPDX-License-Identifier: GPL-2.0+ */
-+/*
-+ * Copyright (C) 2018 BayLibre, SAS
-+ * Author: Maxime Jourdan <mjourdan@baylibre.com>
-+ */
-+
-+#ifndef __MESON_VDEC_VDEC_1_H_
-+#define __MESON_VDEC_VDEC_1_H_
-+
-+#include "vdec.h"
-+
-+extern struct amvdec_ops vdec_1_ops;
-+
-+#endif
-diff --git a/drivers/media/platform/meson/vdec/vdec_helpers.c b/drivers/media/platform/meson/vdec/vdec_helpers.c
-new file mode 100644
-index 0000000..02090c5
---- /dev/null
-+++ b/drivers/media/platform/meson/vdec/vdec_helpers.c
-@@ -0,0 +1,412 @@
-+// SPDX-License-Identifier: GPL-2.0+
-+/*
-+ * Copyright (C) 2018 BayLibre, SAS
-+ * Author: Maxime Jourdan <mjourdan@baylibre.com>
-+ */
-+
-+#include <linux/gcd.h>
-+#include <media/v4l2-mem2mem.h>
-+#include <media/v4l2-event.h>
-+#include <media/videobuf2-dma-contig.h>
-+
-+#include "vdec_helpers.h"
-+
-+#define NUM_CANVAS_NV12 2
-+#define NUM_CANVAS_YUV420 3
-+
-+u32 amvdec_read_dos(struct amvdec_core *core, u32 reg)
-+{
-+ return readl_relaxed(core->dos_base + reg);
-+}
-+EXPORT_SYMBOL_GPL(amvdec_read_dos);
-+
-+void amvdec_write_dos(struct amvdec_core *core, u32 reg, u32 val)
-+{
-+ writel_relaxed(val, core->dos_base + reg);
-+}
-+EXPORT_SYMBOL_GPL(amvdec_write_dos);
-+
-+void amvdec_write_dos_bits(struct amvdec_core *core, u32 reg, u32 val)
-+{
-+ amvdec_write_dos(core, reg, amvdec_read_dos(core, reg) | val);
-+}
-+EXPORT_SYMBOL_GPL(amvdec_write_dos_bits);
-+
-+void amvdec_clear_dos_bits(struct amvdec_core *core, u32 reg, u32 val)
-+{
-+ amvdec_write_dos(core, reg, amvdec_read_dos(core, reg) & ~val);
-+}
-+EXPORT_SYMBOL_GPL(amvdec_clear_dos_bits);
-+
-+u32 amvdec_read_parser(struct amvdec_core *core, u32 reg)
-+{
-+ return readl_relaxed(core->esparser_base + reg);
-+}
-+EXPORT_SYMBOL_GPL(amvdec_read_parser);
-+
-+void amvdec_write_parser(struct amvdec_core *core, u32 reg, u32 val)
-+{
-+ writel_relaxed(val, core->esparser_base + reg);
-+}
-+EXPORT_SYMBOL_GPL(amvdec_write_parser);
-+
-+static int canvas_alloc(struct amvdec_session *sess, u8 *canvas_id)
-+{
-+ int ret;
-+
-+ if (sess->canvas_num >= MAX_CANVAS) {
-+ dev_err(sess->core->dev, "Reached max number of canvas\n");
-+ return -ENOMEM;
-+ }
-+
-+ ret = meson_canvas_alloc(sess->core->canvas, canvas_id);
-+ if (ret)
-+ return ret;
-+
-+ sess->canvas_alloc[sess->canvas_num++] = *canvas_id;
-+ return 0;
-+}
-+
-+static int set_canvas_yuv420m(struct amvdec_session *sess,
-+ struct vb2_buffer *vb, u32 width,
-+ u32 height, u32 reg)
-+{
-+ struct amvdec_core *core = sess->core;
-+ u8 canvas_id[NUM_CANVAS_YUV420]; /* Y U V */
-+ dma_addr_t buf_paddr[NUM_CANVAS_YUV420]; /* Y U V */
-+ int ret, i;
-+
-+ for (i = 0; i < NUM_CANVAS_YUV420; ++i) {
-+ ret = canvas_alloc(sess, &canvas_id[i]);
-+ if (ret)
-+ return ret;
-+
-+ buf_paddr[i] =
-+ vb2_dma_contig_plane_dma_addr(vb, i);
-+ }
-+
-+ /* Y plane */
-+ meson_canvas_config(core->canvas, canvas_id[0], buf_paddr[0],
-+ width, height, MESON_CANVAS_WRAP_NONE,
-+ MESON_CANVAS_BLKMODE_LINEAR,
-+ MESON_CANVAS_ENDIAN_SWAP64);
-+
-+ /* U plane */
-+ meson_canvas_config(core->canvas, canvas_id[1], buf_paddr[1],
-+ width / 2, height / 2, MESON_CANVAS_WRAP_NONE,
-+ MESON_CANVAS_BLKMODE_LINEAR,
-+ MESON_CANVAS_ENDIAN_SWAP64);
-+
-+ /* V plane */
-+ meson_canvas_config(core->canvas, canvas_id[2], buf_paddr[2],
-+ width / 2, height / 2, MESON_CANVAS_WRAP_NONE,
-+ MESON_CANVAS_BLKMODE_LINEAR,
-+ MESON_CANVAS_ENDIAN_SWAP64);
-+
-+ amvdec_write_dos(core, reg,
-+ ((canvas_id[2]) << 16) |
-+ ((canvas_id[1]) << 8) |
-+ (canvas_id[0]));
-+
-+ return 0;
-+}
-+
-+static int set_canvas_nv12m(struct amvdec_session *sess,
-+ struct vb2_buffer *vb, u32 width,
-+ u32 height, u32 reg)
-+{
-+ struct amvdec_core *core = sess->core;
-+ u8 canvas_id[NUM_CANVAS_NV12]; /* Y U/V */
-+ dma_addr_t buf_paddr[NUM_CANVAS_NV12]; /* Y U/V */
-+ int ret, i;
-+
-+ for (i = 0; i < NUM_CANVAS_NV12; ++i) {
-+ ret = canvas_alloc(sess, &canvas_id[i]);
-+ if (ret)
-+ return ret;
-+
-+ buf_paddr[i] =
-+ vb2_dma_contig_plane_dma_addr(vb, i);
-+ }
-+
-+ /* Y plane */
-+ meson_canvas_config(core->canvas, canvas_id[0], buf_paddr[0],
-+ width, height, MESON_CANVAS_WRAP_NONE,
-+ MESON_CANVAS_BLKMODE_LINEAR,
-+ MESON_CANVAS_ENDIAN_SWAP64);
-+
-+ /* U/V plane */
-+ meson_canvas_config(core->canvas, canvas_id[1], buf_paddr[1],
-+ width, height / 2, MESON_CANVAS_WRAP_NONE,
-+ MESON_CANVAS_BLKMODE_LINEAR,
-+ MESON_CANVAS_ENDIAN_SWAP64);
-+
-+ amvdec_write_dos(core, reg,
-+ ((canvas_id[1]) << 16) |
-+ ((canvas_id[1]) << 8) |
-+ (canvas_id[0]));
-+
-+ return 0;
-+}
-+
-+int amvdec_set_canvases(struct amvdec_session *sess,
-+ u32 reg_base[], u32 reg_num[])
-+{
-+ struct v4l2_m2m_buffer *buf;
-+ u32 pixfmt = sess->pixfmt_cap;
-+ u32 width = ALIGN(sess->width, 64);
-+ u32 height = ALIGN(sess->height, 64);
-+ u32 reg_cur = reg_base[0];
-+ u32 reg_num_cur = 0;
-+ u32 reg_base_cur = 0;
-+ int ret;
-+
-+ v4l2_m2m_for_each_dst_buf(sess->m2m_ctx, buf) {
-+ if (!reg_base[reg_base_cur])
-+ return -EINVAL;
-+
-+ reg_cur = reg_base[reg_base_cur] + reg_num_cur * 4;
-+
-+ switch (pixfmt) {
-+ case V4L2_PIX_FMT_NV12M:
-+ ret = set_canvas_nv12m(sess, &buf->vb.vb2_buf, width,
-+ height, reg_cur);
-+ if (ret)
-+ return ret;
-+ break;
-+ case V4L2_PIX_FMT_YUV420M:
-+ ret = set_canvas_yuv420m(sess, &buf->vb.vb2_buf, width,
-+ height, reg_cur);
-+ if (ret)
-+ return ret;
-+ break;
-+ default:
-+ dev_err(sess->core->dev, "Unsupported pixfmt %08X\n",
-+ pixfmt);
-+ return -EINVAL;
-+ };
-+
-+ reg_num_cur++;
-+ if (reg_num_cur >= reg_num[reg_base_cur]) {
-+ reg_base_cur++;
-+ reg_num_cur = 0;
-+ }
-+ }
-+
-+ return 0;
-+}
-+EXPORT_SYMBOL_GPL(amvdec_set_canvases);
-+
-+void amvdec_add_ts_reorder(struct amvdec_session *sess, u64 ts, u32 offset)
-+{
-+ struct amvdec_timestamp *new_ts, *tmp;
-+ unsigned long flags;
-+
-+ new_ts = kmalloc(sizeof(*new_ts), GFP_KERNEL);
-+ new_ts->ts = ts;
-+ new_ts->offset = offset;
-+
-+ spin_lock_irqsave(&sess->ts_spinlock, flags);
-+
-+ if (list_empty(&sess->timestamps))
-+ goto add_tail;
-+
-+ list_for_each_entry(tmp, &sess->timestamps, list) {
-+ if (ts <= tmp->ts) {
-+ list_add_tail(&new_ts->list, &tmp->list);
-+ goto unlock;
-+ }
-+ }
-+
-+add_tail:
-+ list_add_tail(&new_ts->list, &sess->timestamps);
-+unlock:
-+ spin_unlock_irqrestore(&sess->ts_spinlock, flags);
-+}
-+EXPORT_SYMBOL_GPL(amvdec_add_ts_reorder);
-+
-+void amvdec_remove_ts(struct amvdec_session *sess, u64 ts)
-+{
-+ struct amvdec_timestamp *tmp;
-+ unsigned long flags;
-+
-+ spin_lock_irqsave(&sess->ts_spinlock, flags);
-+ list_for_each_entry(tmp, &sess->timestamps, list) {
-+ if (tmp->ts == ts) {
-+ list_del(&tmp->list);
-+ kfree(tmp);
-+ goto unlock;
-+ }
-+ }
-+ dev_warn(sess->core->dev_dec,
-+ "Couldn't remove buffer with timestamp %llu from list\n", ts);
-+
-+unlock:
-+ spin_unlock_irqrestore(&sess->ts_spinlock, flags);
-+}
-+EXPORT_SYMBOL_GPL(amvdec_remove_ts);
-+
-+static void dst_buf_done(struct amvdec_session *sess,
-+ struct vb2_v4l2_buffer *vbuf,
-+ u32 field,
-+ u64 timestamp)
-+{
-+ struct device *dev = sess->core->dev_dec;
-+ u32 output_size = amvdec_get_output_size(sess);
-+
-+ switch (sess->pixfmt_cap) {
-+ case V4L2_PIX_FMT_NV12M:
-+ vbuf->vb2_buf.planes[0].bytesused = output_size;
-+ vbuf->vb2_buf.planes[1].bytesused = output_size / 2;
-+ break;
-+ case V4L2_PIX_FMT_YUV420M:
-+ vbuf->vb2_buf.planes[0].bytesused = output_size;
-+ vbuf->vb2_buf.planes[1].bytesused = output_size / 4;
-+ vbuf->vb2_buf.planes[2].bytesused = output_size / 4;
-+ break;
-+ }
-+
-+ vbuf->vb2_buf.timestamp = timestamp;
-+ vbuf->sequence = sess->sequence_cap++;
-+
-+ if (sess->should_stop &&
-+ atomic_read(&sess->esparser_queued_bufs) <= 2) {
-+ const struct v4l2_event ev = { .type = V4L2_EVENT_EOS };
-+
-+ dev_dbg(dev, "Signaling EOS\n");
-+ v4l2_event_queue_fh(&sess->fh, &ev);
-+ vbuf->flags |= V4L2_BUF_FLAG_LAST;
-+ } else if (sess->should_stop)
-+ dev_dbg(dev, "should_stop, %u bufs remain\n",
-+ atomic_read(&sess->esparser_queued_bufs));
-+
-+ dev_dbg(dev, "Buffer %u done\n", vbuf->vb2_buf.index);
-+ vbuf->field = field;
-+ v4l2_m2m_buf_done(vbuf, VB2_BUF_STATE_DONE);
-+
-+ /* Buffer done probably means the vififo got freed */
-+ schedule_work(&sess->esparser_queue_work);
-+}
-+
-+void amvdec_dst_buf_done(struct amvdec_session *sess,
-+ struct vb2_v4l2_buffer *vbuf, u32 field)
-+{
-+ struct device *dev = sess->core->dev_dec;
-+ struct amvdec_timestamp *tmp;
-+ struct list_head *timestamps = &sess->timestamps;
-+ u64 timestamp;
-+ unsigned long flags;
-+
-+ spin_lock_irqsave(&sess->ts_spinlock, flags);
-+ if (list_empty(timestamps)) {
-+ dev_err(dev, "Buffer %u done but list is empty\n",
-+ vbuf->vb2_buf.index);
-+
-+ v4l2_m2m_buf_done(vbuf, VB2_BUF_STATE_ERROR);
-+ spin_unlock_irqrestore(&sess->ts_spinlock, flags);
-+ return;
-+ }
-+
-+ tmp = list_first_entry(timestamps, struct amvdec_timestamp, list);
-+ timestamp = tmp->ts;
-+ list_del(&tmp->list);
-+ kfree(tmp);
-+ spin_unlock_irqrestore(&sess->ts_spinlock, flags);
-+
-+ dst_buf_done(sess, vbuf, field, timestamp);
-+ atomic_dec(&sess->esparser_queued_bufs);
-+}
-+EXPORT_SYMBOL_GPL(amvdec_dst_buf_done);
-+
-+static void amvdec_dst_buf_done_offset(struct amvdec_session *sess,
-+ struct vb2_v4l2_buffer *vbuf,
-+ u32 offset,
-+ u32 field)
-+{
-+ struct device *dev = sess->core->dev_dec;
-+ struct amvdec_timestamp *match = NULL;
-+ struct amvdec_timestamp *tmp, *n;
-+ u64 timestamp = 0;
-+ unsigned long flags;
-+
-+ spin_lock_irqsave(&sess->ts_spinlock, flags);
-+
-+ /* Look for our vififo offset to get the corresponding timestamp. */
-+ list_for_each_entry_safe(tmp, n, &sess->timestamps, list) {
-+ s64 delta = (s64)offset - tmp->offset;
-+
-+ /* Offsets reported by codecs usually differ slightly,
-+ * so we need some wiggle room.
-+ * 4KiB being the minimum packet size, there is no risk here.
-+ */
-+ if (delta > (-1 * (s32)SZ_4K) && delta < SZ_4K) {
-+ match = tmp;
-+ break;
-+ }
-+
-+ /* Delete any timestamp entry that appears before our target
-+ * (not all src packets/timestamps lead to a frame)
-+ */
-+ if (delta > 0 || delta < -1 * (s32)sess->vififo_size) {
-+ atomic_dec(&sess->esparser_queued_bufs);
-+ list_del(&tmp->list);
-+ kfree(tmp);
-+ }
-+ }
-+
-+ if (!match) {
-+ dev_dbg(dev, "Buffer %u done but can't match offset (%08X)\n",
-+ vbuf->vb2_buf.index, offset);
-+ } else {
-+ timestamp = match->ts;
-+ list_del(&match->list);
-+ kfree(match);
-+ }
-+ spin_unlock_irqrestore(&sess->ts_spinlock, flags);
-+
-+ dst_buf_done(sess, vbuf, field, timestamp);
-+ if (match)
-+ atomic_dec(&sess->esparser_queued_bufs);
-+}
-+
-+void amvdec_dst_buf_done_idx(struct amvdec_session *sess,
-+ u32 buf_idx, u32 offset, u32 field)
-+{
-+ struct vb2_v4l2_buffer *vbuf;
-+ struct device *dev = sess->core->dev_dec;
-+
-+ vbuf = v4l2_m2m_dst_buf_remove_by_idx(sess->m2m_ctx, buf_idx);
-+ if (!vbuf) {
-+ dev_err(dev,
-+ "Buffer %u done but it doesn't exist in m2m_ctx\n",
-+ buf_idx);
-+ return;
-+ }
-+
-+ if (offset != -1)
-+ amvdec_dst_buf_done_offset(sess, vbuf, offset, field);
-+ else
-+ amvdec_dst_buf_done(sess, vbuf, field);
-+}
-+EXPORT_SYMBOL_GPL(amvdec_dst_buf_done_idx);
-+
-+void amvdec_set_par_from_dar(struct amvdec_session *sess,
-+ u32 dar_num, u32 dar_den)
-+{
-+ u32 div;
-+
-+ sess->pixelaspect.numerator = sess->height * dar_num;
-+ sess->pixelaspect.denominator = sess->width * dar_den;
-+ div = gcd(sess->pixelaspect.numerator, sess->pixelaspect.denominator);
-+ sess->pixelaspect.numerator /= div;
-+ sess->pixelaspect.denominator /= div;
-+}
-+EXPORT_SYMBOL_GPL(amvdec_set_par_from_dar);
-+
-+void amvdec_abort(struct amvdec_session *sess)
-+{
-+ dev_info(sess->core->dev, "Aborting decoding session!\n");
-+ vb2_queue_error(&sess->m2m_ctx->cap_q_ctx.q);
-+ vb2_queue_error(&sess->m2m_ctx->out_q_ctx.q);
-+}
-+EXPORT_SYMBOL_GPL(amvdec_abort);
-diff --git a/drivers/media/platform/meson/vdec/vdec_helpers.h b/drivers/media/platform/meson/vdec/vdec_helpers.h
-new file mode 100644
-index 0000000..b9250a8
---- /dev/null
-+++ b/drivers/media/platform/meson/vdec/vdec_helpers.h
-@@ -0,0 +1,48 @@
-+/* SPDX-License-Identifier: GPL-2.0+ */
-+/*
-+ * Copyright (C) 2018 BayLibre, SAS
-+ * Author: Maxime Jourdan <mjourdan@baylibre.com>
-+ */
-+
-+#ifndef __MESON_VDEC_HELPERS_H_
-+#define __MESON_VDEC_HELPERS_H_
-+
-+#include "vdec.h"
-+
-+/**
-+ * amvdec_set_canvases() - Map VB2 buffers to canvases
-+ *
-+ * @sess: current session
-+ * @reg_base: Registry bases of where to write the canvas indexes
-+ * @reg_num: number of contiguous registers after each reg_base (including it)
-+ */
-+int amvdec_set_canvases(struct amvdec_session *sess,
-+ u32 reg_base[], u32 reg_num[]);
-+
-+u32 amvdec_read_dos(struct amvdec_core *core, u32 reg);
-+void amvdec_write_dos(struct amvdec_core *core, u32 reg, u32 val);
-+void amvdec_write_dos_bits(struct amvdec_core *core, u32 reg, u32 val);
-+void amvdec_clear_dos_bits(struct amvdec_core *core, u32 reg, u32 val);
-+u32 amvdec_read_parser(struct amvdec_core *core, u32 reg);
-+void amvdec_write_parser(struct amvdec_core *core, u32 reg, u32 val);
-+
-+void amvdec_dst_buf_done_idx(struct amvdec_session *sess, u32 buf_idx,
-+ u32 offset, u32 field);
-+void amvdec_dst_buf_done(struct amvdec_session *sess,
-+ struct vb2_v4l2_buffer *vbuf, u32 field);
-+
-+/**
-+ * amvdec_add_ts_reorder() - Add a timestamp to the list in chronological order
-+ *
-+ * @sess: current session
-+ * @ts: timestamp to add
-+ * @offset: offset in the VIFIFO where the associated packet was written
-+ */
-+void amvdec_add_ts_reorder(struct amvdec_session *sess, u64 ts, u32 offset);
-+void amvdec_remove_ts(struct amvdec_session *sess, u64 ts);
-+
-+void amvdec_set_par_from_dar(struct amvdec_session *sess,
-+ u32 dar_num, u32 dar_den);
-+
-+void amvdec_abort(struct amvdec_session *sess);
-+#endif
-diff --git a/drivers/media/platform/meson/vdec/vdec_platform.c b/drivers/media/platform/meson/vdec/vdec_platform.c
-new file mode 100644
-index 0000000..46eeb74
---- /dev/null
-+++ b/drivers/media/platform/meson/vdec/vdec_platform.c
-@@ -0,0 +1,101 @@
-+// SPDX-License-Identifier: GPL-2.0+
-+/*
-+ * Copyright (C) 2018 BayLibre, SAS
-+ * Author: Maxime Jourdan <mjourdan@baylibre.com>
-+ */
-+
-+#include "vdec_platform.h"
-+#include "vdec.h"
-+
-+#include "vdec_1.h"
-+#include "codec_mpeg12.h"
-+
-+static const struct amvdec_format vdec_formats_gxbb[] = {
-+ {
-+ .pixfmt = V4L2_PIX_FMT_MPEG1,
-+ .min_buffers = 8,
-+ .max_buffers = 8,
-+ .max_width = 1920,
-+ .max_height = 1080,
-+ .vdec_ops = &vdec_1_ops,
-+ .codec_ops = &codec_mpeg12_ops,
-+ .firmware_path = "meson/gx/vmpeg12_mc",
-+ .pixfmts_cap = { V4L2_PIX_FMT_NV12M, V4L2_PIX_FMT_YUV420M, 0 },
-+ }, {
-+ .pixfmt = V4L2_PIX_FMT_MPEG2,
-+ .min_buffers = 8,
-+ .max_buffers = 8,
-+ .max_width = 1920,
-+ .max_height = 1080,
-+ .vdec_ops = &vdec_1_ops,
-+ .codec_ops = &codec_mpeg12_ops,
-+ .firmware_path = "meson/gx/vmpeg12_mc",
-+ .pixfmts_cap = { V4L2_PIX_FMT_NV12M, V4L2_PIX_FMT_YUV420M, 0 },
-+ },
-+};
-+
-+static const struct amvdec_format vdec_formats_gxl[] = {
-+ {
-+ .pixfmt = V4L2_PIX_FMT_MPEG1,
-+ .min_buffers = 8,
-+ .max_buffers = 8,
-+ .max_width = 1920,
-+ .max_height = 1080,
-+ .vdec_ops = &vdec_1_ops,
-+ .codec_ops = &codec_mpeg12_ops,
-+ .firmware_path = "meson/gx/vmpeg12_mc",
-+ .pixfmts_cap = { V4L2_PIX_FMT_NV12M, V4L2_PIX_FMT_YUV420M, 0 },
-+ }, {
-+ .pixfmt = V4L2_PIX_FMT_MPEG2,
-+ .min_buffers = 8,
-+ .max_buffers = 8,
-+ .max_width = 1920,
-+ .max_height = 1080,
-+ .vdec_ops = &vdec_1_ops,
-+ .codec_ops = &codec_mpeg12_ops,
-+ .firmware_path = "meson/gx/vmpeg12_mc",
-+ .pixfmts_cap = { V4L2_PIX_FMT_NV12M, V4L2_PIX_FMT_YUV420M, 0 },
-+ },
-+};
-+
-+static const struct amvdec_format vdec_formats_gxm[] = {
-+ {
-+ .pixfmt = V4L2_PIX_FMT_MPEG1,
-+ .min_buffers = 8,
-+ .max_buffers = 8,
-+ .max_width = 1920,
-+ .max_height = 1080,
-+ .vdec_ops = &vdec_1_ops,
-+ .codec_ops = &codec_mpeg12_ops,
-+ .firmware_path = "meson/gx/vmpeg12_mc",
-+ .pixfmts_cap = { V4L2_PIX_FMT_NV12M, V4L2_PIX_FMT_YUV420M, 0 },
-+ }, {
-+ .pixfmt = V4L2_PIX_FMT_MPEG2,
-+ .min_buffers = 8,
-+ .max_buffers = 8,
-+ .max_width = 1920,
-+ .max_height = 1080,
-+ .vdec_ops = &vdec_1_ops,
-+ .codec_ops = &codec_mpeg12_ops,
-+ .firmware_path = "meson/gx/vmpeg12_mc",
-+ .pixfmts_cap = { V4L2_PIX_FMT_NV12M, V4L2_PIX_FMT_YUV420M, 0 },
-+ },
-+};
-+
-+const struct vdec_platform vdec_platform_gxbb = {
-+ .formats = vdec_formats_gxbb,
-+ .num_formats = ARRAY_SIZE(vdec_formats_gxbb),
-+ .revision = VDEC_REVISION_GXBB,
-+};
-+
-+const struct vdec_platform vdec_platform_gxl = {
-+ .formats = vdec_formats_gxl,
-+ .num_formats = ARRAY_SIZE(vdec_formats_gxl),
-+ .revision = VDEC_REVISION_GXL,
-+};
-+
-+const struct vdec_platform vdec_platform_gxm = {
-+ .formats = vdec_formats_gxm,
-+ .num_formats = ARRAY_SIZE(vdec_formats_gxm),
-+ .revision = VDEC_REVISION_GXM,
-+};
-diff --git a/drivers/media/platform/meson/vdec/vdec_platform.h b/drivers/media/platform/meson/vdec/vdec_platform.h
-new file mode 100644
-index 0000000..f602532
---- /dev/null
-+++ b/drivers/media/platform/meson/vdec/vdec_platform.h
-@@ -0,0 +1,30 @@
-+/* SPDX-License-Identifier: GPL-2.0+ */
-+/*
-+ * Copyright (C) 2018 BayLibre, SAS
-+ * Author: Maxime Jourdan <mjourdan@baylibre.com>
-+ */
-+
-+#ifndef __MESON_VDEC_PLATFORM_H_
-+#define __MESON_VDEC_PLATFORM_H_
-+
-+#include "vdec.h"
-+
-+struct amvdec_format;
-+
-+enum vdec_revision {
-+ VDEC_REVISION_GXBB,
-+ VDEC_REVISION_GXL,
-+ VDEC_REVISION_GXM,
-+};
-+
-+struct vdec_platform {
-+ const struct amvdec_format *formats;
-+ const u32 num_formats;
-+ enum vdec_revision revision;
-+};
-+
-+extern const struct vdec_platform vdec_platform_gxbb;
-+extern const struct vdec_platform vdec_platform_gxm;
-+extern const struct vdec_platform vdec_platform_gxl;
-+
-+#endif
diff --git a/testing/linux-amlogic/0034-MAINTAINERS-Add-meson-video-decoder.patch b/testing/linux-amlogic/0034-MAINTAINERS-Add-meson-video-decoder.patch
deleted file mode 100644
index 76a6a3826bf..00000000000
--- a/testing/linux-amlogic/0034-MAINTAINERS-Add-meson-video-decoder.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From a4089c61b05e61349ff10539fc20ee480d44b303 Mon Sep 17 00:00:00 2001
-From: Maxime Jourdan <mjourdan@baylibre.com>
-Date: Tue, 4 Sep 2018 10:07:08 +0200
-Subject: [PATCH] MAINTAINERS: Add meson video decoder
-
-Add an entry for the meson video decoder for amlogic SoCs.
-
-Signed-off-by: Maxime Jourdan <mjourdan@baylibre.com>
-
----
- MAINTAINERS | 8 ++++++++
- 1 file changed, 8 insertions(+)
-
-diff --git a/MAINTAINERS b/MAINTAINERS
-index 9e9b19e..ede389b 100644
---- a/MAINTAINERS
-+++ b/MAINTAINERS
-@@ -9520,6 +9520,14 @@ F: drivers/media/platform/meson/ao-cec.c
- F: Documentation/devicetree/bindings/media/meson-ao-cec.txt
- T: git git://linuxtv.org/media_tree.git
-
-+MESON VIDEO DECODER DRIVER FOR AMLOGIC SOCS
-+M: Maxime Jourdan <mjourdan@baylibre.com>
-+L: linux-media@lists.freedesktop.org
-+L: linux-amlogic@lists.infradead.org
-+S: Supported
-+F: drivers/media/platform/meson/vdec/
-+T: git git://linuxtv.org/media_tree.git
-+
- MICROBLAZE ARCHITECTURE
- M: Michal Simek <monstr@monstr.eu>
- W: http://www.monstr.eu/fdt/
diff --git a/testing/linux-amlogic/0035-arm64-dts-meson-gx-add-vdec-entry.patch b/testing/linux-amlogic/0035-arm64-dts-meson-gx-add-vdec-entry.patch
deleted file mode 100644
index 4b1f168f7e8..00000000000
--- a/testing/linux-amlogic/0035-arm64-dts-meson-gx-add-vdec-entry.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From 771e9830bdd1361594a874ded57fe497f443d7dd Mon Sep 17 00:00:00 2001
-From: Maxime Jourdan <mjourdan@baylibre.com>
-Date: Wed, 29 Aug 2018 15:24:02 +0200
-Subject: [PATCH] arm64: dts: meson-gx: add vdec entry
-
-Add the video decoder dts entry
-
-Signed-off-by: Maxime Jourdan <mjourdan@baylibre.com>
-
----
- arch/arm64/boot/dts/amlogic/meson-gx.dtsi | 14 ++++++++++++++
- 1 file changed, 14 insertions(+)
-
-diff --git a/arch/arm64/boot/dts/amlogic/meson-gx.dtsi b/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
-index 5012607..5d2820e 100644
---- a/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
-+++ b/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
-@@ -445,6 +445,20 @@
- };
- };
-
-+ vdec: video-decoder@c8820000 {
-+ compatible = "amlogic,gx-vdec";
-+ reg = <0x0 0xc8820000 0x0 0x10000>,
-+ <0x0 0xc110a580 0x0 0xe4>;
-+ reg-names = "dos", "esparser";
-+
-+ interrupts = <GIC_SPI 44 IRQ_TYPE_EDGE_RISING>,
-+ <GIC_SPI 32 IRQ_TYPE_EDGE_RISING>;
-+ interrupt-names = "vdec", "esparser";
-+
-+ amlogic,ao-sysctrl = <&sysctrl_AO>;
-+ amlogic,canvas = <&canvas>;
-+ };
-+
- periphs: periphs@c8834000 {
- compatible = "simple-bus";
- reg = <0x0 0xc8834000 0x0 0x2000>;
diff --git a/testing/linux-amlogic/0036-arm64-dts-meson-add-vdec-entries.patch b/testing/linux-amlogic/0036-arm64-dts-meson-add-vdec-entries.patch
deleted file mode 100644
index 0770272005f..00000000000
--- a/testing/linux-amlogic/0036-arm64-dts-meson-add-vdec-entries.patch
+++ /dev/null
@@ -1,63 +0,0 @@
-From 75863ab0baf29e4b0212a34f9ab7ef2763a38824 Mon Sep 17 00:00:00 2001
-From: Maxime Jourdan <mjourdan@baylibre.com>
-Date: Wed, 29 Aug 2018 15:24:22 +0200
-Subject: [PATCH] arm64: dts: meson: add vdec entries
-
-This enables the video decoder for gxbb, gxl and gxm chips
-
-Signed-off-by: Maxime Jourdan <mjourdan@baylibre.com>
-
----
- arch/arm64/boot/dts/amlogic/meson-gxbb.dtsi | 10 ++++++++++
- arch/arm64/boot/dts/amlogic/meson-gxl.dtsi | 10 ++++++++++
- arch/arm64/boot/dts/amlogic/meson-gxm.dtsi | 4 ++++
- 3 files changed, 24 insertions(+)
-
-diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb.dtsi b/arch/arm64/boot/dts/amlogic/meson-gxbb.dtsi
-index 2a4d506..96145e4 100644
---- a/arch/arm64/boot/dts/amlogic/meson-gxbb.dtsi
-+++ b/arch/arm64/boot/dts/amlogic/meson-gxbb.dtsi
-@@ -814,3 +814,13 @@
- power-domains = <&pwrc_vpu>;
- };
-
-+&vdec {
-+ compatible = "amlogic,gxbb-vdec";
-+ clocks = <&clkc CLKID_DOS_PARSER>,
-+ <&clkc CLKID_DOS>,
-+ <&clkc CLKID_VDEC_1>,
-+ <&clkc CLKID_VDEC_HEVC>;
-+ clock-names = "dos_parser", "dos", "vdec_1", "vdec_hevc";
-+ resets = <&reset RESET_PARSER>;
-+ reset-names = "esparser";
-+};
-diff --git a/arch/arm64/boot/dts/amlogic/meson-gxl.dtsi b/arch/arm64/boot/dts/amlogic/meson-gxl.dtsi
-index 9f4b618..6ca93ae 100644
---- a/arch/arm64/boot/dts/amlogic/meson-gxl.dtsi
-+++ b/arch/arm64/boot/dts/amlogic/meson-gxl.dtsi
-@@ -814,3 +814,13 @@
- power-domains = <&pwrc_vpu>;
- };
-
-+&vdec {
-+ compatible = "amlogic,gxl-vdec";
-+ clocks = <&clkc CLKID_DOS_PARSER>,
-+ <&clkc CLKID_DOS>,
-+ <&clkc CLKID_VDEC_1>,
-+ <&clkc CLKID_VDEC_HEVC>;
-+ clock-names = "dos_parser", "dos", "vdec_1", "vdec_hevc";
-+ resets = <&reset RESET_PARSER>;
-+ reset-names = "esparser";
-+};
-diff --git a/arch/arm64/boot/dts/amlogic/meson-gxm.dtsi b/arch/arm64/boot/dts/amlogic/meson-gxm.dtsi
-index 247888d..2f35649 100644
---- a/arch/arm64/boot/dts/amlogic/meson-gxm.dtsi
-+++ b/arch/arm64/boot/dts/amlogic/meson-gxm.dtsi
-@@ -117,3 +117,7 @@
- &dwc3 {
- phys = <&usb3_phy>, <&usb2_phy0>, <&usb2_phy1>, <&usb2_phy2>;
- };
-+
-+&vdec {
-+ compatible = "amlogic,gxm-vdec";
-+};
diff --git a/testing/linux-amlogic/0037-meson-vdec-introduce-controls-and-V4L2_CID_MIN_BUFFE.patch b/testing/linux-amlogic/0037-meson-vdec-introduce-controls-and-V4L2_CID_MIN_BUFFE.patch
deleted file mode 100644
index 3c120117b1c..00000000000
--- a/testing/linux-amlogic/0037-meson-vdec-introduce-controls-and-V4L2_CID_MIN_BUFFE.patch
+++ /dev/null
@@ -1,153 +0,0 @@
-From e36802c6297adb0c560f3a6c1672546eb380c458 Mon Sep 17 00:00:00 2001
-From: Maxime Jourdan <mjourdan@baylibre.com>
-Date: Wed, 10 Oct 2018 17:22:27 +0200
-Subject: [PATCH] meson: vdec: introduce controls and
- V4L2_CID_MIN_BUFFERS_FOR_CAPTURE
-
----
- drivers/media/platform/meson/vdec/Makefile | 2 +-
- drivers/media/platform/meson/vdec/vdec.c | 7 ++++
- drivers/media/platform/meson/vdec/vdec.h | 2 ++
- drivers/media/platform/meson/vdec/vdec_ctrls.c | 45 ++++++++++++++++++++++++++
- drivers/media/platform/meson/vdec/vdec_ctrls.h | 8 +++++
- 5 files changed, 63 insertions(+), 1 deletion(-)
- create mode 100644 drivers/media/platform/meson/vdec/vdec_ctrls.c
- create mode 100644 drivers/media/platform/meson/vdec/vdec_ctrls.h
-
-diff --git a/drivers/media/platform/meson/vdec/Makefile b/drivers/media/platform/meson/vdec/Makefile
-index 6bea129..eba8608 100644
---- a/drivers/media/platform/meson/vdec/Makefile
-+++ b/drivers/media/platform/meson/vdec/Makefile
-@@ -1,7 +1,7 @@
- # SPDX-License-Identifier: GPL-2.0
- # Makefile for Amlogic meson video decoder driver
-
--meson-vdec-objs = esparser.o vdec.o vdec_helpers.o vdec_platform.o
-+meson-vdec-objs = esparser.o vdec.o vdec_ctrls.o vdec_helpers.o vdec_platform.o
- meson-vdec-objs += vdec_1.o
- meson-vdec-objs += codec_mpeg12.o
-
-diff --git a/drivers/media/platform/meson/vdec/vdec.c b/drivers/media/platform/meson/vdec/vdec.c
-index d8db52c..1c5d3e9 100644
---- a/drivers/media/platform/meson/vdec/vdec.c
-+++ b/drivers/media/platform/meson/vdec/vdec.c
-@@ -21,6 +21,7 @@
- #include "vdec.h"
- #include "esparser.h"
- #include "vdec_helpers.h"
-+#include "vdec_ctrls.h"
-
- struct dummy_buf {
- struct vb2_v4l2_buffer vb;
-@@ -290,6 +291,7 @@ static int vdec_start_streaming(struct vb2_queue *q, unsigned int count)
- sess->keyframe_found = 0;
- sess->last_offset = 0;
- sess->wrap_count = 0;
-+ sess->dpb_size = 0;
- sess->pixelaspect.numerator = 1;
- sess->pixelaspect.denominator = 1;
- atomic_set(&sess->esparser_queued_bufs, 0);
-@@ -812,6 +814,10 @@ static int vdec_open(struct file *file)
- goto err_m2m_release;
- }
-
-+ ret = amvdec_init_ctrls(&sess->ctrl_handler);
-+ if (ret)
-+ goto err_m2m_release;
-+
- sess->pixfmt_cap = formats[0].pixfmts_cap[0];
- sess->fmt_out = &formats[0];
- sess->width = 1280;
-@@ -827,6 +833,7 @@ static int vdec_open(struct file *file)
- spin_lock_init(&sess->ts_spinlock);
-
- v4l2_fh_init(&sess->fh, core->vdev_dec);
-+ sess->fh.ctrl_handler = &sess->ctrl_handler;
- v4l2_fh_add(&sess->fh);
- sess->fh.m2m_ctx = sess->m2m_ctx;
- file->private_data = &sess->fh;
-diff --git a/drivers/media/platform/meson/vdec/vdec.h b/drivers/media/platform/meson/vdec/vdec.h
-index 4e8c3f1..6be7de2 100644
---- a/drivers/media/platform/meson/vdec/vdec.h
-+++ b/drivers/media/platform/meson/vdec/vdec.h
-@@ -203,6 +203,7 @@ struct amvdec_session {
- struct v4l2_fh fh;
- struct v4l2_m2m_dev *m2m_dev;
- struct v4l2_m2m_ctx *m2m_ctx;
-+ struct v4l2_ctrl_handler ctrl_handler;
- struct mutex lock;
-
- const struct amvdec_format *fmt_out;
-@@ -242,6 +243,7 @@ struct amvdec_session {
- u64 last_irq_jiffies;
- u32 last_offset;
- u32 wrap_count;
-+ u32 dpb_size;
-
- void *priv;
- };
-diff --git a/drivers/media/platform/meson/vdec/vdec_ctrls.c b/drivers/media/platform/meson/vdec/vdec_ctrls.c
-new file mode 100644
-index 0000000..cd6dd6d
---- /dev/null
-+++ b/drivers/media/platform/meson/vdec/vdec_ctrls.c
-@@ -0,0 +1,45 @@
-+#include "vdec_ctrls.h"
-+
-+static int vdec_op_g_volatile_ctrl(struct v4l2_ctrl *ctrl)
-+{
-+ struct amvdec_session *sess =
-+ container_of(ctrl->handler, struct amvdec_session, ctrl_handler);
-+
-+ switch (ctrl->id) {
-+ case V4L2_CID_MIN_BUFFERS_FOR_CAPTURE:
-+ ctrl->val = sess->dpb_size;
-+ break;
-+ default:
-+ return -EINVAL;
-+ };
-+
-+ return 0;
-+}
-+
-+static const struct v4l2_ctrl_ops vdec_ctrl_ops = {
-+ .g_volatile_ctrl = vdec_op_g_volatile_ctrl,
-+};
-+
-+int amvdec_init_ctrls(struct v4l2_ctrl_handler *ctrl_handler)
-+{
-+ int ret;
-+ struct v4l2_ctrl *ctrl;
-+
-+ ret = v4l2_ctrl_handler_init(ctrl_handler, 1);
-+ if (ret)
-+ return ret;
-+
-+ ctrl = v4l2_ctrl_new_std(ctrl_handler, &vdec_ctrl_ops,
-+ V4L2_CID_MIN_BUFFERS_FOR_CAPTURE, 1, 32, 1, 1);
-+ if (ctrl)
-+ ctrl->flags |= V4L2_CTRL_FLAG_VOLATILE;
-+
-+ ret = ctrl_handler->error;
-+ if (ret) {
-+ v4l2_ctrl_handler_free(ctrl_handler);
-+ return ret;
-+ }
-+
-+ return 0;
-+}
-+EXPORT_SYMBOL_GPL(amvdec_init_ctrls);
-diff --git a/drivers/media/platform/meson/vdec/vdec_ctrls.h b/drivers/media/platform/meson/vdec/vdec_ctrls.h
-new file mode 100644
-index 0000000..4bcc5e6
---- /dev/null
-+++ b/drivers/media/platform/meson/vdec/vdec_ctrls.h
-@@ -0,0 +1,8 @@
-+#ifndef __MESON_VDEC_CTRLS_H_
-+#define __MESON_VDEC_CTRLS_H_
-+
-+#include "vdec.h"
-+
-+int amvdec_init_ctrls(struct v4l2_ctrl_handler *ctrl_handler);
-+
-+#endif
diff --git a/testing/linux-amlogic/0038-media-videodev2-add-V4L2_FMT_FLAG_NO_SOURCE_CHANGE.patch b/testing/linux-amlogic/0038-media-videodev2-add-V4L2_FMT_FLAG_NO_SOURCE_CHANGE.patch
deleted file mode 100644
index 7229bb2ec6d..00000000000
--- a/testing/linux-amlogic/0038-media-videodev2-add-V4L2_FMT_FLAG_NO_SOURCE_CHANGE.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From 80f9e75b2fce22552fdf56ade990f3f98567e29e Mon Sep 17 00:00:00 2001
-From: Maxime Jourdan <mjourdan@baylibre.com>
-Date: Thu, 4 Oct 2018 15:37:39 +0200
-Subject: [PATCH] media: videodev2: add V4L2_FMT_FLAG_NO_SOURCE_CHANGE
-
-When a v4l2 driver exposes V4L2_EVENT_SOURCE_CHANGE, some (usually
-OUTPUT) formats may not be able to trigger this event.
-
-Add a enum_fmt format flag to tag those specific formats.
-
-Signed-off-by: Maxime Jourdan <mjourdan@baylibre.com>
-
----
- Documentation/media/uapi/v4l/vidioc-enum-fmt.rst | 5 +++++
- include/uapi/linux/videodev2.h | 5 +++--
- 2 files changed, 8 insertions(+), 2 deletions(-)
-
-diff --git a/Documentation/media/uapi/v4l/vidioc-enum-fmt.rst b/Documentation/media/uapi/v4l/vidioc-enum-fmt.rst
-index 019c513..e0040b3 100644
---- a/Documentation/media/uapi/v4l/vidioc-enum-fmt.rst
-+++ b/Documentation/media/uapi/v4l/vidioc-enum-fmt.rst
-@@ -116,6 +116,11 @@ one until ``EINVAL`` is returned.
- - This format is not native to the device but emulated through
- software (usually libv4l2), where possible try to use a native
- format instead for better performance.
-+ * - ``V4L2_FMT_FLAG_NO_SOURCE_CHANGE``
-+ - 0x0004
-+ - The event ``V4L2_EVENT_SOURCE_CHANGE`` is not supported
-+ for this format.
-+
-
-
- Return Value
-diff --git a/include/uapi/linux/videodev2.h b/include/uapi/linux/videodev2.h
-index 1aae2e4..f44bdef 100644
---- a/include/uapi/linux/videodev2.h
-+++ b/include/uapi/linux/videodev2.h
-@@ -733,8 +733,9 @@ struct v4l2_fmtdesc {
- __u32 reserved[4];
- };
-
--#define V4L2_FMT_FLAG_COMPRESSED 0x0001
--#define V4L2_FMT_FLAG_EMULATED 0x0002
-+#define V4L2_FMT_FLAG_COMPRESSED 0x0001
-+#define V4L2_FMT_FLAG_EMULATED 0x0002
-+#define V4L2_FMT_FLAG_NO_SOURCE_CHANGE 0x0004
-
- /* Frame Size and frame rate enumeration */
- /*
diff --git a/testing/linux-amlogic/0039-meson-vdec-allow-subscribing-to-V4L2_EVENT_SOURCE_CH.patch b/testing/linux-amlogic/0039-meson-vdec-allow-subscribing-to-V4L2_EVENT_SOURCE_CH.patch
deleted file mode 100644
index 4a29d883917..00000000000
--- a/testing/linux-amlogic/0039-meson-vdec-allow-subscribing-to-V4L2_EVENT_SOURCE_CH.patch
+++ /dev/null
@@ -1,270 +0,0 @@
-From 4ba289cf4940b6b8ddf1e332fc7248a27f54cfc8 Mon Sep 17 00:00:00 2001
-From: Maxime Jourdan <mjourdan@baylibre.com>
-Date: Wed, 10 Oct 2018 15:44:56 +0200
-Subject: [PATCH] meson: vdec: allow subscribing to V4L2_EVENT_SOURCE_CHANGE
-
-Flag MPEG1/MPEG2 as NO_SOURCE_CHANGE.
-
----
- drivers/media/platform/meson/vdec/vdec.c | 20 ++++++++++++++--
- drivers/media/platform/meson/vdec/vdec.h | 13 +++++++++++
- drivers/media/platform/meson/vdec/vdec_helpers.c | 28 +++++++++++++++++++++++
- drivers/media/platform/meson/vdec/vdec_helpers.h | 1 +
- drivers/media/platform/meson/vdec/vdec_platform.c | 6 +++++
- 5 files changed, 66 insertions(+), 2 deletions(-)
-
-diff --git a/drivers/media/platform/meson/vdec/vdec.c b/drivers/media/platform/meson/vdec/vdec.c
-index 1c5d3e9..ca64045 100644
---- a/drivers/media/platform/meson/vdec/vdec.c
-+++ b/drivers/media/platform/meson/vdec/vdec.c
-@@ -230,7 +230,8 @@ static int vdec_queue_setup(struct vb2_queue *q,
- * are free to choose any of them to write frames to. As such,
- * we need all of them to be queued into the driver
- */
-- q->min_buffers_needed = q->num_buffers + *num_buffers;
-+ sess->num_dst_bufs = q->num_buffers + *num_buffers;
-+ q->min_buffers_needed = sess->num_dst_bufs;
- break;
- default:
- return -EINVAL;
-@@ -260,6 +261,7 @@ static void vdec_vb2_buf_queue(struct vb2_buffer *vb)
- static int vdec_start_streaming(struct vb2_queue *q, unsigned int count)
- {
- struct amvdec_session *sess = vb2_get_drv_priv(q);
-+ struct amvdec_codec_ops *codec_ops = sess->fmt_out->codec_ops;
- struct amvdec_core *core = sess->core;
- struct vb2_v4l2_buffer *buf;
- int ret;
-@@ -277,6 +279,13 @@ static int vdec_start_streaming(struct vb2_queue *q, unsigned int count)
- if (!sess->streamon_out || !sess->streamon_cap)
- return 0;
-
-+ if (sess->status == STATUS_NEEDS_RESUME &&
-+ q->type == V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE) {
-+ codec_ops->resume(sess);
-+ sess->status = STATUS_RUNNING;
-+ return 0;
-+ }
-+
- sess->vififo_size = SIZE_VIFIFO;
- sess->vififo_vaddr =
- dma_alloc_coherent(sess->core->dev, sess->vififo_size,
-@@ -305,6 +314,7 @@ static int vdec_start_streaming(struct vb2_queue *q, unsigned int count)
- sess->recycle_thread = kthread_run(vdec_recycle_thread, sess,
- "vdec_recycle");
-
-+ sess->status = STATUS_RUNNING;
- core->cur_sess = sess;
-
- return 0;
-@@ -362,7 +372,9 @@ static void vdec_stop_streaming(struct vb2_queue *q)
- struct amvdec_core *core = sess->core;
- struct vb2_v4l2_buffer *buf;
-
-- if (sess->streamon_out && sess->streamon_cap) {
-+ if (sess->status == STATUS_RUNNING ||
-+ (sess->status == STATUS_NEEDS_RESUME &&
-+ (!sess->streamon_out || !sess->streamon_cap))) {
- if (vdec_codec_needs_recycle(sess))
- kthread_stop(sess->recycle_thread);
-
-@@ -375,6 +387,7 @@ static void vdec_stop_streaming(struct vb2_queue *q)
- kfree(sess->priv);
- sess->priv = NULL;
- core->cur_sess = NULL;
-+ sess->status = STATUS_STOPPED;
- }
-
- if (q->type == V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE) {
-@@ -611,6 +624,7 @@ static int vdec_enum_fmt(struct file *file, void *fh, struct v4l2_fmtdesc *f)
-
- fmt_out = &platform->formats[f->index];
- f->pixelformat = fmt_out->pixfmt;
-+ f->flags = fmt_out->flags;
- } else if (f->type == V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE) {
- fmt_out = sess->fmt_out;
- if (f->index >= 4 || !fmt_out->pixfmts_cap[f->index])
-@@ -703,6 +717,8 @@ static int vdec_subscribe_event(struct v4l2_fh *fh,
- switch (sub->type) {
- case V4L2_EVENT_EOS:
- return v4l2_event_subscribe(fh, sub, 2, NULL);
-+ case V4L2_EVENT_SOURCE_CHANGE:
-+ return v4l2_src_change_event_subscribe(fh, sub);
- default:
- return -EINVAL;
- }
-diff --git a/drivers/media/platform/meson/vdec/vdec.h b/drivers/media/platform/meson/vdec/vdec.h
-index 6be7de2..8f8ce62 100644
---- a/drivers/media/platform/meson/vdec/vdec.h
-+++ b/drivers/media/platform/meson/vdec/vdec.h
-@@ -101,6 +101,7 @@ struct amvdec_ops {
- u32 (*vififo_level)(struct amvdec_session *sess);
- };
-
-+
- /**
- * struct amvdec_codec_ops - codec operations
- *
-@@ -127,6 +128,7 @@ struct amvdec_codec_ops {
- int (*can_recycle)(struct amvdec_core *core);
- void (*recycle)(struct amvdec_core *core, u32 buf_idx);
- void (*drain)(struct amvdec_session *sess);
-+ void (*resume)(struct amvdec_session *sess);
- const u8 * (*eos_sequence)(u32 *len);
- irqreturn_t (*isr)(struct amvdec_session *sess);
- irqreturn_t (*threaded_isr)(struct amvdec_session *sess);
-@@ -140,6 +142,7 @@ struct amvdec_codec_ops {
- * @max_buffers: maximum amount of CAPTURE (dst) buffers
- * @max_width: maximum picture width supported
- * @max_height: maximum picture height supported
-+ * @flags: enum flags associated with this pixfmt
- * @vdec_ops: the VDEC operations that support this format
- * @codec_ops: the codec operations that support this format
- * @firmware_path: Path to the firmware that supports this format
-@@ -151,6 +154,7 @@ struct amvdec_format {
- u32 max_buffers;
- u32 max_width;
- u32 max_height;
-+ u32 flags;
-
- struct amvdec_ops *vdec_ops;
- struct amvdec_codec_ops *codec_ops;
-@@ -159,6 +163,12 @@ struct amvdec_format {
- u32 pixfmts_cap[4];
- };
-
-+enum amvdec_status {
-+ STATUS_STOPPED,
-+ STATUS_RUNNING,
-+ STATUS_NEEDS_RESUME,
-+};
-+
- /**
- * struct amvdec_session - decoding session parameters
- *
-@@ -195,6 +205,7 @@ struct amvdec_format {
- * @timestamps: chronological list of src timestamps
- * @ts_spinlock: spinlock for the timestamps list
- * @last_irq_jiffies: tracks last time the vdec triggered an IRQ
-+ * @status: current decoding status
- * @priv: codec private data
- */
- struct amvdec_session {
-@@ -225,6 +236,7 @@ struct amvdec_session {
- unsigned int sequence_cap;
- unsigned int should_stop;
- unsigned int keyframe_found;
-+ unsigned int num_dst_bufs;
-
- u8 canvas_alloc[MAX_CANVAS];
- u32 canvas_num;
-@@ -245,6 +257,7 @@ struct amvdec_session {
- u32 wrap_count;
- u32 dpb_size;
-
-+ enum amvdec_status status;
- void *priv;
- };
-
-diff --git a/drivers/media/platform/meson/vdec/vdec_helpers.c b/drivers/media/platform/meson/vdec/vdec_helpers.c
-index 02090c5..b982b28 100644
---- a/drivers/media/platform/meson/vdec/vdec_helpers.c
-+++ b/drivers/media/platform/meson/vdec/vdec_helpers.c
-@@ -403,6 +403,34 @@ void amvdec_set_par_from_dar(struct amvdec_session *sess,
- }
- EXPORT_SYMBOL_GPL(amvdec_set_par_from_dar);
-
-+void amvdec_src_change(struct amvdec_session *sess, u32 width, u32 height, u32 dpb_size)
-+{
-+ static const struct v4l2_event ev = {
-+ .type = V4L2_EVENT_SOURCE_CHANGE,
-+ .u.src_change.changes = V4L2_EVENT_SRC_CH_RESOLUTION };
-+
-+ sess->dpb_size = dpb_size;
-+
-+ /* Check if the capture queue is already configured well for our
-+ * usecase. If so, keep decoding with it and do not send the event
-+ */
-+ if (sess->width == width &&
-+ sess->height == height &&
-+ dpb_size <= sess->num_dst_bufs) {
-+ sess->fmt_out->codec_ops->resume(sess);
-+ return;
-+ }
-+
-+ sess->width = width;
-+ sess->height = height;
-+ sess->status = STATUS_NEEDS_RESUME;
-+
-+ dev_dbg(sess->core->dev, "Res. changed (%ux%u), DPB size %u\n",
-+ width, height, dpb_size);
-+ v4l2_event_queue_fh(&sess->fh, &ev);
-+}
-+EXPORT_SYMBOL_GPL(amvdec_src_change);
-+
- void amvdec_abort(struct amvdec_session *sess)
- {
- dev_info(sess->core->dev, "Aborting decoding session!\n");
-diff --git a/drivers/media/platform/meson/vdec/vdec_helpers.h b/drivers/media/platform/meson/vdec/vdec_helpers.h
-index b9250a8..060799b 100644
---- a/drivers/media/platform/meson/vdec/vdec_helpers.h
-+++ b/drivers/media/platform/meson/vdec/vdec_helpers.h
-@@ -44,5 +44,6 @@ void amvdec_remove_ts(struct amvdec_session *sess, u64 ts);
- void amvdec_set_par_from_dar(struct amvdec_session *sess,
- u32 dar_num, u32 dar_den);
-
-+void amvdec_src_change(struct amvdec_session *sess, u32 width, u32 height, u32 dpb_size);
- void amvdec_abort(struct amvdec_session *sess);
- #endif
-diff --git a/drivers/media/platform/meson/vdec/vdec_platform.c b/drivers/media/platform/meson/vdec/vdec_platform.c
-index 46eeb74..291f1ee 100644
---- a/drivers/media/platform/meson/vdec/vdec_platform.c
-+++ b/drivers/media/platform/meson/vdec/vdec_platform.c
-@@ -17,6 +17,7 @@ static const struct amvdec_format vdec_formats_gxbb[] = {
- .max_buffers = 8,
- .max_width = 1920,
- .max_height = 1080,
-+ .flags = V4L2_FMT_FLAG_NO_SOURCE_CHANGE,
- .vdec_ops = &vdec_1_ops,
- .codec_ops = &codec_mpeg12_ops,
- .firmware_path = "meson/gx/vmpeg12_mc",
-@@ -27,6 +28,7 @@ static const struct amvdec_format vdec_formats_gxbb[] = {
- .max_buffers = 8,
- .max_width = 1920,
- .max_height = 1080,
-+ .flags = V4L2_FMT_FLAG_NO_SOURCE_CHANGE,
- .vdec_ops = &vdec_1_ops,
- .codec_ops = &codec_mpeg12_ops,
- .firmware_path = "meson/gx/vmpeg12_mc",
-@@ -41,6 +43,7 @@ static const struct amvdec_format vdec_formats_gxl[] = {
- .max_buffers = 8,
- .max_width = 1920,
- .max_height = 1080,
-+ .flags = V4L2_FMT_FLAG_NO_SOURCE_CHANGE,
- .vdec_ops = &vdec_1_ops,
- .codec_ops = &codec_mpeg12_ops,
- .firmware_path = "meson/gx/vmpeg12_mc",
-@@ -51,6 +54,7 @@ static const struct amvdec_format vdec_formats_gxl[] = {
- .max_buffers = 8,
- .max_width = 1920,
- .max_height = 1080,
-+ .flags = V4L2_FMT_FLAG_NO_SOURCE_CHANGE,
- .vdec_ops = &vdec_1_ops,
- .codec_ops = &codec_mpeg12_ops,
- .firmware_path = "meson/gx/vmpeg12_mc",
-@@ -65,6 +69,7 @@ static const struct amvdec_format vdec_formats_gxm[] = {
- .max_buffers = 8,
- .max_width = 1920,
- .max_height = 1080,
-+ .flags = V4L2_FMT_FLAG_NO_SOURCE_CHANGE,
- .vdec_ops = &vdec_1_ops,
- .codec_ops = &codec_mpeg12_ops,
- .firmware_path = "meson/gx/vmpeg12_mc",
-@@ -75,6 +80,7 @@ static const struct amvdec_format vdec_formats_gxm[] = {
- .max_buffers = 8,
- .max_width = 1920,
- .max_height = 1080,
-+ .flags = V4L2_FMT_FLAG_NO_SOURCE_CHANGE,
- .vdec_ops = &vdec_1_ops,
- .codec_ops = &codec_mpeg12_ops,
- .firmware_path = "meson/gx/vmpeg12_mc",
diff --git a/testing/linux-amlogic/0040-media-meson-vdec-add-H.264-decoding-support.patch b/testing/linux-amlogic/0040-media-meson-vdec-add-H.264-decoding-support.patch
deleted file mode 100644
index aa66ec743e7..00000000000
--- a/testing/linux-amlogic/0040-media-meson-vdec-add-H.264-decoding-support.patch
+++ /dev/null
@@ -1,591 +0,0 @@
-From a41f52edc3681c11517c4d7ceb374f3189ea3310 Mon Sep 17 00:00:00 2001
-From: Maxime Jourdan <mjourdan@baylibre.com>
-Date: Wed, 29 Aug 2018 15:42:56 +0200
-Subject: [PATCH] media: meson: vdec: add H.264 decoding support
-
-Add support for V4L2_PIX_FMT_H264
-
----
- drivers/media/platform/meson/vdec/Makefile | 2 +-
- drivers/media/platform/meson/vdec/codec_h264.c | 478 ++++++++++++++++++++++
- drivers/media/platform/meson/vdec/codec_h264.h | 13 +
- drivers/media/platform/meson/vdec/vdec_platform.c | 31 ++
- 4 files changed, 523 insertions(+), 1 deletion(-)
- create mode 100644 drivers/media/platform/meson/vdec/codec_h264.c
- create mode 100644 drivers/media/platform/meson/vdec/codec_h264.h
-
-diff --git a/drivers/media/platform/meson/vdec/Makefile b/drivers/media/platform/meson/vdec/Makefile
-index eba8608..01dc960 100644
---- a/drivers/media/platform/meson/vdec/Makefile
-+++ b/drivers/media/platform/meson/vdec/Makefile
-@@ -3,6 +3,6 @@
-
- meson-vdec-objs = esparser.o vdec.o vdec_ctrls.o vdec_helpers.o vdec_platform.o
- meson-vdec-objs += vdec_1.o
--meson-vdec-objs += codec_mpeg12.o
-+meson-vdec-objs += codec_mpeg12.o codec_h264.o
-
- obj-$(CONFIG_VIDEO_MESON_VDEC) += meson-vdec.o
-diff --git a/drivers/media/platform/meson/vdec/codec_h264.c b/drivers/media/platform/meson/vdec/codec_h264.c
-new file mode 100644
-index 0000000..6ac0115
---- /dev/null
-+++ b/drivers/media/platform/meson/vdec/codec_h264.c
-@@ -0,0 +1,478 @@
-+// SPDX-License-Identifier: GPL-2.0+
-+/*
-+ * Copyright (C) 2018 Maxime Jourdan <maxi.jourdan@wanadoo.fr>
-+ */
-+
-+#include <media/v4l2-mem2mem.h>
-+#include <media/videobuf2-dma-contig.h>
-+
-+#include "vdec_helpers.h"
-+#include "dos_regs.h"
-+
-+#define SIZE_EXT_FW (20 * SZ_1K)
-+#define SIZE_WORKSPACE 0x1ee000
-+#define SIZE_SEI (8 * SZ_1K)
-+
-+/* Offset added by the firmware which must be substracted
-+ * from the workspace phyaddr
-+ */
-+#define WORKSPACE_BUF_OFFSET 0x1000000
-+
-+/* ISR status */
-+#define CMD_MASK GENMASK(7, 0)
-+#define CMD_SRC_CHANGE 1
-+#define CMD_FRAMES_READY 2
-+#define CMD_FATAL_ERROR 6
-+#define CMD_BAD_WIDTH 7
-+#define CMD_BAD_HEIGHT 8
-+
-+#define SEI_DATA_READY BIT(15)
-+
-+/* Picture type */
-+#define PIC_TOP_BOT 5
-+#define PIC_BOT_TOP 6
-+
-+/* Size of Motion Vector per macroblock */
-+#define MB_MV_SIZE 96
-+
-+/* Frame status data */
-+#define PIC_STRUCT_BIT 5
-+#define PIC_STRUCT_MASK GENMASK(2, 0)
-+#define BUF_IDX_MASK GENMASK(4, 0)
-+#define ERROR_FLAG BIT(9)
-+#define OFFSET_BIT 16
-+#define OFFSET_MASK GENMASK(15, 0)
-+
-+/* Bitstream parsed data */
-+#define MB_TOTAL_BIT 8
-+#define MB_TOTAL_MASK GENMASK(15, 0)
-+#define MB_WIDTH_MASK GENMASK(7, 0)
-+#define MAX_REF_BIT 24
-+#define MAX_REF_MASK GENMASK(6, 0)
-+#define AR_IDC_BIT 16
-+#define AR_IDC_MASK GENMASK(7, 0)
-+#define AR_PRESENT_FLAG BIT(0)
-+#define AR_EXTEND 0xff
-+
-+/* Buffer to send to the ESPARSER to signal End Of Stream for H.264.
-+ * This is a 16x16 encoded picture that will trigger drain firmware-side.
-+ * There is no known alternative.
-+ */
-+static const u8 eos_sequence[SZ_1K] = {
-+ 0x00, 0x00, 0x00, 0x01, 0x06, 0x05, 0xff, 0xe4, 0xdc, 0x45, 0xe9, 0xbd,
-+ 0xe6, 0xd9, 0x48, 0xb7, 0x96, 0x2c, 0xd8, 0x20, 0xd9, 0x23, 0xee, 0xef,
-+ 0x78, 0x32, 0x36, 0x34, 0x20, 0x2d, 0x20, 0x63, 0x6f, 0x72, 0x65, 0x20,
-+ 0x36, 0x37, 0x20, 0x72, 0x31, 0x31, 0x33, 0x30, 0x20, 0x38, 0x34, 0x37,
-+ 0x35, 0x39, 0x37, 0x37, 0x20, 0x2d, 0x20, 0x48, 0x2e, 0x32, 0x36, 0x34,
-+ 0x2f, 0x4d, 0x50, 0x45, 0x47, 0x2d, 0x34, 0x20, 0x41, 0x56, 0x43, 0x20,
-+ 0x63, 0x6f, 0x64, 0x65, 0x63, 0x20, 0x2d, 0x20, 0x43, 0x6f, 0x70, 0x79,
-+ 0x6c, 0x65, 0x66, 0x74, 0x20, 0x32, 0x30, 0x30, 0x33, 0x2d, 0x32, 0x30,
-+ 0x30, 0x39, 0x20, 0x2d, 0x20, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f,
-+ 0x77, 0x77, 0x77, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x6c, 0x61, 0x6e,
-+ 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x78, 0x32, 0x36, 0x34, 0x2e, 0x68, 0x74,
-+ 0x6d, 0x6c, 0x20, 0x2d, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73,
-+ 0x3a, 0x20, 0x63, 0x61, 0x62, 0x61, 0x63, 0x3d, 0x31, 0x20, 0x72, 0x65,
-+ 0x66, 0x3d, 0x31, 0x20, 0x64, 0x65, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x3d,
-+ 0x31, 0x3a, 0x30, 0x3a, 0x30, 0x20, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73,
-+ 0x65, 0x3d, 0x30, 0x78, 0x31, 0x3a, 0x30, 0x78, 0x31, 0x31, 0x31, 0x20,
-+ 0x6d, 0x65, 0x3d, 0x68, 0x65, 0x78, 0x20, 0x73, 0x75, 0x62, 0x6d, 0x65,
-+ 0x3d, 0x36, 0x20, 0x70, 0x73, 0x79, 0x5f, 0x72, 0x64, 0x3d, 0x31, 0x2e,
-+ 0x30, 0x3a, 0x30, 0x2e, 0x30, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x5f,
-+ 0x72, 0x65, 0x66, 0x3d, 0x30, 0x20, 0x6d, 0x65, 0x5f, 0x72, 0x61, 0x6e,
-+ 0x67, 0x65, 0x3d, 0x31, 0x36, 0x20, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61,
-+ 0x5f, 0x6d, 0x65, 0x3d, 0x31, 0x20, 0x74, 0x72, 0x65, 0x6c, 0x6c, 0x69,
-+ 0x73, 0x3d, 0x30, 0x20, 0x38, 0x78, 0x38, 0x64, 0x63, 0x74, 0x3d, 0x30,
-+ 0x20, 0x63, 0x71, 0x6d, 0x3d, 0x30, 0x20, 0x64, 0x65, 0x61, 0x64, 0x7a,
-+ 0x6f, 0x6e, 0x65, 0x3d, 0x32, 0x31, 0x2c, 0x31, 0x31, 0x20, 0x63, 0x68,
-+ 0x72, 0x6f, 0x6d, 0x61, 0x5f, 0x71, 0x70, 0x5f, 0x6f, 0x66, 0x66, 0x73,
-+ 0x65, 0x74, 0x3d, 0x2d, 0x32, 0x20, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64,
-+ 0x73, 0x3d, 0x31, 0x20, 0x6e, 0x72, 0x3d, 0x30, 0x20, 0x64, 0x65, 0x63,
-+ 0x69, 0x6d, 0x61, 0x74, 0x65, 0x3d, 0x31, 0x20, 0x6d, 0x62, 0x61, 0x66,
-+ 0x66, 0x3d, 0x30, 0x20, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x3d,
-+ 0x30, 0x20, 0x6b, 0x65, 0x79, 0x69, 0x6e, 0x74, 0x3d, 0x32, 0x35, 0x30,
-+ 0x20, 0x6b, 0x65, 0x79, 0x69, 0x6e, 0x74, 0x5f, 0x6d, 0x69, 0x6e, 0x3d,
-+ 0x32, 0x35, 0x20, 0x73, 0x63, 0x65, 0x6e, 0x65, 0x63, 0x75, 0x74, 0x3d,
-+ 0x34, 0x30, 0x20, 0x72, 0x63, 0x3d, 0x61, 0x62, 0x72, 0x20, 0x62, 0x69,
-+ 0x74, 0x72, 0x61, 0x74, 0x65, 0x3d, 0x31, 0x30, 0x20, 0x72, 0x61, 0x74,
-+ 0x65, 0x74, 0x6f, 0x6c, 0x3d, 0x31, 0x2e, 0x30, 0x20, 0x71, 0x63, 0x6f,
-+ 0x6d, 0x70, 0x3d, 0x30, 0x2e, 0x36, 0x30, 0x20, 0x71, 0x70, 0x6d, 0x69,
-+ 0x6e, 0x3d, 0x31, 0x30, 0x20, 0x71, 0x70, 0x6d, 0x61, 0x78, 0x3d, 0x35,
-+ 0x31, 0x20, 0x71, 0x70, 0x73, 0x74, 0x65, 0x70, 0x3d, 0x34, 0x20, 0x69,
-+ 0x70, 0x5f, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x3d, 0x31, 0x2e, 0x34, 0x30,
-+ 0x20, 0x61, 0x71, 0x3d, 0x31, 0x3a, 0x31, 0x2e, 0x30, 0x30, 0x00, 0x80,
-+ 0x00, 0x00, 0x00, 0x01, 0x67, 0x4d, 0x40, 0x0a, 0x9a, 0x74, 0xf4, 0x20,
-+ 0x00, 0x00, 0x03, 0x00, 0x20, 0x00, 0x00, 0x06, 0x51, 0xe2, 0x44, 0xd4,
-+ 0x00, 0x00, 0x00, 0x01, 0x68, 0xee, 0x32, 0xc8, 0x00, 0x00, 0x00, 0x01,
-+ 0x65, 0x88, 0x80, 0x20, 0x00, 0x08, 0x7f, 0xea, 0x6a, 0xe2, 0x99, 0xb6,
-+ 0x57, 0xae, 0x49, 0x30, 0xf5, 0xfe, 0x5e, 0x46, 0x0b, 0x72, 0x44, 0xc4,
-+ 0xe1, 0xfc, 0x62, 0xda, 0xf1, 0xfb, 0xa2, 0xdb, 0xd6, 0xbe, 0x5c, 0xd7,
-+ 0x24, 0xa3, 0xf5, 0xb9, 0x2f, 0x57, 0x16, 0x49, 0x75, 0x47, 0x77, 0x09,
-+ 0x5c, 0xa1, 0xb4, 0xc3, 0x4f, 0x60, 0x2b, 0xb0, 0x0c, 0xc8, 0xd6, 0x66,
-+ 0xba, 0x9b, 0x82, 0x29, 0x33, 0x92, 0x26, 0x99, 0x31, 0x1c, 0x7f, 0x9b
-+};
-+
-+static const u8 *codec_h264_eos_sequence(u32 *len)
-+{
-+ *len = ARRAY_SIZE(eos_sequence);
-+ return eos_sequence;
-+}
-+
-+struct codec_h264 {
-+ /* H.264 decoder requires an extended firmware */
-+ void *ext_fw_vaddr;
-+ dma_addr_t ext_fw_paddr;
-+
-+ /* Buffer for the H.264 Workspace */
-+ void *workspace_vaddr;
-+ dma_addr_t workspace_paddr;
-+
-+ /* Buffer for the H.264 references MV */
-+ void *ref_vaddr;
-+ dma_addr_t ref_paddr;
-+ u32 ref_size;
-+
-+ /* Buffer for parsed SEI data */
-+ void *sei_vaddr;
-+ dma_addr_t sei_paddr;
-+
-+ u32 mb_width;
-+ u32 mb_height;
-+ u32 max_refs;
-+};
-+
-+static int codec_h264_can_recycle(struct amvdec_core *core)
-+{
-+ return !amvdec_read_dos(core, AV_SCRATCH_7) ||
-+ !amvdec_read_dos(core, AV_SCRATCH_8);
-+}
-+
-+static void codec_h264_recycle(struct amvdec_core *core, u32 buf_idx)
-+{
-+ /* Tell the decoder he can recycle this buffer.
-+ * AV_SCRATCH_8 serves the same purpose.
-+ */
-+ if (!amvdec_read_dos(core, AV_SCRATCH_7))
-+ amvdec_write_dos(core, AV_SCRATCH_7, buf_idx + 1);
-+ else
-+ amvdec_write_dos(core, AV_SCRATCH_8, buf_idx + 1);
-+}
-+
-+static int codec_h264_start(struct amvdec_session *sess) {
-+ u32 workspace_offset;
-+ struct amvdec_core *core = sess->core;
-+ struct codec_h264 *h264 = sess->priv;
-+
-+ /* Allocate some memory for the H.264 decoder's state */
-+ h264->workspace_vaddr = dma_alloc_coherent(core->dev, SIZE_WORKSPACE,
-+ &h264->workspace_paddr, GFP_KERNEL);
-+ if (!h264->workspace_vaddr) {
-+ dev_err(core->dev, "Failed to alloc H.264 Workspace\n");
-+ return -ENOMEM;
-+ }
-+
-+ /* Allocate some memory for the H.264 SEI dump */
-+ h264->sei_vaddr = dma_alloc_coherent(core->dev, SIZE_SEI,
-+ &h264->sei_paddr, GFP_KERNEL);
-+ if (!h264->sei_vaddr) {
-+ dev_err(core->dev, "Failed to alloc H.264 SEI\n");
-+ return -ENOMEM;
-+ }
-+
-+ amvdec_write_dos_bits(core, POWER_CTL_VLD, BIT(9) | BIT(6));
-+
-+ workspace_offset = h264->workspace_paddr - WORKSPACE_BUF_OFFSET;
-+ amvdec_write_dos(core, AV_SCRATCH_1, workspace_offset);
-+ amvdec_write_dos(core, AV_SCRATCH_G, h264->ext_fw_paddr);
-+ amvdec_write_dos(core, AV_SCRATCH_I, h264->sei_paddr - workspace_offset);
-+
-+ /* Enable "error correction" */
-+ amvdec_write_dos(core, AV_SCRATCH_F,
-+ (amvdec_read_dos(core, AV_SCRATCH_F) & 0xffffffc3) |
-+ BIT(4) | BIT(7));
-+
-+ amvdec_write_dos(core, MDEC_PIC_DC_THRESH, 0x404038aa);
-+
-+ return 0;
-+}
-+
-+static int codec_h264_stop(struct amvdec_session *sess)
-+{
-+ struct codec_h264 *h264 = sess->priv;
-+ struct amvdec_core *core = sess->core;
-+
-+ if (h264->ext_fw_vaddr)
-+ dma_free_coherent(core->dev, SIZE_EXT_FW,
-+ h264->ext_fw_vaddr, h264->ext_fw_paddr);
-+
-+ if (h264->workspace_vaddr)
-+ dma_free_coherent(core->dev, SIZE_WORKSPACE,
-+ h264->workspace_vaddr, h264->workspace_paddr);
-+
-+ if (h264->ref_vaddr)
-+ dma_free_coherent(core->dev, h264->ref_size,
-+ h264->ref_vaddr, h264->ref_paddr);
-+
-+ if (h264->sei_vaddr)
-+ dma_free_coherent(core->dev, SIZE_SEI,
-+ h264->sei_vaddr, h264->sei_paddr);
-+
-+ return 0;
-+}
-+
-+static int codec_h264_load_extended_firmware(struct amvdec_session *sess,
-+ const u8 *data, u32 len)
-+{
-+ struct codec_h264 *h264;
-+ struct amvdec_core *core = sess->core;
-+
-+ if (len < SIZE_EXT_FW)
-+ return -EINVAL;
-+
-+ h264 = kzalloc(sizeof(*h264), GFP_KERNEL);
-+ if (!h264)
-+ return -ENOMEM;
-+
-+ h264->ext_fw_vaddr = dma_alloc_coherent(core->dev, SIZE_EXT_FW,
-+ &h264->ext_fw_paddr, GFP_KERNEL);
-+ if (!h264->ext_fw_vaddr) {
-+ dev_err(core->dev, "Failed to alloc H.264 extended fw\n");
-+ kfree(h264);
-+ return -ENOMEM;
-+ }
-+
-+ memcpy(h264->ext_fw_vaddr, data, SIZE_EXT_FW);
-+ sess->priv = h264;
-+
-+ return 0;
-+}
-+
-+static const struct v4l2_fract par_table[] = {
-+ { 1, 1 }, { 1, 1 }, { 12, 11 }, { 10, 11 },
-+ { 16, 11 }, { 40, 33 }, { 24, 11 }, { 20, 11 },
-+ { 32, 11 }, { 80, 33 }, { 18, 11 }, { 15, 11 },
-+ { 64, 33 }, { 160, 99 }, { 4, 3 }, { 3, 2 },
-+ { 2, 1 }
-+};
-+
-+static void codec_h264_set_par(struct amvdec_session *sess)
-+{
-+ struct amvdec_core *core = sess->core;
-+ u32 seq_info = amvdec_read_dos(core, AV_SCRATCH_2);
-+ u32 ar_idc = (seq_info >> AR_IDC_BIT) & AR_IDC_MASK;
-+
-+ if (!(seq_info & AR_PRESENT_FLAG))
-+ return;
-+
-+ if (ar_idc == AR_EXTEND) {
-+ u32 ar_info = amvdec_read_dos(core, AV_SCRATCH_3);
-+ sess->pixelaspect.numerator = ar_info & 0xffff;
-+ sess->pixelaspect.denominator = (ar_info >> 16) & 0xffff;
-+ return;
-+ }
-+
-+ if (ar_idc >= ARRAY_SIZE(par_table))
-+ return;
-+
-+ sess->pixelaspect = par_table[ar_idc];
-+}
-+
-+static void codec_h264_resume(struct amvdec_session *sess)
-+{
-+ struct amvdec_core *core = sess->core;
-+ struct codec_h264 *h264 = sess->priv;
-+ u32 mb_width, mb_height, mb_total;
-+
-+ amvdec_set_canvases(sess, (u32[]){ ANC0_CANVAS_ADDR, 0 },
-+ (u32[]){ 24, 0 });
-+
-+ dev_dbg(core->dev,
-+ "max_refs = %u; actual_dpb_size = %u\n",
-+ h264->max_refs, sess->num_dst_bufs);
-+
-+ /* Align to a multiple of 4 macroblocks */
-+ mb_width = ALIGN(h264->mb_width, 4);
-+ mb_height = ALIGN(h264->mb_height, 4);
-+ mb_total = mb_width * mb_height;
-+
-+ h264->ref_size = mb_total * MB_MV_SIZE * h264->max_refs;
-+ h264->ref_vaddr = dma_alloc_coherent(core->dev, h264->ref_size,
-+ &h264->ref_paddr, GFP_KERNEL);
-+ if (!h264->ref_vaddr) {
-+ dev_err(core->dev, "Failed to alloc refs (%u)\n",
-+ h264->ref_size);
-+ amvdec_abort(sess);
-+ return;
-+ }
-+
-+ /* Address to store the references' MVs */
-+ amvdec_write_dos(core, AV_SCRATCH_1, h264->ref_paddr);
-+ /* End of ref MV */
-+ amvdec_write_dos(core, AV_SCRATCH_4, h264->ref_paddr + h264->ref_size);
-+
-+ amvdec_write_dos(core, AV_SCRATCH_0, (h264->max_refs << 24) |
-+ (sess->num_dst_bufs << 16) |
-+ ((h264->max_refs - 1) << 8));
-+}
-+
-+/* Configure the H.264 decoder when the parser detected a parameter set change
-+ */
-+static void codec_h264_src_change(struct amvdec_session *sess)
-+{
-+ struct amvdec_core *core = sess->core;
-+ struct codec_h264 *h264 = sess->priv;
-+ u32 parsed_info, mb_total;
-+ u32 crop_infor, crop_bottom, crop_right;
-+ u32 frame_width, frame_height;
-+
-+ sess->keyframe_found = 1;
-+
-+ parsed_info = amvdec_read_dos(core, AV_SCRATCH_1);
-+
-+ /* Total number of 16x16 macroblocks */
-+ mb_total = (parsed_info >> MB_TOTAL_BIT) & MB_TOTAL_MASK;
-+ /* Number of macroblocks per line */
-+ h264->mb_width = parsed_info & MB_WIDTH_MASK;
-+ /* Number of macroblock lines */
-+ h264->mb_height = mb_total / h264->mb_width;
-+
-+ h264->max_refs = ((parsed_info >> MAX_REF_BIT) & MAX_REF_MASK) + 1;
-+
-+ crop_infor = amvdec_read_dos(core, AV_SCRATCH_6);
-+ crop_bottom = (crop_infor & 0xff);
-+ crop_right = (crop_infor >> 16) & 0xff;
-+
-+ frame_width = h264->mb_width * 16 - crop_right;
-+ frame_height = h264->mb_height * 16 - crop_bottom;
-+
-+ dev_info(core->dev, "frame: %ux%u; crop: %u %u\n",
-+ frame_width, frame_height, crop_right, crop_bottom);
-+
-+ codec_h264_set_par(sess);
-+ amvdec_src_change(sess, frame_width, frame_height, h264->max_refs + 5);
-+}
-+
-+/**
-+ * The offset is split in half in 2 different registers
-+ */
-+static u32 get_offset_msb(struct amvdec_core *core, int frame_num)
-+{
-+ int take_msb = frame_num % 2;
-+ int reg_offset = (frame_num / 2) * 4;
-+ u32 offset_msb = amvdec_read_dos(core, AV_SCRATCH_A + reg_offset);
-+
-+ if (take_msb)
-+ return offset_msb & 0xffff0000;
-+
-+ return (offset_msb & 0x0000ffff) << 16;
-+}
-+
-+static void codec_h264_frames_ready(struct amvdec_session *sess, u32 status)
-+{
-+ struct amvdec_core *core = sess->core;
-+ int error_count;
-+ int num_frames;
-+ int i;
-+
-+ error_count = amvdec_read_dos(core, AV_SCRATCH_D);
-+ num_frames = (status >> 8) & 0xff;
-+ if (error_count) {
-+ dev_warn(core->dev,
-+ "decoder error(s) happened, count %d\n", error_count);
-+ amvdec_write_dos(core, AV_SCRATCH_D, 0);
-+ }
-+
-+ for (i = 0; i < num_frames; i++) {
-+ u32 frame_status = amvdec_read_dos(core, AV_SCRATCH_1 + i * 4);
-+ u32 buffer_index = frame_status & BUF_IDX_MASK;
-+ u32 pic_struct = (frame_status >> PIC_STRUCT_BIT) &
-+ PIC_STRUCT_MASK;
-+ u32 offset = (frame_status >> OFFSET_BIT) & OFFSET_MASK;
-+ u32 field = V4L2_FIELD_NONE;
-+
-+ /* A buffer decode error means it was decoded,
-+ * but part of the picture will have artifacts.
-+ * Typical reason is a temporarily corrupted bitstream
-+ */
-+ if (frame_status & ERROR_FLAG)
-+ dev_dbg(core->dev, "Buffer %d decode error\n",
-+ buffer_index);
-+
-+ if (pic_struct == PIC_TOP_BOT)
-+ field = V4L2_FIELD_INTERLACED_TB;
-+ else if (pic_struct == PIC_BOT_TOP)
-+ field = V4L2_FIELD_INTERLACED_BT;
-+
-+ offset |= get_offset_msb(core, i);
-+ amvdec_dst_buf_done_idx(sess, buffer_index, offset, field);
-+ }
-+}
-+
-+static irqreturn_t codec_h264_threaded_isr(struct amvdec_session *sess)
-+{
-+ struct amvdec_core *core = sess->core;
-+ u32 status;
-+ u32 size;
-+ u8 cmd;
-+
-+ status = amvdec_read_dos(core, AV_SCRATCH_0);
-+ cmd = status & CMD_MASK;
-+
-+ switch (cmd) {
-+ case CMD_SRC_CHANGE:
-+ codec_h264_src_change(sess);
-+ break;
-+ case CMD_FRAMES_READY:
-+ codec_h264_frames_ready(sess, status);
-+ break;
-+ case CMD_FATAL_ERROR:
-+ dev_err(core->dev, "H.264 decoder fatal error\n");
-+ goto abort;
-+ case CMD_BAD_WIDTH:
-+ size = (amvdec_read_dos(core, AV_SCRATCH_1) + 1) * 16;
-+ dev_err(core->dev, "Unsupported video width: %u\n", size);
-+ goto abort;
-+ case CMD_BAD_HEIGHT:
-+ size = (amvdec_read_dos(core, AV_SCRATCH_1) + 1) * 16;
-+ dev_err(core->dev, "Unsupported video height: %u\n", size);
-+ goto abort;
-+ case 0: /* Unused but not worth printing for */
-+ case 9:
-+ break;
-+ default:
-+ dev_info(core->dev, "Unexpected H264 ISR: %08X\n", cmd);
-+ break;
-+ }
-+
-+ if (cmd && cmd != CMD_SRC_CHANGE)
-+ amvdec_write_dos(core, AV_SCRATCH_0, 0);
-+
-+ /* Decoder has some SEI data for us ; ignore */
-+ if (amvdec_read_dos(core, AV_SCRATCH_J) & SEI_DATA_READY)
-+ amvdec_write_dos(core, AV_SCRATCH_J, 0);
-+
-+ return IRQ_HANDLED;
-+abort:
-+ amvdec_abort(sess);
-+ return IRQ_HANDLED;
-+}
-+
-+static irqreturn_t codec_h264_isr(struct amvdec_session *sess)
-+{
-+ struct amvdec_core *core = sess->core;
-+
-+ amvdec_write_dos(core, ASSIST_MBOX1_CLR_REG, 1);
-+
-+ return IRQ_WAKE_THREAD;
-+}
-+
-+struct amvdec_codec_ops codec_h264_ops = {
-+ .start = codec_h264_start,
-+ .stop = codec_h264_stop,
-+ .load_extended_firmware = codec_h264_load_extended_firmware,
-+ .isr = codec_h264_isr,
-+ .threaded_isr = codec_h264_threaded_isr,
-+ .can_recycle = codec_h264_can_recycle,
-+ .recycle = codec_h264_recycle,
-+ .eos_sequence = codec_h264_eos_sequence,
-+ .resume = codec_h264_resume,
-+};
-diff --git a/drivers/media/platform/meson/vdec/codec_h264.h b/drivers/media/platform/meson/vdec/codec_h264.h
-new file mode 100644
-index 0000000..7a15976
---- /dev/null
-+++ b/drivers/media/platform/meson/vdec/codec_h264.h
-@@ -0,0 +1,13 @@
-+/* SPDX-License-Identifier: GPL-2.0+ */
-+/*
-+ * Copyright (C) 2018 Maxime Jourdan <maxi.jourdan@wanadoo.fr>
-+ */
-+
-+#ifndef __MESON_VDEC_CODEC_H264_H_
-+#define __MESON_VDEC_CODEC_H264_H_
-+
-+#include "vdec.h"
-+
-+extern struct amvdec_codec_ops codec_h264_ops;
-+
-+#endif
-\ No newline at end of file
-diff --git a/drivers/media/platform/meson/vdec/vdec_platform.c b/drivers/media/platform/meson/vdec/vdec_platform.c
-index 291f1ee..baecf59 100644
---- a/drivers/media/platform/meson/vdec/vdec_platform.c
-+++ b/drivers/media/platform/meson/vdec/vdec_platform.c
-@@ -9,9 +9,20 @@
-
- #include "vdec_1.h"
- #include "codec_mpeg12.h"
-+#include "codec_h264.h"
-
- static const struct amvdec_format vdec_formats_gxbb[] = {
- {
-+ .pixfmt = V4L2_PIX_FMT_H264,
-+ .min_buffers = 2,
-+ .max_buffers = 24,
-+ .max_width = 1920,
-+ .max_height = 1080,
-+ .vdec_ops = &vdec_1_ops,
-+ .codec_ops = &codec_h264_ops,
-+ .firmware_path = "meson/gxbb/vh264_mc",
-+ .pixfmts_cap = { V4L2_PIX_FMT_NV12M, 0 },
-+ }, {
- .pixfmt = V4L2_PIX_FMT_MPEG1,
- .min_buffers = 8,
- .max_buffers = 8,
-@@ -38,6 +49,16 @@ static const struct amvdec_format vdec_formats_gxbb[] = {
-
- static const struct amvdec_format vdec_formats_gxl[] = {
- {
-+ .pixfmt = V4L2_PIX_FMT_H264,
-+ .min_buffers = 2,
-+ .max_buffers = 24,
-+ .max_width = 3840,
-+ .max_height = 2160,
-+ .vdec_ops = &vdec_1_ops,
-+ .codec_ops = &codec_h264_ops,
-+ .firmware_path = "meson/gxl/vh264_mc",
-+ .pixfmts_cap = { V4L2_PIX_FMT_NV12M, 0 },
-+ }, {
- .pixfmt = V4L2_PIX_FMT_MPEG1,
- .min_buffers = 8,
- .max_buffers = 8,
-@@ -64,6 +85,16 @@ static const struct amvdec_format vdec_formats_gxl[] = {
-
- static const struct amvdec_format vdec_formats_gxm[] = {
- {
-+ .pixfmt = V4L2_PIX_FMT_H264,
-+ .min_buffers = 2,
-+ .max_buffers = 24,
-+ .max_width = 3840,
-+ .max_height = 2160,
-+ .vdec_ops = &vdec_1_ops,
-+ .codec_ops = &codec_h264_ops,
-+ .firmware_path = "meson/gxm/vh264_mc",
-+ .pixfmts_cap = { V4L2_PIX_FMT_NV12M, 0 },
-+ }, {
- .pixfmt = V4L2_PIX_FMT_MPEG1,
- .min_buffers = 8,
- .max_buffers = 8,
diff --git a/testing/linux-amlogic/0041-media-meson-vdec-add-MPEG4-decoding-support.patch b/testing/linux-amlogic/0041-media-meson-vdec-add-MPEG4-decoding-support.patch
deleted file mode 100644
index 01fd5ae030f..00000000000
--- a/testing/linux-amlogic/0041-media-meson-vdec-add-MPEG4-decoding-support.patch
+++ /dev/null
@@ -1,313 +0,0 @@
-From e222a1cf4bd62745407a9404565d76b8a5770f12 Mon Sep 17 00:00:00 2001
-From: Maxime Jourdan <mjourdan@baylibre.com>
-Date: Wed, 29 Aug 2018 16:01:55 +0200
-Subject: [PATCH] media: meson: vdec: add MPEG4 decoding support
-
-Add support for V4L2_PIX_FMT_MPEG4, V4L2_PIX_FMT_XVID and
-V4L2_PIX_FMT_H.263
-
----
- drivers/media/platform/meson/vdec/Makefile | 2 +-
- drivers/media/platform/meson/vdec/codec_mpeg4.c | 139 ++++++++++++++++++++++
- drivers/media/platform/meson/vdec/codec_mpeg4.h | 13 ++
- drivers/media/platform/meson/vdec/vdec_platform.c | 91 ++++++++++++++
- 4 files changed, 244 insertions(+), 1 deletion(-)
- create mode 100644 drivers/media/platform/meson/vdec/codec_mpeg4.c
- create mode 100644 drivers/media/platform/meson/vdec/codec_mpeg4.h
-
-diff --git a/drivers/media/platform/meson/vdec/Makefile b/drivers/media/platform/meson/vdec/Makefile
-index 01dc960..bb7a134 100644
---- a/drivers/media/platform/meson/vdec/Makefile
-+++ b/drivers/media/platform/meson/vdec/Makefile
-@@ -3,6 +3,6 @@
-
- meson-vdec-objs = esparser.o vdec.o vdec_ctrls.o vdec_helpers.o vdec_platform.o
- meson-vdec-objs += vdec_1.o
--meson-vdec-objs += codec_mpeg12.o codec_h264.o
-+meson-vdec-objs += codec_mpeg12.o codec_h264.o codec_mpeg4.o
-
- obj-$(CONFIG_VIDEO_MESON_VDEC) += meson-vdec.o
-diff --git a/drivers/media/platform/meson/vdec/codec_mpeg4.c b/drivers/media/platform/meson/vdec/codec_mpeg4.c
-new file mode 100644
-index 0000000..1d574e5
---- /dev/null
-+++ b/drivers/media/platform/meson/vdec/codec_mpeg4.c
-@@ -0,0 +1,139 @@
-+// SPDX-License-Identifier: GPL-2.0+
-+/*
-+ * Copyright (C) 2018 Maxime Jourdan <maxi.jourdan@wanadoo.fr>
-+ */
-+
-+#include <media/v4l2-mem2mem.h>
-+#include <media/videobuf2-dma-contig.h>
-+
-+#include "vdec_helpers.h"
-+#include "dos_regs.h"
-+
-+#define SIZE_WORKSPACE SZ_1M
-+/* Offset added by firmware, to substract from workspace paddr */
-+#define DCAC_BUFF_START_IP 0x02b00000
-+
-+/* map firmware registers to known MPEG4 functions */
-+#define MREG_BUFFERIN AV_SCRATCH_8
-+#define MREG_BUFFEROUT AV_SCRATCH_9
-+#define MP4_NOT_CODED_CNT AV_SCRATCH_A
-+#define MP4_OFFSET_REG AV_SCRATCH_C
-+#define MEM_OFFSET_REG AV_SCRATCH_F
-+#define MREG_FATAL_ERROR AV_SCRATCH_L
-+
-+#define BUF_IDX_MASK GENMASK(2, 0)
-+#define INTERLACE_FLAG BIT(7)
-+#define TOP_FIELD_FIRST_FLAG BIT(6)
-+
-+struct codec_mpeg4 {
-+ /* Buffer for the MPEG4 Workspace */
-+ void *workspace_vaddr;
-+ dma_addr_t workspace_paddr;
-+};
-+
-+static int codec_mpeg4_can_recycle(struct amvdec_core *core)
-+{
-+ return !amvdec_read_dos(core, MREG_BUFFERIN);
-+}
-+
-+static void codec_mpeg4_recycle(struct amvdec_core *core, u32 buf_idx)
-+{
-+ amvdec_write_dos(core, MREG_BUFFERIN, ~BIT(buf_idx));
-+}
-+
-+static int codec_mpeg4_start(struct amvdec_session *sess) {
-+ struct amvdec_core *core = sess->core;
-+ struct codec_mpeg4 *mpeg4 = sess->priv;
-+ int ret;
-+
-+ mpeg4 = kzalloc(sizeof(*mpeg4), GFP_KERNEL);
-+ if (!mpeg4)
-+ return -ENOMEM;
-+
-+ /* Allocate some memory for the MPEG4 decoder's state */
-+ mpeg4->workspace_vaddr = dma_alloc_coherent(core->dev, SIZE_WORKSPACE,
-+ &mpeg4->workspace_paddr,
-+ GFP_KERNEL);
-+ if (!mpeg4->workspace_vaddr) {
-+ dev_err(core->dev, "Failed to request MPEG4 Workspace\n");
-+ ret = -ENOMEM;
-+ goto free_mpeg4;
-+ }
-+
-+ /* Canvas regs: AV_SCRATCH_0-AV_SCRATCH_4;AV_SCRATCH_G-AV_SCRATCH_J */
-+ amvdec_set_canvases(sess, (u32[]){ AV_SCRATCH_0, AV_SCRATCH_G, 0 },
-+ (u32[]){ 4, 4, 0 });
-+
-+ amvdec_write_dos(core, MEM_OFFSET_REG,
-+ mpeg4->workspace_paddr - DCAC_BUFF_START_IP);
-+ amvdec_write_dos(core, PSCALE_CTRL, 0);
-+ amvdec_write_dos(core, MP4_NOT_CODED_CNT, 0);
-+ amvdec_write_dos(core, MREG_BUFFERIN, 0);
-+ amvdec_write_dos(core, MREG_BUFFEROUT, 0);
-+ amvdec_write_dos(core, MREG_FATAL_ERROR, 0);
-+ amvdec_write_dos(core, MDEC_PIC_DC_THRESH, 0x404038aa);
-+
-+ sess->keyframe_found = 1;
-+ sess->priv = mpeg4;
-+
-+ return 0;
-+
-+free_mpeg4:
-+ kfree(mpeg4);
-+ return ret;
-+}
-+
-+static int codec_mpeg4_stop(struct amvdec_session *sess)
-+{
-+ struct codec_mpeg4 *mpeg4 = sess->priv;
-+ struct amvdec_core *core = sess->core;
-+
-+ if (mpeg4->workspace_vaddr) {
-+ dma_free_coherent(core->dev, SIZE_WORKSPACE,
-+ mpeg4->workspace_vaddr,
-+ mpeg4->workspace_paddr);
-+ mpeg4->workspace_vaddr = 0;
-+ }
-+
-+ return 0;
-+}
-+
-+static irqreturn_t codec_mpeg4_isr(struct amvdec_session *sess)
-+{
-+ struct amvdec_core *core = sess->core;
-+ u32 reg;
-+ u32 buffer_index;
-+ u32 field = V4L2_FIELD_NONE;
-+
-+ reg = amvdec_read_dos(core, MREG_FATAL_ERROR);
-+ if (reg == 1) {
-+ dev_err(core->dev, "mpeg4 fatal error\n");
-+ amvdec_abort(sess);
-+ return IRQ_HANDLED;
-+ }
-+
-+ reg = amvdec_read_dos(core, MREG_BUFFEROUT);
-+ if (!reg)
-+ goto end;
-+
-+ buffer_index = reg & BUF_IDX_MASK;
-+ if (reg & INTERLACE_FLAG)
-+ field = (reg & TOP_FIELD_FIRST_FLAG) ?
-+ V4L2_FIELD_INTERLACED_TB :
-+ V4L2_FIELD_INTERLACED_BT;
-+
-+ amvdec_dst_buf_done_idx(sess, buffer_index, -1, field);
-+ amvdec_write_dos(core, MREG_BUFFEROUT, 0);
-+
-+end:
-+ amvdec_write_dos(core, ASSIST_MBOX1_CLR_REG, 1);
-+ return IRQ_HANDLED;
-+}
-+
-+struct amvdec_codec_ops codec_mpeg4_ops = {
-+ .start = codec_mpeg4_start,
-+ .stop = codec_mpeg4_stop,
-+ .isr = codec_mpeg4_isr,
-+ .can_recycle = codec_mpeg4_can_recycle,
-+ .recycle = codec_mpeg4_recycle,
-+};
-diff --git a/drivers/media/platform/meson/vdec/codec_mpeg4.h b/drivers/media/platform/meson/vdec/codec_mpeg4.h
-new file mode 100644
-index 0000000..b91b26413
---- /dev/null
-+++ b/drivers/media/platform/meson/vdec/codec_mpeg4.h
-@@ -0,0 +1,13 @@
-+/* SPDX-License-Identifier: GPL-2.0+ */
-+/*
-+ * Copyright (C) 2018 Maxime Jourdan <maxi.jourdan@wanadoo.fr>
-+ */
-+
-+#ifndef __MESON_VDEC_CODEC_MPEG4_H_
-+#define __MESON_VDEC_CODEC_MPEG4_H_
-+
-+#include "vdec.h"
-+
-+extern struct amvdec_codec_ops codec_mpeg4_ops;
-+
-+#endif
-\ No newline at end of file
-diff --git a/drivers/media/platform/meson/vdec/vdec_platform.c b/drivers/media/platform/meson/vdec/vdec_platform.c
-index baecf59..80b43fd 100644
---- a/drivers/media/platform/meson/vdec/vdec_platform.c
-+++ b/drivers/media/platform/meson/vdec/vdec_platform.c
-@@ -10,9 +10,40 @@
- #include "vdec_1.h"
- #include "codec_mpeg12.h"
- #include "codec_h264.h"
-+#include "codec_mpeg4.h"
-
- static const struct amvdec_format vdec_formats_gxbb[] = {
- {
-+ .pixfmt = V4L2_PIX_FMT_MPEG4,
-+ .min_buffers = 8,
-+ .max_buffers = 8,
-+ .max_width = 1920,
-+ .max_height = 1080,
-+ .vdec_ops = &vdec_1_ops,
-+ .codec_ops = &codec_mpeg4_ops,
-+ .firmware_path = "meson/gx/vmpeg4_mc_5",
-+ .pixfmts_cap = { V4L2_PIX_FMT_NV12M, V4L2_PIX_FMT_YUV420M, 0 },
-+ }, {
-+ .pixfmt = V4L2_PIX_FMT_H263,
-+ .min_buffers = 8,
-+ .max_buffers = 8,
-+ .max_width = 1920,
-+ .max_height = 1080,
-+ .vdec_ops = &vdec_1_ops,
-+ .codec_ops = &codec_mpeg4_ops,
-+ .firmware_path = "meson/gx/h263_mc",
-+ .pixfmts_cap = { V4L2_PIX_FMT_NV12M, V4L2_PIX_FMT_YUV420M, 0 },
-+ }, {
-+ .pixfmt = V4L2_PIX_FMT_XVID,
-+ .min_buffers = 8,
-+ .max_buffers = 8,
-+ .max_width = 1920,
-+ .max_height = 1080,
-+ .vdec_ops = &vdec_1_ops,
-+ .codec_ops = &codec_mpeg4_ops,
-+ .firmware_path = "meson/gx/vmpeg4_mc_5",
-+ .pixfmts_cap = { V4L2_PIX_FMT_NV12M, V4L2_PIX_FMT_YUV420M, 0 },
-+ }, {
- .pixfmt = V4L2_PIX_FMT_H264,
- .min_buffers = 2,
- .max_buffers = 24,
-@@ -49,6 +80,36 @@ static const struct amvdec_format vdec_formats_gxbb[] = {
-
- static const struct amvdec_format vdec_formats_gxl[] = {
- {
-+ .pixfmt = V4L2_PIX_FMT_MPEG4,
-+ .min_buffers = 8,
-+ .max_buffers = 8,
-+ .max_width = 1920,
-+ .max_height = 1080,
-+ .vdec_ops = &vdec_1_ops,
-+ .codec_ops = &codec_mpeg4_ops,
-+ .firmware_path = "meson/gx/vmpeg4_mc_5",
-+ .pixfmts_cap = { V4L2_PIX_FMT_NV12M, V4L2_PIX_FMT_YUV420M, 0 },
-+ }, {
-+ .pixfmt = V4L2_PIX_FMT_H263,
-+ .min_buffers = 8,
-+ .max_buffers = 8,
-+ .max_width = 1920,
-+ .max_height = 1080,
-+ .vdec_ops = &vdec_1_ops,
-+ .codec_ops = &codec_mpeg4_ops,
-+ .firmware_path = "meson/gx/h263_mc",
-+ .pixfmts_cap = { V4L2_PIX_FMT_NV12M, V4L2_PIX_FMT_YUV420M, 0 },
-+ }, {
-+ .pixfmt = V4L2_PIX_FMT_XVID,
-+ .min_buffers = 8,
-+ .max_buffers = 8,
-+ .max_width = 1920,
-+ .max_height = 1080,
-+ .vdec_ops = &vdec_1_ops,
-+ .codec_ops = &codec_mpeg4_ops,
-+ .firmware_path = "meson/gx/vmpeg4_mc_5",
-+ .pixfmts_cap = { V4L2_PIX_FMT_NV12M, V4L2_PIX_FMT_YUV420M, 0 },
-+ }, {
- .pixfmt = V4L2_PIX_FMT_H264,
- .min_buffers = 2,
- .max_buffers = 24,
-@@ -85,6 +146,36 @@ static const struct amvdec_format vdec_formats_gxl[] = {
-
- static const struct amvdec_format vdec_formats_gxm[] = {
- {
-+ .pixfmt = V4L2_PIX_FMT_MPEG4,
-+ .min_buffers = 8,
-+ .max_buffers = 8,
-+ .max_width = 1920,
-+ .max_height = 1080,
-+ .vdec_ops = &vdec_1_ops,
-+ .codec_ops = &codec_mpeg4_ops,
-+ .firmware_path = "meson/gx/vmpeg4_mc_5",
-+ .pixfmts_cap = { V4L2_PIX_FMT_NV12M, V4L2_PIX_FMT_YUV420M, 0 },
-+ }, {
-+ .pixfmt = V4L2_PIX_FMT_H263,
-+ .min_buffers = 8,
-+ .max_buffers = 8,
-+ .max_width = 1920,
-+ .max_height = 1080,
-+ .vdec_ops = &vdec_1_ops,
-+ .codec_ops = &codec_mpeg4_ops,
-+ .firmware_path = "meson/gx/h263_mc",
-+ .pixfmts_cap = { V4L2_PIX_FMT_NV12M, V4L2_PIX_FMT_YUV420M, 0 },
-+ }, {
-+ .pixfmt = V4L2_PIX_FMT_XVID,
-+ .min_buffers = 8,
-+ .max_buffers = 8,
-+ .max_width = 1920,
-+ .max_height = 1080,
-+ .vdec_ops = &vdec_1_ops,
-+ .codec_ops = &codec_mpeg4_ops,
-+ .firmware_path = "meson/gx/vmpeg4_mc_5",
-+ .pixfmts_cap = { V4L2_PIX_FMT_NV12M, V4L2_PIX_FMT_YUV420M, 0 },
-+ }, {
- .pixfmt = V4L2_PIX_FMT_H264,
- .min_buffers = 2,
- .max_buffers = 24,
diff --git a/testing/linux-amlogic/0042-media-meson-vdec-add-MJPEG-decoding-support.patch b/testing/linux-amlogic/0042-media-meson-vdec-add-MJPEG-decoding-support.patch
deleted file mode 100644
index b72f817fe66..00000000000
--- a/testing/linux-amlogic/0042-media-meson-vdec-add-MJPEG-decoding-support.patch
+++ /dev/null
@@ -1,253 +0,0 @@
-From 9a662159440cf5e0f55275ef63588e35c91c581e Mon Sep 17 00:00:00 2001
-From: Maxime Jourdan <mjourdan@baylibre.com>
-Date: Sun, 21 Oct 2018 15:14:27 +0200
-Subject: [PATCH] media: meson: vdec: add MJPEG decoding support
-
-Add support for V4L2_PIX_FMT_MJPEG
-
----
- drivers/media/platform/meson/vdec/Makefile | 2 +-
- drivers/media/platform/meson/vdec/codec_mjpeg.c | 140 ++++++++++++++++++++++
- drivers/media/platform/meson/vdec/codec_mjpeg.h | 13 ++
- drivers/media/platform/meson/vdec/vdec_platform.c | 31 +++++
- 4 files changed, 185 insertions(+), 1 deletion(-)
- create mode 100644 drivers/media/platform/meson/vdec/codec_mjpeg.c
- create mode 100644 drivers/media/platform/meson/vdec/codec_mjpeg.h
-
-diff --git a/drivers/media/platform/meson/vdec/Makefile b/drivers/media/platform/meson/vdec/Makefile
-index bb7a134..acf07f3 100644
---- a/drivers/media/platform/meson/vdec/Makefile
-+++ b/drivers/media/platform/meson/vdec/Makefile
-@@ -3,6 +3,6 @@
-
- meson-vdec-objs = esparser.o vdec.o vdec_ctrls.o vdec_helpers.o vdec_platform.o
- meson-vdec-objs += vdec_1.o
--meson-vdec-objs += codec_mpeg12.o codec_h264.o codec_mpeg4.o
-+meson-vdec-objs += codec_mpeg12.o codec_h264.o codec_mpeg4.o codec_mjpeg.o
-
- obj-$(CONFIG_VIDEO_MESON_VDEC) += meson-vdec.o
-diff --git a/drivers/media/platform/meson/vdec/codec_mjpeg.c b/drivers/media/platform/meson/vdec/codec_mjpeg.c
-new file mode 100644
-index 0000000..abea9e3
---- /dev/null
-+++ b/drivers/media/platform/meson/vdec/codec_mjpeg.c
-@@ -0,0 +1,140 @@
-+// SPDX-License-Identifier: GPL-2.0+
-+/*
-+ * Copyright (C) 2018 Maxime Jourdan <maxi.jourdan@wanadoo.fr>
-+ */
-+
-+#include <media/v4l2-mem2mem.h>
-+#include <media/videobuf2-dma-contig.h>
-+
-+#include "vdec_helpers.h"
-+#include "dos_regs.h"
-+
-+/* map FW registers to known MJPEG functions */
-+#define MREG_DECODE_PARAM AV_SCRATCH_2
-+#define MREG_TO_AMRISC AV_SCRATCH_8
-+#define MREG_FROM_AMRISC AV_SCRATCH_9
-+#define MREG_FRAME_OFFSET AV_SCRATCH_A
-+
-+static int codec_mjpeg_can_recycle(struct amvdec_core *core)
-+{
-+ return !amvdec_read_dos(core, MREG_TO_AMRISC);
-+}
-+
-+static void codec_mjpeg_recycle(struct amvdec_core *core, u32 buf_idx)
-+{
-+ amvdec_write_dos(core, MREG_TO_AMRISC, buf_idx + 1);
-+}
-+
-+/* 4 point triangle */
-+static const uint32_t filt_coef[] = {
-+ 0x20402000, 0x20402000, 0x1f3f2101, 0x1f3f2101,
-+ 0x1e3e2202, 0x1e3e2202, 0x1d3d2303, 0x1d3d2303,
-+ 0x1c3c2404, 0x1c3c2404, 0x1b3b2505, 0x1b3b2505,
-+ 0x1a3a2606, 0x1a3a2606, 0x19392707, 0x19392707,
-+ 0x18382808, 0x18382808, 0x17372909, 0x17372909,
-+ 0x16362a0a, 0x16362a0a, 0x15352b0b, 0x15352b0b,
-+ 0x14342c0c, 0x14342c0c, 0x13332d0d, 0x13332d0d,
-+ 0x12322e0e, 0x12322e0e, 0x11312f0f, 0x11312f0f,
-+ 0x10303010
-+};
-+
-+static void codec_mjpeg_init_scaler(struct amvdec_core *core)
-+{
-+ int i;
-+
-+ /* PSCALE cbus bmem enable */
-+ amvdec_write_dos(core, PSCALE_CTRL, 0xc000);
-+
-+ amvdec_write_dos(core, PSCALE_BMEM_ADDR, 0);
-+ for (i = 0; i < ARRAY_SIZE(filt_coef); ++i) {
-+ amvdec_write_dos(core, PSCALE_BMEM_DAT, 0);
-+ amvdec_write_dos(core, PSCALE_BMEM_DAT, filt_coef[i]);
-+ }
-+
-+ amvdec_write_dos(core, PSCALE_BMEM_ADDR, 74);
-+ amvdec_write_dos(core, PSCALE_BMEM_DAT, 0x0008);
-+ amvdec_write_dos(core, PSCALE_BMEM_DAT, 0x60000000);
-+
-+ amvdec_write_dos(core, PSCALE_BMEM_ADDR, 82);
-+ amvdec_write_dos(core, PSCALE_BMEM_DAT, 0x0008);
-+ amvdec_write_dos(core, PSCALE_BMEM_DAT, 0x60000000);
-+
-+ amvdec_write_dos(core, PSCALE_BMEM_ADDR, 78);
-+ amvdec_write_dos(core, PSCALE_BMEM_DAT, 0x0008);
-+ amvdec_write_dos(core, PSCALE_BMEM_DAT, 0x60000000);
-+
-+ amvdec_write_dos(core, PSCALE_BMEM_ADDR, 86);
-+ amvdec_write_dos(core, PSCALE_BMEM_DAT, 0x0008);
-+ amvdec_write_dos(core, PSCALE_BMEM_DAT, 0x60000000);
-+
-+ amvdec_write_dos(core, PSCALE_BMEM_ADDR, 73);
-+ amvdec_write_dos(core, PSCALE_BMEM_DAT, 0x10000);
-+ amvdec_write_dos(core, PSCALE_BMEM_ADDR, 81);
-+ amvdec_write_dos(core, PSCALE_BMEM_DAT, 0x10000);
-+
-+ amvdec_write_dos(core, PSCALE_BMEM_ADDR, 77);
-+ amvdec_write_dos(core, PSCALE_BMEM_DAT, 0x10000);
-+ amvdec_write_dos(core, PSCALE_BMEM_ADDR, 85);
-+ amvdec_write_dos(core, PSCALE_BMEM_DAT, 0x10000);
-+
-+ amvdec_write_dos(core, PSCALE_RST, 0x7);
-+ amvdec_write_dos(core, PSCALE_RST, 0);
-+}
-+
-+static int codec_mjpeg_start(struct amvdec_session *sess)
-+{
-+ struct amvdec_core *core = sess->core;
-+
-+ amvdec_write_dos(core, AV_SCRATCH_0, 12);
-+ amvdec_write_dos(core, AV_SCRATCH_1, 0x031a);
-+
-+ amvdec_set_canvases(sess, (u32[]){ AV_SCRATCH_4, 0 },
-+ (u32[]){ 4, 0 });
-+ codec_mjpeg_init_scaler(core);
-+
-+ amvdec_write_dos(core, MREG_TO_AMRISC, 0);
-+ amvdec_write_dos(core, MREG_FROM_AMRISC, 0);
-+ amvdec_write_dos(core, MCPU_INTR_MSK, 0xffff);
-+ amvdec_write_dos(core, MREG_DECODE_PARAM,
-+ (sess->height << 4) | 0x8000);
-+ amvdec_write_dos(core, VDEC_ASSIST_AMR1_INT8, 8);
-+
-+ /* Intra-only codec */
-+ sess->keyframe_found = 1;
-+
-+ return 0;
-+}
-+
-+static int codec_mjpeg_stop(struct amvdec_session *sess)
-+{
-+ return 0;
-+}
-+
-+static irqreturn_t codec_mjpeg_isr(struct amvdec_session *sess)
-+{
-+ struct amvdec_core *core = sess->core;
-+ u32 reg;
-+ u32 buffer_index;
-+ u32 offset;
-+
-+ amvdec_write_dos(core, ASSIST_MBOX1_CLR_REG, 1);
-+
-+ reg = amvdec_read_dos(core, MREG_FROM_AMRISC);
-+ if (!(reg & 0x7))
-+ return IRQ_HANDLED;
-+
-+ buffer_index = ((reg & 0x7) - 1) & 3;
-+ offset = amvdec_read_dos(core, MREG_FRAME_OFFSET);
-+ amvdec_dst_buf_done_idx(sess, buffer_index, offset, V4L2_FIELD_NONE);
-+
-+ amvdec_write_dos(core, MREG_FROM_AMRISC, 0);
-+ return IRQ_HANDLED;
-+}
-+
-+struct amvdec_codec_ops codec_mjpeg_ops = {
-+ .start = codec_mjpeg_start,
-+ .stop = codec_mjpeg_stop,
-+ .isr = codec_mjpeg_isr,
-+ .can_recycle = codec_mjpeg_can_recycle,
-+ .recycle = codec_mjpeg_recycle,
-+};
-diff --git a/drivers/media/platform/meson/vdec/codec_mjpeg.h b/drivers/media/platform/meson/vdec/codec_mjpeg.h
-new file mode 100644
-index 0000000..cc1cf73
---- /dev/null
-+++ b/drivers/media/platform/meson/vdec/codec_mjpeg.h
-@@ -0,0 +1,13 @@
-+/* SPDX-License-Identifier: GPL-2.0+ */
-+/*
-+ * Copyright (C) 2018 Maxime Jourdan <maxi.jourdan@wanadoo.fr>
-+ */
-+
-+#ifndef __MESON_VDEC_CODEC_MJPEG_H_
-+#define __MESON_VDEC_CODEC_MJPEG_H_
-+
-+#include "vdec.h"
-+
-+extern struct amvdec_codec_ops codec_mjpeg_ops;
-+
-+#endif
-\ No newline at end of file
-diff --git a/drivers/media/platform/meson/vdec/vdec_platform.c b/drivers/media/platform/meson/vdec/vdec_platform.c
-index 80b43fd..61def15 100644
---- a/drivers/media/platform/meson/vdec/vdec_platform.c
-+++ b/drivers/media/platform/meson/vdec/vdec_platform.c
-@@ -11,9 +11,20 @@
- #include "codec_mpeg12.h"
- #include "codec_h264.h"
- #include "codec_mpeg4.h"
-+#include "codec_mjpeg.h"
-
- static const struct amvdec_format vdec_formats_gxbb[] = {
- {
-+ .pixfmt = V4L2_PIX_FMT_MJPEG,
-+ .min_buffers = 4,
-+ .max_buffers = 4,
-+ .max_width = 1920,
-+ .max_height = 1080,
-+ .vdec_ops = &vdec_1_ops,
-+ .codec_ops = &codec_mjpeg_ops,
-+ .firmware_path = "meson/gx/vmjpeg_mc",
-+ .pixfmts_cap = { V4L2_PIX_FMT_YUV420M, 0 },
-+ }, {
- .pixfmt = V4L2_PIX_FMT_MPEG4,
- .min_buffers = 8,
- .max_buffers = 8,
-@@ -80,6 +91,16 @@ static const struct amvdec_format vdec_formats_gxbb[] = {
-
- static const struct amvdec_format vdec_formats_gxl[] = {
- {
-+ .pixfmt = V4L2_PIX_FMT_MJPEG,
-+ .min_buffers = 4,
-+ .max_buffers = 4,
-+ .max_width = 1920,
-+ .max_height = 1080,
-+ .vdec_ops = &vdec_1_ops,
-+ .codec_ops = &codec_mjpeg_ops,
-+ .firmware_path = "meson/gx/vmjpeg_mc",
-+ .pixfmts_cap = { V4L2_PIX_FMT_YUV420M, 0 },
-+ }, {
- .pixfmt = V4L2_PIX_FMT_MPEG4,
- .min_buffers = 8,
- .max_buffers = 8,
-@@ -146,6 +167,16 @@ static const struct amvdec_format vdec_formats_gxl[] = {
-
- static const struct amvdec_format vdec_formats_gxm[] = {
- {
-+ .pixfmt = V4L2_PIX_FMT_MJPEG,
-+ .min_buffers = 4,
-+ .max_buffers = 4,
-+ .max_width = 1920,
-+ .max_height = 1080,
-+ .vdec_ops = &vdec_1_ops,
-+ .codec_ops = &codec_mjpeg_ops,
-+ .firmware_path = "meson/gx/vmjpeg_mc",
-+ .pixfmts_cap = { V4L2_PIX_FMT_YUV420M, 0 },
-+ }, {
- .pixfmt = V4L2_PIX_FMT_MPEG4,
- .min_buffers = 8,
- .max_buffers = 8,
diff --git a/testing/linux-amlogic/0043-clk-meson-gxbb-set-fclk_div3-as-CLK_IS_CRITICAL.patch b/testing/linux-amlogic/0043-clk-meson-gxbb-set-fclk_div3-as-CLK_IS_CRITICAL.patch
deleted file mode 100644
index 33671060cc3..00000000000
--- a/testing/linux-amlogic/0043-clk-meson-gxbb-set-fclk_div3-as-CLK_IS_CRITICAL.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From 6b98d7c6cd508cfb4a2d4a1e87e192ffcabeda9e Mon Sep 17 00:00:00 2001
-From: Christian Hewitt <christianshewitt@gmail.com>
-Date: Sat, 13 Oct 2018 14:04:46 +0400
-Subject: [PATCH] clk: meson-gxbb: set fclk_div3 as CLK_IS_CRITICAL
-
-On the Khadas VIM2 (GXM) and LePotato (GXL) board there are problems
-with reboot; e.g. a ~60 second delay between issuing reboot and the
-board power cycling (and in some OS configurations reboot will fail
-and require manual power cycling).
-
-Similar to 'commit c987ac6f1f088663b6dad39281071aeb31d450a8 ("clk:
-meson-gxbb: set fclk_div2 as CLK_IS_CRITICAL")' the SCPI Cortex-M4
-Co-Processor seems to depend on FCLK_DIV3 being operational.
-
-Bisect gives 'commit 05f814402d6174369b3b29832cbb5eb5ed287059 ("clk:
-meson: add fdiv clock gates") between 4.16 and 4.16-rc1 as the first
-bad commit. This added support for the missing clock gates before the
-fixed PLL fixed dividers (FCLK_DIVx) and the clock framework which
-disabled all the unused fixed dividers, thus it disabled a critical
-clock path for the SCPI Co-Processor.
-
-This change simply sets the FCLK_DIV3 gate as critical to ensure
-nothing can disable it.
-
-Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
-
----
- drivers/clk/meson/gxbb.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/drivers/clk/meson/gxbb.c b/drivers/clk/meson/gxbb.c
-index 6628ffa..01f7615 100644
---- a/drivers/clk/meson/gxbb.c
-+++ b/drivers/clk/meson/gxbb.c
-@@ -513,6 +513,7 @@ static struct clk_fixed_factor gxbb_fclk_div3_div = {
- .ops = &clk_fixed_factor_ops,
- .parent_names = (const char *[]){ "fixed_pll" },
- .num_parents = 1,
-+ .flags = CLK_IS_CRITICAL,
- },
- };
-
diff --git a/testing/linux-amlogic/APKBUILD b/testing/linux-amlogic/APKBUILD
deleted file mode 100644
index b7770f50308..00000000000
--- a/testing/linux-amlogic/APKBUILD
+++ /dev/null
@@ -1,355 +0,0 @@
-# Maintainer: He Yangxuan <yangxuan8282@gmail.com>
-
-pkgname=linux-amlogic
-pkgver=4.19.8
-pkgrel=0
-pkgdesc="Linux kernel for Amlogic"
-url=https://github.com/torvalds/linux
-_commit=178574b66509c9ff7df4ad26c84a8884567e93b4
-depends="mkinitfs"
-_depends_dev="perl gmp-dev elfutils-dev bash"
-makedepends="$_depends_dev sed installkernel bc linux-headers linux-firmware openssl-dev bison flex"
-options="!strip !check"
-source="$url/archive/${_commit}.tar.gz
- config-changes-amlogic.aarch64
- defconfig
- 0001-ARM64-defconfig-enable-CEC-support.patch
- 0002-ASoC-meson-add-meson-audio-core-driver.patch
- 0003-ASoC-meson-add-register-definitions.patch
- 0004-ASoC-meson-add-aiu-i2s-dma-support.patch
- 0005-ASoC-meson-add-initial-i2s-dai-support.patch
- 0006-ASoC-meson-add-aiu-spdif-dma-support.patch
- 0007-ASoC-meson-add-initial-spdif-dai-support.patch
- 0008-ARM64-defconfig-enable-audio-support-for-meson-SoCs-.patch
- 0009-ARM64-dts-meson-gx-add-audio-controller-nodes.patch
- 0010-snd-meson-activate-HDMI-audio-path.patch
- 0011-drm-meson-select-dw-hdmi-i2s-audio-for-meson-hdmi.patch
- 0012-ARM64-dts-meson-gx-add-sound-dai-cells-to-HDMI-node.patch
- 0013-ARM64-dts-meson-activate-hdmi-audio-HDMI-enabled-boa.patch
- 0014-drm-bridge-dw-hdmi-Use-AUTO-CTS-setup-mode-when-non-.patch
- 0017-soc-amlogic-add-meson-canvas-driver.patch
- 0018-ARM64-dts-meson-gx-add-dmcbus-and-canvas-nodes.patch
- 0020-drm-meson-Use-optional-canvas-provider.patch
- 0021-arm64-dts-meson-gx-Add-canvas-provider-node-to-the-v.patch
- 0022-drm-meson-Support-Overlay-plane-for-video-rendering.patch
- 0023-drm-meson-move-OSD-scaler-management-into-plane-atom.patch
- 0024-drm-meson-Add-primary-plane-scaling.patch
- 0026-pinctrl-meson-gxl-remove-invalid-GPIOX-tsin_a-pins.patch
- 0027-arm64-dts-meson-gx-Add-hdmi_5v-regulator-as-hdmi-tx-.patch
- 0028-arm64-dts-meson-gxl-libretech-cc-fix-GPIO-lines-name.patch
- 0029-arm64-dts-meson-gxbb-nanopi-k2-fix-GPIO-lines-names.patch
- 0030-arm64-dts-meson-gxbb-odroidc2-fix-GPIO-lines-names.patch
- 0031-arm64-dts-meson-gxl-khadas-vim-fix-GPIO-lines-names.patch
- 0032-drm-meson-Add-support-for-VIC-alternate-timings.patch
- 0033-media-meson-add-v4l2-m2m-video-decoder-driver.patch
- 0034-MAINTAINERS-Add-meson-video-decoder.patch
- 0035-arm64-dts-meson-gx-add-vdec-entry.patch
- 0036-arm64-dts-meson-add-vdec-entries.patch
- 0037-meson-vdec-introduce-controls-and-V4L2_CID_MIN_BUFFE.patch
- 0038-media-videodev2-add-V4L2_FMT_FLAG_NO_SOURCE_CHANGE.patch
- 0039-meson-vdec-allow-subscribing-to-V4L2_EVENT_SOURCE_CH.patch
- 0040-media-meson-vdec-add-H.264-decoding-support.patch
- 0041-media-meson-vdec-add-MPEG4-decoding-support.patch
- 0042-media-meson-vdec-add-MJPEG-decoding-support.patch
- 0043-clk-meson-gxbb-set-fclk_div3-as-CLK_IS_CRITICAL.patch
- 0008-drm-meson-Add-HDMI-1.4-4k-modes.patch
- 0009-drm-meson-Use-drm_fbdev_generic_setup.patch
- 0010-fixup-drm-meson-Use-optional-canvas-provider.patch
- 0012-drm-meson-add-support-for-1080p25-mode.patch
- 0014-drm-bridge-dw-hdmi-Add-SCDC-and-TMDS-Scrambling-supp.patch
- 0015-drm-meson-add-HDMI-div40-TMDS-mode.patch
- 0016-drm-meson-add-support-for-HDMI2.0-2160p-modes.patch
- 0017-drm-bridge-dw-hdmi-add-support-for-YUV420-output.patch
- 0018-drm-bridge-dw-hdmi-support-dynamically-get-input-out.patch
- 0019-drm-bridge-dw-hdmi-allow-ycbcr420-modes-for-0x200a.patch
- 0020-drm-meson-Add-YUV420-output-support.patch
- 0021-drm-meson-Output-in-YUV444-if-sink-supports-it.patch
- 0023-drm-meson-Fix-an-Alpha-Primary-Plane-bug-on-Meson-GX.patch
- 0001-arm64-dts-meson-Fix-IRQ-trigger-type-for-macirq.patch
- 0001-drm-meson-fix-max-mode_config-height-width.patch
- add-phicomm-n1.patch
- bt-btbcm.patch
- text_offset.patch
- "
-subpackages=""
-arch="aarch64"
-license="GPL-2.0"
-_flavors=
-for _i in $source; do
- case $_i in
- config-*.$CARCH)
- _f=${_i%.$CARCH}
- _f=${_f#config-changes-}
- _flavors="$_flavors ${_f}"
- [ "linux-$_f" != "$pkgname" ] && subpackages="$subpackages linux-${_f}::$CBUILD_ARCH"
- subpackages="$subpackages linux-${_f}-dev:_dev:$CBUILD_ARCH"
- ;;
- esac
-done
-
-case "$CARCH" in
- aarch64) _carch="arm64" ;;
- arm*) _carch="arm" ;;
-esac
-
-HOSTCC="${CC:-gcc}"
-HOSTCC="${HOSTCC#${CROSS_COMPILE}}"
-
-prepare() {
- local _patch_failed=
- cd "$srcdir"/linux-$_commit
-
- for i in $source; do
- case $i in
- *.patch)
- msg "Applying $i..."
- if ! patch -s -p1 -N -i "$srcdir"/${i##*/}; then
- echo $i >>failed
- _patch_failed=1
- fi
- ;;
- esac
- done
-
- if ! [ -z "$_patch_failed" ]; then
- error "The following patches failed:"
- cat failed
- return 1
- fi
-
- # remove localversion from patch if any
- rm -f localversion*
-
- local flavor=
- for flavor in $_flavors; do
- local builddir="$srcdir"/build-$flavor
- mkdir -p "$builddir"
- echo "-$pkgrel-$flavor" > "$builddir"/localversion-alpine
- _genconfig $flavor
- make -C "$srcdir"/linux-$_commit \
- O="$builddir" \
- ARCH="$_carch" \
- HOSTCC="$HOSTCC" \
- olddefconfig
- _verifyconfig $flavor
- done
-}
-
-# generate config from defconfig and apply local changes.
-# config-changes-$flavor.$CARCH holds a list of = delimited
-# config command and values used by kernel scripts/config script.
-_genconfig() {
- local flavor=$1 defconfig=
- local builddir="$srcdir"/build-$flavor
- local defconfig=
- case $flavor in
- amlogic) defconfig=defconfig ;;
- *) die "Unknown flavor: $flavor" ;;
- esac
-
- cp "$srcdir"/$defconfig \
- "$builddir"/.config
-
- while read line; do
- [ ${line:0:1} = "#" ] && continue
- local option=${line%%=*} str=
- local cmd=$(echo $line | cut -d= -f2)
- case "$cmd" in
- enable|disable|module) str= ;;
- set-str|set-val) str=${line##*=} ;;
- *) die "Command $cmd not accepted" ;;
- esac
- msg "[$flavor] $cmd: $option $str"
- "$srcdir"/linux-$_commit/scripts/config \
- --file "$builddir"/.config \
- --${cmd} "$option" "${str//\"/}"
- done < "$srcdir"/config-changes-$flavor.${CARCH}
-}
-
-# verify if options are set to correct value
-_verifyconfig() {
- local flavor=$1
- local builddir="$srcdir"/build-$flavor
- while read line; do
- [ ${line:0:1} = "#" ] && continue
- local option=${line%%=*} str= invert=
- local cmd=$(echo $line | cut -d= -f2)
- case "$cmd" in
- enable) str="$option=y" ;;
- disable) str="$option"; invert="-v" ;;
- module) str="$option=m" ;;
- set-val) str="$option=${line##*=}" ;;
- set-str) str=${line##*=}
- str="$option=\"${str//\"/}\"" ;;
- esac
- grep -q $invert "^$str" "$builddir"/.config || \
- die "Config: $option not properly set!"
- done < "$srcdir"/config-changes-$flavor.${CARCH}
-}
-
-build() {
- unset LDFLAGS
- for i in $_flavors; do
- cd "$srcdir"/build-$i
- make ARCH="$_carch" CC="${CC:-gcc}" \
- KBUILD_BUILD_VERSION="$((pkgrel + 1 ))-Alpine"
- done
-}
-
-_package() {
- local _buildflavor="$1" _outdir="$2"
- local _abi_release=${pkgver}-${pkgrel}-${_buildflavor}
-
- cd "$srcdir"/build-$_buildflavor
-
- mkdir -p "$_outdir"/boot "$_outdir"/lib/modules
-
- local _install
- case "$CARCH" in
- arm*)
- _install="zinstall dtbs_install"
- ;;
- aarch64)
- _install="install dtbs_install"
- ;;
- *)
- _install=install
- ;;
- esac
-
- cd "$srcdir"/build-$_buildflavor
- local INSTALL_DTBS_PATH="$_outdir"/boot/dtbs
- make -j1 modules_install $_install \
- ARCH="$_carch" \
- INSTALL_MOD_PATH="$_outdir" \
- INSTALL_PATH="$_outdir"/boot \
- INSTALL_DTBS_PATH="$INSTALL_DTBS_PATH"
-
- rm -f "$_outdir"/lib/modules/${_abi_release}/build \
- "$_outdir"/lib/modules/${_abi_release}/source
- rm -rf "$_outdir"/lib/firmware
-
- install -D -m644 include/config/kernel.release \
- "$_outdir"/usr/share/kernel/$_buildflavor/kernel.release
-
- if [ "$CARCH" = "aarch64" ]; then
- mv -f "$INSTALL_DTBS_PATH"/amlogic/*.dtb \
- "$INSTALL_DTBS_PATH"
- rmdir "$INSTALL_DTBS_PATH"/amlogic
- fi
-}
-
-# main flavor installs in $pkgdir
-package() {
- depends="$depends linux-firmware-brcm"
- _package amlogic "$pkgdir"
-}
-
-_dev() {
- local _flavor=$(echo $subpkgname | sed -E 's/(^linux-|-dev$)//g')
- local _abi_release=${pkgver}-${pkgrel}-$_flavor
- # copy the only the parts that we really need for build 3rd party
- # kernel modules and install those as /usr/src/linux-headers,
- # simlar to what ubuntu does
- #
- # this way you dont need to install the 300-400 kernel sources to
- # build a tiny kernel module
- #
- pkgdesc="Headers and script for third party modules for $_flavor kernel"
- depends="$_depends_dev"
- local dir="$subpkgdir"/usr/src/linux-headers-${_abi_release}
-
- # first we import config, run prepare to set up for building
- # external modules, and create the scripts
- mkdir -p "$dir"
- cp "$srcdir"/build-$_flavor/.config "$dir"/.config
- make -j1 -C "$srcdir"/linux-$_commit O="$dir" HOSTCC="${CC:-gcc}" \
- silentoldconfig prepare modules_prepare scripts
-
- # remove the stuff that points to real sources. we want 3rd party
- # modules to believe this is the soruces
- rm "$dir"/Makefile "$dir"/source
-
- # copy the needed stuff from real sources
- #
- # this is taken from ubuntu kernel build script
- # http://kernel.ubuntu.com/git/ubuntu/ubuntu-zesty.git/tree/debian/rules.d/3-binary-indep.mk
- cd "$srcdir"/linux-$_commit
- find . -path './include/*' -prune \
- -o -path './scripts/*' -prune -o -type f \
- \( -name 'Makefile*' -o -name 'Kconfig*' -o -name 'Kbuild*' -o \
- -name '*.sh' -o -name '*.pl' -o -name '*.lds' \) \
- -print | cpio -pdm "$dir"
-
- cp -a scripts include "$dir"
- find $(find arch -name include -type d -print) -type f \
- | cpio -pdm "$dir"
-
- install -Dm644 "$srcdir"/build-$_flavor/Module.symvers \
- "$dir"/Module.symvers
-
- mkdir -p "$subpkgdir"/lib/modules/${_abi_release}
- ln -sf /usr/src/linux-headers-${_abi_release} \
- "$subpkgdir"/lib/modules/${_abi_release}/build
-}
-
-sha512sums="642e3de14702d3034f9108c7b6661294722f4cf455b9167c349111642586d9a48732070e46092e7084f3ffbc26f01bae50f8da52eeceb7cf0f40e1441f9d895e 178574b66509c9ff7df4ad26c84a8884567e93b4.tar.gz
-7186849193386fc06caab6db9ebf3d5b7efe2511f1c3836bb70d713340eb69b1f123f8372f15ee7f8dd61eeff5ce772b35db8557133ef64a2a1a5ca9e7cd30c9 config-changes-amlogic.aarch64
-2784f8c05c1c66f2bff73d0cdd415781e6529f269223607c18302803125092e7cb6c94083146deecc3226672f7f4754246cc62808f9384f697782ec55786883d defconfig
-09e8d284608ac0e86db8b36bdefdb17c8ad8e9b3bdf443ee5a687f1591d88d26cffef1a36919b0547acef49394d903ff8067d46f75b55eccadec415971bf0b34 0001-ARM64-defconfig-enable-CEC-support.patch
-55d3e84c4e01b94a3bf256a980bd23a8d02c3ea7f4103d350400eb28cc31336bb35f9404ee34ba80f7d3d7427d73ed4ee75119a916ae0e88d911bb83b0303229 0002-ASoC-meson-add-meson-audio-core-driver.patch
-b5a65140612b011f22d4bfbb4ab41a4c0fe07bab43f8033195a42b02c5d74c69c7fbc2b186f8d6ff08ed7b66ccbfd9d8d7945f81812ae5021b1d37154acdb12f 0003-ASoC-meson-add-register-definitions.patch
-441b0385e88bb7ddb324363536413e6538d4b0367181ae5ceada806a8efe3d1b5daa643bd3ab99db6fa7a2d5ea0944a15a63672fa26bfc7850959ce2d7238aa1 0004-ASoC-meson-add-aiu-i2s-dma-support.patch
-4615d01a2548ce5057446ff32c52bca1cea189fc74d902ea22dc90e73c2eb21ef5b4b58c6a4ebbdf3c6cad5bac483dabdee025438ebc0bdf1b4368af0fce1b87 0005-ASoC-meson-add-initial-i2s-dai-support.patch
-d1dc1d99393a885776144dea27c0789d9e7968de1164bc85b07cc8d444cdcc898ce2f7ff1f9515ae2424789cbb76b84a8ed56008c1880fef60be79000bf55452 0006-ASoC-meson-add-aiu-spdif-dma-support.patch
-b101c64312509738b078732f73b265fa81bb94806bb39524e85d171949505dc0548fc3ece498cca6586b8ca4af08b271b6c02f028040f8cf16ec5eee94ddafa1 0007-ASoC-meson-add-initial-spdif-dai-support.patch
-98fd62a02fa76a957d15da9456c85def94a790429c3357b4b06a63d4224b624ffe763410ffdbc09ff560ba0a17a5299b722e2c9cefbb4a59455cfbe7379850b3 0008-ARM64-defconfig-enable-audio-support-for-meson-SoCs-.patch
-a286d6ecb284f505ebd29c04c5e95b1e7ba1a4a3c5ffb17580c2387ab78360cba7be6806772a058be8326f7a299f59c84051ed022b2c99372412d935f12f7c6a 0009-ARM64-dts-meson-gx-add-audio-controller-nodes.patch
-e84ab2a28d08570590ad06219e1a99a8cc47a589d4170f5ff1bf6eeb1b50c1e4e21857a5633495d2271ae702b9bfdc8aa76bb56d572b236d54a4ec08566f13d6 0010-snd-meson-activate-HDMI-audio-path.patch
-35962172f6c2682f0e3ba438ca9e62ddd679a0cd665e6bc6208167a753877a02a1d4db8d78b230de44ab494016cf9d47f0e61d31121cb0b8b676b689f1258f71 0011-drm-meson-select-dw-hdmi-i2s-audio-for-meson-hdmi.patch
-db2c10c9e4b58e7f0b72a0b8b81ef39544d0e14ef5814dda4d6d5d98d181c9c0f5993ac0e6bc98ea8c79b5d22a3c4eb38793ddb22e7e2553f4643027767a597e 0012-ARM64-dts-meson-gx-add-sound-dai-cells-to-HDMI-node.patch
-4f0073aa0a4ed1297b00817bb6cad704362c32fda284780e7a73505dab8e3cfdec5eb851fccdf7e6bf16c1788bc0f8f6ca58b0898adacca678f46ca940aa493a 0013-ARM64-dts-meson-activate-hdmi-audio-HDMI-enabled-boa.patch
-998c39cf37d2258582d6d60a7e6a702601430645b01c971c162bb219684e363fd11d0572cefb15f00551fe6bc95d97d1c101e6f36b1ae015083edeb5742b3df3 0014-drm-bridge-dw-hdmi-Use-AUTO-CTS-setup-mode-when-non-.patch
-03c2649558bedc2bf34f0e139db489d6891bda6041384d0023cf700be31d1fb1f983c8bc7d58754acd0a57986432b0330996c82f7dc7fd4a6044589725fc4c9c 0017-soc-amlogic-add-meson-canvas-driver.patch
-7c1e84356a62a175326f56e71e6984aa4a00ab4b50ac09cce8a078890f2c2ac700d53c53b1229e8dbfb82f36bac32b3082ccdf91a8f92545148bd705784b38e4 0018-ARM64-dts-meson-gx-add-dmcbus-and-canvas-nodes.patch
-f2a94fde352734e1de54f10703d792c62c95ae4b68c2c0ce9eb78fded934084fab4b999c930f7228982044052e5b331cce60cf72dcc1f181bcc88eaf68116bb8 0020-drm-meson-Use-optional-canvas-provider.patch
-635410e2f6476ee1f1114d31c06f997d5997e117d857ef67f7acb456b52941a4b4aa0cdd94ce9788a017a07d75143d783e900e03eac009d030c90fbe95798003 0021-arm64-dts-meson-gx-Add-canvas-provider-node-to-the-v.patch
-df666c95cc1d0dc4c9dd93f79778c5880afd89c320a0edb22dc3f017388cd2df88806aae4c7cde4c412e6643fcd1a8df4c6f15b41b0b0e6b020eced9cedf8d9a 0022-drm-meson-Support-Overlay-plane-for-video-rendering.patch
-8e3f62fc50c8478951f8a2e6c5d8c8f38f56ed4d68f9c0fb55c23c46d3ae2182e8a6e5f23171aac08867da4bb16d7c98741a80a3ae6a3acfc41568350be59a57 0023-drm-meson-move-OSD-scaler-management-into-plane-atom.patch
-63c41b6db1386530339bd3b6d87849bb38a8d51ec8fcd0bf3c1bcb77c567c589e069dee02f066030f608288fd510e3af244ff45b346e0addc31614867daab334 0024-drm-meson-Add-primary-plane-scaling.patch
-64682336c72ac1e505e19e4a099bb2c6f8ba6e8df2ed3b149e355c50b27a29337ac1de7768dd0fd3274bda4fe2f6cc53d068d8a1e6325d27c42e372a0324cbd2 0026-pinctrl-meson-gxl-remove-invalid-GPIOX-tsin_a-pins.patch
-332aa83ae3c581b81dae9b37df047fa5e553b0c31790713395ab562aa03ac32fbf909ab6372aba22d06cb82c509efef68af90aeaf66ca5cf70c0861c69039139 0027-arm64-dts-meson-gx-Add-hdmi_5v-regulator-as-hdmi-tx-.patch
-0cb8ed9fb52cfdcfac8dbbab5b08f4b5fe1b8716655fe77f37ff1ee39355fac89314dd318856582c62dce1fd56232b4a2725c60a2d07ef15efba86160eb093f0 0028-arm64-dts-meson-gxl-libretech-cc-fix-GPIO-lines-name.patch
-f4d251863ac20a95642a60f7c6c51694d36a12f745864fccbb6513b2e53fb0039fa316f4bcd245abe306d2d0aeb0037498f9e21333ab1d84e58fb5d287632093 0029-arm64-dts-meson-gxbb-nanopi-k2-fix-GPIO-lines-names.patch
-c481cde9a8bf2609b99e1a7a94bdfead78afe8665347dfffcde8747b8e2817356123e0e44b71de4c5b85224aa20c3c63d5ce3f44e49e3969f0ea28f4df94dc62 0030-arm64-dts-meson-gxbb-odroidc2-fix-GPIO-lines-names.patch
-768d954c5580b68e999bf3ed051219187c96de88f27be54e52242687f2ef505c0616dabbc5bee42fdc6d20d53d973f2e64ef4809649fb2e666d8727ed314f3fd 0031-arm64-dts-meson-gxl-khadas-vim-fix-GPIO-lines-names.patch
-e23b9303036d736a3f9abed22712848da514f6388de66b3029bde551a85b7d42d1506ee960a539457c8dd7d8b6c07e80919ca0714a9435bdcaa85ca2e201d69f 0032-drm-meson-Add-support-for-VIC-alternate-timings.patch
-671da78856f524f7e491e35dcb2764acb6ff0e99eee4df6c9e9538dc321c6c2e4481fd8c39daa2cb32d23d38c96823e5ab04db0342b2daabd5d1b7efdb0d6288 0033-media-meson-add-v4l2-m2m-video-decoder-driver.patch
-8d13b4e5c503a196b29263a85d3bc2d9cd1b95d186e6347532b8ae7efc35c93ed72d3f9c4a7ff12b5c2186b3f7d3b35247858e66a96382ba3a2630db35cdf794 0034-MAINTAINERS-Add-meson-video-decoder.patch
-c1817a1b59a4a38f7a0689c1e2603398f538d9270a93b40e2ce3e9633b71943beb385206d802673b18f244fb5d9a6c9b2e0498d7803432cf98750843fb91ce5f 0035-arm64-dts-meson-gx-add-vdec-entry.patch
-bdd5bd9e4203e3e7bd6412b2068963e22a974316b8ee1a707933808f1ec03ab43aa174804e7fd21f2f7062dc25226e4f2047a863366f132d8687d098a203c6d1 0036-arm64-dts-meson-add-vdec-entries.patch
-9c3b9170bbc5fbf3331052e5a99864b76cee6c2c50629f22d33d6e0b01de164e34db4a57c3864e6cb10ff9486999842c9d5f5d38bcb65ef98ccca34c3a6366be 0037-meson-vdec-introduce-controls-and-V4L2_CID_MIN_BUFFE.patch
-6bd52ae9872d79b5b2199d23bbef6f73b7530c54df702edf0ce040ba799c60265d199f75fcd4301587100fe60a6d43988bdffdfcb6f98be0c0d8a79f27d206bf 0038-media-videodev2-add-V4L2_FMT_FLAG_NO_SOURCE_CHANGE.patch
-516113c435158775f85a3904e5941bcfe641428cfce1945722a2ab8f7897a8493dca634f3527fa4d8fb0433635efcd48353a2feadee94e3467057ce4ff966964 0039-meson-vdec-allow-subscribing-to-V4L2_EVENT_SOURCE_CH.patch
-0332979243ae7c182006050c3c2b34c9035ce9f3b084659ec0c3fd39c6772d42c0f5420628150113d2d149d8b1a2481d42650aae08ac054d25cf19178ba64ebc 0040-media-meson-vdec-add-H.264-decoding-support.patch
-d696a4a726801786e65fcb69f70c5271a982b2d494a8036d7d8a3e201f910d0e1dc411283128b3460bf2371cb43817d760c0de866cfc22a985f1ff052b98cbff 0041-media-meson-vdec-add-MPEG4-decoding-support.patch
-1381cbabd3e040d6e14c1f270904b2c41c6758f2757c3871d1a09d41ab4ce8f85cde95ed1cc989fe59addfa3eae6246f7cc25b63f213f9b28cc73ec86a1c3deb 0042-media-meson-vdec-add-MJPEG-decoding-support.patch
-36281f344133b7f4130d69685b1802524a597e110e792f0cae43991eb3a15282d77779cca8033679b943660cd23c9da54c62178b99999e91dc8581052cb53945 0043-clk-meson-gxbb-set-fclk_div3-as-CLK_IS_CRITICAL.patch
-ddcb198b0e052975764dfaf140763247e80632eee5f49e3316dc4f1b6220da80fdca0dc32ec618b27fb0487b3ff0676f2a2ed07d5cecfad350bafba0b79ddfed 0008-drm-meson-Add-HDMI-1.4-4k-modes.patch
-a58680d93e56fbc95e9e255b79822fcb7960d1f58dbf819dda729b21b61949f42ac58454a6403e77b0d12708613425f331531de700a74c18b262f1336849d5a1 0009-drm-meson-Use-drm_fbdev_generic_setup.patch
-b103daed449e59ce1d73e929c694f042e461241ef9d09592828414ab04a9c7ce07c16f636461d8bc5ba49650b9f584a861d5bd4267e90899b8bd72ec113bee4e 0010-fixup-drm-meson-Use-optional-canvas-provider.patch
-5e25559535d0a1529c8b5e31e9dab82c0d41f70e515a2ca4ed614177e127c0933cc1d54566ef6f063b19dbd19f3b1d67cb51ad4d8a87877140cf166c5969a6f0 0012-drm-meson-add-support-for-1080p25-mode.patch
-8de5c1f61e8467504f96db3c615658f40bb217d57a1a0c03b505cd8e310961dce38a191cd40ccecd48ed204fac1c3d3facb371e07ff590b8683afc4420e7f303 0014-drm-bridge-dw-hdmi-Add-SCDC-and-TMDS-Scrambling-supp.patch
-8fe6432a889ee13081185eeb8602ea48465b7d858f0b573f5a5c4d35e6ed76edc47f697b0c1729a31e9a319e0712bb0eaa111077d86570d2954dcbe6fceb7b60 0015-drm-meson-add-HDMI-div40-TMDS-mode.patch
-358f064f42c9e21afeccb867c062fc18484f91ed7805752edaf74492774962c16348099de004ce130134610f8c5d076fd715ca0de3eb30d0abd23f90236c6a7b 0016-drm-meson-add-support-for-HDMI2.0-2160p-modes.patch
-9bd13d763a007ffb9d0e9f9f4c9b5018752c010a39780e467d463153cc79a32774120d7af83496ba706b971dd3bd9bb600fad4795b3c0796e22eb42b23374a90 0017-drm-bridge-dw-hdmi-add-support-for-YUV420-output.patch
-f15dd5116fe7464009ade33a9c6d305a7720767e1b31acbf7653cd9d2f83b428e734712739e8bb4cfd04407640187f5528f80d7e8b89992a75f2316b6f8513c6 0018-drm-bridge-dw-hdmi-support-dynamically-get-input-out.patch
-2399c1c95455f2e4d0d03d2c84cf454251b7c8a151da555e7665bede91b7b62f96391efac3ca9a5b90761e105409bd033f348e25bc163a439a2ff7efd82e2184 0019-drm-bridge-dw-hdmi-allow-ycbcr420-modes-for-0x200a.patch
-26eb2b101ab563558649f38a5102773b2d79eeb39cf04a3f8d512361beed70ad585825233716acb58853887bc863ba76ce87f6eaf6d8c5c22e4caa99a5ce294a 0020-drm-meson-Add-YUV420-output-support.patch
-fac806a77816f655354499ab597974659e5d6dc74d04ac74cd81bacd6a264ac13ab33bc230a2c233d98d6e3b0342f329c2af0c6359d9ae8b6b456add06809822 0021-drm-meson-Output-in-YUV444-if-sink-supports-it.patch
-e365ba0479201f1c4fb08f872447f2496d4c8d75c8e3f632eeb3f7091e56d0659d4b6f580d384183e0e9c80ccf659b1704ecbaca88b66ca34c78c250c0f55a29 0023-drm-meson-Fix-an-Alpha-Primary-Plane-bug-on-Meson-GX.patch
-0aca4ad6af15ea8f8e2e8a05aa3c5a16e1a909ee0f80cb1f64e0ee027a7050b0bbd5815520e146f96641b92e5d39688677de39d4294be6a25ea1a2e519df257b 0001-arm64-dts-meson-Fix-IRQ-trigger-type-for-macirq.patch
-613d619e86883d83d53d045ed589d91c74a9f2031de953d2f3e4cdf374ae32841a69b28abfd0d8314a5739f51fbd3ab02c7f8baf4c5060db725d21f7a677db7f 0001-drm-meson-fix-max-mode_config-height-width.patch
-ea41c0b63d8890cf5db69a37ead0fb9863299a344cee2d3606cc8c049405a563e139dceb6c908abc57b5b545d3daee16f7b9c6f7f1284cb9cf676ff5830d5c96 add-phicomm-n1.patch
-dcc02a2e35e530490f18dd1f7e304aebd7c268ed8a46971d94e9da7dfd65b287002e6b921e46db5ce118177c9ab79fbe3640565cb2df19809b6eff514122fb43 bt-btbcm.patch
-298ded76cf87f08c9357505e9dd7582d886a5e59111eee81ecb136b2dd1f3f404899a32029696038cb2299760568b2b0345c92dfd961591b28ec2964460f09b1 text_offset.patch"
diff --git a/testing/linux-amlogic/add-phicomm-n1.patch b/testing/linux-amlogic/add-phicomm-n1.patch
deleted file mode 100644
index 3c3b16e32c4..00000000000
--- a/testing/linux-amlogic/add-phicomm-n1.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-diff --git a/arch/arm64/boot/dts/amlogic/Makefile b/arch/arm64/boot/dts/amlogic/Makefile
-index a97c0e2..ebd96da 100644
---- a/arch/arm64/boot/dts/amlogic/Makefile
-+++ b/arch/arm64/boot/dts/amlogic/Makefile
-@@ -17,6 +17,7 @@ dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905x-nexbox-a95x.dtb
- dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905x-p212.dtb
- dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905d-p230.dtb
- dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905d-p231.dtb
-+dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905d-phicomm-n1.dtb
- dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s805x-p241.dtb
- dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905w-p281.dtb
- dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905w-tx3-mini.dtb
-diff --git a/arch/arm64/boot/dts/amlogic/meson-gxl-s905d-phicomm-n1.dts b/arch/arm64/boot/dts/amlogic/meson-gxl-s905d-phicomm-n1.dts
-new file mode 100644
-index 0000000..7903dad
---- /dev/null
-+++ b/arch/arm64/boot/dts/amlogic/meson-gxl-s905d-phicomm-n1.dts
-@@ -0,0 +1,42 @@
-+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
-+/*
-+ * Copyright (c) 2018 He Yangxuan
-+ */
-+
-+/dts-v1/;
-+
-+#include "meson-gxl-s905d-p230.dts"
-+
-+/ {
-+ compatible = "phicomm,n1", "amlogic,s905d", "amlogic,meson-gxl";
-+ model = "Phicomm N1";
-+
-+ aliases {
-+ serial1 = &uart_A;
-+ };
-+
-+ cvbs-connector {
-+ status = "disabled";
-+ };
-+};
-+
-+&cvbs_vdac_port {
-+ status = "disabled";
-+};
-+
-+&external_phy {
-+ /* Realtek RTL8211F (0x001cc916) */
-+ eee-broken-1000t;
-+};
-+
-+/* This is connected to the Bluetooth module: */
-+&uart_A {
-+ status = "okay";
-+ pinctrl-0 = <&uart_a_pins>, <&uart_a_cts_rts_pins>;
-+ pinctrl-names = "default";
-+
-+ bluetooth {
-+ compatible = "brcm,bcm43438-bt";
-+ shutdown-gpios = <&gpio GPIOX_17 GPIO_ACTIVE_HIGH>;
-+ };
-+};
diff --git a/testing/linux-amlogic/bt-btbcm.patch b/testing/linux-amlogic/bt-btbcm.patch
deleted file mode 100644
index cb56ab0e66b..00000000000
--- a/testing/linux-amlogic/bt-btbcm.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/drivers/bluetooth/btbcm.c 2018-07-09 00:34:02.000000000 +0100
-+++ b/drivers/bluetooth/btbcm.c 2018-07-12 11:38:12.323462430 +0100
-@@ -326,7 +326,7 @@ static const struct bcm_subver_table bcm
- { 0x4406, "BCM4324B3" }, /* 002.004.006 */
- { 0x610c, "BCM4354" }, /* 003.001.012 */
- { 0x2122, "BCM4343A0" }, /* 001.001.034 */
-- { 0x2209, "BCM43430A1" }, /* 001.002.009 */
-+ { 0x2209, "BCM43438A1" }, /* 001.002.009 */
- { 0x6119, "BCM4345C0" }, /* 003.001.025 */
- { 0x230f, "BCM4356A2" }, /* 001.003.015 */
- { }
diff --git a/testing/linux-amlogic/config-changes-amlogic.aarch64 b/testing/linux-amlogic/config-changes-amlogic.aarch64
deleted file mode 100644
index ef386cc05a1..00000000000
--- a/testing/linux-amlogic/config-changes-amlogic.aarch64
+++ /dev/null
@@ -1,13 +0,0 @@
-# format is config=command(=string/value)
-# where command can be one of:
-# enable,disable,module,set-str,set-value
-CONFIG_DRM_UDL=module
-CONFIG_FB_UDL=module
-CONFIG_SLAB_FREELIST_RANDOM=enable
-CONFIG_SLAB_FREELIST_HARDENED=enable
-CONFIG_STRICT_DEVMEM=enable
-CONFIG_IO_STRICT_DEVMEM=enable
-CONFIG_ENCRYPTED_KEYS=module
-CONFIG_KEY_DH_OPERATIONS=enable
-CONFIG_HARDENED_USERCOPY=enable
-CONFIG_IP_PNP=disable
diff --git a/testing/linux-amlogic/defconfig b/testing/linux-amlogic/defconfig
deleted file mode 100644
index e7439edb1f0..00000000000
--- a/testing/linux-amlogic/defconfig
+++ /dev/null
@@ -1,882 +0,0 @@
-# CONFIG_LOCALVERSION_AUTO is not set
-CONFIG_SYSVIPC=y
-CONFIG_POSIX_MQUEUE=y
-CONFIG_AUDIT=y
-CONFIG_NO_HZ_IDLE=y
-CONFIG_HIGH_RES_TIMERS=y
-CONFIG_BSD_PROCESS_ACCT=y
-CONFIG_BSD_PROCESS_ACCT_V3=y
-CONFIG_TASKSTATS=y
-CONFIG_TASK_DELAY_ACCT=y
-CONFIG_TASK_XACCT=y
-CONFIG_TASK_IO_ACCOUNTING=y
-CONFIG_IKCONFIG=y
-CONFIG_IKCONFIG_PROC=y
-CONFIG_LOG_BUF_SHIFT=19
-CONFIG_MEMCG=y
-CONFIG_MEMCG_SWAP=y
-CONFIG_BLK_CGROUP=y
-CONFIG_CGROUP_PIDS=y
-CONFIG_CGROUP_FREEZER=y
-CONFIG_CGROUP_HUGETLB=y
-CONFIG_CPUSETS=y
-CONFIG_CGROUP_DEVICE=y
-CONFIG_CGROUP_CPUACCT=y
-CONFIG_CGROUP_PERF=y
-CONFIG_NAMESPACES=y
-CONFIG_USER_NS=y
-CONFIG_SCHED_AUTOGROUP=y
-CONFIG_BLK_DEV_INITRD=y
-CONFIG_SYSCTL_SYSCALL=y
-CONFIG_KALLSYMS_ALL=y
-CONFIG_EMBEDDED=y
-# CONFIG_COMPAT_BRK is not set
-CONFIG_PROFILING=y
-CONFIG_JUMP_LABEL=y
-CONFIG_MODULES=y
-CONFIG_MODULE_UNLOAD=y
-CONFIG_BLK_DEV_INTEGRITY=y
-CONFIG_BLK_DEV_THROTTLING=y
-# CONFIG_BLK_DEBUG_FS is not set
-CONFIG_PARTITION_ADVANCED=y
-CONFIG_MAC_PARTITION=y
-CONFIG_LDM_PARTITION=y
-# CONFIG_IOSCHED_DEADLINE is not set
-CONFIG_DEFAULT_NOOP=y
-# CONFIG_MQ_IOSCHED_DEADLINE is not set
-# CONFIG_MQ_IOSCHED_KYBER is not set
-CONFIG_ARCH_MESON=y
-# CONFIG_QCOM_FALKOR_ERRATUM_1003 is not set
-# CONFIG_QCOM_FALKOR_ERRATUM_1009 is not set
-# CONFIG_QCOM_QDF2400_ERRATUM_0065 is not set
-CONFIG_ARM64_VA_BITS_48=y
-CONFIG_SCHED_MC=y
-CONFIG_PREEMPT=y
-CONFIG_KSM=y
-CONFIG_TRANSPARENT_HUGEPAGE=y
-CONFIG_CLEANCACHE=y
-CONFIG_FRONTSWAP=y
-CONFIG_CMA=y
-CONFIG_ZSMALLOC=m
-CONFIG_SECCOMP=y
-CONFIG_KEXEC=y
-CONFIG_XEN=y
-# CONFIG_ARM64_LSE_ATOMICS is not set
-# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
-CONFIG_BINFMT_MISC=y
-CONFIG_COMPAT=y
-CONFIG_HIBERNATION=y
-CONFIG_CPU_IDLE=y
-CONFIG_ARM_CPUIDLE=y
-CONFIG_CPU_FREQ=y
-CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL=y
-CONFIG_CPU_FREQ_GOV_POWERSAVE=y
-CONFIG_CPU_FREQ_GOV_USERSPACE=y
-CONFIG_CPU_FREQ_GOV_ONDEMAND=y
-CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y
-CONFIG_CPUFREQ_DT=y
-CONFIG_ARM_BIG_LITTLE_CPUFREQ=y
-CONFIG_ARM_SCPI_CPUFREQ=y
-CONFIG_NET=y
-CONFIG_PACKET=y
-CONFIG_PACKET_DIAG=m
-CONFIG_UNIX=y
-CONFIG_UNIX_DIAG=m
-CONFIG_XFRM_USER=y
-CONFIG_NET_KEY=m
-CONFIG_NET_KEY_MIGRATE=y
-CONFIG_INET=y
-CONFIG_IP_MULTICAST=y
-CONFIG_IP_ADVANCED_ROUTER=y
-CONFIG_IP_MULTIPLE_TABLES=y
-CONFIG_IP_ROUTE_MULTIPATH=y
-CONFIG_IP_ROUTE_VERBOSE=y
-CONFIG_IP_PNP=y
-CONFIG_IP_PNP_DHCP=y
-CONFIG_IP_PNP_BOOTP=y
-CONFIG_IP_PNP_RARP=y
-CONFIG_NET_IPIP=y
-CONFIG_SYN_COOKIES=y
-CONFIG_INET_AH=m
-CONFIG_INET_ESP=m
-CONFIG_INET_IPCOMP=m
-CONFIG_INET_UDP_DIAG=m
-CONFIG_TCP_CONG_ADVANCED=y
-CONFIG_TCP_CONG_BBR=m
-CONFIG_IPV6_ROUTER_PREF=y
-CONFIG_IPV6_ROUTE_INFO=y
-CONFIG_IPV6_OPTIMISTIC_DAD=y
-CONFIG_INET6_AH=m
-CONFIG_INET6_ESP=m
-CONFIG_INET6_IPCOMP=m
-CONFIG_INET6_XFRM_MODE_TRANSPORT=m
-CONFIG_INET6_XFRM_MODE_TUNNEL=m
-CONFIG_INET6_XFRM_MODE_BEET=m
-CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m
-CONFIG_IPV6_SIT=m
-CONFIG_IPV6_TUNNEL=y
-CONFIG_IPV6_MULTIPLE_TABLES=y
-CONFIG_NETFILTER=y
-CONFIG_NF_CONNTRACK=y
-CONFIG_NF_CONNTRACK_ZONES=y
-CONFIG_NF_CONNTRACK_EVENTS=y
-CONFIG_NF_CONNTRACK_TIMESTAMP=y
-CONFIG_NF_CONNTRACK_AMANDA=m
-CONFIG_NF_CONNTRACK_FTP=m
-CONFIG_NF_CONNTRACK_H323=m
-CONFIG_NF_CONNTRACK_IRC=m
-CONFIG_NF_CONNTRACK_NETBIOS_NS=m
-CONFIG_NF_CONNTRACK_SNMP=m
-CONFIG_NF_CONNTRACK_PPTP=m
-CONFIG_NF_CONNTRACK_SANE=m
-CONFIG_NF_CONNTRACK_SIP=m
-CONFIG_NF_CONNTRACK_TFTP=m
-CONFIG_NF_CT_NETLINK=m
-CONFIG_NETFILTER_XT_SET=m
-CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m
-CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
-CONFIG_NETFILTER_XT_TARGET_CONNMARK=m
-CONFIG_NETFILTER_XT_TARGET_CT=m
-CONFIG_NETFILTER_XT_TARGET_DSCP=m
-CONFIG_NETFILTER_XT_TARGET_HMARK=m
-CONFIG_NETFILTER_XT_TARGET_IDLETIMER=m
-CONFIG_NETFILTER_XT_TARGET_LED=m
-CONFIG_NETFILTER_XT_TARGET_LOG=m
-CONFIG_NETFILTER_XT_TARGET_MARK=m
-CONFIG_NETFILTER_XT_TARGET_NFLOG=m
-CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
-CONFIG_NETFILTER_XT_TARGET_TEE=m
-CONFIG_NETFILTER_XT_TARGET_TPROXY=m
-CONFIG_NETFILTER_XT_TARGET_TRACE=m
-CONFIG_NETFILTER_XT_TARGET_TCPMSS=m
-CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m
-CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m
-CONFIG_NETFILTER_XT_MATCH_BPF=m
-CONFIG_NETFILTER_XT_MATCH_CLUSTER=m
-CONFIG_NETFILTER_XT_MATCH_COMMENT=m
-CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m
-CONFIG_NETFILTER_XT_MATCH_CONNLABEL=m
-CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m
-CONFIG_NETFILTER_XT_MATCH_CONNMARK=m
-CONFIG_NETFILTER_XT_MATCH_CONNTRACK=y
-CONFIG_NETFILTER_XT_MATCH_CPU=m
-CONFIG_NETFILTER_XT_MATCH_DCCP=m
-CONFIG_NETFILTER_XT_MATCH_DEVGROUP=m
-CONFIG_NETFILTER_XT_MATCH_DSCP=m
-CONFIG_NETFILTER_XT_MATCH_ESP=m
-CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
-CONFIG_NETFILTER_XT_MATCH_HELPER=m
-CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
-CONFIG_NETFILTER_XT_MATCH_IPVS=m
-# CONFIG_NETFILTER_XT_MATCH_L2TP is not set
-CONFIG_NETFILTER_XT_MATCH_LENGTH=m
-CONFIG_NETFILTER_XT_MATCH_LIMIT=m
-CONFIG_NETFILTER_XT_MATCH_MAC=m
-CONFIG_NETFILTER_XT_MATCH_MARK=m
-CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
-CONFIG_NETFILTER_XT_MATCH_NFACCT=m
-CONFIG_NETFILTER_XT_MATCH_OSF=m
-CONFIG_NETFILTER_XT_MATCH_OWNER=m
-CONFIG_NETFILTER_XT_MATCH_POLICY=m
-CONFIG_NETFILTER_XT_MATCH_PHYSDEV=m
-CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m
-CONFIG_NETFILTER_XT_MATCH_QUOTA=m
-CONFIG_NETFILTER_XT_MATCH_RATEEST=m
-CONFIG_NETFILTER_XT_MATCH_REALM=m
-CONFIG_NETFILTER_XT_MATCH_RECENT=m
-CONFIG_NETFILTER_XT_MATCH_STATE=m
-CONFIG_NETFILTER_XT_MATCH_STATISTIC=m
-CONFIG_NETFILTER_XT_MATCH_STRING=m
-CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
-CONFIG_NETFILTER_XT_MATCH_TIME=m
-CONFIG_NETFILTER_XT_MATCH_U32=m
-CONFIG_IP_SET=m
-CONFIG_IP_SET_BITMAP_IP=m
-CONFIG_IP_SET_BITMAP_IPMAC=m
-CONFIG_IP_SET_BITMAP_PORT=m
-CONFIG_IP_SET_HASH_IP=m
-CONFIG_IP_SET_HASH_IPPORT=m
-CONFIG_IP_SET_HASH_IPPORTIP=m
-CONFIG_IP_SET_HASH_IPPORTNET=m
-CONFIG_IP_SET_HASH_NET=m
-CONFIG_IP_SET_HASH_NETPORT=m
-CONFIG_IP_SET_HASH_NETIFACE=m
-CONFIG_IP_SET_LIST_SET=m
-CONFIG_IP_VS=m
-CONFIG_IP_VS_PROTO_TCP=y
-CONFIG_IP_VS_PROTO_UDP=y
-CONFIG_IP_VS_PROTO_ESP=y
-CONFIG_IP_VS_PROTO_AH=y
-CONFIG_IP_VS_PROTO_SCTP=y
-CONFIG_IP_VS_RR=m
-CONFIG_IP_VS_WRR=m
-CONFIG_IP_VS_LC=m
-CONFIG_IP_VS_WLC=m
-CONFIG_IP_VS_LBLC=m
-CONFIG_IP_VS_LBLCR=m
-CONFIG_IP_VS_DH=m
-CONFIG_IP_VS_SH=m
-CONFIG_IP_VS_SED=m
-CONFIG_IP_VS_NQ=m
-CONFIG_IP_VS_FTP=m
-CONFIG_IP_VS_PE_SIP=m
-CONFIG_NF_CONNTRACK_IPV4=y
-CONFIG_IP_NF_IPTABLES=y
-CONFIG_IP_NF_MATCH_AH=m
-CONFIG_IP_NF_MATCH_ECN=m
-CONFIG_IP_NF_MATCH_RPFILTER=m
-CONFIG_IP_NF_MATCH_TTL=m
-CONFIG_IP_NF_FILTER=y
-CONFIG_IP_NF_TARGET_REJECT=y
-CONFIG_IP_NF_NAT=m
-CONFIG_IP_NF_TARGET_MASQUERADE=m
-CONFIG_IP_NF_TARGET_NETMAP=m
-CONFIG_IP_NF_TARGET_REDIRECT=m
-CONFIG_IP_NF_MANGLE=m
-CONFIG_IP_NF_TARGET_CLUSTERIP=m
-CONFIG_IP_NF_TARGET_ECN=m
-CONFIG_IP_NF_TARGET_TTL=m
-CONFIG_IP_NF_RAW=m
-CONFIG_IP_NF_ARPTABLES=m
-CONFIG_IP_NF_ARPFILTER=m
-CONFIG_IP_NF_ARP_MANGLE=m
-CONFIG_NF_CONNTRACK_IPV6=y
-CONFIG_IP6_NF_IPTABLES=y
-CONFIG_IP6_NF_MATCH_AH=m
-CONFIG_IP6_NF_MATCH_EUI64=m
-CONFIG_IP6_NF_MATCH_FRAG=m
-CONFIG_IP6_NF_MATCH_HL=m
-CONFIG_IP6_NF_MATCH_IPV6HEADER=m
-CONFIG_IP6_NF_MATCH_MH=m
-CONFIG_IP6_NF_MATCH_RPFILTER=m
-CONFIG_IP6_NF_MATCH_RT=m
-CONFIG_IP6_NF_TARGET_HL=m
-CONFIG_IP6_NF_FILTER=y
-CONFIG_IP6_NF_TARGET_REJECT=y
-CONFIG_IP6_NF_MANGLE=m
-CONFIG_IP6_NF_RAW=m
-CONFIG_IP6_NF_NAT=m
-CONFIG_IP6_NF_TARGET_MASQUERADE=m
-CONFIG_IP6_NF_TARGET_NPT=m
-CONFIG_BRIDGE_NF_EBTABLES=m
-CONFIG_BRIDGE_EBT_BROUTE=m
-CONFIG_BRIDGE_EBT_T_FILTER=m
-CONFIG_BRIDGE_EBT_T_NAT=m
-CONFIG_BRIDGE_EBT_802_3=m
-CONFIG_BRIDGE_EBT_AMONG=m
-CONFIG_BRIDGE_EBT_ARP=m
-CONFIG_BRIDGE_EBT_IP=m
-CONFIG_BRIDGE_EBT_IP6=m
-CONFIG_BRIDGE_EBT_LIMIT=m
-CONFIG_BRIDGE_EBT_MARK=m
-CONFIG_BRIDGE_EBT_PKTTYPE=m
-CONFIG_BRIDGE_EBT_STP=m
-CONFIG_BRIDGE_EBT_VLAN=m
-CONFIG_BRIDGE_EBT_ARPREPLY=m
-CONFIG_BRIDGE_EBT_DNAT=m
-CONFIG_BRIDGE_EBT_MARK_T=m
-CONFIG_BRIDGE_EBT_REDIRECT=m
-CONFIG_BRIDGE_EBT_SNAT=m
-CONFIG_BRIDGE_EBT_LOG=m
-CONFIG_BRIDGE_EBT_NFLOG=m
-CONFIG_ATM=m
-CONFIG_L2TP=y
-CONFIG_L2TP_DEBUGFS=y
-CONFIG_L2TP_V3=y
-CONFIG_L2TP_IP=y
-CONFIG_L2TP_ETH=y
-CONFIG_BRIDGE=m
-CONFIG_BRIDGE_VLAN_FILTERING=y
-CONFIG_VLAN_8021Q=m
-CONFIG_VLAN_8021Q_GVRP=y
-CONFIG_VLAN_8021Q_MVRP=y
-CONFIG_ATALK=m
-CONFIG_6LOWPAN=m
-CONFIG_NET_SCHED=y
-CONFIG_NET_SCH_CBQ=m
-CONFIG_NET_SCH_HTB=m
-CONFIG_NET_SCH_HFSC=m
-CONFIG_NET_SCH_PRIO=m
-CONFIG_NET_SCH_MULTIQ=m
-CONFIG_NET_SCH_RED=m
-CONFIG_NET_SCH_SFB=m
-CONFIG_NET_SCH_SFQ=m
-CONFIG_NET_SCH_TEQL=m
-CONFIG_NET_SCH_TBF=m
-CONFIG_NET_SCH_GRED=m
-CONFIG_NET_SCH_DSMARK=m
-CONFIG_NET_SCH_NETEM=m
-CONFIG_NET_SCH_DRR=m
-CONFIG_NET_SCH_MQPRIO=m
-CONFIG_NET_SCH_CHOKE=m
-CONFIG_NET_SCH_QFQ=m
-CONFIG_NET_SCH_CODEL=m
-CONFIG_NET_SCH_FQ_CODEL=m
-CONFIG_NET_SCH_FQ=m
-CONFIG_NET_SCH_INGRESS=m
-CONFIG_NET_SCH_PLUG=m
-CONFIG_NET_CLS_BASIC=m
-CONFIG_NET_CLS_TCINDEX=m
-CONFIG_NET_CLS_ROUTE4=m
-CONFIG_NET_CLS_FW=m
-CONFIG_NET_CLS_U32=m
-CONFIG_CLS_U32_MARK=y
-CONFIG_NET_CLS_RSVP=m
-CONFIG_NET_CLS_RSVP6=m
-CONFIG_NET_CLS_FLOW=m
-CONFIG_NET_CLS_CGROUP=m
-CONFIG_NET_EMATCH=y
-CONFIG_NET_EMATCH_CMP=m
-CONFIG_NET_EMATCH_META=m
-CONFIG_NET_EMATCH_TEXT=m
-CONFIG_NET_EMATCH_IPSET=m
-CONFIG_NET_CLS_ACT=y
-CONFIG_NET_ACT_POLICE=m
-CONFIG_NET_ACT_GACT=m
-CONFIG_GACT_PROB=y
-CONFIG_NET_ACT_MIRRED=m
-CONFIG_NET_ACT_IPT=m
-CONFIG_NET_ACT_NAT=m
-CONFIG_NET_ACT_PEDIT=m
-CONFIG_NET_ACT_SIMP=m
-CONFIG_NET_ACT_SKBEDIT=m
-CONFIG_NET_ACT_CSUM=m
-CONFIG_BATMAN_ADV=m
-CONFIG_OPENVSWITCH=m
-CONFIG_BPF_JIT=y
-CONFIG_NET_PKTGEN=m
-CONFIG_HAMRADIO=y
-CONFIG_AX25=m
-CONFIG_NETROM=m
-CONFIG_ROSE=m
-CONFIG_MKISS=m
-CONFIG_6PACK=m
-CONFIG_BPQETHER=m
-CONFIG_BAYCOM_SER_FDX=m
-CONFIG_BAYCOM_SER_HDX=m
-CONFIG_YAM=m
-CONFIG_CAN=m
-CONFIG_BT=m
-CONFIG_BT_RFCOMM=m
-CONFIG_BT_RFCOMM_TTY=y
-CONFIG_BT_BNEP=m
-CONFIG_BT_BNEP_MC_FILTER=y
-CONFIG_BT_BNEP_PROTO_FILTER=y
-CONFIG_BT_HIDP=m
-CONFIG_BT_6LOWPAN=m
-CONFIG_BT_LEDS=y
-# CONFIG_BT_DEBUGFS is not set
-CONFIG_BT_HCIBTUSB=m
-CONFIG_BT_HCIBTSDIO=m
-CONFIG_BT_HCIUART=m
-CONFIG_BT_HCIUART_BCSP=y
-CONFIG_BT_HCIUART_LL=y
-CONFIG_BT_HCIUART_3WIRE=y
-CONFIG_BT_HCIUART_BCM=y
-CONFIG_BT_HCIBCM203X=m
-CONFIG_BT_HCIBPA10X=m
-CONFIG_BT_HCIBFUSB=m
-CONFIG_BT_MRVL=m
-CONFIG_BT_MRVL_SDIO=m
-CONFIG_BT_ATH3K=m
-CONFIG_CFG80211=m
-CONFIG_MAC80211=m
-CONFIG_MAC80211_MESH=y
-CONFIG_MAC80211_LEDS=y
-CONFIG_WIMAX=m
-CONFIG_RFKILL=m
-CONFIG_RFKILL_INPUT=y
-CONFIG_NET_9P=y
-CONFIG_NET_9P_VIRTIO=y
-CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
-CONFIG_DEVTMPFS=y
-CONFIG_DEVTMPFS_MOUNT=y
-CONFIG_DMA_CMA=y
-CONFIG_CMA_SIZE_MBYTES=256
-CONFIG_BRCMSTB_GISB_ARB=y
-CONFIG_VEXPRESS_CONFIG=y
-CONFIG_MTD=y
-CONFIG_MTD_CMDLINE_PARTS=m
-CONFIG_MTD_BLOCK=y
-CONFIG_MTD_OOPS=m
-CONFIG_MTD_M25P80=y
-CONFIG_MTD_NAND=y
-CONFIG_MTD_NAND_DENALI_DT=y
-CONFIG_MTD_SPI_NOR=y
-CONFIG_MTD_UBI=m
-CONFIG_ZRAM=m
-CONFIG_ZRAM_WRITEBACK=y
-CONFIG_BLK_DEV_LOOP=y
-CONFIG_BLK_DEV_CRYPTOLOOP=m
-CONFIG_BLK_DEV_DRBD=m
-CONFIG_BLK_DEV_NBD=m
-CONFIG_BLK_DEV_RAM=m
-CONFIG_VIRTIO_BLK=y
-CONFIG_SRAM=y
-CONFIG_EEPROM_AT25=m
-CONFIG_SCSI=y
-# CONFIG_SCSI_PROC_FS is not set
-CONFIG_BLK_DEV_SD=y
-CONFIG_CHR_DEV_ST=m
-CONFIG_CHR_DEV_OSST=m
-CONFIG_BLK_DEV_SR=m
-CONFIG_CHR_DEV_SG=m
-CONFIG_SCSI_SAS_LIBSAS=y
-CONFIG_ISCSI_TCP=m
-CONFIG_ISCSI_BOOT_SYSFS=m
-CONFIG_MD=y
-CONFIG_MD_LINEAR=m
-CONFIG_BLK_DEV_DM=m
-CONFIG_DM_CRYPT=m
-CONFIG_DM_SNAPSHOT=m
-CONFIG_DM_THIN_PROVISIONING=m
-CONFIG_DM_CACHE=m
-CONFIG_DM_MIRROR=m
-CONFIG_DM_LOG_USERSPACE=m
-CONFIG_DM_RAID=m
-CONFIG_DM_ZERO=m
-CONFIG_DM_DELAY=m
-CONFIG_NETDEVICES=y
-CONFIG_BONDING=m
-CONFIG_DUMMY=m
-CONFIG_IFB=m
-CONFIG_MACVLAN=m
-CONFIG_MACVTAP=m
-CONFIG_VXLAN=m
-CONFIG_NETCONSOLE=m
-CONFIG_TUN=y
-CONFIG_VETH=m
-CONFIG_VIRTIO_NET=y
-CONFIG_AMD_XGBE=y
-CONFIG_MACB=y
-CONFIG_HNS_DSAF=y
-CONFIG_HNS_ENET=y
-CONFIG_MVMDIO=y
-CONFIG_QCOM_EMAC=m
-CONFIG_SMC91X=y
-CONFIG_SMSC911X=y
-CONFIG_STMMAC_ETH=y
-# CONFIG_DWMAC_GENERIC is not set
-CONFIG_MDIO_BITBANG=y
-CONFIG_MDIO_BUS_MUX_MMIOREG=y
-CONFIG_MESON_GXL_PHY=y
-CONFIG_MICREL_PHY=y
-CONFIG_REALTEK_PHY=m
-CONFIG_PPP=m
-CONFIG_PPP_BSDCOMP=m
-CONFIG_PPP_DEFLATE=m
-CONFIG_PPP_FILTER=y
-CONFIG_PPP_MPPE=m
-CONFIG_PPP_MULTILINK=y
-CONFIG_PPPOATM=m
-CONFIG_PPPOE=m
-CONFIG_PPPOL2TP=m
-CONFIG_PPP_ASYNC=m
-CONFIG_PPP_SYNC_TTY=m
-CONFIG_SLIP=m
-CONFIG_SLIP_COMPRESSED=y
-CONFIG_SLIP_SMART=y
-CONFIG_USB_PEGASUS=m
-CONFIG_USB_RTL8150=m
-CONFIG_USB_RTL8152=m
-CONFIG_USB_USBNET=m
-CONFIG_USB_NET_DM9601=m
-CONFIG_USB_NET_SR9800=m
-CONFIG_USB_NET_SMSC75XX=m
-CONFIG_USB_NET_SMSC95XX=m
-CONFIG_USB_NET_PLUSB=m
-CONFIG_USB_NET_MCS7830=m
-CONFIG_B43=m
-CONFIG_B43_DEBUG=y
-CONFIG_B43LEGACY=m
-CONFIG_BRCMFMAC=m
-CONFIG_BRCMFMAC_USB=y
-CONFIG_HOSTAP=m
-CONFIG_HOSTAP_FIRMWARE=y
-CONFIG_HOSTAP_FIRMWARE_NVRAM=y
-CONFIG_RTL8187=m
-CONFIG_RTL8192CU=m
-CONFIG_RTL8XXXU=m
-CONFIG_RTL8XXXU_UNTESTED=y
-CONFIG_WL18XX=m
-CONFIG_WLCORE_SDIO=m
-# CONFIG_XEN_NETDEV_FRONTEND is not set
-CONFIG_INPUT_MOUSEDEV=y
-CONFIG_INPUT_MOUSEDEV_PSAUX=y
-CONFIG_INPUT_EVDEV=y
-CONFIG_KEYBOARD_ADC=m
-CONFIG_KEYBOARD_GPIO=y
-CONFIG_KEYBOARD_CROS_EC=y
-CONFIG_INPUT_MISC=y
-CONFIG_INPUT_UINPUT=y
-# CONFIG_SERIO_SERPORT is not set
-CONFIG_SERIO_AMBAKMI=y
-CONFIG_LEGACY_PTY_COUNT=16
-CONFIG_SERIAL_8250=y
-CONFIG_SERIAL_8250_CONSOLE=y
-CONFIG_SERIAL_8250_EXTENDED=y
-CONFIG_SERIAL_8250_SHARE_IRQ=y
-CONFIG_SERIAL_8250_DW=y
-CONFIG_SERIAL_OF_PLATFORM=y
-CONFIG_SERIAL_AMBA_PL011=y
-CONFIG_SERIAL_AMBA_PL011_CONSOLE=y
-CONFIG_SERIAL_MESON=y
-CONFIG_SERIAL_MESON_CONSOLE=y
-CONFIG_SERIAL_XILINX_PS_UART=y
-CONFIG_SERIAL_XILINX_PS_UART_CONSOLE=y
-CONFIG_SERIAL_DEV_BUS=y
-CONFIG_TTY_PRINTK=y
-CONFIG_VIRTIO_CONSOLE=y
-CONFIG_RAW_DRIVER=y
-CONFIG_I2C_CHARDEV=y
-CONFIG_I2C_MUX_PCA954x=y
-CONFIG_I2C_DESIGNWARE_PLATFORM=y
-CONFIG_I2C_MESON=y
-CONFIG_I2C_RK3X=y
-CONFIG_I2C_CROS_EC_TUNNEL=y
-CONFIG_I2C_SLAVE=y
-CONFIG_SPI=y
-CONFIG_SPI_MESON_SPICC=y
-CONFIG_SPI_MESON_SPIFC=m
-CONFIG_SPI_PL022=y
-CONFIG_SPI_SPIDEV=m
-CONFIG_SPMI=y
-CONFIG_PINCTRL_SINGLE=y
-CONFIG_PINCTRL_MAX77620=y
-CONFIG_GPIO_DWAPB=y
-CONFIG_GPIO_PL061=y
-CONFIG_GPIO_XGENE=y
-CONFIG_GPIO_PCA953X=y
-CONFIG_GPIO_PCA953X_IRQ=y
-CONFIG_GPIO_MAX77620=y
-CONFIG_POWER_RESET_VEXPRESS=y
-CONFIG_POWER_RESET_XGENE=y
-CONFIG_POWER_RESET_SYSCON=y
-CONFIG_SENSORS_ARM_SCPI=y
-CONFIG_SENSORS_LM90=m
-CONFIG_SENSORS_INA2XX=m
-CONFIG_THERMAL=y
-CONFIG_THERMAL_GOV_POWER_ALLOCATOR=y
-CONFIG_CPU_THERMAL=y
-CONFIG_THERMAL_EMULATION=y
-CONFIG_WATCHDOG=y
-CONFIG_MESON_GXBB_WATCHDOG=m
-CONFIG_MESON_WATCHDOG=m
-CONFIG_SSB_SDIOHOST=y
-CONFIG_BCMA_HOST_SOC=y
-CONFIG_BCMA_DRIVER_GMAC_CMN=y
-CONFIG_BCMA_DRIVER_GPIO=y
-CONFIG_BCMA_DEBUG=y
-CONFIG_MFD_CROS_EC=y
-CONFIG_MFD_CROS_EC_I2C=y
-CONFIG_MFD_CROS_EC_SPI=y
-CONFIG_MFD_MAX77620=y
-CONFIG_MFD_RK808=y
-CONFIG_MFD_SEC_CORE=y
-CONFIG_REGULATOR=y
-CONFIG_REGULATOR_FIXED_VOLTAGE=y
-CONFIG_REGULATOR_FAN53555=y
-CONFIG_REGULATOR_GPIO=y
-CONFIG_REGULATOR_MAX77620=y
-CONFIG_REGULATOR_PWM=y
-CONFIG_REGULATOR_QCOM_SPMI=y
-CONFIG_REGULATOR_RK808=y
-CONFIG_REGULATOR_S2MPS11=y
-CONFIG_RC_CORE=m
-CONFIG_RC_DECODERS=y
-CONFIG_IR_NEC_DECODER=m
-CONFIG_IR_RC5_DECODER=m
-CONFIG_IR_RC6_DECODER=m
-CONFIG_IR_JVC_DECODER=m
-CONFIG_IR_SONY_DECODER=m
-CONFIG_IR_SANYO_DECODER=m
-CONFIG_IR_SHARP_DECODER=m
-CONFIG_IR_MCE_KBD_DECODER=m
-CONFIG_IR_XMP_DECODER=m
-CONFIG_RC_DEVICES=y
-CONFIG_IR_MESON=m
-CONFIG_MEDIA_SUPPORT=y
-CONFIG_MEDIA_CAMERA_SUPPORT=y
-CONFIG_MEDIA_ANALOG_TV_SUPPORT=y
-CONFIG_MEDIA_DIGITAL_TV_SUPPORT=y
-CONFIG_MEDIA_CEC_SUPPORT=y
-CONFIG_MEDIA_CONTROLLER=y
-CONFIG_VIDEO_V4L2_SUBDEV_API=y
-# CONFIG_DVB_NET is not set
-CONFIG_V4L_MEM2MEM_DRIVERS=y
-CONFIG_VIDEO_AML_MESON_VDEC=y
-CONFIG_CEC_PLATFORM_DRIVERS=y
-CONFIG_VIDEO_MESON_AO_CEC=m
-CONFIG_DRM=y
-CONFIG_DRM_FBDEV_OVERALLOC=300
-CONFIG_DRM_I2C_CH7006=m
-CONFIG_DRM_I2C_SIL164=m
-CONFIG_DRM_I2C_ADV7511=m
-CONFIG_DRM_MESON=y
-CONFIG_FB_ARMCLCD=y
-# CONFIG_LCD_CLASS_DEVICE is not set
-# CONFIG_BACKLIGHT_GENERIC is not set
-CONFIG_FRAMEBUFFER_CONSOLE=y
-CONFIG_LOGO=y
-# CONFIG_LOGO_LINUX_VGA16 is not set
-# CONFIG_LOGO_LINUX_CLUT224 is not set
-CONFIG_SOUND=y
-CONFIG_SND=y
-CONFIG_SND_SOC=y
-CONFIG_SND_SOC_MESON=y
-CONFIG_SND_SOC_MESON_I2S=y
-CONFIG_SND_SOC_MESON_SPDIF=y
-CONFIG_SND_SOC_AK4613=y
-CONFIG_SND_SOC_DIO2125=y
-CONFIG_SND_SOC_ES7134=y
-CONFIG_SND_SIMPLE_CARD=y
-CONFIG_HID_A4TECH=y
-CONFIG_HID_APPLE=y
-CONFIG_HID_BELKIN=y
-CONFIG_HID_CHERRY=y
-CONFIG_HID_CHICONY=y
-CONFIG_HID_CYPRESS=y
-CONFIG_HID_EZKEY=y
-CONFIG_HID_ITE=y
-CONFIG_HID_KENSINGTON=y
-CONFIG_HID_LOGITECH=y
-CONFIG_HID_MICROSOFT=y
-CONFIG_HID_MONTEREY=y
-CONFIG_HID_SONY=y
-CONFIG_SONY_FF=y
-CONFIG_USB=y
-CONFIG_USB_OTG=y
-CONFIG_USB_XHCI_HCD=y
-CONFIG_USB_EHCI_HCD=y
-CONFIG_USB_EHCI_HCD_PLATFORM=y
-CONFIG_USB_OHCI_HCD=y
-CONFIG_USB_OHCI_HCD_PLATFORM=y
-CONFIG_USB_STORAGE=y
-CONFIG_USB_DWC3=y
-CONFIG_USB_DWC2=y
-CONFIG_USB_CHIPIDEA=y
-CONFIG_USB_CHIPIDEA_UDC=y
-CONFIG_USB_CHIPIDEA_HOST=y
-CONFIG_USB_ISP1760=y
-CONFIG_USB_HSIC_USB3503=y
-CONFIG_USB_ULPI=y
-CONFIG_USB_GADGET=y
-CONFIG_USB_SNP_UDC_PLAT=y
-CONFIG_MMC=y
-CONFIG_MMC_BLOCK_MINORS=32
-CONFIG_MMC_ARMMMCI=y
-CONFIG_MMC_SDHCI=y
-CONFIG_MMC_SDHCI_PLTFM=y
-CONFIG_MMC_SDHCI_OF_ARASAN=y
-CONFIG_MMC_SDHCI_CADENCE=y
-CONFIG_MMC_MESON_GX=y
-CONFIG_MMC_MESON_MX_SDIO=y
-CONFIG_MMC_SPI=y
-CONFIG_MMC_DW=y
-CONFIG_MMC_DW_EXYNOS=y
-CONFIG_MMC_DW_K3=y
-CONFIG_NEW_LEDS=y
-CONFIG_LEDS_CLASS=y
-CONFIG_LEDS_GPIO=y
-CONFIG_LEDS_SYSCON=y
-CONFIG_LEDS_TRIGGER_HEARTBEAT=y
-CONFIG_LEDS_TRIGGER_CPU=y
-CONFIG_RTC_CLASS=y
-CONFIG_RTC_DRV_MAX77686=y
-CONFIG_RTC_DRV_RK808=m
-CONFIG_RTC_DRV_S5M=y
-CONFIG_RTC_DRV_DS3232=y
-CONFIG_RTC_DRV_PL031=y
-CONFIG_DMADEVICES=y
-CONFIG_PL330_DMA=y
-CONFIG_QCOM_HIDMA_MGMT=y
-CONFIG_QCOM_HIDMA=y
-CONFIG_VIRTIO_BALLOON=y
-CONFIG_VIRTIO_MMIO=y
-CONFIG_XEN_GNTDEV=y
-CONFIG_XEN_GRANT_DEV_ALLOC=y
-CONFIG_STAGING=y
-CONFIG_RTL8723BS=m
-CONFIG_R8712U=m
-CONFIG_R8188EU=m
-CONFIG_VT6656=m
-CONFIG_MTD_SPINAND_MT29F=m
-CONFIG_COMMON_CLK_VERSATILE=y
-CONFIG_CLK_SP810=y
-CONFIG_CLK_VEXPRESS_OSC=y
-CONFIG_COMMON_CLK_RK808=y
-CONFIG_COMMON_CLK_SCPI=y
-CONFIG_COMMON_CLK_CS2000_CP=y
-CONFIG_COMMON_CLK_S2MPS11=y
-CONFIG_CLK_QORIQ=y
-CONFIG_COMMON_CLK_PWM=y
-# CONFIG_HISILICON_ERRATUM_161010101 is not set
-# CONFIG_ARM64_ERRATUM_858921 is not set
-CONFIG_ARM_TIMER_SP804=y
-CONFIG_MAILBOX=y
-CONFIG_ARM_MHU=y
-CONFIG_PLATFORM_MHU=y
-# CONFIG_IOMMU_SUPPORT is not set
-CONFIG_EXTCON_USB_GPIO=y
-CONFIG_IIO=y
-CONFIG_PWM=y
-CONFIG_PWM_MESON=m
-CONFIG_PHY_XGENE=y
-CONFIG_PHY_SAMSUNG_USB2=y
-CONFIG_MESON_EFUSE=y
-CONFIG_MESON_MX_EFUSE=y
-CONFIG_TEE=y
-CONFIG_OPTEE=y
-CONFIG_ARM_SCPI_PROTOCOL=y
-CONFIG_EXT2_FS=y
-CONFIG_EXT3_FS=y
-CONFIG_EXT4_FS_POSIX_ACL=y
-CONFIG_EXT4_FS_SECURITY=y
-CONFIG_JBD2_DEBUG=y
-CONFIG_REISERFS_FS=y
-CONFIG_JFS_FS=y
-CONFIG_JFS_POSIX_ACL=y
-CONFIG_JFS_SECURITY=y
-CONFIG_JFS_STATISTICS=y
-CONFIG_XFS_FS=m
-CONFIG_XFS_QUOTA=y
-CONFIG_XFS_POSIX_ACL=y
-CONFIG_XFS_RT=y
-CONFIG_GFS2_FS=m
-CONFIG_OCFS2_FS=m
-CONFIG_BTRFS_FS=m
-CONFIG_BTRFS_FS_POSIX_ACL=y
-CONFIG_NILFS2_FS=m
-CONFIG_F2FS_FS=y
-CONFIG_F2FS_FS_SECURITY=y
-CONFIG_F2FS_CHECK_FS=y
-CONFIG_F2FS_FS_ENCRYPTION=y
-CONFIG_FANOTIFY=y
-CONFIG_FANOTIFY_ACCESS_PERMISSIONS=y
-CONFIG_QFMT_V1=m
-CONFIG_QFMT_V2=m
-CONFIG_AUTOFS4_FS=y
-CONFIG_FUSE_FS=m
-CONFIG_CUSE=m
-CONFIG_OVERLAY_FS=m
-CONFIG_FSCACHE=y
-CONFIG_FSCACHE_STATS=y
-CONFIG_FSCACHE_HISTOGRAM=y
-CONFIG_CACHEFILES=y
-CONFIG_ISO9660_FS=m
-CONFIG_JOLIET=y
-CONFIG_ZISOFS=y
-CONFIG_UDF_FS=m
-CONFIG_MSDOS_FS=y
-CONFIG_VFAT_FS=y
-CONFIG_FAT_DEFAULT_IOCHARSET="ascii"
-CONFIG_FAT_DEFAULT_UTF8=y
-CONFIG_NTFS_FS=m
-CONFIG_NTFS_RW=y
-CONFIG_TMPFS=y
-CONFIG_TMPFS_POSIX_ACL=y
-CONFIG_HUGETLBFS=y
-CONFIG_CONFIGFS_FS=y
-CONFIG_ECRYPT_FS=m
-CONFIG_HFS_FS=m
-CONFIG_HFSPLUS_FS=m
-CONFIG_JFFS2_FS=m
-CONFIG_JFFS2_SUMMARY=y
-CONFIG_UBIFS_FS=m
-CONFIG_SQUASHFS=m
-CONFIG_SQUASHFS_XATTR=y
-CONFIG_SQUASHFS_LZ4=y
-CONFIG_SQUASHFS_LZO=y
-CONFIG_SQUASHFS_XZ=y
-CONFIG_SQUASHFS_ZSTD=y
-CONFIG_PSTORE=y
-CONFIG_NFS_FS=y
-CONFIG_NFS_V3_ACL=y
-CONFIG_NFS_V4=y
-CONFIG_NFS_SWAP=y
-CONFIG_NFS_V4_1=y
-CONFIG_NFS_V4_2=y
-CONFIG_NFS_V4_1_MIGRATION=y
-CONFIG_ROOT_NFS=y
-CONFIG_NFSD=m
-CONFIG_NFSD_V3_ACL=y
-CONFIG_NFSD_V4=y
-CONFIG_NFSD_BLOCKLAYOUT=y
-CONFIG_NFSD_SCSILAYOUT=y
-CONFIG_NFSD_FLEXFILELAYOUT=y
-CONFIG_CIFS=m
-CONFIG_CIFS_WEAK_PW_HASH=y
-CONFIG_CIFS_UPCALL=y
-CONFIG_CIFS_XATTR=y
-CONFIG_CIFS_POSIX=y
-CONFIG_CIFS_ACL=y
-CONFIG_CIFS_DFS_UPCALL=y
-CONFIG_CIFS_FSCACHE=y
-CONFIG_9P_FS=m
-CONFIG_9P_FS_POSIX_ACL=y
-CONFIG_NLS_DEFAULT="utf8"
-CONFIG_NLS_CODEPAGE_437=y
-CONFIG_NLS_CODEPAGE_737=m
-CONFIG_NLS_CODEPAGE_775=m
-CONFIG_NLS_CODEPAGE_850=m
-CONFIG_NLS_CODEPAGE_852=m
-CONFIG_NLS_CODEPAGE_855=m
-CONFIG_NLS_CODEPAGE_857=m
-CONFIG_NLS_CODEPAGE_860=m
-CONFIG_NLS_CODEPAGE_861=m
-CONFIG_NLS_CODEPAGE_862=m
-CONFIG_NLS_CODEPAGE_863=m
-CONFIG_NLS_CODEPAGE_864=m
-CONFIG_NLS_CODEPAGE_865=m
-CONFIG_NLS_CODEPAGE_866=m
-CONFIG_NLS_CODEPAGE_869=m
-CONFIG_NLS_CODEPAGE_936=m
-CONFIG_NLS_CODEPAGE_950=m
-CONFIG_NLS_CODEPAGE_932=m
-CONFIG_NLS_CODEPAGE_949=m
-CONFIG_NLS_CODEPAGE_874=m
-CONFIG_NLS_ISO8859_8=m
-CONFIG_NLS_CODEPAGE_1250=m
-CONFIG_NLS_CODEPAGE_1251=m
-CONFIG_NLS_ASCII=y
-CONFIG_NLS_ISO8859_1=m
-CONFIG_NLS_ISO8859_2=m
-CONFIG_NLS_ISO8859_3=m
-CONFIG_NLS_ISO8859_4=m
-CONFIG_NLS_ISO8859_5=m
-CONFIG_NLS_ISO8859_6=m
-CONFIG_NLS_ISO8859_7=m
-CONFIG_NLS_ISO8859_9=m
-CONFIG_NLS_ISO8859_13=m
-CONFIG_NLS_ISO8859_14=m
-CONFIG_NLS_ISO8859_15=m
-CONFIG_NLS_KOI8_R=m
-CONFIG_NLS_KOI8_U=m
-CONFIG_VIRTUALIZATION=y
-CONFIG_KVM=y
-CONFIG_VHOST_NET=m
-CONFIG_VHOST_CROSS_ENDIAN_LEGACY=y
-CONFIG_PRINTK_TIME=y
-CONFIG_DYNAMIC_DEBUG=y
-CONFIG_DEBUG_FS=y
-CONFIG_MAGIC_SYSRQ=y
-CONFIG_DETECT_HUNG_TASK=y
-# CONFIG_SCHED_DEBUG is not set
-# CONFIG_DEBUG_PREEMPT is not set
-# CONFIG_FTRACE is not set
-CONFIG_MEMTEST=y
-# CONFIG_STRICT_DEVMEM is not set
-CONFIG_SECURITY=y
-CONFIG_CRYPTO_ECHAINIV=y
-CONFIG_CRYPTO_LZ4=m
-CONFIG_CRYPTO_LZ4HC=m
-CONFIG_CRYPTO_ANSI_CPRNG=y
-CONFIG_ARM64_CRYPTO=y
-CONFIG_CRYPTO_SHA1_ARM64_CE=y
-CONFIG_CRYPTO_SHA2_ARM64_CE=y
-CONFIG_CRYPTO_GHASH_ARM64_CE=y
-CONFIG_CRYPTO_AES_ARM64_CE_CCM=y
-CONFIG_CRYPTO_AES_ARM64_CE_BLK=y
-CONFIG_CRYPTO_CHACHA20_NEON=y
-CONFIG_CRYPTO_AES_ARM64_BS=y
-CONFIG_CORDIC=m
diff --git a/testing/linux-amlogic/text_offset.patch b/testing/linux-amlogic/text_offset.patch
deleted file mode 100644
index fff476e6562..00000000000
--- a/testing/linux-amlogic/text_offset.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-diff --git a/arch/arm64/Makefile b/arch/arm64/Makefile
-index 106039d..651d990 100644
---- a/arch/arm64/Makefile
-+++ b/arch/arm64/Makefile
-@@ -88,7 +88,7 @@ TEXT_OFFSET := $(shell awk "BEGIN {srand(); printf \"0x%06x\n\", \
- int(2 * 1024 * 1024 / (2 ^ $(CONFIG_ARM64_PAGE_SHIFT)) * \
- rand()) * (2 ^ $(CONFIG_ARM64_PAGE_SHIFT))}")
- else
--TEXT_OFFSET := 0x00080000
-+TEXT_OFFSET := 0x01080000
- endif
-
- # KASAN_SHADOW_OFFSET = VA_START + (1 << (VA_BITS - KASAN_SHADOW_SCALE_SHIFT))
-diff --git a/arch/arm64/kernel/head.S b/arch/arm64/kernel/head.S
-index b085306..68edc91 100644
---- a/arch/arm64/kernel/head.S
-+++ b/arch/arm64/kernel/head.S
-@@ -51,7 +51,7 @@
- #elif (PAGE_OFFSET & 0x1fffff) != 0
- #error PAGE_OFFSET must be at least 2MB aligned
- #elif TEXT_OFFSET > 0x1fffff
--#error TEXT_OFFSET must be less than 2MB
-+//#error TEXT_OFFSET must be less than 2MB
- #endif
-
- /*
diff --git a/testing/linux-apfs-rw-src/APKBUILD b/testing/linux-apfs-rw-src/APKBUILD
index eff37c6381b..07366d59d28 100644
--- a/testing/linux-apfs-rw-src/APKBUILD
+++ b/testing/linux-apfs-rw-src/APKBUILD
@@ -1,36 +1,33 @@
-# Maintainer: Dekedro <dekedro@tankers.xyz>
+# Maintainer: Dekedro <dekedro@protonmail.com>
pkgname=linux-apfs-rw-src
_modname=linux-apfs-rw
-pkgver=0_git20210823
-_commit=0b5ba5e5a953786615f9fe30e2d49ce24187b451
+pkgver=0.3.8
pkgrel=0
pkgdesc="APFS module for linux, with experimental write support (sources, AKMS)"
url="https://github.com/linux-apfs/linux-apfs-rw"
arch="noarch"
license="GPL-2.0-only"
options="!check" # no tests
-source="$_modname-$pkgver.tar.gz::https://github.com/linux-apfs/linux-apfs-rw/archive/$_commit.tar.gz
- modules-load.conf"
-builddir="$srcdir/$_modname-$_commit"
+source="$_modname-$pkgver.tar.gz::https://github.com/linux-apfs/linux-apfs-rw/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/$_modname-$pkgver"
prepare() {
default_prepare
- cat >AKMBUILD <<- EOF
- modname=$_modname
- modver=$pkgver-r$pkgrel
- built_modules='apfs.ko'
+ cat > AKMBUILD <<- EOF
+ modname=$_modname
+ modver=$pkgver-r$pkgrel
+ built_modules='apfs.ko'
EOF
+ printf '#define GIT_COMMIT\t"%s"\n' "$pkgver-alpine-r$pkgrel" > version.h
}
package() {
install -Dm644 -t "$pkgdir/usr/src/$_modname-$pkgver" -- *.c *.h \
Makefile AKMBUILD
- install -Dm644 "$srcdir"/modules-load.conf \
- "$pkgdir"/usr/lib/modules-load.d/$_modname.conf
+ cp -a lzfse "$pkgdir/usr/src/$_modname-$pkgver/"
}
sha512sums="
-b8999e68b4ff83808dfef46f4127ec58bbd0736ad001d11e905379b2e880878d22bad8607122064a3f2b455255ed4a7e6eb6a04b2c98ffdd700cfd3bea529827 linux-apfs-rw-0_git20210823.tar.gz
-d49b16b7d824cf9fa21461723827791b50035f521046718d1bbbf4ea3b60ecd12822e8e7adbb3dab9f946bfcd04217810c1358d7e194199e84fc6339cc1568a8 modules-load.conf
+09947f67827da4e3c6a8f4c3ba8de6ccceeee397fb8010771298a0207218d09ef47b9707125e8c29f78a2aa052f95e59f7f38d3a2e3864b4fb84ffb66ee6c575 linux-apfs-rw-0.3.8.tar.gz
"
diff --git a/testing/linux-apfs-rw-src/modules-load.conf b/testing/linux-apfs-rw-src/modules-load.conf
deleted file mode 100644
index 4caec4511d3..00000000000
--- a/testing/linux-apfs-rw-src/modules-load.conf
+++ /dev/null
@@ -1 +0,0 @@
-apfs
diff --git a/testing/linux-asahi/385ea7b5023486aba7919cec8b6b3f6a843a1013.patch b/testing/linux-asahi/385ea7b5023486aba7919cec8b6b3f6a843a1013.patch
new file mode 100644
index 00000000000..ffe87db0242
--- /dev/null
+++ b/testing/linux-asahi/385ea7b5023486aba7919cec8b6b3f6a843a1013.patch
@@ -0,0 +1,78 @@
+From 385ea7b5023486aba7919cec8b6b3f6a843a1013 Mon Sep 17 00:00:00 2001
+From: Hector Martin <marcan@marcan.st>
+Date: Fri, 15 Dec 2023 20:38:32 +0900
+Subject: [PATCH] READ COMMIT MESSAGE! macaudio: Enable first round of models
+
+Enables j313, j293, j493, j314, j414, j274, j375, j473, j474, j475
+
+*** WARNING FOR DISTRO PACKAGERS WANTING TO APPLY THIS: ***
+*** YOU ABSOLUTELY NEED THIS PATCH IN YOUR LSP-PLUGINS PACKAGE ***
+
+https://github.com/lsp-plugins/lsp-dsp-lib/pull/20
+
+Do NOT enable speakers without that patch, on any model. It can/will
+result in nasty noise that could damage them.
+
+Signed-off-by: Hector Martin <marcan@marcan.st>
+---
+ sound/soc/apple/macaudio.c | 20 ++++++++++++--------
+ 1 file changed, 12 insertions(+), 8 deletions(-)
+
+diff --git a/sound/soc/apple/macaudio.c b/sound/soc/apple/macaudio.c
+index f5b349057a67e1..d2ced87e88c0e1 100644
+--- a/sound/soc/apple/macaudio.c
++++ b/sound/soc/apple/macaudio.c
+@@ -1490,23 +1490,27 @@ struct macaudio_platform_cfg macaudio_j180_cfg = {
+ false, AMP_SN012776, SPKR_1W1T, false, 10, -20,
+ };
+ struct macaudio_platform_cfg macaudio_j274_cfg = {
+- false, AMP_TAS5770, SPKR_1W, false, 20, -20,
++ true, AMP_TAS5770, SPKR_1W, false, 20, -20,
+ };
+
+ struct macaudio_platform_cfg macaudio_j293_cfg = {
+- false, AMP_TAS5770, SPKR_2W, true, 15, -20,
++ true, AMP_TAS5770, SPKR_2W, true, 15, -20,
+ };
+
+ struct macaudio_platform_cfg macaudio_j313_cfg = {
+- false, AMP_TAS5770, SPKR_1W, true, 10, -20,
++ true, AMP_TAS5770, SPKR_1W, true, 10, -20,
+ };
+
+-struct macaudio_platform_cfg macaudio_j314_j316_cfg = {
++struct macaudio_platform_cfg macaudio_j314_cfg = {
++ true, AMP_SN012776, SPKR_2W1T, true, 15, -20,
++};
++
++struct macaudio_platform_cfg macaudio_j316_cfg = {
+ false, AMP_SN012776, SPKR_2W1T, true, 15, -20,
+ };
+
+ struct macaudio_platform_cfg macaudio_j37x_j47x_cfg = {
+- false, AMP_SN012776, SPKR_1W, false, 20, -20,
++ true, AMP_SN012776, SPKR_1W, false, 20, -20,
+ };
+
+ struct macaudio_platform_cfg macaudio_j413_cfg = {
+@@ -1522,7 +1526,7 @@ struct macaudio_platform_cfg macaudio_j45x_cfg = {
+ };
+
+ struct macaudio_platform_cfg macaudio_j493_cfg = {
+- false, AMP_SN012776, SPKR_2W, true, 15, -20,
++ true, AMP_SN012776, SPKR_2W, true, 15, -20,
+ };
+
+ struct macaudio_platform_cfg macaudio_fallback_cfg = {
+@@ -1558,9 +1562,9 @@ static const struct of_device_id macaudio_snd_device_id[] = {
+ /* j313 AID4 tas5770 10 2× 1W */
+ { .compatible = "apple,j313-macaudio", .data = &macaudio_j313_cfg },
+ /* j314 AID8 sn012776 15 2× 2W+1T */
+- { .compatible = "apple,j314-macaudio", .data = &macaudio_j314_j316_cfg },
++ { .compatible = "apple,j314-macaudio", .data = &macaudio_j314_cfg },
+ /* j316 AID9 sn012776 15 2× 2W+1T */
+- { .compatible = "apple,j316-macaudio", .data = &macaudio_j314_j316_cfg },
++ { .compatible = "apple,j316-macaudio", .data = &macaudio_j316_cfg },
+ /* j375 AID10 sn012776 15 1× 1W */
+ { .compatible = "apple,j375-macaudio", .data = &macaudio_j37x_j47x_cfg },
+ /* j413 AID13 sn012776 15 2× 1W+1T */
diff --git a/testing/linux-asahi/6a24102c06c95951ab992e2d41336cc6d4bfdf23.patch b/testing/linux-asahi/6a24102c06c95951ab992e2d41336cc6d4bfdf23.patch
new file mode 100644
index 00000000000..44d5b2dabfc
--- /dev/null
+++ b/testing/linux-asahi/6a24102c06c95951ab992e2d41336cc6d4bfdf23.patch
@@ -0,0 +1,47 @@
+From 6a24102c06c95951ab992e2d41336cc6d4bfdf23 Mon Sep 17 00:00:00 2001
+From: Hector Martin <marcan@marcan.st>
+Date: Fri, 15 Dec 2023 20:40:53 +0900
+Subject: [PATCH] READ COMMIT MESSAGE! macaudio: Enable second round of models
+
+Enables j316, j413, j415, j416
+
+*** WARNING FOR DISTRO PACKAGERS WANTING TO APPLY THIS: ***
+*** YOU ABSOLUTELY NEED THIS PATCH IN YOUR LSP-PLUGINS PACKAGE ***
+
+https://github.com/lsp-plugins/lsp-dsp-lib/pull/20
+
+Do NOT enable speakers without that patch, on any model. It can/will
+result in nasty noise that could damage them.
+
+Signed-off-by: Hector Martin <marcan@marcan.st>
+---
+ sound/soc/apple/macaudio.c | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/sound/soc/apple/macaudio.c b/sound/soc/apple/macaudio.c
+index d2ced87e88c0e1..f347f08b7ad01e 100644
+--- a/sound/soc/apple/macaudio.c
++++ b/sound/soc/apple/macaudio.c
+@@ -1506,7 +1506,7 @@ struct macaudio_platform_cfg macaudio_j314_cfg = {
+ };
+
+ struct macaudio_platform_cfg macaudio_j316_cfg = {
+- false, AMP_SN012776, SPKR_2W1T, true, 15, -20,
++ true, AMP_SN012776, SPKR_2W1T, true, 15, -20,
+ };
+
+ struct macaudio_platform_cfg macaudio_j37x_j47x_cfg = {
+@@ -1514,11 +1514,11 @@ struct macaudio_platform_cfg macaudio_j37x_j47x_cfg = {
+ };
+
+ struct macaudio_platform_cfg macaudio_j413_cfg = {
+- false, AMP_SN012776, SPKR_1W1T, true, 15, -20,
++ true, AMP_SN012776, SPKR_1W1T, true, 15, -20,
+ };
+
+ struct macaudio_platform_cfg macaudio_j415_cfg = {
+- false, AMP_SN012776, SPKR_2W1T, true, 15, -20,
++ true, AMP_SN012776, SPKR_2W1T, true, 15, -20,
+ };
+
+ struct macaudio_platform_cfg macaudio_j45x_cfg = {
diff --git a/testing/linux-asahi/APKBUILD b/testing/linux-asahi/APKBUILD
index 580c7ac9bef..2826dbc6962 100644
--- a/testing/linux-asahi/APKBUILD
+++ b/testing/linux-asahi/APKBUILD
@@ -2,30 +2,40 @@
_flavor=asahi
pkgname=linux-${_flavor}
-pkgver=5.17.0_rc7
-kver=${pkgver//_/-}
-_commit_id=00e23945f258f06ed0cb0dd9ea44272cbdfc7346
+pkgver=6.6_p15
+
+_rel=${pkgver#*_p}
+kver=${pkgver%_p*}
+kver=${kver//_/-}
+_asahiver=$kver-$_rel
pkgdesc="Apple Silicon (M1 development kernel)"
-pkgrel=3
+pkgrel=2
url="https://www.kernel.org"
-depends="mkinitfs"
-_depends_dev="perl gmp-dev elfutils-dev bash flex bison"
-makedepends="$_depends_dev sed bc linux-headers
- linux-firmware-any openssl1.1-compat-dev diffutils findutils"
+depends="initramfs-generator speakersafetyd"
+_depends_dev="perl gmp-dev elfutils-dev flex bison"
+makedepends="$_depends_dev sed bc linux-headers installkernel
+ linux-firmware-any openssl-dev diffutils findutils
+ clang16-libclang
+ rust
+ rustfmt
+ rust-bindgen
+ rust-src
+ "
options="!strip !check"
_config=${config:-config-asahi.${CARCH}}
-
subpackages="$pkgname-dev:_dev:$CBUILD_ARCH"
-source="linux-asahi-$pkgver.tar.gz::https://github.com/AsahiLinux/linux/archive/${_commit_id}.tar.gz
+source="linux-asahi-$_asahiver.tar.gz::https://github.com/AsahiLinux/linux/archive/refs/tags/asahi-$_asahiver.tar.gz
config-asahi.aarch64
+
+ 385ea7b5023486aba7919cec8b6b3f6a843a1013.patch
+ 6a24102c06c95951ab992e2d41336cc6d4bfdf23.patch
"
-builddir="$srcdir/linux-${_commit_id}"
-_builddir="$srcdir/linux-${_commit_id}"
+builddir="$srcdir/linux-asahi-$_asahiver"
arch="aarch64"
-license="GPL-2.0"
+license="GPL-2.0-only"
-_flavors=
+unset _flavors
for _i in $source; do
case $_i in
config-*.$CARCH)
@@ -46,50 +56,20 @@ arm*) _carch="arm" ;;
esac
prepare() {
- local _patch_failed=
- cd "$srcdir"/linux-${_commit_id}
- case $pkgver in
- *.*.0);;
- *)
- msg "Applying patch-$pkgver.xz"
- # unxz -c < "$srcdir"/patch-$pkgver.xz | patch -p1 -N ;;
- esac
-
- # first apply patches in specified order
- for i in $source; do
- case $i in
- *.patch)
- msg "Applying $i..."
- if ! patch -s -p1 -N -i "$srcdir"/$i; then
- echo $i >>failed
- _patch_failed=1
- fi
- ;;
- esac
- done
-
- if ! [ -z "$_patch_failed" ]; then
- error "The following patches failed:"
- cat failed
- return 1
- fi
- sed -i 's/^#EXTRAVERSION =/EXTRAVERSION =/' "$srcdir"/linux-${_commit_id}/Makefile
- sed -i 's/^EXTRAVERSION :=/#EXTRAVERSION :=/' "$srcdir"/linux-${_commit_id}/Makefile
- # remove localversion from patch if any
- rm -f localversion*
+ default_prepare
+ rm "$builddir"/localversion*
+ echo "-$_rel-asahi" > "$builddir"/localversion-alpine
oldconfig
}
oldconfig() {
for i in $_flavors; do
local _config=config-$i.${CARCH}
- local _builddir="$srcdir"/build-$i.$CARCH
+ local _builddir="$srcdir"/build-$i
mkdir -p "$_builddir"
- echo "-$pkgrel-$i" > "$_builddir"/localversion-alpine \
- || return 1
cp "$srcdir"/$_config "$_builddir"/.config
- make -C "$srcdir"/linux-$_commit_id \
+ make -C $builddir \
O="$_builddir" \
ARCH="$_carch" \
listnewconfig oldconfig
@@ -100,46 +80,35 @@ build() {
unset LDFLAGS
export KBUILD_BUILD_TIMESTAMP="$(date -Ru${SOURCE_DATE_EPOCH:+d @$SOURCE_DATE_EPOCH})"
for i in $_flavors; do
- cd "$srcdir"/build-$i.$CARCH
- make ARCH="$_carch" CC="${CC:-gcc}" \
+ local _builddir="$srcdir"/build-$i
+ make -C "$srcdir"/build-$i \
+ ARCH="$_carch" CC="${CC:-gcc}" \
KBUILD_BUILD_VERSION="$((pkgrel + 1 ))-Alpine"
done
}
_package() {
local _buildflavor="$1" _outdir="$2"
- local _abi_release=${kver}-${pkgrel}-${_buildflavor}
export KBUILD_BUILD_TIMESTAMP="$(date -Ru${SOURCE_DATE_EPOCH:+d @$SOURCE_DATE_EPOCH})"
- cd "$srcdir"/build-$_buildflavor.$CARCH
- # modules_install seems to regenerate a defect Modules.symvers on s390x. Work
- # around it by backing it up and restore it after modules_install
- cp Module.symvers Module.symvers.backup
+ cd "$srcdir"/build-$_buildflavor
+ local _abi_release="$(make -s kernelrelease)"
mkdir -p "$_outdir"/boot "$_outdir"/lib/modules
- local _install
- case "$CARCH" in
- arm*|aarch64) _install="zinstall dtbs_install";;
- *) _install=install;;
- esac
-
- make -j1 modules_install $_install \
+ make -j1 modules_install zinstall dtbs_install \
ARCH="$_carch" \
INSTALL_MOD_PATH="$_outdir" \
+ INSTALL_MOD_STRIP=1 \
INSTALL_PATH="$_outdir"/boot \
INSTALL_DTBS_PATH="$_outdir/boot/dtbs-$_buildflavor"
- cp Module.symvers.backup Module.symvers
-
- rm -f "$_outdir"/lib/modules/${_abi_release}/build \
+ rm -f -- "$_outdir"/lib/modules/${_abi_release}/build \
"$_outdir"/lib/modules/${_abi_release}/source
- rm -rf "$_outdir"/lib/firmware
+ rm -rf -- "$_outdir"/lib/firmware
install -D -m644 include/config/kernel.release \
"$_outdir"/usr/share/kernel/$_buildflavor/kernel.release
- cp "$srcdir"/build-$_flavor.$CARCH/.config $pkgdir/boot/config-$_flavor
-
}
# main flavor installs in $pkgdir
@@ -151,7 +120,8 @@ package() {
_dev() {
local _flavor=$(echo $subpkgname | sed -E 's/(^linux-|-dev$)//g')
- local _abi_release=${pkgver}-${pkgrel}-$_flavor
+ local O="$srcdir/build-$_flavor"
+ local _abi_release="$(make -C "$O" -s kernelrelease)"
# copy the only the parts that we really need for build 3rd party
# kernel modules and install those as /usr/src/linux-headers,
# simlar to what ubuntu does
@@ -164,44 +134,86 @@ _dev() {
local dir="$subpkgdir"/usr/src/linux-headers-${_abi_release}
export KBUILD_BUILD_TIMESTAMP="$(date -Ru${SOURCE_DATE_EPOCH:+d @$SOURCE_DATE_EPOCH})"
- # first we import config, run prepare to set up for building
- # external modules, and create the scripts
- mkdir -p "$dir"
- cp "$srcdir"/config-$_flavor.${CARCH} "$dir"/.config
- echo "-$pkgrel-$_flavor" > "$dir"/localversion-alpine
+ # kernel sources
+ cd "$builddir"
- make -j1 -C "$srcdir"/linux-${_commit_id} O="$dir" ARCH="$_carch" \
- syncconfig prepare modules_prepare scripts
+ msg "Installing build files"
+ install -Dt "$dir" -m644 Makefile localversion* \
+ "$O/.config" "$O/Module.symvers" "$O/System.map" \
+ "$O/vmlinux"
+ install -Dt "$dir"/kernel -m644 kernel/Makefile
+ cp -t "$dir" -a scripts "$O/scripts"
- # remove the stuff that points to real sources. we want 3rd party
- # modules to believe this is the soruces
- rm "$dir"/Makefile "$dir"/source
+ msg "Installing headers..."
+ cp -t "$dir" -a include "$O/include"
- # copy the needed stuff from real sources
- #
- # this is taken from ubuntu kernel build script
- # http://kernel.ubuntu.com/git/ubuntu/ubuntu-zesty.git/tree/debian/rules.d/3-binary-indep.mk
- cd "$srcdir"/linux-${_commit_id}
- find . -path './include/*' -prune \
- -o -path './scripts/*' -prune -o -type f \
- \( -name 'Makefile*' -o -name 'Kconfig*' -o -name 'Kbuild*' -o \
- -name '*.sh' -o -name '*.pl' -o -name '*.lds' -o -name 'Platform' \) \
- -print | cpio -pdm "$dir"
+ install -Dt "$dir/arch/$_carch" -m644 $builddir/arch/$_carch/Makefile
+ install -Dt "$dir/arch/$_carch/kernel" -m644 "$O"/arch/$_carch/kernel/asm-offsets.s
+ cp -t "$dir/arch/$_carch" -a arch/$_carch/include $O/arch/$_carch/include
+
+ install -Dt "$dir/drivers/md" -m644 drivers/md/*.h
+ install -Dt "$dir/net/mac80211" -m644 net/mac80211/*.h
+
+ # https://bugs.archlinux.org/task/13146
+ install -Dt "$dir/drivers/media/i2c" -m644 drivers/media/i2c/msp3400-driver.h
+
+ # https://bugs.archlinux.org/task/20402
+ install -Dt "$dir/drivers/media/usb/dvb-usb" -m644 drivers/media/usb/dvb-usb/*.h
+ install -Dt "$dir/drivers/media/dvb-frontends" -m644 drivers/media/dvb-frontends/*.h
+ install -Dt "$dir/drivers/media/tuners" -m644 drivers/media/tuners/*.h
+
+ # https://bugs.archlinux.org/task/71392
+ install -Dt "$dir/drivers/iio/common/hid-sensors" -m644 drivers/iio/common/hid-sensors/*.h
- cp -a scripts include "$dir"
+ msg "Installing KConfig files..."
+ find . -name 'Kconfig*' -exec install -Dm644 {} "$dir/{}" \;
- find $(find arch -name include -type d -print) -type f \
- | cpio -pdm "$dir"
+ msg "Removing unneeded architectures..."
+ local arch
+ for arch in "$dir"/arch/*/; do
+ case $(basename "$arch") in
+ $_carch) continue ;;
+ esac
+ echo " - Removing $(basename "$arch")"
+ rm -r "$arch"
+ done
+
+ msg "Removing documentation"
+ rm -r "$dir"/Documentation
+
+ msg "Removing broken symlinks..."
+ find -L "$dir" -type l -printf 'Removing %P\n' -delete
+
+ msg "Removing loose objects..."
+ find "$dir" -type f -name '*.o' -printf 'Removing %P\n' -delete
+
+ msg "Stripping build tools..."
+ local file
+ find "$dir" -type f -perm -u+x ! -name vmlinux -print0 | while read -rd '' file; do
+ case "$(file -bi "$file")" in
+ application/x-sharedlib\;*) # Libraries (.so)
+ strip -v $STRIP_SHARED "$file" ;;
+ application/x-archive\;*) # Libraries (.a)
+ strip -v $STRIP_STATIC "$file" ;;
+ application/x-executable\;*) # Binaries
+ strip -v $STRIP_BINARIES "$file" ;;
+ application/x-pie-executable\;*) # Relocatable binaries
+ strip -v $STRIP_SHARED "$file" ;;
+ esac
+ done
- install -Dm644 "$srcdir"/build-$_flavor.$CARCH/Module.symvers \
- "$dir"/Module.symvers
+ msg "Stripping vmlinux..."
+ strip -v $STRIP_STATIC "$dir/vmlinux"
+ msg "Adding symlink..."
mkdir -p "$subpkgdir"/lib/modules/${_abi_release}
ln -sf /usr/src/linux-headers-${_abi_release} \
"$subpkgdir"/lib/modules/${_abi_release}/build
}
sha512sums="
-7b02a46a2d94f4c7190444a0cb11c109c0f9d85cb7befcfa192a08a822d7dc648bc4a1876b3748a24dede9c941e987942b91b200b3f7bd8dcfab7e227b1ffd57 linux-asahi-5.17.0_rc7.tar.gz
-f23af77f49e3a76c64180efdd0495a65e93296444d8e69e2d49aabdf7fbd48569fc709f018831fe721a76b8d53dda6d9f4e4460d4e4f803a351b008def022fa5 config-asahi.aarch64
+b261e3813f1c0f5bae3a24e7ed0dce41470cfe2ee965ab0121d41793aa08f72d0d91be633f7ba0317f265a6e98a7a134cf86a29e7d48dbb58c5f5f7a3a13cc53 linux-asahi-6.6-15.tar.gz
+0ed687414c03c7ef83842b0bc1ff95ec4f2f73a7eb9b3ca28e0c3f78ad7f3f03cfcc5c1c216548d3f5ec2ff10f59314c44776418807959b04558632d7f683209 config-asahi.aarch64
+0ceb12811db6c517871bf741605055a2c970d045de582e37d8f05d8717e4b26f995f06d479be5c2e6c08a6eb6d00bd3cce6ed9ea8e416afb39c664cf571f480c 385ea7b5023486aba7919cec8b6b3f6a843a1013.patch
+ae7f79b79e695775ae81c2ef77b9009dfcee488e727fc2a543194a267c19dabf53f1d44bcc8bf8cfa3f388a84bf5658c1e0a8d291ec1005d668cfa5c7ee4fbb0 6a24102c06c95951ab992e2d41336cc6d4bfdf23.patch
"
diff --git a/testing/linux-asahi/config-asahi.aarch64 b/testing/linux-asahi/config-asahi.aarch64
index 207e765f67c..48d9e9a14a6 100644
--- a/testing/linux-asahi/config-asahi.aarch64
+++ b/testing/linux-asahi/config-asahi.aarch64
@@ -1,23 +1,25 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/arm64 5.17.0-rc7 Kernel Configuration
+# Linux/arm64 6.6.0 Kernel Configuration
#
-CONFIG_CC_VERSION_TEXT="gcc (Alpine 11.2.1_git20220219) 11.2.1 20220219"
+CONFIG_CC_VERSION_TEXT="gcc (Alpine 13.2.1_git20231014) 13.2.1 20231014"
CONFIG_CC_IS_GCC=y
-CONFIG_GCC_VERSION=110201
+CONFIG_GCC_VERSION=130201
CONFIG_CLANG_VERSION=0
CONFIG_AS_IS_GNU=y
-CONFIG_AS_VERSION=23800
+CONFIG_AS_VERSION=24100
CONFIG_LD_IS_BFD=y
-CONFIG_LD_VERSION=23800
+CONFIG_LD_VERSION=24100
CONFIG_LLD_VERSION=0
+CONFIG_RUST_IS_AVAILABLE=y
CONFIG_CC_CAN_LINK=y
CONFIG_CC_CAN_LINK_STATIC=y
-CONFIG_CC_HAS_ASM_GOTO=y
CONFIG_CC_HAS_ASM_GOTO_OUTPUT=y
+CONFIG_CC_HAS_ASM_GOTO_TIED_OUTPUT=y
CONFIG_CC_HAS_ASM_INLINE=y
CONFIG_CC_HAS_NO_PROFILE_FN_ATTR=y
CONFIG_PAHOLE_VERSION=0
+CONFIG_CONSTRUCTORS=y
CONFIG_IRQ_WORK=y
CONFIG_BUILDTIME_TABLE_SORT=y
CONFIG_THREAD_INFO_IN_TASK=y
@@ -26,22 +28,21 @@ CONFIG_THREAD_INFO_IN_TASK=y
# General setup
#
CONFIG_INIT_ENV_ARG_LIMIT=32
-CONFIG_COMPILE_TEST=n
-CONFIG_WERROR=n
+# CONFIG_COMPILE_TEST is not set
+# CONFIG_WERROR is not set
CONFIG_LOCALVERSION=""
-CONFIG_LOCALVERSION_AUTO=n
+# CONFIG_LOCALVERSION_AUTO is not set
CONFIG_BUILD_SALT=""
CONFIG_DEFAULT_INIT=""
CONFIG_DEFAULT_HOSTNAME="localhost"
-CONFIG_SWAP=y
CONFIG_SYSVIPC=y
CONFIG_SYSVIPC_SYSCTL=y
CONFIG_POSIX_MQUEUE=y
CONFIG_POSIX_MQUEUE_SYSCTL=y
-CONFIG_WATCH_QUEUE=n
+CONFIG_WATCH_QUEUE=y
CONFIG_CROSS_MEMORY_ATTACH=y
-CONFIG_USELIB=n
-CONFIG_AUDIT=n
+# CONFIG_USELIB is not set
+# CONFIG_AUDIT is not set
CONFIG_HAVE_ARCH_AUDITSYSCALL=y
#
@@ -56,12 +57,12 @@ CONFIG_HARDIRQS_SW_RESEND=y
CONFIG_IRQ_DOMAIN=y
CONFIG_IRQ_DOMAIN_HIERARCHY=y
CONFIG_GENERIC_IRQ_IPI=y
+CONFIG_GENERIC_IRQ_IPI_MUX=y
CONFIG_GENERIC_MSI_IRQ=y
-CONFIG_GENERIC_MSI_IRQ_DOMAIN=y
CONFIG_IRQ_MSI_IOMMU=y
CONFIG_IRQ_FORCED_THREADING=y
CONFIG_SPARSE_IRQ=y
-CONFIG_GENERIC_IRQ_DEBUGFS=n
+# CONFIG_GENERIC_IRQ_DEBUGFS is not set
# end of IRQ subsystem
CONFIG_GENERIC_TIME_VSYSCALL=y
@@ -70,16 +71,20 @@ CONFIG_ARCH_HAS_TICK_BROADCAST=y
CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y
CONFIG_HAVE_POSIX_CPU_TIMERS_TASK_WORK=y
CONFIG_POSIX_CPU_TIMERS_TASK_WORK=y
+CONFIG_CONTEXT_TRACKING=y
+CONFIG_CONTEXT_TRACKING_IDLE=y
#
# Timers subsystem
#
CONFIG_TICK_ONESHOT=y
CONFIG_NO_HZ_COMMON=y
-CONFIG_HZ_PERIODIC=n
-CONFIG_NO_HZ_IDLE=y
-CONFIG_NO_HZ_FULL=n
-CONFIG_NO_HZ=n
+# CONFIG_HZ_PERIODIC is not set
+# CONFIG_NO_HZ_IDLE is not set
+CONFIG_NO_HZ_FULL=y
+CONFIG_CONTEXT_TRACKING_USER=y
+# CONFIG_CONTEXT_TRACKING_USER_FORCE is not set
+# CONFIG_NO_HZ is not set
CONFIG_HIGH_RES_TIMERS=y
# end of Timers subsystem
@@ -91,32 +96,32 @@ CONFIG_ARCH_WANT_DEFAULT_BPF_JIT=y
# BPF subsystem
#
CONFIG_BPF_SYSCALL=y
-CONFIG_BPF_JIT=n
+# CONFIG_BPF_JIT is not set
CONFIG_BPF_UNPRIV_DEFAULT_OFF=y
-CONFIG_BPF_PRELOAD=n
+# CONFIG_BPF_PRELOAD is not set
# end of BPF subsystem
CONFIG_PREEMPT_BUILD=y
-CONFIG_PREEMPT_NONE=n
-CONFIG_PREEMPT_VOLUNTARY=n
-CONFIG_PREEMPT=y
+# CONFIG_PREEMPT_NONE is not set
+CONFIG_PREEMPT_VOLUNTARY=y
+# CONFIG_PREEMPT is not set
CONFIG_PREEMPT_COUNT=y
CONFIG_PREEMPTION=y
-CONFIG_PREEMPT_DYNAMIC=n
-CONFIG_SCHED_CORE=n
+CONFIG_PREEMPT_DYNAMIC=y
+# CONFIG_SCHED_CORE is not set
#
# CPU/Task time and stats accounting
#
-CONFIG_TICK_CPU_ACCOUNTING=y
-CONFIG_VIRT_CPU_ACCOUNTING_GEN=n
-CONFIG_IRQ_TIME_ACCOUNTING=n
-CONFIG_BSD_PROCESS_ACCT=n
+CONFIG_VIRT_CPU_ACCOUNTING=y
+CONFIG_VIRT_CPU_ACCOUNTING_GEN=y
+# CONFIG_IRQ_TIME_ACCOUNTING is not set
+# CONFIG_BSD_PROCESS_ACCT is not set
CONFIG_TASKSTATS=y
CONFIG_TASK_DELAY_ACCT=y
CONFIG_TASK_XACCT=y
CONFIG_TASK_IO_ACCOUNTING=y
-CONFIG_PSI=n
+# CONFIG_PSI is not set
# end of CPU/Task time and stats accounting
CONFIG_CPU_ISOLATION=y
@@ -126,57 +131,65 @@ CONFIG_CPU_ISOLATION=y
#
CONFIG_TREE_RCU=y
CONFIG_PREEMPT_RCU=y
-CONFIG_RCU_EXPERT=n
-CONFIG_SRCU=y
+# CONFIG_RCU_EXPERT is not set
CONFIG_TREE_SRCU=y
CONFIG_TASKS_RCU_GENERIC=y
CONFIG_TASKS_RCU=y
CONFIG_TASKS_TRACE_RCU=y
CONFIG_RCU_STALL_COMMON=y
CONFIG_RCU_NEED_SEGCBLIST=y
+CONFIG_RCU_NOCB_CPU=y
+CONFIG_RCU_NOCB_CPU_DEFAULT_ALL=y
+CONFIG_RCU_LAZY=y
# end of RCU Subsystem
CONFIG_IKCONFIG=m
CONFIG_IKCONFIG_PROC=y
-CONFIG_IKHEADERS=n
-CONFIG_LOG_BUF_SHIFT=17
+# CONFIG_IKHEADERS is not set
+CONFIG_LOG_BUF_SHIFT=18
CONFIG_LOG_CPU_MAX_BUF_SHIFT=12
-CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=13
-CONFIG_PRINTK_INDEX=n
+# CONFIG_PRINTK_INDEX is not set
CONFIG_GENERIC_SCHED_CLOCK=y
#
# Scheduler features
#
-CONFIG_UCLAMP_TASK=n
+CONFIG_UCLAMP_TASK=y
+CONFIG_UCLAMP_BUCKETS_COUNT=5
# end of Scheduler features
CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y
+CONFIG_ARCH_WANT_BATCHED_UNMAP_TLB_FLUSH=y
CONFIG_CC_HAS_INT128=y
CONFIG_CC_IMPLICIT_FALLTHROUGH="-Wimplicit-fallthrough=5"
+CONFIG_GCC11_NO_ARRAY_BOUNDS=y
+CONFIG_CC_NO_ARRAY_BOUNDS=y
CONFIG_ARCH_SUPPORTS_INT128=y
CONFIG_CGROUPS=y
CONFIG_PAGE_COUNTER=y
+# CONFIG_CGROUP_FAVOR_DYNMODS is not set
CONFIG_MEMCG=y
-CONFIG_MEMCG_SWAP=y
CONFIG_MEMCG_KMEM=y
CONFIG_BLK_CGROUP=y
CONFIG_CGROUP_WRITEBACK=y
CONFIG_CGROUP_SCHED=y
CONFIG_FAIR_GROUP_SCHED=y
CONFIG_CFS_BANDWIDTH=y
-CONFIG_RT_GROUP_SCHED=n
+# CONFIG_RT_GROUP_SCHED is not set
+CONFIG_SCHED_MM_CID=y
+# CONFIG_UCLAMP_TASK_GROUP is not set
CONFIG_CGROUP_PIDS=y
CONFIG_CGROUP_RDMA=y
CONFIG_CGROUP_FREEZER=y
-CONFIG_CGROUP_HUGETLB=n
+# CONFIG_CGROUP_HUGETLB is not set
CONFIG_CPUSETS=y
CONFIG_PROC_PID_CPUSET=y
CONFIG_CGROUP_DEVICE=y
CONFIG_CGROUP_CPUACCT=y
CONFIG_CGROUP_PERF=y
-CONFIG_CGROUP_BPF=n
+# CONFIG_CGROUP_BPF is not set
CONFIG_CGROUP_MISC=y
+CONFIG_SOCK_CGROUP_DATA=y
CONFIG_NAMESPACES=y
CONFIG_UTS_NS=y
CONFIG_TIME_NS=y
@@ -184,26 +197,27 @@ CONFIG_IPC_NS=y
CONFIG_USER_NS=y
CONFIG_PID_NS=y
CONFIG_NET_NS=y
-CONFIG_CHECKPOINT_RESTORE=n
+# CONFIG_CHECKPOINT_RESTORE is not set
CONFIG_SCHED_AUTOGROUP=y
-CONFIG_SYSFS_DEPRECATED=n
-CONFIG_RELAY=n
+# CONFIG_RELAY is not set
CONFIG_BLK_DEV_INITRD=y
CONFIG_INITRAMFS_SOURCE=""
CONFIG_RD_GZIP=y
-CONFIG_RD_BZIP2=n
-CONFIG_RD_LZMA=n
+# CONFIG_RD_BZIP2 is not set
+# CONFIG_RD_LZMA is not set
CONFIG_RD_XZ=y
-CONFIG_RD_LZO=n
-CONFIG_RD_LZ4=n
+# CONFIG_RD_LZO is not set
+# CONFIG_RD_LZ4 is not set
CONFIG_RD_ZSTD=y
-CONFIG_BOOT_CONFIG=n
+# CONFIG_BOOT_CONFIG is not set
+CONFIG_INITRAMFS_PRESERVE_MTIME=y
CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE=y
-CONFIG_CC_OPTIMIZE_FOR_SIZE=n
+# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
CONFIG_LD_ORPHAN_WARN=y
+CONFIG_LD_ORPHAN_WARN_LEVEL="warn"
CONFIG_SYSCTL=y
CONFIG_SYSCTL_EXCEPTION_TRACE=y
-CONFIG_EXPERT=n
+# CONFIG_EXPERT is not set
CONFIG_MULTIUSER=y
CONFIG_SYSFS_SYSCALL=y
CONFIG_FHANDLE=y
@@ -224,12 +238,12 @@ CONFIG_IO_URING=y
CONFIG_ADVISE_SYSCALLS=y
CONFIG_MEMBARRIER=y
CONFIG_KALLSYMS=y
+# CONFIG_KALLSYMS_SELFTEST is not set
CONFIG_KALLSYMS_BASE_RELATIVE=y
-CONFIG_USERFAULTFD=n
CONFIG_ARCH_HAS_MEMBARRIER_SYNC_CORE=y
CONFIG_KCMP=y
CONFIG_RSEQ=y
-CONFIG_EMBEDDED=n
+CONFIG_CACHESTAT_SYSCALL=y
CONFIG_HAVE_PERF_EVENTS=y
CONFIG_GUEST_PERF_EVENTS=y
@@ -239,21 +253,23 @@ CONFIG_GUEST_PERF_EVENTS=y
CONFIG_PERF_EVENTS=y
# end of Kernel Performance Events And Counters
-CONFIG_VM_EVENT_COUNTERS=y
-CONFIG_SLUB_DEBUG=y
-CONFIG_COMPAT_BRK=n
-CONFIG_SLAB=n
-CONFIG_SLUB=y
-CONFIG_SLAB_MERGE_DEFAULT=y
-CONFIG_SLAB_FREELIST_RANDOM=n
-CONFIG_SLAB_FREELIST_HARDENED=n
-CONFIG_SHUFFLE_PAGE_ALLOCATOR=n
-CONFIG_SLUB_CPU_PARTIAL=n
CONFIG_SYSTEM_DATA_VERIFICATION=y
-CONFIG_PROFILING=n
+# CONFIG_PROFILING is not set
+CONFIG_RUST=y
+CONFIG_RUSTC_VERSION_TEXT="rustc 1.72.1 (d5c2e9c34 2023-09-13) (Alpine Linux 1.72.1-r0)"
+CONFIG_BINDGEN_VERSION_TEXT="bindgen 0.66.1"
+
+#
+# Kexec and crash features
+#
+# CONFIG_KEXEC is not set
+# CONFIG_KEXEC_FILE is not set
+# CONFIG_CRASH_DUMP is not set
+# end of Kexec and crash features
# end of General setup
CONFIG_ARM64=y
+CONFIG_GCC_SUPPORTS_DYNAMIC_FTRACE_WITH_ARGS=y
CONFIG_64BIT=y
CONFIG_MMU=y
CONFIG_ARM64_PAGE_SHIFT=14
@@ -271,55 +287,54 @@ CONFIG_GENERIC_BUG_RELATIVE_POINTERS=y
CONFIG_GENERIC_HWEIGHT=y
CONFIG_GENERIC_CSUM=y
CONFIG_GENERIC_CALIBRATE_DELAY=y
-CONFIG_ARCH_MHP_MEMMAP_ON_MEMORY_ENABLE=y
CONFIG_SMP=y
CONFIG_KERNEL_MODE_NEON=y
CONFIG_FIX_EARLYCON_MEM=y
CONFIG_PGTABLE_LEVELS=4
CONFIG_ARCH_SUPPORTS_UPROBES=y
CONFIG_ARCH_PROC_KCORE_TEXT=y
+CONFIG_BUILTIN_RETURN_ADDRESS_STRIPS_PAC=y
+CONFIG_ARM64_ACTLR_STATE=y
#
# Platform selection
#
-CONFIG_ARCH_ACTIONS=n
-CONFIG_ARCH_SUNXI=n
-CONFIG_ARCH_ALPINE=n
+# CONFIG_ARCH_ACTIONS is not set
+# CONFIG_ARCH_SUNXI is not set
+# CONFIG_ARCH_ALPINE is not set
CONFIG_ARCH_APPLE=y
-CONFIG_ARCH_BCM2835=n
-CONFIG_ARCH_BCM4908=n
-CONFIG_ARCH_BCM_IPROC=n
-CONFIG_ARCH_BERLIN=n
-CONFIG_ARCH_BITMAIN=n
-CONFIG_ARCH_BRCMSTB=n
-CONFIG_ARCH_EXYNOS=n
-CONFIG_ARCH_SPARX5=n
-CONFIG_ARCH_K3=n
-CONFIG_ARCH_LAYERSCAPE=n
-CONFIG_ARCH_LG1K=n
-CONFIG_ARCH_HISI=n
-CONFIG_ARCH_KEEMBAY=n
-CONFIG_ARCH_MEDIATEK=n
-CONFIG_ARCH_MESON=n
-CONFIG_ARCH_MVEBU=n
-CONFIG_ARCH_MXC=n
-CONFIG_ARCH_QCOM=n
-CONFIG_ARCH_REALTEK=n
-CONFIG_ARCH_RENESAS=n
-CONFIG_ARCH_ROCKCHIP=n
-CONFIG_ARCH_S32=n
-CONFIG_ARCH_SEATTLE=n
-CONFIG_ARCH_INTEL_SOCFPGA=n
-CONFIG_ARCH_SYNQUACER=n
-CONFIG_ARCH_TEGRA=n
-CONFIG_ARCH_SPRD=n
-CONFIG_ARCH_THUNDER=n
-CONFIG_ARCH_THUNDER2=n
-CONFIG_ARCH_UNIPHIER=n
-CONFIG_ARCH_VEXPRESS=n
-CONFIG_ARCH_VISCONTI=n
-CONFIG_ARCH_XGENE=n
-CONFIG_ARCH_ZYNQMP=n
+# CONFIG_ARCH_BCM is not set
+# CONFIG_ARCH_BERLIN is not set
+# CONFIG_ARCH_BITMAIN is not set
+# CONFIG_ARCH_EXYNOS is not set
+# CONFIG_ARCH_SPARX5 is not set
+# CONFIG_ARCH_K3 is not set
+# CONFIG_ARCH_LG1K is not set
+# CONFIG_ARCH_HISI is not set
+# CONFIG_ARCH_KEEMBAY is not set
+# CONFIG_ARCH_MEDIATEK is not set
+# CONFIG_ARCH_MESON is not set
+# CONFIG_ARCH_MVEBU is not set
+# CONFIG_ARCH_NXP is not set
+# CONFIG_ARCH_MA35 is not set
+# CONFIG_ARCH_NPCM is not set
+# CONFIG_ARCH_QCOM is not set
+# CONFIG_ARCH_REALTEK is not set
+# CONFIG_ARCH_RENESAS is not set
+# CONFIG_ARCH_ROCKCHIP is not set
+# CONFIG_ARCH_SEATTLE is not set
+# CONFIG_ARCH_INTEL_SOCFPGA is not set
+# CONFIG_ARCH_STM32 is not set
+# CONFIG_ARCH_SYNQUACER is not set
+# CONFIG_ARCH_TEGRA is not set
+# CONFIG_ARCH_SPRD is not set
+# CONFIG_ARCH_THUNDER is not set
+# CONFIG_ARCH_THUNDER2 is not set
+# CONFIG_ARCH_UNIPHIER is not set
+# CONFIG_ARCH_VEXPRESS is not set
+# CONFIG_ARCH_VISCONTI is not set
+# CONFIG_ARCH_XGENE is not set
+# CONFIG_ARCH_ZYNQMP is not set
# end of Platform selection
#
@@ -329,81 +344,90 @@ CONFIG_ARCH_ZYNQMP=n
#
# ARM errata workarounds via the alternatives framework
#
-CONFIG_ARM64_WORKAROUND_CLEAN_CACHE=y
-CONFIG_ARM64_ERRATUM_826319=y
-CONFIG_ARM64_ERRATUM_827319=y
-CONFIG_ARM64_ERRATUM_824069=y
-CONFIG_ARM64_ERRATUM_819472=y
-CONFIG_ARM64_ERRATUM_832075=y
-CONFIG_ARM64_ERRATUM_834220=y
-CONFIG_ARM64_ERRATUM_843419=y
+# CONFIG_AMPERE_ERRATUM_AC03_CPU_38 is not set
+# CONFIG_ARM64_ERRATUM_826319 is not set
+# CONFIG_ARM64_ERRATUM_827319 is not set
+# CONFIG_ARM64_ERRATUM_824069 is not set
+# CONFIG_ARM64_ERRATUM_819472 is not set
+# CONFIG_ARM64_ERRATUM_832075 is not set
+# CONFIG_ARM64_ERRATUM_834220 is not set
+# CONFIG_ARM64_ERRATUM_843419 is not set
CONFIG_ARM64_LD_HAS_FIX_ERRATUM_843419=y
-CONFIG_ARM64_ERRATUM_1024718=y
-CONFIG_ARM64_WORKAROUND_SPECULATIVE_AT=y
-CONFIG_ARM64_ERRATUM_1165522=y
-CONFIG_ARM64_ERRATUM_1319367=y
-CONFIG_ARM64_ERRATUM_1530923=y
-CONFIG_ARM64_WORKAROUND_REPEAT_TLBI=y
-CONFIG_ARM64_ERRATUM_1286807=y
-CONFIG_ARM64_ERRATUM_1463225=y
-CONFIG_ARM64_ERRATUM_1542419=y
-CONFIG_ARM64_ERRATUM_1508412=y
-CONFIG_ARM64_ERRATUM_2051678=n
-CONFIG_ARM64_ERRATUM_2077057=n
+# CONFIG_ARM64_ERRATUM_1024718 is not set
+# CONFIG_ARM64_ERRATUM_1165522 is not set
+# CONFIG_ARM64_ERRATUM_1319367 is not set
+# CONFIG_ARM64_ERRATUM_1530923 is not set
+# CONFIG_ARM64_ERRATUM_2441007 is not set
+# CONFIG_ARM64_ERRATUM_1286807 is not set
+# CONFIG_ARM64_ERRATUM_1463225 is not set
+# CONFIG_ARM64_ERRATUM_1542419 is not set
+# CONFIG_ARM64_ERRATUM_1508412 is not set
+# CONFIG_ARM64_ERRATUM_2051678 is not set
+# CONFIG_ARM64_ERRATUM_2077057 is not set
+# CONFIG_ARM64_ERRATUM_2658417 is not set
CONFIG_ARM64_WORKAROUND_TSB_FLUSH_FAILURE=y
CONFIG_ARM64_ERRATUM_2054223=y
-CONFIG_ARM64_ERRATUM_2067961=y
-CONFIG_CAVIUM_ERRATUM_22375=y
-CONFIG_CAVIUM_ERRATUM_23154=y
-CONFIG_CAVIUM_ERRATUM_27456=y
-CONFIG_CAVIUM_ERRATUM_30115=y
-CONFIG_CAVIUM_TX2_ERRATUM_219=y
-CONFIG_FUJITSU_ERRATUM_010001=y
-CONFIG_HISILICON_ERRATUM_161600802=y
-CONFIG_QCOM_FALKOR_ERRATUM_1003=y
-CONFIG_QCOM_FALKOR_ERRATUM_1009=y
-CONFIG_QCOM_QDF2400_ERRATUM_0065=y
-CONFIG_QCOM_FALKOR_ERRATUM_E1041=y
-CONFIG_NVIDIA_CARMEL_CNP_ERRATUM=n
-CONFIG_SOCIONEXT_SYNQUACER_PREITS=y
+# CONFIG_ARM64_ERRATUM_2067961 is not set
+# CONFIG_ARM64_ERRATUM_2441009 is not set
+# CONFIG_ARM64_ERRATUM_2457168 is not set
+# CONFIG_ARM64_ERRATUM_2645198 is not set
+# CONFIG_ARM64_ERRATUM_2966298 is not set
+# CONFIG_CAVIUM_ERRATUM_22375 is not set
+# CONFIG_CAVIUM_ERRATUM_23154 is not set
+# CONFIG_CAVIUM_ERRATUM_27456 is not set
+# CONFIG_CAVIUM_ERRATUM_30115 is not set
+# CONFIG_CAVIUM_TX2_ERRATUM_219 is not set
+# CONFIG_FUJITSU_ERRATUM_010001 is not set
+# CONFIG_HISILICON_ERRATUM_161600802 is not set
+# CONFIG_QCOM_FALKOR_ERRATUM_1003 is not set
+# CONFIG_QCOM_FALKOR_ERRATUM_1009 is not set
+# CONFIG_QCOM_QDF2400_ERRATUM_0065 is not set
+# CONFIG_QCOM_FALKOR_ERRATUM_E1041 is not set
+# CONFIG_NVIDIA_CARMEL_CNP_ERRATUM is not set
+# CONFIG_ROCKCHIP_ERRATUM_3588001 is not set
+# CONFIG_SOCIONEXT_SYNQUACER_PREITS is not set
# end of ARM errata workarounds via the alternatives framework
-CONFIG_ARM64_4K_PAGES=n
+# CONFIG_ARM64_4K_PAGES is not set
CONFIG_ARM64_16K_PAGES=y
-CONFIG_ARM64_64K_PAGES=n
-CONFIG_ARM64_VA_BITS_47=n
+# CONFIG_ARM64_64K_PAGES is not set
+# CONFIG_ARM64_VA_BITS_47 is not set
CONFIG_ARM64_VA_BITS_48=y
CONFIG_ARM64_VA_BITS=48
CONFIG_ARM64_PA_BITS_48=y
CONFIG_ARM64_PA_BITS=48
-CONFIG_CPU_BIG_ENDIAN=n
+# CONFIG_CPU_BIG_ENDIAN is not set
CONFIG_CPU_LITTLE_ENDIAN=y
CONFIG_SCHED_MC=y
-CONFIG_SCHED_CLUSTER=n
+CONFIG_SCHED_CLUSTER=y
CONFIG_SCHED_SMT=y
CONFIG_NR_CPUS=16
CONFIG_HOTPLUG_CPU=y
-CONFIG_NUMA=n
-CONFIG_HZ_100=n
-CONFIG_HZ_250=n
-CONFIG_HZ_300=n
-CONFIG_HZ_1000=y
-CONFIG_HZ=1000
+# CONFIG_NUMA is not set
+# CONFIG_HZ_100 is not set
+# CONFIG_HZ_250 is not set
+CONFIG_HZ_300=y
+# CONFIG_HZ_1000 is not set
+CONFIG_HZ=300
CONFIG_SCHED_HRTICK=y
CONFIG_ARCH_SPARSEMEM_ENABLE=y
CONFIG_HW_PERF_EVENTS=y
-CONFIG_PARAVIRT=n
-CONFIG_PARAVIRT_TIME_ACCOUNTING=n
-CONFIG_KEXEC=n
-CONFIG_KEXEC_FILE=n
-CONFIG_CRASH_DUMP=n
+CONFIG_CC_HAVE_SHADOW_CALL_STACK=y
+# CONFIG_PARAVIRT is not set
+# CONFIG_PARAVIRT_TIME_ACCOUNTING is not set
+CONFIG_ARCH_SUPPORTS_KEXEC=y
+CONFIG_ARCH_SUPPORTS_KEXEC_FILE=y
+CONFIG_ARCH_SUPPORTS_KEXEC_SIG=y
+CONFIG_ARCH_SUPPORTS_KEXEC_IMAGE_VERIFY_SIG=y
+CONFIG_ARCH_DEFAULT_KEXEC_IMAGE_VERIFY_SIG=y
+CONFIG_ARCH_SUPPORTS_CRASH_DUMP=y
CONFIG_TRANS_TABLE=y
-CONFIG_XEN=n
-CONFIG_FORCE_MAX_ZONEORDER=12
+# CONFIG_XEN is not set
+CONFIG_ARCH_FORCE_MAX_ORDER=11
CONFIG_UNMAP_KERNEL_AT_EL0=y
CONFIG_MITIGATE_SPECTRE_BRANCH_HISTORY=y
CONFIG_RODATA_FULL_DEFAULT_ENABLED=y
-CONFIG_ARM64_SW_TTBR0_PAN=n
+# CONFIG_ARM64_SW_TTBR0_PAN is not set
CONFIG_ARM64_TAGGED_ADDR_ABI=y
#
@@ -411,7 +435,6 @@ CONFIG_ARM64_TAGGED_ADDR_ABI=y
#
CONFIG_ARM64_HW_AFDBM=y
CONFIG_ARM64_PAN=y
-CONFIG_AS_HAS_LDAPR=y
CONFIG_AS_HAS_LSE_ATOMICS=y
CONFIG_ARM64_LSE_ATOMICS=y
CONFIG_ARM64_USE_LSE_ATOMICS=y
@@ -422,7 +445,7 @@ CONFIG_ARM64_USE_LSE_ATOMICS=y
#
CONFIG_AS_HAS_ARMV8_2=y
CONFIG_AS_HAS_SHA3=y
-CONFIG_ARM64_PMEM=n
+# CONFIG_ARM64_PMEM is not set
CONFIG_ARM64_RAS_EXTN=y
CONFIG_ARM64_CNP=y
# end of ARMv8.2 architectural features
@@ -434,8 +457,9 @@ CONFIG_ARM64_PTR_AUTH=y
CONFIG_ARM64_PTR_AUTH_KERNEL=y
CONFIG_CC_HAS_BRANCH_PROT_PAC_RET=y
CONFIG_CC_HAS_SIGN_RETURN_ADDRESS=y
-CONFIG_AS_HAS_PAC=y
+CONFIG_AS_HAS_ARMV8_3=y
CONFIG_AS_HAS_CFI_NEGATE_RA_STATE=y
+CONFIG_AS_HAS_LDAPR=y
# end of ARMv8.3 architectural features
#
@@ -451,10 +475,8 @@ CONFIG_ARM64_TLB_RANGE=y
#
CONFIG_AS_HAS_ARMV8_5=y
CONFIG_ARM64_BTI=y
-CONFIG_ARM64_BTI_KERNEL=y
CONFIG_CC_HAS_BRANCH_PROT_PAC_RET_BTI=y
CONFIG_ARM64_E0PD=y
-CONFIG_ARCH_RANDOM=y
CONFIG_ARM64_AS_HAS_MTE=y
CONFIG_ARM64_MTE=y
# end of ARMv8.5 architectural features
@@ -466,19 +488,18 @@ CONFIG_ARM64_EPAN=y
# end of ARMv8.7 architectural features
CONFIG_ARM64_SVE=y
-CONFIG_ARM64_MODULE_PLTS=y
-CONFIG_ARM64_PSEUDO_NMI=n
+CONFIG_ARM64_SME=y
+# CONFIG_ARM64_PSEUDO_NMI is not set
+CONFIG_ARM64_MEMORY_MODEL_CONTROL=y
CONFIG_RELOCATABLE=y
-CONFIG_RANDOMIZE_BASE=n
+# CONFIG_RANDOMIZE_BASE is not set
CONFIG_CC_HAVE_STACKPROTECTOR_SYSREG=y
CONFIG_STACKPROTECTOR_PER_TASK=y
-CONFIG_ARCH_NR_GPIO=2048
# end of Kernel Features
#
# Boot options
#
-CONFIG_ARM64_ACPI_PARKING_PROTOCOL=n
CONFIG_CMDLINE=""
CONFIG_EFI_STUB=y
CONFIG_EFI=y
@@ -496,13 +517,14 @@ CONFIG_HIBERNATION_SNAPSHOT_DEV=y
CONFIG_PM_STD_PARTITION=""
CONFIG_PM_SLEEP=y
CONFIG_PM_SLEEP_SMP=y
-CONFIG_PM_AUTOSLEEP=n
-CONFIG_PM_WAKELOCKS=n
+# CONFIG_PM_AUTOSLEEP is not set
+# CONFIG_PM_USERSPACE_AUTOSLEEP is not set
+# CONFIG_PM_WAKELOCKS is not set
CONFIG_PM=y
-CONFIG_PM_DEBUG=n
+# CONFIG_PM_DEBUG is not set
CONFIG_PM_CLK=y
CONFIG_PM_GENERIC_DOMAINS=y
-CONFIG_WQ_POWER_EFFICIENT_DEFAULT=n
+CONFIG_WQ_POWER_EFFICIENT_DEFAULT=y
CONFIG_PM_GENERIC_DOMAINS_SLEEP=y
CONFIG_PM_GENERIC_DOMAINS_OF=y
CONFIG_CPU_PM=y
@@ -521,17 +543,18 @@ CONFIG_ARCH_SUSPEND_POSSIBLE=y
#
CONFIG_CPU_IDLE=y
CONFIG_CPU_IDLE_MULTIPLE_DRIVERS=y
-CONFIG_CPU_IDLE_GOV_LADDER=n
+CONFIG_CPU_IDLE_GOV_LADDER=y
CONFIG_CPU_IDLE_GOV_MENU=y
CONFIG_CPU_IDLE_GOV_TEO=y
CONFIG_DT_IDLE_STATES=y
+CONFIG_DT_IDLE_GENPD=y
#
# ARM CPU Idle Drivers
#
-CONFIG_ARM_CPUIDLE=y
CONFIG_ARM_PSCI_CPUIDLE=y
CONFIG_ARM_PSCI_CPUIDLE_DOMAIN=y
+CONFIG_ARM_APPLE_CPUIDLE=y
# end of ARM CPU Idle Drivers
# end of CPU Idle
@@ -542,123 +565,71 @@ CONFIG_CPU_FREQ=y
CONFIG_CPU_FREQ_GOV_ATTR_SET=y
CONFIG_CPU_FREQ_GOV_COMMON=y
CONFIG_CPU_FREQ_STAT=y
-CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
-CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE=n
-CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE=n
-CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=n
-CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE=n
-CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL=n
+# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set
+# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set
+# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
+# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set
+# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
+CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL=y
CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
CONFIG_CPU_FREQ_GOV_POWERSAVE=m
CONFIG_CPU_FREQ_GOV_USERSPACE=m
-CONFIG_CPU_FREQ_GOV_ONDEMAND=m
+CONFIG_CPU_FREQ_GOV_ONDEMAND=y
CONFIG_CPU_FREQ_GOV_CONSERVATIVE=m
CONFIG_CPU_FREQ_GOV_SCHEDUTIL=y
#
# CPU frequency scaling drivers
#
-CONFIG_CPUFREQ_DT=y
+CONFIG_CPUFREQ_DT=m
CONFIG_CPUFREQ_DT_PLATDEV=y
-CONFIG_ACPI_CPPC_CPUFREQ=m
-CONFIG_ACPI_CPPC_CPUFREQ_FIE=y
-CONFIG_ARM_APPLE_SOC_CPUFREQ=y
-CONFIG_ARM_SCMI_CPUFREQ=y
+CONFIG_ARM_APPLE_SOC_CPUFREQ=m
+CONFIG_ARM_SCMI_CPUFREQ=m
# end of CPU Frequency scaling
# end of CPU Power Management
CONFIG_ARCH_SUPPORTS_ACPI=y
-CONFIG_ACPI=y
-CONFIG_ACPI_GENERIC_GSI=y
-CONFIG_ACPI_CCA_REQUIRED=y
-CONFIG_ACPI_DEBUGGER=n
-CONFIG_ACPI_SPCR_TABLE=y
-CONFIG_ACPI_EC_DEBUGFS=n
-CONFIG_ACPI_AC=y
-CONFIG_ACPI_BATTERY=y
-CONFIG_ACPI_BUTTON=y
-CONFIG_ACPI_FAN=y
-CONFIG_ACPI_TAD=n
-CONFIG_ACPI_DOCK=n
-CONFIG_ACPI_PROCESSOR_IDLE=y
-CONFIG_ACPI_MCFG=y
-CONFIG_ACPI_CPPC_LIB=y
-CONFIG_ACPI_PROCESSOR=y
-CONFIG_ACPI_HOTPLUG_CPU=y
-CONFIG_ACPI_THERMAL=y
-CONFIG_ARCH_HAS_ACPI_TABLE_UPGRADE=y
-CONFIG_ACPI_TABLE_UPGRADE=y
-CONFIG_ACPI_DEBUG=n
-CONFIG_ACPI_PCI_SLOT=n
-CONFIG_ACPI_CONTAINER=y
-CONFIG_ACPI_HED=y
-CONFIG_ACPI_CUSTOM_METHOD=n
-CONFIG_ACPI_BGRT=n
-CONFIG_ACPI_REDUCED_HARDWARE_ONLY=y
-CONFIG_HAVE_ACPI_APEI=y
-CONFIG_ACPI_APEI=y
-CONFIG_ACPI_APEI_GHES=y
-CONFIG_ACPI_APEI_SEA=y
-CONFIG_ACPI_APEI_EINJ=y
-CONFIG_ACPI_APEI_ERST_DEBUG=n
-CONFIG_ACPI_CONFIGFS=n
-CONFIG_ACPI_PFRUT=n
-CONFIG_ACPI_IORT=y
-CONFIG_ACPI_GTDT=y
-CONFIG_ACPI_PPTT=y
-CONFIG_ACPI_PCC=y
-CONFIG_PMIC_OPREGION=n
+# CONFIG_ACPI is not set
CONFIG_IRQ_BYPASS_MANAGER=y
CONFIG_HAVE_KVM=y
CONFIG_HAVE_KVM_IRQCHIP=y
CONFIG_HAVE_KVM_IRQFD=y
CONFIG_HAVE_KVM_IRQ_ROUTING=y
+CONFIG_HAVE_KVM_DIRTY_RING=y
+CONFIG_HAVE_KVM_DIRTY_RING_ACQ_REL=y
+CONFIG_NEED_KVM_DIRTY_RING_WITH_BITMAP=y
CONFIG_HAVE_KVM_EVENTFD=y
CONFIG_KVM_MMIO=y
CONFIG_HAVE_KVM_MSI=y
CONFIG_HAVE_KVM_CPU_RELAX_INTERCEPT=y
CONFIG_KVM_VFIO=y
-CONFIG_HAVE_KVM_ARCH_TLB_FLUSH_ALL=y
CONFIG_KVM_GENERIC_DIRTYLOG_READ_PROTECT=y
CONFIG_HAVE_KVM_IRQ_BYPASS=y
CONFIG_HAVE_KVM_VCPU_RUN_PID_CHANGE=y
CONFIG_KVM_XFER_TO_GUEST_WORK=y
+CONFIG_KVM_GENERIC_HARDWARE_ENABLING=y
CONFIG_VIRTUALIZATION=y
CONFIG_KVM=y
-CONFIG_NVHE_EL2_DEBUG=n
-CONFIG_ARM64_CRYPTO=y
-CONFIG_CRYPTO_SHA256_ARM64=y
-CONFIG_CRYPTO_SHA512_ARM64=m
-CONFIG_CRYPTO_SHA1_ARM64_CE=y
-CONFIG_CRYPTO_SHA2_ARM64_CE=y
-CONFIG_CRYPTO_SHA512_ARM64_CE=m
-CONFIG_CRYPTO_SHA3_ARM64=m
-CONFIG_CRYPTO_SM3_ARM64_CE=m
-CONFIG_CRYPTO_SM4_ARM64_CE=m
-CONFIG_CRYPTO_GHASH_ARM64_CE=m
-CONFIG_CRYPTO_AES_ARM64=m
-CONFIG_CRYPTO_AES_ARM64_CE=m
-CONFIG_CRYPTO_AES_ARM64_CE_CCM=m
-CONFIG_CRYPTO_AES_ARM64_CE_BLK=m
-CONFIG_CRYPTO_AES_ARM64_NEON_BLK=m
-CONFIG_CRYPTO_CHACHA20_NEON=m
-CONFIG_CRYPTO_POLY1305_NEON=m
-CONFIG_CRYPTO_NHPOLY1305_NEON=m
-CONFIG_CRYPTO_AES_ARM64_BS=m
+# CONFIG_NVHE_EL2_DEBUG is not set
#
# General architecture-dependent options
#
-CONFIG_KPROBES=n
+CONFIG_ARCH_HAS_SUBPAGE_FAULTS=y
+CONFIG_HOTPLUG_CORE_SYNC=y
+CONFIG_HOTPLUG_CORE_SYNC_DEAD=y
+# CONFIG_KPROBES is not set
CONFIG_JUMP_LABEL=y
-CONFIG_STATIC_KEYS_SELFTEST=n
+# CONFIG_STATIC_KEYS_SELFTEST is not set
CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y
+CONFIG_HAVE_IOREMAP_PROT=y
CONFIG_HAVE_KPROBES=y
CONFIG_HAVE_KRETPROBES=y
CONFIG_ARCH_CORRECT_STACKTRACE_ON_KRETPROBE=y
CONFIG_HAVE_FUNCTION_ERROR_INJECTION=y
CONFIG_HAVE_NMI=y
CONFIG_TRACE_IRQFLAGS_SUPPORT=y
+CONFIG_TRACE_IRQFLAGS_NMI_SUPPORT=y
CONFIG_HAVE_ARCH_TRACEHOOK=y
CONFIG_HAVE_DMA_CONTIGUOUS=y
CONFIG_GENERIC_SMP_IDLE_THREAD=y
@@ -672,6 +643,7 @@ CONFIG_ARCH_WANTS_NO_INSTR=y
CONFIG_HAVE_ASM_MODVERSIONS=y
CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y
CONFIG_HAVE_RSEQ=y
+CONFIG_HAVE_RUST=y
CONFIG_HAVE_FUNCTION_ARG_ACCESS_API=y
CONFIG_HAVE_HW_BREAKPOINT=y
CONFIG_HAVE_PERF_REGS=y
@@ -680,7 +652,9 @@ CONFIG_HAVE_ARCH_JUMP_LABEL=y
CONFIG_HAVE_ARCH_JUMP_LABEL_RELATIVE=y
CONFIG_MMU_GATHER_TABLE_FREE=y
CONFIG_MMU_GATHER_RCU_TABLE_FREE=y
+CONFIG_MMU_LAZY_TLB_REFCOUNT=y
CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y
+CONFIG_ARCH_HAS_NMI_SAFE_THIS_CPU_OPS=y
CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y
CONFIG_HAVE_CMPXCHG_LOCAL=y
CONFIG_HAVE_CMPXCHG_DOUBLE=y
@@ -688,25 +662,30 @@ CONFIG_HAVE_ARCH_SECCOMP=y
CONFIG_HAVE_ARCH_SECCOMP_FILTER=y
CONFIG_SECCOMP=y
CONFIG_SECCOMP_FILTER=y
-CONFIG_SECCOMP_CACHE_DEBUG=n
+# CONFIG_SECCOMP_CACHE_DEBUG is not set
CONFIG_HAVE_ARCH_STACKLEAK=y
CONFIG_HAVE_STACKPROTECTOR=y
CONFIG_STACKPROTECTOR=y
CONFIG_STACKPROTECTOR_STRONG=y
+CONFIG_ARCH_SUPPORTS_SHADOW_CALL_STACK=y
+# CONFIG_SHADOW_CALL_STACK is not set
CONFIG_ARCH_SUPPORTS_LTO_CLANG=y
CONFIG_ARCH_SUPPORTS_LTO_CLANG_THIN=y
CONFIG_LTO_NONE=y
CONFIG_ARCH_SUPPORTS_CFI_CLANG=y
-CONFIG_HAVE_CONTEXT_TRACKING=y
+CONFIG_HAVE_CONTEXT_TRACKING_USER=y
CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y
CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y
CONFIG_HAVE_MOVE_PUD=y
CONFIG_HAVE_MOVE_PMD=y
CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y
CONFIG_HAVE_ARCH_HUGE_VMAP=y
+CONFIG_HAVE_ARCH_HUGE_VMALLOC=y
CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y
CONFIG_HAVE_MOD_ARCH_SPECIFIC=y
CONFIG_MODULES_USE_ELF_RELA=y
+CONFIG_HAVE_SOFTIRQ_ON_OWN_STACK=y
+CONFIG_SOFTIRQ_ON_OWN_STACK=y
CONFIG_ARCH_HAS_ELF_RANDOMIZE=y
CONFIG_HAVE_ARCH_MMAP_RND_BITS=y
CONFIG_ARCH_MMAP_RND_BITS=16
@@ -714,12 +693,12 @@ CONFIG_PAGE_SIZE_LESS_THAN_64KB=y
CONFIG_PAGE_SIZE_LESS_THAN_256KB=y
CONFIG_ARCH_WANT_DEFAULT_TOPDOWN_MMAP_LAYOUT=y
CONFIG_CLONE_BACKWARDS=y
-CONFIG_COMPAT_32BIT_TIME=y
+# CONFIG_COMPAT_32BIT_TIME is not set
CONFIG_HAVE_ARCH_VMAP_STACK=y
CONFIG_VMAP_STACK=y
CONFIG_HAVE_ARCH_RANDOMIZE_KSTACK_OFFSET=y
CONFIG_RANDOMIZE_KSTACK_OFFSET=y
-CONFIG_RANDOMIZE_KSTACK_OFFSET_DEFAULT=n
+# CONFIG_RANDOMIZE_KSTACK_OFFSET_DEFAULT is not set
CONFIG_ARCH_HAS_STRICT_KERNEL_RWX=y
CONFIG_STRICT_KERNEL_RWX=y
CONFIG_ARCH_HAS_STRICT_MODULE_RWX=y
@@ -727,61 +706,68 @@ CONFIG_STRICT_MODULE_RWX=y
CONFIG_HAVE_ARCH_COMPILER_H=y
CONFIG_HAVE_ARCH_PREL32_RELOCATIONS=y
CONFIG_ARCH_USE_MEMREMAP_PROT=y
-CONFIG_LOCK_EVENT_COUNTS=n
+# CONFIG_LOCK_EVENT_COUNTS is not set
CONFIG_ARCH_HAS_RELR=y
CONFIG_HAVE_PREEMPT_DYNAMIC=y
CONFIG_HAVE_PREEMPT_DYNAMIC_KEY=y
CONFIG_ARCH_WANT_LD_ORPHAN_WARN=y
CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
+CONFIG_ARCH_SUPPORTS_PAGE_TABLE_CHECK=y
+CONFIG_ARCH_HAVE_TRACE_MMIO_ACCESS=y
#
# GCOV-based kernel profiling
#
-CONFIG_GCOV_KERNEL=n
+# CONFIG_GCOV_KERNEL is not set
CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y
# end of GCOV-based kernel profiling
CONFIG_HAVE_GCC_PLUGINS=y
-CONFIG_GCC_PLUGINS=n
+# CONFIG_GCC_PLUGINS is not set
+CONFIG_FUNCTION_ALIGNMENT_4B=y
+CONFIG_FUNCTION_ALIGNMENT=4
# end of General architecture-dependent options
CONFIG_RT_MUTEXES=y
CONFIG_BASE_SMALL=0
CONFIG_MODULES=y
-CONFIG_MODULE_FORCE_LOAD=n
+# CONFIG_MODULE_DEBUG is not set
+# CONFIG_MODULE_FORCE_LOAD is not set
CONFIG_MODULE_UNLOAD=y
-CONFIG_MODULE_FORCE_UNLOAD=n
-CONFIG_MODVERSIONS=n
-CONFIG_MODULE_SRCVERSION_ALL=n
-CONFIG_MODULE_SIG=n
+# CONFIG_MODULE_FORCE_UNLOAD is not set
+# CONFIG_MODULE_UNLOAD_TAINT_TRACKING is not set
+# CONFIG_MODVERSIONS is not set
+# CONFIG_MODULE_SRCVERSION_ALL is not set
+# CONFIG_MODULE_SIG is not set
CONFIG_MODULE_COMPRESS_NONE=y
-CONFIG_MODULE_COMPRESS_GZIP=n
-CONFIG_MODULE_COMPRESS_XZ=n
-CONFIG_MODULE_COMPRESS_ZSTD=n
-CONFIG_MODULE_ALLOW_MISSING_NAMESPACE_IMPORTS=n
+# CONFIG_MODULE_COMPRESS_GZIP is not set
+# CONFIG_MODULE_COMPRESS_XZ is not set
+# CONFIG_MODULE_COMPRESS_ZSTD is not set
+# CONFIG_MODULE_ALLOW_MISSING_NAMESPACE_IMPORTS is not set
CONFIG_MODPROBE_PATH="/sbin/modprobe"
CONFIG_MODULES_TREE_LOOKUP=y
CONFIG_BLOCK=y
-CONFIG_BLOCK_LEGACY_AUTOLOAD=n
+CONFIG_BLOCK_LEGACY_AUTOLOAD=y
CONFIG_BLK_CGROUP_RWSTAT=y
+CONFIG_BLK_CGROUP_PUNT_BIO=y
CONFIG_BLK_DEV_BSG_COMMON=y
CONFIG_BLK_ICQ=y
-CONFIG_BLK_DEV_BSGLIB=n
-CONFIG_BLK_DEV_INTEGRITY=n
-CONFIG_BLK_DEV_ZONED=n
-CONFIG_BLK_DEV_THROTTLING=n
-CONFIG_BLK_WBT=n
-CONFIG_BLK_CGROUP_IOLATENCY=n
-CONFIG_BLK_CGROUP_IOCOST=n
-CONFIG_BLK_CGROUP_IOPRIO=n
+# CONFIG_BLK_DEV_BSGLIB is not set
+# CONFIG_BLK_DEV_INTEGRITY is not set
+# CONFIG_BLK_DEV_ZONED is not set
+# CONFIG_BLK_DEV_THROTTLING is not set
+# CONFIG_BLK_WBT is not set
+# CONFIG_BLK_CGROUP_IOLATENCY is not set
+# CONFIG_BLK_CGROUP_IOCOST is not set
+# CONFIG_BLK_CGROUP_IOPRIO is not set
CONFIG_BLK_DEBUG_FS=y
-CONFIG_BLK_SED_OPAL=n
-CONFIG_BLK_INLINE_ENCRYPTION=n
+# CONFIG_BLK_SED_OPAL is not set
+# CONFIG_BLK_INLINE_ENCRYPTION is not set
#
# Partition Types
#
-CONFIG_PARTITION_ADVANCED=n
+# CONFIG_PARTITION_ADVANCED is not set
CONFIG_MSDOS_PARTITION=y
CONFIG_EFI_PARTITION=y
# end of Partition Types
@@ -795,14 +781,15 @@ CONFIG_BLK_MQ_STACKING=y
#
# IO Schedulers
#
-CONFIG_MQ_IOSCHED_DEADLINE=y
+CONFIG_MQ_IOSCHED_DEADLINE=m
CONFIG_MQ_IOSCHED_KYBER=m
CONFIG_IOSCHED_BFQ=m
CONFIG_BFQ_GROUP_IOSCHED=y
-CONFIG_BFQ_CGROUP_DEBUG=n
+# CONFIG_BFQ_CGROUP_DEBUG is not set
# end of IO Schedulers
CONFIG_PREEMPT_NOTIFIERS=y
+CONFIG_PADATA=y
CONFIG_ASN1=y
CONFIG_UNINLINE_SPIN_UNLOCK=y
CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y
@@ -826,7 +813,7 @@ CONFIG_ARCH_BINFMT_ELF_EXTRA_PHDRS=y
CONFIG_ARCH_HAVE_ELF_PROT=y
CONFIG_ARCH_USE_GNU_PROPERTY=y
CONFIG_ELFCORE=y
-CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=n
+# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
CONFIG_BINFMT_SCRIPT=y
CONFIG_BINFMT_MISC=m
CONFIG_COREDUMP=y
@@ -835,169 +822,232 @@ CONFIG_COREDUMP=y
#
# Memory Management options
#
+CONFIG_ZPOOL=y
+CONFIG_SWAP=y
+CONFIG_ZSWAP=y
+# CONFIG_ZSWAP_DEFAULT_ON is not set
+# CONFIG_ZSWAP_EXCLUSIVE_LOADS_DEFAULT_ON is not set
+# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_DEFLATE is not set
+# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZO is not set
+# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_842 is not set
+# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZ4 is not set
+# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZ4HC is not set
+CONFIG_ZSWAP_COMPRESSOR_DEFAULT_ZSTD=y
+CONFIG_ZSWAP_COMPRESSOR_DEFAULT="zstd"
+# CONFIG_ZSWAP_ZPOOL_DEFAULT_ZBUD is not set
+# CONFIG_ZSWAP_ZPOOL_DEFAULT_Z3FOLD is not set
+CONFIG_ZSWAP_ZPOOL_DEFAULT_ZSMALLOC=y
+CONFIG_ZSWAP_ZPOOL_DEFAULT="zsmalloc"
+CONFIG_ZBUD=y
+CONFIG_Z3FOLD=y
+CONFIG_ZSMALLOC=y
+# CONFIG_ZSMALLOC_STAT is not set
+CONFIG_ZSMALLOC_CHAIN_SIZE=8
+
+#
+# SLAB allocator options
+#
+# CONFIG_SLAB_DEPRECATED is not set
+CONFIG_SLUB=y
+# CONFIG_SLAB_MERGE_DEFAULT is not set
+# CONFIG_SLAB_FREELIST_RANDOM is not set
+# CONFIG_SLAB_FREELIST_HARDENED is not set
+# CONFIG_SLUB_STATS is not set
+# CONFIG_SLUB_CPU_PARTIAL is not set
+# CONFIG_RANDOM_KMALLOC_CACHES is not set
+# end of SLAB allocator options
+
+# CONFIG_SHUFFLE_PAGE_ALLOCATOR is not set
+# CONFIG_COMPAT_BRK is not set
CONFIG_SPARSEMEM=y
CONFIG_SPARSEMEM_EXTREME=y
CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y
CONFIG_SPARSEMEM_VMEMMAP=y
CONFIG_HAVE_FAST_GUP=y
CONFIG_ARCH_KEEP_MEMBLOCK=y
-CONFIG_MEMORY_ISOLATION=y
+CONFIG_EXCLUSIVE_SYSTEM_RAM=y
CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
-CONFIG_MEMORY_HOTPLUG=n
CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
+# CONFIG_MEMORY_HOTPLUG is not set
+CONFIG_ARCH_MHP_MEMMAP_ON_MEMORY_ENABLE=y
CONFIG_SPLIT_PTLOCK_CPUS=4
CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK=y
CONFIG_COMPACTION=y
+CONFIG_COMPACT_UNEVICTABLE_DEFAULT=1
CONFIG_PAGE_REPORTING=y
CONFIG_MIGRATION=y
CONFIG_ARCH_ENABLE_HUGEPAGE_MIGRATION=y
-CONFIG_CONTIG_ALLOC=y
CONFIG_PHYS_ADDR_T_64BIT=y
CONFIG_MMU_NOTIFIER=y
CONFIG_KSM=y
CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
CONFIG_ARCH_SUPPORTS_MEMORY_FAILURE=y
-CONFIG_MEMORY_FAILURE=n
-CONFIG_TRANSPARENT_HUGEPAGE=n
-CONFIG_FRONTSWAP=y
-CONFIG_CMA=y
-CONFIG_CMA_DEBUGFS=n
-CONFIG_CMA_SYSFS=n
-CONFIG_CMA_AREAS=7
-CONFIG_ZSWAP=y
-CONFIG_ZSWAP_COMPRESSOR_DEFAULT_DEFLATE=n
-CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZO=n
-CONFIG_ZSWAP_COMPRESSOR_DEFAULT_842=n
-CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZ4=n
-CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZ4HC=n
-CONFIG_ZSWAP_COMPRESSOR_DEFAULT_ZSTD=y
-CONFIG_ZSWAP_COMPRESSOR_DEFAULT="zstd"
-CONFIG_ZSWAP_ZPOOL_DEFAULT_ZBUD=n
-CONFIG_ZSWAP_ZPOOL_DEFAULT_Z3FOLD=n
-CONFIG_ZSWAP_ZPOOL_DEFAULT_ZSMALLOC=y
-CONFIG_ZSWAP_ZPOOL_DEFAULT="zsmalloc"
-CONFIG_ZSWAP_DEFAULT_ON=n
-CONFIG_ZPOOL=y
-CONFIG_ZBUD=y
-CONFIG_Z3FOLD=y
-CONFIG_ZSMALLOC=y
-CONFIG_ZSMALLOC_STAT=n
+# CONFIG_MEMORY_FAILURE is not set
+# CONFIG_TRANSPARENT_HUGEPAGE is not set
+# CONFIG_CMA is not set
CONFIG_GENERIC_EARLY_IOREMAP=y
-CONFIG_DEFERRED_STRUCT_PAGE_INIT=n
-CONFIG_IDLE_PAGE_TRACKING=n
+# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set
+# CONFIG_IDLE_PAGE_TRACKING is not set
CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y
CONFIG_ARCH_HAS_CURRENT_STACK_POINTER=y
CONFIG_ARCH_HAS_PTE_DEVMAP=y
CONFIG_ZONE_DMA=y
CONFIG_ZONE_DMA32=y
CONFIG_ARCH_USES_HIGH_VMA_FLAGS=y
-CONFIG_PERCPU_STATS=n
-CONFIG_GUP_TEST=n
+CONFIG_ARCH_USES_PG_ARCH_X=y
+CONFIG_VM_EVENT_COUNTERS=y
+# CONFIG_PERCPU_STATS is not set
+# CONFIG_GUP_TEST is not set
+# CONFIG_DMAPOOL_TEST is not set
CONFIG_ARCH_HAS_PTE_SPECIAL=y
+CONFIG_MEMFD_CREATE=y
CONFIG_SECRETMEM=y
-CONFIG_ANON_VMA_NAME=n
+# CONFIG_ANON_VMA_NAME is not set
+# CONFIG_USERFAULTFD is not set
+CONFIG_LRU_GEN=y
+# CONFIG_LRU_GEN_ENABLED is not set
+# CONFIG_LRU_GEN_STATS is not set
+CONFIG_ARCH_SUPPORTS_PER_VMA_LOCK=y
+CONFIG_PER_VMA_LOCK=y
+CONFIG_LOCK_MM_AND_FIND_VMA=y
#
# Data Access Monitoring
#
-CONFIG_DAMON=n
+# CONFIG_DAMON is not set
# end of Data Access Monitoring
# end of Memory Management options
CONFIG_NET=y
CONFIG_NET_INGRESS=y
CONFIG_NET_EGRESS=y
+CONFIG_NET_XGRESS=y
CONFIG_NET_REDIRECT=y
CONFIG_SKB_EXTENSIONS=y
#
# Networking options
#
-CONFIG_PACKET=y
+CONFIG_PACKET=m
CONFIG_PACKET_DIAG=m
CONFIG_UNIX=y
CONFIG_UNIX_SCM=y
CONFIG_AF_UNIX_OOB=y
-CONFIG_UNIX_DIAG=n
-CONFIG_TLS=n
-CONFIG_XFRM_USER=n
-CONFIG_NET_KEY=n
-CONFIG_XDP_SOCKETS=n
+CONFIG_UNIX_DIAG=m
+CONFIG_TLS=m
+# CONFIG_TLS_DEVICE is not set
+# CONFIG_TLS_TOE is not set
+CONFIG_XFRM=y
+CONFIG_XFRM_ALGO=m
+CONFIG_XFRM_USER=m
+CONFIG_XFRM_INTERFACE=m
+CONFIG_XFRM_SUB_POLICY=y
+CONFIG_XFRM_MIGRATE=y
+CONFIG_XFRM_STATISTICS=y
+CONFIG_XFRM_AH=m
+CONFIG_XFRM_ESP=m
+CONFIG_XFRM_IPCOMP=m
+CONFIG_NET_KEY=m
+CONFIG_NET_KEY_MIGRATE=y
+# CONFIG_XDP_SOCKETS is not set
+CONFIG_NET_HANDSHAKE=y
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
-CONFIG_IP_ADVANCED_ROUTER=n
+CONFIG_IP_ADVANCED_ROUTER=y
+# CONFIG_IP_FIB_TRIE_STATS is not set
+CONFIG_IP_MULTIPLE_TABLES=y
+CONFIG_IP_ROUTE_MULTIPATH=y
+CONFIG_IP_ROUTE_VERBOSE=y
CONFIG_IP_ROUTE_CLASSID=y
-CONFIG_IP_PNP=y
-CONFIG_IP_PNP_DHCP=y
-CONFIG_IP_PNP_BOOTP=y
-CONFIG_IP_PNP_RARP=n
-CONFIG_NET_IPIP=n
-CONFIG_NET_IPGRE_DEMUX=n
+# CONFIG_IP_PNP is not set
+CONFIG_NET_IPIP=m
+CONFIG_NET_IPGRE_DEMUX=m
CONFIG_NET_IP_TUNNEL=m
-CONFIG_IP_MROUTE=n
+CONFIG_NET_IPGRE=m
+CONFIG_NET_IPGRE_BROADCAST=y
+CONFIG_IP_MROUTE_COMMON=y
+CONFIG_IP_MROUTE=y
+CONFIG_IP_MROUTE_MULTIPLE_TABLES=y
+# CONFIG_IP_PIMSM_V1 is not set
+CONFIG_IP_PIMSM_V2=y
CONFIG_SYN_COOKIES=y
-CONFIG_NET_IPVTI=n
+CONFIG_NET_IPVTI=m
CONFIG_NET_UDP_TUNNEL=m
-CONFIG_NET_FOU=n
-CONFIG_NET_FOU_IP_TUNNELS=n
-CONFIG_INET_AH=n
-CONFIG_INET_ESP=n
-CONFIG_INET_IPCOMP=n
+CONFIG_NET_FOU=m
+CONFIG_NET_FOU_IP_TUNNELS=y
+CONFIG_INET_AH=m
+CONFIG_INET_ESP=m
+# CONFIG_INET_ESP_OFFLOAD is not set
+# CONFIG_INET_ESPINTCP is not set
+CONFIG_INET_IPCOMP=m
+CONFIG_INET_TABLE_PERTURB_ORDER=16
+CONFIG_INET_XFRM_TUNNEL=m
CONFIG_INET_TUNNEL=m
-CONFIG_INET_DIAG=y
-CONFIG_INET_TCP_DIAG=y
+CONFIG_INET_DIAG=m
+CONFIG_INET_TCP_DIAG=m
CONFIG_INET_UDP_DIAG=m
-CONFIG_INET_RAW_DIAG=n
-CONFIG_INET_DIAG_DESTROY=n
+# CONFIG_INET_RAW_DIAG is not set
+# CONFIG_INET_DIAG_DESTROY is not set
CONFIG_TCP_CONG_ADVANCED=y
CONFIG_TCP_CONG_BIC=m
CONFIG_TCP_CONG_CUBIC=y
CONFIG_TCP_CONG_WESTWOOD=m
CONFIG_TCP_CONG_HTCP=m
-CONFIG_TCP_CONG_HSTCP=n
-CONFIG_TCP_CONG_HYBLA=n
-CONFIG_TCP_CONG_VEGAS=n
-CONFIG_TCP_CONG_NV=n
-CONFIG_TCP_CONG_SCALABLE=n
-CONFIG_TCP_CONG_LP=n
-CONFIG_TCP_CONG_VENO=n
-CONFIG_TCP_CONG_YEAH=n
-CONFIG_TCP_CONG_ILLINOIS=n
-CONFIG_TCP_CONG_DCTCP=n
-CONFIG_TCP_CONG_CDG=n
-CONFIG_TCP_CONG_BBR=n
+CONFIG_TCP_CONG_HSTCP=m
+CONFIG_TCP_CONG_HYBLA=m
+CONFIG_TCP_CONG_VEGAS=m
+CONFIG_TCP_CONG_NV=m
+CONFIG_TCP_CONG_SCALABLE=m
+CONFIG_TCP_CONG_LP=m
+CONFIG_TCP_CONG_VENO=m
+CONFIG_TCP_CONG_YEAH=m
+CONFIG_TCP_CONG_ILLINOIS=m
+CONFIG_TCP_CONG_DCTCP=m
+CONFIG_TCP_CONG_CDG=m
+CONFIG_TCP_CONG_BBR=m
CONFIG_DEFAULT_CUBIC=y
-CONFIG_DEFAULT_RENO=n
+# CONFIG_DEFAULT_RENO is not set
CONFIG_DEFAULT_TCP_CONG="cubic"
-CONFIG_TCP_MD5SIG=n
+CONFIG_TCP_MD5SIG=y
CONFIG_IPV6=m
-CONFIG_IPV6_ROUTER_PREF=n
-CONFIG_IPV6_OPTIMISTIC_DAD=n
-CONFIG_INET6_AH=n
-CONFIG_INET6_ESP=n
-CONFIG_INET6_IPCOMP=n
-CONFIG_IPV6_MIP6=n
-CONFIG_IPV6_ILA=n
-CONFIG_IPV6_VTI=n
+CONFIG_IPV6_ROUTER_PREF=y
+CONFIG_IPV6_ROUTE_INFO=y
+# CONFIG_IPV6_OPTIMISTIC_DAD is not set
+CONFIG_INET6_AH=m
+CONFIG_INET6_ESP=m
+# CONFIG_INET6_ESP_OFFLOAD is not set
+# CONFIG_INET6_ESPINTCP is not set
+CONFIG_INET6_IPCOMP=m
+CONFIG_IPV6_MIP6=m
+CONFIG_IPV6_ILA=m
+CONFIG_INET6_XFRM_TUNNEL=m
+CONFIG_INET6_TUNNEL=m
+CONFIG_IPV6_VTI=m
CONFIG_IPV6_SIT=m
-CONFIG_IPV6_SIT_6RD=n
+CONFIG_IPV6_SIT_6RD=y
CONFIG_IPV6_NDISC_NODETYPE=y
-CONFIG_IPV6_TUNNEL=n
-CONFIG_IPV6_MULTIPLE_TABLES=n
-CONFIG_IPV6_MROUTE=n
-CONFIG_IPV6_SEG6_LWTUNNEL=n
-CONFIG_IPV6_SEG6_HMAC=n
-CONFIG_IPV6_RPL_LWTUNNEL=n
-CONFIG_IPV6_IOAM6_LWTUNNEL=n
-CONFIG_NETLABEL=n
+CONFIG_IPV6_TUNNEL=m
+CONFIG_IPV6_GRE=m
+CONFIG_IPV6_FOU=m
+CONFIG_IPV6_FOU_TUNNEL=m
+CONFIG_IPV6_MULTIPLE_TABLES=y
+CONFIG_IPV6_SUBTREES=y
+CONFIG_IPV6_MROUTE=y
+CONFIG_IPV6_MROUTE_MULTIPLE_TABLES=y
+CONFIG_IPV6_PIMSM_V2=y
+# CONFIG_IPV6_SEG6_LWTUNNEL is not set
+# CONFIG_IPV6_SEG6_HMAC is not set
+# CONFIG_IPV6_RPL_LWTUNNEL is not set
+# CONFIG_IPV6_IOAM6_LWTUNNEL is not set
+# CONFIG_NETLABEL is not set
CONFIG_MPTCP=y
-CONFIG_INET_MPTCP_DIAG=y
-CONFIG_NETWORK_SECMARK=n
+CONFIG_INET_MPTCP_DIAG=m
+# CONFIG_NETWORK_SECMARK is not set
CONFIG_NET_PTP_CLASSIFY=y
CONFIG_NETWORK_PHY_TIMESTAMPING=y
CONFIG_NETFILTER=y
CONFIG_NETFILTER_ADVANCED=y
-CONFIG_BRIDGE_NETFILTER=n
+CONFIG_BRIDGE_NETFILTER=m
#
# Core Netfilter Configuration
@@ -1005,270 +1055,388 @@ CONFIG_BRIDGE_NETFILTER=n
CONFIG_NETFILTER_INGRESS=y
CONFIG_NETFILTER_EGRESS=y
CONFIG_NETFILTER_SKIP_EGRESS=y
-CONFIG_NETFILTER_NETLINK_ACCT=n
-CONFIG_NETFILTER_NETLINK_QUEUE=n
-CONFIG_NETFILTER_NETLINK_LOG=n
-CONFIG_NETFILTER_NETLINK_OSF=n
+CONFIG_NETFILTER_NETLINK=m
+CONFIG_NETFILTER_FAMILY_BRIDGE=y
+CONFIG_NETFILTER_FAMILY_ARP=y
+CONFIG_NETFILTER_BPF_LINK=y
+# CONFIG_NETFILTER_NETLINK_HOOK is not set
+CONFIG_NETFILTER_NETLINK_ACCT=m
+CONFIG_NETFILTER_NETLINK_QUEUE=m
+CONFIG_NETFILTER_NETLINK_LOG=m
+CONFIG_NETFILTER_NETLINK_OSF=m
CONFIG_NF_CONNTRACK=m
CONFIG_NF_LOG_SYSLOG=m
-CONFIG_NF_CONNTRACK_MARK=n
-CONFIG_NF_CONNTRACK_ZONES=n
+CONFIG_NETFILTER_CONNCOUNT=m
+CONFIG_NF_CONNTRACK_MARK=y
+CONFIG_NF_CONNTRACK_ZONES=y
CONFIG_NF_CONNTRACK_PROCFS=y
CONFIG_NF_CONNTRACK_EVENTS=y
-CONFIG_NF_CONNTRACK_TIMEOUT=n
-CONFIG_NF_CONNTRACK_TIMESTAMP=n
-CONFIG_NF_CONNTRACK_LABELS=n
+CONFIG_NF_CONNTRACK_TIMEOUT=y
+CONFIG_NF_CONNTRACK_TIMESTAMP=y
+CONFIG_NF_CONNTRACK_LABELS=y
+CONFIG_NF_CONNTRACK_OVS=y
CONFIG_NF_CT_PROTO_DCCP=y
+CONFIG_NF_CT_PROTO_GRE=y
CONFIG_NF_CT_PROTO_SCTP=y
CONFIG_NF_CT_PROTO_UDPLITE=y
-CONFIG_NF_CONNTRACK_AMANDA=n
-CONFIG_NF_CONNTRACK_FTP=n
-CONFIG_NF_CONNTRACK_H323=n
-CONFIG_NF_CONNTRACK_IRC=n
-CONFIG_NF_CONNTRACK_NETBIOS_NS=n
-CONFIG_NF_CONNTRACK_SNMP=n
-CONFIG_NF_CONNTRACK_PPTP=n
-CONFIG_NF_CONNTRACK_SANE=n
-CONFIG_NF_CONNTRACK_SIP=n
-CONFIG_NF_CONNTRACK_TFTP=n
-CONFIG_NF_CT_NETLINK=n
+CONFIG_NF_CONNTRACK_AMANDA=m
+CONFIG_NF_CONNTRACK_FTP=m
+CONFIG_NF_CONNTRACK_H323=m
+CONFIG_NF_CONNTRACK_IRC=m
+CONFIG_NF_CONNTRACK_BROADCAST=m
+CONFIG_NF_CONNTRACK_NETBIOS_NS=m
+CONFIG_NF_CONNTRACK_SNMP=m
+CONFIG_NF_CONNTRACK_PPTP=m
+CONFIG_NF_CONNTRACK_SANE=m
+CONFIG_NF_CONNTRACK_SIP=m
+CONFIG_NF_CONNTRACK_TFTP=m
+CONFIG_NF_CT_NETLINK=m
+CONFIG_NF_CT_NETLINK_TIMEOUT=m
+CONFIG_NF_CT_NETLINK_HELPER=m
+CONFIG_NETFILTER_NETLINK_GLUE_CT=y
CONFIG_NF_NAT=m
+CONFIG_NF_NAT_AMANDA=m
+CONFIG_NF_NAT_FTP=m
+CONFIG_NF_NAT_IRC=m
+CONFIG_NF_NAT_SIP=m
+CONFIG_NF_NAT_TFTP=m
+CONFIG_NF_NAT_REDIRECT=y
CONFIG_NF_NAT_MASQUERADE=y
-CONFIG_NF_TABLES=n
+CONFIG_NF_NAT_OVS=y
+CONFIG_NETFILTER_SYNPROXY=m
+CONFIG_NF_TABLES=m
+CONFIG_NF_TABLES_INET=y
+CONFIG_NF_TABLES_NETDEV=y
+CONFIG_NFT_NUMGEN=m
+CONFIG_NFT_CT=m
+CONFIG_NFT_FLOW_OFFLOAD=m
+CONFIG_NFT_CONNLIMIT=m
+CONFIG_NFT_LOG=m
+CONFIG_NFT_LIMIT=m
+CONFIG_NFT_MASQ=m
+CONFIG_NFT_REDIR=m
+CONFIG_NFT_NAT=m
+CONFIG_NFT_TUNNEL=m
+CONFIG_NFT_QUEUE=m
+CONFIG_NFT_QUOTA=m
+CONFIG_NFT_REJECT=m
+CONFIG_NFT_REJECT_INET=m
+CONFIG_NFT_COMPAT=m
+CONFIG_NFT_HASH=m
+CONFIG_NFT_FIB=m
+CONFIG_NFT_FIB_INET=m
+CONFIG_NFT_XFRM=m
+CONFIG_NFT_SOCKET=m
+CONFIG_NFT_OSF=m
+CONFIG_NFT_TPROXY=m
+CONFIG_NFT_SYNPROXY=m
+CONFIG_NF_DUP_NETDEV=m
+CONFIG_NFT_DUP_NETDEV=m
+CONFIG_NFT_FWD_NETDEV=m
+CONFIG_NFT_FIB_NETDEV=m
+CONFIG_NFT_REJECT_NETDEV=m
+CONFIG_NF_FLOW_TABLE_INET=m
+CONFIG_NF_FLOW_TABLE=m
+# CONFIG_NF_FLOW_TABLE_PROCFS is not set
CONFIG_NETFILTER_XTABLES=m
#
# Xtables combined modules
#
-CONFIG_NETFILTER_XT_MARK=n
-CONFIG_NETFILTER_XT_CONNMARK=n
+CONFIG_NETFILTER_XT_MARK=m
+CONFIG_NETFILTER_XT_CONNMARK=m
+CONFIG_NETFILTER_XT_SET=m
#
# Xtables targets
#
CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m
-CONFIG_NETFILTER_XT_TARGET_CLASSIFY=n
-CONFIG_NETFILTER_XT_TARGET_CONNMARK=n
-CONFIG_NETFILTER_XT_TARGET_DSCP=n
-CONFIG_NETFILTER_XT_TARGET_HL=n
-CONFIG_NETFILTER_XT_TARGET_HMARK=n
-CONFIG_NETFILTER_XT_TARGET_IDLETIMER=n
-CONFIG_NETFILTER_XT_TARGET_LED=n
+CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
+CONFIG_NETFILTER_XT_TARGET_CONNMARK=m
+CONFIG_NETFILTER_XT_TARGET_CT=m
+CONFIG_NETFILTER_XT_TARGET_DSCP=m
+CONFIG_NETFILTER_XT_TARGET_HL=m
+CONFIG_NETFILTER_XT_TARGET_HMARK=m
+CONFIG_NETFILTER_XT_TARGET_IDLETIMER=m
+CONFIG_NETFILTER_XT_TARGET_LED=m
CONFIG_NETFILTER_XT_TARGET_LOG=m
-CONFIG_NETFILTER_XT_TARGET_MARK=n
+CONFIG_NETFILTER_XT_TARGET_MARK=m
CONFIG_NETFILTER_XT_NAT=m
-CONFIG_NETFILTER_XT_TARGET_NETMAP=n
-CONFIG_NETFILTER_XT_TARGET_NFLOG=n
-CONFIG_NETFILTER_XT_TARGET_NFQUEUE=n
-CONFIG_NETFILTER_XT_TARGET_RATEEST=n
-CONFIG_NETFILTER_XT_TARGET_REDIRECT=n
+CONFIG_NETFILTER_XT_TARGET_NETMAP=m
+CONFIG_NETFILTER_XT_TARGET_NFLOG=m
+CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
+CONFIG_NETFILTER_XT_TARGET_NOTRACK=m
+CONFIG_NETFILTER_XT_TARGET_RATEEST=m
+CONFIG_NETFILTER_XT_TARGET_REDIRECT=m
CONFIG_NETFILTER_XT_TARGET_MASQUERADE=m
-CONFIG_NETFILTER_XT_TARGET_TEE=n
-CONFIG_NETFILTER_XT_TARGET_TPROXY=n
-CONFIG_NETFILTER_XT_TARGET_TCPMSS=n
-CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=n
+CONFIG_NETFILTER_XT_TARGET_TEE=m
+CONFIG_NETFILTER_XT_TARGET_TPROXY=m
+CONFIG_NETFILTER_XT_TARGET_TRACE=m
+CONFIG_NETFILTER_XT_TARGET_TCPMSS=m
+CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m
#
# Xtables matches
#
CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m
-CONFIG_NETFILTER_XT_MATCH_BPF=n
-CONFIG_NETFILTER_XT_MATCH_CGROUP=n
-CONFIG_NETFILTER_XT_MATCH_CLUSTER=n
-CONFIG_NETFILTER_XT_MATCH_COMMENT=n
-CONFIG_NETFILTER_XT_MATCH_CONNBYTES=n
-CONFIG_NETFILTER_XT_MATCH_CONNLABEL=n
-CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=n
-CONFIG_NETFILTER_XT_MATCH_CONNMARK=n
+# CONFIG_NETFILTER_XT_MATCH_BPF is not set
+CONFIG_NETFILTER_XT_MATCH_CGROUP=m
+CONFIG_NETFILTER_XT_MATCH_CLUSTER=m
+CONFIG_NETFILTER_XT_MATCH_COMMENT=m
+CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m
+CONFIG_NETFILTER_XT_MATCH_CONNLABEL=m
+CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m
+CONFIG_NETFILTER_XT_MATCH_CONNMARK=m
CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
-CONFIG_NETFILTER_XT_MATCH_CPU=n
-CONFIG_NETFILTER_XT_MATCH_DCCP=n
-CONFIG_NETFILTER_XT_MATCH_DEVGROUP=n
-CONFIG_NETFILTER_XT_MATCH_DSCP=n
-CONFIG_NETFILTER_XT_MATCH_ECN=n
-CONFIG_NETFILTER_XT_MATCH_ESP=n
-CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=n
-CONFIG_NETFILTER_XT_MATCH_HELPER=n
-CONFIG_NETFILTER_XT_MATCH_HL=n
-CONFIG_NETFILTER_XT_MATCH_IPCOMP=n
-CONFIG_NETFILTER_XT_MATCH_IPRANGE=n
-CONFIG_NETFILTER_XT_MATCH_L2TP=n
-CONFIG_NETFILTER_XT_MATCH_LENGTH=n
-CONFIG_NETFILTER_XT_MATCH_LIMIT=n
-CONFIG_NETFILTER_XT_MATCH_MAC=n
-CONFIG_NETFILTER_XT_MATCH_MARK=n
-CONFIG_NETFILTER_XT_MATCH_MULTIPORT=n
-CONFIG_NETFILTER_XT_MATCH_NFACCT=n
-CONFIG_NETFILTER_XT_MATCH_OSF=n
-CONFIG_NETFILTER_XT_MATCH_OWNER=n
-CONFIG_NETFILTER_XT_MATCH_PKTTYPE=n
-CONFIG_NETFILTER_XT_MATCH_QUOTA=n
-CONFIG_NETFILTER_XT_MATCH_RATEEST=n
-CONFIG_NETFILTER_XT_MATCH_REALM=n
-CONFIG_NETFILTER_XT_MATCH_RECENT=n
-CONFIG_NETFILTER_XT_MATCH_SCTP=n
-CONFIG_NETFILTER_XT_MATCH_SOCKET=n
-CONFIG_NETFILTER_XT_MATCH_STATE=n
-CONFIG_NETFILTER_XT_MATCH_STATISTIC=n
-CONFIG_NETFILTER_XT_MATCH_STRING=n
-CONFIG_NETFILTER_XT_MATCH_TCPMSS=n
-CONFIG_NETFILTER_XT_MATCH_TIME=n
-CONFIG_NETFILTER_XT_MATCH_U32=n
+CONFIG_NETFILTER_XT_MATCH_CPU=m
+CONFIG_NETFILTER_XT_MATCH_DCCP=m
+CONFIG_NETFILTER_XT_MATCH_DEVGROUP=m
+CONFIG_NETFILTER_XT_MATCH_DSCP=m
+CONFIG_NETFILTER_XT_MATCH_ECN=m
+CONFIG_NETFILTER_XT_MATCH_ESP=m
+CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
+CONFIG_NETFILTER_XT_MATCH_HELPER=m
+CONFIG_NETFILTER_XT_MATCH_HL=m
+CONFIG_NETFILTER_XT_MATCH_IPCOMP=m
+CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
+CONFIG_NETFILTER_XT_MATCH_IPVS=m
+CONFIG_NETFILTER_XT_MATCH_L2TP=m
+CONFIG_NETFILTER_XT_MATCH_LENGTH=m
+CONFIG_NETFILTER_XT_MATCH_LIMIT=m
+CONFIG_NETFILTER_XT_MATCH_MAC=m
+CONFIG_NETFILTER_XT_MATCH_MARK=m
+CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
+CONFIG_NETFILTER_XT_MATCH_NFACCT=m
+CONFIG_NETFILTER_XT_MATCH_OSF=m
+CONFIG_NETFILTER_XT_MATCH_OWNER=m
+CONFIG_NETFILTER_XT_MATCH_POLICY=m
+CONFIG_NETFILTER_XT_MATCH_PHYSDEV=m
+CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m
+CONFIG_NETFILTER_XT_MATCH_QUOTA=m
+CONFIG_NETFILTER_XT_MATCH_RATEEST=m
+CONFIG_NETFILTER_XT_MATCH_REALM=m
+CONFIG_NETFILTER_XT_MATCH_RECENT=m
+CONFIG_NETFILTER_XT_MATCH_SCTP=m
+CONFIG_NETFILTER_XT_MATCH_SOCKET=m
+CONFIG_NETFILTER_XT_MATCH_STATE=m
+CONFIG_NETFILTER_XT_MATCH_STATISTIC=m
+CONFIG_NETFILTER_XT_MATCH_STRING=m
+CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
+CONFIG_NETFILTER_XT_MATCH_TIME=m
+CONFIG_NETFILTER_XT_MATCH_U32=m
# end of Core Netfilter Configuration
-CONFIG_IP_SET=n
-CONFIG_IP_VS=n
+CONFIG_IP_SET=m
+CONFIG_IP_SET_MAX=256
+CONFIG_IP_SET_BITMAP_IP=m
+CONFIG_IP_SET_BITMAP_IPMAC=m
+CONFIG_IP_SET_BITMAP_PORT=m
+CONFIG_IP_SET_HASH_IP=m
+CONFIG_IP_SET_HASH_IPMARK=m
+CONFIG_IP_SET_HASH_IPPORT=m
+CONFIG_IP_SET_HASH_IPPORTIP=m
+CONFIG_IP_SET_HASH_IPPORTNET=m
+CONFIG_IP_SET_HASH_IPMAC=m
+CONFIG_IP_SET_HASH_MAC=m
+CONFIG_IP_SET_HASH_NETPORTNET=m
+CONFIG_IP_SET_HASH_NET=m
+CONFIG_IP_SET_HASH_NETNET=m
+CONFIG_IP_SET_HASH_NETPORT=m
+CONFIG_IP_SET_HASH_NETIFACE=m
+CONFIG_IP_SET_LIST_SET=m
+CONFIG_IP_VS=m
+CONFIG_IP_VS_IPV6=y
+# CONFIG_IP_VS_DEBUG is not set
+CONFIG_IP_VS_TAB_BITS=12
+
+#
+# IPVS transport protocol load balancing support
+#
+CONFIG_IP_VS_PROTO_TCP=y
+CONFIG_IP_VS_PROTO_UDP=y
+CONFIG_IP_VS_PROTO_AH_ESP=y
+CONFIG_IP_VS_PROTO_ESP=y
+CONFIG_IP_VS_PROTO_AH=y
+CONFIG_IP_VS_PROTO_SCTP=y
+
+#
+# IPVS scheduler
+#
+CONFIG_IP_VS_RR=m
+CONFIG_IP_VS_WRR=m
+CONFIG_IP_VS_LC=m
+CONFIG_IP_VS_WLC=m
+CONFIG_IP_VS_FO=m
+CONFIG_IP_VS_OVF=m
+CONFIG_IP_VS_LBLC=m
+CONFIG_IP_VS_LBLCR=m
+CONFIG_IP_VS_DH=m
+CONFIG_IP_VS_SH=m
+CONFIG_IP_VS_MH=m
+CONFIG_IP_VS_SED=m
+CONFIG_IP_VS_NQ=m
+CONFIG_IP_VS_TWOS=m
+
+#
+# IPVS SH scheduler
+#
+CONFIG_IP_VS_SH_TAB_BITS=8
+
+#
+# IPVS MH scheduler
+#
+CONFIG_IP_VS_MH_TAB_INDEX=12
+
+#
+# IPVS application helper
+#
+CONFIG_IP_VS_FTP=m
+CONFIG_IP_VS_NFCT=y
+CONFIG_IP_VS_PE_SIP=m
#
# IP: Netfilter Configuration
#
CONFIG_NF_DEFRAG_IPV4=m
-CONFIG_NF_SOCKET_IPV4=n
-CONFIG_NF_TPROXY_IPV4=n
-CONFIG_NF_DUP_IPV4=n
-CONFIG_NF_LOG_ARP=n
-CONFIG_NF_LOG_IPV4=n
+CONFIG_NF_SOCKET_IPV4=m
+CONFIG_NF_TPROXY_IPV4=m
+CONFIG_NF_TABLES_IPV4=y
+CONFIG_NFT_REJECT_IPV4=m
+CONFIG_NFT_DUP_IPV4=m
+CONFIG_NFT_FIB_IPV4=m
+CONFIG_NF_TABLES_ARP=y
+CONFIG_NF_DUP_IPV4=m
+CONFIG_NF_LOG_ARP=m
+CONFIG_NF_LOG_IPV4=m
CONFIG_NF_REJECT_IPV4=m
+CONFIG_NF_NAT_SNMP_BASIC=m
+CONFIG_NF_NAT_PPTP=m
+CONFIG_NF_NAT_H323=m
CONFIG_IP_NF_IPTABLES=m
-CONFIG_IP_NF_MATCH_AH=n
-CONFIG_IP_NF_MATCH_ECN=n
-CONFIG_IP_NF_MATCH_RPFILTER=n
-CONFIG_IP_NF_MATCH_TTL=n
+CONFIG_IP_NF_MATCH_AH=m
+CONFIG_IP_NF_MATCH_ECN=m
+CONFIG_IP_NF_MATCH_RPFILTER=m
+CONFIG_IP_NF_MATCH_TTL=m
CONFIG_IP_NF_FILTER=m
CONFIG_IP_NF_TARGET_REJECT=m
-CONFIG_IP_NF_TARGET_SYNPROXY=n
+CONFIG_IP_NF_TARGET_SYNPROXY=m
CONFIG_IP_NF_NAT=m
CONFIG_IP_NF_TARGET_MASQUERADE=m
-CONFIG_IP_NF_TARGET_NETMAP=n
-CONFIG_IP_NF_TARGET_REDIRECT=n
+CONFIG_IP_NF_TARGET_NETMAP=m
+CONFIG_IP_NF_TARGET_REDIRECT=m
CONFIG_IP_NF_MANGLE=m
-CONFIG_IP_NF_TARGET_CLUSTERIP=n
-CONFIG_IP_NF_TARGET_ECN=n
-CONFIG_IP_NF_TARGET_TTL=n
-CONFIG_IP_NF_RAW=n
-CONFIG_IP_NF_SECURITY=n
-CONFIG_IP_NF_ARPTABLES=n
+CONFIG_IP_NF_TARGET_ECN=m
+CONFIG_IP_NF_TARGET_TTL=m
+CONFIG_IP_NF_RAW=m
+# CONFIG_IP_NF_SECURITY is not set
+CONFIG_IP_NF_ARPTABLES=m
+CONFIG_IP_NF_ARPFILTER=m
+CONFIG_IP_NF_ARP_MANGLE=m
# end of IP: Netfilter Configuration
#
# IPv6: Netfilter Configuration
#
-CONFIG_NF_SOCKET_IPV6=n
-CONFIG_NF_TPROXY_IPV6=n
-CONFIG_NF_DUP_IPV6=n
+CONFIG_NF_SOCKET_IPV6=m
+CONFIG_NF_TPROXY_IPV6=m
+CONFIG_NF_TABLES_IPV6=y
+CONFIG_NFT_REJECT_IPV6=m
+CONFIG_NFT_DUP_IPV6=m
+CONFIG_NFT_FIB_IPV6=m
+CONFIG_NF_DUP_IPV6=m
CONFIG_NF_REJECT_IPV6=m
CONFIG_NF_LOG_IPV6=m
CONFIG_IP6_NF_IPTABLES=m
-CONFIG_IP6_NF_MATCH_AH=n
-CONFIG_IP6_NF_MATCH_EUI64=n
-CONFIG_IP6_NF_MATCH_FRAG=n
-CONFIG_IP6_NF_MATCH_OPTS=n
-CONFIG_IP6_NF_MATCH_HL=n
-CONFIG_IP6_NF_MATCH_IPV6HEADER=n
-CONFIG_IP6_NF_MATCH_MH=n
-CONFIG_IP6_NF_MATCH_RPFILTER=n
-CONFIG_IP6_NF_MATCH_RT=n
-CONFIG_IP6_NF_MATCH_SRH=n
-CONFIG_IP6_NF_TARGET_HL=n
+CONFIG_IP6_NF_MATCH_AH=m
+CONFIG_IP6_NF_MATCH_EUI64=m
+CONFIG_IP6_NF_MATCH_FRAG=m
+CONFIG_IP6_NF_MATCH_OPTS=m
+CONFIG_IP6_NF_MATCH_HL=m
+CONFIG_IP6_NF_MATCH_IPV6HEADER=m
+CONFIG_IP6_NF_MATCH_MH=m
+CONFIG_IP6_NF_MATCH_RPFILTER=m
+CONFIG_IP6_NF_MATCH_RT=m
+CONFIG_IP6_NF_MATCH_SRH=m
+CONFIG_IP6_NF_TARGET_HL=m
CONFIG_IP6_NF_FILTER=m
CONFIG_IP6_NF_TARGET_REJECT=m
-CONFIG_IP6_NF_TARGET_SYNPROXY=n
+CONFIG_IP6_NF_TARGET_SYNPROXY=m
CONFIG_IP6_NF_MANGLE=m
-CONFIG_IP6_NF_RAW=n
-CONFIG_IP6_NF_SECURITY=n
+CONFIG_IP6_NF_RAW=m
+# CONFIG_IP6_NF_SECURITY is not set
CONFIG_IP6_NF_NAT=m
CONFIG_IP6_NF_TARGET_MASQUERADE=m
-CONFIG_IP6_NF_TARGET_NPT=n
+CONFIG_IP6_NF_TARGET_NPT=m
# end of IPv6: Netfilter Configuration
CONFIG_NF_DEFRAG_IPV6=m
-CONFIG_NF_CONNTRACK_BRIDGE=n
-CONFIG_BRIDGE_NF_EBTABLES=n
-CONFIG_BPFILTER=n
-CONFIG_IP_DCCP=n
+# CONFIG_NF_TABLES_BRIDGE is not set
+# CONFIG_NF_CONNTRACK_BRIDGE is not set
+# CONFIG_BRIDGE_NF_EBTABLES is not set
+# CONFIG_BPFILTER is not set
+# CONFIG_IP_DCCP is not set
CONFIG_IP_SCTP=m
-CONFIG_SCTP_DBG_OBJCNT=n
+# CONFIG_SCTP_DBG_OBJCNT is not set
CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5=y
-CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=n
-CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE=n
+# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1 is not set
+# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set
CONFIG_SCTP_COOKIE_HMAC_MD5=y
-CONFIG_SCTP_COOKIE_HMAC_SHA1=n
+CONFIG_SCTP_COOKIE_HMAC_SHA1=y
CONFIG_INET_SCTP_DIAG=m
CONFIG_RDS=m
-CONFIG_RDS_TCP=n
-CONFIG_RDS_DEBUG=n
-CONFIG_TIPC=n
-CONFIG_ATM=n
-CONFIG_L2TP=n
+# CONFIG_RDS_TCP is not set
+# CONFIG_RDS_DEBUG is not set
+# CONFIG_TIPC is not set
+# CONFIG_ATM is not set
+# CONFIG_L2TP is not set
CONFIG_STP=m
CONFIG_GARP=m
CONFIG_MRP=m
CONFIG_BRIDGE=m
CONFIG_BRIDGE_IGMP_SNOOPING=y
CONFIG_BRIDGE_VLAN_FILTERING=y
-CONFIG_BRIDGE_MRP=n
-CONFIG_BRIDGE_CFM=n
-CONFIG_NET_DSA=m
-CONFIG_NET_DSA_TAG_AR9331=n
-CONFIG_NET_DSA_TAG_BRCM=n
-CONFIG_NET_DSA_TAG_BRCM_LEGACY=n
-CONFIG_NET_DSA_TAG_BRCM_PREPEND=n
-CONFIG_NET_DSA_TAG_HELLCREEK=n
-CONFIG_NET_DSA_TAG_GSWIP=n
-CONFIG_NET_DSA_TAG_DSA=n
-CONFIG_NET_DSA_TAG_EDSA=n
-CONFIG_NET_DSA_TAG_MTK=n
-CONFIG_NET_DSA_TAG_KSZ=n
-CONFIG_NET_DSA_TAG_OCELOT=n
-CONFIG_NET_DSA_TAG_OCELOT_8021Q=n
-CONFIG_NET_DSA_TAG_QCA=n
-CONFIG_NET_DSA_TAG_RTL4_A=n
-CONFIG_NET_DSA_TAG_RTL8_4=n
-CONFIG_NET_DSA_TAG_LAN9303=n
-CONFIG_NET_DSA_TAG_SJA1105=n
-CONFIG_NET_DSA_TAG_TRAILER=n
-CONFIG_NET_DSA_TAG_XRS700X=n
+# CONFIG_BRIDGE_MRP is not set
+# CONFIG_BRIDGE_CFM is not set
+# CONFIG_NET_DSA is not set
CONFIG_VLAN_8021Q=m
CONFIG_VLAN_8021Q_GVRP=y
CONFIG_VLAN_8021Q_MVRP=y
-CONFIG_DECNET=n
CONFIG_LLC=m
-CONFIG_LLC2=n
-CONFIG_ATALK=n
-CONFIG_X25=n
-CONFIG_LAPB=n
-CONFIG_PHONET=n
-CONFIG_6LOWPAN=n
-CONFIG_IEEE802154=n
+# CONFIG_LLC2 is not set
+# CONFIG_ATALK is not set
+# CONFIG_X25 is not set
+# CONFIG_LAPB is not set
+# CONFIG_PHONET is not set
+# CONFIG_6LOWPAN is not set
+# CONFIG_IEEE802154 is not set
CONFIG_NET_SCHED=y
#
# Queueing/Scheduling
#
-CONFIG_NET_SCH_CBQ=n
CONFIG_NET_SCH_HTB=m
CONFIG_NET_SCH_HFSC=m
CONFIG_NET_SCH_PRIO=m
CONFIG_NET_SCH_MULTIQ=m
-CONFIG_NET_SCH_RED=n
+CONFIG_NET_SCH_RED=m
CONFIG_NET_SCH_SFB=m
CONFIG_NET_SCH_SFQ=m
CONFIG_NET_SCH_TEQL=m
CONFIG_NET_SCH_TBF=m
-CONFIG_NET_SCH_CBS=n
-CONFIG_NET_SCH_ETF=n
-CONFIG_NET_SCH_TAPRIO=n
-CONFIG_NET_SCH_GRED=n
-CONFIG_NET_SCH_DSMARK=m
+CONFIG_NET_SCH_CBS=m
+CONFIG_NET_SCH_ETF=m
+CONFIG_NET_SCH_MQPRIO_LIB=m
+# CONFIG_NET_SCH_TAPRIO is not set
+CONFIG_NET_SCH_GRED=m
CONFIG_NET_SCH_NETEM=m
-CONFIG_NET_SCH_DRR=n
+CONFIG_NET_SCH_DRR=m
CONFIG_NET_SCH_MQPRIO=m
-CONFIG_NET_SCH_SKBPRIO=n
+CONFIG_NET_SCH_SKBPRIO=m
CONFIG_NET_SCH_CHOKE=m
CONFIG_NET_SCH_QFQ=m
CONFIG_NET_SCH_CODEL=m
CONFIG_NET_SCH_FQ_CODEL=m
-CONFIG_NET_SCH_CAKE=n
+CONFIG_NET_SCH_CAKE=m
CONFIG_NET_SCH_FQ=m
CONFIG_NET_SCH_HHF=m
CONFIG_NET_SCH_PIE=m
@@ -1276,73 +1444,98 @@ CONFIG_NET_SCH_FQ_PIE=m
CONFIG_NET_SCH_INGRESS=m
CONFIG_NET_SCH_PLUG=m
CONFIG_NET_SCH_ETS=m
-CONFIG_NET_SCH_DEFAULT=n
+# CONFIG_NET_SCH_DEFAULT is not set
#
# Classification
#
CONFIG_NET_CLS=y
CONFIG_NET_CLS_BASIC=m
-CONFIG_NET_CLS_TCINDEX=m
CONFIG_NET_CLS_ROUTE4=m
CONFIG_NET_CLS_FW=m
CONFIG_NET_CLS_U32=m
-CONFIG_CLS_U32_PERF=n
+CONFIG_CLS_U32_PERF=y
CONFIG_CLS_U32_MARK=y
-CONFIG_NET_CLS_RSVP=n
-CONFIG_NET_CLS_RSVP6=n
CONFIG_NET_CLS_FLOW=m
-CONFIG_NET_CLS_CGROUP=n
-CONFIG_NET_CLS_BPF=n
+# CONFIG_NET_CLS_CGROUP is not set
+# CONFIG_NET_CLS_BPF is not set
CONFIG_NET_CLS_FLOWER=m
-CONFIG_NET_CLS_MATCHALL=n
-CONFIG_NET_EMATCH=n
+CONFIG_NET_CLS_MATCHALL=m
+CONFIG_NET_EMATCH=y
+CONFIG_NET_EMATCH_STACK=32
+CONFIG_NET_EMATCH_CMP=m
+CONFIG_NET_EMATCH_NBYTE=m
+CONFIG_NET_EMATCH_U32=m
+CONFIG_NET_EMATCH_META=m
+CONFIG_NET_EMATCH_TEXT=m
+CONFIG_NET_EMATCH_IPSET=m
+CONFIG_NET_EMATCH_IPT=m
CONFIG_NET_CLS_ACT=y
-CONFIG_NET_ACT_POLICE=y
-CONFIG_NET_ACT_GACT=y
-CONFIG_GACT_PROB=n
+CONFIG_NET_ACT_POLICE=m
+CONFIG_NET_ACT_GACT=m
+CONFIG_GACT_PROB=y
CONFIG_NET_ACT_MIRRED=m
-CONFIG_NET_ACT_SAMPLE=m
+# CONFIG_NET_ACT_SAMPLE is not set
CONFIG_NET_ACT_IPT=m
CONFIG_NET_ACT_NAT=m
-CONFIG_NET_ACT_PEDIT=n
-CONFIG_NET_ACT_SIMP=n
-CONFIG_NET_ACT_SKBEDIT=n
-CONFIG_NET_ACT_CSUM=n
-CONFIG_NET_ACT_MPLS=n
-CONFIG_NET_ACT_VLAN=n
-CONFIG_NET_ACT_BPF=n
-CONFIG_NET_ACT_SKBMOD=n
-CONFIG_NET_ACT_IFE=n
-CONFIG_NET_ACT_TUNNEL_KEY=n
-CONFIG_NET_ACT_GATE=m
-CONFIG_NET_TC_SKB_EXT=n
+CONFIG_NET_ACT_PEDIT=m
+CONFIG_NET_ACT_SIMP=m
+CONFIG_NET_ACT_SKBEDIT=m
+CONFIG_NET_ACT_CSUM=m
+# CONFIG_NET_ACT_MPLS is not set
+CONFIG_NET_ACT_VLAN=m
+# CONFIG_NET_ACT_BPF is not set
+CONFIG_NET_ACT_CONNMARK=m
+# CONFIG_NET_ACT_CTINFO is not set
+CONFIG_NET_ACT_SKBMOD=m
+CONFIG_NET_ACT_IFE=m
+CONFIG_NET_ACT_TUNNEL_KEY=m
+# CONFIG_NET_ACT_CT is not set
+# CONFIG_NET_ACT_GATE is not set
+CONFIG_NET_IFE_SKBMARK=m
+CONFIG_NET_IFE_SKBPRIO=m
+CONFIG_NET_IFE_SKBTCINDEX=m
+# CONFIG_NET_TC_SKB_EXT is not set
CONFIG_NET_SCH_FIFO=y
-CONFIG_DCB=n
+# CONFIG_DCB is not set
CONFIG_DNS_RESOLVER=y
-CONFIG_BATMAN_ADV=n
-CONFIG_OPENVSWITCH=n
+CONFIG_BATMAN_ADV=m
+# CONFIG_BATMAN_ADV_BATMAN_V is not set
+CONFIG_BATMAN_ADV_BLA=y
+CONFIG_BATMAN_ADV_DAT=y
+CONFIG_BATMAN_ADV_NC=y
+CONFIG_BATMAN_ADV_MCAST=y
+# CONFIG_BATMAN_ADV_DEBUG is not set
+CONFIG_OPENVSWITCH=m
+CONFIG_OPENVSWITCH_GRE=m
CONFIG_VSOCKETS=m
CONFIG_VSOCKETS_DIAG=m
CONFIG_VSOCKETS_LOOPBACK=m
-CONFIG_VIRTIO_VSOCKETS=n
+CONFIG_VIRTIO_VSOCKETS=m
CONFIG_VIRTIO_VSOCKETS_COMMON=m
-CONFIG_NETLINK_DIAG=n
-CONFIG_MPLS=n
-CONFIG_NET_NSH=n
-CONFIG_HSR=n
+CONFIG_NETLINK_DIAG=m
+CONFIG_MPLS=y
+CONFIG_NET_MPLS_GSO=m
+CONFIG_MPLS_ROUTING=m
+CONFIG_MPLS_IPTUNNEL=m
+CONFIG_NET_NSH=m
+# CONFIG_HSR is not set
CONFIG_NET_SWITCHDEV=y
CONFIG_NET_L3_MASTER_DEV=y
CONFIG_QRTR=m
-CONFIG_QRTR_TUN=m
-CONFIG_NET_NCSI=n
+# CONFIG_QRTR_TUN is not set
+CONFIG_QRTR_MHI=m
+CONFIG_NET_NCSI=y
+# CONFIG_NCSI_OEM_CMD_GET_MAC is not set
+# CONFIG_NCSI_OEM_CMD_KEEP_PHY is not set
CONFIG_PCPU_DEV_REFCNT=y
+CONFIG_MAX_SKB_FRAGS=17
CONFIG_RPS=y
CONFIG_RFS_ACCEL=y
CONFIG_SOCK_RX_QUEUE_MAPPING=y
CONFIG_XPS=y
-CONFIG_CGROUP_NET_PRIO=n
-CONFIG_CGROUP_NET_CLASSID=n
+CONFIG_CGROUP_NET_PRIO=y
+CONFIG_CGROUP_NET_CLASSID=y
CONFIG_NET_RX_BUSY_POLL=y
CONFIG_BQL=y
CONFIG_NET_FLOW_LIMIT=y
@@ -1350,75 +1543,44 @@ CONFIG_NET_FLOW_LIMIT=y
#
# Network testing
#
-CONFIG_NET_PKTGEN=n
+CONFIG_NET_PKTGEN=m
# end of Network testing
# end of Networking options
-CONFIG_HAMRADIO=n
-CONFIG_CAN=m
-CONFIG_CAN_RAW=m
-CONFIG_CAN_BCM=m
-CONFIG_CAN_GW=m
-CONFIG_CAN_J1939=m
-CONFIG_CAN_ISOTP=n
-
-#
-# CAN Device Drivers
-#
-CONFIG_CAN_VCAN=n
-CONFIG_CAN_VXCAN=n
-CONFIG_CAN_SLCAN=n
-CONFIG_CAN_DEV=m
-CONFIG_CAN_CALC_BITTIMING=y
-CONFIG_CAN_FLEXCAN=m
-CONFIG_CAN_GRCAN=n
-CONFIG_CAN_KVASER_PCIEFD=n
-CONFIG_CAN_XILINXCAN=n
-CONFIG_CAN_C_CAN=n
-CONFIG_CAN_CC770=n
-CONFIG_CAN_IFI_CANFD=n
-CONFIG_CAN_M_CAN=n
-CONFIG_CAN_PEAK_PCIEFD=n
-CONFIG_CAN_SJA1000=n
-CONFIG_CAN_SOFTING=n
-
-#
-# CAN SPI interfaces
-#
-CONFIG_CAN_HI311X=n
-CONFIG_CAN_MCP251X=n
-CONFIG_CAN_MCP251XFD=n
-# end of CAN SPI interfaces
-
-#
-# CAN USB interfaces
-#
-CONFIG_CAN_8DEV_USB=n
-CONFIG_CAN_EMS_USB=n
-CONFIG_CAN_ESD_USB2=n
-CONFIG_CAN_ETAS_ES58X=n
-CONFIG_CAN_GS_USB=n
-CONFIG_CAN_KVASER_USB=n
-CONFIG_CAN_MCBA_USB=n
-CONFIG_CAN_PEAK_USB=n
-CONFIG_CAN_UCAN=n
-# end of CAN USB interfaces
-
-CONFIG_CAN_DEBUG_DEVICES=n
-# end of CAN Device Drivers
+CONFIG_HAMRADIO=y
+
+#
+# Packet Radio protocols
+#
+CONFIG_AX25=m
+CONFIG_AX25_DAMA_SLAVE=y
+CONFIG_NETROM=m
+CONFIG_ROSE=m
+
+#
+# AX.25 network device drivers
+#
+CONFIG_MKISS=m
+CONFIG_6PACK=m
+CONFIG_BPQETHER=m
+CONFIG_BAYCOM_SER_FDX=m
+CONFIG_BAYCOM_SER_HDX=m
+CONFIG_YAM=m
+# end of AX.25 network device drivers
+# CONFIG_CAN is not set
CONFIG_BT=m
CONFIG_BT_BREDR=y
-CONFIG_BT_RFCOMM=n
-CONFIG_BT_BNEP=n
+# CONFIG_BT_RFCOMM is not set
+# CONFIG_BT_BNEP is not set
CONFIG_BT_HIDP=m
-CONFIG_BT_HS=n
-CONFIG_BT_LE=n
-CONFIG_BT_LEDS=n
-CONFIG_BT_MSFTEXT=n
-CONFIG_BT_AOSPEXT=n
-CONFIG_BT_DEBUGFS=n
-CONFIG_BT_FEATURE_DEBUG=n
+# CONFIG_BT_HS is not set
+# CONFIG_BT_LE is not set
+# CONFIG_BT_LEDS is not set
+# CONFIG_BT_MSFTEXT is not set
+# CONFIG_BT_AOSPEXT is not set
+# CONFIG_BT_DEBUGFS is not set
+# CONFIG_BT_FEATURE_DEBUG is not set
#
# Bluetooth device drivers
@@ -1428,113 +1590,117 @@ CONFIG_BT_BCM=m
CONFIG_BT_RTL=m
CONFIG_BT_QCA=m
CONFIG_BT_HCIBTUSB=m
-CONFIG_BT_HCIBTUSB_AUTOSUSPEND=n
+# CONFIG_BT_HCIBTUSB_AUTOSUSPEND is not set
+CONFIG_BT_HCIBTUSB_POLL_SYNC=y
CONFIG_BT_HCIBTUSB_BCM=y
-CONFIG_BT_HCIBTUSB_MTK=n
+# CONFIG_BT_HCIBTUSB_MTK is not set
CONFIG_BT_HCIBTUSB_RTL=y
-CONFIG_BT_HCIBTSDIO=n
+# CONFIG_BT_HCIBTSDIO is not set
CONFIG_BT_HCIUART=m
CONFIG_BT_HCIUART_SERDEV=y
CONFIG_BT_HCIUART_H4=y
-CONFIG_BT_HCIUART_NOKIA=n
-CONFIG_BT_HCIUART_BCSP=n
-CONFIG_BT_HCIUART_ATH3K=n
+# CONFIG_BT_HCIUART_NOKIA is not set
+# CONFIG_BT_HCIUART_BCSP is not set
+# CONFIG_BT_HCIUART_ATH3K is not set
CONFIG_BT_HCIUART_LL=y
-CONFIG_BT_HCIUART_3WIRE=n
-CONFIG_BT_HCIUART_INTEL=n
+# CONFIG_BT_HCIUART_3WIRE is not set
+# CONFIG_BT_HCIUART_INTEL is not set
CONFIG_BT_HCIUART_BCM=y
-CONFIG_BT_HCIUART_RTL=n
+# CONFIG_BT_HCIUART_RTL is not set
CONFIG_BT_HCIUART_QCA=y
-CONFIG_BT_HCIUART_AG6XX=n
-CONFIG_BT_HCIUART_MRVL=n
-CONFIG_BT_HCIBCM203X=n
-CONFIG_BT_HCIBPA10X=n
-CONFIG_BT_HCIBFUSB=n
-CONFIG_BT_HCIVHCI=n
-CONFIG_BT_MRVL=n
-CONFIG_BT_ATH3K=n
-CONFIG_BT_MTKSDIO=n
-CONFIG_BT_MTKUART=n
-CONFIG_BT_VIRTIO=n
+# CONFIG_BT_HCIUART_AG6XX is not set
+# CONFIG_BT_HCIUART_MRVL is not set
+# CONFIG_BT_HCIBCM203X is not set
+CONFIG_BT_HCIBCM4377=m
+# CONFIG_BT_HCIBPA10X is not set
+# CONFIG_BT_HCIBFUSB is not set
+# CONFIG_BT_HCIVHCI is not set
+# CONFIG_BT_MRVL is not set
+# CONFIG_BT_ATH3K is not set
+# CONFIG_BT_MTKSDIO is not set
+# CONFIG_BT_MTKUART is not set
+# CONFIG_BT_VIRTIO is not set
+# CONFIG_BT_NXPUART is not set
# end of Bluetooth device drivers
-CONFIG_AF_RXRPC=n
+# CONFIG_AF_RXRPC is not set
CONFIG_AF_KCM=m
CONFIG_STREAM_PARSER=y
-CONFIG_MCTP=n
+# CONFIG_MCTP is not set
+CONFIG_FIB_RULES=y
CONFIG_WIRELESS=y
CONFIG_WIRELESS_EXT=y
CONFIG_WEXT_CORE=y
CONFIG_WEXT_PROC=y
CONFIG_WEXT_PRIV=y
CONFIG_CFG80211=m
-CONFIG_NL80211_TESTMODE=n
-CONFIG_CFG80211_DEVELOPER_WARNINGS=n
+# CONFIG_NL80211_TESTMODE is not set
+# CONFIG_CFG80211_DEVELOPER_WARNINGS is not set
CONFIG_CFG80211_REQUIRE_SIGNED_REGDB=y
CONFIG_CFG80211_USE_KERNEL_REGDB_KEYS=y
CONFIG_CFG80211_DEFAULT_PS=y
-CONFIG_CFG80211_DEBUGFS=n
+# CONFIG_CFG80211_DEBUGFS is not set
CONFIG_CFG80211_CRDA_SUPPORT=y
CONFIG_CFG80211_WEXT=y
CONFIG_LIB80211=m
-CONFIG_LIB80211_CRYPT_WEP=m
-CONFIG_LIB80211_CRYPT_CCMP=m
-CONFIG_LIB80211_DEBUG=n
+# CONFIG_LIB80211_DEBUG is not set
CONFIG_MAC80211=m
CONFIG_MAC80211_HAS_RC=y
CONFIG_MAC80211_RC_MINSTREL=y
CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y
CONFIG_MAC80211_RC_DEFAULT="minstrel_ht"
-CONFIG_MAC80211_MESH=n
+# CONFIG_MAC80211_MESH is not set
CONFIG_MAC80211_LEDS=y
-CONFIG_MAC80211_DEBUGFS=n
-CONFIG_MAC80211_MESSAGE_TRACING=n
-CONFIG_MAC80211_DEBUG_MENU=n
+# CONFIG_MAC80211_DEBUGFS is not set
+# CONFIG_MAC80211_MESSAGE_TRACING is not set
+# CONFIG_MAC80211_DEBUG_MENU is not set
CONFIG_MAC80211_STA_HASH_MAX_SIZE=0
CONFIG_RFKILL=m
CONFIG_RFKILL_LEDS=y
CONFIG_RFKILL_INPUT=y
CONFIG_RFKILL_GPIO=m
CONFIG_NET_9P=m
-CONFIG_NET_9P_FD=n
+CONFIG_NET_9P_FD=m
CONFIG_NET_9P_VIRTIO=m
-CONFIG_NET_9P_DEBUG=n
-CONFIG_CAIF=n
-CONFIG_CEPH_LIB=n
+# CONFIG_NET_9P_DEBUG is not set
+# CONFIG_CAIF is not set
+CONFIG_CEPH_LIB=m
+# CONFIG_CEPH_LIB_PRETTYDEBUG is not set
+# CONFIG_CEPH_LIB_USE_DNS_RESOLVER is not set
CONFIG_NFC=m
-CONFIG_NFC_DIGITAL=n
+# CONFIG_NFC_DIGITAL is not set
CONFIG_NFC_NCI=m
-CONFIG_NFC_NCI_SPI=n
-CONFIG_NFC_NCI_UART=n
-CONFIG_NFC_HCI=n
+# CONFIG_NFC_NCI_SPI is not set
+# CONFIG_NFC_NCI_UART is not set
+# CONFIG_NFC_HCI is not set
#
# Near Field Communication (NFC) devices
#
-CONFIG_NFC_VIRTUAL_NCI=n
-CONFIG_NFC_FDP=n
-CONFIG_NFC_PN533_USB=n
-CONFIG_NFC_PN533_I2C=n
-CONFIG_NFC_PN532_UART=n
-CONFIG_NFC_MRVL_USB=n
-CONFIG_NFC_ST_NCI_I2C=n
-CONFIG_NFC_ST_NCI_SPI=n
-CONFIG_NFC_NXP_NCI=n
+# CONFIG_NFC_VIRTUAL_NCI is not set
+# CONFIG_NFC_FDP is not set
+# CONFIG_NFC_PN533_USB is not set
+# CONFIG_NFC_PN533_I2C is not set
+# CONFIG_NFC_PN532_UART is not set
+# CONFIG_NFC_MRVL_USB is not set
+# CONFIG_NFC_ST_NCI_I2C is not set
+# CONFIG_NFC_ST_NCI_SPI is not set
+# CONFIG_NFC_NXP_NCI is not set
CONFIG_NFC_S3FWRN5=m
CONFIG_NFC_S3FWRN5_I2C=m
-CONFIG_NFC_S3FWRN82_UART=n
+# CONFIG_NFC_S3FWRN82_UART is not set
# end of Near Field Communication (NFC) devices
-CONFIG_PSAMPLE=m
-CONFIG_NET_IFE=n
-CONFIG_LWTUNNEL=n
+# CONFIG_PSAMPLE is not set
+CONFIG_NET_IFE=m
+CONFIG_LWTUNNEL=y
+CONFIG_LWTUNNEL_BPF=y
CONFIG_DST_CACHE=y
CONFIG_GRO_CELLS=y
CONFIG_NET_SELFTESTS=y
CONFIG_NET_SOCK_MSG=y
-CONFIG_NET_DEVLINK=y
CONFIG_PAGE_POOL=y
-CONFIG_PAGE_POOL_STATS=n
+CONFIG_PAGE_POOL_STATS=y
CONFIG_FAILOVER=y
CONFIG_ETHTOOL_NETLINK=y
@@ -1548,75 +1714,72 @@ CONFIG_PCI_DOMAINS=y
CONFIG_PCI_DOMAINS_GENERIC=y
CONFIG_PCI_SYSCALL=y
CONFIG_PCIEPORTBUS=y
-CONFIG_HOTPLUG_PCI_PCIE=n
-CONFIG_PCIEAER=n
+# CONFIG_HOTPLUG_PCI_PCIE is not set
+# CONFIG_PCIEAER is not set
CONFIG_PCIEASPM=y
CONFIG_PCIEASPM_DEFAULT=y
-CONFIG_PCIEASPM_POWERSAVE=n
-CONFIG_PCIEASPM_POWER_SUPERSAVE=n
-CONFIG_PCIEASPM_PERFORMANCE=n
+# CONFIG_PCIEASPM_POWERSAVE is not set
+# CONFIG_PCIEASPM_POWER_SUPERSAVE is not set
+# CONFIG_PCIEASPM_PERFORMANCE is not set
CONFIG_PCIE_PME=y
-CONFIG_PCIE_PTM=n
+# CONFIG_PCIE_PTM is not set
CONFIG_PCI_MSI=y
-CONFIG_PCI_MSI_IRQ_DOMAIN=y
CONFIG_PCI_QUIRKS=y
-CONFIG_PCI_REALLOC_ENABLE_AUTO=n
-CONFIG_PCI_STUB=n
-CONFIG_PCI_PF_STUB=n
+# CONFIG_PCI_REALLOC_ENABLE_AUTO is not set
+# CONFIG_PCI_STUB is not set
+# CONFIG_PCI_PF_STUB is not set
CONFIG_PCI_ATS=y
CONFIG_PCI_ECAM=y
CONFIG_PCI_IOV=y
-CONFIG_PCI_PRI=n
+# CONFIG_PCI_PRI is not set
CONFIG_PCI_PASID=y
CONFIG_PCI_LABEL=y
+# CONFIG_PCI_DYNAMIC_OF_NODES is not set
CONFIG_VGA_ARB=y
CONFIG_VGA_ARB_MAX_GPUS=4
CONFIG_HOTPLUG_PCI=y
-CONFIG_HOTPLUG_PCI_ACPI=y
-CONFIG_HOTPLUG_PCI_ACPI_IBM=n
-CONFIG_HOTPLUG_PCI_CPCI=n
-CONFIG_HOTPLUG_PCI_SHPC=n
+# CONFIG_HOTPLUG_PCI_CPCI is not set
+# CONFIG_HOTPLUG_PCI_SHPC is not set
#
# PCI controller drivers
#
-CONFIG_PCI_FTPCI100=n
-CONFIG_PCI_HOST_COMMON=y
-CONFIG_PCI_HOST_GENERIC=y
-CONFIG_PCIE_XILINX=n
-CONFIG_PCI_XGENE=n
-CONFIG_PCIE_ALTERA=n
-CONFIG_PCI_HOST_THUNDER_PEM=n
-CONFIG_PCI_HOST_THUNDER_ECAM=n
-CONFIG_PCIE_MICROCHIP_HOST=n
-CONFIG_PCIE_HISI_ERR=n
+# CONFIG_PCIE_ALTERA is not set
CONFIG_PCIE_APPLE_MSI_DOORBELL_ADDR=0xfffff000
CONFIG_PCIE_APPLE=y
+# CONFIG_PCI_HOST_THUNDER_PEM is not set
+# CONFIG_PCI_HOST_THUNDER_ECAM is not set
+# CONFIG_PCI_FTPCI100 is not set
+CONFIG_PCI_HOST_COMMON=y
+CONFIG_PCI_HOST_GENERIC=y
+# CONFIG_PCIE_MICROCHIP_HOST is not set
+# CONFIG_PCI_XGENE is not set
+# CONFIG_PCIE_XILINX is not set
#
-# DesignWare PCI Core Support
+# Cadence-based PCIe controllers
#
-CONFIG_PCIE_DW_PLAT_HOST=n
-CONFIG_PCIE_DW_PLAT_EP=n
-CONFIG_PCI_HISI=n
-CONFIG_PCIE_KIRIN=n
-CONFIG_PCI_MESON=n
-CONFIG_PCIE_AL=n
-# end of DesignWare PCI Core Support
+# CONFIG_PCIE_CADENCE_PLAT_HOST is not set
+# CONFIG_PCIE_CADENCE_PLAT_EP is not set
+# CONFIG_PCI_J721E_HOST is not set
+# CONFIG_PCI_J721E_EP is not set
+# end of Cadence-based PCIe controllers
#
-# Mobiveil PCIe Core Support
+# DesignWare-based PCIe controllers
#
-# end of Mobiveil PCIe Core Support
+# CONFIG_PCIE_AL is not set
+# CONFIG_PCI_MESON is not set
+# CONFIG_PCI_HISI is not set
+# CONFIG_PCIE_KIRIN is not set
+# CONFIG_PCIE_DW_PLAT_HOST is not set
+# CONFIG_PCIE_DW_PLAT_EP is not set
+# end of DesignWare-based PCIe controllers
#
-# Cadence PCIe controllers support
+# Mobiveil-based PCIe controllers
#
-CONFIG_PCIE_CADENCE_PLAT_HOST=n
-CONFIG_PCIE_CADENCE_PLAT_EP=n
-CONFIG_PCI_J721E_HOST=n
-CONFIG_PCI_J721E_EP=n
-# end of Cadence PCIe controllers support
+# end of Mobiveil-based PCIe controllers
# end of PCI controller drivers
#
@@ -1625,18 +1788,18 @@ CONFIG_PCI_J721E_EP=n
CONFIG_PCI_ENDPOINT=y
CONFIG_PCI_ENDPOINT_CONFIGFS=y
CONFIG_PCI_EPF_TEST=m
-CONFIG_PCI_EPF_NTB=n
+# CONFIG_PCI_EPF_NTB is not set
# end of PCI Endpoint
#
# PCI switch controller drivers
#
-CONFIG_PCI_SW_SWITCHTEC=n
+# CONFIG_PCI_SW_SWITCHTEC is not set
# end of PCI switch controller drivers
-CONFIG_CXL_BUS=n
-CONFIG_PCCARD=n
-CONFIG_RAPIDIO=n
+# CONFIG_CXL_BUS is not set
+# CONFIG_PCCARD is not set
+# CONFIG_RAPIDIO is not set
#
# Generic Driver Options
@@ -1645,7 +1808,7 @@ CONFIG_UEVENT_HELPER=y
CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
CONFIG_DEVTMPFS=y
CONFIG_DEVTMPFS_MOUNT=y
-CONFIG_DEVTMPFS_SAFE=n
+# CONFIG_DEVTMPFS_SAFE is not set
CONFIG_STANDALONE=y
CONFIG_PREVENT_FIRMWARE_BUILD=y
@@ -1653,16 +1816,17 @@ CONFIG_PREVENT_FIRMWARE_BUILD=y
# Firmware loader
#
CONFIG_FW_LOADER=y
-CONFIG_FW_LOADER_PAGED_BUF=y
CONFIG_EXTRA_FIRMWARE=""
-CONFIG_FW_LOADER_USER_HELPER=y
-CONFIG_FW_LOADER_USER_HELPER_FALLBACK=y
-CONFIG_FW_LOADER_COMPRESS=n
+# CONFIG_FW_LOADER_USER_HELPER is not set
+# CONFIG_FW_LOADER_COMPRESS is not set
CONFIG_FW_CACHE=y
+# CONFIG_FW_UPLOAD is not set
# end of Firmware loader
+CONFIG_WANT_DEV_COREDUMP=y
CONFIG_ALLOW_DEV_COREDUMP=y
-CONFIG_TEST_ASYNC_DRIVER_PROBE=n
+CONFIG_DEV_COREDUMP=y
+# CONFIG_TEST_ASYNC_DRIVER_PROBE is not set
CONFIG_GENERIC_CPU_AUTOPROBE=y
CONFIG_GENERIC_CPU_VULNERABILITIES=y
CONFIG_SOC_BUS=y
@@ -1672,20 +1836,28 @@ CONFIG_REGMAP_SPI=y
CONFIG_REGMAP_SPMI=y
CONFIG_REGMAP_MMIO=y
CONFIG_DMA_SHARED_BUFFER=y
-CONFIG_DMA_FENCE_TRACE=n
+# CONFIG_DMA_FENCE_TRACE is not set
CONFIG_GENERIC_ARCH_TOPOLOGY=y
+# CONFIG_FW_DEVLINK_SYNC_STATE_TIMEOUT is not set
# end of Generic Driver Options
#
# Bus devices
#
-CONFIG_BRCMSTB_GISB_ARB=n
-CONFIG_MOXTET=n
-CONFIG_VEXPRESS_CONFIG=n
-CONFIG_MHI_BUS=n
-CONFIG_MHI_BUS_EP=n
+# CONFIG_BRCMSTB_GISB_ARB is not set
+# CONFIG_MOXTET is not set
+# CONFIG_VEXPRESS_CONFIG is not set
+CONFIG_MHI_BUS=m
+# CONFIG_MHI_BUS_DEBUG is not set
+# CONFIG_MHI_BUS_PCI_GENERIC is not set
+# CONFIG_MHI_BUS_EP is not set
# end of Bus devices
+#
+# Cache Drivers
+#
+# end of Cache Drivers
+
CONFIG_CONNECTOR=m
#
@@ -1696,51 +1868,46 @@ CONFIG_CONNECTOR=m
# ARM System Control and Management Interface Protocol
#
CONFIG_ARM_SCMI_PROTOCOL=y
+# CONFIG_ARM_SCMI_RAW_MODE_SUPPORT is not set
CONFIG_ARM_SCMI_HAVE_TRANSPORT=y
CONFIG_ARM_SCMI_HAVE_SHMEM=y
-CONFIG_ARM_SCMI_TRANSPORT_MAILBOX=y
CONFIG_ARM_SCMI_TRANSPORT_SMC=y
-CONFIG_ARM_SCMI_TRANSPORT_SMC_ATOMIC_ENABLE=n
-CONFIG_ARM_SCMI_TRANSPORT_VIRTIO=n
+# CONFIG_ARM_SCMI_TRANSPORT_SMC_ATOMIC_ENABLE is not set
+# CONFIG_ARM_SCMI_TRANSPORT_VIRTIO is not set
CONFIG_ARM_SCMI_POWER_DOMAIN=y
+# CONFIG_ARM_SCMI_POWER_CONTROL is not set
# end of ARM System Control and Management Interface Protocol
-CONFIG_ARM_SCPI_PROTOCOL=y
-CONFIG_ARM_SCPI_POWER_DOMAIN=y
-CONFIG_ARM_SDE_INTERFACE=n
CONFIG_DMIID=y
-CONFIG_DMI_SYSFS=n
-CONFIG_ISCSI_IBFT=n
-CONFIG_FW_CFG_SYSFS=n
-CONFIG_SYSFB=y
-CONFIG_SYSFB_SIMPLEFB=n
-CONFIG_ARM_FFA_TRANSPORT=n
-CONFIG_GOOGLE_FIRMWARE=n
+# CONFIG_DMI_SYSFS is not set
+# CONFIG_FW_CFG_SYSFS is not set
+# CONFIG_SYSFB_SIMPLEFB is not set
+# CONFIG_ARM_FFA_TRANSPORT is not set
+# CONFIG_GOOGLE_FIRMWARE is not set
#
# EFI (Extensible Firmware Interface) Support
#
CONFIG_EFI_ESRT=y
CONFIG_EFI_VARS_PSTORE=y
-CONFIG_EFI_VARS_PSTORE_DEFAULT_DISABLE=n
+# CONFIG_EFI_VARS_PSTORE_DEFAULT_DISABLE is not set
CONFIG_EFI_PARAMS_FROM_FDT=y
CONFIG_EFI_RUNTIME_WRAPPERS=y
CONFIG_EFI_GENERIC_STUB=y
+# CONFIG_EFI_ZBOOT is not set
CONFIG_EFI_ARMSTUB_DTB_LOADER=y
-CONFIG_EFI_GENERIC_STUB_INITRD_CMDLINE_LOADER=n
-CONFIG_EFI_BOOTLOADER_CONTROL=n
+# CONFIG_EFI_BOOTLOADER_CONTROL is not set
CONFIG_EFI_CAPSULE_LOADER=y
-CONFIG_EFI_TEST=n
-CONFIG_RESET_ATTACK_MITIGATION=n
-CONFIG_EFI_DISABLE_PCI_DMA=n
+# CONFIG_EFI_TEST is not set
+# CONFIG_RESET_ATTACK_MITIGATION is not set
+# CONFIG_EFI_DISABLE_PCI_DMA is not set
+CONFIG_EFI_EARLYCON=y
+# CONFIG_EFI_DISABLE_RUNTIME is not set
+# CONFIG_EFI_COCO_SECRET is not set
# end of EFI (Extensible Firmware Interface) Support
-CONFIG_UEFI_CPER=y
-CONFIG_UEFI_CPER_ARM=y
-CONFIG_EFI_EARLYCON=y
-CONFIG_EFI_CUSTOM_SSDT_OVERLAYS=y
CONFIG_ARM_PSCI_FW=y
-CONFIG_ARM_PSCI_CHECKER=n
+# CONFIG_ARM_PSCI_CHECKER is not set
CONFIG_HAVE_ARM_SMCCC=y
CONFIG_HAVE_ARM_SMCCC_DISCOVERY=y
CONFIG_ARM_SMCCC_SOC_ID=y
@@ -1751,474 +1918,458 @@ CONFIG_ARM_SMCCC_SOC_ID=y
# end of Tegra firmware driver
# end of Firmware Drivers
-CONFIG_GNSS=n
-CONFIG_MTD=n
+# CONFIG_GNSS is not set
+# CONFIG_MTD is not set
CONFIG_DTC=y
CONFIG_OF=y
-CONFIG_OF_UNITTEST=n
+# CONFIG_OF_UNITTEST is not set
CONFIG_OF_FLATTREE=y
CONFIG_OF_EARLY_FLATTREE=y
CONFIG_OF_KOBJ=y
CONFIG_OF_ADDRESS=y
CONFIG_OF_IRQ=y
CONFIG_OF_RESERVED_MEM=y
-CONFIG_OF_OVERLAY=n
-CONFIG_PARPORT=n
-CONFIG_PNP=y
-CONFIG_PNP_DEBUG_MESSAGES=y
-
-#
-# Protocols
-#
-CONFIG_PNPACPI=y
+# CONFIG_OF_OVERLAY is not set
+# CONFIG_PARPORT is not set
CONFIG_BLK_DEV=y
-CONFIG_BLK_DEV_NULL_BLK=n
-CONFIG_BLK_DEV_PCIESSD_MTIP32XX=n
-CONFIG_ZRAM=n
+# CONFIG_BLK_DEV_NULL_BLK is not set
+CONFIG_CDROM=m
+# CONFIG_BLK_DEV_PCIESSD_MTIP32XX is not set
+# CONFIG_ZRAM is not set
CONFIG_BLK_DEV_LOOP=y
CONFIG_BLK_DEV_LOOP_MIN_COUNT=8
-CONFIG_BLK_DEV_DRBD=n
+# CONFIG_BLK_DEV_DRBD is not set
CONFIG_BLK_DEV_NBD=m
-CONFIG_BLK_DEV_SX8=n
-CONFIG_BLK_DEV_RAM=n
-CONFIG_CDROM_PKTCDVD=n
-CONFIG_ATA_OVER_ETH=n
-CONFIG_VIRTIO_BLK=y
-CONFIG_BLK_DEV_RBD=n
+# CONFIG_BLK_DEV_RAM is not set
+# CONFIG_CDROM_PKTCDVD is not set
+# CONFIG_ATA_OVER_ETH is not set
+CONFIG_VIRTIO_BLK=m
+# CONFIG_BLK_DEV_RBD is not set
+# CONFIG_BLK_DEV_UBLK is not set
#
# NVME Support
#
CONFIG_NVME_CORE=y
CONFIG_BLK_DEV_NVME=m
-CONFIG_NVME_MULTIPATH=n
-CONFIG_NVME_VERBOSE_ERRORS=n
-CONFIG_NVME_FC=n
-CONFIG_NVME_TCP=n
+# CONFIG_NVME_MULTIPATH is not set
+# CONFIG_NVME_VERBOSE_ERRORS is not set
+# CONFIG_NVME_FC is not set
+# CONFIG_NVME_TCP is not set
+# CONFIG_NVME_AUTH is not set
CONFIG_NVME_APPLE=y
-CONFIG_NVME_TARGET=n
+# CONFIG_NVME_TARGET is not set
# end of NVME Support
#
# Misc devices
#
-CONFIG_AD525X_DPOT=n
-CONFIG_DUMMY_IRQ=n
-CONFIG_PHANTOM=n
-CONFIG_TIFM_CORE=n
-CONFIG_ICS932S401=n
-CONFIG_ENCLOSURE_SERVICES=n
-CONFIG_HI6421V600_IRQ=n
-CONFIG_HP_ILO=n
-CONFIG_APDS9802ALS=n
-CONFIG_ISL29003=n
-CONFIG_ISL29020=n
-CONFIG_SENSORS_TSL2550=n
-CONFIG_SENSORS_BH1770=n
-CONFIG_SENSORS_APDS990X=n
-CONFIG_HMC6352=n
-CONFIG_DS1682=n
-CONFIG_LATTICE_ECP3_CONFIG=n
+# CONFIG_AD525X_DPOT is not set
+# CONFIG_DUMMY_IRQ is not set
+# CONFIG_PHANTOM is not set
+# CONFIG_TIFM_CORE is not set
+# CONFIG_ICS932S401 is not set
+# CONFIG_ENCLOSURE_SERVICES is not set
+# CONFIG_HI6421V600_IRQ is not set
+# CONFIG_HP_ILO is not set
+# CONFIG_APDS9802ALS is not set
+# CONFIG_ISL29003 is not set
+# CONFIG_ISL29020 is not set
+# CONFIG_SENSORS_TSL2550 is not set
+# CONFIG_SENSORS_BH1770 is not set
+# CONFIG_SENSORS_APDS990X is not set
+# CONFIG_HMC6352 is not set
+# CONFIG_DS1682 is not set
+# CONFIG_LATTICE_ECP3_CONFIG is not set
CONFIG_SRAM=y
-CONFIG_DW_XDATA_PCIE=n
+# CONFIG_DW_XDATA_PCIE is not set
CONFIG_PCI_ENDPOINT_TEST=m
-CONFIG_XILINX_SDFEC=n
-CONFIG_HISI_HIKEY_USB=n
-CONFIG_OPEN_DICE=n
-CONFIG_C2PORT=n
+# CONFIG_XILINX_SDFEC is not set
+# CONFIG_HISI_HIKEY_USB is not set
+# CONFIG_OPEN_DICE is not set
+# CONFIG_VCPU_STALL_DETECTOR is not set
+# CONFIG_C2PORT is not set
#
# EEPROM support
#
CONFIG_EEPROM_AT24=m
-CONFIG_EEPROM_AT25=n
-CONFIG_EEPROM_LEGACY=n
-CONFIG_EEPROM_MAX6875=n
+# CONFIG_EEPROM_AT25 is not set
+# CONFIG_EEPROM_LEGACY is not set
+# CONFIG_EEPROM_MAX6875 is not set
CONFIG_EEPROM_93CX6=m
-CONFIG_EEPROM_93XX46=n
-CONFIG_EEPROM_IDT_89HPESX=n
-CONFIG_EEPROM_EE1004=n
+# CONFIG_EEPROM_93XX46 is not set
+# CONFIG_EEPROM_IDT_89HPESX is not set
+# CONFIG_EEPROM_EE1004 is not set
# end of EEPROM support
-CONFIG_CB710_CORE=n
+# CONFIG_CB710_CORE is not set
#
# Texas Instruments shared transport line discipline
#
-CONFIG_TI_ST=n
+# CONFIG_TI_ST is not set
# end of Texas Instruments shared transport line discipline
-CONFIG_SENSORS_LIS3_I2C=n
-CONFIG_ALTERA_STAPL=n
-CONFIG_GENWQE=n
-CONFIG_ECHO=n
-CONFIG_BCM_VK=n
-CONFIG_MISC_ALCOR_PCI=n
-CONFIG_MISC_RTSX_PCI=n
-CONFIG_MISC_RTSX_USB=n
-CONFIG_HABANA_AI=n
-CONFIG_UACCE=n
-CONFIG_PVPANIC=n
+# CONFIG_SENSORS_LIS3_SPI is not set
+# CONFIG_SENSORS_LIS3_I2C is not set
+# CONFIG_ALTERA_STAPL is not set
+# CONFIG_VMWARE_VMCI is not set
+# CONFIG_GENWQE is not set
+# CONFIG_ECHO is not set
+# CONFIG_BCM_VK is not set
+# CONFIG_MISC_ALCOR_PCI is not set
+# CONFIG_MISC_RTSX_PCI is not set
+# CONFIG_MISC_RTSX_USB is not set
+# CONFIG_UACCE is not set
+# CONFIG_PVPANIC is not set
+# CONFIG_GP_PCI1XXXX is not set
# end of Misc devices
#
# SCSI device support
#
CONFIG_SCSI_MOD=y
-CONFIG_RAID_ATTRS=n
+# CONFIG_RAID_ATTRS is not set
CONFIG_SCSI_COMMON=y
CONFIG_SCSI=y
CONFIG_SCSI_DMA=y
-CONFIG_SCSI_PROC_FS=n
+# CONFIG_SCSI_PROC_FS is not set
#
# SCSI support type (disk, tape, CD-ROM)
#
CONFIG_BLK_DEV_SD=y
-CONFIG_CHR_DEV_ST=n
-CONFIG_BLK_DEV_SR=n
-CONFIG_CHR_DEV_SG=n
+# CONFIG_CHR_DEV_ST is not set
+CONFIG_BLK_DEV_SR=m
+CONFIG_CHR_DEV_SG=m
CONFIG_BLK_DEV_BSG=y
-CONFIG_CHR_DEV_SCH=n
-CONFIG_SCSI_CONSTANTS=n
-CONFIG_SCSI_LOGGING=n
-CONFIG_SCSI_SCAN_ASYNC=n
+# CONFIG_CHR_DEV_SCH is not set
+# CONFIG_SCSI_CONSTANTS is not set
+# CONFIG_SCSI_LOGGING is not set
+# CONFIG_SCSI_SCAN_ASYNC is not set
#
# SCSI Transports
#
-CONFIG_SCSI_SPI_ATTRS=n
-CONFIG_SCSI_FC_ATTRS=n
-CONFIG_SCSI_ISCSI_ATTRS=n
-CONFIG_SCSI_SAS_ATTRS=n
-CONFIG_SCSI_SAS_LIBSAS=n
-CONFIG_SCSI_SRP_ATTRS=n
+# CONFIG_SCSI_SPI_ATTRS is not set
+# CONFIG_SCSI_FC_ATTRS is not set
+# CONFIG_SCSI_ISCSI_ATTRS is not set
+# CONFIG_SCSI_SAS_ATTRS is not set
+# CONFIG_SCSI_SAS_LIBSAS is not set
+# CONFIG_SCSI_SRP_ATTRS is not set
# end of SCSI Transports
CONFIG_SCSI_LOWLEVEL=y
-CONFIG_ISCSI_TCP=n
-CONFIG_ISCSI_BOOT_SYSFS=n
-CONFIG_SCSI_CXGB3_ISCSI=n
-CONFIG_SCSI_CXGB4_ISCSI=n
-CONFIG_SCSI_BNX2_ISCSI=n
-CONFIG_BE2ISCSI=n
-CONFIG_BLK_DEV_3W_XXXX_RAID=n
-CONFIG_SCSI_HPSA=n
-CONFIG_SCSI_3W_9XXX=n
-CONFIG_SCSI_3W_SAS=n
-CONFIG_SCSI_ACARD=n
-CONFIG_SCSI_AACRAID=n
-CONFIG_SCSI_AIC7XXX=n
-CONFIG_SCSI_AIC79XX=n
-CONFIG_SCSI_AIC94XX=n
-CONFIG_SCSI_MVSAS=n
-CONFIG_SCSI_MVUMI=n
-CONFIG_SCSI_ADVANSYS=n
-CONFIG_SCSI_ARCMSR=n
-CONFIG_SCSI_ESAS2R=n
-CONFIG_MEGARAID_NEWGEN=n
-CONFIG_MEGARAID_LEGACY=n
-CONFIG_MEGARAID_SAS=n
-CONFIG_SCSI_MPT3SAS=n
-CONFIG_SCSI_MPT2SAS=n
-CONFIG_SCSI_MPI3MR=n
-CONFIG_SCSI_SMARTPQI=n
-CONFIG_SCSI_UFSHCD=n
-CONFIG_SCSI_HPTIOP=n
-CONFIG_SCSI_MYRB=n
-CONFIG_SCSI_MYRS=n
-CONFIG_SCSI_SNIC=n
-CONFIG_SCSI_DMX3191D=n
-CONFIG_SCSI_FDOMAIN_PCI=n
-CONFIG_SCSI_IPS=n
-CONFIG_SCSI_INITIO=n
-CONFIG_SCSI_INIA100=n
-CONFIG_SCSI_STEX=n
-CONFIG_SCSI_SYM53C8XX_2=n
-CONFIG_SCSI_QLOGIC_1280=n
-CONFIG_SCSI_QLA_ISCSI=n
-CONFIG_SCSI_DC395x=n
-CONFIG_SCSI_AM53C974=n
-CONFIG_SCSI_WD719X=n
-CONFIG_SCSI_DEBUG=n
-CONFIG_SCSI_PMCRAID=n
-CONFIG_SCSI_PM8001=n
-CONFIG_SCSI_VIRTIO=n
-CONFIG_SCSI_DH=n
+# CONFIG_ISCSI_TCP is not set
+# CONFIG_ISCSI_BOOT_SYSFS is not set
+# CONFIG_SCSI_CXGB3_ISCSI is not set
+# CONFIG_SCSI_CXGB4_ISCSI is not set
+# CONFIG_SCSI_BNX2_ISCSI is not set
+# CONFIG_BE2ISCSI is not set
+# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
+# CONFIG_SCSI_HPSA is not set
+# CONFIG_SCSI_3W_9XXX is not set
+# CONFIG_SCSI_3W_SAS is not set
+# CONFIG_SCSI_ACARD is not set
+# CONFIG_SCSI_AACRAID is not set
+# CONFIG_SCSI_AIC7XXX is not set
+# CONFIG_SCSI_AIC79XX is not set
+# CONFIG_SCSI_AIC94XX is not set
+# CONFIG_SCSI_MVSAS is not set
+# CONFIG_SCSI_MVUMI is not set
+# CONFIG_SCSI_ADVANSYS is not set
+# CONFIG_SCSI_ARCMSR is not set
+# CONFIG_SCSI_ESAS2R is not set
+# CONFIG_MEGARAID_NEWGEN is not set
+# CONFIG_MEGARAID_LEGACY is not set
+# CONFIG_MEGARAID_SAS is not set
+# CONFIG_SCSI_MPT3SAS is not set
+# CONFIG_SCSI_MPT2SAS is not set
+# CONFIG_SCSI_MPI3MR is not set
+# CONFIG_SCSI_SMARTPQI is not set
+# CONFIG_SCSI_HPTIOP is not set
+# CONFIG_SCSI_BUSLOGIC is not set
+# CONFIG_SCSI_MYRB is not set
+# CONFIG_SCSI_MYRS is not set
+# CONFIG_SCSI_SNIC is not set
+# CONFIG_SCSI_DMX3191D is not set
+# CONFIG_SCSI_FDOMAIN_PCI is not set
+# CONFIG_SCSI_IPS is not set
+# CONFIG_SCSI_INITIO is not set
+# CONFIG_SCSI_INIA100 is not set
+# CONFIG_SCSI_STEX is not set
+# CONFIG_SCSI_SYM53C8XX_2 is not set
+# CONFIG_SCSI_IPR is not set
+# CONFIG_SCSI_QLOGIC_1280 is not set
+# CONFIG_SCSI_QLA_ISCSI is not set
+# CONFIG_SCSI_DC395x is not set
+# CONFIG_SCSI_AM53C974 is not set
+# CONFIG_SCSI_WD719X is not set
+# CONFIG_SCSI_DEBUG is not set
+# CONFIG_SCSI_PMCRAID is not set
+# CONFIG_SCSI_PM8001 is not set
+# CONFIG_SCSI_VIRTIO is not set
+# CONFIG_SCSI_DH is not set
# end of SCSI device support
-CONFIG_HAVE_PATA_PLATFORM=y
-CONFIG_ATA=n
+# CONFIG_ATA is not set
CONFIG_MD=y
CONFIG_BLK_DEV_MD=m
-CONFIG_MD_LINEAR=n
-CONFIG_MD_RAID0=n
-CONFIG_MD_RAID1=n
-CONFIG_MD_RAID10=n
-CONFIG_MD_RAID456=n
-CONFIG_MD_MULTIPATH=n
-CONFIG_MD_FAULTY=n
-CONFIG_MD_CLUSTER=n
-CONFIG_BCACHE=n
+# CONFIG_MD_BITMAP_FILE is not set
+# CONFIG_MD_LINEAR is not set
+# CONFIG_MD_RAID0 is not set
+# CONFIG_MD_RAID1 is not set
+# CONFIG_MD_RAID10 is not set
+# CONFIG_MD_RAID456 is not set
+# CONFIG_MD_MULTIPATH is not set
+# CONFIG_MD_FAULTY is not set
+# CONFIG_MD_CLUSTER is not set
+# CONFIG_BCACHE is not set
CONFIG_BLK_DEV_DM_BUILTIN=y
CONFIG_BLK_DEV_DM=m
-CONFIG_DM_DEBUG=n
-CONFIG_DM_UNSTRIPED=n
+# CONFIG_DM_DEBUG is not set
+# CONFIG_DM_UNSTRIPED is not set
CONFIG_DM_CRYPT=m
-CONFIG_DM_SNAPSHOT=n
-CONFIG_DM_THIN_PROVISIONING=n
-CONFIG_DM_CACHE=n
-CONFIG_DM_WRITECACHE=n
-CONFIG_DM_EBS=n
-CONFIG_DM_ERA=n
-CONFIG_DM_CLONE=n
+# CONFIG_DM_SNAPSHOT is not set
+# CONFIG_DM_THIN_PROVISIONING is not set
+# CONFIG_DM_CACHE is not set
+# CONFIG_DM_WRITECACHE is not set
+# CONFIG_DM_EBS is not set
+# CONFIG_DM_ERA is not set
+# CONFIG_DM_CLONE is not set
CONFIG_DM_MIRROR=m
-CONFIG_DM_LOG_USERSPACE=n
-CONFIG_DM_RAID=n
+# CONFIG_DM_LOG_USERSPACE is not set
+# CONFIG_DM_RAID is not set
CONFIG_DM_ZERO=m
-CONFIG_DM_MULTIPATH=n
-CONFIG_DM_DELAY=n
-CONFIG_DM_DUST=n
-CONFIG_DM_UEVENT=n
-CONFIG_DM_FLAKEY=n
-CONFIG_DM_VERITY=n
-CONFIG_DM_SWITCH=n
-CONFIG_DM_LOG_WRITES=n
-CONFIG_DM_INTEGRITY=n
-CONFIG_TARGET_CORE=n
-CONFIG_FUSION=n
+# CONFIG_DM_MULTIPATH is not set
+# CONFIG_DM_DELAY is not set
+# CONFIG_DM_DUST is not set
+# CONFIG_DM_UEVENT is not set
+# CONFIG_DM_FLAKEY is not set
+# CONFIG_DM_VERITY is not set
+# CONFIG_DM_SWITCH is not set
+# CONFIG_DM_LOG_WRITES is not set
+# CONFIG_DM_INTEGRITY is not set
+# CONFIG_TARGET_CORE is not set
+# CONFIG_FUSION is not set
#
# IEEE 1394 (FireWire) support
#
-CONFIG_FIREWIRE=n
-CONFIG_FIREWIRE_NOSY=n
+# CONFIG_FIREWIRE is not set
+# CONFIG_FIREWIRE_NOSY is not set
# end of IEEE 1394 (FireWire) support
CONFIG_NETDEVICES=y
-CONFIG_MII=y
+CONFIG_MII=m
CONFIG_NET_CORE=y
CONFIG_BONDING=m
CONFIG_DUMMY=m
CONFIG_WIREGUARD=m
-CONFIG_WIREGUARD_DEBUG=n
+# CONFIG_WIREGUARD_DEBUG is not set
CONFIG_EQUALIZER=m
-CONFIG_NET_FC=n
+# CONFIG_NET_FC is not set
CONFIG_IFB=m
-CONFIG_NET_TEAM=n
+# CONFIG_NET_TEAM is not set
CONFIG_MACVLAN=m
CONFIG_MACVTAP=m
CONFIG_IPVLAN_L3S=y
CONFIG_IPVLAN=m
CONFIG_IPVTAP=m
-CONFIG_VXLAN=n
-CONFIG_GENEVE=n
+# CONFIG_VXLAN is not set
+# CONFIG_GENEVE is not set
CONFIG_BAREUDP=m
CONFIG_GTP=m
-CONFIG_AMT=n
+# CONFIG_AMT is not set
CONFIG_MACSEC=m
-CONFIG_NETCONSOLE=n
+# CONFIG_NETCONSOLE is not set
CONFIG_TUN=m
CONFIG_TAP=m
-CONFIG_TUN_VNET_CROSS_LE=n
+# CONFIG_TUN_VNET_CROSS_LE is not set
CONFIG_VETH=m
-CONFIG_VIRTIO_NET=y
+CONFIG_VIRTIO_NET=m
CONFIG_NLMON=m
-CONFIG_ARCNET=n
-
-#
-# Distributed Switch Architecture drivers
-#
-CONFIG_B53=n
-CONFIG_NET_DSA_BCM_SF2=n
-CONFIG_NET_DSA_LOOP=n
-CONFIG_NET_DSA_LANTIQ_GSWIP=n
-CONFIG_NET_DSA_MT7530=n
-CONFIG_NET_DSA_MV88E6060=n
-CONFIG_NET_DSA_MICROCHIP_KSZ9477=n
-CONFIG_NET_DSA_MICROCHIP_KSZ8795=n
-CONFIG_NET_DSA_MV88E6XXX=n
-CONFIG_NET_DSA_AR9331=n
-CONFIG_NET_DSA_SJA1105=n
-CONFIG_NET_DSA_XRS700X_I2C=n
-CONFIG_NET_DSA_XRS700X_MDIO=n
-CONFIG_NET_DSA_QCA8K=n
-CONFIG_NET_DSA_REALTEK=n
-CONFIG_NET_DSA_SMSC_LAN9303_I2C=n
-CONFIG_NET_DSA_SMSC_LAN9303_MDIO=n
-CONFIG_NET_DSA_VITESSE_VSC73XX_SPI=n
-CONFIG_NET_DSA_VITESSE_VSC73XX_PLATFORM=n
-# end of Distributed Switch Architecture drivers
-
+CONFIG_NET_VRF=m
+# CONFIG_MHI_NET is not set
+# CONFIG_ARCNET is not set
CONFIG_ETHERNET=y
-CONFIG_NET_VENDOR_3COM=n
-CONFIG_NET_VENDOR_ADAPTEC=n
-CONFIG_NET_VENDOR_AGERE=n
-CONFIG_NET_VENDOR_ALACRITECH=n
-CONFIG_NET_VENDOR_ALTEON=n
-CONFIG_ALTERA_TSE=n
-CONFIG_NET_VENDOR_AMAZON=n
-CONFIG_NET_VENDOR_AMD=n
+# CONFIG_NET_VENDOR_3COM is not set
+# CONFIG_NET_VENDOR_ADAPTEC is not set
+# CONFIG_NET_VENDOR_AGERE is not set
+# CONFIG_NET_VENDOR_ALACRITECH is not set
+# CONFIG_NET_VENDOR_ALTEON is not set
+# CONFIG_ALTERA_TSE is not set
+# CONFIG_NET_VENDOR_AMAZON is not set
+# CONFIG_NET_VENDOR_AMD is not set
CONFIG_NET_VENDOR_AQUANTIA=y
CONFIG_AQTION=m
-CONFIG_NET_VENDOR_ARC=n
-CONFIG_NET_VENDOR_ASIX=n
-CONFIG_NET_VENDOR_ATHEROS=n
+# CONFIG_NET_VENDOR_ARC is not set
+# CONFIG_NET_VENDOR_ASIX is not set
+# CONFIG_NET_VENDOR_ATHEROS is not set
CONFIG_NET_VENDOR_BROADCOM=y
-CONFIG_B44=n
-CONFIG_BCMGENET=n
-CONFIG_BNX2=n
-CONFIG_CNIC=n
+# CONFIG_B44 is not set
+# CONFIG_BCMGENET is not set
+# CONFIG_BNX2 is not set
+# CONFIG_CNIC is not set
CONFIG_TIGON3=m
CONFIG_TIGON3_HWMON=y
-CONFIG_BNX2X=n
-CONFIG_SYSTEMPORT=n
-CONFIG_BNXT=n
-CONFIG_NET_VENDOR_BROCADE=n
-CONFIG_NET_VENDOR_CADENCE=n
-CONFIG_NET_VENDOR_CAVIUM=n
-CONFIG_NET_VENDOR_CHELSIO=n
-CONFIG_NET_VENDOR_CISCO=n
-CONFIG_NET_VENDOR_CORTINA=n
-CONFIG_NET_VENDOR_DAVICOM=n
-CONFIG_DNET=n
-CONFIG_NET_VENDOR_DEC=n
-CONFIG_NET_VENDOR_DLINK=n
-CONFIG_NET_VENDOR_EMULEX=n
-CONFIG_NET_VENDOR_ENGLEDER=n
-CONFIG_NET_VENDOR_EZCHIP=n
-CONFIG_NET_VENDOR_FUNGIBLE=n
-CONFIG_NET_VENDOR_GOOGLE=n
-CONFIG_NET_VENDOR_HISILICON=n
-CONFIG_NET_VENDOR_HUAWEI=n
-CONFIG_NET_VENDOR_INTEL=n
-CONFIG_NET_VENDOR_MICROSOFT=n
-CONFIG_JME=n
-CONFIG_NET_VENDOR_LITEX=n
-CONFIG_NET_VENDOR_MARVELL=n
-CONFIG_NET_VENDOR_MELLANOX=n
-CONFIG_NET_VENDOR_MICREL=n
-CONFIG_NET_VENDOR_MICROCHIP=n
-CONFIG_NET_VENDOR_MICROSEMI=n
-CONFIG_NET_VENDOR_MYRI=n
-CONFIG_FEALNX=n
-CONFIG_NET_VENDOR_NATSEMI=n
-CONFIG_NET_VENDOR_NETERION=n
-CONFIG_NET_VENDOR_NETRONOME=n
-CONFIG_NET_VENDOR_NI=n
-CONFIG_NET_VENDOR_NVIDIA=n
-CONFIG_NET_VENDOR_OKI=n
-CONFIG_ETHOC=n
-CONFIG_NET_VENDOR_PACKET_ENGINES=n
-CONFIG_NET_VENDOR_PENSANDO=n
-CONFIG_NET_VENDOR_QLOGIC=n
-CONFIG_NET_VENDOR_QUALCOMM=n
-CONFIG_NET_VENDOR_RDC=n
-CONFIG_NET_VENDOR_REALTEK=n
-CONFIG_NET_VENDOR_RENESAS=n
-CONFIG_NET_VENDOR_ROCKER=n
-CONFIG_NET_VENDOR_SAMSUNG=n
-CONFIG_NET_VENDOR_SEEQ=n
-CONFIG_NET_VENDOR_SOLARFLARE=n
-CONFIG_NET_VENDOR_SILAN=n
-CONFIG_NET_VENDOR_SIS=n
-CONFIG_NET_VENDOR_SMSC=n
-CONFIG_NET_VENDOR_SOCIONEXT=n
-CONFIG_NET_VENDOR_STMICRO=n
-CONFIG_NET_VENDOR_SUN=n
-CONFIG_NET_VENDOR_SYNOPSYS=n
-CONFIG_NET_VENDOR_TEHUTI=n
-CONFIG_NET_VENDOR_TI=n
-CONFIG_NET_VENDOR_VERTEXCOM=n
-CONFIG_NET_VENDOR_VIA=n
-CONFIG_NET_VENDOR_WIZNET=n
-CONFIG_NET_VENDOR_XILINX=n
-CONFIG_FDDI=n
-CONFIG_HIPPI=n
-CONFIG_NET_SB1000=n
+# CONFIG_BNX2X is not set
+# CONFIG_SYSTEMPORT is not set
+# CONFIG_BNXT is not set
+# CONFIG_NET_VENDOR_CADENCE is not set
+# CONFIG_NET_VENDOR_CAVIUM is not set
+# CONFIG_NET_VENDOR_CHELSIO is not set
+# CONFIG_NET_VENDOR_CISCO is not set
+# CONFIG_NET_VENDOR_CORTINA is not set
+# CONFIG_NET_VENDOR_DAVICOM is not set
+# CONFIG_DNET is not set
+# CONFIG_NET_VENDOR_DEC is not set
+# CONFIG_NET_VENDOR_DLINK is not set
+# CONFIG_NET_VENDOR_EMULEX is not set
+# CONFIG_NET_VENDOR_ENGLEDER is not set
+# CONFIG_NET_VENDOR_EZCHIP is not set
+# CONFIG_NET_VENDOR_FUNGIBLE is not set
+# CONFIG_NET_VENDOR_GOOGLE is not set
+# CONFIG_NET_VENDOR_HISILICON is not set
+# CONFIG_NET_VENDOR_HUAWEI is not set
+# CONFIG_NET_VENDOR_INTEL is not set
+# CONFIG_JME is not set
+# CONFIG_NET_VENDOR_ADI is not set
+# CONFIG_NET_VENDOR_LITEX is not set
+# CONFIG_NET_VENDOR_MARVELL is not set
+# CONFIG_NET_VENDOR_MELLANOX is not set
+# CONFIG_NET_VENDOR_MICREL is not set
+# CONFIG_NET_VENDOR_MICROCHIP is not set
+# CONFIG_NET_VENDOR_MICROSEMI is not set
+# CONFIG_NET_VENDOR_MICROSOFT is not set
+# CONFIG_NET_VENDOR_MYRI is not set
+# CONFIG_FEALNX is not set
+# CONFIG_NET_VENDOR_NI is not set
+# CONFIG_NET_VENDOR_NATSEMI is not set
+# CONFIG_NET_VENDOR_NETERION is not set
+# CONFIG_NET_VENDOR_NETRONOME is not set
+# CONFIG_NET_VENDOR_NVIDIA is not set
+# CONFIG_NET_VENDOR_OKI is not set
+# CONFIG_ETHOC is not set
+# CONFIG_NET_VENDOR_PACKET_ENGINES is not set
+# CONFIG_NET_VENDOR_PENSANDO is not set
+# CONFIG_NET_VENDOR_QLOGIC is not set
+# CONFIG_NET_VENDOR_BROCADE is not set
+# CONFIG_NET_VENDOR_QUALCOMM is not set
+# CONFIG_NET_VENDOR_RDC is not set
+# CONFIG_NET_VENDOR_REALTEK is not set
+# CONFIG_NET_VENDOR_RENESAS is not set
+# CONFIG_NET_VENDOR_ROCKER is not set
+# CONFIG_NET_VENDOR_SAMSUNG is not set
+# CONFIG_NET_VENDOR_SEEQ is not set
+# CONFIG_NET_VENDOR_SILAN is not set
+# CONFIG_NET_VENDOR_SIS is not set
+# CONFIG_NET_VENDOR_SOLARFLARE is not set
+# CONFIG_NET_VENDOR_SMSC is not set
+# CONFIG_NET_VENDOR_SOCIONEXT is not set
+# CONFIG_NET_VENDOR_STMICRO is not set
+# CONFIG_NET_VENDOR_SUN is not set
+# CONFIG_NET_VENDOR_SYNOPSYS is not set
+# CONFIG_NET_VENDOR_TEHUTI is not set
+# CONFIG_NET_VENDOR_TI is not set
+# CONFIG_NET_VENDOR_VERTEXCOM is not set
+# CONFIG_NET_VENDOR_VIA is not set
+# CONFIG_NET_VENDOR_WANGXUN is not set
+# CONFIG_NET_VENDOR_WIZNET is not set
+# CONFIG_NET_VENDOR_XILINX is not set
+# CONFIG_FDDI is not set
+# CONFIG_HIPPI is not set
CONFIG_PHYLINK=m
CONFIG_PHYLIB=y
CONFIG_SWPHY=y
-CONFIG_LED_TRIGGER_PHY=n
+# CONFIG_LED_TRIGGER_PHY is not set
+CONFIG_PHYLIB_LEDS=y
CONFIG_FIXED_PHY=y
-CONFIG_SFP=n
+# CONFIG_SFP is not set
#
# MII PHY device drivers
#
-CONFIG_AMD_PHY=n
-CONFIG_ADIN_PHY=n
-CONFIG_AQUANTIA_PHY=n
+# CONFIG_AMD_PHY is not set
+# CONFIG_ADIN_PHY is not set
+# CONFIG_ADIN1100_PHY is not set
+CONFIG_AQUANTIA_PHY=m
CONFIG_AX88796B_PHY=m
-CONFIG_BROADCOM_PHY=n
-CONFIG_BCM54140_PHY=n
-CONFIG_BCM7XXX_PHY=n
-CONFIG_BCM84881_PHY=n
-CONFIG_BCM87XX_PHY=n
-CONFIG_CICADA_PHY=n
-CONFIG_CORTINA_PHY=n
-CONFIG_DAVICOM_PHY=n
-CONFIG_ICPLUS_PHY=n
-CONFIG_LXT_PHY=n
-CONFIG_INTEL_XWAY_PHY=n
-CONFIG_LSI_ET1011C_PHY=n
-CONFIG_MARVELL_PHY=n
-CONFIG_MARVELL_10G_PHY=n
-CONFIG_MARVELL_88X2222_PHY=n
-CONFIG_MAXLINEAR_GPHY=n
-CONFIG_MEDIATEK_GE_PHY=n
-CONFIG_MICREL_PHY=n
+# CONFIG_BROADCOM_PHY is not set
+# CONFIG_BCM54140_PHY is not set
+# CONFIG_BCM7XXX_PHY is not set
+# CONFIG_BCM84881_PHY is not set
+# CONFIG_BCM87XX_PHY is not set
+# CONFIG_CICADA_PHY is not set
+# CONFIG_CORTINA_PHY is not set
+# CONFIG_DAVICOM_PHY is not set
+# CONFIG_ICPLUS_PHY is not set
+# CONFIG_LXT_PHY is not set
+# CONFIG_INTEL_XWAY_PHY is not set
+# CONFIG_LSI_ET1011C_PHY is not set
+# CONFIG_MARVELL_PHY is not set
+# CONFIG_MARVELL_10G_PHY is not set
+# CONFIG_MARVELL_88Q2XXX_PHY is not set
+# CONFIG_MARVELL_88X2222_PHY is not set
+# CONFIG_MAXLINEAR_GPHY is not set
+# CONFIG_MEDIATEK_GE_PHY is not set
+# CONFIG_MICREL_PHY is not set
+# CONFIG_MICROCHIP_T1S_PHY is not set
CONFIG_MICROCHIP_PHY=m
-CONFIG_MICROCHIP_T1_PHY=n
-CONFIG_MICROSEMI_PHY=n
-CONFIG_MOTORCOMM_PHY=n
-CONFIG_NATIONAL_PHY=n
-CONFIG_NXP_C45_TJA11XX_PHY=n
-CONFIG_NXP_TJA11XX_PHY=n
-CONFIG_QSEMI_PHY=n
+# CONFIG_MICROCHIP_T1_PHY is not set
+# CONFIG_MICROSEMI_PHY is not set
+# CONFIG_MOTORCOMM_PHY is not set
+# CONFIG_NATIONAL_PHY is not set
+# CONFIG_NXP_CBTX_PHY is not set
+# CONFIG_NXP_C45_TJA11XX_PHY is not set
+# CONFIG_NXP_TJA11XX_PHY is not set
+# CONFIG_NCN26000_PHY is not set
+# CONFIG_AT803X_PHY is not set
+# CONFIG_QSEMI_PHY is not set
CONFIG_REALTEK_PHY=m
-CONFIG_RENESAS_PHY=n
-CONFIG_ROCKCHIP_PHY=n
+# CONFIG_RENESAS_PHY is not set
+# CONFIG_ROCKCHIP_PHY is not set
CONFIG_SMSC_PHY=m
-CONFIG_STE10XP=n
-CONFIG_TERANETICS_PHY=n
-CONFIG_DP83822_PHY=n
-CONFIG_DP83TC811_PHY=n
-CONFIG_DP83848_PHY=n
-CONFIG_DP83867_PHY=n
-CONFIG_DP83869_PHY=n
-CONFIG_VITESSE_PHY=n
-CONFIG_XILINX_GMII2RGMII=n
-CONFIG_MICREL_KS8995MA=n
+# CONFIG_STE10XP is not set
+# CONFIG_TERANETICS_PHY is not set
+# CONFIG_DP83822_PHY is not set
+# CONFIG_DP83TC811_PHY is not set
+# CONFIG_DP83848_PHY is not set
+# CONFIG_DP83867_PHY is not set
+# CONFIG_DP83869_PHY is not set
+# CONFIG_DP83TD510_PHY is not set
+# CONFIG_VITESSE_PHY is not set
+# CONFIG_XILINX_GMII2RGMII is not set
+# CONFIG_MICREL_KS8995MA is not set
+# CONFIG_PSE_CONTROLLER is not set
CONFIG_MDIO_DEVICE=y
CONFIG_MDIO_BUS=y
CONFIG_FWNODE_MDIO=y
CONFIG_OF_MDIO=y
-CONFIG_ACPI_MDIO=y
CONFIG_MDIO_DEVRES=y
CONFIG_MDIO_BITBANG=m
-CONFIG_MDIO_BCM_UNIMAC=n
-CONFIG_MDIO_GPIO=n
-CONFIG_MDIO_HISI_FEMAC=n
-CONFIG_MDIO_MVUSB=n
-CONFIG_MDIO_MSCC_MIIM=n
-CONFIG_MDIO_OCTEON=n
-CONFIG_MDIO_IPQ4019=n
-CONFIG_MDIO_IPQ8064=n
-CONFIG_MDIO_THUNDER=n
+# CONFIG_MDIO_BCM_UNIMAC is not set
+# CONFIG_MDIO_GPIO is not set
+# CONFIG_MDIO_HISI_FEMAC is not set
+# CONFIG_MDIO_MVUSB is not set
+# CONFIG_MDIO_MSCC_MIIM is not set
+# CONFIG_MDIO_OCTEON is not set
+# CONFIG_MDIO_IPQ4019 is not set
+# CONFIG_MDIO_IPQ8064 is not set
+# CONFIG_MDIO_THUNDER is not set
#
# MDIO Multiplexers
#
CONFIG_MDIO_BUS_MUX=m
CONFIG_MDIO_BUS_MUX_GPIO=m
-CONFIG_MDIO_BUS_MUX_MULTIPLEXER=n
+# CONFIG_MDIO_BUS_MUX_MULTIPLEXER is not set
CONFIG_MDIO_BUS_MUX_MMIOREG=m
#
# PCS device drivers
#
-CONFIG_PCS_XPCS=n
# end of PCS device drivers
CONFIG_PPP=m
@@ -2228,127 +2379,191 @@ CONFIG_PPP_FILTER=y
CONFIG_PPP_MPPE=m
CONFIG_PPP_MULTILINK=y
CONFIG_PPPOE=m
+# CONFIG_PPPOE_HASH_BITS_1 is not set
+# CONFIG_PPPOE_HASH_BITS_2 is not set
+CONFIG_PPPOE_HASH_BITS_4=y
+# CONFIG_PPPOE_HASH_BITS_8 is not set
+CONFIG_PPPOE_HASH_BITS=4
+CONFIG_PPTP=m
CONFIG_PPP_ASYNC=m
CONFIG_PPP_SYNC_TTY=m
-CONFIG_SLIP=n
+# CONFIG_SLIP is not set
CONFIG_SLHC=m
-CONFIG_USB_NET_DRIVERS=y
-CONFIG_USB_CATC=n
-CONFIG_USB_KAWETH=n
-CONFIG_USB_PEGASUS=n
+CONFIG_USB_NET_DRIVERS=m
+# CONFIG_USB_CATC is not set
+# CONFIG_USB_KAWETH is not set
+# CONFIG_USB_PEGASUS is not set
CONFIG_USB_RTL8150=m
CONFIG_USB_RTL8152=m
CONFIG_USB_LAN78XX=m
-CONFIG_USB_USBNET=y
+CONFIG_USB_USBNET=m
CONFIG_USB_NET_AX8817X=m
-CONFIG_USB_NET_AX88179_178A=y
+CONFIG_USB_NET_AX88179_178A=m
CONFIG_USB_NET_CDCETHER=m
-CONFIG_USB_NET_CDC_EEM=n
+# CONFIG_USB_NET_CDC_EEM is not set
CONFIG_USB_NET_CDC_NCM=m
-CONFIG_USB_NET_HUAWEI_CDC_NCM=n
-CONFIG_USB_NET_CDC_MBIM=n
+# CONFIG_USB_NET_HUAWEI_CDC_NCM is not set
+# CONFIG_USB_NET_CDC_MBIM is not set
CONFIG_USB_NET_DM9601=m
-CONFIG_USB_NET_SR9700=n
+# CONFIG_USB_NET_SR9700 is not set
CONFIG_USB_NET_SR9800=m
CONFIG_USB_NET_SMSC75XX=m
CONFIG_USB_NET_SMSC95XX=m
-CONFIG_USB_NET_GL620A=n
+# CONFIG_USB_NET_GL620A is not set
CONFIG_USB_NET_NET1080=m
CONFIG_USB_NET_PLUSB=m
CONFIG_USB_NET_MCS7830=m
-CONFIG_USB_NET_RNDIS_HOST=n
+CONFIG_USB_NET_RNDIS_HOST=m
CONFIG_USB_NET_CDC_SUBSET_ENABLE=m
CONFIG_USB_NET_CDC_SUBSET=m
-CONFIG_USB_ALI_M5632=n
-CONFIG_USB_AN2720=n
+# CONFIG_USB_ALI_M5632 is not set
+# CONFIG_USB_AN2720 is not set
CONFIG_USB_BELKIN=y
CONFIG_USB_ARMLINUX=y
-CONFIG_USB_EPSON2888=n
-CONFIG_USB_KC2190=n
-CONFIG_USB_NET_ZAURUS=n
-CONFIG_USB_NET_CX82310_ETH=n
-CONFIG_USB_NET_KALMIA=n
-CONFIG_USB_NET_QMI_WWAN=n
-CONFIG_USB_HSO=n
-CONFIG_USB_NET_INT51X1=n
+# CONFIG_USB_EPSON2888 is not set
+# CONFIG_USB_KC2190 is not set
+# CONFIG_USB_NET_ZAURUS is not set
+# CONFIG_USB_NET_CX82310_ETH is not set
+# CONFIG_USB_NET_KALMIA is not set
+# CONFIG_USB_NET_QMI_WWAN is not set
+# CONFIG_USB_HSO is not set
+# CONFIG_USB_NET_INT51X1 is not set
CONFIG_USB_IPHETH=m
-CONFIG_USB_SIERRA_NET=n
-CONFIG_USB_VL600=n
-CONFIG_USB_NET_CH9200=n
-CONFIG_USB_NET_AQC111=n
-CONFIG_USB_RTL8153_ECM=n
+# CONFIG_USB_SIERRA_NET is not set
+# CONFIG_USB_VL600 is not set
+# CONFIG_USB_NET_CH9200 is not set
+# CONFIG_USB_NET_AQC111 is not set
+CONFIG_USB_RTL8153_ECM=m
CONFIG_WLAN=y
-CONFIG_WLAN_VENDOR_ADMTEK=n
-CONFIG_WLAN_VENDOR_ATH=n
-CONFIG_WLAN_VENDOR_ATMEL=n
+# CONFIG_WLAN_VENDOR_ADMTEK is not set
+CONFIG_ATH_COMMON=m
+CONFIG_WLAN_VENDOR_ATH=y
+# CONFIG_ATH_DEBUG is not set
+CONFIG_ATH5K=m
+# CONFIG_ATH5K_DEBUG is not set
+CONFIG_ATH5K_PCI=y
+CONFIG_ATH9K_HW=m
+CONFIG_ATH9K_COMMON=m
+CONFIG_ATH9K_BTCOEX_SUPPORT=y
+CONFIG_ATH9K=m
+# CONFIG_ATH9K_PCI is not set
+CONFIG_ATH9K_AHB=y
+# CONFIG_ATH9K_DEBUGFS is not set
+# CONFIG_ATH9K_DYNACK is not set
+# CONFIG_ATH9K_WOW is not set
+CONFIG_ATH9K_RFKILL=y
+# CONFIG_ATH9K_CHANNEL_CONTEXT is not set
+CONFIG_ATH9K_PCOEM=y
+CONFIG_ATH9K_HTC=m
+# CONFIG_ATH9K_HTC_DEBUGFS is not set
+# CONFIG_ATH9K_HWRNG is not set
+CONFIG_CARL9170=m
+CONFIG_CARL9170_LEDS=y
+CONFIG_CARL9170_WPC=y
+CONFIG_CARL9170_HWRNG=y
+CONFIG_ATH6KL=m
+CONFIG_ATH6KL_SDIO=m
+CONFIG_ATH6KL_USB=m
+CONFIG_ATH6KL_DEBUG=y
+CONFIG_AR5523=m
+CONFIG_WIL6210=m
+CONFIG_WIL6210_ISR_COR=y
+CONFIG_WIL6210_DEBUGFS=y
+CONFIG_ATH10K=m
+CONFIG_ATH10K_CE=y
+CONFIG_ATH10K_PCI=m
+# CONFIG_ATH10K_AHB is not set
+# CONFIG_ATH10K_SDIO is not set
+# CONFIG_ATH10K_USB is not set
+# CONFIG_ATH10K_DEBUG is not set
+# CONFIG_ATH10K_DEBUGFS is not set
+CONFIG_WCN36XX=m
+# CONFIG_WCN36XX_DEBUGFS is not set
+CONFIG_ATH11K=m
+CONFIG_ATH11K_PCI=m
+# CONFIG_ATH11K_DEBUG is not set
+# CONFIG_ATH12K is not set
+# CONFIG_WLAN_VENDOR_ATMEL is not set
CONFIG_WLAN_VENDOR_BROADCOM=y
-CONFIG_B43=n
-CONFIG_B43LEGACY=n
+# CONFIG_B43 is not set
+# CONFIG_B43LEGACY is not set
CONFIG_BRCMUTIL=m
-CONFIG_BRCMSMAC=n
+# CONFIG_BRCMSMAC is not set
CONFIG_BRCMFMAC=m
CONFIG_BRCMFMAC_PROTO_BCDC=y
CONFIG_BRCMFMAC_PROTO_MSGBUF=y
-CONFIG_BRCMFMAC_SDIO=n
+# CONFIG_BRCMFMAC_SDIO is not set
CONFIG_BRCMFMAC_USB=y
CONFIG_BRCMFMAC_PCIE=y
-CONFIG_BRCM_TRACING=n
-CONFIG_BRCMDBG=n
-CONFIG_WLAN_VENDOR_CISCO=n
-CONFIG_WLAN_VENDOR_INTEL=n
-CONFIG_WLAN_VENDOR_INTERSIL=n
-CONFIG_WLAN_VENDOR_MARVELL=n
-CONFIG_WLAN_VENDOR_MEDIATEK=n
-CONFIG_WLAN_VENDOR_MICROCHIP=n
-CONFIG_WLAN_VENDOR_RALINK=n
+# CONFIG_BRCM_TRACING is not set
+# CONFIG_BRCMDBG is not set
+# CONFIG_WLAN_VENDOR_CISCO is not set
+# CONFIG_WLAN_VENDOR_INTEL is not set
+# CONFIG_WLAN_VENDOR_INTERSIL is not set
+# CONFIG_WLAN_VENDOR_MARVELL is not set
+# CONFIG_WLAN_VENDOR_MEDIATEK is not set
+# CONFIG_WLAN_VENDOR_MICROCHIP is not set
+# CONFIG_WLAN_VENDOR_PURELIFI is not set
+# CONFIG_WLAN_VENDOR_RALINK is not set
CONFIG_WLAN_VENDOR_REALTEK=y
CONFIG_RTL8180=m
CONFIG_RTL8187=m
CONFIG_RTL8187_LEDS=y
CONFIG_RTL_CARDS=m
-CONFIG_RTL8192CE=n
-CONFIG_RTL8192SE=n
-CONFIG_RTL8192DE=n
-CONFIG_RTL8723AE=n
-CONFIG_RTL8723BE=n
-CONFIG_RTL8188EE=n
-CONFIG_RTL8192EE=n
-CONFIG_RTL8821AE=n
+# CONFIG_RTL8192CE is not set
+# CONFIG_RTL8192SE is not set
+# CONFIG_RTL8192DE is not set
+# CONFIG_RTL8723AE is not set
+# CONFIG_RTL8723BE is not set
+# CONFIG_RTL8188EE is not set
+# CONFIG_RTL8192EE is not set
+# CONFIG_RTL8821AE is not set
CONFIG_RTL8192CU=m
CONFIG_RTLWIFI=m
CONFIG_RTLWIFI_USB=m
-CONFIG_RTLWIFI_DEBUG=n
+# CONFIG_RTLWIFI_DEBUG is not set
CONFIG_RTL8192C_COMMON=m
CONFIG_RTL8XXXU=m
CONFIG_RTL8XXXU_UNTESTED=y
CONFIG_RTW88=m
-CONFIG_RTW88_8822BE=n
-CONFIG_RTW88_8822CE=n
-CONFIG_RTW88_8723DE=n
-CONFIG_RTW88_8821CE=n
+# CONFIG_RTW88_8822BE is not set
+# CONFIG_RTW88_8822BS is not set
+# CONFIG_RTW88_8822BU is not set
+# CONFIG_RTW88_8822CE is not set
+# CONFIG_RTW88_8822CS is not set
+# CONFIG_RTW88_8822CU is not set
+# CONFIG_RTW88_8723DE is not set
+# CONFIG_RTW88_8723DS is not set
+# CONFIG_RTW88_8723DU is not set
+# CONFIG_RTW88_8821CE is not set
+# CONFIG_RTW88_8821CS is not set
+# CONFIG_RTW88_8821CU is not set
CONFIG_RTW89=m
-CONFIG_RTW89_8852AE=n
-CONFIG_WLAN_VENDOR_RSI=n
-CONFIG_WLAN_VENDOR_ST=n
-CONFIG_WLAN_VENDOR_TI=n
-CONFIG_WLAN_VENDOR_ZYDAS=n
-CONFIG_WLAN_VENDOR_QUANTENNA=n
-CONFIG_MAC80211_HWSIM=n
-CONFIG_USB_NET_RNDIS_WLAN=n
-CONFIG_VIRT_WIFI=n
-CONFIG_WAN=n
+# CONFIG_RTW89_8851BE is not set
+# CONFIG_RTW89_8852AE is not set
+# CONFIG_RTW89_8852BE is not set
+# CONFIG_RTW89_8852CE is not set
+# CONFIG_WLAN_VENDOR_RSI is not set
+# CONFIG_WLAN_VENDOR_SILABS is not set
+# CONFIG_WLAN_VENDOR_ST is not set
+# CONFIG_WLAN_VENDOR_TI is not set
+# CONFIG_WLAN_VENDOR_ZYDAS is not set
+# CONFIG_WLAN_VENDOR_QUANTENNA is not set
+# CONFIG_USB_NET_RNDIS_WLAN is not set
+# CONFIG_MAC80211_HWSIM is not set
+# CONFIG_VIRT_WIFI is not set
+# CONFIG_WAN is not set
#
# Wireless WAN
#
-CONFIG_WWAN=n
+# CONFIG_WWAN is not set
# end of Wireless WAN
-CONFIG_VMXNET3=n
-CONFIG_FUJITSU_ES=n
-CONFIG_NETDEVSIM=n
+# CONFIG_VMXNET3 is not set
+# CONFIG_NETDEVSIM is not set
CONFIG_NET_FAILOVER=y
-CONFIG_ISDN=n
+# CONFIG_ISDN is not set
#
# Input device support
@@ -2356,50 +2571,52 @@ CONFIG_ISDN=n
CONFIG_INPUT=y
CONFIG_INPUT_LEDS=y
CONFIG_INPUT_FF_MEMLESS=y
-CONFIG_INPUT_SPARSEKMAP=n
+# CONFIG_INPUT_SPARSEKMAP is not set
CONFIG_INPUT_MATRIXKMAP=m
+CONFIG_INPUT_VIVALDIFMAP=y
#
# Userland interfaces
#
-CONFIG_INPUT_MOUSEDEV=n
-CONFIG_INPUT_JOYDEV=n
+# CONFIG_INPUT_MOUSEDEV is not set
+# CONFIG_INPUT_JOYDEV is not set
CONFIG_INPUT_EVDEV=y
-CONFIG_INPUT_EVBUG=n
+# CONFIG_INPUT_EVBUG is not set
#
# Input Device Drivers
#
CONFIG_INPUT_KEYBOARD=y
-CONFIG_KEYBOARD_ADP5588=n
-CONFIG_KEYBOARD_ADP5589=n
+# CONFIG_KEYBOARD_ADP5588 is not set
+# CONFIG_KEYBOARD_ADP5589 is not set
CONFIG_KEYBOARD_ATKBD=y
-CONFIG_KEYBOARD_QT1050=n
-CONFIG_KEYBOARD_QT1070=n
-CONFIG_KEYBOARD_QT2160=n
-CONFIG_KEYBOARD_DLINK_DIR685=n
-CONFIG_KEYBOARD_LKKBD=n
+# CONFIG_KEYBOARD_QT1050 is not set
+# CONFIG_KEYBOARD_QT1070 is not set
+# CONFIG_KEYBOARD_QT2160 is not set
+# CONFIG_KEYBOARD_DLINK_DIR685 is not set
+# CONFIG_KEYBOARD_LKKBD is not set
CONFIG_KEYBOARD_GPIO=y
-CONFIG_KEYBOARD_GPIO_POLLED=n
-CONFIG_KEYBOARD_TCA6416=n
-CONFIG_KEYBOARD_TCA8418=n
-CONFIG_KEYBOARD_MATRIX=n
-CONFIG_KEYBOARD_LM8323=n
-CONFIG_KEYBOARD_LM8333=n
-CONFIG_KEYBOARD_MAX7359=n
-CONFIG_KEYBOARD_MCS=n
-CONFIG_KEYBOARD_MPR121=n
-CONFIG_KEYBOARD_NEWTON=n
-CONFIG_KEYBOARD_OPENCORES=n
-CONFIG_KEYBOARD_SAMSUNG=n
-CONFIG_KEYBOARD_STOWAWAY=n
-CONFIG_KEYBOARD_SUNKBD=n
-CONFIG_KEYBOARD_OMAP4=n
-CONFIG_KEYBOARD_TM2_TOUCHKEY=n
-CONFIG_KEYBOARD_XTKBD=n
-CONFIG_KEYBOARD_CAP11XX=n
-CONFIG_KEYBOARD_BCM=n
-CONFIG_KEYBOARD_CYPRESS_SF=n
+# CONFIG_KEYBOARD_GPIO_POLLED is not set
+# CONFIG_KEYBOARD_TCA6416 is not set
+# CONFIG_KEYBOARD_TCA8418 is not set
+# CONFIG_KEYBOARD_MATRIX is not set
+# CONFIG_KEYBOARD_LM8323 is not set
+# CONFIG_KEYBOARD_LM8333 is not set
+# CONFIG_KEYBOARD_MAX7359 is not set
+# CONFIG_KEYBOARD_MCS is not set
+# CONFIG_KEYBOARD_MPR121 is not set
+# CONFIG_KEYBOARD_NEWTON is not set
+# CONFIG_KEYBOARD_OPENCORES is not set
+# CONFIG_KEYBOARD_PINEPHONE is not set
+# CONFIG_KEYBOARD_SAMSUNG is not set
+# CONFIG_KEYBOARD_STOWAWAY is not set
+# CONFIG_KEYBOARD_SUNKBD is not set
+# CONFIG_KEYBOARD_OMAP4 is not set
+# CONFIG_KEYBOARD_TM2_TOUCHKEY is not set
+# CONFIG_KEYBOARD_XTKBD is not set
+# CONFIG_KEYBOARD_CAP11XX is not set
+# CONFIG_KEYBOARD_BCM is not set
+# CONFIG_KEYBOARD_CYPRESS_SF is not set
CONFIG_INPUT_MOUSE=y
CONFIG_MOUSE_PS2=y
CONFIG_MOUSE_PS2_ALPS=y
@@ -2409,72 +2626,147 @@ CONFIG_MOUSE_PS2_SYNAPTICS=y
CONFIG_MOUSE_PS2_SYNAPTICS_SMBUS=y
CONFIG_MOUSE_PS2_CYPRESS=y
CONFIG_MOUSE_PS2_TRACKPOINT=y
-CONFIG_MOUSE_PS2_ELANTECH=n
-CONFIG_MOUSE_PS2_SENTELIC=n
-CONFIG_MOUSE_PS2_TOUCHKIT=n
+# CONFIG_MOUSE_PS2_ELANTECH is not set
+# CONFIG_MOUSE_PS2_SENTELIC is not set
+# CONFIG_MOUSE_PS2_TOUCHKIT is not set
CONFIG_MOUSE_PS2_FOCALTECH=y
CONFIG_MOUSE_PS2_SMBUS=y
-CONFIG_MOUSE_SERIAL=n
-CONFIG_MOUSE_APPLETOUCH=n
-CONFIG_MOUSE_BCM5974=n
-CONFIG_MOUSE_CYAPA=n
-CONFIG_MOUSE_ELAN_I2C=n
-CONFIG_MOUSE_VSXXXAA=n
-CONFIG_MOUSE_GPIO=n
-CONFIG_MOUSE_SYNAPTICS_I2C=n
-CONFIG_MOUSE_SYNAPTICS_USB=n
-CONFIG_INPUT_JOYSTICK=n
-CONFIG_INPUT_TABLET=n
-CONFIG_INPUT_TOUCHSCREEN=n
+# CONFIG_MOUSE_SERIAL is not set
+# CONFIG_MOUSE_APPLETOUCH is not set
+# CONFIG_MOUSE_BCM5974 is not set
+# CONFIG_MOUSE_CYAPA is not set
+# CONFIG_MOUSE_ELAN_I2C is not set
+# CONFIG_MOUSE_VSXXXAA is not set
+# CONFIG_MOUSE_GPIO is not set
+# CONFIG_MOUSE_SYNAPTICS_I2C is not set
+# CONFIG_MOUSE_SYNAPTICS_USB is not set
+# CONFIG_INPUT_JOYSTICK is not set
+# CONFIG_INPUT_TABLET is not set
+CONFIG_INPUT_TOUCHSCREEN=y
+# CONFIG_TOUCHSCREEN_ADS7846 is not set
+# CONFIG_TOUCHSCREEN_AD7877 is not set
+# CONFIG_TOUCHSCREEN_AD7879 is not set
+CONFIG_TOUCHSCREEN_APPLE_Z2=m
+# CONFIG_TOUCHSCREEN_AR1021_I2C is not set
+# CONFIG_TOUCHSCREEN_ATMEL_MXT is not set
+# CONFIG_TOUCHSCREEN_AUO_PIXCIR is not set
+# CONFIG_TOUCHSCREEN_BU21013 is not set
+# CONFIG_TOUCHSCREEN_BU21029 is not set
+# CONFIG_TOUCHSCREEN_CHIPONE_ICN8318 is not set
+# CONFIG_TOUCHSCREEN_CY8CTMA140 is not set
+# CONFIG_TOUCHSCREEN_CY8CTMG110 is not set
+# CONFIG_TOUCHSCREEN_CYTTSP_CORE is not set
+# CONFIG_TOUCHSCREEN_CYTTSP4_CORE is not set
+# CONFIG_TOUCHSCREEN_CYTTSP5 is not set
+# CONFIG_TOUCHSCREEN_DYNAPRO is not set
+# CONFIG_TOUCHSCREEN_HAMPSHIRE is not set
+# CONFIG_TOUCHSCREEN_EETI is not set
+# CONFIG_TOUCHSCREEN_EGALAX is not set
+# CONFIG_TOUCHSCREEN_EGALAX_SERIAL is not set
+# CONFIG_TOUCHSCREEN_EXC3000 is not set
+# CONFIG_TOUCHSCREEN_FUJITSU is not set
+# CONFIG_TOUCHSCREEN_GOODIX is not set
+# CONFIG_TOUCHSCREEN_HIDEEP is not set
+# CONFIG_TOUCHSCREEN_HYCON_HY46XX is not set
+# CONFIG_TOUCHSCREEN_HYNITRON_CSTXXX is not set
+# CONFIG_TOUCHSCREEN_ILI210X is not set
+# CONFIG_TOUCHSCREEN_ILITEK is not set
+# CONFIG_TOUCHSCREEN_S6SY761 is not set
+# CONFIG_TOUCHSCREEN_GUNZE is not set
+# CONFIG_TOUCHSCREEN_EKTF2127 is not set
+# CONFIG_TOUCHSCREEN_ELAN is not set
+# CONFIG_TOUCHSCREEN_ELO is not set
+# CONFIG_TOUCHSCREEN_WACOM_W8001 is not set
+# CONFIG_TOUCHSCREEN_WACOM_I2C is not set
+# CONFIG_TOUCHSCREEN_MAX11801 is not set
+# CONFIG_TOUCHSCREEN_MCS5000 is not set
+# CONFIG_TOUCHSCREEN_MMS114 is not set
+# CONFIG_TOUCHSCREEN_MELFAS_MIP4 is not set
+# CONFIG_TOUCHSCREEN_MSG2638 is not set
+# CONFIG_TOUCHSCREEN_MTOUCH is not set
+# CONFIG_TOUCHSCREEN_NOVATEK_NVT_TS is not set
+# CONFIG_TOUCHSCREEN_IMAGIS is not set
+# CONFIG_TOUCHSCREEN_IMX6UL_TSC is not set
+# CONFIG_TOUCHSCREEN_INEXIO is not set
+# CONFIG_TOUCHSCREEN_PENMOUNT is not set
+# CONFIG_TOUCHSCREEN_EDT_FT5X06 is not set
+# CONFIG_TOUCHSCREEN_TOUCHRIGHT is not set
+# CONFIG_TOUCHSCREEN_TOUCHWIN is not set
+# CONFIG_TOUCHSCREEN_PIXCIR is not set
+# CONFIG_TOUCHSCREEN_WDT87XX_I2C is not set
+# CONFIG_TOUCHSCREEN_USB_COMPOSITE is not set
+# CONFIG_TOUCHSCREEN_TOUCHIT213 is not set
+# CONFIG_TOUCHSCREEN_TSC_SERIO is not set
+# CONFIG_TOUCHSCREEN_TSC2004 is not set
+# CONFIG_TOUCHSCREEN_TSC2005 is not set
+# CONFIG_TOUCHSCREEN_TSC2007 is not set
+# CONFIG_TOUCHSCREEN_RM_TS is not set
+# CONFIG_TOUCHSCREEN_SILEAD is not set
+# CONFIG_TOUCHSCREEN_SIS_I2C is not set
+# CONFIG_TOUCHSCREEN_ST1232 is not set
+# CONFIG_TOUCHSCREEN_STMFTS is not set
+# CONFIG_TOUCHSCREEN_SUR40 is not set
+# CONFIG_TOUCHSCREEN_SURFACE3_SPI is not set
+# CONFIG_TOUCHSCREEN_SX8654 is not set
+# CONFIG_TOUCHSCREEN_TPS6507X is not set
+# CONFIG_TOUCHSCREEN_ZET6223 is not set
+# CONFIG_TOUCHSCREEN_ZFORCE is not set
+# CONFIG_TOUCHSCREEN_ROHM_BU21023 is not set
+# CONFIG_TOUCHSCREEN_IQS5XX is not set
+# CONFIG_TOUCHSCREEN_IQS7211 is not set
+# CONFIG_TOUCHSCREEN_ZINITIX is not set
+# CONFIG_TOUCHSCREEN_HIMAX_HX83112B is not set
CONFIG_INPUT_MISC=y
-CONFIG_INPUT_AD714X=n
-CONFIG_INPUT_ATMEL_CAPTOUCH=n
-CONFIG_INPUT_BMA150=n
-CONFIG_INPUT_E3X0_BUTTON=n
-CONFIG_INPUT_MMA8450=n
-CONFIG_INPUT_GPIO_BEEPER=n
-CONFIG_INPUT_GPIO_DECODER=n
-CONFIG_INPUT_GPIO_VIBRA=n
-CONFIG_INPUT_ATI_REMOTE2=n
-CONFIG_INPUT_KEYSPAN_REMOTE=n
-CONFIG_INPUT_KXTJ9=n
-CONFIG_INPUT_POWERMATE=n
-CONFIG_INPUT_YEALINK=n
-CONFIG_INPUT_CM109=n
-CONFIG_INPUT_UINPUT=n
-CONFIG_INPUT_PCF8574=n
-CONFIG_INPUT_PWM_BEEPER=n
-CONFIG_INPUT_PWM_VIBRA=n
-CONFIG_INPUT_GPIO_ROTARY_ENCODER=n
-CONFIG_INPUT_DA7280_HAPTICS=n
-CONFIG_INPUT_ADXL34X=n
-CONFIG_INPUT_IMS_PCU=n
-CONFIG_INPUT_IQS269A=n
-CONFIG_INPUT_IQS626A=n
-CONFIG_INPUT_CMA3000=n
-CONFIG_INPUT_SOC_BUTTON_ARRAY=n
-CONFIG_INPUT_DRV260X_HAPTICS=n
-CONFIG_INPUT_DRV2665_HAPTICS=n
-CONFIG_INPUT_DRV2667_HAPTICS=n
+# CONFIG_INPUT_AD714X is not set
+# CONFIG_INPUT_ATMEL_CAPTOUCH is not set
+# CONFIG_INPUT_BMA150 is not set
+# CONFIG_INPUT_E3X0_BUTTON is not set
+# CONFIG_INPUT_MMA8450 is not set
+# CONFIG_INPUT_GPIO_BEEPER is not set
+# CONFIG_INPUT_GPIO_DECODER is not set
+# CONFIG_INPUT_GPIO_VIBRA is not set
+# CONFIG_INPUT_ATI_REMOTE2 is not set
+# CONFIG_INPUT_KEYSPAN_REMOTE is not set
+# CONFIG_INPUT_KXTJ9 is not set
+# CONFIG_INPUT_POWERMATE is not set
+# CONFIG_INPUT_YEALINK is not set
+# CONFIG_INPUT_CM109 is not set
+# CONFIG_INPUT_REGULATOR_HAPTIC is not set
+CONFIG_INPUT_UINPUT=m
+# CONFIG_INPUT_PCF8574 is not set
+# CONFIG_INPUT_PWM_BEEPER is not set
+# CONFIG_INPUT_PWM_VIBRA is not set
+# CONFIG_INPUT_GPIO_ROTARY_ENCODER is not set
+# CONFIG_INPUT_DA7280_HAPTICS is not set
+# CONFIG_INPUT_ADXL34X is not set
+# CONFIG_INPUT_IBM_PANEL is not set
+# CONFIG_INPUT_IMS_PCU is not set
+# CONFIG_INPUT_IQS269A is not set
+# CONFIG_INPUT_IQS626A is not set
+# CONFIG_INPUT_IQS7222 is not set
+# CONFIG_INPUT_CMA3000 is not set
+# CONFIG_INPUT_DRV260X_HAPTICS is not set
+# CONFIG_INPUT_DRV2665_HAPTICS is not set
+# CONFIG_INPUT_DRV2667_HAPTICS is not set
CONFIG_INPUT_MACSMC_HID=y
-CONFIG_RMI4_CORE=n
+# CONFIG_RMI4_CORE is not set
#
# Hardware I/O ports
#
CONFIG_SERIO=y
-CONFIG_SERIO_SERPORT=n
+# CONFIG_SERIO_SERPORT is not set
CONFIG_SERIO_AMBAKMI=y
-CONFIG_SERIO_PCIPS2=n
+# CONFIG_SERIO_PCIPS2 is not set
CONFIG_SERIO_LIBPS2=y
-CONFIG_SERIO_RAW=n
-CONFIG_SERIO_ALTERA_PS2=n
-CONFIG_SERIO_PS2MULT=n
-CONFIG_SERIO_ARC_PS2=n
-CONFIG_SERIO_APBPS2=n
-CONFIG_SERIO_GPIO_PS2=n
-CONFIG_USERIO=n
-CONFIG_GAMEPORT=n
+# CONFIG_SERIO_RAW is not set
+# CONFIG_SERIO_ALTERA_PS2 is not set
+# CONFIG_SERIO_PS2MULT is not set
+# CONFIG_SERIO_ARC_PS2 is not set
+# CONFIG_SERIO_APBPS2 is not set
+# CONFIG_SERIO_GPIO_PS2 is not set
+# CONFIG_USERIO is not set
+# CONFIG_GAMEPORT is not set
# end of Hardware I/O ports
# end of Input device support
@@ -2489,7 +2781,8 @@ CONFIG_VT_CONSOLE_SLEEP=y
CONFIG_HW_CONSOLE=y
CONFIG_VT_HW_CONSOLE_BINDING=y
CONFIG_UNIX98_PTYS=y
-CONFIG_LEGACY_PTYS=n
+# CONFIG_LEGACY_PTYS is not set
+# CONFIG_LEGACY_TIOCSTI is not set
CONFIG_LDISC_AUTOLOAD=y
#
@@ -2498,96 +2791,91 @@ CONFIG_LDISC_AUTOLOAD=y
CONFIG_SERIAL_EARLYCON=y
CONFIG_SERIAL_8250=y
CONFIG_SERIAL_8250_DEPRECATED_OPTIONS=y
-CONFIG_SERIAL_8250_PNP=y
CONFIG_SERIAL_8250_16550A_VARIANTS=y
-CONFIG_SERIAL_8250_FINTEK=n
+# CONFIG_SERIAL_8250_FINTEK is not set
CONFIG_SERIAL_8250_CONSOLE=y
CONFIG_SERIAL_8250_DMA=y
+CONFIG_SERIAL_8250_PCILIB=y
CONFIG_SERIAL_8250_PCI=y
CONFIG_SERIAL_8250_EXAR=y
CONFIG_SERIAL_8250_NR_UARTS=4
CONFIG_SERIAL_8250_RUNTIME_UARTS=4
CONFIG_SERIAL_8250_EXTENDED=y
-CONFIG_SERIAL_8250_MANY_PORTS=n
-CONFIG_SERIAL_8250_ASPEED_VUART=n
+# CONFIG_SERIAL_8250_MANY_PORTS is not set
+# CONFIG_SERIAL_8250_PCI1XXXX is not set
CONFIG_SERIAL_8250_SHARE_IRQ=y
-CONFIG_SERIAL_8250_DETECT_IRQ=n
-CONFIG_SERIAL_8250_RSA=n
+# CONFIG_SERIAL_8250_DETECT_IRQ is not set
+# CONFIG_SERIAL_8250_RSA is not set
CONFIG_SERIAL_8250_DWLIB=y
CONFIG_SERIAL_8250_FSL=y
CONFIG_SERIAL_8250_DW=y
-CONFIG_SERIAL_8250_RT288X=n
+# CONFIG_SERIAL_8250_RT288X is not set
CONFIG_SERIAL_8250_PERICOM=y
CONFIG_SERIAL_OF_PLATFORM=y
#
# Non-8250 serial port support
#
-CONFIG_SERIAL_AMBA_PL010=n
+# CONFIG_SERIAL_AMBA_PL010 is not set
CONFIG_SERIAL_AMBA_PL011=y
CONFIG_SERIAL_AMBA_PL011_CONSOLE=y
-CONFIG_SERIAL_EARLYCON_ARM_SEMIHOST=n
+# CONFIG_SERIAL_EARLYCON_SEMIHOST is not set
CONFIG_SERIAL_SAMSUNG=y
-CONFIG_SERIAL_SAMSUNG_UARTS_4=y
CONFIG_SERIAL_SAMSUNG_UARTS=4
CONFIG_SERIAL_SAMSUNG_CONSOLE=y
-CONFIG_SERIAL_MAX3100=n
-CONFIG_SERIAL_MAX310X=n
-CONFIG_SERIAL_UARTLITE=n
+# CONFIG_SERIAL_MAX3100 is not set
+# CONFIG_SERIAL_MAX310X is not set
+# CONFIG_SERIAL_UARTLITE is not set
CONFIG_SERIAL_CORE=y
CONFIG_SERIAL_CORE_CONSOLE=y
-CONFIG_SERIAL_JSM=n
-CONFIG_SERIAL_SIFIVE=n
-CONFIG_SERIAL_SCCNXP=n
-CONFIG_SERIAL_SC16IS7XX=n
-CONFIG_SERIAL_BCM63XX=n
-CONFIG_SERIAL_ALTERA_JTAGUART=n
-CONFIG_SERIAL_ALTERA_UART=n
-CONFIG_SERIAL_XILINX_PS_UART=n
-CONFIG_SERIAL_ARC=n
-CONFIG_SERIAL_RP2=n
-CONFIG_SERIAL_FSL_LPUART=n
-CONFIG_SERIAL_FSL_LINFLEXUART=n
-CONFIG_SERIAL_CONEXANT_DIGICOLOR=n
-CONFIG_SERIAL_SPRD=n
-CONFIG_SERIAL_SUNPLUS=n
+# CONFIG_SERIAL_JSM is not set
+# CONFIG_SERIAL_SIFIVE is not set
+# CONFIG_SERIAL_SCCNXP is not set
+# CONFIG_SERIAL_SC16IS7XX is not set
+# CONFIG_SERIAL_ALTERA_JTAGUART is not set
+# CONFIG_SERIAL_ALTERA_UART is not set
+# CONFIG_SERIAL_XILINX_PS_UART is not set
+# CONFIG_SERIAL_ARC is not set
+# CONFIG_SERIAL_RP2 is not set
+# CONFIG_SERIAL_FSL_LPUART is not set
+# CONFIG_SERIAL_FSL_LINFLEXUART is not set
+# CONFIG_SERIAL_CONEXANT_DIGICOLOR is not set
+# CONFIG_SERIAL_SPRD is not set
# end of Serial drivers
CONFIG_SERIAL_MCTRL_GPIO=y
-CONFIG_SERIAL_NONSTANDARD=n
-CONFIG_N_GSM=n
-CONFIG_NOZOMI=n
-CONFIG_NULL_TTY=n
+# CONFIG_SERIAL_NONSTANDARD is not set
+# CONFIG_N_GSM is not set
+# CONFIG_NOZOMI is not set
+# CONFIG_NULL_TTY is not set
CONFIG_HVC_DRIVER=y
-CONFIG_HVC_DCC=n
+# CONFIG_HVC_DCC is not set
CONFIG_SERIAL_DEV_BUS=y
CONFIG_SERIAL_DEV_CTRL_TTYPORT=y
CONFIG_VIRTIO_CONSOLE=y
-CONFIG_IPMI_HANDLER=n
-CONFIG_IPMB_DEVICE_INTERFACE=n
+# CONFIG_IPMI_HANDLER is not set
+# CONFIG_SSIF_IPMI_BMC is not set
+# CONFIG_IPMB_DEVICE_INTERFACE is not set
CONFIG_HW_RANDOM=m
-CONFIG_HW_RANDOM_TIMERIOMEM=n
-CONFIG_HW_RANDOM_BA431=n
-CONFIG_HW_RANDOM_VIRTIO=n
-CONFIG_HW_RANDOM_CCTRNG=n
-CONFIG_HW_RANDOM_XIPHERA=n
+# CONFIG_HW_RANDOM_TIMERIOMEM is not set
+# CONFIG_HW_RANDOM_BA431 is not set
+# CONFIG_HW_RANDOM_VIRTIO is not set
+# CONFIG_HW_RANDOM_CCTRNG is not set
+# CONFIG_HW_RANDOM_XIPHERA is not set
CONFIG_HW_RANDOM_ARM_SMCCC_TRNG=m
CONFIG_HW_RANDOM_CN10K=m
-CONFIG_APPLICOM=n
+# CONFIG_APPLICOM is not set
CONFIG_DEVMEM=y
CONFIG_DEVPORT=y
-CONFIG_TCG_TPM=n
-CONFIG_XILLYBUS=n
-CONFIG_XILLYUSB=n
-CONFIG_RANDOM_TRUST_CPU=n
-CONFIG_RANDOM_TRUST_BOOTLOADER=n
+# CONFIG_TCG_TPM is not set
+# CONFIG_XILLYBUS is not set
+# CONFIG_XILLYUSB is not set
# end of Character devices
#
# I2C support
#
CONFIG_I2C=y
-CONFIG_ACPI_I2C_OPREGION=y
CONFIG_I2C_BOARDINFO=y
CONFIG_I2C_COMPAT=y
CONFIG_I2C_CHARDEV=y
@@ -2596,20 +2884,20 @@ CONFIG_I2C_MUX=y
#
# Multiplexer I2C Chip support
#
-CONFIG_I2C_ARB_GPIO_CHALLENGE=n
-CONFIG_I2C_MUX_GPIO=n
-CONFIG_I2C_MUX_GPMUX=n
-CONFIG_I2C_MUX_LTC4306=n
-CONFIG_I2C_MUX_PCA9541=n
-CONFIG_I2C_MUX_PCA954x=n
-CONFIG_I2C_MUX_PINCTRL=n
-CONFIG_I2C_MUX_REG=n
-CONFIG_I2C_DEMUX_PINCTRL=n
-CONFIG_I2C_MUX_MLXCPLD=n
+# CONFIG_I2C_ARB_GPIO_CHALLENGE is not set
+# CONFIG_I2C_MUX_GPIO is not set
+# CONFIG_I2C_MUX_GPMUX is not set
+# CONFIG_I2C_MUX_LTC4306 is not set
+# CONFIG_I2C_MUX_PCA9541 is not set
+# CONFIG_I2C_MUX_PCA954x is not set
+# CONFIG_I2C_MUX_PINCTRL is not set
+# CONFIG_I2C_MUX_REG is not set
+# CONFIG_I2C_DEMUX_PINCTRL is not set
+# CONFIG_I2C_MUX_MLXCPLD is not set
# end of Multiplexer I2C Chip support
CONFIG_I2C_HELPER_AUTO=y
-CONFIG_I2C_ALGOBIT=y
+CONFIG_I2C_ALGOBIT=m
#
# I2C Hardware Bus support
@@ -2618,75 +2906,70 @@ CONFIG_I2C_ALGOBIT=y
#
# PC SMBus host controller drivers
#
-CONFIG_I2C_ALI1535=n
-CONFIG_I2C_ALI1563=n
-CONFIG_I2C_ALI15X3=n
-CONFIG_I2C_AMD756=n
-CONFIG_I2C_AMD8111=n
-CONFIG_I2C_AMD_MP2=n
-CONFIG_I2C_I801=n
-CONFIG_I2C_ISCH=n
-CONFIG_I2C_PIIX4=n
-CONFIG_I2C_NFORCE2=n
-CONFIG_I2C_NVIDIA_GPU=n
-CONFIG_I2C_SIS5595=n
-CONFIG_I2C_SIS630=n
-CONFIG_I2C_SIS96X=n
-CONFIG_I2C_VIA=n
-CONFIG_I2C_VIAPRO=n
-
-#
-# ACPI drivers
-#
-CONFIG_I2C_SCMI=n
+# CONFIG_I2C_ALI1535 is not set
+# CONFIG_I2C_ALI1563 is not set
+# CONFIG_I2C_ALI15X3 is not set
+# CONFIG_I2C_AMD756 is not set
+# CONFIG_I2C_AMD8111 is not set
+# CONFIG_I2C_I801 is not set
+# CONFIG_I2C_ISCH is not set
+# CONFIG_I2C_PIIX4 is not set
+# CONFIG_I2C_NFORCE2 is not set
+# CONFIG_I2C_NVIDIA_GPU is not set
+# CONFIG_I2C_SIS5595 is not set
+# CONFIG_I2C_SIS630 is not set
+# CONFIG_I2C_SIS96X is not set
+# CONFIG_I2C_VIA is not set
+# CONFIG_I2C_VIAPRO is not set
#
# I2C system bus drivers (mostly embedded / system-on-chip)
#
-CONFIG_I2C_CADENCE=n
-CONFIG_I2C_CBUS_GPIO=n
+# CONFIG_I2C_CADENCE is not set
+# CONFIG_I2C_CBUS_GPIO is not set
CONFIG_I2C_DESIGNWARE_CORE=y
-CONFIG_I2C_DESIGNWARE_SLAVE=n
+# CONFIG_I2C_DESIGNWARE_SLAVE is not set
CONFIG_I2C_DESIGNWARE_PLATFORM=y
-CONFIG_I2C_DESIGNWARE_PCI=n
-CONFIG_I2C_EMEV2=n
+# CONFIG_I2C_DESIGNWARE_PCI is not set
+# CONFIG_I2C_EMEV2 is not set
CONFIG_I2C_GPIO=m
-CONFIG_I2C_GPIO_FAULT_INJECTOR=n
-CONFIG_I2C_HISI=n
-CONFIG_I2C_NOMADIK=n
-CONFIG_I2C_OCORES=n
+# CONFIG_I2C_GPIO_FAULT_INJECTOR is not set
+# CONFIG_I2C_HISI is not set
+# CONFIG_I2C_NOMADIK is not set
+# CONFIG_I2C_OCORES is not set
CONFIG_I2C_APPLE=y
-CONFIG_I2C_PCA_PLATFORM=n
-CONFIG_I2C_RK3X=n
-CONFIG_I2C_SIMTEC=n
-CONFIG_I2C_THUNDERX=n
-CONFIG_I2C_XILINX=n
+# CONFIG_I2C_PCA_PLATFORM is not set
+# CONFIG_I2C_RK3X is not set
+# CONFIG_I2C_SIMTEC is not set
+# CONFIG_I2C_THUNDERX is not set
+# CONFIG_I2C_XILINX is not set
#
# External I2C/SMBus adapter drivers
#
-CONFIG_I2C_DIOLAN_U2C=n
-CONFIG_I2C_CP2615=n
-CONFIG_I2C_ROBOTFUZZ_OSIF=n
-CONFIG_I2C_TAOS_EVM=n
-CONFIG_I2C_TINY_USB=n
+# CONFIG_I2C_DIOLAN_U2C is not set
+# CONFIG_I2C_CP2615 is not set
+# CONFIG_I2C_PCI1XXXX is not set
+# CONFIG_I2C_ROBOTFUZZ_OSIF is not set
+# CONFIG_I2C_TAOS_EVM is not set
+# CONFIG_I2C_TINY_USB is not set
#
# Other I2C/SMBus bus drivers
#
-CONFIG_I2C_VIRTIO=n
+# CONFIG_I2C_VIRTIO is not set
# end of I2C Hardware Bus support
-CONFIG_I2C_STUB=n
+# CONFIG_I2C_STUB is not set
CONFIG_I2C_SLAVE=y
-CONFIG_I2C_SLAVE_EEPROM=n
-CONFIG_I2C_SLAVE_TESTUNIT=n
-CONFIG_I2C_DEBUG_CORE=n
-CONFIG_I2C_DEBUG_ALGO=n
-CONFIG_I2C_DEBUG_BUS=n
+# CONFIG_I2C_SLAVE_EEPROM is not set
+# CONFIG_I2C_SLAVE_TESTUNIT is not set
+# CONFIG_I2C_DEBUG_CORE is not set
+# CONFIG_I2C_DEBUG_ALGO is not set
+# CONFIG_I2C_DEBUG_BUS is not set
# end of I2C support
-CONFIG_I3C=n
+# CONFIG_I3C is not set
CONFIG_SPI=y
CONFIG_SPI_MASTER=y
CONFIG_SPI_MEM=y
@@ -2694,61 +2977,60 @@ CONFIG_SPI_MEM=y
#
# SPI Master Controller Drivers
#
-CONFIG_SPI_ALTERA=n
+# CONFIG_SPI_ALTERA is not set
CONFIG_SPI_APPLE=y
-CONFIG_SPI_AXI_SPI_ENGINE=n
+# CONFIG_SPI_AXI_SPI_ENGINE is not set
CONFIG_SPI_BITBANG=y
-CONFIG_SPI_CADENCE=n
-CONFIG_SPI_CADENCE_QUADSPI=n
-CONFIG_SPI_CADENCE_XSPI=n
+# CONFIG_SPI_CADENCE is not set
+# CONFIG_SPI_CADENCE_QUADSPI is not set
+# CONFIG_SPI_CADENCE_XSPI is not set
CONFIG_SPI_DESIGNWARE=m
CONFIG_SPI_DW_DMA=y
-CONFIG_SPI_DW_PCI=n
+# CONFIG_SPI_DW_PCI is not set
CONFIG_SPI_DW_MMIO=m
-CONFIG_SPI_HISI_KUNPENG=n
-CONFIG_SPI_HISI_SFC_V3XX=n
-CONFIG_SPI_NXP_FLEXSPI=n
CONFIG_SPI_GPIO=y
-CONFIG_SPI_FSL_SPI=n
-CONFIG_SPI_OC_TINY=n
-CONFIG_SPI_PL022=n
-CONFIG_SPI_PXA2XX=n
-CONFIG_SPI_ROCKCHIP=n
-CONFIG_SPI_SC18IS602=n
-CONFIG_SPI_SIFIVE=n
-CONFIG_SPI_MXIC=n
-CONFIG_SPI_THUNDERX=n
-CONFIG_SPI_XCOMM=n
-CONFIG_SPI_XILINX=n
-CONFIG_SPI_ZYNQMP_GQSPI=n
-CONFIG_SPI_AMD=n
+# CONFIG_SPI_FSL_SPI is not set
+# CONFIG_SPI_MICROCHIP_CORE is not set
+# CONFIG_SPI_MICROCHIP_CORE_QSPI is not set
+# CONFIG_SPI_OC_TINY is not set
+# CONFIG_SPI_PCI1XXXX is not set
+# CONFIG_SPI_PL022 is not set
+# CONFIG_SPI_PXA2XX is not set
+# CONFIG_SPI_SC18IS602 is not set
+# CONFIG_SPI_SIFIVE is not set
+# CONFIG_SPI_SN_F_OSPI is not set
+# CONFIG_SPI_MXIC is not set
+# CONFIG_SPI_THUNDERX is not set
+# CONFIG_SPI_XCOMM is not set
+# CONFIG_SPI_XILINX is not set
+# CONFIG_SPI_ZYNQMP_GQSPI is not set
+# CONFIG_SPI_AMD is not set
#
# SPI Multiplexer support
#
-CONFIG_SPI_MUX=n
+# CONFIG_SPI_MUX is not set
#
# SPI Protocol Masters
#
CONFIG_SPI_SPIDEV=y
-CONFIG_SPI_LOOPBACK_TEST=n
-CONFIG_SPI_TLE62X0=n
-CONFIG_SPI_SLAVE=n
-CONFIG_SPI_DYNAMIC=y
+# CONFIG_SPI_LOOPBACK_TEST is not set
+# CONFIG_SPI_TLE62X0 is not set
+# CONFIG_SPI_SLAVE is not set
CONFIG_SPMI=y
-CONFIG_SPMI_HISI3670=n
+# CONFIG_SPMI_HISI3670 is not set
CONFIG_SPMI_APPLE=y
-CONFIG_HSI=n
+# CONFIG_HSI is not set
CONFIG_PPS=y
-CONFIG_PPS_DEBUG=n
+# CONFIG_PPS_DEBUG is not set
#
# PPS clients support
#
-CONFIG_PPS_CLIENT_KTIMER=n
-CONFIG_PPS_CLIENT_LDISC=n
-CONFIG_PPS_CLIENT_GPIO=n
+# CONFIG_PPS_CLIENT_KTIMER is not set
+# CONFIG_PPS_CLIENT_LDISC is not set
+# CONFIG_PPS_CLIENT_GPIO is not set
#
# PPS generators support
@@ -2759,25 +3041,26 @@ CONFIG_PPS_CLIENT_GPIO=n
#
CONFIG_PTP_1588_CLOCK=y
CONFIG_PTP_1588_CLOCK_OPTIONAL=y
-CONFIG_DP83640_PHY=n
-CONFIG_PTP_1588_CLOCK_INES=n
+# CONFIG_DP83640_PHY is not set
+# CONFIG_PTP_1588_CLOCK_INES is not set
CONFIG_PTP_1588_CLOCK_KVM=y
-CONFIG_PTP_1588_CLOCK_IDT82P33=n
-CONFIG_PTP_1588_CLOCK_IDTCM=n
+# CONFIG_PTP_1588_CLOCK_IDT82P33 is not set
+# CONFIG_PTP_1588_CLOCK_IDTCM is not set
+# CONFIG_PTP_1588_CLOCK_MOCK is not set
# end of PTP clock support
CONFIG_PINCTRL=y
CONFIG_GENERIC_PINCTRL_GROUPS=y
CONFIG_PINMUX=y
CONFIG_GENERIC_PINMUX_FUNCTIONS=y
-CONFIG_PINCTRL_AMD=n
CONFIG_PINCTRL_APPLE_GPIO=y
-CONFIG_PINCTRL_MCP23S08=n
-CONFIG_PINCTRL_MICROCHIP_SGPIO=n
-CONFIG_PINCTRL_OCELOT=n
-CONFIG_PINCTRL_SINGLE=n
-CONFIG_PINCTRL_STMFX=n
-CONFIG_PINCTRL_SX150X=n
+# CONFIG_PINCTRL_CY8C95X0 is not set
+# CONFIG_PINCTRL_MCP23S08 is not set
+# CONFIG_PINCTRL_MICROCHIP_SGPIO is not set
+# CONFIG_PINCTRL_OCELOT is not set
+# CONFIG_PINCTRL_SINGLE is not set
+# CONFIG_PINCTRL_STMFX is not set
+# CONFIG_PINCTRL_SX150X is not set
#
# Renesas pinctrl drivers
@@ -2787,7 +3070,6 @@ CONFIG_PINCTRL_SX150X=n
CONFIG_GPIOLIB=y
CONFIG_GPIOLIB_FASTPATH_LIMIT=512
CONFIG_OF_GPIO=y
-CONFIG_GPIO_ACPI=y
CONFIG_GPIOLIB_IRQCHIP=y
CONFIG_GPIO_CDEV=y
CONFIG_GPIO_CDEV_V1=y
@@ -2795,40 +3077,39 @@ CONFIG_GPIO_CDEV_V1=y
#
# Memory mapped GPIO drivers
#
-CONFIG_GPIO_74XX_MMIO=n
-CONFIG_GPIO_ALTERA=n
-CONFIG_GPIO_AMDPT=n
-CONFIG_GPIO_CADENCE=n
-CONFIG_GPIO_DWAPB=n
-CONFIG_GPIO_EXAR=n
-CONFIG_GPIO_FTGPIO010=n
-CONFIG_GPIO_GENERIC_PLATFORM=n
-CONFIG_GPIO_GRGPIO=n
-CONFIG_GPIO_HISI=n
-CONFIG_GPIO_HLWD=n
-CONFIG_GPIO_LOGICVC=n
-CONFIG_GPIO_MB86S7X=n
-CONFIG_GPIO_PL061=n
-CONFIG_GPIO_SAMA5D2_PIOBU=n
-CONFIG_GPIO_SIFIVE=n
+# CONFIG_GPIO_74XX_MMIO is not set
+# CONFIG_GPIO_ALTERA is not set
+# CONFIG_GPIO_CADENCE is not set
+# CONFIG_GPIO_DWAPB is not set
+# CONFIG_GPIO_EXAR is not set
+# CONFIG_GPIO_FTGPIO010 is not set
+# CONFIG_GPIO_GENERIC_PLATFORM is not set
+# CONFIG_GPIO_GRGPIO is not set
+# CONFIG_GPIO_HISI is not set
+# CONFIG_GPIO_HLWD is not set
+# CONFIG_GPIO_LOGICVC is not set
+# CONFIG_GPIO_MB86S7X is not set
+# CONFIG_GPIO_PL061 is not set
+# CONFIG_GPIO_SIFIVE is not set
CONFIG_GPIO_SYSCON=y
-CONFIG_GPIO_XGENE=n
-CONFIG_GPIO_XILINX=n
-CONFIG_GPIO_AMD_FCH=n
+# CONFIG_GPIO_XGENE is not set
+# CONFIG_GPIO_XILINX is not set
+# CONFIG_GPIO_AMD_FCH is not set
# end of Memory mapped GPIO drivers
#
# I2C GPIO expanders
#
-CONFIG_GPIO_ADP5588=n
-CONFIG_GPIO_ADNP=n
-CONFIG_GPIO_GW_PLD=n
-CONFIG_GPIO_MAX7300=n
-CONFIG_GPIO_MAX732X=n
-CONFIG_GPIO_PCA953X=n
-CONFIG_GPIO_PCA9570=n
-CONFIG_GPIO_PCF857X=n
-CONFIG_GPIO_TPIC2810=n
+# CONFIG_GPIO_ADNP is not set
+# CONFIG_GPIO_FXL6408 is not set
+# CONFIG_GPIO_DS4520 is not set
+# CONFIG_GPIO_GW_PLD is not set
+# CONFIG_GPIO_MAX7300 is not set
+# CONFIG_GPIO_MAX732X is not set
+# CONFIG_GPIO_PCA953X is not set
+# CONFIG_GPIO_PCA9570 is not set
+# CONFIG_GPIO_PCF857X is not set
+# CONFIG_GPIO_TPIC2810 is not set
# end of I2C GPIO expanders
#
@@ -2840,21 +3121,21 @@ CONFIG_GPIO_MACSMC=y
#
# PCI GPIO expanders
#
-CONFIG_GPIO_BT8XX=n
-CONFIG_GPIO_PCI_IDIO_16=n
-CONFIG_GPIO_PCIE_IDIO_24=n
-CONFIG_GPIO_RDC321X=n
+# CONFIG_GPIO_BT8XX is not set
+# CONFIG_GPIO_PCI_IDIO_16 is not set
+# CONFIG_GPIO_PCIE_IDIO_24 is not set
+# CONFIG_GPIO_RDC321X is not set
# end of PCI GPIO expanders
#
# SPI GPIO expanders
#
-CONFIG_GPIO_74X164=n
-CONFIG_GPIO_MAX3191X=n
-CONFIG_GPIO_MAX7301=n
-CONFIG_GPIO_MC33880=n
-CONFIG_GPIO_PISOSR=n
-CONFIG_GPIO_XRA1403=n
+# CONFIG_GPIO_74X164 is not set
+# CONFIG_GPIO_MAX3191X is not set
+# CONFIG_GPIO_MAX7301 is not set
+# CONFIG_GPIO_MC33880 is not set
+# CONFIG_GPIO_PISOSR is not set
+# CONFIG_GPIO_XRA1403 is not set
# end of SPI GPIO expanders
#
@@ -2865,423 +3146,513 @@ CONFIG_GPIO_XRA1403=n
#
# Virtual GPIO drivers
#
-CONFIG_GPIO_AGGREGATOR=n
-CONFIG_GPIO_MOCKUP=n
-CONFIG_GPIO_VIRTIO=n
-CONFIG_GPIO_SIM=n
+# CONFIG_GPIO_AGGREGATOR is not set
+# CONFIG_GPIO_LATCH is not set
+# CONFIG_GPIO_MOCKUP is not set
+# CONFIG_GPIO_VIRTIO is not set
+# CONFIG_GPIO_SIM is not set
# end of Virtual GPIO drivers
-CONFIG_W1=n
+# CONFIG_W1 is not set
CONFIG_POWER_RESET=y
-CONFIG_POWER_RESET_BRCMSTB=n
-CONFIG_POWER_RESET_GPIO=n
-CONFIG_POWER_RESET_GPIO_RESTART=n
+# CONFIG_POWER_RESET_BRCMSTB is not set
+# CONFIG_POWER_RESET_GPIO is not set
+# CONFIG_POWER_RESET_GPIO_RESTART is not set
CONFIG_POWER_RESET_MACSMC=y
-CONFIG_POWER_RESET_LTC2952=n
-CONFIG_POWER_RESET_RESTART=n
-CONFIG_POWER_RESET_XGENE=n
+# CONFIG_POWER_RESET_LTC2952 is not set
+# CONFIG_POWER_RESET_REGULATOR is not set
+# CONFIG_POWER_RESET_RESTART is not set
+# CONFIG_POWER_RESET_XGENE is not set
CONFIG_POWER_RESET_SYSCON=y
-CONFIG_POWER_RESET_SYSCON_POWEROFF=n
+# CONFIG_POWER_RESET_SYSCON_POWEROFF is not set
CONFIG_REBOOT_MODE=y
CONFIG_SYSCON_REBOOT_MODE=y
-CONFIG_NVMEM_REBOOT_MODE=n
+# CONFIG_NVMEM_REBOOT_MODE is not set
CONFIG_POWER_SUPPLY=y
-CONFIG_POWER_SUPPLY_DEBUG=n
-CONFIG_PDA_POWER=n
-CONFIG_IP5XXX_POWER=n
-CONFIG_TEST_POWER=n
-CONFIG_CHARGER_ADP5061=n
-CONFIG_BATTERY_CW2015=n
-CONFIG_BATTERY_DS2780=n
-CONFIG_BATTERY_DS2781=n
-CONFIG_BATTERY_DS2782=n
-CONFIG_BATTERY_SAMSUNG_SDI=n
-CONFIG_BATTERY_SBS=n
-CONFIG_CHARGER_SBS=n
-CONFIG_MANAGER_SBS=n
-CONFIG_BATTERY_BQ27XXX=n
-CONFIG_BATTERY_MAX17040=n
-CONFIG_BATTERY_MAX17042=n
-CONFIG_CHARGER_ISP1704=n
-CONFIG_CHARGER_MAX8903=n
-CONFIG_CHARGER_LP8727=n
-CONFIG_CHARGER_GPIO=n
-CONFIG_CHARGER_LT3651=n
-CONFIG_CHARGER_LTC4162L=n
-CONFIG_CHARGER_DETECTOR_MAX14656=n
-CONFIG_CHARGER_MAX77976=n
-CONFIG_CHARGER_BQ2415X=n
-CONFIG_CHARGER_BQ24190=n
-CONFIG_CHARGER_BQ24257=n
-CONFIG_CHARGER_BQ24735=n
-CONFIG_CHARGER_BQ2515X=n
-CONFIG_CHARGER_BQ25890=n
-CONFIG_CHARGER_BQ25980=n
-CONFIG_CHARGER_BQ256XX=n
-CONFIG_BATTERY_GAUGE_LTC2941=n
-CONFIG_BATTERY_GOLDFISH=n
-CONFIG_BATTERY_RT5033=n
-CONFIG_CHARGER_RT9455=n
-CONFIG_CHARGER_BD99954=n
-CONFIG_BATTERY_UG3105=n
+# CONFIG_POWER_SUPPLY_DEBUG is not set
+# CONFIG_IP5XXX_POWER is not set
+# CONFIG_TEST_POWER is not set
+# CONFIG_CHARGER_ADP5061 is not set
+# CONFIG_BATTERY_CW2015 is not set
+# CONFIG_BATTERY_DS2780 is not set
+# CONFIG_BATTERY_DS2781 is not set
+# CONFIG_BATTERY_DS2782 is not set
+# CONFIG_BATTERY_SAMSUNG_SDI is not set
+# CONFIG_BATTERY_SBS is not set
+# CONFIG_CHARGER_SBS is not set
+# CONFIG_MANAGER_SBS is not set
+# CONFIG_BATTERY_BQ27XXX is not set
+# CONFIG_BATTERY_MAX17040 is not set
+# CONFIG_BATTERY_MAX17042 is not set
+# CONFIG_CHARGER_ISP1704 is not set
+# CONFIG_CHARGER_MAX8903 is not set
+# CONFIG_CHARGER_LP8727 is not set
+# CONFIG_CHARGER_GPIO is not set
+# CONFIG_CHARGER_MANAGER is not set
+# CONFIG_CHARGER_LT3651 is not set
+# CONFIG_CHARGER_LTC4162L is not set
+# CONFIG_CHARGER_DETECTOR_MAX14656 is not set
+# CONFIG_CHARGER_MAX77976 is not set
+# CONFIG_CHARGER_BQ2415X is not set
+# CONFIG_CHARGER_BQ24190 is not set
+# CONFIG_CHARGER_BQ24257 is not set
+# CONFIG_CHARGER_BQ24735 is not set
+# CONFIG_CHARGER_BQ2515X is not set
+# CONFIG_CHARGER_BQ25890 is not set
+# CONFIG_CHARGER_BQ25980 is not set
+# CONFIG_CHARGER_BQ256XX is not set
+# CONFIG_CHARGER_SMB347 is not set
+# CONFIG_BATTERY_GAUGE_LTC2941 is not set
+# CONFIG_BATTERY_GOLDFISH is not set
+# CONFIG_BATTERY_RT5033 is not set
+# CONFIG_CHARGER_RT9455 is not set
+# CONFIG_CHARGER_RT9467 is not set
+# CONFIG_CHARGER_RT9471 is not set
+# CONFIG_CHARGER_UCS1002 is not set
+# CONFIG_CHARGER_BD99954 is not set
+# CONFIG_BATTERY_UG3105 is not set
CONFIG_CHARGER_MACSMC=y
CONFIG_HWMON=m
-CONFIG_HWMON_DEBUG_CHIP=n
+# CONFIG_HWMON_DEBUG_CHIP is not set
#
# Native drivers
#
-CONFIG_SENSORS_AD7314=n
-CONFIG_SENSORS_AD7414=n
-CONFIG_SENSORS_AD7418=n
-CONFIG_SENSORS_ADM1021=n
-CONFIG_SENSORS_ADM1025=n
-CONFIG_SENSORS_ADM1026=n
-CONFIG_SENSORS_ADM1029=n
-CONFIG_SENSORS_ADM1031=n
-CONFIG_SENSORS_ADM1177=n
-CONFIG_SENSORS_ADM9240=n
-CONFIG_SENSORS_ADT7310=n
-CONFIG_SENSORS_ADT7410=n
-CONFIG_SENSORS_ADT7411=n
-CONFIG_SENSORS_ADT7462=n
-CONFIG_SENSORS_ADT7470=n
-CONFIG_SENSORS_ADT7475=n
-CONFIG_SENSORS_AHT10=n
-CONFIG_SENSORS_AQUACOMPUTER_D5NEXT=n
-CONFIG_SENSORS_AS370=n
-CONFIG_SENSORS_ASC7621=n
-CONFIG_SENSORS_AXI_FAN_CONTROL=n
-CONFIG_SENSORS_ARM_SCMI=n
-CONFIG_SENSORS_ARM_SCPI=n
-CONFIG_SENSORS_ASPEED=n
-CONFIG_SENSORS_ATXP1=n
-CONFIG_SENSORS_CORSAIR_CPRO=n
-CONFIG_SENSORS_CORSAIR_PSU=n
-CONFIG_SENSORS_DS620=n
-CONFIG_SENSORS_DS1621=n
-CONFIG_SENSORS_I5K_AMB=n
-CONFIG_SENSORS_F71805F=n
-CONFIG_SENSORS_F71882FG=n
-CONFIG_SENSORS_F75375S=n
-CONFIG_SENSORS_FTSTEUTATES=n
-CONFIG_SENSORS_GL518SM=n
-CONFIG_SENSORS_GL520SM=n
-CONFIG_SENSORS_G760A=n
-CONFIG_SENSORS_G762=n
-CONFIG_SENSORS_GPIO_FAN=n
-CONFIG_SENSORS_HIH6130=n
-CONFIG_SENSORS_IT87=n
-CONFIG_SENSORS_JC42=n
-CONFIG_SENSORS_POWR1220=n
-CONFIG_SENSORS_LINEAGE=n
-CONFIG_SENSORS_LTC2945=n
-CONFIG_SENSORS_LTC2947_I2C=n
-CONFIG_SENSORS_LTC2947_SPI=n
-CONFIG_SENSORS_LTC2990=n
-CONFIG_SENSORS_LTC2992=n
-CONFIG_SENSORS_LTC4151=n
-CONFIG_SENSORS_LTC4215=n
-CONFIG_SENSORS_LTC4222=n
-CONFIG_SENSORS_LTC4245=n
-CONFIG_SENSORS_LTC4260=n
-CONFIG_SENSORS_LTC4261=n
-CONFIG_SENSORS_MAX1111=n
-CONFIG_SENSORS_MAX127=n
-CONFIG_SENSORS_MAX16065=n
-CONFIG_SENSORS_MAX1619=n
-CONFIG_SENSORS_MAX1668=n
-CONFIG_SENSORS_MAX197=n
-CONFIG_SENSORS_MAX31722=n
-CONFIG_SENSORS_MAX31730=n
-CONFIG_SENSORS_MAX6620=n
-CONFIG_SENSORS_MAX6621=n
-CONFIG_SENSORS_MAX6639=n
-CONFIG_SENSORS_MAX6642=n
-CONFIG_SENSORS_MAX6650=n
-CONFIG_SENSORS_MAX6697=n
-CONFIG_SENSORS_MAX31790=n
-CONFIG_SENSORS_MCP3021=n
-CONFIG_SENSORS_TC654=n
-CONFIG_SENSORS_TPS23861=n
-CONFIG_SENSORS_MR75203=n
-CONFIG_SENSORS_ADCXX=n
-CONFIG_SENSORS_LM63=n
-CONFIG_SENSORS_LM70=n
-CONFIG_SENSORS_LM73=n
-CONFIG_SENSORS_LM75=n
-CONFIG_SENSORS_LM77=n
-CONFIG_SENSORS_LM78=n
-CONFIG_SENSORS_LM80=n
-CONFIG_SENSORS_LM83=n
-CONFIG_SENSORS_LM85=n
-CONFIG_SENSORS_LM87=n
-CONFIG_SENSORS_LM90=n
-CONFIG_SENSORS_LM92=n
-CONFIG_SENSORS_LM93=n
-CONFIG_SENSORS_LM95234=n
-CONFIG_SENSORS_LM95241=n
-CONFIG_SENSORS_LM95245=n
-CONFIG_SENSORS_PC87360=n
-CONFIG_SENSORS_PC87427=n
-CONFIG_SENSORS_NCT6683=n
-CONFIG_SENSORS_NCT6775=n
-CONFIG_SENSORS_NCT7802=n
-CONFIG_SENSORS_NCT7904=n
-CONFIG_SENSORS_NPCM7XX=n
-CONFIG_SENSORS_NZXT_KRAKEN2=n
-CONFIG_SENSORS_NZXT_SMART2=n
-CONFIG_SENSORS_OCC_P8_I2C=n
-CONFIG_SENSORS_PCF8591=n
-CONFIG_PMBUS=n
+# CONFIG_SENSORS_AD7314 is not set
+# CONFIG_SENSORS_AD7414 is not set
+# CONFIG_SENSORS_AD7418 is not set
+# CONFIG_SENSORS_ADM1021 is not set
+# CONFIG_SENSORS_ADM1025 is not set
+# CONFIG_SENSORS_ADM1026 is not set
+# CONFIG_SENSORS_ADM1029 is not set
+# CONFIG_SENSORS_ADM1031 is not set
+# CONFIG_SENSORS_ADM1177 is not set
+# CONFIG_SENSORS_ADM9240 is not set
+# CONFIG_SENSORS_ADT7310 is not set
+# CONFIG_SENSORS_ADT7410 is not set
+# CONFIG_SENSORS_ADT7411 is not set
+# CONFIG_SENSORS_ADT7462 is not set
+# CONFIG_SENSORS_ADT7470 is not set
+# CONFIG_SENSORS_ADT7475 is not set
+# CONFIG_SENSORS_AHT10 is not set
+# CONFIG_SENSORS_AQUACOMPUTER_D5NEXT is not set
+# CONFIG_SENSORS_AS370 is not set
+# CONFIG_SENSORS_ASC7621 is not set
+# CONFIG_SENSORS_AXI_FAN_CONTROL is not set
+# CONFIG_SENSORS_ARM_SCMI is not set
+# CONFIG_SENSORS_ATXP1 is not set
+# CONFIG_SENSORS_CORSAIR_CPRO is not set
+# CONFIG_SENSORS_CORSAIR_PSU is not set
+# CONFIG_SENSORS_DS620 is not set
+# CONFIG_SENSORS_DS1621 is not set
+# CONFIG_SENSORS_I5K_AMB is not set
+# CONFIG_SENSORS_F71805F is not set
+# CONFIG_SENSORS_F71882FG is not set
+# CONFIG_SENSORS_F75375S is not set
+# CONFIG_SENSORS_FTSTEUTATES is not set
+# CONFIG_SENSORS_GL518SM is not set
+# CONFIG_SENSORS_GL520SM is not set
+# CONFIG_SENSORS_G760A is not set
+# CONFIG_SENSORS_G762 is not set
+# CONFIG_SENSORS_GPIO_FAN is not set
+# CONFIG_SENSORS_HIH6130 is not set
+# CONFIG_SENSORS_HS3001 is not set
+# CONFIG_SENSORS_IT87 is not set
+# CONFIG_SENSORS_JC42 is not set
+# CONFIG_SENSORS_POWR1220 is not set
+# CONFIG_SENSORS_LINEAGE is not set
+# CONFIG_SENSORS_LTC2945 is not set
+# CONFIG_SENSORS_LTC2947_I2C is not set
+# CONFIG_SENSORS_LTC2947_SPI is not set
+# CONFIG_SENSORS_LTC2990 is not set
+# CONFIG_SENSORS_LTC2992 is not set
+# CONFIG_SENSORS_LTC4151 is not set
+# CONFIG_SENSORS_LTC4215 is not set
+# CONFIG_SENSORS_LTC4222 is not set
+# CONFIG_SENSORS_LTC4245 is not set
+# CONFIG_SENSORS_LTC4260 is not set
+# CONFIG_SENSORS_LTC4261 is not set
+# CONFIG_SENSORS_MAX1111 is not set
+# CONFIG_SENSORS_MAX127 is not set
+# CONFIG_SENSORS_MAX16065 is not set
+# CONFIG_SENSORS_MAX1619 is not set
+# CONFIG_SENSORS_MAX1668 is not set
+# CONFIG_SENSORS_MAX197 is not set
+# CONFIG_SENSORS_MAX31722 is not set
+# CONFIG_SENSORS_MAX31730 is not set
+# CONFIG_SENSORS_MAX31760 is not set
+# CONFIG_MAX31827 is not set
+# CONFIG_SENSORS_MAX6620 is not set
+# CONFIG_SENSORS_MAX6621 is not set
+# CONFIG_SENSORS_MAX6639 is not set
+# CONFIG_SENSORS_MAX6642 is not set
+# CONFIG_SENSORS_MAX6650 is not set
+# CONFIG_SENSORS_MAX6697 is not set
+# CONFIG_SENSORS_MAX31790 is not set
+# CONFIG_SENSORS_MC34VR500 is not set
+# CONFIG_SENSORS_MCP3021 is not set
+# CONFIG_SENSORS_TC654 is not set
+# CONFIG_SENSORS_TPS23861 is not set
+# CONFIG_SENSORS_MR75203 is not set
+# CONFIG_SENSORS_ADCXX is not set
+# CONFIG_SENSORS_LM63 is not set
+# CONFIG_SENSORS_LM70 is not set
+# CONFIG_SENSORS_LM73 is not set
+# CONFIG_SENSORS_LM75 is not set
+# CONFIG_SENSORS_LM77 is not set
+# CONFIG_SENSORS_LM78 is not set
+# CONFIG_SENSORS_LM80 is not set
+# CONFIG_SENSORS_LM83 is not set
+# CONFIG_SENSORS_LM85 is not set
+# CONFIG_SENSORS_LM87 is not set
+# CONFIG_SENSORS_LM90 is not set
+# CONFIG_SENSORS_LM92 is not set
+# CONFIG_SENSORS_LM93 is not set
+# CONFIG_SENSORS_LM95234 is not set
+# CONFIG_SENSORS_LM95241 is not set
+# CONFIG_SENSORS_LM95245 is not set
+# CONFIG_SENSORS_PC87360 is not set
+# CONFIG_SENSORS_PC87427 is not set
+# CONFIG_SENSORS_NCT6683 is not set
+# CONFIG_SENSORS_NCT6775 is not set
+# CONFIG_SENSORS_NCT6775_I2C is not set
+# CONFIG_SENSORS_NCT7802 is not set
+# CONFIG_SENSORS_NCT7904 is not set
+# CONFIG_SENSORS_NPCM7XX is not set
+# CONFIG_SENSORS_NZXT_KRAKEN2 is not set
+# CONFIG_SENSORS_NZXT_SMART2 is not set
+# CONFIG_SENSORS_OCC_P8_I2C is not set
+# CONFIG_SENSORS_PCF8591 is not set
+# CONFIG_PMBUS is not set
CONFIG_SENSORS_PWM_FAN=m
-CONFIG_SENSORS_SBTSI=n
-CONFIG_SENSORS_SBRMI=n
-CONFIG_SENSORS_SHT15=n
-CONFIG_SENSORS_SHT21=n
-CONFIG_SENSORS_SHT3x=n
-CONFIG_SENSORS_SHT4x=n
-CONFIG_SENSORS_SHTC1=n
-CONFIG_SENSORS_SIS5595=n
-CONFIG_SENSORS_SY7636A=n
-CONFIG_SENSORS_DME1737=n
-CONFIG_SENSORS_EMC1403=n
-CONFIG_SENSORS_EMC2103=n
-CONFIG_SENSORS_EMC6W201=n
-CONFIG_SENSORS_SMSC47M1=n
-CONFIG_SENSORS_SMSC47M192=n
-CONFIG_SENSORS_SMSC47B397=n
-CONFIG_SENSORS_SCH5627=n
-CONFIG_SENSORS_SCH5636=n
-CONFIG_SENSORS_STTS751=n
-CONFIG_SENSORS_SMM665=n
-CONFIG_SENSORS_ADC128D818=n
-CONFIG_SENSORS_ADS7828=n
-CONFIG_SENSORS_ADS7871=n
-CONFIG_SENSORS_AMC6821=n
-CONFIG_SENSORS_INA209=n
-CONFIG_SENSORS_INA2XX=n
-CONFIG_SENSORS_INA238=n
-CONFIG_SENSORS_INA3221=n
-CONFIG_SENSORS_TC74=n
-CONFIG_SENSORS_THMC50=n
-CONFIG_SENSORS_TMP102=n
-CONFIG_SENSORS_TMP103=n
-CONFIG_SENSORS_TMP108=n
-CONFIG_SENSORS_TMP401=n
-CONFIG_SENSORS_TMP421=n
-CONFIG_SENSORS_TMP464=n
-CONFIG_SENSORS_TMP513=n
-CONFIG_SENSORS_VIA686A=n
-CONFIG_SENSORS_VT1211=n
-CONFIG_SENSORS_VT8231=n
-CONFIG_SENSORS_W83773G=n
-CONFIG_SENSORS_W83781D=n
-CONFIG_SENSORS_W83791D=n
-CONFIG_SENSORS_W83792D=n
-CONFIG_SENSORS_W83793=n
-CONFIG_SENSORS_W83795=n
-CONFIG_SENSORS_W83L785TS=n
-CONFIG_SENSORS_W83L786NG=n
-CONFIG_SENSORS_W83627HF=n
-CONFIG_SENSORS_W83627EHF=n
-CONFIG_SENSORS_XGENE=n
-
-#
-# ACPI drivers
-#
-CONFIG_SENSORS_ACPI_POWER=n
+# CONFIG_SENSORS_SBTSI is not set
+# CONFIG_SENSORS_SBRMI is not set
+# CONFIG_SENSORS_SHT15 is not set
+# CONFIG_SENSORS_SHT21 is not set
+# CONFIG_SENSORS_SHT3x is not set
+# CONFIG_SENSORS_SHT4x is not set
+# CONFIG_SENSORS_SHTC1 is not set
+# CONFIG_SENSORS_SIS5595 is not set
+# CONFIG_SENSORS_DME1737 is not set
+# CONFIG_SENSORS_EMC1403 is not set
+# CONFIG_SENSORS_EMC2103 is not set
+# CONFIG_SENSORS_EMC2305 is not set
+# CONFIG_SENSORS_EMC6W201 is not set
+# CONFIG_SENSORS_SMSC47M1 is not set
+# CONFIG_SENSORS_SMSC47M192 is not set
+# CONFIG_SENSORS_SMSC47B397 is not set
+# CONFIG_SENSORS_SCH5627 is not set
+# CONFIG_SENSORS_SCH5636 is not set
+# CONFIG_SENSORS_STTS751 is not set
+# CONFIG_SENSORS_ADC128D818 is not set
+# CONFIG_SENSORS_ADS7828 is not set
+# CONFIG_SENSORS_ADS7871 is not set
+# CONFIG_SENSORS_AMC6821 is not set
+# CONFIG_SENSORS_INA209 is not set
+# CONFIG_SENSORS_INA2XX is not set
+# CONFIG_SENSORS_INA238 is not set
+# CONFIG_SENSORS_INA3221 is not set
+# CONFIG_SENSORS_TC74 is not set
+# CONFIG_SENSORS_THMC50 is not set
+# CONFIG_SENSORS_TMP102 is not set
+# CONFIG_SENSORS_TMP103 is not set
+# CONFIG_SENSORS_TMP108 is not set
+# CONFIG_SENSORS_TMP401 is not set
+# CONFIG_SENSORS_TMP421 is not set
+# CONFIG_SENSORS_TMP464 is not set
+# CONFIG_SENSORS_TMP513 is not set
+# CONFIG_SENSORS_VIA686A is not set
+# CONFIG_SENSORS_VT1211 is not set
+# CONFIG_SENSORS_VT8231 is not set
+# CONFIG_SENSORS_W83773G is not set
+# CONFIG_SENSORS_W83781D is not set
+# CONFIG_SENSORS_W83791D is not set
+# CONFIG_SENSORS_W83792D is not set
+# CONFIG_SENSORS_W83793 is not set
+# CONFIG_SENSORS_W83795 is not set
+# CONFIG_SENSORS_W83L785TS is not set
+# CONFIG_SENSORS_W83L786NG is not set
+# CONFIG_SENSORS_W83627HF is not set
+# CONFIG_SENSORS_W83627EHF is not set
CONFIG_THERMAL=y
-CONFIG_THERMAL_NETLINK=n
-CONFIG_THERMAL_STATISTICS=n
+# CONFIG_THERMAL_NETLINK is not set
+# CONFIG_THERMAL_STATISTICS is not set
CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0
CONFIG_THERMAL_OF=y
CONFIG_THERMAL_WRITABLE_TRIPS=y
CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y
-CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE=n
-CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE=n
-CONFIG_THERMAL_GOV_FAIR_SHARE=n
+# CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE is not set
+# CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE is not set
+# CONFIG_THERMAL_GOV_FAIR_SHARE is not set
CONFIG_THERMAL_GOV_STEP_WISE=y
-CONFIG_THERMAL_GOV_BANG_BANG=n
+# CONFIG_THERMAL_GOV_BANG_BANG is not set
CONFIG_THERMAL_GOV_USER_SPACE=y
-CONFIG_THERMAL_GOV_POWER_ALLOCATOR=n
-CONFIG_CPU_THERMAL=n
-CONFIG_THERMAL_EMULATION=n
-CONFIG_THERMAL_MMIO=n
+# CONFIG_THERMAL_GOV_POWER_ALLOCATOR is not set
+# CONFIG_CPU_THERMAL is not set
+CONFIG_DEVFREQ_THERMAL=y
+# CONFIG_THERMAL_EMULATION is not set
+# CONFIG_THERMAL_MMIO is not set
CONFIG_WATCHDOG=y
CONFIG_WATCHDOG_CORE=y
-CONFIG_WATCHDOG_NOWAYOUT=n
+# CONFIG_WATCHDOG_NOWAYOUT is not set
CONFIG_WATCHDOG_HANDLE_BOOT_ENABLED=y
CONFIG_WATCHDOG_OPEN_TIMEOUT=0
-CONFIG_WATCHDOG_SYSFS=n
-CONFIG_WATCHDOG_HRTIMER_PRETIMEOUT=n
+# CONFIG_WATCHDOG_SYSFS is not set
+# CONFIG_WATCHDOG_HRTIMER_PRETIMEOUT is not set
#
# Watchdog Pretimeout Governors
#
-CONFIG_WATCHDOG_PRETIMEOUT_GOV=n
+# CONFIG_WATCHDOG_PRETIMEOUT_GOV is not set
#
# Watchdog Device Drivers
#
-CONFIG_SOFT_WATCHDOG=n
-CONFIG_GPIO_WATCHDOG=n
-CONFIG_WDAT_WDT=n
-CONFIG_XILINX_WATCHDOG=n
-CONFIG_ZIIRAVE_WATCHDOG=n
-CONFIG_ARM_SP805_WATCHDOG=n
-CONFIG_ARM_SBSA_WATCHDOG=n
-CONFIG_CADENCE_WATCHDOG=n
-CONFIG_DW_WATCHDOG=n
-CONFIG_MAX63XX_WATCHDOG=n
-CONFIG_ARM_SMC_WATCHDOG=n
+# CONFIG_SOFT_WATCHDOG is not set
+# CONFIG_GPIO_WATCHDOG is not set
+# CONFIG_XILINX_WATCHDOG is not set
+# CONFIG_XILINX_WINDOW_WATCHDOG is not set
+# CONFIG_ZIIRAVE_WATCHDOG is not set
+# CONFIG_ARM_SP805_WATCHDOG is not set
+# CONFIG_ARM_SBSA_WATCHDOG is not set
+# CONFIG_CADENCE_WATCHDOG is not set
+# CONFIG_DW_WATCHDOG is not set
+# CONFIG_MAX63XX_WATCHDOG is not set
+# CONFIG_ARM_SMC_WATCHDOG is not set
CONFIG_APPLE_WATCHDOG=y
-CONFIG_ALIM7101_WDT=n
-CONFIG_I6300ESB_WDT=n
-CONFIG_MEN_A21_WDT=n
+# CONFIG_ALIM7101_WDT is not set
+# CONFIG_I6300ESB_WDT is not set
+# CONFIG_HP_WATCHDOG is not set
+# CONFIG_MEN_A21_WDT is not set
#
# PCI-based Watchdog Cards
#
-CONFIG_PCIPCWATCHDOG=n
-CONFIG_WDTPCI=n
+# CONFIG_PCIPCWATCHDOG is not set
+# CONFIG_WDTPCI is not set
#
# USB-based Watchdog Cards
#
-CONFIG_USBPCWATCHDOG=n
+# CONFIG_USBPCWATCHDOG is not set
CONFIG_SSB_POSSIBLE=y
-CONFIG_SSB=n
+# CONFIG_SSB is not set
CONFIG_BCMA_POSSIBLE=y
-CONFIG_BCMA=n
+# CONFIG_BCMA is not set
#
# Multifunction device drivers
#
CONFIG_MFD_CORE=y
-CONFIG_MFD_ACT8945A=n
+# CONFIG_MFD_ACT8945A is not set
CONFIG_MFD_APPLE_SPMI_PMU=y
-CONFIG_MFD_AS3711=n
-CONFIG_MFD_AS3722=n
-CONFIG_PMIC_ADP5520=n
-CONFIG_MFD_AAT2870_CORE=n
-CONFIG_MFD_ATMEL_FLEXCOM=n
-CONFIG_MFD_ATMEL_HLCDC=n
-CONFIG_MFD_BCM590XX=n
-CONFIG_MFD_BD9571MWV=n
-CONFIG_MFD_AXP20X_I2C=n
-CONFIG_MFD_MADERA=n
-CONFIG_PMIC_DA903X=n
-CONFIG_MFD_DA9052_SPI=n
-CONFIG_MFD_DA9052_I2C=n
-CONFIG_MFD_DA9055=n
-CONFIG_MFD_DA9062=n
-CONFIG_MFD_DA9063=n
-CONFIG_MFD_DA9150=n
-CONFIG_MFD_DLN2=n
-CONFIG_MFD_GATEWORKS_GSC=n
-CONFIG_MFD_MC13XXX_SPI=n
-CONFIG_MFD_MC13XXX_I2C=n
-CONFIG_MFD_MP2629=n
-CONFIG_MFD_HI6421_PMIC=n
-CONFIG_MFD_HI6421_SPMI=n
-CONFIG_HTC_PASIC3=n
-CONFIG_HTC_I2CPLD=n
-CONFIG_LPC_ICH=n
-CONFIG_LPC_SCH=n
-CONFIG_MFD_IQS62X=n
-CONFIG_MFD_JANZ_CMODIO=n
-CONFIG_MFD_KEMPLD=n
-CONFIG_MFD_88PM800=n
-CONFIG_MFD_88PM805=n
-CONFIG_MFD_88PM860X=n
-CONFIG_MFD_MAX14577=n
-CONFIG_MFD_MAX77620=n
-CONFIG_MFD_MAX77650=n
-CONFIG_MFD_MAX77686=n
-CONFIG_MFD_MAX77693=n
-CONFIG_MFD_MAX77714=n
-CONFIG_MFD_MAX77843=n
-CONFIG_MFD_MAX8907=n
-CONFIG_MFD_MAX8925=n
-CONFIG_MFD_MAX8997=n
-CONFIG_MFD_MAX8998=n
-CONFIG_MFD_MT6360=n
-CONFIG_MFD_MT6397=n
-CONFIG_MFD_MENF21BMC=n
-CONFIG_EZX_PCAP=n
-CONFIG_MFD_CPCAP=n
-CONFIG_MFD_VIPERBOARD=n
-CONFIG_MFD_NTXEC=n
-CONFIG_MFD_RETU=n
-CONFIG_MFD_PCF50633=n
-CONFIG_MFD_RDC321X=n
-CONFIG_MFD_RT4831=n
-CONFIG_MFD_RT5033=n
-CONFIG_MFD_RC5T583=n
-CONFIG_MFD_RK808=n
-CONFIG_MFD_RN5T618=n
-CONFIG_MFD_SEC_CORE=n
-CONFIG_MFD_SI476X_CORE=n
-CONFIG_MFD_SIMPLE_MFD_I2C=n
+# CONFIG_MFD_AS3711 is not set
+# CONFIG_MFD_SMPRO is not set
+# CONFIG_MFD_AS3722 is not set
+# CONFIG_PMIC_ADP5520 is not set
+# CONFIG_MFD_AAT2870_CORE is not set
+# CONFIG_MFD_ATMEL_FLEXCOM is not set
+# CONFIG_MFD_ATMEL_HLCDC is not set
+# CONFIG_MFD_BCM590XX is not set
+# CONFIG_MFD_BD9571MWV is not set
+# CONFIG_MFD_AXP20X_I2C is not set
+# CONFIG_MFD_CS42L43_I2C is not set
+# CONFIG_MFD_MADERA is not set
+# CONFIG_MFD_MAX5970 is not set
+# CONFIG_PMIC_DA903X is not set
+# CONFIG_MFD_DA9052_SPI is not set
+# CONFIG_MFD_DA9052_I2C is not set
+# CONFIG_MFD_DA9055 is not set
+# CONFIG_MFD_DA9062 is not set
+# CONFIG_MFD_DA9063 is not set
+# CONFIG_MFD_DA9150 is not set
+# CONFIG_MFD_DLN2 is not set
+# CONFIG_MFD_GATEWORKS_GSC is not set
+# CONFIG_MFD_MC13XXX_SPI is not set
+# CONFIG_MFD_MC13XXX_I2C is not set
+# CONFIG_MFD_MP2629 is not set
+# CONFIG_MFD_HI6421_PMIC is not set
+# CONFIG_MFD_HI6421_SPMI is not set
+# CONFIG_LPC_ICH is not set
+# CONFIG_LPC_SCH is not set
+# CONFIG_MFD_IQS62X is not set
+# CONFIG_MFD_JANZ_CMODIO is not set
+# CONFIG_MFD_KEMPLD is not set
+# CONFIG_MFD_88PM800 is not set
+# CONFIG_MFD_88PM805 is not set
+# CONFIG_MFD_88PM860X is not set
+# CONFIG_MFD_MAX14577 is not set
+# CONFIG_MFD_MAX77541 is not set
+# CONFIG_MFD_MAX77620 is not set
+# CONFIG_MFD_MAX77650 is not set
+# CONFIG_MFD_MAX77686 is not set
+# CONFIG_MFD_MAX77693 is not set
+# CONFIG_MFD_MAX77714 is not set
+# CONFIG_MFD_MAX77843 is not set
+# CONFIG_MFD_MAX8907 is not set
+# CONFIG_MFD_MAX8925 is not set
+# CONFIG_MFD_MAX8997 is not set
+# CONFIG_MFD_MAX8998 is not set
+# CONFIG_MFD_MT6360 is not set
+# CONFIG_MFD_MT6370 is not set
+# CONFIG_MFD_MT6397 is not set
+# CONFIG_MFD_MENF21BMC is not set
+# CONFIG_MFD_OCELOT is not set
+# CONFIG_EZX_PCAP is not set
+# CONFIG_MFD_CPCAP is not set
+# CONFIG_MFD_VIPERBOARD is not set
+# CONFIG_MFD_NTXEC is not set
+# CONFIG_MFD_RETU is not set
+# CONFIG_MFD_PCF50633 is not set
+# CONFIG_MFD_SY7636A is not set
+# CONFIG_MFD_RDC321X is not set
+# CONFIG_MFD_RT4831 is not set
+# CONFIG_MFD_RT5033 is not set
+# CONFIG_MFD_RT5120 is not set
+# CONFIG_MFD_RC5T583 is not set
+# CONFIG_MFD_RK8XX_I2C is not set
+# CONFIG_MFD_RK8XX_SPI is not set
+# CONFIG_MFD_RN5T618 is not set
+# CONFIG_MFD_SEC_CORE is not set
+# CONFIG_MFD_SI476X_CORE is not set
CONFIG_MFD_SIMPLE_MFD_SPMI=y
-CONFIG_MFD_SM501=n
-CONFIG_MFD_SKY81452=n
-CONFIG_MFD_STMPE=n
+# CONFIG_MFD_SM501 is not set
+# CONFIG_MFD_SKY81452 is not set
+# CONFIG_MFD_STMPE is not set
CONFIG_MFD_SYSCON=y
-CONFIG_MFD_TI_AM335X_TSCADC=n
-CONFIG_MFD_LP3943=n
-CONFIG_MFD_LP8788=n
-CONFIG_MFD_TI_LMU=n
-CONFIG_MFD_PALMAS=n
-CONFIG_TPS6105X=n
-CONFIG_TPS65010=n
-CONFIG_TPS6507X=n
-CONFIG_MFD_TPS65086=n
-CONFIG_MFD_TPS65090=n
-CONFIG_MFD_TPS65217=n
-CONFIG_MFD_TI_LP873X=n
-CONFIG_MFD_TI_LP87565=n
-CONFIG_MFD_TPS65218=n
-CONFIG_MFD_TPS6586X=n
-CONFIG_MFD_TPS65910=n
-CONFIG_MFD_TPS65912_I2C=n
-CONFIG_MFD_TPS65912_SPI=n
-CONFIG_TWL4030_CORE=n
-CONFIG_TWL6040_CORE=n
-CONFIG_MFD_WL1273_CORE=n
-CONFIG_MFD_LM3533=n
-CONFIG_MFD_TC3589X=n
-CONFIG_MFD_TQMX86=n
-CONFIG_MFD_VX855=n
-CONFIG_MFD_LOCHNAGAR=n
-CONFIG_MFD_ARIZONA_I2C=n
-CONFIG_MFD_ARIZONA_SPI=n
-CONFIG_MFD_WM8400=n
-CONFIG_MFD_WM831X_I2C=n
-CONFIG_MFD_WM831X_SPI=n
-CONFIG_MFD_WM8350_I2C=n
-CONFIG_MFD_WM8994=n
-CONFIG_MFD_ROHM_BD718XX=n
-CONFIG_MFD_ROHM_BD71828=n
-CONFIG_MFD_ROHM_BD957XMUF=n
-CONFIG_MFD_STPMIC1=n
-CONFIG_MFD_STMFX=n
-CONFIG_MFD_ATC260X_I2C=n
-CONFIG_MFD_QCOM_PM8008=n
-CONFIG_RAVE_SP_CORE=n
-CONFIG_MFD_INTEL_M10_BMC=n
-CONFIG_MFD_RSMU_I2C=n
-CONFIG_MFD_RSMU_SPI=n
+# CONFIG_MFD_TI_AM335X_TSCADC is not set
+# CONFIG_MFD_LP3943 is not set
+# CONFIG_MFD_LP8788 is not set
+# CONFIG_MFD_TI_LMU is not set
+# CONFIG_MFD_PALMAS is not set
+# CONFIG_TPS6105X is not set
+# CONFIG_TPS65010 is not set
+# CONFIG_TPS6507X is not set
+# CONFIG_MFD_TPS65086 is not set
+# CONFIG_MFD_TPS65090 is not set
+# CONFIG_MFD_TPS65217 is not set
+# CONFIG_MFD_TI_LP873X is not set
+# CONFIG_MFD_TI_LP87565 is not set
+# CONFIG_MFD_TPS65218 is not set
+# CONFIG_MFD_TPS65219 is not set
+# CONFIG_MFD_TPS6586X is not set
+# CONFIG_MFD_TPS65910 is not set
+# CONFIG_MFD_TPS65912_I2C is not set
+# CONFIG_MFD_TPS65912_SPI is not set
+# CONFIG_MFD_TPS6594_I2C is not set
+# CONFIG_MFD_TPS6594_SPI is not set
+# CONFIG_TWL4030_CORE is not set
+# CONFIG_TWL6040_CORE is not set
+# CONFIG_MFD_WL1273_CORE is not set
+# CONFIG_MFD_LM3533 is not set
+# CONFIG_MFD_TC3589X is not set
+# CONFIG_MFD_TQMX86 is not set
+# CONFIG_MFD_VX855 is not set
+# CONFIG_MFD_LOCHNAGAR is not set
+# CONFIG_MFD_ARIZONA_I2C is not set
+# CONFIG_MFD_ARIZONA_SPI is not set
+# CONFIG_MFD_WM8400 is not set
+# CONFIG_MFD_WM831X_I2C is not set
+# CONFIG_MFD_WM831X_SPI is not set
+# CONFIG_MFD_WM8350_I2C is not set
+# CONFIG_MFD_WM8994 is not set
+# CONFIG_MFD_ROHM_BD718XX is not set
+# CONFIG_MFD_ROHM_BD71828 is not set
+# CONFIG_MFD_ROHM_BD957XMUF is not set
+# CONFIG_MFD_STPMIC1 is not set
+# CONFIG_MFD_STMFX is not set
+# CONFIG_MFD_ATC260X_I2C is not set
+# CONFIG_MFD_QCOM_PM8008 is not set
+# CONFIG_RAVE_SP_CORE is not set
+# CONFIG_MFD_INTEL_M10_BMC_SPI is not set
+# CONFIG_MFD_RSMU_I2C is not set
+# CONFIG_MFD_RSMU_SPI is not set
# end of Multifunction device drivers
-CONFIG_REGULATOR=n
-CONFIG_RC_CORE=n
+CONFIG_REGULATOR=y
+# CONFIG_REGULATOR_DEBUG is not set
+CONFIG_REGULATOR_FIXED_VOLTAGE=y
+# CONFIG_REGULATOR_VIRTUAL_CONSUMER is not set
+# CONFIG_REGULATOR_USERSPACE_CONSUMER is not set
+# CONFIG_REGULATOR_88PG86X is not set
+# CONFIG_REGULATOR_ACT8865 is not set
+# CONFIG_REGULATOR_AD5398 is not set
+# CONFIG_REGULATOR_ARM_SCMI is not set
+# CONFIG_REGULATOR_AW37503 is not set
+# CONFIG_REGULATOR_DA9121 is not set
+# CONFIG_REGULATOR_DA9210 is not set
+# CONFIG_REGULATOR_DA9211 is not set
+# CONFIG_REGULATOR_FAN53555 is not set
+# CONFIG_REGULATOR_FAN53880 is not set
+# CONFIG_REGULATOR_GPIO is not set
+# CONFIG_REGULATOR_ISL9305 is not set
+# CONFIG_REGULATOR_ISL6271A is not set
+# CONFIG_REGULATOR_LP3971 is not set
+# CONFIG_REGULATOR_LP3972 is not set
+# CONFIG_REGULATOR_LP872X is not set
+# CONFIG_REGULATOR_LP8755 is not set
+# CONFIG_REGULATOR_LTC3589 is not set
+# CONFIG_REGULATOR_LTC3676 is not set
+# CONFIG_REGULATOR_MAX1586 is not set
+# CONFIG_REGULATOR_MAX77857 is not set
+# CONFIG_REGULATOR_MAX8649 is not set
+# CONFIG_REGULATOR_MAX8660 is not set
+# CONFIG_REGULATOR_MAX8893 is not set
+# CONFIG_REGULATOR_MAX8952 is not set
+# CONFIG_REGULATOR_MAX8973 is not set
+# CONFIG_REGULATOR_MAX20086 is not set
+# CONFIG_REGULATOR_MAX20411 is not set
+# CONFIG_REGULATOR_MAX77826 is not set
+# CONFIG_REGULATOR_MCP16502 is not set
+# CONFIG_REGULATOR_MP5416 is not set
+# CONFIG_REGULATOR_MP8859 is not set
+# CONFIG_REGULATOR_MP886X is not set
+# CONFIG_REGULATOR_MPQ7920 is not set
+# CONFIG_REGULATOR_MT6311 is not set
+# CONFIG_REGULATOR_MT6315 is not set
+# CONFIG_REGULATOR_PCA9450 is not set
+# CONFIG_REGULATOR_PF8X00 is not set
+# CONFIG_REGULATOR_PFUZE100 is not set
+# CONFIG_REGULATOR_PV88060 is not set
+# CONFIG_REGULATOR_PV88080 is not set
+# CONFIG_REGULATOR_PV88090 is not set
+# CONFIG_REGULATOR_PWM is not set
+# CONFIG_REGULATOR_QCOM_SPMI is not set
+# CONFIG_REGULATOR_QCOM_USB_VBUS is not set
+# CONFIG_REGULATOR_RAA215300 is not set
+# CONFIG_REGULATOR_RASPBERRYPI_TOUCHSCREEN_ATTINY is not set
+# CONFIG_REGULATOR_RT4801 is not set
+# CONFIG_REGULATOR_RT4803 is not set
+# CONFIG_REGULATOR_RT5190A is not set
+# CONFIG_REGULATOR_RT5739 is not set
+# CONFIG_REGULATOR_RT5759 is not set
+# CONFIG_REGULATOR_RT6160 is not set
+# CONFIG_REGULATOR_RT6190 is not set
+# CONFIG_REGULATOR_RT6245 is not set
+# CONFIG_REGULATOR_RTQ2134 is not set
+# CONFIG_REGULATOR_RTMV20 is not set
+# CONFIG_REGULATOR_RTQ6752 is not set
+# CONFIG_REGULATOR_RTQ2208 is not set
+# CONFIG_REGULATOR_SLG51000 is not set
+# CONFIG_REGULATOR_SY8106A is not set
+# CONFIG_REGULATOR_SY8824X is not set
+# CONFIG_REGULATOR_SY8827N is not set
+# CONFIG_REGULATOR_TPS51632 is not set
+# CONFIG_REGULATOR_TPS62360 is not set
+# CONFIG_REGULATOR_TPS6286X is not set
+# CONFIG_REGULATOR_TPS6287X is not set
+# CONFIG_REGULATOR_TPS65023 is not set
+# CONFIG_REGULATOR_TPS6507X is not set
+# CONFIG_REGULATOR_TPS65132 is not set
+# CONFIG_REGULATOR_TPS6524X is not set
+# CONFIG_REGULATOR_VCTRL is not set
+# CONFIG_REGULATOR_QCOM_LABIBB is not set
+# CONFIG_RC_CORE is not set
#
# CEC support
#
-CONFIG_MEDIA_CEC_SUPPORT=n
+# CONFIG_MEDIA_CEC_SUPPORT is not set
# end of CEC support
CONFIG_MEDIA_SUPPORT=m
@@ -3292,12 +3663,12 @@ CONFIG_MEDIA_SUBDRV_AUTOSELECT=y
# Media device types
#
CONFIG_MEDIA_CAMERA_SUPPORT=y
-CONFIG_MEDIA_ANALOG_TV_SUPPORT=n
-CONFIG_MEDIA_DIGITAL_TV_SUPPORT=n
-CONFIG_MEDIA_RADIO_SUPPORT=n
+# CONFIG_MEDIA_ANALOG_TV_SUPPORT is not set
+# CONFIG_MEDIA_DIGITAL_TV_SUPPORT is not set
+# CONFIG_MEDIA_RADIO_SUPPORT is not set
CONFIG_MEDIA_SDR_SUPPORT=y
-CONFIG_MEDIA_PLATFORM_SUPPORT=n
-CONFIG_MEDIA_TEST_SUPPORT=n
+CONFIG_MEDIA_PLATFORM_SUPPORT=y
+# CONFIG_MEDIA_TEST_SUPPORT is not set
# end of Media device types
CONFIG_VIDEO_DEV=m
@@ -3306,12 +3677,13 @@ CONFIG_MEDIA_CONTROLLER=y
#
# Video4Linux options
#
-CONFIG_VIDEO_V4L2=m
CONFIG_VIDEO_V4L2_I2C=y
CONFIG_VIDEO_V4L2_SUBDEV_API=y
-CONFIG_VIDEO_ADV_DEBUG=n
-CONFIG_VIDEO_FIXED_MINOR_RANGES=n
-CONFIG_V4L2_FLASH_LED_CLASS=n
+# CONFIG_VIDEO_ADV_DEBUG is not set
+# CONFIG_VIDEO_FIXED_MINOR_RANGES is not set
+CONFIG_V4L2_FLASH_LED_CLASS=m
+CONFIG_V4L2_FWNODE=m
+CONFIG_V4L2_ASYNC=m
# end of Video4Linux options
#
@@ -3326,37 +3698,146 @@ CONFIG_V4L2_FLASH_LED_CLASS=n
#
# Drivers filtered as selected at 'Filter media drivers'
#
+
+#
+# Media drivers
+#
CONFIG_MEDIA_USB_SUPPORT=y
#
# Webcam devices
#
+# CONFIG_USB_GSPCA is not set
+# CONFIG_USB_PWC is not set
+# CONFIG_USB_S2255 is not set
+# CONFIG_VIDEO_USBTV is not set
CONFIG_USB_VIDEO_CLASS=m
CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y
-CONFIG_USB_GSPCA=n
-CONFIG_USB_PWC=n
-CONFIG_VIDEO_CPIA2=n
-CONFIG_USB_ZR364XX=n
-CONFIG_USB_STKWEBCAM=n
-CONFIG_USB_S2255=n
-CONFIG_VIDEO_USBTV=n
#
# Webcam, TV (analog/digital) USB devices
#
-CONFIG_VIDEO_EM28XX=n
+# CONFIG_VIDEO_EM28XX is not set
#
# Software defined radio USB devices
#
-CONFIG_USB_AIRSPY=n
-CONFIG_USB_HACKRF=n
-CONFIG_USB_MSI2500=n
-CONFIG_MEDIA_PCI_SUPPORT=n
+# CONFIG_USB_AIRSPY is not set
+# CONFIG_USB_HACKRF is not set
+# CONFIG_USB_MSI2500 is not set
+# CONFIG_MEDIA_PCI_SUPPORT is not set
+CONFIG_MEDIA_PLATFORM_DRIVERS=y
+CONFIG_V4L_PLATFORM_DRIVERS=y
+# CONFIG_SDR_PLATFORM_DRIVERS is not set
+# CONFIG_V4L_MEM2MEM_DRIVERS is not set
+# CONFIG_VIDEO_MUX is not set
+
+#
+# Allegro DVT media platform drivers
+#
+
+#
+# Amlogic media platform drivers
+#
+
+#
+# Amphion drivers
+#
+
+#
+# Apple media platform drivers
+#
+CONFIG_VIDEO_APPLE_ISP=m
+
+#
+# Aspeed media platform drivers
+#
+
+#
+# Atmel media platform drivers
+#
+
+#
+# Cadence media platform drivers
+#
+# CONFIG_VIDEO_CADENCE_CSI2RX is not set
+# CONFIG_VIDEO_CADENCE_CSI2TX is not set
+
+#
+# Chips&Media media platform drivers
+#
+
+#
+# Intel media platform drivers
+#
+
+#
+# Marvell media platform drivers
+#
+# CONFIG_VIDEO_CAFE_CCIC is not set
+
+#
+# Mediatek media platform drivers
+#
+
+#
+# Microchip Technology, Inc. media platform drivers
+#
+
+#
+# NVidia media platform drivers
+#
+
+#
+# NXP media platform drivers
+#
+
+#
+# Qualcomm media platform drivers
+#
+
+#
+# Renesas media platform drivers
+#
+
+#
+# Rockchip media platform drivers
+#
+
+#
+# Samsung media platform drivers
+#
+
+#
+# STMicroelectronics media platform drivers
+#
+
+#
+# Sunxi media platform drivers
+#
+
+#
+# Texas Instruments drivers
+#
+
+#
+# Verisilicon media platform drivers
+#
+
+#
+# VIA media platform drivers
+#
+
+#
+# Xilinx media platform drivers
+#
+# CONFIG_VIDEO_XILINX is not set
+CONFIG_UVC_COMMON=m
CONFIG_VIDEOBUF2_CORE=m
CONFIG_VIDEOBUF2_V4L2=m
CONFIG_VIDEOBUF2_MEMOPS=m
CONFIG_VIDEOBUF2_VMALLOC=m
+CONFIG_VIDEOBUF2_DMA_SG=m
# end of Media drivers
CONFIG_MEDIA_HIDE_ANCILLARY_SUBDRV=y
@@ -3364,104 +3845,107 @@ CONFIG_MEDIA_HIDE_ANCILLARY_SUBDRV=y
#
# Media ancillary drivers
#
+CONFIG_VIDEO_CAMERA_SENSOR=y
+# CONFIG_VIDEO_AR0521 is not set
+# CONFIG_VIDEO_HI556 is not set
+# CONFIG_VIDEO_HI846 is not set
+# CONFIG_VIDEO_HI847 is not set
+# CONFIG_VIDEO_IMX208 is not set
+# CONFIG_VIDEO_IMX214 is not set
+# CONFIG_VIDEO_IMX219 is not set
+# CONFIG_VIDEO_IMX258 is not set
+# CONFIG_VIDEO_IMX274 is not set
+# CONFIG_VIDEO_IMX290 is not set
+# CONFIG_VIDEO_IMX296 is not set
+# CONFIG_VIDEO_IMX319 is not set
+# CONFIG_VIDEO_IMX334 is not set
+# CONFIG_VIDEO_IMX335 is not set
+# CONFIG_VIDEO_IMX355 is not set
+# CONFIG_VIDEO_IMX412 is not set
+# CONFIG_VIDEO_IMX415 is not set
+# CONFIG_VIDEO_MT9M001 is not set
+# CONFIG_VIDEO_MT9M111 is not set
+# CONFIG_VIDEO_MT9P031 is not set
+# CONFIG_VIDEO_MT9T112 is not set
+# CONFIG_VIDEO_MT9V011 is not set
+# CONFIG_VIDEO_MT9V032 is not set
+# CONFIG_VIDEO_MT9V111 is not set
+# CONFIG_VIDEO_OG01A1B is not set
+# CONFIG_VIDEO_OV01A10 is not set
+# CONFIG_VIDEO_OV02A10 is not set
+# CONFIG_VIDEO_OV08D10 is not set
+# CONFIG_VIDEO_OV08X40 is not set
+# CONFIG_VIDEO_OV13858 is not set
+# CONFIG_VIDEO_OV13B10 is not set
+# CONFIG_VIDEO_OV2640 is not set
+# CONFIG_VIDEO_OV2659 is not set
+# CONFIG_VIDEO_OV2680 is not set
+# CONFIG_VIDEO_OV2685 is not set
+# CONFIG_VIDEO_OV4689 is not set
+# CONFIG_VIDEO_OV5640 is not set
+# CONFIG_VIDEO_OV5645 is not set
+# CONFIG_VIDEO_OV5647 is not set
+# CONFIG_VIDEO_OV5648 is not set
+# CONFIG_VIDEO_OV5670 is not set
+# CONFIG_VIDEO_OV5675 is not set
+# CONFIG_VIDEO_OV5693 is not set
+# CONFIG_VIDEO_OV5695 is not set
+# CONFIG_VIDEO_OV6650 is not set
+# CONFIG_VIDEO_OV7251 is not set
+# CONFIG_VIDEO_OV7640 is not set
+# CONFIG_VIDEO_OV7670 is not set
+# CONFIG_VIDEO_OV772X is not set
+# CONFIG_VIDEO_OV7740 is not set
+# CONFIG_VIDEO_OV8856 is not set
+# CONFIG_VIDEO_OV8858 is not set
+# CONFIG_VIDEO_OV8865 is not set
+# CONFIG_VIDEO_OV9282 is not set
+# CONFIG_VIDEO_OV9640 is not set
+# CONFIG_VIDEO_OV9650 is not set
+# CONFIG_VIDEO_RDACM20 is not set
+# CONFIG_VIDEO_RDACM21 is not set
+# CONFIG_VIDEO_RJ54N1 is not set
+# CONFIG_VIDEO_S5C73M3 is not set
+# CONFIG_VIDEO_S5K5BAF is not set
+# CONFIG_VIDEO_S5K6A3 is not set
+# CONFIG_VIDEO_ST_VGXY61 is not set
+# CONFIG_VIDEO_CCS is not set
+# CONFIG_VIDEO_ET8EK8 is not set
#
-# audio, video and radio I2C drivers auto-selected by 'Autoselect ancillary drivers'
+# Lens drivers
#
+# CONFIG_VIDEO_AD5820 is not set
+# CONFIG_VIDEO_AK7375 is not set
+# CONFIG_VIDEO_DW9714 is not set
+# CONFIG_VIDEO_DW9719 is not set
+# CONFIG_VIDEO_DW9768 is not set
+# CONFIG_VIDEO_DW9807_VCM is not set
+# end of Lens drivers
#
-# Video and audio decoders
+# Flash devices
#
+# CONFIG_VIDEO_ADP1653 is not set
+# CONFIG_VIDEO_LM3560 is not set
+# CONFIG_VIDEO_LM3646 is not set
+# end of Flash devices
#
-# Camera sensor devices
-#
-CONFIG_VIDEO_HI556=n
-CONFIG_VIDEO_HI846=n
-CONFIG_VIDEO_HI847=n
-CONFIG_VIDEO_IMX208=n
-CONFIG_VIDEO_IMX214=n
-CONFIG_VIDEO_IMX219=n
-CONFIG_VIDEO_IMX258=n
-CONFIG_VIDEO_IMX274=n
-CONFIG_VIDEO_IMX290=n
-CONFIG_VIDEO_IMX319=n
-CONFIG_VIDEO_IMX334=n
-CONFIG_VIDEO_IMX335=n
-CONFIG_VIDEO_IMX355=n
-CONFIG_VIDEO_IMX412=n
-CONFIG_VIDEO_OG01A1B=n
-CONFIG_VIDEO_OV02A10=n
-CONFIG_VIDEO_OV08D10=n
-CONFIG_VIDEO_OV2640=n
-CONFIG_VIDEO_OV2659=n
-CONFIG_VIDEO_OV2680=n
-CONFIG_VIDEO_OV2685=n
-CONFIG_VIDEO_OV2740=n
-CONFIG_VIDEO_OV5640=n
-CONFIG_VIDEO_OV5645=n
-CONFIG_VIDEO_OV5647=n
-CONFIG_VIDEO_OV5648=n
-CONFIG_VIDEO_OV6650=n
-CONFIG_VIDEO_OV5670=n
-CONFIG_VIDEO_OV5675=n
-CONFIG_VIDEO_OV5693=n
-CONFIG_VIDEO_OV5695=n
-CONFIG_VIDEO_OV7251=n
-CONFIG_VIDEO_OV772X=n
-CONFIG_VIDEO_OV7640=n
-CONFIG_VIDEO_OV7670=n
-CONFIG_VIDEO_OV7740=n
-CONFIG_VIDEO_OV8856=n
-CONFIG_VIDEO_OV8865=n
-CONFIG_VIDEO_OV9282=n
-CONFIG_VIDEO_OV9640=n
-CONFIG_VIDEO_OV9650=n
-CONFIG_VIDEO_OV9734=n
-CONFIG_VIDEO_OV13858=n
-CONFIG_VIDEO_OV13B10=n
-CONFIG_VIDEO_VS6624=n
-CONFIG_VIDEO_MT9M001=n
-CONFIG_VIDEO_MT9M032=n
-CONFIG_VIDEO_MT9M111=n
-CONFIG_VIDEO_MT9P031=n
-CONFIG_VIDEO_MT9T001=n
-CONFIG_VIDEO_MT9T112=n
-CONFIG_VIDEO_MT9V011=n
-CONFIG_VIDEO_MT9V032=n
-CONFIG_VIDEO_MT9V111=n
-CONFIG_VIDEO_SR030PC30=n
-CONFIG_VIDEO_NOON010PC30=n
-CONFIG_VIDEO_M5MOLS=n
-CONFIG_VIDEO_RDACM20=n
-CONFIG_VIDEO_RDACM21=n
-CONFIG_VIDEO_RJ54N1=n
-CONFIG_VIDEO_S5K6AA=n
-CONFIG_VIDEO_S5K6A3=n
-CONFIG_VIDEO_S5K4ECGX=n
-CONFIG_VIDEO_S5K5BAF=n
-CONFIG_VIDEO_CCS=n
-CONFIG_VIDEO_ET8EK8=n
-CONFIG_VIDEO_S5C73M3=n
-# end of Camera sensor devices
+# audio, video and radio I2C drivers auto-selected by 'Autoselect ancillary drivers'
+#
#
-# Lens drivers
+# Video and audio decoders
#
-CONFIG_VIDEO_AD5820=n
-CONFIG_VIDEO_AK7375=n
-CONFIG_VIDEO_DW9714=n
-CONFIG_VIDEO_DW9768=n
-CONFIG_VIDEO_DW9807_VCM=n
-# end of Lens drivers
#
-# Flash devices
+# Video serializers and deserializers
#
-CONFIG_VIDEO_ADP1653=n
-CONFIG_VIDEO_LM3560=n
-CONFIG_VIDEO_LM3646=n
-# end of Flash devices
+# CONFIG_VIDEO_DS90UB913 is not set
+# CONFIG_VIDEO_DS90UB953 is not set
+# CONFIG_VIDEO_DS90UB960 is not set
+# end of Video serializers and deserializers
#
# SPI I2C drivers auto-selected by 'Autoselect ancillary drivers'
@@ -3470,6 +3954,7 @@ CONFIG_VIDEO_LM3646=n
#
# Media SPI Adapters
#
+# CONFIG_VIDEO_GS1662 is not set
# end of Media SPI Adapters
CONFIG_MEDIA_TUNER=m
@@ -3477,91 +3962,157 @@ CONFIG_MEDIA_TUNER=m
#
# Tuner drivers auto-selected by 'Autoselect ancillary drivers'
#
+CONFIG_MEDIA_TUNER_MC44S803=m
+CONFIG_MEDIA_TUNER_MT20XX=m
CONFIG_MEDIA_TUNER_SIMPLE=m
-CONFIG_MEDIA_TUNER_TDA8290=m
-CONFIG_MEDIA_TUNER_TDA827X=m
CONFIG_MEDIA_TUNER_TDA18271=m
+CONFIG_MEDIA_TUNER_TDA827X=m
+CONFIG_MEDIA_TUNER_TDA8290=m
CONFIG_MEDIA_TUNER_TDA9887=m
-CONFIG_MEDIA_TUNER_MT20XX=m
CONFIG_MEDIA_TUNER_XC2028=m
-CONFIG_MEDIA_TUNER_XC5000=m
CONFIG_MEDIA_TUNER_XC4000=m
-CONFIG_MEDIA_TUNER_MC44S803=m
+CONFIG_MEDIA_TUNER_XC5000=m
# end of Media ancillary drivers
#
# Graphics support
#
+CONFIG_APERTURE_HELPERS=y
+CONFIG_VIDEO_CMDLINE=y
+CONFIG_VIDEO_NOMODESET=y
+# CONFIG_AUXDISPLAY is not set
CONFIG_DRM=y
-CONFIG_DRM_DP_AUX_CHARDEV=y
-CONFIG_DRM_DEBUG_MM=n
+CONFIG_DRM_MIPI_DSI=y
+# CONFIG_DRM_DEBUG_MM is not set
CONFIG_DRM_KMS_HELPER=y
CONFIG_DRM_FBDEV_EMULATION=y
CONFIG_DRM_FBDEV_OVERALLOC=100
-CONFIG_DRM_LOAD_EDID_FIRMWARE=n
-CONFIG_DRM_DP_CEC=n
+# CONFIG_DRM_LOAD_EDID_FIRMWARE is not set
+CONFIG_DRM_GEM_DMA_HELPER=y
CONFIG_DRM_GEM_SHMEM_HELPER=y
+CONFIG_DRM_SCHED=y
#
# I2C encoder or helper chips
#
-CONFIG_DRM_I2C_CH7006=n
-CONFIG_DRM_I2C_SIL164=n
-CONFIG_DRM_I2C_NXP_TDA998X=n
-CONFIG_DRM_I2C_NXP_TDA9950=n
+# CONFIG_DRM_I2C_CH7006 is not set
+# CONFIG_DRM_I2C_SIL164 is not set
+# CONFIG_DRM_I2C_NXP_TDA998X is not set
+# CONFIG_DRM_I2C_NXP_TDA9950 is not set
# end of I2C encoder or helper chips
#
# ARM devices
#
-CONFIG_DRM_HDLCD=n
-CONFIG_DRM_MALI_DISPLAY=n
-CONFIG_DRM_KOMEDA=n
+# CONFIG_DRM_HDLCD is not set
+# CONFIG_DRM_MALI_DISPLAY is not set
+# CONFIG_DRM_KOMEDA is not set
# end of ARM devices
-CONFIG_DRM_RADEON=n
-CONFIG_DRM_AMDGPU=n
-CONFIG_DRM_NOUVEAU=n
-CONFIG_DRM_VGEM=n
-CONFIG_DRM_VKMS=n
-CONFIG_DRM_VMWGFX=n
-CONFIG_DRM_UDL=n
-CONFIG_DRM_AST=n
-CONFIG_DRM_MGAG200=n
-CONFIG_DRM_RCAR_DW_HDMI=n
-CONFIG_DRM_RCAR_USE_LVDS=n
-CONFIG_DRM_RCAR_MIPI_DSI=n
-CONFIG_DRM_QXL=n
+# CONFIG_DRM_RADEON is not set
+# CONFIG_DRM_AMDGPU is not set
+# CONFIG_DRM_NOUVEAU is not set
+# CONFIG_DRM_VGEM is not set
+# CONFIG_DRM_VKMS is not set
+CONFIG_RUST_DRM_SCHED=y
+CONFIG_RUST_DRM_GEM_SHMEM_HELPER=y
+CONFIG_RUST_APPLE_RTKIT=y
+CONFIG_DRM_ASAHI=m
+# CONFIG_DRM_ASAHI_DEBUG_ALLOCATOR is not set
+# CONFIG_DRM_VMWGFX is not set
+# CONFIG_DRM_UDL is not set
+# CONFIG_DRM_AST is not set
+# CONFIG_DRM_MGAG200 is not set
+# CONFIG_DRM_QXL is not set
CONFIG_DRM_PANEL=y
#
# Display Panels
#
-CONFIG_DRM_PANEL_ABT_Y030XX067A=n
-CONFIG_DRM_PANEL_ARM_VERSATILE=n
-CONFIG_DRM_PANEL_LVDS=n
-CONFIG_DRM_PANEL_SIMPLE=n
-CONFIG_DRM_PANEL_EDP=n
-CONFIG_DRM_PANEL_ILITEK_IL9322=n
-CONFIG_DRM_PANEL_INNOLUX_EJ030NA=n
-CONFIG_DRM_PANEL_SAMSUNG_LD9040=n
-CONFIG_DRM_PANEL_LG_LB035Q02=n
-CONFIG_DRM_PANEL_LG_LG4573=n
-CONFIG_DRM_PANEL_NEC_NL8048HL11=n
-CONFIG_DRM_PANEL_NOVATEK_NT39016=n
-CONFIG_DRM_PANEL_OLIMEX_LCD_OLINUXINO=n
-CONFIG_DRM_PANEL_SAMSUNG_ATNA33XC20=n
-CONFIG_DRM_PANEL_SAMSUNG_DB7430=n
-CONFIG_DRM_PANEL_SAMSUNG_S6D27A1=n
-CONFIG_DRM_PANEL_SAMSUNG_S6E63M0=n
-CONFIG_DRM_PANEL_SAMSUNG_S6E88A0_AMS452EF01=n
-CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0=n
-CONFIG_DRM_PANEL_SEIKO_43WVF1G=n
-CONFIG_DRM_PANEL_SITRONIX_ST7789V=n
-CONFIG_DRM_PANEL_SONY_ACX565AKM=n
-CONFIG_DRM_PANEL_TPO_TD028TTEC1=n
-CONFIG_DRM_PANEL_TPO_TPG110=n
-CONFIG_DRM_PANEL_WIDECHIPS_WS2401=n
+# CONFIG_DRM_PANEL_ABT_Y030XX067A is not set
+# CONFIG_DRM_PANEL_ARM_VERSATILE is not set
+# CONFIG_DRM_PANEL_ASUS_Z00T_TM5P5_NT35596 is not set
+# CONFIG_DRM_PANEL_AUO_A030JTN01 is not set
+# CONFIG_DRM_PANEL_BOE_BF060Y8M_AJ0 is not set
+# CONFIG_DRM_PANEL_BOE_HIMAX8279D is not set
+# CONFIG_DRM_PANEL_BOE_TV101WUM_NL6 is not set
+# CONFIG_DRM_PANEL_DSI_CM is not set
+# CONFIG_DRM_PANEL_LVDS is not set
+# CONFIG_DRM_PANEL_SIMPLE is not set
+# CONFIG_DRM_PANEL_EDP is not set
+# CONFIG_DRM_PANEL_EBBG_FT8719 is not set
+# CONFIG_DRM_PANEL_ELIDA_KD35T133 is not set
+# CONFIG_DRM_PANEL_FEIXIN_K101_IM2BA02 is not set
+# CONFIG_DRM_PANEL_FEIYANG_FY07024DI26A30D is not set
+# CONFIG_DRM_PANEL_HIMAX_HX8394 is not set
+# CONFIG_DRM_PANEL_ILITEK_IL9322 is not set
+# CONFIG_DRM_PANEL_ILITEK_ILI9341 is not set
+# CONFIG_DRM_PANEL_ILITEK_ILI9881C is not set
+# CONFIG_DRM_PANEL_INNOLUX_EJ030NA is not set
+# CONFIG_DRM_PANEL_INNOLUX_P079ZCA is not set
+# CONFIG_DRM_PANEL_JADARD_JD9365DA_H3 is not set
+# CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set
+# CONFIG_DRM_PANEL_JDI_R63452 is not set
+# CONFIG_DRM_PANEL_KHADAS_TS050 is not set
+# CONFIG_DRM_PANEL_KINGDISPLAY_KD097D04 is not set
+# CONFIG_DRM_PANEL_LEADTEK_LTK050H3146W is not set
+# CONFIG_DRM_PANEL_LEADTEK_LTK500HD1829 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_LD9040 is not set
+# CONFIG_DRM_PANEL_LG_LB035Q02 is not set
+# CONFIG_DRM_PANEL_LG_LG4573 is not set
+# CONFIG_DRM_PANEL_MAGNACHIP_D53E6EA8966 is not set
+# CONFIG_DRM_PANEL_NEC_NL8048HL11 is not set
+# CONFIG_DRM_PANEL_NEWVISION_NV3051D is not set
+# CONFIG_DRM_PANEL_NEWVISION_NV3052C is not set
+# CONFIG_DRM_PANEL_NOVATEK_NT35510 is not set
+# CONFIG_DRM_PANEL_NOVATEK_NT35560 is not set
+# CONFIG_DRM_PANEL_NOVATEK_NT35950 is not set
+# CONFIG_DRM_PANEL_NOVATEK_NT36523 is not set
+# CONFIG_DRM_PANEL_NOVATEK_NT36672A is not set
+# CONFIG_DRM_PANEL_NOVATEK_NT39016 is not set
+# CONFIG_DRM_PANEL_MANTIX_MLAF057WE51 is not set
+# CONFIG_DRM_PANEL_OLIMEX_LCD_OLINUXINO is not set
+# CONFIG_DRM_PANEL_ORISETECH_OTA5601A is not set
+# CONFIG_DRM_PANEL_ORISETECH_OTM8009A is not set
+# CONFIG_DRM_PANEL_OSD_OSD101T2587_53TS is not set
+# CONFIG_DRM_PANEL_PANASONIC_VVX10F034N00 is not set
+# CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN is not set
+# CONFIG_DRM_PANEL_RAYDIUM_RM67191 is not set
+# CONFIG_DRM_PANEL_RAYDIUM_RM68200 is not set
+# CONFIG_DRM_PANEL_RONBO_RB070D30 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_ATNA33XC20 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_DB7430 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6D16D0 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6D27A1 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6D7AA0 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6E3HA2 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6E63J0X03 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6E63M0 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6E88A0_AMS452EF01 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_SOFEF00 is not set
+# CONFIG_DRM_PANEL_SEIKO_43WVF1G is not set
+# CONFIG_DRM_PANEL_SHARP_LQ101R1SX01 is not set
+# CONFIG_DRM_PANEL_SHARP_LS037V7DW01 is not set
+# CONFIG_DRM_PANEL_SHARP_LS043T1LE01 is not set
+# CONFIG_DRM_PANEL_SHARP_LS060T1SX01 is not set
+# CONFIG_DRM_PANEL_SITRONIX_ST7701 is not set
+# CONFIG_DRM_PANEL_SITRONIX_ST7703 is not set
+# CONFIG_DRM_PANEL_SITRONIX_ST7789V is not set
+# CONFIG_DRM_PANEL_SONY_ACX565AKM is not set
+# CONFIG_DRM_PANEL_SONY_TD4353_JDI is not set
+# CONFIG_DRM_PANEL_SONY_TULIP_TRULY_NT35521 is not set
+# CONFIG_DRM_PANEL_STARTEK_KD070FHFID015 is not set
+# CONFIG_DRM_PANEL_TDO_TL070WSH30 is not set
+# CONFIG_DRM_PANEL_TPO_TD028TTEC1 is not set
+# CONFIG_DRM_PANEL_TPO_TD043MTEA1 is not set
+# CONFIG_DRM_PANEL_TPO_TPG110 is not set
+# CONFIG_DRM_PANEL_TRULY_NT35597_WQXGA is not set
+# CONFIG_DRM_PANEL_VISIONOX_RM69299 is not set
+# CONFIG_DRM_PANEL_VISIONOX_VTDR6130 is not set
+# CONFIG_DRM_PANEL_VISIONOX_R66451 is not set
+# CONFIG_DRM_PANEL_WIDECHIPS_WS2401 is not set
+# CONFIG_DRM_PANEL_XINPENG_XPP055C272 is not set
# end of Display Panels
CONFIG_DRM_BRIDGE=y
@@ -3570,152 +4121,156 @@ CONFIG_DRM_PANEL_BRIDGE=y
#
# Display Interface Bridges
#
-CONFIG_DRM_CDNS_DSI=n
-CONFIG_DRM_CHIPONE_ICN6211=n
-CONFIG_DRM_CHRONTEL_CH7033=n
-CONFIG_DRM_DISPLAY_CONNECTOR=n
-CONFIG_DRM_ITE_IT6505=n
-CONFIG_DRM_LONTIUM_LT8912B=n
-CONFIG_DRM_LONTIUM_LT9611=n
-CONFIG_DRM_LONTIUM_LT9611UXC=n
-CONFIG_DRM_ITE_IT66121=n
-CONFIG_DRM_LVDS_CODEC=n
-CONFIG_DRM_MEGACHIPS_STDPXXXX_GE_B850V3_FW=n
-CONFIG_DRM_NWL_MIPI_DSI=n
-CONFIG_DRM_NXP_PTN3460=n
-CONFIG_DRM_PARADE_PS8622=n
-CONFIG_DRM_PARADE_PS8640=n
-CONFIG_DRM_SIL_SII8620=n
-CONFIG_DRM_SII902X=n
-CONFIG_DRM_SII9234=n
-CONFIG_DRM_SIMPLE_BRIDGE=n
-CONFIG_DRM_THINE_THC63LVD1024=n
-CONFIG_DRM_TOSHIBA_TC358762=n
-CONFIG_DRM_TOSHIBA_TC358764=n
-CONFIG_DRM_TOSHIBA_TC358767=n
-CONFIG_DRM_TOSHIBA_TC358768=n
-CONFIG_DRM_TOSHIBA_TC358775=n
-CONFIG_DRM_TI_TFP410=n
-CONFIG_DRM_TI_SN65DSI83=n
-CONFIG_DRM_TI_SN65DSI86=n
-CONFIG_DRM_TI_TPD12S015=n
-CONFIG_DRM_ANALOGIX_ANX6345=n
-CONFIG_DRM_ANALOGIX_ANX78XX=n
-CONFIG_DRM_ANALOGIX_ANX7625=n
-CONFIG_DRM_I2C_ADV7511=n
-CONFIG_DRM_CDNS_MHDP8546=n
+# CONFIG_DRM_CHIPONE_ICN6211 is not set
+# CONFIG_DRM_CHRONTEL_CH7033 is not set
+# CONFIG_DRM_DISPLAY_CONNECTOR is not set
+# CONFIG_DRM_ITE_IT6505 is not set
+# CONFIG_DRM_LONTIUM_LT8912B is not set
+# CONFIG_DRM_LONTIUM_LT9211 is not set
+# CONFIG_DRM_LONTIUM_LT9611 is not set
+# CONFIG_DRM_LONTIUM_LT9611UXC is not set
+# CONFIG_DRM_ITE_IT66121 is not set
+# CONFIG_DRM_LVDS_CODEC is not set
+# CONFIG_DRM_MEGACHIPS_STDPXXXX_GE_B850V3_FW is not set
+# CONFIG_DRM_NWL_MIPI_DSI is not set
+# CONFIG_DRM_NXP_PTN3460 is not set
+# CONFIG_DRM_PARADE_PS8622 is not set
+# CONFIG_DRM_PARADE_PS8640 is not set
+# CONFIG_DRM_SAMSUNG_DSIM is not set
+# CONFIG_DRM_SIL_SII8620 is not set
+# CONFIG_DRM_SII902X is not set
+# CONFIG_DRM_SII9234 is not set
+# CONFIG_DRM_SIMPLE_BRIDGE is not set
+# CONFIG_DRM_THINE_THC63LVD1024 is not set
+# CONFIG_DRM_TOSHIBA_TC358762 is not set
+# CONFIG_DRM_TOSHIBA_TC358764 is not set
+# CONFIG_DRM_TOSHIBA_TC358767 is not set
+# CONFIG_DRM_TOSHIBA_TC358768 is not set
+# CONFIG_DRM_TOSHIBA_TC358775 is not set
+# CONFIG_DRM_TI_DLPC3433 is not set
+# CONFIG_DRM_TI_TFP410 is not set
+# CONFIG_DRM_TI_SN65DSI83 is not set
+# CONFIG_DRM_TI_SN65DSI86 is not set
+# CONFIG_DRM_TI_TPD12S015 is not set
+# CONFIG_DRM_ANALOGIX_ANX6345 is not set
+# CONFIG_DRM_ANALOGIX_ANX78XX is not set
+# CONFIG_DRM_ANALOGIX_ANX7625 is not set
+# CONFIG_DRM_I2C_ADV7511 is not set
+# CONFIG_DRM_CDNS_DSI is not set
+# CONFIG_DRM_CDNS_MHDP8546 is not set
# end of Display Interface Bridges
-CONFIG_DRM_ETNAVIV=n
-CONFIG_DRM_HISI_HIBMC=n
-CONFIG_DRM_HISI_KIRIN=n
-CONFIG_DRM_MXSFB=n
-CONFIG_DRM_ARCPGU=n
-CONFIG_DRM_BOCHS=n
-CONFIG_DRM_CIRRUS_QEMU=n
-CONFIG_DRM_GM12U320=n
-CONFIG_DRM_PANEL_MIPI_DBI=n
+# CONFIG_DRM_LOONGSON is not set
+# CONFIG_DRM_ETNAVIV is not set
+# CONFIG_DRM_HISI_HIBMC is not set
+# CONFIG_DRM_HISI_KIRIN is not set
+# CONFIG_DRM_LOGICVC is not set
+# CONFIG_DRM_ARCPGU is not set
+# CONFIG_DRM_BOCHS is not set
+# CONFIG_DRM_CIRRUS_QEMU is not set
+# CONFIG_DRM_GM12U320 is not set
+# CONFIG_DRM_PANEL_MIPI_DBI is not set
CONFIG_DRM_SIMPLEDRM=y
-CONFIG_TINYDRM_HX8357D=n
-CONFIG_TINYDRM_ILI9163=n
-CONFIG_TINYDRM_ILI9225=n
-CONFIG_TINYDRM_ILI9341=n
-CONFIG_TINYDRM_ILI9486=n
-CONFIG_TINYDRM_MI0283QT=n
-CONFIG_TINYDRM_REPAPER=n
-CONFIG_TINYDRM_ST7586=n
-CONFIG_TINYDRM_ST7735R=n
-CONFIG_DRM_PL111=n
-CONFIG_DRM_LIMA=n
-CONFIG_DRM_PANFROST=n
-CONFIG_DRM_TIDSS=n
-CONFIG_DRM_GUD=n
-CONFIG_DRM_SSD130X=n
-CONFIG_DRM_LEGACY=n
+# CONFIG_TINYDRM_HX8357D is not set
+# CONFIG_TINYDRM_ILI9163 is not set
+# CONFIG_TINYDRM_ILI9225 is not set
+# CONFIG_TINYDRM_ILI9341 is not set
+# CONFIG_TINYDRM_ILI9486 is not set
+# CONFIG_TINYDRM_MI0283QT is not set
+# CONFIG_TINYDRM_REPAPER is not set
+# CONFIG_TINYDRM_ST7586 is not set
+# CONFIG_TINYDRM_ST7735R is not set
+# CONFIG_DRM_PL111 is not set
+# CONFIG_DRM_LIMA is not set
+# CONFIG_DRM_PANFROST is not set
+# CONFIG_DRM_TIDSS is not set
+CONFIG_DRM_ADP=m
+# CONFIG_DRM_GUD is not set
+# CONFIG_DRM_SSD130X is not set
+CONFIG_DRM_APPLE=y
+# CONFIG_DRM_LEGACY is not set
CONFIG_DRM_PANEL_ORIENTATION_QUIRKS=y
-CONFIG_DRM_NOMODESET=y
#
# Frame buffer Devices
#
-CONFIG_FB_CMDLINE=y
-CONFIG_FB_NOTIFY=y
CONFIG_FB=y
-CONFIG_FIRMWARE_EDID=n
-CONFIG_FB_CFB_FILLRECT=y
-CONFIG_FB_CFB_COPYAREA=y
-CONFIG_FB_CFB_IMAGEBLIT=y
+# CONFIG_FB_CIRRUS is not set
+# CONFIG_FB_PM2 is not set
+# CONFIG_FB_ARMCLCD is not set
+# CONFIG_FB_CYBER2000 is not set
+# CONFIG_FB_ASILIANT is not set
+# CONFIG_FB_IMSTT is not set
+# CONFIG_FB_UVESA is not set
+# CONFIG_FB_EFI is not set
+# CONFIG_FB_OPENCORES is not set
+# CONFIG_FB_S1D13XXX is not set
+# CONFIG_FB_NVIDIA is not set
+# CONFIG_FB_RIVA is not set
+# CONFIG_FB_I740 is not set
+# CONFIG_FB_MATROX is not set
+# CONFIG_FB_RADEON is not set
+# CONFIG_FB_ATY128 is not set
+# CONFIG_FB_ATY is not set
+# CONFIG_FB_S3 is not set
+# CONFIG_FB_SAVAGE is not set
+# CONFIG_FB_SIS is not set
+# CONFIG_FB_NEOMAGIC is not set
+# CONFIG_FB_KYRO is not set
+# CONFIG_FB_3DFX is not set
+# CONFIG_FB_VOODOO1 is not set
+# CONFIG_FB_VT8623 is not set
+# CONFIG_FB_TRIDENT is not set
+# CONFIG_FB_ARK is not set
+# CONFIG_FB_PM3 is not set
+# CONFIG_FB_CARMINE is not set
+# CONFIG_FB_SMSCUFX is not set
+# CONFIG_FB_UDL is not set
+# CONFIG_FB_IBM_GXT4500 is not set
+# CONFIG_FB_VIRTUAL is not set
+# CONFIG_FB_METRONOME is not set
+# CONFIG_FB_MB862XX is not set
+# CONFIG_FB_SSD1307 is not set
+# CONFIG_FB_SM712 is not set
+CONFIG_FB_CORE=y
+CONFIG_FB_NOTIFY=y
+# CONFIG_FIRMWARE_EDID is not set
+CONFIG_FB_DEVICE=y
CONFIG_FB_SYS_FILLRECT=y
CONFIG_FB_SYS_COPYAREA=y
CONFIG_FB_SYS_IMAGEBLIT=y
-CONFIG_FB_FOREIGN_ENDIAN=n
+# CONFIG_FB_FOREIGN_ENDIAN is not set
CONFIG_FB_SYS_FOPS=y
CONFIG_FB_DEFERRED_IO=y
+CONFIG_FB_DMAMEM_HELPERS=y
+CONFIG_FB_SYSMEM_HELPERS=y
+CONFIG_FB_SYSMEM_HELPERS_DEFERRED=y
CONFIG_FB_MODE_HELPERS=y
-CONFIG_FB_TILEBLITTING=n
-
-#
-# Frame buffer hardware drivers
-#
-CONFIG_FB_CIRRUS=n
-CONFIG_FB_PM2=n
-CONFIG_FB_ARMCLCD=n
-CONFIG_FB_CYBER2000=n
-CONFIG_FB_ASILIANT=n
-CONFIG_FB_IMSTT=n
-CONFIG_FB_UVESA=n
-CONFIG_FB_EFI=y
-CONFIG_FB_OPENCORES=n
-CONFIG_FB_S1D13XXX=n
-CONFIG_FB_NVIDIA=n
-CONFIG_FB_RIVA=n
-CONFIG_FB_I740=n
-CONFIG_FB_MATROX=n
-CONFIG_FB_RADEON=n
-CONFIG_FB_ATY128=n
-CONFIG_FB_ATY=n
-CONFIG_FB_S3=n
-CONFIG_FB_SAVAGE=n
-CONFIG_FB_SIS=n
-CONFIG_FB_NEOMAGIC=n
-CONFIG_FB_KYRO=n
-CONFIG_FB_3DFX=n
-CONFIG_FB_VOODOO1=n
-CONFIG_FB_VT8623=n
-CONFIG_FB_TRIDENT=n
-CONFIG_FB_ARK=n
-CONFIG_FB_PM3=n
-CONFIG_FB_CARMINE=n
-CONFIG_FB_SMSCUFX=n
-CONFIG_FB_UDL=n
-CONFIG_FB_IBM_GXT4500=n
-CONFIG_FB_VIRTUAL=n
-CONFIG_FB_METRONOME=n
-CONFIG_FB_MB862XX=n
-CONFIG_FB_SSD1307=n
-CONFIG_FB_SM712=n
+CONFIG_FB_TILEBLITTING=y
# end of Frame buffer Devices
#
# Backlight & LCD device support
#
-CONFIG_LCD_CLASS_DEVICE=n
+# CONFIG_LCD_CLASS_DEVICE is not set
CONFIG_BACKLIGHT_CLASS_DEVICE=y
-CONFIG_BACKLIGHT_KTD253=n
-CONFIG_BACKLIGHT_PWM=n
-CONFIG_BACKLIGHT_QCOM_WLED=n
-CONFIG_BACKLIGHT_ADP8860=n
-CONFIG_BACKLIGHT_ADP8870=n
-CONFIG_BACKLIGHT_LM3630A=n
-CONFIG_BACKLIGHT_LM3639=n
-CONFIG_BACKLIGHT_LP855X=n
+# CONFIG_BACKLIGHT_KTD253 is not set
+# CONFIG_BACKLIGHT_KTZ8866 is not set
+# CONFIG_BACKLIGHT_PWM is not set
+# CONFIG_BACKLIGHT_QCOM_WLED is not set
+# CONFIG_BACKLIGHT_ADP8860 is not set
+# CONFIG_BACKLIGHT_ADP8870 is not set
+# CONFIG_BACKLIGHT_LM3630A is not set
+# CONFIG_BACKLIGHT_LM3639 is not set
+# CONFIG_BACKLIGHT_LP855X is not set
CONFIG_BACKLIGHT_GPIO=y
-CONFIG_BACKLIGHT_LV5207LP=n
-CONFIG_BACKLIGHT_BD6107=n
-CONFIG_BACKLIGHT_ARCXCNN=n
-CONFIG_BACKLIGHT_LED=y
+# CONFIG_BACKLIGHT_LV5207LP is not set
+# CONFIG_BACKLIGHT_BD6107 is not set
+# CONFIG_BACKLIGHT_ARCXCNN is not set
+# CONFIG_BACKLIGHT_LED is not set
# end of Backlight & LCD device support
+CONFIG_VIDEOMODE_HELPERS=y
CONFIG_HDMI=y
#
@@ -3725,146 +4280,150 @@ CONFIG_DUMMY_CONSOLE=y
CONFIG_DUMMY_CONSOLE_COLUMNS=80
CONFIG_DUMMY_CONSOLE_ROWS=25
CONFIG_FRAMEBUFFER_CONSOLE=y
-CONFIG_FRAMEBUFFER_CONSOLE_LEGACY_ACCELERATION=n
+CONFIG_FRAMEBUFFER_CONSOLE_LEGACY_ACCELERATION=y
CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
-CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=n
-CONFIG_FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER=n
+# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set
+# CONFIG_FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER is not set
# end of Console display driver support
-CONFIG_LOGO=y
-CONFIG_LOGO_LINUX_MONO=n
-CONFIG_LOGO_LINUX_VGA16=n
-CONFIG_LOGO_LINUX_CLUT224=y
+# CONFIG_LOGO is not set
# end of Graphics support
+# CONFIG_DRM_ACCEL is not set
CONFIG_SOUND=y
CONFIG_SND=y
CONFIG_SND_TIMER=y
CONFIG_SND_PCM=y
-CONFIG_SND_DMAENGINE_PCM=y
+CONFIG_SND_DMAENGINE_PCM=m
CONFIG_SND_HWDEP=m
CONFIG_SND_SEQ_DEVICE=m
CONFIG_SND_RAWMIDI=m
CONFIG_SND_JACK=y
CONFIG_SND_JACK_INPUT_DEV=y
-CONFIG_SND_OSSEMUL=n
+# CONFIG_SND_OSSEMUL is not set
CONFIG_SND_PCM_TIMER=y
-CONFIG_SND_HRTIMER=n
+# CONFIG_SND_HRTIMER is not set
CONFIG_SND_DYNAMIC_MINORS=y
CONFIG_SND_MAX_CARDS=32
-CONFIG_SND_SUPPORT_OLD_API=n
+# CONFIG_SND_SUPPORT_OLD_API is not set
CONFIG_SND_PROC_FS=y
CONFIG_SND_VERBOSE_PROCFS=y
-CONFIG_SND_VERBOSE_PRINTK=n
-CONFIG_SND_DEBUG=n
+# CONFIG_SND_VERBOSE_PRINTK is not set
+CONFIG_SND_CTL_FAST_LOOKUP=y
+# CONFIG_SND_DEBUG is not set
+# CONFIG_SND_CTL_INPUT_VALIDATION is not set
CONFIG_SND_VMASTER=y
CONFIG_SND_SEQUENCER=m
-CONFIG_SND_SEQ_DUMMY=n
+# CONFIG_SND_SEQ_DUMMY is not set
CONFIG_SND_SEQ_MIDI_EVENT=m
CONFIG_SND_SEQ_MIDI=m
+# CONFIG_SND_SEQ_UMP is not set
CONFIG_SND_DRIVERS=y
CONFIG_SND_DUMMY=m
CONFIG_SND_ALOOP=m
-CONFIG_SND_VIRMIDI=n
-CONFIG_SND_MTPAV=n
-CONFIG_SND_SERIAL_U16550=n
-CONFIG_SND_MPU401=n
+# CONFIG_SND_PCMTEST is not set
+# CONFIG_SND_VIRMIDI is not set
+# CONFIG_SND_MTPAV is not set
+# CONFIG_SND_SERIAL_U16550 is not set
+# CONFIG_SND_SERIAL_GENERIC is not set
+# CONFIG_SND_MPU401 is not set
CONFIG_SND_PCI=y
-CONFIG_SND_AD1889=n
-CONFIG_SND_ALS300=n
-CONFIG_SND_ALI5451=n
-CONFIG_SND_ATIIXP=n
-CONFIG_SND_ATIIXP_MODEM=n
-CONFIG_SND_AU8810=n
-CONFIG_SND_AU8820=n
-CONFIG_SND_AU8830=n
-CONFIG_SND_AW2=n
-CONFIG_SND_AZT3328=n
-CONFIG_SND_BT87X=n
-CONFIG_SND_CA0106=n
-CONFIG_SND_CMIPCI=n
-CONFIG_SND_OXYGEN=n
-CONFIG_SND_CS4281=n
-CONFIG_SND_CS46XX=n
-CONFIG_SND_CTXFI=n
-CONFIG_SND_DARLA20=n
-CONFIG_SND_GINA20=n
-CONFIG_SND_LAYLA20=n
-CONFIG_SND_DARLA24=n
-CONFIG_SND_GINA24=n
-CONFIG_SND_LAYLA24=n
-CONFIG_SND_MONA=n
-CONFIG_SND_MIA=n
-CONFIG_SND_ECHO3G=n
-CONFIG_SND_INDIGO=n
-CONFIG_SND_INDIGOIO=n
-CONFIG_SND_INDIGODJ=n
-CONFIG_SND_INDIGOIOX=n
-CONFIG_SND_INDIGODJX=n
-CONFIG_SND_EMU10K1=n
-CONFIG_SND_EMU10K1X=n
-CONFIG_SND_ENS1370=n
-CONFIG_SND_ENS1371=n
-CONFIG_SND_ES1938=n
-CONFIG_SND_ES1968=n
-CONFIG_SND_FM801=n
-CONFIG_SND_HDSP=n
-CONFIG_SND_HDSPM=n
-CONFIG_SND_ICE1712=n
-CONFIG_SND_ICE1724=n
-CONFIG_SND_INTEL8X0=n
-CONFIG_SND_INTEL8X0M=n
-CONFIG_SND_KORG1212=n
-CONFIG_SND_LOLA=n
-CONFIG_SND_LX6464ES=n
-CONFIG_SND_MAESTRO3=n
-CONFIG_SND_MIXART=n
-CONFIG_SND_NM256=n
-CONFIG_SND_PCXHR=n
-CONFIG_SND_RIPTIDE=n
-CONFIG_SND_RME32=n
-CONFIG_SND_RME96=n
-CONFIG_SND_RME9652=n
-CONFIG_SND_SE6X=n
-CONFIG_SND_SONICVIBES=n
-CONFIG_SND_TRIDENT=n
-CONFIG_SND_VIA82XX=n
-CONFIG_SND_VIA82XX_MODEM=n
-CONFIG_SND_VIRTUOSO=n
-CONFIG_SND_VX222=n
-CONFIG_SND_YMFPCI=n
+# CONFIG_SND_AD1889 is not set
+# CONFIG_SND_ALS300 is not set
+# CONFIG_SND_ALI5451 is not set
+# CONFIG_SND_ATIIXP is not set
+# CONFIG_SND_ATIIXP_MODEM is not set
+# CONFIG_SND_AU8810 is not set
+# CONFIG_SND_AU8820 is not set
+# CONFIG_SND_AU8830 is not set
+# CONFIG_SND_AW2 is not set
+# CONFIG_SND_AZT3328 is not set
+# CONFIG_SND_BT87X is not set
+# CONFIG_SND_CA0106 is not set
+# CONFIG_SND_CMIPCI is not set
+# CONFIG_SND_OXYGEN is not set
+# CONFIG_SND_CS4281 is not set
+# CONFIG_SND_CS46XX is not set
+# CONFIG_SND_CTXFI is not set
+# CONFIG_SND_DARLA20 is not set
+# CONFIG_SND_GINA20 is not set
+# CONFIG_SND_LAYLA20 is not set
+# CONFIG_SND_DARLA24 is not set
+# CONFIG_SND_GINA24 is not set
+# CONFIG_SND_LAYLA24 is not set
+# CONFIG_SND_MONA is not set
+# CONFIG_SND_MIA is not set
+# CONFIG_SND_ECHO3G is not set
+# CONFIG_SND_INDIGO is not set
+# CONFIG_SND_INDIGOIO is not set
+# CONFIG_SND_INDIGODJ is not set
+# CONFIG_SND_INDIGOIOX is not set
+# CONFIG_SND_INDIGODJX is not set
+# CONFIG_SND_EMU10K1 is not set
+# CONFIG_SND_EMU10K1X is not set
+# CONFIG_SND_ENS1370 is not set
+# CONFIG_SND_ENS1371 is not set
+# CONFIG_SND_ES1938 is not set
+# CONFIG_SND_ES1968 is not set
+# CONFIG_SND_FM801 is not set
+# CONFIG_SND_HDSP is not set
+# CONFIG_SND_HDSPM is not set
+# CONFIG_SND_ICE1712 is not set
+# CONFIG_SND_ICE1724 is not set
+# CONFIG_SND_INTEL8X0 is not set
+# CONFIG_SND_INTEL8X0M is not set
+# CONFIG_SND_KORG1212 is not set
+# CONFIG_SND_LOLA is not set
+# CONFIG_SND_LX6464ES is not set
+# CONFIG_SND_MAESTRO3 is not set
+# CONFIG_SND_MIXART is not set
+# CONFIG_SND_NM256 is not set
+# CONFIG_SND_PCXHR is not set
+# CONFIG_SND_RIPTIDE is not set
+# CONFIG_SND_RME32 is not set
+# CONFIG_SND_RME96 is not set
+# CONFIG_SND_RME9652 is not set
+# CONFIG_SND_SE6X is not set
+# CONFIG_SND_SONICVIBES is not set
+# CONFIG_SND_TRIDENT is not set
+# CONFIG_SND_VIA82XX is not set
+# CONFIG_SND_VIA82XX_MODEM is not set
+# CONFIG_SND_VIRTUOSO is not set
+# CONFIG_SND_VX222 is not set
+# CONFIG_SND_YMFPCI is not set
#
# HD-Audio
#
-CONFIG_SND_HDA_INTEL=n
+# CONFIG_SND_HDA_INTEL is not set
# end of HD-Audio
-CONFIG_SND_HDA_PREALLOC_SIZE=64
-CONFIG_SND_SPI=y
+CONFIG_SND_HDA_PREALLOC_SIZE=4096
+# CONFIG_SND_SPI is not set
CONFIG_SND_USB=y
CONFIG_SND_USB_AUDIO=m
+# CONFIG_SND_USB_AUDIO_MIDI_V2 is not set
CONFIG_SND_USB_AUDIO_USE_MEDIA_CONTROLLER=y
CONFIG_SND_USB_UA101=m
CONFIG_SND_USB_CAIAQ=m
CONFIG_SND_USB_CAIAQ_INPUT=y
CONFIG_SND_USB_6FIRE=m
CONFIG_SND_USB_HIFACE=m
-CONFIG_SND_BCD2000=m
+# CONFIG_SND_BCD2000 is not set
CONFIG_SND_USB_LINE6=m
CONFIG_SND_USB_POD=m
CONFIG_SND_USB_PODHD=m
CONFIG_SND_USB_TONEPORT=m
CONFIG_SND_USB_VARIAX=m
CONFIG_SND_SOC=y
-CONFIG_SND_SOC_ADI=n
-CONFIG_SND_SOC_AMD_ACP=n
-CONFIG_SND_AMD_ACP_CONFIG=n
-CONFIG_SND_SOC_APPLE_SILICON=y
-CONFIG_SND_SOC_APPLE_MCA=y
-CONFIG_SND_ATMEL_SOC=n
-CONFIG_SND_BCM63XX_I2S_WHISTLER=n
-CONFIG_SND_DESIGNWARE_I2S=n
+# CONFIG_SND_SOC_ADI is not set
+# CONFIG_SND_SOC_AMD_ACP is not set
+# CONFIG_SND_AMD_ACP_CONFIG is not set
+CONFIG_SND_SOC_APPLE_MCA=m
+CONFIG_SND_SOC_APPLE_MACAUDIO=m
+# CONFIG_SND_ATMEL_SOC is not set
+# CONFIG_SND_BCM63XX_I2S_WHISTLER is not set
+# CONFIG_SND_DESIGNWARE_I2S is not set
#
# SoC Audio for Freescale CPUs
@@ -3873,210 +4432,232 @@ CONFIG_SND_DESIGNWARE_I2S=n
#
# Common SoC Audio options for Freescale CPUs:
#
-CONFIG_SND_SOC_FSL_ASRC=n
-CONFIG_SND_SOC_FSL_SAI=n
-CONFIG_SND_SOC_FSL_AUDMIX=n
-CONFIG_SND_SOC_FSL_SSI=n
-CONFIG_SND_SOC_FSL_SPDIF=n
-CONFIG_SND_SOC_FSL_ESAI=n
-CONFIG_SND_SOC_FSL_MICFIL=n
-CONFIG_SND_SOC_FSL_XCVR=n
-CONFIG_SND_SOC_IMX_AUDMUX=n
+# CONFIG_SND_SOC_FSL_ASRC is not set
+# CONFIG_SND_SOC_FSL_SAI is not set
+# CONFIG_SND_SOC_FSL_AUDMIX is not set
+# CONFIG_SND_SOC_FSL_SSI is not set
+# CONFIG_SND_SOC_FSL_SPDIF is not set
+# CONFIG_SND_SOC_FSL_ESAI is not set
+# CONFIG_SND_SOC_FSL_MICFIL is not set
+# CONFIG_SND_SOC_FSL_XCVR is not set
+# CONFIG_SND_SOC_IMX_AUDMUX is not set
# end of SoC Audio for Freescale CPUs
-CONFIG_SND_I2S_HI6210_I2S=n
-CONFIG_SND_SOC_IMG=n
-CONFIG_SND_SOC_MTK_BTCVSD=n
-CONFIG_SND_SOC_SOF_TOPLEVEL=n
+# CONFIG_SND_SOC_CHV3_I2S is not set
+# CONFIG_SND_I2S_HI6210_I2S is not set
+# CONFIG_SND_SOC_IMG is not set
+# CONFIG_SND_SOC_MTK_BTCVSD is not set
+# CONFIG_SND_SOC_SOF_TOPLEVEL is not set
#
# STMicroelectronics STM32 SOC audio support
#
# end of STMicroelectronics STM32 SOC audio support
-CONFIG_SND_SOC_XILINX_I2S=n
-CONFIG_SND_SOC_XILINX_AUDIO_FORMATTER=n
-CONFIG_SND_SOC_XILINX_SPDIF=n
-CONFIG_SND_SOC_XTFPGA_I2S=n
+# CONFIG_SND_SOC_XILINX_I2S is not set
+# CONFIG_SND_SOC_XILINX_AUDIO_FORMATTER is not set
+# CONFIG_SND_SOC_XILINX_SPDIF is not set
+# CONFIG_SND_SOC_XTFPGA_I2S is not set
CONFIG_SND_SOC_I2C_AND_SPI=y
#
# CODEC drivers
#
-CONFIG_SND_SOC_AC97_CODEC=n
-CONFIG_SND_SOC_ADAU1372_I2C=n
-CONFIG_SND_SOC_ADAU1372_SPI=n
-CONFIG_SND_SOC_ADAU1701=n
-CONFIG_SND_SOC_ADAU1761_I2C=n
-CONFIG_SND_SOC_ADAU1761_SPI=n
-CONFIG_SND_SOC_ADAU7002=n
-CONFIG_SND_SOC_ADAU7118_HW=n
-CONFIG_SND_SOC_ADAU7118_I2C=n
-CONFIG_SND_SOC_AK4104=n
-CONFIG_SND_SOC_AK4118=n
-CONFIG_SND_SOC_AK4375=n
-CONFIG_SND_SOC_AK4458=n
-CONFIG_SND_SOC_AK4554=n
-CONFIG_SND_SOC_AK4613=n
-CONFIG_SND_SOC_AK4642=n
-CONFIG_SND_SOC_AK5386=n
-CONFIG_SND_SOC_AK5558=n
-CONFIG_SND_SOC_ALC5623=n
-CONFIG_SND_SOC_AW8738=n
-CONFIG_SND_SOC_BD28623=n
-CONFIG_SND_SOC_BT_SCO=n
-CONFIG_SND_SOC_CS35L32=n
-CONFIG_SND_SOC_CS35L33=n
-CONFIG_SND_SOC_CS35L34=n
-CONFIG_SND_SOC_CS35L35=n
-CONFIG_SND_SOC_CS35L36=n
-CONFIG_SND_SOC_CS35L41_SPI=n
-CONFIG_SND_SOC_CS35L41_I2C=n
+# CONFIG_SND_SOC_AC97_CODEC is not set
+# CONFIG_SND_SOC_ADAU1372_I2C is not set
+# CONFIG_SND_SOC_ADAU1372_SPI is not set
+# CONFIG_SND_SOC_ADAU1701 is not set
+# CONFIG_SND_SOC_ADAU1761_I2C is not set
+# CONFIG_SND_SOC_ADAU1761_SPI is not set
+# CONFIG_SND_SOC_ADAU7002 is not set
+# CONFIG_SND_SOC_ADAU7118_HW is not set
+# CONFIG_SND_SOC_ADAU7118_I2C is not set
+# CONFIG_SND_SOC_AK4104 is not set
+# CONFIG_SND_SOC_AK4118 is not set
+# CONFIG_SND_SOC_AK4375 is not set
+# CONFIG_SND_SOC_AK4458 is not set
+# CONFIG_SND_SOC_AK4554 is not set
+# CONFIG_SND_SOC_AK4613 is not set
+# CONFIG_SND_SOC_AK4642 is not set
+# CONFIG_SND_SOC_AK5386 is not set
+# CONFIG_SND_SOC_AK5558 is not set
+# CONFIG_SND_SOC_ALC5623 is not set
+# CONFIG_SND_SOC_AW8738 is not set
+# CONFIG_SND_SOC_AW88395 is not set
+# CONFIG_SND_SOC_AW88261 is not set
+# CONFIG_SND_SOC_BD28623 is not set
+# CONFIG_SND_SOC_BT_SCO is not set
+# CONFIG_SND_SOC_CHV3_CODEC is not set
+# CONFIG_SND_SOC_CS35L32 is not set
+# CONFIG_SND_SOC_CS35L33 is not set
+# CONFIG_SND_SOC_CS35L34 is not set
+# CONFIG_SND_SOC_CS35L35 is not set
+# CONFIG_SND_SOC_CS35L36 is not set
+# CONFIG_SND_SOC_CS35L41_SPI is not set
+# CONFIG_SND_SOC_CS35L41_I2C is not set
+# CONFIG_SND_SOC_CS35L45_SPI is not set
+# CONFIG_SND_SOC_CS35L45_I2C is not set
+# CONFIG_SND_SOC_CS35L56_I2C is not set
+# CONFIG_SND_SOC_CS35L56_SPI is not set
+CONFIG_SND_SOC_CS42L42_CORE=y
CONFIG_SND_SOC_CS42L42=m
-CONFIG_SND_SOC_CS42L51_I2C=n
-CONFIG_SND_SOC_CS42L52=n
-CONFIG_SND_SOC_CS42L56=n
-CONFIG_SND_SOC_CS42L73=n
-CONFIG_SND_SOC_CS4234=n
-CONFIG_SND_SOC_CS4265=n
-CONFIG_SND_SOC_CS4270=n
-CONFIG_SND_SOC_CS4271_I2C=n
-CONFIG_SND_SOC_CS4271_SPI=n
-CONFIG_SND_SOC_CS42XX8_I2C=n
-CONFIG_SND_SOC_CS43130=n
-CONFIG_SND_SOC_CS4341=n
-CONFIG_SND_SOC_CS4349=n
-CONFIG_SND_SOC_CS53L30=n
-CONFIG_SND_SOC_CX2072X=n
-CONFIG_SND_SOC_DA7213=n
+# CONFIG_SND_SOC_CS42L51_I2C is not set
+# CONFIG_SND_SOC_CS42L52 is not set
+# CONFIG_SND_SOC_CS42L56 is not set
+# CONFIG_SND_SOC_CS42L73 is not set
+CONFIG_SND_SOC_CS42L83=y
+CONFIG_SND_SOC_CS42L84=y
+# CONFIG_SND_SOC_CS4234 is not set
+# CONFIG_SND_SOC_CS4265 is not set
+# CONFIG_SND_SOC_CS4270 is not set
+# CONFIG_SND_SOC_CS4271_I2C is not set
+# CONFIG_SND_SOC_CS4271_SPI is not set
+# CONFIG_SND_SOC_CS42XX8_I2C is not set
+# CONFIG_SND_SOC_CS43130 is not set
+# CONFIG_SND_SOC_CS4341 is not set
+# CONFIG_SND_SOC_CS4349 is not set
+# CONFIG_SND_SOC_CS53L30 is not set
+# CONFIG_SND_SOC_CX2072X is not set
+# CONFIG_SND_SOC_DA7213 is not set
CONFIG_SND_SOC_DMIC=m
-CONFIG_SND_SOC_ES7134=n
-CONFIG_SND_SOC_ES7241=n
-CONFIG_SND_SOC_ES8316=n
-CONFIG_SND_SOC_ES8328=m
-CONFIG_SND_SOC_ES8328_I2C=m
-CONFIG_SND_SOC_ES8328_SPI=m
-CONFIG_SND_SOC_GTM601=n
-CONFIG_SND_SOC_ICS43432=n
-CONFIG_SND_SOC_INNO_RK3036=n
-CONFIG_SND_SOC_MAX98088=n
-CONFIG_SND_SOC_MAX98357A=n
-CONFIG_SND_SOC_MAX98504=n
-CONFIG_SND_SOC_MAX9867=n
-CONFIG_SND_SOC_MAX98927=n
-CONFIG_SND_SOC_MAX98520=n
-CONFIG_SND_SOC_MAX98373_I2C=n
-CONFIG_SND_SOC_MAX98390=n
-CONFIG_SND_SOC_MAX9860=n
-CONFIG_SND_SOC_MSM8916_WCD_ANALOG=n
-CONFIG_SND_SOC_MSM8916_WCD_DIGITAL=n
-CONFIG_SND_SOC_PCM1681=n
-CONFIG_SND_SOC_PCM1789_I2C=n
-CONFIG_SND_SOC_PCM179X_I2C=n
-CONFIG_SND_SOC_PCM179X_SPI=n
-CONFIG_SND_SOC_PCM186X_I2C=n
-CONFIG_SND_SOC_PCM186X_SPI=n
-CONFIG_SND_SOC_PCM3060_I2C=n
-CONFIG_SND_SOC_PCM3060_SPI=n
-CONFIG_SND_SOC_PCM3168A_I2C=n
-CONFIG_SND_SOC_PCM3168A_SPI=n
-CONFIG_SND_SOC_PCM5102A=n
-CONFIG_SND_SOC_PCM512x_I2C=n
-CONFIG_SND_SOC_PCM512x_SPI=n
-CONFIG_SND_SOC_RK3328=n
-CONFIG_SND_SOC_RT5616=n
-CONFIG_SND_SOC_RT5631=n
-CONFIG_SND_SOC_RT5640=n
-CONFIG_SND_SOC_RT5659=n
-CONFIG_SND_SOC_RT9120=n
-CONFIG_SND_SOC_SGTL5000=n
+# CONFIG_SND_SOC_ES7134 is not set
+# CONFIG_SND_SOC_ES7241 is not set
+# CONFIG_SND_SOC_ES8316 is not set
+# CONFIG_SND_SOC_ES8326 is not set
+# CONFIG_SND_SOC_ES8328_I2C is not set
+# CONFIG_SND_SOC_ES8328_SPI is not set
+# CONFIG_SND_SOC_GTM601 is not set
+# CONFIG_SND_SOC_HDA is not set
+# CONFIG_SND_SOC_ICS43432 is not set
+# CONFIG_SND_SOC_IDT821034 is not set
+# CONFIG_SND_SOC_INNO_RK3036 is not set
+# CONFIG_SND_SOC_MAX98088 is not set
+# CONFIG_SND_SOC_MAX98090 is not set
+# CONFIG_SND_SOC_MAX98357A is not set
+# CONFIG_SND_SOC_MAX98504 is not set
+# CONFIG_SND_SOC_MAX9867 is not set
+# CONFIG_SND_SOC_MAX98927 is not set
+# CONFIG_SND_SOC_MAX98520 is not set
+# CONFIG_SND_SOC_MAX98373_I2C is not set
+# CONFIG_SND_SOC_MAX98388 is not set
+# CONFIG_SND_SOC_MAX98390 is not set
+# CONFIG_SND_SOC_MAX98396 is not set
+# CONFIG_SND_SOC_MAX9860 is not set
+# CONFIG_SND_SOC_MSM8916_WCD_ANALOG is not set
+# CONFIG_SND_SOC_MSM8916_WCD_DIGITAL is not set
+# CONFIG_SND_SOC_PCM1681 is not set
+# CONFIG_SND_SOC_PCM1789_I2C is not set
+# CONFIG_SND_SOC_PCM179X_I2C is not set
+# CONFIG_SND_SOC_PCM179X_SPI is not set
+# CONFIG_SND_SOC_PCM186X_I2C is not set
+# CONFIG_SND_SOC_PCM186X_SPI is not set
+# CONFIG_SND_SOC_PCM3060_I2C is not set
+# CONFIG_SND_SOC_PCM3060_SPI is not set
+# CONFIG_SND_SOC_PCM3168A_I2C is not set
+# CONFIG_SND_SOC_PCM3168A_SPI is not set
+# CONFIG_SND_SOC_PCM5102A is not set
+# CONFIG_SND_SOC_PCM512x_I2C is not set
+# CONFIG_SND_SOC_PCM512x_SPI is not set
+# CONFIG_SND_SOC_PEB2466 is not set
+# CONFIG_SND_SOC_RK3328 is not set
+# CONFIG_SND_SOC_RT5616 is not set
+# CONFIG_SND_SOC_RT5631 is not set
+# CONFIG_SND_SOC_RT5640 is not set
+# CONFIG_SND_SOC_RT5659 is not set
+# CONFIG_SND_SOC_RT9120 is not set
+# CONFIG_SND_SOC_SGTL5000 is not set
CONFIG_SND_SOC_SIMPLE_AMPLIFIER=m
CONFIG_SND_SOC_SIMPLE_MUX=m
-CONFIG_SND_SOC_SPDIF=n
-CONFIG_SND_SOC_SSM2305=n
-CONFIG_SND_SOC_SSM2518=n
-CONFIG_SND_SOC_SSM2602_SPI=n
-CONFIG_SND_SOC_SSM2602_I2C=n
-CONFIG_SND_SOC_SSM4567=n
-CONFIG_SND_SOC_STA32X=n
-CONFIG_SND_SOC_STA350=n
-CONFIG_SND_SOC_STI_SAS=n
-CONFIG_SND_SOC_TAS2552=n
-CONFIG_SND_SOC_TAS2562=n
-CONFIG_SND_SOC_TAS2764=n
+# CONFIG_SND_SOC_SMA1303 is not set
+# CONFIG_SND_SOC_SPDIF is not set
+# CONFIG_SND_SOC_SRC4XXX_I2C is not set
+# CONFIG_SND_SOC_SSM2305 is not set
+# CONFIG_SND_SOC_SSM2518 is not set
+# CONFIG_SND_SOC_SSM2602_SPI is not set
+# CONFIG_SND_SOC_SSM2602_I2C is not set
+# CONFIG_SND_SOC_SSM3515 is not set
+# CONFIG_SND_SOC_SSM4567 is not set
+# CONFIG_SND_SOC_STA32X is not set
+# CONFIG_SND_SOC_STA350 is not set
+# CONFIG_SND_SOC_STI_SAS is not set
+# CONFIG_SND_SOC_TAS2552 is not set
+# CONFIG_SND_SOC_TAS2562 is not set
+CONFIG_SND_SOC_TAS2764=m
CONFIG_SND_SOC_TAS2770=m
-CONFIG_SND_SOC_TAS5086=n
-CONFIG_SND_SOC_TAS571X=n
-CONFIG_SND_SOC_TAS5720=n
-CONFIG_SND_SOC_TAS5805M=n
-CONFIG_SND_SOC_TAS6424=n
-CONFIG_SND_SOC_TDA7419=n
-CONFIG_SND_SOC_TFA9879=n
-CONFIG_SND_SOC_TFA989X=n
-CONFIG_SND_SOC_TLV320ADC3XXX=n
-CONFIG_SND_SOC_TLV320AIC23_I2C=n
-CONFIG_SND_SOC_TLV320AIC23_SPI=n
-CONFIG_SND_SOC_TLV320AIC31XX=n
-CONFIG_SND_SOC_TLV320AIC32X4_I2C=n
-CONFIG_SND_SOC_TLV320AIC32X4_SPI=n
-CONFIG_SND_SOC_TLV320AIC3X_I2C=n
-CONFIG_SND_SOC_TLV320AIC3X_SPI=n
-CONFIG_SND_SOC_TLV320ADCX140=n
-CONFIG_SND_SOC_TS3A227E=n
-CONFIG_SND_SOC_TSCS42XX=n
-CONFIG_SND_SOC_TSCS454=n
-CONFIG_SND_SOC_UDA1334=n
-CONFIG_SND_SOC_WM8510=n
-CONFIG_SND_SOC_WM8523=n
-CONFIG_SND_SOC_WM8524=n
-CONFIG_SND_SOC_WM8580=n
-CONFIG_SND_SOC_WM8711=n
-CONFIG_SND_SOC_WM8728=n
-CONFIG_SND_SOC_WM8731=n
-CONFIG_SND_SOC_WM8737=n
-CONFIG_SND_SOC_WM8741=n
-CONFIG_SND_SOC_WM8750=n
-CONFIG_SND_SOC_WM8753=n
-CONFIG_SND_SOC_WM8770=n
-CONFIG_SND_SOC_WM8776=n
-CONFIG_SND_SOC_WM8782=n
-CONFIG_SND_SOC_WM8804_I2C=n
-CONFIG_SND_SOC_WM8804_SPI=n
-CONFIG_SND_SOC_WM8903=n
-CONFIG_SND_SOC_WM8904=n
-CONFIG_SND_SOC_WM8960=n
-CONFIG_SND_SOC_WM8962=n
-CONFIG_SND_SOC_WM8974=n
-CONFIG_SND_SOC_WM8978=n
-CONFIG_SND_SOC_WM8985=n
-CONFIG_SND_SOC_ZL38060=n
-CONFIG_SND_SOC_MAX9759=n
-CONFIG_SND_SOC_MT6351=n
-CONFIG_SND_SOC_MT6358=n
-CONFIG_SND_SOC_MT6660=n
-CONFIG_SND_SOC_NAU8315=n
-CONFIG_SND_SOC_NAU8540=n
-CONFIG_SND_SOC_NAU8810=n
-CONFIG_SND_SOC_NAU8821=n
-CONFIG_SND_SOC_NAU8822=n
-CONFIG_SND_SOC_NAU8824=n
-CONFIG_SND_SOC_TPA6130A2=n
-CONFIG_SND_SOC_LPASS_WSA_MACRO=n
-CONFIG_SND_SOC_LPASS_VA_MACRO=n
-CONFIG_SND_SOC_LPASS_RX_MACRO=n
-CONFIG_SND_SOC_LPASS_TX_MACRO=n
+CONFIG_SND_SOC_TAS2780=m
+# CONFIG_SND_SOC_TAS2781_I2C is not set
+# CONFIG_SND_SOC_TAS5086 is not set
+# CONFIG_SND_SOC_TAS571X is not set
+# CONFIG_SND_SOC_TAS5720 is not set
+# CONFIG_SND_SOC_TAS5805M is not set
+# CONFIG_SND_SOC_TAS6424 is not set
+# CONFIG_SND_SOC_TDA7419 is not set
+# CONFIG_SND_SOC_TFA9879 is not set
+# CONFIG_SND_SOC_TFA989X is not set
+# CONFIG_SND_SOC_TLV320ADC3XXX is not set
+# CONFIG_SND_SOC_TLV320AIC23_I2C is not set
+# CONFIG_SND_SOC_TLV320AIC23_SPI is not set
+# CONFIG_SND_SOC_TLV320AIC31XX is not set
+# CONFIG_SND_SOC_TLV320AIC32X4_I2C is not set
+# CONFIG_SND_SOC_TLV320AIC32X4_SPI is not set
+# CONFIG_SND_SOC_TLV320AIC3X_I2C is not set
+# CONFIG_SND_SOC_TLV320AIC3X_SPI is not set
+# CONFIG_SND_SOC_TLV320ADCX140 is not set
+# CONFIG_SND_SOC_TS3A227E is not set
+# CONFIG_SND_SOC_TSCS42XX is not set
+# CONFIG_SND_SOC_TSCS454 is not set
+# CONFIG_SND_SOC_UDA1334 is not set
+# CONFIG_SND_SOC_WM8510 is not set
+# CONFIG_SND_SOC_WM8523 is not set
+# CONFIG_SND_SOC_WM8524 is not set
+# CONFIG_SND_SOC_WM8580 is not set
+# CONFIG_SND_SOC_WM8711 is not set
+# CONFIG_SND_SOC_WM8728 is not set
+# CONFIG_SND_SOC_WM8731_I2C is not set
+# CONFIG_SND_SOC_WM8731_SPI is not set
+# CONFIG_SND_SOC_WM8737 is not set
+# CONFIG_SND_SOC_WM8741 is not set
+# CONFIG_SND_SOC_WM8750 is not set
+# CONFIG_SND_SOC_WM8753 is not set
+# CONFIG_SND_SOC_WM8770 is not set
+# CONFIG_SND_SOC_WM8776 is not set
+# CONFIG_SND_SOC_WM8782 is not set
+# CONFIG_SND_SOC_WM8804_I2C is not set
+# CONFIG_SND_SOC_WM8804_SPI is not set
+# CONFIG_SND_SOC_WM8903 is not set
+# CONFIG_SND_SOC_WM8904 is not set
+# CONFIG_SND_SOC_WM8940 is not set
+# CONFIG_SND_SOC_WM8960 is not set
+# CONFIG_SND_SOC_WM8961 is not set
+# CONFIG_SND_SOC_WM8962 is not set
+# CONFIG_SND_SOC_WM8974 is not set
+# CONFIG_SND_SOC_WM8978 is not set
+# CONFIG_SND_SOC_WM8985 is not set
+# CONFIG_SND_SOC_ZL38060 is not set
+# CONFIG_SND_SOC_MAX9759 is not set
+# CONFIG_SND_SOC_MT6351 is not set
+# CONFIG_SND_SOC_MT6358 is not set
+# CONFIG_SND_SOC_MT6660 is not set
+# CONFIG_SND_SOC_NAU8315 is not set
+# CONFIG_SND_SOC_NAU8540 is not set
+# CONFIG_SND_SOC_NAU8810 is not set
+# CONFIG_SND_SOC_NAU8821 is not set
+# CONFIG_SND_SOC_NAU8822 is not set
+# CONFIG_SND_SOC_NAU8824 is not set
+# CONFIG_SND_SOC_TPA6130A2 is not set
+# CONFIG_SND_SOC_LPASS_WSA_MACRO is not set
+# CONFIG_SND_SOC_LPASS_VA_MACRO is not set
+# CONFIG_SND_SOC_LPASS_RX_MACRO is not set
+# CONFIG_SND_SOC_LPASS_TX_MACRO is not set
# end of CODEC drivers
-CONFIG_SND_SIMPLE_CARD_UTILS=y
+CONFIG_SND_SIMPLE_CARD_UTILS=m
CONFIG_SND_SIMPLE_CARD=m
CONFIG_SND_AUDIO_GRAPH_CARD=m
-CONFIG_SND_AUDIO_GRAPH_CARD2=n
-CONFIG_SND_TEST_COMPONENT=n
+# CONFIG_SND_AUDIO_GRAPH_CARD2 is not set
+# CONFIG_SND_TEST_COMPONENT is not set
CONFIG_SND_VIRTIO=m
-
-#
-# HID support
-#
+CONFIG_HID_SUPPORT=y
CONFIG_HID=y
CONFIG_HID_BATTERY_STRENGTH=y
CONFIG_HIDRAW=y
@@ -4086,121 +4667,129 @@ CONFIG_HID_GENERIC=y
#
# Special HID drivers
#
-CONFIG_HID_A4TECH=n
-CONFIG_HID_ACCUTOUCH=n
-CONFIG_HID_ACRUX=n
+# CONFIG_HID_A4TECH is not set
+# CONFIG_HID_ACCUTOUCH is not set
+# CONFIG_HID_ACRUX is not set
CONFIG_HID_APPLE=y
-CONFIG_HID_APPLEIR=n
-CONFIG_HID_ASUS=n
-CONFIG_HID_AUREAL=n
-CONFIG_HID_BELKIN=n
-CONFIG_HID_BETOP_FF=n
-CONFIG_HID_BIGBEN_FF=n
-CONFIG_HID_CHERRY=n
-CONFIG_HID_CHICONY=n
-CONFIG_HID_CORSAIR=n
-CONFIG_HID_COUGAR=n
-CONFIG_HID_MACALLY=n
-CONFIG_HID_PRODIKEYS=n
-CONFIG_HID_CMEDIA=n
-CONFIG_HID_CP2112=n
-CONFIG_HID_CREATIVE_SB0540=n
-CONFIG_HID_CYPRESS=n
-CONFIG_HID_DRAGONRISE=n
-CONFIG_HID_EMS_FF=n
-CONFIG_HID_ELAN=n
-CONFIG_HID_ELECOM=n
-CONFIG_HID_ELO=n
-CONFIG_HID_EZKEY=n
-CONFIG_HID_FT260=n
-CONFIG_HID_GEMBIRD=n
-CONFIG_HID_GFRM=n
-CONFIG_HID_GLORIOUS=n
-CONFIG_HID_HOLTEK=n
-CONFIG_HID_VIVALDI=n
-CONFIG_HID_GT683R=n
-CONFIG_HID_KEYTOUCH=n
-CONFIG_HID_KYE=n
+# CONFIG_HID_APPLEIR is not set
+# CONFIG_HID_ASUS is not set
+# CONFIG_HID_AUREAL is not set
+# CONFIG_HID_BELKIN is not set
+# CONFIG_HID_BETOP_FF is not set
+# CONFIG_HID_BIGBEN_FF is not set
+# CONFIG_HID_CHERRY is not set
+# CONFIG_HID_CHICONY is not set
+# CONFIG_HID_CORSAIR is not set
+# CONFIG_HID_COUGAR is not set
+# CONFIG_HID_MACALLY is not set
+# CONFIG_HID_PRODIKEYS is not set
+# CONFIG_HID_CMEDIA is not set
+# CONFIG_HID_CP2112 is not set
+# CONFIG_HID_CREATIVE_SB0540 is not set
+# CONFIG_HID_CYPRESS is not set
+# CONFIG_HID_DRAGONRISE is not set
+# CONFIG_HID_EMS_FF is not set
+# CONFIG_HID_ELAN is not set
+# CONFIG_HID_ELECOM is not set
+# CONFIG_HID_ELO is not set
+# CONFIG_HID_EVISION is not set
+# CONFIG_HID_EZKEY is not set
+# CONFIG_HID_FT260 is not set
+# CONFIG_HID_GEMBIRD is not set
+# CONFIG_HID_GFRM is not set
+# CONFIG_HID_GLORIOUS is not set
+# CONFIG_HID_HOLTEK is not set
+# CONFIG_HID_GOOGLE_STADIA_FF is not set
+# CONFIG_HID_VIVALDI is not set
+# CONFIG_HID_GT683R is not set
+# CONFIG_HID_KEYTOUCH is not set
+# CONFIG_HID_KYE is not set
CONFIG_HID_UCLOGIC=m
-CONFIG_HID_WALTOP=n
-CONFIG_HID_VIEWSONIC=n
-CONFIG_HID_XIAOMI=n
-CONFIG_HID_GYRATION=n
-CONFIG_HID_ICADE=n
-CONFIG_HID_ITE=n
-CONFIG_HID_JABRA=n
-CONFIG_HID_TWINHAN=n
-CONFIG_HID_KENSINGTON=n
-CONFIG_HID_LCPOWER=n
-CONFIG_HID_LED=n
-CONFIG_HID_LENOVO=n
-CONFIG_HID_LETSKETCH=n
-CONFIG_HID_LOGITECH=n
+# CONFIG_HID_WALTOP is not set
+# CONFIG_HID_VIEWSONIC is not set
+# CONFIG_HID_VRC2 is not set
+# CONFIG_HID_XIAOMI is not set
+# CONFIG_HID_GYRATION is not set
+# CONFIG_HID_ICADE is not set
+# CONFIG_HID_ITE is not set
+# CONFIG_HID_JABRA is not set
+# CONFIG_HID_TWINHAN is not set
+# CONFIG_HID_KENSINGTON is not set
+# CONFIG_HID_LCPOWER is not set
+# CONFIG_HID_LED is not set
+# CONFIG_HID_LENOVO is not set
+# CONFIG_HID_LETSKETCH is not set
+# CONFIG_HID_LOGITECH is not set
CONFIG_HID_MAGICMOUSE=y
-CONFIG_HID_MALTRON=n
-CONFIG_HID_MAYFLASH=n
-CONFIG_HID_REDRAGON=n
-CONFIG_HID_MICROSOFT=n
-CONFIG_HID_MONTEREY=n
-CONFIG_HID_MULTITOUCH=n
-CONFIG_HID_NINTENDO=n
-CONFIG_HID_NTI=n
-CONFIG_HID_NTRIG=n
-CONFIG_HID_ORTEK=n
-CONFIG_HID_PANTHERLORD=n
-CONFIG_HID_PENMOUNT=n
-CONFIG_HID_PETALYNX=n
-CONFIG_HID_PICOLCD=n
-CONFIG_HID_PLANTRONICS=n
-CONFIG_HID_PLAYSTATION=n
-CONFIG_HID_RAZER=n
-CONFIG_HID_PRIMAX=n
-CONFIG_HID_RETRODE=n
-CONFIG_HID_ROCCAT=n
-CONFIG_HID_SAITEK=n
-CONFIG_HID_SAMSUNG=n
-CONFIG_HID_SEMITEK=n
-CONFIG_HID_SIGMAMICRO=n
-CONFIG_HID_SONY=n
-CONFIG_HID_SPEEDLINK=n
-CONFIG_HID_STEAM=n
-CONFIG_HID_STEELSERIES=n
-CONFIG_HID_SUNPLUS=n
-CONFIG_HID_RMI=n
-CONFIG_HID_GREENASIA=n
-CONFIG_HID_SMARTJOYPLUS=n
-CONFIG_HID_TIVO=n
-CONFIG_HID_TOPSEED=n
-CONFIG_HID_THINGM=n
-CONFIG_HID_THRUSTMASTER=n
-CONFIG_HID_UDRAW_PS3=n
-CONFIG_HID_U2FZERO=n
-CONFIG_HID_WACOM=n
-CONFIG_HID_WIIMOTE=n
-CONFIG_HID_XINMO=n
-CONFIG_HID_ZEROPLUS=n
-CONFIG_HID_ZYDACRON=n
-CONFIG_HID_SENSOR_HUB=n
-CONFIG_HID_ALPS=n
-CONFIG_HID_MCP2221=n
+# CONFIG_HID_MALTRON is not set
+# CONFIG_HID_MAYFLASH is not set
+# CONFIG_HID_MEGAWORLD_FF is not set
+# CONFIG_HID_REDRAGON is not set
+# CONFIG_HID_MICROSOFT is not set
+# CONFIG_HID_MONTEREY is not set
+# CONFIG_HID_MULTITOUCH is not set
+# CONFIG_HID_NINTENDO is not set
+# CONFIG_HID_NTI is not set
+# CONFIG_HID_NTRIG is not set
+# CONFIG_HID_NVIDIA_SHIELD is not set
+# CONFIG_HID_ORTEK is not set
+# CONFIG_HID_PANTHERLORD is not set
+# CONFIG_HID_PENMOUNT is not set
+# CONFIG_HID_PETALYNX is not set
+# CONFIG_HID_PICOLCD is not set
+# CONFIG_HID_PLANTRONICS is not set
+# CONFIG_HID_PLAYSTATION is not set
+# CONFIG_HID_PXRC is not set
+# CONFIG_HID_RAZER is not set
+# CONFIG_HID_PRIMAX is not set
+# CONFIG_HID_RETRODE is not set
+# CONFIG_HID_ROCCAT is not set
+# CONFIG_HID_SAITEK is not set
+# CONFIG_HID_SAMSUNG is not set
+# CONFIG_HID_SEMITEK is not set
+# CONFIG_HID_SIGMAMICRO is not set
+# CONFIG_HID_SONY is not set
+# CONFIG_HID_SPEEDLINK is not set
+# CONFIG_HID_STEAM is not set
+# CONFIG_HID_STEELSERIES is not set
+# CONFIG_HID_SUNPLUS is not set
+# CONFIG_HID_RMI is not set
+# CONFIG_HID_GREENASIA is not set
+# CONFIG_HID_SMARTJOYPLUS is not set
+# CONFIG_HID_TIVO is not set
+# CONFIG_HID_TOPSEED is not set
+# CONFIG_HID_TOPRE is not set
+# CONFIG_HID_THINGM is not set
+# CONFIG_HID_THRUSTMASTER is not set
+# CONFIG_HID_UDRAW_PS3 is not set
+# CONFIG_HID_U2FZERO is not set
+# CONFIG_HID_WACOM is not set
+# CONFIG_HID_WIIMOTE is not set
+# CONFIG_HID_XINMO is not set
+# CONFIG_HID_ZEROPLUS is not set
+# CONFIG_HID_ZYDACRON is not set
+# CONFIG_HID_SENSOR_HUB is not set
+# CONFIG_HID_ALPS is not set
+# CONFIG_HID_MCP2221 is not set
# end of Special HID drivers
#
+# HID-BPF support
+#
+# end of HID-BPF support
+
+#
# USB HID support
#
CONFIG_USB_HID=y
-CONFIG_HID_PID=n
+# CONFIG_HID_PID is not set
CONFIG_USB_HIDDEV=y
# end of USB HID support
-#
-# I2C HID support
-#
-CONFIG_I2C_HID_ACPI=y
+CONFIG_I2C_HID=y
CONFIG_I2C_HID_OF=y
-CONFIG_I2C_HID_OF_GOODIX=n
-# end of I2C HID support
-
+# CONFIG_I2C_HID_OF_ELAN is not set
+# CONFIG_I2C_HID_OF_GOODIX is not set
CONFIG_I2C_HID_CORE=y
#
@@ -4210,12 +4799,17 @@ CONFIG_SPI_HID_APPLE_OF=y
# end of SPI HID support
CONFIG_SPI_HID_APPLE_CORE=y
-# end of HID support
+
+#
+# DockChannel HID support
+#
+CONFIG_HID_DOCKCHANNEL=y
+# end of DockChannel HID support
CONFIG_USB_OHCI_LITTLE_ENDIAN=y
CONFIG_USB_SUPPORT=y
CONFIG_USB_COMMON=y
-CONFIG_USB_LED_TRIG=n
+# CONFIG_USB_LED_TRIG is not set
CONFIG_USB_ULPI_BUS=y
CONFIG_USB_CONN_GPIO=y
CONFIG_USB_ARCH_HAS_HCD=y
@@ -4227,48 +4821,48 @@ CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
# Miscellaneous USB options
#
CONFIG_USB_DEFAULT_PERSIST=y
-CONFIG_USB_FEW_INIT_RETRIES=n
-CONFIG_USB_DYNAMIC_MINORS=n
+# CONFIG_USB_FEW_INIT_RETRIES is not set
+# CONFIG_USB_DYNAMIC_MINORS is not set
CONFIG_USB_OTG=y
-CONFIG_USB_OTG_PRODUCTLIST=n
-CONFIG_USB_OTG_DISABLE_EXTERNAL_HUB=n
-CONFIG_USB_OTG_FSM=n
-CONFIG_USB_LEDS_TRIGGER_USBPORT=n
+# CONFIG_USB_OTG_PRODUCTLIST is not set
+# CONFIG_USB_OTG_DISABLE_EXTERNAL_HUB is not set
+# CONFIG_USB_OTG_FSM is not set
+# CONFIG_USB_LEDS_TRIGGER_USBPORT is not set
CONFIG_USB_AUTOSUSPEND_DELAY=2
CONFIG_USB_MON=m
#
# USB Host Controller Drivers
#
-CONFIG_USB_C67X00_HCD=n
+# CONFIG_USB_C67X00_HCD is not set
CONFIG_USB_XHCI_HCD=y
-CONFIG_USB_XHCI_DBGCAP=n
+# CONFIG_USB_XHCI_DBGCAP is not set
CONFIG_USB_XHCI_PCI=y
-CONFIG_USB_XHCI_PCI_RENESAS=n
+# CONFIG_USB_XHCI_PCI_RENESAS is not set
+CONFIG_USB_XHCI_PCI_ASMEDIA=y
CONFIG_USB_XHCI_PLATFORM=y
CONFIG_USB_EHCI_HCD=y
CONFIG_USB_EHCI_ROOT_HUB_TT=y
CONFIG_USB_EHCI_TT_NEWSCHED=y
CONFIG_USB_EHCI_PCI=y
-CONFIG_USB_EHCI_FSL=n
+# CONFIG_USB_EHCI_FSL is not set
CONFIG_USB_EHCI_HCD_PLATFORM=y
-CONFIG_USB_OXU210HP_HCD=n
-CONFIG_USB_ISP116X_HCD=n
-CONFIG_USB_FOTG210_HCD=n
-CONFIG_USB_MAX3421_HCD=n
-CONFIG_USB_OHCI_HCD=n
+# CONFIG_USB_OXU210HP_HCD is not set
+# CONFIG_USB_ISP116X_HCD is not set
+# CONFIG_USB_MAX3421_HCD is not set
+# CONFIG_USB_OHCI_HCD is not set
CONFIG_USB_UHCI_HCD=y
-CONFIG_USB_SL811_HCD=n
-CONFIG_USB_R8A66597_HCD=n
-CONFIG_USB_HCD_TEST_MODE=n
+# CONFIG_USB_SL811_HCD is not set
+# CONFIG_USB_R8A66597_HCD is not set
+# CONFIG_USB_HCD_TEST_MODE is not set
#
# USB Device Class drivers
#
CONFIG_USB_ACM=m
-CONFIG_USB_PRINTER=n
+# CONFIG_USB_PRINTER is not set
CONFIG_USB_WDM=m
-CONFIG_USB_TMC=n
+# CONFIG_USB_TMC is not set
#
# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may
@@ -4278,148 +4872,150 @@ CONFIG_USB_TMC=n
# also be needed; see USB_STORAGE Help for more info
#
CONFIG_USB_STORAGE=y
-CONFIG_USB_STORAGE_DEBUG=n
-CONFIG_USB_STORAGE_REALTEK=n
-CONFIG_USB_STORAGE_DATAFAB=n
-CONFIG_USB_STORAGE_FREECOM=n
-CONFIG_USB_STORAGE_ISD200=n
-CONFIG_USB_STORAGE_USBAT=n
-CONFIG_USB_STORAGE_SDDR09=n
-CONFIG_USB_STORAGE_SDDR55=n
-CONFIG_USB_STORAGE_JUMPSHOT=n
-CONFIG_USB_STORAGE_ALAUDA=n
-CONFIG_USB_STORAGE_ONETOUCH=n
-CONFIG_USB_STORAGE_KARMA=n
-CONFIG_USB_STORAGE_CYPRESS_ATACB=n
-CONFIG_USB_STORAGE_ENE_UB6250=n
+# CONFIG_USB_STORAGE_DEBUG is not set
+# CONFIG_USB_STORAGE_REALTEK is not set
+# CONFIG_USB_STORAGE_DATAFAB is not set
+# CONFIG_USB_STORAGE_FREECOM is not set
+# CONFIG_USB_STORAGE_ISD200 is not set
+# CONFIG_USB_STORAGE_USBAT is not set
+# CONFIG_USB_STORAGE_SDDR09 is not set
+# CONFIG_USB_STORAGE_SDDR55 is not set
+# CONFIG_USB_STORAGE_JUMPSHOT is not set
+# CONFIG_USB_STORAGE_ALAUDA is not set
+# CONFIG_USB_STORAGE_ONETOUCH is not set
+# CONFIG_USB_STORAGE_KARMA is not set
+# CONFIG_USB_STORAGE_CYPRESS_ATACB is not set
+# CONFIG_USB_STORAGE_ENE_UB6250 is not set
CONFIG_USB_UAS=y
#
# USB Imaging devices
#
-CONFIG_USB_MDC800=n
-CONFIG_USB_MICROTEK=n
-CONFIG_USBIP_CORE=n
-CONFIG_USB_CDNS_SUPPORT=n
-CONFIG_USB_MUSB_HDRC=n
+# CONFIG_USB_MDC800 is not set
+# CONFIG_USB_MICROTEK is not set
+# CONFIG_USBIP_CORE is not set
+
+#
+# USB dual-mode controller drivers
+#
+# CONFIG_USB_CDNS_SUPPORT is not set
+# CONFIG_USB_MUSB_HDRC is not set
CONFIG_USB_DWC3=y
CONFIG_USB_DWC3_ULPI=y
-CONFIG_USB_DWC3_HOST=n
-CONFIG_USB_DWC3_GADGET=n
+# CONFIG_USB_DWC3_HOST is not set
+# CONFIG_USB_DWC3_GADGET is not set
CONFIG_USB_DWC3_DUAL_ROLE=y
#
# Platform Glue Driver Support
#
-CONFIG_USB_DWC3_PCI=y
CONFIG_USB_DWC3_HAPS=y
CONFIG_USB_DWC3_OF_SIMPLE=y
-CONFIG_USB_DWC2=n
-CONFIG_USB_CHIPIDEA=n
-CONFIG_USB_ISP1760=n
+# CONFIG_USB_DWC2 is not set
+# CONFIG_USB_CHIPIDEA is not set
+# CONFIG_USB_ISP1760 is not set
#
# USB port drivers
#
CONFIG_USB_SERIAL=m
-CONFIG_USB_SERIAL_GENERIC=y
-CONFIG_USB_SERIAL_SIMPLE=n
-CONFIG_USB_SERIAL_AIRCABLE=n
+# CONFIG_USB_SERIAL_GENERIC is not set
+# CONFIG_USB_SERIAL_SIMPLE is not set
+# CONFIG_USB_SERIAL_AIRCABLE is not set
CONFIG_USB_SERIAL_ARK3116=m
CONFIG_USB_SERIAL_BELKIN=m
CONFIG_USB_SERIAL_CH341=m
CONFIG_USB_SERIAL_WHITEHEAT=m
-CONFIG_USB_SERIAL_DIGI_ACCELEPORT=n
+# CONFIG_USB_SERIAL_DIGI_ACCELEPORT is not set
CONFIG_USB_SERIAL_CP210X=m
-CONFIG_USB_SERIAL_CYPRESS_M8=n
-CONFIG_USB_SERIAL_EMPEG=n
+# CONFIG_USB_SERIAL_CYPRESS_M8 is not set
+# CONFIG_USB_SERIAL_EMPEG is not set
CONFIG_USB_SERIAL_FTDI_SIO=m
-CONFIG_USB_SERIAL_VISOR=n
-CONFIG_USB_SERIAL_IPAQ=n
-CONFIG_USB_SERIAL_IR=n
-CONFIG_USB_SERIAL_EDGEPORT=n
-CONFIG_USB_SERIAL_EDGEPORT_TI=n
-CONFIG_USB_SERIAL_F81232=n
-CONFIG_USB_SERIAL_F8153X=n
+# CONFIG_USB_SERIAL_VISOR is not set
+# CONFIG_USB_SERIAL_IPAQ is not set
+# CONFIG_USB_SERIAL_IR is not set
+# CONFIG_USB_SERIAL_EDGEPORT is not set
+# CONFIG_USB_SERIAL_EDGEPORT_TI is not set
+# CONFIG_USB_SERIAL_F81232 is not set
+# CONFIG_USB_SERIAL_F8153X is not set
CONFIG_USB_SERIAL_GARMIN=m
-CONFIG_USB_SERIAL_IPW=n
-CONFIG_USB_SERIAL_IUU=n
-CONFIG_USB_SERIAL_KEYSPAN_PDA=n
-CONFIG_USB_SERIAL_KEYSPAN=n
-CONFIG_USB_SERIAL_KLSI=n
-CONFIG_USB_SERIAL_KOBIL_SCT=n
+# CONFIG_USB_SERIAL_IPW is not set
+# CONFIG_USB_SERIAL_IUU is not set
+# CONFIG_USB_SERIAL_KEYSPAN_PDA is not set
+# CONFIG_USB_SERIAL_KEYSPAN is not set
+# CONFIG_USB_SERIAL_KLSI is not set
+# CONFIG_USB_SERIAL_KOBIL_SCT is not set
CONFIG_USB_SERIAL_MCT_U232=m
-CONFIG_USB_SERIAL_METRO=n
+# CONFIG_USB_SERIAL_METRO is not set
CONFIG_USB_SERIAL_MOS7720=m
-CONFIG_USB_SERIAL_MOS7840=n
-CONFIG_USB_SERIAL_MXUPORT=n
+# CONFIG_USB_SERIAL_MOS7840 is not set
+# CONFIG_USB_SERIAL_MXUPORT is not set
CONFIG_USB_SERIAL_NAVMAN=m
CONFIG_USB_SERIAL_PL2303=m
-CONFIG_USB_SERIAL_OTI6858=n
-CONFIG_USB_SERIAL_QCAUX=n
-CONFIG_USB_SERIAL_QUALCOMM=n
-CONFIG_USB_SERIAL_SPCP8X5=n
-CONFIG_USB_SERIAL_SAFE=n
-CONFIG_USB_SERIAL_SIERRAWIRELESS=n
-CONFIG_USB_SERIAL_SYMBOL=n
-CONFIG_USB_SERIAL_TI=n
-CONFIG_USB_SERIAL_CYBERJACK=n
+# CONFIG_USB_SERIAL_OTI6858 is not set
+# CONFIG_USB_SERIAL_QCAUX is not set
+# CONFIG_USB_SERIAL_QUALCOMM is not set
+# CONFIG_USB_SERIAL_SPCP8X5 is not set
+# CONFIG_USB_SERIAL_SAFE is not set
+# CONFIG_USB_SERIAL_SIERRAWIRELESS is not set
+# CONFIG_USB_SERIAL_SYMBOL is not set
+# CONFIG_USB_SERIAL_TI is not set
+# CONFIG_USB_SERIAL_CYBERJACK is not set
CONFIG_USB_SERIAL_WWAN=m
CONFIG_USB_SERIAL_OPTION=m
-CONFIG_USB_SERIAL_OMNINET=n
-CONFIG_USB_SERIAL_OPTICON=n
-CONFIG_USB_SERIAL_XSENS_MT=n
-CONFIG_USB_SERIAL_WISHBONE=n
-CONFIG_USB_SERIAL_SSU100=n
-CONFIG_USB_SERIAL_QT2=n
-CONFIG_USB_SERIAL_UPD78F0730=n
-CONFIG_USB_SERIAL_XR=n
-CONFIG_USB_SERIAL_DEBUG=n
+# CONFIG_USB_SERIAL_OMNINET is not set
+# CONFIG_USB_SERIAL_OPTICON is not set
+# CONFIG_USB_SERIAL_XSENS_MT is not set
+# CONFIG_USB_SERIAL_WISHBONE is not set
+# CONFIG_USB_SERIAL_SSU100 is not set
+# CONFIG_USB_SERIAL_QT2 is not set
+# CONFIG_USB_SERIAL_UPD78F0730 is not set
+# CONFIG_USB_SERIAL_XR is not set
+# CONFIG_USB_SERIAL_DEBUG is not set
#
# USB Miscellaneous drivers
#
-CONFIG_USB_EMI62=n
-CONFIG_USB_EMI26=n
-CONFIG_USB_ADUTUX=n
-CONFIG_USB_SEVSEG=n
-CONFIG_USB_LEGOTOWER=n
-CONFIG_USB_LCD=n
-CONFIG_USB_CYPRESS_CY7C63=n
-CONFIG_USB_CYTHERM=n
-CONFIG_USB_IDMOUSE=n
-CONFIG_USB_FTDI_ELAN=n
-CONFIG_USB_APPLEDISPLAY=n
-CONFIG_APPLE_MFI_FASTCHARGE=n
-CONFIG_USB_SISUSBVGA=n
-CONFIG_USB_LD=n
-CONFIG_USB_TRANCEVIBRATOR=n
-CONFIG_USB_IOWARRIOR=n
-CONFIG_USB_TEST=n
-CONFIG_USB_EHSET_TEST_FIXTURE=n
-CONFIG_USB_ISIGHTFW=n
-CONFIG_USB_YUREX=n
+# CONFIG_USB_EMI62 is not set
+# CONFIG_USB_EMI26 is not set
+# CONFIG_USB_ADUTUX is not set
+# CONFIG_USB_SEVSEG is not set
+# CONFIG_USB_LEGOTOWER is not set
+# CONFIG_USB_LCD is not set
+# CONFIG_USB_CYPRESS_CY7C63 is not set
+# CONFIG_USB_CYTHERM is not set
+# CONFIG_USB_IDMOUSE is not set
+# CONFIG_USB_APPLEDISPLAY is not set
+CONFIG_APPLE_MFI_FASTCHARGE=m
+# CONFIG_USB_SISUSBVGA is not set
+# CONFIG_USB_LD is not set
+# CONFIG_USB_TRANCEVIBRATOR is not set
+# CONFIG_USB_IOWARRIOR is not set
+# CONFIG_USB_TEST is not set
+# CONFIG_USB_EHSET_TEST_FIXTURE is not set
+# CONFIG_USB_ISIGHTFW is not set
+# CONFIG_USB_YUREX is not set
CONFIG_USB_EZUSB_FX2=m
-CONFIG_USB_HUB_USB251XB=n
-CONFIG_USB_HSIC_USB3503=n
-CONFIG_USB_HSIC_USB4604=n
-CONFIG_USB_LINK_LAYER_TEST=n
-CONFIG_USB_CHAOSKEY=n
+# CONFIG_USB_HUB_USB251XB is not set
+# CONFIG_USB_HSIC_USB3503 is not set
+# CONFIG_USB_HSIC_USB4604 is not set
+# CONFIG_USB_LINK_LAYER_TEST is not set
+# CONFIG_USB_CHAOSKEY is not set
+# CONFIG_USB_ONBOARD_HUB is not set
#
# USB Physical Layer drivers
#
CONFIG_USB_PHY=y
CONFIG_NOP_USB_XCEIV=m
-CONFIG_USB_GPIO_VBUS=m
-CONFIG_USB_ISP1301=n
+# CONFIG_USB_ISP1301 is not set
CONFIG_USB_ULPI=y
CONFIG_USB_ULPI_VIEWPORT=y
# end of USB Physical Layer drivers
CONFIG_USB_GADGET=y
-CONFIG_USB_GADGET_DEBUG_FILES=n
-CONFIG_USB_GADGET_DEBUG_FS=n
+# CONFIG_USB_GADGET_DEBUG_FILES is not set
+# CONFIG_USB_GADGET_DEBUG_FS is not set
CONFIG_USB_GADGET_VBUS_DRAW=2
CONFIG_USB_GADGET_STORAGE_NUM_BUFFERS=2
CONFIG_U_SERIAL_CONSOLE=y
@@ -4427,24 +5023,23 @@ CONFIG_U_SERIAL_CONSOLE=y
#
# USB Peripheral Controller
#
-CONFIG_USB_FOTG210_UDC=n
-CONFIG_USB_GR_UDC=n
-CONFIG_USB_R8A66597=n
-CONFIG_USB_PXA27X=n
-CONFIG_USB_MV_UDC=n
-CONFIG_USB_MV_U3D=n
+# CONFIG_USB_GR_UDC is not set
+# CONFIG_USB_R8A66597 is not set
+# CONFIG_USB_PXA27X is not set
+# CONFIG_USB_MV_UDC is not set
+# CONFIG_USB_MV_U3D is not set
CONFIG_USB_SNP_CORE=m
CONFIG_USB_SNP_UDC_PLAT=m
-CONFIG_USB_M66592=n
-CONFIG_USB_BDC_UDC=n
-CONFIG_USB_AMD5536UDC=n
-CONFIG_USB_NET2272=n
-CONFIG_USB_NET2280=n
-CONFIG_USB_GOKU=n
-CONFIG_USB_EG20T=n
-CONFIG_USB_GADGET_XILINX=n
-CONFIG_USB_MAX3420_UDC=n
-CONFIG_USB_DUMMY_HCD=n
+# CONFIG_USB_M66592 is not set
+# CONFIG_USB_BDC_UDC is not set
+# CONFIG_USB_AMD5536UDC is not set
+# CONFIG_USB_NET2272 is not set
+# CONFIG_USB_NET2280 is not set
+# CONFIG_USB_GOKU is not set
+# CONFIG_USB_EG20T is not set
+# CONFIG_USB_GADGET_XILINX is not set
+# CONFIG_USB_MAX3420_UDC is not set
+# CONFIG_USB_DUMMY_HCD is not set
# end of USB Peripheral Controller
CONFIG_USB_LIBCOMPOSITE=m
@@ -4470,64 +5065,69 @@ CONFIG_USB_CONFIGFS_ECM_SUBSET=y
CONFIG_USB_CONFIGFS_RNDIS=y
CONFIG_USB_CONFIGFS_EEM=y
CONFIG_USB_CONFIGFS_MASS_STORAGE=y
-CONFIG_USB_CONFIGFS_F_LB_SS=n
+# CONFIG_USB_CONFIGFS_F_LB_SS is not set
CONFIG_USB_CONFIGFS_F_FS=y
-CONFIG_USB_CONFIGFS_F_UAC1=n
-CONFIG_USB_CONFIGFS_F_UAC1_LEGACY=n
-CONFIG_USB_CONFIGFS_F_UAC2=n
-CONFIG_USB_CONFIGFS_F_MIDI=n
-CONFIG_USB_CONFIGFS_F_HID=n
-CONFIG_USB_CONFIGFS_F_UVC=n
-CONFIG_USB_CONFIGFS_F_PRINTER=n
+# CONFIG_USB_CONFIGFS_F_UAC1 is not set
+# CONFIG_USB_CONFIGFS_F_UAC1_LEGACY is not set
+# CONFIG_USB_CONFIGFS_F_UAC2 is not set
+# CONFIG_USB_CONFIGFS_F_MIDI is not set
+# CONFIG_USB_CONFIGFS_F_MIDI2 is not set
+# CONFIG_USB_CONFIGFS_F_HID is not set
+# CONFIG_USB_CONFIGFS_F_UVC is not set
+# CONFIG_USB_CONFIGFS_F_PRINTER is not set
#
# USB Gadget precomposed configurations
#
-CONFIG_USB_ZERO=n
-CONFIG_USB_AUDIO=n
-CONFIG_USB_ETH=n
-CONFIG_USB_G_NCM=n
-CONFIG_USB_GADGETFS=n
-CONFIG_USB_FUNCTIONFS=n
-CONFIG_USB_MASS_STORAGE=n
+# CONFIG_USB_ZERO is not set
+# CONFIG_USB_AUDIO is not set
+# CONFIG_USB_ETH is not set
+# CONFIG_USB_G_NCM is not set
+# CONFIG_USB_GADGETFS is not set
+# CONFIG_USB_FUNCTIONFS is not set
+# CONFIG_USB_MASS_STORAGE is not set
CONFIG_USB_G_SERIAL=m
-CONFIG_USB_MIDI_GADGET=n
-CONFIG_USB_G_PRINTER=n
+# CONFIG_USB_MIDI_GADGET is not set
+# CONFIG_USB_G_PRINTER is not set
CONFIG_USB_CDC_COMPOSITE=m
-CONFIG_USB_G_ACM_MS=n
-CONFIG_USB_G_MULTI=n
-CONFIG_USB_G_HID=n
-CONFIG_USB_G_DBGP=n
-CONFIG_USB_G_WEBCAM=n
-CONFIG_USB_RAW_GADGET=n
+# CONFIG_USB_G_ACM_MS is not set
+# CONFIG_USB_G_MULTI is not set
+# CONFIG_USB_G_HID is not set
+# CONFIG_USB_G_DBGP is not set
+# CONFIG_USB_G_WEBCAM is not set
+# CONFIG_USB_RAW_GADGET is not set
# end of USB Gadget precomposed configurations
CONFIG_TYPEC=y
CONFIG_TYPEC_TCPM=y
CONFIG_TYPEC_TCPCI=y
-CONFIG_TYPEC_RT1711H=n
-CONFIG_TYPEC_TCPCI_MAXIM=n
+# CONFIG_TYPEC_RT1711H is not set
+# CONFIG_TYPEC_TCPCI_MAXIM is not set
CONFIG_TYPEC_FUSB302=m
CONFIG_TYPEC_UCSI=m
-CONFIG_UCSI_CCG=n
-CONFIG_UCSI_ACPI=m
+# CONFIG_UCSI_CCG is not set
+# CONFIG_UCSI_STM32G0 is not set
CONFIG_TYPEC_TPS6598X=y
-CONFIG_TYPEC_RT1719=n
-CONFIG_TYPEC_HD3SS3220=n
-CONFIG_TYPEC_STUSB160X=n
-CONFIG_TYPEC_WUSB3801=n
+# CONFIG_TYPEC_ANX7411 is not set
+# CONFIG_TYPEC_RT1719 is not set
+# CONFIG_TYPEC_HD3SS3220 is not set
+# CONFIG_TYPEC_STUSB160X is not set
+# CONFIG_TYPEC_WUSB3801 is not set
#
# USB Type-C Multiplexer/DeMultiplexer Switch support
#
-CONFIG_TYPEC_MUX_PI3USB30532=n
+# CONFIG_TYPEC_MUX_FSA4480 is not set
+# CONFIG_TYPEC_MUX_GPIO_SBU is not set
+# CONFIG_TYPEC_MUX_PI3USB30532 is not set
+# CONFIG_TYPEC_MUX_NB7VPQ904M is not set
# end of USB Type-C Multiplexer/DeMultiplexer Switch support
#
# USB Type-C Alternate Mode drivers
#
CONFIG_TYPEC_DP_ALTMODE=m
-CONFIG_TYPEC_NVIDIA_ALTMODE=n
+# CONFIG_TYPEC_NVIDIA_ALTMODE is not set
# end of USB Type-C Alternate Mode drivers
CONFIG_USB_ROLE_SWITCH=y
@@ -4536,43 +5136,42 @@ CONFIG_PWRSEQ_EMMC=m
CONFIG_PWRSEQ_SIMPLE=m
CONFIG_MMC_BLOCK=m
CONFIG_MMC_BLOCK_MINORS=8
-CONFIG_SDIO_UART=n
-CONFIG_MMC_TEST=n
+# CONFIG_SDIO_UART is not set
+# CONFIG_MMC_TEST is not set
#
# MMC/SD/SDIO Host Controller Drivers
#
-CONFIG_MMC_DEBUG=n
-CONFIG_MMC_ARMMMCI=n
+# CONFIG_MMC_DEBUG is not set
+# CONFIG_MMC_ARMMMCI is not set
CONFIG_MMC_SDHCI=m
CONFIG_MMC_SDHCI_IO_ACCESSORS=y
CONFIG_MMC_SDHCI_PCI=m
CONFIG_MMC_RICOH_MMC=y
-CONFIG_MMC_SDHCI_ACPI=n
CONFIG_MMC_SDHCI_PLTFM=m
-CONFIG_MMC_SDHCI_OF_ARASAN=n
-CONFIG_MMC_SDHCI_OF_ASPEED=n
-CONFIG_MMC_SDHCI_OF_AT91=n
-CONFIG_MMC_SDHCI_OF_DWCMSHC=n
-CONFIG_MMC_SDHCI_CADENCE=n
-CONFIG_MMC_SDHCI_F_SDH30=n
-CONFIG_MMC_SDHCI_MILBEAUT=n
-CONFIG_MMC_TIFM_SD=n
-CONFIG_MMC_SPI=n
-CONFIG_MMC_CB710=n
-CONFIG_MMC_VIA_SDMMC=n
-CONFIG_MMC_DW=n
-CONFIG_MMC_VUB300=n
-CONFIG_MMC_USHC=n
-CONFIG_MMC_USDHI6ROL0=n
+# CONFIG_MMC_SDHCI_OF_ARASAN is not set
+# CONFIG_MMC_SDHCI_OF_AT91 is not set
+# CONFIG_MMC_SDHCI_OF_DWCMSHC is not set
+# CONFIG_MMC_SDHCI_CADENCE is not set
+# CONFIG_MMC_SDHCI_F_SDH30 is not set
+# CONFIG_MMC_SDHCI_MILBEAUT is not set
+# CONFIG_MMC_TIFM_SD is not set
+# CONFIG_MMC_SPI is not set
+# CONFIG_MMC_CB710 is not set
+# CONFIG_MMC_VIA_SDMMC is not set
+# CONFIG_MMC_DW is not set
+# CONFIG_MMC_VUB300 is not set
+# CONFIG_MMC_USHC is not set
+# CONFIG_MMC_USDHI6ROL0 is not set
CONFIG_MMC_CQHCI=m
CONFIG_MMC_HSQ=m
-CONFIG_MMC_TOSHIBA_PCI=n
-CONFIG_MMC_MTK=n
-CONFIG_MMC_SDHCI_XENON=n
-CONFIG_MMC_SDHCI_OMAP=n
-CONFIG_MMC_SDHCI_AM654=n
-CONFIG_MEMSTICK=n
+# CONFIG_MMC_TOSHIBA_PCI is not set
+# CONFIG_MMC_MTK is not set
+# CONFIG_MMC_SDHCI_XENON is not set
+# CONFIG_MMC_SDHCI_OMAP is not set
+# CONFIG_MMC_SDHCI_AM654 is not set
+# CONFIG_SCSI_UFSHCD is not set
+# CONFIG_MEMSTICK is not set
CONFIG_NEW_LEDS=y
CONFIG_LEDS_CLASS=y
CONFIG_LEDS_CLASS_FLASH=y
@@ -4582,87 +5181,97 @@ CONFIG_LEDS_BRIGHTNESS_HW_CHANGED=y
#
# LED drivers
#
-CONFIG_LEDS_AN30259A=n
-CONFIG_LEDS_AW2013=n
-CONFIG_LEDS_BCM6328=n
-CONFIG_LEDS_BCM6358=n
-CONFIG_LEDS_CR0014114=n
-CONFIG_LEDS_EL15203000=n
-CONFIG_LEDS_LM3530=n
-CONFIG_LEDS_LM3532=n
-CONFIG_LEDS_LM3642=n
-CONFIG_LEDS_LM3692X=n
-CONFIG_LEDS_PCA9532=n
-CONFIG_LEDS_GPIO=n
-CONFIG_LEDS_LP3944=n
-CONFIG_LEDS_LP3952=n
-CONFIG_LEDS_LP50XX=n
-CONFIG_LEDS_LP55XX_COMMON=n
-CONFIG_LEDS_LP8860=n
-CONFIG_LEDS_PCA955X=n
-CONFIG_LEDS_PCA963X=n
-CONFIG_LEDS_DAC124S085=n
+# CONFIG_LEDS_AN30259A is not set
+# CONFIG_LEDS_AW200XX is not set
+# CONFIG_LEDS_AW2013 is not set
+# CONFIG_LEDS_BCM6328 is not set
+# CONFIG_LEDS_BCM6358 is not set
+# CONFIG_LEDS_CR0014114 is not set
+# CONFIG_LEDS_EL15203000 is not set
+# CONFIG_LEDS_LM3530 is not set
+# CONFIG_LEDS_LM3532 is not set
+# CONFIG_LEDS_LM3642 is not set
+# CONFIG_LEDS_LM3692X is not set
+# CONFIG_LEDS_PCA9532 is not set
+# CONFIG_LEDS_GPIO is not set
+# CONFIG_LEDS_LP3944 is not set
+# CONFIG_LEDS_LP3952 is not set
+# CONFIG_LEDS_LP50XX is not set
+# CONFIG_LEDS_LP55XX_COMMON is not set
+# CONFIG_LEDS_LP8860 is not set
+# CONFIG_LEDS_PCA955X is not set
+# CONFIG_LEDS_PCA963X is not set
+# CONFIG_LEDS_PCA995X is not set
+# CONFIG_LEDS_DAC124S085 is not set
CONFIG_LEDS_PWM=m
-CONFIG_LEDS_BD2802=n
-CONFIG_LEDS_LT3593=n
-CONFIG_LEDS_TCA6507=n
-CONFIG_LEDS_TLC591XX=n
-CONFIG_LEDS_LM355x=n
-CONFIG_LEDS_IS31FL319X=n
-CONFIG_LEDS_IS31FL32XX=n
+# CONFIG_LEDS_REGULATOR is not set
+# CONFIG_LEDS_BD2606MVV is not set
+# CONFIG_LEDS_BD2802 is not set
+# CONFIG_LEDS_LT3593 is not set
+# CONFIG_LEDS_TCA6507 is not set
+# CONFIG_LEDS_TLC591XX is not set
+# CONFIG_LEDS_LM355x is not set
+# CONFIG_LEDS_IS31FL319X is not set
+# CONFIG_LEDS_IS31FL32XX is not set
#
# LED driver for blink(1) USB RGB LED is under Special HID drivers (HID_THINGM)
#
-CONFIG_LEDS_BLINKM=n
-CONFIG_LEDS_SYSCON=n
-CONFIG_LEDS_MLXREG=n
+# CONFIG_LEDS_BLINKM is not set
+# CONFIG_LEDS_SYSCON is not set
+# CONFIG_LEDS_MLXREG is not set
CONFIG_LEDS_USER=y
CONFIG_LEDS_SPI_BYTE=m
-CONFIG_LEDS_TI_LMU_COMMON=n
+# CONFIG_LEDS_LM3697 is not set
#
# Flash and Torch LED drivers
#
-CONFIG_LEDS_AAT1290=n
-CONFIG_LEDS_AS3645A=n
-CONFIG_LEDS_KTD2692=n
-CONFIG_LEDS_LM3601X=n
-CONFIG_LEDS_RT4505=n
-CONFIG_LEDS_RT8515=n
-CONFIG_LEDS_SGM3140=n
+# CONFIG_LEDS_AAT1290 is not set
+# CONFIG_LEDS_AS3645A is not set
+# CONFIG_LEDS_KTD2692 is not set
+# CONFIG_LEDS_LM3601X is not set
+# CONFIG_LEDS_RT4505 is not set
+# CONFIG_LEDS_RT8515 is not set
+# CONFIG_LEDS_SGM3140 is not set
+
+#
+# RGB LED drivers
+#
+# CONFIG_LEDS_GROUP_MULTICOLOR is not set
+# CONFIG_LEDS_PWM_MULTICOLOR is not set
+# CONFIG_LEDS_QCOM_LPG is not set
#
# LED Triggers
#
CONFIG_LEDS_TRIGGERS=y
-CONFIG_LEDS_TRIGGER_TIMER=n
-CONFIG_LEDS_TRIGGER_ONESHOT=n
-CONFIG_LEDS_TRIGGER_HEARTBEAT=n
+# CONFIG_LEDS_TRIGGER_TIMER is not set
+# CONFIG_LEDS_TRIGGER_ONESHOT is not set
+# CONFIG_LEDS_TRIGGER_HEARTBEAT is not set
CONFIG_LEDS_TRIGGER_BACKLIGHT=m
-CONFIG_LEDS_TRIGGER_CPU=n
-CONFIG_LEDS_TRIGGER_ACTIVITY=n
-CONFIG_LEDS_TRIGGER_GPIO=n
-CONFIG_LEDS_TRIGGER_DEFAULT_ON=n
+# CONFIG_LEDS_TRIGGER_CPU is not set
+# CONFIG_LEDS_TRIGGER_ACTIVITY is not set
+# CONFIG_LEDS_TRIGGER_DEFAULT_ON is not set
#
# iptables trigger is under Netfilter config (LED target)
#
-CONFIG_LEDS_TRIGGER_TRANSIENT=n
-CONFIG_LEDS_TRIGGER_CAMERA=n
-CONFIG_LEDS_TRIGGER_PANIC=n
-CONFIG_LEDS_TRIGGER_NETDEV=n
-CONFIG_LEDS_TRIGGER_PATTERN=n
-CONFIG_LEDS_TRIGGER_AUDIO=n
+# CONFIG_LEDS_TRIGGER_TRANSIENT is not set
+# CONFIG_LEDS_TRIGGER_CAMERA is not set
+# CONFIG_LEDS_TRIGGER_PANIC is not set
+# CONFIG_LEDS_TRIGGER_NETDEV is not set
+# CONFIG_LEDS_TRIGGER_PATTERN is not set
+# CONFIG_LEDS_TRIGGER_AUDIO is not set
CONFIG_LEDS_TRIGGER_TTY=m
#
# Simple LED drivers
#
-CONFIG_ACCESSIBILITY=n
-CONFIG_INFINIBAND=n
+# CONFIG_ACCESSIBILITY is not set
+# CONFIG_INFINIBAND is not set
CONFIG_EDAC_SUPPORT=y
-CONFIG_EDAC=n
+# CONFIG_EDAC is not set
CONFIG_RTC_LIB=y
CONFIG_RTC_CLASS=y
CONFIG_RTC_HCTOSYS=y
@@ -4678,211 +5287,196 @@ CONFIG_RTC_NVMEM=y
CONFIG_RTC_INTF_SYSFS=y
CONFIG_RTC_INTF_PROC=y
CONFIG_RTC_INTF_DEV=y
-CONFIG_RTC_INTF_DEV_UIE_EMUL=n
-CONFIG_RTC_DRV_TEST=n
+# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set
+# CONFIG_RTC_DRV_TEST is not set
#
# I2C RTC drivers
#
-CONFIG_RTC_DRV_ABB5ZES3=n
-CONFIG_RTC_DRV_ABEOZ9=n
-CONFIG_RTC_DRV_ABX80X=n
-CONFIG_RTC_DRV_DS1307=n
-CONFIG_RTC_DRV_DS1374=n
-CONFIG_RTC_DRV_DS1672=n
-CONFIG_RTC_DRV_HYM8563=n
-CONFIG_RTC_DRV_MAX6900=n
-CONFIG_RTC_DRV_RS5C372=n
-CONFIG_RTC_DRV_ISL1208=n
-CONFIG_RTC_DRV_ISL12022=n
-CONFIG_RTC_DRV_ISL12026=n
-CONFIG_RTC_DRV_X1205=n
-CONFIG_RTC_DRV_PCF8523=n
-CONFIG_RTC_DRV_PCF85063=n
-CONFIG_RTC_DRV_PCF85363=n
-CONFIG_RTC_DRV_PCF8563=n
-CONFIG_RTC_DRV_PCF8583=n
-CONFIG_RTC_DRV_M41T80=n
-CONFIG_RTC_DRV_BQ32K=n
-CONFIG_RTC_DRV_S35390A=n
-CONFIG_RTC_DRV_FM3130=n
-CONFIG_RTC_DRV_RX8010=n
-CONFIG_RTC_DRV_RX8581=n
-CONFIG_RTC_DRV_RX8025=n
-CONFIG_RTC_DRV_EM3027=n
-CONFIG_RTC_DRV_RV3028=n
-CONFIG_RTC_DRV_RV3032=n
-CONFIG_RTC_DRV_RV8803=n
-CONFIG_RTC_DRV_SD3078=n
+# CONFIG_RTC_DRV_ABB5ZES3 is not set
+# CONFIG_RTC_DRV_ABEOZ9 is not set
+# CONFIG_RTC_DRV_ABX80X is not set
+# CONFIG_RTC_DRV_DS1307 is not set
+# CONFIG_RTC_DRV_DS1374 is not set
+# CONFIG_RTC_DRV_DS1672 is not set
+# CONFIG_RTC_DRV_HYM8563 is not set
+# CONFIG_RTC_DRV_MAX6900 is not set
+# CONFIG_RTC_DRV_NCT3018Y is not set
+# CONFIG_RTC_DRV_RS5C372 is not set
+# CONFIG_RTC_DRV_ISL1208 is not set
+# CONFIG_RTC_DRV_ISL12022 is not set
+# CONFIG_RTC_DRV_ISL12026 is not set
+# CONFIG_RTC_DRV_X1205 is not set
+# CONFIG_RTC_DRV_PCF8523 is not set
+# CONFIG_RTC_DRV_PCF85063 is not set
+# CONFIG_RTC_DRV_PCF85363 is not set
+# CONFIG_RTC_DRV_PCF8563 is not set
+# CONFIG_RTC_DRV_PCF8583 is not set
+# CONFIG_RTC_DRV_M41T80 is not set
+# CONFIG_RTC_DRV_BQ32K is not set
+# CONFIG_RTC_DRV_S35390A is not set
+# CONFIG_RTC_DRV_FM3130 is not set
+# CONFIG_RTC_DRV_RX8010 is not set
+# CONFIG_RTC_DRV_RX8581 is not set
+# CONFIG_RTC_DRV_RX8025 is not set
+# CONFIG_RTC_DRV_EM3027 is not set
+# CONFIG_RTC_DRV_RV3028 is not set
+# CONFIG_RTC_DRV_RV3032 is not set
+# CONFIG_RTC_DRV_RV8803 is not set
+# CONFIG_RTC_DRV_SD3078 is not set
#
# SPI RTC drivers
#
-CONFIG_RTC_DRV_M41T93=n
-CONFIG_RTC_DRV_M41T94=n
-CONFIG_RTC_DRV_DS1302=n
-CONFIG_RTC_DRV_DS1305=n
-CONFIG_RTC_DRV_DS1343=n
-CONFIG_RTC_DRV_DS1347=n
-CONFIG_RTC_DRV_DS1390=n
-CONFIG_RTC_DRV_MAX6916=n
-CONFIG_RTC_DRV_R9701=n
-CONFIG_RTC_DRV_RX4581=n
-CONFIG_RTC_DRV_RS5C348=n
-CONFIG_RTC_DRV_MAX6902=n
-CONFIG_RTC_DRV_PCF2123=n
-CONFIG_RTC_DRV_MCP795=n
+# CONFIG_RTC_DRV_M41T93 is not set
+# CONFIG_RTC_DRV_M41T94 is not set
+# CONFIG_RTC_DRV_DS1302 is not set
+# CONFIG_RTC_DRV_DS1305 is not set
+# CONFIG_RTC_DRV_DS1343 is not set
+# CONFIG_RTC_DRV_DS1347 is not set
+# CONFIG_RTC_DRV_DS1390 is not set
+# CONFIG_RTC_DRV_MAX6916 is not set
+# CONFIG_RTC_DRV_R9701 is not set
+# CONFIG_RTC_DRV_RX4581 is not set
+# CONFIG_RTC_DRV_RS5C348 is not set
+# CONFIG_RTC_DRV_MAX6902 is not set
+# CONFIG_RTC_DRV_PCF2123 is not set
+# CONFIG_RTC_DRV_MCP795 is not set
CONFIG_RTC_I2C_AND_SPI=y
#
# SPI and I2C RTC drivers
#
-CONFIG_RTC_DRV_DS3232=n
-CONFIG_RTC_DRV_PCF2127=n
-CONFIG_RTC_DRV_RV3029C2=n
-CONFIG_RTC_DRV_RX6110=n
+# CONFIG_RTC_DRV_DS3232 is not set
+# CONFIG_RTC_DRV_PCF2127 is not set
+# CONFIG_RTC_DRV_RV3029C2 is not set
+# CONFIG_RTC_DRV_RX6110 is not set
#
# Platform RTC drivers
#
-CONFIG_RTC_DRV_DS1286=n
-CONFIG_RTC_DRV_DS1511=n
-CONFIG_RTC_DRV_DS1553=n
-CONFIG_RTC_DRV_DS1685_FAMILY=n
-CONFIG_RTC_DRV_DS1742=n
-CONFIG_RTC_DRV_DS2404=n
-CONFIG_RTC_DRV_EFI=n
-CONFIG_RTC_DRV_STK17TA8=n
-CONFIG_RTC_DRV_M48T86=n
-CONFIG_RTC_DRV_M48T35=n
-CONFIG_RTC_DRV_M48T59=n
-CONFIG_RTC_DRV_MSM6242=n
-CONFIG_RTC_DRV_BQ4802=n
-CONFIG_RTC_DRV_RP5C01=n
-CONFIG_RTC_DRV_V3020=n
-CONFIG_RTC_DRV_ZYNQMP=n
+# CONFIG_RTC_DRV_DS1286 is not set
+# CONFIG_RTC_DRV_DS1511 is not set
+# CONFIG_RTC_DRV_DS1553 is not set
+# CONFIG_RTC_DRV_DS1685_FAMILY is not set
+# CONFIG_RTC_DRV_DS1742 is not set
+# CONFIG_RTC_DRV_DS2404 is not set
+# CONFIG_RTC_DRV_EFI is not set
+# CONFIG_RTC_DRV_STK17TA8 is not set
+# CONFIG_RTC_DRV_M48T86 is not set
+# CONFIG_RTC_DRV_M48T35 is not set
+# CONFIG_RTC_DRV_M48T59 is not set
+# CONFIG_RTC_DRV_MSM6242 is not set
+# CONFIG_RTC_DRV_RP5C01 is not set
+# CONFIG_RTC_DRV_ZYNQMP is not set
#
# on-CPU RTC drivers
#
-CONFIG_RTC_DRV_PL030=n
-CONFIG_RTC_DRV_PL031=n
-CONFIG_RTC_DRV_CADENCE=n
-CONFIG_RTC_DRV_FTRTC010=n
-CONFIG_RTC_DRV_R7301=n
+# CONFIG_RTC_DRV_PL030 is not set
+# CONFIG_RTC_DRV_PL031 is not set
+# CONFIG_RTC_DRV_CADENCE is not set
+# CONFIG_RTC_DRV_FTRTC010 is not set
+# CONFIG_RTC_DRV_R7301 is not set
#
# HID Sensor RTC drivers
#
-CONFIG_RTC_DRV_GOLDFISH=n
+# CONFIG_RTC_DRV_GOLDFISH is not set
CONFIG_RTC_DRV_MACSMC=y
CONFIG_DMADEVICES=y
-CONFIG_DMADEVICES_DEBUG=n
+# CONFIG_DMADEVICES_DEBUG is not set
#
# DMA Devices
#
CONFIG_DMA_ENGINE=y
-CONFIG_DMA_ACPI=y
CONFIG_DMA_OF=y
-CONFIG_ALTERA_MSGDMA=n
-CONFIG_AMBA_PL08X=n
+# CONFIG_ALTERA_MSGDMA is not set
+# CONFIG_AMBA_PL08X is not set
CONFIG_APPLE_ADMAC=y
-CONFIG_BCM_SBA_RAID=n
-CONFIG_DW_AXI_DMAC=n
-CONFIG_FSL_EDMA=n
-CONFIG_FSL_QDMA=n
-CONFIG_HISI_DMA=n
-CONFIG_INTEL_IDMA64=n
-CONFIG_MV_XOR_V2=n
-CONFIG_PL330_DMA=n
-CONFIG_PLX_DMA=n
-CONFIG_XILINX_DMA=n
-CONFIG_XILINX_ZYNQMP_DMA=n
-CONFIG_XILINX_ZYNQMP_DPDMA=n
-CONFIG_QCOM_HIDMA_MGMT=n
-CONFIG_QCOM_HIDMA=n
-CONFIG_DW_DMAC=n
-CONFIG_DW_DMAC_PCI=n
-CONFIG_DW_EDMA=n
-CONFIG_DW_EDMA_PCIE=n
-CONFIG_SF_PDMA=n
+# CONFIG_DW_AXI_DMAC is not set
+# CONFIG_FSL_EDMA is not set
+# CONFIG_FSL_QDMA is not set
+# CONFIG_INTEL_IDMA64 is not set
+# CONFIG_MV_XOR_V2 is not set
+# CONFIG_PL330_DMA is not set
+# CONFIG_PLX_DMA is not set
+# CONFIG_XILINX_DMA is not set
+# CONFIG_XILINX_XDMA is not set
+# CONFIG_XILINX_ZYNQMP_DMA is not set
+# CONFIG_XILINX_ZYNQMP_DPDMA is not set
+# CONFIG_QCOM_HIDMA_MGMT is not set
+# CONFIG_QCOM_HIDMA is not set
+# CONFIG_DW_DMAC is not set
+# CONFIG_DW_DMAC_PCI is not set
+# CONFIG_DW_EDMA is not set
+# CONFIG_SF_PDMA is not set
#
# DMA Clients
#
-CONFIG_ASYNC_TX_DMA=n
-CONFIG_DMATEST=n
+# CONFIG_ASYNC_TX_DMA is not set
+# CONFIG_DMATEST is not set
#
# DMABUF options
#
CONFIG_SYNC_FILE=y
-CONFIG_SW_SYNC=n
+# CONFIG_SW_SYNC is not set
CONFIG_UDMABUF=y
-CONFIG_DMABUF_MOVE_NOTIFY=n
-CONFIG_DMABUF_DEBUG=n
-CONFIG_DMABUF_SELFTESTS=n
+# CONFIG_DMABUF_MOVE_NOTIFY is not set
+# CONFIG_DMABUF_DEBUG is not set
+# CONFIG_DMABUF_SELFTESTS is not set
CONFIG_DMABUF_HEAPS=y
CONFIG_DMABUF_SYSFS_STATS=y
CONFIG_DMABUF_HEAPS_SYSTEM=y
-CONFIG_DMABUF_HEAPS_CMA=n
# end of DMABUF options
-CONFIG_AUXDISPLAY=n
-CONFIG_UIO=n
-CONFIG_VFIO=n
-CONFIG_VIRT_DRIVERS=n
+# CONFIG_UIO is not set
+# CONFIG_VFIO is not set
+# CONFIG_VIRT_DRIVERS is not set
+CONFIG_VIRTIO_ANCHOR=y
CONFIG_VIRTIO=y
-CONFIG_VIRTIO_MENU=n
-CONFIG_VDPA=n
-CONFIG_VHOST_MENU=n
+# CONFIG_VIRTIO_MENU is not set
+# CONFIG_VDPA is not set
+# CONFIG_VHOST_MENU is not set
#
# Microsoft Hyper-V guest support
#
-CONFIG_HYPERV=n
# end of Microsoft Hyper-V guest support
-CONFIG_GREYBUS=n
-CONFIG_COMEDI=n
+# CONFIG_GREYBUS is not set
+# CONFIG_COMEDI is not set
CONFIG_STAGING=y
-CONFIG_PRISM2_USB=n
+# CONFIG_PRISM2_USB is not set
CONFIG_RTL8192U=m
CONFIG_RTLLIB=m
CONFIG_RTLLIB_CRYPTO_CCMP=m
CONFIG_RTLLIB_CRYPTO_TKIP=m
CONFIG_RTLLIB_CRYPTO_WEP=m
-CONFIG_RTL8192E=n
-CONFIG_RTL8723BS=n
-CONFIG_R8712U=n
-CONFIG_R8188EU=m
-CONFIG_RTS5208=n
-CONFIG_VT6655=n
-CONFIG_VT6656=n
-CONFIG_FB_SM750=n
-CONFIG_STAGING_MEDIA=n
-
-#
-# Android
-#
-# end of Android
-
-CONFIG_STAGING_BOARD=n
-CONFIG_LTE_GDM724X=n
-CONFIG_UNISYSSPAR=n
-CONFIG_COMMON_CLK_XLNX_CLKWZRD=n
-CONFIG_FB_TFT=n
-CONFIG_KS7010=n
-CONFIG_PI433=n
-CONFIG_XIL_AXIS_FIFO=n
-CONFIG_FIELDBUS_DEV=n
-CONFIG_QLGE=n
-CONFIG_WFX=n
-CONFIG_GOLDFISH=n
-CONFIG_CHROME_PLATFORMS=n
-CONFIG_MELLANOX_PLATFORM=n
-CONFIG_SURFACE_PLATFORMS=n
+# CONFIG_RTL8192E is not set
+# CONFIG_RTL8723BS is not set
+# CONFIG_R8712U is not set
+# CONFIG_RTS5208 is not set
+# CONFIG_VT6655 is not set
+# CONFIG_VT6656 is not set
+# CONFIG_FB_SM750 is not set
+# CONFIG_STAGING_MEDIA is not set
+# CONFIG_STAGING_BOARD is not set
+# CONFIG_LTE_GDM724X is not set
+# CONFIG_FB_TFT is not set
+# CONFIG_KS7010 is not set
+# CONFIG_PI433 is not set
+# CONFIG_XIL_AXIS_FIFO is not set
+# CONFIG_FIELDBUS_DEV is not set
+# CONFIG_QLGE is not set
+# CONFIG_VME_BUS is not set
+# CONFIG_GOLDFISH is not set
+# CONFIG_CHROME_PLATFORMS is not set
+# CONFIG_MELLANOX_PLATFORM is not set
+# CONFIG_SURFACE_PLATFORMS is not set
CONFIG_APPLE_PLATFORMS=y
CONFIG_APPLE_SMC=y
CONFIG_APPLE_SMC_RTKIT=y
@@ -4893,37 +5487,39 @@ CONFIG_COMMON_CLK=y
#
# Clock driver for ARM Reference designs
#
-CONFIG_CLK_ICST=n
-CONFIG_CLK_SP810=n
+# CONFIG_CLK_ICST is not set
+# CONFIG_CLK_SP810 is not set
# end of Clock driver for ARM Reference designs
-CONFIG_LMK04832=n
+# CONFIG_LMK04832 is not set
CONFIG_COMMON_CLK_APPLE_NCO=y
-CONFIG_COMMON_CLK_MAX9485=n
-CONFIG_COMMON_CLK_SCMI=n
-CONFIG_COMMON_CLK_SCPI=n
-CONFIG_COMMON_CLK_SI5341=n
-CONFIG_COMMON_CLK_SI5351=n
-CONFIG_COMMON_CLK_SI514=n
-CONFIG_COMMON_CLK_SI544=n
-CONFIG_COMMON_CLK_SI570=n
-CONFIG_COMMON_CLK_CDCE706=n
-CONFIG_COMMON_CLK_CDCE925=n
-CONFIG_COMMON_CLK_CS2000_CP=n
-CONFIG_COMMON_CLK_LAN966X=n
-CONFIG_COMMON_CLK_AXI_CLKGEN=n
-CONFIG_COMMON_CLK_XGENE=n
-CONFIG_COMMON_CLK_PWM=n
-CONFIG_COMMON_CLK_VC5=n
-CONFIG_COMMON_CLK_FIXED_MMIO=n
-CONFIG_XILINX_VCU=n
-CONFIG_HWSPINLOCK=n
+# CONFIG_COMMON_CLK_MAX9485 is not set
+# CONFIG_COMMON_CLK_SCMI is not set
+# CONFIG_COMMON_CLK_SI5341 is not set
+# CONFIG_COMMON_CLK_SI5351 is not set
+# CONFIG_COMMON_CLK_SI514 is not set
+# CONFIG_COMMON_CLK_SI544 is not set
+# CONFIG_COMMON_CLK_SI570 is not set
+# CONFIG_COMMON_CLK_CDCE706 is not set
+# CONFIG_COMMON_CLK_CDCE925 is not set
+# CONFIG_COMMON_CLK_CS2000_CP is not set
+# CONFIG_COMMON_CLK_AXI_CLKGEN is not set
+# CONFIG_COMMON_CLK_XGENE is not set
+# CONFIG_COMMON_CLK_PWM is not set
+# CONFIG_COMMON_CLK_RS9_PCIE is not set
+# CONFIG_COMMON_CLK_SI521XX is not set
+# CONFIG_COMMON_CLK_VC3 is not set
+# CONFIG_COMMON_CLK_VC5 is not set
+# CONFIG_COMMON_CLK_VC7 is not set
+# CONFIG_COMMON_CLK_FIXED_MMIO is not set
+# CONFIG_XILINX_VCU is not set
+# CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set
+# CONFIG_HWSPINLOCK is not set
#
# Clock Source drivers
#
CONFIG_TIMER_OF=y
-CONFIG_TIMER_ACPI=y
CONFIG_TIMER_PROBE=y
CONFIG_ARM_ARCH_TIMER=y
CONFIG_ARM_ARCH_TIMER_EVTSTREAM=y
@@ -4931,18 +5527,9 @@ CONFIG_ARM_ARCH_TIMER_OOL_WORKAROUND=y
CONFIG_FSL_ERRATUM_A008585=y
CONFIG_HISILICON_ERRATUM_161010101=y
CONFIG_ARM64_ERRATUM_858921=y
-CONFIG_MICROCHIP_PIT64B=n
# end of Clock Source drivers
-CONFIG_MAILBOX=y
-CONFIG_APPLE_MAILBOX=y
-CONFIG_ARM_MHU=n
-CONFIG_ARM_MHU_V2=n
-CONFIG_PLATFORM_MHU=n
-CONFIG_PL320_MBOX=n
-CONFIG_PCC=y
-CONFIG_ALTERA_MBOX=n
-CONFIG_MAILBOX_TEST=n
+# CONFIG_MAILBOX is not set
CONFIG_IOMMU_IOVA=y
CONFIG_IOMMU_API=y
CONFIG_IOMMU_SUPPORT=y
@@ -4952,35 +5539,36 @@ CONFIG_IOMMU_SUPPORT=y
#
CONFIG_IOMMU_IO_PGTABLE=y
CONFIG_IOMMU_IO_PGTABLE_LPAE=y
-CONFIG_IOMMU_IO_PGTABLE_LPAE_SELFTEST=n
-CONFIG_IOMMU_IO_PGTABLE_ARMV7S=n
+# CONFIG_IOMMU_IO_PGTABLE_LPAE_SELFTEST is not set
+# CONFIG_IOMMU_IO_PGTABLE_ARMV7S is not set
+CONFIG_IOMMU_IO_PGTABLE_DART=y
# end of Generic IOMMU Pagetable Support
-CONFIG_IOMMU_DEBUGFS=n
+# CONFIG_IOMMU_DEBUGFS is not set
CONFIG_IOMMU_DEFAULT_DMA_STRICT=y
-CONFIG_IOMMU_DEFAULT_DMA_LAZY=n
-CONFIG_IOMMU_DEFAULT_PASSTHROUGH=n
+# CONFIG_IOMMU_DEFAULT_DMA_LAZY is not set
+# CONFIG_IOMMU_DEFAULT_PASSTHROUGH is not set
CONFIG_OF_IOMMU=y
CONFIG_IOMMU_DMA=y
+# CONFIG_IOMMUFD is not set
CONFIG_APPLE_DART=y
-CONFIG_ARM_SMMU=n
-CONFIG_ARM_SMMU_V3=n
-CONFIG_VIRTIO_IOMMU=n
+# CONFIG_ARM_SMMU is not set
+# CONFIG_ARM_SMMU_V3 is not set
+# CONFIG_VIRTIO_IOMMU is not set
#
# Remoteproc drivers
#
-CONFIG_REMOTEPROC=n
+# CONFIG_REMOTEPROC is not set
# end of Remoteproc drivers
#
# Rpmsg drivers
#
-CONFIG_RPMSG_QCOM_GLINK_RPM=n
-CONFIG_RPMSG_VIRTIO=n
+# CONFIG_RPMSG_VIRTIO is not set
# end of Rpmsg drivers
-CONFIG_SOUNDWIRE=n
+# CONFIG_SOUNDWIRE is not set
#
# SOC (System On Chip) specific Drivers
@@ -4995,24 +5583,33 @@ CONFIG_SOUNDWIRE=n
# Apple SoC drivers
#
CONFIG_APPLE_PMGR_PWRSTATE=y
+CONFIG_APPLE_PMGR_MISC=y
+CONFIG_APPLE_MBOX=y
CONFIG_APPLE_RTKIT=y
+CONFIG_APPLE_RTKIT_HELPER=y
CONFIG_APPLE_SART=y
+CONFIG_APPLE_DOCKCHANNEL=y
# end of Apple SoC drivers
#
# Broadcom SoC drivers
#
-CONFIG_SOC_BRCMSTB=n
+# CONFIG_SOC_BRCMSTB is not set
# end of Broadcom SoC drivers
#
# NXP/Freescale QorIQ SoC drivers
#
-CONFIG_QUICC_ENGINE=n
-CONFIG_FSL_RCPM=n
+# CONFIG_QUICC_ENGINE is not set
+# CONFIG_FSL_RCPM is not set
# end of NXP/Freescale QorIQ SoC drivers
#
+# fujitsu SoC drivers
+#
+# end of fujitsu SoC drivers
+
+#
# i.MX SoC drivers
#
# end of i.MX SoC drivers
@@ -5020,15 +5617,18 @@ CONFIG_FSL_RCPM=n
#
# Enable LiteX SoC Builder specific drivers
#
-CONFIG_LITEX_SOC_CONTROLLER=n
+# CONFIG_LITEX_SOC_CONTROLLER is not set
# end of Enable LiteX SoC Builder specific drivers
+# CONFIG_WPCM450_SOC is not set
+
#
# Qualcomm SoC drivers
#
+CONFIG_QCOM_QMI_HELPERS=m
# end of Qualcomm SoC drivers
-CONFIG_SOC_TI=n
+# CONFIG_SOC_TI is not set
#
# Xilinx SoC drivers
@@ -5036,30 +5636,46 @@ CONFIG_SOC_TI=n
# end of Xilinx SoC drivers
# end of SOC (System On Chip) specific Drivers
-CONFIG_PM_DEVFREQ=n
+CONFIG_PM_DEVFREQ=y
+
+#
+# DEVFREQ Governors
+#
+CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=m
+CONFIG_DEVFREQ_GOV_PERFORMANCE=m
+CONFIG_DEVFREQ_GOV_POWERSAVE=m
+CONFIG_DEVFREQ_GOV_USERSPACE=m
+# CONFIG_DEVFREQ_GOV_PASSIVE is not set
+
+#
+# DEVFREQ Drivers
+#
+CONFIG_PM_DEVFREQ_EVENT=y
CONFIG_EXTCON=y
#
# Extcon Device Drivers
#
-CONFIG_EXTCON_FSA9480=n
-CONFIG_EXTCON_GPIO=n
-CONFIG_EXTCON_MAX3355=n
-CONFIG_EXTCON_PTN5150=n
-CONFIG_EXTCON_RT8973A=n
-CONFIG_EXTCON_SM5502=n
-CONFIG_EXTCON_USB_GPIO=n
-CONFIG_EXTCON_USBC_TUSB320=n
-CONFIG_MEMORY=n
-CONFIG_IIO=n
-CONFIG_NTB=n
-CONFIG_VME_BUS=n
+# CONFIG_EXTCON_FSA9480 is not set
+# CONFIG_EXTCON_GPIO is not set
+# CONFIG_EXTCON_MAX3355 is not set
+# CONFIG_EXTCON_PTN5150 is not set
+# CONFIG_EXTCON_RT8973A is not set
+# CONFIG_EXTCON_SM5502 is not set
+# CONFIG_EXTCON_USB_GPIO is not set
+# CONFIG_EXTCON_USBC_TUSB320 is not set
+# CONFIG_MEMORY is not set
+# CONFIG_IIO is not set
+# CONFIG_NTB is not set
CONFIG_PWM=y
CONFIG_PWM_SYSFS=y
-CONFIG_PWM_ATMEL_TCB=n
-CONFIG_PWM_DWC=n
-CONFIG_PWM_FSL_FTM=n
-CONFIG_PWM_PCA9685=n
+CONFIG_PWM_APPLE=m
+# CONFIG_PWM_ATMEL_TCB is not set
+# CONFIG_PWM_CLK is not set
+# CONFIG_PWM_DWC is not set
+# CONFIG_PWM_FSL_FTM is not set
+# CONFIG_PWM_PCA9685 is not set
+# CONFIG_PWM_XILINX is not set
#
# IRQ chip support
@@ -5071,176 +5687,207 @@ CONFIG_ARM_GIC_V2M=y
CONFIG_ARM_GIC_V3=y
CONFIG_ARM_GIC_V3_ITS=y
CONFIG_ARM_GIC_V3_ITS_PCI=y
-CONFIG_AL_FIC=n
+# CONFIG_AL_FIC is not set
+# CONFIG_XILINX_INTC is not set
CONFIG_PARTITION_PERCPU=y
CONFIG_APPLE_AIC=y
# end of IRQ chip support
-CONFIG_IPACK_BUS=n
+# CONFIG_IPACK_BUS is not set
CONFIG_RESET_CONTROLLER=y
CONFIG_RESET_SCMI=y
-CONFIG_RESET_TI_SYSCON=n
+# CONFIG_RESET_TI_SYSCON is not set
+# CONFIG_RESET_TI_TPS380X is not set
#
# PHY Subsystem
#
CONFIG_GENERIC_PHY=y
-CONFIG_PHY_XGENE=n
-CONFIG_PHY_CAN_TRANSCEIVER=n
+# CONFIG_PHY_CAN_TRANSCEIVER is not set
+CONFIG_PHY_APPLE_ATC=y
+CONFIG_PHY_APPLE_DPTX=y
#
# PHY drivers for Broadcom platforms
#
-CONFIG_BCM_KONA_USB2_PHY=n
+# CONFIG_BCM_KONA_USB2_PHY is not set
# end of PHY drivers for Broadcom platforms
-CONFIG_PHY_CADENCE_TORRENT=n
-CONFIG_PHY_CADENCE_DPHY=n
-CONFIG_PHY_CADENCE_DPHY_RX=n
-CONFIG_PHY_CADENCE_SIERRA=n
-CONFIG_PHY_CADENCE_SALVO=n
-CONFIG_PHY_PXA_28NM_HSIC=n
-CONFIG_PHY_PXA_28NM_USB2=n
-CONFIG_PHY_LAN966X_SERDES=n
-CONFIG_PHY_MAPPHONE_MDM6600=n
-CONFIG_PHY_OCELOT_SERDES=n
-CONFIG_PHY_QCOM_USB_HS=n
-CONFIG_PHY_QCOM_USB_HSIC=n
-CONFIG_PHY_TUSB1210=n
+# CONFIG_PHY_CADENCE_TORRENT is not set
+# CONFIG_PHY_CADENCE_DPHY is not set
+# CONFIG_PHY_CADENCE_DPHY_RX is not set
+# CONFIG_PHY_CADENCE_SIERRA is not set
+# CONFIG_PHY_CADENCE_SALVO is not set
+# CONFIG_PHY_PXA_28NM_HSIC is not set
+# CONFIG_PHY_PXA_28NM_USB2 is not set
+# CONFIG_PHY_LAN966X_SERDES is not set
+# CONFIG_PHY_MAPPHONE_MDM6600 is not set
+# CONFIG_PHY_OCELOT_SERDES is not set
+# CONFIG_PHY_QCOM_USB_HS is not set
+# CONFIG_PHY_QCOM_USB_HSIC is not set
+# CONFIG_PHY_TUSB1210 is not set
# end of PHY Subsystem
-CONFIG_POWERCAP=n
-CONFIG_MCB=n
+CONFIG_POWERCAP=y
+# CONFIG_IDLE_INJECT is not set
+# CONFIG_ARM_SCMI_POWERCAP is not set
+# CONFIG_DTPM is not set
+# CONFIG_MCB is not set
#
# Performance monitor support
#
-CONFIG_ARM_CCI_PMU=n
-CONFIG_ARM_CCN=n
-CONFIG_ARM_CMN=n
+# CONFIG_ARM_CCI_PMU is not set
+# CONFIG_ARM_CCN is not set
+# CONFIG_ARM_CMN is not set
CONFIG_ARM_PMU=y
-CONFIG_ARM_PMU_ACPI=y
-CONFIG_ARM_SMMU_V3_PMU=n
-CONFIG_ARM_DSU_PMU=n
-CONFIG_ARM_SPE_PMU=n
-CONFIG_ARM_DMC620_PMU=n
-CONFIG_APPLE_M1_CPU_PMU=n
-CONFIG_HISI_PMU=n
-CONFIG_HISI_PCIE_PMU=n
-CONFIG_MARVELL_CN10K_DDR_PMU=n
+# CONFIG_ARM_SMMU_V3_PMU is not set
+CONFIG_ARM_PMUV3=y
+# CONFIG_ARM_DSU_PMU is not set
+# CONFIG_ARM_SPE_PMU is not set
+CONFIG_APPLE_M1_CPU_PMU=y
+# CONFIG_HISI_PCIE_PMU is not set
+# CONFIG_HNS3_PMU is not set
+# CONFIG_ARM_CORESIGHT_PMU_ARCH_SYSTEM_PMU is not set
# end of Performance monitor support
CONFIG_RAS=y
-CONFIG_USB4=n
+# CONFIG_USB4 is not set
#
# Android
#
-CONFIG_ANDROID=n
+# CONFIG_ANDROID_BINDER_IPC is not set
# end of Android
-CONFIG_LIBNVDIMM=n
+# CONFIG_LIBNVDIMM is not set
CONFIG_DAX=y
CONFIG_NVMEM=y
CONFIG_NVMEM_SYSFS=y
-CONFIG_NVMEM_SPMI_SDAM=n
-CONFIG_NVMEM_SPMI_MFD=y
+
+#
+# Layout Types
+#
+# CONFIG_NVMEM_LAYOUT_SL28_VPD is not set
+# CONFIG_NVMEM_LAYOUT_ONIE_TLV is not set
+# end of Layout Types
+
+CONFIG_NVMEM_APPLE_EFUSES=y
CONFIG_NVMEM_RMEM=m
+CONFIG_NVMEM_SPMI_MFD=y
+# CONFIG_NVMEM_SPMI_SDAM is not set
#
# HW tracing support
#
-CONFIG_STM=n
-CONFIG_INTEL_TH=n
+# CONFIG_STM is not set
+# CONFIG_INTEL_TH is not set
+# CONFIG_HISI_PTT is not set
# end of HW tracing support
-CONFIG_FPGA=n
-CONFIG_FSI=n
-CONFIG_TEE=n
+# CONFIG_FPGA is not set
+# CONFIG_FSI is not set
+# CONFIG_TEE is not set
+CONFIG_MULTIPLEXER=y
+
+#
+# Multiplexer drivers
+#
+# CONFIG_MUX_ADG792A is not set
+# CONFIG_MUX_ADGS1408 is not set
+CONFIG_MUX_APPLE_DPXBAR=m
+# CONFIG_MUX_GPIO is not set
+# CONFIG_MUX_MMIO is not set
+# end of Multiplexer drivers
+
CONFIG_PM_OPP=y
-CONFIG_SIOX=n
-CONFIG_SLIMBUS=n
-CONFIG_INTERCONNECT=n
-CONFIG_COUNTER=n
-CONFIG_MOST=n
-CONFIG_PECI=n
+# CONFIG_SIOX is not set
+# CONFIG_SLIMBUS is not set
+# CONFIG_INTERCONNECT is not set
+# CONFIG_COUNTER is not set
+# CONFIG_MOST is not set
+# CONFIG_PECI is not set
+# CONFIG_HTE is not set
+# CONFIG_CDX_BUS is not set
# end of Device Drivers
#
# File systems
#
CONFIG_DCACHE_WORD_ACCESS=y
-CONFIG_VALIDATE_FS_PARSER=n
+# CONFIG_VALIDATE_FS_PARSER is not set
CONFIG_FS_IOMAP=y
-CONFIG_EXT2_FS=n
-CONFIG_EXT3_FS=n
+CONFIG_BUFFER_HEAD=y
+CONFIG_LEGACY_DIRECT_IO=y
+# CONFIG_EXT2_FS is not set
+# CONFIG_EXT3_FS is not set
CONFIG_EXT4_FS=y
CONFIG_EXT4_USE_FOR_EXT2=y
CONFIG_EXT4_FS_POSIX_ACL=y
CONFIG_EXT4_FS_SECURITY=y
-CONFIG_EXT4_DEBUG=n
+# CONFIG_EXT4_DEBUG is not set
CONFIG_JBD2=y
-CONFIG_JBD2_DEBUG=n
+# CONFIG_JBD2_DEBUG is not set
CONFIG_FS_MBCACHE=y
-CONFIG_REISERFS_FS=n
-CONFIG_JFS_FS=n
-CONFIG_XFS_FS=n
-CONFIG_GFS2_FS=n
-CONFIG_OCFS2_FS=n
+# CONFIG_REISERFS_FS is not set
+# CONFIG_JFS_FS is not set
+# CONFIG_XFS_FS is not set
+# CONFIG_GFS2_FS is not set
+# CONFIG_OCFS2_FS is not set
CONFIG_BTRFS_FS=y
CONFIG_BTRFS_FS_POSIX_ACL=y
-CONFIG_BTRFS_FS_CHECK_INTEGRITY=n
-CONFIG_BTRFS_FS_RUN_SANITY_TESTS=n
-CONFIG_BTRFS_DEBUG=n
-CONFIG_BTRFS_ASSERT=n
-CONFIG_BTRFS_FS_REF_VERIFY=n
-CONFIG_NILFS2_FS=n
+# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set
+# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set
+# CONFIG_BTRFS_DEBUG is not set
+# CONFIG_BTRFS_ASSERT is not set
+# CONFIG_BTRFS_FS_REF_VERIFY is not set
+# CONFIG_NILFS2_FS is not set
CONFIG_F2FS_FS=y
CONFIG_F2FS_STAT_FS=y
CONFIG_F2FS_FS_XATTR=y
CONFIG_F2FS_FS_POSIX_ACL=y
CONFIG_F2FS_FS_SECURITY=y
-CONFIG_F2FS_CHECK_FS=n
-CONFIG_F2FS_FAULT_INJECTION=n
+# CONFIG_F2FS_CHECK_FS is not set
+# CONFIG_F2FS_FAULT_INJECTION is not set
CONFIG_F2FS_FS_COMPRESSION=y
CONFIG_F2FS_FS_LZO=y
CONFIG_F2FS_FS_LZORLE=y
CONFIG_F2FS_FS_LZ4=y
CONFIG_F2FS_FS_LZ4HC=y
CONFIG_F2FS_FS_ZSTD=y
-CONFIG_F2FS_IOSTAT=n
-CONFIG_F2FS_UNFAIR_RWSEM=n
+# CONFIG_F2FS_IOSTAT is not set
+# CONFIG_F2FS_UNFAIR_RWSEM is not set
CONFIG_FS_POSIX_ACL=y
CONFIG_EXPORTFS=y
CONFIG_EXPORTFS_BLOCK_OPS=y
CONFIG_FILE_LOCKING=y
CONFIG_FS_ENCRYPTION=y
CONFIG_FS_ENCRYPTION_ALGS=y
-CONFIG_FS_VERITY=n
+# CONFIG_FS_VERITY is not set
CONFIG_FSNOTIFY=y
-CONFIG_DNOTIFY=y
+# CONFIG_DNOTIFY is not set
CONFIG_INOTIFY_USER=y
CONFIG_FANOTIFY=y
CONFIG_FANOTIFY_ACCESS_PERMISSIONS=y
-CONFIG_QUOTA=n
-CONFIG_AUTOFS4_FS=n
-CONFIG_AUTOFS_FS=n
+# CONFIG_QUOTA is not set
+# CONFIG_AUTOFS_FS is not set
CONFIG_FUSE_FS=m
CONFIG_CUSE=m
-CONFIG_VIRTIO_FS=n
+CONFIG_VIRTIO_FS=m
CONFIG_OVERLAY_FS=m
-CONFIG_OVERLAY_FS_REDIRECT_DIR=n
+# CONFIG_OVERLAY_FS_REDIRECT_DIR is not set
CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y
-CONFIG_OVERLAY_FS_INDEX=n
-CONFIG_OVERLAY_FS_XINO_AUTO=n
-CONFIG_OVERLAY_FS_METACOPY=n
+# CONFIG_OVERLAY_FS_INDEX is not set
+# CONFIG_OVERLAY_FS_XINO_AUTO is not set
+# CONFIG_OVERLAY_FS_METACOPY is not set
+# CONFIG_OVERLAY_FS_DEBUG is not set
#
# Caches
#
CONFIG_NETFS_SUPPORT=m
-CONFIG_NETFS_STATS=n
-CONFIG_FSCACHE=n
+# CONFIG_NETFS_STATS is not set
+# CONFIG_FSCACHE is not set
# end of Caches
#
@@ -5256,27 +5903,27 @@ CONFIG_UDF_FS=m
# DOS/FAT/EXFAT/NT Filesystems
#
CONFIG_FAT_FS=y
-CONFIG_MSDOS_FS=n
+# CONFIG_MSDOS_FS is not set
CONFIG_VFAT_FS=y
CONFIG_FAT_DEFAULT_CODEPAGE=437
CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
-CONFIG_FAT_DEFAULT_UTF8=n
+# CONFIG_FAT_DEFAULT_UTF8 is not set
CONFIG_EXFAT_FS=m
CONFIG_EXFAT_DEFAULT_IOCHARSET="utf8"
CONFIG_NTFS_FS=m
-CONFIG_NTFS_DEBUG=n
-CONFIG_NTFS_RW=n
+# CONFIG_NTFS_DEBUG is not set
+# CONFIG_NTFS_RW is not set
CONFIG_NTFS3_FS=m
-CONFIG_NTFS3_64BIT_CLUSTER=n
-CONFIG_NTFS3_LZX_XPRESS=n
-CONFIG_NTFS3_FS_POSIX_ACL=n
+# CONFIG_NTFS3_64BIT_CLUSTER is not set
+# CONFIG_NTFS3_LZX_XPRESS is not set
+# CONFIG_NTFS3_FS_POSIX_ACL is not set
# end of DOS/FAT/EXFAT/NT Filesystems
#
# Pseudo filesystems
#
CONFIG_PROC_FS=y
-CONFIG_PROC_KCORE=n
+# CONFIG_PROC_KCORE is not set
CONFIG_PROC_SYSCTL=y
CONFIG_PROC_PAGE_MONITOR=y
CONFIG_PROC_CHILDREN=y
@@ -5285,145 +5932,192 @@ CONFIG_SYSFS=y
CONFIG_TMPFS=y
CONFIG_TMPFS_POSIX_ACL=y
CONFIG_TMPFS_XATTR=y
-CONFIG_TMPFS_INODE64=n
+# CONFIG_TMPFS_INODE64 is not set
+# CONFIG_TMPFS_QUOTA is not set
CONFIG_ARCH_SUPPORTS_HUGETLBFS=y
CONFIG_HUGETLBFS=y
CONFIG_HUGETLB_PAGE=y
-CONFIG_MEMFD_CREATE=y
CONFIG_ARCH_HAS_GIGANTIC_PAGE=y
CONFIG_CONFIGFS_FS=y
-CONFIG_EFIVAR_FS=y
+CONFIG_EFIVAR_FS=m
# end of Pseudo filesystems
CONFIG_MISC_FILESYSTEMS=y
-CONFIG_ORANGEFS_FS=n
-CONFIG_ADFS_FS=n
-CONFIG_AFFS_FS=n
-CONFIG_ECRYPT_FS=n
-CONFIG_HFS_FS=n
-CONFIG_HFSPLUS_FS=n
-CONFIG_BEFS_FS=n
-CONFIG_BFS_FS=n
-CONFIG_EFS_FS=n
-CONFIG_CRAMFS=n
+# CONFIG_ORANGEFS_FS is not set
+# CONFIG_ADFS_FS is not set
+# CONFIG_AFFS_FS is not set
+# CONFIG_ECRYPT_FS is not set
+# CONFIG_HFS_FS is not set
+# CONFIG_HFSPLUS_FS is not set
+# CONFIG_BEFS_FS is not set
+# CONFIG_BFS_FS is not set
+# CONFIG_EFS_FS is not set
+# CONFIG_CRAMFS is not set
CONFIG_SQUASHFS=y
-CONFIG_SQUASHFS_FILE_CACHE=y
-CONFIG_SQUASHFS_FILE_DIRECT=n
+# CONFIG_SQUASHFS_FILE_CACHE is not set
+CONFIG_SQUASHFS_FILE_DIRECT=y
CONFIG_SQUASHFS_DECOMP_SINGLE=y
-CONFIG_SQUASHFS_DECOMP_MULTI=n
-CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU=n
-CONFIG_SQUASHFS_XATTR=n
+CONFIG_SQUASHFS_DECOMP_MULTI=y
+CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU=y
+CONFIG_SQUASHFS_CHOICE_DECOMP_BY_MOUNT=y
+CONFIG_SQUASHFS_MOUNT_DECOMP_THREADS=y
+CONFIG_SQUASHFS_XATTR=y
CONFIG_SQUASHFS_ZLIB=y
-CONFIG_SQUASHFS_LZ4=n
-CONFIG_SQUASHFS_LZO=n
-CONFIG_SQUASHFS_XZ=n
-CONFIG_SQUASHFS_ZSTD=n
-CONFIG_SQUASHFS_4K_DEVBLK_SIZE=n
-CONFIG_SQUASHFS_EMBEDDED=n
+CONFIG_SQUASHFS_LZ4=y
+CONFIG_SQUASHFS_LZO=y
+CONFIG_SQUASHFS_XZ=y
+CONFIG_SQUASHFS_ZSTD=y
+CONFIG_SQUASHFS_4K_DEVBLK_SIZE=y
+# CONFIG_SQUASHFS_EMBEDDED is not set
CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3
-CONFIG_VXFS_FS=n
-CONFIG_MINIX_FS=n
-CONFIG_OMFS_FS=n
-CONFIG_HPFS_FS=n
-CONFIG_QNX4FS_FS=n
-CONFIG_QNX6FS_FS=n
-CONFIG_ROMFS_FS=n
+# CONFIG_VXFS_FS is not set
+# CONFIG_MINIX_FS is not set
+# CONFIG_OMFS_FS is not set
+# CONFIG_HPFS_FS is not set
+# CONFIG_QNX4FS_FS is not set
+# CONFIG_QNX6FS_FS is not set
+# CONFIG_ROMFS_FS is not set
CONFIG_PSTORE=y
CONFIG_PSTORE_DEFAULT_KMSG_BYTES=10240
-CONFIG_PSTORE_DEFLATE_COMPRESS=y
-CONFIG_PSTORE_LZO_COMPRESS=n
-CONFIG_PSTORE_LZ4_COMPRESS=n
-CONFIG_PSTORE_LZ4HC_COMPRESS=n
-CONFIG_PSTORE_842_COMPRESS=n
-CONFIG_PSTORE_ZSTD_COMPRESS=n
CONFIG_PSTORE_COMPRESS=y
-CONFIG_PSTORE_DEFLATE_COMPRESS_DEFAULT=y
-CONFIG_PSTORE_COMPRESS_DEFAULT="deflate"
-CONFIG_PSTORE_CONSOLE=n
-CONFIG_PSTORE_PMSG=n
-CONFIG_PSTORE_RAM=n
-CONFIG_PSTORE_BLK=n
-CONFIG_SYSV_FS=n
-CONFIG_UFS_FS=n
-CONFIG_EROFS_FS=n
+# CONFIG_PSTORE_CONSOLE is not set
+# CONFIG_PSTORE_PMSG is not set
+# CONFIG_PSTORE_RAM is not set
+# CONFIG_PSTORE_BLK is not set
+# CONFIG_SYSV_FS is not set
+CONFIG_UFS_FS=m
+CONFIG_UFS_FS_WRITE=y
+# CONFIG_UFS_DEBUG is not set
+CONFIG_EROFS_FS=m
+# CONFIG_EROFS_FS_DEBUG is not set
+CONFIG_EROFS_FS_XATTR=y
+CONFIG_EROFS_FS_POSIX_ACL=y
+CONFIG_EROFS_FS_SECURITY=y
+CONFIG_EROFS_FS_ZIP=y
+# CONFIG_EROFS_FS_ZIP_LZMA is not set
+# CONFIG_EROFS_FS_ZIP_DEFLATE is not set
+# CONFIG_EROFS_FS_PCPU_KTHREAD is not set
CONFIG_NETWORK_FILESYSTEMS=y
-CONFIG_NFS_FS=n
-CONFIG_NFSD=n
-CONFIG_CEPH_FS=n
+CONFIG_NFS_FS=m
+CONFIG_NFS_V2=m
+CONFIG_NFS_V3=m
+CONFIG_NFS_V3_ACL=y
+CONFIG_NFS_V4=m
+CONFIG_NFS_SWAP=y
+CONFIG_NFS_V4_1=y
+CONFIG_NFS_V4_2=y
+CONFIG_PNFS_FILE_LAYOUT=m
+CONFIG_PNFS_BLOCK=m
+CONFIG_PNFS_FLEXFILE_LAYOUT=m
+CONFIG_NFS_V4_1_IMPLEMENTATION_ID_DOMAIN="kernel.org"
+CONFIG_NFS_V4_1_MIGRATION=y
+CONFIG_NFS_V4_SECURITY_LABEL=y
+# CONFIG_NFS_USE_LEGACY_DNS is not set
+CONFIG_NFS_USE_KERNEL_DNS=y
+CONFIG_NFS_DISABLE_UDP_SUPPORT=y
+CONFIG_NFS_V4_2_READ_PLUS=y
+CONFIG_NFSD=m
+# CONFIG_NFSD_V2 is not set
+CONFIG_NFSD_V3_ACL=y
+CONFIG_NFSD_V4=y
+CONFIG_NFSD_PNFS=y
+CONFIG_NFSD_BLOCKLAYOUT=y
+CONFIG_NFSD_SCSILAYOUT=y
+CONFIG_NFSD_FLEXFILELAYOUT=y
+CONFIG_NFSD_V4_2_INTER_SSC=y
+CONFIG_NFSD_V4_SECURITY_LABEL=y
+CONFIG_GRACE_PERIOD=m
+CONFIG_LOCKD=m
+CONFIG_LOCKD_V4=y
+CONFIG_NFS_ACL_SUPPORT=m
+CONFIG_NFS_COMMON=y
+CONFIG_NFS_V4_2_SSC_HELPER=y
+CONFIG_SUNRPC=m
+CONFIG_SUNRPC_GSS=m
+CONFIG_SUNRPC_BACKCHANNEL=y
+CONFIG_SUNRPC_SWAP=y
+CONFIG_RPCSEC_GSS_KRB5=m
+CONFIG_RPCSEC_GSS_KRB5_ENCTYPES_AES_SHA1=y
+# CONFIG_RPCSEC_GSS_KRB5_ENCTYPES_AES_SHA2 is not set
+# CONFIG_SUNRPC_DEBUG is not set
+CONFIG_CEPH_FS=m
+CONFIG_CEPH_FS_POSIX_ACL=y
+# CONFIG_CEPH_FS_SECURITY_LABEL is not set
CONFIG_CIFS=m
-CONFIG_CIFS_STATS2=y
+# CONFIG_CIFS_STATS2 is not set
CONFIG_CIFS_ALLOW_INSECURE_LEGACY=y
-CONFIG_CIFS_UPCALL=n
+# CONFIG_CIFS_UPCALL is not set
CONFIG_CIFS_XATTR=y
-CONFIG_CIFS_POSIX=n
+CONFIG_CIFS_POSIX=y
CONFIG_CIFS_DEBUG=y
-CONFIG_CIFS_DEBUG2=n
-CONFIG_CIFS_DEBUG_DUMP_KEYS=n
-CONFIG_CIFS_DFS_UPCALL=n
-CONFIG_CIFS_SWN_UPCALL=n
+# CONFIG_CIFS_DEBUG2 is not set
+# CONFIG_CIFS_DEBUG_DUMP_KEYS is not set
+CONFIG_CIFS_DFS_UPCALL=y
+CONFIG_CIFS_SWN_UPCALL=y
CONFIG_SMB_SERVER=m
CONFIG_SMB_SERVER_CHECK_CAP_NET_ADMIN=y
-CONFIG_SMB_SERVER_KERBEROS5=n
-CONFIG_SMBFS_COMMON=m
-CONFIG_CODA_FS=n
-CONFIG_AFS_FS=n
+# CONFIG_SMB_SERVER_KERBEROS5 is not set
+CONFIG_SMBFS=m
+# CONFIG_CODA_FS is not set
+# CONFIG_AFS_FS is not set
CONFIG_9P_FS=m
-CONFIG_9P_FS_POSIX_ACL=n
-CONFIG_9P_FS_SECURITY=n
+CONFIG_9P_FS_POSIX_ACL=y
+CONFIG_9P_FS_SECURITY=y
CONFIG_NLS=y
CONFIG_NLS_DEFAULT="utf8"
CONFIG_NLS_CODEPAGE_437=m
CONFIG_NLS_CODEPAGE_737=m
-CONFIG_NLS_CODEPAGE_775=n
+# CONFIG_NLS_CODEPAGE_775 is not set
CONFIG_NLS_CODEPAGE_850=m
CONFIG_NLS_CODEPAGE_852=m
CONFIG_NLS_CODEPAGE_855=m
-CONFIG_NLS_CODEPAGE_857=n
-CONFIG_NLS_CODEPAGE_860=n
-CONFIG_NLS_CODEPAGE_861=n
-CONFIG_NLS_CODEPAGE_862=n
-CONFIG_NLS_CODEPAGE_863=n
-CONFIG_NLS_CODEPAGE_864=n
-CONFIG_NLS_CODEPAGE_865=n
+# CONFIG_NLS_CODEPAGE_857 is not set
+# CONFIG_NLS_CODEPAGE_860 is not set
+# CONFIG_NLS_CODEPAGE_861 is not set
+# CONFIG_NLS_CODEPAGE_862 is not set
+# CONFIG_NLS_CODEPAGE_863 is not set
+# CONFIG_NLS_CODEPAGE_864 is not set
+# CONFIG_NLS_CODEPAGE_865 is not set
CONFIG_NLS_CODEPAGE_866=m
-CONFIG_NLS_CODEPAGE_869=n
-CONFIG_NLS_CODEPAGE_936=n
-CONFIG_NLS_CODEPAGE_950=n
-CONFIG_NLS_CODEPAGE_932=n
-CONFIG_NLS_CODEPAGE_949=n
-CONFIG_NLS_CODEPAGE_874=n
+# CONFIG_NLS_CODEPAGE_869 is not set
+# CONFIG_NLS_CODEPAGE_936 is not set
+# CONFIG_NLS_CODEPAGE_950 is not set
+# CONFIG_NLS_CODEPAGE_932 is not set
+# CONFIG_NLS_CODEPAGE_949 is not set
+# CONFIG_NLS_CODEPAGE_874 is not set
CONFIG_NLS_ISO8859_8=m
CONFIG_NLS_CODEPAGE_1250=m
CONFIG_NLS_CODEPAGE_1251=m
CONFIG_NLS_ASCII=m
CONFIG_NLS_ISO8859_1=m
CONFIG_NLS_ISO8859_2=m
-CONFIG_NLS_ISO8859_3=n
+# CONFIG_NLS_ISO8859_3 is not set
CONFIG_NLS_ISO8859_4=m
CONFIG_NLS_ISO8859_5=m
-CONFIG_NLS_ISO8859_6=n
-CONFIG_NLS_ISO8859_7=n
-CONFIG_NLS_ISO8859_9=n
-CONFIG_NLS_ISO8859_13=n
-CONFIG_NLS_ISO8859_14=n
+# CONFIG_NLS_ISO8859_6 is not set
+# CONFIG_NLS_ISO8859_7 is not set
+# CONFIG_NLS_ISO8859_9 is not set
+# CONFIG_NLS_ISO8859_13 is not set
+# CONFIG_NLS_ISO8859_14 is not set
CONFIG_NLS_ISO8859_15=m
-CONFIG_NLS_KOI8_R=n
-CONFIG_NLS_KOI8_U=n
-CONFIG_NLS_MAC_ROMAN=n
-CONFIG_NLS_MAC_CELTIC=n
-CONFIG_NLS_MAC_CENTEURO=n
-CONFIG_NLS_MAC_CROATIAN=n
-CONFIG_NLS_MAC_CYRILLIC=n
-CONFIG_NLS_MAC_GAELIC=n
-CONFIG_NLS_MAC_GREEK=n
-CONFIG_NLS_MAC_ICELAND=n
-CONFIG_NLS_MAC_INUIT=n
-CONFIG_NLS_MAC_ROMANIAN=n
-CONFIG_NLS_MAC_TURKISH=n
+# CONFIG_NLS_KOI8_R is not set
+# CONFIG_NLS_KOI8_U is not set
+# CONFIG_NLS_MAC_ROMAN is not set
+# CONFIG_NLS_MAC_CELTIC is not set
+# CONFIG_NLS_MAC_CENTEURO is not set
+# CONFIG_NLS_MAC_CROATIAN is not set
+# CONFIG_NLS_MAC_CYRILLIC is not set
+# CONFIG_NLS_MAC_GAELIC is not set
+# CONFIG_NLS_MAC_GREEK is not set
+# CONFIG_NLS_MAC_ICELAND is not set
+# CONFIG_NLS_MAC_INUIT is not set
+# CONFIG_NLS_MAC_ROMANIAN is not set
+# CONFIG_NLS_MAC_TURKISH is not set
CONFIG_NLS_UTF8=m
+CONFIG_NLS_UCS2_UTILS=m
CONFIG_DLM=m
-CONFIG_DLM_DEBUG=n
-CONFIG_UNICODE=n
+# CONFIG_DLM_DEBUG is not set
+# CONFIG_UNICODE is not set
CONFIG_IO_WQ=y
# end of File systems
@@ -5431,30 +6125,31 @@ CONFIG_IO_WQ=y
# Security options
#
CONFIG_KEYS=y
-CONFIG_KEYS_REQUEST_CACHE=n
+# CONFIG_KEYS_REQUEST_CACHE is not set
CONFIG_PERSISTENT_KEYRINGS=y
+# CONFIG_TRUSTED_KEYS is not set
CONFIG_ENCRYPTED_KEYS=y
-CONFIG_USER_DECRYPTED_DATA=n
+# CONFIG_USER_DECRYPTED_DATA is not set
CONFIG_KEY_DH_OPERATIONS=y
-CONFIG_SECURITY_DMESG_RESTRICT=n
+# CONFIG_KEY_NOTIFICATIONS is not set
+# CONFIG_SECURITY_DMESG_RESTRICT is not set
CONFIG_SECURITY=y
-CONFIG_SECURITYFS=n
-CONFIG_SECURITY_NETWORK=n
-CONFIG_SECURITY_PATH=n
-CONFIG_HAVE_HARDENED_USERCOPY_ALLOCATOR=y
-CONFIG_HARDENED_USERCOPY=n
-CONFIG_FORTIFY_SOURCE=n
-CONFIG_STATIC_USERMODEHELPER=n
-CONFIG_SECURITY_SMACK=n
-CONFIG_SECURITY_TOMOYO=n
-CONFIG_SECURITY_APPARMOR=n
-CONFIG_SECURITY_LOADPIN=n
-CONFIG_SECURITY_YAMA=n
-CONFIG_SECURITY_SAFESETID=n
-CONFIG_SECURITY_LOCKDOWN_LSM=n
-CONFIG_SECURITY_LANDLOCK=n
-CONFIG_INTEGRITY=n
-CONFIG_IMA_SECURE_AND_OR_TRUSTED_BOOT=n
+# CONFIG_SECURITYFS is not set
+# CONFIG_SECURITY_NETWORK is not set
+# CONFIG_SECURITY_PATH is not set
+# CONFIG_HARDENED_USERCOPY is not set
+# CONFIG_FORTIFY_SOURCE is not set
+# CONFIG_STATIC_USERMODEHELPER is not set
+# CONFIG_SECURITY_SMACK is not set
+# CONFIG_SECURITY_TOMOYO is not set
+# CONFIG_SECURITY_APPARMOR is not set
+# CONFIG_SECURITY_LOADPIN is not set
+# CONFIG_SECURITY_YAMA is not set
+# CONFIG_SECURITY_SAFESETID is not set
+# CONFIG_SECURITY_LOCKDOWN_LSM is not set
+# CONFIG_SECURITY_LANDLOCK is not set
+# CONFIG_INTEGRITY is not set
+# CONFIG_IMA_SECURE_AND_OR_TRUSTED_BOOT is not set
CONFIG_DEFAULT_SECURITY_DAC=y
CONFIG_LSM=""
@@ -5465,12 +6160,26 @@ CONFIG_LSM=""
#
# Memory initialization
#
+CONFIG_CC_HAS_AUTO_VAR_INIT_PATTERN=y
+CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO_BARE=y
+CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO=y
CONFIG_INIT_STACK_NONE=y
-CONFIG_INIT_ON_ALLOC_DEFAULT_ON=n
-CONFIG_INIT_ON_FREE_DEFAULT_ON=n
+# CONFIG_INIT_STACK_ALL_PATTERN is not set
+# CONFIG_INIT_STACK_ALL_ZERO is not set
+# CONFIG_INIT_ON_ALLOC_DEFAULT_ON is not set
+# CONFIG_INIT_ON_FREE_DEFAULT_ON is not set
CONFIG_CC_HAS_ZERO_CALL_USED_REGS=y
-CONFIG_ZERO_CALL_USED_REGS=n
+# CONFIG_ZERO_CALL_USED_REGS is not set
# end of Memory initialization
+
+#
+# Hardening of kernel data structures
+#
+# CONFIG_LIST_HARDENED is not set
+# CONFIG_BUG_ON_DATA_CORRUPTION is not set
+# end of Hardening of kernel data structures
+
+CONFIG_RANDSTRUCT_NONE=y
# end of Kernel hardening options
# end of Security options
@@ -5484,6 +6193,7 @@ CONFIG_CRYPTO_ALGAPI=y
CONFIG_CRYPTO_ALGAPI2=y
CONFIG_CRYPTO_AEAD=y
CONFIG_CRYPTO_AEAD2=y
+CONFIG_CRYPTO_SIG2=y
CONFIG_CRYPTO_SKCIPHER=y
CONFIG_CRYPTO_SKCIPHER2=y
CONFIG_CRYPTO_HASH=y
@@ -5499,121 +6209,132 @@ CONFIG_CRYPTO_ACOMP2=y
CONFIG_CRYPTO_MANAGER=y
CONFIG_CRYPTO_MANAGER2=y
CONFIG_CRYPTO_USER=m
-CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=n
-CONFIG_CRYPTO_GF128MUL=m
+CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y
CONFIG_CRYPTO_NULL=y
CONFIG_CRYPTO_NULL2=y
-CONFIG_CRYPTO_PCRYPT=n
-CONFIG_CRYPTO_CRYPTD=y
+CONFIG_CRYPTO_PCRYPT=m
+CONFIG_CRYPTO_CRYPTD=m
CONFIG_CRYPTO_AUTHENC=m
-CONFIG_CRYPTO_TEST=n
+# CONFIG_CRYPTO_TEST is not set
+# end of Crypto core or helper
#
# Public-key cryptography
#
CONFIG_CRYPTO_RSA=y
CONFIG_CRYPTO_DH=y
-CONFIG_CRYPTO_DH_RFC7919_GROUPS=n
+# CONFIG_CRYPTO_DH_RFC7919_GROUPS is not set
CONFIG_CRYPTO_ECC=m
CONFIG_CRYPTO_ECDH=m
-CONFIG_CRYPTO_ECDSA=n
+# CONFIG_CRYPTO_ECDSA is not set
CONFIG_CRYPTO_ECRDSA=m
-CONFIG_CRYPTO_SM2=n
+# CONFIG_CRYPTO_SM2 is not set
CONFIG_CRYPTO_CURVE25519=m
+# end of Public-key cryptography
#
-# Authenticated Encryption with Associated Data
+# Block ciphers
#
-CONFIG_CRYPTO_CCM=m
-CONFIG_CRYPTO_GCM=m
-CONFIG_CRYPTO_CHACHA20POLY1305=m
-CONFIG_CRYPTO_AEGIS128=n
-CONFIG_CRYPTO_SEQIV=m
-CONFIG_CRYPTO_ECHAINIV=m
+CONFIG_CRYPTO_AES=y
+# CONFIG_CRYPTO_AES_TI is not set
+# CONFIG_CRYPTO_ANUBIS is not set
+# CONFIG_CRYPTO_ARIA is not set
+CONFIG_CRYPTO_BLOWFISH=m
+CONFIG_CRYPTO_BLOWFISH_COMMON=m
+# CONFIG_CRYPTO_CAMELLIA is not set
+# CONFIG_CRYPTO_CAST5 is not set
+# CONFIG_CRYPTO_CAST6 is not set
+CONFIG_CRYPTO_DES=m
+# CONFIG_CRYPTO_FCRYPT is not set
+# CONFIG_CRYPTO_KHAZAD is not set
+CONFIG_CRYPTO_SEED=m
+CONFIG_CRYPTO_SERPENT=m
+CONFIG_CRYPTO_SM4=m
+CONFIG_CRYPTO_SM4_GENERIC=m
+# CONFIG_CRYPTO_TEA is not set
+CONFIG_CRYPTO_TWOFISH=m
+CONFIG_CRYPTO_TWOFISH_COMMON=m
+# end of Block ciphers
#
-# Block modes
+# Length-preserving ciphers and modes
#
+CONFIG_CRYPTO_ADIANTUM=m
+CONFIG_CRYPTO_ARC4=m
+CONFIG_CRYPTO_CHACHA20=m
CONFIG_CRYPTO_CBC=y
-CONFIG_CRYPTO_CFB=n
+# CONFIG_CRYPTO_CFB is not set
CONFIG_CRYPTO_CTR=y
CONFIG_CRYPTO_CTS=y
CONFIG_CRYPTO_ECB=y
+# CONFIG_CRYPTO_HCTR2 is not set
+CONFIG_CRYPTO_KEYWRAP=m
CONFIG_CRYPTO_LRW=m
-CONFIG_CRYPTO_OFB=n
-CONFIG_CRYPTO_PCBC=n
+# CONFIG_CRYPTO_OFB is not set
+# CONFIG_CRYPTO_PCBC is not set
CONFIG_CRYPTO_XTS=y
-CONFIG_CRYPTO_KEYWRAP=m
CONFIG_CRYPTO_NHPOLY1305=m
-CONFIG_CRYPTO_ADIANTUM=m
-CONFIG_CRYPTO_ESSIV=m
+# end of Length-preserving ciphers and modes
#
-# Hash modes
+# AEAD (authenticated encryption with associated data) ciphers
#
-CONFIG_CRYPTO_CMAC=m
-CONFIG_CRYPTO_HMAC=y
-CONFIG_CRYPTO_XCBC=n
-CONFIG_CRYPTO_VMAC=n
+# CONFIG_CRYPTO_AEGIS128 is not set
+CONFIG_CRYPTO_CHACHA20POLY1305=m
+CONFIG_CRYPTO_CCM=m
+CONFIG_CRYPTO_GCM=m
+CONFIG_CRYPTO_GENIV=m
+CONFIG_CRYPTO_SEQIV=m
+CONFIG_CRYPTO_ECHAINIV=m
+CONFIG_CRYPTO_ESSIV=m
+# end of AEAD (authenticated encryption with associated data) ciphers
#
-# Digest
+# Hashes, digests, and MACs
#
-CONFIG_CRYPTO_CRC32C=y
-CONFIG_CRYPTO_CRC32=y
-CONFIG_CRYPTO_XXHASH=y
CONFIG_CRYPTO_BLAKE2B=y
-CONFIG_CRYPTO_BLAKE2S=m
-CONFIG_CRYPTO_CRCT10DIF=y
+CONFIG_CRYPTO_CMAC=m
CONFIG_CRYPTO_GHASH=m
-CONFIG_CRYPTO_POLY1305=m
+CONFIG_CRYPTO_HMAC=y
CONFIG_CRYPTO_MD4=m
CONFIG_CRYPTO_MD5=y
CONFIG_CRYPTO_MICHAEL_MIC=m
+CONFIG_CRYPTO_POLY1305=m
CONFIG_CRYPTO_RMD160=m
CONFIG_CRYPTO_SHA1=y
CONFIG_CRYPTO_SHA256=y
CONFIG_CRYPTO_SHA512=y
-CONFIG_CRYPTO_SHA3=m
+CONFIG_CRYPTO_SHA3=y
CONFIG_CRYPTO_SM3=m
+CONFIG_CRYPTO_SM3_GENERIC=m
CONFIG_CRYPTO_STREEBOG=m
+# CONFIG_CRYPTO_VMAC is not set
CONFIG_CRYPTO_WP512=m
+# CONFIG_CRYPTO_XCBC is not set
+CONFIG_CRYPTO_XXHASH=y
+# end of Hashes, digests, and MACs
#
-# Ciphers
+# CRCs (cyclic redundancy checks)
#
-CONFIG_CRYPTO_AES=y
-CONFIG_CRYPTO_AES_TI=n
-CONFIG_CRYPTO_ANUBIS=n
-CONFIG_CRYPTO_ARC4=m
-CONFIG_CRYPTO_BLOWFISH=m
-CONFIG_CRYPTO_BLOWFISH_COMMON=m
-CONFIG_CRYPTO_CAMELLIA=n
-CONFIG_CRYPTO_CAST5=n
-CONFIG_CRYPTO_CAST6=n
-CONFIG_CRYPTO_DES=m
-CONFIG_CRYPTO_FCRYPT=n
-CONFIG_CRYPTO_KHAZAD=n
-CONFIG_CRYPTO_CHACHA20=m
-CONFIG_CRYPTO_SEED=m
-CONFIG_CRYPTO_SERPENT=m
-CONFIG_CRYPTO_SM4=m
-CONFIG_CRYPTO_TEA=n
-CONFIG_CRYPTO_TWOFISH=m
-CONFIG_CRYPTO_TWOFISH_COMMON=m
+CONFIG_CRYPTO_CRC32C=y
+CONFIG_CRYPTO_CRC32=y
+CONFIG_CRYPTO_CRCT10DIF=y
+# end of CRCs (cyclic redundancy checks)
#
# Compression
#
CONFIG_CRYPTO_DEFLATE=y
-CONFIG_CRYPTO_LZO=n
-CONFIG_CRYPTO_842=n
-CONFIG_CRYPTO_LZ4=n
-CONFIG_CRYPTO_LZ4HC=n
+# CONFIG_CRYPTO_LZO is not set
+# CONFIG_CRYPTO_842 is not set
+# CONFIG_CRYPTO_LZ4 is not set
+# CONFIG_CRYPTO_LZ4HC is not set
CONFIG_CRYPTO_ZSTD=y
+# end of Compression
#
-# Random Number Generation
+# Random number generation
#
CONFIG_CRYPTO_ANSI_CPRNG=y
CONFIG_CRYPTO_DRBG_MENU=y
@@ -5622,53 +6343,94 @@ CONFIG_CRYPTO_DRBG_HASH=y
CONFIG_CRYPTO_DRBG_CTR=y
CONFIG_CRYPTO_DRBG=y
CONFIG_CRYPTO_JITTERENTROPY=y
+# CONFIG_CRYPTO_JITTERENTROPY_TESTINTERFACE is not set
CONFIG_CRYPTO_KDF800108_CTR=y
+# end of Random number generation
+
+#
+# Userspace interface
+#
CONFIG_CRYPTO_USER_API=y
CONFIG_CRYPTO_USER_API_HASH=m
CONFIG_CRYPTO_USER_API_SKCIPHER=m
CONFIG_CRYPTO_USER_API_RNG=y
-CONFIG_CRYPTO_USER_API_RNG_CAVP=n
+# CONFIG_CRYPTO_USER_API_RNG_CAVP is not set
CONFIG_CRYPTO_USER_API_AEAD=y
CONFIG_CRYPTO_USER_API_ENABLE_OBSOLETE=y
-CONFIG_CRYPTO_STATS=n
+# CONFIG_CRYPTO_STATS is not set
+# end of Userspace interface
+
CONFIG_CRYPTO_HASH_INFO=y
+CONFIG_CRYPTO_NHPOLY1305_NEON=m
+CONFIG_CRYPTO_CHACHA20_NEON=m
+
+#
+# Accelerated Cryptographic Algorithms for CPU (arm64)
+#
+CONFIG_CRYPTO_GHASH_ARM64_CE=m
+CONFIG_CRYPTO_POLY1305_NEON=m
+CONFIG_CRYPTO_SHA1_ARM64_CE=m
+CONFIG_CRYPTO_SHA256_ARM64=m
+CONFIG_CRYPTO_SHA2_ARM64_CE=m
+CONFIG_CRYPTO_SHA512_ARM64=m
+CONFIG_CRYPTO_SHA512_ARM64_CE=m
+CONFIG_CRYPTO_SHA3_ARM64=m
+# CONFIG_CRYPTO_SM3_NEON is not set
+CONFIG_CRYPTO_SM3_ARM64_CE=m
+# CONFIG_CRYPTO_POLYVAL_ARM64_CE is not set
+CONFIG_CRYPTO_AES_ARM64=m
+CONFIG_CRYPTO_AES_ARM64_CE=m
+CONFIG_CRYPTO_AES_ARM64_CE_BLK=m
+CONFIG_CRYPTO_AES_ARM64_NEON_BLK=m
+CONFIG_CRYPTO_AES_ARM64_BS=m
+CONFIG_CRYPTO_SM4_ARM64_CE=m
+# CONFIG_CRYPTO_SM4_ARM64_CE_BLK is not set
+# CONFIG_CRYPTO_SM4_ARM64_NEON_BLK is not set
+CONFIG_CRYPTO_AES_ARM64_CE_CCM=m
+# CONFIG_CRYPTO_SM4_ARM64_CE_CCM is not set
+# CONFIG_CRYPTO_SM4_ARM64_CE_GCM is not set
+# end of Accelerated Cryptographic Algorithms for CPU (arm64)
+
CONFIG_CRYPTO_HW=y
-CONFIG_CRYPTO_DEV_ATMEL_ECC=n
-CONFIG_CRYPTO_DEV_ATMEL_SHA204A=n
+# CONFIG_CRYPTO_DEV_ATMEL_ECC is not set
+# CONFIG_CRYPTO_DEV_ATMEL_SHA204A is not set
CONFIG_CRYPTO_DEV_CCP=y
CONFIG_CRYPTO_DEV_CCP_DD=m
CONFIG_CRYPTO_DEV_SP_CCP=y
CONFIG_CRYPTO_DEV_CCP_CRYPTO=m
-CONFIG_CRYPTO_DEV_CCP_DEBUGFS=n
+# CONFIG_CRYPTO_DEV_CCP_DEBUGFS is not set
CONFIG_CRYPTO_DEV_NITROX=m
CONFIG_CRYPTO_DEV_NITROX_CNN55XX=m
-CONFIG_CRYPTO_DEV_CAVIUM_ZIP=n
-CONFIG_CRYPTO_DEV_VIRTIO=n
-CONFIG_CRYPTO_DEV_SAFEXCEL=n
+# CONFIG_CRYPTO_DEV_QAT_DH895xCC is not set
+# CONFIG_CRYPTO_DEV_QAT_C3XXX is not set
+# CONFIG_CRYPTO_DEV_QAT_C62X is not set
+# CONFIG_CRYPTO_DEV_QAT_4XXX is not set
+# CONFIG_CRYPTO_DEV_QAT_DH895xCCVF is not set
+# CONFIG_CRYPTO_DEV_QAT_C3XXXVF is not set
+# CONFIG_CRYPTO_DEV_QAT_C62XVF is not set
+# CONFIG_CRYPTO_DEV_CAVIUM_ZIP is not set
+# CONFIG_CRYPTO_DEV_VIRTIO is not set
+# CONFIG_CRYPTO_DEV_SAFEXCEL is not set
CONFIG_CRYPTO_DEV_CCREE=m
-CONFIG_CRYPTO_DEV_HISI_SEC=n
-CONFIG_CRYPTO_DEV_HISI_SEC2=m
-CONFIG_CRYPTO_DEV_HISI_QM=m
-CONFIG_CRYPTO_DEV_HISI_ZIP=m
-CONFIG_CRYPTO_DEV_HISI_HPRE=m
-CONFIG_CRYPTO_DEV_HISI_TRNG=m
-CONFIG_CRYPTO_DEV_AMLOGIC_GXL=n
+# CONFIG_CRYPTO_DEV_HISI_SEC is not set
+# CONFIG_CRYPTO_DEV_AMLOGIC_GXL is not set
CONFIG_ASYMMETRIC_KEY_TYPE=y
CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=y
CONFIG_X509_CERTIFICATE_PARSER=y
CONFIG_PKCS8_PRIVATE_KEY_PARSER=m
CONFIG_PKCS7_MESSAGE_PARSER=y
-CONFIG_PKCS7_TEST_KEY=n
-CONFIG_SIGNED_PE_FILE_VERIFICATION=n
+# CONFIG_PKCS7_TEST_KEY is not set
+# CONFIG_SIGNED_PE_FILE_VERIFICATION is not set
+# CONFIG_FIPS_SIGNATURE_SELFTEST is not set
#
# Certificates for signature checking
#
CONFIG_SYSTEM_TRUSTED_KEYRING=y
CONFIG_SYSTEM_TRUSTED_KEYS=""
-CONFIG_SYSTEM_EXTRA_CERTIFICATE=n
-CONFIG_SECONDARY_TRUSTED_KEYRING=n
-CONFIG_SYSTEM_BLACKLIST_KEYRING=n
+# CONFIG_SYSTEM_EXTRA_CERTIFICATE is not set
+# CONFIG_SECONDARY_TRUSTED_KEYRING is not set
+# CONFIG_SYSTEM_BLACKLIST_KEYRING is not set
# end of Certificates for signature checking
CONFIG_BINARY_PRINTF=y
@@ -5678,26 +6440,29 @@ CONFIG_BINARY_PRINTF=y
#
CONFIG_RAID6_PQ=y
CONFIG_RAID6_PQ_BENCHMARK=y
-CONFIG_PACKING=n
+CONFIG_LINEAR_RANGES=y
+# CONFIG_PACKING is not set
CONFIG_BITREVERSE=y
CONFIG_HAVE_ARCH_BITREVERSE=y
CONFIG_GENERIC_STRNCPY_FROM_USER=y
CONFIG_GENERIC_STRNLEN_USER=y
CONFIG_GENERIC_NET_UTILS=y
CONFIG_CORDIC=m
-CONFIG_PRIME_NUMBERS=n
+# CONFIG_PRIME_NUMBERS is not set
CONFIG_RATIONAL=y
CONFIG_GENERIC_PCI_IOMAP=y
CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y
CONFIG_ARCH_HAS_FAST_MULTIPLIER=y
CONFIG_ARCH_USE_SYM_ANNOTATIONS=y
-CONFIG_INDIRECT_PIO=n
+# CONFIG_INDIRECT_PIO is not set
#
# Crypto library routines
#
+CONFIG_CRYPTO_LIB_UTILS=y
CONFIG_CRYPTO_LIB_AES=y
CONFIG_CRYPTO_LIB_ARC4=m
+CONFIG_CRYPTO_LIB_GF128MUL=m
CONFIG_CRYPTO_LIB_BLAKE2S_GENERIC=y
CONFIG_CRYPTO_ARCH_HAVE_LIB_CHACHA=m
CONFIG_CRYPTO_LIB_CHACHA_GENERIC=m
@@ -5710,30 +6475,29 @@ CONFIG_CRYPTO_ARCH_HAVE_LIB_POLY1305=m
CONFIG_CRYPTO_LIB_POLY1305_GENERIC=m
CONFIG_CRYPTO_LIB_POLY1305=m
CONFIG_CRYPTO_LIB_CHACHA20POLY1305=m
+CONFIG_CRYPTO_LIB_SHA1=y
CONFIG_CRYPTO_LIB_SHA256=y
-CONFIG_CRYPTO_LIB_SM3=m
-CONFIG_CRYPTO_LIB_SM4=m
# end of Crypto library routines
CONFIG_CRC_CCITT=m
CONFIG_CRC16=y
-CONFIG_CRC_T10DIF=n
-CONFIG_CRC64_ROCKSOFT=n
+# CONFIG_CRC_T10DIF is not set
+# CONFIG_CRC64_ROCKSOFT is not set
CONFIG_CRC_ITU_T=m
CONFIG_CRC32=y
-CONFIG_CRC32_SELFTEST=n
+# CONFIG_CRC32_SELFTEST is not set
CONFIG_CRC32_SLICEBY8=y
-CONFIG_CRC32_SLICEBY4=n
-CONFIG_CRC32_SARWATE=n
-CONFIG_CRC32_BIT=n
-CONFIG_CRC64=n
-CONFIG_CRC4=n
-CONFIG_CRC7=n
+# CONFIG_CRC32_SLICEBY4 is not set
+# CONFIG_CRC32_SARWATE is not set
+# CONFIG_CRC32_BIT is not set
+# CONFIG_CRC64 is not set
+# CONFIG_CRC4 is not set
+# CONFIG_CRC7 is not set
CONFIG_LIBCRC32C=y
-CONFIG_CRC8=n
+# CONFIG_CRC8 is not set
CONFIG_XXHASH=y
CONFIG_AUDIT_ARCH_COMPAT_GENERIC=y
-CONFIG_RANDOM32_SELFTEST=n
+# CONFIG_RANDOM32_SELFTEST is not set
CONFIG_ZLIB_INFLATE=y
CONFIG_ZLIB_DEFLATE=y
CONFIG_LZO_COMPRESS=y
@@ -5741,6 +6505,7 @@ CONFIG_LZO_DECOMPRESS=y
CONFIG_LZ4_COMPRESS=y
CONFIG_LZ4HC_COMPRESS=y
CONFIG_LZ4_DECOMPRESS=y
+CONFIG_ZSTD_COMMON=y
CONFIG_ZSTD_COMPRESS=y
CONFIG_ZSTD_DECOMPRESS=y
CONFIG_XZ_DEC=y
@@ -5750,19 +6515,26 @@ CONFIG_XZ_DEC_IA64=y
CONFIG_XZ_DEC_ARM=y
CONFIG_XZ_DEC_ARMTHUMB=y
CONFIG_XZ_DEC_SPARC=y
-CONFIG_XZ_DEC_MICROLZMA=n
+# CONFIG_XZ_DEC_MICROLZMA is not set
CONFIG_XZ_DEC_BCJ=y
-CONFIG_XZ_DEC_TEST=n
+# CONFIG_XZ_DEC_TEST is not set
CONFIG_DECOMPRESS_GZIP=y
CONFIG_DECOMPRESS_XZ=y
CONFIG_DECOMPRESS_ZSTD=y
CONFIG_GENERIC_ALLOCATOR=y
+CONFIG_TEXTSEARCH=y
+CONFIG_TEXTSEARCH_KMP=m
+CONFIG_TEXTSEARCH_BM=m
+CONFIG_TEXTSEARCH_FSM=m
CONFIG_INTERVAL_TREE=y
+CONFIG_XARRAY_MULTI=y
CONFIG_ASSOCIATIVE_ARRAY=y
CONFIG_HAS_IOMEM=y
+CONFIG_HAS_IOPORT=y
CONFIG_HAS_IOPORT_MAP=y
CONFIG_HAS_DMA=y
CONFIG_DMA_OPS=y
+CONFIG_NEED_SG_DMA_FLAGS=y
CONFIG_NEED_SG_DMA_LENGTH=y
CONFIG_NEED_DMA_MAP_STATE=y
CONFIG_ARCH_DMA_ADDR_T_64BIT=y
@@ -5773,29 +6545,19 @@ CONFIG_ARCH_HAS_SYNC_DMA_FOR_DEVICE=y
CONFIG_ARCH_HAS_SYNC_DMA_FOR_CPU=y
CONFIG_ARCH_HAS_DMA_PREP_COHERENT=y
CONFIG_SWIOTLB=y
-CONFIG_DMA_RESTRICTED_POOL=n
+# CONFIG_SWIOTLB_DYNAMIC is not set
+CONFIG_DMA_BOUNCE_UNALIGNED_KMALLOC=y
+# CONFIG_DMA_RESTRICTED_POOL is not set
CONFIG_DMA_NONCOHERENT_MMAP=y
CONFIG_DMA_COHERENT_POOL=y
CONFIG_DMA_DIRECT_REMAP=y
-CONFIG_DMA_CMA=y
-CONFIG_DMA_PERNUMA_CMA=y
-
-#
-# Default contiguous memory area size:
-#
-CONFIG_CMA_SIZE_MBYTES=32
-CONFIG_CMA_SIZE_SEL_MBYTES=y
-CONFIG_CMA_SIZE_SEL_PERCENTAGE=n
-CONFIG_CMA_SIZE_SEL_MIN=n
-CONFIG_CMA_SIZE_SEL_MAX=n
-CONFIG_CMA_ALIGNMENT=8
-CONFIG_DMA_API_DEBUG=n
-CONFIG_DMA_MAP_BENCHMARK=n
+# CONFIG_DMA_API_DEBUG is not set
+# CONFIG_DMA_MAP_BENCHMARK is not set
CONFIG_SGL_ALLOC=y
CONFIG_CPU_RMAP=y
CONFIG_DQL=y
CONFIG_GLOB=y
-CONFIG_GLOB_SELFTEST=n
+# CONFIG_GLOB_SELFTEST is not set
CONFIG_NLATTR=y
CONFIG_CLZ_TAB=y
CONFIG_IRQ_POLL=y
@@ -5808,24 +6570,26 @@ CONFIG_GENERIC_GETTIMEOFDAY=y
CONFIG_GENERIC_VDSO_TIME_NS=y
CONFIG_FONT_SUPPORT=y
CONFIG_FONTS=y
-CONFIG_FONT_8x8=n
-CONFIG_FONT_8x16=n
-CONFIG_FONT_6x11=n
-CONFIG_FONT_7x14=n
-CONFIG_FONT_PEARL_8x8=n
-CONFIG_FONT_ACORN_8x8=n
-CONFIG_FONT_MINI_4x6=n
-CONFIG_FONT_6x10=n
-CONFIG_FONT_10x18=n
-CONFIG_FONT_SUN8x16=n
-CONFIG_FONT_SUN12x22=n
+# CONFIG_FONT_8x8 is not set
+# CONFIG_FONT_8x16 is not set
+# CONFIG_FONT_6x11 is not set
+# CONFIG_FONT_7x14 is not set
+# CONFIG_FONT_PEARL_8x8 is not set
+# CONFIG_FONT_ACORN_8x8 is not set
+# CONFIG_FONT_MINI_4x6 is not set
+# CONFIG_FONT_6x10 is not set
+CONFIG_FONT_10x18=y
+# CONFIG_FONT_SUN8x16 is not set
+# CONFIG_FONT_SUN12x22 is not set
CONFIG_FONT_TER16x32=y
-CONFIG_FONT_6x8=n
+# CONFIG_FONT_6x8 is not set
CONFIG_SG_POOL=y
CONFIG_ARCH_STACKWALK=y
+CONFIG_STACKDEPOT=y
CONFIG_SBITMAP=y
# end of Library routines
+CONFIG_GENERIC_IOREMAP=y
CONFIG_GENERIC_LIB_DEVMEM_IS_ALLOWED=y
#
@@ -5836,26 +6600,27 @@ CONFIG_GENERIC_LIB_DEVMEM_IS_ALLOWED=y
# printk and dmesg options
#
CONFIG_PRINTK_TIME=y
-CONFIG_PRINTK_CALLER=n
-CONFIG_STACKTRACE_BUILD_ID=n
+# CONFIG_PRINTK_CALLER is not set
+# CONFIG_STACKTRACE_BUILD_ID is not set
CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7
CONFIG_CONSOLE_LOGLEVEL_QUIET=4
CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4
-CONFIG_DYNAMIC_DEBUG=n
-CONFIG_DYNAMIC_DEBUG_CORE=n
+# CONFIG_DYNAMIC_DEBUG is not set
+# CONFIG_DYNAMIC_DEBUG_CORE is not set
CONFIG_SYMBOLIC_ERRNAME=y
CONFIG_DEBUG_BUGVERBOSE=y
# end of printk and dmesg options
-CONFIG_DEBUG_KERNEL=n
+# CONFIG_DEBUG_KERNEL is not set
#
# Compile-time checks and compiler options
#
+CONFIG_AS_HAS_NON_CONST_LEB128=y
CONFIG_FRAME_WARN=2048
-CONFIG_STRIP_ASM_SYMS=n
-CONFIG_HEADERS_INSTALL=n
-CONFIG_DEBUG_SECTION_MISMATCH=n
+# CONFIG_STRIP_ASM_SYMS is not set
+# CONFIG_HEADERS_INSTALL is not set
+# CONFIG_DEBUG_SECTION_MISMATCH is not set
CONFIG_SECTION_MISMATCH_WARN_ONLY=y
CONFIG_ARCH_WANT_FRAME_POINTERS=y
CONFIG_FRAME_POINTER=y
@@ -5870,11 +6635,11 @@ CONFIG_MAGIC_SYSRQ_SERIAL=y
CONFIG_MAGIC_SYSRQ_SERIAL_SEQUENCE=""
CONFIG_DEBUG_FS=y
CONFIG_DEBUG_FS_ALLOW_ALL=y
-CONFIG_DEBUG_FS_DISALLOW_MOUNT=n
-CONFIG_DEBUG_FS_ALLOW_NONE=n
+# CONFIG_DEBUG_FS_DISALLOW_MOUNT is not set
+# CONFIG_DEBUG_FS_ALLOW_NONE is not set
CONFIG_HAVE_ARCH_KGDB=y
CONFIG_ARCH_HAS_UBSAN_SANITIZE_ALL=y
-CONFIG_UBSAN=n
+# CONFIG_UBSAN is not set
CONFIG_HAVE_KCSAN_COMPILER=y
# end of Generic Kernel Debugging Instruments
@@ -5886,33 +6651,37 @@ CONFIG_HAVE_KCSAN_COMPILER=y
#
# Memory Debugging
#
-CONFIG_PAGE_EXTENSION=n
-CONFIG_PAGE_POISONING=n
-CONFIG_DEBUG_RODATA_TEST=n
+# CONFIG_PAGE_EXTENSION is not set
+CONFIG_SLUB_DEBUG=y
+# CONFIG_SLUB_DEBUG_ON is not set
+# CONFIG_PAGE_TABLE_CHECK is not set
+# CONFIG_PAGE_POISONING is not set
+# CONFIG_DEBUG_RODATA_TEST is not set
CONFIG_ARCH_HAS_DEBUG_WX=y
-CONFIG_DEBUG_WX=n
+# CONFIG_DEBUG_WX is not set
CONFIG_GENERIC_PTDUMP=y
-CONFIG_SLUB_DEBUG_ON=n
-CONFIG_SLUB_STATS=n
CONFIG_HAVE_DEBUG_KMEMLEAK=y
+# CONFIG_PER_VMA_LOCK_STATS is not set
+# CONFIG_SHRINKER_DEBUG is not set
CONFIG_ARCH_HAS_DEBUG_VM_PGTABLE=y
-CONFIG_DEBUG_VM_PGTABLE=n
+# CONFIG_DEBUG_VM_PGTABLE is not set
CONFIG_ARCH_HAS_DEBUG_VIRTUAL=y
CONFIG_DEBUG_MEMORY_INIT=y
CONFIG_CC_HAS_KASAN_GENERIC=y
CONFIG_CC_HAS_KASAN_SW_TAGS=y
CONFIG_CC_HAS_WORKING_NOSANITIZE_ADDRESS=y
CONFIG_HAVE_ARCH_KFENCE=y
-CONFIG_KFENCE=n
+# CONFIG_KFENCE is not set
# end of Memory Debugging
#
# Debug Oops, Lockups and Hangs
#
-CONFIG_PANIC_ON_OOPS=n
+# CONFIG_PANIC_ON_OOPS is not set
CONFIG_PANIC_ON_OOPS_VALUE=0
CONFIG_PANIC_TIMEOUT=0
-CONFIG_TEST_LOCKUP=n
+CONFIG_HAVE_HARDLOCKUP_DETECTOR_BUDDY=y
+# CONFIG_TEST_LOCKUP is not set
# end of Debug Oops, Lockups and Hangs
#
@@ -5921,23 +6690,22 @@ CONFIG_TEST_LOCKUP=n
CONFIG_SCHED_INFO=y
# end of Scheduler Debugging
-CONFIG_DEBUG_TIMEKEEPING=n
+# CONFIG_DEBUG_TIMEKEEPING is not set
#
# Lock Debugging (spinlocks, mutexes, etc...)
#
CONFIG_LOCK_DEBUGGING_SUPPORT=y
-CONFIG_WW_MUTEX_SELFTEST=n
+# CONFIG_WW_MUTEX_SELFTEST is not set
# end of Lock Debugging (spinlocks, mutexes, etc...)
-CONFIG_DEBUG_IRQFLAGS=n
-CONFIG_STACKTRACE=n
-CONFIG_WARN_ALL_UNSEEDED_RANDOM=n
+# CONFIG_DEBUG_IRQFLAGS is not set
+CONFIG_STACKTRACE=y
+# CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set
#
# Debug kernel data structures
#
-CONFIG_BUG_ON_DATA_CORRUPTION=n
# end of Debug kernel data structures
#
@@ -5945,42 +6713,50 @@ CONFIG_BUG_ON_DATA_CORRUPTION=n
#
CONFIG_RCU_CPU_STALL_TIMEOUT=21
CONFIG_RCU_EXP_CPU_STALL_TIMEOUT=21000
+# CONFIG_RCU_CPU_STALL_CPUTIME is not set
# end of RCU Debugging
CONFIG_HAVE_FUNCTION_TRACER=y
CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
+CONFIG_HAVE_FUNCTION_GRAPH_RETVAL=y
CONFIG_HAVE_DYNAMIC_FTRACE=y
-CONFIG_HAVE_DYNAMIC_FTRACE_WITH_REGS=y
+CONFIG_HAVE_DYNAMIC_FTRACE_WITH_ARGS=y
CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
CONFIG_HAVE_SYSCALL_TRACEPOINTS=y
CONFIG_HAVE_C_RECORDMCOUNT=y
CONFIG_TRACING_SUPPORT=y
-CONFIG_FTRACE=n
-CONFIG_SAMPLES=n
-CONFIG_STRICT_DEVMEM=n
+# CONFIG_FTRACE is not set
+# CONFIG_SAMPLES is not set
+CONFIG_HAVE_SAMPLE_FTRACE_DIRECT=y
+CONFIG_HAVE_SAMPLE_FTRACE_DIRECT_MULTI=y
+CONFIG_STRICT_DEVMEM=y
+CONFIG_IO_STRICT_DEVMEM=y
#
# arm64 Debugging
#
-CONFIG_DEBUG_AID_FOR_SYZBOT=n
-CONFIG_PID_IN_CONTEXTIDR=n
-CONFIG_ARM64_RELOC_TEST=n
-CONFIG_CORESIGHT=n
+# CONFIG_PID_IN_CONTEXTIDR is not set
+# CONFIG_ARM64_RELOC_TEST is not set
+# CONFIG_CORESIGHT is not set
# end of arm64 Debugging
#
# Kernel Testing and Coverage
#
-CONFIG_KUNIT=n
+# CONFIG_KUNIT is not set
CONFIG_ARCH_HAS_KCOV=y
CONFIG_CC_HAS_SANCOV_TRACE_PC=y
-CONFIG_RUNTIME_TESTING_MENU=n
+# CONFIG_KCOV is not set
+# CONFIG_RUNTIME_TESTING_MENU is not set
CONFIG_ARCH_USE_MEMTEST=y
-CONFIG_MEMTEST=n
+# CONFIG_MEMTEST is not set
# end of Kernel Testing and Coverage
#
# Rust hacking
#
+# CONFIG_RUST_DEBUG_ASSERTIONS is not set
+CONFIG_RUST_OVERFLOW_CHECKS=y
+# CONFIG_RUST_BUILD_ASSERT_ALLOW is not set
# end of Rust hacking
# end of Kernel hacking
diff --git a/testing/linux-elm/APKBUILD b/testing/linux-elm/APKBUILD
index dc41cb81ce6..84f3c22923a 100644
--- a/testing/linux-elm/APKBUILD
+++ b/testing/linux-elm/APKBUILD
@@ -4,19 +4,18 @@ _flavor=elm
pkgname=linux-${_flavor}
# NOTE: this kernel is intended for testing
# please resist urge to upgrade it blindly
-pkgver=5.17.6
+pkgver=6.8.2
case $pkgver in
*.*.*) _kernver=${pkgver%.*};;
*.*) _kernver=$pkgver;;
esac
pkgrel=0
-pkgdesc="Linux latest stable kernel for elm chromebooks"
+pkgdesc="Linux latest stable kernel for $_flavor chromebooks"
url="https://www.kernel.org"
_depends_dev="perl gmp-dev bash flex bison"
makedepends="$_depends_dev sed installkernel bc linux-headers linux-firmware-any
- openssl1.1-compat-dev diffutils findutils vboot-utils u-boot-tools dtc"
+ openssl-dev diffutils findutils vboot-utils u-boot-tools dtc"
options="!strip !check"
-_config=${config:-config-elm.${CARCH}}
install=
#subpackages="$pkgname-dev:_dev:$CBUILD_ARCH"
@@ -28,37 +27,16 @@ case $pkgver in
esac
source="$source
- config-elm.aarch64
- kernel.its.elm
- fix-mmc1-speed.patch
- fix-spi-nor-max-frequency.patch
+ config
+ kernel.its.$_flavor
fix-mmc-order.patch
mps-ter12x24-font-kernel.patch
"
arch="aarch64"
+_carch="arm64"
license="GPL-2.0"
-_flavors=
-for _i in $source; do
- case $_i in
- config-*.$CARCH)
- _f=${_i%.$CARCH}
- _f=${_f#config-}
- _flavors="$_flavors ${_f}"
- if [ "linux-$_f" != "$pkgname" ]; then
- subpackages="$subpackages linux-${_f}::$CBUILD_ARCH linux-${_f}-dev:_dev:$CBUILD_ARCH"
- fi
- ;;
- esac
-done
-
-_carch=${CARCH}
-case "$_carch" in
-aarch64*) _carch="arm64" ;;
-arm*) _carch="arm" ;;
-esac
-
prepare() {
local _patch_failed=
cd "$srcdir"/linux-$_kernver
@@ -94,29 +72,23 @@ prepare() {
}
oldconfig() {
- for i in $_flavors; do
- local _config=config-$i.${CARCH}
- local _builddir="$srcdir"/build-$i.$CARCH
- mkdir -p "$_builddir"
- echo "-$pkgrel-$i" > "$_builddir"/localversion-alpine \
+ local _builddir="$srcdir"/linux-$_kernver
+ echo "-$pkgrel-$_flavor" > "$_builddir"/localversion-alpine \
|| return 1
- cp "$srcdir"/$_config "$_builddir"/.config
+ cp "$srcdir"/config "$_builddir"/.config
make -C "$srcdir"/linux-$_kernver \
O="$_builddir" \
ARCH="$_carch" \
listnewconfig oldconfig
- done
}
build() {
unset LDFLAGS
export KBUILD_BUILD_TIMESTAMP="$(date -Ru${SOURCE_DATE_EPOCH:+d @$SOURCE_DATE_EPOCH})"
- for i in $_flavors; do
- cd "$srcdir"/build-$i.$CARCH
- make ARCH="$_carch" CC="${CC:-gcc}" \
- KBUILD_BUILD_VERSION="$((pkgrel + 1 ))-Alpine"
- done
+ cd "$srcdir"/linux-$_kernver
+ make ARCH="$_carch" CC="${CC:-gcc}" \
+ KBUILD_BUILD_VERSION="$((pkgrel + 1 ))-Alpine"
}
_package() {
@@ -124,7 +96,7 @@ _package() {
local _abi_release=${pkgver}-${pkgrel}-${_buildflavor}
export KBUILD_BUILD_TIMESTAMP="$(date -Ru${SOURCE_DATE_EPOCH:+d @$SOURCE_DATE_EPOCH})"
- cd "$srcdir"/build-$_buildflavor.$CARCH
+ cd "$srcdir"/linux-$_kernver
# modules_install seems to regenerate a defect Modules.symvers on s390x. Work
# around it by backing it up and restore it after modules_install
cp Module.symvers Module.symvers.backup
@@ -156,14 +128,14 @@ _package() {
# main flavor installs in $pkgdir
package() {
- _package elm "$pkgdir"
- local _builddir="$srcdir"/build-$_flavor.$CARCH
+ _package $_flavor "$pkgdir"
+ local _builddir="$srcdir"/linux-$_kernver
cd $_builddir
- cp $srcdir/kernel.its.elm .
- mkimage -D "-I dts -O dtb -p 2048" -f kernel.its.elm vmlinux.uimg
+ cp $srcdir/kernel.its.$_flavor .
+ mkimage -D "-I dts -O dtb -p 2048" -f kernel.its.$_flavor vmlinux.uimg
dd if=/dev/zero of=bootloader.bin bs=512 count=1
- echo "console=tty1 earlyprintk=tty1 init=/sbin/init root=PARTUUID=%U/PARTNROFF=1 rootwait rw noinitrd loglevel=7" > cmdline
+ echo "console=tty0 earlyprintk=tty0 init=/sbin/init root=PARTUUID=%U/PARTNROFF=1 rootwait rw mitigations=off loglevel=7" > cmdline
vbutil_kernel \
--pack $pkgdir/boot/vmlinux.kpart-$pkgver-$pkgrel-$_flavor \
--version 1 \
@@ -176,7 +148,7 @@ package() {
--bootloader bootloader.bin
rm cmdline bootloader.bin
- rm $pkgdir/boot/vmlinuz-elm
+ rm $pkgdir/boot/vmlinuz-$_flavor
cd $pkgdir/boot
ln -s vmlinux.kpart-$pkgver-$pkgrel-$_flavor vmlinux.kpart
}
@@ -234,12 +206,10 @@ _dev() {
}
sha512sums="
-89f0a7ca69d20a539d4b612a7028a30a5e98b402e4b6b88516f14237e5da4b626d7929eab8b40fccc90766e8f3bae87e9858a19077ffad20d8204acf18794f5b linux-5.17.tar.xz
-294199421db88a203e1ccfa0833d394e7ab444860875327979bd1dda1fcb1c211809728f2e39c1ce20b14754bc9e20183a885d0b74aae92dba58197d09b0590c patch-5.17.6.xz
-bb41f3f12831661d8efc9c846225ddf7cb0c546de4197898413caf8f5fc06ee468b7e0e31e7a68c54b03f0b57df3513f910e741822313c35006c025a9316dff0 config-elm.aarch64
+5c4eb4aa1d3f7d1ea01c0f7ddeadacdece6e144fd4bdfc16b2b925d3e10dc04de3a6db69320b79a96c3560052616f001d2c09e7a1bb4f7b731e2380a7ecce068 linux-6.8.tar.xz
+a8e32b89f7680670c69c62f356846bb65b57614f979114627a9a2f945d7dc97c921d30197dffa993e5b18e499ba8c7196046ffdf0e721528a5378d1ee65a9ba5 patch-6.8.2.xz
+4fdd734d57e6c434765bf86e80ca4163a2491079b29ae53a00f2c28ac89d0aec4c1188bd59f12607e94a2fa2eaae7ae9cc87e1513a0f246384d038e649d8f2ab config
112af92af4a3f61867ffc20076d057845aa8c9139e58153d0c88f4d7185d9a9628fa79d4edfa8855f095fb70d257bfbd7c4573a7431d4b17706415b411a50775 kernel.its.elm
-65c57a6d9a5bd5b6ec8798d1c46091bb72377ed1349b66e9a0a1a50ffa077f044f2bfdd30eab974c9c9774fc62d8dd5020a38432d108fce7f4fc1ed6648ea703 fix-mmc1-speed.patch
-9e17fb96b81590da0f9b0917ddd2b9d195bab5cde2a4e7feb19991c50a8ac8e4502445715153ced8666e5b6575137c1d49899bb0ae9ab4505ed8f1ff7e569269 fix-spi-nor-max-frequency.patch
00e7afdab1dc89a6e0426829685d85cebb98fb95cb13a253d01326fd22f78ddf792bbe3b5be4c9bc93784f1fa93f87f604a4b6c6710660319db6f2e35dd09835 fix-mmc-order.patch
fcea50a1ba2356d64a9c3ee0b7b7c326654996956d68eb445fafdb4320b4104b6321f768f0ce4ceb5cd4696be3a7332908ba1de7054fb20bf8c97f4234bfa6a4 mps-ter12x24-font-kernel.patch
"
diff --git a/testing/linux-elm/config b/testing/linux-elm/config
new file mode 100644
index 00000000000..72f22ff53b4
--- /dev/null
+++ b/testing/linux-elm/config
@@ -0,0 +1,6836 @@
+#
+# Automatically generated file; DO NOT EDIT.
+# Linux/arm64 6.8.2 Kernel Configuration
+#
+CONFIG_CC_VERSION_TEXT="gcc (Alpine 13.2.1_git20240309) 13.2.1 20240309"
+CONFIG_CC_IS_GCC=y
+CONFIG_GCC_VERSION=130201
+CONFIG_CLANG_VERSION=0
+CONFIG_AS_IS_GNU=y
+CONFIG_AS_VERSION=24200
+CONFIG_LD_IS_BFD=y
+CONFIG_LD_VERSION=24200
+CONFIG_LLD_VERSION=0
+CONFIG_CC_CAN_LINK=y
+CONFIG_CC_CAN_LINK_STATIC=y
+CONFIG_CC_HAS_ASM_GOTO_OUTPUT=y
+CONFIG_CC_HAS_ASM_GOTO_TIED_OUTPUT=y
+CONFIG_GCC_ASM_GOTO_OUTPUT_WORKAROUND=y
+CONFIG_CC_HAS_ASM_INLINE=y
+CONFIG_CC_HAS_NO_PROFILE_FN_ATTR=y
+CONFIG_PAHOLE_VERSION=0
+CONFIG_IRQ_WORK=y
+CONFIG_BUILDTIME_TABLE_SORT=y
+CONFIG_THREAD_INFO_IN_TASK=y
+
+#
+# General setup
+#
+CONFIG_INIT_ENV_ARG_LIMIT=32
+# CONFIG_COMPILE_TEST is not set
+# CONFIG_WERROR is not set
+CONFIG_LOCALVERSION=""
+# CONFIG_LOCALVERSION_AUTO is not set
+CONFIG_BUILD_SALT=""
+CONFIG_DEFAULT_INIT=""
+CONFIG_DEFAULT_HOSTNAME="localhost"
+CONFIG_SYSVIPC=y
+CONFIG_SYSVIPC_SYSCTL=y
+CONFIG_SYSVIPC_COMPAT=y
+CONFIG_POSIX_MQUEUE=y
+CONFIG_POSIX_MQUEUE_SYSCTL=y
+# CONFIG_WATCH_QUEUE is not set
+CONFIG_CROSS_MEMORY_ATTACH=y
+# CONFIG_USELIB is not set
+# CONFIG_AUDIT is not set
+CONFIG_HAVE_ARCH_AUDITSYSCALL=y
+
+#
+# IRQ subsystem
+#
+CONFIG_GENERIC_IRQ_PROBE=y
+CONFIG_GENERIC_IRQ_SHOW=y
+CONFIG_GENERIC_IRQ_SHOW_LEVEL=y
+CONFIG_GENERIC_IRQ_EFFECTIVE_AFF_MASK=y
+CONFIG_GENERIC_IRQ_MIGRATION=y
+CONFIG_HARDIRQS_SW_RESEND=y
+CONFIG_IRQ_DOMAIN=y
+CONFIG_IRQ_DOMAIN_HIERARCHY=y
+CONFIG_GENERIC_IRQ_IPI=y
+CONFIG_GENERIC_MSI_IRQ=y
+CONFIG_IRQ_MSI_IOMMU=y
+CONFIG_IRQ_FORCED_THREADING=y
+CONFIG_SPARSE_IRQ=y
+# end of IRQ subsystem
+
+CONFIG_GENERIC_TIME_VSYSCALL=y
+CONFIG_GENERIC_CLOCKEVENTS=y
+CONFIG_ARCH_HAS_TICK_BROADCAST=y
+CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y
+CONFIG_HAVE_POSIX_CPU_TIMERS_TASK_WORK=y
+CONFIG_POSIX_CPU_TIMERS_TASK_WORK=y
+CONFIG_CONTEXT_TRACKING=y
+CONFIG_CONTEXT_TRACKING_IDLE=y
+
+#
+# Timers subsystem
+#
+CONFIG_TICK_ONESHOT=y
+CONFIG_NO_HZ_COMMON=y
+# CONFIG_HZ_PERIODIC is not set
+CONFIG_NO_HZ_IDLE=y
+# CONFIG_NO_HZ_FULL is not set
+# CONFIG_NO_HZ is not set
+CONFIG_HIGH_RES_TIMERS=y
+# end of Timers subsystem
+
+CONFIG_BPF=y
+CONFIG_HAVE_EBPF_JIT=y
+CONFIG_ARCH_WANT_DEFAULT_BPF_JIT=y
+
+#
+# BPF subsystem
+#
+# CONFIG_BPF_SYSCALL is not set
+# CONFIG_BPF_JIT is not set
+# end of BPF subsystem
+
+CONFIG_PREEMPT_BUILD=y
+# CONFIG_PREEMPT_NONE is not set
+# CONFIG_PREEMPT_VOLUNTARY is not set
+CONFIG_PREEMPT=y
+CONFIG_PREEMPT_COUNT=y
+CONFIG_PREEMPTION=y
+# CONFIG_PREEMPT_DYNAMIC is not set
+# CONFIG_SCHED_CORE is not set
+
+#
+# CPU/Task time and stats accounting
+#
+CONFIG_TICK_CPU_ACCOUNTING=y
+# CONFIG_VIRT_CPU_ACCOUNTING_GEN is not set
+# CONFIG_IRQ_TIME_ACCOUNTING is not set
+CONFIG_SCHED_THERMAL_PRESSURE=y
+# CONFIG_BSD_PROCESS_ACCT is not set
+CONFIG_TASKSTATS=y
+CONFIG_TASK_DELAY_ACCT=y
+# CONFIG_TASK_XACCT is not set
+# CONFIG_PSI is not set
+# end of CPU/Task time and stats accounting
+
+CONFIG_CPU_ISOLATION=y
+
+#
+# RCU Subsystem
+#
+CONFIG_TREE_RCU=y
+CONFIG_PREEMPT_RCU=y
+# CONFIG_RCU_EXPERT is not set
+CONFIG_TREE_SRCU=y
+CONFIG_RCU_STALL_COMMON=y
+CONFIG_RCU_NEED_SEGCBLIST=y
+# end of RCU Subsystem
+
+CONFIG_IKCONFIG=m
+CONFIG_IKCONFIG_PROC=y
+# CONFIG_IKHEADERS is not set
+CONFIG_LOG_BUF_SHIFT=18
+CONFIG_LOG_CPU_MAX_BUF_SHIFT=12
+CONFIG_GENERIC_SCHED_CLOCK=y
+
+#
+# Scheduler features
+#
+# CONFIG_UCLAMP_TASK is not set
+# end of Scheduler features
+
+CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y
+CONFIG_ARCH_WANT_BATCHED_UNMAP_TLB_FLUSH=y
+CONFIG_CC_HAS_INT128=y
+CONFIG_CC_IMPLICIT_FALLTHROUGH="-Wimplicit-fallthrough=5"
+CONFIG_GCC10_NO_ARRAY_BOUNDS=y
+CONFIG_CC_NO_ARRAY_BOUNDS=y
+CONFIG_GCC_NO_STRINGOP_OVERFLOW=y
+CONFIG_CC_NO_STRINGOP_OVERFLOW=y
+CONFIG_ARCH_SUPPORTS_INT128=y
+CONFIG_CGROUPS=y
+CONFIG_PAGE_COUNTER=y
+# CONFIG_CGROUP_FAVOR_DYNMODS is not set
+CONFIG_MEMCG=y
+CONFIG_MEMCG_KMEM=y
+CONFIG_BLK_CGROUP=y
+CONFIG_CGROUP_WRITEBACK=y
+CONFIG_CGROUP_SCHED=y
+CONFIG_FAIR_GROUP_SCHED=y
+CONFIG_CFS_BANDWIDTH=y
+# CONFIG_RT_GROUP_SCHED is not set
+CONFIG_SCHED_MM_CID=y
+CONFIG_CGROUP_PIDS=y
+CONFIG_CGROUP_RDMA=y
+CONFIG_CGROUP_FREEZER=y
+CONFIG_CPUSETS=y
+CONFIG_PROC_PID_CPUSET=y
+CONFIG_CGROUP_DEVICE=y
+CONFIG_CGROUP_CPUACCT=y
+# CONFIG_CGROUP_PERF is not set
+# CONFIG_CGROUP_MISC is not set
+CONFIG_SOCK_CGROUP_DATA=y
+CONFIG_NAMESPACES=y
+CONFIG_UTS_NS=y
+CONFIG_TIME_NS=y
+CONFIG_IPC_NS=y
+CONFIG_USER_NS=y
+CONFIG_PID_NS=y
+CONFIG_NET_NS=y
+# CONFIG_CHECKPOINT_RESTORE is not set
+CONFIG_SCHED_AUTOGROUP=y
+# CONFIG_RELAY is not set
+# CONFIG_BLK_DEV_INITRD is not set
+# CONFIG_BOOT_CONFIG is not set
+CONFIG_INITRAMFS_PRESERVE_MTIME=y
+CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE=y
+# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
+CONFIG_LD_ORPHAN_WARN=y
+CONFIG_LD_ORPHAN_WARN_LEVEL="warn"
+CONFIG_SYSCTL=y
+CONFIG_HAVE_UID16=y
+CONFIG_SYSCTL_EXCEPTION_TRACE=y
+# CONFIG_EXPERT is not set
+CONFIG_UID16=y
+CONFIG_MULTIUSER=y
+CONFIG_SYSFS_SYSCALL=y
+CONFIG_FHANDLE=y
+CONFIG_POSIX_TIMERS=y
+CONFIG_PRINTK=y
+CONFIG_BUG=y
+CONFIG_ELF_CORE=y
+CONFIG_BASE_FULL=y
+CONFIG_FUTEX=y
+CONFIG_FUTEX_PI=y
+CONFIG_EPOLL=y
+CONFIG_SIGNALFD=y
+CONFIG_TIMERFD=y
+CONFIG_EVENTFD=y
+CONFIG_SHMEM=y
+CONFIG_AIO=y
+CONFIG_IO_URING=y
+CONFIG_ADVISE_SYSCALLS=y
+CONFIG_MEMBARRIER=y
+CONFIG_KCMP=y
+CONFIG_RSEQ=y
+CONFIG_CACHESTAT_SYSCALL=y
+CONFIG_KALLSYMS=y
+# CONFIG_KALLSYMS_SELFTEST is not set
+CONFIG_KALLSYMS_BASE_RELATIVE=y
+CONFIG_ARCH_HAS_MEMBARRIER_SYNC_CORE=y
+CONFIG_HAVE_PERF_EVENTS=y
+CONFIG_GUEST_PERF_EVENTS=y
+
+#
+# Kernel Performance Events And Counters
+#
+CONFIG_PERF_EVENTS=y
+# end of Kernel Performance Events And Counters
+
+CONFIG_SYSTEM_DATA_VERIFICATION=y
+# CONFIG_PROFILING is not set
+
+#
+# Kexec and crash features
+#
+# CONFIG_KEXEC is not set
+# CONFIG_KEXEC_FILE is not set
+# CONFIG_CRASH_DUMP is not set
+# end of Kexec and crash features
+# end of General setup
+
+CONFIG_ARM64=y
+CONFIG_GCC_SUPPORTS_DYNAMIC_FTRACE_WITH_ARGS=y
+CONFIG_64BIT=y
+CONFIG_MMU=y
+CONFIG_ARM64_PAGE_SHIFT=12
+CONFIG_ARM64_CONT_PTE_SHIFT=4
+CONFIG_ARM64_CONT_PMD_SHIFT=4
+CONFIG_ARCH_MMAP_RND_BITS_MIN=18
+CONFIG_ARCH_MMAP_RND_BITS_MAX=33
+CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=11
+CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MAX=16
+CONFIG_NO_IOPORT_MAP=y
+CONFIG_STACKTRACE_SUPPORT=y
+CONFIG_ILLEGAL_POINTER_VALUE=0xdead000000000000
+CONFIG_LOCKDEP_SUPPORT=y
+CONFIG_GENERIC_BUG=y
+CONFIG_GENERIC_BUG_RELATIVE_POINTERS=y
+CONFIG_GENERIC_HWEIGHT=y
+CONFIG_GENERIC_CSUM=y
+CONFIG_GENERIC_CALIBRATE_DELAY=y
+CONFIG_SMP=y
+CONFIG_KERNEL_MODE_NEON=y
+CONFIG_FIX_EARLYCON_MEM=y
+CONFIG_PGTABLE_LEVELS=4
+CONFIG_ARCH_SUPPORTS_UPROBES=y
+CONFIG_ARCH_PROC_KCORE_TEXT=y
+CONFIG_BUILTIN_RETURN_ADDRESS_STRIPS_PAC=y
+
+#
+# Platform selection
+#
+# CONFIG_ARCH_ACTIONS is not set
+# CONFIG_ARCH_SUNXI is not set
+# CONFIG_ARCH_ALPINE is not set
+# CONFIG_ARCH_APPLE is not set
+# CONFIG_ARCH_BCM is not set
+# CONFIG_ARCH_BERLIN is not set
+# CONFIG_ARCH_BITMAIN is not set
+# CONFIG_ARCH_EXYNOS is not set
+# CONFIG_ARCH_SPARX5 is not set
+# CONFIG_ARCH_K3 is not set
+# CONFIG_ARCH_LG1K is not set
+# CONFIG_ARCH_HISI is not set
+# CONFIG_ARCH_KEEMBAY is not set
+CONFIG_ARCH_MEDIATEK=y
+# CONFIG_ARCH_MESON is not set
+# CONFIG_ARCH_MVEBU is not set
+# CONFIG_ARCH_NXP is not set
+# CONFIG_ARCH_MA35 is not set
+# CONFIG_ARCH_NPCM is not set
+# CONFIG_ARCH_PENSANDO is not set
+# CONFIG_ARCH_QCOM is not set
+# CONFIG_ARCH_REALTEK is not set
+# CONFIG_ARCH_RENESAS is not set
+# CONFIG_ARCH_ROCKCHIP is not set
+# CONFIG_ARCH_SEATTLE is not set
+# CONFIG_ARCH_INTEL_SOCFPGA is not set
+# CONFIG_ARCH_STM32 is not set
+# CONFIG_ARCH_SYNQUACER is not set
+# CONFIG_ARCH_TEGRA is not set
+# CONFIG_ARCH_SPRD is not set
+# CONFIG_ARCH_THUNDER is not set
+# CONFIG_ARCH_THUNDER2 is not set
+# CONFIG_ARCH_UNIPHIER is not set
+# CONFIG_ARCH_VEXPRESS is not set
+# CONFIG_ARCH_VISCONTI is not set
+# CONFIG_ARCH_XGENE is not set
+# CONFIG_ARCH_ZYNQMP is not set
+# end of Platform selection
+
+#
+# Kernel Features
+#
+
+#
+# ARM errata workarounds via the alternatives framework
+#
+# CONFIG_AMPERE_ERRATUM_AC03_CPU_38 is not set
+CONFIG_ARM64_WORKAROUND_CLEAN_CACHE=y
+CONFIG_ARM64_ERRATUM_826319=y
+CONFIG_ARM64_ERRATUM_827319=y
+CONFIG_ARM64_ERRATUM_824069=y
+CONFIG_ARM64_ERRATUM_819472=y
+CONFIG_ARM64_ERRATUM_832075=y
+CONFIG_ARM64_ERRATUM_834220=y
+CONFIG_ARM64_ERRATUM_1742098=y
+CONFIG_ARM64_ERRATUM_845719=y
+CONFIG_ARM64_ERRATUM_843419=y
+CONFIG_ARM64_LD_HAS_FIX_ERRATUM_843419=y
+CONFIG_ARM64_ERRATUM_1024718=y
+CONFIG_ARM64_ERRATUM_1418040=y
+CONFIG_ARM64_WORKAROUND_SPECULATIVE_AT=y
+CONFIG_ARM64_ERRATUM_1165522=y
+CONFIG_ARM64_ERRATUM_1319367=y
+CONFIG_ARM64_ERRATUM_1530923=y
+CONFIG_ARM64_WORKAROUND_REPEAT_TLBI=y
+CONFIG_ARM64_ERRATUM_2441007=y
+CONFIG_ARM64_ERRATUM_1286807=y
+CONFIG_ARM64_ERRATUM_1463225=y
+CONFIG_ARM64_ERRATUM_1542419=y
+CONFIG_ARM64_ERRATUM_1508412=y
+# CONFIG_ARM64_ERRATUM_2051678 is not set
+# CONFIG_ARM64_ERRATUM_2077057 is not set
+# CONFIG_ARM64_ERRATUM_2658417 is not set
+CONFIG_ARM64_WORKAROUND_TSB_FLUSH_FAILURE=y
+CONFIG_ARM64_ERRATUM_2054223=y
+# CONFIG_ARM64_ERRATUM_2067961 is not set
+# CONFIG_ARM64_ERRATUM_2441009 is not set
+# CONFIG_ARM64_ERRATUM_2457168 is not set
+# CONFIG_ARM64_ERRATUM_2645198 is not set
+# CONFIG_ARM64_ERRATUM_2966298 is not set
+# CONFIG_ARM64_ERRATUM_3117295 is not set
+CONFIG_CAVIUM_ERRATUM_22375=y
+CONFIG_CAVIUM_ERRATUM_23154=y
+CONFIG_CAVIUM_ERRATUM_27456=y
+CONFIG_CAVIUM_ERRATUM_30115=y
+CONFIG_CAVIUM_TX2_ERRATUM_219=y
+CONFIG_FUJITSU_ERRATUM_010001=y
+CONFIG_HISILICON_ERRATUM_161600802=y
+CONFIG_QCOM_FALKOR_ERRATUM_1003=y
+CONFIG_QCOM_FALKOR_ERRATUM_1009=y
+CONFIG_QCOM_QDF2400_ERRATUM_0065=y
+CONFIG_QCOM_FALKOR_ERRATUM_E1041=y
+CONFIG_NVIDIA_CARMEL_CNP_ERRATUM=y
+# CONFIG_ROCKCHIP_ERRATUM_3588001 is not set
+CONFIG_SOCIONEXT_SYNQUACER_PREITS=y
+# end of ARM errata workarounds via the alternatives framework
+
+CONFIG_ARM64_4K_PAGES=y
+# CONFIG_ARM64_16K_PAGES is not set
+# CONFIG_ARM64_64K_PAGES is not set
+# CONFIG_ARM64_VA_BITS_39 is not set
+CONFIG_ARM64_VA_BITS_48=y
+CONFIG_ARM64_VA_BITS=48
+CONFIG_ARM64_PA_BITS_48=y
+CONFIG_ARM64_PA_BITS=48
+# CONFIG_CPU_BIG_ENDIAN is not set
+CONFIG_CPU_LITTLE_ENDIAN=y
+CONFIG_SCHED_MC=y
+# CONFIG_SCHED_CLUSTER is not set
+CONFIG_SCHED_SMT=y
+CONFIG_NR_CPUS=8
+CONFIG_HOTPLUG_CPU=y
+# CONFIG_NUMA is not set
+# CONFIG_HZ_100 is not set
+# CONFIG_HZ_250 is not set
+# CONFIG_HZ_300 is not set
+CONFIG_HZ_1000=y
+CONFIG_HZ=1000
+CONFIG_SCHED_HRTICK=y
+CONFIG_ARCH_SPARSEMEM_ENABLE=y
+CONFIG_HW_PERF_EVENTS=y
+CONFIG_CC_HAVE_SHADOW_CALL_STACK=y
+# CONFIG_PARAVIRT is not set
+# CONFIG_PARAVIRT_TIME_ACCOUNTING is not set
+CONFIG_ARCH_SUPPORTS_KEXEC=y
+CONFIG_ARCH_SUPPORTS_KEXEC_FILE=y
+CONFIG_ARCH_SUPPORTS_KEXEC_SIG=y
+CONFIG_ARCH_SUPPORTS_KEXEC_IMAGE_VERIFY_SIG=y
+CONFIG_ARCH_DEFAULT_KEXEC_IMAGE_VERIFY_SIG=y
+CONFIG_ARCH_SUPPORTS_CRASH_DUMP=y
+CONFIG_TRANS_TABLE=y
+# CONFIG_XEN is not set
+CONFIG_ARCH_FORCE_MAX_ORDER=10
+CONFIG_UNMAP_KERNEL_AT_EL0=y
+CONFIG_MITIGATE_SPECTRE_BRANCH_HISTORY=y
+CONFIG_RODATA_FULL_DEFAULT_ENABLED=y
+# CONFIG_ARM64_SW_TTBR0_PAN is not set
+CONFIG_ARM64_TAGGED_ADDR_ABI=y
+CONFIG_COMPAT=y
+CONFIG_KUSER_HELPERS=y
+# CONFIG_COMPAT_ALIGNMENT_FIXUPS is not set
+CONFIG_ARMV8_DEPRECATED=y
+CONFIG_SWP_EMULATION=y
+CONFIG_CP15_BARRIER_EMULATION=y
+CONFIG_SETEND_EMULATION=y
+
+#
+# ARMv8.1 architectural features
+#
+CONFIG_ARM64_HW_AFDBM=y
+CONFIG_ARM64_PAN=y
+CONFIG_AS_HAS_LSE_ATOMICS=y
+CONFIG_ARM64_LSE_ATOMICS=y
+CONFIG_ARM64_USE_LSE_ATOMICS=y
+# end of ARMv8.1 architectural features
+
+#
+# ARMv8.2 architectural features
+#
+CONFIG_AS_HAS_ARMV8_2=y
+CONFIG_AS_HAS_SHA3=y
+# CONFIG_ARM64_PMEM is not set
+CONFIG_ARM64_RAS_EXTN=y
+CONFIG_ARM64_CNP=y
+# end of ARMv8.2 architectural features
+
+#
+# ARMv8.3 architectural features
+#
+CONFIG_ARM64_PTR_AUTH=y
+CONFIG_ARM64_PTR_AUTH_KERNEL=y
+CONFIG_CC_HAS_BRANCH_PROT_PAC_RET=y
+CONFIG_CC_HAS_SIGN_RETURN_ADDRESS=y
+CONFIG_AS_HAS_ARMV8_3=y
+CONFIG_AS_HAS_CFI_NEGATE_RA_STATE=y
+CONFIG_AS_HAS_LDAPR=y
+# end of ARMv8.3 architectural features
+
+#
+# ARMv8.4 architectural features
+#
+CONFIG_ARM64_AMU_EXTN=y
+CONFIG_AS_HAS_ARMV8_4=y
+CONFIG_ARM64_TLB_RANGE=y
+# end of ARMv8.4 architectural features
+
+#
+# ARMv8.5 architectural features
+#
+CONFIG_AS_HAS_ARMV8_5=y
+CONFIG_ARM64_BTI=y
+CONFIG_CC_HAS_BRANCH_PROT_PAC_RET_BTI=y
+CONFIG_ARM64_E0PD=y
+CONFIG_ARM64_AS_HAS_MTE=y
+CONFIG_ARM64_MTE=y
+# end of ARMv8.5 architectural features
+
+#
+# ARMv8.7 architectural features
+#
+CONFIG_ARM64_EPAN=y
+# end of ARMv8.7 architectural features
+
+CONFIG_ARM64_SVE=y
+# CONFIG_ARM64_SME is not set
+# CONFIG_ARM64_PSEUDO_NMI is not set
+CONFIG_RELOCATABLE=y
+# CONFIG_RANDOMIZE_BASE is not set
+CONFIG_CC_HAVE_STACKPROTECTOR_SYSREG=y
+CONFIG_STACKPROTECTOR_PER_TASK=y
+# end of Kernel Features
+
+#
+# Boot options
+#
+CONFIG_CMDLINE=""
+CONFIG_EFI_STUB=y
+CONFIG_EFI=y
+CONFIG_DMI=y
+# end of Boot options
+
+#
+# Power management options
+#
+CONFIG_SUSPEND=y
+CONFIG_SUSPEND_FREEZER=y
+CONFIG_HIBERNATE_CALLBACKS=y
+CONFIG_HIBERNATION=y
+CONFIG_HIBERNATION_SNAPSHOT_DEV=y
+CONFIG_PM_STD_PARTITION=""
+CONFIG_PM_SLEEP=y
+CONFIG_PM_SLEEP_SMP=y
+CONFIG_PM_AUTOSLEEP=y
+# CONFIG_PM_USERSPACE_AUTOSLEEP is not set
+# CONFIG_PM_WAKELOCKS is not set
+CONFIG_PM=y
+# CONFIG_PM_DEBUG is not set
+CONFIG_PM_CLK=y
+CONFIG_PM_GENERIC_DOMAINS=y
+# CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set
+CONFIG_PM_GENERIC_DOMAINS_SLEEP=y
+CONFIG_PM_GENERIC_DOMAINS_OF=y
+CONFIG_CPU_PM=y
+CONFIG_ENERGY_MODEL=y
+CONFIG_ARCH_HIBERNATION_POSSIBLE=y
+CONFIG_ARCH_HIBERNATION_HEADER=y
+CONFIG_ARCH_SUSPEND_POSSIBLE=y
+# end of Power management options
+
+#
+# CPU Power Management
+#
+
+#
+# CPU Idle
+#
+CONFIG_CPU_IDLE=y
+CONFIG_CPU_IDLE_MULTIPLE_DRIVERS=y
+CONFIG_CPU_IDLE_GOV_LADDER=y
+CONFIG_CPU_IDLE_GOV_MENU=y
+CONFIG_CPU_IDLE_GOV_TEO=y
+CONFIG_DT_IDLE_STATES=y
+CONFIG_DT_IDLE_GENPD=y
+
+#
+# ARM CPU Idle Drivers
+#
+CONFIG_ARM_PSCI_CPUIDLE=y
+CONFIG_ARM_PSCI_CPUIDLE_DOMAIN=y
+# end of ARM CPU Idle Drivers
+# end of CPU Idle
+
+#
+# CPU Frequency scaling
+#
+CONFIG_CPU_FREQ=y
+CONFIG_CPU_FREQ_GOV_ATTR_SET=y
+CONFIG_CPU_FREQ_GOV_COMMON=y
+# CONFIG_CPU_FREQ_STAT is not set
+CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
+# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set
+# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
+# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set
+# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
+# CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL is not set
+CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
+CONFIG_CPU_FREQ_GOV_POWERSAVE=m
+CONFIG_CPU_FREQ_GOV_USERSPACE=m
+CONFIG_CPU_FREQ_GOV_ONDEMAND=m
+CONFIG_CPU_FREQ_GOV_CONSERVATIVE=m
+CONFIG_CPU_FREQ_GOV_SCHEDUTIL=y
+
+#
+# CPU frequency scaling drivers
+#
+# CONFIG_CPUFREQ_DT is not set
+# CONFIG_CPUFREQ_DT_PLATDEV is not set
+CONFIG_ARM_MEDIATEK_CPUFREQ=y
+CONFIG_ARM_MEDIATEK_CPUFREQ_HW=m
+CONFIG_ARM_SCMI_CPUFREQ=m
+# end of CPU Frequency scaling
+# end of CPU Power Management
+
+CONFIG_ARCH_SUPPORTS_ACPI=y
+# CONFIG_ACPI is not set
+CONFIG_HAVE_KVM=y
+CONFIG_KVM_COMMON=y
+CONFIG_HAVE_KVM_IRQCHIP=y
+CONFIG_HAVE_KVM_IRQ_ROUTING=y
+CONFIG_HAVE_KVM_DIRTY_RING=y
+CONFIG_HAVE_KVM_DIRTY_RING_ACQ_REL=y
+CONFIG_NEED_KVM_DIRTY_RING_WITH_BITMAP=y
+CONFIG_KVM_MMIO=y
+CONFIG_HAVE_KVM_MSI=y
+CONFIG_HAVE_KVM_CPU_RELAX_INTERCEPT=y
+CONFIG_KVM_VFIO=y
+CONFIG_KVM_GENERIC_DIRTYLOG_READ_PROTECT=y
+CONFIG_HAVE_KVM_IRQ_BYPASS=y
+CONFIG_HAVE_KVM_VCPU_RUN_PID_CHANGE=y
+CONFIG_KVM_XFER_TO_GUEST_WORK=y
+CONFIG_KVM_GENERIC_HARDWARE_ENABLING=y
+CONFIG_KVM_GENERIC_MMU_NOTIFIER=y
+CONFIG_VIRTUALIZATION=y
+CONFIG_KVM=y
+# CONFIG_NVHE_EL2_DEBUG is not set
+
+#
+# General architecture-dependent options
+#
+CONFIG_ARCH_HAS_SUBPAGE_FAULTS=y
+CONFIG_HOTPLUG_CORE_SYNC=y
+CONFIG_HOTPLUG_CORE_SYNC_DEAD=y
+# CONFIG_KPROBES is not set
+CONFIG_JUMP_LABEL=y
+# CONFIG_STATIC_KEYS_SELFTEST is not set
+CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y
+CONFIG_HAVE_IOREMAP_PROT=y
+CONFIG_HAVE_KPROBES=y
+CONFIG_HAVE_KRETPROBES=y
+CONFIG_ARCH_CORRECT_STACKTRACE_ON_KRETPROBE=y
+CONFIG_HAVE_FUNCTION_ERROR_INJECTION=y
+CONFIG_HAVE_NMI=y
+CONFIG_TRACE_IRQFLAGS_SUPPORT=y
+CONFIG_TRACE_IRQFLAGS_NMI_SUPPORT=y
+CONFIG_HAVE_ARCH_TRACEHOOK=y
+CONFIG_HAVE_DMA_CONTIGUOUS=y
+CONFIG_GENERIC_SMP_IDLE_THREAD=y
+CONFIG_GENERIC_IDLE_POLL_SETUP=y
+CONFIG_ARCH_HAS_FORTIFY_SOURCE=y
+CONFIG_ARCH_HAS_KEEPINITRD=y
+CONFIG_ARCH_HAS_SET_MEMORY=y
+CONFIG_ARCH_HAS_SET_DIRECT_MAP=y
+CONFIG_HAVE_ARCH_THREAD_STRUCT_WHITELIST=y
+CONFIG_ARCH_WANTS_NO_INSTR=y
+CONFIG_HAVE_ASM_MODVERSIONS=y
+CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y
+CONFIG_HAVE_RSEQ=y
+CONFIG_HAVE_FUNCTION_ARG_ACCESS_API=y
+CONFIG_HAVE_HW_BREAKPOINT=y
+CONFIG_HAVE_PERF_REGS=y
+CONFIG_HAVE_PERF_USER_STACK_DUMP=y
+CONFIG_HAVE_ARCH_JUMP_LABEL=y
+CONFIG_HAVE_ARCH_JUMP_LABEL_RELATIVE=y
+CONFIG_MMU_GATHER_TABLE_FREE=y
+CONFIG_MMU_GATHER_RCU_TABLE_FREE=y
+CONFIG_MMU_LAZY_TLB_REFCOUNT=y
+CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y
+CONFIG_ARCH_HAS_NMI_SAFE_THIS_CPU_OPS=y
+CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y
+CONFIG_HAVE_CMPXCHG_LOCAL=y
+CONFIG_HAVE_CMPXCHG_DOUBLE=y
+CONFIG_ARCH_WANT_COMPAT_IPC_PARSE_VERSION=y
+CONFIG_HAVE_ARCH_SECCOMP=y
+CONFIG_HAVE_ARCH_SECCOMP_FILTER=y
+CONFIG_SECCOMP=y
+CONFIG_SECCOMP_FILTER=y
+# CONFIG_SECCOMP_CACHE_DEBUG is not set
+CONFIG_HAVE_ARCH_STACKLEAK=y
+CONFIG_HAVE_STACKPROTECTOR=y
+CONFIG_STACKPROTECTOR=y
+CONFIG_STACKPROTECTOR_STRONG=y
+CONFIG_ARCH_SUPPORTS_SHADOW_CALL_STACK=y
+# CONFIG_SHADOW_CALL_STACK is not set
+CONFIG_ARCH_SUPPORTS_LTO_CLANG=y
+CONFIG_ARCH_SUPPORTS_LTO_CLANG_THIN=y
+CONFIG_LTO_NONE=y
+CONFIG_ARCH_SUPPORTS_CFI_CLANG=y
+CONFIG_HAVE_CONTEXT_TRACKING_USER=y
+CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y
+CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y
+CONFIG_HAVE_MOVE_PUD=y
+CONFIG_HAVE_MOVE_PMD=y
+CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y
+CONFIG_HAVE_ARCH_HUGE_VMAP=y
+CONFIG_HAVE_ARCH_HUGE_VMALLOC=y
+CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y
+CONFIG_HAVE_MOD_ARCH_SPECIFIC=y
+CONFIG_MODULES_USE_ELF_RELA=y
+CONFIG_HAVE_SOFTIRQ_ON_OWN_STACK=y
+CONFIG_SOFTIRQ_ON_OWN_STACK=y
+CONFIG_ARCH_HAS_ELF_RANDOMIZE=y
+CONFIG_HAVE_ARCH_MMAP_RND_BITS=y
+CONFIG_ARCH_MMAP_RND_BITS=18
+CONFIG_HAVE_ARCH_MMAP_RND_COMPAT_BITS=y
+CONFIG_ARCH_MMAP_RND_COMPAT_BITS=11
+CONFIG_PAGE_SIZE_LESS_THAN_64KB=y
+CONFIG_PAGE_SIZE_LESS_THAN_256KB=y
+CONFIG_ARCH_WANT_DEFAULT_TOPDOWN_MMAP_LAYOUT=y
+CONFIG_CLONE_BACKWARDS=y
+CONFIG_OLD_SIGSUSPEND3=y
+CONFIG_COMPAT_OLD_SIGACTION=y
+CONFIG_COMPAT_32BIT_TIME=y
+CONFIG_HAVE_ARCH_VMAP_STACK=y
+CONFIG_VMAP_STACK=y
+CONFIG_HAVE_ARCH_RANDOMIZE_KSTACK_OFFSET=y
+CONFIG_RANDOMIZE_KSTACK_OFFSET=y
+# CONFIG_RANDOMIZE_KSTACK_OFFSET_DEFAULT is not set
+CONFIG_ARCH_HAS_STRICT_KERNEL_RWX=y
+CONFIG_STRICT_KERNEL_RWX=y
+CONFIG_ARCH_HAS_STRICT_MODULE_RWX=y
+CONFIG_STRICT_MODULE_RWX=y
+CONFIG_HAVE_ARCH_COMPILER_H=y
+CONFIG_HAVE_ARCH_PREL32_RELOCATIONS=y
+CONFIG_ARCH_HAS_RELR=y
+CONFIG_HAVE_PREEMPT_DYNAMIC=y
+CONFIG_HAVE_PREEMPT_DYNAMIC_KEY=y
+CONFIG_ARCH_WANT_LD_ORPHAN_WARN=y
+CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
+CONFIG_ARCH_SUPPORTS_PAGE_TABLE_CHECK=y
+CONFIG_ARCH_HAVE_TRACE_MMIO_ACCESS=y
+CONFIG_ARCH_HAS_HW_PTE_YOUNG=y
+
+#
+# GCOV-based kernel profiling
+#
+CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y
+# end of GCOV-based kernel profiling
+
+CONFIG_HAVE_GCC_PLUGINS=y
+# CONFIG_GCC_PLUGINS is not set
+CONFIG_FUNCTION_ALIGNMENT_4B=y
+CONFIG_FUNCTION_ALIGNMENT=4
+# end of General architecture-dependent options
+
+CONFIG_RT_MUTEXES=y
+CONFIG_BASE_SMALL=0
+CONFIG_MODULE_SIG_FORMAT=y
+CONFIG_MODULES=y
+# CONFIG_MODULE_FORCE_LOAD is not set
+CONFIG_MODULE_UNLOAD=y
+# CONFIG_MODULE_FORCE_UNLOAD is not set
+# CONFIG_MODULE_UNLOAD_TAINT_TRACKING is not set
+# CONFIG_MODVERSIONS is not set
+# CONFIG_MODULE_SRCVERSION_ALL is not set
+CONFIG_MODULE_SIG=y
+# CONFIG_MODULE_SIG_FORCE is not set
+# CONFIG_MODULE_SIG_ALL is not set
+CONFIG_MODULE_SIG_SHA256=y
+# CONFIG_MODULE_SIG_SHA384 is not set
+# CONFIG_MODULE_SIG_SHA512 is not set
+# CONFIG_MODULE_SIG_SHA3_256 is not set
+# CONFIG_MODULE_SIG_SHA3_384 is not set
+# CONFIG_MODULE_SIG_SHA3_512 is not set
+CONFIG_MODULE_SIG_HASH="sha256"
+CONFIG_MODULE_COMPRESS_NONE=y
+# CONFIG_MODULE_COMPRESS_GZIP is not set
+# CONFIG_MODULE_COMPRESS_XZ is not set
+# CONFIG_MODULE_COMPRESS_ZSTD is not set
+# CONFIG_MODULE_ALLOW_MISSING_NAMESPACE_IMPORTS is not set
+CONFIG_MODPROBE_PATH="/sbin/modprobe"
+CONFIG_MODULES_TREE_LOOKUP=y
+CONFIG_BLOCK=y
+CONFIG_BLOCK_LEGACY_AUTOLOAD=y
+CONFIG_BLK_CGROUP_RWSTAT=y
+CONFIG_BLK_CGROUP_PUNT_BIO=y
+CONFIG_BLK_DEV_BSG_COMMON=y
+CONFIG_BLK_ICQ=y
+# CONFIG_BLK_DEV_BSGLIB is not set
+# CONFIG_BLK_DEV_INTEGRITY is not set
+# CONFIG_BLK_DEV_WRITE_MOUNTED is not set
+# CONFIG_BLK_DEV_ZONED is not set
+# CONFIG_BLK_DEV_THROTTLING is not set
+CONFIG_BLK_WBT=y
+CONFIG_BLK_WBT_MQ=y
+# CONFIG_BLK_CGROUP_IOLATENCY is not set
+# CONFIG_BLK_CGROUP_IOCOST is not set
+# CONFIG_BLK_CGROUP_IOPRIO is not set
+# CONFIG_BLK_SED_OPAL is not set
+# CONFIG_BLK_INLINE_ENCRYPTION is not set
+
+#
+# Partition Types
+#
+CONFIG_PARTITION_ADVANCED=y
+# CONFIG_ACORN_PARTITION is not set
+# CONFIG_AIX_PARTITION is not set
+# CONFIG_OSF_PARTITION is not set
+# CONFIG_AMIGA_PARTITION is not set
+# CONFIG_ATARI_PARTITION is not set
+CONFIG_MAC_PARTITION=y
+CONFIG_MSDOS_PARTITION=y
+CONFIG_BSD_DISKLABEL=y
+CONFIG_MINIX_SUBPARTITION=y
+# CONFIG_SOLARIS_X86_PARTITION is not set
+# CONFIG_UNIXWARE_DISKLABEL is not set
+CONFIG_LDM_PARTITION=y
+# CONFIG_LDM_DEBUG is not set
+# CONFIG_SGI_PARTITION is not set
+# CONFIG_ULTRIX_PARTITION is not set
+# CONFIG_SUN_PARTITION is not set
+# CONFIG_KARMA_PARTITION is not set
+CONFIG_EFI_PARTITION=y
+# CONFIG_SYSV68_PARTITION is not set
+# CONFIG_CMDLINE_PARTITION is not set
+# end of Partition Types
+
+CONFIG_BLK_MQ_VIRTIO=y
+CONFIG_BLK_PM=y
+CONFIG_BLOCK_HOLDER_DEPRECATED=y
+CONFIG_BLK_MQ_STACKING=y
+
+#
+# IO Schedulers
+#
+CONFIG_MQ_IOSCHED_DEADLINE=m
+CONFIG_MQ_IOSCHED_KYBER=m
+CONFIG_IOSCHED_BFQ=m
+CONFIG_BFQ_GROUP_IOSCHED=y
+# CONFIG_BFQ_CGROUP_DEBUG is not set
+# end of IO Schedulers
+
+CONFIG_PREEMPT_NOTIFIERS=y
+CONFIG_PADATA=y
+CONFIG_ASN1=y
+CONFIG_UNINLINE_SPIN_UNLOCK=y
+CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y
+CONFIG_MUTEX_SPIN_ON_OWNER=y
+CONFIG_RWSEM_SPIN_ON_OWNER=y
+CONFIG_LOCK_SPIN_ON_OWNER=y
+CONFIG_ARCH_USE_QUEUED_SPINLOCKS=y
+CONFIG_QUEUED_SPINLOCKS=y
+CONFIG_ARCH_USE_QUEUED_RWLOCKS=y
+CONFIG_QUEUED_RWLOCKS=y
+CONFIG_ARCH_HAS_NON_OVERLAPPING_ADDRESS_SPACE=y
+CONFIG_ARCH_HAS_SYSCALL_WRAPPER=y
+CONFIG_FREEZER=y
+
+#
+# Executable file formats
+#
+CONFIG_BINFMT_ELF=y
+CONFIG_COMPAT_BINFMT_ELF=y
+CONFIG_ARCH_BINFMT_ELF_STATE=y
+CONFIG_ARCH_BINFMT_ELF_EXTRA_PHDRS=y
+CONFIG_ARCH_HAVE_ELF_PROT=y
+CONFIG_ARCH_USE_GNU_PROPERTY=y
+CONFIG_ELFCORE=y
+# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
+CONFIG_BINFMT_SCRIPT=y
+CONFIG_BINFMT_MISC=m
+CONFIG_COREDUMP=y
+# end of Executable file formats
+
+#
+# Memory Management options
+#
+CONFIG_ZPOOL=y
+CONFIG_SWAP=y
+CONFIG_ZSWAP=y
+# CONFIG_ZSWAP_DEFAULT_ON is not set
+# CONFIG_ZSWAP_EXCLUSIVE_LOADS_DEFAULT_ON is not set
+# CONFIG_ZSWAP_SHRINKER_DEFAULT_ON is not set
+# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_DEFLATE is not set
+# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZO is not set
+# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_842 is not set
+# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZ4 is not set
+# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZ4HC is not set
+CONFIG_ZSWAP_COMPRESSOR_DEFAULT_ZSTD=y
+CONFIG_ZSWAP_COMPRESSOR_DEFAULT="zstd"
+# CONFIG_ZSWAP_ZPOOL_DEFAULT_ZBUD is not set
+# CONFIG_ZSWAP_ZPOOL_DEFAULT_Z3FOLD is not set
+CONFIG_ZSWAP_ZPOOL_DEFAULT_ZSMALLOC=y
+CONFIG_ZSWAP_ZPOOL_DEFAULT="zsmalloc"
+CONFIG_ZBUD=y
+CONFIG_Z3FOLD=y
+CONFIG_ZSMALLOC=y
+# CONFIG_ZSMALLOC_STAT is not set
+CONFIG_ZSMALLOC_CHAIN_SIZE=8
+
+#
+# Slab allocator options
+#
+CONFIG_SLUB=y
+CONFIG_SLAB_MERGE_DEFAULT=y
+# CONFIG_SLAB_FREELIST_RANDOM is not set
+# CONFIG_SLAB_FREELIST_HARDENED is not set
+# CONFIG_SLUB_STATS is not set
+# CONFIG_SLUB_CPU_PARTIAL is not set
+# CONFIG_RANDOM_KMALLOC_CACHES is not set
+# end of Slab allocator options
+
+# CONFIG_SHUFFLE_PAGE_ALLOCATOR is not set
+# CONFIG_COMPAT_BRK is not set
+CONFIG_SPARSEMEM=y
+CONFIG_SPARSEMEM_EXTREME=y
+CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y
+CONFIG_SPARSEMEM_VMEMMAP=y
+CONFIG_HAVE_FAST_GUP=y
+CONFIG_ARCH_KEEP_MEMBLOCK=y
+CONFIG_EXCLUSIVE_SYSTEM_RAM=y
+CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
+CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
+# CONFIG_MEMORY_HOTPLUG is not set
+CONFIG_ARCH_MHP_MEMMAP_ON_MEMORY_ENABLE=y
+CONFIG_SPLIT_PTLOCK_CPUS=4
+CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK=y
+CONFIG_MEMORY_BALLOON=y
+CONFIG_BALLOON_COMPACTION=y
+CONFIG_COMPACTION=y
+CONFIG_COMPACT_UNEVICTABLE_DEFAULT=1
+CONFIG_PAGE_REPORTING=y
+CONFIG_MIGRATION=y
+CONFIG_PCP_BATCH_SCALE_MAX=5
+CONFIG_PHYS_ADDR_T_64BIT=y
+CONFIG_MMU_NOTIFIER=y
+CONFIG_KSM=y
+CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
+CONFIG_ARCH_SUPPORTS_MEMORY_FAILURE=y
+# CONFIG_MEMORY_FAILURE is not set
+CONFIG_ARCH_WANTS_THP_SWAP=y
+# CONFIG_TRANSPARENT_HUGEPAGE is not set
+# CONFIG_CMA is not set
+CONFIG_GENERIC_EARLY_IOREMAP=y
+# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set
+# CONFIG_IDLE_PAGE_TRACKING is not set
+CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y
+CONFIG_ARCH_HAS_CURRENT_STACK_POINTER=y
+CONFIG_ARCH_HAS_PTE_DEVMAP=y
+CONFIG_ZONE_DMA=y
+CONFIG_ZONE_DMA32=y
+CONFIG_ARCH_USES_HIGH_VMA_FLAGS=y
+CONFIG_ARCH_USES_PG_ARCH_X=y
+CONFIG_VM_EVENT_COUNTERS=y
+# CONFIG_PERCPU_STATS is not set
+
+#
+# GUP_TEST needs to have DEBUG_FS enabled
+#
+# CONFIG_DMAPOOL_TEST is not set
+CONFIG_ARCH_HAS_PTE_SPECIAL=y
+CONFIG_MEMFD_CREATE=y
+CONFIG_SECRETMEM=y
+# CONFIG_ANON_VMA_NAME is not set
+# CONFIG_USERFAULTFD is not set
+CONFIG_LRU_GEN=y
+CONFIG_LRU_GEN_ENABLED=y
+# CONFIG_LRU_GEN_STATS is not set
+CONFIG_LRU_GEN_WALKS_MMU=y
+CONFIG_ARCH_SUPPORTS_PER_VMA_LOCK=y
+CONFIG_PER_VMA_LOCK=y
+CONFIG_LOCK_MM_AND_FIND_VMA=y
+
+#
+# Data Access Monitoring
+#
+# CONFIG_DAMON is not set
+# end of Data Access Monitoring
+# end of Memory Management options
+
+CONFIG_NET=y
+CONFIG_COMPAT_NETLINK_MESSAGES=y
+CONFIG_NET_INGRESS=y
+CONFIG_NET_EGRESS=y
+CONFIG_NET_XGRESS=y
+CONFIG_NET_REDIRECT=y
+CONFIG_SKB_EXTENSIONS=y
+
+#
+# Networking options
+#
+CONFIG_PACKET=m
+CONFIG_PACKET_DIAG=m
+CONFIG_UNIX=y
+CONFIG_UNIX_SCM=y
+CONFIG_AF_UNIX_OOB=y
+CONFIG_UNIX_DIAG=m
+CONFIG_TLS=m
+# CONFIG_TLS_DEVICE is not set
+# CONFIG_TLS_TOE is not set
+CONFIG_XFRM=y
+CONFIG_XFRM_ALGO=m
+CONFIG_XFRM_USER=m
+# CONFIG_XFRM_INTERFACE is not set
+CONFIG_XFRM_SUB_POLICY=y
+CONFIG_XFRM_MIGRATE=y
+CONFIG_XFRM_STATISTICS=y
+CONFIG_XFRM_AH=m
+CONFIG_XFRM_ESP=m
+CONFIG_XFRM_IPCOMP=m
+CONFIG_NET_KEY=m
+CONFIG_NET_KEY_MIGRATE=y
+CONFIG_NET_HANDSHAKE=y
+CONFIG_INET=y
+CONFIG_IP_MULTICAST=y
+CONFIG_IP_ADVANCED_ROUTER=y
+# CONFIG_IP_FIB_TRIE_STATS is not set
+CONFIG_IP_MULTIPLE_TABLES=y
+CONFIG_IP_ROUTE_MULTIPATH=y
+CONFIG_IP_ROUTE_VERBOSE=y
+CONFIG_IP_ROUTE_CLASSID=y
+# CONFIG_IP_PNP is not set
+CONFIG_NET_IPIP=m
+CONFIG_NET_IPGRE_DEMUX=m
+CONFIG_NET_IP_TUNNEL=m
+CONFIG_NET_IPGRE=m
+CONFIG_NET_IPGRE_BROADCAST=y
+CONFIG_IP_MROUTE_COMMON=y
+CONFIG_IP_MROUTE=y
+CONFIG_IP_MROUTE_MULTIPLE_TABLES=y
+CONFIG_IP_PIMSM_V1=y
+CONFIG_IP_PIMSM_V2=y
+CONFIG_SYN_COOKIES=y
+CONFIG_NET_IPVTI=m
+CONFIG_NET_UDP_TUNNEL=m
+CONFIG_NET_FOU=m
+CONFIG_NET_FOU_IP_TUNNELS=y
+CONFIG_INET_AH=m
+CONFIG_INET_ESP=m
+# CONFIG_INET_ESP_OFFLOAD is not set
+# CONFIG_INET_ESPINTCP is not set
+CONFIG_INET_IPCOMP=m
+CONFIG_INET_TABLE_PERTURB_ORDER=16
+CONFIG_INET_XFRM_TUNNEL=m
+CONFIG_INET_TUNNEL=m
+CONFIG_INET_DIAG=m
+CONFIG_INET_TCP_DIAG=m
+CONFIG_INET_UDP_DIAG=m
+CONFIG_INET_RAW_DIAG=m
+# CONFIG_INET_DIAG_DESTROY is not set
+CONFIG_TCP_CONG_ADVANCED=y
+# CONFIG_TCP_CONG_BIC is not set
+CONFIG_TCP_CONG_CUBIC=y
+# CONFIG_TCP_CONG_WESTWOOD is not set
+# CONFIG_TCP_CONG_HTCP is not set
+# CONFIG_TCP_CONG_HSTCP is not set
+# CONFIG_TCP_CONG_HYBLA is not set
+# CONFIG_TCP_CONG_VEGAS is not set
+# CONFIG_TCP_CONG_NV is not set
+# CONFIG_TCP_CONG_SCALABLE is not set
+# CONFIG_TCP_CONG_LP is not set
+# CONFIG_TCP_CONG_VENO is not set
+# CONFIG_TCP_CONG_YEAH is not set
+# CONFIG_TCP_CONG_ILLINOIS is not set
+# CONFIG_TCP_CONG_DCTCP is not set
+# CONFIG_TCP_CONG_CDG is not set
+# CONFIG_TCP_CONG_BBR is not set
+CONFIG_DEFAULT_CUBIC=y
+# CONFIG_DEFAULT_RENO is not set
+CONFIG_DEFAULT_TCP_CONG="cubic"
+CONFIG_TCP_SIGPOOL=y
+CONFIG_TCP_MD5SIG=y
+CONFIG_IPV6=m
+CONFIG_IPV6_ROUTER_PREF=y
+CONFIG_IPV6_ROUTE_INFO=y
+CONFIG_IPV6_OPTIMISTIC_DAD=y
+CONFIG_INET6_AH=m
+CONFIG_INET6_ESP=m
+# CONFIG_INET6_ESP_OFFLOAD is not set
+# CONFIG_INET6_ESPINTCP is not set
+CONFIG_INET6_IPCOMP=m
+CONFIG_IPV6_MIP6=m
+CONFIG_IPV6_ILA=m
+CONFIG_INET6_XFRM_TUNNEL=m
+CONFIG_INET6_TUNNEL=m
+CONFIG_IPV6_VTI=m
+CONFIG_IPV6_SIT=m
+CONFIG_IPV6_SIT_6RD=y
+CONFIG_IPV6_NDISC_NODETYPE=y
+CONFIG_IPV6_TUNNEL=m
+CONFIG_IPV6_GRE=m
+CONFIG_IPV6_FOU=m
+CONFIG_IPV6_FOU_TUNNEL=m
+CONFIG_IPV6_MULTIPLE_TABLES=y
+CONFIG_IPV6_SUBTREES=y
+CONFIG_IPV6_MROUTE=y
+CONFIG_IPV6_MROUTE_MULTIPLE_TABLES=y
+CONFIG_IPV6_PIMSM_V2=y
+CONFIG_IPV6_SEG6_LWTUNNEL=y
+CONFIG_IPV6_SEG6_HMAC=y
+# CONFIG_IPV6_RPL_LWTUNNEL is not set
+# CONFIG_IPV6_IOAM6_LWTUNNEL is not set
+CONFIG_MPTCP=y
+CONFIG_INET_MPTCP_DIAG=m
+# CONFIG_NETWORK_SECMARK is not set
+# CONFIG_NETWORK_PHY_TIMESTAMPING is not set
+CONFIG_NETFILTER=y
+CONFIG_NETFILTER_ADVANCED=y
+CONFIG_BRIDGE_NETFILTER=m
+
+#
+# Core Netfilter Configuration
+#
+CONFIG_NETFILTER_INGRESS=y
+CONFIG_NETFILTER_EGRESS=y
+CONFIG_NETFILTER_SKIP_EGRESS=y
+CONFIG_NETFILTER_NETLINK=m
+CONFIG_NETFILTER_FAMILY_BRIDGE=y
+CONFIG_NETFILTER_FAMILY_ARP=y
+# CONFIG_NETFILTER_NETLINK_HOOK is not set
+CONFIG_NETFILTER_NETLINK_ACCT=m
+CONFIG_NETFILTER_NETLINK_QUEUE=m
+CONFIG_NETFILTER_NETLINK_LOG=m
+CONFIG_NETFILTER_NETLINK_OSF=m
+CONFIG_NF_CONNTRACK=m
+CONFIG_NF_LOG_SYSLOG=m
+CONFIG_NETFILTER_CONNCOUNT=m
+CONFIG_NF_CONNTRACK_MARK=y
+CONFIG_NF_CONNTRACK_ZONES=y
+CONFIG_NF_CONNTRACK_PROCFS=y
+CONFIG_NF_CONNTRACK_EVENTS=y
+CONFIG_NF_CONNTRACK_TIMEOUT=y
+CONFIG_NF_CONNTRACK_TIMESTAMP=y
+CONFIG_NF_CONNTRACK_LABELS=y
+CONFIG_NF_CT_PROTO_DCCP=y
+CONFIG_NF_CT_PROTO_GRE=y
+CONFIG_NF_CT_PROTO_SCTP=y
+CONFIG_NF_CT_PROTO_UDPLITE=y
+CONFIG_NF_CONNTRACK_AMANDA=m
+CONFIG_NF_CONNTRACK_FTP=m
+CONFIG_NF_CONNTRACK_H323=m
+CONFIG_NF_CONNTRACK_IRC=m
+CONFIG_NF_CONNTRACK_BROADCAST=m
+CONFIG_NF_CONNTRACK_NETBIOS_NS=m
+CONFIG_NF_CONNTRACK_SNMP=m
+CONFIG_NF_CONNTRACK_PPTP=m
+CONFIG_NF_CONNTRACK_SANE=m
+CONFIG_NF_CONNTRACK_SIP=m
+CONFIG_NF_CONNTRACK_TFTP=m
+CONFIG_NF_CT_NETLINK=m
+CONFIG_NF_CT_NETLINK_TIMEOUT=m
+CONFIG_NF_CT_NETLINK_HELPER=m
+CONFIG_NETFILTER_NETLINK_GLUE_CT=y
+CONFIG_NF_NAT=m
+CONFIG_NF_NAT_AMANDA=m
+CONFIG_NF_NAT_FTP=m
+CONFIG_NF_NAT_IRC=m
+CONFIG_NF_NAT_SIP=m
+CONFIG_NF_NAT_TFTP=m
+CONFIG_NF_NAT_REDIRECT=y
+CONFIG_NF_NAT_MASQUERADE=y
+CONFIG_NF_TABLES=m
+CONFIG_NF_TABLES_INET=y
+CONFIG_NF_TABLES_NETDEV=y
+CONFIG_NFT_NUMGEN=m
+CONFIG_NFT_CT=m
+CONFIG_NFT_FLOW_OFFLOAD=m
+CONFIG_NFT_CONNLIMIT=m
+CONFIG_NFT_LOG=m
+CONFIG_NFT_LIMIT=m
+CONFIG_NFT_MASQ=m
+CONFIG_NFT_REDIR=m
+CONFIG_NFT_NAT=m
+CONFIG_NFT_TUNNEL=m
+CONFIG_NFT_QUEUE=m
+CONFIG_NFT_QUOTA=m
+CONFIG_NFT_REJECT=m
+CONFIG_NFT_REJECT_INET=m
+CONFIG_NFT_HASH=m
+CONFIG_NFT_FIB=m
+CONFIG_NFT_FIB_INET=m
+CONFIG_NFT_XFRM=m
+CONFIG_NFT_SOCKET=m
+CONFIG_NFT_OSF=m
+CONFIG_NFT_TPROXY=m
+# CONFIG_NFT_SYNPROXY is not set
+CONFIG_NF_DUP_NETDEV=m
+CONFIG_NFT_DUP_NETDEV=m
+CONFIG_NFT_FWD_NETDEV=m
+CONFIG_NFT_FIB_NETDEV=m
+CONFIG_NFT_REJECT_NETDEV=m
+CONFIG_NF_FLOW_TABLE_INET=m
+CONFIG_NF_FLOW_TABLE=m
+# CONFIG_NF_FLOW_TABLE_PROCFS is not set
+# CONFIG_NETFILTER_XTABLES is not set
+# end of Core Netfilter Configuration
+
+CONFIG_IP_SET=m
+CONFIG_IP_SET_MAX=256
+CONFIG_IP_SET_BITMAP_IP=m
+CONFIG_IP_SET_BITMAP_IPMAC=m
+CONFIG_IP_SET_BITMAP_PORT=m
+CONFIG_IP_SET_HASH_IP=m
+CONFIG_IP_SET_HASH_IPMARK=m
+CONFIG_IP_SET_HASH_IPPORT=m
+CONFIG_IP_SET_HASH_IPPORTIP=m
+CONFIG_IP_SET_HASH_IPPORTNET=m
+CONFIG_IP_SET_HASH_IPMAC=m
+CONFIG_IP_SET_HASH_MAC=m
+CONFIG_IP_SET_HASH_NETPORTNET=m
+CONFIG_IP_SET_HASH_NET=m
+CONFIG_IP_SET_HASH_NETNET=m
+CONFIG_IP_SET_HASH_NETPORT=m
+CONFIG_IP_SET_HASH_NETIFACE=m
+CONFIG_IP_SET_LIST_SET=m
+# CONFIG_IP_VS is not set
+
+#
+# IP: Netfilter Configuration
+#
+CONFIG_NF_DEFRAG_IPV4=m
+CONFIG_NF_SOCKET_IPV4=m
+CONFIG_NF_TPROXY_IPV4=m
+CONFIG_NF_TABLES_IPV4=y
+CONFIG_NFT_REJECT_IPV4=m
+CONFIG_NFT_DUP_IPV4=m
+CONFIG_NFT_FIB_IPV4=m
+CONFIG_NF_TABLES_ARP=y
+CONFIG_NF_DUP_IPV4=m
+CONFIG_NF_LOG_ARP=m
+CONFIG_NF_LOG_IPV4=m
+CONFIG_NF_REJECT_IPV4=m
+CONFIG_NF_NAT_SNMP_BASIC=m
+CONFIG_NF_NAT_PPTP=m
+CONFIG_NF_NAT_H323=m
+# CONFIG_IP_NF_IPTABLES is not set
+# CONFIG_IP_NF_ARPTABLES is not set
+# end of IP: Netfilter Configuration
+
+#
+# IPv6: Netfilter Configuration
+#
+CONFIG_NF_SOCKET_IPV6=m
+CONFIG_NF_TPROXY_IPV6=m
+CONFIG_NF_TABLES_IPV6=y
+CONFIG_NFT_REJECT_IPV6=m
+CONFIG_NFT_DUP_IPV6=m
+CONFIG_NFT_FIB_IPV6=m
+CONFIG_NF_DUP_IPV6=m
+CONFIG_NF_REJECT_IPV6=m
+CONFIG_NF_LOG_IPV6=m
+# CONFIG_IP6_NF_IPTABLES is not set
+# end of IPv6: Netfilter Configuration
+
+CONFIG_NF_DEFRAG_IPV6=m
+# CONFIG_NF_TABLES_BRIDGE is not set
+CONFIG_NF_CONNTRACK_BRIDGE=m
+# CONFIG_IP_DCCP is not set
+CONFIG_IP_SCTP=m
+# CONFIG_SCTP_DBG_OBJCNT is not set
+# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set
+CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y
+# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set
+CONFIG_SCTP_COOKIE_HMAC_MD5=y
+CONFIG_SCTP_COOKIE_HMAC_SHA1=y
+CONFIG_INET_SCTP_DIAG=m
+# CONFIG_RDS is not set
+# CONFIG_TIPC is not set
+# CONFIG_ATM is not set
+CONFIG_L2TP=m
+CONFIG_L2TP_V3=y
+CONFIG_L2TP_IP=m
+CONFIG_L2TP_ETH=m
+CONFIG_STP=m
+CONFIG_GARP=m
+CONFIG_MRP=m
+CONFIG_BRIDGE=m
+CONFIG_BRIDGE_IGMP_SNOOPING=y
+CONFIG_BRIDGE_VLAN_FILTERING=y
+# CONFIG_BRIDGE_MRP is not set
+# CONFIG_BRIDGE_CFM is not set
+# CONFIG_NET_DSA is not set
+CONFIG_VLAN_8021Q=m
+CONFIG_VLAN_8021Q_GVRP=y
+CONFIG_VLAN_8021Q_MVRP=y
+CONFIG_LLC=m
+# CONFIG_LLC2 is not set
+# CONFIG_ATALK is not set
+# CONFIG_X25 is not set
+# CONFIG_LAPB is not set
+# CONFIG_PHONET is not set
+# CONFIG_6LOWPAN is not set
+# CONFIG_IEEE802154 is not set
+CONFIG_NET_SCHED=y
+
+#
+# Queueing/Scheduling
+#
+CONFIG_NET_SCH_HTB=m
+CONFIG_NET_SCH_HFSC=m
+CONFIG_NET_SCH_PRIO=m
+CONFIG_NET_SCH_MULTIQ=m
+# CONFIG_NET_SCH_RED is not set
+CONFIG_NET_SCH_SFB=m
+CONFIG_NET_SCH_SFQ=m
+CONFIG_NET_SCH_TEQL=m
+CONFIG_NET_SCH_TBF=m
+# CONFIG_NET_SCH_CBS is not set
+# CONFIG_NET_SCH_ETF is not set
+CONFIG_NET_SCH_MQPRIO_LIB=m
+# CONFIG_NET_SCH_TAPRIO is not set
+# CONFIG_NET_SCH_GRED is not set
+CONFIG_NET_SCH_NETEM=m
+# CONFIG_NET_SCH_DRR is not set
+CONFIG_NET_SCH_MQPRIO=m
+# CONFIG_NET_SCH_SKBPRIO is not set
+CONFIG_NET_SCH_CHOKE=m
+CONFIG_NET_SCH_QFQ=m
+CONFIG_NET_SCH_CODEL=m
+CONFIG_NET_SCH_FQ_CODEL=m
+# CONFIG_NET_SCH_CAKE is not set
+CONFIG_NET_SCH_FQ=m
+CONFIG_NET_SCH_HHF=m
+CONFIG_NET_SCH_PIE=m
+CONFIG_NET_SCH_FQ_PIE=m
+CONFIG_NET_SCH_INGRESS=m
+CONFIG_NET_SCH_PLUG=m
+CONFIG_NET_SCH_ETS=m
+# CONFIG_NET_SCH_DEFAULT is not set
+
+#
+# Classification
+#
+CONFIG_NET_CLS=y
+CONFIG_NET_CLS_BASIC=m
+CONFIG_NET_CLS_ROUTE4=m
+CONFIG_NET_CLS_FW=m
+CONFIG_NET_CLS_U32=m
+# CONFIG_CLS_U32_PERF is not set
+CONFIG_CLS_U32_MARK=y
+CONFIG_NET_CLS_FLOW=m
+# CONFIG_NET_CLS_CGROUP is not set
+# CONFIG_NET_CLS_BPF is not set
+CONFIG_NET_CLS_FLOWER=m
+# CONFIG_NET_CLS_MATCHALL is not set
+# CONFIG_NET_EMATCH is not set
+CONFIG_NET_CLS_ACT=y
+CONFIG_NET_ACT_POLICE=y
+CONFIG_NET_ACT_GACT=y
+# CONFIG_GACT_PROB is not set
+CONFIG_NET_ACT_MIRRED=m
+CONFIG_NET_ACT_SAMPLE=m
+CONFIG_NET_ACT_NAT=m
+# CONFIG_NET_ACT_PEDIT is not set
+# CONFIG_NET_ACT_SIMP is not set
+# CONFIG_NET_ACT_SKBEDIT is not set
+# CONFIG_NET_ACT_CSUM is not set
+# CONFIG_NET_ACT_MPLS is not set
+# CONFIG_NET_ACT_VLAN is not set
+# CONFIG_NET_ACT_BPF is not set
+CONFIG_NET_ACT_CONNMARK=m
+# CONFIG_NET_ACT_CTINFO is not set
+CONFIG_NET_ACT_SKBMOD=m
+CONFIG_NET_ACT_IFE=m
+CONFIG_NET_ACT_TUNNEL_KEY=m
+# CONFIG_NET_ACT_CT is not set
+# CONFIG_NET_ACT_GATE is not set
+CONFIG_NET_IFE_SKBMARK=m
+CONFIG_NET_IFE_SKBPRIO=m
+CONFIG_NET_IFE_SKBTCINDEX=m
+# CONFIG_NET_TC_SKB_EXT is not set
+CONFIG_NET_SCH_FIFO=y
+# CONFIG_DCB is not set
+CONFIG_DNS_RESOLVER=m
+# CONFIG_BATMAN_ADV is not set
+# CONFIG_OPENVSWITCH is not set
+# CONFIG_VSOCKETS is not set
+CONFIG_NETLINK_DIAG=m
+CONFIG_MPLS=y
+CONFIG_NET_MPLS_GSO=m
+CONFIG_MPLS_ROUTING=m
+# CONFIG_MPLS_IPTUNNEL is not set
+CONFIG_NET_NSH=m
+CONFIG_HSR=m
+# CONFIG_NET_SWITCHDEV is not set
+# CONFIG_NET_L3_MASTER_DEV is not set
+# CONFIG_QRTR is not set
+# CONFIG_NET_NCSI is not set
+CONFIG_PCPU_DEV_REFCNT=y
+CONFIG_MAX_SKB_FRAGS=17
+CONFIG_RPS=y
+CONFIG_RFS_ACCEL=y
+CONFIG_SOCK_RX_QUEUE_MAPPING=y
+CONFIG_XPS=y
+CONFIG_CGROUP_NET_PRIO=y
+CONFIG_CGROUP_NET_CLASSID=y
+CONFIG_NET_RX_BUSY_POLL=y
+CONFIG_BQL=y
+CONFIG_NET_FLOW_LIMIT=y
+
+#
+# Network testing
+#
+# CONFIG_NET_PKTGEN is not set
+# end of Network testing
+# end of Networking options
+
+CONFIG_HAMRADIO=y
+
+#
+# Packet Radio protocols
+#
+CONFIG_AX25=m
+CONFIG_AX25_DAMA_SLAVE=y
+CONFIG_NETROM=m
+CONFIG_ROSE=m
+
+#
+# AX.25 network device drivers
+#
+CONFIG_MKISS=m
+CONFIG_6PACK=m
+CONFIG_BPQETHER=m
+CONFIG_BAYCOM_SER_FDX=m
+CONFIG_BAYCOM_SER_HDX=m
+CONFIG_YAM=m
+# end of AX.25 network device drivers
+
+CONFIG_CAN=m
+CONFIG_CAN_RAW=m
+CONFIG_CAN_BCM=m
+CONFIG_CAN_GW=m
+# CONFIG_CAN_J1939 is not set
+# CONFIG_CAN_ISOTP is not set
+CONFIG_BT=m
+CONFIG_BT_BREDR=y
+# CONFIG_BT_RFCOMM is not set
+# CONFIG_BT_BNEP is not set
+# CONFIG_BT_HIDP is not set
+CONFIG_BT_LE=y
+CONFIG_BT_LE_L2CAP_ECRED=y
+# CONFIG_BT_LEDS is not set
+# CONFIG_BT_MSFTEXT is not set
+# CONFIG_BT_AOSPEXT is not set
+# CONFIG_BT_FEATURE_DEBUG is not set
+
+#
+# Bluetooth device drivers
+#
+# CONFIG_BT_HCIBTUSB is not set
+# CONFIG_BT_HCIBTSDIO is not set
+# CONFIG_BT_HCIUART is not set
+# CONFIG_BT_HCIBCM203X is not set
+# CONFIG_BT_HCIBPA10X is not set
+# CONFIG_BT_HCIBFUSB is not set
+# CONFIG_BT_HCIVHCI is not set
+CONFIG_BT_MRVL=m
+CONFIG_BT_MRVL_SDIO=m
+# CONFIG_BT_MTKSDIO is not set
+# CONFIG_BT_VIRTIO is not set
+# end of Bluetooth device drivers
+
+# CONFIG_AF_RXRPC is not set
+# CONFIG_AF_KCM is not set
+CONFIG_STREAM_PARSER=y
+# CONFIG_MCTP is not set
+CONFIG_FIB_RULES=y
+CONFIG_WIRELESS=y
+CONFIG_WEXT_CORE=y
+CONFIG_WEXT_PROC=y
+CONFIG_CFG80211=m
+# CONFIG_NL80211_TESTMODE is not set
+# CONFIG_CFG80211_DEVELOPER_WARNINGS is not set
+CONFIG_CFG80211_REQUIRE_SIGNED_REGDB=y
+CONFIG_CFG80211_USE_KERNEL_REGDB_KEYS=y
+CONFIG_CFG80211_DEFAULT_PS=y
+CONFIG_CFG80211_CRDA_SUPPORT=y
+CONFIG_CFG80211_WEXT=y
+CONFIG_MAC80211=m
+CONFIG_MAC80211_HAS_RC=y
+CONFIG_MAC80211_RC_MINSTREL=y
+CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y
+CONFIG_MAC80211_RC_DEFAULT="minstrel_ht"
+CONFIG_MAC80211_MESH=y
+CONFIG_MAC80211_LEDS=y
+# CONFIG_MAC80211_MESSAGE_TRACING is not set
+# CONFIG_MAC80211_DEBUG_MENU is not set
+CONFIG_MAC80211_STA_HASH_MAX_SIZE=0
+CONFIG_RFKILL=m
+CONFIG_RFKILL_LEDS=y
+CONFIG_RFKILL_INPUT=y
+CONFIG_RFKILL_GPIO=m
+# CONFIG_NET_9P is not set
+# CONFIG_CAIF is not set
+# CONFIG_CEPH_LIB is not set
+# CONFIG_NFC is not set
+CONFIG_PSAMPLE=m
+CONFIG_NET_IFE=m
+CONFIG_LWTUNNEL=y
+# CONFIG_LWTUNNEL_BPF is not set
+CONFIG_DST_CACHE=y
+CONFIG_GRO_CELLS=y
+CONFIG_NET_SELFTESTS=y
+CONFIG_NET_SOCK_MSG=y
+CONFIG_PAGE_POOL=y
+CONFIG_PAGE_POOL_STATS=y
+CONFIG_FAILOVER=m
+CONFIG_ETHTOOL_NETLINK=y
+
+#
+# Device Drivers
+#
+CONFIG_ARM_AMBA=y
+CONFIG_HAVE_PCI=y
+# CONFIG_PCI is not set
+# CONFIG_PCCARD is not set
+
+#
+# Generic Driver Options
+#
+CONFIG_UEVENT_HELPER=y
+CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
+CONFIG_DEVTMPFS=y
+CONFIG_DEVTMPFS_MOUNT=y
+# CONFIG_DEVTMPFS_SAFE is not set
+CONFIG_STANDALONE=y
+CONFIG_PREVENT_FIRMWARE_BUILD=y
+
+#
+# Firmware loader
+#
+CONFIG_FW_LOADER=y
+CONFIG_EXTRA_FIRMWARE=""
+# CONFIG_FW_LOADER_USER_HELPER is not set
+# CONFIG_FW_LOADER_COMPRESS is not set
+CONFIG_FW_CACHE=y
+# CONFIG_FW_UPLOAD is not set
+# end of Firmware loader
+
+CONFIG_WANT_DEV_COREDUMP=y
+CONFIG_ALLOW_DEV_COREDUMP=y
+CONFIG_DEV_COREDUMP=y
+# CONFIG_TEST_ASYNC_DRIVER_PROBE is not set
+CONFIG_GENERIC_CPU_DEVICES=y
+CONFIG_GENERIC_CPU_AUTOPROBE=y
+CONFIG_GENERIC_CPU_VULNERABILITIES=y
+CONFIG_SOC_BUS=y
+CONFIG_REGMAP=y
+CONFIG_REGMAP_I2C=y
+CONFIG_REGMAP_SPI=m
+CONFIG_REGMAP_MMIO=y
+CONFIG_REGMAP_IRQ=y
+CONFIG_DMA_SHARED_BUFFER=y
+# CONFIG_DMA_FENCE_TRACE is not set
+CONFIG_GENERIC_ARCH_TOPOLOGY=y
+# CONFIG_FW_DEVLINK_SYNC_STATE_TIMEOUT is not set
+# end of Generic Driver Options
+
+#
+# Bus devices
+#
+# CONFIG_MOXTET is not set
+# CONFIG_VEXPRESS_CONFIG is not set
+# CONFIG_MHI_BUS is not set
+# CONFIG_MHI_BUS_EP is not set
+# end of Bus devices
+
+#
+# Cache Drivers
+#
+# end of Cache Drivers
+
+CONFIG_CONNECTOR=m
+
+#
+# Firmware Drivers
+#
+
+#
+# ARM System Control and Management Interface Protocol
+#
+CONFIG_ARM_SCMI_PROTOCOL=m
+CONFIG_ARM_SCMI_HAVE_TRANSPORT=y
+CONFIG_ARM_SCMI_HAVE_SHMEM=y
+CONFIG_ARM_SCMI_TRANSPORT_MAILBOX=y
+CONFIG_ARM_SCMI_TRANSPORT_SMC=y
+# CONFIG_ARM_SCMI_TRANSPORT_SMC_ATOMIC_ENABLE is not set
+# CONFIG_ARM_SCMI_TRANSPORT_VIRTIO is not set
+# CONFIG_ARM_SCMI_POWER_CONTROL is not set
+# end of ARM System Control and Management Interface Protocol
+
+CONFIG_ARM_SCPI_PROTOCOL=m
+CONFIG_DMIID=y
+CONFIG_DMI_SYSFS=m
+CONFIG_SYSFB=y
+CONFIG_SYSFB_SIMPLEFB=y
+# CONFIG_ARM_FFA_TRANSPORT is not set
+# CONFIG_GOOGLE_FIRMWARE is not set
+
+#
+# EFI (Extensible Firmware Interface) Support
+#
+CONFIG_EFI_ESRT=y
+CONFIG_EFI_VARS_PSTORE=m
+# CONFIG_EFI_VARS_PSTORE_DEFAULT_DISABLE is not set
+CONFIG_EFI_PARAMS_FROM_FDT=y
+CONFIG_EFI_RUNTIME_WRAPPERS=y
+CONFIG_EFI_GENERIC_STUB=y
+# CONFIG_EFI_ZBOOT is not set
+CONFIG_EFI_ARMSTUB_DTB_LOADER=y
+CONFIG_EFI_BOOTLOADER_CONTROL=y
+# CONFIG_EFI_CAPSULE_LOADER is not set
+# CONFIG_EFI_TEST is not set
+# CONFIG_RESET_ATTACK_MITIGATION is not set
+# CONFIG_EFI_DISABLE_PCI_DMA is not set
+# CONFIG_EFI_DISABLE_RUNTIME is not set
+# CONFIG_EFI_COCO_SECRET is not set
+# end of EFI (Extensible Firmware Interface) Support
+
+CONFIG_ARM_PSCI_FW=y
+# CONFIG_ARM_PSCI_CHECKER is not set
+
+#
+# Qualcomm firmware drivers
+#
+# end of Qualcomm firmware drivers
+
+CONFIG_HAVE_ARM_SMCCC=y
+CONFIG_HAVE_ARM_SMCCC_DISCOVERY=y
+CONFIG_ARM_SMCCC_SOC_ID=y
+
+#
+# Tegra firmware driver
+#
+# end of Tegra firmware driver
+# end of Firmware Drivers
+
+# CONFIG_GNSS is not set
+# CONFIG_MTD is not set
+CONFIG_DTC=y
+CONFIG_OF=y
+# CONFIG_OF_UNITTEST is not set
+CONFIG_OF_FLATTREE=y
+CONFIG_OF_EARLY_FLATTREE=y
+CONFIG_OF_KOBJ=y
+CONFIG_OF_DYNAMIC=y
+CONFIG_OF_ADDRESS=y
+CONFIG_OF_IRQ=y
+CONFIG_OF_RESERVED_MEM=y
+CONFIG_OF_RESOLVE=y
+CONFIG_OF_OVERLAY=y
+# CONFIG_PARPORT is not set
+CONFIG_BLK_DEV=y
+# CONFIG_BLK_DEV_NULL_BLK is not set
+CONFIG_CDROM=m
+CONFIG_ZRAM=m
+# CONFIG_ZRAM_DEF_COMP_LZORLE is not set
+CONFIG_ZRAM_DEF_COMP_ZSTD=y
+# CONFIG_ZRAM_DEF_COMP_LZO is not set
+CONFIG_ZRAM_DEF_COMP="zstd"
+# CONFIG_ZRAM_WRITEBACK is not set
+# CONFIG_ZRAM_TRACK_ENTRY_ACTIME is not set
+# CONFIG_ZRAM_MULTI_COMP is not set
+CONFIG_BLK_DEV_LOOP=m
+CONFIG_BLK_DEV_LOOP_MIN_COUNT=0
+# CONFIG_BLK_DEV_DRBD is not set
+# CONFIG_BLK_DEV_NBD is not set
+# CONFIG_BLK_DEV_RAM is not set
+# CONFIG_CDROM_PKTCDVD is not set
+# CONFIG_ATA_OVER_ETH is not set
+CONFIG_VIRTIO_BLK=m
+# CONFIG_BLK_DEV_RBD is not set
+# CONFIG_BLK_DEV_UBLK is not set
+
+#
+# NVME Support
+#
+# CONFIG_NVME_FC is not set
+# CONFIG_NVME_TCP is not set
+# CONFIG_NVME_TARGET is not set
+# end of NVME Support
+
+#
+# Misc devices
+#
+# CONFIG_AD525X_DPOT is not set
+# CONFIG_DUMMY_IRQ is not set
+# CONFIG_ICS932S401 is not set
+# CONFIG_ENCLOSURE_SERVICES is not set
+# CONFIG_HI6421V600_IRQ is not set
+# CONFIG_APDS9802ALS is not set
+# CONFIG_ISL29003 is not set
+# CONFIG_ISL29020 is not set
+# CONFIG_SENSORS_TSL2550 is not set
+# CONFIG_SENSORS_BH1770 is not set
+# CONFIG_SENSORS_APDS990X is not set
+# CONFIG_HMC6352 is not set
+# CONFIG_DS1682 is not set
+# CONFIG_LATTICE_ECP3_CONFIG is not set
+# CONFIG_SRAM is not set
+# CONFIG_XILINX_SDFEC is not set
+# CONFIG_HISI_HIKEY_USB is not set
+# CONFIG_OPEN_DICE is not set
+# CONFIG_VCPU_STALL_DETECTOR is not set
+# CONFIG_NSM is not set
+# CONFIG_C2PORT is not set
+
+#
+# EEPROM support
+#
+# CONFIG_EEPROM_AT24 is not set
+# CONFIG_EEPROM_AT25 is not set
+# CONFIG_EEPROM_MAX6875 is not set
+CONFIG_EEPROM_93CX6=m
+# CONFIG_EEPROM_93XX46 is not set
+# CONFIG_EEPROM_IDT_89HPESX is not set
+# CONFIG_EEPROM_EE1004 is not set
+# end of EEPROM support
+
+#
+# Texas Instruments shared transport line discipline
+#
+# CONFIG_TI_ST is not set
+# end of Texas Instruments shared transport line discipline
+
+# CONFIG_SENSORS_LIS3_SPI is not set
+# CONFIG_SENSORS_LIS3_I2C is not set
+# CONFIG_ALTERA_STAPL is not set
+# CONFIG_ECHO is not set
+# CONFIG_MISC_RTSX_USB is not set
+# CONFIG_UACCE is not set
+# CONFIG_PVPANIC is not set
+# end of Misc devices
+
+#
+# SCSI device support
+#
+CONFIG_SCSI_MOD=y
+# CONFIG_RAID_ATTRS is not set
+CONFIG_SCSI_COMMON=y
+CONFIG_SCSI=y
+CONFIG_SCSI_DMA=y
+CONFIG_SCSI_PROC_FS=y
+
+#
+# SCSI support type (disk, tape, CD-ROM)
+#
+CONFIG_BLK_DEV_SD=y
+# CONFIG_CHR_DEV_ST is not set
+CONFIG_BLK_DEV_SR=m
+# CONFIG_CHR_DEV_SG is not set
+CONFIG_BLK_DEV_BSG=y
+# CONFIG_CHR_DEV_SCH is not set
+# CONFIG_SCSI_CONSTANTS is not set
+# CONFIG_SCSI_LOGGING is not set
+CONFIG_SCSI_SCAN_ASYNC=y
+
+#
+# SCSI Transports
+#
+# CONFIG_SCSI_SPI_ATTRS is not set
+# CONFIG_SCSI_FC_ATTRS is not set
+# CONFIG_SCSI_ISCSI_ATTRS is not set
+# CONFIG_SCSI_SAS_ATTRS is not set
+# CONFIG_SCSI_SAS_LIBSAS is not set
+# CONFIG_SCSI_SRP_ATTRS is not set
+# end of SCSI Transports
+
+CONFIG_SCSI_LOWLEVEL=y
+# CONFIG_ISCSI_TCP is not set
+# CONFIG_ISCSI_BOOT_SYSFS is not set
+# CONFIG_SCSI_DEBUG is not set
+CONFIG_SCSI_VIRTIO=m
+# CONFIG_SCSI_DH is not set
+# end of SCSI device support
+
+# CONFIG_ATA is not set
+CONFIG_MD=y
+# CONFIG_BLK_DEV_MD is not set
+# CONFIG_MD_BITMAP_FILE is not set
+# CONFIG_BCACHE is not set
+CONFIG_BLK_DEV_DM_BUILTIN=y
+CONFIG_BLK_DEV_DM=m
+# CONFIG_DM_DEBUG is not set
+# CONFIG_DM_UNSTRIPED is not set
+CONFIG_DM_CRYPT=m
+# CONFIG_DM_SNAPSHOT is not set
+# CONFIG_DM_THIN_PROVISIONING is not set
+# CONFIG_DM_CACHE is not set
+# CONFIG_DM_WRITECACHE is not set
+# CONFIG_DM_EBS is not set
+# CONFIG_DM_ERA is not set
+# CONFIG_DM_CLONE is not set
+# CONFIG_DM_MIRROR is not set
+# CONFIG_DM_RAID is not set
+# CONFIG_DM_ZERO is not set
+# CONFIG_DM_MULTIPATH is not set
+# CONFIG_DM_DELAY is not set
+# CONFIG_DM_DUST is not set
+# CONFIG_DM_UEVENT is not set
+# CONFIG_DM_FLAKEY is not set
+# CONFIG_DM_VERITY is not set
+# CONFIG_DM_SWITCH is not set
+# CONFIG_DM_LOG_WRITES is not set
+# CONFIG_DM_INTEGRITY is not set
+# CONFIG_TARGET_CORE is not set
+CONFIG_NETDEVICES=y
+CONFIG_MII=m
+CONFIG_NET_CORE=y
+CONFIG_BONDING=m
+CONFIG_DUMMY=m
+CONFIG_WIREGUARD=m
+# CONFIG_WIREGUARD_DEBUG is not set
+CONFIG_EQUALIZER=m
+CONFIG_IFB=m
+# CONFIG_NET_TEAM is not set
+# CONFIG_MACVLAN is not set
+# CONFIG_IPVLAN is not set
+# CONFIG_VXLAN is not set
+# CONFIG_GENEVE is not set
+CONFIG_BAREUDP=m
+CONFIG_GTP=m
+CONFIG_AMT=m
+CONFIG_MACSEC=m
+# CONFIG_NETCONSOLE is not set
+CONFIG_TUN=m
+# CONFIG_TUN_VNET_CROSS_LE is not set
+CONFIG_VETH=m
+CONFIG_VIRTIO_NET=m
+CONFIG_NLMON=m
+# CONFIG_ETHERNET is not set
+CONFIG_PHYLINK=m
+CONFIG_PHYLIB=y
+CONFIG_SWPHY=y
+CONFIG_LED_TRIGGER_PHY=y
+CONFIG_PHYLIB_LEDS=y
+CONFIG_FIXED_PHY=y
+# CONFIG_SFP is not set
+
+#
+# MII PHY device drivers
+#
+# CONFIG_AMD_PHY is not set
+# CONFIG_ADIN_PHY is not set
+# CONFIG_ADIN1100_PHY is not set
+# CONFIG_AQUANTIA_PHY is not set
+CONFIG_AX88796B_PHY=m
+# CONFIG_BROADCOM_PHY is not set
+# CONFIG_BCM54140_PHY is not set
+# CONFIG_BCM7XXX_PHY is not set
+# CONFIG_BCM84881_PHY is not set
+# CONFIG_BCM87XX_PHY is not set
+# CONFIG_CICADA_PHY is not set
+# CONFIG_CORTINA_PHY is not set
+# CONFIG_DAVICOM_PHY is not set
+# CONFIG_ICPLUS_PHY is not set
+# CONFIG_LXT_PHY is not set
+# CONFIG_INTEL_XWAY_PHY is not set
+# CONFIG_LSI_ET1011C_PHY is not set
+# CONFIG_MARVELL_PHY is not set
+# CONFIG_MARVELL_10G_PHY is not set
+# CONFIG_MARVELL_88Q2XXX_PHY is not set
+# CONFIG_MARVELL_88X2222_PHY is not set
+# CONFIG_MAXLINEAR_GPHY is not set
+# CONFIG_MEDIATEK_GE_PHY is not set
+# CONFIG_MEDIATEK_GE_SOC_PHY is not set
+# CONFIG_MICREL_PHY is not set
+# CONFIG_MICROCHIP_T1S_PHY is not set
+CONFIG_MICROCHIP_PHY=m
+# CONFIG_MICROCHIP_T1_PHY is not set
+# CONFIG_MICROSEMI_PHY is not set
+# CONFIG_MOTORCOMM_PHY is not set
+# CONFIG_NATIONAL_PHY is not set
+# CONFIG_NXP_CBTX_PHY is not set
+# CONFIG_NXP_C45_TJA11XX_PHY is not set
+# CONFIG_NXP_TJA11XX_PHY is not set
+# CONFIG_NCN26000_PHY is not set
+CONFIG_AT803X_PHY=m
+CONFIG_QSEMI_PHY=m
+CONFIG_REALTEK_PHY=m
+# CONFIG_RENESAS_PHY is not set
+CONFIG_ROCKCHIP_PHY=y
+CONFIG_SMSC_PHY=m
+CONFIG_STE10XP=m
+# CONFIG_TERANETICS_PHY is not set
+# CONFIG_DP83822_PHY is not set
+# CONFIG_DP83TC811_PHY is not set
+# CONFIG_DP83848_PHY is not set
+# CONFIG_DP83867_PHY is not set
+# CONFIG_DP83869_PHY is not set
+# CONFIG_DP83TD510_PHY is not set
+# CONFIG_DP83TG720_PHY is not set
+# CONFIG_VITESSE_PHY is not set
+# CONFIG_XILINX_GMII2RGMII is not set
+# CONFIG_MICREL_KS8995MA is not set
+# CONFIG_PSE_CONTROLLER is not set
+CONFIG_CAN_DEV=m
+# CONFIG_CAN_VCAN is not set
+# CONFIG_CAN_VXCAN is not set
+# CONFIG_CAN_NETLINK is not set
+# CONFIG_CAN_DEBUG_DEVICES is not set
+CONFIG_MDIO_DEVICE=y
+CONFIG_MDIO_BUS=y
+CONFIG_FWNODE_MDIO=y
+CONFIG_OF_MDIO=y
+CONFIG_MDIO_DEVRES=y
+# CONFIG_MDIO_BITBANG is not set
+# CONFIG_MDIO_BCM_UNIMAC is not set
+# CONFIG_MDIO_HISI_FEMAC is not set
+# CONFIG_MDIO_MVUSB is not set
+# CONFIG_MDIO_MSCC_MIIM is not set
+# CONFIG_MDIO_OCTEON is not set
+# CONFIG_MDIO_IPQ4019 is not set
+# CONFIG_MDIO_IPQ8064 is not set
+
+#
+# MDIO Multiplexers
+#
+# CONFIG_MDIO_BUS_MUX_GPIO is not set
+# CONFIG_MDIO_BUS_MUX_MULTIPLEXER is not set
+# CONFIG_MDIO_BUS_MUX_MMIOREG is not set
+
+#
+# PCS device drivers
+#
+# end of PCS device drivers
+
+CONFIG_PPP=m
+CONFIG_PPP_BSDCOMP=m
+CONFIG_PPP_DEFLATE=m
+CONFIG_PPP_FILTER=y
+CONFIG_PPP_MPPE=m
+CONFIG_PPP_MULTILINK=y
+CONFIG_PPPOE=m
+# CONFIG_PPPOE_HASH_BITS_1 is not set
+# CONFIG_PPPOE_HASH_BITS_2 is not set
+CONFIG_PPPOE_HASH_BITS_4=y
+# CONFIG_PPPOE_HASH_BITS_8 is not set
+CONFIG_PPPOE_HASH_BITS=4
+CONFIG_PPTP=m
+CONFIG_PPPOL2TP=m
+CONFIG_PPP_ASYNC=m
+CONFIG_PPP_SYNC_TTY=m
+CONFIG_SLIP=m
+CONFIG_SLHC=m
+CONFIG_SLIP_COMPRESSED=y
+CONFIG_SLIP_SMART=y
+CONFIG_SLIP_MODE_SLIP6=y
+CONFIG_USB_NET_DRIVERS=m
+CONFIG_USB_CATC=m
+CONFIG_USB_KAWETH=m
+CONFIG_USB_PEGASUS=m
+CONFIG_USB_RTL8150=m
+CONFIG_USB_RTL8152=m
+CONFIG_USB_LAN78XX=m
+CONFIG_USB_USBNET=m
+CONFIG_USB_NET_AX8817X=m
+CONFIG_USB_NET_AX88179_178A=m
+CONFIG_USB_NET_CDCETHER=m
+CONFIG_USB_NET_CDC_EEM=m
+CONFIG_USB_NET_CDC_NCM=m
+CONFIG_USB_NET_HUAWEI_CDC_NCM=m
+CONFIG_USB_NET_CDC_MBIM=m
+CONFIG_USB_NET_DM9601=m
+CONFIG_USB_NET_SR9700=m
+CONFIG_USB_NET_SR9800=m
+CONFIG_USB_NET_SMSC75XX=m
+CONFIG_USB_NET_SMSC95XX=m
+CONFIG_USB_NET_GL620A=m
+CONFIG_USB_NET_NET1080=m
+CONFIG_USB_NET_PLUSB=m
+CONFIG_USB_NET_MCS7830=m
+CONFIG_USB_NET_RNDIS_HOST=m
+CONFIG_USB_NET_CDC_SUBSET_ENABLE=m
+CONFIG_USB_NET_CDC_SUBSET=m
+CONFIG_USB_ALI_M5632=y
+CONFIG_USB_AN2720=y
+CONFIG_USB_BELKIN=y
+CONFIG_USB_ARMLINUX=y
+CONFIG_USB_EPSON2888=y
+CONFIG_USB_KC2190=y
+CONFIG_USB_NET_ZAURUS=m
+CONFIG_USB_NET_CX82310_ETH=m
+CONFIG_USB_NET_KALMIA=m
+CONFIG_USB_NET_QMI_WWAN=m
+CONFIG_USB_HSO=m
+CONFIG_USB_NET_INT51X1=m
+CONFIG_USB_IPHETH=m
+CONFIG_USB_SIERRA_NET=m
+CONFIG_USB_VL600=m
+CONFIG_USB_NET_CH9200=m
+CONFIG_USB_NET_AQC111=m
+CONFIG_USB_RTL8153_ECM=m
+CONFIG_WLAN=y
+# CONFIG_WLAN_VENDOR_ADMTEK is not set
+# CONFIG_WLAN_VENDOR_ATH is not set
+# CONFIG_WLAN_VENDOR_ATMEL is not set
+# CONFIG_WLAN_VENDOR_BROADCOM is not set
+# CONFIG_WLAN_VENDOR_INTEL is not set
+# CONFIG_WLAN_VENDOR_INTERSIL is not set
+CONFIG_WLAN_VENDOR_MARVELL=y
+# CONFIG_LIBERTAS is not set
+# CONFIG_LIBERTAS_THINFIRM is not set
+CONFIG_MWIFIEX=m
+CONFIG_MWIFIEX_SDIO=m
+CONFIG_MWIFIEX_USB=m
+CONFIG_WLAN_VENDOR_MEDIATEK=y
+CONFIG_MT7601U=m
+# CONFIG_MT76x0U is not set
+# CONFIG_MT76x2U is not set
+# CONFIG_MT7663U is not set
+# CONFIG_MT7663S is not set
+# CONFIG_MT7921S is not set
+# CONFIG_MT7921U is not set
+# CONFIG_MT7925U is not set
+CONFIG_WLAN_VENDOR_MICROCHIP=y
+# CONFIG_WILC1000_SDIO is not set
+# CONFIG_WILC1000_SPI is not set
+# CONFIG_WLAN_VENDOR_PURELIFI is not set
+# CONFIG_WLAN_VENDOR_RALINK is not set
+# CONFIG_WLAN_VENDOR_REALTEK is not set
+# CONFIG_WLAN_VENDOR_RSI is not set
+# CONFIG_WLAN_VENDOR_SILABS is not set
+# CONFIG_WLAN_VENDOR_ST is not set
+# CONFIG_WLAN_VENDOR_TI is not set
+# CONFIG_WLAN_VENDOR_ZYDAS is not set
+# CONFIG_WLAN_VENDOR_QUANTENNA is not set
+CONFIG_MAC80211_HWSIM=m
+CONFIG_VIRT_WIFI=m
+# CONFIG_WAN is not set
+
+#
+# Wireless WAN
+#
+# CONFIG_WWAN is not set
+# end of Wireless WAN
+
+CONFIG_NET_FAILOVER=m
+# CONFIG_ISDN is not set
+
+#
+# Input device support
+#
+CONFIG_INPUT=y
+CONFIG_INPUT_LEDS=m
+CONFIG_INPUT_FF_MEMLESS=m
+CONFIG_INPUT_SPARSEKMAP=m
+CONFIG_INPUT_MATRIXKMAP=y
+CONFIG_INPUT_VIVALDIFMAP=y
+
+#
+# Userland interfaces
+#
+# CONFIG_INPUT_MOUSEDEV is not set
+CONFIG_INPUT_JOYDEV=m
+CONFIG_INPUT_EVDEV=y
+# CONFIG_INPUT_EVBUG is not set
+
+#
+# Input Device Drivers
+#
+CONFIG_INPUT_KEYBOARD=y
+# CONFIG_KEYBOARD_ADC is not set
+# CONFIG_KEYBOARD_ADP5588 is not set
+# CONFIG_KEYBOARD_ADP5589 is not set
+# CONFIG_KEYBOARD_ATKBD is not set
+# CONFIG_KEYBOARD_QT1050 is not set
+# CONFIG_KEYBOARD_QT1070 is not set
+# CONFIG_KEYBOARD_QT2160 is not set
+# CONFIG_KEYBOARD_DLINK_DIR685 is not set
+# CONFIG_KEYBOARD_LKKBD is not set
+CONFIG_KEYBOARD_GPIO=m
+# CONFIG_KEYBOARD_GPIO_POLLED is not set
+# CONFIG_KEYBOARD_TCA6416 is not set
+# CONFIG_KEYBOARD_TCA8418 is not set
+# CONFIG_KEYBOARD_MATRIX is not set
+# CONFIG_KEYBOARD_LM8323 is not set
+# CONFIG_KEYBOARD_LM8333 is not set
+# CONFIG_KEYBOARD_MAX7359 is not set
+# CONFIG_KEYBOARD_MCS is not set
+# CONFIG_KEYBOARD_MPR121 is not set
+# CONFIG_KEYBOARD_NEWTON is not set
+# CONFIG_KEYBOARD_OPENCORES is not set
+# CONFIG_KEYBOARD_PINEPHONE is not set
+# CONFIG_KEYBOARD_SAMSUNG is not set
+# CONFIG_KEYBOARD_STOWAWAY is not set
+# CONFIG_KEYBOARD_SUNKBD is not set
+# CONFIG_KEYBOARD_OMAP4 is not set
+# CONFIG_KEYBOARD_TM2_TOUCHKEY is not set
+# CONFIG_KEYBOARD_XTKBD is not set
+CONFIG_KEYBOARD_CROS_EC=y
+# CONFIG_KEYBOARD_CAP11XX is not set
+# CONFIG_KEYBOARD_BCM is not set
+# CONFIG_KEYBOARD_MT6779 is not set
+CONFIG_KEYBOARD_MTK_PMIC=m
+# CONFIG_KEYBOARD_CYPRESS_SF is not set
+CONFIG_INPUT_MOUSE=y
+# CONFIG_MOUSE_PS2 is not set
+# CONFIG_MOUSE_SERIAL is not set
+# CONFIG_MOUSE_APPLETOUCH is not set
+# CONFIG_MOUSE_BCM5974 is not set
+# CONFIG_MOUSE_CYAPA is not set
+CONFIG_MOUSE_ELAN_I2C=m
+CONFIG_MOUSE_ELAN_I2C_I2C=y
+CONFIG_MOUSE_ELAN_I2C_SMBUS=y
+# CONFIG_MOUSE_VSXXXAA is not set
+# CONFIG_MOUSE_GPIO is not set
+CONFIG_MOUSE_SYNAPTICS_I2C=m
+CONFIG_MOUSE_SYNAPTICS_USB=m
+CONFIG_INPUT_JOYSTICK=y
+# CONFIG_JOYSTICK_ANALOG is not set
+# CONFIG_JOYSTICK_A3D is not set
+# CONFIG_JOYSTICK_ADC is not set
+# CONFIG_JOYSTICK_ADI is not set
+# CONFIG_JOYSTICK_COBRA is not set
+# CONFIG_JOYSTICK_GF2K is not set
+# CONFIG_JOYSTICK_GRIP is not set
+# CONFIG_JOYSTICK_GRIP_MP is not set
+# CONFIG_JOYSTICK_GUILLEMOT is not set
+# CONFIG_JOYSTICK_INTERACT is not set
+# CONFIG_JOYSTICK_SIDEWINDER is not set
+# CONFIG_JOYSTICK_TMDC is not set
+CONFIG_JOYSTICK_IFORCE=m
+CONFIG_JOYSTICK_IFORCE_USB=m
+# CONFIG_JOYSTICK_IFORCE_232 is not set
+# CONFIG_JOYSTICK_WARRIOR is not set
+# CONFIG_JOYSTICK_MAGELLAN is not set
+# CONFIG_JOYSTICK_SPACEORB is not set
+# CONFIG_JOYSTICK_SPACEBALL is not set
+# CONFIG_JOYSTICK_STINGER is not set
+# CONFIG_JOYSTICK_TWIDJOY is not set
+# CONFIG_JOYSTICK_ZHENHUA is not set
+# CONFIG_JOYSTICK_AS5011 is not set
+# CONFIG_JOYSTICK_JOYDUMP is not set
+CONFIG_JOYSTICK_XPAD=m
+CONFIG_JOYSTICK_XPAD_FF=y
+CONFIG_JOYSTICK_XPAD_LEDS=y
+# CONFIG_JOYSTICK_PSXPAD_SPI is not set
+# CONFIG_JOYSTICK_PXRC is not set
+# CONFIG_JOYSTICK_QWIIC is not set
+# CONFIG_JOYSTICK_FSIA6B is not set
+# CONFIG_JOYSTICK_SENSEHAT is not set
+# CONFIG_JOYSTICK_SEESAW is not set
+# CONFIG_INPUT_TABLET is not set
+CONFIG_INPUT_TOUCHSCREEN=y
+# CONFIG_TOUCHSCREEN_ADS7846 is not set
+# CONFIG_TOUCHSCREEN_AD7877 is not set
+# CONFIG_TOUCHSCREEN_AD7879 is not set
+# CONFIG_TOUCHSCREEN_ADC is not set
+# CONFIG_TOUCHSCREEN_AR1021_I2C is not set
+CONFIG_TOUCHSCREEN_ATMEL_MXT=m
+# CONFIG_TOUCHSCREEN_ATMEL_MXT_T37 is not set
+# CONFIG_TOUCHSCREEN_AUO_PIXCIR is not set
+# CONFIG_TOUCHSCREEN_BU21013 is not set
+# CONFIG_TOUCHSCREEN_BU21029 is not set
+# CONFIG_TOUCHSCREEN_CHIPONE_ICN8318 is not set
+# CONFIG_TOUCHSCREEN_CY8CTMA140 is not set
+# CONFIG_TOUCHSCREEN_CY8CTMG110 is not set
+# CONFIG_TOUCHSCREEN_CYTTSP_CORE is not set
+# CONFIG_TOUCHSCREEN_CYTTSP4_CORE is not set
+# CONFIG_TOUCHSCREEN_CYTTSP5 is not set
+# CONFIG_TOUCHSCREEN_DYNAPRO is not set
+# CONFIG_TOUCHSCREEN_HAMPSHIRE is not set
+# CONFIG_TOUCHSCREEN_EETI is not set
+# CONFIG_TOUCHSCREEN_EGALAX is not set
+# CONFIG_TOUCHSCREEN_EGALAX_SERIAL is not set
+# CONFIG_TOUCHSCREEN_EXC3000 is not set
+# CONFIG_TOUCHSCREEN_FUJITSU is not set
+# CONFIG_TOUCHSCREEN_GOODIX is not set
+# CONFIG_TOUCHSCREEN_HIDEEP is not set
+# CONFIG_TOUCHSCREEN_HYCON_HY46XX is not set
+# CONFIG_TOUCHSCREEN_HYNITRON_CSTXXX is not set
+# CONFIG_TOUCHSCREEN_ILI210X is not set
+# CONFIG_TOUCHSCREEN_ILITEK is not set
+# CONFIG_TOUCHSCREEN_S6SY761 is not set
+# CONFIG_TOUCHSCREEN_GUNZE is not set
+# CONFIG_TOUCHSCREEN_EKTF2127 is not set
+CONFIG_TOUCHSCREEN_ELAN=m
+# CONFIG_TOUCHSCREEN_ELO is not set
+# CONFIG_TOUCHSCREEN_WACOM_W8001 is not set
+# CONFIG_TOUCHSCREEN_WACOM_I2C is not set
+# CONFIG_TOUCHSCREEN_MAX11801 is not set
+# CONFIG_TOUCHSCREEN_MCS5000 is not set
+# CONFIG_TOUCHSCREEN_MMS114 is not set
+CONFIG_TOUCHSCREEN_MELFAS_MIP4=m
+# CONFIG_TOUCHSCREEN_MSG2638 is not set
+# CONFIG_TOUCHSCREEN_MTOUCH is not set
+# CONFIG_TOUCHSCREEN_NOVATEK_NVT_TS is not set
+# CONFIG_TOUCHSCREEN_IMAGIS is not set
+# CONFIG_TOUCHSCREEN_IMX6UL_TSC is not set
+# CONFIG_TOUCHSCREEN_INEXIO is not set
+# CONFIG_TOUCHSCREEN_PENMOUNT is not set
+# CONFIG_TOUCHSCREEN_EDT_FT5X06 is not set
+# CONFIG_TOUCHSCREEN_TOUCHRIGHT is not set
+# CONFIG_TOUCHSCREEN_TOUCHWIN is not set
+# CONFIG_TOUCHSCREEN_PIXCIR is not set
+# CONFIG_TOUCHSCREEN_WDT87XX_I2C is not set
+# CONFIG_TOUCHSCREEN_USB_COMPOSITE is not set
+# CONFIG_TOUCHSCREEN_TOUCHIT213 is not set
+# CONFIG_TOUCHSCREEN_TSC_SERIO is not set
+# CONFIG_TOUCHSCREEN_TSC2004 is not set
+# CONFIG_TOUCHSCREEN_TSC2005 is not set
+# CONFIG_TOUCHSCREEN_TSC2007 is not set
+# CONFIG_TOUCHSCREEN_RM_TS is not set
+# CONFIG_TOUCHSCREEN_SILEAD is not set
+# CONFIG_TOUCHSCREEN_SIS_I2C is not set
+# CONFIG_TOUCHSCREEN_ST1232 is not set
+# CONFIG_TOUCHSCREEN_STMFTS is not set
+# CONFIG_TOUCHSCREEN_SUR40 is not set
+# CONFIG_TOUCHSCREEN_SURFACE3_SPI is not set
+# CONFIG_TOUCHSCREEN_SX8654 is not set
+# CONFIG_TOUCHSCREEN_TPS6507X is not set
+# CONFIG_TOUCHSCREEN_ZET6223 is not set
+# CONFIG_TOUCHSCREEN_ZFORCE is not set
+# CONFIG_TOUCHSCREEN_COLIBRI_VF50 is not set
+# CONFIG_TOUCHSCREEN_ROHM_BU21023 is not set
+# CONFIG_TOUCHSCREEN_IQS5XX is not set
+# CONFIG_TOUCHSCREEN_IQS7211 is not set
+# CONFIG_TOUCHSCREEN_ZINITIX is not set
+# CONFIG_TOUCHSCREEN_HIMAX_HX83112B is not set
+CONFIG_INPUT_MISC=y
+# CONFIG_INPUT_AD714X is not set
+# CONFIG_INPUT_ATMEL_CAPTOUCH is not set
+# CONFIG_INPUT_BMA150 is not set
+# CONFIG_INPUT_E3X0_BUTTON is not set
+# CONFIG_INPUT_MMA8450 is not set
+# CONFIG_INPUT_GPIO_BEEPER is not set
+# CONFIG_INPUT_GPIO_DECODER is not set
+# CONFIG_INPUT_GPIO_VIBRA is not set
+# CONFIG_INPUT_ATI_REMOTE2 is not set
+# CONFIG_INPUT_KEYSPAN_REMOTE is not set
+# CONFIG_INPUT_KXTJ9 is not set
+# CONFIG_INPUT_POWERMATE is not set
+# CONFIG_INPUT_YEALINK is not set
+# CONFIG_INPUT_CM109 is not set
+# CONFIG_INPUT_REGULATOR_HAPTIC is not set
+CONFIG_INPUT_UINPUT=m
+# CONFIG_INPUT_PALMAS_PWRBUTTON is not set
+# CONFIG_INPUT_PCF8574 is not set
+# CONFIG_INPUT_PWM_BEEPER is not set
+# CONFIG_INPUT_PWM_VIBRA is not set
+# CONFIG_INPUT_GPIO_ROTARY_ENCODER is not set
+# CONFIG_INPUT_DA7280_HAPTICS is not set
+# CONFIG_INPUT_ADXL34X is not set
+# CONFIG_INPUT_IMS_PCU is not set
+# CONFIG_INPUT_IQS269A is not set
+# CONFIG_INPUT_IQS626A is not set
+# CONFIG_INPUT_IQS7222 is not set
+# CONFIG_INPUT_CMA3000 is not set
+# CONFIG_INPUT_DRV260X_HAPTICS is not set
+# CONFIG_INPUT_DRV2665_HAPTICS is not set
+# CONFIG_INPUT_DRV2667_HAPTICS is not set
+CONFIG_RMI4_CORE=y
+# CONFIG_RMI4_I2C is not set
+# CONFIG_RMI4_SPI is not set
+# CONFIG_RMI4_SMB is not set
+CONFIG_RMI4_F03=y
+CONFIG_RMI4_F03_SERIO=y
+CONFIG_RMI4_2D_SENSOR=y
+CONFIG_RMI4_F11=y
+CONFIG_RMI4_F12=y
+CONFIG_RMI4_F30=y
+# CONFIG_RMI4_F34 is not set
+# CONFIG_RMI4_F3A is not set
+# CONFIG_RMI4_F55 is not set
+
+#
+# Hardware I/O ports
+#
+CONFIG_SERIO=y
+CONFIG_SERIO_SERPORT=m
+# CONFIG_SERIO_AMBAKMI is not set
+# CONFIG_SERIO_LIBPS2 is not set
+CONFIG_SERIO_RAW=m
+# CONFIG_SERIO_ALTERA_PS2 is not set
+# CONFIG_SERIO_PS2MULT is not set
+# CONFIG_SERIO_ARC_PS2 is not set
+# CONFIG_SERIO_APBPS2 is not set
+# CONFIG_SERIO_GPIO_PS2 is not set
+# CONFIG_USERIO is not set
+# CONFIG_GAMEPORT is not set
+# end of Hardware I/O ports
+# end of Input device support
+
+#
+# Character devices
+#
+CONFIG_TTY=y
+CONFIG_VT=y
+CONFIG_CONSOLE_TRANSLATIONS=y
+CONFIG_VT_CONSOLE=y
+CONFIG_VT_CONSOLE_SLEEP=y
+CONFIG_HW_CONSOLE=y
+CONFIG_VT_HW_CONSOLE_BINDING=y
+CONFIG_UNIX98_PTYS=y
+# CONFIG_LEGACY_PTYS is not set
+# CONFIG_LEGACY_TIOCSTI is not set
+CONFIG_LDISC_AUTOLOAD=y
+
+#
+# Serial drivers
+#
+CONFIG_SERIAL_8250=y
+CONFIG_SERIAL_8250_DEPRECATED_OPTIONS=y
+CONFIG_SERIAL_8250_16550A_VARIANTS=y
+# CONFIG_SERIAL_8250_FINTEK is not set
+# CONFIG_SERIAL_8250_CONSOLE is not set
+CONFIG_SERIAL_8250_DMA=y
+CONFIG_SERIAL_8250_NR_UARTS=4
+CONFIG_SERIAL_8250_RUNTIME_UARTS=4
+# CONFIG_SERIAL_8250_EXTENDED is not set
+CONFIG_SERIAL_8250_FSL=y
+# CONFIG_SERIAL_8250_DW is not set
+# CONFIG_SERIAL_8250_RT288X is not set
+CONFIG_SERIAL_8250_MT6577=y
+CONFIG_SERIAL_OF_PLATFORM=y
+
+#
+# Non-8250 serial port support
+#
+# CONFIG_SERIAL_AMBA_PL010 is not set
+# CONFIG_SERIAL_AMBA_PL011 is not set
+# CONFIG_SERIAL_EARLYCON_SEMIHOST is not set
+# CONFIG_SERIAL_MAX3100 is not set
+# CONFIG_SERIAL_MAX310X is not set
+# CONFIG_SERIAL_UARTLITE is not set
+CONFIG_SERIAL_CORE=y
+# CONFIG_SERIAL_SIFIVE is not set
+# CONFIG_SERIAL_SCCNXP is not set
+# CONFIG_SERIAL_SC16IS7XX is not set
+# CONFIG_SERIAL_ALTERA_JTAGUART is not set
+# CONFIG_SERIAL_ALTERA_UART is not set
+# CONFIG_SERIAL_XILINX_PS_UART is not set
+# CONFIG_SERIAL_ARC is not set
+# CONFIG_SERIAL_FSL_LPUART is not set
+# CONFIG_SERIAL_FSL_LINFLEXUART is not set
+# CONFIG_SERIAL_CONEXANT_DIGICOLOR is not set
+# CONFIG_SERIAL_SPRD is not set
+# end of Serial drivers
+
+CONFIG_SERIAL_MCTRL_GPIO=y
+# CONFIG_SERIAL_NONSTANDARD is not set
+# CONFIG_N_GSM is not set
+# CONFIG_NULL_TTY is not set
+CONFIG_HVC_DRIVER=y
+# CONFIG_HVC_DCC is not set
+# CONFIG_SERIAL_DEV_BUS is not set
+CONFIG_VIRTIO_CONSOLE=m
+# CONFIG_IPMI_HANDLER is not set
+CONFIG_HW_RANDOM=m
+CONFIG_HW_RANDOM_TIMERIOMEM=m
+# CONFIG_HW_RANDOM_BA431 is not set
+CONFIG_HW_RANDOM_VIRTIO=m
+CONFIG_HW_RANDOM_MTK=m
+# CONFIG_HW_RANDOM_CCTRNG is not set
+# CONFIG_HW_RANDOM_XIPHERA is not set
+CONFIG_HW_RANDOM_ARM_SMCCC_TRNG=m
+CONFIG_DEVMEM=y
+CONFIG_DEVPORT=y
+# CONFIG_TCG_TPM is not set
+# CONFIG_XILLYBUS is not set
+# CONFIG_XILLYUSB is not set
+# end of Character devices
+
+#
+# I2C support
+#
+CONFIG_I2C=y
+CONFIG_I2C_BOARDINFO=y
+CONFIG_I2C_COMPAT=y
+CONFIG_I2C_CHARDEV=m
+CONFIG_I2C_MUX=y
+
+#
+# Multiplexer I2C Chip support
+#
+# CONFIG_I2C_ARB_GPIO_CHALLENGE is not set
+# CONFIG_I2C_MUX_GPIO is not set
+# CONFIG_I2C_MUX_GPMUX is not set
+# CONFIG_I2C_MUX_LTC4306 is not set
+# CONFIG_I2C_MUX_PCA9541 is not set
+# CONFIG_I2C_MUX_PCA954x is not set
+# CONFIG_I2C_MUX_PINCTRL is not set
+# CONFIG_I2C_MUX_REG is not set
+# CONFIG_I2C_DEMUX_PINCTRL is not set
+# CONFIG_I2C_MUX_MLXCPLD is not set
+# end of Multiplexer I2C Chip support
+
+CONFIG_I2C_HELPER_AUTO=y
+CONFIG_I2C_SMBUS=m
+
+#
+# I2C Hardware Bus support
+#
+
+#
+# I2C system bus drivers (mostly embedded / system-on-chip)
+#
+# CONFIG_I2C_CADENCE is not set
+# CONFIG_I2C_CBUS_GPIO is not set
+# CONFIG_I2C_DESIGNWARE_PLATFORM is not set
+# CONFIG_I2C_EMEV2 is not set
+# CONFIG_I2C_GPIO is not set
+# CONFIG_I2C_HISI is not set
+CONFIG_I2C_MT65XX=y
+# CONFIG_I2C_NOMADIK is not set
+# CONFIG_I2C_OCORES is not set
+# CONFIG_I2C_PCA_PLATFORM is not set
+# CONFIG_I2C_RK3X is not set
+# CONFIG_I2C_SIMTEC is not set
+# CONFIG_I2C_XILINX is not set
+
+#
+# External I2C/SMBus adapter drivers
+#
+# CONFIG_I2C_DIOLAN_U2C is not set
+# CONFIG_I2C_CP2615 is not set
+# CONFIG_I2C_ROBOTFUZZ_OSIF is not set
+# CONFIG_I2C_TAOS_EVM is not set
+CONFIG_I2C_TINY_USB=m
+
+#
+# Other I2C/SMBus bus drivers
+#
+CONFIG_I2C_CROS_EC_TUNNEL=y
+# CONFIG_I2C_VIRTIO is not set
+# end of I2C Hardware Bus support
+
+CONFIG_I2C_STUB=m
+# CONFIG_I2C_SLAVE is not set
+# CONFIG_I2C_DEBUG_CORE is not set
+# CONFIG_I2C_DEBUG_ALGO is not set
+# CONFIG_I2C_DEBUG_BUS is not set
+# end of I2C support
+
+# CONFIG_I3C is not set
+CONFIG_SPI=y
+CONFIG_SPI_MASTER=y
+CONFIG_SPI_MEM=y
+
+#
+# SPI Master Controller Drivers
+#
+# CONFIG_SPI_ALTERA is not set
+# CONFIG_SPI_AXI_SPI_ENGINE is not set
+CONFIG_SPI_BITBANG=y
+# CONFIG_SPI_CADENCE is not set
+# CONFIG_SPI_CADENCE_QUADSPI is not set
+# CONFIG_SPI_CADENCE_XSPI is not set
+# CONFIG_SPI_DESIGNWARE is not set
+CONFIG_SPI_GPIO=y
+# CONFIG_SPI_FSL_SPI is not set
+# CONFIG_SPI_MICROCHIP_CORE is not set
+# CONFIG_SPI_MICROCHIP_CORE_QSPI is not set
+CONFIG_SPI_MT65XX=y
+CONFIG_SPI_MTK_NOR=y
+# CONFIG_SPI_OC_TINY is not set
+# CONFIG_SPI_PL022 is not set
+# CONFIG_SPI_SC18IS602 is not set
+# CONFIG_SPI_SIFIVE is not set
+CONFIG_SPI_SLAVE_MT27XX=m
+# CONFIG_SPI_SN_F_OSPI is not set
+# CONFIG_SPI_MXIC is not set
+# CONFIG_SPI_XCOMM is not set
+# CONFIG_SPI_XILINX is not set
+# CONFIG_SPI_ZYNQMP_GQSPI is not set
+# CONFIG_SPI_AMD is not set
+
+#
+# SPI Multiplexer support
+#
+# CONFIG_SPI_MUX is not set
+
+#
+# SPI Protocol Masters
+#
+CONFIG_SPI_SPIDEV=y
+# CONFIG_SPI_LOOPBACK_TEST is not set
+# CONFIG_SPI_TLE62X0 is not set
+CONFIG_SPI_SLAVE=y
+CONFIG_SPI_SLAVE_TIME=m
+CONFIG_SPI_SLAVE_SYSTEM_CONTROL=m
+CONFIG_SPI_DYNAMIC=y
+CONFIG_SPMI=m
+# CONFIG_SPMI_HISI3670 is not set
+CONFIG_SPMI_MTK_PMIF=m
+# CONFIG_HSI is not set
+CONFIG_PPS=m
+# CONFIG_PPS_DEBUG is not set
+
+#
+# PPS clients support
+#
+CONFIG_PPS_CLIENT_KTIMER=m
+CONFIG_PPS_CLIENT_LDISC=m
+CONFIG_PPS_CLIENT_GPIO=m
+
+#
+# PPS generators support
+#
+
+#
+# PTP clock support
+#
+# CONFIG_PTP_1588_CLOCK is not set
+CONFIG_PTP_1588_CLOCK_OPTIONAL=y
+
+#
+# Enable PHYLIB and NETWORK_PHY_TIMESTAMPING to see the additional clocks.
+#
+# end of PTP clock support
+
+CONFIG_PINCTRL=y
+CONFIG_GENERIC_PINCTRL_GROUPS=y
+CONFIG_PINMUX=y
+CONFIG_GENERIC_PINMUX_FUNCTIONS=y
+CONFIG_PINCONF=y
+CONFIG_GENERIC_PINCONF=y
+# CONFIG_PINCTRL_AS3722 is not set
+# CONFIG_PINCTRL_CY8C95X0 is not set
+# CONFIG_PINCTRL_MCP23S08 is not set
+# CONFIG_PINCTRL_MICROCHIP_SGPIO is not set
+# CONFIG_PINCTRL_OCELOT is not set
+# CONFIG_PINCTRL_PALMAS is not set
+# CONFIG_PINCTRL_SINGLE is not set
+# CONFIG_PINCTRL_STMFX is not set
+# CONFIG_PINCTRL_SX150X is not set
+
+#
+# MediaTek pinctrl drivers
+#
+CONFIG_EINT_MTK=y
+CONFIG_PINCTRL_MTK=y
+CONFIG_PINCTRL_MTK_V2=y
+CONFIG_PINCTRL_MTK_MOORE=y
+CONFIG_PINCTRL_MTK_PARIS=y
+CONFIG_PINCTRL_MT2712=y
+CONFIG_PINCTRL_MT6765=y
+CONFIG_PINCTRL_MT6779=y
+CONFIG_PINCTRL_MT6795=y
+CONFIG_PINCTRL_MT6797=y
+CONFIG_PINCTRL_MT7622=y
+CONFIG_PINCTRL_MT7981=y
+CONFIG_PINCTRL_MT7986=y
+CONFIG_PINCTRL_MT8167=y
+CONFIG_PINCTRL_MT8173=y
+CONFIG_PINCTRL_MT8183=y
+CONFIG_PINCTRL_MT8186=y
+# CONFIG_PINCTRL_MT8188 is not set
+CONFIG_PINCTRL_MT8192=y
+# CONFIG_PINCTRL_MT8195 is not set
+CONFIG_PINCTRL_MT8365=y
+CONFIG_PINCTRL_MT8516=y
+CONFIG_PINCTRL_MT6397=y
+# end of MediaTek pinctrl drivers
+
+#
+# Renesas pinctrl drivers
+#
+# end of Renesas pinctrl drivers
+
+CONFIG_GPIOLIB=y
+CONFIG_GPIOLIB_FASTPATH_LIMIT=512
+CONFIG_OF_GPIO=y
+CONFIG_GPIO_CDEV=y
+CONFIG_GPIO_CDEV_V1=y
+
+#
+# Memory mapped GPIO drivers
+#
+# CONFIG_GPIO_74XX_MMIO is not set
+# CONFIG_GPIO_ALTERA is not set
+# CONFIG_GPIO_CADENCE is not set
+# CONFIG_GPIO_DWAPB is not set
+# CONFIG_GPIO_FTGPIO010 is not set
+# CONFIG_GPIO_GENERIC_PLATFORM is not set
+# CONFIG_GPIO_GRGPIO is not set
+# CONFIG_GPIO_HISI is not set
+# CONFIG_GPIO_HLWD is not set
+# CONFIG_GPIO_LOGICVC is not set
+# CONFIG_GPIO_MB86S7X is not set
+# CONFIG_GPIO_PL061 is not set
+# CONFIG_GPIO_SIFIVE is not set
+# CONFIG_GPIO_SYSCON is not set
+# CONFIG_GPIO_XGENE is not set
+# CONFIG_GPIO_XILINX is not set
+# CONFIG_GPIO_AMD_FCH is not set
+# end of Memory mapped GPIO drivers
+
+#
+# I2C GPIO expanders
+#
+# CONFIG_GPIO_ADNP is not set
+# CONFIG_GPIO_FXL6408 is not set
+# CONFIG_GPIO_DS4520 is not set
+# CONFIG_GPIO_GW_PLD is not set
+# CONFIG_GPIO_MAX7300 is not set
+# CONFIG_GPIO_MAX732X is not set
+# CONFIG_GPIO_PCA953X is not set
+# CONFIG_GPIO_PCA9570 is not set
+# CONFIG_GPIO_PCF857X is not set
+# CONFIG_GPIO_TPIC2810 is not set
+# end of I2C GPIO expanders
+
+#
+# MFD GPIO expanders
+#
+CONFIG_GPIO_PALMAS=y
+# CONFIG_GPIO_TPS6586X is not set
+# end of MFD GPIO expanders
+
+#
+# SPI GPIO expanders
+#
+# CONFIG_GPIO_74X164 is not set
+# CONFIG_GPIO_MAX3191X is not set
+# CONFIG_GPIO_MAX7301 is not set
+# CONFIG_GPIO_MC33880 is not set
+# CONFIG_GPIO_PISOSR is not set
+# CONFIG_GPIO_XRA1403 is not set
+# end of SPI GPIO expanders
+
+#
+# USB GPIO expanders
+#
+# end of USB GPIO expanders
+
+#
+# Virtual GPIO drivers
+#
+CONFIG_GPIO_AGGREGATOR=m
+# CONFIG_GPIO_LATCH is not set
+# CONFIG_GPIO_MOCKUP is not set
+# CONFIG_GPIO_VIRTIO is not set
+# CONFIG_GPIO_SIM is not set
+# end of Virtual GPIO drivers
+
+# CONFIG_W1 is not set
+CONFIG_POWER_RESET=y
+# CONFIG_POWER_RESET_AS3722 is not set
+# CONFIG_POWER_RESET_GPIO is not set
+# CONFIG_POWER_RESET_GPIO_RESTART is not set
+# CONFIG_POWER_RESET_LTC2952 is not set
+CONFIG_POWER_RESET_MT6323=y
+# CONFIG_POWER_RESET_REGULATOR is not set
+# CONFIG_POWER_RESET_RESTART is not set
+# CONFIG_POWER_RESET_XGENE is not set
+# CONFIG_POWER_RESET_SYSCON is not set
+# CONFIG_POWER_RESET_SYSCON_POWEROFF is not set
+# CONFIG_SYSCON_REBOOT_MODE is not set
+# CONFIG_NVMEM_REBOOT_MODE is not set
+CONFIG_POWER_SUPPLY=y
+# CONFIG_POWER_SUPPLY_DEBUG is not set
+# CONFIG_GENERIC_ADC_BATTERY is not set
+# CONFIG_IP5XXX_POWER is not set
+# CONFIG_TEST_POWER is not set
+# CONFIG_CHARGER_ADP5061 is not set
+# CONFIG_BATTERY_CW2015 is not set
+# CONFIG_BATTERY_DS2780 is not set
+# CONFIG_BATTERY_DS2781 is not set
+# CONFIG_BATTERY_DS2782 is not set
+# CONFIG_BATTERY_SAMSUNG_SDI is not set
+CONFIG_BATTERY_SBS=m
+CONFIG_CHARGER_SBS=m
+CONFIG_MANAGER_SBS=m
+# CONFIG_BATTERY_BQ27XXX is not set
+# CONFIG_BATTERY_MAX17040 is not set
+# CONFIG_BATTERY_MAX17042 is not set
+# CONFIG_CHARGER_ISP1704 is not set
+# CONFIG_CHARGER_MAX8903 is not set
+# CONFIG_CHARGER_LP8727 is not set
+# CONFIG_CHARGER_GPIO is not set
+# CONFIG_CHARGER_MANAGER is not set
+# CONFIG_CHARGER_LT3651 is not set
+# CONFIG_CHARGER_LTC4162L is not set
+# CONFIG_CHARGER_DETECTOR_MAX14656 is not set
+# CONFIG_CHARGER_MAX77976 is not set
+# CONFIG_CHARGER_MT6360 is not set
+# CONFIG_CHARGER_BQ2415X is not set
+# CONFIG_CHARGER_BQ24190 is not set
+# CONFIG_CHARGER_BQ24257 is not set
+# CONFIG_CHARGER_BQ24735 is not set
+# CONFIG_CHARGER_BQ2515X is not set
+# CONFIG_CHARGER_BQ25890 is not set
+# CONFIG_CHARGER_BQ25980 is not set
+# CONFIG_CHARGER_BQ256XX is not set
+# CONFIG_CHARGER_SMB347 is not set
+# CONFIG_CHARGER_TPS65090 is not set
+# CONFIG_BATTERY_GAUGE_LTC2941 is not set
+# CONFIG_BATTERY_GOLDFISH is not set
+# CONFIG_BATTERY_RT5033 is not set
+# CONFIG_CHARGER_RT9455 is not set
+# CONFIG_CHARGER_RT9467 is not set
+# CONFIG_CHARGER_RT9471 is not set
+CONFIG_CHARGER_CROS_USBPD=m
+CONFIG_CHARGER_CROS_PCHG=m
+# CONFIG_CHARGER_UCS1002 is not set
+# CONFIG_CHARGER_BD99954 is not set
+# CONFIG_BATTERY_UG3105 is not set
+# CONFIG_FUEL_GAUGE_MM8013 is not set
+CONFIG_HWMON=m
+# CONFIG_HWMON_DEBUG_CHIP is not set
+
+#
+# Native drivers
+#
+# CONFIG_SENSORS_AD7314 is not set
+# CONFIG_SENSORS_AD7414 is not set
+# CONFIG_SENSORS_AD7418 is not set
+# CONFIG_SENSORS_ADM1025 is not set
+# CONFIG_SENSORS_ADM1026 is not set
+# CONFIG_SENSORS_ADM1029 is not set
+# CONFIG_SENSORS_ADM1031 is not set
+# CONFIG_SENSORS_ADM1177 is not set
+# CONFIG_SENSORS_ADM9240 is not set
+# CONFIG_SENSORS_ADT7310 is not set
+# CONFIG_SENSORS_ADT7410 is not set
+# CONFIG_SENSORS_ADT7411 is not set
+# CONFIG_SENSORS_ADT7462 is not set
+# CONFIG_SENSORS_ADT7470 is not set
+# CONFIG_SENSORS_ADT7475 is not set
+# CONFIG_SENSORS_AHT10 is not set
+# CONFIG_SENSORS_AQUACOMPUTER_D5NEXT is not set
+# CONFIG_SENSORS_AS370 is not set
+# CONFIG_SENSORS_ASC7621 is not set
+# CONFIG_SENSORS_AXI_FAN_CONTROL is not set
+CONFIG_SENSORS_ARM_SCMI=m
+CONFIG_SENSORS_ARM_SCPI=m
+# CONFIG_SENSORS_ATXP1 is not set
+# CONFIG_SENSORS_CORSAIR_CPRO is not set
+# CONFIG_SENSORS_CORSAIR_PSU is not set
+# CONFIG_SENSORS_DS620 is not set
+# CONFIG_SENSORS_DS1621 is not set
+# CONFIG_SENSORS_F71805F is not set
+# CONFIG_SENSORS_F71882FG is not set
+# CONFIG_SENSORS_F75375S is not set
+# CONFIG_SENSORS_FTSTEUTATES is not set
+# CONFIG_SENSORS_GIGABYTE_WATERFORCE is not set
+# CONFIG_SENSORS_GL518SM is not set
+# CONFIG_SENSORS_GL520SM is not set
+# CONFIG_SENSORS_G760A is not set
+# CONFIG_SENSORS_G762 is not set
+# CONFIG_SENSORS_GPIO_FAN is not set
+# CONFIG_SENSORS_HIH6130 is not set
+# CONFIG_SENSORS_HS3001 is not set
+CONFIG_SENSORS_IIO_HWMON=m
+# CONFIG_SENSORS_IT87 is not set
+# CONFIG_SENSORS_JC42 is not set
+# CONFIG_SENSORS_POWERZ is not set
+# CONFIG_SENSORS_POWR1220 is not set
+# CONFIG_SENSORS_LINEAGE is not set
+# CONFIG_SENSORS_LTC2945 is not set
+# CONFIG_SENSORS_LTC2947_I2C is not set
+# CONFIG_SENSORS_LTC2947_SPI is not set
+# CONFIG_SENSORS_LTC2990 is not set
+# CONFIG_SENSORS_LTC2991 is not set
+# CONFIG_SENSORS_LTC2992 is not set
+# CONFIG_SENSORS_LTC4151 is not set
+# CONFIG_SENSORS_LTC4215 is not set
+# CONFIG_SENSORS_LTC4222 is not set
+# CONFIG_SENSORS_LTC4245 is not set
+# CONFIG_SENSORS_LTC4260 is not set
+# CONFIG_SENSORS_LTC4261 is not set
+# CONFIG_SENSORS_MAX1111 is not set
+# CONFIG_SENSORS_MAX127 is not set
+# CONFIG_SENSORS_MAX16065 is not set
+# CONFIG_SENSORS_MAX1619 is not set
+# CONFIG_SENSORS_MAX1668 is not set
+# CONFIG_SENSORS_MAX197 is not set
+# CONFIG_SENSORS_MAX31722 is not set
+# CONFIG_SENSORS_MAX31730 is not set
+# CONFIG_SENSORS_MAX31760 is not set
+# CONFIG_MAX31827 is not set
+# CONFIG_SENSORS_MAX6620 is not set
+# CONFIG_SENSORS_MAX6621 is not set
+# CONFIG_SENSORS_MAX6639 is not set
+# CONFIG_SENSORS_MAX6650 is not set
+# CONFIG_SENSORS_MAX6697 is not set
+# CONFIG_SENSORS_MAX31790 is not set
+# CONFIG_SENSORS_MC34VR500 is not set
+# CONFIG_SENSORS_MCP3021 is not set
+# CONFIG_SENSORS_TC654 is not set
+# CONFIG_SENSORS_TPS23861 is not set
+# CONFIG_SENSORS_MR75203 is not set
+# CONFIG_SENSORS_ADCXX is not set
+# CONFIG_SENSORS_LM63 is not set
+# CONFIG_SENSORS_LM70 is not set
+# CONFIG_SENSORS_LM73 is not set
+# CONFIG_SENSORS_LM75 is not set
+# CONFIG_SENSORS_LM77 is not set
+# CONFIG_SENSORS_LM78 is not set
+# CONFIG_SENSORS_LM80 is not set
+# CONFIG_SENSORS_LM83 is not set
+# CONFIG_SENSORS_LM85 is not set
+# CONFIG_SENSORS_LM87 is not set
+CONFIG_SENSORS_LM90=m
+# CONFIG_SENSORS_LM92 is not set
+# CONFIG_SENSORS_LM93 is not set
+# CONFIG_SENSORS_LM95234 is not set
+# CONFIG_SENSORS_LM95241 is not set
+# CONFIG_SENSORS_LM95245 is not set
+# CONFIG_SENSORS_PC87360 is not set
+# CONFIG_SENSORS_PC87427 is not set
+# CONFIG_SENSORS_NTC_THERMISTOR is not set
+# CONFIG_SENSORS_NCT6683 is not set
+# CONFIG_SENSORS_NCT6775 is not set
+# CONFIG_SENSORS_NCT6775_I2C is not set
+# CONFIG_SENSORS_NCT7802 is not set
+# CONFIG_SENSORS_NCT7904 is not set
+# CONFIG_SENSORS_NPCM7XX is not set
+# CONFIG_SENSORS_NZXT_KRAKEN2 is not set
+# CONFIG_SENSORS_NZXT_SMART2 is not set
+# CONFIG_SENSORS_OCC_P8_I2C is not set
+# CONFIG_SENSORS_PCF8591 is not set
+# CONFIG_PMBUS is not set
+# CONFIG_SENSORS_PWM_FAN is not set
+# CONFIG_SENSORS_SBTSI is not set
+# CONFIG_SENSORS_SBRMI is not set
+# CONFIG_SENSORS_SHT15 is not set
+# CONFIG_SENSORS_SHT21 is not set
+# CONFIG_SENSORS_SHT3x is not set
+# CONFIG_SENSORS_SHT4x is not set
+# CONFIG_SENSORS_SHTC1 is not set
+# CONFIG_SENSORS_DME1737 is not set
+# CONFIG_SENSORS_EMC1403 is not set
+# CONFIG_SENSORS_EMC2103 is not set
+# CONFIG_SENSORS_EMC2305 is not set
+# CONFIG_SENSORS_EMC6W201 is not set
+# CONFIG_SENSORS_SMSC47M1 is not set
+# CONFIG_SENSORS_SMSC47M192 is not set
+# CONFIG_SENSORS_SMSC47B397 is not set
+# CONFIG_SENSORS_SCH5627 is not set
+# CONFIG_SENSORS_SCH5636 is not set
+# CONFIG_SENSORS_STTS751 is not set
+# CONFIG_SENSORS_ADC128D818 is not set
+# CONFIG_SENSORS_ADS7828 is not set
+# CONFIG_SENSORS_ADS7871 is not set
+# CONFIG_SENSORS_AMC6821 is not set
+# CONFIG_SENSORS_INA209 is not set
+# CONFIG_SENSORS_INA2XX is not set
+# CONFIG_SENSORS_INA238 is not set
+# CONFIG_SENSORS_INA3221 is not set
+# CONFIG_SENSORS_TC74 is not set
+# CONFIG_SENSORS_THMC50 is not set
+# CONFIG_SENSORS_TMP102 is not set
+# CONFIG_SENSORS_TMP103 is not set
+# CONFIG_SENSORS_TMP108 is not set
+CONFIG_SENSORS_TMP401=m
+# CONFIG_SENSORS_TMP421 is not set
+# CONFIG_SENSORS_TMP464 is not set
+# CONFIG_SENSORS_TMP513 is not set
+# CONFIG_SENSORS_VT1211 is not set
+# CONFIG_SENSORS_W83773G is not set
+# CONFIG_SENSORS_W83781D is not set
+# CONFIG_SENSORS_W83791D is not set
+# CONFIG_SENSORS_W83792D is not set
+# CONFIG_SENSORS_W83793 is not set
+# CONFIG_SENSORS_W83795 is not set
+# CONFIG_SENSORS_W83L785TS is not set
+# CONFIG_SENSORS_W83L786NG is not set
+# CONFIG_SENSORS_W83627HF is not set
+# CONFIG_SENSORS_W83627EHF is not set
+CONFIG_THERMAL=y
+CONFIG_THERMAL_NETLINK=y
+# CONFIG_THERMAL_STATISTICS is not set
+CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0
+CONFIG_THERMAL_OF=y
+CONFIG_THERMAL_WRITABLE_TRIPS=y
+CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y
+# CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE is not set
+# CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE is not set
+# CONFIG_THERMAL_DEFAULT_GOV_BANG_BANG is not set
+CONFIG_THERMAL_GOV_FAIR_SHARE=y
+CONFIG_THERMAL_GOV_STEP_WISE=y
+CONFIG_THERMAL_GOV_BANG_BANG=y
+CONFIG_THERMAL_GOV_USER_SPACE=y
+# CONFIG_THERMAL_GOV_POWER_ALLOCATOR is not set
+CONFIG_CPU_THERMAL=y
+CONFIG_CPU_FREQ_THERMAL=y
+# CONFIG_CPU_IDLE_THERMAL is not set
+CONFIG_DEVFREQ_THERMAL=y
+CONFIG_THERMAL_EMULATION=y
+# CONFIG_THERMAL_MMIO is not set
+
+#
+# Mediatek thermal drivers
+#
+CONFIG_MTK_THERMAL=y
+CONFIG_MTK_SOC_THERMAL=m
+CONFIG_MTK_LVTS_THERMAL=m
+# end of Mediatek thermal drivers
+
+CONFIG_GENERIC_ADC_THERMAL=m
+CONFIG_WATCHDOG=y
+CONFIG_WATCHDOG_CORE=m
+# CONFIG_WATCHDOG_NOWAYOUT is not set
+CONFIG_WATCHDOG_HANDLE_BOOT_ENABLED=y
+CONFIG_WATCHDOG_OPEN_TIMEOUT=0
+# CONFIG_WATCHDOG_SYSFS is not set
+# CONFIG_WATCHDOG_HRTIMER_PRETIMEOUT is not set
+
+#
+# Watchdog Pretimeout Governors
+#
+# CONFIG_WATCHDOG_PRETIMEOUT_GOV is not set
+
+#
+# Watchdog Device Drivers
+#
+# CONFIG_SOFT_WATCHDOG is not set
+# CONFIG_GPIO_WATCHDOG is not set
+# CONFIG_XILINX_WATCHDOG is not set
+# CONFIG_XILINX_WINDOW_WATCHDOG is not set
+# CONFIG_ZIIRAVE_WATCHDOG is not set
+# CONFIG_ARM_SP805_WATCHDOG is not set
+# CONFIG_ARM_SBSA_WATCHDOG is not set
+# CONFIG_CADENCE_WATCHDOG is not set
+# CONFIG_DW_WATCHDOG is not set
+# CONFIG_MAX63XX_WATCHDOG is not set
+CONFIG_MEDIATEK_WATCHDOG=m
+# CONFIG_ARM_SMC_WATCHDOG is not set
+# CONFIG_MEN_A21_WDT is not set
+
+#
+# USB-based Watchdog Cards
+#
+# CONFIG_USBPCWATCHDOG is not set
+CONFIG_SSB_POSSIBLE=y
+CONFIG_SSB=m
+CONFIG_SSB_SDIOHOST_POSSIBLE=y
+CONFIG_SSB_SDIOHOST=y
+# CONFIG_SSB_DRIVER_GPIO is not set
+CONFIG_BCMA_POSSIBLE=y
+# CONFIG_BCMA is not set
+
+#
+# Multifunction device drivers
+#
+CONFIG_MFD_CORE=y
+# CONFIG_MFD_ACT8945A is not set
+# CONFIG_MFD_AS3711 is not set
+# CONFIG_MFD_SMPRO is not set
+CONFIG_MFD_AS3722=m
+# CONFIG_PMIC_ADP5520 is not set
+# CONFIG_MFD_AAT2870_CORE is not set
+# CONFIG_MFD_ATMEL_FLEXCOM is not set
+# CONFIG_MFD_ATMEL_HLCDC is not set
+# CONFIG_MFD_BCM590XX is not set
+# CONFIG_MFD_BD9571MWV is not set
+# CONFIG_MFD_AXP20X_I2C is not set
+CONFIG_MFD_CROS_EC_DEV=y
+# CONFIG_MFD_CS42L43_I2C is not set
+# CONFIG_MFD_MADERA is not set
+# CONFIG_MFD_MAX5970 is not set
+# CONFIG_PMIC_DA903X is not set
+# CONFIG_MFD_DA9052_SPI is not set
+# CONFIG_MFD_DA9052_I2C is not set
+# CONFIG_MFD_DA9055 is not set
+# CONFIG_MFD_DA9062 is not set
+# CONFIG_MFD_DA9063 is not set
+# CONFIG_MFD_DA9150 is not set
+# CONFIG_MFD_DLN2 is not set
+# CONFIG_MFD_GATEWORKS_GSC is not set
+# CONFIG_MFD_MC13XXX_SPI is not set
+# CONFIG_MFD_MC13XXX_I2C is not set
+# CONFIG_MFD_MP2629 is not set
+# CONFIG_MFD_HI6421_PMIC is not set
+# CONFIG_MFD_HI6421_SPMI is not set
+# CONFIG_MFD_IQS62X is not set
+# CONFIG_MFD_KEMPLD is not set
+# CONFIG_MFD_88PM800 is not set
+# CONFIG_MFD_88PM805 is not set
+# CONFIG_MFD_88PM860X is not set
+# CONFIG_MFD_MAX14577 is not set
+# CONFIG_MFD_MAX77541 is not set
+# CONFIG_MFD_MAX77620 is not set
+# CONFIG_MFD_MAX77650 is not set
+# CONFIG_MFD_MAX77686 is not set
+# CONFIG_MFD_MAX77693 is not set
+# CONFIG_MFD_MAX77714 is not set
+# CONFIG_MFD_MAX77843 is not set
+# CONFIG_MFD_MAX8907 is not set
+# CONFIG_MFD_MAX8925 is not set
+# CONFIG_MFD_MAX8997 is not set
+# CONFIG_MFD_MAX8998 is not set
+CONFIG_MFD_MT6360=m
+# CONFIG_MFD_MT6370 is not set
+CONFIG_MFD_MT6397=y
+# CONFIG_MFD_MENF21BMC is not set
+# CONFIG_MFD_OCELOT is not set
+# CONFIG_EZX_PCAP is not set
+# CONFIG_MFD_CPCAP is not set
+# CONFIG_MFD_VIPERBOARD is not set
+# CONFIG_MFD_NTXEC is not set
+# CONFIG_MFD_RETU is not set
+# CONFIG_MFD_PCF50633 is not set
+# CONFIG_MFD_SY7636A is not set
+# CONFIG_MFD_RT4831 is not set
+# CONFIG_MFD_RT5033 is not set
+# CONFIG_MFD_RT5120 is not set
+# CONFIG_MFD_RC5T583 is not set
+# CONFIG_MFD_RK8XX_I2C is not set
+# CONFIG_MFD_RK8XX_SPI is not set
+# CONFIG_MFD_RN5T618 is not set
+# CONFIG_MFD_SEC_CORE is not set
+# CONFIG_MFD_SI476X_CORE is not set
+# CONFIG_MFD_SM501 is not set
+# CONFIG_MFD_SKY81452 is not set
+# CONFIG_MFD_STMPE is not set
+CONFIG_MFD_SYSCON=y
+# CONFIG_MFD_LP3943 is not set
+# CONFIG_MFD_LP8788 is not set
+# CONFIG_MFD_TI_LMU is not set
+CONFIG_MFD_PALMAS=y
+# CONFIG_TPS6105X is not set
+# CONFIG_TPS65010 is not set
+# CONFIG_TPS6507X is not set
+# CONFIG_MFD_TPS65086 is not set
+CONFIG_MFD_TPS65090=y
+# CONFIG_MFD_TPS65217 is not set
+# CONFIG_MFD_TI_LP873X is not set
+# CONFIG_MFD_TI_LP87565 is not set
+# CONFIG_MFD_TPS65218 is not set
+# CONFIG_MFD_TPS65219 is not set
+CONFIG_MFD_TPS6586X=y
+# CONFIG_MFD_TPS65910 is not set
+# CONFIG_MFD_TPS65912_I2C is not set
+# CONFIG_MFD_TPS65912_SPI is not set
+# CONFIG_MFD_TPS6594_I2C is not set
+# CONFIG_MFD_TPS6594_SPI is not set
+# CONFIG_TWL4030_CORE is not set
+# CONFIG_TWL6040_CORE is not set
+# CONFIG_MFD_WL1273_CORE is not set
+# CONFIG_MFD_LM3533 is not set
+# CONFIG_MFD_TC3589X is not set
+# CONFIG_MFD_TQMX86 is not set
+# CONFIG_MFD_LOCHNAGAR is not set
+# CONFIG_MFD_ARIZONA_I2C is not set
+# CONFIG_MFD_ARIZONA_SPI is not set
+# CONFIG_MFD_WM8400 is not set
+# CONFIG_MFD_WM831X_I2C is not set
+# CONFIG_MFD_WM831X_SPI is not set
+# CONFIG_MFD_WM8350_I2C is not set
+# CONFIG_MFD_WM8994 is not set
+# CONFIG_MFD_ROHM_BD718XX is not set
+# CONFIG_MFD_ROHM_BD71828 is not set
+# CONFIG_MFD_ROHM_BD957XMUF is not set
+# CONFIG_MFD_STPMIC1 is not set
+# CONFIG_MFD_STMFX is not set
+# CONFIG_MFD_ATC260X_I2C is not set
+# CONFIG_MFD_QCOM_PM8008 is not set
+# CONFIG_MFD_INTEL_M10_BMC_SPI is not set
+# CONFIG_MFD_RSMU_I2C is not set
+# CONFIG_MFD_RSMU_SPI is not set
+# end of Multifunction device drivers
+
+CONFIG_REGULATOR=y
+# CONFIG_REGULATOR_DEBUG is not set
+CONFIG_REGULATOR_FIXED_VOLTAGE=y
+# CONFIG_REGULATOR_VIRTUAL_CONSUMER is not set
+CONFIG_REGULATOR_USERSPACE_CONSUMER=m
+# CONFIG_REGULATOR_NETLINK_EVENTS is not set
+# CONFIG_REGULATOR_88PG86X is not set
+# CONFIG_REGULATOR_ACT8865 is not set
+# CONFIG_REGULATOR_AD5398 is not set
+CONFIG_REGULATOR_ARM_SCMI=m
+CONFIG_REGULATOR_AS3722=m
+# CONFIG_REGULATOR_AW37503 is not set
+CONFIG_REGULATOR_CROS_EC=m
+# CONFIG_REGULATOR_DA9121 is not set
+# CONFIG_REGULATOR_DA9210 is not set
+CONFIG_REGULATOR_DA9211=y
+# CONFIG_REGULATOR_FAN53555 is not set
+# CONFIG_REGULATOR_FAN53880 is not set
+CONFIG_REGULATOR_GPIO=y
+# CONFIG_REGULATOR_ISL9305 is not set
+# CONFIG_REGULATOR_ISL6271A is not set
+# CONFIG_REGULATOR_LP3971 is not set
+# CONFIG_REGULATOR_LP3972 is not set
+# CONFIG_REGULATOR_LP872X is not set
+# CONFIG_REGULATOR_LP8755 is not set
+# CONFIG_REGULATOR_LTC3589 is not set
+# CONFIG_REGULATOR_LTC3676 is not set
+# CONFIG_REGULATOR_MAX1586 is not set
+# CONFIG_REGULATOR_MAX77503 is not set
+# CONFIG_REGULATOR_MAX77857 is not set
+# CONFIG_REGULATOR_MAX8649 is not set
+# CONFIG_REGULATOR_MAX8660 is not set
+# CONFIG_REGULATOR_MAX8893 is not set
+# CONFIG_REGULATOR_MAX8952 is not set
+CONFIG_REGULATOR_MAX8973=m
+# CONFIG_REGULATOR_MAX20086 is not set
+# CONFIG_REGULATOR_MAX20411 is not set
+# CONFIG_REGULATOR_MAX77826 is not set
+# CONFIG_REGULATOR_MCP16502 is not set
+# CONFIG_REGULATOR_MP5416 is not set
+# CONFIG_REGULATOR_MP8859 is not set
+# CONFIG_REGULATOR_MP886X is not set
+# CONFIG_REGULATOR_MPQ7920 is not set
+CONFIG_REGULATOR_MT6311=y
+# CONFIG_REGULATOR_MT6315 is not set
+CONFIG_REGULATOR_MT6323=y
+# CONFIG_REGULATOR_MT6331 is not set
+# CONFIG_REGULATOR_MT6332 is not set
+# CONFIG_REGULATOR_MT6357 is not set
+CONFIG_REGULATOR_MT6358=y
+CONFIG_REGULATOR_MT6359=m
+CONFIG_REGULATOR_MT6360=m
+CONFIG_REGULATOR_MT6380=y
+CONFIG_REGULATOR_MT6397=y
+CONFIG_REGULATOR_PALMAS=y
+# CONFIG_REGULATOR_PCA9450 is not set
+# CONFIG_REGULATOR_PF8X00 is not set
+# CONFIG_REGULATOR_PFUZE100 is not set
+# CONFIG_REGULATOR_PV88060 is not set
+# CONFIG_REGULATOR_PV88080 is not set
+# CONFIG_REGULATOR_PV88090 is not set
+CONFIG_REGULATOR_PWM=y
+# CONFIG_REGULATOR_QCOM_SPMI is not set
+# CONFIG_REGULATOR_QCOM_USB_VBUS is not set
+# CONFIG_REGULATOR_RAA215300 is not set
+# CONFIG_REGULATOR_RASPBERRYPI_TOUCHSCREEN_ATTINY is not set
+# CONFIG_REGULATOR_RT4801 is not set
+# CONFIG_REGULATOR_RT4803 is not set
+# CONFIG_REGULATOR_RT5190A is not set
+# CONFIG_REGULATOR_RT5739 is not set
+# CONFIG_REGULATOR_RT5759 is not set
+# CONFIG_REGULATOR_RT6160 is not set
+# CONFIG_REGULATOR_RT6190 is not set
+# CONFIG_REGULATOR_RT6245 is not set
+# CONFIG_REGULATOR_RTQ2134 is not set
+# CONFIG_REGULATOR_RTMV20 is not set
+# CONFIG_REGULATOR_RTQ6752 is not set
+# CONFIG_REGULATOR_RTQ2208 is not set
+# CONFIG_REGULATOR_SLG51000 is not set
+# CONFIG_REGULATOR_SY8106A is not set
+# CONFIG_REGULATOR_SY8824X is not set
+# CONFIG_REGULATOR_SY8827N is not set
+CONFIG_REGULATOR_TPS51632=m
+CONFIG_REGULATOR_TPS62360=m
+# CONFIG_REGULATOR_TPS6286X is not set
+# CONFIG_REGULATOR_TPS6287X is not set
+# CONFIG_REGULATOR_TPS65023 is not set
+# CONFIG_REGULATOR_TPS6507X is not set
+CONFIG_REGULATOR_TPS65090=m
+# CONFIG_REGULATOR_TPS65132 is not set
+# CONFIG_REGULATOR_TPS6524X is not set
+# CONFIG_REGULATOR_TPS6586X is not set
+CONFIG_REGULATOR_VCTRL=m
+# CONFIG_REGULATOR_QCOM_LABIBB is not set
+# CONFIG_RC_CORE is not set
+CONFIG_CEC_CORE=m
+CONFIG_CEC_NOTIFIER=y
+
+#
+# CEC support
+#
+CONFIG_MEDIA_CEC_SUPPORT=y
+# CONFIG_CEC_CH7322 is not set
+CONFIG_CEC_CROS_EC=m
+# CONFIG_CEC_GPIO is not set
+# CONFIG_USB_PULSE8_CEC is not set
+# CONFIG_USB_RAINSHADOW_CEC is not set
+# end of CEC support
+
+CONFIG_MEDIA_SUPPORT=m
+CONFIG_MEDIA_SUPPORT_FILTER=y
+CONFIG_MEDIA_SUBDRV_AUTOSELECT=y
+
+#
+# Media device types
+#
+CONFIG_MEDIA_CAMERA_SUPPORT=y
+# CONFIG_MEDIA_ANALOG_TV_SUPPORT is not set
+# CONFIG_MEDIA_DIGITAL_TV_SUPPORT is not set
+# CONFIG_MEDIA_RADIO_SUPPORT is not set
+CONFIG_MEDIA_SDR_SUPPORT=y
+CONFIG_MEDIA_PLATFORM_SUPPORT=y
+# CONFIG_MEDIA_TEST_SUPPORT is not set
+# end of Media device types
+
+CONFIG_VIDEO_DEV=m
+CONFIG_MEDIA_CONTROLLER=y
+
+#
+# Video4Linux options
+#
+CONFIG_VIDEO_V4L2_I2C=y
+CONFIG_VIDEO_V4L2_SUBDEV_API=y
+# CONFIG_VIDEO_ADV_DEBUG is not set
+# CONFIG_VIDEO_FIXED_MINOR_RANGES is not set
+CONFIG_VIDEO_TUNER=m
+CONFIG_V4L2_H264=m
+CONFIG_V4L2_VP9=m
+CONFIG_V4L2_MEM2MEM_DEV=m
+# CONFIG_V4L2_FLASH_LED_CLASS is not set
+CONFIG_V4L2_FWNODE=m
+CONFIG_V4L2_ASYNC=m
+# end of Video4Linux options
+
+#
+# Media controller options
+#
+# end of Media controller options
+
+#
+# Media drivers
+#
+
+#
+# Drivers filtered as selected at 'Filter media drivers'
+#
+
+#
+# Media drivers
+#
+CONFIG_MEDIA_USB_SUPPORT=y
+
+#
+# Webcam devices
+#
+# CONFIG_USB_GSPCA is not set
+# CONFIG_USB_PWC is not set
+# CONFIG_USB_S2255 is not set
+# CONFIG_VIDEO_USBTV is not set
+CONFIG_USB_VIDEO_CLASS=m
+CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y
+
+#
+# Webcam, TV (analog/digital) USB devices
+#
+CONFIG_VIDEO_EM28XX=m
+CONFIG_VIDEO_EM28XX_V4L2=m
+CONFIG_VIDEO_EM28XX_ALSA=m
+
+#
+# Software defined radio USB devices
+#
+CONFIG_USB_AIRSPY=m
+CONFIG_USB_HACKRF=m
+CONFIG_USB_MSI2500=m
+CONFIG_MEDIA_PLATFORM_DRIVERS=y
+CONFIG_V4L_PLATFORM_DRIVERS=y
+# CONFIG_SDR_PLATFORM_DRIVERS is not set
+CONFIG_V4L_MEM2MEM_DRIVERS=y
+# CONFIG_VIDEO_MEM2MEM_DEINTERLACE is not set
+# CONFIG_VIDEO_MUX is not set
+
+#
+# Allegro DVT media platform drivers
+#
+
+#
+# Amlogic media platform drivers
+#
+
+#
+# Amphion drivers
+#
+
+#
+# Aspeed media platform drivers
+#
+
+#
+# Atmel media platform drivers
+#
+
+#
+# Cadence media platform drivers
+#
+# CONFIG_VIDEO_CADENCE_CSI2RX is not set
+# CONFIG_VIDEO_CADENCE_CSI2TX is not set
+
+#
+# Chips&Media media platform drivers
+#
+
+#
+# Intel media platform drivers
+#
+
+#
+# Marvell media platform drivers
+#
+
+#
+# Mediatek media platform drivers
+#
+CONFIG_VIDEO_MEDIATEK_JPEG=m
+CONFIG_VIDEO_MEDIATEK_MDP=m
+CONFIG_VIDEO_MEDIATEK_VCODEC_VPU=y
+CONFIG_VIDEO_MEDIATEK_VCODEC=m
+CONFIG_VIDEO_MEDIATEK_VPU=m
+
+#
+# Microchip Technology, Inc. media platform drivers
+#
+
+#
+# Nuvoton media platform drivers
+#
+
+#
+# NVidia media platform drivers
+#
+
+#
+# NXP media platform drivers
+#
+
+#
+# Qualcomm media platform drivers
+#
+
+#
+# Renesas media platform drivers
+#
+
+#
+# Rockchip media platform drivers
+#
+
+#
+# Samsung media platform drivers
+#
+
+#
+# STMicroelectronics media platform drivers
+#
+
+#
+# Sunxi media platform drivers
+#
+
+#
+# Texas Instruments drivers
+#
+
+#
+# Verisilicon media platform drivers
+#
+
+#
+# VIA media platform drivers
+#
+
+#
+# Xilinx media platform drivers
+#
+# CONFIG_VIDEO_XILINX is not set
+CONFIG_UVC_COMMON=m
+CONFIG_VIDEO_TVEEPROM=m
+CONFIG_VIDEOBUF2_CORE=m
+CONFIG_VIDEOBUF2_V4L2=m
+CONFIG_VIDEOBUF2_MEMOPS=m
+CONFIG_VIDEOBUF2_DMA_CONTIG=m
+CONFIG_VIDEOBUF2_VMALLOC=m
+# end of Media drivers
+
+CONFIG_MEDIA_HIDE_ANCILLARY_SUBDRV=y
+
+#
+# Media ancillary drivers
+#
+CONFIG_VIDEO_CAMERA_SENSOR=y
+# CONFIG_VIDEO_ALVIUM_CSI2 is not set
+# CONFIG_VIDEO_AR0521 is not set
+# CONFIG_VIDEO_GC0308 is not set
+# CONFIG_VIDEO_GC2145 is not set
+# CONFIG_VIDEO_HI556 is not set
+# CONFIG_VIDEO_HI846 is not set
+# CONFIG_VIDEO_HI847 is not set
+# CONFIG_VIDEO_IMX208 is not set
+# CONFIG_VIDEO_IMX214 is not set
+# CONFIG_VIDEO_IMX219 is not set
+# CONFIG_VIDEO_IMX258 is not set
+# CONFIG_VIDEO_IMX274 is not set
+# CONFIG_VIDEO_IMX290 is not set
+# CONFIG_VIDEO_IMX296 is not set
+# CONFIG_VIDEO_IMX319 is not set
+# CONFIG_VIDEO_IMX334 is not set
+# CONFIG_VIDEO_IMX335 is not set
+# CONFIG_VIDEO_IMX355 is not set
+# CONFIG_VIDEO_IMX412 is not set
+# CONFIG_VIDEO_IMX415 is not set
+# CONFIG_VIDEO_MT9M001 is not set
+# CONFIG_VIDEO_MT9M111 is not set
+# CONFIG_VIDEO_MT9M114 is not set
+# CONFIG_VIDEO_MT9P031 is not set
+# CONFIG_VIDEO_MT9T112 is not set
+CONFIG_VIDEO_MT9V011=m
+# CONFIG_VIDEO_MT9V032 is not set
+# CONFIG_VIDEO_MT9V111 is not set
+# CONFIG_VIDEO_OG01A1B is not set
+# CONFIG_VIDEO_OV01A10 is not set
+# CONFIG_VIDEO_OV02A10 is not set
+# CONFIG_VIDEO_OV08D10 is not set
+# CONFIG_VIDEO_OV08X40 is not set
+# CONFIG_VIDEO_OV13858 is not set
+# CONFIG_VIDEO_OV13B10 is not set
+CONFIG_VIDEO_OV2640=m
+# CONFIG_VIDEO_OV2659 is not set
+# CONFIG_VIDEO_OV2680 is not set
+# CONFIG_VIDEO_OV2685 is not set
+# CONFIG_VIDEO_OV4689 is not set
+# CONFIG_VIDEO_OV5640 is not set
+# CONFIG_VIDEO_OV5645 is not set
+# CONFIG_VIDEO_OV5647 is not set
+# CONFIG_VIDEO_OV5648 is not set
+# CONFIG_VIDEO_OV5670 is not set
+# CONFIG_VIDEO_OV5675 is not set
+# CONFIG_VIDEO_OV5693 is not set
+# CONFIG_VIDEO_OV5695 is not set
+# CONFIG_VIDEO_OV64A40 is not set
+# CONFIG_VIDEO_OV6650 is not set
+# CONFIG_VIDEO_OV7251 is not set
+# CONFIG_VIDEO_OV7640 is not set
+# CONFIG_VIDEO_OV7670 is not set
+# CONFIG_VIDEO_OV772X is not set
+# CONFIG_VIDEO_OV7740 is not set
+# CONFIG_VIDEO_OV8856 is not set
+# CONFIG_VIDEO_OV8858 is not set
+# CONFIG_VIDEO_OV8865 is not set
+# CONFIG_VIDEO_OV9282 is not set
+# CONFIG_VIDEO_OV9640 is not set
+# CONFIG_VIDEO_OV9650 is not set
+# CONFIG_VIDEO_RDACM20 is not set
+# CONFIG_VIDEO_RDACM21 is not set
+# CONFIG_VIDEO_RJ54N1 is not set
+# CONFIG_VIDEO_S5C73M3 is not set
+# CONFIG_VIDEO_S5K5BAF is not set
+# CONFIG_VIDEO_S5K6A3 is not set
+# CONFIG_VIDEO_ST_VGXY61 is not set
+# CONFIG_VIDEO_CCS is not set
+# CONFIG_VIDEO_ET8EK8 is not set
+
+#
+# Camera ISPs
+#
+# CONFIG_VIDEO_THP7312 is not set
+# end of Camera ISPs
+
+#
+# Lens drivers
+#
+# CONFIG_VIDEO_AD5820 is not set
+# CONFIG_VIDEO_AK7375 is not set
+# CONFIG_VIDEO_DW9714 is not set
+# CONFIG_VIDEO_DW9719 is not set
+# CONFIG_VIDEO_DW9768 is not set
+# CONFIG_VIDEO_DW9807_VCM is not set
+# end of Lens drivers
+
+#
+# Flash devices
+#
+# CONFIG_VIDEO_ADP1653 is not set
+# CONFIG_VIDEO_LM3560 is not set
+# CONFIG_VIDEO_LM3646 is not set
+# end of Flash devices
+
+#
+# audio, video and radio I2C drivers auto-selected by 'Autoselect ancillary drivers'
+#
+CONFIG_VIDEO_MSP3400=m
+CONFIG_VIDEO_SAA711X=m
+CONFIG_VIDEO_TVP5150=m
+
+#
+# Video and audio decoders
+#
+
+#
+# Video serializers and deserializers
+#
+# CONFIG_VIDEO_DS90UB913 is not set
+# CONFIG_VIDEO_DS90UB953 is not set
+# CONFIG_VIDEO_DS90UB960 is not set
+# end of Video serializers and deserializers
+
+#
+# SPI I2C drivers auto-selected by 'Autoselect ancillary drivers'
+#
+
+#
+# Media SPI Adapters
+#
+# CONFIG_VIDEO_GS1662 is not set
+# end of Media SPI Adapters
+
+CONFIG_MEDIA_TUNER=m
+
+#
+# Tuner drivers auto-selected by 'Autoselect ancillary drivers'
+#
+CONFIG_MEDIA_TUNER_MC44S803=m
+CONFIG_MEDIA_TUNER_MSI001=m
+CONFIG_MEDIA_TUNER_MT20XX=m
+CONFIG_MEDIA_TUNER_SIMPLE=m
+CONFIG_MEDIA_TUNER_TDA18271=m
+CONFIG_MEDIA_TUNER_TDA827X=m
+CONFIG_MEDIA_TUNER_TDA8290=m
+CONFIG_MEDIA_TUNER_TDA9887=m
+CONFIG_MEDIA_TUNER_XC2028=m
+CONFIG_MEDIA_TUNER_XC4000=m
+CONFIG_MEDIA_TUNER_XC5000=m
+# end of Media ancillary drivers
+
+#
+# Graphics support
+#
+CONFIG_APERTURE_HELPERS=y
+CONFIG_VIDEO_CMDLINE=y
+CONFIG_VIDEO_NOMODESET=y
+# CONFIG_AUXDISPLAY is not set
+CONFIG_DRM=y
+CONFIG_DRM_MIPI_DSI=y
+# CONFIG_DRM_DEBUG_MM is not set
+CONFIG_DRM_KMS_HELPER=y
+CONFIG_DRM_FBDEV_EMULATION=y
+CONFIG_DRM_FBDEV_OVERALLOC=100
+# CONFIG_DRM_LOAD_EDID_FIRMWARE is not set
+CONFIG_DRM_DP_AUX_BUS=y
+CONFIG_DRM_DISPLAY_HELPER=y
+CONFIG_DRM_DISPLAY_DP_HELPER=y
+CONFIG_DRM_DP_AUX_CHARDEV=y
+# CONFIG_DRM_DP_CEC is not set
+CONFIG_DRM_GEM_DMA_HELPER=m
+CONFIG_DRM_GEM_SHMEM_HELPER=y
+
+#
+# I2C encoder or helper chips
+#
+# CONFIG_DRM_I2C_CH7006 is not set
+# CONFIG_DRM_I2C_SIL164 is not set
+# CONFIG_DRM_I2C_NXP_TDA998X is not set
+# CONFIG_DRM_I2C_NXP_TDA9950 is not set
+# end of I2C encoder or helper chips
+
+#
+# ARM devices
+#
+# CONFIG_DRM_HDLCD is not set
+# CONFIG_DRM_MALI_DISPLAY is not set
+# CONFIG_DRM_KOMEDA is not set
+# end of ARM devices
+
+CONFIG_DRM_VGEM=m
+# CONFIG_DRM_VKMS is not set
+CONFIG_DRM_UDL=m
+# CONFIG_DRM_VIRTIO_GPU is not set
+CONFIG_DRM_PANEL=y
+
+#
+# Display Panels
+#
+# CONFIG_DRM_PANEL_ABT_Y030XX067A is not set
+# CONFIG_DRM_PANEL_ARM_VERSATILE is not set
+# CONFIG_DRM_PANEL_ASUS_Z00T_TM5P5_NT35596 is not set
+# CONFIG_DRM_PANEL_AUO_A030JTN01 is not set
+# CONFIG_DRM_PANEL_BOE_BF060Y8M_AJ0 is not set
+# CONFIG_DRM_PANEL_BOE_HIMAX8279D is not set
+# CONFIG_DRM_PANEL_BOE_TV101WUM_NL6 is not set
+# CONFIG_DRM_PANEL_DSI_CM is not set
+# CONFIG_DRM_PANEL_LVDS is not set
+CONFIG_DRM_PANEL_SIMPLE=m
+CONFIG_DRM_PANEL_EDP=y
+# CONFIG_DRM_PANEL_EBBG_FT8719 is not set
+# CONFIG_DRM_PANEL_ELIDA_KD35T133 is not set
+# CONFIG_DRM_PANEL_FEIXIN_K101_IM2BA02 is not set
+# CONFIG_DRM_PANEL_FEIYANG_FY07024DI26A30D is not set
+# CONFIG_DRM_PANEL_HIMAX_HX8394 is not set
+# CONFIG_DRM_PANEL_ILITEK_IL9322 is not set
+# CONFIG_DRM_PANEL_ILITEK_ILI9341 is not set
+# CONFIG_DRM_PANEL_ILITEK_ILI9805 is not set
+# CONFIG_DRM_PANEL_ILITEK_ILI9881C is not set
+# CONFIG_DRM_PANEL_ILITEK_ILI9882T is not set
+# CONFIG_DRM_PANEL_INNOLUX_EJ030NA is not set
+# CONFIG_DRM_PANEL_INNOLUX_P079ZCA is not set
+# CONFIG_DRM_PANEL_JADARD_JD9365DA_H3 is not set
+# CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set
+# CONFIG_DRM_PANEL_JDI_LPM102A188A is not set
+# CONFIG_DRM_PANEL_JDI_R63452 is not set
+# CONFIG_DRM_PANEL_KHADAS_TS050 is not set
+# CONFIG_DRM_PANEL_KINGDISPLAY_KD097D04 is not set
+# CONFIG_DRM_PANEL_LEADTEK_LTK050H3146W is not set
+# CONFIG_DRM_PANEL_LEADTEK_LTK500HD1829 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_LD9040 is not set
+# CONFIG_DRM_PANEL_LG_LB035Q02 is not set
+# CONFIG_DRM_PANEL_LG_LG4573 is not set
+# CONFIG_DRM_PANEL_MAGNACHIP_D53E6EA8966 is not set
+# CONFIG_DRM_PANEL_NEC_NL8048HL11 is not set
+# CONFIG_DRM_PANEL_NEWVISION_NV3051D is not set
+# CONFIG_DRM_PANEL_NEWVISION_NV3052C is not set
+# CONFIG_DRM_PANEL_NOVATEK_NT35510 is not set
+# CONFIG_DRM_PANEL_NOVATEK_NT35560 is not set
+# CONFIG_DRM_PANEL_NOVATEK_NT35950 is not set
+# CONFIG_DRM_PANEL_NOVATEK_NT36523 is not set
+# CONFIG_DRM_PANEL_NOVATEK_NT36672A is not set
+# CONFIG_DRM_PANEL_NOVATEK_NT39016 is not set
+# CONFIG_DRM_PANEL_MANTIX_MLAF057WE51 is not set
+# CONFIG_DRM_PANEL_OLIMEX_LCD_OLINUXINO is not set
+# CONFIG_DRM_PANEL_ORISETECH_OTA5601A is not set
+# CONFIG_DRM_PANEL_ORISETECH_OTM8009A is not set
+# CONFIG_DRM_PANEL_OSD_OSD101T2587_53TS is not set
+# CONFIG_DRM_PANEL_PANASONIC_VVX10F034N00 is not set
+# CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN is not set
+# CONFIG_DRM_PANEL_RAYDIUM_RM67191 is not set
+# CONFIG_DRM_PANEL_RAYDIUM_RM68200 is not set
+# CONFIG_DRM_PANEL_RAYDIUM_RM692E5 is not set
+# CONFIG_DRM_PANEL_RONBO_RB070D30 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_ATNA33XC20 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_DB7430 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6D16D0 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6D27A1 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6D7AA0 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6E3HA2 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6E63J0X03 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6E63M0 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6E88A0_AMS452EF01 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_SOFEF00 is not set
+# CONFIG_DRM_PANEL_SEIKO_43WVF1G is not set
+# CONFIG_DRM_PANEL_SHARP_LQ101R1SX01 is not set
+# CONFIG_DRM_PANEL_SHARP_LS037V7DW01 is not set
+# CONFIG_DRM_PANEL_SHARP_LS043T1LE01 is not set
+# CONFIG_DRM_PANEL_SHARP_LS060T1SX01 is not set
+# CONFIG_DRM_PANEL_SITRONIX_ST7701 is not set
+# CONFIG_DRM_PANEL_SITRONIX_ST7703 is not set
+# CONFIG_DRM_PANEL_SITRONIX_ST7789V is not set
+# CONFIG_DRM_PANEL_SYNAPTICS_R63353 is not set
+# CONFIG_DRM_PANEL_SONY_ACX565AKM is not set
+# CONFIG_DRM_PANEL_SONY_TD4353_JDI is not set
+# CONFIG_DRM_PANEL_SONY_TULIP_TRULY_NT35521 is not set
+# CONFIG_DRM_PANEL_STARTEK_KD070FHFID015 is not set
+# CONFIG_DRM_PANEL_TDO_TL070WSH30 is not set
+# CONFIG_DRM_PANEL_TPO_TD028TTEC1 is not set
+# CONFIG_DRM_PANEL_TPO_TD043MTEA1 is not set
+# CONFIG_DRM_PANEL_TPO_TPG110 is not set
+# CONFIG_DRM_PANEL_TRULY_NT35597_WQXGA is not set
+# CONFIG_DRM_PANEL_VISIONOX_RM69299 is not set
+# CONFIG_DRM_PANEL_VISIONOX_VTDR6130 is not set
+# CONFIG_DRM_PANEL_VISIONOX_R66451 is not set
+# CONFIG_DRM_PANEL_WIDECHIPS_WS2401 is not set
+# CONFIG_DRM_PANEL_XINPENG_XPP055C272 is not set
+# end of Display Panels
+
+CONFIG_DRM_BRIDGE=y
+CONFIG_DRM_PANEL_BRIDGE=y
+
+#
+# Display Interface Bridges
+#
+# CONFIG_DRM_CHIPONE_ICN6211 is not set
+# CONFIG_DRM_CHRONTEL_CH7033 is not set
+CONFIG_DRM_CROS_EC_ANX7688=m
+CONFIG_DRM_DISPLAY_CONNECTOR=y
+# CONFIG_DRM_ITE_IT6505 is not set
+# CONFIG_DRM_LONTIUM_LT8912B is not set
+# CONFIG_DRM_LONTIUM_LT9211 is not set
+# CONFIG_DRM_LONTIUM_LT9611 is not set
+# CONFIG_DRM_LONTIUM_LT9611UXC is not set
+# CONFIG_DRM_ITE_IT66121 is not set
+# CONFIG_DRM_LVDS_CODEC is not set
+# CONFIG_DRM_MEGACHIPS_STDPXXXX_GE_B850V3_FW is not set
+# CONFIG_DRM_NWL_MIPI_DSI is not set
+# CONFIG_DRM_NXP_PTN3460 is not set
+# CONFIG_DRM_PARADE_PS8622 is not set
+CONFIG_DRM_PARADE_PS8640=y
+# CONFIG_DRM_SAMSUNG_DSIM is not set
+# CONFIG_DRM_SIL_SII8620 is not set
+# CONFIG_DRM_SII902X is not set
+# CONFIG_DRM_SII9234 is not set
+# CONFIG_DRM_SIMPLE_BRIDGE is not set
+# CONFIG_DRM_THINE_THC63LVD1024 is not set
+# CONFIG_DRM_TOSHIBA_TC358762 is not set
+# CONFIG_DRM_TOSHIBA_TC358764 is not set
+# CONFIG_DRM_TOSHIBA_TC358767 is not set
+# CONFIG_DRM_TOSHIBA_TC358768 is not set
+# CONFIG_DRM_TOSHIBA_TC358775 is not set
+# CONFIG_DRM_TI_DLPC3433 is not set
+# CONFIG_DRM_TI_TFP410 is not set
+# CONFIG_DRM_TI_SN65DSI83 is not set
+# CONFIG_DRM_TI_SN65DSI86 is not set
+# CONFIG_DRM_TI_TPD12S015 is not set
+# CONFIG_DRM_ANALOGIX_ANX6345 is not set
+# CONFIG_DRM_ANALOGIX_ANX78XX is not set
+# CONFIG_DRM_ANALOGIX_ANX7625 is not set
+# CONFIG_DRM_I2C_ADV7511 is not set
+# CONFIG_DRM_CDNS_DSI is not set
+# CONFIG_DRM_CDNS_MHDP8546 is not set
+# end of Display Interface Bridges
+
+# CONFIG_DRM_ETNAVIV is not set
+# CONFIG_DRM_HISI_KIRIN is not set
+# CONFIG_DRM_LOGICVC is not set
+CONFIG_DRM_MEDIATEK=y
+CONFIG_DRM_MEDIATEK_DP=y
+CONFIG_DRM_MEDIATEK_HDMI=y
+# CONFIG_DRM_ARCPGU is not set
+CONFIG_DRM_GM12U320=m
+# CONFIG_DRM_PANEL_MIPI_DBI is not set
+CONFIG_DRM_SIMPLEDRM=y
+# CONFIG_TINYDRM_HX8357D is not set
+# CONFIG_TINYDRM_ILI9163 is not set
+# CONFIG_TINYDRM_ILI9225 is not set
+# CONFIG_TINYDRM_ILI9341 is not set
+# CONFIG_TINYDRM_ILI9486 is not set
+# CONFIG_TINYDRM_MI0283QT is not set
+# CONFIG_TINYDRM_REPAPER is not set
+# CONFIG_TINYDRM_ST7586 is not set
+# CONFIG_TINYDRM_ST7735R is not set
+CONFIG_DRM_PL111=m
+# CONFIG_DRM_LIMA is not set
+# CONFIG_DRM_PANFROST is not set
+# CONFIG_DRM_TIDSS is not set
+# CONFIG_DRM_GUD is not set
+# CONFIG_DRM_SSD130X is not set
+# CONFIG_DRM_POWERVR is not set
+CONFIG_DRM_PANEL_ORIENTATION_QUIRKS=y
+
+#
+# Frame buffer Devices
+#
+CONFIG_FB=y
+# CONFIG_FB_UVESA is not set
+# CONFIG_FB_EFI is not set
+# CONFIG_FB_OPENCORES is not set
+# CONFIG_FB_S1D13XXX is not set
+# CONFIG_FB_SMSCUFX is not set
+CONFIG_FB_UDL=m
+# CONFIG_FB_IBM_GXT4500 is not set
+# CONFIG_FB_VIRTUAL is not set
+# CONFIG_FB_METRONOME is not set
+# CONFIG_FB_SSD1307 is not set
+CONFIG_FB_CORE=y
+CONFIG_FB_NOTIFY=y
+# CONFIG_FIRMWARE_EDID is not set
+CONFIG_FB_DEVICE=y
+CONFIG_FB_SYS_FILLRECT=y
+CONFIG_FB_SYS_COPYAREA=y
+CONFIG_FB_SYS_IMAGEBLIT=y
+# CONFIG_FB_FOREIGN_ENDIAN is not set
+CONFIG_FB_SYSMEM_FOPS=y
+CONFIG_FB_DEFERRED_IO=y
+CONFIG_FB_DMAMEM_HELPERS=y
+CONFIG_FB_SYSMEM_HELPERS=y
+CONFIG_FB_SYSMEM_HELPERS_DEFERRED=y
+CONFIG_FB_MODE_HELPERS=y
+# CONFIG_FB_TILEBLITTING is not set
+# end of Frame buffer Devices
+
+#
+# Backlight & LCD device support
+#
+CONFIG_LCD_CLASS_DEVICE=y
+# CONFIG_LCD_L4F00242T03 is not set
+# CONFIG_LCD_LMS283GF05 is not set
+# CONFIG_LCD_LTV350QV is not set
+# CONFIG_LCD_ILI922X is not set
+# CONFIG_LCD_ILI9320 is not set
+# CONFIG_LCD_TDO24M is not set
+# CONFIG_LCD_VGG2432A4 is not set
+CONFIG_LCD_PLATFORM=y
+# CONFIG_LCD_AMS369FG06 is not set
+# CONFIG_LCD_LMS501KF03 is not set
+# CONFIG_LCD_HX8357 is not set
+# CONFIG_LCD_OTM3225A is not set
+CONFIG_BACKLIGHT_CLASS_DEVICE=y
+# CONFIG_BACKLIGHT_KTD253 is not set
+# CONFIG_BACKLIGHT_KTZ8866 is not set
+CONFIG_BACKLIGHT_PWM=y
+# CONFIG_BACKLIGHT_QCOM_WLED is not set
+# CONFIG_BACKLIGHT_ADP8860 is not set
+# CONFIG_BACKLIGHT_ADP8870 is not set
+# CONFIG_BACKLIGHT_LM3630A is not set
+# CONFIG_BACKLIGHT_LM3639 is not set
+CONFIG_BACKLIGHT_LP855X=y
+# CONFIG_BACKLIGHT_MP3309C is not set
+# CONFIG_BACKLIGHT_GPIO is not set
+# CONFIG_BACKLIGHT_LV5207LP is not set
+# CONFIG_BACKLIGHT_BD6107 is not set
+# CONFIG_BACKLIGHT_ARCXCNN is not set
+# CONFIG_BACKLIGHT_LED is not set
+# end of Backlight & LCD device support
+
+CONFIG_VIDEOMODE_HELPERS=y
+CONFIG_HDMI=y
+
+#
+# Console display driver support
+#
+CONFIG_DUMMY_CONSOLE=y
+CONFIG_DUMMY_CONSOLE_COLUMNS=80
+CONFIG_DUMMY_CONSOLE_ROWS=25
+CONFIG_FRAMEBUFFER_CONSOLE=y
+# CONFIG_FRAMEBUFFER_CONSOLE_LEGACY_ACCELERATION is not set
+CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
+CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y
+# CONFIG_FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER is not set
+# end of Console display driver support
+
+CONFIG_LOGO=y
+# CONFIG_LOGO_LINUX_MONO is not set
+# CONFIG_LOGO_LINUX_VGA16 is not set
+CONFIG_LOGO_LINUX_CLUT224=y
+# end of Graphics support
+
+# CONFIG_DRM_ACCEL is not set
+CONFIG_SOUND=m
+CONFIG_SND=m
+CONFIG_SND_TIMER=m
+CONFIG_SND_PCM=m
+CONFIG_SND_PCM_ELD=y
+CONFIG_SND_PCM_IEC958=y
+CONFIG_SND_HWDEP=m
+CONFIG_SND_SEQ_DEVICE=m
+CONFIG_SND_RAWMIDI=m
+CONFIG_SND_JACK=y
+CONFIG_SND_JACK_INPUT_DEV=y
+# CONFIG_SND_OSSEMUL is not set
+CONFIG_SND_PCM_TIMER=y
+CONFIG_SND_HRTIMER=m
+CONFIG_SND_DYNAMIC_MINORS=y
+CONFIG_SND_MAX_CARDS=32
+# CONFIG_SND_SUPPORT_OLD_API is not set
+CONFIG_SND_PROC_FS=y
+CONFIG_SND_VERBOSE_PROCFS=y
+# CONFIG_SND_VERBOSE_PRINTK is not set
+CONFIG_SND_CTL_FAST_LOOKUP=y
+# CONFIG_SND_DEBUG is not set
+# CONFIG_SND_CTL_INPUT_VALIDATION is not set
+CONFIG_SND_VMASTER=y
+CONFIG_SND_SEQUENCER=m
+# CONFIG_SND_SEQ_DUMMY is not set
+CONFIG_SND_SEQ_HRTIMER_DEFAULT=y
+CONFIG_SND_SEQ_MIDI_EVENT=m
+CONFIG_SND_SEQ_MIDI=m
+# CONFIG_SND_SEQ_UMP is not set
+CONFIG_SND_DRIVERS=y
+# CONFIG_SND_DUMMY is not set
+CONFIG_SND_ALOOP=m
+# CONFIG_SND_VIRMIDI is not set
+# CONFIG_SND_MTPAV is not set
+# CONFIG_SND_SERIAL_U16550 is not set
+# CONFIG_SND_MPU401 is not set
+
+#
+# HD-Audio
+#
+# end of HD-Audio
+
+CONFIG_SND_HDA_PREALLOC_SIZE=64
+# CONFIG_SND_SPI is not set
+CONFIG_SND_USB=y
+CONFIG_SND_USB_AUDIO=m
+# CONFIG_SND_USB_AUDIO_MIDI_V2 is not set
+CONFIG_SND_USB_AUDIO_USE_MEDIA_CONTROLLER=y
+CONFIG_SND_USB_UA101=m
+CONFIG_SND_USB_CAIAQ=m
+CONFIG_SND_USB_CAIAQ_INPUT=y
+CONFIG_SND_USB_6FIRE=m
+CONFIG_SND_USB_HIFACE=m
+CONFIG_SND_BCD2000=m
+CONFIG_SND_USB_LINE6=m
+CONFIG_SND_USB_POD=m
+CONFIG_SND_USB_PODHD=m
+CONFIG_SND_USB_TONEPORT=m
+CONFIG_SND_USB_VARIAX=m
+CONFIG_SND_SOC=m
+# CONFIG_SND_SOC_ADI is not set
+# CONFIG_SND_SOC_AMD_ACP is not set
+# CONFIG_SND_AMD_ACP_CONFIG is not set
+# CONFIG_SND_ATMEL_SOC is not set
+# CONFIG_SND_BCM63XX_I2S_WHISTLER is not set
+# CONFIG_SND_DESIGNWARE_I2S is not set
+
+#
+# SoC Audio for Freescale CPUs
+#
+
+#
+# Common SoC Audio options for Freescale CPUs:
+#
+# CONFIG_SND_SOC_FSL_ASRC is not set
+# CONFIG_SND_SOC_FSL_SAI is not set
+# CONFIG_SND_SOC_FSL_AUDMIX is not set
+# CONFIG_SND_SOC_FSL_SSI is not set
+# CONFIG_SND_SOC_FSL_SPDIF is not set
+# CONFIG_SND_SOC_FSL_ESAI is not set
+# CONFIG_SND_SOC_FSL_MICFIL is not set
+# CONFIG_SND_SOC_FSL_XCVR is not set
+# CONFIG_SND_SOC_IMX_AUDMUX is not set
+# end of SoC Audio for Freescale CPUs
+
+# CONFIG_SND_SOC_CHV3_I2S is not set
+# CONFIG_SND_I2S_HI6210_I2S is not set
+# CONFIG_SND_SOC_IMG is not set
+CONFIG_SND_SOC_MEDIATEK=m
+# CONFIG_SND_SOC_MT2701 is not set
+# CONFIG_SND_SOC_MT6797 is not set
+# CONFIG_SND_SOC_MT7986 is not set
+CONFIG_SND_SOC_MT8173=m
+# CONFIG_SND_SOC_MT8173_MAX98090 is not set
+CONFIG_SND_SOC_MT8173_RT5650=m
+CONFIG_SND_SOC_MT8173_RT5650_RT5514=m
+CONFIG_SND_SOC_MT8173_RT5650_RT5676=m
+CONFIG_SND_SOC_MT8183=m
+CONFIG_SND_SOC_MT8183_MT6358_TS3A227E_MAX98357A=m
+CONFIG_SND_SOC_MT8183_DA7219_MAX98357A=m
+# CONFIG_SND_SOC_MT8186 is not set
+# CONFIG_SND_SOC_MTK_BTCVSD is not set
+# CONFIG_SND_SOC_MT8188 is not set
+# CONFIG_SND_SOC_MT8192 is not set
+# CONFIG_SND_SOC_MT8195 is not set
+# CONFIG_SND_SOC_SOF_TOPLEVEL is not set
+
+#
+# STMicroelectronics STM32 SOC audio support
+#
+# end of STMicroelectronics STM32 SOC audio support
+
+# CONFIG_SND_SOC_XILINX_I2S is not set
+# CONFIG_SND_SOC_XILINX_AUDIO_FORMATTER is not set
+# CONFIG_SND_SOC_XILINX_SPDIF is not set
+# CONFIG_SND_SOC_XTFPGA_I2S is not set
+CONFIG_SND_SOC_I2C_AND_SPI=m
+
+#
+# CODEC drivers
+#
+# CONFIG_SND_SOC_AC97_CODEC is not set
+# CONFIG_SND_SOC_ADAU1372_I2C is not set
+# CONFIG_SND_SOC_ADAU1372_SPI is not set
+# CONFIG_SND_SOC_ADAU1701 is not set
+# CONFIG_SND_SOC_ADAU1761_I2C is not set
+# CONFIG_SND_SOC_ADAU1761_SPI is not set
+# CONFIG_SND_SOC_ADAU7002 is not set
+# CONFIG_SND_SOC_ADAU7118_HW is not set
+# CONFIG_SND_SOC_ADAU7118_I2C is not set
+# CONFIG_SND_SOC_AK4104 is not set
+# CONFIG_SND_SOC_AK4118 is not set
+# CONFIG_SND_SOC_AK4375 is not set
+# CONFIG_SND_SOC_AK4458 is not set
+# CONFIG_SND_SOC_AK4554 is not set
+# CONFIG_SND_SOC_AK4613 is not set
+# CONFIG_SND_SOC_AK4642 is not set
+# CONFIG_SND_SOC_AK5386 is not set
+# CONFIG_SND_SOC_AK5558 is not set
+# CONFIG_SND_SOC_ALC5623 is not set
+# CONFIG_SND_SOC_AUDIO_IIO_AUX is not set
+# CONFIG_SND_SOC_AW8738 is not set
+# CONFIG_SND_SOC_AW88395 is not set
+# CONFIG_SND_SOC_AW88261 is not set
+# CONFIG_SND_SOC_AW87390 is not set
+# CONFIG_SND_SOC_AW88399 is not set
+# CONFIG_SND_SOC_BD28623 is not set
+CONFIG_SND_SOC_BT_SCO=m
+# CONFIG_SND_SOC_CHV3_CODEC is not set
+CONFIG_SND_SOC_CROS_EC_CODEC=m
+# CONFIG_SND_SOC_CS35L32 is not set
+# CONFIG_SND_SOC_CS35L33 is not set
+# CONFIG_SND_SOC_CS35L34 is not set
+# CONFIG_SND_SOC_CS35L35 is not set
+# CONFIG_SND_SOC_CS35L36 is not set
+# CONFIG_SND_SOC_CS35L41_SPI is not set
+# CONFIG_SND_SOC_CS35L41_I2C is not set
+# CONFIG_SND_SOC_CS35L45_SPI is not set
+# CONFIG_SND_SOC_CS35L45_I2C is not set
+# CONFIG_SND_SOC_CS35L56_I2C is not set
+# CONFIG_SND_SOC_CS35L56_SPI is not set
+# CONFIG_SND_SOC_CS42L42 is not set
+# CONFIG_SND_SOC_CS42L51_I2C is not set
+# CONFIG_SND_SOC_CS42L52 is not set
+# CONFIG_SND_SOC_CS42L56 is not set
+# CONFIG_SND_SOC_CS42L73 is not set
+# CONFIG_SND_SOC_CS42L83 is not set
+# CONFIG_SND_SOC_CS4234 is not set
+# CONFIG_SND_SOC_CS4265 is not set
+# CONFIG_SND_SOC_CS4270 is not set
+# CONFIG_SND_SOC_CS4271_I2C is not set
+# CONFIG_SND_SOC_CS4271_SPI is not set
+# CONFIG_SND_SOC_CS42XX8_I2C is not set
+# CONFIG_SND_SOC_CS43130 is not set
+# CONFIG_SND_SOC_CS4341 is not set
+# CONFIG_SND_SOC_CS4349 is not set
+# CONFIG_SND_SOC_CS53L30 is not set
+# CONFIG_SND_SOC_CX2072X is not set
+# CONFIG_SND_SOC_DA7213 is not set
+CONFIG_SND_SOC_DA7219=m
+CONFIG_SND_SOC_DMIC=m
+CONFIG_SND_SOC_HDMI_CODEC=m
+# CONFIG_SND_SOC_ES7134 is not set
+# CONFIG_SND_SOC_ES7241 is not set
+# CONFIG_SND_SOC_ES8316 is not set
+# CONFIG_SND_SOC_ES8326 is not set
+CONFIG_SND_SOC_ES8328=m
+CONFIG_SND_SOC_ES8328_I2C=m
+CONFIG_SND_SOC_ES8328_SPI=m
+# CONFIG_SND_SOC_GTM601 is not set
+# CONFIG_SND_SOC_HDA is not set
+# CONFIG_SND_SOC_ICS43432 is not set
+# CONFIG_SND_SOC_IDT821034 is not set
+# CONFIG_SND_SOC_INNO_RK3036 is not set
+# CONFIG_SND_SOC_MAX98088 is not set
+# CONFIG_SND_SOC_MAX98090 is not set
+CONFIG_SND_SOC_MAX98357A=m
+# CONFIG_SND_SOC_MAX98504 is not set
+# CONFIG_SND_SOC_MAX9867 is not set
+# CONFIG_SND_SOC_MAX98927 is not set
+# CONFIG_SND_SOC_MAX98520 is not set
+# CONFIG_SND_SOC_MAX98373_I2C is not set
+# CONFIG_SND_SOC_MAX98388 is not set
+# CONFIG_SND_SOC_MAX98390 is not set
+# CONFIG_SND_SOC_MAX98396 is not set
+# CONFIG_SND_SOC_MAX9860 is not set
+# CONFIG_SND_SOC_MSM8916_WCD_ANALOG is not set
+# CONFIG_SND_SOC_MSM8916_WCD_DIGITAL is not set
+# CONFIG_SND_SOC_PCM1681 is not set
+# CONFIG_SND_SOC_PCM1789_I2C is not set
+# CONFIG_SND_SOC_PCM179X_I2C is not set
+# CONFIG_SND_SOC_PCM179X_SPI is not set
+# CONFIG_SND_SOC_PCM186X_I2C is not set
+# CONFIG_SND_SOC_PCM186X_SPI is not set
+# CONFIG_SND_SOC_PCM3060_I2C is not set
+# CONFIG_SND_SOC_PCM3060_SPI is not set
+# CONFIG_SND_SOC_PCM3168A_I2C is not set
+# CONFIG_SND_SOC_PCM3168A_SPI is not set
+# CONFIG_SND_SOC_PCM5102A is not set
+# CONFIG_SND_SOC_PCM512x_I2C is not set
+# CONFIG_SND_SOC_PCM512x_SPI is not set
+# CONFIG_SND_SOC_PEB2466 is not set
+# CONFIG_SND_SOC_RK3328 is not set
+CONFIG_SND_SOC_RL6231=m
+CONFIG_SND_SOC_RT1015=m
+CONFIG_SND_SOC_RT1015P=m
+CONFIG_SND_SOC_RT5514=m
+# CONFIG_SND_SOC_RT5616 is not set
+# CONFIG_SND_SOC_RT5631 is not set
+# CONFIG_SND_SOC_RT5640 is not set
+CONFIG_SND_SOC_RT5645=m
+CONFIG_SND_SOC_RT5659=m
+CONFIG_SND_SOC_RT5677=m
+CONFIG_SND_SOC_RT5677_SPI=m
+# CONFIG_SND_SOC_RT9120 is not set
+# CONFIG_SND_SOC_RTQ9128 is not set
+# CONFIG_SND_SOC_SGTL5000 is not set
+# CONFIG_SND_SOC_SIMPLE_AMPLIFIER is not set
+# CONFIG_SND_SOC_SIMPLE_MUX is not set
+# CONFIG_SND_SOC_SMA1303 is not set
+# CONFIG_SND_SOC_SPDIF is not set
+# CONFIG_SND_SOC_SRC4XXX_I2C is not set
+# CONFIG_SND_SOC_SSM2305 is not set
+# CONFIG_SND_SOC_SSM2518 is not set
+# CONFIG_SND_SOC_SSM2602_SPI is not set
+# CONFIG_SND_SOC_SSM2602_I2C is not set
+# CONFIG_SND_SOC_SSM3515 is not set
+# CONFIG_SND_SOC_SSM4567 is not set
+# CONFIG_SND_SOC_STA32X is not set
+# CONFIG_SND_SOC_STA350 is not set
+# CONFIG_SND_SOC_STI_SAS is not set
+# CONFIG_SND_SOC_TAS2552 is not set
+# CONFIG_SND_SOC_TAS2562 is not set
+# CONFIG_SND_SOC_TAS2764 is not set
+# CONFIG_SND_SOC_TAS2770 is not set
+# CONFIG_SND_SOC_TAS2780 is not set
+# CONFIG_SND_SOC_TAS2781_I2C is not set
+# CONFIG_SND_SOC_TAS5086 is not set
+# CONFIG_SND_SOC_TAS571X is not set
+# CONFIG_SND_SOC_TAS5720 is not set
+# CONFIG_SND_SOC_TAS5805M is not set
+# CONFIG_SND_SOC_TAS6424 is not set
+# CONFIG_SND_SOC_TDA7419 is not set
+# CONFIG_SND_SOC_TFA9879 is not set
+# CONFIG_SND_SOC_TFA989X is not set
+# CONFIG_SND_SOC_TLV320ADC3XXX is not set
+# CONFIG_SND_SOC_TLV320AIC23_I2C is not set
+# CONFIG_SND_SOC_TLV320AIC23_SPI is not set
+# CONFIG_SND_SOC_TLV320AIC31XX is not set
+# CONFIG_SND_SOC_TLV320AIC32X4_I2C is not set
+# CONFIG_SND_SOC_TLV320AIC32X4_SPI is not set
+# CONFIG_SND_SOC_TLV320AIC3X_I2C is not set
+# CONFIG_SND_SOC_TLV320AIC3X_SPI is not set
+# CONFIG_SND_SOC_TLV320ADCX140 is not set
+CONFIG_SND_SOC_TS3A227E=m
+# CONFIG_SND_SOC_TSCS42XX is not set
+# CONFIG_SND_SOC_TSCS454 is not set
+# CONFIG_SND_SOC_UDA1334 is not set
+# CONFIG_SND_SOC_WM8510 is not set
+# CONFIG_SND_SOC_WM8523 is not set
+# CONFIG_SND_SOC_WM8524 is not set
+# CONFIG_SND_SOC_WM8580 is not set
+# CONFIG_SND_SOC_WM8711 is not set
+# CONFIG_SND_SOC_WM8728 is not set
+# CONFIG_SND_SOC_WM8731_I2C is not set
+# CONFIG_SND_SOC_WM8731_SPI is not set
+# CONFIG_SND_SOC_WM8737 is not set
+# CONFIG_SND_SOC_WM8741 is not set
+# CONFIG_SND_SOC_WM8750 is not set
+# CONFIG_SND_SOC_WM8753 is not set
+# CONFIG_SND_SOC_WM8770 is not set
+# CONFIG_SND_SOC_WM8776 is not set
+# CONFIG_SND_SOC_WM8782 is not set
+# CONFIG_SND_SOC_WM8804_I2C is not set
+# CONFIG_SND_SOC_WM8804_SPI is not set
+# CONFIG_SND_SOC_WM8903 is not set
+# CONFIG_SND_SOC_WM8904 is not set
+# CONFIG_SND_SOC_WM8940 is not set
+# CONFIG_SND_SOC_WM8960 is not set
+# CONFIG_SND_SOC_WM8961 is not set
+# CONFIG_SND_SOC_WM8962 is not set
+# CONFIG_SND_SOC_WM8974 is not set
+# CONFIG_SND_SOC_WM8978 is not set
+# CONFIG_SND_SOC_WM8985 is not set
+# CONFIG_SND_SOC_ZL38060 is not set
+# CONFIG_SND_SOC_MAX9759 is not set
+CONFIG_SND_SOC_MT6351=m
+CONFIG_SND_SOC_MT6358=m
+# CONFIG_SND_SOC_MT6359 is not set
+# CONFIG_SND_SOC_MT6359_ACCDET is not set
+CONFIG_SND_SOC_MT6660=m
+# CONFIG_SND_SOC_NAU8315 is not set
+# CONFIG_SND_SOC_NAU8540 is not set
+# CONFIG_SND_SOC_NAU8810 is not set
+# CONFIG_SND_SOC_NAU8821 is not set
+# CONFIG_SND_SOC_NAU8822 is not set
+# CONFIG_SND_SOC_NAU8824 is not set
+# CONFIG_SND_SOC_TPA6130A2 is not set
+# CONFIG_SND_SOC_LPASS_WSA_MACRO is not set
+# CONFIG_SND_SOC_LPASS_VA_MACRO is not set
+# CONFIG_SND_SOC_LPASS_RX_MACRO is not set
+# CONFIG_SND_SOC_LPASS_TX_MACRO is not set
+# end of CODEC drivers
+
+# CONFIG_SND_SIMPLE_CARD is not set
+# CONFIG_SND_AUDIO_GRAPH_CARD is not set
+# CONFIG_SND_AUDIO_GRAPH_CARD2 is not set
+# CONFIG_SND_TEST_COMPONENT is not set
+# CONFIG_SND_VIRTIO is not set
+CONFIG_HID_SUPPORT=y
+CONFIG_HID=y
+CONFIG_HID_BATTERY_STRENGTH=y
+CONFIG_HIDRAW=y
+CONFIG_UHID=m
+CONFIG_HID_GENERIC=y
+
+#
+# Special HID drivers
+#
+# CONFIG_HID_A4TECH is not set
+# CONFIG_HID_ACCUTOUCH is not set
+# CONFIG_HID_ACRUX is not set
+# CONFIG_HID_APPLE is not set
+# CONFIG_HID_APPLEIR is not set
+# CONFIG_HID_ASUS is not set
+# CONFIG_HID_AUREAL is not set
+# CONFIG_HID_BELKIN is not set
+# CONFIG_HID_BETOP_FF is not set
+# CONFIG_HID_BIGBEN_FF is not set
+# CONFIG_HID_CHERRY is not set
+# CONFIG_HID_CHICONY is not set
+# CONFIG_HID_CORSAIR is not set
+# CONFIG_HID_COUGAR is not set
+# CONFIG_HID_MACALLY is not set
+# CONFIG_HID_PRODIKEYS is not set
+# CONFIG_HID_CMEDIA is not set
+# CONFIG_HID_CP2112 is not set
+# CONFIG_HID_CREATIVE_SB0540 is not set
+# CONFIG_HID_CYPRESS is not set
+# CONFIG_HID_DRAGONRISE is not set
+# CONFIG_HID_EMS_FF is not set
+# CONFIG_HID_ELAN is not set
+# CONFIG_HID_ELECOM is not set
+# CONFIG_HID_ELO is not set
+# CONFIG_HID_EVISION is not set
+# CONFIG_HID_EZKEY is not set
+# CONFIG_HID_FT260 is not set
+# CONFIG_HID_GEMBIRD is not set
+# CONFIG_HID_GFRM is not set
+# CONFIG_HID_GLORIOUS is not set
+# CONFIG_HID_HOLTEK is not set
+# CONFIG_HID_GOOGLE_HAMMER is not set
+# CONFIG_HID_GOOGLE_STADIA_FF is not set
+# CONFIG_HID_VIVALDI is not set
+# CONFIG_HID_GT683R is not set
+# CONFIG_HID_KEYTOUCH is not set
+# CONFIG_HID_KYE is not set
+CONFIG_HID_UCLOGIC=m
+# CONFIG_HID_WALTOP is not set
+# CONFIG_HID_VIEWSONIC is not set
+# CONFIG_HID_VRC2 is not set
+# CONFIG_HID_XIAOMI is not set
+# CONFIG_HID_GYRATION is not set
+# CONFIG_HID_ICADE is not set
+# CONFIG_HID_ITE is not set
+# CONFIG_HID_JABRA is not set
+# CONFIG_HID_TWINHAN is not set
+# CONFIG_HID_KENSINGTON is not set
+# CONFIG_HID_LCPOWER is not set
+# CONFIG_HID_LED is not set
+# CONFIG_HID_LENOVO is not set
+# CONFIG_HID_LETSKETCH is not set
+# CONFIG_HID_LOGITECH is not set
+# CONFIG_HID_MAGICMOUSE is not set
+# CONFIG_HID_MALTRON is not set
+# CONFIG_HID_MAYFLASH is not set
+# CONFIG_HID_MEGAWORLD_FF is not set
+# CONFIG_HID_REDRAGON is not set
+# CONFIG_HID_MICROSOFT is not set
+# CONFIG_HID_MONTEREY is not set
+CONFIG_HID_MULTITOUCH=m
+# CONFIG_HID_NINTENDO is not set
+# CONFIG_HID_NTI is not set
+# CONFIG_HID_NTRIG is not set
+# CONFIG_HID_ORTEK is not set
+# CONFIG_HID_PANTHERLORD is not set
+# CONFIG_HID_PENMOUNT is not set
+# CONFIG_HID_PETALYNX is not set
+# CONFIG_HID_PICOLCD is not set
+# CONFIG_HID_PLANTRONICS is not set
+# CONFIG_HID_PLAYSTATION is not set
+# CONFIG_HID_PXRC is not set
+# CONFIG_HID_RAZER is not set
+# CONFIG_HID_PRIMAX is not set
+# CONFIG_HID_RETRODE is not set
+# CONFIG_HID_ROCCAT is not set
+# CONFIG_HID_SAITEK is not set
+# CONFIG_HID_SAMSUNG is not set
+# CONFIG_HID_SEMITEK is not set
+# CONFIG_HID_SIGMAMICRO is not set
+# CONFIG_HID_SONY is not set
+# CONFIG_HID_SPEEDLINK is not set
+# CONFIG_HID_STEAM is not set
+# CONFIG_HID_STEELSERIES is not set
+# CONFIG_HID_SUNPLUS is not set
+CONFIG_HID_RMI=y
+# CONFIG_HID_GREENASIA is not set
+# CONFIG_HID_SMARTJOYPLUS is not set
+# CONFIG_HID_TIVO is not set
+# CONFIG_HID_TOPSEED is not set
+# CONFIG_HID_TOPRE is not set
+# CONFIG_HID_THINGM is not set
+# CONFIG_HID_THRUSTMASTER is not set
+# CONFIG_HID_UDRAW_PS3 is not set
+# CONFIG_HID_U2FZERO is not set
+# CONFIG_HID_WACOM is not set
+# CONFIG_HID_WIIMOTE is not set
+# CONFIG_HID_XINMO is not set
+# CONFIG_HID_ZEROPLUS is not set
+# CONFIG_HID_ZYDACRON is not set
+# CONFIG_HID_SENSOR_HUB is not set
+# CONFIG_HID_ALPS is not set
+# CONFIG_HID_MCP2200 is not set
+# CONFIG_HID_MCP2221 is not set
+# end of Special HID drivers
+
+#
+# HID-BPF support
+#
+# end of HID-BPF support
+
+#
+# USB HID support
+#
+CONFIG_USB_HID=y
+CONFIG_HID_PID=y
+CONFIG_USB_HIDDEV=y
+# end of USB HID support
+
+CONFIG_I2C_HID=y
+CONFIG_I2C_HID_OF=m
+CONFIG_I2C_HID_OF_ELAN=m
+# CONFIG_I2C_HID_OF_GOODIX is not set
+CONFIG_I2C_HID_CORE=m
+CONFIG_USB_OHCI_LITTLE_ENDIAN=y
+CONFIG_USB_SUPPORT=y
+CONFIG_USB_COMMON=y
+# CONFIG_USB_LED_TRIG is not set
+CONFIG_USB_ULPI_BUS=y
+CONFIG_USB_CONN_GPIO=m
+CONFIG_USB_ARCH_HAS_HCD=y
+CONFIG_USB=y
+CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
+
+#
+# Miscellaneous USB options
+#
+CONFIG_USB_DEFAULT_PERSIST=y
+# CONFIG_USB_FEW_INIT_RETRIES is not set
+# CONFIG_USB_DYNAMIC_MINORS is not set
+CONFIG_USB_OTG=y
+# CONFIG_USB_OTG_PRODUCTLIST is not set
+# CONFIG_USB_OTG_DISABLE_EXTERNAL_HUB is not set
+# CONFIG_USB_OTG_FSM is not set
+# CONFIG_USB_LEDS_TRIGGER_USBPORT is not set
+CONFIG_USB_AUTOSUSPEND_DELAY=2
+CONFIG_USB_MON=m
+
+#
+# USB Host Controller Drivers
+#
+# CONFIG_USB_C67X00_HCD is not set
+CONFIG_USB_XHCI_HCD=y
+CONFIG_USB_XHCI_DBGCAP=y
+# CONFIG_USB_XHCI_PCI_RENESAS is not set
+CONFIG_USB_XHCI_PLATFORM=y
+CONFIG_USB_XHCI_MTK=y
+CONFIG_USB_EHCI_HCD=y
+CONFIG_USB_EHCI_ROOT_HUB_TT=y
+CONFIG_USB_EHCI_TT_NEWSCHED=y
+# CONFIG_USB_EHCI_FSL is not set
+CONFIG_USB_EHCI_HCD_PLATFORM=y
+# CONFIG_USB_OXU210HP_HCD is not set
+# CONFIG_USB_ISP116X_HCD is not set
+# CONFIG_USB_MAX3421_HCD is not set
+CONFIG_USB_OHCI_HCD=y
+CONFIG_USB_OHCI_HCD_PLATFORM=y
+# CONFIG_USB_SL811_HCD is not set
+# CONFIG_USB_R8A66597_HCD is not set
+# CONFIG_USB_HCD_SSB is not set
+# CONFIG_USB_HCD_TEST_MODE is not set
+
+#
+# USB Device Class drivers
+#
+CONFIG_USB_ACM=m
+# CONFIG_USB_PRINTER is not set
+CONFIG_USB_WDM=m
+CONFIG_USB_TMC=m
+
+#
+# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may
+#
+
+#
+# also be needed; see USB_STORAGE Help for more info
+#
+CONFIG_USB_STORAGE=y
+# CONFIG_USB_STORAGE_DEBUG is not set
+CONFIG_USB_STORAGE_REALTEK=m
+CONFIG_REALTEK_AUTOPM=y
+CONFIG_USB_STORAGE_DATAFAB=m
+CONFIG_USB_STORAGE_FREECOM=m
+CONFIG_USB_STORAGE_ISD200=m
+CONFIG_USB_STORAGE_USBAT=m
+CONFIG_USB_STORAGE_SDDR09=m
+CONFIG_USB_STORAGE_SDDR55=m
+CONFIG_USB_STORAGE_JUMPSHOT=m
+CONFIG_USB_STORAGE_ALAUDA=m
+CONFIG_USB_STORAGE_ONETOUCH=m
+CONFIG_USB_STORAGE_KARMA=m
+CONFIG_USB_STORAGE_CYPRESS_ATACB=m
+CONFIG_USB_STORAGE_ENE_UB6250=m
+CONFIG_USB_UAS=y
+
+#
+# USB Imaging devices
+#
+# CONFIG_USB_MDC800 is not set
+# CONFIG_USB_MICROTEK is not set
+CONFIG_USBIP_CORE=m
+CONFIG_USBIP_VHCI_HCD=m
+CONFIG_USBIP_VHCI_HC_PORTS=8
+CONFIG_USBIP_VHCI_NR_HCS=1
+CONFIG_USBIP_HOST=m
+# CONFIG_USBIP_DEBUG is not set
+
+#
+# USB dual-mode controller drivers
+#
+# CONFIG_USB_CDNS_SUPPORT is not set
+CONFIG_USB_MTU3=y
+CONFIG_USB_MTU3_HOST=y
+# CONFIG_USB_MTU3_DEBUG is not set
+# CONFIG_USB_MUSB_HDRC is not set
+# CONFIG_USB_DWC3 is not set
+# CONFIG_USB_DWC2 is not set
+# CONFIG_USB_CHIPIDEA is not set
+# CONFIG_USB_ISP1760 is not set
+
+#
+# USB port drivers
+#
+CONFIG_USB_SERIAL=m
+CONFIG_USB_SERIAL_GENERIC=y
+CONFIG_USB_SERIAL_SIMPLE=m
+CONFIG_USB_SERIAL_AIRCABLE=m
+CONFIG_USB_SERIAL_ARK3116=m
+CONFIG_USB_SERIAL_BELKIN=m
+CONFIG_USB_SERIAL_CH341=m
+CONFIG_USB_SERIAL_WHITEHEAT=m
+CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m
+CONFIG_USB_SERIAL_CP210X=m
+CONFIG_USB_SERIAL_CYPRESS_M8=m
+CONFIG_USB_SERIAL_EMPEG=m
+CONFIG_USB_SERIAL_FTDI_SIO=m
+CONFIG_USB_SERIAL_VISOR=m
+CONFIG_USB_SERIAL_IPAQ=m
+CONFIG_USB_SERIAL_IR=m
+CONFIG_USB_SERIAL_EDGEPORT=m
+CONFIG_USB_SERIAL_EDGEPORT_TI=m
+CONFIG_USB_SERIAL_F81232=m
+CONFIG_USB_SERIAL_F8153X=m
+CONFIG_USB_SERIAL_GARMIN=m
+CONFIG_USB_SERIAL_IPW=m
+CONFIG_USB_SERIAL_IUU=m
+CONFIG_USB_SERIAL_KEYSPAN_PDA=m
+CONFIG_USB_SERIAL_KEYSPAN=m
+CONFIG_USB_SERIAL_KLSI=m
+CONFIG_USB_SERIAL_KOBIL_SCT=m
+CONFIG_USB_SERIAL_MCT_U232=m
+CONFIG_USB_SERIAL_METRO=m
+CONFIG_USB_SERIAL_MOS7720=m
+CONFIG_USB_SERIAL_MOS7840=m
+CONFIG_USB_SERIAL_MXUPORT=m
+CONFIG_USB_SERIAL_NAVMAN=m
+CONFIG_USB_SERIAL_PL2303=m
+CONFIG_USB_SERIAL_OTI6858=m
+CONFIG_USB_SERIAL_QCAUX=m
+CONFIG_USB_SERIAL_QUALCOMM=m
+CONFIG_USB_SERIAL_SPCP8X5=m
+CONFIG_USB_SERIAL_SAFE=m
+CONFIG_USB_SERIAL_SAFE_PADDED=y
+CONFIG_USB_SERIAL_SIERRAWIRELESS=m
+CONFIG_USB_SERIAL_SYMBOL=m
+CONFIG_USB_SERIAL_TI=m
+CONFIG_USB_SERIAL_CYBERJACK=m
+CONFIG_USB_SERIAL_WWAN=m
+CONFIG_USB_SERIAL_OPTION=m
+CONFIG_USB_SERIAL_OMNINET=m
+CONFIG_USB_SERIAL_OPTICON=m
+CONFIG_USB_SERIAL_XSENS_MT=m
+CONFIG_USB_SERIAL_WISHBONE=m
+CONFIG_USB_SERIAL_SSU100=m
+CONFIG_USB_SERIAL_QT2=m
+# CONFIG_USB_SERIAL_UPD78F0730 is not set
+# CONFIG_USB_SERIAL_XR is not set
+# CONFIG_USB_SERIAL_DEBUG is not set
+
+#
+# USB Miscellaneous drivers
+#
+# CONFIG_USB_EMI62 is not set
+# CONFIG_USB_EMI26 is not set
+# CONFIG_USB_ADUTUX is not set
+# CONFIG_USB_SEVSEG is not set
+# CONFIG_USB_LEGOTOWER is not set
+# CONFIG_USB_LCD is not set
+# CONFIG_USB_CYPRESS_CY7C63 is not set
+# CONFIG_USB_CYTHERM is not set
+# CONFIG_USB_IDMOUSE is not set
+# CONFIG_USB_APPLEDISPLAY is not set
+# CONFIG_APPLE_MFI_FASTCHARGE is not set
+# CONFIG_USB_SISUSBVGA is not set
+# CONFIG_USB_LD is not set
+# CONFIG_USB_TRANCEVIBRATOR is not set
+# CONFIG_USB_IOWARRIOR is not set
+# CONFIG_USB_TEST is not set
+# CONFIG_USB_EHSET_TEST_FIXTURE is not set
+# CONFIG_USB_ISIGHTFW is not set
+# CONFIG_USB_YUREX is not set
+CONFIG_USB_EZUSB_FX2=m
+CONFIG_USB_HUB_USB251XB=m
+CONFIG_USB_HSIC_USB3503=m
+CONFIG_USB_HSIC_USB4604=m
+# CONFIG_USB_LINK_LAYER_TEST is not set
+# CONFIG_USB_CHAOSKEY is not set
+# CONFIG_USB_ONBOARD_HUB is not set
+
+#
+# USB Physical Layer drivers
+#
+CONFIG_USB_PHY=y
+CONFIG_NOP_USB_XCEIV=y
+# CONFIG_USB_GPIO_VBUS is not set
+# CONFIG_USB_ISP1301 is not set
+CONFIG_USB_ULPI=y
+CONFIG_USB_ULPI_VIEWPORT=y
+# end of USB Physical Layer drivers
+
+# CONFIG_USB_GADGET is not set
+CONFIG_TYPEC=y
+CONFIG_TYPEC_TCPM=m
+CONFIG_TYPEC_TCPCI=m
+# CONFIG_TYPEC_RT1711H is not set
+CONFIG_TYPEC_MT6360=m
+# CONFIG_TYPEC_TCPCI_MAXIM is not set
+# CONFIG_TYPEC_FUSB302 is not set
+CONFIG_TYPEC_UCSI=m
+# CONFIG_UCSI_CCG is not set
+# CONFIG_UCSI_STM32G0 is not set
+# CONFIG_TYPEC_TPS6598X is not set
+# CONFIG_TYPEC_ANX7411 is not set
+# CONFIG_TYPEC_RT1719 is not set
+# CONFIG_TYPEC_HD3SS3220 is not set
+# CONFIG_TYPEC_STUSB160X is not set
+# CONFIG_TYPEC_WUSB3801 is not set
+
+#
+# USB Type-C Multiplexer/DeMultiplexer Switch support
+#
+# CONFIG_TYPEC_MUX_FSA4480 is not set
+# CONFIG_TYPEC_MUX_GPIO_SBU is not set
+# CONFIG_TYPEC_MUX_PI3USB30532 is not set
+# CONFIG_TYPEC_MUX_NB7VPQ904M is not set
+# CONFIG_TYPEC_MUX_PTN36502 is not set
+# CONFIG_TYPEC_MUX_WCD939X_USBSS is not set
+# end of USB Type-C Multiplexer/DeMultiplexer Switch support
+
+#
+# USB Type-C Alternate Mode drivers
+#
+CONFIG_TYPEC_DP_ALTMODE=m
+# CONFIG_TYPEC_NVIDIA_ALTMODE is not set
+# end of USB Type-C Alternate Mode drivers
+
+CONFIG_USB_ROLE_SWITCH=m
+CONFIG_MMC=y
+CONFIG_PWRSEQ_EMMC=y
+# CONFIG_PWRSEQ_SD8787 is not set
+CONFIG_PWRSEQ_SIMPLE=y
+CONFIG_MMC_BLOCK=y
+CONFIG_MMC_BLOCK_MINORS=32
+# CONFIG_SDIO_UART is not set
+# CONFIG_MMC_TEST is not set
+
+#
+# MMC/SD/SDIO Host Controller Drivers
+#
+# CONFIG_MMC_DEBUG is not set
+# CONFIG_MMC_ARMMMCI is not set
+CONFIG_MMC_SDHCI=y
+CONFIG_MMC_SDHCI_PLTFM=y
+# CONFIG_MMC_SDHCI_OF_ARASAN is not set
+# CONFIG_MMC_SDHCI_OF_AT91 is not set
+# CONFIG_MMC_SDHCI_OF_DWCMSHC is not set
+# CONFIG_MMC_SDHCI_CADENCE is not set
+# CONFIG_MMC_SDHCI_F_SDH30 is not set
+# CONFIG_MMC_SDHCI_MILBEAUT is not set
+# CONFIG_MMC_SPI is not set
+# CONFIG_MMC_DW is not set
+# CONFIG_MMC_VUB300 is not set
+# CONFIG_MMC_USHC is not set
+# CONFIG_MMC_USDHI6ROL0 is not set
+CONFIG_MMC_CQHCI=y
+CONFIG_MMC_HSQ=y
+CONFIG_MMC_MTK=y
+# CONFIG_MMC_SDHCI_XENON is not set
+# CONFIG_SCSI_UFSHCD is not set
+# CONFIG_MEMSTICK is not set
+CONFIG_NEW_LEDS=y
+CONFIG_LEDS_CLASS=y
+CONFIG_LEDS_CLASS_FLASH=m
+CONFIG_LEDS_CLASS_MULTICOLOR=m
+# CONFIG_LEDS_BRIGHTNESS_HW_CHANGED is not set
+
+#
+# LED drivers
+#
+# CONFIG_LEDS_AN30259A is not set
+# CONFIG_LEDS_AW200XX is not set
+# CONFIG_LEDS_AW2013 is not set
+# CONFIG_LEDS_BCM6328 is not set
+# CONFIG_LEDS_BCM6358 is not set
+# CONFIG_LEDS_CR0014114 is not set
+# CONFIG_LEDS_EL15203000 is not set
+# CONFIG_LEDS_LM3530 is not set
+# CONFIG_LEDS_LM3532 is not set
+# CONFIG_LEDS_LM3642 is not set
+# CONFIG_LEDS_LM3692X is not set
+CONFIG_LEDS_MT6323=m
+# CONFIG_LEDS_PCA9532 is not set
+# CONFIG_LEDS_GPIO is not set
+# CONFIG_LEDS_LP3944 is not set
+# CONFIG_LEDS_LP3952 is not set
+# CONFIG_LEDS_LP50XX is not set
+# CONFIG_LEDS_LP55XX_COMMON is not set
+# CONFIG_LEDS_LP8860 is not set
+# CONFIG_LEDS_PCA955X is not set
+# CONFIG_LEDS_PCA963X is not set
+# CONFIG_LEDS_PCA995X is not set
+# CONFIG_LEDS_DAC124S085 is not set
+# CONFIG_LEDS_PWM is not set
+# CONFIG_LEDS_REGULATOR is not set
+# CONFIG_LEDS_BD2606MVV is not set
+# CONFIG_LEDS_BD2802 is not set
+# CONFIG_LEDS_LT3593 is not set
+# CONFIG_LEDS_TCA6507 is not set
+# CONFIG_LEDS_TLC591XX is not set
+# CONFIG_LEDS_LM355x is not set
+# CONFIG_LEDS_IS31FL319X is not set
+# CONFIG_LEDS_IS31FL32XX is not set
+
+#
+# LED driver for blink(1) USB RGB LED is under Special HID drivers (HID_THINGM)
+#
+CONFIG_LEDS_BLINKM=m
+CONFIG_LEDS_SYSCON=y
+# CONFIG_LEDS_MLXREG is not set
+CONFIG_LEDS_USER=m
+# CONFIG_LEDS_SPI_BYTE is not set
+# CONFIG_LEDS_LM3697 is not set
+
+#
+# Flash and Torch LED drivers
+#
+# CONFIG_LEDS_AAT1290 is not set
+# CONFIG_LEDS_AS3645A is not set
+# CONFIG_LEDS_KTD2692 is not set
+# CONFIG_LEDS_LM3601X is not set
+# CONFIG_LEDS_MT6360 is not set
+# CONFIG_LEDS_RT4505 is not set
+# CONFIG_LEDS_RT8515 is not set
+# CONFIG_LEDS_SGM3140 is not set
+
+#
+# RGB LED drivers
+#
+# CONFIG_LEDS_GROUP_MULTICOLOR is not set
+# CONFIG_LEDS_KTD202X is not set
+# CONFIG_LEDS_PWM_MULTICOLOR is not set
+# CONFIG_LEDS_QCOM_LPG is not set
+
+#
+# LED Triggers
+#
+CONFIG_LEDS_TRIGGERS=y
+# CONFIG_LEDS_TRIGGER_TIMER is not set
+# CONFIG_LEDS_TRIGGER_ONESHOT is not set
+# CONFIG_LEDS_TRIGGER_HEARTBEAT is not set
+# CONFIG_LEDS_TRIGGER_BACKLIGHT is not set
+# CONFIG_LEDS_TRIGGER_CPU is not set
+# CONFIG_LEDS_TRIGGER_ACTIVITY is not set
+# CONFIG_LEDS_TRIGGER_GPIO is not set
+# CONFIG_LEDS_TRIGGER_DEFAULT_ON is not set
+
+#
+# iptables trigger is under Netfilter config (LED target)
+#
+# CONFIG_LEDS_TRIGGER_TRANSIENT is not set
+# CONFIG_LEDS_TRIGGER_CAMERA is not set
+# CONFIG_LEDS_TRIGGER_PANIC is not set
+# CONFIG_LEDS_TRIGGER_NETDEV is not set
+# CONFIG_LEDS_TRIGGER_PATTERN is not set
+# CONFIG_LEDS_TRIGGER_AUDIO is not set
+# CONFIG_LEDS_TRIGGER_TTY is not set
+
+#
+# Simple LED drivers
+#
+# CONFIG_ACCESSIBILITY is not set
+# CONFIG_INFINIBAND is not set
+CONFIG_EDAC_SUPPORT=y
+# CONFIG_EDAC is not set
+CONFIG_RTC_LIB=y
+CONFIG_RTC_CLASS=y
+CONFIG_RTC_HCTOSYS=y
+CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
+CONFIG_RTC_SYSTOHC=y
+CONFIG_RTC_SYSTOHC_DEVICE="rtc0"
+# CONFIG_RTC_DEBUG is not set
+CONFIG_RTC_NVMEM=y
+
+#
+# RTC interfaces
+#
+CONFIG_RTC_INTF_SYSFS=y
+CONFIG_RTC_INTF_PROC=y
+CONFIG_RTC_INTF_DEV=y
+# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set
+# CONFIG_RTC_DRV_TEST is not set
+
+#
+# I2C RTC drivers
+#
+# CONFIG_RTC_DRV_ABB5ZES3 is not set
+# CONFIG_RTC_DRV_ABEOZ9 is not set
+# CONFIG_RTC_DRV_ABX80X is not set
+CONFIG_RTC_DRV_AS3722=m
+# CONFIG_RTC_DRV_DS1307 is not set
+# CONFIG_RTC_DRV_DS1374 is not set
+# CONFIG_RTC_DRV_DS1672 is not set
+# CONFIG_RTC_DRV_HYM8563 is not set
+# CONFIG_RTC_DRV_MAX6900 is not set
+# CONFIG_RTC_DRV_MAX31335 is not set
+# CONFIG_RTC_DRV_NCT3018Y is not set
+# CONFIG_RTC_DRV_RS5C372 is not set
+# CONFIG_RTC_DRV_ISL1208 is not set
+# CONFIG_RTC_DRV_ISL12022 is not set
+# CONFIG_RTC_DRV_ISL12026 is not set
+# CONFIG_RTC_DRV_X1205 is not set
+# CONFIG_RTC_DRV_PCF8523 is not set
+# CONFIG_RTC_DRV_PCF85063 is not set
+# CONFIG_RTC_DRV_PCF85363 is not set
+# CONFIG_RTC_DRV_PCF8563 is not set
+# CONFIG_RTC_DRV_PCF8583 is not set
+# CONFIG_RTC_DRV_M41T80 is not set
+# CONFIG_RTC_DRV_BQ32K is not set
+CONFIG_RTC_DRV_PALMAS=m
+CONFIG_RTC_DRV_TPS6586X=m
+# CONFIG_RTC_DRV_S35390A is not set
+# CONFIG_RTC_DRV_FM3130 is not set
+# CONFIG_RTC_DRV_RX8010 is not set
+# CONFIG_RTC_DRV_RX8581 is not set
+# CONFIG_RTC_DRV_RX8025 is not set
+# CONFIG_RTC_DRV_EM3027 is not set
+# CONFIG_RTC_DRV_RV3028 is not set
+# CONFIG_RTC_DRV_RV3032 is not set
+# CONFIG_RTC_DRV_RV8803 is not set
+# CONFIG_RTC_DRV_SD3078 is not set
+
+#
+# SPI RTC drivers
+#
+# CONFIG_RTC_DRV_M41T93 is not set
+# CONFIG_RTC_DRV_M41T94 is not set
+# CONFIG_RTC_DRV_DS1302 is not set
+# CONFIG_RTC_DRV_DS1305 is not set
+# CONFIG_RTC_DRV_DS1343 is not set
+# CONFIG_RTC_DRV_DS1347 is not set
+# CONFIG_RTC_DRV_DS1390 is not set
+# CONFIG_RTC_DRV_MAX6916 is not set
+# CONFIG_RTC_DRV_R9701 is not set
+# CONFIG_RTC_DRV_RX4581 is not set
+# CONFIG_RTC_DRV_RS5C348 is not set
+# CONFIG_RTC_DRV_MAX6902 is not set
+# CONFIG_RTC_DRV_PCF2123 is not set
+# CONFIG_RTC_DRV_MCP795 is not set
+CONFIG_RTC_I2C_AND_SPI=y
+
+#
+# SPI and I2C RTC drivers
+#
+# CONFIG_RTC_DRV_DS3232 is not set
+# CONFIG_RTC_DRV_PCF2127 is not set
+# CONFIG_RTC_DRV_RV3029C2 is not set
+# CONFIG_RTC_DRV_RX6110 is not set
+
+#
+# Platform RTC drivers
+#
+# CONFIG_RTC_DRV_DS1286 is not set
+# CONFIG_RTC_DRV_DS1511 is not set
+# CONFIG_RTC_DRV_DS1553 is not set
+# CONFIG_RTC_DRV_DS1685_FAMILY is not set
+# CONFIG_RTC_DRV_DS1742 is not set
+# CONFIG_RTC_DRV_DS2404 is not set
+CONFIG_RTC_DRV_EFI=m
+# CONFIG_RTC_DRV_STK17TA8 is not set
+# CONFIG_RTC_DRV_M48T86 is not set
+# CONFIG_RTC_DRV_M48T35 is not set
+# CONFIG_RTC_DRV_M48T59 is not set
+# CONFIG_RTC_DRV_MSM6242 is not set
+# CONFIG_RTC_DRV_RP5C01 is not set
+# CONFIG_RTC_DRV_ZYNQMP is not set
+CONFIG_RTC_DRV_CROS_EC=m
+
+#
+# on-CPU RTC drivers
+#
+# CONFIG_RTC_DRV_PL030 is not set
+# CONFIG_RTC_DRV_PL031 is not set
+# CONFIG_RTC_DRV_CADENCE is not set
+# CONFIG_RTC_DRV_FTRTC010 is not set
+# CONFIG_RTC_DRV_MT2712 is not set
+CONFIG_RTC_DRV_MT6397=m
+CONFIG_RTC_DRV_MT7622=m
+# CONFIG_RTC_DRV_R7301 is not set
+
+#
+# HID Sensor RTC drivers
+#
+# CONFIG_RTC_DRV_GOLDFISH is not set
+CONFIG_DMADEVICES=y
+# CONFIG_DMADEVICES_DEBUG is not set
+
+#
+# DMA Devices
+#
+CONFIG_ASYNC_TX_ENABLE_CHANNEL_SWITCH=y
+CONFIG_DMA_ENGINE=y
+CONFIG_DMA_VIRTUAL_CHANNELS=y
+CONFIG_DMA_OF=y
+# CONFIG_ALTERA_MSGDMA is not set
+# CONFIG_AMBA_PL08X is not set
+# CONFIG_BCM_SBA_RAID is not set
+# CONFIG_DW_AXI_DMAC is not set
+# CONFIG_FSL_EDMA is not set
+# CONFIG_FSL_QDMA is not set
+# CONFIG_INTEL_IDMA64 is not set
+# CONFIG_MV_XOR_V2 is not set
+# CONFIG_PL330_DMA is not set
+# CONFIG_XILINX_DMA is not set
+# CONFIG_XILINX_XDMA is not set
+# CONFIG_XILINX_ZYNQMP_DMA is not set
+# CONFIG_XILINX_ZYNQMP_DPDMA is not set
+CONFIG_MTK_HSDMA=y
+CONFIG_MTK_CQDMA=y
+# CONFIG_MTK_UART_APDMA is not set
+# CONFIG_QCOM_HIDMA_MGMT is not set
+# CONFIG_QCOM_HIDMA is not set
+# CONFIG_DW_DMAC is not set
+# CONFIG_SF_PDMA is not set
+
+#
+# DMA Clients
+#
+CONFIG_ASYNC_TX_DMA=y
+# CONFIG_DMATEST is not set
+
+#
+# DMABUF options
+#
+CONFIG_SYNC_FILE=y
+# CONFIG_UDMABUF is not set
+# CONFIG_DMABUF_MOVE_NOTIFY is not set
+# CONFIG_DMABUF_DEBUG is not set
+# CONFIG_DMABUF_SELFTESTS is not set
+CONFIG_DMABUF_HEAPS=y
+# CONFIG_DMABUF_SYSFS_STATS is not set
+CONFIG_DMABUF_HEAPS_SYSTEM=y
+# end of DMABUF options
+
+# CONFIG_UIO is not set
+CONFIG_VFIO=m
+CONFIG_VFIO_GROUP=y
+CONFIG_VFIO_CONTAINER=y
+CONFIG_VFIO_IOMMU_TYPE1=m
+CONFIG_VFIO_NOIOMMU=y
+CONFIG_VFIO_VIRQFD=y
+
+#
+# VFIO support for platform devices
+#
+CONFIG_VFIO_PLATFORM_BASE=m
+CONFIG_VFIO_PLATFORM=m
+# CONFIG_VFIO_AMBA is not set
+
+#
+# VFIO platform reset drivers
+#
+# CONFIG_VFIO_PLATFORM_CALXEDAXGMAC_RESET is not set
+# CONFIG_VFIO_PLATFORM_AMDXGBE_RESET is not set
+# end of VFIO platform reset drivers
+# end of VFIO support for platform devices
+
+CONFIG_IRQ_BYPASS_MANAGER=y
+CONFIG_VIRT_DRIVERS=y
+CONFIG_VIRTIO_ANCHOR=y
+CONFIG_VIRTIO=m
+CONFIG_VIRTIO_MENU=y
+CONFIG_VIRTIO_BALLOON=m
+CONFIG_VIRTIO_INPUT=m
+CONFIG_VIRTIO_MMIO=m
+CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES=y
+# CONFIG_VDPA is not set
+CONFIG_VHOST_IOTLB=m
+CONFIG_VHOST_TASK=y
+CONFIG_VHOST=m
+CONFIG_VHOST_MENU=y
+CONFIG_VHOST_NET=m
+# CONFIG_VHOST_CROSS_ENDIAN_LEGACY is not set
+
+#
+# Microsoft Hyper-V guest support
+#
+# end of Microsoft Hyper-V guest support
+
+# CONFIG_GREYBUS is not set
+# CONFIG_COMEDI is not set
+CONFIG_STAGING=y
+# CONFIG_PRISM2_USB is not set
+# CONFIG_RTLLIB is not set
+# CONFIG_RTL8723BS is not set
+# CONFIG_R8712U is not set
+# CONFIG_VT6656 is not set
+
+#
+# IIO staging drivers
+#
+
+#
+# Accelerometers
+#
+# CONFIG_ADIS16203 is not set
+# CONFIG_ADIS16240 is not set
+# end of Accelerometers
+
+#
+# Analog to digital converters
+#
+# CONFIG_AD7816 is not set
+# end of Analog to digital converters
+
+#
+# Analog digital bi-direction converters
+#
+# CONFIG_ADT7316 is not set
+# end of Analog digital bi-direction converters
+
+#
+# Direct Digital Synthesis
+#
+# CONFIG_AD9832 is not set
+# CONFIG_AD9834 is not set
+# end of Direct Digital Synthesis
+
+#
+# Network Analyzer, Impedance Converters
+#
+# CONFIG_AD5933 is not set
+# end of Network Analyzer, Impedance Converters
+# end of IIO staging drivers
+
+# CONFIG_STAGING_MEDIA is not set
+CONFIG_STAGING_BOARD=y
+# CONFIG_LTE_GDM724X is not set
+# CONFIG_FB_TFT is not set
+# CONFIG_KS7010 is not set
+# CONFIG_PI433 is not set
+# CONFIG_XIL_AXIS_FIFO is not set
+# CONFIG_FIELDBUS_DEV is not set
+# CONFIG_GOLDFISH is not set
+CONFIG_CHROME_PLATFORMS=y
+CONFIG_CROS_EC=y
+CONFIG_CROS_EC_I2C=y
+CONFIG_CROS_EC_SPI=y
+CONFIG_CROS_EC_PROTO=y
+CONFIG_CROS_KBD_LED_BACKLIGHT=m
+CONFIG_CROS_EC_CHARDEV=y
+CONFIG_CROS_EC_LIGHTBAR=y
+CONFIG_CROS_EC_VBC=m
+CONFIG_CROS_EC_SENSORHUB=y
+CONFIG_CROS_EC_SYSFS=m
+CONFIG_CROS_EC_TYPEC=m
+# CONFIG_CROS_HPS_I2C is not set
+CONFIG_CROS_USBPD_LOGGER=m
+CONFIG_CROS_USBPD_NOTIFY=y
+# CONFIG_MELLANOX_PLATFORM is not set
+# CONFIG_SURFACE_PLATFORMS is not set
+CONFIG_HAVE_CLK=y
+CONFIG_HAVE_CLK_PREPARE=y
+CONFIG_COMMON_CLK=y
+
+#
+# Clock driver for ARM Reference designs
+#
+# CONFIG_CLK_ICST is not set
+# CONFIG_CLK_SP810 is not set
+# end of Clock driver for ARM Reference designs
+
+# CONFIG_LMK04832 is not set
+# CONFIG_COMMON_CLK_MAX9485 is not set
+# CONFIG_COMMON_CLK_SCMI is not set
+# CONFIG_COMMON_CLK_SCPI is not set
+# CONFIG_COMMON_CLK_SI5341 is not set
+# CONFIG_COMMON_CLK_SI5351 is not set
+# CONFIG_COMMON_CLK_SI514 is not set
+# CONFIG_COMMON_CLK_SI544 is not set
+# CONFIG_COMMON_CLK_SI570 is not set
+# CONFIG_COMMON_CLK_CDCE706 is not set
+# CONFIG_COMMON_CLK_CDCE925 is not set
+# CONFIG_COMMON_CLK_CS2000_CP is not set
+# CONFIG_COMMON_CLK_AXI_CLKGEN is not set
+# CONFIG_COMMON_CLK_XGENE is not set
+# CONFIG_COMMON_CLK_PALMAS is not set
+# CONFIG_COMMON_CLK_PWM is not set
+# CONFIG_COMMON_CLK_RS9_PCIE is not set
+# CONFIG_COMMON_CLK_SI521XX is not set
+# CONFIG_COMMON_CLK_VC3 is not set
+# CONFIG_COMMON_CLK_VC5 is not set
+# CONFIG_COMMON_CLK_VC7 is not set
+# CONFIG_COMMON_CLK_FIXED_MMIO is not set
+
+#
+# Clock driver for MediaTek SoC
+#
+CONFIG_COMMON_CLK_MEDIATEK=y
+CONFIG_COMMON_CLK_MEDIATEK_FHCTL=y
+CONFIG_COMMON_CLK_MT2712=y
+# CONFIG_COMMON_CLK_MT2712_BDPSYS is not set
+# CONFIG_COMMON_CLK_MT2712_IMGSYS is not set
+# CONFIG_COMMON_CLK_MT2712_JPGDECSYS is not set
+# CONFIG_COMMON_CLK_MT2712_MFGCFG is not set
+# CONFIG_COMMON_CLK_MT2712_MMSYS is not set
+# CONFIG_COMMON_CLK_MT2712_VDECSYS is not set
+# CONFIG_COMMON_CLK_MT2712_VENCSYS is not set
+CONFIG_COMMON_CLK_MT6765=y
+CONFIG_COMMON_CLK_MT6765_AUDIOSYS=y
+# CONFIG_COMMON_CLK_MT6765_CAMSYS is not set
+# CONFIG_COMMON_CLK_MT6765_GCESYS is not set
+# CONFIG_COMMON_CLK_MT6765_MMSYS is not set
+# CONFIG_COMMON_CLK_MT6765_IMGSYS is not set
+# CONFIG_COMMON_CLK_MT6765_VCODECSYS is not set
+# CONFIG_COMMON_CLK_MT6765_MFGSYS is not set
+# CONFIG_COMMON_CLK_MT6765_MIPI0ASYS is not set
+# CONFIG_COMMON_CLK_MT6765_MIPI0BSYS is not set
+# CONFIG_COMMON_CLK_MT6765_MIPI1ASYS is not set
+# CONFIG_COMMON_CLK_MT6765_MIPI1BSYS is not set
+# CONFIG_COMMON_CLK_MT6765_MIPI2ASYS is not set
+# CONFIG_COMMON_CLK_MT6765_MIPI2BSYS is not set
+# CONFIG_COMMON_CLK_MT6779 is not set
+# CONFIG_COMMON_CLK_MT6795 is not set
+CONFIG_COMMON_CLK_MT6797=y
+CONFIG_COMMON_CLK_MT6797_MMSYS=y
+CONFIG_COMMON_CLK_MT6797_IMGSYS=y
+CONFIG_COMMON_CLK_MT6797_VDECSYS=y
+CONFIG_COMMON_CLK_MT6797_VENCSYS=y
+CONFIG_COMMON_CLK_MT7622=y
+# CONFIG_COMMON_CLK_MT7622_ETHSYS is not set
+# CONFIG_COMMON_CLK_MT7622_HIFSYS is not set
+# CONFIG_COMMON_CLK_MT7622_AUDSYS is not set
+CONFIG_COMMON_CLK_MT7981=y
+CONFIG_COMMON_CLK_MT7981_ETHSYS=y
+CONFIG_COMMON_CLK_MT7986=y
+CONFIG_COMMON_CLK_MT7986_ETHSYS=y
+# CONFIG_COMMON_CLK_MT7988 is not set
+CONFIG_COMMON_CLK_MT8167=y
+CONFIG_COMMON_CLK_MT8167_AUDSYS=y
+CONFIG_COMMON_CLK_MT8167_IMGSYS=y
+CONFIG_COMMON_CLK_MT8167_MFGCFG=y
+CONFIG_COMMON_CLK_MT8167_MMSYS=y
+CONFIG_COMMON_CLK_MT8167_VDECSYS=y
+CONFIG_COMMON_CLK_MT8173=y
+CONFIG_COMMON_CLK_MT8173_IMGSYS=y
+CONFIG_COMMON_CLK_MT8173_MMSYS=y
+CONFIG_COMMON_CLK_MT8173_VDECSYS=y
+CONFIG_COMMON_CLK_MT8173_VENCSYS=y
+CONFIG_COMMON_CLK_MT8183=y
+# CONFIG_COMMON_CLK_MT8183_AUDIOSYS is not set
+# CONFIG_COMMON_CLK_MT8183_CAMSYS is not set
+# CONFIG_COMMON_CLK_MT8183_IMGSYS is not set
+# CONFIG_COMMON_CLK_MT8183_IPU_CORE0 is not set
+# CONFIG_COMMON_CLK_MT8183_IPU_CORE1 is not set
+# CONFIG_COMMON_CLK_MT8183_IPU_ADL is not set
+# CONFIG_COMMON_CLK_MT8183_IPU_CONN is not set
+# CONFIG_COMMON_CLK_MT8183_MFGCFG is not set
+# CONFIG_COMMON_CLK_MT8183_MMSYS is not set
+# CONFIG_COMMON_CLK_MT8183_VDECSYS is not set
+# CONFIG_COMMON_CLK_MT8183_VENCSYS is not set
+# CONFIG_COMMON_CLK_MT8186 is not set
+# CONFIG_COMMON_CLK_MT8188 is not set
+CONFIG_COMMON_CLK_MT8192=y
+# CONFIG_COMMON_CLK_MT8192_AUDSYS is not set
+# CONFIG_COMMON_CLK_MT8192_CAMSYS is not set
+# CONFIG_COMMON_CLK_MT8192_IMGSYS is not set
+# CONFIG_COMMON_CLK_MT8192_IMP_IIC_WRAP is not set
+# CONFIG_COMMON_CLK_MT8192_IPESYS is not set
+# CONFIG_COMMON_CLK_MT8192_MDPSYS is not set
+# CONFIG_COMMON_CLK_MT8192_MFGCFG is not set
+# CONFIG_COMMON_CLK_MT8192_MMSYS is not set
+# CONFIG_COMMON_CLK_MT8192_MSDC is not set
+# CONFIG_COMMON_CLK_MT8192_SCP_ADSP is not set
+# CONFIG_COMMON_CLK_MT8192_VDECSYS is not set
+# CONFIG_COMMON_CLK_MT8192_VENCSYS is not set
+# CONFIG_COMMON_CLK_MT8195 is not set
+# CONFIG_COMMON_CLK_MT8365 is not set
+CONFIG_COMMON_CLK_MT8516=y
+# CONFIG_COMMON_CLK_MT8516_AUDSYS is not set
+# end of Clock driver for MediaTek SoC
+
+# CONFIG_XILINX_VCU is not set
+# CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set
+# CONFIG_HWSPINLOCK is not set
+
+#
+# Clock Source drivers
+#
+CONFIG_TIMER_OF=y
+CONFIG_TIMER_PROBE=y
+CONFIG_CLKSRC_MMIO=y
+CONFIG_ARM_ARCH_TIMER=y
+CONFIG_ARM_ARCH_TIMER_EVTSTREAM=y
+CONFIG_ARM_ARCH_TIMER_OOL_WORKAROUND=y
+CONFIG_FSL_ERRATUM_A008585=y
+CONFIG_HISILICON_ERRATUM_161010101=y
+CONFIG_ARM64_ERRATUM_858921=y
+CONFIG_MTK_TIMER=y
+CONFIG_MTK_CPUX_TIMER=y
+# end of Clock Source drivers
+
+CONFIG_MAILBOX=y
+CONFIG_ARM_MHU=m
+# CONFIG_ARM_MHU_V2 is not set
+CONFIG_PLATFORM_MHU=m
+# CONFIG_PL320_MBOX is not set
+# CONFIG_ALTERA_MBOX is not set
+# CONFIG_MAILBOX_TEST is not set
+# CONFIG_MTK_ADSP_MBOX is not set
+CONFIG_MTK_CMDQ_MBOX=y
+CONFIG_IOMMU_IOVA=y
+CONFIG_IOMMU_API=y
+CONFIG_IOMMU_SUPPORT=y
+
+#
+# Generic IOMMU Pagetable Support
+#
+CONFIG_IOMMU_IO_PGTABLE=y
+CONFIG_IOMMU_IO_PGTABLE_LPAE=y
+# CONFIG_IOMMU_IO_PGTABLE_LPAE_SELFTEST is not set
+CONFIG_IOMMU_IO_PGTABLE_ARMV7S=y
+# CONFIG_IOMMU_IO_PGTABLE_ARMV7S_SELFTEST is not set
+# CONFIG_IOMMU_IO_PGTABLE_DART is not set
+# end of Generic IOMMU Pagetable Support
+
+CONFIG_IOMMU_DEFAULT_DMA_STRICT=y
+# CONFIG_IOMMU_DEFAULT_DMA_LAZY is not set
+# CONFIG_IOMMU_DEFAULT_PASSTHROUGH is not set
+CONFIG_OF_IOMMU=y
+CONFIG_IOMMU_DMA=y
+# CONFIG_IOMMUFD is not set
+CONFIG_ARM_SMMU=m
+CONFIG_ARM_SMMU_DISABLE_BYPASS_BY_DEFAULT=y
+# CONFIG_ARM_SMMU_V3 is not set
+CONFIG_MTK_IOMMU=y
+CONFIG_VIRTIO_IOMMU=m
+
+#
+# Remoteproc drivers
+#
+# CONFIG_REMOTEPROC is not set
+# end of Remoteproc drivers
+
+#
+# Rpmsg drivers
+#
+# CONFIG_RPMSG_QCOM_GLINK_RPM is not set
+# CONFIG_RPMSG_VIRTIO is not set
+# end of Rpmsg drivers
+
+# CONFIG_SOUNDWIRE is not set
+
+#
+# SOC (System On Chip) specific Drivers
+#
+
+#
+# Amlogic SoC drivers
+#
+# end of Amlogic SoC drivers
+
+#
+# Broadcom SoC drivers
+#
+# end of Broadcom SoC drivers
+
+#
+# NXP/Freescale QorIQ SoC drivers
+#
+# CONFIG_QUICC_ENGINE is not set
+# CONFIG_FSL_RCPM is not set
+# end of NXP/Freescale QorIQ SoC drivers
+
+#
+# fujitsu SoC drivers
+#
+# end of fujitsu SoC drivers
+
+#
+# i.MX SoC drivers
+#
+# end of i.MX SoC drivers
+
+#
+# Enable LiteX SoC Builder specific drivers
+#
+# CONFIG_LITEX_SOC_CONTROLLER is not set
+# end of Enable LiteX SoC Builder specific drivers
+
+#
+# MediaTek SoC drivers
+#
+CONFIG_MTK_CMDQ=y
+CONFIG_MTK_DEVAPC=m
+CONFIG_MTK_INFRACFG=y
+CONFIG_MTK_PMIC_WRAP=y
+CONFIG_MTK_REGULATOR_COUPLER=y
+CONFIG_MTK_MMSYS=y
+# CONFIG_MTK_SVS is not set
+# end of MediaTek SoC drivers
+
+# CONFIG_WPCM450_SOC is not set
+
+#
+# Qualcomm SoC drivers
+#
+# end of Qualcomm SoC drivers
+
+# CONFIG_SOC_TI is not set
+
+#
+# Xilinx SoC drivers
+#
+# end of Xilinx SoC drivers
+# end of SOC (System On Chip) specific Drivers
+
+#
+# PM Domains
+#
+
+#
+# Amlogic PM Domains
+#
+# end of Amlogic PM Domains
+
+CONFIG_ARM_SCMI_PERF_DOMAIN=m
+CONFIG_ARM_SCMI_POWER_DOMAIN=m
+CONFIG_ARM_SCPI_POWER_DOMAIN=m
+
+#
+# Broadcom PM Domains
+#
+# end of Broadcom PM Domains
+
+#
+# i.MX PM Domains
+#
+# end of i.MX PM Domains
+
+#
+# MediaTek PM Domains
+#
+CONFIG_MTK_SCPSYS=y
+CONFIG_MTK_SCPSYS_PM_DOMAINS=y
+# end of MediaTek PM Domains
+
+#
+# Qualcomm PM Domains
+#
+# end of Qualcomm PM Domains
+# end of PM Domains
+
+CONFIG_PM_DEVFREQ=y
+
+#
+# DEVFREQ Governors
+#
+CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=y
+CONFIG_DEVFREQ_GOV_PERFORMANCE=y
+CONFIG_DEVFREQ_GOV_POWERSAVE=y
+CONFIG_DEVFREQ_GOV_USERSPACE=y
+# CONFIG_DEVFREQ_GOV_PASSIVE is not set
+
+#
+# DEVFREQ Drivers
+#
+# CONFIG_ARM_MEDIATEK_CCI_DEVFREQ is not set
+CONFIG_PM_DEVFREQ_EVENT=y
+CONFIG_EXTCON=y
+
+#
+# Extcon Device Drivers
+#
+# CONFIG_EXTCON_ADC_JACK is not set
+# CONFIG_EXTCON_FSA9480 is not set
+# CONFIG_EXTCON_GPIO is not set
+# CONFIG_EXTCON_MAX3355 is not set
+CONFIG_EXTCON_PALMAS=y
+# CONFIG_EXTCON_PTN5150 is not set
+# CONFIG_EXTCON_RT8973A is not set
+# CONFIG_EXTCON_SM5502 is not set
+# CONFIG_EXTCON_USB_GPIO is not set
+CONFIG_EXTCON_USBC_CROS_EC=y
+# CONFIG_EXTCON_USBC_TUSB320 is not set
+CONFIG_MEMORY=y
+# CONFIG_ARM_PL172_MPMC is not set
+CONFIG_MTK_SMI=y
+CONFIG_IIO=m
+CONFIG_IIO_BUFFER=y
+# CONFIG_IIO_BUFFER_CB is not set
+# CONFIG_IIO_BUFFER_DMA is not set
+# CONFIG_IIO_BUFFER_DMAENGINE is not set
+# CONFIG_IIO_BUFFER_HW_CONSUMER is not set
+CONFIG_IIO_KFIFO_BUF=m
+CONFIG_IIO_TRIGGERED_BUFFER=m
+CONFIG_IIO_CONFIGFS=m
+CONFIG_IIO_TRIGGER=y
+CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
+# CONFIG_IIO_SW_DEVICE is not set
+# CONFIG_IIO_SW_TRIGGER is not set
+# CONFIG_IIO_TRIGGERED_EVENT is not set
+
+#
+# Accelerometers
+#
+# CONFIG_ADIS16201 is not set
+# CONFIG_ADIS16209 is not set
+# CONFIG_ADXL313_I2C is not set
+# CONFIG_ADXL313_SPI is not set
+# CONFIG_ADXL345_I2C is not set
+# CONFIG_ADXL345_SPI is not set
+# CONFIG_ADXL355_I2C is not set
+# CONFIG_ADXL355_SPI is not set
+# CONFIG_ADXL367_SPI is not set
+# CONFIG_ADXL367_I2C is not set
+# CONFIG_ADXL372_SPI is not set
+# CONFIG_ADXL372_I2C is not set
+# CONFIG_BMA180 is not set
+# CONFIG_BMA220 is not set
+# CONFIG_BMA400 is not set
+# CONFIG_BMC150_ACCEL is not set
+# CONFIG_BMI088_ACCEL is not set
+# CONFIG_DA280 is not set
+# CONFIG_DA311 is not set
+# CONFIG_DMARD06 is not set
+# CONFIG_DMARD09 is not set
+# CONFIG_DMARD10 is not set
+# CONFIG_FXLS8962AF_I2C is not set
+# CONFIG_FXLS8962AF_SPI is not set
+CONFIG_IIO_CROS_EC_ACCEL_LEGACY=m
+# CONFIG_IIO_ST_ACCEL_3AXIS is not set
+# CONFIG_IIO_KX022A_SPI is not set
+# CONFIG_IIO_KX022A_I2C is not set
+# CONFIG_KXSD9 is not set
+# CONFIG_KXCJK1013 is not set
+# CONFIG_MC3230 is not set
+# CONFIG_MMA7455_I2C is not set
+# CONFIG_MMA7455_SPI is not set
+# CONFIG_MMA7660 is not set
+# CONFIG_MMA8452 is not set
+# CONFIG_MMA9551 is not set
+# CONFIG_MMA9553 is not set
+# CONFIG_MSA311 is not set
+# CONFIG_MXC4005 is not set
+# CONFIG_MXC6255 is not set
+# CONFIG_SCA3000 is not set
+# CONFIG_SCA3300 is not set
+# CONFIG_STK8312 is not set
+# CONFIG_STK8BA50 is not set
+# end of Accelerometers
+
+#
+# Analog to digital converters
+#
+# CONFIG_AD4130 is not set
+# CONFIG_AD7091R5 is not set
+# CONFIG_AD7091R8 is not set
+# CONFIG_AD7124 is not set
+# CONFIG_AD7192 is not set
+# CONFIG_AD7266 is not set
+# CONFIG_AD7280 is not set
+# CONFIG_AD7291 is not set
+# CONFIG_AD7292 is not set
+# CONFIG_AD7298 is not set
+# CONFIG_AD7476 is not set
+# CONFIG_AD7606_IFACE_PARALLEL is not set
+# CONFIG_AD7606_IFACE_SPI is not set
+# CONFIG_AD7766 is not set
+# CONFIG_AD7768_1 is not set
+# CONFIG_AD7780 is not set
+# CONFIG_AD7791 is not set
+# CONFIG_AD7793 is not set
+# CONFIG_AD7887 is not set
+# CONFIG_AD7923 is not set
+# CONFIG_AD7949 is not set
+# CONFIG_AD799X is not set
+# CONFIG_ADI_AXI_ADC is not set
+# CONFIG_CC10001_ADC is not set
+# CONFIG_ENVELOPE_DETECTOR is not set
+# CONFIG_HI8435 is not set
+# CONFIG_HX711 is not set
+# CONFIG_INA2XX_ADC is not set
+# CONFIG_LTC2309 is not set
+# CONFIG_LTC2471 is not set
+# CONFIG_LTC2485 is not set
+# CONFIG_LTC2496 is not set
+# CONFIG_LTC2497 is not set
+# CONFIG_MAX1027 is not set
+# CONFIG_MAX11100 is not set
+# CONFIG_MAX1118 is not set
+# CONFIG_MAX11205 is not set
+# CONFIG_MAX11410 is not set
+# CONFIG_MAX1241 is not set
+# CONFIG_MAX1363 is not set
+# CONFIG_MAX34408 is not set
+# CONFIG_MAX9611 is not set
+# CONFIG_MCP320X is not set
+# CONFIG_MCP3422 is not set
+# CONFIG_MCP3564 is not set
+# CONFIG_MCP3911 is not set
+CONFIG_MEDIATEK_MT6360_ADC=m
+# CONFIG_MEDIATEK_MT6577_AUXADC is not set
+# CONFIG_NAU7802 is not set
+# CONFIG_PALMAS_GPADC is not set
+# CONFIG_QCOM_SPMI_IADC is not set
+# CONFIG_QCOM_SPMI_VADC is not set
+# CONFIG_QCOM_SPMI_ADC5 is not set
+# CONFIG_RICHTEK_RTQ6056 is not set
+# CONFIG_SD_ADC_MODULATOR is not set
+# CONFIG_TI_ADC081C is not set
+# CONFIG_TI_ADC0832 is not set
+# CONFIG_TI_ADC084S021 is not set
+# CONFIG_TI_ADC12138 is not set
+# CONFIG_TI_ADC108S102 is not set
+# CONFIG_TI_ADC128S052 is not set
+# CONFIG_TI_ADC161S626 is not set
+# CONFIG_TI_ADS1015 is not set
+# CONFIG_TI_ADS7924 is not set
+# CONFIG_TI_ADS1100 is not set
+# CONFIG_TI_ADS7950 is not set
+# CONFIG_TI_ADS8344 is not set
+# CONFIG_TI_ADS8688 is not set
+# CONFIG_TI_ADS124S08 is not set
+# CONFIG_TI_ADS131E08 is not set
+# CONFIG_TI_LMP92064 is not set
+# CONFIG_TI_TLC4541 is not set
+# CONFIG_TI_TSC2046 is not set
+# CONFIG_VF610_ADC is not set
+# CONFIG_XILINX_XADC is not set
+# end of Analog to digital converters
+
+#
+# Analog to digital and digital to analog converters
+#
+# CONFIG_AD74115 is not set
+# CONFIG_AD74413R is not set
+# end of Analog to digital and digital to analog converters
+
+#
+# Analog Front Ends
+#
+# CONFIG_IIO_RESCALE is not set
+# end of Analog Front Ends
+
+#
+# Amplifiers
+#
+# CONFIG_AD8366 is not set
+# CONFIG_ADA4250 is not set
+# CONFIG_HMC425 is not set
+# end of Amplifiers
+
+#
+# Capacitance to digital converters
+#
+# CONFIG_AD7150 is not set
+# CONFIG_AD7746 is not set
+# end of Capacitance to digital converters
+
+#
+# Chemical Sensors
+#
+# CONFIG_AOSONG_AGS02MA is not set
+# CONFIG_ATLAS_PH_SENSOR is not set
+# CONFIG_ATLAS_EZO_SENSOR is not set
+# CONFIG_BME680 is not set
+# CONFIG_CCS811 is not set
+# CONFIG_IAQCORE is not set
+# CONFIG_SCD30_CORE is not set
+# CONFIG_SCD4X is not set
+# CONFIG_SENSIRION_SGP30 is not set
+# CONFIG_SENSIRION_SGP40 is not set
+# CONFIG_SPS30_I2C is not set
+# CONFIG_SENSEAIR_SUNRISE_CO2 is not set
+# CONFIG_VZ89X is not set
+# end of Chemical Sensors
+
+CONFIG_IIO_CROS_EC_SENSORS_CORE=m
+CONFIG_IIO_CROS_EC_SENSORS=m
+CONFIG_IIO_CROS_EC_SENSORS_LID_ANGLE=m
+
+#
+# Hid Sensor IIO Common
+#
+# end of Hid Sensor IIO Common
+
+#
+# IIO SCMI Sensors
+#
+# CONFIG_IIO_SCMI is not set
+# end of IIO SCMI Sensors
+
+#
+# SSP Sensor Common
+#
+# CONFIG_IIO_SSP_SENSORHUB is not set
+# end of SSP Sensor Common
+
+#
+# Digital to analog converters
+#
+# CONFIG_AD3552R is not set
+# CONFIG_AD5064 is not set
+# CONFIG_AD5360 is not set
+# CONFIG_AD5380 is not set
+# CONFIG_AD5421 is not set
+# CONFIG_AD5446 is not set
+# CONFIG_AD5449 is not set
+# CONFIG_AD5592R is not set
+# CONFIG_AD5593R is not set
+# CONFIG_AD5504 is not set
+# CONFIG_AD5624R_SPI is not set
+# CONFIG_LTC2688 is not set
+# CONFIG_AD5686_SPI is not set
+# CONFIG_AD5696_I2C is not set
+# CONFIG_AD5755 is not set
+# CONFIG_AD5758 is not set
+# CONFIG_AD5761 is not set
+# CONFIG_AD5764 is not set
+# CONFIG_AD5766 is not set
+# CONFIG_AD5770R is not set
+# CONFIG_AD5791 is not set
+# CONFIG_AD7293 is not set
+# CONFIG_AD7303 is not set
+# CONFIG_AD8801 is not set
+# CONFIG_DPOT_DAC is not set
+# CONFIG_DS4424 is not set
+# CONFIG_LTC1660 is not set
+# CONFIG_LTC2632 is not set
+# CONFIG_M62332 is not set
+# CONFIG_MAX517 is not set
+# CONFIG_MAX5522 is not set
+# CONFIG_MAX5821 is not set
+# CONFIG_MCP4725 is not set
+# CONFIG_MCP4728 is not set
+# CONFIG_MCP4821 is not set
+# CONFIG_MCP4922 is not set
+# CONFIG_TI_DAC082S085 is not set
+# CONFIG_TI_DAC5571 is not set
+# CONFIG_TI_DAC7311 is not set
+# CONFIG_TI_DAC7612 is not set
+# CONFIG_VF610_DAC is not set
+# end of Digital to analog converters
+
+#
+# IIO dummy driver
+#
+# end of IIO dummy driver
+
+#
+# Filters
+#
+# CONFIG_ADMV8818 is not set
+# end of Filters
+
+#
+# Frequency Synthesizers DDS/PLL
+#
+
+#
+# Clock Generator/Distribution
+#
+# CONFIG_AD9523 is not set
+# end of Clock Generator/Distribution
+
+#
+# Phase-Locked Loop (PLL) frequency synthesizers
+#
+# CONFIG_ADF4350 is not set
+# CONFIG_ADF4371 is not set
+# CONFIG_ADF4377 is not set
+# CONFIG_ADMV1013 is not set
+# CONFIG_ADMV1014 is not set
+# CONFIG_ADMV4420 is not set
+# CONFIG_ADRF6780 is not set
+# end of Phase-Locked Loop (PLL) frequency synthesizers
+# end of Frequency Synthesizers DDS/PLL
+
+#
+# Digital gyroscope sensors
+#
+# CONFIG_ADIS16080 is not set
+# CONFIG_ADIS16130 is not set
+# CONFIG_ADIS16136 is not set
+# CONFIG_ADIS16260 is not set
+# CONFIG_ADXRS290 is not set
+# CONFIG_ADXRS450 is not set
+# CONFIG_BMG160 is not set
+# CONFIG_FXAS21002C is not set
+# CONFIG_MPU3050_I2C is not set
+# CONFIG_IIO_ST_GYRO_3AXIS is not set
+# CONFIG_ITG3200 is not set
+# end of Digital gyroscope sensors
+
+#
+# Health Sensors
+#
+
+#
+# Heart Rate Monitors
+#
+# CONFIG_AFE4403 is not set
+# CONFIG_AFE4404 is not set
+# CONFIG_MAX30100 is not set
+# CONFIG_MAX30102 is not set
+# end of Heart Rate Monitors
+# end of Health Sensors
+
+#
+# Humidity sensors
+#
+# CONFIG_AM2315 is not set
+# CONFIG_DHT11 is not set
+# CONFIG_HDC100X is not set
+# CONFIG_HDC2010 is not set
+# CONFIG_HDC3020 is not set
+# CONFIG_HTS221 is not set
+# CONFIG_HTU21 is not set
+# CONFIG_SI7005 is not set
+# CONFIG_SI7020 is not set
+# end of Humidity sensors
+
+#
+# Inertial measurement units
+#
+# CONFIG_ADIS16400 is not set
+# CONFIG_ADIS16460 is not set
+# CONFIG_ADIS16475 is not set
+# CONFIG_ADIS16480 is not set
+# CONFIG_BMI160_I2C is not set
+# CONFIG_BMI160_SPI is not set
+# CONFIG_BMI323_I2C is not set
+# CONFIG_BMI323_SPI is not set
+# CONFIG_BOSCH_BNO055_I2C is not set
+# CONFIG_FXOS8700_I2C is not set
+# CONFIG_FXOS8700_SPI is not set
+# CONFIG_KMX61 is not set
+# CONFIG_INV_ICM42600_I2C is not set
+# CONFIG_INV_ICM42600_SPI is not set
+# CONFIG_INV_MPU6050_I2C is not set
+# CONFIG_INV_MPU6050_SPI is not set
+# CONFIG_IIO_ST_LSM6DSX is not set
+# CONFIG_IIO_ST_LSM9DS0 is not set
+# end of Inertial measurement units
+
+#
+# Light sensors
+#
+# CONFIG_ADJD_S311 is not set
+# CONFIG_ADUX1020 is not set
+# CONFIG_AL3010 is not set
+# CONFIG_AL3320A is not set
+# CONFIG_APDS9300 is not set
+# CONFIG_APDS9960 is not set
+# CONFIG_AS73211 is not set
+# CONFIG_BH1750 is not set
+# CONFIG_BH1780 is not set
+# CONFIG_CM32181 is not set
+# CONFIG_CM3232 is not set
+# CONFIG_CM3323 is not set
+# CONFIG_CM3605 is not set
+# CONFIG_CM36651 is not set
+CONFIG_IIO_CROS_EC_LIGHT_PROX=m
+# CONFIG_GP2AP002 is not set
+# CONFIG_GP2AP020A00F is not set
+CONFIG_SENSORS_ISL29018=m
+# CONFIG_SENSORS_ISL29028 is not set
+# CONFIG_ISL29125 is not set
+# CONFIG_ISL76682 is not set
+# CONFIG_JSA1212 is not set
+# CONFIG_ROHM_BU27008 is not set
+# CONFIG_ROHM_BU27034 is not set
+# CONFIG_RPR0521 is not set
+# CONFIG_LTR390 is not set
+# CONFIG_LTR501 is not set
+# CONFIG_LTRF216A is not set
+# CONFIG_LV0104CS is not set
+# CONFIG_MAX44000 is not set
+# CONFIG_MAX44009 is not set
+# CONFIG_NOA1305 is not set
+# CONFIG_OPT3001 is not set
+# CONFIG_OPT4001 is not set
+# CONFIG_PA12203001 is not set
+# CONFIG_SI1133 is not set
+# CONFIG_SI1145 is not set
+# CONFIG_STK3310 is not set
+# CONFIG_ST_UVIS25 is not set
+# CONFIG_TCS3414 is not set
+# CONFIG_TCS3472 is not set
+CONFIG_SENSORS_TSL2563=m
+CONFIG_TSL2583=m
+# CONFIG_TSL2591 is not set
+# CONFIG_TSL2772 is not set
+# CONFIG_TSL4531 is not set
+# CONFIG_US5182D is not set
+# CONFIG_VCNL4000 is not set
+# CONFIG_VCNL4035 is not set
+# CONFIG_VEML6030 is not set
+# CONFIG_VEML6070 is not set
+# CONFIG_VEML6075 is not set
+# CONFIG_VL6180 is not set
+# CONFIG_ZOPT2201 is not set
+# end of Light sensors
+
+#
+# Magnetometer sensors
+#
+# CONFIG_AK8974 is not set
+# CONFIG_AK8975 is not set
+# CONFIG_AK09911 is not set
+# CONFIG_BMC150_MAGN_I2C is not set
+# CONFIG_BMC150_MAGN_SPI is not set
+# CONFIG_MAG3110 is not set
+# CONFIG_MMC35240 is not set
+# CONFIG_IIO_ST_MAGN_3AXIS is not set
+# CONFIG_SENSORS_HMC5843_I2C is not set
+# CONFIG_SENSORS_HMC5843_SPI is not set
+# CONFIG_SENSORS_RM3100_I2C is not set
+# CONFIG_SENSORS_RM3100_SPI is not set
+# CONFIG_TI_TMAG5273 is not set
+# CONFIG_YAMAHA_YAS530 is not set
+# end of Magnetometer sensors
+
+#
+# Multiplexers
+#
+CONFIG_IIO_MUX=m
+# end of Multiplexers
+
+#
+# Inclinometer sensors
+#
+# end of Inclinometer sensors
+
+#
+# Triggers - standalone
+#
+# CONFIG_IIO_INTERRUPT_TRIGGER is not set
+# CONFIG_IIO_SYSFS_TRIGGER is not set
+# end of Triggers - standalone
+
+#
+# Linear and angular position sensors
+#
+# end of Linear and angular position sensors
+
+#
+# Digital potentiometers
+#
+# CONFIG_AD5110 is not set
+# CONFIG_AD5272 is not set
+# CONFIG_DS1803 is not set
+# CONFIG_MAX5432 is not set
+# CONFIG_MAX5481 is not set
+# CONFIG_MAX5487 is not set
+# CONFIG_MCP4018 is not set
+# CONFIG_MCP4131 is not set
+# CONFIG_MCP4531 is not set
+# CONFIG_MCP41010 is not set
+# CONFIG_TPL0102 is not set
+# CONFIG_X9250 is not set
+# end of Digital potentiometers
+
+#
+# Digital potentiostats
+#
+# CONFIG_LMP91000 is not set
+# end of Digital potentiostats
+
+#
+# Pressure sensors
+#
+# CONFIG_ABP060MG is not set
+# CONFIG_ROHM_BM1390 is not set
+# CONFIG_BMP280 is not set
+CONFIG_IIO_CROS_EC_BARO=m
+# CONFIG_DLHL60D is not set
+# CONFIG_DPS310 is not set
+# CONFIG_HP03 is not set
+# CONFIG_HSC030PA is not set
+# CONFIG_ICP10100 is not set
+# CONFIG_MPL115_I2C is not set
+# CONFIG_MPL115_SPI is not set
+# CONFIG_MPL3115 is not set
+# CONFIG_MPRLS0025PA is not set
+# CONFIG_MS5611 is not set
+# CONFIG_MS5637 is not set
+# CONFIG_IIO_ST_PRESS is not set
+# CONFIG_T5403 is not set
+# CONFIG_HP206C is not set
+# CONFIG_ZPA2326 is not set
+# end of Pressure sensors
+
+#
+# Lightning sensors
+#
+# CONFIG_AS3935 is not set
+# end of Lightning sensors
+
+#
+# Proximity and distance sensors
+#
+# CONFIG_CROS_EC_MKBP_PROXIMITY is not set
+# CONFIG_IRSD200 is not set
+# CONFIG_ISL29501 is not set
+# CONFIG_LIDAR_LITE_V2 is not set
+# CONFIG_MB1232 is not set
+# CONFIG_PING is not set
+# CONFIG_RFD77402 is not set
+# CONFIG_SRF04 is not set
+# CONFIG_SX9310 is not set
+# CONFIG_SX9324 is not set
+# CONFIG_SX9360 is not set
+# CONFIG_SX9500 is not set
+# CONFIG_SRF08 is not set
+# CONFIG_VCNL3020 is not set
+# CONFIG_VL53L0X_I2C is not set
+# end of Proximity and distance sensors
+
+#
+# Resolver to digital converters
+#
+# CONFIG_AD2S90 is not set
+# CONFIG_AD2S1200 is not set
+# CONFIG_AD2S1210 is not set
+# end of Resolver to digital converters
+
+#
+# Temperature sensors
+#
+# CONFIG_LTC2983 is not set
+# CONFIG_MAXIM_THERMOCOUPLE is not set
+# CONFIG_MLX90614 is not set
+# CONFIG_MLX90632 is not set
+# CONFIG_MLX90635 is not set
+# CONFIG_TMP006 is not set
+# CONFIG_TMP007 is not set
+# CONFIG_TMP117 is not set
+# CONFIG_TSYS01 is not set
+# CONFIG_TSYS02D is not set
+# CONFIG_MAX30208 is not set
+# CONFIG_MAX31856 is not set
+# CONFIG_MAX31865 is not set
+# CONFIG_MCP9600 is not set
+# end of Temperature sensors
+
+CONFIG_PWM=y
+CONFIG_PWM_SYSFS=y
+# CONFIG_PWM_ATMEL_TCB is not set
+# CONFIG_PWM_CLK is not set
+CONFIG_PWM_CROS_EC=y
+# CONFIG_PWM_FSL_FTM is not set
+CONFIG_PWM_MTK_DISP=y
+CONFIG_PWM_MEDIATEK=y
+# CONFIG_PWM_PCA9685 is not set
+# CONFIG_PWM_XILINX is not set
+
+#
+# IRQ chip support
+#
+CONFIG_IRQCHIP=y
+CONFIG_ARM_GIC=y
+CONFIG_ARM_GIC_MAX_NR=1
+CONFIG_ARM_GIC_V3=y
+CONFIG_ARM_GIC_V3_ITS=y
+# CONFIG_AL_FIC is not set
+# CONFIG_XILINX_INTC is not set
+CONFIG_PARTITION_PERCPU=y
+CONFIG_MST_IRQ=y
+# end of IRQ chip support
+
+# CONFIG_IPACK_BUS is not set
+CONFIG_RESET_CONTROLLER=y
+CONFIG_RESET_SCMI=m
+# CONFIG_RESET_TI_SYSCON is not set
+# CONFIG_RESET_TI_TPS380X is not set
+
+#
+# PHY Subsystem
+#
+CONFIG_GENERIC_PHY=y
+# CONFIG_PHY_CAN_TRANSCEIVER is not set
+
+#
+# PHY drivers for Broadcom platforms
+#
+# CONFIG_BCM_KONA_USB2_PHY is not set
+# end of PHY drivers for Broadcom platforms
+
+# CONFIG_PHY_CADENCE_TORRENT is not set
+# CONFIG_PHY_CADENCE_DPHY is not set
+# CONFIG_PHY_CADENCE_DPHY_RX is not set
+# CONFIG_PHY_CADENCE_SIERRA is not set
+# CONFIG_PHY_CADENCE_SALVO is not set
+# CONFIG_PHY_PXA_28NM_HSIC is not set
+# CONFIG_PHY_PXA_28NM_USB2 is not set
+# CONFIG_PHY_MTK_PCIE is not set
+CONFIG_PHY_MTK_TPHY=y
+CONFIG_PHY_MTK_UFS=m
+CONFIG_PHY_MTK_XSPHY=m
+CONFIG_PHY_MTK_HDMI=y
+CONFIG_PHY_MTK_MIPI_DSI=y
+CONFIG_PHY_MTK_DP=y
+# CONFIG_PHY_LAN966X_SERDES is not set
+# CONFIG_PHY_CPCAP_USB is not set
+# CONFIG_PHY_MAPPHONE_MDM6600 is not set
+# CONFIG_PHY_OCELOT_SERDES is not set
+# CONFIG_PHY_QCOM_USB_HS is not set
+# CONFIG_PHY_QCOM_USB_HSIC is not set
+# CONFIG_PHY_TUSB1210 is not set
+# end of PHY Subsystem
+
+CONFIG_POWERCAP=y
+CONFIG_IDLE_INJECT=y
+# CONFIG_ARM_SCMI_POWERCAP is not set
+# CONFIG_DTPM is not set
+# CONFIG_MCB is not set
+
+#
+# Performance monitor support
+#
+# CONFIG_ARM_CCI_PMU is not set
+# CONFIG_ARM_CCN is not set
+# CONFIG_ARM_CMN is not set
+CONFIG_ARM_PMU=y
+# CONFIG_ARM_SMMU_V3_PMU is not set
+CONFIG_ARM_PMUV3=y
+# CONFIG_ARM_DSU_PMU is not set
+# CONFIG_ARM_SPE_PMU is not set
+# CONFIG_ARM_CORESIGHT_PMU_ARCH_SYSTEM_PMU is not set
+# end of Performance monitor support
+
+CONFIG_RAS=y
+
+#
+# Android
+#
+# CONFIG_ANDROID_BINDER_IPC is not set
+# end of Android
+
+# CONFIG_LIBNVDIMM is not set
+# CONFIG_DAX is not set
+CONFIG_NVMEM=y
+CONFIG_NVMEM_SYSFS=y
+CONFIG_NVMEM_LAYOUTS=y
+
+#
+# Layout Types
+#
+# CONFIG_NVMEM_LAYOUT_SL28_VPD is not set
+# CONFIG_NVMEM_LAYOUT_ONIE_TLV is not set
+# end of Layout Types
+
+CONFIG_NVMEM_MTK_EFUSE=m
+# CONFIG_NVMEM_RMEM is not set
+# CONFIG_NVMEM_SPMI_SDAM is not set
+
+#
+# HW tracing support
+#
+# CONFIG_STM is not set
+# CONFIG_INTEL_TH is not set
+# end of HW tracing support
+
+# CONFIG_FPGA is not set
+# CONFIG_FSI is not set
+# CONFIG_TEE is not set
+CONFIG_MULTIPLEXER=m
+
+#
+# Multiplexer drivers
+#
+# CONFIG_MUX_ADG792A is not set
+# CONFIG_MUX_ADGS1408 is not set
+# CONFIG_MUX_GPIO is not set
+# CONFIG_MUX_MMIO is not set
+# end of Multiplexer drivers
+
+CONFIG_PM_OPP=y
+# CONFIG_SIOX is not set
+# CONFIG_SLIMBUS is not set
+# CONFIG_INTERCONNECT is not set
+# CONFIG_COUNTER is not set
+# CONFIG_MOST is not set
+# CONFIG_PECI is not set
+# CONFIG_HTE is not set
+# CONFIG_CDX_BUS is not set
+# end of Device Drivers
+
+#
+# File systems
+#
+CONFIG_DCACHE_WORD_ACCESS=y
+# CONFIG_VALIDATE_FS_PARSER is not set
+CONFIG_FS_IOMAP=y
+CONFIG_FS_STACK=y
+CONFIG_BUFFER_HEAD=y
+CONFIG_LEGACY_DIRECT_IO=y
+# CONFIG_EXT2_FS is not set
+# CONFIG_EXT3_FS is not set
+CONFIG_EXT4_FS=y
+CONFIG_EXT4_USE_FOR_EXT2=y
+CONFIG_EXT4_FS_POSIX_ACL=y
+CONFIG_EXT4_FS_SECURITY=y
+# CONFIG_EXT4_DEBUG is not set
+CONFIG_JBD2=y
+# CONFIG_JBD2_DEBUG is not set
+CONFIG_FS_MBCACHE=y
+# CONFIG_REISERFS_FS is not set
+# CONFIG_JFS_FS is not set
+CONFIG_XFS_FS=m
+CONFIG_XFS_SUPPORT_V4=y
+# CONFIG_XFS_SUPPORT_ASCII_CI is not set
+CONFIG_XFS_QUOTA=y
+CONFIG_XFS_POSIX_ACL=y
+CONFIG_XFS_RT=y
+# CONFIG_XFS_ONLINE_SCRUB is not set
+# CONFIG_XFS_WARN is not set
+# CONFIG_XFS_DEBUG is not set
+# CONFIG_GFS2_FS is not set
+# CONFIG_OCFS2_FS is not set
+CONFIG_BTRFS_FS=m
+CONFIG_BTRFS_FS_POSIX_ACL=y
+# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set
+# CONFIG_BTRFS_DEBUG is not set
+# CONFIG_BTRFS_ASSERT is not set
+# CONFIG_BTRFS_FS_REF_VERIFY is not set
+# CONFIG_NILFS2_FS is not set
+CONFIG_F2FS_FS=y
+CONFIG_F2FS_STAT_FS=y
+CONFIG_F2FS_FS_XATTR=y
+CONFIG_F2FS_FS_POSIX_ACL=y
+CONFIG_F2FS_FS_SECURITY=y
+# CONFIG_F2FS_CHECK_FS is not set
+# CONFIG_F2FS_FAULT_INJECTION is not set
+CONFIG_F2FS_FS_COMPRESSION=y
+CONFIG_F2FS_FS_LZO=y
+CONFIG_F2FS_FS_LZORLE=y
+CONFIG_F2FS_FS_LZ4=y
+CONFIG_F2FS_FS_LZ4HC=y
+CONFIG_F2FS_FS_ZSTD=y
+# CONFIG_F2FS_IOSTAT is not set
+# CONFIG_F2FS_UNFAIR_RWSEM is not set
+# CONFIG_BCACHEFS_FS is not set
+CONFIG_FS_POSIX_ACL=y
+CONFIG_EXPORTFS=y
+CONFIG_EXPORTFS_BLOCK_OPS=y
+CONFIG_FILE_LOCKING=y
+CONFIG_FS_ENCRYPTION=y
+CONFIG_FS_ENCRYPTION_ALGS=y
+CONFIG_FS_VERITY=y
+CONFIG_FS_VERITY_BUILTIN_SIGNATURES=y
+CONFIG_FSNOTIFY=y
+CONFIG_DNOTIFY=y
+CONFIG_INOTIFY_USER=y
+CONFIG_FANOTIFY=y
+# CONFIG_QUOTA is not set
+# CONFIG_QUOTA_NETLINK_INTERFACE is not set
+CONFIG_QUOTACTL=y
+# CONFIG_AUTOFS_FS is not set
+CONFIG_FUSE_FS=m
+CONFIG_CUSE=m
+CONFIG_VIRTIO_FS=m
+CONFIG_OVERLAY_FS=m
+# CONFIG_OVERLAY_FS_REDIRECT_DIR is not set
+CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y
+# CONFIG_OVERLAY_FS_INDEX is not set
+# CONFIG_OVERLAY_FS_XINO_AUTO is not set
+# CONFIG_OVERLAY_FS_METACOPY is not set
+# CONFIG_OVERLAY_FS_DEBUG is not set
+
+#
+# Caches
+#
+CONFIG_NETFS_SUPPORT=m
+# CONFIG_NETFS_STATS is not set
+# CONFIG_FSCACHE is not set
+# end of Caches
+
+#
+# CD-ROM/DVD Filesystems
+#
+CONFIG_ISO9660_FS=m
+CONFIG_JOLIET=y
+CONFIG_ZISOFS=y
+CONFIG_UDF_FS=m
+# end of CD-ROM/DVD Filesystems
+
+#
+# DOS/FAT/EXFAT/NT Filesystems
+#
+CONFIG_FAT_FS=m
+CONFIG_MSDOS_FS=m
+CONFIG_VFAT_FS=m
+CONFIG_FAT_DEFAULT_CODEPAGE=437
+CONFIG_FAT_DEFAULT_IOCHARSET="ascii"
+CONFIG_FAT_DEFAULT_UTF8=y
+CONFIG_EXFAT_FS=m
+CONFIG_EXFAT_DEFAULT_IOCHARSET="utf8"
+CONFIG_NTFS_FS=m
+# CONFIG_NTFS_DEBUG is not set
+CONFIG_NTFS_RW=y
+CONFIG_NTFS3_FS=m
+# CONFIG_NTFS3_64BIT_CLUSTER is not set
+# CONFIG_NTFS3_LZX_XPRESS is not set
+# CONFIG_NTFS3_FS_POSIX_ACL is not set
+# end of DOS/FAT/EXFAT/NT Filesystems
+
+#
+# Pseudo filesystems
+#
+CONFIG_PROC_FS=y
+# CONFIG_PROC_KCORE is not set
+CONFIG_PROC_SYSCTL=y
+CONFIG_PROC_PAGE_MONITOR=y
+CONFIG_PROC_CHILDREN=y
+CONFIG_KERNFS=y
+CONFIG_SYSFS=y
+CONFIG_TMPFS=y
+CONFIG_TMPFS_POSIX_ACL=y
+CONFIG_TMPFS_XATTR=y
+# CONFIG_TMPFS_INODE64 is not set
+# CONFIG_TMPFS_QUOTA is not set
+CONFIG_ARCH_SUPPORTS_HUGETLBFS=y
+# CONFIG_HUGETLBFS is not set
+CONFIG_ARCH_HAS_GIGANTIC_PAGE=y
+CONFIG_CONFIGFS_FS=m
+CONFIG_EFIVAR_FS=m
+# end of Pseudo filesystems
+
+CONFIG_MISC_FILESYSTEMS=y
+# CONFIG_ORANGEFS_FS is not set
+# CONFIG_ADFS_FS is not set
+# CONFIG_AFFS_FS is not set
+CONFIG_ECRYPT_FS=m
+# CONFIG_ECRYPT_FS_MESSAGING is not set
+CONFIG_HFS_FS=m
+CONFIG_HFSPLUS_FS=m
+# CONFIG_BEFS_FS is not set
+# CONFIG_BFS_FS is not set
+# CONFIG_EFS_FS is not set
+# CONFIG_CRAMFS is not set
+CONFIG_SQUASHFS=m
+CONFIG_SQUASHFS_FILE_CACHE=y
+# CONFIG_SQUASHFS_FILE_DIRECT is not set
+CONFIG_SQUASHFS_DECOMP_SINGLE=y
+# CONFIG_SQUASHFS_CHOICE_DECOMP_BY_MOUNT is not set
+CONFIG_SQUASHFS_COMPILE_DECOMP_SINGLE=y
+# CONFIG_SQUASHFS_COMPILE_DECOMP_MULTI is not set
+# CONFIG_SQUASHFS_COMPILE_DECOMP_MULTI_PERCPU is not set
+CONFIG_SQUASHFS_XATTR=y
+CONFIG_SQUASHFS_ZLIB=y
+CONFIG_SQUASHFS_LZ4=y
+CONFIG_SQUASHFS_LZO=y
+CONFIG_SQUASHFS_XZ=y
+CONFIG_SQUASHFS_ZSTD=y
+# CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set
+# CONFIG_SQUASHFS_EMBEDDED is not set
+CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3
+# CONFIG_VXFS_FS is not set
+CONFIG_MINIX_FS=m
+# CONFIG_OMFS_FS is not set
+# CONFIG_HPFS_FS is not set
+# CONFIG_QNX4FS_FS is not set
+# CONFIG_QNX6FS_FS is not set
+# CONFIG_ROMFS_FS is not set
+CONFIG_PSTORE=m
+CONFIG_PSTORE_DEFAULT_KMSG_BYTES=10240
+CONFIG_PSTORE_COMPRESS=y
+# CONFIG_PSTORE_CONSOLE is not set
+# CONFIG_PSTORE_PMSG is not set
+# CONFIG_PSTORE_RAM is not set
+# CONFIG_PSTORE_BLK is not set
+# CONFIG_SYSV_FS is not set
+# CONFIG_UFS_FS is not set
+# CONFIG_EROFS_FS is not set
+CONFIG_NETWORK_FILESYSTEMS=y
+CONFIG_NFS_FS=m
+# CONFIG_NFS_V2 is not set
+CONFIG_NFS_V3=m
+CONFIG_NFS_V3_ACL=y
+CONFIG_NFS_V4=m
+# CONFIG_NFS_SWAP is not set
+# CONFIG_NFS_V4_1 is not set
+# CONFIG_NFS_FSCACHE is not set
+# CONFIG_NFS_USE_LEGACY_DNS is not set
+CONFIG_NFS_USE_KERNEL_DNS=y
+CONFIG_NFS_DISABLE_UDP_SUPPORT=y
+CONFIG_NFSD=m
+# CONFIG_NFSD_V2 is not set
+CONFIG_NFSD_V3_ACL=y
+CONFIG_NFSD_V4=y
+# CONFIG_NFSD_BLOCKLAYOUT is not set
+# CONFIG_NFSD_SCSILAYOUT is not set
+# CONFIG_NFSD_FLEXFILELAYOUT is not set
+# CONFIG_NFSD_LEGACY_CLIENT_TRACKING is not set
+CONFIG_GRACE_PERIOD=m
+CONFIG_LOCKD=m
+CONFIG_LOCKD_V4=y
+CONFIG_NFS_ACL_SUPPORT=m
+CONFIG_NFS_COMMON=y
+CONFIG_SUNRPC=m
+CONFIG_SUNRPC_GSS=m
+CONFIG_RPCSEC_GSS_KRB5=m
+CONFIG_RPCSEC_GSS_KRB5_ENCTYPES_AES_SHA1=y
+# CONFIG_RPCSEC_GSS_KRB5_ENCTYPES_AES_SHA2 is not set
+# CONFIG_SUNRPC_DEBUG is not set
+# CONFIG_CEPH_FS is not set
+CONFIG_CIFS=m
+# CONFIG_CIFS_STATS2 is not set
+CONFIG_CIFS_ALLOW_INSECURE_LEGACY=y
+CONFIG_CIFS_UPCALL=y
+CONFIG_CIFS_XATTR=y
+CONFIG_CIFS_POSIX=y
+CONFIG_CIFS_DEBUG=y
+# CONFIG_CIFS_DEBUG2 is not set
+# CONFIG_CIFS_DEBUG_DUMP_KEYS is not set
+CONFIG_CIFS_DFS_UPCALL=y
+CONFIG_CIFS_SWN_UPCALL=y
+CONFIG_SMB_SERVER=m
+CONFIG_SMB_SERVER_CHECK_CAP_NET_ADMIN=y
+# CONFIG_SMB_SERVER_KERBEROS5 is not set
+CONFIG_SMBFS=m
+# CONFIG_CODA_FS is not set
+# CONFIG_AFS_FS is not set
+CONFIG_NLS=y
+CONFIG_NLS_DEFAULT="utf8"
+CONFIG_NLS_CODEPAGE_437=m
+# CONFIG_NLS_CODEPAGE_737 is not set
+# CONFIG_NLS_CODEPAGE_775 is not set
+# CONFIG_NLS_CODEPAGE_850 is not set
+CONFIG_NLS_CODEPAGE_852=m
+CONFIG_NLS_CODEPAGE_855=m
+# CONFIG_NLS_CODEPAGE_857 is not set
+# CONFIG_NLS_CODEPAGE_860 is not set
+# CONFIG_NLS_CODEPAGE_861 is not set
+# CONFIG_NLS_CODEPAGE_862 is not set
+# CONFIG_NLS_CODEPAGE_863 is not set
+# CONFIG_NLS_CODEPAGE_864 is not set
+# CONFIG_NLS_CODEPAGE_865 is not set
+CONFIG_NLS_CODEPAGE_866=m
+# CONFIG_NLS_CODEPAGE_869 is not set
+# CONFIG_NLS_CODEPAGE_936 is not set
+# CONFIG_NLS_CODEPAGE_950 is not set
+# CONFIG_NLS_CODEPAGE_932 is not set
+# CONFIG_NLS_CODEPAGE_949 is not set
+# CONFIG_NLS_CODEPAGE_874 is not set
+# CONFIG_NLS_ISO8859_8 is not set
+CONFIG_NLS_CODEPAGE_1250=m
+CONFIG_NLS_CODEPAGE_1251=m
+CONFIG_NLS_ASCII=m
+CONFIG_NLS_ISO8859_1=m
+CONFIG_NLS_ISO8859_2=m
+# CONFIG_NLS_ISO8859_3 is not set
+# CONFIG_NLS_ISO8859_4 is not set
+CONFIG_NLS_ISO8859_5=m
+# CONFIG_NLS_ISO8859_6 is not set
+# CONFIG_NLS_ISO8859_7 is not set
+# CONFIG_NLS_ISO8859_9 is not set
+# CONFIG_NLS_ISO8859_13 is not set
+# CONFIG_NLS_ISO8859_14 is not set
+# CONFIG_NLS_ISO8859_15 is not set
+CONFIG_NLS_KOI8_R=m
+# CONFIG_NLS_KOI8_U is not set
+# CONFIG_NLS_MAC_ROMAN is not set
+# CONFIG_NLS_MAC_CELTIC is not set
+# CONFIG_NLS_MAC_CENTEURO is not set
+# CONFIG_NLS_MAC_CROATIAN is not set
+# CONFIG_NLS_MAC_CYRILLIC is not set
+# CONFIG_NLS_MAC_GAELIC is not set
+# CONFIG_NLS_MAC_GREEK is not set
+# CONFIG_NLS_MAC_ICELAND is not set
+# CONFIG_NLS_MAC_INUIT is not set
+# CONFIG_NLS_MAC_ROMANIAN is not set
+# CONFIG_NLS_MAC_TURKISH is not set
+CONFIG_NLS_UTF8=m
+CONFIG_NLS_UCS2_UTILS=m
+CONFIG_DLM=m
+# CONFIG_DLM_DEBUG is not set
+# CONFIG_UNICODE is not set
+CONFIG_IO_WQ=y
+# end of File systems
+
+#
+# Security options
+#
+CONFIG_KEYS=y
+# CONFIG_KEYS_REQUEST_CACHE is not set
+CONFIG_PERSISTENT_KEYRINGS=y
+# CONFIG_TRUSTED_KEYS is not set
+CONFIG_ENCRYPTED_KEYS=y
+# CONFIG_USER_DECRYPTED_DATA is not set
+CONFIG_KEY_DH_OPERATIONS=y
+# CONFIG_SECURITY_DMESG_RESTRICT is not set
+# CONFIG_SECURITY is not set
+# CONFIG_SECURITYFS is not set
+# CONFIG_HARDENED_USERCOPY is not set
+# CONFIG_FORTIFY_SOURCE is not set
+# CONFIG_STATIC_USERMODEHELPER is not set
+# CONFIG_IMA_SECURE_AND_OR_TRUSTED_BOOT is not set
+CONFIG_DEFAULT_SECURITY_DAC=y
+CONFIG_LSM=""
+
+#
+# Kernel hardening options
+#
+
+#
+# Memory initialization
+#
+CONFIG_CC_HAS_AUTO_VAR_INIT_PATTERN=y
+CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO_BARE=y
+CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO=y
+CONFIG_INIT_STACK_NONE=y
+# CONFIG_INIT_STACK_ALL_PATTERN is not set
+# CONFIG_INIT_STACK_ALL_ZERO is not set
+CONFIG_INIT_ON_ALLOC_DEFAULT_ON=y
+# CONFIG_INIT_ON_FREE_DEFAULT_ON is not set
+CONFIG_CC_HAS_ZERO_CALL_USED_REGS=y
+# CONFIG_ZERO_CALL_USED_REGS is not set
+# end of Memory initialization
+
+#
+# Hardening of kernel data structures
+#
+# CONFIG_LIST_HARDENED is not set
+# CONFIG_BUG_ON_DATA_CORRUPTION is not set
+# end of Hardening of kernel data structures
+
+CONFIG_RANDSTRUCT_NONE=y
+# end of Kernel hardening options
+# end of Security options
+
+CONFIG_XOR_BLOCKS=m
+CONFIG_CRYPTO=y
+
+#
+# Crypto core or helper
+#
+# CONFIG_CRYPTO_FIPS is not set
+CONFIG_CRYPTO_ALGAPI=y
+CONFIG_CRYPTO_ALGAPI2=y
+CONFIG_CRYPTO_AEAD=m
+CONFIG_CRYPTO_AEAD2=y
+CONFIG_CRYPTO_SIG2=y
+CONFIG_CRYPTO_SKCIPHER=y
+CONFIG_CRYPTO_SKCIPHER2=y
+CONFIG_CRYPTO_HASH=y
+CONFIG_CRYPTO_HASH2=y
+CONFIG_CRYPTO_RNG=y
+CONFIG_CRYPTO_RNG2=y
+CONFIG_CRYPTO_RNG_DEFAULT=m
+CONFIG_CRYPTO_AKCIPHER2=y
+CONFIG_CRYPTO_AKCIPHER=y
+CONFIG_CRYPTO_KPP2=y
+CONFIG_CRYPTO_KPP=y
+CONFIG_CRYPTO_ACOMP2=y
+CONFIG_CRYPTO_MANAGER=y
+CONFIG_CRYPTO_MANAGER2=y
+CONFIG_CRYPTO_USER=m
+# CONFIG_CRYPTO_MANAGER_DISABLE_TESTS is not set
+CONFIG_CRYPTO_NULL=m
+CONFIG_CRYPTO_NULL2=m
+CONFIG_CRYPTO_PCRYPT=m
+CONFIG_CRYPTO_CRYPTD=m
+CONFIG_CRYPTO_AUTHENC=m
+# CONFIG_CRYPTO_TEST is not set
+CONFIG_CRYPTO_ENGINE=m
+# end of Crypto core or helper
+
+#
+# Public-key cryptography
+#
+CONFIG_CRYPTO_RSA=y
+CONFIG_CRYPTO_DH=y
+# CONFIG_CRYPTO_DH_RFC7919_GROUPS is not set
+CONFIG_CRYPTO_ECC=m
+CONFIG_CRYPTO_ECDH=m
+# CONFIG_CRYPTO_ECDSA is not set
+CONFIG_CRYPTO_ECRDSA=m
+# CONFIG_CRYPTO_SM2 is not set
+CONFIG_CRYPTO_CURVE25519=m
+# end of Public-key cryptography
+
+#
+# Block ciphers
+#
+CONFIG_CRYPTO_AES=y
+# CONFIG_CRYPTO_AES_TI is not set
+# CONFIG_CRYPTO_ANUBIS is not set
+# CONFIG_CRYPTO_ARIA is not set
+CONFIG_CRYPTO_BLOWFISH=m
+CONFIG_CRYPTO_BLOWFISH_COMMON=m
+# CONFIG_CRYPTO_CAMELLIA is not set
+# CONFIG_CRYPTO_CAST5 is not set
+# CONFIG_CRYPTO_CAST6 is not set
+CONFIG_CRYPTO_DES=m
+# CONFIG_CRYPTO_FCRYPT is not set
+# CONFIG_CRYPTO_KHAZAD is not set
+# CONFIG_CRYPTO_SEED is not set
+CONFIG_CRYPTO_SERPENT=m
+CONFIG_CRYPTO_SM4=m
+# CONFIG_CRYPTO_SM4_GENERIC is not set
+# CONFIG_CRYPTO_TEA is not set
+CONFIG_CRYPTO_TWOFISH=m
+CONFIG_CRYPTO_TWOFISH_COMMON=m
+# end of Block ciphers
+
+#
+# Length-preserving ciphers and modes
+#
+CONFIG_CRYPTO_ADIANTUM=m
+CONFIG_CRYPTO_ARC4=m
+CONFIG_CRYPTO_CHACHA20=m
+CONFIG_CRYPTO_CBC=y
+CONFIG_CRYPTO_CTR=m
+CONFIG_CRYPTO_CTS=y
+CONFIG_CRYPTO_ECB=y
+# CONFIG_CRYPTO_HCTR2 is not set
+# CONFIG_CRYPTO_KEYWRAP is not set
+CONFIG_CRYPTO_LRW=m
+# CONFIG_CRYPTO_PCBC is not set
+CONFIG_CRYPTO_XTS=y
+CONFIG_CRYPTO_NHPOLY1305=m
+# end of Length-preserving ciphers and modes
+
+#
+# AEAD (authenticated encryption with associated data) ciphers
+#
+# CONFIG_CRYPTO_AEGIS128 is not set
+CONFIG_CRYPTO_CHACHA20POLY1305=m
+CONFIG_CRYPTO_CCM=m
+CONFIG_CRYPTO_GCM=m
+CONFIG_CRYPTO_GENIV=m
+CONFIG_CRYPTO_SEQIV=m
+CONFIG_CRYPTO_ECHAINIV=m
+CONFIG_CRYPTO_ESSIV=m
+# end of AEAD (authenticated encryption with associated data) ciphers
+
+#
+# Hashes, digests, and MACs
+#
+CONFIG_CRYPTO_BLAKE2B=m
+CONFIG_CRYPTO_CMAC=m
+CONFIG_CRYPTO_GHASH=m
+CONFIG_CRYPTO_HMAC=y
+CONFIG_CRYPTO_MD4=m
+CONFIG_CRYPTO_MD5=y
+# CONFIG_CRYPTO_MICHAEL_MIC is not set
+CONFIG_CRYPTO_POLY1305=m
+CONFIG_CRYPTO_RMD160=m
+CONFIG_CRYPTO_SHA1=y
+CONFIG_CRYPTO_SHA256=y
+CONFIG_CRYPTO_SHA512=y
+CONFIG_CRYPTO_SHA3=y
+CONFIG_CRYPTO_SM3=m
+# CONFIG_CRYPTO_SM3_GENERIC is not set
+CONFIG_CRYPTO_STREEBOG=m
+# CONFIG_CRYPTO_VMAC is not set
+CONFIG_CRYPTO_WP512=m
+# CONFIG_CRYPTO_XCBC is not set
+CONFIG_CRYPTO_XXHASH=m
+# end of Hashes, digests, and MACs
+
+#
+# CRCs (cyclic redundancy checks)
+#
+CONFIG_CRYPTO_CRC32C=y
+CONFIG_CRYPTO_CRC32=y
+CONFIG_CRYPTO_CRCT10DIF=y
+# end of CRCs (cyclic redundancy checks)
+
+#
+# Compression
+#
+CONFIG_CRYPTO_DEFLATE=m
+CONFIG_CRYPTO_LZO=y
+# CONFIG_CRYPTO_842 is not set
+# CONFIG_CRYPTO_LZ4 is not set
+# CONFIG_CRYPTO_LZ4HC is not set
+CONFIG_CRYPTO_ZSTD=y
+# end of Compression
+
+#
+# Random number generation
+#
+# CONFIG_CRYPTO_ANSI_CPRNG is not set
+CONFIG_CRYPTO_DRBG_MENU=y
+CONFIG_CRYPTO_DRBG_HMAC=y
+# CONFIG_CRYPTO_DRBG_HASH is not set
+# CONFIG_CRYPTO_DRBG_CTR is not set
+CONFIG_CRYPTO_DRBG=y
+CONFIG_CRYPTO_JITTERENTROPY=y
+CONFIG_CRYPTO_JITTERENTROPY_MEMORY_BLOCKS=64
+CONFIG_CRYPTO_JITTERENTROPY_MEMORY_BLOCKSIZE=32
+CONFIG_CRYPTO_JITTERENTROPY_OSR=1
+CONFIG_CRYPTO_KDF800108_CTR=y
+# end of Random number generation
+
+#
+# Userspace interface
+#
+CONFIG_CRYPTO_USER_API=m
+CONFIG_CRYPTO_USER_API_HASH=m
+CONFIG_CRYPTO_USER_API_SKCIPHER=m
+# CONFIG_CRYPTO_USER_API_RNG is not set
+# CONFIG_CRYPTO_USER_API_AEAD is not set
+CONFIG_CRYPTO_USER_API_ENABLE_OBSOLETE=y
+# CONFIG_CRYPTO_STATS is not set
+# end of Userspace interface
+
+CONFIG_CRYPTO_HASH_INFO=y
+CONFIG_CRYPTO_NHPOLY1305_NEON=m
+CONFIG_CRYPTO_CHACHA20_NEON=m
+
+#
+# Accelerated Cryptographic Algorithms for CPU (arm64)
+#
+CONFIG_CRYPTO_GHASH_ARM64_CE=m
+CONFIG_CRYPTO_POLY1305_NEON=m
+CONFIG_CRYPTO_SHA1_ARM64_CE=m
+CONFIG_CRYPTO_SHA256_ARM64=m
+CONFIG_CRYPTO_SHA2_ARM64_CE=m
+CONFIG_CRYPTO_SHA512_ARM64=m
+CONFIG_CRYPTO_SHA512_ARM64_CE=m
+CONFIG_CRYPTO_SHA3_ARM64=m
+# CONFIG_CRYPTO_SM3_NEON is not set
+CONFIG_CRYPTO_SM3_ARM64_CE=m
+# CONFIG_CRYPTO_POLYVAL_ARM64_CE is not set
+CONFIG_CRYPTO_AES_ARM64=m
+CONFIG_CRYPTO_AES_ARM64_CE=m
+CONFIG_CRYPTO_AES_ARM64_CE_BLK=m
+CONFIG_CRYPTO_AES_ARM64_NEON_BLK=m
+CONFIG_CRYPTO_AES_ARM64_BS=m
+CONFIG_CRYPTO_SM4_ARM64_CE=m
+# CONFIG_CRYPTO_SM4_ARM64_CE_BLK is not set
+# CONFIG_CRYPTO_SM4_ARM64_NEON_BLK is not set
+CONFIG_CRYPTO_AES_ARM64_CE_CCM=m
+# CONFIG_CRYPTO_SM4_ARM64_CE_CCM is not set
+# CONFIG_CRYPTO_SM4_ARM64_CE_GCM is not set
+CONFIG_CRYPTO_CRCT10DIF_ARM64_CE=m
+# end of Accelerated Cryptographic Algorithms for CPU (arm64)
+
+CONFIG_CRYPTO_HW=y
+# CONFIG_CRYPTO_DEV_ATMEL_ECC is not set
+# CONFIG_CRYPTO_DEV_ATMEL_SHA204A is not set
+# CONFIG_CRYPTO_DEV_CCP is not set
+CONFIG_CRYPTO_DEV_VIRTIO=m
+# CONFIG_CRYPTO_DEV_SAFEXCEL is not set
+# CONFIG_CRYPTO_DEV_CCREE is not set
+# CONFIG_CRYPTO_DEV_HISI_SEC is not set
+# CONFIG_CRYPTO_DEV_AMLOGIC_GXL is not set
+CONFIG_ASYMMETRIC_KEY_TYPE=y
+CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=y
+CONFIG_X509_CERTIFICATE_PARSER=y
+CONFIG_PKCS8_PRIVATE_KEY_PARSER=m
+CONFIG_PKCS7_MESSAGE_PARSER=y
+# CONFIG_PKCS7_TEST_KEY is not set
+# CONFIG_SIGNED_PE_FILE_VERIFICATION is not set
+# CONFIG_FIPS_SIGNATURE_SELFTEST is not set
+
+#
+# Certificates for signature checking
+#
+CONFIG_MODULE_SIG_KEY="certs/signing_key.pem"
+CONFIG_MODULE_SIG_KEY_TYPE_RSA=y
+CONFIG_SYSTEM_TRUSTED_KEYRING=y
+CONFIG_SYSTEM_TRUSTED_KEYS=""
+# CONFIG_SYSTEM_EXTRA_CERTIFICATE is not set
+# CONFIG_SECONDARY_TRUSTED_KEYRING is not set
+# CONFIG_SYSTEM_BLACKLIST_KEYRING is not set
+# end of Certificates for signature checking
+
+#
+# Library routines
+#
+CONFIG_RAID6_PQ=m
+# CONFIG_RAID6_PQ_BENCHMARK is not set
+CONFIG_LINEAR_RANGES=y
+# CONFIG_PACKING is not set
+CONFIG_BITREVERSE=y
+CONFIG_HAVE_ARCH_BITREVERSE=y
+CONFIG_GENERIC_STRNCPY_FROM_USER=y
+CONFIG_GENERIC_STRNLEN_USER=y
+CONFIG_GENERIC_NET_UTILS=y
+# CONFIG_CORDIC is not set
+# CONFIG_PRIME_NUMBERS is not set
+CONFIG_RATIONAL=y
+CONFIG_GENERIC_PCI_IOMAP=y
+CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y
+CONFIG_ARCH_HAS_FAST_MULTIPLIER=y
+CONFIG_ARCH_USE_SYM_ANNOTATIONS=y
+# CONFIG_INDIRECT_PIO is not set
+
+#
+# Crypto library routines
+#
+CONFIG_CRYPTO_LIB_UTILS=y
+CONFIG_CRYPTO_LIB_AES=y
+CONFIG_CRYPTO_LIB_ARC4=m
+CONFIG_CRYPTO_LIB_GF128MUL=m
+CONFIG_CRYPTO_LIB_BLAKE2S_GENERIC=y
+CONFIG_CRYPTO_ARCH_HAVE_LIB_CHACHA=m
+CONFIG_CRYPTO_LIB_CHACHA_GENERIC=m
+CONFIG_CRYPTO_LIB_CHACHA=m
+CONFIG_CRYPTO_LIB_CURVE25519_GENERIC=m
+CONFIG_CRYPTO_LIB_CURVE25519=m
+CONFIG_CRYPTO_LIB_DES=m
+CONFIG_CRYPTO_LIB_POLY1305_RSIZE=9
+CONFIG_CRYPTO_ARCH_HAVE_LIB_POLY1305=m
+CONFIG_CRYPTO_LIB_POLY1305_GENERIC=m
+CONFIG_CRYPTO_LIB_POLY1305=m
+CONFIG_CRYPTO_LIB_CHACHA20POLY1305=m
+CONFIG_CRYPTO_LIB_SHA1=y
+CONFIG_CRYPTO_LIB_SHA256=y
+# end of Crypto library routines
+
+CONFIG_CRC_CCITT=y
+CONFIG_CRC16=y
+CONFIG_CRC_T10DIF=y
+# CONFIG_CRC64_ROCKSOFT is not set
+CONFIG_CRC_ITU_T=m
+CONFIG_CRC32=y
+# CONFIG_CRC32_SELFTEST is not set
+CONFIG_CRC32_SLICEBY8=y
+# CONFIG_CRC32_SLICEBY4 is not set
+# CONFIG_CRC32_SARWATE is not set
+# CONFIG_CRC32_BIT is not set
+# CONFIG_CRC64 is not set
+# CONFIG_CRC4 is not set
+# CONFIG_CRC7 is not set
+CONFIG_LIBCRC32C=y
+CONFIG_CRC8=m
+CONFIG_XXHASH=y
+CONFIG_AUDIT_ARCH_COMPAT_GENERIC=y
+# CONFIG_RANDOM32_SELFTEST is not set
+CONFIG_ZLIB_INFLATE=m
+CONFIG_ZLIB_DEFLATE=m
+CONFIG_LZO_COMPRESS=y
+CONFIG_LZO_DECOMPRESS=y
+CONFIG_LZ4_COMPRESS=y
+CONFIG_LZ4HC_COMPRESS=y
+CONFIG_LZ4_DECOMPRESS=y
+CONFIG_ZSTD_COMMON=y
+CONFIG_ZSTD_COMPRESS=y
+CONFIG_ZSTD_DECOMPRESS=y
+CONFIG_XZ_DEC=y
+CONFIG_XZ_DEC_X86=y
+CONFIG_XZ_DEC_POWERPC=y
+CONFIG_XZ_DEC_ARM=y
+CONFIG_XZ_DEC_ARMTHUMB=y
+CONFIG_XZ_DEC_SPARC=y
+# CONFIG_XZ_DEC_MICROLZMA is not set
+CONFIG_XZ_DEC_BCJ=y
+# CONFIG_XZ_DEC_TEST is not set
+CONFIG_GENERIC_ALLOCATOR=y
+CONFIG_TEXTSEARCH=y
+CONFIG_TEXTSEARCH_KMP=m
+CONFIG_INTERVAL_TREE=y
+CONFIG_XARRAY_MULTI=y
+CONFIG_ASSOCIATIVE_ARRAY=y
+CONFIG_HAS_IOMEM=y
+CONFIG_HAS_IOPORT=y
+CONFIG_HAS_DMA=y
+CONFIG_DMA_OPS=y
+CONFIG_NEED_SG_DMA_FLAGS=y
+CONFIG_NEED_SG_DMA_LENGTH=y
+CONFIG_NEED_DMA_MAP_STATE=y
+CONFIG_ARCH_DMA_ADDR_T_64BIT=y
+CONFIG_DMA_DECLARE_COHERENT=y
+CONFIG_ARCH_HAS_SETUP_DMA_OPS=y
+CONFIG_ARCH_HAS_TEARDOWN_DMA_OPS=y
+CONFIG_ARCH_HAS_SYNC_DMA_FOR_DEVICE=y
+CONFIG_ARCH_HAS_SYNC_DMA_FOR_CPU=y
+CONFIG_ARCH_HAS_DMA_PREP_COHERENT=y
+CONFIG_SWIOTLB=y
+# CONFIG_SWIOTLB_DYNAMIC is not set
+CONFIG_DMA_BOUNCE_UNALIGNED_KMALLOC=y
+# CONFIG_DMA_RESTRICTED_POOL is not set
+CONFIG_DMA_NONCOHERENT_MMAP=y
+CONFIG_DMA_COHERENT_POOL=y
+CONFIG_DMA_DIRECT_REMAP=y
+# CONFIG_DMA_API_DEBUG is not set
+CONFIG_SGL_ALLOC=y
+CONFIG_CPU_RMAP=y
+CONFIG_DQL=y
+CONFIG_GLOB=y
+# CONFIG_GLOB_SELFTEST is not set
+CONFIG_NLATTR=y
+CONFIG_CLZ_TAB=y
+CONFIG_IRQ_POLL=y
+CONFIG_MPILIB=y
+CONFIG_DIMLIB=y
+CONFIG_LIBFDT=y
+CONFIG_OID_REGISTRY=y
+CONFIG_UCS2_STRING=y
+CONFIG_HAVE_GENERIC_VDSO=y
+CONFIG_GENERIC_GETTIMEOFDAY=y
+CONFIG_GENERIC_VDSO_TIME_NS=y
+CONFIG_FONT_SUPPORT=y
+CONFIG_FONTS=y
+# CONFIG_FONT_8x8 is not set
+# CONFIG_FONT_8x16 is not set
+# CONFIG_FONT_6x11 is not set
+# CONFIG_FONT_7x14 is not set
+# CONFIG_FONT_PEARL_8x8 is not set
+# CONFIG_FONT_ACORN_8x8 is not set
+# CONFIG_FONT_MINI_4x6 is not set
+# CONFIG_FONT_6x10 is not set
+# CONFIG_FONT_10x18 is not set
+# CONFIG_FONT_SUN8x16 is not set
+# CONFIG_FONT_SUN12x22 is not set
+CONFIG_FONT_TER12x24=y
+# CONFIG_FONT_TER16x32 is not set
+# CONFIG_FONT_6x8 is not set
+CONFIG_SG_POOL=y
+CONFIG_ARCH_STACKWALK=y
+CONFIG_STACKDEPOT=y
+CONFIG_STACKDEPOT_MAX_FRAMES=64
+CONFIG_SBITMAP=y
+# CONFIG_LWQ_TEST is not set
+# end of Library routines
+
+CONFIG_GENERIC_IOREMAP=y
+CONFIG_GENERIC_LIB_DEVMEM_IS_ALLOWED=y
+
+#
+# Kernel hacking
+#
+
+#
+# printk and dmesg options
+#
+CONFIG_PRINTK_TIME=y
+# CONFIG_PRINTK_CALLER is not set
+# CONFIG_STACKTRACE_BUILD_ID is not set
+CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7
+CONFIG_CONSOLE_LOGLEVEL_QUIET=4
+CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4
+# CONFIG_DYNAMIC_DEBUG is not set
+# CONFIG_DYNAMIC_DEBUG_CORE is not set
+CONFIG_SYMBOLIC_ERRNAME=y
+CONFIG_DEBUG_BUGVERBOSE=y
+# end of printk and dmesg options
+
+# CONFIG_DEBUG_KERNEL is not set
+
+#
+# Compile-time checks and compiler options
+#
+CONFIG_AS_HAS_NON_CONST_ULEB128=y
+CONFIG_FRAME_WARN=2048
+# CONFIG_STRIP_ASM_SYMS is not set
+# CONFIG_HEADERS_INSTALL is not set
+# CONFIG_DEBUG_SECTION_MISMATCH is not set
+CONFIG_SECTION_MISMATCH_WARN_ONLY=y
+CONFIG_ARCH_WANT_FRAME_POINTERS=y
+CONFIG_FRAME_POINTER=y
+# end of Compile-time checks and compiler options
+
+#
+# Generic Kernel Debugging Instruments
+#
+# CONFIG_MAGIC_SYSRQ is not set
+# CONFIG_DEBUG_FS is not set
+CONFIG_HAVE_ARCH_KGDB=y
+CONFIG_ARCH_HAS_UBSAN_SANITIZE_ALL=y
+# CONFIG_UBSAN is not set
+CONFIG_HAVE_KCSAN_COMPILER=y
+# end of Generic Kernel Debugging Instruments
+
+#
+# Networking Debugging
+#
+# end of Networking Debugging
+
+#
+# Memory Debugging
+#
+# CONFIG_PAGE_EXTENSION is not set
+CONFIG_SLUB_DEBUG=y
+# CONFIG_SLUB_DEBUG_ON is not set
+# CONFIG_PAGE_TABLE_CHECK is not set
+# CONFIG_PAGE_POISONING is not set
+# CONFIG_DEBUG_RODATA_TEST is not set
+CONFIG_ARCH_HAS_DEBUG_WX=y
+# CONFIG_DEBUG_WX is not set
+CONFIG_GENERIC_PTDUMP=y
+CONFIG_HAVE_DEBUG_KMEMLEAK=y
+# CONFIG_PER_VMA_LOCK_STATS is not set
+CONFIG_ARCH_HAS_DEBUG_VM_PGTABLE=y
+# CONFIG_DEBUG_VM_PGTABLE is not set
+CONFIG_ARCH_HAS_DEBUG_VIRTUAL=y
+CONFIG_DEBUG_MEMORY_INIT=y
+CONFIG_HAVE_ARCH_KASAN=y
+CONFIG_HAVE_ARCH_KASAN_SW_TAGS=y
+CONFIG_HAVE_ARCH_KASAN_HW_TAGS=y
+CONFIG_HAVE_ARCH_KASAN_VMALLOC=y
+CONFIG_CC_HAS_KASAN_GENERIC=y
+CONFIG_CC_HAS_KASAN_SW_TAGS=y
+CONFIG_CC_HAS_WORKING_NOSANITIZE_ADDRESS=y
+# CONFIG_KASAN is not set
+CONFIG_HAVE_ARCH_KFENCE=y
+# CONFIG_KFENCE is not set
+# end of Memory Debugging
+
+#
+# Debug Oops, Lockups and Hangs
+#
+# CONFIG_PANIC_ON_OOPS is not set
+CONFIG_PANIC_ON_OOPS_VALUE=0
+CONFIG_PANIC_TIMEOUT=30
+CONFIG_HAVE_HARDLOCKUP_DETECTOR_BUDDY=y
+# CONFIG_TEST_LOCKUP is not set
+# end of Debug Oops, Lockups and Hangs
+
+#
+# Scheduler Debugging
+#
+CONFIG_SCHED_INFO=y
+# end of Scheduler Debugging
+
+# CONFIG_DEBUG_TIMEKEEPING is not set
+
+#
+# Lock Debugging (spinlocks, mutexes, etc...)
+#
+CONFIG_LOCK_DEBUGGING_SUPPORT=y
+# CONFIG_WW_MUTEX_SELFTEST is not set
+# end of Lock Debugging (spinlocks, mutexes, etc...)
+
+# CONFIG_DEBUG_IRQFLAGS is not set
+CONFIG_STACKTRACE=y
+# CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set
+
+#
+# Debug kernel data structures
+#
+# end of Debug kernel data structures
+
+#
+# RCU Debugging
+#
+CONFIG_RCU_CPU_STALL_TIMEOUT=21
+CONFIG_RCU_EXP_CPU_STALL_TIMEOUT=0
+# CONFIG_RCU_CPU_STALL_CPUTIME is not set
+# end of RCU Debugging
+
+CONFIG_HAVE_FUNCTION_TRACER=y
+CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
+CONFIG_HAVE_FUNCTION_GRAPH_RETVAL=y
+CONFIG_HAVE_DYNAMIC_FTRACE=y
+CONFIG_HAVE_DYNAMIC_FTRACE_WITH_ARGS=y
+CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
+CONFIG_HAVE_SYSCALL_TRACEPOINTS=y
+CONFIG_HAVE_C_RECORDMCOUNT=y
+CONFIG_TRACING_SUPPORT=y
+# CONFIG_FTRACE is not set
+# CONFIG_SAMPLES is not set
+CONFIG_HAVE_SAMPLE_FTRACE_DIRECT=y
+CONFIG_HAVE_SAMPLE_FTRACE_DIRECT_MULTI=y
+CONFIG_STRICT_DEVMEM=y
+CONFIG_IO_STRICT_DEVMEM=y
+
+#
+# arm64 Debugging
+#
+# CONFIG_PID_IN_CONTEXTIDR is not set
+# CONFIG_ARM64_RELOC_TEST is not set
+# CONFIG_CORESIGHT is not set
+# end of arm64 Debugging
+
+#
+# Kernel Testing and Coverage
+#
+# CONFIG_KUNIT is not set
+CONFIG_ARCH_HAS_KCOV=y
+CONFIG_CC_HAS_SANCOV_TRACE_PC=y
+# CONFIG_KCOV is not set
+# CONFIG_RUNTIME_TESTING_MENU is not set
+CONFIG_ARCH_USE_MEMTEST=y
+# CONFIG_MEMTEST is not set
+# end of Kernel Testing and Coverage
+
+#
+# Rust hacking
+#
+# end of Rust hacking
+# end of Kernel hacking
diff --git a/testing/linux-elm/config-elm.aarch64 b/testing/linux-elm/config-elm.aarch64
deleted file mode 100644
index b08526a9ed4..00000000000
--- a/testing/linux-elm/config-elm.aarch64
+++ /dev/null
@@ -1,6528 +0,0 @@
-#
-# Automatically generated file; DO NOT EDIT.
-# Linux/arm64 5.17.6 Kernel Configuration
-#
-CONFIG_CC_VERSION_TEXT="gcc (Alpine 11.2.1_git20220117) 11.2.1 20220117"
-CONFIG_CC_IS_GCC=y
-CONFIG_GCC_VERSION=110201
-CONFIG_CLANG_VERSION=0
-CONFIG_AS_IS_GNU=y
-CONFIG_AS_VERSION=23700
-CONFIG_LD_IS_BFD=y
-CONFIG_LD_VERSION=23700
-CONFIG_LLD_VERSION=0
-CONFIG_CC_CAN_LINK=y
-CONFIG_CC_CAN_LINK_STATIC=y
-CONFIG_CC_HAS_ASM_GOTO=y
-CONFIG_CC_HAS_ASM_GOTO_OUTPUT=y
-CONFIG_CC_HAS_ASM_INLINE=y
-CONFIG_CC_HAS_NO_PROFILE_FN_ATTR=y
-CONFIG_IRQ_WORK=y
-CONFIG_BUILDTIME_TABLE_SORT=y
-CONFIG_THREAD_INFO_IN_TASK=y
-
-#
-# General setup
-#
-CONFIG_INIT_ENV_ARG_LIMIT=32
-# CONFIG_COMPILE_TEST is not set
-# CONFIG_WERROR is not set
-CONFIG_LOCALVERSION=""
-# CONFIG_LOCALVERSION_AUTO is not set
-CONFIG_BUILD_SALT=""
-CONFIG_DEFAULT_INIT=""
-CONFIG_DEFAULT_HOSTNAME="localhost"
-CONFIG_SWAP=y
-CONFIG_SYSVIPC=y
-CONFIG_SYSVIPC_SYSCTL=y
-CONFIG_POSIX_MQUEUE=y
-CONFIG_POSIX_MQUEUE_SYSCTL=y
-# CONFIG_WATCH_QUEUE is not set
-CONFIG_CROSS_MEMORY_ATTACH=y
-# CONFIG_USELIB is not set
-# CONFIG_AUDIT is not set
-CONFIG_HAVE_ARCH_AUDITSYSCALL=y
-
-#
-# IRQ subsystem
-#
-CONFIG_GENERIC_IRQ_PROBE=y
-CONFIG_GENERIC_IRQ_SHOW=y
-CONFIG_GENERIC_IRQ_SHOW_LEVEL=y
-CONFIG_GENERIC_IRQ_EFFECTIVE_AFF_MASK=y
-CONFIG_GENERIC_IRQ_MIGRATION=y
-CONFIG_HARDIRQS_SW_RESEND=y
-CONFIG_IRQ_DOMAIN=y
-CONFIG_IRQ_DOMAIN_HIERARCHY=y
-CONFIG_GENERIC_IRQ_IPI=y
-CONFIG_GENERIC_MSI_IRQ=y
-CONFIG_GENERIC_MSI_IRQ_DOMAIN=y
-CONFIG_IRQ_MSI_IOMMU=y
-CONFIG_IRQ_FORCED_THREADING=y
-CONFIG_SPARSE_IRQ=y
-# end of IRQ subsystem
-
-CONFIG_GENERIC_TIME_VSYSCALL=y
-CONFIG_GENERIC_CLOCKEVENTS=y
-CONFIG_ARCH_HAS_TICK_BROADCAST=y
-CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y
-CONFIG_HAVE_POSIX_CPU_TIMERS_TASK_WORK=y
-CONFIG_POSIX_CPU_TIMERS_TASK_WORK=y
-
-#
-# Timers subsystem
-#
-CONFIG_TICK_ONESHOT=y
-CONFIG_NO_HZ_COMMON=y
-# CONFIG_HZ_PERIODIC is not set
-CONFIG_NO_HZ_IDLE=y
-# CONFIG_NO_HZ_FULL is not set
-# CONFIG_NO_HZ is not set
-CONFIG_HIGH_RES_TIMERS=y
-# end of Timers subsystem
-
-CONFIG_BPF=y
-CONFIG_HAVE_EBPF_JIT=y
-CONFIG_ARCH_WANT_DEFAULT_BPF_JIT=y
-
-#
-# BPF subsystem
-#
-# CONFIG_BPF_SYSCALL is not set
-# CONFIG_BPF_JIT is not set
-# end of BPF subsystem
-
-CONFIG_PREEMPT_BUILD=y
-# CONFIG_PREEMPT_NONE is not set
-# CONFIG_PREEMPT_VOLUNTARY is not set
-CONFIG_PREEMPT=y
-CONFIG_PREEMPT_COUNT=y
-CONFIG_PREEMPTION=y
-# CONFIG_SCHED_CORE is not set
-
-#
-# CPU/Task time and stats accounting
-#
-CONFIG_TICK_CPU_ACCOUNTING=y
-# CONFIG_VIRT_CPU_ACCOUNTING_GEN is not set
-# CONFIG_IRQ_TIME_ACCOUNTING is not set
-CONFIG_SCHED_THERMAL_PRESSURE=y
-# CONFIG_BSD_PROCESS_ACCT is not set
-CONFIG_TASKSTATS=y
-CONFIG_TASK_DELAY_ACCT=y
-# CONFIG_TASK_XACCT is not set
-# CONFIG_PSI is not set
-# end of CPU/Task time and stats accounting
-
-CONFIG_CPU_ISOLATION=y
-
-#
-# RCU Subsystem
-#
-CONFIG_TREE_RCU=y
-CONFIG_PREEMPT_RCU=y
-# CONFIG_RCU_EXPERT is not set
-CONFIG_SRCU=y
-CONFIG_TREE_SRCU=y
-CONFIG_TASKS_RCU_GENERIC=y
-CONFIG_TASKS_RCU=y
-CONFIG_RCU_STALL_COMMON=y
-CONFIG_RCU_NEED_SEGCBLIST=y
-# end of RCU Subsystem
-
-CONFIG_IKCONFIG=m
-CONFIG_IKCONFIG_PROC=y
-# CONFIG_IKHEADERS is not set
-CONFIG_LOG_BUF_SHIFT=18
-CONFIG_LOG_CPU_MAX_BUF_SHIFT=12
-CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=13
-CONFIG_GENERIC_SCHED_CLOCK=y
-
-#
-# Scheduler features
-#
-# CONFIG_UCLAMP_TASK is not set
-# end of Scheduler features
-
-CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y
-CONFIG_CC_HAS_INT128=y
-CONFIG_CC_IMPLICIT_FALLTHROUGH="-Wimplicit-fallthrough=5"
-CONFIG_ARCH_SUPPORTS_INT128=y
-CONFIG_CGROUPS=y
-CONFIG_PAGE_COUNTER=y
-CONFIG_MEMCG=y
-CONFIG_MEMCG_SWAP=y
-CONFIG_MEMCG_KMEM=y
-CONFIG_BLK_CGROUP=y
-CONFIG_CGROUP_WRITEBACK=y
-CONFIG_CGROUP_SCHED=y
-CONFIG_FAIR_GROUP_SCHED=y
-CONFIG_CFS_BANDWIDTH=y
-# CONFIG_RT_GROUP_SCHED is not set
-CONFIG_CGROUP_PIDS=y
-CONFIG_CGROUP_RDMA=y
-CONFIG_CGROUP_FREEZER=y
-CONFIG_CPUSETS=y
-CONFIG_PROC_PID_CPUSET=y
-CONFIG_CGROUP_DEVICE=y
-CONFIG_CGROUP_CPUACCT=y
-# CONFIG_CGROUP_PERF is not set
-# CONFIG_CGROUP_MISC is not set
-CONFIG_SOCK_CGROUP_DATA=y
-CONFIG_NAMESPACES=y
-CONFIG_UTS_NS=y
-CONFIG_TIME_NS=y
-CONFIG_IPC_NS=y
-CONFIG_USER_NS=y
-CONFIG_PID_NS=y
-CONFIG_NET_NS=y
-# CONFIG_CHECKPOINT_RESTORE is not set
-CONFIG_SCHED_AUTOGROUP=y
-# CONFIG_SYSFS_DEPRECATED is not set
-# CONFIG_RELAY is not set
-# CONFIG_BLK_DEV_INITRD is not set
-# CONFIG_BOOT_CONFIG is not set
-CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE=y
-# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
-CONFIG_LD_ORPHAN_WARN=y
-CONFIG_SYSCTL=y
-CONFIG_HAVE_UID16=y
-CONFIG_SYSCTL_EXCEPTION_TRACE=y
-# CONFIG_EXPERT is not set
-CONFIG_UID16=y
-CONFIG_MULTIUSER=y
-CONFIG_SYSFS_SYSCALL=y
-CONFIG_FHANDLE=y
-CONFIG_POSIX_TIMERS=y
-CONFIG_PRINTK=y
-CONFIG_BUG=y
-CONFIG_ELF_CORE=y
-CONFIG_BASE_FULL=y
-CONFIG_FUTEX=y
-CONFIG_FUTEX_PI=y
-CONFIG_EPOLL=y
-CONFIG_SIGNALFD=y
-CONFIG_TIMERFD=y
-CONFIG_EVENTFD=y
-CONFIG_SHMEM=y
-CONFIG_AIO=y
-CONFIG_IO_URING=y
-CONFIG_ADVISE_SYSCALLS=y
-CONFIG_MEMBARRIER=y
-CONFIG_KALLSYMS=y
-CONFIG_KALLSYMS_BASE_RELATIVE=y
-# CONFIG_USERFAULTFD is not set
-CONFIG_ARCH_HAS_MEMBARRIER_SYNC_CORE=y
-CONFIG_KCMP=y
-CONFIG_RSEQ=y
-# CONFIG_EMBEDDED is not set
-CONFIG_HAVE_PERF_EVENTS=y
-CONFIG_GUEST_PERF_EVENTS=y
-
-#
-# Kernel Performance Events And Counters
-#
-CONFIG_PERF_EVENTS=y
-# end of Kernel Performance Events And Counters
-
-CONFIG_VM_EVENT_COUNTERS=y
-CONFIG_SLUB_DEBUG=y
-# CONFIG_COMPAT_BRK is not set
-# CONFIG_SLAB is not set
-CONFIG_SLUB=y
-CONFIG_SLAB_MERGE_DEFAULT=y
-# CONFIG_SLAB_FREELIST_RANDOM is not set
-# CONFIG_SLAB_FREELIST_HARDENED is not set
-# CONFIG_SHUFFLE_PAGE_ALLOCATOR is not set
-# CONFIG_SLUB_CPU_PARTIAL is not set
-CONFIG_SYSTEM_DATA_VERIFICATION=y
-# CONFIG_PROFILING is not set
-# end of General setup
-
-CONFIG_ARM64=y
-CONFIG_64BIT=y
-CONFIG_MMU=y
-CONFIG_ARM64_PAGE_SHIFT=12
-CONFIG_ARM64_CONT_PTE_SHIFT=4
-CONFIG_ARM64_CONT_PMD_SHIFT=4
-CONFIG_ARCH_MMAP_RND_BITS_MIN=18
-CONFIG_ARCH_MMAP_RND_BITS_MAX=33
-CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=11
-CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MAX=16
-CONFIG_NO_IOPORT_MAP=y
-CONFIG_STACKTRACE_SUPPORT=y
-CONFIG_ILLEGAL_POINTER_VALUE=0xdead000000000000
-CONFIG_LOCKDEP_SUPPORT=y
-CONFIG_GENERIC_BUG=y
-CONFIG_GENERIC_BUG_RELATIVE_POINTERS=y
-CONFIG_GENERIC_HWEIGHT=y
-CONFIG_GENERIC_CSUM=y
-CONFIG_GENERIC_CALIBRATE_DELAY=y
-CONFIG_ARCH_MHP_MEMMAP_ON_MEMORY_ENABLE=y
-CONFIG_SMP=y
-CONFIG_KERNEL_MODE_NEON=y
-CONFIG_FIX_EARLYCON_MEM=y
-CONFIG_PGTABLE_LEVELS=4
-CONFIG_ARCH_SUPPORTS_UPROBES=y
-CONFIG_ARCH_PROC_KCORE_TEXT=y
-
-#
-# Platform selection
-#
-# CONFIG_ARCH_ACTIONS is not set
-# CONFIG_ARCH_SUNXI is not set
-# CONFIG_ARCH_ALPINE is not set
-# CONFIG_ARCH_APPLE is not set
-# CONFIG_ARCH_BCM2835 is not set
-# CONFIG_ARCH_BCM4908 is not set
-# CONFIG_ARCH_BCM_IPROC is not set
-# CONFIG_ARCH_BERLIN is not set
-# CONFIG_ARCH_BITMAIN is not set
-# CONFIG_ARCH_BRCMSTB is not set
-# CONFIG_ARCH_EXYNOS is not set
-# CONFIG_ARCH_SPARX5 is not set
-# CONFIG_ARCH_K3 is not set
-# CONFIG_ARCH_LAYERSCAPE is not set
-# CONFIG_ARCH_LG1K is not set
-# CONFIG_ARCH_HISI is not set
-# CONFIG_ARCH_KEEMBAY is not set
-CONFIG_ARCH_MEDIATEK=y
-# CONFIG_ARCH_MESON is not set
-# CONFIG_ARCH_MVEBU is not set
-# CONFIG_ARCH_MXC is not set
-# CONFIG_ARCH_QCOM is not set
-# CONFIG_ARCH_REALTEK is not set
-# CONFIG_ARCH_RENESAS is not set
-# CONFIG_ARCH_ROCKCHIP is not set
-# CONFIG_ARCH_S32 is not set
-# CONFIG_ARCH_SEATTLE is not set
-# CONFIG_ARCH_INTEL_SOCFPGA is not set
-# CONFIG_ARCH_SYNQUACER is not set
-# CONFIG_ARCH_TEGRA is not set
-# CONFIG_ARCH_SPRD is not set
-# CONFIG_ARCH_THUNDER is not set
-# CONFIG_ARCH_THUNDER2 is not set
-# CONFIG_ARCH_UNIPHIER is not set
-# CONFIG_ARCH_VEXPRESS is not set
-# CONFIG_ARCH_VISCONTI is not set
-# CONFIG_ARCH_XGENE is not set
-# CONFIG_ARCH_ZYNQMP is not set
-# end of Platform selection
-
-#
-# Kernel Features
-#
-
-#
-# ARM errata workarounds via the alternatives framework
-#
-CONFIG_ARM64_WORKAROUND_CLEAN_CACHE=y
-CONFIG_ARM64_ERRATUM_826319=y
-CONFIG_ARM64_ERRATUM_827319=y
-CONFIG_ARM64_ERRATUM_824069=y
-CONFIG_ARM64_ERRATUM_819472=y
-CONFIG_ARM64_ERRATUM_832075=y
-CONFIG_ARM64_ERRATUM_834220=y
-CONFIG_ARM64_ERRATUM_845719=y
-CONFIG_ARM64_ERRATUM_843419=y
-CONFIG_ARM64_LD_HAS_FIX_ERRATUM_843419=y
-CONFIG_ARM64_ERRATUM_1024718=y
-CONFIG_ARM64_ERRATUM_1418040=y
-CONFIG_ARM64_WORKAROUND_SPECULATIVE_AT=y
-CONFIG_ARM64_ERRATUM_1165522=y
-CONFIG_ARM64_ERRATUM_1319367=y
-CONFIG_ARM64_ERRATUM_1530923=y
-CONFIG_ARM64_WORKAROUND_REPEAT_TLBI=y
-CONFIG_ARM64_ERRATUM_1286807=y
-CONFIG_ARM64_ERRATUM_1463225=y
-CONFIG_ARM64_ERRATUM_1542419=y
-CONFIG_ARM64_ERRATUM_1508412=y
-# CONFIG_ARM64_ERRATUM_2051678 is not set
-# CONFIG_ARM64_ERRATUM_2077057 is not set
-CONFIG_ARM64_WORKAROUND_TSB_FLUSH_FAILURE=y
-CONFIG_ARM64_ERRATUM_2054223=y
-# CONFIG_ARM64_ERRATUM_2067961 is not set
-CONFIG_CAVIUM_ERRATUM_22375=y
-CONFIG_CAVIUM_ERRATUM_23154=y
-CONFIG_CAVIUM_ERRATUM_27456=y
-CONFIG_CAVIUM_ERRATUM_30115=y
-CONFIG_CAVIUM_TX2_ERRATUM_219=y
-CONFIG_FUJITSU_ERRATUM_010001=y
-CONFIG_HISILICON_ERRATUM_161600802=y
-CONFIG_QCOM_FALKOR_ERRATUM_1003=y
-CONFIG_QCOM_FALKOR_ERRATUM_1009=y
-CONFIG_QCOM_QDF2400_ERRATUM_0065=y
-CONFIG_QCOM_FALKOR_ERRATUM_E1041=y
-CONFIG_NVIDIA_CARMEL_CNP_ERRATUM=y
-CONFIG_SOCIONEXT_SYNQUACER_PREITS=y
-# end of ARM errata workarounds via the alternatives framework
-
-CONFIG_ARM64_4K_PAGES=y
-# CONFIG_ARM64_16K_PAGES is not set
-# CONFIG_ARM64_64K_PAGES is not set
-# CONFIG_ARM64_VA_BITS_39 is not set
-CONFIG_ARM64_VA_BITS_48=y
-CONFIG_ARM64_VA_BITS=48
-CONFIG_ARM64_PA_BITS_48=y
-CONFIG_ARM64_PA_BITS=48
-# CONFIG_CPU_BIG_ENDIAN is not set
-CONFIG_CPU_LITTLE_ENDIAN=y
-CONFIG_SCHED_MC=y
-# CONFIG_SCHED_CLUSTER is not set
-CONFIG_SCHED_SMT=y
-CONFIG_NR_CPUS=8
-CONFIG_HOTPLUG_CPU=y
-# CONFIG_NUMA is not set
-# CONFIG_HZ_100 is not set
-# CONFIG_HZ_250 is not set
-# CONFIG_HZ_300 is not set
-CONFIG_HZ_1000=y
-CONFIG_HZ=1000
-CONFIG_SCHED_HRTICK=y
-CONFIG_ARCH_SPARSEMEM_ENABLE=y
-CONFIG_HW_PERF_EVENTS=y
-# CONFIG_PARAVIRT is not set
-# CONFIG_PARAVIRT_TIME_ACCOUNTING is not set
-# CONFIG_KEXEC is not set
-# CONFIG_KEXEC_FILE is not set
-# CONFIG_CRASH_DUMP is not set
-CONFIG_TRANS_TABLE=y
-# CONFIG_XEN is not set
-CONFIG_FORCE_MAX_ZONEORDER=11
-CONFIG_UNMAP_KERNEL_AT_EL0=y
-CONFIG_MITIGATE_SPECTRE_BRANCH_HISTORY=y
-CONFIG_RODATA_FULL_DEFAULT_ENABLED=y
-# CONFIG_ARM64_SW_TTBR0_PAN is not set
-CONFIG_ARM64_TAGGED_ADDR_ABI=y
-CONFIG_COMPAT=y
-CONFIG_KUSER_HELPERS=y
-CONFIG_ARMV8_DEPRECATED=y
-CONFIG_SWP_EMULATION=y
-CONFIG_CP15_BARRIER_EMULATION=y
-CONFIG_SETEND_EMULATION=y
-
-#
-# ARMv8.1 architectural features
-#
-CONFIG_ARM64_HW_AFDBM=y
-CONFIG_ARM64_PAN=y
-CONFIG_AS_HAS_LDAPR=y
-CONFIG_AS_HAS_LSE_ATOMICS=y
-CONFIG_ARM64_LSE_ATOMICS=y
-CONFIG_ARM64_USE_LSE_ATOMICS=y
-# end of ARMv8.1 architectural features
-
-#
-# ARMv8.2 architectural features
-#
-CONFIG_AS_HAS_ARMV8_2=y
-CONFIG_AS_HAS_SHA3=y
-# CONFIG_ARM64_PMEM is not set
-CONFIG_ARM64_RAS_EXTN=y
-CONFIG_ARM64_CNP=y
-# end of ARMv8.2 architectural features
-
-#
-# ARMv8.3 architectural features
-#
-CONFIG_ARM64_PTR_AUTH=y
-CONFIG_ARM64_PTR_AUTH_KERNEL=y
-CONFIG_CC_HAS_BRANCH_PROT_PAC_RET=y
-CONFIG_CC_HAS_SIGN_RETURN_ADDRESS=y
-CONFIG_AS_HAS_PAC=y
-CONFIG_AS_HAS_CFI_NEGATE_RA_STATE=y
-# end of ARMv8.3 architectural features
-
-#
-# ARMv8.4 architectural features
-#
-CONFIG_ARM64_AMU_EXTN=y
-CONFIG_AS_HAS_ARMV8_4=y
-CONFIG_ARM64_TLB_RANGE=y
-# end of ARMv8.4 architectural features
-
-#
-# ARMv8.5 architectural features
-#
-CONFIG_AS_HAS_ARMV8_5=y
-CONFIG_ARM64_BTI=y
-CONFIG_ARM64_BTI_KERNEL=y
-CONFIG_CC_HAS_BRANCH_PROT_PAC_RET_BTI=y
-CONFIG_ARM64_E0PD=y
-CONFIG_ARCH_RANDOM=y
-CONFIG_ARM64_AS_HAS_MTE=y
-CONFIG_ARM64_MTE=y
-# end of ARMv8.5 architectural features
-
-#
-# ARMv8.7 architectural features
-#
-CONFIG_ARM64_EPAN=y
-# end of ARMv8.7 architectural features
-
-CONFIG_ARM64_SVE=y
-CONFIG_ARM64_MODULE_PLTS=y
-# CONFIG_ARM64_PSEUDO_NMI is not set
-CONFIG_RELOCATABLE=y
-# CONFIG_RANDOMIZE_BASE is not set
-CONFIG_CC_HAVE_STACKPROTECTOR_SYSREG=y
-CONFIG_STACKPROTECTOR_PER_TASK=y
-# end of Kernel Features
-
-#
-# Boot options
-#
-# CONFIG_ARM64_ACPI_PARKING_PROTOCOL is not set
-CONFIG_CMDLINE=""
-CONFIG_EFI_STUB=y
-CONFIG_EFI=y
-CONFIG_DMI=y
-# end of Boot options
-
-CONFIG_SYSVIPC_COMPAT=y
-
-#
-# Power management options
-#
-CONFIG_SUSPEND=y
-CONFIG_SUSPEND_FREEZER=y
-CONFIG_HIBERNATE_CALLBACKS=y
-CONFIG_HIBERNATION=y
-CONFIG_HIBERNATION_SNAPSHOT_DEV=y
-CONFIG_PM_STD_PARTITION=""
-CONFIG_PM_SLEEP=y
-CONFIG_PM_SLEEP_SMP=y
-CONFIG_PM_AUTOSLEEP=y
-# CONFIG_PM_WAKELOCKS is not set
-CONFIG_PM=y
-# CONFIG_PM_DEBUG is not set
-CONFIG_PM_CLK=y
-CONFIG_PM_GENERIC_DOMAINS=y
-# CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set
-CONFIG_PM_GENERIC_DOMAINS_SLEEP=y
-CONFIG_PM_GENERIC_DOMAINS_OF=y
-CONFIG_CPU_PM=y
-CONFIG_ENERGY_MODEL=y
-CONFIG_ARCH_HIBERNATION_POSSIBLE=y
-CONFIG_ARCH_HIBERNATION_HEADER=y
-CONFIG_ARCH_SUSPEND_POSSIBLE=y
-# end of Power management options
-
-#
-# CPU Power Management
-#
-
-#
-# CPU Idle
-#
-CONFIG_CPU_IDLE=y
-CONFIG_CPU_IDLE_MULTIPLE_DRIVERS=y
-CONFIG_CPU_IDLE_GOV_LADDER=y
-CONFIG_CPU_IDLE_GOV_MENU=y
-CONFIG_CPU_IDLE_GOV_TEO=y
-CONFIG_DT_IDLE_STATES=y
-
-#
-# ARM CPU Idle Drivers
-#
-CONFIG_ARM_CPUIDLE=y
-CONFIG_ARM_PSCI_CPUIDLE=y
-CONFIG_ARM_PSCI_CPUIDLE_DOMAIN=y
-# end of ARM CPU Idle Drivers
-# end of CPU Idle
-
-#
-# CPU Frequency scaling
-#
-CONFIG_CPU_FREQ=y
-CONFIG_CPU_FREQ_GOV_ATTR_SET=y
-CONFIG_CPU_FREQ_GOV_COMMON=y
-# CONFIG_CPU_FREQ_STAT is not set
-CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
-# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set
-# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
-# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set
-# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
-# CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL is not set
-CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
-CONFIG_CPU_FREQ_GOV_POWERSAVE=m
-CONFIG_CPU_FREQ_GOV_USERSPACE=m
-CONFIG_CPU_FREQ_GOV_ONDEMAND=m
-CONFIG_CPU_FREQ_GOV_CONSERVATIVE=m
-CONFIG_CPU_FREQ_GOV_SCHEDUTIL=y
-
-#
-# CPU frequency scaling drivers
-#
-# CONFIG_CPUFREQ_DT is not set
-CONFIG_ACPI_CPPC_CPUFREQ=m
-CONFIG_ACPI_CPPC_CPUFREQ_FIE=y
-CONFIG_ARM_MEDIATEK_CPUFREQ=y
-CONFIG_ARM_MEDIATEK_CPUFREQ_HW=m
-CONFIG_ARM_SCMI_CPUFREQ=m
-# end of CPU Frequency scaling
-# end of CPU Power Management
-
-CONFIG_ARCH_SUPPORTS_ACPI=y
-CONFIG_ACPI=y
-CONFIG_ACPI_GENERIC_GSI=y
-CONFIG_ACPI_CCA_REQUIRED=y
-# CONFIG_ACPI_DEBUGGER is not set
-CONFIG_ACPI_SPCR_TABLE=y
-# CONFIG_ACPI_EC_DEBUGFS is not set
-CONFIG_ACPI_AC=m
-CONFIG_ACPI_BATTERY=m
-CONFIG_ACPI_BUTTON=m
-# CONFIG_ACPI_TINY_POWER_BUTTON is not set
-CONFIG_ACPI_FAN=m
-CONFIG_ACPI_TAD=m
-# CONFIG_ACPI_DOCK is not set
-CONFIG_ACPI_PROCESSOR_IDLE=y
-CONFIG_ACPI_CPPC_LIB=y
-CONFIG_ACPI_PROCESSOR=m
-CONFIG_ACPI_HOTPLUG_CPU=y
-CONFIG_ACPI_THERMAL=m
-CONFIG_ARCH_HAS_ACPI_TABLE_UPGRADE=y
-# CONFIG_ACPI_DEBUG is not set
-CONFIG_ACPI_CONTAINER=y
-CONFIG_ACPI_HED=m
-# CONFIG_ACPI_BGRT is not set
-CONFIG_ACPI_REDUCED_HARDWARE_ONLY=y
-CONFIG_HAVE_ACPI_APEI=y
-# CONFIG_ACPI_APEI is not set
-CONFIG_ACPI_CONFIGFS=m
-# CONFIG_ACPI_PFRUT is not set
-CONFIG_ACPI_IORT=y
-CONFIG_ACPI_GTDT=y
-CONFIG_ACPI_PPTT=y
-# CONFIG_ACPI_PCC is not set
-CONFIG_PMIC_OPREGION=y
-CONFIG_ACPI_VIOT=y
-CONFIG_IRQ_BYPASS_MANAGER=y
-CONFIG_HAVE_KVM=y
-CONFIG_HAVE_KVM_IRQCHIP=y
-CONFIG_HAVE_KVM_IRQFD=y
-CONFIG_HAVE_KVM_IRQ_ROUTING=y
-CONFIG_HAVE_KVM_EVENTFD=y
-CONFIG_KVM_MMIO=y
-CONFIG_HAVE_KVM_MSI=y
-CONFIG_HAVE_KVM_CPU_RELAX_INTERCEPT=y
-CONFIG_KVM_VFIO=y
-CONFIG_HAVE_KVM_ARCH_TLB_FLUSH_ALL=y
-CONFIG_KVM_GENERIC_DIRTYLOG_READ_PROTECT=y
-CONFIG_HAVE_KVM_IRQ_BYPASS=y
-CONFIG_HAVE_KVM_VCPU_RUN_PID_CHANGE=y
-CONFIG_KVM_XFER_TO_GUEST_WORK=y
-CONFIG_VIRTUALIZATION=y
-CONFIG_KVM=y
-# CONFIG_NVHE_EL2_DEBUG is not set
-CONFIG_ARM64_CRYPTO=y
-CONFIG_CRYPTO_SHA256_ARM64=m
-CONFIG_CRYPTO_SHA512_ARM64=m
-CONFIG_CRYPTO_SHA1_ARM64_CE=m
-CONFIG_CRYPTO_SHA2_ARM64_CE=m
-CONFIG_CRYPTO_SHA512_ARM64_CE=m
-CONFIG_CRYPTO_SHA3_ARM64=m
-CONFIG_CRYPTO_SM3_ARM64_CE=m
-CONFIG_CRYPTO_SM4_ARM64_CE=m
-CONFIG_CRYPTO_GHASH_ARM64_CE=m
-CONFIG_CRYPTO_CRCT10DIF_ARM64_CE=m
-CONFIG_CRYPTO_AES_ARM64=m
-CONFIG_CRYPTO_AES_ARM64_CE=m
-CONFIG_CRYPTO_AES_ARM64_CE_CCM=m
-CONFIG_CRYPTO_AES_ARM64_CE_BLK=m
-CONFIG_CRYPTO_AES_ARM64_NEON_BLK=m
-CONFIG_CRYPTO_CHACHA20_NEON=m
-CONFIG_CRYPTO_POLY1305_NEON=m
-CONFIG_CRYPTO_NHPOLY1305_NEON=m
-CONFIG_CRYPTO_AES_ARM64_BS=m
-
-#
-# General architecture-dependent options
-#
-# CONFIG_KPROBES is not set
-CONFIG_JUMP_LABEL=y
-# CONFIG_STATIC_KEYS_SELFTEST is not set
-CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y
-CONFIG_HAVE_KPROBES=y
-CONFIG_HAVE_KRETPROBES=y
-CONFIG_ARCH_CORRECT_STACKTRACE_ON_KRETPROBE=y
-CONFIG_HAVE_FUNCTION_ERROR_INJECTION=y
-CONFIG_HAVE_NMI=y
-CONFIG_TRACE_IRQFLAGS_SUPPORT=y
-CONFIG_HAVE_ARCH_TRACEHOOK=y
-CONFIG_HAVE_DMA_CONTIGUOUS=y
-CONFIG_GENERIC_SMP_IDLE_THREAD=y
-CONFIG_GENERIC_IDLE_POLL_SETUP=y
-CONFIG_ARCH_HAS_FORTIFY_SOURCE=y
-CONFIG_ARCH_HAS_KEEPINITRD=y
-CONFIG_ARCH_HAS_SET_MEMORY=y
-CONFIG_ARCH_HAS_SET_DIRECT_MAP=y
-CONFIG_HAVE_ARCH_THREAD_STRUCT_WHITELIST=y
-CONFIG_ARCH_WANTS_NO_INSTR=y
-CONFIG_HAVE_ASM_MODVERSIONS=y
-CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y
-CONFIG_HAVE_RSEQ=y
-CONFIG_HAVE_FUNCTION_ARG_ACCESS_API=y
-CONFIG_HAVE_HW_BREAKPOINT=y
-CONFIG_HAVE_PERF_REGS=y
-CONFIG_HAVE_PERF_USER_STACK_DUMP=y
-CONFIG_HAVE_ARCH_JUMP_LABEL=y
-CONFIG_HAVE_ARCH_JUMP_LABEL_RELATIVE=y
-CONFIG_MMU_GATHER_TABLE_FREE=y
-CONFIG_MMU_GATHER_RCU_TABLE_FREE=y
-CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y
-CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y
-CONFIG_HAVE_CMPXCHG_LOCAL=y
-CONFIG_HAVE_CMPXCHG_DOUBLE=y
-CONFIG_ARCH_WANT_COMPAT_IPC_PARSE_VERSION=y
-CONFIG_HAVE_ARCH_SECCOMP=y
-CONFIG_HAVE_ARCH_SECCOMP_FILTER=y
-CONFIG_SECCOMP=y
-CONFIG_SECCOMP_FILTER=y
-# CONFIG_SECCOMP_CACHE_DEBUG is not set
-CONFIG_HAVE_ARCH_STACKLEAK=y
-CONFIG_HAVE_STACKPROTECTOR=y
-CONFIG_STACKPROTECTOR=y
-CONFIG_STACKPROTECTOR_STRONG=y
-CONFIG_ARCH_SUPPORTS_LTO_CLANG=y
-CONFIG_ARCH_SUPPORTS_LTO_CLANG_THIN=y
-CONFIG_LTO_NONE=y
-CONFIG_ARCH_SUPPORTS_CFI_CLANG=y
-CONFIG_HAVE_CONTEXT_TRACKING=y
-CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y
-CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y
-CONFIG_HAVE_MOVE_PUD=y
-CONFIG_HAVE_MOVE_PMD=y
-CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y
-CONFIG_HAVE_ARCH_HUGE_VMAP=y
-CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y
-CONFIG_HAVE_MOD_ARCH_SPECIFIC=y
-CONFIG_MODULES_USE_ELF_RELA=y
-CONFIG_ARCH_HAS_ELF_RANDOMIZE=y
-CONFIG_HAVE_ARCH_MMAP_RND_BITS=y
-CONFIG_ARCH_MMAP_RND_BITS=18
-CONFIG_HAVE_ARCH_MMAP_RND_COMPAT_BITS=y
-CONFIG_ARCH_MMAP_RND_COMPAT_BITS=11
-CONFIG_PAGE_SIZE_LESS_THAN_64KB=y
-CONFIG_PAGE_SIZE_LESS_THAN_256KB=y
-CONFIG_ARCH_WANT_DEFAULT_TOPDOWN_MMAP_LAYOUT=y
-CONFIG_CLONE_BACKWARDS=y
-CONFIG_OLD_SIGSUSPEND3=y
-CONFIG_COMPAT_OLD_SIGACTION=y
-CONFIG_COMPAT_32BIT_TIME=y
-CONFIG_HAVE_ARCH_VMAP_STACK=y
-CONFIG_VMAP_STACK=y
-CONFIG_HAVE_ARCH_RANDOMIZE_KSTACK_OFFSET=y
-# CONFIG_RANDOMIZE_KSTACK_OFFSET_DEFAULT is not set
-CONFIG_ARCH_HAS_STRICT_KERNEL_RWX=y
-CONFIG_STRICT_KERNEL_RWX=y
-CONFIG_ARCH_HAS_STRICT_MODULE_RWX=y
-CONFIG_STRICT_MODULE_RWX=y
-CONFIG_HAVE_ARCH_COMPILER_H=y
-CONFIG_HAVE_ARCH_PREL32_RELOCATIONS=y
-CONFIG_ARCH_HAS_RELR=y
-CONFIG_ARCH_WANT_LD_ORPHAN_WARN=y
-CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
-
-#
-# GCOV-based kernel profiling
-#
-CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y
-# end of GCOV-based kernel profiling
-
-CONFIG_HAVE_GCC_PLUGINS=y
-# CONFIG_GCC_PLUGINS is not set
-# end of General architecture-dependent options
-
-CONFIG_RT_MUTEXES=y
-CONFIG_BASE_SMALL=0
-CONFIG_MODULE_SIG_FORMAT=y
-CONFIG_MODULES=y
-# CONFIG_MODULE_FORCE_LOAD is not set
-CONFIG_MODULE_UNLOAD=y
-# CONFIG_MODULE_FORCE_UNLOAD is not set
-# CONFIG_MODVERSIONS is not set
-# CONFIG_MODULE_SRCVERSION_ALL is not set
-CONFIG_MODULE_SIG=y
-# CONFIG_MODULE_SIG_FORCE is not set
-# CONFIG_MODULE_SIG_ALL is not set
-CONFIG_MODULE_SIG_SHA1=y
-# CONFIG_MODULE_SIG_SHA224 is not set
-# CONFIG_MODULE_SIG_SHA256 is not set
-# CONFIG_MODULE_SIG_SHA384 is not set
-# CONFIG_MODULE_SIG_SHA512 is not set
-CONFIG_MODULE_SIG_HASH="sha1"
-CONFIG_MODULE_COMPRESS_NONE=y
-# CONFIG_MODULE_COMPRESS_GZIP is not set
-# CONFIG_MODULE_COMPRESS_XZ is not set
-# CONFIG_MODULE_COMPRESS_ZSTD is not set
-# CONFIG_MODULE_ALLOW_MISSING_NAMESPACE_IMPORTS is not set
-CONFIG_MODPROBE_PATH="/sbin/modprobe"
-CONFIG_MODULES_TREE_LOOKUP=y
-CONFIG_BLOCK=y
-CONFIG_BLK_CGROUP_RWSTAT=y
-CONFIG_BLK_DEV_BSG_COMMON=y
-CONFIG_BLK_ICQ=y
-# CONFIG_BLK_DEV_BSGLIB is not set
-# CONFIG_BLK_DEV_INTEGRITY is not set
-# CONFIG_BLK_DEV_ZONED is not set
-# CONFIG_BLK_DEV_THROTTLING is not set
-CONFIG_BLK_WBT=y
-CONFIG_BLK_WBT_MQ=y
-# CONFIG_BLK_CGROUP_IOLATENCY is not set
-# CONFIG_BLK_CGROUP_IOCOST is not set
-# CONFIG_BLK_CGROUP_IOPRIO is not set
-# CONFIG_BLK_SED_OPAL is not set
-# CONFIG_BLK_INLINE_ENCRYPTION is not set
-
-#
-# Partition Types
-#
-CONFIG_PARTITION_ADVANCED=y
-# CONFIG_ACORN_PARTITION is not set
-# CONFIG_AIX_PARTITION is not set
-# CONFIG_OSF_PARTITION is not set
-# CONFIG_AMIGA_PARTITION is not set
-# CONFIG_ATARI_PARTITION is not set
-CONFIG_MAC_PARTITION=y
-CONFIG_MSDOS_PARTITION=y
-CONFIG_BSD_DISKLABEL=y
-CONFIG_MINIX_SUBPARTITION=y
-# CONFIG_SOLARIS_X86_PARTITION is not set
-# CONFIG_UNIXWARE_DISKLABEL is not set
-CONFIG_LDM_PARTITION=y
-# CONFIG_LDM_DEBUG is not set
-# CONFIG_SGI_PARTITION is not set
-# CONFIG_ULTRIX_PARTITION is not set
-# CONFIG_SUN_PARTITION is not set
-# CONFIG_KARMA_PARTITION is not set
-CONFIG_EFI_PARTITION=y
-# CONFIG_SYSV68_PARTITION is not set
-# CONFIG_CMDLINE_PARTITION is not set
-# end of Partition Types
-
-CONFIG_BLOCK_COMPAT=y
-CONFIG_BLK_MQ_VIRTIO=y
-CONFIG_BLK_PM=y
-CONFIG_BLOCK_HOLDER_DEPRECATED=y
-
-#
-# IO Schedulers
-#
-CONFIG_MQ_IOSCHED_DEADLINE=m
-CONFIG_MQ_IOSCHED_KYBER=m
-CONFIG_IOSCHED_BFQ=m
-CONFIG_BFQ_GROUP_IOSCHED=y
-# CONFIG_BFQ_CGROUP_DEBUG is not set
-# end of IO Schedulers
-
-CONFIG_PREEMPT_NOTIFIERS=y
-CONFIG_PADATA=y
-CONFIG_ASN1=y
-CONFIG_UNINLINE_SPIN_UNLOCK=y
-CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y
-CONFIG_MUTEX_SPIN_ON_OWNER=y
-CONFIG_RWSEM_SPIN_ON_OWNER=y
-CONFIG_LOCK_SPIN_ON_OWNER=y
-CONFIG_ARCH_USE_QUEUED_SPINLOCKS=y
-CONFIG_QUEUED_SPINLOCKS=y
-CONFIG_ARCH_USE_QUEUED_RWLOCKS=y
-CONFIG_QUEUED_RWLOCKS=y
-CONFIG_ARCH_HAS_NON_OVERLAPPING_ADDRESS_SPACE=y
-CONFIG_ARCH_HAS_SYSCALL_WRAPPER=y
-CONFIG_FREEZER=y
-
-#
-# Executable file formats
-#
-CONFIG_BINFMT_ELF=y
-CONFIG_COMPAT_BINFMT_ELF=y
-CONFIG_ARCH_BINFMT_ELF_STATE=y
-CONFIG_ARCH_HAVE_ELF_PROT=y
-CONFIG_ARCH_USE_GNU_PROPERTY=y
-CONFIG_ELFCORE=y
-# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
-CONFIG_BINFMT_SCRIPT=y
-CONFIG_BINFMT_MISC=m
-CONFIG_COREDUMP=y
-# end of Executable file formats
-
-#
-# Memory Management options
-#
-CONFIG_SPARSEMEM=y
-CONFIG_SPARSEMEM_EXTREME=y
-CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y
-CONFIG_SPARSEMEM_VMEMMAP=y
-CONFIG_HAVE_FAST_GUP=y
-CONFIG_ARCH_KEEP_MEMBLOCK=y
-CONFIG_MEMORY_ISOLATION=y
-CONFIG_EXCLUSIVE_SYSTEM_RAM=y
-CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
-# CONFIG_MEMORY_HOTPLUG is not set
-CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
-CONFIG_SPLIT_PTLOCK_CPUS=4
-CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK=y
-CONFIG_MEMORY_BALLOON=y
-CONFIG_BALLOON_COMPACTION=y
-CONFIG_COMPACTION=y
-CONFIG_PAGE_REPORTING=y
-CONFIG_MIGRATION=y
-CONFIG_CONTIG_ALLOC=y
-CONFIG_PHYS_ADDR_T_64BIT=y
-CONFIG_MMU_NOTIFIER=y
-CONFIG_KSM=y
-CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
-CONFIG_ARCH_SUPPORTS_MEMORY_FAILURE=y
-# CONFIG_MEMORY_FAILURE is not set
-# CONFIG_TRANSPARENT_HUGEPAGE is not set
-CONFIG_FRONTSWAP=y
-CONFIG_CMA=y
-# CONFIG_CMA_SYSFS is not set
-CONFIG_CMA_AREAS=7
-CONFIG_ZSWAP=y
-# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_DEFLATE is not set
-# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZO is not set
-# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_842 is not set
-# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZ4 is not set
-# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZ4HC is not set
-CONFIG_ZSWAP_COMPRESSOR_DEFAULT_ZSTD=y
-CONFIG_ZSWAP_COMPRESSOR_DEFAULT="zstd"
-# CONFIG_ZSWAP_ZPOOL_DEFAULT_ZBUD is not set
-# CONFIG_ZSWAP_ZPOOL_DEFAULT_Z3FOLD is not set
-CONFIG_ZSWAP_ZPOOL_DEFAULT_ZSMALLOC=y
-CONFIG_ZSWAP_ZPOOL_DEFAULT="zsmalloc"
-# CONFIG_ZSWAP_DEFAULT_ON is not set
-CONFIG_ZPOOL=y
-CONFIG_ZBUD=y
-CONFIG_Z3FOLD=y
-CONFIG_ZSMALLOC=y
-# CONFIG_ZSMALLOC_STAT is not set
-CONFIG_GENERIC_EARLY_IOREMAP=y
-# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set
-# CONFIG_IDLE_PAGE_TRACKING is not set
-CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y
-CONFIG_ARCH_HAS_PTE_DEVMAP=y
-CONFIG_ZONE_DMA=y
-CONFIG_ZONE_DMA32=y
-CONFIG_ARCH_USES_HIGH_VMA_FLAGS=y
-# CONFIG_PERCPU_STATS is not set
-
-#
-# GUP_TEST needs to have DEBUG_FS enabled
-#
-CONFIG_ARCH_HAS_PTE_SPECIAL=y
-CONFIG_SECRETMEM=y
-# CONFIG_ANON_VMA_NAME is not set
-
-#
-# Data Access Monitoring
-#
-# CONFIG_DAMON is not set
-# end of Data Access Monitoring
-# end of Memory Management options
-
-CONFIG_NET=y
-CONFIG_COMPAT_NETLINK_MESSAGES=y
-CONFIG_NET_INGRESS=y
-CONFIG_NET_EGRESS=y
-CONFIG_NET_REDIRECT=y
-CONFIG_SKB_EXTENSIONS=y
-
-#
-# Networking options
-#
-CONFIG_PACKET=y
-CONFIG_PACKET_DIAG=m
-CONFIG_UNIX=y
-CONFIG_UNIX_SCM=y
-CONFIG_AF_UNIX_OOB=y
-CONFIG_UNIX_DIAG=m
-CONFIG_TLS=m
-# CONFIG_TLS_DEVICE is not set
-# CONFIG_TLS_TOE is not set
-CONFIG_XFRM=y
-CONFIG_XFRM_ALGO=m
-CONFIG_XFRM_USER=m
-# CONFIG_XFRM_INTERFACE is not set
-CONFIG_XFRM_SUB_POLICY=y
-CONFIG_XFRM_MIGRATE=y
-CONFIG_XFRM_STATISTICS=y
-CONFIG_XFRM_AH=m
-CONFIG_XFRM_ESP=m
-CONFIG_XFRM_IPCOMP=m
-CONFIG_NET_KEY=m
-CONFIG_NET_KEY_MIGRATE=y
-CONFIG_INET=y
-CONFIG_IP_MULTICAST=y
-CONFIG_IP_ADVANCED_ROUTER=y
-# CONFIG_IP_FIB_TRIE_STATS is not set
-CONFIG_IP_MULTIPLE_TABLES=y
-CONFIG_IP_ROUTE_MULTIPATH=y
-CONFIG_IP_ROUTE_VERBOSE=y
-CONFIG_IP_ROUTE_CLASSID=y
-# CONFIG_IP_PNP is not set
-CONFIG_NET_IPIP=m
-CONFIG_NET_IPGRE_DEMUX=m
-CONFIG_NET_IP_TUNNEL=m
-CONFIG_NET_IPGRE=m
-CONFIG_NET_IPGRE_BROADCAST=y
-CONFIG_IP_MROUTE_COMMON=y
-CONFIG_IP_MROUTE=y
-CONFIG_IP_MROUTE_MULTIPLE_TABLES=y
-CONFIG_IP_PIMSM_V1=y
-CONFIG_IP_PIMSM_V2=y
-CONFIG_SYN_COOKIES=y
-CONFIG_NET_IPVTI=m
-CONFIG_NET_UDP_TUNNEL=m
-CONFIG_NET_FOU=m
-CONFIG_NET_FOU_IP_TUNNELS=y
-CONFIG_INET_AH=m
-CONFIG_INET_ESP=m
-# CONFIG_INET_ESP_OFFLOAD is not set
-# CONFIG_INET_ESPINTCP is not set
-CONFIG_INET_IPCOMP=m
-CONFIG_INET_XFRM_TUNNEL=m
-CONFIG_INET_TUNNEL=m
-CONFIG_INET_DIAG=m
-CONFIG_INET_TCP_DIAG=m
-CONFIG_INET_UDP_DIAG=m
-CONFIG_INET_RAW_DIAG=m
-# CONFIG_INET_DIAG_DESTROY is not set
-CONFIG_TCP_CONG_ADVANCED=y
-# CONFIG_TCP_CONG_BIC is not set
-CONFIG_TCP_CONG_CUBIC=y
-# CONFIG_TCP_CONG_WESTWOOD is not set
-# CONFIG_TCP_CONG_HTCP is not set
-# CONFIG_TCP_CONG_HSTCP is not set
-# CONFIG_TCP_CONG_HYBLA is not set
-# CONFIG_TCP_CONG_VEGAS is not set
-# CONFIG_TCP_CONG_NV is not set
-# CONFIG_TCP_CONG_SCALABLE is not set
-# CONFIG_TCP_CONG_LP is not set
-# CONFIG_TCP_CONG_VENO is not set
-# CONFIG_TCP_CONG_YEAH is not set
-# CONFIG_TCP_CONG_ILLINOIS is not set
-# CONFIG_TCP_CONG_DCTCP is not set
-# CONFIG_TCP_CONG_CDG is not set
-# CONFIG_TCP_CONG_BBR is not set
-CONFIG_DEFAULT_CUBIC=y
-# CONFIG_DEFAULT_RENO is not set
-CONFIG_DEFAULT_TCP_CONG="cubic"
-CONFIG_TCP_MD5SIG=y
-CONFIG_IPV6=y
-CONFIG_IPV6_ROUTER_PREF=y
-CONFIG_IPV6_ROUTE_INFO=y
-CONFIG_IPV6_OPTIMISTIC_DAD=y
-CONFIG_INET6_AH=m
-CONFIG_INET6_ESP=m
-# CONFIG_INET6_ESP_OFFLOAD is not set
-# CONFIG_INET6_ESPINTCP is not set
-CONFIG_INET6_IPCOMP=m
-CONFIG_IPV6_MIP6=m
-CONFIG_IPV6_ILA=m
-CONFIG_INET6_XFRM_TUNNEL=m
-CONFIG_INET6_TUNNEL=m
-CONFIG_IPV6_VTI=m
-CONFIG_IPV6_SIT=m
-CONFIG_IPV6_SIT_6RD=y
-CONFIG_IPV6_NDISC_NODETYPE=y
-CONFIG_IPV6_TUNNEL=m
-CONFIG_IPV6_GRE=m
-CONFIG_IPV6_FOU=m
-CONFIG_IPV6_FOU_TUNNEL=m
-CONFIG_IPV6_MULTIPLE_TABLES=y
-CONFIG_IPV6_SUBTREES=y
-CONFIG_IPV6_MROUTE=y
-CONFIG_IPV6_MROUTE_MULTIPLE_TABLES=y
-CONFIG_IPV6_PIMSM_V2=y
-CONFIG_IPV6_SEG6_LWTUNNEL=y
-CONFIG_IPV6_SEG6_HMAC=y
-CONFIG_IPV6_SEG6_BPF=y
-# CONFIG_IPV6_RPL_LWTUNNEL is not set
-# CONFIG_IPV6_IOAM6_LWTUNNEL is not set
-CONFIG_MPTCP=y
-CONFIG_INET_MPTCP_DIAG=m
-CONFIG_MPTCP_IPV6=y
-# CONFIG_NETWORK_SECMARK is not set
-# CONFIG_NETWORK_PHY_TIMESTAMPING is not set
-CONFIG_NETFILTER=y
-CONFIG_NETFILTER_ADVANCED=y
-CONFIG_BRIDGE_NETFILTER=m
-
-#
-# Core Netfilter Configuration
-#
-CONFIG_NETFILTER_INGRESS=y
-CONFIG_NETFILTER_EGRESS=y
-CONFIG_NETFILTER_SKIP_EGRESS=y
-CONFIG_NETFILTER_NETLINK=m
-CONFIG_NETFILTER_FAMILY_BRIDGE=y
-CONFIG_NETFILTER_FAMILY_ARP=y
-# CONFIG_NETFILTER_NETLINK_HOOK is not set
-CONFIG_NETFILTER_NETLINK_ACCT=m
-CONFIG_NETFILTER_NETLINK_QUEUE=m
-CONFIG_NETFILTER_NETLINK_LOG=m
-CONFIG_NETFILTER_NETLINK_OSF=m
-CONFIG_NF_CONNTRACK=m
-CONFIG_NF_LOG_SYSLOG=m
-CONFIG_NETFILTER_CONNCOUNT=m
-CONFIG_NF_CONNTRACK_MARK=y
-CONFIG_NF_CONNTRACK_ZONES=y
-CONFIG_NF_CONNTRACK_PROCFS=y
-CONFIG_NF_CONNTRACK_EVENTS=y
-CONFIG_NF_CONNTRACK_TIMEOUT=y
-CONFIG_NF_CONNTRACK_TIMESTAMP=y
-CONFIG_NF_CONNTRACK_LABELS=y
-CONFIG_NF_CT_PROTO_DCCP=y
-CONFIG_NF_CT_PROTO_GRE=y
-CONFIG_NF_CT_PROTO_SCTP=y
-CONFIG_NF_CT_PROTO_UDPLITE=y
-CONFIG_NF_CONNTRACK_AMANDA=m
-CONFIG_NF_CONNTRACK_FTP=m
-CONFIG_NF_CONNTRACK_H323=m
-CONFIG_NF_CONNTRACK_IRC=m
-CONFIG_NF_CONNTRACK_BROADCAST=m
-CONFIG_NF_CONNTRACK_NETBIOS_NS=m
-CONFIG_NF_CONNTRACK_SNMP=m
-CONFIG_NF_CONNTRACK_PPTP=m
-CONFIG_NF_CONNTRACK_SANE=m
-CONFIG_NF_CONNTRACK_SIP=m
-CONFIG_NF_CONNTRACK_TFTP=m
-CONFIG_NF_CT_NETLINK=m
-CONFIG_NF_CT_NETLINK_TIMEOUT=m
-CONFIG_NF_CT_NETLINK_HELPER=m
-CONFIG_NETFILTER_NETLINK_GLUE_CT=y
-CONFIG_NF_NAT=m
-CONFIG_NF_NAT_AMANDA=m
-CONFIG_NF_NAT_FTP=m
-CONFIG_NF_NAT_IRC=m
-CONFIG_NF_NAT_SIP=m
-CONFIG_NF_NAT_TFTP=m
-CONFIG_NF_NAT_REDIRECT=y
-CONFIG_NF_NAT_MASQUERADE=y
-CONFIG_NETFILTER_SYNPROXY=m
-CONFIG_NF_TABLES=m
-CONFIG_NF_TABLES_INET=y
-CONFIG_NF_TABLES_NETDEV=y
-CONFIG_NFT_NUMGEN=m
-CONFIG_NFT_CT=m
-CONFIG_NFT_FLOW_OFFLOAD=m
-CONFIG_NFT_CONNLIMIT=m
-CONFIG_NFT_LOG=m
-CONFIG_NFT_LIMIT=m
-CONFIG_NFT_MASQ=m
-CONFIG_NFT_REDIR=m
-CONFIG_NFT_NAT=m
-CONFIG_NFT_TUNNEL=m
-CONFIG_NFT_OBJREF=m
-CONFIG_NFT_QUEUE=m
-CONFIG_NFT_QUOTA=m
-CONFIG_NFT_REJECT=m
-CONFIG_NFT_REJECT_INET=m
-CONFIG_NFT_COMPAT=m
-CONFIG_NFT_HASH=m
-CONFIG_NFT_FIB=m
-# CONFIG_NFT_FIB_INET is not set
-CONFIG_NFT_XFRM=m
-CONFIG_NFT_SOCKET=m
-CONFIG_NFT_OSF=m
-CONFIG_NFT_TPROXY=m
-# CONFIG_NFT_SYNPROXY is not set
-CONFIG_NF_DUP_NETDEV=m
-CONFIG_NFT_DUP_NETDEV=m
-CONFIG_NFT_FWD_NETDEV=m
-# CONFIG_NFT_FIB_NETDEV is not set
-CONFIG_NFT_REJECT_NETDEV=m
-CONFIG_NF_FLOW_TABLE_INET=m
-CONFIG_NF_FLOW_TABLE=m
-CONFIG_NETFILTER_XTABLES=m
-CONFIG_NETFILTER_XTABLES_COMPAT=y
-
-#
-# Xtables combined modules
-#
-CONFIG_NETFILTER_XT_MARK=m
-CONFIG_NETFILTER_XT_CONNMARK=m
-CONFIG_NETFILTER_XT_SET=m
-
-#
-# Xtables targets
-#
-CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m
-CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
-CONFIG_NETFILTER_XT_TARGET_CONNMARK=m
-CONFIG_NETFILTER_XT_TARGET_CT=m
-CONFIG_NETFILTER_XT_TARGET_DSCP=m
-CONFIG_NETFILTER_XT_TARGET_HL=m
-CONFIG_NETFILTER_XT_TARGET_HMARK=m
-CONFIG_NETFILTER_XT_TARGET_IDLETIMER=m
-# CONFIG_NETFILTER_XT_TARGET_LED is not set
-CONFIG_NETFILTER_XT_TARGET_LOG=m
-CONFIG_NETFILTER_XT_TARGET_MARK=m
-CONFIG_NETFILTER_XT_NAT=m
-CONFIG_NETFILTER_XT_TARGET_NETMAP=m
-CONFIG_NETFILTER_XT_TARGET_NFLOG=m
-CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
-# CONFIG_NETFILTER_XT_TARGET_NOTRACK is not set
-CONFIG_NETFILTER_XT_TARGET_RATEEST=m
-CONFIG_NETFILTER_XT_TARGET_REDIRECT=m
-CONFIG_NETFILTER_XT_TARGET_MASQUERADE=m
-CONFIG_NETFILTER_XT_TARGET_TEE=m
-CONFIG_NETFILTER_XT_TARGET_TPROXY=m
-CONFIG_NETFILTER_XT_TARGET_TRACE=m
-CONFIG_NETFILTER_XT_TARGET_TCPMSS=m
-CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m
-
-#
-# Xtables matches
-#
-CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m
-CONFIG_NETFILTER_XT_MATCH_BPF=m
-CONFIG_NETFILTER_XT_MATCH_CGROUP=m
-CONFIG_NETFILTER_XT_MATCH_CLUSTER=m
-CONFIG_NETFILTER_XT_MATCH_COMMENT=m
-CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m
-CONFIG_NETFILTER_XT_MATCH_CONNLABEL=m
-CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m
-CONFIG_NETFILTER_XT_MATCH_CONNMARK=m
-CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
-CONFIG_NETFILTER_XT_MATCH_CPU=m
-CONFIG_NETFILTER_XT_MATCH_DCCP=m
-CONFIG_NETFILTER_XT_MATCH_DEVGROUP=m
-CONFIG_NETFILTER_XT_MATCH_DSCP=m
-CONFIG_NETFILTER_XT_MATCH_ECN=m
-CONFIG_NETFILTER_XT_MATCH_ESP=m
-CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
-CONFIG_NETFILTER_XT_MATCH_HELPER=m
-CONFIG_NETFILTER_XT_MATCH_HL=m
-CONFIG_NETFILTER_XT_MATCH_IPCOMP=m
-CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
-CONFIG_NETFILTER_XT_MATCH_L2TP=m
-CONFIG_NETFILTER_XT_MATCH_LENGTH=m
-CONFIG_NETFILTER_XT_MATCH_LIMIT=m
-CONFIG_NETFILTER_XT_MATCH_MAC=m
-CONFIG_NETFILTER_XT_MATCH_MARK=m
-CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
-CONFIG_NETFILTER_XT_MATCH_NFACCT=m
-CONFIG_NETFILTER_XT_MATCH_OSF=m
-CONFIG_NETFILTER_XT_MATCH_OWNER=m
-CONFIG_NETFILTER_XT_MATCH_POLICY=m
-# CONFIG_NETFILTER_XT_MATCH_PHYSDEV is not set
-CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m
-CONFIG_NETFILTER_XT_MATCH_QUOTA=m
-CONFIG_NETFILTER_XT_MATCH_RATEEST=m
-CONFIG_NETFILTER_XT_MATCH_REALM=m
-CONFIG_NETFILTER_XT_MATCH_RECENT=m
-CONFIG_NETFILTER_XT_MATCH_SCTP=m
-CONFIG_NETFILTER_XT_MATCH_SOCKET=m
-CONFIG_NETFILTER_XT_MATCH_STATE=m
-CONFIG_NETFILTER_XT_MATCH_STATISTIC=m
-CONFIG_NETFILTER_XT_MATCH_STRING=m
-CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
-CONFIG_NETFILTER_XT_MATCH_TIME=m
-CONFIG_NETFILTER_XT_MATCH_U32=m
-# end of Core Netfilter Configuration
-
-CONFIG_IP_SET=m
-CONFIG_IP_SET_MAX=256
-CONFIG_IP_SET_BITMAP_IP=m
-CONFIG_IP_SET_BITMAP_IPMAC=m
-CONFIG_IP_SET_BITMAP_PORT=m
-CONFIG_IP_SET_HASH_IP=m
-CONFIG_IP_SET_HASH_IPMARK=m
-CONFIG_IP_SET_HASH_IPPORT=m
-CONFIG_IP_SET_HASH_IPPORTIP=m
-CONFIG_IP_SET_HASH_IPPORTNET=m
-CONFIG_IP_SET_HASH_IPMAC=m
-CONFIG_IP_SET_HASH_MAC=m
-CONFIG_IP_SET_HASH_NETPORTNET=m
-CONFIG_IP_SET_HASH_NET=m
-CONFIG_IP_SET_HASH_NETNET=m
-CONFIG_IP_SET_HASH_NETPORT=m
-CONFIG_IP_SET_HASH_NETIFACE=m
-CONFIG_IP_SET_LIST_SET=m
-# CONFIG_IP_VS is not set
-
-#
-# IP: Netfilter Configuration
-#
-CONFIG_NF_DEFRAG_IPV4=m
-CONFIG_NF_SOCKET_IPV4=m
-CONFIG_NF_TPROXY_IPV4=m
-CONFIG_NF_TABLES_IPV4=y
-CONFIG_NFT_REJECT_IPV4=m
-CONFIG_NFT_DUP_IPV4=m
-CONFIG_NFT_FIB_IPV4=m
-CONFIG_NF_TABLES_ARP=y
-CONFIG_NF_DUP_IPV4=m
-CONFIG_NF_LOG_ARP=m
-CONFIG_NF_LOG_IPV4=m
-CONFIG_NF_REJECT_IPV4=m
-CONFIG_NF_NAT_SNMP_BASIC=m
-CONFIG_NF_NAT_PPTP=m
-CONFIG_NF_NAT_H323=m
-CONFIG_IP_NF_IPTABLES=m
-CONFIG_IP_NF_MATCH_AH=m
-CONFIG_IP_NF_MATCH_ECN=m
-CONFIG_IP_NF_MATCH_RPFILTER=m
-CONFIG_IP_NF_MATCH_TTL=m
-CONFIG_IP_NF_FILTER=m
-CONFIG_IP_NF_TARGET_REJECT=m
-CONFIG_IP_NF_TARGET_SYNPROXY=m
-CONFIG_IP_NF_NAT=m
-CONFIG_IP_NF_TARGET_MASQUERADE=m
-CONFIG_IP_NF_TARGET_NETMAP=m
-CONFIG_IP_NF_TARGET_REDIRECT=m
-CONFIG_IP_NF_MANGLE=m
-CONFIG_IP_NF_TARGET_CLUSTERIP=m
-CONFIG_IP_NF_TARGET_ECN=m
-CONFIG_IP_NF_TARGET_TTL=m
-CONFIG_IP_NF_RAW=m
-CONFIG_IP_NF_ARPTABLES=m
-CONFIG_IP_NF_ARPFILTER=m
-CONFIG_IP_NF_ARP_MANGLE=m
-# end of IP: Netfilter Configuration
-
-#
-# IPv6: Netfilter Configuration
-#
-CONFIG_NF_SOCKET_IPV6=m
-CONFIG_NF_TPROXY_IPV6=m
-CONFIG_NF_TABLES_IPV6=y
-CONFIG_NFT_REJECT_IPV6=m
-CONFIG_NFT_DUP_IPV6=m
-CONFIG_NFT_FIB_IPV6=m
-CONFIG_NF_DUP_IPV6=m
-CONFIG_NF_REJECT_IPV6=m
-CONFIG_NF_LOG_IPV6=m
-CONFIG_IP6_NF_IPTABLES=m
-CONFIG_IP6_NF_MATCH_AH=m
-CONFIG_IP6_NF_MATCH_EUI64=m
-CONFIG_IP6_NF_MATCH_FRAG=m
-CONFIG_IP6_NF_MATCH_OPTS=m
-CONFIG_IP6_NF_MATCH_HL=m
-CONFIG_IP6_NF_MATCH_IPV6HEADER=m
-CONFIG_IP6_NF_MATCH_MH=m
-CONFIG_IP6_NF_MATCH_RPFILTER=m
-CONFIG_IP6_NF_MATCH_RT=m
-CONFIG_IP6_NF_MATCH_SRH=m
-CONFIG_IP6_NF_TARGET_HL=m
-CONFIG_IP6_NF_FILTER=m
-CONFIG_IP6_NF_TARGET_REJECT=m
-CONFIG_IP6_NF_TARGET_SYNPROXY=m
-CONFIG_IP6_NF_MANGLE=m
-CONFIG_IP6_NF_RAW=m
-CONFIG_IP6_NF_NAT=m
-CONFIG_IP6_NF_TARGET_MASQUERADE=m
-CONFIG_IP6_NF_TARGET_NPT=m
-# end of IPv6: Netfilter Configuration
-
-CONFIG_NF_DEFRAG_IPV6=m
-# CONFIG_NF_TABLES_BRIDGE is not set
-CONFIG_NF_CONNTRACK_BRIDGE=m
-# CONFIG_BRIDGE_NF_EBTABLES is not set
-# CONFIG_BPFILTER is not set
-# CONFIG_IP_DCCP is not set
-CONFIG_IP_SCTP=m
-# CONFIG_SCTP_DBG_OBJCNT is not set
-# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set
-CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y
-# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set
-CONFIG_SCTP_COOKIE_HMAC_MD5=y
-CONFIG_SCTP_COOKIE_HMAC_SHA1=y
-CONFIG_INET_SCTP_DIAG=m
-# CONFIG_RDS is not set
-# CONFIG_TIPC is not set
-# CONFIG_ATM is not set
-CONFIG_L2TP=m
-CONFIG_L2TP_V3=y
-CONFIG_L2TP_IP=m
-CONFIG_L2TP_ETH=m
-CONFIG_STP=m
-CONFIG_GARP=m
-CONFIG_MRP=m
-CONFIG_BRIDGE=m
-CONFIG_BRIDGE_IGMP_SNOOPING=y
-CONFIG_BRIDGE_VLAN_FILTERING=y
-# CONFIG_BRIDGE_MRP is not set
-# CONFIG_BRIDGE_CFM is not set
-# CONFIG_NET_DSA is not set
-CONFIG_VLAN_8021Q=m
-CONFIG_VLAN_8021Q_GVRP=y
-CONFIG_VLAN_8021Q_MVRP=y
-# CONFIG_DECNET is not set
-CONFIG_LLC=m
-# CONFIG_LLC2 is not set
-# CONFIG_ATALK is not set
-# CONFIG_X25 is not set
-# CONFIG_LAPB is not set
-# CONFIG_PHONET is not set
-# CONFIG_6LOWPAN is not set
-# CONFIG_IEEE802154 is not set
-CONFIG_NET_SCHED=y
-
-#
-# Queueing/Scheduling
-#
-# CONFIG_NET_SCH_CBQ is not set
-CONFIG_NET_SCH_HTB=m
-CONFIG_NET_SCH_HFSC=m
-CONFIG_NET_SCH_PRIO=m
-CONFIG_NET_SCH_MULTIQ=m
-# CONFIG_NET_SCH_RED is not set
-CONFIG_NET_SCH_SFB=m
-CONFIG_NET_SCH_SFQ=m
-CONFIG_NET_SCH_TEQL=m
-CONFIG_NET_SCH_TBF=m
-# CONFIG_NET_SCH_CBS is not set
-# CONFIG_NET_SCH_ETF is not set
-# CONFIG_NET_SCH_TAPRIO is not set
-# CONFIG_NET_SCH_GRED is not set
-CONFIG_NET_SCH_DSMARK=m
-CONFIG_NET_SCH_NETEM=m
-# CONFIG_NET_SCH_DRR is not set
-CONFIG_NET_SCH_MQPRIO=m
-# CONFIG_NET_SCH_SKBPRIO is not set
-CONFIG_NET_SCH_CHOKE=m
-CONFIG_NET_SCH_QFQ=m
-CONFIG_NET_SCH_CODEL=m
-CONFIG_NET_SCH_FQ_CODEL=m
-# CONFIG_NET_SCH_CAKE is not set
-CONFIG_NET_SCH_FQ=m
-CONFIG_NET_SCH_HHF=m
-CONFIG_NET_SCH_PIE=m
-CONFIG_NET_SCH_FQ_PIE=m
-CONFIG_NET_SCH_INGRESS=m
-CONFIG_NET_SCH_PLUG=m
-CONFIG_NET_SCH_ETS=m
-# CONFIG_NET_SCH_DEFAULT is not set
-
-#
-# Classification
-#
-CONFIG_NET_CLS=y
-CONFIG_NET_CLS_BASIC=m
-CONFIG_NET_CLS_TCINDEX=m
-CONFIG_NET_CLS_ROUTE4=m
-CONFIG_NET_CLS_FW=m
-CONFIG_NET_CLS_U32=m
-# CONFIG_CLS_U32_PERF is not set
-CONFIG_CLS_U32_MARK=y
-# CONFIG_NET_CLS_RSVP is not set
-# CONFIG_NET_CLS_RSVP6 is not set
-CONFIG_NET_CLS_FLOW=m
-# CONFIG_NET_CLS_CGROUP is not set
-# CONFIG_NET_CLS_BPF is not set
-CONFIG_NET_CLS_FLOWER=m
-# CONFIG_NET_CLS_MATCHALL is not set
-# CONFIG_NET_EMATCH is not set
-CONFIG_NET_CLS_ACT=y
-CONFIG_NET_ACT_POLICE=y
-CONFIG_NET_ACT_GACT=y
-# CONFIG_GACT_PROB is not set
-CONFIG_NET_ACT_MIRRED=m
-CONFIG_NET_ACT_SAMPLE=m
-CONFIG_NET_ACT_IPT=m
-CONFIG_NET_ACT_NAT=m
-# CONFIG_NET_ACT_PEDIT is not set
-# CONFIG_NET_ACT_SIMP is not set
-# CONFIG_NET_ACT_SKBEDIT is not set
-# CONFIG_NET_ACT_CSUM is not set
-# CONFIG_NET_ACT_MPLS is not set
-# CONFIG_NET_ACT_VLAN is not set
-# CONFIG_NET_ACT_BPF is not set
-CONFIG_NET_ACT_CONNMARK=m
-# CONFIG_NET_ACT_CTINFO is not set
-CONFIG_NET_ACT_SKBMOD=m
-CONFIG_NET_ACT_IFE=m
-CONFIG_NET_ACT_TUNNEL_KEY=m
-# CONFIG_NET_ACT_CT is not set
-# CONFIG_NET_ACT_GATE is not set
-CONFIG_NET_IFE_SKBMARK=m
-CONFIG_NET_IFE_SKBPRIO=m
-CONFIG_NET_IFE_SKBTCINDEX=m
-# CONFIG_NET_TC_SKB_EXT is not set
-CONFIG_NET_SCH_FIFO=y
-# CONFIG_DCB is not set
-CONFIG_DNS_RESOLVER=m
-# CONFIG_BATMAN_ADV is not set
-# CONFIG_OPENVSWITCH is not set
-# CONFIG_VSOCKETS is not set
-CONFIG_NETLINK_DIAG=m
-# CONFIG_MPLS is not set
-CONFIG_NET_NSH=m
-CONFIG_HSR=m
-# CONFIG_NET_SWITCHDEV is not set
-# CONFIG_NET_L3_MASTER_DEV is not set
-# CONFIG_QRTR is not set
-# CONFIG_NET_NCSI is not set
-CONFIG_PCPU_DEV_REFCNT=y
-CONFIG_RPS=y
-CONFIG_RFS_ACCEL=y
-CONFIG_SOCK_RX_QUEUE_MAPPING=y
-CONFIG_XPS=y
-CONFIG_CGROUP_NET_PRIO=y
-CONFIG_CGROUP_NET_CLASSID=y
-CONFIG_NET_RX_BUSY_POLL=y
-CONFIG_BQL=y
-CONFIG_NET_FLOW_LIMIT=y
-
-#
-# Network testing
-#
-# CONFIG_NET_PKTGEN is not set
-# end of Network testing
-# end of Networking options
-
-CONFIG_HAMRADIO=y
-
-#
-# Packet Radio protocols
-#
-CONFIG_AX25=m
-CONFIG_AX25_DAMA_SLAVE=y
-CONFIG_NETROM=m
-CONFIG_ROSE=m
-
-#
-# AX.25 network device drivers
-#
-CONFIG_MKISS=m
-CONFIG_6PACK=m
-CONFIG_BPQETHER=m
-CONFIG_BAYCOM_SER_FDX=m
-CONFIG_BAYCOM_SER_HDX=m
-CONFIG_YAM=m
-# end of AX.25 network device drivers
-
-CONFIG_CAN=m
-CONFIG_CAN_RAW=m
-CONFIG_CAN_BCM=m
-CONFIG_CAN_GW=m
-# CONFIG_CAN_J1939 is not set
-# CONFIG_CAN_ISOTP is not set
-
-#
-# CAN Device Drivers
-#
-# CONFIG_CAN_VCAN is not set
-# CONFIG_CAN_VXCAN is not set
-CONFIG_CAN_SLCAN=m
-CONFIG_CAN_DEV=m
-CONFIG_CAN_CALC_BITTIMING=y
-# CONFIG_CAN_FLEXCAN is not set
-# CONFIG_CAN_GRCAN is not set
-# CONFIG_CAN_XILINXCAN is not set
-# CONFIG_CAN_C_CAN is not set
-# CONFIG_CAN_CC770 is not set
-# CONFIG_CAN_IFI_CANFD is not set
-# CONFIG_CAN_M_CAN is not set
-# CONFIG_CAN_SJA1000 is not set
-# CONFIG_CAN_SOFTING is not set
-
-#
-# CAN SPI interfaces
-#
-# CONFIG_CAN_HI311X is not set
-# CONFIG_CAN_MCP251X is not set
-# CONFIG_CAN_MCP251XFD is not set
-# end of CAN SPI interfaces
-
-#
-# CAN USB interfaces
-#
-# CONFIG_CAN_8DEV_USB is not set
-# CONFIG_CAN_EMS_USB is not set
-# CONFIG_CAN_ESD_USB2 is not set
-# CONFIG_CAN_ETAS_ES58X is not set
-# CONFIG_CAN_GS_USB is not set
-# CONFIG_CAN_KVASER_USB is not set
-# CONFIG_CAN_MCBA_USB is not set
-# CONFIG_CAN_PEAK_USB is not set
-# CONFIG_CAN_UCAN is not set
-# end of CAN USB interfaces
-
-# CONFIG_CAN_DEBUG_DEVICES is not set
-# end of CAN Device Drivers
-
-CONFIG_BT=m
-CONFIG_BT_BREDR=y
-# CONFIG_BT_RFCOMM is not set
-# CONFIG_BT_BNEP is not set
-# CONFIG_BT_HIDP is not set
-CONFIG_BT_HS=y
-CONFIG_BT_LE=y
-# CONFIG_BT_LEDS is not set
-# CONFIG_BT_MSFTEXT is not set
-# CONFIG_BT_AOSPEXT is not set
-# CONFIG_BT_FEATURE_DEBUG is not set
-
-#
-# Bluetooth device drivers
-#
-# CONFIG_BT_HCIBTUSB is not set
-# CONFIG_BT_HCIBTSDIO is not set
-# CONFIG_BT_HCIUART is not set
-# CONFIG_BT_HCIBCM203X is not set
-# CONFIG_BT_HCIBPA10X is not set
-# CONFIG_BT_HCIBFUSB is not set
-# CONFIG_BT_HCIVHCI is not set
-CONFIG_BT_MRVL=m
-CONFIG_BT_MRVL_SDIO=m
-# CONFIG_BT_MTKSDIO is not set
-# CONFIG_BT_VIRTIO is not set
-# end of Bluetooth device drivers
-
-# CONFIG_AF_RXRPC is not set
-# CONFIG_AF_KCM is not set
-CONFIG_STREAM_PARSER=y
-# CONFIG_MCTP is not set
-CONFIG_FIB_RULES=y
-CONFIG_WIRELESS=y
-CONFIG_WIRELESS_EXT=y
-CONFIG_WEXT_CORE=y
-CONFIG_WEXT_PROC=y
-CONFIG_WEXT_PRIV=y
-CONFIG_CFG80211=m
-# CONFIG_NL80211_TESTMODE is not set
-# CONFIG_CFG80211_DEVELOPER_WARNINGS is not set
-CONFIG_CFG80211_REQUIRE_SIGNED_REGDB=y
-CONFIG_CFG80211_USE_KERNEL_REGDB_KEYS=y
-CONFIG_CFG80211_DEFAULT_PS=y
-CONFIG_CFG80211_CRDA_SUPPORT=y
-CONFIG_CFG80211_WEXT=y
-CONFIG_LIB80211=m
-CONFIG_LIB80211_CRYPT_WEP=m
-CONFIG_LIB80211_CRYPT_CCMP=m
-# CONFIG_LIB80211_DEBUG is not set
-CONFIG_MAC80211=m
-CONFIG_MAC80211_HAS_RC=y
-CONFIG_MAC80211_RC_MINSTREL=y
-CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y
-CONFIG_MAC80211_RC_DEFAULT="minstrel_ht"
-CONFIG_MAC80211_MESH=y
-CONFIG_MAC80211_LEDS=y
-# CONFIG_MAC80211_MESSAGE_TRACING is not set
-# CONFIG_MAC80211_DEBUG_MENU is not set
-CONFIG_MAC80211_STA_HASH_MAX_SIZE=0
-CONFIG_RFKILL=m
-CONFIG_RFKILL_LEDS=y
-CONFIG_RFKILL_INPUT=y
-CONFIG_RFKILL_GPIO=m
-# CONFIG_NET_9P is not set
-# CONFIG_CAIF is not set
-# CONFIG_CEPH_LIB is not set
-# CONFIG_NFC is not set
-CONFIG_PSAMPLE=m
-CONFIG_NET_IFE=m
-CONFIG_LWTUNNEL=y
-# CONFIG_LWTUNNEL_BPF is not set
-CONFIG_DST_CACHE=y
-CONFIG_GRO_CELLS=y
-CONFIG_NET_SELFTESTS=y
-CONFIG_NET_SOCK_MSG=y
-CONFIG_FAILOVER=m
-CONFIG_ETHTOOL_NETLINK=y
-
-#
-# Device Drivers
-#
-CONFIG_ARM_AMBA=y
-CONFIG_HAVE_PCI=y
-# CONFIG_PCI is not set
-# CONFIG_PCCARD is not set
-
-#
-# Generic Driver Options
-#
-CONFIG_UEVENT_HELPER=y
-CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
-CONFIG_DEVTMPFS=y
-CONFIG_DEVTMPFS_MOUNT=y
-# CONFIG_DEVTMPFS_SAFE is not set
-CONFIG_STANDALONE=y
-CONFIG_PREVENT_FIRMWARE_BUILD=y
-
-#
-# Firmware loader
-#
-CONFIG_FW_LOADER=y
-CONFIG_EXTRA_FIRMWARE=""
-# CONFIG_FW_LOADER_USER_HELPER is not set
-# CONFIG_FW_LOADER_COMPRESS is not set
-CONFIG_FW_CACHE=y
-# end of Firmware loader
-
-CONFIG_WANT_DEV_COREDUMP=y
-CONFIG_ALLOW_DEV_COREDUMP=y
-CONFIG_DEV_COREDUMP=y
-# CONFIG_TEST_ASYNC_DRIVER_PROBE is not set
-CONFIG_GENERIC_CPU_AUTOPROBE=y
-CONFIG_GENERIC_CPU_VULNERABILITIES=y
-CONFIG_SOC_BUS=y
-CONFIG_REGMAP=y
-CONFIG_REGMAP_I2C=y
-CONFIG_REGMAP_SPI=m
-CONFIG_REGMAP_MMIO=y
-CONFIG_REGMAP_IRQ=y
-CONFIG_DMA_SHARED_BUFFER=y
-# CONFIG_DMA_FENCE_TRACE is not set
-CONFIG_GENERIC_ARCH_TOPOLOGY=y
-# end of Generic Driver Options
-
-#
-# Bus devices
-#
-# CONFIG_BRCMSTB_GISB_ARB is not set
-# CONFIG_MOXTET is not set
-# CONFIG_VEXPRESS_CONFIG is not set
-# CONFIG_MHI_BUS is not set
-# end of Bus devices
-
-CONFIG_CONNECTOR=m
-
-#
-# Firmware Drivers
-#
-
-#
-# ARM System Control and Management Interface Protocol
-#
-CONFIG_ARM_SCMI_PROTOCOL=m
-CONFIG_ARM_SCMI_HAVE_TRANSPORT=y
-CONFIG_ARM_SCMI_HAVE_SHMEM=y
-CONFIG_ARM_SCMI_TRANSPORT_MAILBOX=y
-CONFIG_ARM_SCMI_TRANSPORT_SMC=y
-# CONFIG_ARM_SCMI_TRANSPORT_VIRTIO is not set
-CONFIG_ARM_SCMI_POWER_DOMAIN=m
-# end of ARM System Control and Management Interface Protocol
-
-CONFIG_ARM_SCPI_PROTOCOL=m
-CONFIG_ARM_SCPI_POWER_DOMAIN=m
-CONFIG_ARM_SDE_INTERFACE=y
-CONFIG_DMIID=y
-CONFIG_DMI_SYSFS=m
-# CONFIG_ISCSI_IBFT is not set
-CONFIG_SYSFB=y
-CONFIG_SYSFB_SIMPLEFB=y
-# CONFIG_ARM_FFA_TRANSPORT is not set
-# CONFIG_GOOGLE_FIRMWARE is not set
-
-#
-# EFI (Extensible Firmware Interface) Support
-#
-CONFIG_EFI_ESRT=y
-CONFIG_EFI_VARS_PSTORE=m
-# CONFIG_EFI_VARS_PSTORE_DEFAULT_DISABLE is not set
-CONFIG_EFI_PARAMS_FROM_FDT=y
-CONFIG_EFI_RUNTIME_WRAPPERS=y
-CONFIG_EFI_GENERIC_STUB=y
-CONFIG_EFI_ARMSTUB_DTB_LOADER=y
-CONFIG_EFI_GENERIC_STUB_INITRD_CMDLINE_LOADER=y
-CONFIG_EFI_BOOTLOADER_CONTROL=y
-# CONFIG_EFI_CAPSULE_LOADER is not set
-# CONFIG_EFI_TEST is not set
-# CONFIG_RESET_ATTACK_MITIGATION is not set
-# CONFIG_EFI_DISABLE_PCI_DMA is not set
-# end of EFI (Extensible Firmware Interface) Support
-
-# CONFIG_EFI_CUSTOM_SSDT_OVERLAYS is not set
-CONFIG_ARM_PSCI_FW=y
-# CONFIG_ARM_PSCI_CHECKER is not set
-CONFIG_HAVE_ARM_SMCCC=y
-CONFIG_HAVE_ARM_SMCCC_DISCOVERY=y
-CONFIG_ARM_SMCCC_SOC_ID=y
-
-#
-# Tegra firmware driver
-#
-# end of Tegra firmware driver
-# end of Firmware Drivers
-
-# CONFIG_GNSS is not set
-# CONFIG_MTD is not set
-CONFIG_DTC=y
-CONFIG_OF=y
-# CONFIG_OF_UNITTEST is not set
-CONFIG_OF_FLATTREE=y
-CONFIG_OF_EARLY_FLATTREE=y
-CONFIG_OF_KOBJ=y
-CONFIG_OF_DYNAMIC=y
-CONFIG_OF_ADDRESS=y
-CONFIG_OF_IRQ=y
-CONFIG_OF_RESERVED_MEM=y
-CONFIG_OF_RESOLVE=y
-CONFIG_OF_OVERLAY=y
-# CONFIG_PARPORT is not set
-CONFIG_PNP=y
-# CONFIG_PNP_DEBUG_MESSAGES is not set
-
-#
-# Protocols
-#
-CONFIG_PNPACPI=y
-CONFIG_BLK_DEV=y
-# CONFIG_BLK_DEV_NULL_BLK is not set
-CONFIG_CDROM=m
-CONFIG_ZRAM=m
-# CONFIG_ZRAM_DEF_COMP_LZORLE is not set
-CONFIG_ZRAM_DEF_COMP_ZSTD=y
-# CONFIG_ZRAM_DEF_COMP_LZO is not set
-CONFIG_ZRAM_DEF_COMP="zstd"
-# CONFIG_ZRAM_WRITEBACK is not set
-CONFIG_BLK_DEV_LOOP=m
-CONFIG_BLK_DEV_LOOP_MIN_COUNT=0
-# CONFIG_BLK_DEV_DRBD is not set
-# CONFIG_BLK_DEV_NBD is not set
-# CONFIG_BLK_DEV_RAM is not set
-# CONFIG_CDROM_PKTCDVD is not set
-# CONFIG_ATA_OVER_ETH is not set
-CONFIG_VIRTIO_BLK=m
-# CONFIG_BLK_DEV_RBD is not set
-
-#
-# NVME Support
-#
-# CONFIG_NVME_FC is not set
-# CONFIG_NVME_TCP is not set
-# CONFIG_NVME_TARGET is not set
-# end of NVME Support
-
-#
-# Misc devices
-#
-# CONFIG_AD525X_DPOT is not set
-# CONFIG_DUMMY_IRQ is not set
-# CONFIG_ICS932S401 is not set
-# CONFIG_ENCLOSURE_SERVICES is not set
-# CONFIG_HI6421V600_IRQ is not set
-# CONFIG_APDS9802ALS is not set
-# CONFIG_ISL29003 is not set
-# CONFIG_ISL29020 is not set
-# CONFIG_SENSORS_TSL2550 is not set
-# CONFIG_SENSORS_BH1770 is not set
-# CONFIG_SENSORS_APDS990X is not set
-# CONFIG_HMC6352 is not set
-# CONFIG_DS1682 is not set
-# CONFIG_LATTICE_ECP3_CONFIG is not set
-# CONFIG_SRAM is not set
-# CONFIG_XILINX_SDFEC is not set
-# CONFIG_HISI_HIKEY_USB is not set
-# CONFIG_C2PORT is not set
-
-#
-# EEPROM support
-#
-# CONFIG_EEPROM_AT24 is not set
-# CONFIG_EEPROM_AT25 is not set
-# CONFIG_EEPROM_LEGACY is not set
-# CONFIG_EEPROM_MAX6875 is not set
-CONFIG_EEPROM_93CX6=m
-# CONFIG_EEPROM_93XX46 is not set
-# CONFIG_EEPROM_IDT_89HPESX is not set
-# CONFIG_EEPROM_EE1004 is not set
-# end of EEPROM support
-
-#
-# Texas Instruments shared transport line discipline
-#
-# CONFIG_TI_ST is not set
-# end of Texas Instruments shared transport line discipline
-
-# CONFIG_SENSORS_LIS3_I2C is not set
-# CONFIG_ALTERA_STAPL is not set
-# CONFIG_ECHO is not set
-# CONFIG_MISC_RTSX_USB is not set
-# CONFIG_UACCE is not set
-# CONFIG_PVPANIC is not set
-# end of Misc devices
-
-#
-# SCSI device support
-#
-CONFIG_SCSI_MOD=y
-# CONFIG_RAID_ATTRS is not set
-CONFIG_SCSI_COMMON=y
-CONFIG_SCSI=y
-CONFIG_SCSI_DMA=y
-CONFIG_SCSI_PROC_FS=y
-
-#
-# SCSI support type (disk, tape, CD-ROM)
-#
-CONFIG_BLK_DEV_SD=y
-# CONFIG_CHR_DEV_ST is not set
-CONFIG_BLK_DEV_SR=m
-# CONFIG_CHR_DEV_SG is not set
-CONFIG_BLK_DEV_BSG=y
-# CONFIG_CHR_DEV_SCH is not set
-# CONFIG_SCSI_CONSTANTS is not set
-# CONFIG_SCSI_LOGGING is not set
-CONFIG_SCSI_SCAN_ASYNC=y
-
-#
-# SCSI Transports
-#
-CONFIG_SCSI_SPI_ATTRS=y
-# CONFIG_SCSI_FC_ATTRS is not set
-# CONFIG_SCSI_ISCSI_ATTRS is not set
-# CONFIG_SCSI_SAS_ATTRS is not set
-# CONFIG_SCSI_SAS_LIBSAS is not set
-# CONFIG_SCSI_SRP_ATTRS is not set
-# end of SCSI Transports
-
-CONFIG_SCSI_LOWLEVEL=y
-# CONFIG_ISCSI_TCP is not set
-# CONFIG_ISCSI_BOOT_SYSFS is not set
-# CONFIG_SCSI_UFSHCD is not set
-# CONFIG_SCSI_DEBUG is not set
-CONFIG_SCSI_VIRTIO=m
-# CONFIG_SCSI_DH is not set
-# end of SCSI device support
-
-CONFIG_HAVE_PATA_PLATFORM=y
-# CONFIG_ATA is not set
-CONFIG_MD=y
-# CONFIG_BLK_DEV_MD is not set
-# CONFIG_BCACHE is not set
-CONFIG_BLK_DEV_DM_BUILTIN=y
-CONFIG_BLK_DEV_DM=m
-# CONFIG_DM_DEBUG is not set
-# CONFIG_DM_UNSTRIPED is not set
-CONFIG_DM_CRYPT=m
-# CONFIG_DM_SNAPSHOT is not set
-# CONFIG_DM_THIN_PROVISIONING is not set
-# CONFIG_DM_CACHE is not set
-# CONFIG_DM_WRITECACHE is not set
-# CONFIG_DM_EBS is not set
-# CONFIG_DM_ERA is not set
-# CONFIG_DM_CLONE is not set
-# CONFIG_DM_MIRROR is not set
-# CONFIG_DM_RAID is not set
-# CONFIG_DM_ZERO is not set
-# CONFIG_DM_MULTIPATH is not set
-# CONFIG_DM_DELAY is not set
-# CONFIG_DM_DUST is not set
-# CONFIG_DM_UEVENT is not set
-# CONFIG_DM_FLAKEY is not set
-# CONFIG_DM_VERITY is not set
-# CONFIG_DM_SWITCH is not set
-# CONFIG_DM_LOG_WRITES is not set
-# CONFIG_DM_INTEGRITY is not set
-# CONFIG_TARGET_CORE is not set
-CONFIG_NETDEVICES=y
-CONFIG_MII=m
-CONFIG_NET_CORE=y
-CONFIG_BONDING=m
-CONFIG_DUMMY=m
-CONFIG_WIREGUARD=m
-# CONFIG_WIREGUARD_DEBUG is not set
-CONFIG_EQUALIZER=m
-CONFIG_IFB=m
-# CONFIG_NET_TEAM is not set
-# CONFIG_MACVLAN is not set
-# CONFIG_IPVLAN is not set
-# CONFIG_VXLAN is not set
-# CONFIG_GENEVE is not set
-CONFIG_BAREUDP=m
-CONFIG_GTP=m
-CONFIG_AMT=m
-CONFIG_MACSEC=m
-# CONFIG_NETCONSOLE is not set
-CONFIG_TUN=m
-# CONFIG_TUN_VNET_CROSS_LE is not set
-CONFIG_VETH=m
-CONFIG_VIRTIO_NET=m
-CONFIG_NLMON=m
-# CONFIG_ETHERNET is not set
-# CONFIG_NET_SB1000 is not set
-CONFIG_PHYLIB=y
-CONFIG_SWPHY=y
-CONFIG_LED_TRIGGER_PHY=y
-CONFIG_FIXED_PHY=y
-
-#
-# MII PHY device drivers
-#
-# CONFIG_AMD_PHY is not set
-# CONFIG_ADIN_PHY is not set
-# CONFIG_AQUANTIA_PHY is not set
-CONFIG_AX88796B_PHY=m
-# CONFIG_BROADCOM_PHY is not set
-# CONFIG_BCM54140_PHY is not set
-# CONFIG_BCM7XXX_PHY is not set
-# CONFIG_BCM84881_PHY is not set
-# CONFIG_BCM87XX_PHY is not set
-# CONFIG_CICADA_PHY is not set
-# CONFIG_CORTINA_PHY is not set
-# CONFIG_DAVICOM_PHY is not set
-# CONFIG_ICPLUS_PHY is not set
-# CONFIG_LXT_PHY is not set
-# CONFIG_INTEL_XWAY_PHY is not set
-# CONFIG_LSI_ET1011C_PHY is not set
-# CONFIG_MARVELL_PHY is not set
-# CONFIG_MARVELL_10G_PHY is not set
-# CONFIG_MARVELL_88X2222_PHY is not set
-# CONFIG_MAXLINEAR_GPHY is not set
-# CONFIG_MEDIATEK_GE_PHY is not set
-# CONFIG_MICREL_PHY is not set
-CONFIG_MICROCHIP_PHY=m
-# CONFIG_MICROCHIP_T1_PHY is not set
-# CONFIG_MICROSEMI_PHY is not set
-# CONFIG_MOTORCOMM_PHY is not set
-# CONFIG_NATIONAL_PHY is not set
-# CONFIG_NXP_C45_TJA11XX_PHY is not set
-# CONFIG_NXP_TJA11XX_PHY is not set
-CONFIG_AT803X_PHY=m
-CONFIG_QSEMI_PHY=m
-CONFIG_REALTEK_PHY=m
-# CONFIG_RENESAS_PHY is not set
-CONFIG_ROCKCHIP_PHY=y
-CONFIG_SMSC_PHY=m
-CONFIG_STE10XP=m
-# CONFIG_TERANETICS_PHY is not set
-# CONFIG_DP83822_PHY is not set
-# CONFIG_DP83TC811_PHY is not set
-# CONFIG_DP83848_PHY is not set
-# CONFIG_DP83867_PHY is not set
-# CONFIG_DP83869_PHY is not set
-# CONFIG_VITESSE_PHY is not set
-# CONFIG_XILINX_GMII2RGMII is not set
-# CONFIG_MICREL_KS8995MA is not set
-CONFIG_MDIO_DEVICE=y
-CONFIG_MDIO_BUS=y
-CONFIG_FWNODE_MDIO=y
-CONFIG_OF_MDIO=y
-CONFIG_ACPI_MDIO=y
-CONFIG_MDIO_DEVRES=y
-# CONFIG_MDIO_BITBANG is not set
-# CONFIG_MDIO_BCM_UNIMAC is not set
-# CONFIG_MDIO_HISI_FEMAC is not set
-# CONFIG_MDIO_MVUSB is not set
-# CONFIG_MDIO_MSCC_MIIM is not set
-# CONFIG_MDIO_OCTEON is not set
-# CONFIG_MDIO_IPQ4019 is not set
-# CONFIG_MDIO_IPQ8064 is not set
-
-#
-# MDIO Multiplexers
-#
-# CONFIG_MDIO_BUS_MUX_GPIO is not set
-# CONFIG_MDIO_BUS_MUX_MULTIPLEXER is not set
-# CONFIG_MDIO_BUS_MUX_MMIOREG is not set
-
-#
-# PCS device drivers
-#
-# CONFIG_PCS_XPCS is not set
-# end of PCS device drivers
-
-CONFIG_PPP=m
-CONFIG_PPP_BSDCOMP=m
-CONFIG_PPP_DEFLATE=m
-CONFIG_PPP_FILTER=y
-CONFIG_PPP_MPPE=m
-CONFIG_PPP_MULTILINK=y
-CONFIG_PPPOE=m
-CONFIG_PPTP=m
-CONFIG_PPPOL2TP=m
-CONFIG_PPP_ASYNC=m
-CONFIG_PPP_SYNC_TTY=m
-CONFIG_SLIP=m
-CONFIG_SLHC=m
-CONFIG_SLIP_COMPRESSED=y
-CONFIG_SLIP_SMART=y
-CONFIG_SLIP_MODE_SLIP6=y
-CONFIG_USB_NET_DRIVERS=m
-CONFIG_USB_CATC=m
-CONFIG_USB_KAWETH=m
-CONFIG_USB_PEGASUS=m
-CONFIG_USB_RTL8150=m
-CONFIG_USB_RTL8152=m
-CONFIG_USB_LAN78XX=m
-CONFIG_USB_USBNET=m
-CONFIG_USB_NET_AX8817X=m
-CONFIG_USB_NET_AX88179_178A=m
-CONFIG_USB_NET_CDCETHER=m
-CONFIG_USB_NET_CDC_EEM=m
-CONFIG_USB_NET_CDC_NCM=m
-CONFIG_USB_NET_HUAWEI_CDC_NCM=m
-CONFIG_USB_NET_CDC_MBIM=m
-CONFIG_USB_NET_DM9601=m
-CONFIG_USB_NET_SR9700=m
-CONFIG_USB_NET_SR9800=m
-CONFIG_USB_NET_SMSC75XX=m
-CONFIG_USB_NET_SMSC95XX=m
-CONFIG_USB_NET_GL620A=m
-CONFIG_USB_NET_NET1080=m
-CONFIG_USB_NET_PLUSB=m
-CONFIG_USB_NET_MCS7830=m
-CONFIG_USB_NET_RNDIS_HOST=m
-CONFIG_USB_NET_CDC_SUBSET_ENABLE=m
-CONFIG_USB_NET_CDC_SUBSET=m
-CONFIG_USB_ALI_M5632=y
-CONFIG_USB_AN2720=y
-CONFIG_USB_BELKIN=y
-CONFIG_USB_ARMLINUX=y
-CONFIG_USB_EPSON2888=y
-CONFIG_USB_KC2190=y
-CONFIG_USB_NET_ZAURUS=m
-CONFIG_USB_NET_CX82310_ETH=m
-CONFIG_USB_NET_KALMIA=m
-CONFIG_USB_NET_QMI_WWAN=m
-CONFIG_USB_HSO=m
-CONFIG_USB_NET_INT51X1=m
-CONFIG_USB_IPHETH=m
-CONFIG_USB_SIERRA_NET=m
-CONFIG_USB_VL600=m
-CONFIG_USB_NET_CH9200=m
-CONFIG_USB_NET_AQC111=m
-CONFIG_USB_RTL8153_ECM=m
-CONFIG_WLAN=y
-# CONFIG_WLAN_VENDOR_ADMTEK is not set
-# CONFIG_WLAN_VENDOR_ATH is not set
-# CONFIG_WLAN_VENDOR_ATMEL is not set
-# CONFIG_WLAN_VENDOR_BROADCOM is not set
-# CONFIG_WLAN_VENDOR_CISCO is not set
-# CONFIG_WLAN_VENDOR_INTEL is not set
-# CONFIG_WLAN_VENDOR_INTERSIL is not set
-CONFIG_WLAN_VENDOR_MARVELL=y
-# CONFIG_LIBERTAS is not set
-# CONFIG_LIBERTAS_THINFIRM is not set
-CONFIG_MWIFIEX=m
-CONFIG_MWIFIEX_SDIO=m
-CONFIG_MWIFIEX_USB=m
-CONFIG_WLAN_VENDOR_MEDIATEK=y
-CONFIG_MT7601U=m
-# CONFIG_MT76x0U is not set
-# CONFIG_MT76x2U is not set
-# CONFIG_MT7663U is not set
-# CONFIG_MT7663S is not set
-# CONFIG_MT7921S is not set
-CONFIG_WLAN_VENDOR_MICROCHIP=y
-# CONFIG_WILC1000_SDIO is not set
-# CONFIG_WILC1000_SPI is not set
-# CONFIG_WLAN_VENDOR_RALINK is not set
-# CONFIG_WLAN_VENDOR_REALTEK is not set
-# CONFIG_WLAN_VENDOR_RSI is not set
-# CONFIG_WLAN_VENDOR_ST is not set
-# CONFIG_WLAN_VENDOR_TI is not set
-# CONFIG_WLAN_VENDOR_ZYDAS is not set
-# CONFIG_WLAN_VENDOR_QUANTENNA is not set
-CONFIG_MAC80211_HWSIM=m
-CONFIG_USB_NET_RNDIS_WLAN=m
-CONFIG_VIRT_WIFI=m
-# CONFIG_WAN is not set
-
-#
-# Wireless WAN
-#
-# CONFIG_WWAN is not set
-# end of Wireless WAN
-
-# CONFIG_FUJITSU_ES is not set
-CONFIG_NET_FAILOVER=m
-# CONFIG_ISDN is not set
-
-#
-# Input device support
-#
-CONFIG_INPUT=y
-CONFIG_INPUT_LEDS=m
-CONFIG_INPUT_FF_MEMLESS=m
-CONFIG_INPUT_SPARSEKMAP=m
-CONFIG_INPUT_MATRIXKMAP=y
-
-#
-# Userland interfaces
-#
-# CONFIG_INPUT_MOUSEDEV is not set
-CONFIG_INPUT_JOYDEV=m
-CONFIG_INPUT_EVDEV=y
-# CONFIG_INPUT_EVBUG is not set
-
-#
-# Input Device Drivers
-#
-CONFIG_INPUT_KEYBOARD=y
-# CONFIG_KEYBOARD_ADC is not set
-# CONFIG_KEYBOARD_ADP5588 is not set
-# CONFIG_KEYBOARD_ADP5589 is not set
-# CONFIG_KEYBOARD_ATKBD is not set
-# CONFIG_KEYBOARD_QT1050 is not set
-# CONFIG_KEYBOARD_QT1070 is not set
-# CONFIG_KEYBOARD_QT2160 is not set
-# CONFIG_KEYBOARD_DLINK_DIR685 is not set
-# CONFIG_KEYBOARD_LKKBD is not set
-CONFIG_KEYBOARD_GPIO=m
-# CONFIG_KEYBOARD_GPIO_POLLED is not set
-# CONFIG_KEYBOARD_TCA6416 is not set
-# CONFIG_KEYBOARD_TCA8418 is not set
-# CONFIG_KEYBOARD_MATRIX is not set
-# CONFIG_KEYBOARD_LM8323 is not set
-# CONFIG_KEYBOARD_LM8333 is not set
-# CONFIG_KEYBOARD_MAX7359 is not set
-# CONFIG_KEYBOARD_MCS is not set
-# CONFIG_KEYBOARD_MPR121 is not set
-# CONFIG_KEYBOARD_NEWTON is not set
-# CONFIG_KEYBOARD_OPENCORES is not set
-# CONFIG_KEYBOARD_SAMSUNG is not set
-# CONFIG_KEYBOARD_STOWAWAY is not set
-# CONFIG_KEYBOARD_SUNKBD is not set
-# CONFIG_KEYBOARD_OMAP4 is not set
-# CONFIG_KEYBOARD_TM2_TOUCHKEY is not set
-# CONFIG_KEYBOARD_XTKBD is not set
-CONFIG_KEYBOARD_CROS_EC=y
-# CONFIG_KEYBOARD_CAP11XX is not set
-# CONFIG_KEYBOARD_BCM is not set
-CONFIG_KEYBOARD_MTK_PMIC=m
-# CONFIG_KEYBOARD_CYPRESS_SF is not set
-CONFIG_INPUT_MOUSE=y
-# CONFIG_MOUSE_PS2 is not set
-# CONFIG_MOUSE_SERIAL is not set
-# CONFIG_MOUSE_APPLETOUCH is not set
-# CONFIG_MOUSE_BCM5974 is not set
-# CONFIG_MOUSE_CYAPA is not set
-CONFIG_MOUSE_ELAN_I2C=m
-CONFIG_MOUSE_ELAN_I2C_I2C=y
-CONFIG_MOUSE_ELAN_I2C_SMBUS=y
-# CONFIG_MOUSE_VSXXXAA is not set
-# CONFIG_MOUSE_GPIO is not set
-CONFIG_MOUSE_SYNAPTICS_I2C=m
-CONFIG_MOUSE_SYNAPTICS_USB=m
-CONFIG_INPUT_JOYSTICK=y
-# CONFIG_JOYSTICK_ANALOG is not set
-# CONFIG_JOYSTICK_A3D is not set
-# CONFIG_JOYSTICK_ADC is not set
-# CONFIG_JOYSTICK_ADI is not set
-# CONFIG_JOYSTICK_COBRA is not set
-# CONFIG_JOYSTICK_GF2K is not set
-# CONFIG_JOYSTICK_GRIP is not set
-# CONFIG_JOYSTICK_GRIP_MP is not set
-# CONFIG_JOYSTICK_GUILLEMOT is not set
-# CONFIG_JOYSTICK_INTERACT is not set
-# CONFIG_JOYSTICK_SIDEWINDER is not set
-# CONFIG_JOYSTICK_TMDC is not set
-CONFIG_JOYSTICK_IFORCE=m
-CONFIG_JOYSTICK_IFORCE_USB=m
-# CONFIG_JOYSTICK_IFORCE_232 is not set
-# CONFIG_JOYSTICK_WARRIOR is not set
-# CONFIG_JOYSTICK_MAGELLAN is not set
-# CONFIG_JOYSTICK_SPACEORB is not set
-# CONFIG_JOYSTICK_SPACEBALL is not set
-# CONFIG_JOYSTICK_STINGER is not set
-# CONFIG_JOYSTICK_TWIDJOY is not set
-# CONFIG_JOYSTICK_ZHENHUA is not set
-# CONFIG_JOYSTICK_AS5011 is not set
-# CONFIG_JOYSTICK_JOYDUMP is not set
-CONFIG_JOYSTICK_XPAD=m
-CONFIG_JOYSTICK_XPAD_FF=y
-CONFIG_JOYSTICK_XPAD_LEDS=y
-# CONFIG_JOYSTICK_PSXPAD_SPI is not set
-# CONFIG_JOYSTICK_PXRC is not set
-# CONFIG_JOYSTICK_QWIIC is not set
-# CONFIG_JOYSTICK_FSIA6B is not set
-# CONFIG_INPUT_TABLET is not set
-CONFIG_INPUT_TOUCHSCREEN=y
-# CONFIG_TOUCHSCREEN_ADS7846 is not set
-# CONFIG_TOUCHSCREEN_AD7877 is not set
-# CONFIG_TOUCHSCREEN_AD7879 is not set
-# CONFIG_TOUCHSCREEN_ADC is not set
-# CONFIG_TOUCHSCREEN_AR1021_I2C is not set
-CONFIG_TOUCHSCREEN_ATMEL_MXT=m
-# CONFIG_TOUCHSCREEN_ATMEL_MXT_T37 is not set
-# CONFIG_TOUCHSCREEN_AUO_PIXCIR is not set
-# CONFIG_TOUCHSCREEN_BU21013 is not set
-# CONFIG_TOUCHSCREEN_BU21029 is not set
-# CONFIG_TOUCHSCREEN_CHIPONE_ICN8318 is not set
-# CONFIG_TOUCHSCREEN_CHIPONE_ICN8505 is not set
-# CONFIG_TOUCHSCREEN_CY8CTMA140 is not set
-# CONFIG_TOUCHSCREEN_CY8CTMG110 is not set
-# CONFIG_TOUCHSCREEN_CYTTSP_CORE is not set
-# CONFIG_TOUCHSCREEN_CYTTSP4_CORE is not set
-# CONFIG_TOUCHSCREEN_DYNAPRO is not set
-# CONFIG_TOUCHSCREEN_HAMPSHIRE is not set
-# CONFIG_TOUCHSCREEN_EETI is not set
-# CONFIG_TOUCHSCREEN_EGALAX is not set
-# CONFIG_TOUCHSCREEN_EGALAX_SERIAL is not set
-# CONFIG_TOUCHSCREEN_EXC3000 is not set
-# CONFIG_TOUCHSCREEN_FUJITSU is not set
-# CONFIG_TOUCHSCREEN_GOODIX is not set
-# CONFIG_TOUCHSCREEN_HIDEEP is not set
-# CONFIG_TOUCHSCREEN_HYCON_HY46XX is not set
-# CONFIG_TOUCHSCREEN_ILI210X is not set
-# CONFIG_TOUCHSCREEN_ILITEK is not set
-# CONFIG_TOUCHSCREEN_S6SY761 is not set
-# CONFIG_TOUCHSCREEN_GUNZE is not set
-# CONFIG_TOUCHSCREEN_EKTF2127 is not set
-CONFIG_TOUCHSCREEN_ELAN=m
-# CONFIG_TOUCHSCREEN_ELO is not set
-# CONFIG_TOUCHSCREEN_WACOM_W8001 is not set
-# CONFIG_TOUCHSCREEN_WACOM_I2C is not set
-# CONFIG_TOUCHSCREEN_MAX11801 is not set
-# CONFIG_TOUCHSCREEN_MCS5000 is not set
-# CONFIG_TOUCHSCREEN_MMS114 is not set
-CONFIG_TOUCHSCREEN_MELFAS_MIP4=m
-# CONFIG_TOUCHSCREEN_MSG2638 is not set
-# CONFIG_TOUCHSCREEN_MTOUCH is not set
-# CONFIG_TOUCHSCREEN_IMX6UL_TSC is not set
-# CONFIG_TOUCHSCREEN_INEXIO is not set
-# CONFIG_TOUCHSCREEN_MK712 is not set
-# CONFIG_TOUCHSCREEN_PENMOUNT is not set
-# CONFIG_TOUCHSCREEN_EDT_FT5X06 is not set
-# CONFIG_TOUCHSCREEN_TOUCHRIGHT is not set
-# CONFIG_TOUCHSCREEN_TOUCHWIN is not set
-# CONFIG_TOUCHSCREEN_PIXCIR is not set
-# CONFIG_TOUCHSCREEN_WDT87XX_I2C is not set
-# CONFIG_TOUCHSCREEN_USB_COMPOSITE is not set
-# CONFIG_TOUCHSCREEN_TOUCHIT213 is not set
-# CONFIG_TOUCHSCREEN_TSC_SERIO is not set
-# CONFIG_TOUCHSCREEN_TSC2004 is not set
-# CONFIG_TOUCHSCREEN_TSC2005 is not set
-# CONFIG_TOUCHSCREEN_TSC2007 is not set
-# CONFIG_TOUCHSCREEN_RM_TS is not set
-# CONFIG_TOUCHSCREEN_SILEAD is not set
-# CONFIG_TOUCHSCREEN_SIS_I2C is not set
-# CONFIG_TOUCHSCREEN_ST1232 is not set
-# CONFIG_TOUCHSCREEN_STMFTS is not set
-# CONFIG_TOUCHSCREEN_SUR40 is not set
-# CONFIG_TOUCHSCREEN_SURFACE3_SPI is not set
-# CONFIG_TOUCHSCREEN_SX8654 is not set
-# CONFIG_TOUCHSCREEN_TPS6507X is not set
-# CONFIG_TOUCHSCREEN_ZET6223 is not set
-# CONFIG_TOUCHSCREEN_ZFORCE is not set
-# CONFIG_TOUCHSCREEN_ROHM_BU21023 is not set
-# CONFIG_TOUCHSCREEN_IQS5XX is not set
-# CONFIG_TOUCHSCREEN_ZINITIX is not set
-CONFIG_INPUT_MISC=y
-# CONFIG_INPUT_AD714X is not set
-# CONFIG_INPUT_ATMEL_CAPTOUCH is not set
-# CONFIG_INPUT_BMA150 is not set
-# CONFIG_INPUT_E3X0_BUTTON is not set
-# CONFIG_INPUT_MMA8450 is not set
-# CONFIG_INPUT_GPIO_BEEPER is not set
-# CONFIG_INPUT_GPIO_DECODER is not set
-# CONFIG_INPUT_GPIO_VIBRA is not set
-# CONFIG_INPUT_ATI_REMOTE2 is not set
-# CONFIG_INPUT_KEYSPAN_REMOTE is not set
-# CONFIG_INPUT_KXTJ9 is not set
-# CONFIG_INPUT_POWERMATE is not set
-# CONFIG_INPUT_YEALINK is not set
-# CONFIG_INPUT_CM109 is not set
-# CONFIG_INPUT_REGULATOR_HAPTIC is not set
-CONFIG_INPUT_UINPUT=m
-# CONFIG_INPUT_PALMAS_PWRBUTTON is not set
-# CONFIG_INPUT_PCF8574 is not set
-# CONFIG_INPUT_PWM_BEEPER is not set
-# CONFIG_INPUT_PWM_VIBRA is not set
-# CONFIG_INPUT_GPIO_ROTARY_ENCODER is not set
-# CONFIG_INPUT_DA7280_HAPTICS is not set
-# CONFIG_INPUT_ADXL34X is not set
-# CONFIG_INPUT_IMS_PCU is not set
-# CONFIG_INPUT_IQS269A is not set
-# CONFIG_INPUT_IQS626A is not set
-# CONFIG_INPUT_CMA3000 is not set
-# CONFIG_INPUT_SOC_BUTTON_ARRAY is not set
-# CONFIG_INPUT_DRV260X_HAPTICS is not set
-# CONFIG_INPUT_DRV2665_HAPTICS is not set
-# CONFIG_INPUT_DRV2667_HAPTICS is not set
-CONFIG_RMI4_CORE=y
-CONFIG_RMI4_I2C=y
-# CONFIG_RMI4_SPI is not set
-# CONFIG_RMI4_SMB is not set
-CONFIG_RMI4_F03=y
-CONFIG_RMI4_F03_SERIO=y
-CONFIG_RMI4_2D_SENSOR=y
-CONFIG_RMI4_F11=y
-CONFIG_RMI4_F12=y
-CONFIG_RMI4_F30=y
-# CONFIG_RMI4_F34 is not set
-# CONFIG_RMI4_F3A is not set
-# CONFIG_RMI4_F55 is not set
-
-#
-# Hardware I/O ports
-#
-CONFIG_SERIO=y
-CONFIG_SERIO_SERPORT=m
-# CONFIG_SERIO_AMBAKMI is not set
-# CONFIG_SERIO_LIBPS2 is not set
-CONFIG_SERIO_RAW=m
-# CONFIG_SERIO_ALTERA_PS2 is not set
-# CONFIG_SERIO_PS2MULT is not set
-# CONFIG_SERIO_ARC_PS2 is not set
-# CONFIG_SERIO_APBPS2 is not set
-# CONFIG_SERIO_GPIO_PS2 is not set
-# CONFIG_USERIO is not set
-# CONFIG_GAMEPORT is not set
-# end of Hardware I/O ports
-# end of Input device support
-
-#
-# Character devices
-#
-CONFIG_TTY=y
-CONFIG_VT=y
-CONFIG_CONSOLE_TRANSLATIONS=y
-CONFIG_VT_CONSOLE=y
-CONFIG_VT_CONSOLE_SLEEP=y
-CONFIG_HW_CONSOLE=y
-CONFIG_VT_HW_CONSOLE_BINDING=y
-CONFIG_UNIX98_PTYS=y
-# CONFIG_LEGACY_PTYS is not set
-CONFIG_LDISC_AUTOLOAD=y
-
-#
-# Serial drivers
-#
-CONFIG_SERIAL_8250=y
-CONFIG_SERIAL_8250_DEPRECATED_OPTIONS=y
-CONFIG_SERIAL_8250_PNP=y
-CONFIG_SERIAL_8250_16550A_VARIANTS=y
-# CONFIG_SERIAL_8250_FINTEK is not set
-# CONFIG_SERIAL_8250_CONSOLE is not set
-CONFIG_SERIAL_8250_DMA=y
-CONFIG_SERIAL_8250_NR_UARTS=4
-CONFIG_SERIAL_8250_RUNTIME_UARTS=4
-# CONFIG_SERIAL_8250_EXTENDED is not set
-# CONFIG_SERIAL_8250_ASPEED_VUART is not set
-# CONFIG_SERIAL_8250_DW is not set
-# CONFIG_SERIAL_8250_RT288X is not set
-CONFIG_SERIAL_8250_MT6577=y
-CONFIG_SERIAL_OF_PLATFORM=y
-
-#
-# Non-8250 serial port support
-#
-# CONFIG_SERIAL_AMBA_PL010 is not set
-# CONFIG_SERIAL_AMBA_PL011 is not set
-# CONFIG_SERIAL_EARLYCON_ARM_SEMIHOST is not set
-# CONFIG_SERIAL_MAX3100 is not set
-# CONFIG_SERIAL_MAX310X is not set
-# CONFIG_SERIAL_UARTLITE is not set
-CONFIG_SERIAL_CORE=y
-# CONFIG_SERIAL_SIFIVE is not set
-# CONFIG_SERIAL_SCCNXP is not set
-# CONFIG_SERIAL_SC16IS7XX is not set
-# CONFIG_SERIAL_BCM63XX is not set
-# CONFIG_SERIAL_ALTERA_JTAGUART is not set
-# CONFIG_SERIAL_ALTERA_UART is not set
-# CONFIG_SERIAL_XILINX_PS_UART is not set
-# CONFIG_SERIAL_ARC is not set
-# CONFIG_SERIAL_FSL_LPUART is not set
-# CONFIG_SERIAL_FSL_LINFLEXUART is not set
-# CONFIG_SERIAL_CONEXANT_DIGICOLOR is not set
-# CONFIG_SERIAL_SPRD is not set
-# end of Serial drivers
-
-CONFIG_SERIAL_MCTRL_GPIO=y
-# CONFIG_SERIAL_NONSTANDARD is not set
-# CONFIG_N_GSM is not set
-# CONFIG_NULL_TTY is not set
-CONFIG_HVC_DRIVER=y
-# CONFIG_HVC_DCC is not set
-# CONFIG_SERIAL_DEV_BUS is not set
-CONFIG_VIRTIO_CONSOLE=m
-# CONFIG_IPMI_HANDLER is not set
-CONFIG_HW_RANDOM=m
-CONFIG_HW_RANDOM_TIMERIOMEM=m
-# CONFIG_HW_RANDOM_BA431 is not set
-CONFIG_HW_RANDOM_VIRTIO=m
-CONFIG_HW_RANDOM_MTK=m
-# CONFIG_HW_RANDOM_CCTRNG is not set
-# CONFIG_HW_RANDOM_XIPHERA is not set
-CONFIG_HW_RANDOM_ARM_SMCCC_TRNG=m
-CONFIG_DEVMEM=y
-# CONFIG_TCG_TPM is not set
-# CONFIG_XILLYBUS is not set
-# CONFIG_XILLYUSB is not set
-# CONFIG_RANDOM_TRUST_CPU is not set
-# CONFIG_RANDOM_TRUST_BOOTLOADER is not set
-# end of Character devices
-
-#
-# I2C support
-#
-CONFIG_I2C=y
-CONFIG_ACPI_I2C_OPREGION=y
-CONFIG_I2C_BOARDINFO=y
-CONFIG_I2C_COMPAT=y
-CONFIG_I2C_CHARDEV=m
-CONFIG_I2C_MUX=y
-
-#
-# Multiplexer I2C Chip support
-#
-# CONFIG_I2C_ARB_GPIO_CHALLENGE is not set
-# CONFIG_I2C_MUX_GPIO is not set
-# CONFIG_I2C_MUX_GPMUX is not set
-# CONFIG_I2C_MUX_LTC4306 is not set
-# CONFIG_I2C_MUX_PCA9541 is not set
-# CONFIG_I2C_MUX_PCA954x is not set
-# CONFIG_I2C_MUX_PINCTRL is not set
-# CONFIG_I2C_MUX_REG is not set
-# CONFIG_I2C_DEMUX_PINCTRL is not set
-# CONFIG_I2C_MUX_MLXCPLD is not set
-# end of Multiplexer I2C Chip support
-
-CONFIG_I2C_HELPER_AUTO=y
-CONFIG_I2C_SMBUS=m
-CONFIG_I2C_ALGOBIT=y
-
-#
-# I2C Hardware Bus support
-#
-
-#
-# ACPI drivers
-#
-# CONFIG_I2C_SCMI is not set
-
-#
-# I2C system bus drivers (mostly embedded / system-on-chip)
-#
-# CONFIG_I2C_CADENCE is not set
-# CONFIG_I2C_CBUS_GPIO is not set
-# CONFIG_I2C_DESIGNWARE_PLATFORM is not set
-# CONFIG_I2C_EMEV2 is not set
-# CONFIG_I2C_GPIO is not set
-# CONFIG_I2C_HISI is not set
-CONFIG_I2C_MT65XX=y
-# CONFIG_I2C_NOMADIK is not set
-# CONFIG_I2C_OCORES is not set
-# CONFIG_I2C_PCA_PLATFORM is not set
-# CONFIG_I2C_RK3X is not set
-# CONFIG_I2C_SIMTEC is not set
-# CONFIG_I2C_XILINX is not set
-
-#
-# External I2C/SMBus adapter drivers
-#
-# CONFIG_I2C_DIOLAN_U2C is not set
-# CONFIG_I2C_CP2615 is not set
-# CONFIG_I2C_ROBOTFUZZ_OSIF is not set
-# CONFIG_I2C_TAOS_EVM is not set
-CONFIG_I2C_TINY_USB=m
-
-#
-# Other I2C/SMBus bus drivers
-#
-CONFIG_I2C_CROS_EC_TUNNEL=y
-CONFIG_I2C_VIRTIO=m
-# end of I2C Hardware Bus support
-
-CONFIG_I2C_STUB=m
-# CONFIG_I2C_SLAVE is not set
-# CONFIG_I2C_DEBUG_CORE is not set
-# CONFIG_I2C_DEBUG_ALGO is not set
-# CONFIG_I2C_DEBUG_BUS is not set
-# end of I2C support
-
-# CONFIG_I3C is not set
-CONFIG_SPI=y
-CONFIG_SPI_MASTER=y
-CONFIG_SPI_MEM=y
-
-#
-# SPI Master Controller Drivers
-#
-# CONFIG_SPI_ALTERA is not set
-# CONFIG_SPI_AXI_SPI_ENGINE is not set
-CONFIG_SPI_BITBANG=y
-# CONFIG_SPI_CADENCE is not set
-# CONFIG_SPI_CADENCE_QUADSPI is not set
-# CONFIG_SPI_CADENCE_XSPI is not set
-# CONFIG_SPI_DESIGNWARE is not set
-# CONFIG_SPI_HISI_KUNPENG is not set
-# CONFIG_SPI_HISI_SFC_V3XX is not set
-# CONFIG_SPI_NXP_FLEXSPI is not set
-CONFIG_SPI_GPIO=y
-# CONFIG_SPI_FSL_SPI is not set
-CONFIG_SPI_MT65XX=y
-CONFIG_SPI_MTK_NOR=y
-# CONFIG_SPI_OC_TINY is not set
-# CONFIG_SPI_PL022 is not set
-# CONFIG_SPI_PXA2XX is not set
-# CONFIG_SPI_ROCKCHIP is not set
-# CONFIG_SPI_SC18IS602 is not set
-# CONFIG_SPI_SIFIVE is not set
-CONFIG_SPI_SLAVE_MT27XX=m
-# CONFIG_SPI_MXIC is not set
-# CONFIG_SPI_XCOMM is not set
-# CONFIG_SPI_XILINX is not set
-# CONFIG_SPI_ZYNQMP_GQSPI is not set
-# CONFIG_SPI_AMD is not set
-
-#
-# SPI Multiplexer support
-#
-# CONFIG_SPI_MUX is not set
-
-#
-# SPI Protocol Masters
-#
-CONFIG_SPI_SPIDEV=y
-# CONFIG_SPI_LOOPBACK_TEST is not set
-# CONFIG_SPI_TLE62X0 is not set
-CONFIG_SPI_SLAVE=y
-CONFIG_SPI_SLAVE_TIME=m
-CONFIG_SPI_SLAVE_SYSTEM_CONTROL=m
-CONFIG_SPI_DYNAMIC=y
-CONFIG_SPMI=m
-# CONFIG_SPMI_HISI3670 is not set
-CONFIG_SPMI_MTK_PMIF=m
-# CONFIG_HSI is not set
-CONFIG_PPS=m
-# CONFIG_PPS_DEBUG is not set
-
-#
-# PPS clients support
-#
-CONFIG_PPS_CLIENT_KTIMER=m
-CONFIG_PPS_CLIENT_LDISC=m
-CONFIG_PPS_CLIENT_GPIO=m
-
-#
-# PPS generators support
-#
-
-#
-# PTP clock support
-#
-# CONFIG_PTP_1588_CLOCK is not set
-CONFIG_PTP_1588_CLOCK_OPTIONAL=y
-
-#
-# Enable PHYLIB and NETWORK_PHY_TIMESTAMPING to see the additional clocks.
-#
-# end of PTP clock support
-
-CONFIG_PINCTRL=y
-CONFIG_GENERIC_PINCTRL_GROUPS=y
-CONFIG_PINMUX=y
-CONFIG_GENERIC_PINMUX_FUNCTIONS=y
-CONFIG_PINCONF=y
-CONFIG_GENERIC_PINCONF=y
-# CONFIG_PINCTRL_AMD is not set
-# CONFIG_PINCTRL_AS3722 is not set
-# CONFIG_PINCTRL_MCP23S08 is not set
-# CONFIG_PINCTRL_MICROCHIP_SGPIO is not set
-# CONFIG_PINCTRL_OCELOT is not set
-# CONFIG_PINCTRL_PALMAS is not set
-# CONFIG_PINCTRL_SINGLE is not set
-# CONFIG_PINCTRL_STMFX is not set
-# CONFIG_PINCTRL_SX150X is not set
-
-#
-# MediaTek pinctrl drivers
-#
-CONFIG_EINT_MTK=y
-CONFIG_PINCTRL_MTK=y
-CONFIG_PINCTRL_MTK_V2=y
-CONFIG_PINCTRL_MTK_MOORE=y
-CONFIG_PINCTRL_MTK_PARIS=y
-CONFIG_PINCTRL_MT2712=y
-CONFIG_PINCTRL_MT6765=y
-CONFIG_PINCTRL_MT6779=y
-CONFIG_PINCTRL_MT6797=y
-CONFIG_PINCTRL_MT7622=y
-CONFIG_PINCTRL_MT7986=y
-CONFIG_PINCTRL_MT8167=y
-CONFIG_PINCTRL_MT8173=y
-CONFIG_PINCTRL_MT8183=y
-CONFIG_PINCTRL_MT8192=y
-# CONFIG_PINCTRL_MT8195 is not set
-CONFIG_PINCTRL_MT8365=y
-CONFIG_PINCTRL_MT8516=y
-CONFIG_PINCTRL_MT6397=y
-# end of MediaTek pinctrl drivers
-
-#
-# Renesas pinctrl drivers
-#
-# end of Renesas pinctrl drivers
-
-CONFIG_GPIOLIB=y
-CONFIG_GPIOLIB_FASTPATH_LIMIT=512
-CONFIG_OF_GPIO=y
-CONFIG_GPIO_ACPI=y
-CONFIG_GPIOLIB_IRQCHIP=y
-CONFIG_GPIO_CDEV=y
-CONFIG_GPIO_CDEV_V1=y
-
-#
-# Memory mapped GPIO drivers
-#
-# CONFIG_GPIO_74XX_MMIO is not set
-# CONFIG_GPIO_ALTERA is not set
-# CONFIG_GPIO_AMDPT is not set
-# CONFIG_GPIO_CADENCE is not set
-# CONFIG_GPIO_DWAPB is not set
-# CONFIG_GPIO_FTGPIO010 is not set
-# CONFIG_GPIO_GENERIC_PLATFORM is not set
-# CONFIG_GPIO_GRGPIO is not set
-# CONFIG_GPIO_HISI is not set
-# CONFIG_GPIO_HLWD is not set
-# CONFIG_GPIO_LOGICVC is not set
-# CONFIG_GPIO_MB86S7X is not set
-# CONFIG_GPIO_PL061 is not set
-# CONFIG_GPIO_SAMA5D2_PIOBU is not set
-# CONFIG_GPIO_SIFIVE is not set
-# CONFIG_GPIO_SYSCON is not set
-# CONFIG_GPIO_XGENE is not set
-# CONFIG_GPIO_XILINX is not set
-# CONFIG_GPIO_AMD_FCH is not set
-# end of Memory mapped GPIO drivers
-
-#
-# I2C GPIO expanders
-#
-# CONFIG_GPIO_ADP5588 is not set
-# CONFIG_GPIO_ADNP is not set
-# CONFIG_GPIO_GW_PLD is not set
-# CONFIG_GPIO_MAX7300 is not set
-# CONFIG_GPIO_MAX732X is not set
-# CONFIG_GPIO_PCA953X is not set
-# CONFIG_GPIO_PCA9570 is not set
-# CONFIG_GPIO_PCF857X is not set
-# CONFIG_GPIO_TPIC2810 is not set
-# end of I2C GPIO expanders
-
-#
-# MFD GPIO expanders
-#
-CONFIG_GPIO_PALMAS=y
-# CONFIG_GPIO_TPS6586X is not set
-# end of MFD GPIO expanders
-
-#
-# SPI GPIO expanders
-#
-# CONFIG_GPIO_74X164 is not set
-# CONFIG_GPIO_MAX3191X is not set
-# CONFIG_GPIO_MAX7301 is not set
-# CONFIG_GPIO_MC33880 is not set
-# CONFIG_GPIO_PISOSR is not set
-# CONFIG_GPIO_XRA1403 is not set
-# end of SPI GPIO expanders
-
-#
-# USB GPIO expanders
-#
-# end of USB GPIO expanders
-
-#
-# Virtual GPIO drivers
-#
-CONFIG_GPIO_AGGREGATOR=m
-# CONFIG_GPIO_MOCKUP is not set
-CONFIG_GPIO_VIRTIO=m
-# CONFIG_GPIO_SIM is not set
-# end of Virtual GPIO drivers
-
-# CONFIG_W1 is not set
-CONFIG_POWER_RESET=y
-# CONFIG_POWER_RESET_AS3722 is not set
-# CONFIG_POWER_RESET_BRCMSTB is not set
-# CONFIG_POWER_RESET_GPIO is not set
-# CONFIG_POWER_RESET_GPIO_RESTART is not set
-# CONFIG_POWER_RESET_LTC2952 is not set
-CONFIG_POWER_RESET_MT6323=y
-# CONFIG_POWER_RESET_REGULATOR is not set
-# CONFIG_POWER_RESET_RESTART is not set
-# CONFIG_POWER_RESET_XGENE is not set
-# CONFIG_POWER_RESET_SYSCON is not set
-# CONFIG_POWER_RESET_SYSCON_POWEROFF is not set
-# CONFIG_SYSCON_REBOOT_MODE is not set
-# CONFIG_NVMEM_REBOOT_MODE is not set
-CONFIG_POWER_SUPPLY=y
-# CONFIG_POWER_SUPPLY_DEBUG is not set
-# CONFIG_PDA_POWER is not set
-# CONFIG_GENERIC_ADC_BATTERY is not set
-# CONFIG_TEST_POWER is not set
-# CONFIG_CHARGER_ADP5061 is not set
-# CONFIG_BATTERY_CW2015 is not set
-# CONFIG_BATTERY_DS2780 is not set
-# CONFIG_BATTERY_DS2781 is not set
-# CONFIG_BATTERY_DS2782 is not set
-CONFIG_BATTERY_SBS=m
-CONFIG_CHARGER_SBS=m
-CONFIG_MANAGER_SBS=m
-# CONFIG_BATTERY_BQ27XXX is not set
-# CONFIG_BATTERY_MAX17040 is not set
-# CONFIG_BATTERY_MAX17042 is not set
-# CONFIG_CHARGER_ISP1704 is not set
-# CONFIG_CHARGER_MAX8903 is not set
-# CONFIG_CHARGER_LP8727 is not set
-# CONFIG_CHARGER_GPIO is not set
-# CONFIG_CHARGER_MANAGER is not set
-# CONFIG_CHARGER_LT3651 is not set
-# CONFIG_CHARGER_LTC4162L is not set
-# CONFIG_CHARGER_DETECTOR_MAX14656 is not set
-# CONFIG_CHARGER_MAX77976 is not set
-# CONFIG_CHARGER_MT6360 is not set
-# CONFIG_CHARGER_BQ2415X is not set
-# CONFIG_CHARGER_BQ24190 is not set
-# CONFIG_CHARGER_BQ24257 is not set
-# CONFIG_CHARGER_BQ24735 is not set
-# CONFIG_CHARGER_BQ2515X is not set
-# CONFIG_CHARGER_BQ25890 is not set
-# CONFIG_CHARGER_BQ25980 is not set
-# CONFIG_CHARGER_BQ256XX is not set
-# CONFIG_CHARGER_SMB347 is not set
-# CONFIG_CHARGER_TPS65090 is not set
-# CONFIG_BATTERY_GAUGE_LTC2941 is not set
-# CONFIG_BATTERY_GOLDFISH is not set
-# CONFIG_BATTERY_RT5033 is not set
-# CONFIG_CHARGER_RT9455 is not set
-CONFIG_CHARGER_CROS_USBPD=m
-CONFIG_CHARGER_CROS_PCHG=m
-# CONFIG_CHARGER_UCS1002 is not set
-# CONFIG_CHARGER_BD99954 is not set
-CONFIG_HWMON=m
-# CONFIG_HWMON_DEBUG_CHIP is not set
-
-#
-# Native drivers
-#
-# CONFIG_SENSORS_AD7314 is not set
-# CONFIG_SENSORS_AD7414 is not set
-# CONFIG_SENSORS_AD7418 is not set
-# CONFIG_SENSORS_ADM1021 is not set
-# CONFIG_SENSORS_ADM1025 is not set
-# CONFIG_SENSORS_ADM1026 is not set
-# CONFIG_SENSORS_ADM1029 is not set
-# CONFIG_SENSORS_ADM1031 is not set
-# CONFIG_SENSORS_ADM1177 is not set
-# CONFIG_SENSORS_ADM9240 is not set
-# CONFIG_SENSORS_ADT7310 is not set
-# CONFIG_SENSORS_ADT7410 is not set
-# CONFIG_SENSORS_ADT7411 is not set
-# CONFIG_SENSORS_ADT7462 is not set
-# CONFIG_SENSORS_ADT7470 is not set
-# CONFIG_SENSORS_ADT7475 is not set
-# CONFIG_SENSORS_AHT10 is not set
-# CONFIG_SENSORS_AQUACOMPUTER_D5NEXT is not set
-# CONFIG_SENSORS_AS370 is not set
-# CONFIG_SENSORS_ASC7621 is not set
-# CONFIG_SENSORS_AXI_FAN_CONTROL is not set
-CONFIG_SENSORS_ARM_SCMI=m
-CONFIG_SENSORS_ARM_SCPI=m
-# CONFIG_SENSORS_ASPEED is not set
-# CONFIG_SENSORS_ATXP1 is not set
-# CONFIG_SENSORS_CORSAIR_CPRO is not set
-# CONFIG_SENSORS_CORSAIR_PSU is not set
-# CONFIG_SENSORS_DS620 is not set
-# CONFIG_SENSORS_DS1621 is not set
-# CONFIG_SENSORS_F71805F is not set
-# CONFIG_SENSORS_F71882FG is not set
-# CONFIG_SENSORS_F75375S is not set
-# CONFIG_SENSORS_FTSTEUTATES is not set
-# CONFIG_SENSORS_GL518SM is not set
-# CONFIG_SENSORS_GL520SM is not set
-# CONFIG_SENSORS_G760A is not set
-# CONFIG_SENSORS_G762 is not set
-# CONFIG_SENSORS_GPIO_FAN is not set
-# CONFIG_SENSORS_HIH6130 is not set
-CONFIG_SENSORS_IIO_HWMON=m
-# CONFIG_SENSORS_IT87 is not set
-# CONFIG_SENSORS_JC42 is not set
-# CONFIG_SENSORS_POWR1220 is not set
-# CONFIG_SENSORS_LINEAGE is not set
-# CONFIG_SENSORS_LTC2945 is not set
-# CONFIG_SENSORS_LTC2947_I2C is not set
-# CONFIG_SENSORS_LTC2947_SPI is not set
-# CONFIG_SENSORS_LTC2990 is not set
-# CONFIG_SENSORS_LTC2992 is not set
-# CONFIG_SENSORS_LTC4151 is not set
-# CONFIG_SENSORS_LTC4215 is not set
-# CONFIG_SENSORS_LTC4222 is not set
-# CONFIG_SENSORS_LTC4245 is not set
-# CONFIG_SENSORS_LTC4260 is not set
-# CONFIG_SENSORS_LTC4261 is not set
-# CONFIG_SENSORS_MAX1111 is not set
-# CONFIG_SENSORS_MAX127 is not set
-# CONFIG_SENSORS_MAX16065 is not set
-# CONFIG_SENSORS_MAX1619 is not set
-# CONFIG_SENSORS_MAX1668 is not set
-# CONFIG_SENSORS_MAX197 is not set
-# CONFIG_SENSORS_MAX31722 is not set
-# CONFIG_SENSORS_MAX31730 is not set
-# CONFIG_SENSORS_MAX6620 is not set
-# CONFIG_SENSORS_MAX6621 is not set
-# CONFIG_SENSORS_MAX6639 is not set
-# CONFIG_SENSORS_MAX6642 is not set
-# CONFIG_SENSORS_MAX6650 is not set
-# CONFIG_SENSORS_MAX6697 is not set
-# CONFIG_SENSORS_MAX31790 is not set
-# CONFIG_SENSORS_MCP3021 is not set
-# CONFIG_SENSORS_TC654 is not set
-# CONFIG_SENSORS_TPS23861 is not set
-# CONFIG_SENSORS_MR75203 is not set
-# CONFIG_SENSORS_ADCXX is not set
-# CONFIG_SENSORS_LM63 is not set
-# CONFIG_SENSORS_LM70 is not set
-# CONFIG_SENSORS_LM73 is not set
-# CONFIG_SENSORS_LM75 is not set
-# CONFIG_SENSORS_LM77 is not set
-# CONFIG_SENSORS_LM78 is not set
-# CONFIG_SENSORS_LM80 is not set
-# CONFIG_SENSORS_LM83 is not set
-# CONFIG_SENSORS_LM85 is not set
-# CONFIG_SENSORS_LM87 is not set
-CONFIG_SENSORS_LM90=m
-# CONFIG_SENSORS_LM92 is not set
-# CONFIG_SENSORS_LM93 is not set
-# CONFIG_SENSORS_LM95234 is not set
-# CONFIG_SENSORS_LM95241 is not set
-# CONFIG_SENSORS_LM95245 is not set
-# CONFIG_SENSORS_PC87360 is not set
-# CONFIG_SENSORS_PC87427 is not set
-# CONFIG_SENSORS_NTC_THERMISTOR is not set
-# CONFIG_SENSORS_NCT6683 is not set
-# CONFIG_SENSORS_NCT6775 is not set
-# CONFIG_SENSORS_NCT7802 is not set
-# CONFIG_SENSORS_NCT7904 is not set
-# CONFIG_SENSORS_NPCM7XX is not set
-# CONFIG_SENSORS_NZXT_KRAKEN2 is not set
-# CONFIG_SENSORS_NZXT_SMART2 is not set
-# CONFIG_SENSORS_OCC_P8_I2C is not set
-# CONFIG_SENSORS_PCF8591 is not set
-# CONFIG_PMBUS is not set
-# CONFIG_SENSORS_PWM_FAN is not set
-# CONFIG_SENSORS_SBTSI is not set
-# CONFIG_SENSORS_SBRMI is not set
-# CONFIG_SENSORS_SHT15 is not set
-# CONFIG_SENSORS_SHT21 is not set
-# CONFIG_SENSORS_SHT3x is not set
-# CONFIG_SENSORS_SHT4x is not set
-# CONFIG_SENSORS_SHTC1 is not set
-# CONFIG_SENSORS_DME1737 is not set
-# CONFIG_SENSORS_EMC1403 is not set
-# CONFIG_SENSORS_EMC2103 is not set
-# CONFIG_SENSORS_EMC6W201 is not set
-# CONFIG_SENSORS_SMSC47M1 is not set
-# CONFIG_SENSORS_SMSC47M192 is not set
-# CONFIG_SENSORS_SMSC47B397 is not set
-# CONFIG_SENSORS_SCH5627 is not set
-# CONFIG_SENSORS_SCH5636 is not set
-# CONFIG_SENSORS_STTS751 is not set
-# CONFIG_SENSORS_SMM665 is not set
-# CONFIG_SENSORS_ADC128D818 is not set
-# CONFIG_SENSORS_ADS7828 is not set
-# CONFIG_SENSORS_ADS7871 is not set
-# CONFIG_SENSORS_AMC6821 is not set
-# CONFIG_SENSORS_INA209 is not set
-# CONFIG_SENSORS_INA2XX is not set
-# CONFIG_SENSORS_INA238 is not set
-# CONFIG_SENSORS_INA3221 is not set
-# CONFIG_SENSORS_TC74 is not set
-# CONFIG_SENSORS_THMC50 is not set
-# CONFIG_SENSORS_TMP102 is not set
-# CONFIG_SENSORS_TMP103 is not set
-# CONFIG_SENSORS_TMP108 is not set
-CONFIG_SENSORS_TMP401=m
-# CONFIG_SENSORS_TMP421 is not set
-# CONFIG_SENSORS_TMP513 is not set
-# CONFIG_SENSORS_VT1211 is not set
-# CONFIG_SENSORS_W83773G is not set
-# CONFIG_SENSORS_W83781D is not set
-# CONFIG_SENSORS_W83791D is not set
-# CONFIG_SENSORS_W83792D is not set
-# CONFIG_SENSORS_W83793 is not set
-# CONFIG_SENSORS_W83795 is not set
-# CONFIG_SENSORS_W83L785TS is not set
-# CONFIG_SENSORS_W83L786NG is not set
-# CONFIG_SENSORS_W83627HF is not set
-# CONFIG_SENSORS_W83627EHF is not set
-# CONFIG_SENSORS_XGENE is not set
-
-#
-# ACPI drivers
-#
-CONFIG_SENSORS_ACPI_POWER=m
-CONFIG_THERMAL=y
-CONFIG_THERMAL_NETLINK=y
-# CONFIG_THERMAL_STATISTICS is not set
-CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0
-CONFIG_THERMAL_OF=y
-CONFIG_THERMAL_WRITABLE_TRIPS=y
-CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y
-# CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE is not set
-# CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE is not set
-CONFIG_THERMAL_GOV_FAIR_SHARE=y
-CONFIG_THERMAL_GOV_STEP_WISE=y
-CONFIG_THERMAL_GOV_BANG_BANG=y
-CONFIG_THERMAL_GOV_USER_SPACE=y
-# CONFIG_THERMAL_GOV_POWER_ALLOCATOR is not set
-CONFIG_CPU_THERMAL=y
-CONFIG_CPU_FREQ_THERMAL=y
-# CONFIG_CPU_IDLE_THERMAL is not set
-CONFIG_DEVFREQ_THERMAL=y
-CONFIG_THERMAL_EMULATION=y
-# CONFIG_THERMAL_MMIO is not set
-CONFIG_MTK_THERMAL=y
-CONFIG_GENERIC_ADC_THERMAL=m
-CONFIG_WATCHDOG=y
-CONFIG_WATCHDOG_CORE=m
-# CONFIG_WATCHDOG_NOWAYOUT is not set
-CONFIG_WATCHDOG_HANDLE_BOOT_ENABLED=y
-CONFIG_WATCHDOG_OPEN_TIMEOUT=0
-# CONFIG_WATCHDOG_SYSFS is not set
-# CONFIG_WATCHDOG_HRTIMER_PRETIMEOUT is not set
-
-#
-# Watchdog Pretimeout Governors
-#
-# CONFIG_WATCHDOG_PRETIMEOUT_GOV is not set
-
-#
-# Watchdog Device Drivers
-#
-CONFIG_SOFT_WATCHDOG=m
-# CONFIG_GPIO_WATCHDOG is not set
-# CONFIG_WDAT_WDT is not set
-# CONFIG_XILINX_WATCHDOG is not set
-# CONFIG_ZIIRAVE_WATCHDOG is not set
-# CONFIG_ARM_SP805_WATCHDOG is not set
-# CONFIG_ARM_SBSA_WATCHDOG is not set
-# CONFIG_CADENCE_WATCHDOG is not set
-# CONFIG_DW_WATCHDOG is not set
-# CONFIG_MAX63XX_WATCHDOG is not set
-CONFIG_MEDIATEK_WATCHDOG=m
-# CONFIG_ARM_SMC_WATCHDOG is not set
-# CONFIG_MEN_A21_WDT is not set
-
-#
-# USB-based Watchdog Cards
-#
-# CONFIG_USBPCWATCHDOG is not set
-CONFIG_SSB_POSSIBLE=y
-CONFIG_SSB=m
-CONFIG_SSB_SDIOHOST_POSSIBLE=y
-CONFIG_SSB_SDIOHOST=y
-# CONFIG_SSB_DRIVER_GPIO is not set
-CONFIG_BCMA_POSSIBLE=y
-# CONFIG_BCMA is not set
-
-#
-# Multifunction device drivers
-#
-CONFIG_MFD_CORE=y
-# CONFIG_MFD_ACT8945A is not set
-# CONFIG_MFD_AS3711 is not set
-CONFIG_MFD_AS3722=m
-# CONFIG_PMIC_ADP5520 is not set
-# CONFIG_MFD_AAT2870_CORE is not set
-# CONFIG_MFD_ATMEL_FLEXCOM is not set
-# CONFIG_MFD_ATMEL_HLCDC is not set
-# CONFIG_MFD_BCM590XX is not set
-# CONFIG_MFD_BD9571MWV is not set
-# CONFIG_MFD_AXP20X_I2C is not set
-CONFIG_MFD_CROS_EC_DEV=y
-# CONFIG_MFD_MADERA is not set
-# CONFIG_PMIC_DA903X is not set
-# CONFIG_MFD_DA9052_SPI is not set
-# CONFIG_MFD_DA9052_I2C is not set
-# CONFIG_MFD_DA9055 is not set
-# CONFIG_MFD_DA9062 is not set
-# CONFIG_MFD_DA9063 is not set
-# CONFIG_MFD_DA9150 is not set
-# CONFIG_MFD_DLN2 is not set
-# CONFIG_MFD_GATEWORKS_GSC is not set
-# CONFIG_MFD_MC13XXX_SPI is not set
-# CONFIG_MFD_MC13XXX_I2C is not set
-# CONFIG_MFD_MP2629 is not set
-# CONFIG_MFD_HI6421_PMIC is not set
-# CONFIG_MFD_HI6421_SPMI is not set
-# CONFIG_HTC_PASIC3 is not set
-# CONFIG_HTC_I2CPLD is not set
-# CONFIG_MFD_IQS62X is not set
-# CONFIG_MFD_KEMPLD is not set
-# CONFIG_MFD_88PM800 is not set
-# CONFIG_MFD_88PM805 is not set
-# CONFIG_MFD_88PM860X is not set
-# CONFIG_MFD_MAX14577 is not set
-# CONFIG_MFD_MAX77620 is not set
-# CONFIG_MFD_MAX77650 is not set
-# CONFIG_MFD_MAX77686 is not set
-# CONFIG_MFD_MAX77693 is not set
-# CONFIG_MFD_MAX77843 is not set
-# CONFIG_MFD_MAX8907 is not set
-# CONFIG_MFD_MAX8925 is not set
-# CONFIG_MFD_MAX8997 is not set
-# CONFIG_MFD_MAX8998 is not set
-CONFIG_MFD_MT6360=m
-CONFIG_MFD_MT6397=y
-# CONFIG_MFD_MENF21BMC is not set
-# CONFIG_EZX_PCAP is not set
-# CONFIG_MFD_CPCAP is not set
-# CONFIG_MFD_VIPERBOARD is not set
-# CONFIG_MFD_NTXEC is not set
-# CONFIG_MFD_RETU is not set
-# CONFIG_MFD_PCF50633 is not set
-# CONFIG_MFD_RT4831 is not set
-# CONFIG_MFD_RT5033 is not set
-# CONFIG_MFD_RC5T583 is not set
-# CONFIG_MFD_RK808 is not set
-# CONFIG_MFD_RN5T618 is not set
-# CONFIG_MFD_SEC_CORE is not set
-# CONFIG_MFD_SI476X_CORE is not set
-# CONFIG_MFD_SM501 is not set
-# CONFIG_MFD_SKY81452 is not set
-# CONFIG_MFD_STMPE is not set
-CONFIG_MFD_SYSCON=y
-# CONFIG_MFD_TI_AM335X_TSCADC is not set
-# CONFIG_MFD_LP3943 is not set
-# CONFIG_MFD_LP8788 is not set
-# CONFIG_MFD_TI_LMU is not set
-CONFIG_MFD_PALMAS=y
-# CONFIG_TPS6105X is not set
-# CONFIG_TPS65010 is not set
-# CONFIG_TPS6507X is not set
-# CONFIG_MFD_TPS65086 is not set
-CONFIG_MFD_TPS65090=y
-# CONFIG_MFD_TPS65217 is not set
-# CONFIG_MFD_TI_LP873X is not set
-# CONFIG_MFD_TI_LP87565 is not set
-# CONFIG_MFD_TPS65218 is not set
-CONFIG_MFD_TPS6586X=y
-# CONFIG_MFD_TPS65910 is not set
-# CONFIG_MFD_TPS65912_I2C is not set
-# CONFIG_MFD_TPS65912_SPI is not set
-# CONFIG_TWL4030_CORE is not set
-# CONFIG_TWL6040_CORE is not set
-# CONFIG_MFD_WL1273_CORE is not set
-# CONFIG_MFD_LM3533 is not set
-# CONFIG_MFD_TC3589X is not set
-# CONFIG_MFD_TQMX86 is not set
-# CONFIG_MFD_LOCHNAGAR is not set
-# CONFIG_MFD_ARIZONA_I2C is not set
-# CONFIG_MFD_ARIZONA_SPI is not set
-# CONFIG_MFD_WM8400 is not set
-# CONFIG_MFD_WM831X_I2C is not set
-# CONFIG_MFD_WM831X_SPI is not set
-# CONFIG_MFD_WM8350_I2C is not set
-# CONFIG_MFD_WM8994 is not set
-# CONFIG_MFD_ROHM_BD718XX is not set
-# CONFIG_MFD_ROHM_BD71828 is not set
-# CONFIG_MFD_ROHM_BD957XMUF is not set
-# CONFIG_MFD_STPMIC1 is not set
-# CONFIG_MFD_STMFX is not set
-# CONFIG_MFD_ATC260X_I2C is not set
-# CONFIG_MFD_QCOM_PM8008 is not set
-# CONFIG_MFD_INTEL_M10_BMC is not set
-# CONFIG_MFD_RSMU_I2C is not set
-# CONFIG_MFD_RSMU_SPI is not set
-# end of Multifunction device drivers
-
-CONFIG_REGULATOR=y
-# CONFIG_REGULATOR_DEBUG is not set
-CONFIG_REGULATOR_FIXED_VOLTAGE=y
-# CONFIG_REGULATOR_VIRTUAL_CONSUMER is not set
-CONFIG_REGULATOR_USERSPACE_CONSUMER=m
-# CONFIG_REGULATOR_88PG86X is not set
-# CONFIG_REGULATOR_ACT8865 is not set
-# CONFIG_REGULATOR_AD5398 is not set
-CONFIG_REGULATOR_ARM_SCMI=m
-CONFIG_REGULATOR_AS3722=m
-CONFIG_REGULATOR_CROS_EC=m
-# CONFIG_REGULATOR_DA9121 is not set
-# CONFIG_REGULATOR_DA9210 is not set
-CONFIG_REGULATOR_DA9211=y
-# CONFIG_REGULATOR_FAN53555 is not set
-# CONFIG_REGULATOR_FAN53880 is not set
-CONFIG_REGULATOR_GPIO=y
-# CONFIG_REGULATOR_ISL9305 is not set
-# CONFIG_REGULATOR_ISL6271A is not set
-# CONFIG_REGULATOR_LP3971 is not set
-# CONFIG_REGULATOR_LP3972 is not set
-# CONFIG_REGULATOR_LP872X is not set
-# CONFIG_REGULATOR_LP8755 is not set
-# CONFIG_REGULATOR_LTC3589 is not set
-# CONFIG_REGULATOR_LTC3676 is not set
-# CONFIG_REGULATOR_MAX1586 is not set
-# CONFIG_REGULATOR_MAX8649 is not set
-# CONFIG_REGULATOR_MAX8660 is not set
-# CONFIG_REGULATOR_MAX8893 is not set
-# CONFIG_REGULATOR_MAX8952 is not set
-CONFIG_REGULATOR_MAX8973=m
-# CONFIG_REGULATOR_MAX20086 is not set
-# CONFIG_REGULATOR_MAX77826 is not set
-# CONFIG_REGULATOR_MCP16502 is not set
-# CONFIG_REGULATOR_MP5416 is not set
-# CONFIG_REGULATOR_MP8859 is not set
-# CONFIG_REGULATOR_MP886X is not set
-# CONFIG_REGULATOR_MPQ7920 is not set
-CONFIG_REGULATOR_MT6311=y
-# CONFIG_REGULATOR_MT6315 is not set
-CONFIG_REGULATOR_MT6323=y
-CONFIG_REGULATOR_MT6358=y
-CONFIG_REGULATOR_MT6359=m
-CONFIG_REGULATOR_MT6360=m
-CONFIG_REGULATOR_MT6380=y
-CONFIG_REGULATOR_MT6397=y
-CONFIG_REGULATOR_PALMAS=y
-# CONFIG_REGULATOR_PCA9450 is not set
-# CONFIG_REGULATOR_PF8X00 is not set
-# CONFIG_REGULATOR_PFUZE100 is not set
-# CONFIG_REGULATOR_PV88060 is not set
-# CONFIG_REGULATOR_PV88080 is not set
-# CONFIG_REGULATOR_PV88090 is not set
-CONFIG_REGULATOR_PWM=y
-# CONFIG_REGULATOR_QCOM_SPMI is not set
-# CONFIG_REGULATOR_QCOM_USB_VBUS is not set
-# CONFIG_REGULATOR_RASPBERRYPI_TOUCHSCREEN_ATTINY is not set
-# CONFIG_REGULATOR_RT4801 is not set
-# CONFIG_REGULATOR_RT6160 is not set
-# CONFIG_REGULATOR_RT6245 is not set
-# CONFIG_REGULATOR_RTQ2134 is not set
-# CONFIG_REGULATOR_RTMV20 is not set
-# CONFIG_REGULATOR_RTQ6752 is not set
-# CONFIG_REGULATOR_SLG51000 is not set
-# CONFIG_REGULATOR_SY8106A is not set
-# CONFIG_REGULATOR_SY8824X is not set
-# CONFIG_REGULATOR_SY8827N is not set
-CONFIG_REGULATOR_TPS51632=m
-CONFIG_REGULATOR_TPS62360=m
-# CONFIG_REGULATOR_TPS65023 is not set
-# CONFIG_REGULATOR_TPS6507X is not set
-CONFIG_REGULATOR_TPS65090=m
-# CONFIG_REGULATOR_TPS65132 is not set
-# CONFIG_REGULATOR_TPS6524X is not set
-# CONFIG_REGULATOR_TPS6586X is not set
-CONFIG_REGULATOR_VCTRL=m
-# CONFIG_REGULATOR_QCOM_LABIBB is not set
-# CONFIG_RC_CORE is not set
-CONFIG_CEC_CORE=m
-CONFIG_CEC_NOTIFIER=y
-
-#
-# CEC support
-#
-CONFIG_MEDIA_CEC_SUPPORT=y
-# CONFIG_CEC_CH7322 is not set
-CONFIG_CEC_CROS_EC=m
-# CONFIG_CEC_GPIO is not set
-# CONFIG_USB_PULSE8_CEC is not set
-# CONFIG_USB_RAINSHADOW_CEC is not set
-# end of CEC support
-
-CONFIG_MEDIA_SUPPORT=m
-CONFIG_MEDIA_SUPPORT_FILTER=y
-CONFIG_MEDIA_SUBDRV_AUTOSELECT=y
-
-#
-# Media device types
-#
-CONFIG_MEDIA_CAMERA_SUPPORT=y
-# CONFIG_MEDIA_ANALOG_TV_SUPPORT is not set
-# CONFIG_MEDIA_DIGITAL_TV_SUPPORT is not set
-# CONFIG_MEDIA_RADIO_SUPPORT is not set
-CONFIG_MEDIA_SDR_SUPPORT=y
-CONFIG_MEDIA_PLATFORM_SUPPORT=y
-# CONFIG_MEDIA_TEST_SUPPORT is not set
-# end of Media device types
-
-CONFIG_VIDEO_DEV=m
-CONFIG_MEDIA_CONTROLLER=y
-
-#
-# Video4Linux options
-#
-CONFIG_VIDEO_V4L2=m
-CONFIG_VIDEO_V4L2_I2C=y
-CONFIG_VIDEO_V4L2_SUBDEV_API=y
-# CONFIG_VIDEO_ADV_DEBUG is not set
-# CONFIG_VIDEO_FIXED_MINOR_RANGES is not set
-CONFIG_VIDEO_TUNER=m
-CONFIG_V4L2_H264=m
-CONFIG_V4L2_MEM2MEM_DEV=m
-# CONFIG_V4L2_FLASH_LED_CLASS is not set
-CONFIG_V4L2_FWNODE=m
-CONFIG_V4L2_ASYNC=m
-# end of Video4Linux options
-
-#
-# Media controller options
-#
-CONFIG_MEDIA_CONTROLLER_REQUEST_API=y
-# end of Media controller options
-
-#
-# Media drivers
-#
-
-#
-# Drivers filtered as selected at 'Filter media drivers'
-#
-CONFIG_MEDIA_USB_SUPPORT=y
-
-#
-# Webcam devices
-#
-CONFIG_USB_VIDEO_CLASS=m
-CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y
-# CONFIG_USB_GSPCA is not set
-# CONFIG_USB_PWC is not set
-# CONFIG_VIDEO_CPIA2 is not set
-# CONFIG_USB_ZR364XX is not set
-# CONFIG_USB_STKWEBCAM is not set
-# CONFIG_USB_S2255 is not set
-# CONFIG_VIDEO_USBTV is not set
-
-#
-# Webcam, TV (analog/digital) USB devices
-#
-CONFIG_VIDEO_EM28XX=m
-CONFIG_VIDEO_EM28XX_V4L2=m
-CONFIG_VIDEO_EM28XX_ALSA=m
-
-#
-# Software defined radio USB devices
-#
-CONFIG_USB_AIRSPY=m
-CONFIG_USB_HACKRF=m
-CONFIG_USB_MSI2500=m
-CONFIG_VIDEO_TVEEPROM=m
-CONFIG_VIDEOBUF2_CORE=m
-CONFIG_VIDEOBUF2_V4L2=m
-CONFIG_VIDEOBUF2_MEMOPS=m
-CONFIG_VIDEOBUF2_DMA_CONTIG=m
-CONFIG_VIDEOBUF2_VMALLOC=m
-# CONFIG_V4L_PLATFORM_DRIVERS is not set
-CONFIG_V4L_MEM2MEM_DRIVERS=y
-CONFIG_VIDEO_MEDIATEK_JPEG=m
-CONFIG_VIDEO_MEDIATEK_VPU=m
-CONFIG_VIDEO_MEDIATEK_MDP=m
-CONFIG_VIDEO_MEDIATEK_VCODEC=m
-CONFIG_VIDEO_MEDIATEK_VCODEC_VPU=y
-CONFIG_VIDEO_MEM2MEM_DEINTERLACE=m
-CONFIG_SDR_PLATFORM_DRIVERS=y
-# end of Media drivers
-
-CONFIG_MEDIA_HIDE_ANCILLARY_SUBDRV=y
-
-#
-# Media ancillary drivers
-#
-
-#
-# audio, video and radio I2C drivers auto-selected by 'Autoselect ancillary drivers'
-#
-CONFIG_VIDEO_MSP3400=m
-CONFIG_VIDEO_SAA711X=m
-CONFIG_VIDEO_TVP5150=m
-
-#
-# Video and audio decoders
-#
-
-#
-# Camera sensor devices
-#
-# CONFIG_VIDEO_HI556 is not set
-# CONFIG_VIDEO_HI846 is not set
-# CONFIG_VIDEO_IMX208 is not set
-# CONFIG_VIDEO_IMX214 is not set
-# CONFIG_VIDEO_IMX219 is not set
-# CONFIG_VIDEO_IMX258 is not set
-# CONFIG_VIDEO_IMX274 is not set
-# CONFIG_VIDEO_IMX290 is not set
-# CONFIG_VIDEO_IMX319 is not set
-# CONFIG_VIDEO_IMX334 is not set
-# CONFIG_VIDEO_IMX335 is not set
-# CONFIG_VIDEO_IMX355 is not set
-# CONFIG_VIDEO_IMX412 is not set
-# CONFIG_VIDEO_OV02A10 is not set
-CONFIG_VIDEO_OV2640=m
-# CONFIG_VIDEO_OV2659 is not set
-# CONFIG_VIDEO_OV2680 is not set
-# CONFIG_VIDEO_OV2685 is not set
-# CONFIG_VIDEO_OV2740 is not set
-# CONFIG_VIDEO_OV5640 is not set
-# CONFIG_VIDEO_OV5645 is not set
-# CONFIG_VIDEO_OV5647 is not set
-# CONFIG_VIDEO_OV5648 is not set
-# CONFIG_VIDEO_OV6650 is not set
-# CONFIG_VIDEO_OV5670 is not set
-# CONFIG_VIDEO_OV5675 is not set
-# CONFIG_VIDEO_OV5693 is not set
-# CONFIG_VIDEO_OV5695 is not set
-# CONFIG_VIDEO_OV7251 is not set
-# CONFIG_VIDEO_OV772X is not set
-# CONFIG_VIDEO_OV7640 is not set
-# CONFIG_VIDEO_OV7670 is not set
-# CONFIG_VIDEO_OV7740 is not set
-# CONFIG_VIDEO_OV8856 is not set
-# CONFIG_VIDEO_OV8865 is not set
-# CONFIG_VIDEO_OV9282 is not set
-# CONFIG_VIDEO_OV9640 is not set
-# CONFIG_VIDEO_OV9650 is not set
-# CONFIG_VIDEO_OV9734 is not set
-# CONFIG_VIDEO_OV13858 is not set
-# CONFIG_VIDEO_OV13B10 is not set
-# CONFIG_VIDEO_VS6624 is not set
-# CONFIG_VIDEO_MT9M001 is not set
-# CONFIG_VIDEO_MT9M032 is not set
-# CONFIG_VIDEO_MT9M111 is not set
-# CONFIG_VIDEO_MT9P031 is not set
-# CONFIG_VIDEO_MT9T001 is not set
-# CONFIG_VIDEO_MT9T112 is not set
-CONFIG_VIDEO_MT9V011=m
-# CONFIG_VIDEO_MT9V032 is not set
-# CONFIG_VIDEO_MT9V111 is not set
-# CONFIG_VIDEO_SR030PC30 is not set
-# CONFIG_VIDEO_NOON010PC30 is not set
-# CONFIG_VIDEO_M5MOLS is not set
-# CONFIG_VIDEO_RDACM20 is not set
-# CONFIG_VIDEO_RDACM21 is not set
-# CONFIG_VIDEO_RJ54N1 is not set
-# CONFIG_VIDEO_S5K6AA is not set
-# CONFIG_VIDEO_S5K6A3 is not set
-# CONFIG_VIDEO_S5K4ECGX is not set
-# CONFIG_VIDEO_S5K5BAF is not set
-# CONFIG_VIDEO_CCS is not set
-# CONFIG_VIDEO_ET8EK8 is not set
-# CONFIG_VIDEO_S5C73M3 is not set
-# end of Camera sensor devices
-
-#
-# Lens drivers
-#
-# CONFIG_VIDEO_AD5820 is not set
-# CONFIG_VIDEO_AK7375 is not set
-# CONFIG_VIDEO_DW9714 is not set
-# CONFIG_VIDEO_DW9768 is not set
-# CONFIG_VIDEO_DW9807_VCM is not set
-# end of Lens drivers
-
-#
-# Flash devices
-#
-# CONFIG_VIDEO_ADP1653 is not set
-# CONFIG_VIDEO_LM3560 is not set
-# CONFIG_VIDEO_LM3646 is not set
-# end of Flash devices
-
-#
-# SPI I2C drivers auto-selected by 'Autoselect ancillary drivers'
-#
-
-#
-# Media SPI Adapters
-#
-# end of Media SPI Adapters
-
-CONFIG_MEDIA_TUNER=m
-
-#
-# Tuner drivers auto-selected by 'Autoselect ancillary drivers'
-#
-CONFIG_MEDIA_TUNER_SIMPLE=m
-CONFIG_MEDIA_TUNER_TDA8290=m
-CONFIG_MEDIA_TUNER_TDA827X=m
-CONFIG_MEDIA_TUNER_TDA18271=m
-CONFIG_MEDIA_TUNER_TDA9887=m
-CONFIG_MEDIA_TUNER_MSI001=m
-CONFIG_MEDIA_TUNER_MT20XX=m
-CONFIG_MEDIA_TUNER_XC2028=m
-CONFIG_MEDIA_TUNER_XC5000=m
-CONFIG_MEDIA_TUNER_XC4000=m
-CONFIG_MEDIA_TUNER_MC44S803=m
-# end of Media ancillary drivers
-
-#
-# Graphics support
-#
-CONFIG_DRM=y
-CONFIG_DRM_MIPI_DSI=y
-CONFIG_DRM_DP_AUX_BUS=y
-CONFIG_DRM_DP_AUX_CHARDEV=y
-# CONFIG_DRM_DEBUG_MM is not set
-CONFIG_DRM_KMS_HELPER=y
-CONFIG_DRM_FBDEV_EMULATION=y
-CONFIG_DRM_FBDEV_OVERALLOC=100
-# CONFIG_DRM_LOAD_EDID_FIRMWARE is not set
-# CONFIG_DRM_DP_CEC is not set
-CONFIG_DRM_GEM_CMA_HELPER=y
-CONFIG_DRM_GEM_SHMEM_HELPER=y
-
-#
-# I2C encoder or helper chips
-#
-# CONFIG_DRM_I2C_CH7006 is not set
-# CONFIG_DRM_I2C_SIL164 is not set
-# CONFIG_DRM_I2C_NXP_TDA998X is not set
-# CONFIG_DRM_I2C_NXP_TDA9950 is not set
-# end of I2C encoder or helper chips
-
-#
-# ARM devices
-#
-# CONFIG_DRM_HDLCD is not set
-# CONFIG_DRM_MALI_DISPLAY is not set
-# CONFIG_DRM_KOMEDA is not set
-# end of ARM devices
-
-CONFIG_DRM_VGEM=m
-# CONFIG_DRM_VKMS is not set
-CONFIG_DRM_UDL=m
-# CONFIG_DRM_RCAR_DW_HDMI is not set
-# CONFIG_DRM_RCAR_USE_LVDS is not set
-# CONFIG_DRM_RCAR_MIPI_DSI is not set
-# CONFIG_DRM_VIRTIO_GPU is not set
-CONFIG_DRM_PANEL=y
-
-#
-# Display Panels
-#
-# CONFIG_DRM_PANEL_ABT_Y030XX067A is not set
-# CONFIG_DRM_PANEL_ARM_VERSATILE is not set
-# CONFIG_DRM_PANEL_ASUS_Z00T_TM5P5_NT35596 is not set
-# CONFIG_DRM_PANEL_BOE_BF060Y8M_AJ0 is not set
-# CONFIG_DRM_PANEL_BOE_HIMAX8279D is not set
-# CONFIG_DRM_PANEL_BOE_TV101WUM_NL6 is not set
-# CONFIG_DRM_PANEL_DSI_CM is not set
-# CONFIG_DRM_PANEL_LVDS is not set
-CONFIG_DRM_PANEL_SIMPLE=m
-CONFIG_DRM_PANEL_EDP=y
-# CONFIG_DRM_PANEL_ELIDA_KD35T133 is not set
-# CONFIG_DRM_PANEL_FEIXIN_K101_IM2BA02 is not set
-# CONFIG_DRM_PANEL_FEIYANG_FY07024DI26A30D is not set
-# CONFIG_DRM_PANEL_ILITEK_IL9322 is not set
-# CONFIG_DRM_PANEL_ILITEK_ILI9341 is not set
-# CONFIG_DRM_PANEL_ILITEK_ILI9881C is not set
-# CONFIG_DRM_PANEL_INNOLUX_EJ030NA is not set
-# CONFIG_DRM_PANEL_INNOLUX_P079ZCA is not set
-# CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set
-# CONFIG_DRM_PANEL_JDI_R63452 is not set
-# CONFIG_DRM_PANEL_KHADAS_TS050 is not set
-# CONFIG_DRM_PANEL_KINGDISPLAY_KD097D04 is not set
-# CONFIG_DRM_PANEL_LEADTEK_LTK050H3146W is not set
-# CONFIG_DRM_PANEL_LEADTEK_LTK500HD1829 is not set
-# CONFIG_DRM_PANEL_SAMSUNG_LD9040 is not set
-# CONFIG_DRM_PANEL_LG_LB035Q02 is not set
-# CONFIG_DRM_PANEL_LG_LG4573 is not set
-# CONFIG_DRM_PANEL_NEC_NL8048HL11 is not set
-# CONFIG_DRM_PANEL_NOVATEK_NT35510 is not set
-# CONFIG_DRM_PANEL_NOVATEK_NT35950 is not set
-# CONFIG_DRM_PANEL_NOVATEK_NT36672A is not set
-# CONFIG_DRM_PANEL_NOVATEK_NT39016 is not set
-# CONFIG_DRM_PANEL_MANTIX_MLAF057WE51 is not set
-# CONFIG_DRM_PANEL_OLIMEX_LCD_OLINUXINO is not set
-# CONFIG_DRM_PANEL_ORISETECH_OTM8009A is not set
-# CONFIG_DRM_PANEL_OSD_OSD101T2587_53TS is not set
-# CONFIG_DRM_PANEL_PANASONIC_VVX10F034N00 is not set
-# CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN is not set
-# CONFIG_DRM_PANEL_RAYDIUM_RM67191 is not set
-# CONFIG_DRM_PANEL_RAYDIUM_RM68200 is not set
-# CONFIG_DRM_PANEL_RONBO_RB070D30 is not set
-# CONFIG_DRM_PANEL_SAMSUNG_ATNA33XC20 is not set
-# CONFIG_DRM_PANEL_SAMSUNG_DB7430 is not set
-# CONFIG_DRM_PANEL_SAMSUNG_S6D16D0 is not set
-# CONFIG_DRM_PANEL_SAMSUNG_S6D27A1 is not set
-# CONFIG_DRM_PANEL_SAMSUNG_S6E3HA2 is not set
-# CONFIG_DRM_PANEL_SAMSUNG_S6E63J0X03 is not set
-# CONFIG_DRM_PANEL_SAMSUNG_S6E63M0 is not set
-# CONFIG_DRM_PANEL_SAMSUNG_S6E88A0_AMS452EF01 is not set
-# CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0 is not set
-# CONFIG_DRM_PANEL_SAMSUNG_SOFEF00 is not set
-# CONFIG_DRM_PANEL_SEIKO_43WVF1G is not set
-# CONFIG_DRM_PANEL_SHARP_LQ101R1SX01 is not set
-# CONFIG_DRM_PANEL_SHARP_LS037V7DW01 is not set
-# CONFIG_DRM_PANEL_SHARP_LS043T1LE01 is not set
-# CONFIG_DRM_PANEL_SHARP_LS060T1SX01 is not set
-# CONFIG_DRM_PANEL_SITRONIX_ST7701 is not set
-# CONFIG_DRM_PANEL_SITRONIX_ST7703 is not set
-# CONFIG_DRM_PANEL_SITRONIX_ST7789V is not set
-# CONFIG_DRM_PANEL_SONY_ACX424AKP is not set
-# CONFIG_DRM_PANEL_SONY_ACX565AKM is not set
-# CONFIG_DRM_PANEL_SONY_TULIP_TRULY_NT35521 is not set
-# CONFIG_DRM_PANEL_TDO_TL070WSH30 is not set
-# CONFIG_DRM_PANEL_TPO_TD028TTEC1 is not set
-# CONFIG_DRM_PANEL_TPO_TD043MTEA1 is not set
-# CONFIG_DRM_PANEL_TPO_TPG110 is not set
-# CONFIG_DRM_PANEL_TRULY_NT35597_WQXGA is not set
-# CONFIG_DRM_PANEL_VISIONOX_RM69299 is not set
-# CONFIG_DRM_PANEL_WIDECHIPS_WS2401 is not set
-# CONFIG_DRM_PANEL_XINPENG_XPP055C272 is not set
-# end of Display Panels
-
-CONFIG_DRM_BRIDGE=y
-CONFIG_DRM_PANEL_BRIDGE=y
-
-#
-# Display Interface Bridges
-#
-# CONFIG_DRM_CDNS_DSI is not set
-# CONFIG_DRM_CHIPONE_ICN6211 is not set
-# CONFIG_DRM_CHRONTEL_CH7033 is not set
-CONFIG_DRM_CROS_EC_ANX7688=m
-CONFIG_DRM_DISPLAY_CONNECTOR=y
-# CONFIG_DRM_LONTIUM_LT8912B is not set
-# CONFIG_DRM_LONTIUM_LT9611 is not set
-# CONFIG_DRM_LONTIUM_LT9611UXC is not set
-# CONFIG_DRM_ITE_IT66121 is not set
-# CONFIG_DRM_LVDS_CODEC is not set
-# CONFIG_DRM_MEGACHIPS_STDPXXXX_GE_B850V3_FW is not set
-# CONFIG_DRM_NWL_MIPI_DSI is not set
-# CONFIG_DRM_NXP_PTN3460 is not set
-# CONFIG_DRM_PARADE_PS8622 is not set
-CONFIG_DRM_PARADE_PS8640=y
-# CONFIG_DRM_SIL_SII8620 is not set
-# CONFIG_DRM_SII902X is not set
-# CONFIG_DRM_SII9234 is not set
-# CONFIG_DRM_SIMPLE_BRIDGE is not set
-# CONFIG_DRM_THINE_THC63LVD1024 is not set
-# CONFIG_DRM_TOSHIBA_TC358762 is not set
-# CONFIG_DRM_TOSHIBA_TC358764 is not set
-# CONFIG_DRM_TOSHIBA_TC358767 is not set
-# CONFIG_DRM_TOSHIBA_TC358768 is not set
-# CONFIG_DRM_TOSHIBA_TC358775 is not set
-# CONFIG_DRM_TI_TFP410 is not set
-# CONFIG_DRM_TI_SN65DSI83 is not set
-# CONFIG_DRM_TI_SN65DSI86 is not set
-# CONFIG_DRM_TI_TPD12S015 is not set
-# CONFIG_DRM_ANALOGIX_ANX6345 is not set
-# CONFIG_DRM_ANALOGIX_ANX78XX is not set
-# CONFIG_DRM_ANALOGIX_ANX7625 is not set
-# CONFIG_DRM_I2C_ADV7511 is not set
-# CONFIG_DRM_CDNS_MHDP8546 is not set
-# end of Display Interface Bridges
-
-# CONFIG_DRM_ETNAVIV is not set
-# CONFIG_DRM_HISI_KIRIN is not set
-CONFIG_DRM_MEDIATEK=y
-CONFIG_DRM_MEDIATEK_HDMI=y
-# CONFIG_DRM_MXSFB is not set
-# CONFIG_DRM_ARCPGU is not set
-CONFIG_DRM_GM12U320=m
-CONFIG_DRM_SIMPLEDRM=y
-# CONFIG_TINYDRM_HX8357D is not set
-# CONFIG_TINYDRM_ILI9163 is not set
-# CONFIG_TINYDRM_ILI9225 is not set
-# CONFIG_TINYDRM_ILI9341 is not set
-# CONFIG_TINYDRM_ILI9486 is not set
-# CONFIG_TINYDRM_MI0283QT is not set
-# CONFIG_TINYDRM_REPAPER is not set
-# CONFIG_TINYDRM_ST7586 is not set
-# CONFIG_TINYDRM_ST7735R is not set
-CONFIG_DRM_PL111=m
-# CONFIG_DRM_LIMA is not set
-# CONFIG_DRM_PANFROST is not set
-# CONFIG_DRM_TIDSS is not set
-# CONFIG_DRM_GUD is not set
-# CONFIG_DRM_LEGACY is not set
-CONFIG_DRM_PANEL_ORIENTATION_QUIRKS=y
-CONFIG_DRM_NOMODESET=y
-
-#
-# Frame buffer Devices
-#
-CONFIG_FB_CMDLINE=y
-CONFIG_FB_NOTIFY=y
-CONFIG_FB=y
-# CONFIG_FIRMWARE_EDID is not set
-CONFIG_FB_CFB_FILLRECT=y
-CONFIG_FB_CFB_COPYAREA=y
-CONFIG_FB_CFB_IMAGEBLIT=y
-CONFIG_FB_SYS_FILLRECT=y
-CONFIG_FB_SYS_COPYAREA=y
-CONFIG_FB_SYS_IMAGEBLIT=y
-# CONFIG_FB_FOREIGN_ENDIAN is not set
-CONFIG_FB_SYS_FOPS=y
-CONFIG_FB_DEFERRED_IO=y
-CONFIG_FB_MODE_HELPERS=y
-# CONFIG_FB_TILEBLITTING is not set
-
-#
-# Frame buffer hardware drivers
-#
-# CONFIG_FB_ARMCLCD is not set
-# CONFIG_FB_UVESA is not set
-# CONFIG_FB_EFI is not set
-# CONFIG_FB_OPENCORES is not set
-# CONFIG_FB_S1D13XXX is not set
-# CONFIG_FB_SMSCUFX is not set
-CONFIG_FB_UDL=m
-# CONFIG_FB_IBM_GXT4500 is not set
-# CONFIG_FB_VIRTUAL is not set
-# CONFIG_FB_METRONOME is not set
-# CONFIG_FB_SSD1307 is not set
-# end of Frame buffer Devices
-
-#
-# Backlight & LCD device support
-#
-CONFIG_LCD_CLASS_DEVICE=y
-# CONFIG_LCD_L4F00242T03 is not set
-# CONFIG_LCD_LMS283GF05 is not set
-# CONFIG_LCD_LTV350QV is not set
-# CONFIG_LCD_ILI922X is not set
-# CONFIG_LCD_ILI9320 is not set
-# CONFIG_LCD_TDO24M is not set
-# CONFIG_LCD_VGG2432A4 is not set
-CONFIG_LCD_PLATFORM=y
-# CONFIG_LCD_AMS369FG06 is not set
-# CONFIG_LCD_LMS501KF03 is not set
-# CONFIG_LCD_HX8357 is not set
-# CONFIG_LCD_OTM3225A is not set
-CONFIG_BACKLIGHT_CLASS_DEVICE=y
-# CONFIG_BACKLIGHT_KTD253 is not set
-CONFIG_BACKLIGHT_PWM=y
-# CONFIG_BACKLIGHT_QCOM_WLED is not set
-# CONFIG_BACKLIGHT_ADP8860 is not set
-# CONFIG_BACKLIGHT_ADP8870 is not set
-# CONFIG_BACKLIGHT_LM3630A is not set
-# CONFIG_BACKLIGHT_LM3639 is not set
-CONFIG_BACKLIGHT_LP855X=y
-# CONFIG_BACKLIGHT_GPIO is not set
-# CONFIG_BACKLIGHT_LV5207LP is not set
-# CONFIG_BACKLIGHT_BD6107 is not set
-# CONFIG_BACKLIGHT_ARCXCNN is not set
-# CONFIG_BACKLIGHT_LED is not set
-# end of Backlight & LCD device support
-
-CONFIG_VIDEOMODE_HELPERS=y
-CONFIG_HDMI=y
-
-#
-# Console display driver support
-#
-CONFIG_DUMMY_CONSOLE=y
-CONFIG_DUMMY_CONSOLE_COLUMNS=80
-CONFIG_DUMMY_CONSOLE_ROWS=25
-CONFIG_FRAMEBUFFER_CONSOLE=y
-# CONFIG_FRAMEBUFFER_CONSOLE_LEGACY_ACCELERATION is not set
-CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
-CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y
-# CONFIG_FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER is not set
-# end of Console display driver support
-
-CONFIG_LOGO=y
-# CONFIG_LOGO_LINUX_MONO is not set
-# CONFIG_LOGO_LINUX_VGA16 is not set
-CONFIG_LOGO_LINUX_CLUT224=y
-# end of Graphics support
-
-CONFIG_SOUND=m
-CONFIG_SND=m
-CONFIG_SND_TIMER=m
-CONFIG_SND_PCM=m
-CONFIG_SND_PCM_ELD=y
-CONFIG_SND_PCM_IEC958=y
-CONFIG_SND_HWDEP=m
-CONFIG_SND_SEQ_DEVICE=m
-CONFIG_SND_RAWMIDI=m
-CONFIG_SND_JACK=y
-CONFIG_SND_JACK_INPUT_DEV=y
-# CONFIG_SND_OSSEMUL is not set
-CONFIG_SND_PCM_TIMER=y
-CONFIG_SND_HRTIMER=m
-CONFIG_SND_DYNAMIC_MINORS=y
-CONFIG_SND_MAX_CARDS=32
-# CONFIG_SND_SUPPORT_OLD_API is not set
-CONFIG_SND_PROC_FS=y
-CONFIG_SND_VERBOSE_PROCFS=y
-# CONFIG_SND_VERBOSE_PRINTK is not set
-# CONFIG_SND_DEBUG is not set
-CONFIG_SND_VMASTER=y
-CONFIG_SND_SEQUENCER=m
-# CONFIG_SND_SEQ_DUMMY is not set
-CONFIG_SND_SEQ_HRTIMER_DEFAULT=y
-CONFIG_SND_SEQ_MIDI_EVENT=m
-CONFIG_SND_SEQ_MIDI=m
-CONFIG_SND_DRIVERS=y
-# CONFIG_SND_DUMMY is not set
-CONFIG_SND_ALOOP=m
-# CONFIG_SND_VIRMIDI is not set
-# CONFIG_SND_MTPAV is not set
-# CONFIG_SND_SERIAL_U16550 is not set
-# CONFIG_SND_MPU401 is not set
-
-#
-# HD-Audio
-#
-# end of HD-Audio
-
-CONFIG_SND_HDA_PREALLOC_SIZE=64
-# CONFIG_SND_SPI is not set
-CONFIG_SND_USB=y
-CONFIG_SND_USB_AUDIO=m
-CONFIG_SND_USB_AUDIO_USE_MEDIA_CONTROLLER=y
-CONFIG_SND_USB_UA101=m
-CONFIG_SND_USB_CAIAQ=m
-CONFIG_SND_USB_CAIAQ_INPUT=y
-CONFIG_SND_USB_6FIRE=m
-CONFIG_SND_USB_HIFACE=m
-CONFIG_SND_BCD2000=m
-CONFIG_SND_USB_LINE6=m
-CONFIG_SND_USB_POD=m
-CONFIG_SND_USB_PODHD=m
-CONFIG_SND_USB_TONEPORT=m
-CONFIG_SND_USB_VARIAX=m
-CONFIG_SND_SOC=m
-# CONFIG_SND_SOC_ADI is not set
-# CONFIG_SND_SOC_AMD_ACP is not set
-# CONFIG_SND_AMD_ACP_CONFIG is not set
-# CONFIG_SND_ATMEL_SOC is not set
-# CONFIG_SND_BCM63XX_I2S_WHISTLER is not set
-# CONFIG_SND_DESIGNWARE_I2S is not set
-
-#
-# SoC Audio for Freescale CPUs
-#
-
-#
-# Common SoC Audio options for Freescale CPUs:
-#
-# CONFIG_SND_SOC_FSL_ASRC is not set
-# CONFIG_SND_SOC_FSL_SAI is not set
-# CONFIG_SND_SOC_FSL_AUDMIX is not set
-# CONFIG_SND_SOC_FSL_SSI is not set
-# CONFIG_SND_SOC_FSL_SPDIF is not set
-# CONFIG_SND_SOC_FSL_ESAI is not set
-# CONFIG_SND_SOC_FSL_MICFIL is not set
-# CONFIG_SND_SOC_FSL_XCVR is not set
-# CONFIG_SND_SOC_IMX_AUDMUX is not set
-# end of SoC Audio for Freescale CPUs
-
-# CONFIG_SND_I2S_HI6210_I2S is not set
-# CONFIG_SND_SOC_IMG is not set
-CONFIG_SND_SOC_MEDIATEK=m
-# CONFIG_SND_SOC_MT2701 is not set
-# CONFIG_SND_SOC_MT6797 is not set
-CONFIG_SND_SOC_MT8173=m
-# CONFIG_SND_SOC_MT8173_MAX98090 is not set
-CONFIG_SND_SOC_MT8173_RT5650=m
-CONFIG_SND_SOC_MT8173_RT5650_RT5514=m
-CONFIG_SND_SOC_MT8173_RT5650_RT5676=m
-CONFIG_SND_SOC_MT8183=m
-CONFIG_SND_SOC_MT8183_MT6358_TS3A227E_MAX98357A=m
-CONFIG_SND_SOC_MT8183_DA7219_MAX98357A=m
-# CONFIG_SND_SOC_MTK_BTCVSD is not set
-# CONFIG_SND_SOC_MT8192 is not set
-# CONFIG_SND_SOC_MT8195 is not set
-# CONFIG_SND_SOC_SOF_TOPLEVEL is not set
-
-#
-# STMicroelectronics STM32 SOC audio support
-#
-# end of STMicroelectronics STM32 SOC audio support
-
-# CONFIG_SND_SOC_XILINX_I2S is not set
-# CONFIG_SND_SOC_XILINX_AUDIO_FORMATTER is not set
-# CONFIG_SND_SOC_XILINX_SPDIF is not set
-# CONFIG_SND_SOC_XTFPGA_I2S is not set
-CONFIG_SND_SOC_I2C_AND_SPI=m
-
-#
-# CODEC drivers
-#
-# CONFIG_SND_SOC_AC97_CODEC is not set
-# CONFIG_SND_SOC_ADAU1372_I2C is not set
-# CONFIG_SND_SOC_ADAU1372_SPI is not set
-# CONFIG_SND_SOC_ADAU1701 is not set
-# CONFIG_SND_SOC_ADAU1761_I2C is not set
-# CONFIG_SND_SOC_ADAU1761_SPI is not set
-# CONFIG_SND_SOC_ADAU7002 is not set
-# CONFIG_SND_SOC_ADAU7118_HW is not set
-# CONFIG_SND_SOC_ADAU7118_I2C is not set
-# CONFIG_SND_SOC_AK4104 is not set
-# CONFIG_SND_SOC_AK4118 is not set
-# CONFIG_SND_SOC_AK4375 is not set
-# CONFIG_SND_SOC_AK4458 is not set
-# CONFIG_SND_SOC_AK4554 is not set
-# CONFIG_SND_SOC_AK4613 is not set
-# CONFIG_SND_SOC_AK4642 is not set
-# CONFIG_SND_SOC_AK5386 is not set
-# CONFIG_SND_SOC_AK5558 is not set
-# CONFIG_SND_SOC_ALC5623 is not set
-# CONFIG_SND_SOC_BD28623 is not set
-CONFIG_SND_SOC_BT_SCO=m
-CONFIG_SND_SOC_CROS_EC_CODEC=m
-# CONFIG_SND_SOC_CS35L32 is not set
-# CONFIG_SND_SOC_CS35L33 is not set
-# CONFIG_SND_SOC_CS35L34 is not set
-# CONFIG_SND_SOC_CS35L35 is not set
-# CONFIG_SND_SOC_CS35L36 is not set
-# CONFIG_SND_SOC_CS35L41_SPI is not set
-# CONFIG_SND_SOC_CS35L41_I2C is not set
-# CONFIG_SND_SOC_CS42L42 is not set
-# CONFIG_SND_SOC_CS42L51_I2C is not set
-# CONFIG_SND_SOC_CS42L52 is not set
-# CONFIG_SND_SOC_CS42L56 is not set
-# CONFIG_SND_SOC_CS42L73 is not set
-# CONFIG_SND_SOC_CS4234 is not set
-# CONFIG_SND_SOC_CS4265 is not set
-# CONFIG_SND_SOC_CS4270 is not set
-# CONFIG_SND_SOC_CS4271_I2C is not set
-# CONFIG_SND_SOC_CS4271_SPI is not set
-# CONFIG_SND_SOC_CS42XX8_I2C is not set
-# CONFIG_SND_SOC_CS43130 is not set
-# CONFIG_SND_SOC_CS4341 is not set
-# CONFIG_SND_SOC_CS4349 is not set
-# CONFIG_SND_SOC_CS53L30 is not set
-# CONFIG_SND_SOC_CX2072X is not set
-# CONFIG_SND_SOC_DA7213 is not set
-CONFIG_SND_SOC_DA7219=m
-CONFIG_SND_SOC_DMIC=m
-CONFIG_SND_SOC_HDMI_CODEC=m
-# CONFIG_SND_SOC_ES7134 is not set
-# CONFIG_SND_SOC_ES7241 is not set
-# CONFIG_SND_SOC_ES8316 is not set
-CONFIG_SND_SOC_ES8328=m
-CONFIG_SND_SOC_ES8328_I2C=m
-CONFIG_SND_SOC_ES8328_SPI=m
-# CONFIG_SND_SOC_GTM601 is not set
-# CONFIG_SND_SOC_ICS43432 is not set
-# CONFIG_SND_SOC_INNO_RK3036 is not set
-# CONFIG_SND_SOC_MAX98088 is not set
-CONFIG_SND_SOC_MAX98357A=m
-# CONFIG_SND_SOC_MAX98504 is not set
-# CONFIG_SND_SOC_MAX9867 is not set
-# CONFIG_SND_SOC_MAX98927 is not set
-# CONFIG_SND_SOC_MAX98520 is not set
-# CONFIG_SND_SOC_MAX98373_I2C is not set
-# CONFIG_SND_SOC_MAX98390 is not set
-# CONFIG_SND_SOC_MAX9860 is not set
-# CONFIG_SND_SOC_MSM8916_WCD_ANALOG is not set
-# CONFIG_SND_SOC_MSM8916_WCD_DIGITAL is not set
-# CONFIG_SND_SOC_PCM1681 is not set
-# CONFIG_SND_SOC_PCM1789_I2C is not set
-# CONFIG_SND_SOC_PCM179X_I2C is not set
-# CONFIG_SND_SOC_PCM179X_SPI is not set
-# CONFIG_SND_SOC_PCM186X_I2C is not set
-# CONFIG_SND_SOC_PCM186X_SPI is not set
-# CONFIG_SND_SOC_PCM3060_I2C is not set
-# CONFIG_SND_SOC_PCM3060_SPI is not set
-# CONFIG_SND_SOC_PCM3168A_I2C is not set
-# CONFIG_SND_SOC_PCM3168A_SPI is not set
-# CONFIG_SND_SOC_PCM5102A is not set
-# CONFIG_SND_SOC_PCM512x_I2C is not set
-# CONFIG_SND_SOC_PCM512x_SPI is not set
-# CONFIG_SND_SOC_RK3328 is not set
-CONFIG_SND_SOC_RL6231=m
-CONFIG_SND_SOC_RT1015=m
-CONFIG_SND_SOC_RT1015P=m
-CONFIG_SND_SOC_RT5514=m
-# CONFIG_SND_SOC_RT5616 is not set
-# CONFIG_SND_SOC_RT5631 is not set
-# CONFIG_SND_SOC_RT5640 is not set
-CONFIG_SND_SOC_RT5645=m
-CONFIG_SND_SOC_RT5659=m
-CONFIG_SND_SOC_RT5677=m
-CONFIG_SND_SOC_RT5677_SPI=m
-# CONFIG_SND_SOC_RT9120 is not set
-# CONFIG_SND_SOC_SGTL5000 is not set
-# CONFIG_SND_SOC_SIMPLE_AMPLIFIER is not set
-# CONFIG_SND_SOC_SIMPLE_MUX is not set
-# CONFIG_SND_SOC_SPDIF is not set
-# CONFIG_SND_SOC_SSM2305 is not set
-# CONFIG_SND_SOC_SSM2518 is not set
-# CONFIG_SND_SOC_SSM2602_SPI is not set
-# CONFIG_SND_SOC_SSM2602_I2C is not set
-# CONFIG_SND_SOC_SSM4567 is not set
-# CONFIG_SND_SOC_STA32X is not set
-# CONFIG_SND_SOC_STA350 is not set
-# CONFIG_SND_SOC_STI_SAS is not set
-# CONFIG_SND_SOC_TAS2552 is not set
-# CONFIG_SND_SOC_TAS2562 is not set
-# CONFIG_SND_SOC_TAS2764 is not set
-# CONFIG_SND_SOC_TAS2770 is not set
-# CONFIG_SND_SOC_TAS5086 is not set
-# CONFIG_SND_SOC_TAS571X is not set
-# CONFIG_SND_SOC_TAS5720 is not set
-# CONFIG_SND_SOC_TAS6424 is not set
-# CONFIG_SND_SOC_TDA7419 is not set
-# CONFIG_SND_SOC_TFA9879 is not set
-# CONFIG_SND_SOC_TFA989X is not set
-# CONFIG_SND_SOC_TLV320ADC3XXX is not set
-# CONFIG_SND_SOC_TLV320AIC23_I2C is not set
-# CONFIG_SND_SOC_TLV320AIC23_SPI is not set
-# CONFIG_SND_SOC_TLV320AIC31XX is not set
-# CONFIG_SND_SOC_TLV320AIC32X4_I2C is not set
-# CONFIG_SND_SOC_TLV320AIC32X4_SPI is not set
-# CONFIG_SND_SOC_TLV320AIC3X_I2C is not set
-# CONFIG_SND_SOC_TLV320AIC3X_SPI is not set
-# CONFIG_SND_SOC_TLV320ADCX140 is not set
-CONFIG_SND_SOC_TS3A227E=m
-# CONFIG_SND_SOC_TSCS42XX is not set
-# CONFIG_SND_SOC_TSCS454 is not set
-# CONFIG_SND_SOC_UDA1334 is not set
-# CONFIG_SND_SOC_WM8510 is not set
-# CONFIG_SND_SOC_WM8523 is not set
-# CONFIG_SND_SOC_WM8524 is not set
-# CONFIG_SND_SOC_WM8580 is not set
-# CONFIG_SND_SOC_WM8711 is not set
-# CONFIG_SND_SOC_WM8728 is not set
-# CONFIG_SND_SOC_WM8731 is not set
-# CONFIG_SND_SOC_WM8737 is not set
-# CONFIG_SND_SOC_WM8741 is not set
-# CONFIG_SND_SOC_WM8750 is not set
-# CONFIG_SND_SOC_WM8753 is not set
-# CONFIG_SND_SOC_WM8770 is not set
-# CONFIG_SND_SOC_WM8776 is not set
-# CONFIG_SND_SOC_WM8782 is not set
-# CONFIG_SND_SOC_WM8804_I2C is not set
-# CONFIG_SND_SOC_WM8804_SPI is not set
-# CONFIG_SND_SOC_WM8903 is not set
-# CONFIG_SND_SOC_WM8904 is not set
-# CONFIG_SND_SOC_WM8960 is not set
-# CONFIG_SND_SOC_WM8962 is not set
-# CONFIG_SND_SOC_WM8974 is not set
-# CONFIG_SND_SOC_WM8978 is not set
-# CONFIG_SND_SOC_WM8985 is not set
-# CONFIG_SND_SOC_ZL38060 is not set
-# CONFIG_SND_SOC_MAX9759 is not set
-CONFIG_SND_SOC_MT6351=m
-CONFIG_SND_SOC_MT6358=m
-# CONFIG_SND_SOC_MT6359 is not set
-# CONFIG_SND_SOC_MT6359_ACCDET is not set
-CONFIG_SND_SOC_MT6660=m
-# CONFIG_SND_SOC_NAU8315 is not set
-# CONFIG_SND_SOC_NAU8540 is not set
-# CONFIG_SND_SOC_NAU8810 is not set
-# CONFIG_SND_SOC_NAU8821 is not set
-# CONFIG_SND_SOC_NAU8822 is not set
-# CONFIG_SND_SOC_NAU8824 is not set
-# CONFIG_SND_SOC_TPA6130A2 is not set
-# CONFIG_SND_SOC_LPASS_WSA_MACRO is not set
-# CONFIG_SND_SOC_LPASS_VA_MACRO is not set
-# CONFIG_SND_SOC_LPASS_RX_MACRO is not set
-# CONFIG_SND_SOC_LPASS_TX_MACRO is not set
-# end of CODEC drivers
-
-# CONFIG_SND_SIMPLE_CARD is not set
-# CONFIG_SND_AUDIO_GRAPH_CARD is not set
-# CONFIG_SND_AUDIO_GRAPH_CARD2 is not set
-# CONFIG_SND_TEST_COMPONENT is not set
-# CONFIG_SND_VIRTIO is not set
-
-#
-# HID support
-#
-CONFIG_HID=y
-CONFIG_HID_BATTERY_STRENGTH=y
-CONFIG_HIDRAW=y
-CONFIG_UHID=m
-CONFIG_HID_GENERIC=y
-
-#
-# Special HID drivers
-#
-# CONFIG_HID_A4TECH is not set
-# CONFIG_HID_ACCUTOUCH is not set
-# CONFIG_HID_ACRUX is not set
-# CONFIG_HID_APPLE is not set
-# CONFIG_HID_APPLEIR is not set
-# CONFIG_HID_ASUS is not set
-# CONFIG_HID_AUREAL is not set
-# CONFIG_HID_BELKIN is not set
-# CONFIG_HID_BETOP_FF is not set
-# CONFIG_HID_BIGBEN_FF is not set
-# CONFIG_HID_CHERRY is not set
-# CONFIG_HID_CHICONY is not set
-# CONFIG_HID_CORSAIR is not set
-# CONFIG_HID_COUGAR is not set
-# CONFIG_HID_MACALLY is not set
-# CONFIG_HID_PRODIKEYS is not set
-# CONFIG_HID_CMEDIA is not set
-# CONFIG_HID_CP2112 is not set
-# CONFIG_HID_CREATIVE_SB0540 is not set
-# CONFIG_HID_CYPRESS is not set
-# CONFIG_HID_DRAGONRISE is not set
-# CONFIG_HID_EMS_FF is not set
-# CONFIG_HID_ELAN is not set
-# CONFIG_HID_ELECOM is not set
-# CONFIG_HID_ELO is not set
-# CONFIG_HID_EZKEY is not set
-# CONFIG_HID_FT260 is not set
-# CONFIG_HID_GEMBIRD is not set
-# CONFIG_HID_GFRM is not set
-# CONFIG_HID_GLORIOUS is not set
-# CONFIG_HID_HOLTEK is not set
-# CONFIG_HID_GOOGLE_HAMMER is not set
-# CONFIG_HID_VIVALDI is not set
-# CONFIG_HID_GT683R is not set
-# CONFIG_HID_KEYTOUCH is not set
-# CONFIG_HID_KYE is not set
-CONFIG_HID_UCLOGIC=m
-# CONFIG_HID_WALTOP is not set
-# CONFIG_HID_VIEWSONIC is not set
-# CONFIG_HID_XIAOMI is not set
-# CONFIG_HID_GYRATION is not set
-# CONFIG_HID_ICADE is not set
-# CONFIG_HID_ITE is not set
-# CONFIG_HID_JABRA is not set
-# CONFIG_HID_TWINHAN is not set
-# CONFIG_HID_KENSINGTON is not set
-# CONFIG_HID_LCPOWER is not set
-# CONFIG_HID_LED is not set
-# CONFIG_HID_LENOVO is not set
-# CONFIG_HID_LETSKETCH is not set
-# CONFIG_HID_LOGITECH is not set
-# CONFIG_HID_MAGICMOUSE is not set
-# CONFIG_HID_MALTRON is not set
-# CONFIG_HID_MAYFLASH is not set
-# CONFIG_HID_REDRAGON is not set
-# CONFIG_HID_MICROSOFT is not set
-# CONFIG_HID_MONTEREY is not set
-CONFIG_HID_MULTITOUCH=m
-# CONFIG_HID_NINTENDO is not set
-# CONFIG_HID_NTI is not set
-# CONFIG_HID_NTRIG is not set
-# CONFIG_HID_ORTEK is not set
-# CONFIG_HID_PANTHERLORD is not set
-# CONFIG_HID_PENMOUNT is not set
-# CONFIG_HID_PETALYNX is not set
-# CONFIG_HID_PICOLCD is not set
-# CONFIG_HID_PLANTRONICS is not set
-# CONFIG_HID_PLAYSTATION is not set
-# CONFIG_HID_PRIMAX is not set
-# CONFIG_HID_RETRODE is not set
-# CONFIG_HID_ROCCAT is not set
-# CONFIG_HID_SAITEK is not set
-# CONFIG_HID_SAMSUNG is not set
-# CONFIG_HID_SEMITEK is not set
-# CONFIG_HID_SONY is not set
-# CONFIG_HID_SPEEDLINK is not set
-# CONFIG_HID_STEAM is not set
-# CONFIG_HID_STEELSERIES is not set
-# CONFIG_HID_SUNPLUS is not set
-CONFIG_HID_RMI=y
-# CONFIG_HID_GREENASIA is not set
-# CONFIG_HID_SMARTJOYPLUS is not set
-# CONFIG_HID_TIVO is not set
-# CONFIG_HID_TOPSEED is not set
-# CONFIG_HID_THINGM is not set
-# CONFIG_HID_THRUSTMASTER is not set
-# CONFIG_HID_UDRAW_PS3 is not set
-# CONFIG_HID_U2FZERO is not set
-# CONFIG_HID_WACOM is not set
-# CONFIG_HID_WIIMOTE is not set
-# CONFIG_HID_XINMO is not set
-# CONFIG_HID_ZEROPLUS is not set
-# CONFIG_HID_ZYDACRON is not set
-# CONFIG_HID_SENSOR_HUB is not set
-# CONFIG_HID_ALPS is not set
-# CONFIG_HID_MCP2221 is not set
-# end of Special HID drivers
-
-#
-# USB HID support
-#
-CONFIG_USB_HID=y
-CONFIG_HID_PID=y
-CONFIG_USB_HIDDEV=y
-# end of USB HID support
-
-#
-# I2C HID support
-#
-CONFIG_I2C_HID_ACPI=m
-CONFIG_I2C_HID_OF=m
-# CONFIG_I2C_HID_OF_GOODIX is not set
-# end of I2C HID support
-
-CONFIG_I2C_HID_CORE=m
-# end of HID support
-
-CONFIG_USB_OHCI_LITTLE_ENDIAN=y
-CONFIG_USB_SUPPORT=y
-CONFIG_USB_COMMON=y
-# CONFIG_USB_LED_TRIG is not set
-CONFIG_USB_ULPI_BUS=y
-CONFIG_USB_CONN_GPIO=m
-CONFIG_USB_ARCH_HAS_HCD=y
-CONFIG_USB=y
-CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
-
-#
-# Miscellaneous USB options
-#
-CONFIG_USB_DEFAULT_PERSIST=y
-# CONFIG_USB_FEW_INIT_RETRIES is not set
-# CONFIG_USB_DYNAMIC_MINORS is not set
-# CONFIG_USB_OTG is not set
-# CONFIG_USB_OTG_PRODUCTLIST is not set
-# CONFIG_USB_LEDS_TRIGGER_USBPORT is not set
-CONFIG_USB_AUTOSUSPEND_DELAY=2
-CONFIG_USB_MON=m
-
-#
-# USB Host Controller Drivers
-#
-# CONFIG_USB_C67X00_HCD is not set
-CONFIG_USB_XHCI_HCD=y
-CONFIG_USB_XHCI_DBGCAP=y
-# CONFIG_USB_XHCI_PCI_RENESAS is not set
-CONFIG_USB_XHCI_PLATFORM=y
-CONFIG_USB_XHCI_MTK=y
-CONFIG_USB_EHCI_HCD=y
-CONFIG_USB_EHCI_ROOT_HUB_TT=y
-CONFIG_USB_EHCI_TT_NEWSCHED=y
-# CONFIG_USB_EHCI_FSL is not set
-CONFIG_USB_EHCI_HCD_PLATFORM=y
-# CONFIG_USB_OXU210HP_HCD is not set
-# CONFIG_USB_ISP116X_HCD is not set
-# CONFIG_USB_FOTG210_HCD is not set
-# CONFIG_USB_MAX3421_HCD is not set
-CONFIG_USB_OHCI_HCD=y
-CONFIG_USB_OHCI_HCD_PLATFORM=y
-# CONFIG_USB_SL811_HCD is not set
-# CONFIG_USB_R8A66597_HCD is not set
-# CONFIG_USB_HCD_SSB is not set
-# CONFIG_USB_HCD_TEST_MODE is not set
-
-#
-# USB Device Class drivers
-#
-CONFIG_USB_ACM=m
-# CONFIG_USB_PRINTER is not set
-CONFIG_USB_WDM=m
-CONFIG_USB_TMC=m
-
-#
-# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may
-#
-
-#
-# also be needed; see USB_STORAGE Help for more info
-#
-CONFIG_USB_STORAGE=y
-# CONFIG_USB_STORAGE_DEBUG is not set
-CONFIG_USB_STORAGE_REALTEK=m
-CONFIG_REALTEK_AUTOPM=y
-CONFIG_USB_STORAGE_DATAFAB=m
-CONFIG_USB_STORAGE_FREECOM=m
-CONFIG_USB_STORAGE_ISD200=m
-CONFIG_USB_STORAGE_USBAT=m
-CONFIG_USB_STORAGE_SDDR09=m
-CONFIG_USB_STORAGE_SDDR55=m
-CONFIG_USB_STORAGE_JUMPSHOT=m
-CONFIG_USB_STORAGE_ALAUDA=m
-CONFIG_USB_STORAGE_ONETOUCH=m
-CONFIG_USB_STORAGE_KARMA=m
-CONFIG_USB_STORAGE_CYPRESS_ATACB=m
-CONFIG_USB_STORAGE_ENE_UB6250=m
-CONFIG_USB_UAS=y
-
-#
-# USB Imaging devices
-#
-# CONFIG_USB_MDC800 is not set
-# CONFIG_USB_MICROTEK is not set
-CONFIG_USBIP_CORE=m
-CONFIG_USBIP_VHCI_HCD=m
-CONFIG_USBIP_VHCI_HC_PORTS=8
-CONFIG_USBIP_VHCI_NR_HCS=1
-CONFIG_USBIP_HOST=m
-# CONFIG_USBIP_DEBUG is not set
-# CONFIG_USB_CDNS_SUPPORT is not set
-CONFIG_USB_MTU3=y
-CONFIG_USB_MTU3_HOST=y
-# CONFIG_USB_MTU3_DEBUG is not set
-# CONFIG_USB_MUSB_HDRC is not set
-# CONFIG_USB_DWC3 is not set
-# CONFIG_USB_DWC2 is not set
-# CONFIG_USB_CHIPIDEA is not set
-# CONFIG_USB_ISP1760 is not set
-
-#
-# USB port drivers
-#
-CONFIG_USB_SERIAL=m
-CONFIG_USB_SERIAL_GENERIC=y
-CONFIG_USB_SERIAL_SIMPLE=m
-CONFIG_USB_SERIAL_AIRCABLE=m
-CONFIG_USB_SERIAL_ARK3116=m
-CONFIG_USB_SERIAL_BELKIN=m
-CONFIG_USB_SERIAL_CH341=m
-CONFIG_USB_SERIAL_WHITEHEAT=m
-CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m
-CONFIG_USB_SERIAL_CP210X=m
-CONFIG_USB_SERIAL_CYPRESS_M8=m
-CONFIG_USB_SERIAL_EMPEG=m
-CONFIG_USB_SERIAL_FTDI_SIO=m
-CONFIG_USB_SERIAL_VISOR=m
-CONFIG_USB_SERIAL_IPAQ=m
-CONFIG_USB_SERIAL_IR=m
-CONFIG_USB_SERIAL_EDGEPORT=m
-CONFIG_USB_SERIAL_EDGEPORT_TI=m
-CONFIG_USB_SERIAL_F81232=m
-CONFIG_USB_SERIAL_F8153X=m
-CONFIG_USB_SERIAL_GARMIN=m
-CONFIG_USB_SERIAL_IPW=m
-CONFIG_USB_SERIAL_IUU=m
-CONFIG_USB_SERIAL_KEYSPAN_PDA=m
-CONFIG_USB_SERIAL_KEYSPAN=m
-CONFIG_USB_SERIAL_KLSI=m
-CONFIG_USB_SERIAL_KOBIL_SCT=m
-CONFIG_USB_SERIAL_MCT_U232=m
-CONFIG_USB_SERIAL_METRO=m
-CONFIG_USB_SERIAL_MOS7720=m
-CONFIG_USB_SERIAL_MOS7840=m
-CONFIG_USB_SERIAL_MXUPORT=m
-CONFIG_USB_SERIAL_NAVMAN=m
-CONFIG_USB_SERIAL_PL2303=m
-CONFIG_USB_SERIAL_OTI6858=m
-CONFIG_USB_SERIAL_QCAUX=m
-CONFIG_USB_SERIAL_QUALCOMM=m
-CONFIG_USB_SERIAL_SPCP8X5=m
-CONFIG_USB_SERIAL_SAFE=m
-CONFIG_USB_SERIAL_SAFE_PADDED=y
-CONFIG_USB_SERIAL_SIERRAWIRELESS=m
-CONFIG_USB_SERIAL_SYMBOL=m
-CONFIG_USB_SERIAL_TI=m
-CONFIG_USB_SERIAL_CYBERJACK=m
-CONFIG_USB_SERIAL_WWAN=m
-CONFIG_USB_SERIAL_OPTION=m
-CONFIG_USB_SERIAL_OMNINET=m
-CONFIG_USB_SERIAL_OPTICON=m
-CONFIG_USB_SERIAL_XSENS_MT=m
-CONFIG_USB_SERIAL_WISHBONE=m
-CONFIG_USB_SERIAL_SSU100=m
-CONFIG_USB_SERIAL_QT2=m
-# CONFIG_USB_SERIAL_UPD78F0730 is not set
-# CONFIG_USB_SERIAL_XR is not set
-# CONFIG_USB_SERIAL_DEBUG is not set
-
-#
-# USB Miscellaneous drivers
-#
-# CONFIG_USB_EMI62 is not set
-# CONFIG_USB_EMI26 is not set
-# CONFIG_USB_ADUTUX is not set
-# CONFIG_USB_SEVSEG is not set
-# CONFIG_USB_LEGOTOWER is not set
-# CONFIG_USB_LCD is not set
-# CONFIG_USB_CYPRESS_CY7C63 is not set
-# CONFIG_USB_CYTHERM is not set
-# CONFIG_USB_IDMOUSE is not set
-# CONFIG_USB_FTDI_ELAN is not set
-# CONFIG_USB_APPLEDISPLAY is not set
-# CONFIG_APPLE_MFI_FASTCHARGE is not set
-# CONFIG_USB_SISUSBVGA is not set
-# CONFIG_USB_LD is not set
-# CONFIG_USB_TRANCEVIBRATOR is not set
-# CONFIG_USB_IOWARRIOR is not set
-# CONFIG_USB_TEST is not set
-# CONFIG_USB_EHSET_TEST_FIXTURE is not set
-# CONFIG_USB_ISIGHTFW is not set
-# CONFIG_USB_YUREX is not set
-CONFIG_USB_EZUSB_FX2=m
-CONFIG_USB_HUB_USB251XB=m
-CONFIG_USB_HSIC_USB3503=m
-CONFIG_USB_HSIC_USB4604=m
-# CONFIG_USB_LINK_LAYER_TEST is not set
-# CONFIG_USB_CHAOSKEY is not set
-
-#
-# USB Physical Layer drivers
-#
-CONFIG_USB_PHY=y
-CONFIG_NOP_USB_XCEIV=y
-# CONFIG_USB_GPIO_VBUS is not set
-# CONFIG_USB_ISP1301 is not set
-CONFIG_USB_ULPI=y
-CONFIG_USB_ULPI_VIEWPORT=y
-# end of USB Physical Layer drivers
-
-# CONFIG_USB_GADGET is not set
-CONFIG_TYPEC=y
-CONFIG_TYPEC_TCPM=m
-CONFIG_TYPEC_TCPCI=m
-# CONFIG_TYPEC_RT1711H is not set
-CONFIG_TYPEC_MT6360=m
-# CONFIG_TYPEC_TCPCI_MAXIM is not set
-# CONFIG_TYPEC_FUSB302 is not set
-CONFIG_TYPEC_UCSI=m
-# CONFIG_UCSI_CCG is not set
-CONFIG_UCSI_ACPI=m
-# CONFIG_TYPEC_TPS6598X is not set
-# CONFIG_TYPEC_HD3SS3220 is not set
-# CONFIG_TYPEC_STUSB160X is not set
-
-#
-# USB Type-C Multiplexer/DeMultiplexer Switch support
-#
-# CONFIG_TYPEC_MUX_PI3USB30532 is not set
-# end of USB Type-C Multiplexer/DeMultiplexer Switch support
-
-#
-# USB Type-C Alternate Mode drivers
-#
-CONFIG_TYPEC_DP_ALTMODE=m
-# CONFIG_TYPEC_NVIDIA_ALTMODE is not set
-# end of USB Type-C Alternate Mode drivers
-
-CONFIG_USB_ROLE_SWITCH=m
-CONFIG_MMC=y
-CONFIG_PWRSEQ_EMMC=y
-# CONFIG_PWRSEQ_SD8787 is not set
-CONFIG_PWRSEQ_SIMPLE=y
-CONFIG_MMC_BLOCK=y
-CONFIG_MMC_BLOCK_MINORS=32
-# CONFIG_SDIO_UART is not set
-# CONFIG_MMC_TEST is not set
-
-#
-# MMC/SD/SDIO Host Controller Drivers
-#
-# CONFIG_MMC_DEBUG is not set
-# CONFIG_MMC_ARMMMCI is not set
-CONFIG_MMC_SDHCI=y
-CONFIG_MMC_SDHCI_PLTFM=y
-# CONFIG_MMC_SDHCI_OF_ARASAN is not set
-# CONFIG_MMC_SDHCI_OF_ASPEED is not set
-# CONFIG_MMC_SDHCI_OF_AT91 is not set
-# CONFIG_MMC_SDHCI_OF_DWCMSHC is not set
-# CONFIG_MMC_SDHCI_CADENCE is not set
-# CONFIG_MMC_SDHCI_F_SDH30 is not set
-# CONFIG_MMC_SDHCI_MILBEAUT is not set
-# CONFIG_MMC_SPI is not set
-# CONFIG_MMC_DW is not set
-# CONFIG_MMC_VUB300 is not set
-# CONFIG_MMC_USHC is not set
-# CONFIG_MMC_USDHI6ROL0 is not set
-CONFIG_MMC_CQHCI=y
-CONFIG_MMC_HSQ=y
-CONFIG_MMC_MTK=y
-# CONFIG_MMC_SDHCI_XENON is not set
-# CONFIG_MMC_SDHCI_OMAP is not set
-# CONFIG_MMC_SDHCI_AM654 is not set
-# CONFIG_MEMSTICK is not set
-CONFIG_NEW_LEDS=y
-CONFIG_LEDS_CLASS=y
-CONFIG_LEDS_CLASS_FLASH=m
-CONFIG_LEDS_CLASS_MULTICOLOR=m
-# CONFIG_LEDS_BRIGHTNESS_HW_CHANGED is not set
-
-#
-# LED drivers
-#
-# CONFIG_LEDS_AN30259A is not set
-# CONFIG_LEDS_AW2013 is not set
-# CONFIG_LEDS_BCM6328 is not set
-# CONFIG_LEDS_BCM6358 is not set
-# CONFIG_LEDS_CR0014114 is not set
-# CONFIG_LEDS_EL15203000 is not set
-# CONFIG_LEDS_LM3530 is not set
-# CONFIG_LEDS_LM3532 is not set
-# CONFIG_LEDS_LM3642 is not set
-# CONFIG_LEDS_LM3692X is not set
-CONFIG_LEDS_MT6323=m
-# CONFIG_LEDS_PCA9532 is not set
-# CONFIG_LEDS_GPIO is not set
-# CONFIG_LEDS_LP3944 is not set
-# CONFIG_LEDS_LP3952 is not set
-# CONFIG_LEDS_LP50XX is not set
-# CONFIG_LEDS_LP55XX_COMMON is not set
-# CONFIG_LEDS_LP8860 is not set
-# CONFIG_LEDS_PCA955X is not set
-# CONFIG_LEDS_PCA963X is not set
-# CONFIG_LEDS_DAC124S085 is not set
-# CONFIG_LEDS_PWM is not set
-# CONFIG_LEDS_REGULATOR is not set
-# CONFIG_LEDS_BD2802 is not set
-# CONFIG_LEDS_LT3593 is not set
-# CONFIG_LEDS_TCA6507 is not set
-# CONFIG_LEDS_TLC591XX is not set
-# CONFIG_LEDS_LM355x is not set
-# CONFIG_LEDS_IS31FL319X is not set
-# CONFIG_LEDS_IS31FL32XX is not set
-
-#
-# LED driver for blink(1) USB RGB LED is under Special HID drivers (HID_THINGM)
-#
-CONFIG_LEDS_BLINKM=m
-CONFIG_LEDS_SYSCON=y
-# CONFIG_LEDS_MLXREG is not set
-CONFIG_LEDS_USER=m
-# CONFIG_LEDS_SPI_BYTE is not set
-# CONFIG_LEDS_TI_LMU_COMMON is not set
-
-#
-# Flash and Torch LED drivers
-#
-# CONFIG_LEDS_AAT1290 is not set
-# CONFIG_LEDS_AS3645A is not set
-# CONFIG_LEDS_KTD2692 is not set
-# CONFIG_LEDS_LM3601X is not set
-# CONFIG_LEDS_MT6360 is not set
-# CONFIG_LEDS_RT4505 is not set
-# CONFIG_LEDS_RT8515 is not set
-# CONFIG_LEDS_SGM3140 is not set
-
-#
-# LED Triggers
-#
-CONFIG_LEDS_TRIGGERS=y
-# CONFIG_LEDS_TRIGGER_TIMER is not set
-# CONFIG_LEDS_TRIGGER_ONESHOT is not set
-# CONFIG_LEDS_TRIGGER_HEARTBEAT is not set
-# CONFIG_LEDS_TRIGGER_BACKLIGHT is not set
-# CONFIG_LEDS_TRIGGER_CPU is not set
-# CONFIG_LEDS_TRIGGER_ACTIVITY is not set
-# CONFIG_LEDS_TRIGGER_GPIO is not set
-# CONFIG_LEDS_TRIGGER_DEFAULT_ON is not set
-
-#
-# iptables trigger is under Netfilter config (LED target)
-#
-# CONFIG_LEDS_TRIGGER_TRANSIENT is not set
-# CONFIG_LEDS_TRIGGER_CAMERA is not set
-# CONFIG_LEDS_TRIGGER_PANIC is not set
-# CONFIG_LEDS_TRIGGER_NETDEV is not set
-# CONFIG_LEDS_TRIGGER_PATTERN is not set
-# CONFIG_LEDS_TRIGGER_AUDIO is not set
-# CONFIG_LEDS_TRIGGER_TTY is not set
-
-#
-# Simple LED drivers
-#
-# CONFIG_ACCESSIBILITY is not set
-# CONFIG_INFINIBAND is not set
-CONFIG_EDAC_SUPPORT=y
-# CONFIG_EDAC is not set
-CONFIG_RTC_LIB=y
-CONFIG_RTC_CLASS=y
-CONFIG_RTC_HCTOSYS=y
-CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
-CONFIG_RTC_SYSTOHC=y
-CONFIG_RTC_SYSTOHC_DEVICE="rtc0"
-# CONFIG_RTC_DEBUG is not set
-CONFIG_RTC_NVMEM=y
-
-#
-# RTC interfaces
-#
-CONFIG_RTC_INTF_SYSFS=y
-CONFIG_RTC_INTF_PROC=y
-CONFIG_RTC_INTF_DEV=y
-# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set
-# CONFIG_RTC_DRV_TEST is not set
-
-#
-# I2C RTC drivers
-#
-# CONFIG_RTC_DRV_ABB5ZES3 is not set
-# CONFIG_RTC_DRV_ABEOZ9 is not set
-# CONFIG_RTC_DRV_ABX80X is not set
-CONFIG_RTC_DRV_AS3722=m
-# CONFIG_RTC_DRV_DS1307 is not set
-# CONFIG_RTC_DRV_DS1374 is not set
-# CONFIG_RTC_DRV_DS1672 is not set
-# CONFIG_RTC_DRV_HYM8563 is not set
-# CONFIG_RTC_DRV_MAX6900 is not set
-# CONFIG_RTC_DRV_RS5C372 is not set
-# CONFIG_RTC_DRV_ISL1208 is not set
-# CONFIG_RTC_DRV_ISL12022 is not set
-# CONFIG_RTC_DRV_ISL12026 is not set
-# CONFIG_RTC_DRV_X1205 is not set
-# CONFIG_RTC_DRV_PCF8523 is not set
-# CONFIG_RTC_DRV_PCF85063 is not set
-# CONFIG_RTC_DRV_PCF85363 is not set
-# CONFIG_RTC_DRV_PCF8563 is not set
-# CONFIG_RTC_DRV_PCF8583 is not set
-# CONFIG_RTC_DRV_M41T80 is not set
-# CONFIG_RTC_DRV_BQ32K is not set
-CONFIG_RTC_DRV_PALMAS=m
-CONFIG_RTC_DRV_TPS6586X=m
-# CONFIG_RTC_DRV_S35390A is not set
-# CONFIG_RTC_DRV_FM3130 is not set
-# CONFIG_RTC_DRV_RX8010 is not set
-# CONFIG_RTC_DRV_RX8581 is not set
-# CONFIG_RTC_DRV_RX8025 is not set
-# CONFIG_RTC_DRV_EM3027 is not set
-# CONFIG_RTC_DRV_RV3028 is not set
-# CONFIG_RTC_DRV_RV3032 is not set
-# CONFIG_RTC_DRV_RV8803 is not set
-# CONFIG_RTC_DRV_SD3078 is not set
-
-#
-# SPI RTC drivers
-#
-# CONFIG_RTC_DRV_M41T93 is not set
-# CONFIG_RTC_DRV_M41T94 is not set
-# CONFIG_RTC_DRV_DS1302 is not set
-# CONFIG_RTC_DRV_DS1305 is not set
-# CONFIG_RTC_DRV_DS1343 is not set
-# CONFIG_RTC_DRV_DS1347 is not set
-# CONFIG_RTC_DRV_DS1390 is not set
-# CONFIG_RTC_DRV_MAX6916 is not set
-# CONFIG_RTC_DRV_R9701 is not set
-# CONFIG_RTC_DRV_RX4581 is not set
-# CONFIG_RTC_DRV_RS5C348 is not set
-# CONFIG_RTC_DRV_MAX6902 is not set
-# CONFIG_RTC_DRV_PCF2123 is not set
-# CONFIG_RTC_DRV_MCP795 is not set
-CONFIG_RTC_I2C_AND_SPI=y
-
-#
-# SPI and I2C RTC drivers
-#
-# CONFIG_RTC_DRV_DS3232 is not set
-# CONFIG_RTC_DRV_PCF2127 is not set
-# CONFIG_RTC_DRV_RV3029C2 is not set
-# CONFIG_RTC_DRV_RX6110 is not set
-
-#
-# Platform RTC drivers
-#
-# CONFIG_RTC_DRV_DS1286 is not set
-# CONFIG_RTC_DRV_DS1511 is not set
-# CONFIG_RTC_DRV_DS1553 is not set
-# CONFIG_RTC_DRV_DS1685_FAMILY is not set
-# CONFIG_RTC_DRV_DS1742 is not set
-# CONFIG_RTC_DRV_DS2404 is not set
-CONFIG_RTC_DRV_EFI=m
-# CONFIG_RTC_DRV_STK17TA8 is not set
-# CONFIG_RTC_DRV_M48T86 is not set
-# CONFIG_RTC_DRV_M48T35 is not set
-# CONFIG_RTC_DRV_M48T59 is not set
-# CONFIG_RTC_DRV_MSM6242 is not set
-# CONFIG_RTC_DRV_BQ4802 is not set
-# CONFIG_RTC_DRV_RP5C01 is not set
-# CONFIG_RTC_DRV_V3020 is not set
-# CONFIG_RTC_DRV_ZYNQMP is not set
-CONFIG_RTC_DRV_CROS_EC=m
-
-#
-# on-CPU RTC drivers
-#
-# CONFIG_RTC_DRV_PL030 is not set
-# CONFIG_RTC_DRV_PL031 is not set
-# CONFIG_RTC_DRV_CADENCE is not set
-# CONFIG_RTC_DRV_FTRTC010 is not set
-# CONFIG_RTC_DRV_MT2712 is not set
-CONFIG_RTC_DRV_MT6397=m
-CONFIG_RTC_DRV_MT7622=m
-# CONFIG_RTC_DRV_R7301 is not set
-
-#
-# HID Sensor RTC drivers
-#
-# CONFIG_RTC_DRV_GOLDFISH is not set
-CONFIG_DMADEVICES=y
-# CONFIG_DMADEVICES_DEBUG is not set
-
-#
-# DMA Devices
-#
-CONFIG_ASYNC_TX_ENABLE_CHANNEL_SWITCH=y
-CONFIG_DMA_ENGINE=y
-CONFIG_DMA_VIRTUAL_CHANNELS=y
-CONFIG_DMA_ACPI=y
-CONFIG_DMA_OF=y
-# CONFIG_ALTERA_MSGDMA is not set
-# CONFIG_AMBA_PL08X is not set
-# CONFIG_BCM_SBA_RAID is not set
-# CONFIG_DW_AXI_DMAC is not set
-# CONFIG_FSL_EDMA is not set
-# CONFIG_FSL_QDMA is not set
-# CONFIG_INTEL_IDMA64 is not set
-# CONFIG_MV_XOR_V2 is not set
-# CONFIG_PL330_DMA is not set
-# CONFIG_XILINX_DMA is not set
-# CONFIG_XILINX_ZYNQMP_DMA is not set
-# CONFIG_XILINX_ZYNQMP_DPDMA is not set
-CONFIG_MTK_HSDMA=y
-CONFIG_MTK_CQDMA=y
-# CONFIG_MTK_UART_APDMA is not set
-# CONFIG_QCOM_HIDMA_MGMT is not set
-# CONFIG_QCOM_HIDMA is not set
-# CONFIG_DW_DMAC is not set
-# CONFIG_SF_PDMA is not set
-
-#
-# DMA Clients
-#
-CONFIG_ASYNC_TX_DMA=y
-# CONFIG_DMATEST is not set
-
-#
-# DMABUF options
-#
-CONFIG_SYNC_FILE=y
-# CONFIG_UDMABUF is not set
-# CONFIG_DMABUF_MOVE_NOTIFY is not set
-# CONFIG_DMABUF_DEBUG is not set
-# CONFIG_DMABUF_SELFTESTS is not set
-CONFIG_DMABUF_HEAPS=y
-# CONFIG_DMABUF_SYSFS_STATS is not set
-CONFIG_DMABUF_HEAPS_SYSTEM=y
-CONFIG_DMABUF_HEAPS_CMA=y
-# end of DMABUF options
-
-# CONFIG_AUXDISPLAY is not set
-# CONFIG_UIO is not set
-CONFIG_VFIO=m
-CONFIG_VFIO_IOMMU_TYPE1=m
-CONFIG_VFIO_VIRQFD=m
-CONFIG_VFIO_NOIOMMU=y
-CONFIG_VFIO_PLATFORM=m
-# CONFIG_VFIO_AMBA is not set
-# CONFIG_VFIO_PLATFORM_CALXEDAXGMAC_RESET is not set
-# CONFIG_VFIO_PLATFORM_AMDXGBE_RESET is not set
-CONFIG_VFIO_MDEV=m
-CONFIG_VIRT_DRIVERS=y
-CONFIG_VIRTIO=m
-CONFIG_VIRTIO_MENU=y
-CONFIG_VIRTIO_BALLOON=m
-CONFIG_VIRTIO_INPUT=m
-CONFIG_VIRTIO_MMIO=m
-CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES=y
-# CONFIG_VDPA is not set
-CONFIG_VHOST_IOTLB=m
-CONFIG_VHOST=m
-CONFIG_VHOST_MENU=y
-CONFIG_VHOST_NET=m
-# CONFIG_VHOST_CROSS_ENDIAN_LEGACY is not set
-
-#
-# Microsoft Hyper-V guest support
-#
-# CONFIG_HYPERV is not set
-# end of Microsoft Hyper-V guest support
-
-# CONFIG_GREYBUS is not set
-# CONFIG_COMEDI is not set
-CONFIG_STAGING=y
-# CONFIG_PRISM2_USB is not set
-# CONFIG_RTLLIB is not set
-# CONFIG_RTL8723BS is not set
-# CONFIG_R8712U is not set
-CONFIG_R8188EU=m
-# CONFIG_VT6656 is not set
-
-#
-# IIO staging drivers
-#
-
-#
-# Accelerometers
-#
-# CONFIG_ADIS16203 is not set
-# CONFIG_ADIS16240 is not set
-# end of Accelerometers
-
-#
-# Analog to digital converters
-#
-# CONFIG_AD7816 is not set
-# CONFIG_AD7280 is not set
-# end of Analog to digital converters
-
-#
-# Analog digital bi-direction converters
-#
-# CONFIG_ADT7316 is not set
-# end of Analog digital bi-direction converters
-
-#
-# Capacitance to digital converters
-#
-# CONFIG_AD7746 is not set
-# end of Capacitance to digital converters
-
-#
-# Direct Digital Synthesis
-#
-# CONFIG_AD9832 is not set
-# CONFIG_AD9834 is not set
-# end of Direct Digital Synthesis
-
-#
-# Network Analyzer, Impedance Converters
-#
-# CONFIG_AD5933 is not set
-# end of Network Analyzer, Impedance Converters
-
-#
-# Active energy metering IC
-#
-# CONFIG_ADE7854 is not set
-# end of Active energy metering IC
-
-#
-# Resolver to digital converters
-#
-# CONFIG_AD2S1210 is not set
-# end of Resolver to digital converters
-# end of IIO staging drivers
-
-# CONFIG_STAGING_MEDIA is not set
-
-#
-# Android
-#
-# end of Android
-
-# CONFIG_STAGING_BOARD is not set
-# CONFIG_LTE_GDM724X is not set
-# CONFIG_GS_FPGABOOT is not set
-# CONFIG_UNISYSSPAR is not set
-# CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set
-# CONFIG_FB_TFT is not set
-# CONFIG_KS7010 is not set
-# CONFIG_PI433 is not set
-# CONFIG_XIL_AXIS_FIFO is not set
-# CONFIG_FIELDBUS_DEV is not set
-# CONFIG_WFX is not set
-# CONFIG_GOLDFISH is not set
-CONFIG_CHROME_PLATFORMS=y
-CONFIG_CHROMEOS_TBMC=m
-CONFIG_CROS_EC=y
-CONFIG_CROS_EC_I2C=y
-CONFIG_CROS_EC_SPI=y
-CONFIG_CROS_EC_PROTO=y
-CONFIG_CROS_KBD_LED_BACKLIGHT=m
-CONFIG_CROS_EC_CHARDEV=y
-CONFIG_CROS_EC_LIGHTBAR=y
-CONFIG_CROS_EC_VBC=m
-CONFIG_CROS_EC_SENSORHUB=y
-CONFIG_CROS_EC_SYSFS=m
-CONFIG_CROS_EC_TYPEC=m
-CONFIG_CROS_USBPD_LOGGER=m
-CONFIG_CROS_USBPD_NOTIFY=y
-# CONFIG_MELLANOX_PLATFORM is not set
-# CONFIG_SURFACE_PLATFORMS is not set
-CONFIG_HAVE_CLK=y
-CONFIG_HAVE_CLK_PREPARE=y
-CONFIG_COMMON_CLK=y
-
-#
-# Clock driver for ARM Reference designs
-#
-# CONFIG_CLK_ICST is not set
-# CONFIG_CLK_SP810 is not set
-# end of Clock driver for ARM Reference designs
-
-# CONFIG_LMK04832 is not set
-# CONFIG_COMMON_CLK_MAX9485 is not set
-# CONFIG_COMMON_CLK_SCMI is not set
-# CONFIG_COMMON_CLK_SCPI is not set
-# CONFIG_COMMON_CLK_SI5341 is not set
-# CONFIG_COMMON_CLK_SI5351 is not set
-# CONFIG_COMMON_CLK_SI514 is not set
-# CONFIG_COMMON_CLK_SI544 is not set
-# CONFIG_COMMON_CLK_SI570 is not set
-# CONFIG_COMMON_CLK_CDCE706 is not set
-# CONFIG_COMMON_CLK_CDCE925 is not set
-# CONFIG_COMMON_CLK_CS2000_CP is not set
-# CONFIG_COMMON_CLK_LAN966X is not set
-# CONFIG_COMMON_CLK_AXI_CLKGEN is not set
-# CONFIG_COMMON_CLK_XGENE is not set
-# CONFIG_COMMON_CLK_PALMAS is not set
-# CONFIG_COMMON_CLK_PWM is not set
-# CONFIG_COMMON_CLK_VC5 is not set
-# CONFIG_COMMON_CLK_FIXED_MMIO is not set
-
-#
-# Clock driver for MediaTek SoC
-#
-CONFIG_COMMON_CLK_MEDIATEK=y
-CONFIG_COMMON_CLK_MT2712=y
-# CONFIG_COMMON_CLK_MT2712_BDPSYS is not set
-# CONFIG_COMMON_CLK_MT2712_IMGSYS is not set
-# CONFIG_COMMON_CLK_MT2712_JPGDECSYS is not set
-# CONFIG_COMMON_CLK_MT2712_MFGCFG is not set
-# CONFIG_COMMON_CLK_MT2712_MMSYS is not set
-# CONFIG_COMMON_CLK_MT2712_VDECSYS is not set
-# CONFIG_COMMON_CLK_MT2712_VENCSYS is not set
-CONFIG_COMMON_CLK_MT6765=y
-CONFIG_COMMON_CLK_MT6765_AUDIOSYS=y
-# CONFIG_COMMON_CLK_MT6765_CAMSYS is not set
-# CONFIG_COMMON_CLK_MT6765_GCESYS is not set
-# CONFIG_COMMON_CLK_MT6765_MMSYS is not set
-# CONFIG_COMMON_CLK_MT6765_IMGSYS is not set
-# CONFIG_COMMON_CLK_MT6765_VCODECSYS is not set
-# CONFIG_COMMON_CLK_MT6765_MFGSYS is not set
-# CONFIG_COMMON_CLK_MT6765_MIPI0ASYS is not set
-# CONFIG_COMMON_CLK_MT6765_MIPI0BSYS is not set
-# CONFIG_COMMON_CLK_MT6765_MIPI1ASYS is not set
-# CONFIG_COMMON_CLK_MT6765_MIPI1BSYS is not set
-# CONFIG_COMMON_CLK_MT6765_MIPI2ASYS is not set
-# CONFIG_COMMON_CLK_MT6765_MIPI2BSYS is not set
-# CONFIG_COMMON_CLK_MT6779 is not set
-CONFIG_COMMON_CLK_MT6797=y
-CONFIG_COMMON_CLK_MT6797_MMSYS=y
-CONFIG_COMMON_CLK_MT6797_IMGSYS=y
-CONFIG_COMMON_CLK_MT6797_VDECSYS=y
-CONFIG_COMMON_CLK_MT6797_VENCSYS=y
-CONFIG_COMMON_CLK_MT7622=y
-# CONFIG_COMMON_CLK_MT7622_ETHSYS is not set
-# CONFIG_COMMON_CLK_MT7622_HIFSYS is not set
-# CONFIG_COMMON_CLK_MT7622_AUDSYS is not set
-CONFIG_COMMON_CLK_MT7986=y
-CONFIG_COMMON_CLK_MT7986_ETHSYS=y
-CONFIG_COMMON_CLK_MT8167=y
-CONFIG_COMMON_CLK_MT8167_AUDSYS=y
-CONFIG_COMMON_CLK_MT8167_IMGSYS=y
-CONFIG_COMMON_CLK_MT8167_MFGCFG=y
-CONFIG_COMMON_CLK_MT8167_MMSYS=y
-CONFIG_COMMON_CLK_MT8167_VDECSYS=y
-CONFIG_COMMON_CLK_MT8173=y
-CONFIG_COMMON_CLK_MT8173_MMSYS=y
-CONFIG_COMMON_CLK_MT8183=y
-# CONFIG_COMMON_CLK_MT8183_AUDIOSYS is not set
-# CONFIG_COMMON_CLK_MT8183_CAMSYS is not set
-# CONFIG_COMMON_CLK_MT8183_IMGSYS is not set
-# CONFIG_COMMON_CLK_MT8183_IPU_CORE0 is not set
-# CONFIG_COMMON_CLK_MT8183_IPU_CORE1 is not set
-# CONFIG_COMMON_CLK_MT8183_IPU_ADL is not set
-# CONFIG_COMMON_CLK_MT8183_IPU_CONN is not set
-# CONFIG_COMMON_CLK_MT8183_MFGCFG is not set
-# CONFIG_COMMON_CLK_MT8183_MMSYS is not set
-# CONFIG_COMMON_CLK_MT8183_VDECSYS is not set
-# CONFIG_COMMON_CLK_MT8183_VENCSYS is not set
-CONFIG_COMMON_CLK_MT8192=y
-# CONFIG_COMMON_CLK_MT8192_AUDSYS is not set
-# CONFIG_COMMON_CLK_MT8192_CAMSYS is not set
-# CONFIG_COMMON_CLK_MT8192_IMGSYS is not set
-# CONFIG_COMMON_CLK_MT8192_IMP_IIC_WRAP is not set
-# CONFIG_COMMON_CLK_MT8192_IPESYS is not set
-# CONFIG_COMMON_CLK_MT8192_MDPSYS is not set
-# CONFIG_COMMON_CLK_MT8192_MFGCFG is not set
-# CONFIG_COMMON_CLK_MT8192_MMSYS is not set
-# CONFIG_COMMON_CLK_MT8192_MSDC is not set
-# CONFIG_COMMON_CLK_MT8192_SCP_ADSP is not set
-# CONFIG_COMMON_CLK_MT8192_VDECSYS is not set
-# CONFIG_COMMON_CLK_MT8192_VENCSYS is not set
-# CONFIG_COMMON_CLK_MT8195 is not set
-CONFIG_COMMON_CLK_MT8516=y
-# CONFIG_COMMON_CLK_MT8516_AUDSYS is not set
-# end of Clock driver for MediaTek SoC
-
-# CONFIG_XILINX_VCU is not set
-# CONFIG_HWSPINLOCK is not set
-
-#
-# Clock Source drivers
-#
-CONFIG_TIMER_OF=y
-CONFIG_TIMER_ACPI=y
-CONFIG_TIMER_PROBE=y
-CONFIG_CLKSRC_MMIO=y
-CONFIG_ARM_ARCH_TIMER=y
-CONFIG_ARM_ARCH_TIMER_EVTSTREAM=y
-CONFIG_ARM_ARCH_TIMER_OOL_WORKAROUND=y
-CONFIG_FSL_ERRATUM_A008585=y
-CONFIG_HISILICON_ERRATUM_161010101=y
-CONFIG_ARM64_ERRATUM_858921=y
-CONFIG_MTK_TIMER=y
-# CONFIG_MICROCHIP_PIT64B is not set
-# end of Clock Source drivers
-
-CONFIG_MAILBOX=y
-CONFIG_ARM_MHU=m
-# CONFIG_ARM_MHU_V2 is not set
-CONFIG_PLATFORM_MHU=m
-# CONFIG_PL320_MBOX is not set
-CONFIG_PCC=y
-# CONFIG_ALTERA_MBOX is not set
-# CONFIG_MAILBOX_TEST is not set
-CONFIG_MTK_CMDQ_MBOX=y
-CONFIG_IOMMU_IOVA=y
-CONFIG_IOMMU_API=y
-CONFIG_IOMMU_SUPPORT=y
-
-#
-# Generic IOMMU Pagetable Support
-#
-CONFIG_IOMMU_IO_PGTABLE=y
-CONFIG_IOMMU_IO_PGTABLE_LPAE=y
-# CONFIG_IOMMU_IO_PGTABLE_LPAE_SELFTEST is not set
-CONFIG_IOMMU_IO_PGTABLE_ARMV7S=y
-# CONFIG_IOMMU_IO_PGTABLE_ARMV7S_SELFTEST is not set
-# end of Generic IOMMU Pagetable Support
-
-CONFIG_IOMMU_DEFAULT_DMA_STRICT=y
-# CONFIG_IOMMU_DEFAULT_DMA_LAZY is not set
-# CONFIG_IOMMU_DEFAULT_PASSTHROUGH is not set
-CONFIG_OF_IOMMU=y
-CONFIG_IOMMU_DMA=y
-CONFIG_ARM_SMMU=m
-CONFIG_ARM_SMMU_DISABLE_BYPASS_BY_DEFAULT=y
-# CONFIG_ARM_SMMU_V3 is not set
-CONFIG_MTK_IOMMU=y
-CONFIG_VIRTIO_IOMMU=m
-
-#
-# Remoteproc drivers
-#
-# CONFIG_REMOTEPROC is not set
-# end of Remoteproc drivers
-
-#
-# Rpmsg drivers
-#
-# CONFIG_RPMSG_QCOM_GLINK_RPM is not set
-# CONFIG_RPMSG_VIRTIO is not set
-# end of Rpmsg drivers
-
-# CONFIG_SOUNDWIRE is not set
-
-#
-# SOC (System On Chip) specific Drivers
-#
-
-#
-# Amlogic SoC drivers
-#
-# end of Amlogic SoC drivers
-
-#
-# Broadcom SoC drivers
-#
-# CONFIG_SOC_BRCMSTB is not set
-# end of Broadcom SoC drivers
-
-#
-# NXP/Freescale QorIQ SoC drivers
-#
-# CONFIG_QUICC_ENGINE is not set
-# CONFIG_FSL_RCPM is not set
-# end of NXP/Freescale QorIQ SoC drivers
-
-#
-# i.MX SoC drivers
-#
-# end of i.MX SoC drivers
-
-#
-# Enable LiteX SoC Builder specific drivers
-#
-# CONFIG_LITEX_SOC_CONTROLLER is not set
-# end of Enable LiteX SoC Builder specific drivers
-
-#
-# MediaTek SoC drivers
-#
-CONFIG_MTK_CMDQ=y
-CONFIG_MTK_DEVAPC=m
-CONFIG_MTK_INFRACFG=y
-CONFIG_MTK_PMIC_WRAP=y
-CONFIG_MTK_SCPSYS=y
-CONFIG_MTK_SCPSYS_PM_DOMAINS=y
-CONFIG_MTK_MMSYS=y
-# end of MediaTek SoC drivers
-
-#
-# Qualcomm SoC drivers
-#
-# end of Qualcomm SoC drivers
-
-# CONFIG_SOC_TI is not set
-
-#
-# Xilinx SoC drivers
-#
-# end of Xilinx SoC drivers
-# end of SOC (System On Chip) specific Drivers
-
-CONFIG_PM_DEVFREQ=y
-
-#
-# DEVFREQ Governors
-#
-CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=y
-CONFIG_DEVFREQ_GOV_PERFORMANCE=y
-CONFIG_DEVFREQ_GOV_POWERSAVE=y
-CONFIG_DEVFREQ_GOV_USERSPACE=y
-# CONFIG_DEVFREQ_GOV_PASSIVE is not set
-
-#
-# DEVFREQ Drivers
-#
-CONFIG_PM_DEVFREQ_EVENT=y
-CONFIG_EXTCON=y
-
-#
-# Extcon Device Drivers
-#
-# CONFIG_EXTCON_ADC_JACK is not set
-# CONFIG_EXTCON_FSA9480 is not set
-# CONFIG_EXTCON_GPIO is not set
-# CONFIG_EXTCON_MAX3355 is not set
-CONFIG_EXTCON_PALMAS=y
-# CONFIG_EXTCON_PTN5150 is not set
-# CONFIG_EXTCON_RT8973A is not set
-# CONFIG_EXTCON_SM5502 is not set
-# CONFIG_EXTCON_USB_GPIO is not set
-CONFIG_EXTCON_USBC_CROS_EC=y
-# CONFIG_EXTCON_USBC_TUSB320 is not set
-CONFIG_MEMORY=y
-# CONFIG_ARM_PL172_MPMC is not set
-CONFIG_MTK_SMI=y
-CONFIG_IIO=m
-CONFIG_IIO_BUFFER=y
-# CONFIG_IIO_BUFFER_CB is not set
-# CONFIG_IIO_BUFFER_DMA is not set
-# CONFIG_IIO_BUFFER_DMAENGINE is not set
-# CONFIG_IIO_BUFFER_HW_CONSUMER is not set
-CONFIG_IIO_KFIFO_BUF=m
-CONFIG_IIO_TRIGGERED_BUFFER=m
-CONFIG_IIO_CONFIGFS=m
-CONFIG_IIO_TRIGGER=y
-CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
-# CONFIG_IIO_SW_DEVICE is not set
-# CONFIG_IIO_SW_TRIGGER is not set
-# CONFIG_IIO_TRIGGERED_EVENT is not set
-
-#
-# Accelerometers
-#
-# CONFIG_ADIS16201 is not set
-# CONFIG_ADIS16209 is not set
-# CONFIG_ADXL313_I2C is not set
-# CONFIG_ADXL313_SPI is not set
-# CONFIG_ADXL345_I2C is not set
-# CONFIG_ADXL345_SPI is not set
-# CONFIG_ADXL355_I2C is not set
-# CONFIG_ADXL355_SPI is not set
-# CONFIG_ADXL372_SPI is not set
-# CONFIG_ADXL372_I2C is not set
-# CONFIG_BMA180 is not set
-# CONFIG_BMA220 is not set
-# CONFIG_BMA400 is not set
-# CONFIG_BMC150_ACCEL is not set
-# CONFIG_BMI088_ACCEL is not set
-# CONFIG_DA280 is not set
-# CONFIG_DA311 is not set
-# CONFIG_DMARD06 is not set
-# CONFIG_DMARD09 is not set
-# CONFIG_DMARD10 is not set
-# CONFIG_FXLS8962AF_I2C is not set
-# CONFIG_FXLS8962AF_SPI is not set
-CONFIG_IIO_CROS_EC_ACCEL_LEGACY=m
-# CONFIG_IIO_ST_ACCEL_3AXIS is not set
-# CONFIG_KXSD9 is not set
-# CONFIG_KXCJK1013 is not set
-# CONFIG_MC3230 is not set
-# CONFIG_MMA7455_I2C is not set
-# CONFIG_MMA7455_SPI is not set
-# CONFIG_MMA7660 is not set
-# CONFIG_MMA8452 is not set
-# CONFIG_MMA9551 is not set
-# CONFIG_MMA9553 is not set
-# CONFIG_MXC4005 is not set
-# CONFIG_MXC6255 is not set
-# CONFIG_SCA3000 is not set
-# CONFIG_SCA3300 is not set
-# CONFIG_STK8312 is not set
-# CONFIG_STK8BA50 is not set
-# end of Accelerometers
-
-#
-# Analog to digital converters
-#
-# CONFIG_AD7091R5 is not set
-# CONFIG_AD7124 is not set
-# CONFIG_AD7192 is not set
-# CONFIG_AD7266 is not set
-# CONFIG_AD7291 is not set
-# CONFIG_AD7292 is not set
-# CONFIG_AD7298 is not set
-# CONFIG_AD7476 is not set
-# CONFIG_AD7606_IFACE_PARALLEL is not set
-# CONFIG_AD7606_IFACE_SPI is not set
-# CONFIG_AD7766 is not set
-# CONFIG_AD7768_1 is not set
-# CONFIG_AD7780 is not set
-# CONFIG_AD7791 is not set
-# CONFIG_AD7793 is not set
-# CONFIG_AD7887 is not set
-# CONFIG_AD7923 is not set
-# CONFIG_AD7949 is not set
-# CONFIG_AD799X is not set
-# CONFIG_ADI_AXI_ADC is not set
-# CONFIG_CC10001_ADC is not set
-# CONFIG_ENVELOPE_DETECTOR is not set
-# CONFIG_HI8435 is not set
-# CONFIG_HX711 is not set
-# CONFIG_INA2XX_ADC is not set
-# CONFIG_LTC2471 is not set
-# CONFIG_LTC2485 is not set
-# CONFIG_LTC2496 is not set
-# CONFIG_LTC2497 is not set
-# CONFIG_MAX1027 is not set
-# CONFIG_MAX11100 is not set
-# CONFIG_MAX1118 is not set
-# CONFIG_MAX1241 is not set
-# CONFIG_MAX1363 is not set
-# CONFIG_MAX9611 is not set
-# CONFIG_MCP320X is not set
-# CONFIG_MCP3422 is not set
-# CONFIG_MCP3911 is not set
-CONFIG_MEDIATEK_MT6360_ADC=m
-# CONFIG_MEDIATEK_MT6577_AUXADC is not set
-# CONFIG_NAU7802 is not set
-# CONFIG_PALMAS_GPADC is not set
-# CONFIG_QCOM_SPMI_IADC is not set
-# CONFIG_QCOM_SPMI_VADC is not set
-# CONFIG_QCOM_SPMI_ADC5 is not set
-# CONFIG_SD_ADC_MODULATOR is not set
-# CONFIG_TI_ADC081C is not set
-# CONFIG_TI_ADC0832 is not set
-# CONFIG_TI_ADC084S021 is not set
-# CONFIG_TI_ADC12138 is not set
-# CONFIG_TI_ADC108S102 is not set
-# CONFIG_TI_ADC128S052 is not set
-# CONFIG_TI_ADC161S626 is not set
-# CONFIG_TI_ADS1015 is not set
-# CONFIG_TI_ADS7950 is not set
-# CONFIG_TI_ADS8344 is not set
-# CONFIG_TI_ADS8688 is not set
-# CONFIG_TI_ADS124S08 is not set
-# CONFIG_TI_ADS131E08 is not set
-# CONFIG_TI_TLC4541 is not set
-# CONFIG_TI_TSC2046 is not set
-# CONFIG_VF610_ADC is not set
-# CONFIG_XILINX_XADC is not set
-# end of Analog to digital converters
-
-#
-# Analog to digital and digital to analog converters
-#
-# CONFIG_AD74413R is not set
-# end of Analog to digital and digital to analog converters
-
-#
-# Analog Front Ends
-#
-# CONFIG_IIO_RESCALE is not set
-# end of Analog Front Ends
-
-#
-# Amplifiers
-#
-# CONFIG_AD8366 is not set
-# CONFIG_HMC425 is not set
-# end of Amplifiers
-
-#
-# Capacitance to digital converters
-#
-# CONFIG_AD7150 is not set
-# end of Capacitance to digital converters
-
-#
-# Chemical Sensors
-#
-# CONFIG_ATLAS_PH_SENSOR is not set
-# CONFIG_ATLAS_EZO_SENSOR is not set
-# CONFIG_BME680 is not set
-# CONFIG_CCS811 is not set
-# CONFIG_IAQCORE is not set
-# CONFIG_SCD30_CORE is not set
-# CONFIG_SCD4X is not set
-# CONFIG_SENSIRION_SGP30 is not set
-# CONFIG_SENSIRION_SGP40 is not set
-# CONFIG_SPS30_I2C is not set
-# CONFIG_SENSEAIR_SUNRISE_CO2 is not set
-# CONFIG_VZ89X is not set
-# end of Chemical Sensors
-
-CONFIG_IIO_CROS_EC_SENSORS_CORE=m
-CONFIG_IIO_CROS_EC_SENSORS=m
-CONFIG_IIO_CROS_EC_SENSORS_LID_ANGLE=m
-
-#
-# Hid Sensor IIO Common
-#
-# end of Hid Sensor IIO Common
-
-#
-# IIO SCMI Sensors
-#
-# CONFIG_IIO_SCMI is not set
-# end of IIO SCMI Sensors
-
-#
-# SSP Sensor Common
-#
-# CONFIG_IIO_SSP_SENSORHUB is not set
-# end of SSP Sensor Common
-
-#
-# Digital to analog converters
-#
-# CONFIG_AD3552R is not set
-# CONFIG_AD5064 is not set
-# CONFIG_AD5360 is not set
-# CONFIG_AD5380 is not set
-# CONFIG_AD5421 is not set
-# CONFIG_AD5446 is not set
-# CONFIG_AD5449 is not set
-# CONFIG_AD5592R is not set
-# CONFIG_AD5593R is not set
-# CONFIG_AD5504 is not set
-# CONFIG_AD5624R_SPI is not set
-# CONFIG_AD5686_SPI is not set
-# CONFIG_AD5696_I2C is not set
-# CONFIG_AD5755 is not set
-# CONFIG_AD5758 is not set
-# CONFIG_AD5761 is not set
-# CONFIG_AD5764 is not set
-# CONFIG_AD5766 is not set
-# CONFIG_AD5770R is not set
-# CONFIG_AD5791 is not set
-# CONFIG_AD7293 is not set
-# CONFIG_AD7303 is not set
-# CONFIG_AD8801 is not set
-# CONFIG_DPOT_DAC is not set
-# CONFIG_DS4424 is not set
-# CONFIG_LTC1660 is not set
-# CONFIG_LTC2632 is not set
-# CONFIG_M62332 is not set
-# CONFIG_MAX517 is not set
-# CONFIG_MAX5821 is not set
-# CONFIG_MCP4725 is not set
-# CONFIG_MCP4922 is not set
-# CONFIG_TI_DAC082S085 is not set
-# CONFIG_TI_DAC5571 is not set
-# CONFIG_TI_DAC7311 is not set
-# CONFIG_TI_DAC7612 is not set
-# CONFIG_VF610_DAC is not set
-# end of Digital to analog converters
-
-#
-# IIO dummy driver
-#
-# end of IIO dummy driver
-
-#
-# Filters
-#
-# CONFIG_ADMV8818 is not set
-# end of Filters
-
-#
-# Frequency Synthesizers DDS/PLL
-#
-
-#
-# Clock Generator/Distribution
-#
-# CONFIG_AD9523 is not set
-# end of Clock Generator/Distribution
-
-#
-# Phase-Locked Loop (PLL) frequency synthesizers
-#
-# CONFIG_ADF4350 is not set
-# CONFIG_ADF4371 is not set
-# CONFIG_ADMV1013 is not set
-# CONFIG_ADRF6780 is not set
-# end of Phase-Locked Loop (PLL) frequency synthesizers
-# end of Frequency Synthesizers DDS/PLL
-
-#
-# Digital gyroscope sensors
-#
-# CONFIG_ADIS16080 is not set
-# CONFIG_ADIS16130 is not set
-# CONFIG_ADIS16136 is not set
-# CONFIG_ADIS16260 is not set
-# CONFIG_ADXRS290 is not set
-# CONFIG_ADXRS450 is not set
-# CONFIG_BMG160 is not set
-# CONFIG_FXAS21002C is not set
-# CONFIG_MPU3050_I2C is not set
-# CONFIG_IIO_ST_GYRO_3AXIS is not set
-# CONFIG_ITG3200 is not set
-# end of Digital gyroscope sensors
-
-#
-# Health Sensors
-#
-
-#
-# Heart Rate Monitors
-#
-# CONFIG_AFE4403 is not set
-# CONFIG_AFE4404 is not set
-# CONFIG_MAX30100 is not set
-# CONFIG_MAX30102 is not set
-# end of Heart Rate Monitors
-# end of Health Sensors
-
-#
-# Humidity sensors
-#
-# CONFIG_AM2315 is not set
-# CONFIG_DHT11 is not set
-# CONFIG_HDC100X is not set
-# CONFIG_HDC2010 is not set
-# CONFIG_HTS221 is not set
-# CONFIG_HTU21 is not set
-# CONFIG_SI7005 is not set
-# CONFIG_SI7020 is not set
-# end of Humidity sensors
-
-#
-# Inertial measurement units
-#
-# CONFIG_ADIS16400 is not set
-# CONFIG_ADIS16460 is not set
-# CONFIG_ADIS16475 is not set
-# CONFIG_ADIS16480 is not set
-# CONFIG_BMI160_I2C is not set
-# CONFIG_BMI160_SPI is not set
-# CONFIG_FXOS8700_I2C is not set
-# CONFIG_FXOS8700_SPI is not set
-# CONFIG_KMX61 is not set
-# CONFIG_INV_ICM42600_I2C is not set
-# CONFIG_INV_ICM42600_SPI is not set
-# CONFIG_INV_MPU6050_I2C is not set
-# CONFIG_INV_MPU6050_SPI is not set
-# CONFIG_IIO_ST_LSM6DSX is not set
-# CONFIG_IIO_ST_LSM9DS0 is not set
-# end of Inertial measurement units
-
-#
-# Light sensors
-#
-# CONFIG_ACPI_ALS is not set
-# CONFIG_ADJD_S311 is not set
-# CONFIG_ADUX1020 is not set
-# CONFIG_AL3010 is not set
-# CONFIG_AL3320A is not set
-# CONFIG_APDS9300 is not set
-# CONFIG_APDS9960 is not set
-# CONFIG_AS73211 is not set
-# CONFIG_BH1750 is not set
-# CONFIG_BH1780 is not set
-# CONFIG_CM32181 is not set
-# CONFIG_CM3232 is not set
-# CONFIG_CM3323 is not set
-# CONFIG_CM3605 is not set
-# CONFIG_CM36651 is not set
-CONFIG_IIO_CROS_EC_LIGHT_PROX=m
-# CONFIG_GP2AP002 is not set
-# CONFIG_GP2AP020A00F is not set
-CONFIG_SENSORS_ISL29018=m
-# CONFIG_SENSORS_ISL29028 is not set
-# CONFIG_ISL29125 is not set
-# CONFIG_JSA1212 is not set
-# CONFIG_RPR0521 is not set
-# CONFIG_LTR501 is not set
-# CONFIG_LV0104CS is not set
-# CONFIG_MAX44000 is not set
-# CONFIG_MAX44009 is not set
-# CONFIG_NOA1305 is not set
-# CONFIG_OPT3001 is not set
-# CONFIG_PA12203001 is not set
-# CONFIG_SI1133 is not set
-# CONFIG_SI1145 is not set
-# CONFIG_STK3310 is not set
-# CONFIG_ST_UVIS25 is not set
-# CONFIG_TCS3414 is not set
-# CONFIG_TCS3472 is not set
-CONFIG_SENSORS_TSL2563=m
-CONFIG_TSL2583=m
-# CONFIG_TSL2591 is not set
-# CONFIG_TSL2772 is not set
-# CONFIG_TSL4531 is not set
-# CONFIG_US5182D is not set
-# CONFIG_VCNL4000 is not set
-# CONFIG_VCNL4035 is not set
-# CONFIG_VEML6030 is not set
-# CONFIG_VEML6070 is not set
-# CONFIG_VL6180 is not set
-# CONFIG_ZOPT2201 is not set
-# end of Light sensors
-
-#
-# Magnetometer sensors
-#
-# CONFIG_AK8974 is not set
-# CONFIG_AK8975 is not set
-# CONFIG_AK09911 is not set
-# CONFIG_BMC150_MAGN_I2C is not set
-# CONFIG_BMC150_MAGN_SPI is not set
-# CONFIG_MAG3110 is not set
-# CONFIG_MMC35240 is not set
-# CONFIG_IIO_ST_MAGN_3AXIS is not set
-# CONFIG_SENSORS_HMC5843_I2C is not set
-# CONFIG_SENSORS_HMC5843_SPI is not set
-# CONFIG_SENSORS_RM3100_I2C is not set
-# CONFIG_SENSORS_RM3100_SPI is not set
-# CONFIG_YAMAHA_YAS530 is not set
-# end of Magnetometer sensors
-
-#
-# Multiplexers
-#
-CONFIG_IIO_MUX=m
-# end of Multiplexers
-
-#
-# Inclinometer sensors
-#
-# end of Inclinometer sensors
-
-#
-# Triggers - standalone
-#
-# CONFIG_IIO_INTERRUPT_TRIGGER is not set
-# CONFIG_IIO_SYSFS_TRIGGER is not set
-# end of Triggers - standalone
-
-#
-# Linear and angular position sensors
-#
-# end of Linear and angular position sensors
-
-#
-# Digital potentiometers
-#
-# CONFIG_AD5110 is not set
-# CONFIG_AD5272 is not set
-# CONFIG_DS1803 is not set
-# CONFIG_MAX5432 is not set
-# CONFIG_MAX5481 is not set
-# CONFIG_MAX5487 is not set
-# CONFIG_MCP4018 is not set
-# CONFIG_MCP4131 is not set
-# CONFIG_MCP4531 is not set
-# CONFIG_MCP41010 is not set
-# CONFIG_TPL0102 is not set
-# end of Digital potentiometers
-
-#
-# Digital potentiostats
-#
-# CONFIG_LMP91000 is not set
-# end of Digital potentiostats
-
-#
-# Pressure sensors
-#
-# CONFIG_ABP060MG is not set
-# CONFIG_BMP280 is not set
-CONFIG_IIO_CROS_EC_BARO=m
-# CONFIG_DLHL60D is not set
-# CONFIG_DPS310 is not set
-# CONFIG_HP03 is not set
-# CONFIG_ICP10100 is not set
-# CONFIG_MPL115_I2C is not set
-# CONFIG_MPL115_SPI is not set
-# CONFIG_MPL3115 is not set
-# CONFIG_MS5611 is not set
-# CONFIG_MS5637 is not set
-# CONFIG_IIO_ST_PRESS is not set
-# CONFIG_T5403 is not set
-# CONFIG_HP206C is not set
-# CONFIG_ZPA2326 is not set
-# end of Pressure sensors
-
-#
-# Lightning sensors
-#
-# CONFIG_AS3935 is not set
-# end of Lightning sensors
-
-#
-# Proximity and distance sensors
-#
-# CONFIG_CROS_EC_MKBP_PROXIMITY is not set
-# CONFIG_ISL29501 is not set
-# CONFIG_LIDAR_LITE_V2 is not set
-# CONFIG_MB1232 is not set
-# CONFIG_PING is not set
-# CONFIG_RFD77402 is not set
-# CONFIG_SRF04 is not set
-# CONFIG_SX9310 is not set
-# CONFIG_SX9500 is not set
-# CONFIG_SRF08 is not set
-# CONFIG_VCNL3020 is not set
-# CONFIG_VL53L0X_I2C is not set
-# end of Proximity and distance sensors
-
-#
-# Resolver to digital converters
-#
-# CONFIG_AD2S90 is not set
-# CONFIG_AD2S1200 is not set
-# end of Resolver to digital converters
-
-#
-# Temperature sensors
-#
-# CONFIG_LTC2983 is not set
-# CONFIG_MAXIM_THERMOCOUPLE is not set
-# CONFIG_MLX90614 is not set
-# CONFIG_MLX90632 is not set
-# CONFIG_TMP006 is not set
-# CONFIG_TMP007 is not set
-# CONFIG_TMP117 is not set
-# CONFIG_TSYS01 is not set
-# CONFIG_TSYS02D is not set
-# CONFIG_MAX31856 is not set
-# CONFIG_MAX31865 is not set
-# end of Temperature sensors
-
-CONFIG_PWM=y
-CONFIG_PWM_SYSFS=y
-# CONFIG_PWM_ATMEL_TCB is not set
-CONFIG_PWM_CROS_EC=y
-# CONFIG_PWM_FSL_FTM is not set
-CONFIG_PWM_MTK_DISP=y
-CONFIG_PWM_MEDIATEK=y
-# CONFIG_PWM_PCA9685 is not set
-
-#
-# IRQ chip support
-#
-CONFIG_IRQCHIP=y
-CONFIG_ARM_GIC=y
-CONFIG_ARM_GIC_MAX_NR=1
-CONFIG_ARM_GIC_V3=y
-CONFIG_ARM_GIC_V3_ITS=y
-# CONFIG_AL_FIC is not set
-CONFIG_PARTITION_PERCPU=y
-CONFIG_MST_IRQ=y
-# end of IRQ chip support
-
-# CONFIG_IPACK_BUS is not set
-CONFIG_RESET_CONTROLLER=y
-CONFIG_RESET_SCMI=m
-# CONFIG_RESET_TI_SYSCON is not set
-
-#
-# PHY Subsystem
-#
-CONFIG_GENERIC_PHY=y
-# CONFIG_PHY_XGENE is not set
-# CONFIG_PHY_CAN_TRANSCEIVER is not set
-
-#
-# PHY drivers for Broadcom platforms
-#
-# CONFIG_BCM_KONA_USB2_PHY is not set
-# end of PHY drivers for Broadcom platforms
-
-# CONFIG_PHY_CADENCE_TORRENT is not set
-# CONFIG_PHY_CADENCE_DPHY is not set
-# CONFIG_PHY_CADENCE_SIERRA is not set
-# CONFIG_PHY_CADENCE_SALVO is not set
-# CONFIG_PHY_FSL_IMX8MQ_USB is not set
-# CONFIG_PHY_MIXEL_MIPI_DPHY is not set
-# CONFIG_PHY_FSL_IMX8M_PCIE is not set
-# CONFIG_PHY_PXA_28NM_HSIC is not set
-# CONFIG_PHY_PXA_28NM_USB2 is not set
-CONFIG_PHY_MTK_TPHY=y
-CONFIG_PHY_MTK_UFS=m
-CONFIG_PHY_MTK_XSPHY=m
-CONFIG_PHY_MTK_HDMI=y
-CONFIG_PHY_MTK_MIPI_DSI=y
-# CONFIG_PHY_LAN966X_SERDES is not set
-# CONFIG_PHY_CPCAP_USB is not set
-# CONFIG_PHY_MAPPHONE_MDM6600 is not set
-# CONFIG_PHY_OCELOT_SERDES is not set
-# CONFIG_PHY_QCOM_USB_HS is not set
-# CONFIG_PHY_QCOM_USB_HSIC is not set
-# CONFIG_PHY_TUSB1210 is not set
-# end of PHY Subsystem
-
-CONFIG_POWERCAP=y
-CONFIG_IDLE_INJECT=y
-# CONFIG_DTPM is not set
-# CONFIG_MCB is not set
-
-#
-# Performance monitor support
-#
-# CONFIG_ARM_CCI_PMU is not set
-# CONFIG_ARM_CCN is not set
-# CONFIG_ARM_CMN is not set
-CONFIG_ARM_PMU=y
-CONFIG_ARM_PMU_ACPI=y
-# CONFIG_ARM_SMMU_V3_PMU is not set
-# CONFIG_ARM_DSU_PMU is not set
-# CONFIG_ARM_SPE_PMU is not set
-# CONFIG_ARM_DMC620_PMU is not set
-# CONFIG_HISI_PMU is not set
-# end of Performance monitor support
-
-CONFIG_RAS=y
-
-#
-# Android
-#
-# CONFIG_ANDROID is not set
-# end of Android
-
-# CONFIG_LIBNVDIMM is not set
-# CONFIG_DAX is not set
-CONFIG_NVMEM=y
-CONFIG_NVMEM_SYSFS=y
-CONFIG_MTK_EFUSE=m
-# CONFIG_NVMEM_SPMI_SDAM is not set
-# CONFIG_NVMEM_RMEM is not set
-
-#
-# HW tracing support
-#
-# CONFIG_STM is not set
-# CONFIG_INTEL_TH is not set
-# end of HW tracing support
-
-# CONFIG_FPGA is not set
-# CONFIG_FSI is not set
-# CONFIG_TEE is not set
-CONFIG_MULTIPLEXER=m
-
-#
-# Multiplexer drivers
-#
-# CONFIG_MUX_ADG792A is not set
-# CONFIG_MUX_ADGS1408 is not set
-# CONFIG_MUX_GPIO is not set
-# CONFIG_MUX_MMIO is not set
-# end of Multiplexer drivers
-
-CONFIG_PM_OPP=y
-# CONFIG_SIOX is not set
-# CONFIG_SLIMBUS is not set
-# CONFIG_INTERCONNECT is not set
-# CONFIG_COUNTER is not set
-# CONFIG_MOST is not set
-# end of Device Drivers
-
-#
-# File systems
-#
-CONFIG_DCACHE_WORD_ACCESS=y
-# CONFIG_VALIDATE_FS_PARSER is not set
-CONFIG_FS_IOMAP=y
-# CONFIG_EXT2_FS is not set
-# CONFIG_EXT3_FS is not set
-CONFIG_EXT4_FS=y
-CONFIG_EXT4_USE_FOR_EXT2=y
-CONFIG_EXT4_FS_POSIX_ACL=y
-CONFIG_EXT4_FS_SECURITY=y
-# CONFIG_EXT4_DEBUG is not set
-CONFIG_JBD2=y
-# CONFIG_JBD2_DEBUG is not set
-CONFIG_FS_MBCACHE=y
-# CONFIG_REISERFS_FS is not set
-# CONFIG_JFS_FS is not set
-CONFIG_XFS_FS=m
-CONFIG_XFS_SUPPORT_V4=y
-CONFIG_XFS_QUOTA=y
-CONFIG_XFS_POSIX_ACL=y
-CONFIG_XFS_RT=y
-# CONFIG_XFS_ONLINE_SCRUB is not set
-# CONFIG_XFS_WARN is not set
-# CONFIG_XFS_DEBUG is not set
-# CONFIG_GFS2_FS is not set
-# CONFIG_OCFS2_FS is not set
-CONFIG_BTRFS_FS=m
-CONFIG_BTRFS_FS_POSIX_ACL=y
-# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set
-# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set
-# CONFIG_BTRFS_DEBUG is not set
-# CONFIG_BTRFS_ASSERT is not set
-# CONFIG_BTRFS_FS_REF_VERIFY is not set
-# CONFIG_NILFS2_FS is not set
-CONFIG_F2FS_FS=y
-CONFIG_F2FS_STAT_FS=y
-CONFIG_F2FS_FS_XATTR=y
-CONFIG_F2FS_FS_POSIX_ACL=y
-CONFIG_F2FS_FS_SECURITY=y
-# CONFIG_F2FS_CHECK_FS is not set
-# CONFIG_F2FS_FAULT_INJECTION is not set
-CONFIG_F2FS_FS_COMPRESSION=y
-CONFIG_F2FS_FS_LZO=y
-CONFIG_F2FS_FS_LZORLE=y
-CONFIG_F2FS_FS_LZ4=y
-CONFIG_F2FS_FS_LZ4HC=y
-CONFIG_F2FS_FS_ZSTD=y
-CONFIG_F2FS_IOSTAT=y
-# CONFIG_FS_DAX is not set
-CONFIG_FS_POSIX_ACL=y
-CONFIG_EXPORTFS=y
-CONFIG_EXPORTFS_BLOCK_OPS=y
-CONFIG_FILE_LOCKING=y
-CONFIG_FS_ENCRYPTION=y
-CONFIG_FS_ENCRYPTION_ALGS=y
-CONFIG_FS_VERITY=y
-# CONFIG_FS_VERITY_DEBUG is not set
-CONFIG_FS_VERITY_BUILTIN_SIGNATURES=y
-CONFIG_FSNOTIFY=y
-CONFIG_DNOTIFY=y
-CONFIG_INOTIFY_USER=y
-CONFIG_FANOTIFY=y
-# CONFIG_QUOTA is not set
-# CONFIG_QUOTA_NETLINK_INTERFACE is not set
-CONFIG_QUOTACTL=y
-# CONFIG_AUTOFS4_FS is not set
-# CONFIG_AUTOFS_FS is not set
-CONFIG_FUSE_FS=m
-CONFIG_CUSE=m
-CONFIG_VIRTIO_FS=m
-CONFIG_OVERLAY_FS=m
-# CONFIG_OVERLAY_FS_REDIRECT_DIR is not set
-CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y
-# CONFIG_OVERLAY_FS_INDEX is not set
-# CONFIG_OVERLAY_FS_XINO_AUTO is not set
-# CONFIG_OVERLAY_FS_METACOPY is not set
-
-#
-# Caches
-#
-CONFIG_NETFS_SUPPORT=m
-# CONFIG_NETFS_STATS is not set
-CONFIG_FSCACHE=m
-# CONFIG_FSCACHE_STATS is not set
-# CONFIG_FSCACHE_DEBUG is not set
-CONFIG_CACHEFILES=m
-# CONFIG_CACHEFILES_DEBUG is not set
-# CONFIG_CACHEFILES_ERROR_INJECTION is not set
-# end of Caches
-
-#
-# CD-ROM/DVD Filesystems
-#
-CONFIG_ISO9660_FS=m
-CONFIG_JOLIET=y
-CONFIG_ZISOFS=y
-CONFIG_UDF_FS=m
-# end of CD-ROM/DVD Filesystems
-
-#
-# DOS/FAT/EXFAT/NT Filesystems
-#
-CONFIG_FAT_FS=m
-CONFIG_MSDOS_FS=m
-CONFIG_VFAT_FS=m
-CONFIG_FAT_DEFAULT_CODEPAGE=437
-CONFIG_FAT_DEFAULT_IOCHARSET="ascii"
-CONFIG_FAT_DEFAULT_UTF8=y
-CONFIG_EXFAT_FS=m
-CONFIG_EXFAT_DEFAULT_IOCHARSET="utf8"
-CONFIG_NTFS_FS=m
-# CONFIG_NTFS_DEBUG is not set
-CONFIG_NTFS_RW=y
-CONFIG_NTFS3_FS=m
-# CONFIG_NTFS3_64BIT_CLUSTER is not set
-# CONFIG_NTFS3_LZX_XPRESS is not set
-# CONFIG_NTFS3_FS_POSIX_ACL is not set
-# end of DOS/FAT/EXFAT/NT Filesystems
-
-#
-# Pseudo filesystems
-#
-CONFIG_PROC_FS=y
-# CONFIG_PROC_KCORE is not set
-CONFIG_PROC_SYSCTL=y
-CONFIG_PROC_PAGE_MONITOR=y
-CONFIG_PROC_CHILDREN=y
-CONFIG_KERNFS=y
-CONFIG_SYSFS=y
-CONFIG_TMPFS=y
-CONFIG_TMPFS_POSIX_ACL=y
-CONFIG_TMPFS_XATTR=y
-# CONFIG_TMPFS_INODE64 is not set
-CONFIG_ARCH_SUPPORTS_HUGETLBFS=y
-# CONFIG_HUGETLBFS is not set
-CONFIG_MEMFD_CREATE=y
-CONFIG_ARCH_HAS_GIGANTIC_PAGE=y
-CONFIG_CONFIGFS_FS=m
-CONFIG_EFIVAR_FS=m
-# end of Pseudo filesystems
-
-CONFIG_MISC_FILESYSTEMS=y
-# CONFIG_ORANGEFS_FS is not set
-# CONFIG_ADFS_FS is not set
-# CONFIG_AFFS_FS is not set
-CONFIG_ECRYPT_FS=m
-# CONFIG_ECRYPT_FS_MESSAGING is not set
-CONFIG_HFS_FS=m
-CONFIG_HFSPLUS_FS=m
-# CONFIG_BEFS_FS is not set
-# CONFIG_BFS_FS is not set
-# CONFIG_EFS_FS is not set
-# CONFIG_CRAMFS is not set
-CONFIG_SQUASHFS=m
-CONFIG_SQUASHFS_FILE_CACHE=y
-# CONFIG_SQUASHFS_FILE_DIRECT is not set
-CONFIG_SQUASHFS_DECOMP_SINGLE=y
-# CONFIG_SQUASHFS_DECOMP_MULTI is not set
-# CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU is not set
-CONFIG_SQUASHFS_XATTR=y
-CONFIG_SQUASHFS_ZLIB=y
-CONFIG_SQUASHFS_LZ4=y
-CONFIG_SQUASHFS_LZO=y
-CONFIG_SQUASHFS_XZ=y
-CONFIG_SQUASHFS_ZSTD=y
-# CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set
-# CONFIG_SQUASHFS_EMBEDDED is not set
-CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3
-# CONFIG_VXFS_FS is not set
-CONFIG_MINIX_FS=m
-# CONFIG_OMFS_FS is not set
-# CONFIG_HPFS_FS is not set
-# CONFIG_QNX4FS_FS is not set
-# CONFIG_QNX6FS_FS is not set
-# CONFIG_ROMFS_FS is not set
-CONFIG_PSTORE=m
-CONFIG_PSTORE_DEFAULT_KMSG_BYTES=10240
-CONFIG_PSTORE_DEFLATE_COMPRESS=m
-# CONFIG_PSTORE_LZO_COMPRESS is not set
-# CONFIG_PSTORE_LZ4_COMPRESS is not set
-# CONFIG_PSTORE_LZ4HC_COMPRESS is not set
-# CONFIG_PSTORE_842_COMPRESS is not set
-# CONFIG_PSTORE_ZSTD_COMPRESS is not set
-CONFIG_PSTORE_COMPRESS=y
-CONFIG_PSTORE_DEFLATE_COMPRESS_DEFAULT=y
-CONFIG_PSTORE_COMPRESS_DEFAULT="deflate"
-# CONFIG_PSTORE_CONSOLE is not set
-# CONFIG_PSTORE_PMSG is not set
-# CONFIG_PSTORE_RAM is not set
-# CONFIG_PSTORE_BLK is not set
-# CONFIG_SYSV_FS is not set
-# CONFIG_UFS_FS is not set
-# CONFIG_EROFS_FS is not set
-CONFIG_NETWORK_FILESYSTEMS=y
-CONFIG_NFS_FS=m
-# CONFIG_NFS_V2 is not set
-CONFIG_NFS_V3=m
-CONFIG_NFS_V3_ACL=y
-CONFIG_NFS_V4=m
-# CONFIG_NFS_SWAP is not set
-# CONFIG_NFS_V4_1 is not set
-# CONFIG_NFS_FSCACHE is not set
-# CONFIG_NFS_USE_LEGACY_DNS is not set
-CONFIG_NFS_USE_KERNEL_DNS=y
-CONFIG_NFS_DISABLE_UDP_SUPPORT=y
-CONFIG_NFSD=m
-CONFIG_NFSD_V2_ACL=y
-CONFIG_NFSD_V3=y
-CONFIG_NFSD_V3_ACL=y
-CONFIG_NFSD_V4=y
-# CONFIG_NFSD_BLOCKLAYOUT is not set
-# CONFIG_NFSD_SCSILAYOUT is not set
-# CONFIG_NFSD_FLEXFILELAYOUT is not set
-CONFIG_GRACE_PERIOD=m
-CONFIG_LOCKD=m
-CONFIG_LOCKD_V4=y
-CONFIG_NFS_ACL_SUPPORT=m
-CONFIG_NFS_COMMON=y
-CONFIG_SUNRPC=m
-CONFIG_SUNRPC_GSS=m
-CONFIG_RPCSEC_GSS_KRB5=m
-# CONFIG_SUNRPC_DISABLE_INSECURE_ENCTYPES is not set
-# CONFIG_SUNRPC_DEBUG is not set
-# CONFIG_CEPH_FS is not set
-CONFIG_CIFS=m
-# CONFIG_CIFS_STATS2 is not set
-CONFIG_CIFS_ALLOW_INSECURE_LEGACY=y
-CONFIG_CIFS_UPCALL=y
-CONFIG_CIFS_XATTR=y
-CONFIG_CIFS_POSIX=y
-CONFIG_CIFS_DEBUG=y
-# CONFIG_CIFS_DEBUG2 is not set
-# CONFIG_CIFS_DEBUG_DUMP_KEYS is not set
-CONFIG_CIFS_DFS_UPCALL=y
-CONFIG_CIFS_SWN_UPCALL=y
-CONFIG_CIFS_FSCACHE=y
-CONFIG_SMB_SERVER=m
-CONFIG_SMB_SERVER_CHECK_CAP_NET_ADMIN=y
-# CONFIG_SMB_SERVER_KERBEROS5 is not set
-CONFIG_SMBFS_COMMON=m
-# CONFIG_CODA_FS is not set
-# CONFIG_AFS_FS is not set
-CONFIG_NLS=y
-CONFIG_NLS_DEFAULT="utf8"
-CONFIG_NLS_CODEPAGE_437=m
-# CONFIG_NLS_CODEPAGE_737 is not set
-# CONFIG_NLS_CODEPAGE_775 is not set
-CONFIG_NLS_CODEPAGE_850=m
-CONFIG_NLS_CODEPAGE_852=m
-CONFIG_NLS_CODEPAGE_855=m
-# CONFIG_NLS_CODEPAGE_857 is not set
-# CONFIG_NLS_CODEPAGE_860 is not set
-# CONFIG_NLS_CODEPAGE_861 is not set
-# CONFIG_NLS_CODEPAGE_862 is not set
-# CONFIG_NLS_CODEPAGE_863 is not set
-# CONFIG_NLS_CODEPAGE_864 is not set
-# CONFIG_NLS_CODEPAGE_865 is not set
-CONFIG_NLS_CODEPAGE_866=m
-# CONFIG_NLS_CODEPAGE_869 is not set
-# CONFIG_NLS_CODEPAGE_936 is not set
-# CONFIG_NLS_CODEPAGE_950 is not set
-# CONFIG_NLS_CODEPAGE_932 is not set
-# CONFIG_NLS_CODEPAGE_949 is not set
-# CONFIG_NLS_CODEPAGE_874 is not set
-# CONFIG_NLS_ISO8859_8 is not set
-CONFIG_NLS_CODEPAGE_1250=m
-CONFIG_NLS_CODEPAGE_1251=m
-CONFIG_NLS_ASCII=m
-CONFIG_NLS_ISO8859_1=m
-CONFIG_NLS_ISO8859_2=m
-# CONFIG_NLS_ISO8859_3 is not set
-# CONFIG_NLS_ISO8859_4 is not set
-CONFIG_NLS_ISO8859_5=m
-# CONFIG_NLS_ISO8859_6 is not set
-# CONFIG_NLS_ISO8859_7 is not set
-# CONFIG_NLS_ISO8859_9 is not set
-# CONFIG_NLS_ISO8859_13 is not set
-# CONFIG_NLS_ISO8859_14 is not set
-# CONFIG_NLS_ISO8859_15 is not set
-CONFIG_NLS_KOI8_R=m
-# CONFIG_NLS_KOI8_U is not set
-# CONFIG_NLS_MAC_ROMAN is not set
-# CONFIG_NLS_MAC_CELTIC is not set
-# CONFIG_NLS_MAC_CENTEURO is not set
-# CONFIG_NLS_MAC_CROATIAN is not set
-# CONFIG_NLS_MAC_CYRILLIC is not set
-# CONFIG_NLS_MAC_GAELIC is not set
-# CONFIG_NLS_MAC_GREEK is not set
-# CONFIG_NLS_MAC_ICELAND is not set
-# CONFIG_NLS_MAC_INUIT is not set
-# CONFIG_NLS_MAC_ROMANIAN is not set
-# CONFIG_NLS_MAC_TURKISH is not set
-CONFIG_NLS_UTF8=m
-CONFIG_DLM=m
-# CONFIG_DLM_DEBUG is not set
-# CONFIG_UNICODE is not set
-CONFIG_IO_WQ=y
-# end of File systems
-
-#
-# Security options
-#
-CONFIG_KEYS=y
-# CONFIG_KEYS_REQUEST_CACHE is not set
-CONFIG_PERSISTENT_KEYRINGS=y
-CONFIG_ENCRYPTED_KEYS=y
-CONFIG_KEY_DH_OPERATIONS=y
-# CONFIG_SECURITY_DMESG_RESTRICT is not set
-# CONFIG_SECURITY is not set
-# CONFIG_SECURITYFS is not set
-CONFIG_HAVE_HARDENED_USERCOPY_ALLOCATOR=y
-# CONFIG_HARDENED_USERCOPY is not set
-# CONFIG_FORTIFY_SOURCE is not set
-# CONFIG_STATIC_USERMODEHELPER is not set
-# CONFIG_IMA_SECURE_AND_OR_TRUSTED_BOOT is not set
-CONFIG_DEFAULT_SECURITY_DAC=y
-CONFIG_LSM=""
-
-#
-# Kernel hardening options
-#
-
-#
-# Memory initialization
-#
-CONFIG_INIT_STACK_NONE=y
-CONFIG_INIT_ON_ALLOC_DEFAULT_ON=y
-# CONFIG_INIT_ON_FREE_DEFAULT_ON is not set
-CONFIG_CC_HAS_ZERO_CALL_USED_REGS=y
-# CONFIG_ZERO_CALL_USED_REGS is not set
-# end of Memory initialization
-# end of Kernel hardening options
-# end of Security options
-
-CONFIG_XOR_BLOCKS=m
-CONFIG_CRYPTO=y
-
-#
-# Crypto core or helper
-#
-# CONFIG_CRYPTO_FIPS is not set
-CONFIG_CRYPTO_ALGAPI=y
-CONFIG_CRYPTO_ALGAPI2=y
-CONFIG_CRYPTO_AEAD=m
-CONFIG_CRYPTO_AEAD2=y
-CONFIG_CRYPTO_SKCIPHER=y
-CONFIG_CRYPTO_SKCIPHER2=y
-CONFIG_CRYPTO_HASH=y
-CONFIG_CRYPTO_HASH2=y
-CONFIG_CRYPTO_RNG=y
-CONFIG_CRYPTO_RNG2=y
-CONFIG_CRYPTO_RNG_DEFAULT=y
-CONFIG_CRYPTO_AKCIPHER2=y
-CONFIG_CRYPTO_AKCIPHER=y
-CONFIG_CRYPTO_KPP2=y
-CONFIG_CRYPTO_KPP=y
-CONFIG_CRYPTO_ACOMP2=y
-CONFIG_CRYPTO_MANAGER=y
-CONFIG_CRYPTO_MANAGER2=y
-CONFIG_CRYPTO_USER=m
-# CONFIG_CRYPTO_MANAGER_DISABLE_TESTS is not set
-CONFIG_CRYPTO_GF128MUL=m
-CONFIG_CRYPTO_NULL=m
-CONFIG_CRYPTO_NULL2=y
-CONFIG_CRYPTO_PCRYPT=m
-CONFIG_CRYPTO_CRYPTD=m
-CONFIG_CRYPTO_AUTHENC=m
-# CONFIG_CRYPTO_TEST is not set
-CONFIG_CRYPTO_ENGINE=m
-
-#
-# Public-key cryptography
-#
-CONFIG_CRYPTO_RSA=y
-CONFIG_CRYPTO_DH=y
-CONFIG_CRYPTO_ECC=y
-CONFIG_CRYPTO_ECDH=m
-CONFIG_CRYPTO_ECDSA=y
-CONFIG_CRYPTO_ECRDSA=m
-# CONFIG_CRYPTO_SM2 is not set
-CONFIG_CRYPTO_CURVE25519=m
-
-#
-# Authenticated Encryption with Associated Data
-#
-CONFIG_CRYPTO_CCM=m
-CONFIG_CRYPTO_GCM=m
-CONFIG_CRYPTO_CHACHA20POLY1305=m
-# CONFIG_CRYPTO_AEGIS128 is not set
-CONFIG_CRYPTO_SEQIV=m
-CONFIG_CRYPTO_ECHAINIV=m
-
-#
-# Block modes
-#
-CONFIG_CRYPTO_CBC=y
-# CONFIG_CRYPTO_CFB is not set
-CONFIG_CRYPTO_CTR=m
-CONFIG_CRYPTO_CTS=y
-CONFIG_CRYPTO_ECB=y
-CONFIG_CRYPTO_LRW=m
-# CONFIG_CRYPTO_OFB is not set
-# CONFIG_CRYPTO_PCBC is not set
-CONFIG_CRYPTO_XTS=y
-# CONFIG_CRYPTO_KEYWRAP is not set
-CONFIG_CRYPTO_NHPOLY1305=m
-CONFIG_CRYPTO_ADIANTUM=m
-CONFIG_CRYPTO_ESSIV=m
-
-#
-# Hash modes
-#
-CONFIG_CRYPTO_CMAC=m
-CONFIG_CRYPTO_HMAC=y
-# CONFIG_CRYPTO_XCBC is not set
-# CONFIG_CRYPTO_VMAC is not set
-
-#
-# Digest
-#
-CONFIG_CRYPTO_CRC32C=y
-CONFIG_CRYPTO_CRC32=y
-CONFIG_CRYPTO_XXHASH=m
-CONFIG_CRYPTO_BLAKE2B=m
-CONFIG_CRYPTO_BLAKE2S=m
-CONFIG_CRYPTO_CRCT10DIF=y
-CONFIG_CRYPTO_GHASH=m
-CONFIG_CRYPTO_POLY1305=m
-CONFIG_CRYPTO_MD4=m
-CONFIG_CRYPTO_MD5=y
-# CONFIG_CRYPTO_MICHAEL_MIC is not set
-CONFIG_CRYPTO_RMD160=m
-CONFIG_CRYPTO_SHA1=y
-CONFIG_CRYPTO_SHA256=y
-CONFIG_CRYPTO_SHA512=y
-CONFIG_CRYPTO_SHA3=m
-CONFIG_CRYPTO_SM3=m
-CONFIG_CRYPTO_STREEBOG=m
-CONFIG_CRYPTO_WP512=m
-
-#
-# Ciphers
-#
-CONFIG_CRYPTO_AES=y
-# CONFIG_CRYPTO_AES_TI is not set
-# CONFIG_CRYPTO_ANUBIS is not set
-CONFIG_CRYPTO_ARC4=m
-CONFIG_CRYPTO_BLOWFISH=m
-CONFIG_CRYPTO_BLOWFISH_COMMON=m
-# CONFIG_CRYPTO_CAMELLIA is not set
-# CONFIG_CRYPTO_CAST5 is not set
-# CONFIG_CRYPTO_CAST6 is not set
-CONFIG_CRYPTO_DES=m
-# CONFIG_CRYPTO_FCRYPT is not set
-# CONFIG_CRYPTO_KHAZAD is not set
-CONFIG_CRYPTO_CHACHA20=m
-# CONFIG_CRYPTO_SEED is not set
-CONFIG_CRYPTO_SERPENT=m
-CONFIG_CRYPTO_SM4=m
-# CONFIG_CRYPTO_TEA is not set
-CONFIG_CRYPTO_TWOFISH=m
-CONFIG_CRYPTO_TWOFISH_COMMON=m
-
-#
-# Compression
-#
-CONFIG_CRYPTO_DEFLATE=m
-CONFIG_CRYPTO_LZO=y
-# CONFIG_CRYPTO_842 is not set
-# CONFIG_CRYPTO_LZ4 is not set
-# CONFIG_CRYPTO_LZ4HC is not set
-CONFIG_CRYPTO_ZSTD=y
-
-#
-# Random Number Generation
-#
-# CONFIG_CRYPTO_ANSI_CPRNG is not set
-CONFIG_CRYPTO_DRBG_MENU=y
-CONFIG_CRYPTO_DRBG_HMAC=y
-# CONFIG_CRYPTO_DRBG_HASH is not set
-# CONFIG_CRYPTO_DRBG_CTR is not set
-CONFIG_CRYPTO_DRBG=y
-CONFIG_CRYPTO_JITTERENTROPY=y
-CONFIG_CRYPTO_KDF800108_CTR=y
-CONFIG_CRYPTO_USER_API=m
-CONFIG_CRYPTO_USER_API_HASH=m
-CONFIG_CRYPTO_USER_API_SKCIPHER=m
-# CONFIG_CRYPTO_USER_API_RNG is not set
-# CONFIG_CRYPTO_USER_API_AEAD is not set
-CONFIG_CRYPTO_USER_API_ENABLE_OBSOLETE=y
-# CONFIG_CRYPTO_STATS is not set
-CONFIG_CRYPTO_HASH_INFO=y
-CONFIG_CRYPTO_HW=y
-# CONFIG_CRYPTO_DEV_ATMEL_ECC is not set
-# CONFIG_CRYPTO_DEV_ATMEL_SHA204A is not set
-# CONFIG_CRYPTO_DEV_CCP is not set
-CONFIG_CRYPTO_DEV_VIRTIO=m
-# CONFIG_CRYPTO_DEV_SAFEXCEL is not set
-# CONFIG_CRYPTO_DEV_CCREE is not set
-# CONFIG_CRYPTO_DEV_HISI_SEC is not set
-# CONFIG_CRYPTO_DEV_HISI_TRNG is not set
-# CONFIG_CRYPTO_DEV_AMLOGIC_GXL is not set
-CONFIG_ASYMMETRIC_KEY_TYPE=y
-CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=y
-CONFIG_X509_CERTIFICATE_PARSER=y
-CONFIG_PKCS8_PRIVATE_KEY_PARSER=m
-CONFIG_PKCS7_MESSAGE_PARSER=y
-# CONFIG_PKCS7_TEST_KEY is not set
-# CONFIG_SIGNED_PE_FILE_VERIFICATION is not set
-
-#
-# Certificates for signature checking
-#
-CONFIG_MODULE_SIG_KEY="certs/signing_key.pem"
-CONFIG_MODULE_SIG_KEY_TYPE_RSA=y
-# CONFIG_MODULE_SIG_KEY_TYPE_ECDSA is not set
-CONFIG_SYSTEM_TRUSTED_KEYRING=y
-CONFIG_SYSTEM_TRUSTED_KEYS=""
-# CONFIG_SYSTEM_EXTRA_CERTIFICATE is not set
-# CONFIG_SECONDARY_TRUSTED_KEYRING is not set
-# CONFIG_SYSTEM_BLACKLIST_KEYRING is not set
-# end of Certificates for signature checking
-
-#
-# Library routines
-#
-CONFIG_RAID6_PQ=m
-# CONFIG_RAID6_PQ_BENCHMARK is not set
-CONFIG_LINEAR_RANGES=y
-# CONFIG_PACKING is not set
-CONFIG_BITREVERSE=y
-CONFIG_HAVE_ARCH_BITREVERSE=y
-CONFIG_GENERIC_STRNCPY_FROM_USER=y
-CONFIG_GENERIC_STRNLEN_USER=y
-CONFIG_GENERIC_NET_UTILS=y
-# CONFIG_CORDIC is not set
-# CONFIG_PRIME_NUMBERS is not set
-CONFIG_RATIONAL=y
-CONFIG_GENERIC_PCI_IOMAP=y
-CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y
-CONFIG_ARCH_HAS_FAST_MULTIPLIER=y
-CONFIG_ARCH_USE_SYM_ANNOTATIONS=y
-# CONFIG_INDIRECT_PIO is not set
-
-#
-# Crypto library routines
-#
-CONFIG_CRYPTO_LIB_AES=y
-CONFIG_CRYPTO_LIB_ARC4=m
-CONFIG_CRYPTO_LIB_BLAKE2S_GENERIC=y
-CONFIG_CRYPTO_ARCH_HAVE_LIB_CHACHA=m
-CONFIG_CRYPTO_LIB_CHACHA_GENERIC=m
-CONFIG_CRYPTO_LIB_CHACHA=m
-CONFIG_CRYPTO_LIB_CURVE25519_GENERIC=m
-CONFIG_CRYPTO_LIB_CURVE25519=m
-CONFIG_CRYPTO_LIB_DES=m
-CONFIG_CRYPTO_LIB_POLY1305_RSIZE=9
-CONFIG_CRYPTO_ARCH_HAVE_LIB_POLY1305=m
-CONFIG_CRYPTO_LIB_POLY1305_GENERIC=m
-CONFIG_CRYPTO_LIB_POLY1305=m
-CONFIG_CRYPTO_LIB_CHACHA20POLY1305=m
-CONFIG_CRYPTO_LIB_SHA256=y
-CONFIG_CRYPTO_LIB_SM4=m
-# end of Crypto library routines
-
-CONFIG_CRC_CCITT=y
-CONFIG_CRC16=y
-CONFIG_CRC_T10DIF=y
-CONFIG_CRC_ITU_T=m
-CONFIG_CRC32=y
-# CONFIG_CRC32_SELFTEST is not set
-CONFIG_CRC32_SLICEBY8=y
-# CONFIG_CRC32_SLICEBY4 is not set
-# CONFIG_CRC32_SARWATE is not set
-# CONFIG_CRC32_BIT is not set
-# CONFIG_CRC64 is not set
-# CONFIG_CRC4 is not set
-# CONFIG_CRC7 is not set
-CONFIG_LIBCRC32C=y
-CONFIG_CRC8=m
-CONFIG_XXHASH=y
-CONFIG_AUDIT_ARCH_COMPAT_GENERIC=y
-# CONFIG_RANDOM32_SELFTEST is not set
-CONFIG_ZLIB_INFLATE=m
-CONFIG_ZLIB_DEFLATE=m
-CONFIG_LZO_COMPRESS=y
-CONFIG_LZO_DECOMPRESS=y
-CONFIG_LZ4_COMPRESS=y
-CONFIG_LZ4HC_COMPRESS=y
-CONFIG_LZ4_DECOMPRESS=y
-CONFIG_ZSTD_COMPRESS=y
-CONFIG_ZSTD_DECOMPRESS=y
-CONFIG_XZ_DEC=y
-CONFIG_XZ_DEC_X86=y
-CONFIG_XZ_DEC_POWERPC=y
-CONFIG_XZ_DEC_IA64=y
-CONFIG_XZ_DEC_ARM=y
-CONFIG_XZ_DEC_ARMTHUMB=y
-CONFIG_XZ_DEC_SPARC=y
-# CONFIG_XZ_DEC_MICROLZMA is not set
-CONFIG_XZ_DEC_BCJ=y
-# CONFIG_XZ_DEC_TEST is not set
-CONFIG_GENERIC_ALLOCATOR=y
-CONFIG_TEXTSEARCH=y
-CONFIG_TEXTSEARCH_KMP=m
-CONFIG_TEXTSEARCH_BM=m
-CONFIG_TEXTSEARCH_FSM=m
-CONFIG_INTERVAL_TREE=y
-CONFIG_ASSOCIATIVE_ARRAY=y
-CONFIG_HAS_IOMEM=y
-CONFIG_HAS_DMA=y
-CONFIG_DMA_OPS=y
-CONFIG_NEED_SG_DMA_LENGTH=y
-CONFIG_NEED_DMA_MAP_STATE=y
-CONFIG_ARCH_DMA_ADDR_T_64BIT=y
-CONFIG_DMA_DECLARE_COHERENT=y
-CONFIG_ARCH_HAS_SETUP_DMA_OPS=y
-CONFIG_ARCH_HAS_TEARDOWN_DMA_OPS=y
-CONFIG_ARCH_HAS_SYNC_DMA_FOR_DEVICE=y
-CONFIG_ARCH_HAS_SYNC_DMA_FOR_CPU=y
-CONFIG_ARCH_HAS_DMA_PREP_COHERENT=y
-CONFIG_SWIOTLB=y
-# CONFIG_DMA_RESTRICTED_POOL is not set
-CONFIG_DMA_NONCOHERENT_MMAP=y
-CONFIG_DMA_COHERENT_POOL=y
-CONFIG_DMA_REMAP=y
-CONFIG_DMA_DIRECT_REMAP=y
-CONFIG_DMA_CMA=y
-# CONFIG_DMA_PERNUMA_CMA is not set
-
-#
-# Default contiguous memory area size:
-#
-CONFIG_CMA_SIZE_MBYTES=16
-CONFIG_CMA_SIZE_SEL_MBYTES=y
-# CONFIG_CMA_SIZE_SEL_PERCENTAGE is not set
-# CONFIG_CMA_SIZE_SEL_MIN is not set
-# CONFIG_CMA_SIZE_SEL_MAX is not set
-CONFIG_CMA_ALIGNMENT=8
-# CONFIG_DMA_API_DEBUG is not set
-CONFIG_SGL_ALLOC=y
-CONFIG_CPU_RMAP=y
-CONFIG_DQL=y
-CONFIG_GLOB=y
-# CONFIG_GLOB_SELFTEST is not set
-CONFIG_NLATTR=y
-CONFIG_CLZ_TAB=y
-CONFIG_IRQ_POLL=y
-CONFIG_MPILIB=y
-CONFIG_LIBFDT=y
-CONFIG_OID_REGISTRY=y
-CONFIG_UCS2_STRING=y
-CONFIG_HAVE_GENERIC_VDSO=y
-CONFIG_GENERIC_GETTIMEOFDAY=y
-CONFIG_GENERIC_VDSO_TIME_NS=y
-CONFIG_FONT_SUPPORT=y
-CONFIG_FONTS=y
-# CONFIG_FONT_8x8 is not set
-# CONFIG_FONT_8x16 is not set
-# CONFIG_FONT_6x11 is not set
-# CONFIG_FONT_7x14 is not set
-# CONFIG_FONT_PEARL_8x8 is not set
-# CONFIG_FONT_ACORN_8x8 is not set
-# CONFIG_FONT_MINI_4x6 is not set
-# CONFIG_FONT_6x10 is not set
-# CONFIG_FONT_10x18 is not set
-# CONFIG_FONT_SUN8x16 is not set
-# CONFIG_FONT_SUN12x22 is not set
-CONFIG_FONT_TER12x24=y
-# CONFIG_FONT_TER16x32 is not set
-# CONFIG_FONT_6x8 is not set
-CONFIG_SG_POOL=y
-CONFIG_ARCH_STACKWALK=y
-CONFIG_SBITMAP=y
-# end of Library routines
-
-CONFIG_GENERIC_LIB_DEVMEM_IS_ALLOWED=y
-
-#
-# Kernel hacking
-#
-
-#
-# printk and dmesg options
-#
-CONFIG_PRINTK_TIME=y
-# CONFIG_PRINTK_CALLER is not set
-# CONFIG_STACKTRACE_BUILD_ID is not set
-CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7
-CONFIG_CONSOLE_LOGLEVEL_QUIET=4
-CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4
-# CONFIG_DYNAMIC_DEBUG is not set
-# CONFIG_DYNAMIC_DEBUG_CORE is not set
-CONFIG_SYMBOLIC_ERRNAME=y
-CONFIG_DEBUG_BUGVERBOSE=y
-# end of printk and dmesg options
-
-#
-# Compile-time checks and compiler options
-#
-CONFIG_FRAME_WARN=2048
-# CONFIG_STRIP_ASM_SYMS is not set
-# CONFIG_HEADERS_INSTALL is not set
-# CONFIG_DEBUG_SECTION_MISMATCH is not set
-CONFIG_SECTION_MISMATCH_WARN_ONLY=y
-CONFIG_ARCH_WANT_FRAME_POINTERS=y
-CONFIG_FRAME_POINTER=y
-# end of Compile-time checks and compiler options
-
-#
-# Generic Kernel Debugging Instruments
-#
-# CONFIG_MAGIC_SYSRQ is not set
-# CONFIG_DEBUG_FS is not set
-CONFIG_HAVE_ARCH_KGDB=y
-CONFIG_ARCH_HAS_UBSAN_SANITIZE_ALL=y
-# CONFIG_UBSAN is not set
-CONFIG_HAVE_KCSAN_COMPILER=y
-# end of Generic Kernel Debugging Instruments
-
-# CONFIG_DEBUG_KERNEL is not set
-
-#
-# Networking Debugging
-#
-# end of Networking Debugging
-
-#
-# Memory Debugging
-#
-# CONFIG_PAGE_EXTENSION is not set
-# CONFIG_PAGE_POISONING is not set
-# CONFIG_DEBUG_RODATA_TEST is not set
-CONFIG_ARCH_HAS_DEBUG_WX=y
-# CONFIG_DEBUG_WX is not set
-CONFIG_GENERIC_PTDUMP=y
-# CONFIG_SLUB_DEBUG_ON is not set
-# CONFIG_SLUB_STATS is not set
-CONFIG_HAVE_DEBUG_KMEMLEAK=y
-CONFIG_ARCH_HAS_DEBUG_VM_PGTABLE=y
-# CONFIG_DEBUG_VM_PGTABLE is not set
-CONFIG_ARCH_HAS_DEBUG_VIRTUAL=y
-CONFIG_DEBUG_MEMORY_INIT=y
-CONFIG_HAVE_ARCH_KASAN=y
-CONFIG_HAVE_ARCH_KASAN_SW_TAGS=y
-CONFIG_HAVE_ARCH_KASAN_HW_TAGS=y
-CONFIG_HAVE_ARCH_KASAN_VMALLOC=y
-CONFIG_CC_HAS_KASAN_GENERIC=y
-CONFIG_CC_HAS_KASAN_SW_TAGS=y
-CONFIG_CC_HAS_WORKING_NOSANITIZE_ADDRESS=y
-# CONFIG_KASAN is not set
-CONFIG_HAVE_ARCH_KFENCE=y
-# CONFIG_KFENCE is not set
-# end of Memory Debugging
-
-#
-# Debug Oops, Lockups and Hangs
-#
-# CONFIG_PANIC_ON_OOPS is not set
-CONFIG_PANIC_ON_OOPS_VALUE=0
-CONFIG_PANIC_TIMEOUT=30
-# CONFIG_TEST_LOCKUP is not set
-# end of Debug Oops, Lockups and Hangs
-
-#
-# Scheduler Debugging
-#
-CONFIG_SCHED_INFO=y
-# end of Scheduler Debugging
-
-# CONFIG_DEBUG_TIMEKEEPING is not set
-
-#
-# Lock Debugging (spinlocks, mutexes, etc...)
-#
-CONFIG_LOCK_DEBUGGING_SUPPORT=y
-# CONFIG_WW_MUTEX_SELFTEST is not set
-# end of Lock Debugging (spinlocks, mutexes, etc...)
-
-# CONFIG_DEBUG_IRQFLAGS is not set
-# CONFIG_STACKTRACE is not set
-# CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set
-
-#
-# Debug kernel data structures
-#
-# CONFIG_BUG_ON_DATA_CORRUPTION is not set
-# end of Debug kernel data structures
-
-#
-# RCU Debugging
-#
-CONFIG_RCU_CPU_STALL_TIMEOUT=21
-# end of RCU Debugging
-
-CONFIG_HAVE_FUNCTION_TRACER=y
-CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
-CONFIG_HAVE_DYNAMIC_FTRACE=y
-CONFIG_HAVE_DYNAMIC_FTRACE_WITH_REGS=y
-CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
-CONFIG_HAVE_SYSCALL_TRACEPOINTS=y
-CONFIG_HAVE_C_RECORDMCOUNT=y
-CONFIG_TRACING_SUPPORT=y
-# CONFIG_FTRACE is not set
-# CONFIG_SAMPLES is not set
-CONFIG_STRICT_DEVMEM=y
-CONFIG_IO_STRICT_DEVMEM=y
-
-#
-# arm64 Debugging
-#
-# CONFIG_PID_IN_CONTEXTIDR is not set
-# CONFIG_ARM64_RELOC_TEST is not set
-# CONFIG_CORESIGHT is not set
-# end of arm64 Debugging
-
-#
-# Kernel Testing and Coverage
-#
-# CONFIG_KUNIT is not set
-CONFIG_ARCH_HAS_KCOV=y
-CONFIG_CC_HAS_SANCOV_TRACE_PC=y
-# CONFIG_RUNTIME_TESTING_MENU is not set
-CONFIG_ARCH_USE_MEMTEST=y
-# CONFIG_MEMTEST is not set
-# end of Kernel Testing and Coverage
-# end of Kernel hacking
diff --git a/testing/linux-elm/fix-mmc1-speed.patch b/testing/linux-elm/fix-mmc1-speed.patch
deleted file mode 100644
index 35e6829ed74..00000000000
--- a/testing/linux-elm/fix-mmc1-speed.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-cut max-frequency to half because at full speed mmc is buggy
-
---- a/arch/arm64/boot/dts/mediatek/mt8173-elm.dtsi 2020-12-28 21:22:16.614538427 +0000
-+++ b/arch/arm64/boot/dts/mediatek/mt8173-elm.dtsi 2020-12-28 21:23:59.702157398 +0000
-@@ -381,7 +381,7 @@
- pinctrl-0 = <&mmc1_pins_default>;
- pinctrl-1 = <&mmc1_pins_uhs>;
- bus-width = <4>;
-- max-frequency = <200000000>;
-+ max-frequency = <100000000>;
- cap-sd-highspeed;
- sd-uhs-sdr50;
- sd-uhs-sdr104;
diff --git a/testing/linux-elm/fix-spi-nor-max-frequency.patch b/testing/linux-elm/fix-spi-nor-max-frequency.patch
deleted file mode 100644
index 59af4985e6e..00000000000
--- a/testing/linux-elm/fix-spi-nor-max-frequency.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/arch/arm64/boot/dts/mediatek/mt8173-elm.dtsi 2021-01-03 10:20:26.482347785 +0000
-+++ b/arch/arm64/boot/dts/mediatek/mt8173-elm.dtsi 2021-01-03 11:36:43.321775391 +0000
-@@ -437,7 +437,7 @@
- flash@0 {
- compatible = "jedec,spi-nor";
- reg = <0>;
-- spi-max-frequency = <50000000>;
-+ spi-max-frequency = <109200000>;
- };
- };
-
diff --git a/testing/linux-gru/APKBUILD b/testing/linux-gru/APKBUILD
index 805d5800f1d..a74f662ee76 100644
--- a/testing/linux-gru/APKBUILD
+++ b/testing/linux-gru/APKBUILD
@@ -4,20 +4,19 @@ _flavor=gru
pkgname=linux-${_flavor}
# NOTE: this kernel is intended for testing
# please resist urge to upgrade it blindly
-pkgver=5.17.0
+pkgver=6.8.1
case $pkgver in
*.*.*) _kernver=${pkgver%.*};;
*.*) _kernver=$pkgver;;
esac
pkgrel=0
-pkgdesc="Linux latest stable kernel for gru chromebooks"
+pkgdesc="Linux latest stable kernel for $_flavor chromebook"
url="https://www.kernel.org"
-_depends_dev="perl gmp-dev bash flex bison"
+_depends_dev="perl gmp-dev flex bison"
makedepends="$_depends_dev sed installkernel bc linux-headers linux-firmware-any
- openssl1.1-compat-dev diffutils findutils vboot-utils u-boot-tools dtc"
+ openssl-dev diffutils findutils vboot-utils u-boot-tools dtc"
options="!strip !check"
-_config=${config:-config-gru.${CARCH}}
-#install=
+install=
#subpackages="$pkgname-dev:_dev:$CBUILD_ARCH"
source="https://cdn.kernel.org/pub/linux/kernel/v${pkgver%%.*}.x/linux-$_kernver.tar.xz"
@@ -28,35 +27,17 @@ case $pkgver in
esac
source="$source
- config-gru.aarch64
- kernel.its.gru
- fix-gru-analogix_dp_core.patch
+ config
+ kernel.its.$_flavor
fix-rk3399-gru-mmc-order.patch
+ fix-gru-analogix_dp_core.patch
+ PATCH-v4-00-11-media-rkvdec-Add-H.264-High-10-and-4-2-2-profile-support.patch
"
arch="aarch64"
+_carch="arm64"
license="GPL-2.0"
-_flavors=
-for _i in $source; do
- case $_i in
- config-*.$CARCH)
- _f=${_i%.$CARCH}
- _f=${_f#config-}
- _flavors="$_flavors ${_f}"
- if [ "linux-$_f" != "$pkgname" ]; then
- subpackages="$subpackages linux-${_f}::$CBUILD_ARCH linux-${_f}-dev:_dev:$CBUILD_ARCH"
- fi
- ;;
- esac
-done
-
-_carch=${CARCH}
-case "$_carch" in
-aarch64*) _carch="arm64" ;;
-arm*) _carch="arm" ;;
-esac
-
prepare() {
local _patch_failed=
cd "$srcdir"/linux-$_kernver
@@ -92,29 +73,23 @@ prepare() {
}
oldconfig() {
- for i in $_flavors; do
- local _config=config-$i.${CARCH}
- local _builddir="$srcdir"/build-$i.$CARCH
- mkdir -p "$_builddir"
- echo "-$pkgrel-$i" > "$_builddir"/localversion-alpine \
+ local _builddir="$srcdir"/linux-$_kernver
+ echo "-$pkgrel-$_flavor" > "$_builddir"/localversion-alpine \
|| return 1
- cp "$srcdir"/$_config "$_builddir"/.config
+ cp "$srcdir"/config "$_builddir"/.config
make -C "$srcdir"/linux-$_kernver \
O="$_builddir" \
ARCH="$_carch" \
listnewconfig oldconfig
- done
}
build() {
unset LDFLAGS
export KBUILD_BUILD_TIMESTAMP="$(date -Ru${SOURCE_DATE_EPOCH:+d @$SOURCE_DATE_EPOCH})"
- for i in $_flavors; do
- cd "$srcdir"/build-$i.$CARCH
- make ARCH="$_carch" CC="${CC:-gcc}" \
- KBUILD_BUILD_VERSION="$((pkgrel + 1 ))-Alpine"
- done
+ cd "$srcdir"/linux-$_kernver
+ make ARCH="$_carch" CC="${CC:-gcc}" \
+ KBUILD_BUILD_VERSION="$((pkgrel + 1 ))-Alpine"
}
_package() {
@@ -122,7 +97,7 @@ _package() {
local _abi_release=${pkgver}-${pkgrel}-${_buildflavor}
export KBUILD_BUILD_TIMESTAMP="$(date -Ru${SOURCE_DATE_EPOCH:+d @$SOURCE_DATE_EPOCH})"
- cd "$srcdir"/build-$_buildflavor.$CARCH
+ cd "$srcdir"/linux-$_kernver
# modules_install seems to regenerate a defect Modules.symvers on s390x. Work
# around it by backing it up and restore it after modules_install
cp Module.symvers Module.symvers.backup
@@ -138,6 +113,7 @@ _package() {
make -j1 modules_install $_install \
ARCH="$_carch" \
INSTALL_MOD_PATH="$_outdir" \
+ INSTALL_MOD_STRIP=1 \
INSTALL_PATH="$_outdir"/boot \
INSTALL_DTBS_PATH="$_outdir/boot/dtbs-$_buildflavor"
@@ -154,14 +130,15 @@ _package() {
# main flavor installs in $pkgdir
package() {
- _package gru "$pkgdir"
- local _builddir="$srcdir"/build-$_flavor.$CARCH
+ _package $_flavor "$pkgdir"
+ local _builddir="$srcdir"/linux-$_kernver
+ #cp $_builddir/arch/arm64/boot/Image.gz $pkgdir/boot/vmlinuz-$_flavor
cd $_builddir
- cp $srcdir/kernel.its.gru .
- mkimage -D "-I dts -O dtb -p 2048" -f kernel.its.gru vmlinux.uimg
+ cp $srcdir/kernel.its.$_flavor .
+ mkimage -D "-I dts -O dtb -p 2048" -f kernel.its.$_flavor vmlinux.uimg
dd if=/dev/zero of=bootloader.bin bs=512 count=1
- echo "console=tty1 earlyprintk=tty1 init=/sbin/init root=PARTUUID=%U/PARTNROFF=1 rootwait rw noinitrd loglevel=7" > cmdline
+ echo "console=tty0 earlyprintk=tty0 init=/sbin/init root=PARTUUID=%U/PARTNROFF=1 rootwait rw mitigations=off loglevel=7" > cmdline
vbutil_kernel \
--pack $pkgdir/boot/vmlinux.kpart-$pkgver-$pkgrel-$_flavor \
--version 1 \
@@ -174,9 +151,10 @@ package() {
--bootloader bootloader.bin
rm cmdline bootloader.bin
- rm $pkgdir/boot/vmlinuz-gru
+ #rm $pkgdir/boot/vmlinuz-$_flavor
+ rm $pkgdir/boot/System.map-$pkgver-$pkgrel-$_flavor
cd $pkgdir/boot
- ln -s vmlinux.kpart-$pkgver-$pkgrel-$_flavor vmlinux.kpart-gru
+ ln -s vmlinux.kpart-$pkgver-$pkgrel-$_flavor vmlinux.kpart
}
_dev() {
@@ -232,9 +210,11 @@ _dev() {
}
sha512sums="
-89f0a7ca69d20a539d4b612a7028a30a5e98b402e4b6b88516f14237e5da4b626d7929eab8b40fccc90766e8f3bae87e9858a19077ffad20d8204acf18794f5b linux-5.17.tar.xz
-b44c15744e6673c23fc6fa3e850bd006a8721c58d8701db7d4a6e23f744812f3cc579d855b2a6a82eebea2b4cb87e47136fd225c4c41792335671cdc7feeaaf6 config-gru.aarch64
+5c4eb4aa1d3f7d1ea01c0f7ddeadacdece6e144fd4bdfc16b2b925d3e10dc04de3a6db69320b79a96c3560052616f001d2c09e7a1bb4f7b731e2380a7ecce068 linux-6.8.tar.xz
+33ddb70a2df5ce51e23a82616e02197e4b812e0c094d0c88dd6ea6e2f00d843c2ff124fc15548e0ae3853fc1a6ea605e6b94eff7aa49a34961d7b20b7d27ff6c patch-6.8.1.xz
+cb2e4b59b4eeaff3efdb90da5cd6ef6c8bb6a3dd2e1f8d8ed903ac54fab37176612e6fa085d6a7cc9cb8c7da491f1160830f3436e050a17020fe5f57bd145f71 config
b5a2fbc0560201b4ec1d21e890cc5290c58d0544105a5bfabfe04e76bdf54b64dc07076c40414cedb38b12687cf1ae3f773ecfcac02e3d1edd84f6ef80c951da kernel.its.gru
-476188e5a6967fe061293a6d5b540158869f7f09eba3b0eb651bb7948003c050aa7e419c90f3135316f2ce8c1bb4a411bd3c82cde85dddbf17d971c5198893fe fix-gru-analogix_dp_core.patch
1653cd164857fb433c32203df8254d27c28bcf64e4bd5d0291ce95a8d7e5b48815ea6e81e32060b9a4c0cb13c302f9accc8e77451e30138669337f0d20910a76 fix-rk3399-gru-mmc-order.patch
+476188e5a6967fe061293a6d5b540158869f7f09eba3b0eb651bb7948003c050aa7e419c90f3135316f2ce8c1bb4a411bd3c82cde85dddbf17d971c5198893fe fix-gru-analogix_dp_core.patch
+4b1a494a3821d1829a2a2bb6f959ecbfc1a2e750e8bcf5154701d13478a87e01468848182c8bad993aedf55d5e43c69d360f90a8023f90018b099a7a0dacb7aa PATCH-v4-00-11-media-rkvdec-Add-H.264-High-10-and-4-2-2-profile-support.patch
"
diff --git a/testing/linux-gru/PATCH-v4-00-11-media-rkvdec-Add-H.264-High-10-and-4-2-2-profile-support.patch b/testing/linux-gru/PATCH-v4-00-11-media-rkvdec-Add-H.264-High-10-and-4-2-2-profile-support.patch
new file mode 100644
index 00000000000..cd021f3d97e
--- /dev/null
+++ b/testing/linux-gru/PATCH-v4-00-11-media-rkvdec-Add-H.264-High-10-and-4-2-2-profile-support.patch
@@ -0,0 +1,2119 @@
+From mboxrd@z Thu Jan 1 00:00:00 1970
+Return-Path: <linux-media-owner@vger.kernel.org>
+X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on
+ aws-us-west-2-korg-lkml-1.web.codeaurora.org
+Received: from vger.kernel.org (vger.kernel.org [23.128.96.18])
+ by smtp.lore.kernel.org (Postfix) with ESMTP id F1266C4332F
+ for <linux-media@archiver.kernel.org>; Sun, 5 Nov 2023 16:55:40 +0000 (UTC)
+Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand
+ id S229599AbjKEQzl (ORCPT <rfc822;linux-media@archiver.kernel.org>);
+ Sun, 5 Nov 2023 11:55:41 -0500
+Received: from lindbergh.monkeyblade.net ([23.128.96.19]:55938 "EHLO
+ lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org
+ with ESMTP id S229445AbjKEQzk (ORCPT
+ <rfc822;linux-media@vger.kernel.org>); Sun, 5 Nov 2023 11:55:40 -0500
+Received: from smtp.forwardemail.net (smtp.forwardemail.net [149.28.215.223])
+ by lindbergh.monkeyblade.net (Postfix) with ESMTPS id C5FEE83;
+ Sun, 5 Nov 2023 08:55:35 -0800 (PST)
+DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kwiboo.se;
+ h=Content-Transfer-Encoding: MIME-Version: Message-ID: Date: Subject: Cc:
+ To: From; q=dns/txt; s=fe-e1b5cab7be; t=1699203327;
+ bh=gpEWyFLpFVQA/Y7FAcamWOkPAGDRoHusQHT6WoMBcvI=;
+ b=K0OH+eJxuk0CnFzeiViuoctJ7h50ZC066xjRckTpJRZnM/oC/4dvBdhNAWZI7fjkfQDHnPvuz
+ sugfkZzS1jJgb9iFSYJgJvRzqFTw/UDEmvH9Xaa+vg8/YtjuZNoQeeBr5KNdIGfXEMa2GFKFdyH
+ 5UNc0EM8JL/HAEG0Abjj7JudHNAqAYOViJrxPFGiJpMpjCdzukShWBLzhORwN0pqU7u2AP9PbLN
+ 9wMy86L2PDL71vlFLOMaTUvoat8S8lCrmZ8s/3r0NnTsSvvkIoIW7CpqigEIq+Tus8059ev81AE
+ Cv72ZOB6ZYNsv/1lqQwD3ZbyyDQWTixsefj76wGEr07g==
+From: Jonas Karlman <jonas@kwiboo.se>
+To: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>,
+ Mauro Carvalho Chehab <mchehab@kernel.org>,
+ Hans Verkuil <hverkuil-cisco@xs4all.nl>
+Cc: Alex Bee <knaerzche@gmail.com>,
+ Nicolas Dufresne <nicolas.dufresne@collabora.com>,
+ Benjamin Gaignard <benjamin.gaignard@collabora.com>,
+ Sebastian Fricke <sebastian.fricke@collabora.com>,
+ Christopher Obbard <chris.obbard@collabora.com>,
+ linux-media@vger.kernel.org, linux-rockchip@lists.infradead.org,
+ linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org,
+ Jonas Karlman <jonas@kwiboo.se>
+Subject: [PATCH v4 00/11] media: rkvdec: Add H.264 High 10 and 4:2:2 profile support
+Date: Sun, 5 Nov 2023 16:54:59 +0000
+Message-ID: <20231105165521.3592037-1-jonas@kwiboo.se>
+X-Mailer: git-send-email 2.42.0
+MIME-Version: 1.0
+Content-Transfer-Encoding: 8bit
+X-Report-Abuse-To: abuse@forwardemail.net
+X-Report-Abuse: abuse@forwardemail.net
+X-Complaints-To: abuse@forwardemail.net
+X-ForwardEmail-Version: 0.4.40
+X-ForwardEmail-Sender: rfc822; jonas@kwiboo.se, smtp.forwardemail.net,
+ 149.28.215.223
+X-ForwardEmail-ID: 6547c8ff42ad2f8d152468da
+Precedence: bulk
+List-ID: <linux-media.vger.kernel.org>
+X-Mailing-List: linux-media@vger.kernel.org
+Status: RO
+Content-Length: 4223
+Lines: 104
+
+This is a revival of a 3 year old series [1] now that NV15/NV20/NV30 support
+for display driver have landed in mainline tree.
+
+This series adds H.264 High 10 and 4:2:2 profile support to the Rockchip
+Video Decoder driver.
+
+Patch 1 adds helpers for calculating plane bytesperline and sizeimage.
+Patch 2 adds two new pixelformats for semi-planer 10-bit 4:2:0/4:2:2 YUV.
+
+Patch 3 change to use bytesperline and buffer height to configure strides.
+Patch 4 change to use values from SPS/PPS control to configure the HW.
+Patch 5 remove an unnecessary call to validate sps at streaming start.
+
+Patch 6-10 refactor code to support filtering of CAPUTRE formats based
+on the image format returned from a get_image_fmt ops.
+
+Patch 11 adds final bits to support H.264 High 10 and 4:2:2 profiles.
+
+Tested on a ROCK Pi 4 (RK3399) and Rock64 (RK3328):
+
+ v4l2-compliance 1.24.1, 64 bits, 64-bit time_t
+ ...
+ Total for rkvdec device /dev/video1: 46, Succeeded: 46, Failed: 0, Warnings: 0
+
+ Running test suite JVT-FR-EXT with decoder FFmpeg-H.264-V4L2-request
+ ...
+ Ran 65/69 tests successfully
+
+ Running test suite JVT-AVC_V1 with decoder FFmpeg-H.264-V4L2-request
+ ...
+ Ran 127/135 tests successfully
+
+Before this series:
+
+ Running test suite JVT-FR-EXT with decoder FFmpeg-H.264-V4L2-request
+ ...
+ Ran 44/69 tests successfully
+
+Changes in v4:
+- Fix failed v4l2-compliance tests related to CAPTURE queue
+- Rework CAPTURE format filter anv validate to use an image format
+- Run fluster test suite JVT-FR-EXT [4] and JVT-AVC_V1 [5]
+Link to v3: https://lore.kernel.org/linux-media/20231029183427.1781554-1-jonas@kwiboo.se/
+
+Changes in v3:
+- Drop merged patches
+- Use bpp and bpp_div instead of prior misuse of block_w/block_h
+- New patch to use values from SPS/PPS control to configure the HW
+- New patch to remove an unnecessary call to validate sps at streaming start
+- Reworked pixel format validation
+Link to v2: https://lore.kernel.org/linux-media/20200706215430.22859-1-jonas@kwiboo.se/
+
+Changes in v2:
+- Collect r-b tags
+- SPS pic width and height in mbs validation moved to rkvdec_try_ctrl
+- New patch to not override output buffer sizeimage
+- Reworked pixel format validation
+- Only align decoded buffer instead of changing frmsize step_width
+Link to v1: https://lore.kernel.org/linux-media/20200701215616.30874-1-jonas@kwiboo.se/
+
+Following commits adds support for NV15/NV20/NV30 to VOP driver:
+728c15b4b5f3 ("drm/fourcc: Add NV20 and NV30 YUV formats")
+d4b384228562 ("drm/rockchip: vop: Add NV15, NV20 and NV30 support")
+
+To fully runtime test this series you may need above drm commits and ffmpeg
+patches from [2], this series and drm patches is also available at [3].
+
+[1] https://lore.kernel.org/linux-media/20200706215430.22859-1-jonas@kwiboo.se/
+[2] https://github.com/Kwiboo/FFmpeg/commits/v4l2-request-n6.1-dev/
+[3] https://github.com/Kwiboo/linux-rockchip/commits/linuxtv-rkvdec-high-10-v4/
+[4] https://gist.github.com/Kwiboo/f4ac15576b2c72887ae2bc5d58b5c865
+[5] https://gist.github.com/Kwiboo/459a1c8f1dcb56e45dc7a7a29cc28adf
+
+Regards,
+Jonas
+
+Alex Bee (1):
+ media: rkvdec: h264: Don't hardcode SPS/PPS parameters
+
+Jonas Karlman (10):
+ media: v4l2-common: Add helpers to calculate bytesperline and
+ sizeimage
+ media: v4l2: Add NV15 and NV20 pixel formats
+ media: rkvdec: h264: Use bytesperline and buffer height as virstride
+ media: rkvdec: h264: Remove SPS validation at streaming start
+ media: rkvdec: Extract rkvdec_fill_decoded_pixfmt into helper
+ media: rkvdec: Move rkvdec_reset_decoded_fmt helper
+ media: rkvdec: Extract decoded format enumeration into helper
+ media: rkvdec: Add image format concept
+ media: rkvdec: Add get_image_fmt ops
+ media: rkvdec: h264: Support High 10 and 4:2:2 profiles
+
+ .../media/v4l/pixfmt-yuv-planar.rst | 128 +++++++++++
+ drivers/media/v4l2-core/v4l2-common.c | 80 +++----
+ drivers/media/v4l2-core/v4l2-ioctl.c | 2 +
+ drivers/staging/media/rkvdec/rkvdec-h264.c | 83 +++----
+ drivers/staging/media/rkvdec/rkvdec.c | 217 +++++++++++++-----
+ drivers/staging/media/rkvdec/rkvdec.h | 18 +-
+ include/uapi/linux/videodev2.h | 2 +
+ 7 files changed, 396 insertions(+), 134 deletions(-)
+
+--
+2.42.0
+
+
+From mboxrd@z Thu Jan 1 00:00:00 1970
+Return-Path: <linux-media-owner@vger.kernel.org>
+X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on
+ aws-us-west-2-korg-lkml-1.web.codeaurora.org
+Received: from vger.kernel.org (vger.kernel.org [23.128.96.18])
+ by smtp.lore.kernel.org (Postfix) with ESMTP id DE389C4332F
+ for <linux-media@archiver.kernel.org>; Sun, 5 Nov 2023 16:55:44 +0000 (UTC)
+Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand
+ id S229689AbjKEQzp (ORCPT <rfc822;linux-media@archiver.kernel.org>);
+ Sun, 5 Nov 2023 11:55:45 -0500
+Received: from lindbergh.monkeyblade.net ([23.128.96.19]:55952 "EHLO
+ lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org
+ with ESMTP id S229445AbjKEQzm (ORCPT
+ <rfc822;linux-media@vger.kernel.org>); Sun, 5 Nov 2023 11:55:42 -0500
+Received: from smtp.forwardemail.net (smtp.forwardemail.net [149.28.215.223])
+ by lindbergh.monkeyblade.net (Postfix) with ESMTPS id D1C1083;
+ Sun, 5 Nov 2023 08:55:39 -0800 (PST)
+DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kwiboo.se;
+ h=Content-Transfer-Encoding: MIME-Version: References: In-Reply-To:
+ Message-ID: Date: Subject: Cc: To: From; q=dns/txt; s=fe-e1b5cab7be;
+ t=1699203336; bh=VBY0FHZGIpUm3P9r+IeT6rGp7Go4Kcp8zODviR0ogjA=;
+ b=BKDG4dDc9E/ZgiRG/Ru2++h4WwhGmSBs+ypZlLeawtW/RGt/AaLCHiGqdm+rglxe3LuoobCDP
+ Z1McdMSA8+pGaOGUjrkNcejfcOiStGk2dyup5CL6o2cffFmwXiddU2IHSGyIsuPiKQMdW9vg06V
+ +Am3LQs7O/C62i61U99NwL+/OQLIrYdmIa4qIfN0Q2jD0pzCSQNUQqT9Km6MaKtalT6vgB5uBkz
+ dUUFyzSfjUIGLYrDsn7Krz0TAMgW3h1o+DmNrU9ADxowdsgtpe/KXGyoNvgNzmZVjUl1yPHmV2N
+ tXo2xLb10U5ZdhnEMg9J5mdqQWl3Z0x8mVyzpn4DbH8g==
+From: Jonas Karlman <jonas@kwiboo.se>
+To: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>,
+ Mauro Carvalho Chehab <mchehab@kernel.org>,
+ Hans Verkuil <hverkuil-cisco@xs4all.nl>
+Cc: Alex Bee <knaerzche@gmail.com>,
+ Nicolas Dufresne <nicolas.dufresne@collabora.com>,
+ Benjamin Gaignard <benjamin.gaignard@collabora.com>,
+ Sebastian Fricke <sebastian.fricke@collabora.com>,
+ Christopher Obbard <chris.obbard@collabora.com>,
+ linux-media@vger.kernel.org, linux-rockchip@lists.infradead.org,
+ linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org,
+ Jonas Karlman <jonas@kwiboo.se>
+Subject: [PATCH v4 02/11] media: v4l2: Add NV15 and NV20 pixel formats
+Date: Sun, 5 Nov 2023 16:55:01 +0000
+Message-ID: <20231105165521.3592037-3-jonas@kwiboo.se>
+X-Mailer: git-send-email 2.42.0
+In-Reply-To: <20231105165521.3592037-1-jonas@kwiboo.se>
+References: <20231105165521.3592037-1-jonas@kwiboo.se>
+MIME-Version: 1.0
+Content-Transfer-Encoding: 8bit
+X-Report-Abuse-To: abuse@forwardemail.net
+X-Report-Abuse: abuse@forwardemail.net
+X-Complaints-To: abuse@forwardemail.net
+X-ForwardEmail-Version: 0.4.40
+X-ForwardEmail-Sender: rfc822; jonas@kwiboo.se, smtp.forwardemail.net,
+ 149.28.215.223
+X-ForwardEmail-ID: 6547c90742ad2f8d152468f4
+Precedence: bulk
+List-ID: <linux-media.vger.kernel.org>
+X-Mailing-List: linux-media@vger.kernel.org
+Status: RO
+Content-Length: 9980
+Lines: 237
+
+Add NV15 and NV20 pixel formats used by the Rockchip Video Decoder for
+10-bit buffers.
+
+NV15 and NV20 is 10-bit 4:2:0/4:2:2 semi-planar YUV formats similar to
+NV12 and NV16, using 10-bit components with no padding between each
+component. Instead, a group of 4 luminance/chrominance samples are
+stored over 5 bytes in little endian order:
+
+YYYY = UVUV = 4 * 10 bits = 40 bits = 5 bytes
+
+The '15' and '20' suffix refers to the optimum effective bits per pixel
+which is achieved when the total number of luminance samples is a
+multiple of 8 for NV15 and 4 for NV20.
+
+Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
+---
+v4:
+- No change
+
+v3:
+- Use bpp and bpp_div instead of the misuse of block_w/block_h
+- Update documentation, expand to use full 4x4 sample image
+
+ .../media/v4l/pixfmt-yuv-planar.rst | 128 ++++++++++++++++++
+ drivers/media/v4l2-core/v4l2-common.c | 2 +
+ drivers/media/v4l2-core/v4l2-ioctl.c | 2 +
+ include/uapi/linux/videodev2.h | 2 +
+ 4 files changed, 134 insertions(+)
+
+diff --git a/Documentation/userspace-api/media/v4l/pixfmt-yuv-planar.rst b/Documentation/userspace-api/media/v4l/pixfmt-yuv-planar.rst
+index 1840224faa41..4366cdcb970e 100644
+--- a/Documentation/userspace-api/media/v4l/pixfmt-yuv-planar.rst
++++ b/Documentation/userspace-api/media/v4l/pixfmt-yuv-planar.rst
+@@ -79,6 +79,13 @@ All components are stored with the same number of bits per component.
+ - Cr, Cb
+ - Yes
+ - Linear
++ * - V4L2_PIX_FMT_NV15
++ - 'NV15'
++ - 10
++ - 4:2:0
++ - Cb, Cr
++ - Yes
++ - Linear
+ * - V4L2_PIX_FMT_NV12M
+ - 'NM12'
+ - 8
+@@ -158,6 +165,13 @@ All components are stored with the same number of bits per component.
+ - Cr, Cb
+ - Yes
+ - Linear
++ * - V4L2_PIX_FMT_NV20
++ - 'NV20'
++ - 10
++ - 4:2:2
++ - Cb, Cr
++ - Yes
++ - Linear
+ * - V4L2_PIX_FMT_NV16M
+ - 'NM16'
+ - 8
+@@ -288,6 +302,57 @@ of the luma plane.
+ - Cr\ :sub:`11`
+
+
++.. _V4L2-PIX-FMT-NV15:
++
++NV15
++----
++
++Semi-planar 10-bit YUV 4:2:0 format similar to NV12, using 10-bit components
++with no padding between each component. A group of 4 components are stored over
++5 bytes in little endian order.
++
++.. flat-table:: Sample 4x4 NV15 Image (1 byte per cell)
++ :header-rows: 0
++ :stub-columns: 0
++
++ * - start + 0:
++ - Y'\ :sub:`00[7:0]`
++ - Y'\ :sub:`01[5:0]`\ Y'\ :sub:`00[9:8]`
++ - Y'\ :sub:`02[3:0]`\ Y'\ :sub:`01[9:6]`
++ - Y'\ :sub:`03[1:0]`\ Y'\ :sub:`02[9:4]`
++ - Y'\ :sub:`03[9:2]`
++ * - start + 5:
++ - Y'\ :sub:`10[7:0]`
++ - Y'\ :sub:`11[5:0]`\ Y'\ :sub:`10[9:8]`
++ - Y'\ :sub:`12[3:0]`\ Y'\ :sub:`11[9:6]`
++ - Y'\ :sub:`13[1:0]`\ Y'\ :sub:`12[9:4]`
++ - Y'\ :sub:`13[9:2]`
++ * - start + 10:
++ - Y'\ :sub:`20[7:0]`
++ - Y'\ :sub:`21[5:0]`\ Y'\ :sub:`20[9:8]`
++ - Y'\ :sub:`22[3:0]`\ Y'\ :sub:`21[9:6]`
++ - Y'\ :sub:`23[1:0]`\ Y'\ :sub:`22[9:4]`
++ - Y'\ :sub:`23[9:2]`
++ * - start + 15:
++ - Y'\ :sub:`30[7:0]`
++ - Y'\ :sub:`31[5:0]`\ Y'\ :sub:`30[9:8]`
++ - Y'\ :sub:`32[3:0]`\ Y'\ :sub:`31[9:6]`
++ - Y'\ :sub:`33[1:0]`\ Y'\ :sub:`32[9:4]`
++ - Y'\ :sub:`33[9:2]`
++ * - start + 20:
++ - Cb\ :sub:`00[7:0]`
++ - Cr\ :sub:`00[5:0]`\ Cb\ :sub:`00[9:8]`
++ - Cb\ :sub:`01[3:0]`\ Cr\ :sub:`00[9:6]`
++ - Cr\ :sub:`01[1:0]`\ Cb\ :sub:`01[9:4]`
++ - Cr\ :sub:`01[9:2]`
++ * - start + 25:
++ - Cb\ :sub:`10[7:0]`
++ - Cr\ :sub:`10[5:0]`\ Cb\ :sub:`10[9:8]`
++ - Cb\ :sub:`11[3:0]`\ Cr\ :sub:`10[9:6]`
++ - Cr\ :sub:`11[1:0]`\ Cb\ :sub:`11[9:4]`
++ - Cr\ :sub:`11[9:2]`
++
++
+ .. _V4L2-PIX-FMT-NV12MT:
+ .. _V4L2-PIX-FMT-NV12MT-16X16:
+ .. _V4L2-PIX-FMT-NV12-4L4:
+@@ -500,6 +565,69 @@ number of lines as the luma plane.
+ - Cr\ :sub:`32`
+
+
++.. _V4L2-PIX-FMT-NV20:
++
++NV20
++----
++
++Semi-planar 10-bit YUV 4:2:2 format similar to NV16, using 10-bit components
++with no padding between each component. A group of 4 components are stored over
++5 bytes in little endian order.
++
++.. flat-table:: Sample 4x4 NV20 Image (1 byte per cell)
++ :header-rows: 0
++ :stub-columns: 0
++
++ * - start + 0:
++ - Y'\ :sub:`00[7:0]`
++ - Y'\ :sub:`01[5:0]`\ Y'\ :sub:`00[9:8]`
++ - Y'\ :sub:`02[3:0]`\ Y'\ :sub:`01[9:6]`
++ - Y'\ :sub:`03[1:0]`\ Y'\ :sub:`02[9:4]`
++ - Y'\ :sub:`03[9:2]`
++ * - start + 5:
++ - Y'\ :sub:`10[7:0]`
++ - Y'\ :sub:`11[5:0]`\ Y'\ :sub:`10[9:8]`
++ - Y'\ :sub:`12[3:0]`\ Y'\ :sub:`11[9:6]`
++ - Y'\ :sub:`13[1:0]`\ Y'\ :sub:`12[9:4]`
++ - Y'\ :sub:`13[9:2]`
++ * - start + 10:
++ - Y'\ :sub:`20[7:0]`
++ - Y'\ :sub:`21[5:0]`\ Y'\ :sub:`20[9:8]`
++ - Y'\ :sub:`22[3:0]`\ Y'\ :sub:`21[9:6]`
++ - Y'\ :sub:`23[1:0]`\ Y'\ :sub:`22[9:4]`
++ - Y'\ :sub:`23[9:2]`
++ * - start + 15:
++ - Y'\ :sub:`30[7:0]`
++ - Y'\ :sub:`31[5:0]`\ Y'\ :sub:`30[9:8]`
++ - Y'\ :sub:`32[3:0]`\ Y'\ :sub:`31[9:6]`
++ - Y'\ :sub:`33[1:0]`\ Y'\ :sub:`32[9:4]`
++ - Y'\ :sub:`33[9:2]`
++ * - start + 20:
++ - Cb\ :sub:`00[7:0]`
++ - Cr\ :sub:`00[5:0]`\ Cb\ :sub:`00[9:8]`
++ - Cb\ :sub:`01[3:0]`\ Cr\ :sub:`00[9:6]`
++ - Cr\ :sub:`01[1:0]`\ Cb\ :sub:`01[9:4]`
++ - Cr\ :sub:`01[9:2]`
++ * - start + 25:
++ - Cb\ :sub:`10[7:0]`
++ - Cr\ :sub:`10[5:0]`\ Cb\ :sub:`10[9:8]`
++ - Cb\ :sub:`11[3:0]`\ Cr\ :sub:`10[9:6]`
++ - Cr\ :sub:`11[1:0]`\ Cb\ :sub:`11[9:4]`
++ - Cr\ :sub:`11[9:2]`
++ * - start + 30:
++ - Cb\ :sub:`20[7:0]`
++ - Cr\ :sub:`20[5:0]`\ Cb\ :sub:`20[9:8]`
++ - Cb\ :sub:`21[3:0]`\ Cr\ :sub:`20[9:6]`
++ - Cr\ :sub:`21[1:0]`\ Cb\ :sub:`21[9:4]`
++ - Cr\ :sub:`21[9:2]`
++ * - start + 35:
++ - Cb\ :sub:`30[7:0]`
++ - Cr\ :sub:`30[5:0]`\ Cb\ :sub:`30[9:8]`
++ - Cb\ :sub:`31[3:0]`\ Cr\ :sub:`30[9:6]`
++ - Cr\ :sub:`31[1:0]`\ Cb\ :sub:`31[9:4]`
++ - Cr\ :sub:`31[9:2]`
++
++
+ .. _V4L2-PIX-FMT-NV24:
+ .. _V4L2-PIX-FMT-NV42:
+
+diff --git a/drivers/media/v4l2-core/v4l2-common.c b/drivers/media/v4l2-core/v4l2-common.c
+index 834b426da8b1..c65ffab5800a 100644
+--- a/drivers/media/v4l2-core/v4l2-common.c
++++ b/drivers/media/v4l2-core/v4l2-common.c
+@@ -270,8 +270,10 @@ const struct v4l2_format_info *v4l2_format_info(u32 format)
+ /* YUV planar formats */
+ { .format = V4L2_PIX_FMT_NV12, .pixel_enc = V4L2_PIXEL_ENC_YUV, .mem_planes = 1, .comp_planes = 2, .bpp = { 1, 2, 0, 0 }, .bpp_div = { 1, 1, 1, 1 }, .hdiv = 2, .vdiv = 2 },
+ { .format = V4L2_PIX_FMT_NV21, .pixel_enc = V4L2_PIXEL_ENC_YUV, .mem_planes = 1, .comp_planes = 2, .bpp = { 1, 2, 0, 0 }, .bpp_div = { 1, 1, 1, 1 }, .hdiv = 2, .vdiv = 2 },
++ { .format = V4L2_PIX_FMT_NV15, .pixel_enc = V4L2_PIXEL_ENC_YUV, .mem_planes = 1, .comp_planes = 2, .bpp = { 5, 10, 0, 0 }, .bpp_div = { 4, 4, 1, 1 }, .hdiv = 2, .vdiv = 2 },
+ { .format = V4L2_PIX_FMT_NV16, .pixel_enc = V4L2_PIXEL_ENC_YUV, .mem_planes = 1, .comp_planes = 2, .bpp = { 1, 2, 0, 0 }, .bpp_div = { 1, 1, 1, 1 }, .hdiv = 2, .vdiv = 1 },
+ { .format = V4L2_PIX_FMT_NV61, .pixel_enc = V4L2_PIXEL_ENC_YUV, .mem_planes = 1, .comp_planes = 2, .bpp = { 1, 2, 0, 0 }, .bpp_div = { 1, 1, 1, 1 }, .hdiv = 2, .vdiv = 1 },
++ { .format = V4L2_PIX_FMT_NV20, .pixel_enc = V4L2_PIXEL_ENC_YUV, .mem_planes = 1, .comp_planes = 2, .bpp = { 5, 10, 0, 0 }, .bpp_div = { 4, 4, 1, 1 }, .hdiv = 2, .vdiv = 1 },
+ { .format = V4L2_PIX_FMT_NV24, .pixel_enc = V4L2_PIXEL_ENC_YUV, .mem_planes = 1, .comp_planes = 2, .bpp = { 1, 2, 0, 0 }, .bpp_div = { 1, 1, 1, 1 }, .hdiv = 1, .vdiv = 1 },
+ { .format = V4L2_PIX_FMT_NV42, .pixel_enc = V4L2_PIXEL_ENC_YUV, .mem_planes = 1, .comp_planes = 2, .bpp = { 1, 2, 0, 0 }, .bpp_div = { 1, 1, 1, 1 }, .hdiv = 1, .vdiv = 1 },
+ { .format = V4L2_PIX_FMT_P010, .pixel_enc = V4L2_PIXEL_ENC_YUV, .mem_planes = 1, .comp_planes = 2, .bpp = { 2, 2, 0, 0 }, .bpp_div = { 1, 1, 1, 1 }, .hdiv = 2, .vdiv = 1 },
+diff --git a/drivers/media/v4l2-core/v4l2-ioctl.c b/drivers/media/v4l2-core/v4l2-ioctl.c
+index 9b1de54ce379..937434e5f2c1 100644
+--- a/drivers/media/v4l2-core/v4l2-ioctl.c
++++ b/drivers/media/v4l2-core/v4l2-ioctl.c
+@@ -1347,8 +1347,10 @@ static void v4l_fill_fmtdesc(struct v4l2_fmtdesc *fmt)
+ case V4L2_PIX_FMT_YUV48_12: descr = "12-bit YUV 4:4:4 Packed"; break;
+ case V4L2_PIX_FMT_NV12: descr = "Y/UV 4:2:0"; break;
+ case V4L2_PIX_FMT_NV21: descr = "Y/VU 4:2:0"; break;
++ case V4L2_PIX_FMT_NV15: descr = "10-bit Y/UV 4:2:0 (Packed)"; break;
+ case V4L2_PIX_FMT_NV16: descr = "Y/UV 4:2:2"; break;
+ case V4L2_PIX_FMT_NV61: descr = "Y/VU 4:2:2"; break;
++ case V4L2_PIX_FMT_NV20: descr = "10-bit Y/UV 4:2:2 (Packed)"; break;
+ case V4L2_PIX_FMT_NV24: descr = "Y/UV 4:4:4"; break;
+ case V4L2_PIX_FMT_NV42: descr = "Y/VU 4:4:4"; break;
+ case V4L2_PIX_FMT_P010: descr = "10-bit Y/UV 4:2:0"; break;
+diff --git a/include/uapi/linux/videodev2.h b/include/uapi/linux/videodev2.h
+index c3d4e490ce7c..617340c43e40 100644
+--- a/include/uapi/linux/videodev2.h
++++ b/include/uapi/linux/videodev2.h
+@@ -638,8 +638,10 @@ struct v4l2_pix_format {
+ /* two planes -- one Y, one Cr + Cb interleaved */
+ #define V4L2_PIX_FMT_NV12 v4l2_fourcc('N', 'V', '1', '2') /* 12 Y/CbCr 4:2:0 */
+ #define V4L2_PIX_FMT_NV21 v4l2_fourcc('N', 'V', '2', '1') /* 12 Y/CrCb 4:2:0 */
++#define V4L2_PIX_FMT_NV15 v4l2_fourcc('N', 'V', '1', '5') /* 15 Y/CbCr 4:2:0 10-bit packed */
+ #define V4L2_PIX_FMT_NV16 v4l2_fourcc('N', 'V', '1', '6') /* 16 Y/CbCr 4:2:2 */
+ #define V4L2_PIX_FMT_NV61 v4l2_fourcc('N', 'V', '6', '1') /* 16 Y/CrCb 4:2:2 */
++#define V4L2_PIX_FMT_NV20 v4l2_fourcc('N', 'V', '2', '0') /* 20 Y/CbCr 4:2:2 10-bit packed */
+ #define V4L2_PIX_FMT_NV24 v4l2_fourcc('N', 'V', '2', '4') /* 24 Y/CbCr 4:4:4 */
+ #define V4L2_PIX_FMT_NV42 v4l2_fourcc('N', 'V', '4', '2') /* 24 Y/CrCb 4:4:4 */
+ #define V4L2_PIX_FMT_P010 v4l2_fourcc('P', '0', '1', '0') /* 24 Y/CbCr 4:2:0 10-bit per component */
+--
+2.42.0
+
+
+From mboxrd@z Thu Jan 1 00:00:00 1970
+Return-Path: <linux-media-owner@vger.kernel.org>
+X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on
+ aws-us-west-2-korg-lkml-1.web.codeaurora.org
+Received: from vger.kernel.org (vger.kernel.org [23.128.96.18])
+ by smtp.lore.kernel.org (Postfix) with ESMTP id D15E5C41535
+ for <linux-media@archiver.kernel.org>; Sun, 5 Nov 2023 16:55:46 +0000 (UTC)
+Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand
+ id S229783AbjKEQzr (ORCPT <rfc822;linux-media@archiver.kernel.org>);
+ Sun, 5 Nov 2023 11:55:47 -0500
+Received: from lindbergh.monkeyblade.net ([23.128.96.19]:55960 "EHLO
+ lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org
+ with ESMTP id S229750AbjKEQzp (ORCPT
+ <rfc822;linux-media@vger.kernel.org>); Sun, 5 Nov 2023 11:55:45 -0500
+Received: from smtp.forwardemail.net (smtp.forwardemail.net [149.28.215.223])
+ by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 3E66683;
+ Sun, 5 Nov 2023 08:55:43 -0800 (PST)
+DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kwiboo.se;
+ h=Content-Transfer-Encoding: MIME-Version: References: In-Reply-To:
+ Message-ID: Date: Subject: Cc: To: From; q=dns/txt; s=fe-e1b5cab7be;
+ t=1699203340; bh=+OFG4YG5FDD0E7pqkDYNn/y86VqErWzPoJTEkQmn5bo=;
+ b=StlZA6dajX8qKmnknsBdHP3Zb/+n/5VM9fvjRarx8NdJAOE9c0/LroE7FCRJMTpAd2QeYPqEk
+ GlBJF8Tkoce8+on3TMDoVVVcDVoe64X9F3I8sky3f3QMVM0hRMfESCloGAfBmgJMQOlFbiYJoF8
+ jyas+Ej+T3Hdf7GpbMvKscpxZWPdkAR/L0TcjRZ1ecrJCV3tjQb3B0AgNn16RUNk8xal98zksRH
+ 8AZIkScpnmidofdFs4XzySMSGmQZ8Xm9d2rtbdBZJBhV0izwzGuXM74kGbD1Sfn/PSJvoc1NwTP
+ YspiFhJeP4kTyJBikzZ2FU7MJpZRGMnjGYIWOf8kdEQA==
+From: Jonas Karlman <jonas@kwiboo.se>
+To: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>,
+ Mauro Carvalho Chehab <mchehab@kernel.org>,
+ Hans Verkuil <hverkuil-cisco@xs4all.nl>,
+ "Greg Kroah-Hartman" <gregkh@linuxfoundation.org>
+Cc: Alex Bee <knaerzche@gmail.com>,
+ Nicolas Dufresne <nicolas.dufresne@collabora.com>,
+ Benjamin Gaignard <benjamin.gaignard@collabora.com>,
+ Sebastian Fricke <sebastian.fricke@collabora.com>,
+ Christopher Obbard <chris.obbard@collabora.com>,
+ linux-media@vger.kernel.org, linux-rockchip@lists.infradead.org,
+ linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org,
+ Jonas Karlman <jonas@kwiboo.se>
+Subject: [PATCH v4 03/11] media: rkvdec: h264: Use bytesperline and buffer height as virstride
+Date: Sun, 5 Nov 2023 16:55:02 +0000
+Message-ID: <20231105165521.3592037-4-jonas@kwiboo.se>
+X-Mailer: git-send-email 2.42.0
+In-Reply-To: <20231105165521.3592037-1-jonas@kwiboo.se>
+References: <20231105165521.3592037-1-jonas@kwiboo.se>
+MIME-Version: 1.0
+Content-Transfer-Encoding: 8bit
+X-Report-Abuse-To: abuse@forwardemail.net
+X-Report-Abuse: abuse@forwardemail.net
+X-Complaints-To: abuse@forwardemail.net
+X-ForwardEmail-Version: 0.4.40
+X-ForwardEmail-Sender: rfc822; jonas@kwiboo.se, smtp.forwardemail.net,
+ 149.28.215.223
+X-ForwardEmail-ID: 6547c90b42ad2f8d15246901
+Precedence: bulk
+List-ID: <linux-media.vger.kernel.org>
+X-Mailing-List: linux-media@vger.kernel.org
+Status: RO
+Content-Length: 1840
+Lines: 58
+
+Use bytesperline and buffer height to calculate the strides configured.
+
+This does not really change anything other than ensuring the
+bytesperline that is signaled to userspace matches what is configured
+in HW.
+
+Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
+---
+v4:
+- No change
+
+v3:
+- Remove unnecessary yuv_virstride +=
+
+ drivers/staging/media/rkvdec/rkvdec-h264.c | 14 +++++++-------
+ 1 file changed, 7 insertions(+), 7 deletions(-)
+
+diff --git a/drivers/staging/media/rkvdec/rkvdec-h264.c b/drivers/staging/media/rkvdec/rkvdec-h264.c
+index 4fc167b42cf0..7a1e76d423df 100644
+--- a/drivers/staging/media/rkvdec/rkvdec-h264.c
++++ b/drivers/staging/media/rkvdec/rkvdec-h264.c
+@@ -896,9 +896,9 @@ static void config_registers(struct rkvdec_ctx *ctx,
+ dma_addr_t rlc_addr;
+ dma_addr_t refer_addr;
+ u32 rlc_len;
+- u32 hor_virstride = 0;
+- u32 ver_virstride = 0;
+- u32 y_virstride = 0;
++ u32 hor_virstride;
++ u32 ver_virstride;
++ u32 y_virstride;
+ u32 yuv_virstride = 0;
+ u32 offset;
+ dma_addr_t dst_addr;
+@@ -909,16 +909,16 @@ static void config_registers(struct rkvdec_ctx *ctx,
+
+ f = &ctx->decoded_fmt;
+ dst_fmt = &f->fmt.pix_mp;
+- hor_virstride = (sps->bit_depth_luma_minus8 + 8) * dst_fmt->width / 8;
+- ver_virstride = round_up(dst_fmt->height, 16);
++ hor_virstride = dst_fmt->plane_fmt[0].bytesperline;
++ ver_virstride = dst_fmt->height;
+ y_virstride = hor_virstride * ver_virstride;
+
+ if (sps->chroma_format_idc == 0)
+ yuv_virstride = y_virstride;
+ else if (sps->chroma_format_idc == 1)
+- yuv_virstride += y_virstride + y_virstride / 2;
++ yuv_virstride = y_virstride + y_virstride / 2;
+ else if (sps->chroma_format_idc == 2)
+- yuv_virstride += 2 * y_virstride;
++ yuv_virstride = 2 * y_virstride;
+
+ reg = RKVDEC_Y_HOR_VIRSTRIDE(hor_virstride / 16) |
+ RKVDEC_UV_HOR_VIRSTRIDE(hor_virstride / 16) |
+--
+2.42.0
+
+
+From mboxrd@z Thu Jan 1 00:00:00 1970
+Return-Path: <linux-media-owner@vger.kernel.org>
+X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on
+ aws-us-west-2-korg-lkml-1.web.codeaurora.org
+Received: from vger.kernel.org (vger.kernel.org [23.128.96.18])
+ by smtp.lore.kernel.org (Postfix) with ESMTP id 20224C4167B
+ for <linux-media@archiver.kernel.org>; Sun, 5 Nov 2023 16:55:51 +0000 (UTC)
+Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand
+ id S229863AbjKEQzv (ORCPT <rfc822;linux-media@archiver.kernel.org>);
+ Sun, 5 Nov 2023 11:55:51 -0500
+Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38594 "EHLO
+ lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org
+ with ESMTP id S229750AbjKEQzu (ORCPT
+ <rfc822;linux-media@vger.kernel.org>); Sun, 5 Nov 2023 11:55:50 -0500
+Received: from smtp.forwardemail.net (smtp.forwardemail.net [149.28.215.223])
+ by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 9A35E83;
+ Sun, 5 Nov 2023 08:55:47 -0800 (PST)
+DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kwiboo.se;
+ h=Content-Transfer-Encoding: MIME-Version: References: In-Reply-To:
+ Message-ID: Date: Subject: Cc: To: From; q=dns/txt; s=fe-e1b5cab7be;
+ t=1699203344; bh=9YYcLQUrnGdihBMIqGOq7h6o3o2vBA6zqeQq5WUvP+E=;
+ b=eD1bLCz2tEhCI1tolmZ2Vjzp0MZ0gVT9Jvs1nWFjuFxp8N+NKZT7j0QlBDBaD1+w7cmQCFei8
+ 4F5T0hyjf2cAB5Q8QrcBhKv4qTTY+WCbPYE/wfGku+1gS6asFDkGE+ws7ggy7WuAzRP80crHHYY
+ aJ0wLjygKoFoM4JDmk8foW2RPtEpn+C5D3J8C6NM+BnYSqQ5I2Pt4edVa9o8Xou7VXSSLMo/d2P
+ GFcatom08AiaB6WcjllBvOSR+Aey0GU3xrvkWT3QghBLDhLvb+UBMg8b/UoMU2r5gepuQrhduVU
+ QEztP/n2G3V3Ne51W5539Y9gynfSfM1XXNkgJJAubGGg==
+From: Jonas Karlman <jonas@kwiboo.se>
+To: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>,
+ Mauro Carvalho Chehab <mchehab@kernel.org>,
+ Hans Verkuil <hverkuil-cisco@xs4all.nl>,
+ "Greg Kroah-Hartman" <gregkh@linuxfoundation.org>
+Cc: Alex Bee <knaerzche@gmail.com>,
+ Nicolas Dufresne <nicolas.dufresne@collabora.com>,
+ Benjamin Gaignard <benjamin.gaignard@collabora.com>,
+ Sebastian Fricke <sebastian.fricke@collabora.com>,
+ Christopher Obbard <chris.obbard@collabora.com>,
+ linux-media@vger.kernel.org, linux-rockchip@lists.infradead.org,
+ linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org,
+ Jonas Karlman <jonas@kwiboo.se>
+Subject: [PATCH v4 04/11] media: rkvdec: h264: Don't hardcode SPS/PPS parameters
+Date: Sun, 5 Nov 2023 16:55:03 +0000
+Message-ID: <20231105165521.3592037-5-jonas@kwiboo.se>
+X-Mailer: git-send-email 2.42.0
+In-Reply-To: <20231105165521.3592037-1-jonas@kwiboo.se>
+References: <20231105165521.3592037-1-jonas@kwiboo.se>
+MIME-Version: 1.0
+Content-Transfer-Encoding: 8bit
+X-Report-Abuse-To: abuse@forwardemail.net
+X-Report-Abuse: abuse@forwardemail.net
+X-Complaints-To: abuse@forwardemail.net
+X-ForwardEmail-Version: 0.4.40
+X-ForwardEmail-Sender: rfc822; jonas@kwiboo.se, smtp.forwardemail.net,
+ 149.28.215.223
+X-ForwardEmail-ID: 6547c90f42ad2f8d1524690e
+Precedence: bulk
+List-ID: <linux-media.vger.kernel.org>
+X-Mailing-List: linux-media@vger.kernel.org
+Status: RO
+Content-Length: 2306
+Lines: 57
+
+From: Alex Bee <knaerzche@gmail.com>
+
+Some SPS/PPS parameters are currently hardcoded in the driver even
+though they exist in the stable uapi controls.
+
+Use values from SPS/PPS controls instead of hardcoding them.
+
+Signed-off-by: Alex Bee <knaerzche@gmail.com>
+[jonas@kwiboo.se: constraint_set_flags condition, commit message]
+Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
+---
+v4:
+- No change
+
+v3:
+- New patch
+
+ drivers/staging/media/rkvdec/rkvdec-h264.c | 13 +++++++------
+ 1 file changed, 7 insertions(+), 6 deletions(-)
+
+diff --git a/drivers/staging/media/rkvdec/rkvdec-h264.c b/drivers/staging/media/rkvdec/rkvdec-h264.c
+index 7a1e76d423df..8bce8902b8dd 100644
+--- a/drivers/staging/media/rkvdec/rkvdec-h264.c
++++ b/drivers/staging/media/rkvdec/rkvdec-h264.c
+@@ -655,13 +655,14 @@ static void assemble_hw_pps(struct rkvdec_ctx *ctx,
+
+ #define WRITE_PPS(value, field) set_ps_field(hw_ps->info, field, value)
+ /* write sps */
+- WRITE_PPS(0xf, SEQ_PARAMETER_SET_ID);
+- WRITE_PPS(0xff, PROFILE_IDC);
+- WRITE_PPS(1, CONSTRAINT_SET3_FLAG);
++ WRITE_PPS(sps->seq_parameter_set_id, SEQ_PARAMETER_SET_ID);
++ WRITE_PPS(sps->profile_idc, PROFILE_IDC);
++ WRITE_PPS(!!(sps->constraint_set_flags & (1 << 3)), CONSTRAINT_SET3_FLAG);
+ WRITE_PPS(sps->chroma_format_idc, CHROMA_FORMAT_IDC);
+ WRITE_PPS(sps->bit_depth_luma_minus8, BIT_DEPTH_LUMA);
+ WRITE_PPS(sps->bit_depth_chroma_minus8, BIT_DEPTH_CHROMA);
+- WRITE_PPS(0, QPPRIME_Y_ZERO_TRANSFORM_BYPASS_FLAG);
++ WRITE_PPS(!!(sps->flags & V4L2_H264_SPS_FLAG_QPPRIME_Y_ZERO_TRANSFORM_BYPASS),
++ QPPRIME_Y_ZERO_TRANSFORM_BYPASS_FLAG);
+ WRITE_PPS(sps->log2_max_frame_num_minus4, LOG2_MAX_FRAME_NUM_MINUS4);
+ WRITE_PPS(sps->max_num_ref_frames, MAX_NUM_REF_FRAMES);
+ WRITE_PPS(sps->pic_order_cnt_type, PIC_ORDER_CNT_TYPE);
+@@ -688,8 +689,8 @@ static void assemble_hw_pps(struct rkvdec_ctx *ctx,
+ DIRECT_8X8_INFERENCE_FLAG);
+
+ /* write pps */
+- WRITE_PPS(0xff, PIC_PARAMETER_SET_ID);
+- WRITE_PPS(0x1f, PPS_SEQ_PARAMETER_SET_ID);
++ WRITE_PPS(pps->pic_parameter_set_id, PIC_PARAMETER_SET_ID);
++ WRITE_PPS(pps->seq_parameter_set_id, PPS_SEQ_PARAMETER_SET_ID);
+ WRITE_PPS(!!(pps->flags & V4L2_H264_PPS_FLAG_ENTROPY_CODING_MODE),
+ ENTROPY_CODING_MODE_FLAG);
+ WRITE_PPS(!!(pps->flags & V4L2_H264_PPS_FLAG_BOTTOM_FIELD_PIC_ORDER_IN_FRAME_PRESENT),
+--
+2.42.0
+
+
+From mboxrd@z Thu Jan 1 00:00:00 1970
+Return-Path: <linux-media-owner@vger.kernel.org>
+X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on
+ aws-us-west-2-korg-lkml-1.web.codeaurora.org
+Received: from vger.kernel.org (vger.kernel.org [23.128.96.18])
+ by smtp.lore.kernel.org (Postfix) with ESMTP id 1E995C4332F
+ for <linux-media@archiver.kernel.org>; Sun, 5 Nov 2023 16:55:59 +0000 (UTC)
+Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand
+ id S229908AbjKEQz7 (ORCPT <rfc822;linux-media@archiver.kernel.org>);
+ Sun, 5 Nov 2023 11:55:59 -0500
+Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38624 "EHLO
+ lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org
+ with ESMTP id S229750AbjKEQzy (ORCPT
+ <rfc822;linux-media@vger.kernel.org>); Sun, 5 Nov 2023 11:55:54 -0500
+Received: from smtp.forwardemail.net (smtp.forwardemail.net [149.28.215.223])
+ by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 0F582D9;
+ Sun, 5 Nov 2023 08:55:51 -0800 (PST)
+DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kwiboo.se;
+ h=Content-Transfer-Encoding: MIME-Version: References: In-Reply-To:
+ Message-ID: Date: Subject: Cc: To: From; q=dns/txt; s=fe-e1b5cab7be;
+ t=1699203347; bh=QFwovX5RPW7IMq4uUoTrIwvqoq7/7Q8z3p4frGKGekE=;
+ b=iogMt8BWbZ0IMRmVXbXItCv2PMI90AvIJerLiaBkLdr5Iz3gxsyeA+sJtYcyrGpEiAq4Cx4jh
+ CU6e08rrf0+3hAGVy+uUEWSLW1V9mgO3K0MhMjoD5j3sNnCLB/zlyIgQKEVPNEPMsJJsCjUPrSp
+ bkjdHkeuCSVnNC6wRPf9nVTntHFNca6abSevGZl1ivQkXbc4zjsKD0bby05TvBxzYGNDV4jJEvN
+ msaVQ7ak2pAhjvxTFBh/wR7hcGbvTNhHB8PrknCBLCMXttDHfgNPsOPd5mIGi3gHBL284C2+afM
+ /TMAOTHtW2vO7Dp0JJU8Pi7PNGYV/XciaErgvSuz78Hw==
+From: Jonas Karlman <jonas@kwiboo.se>
+To: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>,
+ Mauro Carvalho Chehab <mchehab@kernel.org>,
+ Hans Verkuil <hverkuil-cisco@xs4all.nl>,
+ "Greg Kroah-Hartman" <gregkh@linuxfoundation.org>
+Cc: Alex Bee <knaerzche@gmail.com>,
+ Nicolas Dufresne <nicolas.dufresne@collabora.com>,
+ Benjamin Gaignard <benjamin.gaignard@collabora.com>,
+ Sebastian Fricke <sebastian.fricke@collabora.com>,
+ Christopher Obbard <chris.obbard@collabora.com>,
+ linux-media@vger.kernel.org, linux-rockchip@lists.infradead.org,
+ linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org,
+ Jonas Karlman <jonas@kwiboo.se>
+Subject: [PATCH v4 05/11] media: rkvdec: h264: Remove SPS validation at streaming start
+Date: Sun, 5 Nov 2023 16:55:04 +0000
+Message-ID: <20231105165521.3592037-6-jonas@kwiboo.se>
+X-Mailer: git-send-email 2.42.0
+In-Reply-To: <20231105165521.3592037-1-jonas@kwiboo.se>
+References: <20231105165521.3592037-1-jonas@kwiboo.se>
+MIME-Version: 1.0
+Content-Transfer-Encoding: 8bit
+X-Report-Abuse-To: abuse@forwardemail.net
+X-Report-Abuse: abuse@forwardemail.net
+X-Complaints-To: abuse@forwardemail.net
+X-ForwardEmail-Version: 0.4.40
+X-ForwardEmail-Sender: rfc822; jonas@kwiboo.se, smtp.forwardemail.net,
+ 149.28.215.223
+X-ForwardEmail-ID: 6547c91342ad2f8d1524691b
+Precedence: bulk
+List-ID: <linux-media.vger.kernel.org>
+X-Mailing-List: linux-media@vger.kernel.org
+Status: RO
+Content-Length: 1757
+Lines: 64
+
+SPS parameters is validated in try_ctrl() ops so there is no need to
+re-validate when streaming starts.
+
+Remove the unnecessary call to validate sps at streaming start.
+
+Suggested-by: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>
+Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
+---
+v4:
+- No change
+
+v3:
+- New patch
+
+ drivers/staging/media/rkvdec/rkvdec-h264.c | 19 ++-----------------
+ 1 file changed, 2 insertions(+), 17 deletions(-)
+
+diff --git a/drivers/staging/media/rkvdec/rkvdec-h264.c b/drivers/staging/media/rkvdec/rkvdec-h264.c
+index 8bce8902b8dd..815d5359ddd5 100644
+--- a/drivers/staging/media/rkvdec/rkvdec-h264.c
++++ b/drivers/staging/media/rkvdec/rkvdec-h264.c
+@@ -1070,17 +1070,6 @@ static int rkvdec_h264_start(struct rkvdec_ctx *ctx)
+ struct rkvdec_dev *rkvdec = ctx->dev;
+ struct rkvdec_h264_priv_tbl *priv_tbl;
+ struct rkvdec_h264_ctx *h264_ctx;
+- struct v4l2_ctrl *ctrl;
+- int ret;
+-
+- ctrl = v4l2_ctrl_find(&ctx->ctrl_hdl,
+- V4L2_CID_STATELESS_H264_SPS);
+- if (!ctrl)
+- return -EINVAL;
+-
+- ret = rkvdec_h264_validate_sps(ctx, ctrl->p_new.p_h264_sps);
+- if (ret)
+- return ret;
+
+ h264_ctx = kzalloc(sizeof(*h264_ctx), GFP_KERNEL);
+ if (!h264_ctx)
+@@ -1089,8 +1078,8 @@ static int rkvdec_h264_start(struct rkvdec_ctx *ctx)
+ priv_tbl = dma_alloc_coherent(rkvdec->dev, sizeof(*priv_tbl),
+ &h264_ctx->priv_tbl.dma, GFP_KERNEL);
+ if (!priv_tbl) {
+- ret = -ENOMEM;
+- goto err_free_ctx;
++ kfree(h264_ctx);
++ return -ENOMEM;
+ }
+
+ h264_ctx->priv_tbl.size = sizeof(*priv_tbl);
+@@ -1100,10 +1089,6 @@ static int rkvdec_h264_start(struct rkvdec_ctx *ctx)
+
+ ctx->priv = h264_ctx;
+ return 0;
+-
+-err_free_ctx:
+- kfree(h264_ctx);
+- return ret;
+ }
+
+ static void rkvdec_h264_stop(struct rkvdec_ctx *ctx)
+--
+2.42.0
+
+
+From mboxrd@z Thu Jan 1 00:00:00 1970
+Return-Path: <linux-media-owner@vger.kernel.org>
+X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on
+ aws-us-west-2-korg-lkml-1.web.codeaurora.org
+Received: from vger.kernel.org (vger.kernel.org [23.128.96.18])
+ by smtp.lore.kernel.org (Postfix) with ESMTP id E72FAC4332F
+ for <linux-media@archiver.kernel.org>; Sun, 5 Nov 2023 16:56:03 +0000 (UTC)
+Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand
+ id S229929AbjKEQ4D (ORCPT <rfc822;linux-media@archiver.kernel.org>);
+ Sun, 5 Nov 2023 11:56:03 -0500
+Received: from lindbergh.monkeyblade.net ([23.128.96.19]:40048 "EHLO
+ lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org
+ with ESMTP id S229972AbjKEQ4B (ORCPT
+ <rfc822;linux-media@vger.kernel.org>); Sun, 5 Nov 2023 11:56:01 -0500
+Received: from smtp.forwardemail.net (smtp.forwardemail.net [149.28.215.223])
+ by lindbergh.monkeyblade.net (Postfix) with ESMTPS id ABBE0134;
+ Sun, 5 Nov 2023 08:55:55 -0800 (PST)
+DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kwiboo.se;
+ h=Content-Transfer-Encoding: MIME-Version: References: In-Reply-To:
+ Message-ID: Date: Subject: Cc: To: From; q=dns/txt; s=fe-e1b5cab7be;
+ t=1699203351; bh=eOQ3o+VKmQncWFPGxsnugYz9IoSdcHeasfArhQJpc8A=;
+ b=DxSazXkmvBaYEXuEfUZTO2CrIiKkwVLyRvf+CutflUqddjZ4lu9V1QaDKwHxPC/KnpomVLB/z
+ wP0RVGihxRnMmONsgqV7RLCUZFP1U/EyG4zUYMwM5teK2RpY4trsrGiRX7wwbH1KsJiZ/GHnotH
+ JWTMsOeokFfQ9dt0Q/RPoHt32/zJciZjvwr3Q3UN6xL0TWgg+AlweSo2bi45hwk6SV/CQVWGl0E
+ STWBOr6lOhYkdkyXL4Mu8dKb0VOhjfU6eKaWBNdqlktBK5jFo6ep3Smt0aEZnQWrdE5T/QMuc6h
+ LF6bqgyHkpIzskFFblPBoYmMAXhSB3XBVMnzwpZVC40g==
+From: Jonas Karlman <jonas@kwiboo.se>
+To: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>,
+ Mauro Carvalho Chehab <mchehab@kernel.org>,
+ Hans Verkuil <hverkuil-cisco@xs4all.nl>,
+ "Greg Kroah-Hartman" <gregkh@linuxfoundation.org>
+Cc: Alex Bee <knaerzche@gmail.com>,
+ Nicolas Dufresne <nicolas.dufresne@collabora.com>,
+ Benjamin Gaignard <benjamin.gaignard@collabora.com>,
+ Sebastian Fricke <sebastian.fricke@collabora.com>,
+ Christopher Obbard <chris.obbard@collabora.com>,
+ linux-media@vger.kernel.org, linux-rockchip@lists.infradead.org,
+ linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org,
+ Jonas Karlman <jonas@kwiboo.se>
+Subject: [PATCH v4 06/11] media: rkvdec: Extract rkvdec_fill_decoded_pixfmt into helper
+Date: Sun, 5 Nov 2023 16:55:05 +0000
+Message-ID: <20231105165521.3592037-7-jonas@kwiboo.se>
+X-Mailer: git-send-email 2.42.0
+In-Reply-To: <20231105165521.3592037-1-jonas@kwiboo.se>
+References: <20231105165521.3592037-1-jonas@kwiboo.se>
+MIME-Version: 1.0
+Content-Transfer-Encoding: 8bit
+X-Report-Abuse-To: abuse@forwardemail.net
+X-Report-Abuse: abuse@forwardemail.net
+X-Complaints-To: abuse@forwardemail.net
+X-ForwardEmail-Version: 0.4.40
+X-ForwardEmail-Sender: rfc822; jonas@kwiboo.se, smtp.forwardemail.net,
+ 149.28.215.223
+X-ForwardEmail-ID: 6547c91742ad2f8d15246928
+Precedence: bulk
+List-ID: <linux-media.vger.kernel.org>
+X-Mailing-List: linux-media@vger.kernel.org
+Status: RO
+Content-Length: 2352
+Lines: 69
+
+Extract call to v4l2_fill_pixfmt_mp() and ajusting of sizeimage into a
+helper. Replace current code with a call to the new helper.
+
+Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
+---
+v4:
+- Do not reset pix_mp->field in rkvdec_fill_decoded_pixfmt()
+
+v3:
+- No changes
+
+ drivers/staging/media/rkvdec/rkvdec.c | 27 ++++++++++++++-------------
+ 1 file changed, 14 insertions(+), 13 deletions(-)
+
+diff --git a/drivers/staging/media/rkvdec/rkvdec.c b/drivers/staging/media/rkvdec/rkvdec.c
+index 84a41792cb4b..0570c790ad08 100644
+--- a/drivers/staging/media/rkvdec/rkvdec.c
++++ b/drivers/staging/media/rkvdec/rkvdec.c
+@@ -27,6 +27,16 @@
+ #include "rkvdec.h"
+ #include "rkvdec-regs.h"
+
++static void rkvdec_fill_decoded_pixfmt(struct rkvdec_ctx *ctx,
++ struct v4l2_pix_format_mplane *pix_mp)
++{
++ v4l2_fill_pixfmt_mp(pix_mp, pix_mp->pixelformat,
++ pix_mp->width, pix_mp->height);
++ pix_mp->plane_fmt[0].sizeimage += 128 *
++ DIV_ROUND_UP(pix_mp->width, 16) *
++ DIV_ROUND_UP(pix_mp->height, 16);
++}
++
+ static int rkvdec_try_ctrl(struct v4l2_ctrl *ctrl)
+ {
+ struct rkvdec_ctx *ctx = container_of(ctrl->handler, struct rkvdec_ctx, ctrl_hdl);
+@@ -192,13 +202,9 @@ static void rkvdec_reset_decoded_fmt(struct rkvdec_ctx *ctx)
+
+ rkvdec_reset_fmt(ctx, f, ctx->coded_fmt_desc->decoded_fmts[0]);
+ f->type = V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE;
+- v4l2_fill_pixfmt_mp(&f->fmt.pix_mp,
+- ctx->coded_fmt_desc->decoded_fmts[0],
+- ctx->coded_fmt.fmt.pix_mp.width,
+- ctx->coded_fmt.fmt.pix_mp.height);
+- f->fmt.pix_mp.plane_fmt[0].sizeimage += 128 *
+- DIV_ROUND_UP(f->fmt.pix_mp.width, 16) *
+- DIV_ROUND_UP(f->fmt.pix_mp.height, 16);
++ f->fmt.pix_mp.width = ctx->coded_fmt.fmt.pix_mp.width;
++ f->fmt.pix_mp.height = ctx->coded_fmt.fmt.pix_mp.height;
++ rkvdec_fill_decoded_pixfmt(ctx, &f->fmt.pix_mp);
+ }
+
+ static int rkvdec_enum_framesizes(struct file *file, void *priv,
+@@ -264,12 +270,7 @@ static int rkvdec_try_capture_fmt(struct file *file, void *priv,
+ &pix_mp->height,
+ &coded_desc->frmsize);
+
+- v4l2_fill_pixfmt_mp(pix_mp, pix_mp->pixelformat,
+- pix_mp->width, pix_mp->height);
+- pix_mp->plane_fmt[0].sizeimage +=
+- 128 *
+- DIV_ROUND_UP(pix_mp->width, 16) *
+- DIV_ROUND_UP(pix_mp->height, 16);
++ rkvdec_fill_decoded_pixfmt(ctx, pix_mp);
+ pix_mp->field = V4L2_FIELD_NONE;
+
+ return 0;
+--
+2.42.0
+
+
+From mboxrd@z Thu Jan 1 00:00:00 1970
+Return-Path: <linux-media-owner@vger.kernel.org>
+X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on
+ aws-us-west-2-korg-lkml-1.web.codeaurora.org
+Received: from vger.kernel.org (vger.kernel.org [23.128.96.18])
+ by smtp.lore.kernel.org (Postfix) with ESMTP id A9C69C4332F
+ for <linux-media@archiver.kernel.org>; Sun, 5 Nov 2023 16:56:26 +0000 (UTC)
+Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand
+ id S230438AbjKEQ41 (ORCPT <rfc822;linux-media@archiver.kernel.org>);
+ Sun, 5 Nov 2023 11:56:27 -0500
+Received: from lindbergh.monkeyblade.net ([23.128.96.19]:40098 "EHLO
+ lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org
+ with ESMTP id S230256AbjKEQ4Q (ORCPT
+ <rfc822;linux-media@vger.kernel.org>); Sun, 5 Nov 2023 11:56:16 -0500
+Received: from smtp.forwardemail.net (smtp.forwardemail.net [149.28.215.223])
+ by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 1192910C8;
+ Sun, 5 Nov 2023 08:56:11 -0800 (PST)
+DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kwiboo.se;
+ h=Content-Transfer-Encoding: MIME-Version: References: In-Reply-To:
+ Message-ID: Date: Subject: Cc: To: From; q=dns/txt; s=fe-e1b5cab7be;
+ t=1699203367; bh=lpnBJaNiSOXF2fbVkARa+33opskrlpRAhdbPZ7vR6lI=;
+ b=VM49k8elFZ6RRgB1nf7LwO33PFuV3oU0yPReic/VjHWVuJIWjF1BAAqQeJ/kSNr4WviBYt7wc
+ yoAzmSrMaXchniGD9+P+AClnI10zGhD6Ms5PVd5D3+60btZDafhrPK3z58o1orIkwbQorItpCN7
+ C9SwGc78iqWSqt00jt/1LXXtxIPZmJidD6Hl8dszXb/mSxHFCy02zpZeMCQSZ1t0WPI2jokH9c8
+ SI4a8ajRdYOEWjyKSv9R54v8NGjE99w9sBKIJDgTSNbokoEgRzO2xFaBXHTHmM3jEMIvJDFRn04
+ LvpAtA46NwI+N4+6y/C2XtBij8WOvmhPWH3EmiP1bMHQ==
+From: Jonas Karlman <jonas@kwiboo.se>
+To: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>,
+ Mauro Carvalho Chehab <mchehab@kernel.org>,
+ Hans Verkuil <hverkuil-cisco@xs4all.nl>,
+ "Greg Kroah-Hartman" <gregkh@linuxfoundation.org>
+Cc: Alex Bee <knaerzche@gmail.com>,
+ Nicolas Dufresne <nicolas.dufresne@collabora.com>,
+ Benjamin Gaignard <benjamin.gaignard@collabora.com>,
+ Sebastian Fricke <sebastian.fricke@collabora.com>,
+ Christopher Obbard <chris.obbard@collabora.com>,
+ linux-media@vger.kernel.org, linux-rockchip@lists.infradead.org,
+ linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org,
+ Jonas Karlman <jonas@kwiboo.se>
+Subject: [PATCH v4 10/11] media: rkvdec: Add get_image_fmt ops
+Date: Sun, 5 Nov 2023 16:55:09 +0000
+Message-ID: <20231105165521.3592037-11-jonas@kwiboo.se>
+X-Mailer: git-send-email 2.42.0
+In-Reply-To: <20231105165521.3592037-1-jonas@kwiboo.se>
+References: <20231105165521.3592037-1-jonas@kwiboo.se>
+MIME-Version: 1.0
+Content-Transfer-Encoding: 8bit
+X-Report-Abuse-To: abuse@forwardemail.net
+X-Report-Abuse: abuse@forwardemail.net
+X-Complaints-To: abuse@forwardemail.net
+X-ForwardEmail-Version: 0.4.40
+X-ForwardEmail-Sender: rfc822; jonas@kwiboo.se, smtp.forwardemail.net,
+ 149.28.215.223
+X-ForwardEmail-ID: 6547c92642ad2f8d1524695c
+Precedence: bulk
+List-ID: <linux-media.vger.kernel.org>
+X-Mailing-List: linux-media@vger.kernel.org
+Status: RO
+Content-Length: 3036
+Lines: 102
+
+Add support for a get_image_fmt() ops that return the required image
+format.
+
+The CAPTURE format is reset when required image format changes and the
+buffer queue is not busy.
+
+Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
+---
+v4:
+- Change fmt_opaque into an image format
+- Split patch into two
+
+v3:
+- New patch
+
+ drivers/staging/media/rkvdec/rkvdec.c | 49 +++++++++++++++++++++++++--
+ drivers/staging/media/rkvdec/rkvdec.h | 2 ++
+ 2 files changed, 49 insertions(+), 2 deletions(-)
+
+diff --git a/drivers/staging/media/rkvdec/rkvdec.c b/drivers/staging/media/rkvdec/rkvdec.c
+index 5949d59d4cf9..225aa1f0ac48 100644
+--- a/drivers/staging/media/rkvdec/rkvdec.c
++++ b/drivers/staging/media/rkvdec/rkvdec.c
+@@ -108,15 +108,60 @@ static int rkvdec_try_ctrl(struct v4l2_ctrl *ctrl)
+ {
+ struct rkvdec_ctx *ctx = container_of(ctrl->handler, struct rkvdec_ctx, ctrl_hdl);
+ const struct rkvdec_coded_fmt_desc *desc = ctx->coded_fmt_desc;
++ struct v4l2_pix_format_mplane *pix_mp = &ctx->decoded_fmt.fmt.pix_mp;
++ enum rkvdec_image_fmt image_fmt;
++ struct vb2_queue *vq;
++ int ret;
++
++ if (desc->ops->try_ctrl) {
++ ret = desc->ops->try_ctrl(ctx, ctrl);
++ if (ret)
++ return ret;
++ }
++
++ if (!desc->ops->get_image_fmt)
++ return 0;
+
+- if (desc->ops->try_ctrl)
+- return desc->ops->try_ctrl(ctx, ctrl);
++ image_fmt = desc->ops->get_image_fmt(ctx, ctrl);
++ if (ctx->image_fmt == image_fmt)
++ return 0;
++
++ if (rkvdec_is_valid_fmt(ctx, pix_mp->pixelformat, image_fmt))
++ return 0;
++
++ /* format change not allowed when queue is busy */
++ vq = v4l2_m2m_get_vq(ctx->fh.m2m_ctx,
++ V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE);
++ if (vb2_is_busy(vq))
++ return -EINVAL;
++
++ return 0;
++}
++
++static int rkvdec_s_ctrl(struct v4l2_ctrl *ctrl)
++{
++ struct rkvdec_ctx *ctx = container_of(ctrl->handler, struct rkvdec_ctx, ctrl_hdl);
++ const struct rkvdec_coded_fmt_desc *desc = ctx->coded_fmt_desc;
++ struct v4l2_pix_format_mplane *pix_mp = &ctx->decoded_fmt.fmt.pix_mp;
++ enum rkvdec_image_fmt image_fmt;
++
++ if (!desc->ops->get_image_fmt)
++ return 0;
++
++ image_fmt = desc->ops->get_image_fmt(ctx, ctrl);
++ if (ctx->image_fmt == image_fmt)
++ return 0;
++
++ ctx->image_fmt = image_fmt;
++ if (!rkvdec_is_valid_fmt(ctx, pix_mp->pixelformat, ctx->image_fmt))
++ rkvdec_reset_decoded_fmt(ctx);
+
+ return 0;
+ }
+
+ static const struct v4l2_ctrl_ops rkvdec_ctrl_ops = {
+ .try_ctrl = rkvdec_try_ctrl,
++ .s_ctrl = rkvdec_s_ctrl,
+ };
+
+ static const struct rkvdec_ctrl_desc rkvdec_h264_ctrl_descs[] = {
+diff --git a/drivers/staging/media/rkvdec/rkvdec.h b/drivers/staging/media/rkvdec/rkvdec.h
+index 6f8cf50c5d99..e466a2753ccf 100644
+--- a/drivers/staging/media/rkvdec/rkvdec.h
++++ b/drivers/staging/media/rkvdec/rkvdec.h
+@@ -73,6 +73,8 @@ struct rkvdec_coded_fmt_ops {
+ struct vb2_v4l2_buffer *dst_buf,
+ enum vb2_buffer_state result);
+ int (*try_ctrl)(struct rkvdec_ctx *ctx, struct v4l2_ctrl *ctrl);
++ enum rkvdec_image_fmt (*get_image_fmt)(struct rkvdec_ctx *ctx,
++ struct v4l2_ctrl *ctrl);
+ };
+
+ enum rkvdec_image_fmt {
+--
+2.42.0
+
+
+From mboxrd@z Thu Jan 1 00:00:00 1970
+Return-Path: <linux-media-owner@vger.kernel.org>
+X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on
+ aws-us-west-2-korg-lkml-1.web.codeaurora.org
+Received: from vger.kernel.org (vger.kernel.org [23.128.96.18])
+ by smtp.lore.kernel.org (Postfix) with ESMTP id DF360C4332F
+ for <linux-media@archiver.kernel.org>; Sun, 5 Nov 2023 17:05:42 +0000 (UTC)
+Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand
+ id S229489AbjKERFn (ORCPT <rfc822;linux-media@archiver.kernel.org>);
+ Sun, 5 Nov 2023 12:05:43 -0500
+Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36374 "EHLO
+ lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org
+ with ESMTP id S229445AbjKERFn (ORCPT
+ <rfc822;linux-media@vger.kernel.org>); Sun, 5 Nov 2023 12:05:43 -0500
+Received: from smtp.forwardemail.net (smtp.forwardemail.net [149.28.215.223])
+ by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 174C497;
+ Sun, 5 Nov 2023 09:05:40 -0800 (PST)
+DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kwiboo.se;
+ h=Content-Transfer-Encoding: MIME-Version: References: In-Reply-To:
+ Message-ID: Date: Subject: Cc: To: From; q=dns/txt; s=fe-e1b5cab7be;
+ t=1699203938; bh=7TvJ7hJu85Rv+IB9dyvciIwrrP9mf2NII64BLyqL6pI=;
+ b=c6ljQ0zc5Ummv/9BSWkxu9BtNA/+DCE2lXoUKtp9N4iUnWtyAwwNjkL2Bir0OIk0oyAfDbVaO
+ DydCMQZT7Xw9thbnRaxqGjl9JxlsfsM1MFfeiApOYBFCYpWvEFdZ4LCAo4KuhyYKaAjXPajcxa1
+ AsKteI80bM0J+jDIkZ7JW3WhVsayK8EFvvkRzG0/p/ioaVcDJH00SNkaTSgGVra9Qlb7VK43LKJ
+ Z2R+RvTtBArmGOPuOJqasDeCAWCp2U+FQW2KsF0hP4s1QWjBTWvMK5kOCuJ/mJ8TiS1Fj0VP/DY
+ 7T4m6ZNaWP0ja3sMROTPADMdc+dBmfooxn74yBsZw0xQ==
+From: Jonas Karlman <jonas@kwiboo.se>
+To: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>,
+ Mauro Carvalho Chehab <mchehab@kernel.org>,
+ Hans Verkuil <hverkuil-cisco@xs4all.nl>
+Cc: Alex Bee <knaerzche@gmail.com>,
+ Nicolas Dufresne <nicolas.dufresne@collabora.com>,
+ Benjamin Gaignard <benjamin.gaignard@collabora.com>,
+ Sebastian Fricke <sebastian.fricke@collabora.com>,
+ Christopher Obbard <chris.obbard@collabora.com>,
+ linux-media@vger.kernel.org, linux-rockchip@lists.infradead.org,
+ linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org,
+ Jonas Karlman <jonas@kwiboo.se>
+Subject: [PATCH v4 01/11] media: v4l2-common: Add helpers to calculate bytesperline and sizeimage
+Date: Sun, 5 Nov 2023 16:55:00 +0000
+Message-ID: <20231105165521.3592037-2-jonas@kwiboo.se>
+X-Mailer: git-send-email 2.42.0
+In-Reply-To: <20231105165521.3592037-1-jonas@kwiboo.se>
+References: <20231105165521.3592037-1-jonas@kwiboo.se>
+MIME-Version: 1.0
+Content-Transfer-Encoding: 8bit
+X-Report-Abuse-To: abuse@forwardemail.net
+X-Report-Abuse: abuse@forwardemail.net
+X-Complaints-To: abuse@forwardemail.net
+X-ForwardEmail-Version: 0.4.40
+X-ForwardEmail-Sender: rfc822; jonas@kwiboo.se, smtp.forwardemail.net,
+ 149.28.215.223
+X-ForwardEmail-ID: 6547c90342ad2f8d152468e7
+Precedence: bulk
+List-ID: <linux-media.vger.kernel.org>
+X-Mailing-List: linux-media@vger.kernel.org
+Status: RO
+Content-Length: 4617
+Lines: 129
+
+Add helper functions to calculate plane bytesperline and sizeimage,
+these new helpers consider bpp div, block width and height when
+calculating plane bytesperline and sizeimage.
+
+Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
+---
+v4:
+- No change
+
+v3:
+- Consider bpp_div in calculation
+
+ drivers/media/v4l2-core/v4l2-common.c | 78 +++++++++++++--------------
+ 1 file changed, 39 insertions(+), 39 deletions(-)
+
+diff --git a/drivers/media/v4l2-core/v4l2-common.c b/drivers/media/v4l2-core/v4l2-common.c
+index 3a4b15a98e02..834b426da8b1 100644
+--- a/drivers/media/v4l2-core/v4l2-common.c
++++ b/drivers/media/v4l2-core/v4l2-common.c
+@@ -350,6 +350,34 @@ static inline unsigned int v4l2_format_block_height(const struct v4l2_format_inf
+ return info->block_h[plane];
+ }
+
++static inline unsigned int v4l2_format_plane_width(const struct v4l2_format_info *info, int plane,
++ unsigned int width)
++{
++ unsigned int hdiv = plane ? info->hdiv : 1;
++ unsigned int aligned_width =
++ ALIGN(width, v4l2_format_block_width(info, plane));
++
++ return DIV_ROUND_UP(aligned_width, hdiv) *
++ info->bpp[plane] / info->bpp_div[plane];
++}
++
++static inline unsigned int v4l2_format_plane_height(const struct v4l2_format_info *info, int plane,
++ unsigned int height)
++{
++ unsigned int vdiv = plane ? info->vdiv : 1;
++ unsigned int aligned_height =
++ ALIGN(height, v4l2_format_block_height(info, plane));
++
++ return DIV_ROUND_UP(aligned_height, vdiv);
++}
++
++static inline unsigned int v4l2_format_plane_size(const struct v4l2_format_info *info, int plane,
++ unsigned int width, unsigned int height)
++{
++ return v4l2_format_plane_width(info, plane, width) *
++ v4l2_format_plane_height(info, plane, height);
++}
++
+ void v4l2_apply_frmsize_constraints(u32 *width, u32 *height,
+ const struct v4l2_frmsize_stepwise *frmsize)
+ {
+@@ -385,37 +413,19 @@ int v4l2_fill_pixfmt_mp(struct v4l2_pix_format_mplane *pixfmt,
+
+ if (info->mem_planes == 1) {
+ plane = &pixfmt->plane_fmt[0];
+- plane->bytesperline = ALIGN(width, v4l2_format_block_width(info, 0)) * info->bpp[0] / info->bpp_div[0];
++ plane->bytesperline = v4l2_format_plane_width(info, 0, width);
+ plane->sizeimage = 0;
+
+- for (i = 0; i < info->comp_planes; i++) {
+- unsigned int hdiv = (i == 0) ? 1 : info->hdiv;
+- unsigned int vdiv = (i == 0) ? 1 : info->vdiv;
+- unsigned int aligned_width;
+- unsigned int aligned_height;
+-
+- aligned_width = ALIGN(width, v4l2_format_block_width(info, i));
+- aligned_height = ALIGN(height, v4l2_format_block_height(info, i));
+-
+- plane->sizeimage += info->bpp[i] *
+- DIV_ROUND_UP(aligned_width, hdiv) *
+- DIV_ROUND_UP(aligned_height, vdiv) / info->bpp_div[i];
+- }
++ for (i = 0; i < info->comp_planes; i++)
++ plane->sizeimage +=
++ v4l2_format_plane_size(info, i, width, height);
+ } else {
+ for (i = 0; i < info->comp_planes; i++) {
+- unsigned int hdiv = (i == 0) ? 1 : info->hdiv;
+- unsigned int vdiv = (i == 0) ? 1 : info->vdiv;
+- unsigned int aligned_width;
+- unsigned int aligned_height;
+-
+- aligned_width = ALIGN(width, v4l2_format_block_width(info, i));
+- aligned_height = ALIGN(height, v4l2_format_block_height(info, i));
+-
+ plane = &pixfmt->plane_fmt[i];
+ plane->bytesperline =
+- info->bpp[i] * DIV_ROUND_UP(aligned_width, hdiv) / info->bpp_div[i];
+- plane->sizeimage =
+- plane->bytesperline * DIV_ROUND_UP(aligned_height, vdiv);
++ v4l2_format_plane_width(info, i, width);
++ plane->sizeimage = plane->bytesperline *
++ v4l2_format_plane_height(info, i, height);
+ }
+ }
+ return 0;
+@@ -439,22 +449,12 @@ int v4l2_fill_pixfmt(struct v4l2_pix_format *pixfmt, u32 pixelformat,
+ pixfmt->width = width;
+ pixfmt->height = height;
+ pixfmt->pixelformat = pixelformat;
+- pixfmt->bytesperline = ALIGN(width, v4l2_format_block_width(info, 0)) * info->bpp[0] / info->bpp_div[0];
++ pixfmt->bytesperline = v4l2_format_plane_width(info, 0, width);
+ pixfmt->sizeimage = 0;
+
+- for (i = 0; i < info->comp_planes; i++) {
+- unsigned int hdiv = (i == 0) ? 1 : info->hdiv;
+- unsigned int vdiv = (i == 0) ? 1 : info->vdiv;
+- unsigned int aligned_width;
+- unsigned int aligned_height;
+-
+- aligned_width = ALIGN(width, v4l2_format_block_width(info, i));
+- aligned_height = ALIGN(height, v4l2_format_block_height(info, i));
+-
+- pixfmt->sizeimage += info->bpp[i] *
+- DIV_ROUND_UP(aligned_width, hdiv) *
+- DIV_ROUND_UP(aligned_height, vdiv) / info->bpp_div[i];
+- }
++ for (i = 0; i < info->comp_planes; i++)
++ pixfmt->sizeimage +=
++ v4l2_format_plane_size(info, i, width, height);
+ return 0;
+ }
+ EXPORT_SYMBOL_GPL(v4l2_fill_pixfmt);
+--
+2.42.0
+
+
+From mboxrd@z Thu Jan 1 00:00:00 1970
+Return-Path: <linux-media-owner@vger.kernel.org>
+X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on
+ aws-us-west-2-korg-lkml-1.web.codeaurora.org
+Received: from vger.kernel.org (vger.kernel.org [23.128.96.18])
+ by smtp.lore.kernel.org (Postfix) with ESMTP id E8AB8C4332F
+ for <linux-media@archiver.kernel.org>; Sun, 5 Nov 2023 17:06:34 +0000 (UTC)
+Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand
+ id S229599AbjKERGf (ORCPT <rfc822;linux-media@archiver.kernel.org>);
+ Sun, 5 Nov 2023 12:06:35 -0500
+Received: from lindbergh.monkeyblade.net ([23.128.96.19]:49762 "EHLO
+ lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org
+ with ESMTP id S229448AbjKERGe (ORCPT
+ <rfc822;linux-media@vger.kernel.org>); Sun, 5 Nov 2023 12:06:34 -0500
+Received: from smtp.forwardemail.net (smtp.forwardemail.net [149.28.215.223])
+ by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 86726CC;
+ Sun, 5 Nov 2023 09:06:31 -0800 (PST)
+DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kwiboo.se;
+ h=Content-Transfer-Encoding: MIME-Version: References: In-Reply-To:
+ Message-ID: Date: Subject: Cc: To: From; q=dns/txt; s=fe-e1b5cab7be;
+ t=1699203989; bh=DHrB2MDEvgLvMGiiGW4ysBRF9ISWcTsdFhQXpZT8qmk=;
+ b=qmG2UqLYMHESXsPdAlgbWWmznBQ+5Rc/W8EIDO0qSi+1yFUmMT+7+LjPru6aNwNGUsKKRYzb/
+ EY6npsho/gelDfv/bMhMUH5ndDkQCcOqZCToPdUe0PMb38XzUz5XHCLQMEYwMYTtgLjz4KhCRUu
+ g2nf26aFjz09K1jtw4iXOLCLAUYi36nTcDGJD9A13XdIsr8M7IWP/XQB+e7g+eWEKqsgD4JOqzH
+ Nab8uOYS4hQZIMT/Ova8vLF2KuzcAjAK6OQVaDE3MvKT7EjLO0Ole1+rQ98P5NmDGs12WosfF9m
+ 4StMPGZuIZleIWK657/cEYge1ZXLPL+xPAI2af7/C2uQ==
+From: Jonas Karlman <jonas@kwiboo.se>
+To: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>,
+ Mauro Carvalho Chehab <mchehab@kernel.org>,
+ Hans Verkuil <hverkuil-cisco@xs4all.nl>,
+ "Greg Kroah-Hartman" <gregkh@linuxfoundation.org>
+Cc: Alex Bee <knaerzche@gmail.com>,
+ Nicolas Dufresne <nicolas.dufresne@collabora.com>,
+ Benjamin Gaignard <benjamin.gaignard@collabora.com>,
+ Sebastian Fricke <sebastian.fricke@collabora.com>,
+ Christopher Obbard <chris.obbard@collabora.com>,
+ linux-media@vger.kernel.org, linux-rockchip@lists.infradead.org,
+ linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org,
+ Jonas Karlman <jonas@kwiboo.se>
+Subject: [PATCH v4 07/11] media: rkvdec: Move rkvdec_reset_decoded_fmt helper
+Date: Sun, 5 Nov 2023 16:55:06 +0000
+Message-ID: <20231105165521.3592037-8-jonas@kwiboo.se>
+X-Mailer: git-send-email 2.42.0
+In-Reply-To: <20231105165521.3592037-1-jonas@kwiboo.se>
+References: <20231105165521.3592037-1-jonas@kwiboo.se>
+MIME-Version: 1.0
+Content-Transfer-Encoding: 8bit
+X-Report-Abuse-To: abuse@forwardemail.net
+X-Report-Abuse: abuse@forwardemail.net
+X-Complaints-To: abuse@forwardemail.net
+X-ForwardEmail-Version: 0.4.40
+X-ForwardEmail-Sender: rfc822; jonas@kwiboo.se, smtp.forwardemail.net,
+ 149.28.215.223
+X-ForwardEmail-ID: 6547c91a42ad2f8d15246935
+Precedence: bulk
+List-ID: <linux-media.vger.kernel.org>
+X-Mailing-List: linux-media@vger.kernel.org
+Status: RO
+Content-Length: 2929
+Lines: 88
+
+Move rkvdec_reset_decoded_fmt() and the called rkvdec_reset_fmt() helper
+functions in preparation for adding a new caller in an upcoming patch.
+
+Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
+---
+v4:
+- No change
+
+v3:
+- New patch
+
+ drivers/staging/media/rkvdec/rkvdec.c | 46 +++++++++++++--------------
+ 1 file changed, 23 insertions(+), 23 deletions(-)
+
+diff --git a/drivers/staging/media/rkvdec/rkvdec.c b/drivers/staging/media/rkvdec/rkvdec.c
+index 0570c790ad08..7a79840470e1 100644
+--- a/drivers/staging/media/rkvdec/rkvdec.c
++++ b/drivers/staging/media/rkvdec/rkvdec.c
+@@ -37,6 +37,29 @@ static void rkvdec_fill_decoded_pixfmt(struct rkvdec_ctx *ctx,
+ DIV_ROUND_UP(pix_mp->height, 16);
+ }
+
++static void rkvdec_reset_fmt(struct rkvdec_ctx *ctx, struct v4l2_format *f,
++ u32 fourcc)
++{
++ memset(f, 0, sizeof(*f));
++ f->fmt.pix_mp.pixelformat = fourcc;
++ f->fmt.pix_mp.field = V4L2_FIELD_NONE;
++ f->fmt.pix_mp.colorspace = V4L2_COLORSPACE_REC709;
++ f->fmt.pix_mp.ycbcr_enc = V4L2_YCBCR_ENC_DEFAULT;
++ f->fmt.pix_mp.quantization = V4L2_QUANTIZATION_DEFAULT;
++ f->fmt.pix_mp.xfer_func = V4L2_XFER_FUNC_DEFAULT;
++}
++
++static void rkvdec_reset_decoded_fmt(struct rkvdec_ctx *ctx)
++{
++ struct v4l2_format *f = &ctx->decoded_fmt;
++
++ rkvdec_reset_fmt(ctx, f, ctx->coded_fmt_desc->decoded_fmts[0]);
++ f->type = V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE;
++ f->fmt.pix_mp.width = ctx->coded_fmt.fmt.pix_mp.width;
++ f->fmt.pix_mp.height = ctx->coded_fmt.fmt.pix_mp.height;
++ rkvdec_fill_decoded_pixfmt(ctx, &f->fmt.pix_mp);
++}
++
+ static int rkvdec_try_ctrl(struct v4l2_ctrl *ctrl)
+ {
+ struct rkvdec_ctx *ctx = container_of(ctrl->handler, struct rkvdec_ctx, ctrl_hdl);
+@@ -169,18 +192,6 @@ rkvdec_find_coded_fmt_desc(u32 fourcc)
+ return NULL;
+ }
+
+-static void rkvdec_reset_fmt(struct rkvdec_ctx *ctx, struct v4l2_format *f,
+- u32 fourcc)
+-{
+- memset(f, 0, sizeof(*f));
+- f->fmt.pix_mp.pixelformat = fourcc;
+- f->fmt.pix_mp.field = V4L2_FIELD_NONE;
+- f->fmt.pix_mp.colorspace = V4L2_COLORSPACE_REC709;
+- f->fmt.pix_mp.ycbcr_enc = V4L2_YCBCR_ENC_DEFAULT;
+- f->fmt.pix_mp.quantization = V4L2_QUANTIZATION_DEFAULT;
+- f->fmt.pix_mp.xfer_func = V4L2_XFER_FUNC_DEFAULT;
+-}
+-
+ static void rkvdec_reset_coded_fmt(struct rkvdec_ctx *ctx)
+ {
+ struct v4l2_format *f = &ctx->coded_fmt;
+@@ -196,17 +207,6 @@ static void rkvdec_reset_coded_fmt(struct rkvdec_ctx *ctx)
+ ctx->coded_fmt_desc->ops->adjust_fmt(ctx, f);
+ }
+
+-static void rkvdec_reset_decoded_fmt(struct rkvdec_ctx *ctx)
+-{
+- struct v4l2_format *f = &ctx->decoded_fmt;
+-
+- rkvdec_reset_fmt(ctx, f, ctx->coded_fmt_desc->decoded_fmts[0]);
+- f->type = V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE;
+- f->fmt.pix_mp.width = ctx->coded_fmt.fmt.pix_mp.width;
+- f->fmt.pix_mp.height = ctx->coded_fmt.fmt.pix_mp.height;
+- rkvdec_fill_decoded_pixfmt(ctx, &f->fmt.pix_mp);
+-}
+-
+ static int rkvdec_enum_framesizes(struct file *file, void *priv,
+ struct v4l2_frmsizeenum *fsize)
+ {
+--
+2.42.0
+
+
+From mboxrd@z Thu Jan 1 00:00:00 1970
+Return-Path: <linux-media-owner@vger.kernel.org>
+X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on
+ aws-us-west-2-korg-lkml-1.web.codeaurora.org
+Received: from vger.kernel.org (vger.kernel.org [23.128.96.18])
+ by smtp.lore.kernel.org (Postfix) with ESMTP id 13D34C4167D
+ for <linux-media@archiver.kernel.org>; Sun, 5 Nov 2023 17:06:36 +0000 (UTC)
+Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand
+ id S229713AbjKERGg (ORCPT <rfc822;linux-media@archiver.kernel.org>);
+ Sun, 5 Nov 2023 12:06:36 -0500
+Received: from lindbergh.monkeyblade.net ([23.128.96.19]:49742 "EHLO
+ lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org
+ with ESMTP id S229445AbjKERGe (ORCPT
+ <rfc822;linux-media@vger.kernel.org>); Sun, 5 Nov 2023 12:06:34 -0500
+Received: from smtp.forwardemail.net (smtp.forwardemail.net [149.28.215.223])
+ by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 658B0BE;
+ Sun, 5 Nov 2023 09:06:31 -0800 (PST)
+DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kwiboo.se;
+ h=Content-Transfer-Encoding: MIME-Version: References: In-Reply-To:
+ Message-ID: Date: Subject: Cc: To: From; q=dns/txt; s=fe-e1b5cab7be;
+ t=1699203989; bh=xMWdTI2tUEFKp2F1sr+htYd15e9XusEq/UI6wwQ23Zo=;
+ b=ZyiltVXf8DDsLqPsgtPJgmb3HjfrtesgDPcdXKeTv9LmdPuf5p/dHGViNsOMP55fb0AllTPZI
+ +GYZTNfnkZRUci2yDg85xvcVfB4qqwcOerT5AiZ2yI+b3fluYbcT/aQYBcOfWFmsC38AMYUObPE
+ 7uB+brrbLncf+LOFQvobQi1o9aZKobaW7glDrpjrHlmXU5Cd6sGaFubfnqBZSKhRcnhUdV5F2se
+ 3h1YHIp7EfEXXyMy6TRcqAn4dQWILwcVQPSfBjLUGRNOGxmXVBxQ/ucfLmqBfGnCqYezK/EhLhu
+ VaHDM9J/9hnv8XqC38Tp71ktBmt0DX+gjp/G4cJ9tXsA==
+From: Jonas Karlman <jonas@kwiboo.se>
+To: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>,
+ Mauro Carvalho Chehab <mchehab@kernel.org>,
+ Hans Verkuil <hverkuil-cisco@xs4all.nl>,
+ "Greg Kroah-Hartman" <gregkh@linuxfoundation.org>
+Cc: Alex Bee <knaerzche@gmail.com>,
+ Nicolas Dufresne <nicolas.dufresne@collabora.com>,
+ Benjamin Gaignard <benjamin.gaignard@collabora.com>,
+ Sebastian Fricke <sebastian.fricke@collabora.com>,
+ Christopher Obbard <chris.obbard@collabora.com>,
+ linux-media@vger.kernel.org, linux-rockchip@lists.infradead.org,
+ linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org,
+ Jonas Karlman <jonas@kwiboo.se>
+Subject: [PATCH v4 08/11] media: rkvdec: Extract decoded format enumeration into helper
+Date: Sun, 5 Nov 2023 16:55:07 +0000
+Message-ID: <20231105165521.3592037-9-jonas@kwiboo.se>
+X-Mailer: git-send-email 2.42.0
+In-Reply-To: <20231105165521.3592037-1-jonas@kwiboo.se>
+References: <20231105165521.3592037-1-jonas@kwiboo.se>
+MIME-Version: 1.0
+Content-Transfer-Encoding: 8bit
+X-Report-Abuse-To: abuse@forwardemail.net
+X-Report-Abuse: abuse@forwardemail.net
+X-Complaints-To: abuse@forwardemail.net
+X-ForwardEmail-Version: 0.4.40
+X-ForwardEmail-Sender: rfc822; jonas@kwiboo.se, smtp.forwardemail.net,
+ 149.28.215.223
+X-ForwardEmail-ID: 6547c91e42ad2f8d15246942
+Precedence: bulk
+List-ID: <linux-media.vger.kernel.org>
+X-Mailing-List: linux-media@vger.kernel.org
+Status: RO
+Content-Length: 3560
+Lines: 114
+
+Add a rkvdec_is_valid_fmt() helper that check if a fourcc is a supported
+CAPTURE format, and a rkvdec_enum_decoded_fmt() helper that enumerate
+valid formats.
+
+This move current code into helper functions in preparation for adding
+CAPTURE format filtering and validation in next patch.
+
+Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
+---
+v4:
+- Rename rkvdec_decoded_fmts() to rkvdec_enum_decoded_fmt()
+- Rename rkvdec_valid_fmt() to rkvdec_is_valid_fmt()
+
+v3:
+- New patch
+
+ drivers/staging/media/rkvdec/rkvdec.c | 49 +++++++++++++++++++--------
+ 1 file changed, 35 insertions(+), 14 deletions(-)
+
+diff --git a/drivers/staging/media/rkvdec/rkvdec.c b/drivers/staging/media/rkvdec/rkvdec.c
+index 7a79840470e1..c3aede94c872 100644
+--- a/drivers/staging/media/rkvdec/rkvdec.c
++++ b/drivers/staging/media/rkvdec/rkvdec.c
+@@ -27,6 +27,32 @@
+ #include "rkvdec.h"
+ #include "rkvdec-regs.h"
+
++static u32 rkvdec_enum_decoded_fmt(struct rkvdec_ctx *ctx, int index)
++{
++ const struct rkvdec_coded_fmt_desc *desc = ctx->coded_fmt_desc;
++
++ if (WARN_ON(!desc))
++ return 0;
++
++ if (index >= desc->num_decoded_fmts)
++ return 0;
++
++ return desc->decoded_fmts[index];
++}
++
++static bool rkvdec_is_valid_fmt(struct rkvdec_ctx *ctx, u32 fourcc)
++{
++ const struct rkvdec_coded_fmt_desc *desc = ctx->coded_fmt_desc;
++ unsigned int i;
++
++ for (i = 0; i < desc->num_decoded_fmts; i++) {
++ if (desc->decoded_fmts[i] == fourcc)
++ return true;
++ }
++
++ return false;
++}
++
+ static void rkvdec_fill_decoded_pixfmt(struct rkvdec_ctx *ctx,
+ struct v4l2_pix_format_mplane *pix_mp)
+ {
+@@ -52,8 +78,10 @@ static void rkvdec_reset_fmt(struct rkvdec_ctx *ctx, struct v4l2_format *f,
+ static void rkvdec_reset_decoded_fmt(struct rkvdec_ctx *ctx)
+ {
+ struct v4l2_format *f = &ctx->decoded_fmt;
++ u32 fourcc;
+
+- rkvdec_reset_fmt(ctx, f, ctx->coded_fmt_desc->decoded_fmts[0]);
++ fourcc = rkvdec_enum_decoded_fmt(ctx, 0);
++ rkvdec_reset_fmt(ctx, f, fourcc);
+ f->type = V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE;
+ f->fmt.pix_mp.width = ctx->coded_fmt.fmt.pix_mp.width;
+ f->fmt.pix_mp.height = ctx->coded_fmt.fmt.pix_mp.height;
+@@ -244,7 +272,6 @@ static int rkvdec_try_capture_fmt(struct file *file, void *priv,
+ struct v4l2_pix_format_mplane *pix_mp = &f->fmt.pix_mp;
+ struct rkvdec_ctx *ctx = fh_to_rkvdec_ctx(priv);
+ const struct rkvdec_coded_fmt_desc *coded_desc;
+- unsigned int i;
+
+ /*
+ * The codec context should point to a coded format desc, if the format
+@@ -255,13 +282,8 @@ static int rkvdec_try_capture_fmt(struct file *file, void *priv,
+ if (WARN_ON(!coded_desc))
+ return -EINVAL;
+
+- for (i = 0; i < coded_desc->num_decoded_fmts; i++) {
+- if (coded_desc->decoded_fmts[i] == pix_mp->pixelformat)
+- break;
+- }
+-
+- if (i == coded_desc->num_decoded_fmts)
+- pix_mp->pixelformat = coded_desc->decoded_fmts[0];
++ if (!rkvdec_is_valid_fmt(ctx, pix_mp->pixelformat))
++ pix_mp->pixelformat = rkvdec_enum_decoded_fmt(ctx, 0);
+
+ /* Always apply the frmsize constraint of the coded end. */
+ pix_mp->width = max(pix_mp->width, ctx->coded_fmt.fmt.pix_mp.width);
+@@ -425,14 +447,13 @@ static int rkvdec_enum_capture_fmt(struct file *file, void *priv,
+ struct v4l2_fmtdesc *f)
+ {
+ struct rkvdec_ctx *ctx = fh_to_rkvdec_ctx(priv);
++ u32 fourcc;
+
+- if (WARN_ON(!ctx->coded_fmt_desc))
+- return -EINVAL;
+-
+- if (f->index >= ctx->coded_fmt_desc->num_decoded_fmts)
++ fourcc = rkvdec_enum_decoded_fmt(ctx, f->index);
++ if (!fourcc)
+ return -EINVAL;
+
+- f->pixelformat = ctx->coded_fmt_desc->decoded_fmts[f->index];
++ f->pixelformat = fourcc;
+ return 0;
+ }
+
+--
+2.42.0
+
+
+From mboxrd@z Thu Jan 1 00:00:00 1970
+Return-Path: <linux-media-owner@vger.kernel.org>
+X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on
+ aws-us-west-2-korg-lkml-1.web.codeaurora.org
+Received: from vger.kernel.org (vger.kernel.org [23.128.96.18])
+ by smtp.lore.kernel.org (Postfix) with ESMTP id 76EB5C4332F
+ for <linux-media@archiver.kernel.org>; Sun, 5 Nov 2023 17:06:37 +0000 (UTC)
+Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand
+ id S229763AbjKERGh (ORCPT <rfc822;linux-media@archiver.kernel.org>);
+ Sun, 5 Nov 2023 12:06:37 -0500
+Received: from lindbergh.monkeyblade.net ([23.128.96.19]:49746 "EHLO
+ lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org
+ with ESMTP id S229468AbjKERGe (ORCPT
+ <rfc822;linux-media@vger.kernel.org>); Sun, 5 Nov 2023 12:06:34 -0500
+Received: from smtp.forwardemail.net (smtp.forwardemail.net [149.28.215.223])
+ by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 65B2FC0;
+ Sun, 5 Nov 2023 09:06:31 -0800 (PST)
+DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kwiboo.se;
+ h=Content-Transfer-Encoding: MIME-Version: References: In-Reply-To:
+ Message-ID: Date: Subject: Cc: To: From; q=dns/txt; s=fe-e1b5cab7be;
+ t=1699203989; bh=agrfRALBNiUBrIChitGx/tWeu1YIIhSrbadQHiAr0/U=;
+ b=EqAb0U5L9SU595Hn0hOfOqRGiHEhR7msr6AoN8PLhH//fPEIGnD2XGrABq//gcZ0L4iFzDMn1
+ LQVWfRPX2+HolbeaZU5GJYid4xPzyEiMaE7b1ME83f895yElL7cWkVNNruYw2+OZEwf83G1gOhX
+ 30GscCQ6yADNSg0vZUkJ8O+Gn0wsiC/8o491YC2Vm633H2NTnYBfnn8DD8mt8QjOteS1iO2CLGV
+ qRol7kkRs4B5Sw159YFgD2PjT5phdzjb3s5weGf4bC0Oy4NKAzVq8PfKtsRyGjLUWFwyOr5gLf/
+ VoOB+lXhBbfM9YZcTvjcotOutLz4xDS89FXy5NWgjjlw==
+From: Jonas Karlman <jonas@kwiboo.se>
+To: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>,
+ Mauro Carvalho Chehab <mchehab@kernel.org>,
+ Hans Verkuil <hverkuil-cisco@xs4all.nl>,
+ "Greg Kroah-Hartman" <gregkh@linuxfoundation.org>
+Cc: Alex Bee <knaerzche@gmail.com>,
+ Nicolas Dufresne <nicolas.dufresne@collabora.com>,
+ Benjamin Gaignard <benjamin.gaignard@collabora.com>,
+ Sebastian Fricke <sebastian.fricke@collabora.com>,
+ Christopher Obbard <chris.obbard@collabora.com>,
+ linux-media@vger.kernel.org, linux-rockchip@lists.infradead.org,
+ linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org,
+ Jonas Karlman <jonas@kwiboo.se>
+Subject: [PATCH v4 09/11] media: rkvdec: Add image format concept
+Date: Sun, 5 Nov 2023 16:55:08 +0000
+Message-ID: <20231105165521.3592037-10-jonas@kwiboo.se>
+X-Mailer: git-send-email 2.42.0
+In-Reply-To: <20231105165521.3592037-1-jonas@kwiboo.se>
+References: <20231105165521.3592037-1-jonas@kwiboo.se>
+MIME-Version: 1.0
+Content-Transfer-Encoding: 8bit
+X-Report-Abuse-To: abuse@forwardemail.net
+X-Report-Abuse: abuse@forwardemail.net
+X-Complaints-To: abuse@forwardemail.net
+X-ForwardEmail-Version: 0.4.40
+X-ForwardEmail-Sender: rfc822; jonas@kwiboo.se, smtp.forwardemail.net,
+ 149.28.215.223
+X-ForwardEmail-ID: 6547c92242ad2f8d1524694f
+Precedence: bulk
+List-ID: <linux-media.vger.kernel.org>
+X-Mailing-List: linux-media@vger.kernel.org
+Status: RO
+Content-Length: 5178
+Lines: 164
+
+Add an enum rkvdec_image_fmt used to signal an image format, e.g.
+4:2:0 8-bit, 4:2:0 10-bit or any.
+
+Tag each supported CAPUTRE format with an image format and use this tag
+to filter out unsupported CAPTURE formats.
+
+Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
+---
+v4:
+- Change fmt_opaque into an image format
+- Split patch into two
+
+v3:
+- New patch
+
+ drivers/staging/media/rkvdec/rkvdec.c | 45 ++++++++++++++++++++-------
+ drivers/staging/media/rkvdec/rkvdec.h | 13 +++++++-
+ 2 files changed, 45 insertions(+), 13 deletions(-)
+
+diff --git a/drivers/staging/media/rkvdec/rkvdec.c b/drivers/staging/media/rkvdec/rkvdec.c
+index c3aede94c872..5949d59d4cf9 100644
+--- a/drivers/staging/media/rkvdec/rkvdec.c
++++ b/drivers/staging/media/rkvdec/rkvdec.c
+@@ -27,26 +27,42 @@
+ #include "rkvdec.h"
+ #include "rkvdec-regs.h"
+
+-static u32 rkvdec_enum_decoded_fmt(struct rkvdec_ctx *ctx, int index)
++static inline bool rkvdec_image_fmt_match(enum rkvdec_image_fmt fmt1,
++ enum rkvdec_image_fmt fmt2)
++{
++ return fmt1 == fmt2 || fmt2 == RKVDEC_IMG_FMT_ANY ||
++ fmt1 == RKVDEC_IMG_FMT_ANY;
++}
++
++static u32 rkvdec_enum_decoded_fmt(struct rkvdec_ctx *ctx, int index,
++ enum rkvdec_image_fmt image_fmt)
+ {
+ const struct rkvdec_coded_fmt_desc *desc = ctx->coded_fmt_desc;
++ unsigned int i, j;
+
+ if (WARN_ON(!desc))
+ return 0;
+
+- if (index >= desc->num_decoded_fmts)
+- return 0;
++ for (i = 0, j = 0; i < desc->num_decoded_fmts; i++) {
++ if (rkvdec_image_fmt_match(desc->decoded_fmts[i].image_fmt,
++ image_fmt) &&
++ index == j++)
++ return desc->decoded_fmts[i].fourcc;
++ }
+
+- return desc->decoded_fmts[index];
++ return 0;
+ }
+
+-static bool rkvdec_is_valid_fmt(struct rkvdec_ctx *ctx, u32 fourcc)
++static bool rkvdec_is_valid_fmt(struct rkvdec_ctx *ctx, u32 fourcc,
++ enum rkvdec_image_fmt image_fmt)
+ {
+ const struct rkvdec_coded_fmt_desc *desc = ctx->coded_fmt_desc;
+ unsigned int i;
+
+ for (i = 0; i < desc->num_decoded_fmts; i++) {
+- if (desc->decoded_fmts[i] == fourcc)
++ if (rkvdec_image_fmt_match(desc->decoded_fmts[i].image_fmt,
++ image_fmt) &&
++ desc->decoded_fmts[i].fourcc == fourcc)
+ return true;
+ }
+
+@@ -80,7 +96,7 @@ static void rkvdec_reset_decoded_fmt(struct rkvdec_ctx *ctx)
+ struct v4l2_format *f = &ctx->decoded_fmt;
+ u32 fourcc;
+
+- fourcc = rkvdec_enum_decoded_fmt(ctx, 0);
++ fourcc = rkvdec_enum_decoded_fmt(ctx, 0, ctx->image_fmt);
+ rkvdec_reset_fmt(ctx, f, fourcc);
+ f->type = V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE;
+ f->fmt.pix_mp.width = ctx->coded_fmt.fmt.pix_mp.width;
+@@ -149,8 +165,11 @@ static const struct rkvdec_ctrls rkvdec_h264_ctrls = {
+ .num_ctrls = ARRAY_SIZE(rkvdec_h264_ctrl_descs),
+ };
+
+-static const u32 rkvdec_h264_vp9_decoded_fmts[] = {
+- V4L2_PIX_FMT_NV12,
++static const struct rkvdec_decoded_fmt_desc rkvdec_h264_vp9_decoded_fmts[] = {
++ {
++ .fourcc = V4L2_PIX_FMT_NV12,
++ .image_fmt = RKVDEC_IMG_FMT_420_8BIT,
++ },
+ };
+
+ static const struct rkvdec_ctrl_desc rkvdec_vp9_ctrl_descs[] = {
+@@ -282,8 +301,9 @@ static int rkvdec_try_capture_fmt(struct file *file, void *priv,
+ if (WARN_ON(!coded_desc))
+ return -EINVAL;
+
+- if (!rkvdec_is_valid_fmt(ctx, pix_mp->pixelformat))
+- pix_mp->pixelformat = rkvdec_enum_decoded_fmt(ctx, 0);
++ if (!rkvdec_is_valid_fmt(ctx, pix_mp->pixelformat, ctx->image_fmt))
++ pix_mp->pixelformat = rkvdec_enum_decoded_fmt(ctx, 0,
++ ctx->image_fmt);
+
+ /* Always apply the frmsize constraint of the coded end. */
+ pix_mp->width = max(pix_mp->width, ctx->coded_fmt.fmt.pix_mp.width);
+@@ -400,6 +420,7 @@ static int rkvdec_s_output_fmt(struct file *file, void *priv,
+ *
+ * Note that this will propagates any size changes to the decoded format.
+ */
++ ctx->image_fmt = RKVDEC_IMG_FMT_ANY;
+ rkvdec_reset_decoded_fmt(ctx);
+
+ /* Propagate colorspace information to capture. */
+@@ -449,7 +470,7 @@ static int rkvdec_enum_capture_fmt(struct file *file, void *priv,
+ struct rkvdec_ctx *ctx = fh_to_rkvdec_ctx(priv);
+ u32 fourcc;
+
+- fourcc = rkvdec_enum_decoded_fmt(ctx, f->index);
++ fourcc = rkvdec_enum_decoded_fmt(ctx, f->index, ctx->image_fmt);
+ if (!fourcc)
+ return -EINVAL;
+
+diff --git a/drivers/staging/media/rkvdec/rkvdec.h b/drivers/staging/media/rkvdec/rkvdec.h
+index 633335ebb9c4..6f8cf50c5d99 100644
+--- a/drivers/staging/media/rkvdec/rkvdec.h
++++ b/drivers/staging/media/rkvdec/rkvdec.h
+@@ -75,13 +75,23 @@ struct rkvdec_coded_fmt_ops {
+ int (*try_ctrl)(struct rkvdec_ctx *ctx, struct v4l2_ctrl *ctrl);
+ };
+
++enum rkvdec_image_fmt {
++ RKVDEC_IMG_FMT_ANY = 0,
++ RKVDEC_IMG_FMT_420_8BIT,
++};
++
++struct rkvdec_decoded_fmt_desc {
++ u32 fourcc;
++ enum rkvdec_image_fmt image_fmt;
++};
++
+ struct rkvdec_coded_fmt_desc {
+ u32 fourcc;
+ struct v4l2_frmsize_stepwise frmsize;
+ const struct rkvdec_ctrls *ctrls;
+ const struct rkvdec_coded_fmt_ops *ops;
+ unsigned int num_decoded_fmts;
+- const u32 *decoded_fmts;
++ const struct rkvdec_decoded_fmt_desc *decoded_fmts;
+ u32 subsystem_flags;
+ };
+
+@@ -104,6 +114,7 @@ struct rkvdec_ctx {
+ const struct rkvdec_coded_fmt_desc *coded_fmt_desc;
+ struct v4l2_ctrl_handler ctrl_hdl;
+ struct rkvdec_dev *dev;
++ enum rkvdec_image_fmt image_fmt;
+ void *priv;
+ };
+
+--
+2.42.0
+
+
+From mboxrd@z Thu Jan 1 00:00:00 1970
+Return-Path: <linux-media-owner@vger.kernel.org>
+X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on
+ aws-us-west-2-korg-lkml-1.web.codeaurora.org
+Received: from vger.kernel.org (vger.kernel.org [23.128.96.18])
+ by smtp.lore.kernel.org (Postfix) with ESMTP id B3251C4167D
+ for <linux-media@archiver.kernel.org>; Sun, 5 Nov 2023 17:06:38 +0000 (UTC)
+Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand
+ id S229819AbjKERGi (ORCPT <rfc822;linux-media@archiver.kernel.org>);
+ Sun, 5 Nov 2023 12:06:38 -0500
+Received: from lindbergh.monkeyblade.net ([23.128.96.19]:49766 "EHLO
+ lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org
+ with ESMTP id S229485AbjKERGe (ORCPT
+ <rfc822;linux-media@vger.kernel.org>); Sun, 5 Nov 2023 12:06:34 -0500
+Received: from smtp.forwardemail.net (smtp.forwardemail.net [149.28.215.223])
+ by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 8D673CF;
+ Sun, 5 Nov 2023 09:06:31 -0800 (PST)
+DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kwiboo.se;
+ h=Content-Transfer-Encoding: MIME-Version: References: In-Reply-To:
+ Message-ID: Date: Subject: Cc: To: From; q=dns/txt; s=fe-e1b5cab7be;
+ t=1699203989; bh=WmsBIZTUryXo8sAoKKwOi0tlNS64CkDxgo5K4gfiot4=;
+ b=dWnV8LMI4yaUluAmzqSRc780oE8KkxYXJ766IuIV+C7KMLeTDayvTUoFGRLBjgwEWQO422y3R
+ G3Agw4uO2OdiC2oHEvn7WzfUN3aqCE41gviOY4xU2Nsc69VNj9j6RtI4c850hkoL/UM++ACftrG
+ O6FAClJ47jWIWHZyFCkyb1zIP3zcjf/BIrmw1+sQtHl3vQfBWkz3nN7t20p9G/yUu3gFVKA0wCe
+ xkX75Fw61bnYYaHCYsDCH73qRfroG6ZEfcsO+8aumYL0Relj0XqGshXGFTxV1nO6YzXEo16K5as
+ ezQuCyd80lFKj3mDBawIjB8Nd2RlMGQYFpxIdE26g5/g==
+From: Jonas Karlman <jonas@kwiboo.se>
+To: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>,
+ Mauro Carvalho Chehab <mchehab@kernel.org>,
+ Hans Verkuil <hverkuil-cisco@xs4all.nl>,
+ "Greg Kroah-Hartman" <gregkh@linuxfoundation.org>
+Cc: Alex Bee <knaerzche@gmail.com>,
+ Nicolas Dufresne <nicolas.dufresne@collabora.com>,
+ Benjamin Gaignard <benjamin.gaignard@collabora.com>,
+ Sebastian Fricke <sebastian.fricke@collabora.com>,
+ Christopher Obbard <chris.obbard@collabora.com>,
+ linux-media@vger.kernel.org, linux-rockchip@lists.infradead.org,
+ linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org,
+ Jonas Karlman <jonas@kwiboo.se>
+Subject: [PATCH v4 11/11] media: rkvdec: h264: Support High 10 and 4:2:2 profiles
+Date: Sun, 5 Nov 2023 16:55:10 +0000
+Message-ID: <20231105165521.3592037-12-jonas@kwiboo.se>
+X-Mailer: git-send-email 2.42.0
+In-Reply-To: <20231105165521.3592037-1-jonas@kwiboo.se>
+References: <20231105165521.3592037-1-jonas@kwiboo.se>
+MIME-Version: 1.0
+Content-Transfer-Encoding: 8bit
+X-Report-Abuse-To: abuse@forwardemail.net
+X-Report-Abuse: abuse@forwardemail.net
+X-Complaints-To: abuse@forwardemail.net
+X-ForwardEmail-Version: 0.4.40
+X-ForwardEmail-Sender: rfc822; jonas@kwiboo.se, smtp.forwardemail.net,
+ 149.28.215.223
+X-ForwardEmail-ID: 6547c92b42ad2f8d15246969
+Precedence: bulk
+List-ID: <linux-media.vger.kernel.org>
+X-Mailing-List: linux-media@vger.kernel.org
+Status: RO
+Content-Length: 6470
+Lines: 194
+
+Add support and enable decoding of H264 High 10 and 4:2:2 profiles.
+
+Decoded CAPTURE buffer width is aligned to 64 pixels to accommodate HW
+requirement of 10-bit format buffers, fixes decoding of:
+
+- Hi422FR13_SONY_A
+- Hi422FR14_SONY_A
+- Hi422FR15_SONY_A
+- Hi422FR6_SONY_A
+- Hi422FR7_SONY_A
+- Hi422FR8_SONY_A
+- Hi422FR9_SONY_A
+- Hi422FREXT18_SONY_A
+
+The get_image_fmt() ops is implemented to select an image format
+required for the provided SPS control.
+
+Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
+---
+v4:
+- Change to use get_image_fmt() ops
+
+v3:
+- Add get_fmt_opaque ops, the expected pixelformat is used as opaque
+- Add new valid_fmt ops that validate pixelformat matches opaque
+- Update H264_PROFILE control max value
+
+ drivers/staging/media/rkvdec/rkvdec-h264.c | 37 ++++++++++++++++------
+ drivers/staging/media/rkvdec/rkvdec.c | 33 +++++++++++++++----
+ drivers/staging/media/rkvdec/rkvdec.h | 3 ++
+ 3 files changed, 57 insertions(+), 16 deletions(-)
+
+diff --git a/drivers/staging/media/rkvdec/rkvdec-h264.c b/drivers/staging/media/rkvdec/rkvdec-h264.c
+index 815d5359ddd5..baac6d012ddd 100644
+--- a/drivers/staging/media/rkvdec/rkvdec-h264.c
++++ b/drivers/staging/media/rkvdec/rkvdec-h264.c
+@@ -1027,24 +1027,42 @@ static int rkvdec_h264_adjust_fmt(struct rkvdec_ctx *ctx,
+ return 0;
+ }
+
++static enum rkvdec_image_fmt rkvdec_h264_get_image_fmt(struct rkvdec_ctx *ctx,
++ struct v4l2_ctrl *ctrl)
++{
++ const struct v4l2_ctrl_h264_sps *sps = ctrl->p_new.p_h264_sps;
++
++ if (ctrl->id != V4L2_CID_STATELESS_H264_SPS)
++ return RKVDEC_IMG_FMT_ANY;
++
++ if (sps->bit_depth_luma_minus8 == 0) {
++ if (sps->chroma_format_idc == 2)
++ return RKVDEC_IMG_FMT_422_8BIT;
++ else
++ return RKVDEC_IMG_FMT_420_8BIT;
++ } else if (sps->bit_depth_luma_minus8 == 2) {
++ if (sps->chroma_format_idc == 2)
++ return RKVDEC_IMG_FMT_422_10BIT;
++ else
++ return RKVDEC_IMG_FMT_420_10BIT;
++ }
++
++ return RKVDEC_IMG_FMT_ANY;
++}
++
+ static int rkvdec_h264_validate_sps(struct rkvdec_ctx *ctx,
+ const struct v4l2_ctrl_h264_sps *sps)
+ {
+ unsigned int width, height;
+
+- /*
+- * TODO: The hardware supports 10-bit and 4:2:2 profiles,
+- * but it's currently broken in the driver.
+- * Reject them for now, until it's fixed.
+- */
+- if (sps->chroma_format_idc > 1)
+- /* Only 4:0:0 and 4:2:0 are supported */
++ if (sps->chroma_format_idc > 2)
++ /* Only 4:0:0, 4:2:0 and 4:2:2 are supported */
+ return -EINVAL;
+ if (sps->bit_depth_luma_minus8 != sps->bit_depth_chroma_minus8)
+ /* Luma and chroma bit depth mismatch */
+ return -EINVAL;
+- if (sps->bit_depth_luma_minus8 != 0)
+- /* Only 8-bit is supported */
++ if (sps->bit_depth_luma_minus8 != 0 && sps->bit_depth_luma_minus8 != 2)
++ /* Only 8-bit and 10-bit is supported */
+ return -EINVAL;
+
+ width = (sps->pic_width_in_mbs_minus1 + 1) * 16;
+@@ -1175,4 +1193,5 @@ const struct rkvdec_coded_fmt_ops rkvdec_h264_fmt_ops = {
+ .stop = rkvdec_h264_stop,
+ .run = rkvdec_h264_run,
+ .try_ctrl = rkvdec_h264_try_ctrl,
++ .get_image_fmt = rkvdec_h264_get_image_fmt,
+ };
+diff --git a/drivers/staging/media/rkvdec/rkvdec.c b/drivers/staging/media/rkvdec/rkvdec.c
+index 225aa1f0ac48..eb59605ccf28 100644
+--- a/drivers/staging/media/rkvdec/rkvdec.c
++++ b/drivers/staging/media/rkvdec/rkvdec.c
+@@ -73,7 +73,7 @@ static void rkvdec_fill_decoded_pixfmt(struct rkvdec_ctx *ctx,
+ struct v4l2_pix_format_mplane *pix_mp)
+ {
+ v4l2_fill_pixfmt_mp(pix_mp, pix_mp->pixelformat,
+- pix_mp->width, pix_mp->height);
++ ALIGN(pix_mp->width, 64), pix_mp->height);
+ pix_mp->plane_fmt[0].sizeimage += 128 *
+ DIV_ROUND_UP(pix_mp->width, 16) *
+ DIV_ROUND_UP(pix_mp->height, 16);
+@@ -193,7 +193,7 @@ static const struct rkvdec_ctrl_desc rkvdec_h264_ctrl_descs[] = {
+ {
+ .cfg.id = V4L2_CID_MPEG_VIDEO_H264_PROFILE,
+ .cfg.min = V4L2_MPEG_VIDEO_H264_PROFILE_BASELINE,
+- .cfg.max = V4L2_MPEG_VIDEO_H264_PROFILE_HIGH,
++ .cfg.max = V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_422,
+ .cfg.menu_skip_mask =
+ BIT(V4L2_MPEG_VIDEO_H264_PROFILE_EXTENDED),
+ .cfg.def = V4L2_MPEG_VIDEO_H264_PROFILE_MAIN,
+@@ -210,11 +210,23 @@ static const struct rkvdec_ctrls rkvdec_h264_ctrls = {
+ .num_ctrls = ARRAY_SIZE(rkvdec_h264_ctrl_descs),
+ };
+
+-static const struct rkvdec_decoded_fmt_desc rkvdec_h264_vp9_decoded_fmts[] = {
++static const struct rkvdec_decoded_fmt_desc rkvdec_h264_decoded_fmts[] = {
+ {
+ .fourcc = V4L2_PIX_FMT_NV12,
+ .image_fmt = RKVDEC_IMG_FMT_420_8BIT,
+ },
++ {
++ .fourcc = V4L2_PIX_FMT_NV15,
++ .image_fmt = RKVDEC_IMG_FMT_420_10BIT,
++ },
++ {
++ .fourcc = V4L2_PIX_FMT_NV16,
++ .image_fmt = RKVDEC_IMG_FMT_422_8BIT,
++ },
++ {
++ .fourcc = V4L2_PIX_FMT_NV20,
++ .image_fmt = RKVDEC_IMG_FMT_422_10BIT,
++ },
+ };
+
+ static const struct rkvdec_ctrl_desc rkvdec_vp9_ctrl_descs[] = {
+@@ -237,6 +249,13 @@ static const struct rkvdec_ctrls rkvdec_vp9_ctrls = {
+ .num_ctrls = ARRAY_SIZE(rkvdec_vp9_ctrl_descs),
+ };
+
++static const struct rkvdec_decoded_fmt_desc rkvdec_vp9_decoded_fmts[] = {
++ {
++ .fourcc = V4L2_PIX_FMT_NV12,
++ .image_fmt = RKVDEC_IMG_FMT_420_8BIT,
++ },
++};
++
+ static const struct rkvdec_coded_fmt_desc rkvdec_coded_fmts[] = {
+ {
+ .fourcc = V4L2_PIX_FMT_H264_SLICE,
+@@ -250,8 +269,8 @@ static const struct rkvdec_coded_fmt_desc rkvdec_coded_fmts[] = {
+ },
+ .ctrls = &rkvdec_h264_ctrls,
+ .ops = &rkvdec_h264_fmt_ops,
+- .num_decoded_fmts = ARRAY_SIZE(rkvdec_h264_vp9_decoded_fmts),
+- .decoded_fmts = rkvdec_h264_vp9_decoded_fmts,
++ .num_decoded_fmts = ARRAY_SIZE(rkvdec_h264_decoded_fmts),
++ .decoded_fmts = rkvdec_h264_decoded_fmts,
+ .subsystem_flags = VB2_V4L2_FL_SUPPORTS_M2M_HOLD_CAPTURE_BUF,
+ },
+ {
+@@ -266,8 +285,8 @@ static const struct rkvdec_coded_fmt_desc rkvdec_coded_fmts[] = {
+ },
+ .ctrls = &rkvdec_vp9_ctrls,
+ .ops = &rkvdec_vp9_fmt_ops,
+- .num_decoded_fmts = ARRAY_SIZE(rkvdec_h264_vp9_decoded_fmts),
+- .decoded_fmts = rkvdec_h264_vp9_decoded_fmts,
++ .num_decoded_fmts = ARRAY_SIZE(rkvdec_vp9_decoded_fmts),
++ .decoded_fmts = rkvdec_vp9_decoded_fmts,
+ }
+ };
+
+diff --git a/drivers/staging/media/rkvdec/rkvdec.h b/drivers/staging/media/rkvdec/rkvdec.h
+index e466a2753ccf..9a9f4fced7a1 100644
+--- a/drivers/staging/media/rkvdec/rkvdec.h
++++ b/drivers/staging/media/rkvdec/rkvdec.h
+@@ -80,6 +80,9 @@ struct rkvdec_coded_fmt_ops {
+ enum rkvdec_image_fmt {
+ RKVDEC_IMG_FMT_ANY = 0,
+ RKVDEC_IMG_FMT_420_8BIT,
++ RKVDEC_IMG_FMT_420_10BIT,
++ RKVDEC_IMG_FMT_422_8BIT,
++ RKVDEC_IMG_FMT_422_10BIT,
+ };
+
+ struct rkvdec_decoded_fmt_desc {
+--
+2.42.0
+
+
diff --git a/testing/linux-gru/config b/testing/linux-gru/config
new file mode 100644
index 00000000000..7420227fcf2
--- /dev/null
+++ b/testing/linux-gru/config
@@ -0,0 +1,7386 @@
+#
+# Automatically generated file; DO NOT EDIT.
+# Linux/arm64 6.8.1 Kernel Configuration
+#
+CONFIG_CC_VERSION_TEXT="gcc (Alpine 13.2.1_git20240309) 13.2.1 20240309"
+CONFIG_CC_IS_GCC=y
+CONFIG_GCC_VERSION=130201
+CONFIG_CLANG_VERSION=0
+CONFIG_AS_IS_GNU=y
+CONFIG_AS_VERSION=24200
+CONFIG_LD_IS_BFD=y
+CONFIG_LD_VERSION=24200
+CONFIG_LLD_VERSION=0
+CONFIG_RUST_IS_AVAILABLE=y
+CONFIG_CC_CAN_LINK=y
+CONFIG_CC_CAN_LINK_STATIC=y
+CONFIG_CC_HAS_ASM_GOTO_OUTPUT=y
+CONFIG_CC_HAS_ASM_GOTO_TIED_OUTPUT=y
+CONFIG_GCC_ASM_GOTO_OUTPUT_WORKAROUND=y
+CONFIG_CC_HAS_ASM_INLINE=y
+CONFIG_CC_HAS_NO_PROFILE_FN_ATTR=y
+CONFIG_PAHOLE_VERSION=0
+CONFIG_IRQ_WORK=y
+CONFIG_BUILDTIME_TABLE_SORT=y
+CONFIG_THREAD_INFO_IN_TASK=y
+
+#
+# General setup
+#
+CONFIG_INIT_ENV_ARG_LIMIT=32
+# CONFIG_COMPILE_TEST is not set
+# CONFIG_WERROR is not set
+CONFIG_LOCALVERSION=""
+# CONFIG_LOCALVERSION_AUTO is not set
+CONFIG_BUILD_SALT=""
+CONFIG_DEFAULT_INIT=""
+CONFIG_DEFAULT_HOSTNAME="localhost"
+CONFIG_SYSVIPC=y
+CONFIG_SYSVIPC_SYSCTL=y
+CONFIG_SYSVIPC_COMPAT=y
+CONFIG_POSIX_MQUEUE=y
+CONFIG_POSIX_MQUEUE_SYSCTL=y
+# CONFIG_WATCH_QUEUE is not set
+CONFIG_CROSS_MEMORY_ATTACH=y
+# CONFIG_USELIB is not set
+# CONFIG_AUDIT is not set
+CONFIG_HAVE_ARCH_AUDITSYSCALL=y
+
+#
+# IRQ subsystem
+#
+CONFIG_GENERIC_IRQ_PROBE=y
+CONFIG_GENERIC_IRQ_SHOW=y
+CONFIG_GENERIC_IRQ_SHOW_LEVEL=y
+CONFIG_GENERIC_IRQ_EFFECTIVE_AFF_MASK=y
+CONFIG_GENERIC_IRQ_MIGRATION=y
+CONFIG_GENERIC_IRQ_INJECTION=y
+CONFIG_HARDIRQS_SW_RESEND=y
+CONFIG_GENERIC_IRQ_CHIP=y
+CONFIG_IRQ_DOMAIN=y
+CONFIG_IRQ_DOMAIN_HIERARCHY=y
+CONFIG_GENERIC_IRQ_IPI=y
+CONFIG_GENERIC_MSI_IRQ=y
+CONFIG_IRQ_MSI_IOMMU=y
+CONFIG_IRQ_FORCED_THREADING=y
+CONFIG_SPARSE_IRQ=y
+# end of IRQ subsystem
+
+CONFIG_GENERIC_TIME_VSYSCALL=y
+CONFIG_GENERIC_CLOCKEVENTS=y
+CONFIG_ARCH_HAS_TICK_BROADCAST=y
+CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y
+CONFIG_HAVE_POSIX_CPU_TIMERS_TASK_WORK=y
+CONFIG_POSIX_CPU_TIMERS_TASK_WORK=y
+CONFIG_CONTEXT_TRACKING=y
+CONFIG_CONTEXT_TRACKING_IDLE=y
+
+#
+# Timers subsystem
+#
+CONFIG_TICK_ONESHOT=y
+CONFIG_NO_HZ_COMMON=y
+# CONFIG_HZ_PERIODIC is not set
+CONFIG_NO_HZ_IDLE=y
+# CONFIG_NO_HZ_FULL is not set
+# CONFIG_NO_HZ is not set
+CONFIG_HIGH_RES_TIMERS=y
+# end of Timers subsystem
+
+CONFIG_BPF=y
+CONFIG_HAVE_EBPF_JIT=y
+CONFIG_ARCH_WANT_DEFAULT_BPF_JIT=y
+
+#
+# BPF subsystem
+#
+# CONFIG_BPF_SYSCALL is not set
+# CONFIG_BPF_JIT is not set
+# end of BPF subsystem
+
+CONFIG_PREEMPT_BUILD=y
+# CONFIG_PREEMPT_NONE is not set
+# CONFIG_PREEMPT_VOLUNTARY is not set
+CONFIG_PREEMPT=y
+CONFIG_PREEMPT_COUNT=y
+CONFIG_PREEMPTION=y
+# CONFIG_PREEMPT_DYNAMIC is not set
+# CONFIG_SCHED_CORE is not set
+
+#
+# CPU/Task time and stats accounting
+#
+CONFIG_TICK_CPU_ACCOUNTING=y
+# CONFIG_VIRT_CPU_ACCOUNTING_GEN is not set
+# CONFIG_IRQ_TIME_ACCOUNTING is not set
+CONFIG_SCHED_THERMAL_PRESSURE=y
+# CONFIG_BSD_PROCESS_ACCT is not set
+CONFIG_TASKSTATS=y
+CONFIG_TASK_DELAY_ACCT=y
+# CONFIG_TASK_XACCT is not set
+# CONFIG_PSI is not set
+# end of CPU/Task time and stats accounting
+
+CONFIG_CPU_ISOLATION=y
+
+#
+# RCU Subsystem
+#
+CONFIG_TREE_RCU=y
+CONFIG_PREEMPT_RCU=y
+# CONFIG_RCU_EXPERT is not set
+CONFIG_TREE_SRCU=y
+CONFIG_RCU_STALL_COMMON=y
+CONFIG_RCU_NEED_SEGCBLIST=y
+# end of RCU Subsystem
+
+CONFIG_IKCONFIG=m
+CONFIG_IKCONFIG_PROC=y
+# CONFIG_IKHEADERS is not set
+CONFIG_LOG_BUF_SHIFT=18
+CONFIG_LOG_CPU_MAX_BUF_SHIFT=12
+CONFIG_GENERIC_SCHED_CLOCK=y
+
+#
+# Scheduler features
+#
+# CONFIG_UCLAMP_TASK is not set
+# end of Scheduler features
+
+CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y
+CONFIG_ARCH_WANT_BATCHED_UNMAP_TLB_FLUSH=y
+CONFIG_CC_HAS_INT128=y
+CONFIG_CC_IMPLICIT_FALLTHROUGH="-Wimplicit-fallthrough=5"
+CONFIG_GCC10_NO_ARRAY_BOUNDS=y
+CONFIG_CC_NO_ARRAY_BOUNDS=y
+CONFIG_GCC_NO_STRINGOP_OVERFLOW=y
+CONFIG_CC_NO_STRINGOP_OVERFLOW=y
+CONFIG_ARCH_SUPPORTS_INT128=y
+CONFIG_CGROUPS=y
+CONFIG_PAGE_COUNTER=y
+# CONFIG_CGROUP_FAVOR_DYNMODS is not set
+CONFIG_MEMCG=y
+CONFIG_MEMCG_KMEM=y
+CONFIG_BLK_CGROUP=y
+CONFIG_CGROUP_WRITEBACK=y
+CONFIG_CGROUP_SCHED=y
+CONFIG_FAIR_GROUP_SCHED=y
+CONFIG_CFS_BANDWIDTH=y
+# CONFIG_RT_GROUP_SCHED is not set
+CONFIG_SCHED_MM_CID=y
+CONFIG_CGROUP_PIDS=y
+CONFIG_CGROUP_RDMA=y
+CONFIG_CGROUP_FREEZER=y
+CONFIG_CPUSETS=y
+CONFIG_PROC_PID_CPUSET=y
+CONFIG_CGROUP_DEVICE=y
+CONFIG_CGROUP_CPUACCT=y
+# CONFIG_CGROUP_PERF is not set
+# CONFIG_CGROUP_MISC is not set
+CONFIG_SOCK_CGROUP_DATA=y
+CONFIG_NAMESPACES=y
+CONFIG_UTS_NS=y
+CONFIG_TIME_NS=y
+CONFIG_IPC_NS=y
+CONFIG_USER_NS=y
+CONFIG_PID_NS=y
+CONFIG_NET_NS=y
+# CONFIG_CHECKPOINT_RESTORE is not set
+CONFIG_SCHED_AUTOGROUP=y
+# CONFIG_RELAY is not set
+# CONFIG_BLK_DEV_INITRD is not set
+# CONFIG_BOOT_CONFIG is not set
+CONFIG_INITRAMFS_PRESERVE_MTIME=y
+CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE=y
+# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
+CONFIG_LD_ORPHAN_WARN=y
+CONFIG_LD_ORPHAN_WARN_LEVEL="warn"
+CONFIG_SYSCTL=y
+CONFIG_HAVE_UID16=y
+CONFIG_SYSCTL_EXCEPTION_TRACE=y
+# CONFIG_EXPERT is not set
+CONFIG_UID16=y
+CONFIG_MULTIUSER=y
+CONFIG_SYSFS_SYSCALL=y
+CONFIG_FHANDLE=y
+CONFIG_POSIX_TIMERS=y
+CONFIG_PRINTK=y
+CONFIG_BUG=y
+CONFIG_ELF_CORE=y
+CONFIG_BASE_FULL=y
+CONFIG_FUTEX=y
+CONFIG_FUTEX_PI=y
+CONFIG_EPOLL=y
+CONFIG_SIGNALFD=y
+CONFIG_TIMERFD=y
+CONFIG_EVENTFD=y
+CONFIG_SHMEM=y
+CONFIG_AIO=y
+CONFIG_IO_URING=y
+CONFIG_ADVISE_SYSCALLS=y
+CONFIG_MEMBARRIER=y
+CONFIG_KCMP=y
+CONFIG_RSEQ=y
+CONFIG_CACHESTAT_SYSCALL=y
+CONFIG_KALLSYMS=y
+# CONFIG_KALLSYMS_SELFTEST is not set
+CONFIG_KALLSYMS_BASE_RELATIVE=y
+CONFIG_ARCH_HAS_MEMBARRIER_SYNC_CORE=y
+CONFIG_HAVE_PERF_EVENTS=y
+CONFIG_GUEST_PERF_EVENTS=y
+
+#
+# Kernel Performance Events And Counters
+#
+CONFIG_PERF_EVENTS=y
+# end of Kernel Performance Events And Counters
+
+CONFIG_SYSTEM_DATA_VERIFICATION=y
+# CONFIG_PROFILING is not set
+
+#
+# Kexec and crash features
+#
+# CONFIG_KEXEC is not set
+# CONFIG_KEXEC_FILE is not set
+# CONFIG_CRASH_DUMP is not set
+# end of Kexec and crash features
+# end of General setup
+
+CONFIG_ARM64=y
+CONFIG_GCC_SUPPORTS_DYNAMIC_FTRACE_WITH_ARGS=y
+CONFIG_64BIT=y
+CONFIG_MMU=y
+CONFIG_ARM64_PAGE_SHIFT=12
+CONFIG_ARM64_CONT_PTE_SHIFT=4
+CONFIG_ARM64_CONT_PMD_SHIFT=4
+CONFIG_ARCH_MMAP_RND_BITS_MIN=18
+CONFIG_ARCH_MMAP_RND_BITS_MAX=33
+CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=11
+CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MAX=16
+CONFIG_STACKTRACE_SUPPORT=y
+CONFIG_ILLEGAL_POINTER_VALUE=0xdead000000000000
+CONFIG_LOCKDEP_SUPPORT=y
+CONFIG_GENERIC_BUG=y
+CONFIG_GENERIC_BUG_RELATIVE_POINTERS=y
+CONFIG_GENERIC_HWEIGHT=y
+CONFIG_GENERIC_CSUM=y
+CONFIG_GENERIC_CALIBRATE_DELAY=y
+CONFIG_SMP=y
+CONFIG_KERNEL_MODE_NEON=y
+CONFIG_FIX_EARLYCON_MEM=y
+CONFIG_PGTABLE_LEVELS=4
+CONFIG_ARCH_SUPPORTS_UPROBES=y
+CONFIG_ARCH_PROC_KCORE_TEXT=y
+CONFIG_BUILTIN_RETURN_ADDRESS_STRIPS_PAC=y
+
+#
+# Platform selection
+#
+# CONFIG_ARCH_ACTIONS is not set
+# CONFIG_ARCH_SUNXI is not set
+# CONFIG_ARCH_ALPINE is not set
+# CONFIG_ARCH_APPLE is not set
+# CONFIG_ARCH_BCM is not set
+# CONFIG_ARCH_BERLIN is not set
+# CONFIG_ARCH_BITMAIN is not set
+# CONFIG_ARCH_EXYNOS is not set
+# CONFIG_ARCH_SPARX5 is not set
+# CONFIG_ARCH_K3 is not set
+# CONFIG_ARCH_LG1K is not set
+# CONFIG_ARCH_HISI is not set
+# CONFIG_ARCH_KEEMBAY is not set
+# CONFIG_ARCH_MEDIATEK is not set
+# CONFIG_ARCH_MESON is not set
+# CONFIG_ARCH_MVEBU is not set
+# CONFIG_ARCH_NXP is not set
+# CONFIG_ARCH_MA35 is not set
+# CONFIG_ARCH_NPCM is not set
+# CONFIG_ARCH_PENSANDO is not set
+# CONFIG_ARCH_QCOM is not set
+# CONFIG_ARCH_REALTEK is not set
+# CONFIG_ARCH_RENESAS is not set
+CONFIG_ARCH_ROCKCHIP=y
+# CONFIG_ARCH_SEATTLE is not set
+# CONFIG_ARCH_INTEL_SOCFPGA is not set
+# CONFIG_ARCH_STM32 is not set
+# CONFIG_ARCH_SYNQUACER is not set
+# CONFIG_ARCH_TEGRA is not set
+# CONFIG_ARCH_SPRD is not set
+# CONFIG_ARCH_THUNDER is not set
+# CONFIG_ARCH_THUNDER2 is not set
+# CONFIG_ARCH_UNIPHIER is not set
+# CONFIG_ARCH_VEXPRESS is not set
+# CONFIG_ARCH_VISCONTI is not set
+# CONFIG_ARCH_XGENE is not set
+# CONFIG_ARCH_ZYNQMP is not set
+# end of Platform selection
+
+#
+# Kernel Features
+#
+
+#
+# ARM errata workarounds via the alternatives framework
+#
+# CONFIG_AMPERE_ERRATUM_AC03_CPU_38 is not set
+CONFIG_ARM64_WORKAROUND_CLEAN_CACHE=y
+CONFIG_ARM64_ERRATUM_826319=y
+CONFIG_ARM64_ERRATUM_827319=y
+CONFIG_ARM64_ERRATUM_824069=y
+CONFIG_ARM64_ERRATUM_819472=y
+CONFIG_ARM64_ERRATUM_832075=y
+CONFIG_ARM64_ERRATUM_834220=y
+CONFIG_ARM64_ERRATUM_1742098=y
+CONFIG_ARM64_ERRATUM_845719=y
+CONFIG_ARM64_ERRATUM_843419=y
+CONFIG_ARM64_LD_HAS_FIX_ERRATUM_843419=y
+CONFIG_ARM64_ERRATUM_1024718=y
+CONFIG_ARM64_ERRATUM_1418040=y
+CONFIG_ARM64_WORKAROUND_SPECULATIVE_AT=y
+CONFIG_ARM64_ERRATUM_1165522=y
+CONFIG_ARM64_ERRATUM_1319367=y
+CONFIG_ARM64_ERRATUM_1530923=y
+CONFIG_ARM64_WORKAROUND_REPEAT_TLBI=y
+# CONFIG_ARM64_ERRATUM_2441007 is not set
+CONFIG_ARM64_ERRATUM_1286807=y
+CONFIG_ARM64_ERRATUM_1463225=y
+CONFIG_ARM64_ERRATUM_1542419=y
+CONFIG_ARM64_ERRATUM_1508412=y
+# CONFIG_ARM64_ERRATUM_2051678 is not set
+# CONFIG_ARM64_ERRATUM_2077057 is not set
+# CONFIG_ARM64_ERRATUM_2658417 is not set
+# CONFIG_ARM64_ERRATUM_2054223 is not set
+# CONFIG_ARM64_ERRATUM_2067961 is not set
+# CONFIG_ARM64_ERRATUM_2441009 is not set
+# CONFIG_ARM64_ERRATUM_2457168 is not set
+# CONFIG_ARM64_ERRATUM_2645198 is not set
+# CONFIG_ARM64_ERRATUM_2966298 is not set
+# CONFIG_ARM64_ERRATUM_3117295 is not set
+CONFIG_CAVIUM_ERRATUM_22375=y
+CONFIG_CAVIUM_ERRATUM_23154=y
+CONFIG_CAVIUM_ERRATUM_27456=y
+CONFIG_CAVIUM_ERRATUM_30115=y
+CONFIG_CAVIUM_TX2_ERRATUM_219=y
+CONFIG_FUJITSU_ERRATUM_010001=y
+CONFIG_HISILICON_ERRATUM_161600802=y
+CONFIG_QCOM_FALKOR_ERRATUM_1003=y
+CONFIG_QCOM_FALKOR_ERRATUM_1009=y
+CONFIG_QCOM_QDF2400_ERRATUM_0065=y
+CONFIG_QCOM_FALKOR_ERRATUM_E1041=y
+CONFIG_NVIDIA_CARMEL_CNP_ERRATUM=y
+CONFIG_ROCKCHIP_ERRATUM_3588001=y
+CONFIG_SOCIONEXT_SYNQUACER_PREITS=y
+# end of ARM errata workarounds via the alternatives framework
+
+CONFIG_ARM64_4K_PAGES=y
+# CONFIG_ARM64_16K_PAGES is not set
+# CONFIG_ARM64_64K_PAGES is not set
+# CONFIG_ARM64_VA_BITS_39 is not set
+CONFIG_ARM64_VA_BITS_48=y
+CONFIG_ARM64_VA_BITS=48
+CONFIG_ARM64_PA_BITS_48=y
+CONFIG_ARM64_PA_BITS=48
+# CONFIG_CPU_BIG_ENDIAN is not set
+CONFIG_CPU_LITTLE_ENDIAN=y
+CONFIG_SCHED_MC=y
+# CONFIG_SCHED_CLUSTER is not set
+CONFIG_SCHED_SMT=y
+CONFIG_NR_CPUS=8
+CONFIG_HOTPLUG_CPU=y
+# CONFIG_NUMA is not set
+# CONFIG_HZ_100 is not set
+# CONFIG_HZ_250 is not set
+# CONFIG_HZ_300 is not set
+CONFIG_HZ_1000=y
+CONFIG_HZ=1000
+CONFIG_SCHED_HRTICK=y
+CONFIG_ARCH_SPARSEMEM_ENABLE=y
+CONFIG_HW_PERF_EVENTS=y
+CONFIG_CC_HAVE_SHADOW_CALL_STACK=y
+# CONFIG_PARAVIRT is not set
+# CONFIG_PARAVIRT_TIME_ACCOUNTING is not set
+CONFIG_ARCH_SUPPORTS_KEXEC=y
+CONFIG_ARCH_SUPPORTS_KEXEC_FILE=y
+CONFIG_ARCH_SUPPORTS_KEXEC_SIG=y
+CONFIG_ARCH_SUPPORTS_KEXEC_IMAGE_VERIFY_SIG=y
+CONFIG_ARCH_DEFAULT_KEXEC_IMAGE_VERIFY_SIG=y
+CONFIG_ARCH_SUPPORTS_CRASH_DUMP=y
+CONFIG_TRANS_TABLE=y
+# CONFIG_XEN is not set
+CONFIG_ARCH_FORCE_MAX_ORDER=10
+CONFIG_UNMAP_KERNEL_AT_EL0=y
+CONFIG_MITIGATE_SPECTRE_BRANCH_HISTORY=y
+CONFIG_RODATA_FULL_DEFAULT_ENABLED=y
+# CONFIG_ARM64_SW_TTBR0_PAN is not set
+CONFIG_ARM64_TAGGED_ADDR_ABI=y
+CONFIG_COMPAT=y
+CONFIG_KUSER_HELPERS=y
+# CONFIG_COMPAT_ALIGNMENT_FIXUPS is not set
+CONFIG_ARMV8_DEPRECATED=y
+CONFIG_SWP_EMULATION=y
+CONFIG_CP15_BARRIER_EMULATION=y
+CONFIG_SETEND_EMULATION=y
+
+#
+# ARMv8.1 architectural features
+#
+CONFIG_ARM64_HW_AFDBM=y
+CONFIG_ARM64_PAN=y
+CONFIG_AS_HAS_LSE_ATOMICS=y
+CONFIG_ARM64_LSE_ATOMICS=y
+CONFIG_ARM64_USE_LSE_ATOMICS=y
+# end of ARMv8.1 architectural features
+
+#
+# ARMv8.2 architectural features
+#
+CONFIG_AS_HAS_ARMV8_2=y
+CONFIG_AS_HAS_SHA3=y
+# CONFIG_ARM64_PMEM is not set
+CONFIG_ARM64_RAS_EXTN=y
+CONFIG_ARM64_CNP=y
+# end of ARMv8.2 architectural features
+
+#
+# ARMv8.3 architectural features
+#
+CONFIG_ARM64_PTR_AUTH=y
+CONFIG_ARM64_PTR_AUTH_KERNEL=y
+CONFIG_CC_HAS_BRANCH_PROT_PAC_RET=y
+CONFIG_CC_HAS_SIGN_RETURN_ADDRESS=y
+CONFIG_AS_HAS_ARMV8_3=y
+CONFIG_AS_HAS_CFI_NEGATE_RA_STATE=y
+CONFIG_AS_HAS_LDAPR=y
+# end of ARMv8.3 architectural features
+
+#
+# ARMv8.4 architectural features
+#
+CONFIG_ARM64_AMU_EXTN=y
+CONFIG_AS_HAS_ARMV8_4=y
+CONFIG_ARM64_TLB_RANGE=y
+# end of ARMv8.4 architectural features
+
+#
+# ARMv8.5 architectural features
+#
+CONFIG_AS_HAS_ARMV8_5=y
+CONFIG_ARM64_BTI=y
+CONFIG_CC_HAS_BRANCH_PROT_PAC_RET_BTI=y
+CONFIG_ARM64_E0PD=y
+CONFIG_ARM64_AS_HAS_MTE=y
+CONFIG_ARM64_MTE=y
+# end of ARMv8.5 architectural features
+
+#
+# ARMv8.7 architectural features
+#
+CONFIG_ARM64_EPAN=y
+# end of ARMv8.7 architectural features
+
+CONFIG_ARM64_SVE=y
+CONFIG_ARM64_SME=y
+# CONFIG_ARM64_PSEUDO_NMI is not set
+CONFIG_RELOCATABLE=y
+# CONFIG_RANDOMIZE_BASE is not set
+CONFIG_CC_HAVE_STACKPROTECTOR_SYSREG=y
+CONFIG_STACKPROTECTOR_PER_TASK=y
+# end of Kernel Features
+
+#
+# Boot options
+#
+CONFIG_CMDLINE=""
+CONFIG_EFI_STUB=y
+CONFIG_EFI=y
+CONFIG_DMI=y
+# end of Boot options
+
+#
+# Power management options
+#
+CONFIG_SUSPEND=y
+CONFIG_SUSPEND_FREEZER=y
+CONFIG_HIBERNATE_CALLBACKS=y
+CONFIG_HIBERNATION=y
+CONFIG_HIBERNATION_SNAPSHOT_DEV=y
+CONFIG_PM_STD_PARTITION=""
+CONFIG_PM_SLEEP=y
+CONFIG_PM_SLEEP_SMP=y
+CONFIG_PM_AUTOSLEEP=y
+# CONFIG_PM_USERSPACE_AUTOSLEEP is not set
+# CONFIG_PM_WAKELOCKS is not set
+CONFIG_PM=y
+# CONFIG_PM_DEBUG is not set
+CONFIG_PM_CLK=y
+CONFIG_PM_GENERIC_DOMAINS=y
+# CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set
+CONFIG_PM_GENERIC_DOMAINS_SLEEP=y
+CONFIG_PM_GENERIC_DOMAINS_OF=y
+CONFIG_CPU_PM=y
+CONFIG_ENERGY_MODEL=y
+CONFIG_ARCH_HIBERNATION_POSSIBLE=y
+CONFIG_ARCH_HIBERNATION_HEADER=y
+CONFIG_ARCH_SUSPEND_POSSIBLE=y
+# end of Power management options
+
+#
+# CPU Power Management
+#
+
+#
+# CPU Idle
+#
+CONFIG_CPU_IDLE=y
+CONFIG_CPU_IDLE_MULTIPLE_DRIVERS=y
+CONFIG_CPU_IDLE_GOV_LADDER=y
+CONFIG_CPU_IDLE_GOV_MENU=y
+CONFIG_CPU_IDLE_GOV_TEO=y
+CONFIG_DT_IDLE_STATES=y
+CONFIG_DT_IDLE_GENPD=y
+
+#
+# ARM CPU Idle Drivers
+#
+CONFIG_ARM_PSCI_CPUIDLE=y
+CONFIG_ARM_PSCI_CPUIDLE_DOMAIN=y
+# end of ARM CPU Idle Drivers
+# end of CPU Idle
+
+#
+# CPU Frequency scaling
+#
+CONFIG_CPU_FREQ=y
+CONFIG_CPU_FREQ_GOV_ATTR_SET=y
+CONFIG_CPU_FREQ_GOV_COMMON=y
+# CONFIG_CPU_FREQ_STAT is not set
+# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set
+# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set
+# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
+# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set
+# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
+CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL=y
+CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
+CONFIG_CPU_FREQ_GOV_POWERSAVE=m
+CONFIG_CPU_FREQ_GOV_USERSPACE=m
+CONFIG_CPU_FREQ_GOV_ONDEMAND=m
+CONFIG_CPU_FREQ_GOV_CONSERVATIVE=m
+CONFIG_CPU_FREQ_GOV_SCHEDUTIL=y
+
+#
+# CPU frequency scaling drivers
+#
+CONFIG_CPUFREQ_DT=m
+CONFIG_CPUFREQ_DT_PLATDEV=y
+CONFIG_ARM_SCPI_CPUFREQ=m
+# end of CPU Frequency scaling
+# end of CPU Power Management
+
+CONFIG_ARCH_SUPPORTS_ACPI=y
+# CONFIG_ACPI is not set
+CONFIG_HAVE_KVM=y
+CONFIG_KVM_COMMON=y
+CONFIG_HAVE_KVM_IRQCHIP=y
+CONFIG_HAVE_KVM_IRQ_ROUTING=y
+CONFIG_HAVE_KVM_DIRTY_RING=y
+CONFIG_HAVE_KVM_DIRTY_RING_ACQ_REL=y
+CONFIG_NEED_KVM_DIRTY_RING_WITH_BITMAP=y
+CONFIG_KVM_MMIO=y
+CONFIG_HAVE_KVM_MSI=y
+CONFIG_HAVE_KVM_CPU_RELAX_INTERCEPT=y
+CONFIG_KVM_VFIO=y
+CONFIG_KVM_GENERIC_DIRTYLOG_READ_PROTECT=y
+CONFIG_HAVE_KVM_IRQ_BYPASS=y
+CONFIG_HAVE_KVM_VCPU_RUN_PID_CHANGE=y
+CONFIG_KVM_XFER_TO_GUEST_WORK=y
+CONFIG_KVM_GENERIC_HARDWARE_ENABLING=y
+CONFIG_KVM_GENERIC_MMU_NOTIFIER=y
+CONFIG_VIRTUALIZATION=y
+CONFIG_KVM=y
+# CONFIG_NVHE_EL2_DEBUG is not set
+
+#
+# General architecture-dependent options
+#
+CONFIG_ARCH_HAS_SUBPAGE_FAULTS=y
+CONFIG_HOTPLUG_CORE_SYNC=y
+CONFIG_HOTPLUG_CORE_SYNC_DEAD=y
+# CONFIG_KPROBES is not set
+CONFIG_JUMP_LABEL=y
+# CONFIG_STATIC_KEYS_SELFTEST is not set
+CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y
+CONFIG_HAVE_IOREMAP_PROT=y
+CONFIG_HAVE_KPROBES=y
+CONFIG_HAVE_KRETPROBES=y
+CONFIG_ARCH_CORRECT_STACKTRACE_ON_KRETPROBE=y
+CONFIG_HAVE_FUNCTION_ERROR_INJECTION=y
+CONFIG_HAVE_NMI=y
+CONFIG_TRACE_IRQFLAGS_SUPPORT=y
+CONFIG_TRACE_IRQFLAGS_NMI_SUPPORT=y
+CONFIG_HAVE_ARCH_TRACEHOOK=y
+CONFIG_HAVE_DMA_CONTIGUOUS=y
+CONFIG_GENERIC_SMP_IDLE_THREAD=y
+CONFIG_GENERIC_IDLE_POLL_SETUP=y
+CONFIG_ARCH_HAS_FORTIFY_SOURCE=y
+CONFIG_ARCH_HAS_KEEPINITRD=y
+CONFIG_ARCH_HAS_SET_MEMORY=y
+CONFIG_ARCH_HAS_SET_DIRECT_MAP=y
+CONFIG_HAVE_ARCH_THREAD_STRUCT_WHITELIST=y
+CONFIG_ARCH_WANTS_NO_INSTR=y
+CONFIG_HAVE_ASM_MODVERSIONS=y
+CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y
+CONFIG_HAVE_RSEQ=y
+CONFIG_HAVE_FUNCTION_ARG_ACCESS_API=y
+CONFIG_HAVE_HW_BREAKPOINT=y
+CONFIG_HAVE_PERF_REGS=y
+CONFIG_HAVE_PERF_USER_STACK_DUMP=y
+CONFIG_HAVE_ARCH_JUMP_LABEL=y
+CONFIG_HAVE_ARCH_JUMP_LABEL_RELATIVE=y
+CONFIG_MMU_GATHER_TABLE_FREE=y
+CONFIG_MMU_GATHER_RCU_TABLE_FREE=y
+CONFIG_MMU_LAZY_TLB_REFCOUNT=y
+CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y
+CONFIG_ARCH_HAS_NMI_SAFE_THIS_CPU_OPS=y
+CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y
+CONFIG_HAVE_CMPXCHG_LOCAL=y
+CONFIG_HAVE_CMPXCHG_DOUBLE=y
+CONFIG_ARCH_WANT_COMPAT_IPC_PARSE_VERSION=y
+CONFIG_HAVE_ARCH_SECCOMP=y
+CONFIG_HAVE_ARCH_SECCOMP_FILTER=y
+CONFIG_SECCOMP=y
+CONFIG_SECCOMP_FILTER=y
+# CONFIG_SECCOMP_CACHE_DEBUG is not set
+CONFIG_HAVE_ARCH_STACKLEAK=y
+CONFIG_HAVE_STACKPROTECTOR=y
+CONFIG_STACKPROTECTOR=y
+CONFIG_STACKPROTECTOR_STRONG=y
+CONFIG_ARCH_SUPPORTS_SHADOW_CALL_STACK=y
+# CONFIG_SHADOW_CALL_STACK is not set
+CONFIG_ARCH_SUPPORTS_LTO_CLANG=y
+CONFIG_ARCH_SUPPORTS_LTO_CLANG_THIN=y
+CONFIG_LTO_NONE=y
+CONFIG_ARCH_SUPPORTS_CFI_CLANG=y
+CONFIG_HAVE_CONTEXT_TRACKING_USER=y
+CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y
+CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y
+CONFIG_HAVE_MOVE_PUD=y
+CONFIG_HAVE_MOVE_PMD=y
+CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y
+CONFIG_HAVE_ARCH_HUGE_VMAP=y
+CONFIG_HAVE_ARCH_HUGE_VMALLOC=y
+CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y
+CONFIG_HAVE_MOD_ARCH_SPECIFIC=y
+CONFIG_MODULES_USE_ELF_RELA=y
+CONFIG_HAVE_SOFTIRQ_ON_OWN_STACK=y
+CONFIG_SOFTIRQ_ON_OWN_STACK=y
+CONFIG_ARCH_HAS_ELF_RANDOMIZE=y
+CONFIG_HAVE_ARCH_MMAP_RND_BITS=y
+CONFIG_ARCH_MMAP_RND_BITS=18
+CONFIG_HAVE_ARCH_MMAP_RND_COMPAT_BITS=y
+CONFIG_ARCH_MMAP_RND_COMPAT_BITS=11
+CONFIG_PAGE_SIZE_LESS_THAN_64KB=y
+CONFIG_PAGE_SIZE_LESS_THAN_256KB=y
+CONFIG_ARCH_WANT_DEFAULT_TOPDOWN_MMAP_LAYOUT=y
+CONFIG_CLONE_BACKWARDS=y
+CONFIG_OLD_SIGSUSPEND3=y
+CONFIG_COMPAT_OLD_SIGACTION=y
+CONFIG_COMPAT_32BIT_TIME=y
+CONFIG_HAVE_ARCH_VMAP_STACK=y
+CONFIG_VMAP_STACK=y
+CONFIG_HAVE_ARCH_RANDOMIZE_KSTACK_OFFSET=y
+CONFIG_RANDOMIZE_KSTACK_OFFSET=y
+# CONFIG_RANDOMIZE_KSTACK_OFFSET_DEFAULT is not set
+CONFIG_ARCH_HAS_STRICT_KERNEL_RWX=y
+CONFIG_STRICT_KERNEL_RWX=y
+CONFIG_ARCH_HAS_STRICT_MODULE_RWX=y
+CONFIG_STRICT_MODULE_RWX=y
+CONFIG_HAVE_ARCH_COMPILER_H=y
+CONFIG_HAVE_ARCH_PREL32_RELOCATIONS=y
+CONFIG_ARCH_USE_MEMREMAP_PROT=y
+CONFIG_ARCH_HAS_RELR=y
+CONFIG_HAVE_PREEMPT_DYNAMIC=y
+CONFIG_HAVE_PREEMPT_DYNAMIC_KEY=y
+CONFIG_ARCH_WANT_LD_ORPHAN_WARN=y
+CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
+CONFIG_ARCH_SUPPORTS_PAGE_TABLE_CHECK=y
+CONFIG_ARCH_HAVE_TRACE_MMIO_ACCESS=y
+CONFIG_ARCH_HAS_HW_PTE_YOUNG=y
+
+#
+# GCOV-based kernel profiling
+#
+CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y
+# end of GCOV-based kernel profiling
+
+CONFIG_HAVE_GCC_PLUGINS=y
+# CONFIG_GCC_PLUGINS is not set
+CONFIG_FUNCTION_ALIGNMENT_4B=y
+CONFIG_FUNCTION_ALIGNMENT=4
+# end of General architecture-dependent options
+
+CONFIG_RT_MUTEXES=y
+CONFIG_BASE_SMALL=0
+CONFIG_MODULE_SIG_FORMAT=y
+CONFIG_MODULES=y
+# CONFIG_MODULE_FORCE_LOAD is not set
+CONFIG_MODULE_UNLOAD=y
+# CONFIG_MODULE_FORCE_UNLOAD is not set
+# CONFIG_MODULE_UNLOAD_TAINT_TRACKING is not set
+# CONFIG_MODVERSIONS is not set
+# CONFIG_MODULE_SRCVERSION_ALL is not set
+CONFIG_MODULE_SIG=y
+# CONFIG_MODULE_SIG_FORCE is not set
+CONFIG_MODULE_SIG_ALL=y
+CONFIG_MODULE_SIG_SHA256=y
+# CONFIG_MODULE_SIG_SHA384 is not set
+# CONFIG_MODULE_SIG_SHA512 is not set
+# CONFIG_MODULE_SIG_SHA3_256 is not set
+# CONFIG_MODULE_SIG_SHA3_384 is not set
+# CONFIG_MODULE_SIG_SHA3_512 is not set
+CONFIG_MODULE_SIG_HASH="sha256"
+CONFIG_MODULE_COMPRESS_NONE=y
+# CONFIG_MODULE_COMPRESS_GZIP is not set
+# CONFIG_MODULE_COMPRESS_XZ is not set
+# CONFIG_MODULE_COMPRESS_ZSTD is not set
+# CONFIG_MODULE_ALLOW_MISSING_NAMESPACE_IMPORTS is not set
+CONFIG_MODPROBE_PATH="/sbin/modprobe"
+CONFIG_MODULES_TREE_LOOKUP=y
+CONFIG_BLOCK=y
+CONFIG_BLOCK_LEGACY_AUTOLOAD=y
+CONFIG_BLK_CGROUP_RWSTAT=y
+CONFIG_BLK_CGROUP_PUNT_BIO=y
+CONFIG_BLK_DEV_BSG_COMMON=y
+CONFIG_BLK_ICQ=y
+# CONFIG_BLK_DEV_BSGLIB is not set
+# CONFIG_BLK_DEV_INTEGRITY is not set
+# CONFIG_BLK_DEV_WRITE_MOUNTED is not set
+# CONFIG_BLK_DEV_ZONED is not set
+# CONFIG_BLK_DEV_THROTTLING is not set
+CONFIG_BLK_WBT=y
+CONFIG_BLK_WBT_MQ=y
+# CONFIG_BLK_CGROUP_IOLATENCY is not set
+# CONFIG_BLK_CGROUP_IOCOST is not set
+# CONFIG_BLK_CGROUP_IOPRIO is not set
+# CONFIG_BLK_SED_OPAL is not set
+# CONFIG_BLK_INLINE_ENCRYPTION is not set
+
+#
+# Partition Types
+#
+CONFIG_PARTITION_ADVANCED=y
+# CONFIG_ACORN_PARTITION is not set
+# CONFIG_AIX_PARTITION is not set
+# CONFIG_OSF_PARTITION is not set
+# CONFIG_AMIGA_PARTITION is not set
+# CONFIG_ATARI_PARTITION is not set
+CONFIG_MAC_PARTITION=y
+CONFIG_MSDOS_PARTITION=y
+CONFIG_BSD_DISKLABEL=y
+CONFIG_MINIX_SUBPARTITION=y
+# CONFIG_SOLARIS_X86_PARTITION is not set
+# CONFIG_UNIXWARE_DISKLABEL is not set
+CONFIG_LDM_PARTITION=y
+# CONFIG_LDM_DEBUG is not set
+# CONFIG_SGI_PARTITION is not set
+# CONFIG_ULTRIX_PARTITION is not set
+# CONFIG_SUN_PARTITION is not set
+# CONFIG_KARMA_PARTITION is not set
+CONFIG_EFI_PARTITION=y
+# CONFIG_SYSV68_PARTITION is not set
+# CONFIG_CMDLINE_PARTITION is not set
+# end of Partition Types
+
+CONFIG_BLK_MQ_PCI=y
+CONFIG_BLK_MQ_VIRTIO=y
+CONFIG_BLK_PM=y
+CONFIG_BLOCK_HOLDER_DEPRECATED=y
+CONFIG_BLK_MQ_STACKING=y
+
+#
+# IO Schedulers
+#
+CONFIG_MQ_IOSCHED_DEADLINE=y
+CONFIG_MQ_IOSCHED_KYBER=m
+CONFIG_IOSCHED_BFQ=m
+CONFIG_BFQ_GROUP_IOSCHED=y
+# CONFIG_BFQ_CGROUP_DEBUG is not set
+# end of IO Schedulers
+
+CONFIG_PREEMPT_NOTIFIERS=y
+CONFIG_PADATA=y
+CONFIG_ASN1=y
+CONFIG_UNINLINE_SPIN_UNLOCK=y
+CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y
+CONFIG_MUTEX_SPIN_ON_OWNER=y
+CONFIG_RWSEM_SPIN_ON_OWNER=y
+CONFIG_LOCK_SPIN_ON_OWNER=y
+CONFIG_ARCH_USE_QUEUED_SPINLOCKS=y
+CONFIG_QUEUED_SPINLOCKS=y
+CONFIG_ARCH_USE_QUEUED_RWLOCKS=y
+CONFIG_QUEUED_RWLOCKS=y
+CONFIG_ARCH_HAS_NON_OVERLAPPING_ADDRESS_SPACE=y
+CONFIG_ARCH_HAS_SYSCALL_WRAPPER=y
+CONFIG_FREEZER=y
+
+#
+# Executable file formats
+#
+CONFIG_BINFMT_ELF=y
+CONFIG_COMPAT_BINFMT_ELF=y
+CONFIG_ARCH_BINFMT_ELF_STATE=y
+CONFIG_ARCH_BINFMT_ELF_EXTRA_PHDRS=y
+CONFIG_ARCH_HAVE_ELF_PROT=y
+CONFIG_ARCH_USE_GNU_PROPERTY=y
+CONFIG_ELFCORE=y
+# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
+CONFIG_BINFMT_SCRIPT=y
+CONFIG_BINFMT_MISC=m
+CONFIG_COREDUMP=y
+# end of Executable file formats
+
+#
+# Memory Management options
+#
+CONFIG_ZPOOL=y
+CONFIG_SWAP=y
+CONFIG_ZSWAP=y
+# CONFIG_ZSWAP_DEFAULT_ON is not set
+# CONFIG_ZSWAP_EXCLUSIVE_LOADS_DEFAULT_ON is not set
+# CONFIG_ZSWAP_SHRINKER_DEFAULT_ON is not set
+# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_DEFLATE is not set
+# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZO is not set
+# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_842 is not set
+# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZ4 is not set
+# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZ4HC is not set
+CONFIG_ZSWAP_COMPRESSOR_DEFAULT_ZSTD=y
+CONFIG_ZSWAP_COMPRESSOR_DEFAULT="zstd"
+# CONFIG_ZSWAP_ZPOOL_DEFAULT_ZBUD is not set
+# CONFIG_ZSWAP_ZPOOL_DEFAULT_Z3FOLD is not set
+CONFIG_ZSWAP_ZPOOL_DEFAULT_ZSMALLOC=y
+CONFIG_ZSWAP_ZPOOL_DEFAULT="zsmalloc"
+CONFIG_ZBUD=y
+CONFIG_Z3FOLD=y
+CONFIG_ZSMALLOC=y
+# CONFIG_ZSMALLOC_STAT is not set
+CONFIG_ZSMALLOC_CHAIN_SIZE=8
+
+#
+# Slab allocator options
+#
+CONFIG_SLUB=y
+CONFIG_SLAB_MERGE_DEFAULT=y
+# CONFIG_SLAB_FREELIST_RANDOM is not set
+# CONFIG_SLAB_FREELIST_HARDENED is not set
+# CONFIG_SLUB_STATS is not set
+# CONFIG_SLUB_CPU_PARTIAL is not set
+# CONFIG_RANDOM_KMALLOC_CACHES is not set
+# end of Slab allocator options
+
+# CONFIG_SHUFFLE_PAGE_ALLOCATOR is not set
+# CONFIG_COMPAT_BRK is not set
+CONFIG_SPARSEMEM=y
+CONFIG_SPARSEMEM_EXTREME=y
+CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y
+CONFIG_SPARSEMEM_VMEMMAP=y
+CONFIG_HAVE_FAST_GUP=y
+CONFIG_ARCH_KEEP_MEMBLOCK=y
+CONFIG_EXCLUSIVE_SYSTEM_RAM=y
+CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
+CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
+# CONFIG_MEMORY_HOTPLUG is not set
+CONFIG_ARCH_MHP_MEMMAP_ON_MEMORY_ENABLE=y
+CONFIG_SPLIT_PTLOCK_CPUS=4
+CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK=y
+CONFIG_MEMORY_BALLOON=y
+CONFIG_BALLOON_COMPACTION=y
+CONFIG_COMPACTION=y
+CONFIG_COMPACT_UNEVICTABLE_DEFAULT=1
+CONFIG_PAGE_REPORTING=y
+CONFIG_MIGRATION=y
+CONFIG_PCP_BATCH_SCALE_MAX=5
+CONFIG_PHYS_ADDR_T_64BIT=y
+CONFIG_MMU_NOTIFIER=y
+CONFIG_KSM=y
+CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
+CONFIG_ARCH_SUPPORTS_MEMORY_FAILURE=y
+# CONFIG_MEMORY_FAILURE is not set
+CONFIG_ARCH_WANTS_THP_SWAP=y
+# CONFIG_TRANSPARENT_HUGEPAGE is not set
+# CONFIG_CMA is not set
+CONFIG_GENERIC_EARLY_IOREMAP=y
+# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set
+# CONFIG_IDLE_PAGE_TRACKING is not set
+CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y
+CONFIG_ARCH_HAS_CURRENT_STACK_POINTER=y
+CONFIG_ARCH_HAS_PTE_DEVMAP=y
+CONFIG_ZONE_DMA=y
+CONFIG_ZONE_DMA32=y
+CONFIG_ARCH_USES_HIGH_VMA_FLAGS=y
+CONFIG_ARCH_USES_PG_ARCH_X=y
+CONFIG_VM_EVENT_COUNTERS=y
+# CONFIG_PERCPU_STATS is not set
+
+#
+# GUP_TEST needs to have DEBUG_FS enabled
+#
+# CONFIG_DMAPOOL_TEST is not set
+CONFIG_ARCH_HAS_PTE_SPECIAL=y
+CONFIG_MEMFD_CREATE=y
+CONFIG_SECRETMEM=y
+# CONFIG_ANON_VMA_NAME is not set
+# CONFIG_USERFAULTFD is not set
+CONFIG_LRU_GEN=y
+CONFIG_LRU_GEN_ENABLED=y
+# CONFIG_LRU_GEN_STATS is not set
+CONFIG_LRU_GEN_WALKS_MMU=y
+CONFIG_ARCH_SUPPORTS_PER_VMA_LOCK=y
+CONFIG_PER_VMA_LOCK=y
+CONFIG_LOCK_MM_AND_FIND_VMA=y
+
+#
+# Data Access Monitoring
+#
+# CONFIG_DAMON is not set
+# end of Data Access Monitoring
+# end of Memory Management options
+
+CONFIG_NET=y
+CONFIG_COMPAT_NETLINK_MESSAGES=y
+CONFIG_NET_INGRESS=y
+CONFIG_NET_EGRESS=y
+CONFIG_NET_XGRESS=y
+CONFIG_NET_REDIRECT=y
+CONFIG_SKB_EXTENSIONS=y
+
+#
+# Networking options
+#
+CONFIG_PACKET=y
+CONFIG_PACKET_DIAG=m
+CONFIG_UNIX=y
+CONFIG_UNIX_SCM=y
+CONFIG_AF_UNIX_OOB=y
+CONFIG_UNIX_DIAG=m
+CONFIG_TLS=m
+# CONFIG_TLS_DEVICE is not set
+# CONFIG_TLS_TOE is not set
+CONFIG_XFRM=y
+CONFIG_XFRM_ALGO=m
+CONFIG_XFRM_USER=m
+# CONFIG_XFRM_INTERFACE is not set
+CONFIG_XFRM_SUB_POLICY=y
+CONFIG_XFRM_MIGRATE=y
+CONFIG_XFRM_STATISTICS=y
+CONFIG_XFRM_AH=m
+CONFIG_XFRM_ESP=m
+CONFIG_XFRM_IPCOMP=m
+CONFIG_NET_KEY=m
+CONFIG_NET_KEY_MIGRATE=y
+CONFIG_NET_HANDSHAKE=y
+CONFIG_INET=y
+CONFIG_IP_MULTICAST=y
+CONFIG_IP_ADVANCED_ROUTER=y
+# CONFIG_IP_FIB_TRIE_STATS is not set
+CONFIG_IP_MULTIPLE_TABLES=y
+CONFIG_IP_ROUTE_MULTIPATH=y
+CONFIG_IP_ROUTE_VERBOSE=y
+CONFIG_IP_ROUTE_CLASSID=y
+# CONFIG_IP_PNP is not set
+CONFIG_NET_IPIP=m
+CONFIG_NET_IPGRE_DEMUX=m
+CONFIG_NET_IP_TUNNEL=m
+CONFIG_NET_IPGRE=m
+CONFIG_NET_IPGRE_BROADCAST=y
+CONFIG_IP_MROUTE_COMMON=y
+CONFIG_IP_MROUTE=y
+CONFIG_IP_MROUTE_MULTIPLE_TABLES=y
+CONFIG_IP_PIMSM_V1=y
+CONFIG_IP_PIMSM_V2=y
+CONFIG_SYN_COOKIES=y
+CONFIG_NET_IPVTI=m
+CONFIG_NET_UDP_TUNNEL=m
+CONFIG_NET_FOU=m
+CONFIG_NET_FOU_IP_TUNNELS=y
+CONFIG_INET_AH=m
+CONFIG_INET_ESP=m
+# CONFIG_INET_ESP_OFFLOAD is not set
+# CONFIG_INET_ESPINTCP is not set
+CONFIG_INET_IPCOMP=m
+CONFIG_INET_TABLE_PERTURB_ORDER=16
+CONFIG_INET_XFRM_TUNNEL=m
+CONFIG_INET_TUNNEL=m
+CONFIG_INET_DIAG=m
+CONFIG_INET_TCP_DIAG=m
+CONFIG_INET_UDP_DIAG=m
+CONFIG_INET_RAW_DIAG=m
+# CONFIG_INET_DIAG_DESTROY is not set
+CONFIG_TCP_CONG_ADVANCED=y
+# CONFIG_TCP_CONG_BIC is not set
+CONFIG_TCP_CONG_CUBIC=y
+# CONFIG_TCP_CONG_WESTWOOD is not set
+# CONFIG_TCP_CONG_HTCP is not set
+# CONFIG_TCP_CONG_HSTCP is not set
+# CONFIG_TCP_CONG_HYBLA is not set
+# CONFIG_TCP_CONG_VEGAS is not set
+# CONFIG_TCP_CONG_NV is not set
+# CONFIG_TCP_CONG_SCALABLE is not set
+# CONFIG_TCP_CONG_LP is not set
+# CONFIG_TCP_CONG_VENO is not set
+# CONFIG_TCP_CONG_YEAH is not set
+# CONFIG_TCP_CONG_ILLINOIS is not set
+# CONFIG_TCP_CONG_DCTCP is not set
+# CONFIG_TCP_CONG_CDG is not set
+# CONFIG_TCP_CONG_BBR is not set
+CONFIG_DEFAULT_CUBIC=y
+# CONFIG_DEFAULT_RENO is not set
+CONFIG_DEFAULT_TCP_CONG="cubic"
+CONFIG_TCP_SIGPOOL=y
+CONFIG_TCP_AO=y
+CONFIG_TCP_MD5SIG=y
+CONFIG_IPV6=y
+CONFIG_IPV6_ROUTER_PREF=y
+CONFIG_IPV6_ROUTE_INFO=y
+CONFIG_IPV6_OPTIMISTIC_DAD=y
+CONFIG_INET6_AH=m
+CONFIG_INET6_ESP=m
+# CONFIG_INET6_ESP_OFFLOAD is not set
+# CONFIG_INET6_ESPINTCP is not set
+CONFIG_INET6_IPCOMP=m
+CONFIG_IPV6_MIP6=m
+CONFIG_IPV6_ILA=m
+CONFIG_INET6_XFRM_TUNNEL=m
+CONFIG_INET6_TUNNEL=m
+CONFIG_IPV6_VTI=m
+CONFIG_IPV6_SIT=m
+CONFIG_IPV6_SIT_6RD=y
+CONFIG_IPV6_NDISC_NODETYPE=y
+CONFIG_IPV6_TUNNEL=m
+CONFIG_IPV6_GRE=m
+CONFIG_IPV6_FOU=m
+CONFIG_IPV6_FOU_TUNNEL=m
+CONFIG_IPV6_MULTIPLE_TABLES=y
+CONFIG_IPV6_SUBTREES=y
+CONFIG_IPV6_MROUTE=y
+CONFIG_IPV6_MROUTE_MULTIPLE_TABLES=y
+CONFIG_IPV6_PIMSM_V2=y
+CONFIG_IPV6_SEG6_LWTUNNEL=y
+CONFIG_IPV6_SEG6_HMAC=y
+CONFIG_IPV6_SEG6_BPF=y
+# CONFIG_IPV6_RPL_LWTUNNEL is not set
+# CONFIG_IPV6_IOAM6_LWTUNNEL is not set
+# CONFIG_NETLABEL is not set
+CONFIG_MPTCP=y
+CONFIG_INET_MPTCP_DIAG=m
+CONFIG_MPTCP_IPV6=y
+# CONFIG_NETWORK_SECMARK is not set
+CONFIG_NET_PTP_CLASSIFY=y
+CONFIG_NETWORK_PHY_TIMESTAMPING=y
+CONFIG_NETFILTER=y
+CONFIG_NETFILTER_ADVANCED=y
+CONFIG_BRIDGE_NETFILTER=m
+
+#
+# Core Netfilter Configuration
+#
+CONFIG_NETFILTER_INGRESS=y
+CONFIG_NETFILTER_EGRESS=y
+CONFIG_NETFILTER_SKIP_EGRESS=y
+CONFIG_NETFILTER_NETLINK=m
+CONFIG_NETFILTER_FAMILY_BRIDGE=y
+CONFIG_NETFILTER_FAMILY_ARP=y
+# CONFIG_NETFILTER_NETLINK_HOOK is not set
+CONFIG_NETFILTER_NETLINK_ACCT=m
+CONFIG_NETFILTER_NETLINK_QUEUE=m
+CONFIG_NETFILTER_NETLINK_LOG=m
+CONFIG_NETFILTER_NETLINK_OSF=m
+CONFIG_NF_CONNTRACK=m
+CONFIG_NF_LOG_SYSLOG=m
+CONFIG_NETFILTER_CONNCOUNT=m
+CONFIG_NF_CONNTRACK_MARK=y
+CONFIG_NF_CONNTRACK_ZONES=y
+CONFIG_NF_CONNTRACK_PROCFS=y
+CONFIG_NF_CONNTRACK_EVENTS=y
+CONFIG_NF_CONNTRACK_TIMEOUT=y
+CONFIG_NF_CONNTRACK_TIMESTAMP=y
+CONFIG_NF_CONNTRACK_LABELS=y
+CONFIG_NF_CONNTRACK_OVS=y
+CONFIG_NF_CT_PROTO_DCCP=y
+CONFIG_NF_CT_PROTO_GRE=y
+CONFIG_NF_CT_PROTO_SCTP=y
+CONFIG_NF_CT_PROTO_UDPLITE=y
+CONFIG_NF_CONNTRACK_AMANDA=m
+CONFIG_NF_CONNTRACK_FTP=m
+CONFIG_NF_CONNTRACK_H323=m
+CONFIG_NF_CONNTRACK_IRC=m
+CONFIG_NF_CONNTRACK_BROADCAST=m
+CONFIG_NF_CONNTRACK_NETBIOS_NS=m
+CONFIG_NF_CONNTRACK_SNMP=m
+CONFIG_NF_CONNTRACK_PPTP=m
+CONFIG_NF_CONNTRACK_SANE=m
+CONFIG_NF_CONNTRACK_SIP=m
+CONFIG_NF_CONNTRACK_TFTP=m
+CONFIG_NF_CT_NETLINK=m
+CONFIG_NF_CT_NETLINK_TIMEOUT=m
+CONFIG_NF_CT_NETLINK_HELPER=m
+CONFIG_NETFILTER_NETLINK_GLUE_CT=y
+CONFIG_NF_NAT=m
+CONFIG_NF_NAT_AMANDA=m
+CONFIG_NF_NAT_FTP=m
+CONFIG_NF_NAT_IRC=m
+CONFIG_NF_NAT_SIP=m
+CONFIG_NF_NAT_TFTP=m
+CONFIG_NF_NAT_REDIRECT=y
+CONFIG_NF_NAT_MASQUERADE=y
+CONFIG_NF_NAT_OVS=y
+CONFIG_NETFILTER_SYNPROXY=m
+CONFIG_NF_TABLES=m
+CONFIG_NF_TABLES_INET=y
+CONFIG_NF_TABLES_NETDEV=y
+CONFIG_NFT_NUMGEN=m
+CONFIG_NFT_CT=m
+CONFIG_NFT_FLOW_OFFLOAD=m
+CONFIG_NFT_CONNLIMIT=m
+CONFIG_NFT_LOG=m
+CONFIG_NFT_LIMIT=m
+CONFIG_NFT_MASQ=m
+CONFIG_NFT_REDIR=m
+CONFIG_NFT_NAT=m
+CONFIG_NFT_TUNNEL=m
+CONFIG_NFT_QUEUE=m
+CONFIG_NFT_QUOTA=m
+CONFIG_NFT_REJECT=m
+CONFIG_NFT_REJECT_INET=m
+CONFIG_NFT_COMPAT=m
+CONFIG_NFT_HASH=m
+CONFIG_NFT_FIB=m
+CONFIG_NFT_FIB_INET=m
+CONFIG_NFT_XFRM=m
+CONFIG_NFT_SOCKET=m
+CONFIG_NFT_OSF=m
+CONFIG_NFT_TPROXY=m
+# CONFIG_NFT_SYNPROXY is not set
+CONFIG_NF_DUP_NETDEV=m
+CONFIG_NFT_DUP_NETDEV=m
+CONFIG_NFT_FWD_NETDEV=m
+CONFIG_NFT_FIB_NETDEV=m
+CONFIG_NFT_REJECT_NETDEV=m
+CONFIG_NF_FLOW_TABLE_INET=m
+CONFIG_NF_FLOW_TABLE=m
+# CONFIG_NF_FLOW_TABLE_PROCFS is not set
+CONFIG_NETFILTER_XTABLES=m
+CONFIG_NETFILTER_XTABLES_COMPAT=y
+
+#
+# Xtables combined modules
+#
+CONFIG_NETFILTER_XT_MARK=m
+CONFIG_NETFILTER_XT_CONNMARK=m
+CONFIG_NETFILTER_XT_SET=m
+
+#
+# Xtables targets
+#
+CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m
+CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
+CONFIG_NETFILTER_XT_TARGET_CONNMARK=m
+CONFIG_NETFILTER_XT_TARGET_CT=m
+CONFIG_NETFILTER_XT_TARGET_DSCP=m
+CONFIG_NETFILTER_XT_TARGET_HL=m
+CONFIG_NETFILTER_XT_TARGET_HMARK=m
+CONFIG_NETFILTER_XT_TARGET_IDLETIMER=m
+CONFIG_NETFILTER_XT_TARGET_LED=m
+CONFIG_NETFILTER_XT_TARGET_LOG=m
+CONFIG_NETFILTER_XT_TARGET_MARK=m
+CONFIG_NETFILTER_XT_NAT=m
+CONFIG_NETFILTER_XT_TARGET_NETMAP=m
+CONFIG_NETFILTER_XT_TARGET_NFLOG=m
+CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
+# CONFIG_NETFILTER_XT_TARGET_NOTRACK is not set
+CONFIG_NETFILTER_XT_TARGET_RATEEST=m
+CONFIG_NETFILTER_XT_TARGET_REDIRECT=m
+CONFIG_NETFILTER_XT_TARGET_MASQUERADE=m
+CONFIG_NETFILTER_XT_TARGET_TEE=m
+CONFIG_NETFILTER_XT_TARGET_TPROXY=m
+CONFIG_NETFILTER_XT_TARGET_TRACE=m
+CONFIG_NETFILTER_XT_TARGET_TCPMSS=m
+CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m
+
+#
+# Xtables matches
+#
+CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m
+CONFIG_NETFILTER_XT_MATCH_BPF=m
+CONFIG_NETFILTER_XT_MATCH_CGROUP=m
+CONFIG_NETFILTER_XT_MATCH_CLUSTER=m
+CONFIG_NETFILTER_XT_MATCH_COMMENT=m
+CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m
+CONFIG_NETFILTER_XT_MATCH_CONNLABEL=m
+CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m
+CONFIG_NETFILTER_XT_MATCH_CONNMARK=m
+CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
+CONFIG_NETFILTER_XT_MATCH_CPU=m
+CONFIG_NETFILTER_XT_MATCH_DCCP=m
+CONFIG_NETFILTER_XT_MATCH_DEVGROUP=m
+CONFIG_NETFILTER_XT_MATCH_DSCP=m
+CONFIG_NETFILTER_XT_MATCH_ECN=m
+CONFIG_NETFILTER_XT_MATCH_ESP=m
+CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
+CONFIG_NETFILTER_XT_MATCH_HELPER=m
+CONFIG_NETFILTER_XT_MATCH_HL=m
+CONFIG_NETFILTER_XT_MATCH_IPCOMP=m
+CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
+CONFIG_NETFILTER_XT_MATCH_L2TP=m
+CONFIG_NETFILTER_XT_MATCH_LENGTH=m
+CONFIG_NETFILTER_XT_MATCH_LIMIT=m
+CONFIG_NETFILTER_XT_MATCH_MAC=m
+CONFIG_NETFILTER_XT_MATCH_MARK=m
+CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
+CONFIG_NETFILTER_XT_MATCH_NFACCT=m
+CONFIG_NETFILTER_XT_MATCH_OSF=m
+CONFIG_NETFILTER_XT_MATCH_OWNER=m
+CONFIG_NETFILTER_XT_MATCH_POLICY=m
+CONFIG_NETFILTER_XT_MATCH_PHYSDEV=m
+CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m
+CONFIG_NETFILTER_XT_MATCH_QUOTA=m
+CONFIG_NETFILTER_XT_MATCH_RATEEST=m
+CONFIG_NETFILTER_XT_MATCH_REALM=m
+CONFIG_NETFILTER_XT_MATCH_RECENT=m
+CONFIG_NETFILTER_XT_MATCH_SCTP=m
+CONFIG_NETFILTER_XT_MATCH_SOCKET=m
+CONFIG_NETFILTER_XT_MATCH_STATE=m
+CONFIG_NETFILTER_XT_MATCH_STATISTIC=m
+CONFIG_NETFILTER_XT_MATCH_STRING=m
+CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
+CONFIG_NETFILTER_XT_MATCH_TIME=m
+CONFIG_NETFILTER_XT_MATCH_U32=m
+# end of Core Netfilter Configuration
+
+CONFIG_IP_SET=m
+CONFIG_IP_SET_MAX=256
+CONFIG_IP_SET_BITMAP_IP=m
+CONFIG_IP_SET_BITMAP_IPMAC=m
+CONFIG_IP_SET_BITMAP_PORT=m
+CONFIG_IP_SET_HASH_IP=m
+CONFIG_IP_SET_HASH_IPMARK=m
+CONFIG_IP_SET_HASH_IPPORT=m
+CONFIG_IP_SET_HASH_IPPORTIP=m
+CONFIG_IP_SET_HASH_IPPORTNET=m
+CONFIG_IP_SET_HASH_IPMAC=m
+CONFIG_IP_SET_HASH_MAC=m
+CONFIG_IP_SET_HASH_NETPORTNET=m
+CONFIG_IP_SET_HASH_NET=m
+CONFIG_IP_SET_HASH_NETNET=m
+CONFIG_IP_SET_HASH_NETPORT=m
+CONFIG_IP_SET_HASH_NETIFACE=m
+CONFIG_IP_SET_LIST_SET=m
+# CONFIG_IP_VS is not set
+
+#
+# IP: Netfilter Configuration
+#
+CONFIG_NF_DEFRAG_IPV4=m
+CONFIG_NF_SOCKET_IPV4=m
+CONFIG_NF_TPROXY_IPV4=m
+CONFIG_NF_TABLES_IPV4=y
+CONFIG_NFT_REJECT_IPV4=m
+CONFIG_NFT_DUP_IPV4=m
+CONFIG_NFT_FIB_IPV4=m
+CONFIG_NF_TABLES_ARP=y
+CONFIG_NF_DUP_IPV4=m
+CONFIG_NF_LOG_ARP=m
+CONFIG_NF_LOG_IPV4=m
+CONFIG_NF_REJECT_IPV4=m
+CONFIG_NF_NAT_SNMP_BASIC=m
+CONFIG_NF_NAT_PPTP=m
+CONFIG_NF_NAT_H323=m
+CONFIG_IP_NF_IPTABLES=m
+CONFIG_IP_NF_MATCH_AH=m
+CONFIG_IP_NF_MATCH_ECN=m
+CONFIG_IP_NF_MATCH_RPFILTER=m
+CONFIG_IP_NF_MATCH_TTL=m
+CONFIG_IP_NF_FILTER=m
+CONFIG_IP_NF_TARGET_REJECT=m
+CONFIG_IP_NF_TARGET_SYNPROXY=m
+CONFIG_IP_NF_NAT=m
+CONFIG_IP_NF_TARGET_MASQUERADE=m
+CONFIG_IP_NF_TARGET_NETMAP=m
+CONFIG_IP_NF_TARGET_REDIRECT=m
+CONFIG_IP_NF_MANGLE=m
+CONFIG_IP_NF_TARGET_ECN=m
+CONFIG_IP_NF_TARGET_TTL=m
+CONFIG_IP_NF_RAW=m
+# CONFIG_IP_NF_SECURITY is not set
+CONFIG_IP_NF_ARPTABLES=m
+CONFIG_IP_NF_ARPFILTER=m
+CONFIG_IP_NF_ARP_MANGLE=m
+# end of IP: Netfilter Configuration
+
+#
+# IPv6: Netfilter Configuration
+#
+CONFIG_NF_SOCKET_IPV6=m
+CONFIG_NF_TPROXY_IPV6=m
+CONFIG_NF_TABLES_IPV6=y
+CONFIG_NFT_REJECT_IPV6=m
+CONFIG_NFT_DUP_IPV6=m
+CONFIG_NFT_FIB_IPV6=m
+CONFIG_NF_DUP_IPV6=m
+CONFIG_NF_REJECT_IPV6=m
+CONFIG_NF_LOG_IPV6=m
+CONFIG_IP6_NF_IPTABLES=m
+CONFIG_IP6_NF_MATCH_AH=m
+CONFIG_IP6_NF_MATCH_EUI64=m
+CONFIG_IP6_NF_MATCH_FRAG=m
+CONFIG_IP6_NF_MATCH_OPTS=m
+CONFIG_IP6_NF_MATCH_HL=m
+CONFIG_IP6_NF_MATCH_IPV6HEADER=m
+CONFIG_IP6_NF_MATCH_MH=m
+CONFIG_IP6_NF_MATCH_RPFILTER=m
+CONFIG_IP6_NF_MATCH_RT=m
+CONFIG_IP6_NF_MATCH_SRH=m
+CONFIG_IP6_NF_TARGET_HL=m
+CONFIG_IP6_NF_FILTER=m
+CONFIG_IP6_NF_TARGET_REJECT=m
+CONFIG_IP6_NF_TARGET_SYNPROXY=m
+CONFIG_IP6_NF_MANGLE=m
+CONFIG_IP6_NF_RAW=m
+# CONFIG_IP6_NF_SECURITY is not set
+CONFIG_IP6_NF_NAT=m
+CONFIG_IP6_NF_TARGET_MASQUERADE=m
+CONFIG_IP6_NF_TARGET_NPT=m
+# end of IPv6: Netfilter Configuration
+
+CONFIG_NF_DEFRAG_IPV6=m
+# CONFIG_NF_TABLES_BRIDGE is not set
+CONFIG_NF_CONNTRACK_BRIDGE=m
+# CONFIG_BRIDGE_NF_EBTABLES is not set
+CONFIG_IP_DCCP=m
+CONFIG_INET_DCCP_DIAG=m
+
+#
+# DCCP CCIDs Configuration
+#
+# CONFIG_IP_DCCP_CCID2_DEBUG is not set
+CONFIG_IP_DCCP_CCID3=y
+# CONFIG_IP_DCCP_CCID3_DEBUG is not set
+CONFIG_IP_DCCP_TFRC_LIB=y
+# end of DCCP CCIDs Configuration
+
+CONFIG_IP_SCTP=m
+# CONFIG_SCTP_DBG_OBJCNT is not set
+# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set
+CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y
+# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set
+CONFIG_SCTP_COOKIE_HMAC_MD5=y
+CONFIG_SCTP_COOKIE_HMAC_SHA1=y
+CONFIG_INET_SCTP_DIAG=m
+# CONFIG_RDS is not set
+# CONFIG_TIPC is not set
+# CONFIG_ATM is not set
+CONFIG_L2TP=m
+CONFIG_L2TP_V3=y
+CONFIG_L2TP_IP=m
+CONFIG_L2TP_ETH=m
+CONFIG_STP=m
+CONFIG_GARP=m
+CONFIG_MRP=m
+CONFIG_BRIDGE=m
+CONFIG_BRIDGE_IGMP_SNOOPING=y
+CONFIG_BRIDGE_VLAN_FILTERING=y
+# CONFIG_BRIDGE_MRP is not set
+# CONFIG_BRIDGE_CFM is not set
+# CONFIG_NET_DSA is not set
+CONFIG_VLAN_8021Q=m
+CONFIG_VLAN_8021Q_GVRP=y
+CONFIG_VLAN_8021Q_MVRP=y
+CONFIG_LLC=m
+# CONFIG_LLC2 is not set
+# CONFIG_ATALK is not set
+# CONFIG_X25 is not set
+# CONFIG_LAPB is not set
+# CONFIG_PHONET is not set
+# CONFIG_6LOWPAN is not set
+# CONFIG_IEEE802154 is not set
+CONFIG_NET_SCHED=y
+
+#
+# Queueing/Scheduling
+#
+CONFIG_NET_SCH_HTB=m
+CONFIG_NET_SCH_HFSC=m
+CONFIG_NET_SCH_PRIO=m
+CONFIG_NET_SCH_MULTIQ=m
+# CONFIG_NET_SCH_RED is not set
+CONFIG_NET_SCH_SFB=m
+CONFIG_NET_SCH_SFQ=m
+CONFIG_NET_SCH_TEQL=m
+CONFIG_NET_SCH_TBF=m
+# CONFIG_NET_SCH_CBS is not set
+# CONFIG_NET_SCH_ETF is not set
+CONFIG_NET_SCH_MQPRIO_LIB=m
+# CONFIG_NET_SCH_TAPRIO is not set
+# CONFIG_NET_SCH_GRED is not set
+CONFIG_NET_SCH_NETEM=m
+# CONFIG_NET_SCH_DRR is not set
+CONFIG_NET_SCH_MQPRIO=m
+# CONFIG_NET_SCH_SKBPRIO is not set
+CONFIG_NET_SCH_CHOKE=m
+CONFIG_NET_SCH_QFQ=m
+CONFIG_NET_SCH_CODEL=m
+CONFIG_NET_SCH_FQ_CODEL=m
+# CONFIG_NET_SCH_CAKE is not set
+CONFIG_NET_SCH_FQ=m
+CONFIG_NET_SCH_HHF=m
+CONFIG_NET_SCH_PIE=m
+CONFIG_NET_SCH_FQ_PIE=m
+CONFIG_NET_SCH_INGRESS=m
+CONFIG_NET_SCH_PLUG=m
+CONFIG_NET_SCH_ETS=m
+# CONFIG_NET_SCH_DEFAULT is not set
+
+#
+# Classification
+#
+CONFIG_NET_CLS=y
+CONFIG_NET_CLS_BASIC=m
+CONFIG_NET_CLS_ROUTE4=m
+CONFIG_NET_CLS_FW=m
+CONFIG_NET_CLS_U32=m
+# CONFIG_CLS_U32_PERF is not set
+CONFIG_CLS_U32_MARK=y
+CONFIG_NET_CLS_FLOW=m
+# CONFIG_NET_CLS_CGROUP is not set
+# CONFIG_NET_CLS_BPF is not set
+CONFIG_NET_CLS_FLOWER=m
+# CONFIG_NET_CLS_MATCHALL is not set
+# CONFIG_NET_EMATCH is not set
+CONFIG_NET_CLS_ACT=y
+CONFIG_NET_ACT_POLICE=y
+CONFIG_NET_ACT_GACT=y
+# CONFIG_GACT_PROB is not set
+CONFIG_NET_ACT_MIRRED=m
+CONFIG_NET_ACT_SAMPLE=m
+CONFIG_NET_ACT_IPT=m
+CONFIG_NET_ACT_NAT=m
+# CONFIG_NET_ACT_PEDIT is not set
+# CONFIG_NET_ACT_SIMP is not set
+# CONFIG_NET_ACT_SKBEDIT is not set
+# CONFIG_NET_ACT_CSUM is not set
+# CONFIG_NET_ACT_MPLS is not set
+# CONFIG_NET_ACT_VLAN is not set
+# CONFIG_NET_ACT_BPF is not set
+CONFIG_NET_ACT_CONNMARK=m
+# CONFIG_NET_ACT_CTINFO is not set
+CONFIG_NET_ACT_SKBMOD=m
+CONFIG_NET_ACT_IFE=m
+CONFIG_NET_ACT_TUNNEL_KEY=m
+# CONFIG_NET_ACT_CT is not set
+# CONFIG_NET_ACT_GATE is not set
+CONFIG_NET_IFE_SKBMARK=m
+CONFIG_NET_IFE_SKBPRIO=m
+CONFIG_NET_IFE_SKBTCINDEX=m
+# CONFIG_NET_TC_SKB_EXT is not set
+CONFIG_NET_SCH_FIFO=y
+# CONFIG_DCB is not set
+CONFIG_DNS_RESOLVER=m
+CONFIG_BATMAN_ADV=m
+# CONFIG_BATMAN_ADV_BATMAN_V is not set
+CONFIG_BATMAN_ADV_BLA=y
+CONFIG_BATMAN_ADV_DAT=y
+CONFIG_BATMAN_ADV_NC=y
+CONFIG_BATMAN_ADV_MCAST=y
+# CONFIG_BATMAN_ADV_DEBUG is not set
+CONFIG_OPENVSWITCH=m
+CONFIG_OPENVSWITCH_GRE=m
+CONFIG_VSOCKETS=m
+CONFIG_VSOCKETS_DIAG=m
+CONFIG_VSOCKETS_LOOPBACK=m
+CONFIG_VIRTIO_VSOCKETS=m
+CONFIG_VIRTIO_VSOCKETS_COMMON=m
+CONFIG_NETLINK_DIAG=m
+CONFIG_MPLS=y
+CONFIG_NET_MPLS_GSO=m
+CONFIG_MPLS_ROUTING=m
+# CONFIG_MPLS_IPTUNNEL is not set
+CONFIG_NET_NSH=m
+CONFIG_HSR=m
+# CONFIG_NET_SWITCHDEV is not set
+CONFIG_NET_L3_MASTER_DEV=y
+# CONFIG_QRTR is not set
+# CONFIG_NET_NCSI is not set
+CONFIG_PCPU_DEV_REFCNT=y
+CONFIG_MAX_SKB_FRAGS=17
+CONFIG_RPS=y
+CONFIG_RFS_ACCEL=y
+CONFIG_SOCK_RX_QUEUE_MAPPING=y
+CONFIG_XPS=y
+CONFIG_CGROUP_NET_PRIO=y
+CONFIG_CGROUP_NET_CLASSID=y
+CONFIG_NET_RX_BUSY_POLL=y
+CONFIG_BQL=y
+CONFIG_NET_FLOW_LIMIT=y
+
+#
+# Network testing
+#
+# CONFIG_NET_PKTGEN is not set
+# end of Network testing
+# end of Networking options
+
+CONFIG_HAMRADIO=y
+
+#
+# Packet Radio protocols
+#
+CONFIG_AX25=m
+CONFIG_AX25_DAMA_SLAVE=y
+CONFIG_NETROM=m
+CONFIG_ROSE=m
+
+#
+# AX.25 network device drivers
+#
+CONFIG_MKISS=m
+CONFIG_6PACK=m
+CONFIG_BPQETHER=m
+CONFIG_BAYCOM_SER_FDX=m
+CONFIG_BAYCOM_SER_HDX=m
+CONFIG_YAM=m
+# end of AX.25 network device drivers
+
+CONFIG_CAN=m
+CONFIG_CAN_RAW=m
+CONFIG_CAN_BCM=m
+CONFIG_CAN_GW=m
+# CONFIG_CAN_J1939 is not set
+# CONFIG_CAN_ISOTP is not set
+CONFIG_BT=m
+CONFIG_BT_BREDR=y
+CONFIG_BT_RFCOMM=m
+# CONFIG_BT_RFCOMM_TTY is not set
+# CONFIG_BT_BNEP is not set
+CONFIG_BT_HIDP=m
+CONFIG_BT_HS=y
+CONFIG_BT_LE=y
+# CONFIG_BT_LE_L2CAP_ECRED is not set
+# CONFIG_BT_LEDS is not set
+# CONFIG_BT_MSFTEXT is not set
+# CONFIG_BT_AOSPEXT is not set
+# CONFIG_BT_FEATURE_DEBUG is not set
+
+#
+# Bluetooth device drivers
+#
+# CONFIG_BT_HCIBTUSB is not set
+# CONFIG_BT_HCIBTSDIO is not set
+# CONFIG_BT_HCIUART is not set
+# CONFIG_BT_HCIBCM203X is not set
+# CONFIG_BT_HCIBCM4377 is not set
+# CONFIG_BT_HCIBPA10X is not set
+# CONFIG_BT_HCIBFUSB is not set
+# CONFIG_BT_HCIVHCI is not set
+CONFIG_BT_MRVL=m
+CONFIG_BT_MRVL_SDIO=m
+# CONFIG_BT_MTKSDIO is not set
+# CONFIG_BT_MTKUART is not set
+# CONFIG_BT_VIRTIO is not set
+# CONFIG_BT_NXPUART is not set
+# end of Bluetooth device drivers
+
+# CONFIG_AF_RXRPC is not set
+# CONFIG_AF_KCM is not set
+CONFIG_STREAM_PARSER=y
+# CONFIG_MCTP is not set
+CONFIG_FIB_RULES=y
+CONFIG_WIRELESS=y
+CONFIG_WEXT_CORE=y
+CONFIG_WEXT_PROC=y
+CONFIG_CFG80211=m
+# CONFIG_NL80211_TESTMODE is not set
+# CONFIG_CFG80211_DEVELOPER_WARNINGS is not set
+CONFIG_CFG80211_REQUIRE_SIGNED_REGDB=y
+CONFIG_CFG80211_USE_KERNEL_REGDB_KEYS=y
+CONFIG_CFG80211_DEFAULT_PS=y
+CONFIG_CFG80211_CRDA_SUPPORT=y
+CONFIG_CFG80211_WEXT=y
+CONFIG_MAC80211=m
+CONFIG_MAC80211_HAS_RC=y
+CONFIG_MAC80211_RC_MINSTREL=y
+CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y
+CONFIG_MAC80211_RC_DEFAULT="minstrel_ht"
+CONFIG_MAC80211_MESH=y
+CONFIG_MAC80211_LEDS=y
+# CONFIG_MAC80211_MESSAGE_TRACING is not set
+# CONFIG_MAC80211_DEBUG_MENU is not set
+CONFIG_MAC80211_STA_HASH_MAX_SIZE=0
+CONFIG_RFKILL=m
+CONFIG_RFKILL_LEDS=y
+CONFIG_RFKILL_INPUT=y
+CONFIG_RFKILL_GPIO=m
+# CONFIG_NET_9P is not set
+# CONFIG_CAIF is not set
+# CONFIG_CEPH_LIB is not set
+# CONFIG_NFC is not set
+CONFIG_PSAMPLE=m
+CONFIG_NET_IFE=m
+CONFIG_LWTUNNEL=y
+# CONFIG_LWTUNNEL_BPF is not set
+CONFIG_DST_CACHE=y
+CONFIG_GRO_CELLS=y
+CONFIG_NET_SELFTESTS=y
+CONFIG_NET_SOCK_MSG=y
+CONFIG_PAGE_POOL=y
+CONFIG_PAGE_POOL_STATS=y
+CONFIG_FAILOVER=m
+CONFIG_ETHTOOL_NETLINK=y
+
+#
+# Device Drivers
+#
+CONFIG_ARM_AMBA=y
+CONFIG_HAVE_PCI=y
+CONFIG_PCI=y
+CONFIG_PCI_DOMAINS=y
+CONFIG_PCI_DOMAINS_GENERIC=y
+CONFIG_PCI_SYSCALL=y
+CONFIG_PCIEPORTBUS=y
+CONFIG_HOTPLUG_PCI_PCIE=y
+CONFIG_PCIEAER=y
+CONFIG_PCIEAER_INJECT=m
+CONFIG_PCIE_ECRC=y
+CONFIG_PCIEASPM=y
+CONFIG_PCIEASPM_DEFAULT=y
+# CONFIG_PCIEASPM_POWERSAVE is not set
+# CONFIG_PCIEASPM_POWER_SUPERSAVE is not set
+# CONFIG_PCIEASPM_PERFORMANCE is not set
+CONFIG_PCIE_PME=y
+# CONFIG_PCIE_DPC is not set
+# CONFIG_PCIE_PTM is not set
+CONFIG_PCI_MSI=y
+CONFIG_PCI_QUIRKS=y
+# CONFIG_PCI_REALLOC_ENABLE_AUTO is not set
+CONFIG_PCI_STUB=y
+# CONFIG_PCI_PF_STUB is not set
+CONFIG_PCI_ATS=y
+CONFIG_PCI_ECAM=y
+CONFIG_PCI_IOV=y
+CONFIG_PCI_PRI=y
+CONFIG_PCI_PASID=y
+CONFIG_PCI_LABEL=y
+# CONFIG_PCI_DYNAMIC_OF_NODES is not set
+CONFIG_VGA_ARB=y
+CONFIG_VGA_ARB_MAX_GPUS=4
+CONFIG_HOTPLUG_PCI=y
+# CONFIG_HOTPLUG_PCI_CPCI is not set
+# CONFIG_HOTPLUG_PCI_SHPC is not set
+
+#
+# PCI controller drivers
+#
+# CONFIG_PCIE_ALTERA is not set
+# CONFIG_PCI_HOST_THUNDER_PEM is not set
+# CONFIG_PCI_HOST_THUNDER_ECAM is not set
+# CONFIG_PCI_FTPCI100 is not set
+CONFIG_PCI_HOST_COMMON=y
+CONFIG_PCI_HOST_GENERIC=m
+# CONFIG_PCIE_MICROCHIP_HOST is not set
+CONFIG_PCIE_ROCKCHIP=y
+CONFIG_PCIE_ROCKCHIP_HOST=y
+# CONFIG_PCI_XGENE is not set
+# CONFIG_PCIE_XILINX is not set
+
+#
+# Cadence-based PCIe controllers
+#
+# CONFIG_PCIE_CADENCE_PLAT_HOST is not set
+# end of Cadence-based PCIe controllers
+
+#
+# DesignWare-based PCIe controllers
+#
+CONFIG_PCIE_DW=y
+CONFIG_PCIE_DW_HOST=y
+# CONFIG_PCIE_AL is not set
+# CONFIG_PCI_MESON is not set
+CONFIG_PCI_HISI=y
+# CONFIG_PCIE_KIRIN is not set
+CONFIG_PCIE_DW_PLAT=y
+CONFIG_PCIE_DW_PLAT_HOST=y
+CONFIG_PCIE_ROCKCHIP_DW_HOST=y
+# end of DesignWare-based PCIe controllers
+
+#
+# Mobiveil-based PCIe controllers
+#
+# end of Mobiveil-based PCIe controllers
+# end of PCI controller drivers
+
+#
+# PCI Endpoint
+#
+# CONFIG_PCI_ENDPOINT is not set
+# end of PCI Endpoint
+
+#
+# PCI switch controller drivers
+#
+# CONFIG_PCI_SW_SWITCHTEC is not set
+# end of PCI switch controller drivers
+
+# CONFIG_CXL_BUS is not set
+# CONFIG_PCCARD is not set
+# CONFIG_RAPIDIO is not set
+
+#
+# Generic Driver Options
+#
+CONFIG_UEVENT_HELPER=y
+CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
+CONFIG_DEVTMPFS=y
+CONFIG_DEVTMPFS_MOUNT=y
+# CONFIG_DEVTMPFS_SAFE is not set
+CONFIG_STANDALONE=y
+CONFIG_PREVENT_FIRMWARE_BUILD=y
+
+#
+# Firmware loader
+#
+CONFIG_FW_LOADER=y
+CONFIG_EXTRA_FIRMWARE=""
+# CONFIG_FW_LOADER_USER_HELPER is not set
+# CONFIG_FW_LOADER_COMPRESS is not set
+CONFIG_FW_CACHE=y
+# CONFIG_FW_UPLOAD is not set
+# end of Firmware loader
+
+CONFIG_WANT_DEV_COREDUMP=y
+CONFIG_ALLOW_DEV_COREDUMP=y
+CONFIG_DEV_COREDUMP=y
+# CONFIG_TEST_ASYNC_DRIVER_PROBE is not set
+CONFIG_GENERIC_CPU_DEVICES=y
+CONFIG_GENERIC_CPU_AUTOPROBE=y
+CONFIG_GENERIC_CPU_VULNERABILITIES=y
+CONFIG_SOC_BUS=y
+CONFIG_REGMAP=y
+CONFIG_REGMAP_I2C=y
+CONFIG_REGMAP_SPI=m
+CONFIG_REGMAP_SPMI=m
+CONFIG_REGMAP_MMIO=y
+CONFIG_REGMAP_IRQ=y
+CONFIG_DMA_SHARED_BUFFER=y
+# CONFIG_DMA_FENCE_TRACE is not set
+CONFIG_GENERIC_ARCH_TOPOLOGY=y
+# CONFIG_FW_DEVLINK_SYNC_STATE_TIMEOUT is not set
+# end of Generic Driver Options
+
+#
+# Bus devices
+#
+# CONFIG_MOXTET is not set
+# CONFIG_VEXPRESS_CONFIG is not set
+# CONFIG_MHI_BUS is not set
+# CONFIG_MHI_BUS_EP is not set
+# end of Bus devices
+
+#
+# Cache Drivers
+#
+# end of Cache Drivers
+
+CONFIG_CONNECTOR=m
+
+#
+# Firmware Drivers
+#
+
+#
+# ARM System Control and Management Interface Protocol
+#
+# CONFIG_ARM_SCMI_PROTOCOL is not set
+# end of ARM System Control and Management Interface Protocol
+
+CONFIG_ARM_SCPI_PROTOCOL=m
+CONFIG_DMIID=y
+CONFIG_DMI_SYSFS=m
+CONFIG_FW_CFG_SYSFS=m
+# CONFIG_FW_CFG_SYSFS_CMDLINE is not set
+# CONFIG_SYSFB_SIMPLEFB is not set
+# CONFIG_ARM_FFA_TRANSPORT is not set
+# CONFIG_GOOGLE_FIRMWARE is not set
+
+#
+# EFI (Extensible Firmware Interface) Support
+#
+CONFIG_EFI_ESRT=y
+CONFIG_EFI_VARS_PSTORE=m
+# CONFIG_EFI_VARS_PSTORE_DEFAULT_DISABLE is not set
+CONFIG_EFI_PARAMS_FROM_FDT=y
+CONFIG_EFI_RUNTIME_WRAPPERS=y
+CONFIG_EFI_GENERIC_STUB=y
+# CONFIG_EFI_ZBOOT is not set
+# CONFIG_EFI_ARMSTUB_DTB_LOADER is not set
+CONFIG_EFI_BOOTLOADER_CONTROL=y
+# CONFIG_EFI_CAPSULE_LOADER is not set
+# CONFIG_EFI_TEST is not set
+# CONFIG_RESET_ATTACK_MITIGATION is not set
+# CONFIG_EFI_DISABLE_PCI_DMA is not set
+CONFIG_EFI_EARLYCON=y
+# CONFIG_EFI_DISABLE_RUNTIME is not set
+# CONFIG_EFI_COCO_SECRET is not set
+# end of EFI (Extensible Firmware Interface) Support
+
+CONFIG_ARM_PSCI_FW=y
+# CONFIG_ARM_PSCI_CHECKER is not set
+
+#
+# Qualcomm firmware drivers
+#
+# end of Qualcomm firmware drivers
+
+CONFIG_HAVE_ARM_SMCCC=y
+CONFIG_HAVE_ARM_SMCCC_DISCOVERY=y
+CONFIG_ARM_SMCCC_SOC_ID=y
+
+#
+# Tegra firmware driver
+#
+# end of Tegra firmware driver
+# end of Firmware Drivers
+
+# CONFIG_GNSS is not set
+# CONFIG_MTD is not set
+CONFIG_DTC=y
+CONFIG_OF=y
+# CONFIG_OF_UNITTEST is not set
+CONFIG_OF_FLATTREE=y
+CONFIG_OF_EARLY_FLATTREE=y
+CONFIG_OF_KOBJ=y
+CONFIG_OF_DYNAMIC=y
+CONFIG_OF_ADDRESS=y
+CONFIG_OF_IRQ=y
+CONFIG_OF_RESERVED_MEM=y
+CONFIG_OF_RESOLVE=y
+CONFIG_OF_OVERLAY=y
+# CONFIG_PARPORT is not set
+CONFIG_BLK_DEV=y
+# CONFIG_BLK_DEV_NULL_BLK is not set
+CONFIG_CDROM=m
+# CONFIG_BLK_DEV_PCIESSD_MTIP32XX is not set
+CONFIG_ZRAM=m
+# CONFIG_ZRAM_DEF_COMP_LZORLE is not set
+CONFIG_ZRAM_DEF_COMP_ZSTD=y
+# CONFIG_ZRAM_DEF_COMP_LZO is not set
+CONFIG_ZRAM_DEF_COMP="zstd"
+# CONFIG_ZRAM_WRITEBACK is not set
+# CONFIG_ZRAM_TRACK_ENTRY_ACTIME is not set
+# CONFIG_ZRAM_MULTI_COMP is not set
+CONFIG_BLK_DEV_LOOP=m
+CONFIG_BLK_DEV_LOOP_MIN_COUNT=0
+# CONFIG_BLK_DEV_DRBD is not set
+# CONFIG_BLK_DEV_NBD is not set
+# CONFIG_BLK_DEV_RAM is not set
+# CONFIG_CDROM_PKTCDVD is not set
+# CONFIG_ATA_OVER_ETH is not set
+CONFIG_VIRTIO_BLK=m
+# CONFIG_BLK_DEV_RBD is not set
+# CONFIG_BLK_DEV_UBLK is not set
+
+#
+# NVME Support
+#
+# CONFIG_BLK_DEV_NVME is not set
+# CONFIG_NVME_FC is not set
+# CONFIG_NVME_TCP is not set
+# CONFIG_NVME_TARGET is not set
+# end of NVME Support
+
+#
+# Misc devices
+#
+# CONFIG_AD525X_DPOT is not set
+# CONFIG_DUMMY_IRQ is not set
+# CONFIG_PHANTOM is not set
+CONFIG_TIFM_CORE=y
+CONFIG_TIFM_7XX1=m
+# CONFIG_ICS932S401 is not set
+# CONFIG_ENCLOSURE_SERVICES is not set
+# CONFIG_HI6421V600_IRQ is not set
+# CONFIG_HP_ILO is not set
+# CONFIG_APDS9802ALS is not set
+# CONFIG_ISL29003 is not set
+# CONFIG_ISL29020 is not set
+# CONFIG_SENSORS_TSL2550 is not set
+# CONFIG_SENSORS_BH1770 is not set
+# CONFIG_SENSORS_APDS990X is not set
+# CONFIG_HMC6352 is not set
+# CONFIG_DS1682 is not set
+# CONFIG_LATTICE_ECP3_CONFIG is not set
+# CONFIG_SRAM is not set
+# CONFIG_DW_XDATA_PCIE is not set
+# CONFIG_PCI_ENDPOINT_TEST is not set
+# CONFIG_XILINX_SDFEC is not set
+# CONFIG_HISI_HIKEY_USB is not set
+# CONFIG_OPEN_DICE is not set
+# CONFIG_VCPU_STALL_DETECTOR is not set
+# CONFIG_NSM is not set
+# CONFIG_C2PORT is not set
+
+#
+# EEPROM support
+#
+# CONFIG_EEPROM_AT24 is not set
+# CONFIG_EEPROM_AT25 is not set
+# CONFIG_EEPROM_MAX6875 is not set
+# CONFIG_EEPROM_93CX6 is not set
+# CONFIG_EEPROM_93XX46 is not set
+# CONFIG_EEPROM_IDT_89HPESX is not set
+# CONFIG_EEPROM_EE1004 is not set
+# end of EEPROM support
+
+CONFIG_CB710_CORE=m
+# CONFIG_CB710_DEBUG is not set
+CONFIG_CB710_DEBUG_ASSUMPTIONS=y
+
+#
+# Texas Instruments shared transport line discipline
+#
+# CONFIG_TI_ST is not set
+# end of Texas Instruments shared transport line discipline
+
+# CONFIG_SENSORS_LIS3_SPI is not set
+# CONFIG_SENSORS_LIS3_I2C is not set
+# CONFIG_ALTERA_STAPL is not set
+# CONFIG_VMWARE_VMCI is not set
+# CONFIG_GENWQE is not set
+# CONFIG_ECHO is not set
+# CONFIG_BCM_VK is not set
+# CONFIG_MISC_ALCOR_PCI is not set
+# CONFIG_MISC_RTSX_PCI is not set
+# CONFIG_MISC_RTSX_USB is not set
+# CONFIG_UACCE is not set
+# CONFIG_PVPANIC is not set
+# CONFIG_GP_PCI1XXXX is not set
+# end of Misc devices
+
+#
+# SCSI device support
+#
+CONFIG_SCSI_MOD=y
+# CONFIG_RAID_ATTRS is not set
+CONFIG_SCSI_COMMON=y
+CONFIG_SCSI=y
+CONFIG_SCSI_DMA=y
+CONFIG_SCSI_PROC_FS=y
+
+#
+# SCSI support type (disk, tape, CD-ROM)
+#
+CONFIG_BLK_DEV_SD=y
+# CONFIG_CHR_DEV_ST is not set
+CONFIG_BLK_DEV_SR=m
+# CONFIG_CHR_DEV_SG is not set
+CONFIG_BLK_DEV_BSG=y
+# CONFIG_CHR_DEV_SCH is not set
+# CONFIG_SCSI_CONSTANTS is not set
+# CONFIG_SCSI_LOGGING is not set
+CONFIG_SCSI_SCAN_ASYNC=y
+
+#
+# SCSI Transports
+#
+# CONFIG_SCSI_SPI_ATTRS is not set
+# CONFIG_SCSI_FC_ATTRS is not set
+# CONFIG_SCSI_ISCSI_ATTRS is not set
+# CONFIG_SCSI_SAS_ATTRS is not set
+# CONFIG_SCSI_SAS_LIBSAS is not set
+# CONFIG_SCSI_SRP_ATTRS is not set
+# end of SCSI Transports
+
+CONFIG_SCSI_LOWLEVEL=y
+# CONFIG_ISCSI_TCP is not set
+# CONFIG_ISCSI_BOOT_SYSFS is not set
+# CONFIG_SCSI_CXGB3_ISCSI is not set
+# CONFIG_SCSI_BNX2_ISCSI is not set
+# CONFIG_BE2ISCSI is not set
+# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
+# CONFIG_SCSI_HPSA is not set
+# CONFIG_SCSI_3W_9XXX is not set
+# CONFIG_SCSI_3W_SAS is not set
+# CONFIG_SCSI_ACARD is not set
+# CONFIG_SCSI_AACRAID is not set
+# CONFIG_SCSI_AIC7XXX is not set
+# CONFIG_SCSI_AIC79XX is not set
+# CONFIG_SCSI_AIC94XX is not set
+# CONFIG_SCSI_MVSAS is not set
+# CONFIG_SCSI_MVUMI is not set
+# CONFIG_SCSI_ADVANSYS is not set
+# CONFIG_SCSI_ARCMSR is not set
+# CONFIG_SCSI_ESAS2R is not set
+# CONFIG_MEGARAID_NEWGEN is not set
+# CONFIG_MEGARAID_LEGACY is not set
+# CONFIG_MEGARAID_SAS is not set
+# CONFIG_SCSI_MPT3SAS is not set
+# CONFIG_SCSI_MPT2SAS is not set
+# CONFIG_SCSI_MPI3MR is not set
+# CONFIG_SCSI_SMARTPQI is not set
+# CONFIG_SCSI_HPTIOP is not set
+# CONFIG_SCSI_BUSLOGIC is not set
+# CONFIG_SCSI_MYRB is not set
+# CONFIG_SCSI_MYRS is not set
+# CONFIG_SCSI_SNIC is not set
+# CONFIG_SCSI_DMX3191D is not set
+# CONFIG_SCSI_FDOMAIN_PCI is not set
+# CONFIG_SCSI_IPS is not set
+# CONFIG_SCSI_INITIO is not set
+# CONFIG_SCSI_INIA100 is not set
+# CONFIG_SCSI_STEX is not set
+# CONFIG_SCSI_SYM53C8XX_2 is not set
+# CONFIG_SCSI_IPR is not set
+# CONFIG_SCSI_QLOGIC_1280 is not set
+# CONFIG_SCSI_QLA_ISCSI is not set
+# CONFIG_SCSI_DC395x is not set
+# CONFIG_SCSI_AM53C974 is not set
+# CONFIG_SCSI_WD719X is not set
+# CONFIG_SCSI_DEBUG is not set
+# CONFIG_SCSI_PMCRAID is not set
+# CONFIG_SCSI_PM8001 is not set
+CONFIG_SCSI_VIRTIO=m
+# CONFIG_SCSI_DH is not set
+# end of SCSI device support
+
+# CONFIG_ATA is not set
+CONFIG_MD=y
+# CONFIG_BLK_DEV_MD is not set
+# CONFIG_MD_BITMAP_FILE is not set
+# CONFIG_BCACHE is not set
+CONFIG_BLK_DEV_DM_BUILTIN=y
+CONFIG_BLK_DEV_DM=m
+# CONFIG_DM_DEBUG is not set
+# CONFIG_DM_UNSTRIPED is not set
+CONFIG_DM_CRYPT=m
+# CONFIG_DM_SNAPSHOT is not set
+# CONFIG_DM_THIN_PROVISIONING is not set
+# CONFIG_DM_CACHE is not set
+# CONFIG_DM_WRITECACHE is not set
+# CONFIG_DM_EBS is not set
+# CONFIG_DM_ERA is not set
+# CONFIG_DM_CLONE is not set
+# CONFIG_DM_MIRROR is not set
+# CONFIG_DM_RAID is not set
+# CONFIG_DM_ZERO is not set
+# CONFIG_DM_MULTIPATH is not set
+# CONFIG_DM_DELAY is not set
+# CONFIG_DM_DUST is not set
+# CONFIG_DM_UEVENT is not set
+# CONFIG_DM_FLAKEY is not set
+# CONFIG_DM_VERITY is not set
+# CONFIG_DM_SWITCH is not set
+# CONFIG_DM_LOG_WRITES is not set
+# CONFIG_DM_INTEGRITY is not set
+# CONFIG_TARGET_CORE is not set
+# CONFIG_FUSION is not set
+
+#
+# IEEE 1394 (FireWire) support
+#
+# CONFIG_FIREWIRE is not set
+# CONFIG_FIREWIRE_NOSY is not set
+# end of IEEE 1394 (FireWire) support
+
+CONFIG_NETDEVICES=y
+CONFIG_MII=m
+CONFIG_NET_CORE=y
+CONFIG_BONDING=m
+CONFIG_DUMMY=m
+CONFIG_WIREGUARD=m
+# CONFIG_WIREGUARD_DEBUG is not set
+CONFIG_EQUALIZER=m
+# CONFIG_NET_FC is not set
+CONFIG_IFB=m
+# CONFIG_NET_TEAM is not set
+# CONFIG_MACVLAN is not set
+# CONFIG_IPVLAN is not set
+# CONFIG_VXLAN is not set
+# CONFIG_GENEVE is not set
+CONFIG_BAREUDP=m
+CONFIG_GTP=m
+# CONFIG_AMT is not set
+CONFIG_MACSEC=m
+# CONFIG_NETCONSOLE is not set
+CONFIG_TUN=m
+# CONFIG_TUN_VNET_CROSS_LE is not set
+CONFIG_VETH=m
+CONFIG_VIRTIO_NET=m
+CONFIG_NLMON=m
+CONFIG_NET_VRF=m
+# CONFIG_VSOCKMON is not set
+# CONFIG_ARCNET is not set
+# CONFIG_ETHERNET is not set
+# CONFIG_FDDI is not set
+# CONFIG_HIPPI is not set
+CONFIG_PHYLINK=m
+CONFIG_PHYLIB=y
+CONFIG_SWPHY=y
+CONFIG_LED_TRIGGER_PHY=y
+CONFIG_PHYLIB_LEDS=y
+CONFIG_FIXED_PHY=y
+# CONFIG_SFP is not set
+
+#
+# MII PHY device drivers
+#
+# CONFIG_AMD_PHY is not set
+# CONFIG_ADIN_PHY is not set
+# CONFIG_ADIN1100_PHY is not set
+# CONFIG_AQUANTIA_PHY is not set
+CONFIG_AX88796B_PHY=m
+# CONFIG_BROADCOM_PHY is not set
+# CONFIG_BCM54140_PHY is not set
+# CONFIG_BCM7XXX_PHY is not set
+# CONFIG_BCM84881_PHY is not set
+# CONFIG_BCM87XX_PHY is not set
+# CONFIG_CICADA_PHY is not set
+# CONFIG_CORTINA_PHY is not set
+# CONFIG_DAVICOM_PHY is not set
+# CONFIG_ICPLUS_PHY is not set
+# CONFIG_LXT_PHY is not set
+# CONFIG_INTEL_XWAY_PHY is not set
+# CONFIG_LSI_ET1011C_PHY is not set
+# CONFIG_MARVELL_PHY is not set
+# CONFIG_MARVELL_10G_PHY is not set
+# CONFIG_MARVELL_88Q2XXX_PHY is not set
+# CONFIG_MARVELL_88X2222_PHY is not set
+# CONFIG_MAXLINEAR_GPHY is not set
+# CONFIG_MEDIATEK_GE_PHY is not set
+# CONFIG_MICREL_PHY is not set
+# CONFIG_MICROCHIP_T1S_PHY is not set
+CONFIG_MICROCHIP_PHY=m
+# CONFIG_MICROCHIP_T1_PHY is not set
+# CONFIG_MICROSEMI_PHY is not set
+# CONFIG_MOTORCOMM_PHY is not set
+# CONFIG_NATIONAL_PHY is not set
+# CONFIG_NXP_CBTX_PHY is not set
+# CONFIG_NXP_C45_TJA11XX_PHY is not set
+# CONFIG_NXP_TJA11XX_PHY is not set
+# CONFIG_NCN26000_PHY is not set
+CONFIG_AT803X_PHY=m
+CONFIG_QSEMI_PHY=m
+CONFIG_REALTEK_PHY=m
+# CONFIG_RENESAS_PHY is not set
+CONFIG_ROCKCHIP_PHY=y
+CONFIG_SMSC_PHY=m
+CONFIG_STE10XP=m
+# CONFIG_TERANETICS_PHY is not set
+# CONFIG_DP83822_PHY is not set
+# CONFIG_DP83TC811_PHY is not set
+# CONFIG_DP83848_PHY is not set
+# CONFIG_DP83867_PHY is not set
+# CONFIG_DP83869_PHY is not set
+# CONFIG_DP83TD510_PHY is not set
+# CONFIG_DP83TG720_PHY is not set
+# CONFIG_VITESSE_PHY is not set
+# CONFIG_XILINX_GMII2RGMII is not set
+# CONFIG_MICREL_KS8995MA is not set
+# CONFIG_PSE_CONTROLLER is not set
+CONFIG_CAN_DEV=m
+# CONFIG_CAN_VCAN is not set
+# CONFIG_CAN_VXCAN is not set
+# CONFIG_CAN_NETLINK is not set
+# CONFIG_CAN_DEBUG_DEVICES is not set
+CONFIG_MDIO_DEVICE=y
+CONFIG_MDIO_BUS=y
+CONFIG_FWNODE_MDIO=y
+CONFIG_OF_MDIO=y
+CONFIG_MDIO_DEVRES=y
+CONFIG_MDIO_BITBANG=m
+# CONFIG_MDIO_BCM_UNIMAC is not set
+# CONFIG_MDIO_GPIO is not set
+# CONFIG_MDIO_HISI_FEMAC is not set
+# CONFIG_MDIO_MVUSB is not set
+# CONFIG_MDIO_MSCC_MIIM is not set
+# CONFIG_MDIO_OCTEON is not set
+# CONFIG_MDIO_IPQ4019 is not set
+# CONFIG_MDIO_IPQ8064 is not set
+# CONFIG_MDIO_THUNDER is not set
+
+#
+# MDIO Multiplexers
+#
+CONFIG_MDIO_BUS_MUX=m
+CONFIG_MDIO_BUS_MUX_GPIO=m
+# CONFIG_MDIO_BUS_MUX_MULTIPLEXER is not set
+CONFIG_MDIO_BUS_MUX_MMIOREG=m
+
+#
+# PCS device drivers
+#
+# end of PCS device drivers
+
+CONFIG_PPP=m
+CONFIG_PPP_BSDCOMP=m
+CONFIG_PPP_DEFLATE=m
+CONFIG_PPP_FILTER=y
+CONFIG_PPP_MPPE=m
+CONFIG_PPP_MULTILINK=y
+CONFIG_PPPOE=m
+# CONFIG_PPPOE_HASH_BITS_1 is not set
+# CONFIG_PPPOE_HASH_BITS_2 is not set
+CONFIG_PPPOE_HASH_BITS_4=y
+# CONFIG_PPPOE_HASH_BITS_8 is not set
+CONFIG_PPPOE_HASH_BITS=4
+CONFIG_PPTP=m
+CONFIG_PPPOL2TP=m
+CONFIG_PPP_ASYNC=m
+CONFIG_PPP_SYNC_TTY=m
+CONFIG_SLIP=m
+CONFIG_SLHC=m
+CONFIG_SLIP_COMPRESSED=y
+CONFIG_SLIP_SMART=y
+CONFIG_SLIP_MODE_SLIP6=y
+CONFIG_USB_NET_DRIVERS=m
+CONFIG_USB_CATC=m
+CONFIG_USB_KAWETH=m
+CONFIG_USB_PEGASUS=m
+CONFIG_USB_RTL8150=m
+CONFIG_USB_RTL8152=m
+CONFIG_USB_LAN78XX=m
+CONFIG_USB_USBNET=m
+CONFIG_USB_NET_AX8817X=m
+CONFIG_USB_NET_AX88179_178A=m
+CONFIG_USB_NET_CDCETHER=m
+CONFIG_USB_NET_CDC_EEM=m
+CONFIG_USB_NET_CDC_NCM=m
+CONFIG_USB_NET_HUAWEI_CDC_NCM=m
+CONFIG_USB_NET_CDC_MBIM=m
+CONFIG_USB_NET_DM9601=m
+CONFIG_USB_NET_SR9700=m
+CONFIG_USB_NET_SR9800=m
+CONFIG_USB_NET_SMSC75XX=m
+CONFIG_USB_NET_SMSC95XX=m
+CONFIG_USB_NET_GL620A=m
+CONFIG_USB_NET_NET1080=m
+CONFIG_USB_NET_PLUSB=m
+CONFIG_USB_NET_MCS7830=m
+CONFIG_USB_NET_RNDIS_HOST=m
+CONFIG_USB_NET_CDC_SUBSET_ENABLE=m
+CONFIG_USB_NET_CDC_SUBSET=m
+CONFIG_USB_ALI_M5632=y
+CONFIG_USB_AN2720=y
+CONFIG_USB_BELKIN=y
+CONFIG_USB_ARMLINUX=y
+CONFIG_USB_EPSON2888=y
+CONFIG_USB_KC2190=y
+CONFIG_USB_NET_ZAURUS=m
+CONFIG_USB_NET_CX82310_ETH=m
+CONFIG_USB_NET_KALMIA=m
+CONFIG_USB_NET_QMI_WWAN=m
+CONFIG_USB_HSO=m
+CONFIG_USB_NET_INT51X1=m
+CONFIG_USB_IPHETH=m
+CONFIG_USB_SIERRA_NET=m
+CONFIG_USB_VL600=m
+CONFIG_USB_NET_CH9200=m
+CONFIG_USB_NET_AQC111=m
+CONFIG_USB_RTL8153_ECM=m
+CONFIG_WLAN=y
+# CONFIG_WLAN_VENDOR_ADMTEK is not set
+# CONFIG_WLAN_VENDOR_ATH is not set
+# CONFIG_WLAN_VENDOR_ATMEL is not set
+# CONFIG_WLAN_VENDOR_BROADCOM is not set
+# CONFIG_WLAN_VENDOR_INTEL is not set
+# CONFIG_WLAN_VENDOR_INTERSIL is not set
+CONFIG_WLAN_VENDOR_MARVELL=y
+# CONFIG_LIBERTAS is not set
+# CONFIG_LIBERTAS_THINFIRM is not set
+CONFIG_MWIFIEX=m
+CONFIG_MWIFIEX_SDIO=m
+CONFIG_MWIFIEX_PCIE=m
+CONFIG_MWIFIEX_USB=m
+CONFIG_MWL8K=m
+# CONFIG_WLAN_VENDOR_MEDIATEK is not set
+# CONFIG_WLAN_VENDOR_MICROCHIP is not set
+# CONFIG_WLAN_VENDOR_PURELIFI is not set
+# CONFIG_WLAN_VENDOR_RALINK is not set
+# CONFIG_WLAN_VENDOR_REALTEK is not set
+# CONFIG_WLAN_VENDOR_RSI is not set
+# CONFIG_WLAN_VENDOR_SILABS is not set
+# CONFIG_WLAN_VENDOR_ST is not set
+# CONFIG_WLAN_VENDOR_TI is not set
+# CONFIG_WLAN_VENDOR_ZYDAS is not set
+# CONFIG_WLAN_VENDOR_QUANTENNA is not set
+CONFIG_MAC80211_HWSIM=m
+CONFIG_VIRT_WIFI=m
+# CONFIG_WAN is not set
+
+#
+# Wireless WAN
+#
+# CONFIG_WWAN is not set
+# end of Wireless WAN
+
+# CONFIG_VMXNET3 is not set
+CONFIG_NET_FAILOVER=m
+# CONFIG_ISDN is not set
+
+#
+# Input device support
+#
+CONFIG_INPUT=y
+CONFIG_INPUT_LEDS=m
+CONFIG_INPUT_FF_MEMLESS=m
+CONFIG_INPUT_SPARSEKMAP=m
+CONFIG_INPUT_MATRIXKMAP=y
+CONFIG_INPUT_VIVALDIFMAP=y
+
+#
+# Userland interfaces
+#
+# CONFIG_INPUT_MOUSEDEV is not set
+CONFIG_INPUT_JOYDEV=m
+CONFIG_INPUT_EVDEV=y
+# CONFIG_INPUT_EVBUG is not set
+
+#
+# Input Device Drivers
+#
+CONFIG_INPUT_KEYBOARD=y
+# CONFIG_KEYBOARD_ADC is not set
+# CONFIG_KEYBOARD_ADP5588 is not set
+# CONFIG_KEYBOARD_ADP5589 is not set
+# CONFIG_KEYBOARD_ATKBD is not set
+# CONFIG_KEYBOARD_QT1050 is not set
+# CONFIG_KEYBOARD_QT1070 is not set
+# CONFIG_KEYBOARD_QT2160 is not set
+# CONFIG_KEYBOARD_DLINK_DIR685 is not set
+# CONFIG_KEYBOARD_LKKBD is not set
+CONFIG_KEYBOARD_GPIO=m
+# CONFIG_KEYBOARD_GPIO_POLLED is not set
+# CONFIG_KEYBOARD_TCA6416 is not set
+# CONFIG_KEYBOARD_TCA8418 is not set
+# CONFIG_KEYBOARD_MATRIX is not set
+# CONFIG_KEYBOARD_LM8323 is not set
+# CONFIG_KEYBOARD_LM8333 is not set
+# CONFIG_KEYBOARD_MAX7359 is not set
+# CONFIG_KEYBOARD_MCS is not set
+# CONFIG_KEYBOARD_MPR121 is not set
+# CONFIG_KEYBOARD_NEWTON is not set
+# CONFIG_KEYBOARD_OPENCORES is not set
+# CONFIG_KEYBOARD_PINEPHONE is not set
+# CONFIG_KEYBOARD_SAMSUNG is not set
+# CONFIG_KEYBOARD_STOWAWAY is not set
+# CONFIG_KEYBOARD_SUNKBD is not set
+# CONFIG_KEYBOARD_OMAP4 is not set
+# CONFIG_KEYBOARD_TM2_TOUCHKEY is not set
+# CONFIG_KEYBOARD_XTKBD is not set
+CONFIG_KEYBOARD_CROS_EC=y
+# CONFIG_KEYBOARD_CAP11XX is not set
+# CONFIG_KEYBOARD_BCM is not set
+# CONFIG_KEYBOARD_MTK_PMIC is not set
+# CONFIG_KEYBOARD_CYPRESS_SF is not set
+# CONFIG_INPUT_MOUSE is not set
+CONFIG_INPUT_JOYSTICK=y
+# CONFIG_JOYSTICK_ANALOG is not set
+# CONFIG_JOYSTICK_A3D is not set
+# CONFIG_JOYSTICK_ADC is not set
+# CONFIG_JOYSTICK_ADI is not set
+# CONFIG_JOYSTICK_COBRA is not set
+# CONFIG_JOYSTICK_GF2K is not set
+# CONFIG_JOYSTICK_GRIP is not set
+# CONFIG_JOYSTICK_GRIP_MP is not set
+# CONFIG_JOYSTICK_GUILLEMOT is not set
+# CONFIG_JOYSTICK_INTERACT is not set
+# CONFIG_JOYSTICK_SIDEWINDER is not set
+# CONFIG_JOYSTICK_TMDC is not set
+CONFIG_JOYSTICK_IFORCE=m
+CONFIG_JOYSTICK_IFORCE_USB=m
+# CONFIG_JOYSTICK_IFORCE_232 is not set
+# CONFIG_JOYSTICK_WARRIOR is not set
+# CONFIG_JOYSTICK_MAGELLAN is not set
+# CONFIG_JOYSTICK_SPACEORB is not set
+# CONFIG_JOYSTICK_SPACEBALL is not set
+# CONFIG_JOYSTICK_STINGER is not set
+# CONFIG_JOYSTICK_TWIDJOY is not set
+# CONFIG_JOYSTICK_ZHENHUA is not set
+# CONFIG_JOYSTICK_AS5011 is not set
+# CONFIG_JOYSTICK_JOYDUMP is not set
+CONFIG_JOYSTICK_XPAD=m
+CONFIG_JOYSTICK_XPAD_FF=y
+CONFIG_JOYSTICK_XPAD_LEDS=y
+# CONFIG_JOYSTICK_PSXPAD_SPI is not set
+# CONFIG_JOYSTICK_PXRC is not set
+# CONFIG_JOYSTICK_QWIIC is not set
+# CONFIG_JOYSTICK_FSIA6B is not set
+# CONFIG_JOYSTICK_SENSEHAT is not set
+# CONFIG_JOYSTICK_SEESAW is not set
+# CONFIG_INPUT_TABLET is not set
+CONFIG_INPUT_TOUCHSCREEN=y
+# CONFIG_TOUCHSCREEN_ADS7846 is not set
+# CONFIG_TOUCHSCREEN_AD7877 is not set
+# CONFIG_TOUCHSCREEN_AD7879 is not set
+# CONFIG_TOUCHSCREEN_ADC is not set
+# CONFIG_TOUCHSCREEN_AR1021_I2C is not set
+CONFIG_TOUCHSCREEN_ATMEL_MXT=m
+# CONFIG_TOUCHSCREEN_ATMEL_MXT_T37 is not set
+# CONFIG_TOUCHSCREEN_AUO_PIXCIR is not set
+# CONFIG_TOUCHSCREEN_BU21013 is not set
+# CONFIG_TOUCHSCREEN_BU21029 is not set
+# CONFIG_TOUCHSCREEN_CHIPONE_ICN8318 is not set
+# CONFIG_TOUCHSCREEN_CY8CTMA140 is not set
+# CONFIG_TOUCHSCREEN_CY8CTMG110 is not set
+# CONFIG_TOUCHSCREEN_CYTTSP_CORE is not set
+# CONFIG_TOUCHSCREEN_CYTTSP4_CORE is not set
+# CONFIG_TOUCHSCREEN_CYTTSP5 is not set
+# CONFIG_TOUCHSCREEN_DYNAPRO is not set
+# CONFIG_TOUCHSCREEN_HAMPSHIRE is not set
+# CONFIG_TOUCHSCREEN_EETI is not set
+# CONFIG_TOUCHSCREEN_EGALAX is not set
+# CONFIG_TOUCHSCREEN_EGALAX_SERIAL is not set
+# CONFIG_TOUCHSCREEN_EXC3000 is not set
+# CONFIG_TOUCHSCREEN_FUJITSU is not set
+# CONFIG_TOUCHSCREEN_GOODIX is not set
+# CONFIG_TOUCHSCREEN_HIDEEP is not set
+# CONFIG_TOUCHSCREEN_HYCON_HY46XX is not set
+# CONFIG_TOUCHSCREEN_HYNITRON_CSTXXX is not set
+# CONFIG_TOUCHSCREEN_ILI210X is not set
+# CONFIG_TOUCHSCREEN_ILITEK is not set
+# CONFIG_TOUCHSCREEN_S6SY761 is not set
+# CONFIG_TOUCHSCREEN_GUNZE is not set
+# CONFIG_TOUCHSCREEN_EKTF2127 is not set
+# CONFIG_TOUCHSCREEN_ELAN is not set
+# CONFIG_TOUCHSCREEN_ELO is not set
+# CONFIG_TOUCHSCREEN_WACOM_W8001 is not set
+# CONFIG_TOUCHSCREEN_WACOM_I2C is not set
+# CONFIG_TOUCHSCREEN_MAX11801 is not set
+# CONFIG_TOUCHSCREEN_MCS5000 is not set
+# CONFIG_TOUCHSCREEN_MMS114 is not set
+# CONFIG_TOUCHSCREEN_MELFAS_MIP4 is not set
+# CONFIG_TOUCHSCREEN_MSG2638 is not set
+# CONFIG_TOUCHSCREEN_MTOUCH is not set
+# CONFIG_TOUCHSCREEN_NOVATEK_NVT_TS is not set
+# CONFIG_TOUCHSCREEN_IMAGIS is not set
+# CONFIG_TOUCHSCREEN_IMX6UL_TSC is not set
+# CONFIG_TOUCHSCREEN_INEXIO is not set
+# CONFIG_TOUCHSCREEN_PENMOUNT is not set
+# CONFIG_TOUCHSCREEN_EDT_FT5X06 is not set
+# CONFIG_TOUCHSCREEN_TOUCHRIGHT is not set
+# CONFIG_TOUCHSCREEN_TOUCHWIN is not set
+# CONFIG_TOUCHSCREEN_PIXCIR is not set
+# CONFIG_TOUCHSCREEN_WDT87XX_I2C is not set
+# CONFIG_TOUCHSCREEN_USB_COMPOSITE is not set
+# CONFIG_TOUCHSCREEN_TOUCHIT213 is not set
+# CONFIG_TOUCHSCREEN_TSC_SERIO is not set
+# CONFIG_TOUCHSCREEN_TSC2004 is not set
+# CONFIG_TOUCHSCREEN_TSC2005 is not set
+# CONFIG_TOUCHSCREEN_TSC2007 is not set
+# CONFIG_TOUCHSCREEN_RM_TS is not set
+# CONFIG_TOUCHSCREEN_SILEAD is not set
+# CONFIG_TOUCHSCREEN_SIS_I2C is not set
+# CONFIG_TOUCHSCREEN_ST1232 is not set
+# CONFIG_TOUCHSCREEN_STMFTS is not set
+# CONFIG_TOUCHSCREEN_SUR40 is not set
+# CONFIG_TOUCHSCREEN_SURFACE3_SPI is not set
+# CONFIG_TOUCHSCREEN_SX8654 is not set
+# CONFIG_TOUCHSCREEN_TPS6507X is not set
+# CONFIG_TOUCHSCREEN_ZET6223 is not set
+# CONFIG_TOUCHSCREEN_ZFORCE is not set
+# CONFIG_TOUCHSCREEN_COLIBRI_VF50 is not set
+# CONFIG_TOUCHSCREEN_ROHM_BU21023 is not set
+# CONFIG_TOUCHSCREEN_IQS5XX is not set
+# CONFIG_TOUCHSCREEN_IQS7211 is not set
+# CONFIG_TOUCHSCREEN_ZINITIX is not set
+# CONFIG_TOUCHSCREEN_HIMAX_HX83112B is not set
+CONFIG_INPUT_MISC=y
+# CONFIG_INPUT_AD714X is not set
+# CONFIG_INPUT_ATMEL_CAPTOUCH is not set
+# CONFIG_INPUT_BMA150 is not set
+# CONFIG_INPUT_E3X0_BUTTON is not set
+# CONFIG_INPUT_MMA8450 is not set
+# CONFIG_INPUT_GPIO_BEEPER is not set
+# CONFIG_INPUT_GPIO_DECODER is not set
+# CONFIG_INPUT_GPIO_VIBRA is not set
+# CONFIG_INPUT_ATI_REMOTE2 is not set
+# CONFIG_INPUT_KEYSPAN_REMOTE is not set
+# CONFIG_INPUT_KXTJ9 is not set
+# CONFIG_INPUT_POWERMATE is not set
+# CONFIG_INPUT_YEALINK is not set
+# CONFIG_INPUT_CM109 is not set
+# CONFIG_INPUT_REGULATOR_HAPTIC is not set
+CONFIG_INPUT_AXP20X_PEK=m
+CONFIG_INPUT_UINPUT=m
+# CONFIG_INPUT_PALMAS_PWRBUTTON is not set
+# CONFIG_INPUT_PCF8574 is not set
+CONFIG_INPUT_PWM_BEEPER=m
+# CONFIG_INPUT_PWM_VIBRA is not set
+# CONFIG_INPUT_GPIO_ROTARY_ENCODER is not set
+# CONFIG_INPUT_DA7280_HAPTICS is not set
+# CONFIG_INPUT_ADXL34X is not set
+# CONFIG_INPUT_IMS_PCU is not set
+# CONFIG_INPUT_IQS269A is not set
+# CONFIG_INPUT_IQS626A is not set
+# CONFIG_INPUT_IQS7222 is not set
+CONFIG_INPUT_CMA3000=m
+CONFIG_INPUT_CMA3000_I2C=m
+# CONFIG_INPUT_DRV260X_HAPTICS is not set
+# CONFIG_INPUT_DRV2665_HAPTICS is not set
+# CONFIG_INPUT_DRV2667_HAPTICS is not set
+# CONFIG_RMI4_CORE is not set
+
+#
+# Hardware I/O ports
+#
+CONFIG_SERIO=y
+# CONFIG_SERIO_SERPORT is not set
+# CONFIG_SERIO_AMBAKMI is not set
+# CONFIG_SERIO_PCIPS2 is not set
+CONFIG_SERIO_LIBPS2=m
+CONFIG_SERIO_RAW=m
+# CONFIG_SERIO_ALTERA_PS2 is not set
+# CONFIG_SERIO_PS2MULT is not set
+# CONFIG_SERIO_ARC_PS2 is not set
+# CONFIG_SERIO_APBPS2 is not set
+# CONFIG_SERIO_GPIO_PS2 is not set
+# CONFIG_USERIO is not set
+# CONFIG_GAMEPORT is not set
+# end of Hardware I/O ports
+# end of Input device support
+
+#
+# Character devices
+#
+CONFIG_TTY=y
+CONFIG_VT=y
+CONFIG_CONSOLE_TRANSLATIONS=y
+CONFIG_VT_CONSOLE=y
+CONFIG_VT_CONSOLE_SLEEP=y
+CONFIG_HW_CONSOLE=y
+CONFIG_VT_HW_CONSOLE_BINDING=y
+CONFIG_UNIX98_PTYS=y
+# CONFIG_LEGACY_PTYS is not set
+# CONFIG_LEGACY_TIOCSTI is not set
+CONFIG_LDISC_AUTOLOAD=y
+
+#
+# Serial drivers
+#
+CONFIG_SERIAL_EARLYCON=y
+CONFIG_SERIAL_8250=y
+# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
+# CONFIG_SERIAL_8250_16550A_VARIANTS is not set
+# CONFIG_SERIAL_8250_FINTEK is not set
+CONFIG_SERIAL_8250_CONSOLE=y
+CONFIG_SERIAL_8250_DMA=y
+CONFIG_SERIAL_8250_PCILIB=y
+CONFIG_SERIAL_8250_PCI=y
+CONFIG_SERIAL_8250_EXAR=y
+CONFIG_SERIAL_8250_NR_UARTS=32
+CONFIG_SERIAL_8250_RUNTIME_UARTS=4
+CONFIG_SERIAL_8250_EXTENDED=y
+CONFIG_SERIAL_8250_MANY_PORTS=y
+# CONFIG_SERIAL_8250_PCI1XXXX is not set
+CONFIG_SERIAL_8250_SHARE_IRQ=y
+# CONFIG_SERIAL_8250_DETECT_IRQ is not set
+CONFIG_SERIAL_8250_RSA=y
+CONFIG_SERIAL_8250_FSL=y
+# CONFIG_SERIAL_8250_DW is not set
+# CONFIG_SERIAL_8250_RT288X is not set
+CONFIG_SERIAL_8250_PERICOM=y
+CONFIG_SERIAL_OF_PLATFORM=y
+
+#
+# Non-8250 serial port support
+#
+# CONFIG_SERIAL_AMBA_PL010 is not set
+CONFIG_SERIAL_AMBA_PL011=y
+CONFIG_SERIAL_AMBA_PL011_CONSOLE=y
+# CONFIG_SERIAL_EARLYCON_SEMIHOST is not set
+# CONFIG_SERIAL_MAX3100 is not set
+# CONFIG_SERIAL_MAX310X is not set
+# CONFIG_SERIAL_UARTLITE is not set
+CONFIG_SERIAL_CORE=y
+CONFIG_SERIAL_CORE_CONSOLE=y
+# CONFIG_SERIAL_JSM is not set
+# CONFIG_SERIAL_SIFIVE is not set
+# CONFIG_SERIAL_SCCNXP is not set
+# CONFIG_SERIAL_SC16IS7XX is not set
+# CONFIG_SERIAL_ALTERA_JTAGUART is not set
+# CONFIG_SERIAL_ALTERA_UART is not set
+# CONFIG_SERIAL_XILINX_PS_UART is not set
+# CONFIG_SERIAL_ARC is not set
+# CONFIG_SERIAL_RP2 is not set
+# CONFIG_SERIAL_FSL_LPUART is not set
+# CONFIG_SERIAL_FSL_LINFLEXUART is not set
+# CONFIG_SERIAL_CONEXANT_DIGICOLOR is not set
+# CONFIG_SERIAL_SPRD is not set
+# end of Serial drivers
+
+CONFIG_SERIAL_MCTRL_GPIO=y
+CONFIG_SERIAL_NONSTANDARD=y
+# CONFIG_MOXA_INTELLIO is not set
+# CONFIG_MOXA_SMARTIO is not set
+CONFIG_N_HDLC=m
+CONFIG_N_GSM=m
+# CONFIG_NOZOMI is not set
+# CONFIG_NULL_TTY is not set
+CONFIG_HVC_DRIVER=y
+# CONFIG_HVC_DCC is not set
+CONFIG_SERIAL_DEV_BUS=y
+CONFIG_SERIAL_DEV_CTRL_TTYPORT=y
+CONFIG_VIRTIO_CONSOLE=m
+# CONFIG_IPMI_HANDLER is not set
+CONFIG_HW_RANDOM=m
+CONFIG_HW_RANDOM_TIMERIOMEM=m
+# CONFIG_HW_RANDOM_BA431 is not set
+CONFIG_HW_RANDOM_VIRTIO=m
+# CONFIG_HW_RANDOM_CCTRNG is not set
+# CONFIG_HW_RANDOM_XIPHERA is not set
+CONFIG_HW_RANDOM_ARM_SMCCC_TRNG=m
+# CONFIG_HW_RANDOM_CN10K is not set
+# CONFIG_APPLICOM is not set
+CONFIG_DEVMEM=y
+CONFIG_DEVPORT=y
+CONFIG_TCG_TPM=m
+CONFIG_HW_RANDOM_TPM=y
+# CONFIG_TCG_TIS is not set
+# CONFIG_TCG_TIS_SPI is not set
+# CONFIG_TCG_TIS_I2C is not set
+# CONFIG_TCG_TIS_I2C_CR50 is not set
+# CONFIG_TCG_TIS_I2C_ATMEL is not set
+CONFIG_TCG_TIS_I2C_INFINEON=m
+# CONFIG_TCG_TIS_I2C_NUVOTON is not set
+CONFIG_TCG_ATMEL=m
+# CONFIG_TCG_VTPM_PROXY is not set
+# CONFIG_TCG_TIS_ST33ZP24_I2C is not set
+# CONFIG_TCG_TIS_ST33ZP24_SPI is not set
+# CONFIG_XILLYBUS is not set
+# CONFIG_XILLYUSB is not set
+# end of Character devices
+
+#
+# I2C support
+#
+CONFIG_I2C=y
+CONFIG_I2C_BOARDINFO=y
+CONFIG_I2C_COMPAT=y
+CONFIG_I2C_CHARDEV=m
+CONFIG_I2C_MUX=y
+
+#
+# Multiplexer I2C Chip support
+#
+# CONFIG_I2C_ARB_GPIO_CHALLENGE is not set
+# CONFIG_I2C_MUX_GPIO is not set
+# CONFIG_I2C_MUX_GPMUX is not set
+# CONFIG_I2C_MUX_LTC4306 is not set
+# CONFIG_I2C_MUX_PCA9541 is not set
+# CONFIG_I2C_MUX_PCA954x is not set
+# CONFIG_I2C_MUX_PINCTRL is not set
+# CONFIG_I2C_MUX_REG is not set
+# CONFIG_I2C_DEMUX_PINCTRL is not set
+# CONFIG_I2C_MUX_MLXCPLD is not set
+# end of Multiplexer I2C Chip support
+
+CONFIG_I2C_HELPER_AUTO=y
+CONFIG_I2C_SMBUS=m
+
+#
+# I2C Hardware Bus support
+#
+
+#
+# PC SMBus host controller drivers
+#
+# CONFIG_I2C_ALI1535 is not set
+# CONFIG_I2C_ALI1563 is not set
+# CONFIG_I2C_ALI15X3 is not set
+# CONFIG_I2C_AMD756 is not set
+# CONFIG_I2C_AMD8111 is not set
+# CONFIG_I2C_I801 is not set
+# CONFIG_I2C_ISCH is not set
+# CONFIG_I2C_PIIX4 is not set
+# CONFIG_I2C_NFORCE2 is not set
+# CONFIG_I2C_NVIDIA_GPU is not set
+# CONFIG_I2C_SIS5595 is not set
+# CONFIG_I2C_SIS630 is not set
+# CONFIG_I2C_SIS96X is not set
+# CONFIG_I2C_VIA is not set
+# CONFIG_I2C_VIAPRO is not set
+
+#
+# I2C system bus drivers (mostly embedded / system-on-chip)
+#
+# CONFIG_I2C_CADENCE is not set
+# CONFIG_I2C_CBUS_GPIO is not set
+# CONFIG_I2C_DESIGNWARE_PLATFORM is not set
+# CONFIG_I2C_DESIGNWARE_PCI is not set
+# CONFIG_I2C_EMEV2 is not set
+# CONFIG_I2C_GPIO is not set
+# CONFIG_I2C_HISI is not set
+# CONFIG_I2C_NOMADIK is not set
+# CONFIG_I2C_OCORES is not set
+# CONFIG_I2C_PCA_PLATFORM is not set
+CONFIG_I2C_RK3X=y
+# CONFIG_I2C_SIMTEC is not set
+# CONFIG_I2C_THUNDERX is not set
+# CONFIG_I2C_XILINX is not set
+
+#
+# External I2C/SMBus adapter drivers
+#
+# CONFIG_I2C_DIOLAN_U2C is not set
+# CONFIG_I2C_CP2615 is not set
+# CONFIG_I2C_PCI1XXXX is not set
+# CONFIG_I2C_ROBOTFUZZ_OSIF is not set
+# CONFIG_I2C_TAOS_EVM is not set
+CONFIG_I2C_TINY_USB=m
+
+#
+# Other I2C/SMBus bus drivers
+#
+CONFIG_I2C_CROS_EC_TUNNEL=y
+# CONFIG_I2C_VIRTIO is not set
+# end of I2C Hardware Bus support
+
+CONFIG_I2C_STUB=m
+# CONFIG_I2C_SLAVE is not set
+# CONFIG_I2C_DEBUG_CORE is not set
+# CONFIG_I2C_DEBUG_ALGO is not set
+# CONFIG_I2C_DEBUG_BUS is not set
+# end of I2C support
+
+# CONFIG_I3C is not set
+CONFIG_SPI=y
+CONFIG_SPI_MASTER=y
+CONFIG_SPI_MEM=y
+
+#
+# SPI Master Controller Drivers
+#
+# CONFIG_SPI_ALTERA is not set
+# CONFIG_SPI_AXI_SPI_ENGINE is not set
+CONFIG_SPI_BITBANG=y
+# CONFIG_SPI_CADENCE is not set
+# CONFIG_SPI_CADENCE_QUADSPI is not set
+# CONFIG_SPI_CADENCE_XSPI is not set
+# CONFIG_SPI_DESIGNWARE is not set
+CONFIG_SPI_GPIO=y
+# CONFIG_SPI_FSL_SPI is not set
+# CONFIG_SPI_MICROCHIP_CORE is not set
+# CONFIG_SPI_MICROCHIP_CORE_QSPI is not set
+# CONFIG_SPI_OC_TINY is not set
+# CONFIG_SPI_PCI1XXXX is not set
+# CONFIG_SPI_PL022 is not set
+# CONFIG_SPI_PXA2XX is not set
+CONFIG_SPI_ROCKCHIP=y
+CONFIG_SPI_ROCKCHIP_SFC=m
+# CONFIG_SPI_SC18IS602 is not set
+# CONFIG_SPI_SIFIVE is not set
+# CONFIG_SPI_SN_F_OSPI is not set
+# CONFIG_SPI_MXIC is not set
+# CONFIG_SPI_THUNDERX is not set
+# CONFIG_SPI_XCOMM is not set
+# CONFIG_SPI_XILINX is not set
+# CONFIG_SPI_ZYNQMP_GQSPI is not set
+# CONFIG_SPI_AMD is not set
+
+#
+# SPI Multiplexer support
+#
+# CONFIG_SPI_MUX is not set
+
+#
+# SPI Protocol Masters
+#
+CONFIG_SPI_SPIDEV=m
+# CONFIG_SPI_LOOPBACK_TEST is not set
+# CONFIG_SPI_TLE62X0 is not set
+# CONFIG_SPI_SLAVE is not set
+CONFIG_SPI_DYNAMIC=y
+CONFIG_SPMI=m
+# CONFIG_SPMI_HISI3670 is not set
+# CONFIG_HSI is not set
+CONFIG_PPS=y
+# CONFIG_PPS_DEBUG is not set
+
+#
+# PPS clients support
+#
+# CONFIG_PPS_CLIENT_KTIMER is not set
+# CONFIG_PPS_CLIENT_LDISC is not set
+# CONFIG_PPS_CLIENT_GPIO is not set
+
+#
+# PPS generators support
+#
+
+#
+# PTP clock support
+#
+CONFIG_PTP_1588_CLOCK=m
+CONFIG_PTP_1588_CLOCK_OPTIONAL=m
+# CONFIG_DP83640_PHY is not set
+# CONFIG_PTP_1588_CLOCK_INES is not set
+CONFIG_PTP_1588_CLOCK_KVM=m
+# CONFIG_PTP_1588_CLOCK_IDT82P33 is not set
+# CONFIG_PTP_1588_CLOCK_IDTCM is not set
+# CONFIG_PTP_1588_CLOCK_MOCK is not set
+# end of PTP clock support
+
+CONFIG_PINCTRL=y
+CONFIG_GENERIC_PINCTRL_GROUPS=y
+CONFIG_PINMUX=y
+CONFIG_GENERIC_PINMUX_FUNCTIONS=y
+CONFIG_PINCONF=y
+CONFIG_GENERIC_PINCONF=y
+# CONFIG_PINCTRL_AS3722 is not set
+# CONFIG_PINCTRL_AXP209 is not set
+# CONFIG_PINCTRL_CY8C95X0 is not set
+CONFIG_PINCTRL_MAX77620=y
+# CONFIG_PINCTRL_MCP23S08 is not set
+# CONFIG_PINCTRL_MICROCHIP_SGPIO is not set
+# CONFIG_PINCTRL_OCELOT is not set
+# CONFIG_PINCTRL_PALMAS is not set
+CONFIG_PINCTRL_ROCKCHIP=y
+CONFIG_PINCTRL_SINGLE=y
+# CONFIG_PINCTRL_STMFX is not set
+# CONFIG_PINCTRL_SX150X is not set
+
+#
+# Renesas pinctrl drivers
+#
+# end of Renesas pinctrl drivers
+
+CONFIG_GPIOLIB=y
+CONFIG_GPIOLIB_FASTPATH_LIMIT=512
+CONFIG_OF_GPIO=y
+CONFIG_GPIOLIB_IRQCHIP=y
+CONFIG_GPIO_CDEV=y
+CONFIG_GPIO_CDEV_V1=y
+CONFIG_GPIO_GENERIC=y
+
+#
+# Memory mapped GPIO drivers
+#
+# CONFIG_GPIO_74XX_MMIO is not set
+# CONFIG_GPIO_ALTERA is not set
+# CONFIG_GPIO_CADENCE is not set
+CONFIG_GPIO_DWAPB=y
+# CONFIG_GPIO_EXAR is not set
+# CONFIG_GPIO_FTGPIO010 is not set
+CONFIG_GPIO_GENERIC_PLATFORM=y
+# CONFIG_GPIO_GRGPIO is not set
+# CONFIG_GPIO_HISI is not set
+# CONFIG_GPIO_HLWD is not set
+# CONFIG_GPIO_LOGICVC is not set
+# CONFIG_GPIO_MB86S7X is not set
+CONFIG_GPIO_PL061=y
+CONFIG_GPIO_ROCKCHIP=y
+# CONFIG_GPIO_SIFIVE is not set
+CONFIG_GPIO_SYSCON=y
+CONFIG_GPIO_XGENE=y
+# CONFIG_GPIO_XILINX is not set
+# CONFIG_GPIO_AMD_FCH is not set
+# end of Memory mapped GPIO drivers
+
+#
+# I2C GPIO expanders
+#
+# CONFIG_GPIO_ADNP is not set
+# CONFIG_GPIO_FXL6408 is not set
+# CONFIG_GPIO_DS4520 is not set
+# CONFIG_GPIO_GW_PLD is not set
+# CONFIG_GPIO_MAX7300 is not set
+# CONFIG_GPIO_MAX732X is not set
+CONFIG_GPIO_PCA953X=y
+CONFIG_GPIO_PCA953X_IRQ=y
+# CONFIG_GPIO_PCA9570 is not set
+# CONFIG_GPIO_PCF857X is not set
+# CONFIG_GPIO_TPIC2810 is not set
+# end of I2C GPIO expanders
+
+#
+# MFD GPIO expanders
+#
+CONFIG_GPIO_MAX77620=y
+# CONFIG_GPIO_PALMAS is not set
+# CONFIG_GPIO_TPS6586X is not set
+# end of MFD GPIO expanders
+
+#
+# PCI GPIO expanders
+#
+# CONFIG_GPIO_BT8XX is not set
+# CONFIG_GPIO_PCI_IDIO_16 is not set
+# CONFIG_GPIO_PCIE_IDIO_24 is not set
+# CONFIG_GPIO_RDC321X is not set
+# end of PCI GPIO expanders
+
+#
+# SPI GPIO expanders
+#
+# CONFIG_GPIO_74X164 is not set
+# CONFIG_GPIO_MAX3191X is not set
+# CONFIG_GPIO_MAX7301 is not set
+# CONFIG_GPIO_MC33880 is not set
+# CONFIG_GPIO_PISOSR is not set
+# CONFIG_GPIO_XRA1403 is not set
+# end of SPI GPIO expanders
+
+#
+# USB GPIO expanders
+#
+# end of USB GPIO expanders
+
+#
+# Virtual GPIO drivers
+#
+CONFIG_GPIO_AGGREGATOR=m
+# CONFIG_GPIO_LATCH is not set
+# CONFIG_GPIO_MOCKUP is not set
+# CONFIG_GPIO_VIRTIO is not set
+# CONFIG_GPIO_SIM is not set
+# end of Virtual GPIO drivers
+
+# CONFIG_W1 is not set
+CONFIG_POWER_RESET=y
+# CONFIG_POWER_RESET_AS3722 is not set
+# CONFIG_POWER_RESET_GPIO is not set
+# CONFIG_POWER_RESET_GPIO_RESTART is not set
+# CONFIG_POWER_RESET_LTC2952 is not set
+# CONFIG_POWER_RESET_MT6323 is not set
+# CONFIG_POWER_RESET_REGULATOR is not set
+# CONFIG_POWER_RESET_RESTART is not set
+# CONFIG_POWER_RESET_XGENE is not set
+CONFIG_POWER_RESET_SYSCON=y
+CONFIG_POWER_RESET_SYSCON_POWEROFF=y
+CONFIG_REBOOT_MODE=y
+CONFIG_SYSCON_REBOOT_MODE=y
+# CONFIG_NVMEM_REBOOT_MODE is not set
+CONFIG_POWER_SUPPLY=y
+# CONFIG_POWER_SUPPLY_DEBUG is not set
+# CONFIG_GENERIC_ADC_BATTERY is not set
+# CONFIG_IP5XXX_POWER is not set
+# CONFIG_TEST_POWER is not set
+# CONFIG_CHARGER_ADP5061 is not set
+# CONFIG_BATTERY_CW2015 is not set
+# CONFIG_BATTERY_DS2780 is not set
+# CONFIG_BATTERY_DS2781 is not set
+# CONFIG_BATTERY_DS2782 is not set
+# CONFIG_BATTERY_SAMSUNG_SDI is not set
+CONFIG_BATTERY_SBS=m
+CONFIG_CHARGER_SBS=m
+CONFIG_MANAGER_SBS=m
+# CONFIG_BATTERY_BQ27XXX is not set
+# CONFIG_AXP20X_POWER is not set
+# CONFIG_BATTERY_MAX17040 is not set
+# CONFIG_BATTERY_MAX17042 is not set
+# CONFIG_CHARGER_ISP1704 is not set
+# CONFIG_CHARGER_MAX8903 is not set
+# CONFIG_CHARGER_LP8727 is not set
+# CONFIG_CHARGER_GPIO is not set
+# CONFIG_CHARGER_MANAGER is not set
+# CONFIG_CHARGER_LT3651 is not set
+# CONFIG_CHARGER_LTC4162L is not set
+# CONFIG_CHARGER_DETECTOR_MAX14656 is not set
+# CONFIG_CHARGER_MAX77976 is not set
+# CONFIG_CHARGER_BQ2415X is not set
+# CONFIG_CHARGER_BQ24190 is not set
+# CONFIG_CHARGER_BQ24257 is not set
+# CONFIG_CHARGER_BQ24735 is not set
+# CONFIG_CHARGER_BQ2515X is not set
+# CONFIG_CHARGER_BQ25890 is not set
+# CONFIG_CHARGER_BQ25980 is not set
+# CONFIG_CHARGER_BQ256XX is not set
+# CONFIG_CHARGER_SMB347 is not set
+# CONFIG_CHARGER_TPS65090 is not set
+# CONFIG_BATTERY_GAUGE_LTC2941 is not set
+# CONFIG_BATTERY_GOLDFISH is not set
+# CONFIG_BATTERY_RT5033 is not set
+# CONFIG_CHARGER_RT9455 is not set
+# CONFIG_CHARGER_RT9467 is not set
+# CONFIG_CHARGER_RT9471 is not set
+CONFIG_CHARGER_CROS_USBPD=m
+CONFIG_CHARGER_CROS_PCHG=m
+# CONFIG_CHARGER_UCS1002 is not set
+# CONFIG_CHARGER_BD99954 is not set
+# CONFIG_BATTERY_UG3105 is not set
+# CONFIG_FUEL_GAUGE_MM8013 is not set
+CONFIG_HWMON=m
+CONFIG_HWMON_VID=m
+# CONFIG_HWMON_DEBUG_CHIP is not set
+
+#
+# Native drivers
+#
+# CONFIG_SENSORS_AD7314 is not set
+CONFIG_SENSORS_AD7414=m
+CONFIG_SENSORS_AD7418=m
+CONFIG_SENSORS_ADM1025=m
+CONFIG_SENSORS_ADM1026=m
+CONFIG_SENSORS_ADM1029=m
+CONFIG_SENSORS_ADM1031=m
+# CONFIG_SENSORS_ADM1177 is not set
+CONFIG_SENSORS_ADM9240=m
+CONFIG_SENSORS_ADT7X10=m
+# CONFIG_SENSORS_ADT7310 is not set
+CONFIG_SENSORS_ADT7410=m
+CONFIG_SENSORS_ADT7411=m
+CONFIG_SENSORS_ADT7462=m
+CONFIG_SENSORS_ADT7470=m
+CONFIG_SENSORS_ADT7475=m
+# CONFIG_SENSORS_AHT10 is not set
+# CONFIG_SENSORS_AQUACOMPUTER_D5NEXT is not set
+# CONFIG_SENSORS_AS370 is not set
+CONFIG_SENSORS_ASC7621=m
+# CONFIG_SENSORS_AXI_FAN_CONTROL is not set
+CONFIG_SENSORS_ARM_SCPI=m
+CONFIG_SENSORS_ATXP1=m
+# CONFIG_SENSORS_CORSAIR_CPRO is not set
+# CONFIG_SENSORS_CORSAIR_PSU is not set
+CONFIG_SENSORS_DS620=m
+CONFIG_SENSORS_DS1621=m
+# CONFIG_SENSORS_I5K_AMB is not set
+CONFIG_SENSORS_F71805F=m
+CONFIG_SENSORS_F71882FG=m
+CONFIG_SENSORS_F75375S=m
+# CONFIG_SENSORS_FTSTEUTATES is not set
+# CONFIG_SENSORS_GIGABYTE_WATERFORCE is not set
+CONFIG_SENSORS_GL518SM=m
+CONFIG_SENSORS_GL520SM=m
+CONFIG_SENSORS_G760A=m
+CONFIG_SENSORS_G762=m
+# CONFIG_SENSORS_GPIO_FAN is not set
+# CONFIG_SENSORS_HIH6130 is not set
+# CONFIG_SENSORS_HS3001 is not set
+CONFIG_SENSORS_IIO_HWMON=m
+CONFIG_SENSORS_IT87=m
+# CONFIG_SENSORS_JC42 is not set
+# CONFIG_SENSORS_POWERZ is not set
+CONFIG_SENSORS_POWR1220=m
+CONFIG_SENSORS_LINEAGE=m
+CONFIG_SENSORS_LTC2945=m
+# CONFIG_SENSORS_LTC2947_I2C is not set
+# CONFIG_SENSORS_LTC2947_SPI is not set
+# CONFIG_SENSORS_LTC2990 is not set
+# CONFIG_SENSORS_LTC2991 is not set
+# CONFIG_SENSORS_LTC2992 is not set
+CONFIG_SENSORS_LTC4151=m
+CONFIG_SENSORS_LTC4215=m
+CONFIG_SENSORS_LTC4222=m
+CONFIG_SENSORS_LTC4245=m
+CONFIG_SENSORS_LTC4260=m
+CONFIG_SENSORS_LTC4261=m
+# CONFIG_SENSORS_MAX1111 is not set
+# CONFIG_SENSORS_MAX127 is not set
+CONFIG_SENSORS_MAX16065=m
+CONFIG_SENSORS_MAX1619=m
+CONFIG_SENSORS_MAX1668=m
+CONFIG_SENSORS_MAX197=m
+# CONFIG_SENSORS_MAX31722 is not set
+# CONFIG_SENSORS_MAX31730 is not set
+# CONFIG_SENSORS_MAX31760 is not set
+# CONFIG_MAX31827 is not set
+# CONFIG_SENSORS_MAX6620 is not set
+# CONFIG_SENSORS_MAX6621 is not set
+CONFIG_SENSORS_MAX6639=m
+CONFIG_SENSORS_MAX6650=m
+CONFIG_SENSORS_MAX6697=m
+# CONFIG_SENSORS_MAX31790 is not set
+# CONFIG_SENSORS_MC34VR500 is not set
+CONFIG_SENSORS_MCP3021=m
+# CONFIG_SENSORS_TC654 is not set
+# CONFIG_SENSORS_TPS23861 is not set
+# CONFIG_SENSORS_MR75203 is not set
+# CONFIG_SENSORS_ADCXX is not set
+CONFIG_SENSORS_LM63=m
+# CONFIG_SENSORS_LM70 is not set
+CONFIG_SENSORS_LM73=m
+CONFIG_SENSORS_LM75=m
+CONFIG_SENSORS_LM77=m
+CONFIG_SENSORS_LM78=m
+CONFIG_SENSORS_LM80=m
+CONFIG_SENSORS_LM83=m
+CONFIG_SENSORS_LM85=m
+CONFIG_SENSORS_LM87=m
+CONFIG_SENSORS_LM90=m
+CONFIG_SENSORS_LM92=m
+CONFIG_SENSORS_LM93=m
+CONFIG_SENSORS_LM95234=m
+CONFIG_SENSORS_LM95241=m
+CONFIG_SENSORS_LM95245=m
+CONFIG_SENSORS_PC87360=m
+CONFIG_SENSORS_PC87427=m
+CONFIG_SENSORS_NTC_THERMISTOR=m
+CONFIG_SENSORS_NCT6683=m
+CONFIG_SENSORS_NCT6775_CORE=m
+CONFIG_SENSORS_NCT6775=m
+# CONFIG_SENSORS_NCT6775_I2C is not set
+CONFIG_SENSORS_NCT7802=m
+CONFIG_SENSORS_NCT7904=m
+# CONFIG_SENSORS_NPCM7XX is not set
+# CONFIG_SENSORS_NZXT_KRAKEN2 is not set
+# CONFIG_SENSORS_NZXT_SMART2 is not set
+# CONFIG_SENSORS_OCC_P8_I2C is not set
+CONFIG_SENSORS_PCF8591=m
+CONFIG_PMBUS=m
+CONFIG_SENSORS_PMBUS=m
+# CONFIG_SENSORS_ACBEL_FSG032 is not set
+# CONFIG_SENSORS_ADM1266 is not set
+CONFIG_SENSORS_ADM1275=m
+# CONFIG_SENSORS_BEL_PFE is not set
+# CONFIG_SENSORS_BPA_RS600 is not set
+# CONFIG_SENSORS_DELTA_AHE50DC_FAN is not set
+# CONFIG_SENSORS_FSP_3Y is not set
+# CONFIG_SENSORS_IBM_CFFPS is not set
+# CONFIG_SENSORS_DPS920AB is not set
+# CONFIG_SENSORS_INSPUR_IPSPS is not set
+# CONFIG_SENSORS_IR35221 is not set
+# CONFIG_SENSORS_IR36021 is not set
+# CONFIG_SENSORS_IR38064 is not set
+# CONFIG_SENSORS_IRPS5401 is not set
+# CONFIG_SENSORS_ISL68137 is not set
+CONFIG_SENSORS_LM25066=m
+# CONFIG_SENSORS_LM25066_REGULATOR is not set
+# CONFIG_SENSORS_LT7182S is not set
+CONFIG_SENSORS_LTC2978=m
+# CONFIG_SENSORS_LTC2978_REGULATOR is not set
+# CONFIG_SENSORS_LTC3815 is not set
+# CONFIG_SENSORS_LTC4286 is not set
+# CONFIG_SENSORS_MAX15301 is not set
+CONFIG_SENSORS_MAX16064=m
+# CONFIG_SENSORS_MAX16601 is not set
+# CONFIG_SENSORS_MAX20730 is not set
+# CONFIG_SENSORS_MAX20751 is not set
+# CONFIG_SENSORS_MAX31785 is not set
+CONFIG_SENSORS_MAX34440=m
+CONFIG_SENSORS_MAX8688=m
+# CONFIG_SENSORS_MP2856 is not set
+# CONFIG_SENSORS_MP2888 is not set
+# CONFIG_SENSORS_MP2975 is not set
+# CONFIG_SENSORS_MP5023 is not set
+# CONFIG_SENSORS_MP5990 is not set
+# CONFIG_SENSORS_MPQ7932 is not set
+# CONFIG_SENSORS_PIM4328 is not set
+# CONFIG_SENSORS_PLI1209BC is not set
+# CONFIG_SENSORS_PM6764TR is not set
+# CONFIG_SENSORS_PXE1610 is not set
+# CONFIG_SENSORS_Q54SJ108A2 is not set
+# CONFIG_SENSORS_STPDDC60 is not set
+# CONFIG_SENSORS_TDA38640 is not set
+CONFIG_SENSORS_TPS40422=m
+# CONFIG_SENSORS_TPS53679 is not set
+# CONFIG_SENSORS_TPS546D24 is not set
+CONFIG_SENSORS_UCD9000=m
+CONFIG_SENSORS_UCD9200=m
+# CONFIG_SENSORS_XDPE152 is not set
+# CONFIG_SENSORS_XDPE122 is not set
+CONFIG_SENSORS_ZL6100=m
+CONFIG_SENSORS_PWM_FAN=m
+# CONFIG_SENSORS_SBTSI is not set
+# CONFIG_SENSORS_SBRMI is not set
+CONFIG_SENSORS_SHT15=m
+CONFIG_SENSORS_SHT21=m
+CONFIG_SENSORS_SHT3x=m
+# CONFIG_SENSORS_SHT4x is not set
+CONFIG_SENSORS_SHTC1=m
+CONFIG_SENSORS_SIS5595=m
+CONFIG_SENSORS_DME1737=m
+CONFIG_SENSORS_EMC1403=m
+# CONFIG_SENSORS_EMC2103 is not set
+# CONFIG_SENSORS_EMC2305 is not set
+CONFIG_SENSORS_EMC6W201=m
+CONFIG_SENSORS_SMSC47M1=m
+CONFIG_SENSORS_SMSC47M192=m
+CONFIG_SENSORS_SMSC47B397=m
+CONFIG_SENSORS_SCH56XX_COMMON=m
+CONFIG_SENSORS_SCH5627=m
+CONFIG_SENSORS_SCH5636=m
+# CONFIG_SENSORS_STTS751 is not set
+CONFIG_SENSORS_ADC128D818=m
+CONFIG_SENSORS_ADS7828=m
+# CONFIG_SENSORS_ADS7871 is not set
+CONFIG_SENSORS_AMC6821=m
+CONFIG_SENSORS_INA209=m
+CONFIG_SENSORS_INA2XX=m
+# CONFIG_SENSORS_INA238 is not set
+CONFIG_SENSORS_INA3221=m
+CONFIG_SENSORS_TC74=m
+CONFIG_SENSORS_THMC50=m
+CONFIG_SENSORS_TMP102=m
+CONFIG_SENSORS_TMP103=m
+CONFIG_SENSORS_TMP108=m
+CONFIG_SENSORS_TMP401=m
+CONFIG_SENSORS_TMP421=m
+# CONFIG_SENSORS_TMP464 is not set
+# CONFIG_SENSORS_TMP513 is not set
+CONFIG_SENSORS_VIA686A=m
+CONFIG_SENSORS_VT1211=m
+CONFIG_SENSORS_VT8231=m
+# CONFIG_SENSORS_W83773G is not set
+CONFIG_SENSORS_W83781D=m
+CONFIG_SENSORS_W83791D=m
+CONFIG_SENSORS_W83792D=m
+CONFIG_SENSORS_W83793=m
+CONFIG_SENSORS_W83795=m
+# CONFIG_SENSORS_W83795_FANCTRL is not set
+CONFIG_SENSORS_W83L785TS=m
+CONFIG_SENSORS_W83L786NG=m
+CONFIG_SENSORS_W83627HF=m
+CONFIG_SENSORS_W83627EHF=m
+CONFIG_THERMAL=y
+# CONFIG_THERMAL_NETLINK is not set
+# CONFIG_THERMAL_STATISTICS is not set
+CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0
+CONFIG_THERMAL_OF=y
+CONFIG_THERMAL_WRITABLE_TRIPS=y
+CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y
+# CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE is not set
+# CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE is not set
+# CONFIG_THERMAL_DEFAULT_GOV_BANG_BANG is not set
+CONFIG_THERMAL_GOV_FAIR_SHARE=y
+CONFIG_THERMAL_GOV_STEP_WISE=y
+CONFIG_THERMAL_GOV_BANG_BANG=y
+CONFIG_THERMAL_GOV_USER_SPACE=y
+# CONFIG_THERMAL_GOV_POWER_ALLOCATOR is not set
+CONFIG_CPU_THERMAL=y
+CONFIG_CPU_FREQ_THERMAL=y
+# CONFIG_CPU_IDLE_THERMAL is not set
+CONFIG_DEVFREQ_THERMAL=y
+CONFIG_THERMAL_EMULATION=y
+# CONFIG_THERMAL_MMIO is not set
+CONFIG_MAX77620_THERMAL=m
+CONFIG_ROCKCHIP_THERMAL=m
+CONFIG_GENERIC_ADC_THERMAL=m
+CONFIG_WATCHDOG=y
+CONFIG_WATCHDOG_CORE=m
+# CONFIG_WATCHDOG_NOWAYOUT is not set
+CONFIG_WATCHDOG_HANDLE_BOOT_ENABLED=y
+CONFIG_WATCHDOG_OPEN_TIMEOUT=0
+# CONFIG_WATCHDOG_SYSFS is not set
+# CONFIG_WATCHDOG_HRTIMER_PRETIMEOUT is not set
+
+#
+# Watchdog Pretimeout Governors
+#
+# CONFIG_WATCHDOG_PRETIMEOUT_GOV is not set
+
+#
+# Watchdog Device Drivers
+#
+# CONFIG_SOFT_WATCHDOG is not set
+# CONFIG_GPIO_WATCHDOG is not set
+# CONFIG_XILINX_WATCHDOG is not set
+# CONFIG_XILINX_WINDOW_WATCHDOG is not set
+# CONFIG_ZIIRAVE_WATCHDOG is not set
+# CONFIG_ARM_SP805_WATCHDOG is not set
+# CONFIG_ARM_SBSA_WATCHDOG is not set
+# CONFIG_CADENCE_WATCHDOG is not set
+CONFIG_DW_WATCHDOG=m
+# CONFIG_MAX63XX_WATCHDOG is not set
+# CONFIG_MAX77620_WATCHDOG is not set
+# CONFIG_ARM_SMC_WATCHDOG is not set
+# CONFIG_ALIM7101_WDT is not set
+# CONFIG_I6300ESB_WDT is not set
+# CONFIG_HP_WATCHDOG is not set
+# CONFIG_MEN_A21_WDT is not set
+
+#
+# PCI-based Watchdog Cards
+#
+# CONFIG_PCIPCWATCHDOG is not set
+# CONFIG_WDTPCI is not set
+
+#
+# USB-based Watchdog Cards
+#
+# CONFIG_USBPCWATCHDOG is not set
+CONFIG_SSB_POSSIBLE=y
+CONFIG_SSB=m
+CONFIG_SSB_SPROM=y
+CONFIG_SSB_PCIHOST_POSSIBLE=y
+CONFIG_SSB_PCIHOST=y
+CONFIG_SSB_SDIOHOST_POSSIBLE=y
+CONFIG_SSB_SDIOHOST=y
+CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y
+CONFIG_SSB_DRIVER_PCICORE=y
+CONFIG_SSB_DRIVER_GPIO=y
+CONFIG_BCMA_POSSIBLE=y
+# CONFIG_BCMA is not set
+
+#
+# Multifunction device drivers
+#
+CONFIG_MFD_CORE=y
+# CONFIG_MFD_ACT8945A is not set
+CONFIG_MFD_AS3711=y
+# CONFIG_MFD_SMPRO is not set
+CONFIG_MFD_AS3722=m
+# CONFIG_PMIC_ADP5520 is not set
+# CONFIG_MFD_AAT2870_CORE is not set
+# CONFIG_MFD_ATMEL_FLEXCOM is not set
+# CONFIG_MFD_ATMEL_HLCDC is not set
+# CONFIG_MFD_BCM590XX is not set
+# CONFIG_MFD_BD9571MWV is not set
+CONFIG_MFD_AXP20X=y
+CONFIG_MFD_AXP20X_I2C=y
+CONFIG_MFD_CROS_EC_DEV=y
+# CONFIG_MFD_CS42L43_I2C is not set
+# CONFIG_MFD_MADERA is not set
+# CONFIG_MFD_MAX5970 is not set
+# CONFIG_PMIC_DA903X is not set
+# CONFIG_MFD_DA9052_SPI is not set
+# CONFIG_MFD_DA9052_I2C is not set
+# CONFIG_MFD_DA9055 is not set
+# CONFIG_MFD_DA9062 is not set
+# CONFIG_MFD_DA9063 is not set
+# CONFIG_MFD_DA9150 is not set
+# CONFIG_MFD_DLN2 is not set
+# CONFIG_MFD_GATEWORKS_GSC is not set
+# CONFIG_MFD_MC13XXX_SPI is not set
+# CONFIG_MFD_MC13XXX_I2C is not set
+# CONFIG_MFD_MP2629 is not set
+# CONFIG_MFD_HI6421_PMIC is not set
+# CONFIG_MFD_HI6421_SPMI is not set
+# CONFIG_LPC_ICH is not set
+# CONFIG_LPC_SCH is not set
+# CONFIG_MFD_IQS62X is not set
+# CONFIG_MFD_JANZ_CMODIO is not set
+# CONFIG_MFD_KEMPLD is not set
+# CONFIG_MFD_88PM800 is not set
+# CONFIG_MFD_88PM805 is not set
+# CONFIG_MFD_88PM860X is not set
+# CONFIG_MFD_MAX14577 is not set
+# CONFIG_MFD_MAX77541 is not set
+CONFIG_MFD_MAX77620=y
+# CONFIG_MFD_MAX77650 is not set
+# CONFIG_MFD_MAX77686 is not set
+# CONFIG_MFD_MAX77693 is not set
+# CONFIG_MFD_MAX77714 is not set
+# CONFIG_MFD_MAX77843 is not set
+# CONFIG_MFD_MAX8907 is not set
+# CONFIG_MFD_MAX8925 is not set
+# CONFIG_MFD_MAX8997 is not set
+# CONFIG_MFD_MAX8998 is not set
+# CONFIG_MFD_MT6360 is not set
+# CONFIG_MFD_MT6370 is not set
+CONFIG_MFD_MT6397=y
+# CONFIG_MFD_MENF21BMC is not set
+# CONFIG_MFD_OCELOT is not set
+# CONFIG_EZX_PCAP is not set
+# CONFIG_MFD_CPCAP is not set
+# CONFIG_MFD_VIPERBOARD is not set
+# CONFIG_MFD_NTXEC is not set
+# CONFIG_MFD_RETU is not set
+# CONFIG_MFD_PCF50633 is not set
+# CONFIG_MFD_SY7636A is not set
+# CONFIG_MFD_RDC321X is not set
+# CONFIG_MFD_RT4831 is not set
+# CONFIG_MFD_RT5033 is not set
+# CONFIG_MFD_RT5120 is not set
+# CONFIG_MFD_RC5T583 is not set
+# CONFIG_MFD_RK8XX_I2C is not set
+# CONFIG_MFD_RK8XX_SPI is not set
+# CONFIG_MFD_RN5T618 is not set
+# CONFIG_MFD_SEC_CORE is not set
+# CONFIG_MFD_SI476X_CORE is not set
+CONFIG_MFD_SM501=m
+CONFIG_MFD_SM501_GPIO=y
+# CONFIG_MFD_SKY81452 is not set
+# CONFIG_MFD_STMPE is not set
+CONFIG_MFD_SYSCON=y
+# CONFIG_MFD_LP3943 is not set
+# CONFIG_MFD_LP8788 is not set
+# CONFIG_MFD_TI_LMU is not set
+CONFIG_MFD_PALMAS=y
+# CONFIG_TPS6105X is not set
+# CONFIG_TPS65010 is not set
+# CONFIG_TPS6507X is not set
+# CONFIG_MFD_TPS65086 is not set
+CONFIG_MFD_TPS65090=y
+# CONFIG_MFD_TPS65217 is not set
+# CONFIG_MFD_TI_LP873X is not set
+# CONFIG_MFD_TI_LP87565 is not set
+# CONFIG_MFD_TPS65218 is not set
+# CONFIG_MFD_TPS65219 is not set
+CONFIG_MFD_TPS6586X=y
+# CONFIG_MFD_TPS65910 is not set
+# CONFIG_MFD_TPS65912_I2C is not set
+# CONFIG_MFD_TPS65912_SPI is not set
+# CONFIG_MFD_TPS6594_I2C is not set
+# CONFIG_MFD_TPS6594_SPI is not set
+# CONFIG_TWL4030_CORE is not set
+# CONFIG_TWL6040_CORE is not set
+# CONFIG_MFD_WL1273_CORE is not set
+# CONFIG_MFD_LM3533 is not set
+# CONFIG_MFD_TC3589X is not set
+# CONFIG_MFD_TQMX86 is not set
+CONFIG_MFD_VX855=m
+# CONFIG_MFD_LOCHNAGAR is not set
+# CONFIG_MFD_ARIZONA_I2C is not set
+# CONFIG_MFD_ARIZONA_SPI is not set
+# CONFIG_MFD_WM8400 is not set
+# CONFIG_MFD_WM831X_I2C is not set
+# CONFIG_MFD_WM831X_SPI is not set
+# CONFIG_MFD_WM8350_I2C is not set
+# CONFIG_MFD_WM8994 is not set
+# CONFIG_MFD_ROHM_BD718XX is not set
+# CONFIG_MFD_ROHM_BD71828 is not set
+# CONFIG_MFD_ROHM_BD957XMUF is not set
+# CONFIG_MFD_STPMIC1 is not set
+# CONFIG_MFD_STMFX is not set
+# CONFIG_MFD_ATC260X_I2C is not set
+# CONFIG_MFD_KHADAS_MCU is not set
+# CONFIG_MFD_QCOM_PM8008 is not set
+# CONFIG_RAVE_SP_CORE is not set
+# CONFIG_MFD_INTEL_M10_BMC_SPI is not set
+# CONFIG_MFD_RSMU_I2C is not set
+# CONFIG_MFD_RSMU_SPI is not set
+# end of Multifunction device drivers
+
+CONFIG_REGULATOR=y
+# CONFIG_REGULATOR_DEBUG is not set
+CONFIG_REGULATOR_FIXED_VOLTAGE=y
+# CONFIG_REGULATOR_VIRTUAL_CONSUMER is not set
+# CONFIG_REGULATOR_USERSPACE_CONSUMER is not set
+# CONFIG_REGULATOR_NETLINK_EVENTS is not set
+# CONFIG_REGULATOR_88PG86X is not set
+# CONFIG_REGULATOR_ACT8865 is not set
+# CONFIG_REGULATOR_AD5398 is not set
+# CONFIG_REGULATOR_AS3711 is not set
+# CONFIG_REGULATOR_AS3722 is not set
+# CONFIG_REGULATOR_AW37503 is not set
+# CONFIG_REGULATOR_AXP20X is not set
+CONFIG_REGULATOR_CROS_EC=m
+# CONFIG_REGULATOR_DA9121 is not set
+# CONFIG_REGULATOR_DA9210 is not set
+# CONFIG_REGULATOR_DA9211 is not set
+# CONFIG_REGULATOR_FAN53555 is not set
+# CONFIG_REGULATOR_FAN53880 is not set
+CONFIG_REGULATOR_GPIO=y
+# CONFIG_REGULATOR_ISL9305 is not set
+# CONFIG_REGULATOR_ISL6271A is not set
+# CONFIG_REGULATOR_LP3971 is not set
+# CONFIG_REGULATOR_LP3972 is not set
+# CONFIG_REGULATOR_LP872X is not set
+# CONFIG_REGULATOR_LP8755 is not set
+# CONFIG_REGULATOR_LTC3589 is not set
+# CONFIG_REGULATOR_LTC3676 is not set
+# CONFIG_REGULATOR_MAX1586 is not set
+# CONFIG_REGULATOR_MAX77503 is not set
+CONFIG_REGULATOR_MAX77620=y
+# CONFIG_REGULATOR_MAX77857 is not set
+# CONFIG_REGULATOR_MAX8649 is not set
+# CONFIG_REGULATOR_MAX8660 is not set
+# CONFIG_REGULATOR_MAX8893 is not set
+# CONFIG_REGULATOR_MAX8952 is not set
+# CONFIG_REGULATOR_MAX8973 is not set
+# CONFIG_REGULATOR_MAX20086 is not set
+# CONFIG_REGULATOR_MAX20411 is not set
+# CONFIG_REGULATOR_MAX77826 is not set
+# CONFIG_REGULATOR_MCP16502 is not set
+# CONFIG_REGULATOR_MP5416 is not set
+# CONFIG_REGULATOR_MP8859 is not set
+# CONFIG_REGULATOR_MP886X is not set
+# CONFIG_REGULATOR_MPQ7920 is not set
+# CONFIG_REGULATOR_MT6311 is not set
+# CONFIG_REGULATOR_MT6315 is not set
+# CONFIG_REGULATOR_MT6323 is not set
+# CONFIG_REGULATOR_MT6331 is not set
+# CONFIG_REGULATOR_MT6332 is not set
+# CONFIG_REGULATOR_MT6357 is not set
+# CONFIG_REGULATOR_MT6358 is not set
+# CONFIG_REGULATOR_MT6359 is not set
+# CONFIG_REGULATOR_MT6397 is not set
+# CONFIG_REGULATOR_PALMAS is not set
+# CONFIG_REGULATOR_PCA9450 is not set
+# CONFIG_REGULATOR_PF8X00 is not set
+# CONFIG_REGULATOR_PFUZE100 is not set
+# CONFIG_REGULATOR_PV88060 is not set
+# CONFIG_REGULATOR_PV88080 is not set
+# CONFIG_REGULATOR_PV88090 is not set
+CONFIG_REGULATOR_PWM=y
+# CONFIG_REGULATOR_QCOM_SPMI is not set
+# CONFIG_REGULATOR_QCOM_USB_VBUS is not set
+# CONFIG_REGULATOR_RAA215300 is not set
+# CONFIG_REGULATOR_RASPBERRYPI_TOUCHSCREEN_ATTINY is not set
+# CONFIG_REGULATOR_RT4801 is not set
+# CONFIG_REGULATOR_RT4803 is not set
+# CONFIG_REGULATOR_RT5190A is not set
+# CONFIG_REGULATOR_RT5739 is not set
+# CONFIG_REGULATOR_RT5759 is not set
+# CONFIG_REGULATOR_RT6160 is not set
+# CONFIG_REGULATOR_RT6190 is not set
+# CONFIG_REGULATOR_RT6245 is not set
+# CONFIG_REGULATOR_RTQ2134 is not set
+# CONFIG_REGULATOR_RTMV20 is not set
+# CONFIG_REGULATOR_RTQ6752 is not set
+# CONFIG_REGULATOR_RTQ2208 is not set
+# CONFIG_REGULATOR_SLG51000 is not set
+# CONFIG_REGULATOR_SY8106A is not set
+# CONFIG_REGULATOR_SY8824X is not set
+# CONFIG_REGULATOR_SY8827N is not set
+# CONFIG_REGULATOR_TPS51632 is not set
+# CONFIG_REGULATOR_TPS62360 is not set
+# CONFIG_REGULATOR_TPS6286X is not set
+# CONFIG_REGULATOR_TPS6287X is not set
+# CONFIG_REGULATOR_TPS65023 is not set
+# CONFIG_REGULATOR_TPS6507X is not set
+# CONFIG_REGULATOR_TPS65090 is not set
+# CONFIG_REGULATOR_TPS65132 is not set
+# CONFIG_REGULATOR_TPS6524X is not set
+# CONFIG_REGULATOR_TPS6586X is not set
+CONFIG_REGULATOR_VCTRL=m
+# CONFIG_REGULATOR_QCOM_LABIBB is not set
+CONFIG_RC_CORE=m
+# CONFIG_LIRC is not set
+# CONFIG_RC_MAP is not set
+# CONFIG_RC_DECODERS is not set
+# CONFIG_RC_DEVICES is not set
+CONFIG_CEC_CORE=y
+CONFIG_CEC_NOTIFIER=y
+
+#
+# CEC support
+#
+CONFIG_MEDIA_CEC_SUPPORT=y
+# CONFIG_CEC_CH7322 is not set
+CONFIG_CEC_CROS_EC=m
+# CONFIG_CEC_GPIO is not set
+# CONFIG_USB_PULSE8_CEC is not set
+# CONFIG_USB_RAINSHADOW_CEC is not set
+# end of CEC support
+
+CONFIG_MEDIA_SUPPORT=m
+CONFIG_MEDIA_SUPPORT_FILTER=y
+CONFIG_MEDIA_SUBDRV_AUTOSELECT=y
+
+#
+# Media device types
+#
+CONFIG_MEDIA_CAMERA_SUPPORT=y
+# CONFIG_MEDIA_ANALOG_TV_SUPPORT is not set
+# CONFIG_MEDIA_DIGITAL_TV_SUPPORT is not set
+# CONFIG_MEDIA_RADIO_SUPPORT is not set
+CONFIG_MEDIA_SDR_SUPPORT=y
+CONFIG_MEDIA_PLATFORM_SUPPORT=y
+# CONFIG_MEDIA_TEST_SUPPORT is not set
+# end of Media device types
+
+CONFIG_VIDEO_DEV=m
+CONFIG_MEDIA_CONTROLLER=y
+
+#
+# Video4Linux options
+#
+CONFIG_VIDEO_V4L2_I2C=y
+CONFIG_VIDEO_V4L2_SUBDEV_API=y
+# CONFIG_VIDEO_ADV_DEBUG is not set
+# CONFIG_VIDEO_FIXED_MINOR_RANGES is not set
+CONFIG_V4L2_H264=m
+CONFIG_V4L2_VP9=m
+CONFIG_V4L2_MEM2MEM_DEV=m
+# CONFIG_V4L2_FLASH_LED_CLASS is not set
+CONFIG_V4L2_FWNODE=m
+CONFIG_V4L2_ASYNC=m
+# end of Video4Linux options
+
+#
+# Media controller options
+#
+# end of Media controller options
+
+#
+# Media drivers
+#
+
+#
+# Drivers filtered as selected at 'Filter media drivers'
+#
+
+#
+# Media drivers
+#
+CONFIG_MEDIA_USB_SUPPORT=y
+
+#
+# Webcam devices
+#
+# CONFIG_USB_GSPCA is not set
+# CONFIG_USB_PWC is not set
+# CONFIG_USB_S2255 is not set
+# CONFIG_VIDEO_USBTV is not set
+CONFIG_USB_VIDEO_CLASS=m
+CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y
+
+#
+# Webcam, TV (analog/digital) USB devices
+#
+# CONFIG_VIDEO_EM28XX is not set
+
+#
+# Software defined radio USB devices
+#
+CONFIG_USB_AIRSPY=m
+CONFIG_USB_HACKRF=m
+CONFIG_USB_MSI2500=m
+# CONFIG_MEDIA_PCI_SUPPORT is not set
+CONFIG_MEDIA_PLATFORM_DRIVERS=y
+CONFIG_V4L_PLATFORM_DRIVERS=y
+# CONFIG_SDR_PLATFORM_DRIVERS is not set
+CONFIG_V4L_MEM2MEM_DRIVERS=y
+# CONFIG_VIDEO_MEM2MEM_DEINTERLACE is not set
+CONFIG_VIDEO_MUX=m
+
+#
+# Allegro DVT media platform drivers
+#
+
+#
+# Amlogic media platform drivers
+#
+
+#
+# Amphion drivers
+#
+
+#
+# Aspeed media platform drivers
+#
+
+#
+# Atmel media platform drivers
+#
+
+#
+# Cadence media platform drivers
+#
+# CONFIG_VIDEO_CADENCE_CSI2RX is not set
+# CONFIG_VIDEO_CADENCE_CSI2TX is not set
+
+#
+# Chips&Media media platform drivers
+#
+
+#
+# Intel media platform drivers
+#
+
+#
+# Marvell media platform drivers
+#
+# CONFIG_VIDEO_CAFE_CCIC is not set
+
+#
+# Mediatek media platform drivers
+#
+
+#
+# Microchip Technology, Inc. media platform drivers
+#
+
+#
+# Nuvoton media platform drivers
+#
+
+#
+# NVidia media platform drivers
+#
+
+#
+# NXP media platform drivers
+#
+
+#
+# Qualcomm media platform drivers
+#
+
+#
+# Renesas media platform drivers
+#
+
+#
+# Rockchip media platform drivers
+#
+CONFIG_VIDEO_ROCKCHIP_RGA=m
+CONFIG_VIDEO_ROCKCHIP_ISP1=m
+
+#
+# Samsung media platform drivers
+#
+
+#
+# STMicroelectronics media platform drivers
+#
+
+#
+# Sunxi media platform drivers
+#
+
+#
+# Texas Instruments drivers
+#
+
+#
+# Verisilicon media platform drivers
+#
+CONFIG_VIDEO_HANTRO=m
+CONFIG_VIDEO_HANTRO_ROCKCHIP=y
+
+#
+# VIA media platform drivers
+#
+
+#
+# Xilinx media platform drivers
+#
+# CONFIG_VIDEO_XILINX is not set
+CONFIG_UVC_COMMON=m
+CONFIG_VIDEOBUF2_CORE=m
+CONFIG_VIDEOBUF2_V4L2=m
+CONFIG_VIDEOBUF2_MEMOPS=m
+CONFIG_VIDEOBUF2_DMA_CONTIG=m
+CONFIG_VIDEOBUF2_VMALLOC=m
+CONFIG_VIDEOBUF2_DMA_SG=m
+# end of Media drivers
+
+CONFIG_MEDIA_HIDE_ANCILLARY_SUBDRV=y
+
+#
+# Media ancillary drivers
+#
+
+#
+# IR I2C driver auto-selected by 'Autoselect ancillary drivers'
+#
+CONFIG_VIDEO_IR_I2C=m
+CONFIG_VIDEO_CAMERA_SENSOR=y
+# CONFIG_VIDEO_ALVIUM_CSI2 is not set
+# CONFIG_VIDEO_AR0521 is not set
+# CONFIG_VIDEO_GC0308 is not set
+# CONFIG_VIDEO_GC2145 is not set
+# CONFIG_VIDEO_HI556 is not set
+# CONFIG_VIDEO_HI846 is not set
+# CONFIG_VIDEO_HI847 is not set
+# CONFIG_VIDEO_IMX208 is not set
+# CONFIG_VIDEO_IMX214 is not set
+# CONFIG_VIDEO_IMX219 is not set
+# CONFIG_VIDEO_IMX258 is not set
+# CONFIG_VIDEO_IMX274 is not set
+# CONFIG_VIDEO_IMX290 is not set
+# CONFIG_VIDEO_IMX296 is not set
+# CONFIG_VIDEO_IMX319 is not set
+# CONFIG_VIDEO_IMX334 is not set
+# CONFIG_VIDEO_IMX335 is not set
+# CONFIG_VIDEO_IMX355 is not set
+# CONFIG_VIDEO_IMX412 is not set
+# CONFIG_VIDEO_IMX415 is not set
+# CONFIG_VIDEO_MT9M001 is not set
+# CONFIG_VIDEO_MT9M111 is not set
+# CONFIG_VIDEO_MT9M114 is not set
+# CONFIG_VIDEO_MT9P031 is not set
+# CONFIG_VIDEO_MT9T112 is not set
+# CONFIG_VIDEO_MT9V011 is not set
+# CONFIG_VIDEO_MT9V032 is not set
+# CONFIG_VIDEO_MT9V111 is not set
+# CONFIG_VIDEO_OG01A1B is not set
+# CONFIG_VIDEO_OV01A10 is not set
+# CONFIG_VIDEO_OV02A10 is not set
+# CONFIG_VIDEO_OV08D10 is not set
+# CONFIG_VIDEO_OV08X40 is not set
+# CONFIG_VIDEO_OV13858 is not set
+# CONFIG_VIDEO_OV13B10 is not set
+# CONFIG_VIDEO_OV2640 is not set
+# CONFIG_VIDEO_OV2659 is not set
+# CONFIG_VIDEO_OV2680 is not set
+# CONFIG_VIDEO_OV2685 is not set
+# CONFIG_VIDEO_OV4689 is not set
+# CONFIG_VIDEO_OV5640 is not set
+# CONFIG_VIDEO_OV5645 is not set
+# CONFIG_VIDEO_OV5647 is not set
+# CONFIG_VIDEO_OV5648 is not set
+# CONFIG_VIDEO_OV5670 is not set
+# CONFIG_VIDEO_OV5675 is not set
+# CONFIG_VIDEO_OV5693 is not set
+# CONFIG_VIDEO_OV5695 is not set
+# CONFIG_VIDEO_OV64A40 is not set
+# CONFIG_VIDEO_OV6650 is not set
+# CONFIG_VIDEO_OV7251 is not set
+# CONFIG_VIDEO_OV7640 is not set
+# CONFIG_VIDEO_OV7670 is not set
+# CONFIG_VIDEO_OV772X is not set
+# CONFIG_VIDEO_OV7740 is not set
+# CONFIG_VIDEO_OV8856 is not set
+# CONFIG_VIDEO_OV8858 is not set
+# CONFIG_VIDEO_OV8865 is not set
+# CONFIG_VIDEO_OV9282 is not set
+# CONFIG_VIDEO_OV9640 is not set
+# CONFIG_VIDEO_OV9650 is not set
+# CONFIG_VIDEO_RDACM20 is not set
+# CONFIG_VIDEO_RDACM21 is not set
+# CONFIG_VIDEO_RJ54N1 is not set
+# CONFIG_VIDEO_S5C73M3 is not set
+# CONFIG_VIDEO_S5K5BAF is not set
+# CONFIG_VIDEO_S5K6A3 is not set
+# CONFIG_VIDEO_ST_VGXY61 is not set
+# CONFIG_VIDEO_CCS is not set
+# CONFIG_VIDEO_ET8EK8 is not set
+
+#
+# Camera ISPs
+#
+# CONFIG_VIDEO_THP7312 is not set
+# end of Camera ISPs
+
+#
+# Lens drivers
+#
+# CONFIG_VIDEO_AD5820 is not set
+# CONFIG_VIDEO_AK7375 is not set
+# CONFIG_VIDEO_DW9714 is not set
+# CONFIG_VIDEO_DW9719 is not set
+# CONFIG_VIDEO_DW9768 is not set
+# CONFIG_VIDEO_DW9807_VCM is not set
+# end of Lens drivers
+
+#
+# Flash devices
+#
+# CONFIG_VIDEO_ADP1653 is not set
+# CONFIG_VIDEO_LM3560 is not set
+# CONFIG_VIDEO_LM3646 is not set
+# end of Flash devices
+
+#
+# audio, video and radio I2C drivers auto-selected by 'Autoselect ancillary drivers'
+#
+
+#
+# Video and audio decoders
+#
+
+#
+# Video serializers and deserializers
+#
+# CONFIG_VIDEO_DS90UB913 is not set
+# CONFIG_VIDEO_DS90UB953 is not set
+# CONFIG_VIDEO_DS90UB960 is not set
+# end of Video serializers and deserializers
+
+#
+# SPI I2C drivers auto-selected by 'Autoselect ancillary drivers'
+#
+
+#
+# Media SPI Adapters
+#
+# CONFIG_VIDEO_GS1662 is not set
+# end of Media SPI Adapters
+
+CONFIG_MEDIA_TUNER=m
+
+#
+# Tuner drivers auto-selected by 'Autoselect ancillary drivers'
+#
+CONFIG_MEDIA_TUNER_MC44S803=m
+CONFIG_MEDIA_TUNER_MSI001=m
+CONFIG_MEDIA_TUNER_MT20XX=m
+CONFIG_MEDIA_TUNER_SIMPLE=m
+CONFIG_MEDIA_TUNER_TDA18271=m
+CONFIG_MEDIA_TUNER_TDA827X=m
+CONFIG_MEDIA_TUNER_TDA8290=m
+CONFIG_MEDIA_TUNER_TDA9887=m
+CONFIG_MEDIA_TUNER_XC2028=m
+CONFIG_MEDIA_TUNER_XC4000=m
+CONFIG_MEDIA_TUNER_XC5000=m
+# end of Media ancillary drivers
+
+#
+# Graphics support
+#
+CONFIG_VIDEO_CMDLINE=y
+CONFIG_VIDEO_NOMODESET=y
+# CONFIG_AUXDISPLAY is not set
+CONFIG_DRM=y
+CONFIG_DRM_MIPI_DSI=y
+# CONFIG_DRM_DEBUG_MM is not set
+CONFIG_DRM_KMS_HELPER=y
+CONFIG_DRM_FBDEV_EMULATION=y
+CONFIG_DRM_FBDEV_OVERALLOC=100
+# CONFIG_DRM_LOAD_EDID_FIRMWARE is not set
+CONFIG_DRM_DP_AUX_BUS=y
+CONFIG_DRM_DISPLAY_HELPER=y
+CONFIG_DRM_DISPLAY_DP_HELPER=y
+CONFIG_DRM_DISPLAY_HDMI_HELPER=y
+CONFIG_DRM_DP_AUX_CHARDEV=y
+# CONFIG_DRM_DP_CEC is not set
+CONFIG_DRM_GEM_DMA_HELPER=y
+CONFIG_DRM_GEM_SHMEM_HELPER=m
+CONFIG_DRM_SCHED=m
+
+#
+# I2C encoder or helper chips
+#
+# CONFIG_DRM_I2C_CH7006 is not set
+# CONFIG_DRM_I2C_SIL164 is not set
+# CONFIG_DRM_I2C_NXP_TDA998X is not set
+# CONFIG_DRM_I2C_NXP_TDA9950 is not set
+# end of I2C encoder or helper chips
+
+#
+# ARM devices
+#
+# CONFIG_DRM_HDLCD is not set
+# CONFIG_DRM_MALI_DISPLAY is not set
+# CONFIG_DRM_KOMEDA is not set
+# end of ARM devices
+
+# CONFIG_DRM_RADEON is not set
+# CONFIG_DRM_AMDGPU is not set
+# CONFIG_DRM_NOUVEAU is not set
+# CONFIG_DRM_XE is not set
+CONFIG_DRM_VGEM=m
+# CONFIG_DRM_VKMS is not set
+CONFIG_DRM_ROCKCHIP=y
+CONFIG_ROCKCHIP_VOP=y
+# CONFIG_ROCKCHIP_VOP2 is not set
+CONFIG_ROCKCHIP_ANALOGIX_DP=y
+CONFIG_ROCKCHIP_CDN_DP=y
+CONFIG_ROCKCHIP_DW_HDMI=y
+CONFIG_ROCKCHIP_DW_MIPI_DSI=y
+# CONFIG_ROCKCHIP_INNO_HDMI is not set
+# CONFIG_ROCKCHIP_LVDS is not set
+CONFIG_ROCKCHIP_RGB=y
+# CONFIG_ROCKCHIP_RK3066_HDMI is not set
+# CONFIG_DRM_VMWGFX is not set
+CONFIG_DRM_UDL=m
+# CONFIG_DRM_AST is not set
+# CONFIG_DRM_MGAG200 is not set
+# CONFIG_DRM_QXL is not set
+CONFIG_DRM_VIRTIO_GPU=m
+# CONFIG_DRM_VIRTIO_GPU_KMS is not set
+CONFIG_DRM_PANEL=y
+
+#
+# Display Panels
+#
+# CONFIG_DRM_PANEL_ABT_Y030XX067A is not set
+# CONFIG_DRM_PANEL_ARM_VERSATILE is not set
+# CONFIG_DRM_PANEL_ASUS_Z00T_TM5P5_NT35596 is not set
+# CONFIG_DRM_PANEL_AUO_A030JTN01 is not set
+# CONFIG_DRM_PANEL_BOE_BF060Y8M_AJ0 is not set
+# CONFIG_DRM_PANEL_BOE_HIMAX8279D is not set
+# CONFIG_DRM_PANEL_BOE_TV101WUM_NL6 is not set
+# CONFIG_DRM_PANEL_DSI_CM is not set
+# CONFIG_DRM_PANEL_LVDS is not set
+CONFIG_DRM_PANEL_SIMPLE=m
+CONFIG_DRM_PANEL_EDP=y
+# CONFIG_DRM_PANEL_EBBG_FT8719 is not set
+# CONFIG_DRM_PANEL_ELIDA_KD35T133 is not set
+# CONFIG_DRM_PANEL_FEIXIN_K101_IM2BA02 is not set
+# CONFIG_DRM_PANEL_FEIYANG_FY07024DI26A30D is not set
+# CONFIG_DRM_PANEL_HIMAX_HX8394 is not set
+# CONFIG_DRM_PANEL_ILITEK_IL9322 is not set
+# CONFIG_DRM_PANEL_ILITEK_ILI9341 is not set
+# CONFIG_DRM_PANEL_ILITEK_ILI9805 is not set
+# CONFIG_DRM_PANEL_ILITEK_ILI9881C is not set
+# CONFIG_DRM_PANEL_ILITEK_ILI9882T is not set
+# CONFIG_DRM_PANEL_INNOLUX_EJ030NA is not set
+# CONFIG_DRM_PANEL_INNOLUX_P079ZCA is not set
+# CONFIG_DRM_PANEL_JADARD_JD9365DA_H3 is not set
+# CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set
+# CONFIG_DRM_PANEL_JDI_LPM102A188A is not set
+# CONFIG_DRM_PANEL_JDI_R63452 is not set
+# CONFIG_DRM_PANEL_KHADAS_TS050 is not set
+# CONFIG_DRM_PANEL_KINGDISPLAY_KD097D04 is not set
+# CONFIG_DRM_PANEL_LEADTEK_LTK050H3146W is not set
+# CONFIG_DRM_PANEL_LEADTEK_LTK500HD1829 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_LD9040 is not set
+# CONFIG_DRM_PANEL_LG_LB035Q02 is not set
+# CONFIG_DRM_PANEL_LG_LG4573 is not set
+# CONFIG_DRM_PANEL_MAGNACHIP_D53E6EA8966 is not set
+# CONFIG_DRM_PANEL_NEC_NL8048HL11 is not set
+# CONFIG_DRM_PANEL_NEWVISION_NV3051D is not set
+# CONFIG_DRM_PANEL_NEWVISION_NV3052C is not set
+# CONFIG_DRM_PANEL_NOVATEK_NT35510 is not set
+# CONFIG_DRM_PANEL_NOVATEK_NT35560 is not set
+# CONFIG_DRM_PANEL_NOVATEK_NT35950 is not set
+# CONFIG_DRM_PANEL_NOVATEK_NT36523 is not set
+# CONFIG_DRM_PANEL_NOVATEK_NT36672A is not set
+# CONFIG_DRM_PANEL_NOVATEK_NT39016 is not set
+# CONFIG_DRM_PANEL_MANTIX_MLAF057WE51 is not set
+# CONFIG_DRM_PANEL_OLIMEX_LCD_OLINUXINO is not set
+# CONFIG_DRM_PANEL_ORISETECH_OTA5601A is not set
+# CONFIG_DRM_PANEL_ORISETECH_OTM8009A is not set
+# CONFIG_DRM_PANEL_OSD_OSD101T2587_53TS is not set
+# CONFIG_DRM_PANEL_PANASONIC_VVX10F034N00 is not set
+# CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN is not set
+# CONFIG_DRM_PANEL_RAYDIUM_RM67191 is not set
+# CONFIG_DRM_PANEL_RAYDIUM_RM68200 is not set
+# CONFIG_DRM_PANEL_RAYDIUM_RM692E5 is not set
+# CONFIG_DRM_PANEL_RONBO_RB070D30 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_ATNA33XC20 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_DB7430 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6D16D0 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6D27A1 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6D7AA0 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6E3HA2 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6E63J0X03 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6E63M0 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6E88A0_AMS452EF01 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_SOFEF00 is not set
+# CONFIG_DRM_PANEL_SEIKO_43WVF1G is not set
+# CONFIG_DRM_PANEL_SHARP_LQ101R1SX01 is not set
+# CONFIG_DRM_PANEL_SHARP_LS037V7DW01 is not set
+# CONFIG_DRM_PANEL_SHARP_LS043T1LE01 is not set
+# CONFIG_DRM_PANEL_SHARP_LS060T1SX01 is not set
+# CONFIG_DRM_PANEL_SITRONIX_ST7701 is not set
+# CONFIG_DRM_PANEL_SITRONIX_ST7703 is not set
+# CONFIG_DRM_PANEL_SITRONIX_ST7789V is not set
+# CONFIG_DRM_PANEL_SYNAPTICS_R63353 is not set
+# CONFIG_DRM_PANEL_SONY_ACX565AKM is not set
+# CONFIG_DRM_PANEL_SONY_TD4353_JDI is not set
+# CONFIG_DRM_PANEL_SONY_TULIP_TRULY_NT35521 is not set
+# CONFIG_DRM_PANEL_STARTEK_KD070FHFID015 is not set
+# CONFIG_DRM_PANEL_TDO_TL070WSH30 is not set
+# CONFIG_DRM_PANEL_TPO_TD028TTEC1 is not set
+# CONFIG_DRM_PANEL_TPO_TD043MTEA1 is not set
+# CONFIG_DRM_PANEL_TPO_TPG110 is not set
+# CONFIG_DRM_PANEL_TRULY_NT35597_WQXGA is not set
+# CONFIG_DRM_PANEL_VISIONOX_RM69299 is not set
+# CONFIG_DRM_PANEL_VISIONOX_VTDR6130 is not set
+# CONFIG_DRM_PANEL_VISIONOX_R66451 is not set
+# CONFIG_DRM_PANEL_WIDECHIPS_WS2401 is not set
+# CONFIG_DRM_PANEL_XINPENG_XPP055C272 is not set
+# end of Display Panels
+
+CONFIG_DRM_BRIDGE=y
+CONFIG_DRM_PANEL_BRIDGE=y
+
+#
+# Display Interface Bridges
+#
+# CONFIG_DRM_CHIPONE_ICN6211 is not set
+# CONFIG_DRM_CHRONTEL_CH7033 is not set
+# CONFIG_DRM_CROS_EC_ANX7688 is not set
+CONFIG_DRM_DISPLAY_CONNECTOR=y
+# CONFIG_DRM_ITE_IT6505 is not set
+# CONFIG_DRM_LONTIUM_LT8912B is not set
+# CONFIG_DRM_LONTIUM_LT9211 is not set
+# CONFIG_DRM_LONTIUM_LT9611 is not set
+# CONFIG_DRM_LONTIUM_LT9611UXC is not set
+# CONFIG_DRM_ITE_IT66121 is not set
+# CONFIG_DRM_LVDS_CODEC is not set
+# CONFIG_DRM_MEGACHIPS_STDPXXXX_GE_B850V3_FW is not set
+# CONFIG_DRM_NWL_MIPI_DSI is not set
+# CONFIG_DRM_NXP_PTN3460 is not set
+# CONFIG_DRM_PARADE_PS8622 is not set
+CONFIG_DRM_PARADE_PS8640=y
+# CONFIG_DRM_SAMSUNG_DSIM is not set
+# CONFIG_DRM_SIL_SII8620 is not set
+# CONFIG_DRM_SII902X is not set
+# CONFIG_DRM_SII9234 is not set
+# CONFIG_DRM_SIMPLE_BRIDGE is not set
+# CONFIG_DRM_THINE_THC63LVD1024 is not set
+# CONFIG_DRM_TOSHIBA_TC358762 is not set
+# CONFIG_DRM_TOSHIBA_TC358764 is not set
+# CONFIG_DRM_TOSHIBA_TC358767 is not set
+# CONFIG_DRM_TOSHIBA_TC358768 is not set
+# CONFIG_DRM_TOSHIBA_TC358775 is not set
+# CONFIG_DRM_TI_DLPC3433 is not set
+# CONFIG_DRM_TI_TFP410 is not set
+# CONFIG_DRM_TI_SN65DSI83 is not set
+# CONFIG_DRM_TI_SN65DSI86 is not set
+# CONFIG_DRM_TI_TPD12S015 is not set
+CONFIG_DRM_ANALOGIX_ANX6345=m
+CONFIG_DRM_ANALOGIX_ANX78XX=m
+CONFIG_DRM_ANALOGIX_DP=y
+# CONFIG_DRM_ANALOGIX_ANX7625 is not set
+# CONFIG_DRM_I2C_ADV7511 is not set
+# CONFIG_DRM_CDNS_DSI is not set
+# CONFIG_DRM_CDNS_MHDP8546 is not set
+CONFIG_DRM_DW_HDMI=y
+# CONFIG_DRM_DW_HDMI_AHB_AUDIO is not set
+CONFIG_DRM_DW_HDMI_I2S_AUDIO=m
+# CONFIG_DRM_DW_HDMI_GP_AUDIO is not set
+CONFIG_DRM_DW_HDMI_CEC=m
+CONFIG_DRM_DW_MIPI_DSI=y
+# end of Display Interface Bridges
+
+# CONFIG_DRM_ETNAVIV is not set
+# CONFIG_DRM_HISI_HIBMC is not set
+# CONFIG_DRM_HISI_KIRIN is not set
+# CONFIG_DRM_LOGICVC is not set
+# CONFIG_DRM_ARCPGU is not set
+# CONFIG_DRM_BOCHS is not set
+# CONFIG_DRM_CIRRUS_QEMU is not set
+# CONFIG_DRM_GM12U320 is not set
+# CONFIG_DRM_PANEL_MIPI_DBI is not set
+# CONFIG_DRM_SIMPLEDRM is not set
+# CONFIG_TINYDRM_HX8357D is not set
+# CONFIG_TINYDRM_ILI9163 is not set
+# CONFIG_TINYDRM_ILI9225 is not set
+# CONFIG_TINYDRM_ILI9341 is not set
+# CONFIG_TINYDRM_ILI9486 is not set
+# CONFIG_TINYDRM_MI0283QT is not set
+# CONFIG_TINYDRM_REPAPER is not set
+# CONFIG_TINYDRM_ST7586 is not set
+# CONFIG_TINYDRM_ST7735R is not set
+CONFIG_DRM_PL111=m
+# CONFIG_DRM_LIMA is not set
+CONFIG_DRM_PANFROST=m
+# CONFIG_DRM_TIDSS is not set
+# CONFIG_DRM_GUD is not set
+# CONFIG_DRM_SSD130X is not set
+# CONFIG_DRM_POWERVR is not set
+CONFIG_DRM_PANEL_ORIENTATION_QUIRKS=y
+
+#
+# Frame buffer Devices
+#
+CONFIG_FB=y
+# CONFIG_FB_CIRRUS is not set
+# CONFIG_FB_PM2 is not set
+# CONFIG_FB_CYBER2000 is not set
+# CONFIG_FB_ASILIANT is not set
+# CONFIG_FB_IMSTT is not set
+# CONFIG_FB_UVESA is not set
+# CONFIG_FB_EFI is not set
+# CONFIG_FB_OPENCORES is not set
+# CONFIG_FB_S1D13XXX is not set
+# CONFIG_FB_NVIDIA is not set
+# CONFIG_FB_RIVA is not set
+# CONFIG_FB_I740 is not set
+# CONFIG_FB_MATROX is not set
+# CONFIG_FB_RADEON is not set
+# CONFIG_FB_ATY128 is not set
+# CONFIG_FB_ATY is not set
+# CONFIG_FB_S3 is not set
+# CONFIG_FB_SAVAGE is not set
+# CONFIG_FB_SIS is not set
+# CONFIG_FB_NEOMAGIC is not set
+# CONFIG_FB_KYRO is not set
+# CONFIG_FB_3DFX is not set
+# CONFIG_FB_VOODOO1 is not set
+# CONFIG_FB_VT8623 is not set
+# CONFIG_FB_TRIDENT is not set
+# CONFIG_FB_ARK is not set
+# CONFIG_FB_PM3 is not set
+# CONFIG_FB_CARMINE is not set
+# CONFIG_FB_SM501 is not set
+# CONFIG_FB_SMSCUFX is not set
+CONFIG_FB_UDL=m
+# CONFIG_FB_IBM_GXT4500 is not set
+# CONFIG_FB_VIRTUAL is not set
+# CONFIG_FB_METRONOME is not set
+# CONFIG_FB_MB862XX is not set
+# CONFIG_FB_SIMPLE is not set
+# CONFIG_FB_SSD1307 is not set
+# CONFIG_FB_SM712 is not set
+CONFIG_FB_CORE=y
+CONFIG_FB_NOTIFY=y
+# CONFIG_FIRMWARE_EDID is not set
+CONFIG_FB_DEVICE=y
+CONFIG_FB_SYS_FILLRECT=y
+CONFIG_FB_SYS_COPYAREA=y
+CONFIG_FB_SYS_IMAGEBLIT=y
+# CONFIG_FB_FOREIGN_ENDIAN is not set
+CONFIG_FB_SYSMEM_FOPS=y
+CONFIG_FB_DEFERRED_IO=y
+CONFIG_FB_DMAMEM_HELPERS=y
+CONFIG_FB_SYSMEM_HELPERS=y
+CONFIG_FB_SYSMEM_HELPERS_DEFERRED=y
+CONFIG_FB_MODE_HELPERS=y
+# CONFIG_FB_TILEBLITTING is not set
+# end of Frame buffer Devices
+
+#
+# Backlight & LCD device support
+#
+# CONFIG_LCD_CLASS_DEVICE is not set
+CONFIG_BACKLIGHT_CLASS_DEVICE=y
+# CONFIG_BACKLIGHT_KTD253 is not set
+# CONFIG_BACKLIGHT_KTZ8866 is not set
+CONFIG_BACKLIGHT_PWM=y
+# CONFIG_BACKLIGHT_QCOM_WLED is not set
+# CONFIG_BACKLIGHT_ADP8860 is not set
+# CONFIG_BACKLIGHT_ADP8870 is not set
+# CONFIG_BACKLIGHT_LM3630A is not set
+# CONFIG_BACKLIGHT_LM3639 is not set
+CONFIG_BACKLIGHT_LP855X=y
+# CONFIG_BACKLIGHT_MP3309C is not set
+# CONFIG_BACKLIGHT_AS3711 is not set
+CONFIG_BACKLIGHT_GPIO=y
+# CONFIG_BACKLIGHT_LV5207LP is not set
+# CONFIG_BACKLIGHT_BD6107 is not set
+# CONFIG_BACKLIGHT_ARCXCNN is not set
+# CONFIG_BACKLIGHT_LED is not set
+# end of Backlight & LCD device support
+
+CONFIG_VIDEOMODE_HELPERS=y
+CONFIG_HDMI=y
+
+#
+# Console display driver support
+#
+CONFIG_DUMMY_CONSOLE=y
+CONFIG_DUMMY_CONSOLE_COLUMNS=80
+CONFIG_DUMMY_CONSOLE_ROWS=25
+CONFIG_FRAMEBUFFER_CONSOLE=y
+# CONFIG_FRAMEBUFFER_CONSOLE_LEGACY_ACCELERATION is not set
+CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
+CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y
+# CONFIG_FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER is not set
+# end of Console display driver support
+
+CONFIG_LOGO=y
+# CONFIG_LOGO_LINUX_MONO is not set
+# CONFIG_LOGO_LINUX_VGA16 is not set
+CONFIG_LOGO_LINUX_CLUT224=y
+# end of Graphics support
+
+# CONFIG_DRM_ACCEL is not set
+CONFIG_SOUND=m
+CONFIG_SND=m
+CONFIG_SND_TIMER=m
+CONFIG_SND_PCM=m
+CONFIG_SND_PCM_ELD=y
+CONFIG_SND_PCM_IEC958=y
+CONFIG_SND_DMAENGINE_PCM=m
+CONFIG_SND_HWDEP=m
+CONFIG_SND_SEQ_DEVICE=m
+CONFIG_SND_RAWMIDI=m
+CONFIG_SND_JACK=y
+CONFIG_SND_JACK_INPUT_DEV=y
+# CONFIG_SND_OSSEMUL is not set
+CONFIG_SND_PCM_TIMER=y
+# CONFIG_SND_HRTIMER is not set
+CONFIG_SND_DYNAMIC_MINORS=y
+CONFIG_SND_MAX_CARDS=32
+# CONFIG_SND_SUPPORT_OLD_API is not set
+CONFIG_SND_PROC_FS=y
+CONFIG_SND_VERBOSE_PROCFS=y
+# CONFIG_SND_VERBOSE_PRINTK is not set
+CONFIG_SND_CTL_FAST_LOOKUP=y
+# CONFIG_SND_DEBUG is not set
+# CONFIG_SND_CTL_INPUT_VALIDATION is not set
+CONFIG_SND_VMASTER=y
+CONFIG_SND_SEQUENCER=m
+# CONFIG_SND_SEQ_DUMMY is not set
+CONFIG_SND_SEQ_MIDI_EVENT=m
+CONFIG_SND_SEQ_MIDI=m
+# CONFIG_SND_SEQ_UMP is not set
+CONFIG_SND_DRIVERS=y
+# CONFIG_SND_DUMMY is not set
+CONFIG_SND_ALOOP=m
+# CONFIG_SND_VIRMIDI is not set
+# CONFIG_SND_MTPAV is not set
+# CONFIG_SND_SERIAL_U16550 is not set
+# CONFIG_SND_SERIAL_GENERIC is not set
+# CONFIG_SND_MPU401 is not set
+CONFIG_SND_PCI=y
+# CONFIG_SND_AD1889 is not set
+# CONFIG_SND_ALS300 is not set
+# CONFIG_SND_ALI5451 is not set
+# CONFIG_SND_ATIIXP is not set
+# CONFIG_SND_ATIIXP_MODEM is not set
+# CONFIG_SND_AU8810 is not set
+# CONFIG_SND_AU8820 is not set
+# CONFIG_SND_AU8830 is not set
+# CONFIG_SND_AW2 is not set
+# CONFIG_SND_AZT3328 is not set
+# CONFIG_SND_BT87X is not set
+# CONFIG_SND_CA0106 is not set
+# CONFIG_SND_CMIPCI is not set
+# CONFIG_SND_OXYGEN is not set
+# CONFIG_SND_CS4281 is not set
+# CONFIG_SND_CS46XX is not set
+# CONFIG_SND_CTXFI is not set
+# CONFIG_SND_DARLA20 is not set
+# CONFIG_SND_GINA20 is not set
+# CONFIG_SND_LAYLA20 is not set
+# CONFIG_SND_DARLA24 is not set
+# CONFIG_SND_GINA24 is not set
+# CONFIG_SND_LAYLA24 is not set
+# CONFIG_SND_MONA is not set
+# CONFIG_SND_MIA is not set
+# CONFIG_SND_ECHO3G is not set
+# CONFIG_SND_INDIGO is not set
+# CONFIG_SND_INDIGOIO is not set
+# CONFIG_SND_INDIGODJ is not set
+# CONFIG_SND_INDIGOIOX is not set
+# CONFIG_SND_INDIGODJX is not set
+# CONFIG_SND_EMU10K1 is not set
+# CONFIG_SND_EMU10K1X is not set
+# CONFIG_SND_ENS1370 is not set
+# CONFIG_SND_ENS1371 is not set
+# CONFIG_SND_ES1938 is not set
+# CONFIG_SND_ES1968 is not set
+# CONFIG_SND_FM801 is not set
+# CONFIG_SND_HDSP is not set
+# CONFIG_SND_HDSPM is not set
+# CONFIG_SND_ICE1712 is not set
+# CONFIG_SND_ICE1724 is not set
+# CONFIG_SND_INTEL8X0 is not set
+# CONFIG_SND_INTEL8X0M is not set
+# CONFIG_SND_KORG1212 is not set
+# CONFIG_SND_LOLA is not set
+# CONFIG_SND_LX6464ES is not set
+# CONFIG_SND_MAESTRO3 is not set
+# CONFIG_SND_MIXART is not set
+# CONFIG_SND_NM256 is not set
+# CONFIG_SND_PCXHR is not set
+# CONFIG_SND_RIPTIDE is not set
+# CONFIG_SND_RME32 is not set
+# CONFIG_SND_RME96 is not set
+# CONFIG_SND_RME9652 is not set
+# CONFIG_SND_SE6X is not set
+# CONFIG_SND_SONICVIBES is not set
+# CONFIG_SND_TRIDENT is not set
+# CONFIG_SND_VIA82XX is not set
+# CONFIG_SND_VIA82XX_MODEM is not set
+# CONFIG_SND_VIRTUOSO is not set
+# CONFIG_SND_VX222 is not set
+# CONFIG_SND_YMFPCI is not set
+
+#
+# HD-Audio
+#
+# CONFIG_SND_HDA_INTEL is not set
+# end of HD-Audio
+
+CONFIG_SND_HDA_PREALLOC_SIZE=64
+# CONFIG_SND_SPI is not set
+CONFIG_SND_USB=y
+CONFIG_SND_USB_AUDIO=m
+# CONFIG_SND_USB_AUDIO_MIDI_V2 is not set
+CONFIG_SND_USB_AUDIO_USE_MEDIA_CONTROLLER=y
+CONFIG_SND_USB_UA101=m
+CONFIG_SND_USB_CAIAQ=m
+CONFIG_SND_USB_CAIAQ_INPUT=y
+CONFIG_SND_USB_6FIRE=m
+CONFIG_SND_USB_HIFACE=m
+CONFIG_SND_BCD2000=m
+CONFIG_SND_USB_LINE6=m
+CONFIG_SND_USB_POD=m
+CONFIG_SND_USB_PODHD=m
+CONFIG_SND_USB_TONEPORT=m
+CONFIG_SND_USB_VARIAX=m
+CONFIG_SND_SOC=m
+CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
+# CONFIG_SND_SOC_ADI is not set
+# CONFIG_SND_SOC_AMD_ACP is not set
+# CONFIG_SND_AMD_ACP_CONFIG is not set
+# CONFIG_SND_ATMEL_SOC is not set
+# CONFIG_SND_BCM63XX_I2S_WHISTLER is not set
+# CONFIG_SND_DESIGNWARE_I2S is not set
+
+#
+# SoC Audio for Freescale CPUs
+#
+
+#
+# Common SoC Audio options for Freescale CPUs:
+#
+# CONFIG_SND_SOC_FSL_ASRC is not set
+# CONFIG_SND_SOC_FSL_SAI is not set
+# CONFIG_SND_SOC_FSL_AUDMIX is not set
+# CONFIG_SND_SOC_FSL_SSI is not set
+# CONFIG_SND_SOC_FSL_SPDIF is not set
+# CONFIG_SND_SOC_FSL_ESAI is not set
+# CONFIG_SND_SOC_FSL_MICFIL is not set
+# CONFIG_SND_SOC_FSL_XCVR is not set
+# CONFIG_SND_SOC_IMX_AUDMUX is not set
+# end of SoC Audio for Freescale CPUs
+
+# CONFIG_SND_SOC_CHV3_I2S is not set
+# CONFIG_SND_I2S_HI6210_I2S is not set
+# CONFIG_SND_SOC_IMG is not set
+# CONFIG_SND_SOC_MTK_BTCVSD is not set
+CONFIG_SND_SOC_ROCKCHIP=m
+CONFIG_SND_SOC_ROCKCHIP_I2S=m
+CONFIG_SND_SOC_ROCKCHIP_I2S_TDM=m
+CONFIG_SND_SOC_ROCKCHIP_PDM=m
+CONFIG_SND_SOC_ROCKCHIP_SPDIF=m
+CONFIG_SND_SOC_ROCKCHIP_MAX98090=m
+CONFIG_SND_SOC_ROCKCHIP_RT5645=m
+CONFIG_SND_SOC_RK3288_HDMI_ANALOG=m
+CONFIG_SND_SOC_RK3399_GRU_SOUND=m
+# CONFIG_SND_SOC_SOF_TOPLEVEL is not set
+
+#
+# STMicroelectronics STM32 SOC audio support
+#
+# end of STMicroelectronics STM32 SOC audio support
+
+# CONFIG_SND_SOC_XILINX_I2S is not set
+# CONFIG_SND_SOC_XILINX_AUDIO_FORMATTER is not set
+# CONFIG_SND_SOC_XILINX_SPDIF is not set
+# CONFIG_SND_SOC_XTFPGA_I2S is not set
+CONFIG_SND_SOC_I2C_AND_SPI=m
+
+#
+# CODEC drivers
+#
+# CONFIG_SND_SOC_AC97_CODEC is not set
+# CONFIG_SND_SOC_ADAU1372_I2C is not set
+# CONFIG_SND_SOC_ADAU1372_SPI is not set
+# CONFIG_SND_SOC_ADAU1701 is not set
+# CONFIG_SND_SOC_ADAU1761_I2C is not set
+# CONFIG_SND_SOC_ADAU1761_SPI is not set
+# CONFIG_SND_SOC_ADAU7002 is not set
+# CONFIG_SND_SOC_ADAU7118_HW is not set
+# CONFIG_SND_SOC_ADAU7118_I2C is not set
+# CONFIG_SND_SOC_AK4104 is not set
+# CONFIG_SND_SOC_AK4118 is not set
+# CONFIG_SND_SOC_AK4375 is not set
+# CONFIG_SND_SOC_AK4458 is not set
+# CONFIG_SND_SOC_AK4554 is not set
+# CONFIG_SND_SOC_AK4613 is not set
+# CONFIG_SND_SOC_AK4642 is not set
+# CONFIG_SND_SOC_AK5386 is not set
+# CONFIG_SND_SOC_AK5558 is not set
+# CONFIG_SND_SOC_ALC5623 is not set
+# CONFIG_SND_SOC_AUDIO_IIO_AUX is not set
+# CONFIG_SND_SOC_AW8738 is not set
+# CONFIG_SND_SOC_AW88395 is not set
+# CONFIG_SND_SOC_AW88261 is not set
+# CONFIG_SND_SOC_AW87390 is not set
+# CONFIG_SND_SOC_AW88399 is not set
+# CONFIG_SND_SOC_BD28623 is not set
+CONFIG_SND_SOC_BT_SCO=m
+# CONFIG_SND_SOC_CHV3_CODEC is not set
+CONFIG_SND_SOC_CROS_EC_CODEC=m
+# CONFIG_SND_SOC_CS35L32 is not set
+# CONFIG_SND_SOC_CS35L33 is not set
+# CONFIG_SND_SOC_CS35L34 is not set
+# CONFIG_SND_SOC_CS35L35 is not set
+# CONFIG_SND_SOC_CS35L36 is not set
+# CONFIG_SND_SOC_CS35L41_SPI is not set
+# CONFIG_SND_SOC_CS35L41_I2C is not set
+# CONFIG_SND_SOC_CS35L45_SPI is not set
+# CONFIG_SND_SOC_CS35L45_I2C is not set
+# CONFIG_SND_SOC_CS35L56_I2C is not set
+# CONFIG_SND_SOC_CS35L56_SPI is not set
+# CONFIG_SND_SOC_CS42L42 is not set
+# CONFIG_SND_SOC_CS42L51_I2C is not set
+# CONFIG_SND_SOC_CS42L52 is not set
+# CONFIG_SND_SOC_CS42L56 is not set
+# CONFIG_SND_SOC_CS42L73 is not set
+# CONFIG_SND_SOC_CS42L83 is not set
+# CONFIG_SND_SOC_CS4234 is not set
+# CONFIG_SND_SOC_CS4265 is not set
+# CONFIG_SND_SOC_CS4270 is not set
+# CONFIG_SND_SOC_CS4271_I2C is not set
+# CONFIG_SND_SOC_CS4271_SPI is not set
+# CONFIG_SND_SOC_CS42XX8_I2C is not set
+# CONFIG_SND_SOC_CS43130 is not set
+# CONFIG_SND_SOC_CS4341 is not set
+# CONFIG_SND_SOC_CS4349 is not set
+# CONFIG_SND_SOC_CS53L30 is not set
+# CONFIG_SND_SOC_CX2072X is not set
+# CONFIG_SND_SOC_DA7213 is not set
+CONFIG_SND_SOC_DA7219=m
+CONFIG_SND_SOC_DMIC=m
+CONFIG_SND_SOC_HDMI_CODEC=m
+# CONFIG_SND_SOC_ES7134 is not set
+# CONFIG_SND_SOC_ES7241 is not set
+# CONFIG_SND_SOC_ES8316 is not set
+# CONFIG_SND_SOC_ES8326 is not set
+CONFIG_SND_SOC_ES8328=m
+CONFIG_SND_SOC_ES8328_I2C=m
+CONFIG_SND_SOC_ES8328_SPI=m
+# CONFIG_SND_SOC_GTM601 is not set
+# CONFIG_SND_SOC_HDA is not set
+# CONFIG_SND_SOC_ICS43432 is not set
+# CONFIG_SND_SOC_IDT821034 is not set
+# CONFIG_SND_SOC_INNO_RK3036 is not set
+# CONFIG_SND_SOC_MAX98088 is not set
+CONFIG_SND_SOC_MAX98090=m
+CONFIG_SND_SOC_MAX98357A=m
+# CONFIG_SND_SOC_MAX98504 is not set
+# CONFIG_SND_SOC_MAX9867 is not set
+# CONFIG_SND_SOC_MAX98927 is not set
+# CONFIG_SND_SOC_MAX98520 is not set
+# CONFIG_SND_SOC_MAX98373_I2C is not set
+# CONFIG_SND_SOC_MAX98388 is not set
+# CONFIG_SND_SOC_MAX98390 is not set
+# CONFIG_SND_SOC_MAX98396 is not set
+# CONFIG_SND_SOC_MAX9860 is not set
+# CONFIG_SND_SOC_MSM8916_WCD_ANALOG is not set
+# CONFIG_SND_SOC_MSM8916_WCD_DIGITAL is not set
+# CONFIG_SND_SOC_PCM1681 is not set
+# CONFIG_SND_SOC_PCM1789_I2C is not set
+# CONFIG_SND_SOC_PCM179X_I2C is not set
+# CONFIG_SND_SOC_PCM179X_SPI is not set
+# CONFIG_SND_SOC_PCM186X_I2C is not set
+# CONFIG_SND_SOC_PCM186X_SPI is not set
+# CONFIG_SND_SOC_PCM3060_I2C is not set
+# CONFIG_SND_SOC_PCM3060_SPI is not set
+# CONFIG_SND_SOC_PCM3168A_I2C is not set
+# CONFIG_SND_SOC_PCM3168A_SPI is not set
+# CONFIG_SND_SOC_PCM5102A is not set
+# CONFIG_SND_SOC_PCM512x_I2C is not set
+# CONFIG_SND_SOC_PCM512x_SPI is not set
+# CONFIG_SND_SOC_PEB2466 is not set
+CONFIG_SND_SOC_RK3328=m
+CONFIG_SND_SOC_RL6231=m
+CONFIG_SND_SOC_RT5514=m
+CONFIG_SND_SOC_RT5514_SPI=m
+# CONFIG_SND_SOC_RT5616 is not set
+# CONFIG_SND_SOC_RT5631 is not set
+# CONFIG_SND_SOC_RT5640 is not set
+CONFIG_SND_SOC_RT5645=m
+# CONFIG_SND_SOC_RT5659 is not set
+# CONFIG_SND_SOC_RT9120 is not set
+# CONFIG_SND_SOC_RTQ9128 is not set
+# CONFIG_SND_SOC_SGTL5000 is not set
+# CONFIG_SND_SOC_SIMPLE_AMPLIFIER is not set
+# CONFIG_SND_SOC_SIMPLE_MUX is not set
+# CONFIG_SND_SOC_SMA1303 is not set
+# CONFIG_SND_SOC_SPDIF is not set
+# CONFIG_SND_SOC_SRC4XXX_I2C is not set
+# CONFIG_SND_SOC_SSM2305 is not set
+# CONFIG_SND_SOC_SSM2518 is not set
+# CONFIG_SND_SOC_SSM2602_SPI is not set
+# CONFIG_SND_SOC_SSM2602_I2C is not set
+# CONFIG_SND_SOC_SSM3515 is not set
+# CONFIG_SND_SOC_SSM4567 is not set
+# CONFIG_SND_SOC_STA32X is not set
+# CONFIG_SND_SOC_STA350 is not set
+# CONFIG_SND_SOC_STI_SAS is not set
+# CONFIG_SND_SOC_TAS2552 is not set
+# CONFIG_SND_SOC_TAS2562 is not set
+# CONFIG_SND_SOC_TAS2764 is not set
+# CONFIG_SND_SOC_TAS2770 is not set
+# CONFIG_SND_SOC_TAS2780 is not set
+# CONFIG_SND_SOC_TAS2781_I2C is not set
+# CONFIG_SND_SOC_TAS5086 is not set
+# CONFIG_SND_SOC_TAS571X is not set
+# CONFIG_SND_SOC_TAS5720 is not set
+# CONFIG_SND_SOC_TAS5805M is not set
+# CONFIG_SND_SOC_TAS6424 is not set
+# CONFIG_SND_SOC_TDA7419 is not set
+# CONFIG_SND_SOC_TFA9879 is not set
+# CONFIG_SND_SOC_TFA989X is not set
+# CONFIG_SND_SOC_TLV320ADC3XXX is not set
+# CONFIG_SND_SOC_TLV320AIC23_I2C is not set
+# CONFIG_SND_SOC_TLV320AIC23_SPI is not set
+# CONFIG_SND_SOC_TLV320AIC31XX is not set
+# CONFIG_SND_SOC_TLV320AIC32X4_I2C is not set
+# CONFIG_SND_SOC_TLV320AIC32X4_SPI is not set
+# CONFIG_SND_SOC_TLV320AIC3X_I2C is not set
+# CONFIG_SND_SOC_TLV320AIC3X_SPI is not set
+# CONFIG_SND_SOC_TLV320ADCX140 is not set
+CONFIG_SND_SOC_TS3A227E=m
+# CONFIG_SND_SOC_TSCS42XX is not set
+# CONFIG_SND_SOC_TSCS454 is not set
+# CONFIG_SND_SOC_UDA1334 is not set
+# CONFIG_SND_SOC_WM8510 is not set
+# CONFIG_SND_SOC_WM8523 is not set
+# CONFIG_SND_SOC_WM8524 is not set
+# CONFIG_SND_SOC_WM8580 is not set
+# CONFIG_SND_SOC_WM8711 is not set
+# CONFIG_SND_SOC_WM8728 is not set
+# CONFIG_SND_SOC_WM8731_I2C is not set
+# CONFIG_SND_SOC_WM8731_SPI is not set
+# CONFIG_SND_SOC_WM8737 is not set
+# CONFIG_SND_SOC_WM8741 is not set
+# CONFIG_SND_SOC_WM8750 is not set
+# CONFIG_SND_SOC_WM8753 is not set
+# CONFIG_SND_SOC_WM8770 is not set
+# CONFIG_SND_SOC_WM8776 is not set
+# CONFIG_SND_SOC_WM8782 is not set
+# CONFIG_SND_SOC_WM8804_I2C is not set
+# CONFIG_SND_SOC_WM8804_SPI is not set
+# CONFIG_SND_SOC_WM8903 is not set
+# CONFIG_SND_SOC_WM8904 is not set
+# CONFIG_SND_SOC_WM8940 is not set
+# CONFIG_SND_SOC_WM8960 is not set
+# CONFIG_SND_SOC_WM8961 is not set
+# CONFIG_SND_SOC_WM8962 is not set
+# CONFIG_SND_SOC_WM8974 is not set
+# CONFIG_SND_SOC_WM8978 is not set
+# CONFIG_SND_SOC_WM8985 is not set
+# CONFIG_SND_SOC_ZL38060 is not set
+# CONFIG_SND_SOC_MAX9759 is not set
+# CONFIG_SND_SOC_MT6351 is not set
+# CONFIG_SND_SOC_MT6358 is not set
+# CONFIG_SND_SOC_MT6660 is not set
+# CONFIG_SND_SOC_NAU8315 is not set
+# CONFIG_SND_SOC_NAU8540 is not set
+# CONFIG_SND_SOC_NAU8810 is not set
+# CONFIG_SND_SOC_NAU8821 is not set
+# CONFIG_SND_SOC_NAU8822 is not set
+# CONFIG_SND_SOC_NAU8824 is not set
+# CONFIG_SND_SOC_TPA6130A2 is not set
+# CONFIG_SND_SOC_LPASS_WSA_MACRO is not set
+# CONFIG_SND_SOC_LPASS_VA_MACRO is not set
+# CONFIG_SND_SOC_LPASS_RX_MACRO is not set
+# CONFIG_SND_SOC_LPASS_TX_MACRO is not set
+# end of CODEC drivers
+
+CONFIG_SND_SIMPLE_CARD_UTILS=m
+CONFIG_SND_SIMPLE_CARD=m
+CONFIG_SND_AUDIO_GRAPH_CARD=m
+# CONFIG_SND_AUDIO_GRAPH_CARD2 is not set
+# CONFIG_SND_TEST_COMPONENT is not set
+# CONFIG_SND_VIRTIO is not set
+CONFIG_HID_SUPPORT=y
+CONFIG_HID=y
+CONFIG_HID_BATTERY_STRENGTH=y
+CONFIG_HIDRAW=y
+CONFIG_UHID=m
+CONFIG_HID_GENERIC=y
+
+#
+# Special HID drivers
+#
+# CONFIG_HID_A4TECH is not set
+# CONFIG_HID_ACCUTOUCH is not set
+# CONFIG_HID_ACRUX is not set
+# CONFIG_HID_APPLE is not set
+# CONFIG_HID_APPLEIR is not set
+# CONFIG_HID_ASUS is not set
+# CONFIG_HID_AUREAL is not set
+# CONFIG_HID_BELKIN is not set
+# CONFIG_HID_BETOP_FF is not set
+# CONFIG_HID_BIGBEN_FF is not set
+# CONFIG_HID_CHERRY is not set
+# CONFIG_HID_CHICONY is not set
+# CONFIG_HID_CORSAIR is not set
+# CONFIG_HID_COUGAR is not set
+# CONFIG_HID_MACALLY is not set
+# CONFIG_HID_PRODIKEYS is not set
+# CONFIG_HID_CMEDIA is not set
+# CONFIG_HID_CP2112 is not set
+# CONFIG_HID_CREATIVE_SB0540 is not set
+# CONFIG_HID_CYPRESS is not set
+# CONFIG_HID_DRAGONRISE is not set
+# CONFIG_HID_EMS_FF is not set
+# CONFIG_HID_ELAN is not set
+# CONFIG_HID_ELECOM is not set
+# CONFIG_HID_ELO is not set
+# CONFIG_HID_EVISION is not set
+# CONFIG_HID_EZKEY is not set
+# CONFIG_HID_FT260 is not set
+# CONFIG_HID_GEMBIRD is not set
+# CONFIG_HID_GFRM is not set
+# CONFIG_HID_GLORIOUS is not set
+# CONFIG_HID_HOLTEK is not set
+# CONFIG_HID_GOOGLE_HAMMER is not set
+# CONFIG_HID_GOOGLE_STADIA_FF is not set
+# CONFIG_HID_VIVALDI is not set
+# CONFIG_HID_GT683R is not set
+# CONFIG_HID_KEYTOUCH is not set
+# CONFIG_HID_KYE is not set
+CONFIG_HID_UCLOGIC=m
+# CONFIG_HID_WALTOP is not set
+# CONFIG_HID_VIEWSONIC is not set
+# CONFIG_HID_VRC2 is not set
+# CONFIG_HID_XIAOMI is not set
+# CONFIG_HID_GYRATION is not set
+# CONFIG_HID_ICADE is not set
+# CONFIG_HID_ITE is not set
+# CONFIG_HID_JABRA is not set
+# CONFIG_HID_TWINHAN is not set
+# CONFIG_HID_KENSINGTON is not set
+# CONFIG_HID_LCPOWER is not set
+CONFIG_HID_LED=m
+# CONFIG_HID_LENOVO is not set
+# CONFIG_HID_LETSKETCH is not set
+CONFIG_HID_LOGITECH=m
+CONFIG_HID_LOGITECH_DJ=m
+CONFIG_HID_LOGITECH_HIDPP=m
+# CONFIG_LOGITECH_FF is not set
+# CONFIG_LOGIRUMBLEPAD2_FF is not set
+# CONFIG_LOGIG940_FF is not set
+# CONFIG_LOGIWHEELS_FF is not set
+# CONFIG_HID_MAGICMOUSE is not set
+# CONFIG_HID_MALTRON is not set
+# CONFIG_HID_MAYFLASH is not set
+# CONFIG_HID_MEGAWORLD_FF is not set
+# CONFIG_HID_REDRAGON is not set
+# CONFIG_HID_MICROSOFT is not set
+# CONFIG_HID_MONTEREY is not set
+CONFIG_HID_MULTITOUCH=m
+# CONFIG_HID_NINTENDO is not set
+# CONFIG_HID_NTI is not set
+# CONFIG_HID_NTRIG is not set
+# CONFIG_HID_NVIDIA_SHIELD is not set
+# CONFIG_HID_ORTEK is not set
+# CONFIG_HID_PANTHERLORD is not set
+# CONFIG_HID_PENMOUNT is not set
+# CONFIG_HID_PETALYNX is not set
+# CONFIG_HID_PICOLCD is not set
+# CONFIG_HID_PLANTRONICS is not set
+# CONFIG_HID_PLAYSTATION is not set
+# CONFIG_HID_PXRC is not set
+# CONFIG_HID_RAZER is not set
+# CONFIG_HID_PRIMAX is not set
+# CONFIG_HID_RETRODE is not set
+# CONFIG_HID_ROCCAT is not set
+# CONFIG_HID_SAITEK is not set
+# CONFIG_HID_SAMSUNG is not set
+# CONFIG_HID_SEMITEK is not set
+# CONFIG_HID_SIGMAMICRO is not set
+# CONFIG_HID_SONY is not set
+# CONFIG_HID_SPEEDLINK is not set
+# CONFIG_HID_STEAM is not set
+# CONFIG_HID_STEELSERIES is not set
+# CONFIG_HID_SUNPLUS is not set
+# CONFIG_HID_RMI is not set
+# CONFIG_HID_GREENASIA is not set
+# CONFIG_HID_SMARTJOYPLUS is not set
+# CONFIG_HID_TIVO is not set
+# CONFIG_HID_TOPSEED is not set
+# CONFIG_HID_TOPRE is not set
+# CONFIG_HID_THINGM is not set
+# CONFIG_HID_THRUSTMASTER is not set
+# CONFIG_HID_UDRAW_PS3 is not set
+# CONFIG_HID_U2FZERO is not set
+# CONFIG_HID_WACOM is not set
+# CONFIG_HID_WIIMOTE is not set
+# CONFIG_HID_XINMO is not set
+# CONFIG_HID_ZEROPLUS is not set
+# CONFIG_HID_ZYDACRON is not set
+# CONFIG_HID_SENSOR_HUB is not set
+# CONFIG_HID_ALPS is not set
+# CONFIG_HID_MCP2200 is not set
+# CONFIG_HID_MCP2221 is not set
+# end of Special HID drivers
+
+#
+# HID-BPF support
+#
+# end of HID-BPF support
+
+#
+# USB HID support
+#
+CONFIG_USB_HID=y
+CONFIG_HID_PID=y
+CONFIG_USB_HIDDEV=y
+# end of USB HID support
+
+CONFIG_I2C_HID=y
+CONFIG_I2C_HID_OF=m
+# CONFIG_I2C_HID_OF_ELAN is not set
+# CONFIG_I2C_HID_OF_GOODIX is not set
+CONFIG_I2C_HID_CORE=m
+CONFIG_USB_OHCI_LITTLE_ENDIAN=y
+CONFIG_USB_SUPPORT=y
+CONFIG_USB_COMMON=y
+# CONFIG_USB_LED_TRIG is not set
+CONFIG_USB_ULPI_BUS=y
+# CONFIG_USB_CONN_GPIO is not set
+CONFIG_USB_ARCH_HAS_HCD=y
+CONFIG_USB=y
+CONFIG_USB_PCI=y
+# CONFIG_USB_PCI_AMD is not set
+CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
+
+#
+# Miscellaneous USB options
+#
+CONFIG_USB_DEFAULT_PERSIST=y
+# CONFIG_USB_FEW_INIT_RETRIES is not set
+# CONFIG_USB_DYNAMIC_MINORS is not set
+CONFIG_USB_OTG=y
+# CONFIG_USB_OTG_PRODUCTLIST is not set
+# CONFIG_USB_OTG_DISABLE_EXTERNAL_HUB is not set
+# CONFIG_USB_OTG_FSM is not set
+# CONFIG_USB_LEDS_TRIGGER_USBPORT is not set
+CONFIG_USB_AUTOSUSPEND_DELAY=2
+CONFIG_USB_MON=m
+
+#
+# USB Host Controller Drivers
+#
+# CONFIG_USB_C67X00_HCD is not set
+CONFIG_USB_XHCI_HCD=y
+# CONFIG_USB_XHCI_DBGCAP is not set
+CONFIG_USB_XHCI_PCI=y
+# CONFIG_USB_XHCI_PCI_RENESAS is not set
+CONFIG_USB_XHCI_PLATFORM=y
+CONFIG_USB_EHCI_HCD=y
+CONFIG_USB_EHCI_ROOT_HUB_TT=y
+CONFIG_USB_EHCI_TT_NEWSCHED=y
+CONFIG_USB_EHCI_PCI=y
+# CONFIG_USB_EHCI_FSL is not set
+CONFIG_USB_EHCI_HCD_PLATFORM=y
+# CONFIG_USB_OXU210HP_HCD is not set
+# CONFIG_USB_ISP116X_HCD is not set
+# CONFIG_USB_MAX3421_HCD is not set
+CONFIG_USB_OHCI_HCD=y
+CONFIG_USB_OHCI_HCD_PCI=y
+CONFIG_USB_OHCI_HCD_PLATFORM=y
+# CONFIG_USB_UHCI_HCD is not set
+# CONFIG_USB_SL811_HCD is not set
+# CONFIG_USB_R8A66597_HCD is not set
+# CONFIG_USB_HCD_SSB is not set
+# CONFIG_USB_HCD_TEST_MODE is not set
+
+#
+# USB Device Class drivers
+#
+CONFIG_USB_ACM=m
+# CONFIG_USB_PRINTER is not set
+CONFIG_USB_WDM=m
+CONFIG_USB_TMC=m
+
+#
+# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may
+#
+
+#
+# also be needed; see USB_STORAGE Help for more info
+#
+CONFIG_USB_STORAGE=y
+# CONFIG_USB_STORAGE_DEBUG is not set
+CONFIG_USB_STORAGE_REALTEK=m
+CONFIG_REALTEK_AUTOPM=y
+CONFIG_USB_STORAGE_DATAFAB=m
+CONFIG_USB_STORAGE_FREECOM=m
+CONFIG_USB_STORAGE_ISD200=m
+CONFIG_USB_STORAGE_USBAT=m
+CONFIG_USB_STORAGE_SDDR09=m
+CONFIG_USB_STORAGE_SDDR55=m
+CONFIG_USB_STORAGE_JUMPSHOT=m
+CONFIG_USB_STORAGE_ALAUDA=m
+CONFIG_USB_STORAGE_ONETOUCH=m
+CONFIG_USB_STORAGE_KARMA=m
+CONFIG_USB_STORAGE_CYPRESS_ATACB=m
+CONFIG_USB_STORAGE_ENE_UB6250=m
+CONFIG_USB_UAS=y
+
+#
+# USB Imaging devices
+#
+# CONFIG_USB_MDC800 is not set
+# CONFIG_USB_MICROTEK is not set
+CONFIG_USBIP_CORE=m
+CONFIG_USBIP_VHCI_HCD=m
+CONFIG_USBIP_VHCI_HC_PORTS=8
+CONFIG_USBIP_VHCI_NR_HCS=1
+CONFIG_USBIP_HOST=m
+# CONFIG_USBIP_DEBUG is not set
+
+#
+# USB dual-mode controller drivers
+#
+# CONFIG_USB_CDNS_SUPPORT is not set
+# CONFIG_USB_MUSB_HDRC is not set
+CONFIG_USB_DWC3=y
+CONFIG_USB_DWC3_ULPI=y
+CONFIG_USB_DWC3_HOST=y
+
+#
+# Platform Glue Driver Support
+#
+CONFIG_USB_DWC3_HAPS=y
+CONFIG_USB_DWC3_OF_SIMPLE=y
+CONFIG_USB_DWC2=y
+CONFIG_USB_DWC2_HOST=y
+
+#
+# Gadget/Dual-role mode requires USB Gadget support to be enabled
+#
+CONFIG_USB_DWC2_PCI=y
+# CONFIG_USB_DWC2_DEBUG is not set
+# CONFIG_USB_DWC2_TRACK_MISSED_SOFS is not set
+CONFIG_USB_CHIPIDEA=y
+CONFIG_USB_CHIPIDEA_HOST=y
+CONFIG_USB_CHIPIDEA_PCI=y
+CONFIG_USB_CHIPIDEA_MSM=y
+CONFIG_USB_CHIPIDEA_NPCM=y
+CONFIG_USB_CHIPIDEA_IMX=y
+CONFIG_USB_CHIPIDEA_GENERIC=y
+CONFIG_USB_CHIPIDEA_TEGRA=y
+CONFIG_USB_ISP1760=y
+CONFIG_USB_ISP1760_HCD=y
+CONFIG_USB_ISP1760_HOST_ROLE=y
+
+#
+# USB port drivers
+#
+CONFIG_USB_SERIAL=m
+CONFIG_USB_SERIAL_GENERIC=y
+CONFIG_USB_SERIAL_SIMPLE=m
+CONFIG_USB_SERIAL_AIRCABLE=m
+CONFIG_USB_SERIAL_ARK3116=m
+CONFIG_USB_SERIAL_BELKIN=m
+CONFIG_USB_SERIAL_CH341=m
+CONFIG_USB_SERIAL_WHITEHEAT=m
+CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m
+CONFIG_USB_SERIAL_CP210X=m
+CONFIG_USB_SERIAL_CYPRESS_M8=m
+CONFIG_USB_SERIAL_EMPEG=m
+CONFIG_USB_SERIAL_FTDI_SIO=m
+CONFIG_USB_SERIAL_VISOR=m
+CONFIG_USB_SERIAL_IPAQ=m
+CONFIG_USB_SERIAL_IR=m
+CONFIG_USB_SERIAL_EDGEPORT=m
+CONFIG_USB_SERIAL_EDGEPORT_TI=m
+CONFIG_USB_SERIAL_F81232=m
+CONFIG_USB_SERIAL_F8153X=m
+CONFIG_USB_SERIAL_GARMIN=m
+CONFIG_USB_SERIAL_IPW=m
+CONFIG_USB_SERIAL_IUU=m
+CONFIG_USB_SERIAL_KEYSPAN_PDA=m
+CONFIG_USB_SERIAL_KEYSPAN=m
+CONFIG_USB_SERIAL_KLSI=m
+CONFIG_USB_SERIAL_KOBIL_SCT=m
+CONFIG_USB_SERIAL_MCT_U232=m
+CONFIG_USB_SERIAL_METRO=m
+CONFIG_USB_SERIAL_MOS7720=m
+CONFIG_USB_SERIAL_MOS7840=m
+CONFIG_USB_SERIAL_MXUPORT=m
+CONFIG_USB_SERIAL_NAVMAN=m
+CONFIG_USB_SERIAL_PL2303=m
+CONFIG_USB_SERIAL_OTI6858=m
+CONFIG_USB_SERIAL_QCAUX=m
+CONFIG_USB_SERIAL_QUALCOMM=m
+CONFIG_USB_SERIAL_SPCP8X5=m
+CONFIG_USB_SERIAL_SAFE=m
+CONFIG_USB_SERIAL_SAFE_PADDED=y
+CONFIG_USB_SERIAL_SIERRAWIRELESS=m
+CONFIG_USB_SERIAL_SYMBOL=m
+CONFIG_USB_SERIAL_TI=m
+CONFIG_USB_SERIAL_CYBERJACK=m
+CONFIG_USB_SERIAL_WWAN=m
+CONFIG_USB_SERIAL_OPTION=m
+CONFIG_USB_SERIAL_OMNINET=m
+CONFIG_USB_SERIAL_OPTICON=m
+CONFIG_USB_SERIAL_XSENS_MT=m
+CONFIG_USB_SERIAL_WISHBONE=m
+CONFIG_USB_SERIAL_SSU100=m
+CONFIG_USB_SERIAL_QT2=m
+# CONFIG_USB_SERIAL_UPD78F0730 is not set
+# CONFIG_USB_SERIAL_XR is not set
+# CONFIG_USB_SERIAL_DEBUG is not set
+
+#
+# USB Miscellaneous drivers
+#
+# CONFIG_USB_EMI62 is not set
+# CONFIG_USB_EMI26 is not set
+# CONFIG_USB_ADUTUX is not set
+# CONFIG_USB_SEVSEG is not set
+# CONFIG_USB_LEGOTOWER is not set
+# CONFIG_USB_LCD is not set
+# CONFIG_USB_CYPRESS_CY7C63 is not set
+# CONFIG_USB_CYTHERM is not set
+# CONFIG_USB_IDMOUSE is not set
+# CONFIG_USB_APPLEDISPLAY is not set
+# CONFIG_APPLE_MFI_FASTCHARGE is not set
+# CONFIG_USB_SISUSBVGA is not set
+# CONFIG_USB_LD is not set
+# CONFIG_USB_TRANCEVIBRATOR is not set
+# CONFIG_USB_IOWARRIOR is not set
+# CONFIG_USB_TEST is not set
+# CONFIG_USB_EHSET_TEST_FIXTURE is not set
+# CONFIG_USB_ISIGHTFW is not set
+# CONFIG_USB_YUREX is not set
+CONFIG_USB_EZUSB_FX2=m
+# CONFIG_USB_HUB_USB251XB is not set
+CONFIG_USB_HSIC_USB3503=m
+# CONFIG_USB_HSIC_USB4604 is not set
+# CONFIG_USB_LINK_LAYER_TEST is not set
+# CONFIG_USB_CHAOSKEY is not set
+# CONFIG_USB_ONBOARD_HUB is not set
+
+#
+# USB Physical Layer drivers
+#
+CONFIG_USB_PHY=y
+CONFIG_NOP_USB_XCEIV=y
+# CONFIG_USB_GPIO_VBUS is not set
+# CONFIG_USB_ISP1301 is not set
+CONFIG_USB_ULPI=y
+CONFIG_USB_ULPI_VIEWPORT=y
+# end of USB Physical Layer drivers
+
+# CONFIG_USB_GADGET is not set
+CONFIG_TYPEC=y
+CONFIG_TYPEC_TCPM=m
+# CONFIG_TYPEC_TCPCI is not set
+# CONFIG_TYPEC_FUSB302 is not set
+CONFIG_TYPEC_UCSI=m
+# CONFIG_UCSI_CCG is not set
+# CONFIG_UCSI_STM32G0 is not set
+# CONFIG_TYPEC_TPS6598X is not set
+# CONFIG_TYPEC_ANX7411 is not set
+# CONFIG_TYPEC_RT1719 is not set
+# CONFIG_TYPEC_HD3SS3220 is not set
+# CONFIG_TYPEC_STUSB160X is not set
+# CONFIG_TYPEC_WUSB3801 is not set
+
+#
+# USB Type-C Multiplexer/DeMultiplexer Switch support
+#
+# CONFIG_TYPEC_MUX_FSA4480 is not set
+# CONFIG_TYPEC_MUX_GPIO_SBU is not set
+# CONFIG_TYPEC_MUX_PI3USB30532 is not set
+# CONFIG_TYPEC_MUX_NB7VPQ904M is not set
+# CONFIG_TYPEC_MUX_PTN36502 is not set
+# CONFIG_TYPEC_MUX_WCD939X_USBSS is not set
+# end of USB Type-C Multiplexer/DeMultiplexer Switch support
+
+#
+# USB Type-C Alternate Mode drivers
+#
+CONFIG_TYPEC_DP_ALTMODE=m
+# CONFIG_TYPEC_NVIDIA_ALTMODE is not set
+# end of USB Type-C Alternate Mode drivers
+
+CONFIG_USB_ROLE_SWITCH=y
+CONFIG_MMC=y
+CONFIG_PWRSEQ_EMMC=y
+# CONFIG_PWRSEQ_SD8787 is not set
+CONFIG_PWRSEQ_SIMPLE=y
+CONFIG_MMC_BLOCK=y
+CONFIG_MMC_BLOCK_MINORS=32
+# CONFIG_SDIO_UART is not set
+# CONFIG_MMC_TEST is not set
+
+#
+# MMC/SD/SDIO Host Controller Drivers
+#
+# CONFIG_MMC_DEBUG is not set
+# CONFIG_MMC_ARMMMCI is not set
+CONFIG_MMC_SDHCI=y
+CONFIG_MMC_SDHCI_IO_ACCESSORS=y
+CONFIG_MMC_SDHCI_PCI=y
+# CONFIG_MMC_RICOH_MMC is not set
+CONFIG_MMC_SDHCI_PLTFM=y
+CONFIG_MMC_SDHCI_OF_ARASAN=y
+# CONFIG_MMC_SDHCI_OF_AT91 is not set
+# CONFIG_MMC_SDHCI_OF_DWCMSHC is not set
+# CONFIG_MMC_SDHCI_CADENCE is not set
+# CONFIG_MMC_SDHCI_F_SDH30 is not set
+# CONFIG_MMC_SDHCI_MILBEAUT is not set
+# CONFIG_MMC_TIFM_SD is not set
+# CONFIG_MMC_SPI is not set
+# CONFIG_MMC_CB710 is not set
+# CONFIG_MMC_VIA_SDMMC is not set
+CONFIG_MMC_DW=y
+CONFIG_MMC_DW_PLTFM=y
+# CONFIG_MMC_DW_BLUEFIELD is not set
+# CONFIG_MMC_DW_EXYNOS is not set
+# CONFIG_MMC_DW_HI3798CV200 is not set
+# CONFIG_MMC_DW_K3 is not set
+CONFIG_MMC_DW_PCI=y
+CONFIG_MMC_DW_ROCKCHIP=y
+# CONFIG_MMC_VUB300 is not set
+# CONFIG_MMC_USHC is not set
+# CONFIG_MMC_USDHI6ROL0 is not set
+CONFIG_MMC_CQHCI=y
+CONFIG_MMC_HSQ=y
+# CONFIG_MMC_TOSHIBA_PCI is not set
+# CONFIG_MMC_MTK is not set
+# CONFIG_MMC_SDHCI_XENON is not set
+# CONFIG_SCSI_UFSHCD is not set
+# CONFIG_MEMSTICK is not set
+CONFIG_NEW_LEDS=y
+CONFIG_LEDS_CLASS=y
+CONFIG_LEDS_CLASS_FLASH=m
+CONFIG_LEDS_CLASS_MULTICOLOR=m
+# CONFIG_LEDS_BRIGHTNESS_HW_CHANGED is not set
+
+#
+# LED drivers
+#
+# CONFIG_LEDS_AN30259A is not set
+# CONFIG_LEDS_AW200XX is not set
+# CONFIG_LEDS_AW2013 is not set
+# CONFIG_LEDS_BCM6328 is not set
+# CONFIG_LEDS_BCM6358 is not set
+# CONFIG_LEDS_CR0014114 is not set
+# CONFIG_LEDS_EL15203000 is not set
+# CONFIG_LEDS_LM3530 is not set
+# CONFIG_LEDS_LM3532 is not set
+# CONFIG_LEDS_LM3642 is not set
+# CONFIG_LEDS_LM3692X is not set
+# CONFIG_LEDS_MT6323 is not set
+# CONFIG_LEDS_PCA9532 is not set
+# CONFIG_LEDS_GPIO is not set
+# CONFIG_LEDS_LP3944 is not set
+# CONFIG_LEDS_LP3952 is not set
+# CONFIG_LEDS_LP50XX is not set
+# CONFIG_LEDS_LP55XX_COMMON is not set
+# CONFIG_LEDS_LP8860 is not set
+# CONFIG_LEDS_PCA955X is not set
+# CONFIG_LEDS_PCA963X is not set
+# CONFIG_LEDS_PCA995X is not set
+# CONFIG_LEDS_DAC124S085 is not set
+# CONFIG_LEDS_PWM is not set
+# CONFIG_LEDS_REGULATOR is not set
+# CONFIG_LEDS_BD2606MVV is not set
+# CONFIG_LEDS_BD2802 is not set
+# CONFIG_LEDS_LT3593 is not set
+# CONFIG_LEDS_TCA6507 is not set
+# CONFIG_LEDS_TLC591XX is not set
+# CONFIG_LEDS_LM355x is not set
+# CONFIG_LEDS_IS31FL319X is not set
+# CONFIG_LEDS_IS31FL32XX is not set
+
+#
+# LED driver for blink(1) USB RGB LED is under Special HID drivers (HID_THINGM)
+#
+CONFIG_LEDS_BLINKM=m
+CONFIG_LEDS_SYSCON=y
+# CONFIG_LEDS_MLXREG is not set
+CONFIG_LEDS_USER=m
+# CONFIG_LEDS_SPI_BYTE is not set
+# CONFIG_LEDS_LM3697 is not set
+
+#
+# Flash and Torch LED drivers
+#
+# CONFIG_LEDS_AAT1290 is not set
+# CONFIG_LEDS_AS3645A is not set
+# CONFIG_LEDS_KTD2692 is not set
+# CONFIG_LEDS_LM3601X is not set
+# CONFIG_LEDS_RT4505 is not set
+# CONFIG_LEDS_RT8515 is not set
+# CONFIG_LEDS_SGM3140 is not set
+
+#
+# RGB LED drivers
+#
+# CONFIG_LEDS_GROUP_MULTICOLOR is not set
+# CONFIG_LEDS_KTD202X is not set
+# CONFIG_LEDS_PWM_MULTICOLOR is not set
+# CONFIG_LEDS_QCOM_LPG is not set
+
+#
+# LED Triggers
+#
+CONFIG_LEDS_TRIGGERS=y
+# CONFIG_LEDS_TRIGGER_TIMER is not set
+# CONFIG_LEDS_TRIGGER_ONESHOT is not set
+# CONFIG_LEDS_TRIGGER_HEARTBEAT is not set
+# CONFIG_LEDS_TRIGGER_BACKLIGHT is not set
+# CONFIG_LEDS_TRIGGER_CPU is not set
+# CONFIG_LEDS_TRIGGER_ACTIVITY is not set
+# CONFIG_LEDS_TRIGGER_GPIO is not set
+# CONFIG_LEDS_TRIGGER_DEFAULT_ON is not set
+
+#
+# iptables trigger is under Netfilter config (LED target)
+#
+# CONFIG_LEDS_TRIGGER_TRANSIENT is not set
+# CONFIG_LEDS_TRIGGER_CAMERA is not set
+# CONFIG_LEDS_TRIGGER_PANIC is not set
+# CONFIG_LEDS_TRIGGER_NETDEV is not set
+# CONFIG_LEDS_TRIGGER_PATTERN is not set
+# CONFIG_LEDS_TRIGGER_AUDIO is not set
+CONFIG_LEDS_TRIGGER_TTY=m
+
+#
+# Simple LED drivers
+#
+# CONFIG_ACCESSIBILITY is not set
+# CONFIG_INFINIBAND is not set
+CONFIG_EDAC_SUPPORT=y
+# CONFIG_EDAC is not set
+CONFIG_RTC_LIB=y
+CONFIG_RTC_CLASS=y
+CONFIG_RTC_HCTOSYS=y
+CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
+CONFIG_RTC_SYSTOHC=y
+CONFIG_RTC_SYSTOHC_DEVICE="rtc0"
+# CONFIG_RTC_DEBUG is not set
+CONFIG_RTC_NVMEM=y
+
+#
+# RTC interfaces
+#
+CONFIG_RTC_INTF_SYSFS=y
+CONFIG_RTC_INTF_PROC=y
+CONFIG_RTC_INTF_DEV=y
+# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set
+# CONFIG_RTC_DRV_TEST is not set
+
+#
+# I2C RTC drivers
+#
+# CONFIG_RTC_DRV_ABB5ZES3 is not set
+# CONFIG_RTC_DRV_ABEOZ9 is not set
+# CONFIG_RTC_DRV_ABX80X is not set
+# CONFIG_RTC_DRV_AS3722 is not set
+# CONFIG_RTC_DRV_DS1307 is not set
+# CONFIG_RTC_DRV_DS1374 is not set
+# CONFIG_RTC_DRV_DS1672 is not set
+# CONFIG_RTC_DRV_HYM8563 is not set
+# CONFIG_RTC_DRV_MAX6900 is not set
+# CONFIG_RTC_DRV_MAX31335 is not set
+# CONFIG_RTC_DRV_MAX77686 is not set
+# CONFIG_RTC_DRV_NCT3018Y is not set
+# CONFIG_RTC_DRV_RS5C372 is not set
+# CONFIG_RTC_DRV_ISL1208 is not set
+# CONFIG_RTC_DRV_ISL12022 is not set
+# CONFIG_RTC_DRV_ISL12026 is not set
+# CONFIG_RTC_DRV_X1205 is not set
+# CONFIG_RTC_DRV_PCF8523 is not set
+# CONFIG_RTC_DRV_PCF85063 is not set
+# CONFIG_RTC_DRV_PCF85363 is not set
+# CONFIG_RTC_DRV_PCF8563 is not set
+# CONFIG_RTC_DRV_PCF8583 is not set
+# CONFIG_RTC_DRV_M41T80 is not set
+# CONFIG_RTC_DRV_BQ32K is not set
+CONFIG_RTC_DRV_PALMAS=m
+CONFIG_RTC_DRV_TPS6586X=m
+# CONFIG_RTC_DRV_S35390A is not set
+# CONFIG_RTC_DRV_FM3130 is not set
+# CONFIG_RTC_DRV_RX8010 is not set
+# CONFIG_RTC_DRV_RX8581 is not set
+# CONFIG_RTC_DRV_RX8025 is not set
+# CONFIG_RTC_DRV_EM3027 is not set
+# CONFIG_RTC_DRV_RV3028 is not set
+# CONFIG_RTC_DRV_RV3032 is not set
+# CONFIG_RTC_DRV_RV8803 is not set
+# CONFIG_RTC_DRV_SD3078 is not set
+
+#
+# SPI RTC drivers
+#
+# CONFIG_RTC_DRV_M41T93 is not set
+# CONFIG_RTC_DRV_M41T94 is not set
+# CONFIG_RTC_DRV_DS1302 is not set
+# CONFIG_RTC_DRV_DS1305 is not set
+# CONFIG_RTC_DRV_DS1343 is not set
+# CONFIG_RTC_DRV_DS1347 is not set
+# CONFIG_RTC_DRV_DS1390 is not set
+# CONFIG_RTC_DRV_MAX6916 is not set
+# CONFIG_RTC_DRV_R9701 is not set
+# CONFIG_RTC_DRV_RX4581 is not set
+# CONFIG_RTC_DRV_RS5C348 is not set
+# CONFIG_RTC_DRV_MAX6902 is not set
+# CONFIG_RTC_DRV_PCF2123 is not set
+# CONFIG_RTC_DRV_MCP795 is not set
+CONFIG_RTC_I2C_AND_SPI=y
+
+#
+# SPI and I2C RTC drivers
+#
+# CONFIG_RTC_DRV_DS3232 is not set
+# CONFIG_RTC_DRV_PCF2127 is not set
+CONFIG_RTC_DRV_RV3029C2=m
+CONFIG_RTC_DRV_RV3029_HWMON=y
+# CONFIG_RTC_DRV_RX6110 is not set
+
+#
+# Platform RTC drivers
+#
+# CONFIG_RTC_DRV_DS1286 is not set
+# CONFIG_RTC_DRV_DS1511 is not set
+# CONFIG_RTC_DRV_DS1553 is not set
+# CONFIG_RTC_DRV_DS1685_FAMILY is not set
+# CONFIG_RTC_DRV_DS1742 is not set
+# CONFIG_RTC_DRV_DS2404 is not set
+CONFIG_RTC_DRV_EFI=m
+# CONFIG_RTC_DRV_STK17TA8 is not set
+# CONFIG_RTC_DRV_M48T86 is not set
+# CONFIG_RTC_DRV_M48T35 is not set
+# CONFIG_RTC_DRV_M48T59 is not set
+# CONFIG_RTC_DRV_MSM6242 is not set
+# CONFIG_RTC_DRV_RP5C01 is not set
+# CONFIG_RTC_DRV_ZYNQMP is not set
+CONFIG_RTC_DRV_CROS_EC=m
+
+#
+# on-CPU RTC drivers
+#
+# CONFIG_RTC_DRV_PL030 is not set
+# CONFIG_RTC_DRV_PL031 is not set
+# CONFIG_RTC_DRV_CADENCE is not set
+# CONFIG_RTC_DRV_FTRTC010 is not set
+CONFIG_RTC_DRV_MT6397=m
+# CONFIG_RTC_DRV_R7301 is not set
+
+#
+# HID Sensor RTC drivers
+#
+# CONFIG_RTC_DRV_GOLDFISH is not set
+CONFIG_DMADEVICES=y
+# CONFIG_DMADEVICES_DEBUG is not set
+
+#
+# DMA Devices
+#
+CONFIG_ASYNC_TX_ENABLE_CHANNEL_SWITCH=y
+CONFIG_DMA_ENGINE=y
+CONFIG_DMA_OF=y
+# CONFIG_ALTERA_MSGDMA is not set
+# CONFIG_AMBA_PL08X is not set
+# CONFIG_BCM_SBA_RAID is not set
+# CONFIG_DW_AXI_DMAC is not set
+# CONFIG_FSL_EDMA is not set
+# CONFIG_FSL_QDMA is not set
+# CONFIG_INTEL_IDMA64 is not set
+CONFIG_MV_XOR_V2=y
+CONFIG_PL330_DMA=y
+# CONFIG_PLX_DMA is not set
+# CONFIG_XILINX_DMA is not set
+# CONFIG_XILINX_XDMA is not set
+# CONFIG_XILINX_ZYNQMP_DMA is not set
+# CONFIG_XILINX_ZYNQMP_DPDMA is not set
+CONFIG_QCOM_HIDMA_MGMT=y
+CONFIG_QCOM_HIDMA=y
+CONFIG_DW_DMAC_CORE=m
+CONFIG_DW_DMAC=m
+CONFIG_DW_DMAC_PCI=m
+# CONFIG_DW_EDMA is not set
+# CONFIG_SF_PDMA is not set
+
+#
+# DMA Clients
+#
+CONFIG_ASYNC_TX_DMA=y
+# CONFIG_DMATEST is not set
+CONFIG_DMA_ENGINE_RAID=y
+
+#
+# DMABUF options
+#
+CONFIG_SYNC_FILE=y
+# CONFIG_UDMABUF is not set
+# CONFIG_DMABUF_MOVE_NOTIFY is not set
+# CONFIG_DMABUF_DEBUG is not set
+# CONFIG_DMABUF_SELFTESTS is not set
+CONFIG_DMABUF_HEAPS=y
+# CONFIG_DMABUF_SYSFS_STATS is not set
+CONFIG_DMABUF_HEAPS_SYSTEM=y
+# end of DMABUF options
+
+# CONFIG_UIO is not set
+CONFIG_VFIO=m
+# CONFIG_VFIO_DEVICE_CDEV is not set
+CONFIG_VFIO_GROUP=y
+CONFIG_VFIO_CONTAINER=y
+CONFIG_VFIO_IOMMU_TYPE1=m
+CONFIG_VFIO_NOIOMMU=y
+CONFIG_VFIO_VIRQFD=y
+
+#
+# VFIO support for PCI devices
+#
+CONFIG_VFIO_PCI_CORE=m
+CONFIG_VFIO_PCI_MMAP=y
+CONFIG_VFIO_PCI_INTX=y
+CONFIG_VFIO_PCI=m
+# end of VFIO support for PCI devices
+
+#
+# VFIO support for platform devices
+#
+CONFIG_VFIO_PLATFORM_BASE=m
+CONFIG_VFIO_PLATFORM=m
+# CONFIG_VFIO_AMBA is not set
+
+#
+# VFIO platform reset drivers
+#
+# CONFIG_VFIO_PLATFORM_CALXEDAXGMAC_RESET is not set
+# CONFIG_VFIO_PLATFORM_AMDXGBE_RESET is not set
+# end of VFIO platform reset drivers
+# end of VFIO support for platform devices
+
+CONFIG_IRQ_BYPASS_MANAGER=y
+CONFIG_VIRT_DRIVERS=y
+# CONFIG_NITRO_ENCLAVES is not set
+CONFIG_VIRTIO_ANCHOR=y
+CONFIG_VIRTIO=m
+CONFIG_VIRTIO_PCI_LIB=m
+CONFIG_VIRTIO_PCI_LIB_LEGACY=m
+CONFIG_VIRTIO_MENU=y
+CONFIG_VIRTIO_PCI=m
+CONFIG_VIRTIO_PCI_LEGACY=y
+CONFIG_VIRTIO_BALLOON=m
+CONFIG_VIRTIO_INPUT=m
+CONFIG_VIRTIO_MMIO=m
+CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES=y
+CONFIG_VIRTIO_DMA_SHARED_BUFFER=m
+# CONFIG_VDPA is not set
+CONFIG_VHOST_IOTLB=m
+CONFIG_VHOST_TASK=y
+CONFIG_VHOST=m
+CONFIG_VHOST_MENU=y
+CONFIG_VHOST_NET=m
+CONFIG_VHOST_VSOCK=m
+# CONFIG_VHOST_CROSS_ENDIAN_LEGACY is not set
+
+#
+# Microsoft Hyper-V guest support
+#
+# end of Microsoft Hyper-V guest support
+
+# CONFIG_GREYBUS is not set
+# CONFIG_COMEDI is not set
+CONFIG_STAGING=y
+# CONFIG_PRISM2_USB is not set
+# CONFIG_RTLLIB is not set
+# CONFIG_RTL8723BS is not set
+# CONFIG_R8712U is not set
+# CONFIG_RTS5208 is not set
+# CONFIG_VT6655 is not set
+# CONFIG_VT6656 is not set
+
+#
+# IIO staging drivers
+#
+
+#
+# Accelerometers
+#
+# CONFIG_ADIS16203 is not set
+# CONFIG_ADIS16240 is not set
+# end of Accelerometers
+
+#
+# Analog to digital converters
+#
+# CONFIG_AD7816 is not set
+# end of Analog to digital converters
+
+#
+# Analog digital bi-direction converters
+#
+# CONFIG_ADT7316 is not set
+# end of Analog digital bi-direction converters
+
+#
+# Direct Digital Synthesis
+#
+# CONFIG_AD9832 is not set
+# CONFIG_AD9834 is not set
+# end of Direct Digital Synthesis
+
+#
+# Network Analyzer, Impedance Converters
+#
+# CONFIG_AD5933 is not set
+# end of Network Analyzer, Impedance Converters
+# end of IIO staging drivers
+
+# CONFIG_FB_SM750 is not set
+CONFIG_STAGING_MEDIA=y
+# CONFIG_VIDEO_MAX96712 is not set
+CONFIG_VIDEO_ROCKCHIP_VDEC=m
+
+#
+# StarFive media platform drivers
+#
+# CONFIG_STAGING_MEDIA_DEPRECATED is not set
+# CONFIG_STAGING_BOARD is not set
+# CONFIG_LTE_GDM724X is not set
+# CONFIG_FB_TFT is not set
+# CONFIG_KS7010 is not set
+# CONFIG_PI433 is not set
+# CONFIG_XIL_AXIS_FIFO is not set
+# CONFIG_FIELDBUS_DEV is not set
+# CONFIG_VME_BUS is not set
+# CONFIG_GOLDFISH is not set
+CONFIG_CHROME_PLATFORMS=y
+CONFIG_CROS_EC=y
+CONFIG_CROS_EC_I2C=y
+CONFIG_CROS_EC_SPI=y
+CONFIG_CROS_EC_PROTO=y
+CONFIG_CROS_KBD_LED_BACKLIGHT=m
+CONFIG_CROS_EC_CHARDEV=y
+CONFIG_CROS_EC_LIGHTBAR=y
+CONFIG_CROS_EC_VBC=m
+CONFIG_CROS_EC_SENSORHUB=y
+CONFIG_CROS_EC_SYSFS=m
+CONFIG_CROS_EC_TYPEC=y
+# CONFIG_CROS_HPS_I2C is not set
+CONFIG_CROS_USBPD_LOGGER=m
+CONFIG_CROS_USBPD_NOTIFY=y
+# CONFIG_MELLANOX_PLATFORM is not set
+# CONFIG_SURFACE_PLATFORMS is not set
+CONFIG_HAVE_CLK=y
+CONFIG_HAVE_CLK_PREPARE=y
+CONFIG_COMMON_CLK=y
+
+#
+# Clock driver for ARM Reference designs
+#
+# CONFIG_CLK_ICST is not set
+# CONFIG_CLK_SP810 is not set
+# end of Clock driver for ARM Reference designs
+
+# CONFIG_LMK04832 is not set
+# CONFIG_COMMON_CLK_MAX77686 is not set
+# CONFIG_COMMON_CLK_MAX9485 is not set
+CONFIG_COMMON_CLK_SCPI=m
+# CONFIG_COMMON_CLK_SI5341 is not set
+# CONFIG_COMMON_CLK_SI5351 is not set
+# CONFIG_COMMON_CLK_SI514 is not set
+# CONFIG_COMMON_CLK_SI544 is not set
+# CONFIG_COMMON_CLK_SI570 is not set
+# CONFIG_COMMON_CLK_CDCE706 is not set
+# CONFIG_COMMON_CLK_CDCE925 is not set
+# CONFIG_COMMON_CLK_CS2000_CP is not set
+# CONFIG_COMMON_CLK_AXI_CLKGEN is not set
+# CONFIG_COMMON_CLK_XGENE is not set
+# CONFIG_COMMON_CLK_PALMAS is not set
+# CONFIG_COMMON_CLK_PWM is not set
+# CONFIG_COMMON_CLK_RS9_PCIE is not set
+# CONFIG_COMMON_CLK_SI521XX is not set
+# CONFIG_COMMON_CLK_VC3 is not set
+# CONFIG_COMMON_CLK_VC5 is not set
+# CONFIG_COMMON_CLK_VC7 is not set
+# CONFIG_COMMON_CLK_FIXED_MMIO is not set
+CONFIG_COMMON_CLK_ROCKCHIP=y
+CONFIG_CLK_PX30=y
+CONFIG_CLK_RK3308=y
+CONFIG_CLK_RK3328=y
+CONFIG_CLK_RK3368=y
+CONFIG_CLK_RK3399=y
+# CONFIG_CLK_RK3568 is not set
+CONFIG_CLK_RK3588=y
+# CONFIG_XILINX_VCU is not set
+# CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set
+# CONFIG_HWSPINLOCK is not set
+
+#
+# Clock Source drivers
+#
+CONFIG_TIMER_OF=y
+CONFIG_TIMER_PROBE=y
+CONFIG_CLKSRC_MMIO=y
+CONFIG_ROCKCHIP_TIMER=y
+CONFIG_ARM_ARCH_TIMER=y
+CONFIG_ARM_ARCH_TIMER_EVTSTREAM=y
+CONFIG_ARM_ARCH_TIMER_OOL_WORKAROUND=y
+CONFIG_FSL_ERRATUM_A008585=y
+CONFIG_HISILICON_ERRATUM_161010101=y
+CONFIG_ARM64_ERRATUM_858921=y
+# end of Clock Source drivers
+
+CONFIG_MAILBOX=y
+CONFIG_ARM_MHU=m
+# CONFIG_ARM_MHU_V2 is not set
+CONFIG_PLATFORM_MHU=m
+# CONFIG_PL320_MBOX is not set
+CONFIG_ROCKCHIP_MBOX=y
+# CONFIG_ALTERA_MBOX is not set
+# CONFIG_MAILBOX_TEST is not set
+CONFIG_IOMMU_IOVA=y
+CONFIG_IOMMU_API=y
+CONFIG_IOMMU_SUPPORT=y
+
+#
+# Generic IOMMU Pagetable Support
+#
+CONFIG_IOMMU_IO_PGTABLE=y
+CONFIG_IOMMU_IO_PGTABLE_LPAE=y
+# CONFIG_IOMMU_IO_PGTABLE_LPAE_SELFTEST is not set
+CONFIG_IOMMU_IO_PGTABLE_ARMV7S=y
+# CONFIG_IOMMU_IO_PGTABLE_ARMV7S_SELFTEST is not set
+# CONFIG_IOMMU_IO_PGTABLE_DART is not set
+# end of Generic IOMMU Pagetable Support
+
+CONFIG_IOMMU_DEFAULT_DMA_STRICT=y
+# CONFIG_IOMMU_DEFAULT_DMA_LAZY is not set
+# CONFIG_IOMMU_DEFAULT_PASSTHROUGH is not set
+CONFIG_OF_IOMMU=y
+CONFIG_IOMMU_DMA=y
+CONFIG_IOMMUFD=m
+CONFIG_ROCKCHIP_IOMMU=y
+# CONFIG_ARM_SMMU is not set
+# CONFIG_ARM_SMMU_V3 is not set
+# CONFIG_VIRTIO_IOMMU is not set
+
+#
+# Remoteproc drivers
+#
+# CONFIG_REMOTEPROC is not set
+# end of Remoteproc drivers
+
+#
+# Rpmsg drivers
+#
+# CONFIG_RPMSG_QCOM_GLINK_RPM is not set
+# CONFIG_RPMSG_VIRTIO is not set
+# end of Rpmsg drivers
+
+# CONFIG_SOUNDWIRE is not set
+
+#
+# SOC (System On Chip) specific Drivers
+#
+
+#
+# Amlogic SoC drivers
+#
+# end of Amlogic SoC drivers
+
+#
+# Broadcom SoC drivers
+#
+# end of Broadcom SoC drivers
+
+#
+# NXP/Freescale QorIQ SoC drivers
+#
+# CONFIG_QUICC_ENGINE is not set
+# CONFIG_FSL_RCPM is not set
+# end of NXP/Freescale QorIQ SoC drivers
+
+#
+# fujitsu SoC drivers
+#
+# end of fujitsu SoC drivers
+
+#
+# i.MX SoC drivers
+#
+# end of i.MX SoC drivers
+
+#
+# Enable LiteX SoC Builder specific drivers
+#
+# CONFIG_LITEX_SOC_CONTROLLER is not set
+# end of Enable LiteX SoC Builder specific drivers
+
+# CONFIG_WPCM450_SOC is not set
+
+#
+# Qualcomm SoC drivers
+#
+# end of Qualcomm SoC drivers
+
+CONFIG_ROCKCHIP_GRF=y
+CONFIG_ROCKCHIP_IODOMAIN=y
+# CONFIG_SOC_TI is not set
+
+#
+# Xilinx SoC drivers
+#
+# end of Xilinx SoC drivers
+# end of SOC (System On Chip) specific Drivers
+
+#
+# PM Domains
+#
+
+#
+# Amlogic PM Domains
+#
+# end of Amlogic PM Domains
+
+CONFIG_ARM_SCPI_POWER_DOMAIN=m
+
+#
+# Broadcom PM Domains
+#
+# end of Broadcom PM Domains
+
+#
+# i.MX PM Domains
+#
+# end of i.MX PM Domains
+
+#
+# Qualcomm PM Domains
+#
+# end of Qualcomm PM Domains
+
+CONFIG_ROCKCHIP_PM_DOMAINS=y
+# end of PM Domains
+
+CONFIG_PM_DEVFREQ=y
+
+#
+# DEVFREQ Governors
+#
+CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=y
+CONFIG_DEVFREQ_GOV_PERFORMANCE=y
+CONFIG_DEVFREQ_GOV_POWERSAVE=y
+CONFIG_DEVFREQ_GOV_USERSPACE=y
+# CONFIG_DEVFREQ_GOV_PASSIVE is not set
+
+#
+# DEVFREQ Drivers
+#
+CONFIG_ARM_RK3399_DMC_DEVFREQ=m
+CONFIG_PM_DEVFREQ_EVENT=y
+CONFIG_DEVFREQ_EVENT_ROCKCHIP_DFI=m
+CONFIG_EXTCON=y
+
+#
+# Extcon Device Drivers
+#
+CONFIG_EXTCON_ADC_JACK=m
+# CONFIG_EXTCON_FSA9480 is not set
+CONFIG_EXTCON_GPIO=y
+# CONFIG_EXTCON_MAX3355 is not set
+# CONFIG_EXTCON_PALMAS is not set
+# CONFIG_EXTCON_PTN5150 is not set
+# CONFIG_EXTCON_RT8973A is not set
+# CONFIG_EXTCON_SM5502 is not set
+CONFIG_EXTCON_USB_GPIO=y
+CONFIG_EXTCON_USBC_CROS_EC=y
+# CONFIG_EXTCON_USBC_TUSB320 is not set
+CONFIG_MEMORY=y
+# CONFIG_ARM_PL172_MPMC is not set
+CONFIG_IIO=y
+CONFIG_IIO_BUFFER=y
+CONFIG_IIO_BUFFER_CB=y
+# CONFIG_IIO_BUFFER_DMA is not set
+# CONFIG_IIO_BUFFER_DMAENGINE is not set
+CONFIG_IIO_BUFFER_HW_CONSUMER=m
+CONFIG_IIO_KFIFO_BUF=y
+CONFIG_IIO_TRIGGERED_BUFFER=m
+CONFIG_IIO_CONFIGFS=m
+CONFIG_IIO_TRIGGER=y
+CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
+CONFIG_IIO_SW_DEVICE=m
+CONFIG_IIO_SW_TRIGGER=m
+# CONFIG_IIO_TRIGGERED_EVENT is not set
+
+#
+# Accelerometers
+#
+# CONFIG_ADIS16201 is not set
+# CONFIG_ADIS16209 is not set
+# CONFIG_ADXL313_I2C is not set
+# CONFIG_ADXL313_SPI is not set
+# CONFIG_ADXL345_I2C is not set
+# CONFIG_ADXL345_SPI is not set
+# CONFIG_ADXL355_I2C is not set
+# CONFIG_ADXL355_SPI is not set
+# CONFIG_ADXL367_SPI is not set
+# CONFIG_ADXL367_I2C is not set
+# CONFIG_ADXL372_SPI is not set
+# CONFIG_ADXL372_I2C is not set
+# CONFIG_BMA180 is not set
+# CONFIG_BMA220 is not set
+# CONFIG_BMA400 is not set
+# CONFIG_BMC150_ACCEL is not set
+# CONFIG_BMI088_ACCEL is not set
+# CONFIG_DA280 is not set
+# CONFIG_DA311 is not set
+# CONFIG_DMARD06 is not set
+# CONFIG_DMARD09 is not set
+# CONFIG_DMARD10 is not set
+# CONFIG_FXLS8962AF_I2C is not set
+# CONFIG_FXLS8962AF_SPI is not set
+CONFIG_IIO_CROS_EC_ACCEL_LEGACY=m
+# CONFIG_IIO_ST_ACCEL_3AXIS is not set
+# CONFIG_IIO_KX022A_SPI is not set
+# CONFIG_IIO_KX022A_I2C is not set
+# CONFIG_KXSD9 is not set
+# CONFIG_KXCJK1013 is not set
+# CONFIG_MC3230 is not set
+# CONFIG_MMA7455_I2C is not set
+# CONFIG_MMA7455_SPI is not set
+# CONFIG_MMA7660 is not set
+# CONFIG_MMA8452 is not set
+# CONFIG_MMA9551 is not set
+# CONFIG_MMA9553 is not set
+# CONFIG_MSA311 is not set
+# CONFIG_MXC4005 is not set
+# CONFIG_MXC6255 is not set
+# CONFIG_SCA3000 is not set
+# CONFIG_SCA3300 is not set
+# CONFIG_STK8312 is not set
+# CONFIG_STK8BA50 is not set
+# end of Accelerometers
+
+#
+# Analog to digital converters
+#
+# CONFIG_AD4130 is not set
+# CONFIG_AD7091R5 is not set
+# CONFIG_AD7091R8 is not set
+# CONFIG_AD7124 is not set
+# CONFIG_AD7192 is not set
+# CONFIG_AD7266 is not set
+# CONFIG_AD7280 is not set
+# CONFIG_AD7291 is not set
+# CONFIG_AD7292 is not set
+# CONFIG_AD7298 is not set
+# CONFIG_AD7476 is not set
+# CONFIG_AD7606_IFACE_PARALLEL is not set
+# CONFIG_AD7606_IFACE_SPI is not set
+# CONFIG_AD7766 is not set
+# CONFIG_AD7768_1 is not set
+# CONFIG_AD7780 is not set
+# CONFIG_AD7791 is not set
+# CONFIG_AD7793 is not set
+# CONFIG_AD7887 is not set
+# CONFIG_AD7923 is not set
+# CONFIG_AD7949 is not set
+# CONFIG_AD799X is not set
+# CONFIG_ADI_AXI_ADC is not set
+# CONFIG_AXP20X_ADC is not set
+# CONFIG_AXP288_ADC is not set
+# CONFIG_CC10001_ADC is not set
+# CONFIG_ENVELOPE_DETECTOR is not set
+# CONFIG_HI8435 is not set
+# CONFIG_HX711 is not set
+# CONFIG_INA2XX_ADC is not set
+# CONFIG_LTC2309 is not set
+# CONFIG_LTC2471 is not set
+# CONFIG_LTC2485 is not set
+# CONFIG_LTC2496 is not set
+# CONFIG_LTC2497 is not set
+# CONFIG_MAX1027 is not set
+# CONFIG_MAX11100 is not set
+# CONFIG_MAX1118 is not set
+# CONFIG_MAX11205 is not set
+# CONFIG_MAX11410 is not set
+# CONFIG_MAX1241 is not set
+# CONFIG_MAX1363 is not set
+# CONFIG_MAX34408 is not set
+# CONFIG_MAX9611 is not set
+# CONFIG_MCP320X is not set
+# CONFIG_MCP3422 is not set
+# CONFIG_MCP3564 is not set
+# CONFIG_MCP3911 is not set
+# CONFIG_NAU7802 is not set
+# CONFIG_PALMAS_GPADC is not set
+CONFIG_QCOM_VADC_COMMON=m
+# CONFIG_QCOM_SPMI_IADC is not set
+CONFIG_QCOM_SPMI_VADC=m
+# CONFIG_QCOM_SPMI_ADC5 is not set
+CONFIG_ROCKCHIP_SARADC=m
+# CONFIG_RICHTEK_RTQ6056 is not set
+# CONFIG_SD_ADC_MODULATOR is not set
+# CONFIG_TI_ADC081C is not set
+# CONFIG_TI_ADC0832 is not set
+# CONFIG_TI_ADC084S021 is not set
+# CONFIG_TI_ADC12138 is not set
+# CONFIG_TI_ADC108S102 is not set
+# CONFIG_TI_ADC128S052 is not set
+# CONFIG_TI_ADC161S626 is not set
+# CONFIG_TI_ADS1015 is not set
+# CONFIG_TI_ADS7924 is not set
+# CONFIG_TI_ADS1100 is not set
+# CONFIG_TI_ADS7950 is not set
+# CONFIG_TI_ADS8344 is not set
+# CONFIG_TI_ADS8688 is not set
+# CONFIG_TI_ADS124S08 is not set
+# CONFIG_TI_ADS131E08 is not set
+# CONFIG_TI_LMP92064 is not set
+# CONFIG_TI_TLC4541 is not set
+# CONFIG_TI_TSC2046 is not set
+# CONFIG_VF610_ADC is not set
+# CONFIG_XILINX_XADC is not set
+# end of Analog to digital converters
+
+#
+# Analog to digital and digital to analog converters
+#
+# CONFIG_AD74115 is not set
+# CONFIG_AD74413R is not set
+# end of Analog to digital and digital to analog converters
+
+#
+# Analog Front Ends
+#
+# CONFIG_IIO_RESCALE is not set
+# end of Analog Front Ends
+
+#
+# Amplifiers
+#
+CONFIG_AD8366=m
+# CONFIG_ADA4250 is not set
+# CONFIG_HMC425 is not set
+# end of Amplifiers
+
+#
+# Capacitance to digital converters
+#
+# CONFIG_AD7150 is not set
+# CONFIG_AD7746 is not set
+# end of Capacitance to digital converters
+
+#
+# Chemical Sensors
+#
+# CONFIG_AOSONG_AGS02MA is not set
+# CONFIG_ATLAS_PH_SENSOR is not set
+# CONFIG_ATLAS_EZO_SENSOR is not set
+# CONFIG_BME680 is not set
+# CONFIG_CCS811 is not set
+# CONFIG_IAQCORE is not set
+# CONFIG_PMS7003 is not set
+# CONFIG_SCD30_CORE is not set
+# CONFIG_SCD4X is not set
+# CONFIG_SENSIRION_SGP30 is not set
+# CONFIG_SENSIRION_SGP40 is not set
+# CONFIG_SPS30_I2C is not set
+# CONFIG_SPS30_SERIAL is not set
+# CONFIG_SENSEAIR_SUNRISE_CO2 is not set
+# CONFIG_VZ89X is not set
+# end of Chemical Sensors
+
+CONFIG_IIO_CROS_EC_SENSORS_CORE=m
+CONFIG_IIO_CROS_EC_SENSORS=m
+CONFIG_IIO_CROS_EC_SENSORS_LID_ANGLE=m
+
+#
+# Hid Sensor IIO Common
+#
+# end of Hid Sensor IIO Common
+
+#
+# IIO SCMI Sensors
+#
+# end of IIO SCMI Sensors
+
+#
+# SSP Sensor Common
+#
+# CONFIG_IIO_SSP_SENSORHUB is not set
+# end of SSP Sensor Common
+
+#
+# Digital to analog converters
+#
+# CONFIG_AD3552R is not set
+# CONFIG_AD5064 is not set
+# CONFIG_AD5360 is not set
+# CONFIG_AD5380 is not set
+# CONFIG_AD5421 is not set
+# CONFIG_AD5446 is not set
+# CONFIG_AD5449 is not set
+# CONFIG_AD5592R is not set
+# CONFIG_AD5593R is not set
+# CONFIG_AD5504 is not set
+# CONFIG_AD5624R_SPI is not set
+# CONFIG_LTC2688 is not set
+# CONFIG_AD5686_SPI is not set
+# CONFIG_AD5696_I2C is not set
+# CONFIG_AD5755 is not set
+# CONFIG_AD5758 is not set
+# CONFIG_AD5761 is not set
+# CONFIG_AD5764 is not set
+# CONFIG_AD5766 is not set
+# CONFIG_AD5770R is not set
+# CONFIG_AD5791 is not set
+# CONFIG_AD7293 is not set
+# CONFIG_AD7303 is not set
+# CONFIG_AD8801 is not set
+# CONFIG_DPOT_DAC is not set
+# CONFIG_DS4424 is not set
+# CONFIG_LTC1660 is not set
+# CONFIG_LTC2632 is not set
+# CONFIG_M62332 is not set
+# CONFIG_MAX517 is not set
+# CONFIG_MAX5522 is not set
+# CONFIG_MAX5821 is not set
+# CONFIG_MCP4725 is not set
+# CONFIG_MCP4728 is not set
+# CONFIG_MCP4821 is not set
+# CONFIG_MCP4922 is not set
+# CONFIG_TI_DAC082S085 is not set
+# CONFIG_TI_DAC5571 is not set
+# CONFIG_TI_DAC7311 is not set
+# CONFIG_TI_DAC7612 is not set
+# CONFIG_VF610_DAC is not set
+# end of Digital to analog converters
+
+#
+# IIO dummy driver
+#
+# CONFIG_IIO_SIMPLE_DUMMY is not set
+# end of IIO dummy driver
+
+#
+# Filters
+#
+# CONFIG_ADMV8818 is not set
+# end of Filters
+
+#
+# Frequency Synthesizers DDS/PLL
+#
+
+#
+# Clock Generator/Distribution
+#
+# CONFIG_AD9523 is not set
+# end of Clock Generator/Distribution
+
+#
+# Phase-Locked Loop (PLL) frequency synthesizers
+#
+# CONFIG_ADF4350 is not set
+# CONFIG_ADF4371 is not set
+# CONFIG_ADF4377 is not set
+# CONFIG_ADMV1013 is not set
+# CONFIG_ADMV1014 is not set
+# CONFIG_ADMV4420 is not set
+# CONFIG_ADRF6780 is not set
+# end of Phase-Locked Loop (PLL) frequency synthesizers
+# end of Frequency Synthesizers DDS/PLL
+
+#
+# Digital gyroscope sensors
+#
+# CONFIG_ADIS16080 is not set
+# CONFIG_ADIS16130 is not set
+# CONFIG_ADIS16136 is not set
+# CONFIG_ADIS16260 is not set
+# CONFIG_ADXRS290 is not set
+# CONFIG_ADXRS450 is not set
+# CONFIG_BMG160 is not set
+# CONFIG_FXAS21002C is not set
+# CONFIG_MPU3050_I2C is not set
+# CONFIG_IIO_ST_GYRO_3AXIS is not set
+# CONFIG_ITG3200 is not set
+# end of Digital gyroscope sensors
+
+#
+# Health Sensors
+#
+
+#
+# Heart Rate Monitors
+#
+# CONFIG_AFE4403 is not set
+# CONFIG_AFE4404 is not set
+# CONFIG_MAX30100 is not set
+# CONFIG_MAX30102 is not set
+# end of Heart Rate Monitors
+# end of Health Sensors
+
+#
+# Humidity sensors
+#
+# CONFIG_AM2315 is not set
+# CONFIG_DHT11 is not set
+# CONFIG_HDC100X is not set
+# CONFIG_HDC2010 is not set
+# CONFIG_HDC3020 is not set
+# CONFIG_HTS221 is not set
+# CONFIG_HTU21 is not set
+# CONFIG_SI7005 is not set
+# CONFIG_SI7020 is not set
+# end of Humidity sensors
+
+#
+# Inertial measurement units
+#
+# CONFIG_ADIS16400 is not set
+# CONFIG_ADIS16460 is not set
+# CONFIG_ADIS16475 is not set
+# CONFIG_ADIS16480 is not set
+# CONFIG_BMI160_I2C is not set
+# CONFIG_BMI160_SPI is not set
+# CONFIG_BMI323_I2C is not set
+# CONFIG_BMI323_SPI is not set
+# CONFIG_BOSCH_BNO055_SERIAL is not set
+# CONFIG_BOSCH_BNO055_I2C is not set
+# CONFIG_FXOS8700_I2C is not set
+# CONFIG_FXOS8700_SPI is not set
+# CONFIG_KMX61 is not set
+# CONFIG_INV_ICM42600_I2C is not set
+# CONFIG_INV_ICM42600_SPI is not set
+# CONFIG_INV_MPU6050_I2C is not set
+# CONFIG_INV_MPU6050_SPI is not set
+# CONFIG_IIO_ST_LSM6DSX is not set
+# CONFIG_IIO_ST_LSM9DS0 is not set
+# end of Inertial measurement units
+
+#
+# Light sensors
+#
+# CONFIG_ADJD_S311 is not set
+# CONFIG_ADUX1020 is not set
+# CONFIG_AL3010 is not set
+# CONFIG_AL3320A is not set
+# CONFIG_APDS9300 is not set
+# CONFIG_APDS9960 is not set
+# CONFIG_AS73211 is not set
+# CONFIG_BH1750 is not set
+# CONFIG_BH1780 is not set
+# CONFIG_CM32181 is not set
+# CONFIG_CM3232 is not set
+# CONFIG_CM3323 is not set
+# CONFIG_CM3605 is not set
+# CONFIG_CM36651 is not set
+CONFIG_IIO_CROS_EC_LIGHT_PROX=m
+# CONFIG_GP2AP002 is not set
+# CONFIG_GP2AP020A00F is not set
+CONFIG_SENSORS_ISL29018=m
+# CONFIG_SENSORS_ISL29028 is not set
+# CONFIG_ISL29125 is not set
+# CONFIG_ISL76682 is not set
+# CONFIG_JSA1212 is not set
+# CONFIG_ROHM_BU27008 is not set
+# CONFIG_ROHM_BU27034 is not set
+# CONFIG_RPR0521 is not set
+# CONFIG_LTR390 is not set
+# CONFIG_LTR501 is not set
+# CONFIG_LTRF216A is not set
+# CONFIG_LV0104CS is not set
+# CONFIG_MAX44000 is not set
+# CONFIG_MAX44009 is not set
+# CONFIG_NOA1305 is not set
+# CONFIG_OPT3001 is not set
+# CONFIG_OPT4001 is not set
+# CONFIG_PA12203001 is not set
+# CONFIG_SI1133 is not set
+# CONFIG_SI1145 is not set
+# CONFIG_STK3310 is not set
+# CONFIG_ST_UVIS25 is not set
+# CONFIG_TCS3414 is not set
+# CONFIG_TCS3472 is not set
+CONFIG_SENSORS_TSL2563=m
+CONFIG_TSL2583=m
+# CONFIG_TSL2591 is not set
+# CONFIG_TSL2772 is not set
+# CONFIG_TSL4531 is not set
+# CONFIG_US5182D is not set
+# CONFIG_VCNL4000 is not set
+# CONFIG_VCNL4035 is not set
+# CONFIG_VEML6030 is not set
+# CONFIG_VEML6070 is not set
+# CONFIG_VEML6075 is not set
+# CONFIG_VL6180 is not set
+# CONFIG_ZOPT2201 is not set
+# end of Light sensors
+
+#
+# Magnetometer sensors
+#
+CONFIG_AK8974=m
+CONFIG_AK8975=m
+# CONFIG_AK09911 is not set
+# CONFIG_BMC150_MAGN_I2C is not set
+# CONFIG_BMC150_MAGN_SPI is not set
+# CONFIG_MAG3110 is not set
+# CONFIG_MMC35240 is not set
+# CONFIG_IIO_ST_MAGN_3AXIS is not set
+# CONFIG_SENSORS_HMC5843_I2C is not set
+# CONFIG_SENSORS_HMC5843_SPI is not set
+# CONFIG_SENSORS_RM3100_I2C is not set
+# CONFIG_SENSORS_RM3100_SPI is not set
+# CONFIG_TI_TMAG5273 is not set
+# CONFIG_YAMAHA_YAS530 is not set
+# end of Magnetometer sensors
+
+#
+# Multiplexers
+#
+CONFIG_IIO_MUX=y
+# end of Multiplexers
+
+#
+# Inclinometer sensors
+#
+# end of Inclinometer sensors
+
+#
+# Triggers - standalone
+#
+CONFIG_IIO_HRTIMER_TRIGGER=m
+CONFIG_IIO_INTERRUPT_TRIGGER=m
+CONFIG_IIO_TIGHTLOOP_TRIGGER=m
+CONFIG_IIO_SYSFS_TRIGGER=m
+# end of Triggers - standalone
+
+#
+# Linear and angular position sensors
+#
+# end of Linear and angular position sensors
+
+#
+# Digital potentiometers
+#
+# CONFIG_AD5110 is not set
+# CONFIG_AD5272 is not set
+# CONFIG_DS1803 is not set
+# CONFIG_MAX5432 is not set
+# CONFIG_MAX5481 is not set
+# CONFIG_MAX5487 is not set
+# CONFIG_MCP4018 is not set
+# CONFIG_MCP4131 is not set
+# CONFIG_MCP4531 is not set
+# CONFIG_MCP41010 is not set
+# CONFIG_TPL0102 is not set
+# CONFIG_X9250 is not set
+# end of Digital potentiometers
+
+#
+# Digital potentiostats
+#
+# CONFIG_LMP91000 is not set
+# end of Digital potentiostats
+
+#
+# Pressure sensors
+#
+# CONFIG_ABP060MG is not set
+# CONFIG_ROHM_BM1390 is not set
+# CONFIG_BMP280 is not set
+CONFIG_IIO_CROS_EC_BARO=m
+# CONFIG_DLHL60D is not set
+# CONFIG_DPS310 is not set
+# CONFIG_HP03 is not set
+# CONFIG_HSC030PA is not set
+# CONFIG_ICP10100 is not set
+# CONFIG_MPL115_I2C is not set
+# CONFIG_MPL115_SPI is not set
+# CONFIG_MPL3115 is not set
+# CONFIG_MPRLS0025PA is not set
+# CONFIG_MS5611 is not set
+# CONFIG_MS5637 is not set
+# CONFIG_IIO_ST_PRESS is not set
+# CONFIG_T5403 is not set
+# CONFIG_HP206C is not set
+# CONFIG_ZPA2326 is not set
+# end of Pressure sensors
+
+#
+# Lightning sensors
+#
+# CONFIG_AS3935 is not set
+# end of Lightning sensors
+
+#
+# Proximity and distance sensors
+#
+CONFIG_CROS_EC_MKBP_PROXIMITY=m
+# CONFIG_IRSD200 is not set
+# CONFIG_ISL29501 is not set
+# CONFIG_LIDAR_LITE_V2 is not set
+# CONFIG_MB1232 is not set
+# CONFIG_PING is not set
+# CONFIG_RFD77402 is not set
+# CONFIG_SRF04 is not set
+# CONFIG_SX9310 is not set
+# CONFIG_SX9324 is not set
+# CONFIG_SX9360 is not set
+# CONFIG_SX9500 is not set
+# CONFIG_SRF08 is not set
+# CONFIG_VCNL3020 is not set
+# CONFIG_VL53L0X_I2C is not set
+# end of Proximity and distance sensors
+
+#
+# Resolver to digital converters
+#
+CONFIG_AD2S90=m
+CONFIG_AD2S1200=m
+# CONFIG_AD2S1210 is not set
+# end of Resolver to digital converters
+
+#
+# Temperature sensors
+#
+# CONFIG_LTC2983 is not set
+# CONFIG_MAXIM_THERMOCOUPLE is not set
+# CONFIG_MLX90614 is not set
+# CONFIG_MLX90632 is not set
+# CONFIG_MLX90635 is not set
+# CONFIG_TMP006 is not set
+# CONFIG_TMP007 is not set
+# CONFIG_TMP117 is not set
+# CONFIG_TSYS01 is not set
+# CONFIG_TSYS02D is not set
+# CONFIG_MAX30208 is not set
+# CONFIG_MAX31856 is not set
+# CONFIG_MAX31865 is not set
+# CONFIG_MCP9600 is not set
+# end of Temperature sensors
+
+# CONFIG_NTB is not set
+CONFIG_PWM=y
+CONFIG_PWM_SYSFS=y
+# CONFIG_PWM_ATMEL_TCB is not set
+# CONFIG_PWM_CLK is not set
+CONFIG_PWM_CROS_EC=y
+# CONFIG_PWM_DWC is not set
+# CONFIG_PWM_FSL_FTM is not set
+# CONFIG_PWM_PCA9685 is not set
+CONFIG_PWM_ROCKCHIP=y
+# CONFIG_PWM_XILINX is not set
+
+#
+# IRQ chip support
+#
+CONFIG_IRQCHIP=y
+CONFIG_ARM_GIC=y
+CONFIG_ARM_GIC_MAX_NR=1
+CONFIG_ARM_GIC_V2M=y
+CONFIG_ARM_GIC_V3=y
+CONFIG_ARM_GIC_V3_ITS=y
+CONFIG_ARM_GIC_V3_ITS_PCI=y
+# CONFIG_AL_FIC is not set
+# CONFIG_XILINX_INTC is not set
+CONFIG_PARTITION_PERCPU=y
+# end of IRQ chip support
+
+# CONFIG_IPACK_BUS is not set
+CONFIG_ARCH_HAS_RESET_CONTROLLER=y
+CONFIG_RESET_CONTROLLER=y
+# CONFIG_RESET_TI_SYSCON is not set
+# CONFIG_RESET_TI_TPS380X is not set
+
+#
+# PHY Subsystem
+#
+CONFIG_GENERIC_PHY=y
+CONFIG_GENERIC_PHY_MIPI_DPHY=y
+# CONFIG_PHY_CAN_TRANSCEIVER is not set
+
+#
+# PHY drivers for Broadcom platforms
+#
+# CONFIG_BCM_KONA_USB2_PHY is not set
+# end of PHY drivers for Broadcom platforms
+
+# CONFIG_PHY_CADENCE_TORRENT is not set
+# CONFIG_PHY_CADENCE_DPHY is not set
+# CONFIG_PHY_CADENCE_DPHY_RX is not set
+# CONFIG_PHY_CADENCE_SIERRA is not set
+# CONFIG_PHY_CADENCE_SALVO is not set
+# CONFIG_PHY_PXA_28NM_HSIC is not set
+# CONFIG_PHY_PXA_28NM_USB2 is not set
+# CONFIG_PHY_LAN966X_SERDES is not set
+# CONFIG_PHY_CPCAP_USB is not set
+# CONFIG_PHY_MAPPHONE_MDM6600 is not set
+# CONFIG_PHY_OCELOT_SERDES is not set
+# CONFIG_PHY_QCOM_USB_HS is not set
+# CONFIG_PHY_QCOM_USB_HSIC is not set
+CONFIG_PHY_ROCKCHIP_DP=y
+# CONFIG_PHY_ROCKCHIP_DPHY_RX0 is not set
+CONFIG_PHY_ROCKCHIP_EMMC=y
+CONFIG_PHY_ROCKCHIP_INNO_HDMI=y
+CONFIG_PHY_ROCKCHIP_INNO_USB2=y
+# CONFIG_PHY_ROCKCHIP_INNO_CSIDPHY is not set
+# CONFIG_PHY_ROCKCHIP_INNO_DSIDPHY is not set
+# CONFIG_PHY_ROCKCHIP_NANENG_COMBO_PHY is not set
+CONFIG_PHY_ROCKCHIP_PCIE=y
+# CONFIG_PHY_ROCKCHIP_SNPS_PCIE3 is not set
+CONFIG_PHY_ROCKCHIP_TYPEC=y
+CONFIG_PHY_ROCKCHIP_USB=m
+CONFIG_PHY_SAMSUNG_USB2=m
+# CONFIG_PHY_TUSB1210 is not set
+# end of PHY Subsystem
+
+CONFIG_POWERCAP=y
+CONFIG_IDLE_INJECT=y
+# CONFIG_DTPM is not set
+# CONFIG_MCB is not set
+
+#
+# Performance monitor support
+#
+# CONFIG_ARM_CCI_PMU is not set
+# CONFIG_ARM_CCN is not set
+# CONFIG_ARM_CMN is not set
+CONFIG_ARM_PMU=y
+# CONFIG_ARM_SMMU_V3_PMU is not set
+CONFIG_ARM_PMUV3=y
+# CONFIG_ARM_DSU_PMU is not set
+# CONFIG_ARM_SPE_PMU is not set
+# CONFIG_HISI_PCIE_PMU is not set
+# CONFIG_HNS3_PMU is not set
+# CONFIG_DWC_PCIE_PMU is not set
+# CONFIG_ARM_CORESIGHT_PMU_ARCH_SYSTEM_PMU is not set
+# end of Performance monitor support
+
+CONFIG_RAS=y
+# CONFIG_USB4 is not set
+
+#
+# Android
+#
+# CONFIG_ANDROID_BINDER_IPC is not set
+# end of Android
+
+# CONFIG_LIBNVDIMM is not set
+# CONFIG_DAX is not set
+CONFIG_NVMEM=y
+CONFIG_NVMEM_SYSFS=y
+CONFIG_NVMEM_LAYOUTS=y
+
+#
+# Layout Types
+#
+# CONFIG_NVMEM_LAYOUT_SL28_VPD is not set
+# CONFIG_NVMEM_LAYOUT_ONIE_TLV is not set
+# end of Layout Types
+
+# CONFIG_NVMEM_RMEM is not set
+CONFIG_NVMEM_ROCKCHIP_EFUSE=m
+CONFIG_NVMEM_ROCKCHIP_OTP=m
+# CONFIG_NVMEM_SPMI_SDAM is not set
+
+#
+# HW tracing support
+#
+# CONFIG_STM is not set
+# CONFIG_INTEL_TH is not set
+# CONFIG_HISI_PTT is not set
+# end of HW tracing support
+
+# CONFIG_FPGA is not set
+# CONFIG_FSI is not set
+# CONFIG_TEE is not set
+CONFIG_MULTIPLEXER=y
+
+#
+# Multiplexer drivers
+#
+# CONFIG_MUX_ADG792A is not set
+# CONFIG_MUX_ADGS1408 is not set
+# CONFIG_MUX_GPIO is not set
+# CONFIG_MUX_MMIO is not set
+# end of Multiplexer drivers
+
+CONFIG_PM_OPP=y
+# CONFIG_SIOX is not set
+# CONFIG_SLIMBUS is not set
+# CONFIG_INTERCONNECT is not set
+# CONFIG_COUNTER is not set
+# CONFIG_MOST is not set
+# CONFIG_PECI is not set
+# CONFIG_HTE is not set
+# CONFIG_CDX_BUS is not set
+# end of Device Drivers
+
+#
+# File systems
+#
+CONFIG_DCACHE_WORD_ACCESS=y
+# CONFIG_VALIDATE_FS_PARSER is not set
+CONFIG_FS_IOMAP=y
+CONFIG_FS_STACK=y
+CONFIG_BUFFER_HEAD=y
+CONFIG_LEGACY_DIRECT_IO=y
+# CONFIG_EXT2_FS is not set
+# CONFIG_EXT3_FS is not set
+CONFIG_EXT4_FS=y
+CONFIG_EXT4_USE_FOR_EXT2=y
+CONFIG_EXT4_FS_POSIX_ACL=y
+CONFIG_EXT4_FS_SECURITY=y
+# CONFIG_EXT4_DEBUG is not set
+CONFIG_JBD2=y
+# CONFIG_JBD2_DEBUG is not set
+CONFIG_FS_MBCACHE=y
+# CONFIG_REISERFS_FS is not set
+# CONFIG_JFS_FS is not set
+CONFIG_XFS_FS=m
+CONFIG_XFS_SUPPORT_V4=y
+# CONFIG_XFS_SUPPORT_ASCII_CI is not set
+CONFIG_XFS_QUOTA=y
+CONFIG_XFS_POSIX_ACL=y
+CONFIG_XFS_RT=y
+# CONFIG_XFS_ONLINE_SCRUB is not set
+# CONFIG_XFS_WARN is not set
+# CONFIG_XFS_DEBUG is not set
+# CONFIG_GFS2_FS is not set
+# CONFIG_OCFS2_FS is not set
+CONFIG_BTRFS_FS=m
+CONFIG_BTRFS_FS_POSIX_ACL=y
+# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set
+# CONFIG_BTRFS_DEBUG is not set
+# CONFIG_BTRFS_ASSERT is not set
+# CONFIG_BTRFS_FS_REF_VERIFY is not set
+# CONFIG_NILFS2_FS is not set
+CONFIG_F2FS_FS=y
+CONFIG_F2FS_STAT_FS=y
+CONFIG_F2FS_FS_XATTR=y
+CONFIG_F2FS_FS_POSIX_ACL=y
+CONFIG_F2FS_FS_SECURITY=y
+# CONFIG_F2FS_CHECK_FS is not set
+# CONFIG_F2FS_FAULT_INJECTION is not set
+CONFIG_F2FS_FS_COMPRESSION=y
+CONFIG_F2FS_FS_LZO=y
+CONFIG_F2FS_FS_LZORLE=y
+CONFIG_F2FS_FS_LZ4=y
+CONFIG_F2FS_FS_LZ4HC=y
+CONFIG_F2FS_FS_ZSTD=y
+# CONFIG_F2FS_IOSTAT is not set
+# CONFIG_F2FS_UNFAIR_RWSEM is not set
+# CONFIG_BCACHEFS_FS is not set
+CONFIG_FS_POSIX_ACL=y
+CONFIG_EXPORTFS=y
+CONFIG_EXPORTFS_BLOCK_OPS=y
+CONFIG_FILE_LOCKING=y
+CONFIG_FS_ENCRYPTION=y
+CONFIG_FS_ENCRYPTION_ALGS=y
+CONFIG_FS_VERITY=y
+CONFIG_FS_VERITY_BUILTIN_SIGNATURES=y
+CONFIG_FSNOTIFY=y
+CONFIG_DNOTIFY=y
+CONFIG_INOTIFY_USER=y
+CONFIG_FANOTIFY=y
+# CONFIG_FANOTIFY_ACCESS_PERMISSIONS is not set
+# CONFIG_QUOTA is not set
+# CONFIG_QUOTA_NETLINK_INTERFACE is not set
+CONFIG_QUOTACTL=y
+# CONFIG_AUTOFS_FS is not set
+CONFIG_FUSE_FS=m
+CONFIG_CUSE=m
+CONFIG_VIRTIO_FS=m
+CONFIG_OVERLAY_FS=m
+# CONFIG_OVERLAY_FS_REDIRECT_DIR is not set
+CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y
+# CONFIG_OVERLAY_FS_INDEX is not set
+# CONFIG_OVERLAY_FS_XINO_AUTO is not set
+# CONFIG_OVERLAY_FS_METACOPY is not set
+# CONFIG_OVERLAY_FS_DEBUG is not set
+
+#
+# Caches
+#
+CONFIG_NETFS_SUPPORT=m
+# CONFIG_NETFS_STATS is not set
+# CONFIG_FSCACHE is not set
+# end of Caches
+
+#
+# CD-ROM/DVD Filesystems
+#
+CONFIG_ISO9660_FS=m
+CONFIG_JOLIET=y
+CONFIG_ZISOFS=y
+CONFIG_UDF_FS=m
+# end of CD-ROM/DVD Filesystems
+
+#
+# DOS/FAT/EXFAT/NT Filesystems
+#
+CONFIG_FAT_FS=m
+CONFIG_MSDOS_FS=m
+CONFIG_VFAT_FS=m
+CONFIG_FAT_DEFAULT_CODEPAGE=437
+CONFIG_FAT_DEFAULT_IOCHARSET="ascii"
+CONFIG_FAT_DEFAULT_UTF8=y
+CONFIG_EXFAT_FS=m
+CONFIG_EXFAT_DEFAULT_IOCHARSET="utf8"
+CONFIG_NTFS_FS=m
+# CONFIG_NTFS_DEBUG is not set
+CONFIG_NTFS_RW=y
+CONFIG_NTFS3_FS=m
+# CONFIG_NTFS3_64BIT_CLUSTER is not set
+# CONFIG_NTFS3_LZX_XPRESS is not set
+# CONFIG_NTFS3_FS_POSIX_ACL is not set
+# end of DOS/FAT/EXFAT/NT Filesystems
+
+#
+# Pseudo filesystems
+#
+CONFIG_PROC_FS=y
+# CONFIG_PROC_KCORE is not set
+CONFIG_PROC_SYSCTL=y
+CONFIG_PROC_PAGE_MONITOR=y
+CONFIG_PROC_CHILDREN=y
+CONFIG_KERNFS=y
+CONFIG_SYSFS=y
+CONFIG_TMPFS=y
+CONFIG_TMPFS_POSIX_ACL=y
+CONFIG_TMPFS_XATTR=y
+# CONFIG_TMPFS_INODE64 is not set
+# CONFIG_TMPFS_QUOTA is not set
+CONFIG_ARCH_SUPPORTS_HUGETLBFS=y
+# CONFIG_HUGETLBFS is not set
+CONFIG_ARCH_HAS_GIGANTIC_PAGE=y
+CONFIG_CONFIGFS_FS=m
+CONFIG_EFIVAR_FS=m
+# end of Pseudo filesystems
+
+CONFIG_MISC_FILESYSTEMS=y
+# CONFIG_ORANGEFS_FS is not set
+# CONFIG_ADFS_FS is not set
+# CONFIG_AFFS_FS is not set
+CONFIG_ECRYPT_FS=m
+# CONFIG_ECRYPT_FS_MESSAGING is not set
+CONFIG_HFS_FS=m
+CONFIG_HFSPLUS_FS=m
+# CONFIG_BEFS_FS is not set
+# CONFIG_BFS_FS is not set
+# CONFIG_EFS_FS is not set
+# CONFIG_CRAMFS is not set
+CONFIG_SQUASHFS=m
+CONFIG_SQUASHFS_FILE_CACHE=y
+# CONFIG_SQUASHFS_FILE_DIRECT is not set
+CONFIG_SQUASHFS_DECOMP_SINGLE=y
+# CONFIG_SQUASHFS_CHOICE_DECOMP_BY_MOUNT is not set
+CONFIG_SQUASHFS_COMPILE_DECOMP_SINGLE=y
+# CONFIG_SQUASHFS_COMPILE_DECOMP_MULTI is not set
+# CONFIG_SQUASHFS_COMPILE_DECOMP_MULTI_PERCPU is not set
+CONFIG_SQUASHFS_XATTR=y
+CONFIG_SQUASHFS_ZLIB=y
+CONFIG_SQUASHFS_LZ4=y
+CONFIG_SQUASHFS_LZO=y
+CONFIG_SQUASHFS_XZ=y
+CONFIG_SQUASHFS_ZSTD=y
+# CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set
+# CONFIG_SQUASHFS_EMBEDDED is not set
+CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3
+# CONFIG_VXFS_FS is not set
+CONFIG_MINIX_FS=m
+# CONFIG_OMFS_FS is not set
+# CONFIG_HPFS_FS is not set
+# CONFIG_QNX4FS_FS is not set
+# CONFIG_QNX6FS_FS is not set
+# CONFIG_ROMFS_FS is not set
+CONFIG_PSTORE=m
+CONFIG_PSTORE_DEFAULT_KMSG_BYTES=10240
+CONFIG_PSTORE_COMPRESS=y
+# CONFIG_PSTORE_CONSOLE is not set
+# CONFIG_PSTORE_PMSG is not set
+# CONFIG_PSTORE_RAM is not set
+# CONFIG_PSTORE_BLK is not set
+# CONFIG_SYSV_FS is not set
+# CONFIG_UFS_FS is not set
+# CONFIG_EROFS_FS is not set
+CONFIG_NETWORK_FILESYSTEMS=y
+CONFIG_NFS_FS=m
+# CONFIG_NFS_V2 is not set
+CONFIG_NFS_V3=m
+CONFIG_NFS_V3_ACL=y
+CONFIG_NFS_V4=m
+# CONFIG_NFS_SWAP is not set
+# CONFIG_NFS_V4_1 is not set
+# CONFIG_NFS_FSCACHE is not set
+# CONFIG_NFS_USE_LEGACY_DNS is not set
+CONFIG_NFS_USE_KERNEL_DNS=y
+CONFIG_NFS_DISABLE_UDP_SUPPORT=y
+CONFIG_NFSD=m
+# CONFIG_NFSD_V2 is not set
+CONFIG_NFSD_V3_ACL=y
+CONFIG_NFSD_V4=y
+# CONFIG_NFSD_BLOCKLAYOUT is not set
+# CONFIG_NFSD_SCSILAYOUT is not set
+# CONFIG_NFSD_FLEXFILELAYOUT is not set
+# CONFIG_NFSD_V4_SECURITY_LABEL is not set
+# CONFIG_NFSD_LEGACY_CLIENT_TRACKING is not set
+CONFIG_GRACE_PERIOD=m
+CONFIG_LOCKD=m
+CONFIG_LOCKD_V4=y
+CONFIG_NFS_ACL_SUPPORT=m
+CONFIG_NFS_COMMON=y
+CONFIG_SUNRPC=m
+CONFIG_SUNRPC_GSS=m
+CONFIG_RPCSEC_GSS_KRB5=m
+CONFIG_RPCSEC_GSS_KRB5_ENCTYPES_AES_SHA1=y
+# CONFIG_RPCSEC_GSS_KRB5_ENCTYPES_AES_SHA2 is not set
+# CONFIG_SUNRPC_DEBUG is not set
+# CONFIG_CEPH_FS is not set
+CONFIG_CIFS=m
+# CONFIG_CIFS_STATS2 is not set
+CONFIG_CIFS_ALLOW_INSECURE_LEGACY=y
+CONFIG_CIFS_UPCALL=y
+CONFIG_CIFS_XATTR=y
+CONFIG_CIFS_POSIX=y
+CONFIG_CIFS_DEBUG=y
+# CONFIG_CIFS_DEBUG2 is not set
+# CONFIG_CIFS_DEBUG_DUMP_KEYS is not set
+CONFIG_CIFS_DFS_UPCALL=y
+CONFIG_CIFS_SWN_UPCALL=y
+CONFIG_SMB_SERVER=m
+CONFIG_SMB_SERVER_CHECK_CAP_NET_ADMIN=y
+# CONFIG_SMB_SERVER_KERBEROS5 is not set
+CONFIG_SMBFS=m
+# CONFIG_CODA_FS is not set
+# CONFIG_AFS_FS is not set
+CONFIG_NLS=y
+CONFIG_NLS_DEFAULT="utf8"
+CONFIG_NLS_CODEPAGE_437=m
+# CONFIG_NLS_CODEPAGE_737 is not set
+# CONFIG_NLS_CODEPAGE_775 is not set
+# CONFIG_NLS_CODEPAGE_850 is not set
+CONFIG_NLS_CODEPAGE_852=m
+CONFIG_NLS_CODEPAGE_855=m
+# CONFIG_NLS_CODEPAGE_857 is not set
+# CONFIG_NLS_CODEPAGE_860 is not set
+# CONFIG_NLS_CODEPAGE_861 is not set
+# CONFIG_NLS_CODEPAGE_862 is not set
+# CONFIG_NLS_CODEPAGE_863 is not set
+# CONFIG_NLS_CODEPAGE_864 is not set
+# CONFIG_NLS_CODEPAGE_865 is not set
+CONFIG_NLS_CODEPAGE_866=m
+# CONFIG_NLS_CODEPAGE_869 is not set
+# CONFIG_NLS_CODEPAGE_936 is not set
+# CONFIG_NLS_CODEPAGE_950 is not set
+# CONFIG_NLS_CODEPAGE_932 is not set
+# CONFIG_NLS_CODEPAGE_949 is not set
+# CONFIG_NLS_CODEPAGE_874 is not set
+# CONFIG_NLS_ISO8859_8 is not set
+CONFIG_NLS_CODEPAGE_1250=m
+CONFIG_NLS_CODEPAGE_1251=m
+CONFIG_NLS_ASCII=m
+CONFIG_NLS_ISO8859_1=m
+CONFIG_NLS_ISO8859_2=m
+# CONFIG_NLS_ISO8859_3 is not set
+# CONFIG_NLS_ISO8859_4 is not set
+CONFIG_NLS_ISO8859_5=m
+# CONFIG_NLS_ISO8859_6 is not set
+# CONFIG_NLS_ISO8859_7 is not set
+# CONFIG_NLS_ISO8859_9 is not set
+# CONFIG_NLS_ISO8859_13 is not set
+# CONFIG_NLS_ISO8859_14 is not set
+# CONFIG_NLS_ISO8859_15 is not set
+CONFIG_NLS_KOI8_R=m
+# CONFIG_NLS_KOI8_U is not set
+# CONFIG_NLS_MAC_ROMAN is not set
+# CONFIG_NLS_MAC_CELTIC is not set
+# CONFIG_NLS_MAC_CENTEURO is not set
+# CONFIG_NLS_MAC_CROATIAN is not set
+# CONFIG_NLS_MAC_CYRILLIC is not set
+# CONFIG_NLS_MAC_GAELIC is not set
+# CONFIG_NLS_MAC_GREEK is not set
+# CONFIG_NLS_MAC_ICELAND is not set
+# CONFIG_NLS_MAC_INUIT is not set
+# CONFIG_NLS_MAC_ROMANIAN is not set
+# CONFIG_NLS_MAC_TURKISH is not set
+CONFIG_NLS_UTF8=m
+CONFIG_NLS_UCS2_UTILS=m
+CONFIG_DLM=m
+# CONFIG_DLM_DEBUG is not set
+# CONFIG_UNICODE is not set
+CONFIG_IO_WQ=y
+# end of File systems
+
+#
+# Security options
+#
+CONFIG_KEYS=y
+# CONFIG_KEYS_REQUEST_CACHE is not set
+CONFIG_PERSISTENT_KEYRINGS=y
+CONFIG_TRUSTED_KEYS=m
+CONFIG_TRUSTED_KEYS_TPM=y
+CONFIG_ENCRYPTED_KEYS=y
+# CONFIG_USER_DECRYPTED_DATA is not set
+CONFIG_KEY_DH_OPERATIONS=y
+# CONFIG_SECURITY_DMESG_RESTRICT is not set
+CONFIG_SECURITY=y
+# CONFIG_SECURITYFS is not set
+# CONFIG_SECURITY_NETWORK is not set
+# CONFIG_SECURITY_PATH is not set
+# CONFIG_HARDENED_USERCOPY is not set
+# CONFIG_FORTIFY_SOURCE is not set
+# CONFIG_STATIC_USERMODEHELPER is not set
+# CONFIG_SECURITY_SMACK is not set
+# CONFIG_SECURITY_TOMOYO is not set
+# CONFIG_SECURITY_APPARMOR is not set
+# CONFIG_SECURITY_LOADPIN is not set
+# CONFIG_SECURITY_YAMA is not set
+# CONFIG_SECURITY_SAFESETID is not set
+CONFIG_SECURITY_LOCKDOWN_LSM=y
+# CONFIG_SECURITY_LOCKDOWN_LSM_EARLY is not set
+CONFIG_LOCK_DOWN_KERNEL_FORCE_NONE=y
+# CONFIG_LOCK_DOWN_KERNEL_FORCE_INTEGRITY is not set
+# CONFIG_LOCK_DOWN_KERNEL_FORCE_CONFIDENTIALITY is not set
+# CONFIG_SECURITY_LANDLOCK is not set
+# CONFIG_INTEGRITY is not set
+# CONFIG_IMA_SECURE_AND_OR_TRUSTED_BOOT is not set
+CONFIG_DEFAULT_SECURITY_DAC=y
+CONFIG_LSM=""
+
+#
+# Kernel hardening options
+#
+
+#
+# Memory initialization
+#
+CONFIG_CC_HAS_AUTO_VAR_INIT_PATTERN=y
+CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO_BARE=y
+CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO=y
+CONFIG_INIT_STACK_NONE=y
+# CONFIG_INIT_STACK_ALL_PATTERN is not set
+# CONFIG_INIT_STACK_ALL_ZERO is not set
+# CONFIG_INIT_ON_ALLOC_DEFAULT_ON is not set
+# CONFIG_INIT_ON_FREE_DEFAULT_ON is not set
+CONFIG_CC_HAS_ZERO_CALL_USED_REGS=y
+# CONFIG_ZERO_CALL_USED_REGS is not set
+# end of Memory initialization
+
+#
+# Hardening of kernel data structures
+#
+# CONFIG_LIST_HARDENED is not set
+# CONFIG_BUG_ON_DATA_CORRUPTION is not set
+# end of Hardening of kernel data structures
+
+CONFIG_RANDSTRUCT_NONE=y
+# end of Kernel hardening options
+# end of Security options
+
+CONFIG_XOR_BLOCKS=m
+CONFIG_CRYPTO=y
+
+#
+# Crypto core or helper
+#
+# CONFIG_CRYPTO_FIPS is not set
+CONFIG_CRYPTO_ALGAPI=y
+CONFIG_CRYPTO_ALGAPI2=y
+CONFIG_CRYPTO_AEAD=m
+CONFIG_CRYPTO_AEAD2=y
+CONFIG_CRYPTO_SIG2=y
+CONFIG_CRYPTO_SKCIPHER=y
+CONFIG_CRYPTO_SKCIPHER2=y
+CONFIG_CRYPTO_HASH=y
+CONFIG_CRYPTO_HASH2=y
+CONFIG_CRYPTO_RNG=y
+CONFIG_CRYPTO_RNG2=y
+CONFIG_CRYPTO_RNG_DEFAULT=m
+CONFIG_CRYPTO_AKCIPHER2=y
+CONFIG_CRYPTO_AKCIPHER=y
+CONFIG_CRYPTO_KPP2=y
+CONFIG_CRYPTO_KPP=y
+CONFIG_CRYPTO_ACOMP2=y
+CONFIG_CRYPTO_MANAGER=y
+CONFIG_CRYPTO_MANAGER2=y
+CONFIG_CRYPTO_USER=m
+# CONFIG_CRYPTO_MANAGER_DISABLE_TESTS is not set
+CONFIG_CRYPTO_NULL=m
+CONFIG_CRYPTO_NULL2=m
+CONFIG_CRYPTO_PCRYPT=m
+CONFIG_CRYPTO_CRYPTD=m
+CONFIG_CRYPTO_AUTHENC=m
+# CONFIG_CRYPTO_TEST is not set
+CONFIG_CRYPTO_ENGINE=m
+# end of Crypto core or helper
+
+#
+# Public-key cryptography
+#
+CONFIG_CRYPTO_RSA=y
+CONFIG_CRYPTO_DH=y
+# CONFIG_CRYPTO_DH_RFC7919_GROUPS is not set
+CONFIG_CRYPTO_ECC=m
+CONFIG_CRYPTO_ECDH=m
+# CONFIG_CRYPTO_ECDSA is not set
+CONFIG_CRYPTO_ECRDSA=m
+# CONFIG_CRYPTO_SM2 is not set
+CONFIG_CRYPTO_CURVE25519=m
+# end of Public-key cryptography
+
+#
+# Block ciphers
+#
+CONFIG_CRYPTO_AES=y
+# CONFIG_CRYPTO_AES_TI is not set
+# CONFIG_CRYPTO_ANUBIS is not set
+# CONFIG_CRYPTO_ARIA is not set
+CONFIG_CRYPTO_BLOWFISH=m
+CONFIG_CRYPTO_BLOWFISH_COMMON=m
+# CONFIG_CRYPTO_CAMELLIA is not set
+# CONFIG_CRYPTO_CAST5 is not set
+# CONFIG_CRYPTO_CAST6 is not set
+CONFIG_CRYPTO_DES=m
+# CONFIG_CRYPTO_FCRYPT is not set
+# CONFIG_CRYPTO_KHAZAD is not set
+# CONFIG_CRYPTO_SEED is not set
+CONFIG_CRYPTO_SERPENT=m
+CONFIG_CRYPTO_SM4=m
+# CONFIG_CRYPTO_SM4_GENERIC is not set
+# CONFIG_CRYPTO_TEA is not set
+CONFIG_CRYPTO_TWOFISH=m
+CONFIG_CRYPTO_TWOFISH_COMMON=m
+# end of Block ciphers
+
+#
+# Length-preserving ciphers and modes
+#
+CONFIG_CRYPTO_ADIANTUM=m
+CONFIG_CRYPTO_ARC4=m
+CONFIG_CRYPTO_CHACHA20=m
+CONFIG_CRYPTO_CBC=y
+CONFIG_CRYPTO_CTR=y
+CONFIG_CRYPTO_CTS=y
+CONFIG_CRYPTO_ECB=y
+# CONFIG_CRYPTO_HCTR2 is not set
+# CONFIG_CRYPTO_KEYWRAP is not set
+CONFIG_CRYPTO_LRW=m
+# CONFIG_CRYPTO_PCBC is not set
+CONFIG_CRYPTO_XTS=y
+CONFIG_CRYPTO_NHPOLY1305=m
+# end of Length-preserving ciphers and modes
+
+#
+# AEAD (authenticated encryption with associated data) ciphers
+#
+# CONFIG_CRYPTO_AEGIS128 is not set
+CONFIG_CRYPTO_CHACHA20POLY1305=m
+CONFIG_CRYPTO_CCM=m
+CONFIG_CRYPTO_GCM=m
+CONFIG_CRYPTO_GENIV=m
+CONFIG_CRYPTO_SEQIV=m
+CONFIG_CRYPTO_ECHAINIV=m
+CONFIG_CRYPTO_ESSIV=m
+# end of AEAD (authenticated encryption with associated data) ciphers
+
+#
+# Hashes, digests, and MACs
+#
+CONFIG_CRYPTO_BLAKE2B=m
+CONFIG_CRYPTO_CMAC=m
+CONFIG_CRYPTO_GHASH=m
+CONFIG_CRYPTO_HMAC=y
+CONFIG_CRYPTO_MD4=m
+CONFIG_CRYPTO_MD5=y
+# CONFIG_CRYPTO_MICHAEL_MIC is not set
+CONFIG_CRYPTO_POLY1305=m
+CONFIG_CRYPTO_RMD160=m
+CONFIG_CRYPTO_SHA1=y
+CONFIG_CRYPTO_SHA256=y
+CONFIG_CRYPTO_SHA512=y
+CONFIG_CRYPTO_SHA3=y
+CONFIG_CRYPTO_SM3=m
+# CONFIG_CRYPTO_SM3_GENERIC is not set
+CONFIG_CRYPTO_STREEBOG=m
+# CONFIG_CRYPTO_VMAC is not set
+CONFIG_CRYPTO_WP512=m
+# CONFIG_CRYPTO_XCBC is not set
+CONFIG_CRYPTO_XXHASH=m
+# end of Hashes, digests, and MACs
+
+#
+# CRCs (cyclic redundancy checks)
+#
+CONFIG_CRYPTO_CRC32C=y
+CONFIG_CRYPTO_CRC32=y
+CONFIG_CRYPTO_CRCT10DIF=y
+CONFIG_CRYPTO_CRC64_ROCKSOFT=y
+# end of CRCs (cyclic redundancy checks)
+
+#
+# Compression
+#
+CONFIG_CRYPTO_DEFLATE=m
+CONFIG_CRYPTO_LZO=y
+# CONFIG_CRYPTO_842 is not set
+# CONFIG_CRYPTO_LZ4 is not set
+# CONFIG_CRYPTO_LZ4HC is not set
+CONFIG_CRYPTO_ZSTD=y
+# end of Compression
+
+#
+# Random number generation
+#
+# CONFIG_CRYPTO_ANSI_CPRNG is not set
+CONFIG_CRYPTO_DRBG_MENU=y
+CONFIG_CRYPTO_DRBG_HMAC=y
+# CONFIG_CRYPTO_DRBG_HASH is not set
+# CONFIG_CRYPTO_DRBG_CTR is not set
+CONFIG_CRYPTO_DRBG=y
+CONFIG_CRYPTO_JITTERENTROPY=y
+CONFIG_CRYPTO_JITTERENTROPY_MEMORY_BLOCKS=64
+CONFIG_CRYPTO_JITTERENTROPY_MEMORY_BLOCKSIZE=32
+CONFIG_CRYPTO_JITTERENTROPY_OSR=1
+CONFIG_CRYPTO_KDF800108_CTR=y
+# end of Random number generation
+
+#
+# Userspace interface
+#
+CONFIG_CRYPTO_USER_API=m
+CONFIG_CRYPTO_USER_API_HASH=m
+CONFIG_CRYPTO_USER_API_SKCIPHER=m
+# CONFIG_CRYPTO_USER_API_RNG is not set
+# CONFIG_CRYPTO_USER_API_AEAD is not set
+CONFIG_CRYPTO_USER_API_ENABLE_OBSOLETE=y
+# CONFIG_CRYPTO_STATS is not set
+# end of Userspace interface
+
+CONFIG_CRYPTO_HASH_INFO=y
+CONFIG_CRYPTO_NHPOLY1305_NEON=m
+CONFIG_CRYPTO_CHACHA20_NEON=m
+
+#
+# Accelerated Cryptographic Algorithms for CPU (arm64)
+#
+CONFIG_CRYPTO_GHASH_ARM64_CE=m
+CONFIG_CRYPTO_POLY1305_NEON=m
+CONFIG_CRYPTO_SHA1_ARM64_CE=m
+CONFIG_CRYPTO_SHA256_ARM64=m
+CONFIG_CRYPTO_SHA2_ARM64_CE=m
+CONFIG_CRYPTO_SHA512_ARM64=m
+CONFIG_CRYPTO_SHA512_ARM64_CE=m
+CONFIG_CRYPTO_SHA3_ARM64=m
+# CONFIG_CRYPTO_SM3_NEON is not set
+CONFIG_CRYPTO_SM3_ARM64_CE=m
+# CONFIG_CRYPTO_POLYVAL_ARM64_CE is not set
+CONFIG_CRYPTO_AES_ARM64=m
+CONFIG_CRYPTO_AES_ARM64_CE=m
+CONFIG_CRYPTO_AES_ARM64_CE_BLK=m
+CONFIG_CRYPTO_AES_ARM64_NEON_BLK=m
+CONFIG_CRYPTO_AES_ARM64_BS=m
+CONFIG_CRYPTO_SM4_ARM64_CE=m
+# CONFIG_CRYPTO_SM4_ARM64_CE_BLK is not set
+# CONFIG_CRYPTO_SM4_ARM64_NEON_BLK is not set
+CONFIG_CRYPTO_AES_ARM64_CE_CCM=m
+# CONFIG_CRYPTO_SM4_ARM64_CE_CCM is not set
+# CONFIG_CRYPTO_SM4_ARM64_CE_GCM is not set
+CONFIG_CRYPTO_CRCT10DIF_ARM64_CE=m
+# end of Accelerated Cryptographic Algorithms for CPU (arm64)
+
+CONFIG_CRYPTO_HW=y
+# CONFIG_CRYPTO_DEV_ATMEL_ECC is not set
+# CONFIG_CRYPTO_DEV_ATMEL_SHA204A is not set
+# CONFIG_CRYPTO_DEV_CCP is not set
+# CONFIG_CRYPTO_DEV_NITROX_CNN55XX is not set
+# CONFIG_CRYPTO_DEV_QAT_DH895xCC is not set
+# CONFIG_CRYPTO_DEV_QAT_C3XXX is not set
+# CONFIG_CRYPTO_DEV_QAT_C62X is not set
+# CONFIG_CRYPTO_DEV_QAT_4XXX is not set
+# CONFIG_CRYPTO_DEV_QAT_420XX is not set
+# CONFIG_CRYPTO_DEV_QAT_DH895xCCVF is not set
+# CONFIG_CRYPTO_DEV_QAT_C3XXXVF is not set
+# CONFIG_CRYPTO_DEV_QAT_C62XVF is not set
+# CONFIG_CRYPTO_DEV_CAVIUM_ZIP is not set
+CONFIG_CRYPTO_DEV_ROCKCHIP=m
+CONFIG_CRYPTO_DEV_VIRTIO=m
+# CONFIG_CRYPTO_DEV_SAFEXCEL is not set
+# CONFIG_CRYPTO_DEV_CCREE is not set
+# CONFIG_CRYPTO_DEV_HISI_SEC is not set
+# CONFIG_CRYPTO_DEV_AMLOGIC_GXL is not set
+CONFIG_ASYMMETRIC_KEY_TYPE=y
+CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=y
+CONFIG_X509_CERTIFICATE_PARSER=y
+CONFIG_PKCS8_PRIVATE_KEY_PARSER=m
+CONFIG_PKCS7_MESSAGE_PARSER=y
+# CONFIG_PKCS7_TEST_KEY is not set
+# CONFIG_SIGNED_PE_FILE_VERIFICATION is not set
+# CONFIG_FIPS_SIGNATURE_SELFTEST is not set
+
+#
+# Certificates for signature checking
+#
+CONFIG_MODULE_SIG_KEY="certs/signing_key.pem"
+CONFIG_MODULE_SIG_KEY_TYPE_RSA=y
+CONFIG_SYSTEM_TRUSTED_KEYRING=y
+CONFIG_SYSTEM_TRUSTED_KEYS=""
+# CONFIG_SYSTEM_EXTRA_CERTIFICATE is not set
+# CONFIG_SECONDARY_TRUSTED_KEYRING is not set
+# CONFIG_SYSTEM_BLACKLIST_KEYRING is not set
+# end of Certificates for signature checking
+
+#
+# Library routines
+#
+CONFIG_RAID6_PQ=m
+# CONFIG_RAID6_PQ_BENCHMARK is not set
+CONFIG_LINEAR_RANGES=y
+# CONFIG_PACKING is not set
+CONFIG_BITREVERSE=y
+CONFIG_HAVE_ARCH_BITREVERSE=y
+CONFIG_GENERIC_STRNCPY_FROM_USER=y
+CONFIG_GENERIC_STRNLEN_USER=y
+CONFIG_GENERIC_NET_UTILS=y
+# CONFIG_CORDIC is not set
+# CONFIG_PRIME_NUMBERS is not set
+CONFIG_RATIONAL=y
+CONFIG_GENERIC_PCI_IOMAP=y
+CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y
+CONFIG_ARCH_HAS_FAST_MULTIPLIER=y
+CONFIG_ARCH_USE_SYM_ANNOTATIONS=y
+# CONFIG_INDIRECT_PIO is not set
+
+#
+# Crypto library routines
+#
+CONFIG_CRYPTO_LIB_UTILS=y
+CONFIG_CRYPTO_LIB_AES=y
+CONFIG_CRYPTO_LIB_ARC4=m
+CONFIG_CRYPTO_LIB_GF128MUL=m
+CONFIG_CRYPTO_LIB_BLAKE2S_GENERIC=y
+CONFIG_CRYPTO_ARCH_HAVE_LIB_CHACHA=m
+CONFIG_CRYPTO_LIB_CHACHA_GENERIC=m
+CONFIG_CRYPTO_LIB_CHACHA=m
+CONFIG_CRYPTO_LIB_CURVE25519_GENERIC=m
+CONFIG_CRYPTO_LIB_CURVE25519=m
+CONFIG_CRYPTO_LIB_DES=m
+CONFIG_CRYPTO_LIB_POLY1305_RSIZE=9
+CONFIG_CRYPTO_ARCH_HAVE_LIB_POLY1305=m
+CONFIG_CRYPTO_LIB_POLY1305_GENERIC=m
+CONFIG_CRYPTO_LIB_POLY1305=m
+CONFIG_CRYPTO_LIB_CHACHA20POLY1305=m
+CONFIG_CRYPTO_LIB_SHA1=y
+CONFIG_CRYPTO_LIB_SHA256=y
+# end of Crypto library routines
+
+CONFIG_CRC_CCITT=y
+CONFIG_CRC16=y
+CONFIG_CRC_T10DIF=y
+CONFIG_CRC64_ROCKSOFT=y
+CONFIG_CRC_ITU_T=m
+CONFIG_CRC32=y
+# CONFIG_CRC32_SELFTEST is not set
+CONFIG_CRC32_SLICEBY8=y
+# CONFIG_CRC32_SLICEBY4 is not set
+# CONFIG_CRC32_SARWATE is not set
+# CONFIG_CRC32_BIT is not set
+CONFIG_CRC64=y
+# CONFIG_CRC4 is not set
+# CONFIG_CRC7 is not set
+CONFIG_LIBCRC32C=y
+CONFIG_CRC8=m
+CONFIG_XXHASH=y
+CONFIG_AUDIT_ARCH_COMPAT_GENERIC=y
+# CONFIG_RANDOM32_SELFTEST is not set
+CONFIG_ZLIB_INFLATE=m
+CONFIG_ZLIB_DEFLATE=m
+CONFIG_LZO_COMPRESS=y
+CONFIG_LZO_DECOMPRESS=y
+CONFIG_LZ4_COMPRESS=y
+CONFIG_LZ4HC_COMPRESS=y
+CONFIG_LZ4_DECOMPRESS=y
+CONFIG_ZSTD_COMMON=y
+CONFIG_ZSTD_COMPRESS=y
+CONFIG_ZSTD_DECOMPRESS=y
+CONFIG_XZ_DEC=y
+CONFIG_XZ_DEC_X86=y
+CONFIG_XZ_DEC_POWERPC=y
+CONFIG_XZ_DEC_ARM=y
+CONFIG_XZ_DEC_ARMTHUMB=y
+CONFIG_XZ_DEC_SPARC=y
+# CONFIG_XZ_DEC_MICROLZMA is not set
+CONFIG_XZ_DEC_BCJ=y
+# CONFIG_XZ_DEC_TEST is not set
+CONFIG_GENERIC_ALLOCATOR=y
+CONFIG_TEXTSEARCH=y
+CONFIG_TEXTSEARCH_KMP=m
+CONFIG_TEXTSEARCH_BM=m
+CONFIG_TEXTSEARCH_FSM=m
+CONFIG_INTERVAL_TREE=y
+CONFIG_INTERVAL_TREE_SPAN_ITER=y
+CONFIG_XARRAY_MULTI=y
+CONFIG_ASSOCIATIVE_ARRAY=y
+CONFIG_HAS_IOMEM=y
+CONFIG_HAS_IOPORT=y
+CONFIG_HAS_IOPORT_MAP=y
+CONFIG_HAS_DMA=y
+CONFIG_DMA_OPS=y
+CONFIG_NEED_SG_DMA_FLAGS=y
+CONFIG_NEED_SG_DMA_LENGTH=y
+CONFIG_NEED_DMA_MAP_STATE=y
+CONFIG_ARCH_DMA_ADDR_T_64BIT=y
+CONFIG_DMA_DECLARE_COHERENT=y
+CONFIG_ARCH_HAS_SETUP_DMA_OPS=y
+CONFIG_ARCH_HAS_TEARDOWN_DMA_OPS=y
+CONFIG_ARCH_HAS_SYNC_DMA_FOR_DEVICE=y
+CONFIG_ARCH_HAS_SYNC_DMA_FOR_CPU=y
+CONFIG_ARCH_HAS_DMA_PREP_COHERENT=y
+CONFIG_SWIOTLB=y
+# CONFIG_SWIOTLB_DYNAMIC is not set
+CONFIG_DMA_BOUNCE_UNALIGNED_KMALLOC=y
+# CONFIG_DMA_RESTRICTED_POOL is not set
+CONFIG_DMA_NONCOHERENT_MMAP=y
+CONFIG_DMA_COHERENT_POOL=y
+CONFIG_DMA_DIRECT_REMAP=y
+# CONFIG_DMA_API_DEBUG is not set
+CONFIG_SGL_ALLOC=y
+CONFIG_CPU_RMAP=y
+CONFIG_DQL=y
+CONFIG_GLOB=y
+# CONFIG_GLOB_SELFTEST is not set
+CONFIG_NLATTR=y
+CONFIG_CLZ_TAB=y
+CONFIG_IRQ_POLL=y
+CONFIG_MPILIB=y
+CONFIG_DIMLIB=y
+CONFIG_LIBFDT=y
+CONFIG_OID_REGISTRY=y
+CONFIG_UCS2_STRING=y
+CONFIG_HAVE_GENERIC_VDSO=y
+CONFIG_GENERIC_GETTIMEOFDAY=y
+CONFIG_GENERIC_VDSO_TIME_NS=y
+CONFIG_FONT_SUPPORT=y
+CONFIG_FONTS=y
+# CONFIG_FONT_8x8 is not set
+# CONFIG_FONT_8x16 is not set
+# CONFIG_FONT_6x11 is not set
+# CONFIG_FONT_7x14 is not set
+# CONFIG_FONT_PEARL_8x8 is not set
+# CONFIG_FONT_ACORN_8x8 is not set
+# CONFIG_FONT_MINI_4x6 is not set
+# CONFIG_FONT_6x10 is not set
+# CONFIG_FONT_10x18 is not set
+# CONFIG_FONT_SUN8x16 is not set
+# CONFIG_FONT_SUN12x22 is not set
+CONFIG_FONT_TER16x32=y
+# CONFIG_FONT_6x8 is not set
+CONFIG_SG_POOL=y
+CONFIG_ARCH_STACKWALK=y
+CONFIG_STACKDEPOT=y
+CONFIG_STACKDEPOT_MAX_FRAMES=64
+CONFIG_SBITMAP=y
+# CONFIG_LWQ_TEST is not set
+# end of Library routines
+
+CONFIG_GENERIC_IOREMAP=y
+CONFIG_GENERIC_LIB_DEVMEM_IS_ALLOWED=y
+CONFIG_ASN1_ENCODER=m
+
+#
+# Kernel hacking
+#
+
+#
+# printk and dmesg options
+#
+CONFIG_PRINTK_TIME=y
+# CONFIG_PRINTK_CALLER is not set
+# CONFIG_STACKTRACE_BUILD_ID is not set
+CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7
+CONFIG_CONSOLE_LOGLEVEL_QUIET=4
+CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4
+# CONFIG_DYNAMIC_DEBUG is not set
+# CONFIG_DYNAMIC_DEBUG_CORE is not set
+CONFIG_SYMBOLIC_ERRNAME=y
+CONFIG_DEBUG_BUGVERBOSE=y
+# end of printk and dmesg options
+
+# CONFIG_DEBUG_KERNEL is not set
+
+#
+# Compile-time checks and compiler options
+#
+CONFIG_AS_HAS_NON_CONST_ULEB128=y
+CONFIG_FRAME_WARN=2048
+# CONFIG_STRIP_ASM_SYMS is not set
+# CONFIG_HEADERS_INSTALL is not set
+# CONFIG_DEBUG_SECTION_MISMATCH is not set
+CONFIG_SECTION_MISMATCH_WARN_ONLY=y
+CONFIG_ARCH_WANT_FRAME_POINTERS=y
+CONFIG_FRAME_POINTER=y
+# end of Compile-time checks and compiler options
+
+#
+# Generic Kernel Debugging Instruments
+#
+# CONFIG_MAGIC_SYSRQ is not set
+# CONFIG_DEBUG_FS is not set
+CONFIG_HAVE_ARCH_KGDB=y
+CONFIG_ARCH_HAS_UBSAN_SANITIZE_ALL=y
+# CONFIG_UBSAN is not set
+CONFIG_HAVE_KCSAN_COMPILER=y
+# end of Generic Kernel Debugging Instruments
+
+#
+# Networking Debugging
+#
+# end of Networking Debugging
+
+#
+# Memory Debugging
+#
+# CONFIG_PAGE_EXTENSION is not set
+CONFIG_SLUB_DEBUG=y
+# CONFIG_SLUB_DEBUG_ON is not set
+# CONFIG_PAGE_TABLE_CHECK is not set
+# CONFIG_PAGE_POISONING is not set
+# CONFIG_DEBUG_RODATA_TEST is not set
+CONFIG_ARCH_HAS_DEBUG_WX=y
+# CONFIG_DEBUG_WX is not set
+CONFIG_GENERIC_PTDUMP=y
+CONFIG_HAVE_DEBUG_KMEMLEAK=y
+# CONFIG_PER_VMA_LOCK_STATS is not set
+CONFIG_ARCH_HAS_DEBUG_VM_PGTABLE=y
+# CONFIG_DEBUG_VM_PGTABLE is not set
+CONFIG_ARCH_HAS_DEBUG_VIRTUAL=y
+CONFIG_DEBUG_MEMORY_INIT=y
+CONFIG_HAVE_ARCH_KASAN=y
+CONFIG_HAVE_ARCH_KASAN_SW_TAGS=y
+CONFIG_HAVE_ARCH_KASAN_HW_TAGS=y
+CONFIG_HAVE_ARCH_KASAN_VMALLOC=y
+CONFIG_CC_HAS_KASAN_GENERIC=y
+CONFIG_CC_HAS_KASAN_SW_TAGS=y
+CONFIG_CC_HAS_WORKING_NOSANITIZE_ADDRESS=y
+# CONFIG_KASAN is not set
+CONFIG_HAVE_ARCH_KFENCE=y
+# CONFIG_KFENCE is not set
+# end of Memory Debugging
+
+#
+# Debug Oops, Lockups and Hangs
+#
+# CONFIG_PANIC_ON_OOPS is not set
+CONFIG_PANIC_ON_OOPS_VALUE=0
+CONFIG_PANIC_TIMEOUT=30
+CONFIG_HAVE_HARDLOCKUP_DETECTOR_BUDDY=y
+# CONFIG_TEST_LOCKUP is not set
+# end of Debug Oops, Lockups and Hangs
+
+#
+# Scheduler Debugging
+#
+CONFIG_SCHED_INFO=y
+# end of Scheduler Debugging
+
+# CONFIG_DEBUG_TIMEKEEPING is not set
+
+#
+# Lock Debugging (spinlocks, mutexes, etc...)
+#
+CONFIG_LOCK_DEBUGGING_SUPPORT=y
+# CONFIG_WW_MUTEX_SELFTEST is not set
+# end of Lock Debugging (spinlocks, mutexes, etc...)
+
+# CONFIG_DEBUG_IRQFLAGS is not set
+CONFIG_STACKTRACE=y
+# CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set
+
+#
+# Debug kernel data structures
+#
+# end of Debug kernel data structures
+
+#
+# RCU Debugging
+#
+CONFIG_RCU_CPU_STALL_TIMEOUT=21
+CONFIG_RCU_EXP_CPU_STALL_TIMEOUT=0
+# CONFIG_RCU_CPU_STALL_CPUTIME is not set
+# end of RCU Debugging
+
+CONFIG_HAVE_FUNCTION_TRACER=y
+CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
+CONFIG_HAVE_FUNCTION_GRAPH_RETVAL=y
+CONFIG_HAVE_DYNAMIC_FTRACE=y
+CONFIG_HAVE_DYNAMIC_FTRACE_WITH_ARGS=y
+CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
+CONFIG_HAVE_SYSCALL_TRACEPOINTS=y
+CONFIG_HAVE_C_RECORDMCOUNT=y
+CONFIG_TRACING_SUPPORT=y
+# CONFIG_FTRACE is not set
+# CONFIG_SAMPLES is not set
+CONFIG_HAVE_SAMPLE_FTRACE_DIRECT=y
+CONFIG_HAVE_SAMPLE_FTRACE_DIRECT_MULTI=y
+CONFIG_STRICT_DEVMEM=y
+CONFIG_IO_STRICT_DEVMEM=y
+
+#
+# arm64 Debugging
+#
+# CONFIG_PID_IN_CONTEXTIDR is not set
+# CONFIG_ARM64_RELOC_TEST is not set
+# CONFIG_CORESIGHT is not set
+# end of arm64 Debugging
+
+#
+# Kernel Testing and Coverage
+#
+# CONFIG_KUNIT is not set
+CONFIG_ARCH_HAS_KCOV=y
+CONFIG_CC_HAS_SANCOV_TRACE_PC=y
+# CONFIG_KCOV is not set
+# CONFIG_RUNTIME_TESTING_MENU is not set
+CONFIG_ARCH_USE_MEMTEST=y
+# CONFIG_MEMTEST is not set
+# end of Kernel Testing and Coverage
+
+#
+# Rust hacking
+#
+# end of Rust hacking
+# end of Kernel hacking
diff --git a/testing/linux-gru/config-gru.aarch64 b/testing/linux-gru/config-gru.aarch64
deleted file mode 100644
index b4acb08b436..00000000000
--- a/testing/linux-gru/config-gru.aarch64
+++ /dev/null
@@ -1,6978 +0,0 @@
-#
-# Automatically generated file; DO NOT EDIT.
-# Linux/arm64 5.17.0 Kernel Configuration
-#
-CONFIG_CC_VERSION_TEXT="gcc (Alpine 11.2.1_git20220117) 11.2.1 20220117"
-CONFIG_CC_IS_GCC=y
-CONFIG_GCC_VERSION=110201
-CONFIG_CLANG_VERSION=0
-CONFIG_AS_IS_GNU=y
-CONFIG_AS_VERSION=23700
-CONFIG_LD_IS_BFD=y
-CONFIG_LD_VERSION=23700
-CONFIG_LLD_VERSION=0
-CONFIG_CC_CAN_LINK=y
-CONFIG_CC_CAN_LINK_STATIC=y
-CONFIG_CC_HAS_ASM_GOTO=y
-CONFIG_CC_HAS_ASM_GOTO_OUTPUT=y
-CONFIG_CC_HAS_ASM_INLINE=y
-CONFIG_CC_HAS_NO_PROFILE_FN_ATTR=y
-CONFIG_IRQ_WORK=y
-CONFIG_BUILDTIME_TABLE_SORT=y
-CONFIG_THREAD_INFO_IN_TASK=y
-
-#
-# General setup
-#
-CONFIG_INIT_ENV_ARG_LIMIT=32
-# CONFIG_COMPILE_TEST is not set
-# CONFIG_WERROR is not set
-CONFIG_LOCALVERSION=""
-# CONFIG_LOCALVERSION_AUTO is not set
-CONFIG_BUILD_SALT=""
-CONFIG_DEFAULT_INIT=""
-CONFIG_DEFAULT_HOSTNAME="localhost"
-CONFIG_SWAP=y
-CONFIG_SYSVIPC=y
-CONFIG_SYSVIPC_SYSCTL=y
-CONFIG_POSIX_MQUEUE=y
-CONFIG_POSIX_MQUEUE_SYSCTL=y
-# CONFIG_WATCH_QUEUE is not set
-CONFIG_CROSS_MEMORY_ATTACH=y
-# CONFIG_USELIB is not set
-# CONFIG_AUDIT is not set
-CONFIG_HAVE_ARCH_AUDITSYSCALL=y
-
-#
-# IRQ subsystem
-#
-CONFIG_GENERIC_IRQ_PROBE=y
-CONFIG_GENERIC_IRQ_SHOW=y
-CONFIG_GENERIC_IRQ_SHOW_LEVEL=y
-CONFIG_GENERIC_IRQ_EFFECTIVE_AFF_MASK=y
-CONFIG_GENERIC_IRQ_MIGRATION=y
-CONFIG_GENERIC_IRQ_INJECTION=y
-CONFIG_HARDIRQS_SW_RESEND=y
-CONFIG_GENERIC_IRQ_CHIP=y
-CONFIG_IRQ_DOMAIN=y
-CONFIG_IRQ_DOMAIN_HIERARCHY=y
-CONFIG_GENERIC_IRQ_IPI=y
-CONFIG_GENERIC_MSI_IRQ=y
-CONFIG_GENERIC_MSI_IRQ_DOMAIN=y
-CONFIG_IRQ_MSI_IOMMU=y
-CONFIG_IRQ_FORCED_THREADING=y
-CONFIG_SPARSE_IRQ=y
-# end of IRQ subsystem
-
-CONFIG_GENERIC_TIME_VSYSCALL=y
-CONFIG_GENERIC_CLOCKEVENTS=y
-CONFIG_ARCH_HAS_TICK_BROADCAST=y
-CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y
-CONFIG_HAVE_POSIX_CPU_TIMERS_TASK_WORK=y
-CONFIG_POSIX_CPU_TIMERS_TASK_WORK=y
-
-#
-# Timers subsystem
-#
-CONFIG_TICK_ONESHOT=y
-CONFIG_NO_HZ_COMMON=y
-# CONFIG_HZ_PERIODIC is not set
-CONFIG_NO_HZ_IDLE=y
-# CONFIG_NO_HZ_FULL is not set
-# CONFIG_NO_HZ is not set
-CONFIG_HIGH_RES_TIMERS=y
-# end of Timers subsystem
-
-CONFIG_BPF=y
-CONFIG_HAVE_EBPF_JIT=y
-CONFIG_ARCH_WANT_DEFAULT_BPF_JIT=y
-
-#
-# BPF subsystem
-#
-# CONFIG_BPF_SYSCALL is not set
-# CONFIG_BPF_JIT is not set
-# end of BPF subsystem
-
-CONFIG_PREEMPT_BUILD=y
-# CONFIG_PREEMPT_NONE is not set
-# CONFIG_PREEMPT_VOLUNTARY is not set
-CONFIG_PREEMPT=y
-CONFIG_PREEMPT_COUNT=y
-CONFIG_PREEMPTION=y
-# CONFIG_SCHED_CORE is not set
-
-#
-# CPU/Task time and stats accounting
-#
-CONFIG_TICK_CPU_ACCOUNTING=y
-# CONFIG_VIRT_CPU_ACCOUNTING_GEN is not set
-# CONFIG_IRQ_TIME_ACCOUNTING is not set
-CONFIG_SCHED_THERMAL_PRESSURE=y
-# CONFIG_BSD_PROCESS_ACCT is not set
-CONFIG_TASKSTATS=y
-CONFIG_TASK_DELAY_ACCT=y
-# CONFIG_TASK_XACCT is not set
-# CONFIG_PSI is not set
-# end of CPU/Task time and stats accounting
-
-CONFIG_CPU_ISOLATION=y
-
-#
-# RCU Subsystem
-#
-CONFIG_TREE_RCU=y
-CONFIG_PREEMPT_RCU=y
-# CONFIG_RCU_EXPERT is not set
-CONFIG_SRCU=y
-CONFIG_TREE_SRCU=y
-CONFIG_TASKS_RCU_GENERIC=y
-CONFIG_TASKS_RCU=y
-CONFIG_RCU_STALL_COMMON=y
-CONFIG_RCU_NEED_SEGCBLIST=y
-# end of RCU Subsystem
-
-CONFIG_IKCONFIG=m
-CONFIG_IKCONFIG_PROC=y
-# CONFIG_IKHEADERS is not set
-CONFIG_LOG_BUF_SHIFT=18
-CONFIG_LOG_CPU_MAX_BUF_SHIFT=12
-CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=13
-CONFIG_GENERIC_SCHED_CLOCK=y
-
-#
-# Scheduler features
-#
-# CONFIG_UCLAMP_TASK is not set
-# end of Scheduler features
-
-CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y
-CONFIG_CC_HAS_INT128=y
-CONFIG_CC_IMPLICIT_FALLTHROUGH="-Wimplicit-fallthrough=5"
-CONFIG_ARCH_SUPPORTS_INT128=y
-CONFIG_CGROUPS=y
-CONFIG_PAGE_COUNTER=y
-CONFIG_MEMCG=y
-CONFIG_MEMCG_SWAP=y
-CONFIG_MEMCG_KMEM=y
-CONFIG_BLK_CGROUP=y
-CONFIG_CGROUP_WRITEBACK=y
-CONFIG_CGROUP_SCHED=y
-CONFIG_FAIR_GROUP_SCHED=y
-CONFIG_CFS_BANDWIDTH=y
-# CONFIG_RT_GROUP_SCHED is not set
-CONFIG_CGROUP_PIDS=y
-CONFIG_CGROUP_RDMA=y
-CONFIG_CGROUP_FREEZER=y
-CONFIG_CPUSETS=y
-CONFIG_PROC_PID_CPUSET=y
-CONFIG_CGROUP_DEVICE=y
-CONFIG_CGROUP_CPUACCT=y
-# CONFIG_CGROUP_PERF is not set
-# CONFIG_CGROUP_MISC is not set
-CONFIG_SOCK_CGROUP_DATA=y
-CONFIG_NAMESPACES=y
-CONFIG_UTS_NS=y
-CONFIG_TIME_NS=y
-CONFIG_IPC_NS=y
-CONFIG_USER_NS=y
-CONFIG_PID_NS=y
-CONFIG_NET_NS=y
-# CONFIG_CHECKPOINT_RESTORE is not set
-CONFIG_SCHED_AUTOGROUP=y
-# CONFIG_SYSFS_DEPRECATED is not set
-# CONFIG_RELAY is not set
-# CONFIG_BLK_DEV_INITRD is not set
-# CONFIG_BOOT_CONFIG is not set
-CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE=y
-# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
-CONFIG_LD_ORPHAN_WARN=y
-CONFIG_SYSCTL=y
-CONFIG_HAVE_UID16=y
-CONFIG_SYSCTL_EXCEPTION_TRACE=y
-# CONFIG_EXPERT is not set
-CONFIG_UID16=y
-CONFIG_MULTIUSER=y
-CONFIG_SYSFS_SYSCALL=y
-CONFIG_FHANDLE=y
-CONFIG_POSIX_TIMERS=y
-CONFIG_PRINTK=y
-CONFIG_BUG=y
-CONFIG_ELF_CORE=y
-CONFIG_BASE_FULL=y
-CONFIG_FUTEX=y
-CONFIG_FUTEX_PI=y
-CONFIG_EPOLL=y
-CONFIG_SIGNALFD=y
-CONFIG_TIMERFD=y
-CONFIG_EVENTFD=y
-CONFIG_SHMEM=y
-CONFIG_AIO=y
-CONFIG_IO_URING=y
-CONFIG_ADVISE_SYSCALLS=y
-CONFIG_MEMBARRIER=y
-CONFIG_KALLSYMS=y
-CONFIG_KALLSYMS_BASE_RELATIVE=y
-# CONFIG_USERFAULTFD is not set
-CONFIG_ARCH_HAS_MEMBARRIER_SYNC_CORE=y
-CONFIG_KCMP=y
-CONFIG_RSEQ=y
-# CONFIG_EMBEDDED is not set
-CONFIG_HAVE_PERF_EVENTS=y
-CONFIG_GUEST_PERF_EVENTS=y
-
-#
-# Kernel Performance Events And Counters
-#
-CONFIG_PERF_EVENTS=y
-# end of Kernel Performance Events And Counters
-
-CONFIG_VM_EVENT_COUNTERS=y
-CONFIG_SLUB_DEBUG=y
-# CONFIG_COMPAT_BRK is not set
-# CONFIG_SLAB is not set
-CONFIG_SLUB=y
-CONFIG_SLAB_MERGE_DEFAULT=y
-# CONFIG_SLAB_FREELIST_RANDOM is not set
-# CONFIG_SLAB_FREELIST_HARDENED is not set
-# CONFIG_SHUFFLE_PAGE_ALLOCATOR is not set
-# CONFIG_SLUB_CPU_PARTIAL is not set
-CONFIG_SYSTEM_DATA_VERIFICATION=y
-# CONFIG_PROFILING is not set
-# end of General setup
-
-CONFIG_ARM64=y
-CONFIG_64BIT=y
-CONFIG_MMU=y
-CONFIG_ARM64_PAGE_SHIFT=12
-CONFIG_ARM64_CONT_PTE_SHIFT=4
-CONFIG_ARM64_CONT_PMD_SHIFT=4
-CONFIG_ARCH_MMAP_RND_BITS_MIN=18
-CONFIG_ARCH_MMAP_RND_BITS_MAX=33
-CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=11
-CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MAX=16
-CONFIG_STACKTRACE_SUPPORT=y
-CONFIG_ILLEGAL_POINTER_VALUE=0xdead000000000000
-CONFIG_LOCKDEP_SUPPORT=y
-CONFIG_GENERIC_BUG=y
-CONFIG_GENERIC_BUG_RELATIVE_POINTERS=y
-CONFIG_GENERIC_HWEIGHT=y
-CONFIG_GENERIC_CSUM=y
-CONFIG_GENERIC_CALIBRATE_DELAY=y
-CONFIG_ARCH_MHP_MEMMAP_ON_MEMORY_ENABLE=y
-CONFIG_SMP=y
-CONFIG_KERNEL_MODE_NEON=y
-CONFIG_FIX_EARLYCON_MEM=y
-CONFIG_PGTABLE_LEVELS=4
-CONFIG_ARCH_SUPPORTS_UPROBES=y
-CONFIG_ARCH_PROC_KCORE_TEXT=y
-
-#
-# Platform selection
-#
-# CONFIG_ARCH_ACTIONS is not set
-# CONFIG_ARCH_SUNXI is not set
-# CONFIG_ARCH_ALPINE is not set
-# CONFIG_ARCH_APPLE is not set
-# CONFIG_ARCH_BCM2835 is not set
-# CONFIG_ARCH_BCM4908 is not set
-# CONFIG_ARCH_BCM_IPROC is not set
-# CONFIG_ARCH_BERLIN is not set
-# CONFIG_ARCH_BITMAIN is not set
-# CONFIG_ARCH_BRCMSTB is not set
-# CONFIG_ARCH_EXYNOS is not set
-# CONFIG_ARCH_SPARX5 is not set
-# CONFIG_ARCH_K3 is not set
-# CONFIG_ARCH_LAYERSCAPE is not set
-# CONFIG_ARCH_LG1K is not set
-# CONFIG_ARCH_HISI is not set
-# CONFIG_ARCH_KEEMBAY is not set
-# CONFIG_ARCH_MEDIATEK is not set
-# CONFIG_ARCH_MESON is not set
-# CONFIG_ARCH_MVEBU is not set
-# CONFIG_ARCH_MXC is not set
-# CONFIG_ARCH_QCOM is not set
-# CONFIG_ARCH_REALTEK is not set
-# CONFIG_ARCH_RENESAS is not set
-CONFIG_ARCH_ROCKCHIP=y
-# CONFIG_ARCH_S32 is not set
-# CONFIG_ARCH_SEATTLE is not set
-# CONFIG_ARCH_INTEL_SOCFPGA is not set
-# CONFIG_ARCH_SYNQUACER is not set
-# CONFIG_ARCH_TEGRA is not set
-# CONFIG_ARCH_SPRD is not set
-# CONFIG_ARCH_THUNDER is not set
-# CONFIG_ARCH_THUNDER2 is not set
-# CONFIG_ARCH_UNIPHIER is not set
-# CONFIG_ARCH_VEXPRESS is not set
-# CONFIG_ARCH_VISCONTI is not set
-# CONFIG_ARCH_XGENE is not set
-# CONFIG_ARCH_ZYNQMP is not set
-# end of Platform selection
-
-#
-# Kernel Features
-#
-
-#
-# ARM errata workarounds via the alternatives framework
-#
-CONFIG_ARM64_WORKAROUND_CLEAN_CACHE=y
-CONFIG_ARM64_ERRATUM_826319=y
-CONFIG_ARM64_ERRATUM_827319=y
-CONFIG_ARM64_ERRATUM_824069=y
-CONFIG_ARM64_ERRATUM_819472=y
-CONFIG_ARM64_ERRATUM_832075=y
-CONFIG_ARM64_ERRATUM_834220=y
-CONFIG_ARM64_ERRATUM_845719=y
-CONFIG_ARM64_ERRATUM_843419=y
-CONFIG_ARM64_LD_HAS_FIX_ERRATUM_843419=y
-CONFIG_ARM64_ERRATUM_1024718=y
-CONFIG_ARM64_ERRATUM_1418040=y
-CONFIG_ARM64_WORKAROUND_SPECULATIVE_AT=y
-CONFIG_ARM64_ERRATUM_1165522=y
-CONFIG_ARM64_ERRATUM_1319367=y
-CONFIG_ARM64_ERRATUM_1530923=y
-CONFIG_ARM64_WORKAROUND_REPEAT_TLBI=y
-CONFIG_ARM64_ERRATUM_1286807=y
-CONFIG_ARM64_ERRATUM_1463225=y
-CONFIG_ARM64_ERRATUM_1542419=y
-CONFIG_ARM64_ERRATUM_1508412=y
-# CONFIG_ARM64_ERRATUM_2051678 is not set
-# CONFIG_ARM64_ERRATUM_2077057 is not set
-# CONFIG_ARM64_ERRATUM_2054223 is not set
-# CONFIG_ARM64_ERRATUM_2067961 is not set
-CONFIG_CAVIUM_ERRATUM_22375=y
-CONFIG_CAVIUM_ERRATUM_23154=y
-CONFIG_CAVIUM_ERRATUM_27456=y
-CONFIG_CAVIUM_ERRATUM_30115=y
-CONFIG_CAVIUM_TX2_ERRATUM_219=y
-CONFIG_FUJITSU_ERRATUM_010001=y
-CONFIG_HISILICON_ERRATUM_161600802=y
-CONFIG_QCOM_FALKOR_ERRATUM_1003=y
-CONFIG_QCOM_FALKOR_ERRATUM_1009=y
-CONFIG_QCOM_QDF2400_ERRATUM_0065=y
-CONFIG_QCOM_FALKOR_ERRATUM_E1041=y
-CONFIG_NVIDIA_CARMEL_CNP_ERRATUM=y
-CONFIG_SOCIONEXT_SYNQUACER_PREITS=y
-# end of ARM errata workarounds via the alternatives framework
-
-CONFIG_ARM64_4K_PAGES=y
-# CONFIG_ARM64_16K_PAGES is not set
-# CONFIG_ARM64_64K_PAGES is not set
-# CONFIG_ARM64_VA_BITS_39 is not set
-CONFIG_ARM64_VA_BITS_48=y
-CONFIG_ARM64_VA_BITS=48
-CONFIG_ARM64_PA_BITS_48=y
-CONFIG_ARM64_PA_BITS=48
-# CONFIG_CPU_BIG_ENDIAN is not set
-CONFIG_CPU_LITTLE_ENDIAN=y
-CONFIG_SCHED_MC=y
-# CONFIG_SCHED_CLUSTER is not set
-CONFIG_SCHED_SMT=y
-CONFIG_NR_CPUS=8
-CONFIG_HOTPLUG_CPU=y
-# CONFIG_NUMA is not set
-# CONFIG_HZ_100 is not set
-# CONFIG_HZ_250 is not set
-# CONFIG_HZ_300 is not set
-CONFIG_HZ_1000=y
-CONFIG_HZ=1000
-CONFIG_SCHED_HRTICK=y
-CONFIG_ARCH_SPARSEMEM_ENABLE=y
-CONFIG_HW_PERF_EVENTS=y
-# CONFIG_PARAVIRT is not set
-# CONFIG_PARAVIRT_TIME_ACCOUNTING is not set
-# CONFIG_KEXEC is not set
-# CONFIG_KEXEC_FILE is not set
-# CONFIG_CRASH_DUMP is not set
-CONFIG_TRANS_TABLE=y
-# CONFIG_XEN is not set
-CONFIG_FORCE_MAX_ZONEORDER=11
-CONFIG_UNMAP_KERNEL_AT_EL0=y
-CONFIG_MITIGATE_SPECTRE_BRANCH_HISTORY=y
-CONFIG_RODATA_FULL_DEFAULT_ENABLED=y
-# CONFIG_ARM64_SW_TTBR0_PAN is not set
-CONFIG_ARM64_TAGGED_ADDR_ABI=y
-CONFIG_COMPAT=y
-CONFIG_KUSER_HELPERS=y
-CONFIG_ARMV8_DEPRECATED=y
-CONFIG_SWP_EMULATION=y
-CONFIG_CP15_BARRIER_EMULATION=y
-CONFIG_SETEND_EMULATION=y
-
-#
-# ARMv8.1 architectural features
-#
-CONFIG_ARM64_HW_AFDBM=y
-CONFIG_ARM64_PAN=y
-CONFIG_AS_HAS_LDAPR=y
-CONFIG_AS_HAS_LSE_ATOMICS=y
-CONFIG_ARM64_LSE_ATOMICS=y
-CONFIG_ARM64_USE_LSE_ATOMICS=y
-# end of ARMv8.1 architectural features
-
-#
-# ARMv8.2 architectural features
-#
-CONFIG_AS_HAS_ARMV8_2=y
-CONFIG_AS_HAS_SHA3=y
-# CONFIG_ARM64_PMEM is not set
-CONFIG_ARM64_RAS_EXTN=y
-CONFIG_ARM64_CNP=y
-# end of ARMv8.2 architectural features
-
-#
-# ARMv8.3 architectural features
-#
-CONFIG_ARM64_PTR_AUTH=y
-CONFIG_ARM64_PTR_AUTH_KERNEL=y
-CONFIG_CC_HAS_BRANCH_PROT_PAC_RET=y
-CONFIG_CC_HAS_SIGN_RETURN_ADDRESS=y
-CONFIG_AS_HAS_PAC=y
-CONFIG_AS_HAS_CFI_NEGATE_RA_STATE=y
-# end of ARMv8.3 architectural features
-
-#
-# ARMv8.4 architectural features
-#
-CONFIG_ARM64_AMU_EXTN=y
-CONFIG_AS_HAS_ARMV8_4=y
-CONFIG_ARM64_TLB_RANGE=y
-# end of ARMv8.4 architectural features
-
-#
-# ARMv8.5 architectural features
-#
-CONFIG_AS_HAS_ARMV8_5=y
-CONFIG_ARM64_BTI=y
-CONFIG_ARM64_BTI_KERNEL=y
-CONFIG_CC_HAS_BRANCH_PROT_PAC_RET_BTI=y
-CONFIG_ARM64_E0PD=y
-CONFIG_ARCH_RANDOM=y
-CONFIG_ARM64_AS_HAS_MTE=y
-CONFIG_ARM64_MTE=y
-# end of ARMv8.5 architectural features
-
-#
-# ARMv8.7 architectural features
-#
-CONFIG_ARM64_EPAN=y
-# end of ARMv8.7 architectural features
-
-CONFIG_ARM64_SVE=y
-CONFIG_ARM64_MODULE_PLTS=y
-# CONFIG_ARM64_PSEUDO_NMI is not set
-CONFIG_RELOCATABLE=y
-# CONFIG_RANDOMIZE_BASE is not set
-CONFIG_CC_HAVE_STACKPROTECTOR_SYSREG=y
-CONFIG_STACKPROTECTOR_PER_TASK=y
-# end of Kernel Features
-
-#
-# Boot options
-#
-# CONFIG_ARM64_ACPI_PARKING_PROTOCOL is not set
-CONFIG_CMDLINE=""
-CONFIG_EFI_STUB=y
-CONFIG_EFI=y
-CONFIG_DMI=y
-# end of Boot options
-
-CONFIG_SYSVIPC_COMPAT=y
-
-#
-# Power management options
-#
-CONFIG_SUSPEND=y
-CONFIG_SUSPEND_FREEZER=y
-CONFIG_HIBERNATE_CALLBACKS=y
-CONFIG_HIBERNATION=y
-CONFIG_HIBERNATION_SNAPSHOT_DEV=y
-CONFIG_PM_STD_PARTITION=""
-CONFIG_PM_SLEEP=y
-CONFIG_PM_SLEEP_SMP=y
-# CONFIG_PM_AUTOSLEEP is not set
-# CONFIG_PM_WAKELOCKS is not set
-CONFIG_PM=y
-# CONFIG_PM_DEBUG is not set
-CONFIG_PM_CLK=y
-CONFIG_PM_GENERIC_DOMAINS=y
-# CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set
-CONFIG_PM_GENERIC_DOMAINS_SLEEP=y
-CONFIG_PM_GENERIC_DOMAINS_OF=y
-CONFIG_CPU_PM=y
-CONFIG_ENERGY_MODEL=y
-CONFIG_ARCH_HIBERNATION_POSSIBLE=y
-CONFIG_ARCH_HIBERNATION_HEADER=y
-CONFIG_ARCH_SUSPEND_POSSIBLE=y
-# end of Power management options
-
-#
-# CPU Power Management
-#
-
-#
-# CPU Idle
-#
-CONFIG_CPU_IDLE=y
-CONFIG_CPU_IDLE_MULTIPLE_DRIVERS=y
-CONFIG_CPU_IDLE_GOV_LADDER=y
-CONFIG_CPU_IDLE_GOV_MENU=y
-CONFIG_CPU_IDLE_GOV_TEO=y
-CONFIG_DT_IDLE_STATES=y
-
-#
-# ARM CPU Idle Drivers
-#
-CONFIG_ARM_CPUIDLE=y
-# CONFIG_ARM_PSCI_CPUIDLE is not set
-# end of ARM CPU Idle Drivers
-# end of CPU Idle
-
-#
-# CPU Frequency scaling
-#
-CONFIG_CPU_FREQ=y
-CONFIG_CPU_FREQ_GOV_ATTR_SET=y
-CONFIG_CPU_FREQ_GOV_COMMON=y
-# CONFIG_CPU_FREQ_STAT is not set
-CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
-# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set
-# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
-# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set
-# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
-# CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL is not set
-CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
-CONFIG_CPU_FREQ_GOV_POWERSAVE=m
-CONFIG_CPU_FREQ_GOV_USERSPACE=m
-CONFIG_CPU_FREQ_GOV_ONDEMAND=m
-CONFIG_CPU_FREQ_GOV_CONSERVATIVE=m
-CONFIG_CPU_FREQ_GOV_SCHEDUTIL=y
-
-#
-# CPU frequency scaling drivers
-#
-CONFIG_CPUFREQ_DT=m
-CONFIG_CPUFREQ_DT_PLATDEV=y
-CONFIG_ACPI_CPPC_CPUFREQ=m
-CONFIG_ACPI_CPPC_CPUFREQ_FIE=y
-CONFIG_ARM_SCPI_CPUFREQ=m
-# end of CPU Frequency scaling
-# end of CPU Power Management
-
-CONFIG_ARCH_SUPPORTS_ACPI=y
-CONFIG_ACPI=y
-CONFIG_ACPI_GENERIC_GSI=y
-CONFIG_ACPI_CCA_REQUIRED=y
-# CONFIG_ACPI_DEBUGGER is not set
-CONFIG_ACPI_SPCR_TABLE=y
-# CONFIG_ACPI_EC_DEBUGFS is not set
-CONFIG_ACPI_AC=m
-CONFIG_ACPI_BATTERY=m
-CONFIG_ACPI_BUTTON=m
-# CONFIG_ACPI_TINY_POWER_BUTTON is not set
-CONFIG_ACPI_FAN=m
-CONFIG_ACPI_TAD=m
-# CONFIG_ACPI_DOCK is not set
-CONFIG_ACPI_PROCESSOR_IDLE=y
-CONFIG_ACPI_MCFG=y
-CONFIG_ACPI_CPPC_LIB=y
-CONFIG_ACPI_PROCESSOR=m
-CONFIG_ACPI_HOTPLUG_CPU=y
-CONFIG_ACPI_THERMAL=m
-CONFIG_ARCH_HAS_ACPI_TABLE_UPGRADE=y
-# CONFIG_ACPI_DEBUG is not set
-CONFIG_ACPI_PCI_SLOT=y
-CONFIG_ACPI_CONTAINER=y
-CONFIG_ACPI_HED=m
-# CONFIG_ACPI_BGRT is not set
-CONFIG_ACPI_REDUCED_HARDWARE_ONLY=y
-CONFIG_HAVE_ACPI_APEI=y
-# CONFIG_ACPI_APEI is not set
-CONFIG_ACPI_CONFIGFS=m
-# CONFIG_ACPI_PFRUT is not set
-CONFIG_ACPI_IORT=y
-CONFIG_ACPI_GTDT=y
-CONFIG_ACPI_PPTT=y
-CONFIG_ACPI_PCC=y
-CONFIG_PMIC_OPREGION=y
-CONFIG_IRQ_BYPASS_MANAGER=y
-CONFIG_HAVE_KVM=y
-CONFIG_HAVE_KVM_IRQCHIP=y
-CONFIG_HAVE_KVM_IRQFD=y
-CONFIG_HAVE_KVM_IRQ_ROUTING=y
-CONFIG_HAVE_KVM_EVENTFD=y
-CONFIG_KVM_MMIO=y
-CONFIG_HAVE_KVM_MSI=y
-CONFIG_HAVE_KVM_CPU_RELAX_INTERCEPT=y
-CONFIG_KVM_VFIO=y
-CONFIG_HAVE_KVM_ARCH_TLB_FLUSH_ALL=y
-CONFIG_KVM_GENERIC_DIRTYLOG_READ_PROTECT=y
-CONFIG_HAVE_KVM_IRQ_BYPASS=y
-CONFIG_HAVE_KVM_VCPU_RUN_PID_CHANGE=y
-CONFIG_KVM_XFER_TO_GUEST_WORK=y
-CONFIG_VIRTUALIZATION=y
-CONFIG_KVM=y
-# CONFIG_NVHE_EL2_DEBUG is not set
-CONFIG_ARM64_CRYPTO=y
-CONFIG_CRYPTO_SHA256_ARM64=m
-CONFIG_CRYPTO_SHA512_ARM64=m
-CONFIG_CRYPTO_SHA1_ARM64_CE=m
-CONFIG_CRYPTO_SHA2_ARM64_CE=m
-CONFIG_CRYPTO_SHA512_ARM64_CE=m
-CONFIG_CRYPTO_SHA3_ARM64=m
-CONFIG_CRYPTO_SM3_ARM64_CE=m
-CONFIG_CRYPTO_SM4_ARM64_CE=m
-CONFIG_CRYPTO_GHASH_ARM64_CE=m
-CONFIG_CRYPTO_CRCT10DIF_ARM64_CE=m
-CONFIG_CRYPTO_AES_ARM64=m
-CONFIG_CRYPTO_AES_ARM64_CE=m
-CONFIG_CRYPTO_AES_ARM64_CE_CCM=m
-CONFIG_CRYPTO_AES_ARM64_CE_BLK=m
-CONFIG_CRYPTO_AES_ARM64_NEON_BLK=m
-CONFIG_CRYPTO_CHACHA20_NEON=m
-CONFIG_CRYPTO_POLY1305_NEON=m
-CONFIG_CRYPTO_NHPOLY1305_NEON=m
-CONFIG_CRYPTO_AES_ARM64_BS=m
-
-#
-# General architecture-dependent options
-#
-# CONFIG_KPROBES is not set
-CONFIG_JUMP_LABEL=y
-# CONFIG_STATIC_KEYS_SELFTEST is not set
-CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y
-CONFIG_HAVE_KPROBES=y
-CONFIG_HAVE_KRETPROBES=y
-CONFIG_ARCH_CORRECT_STACKTRACE_ON_KRETPROBE=y
-CONFIG_HAVE_FUNCTION_ERROR_INJECTION=y
-CONFIG_HAVE_NMI=y
-CONFIG_TRACE_IRQFLAGS_SUPPORT=y
-CONFIG_HAVE_ARCH_TRACEHOOK=y
-CONFIG_HAVE_DMA_CONTIGUOUS=y
-CONFIG_GENERIC_SMP_IDLE_THREAD=y
-CONFIG_GENERIC_IDLE_POLL_SETUP=y
-CONFIG_ARCH_HAS_FORTIFY_SOURCE=y
-CONFIG_ARCH_HAS_KEEPINITRD=y
-CONFIG_ARCH_HAS_SET_MEMORY=y
-CONFIG_ARCH_HAS_SET_DIRECT_MAP=y
-CONFIG_HAVE_ARCH_THREAD_STRUCT_WHITELIST=y
-CONFIG_ARCH_WANTS_NO_INSTR=y
-CONFIG_HAVE_ASM_MODVERSIONS=y
-CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y
-CONFIG_HAVE_RSEQ=y
-CONFIG_HAVE_FUNCTION_ARG_ACCESS_API=y
-CONFIG_HAVE_HW_BREAKPOINT=y
-CONFIG_HAVE_PERF_REGS=y
-CONFIG_HAVE_PERF_USER_STACK_DUMP=y
-CONFIG_HAVE_ARCH_JUMP_LABEL=y
-CONFIG_HAVE_ARCH_JUMP_LABEL_RELATIVE=y
-CONFIG_MMU_GATHER_TABLE_FREE=y
-CONFIG_MMU_GATHER_RCU_TABLE_FREE=y
-CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y
-CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y
-CONFIG_HAVE_CMPXCHG_LOCAL=y
-CONFIG_HAVE_CMPXCHG_DOUBLE=y
-CONFIG_ARCH_WANT_COMPAT_IPC_PARSE_VERSION=y
-CONFIG_HAVE_ARCH_SECCOMP=y
-CONFIG_HAVE_ARCH_SECCOMP_FILTER=y
-CONFIG_SECCOMP=y
-CONFIG_SECCOMP_FILTER=y
-# CONFIG_SECCOMP_CACHE_DEBUG is not set
-CONFIG_HAVE_ARCH_STACKLEAK=y
-CONFIG_HAVE_STACKPROTECTOR=y
-CONFIG_STACKPROTECTOR=y
-CONFIG_STACKPROTECTOR_STRONG=y
-CONFIG_ARCH_SUPPORTS_LTO_CLANG=y
-CONFIG_ARCH_SUPPORTS_LTO_CLANG_THIN=y
-CONFIG_LTO_NONE=y
-CONFIG_ARCH_SUPPORTS_CFI_CLANG=y
-CONFIG_HAVE_CONTEXT_TRACKING=y
-CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y
-CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y
-CONFIG_HAVE_MOVE_PUD=y
-CONFIG_HAVE_MOVE_PMD=y
-CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y
-CONFIG_HAVE_ARCH_HUGE_VMAP=y
-CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y
-CONFIG_HAVE_MOD_ARCH_SPECIFIC=y
-CONFIG_MODULES_USE_ELF_RELA=y
-CONFIG_ARCH_HAS_ELF_RANDOMIZE=y
-CONFIG_HAVE_ARCH_MMAP_RND_BITS=y
-CONFIG_ARCH_MMAP_RND_BITS=18
-CONFIG_HAVE_ARCH_MMAP_RND_COMPAT_BITS=y
-CONFIG_ARCH_MMAP_RND_COMPAT_BITS=11
-CONFIG_PAGE_SIZE_LESS_THAN_64KB=y
-CONFIG_PAGE_SIZE_LESS_THAN_256KB=y
-CONFIG_ARCH_WANT_DEFAULT_TOPDOWN_MMAP_LAYOUT=y
-CONFIG_CLONE_BACKWARDS=y
-CONFIG_OLD_SIGSUSPEND3=y
-CONFIG_COMPAT_OLD_SIGACTION=y
-CONFIG_COMPAT_32BIT_TIME=y
-CONFIG_HAVE_ARCH_VMAP_STACK=y
-CONFIG_VMAP_STACK=y
-CONFIG_HAVE_ARCH_RANDOMIZE_KSTACK_OFFSET=y
-# CONFIG_RANDOMIZE_KSTACK_OFFSET_DEFAULT is not set
-CONFIG_ARCH_HAS_STRICT_KERNEL_RWX=y
-CONFIG_STRICT_KERNEL_RWX=y
-CONFIG_ARCH_HAS_STRICT_MODULE_RWX=y
-CONFIG_STRICT_MODULE_RWX=y
-CONFIG_HAVE_ARCH_COMPILER_H=y
-CONFIG_HAVE_ARCH_PREL32_RELOCATIONS=y
-CONFIG_ARCH_USE_MEMREMAP_PROT=y
-CONFIG_ARCH_HAS_RELR=y
-CONFIG_ARCH_WANT_LD_ORPHAN_WARN=y
-CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
-
-#
-# GCOV-based kernel profiling
-#
-CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y
-# end of GCOV-based kernel profiling
-
-CONFIG_HAVE_GCC_PLUGINS=y
-# CONFIG_GCC_PLUGINS is not set
-# end of General architecture-dependent options
-
-CONFIG_RT_MUTEXES=y
-CONFIG_BASE_SMALL=0
-CONFIG_MODULE_SIG_FORMAT=y
-CONFIG_MODULES=y
-# CONFIG_MODULE_FORCE_LOAD is not set
-CONFIG_MODULE_UNLOAD=y
-# CONFIG_MODULE_FORCE_UNLOAD is not set
-# CONFIG_MODVERSIONS is not set
-# CONFIG_MODULE_SRCVERSION_ALL is not set
-CONFIG_MODULE_SIG=y
-# CONFIG_MODULE_SIG_FORCE is not set
-CONFIG_MODULE_SIG_ALL=y
-CONFIG_MODULE_SIG_SHA1=y
-# CONFIG_MODULE_SIG_SHA224 is not set
-# CONFIG_MODULE_SIG_SHA256 is not set
-# CONFIG_MODULE_SIG_SHA384 is not set
-# CONFIG_MODULE_SIG_SHA512 is not set
-CONFIG_MODULE_SIG_HASH="sha1"
-CONFIG_MODULE_COMPRESS_NONE=y
-# CONFIG_MODULE_COMPRESS_GZIP is not set
-# CONFIG_MODULE_COMPRESS_XZ is not set
-# CONFIG_MODULE_COMPRESS_ZSTD is not set
-# CONFIG_MODULE_ALLOW_MISSING_NAMESPACE_IMPORTS is not set
-CONFIG_MODPROBE_PATH="/sbin/modprobe"
-CONFIG_MODULES_TREE_LOOKUP=y
-CONFIG_BLOCK=y
-CONFIG_BLK_CGROUP_RWSTAT=y
-CONFIG_BLK_DEV_BSG_COMMON=y
-CONFIG_BLK_ICQ=y
-CONFIG_BLK_DEV_BSGLIB=y
-CONFIG_BLK_DEV_INTEGRITY=y
-CONFIG_BLK_DEV_INTEGRITY_T10=y
-CONFIG_BLK_DEV_ZONED=y
-CONFIG_BLK_DEV_THROTTLING=y
-# CONFIG_BLK_DEV_THROTTLING_LOW is not set
-CONFIG_BLK_WBT=y
-CONFIG_BLK_WBT_MQ=y
-# CONFIG_BLK_CGROUP_IOLATENCY is not set
-# CONFIG_BLK_CGROUP_IOCOST is not set
-# CONFIG_BLK_CGROUP_IOPRIO is not set
-# CONFIG_BLK_SED_OPAL is not set
-# CONFIG_BLK_INLINE_ENCRYPTION is not set
-
-#
-# Partition Types
-#
-CONFIG_PARTITION_ADVANCED=y
-# CONFIG_ACORN_PARTITION is not set
-# CONFIG_AIX_PARTITION is not set
-# CONFIG_OSF_PARTITION is not set
-# CONFIG_AMIGA_PARTITION is not set
-# CONFIG_ATARI_PARTITION is not set
-CONFIG_MAC_PARTITION=y
-CONFIG_MSDOS_PARTITION=y
-CONFIG_BSD_DISKLABEL=y
-CONFIG_MINIX_SUBPARTITION=y
-# CONFIG_SOLARIS_X86_PARTITION is not set
-# CONFIG_UNIXWARE_DISKLABEL is not set
-CONFIG_LDM_PARTITION=y
-# CONFIG_LDM_DEBUG is not set
-# CONFIG_SGI_PARTITION is not set
-# CONFIG_ULTRIX_PARTITION is not set
-# CONFIG_SUN_PARTITION is not set
-# CONFIG_KARMA_PARTITION is not set
-CONFIG_EFI_PARTITION=y
-# CONFIG_SYSV68_PARTITION is not set
-# CONFIG_CMDLINE_PARTITION is not set
-# end of Partition Types
-
-CONFIG_BLOCK_COMPAT=y
-CONFIG_BLK_MQ_PCI=y
-CONFIG_BLK_MQ_VIRTIO=y
-CONFIG_BLK_PM=y
-CONFIG_BLOCK_HOLDER_DEPRECATED=y
-
-#
-# IO Schedulers
-#
-CONFIG_MQ_IOSCHED_DEADLINE=y
-CONFIG_MQ_IOSCHED_KYBER=m
-CONFIG_IOSCHED_BFQ=m
-CONFIG_BFQ_GROUP_IOSCHED=y
-# CONFIG_BFQ_CGROUP_DEBUG is not set
-# end of IO Schedulers
-
-CONFIG_PREEMPT_NOTIFIERS=y
-CONFIG_PADATA=y
-CONFIG_ASN1=y
-CONFIG_UNINLINE_SPIN_UNLOCK=y
-CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y
-CONFIG_MUTEX_SPIN_ON_OWNER=y
-CONFIG_RWSEM_SPIN_ON_OWNER=y
-CONFIG_LOCK_SPIN_ON_OWNER=y
-CONFIG_ARCH_USE_QUEUED_SPINLOCKS=y
-CONFIG_QUEUED_SPINLOCKS=y
-CONFIG_ARCH_USE_QUEUED_RWLOCKS=y
-CONFIG_QUEUED_RWLOCKS=y
-CONFIG_ARCH_HAS_NON_OVERLAPPING_ADDRESS_SPACE=y
-CONFIG_ARCH_HAS_SYSCALL_WRAPPER=y
-CONFIG_FREEZER=y
-
-#
-# Executable file formats
-#
-CONFIG_BINFMT_ELF=y
-CONFIG_COMPAT_BINFMT_ELF=y
-CONFIG_ARCH_BINFMT_ELF_STATE=y
-CONFIG_ARCH_HAVE_ELF_PROT=y
-CONFIG_ARCH_USE_GNU_PROPERTY=y
-CONFIG_ELFCORE=y
-# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
-CONFIG_BINFMT_SCRIPT=y
-CONFIG_BINFMT_MISC=m
-CONFIG_COREDUMP=y
-# end of Executable file formats
-
-#
-# Memory Management options
-#
-CONFIG_SPARSEMEM=y
-CONFIG_SPARSEMEM_EXTREME=y
-CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y
-CONFIG_SPARSEMEM_VMEMMAP=y
-CONFIG_HAVE_FAST_GUP=y
-CONFIG_ARCH_KEEP_MEMBLOCK=y
-CONFIG_MEMORY_ISOLATION=y
-CONFIG_EXCLUSIVE_SYSTEM_RAM=y
-CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
-# CONFIG_MEMORY_HOTPLUG is not set
-CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
-CONFIG_SPLIT_PTLOCK_CPUS=4
-CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK=y
-CONFIG_MEMORY_BALLOON=y
-CONFIG_BALLOON_COMPACTION=y
-CONFIG_COMPACTION=y
-CONFIG_PAGE_REPORTING=y
-CONFIG_MIGRATION=y
-CONFIG_CONTIG_ALLOC=y
-CONFIG_PHYS_ADDR_T_64BIT=y
-CONFIG_MMU_NOTIFIER=y
-CONFIG_KSM=y
-CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
-CONFIG_ARCH_SUPPORTS_MEMORY_FAILURE=y
-# CONFIG_MEMORY_FAILURE is not set
-# CONFIG_TRANSPARENT_HUGEPAGE is not set
-CONFIG_FRONTSWAP=y
-CONFIG_CMA=y
-# CONFIG_CMA_SYSFS is not set
-CONFIG_CMA_AREAS=7
-CONFIG_ZSWAP=y
-# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_DEFLATE is not set
-# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZO is not set
-# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_842 is not set
-# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZ4 is not set
-# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZ4HC is not set
-CONFIG_ZSWAP_COMPRESSOR_DEFAULT_ZSTD=y
-CONFIG_ZSWAP_COMPRESSOR_DEFAULT="zstd"
-# CONFIG_ZSWAP_ZPOOL_DEFAULT_ZBUD is not set
-# CONFIG_ZSWAP_ZPOOL_DEFAULT_Z3FOLD is not set
-CONFIG_ZSWAP_ZPOOL_DEFAULT_ZSMALLOC=y
-CONFIG_ZSWAP_ZPOOL_DEFAULT="zsmalloc"
-# CONFIG_ZSWAP_DEFAULT_ON is not set
-CONFIG_ZPOOL=y
-CONFIG_ZBUD=y
-CONFIG_Z3FOLD=y
-CONFIG_ZSMALLOC=y
-# CONFIG_ZSMALLOC_STAT is not set
-CONFIG_GENERIC_EARLY_IOREMAP=y
-# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set
-# CONFIG_IDLE_PAGE_TRACKING is not set
-CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y
-CONFIG_ARCH_HAS_PTE_DEVMAP=y
-CONFIG_ZONE_DMA=y
-CONFIG_ZONE_DMA32=y
-CONFIG_ARCH_USES_HIGH_VMA_FLAGS=y
-# CONFIG_PERCPU_STATS is not set
-
-#
-# GUP_TEST needs to have DEBUG_FS enabled
-#
-CONFIG_ARCH_HAS_PTE_SPECIAL=y
-CONFIG_SECRETMEM=y
-# CONFIG_ANON_VMA_NAME is not set
-
-#
-# Data Access Monitoring
-#
-# CONFIG_DAMON is not set
-# end of Data Access Monitoring
-# end of Memory Management options
-
-CONFIG_NET=y
-CONFIG_COMPAT_NETLINK_MESSAGES=y
-CONFIG_NET_INGRESS=y
-CONFIG_NET_EGRESS=y
-CONFIG_NET_REDIRECT=y
-CONFIG_SKB_EXTENSIONS=y
-
-#
-# Networking options
-#
-CONFIG_PACKET=y
-CONFIG_PACKET_DIAG=m
-CONFIG_UNIX=y
-CONFIG_UNIX_SCM=y
-CONFIG_AF_UNIX_OOB=y
-CONFIG_UNIX_DIAG=m
-CONFIG_TLS=m
-# CONFIG_TLS_DEVICE is not set
-# CONFIG_TLS_TOE is not set
-CONFIG_XFRM=y
-CONFIG_XFRM_ALGO=m
-CONFIG_XFRM_USER=m
-# CONFIG_XFRM_INTERFACE is not set
-CONFIG_XFRM_SUB_POLICY=y
-CONFIG_XFRM_MIGRATE=y
-CONFIG_XFRM_STATISTICS=y
-CONFIG_XFRM_AH=m
-CONFIG_XFRM_ESP=m
-CONFIG_XFRM_IPCOMP=m
-CONFIG_NET_KEY=m
-CONFIG_NET_KEY_MIGRATE=y
-CONFIG_INET=y
-CONFIG_IP_MULTICAST=y
-CONFIG_IP_ADVANCED_ROUTER=y
-# CONFIG_IP_FIB_TRIE_STATS is not set
-CONFIG_IP_MULTIPLE_TABLES=y
-CONFIG_IP_ROUTE_MULTIPATH=y
-CONFIG_IP_ROUTE_VERBOSE=y
-CONFIG_IP_ROUTE_CLASSID=y
-# CONFIG_IP_PNP is not set
-CONFIG_NET_IPIP=m
-CONFIG_NET_IPGRE_DEMUX=m
-CONFIG_NET_IP_TUNNEL=m
-CONFIG_NET_IPGRE=m
-CONFIG_NET_IPGRE_BROADCAST=y
-CONFIG_IP_MROUTE_COMMON=y
-CONFIG_IP_MROUTE=y
-CONFIG_IP_MROUTE_MULTIPLE_TABLES=y
-CONFIG_IP_PIMSM_V1=y
-CONFIG_IP_PIMSM_V2=y
-CONFIG_SYN_COOKIES=y
-CONFIG_NET_IPVTI=m
-CONFIG_NET_UDP_TUNNEL=m
-CONFIG_NET_FOU=m
-CONFIG_NET_FOU_IP_TUNNELS=y
-CONFIG_INET_AH=m
-CONFIG_INET_ESP=m
-# CONFIG_INET_ESP_OFFLOAD is not set
-# CONFIG_INET_ESPINTCP is not set
-CONFIG_INET_IPCOMP=m
-CONFIG_INET_XFRM_TUNNEL=m
-CONFIG_INET_TUNNEL=m
-CONFIG_INET_DIAG=m
-CONFIG_INET_TCP_DIAG=m
-CONFIG_INET_UDP_DIAG=m
-CONFIG_INET_RAW_DIAG=m
-# CONFIG_INET_DIAG_DESTROY is not set
-CONFIG_TCP_CONG_ADVANCED=y
-# CONFIG_TCP_CONG_BIC is not set
-CONFIG_TCP_CONG_CUBIC=y
-# CONFIG_TCP_CONG_WESTWOOD is not set
-# CONFIG_TCP_CONG_HTCP is not set
-# CONFIG_TCP_CONG_HSTCP is not set
-# CONFIG_TCP_CONG_HYBLA is not set
-# CONFIG_TCP_CONG_VEGAS is not set
-# CONFIG_TCP_CONG_NV is not set
-# CONFIG_TCP_CONG_SCALABLE is not set
-# CONFIG_TCP_CONG_LP is not set
-# CONFIG_TCP_CONG_VENO is not set
-# CONFIG_TCP_CONG_YEAH is not set
-# CONFIG_TCP_CONG_ILLINOIS is not set
-# CONFIG_TCP_CONG_DCTCP is not set
-# CONFIG_TCP_CONG_CDG is not set
-# CONFIG_TCP_CONG_BBR is not set
-CONFIG_DEFAULT_CUBIC=y
-# CONFIG_DEFAULT_RENO is not set
-CONFIG_DEFAULT_TCP_CONG="cubic"
-CONFIG_TCP_MD5SIG=y
-CONFIG_IPV6=y
-CONFIG_IPV6_ROUTER_PREF=y
-CONFIG_IPV6_ROUTE_INFO=y
-CONFIG_IPV6_OPTIMISTIC_DAD=y
-CONFIG_INET6_AH=m
-CONFIG_INET6_ESP=m
-# CONFIG_INET6_ESP_OFFLOAD is not set
-# CONFIG_INET6_ESPINTCP is not set
-CONFIG_INET6_IPCOMP=m
-CONFIG_IPV6_MIP6=m
-CONFIG_IPV6_ILA=m
-CONFIG_INET6_XFRM_TUNNEL=m
-CONFIG_INET6_TUNNEL=m
-CONFIG_IPV6_VTI=m
-CONFIG_IPV6_SIT=m
-CONFIG_IPV6_SIT_6RD=y
-CONFIG_IPV6_NDISC_NODETYPE=y
-CONFIG_IPV6_TUNNEL=m
-CONFIG_IPV6_GRE=m
-CONFIG_IPV6_FOU=m
-CONFIG_IPV6_FOU_TUNNEL=m
-CONFIG_IPV6_MULTIPLE_TABLES=y
-CONFIG_IPV6_SUBTREES=y
-CONFIG_IPV6_MROUTE=y
-CONFIG_IPV6_MROUTE_MULTIPLE_TABLES=y
-CONFIG_IPV6_PIMSM_V2=y
-CONFIG_IPV6_SEG6_LWTUNNEL=y
-CONFIG_IPV6_SEG6_HMAC=y
-CONFIG_IPV6_SEG6_BPF=y
-# CONFIG_IPV6_RPL_LWTUNNEL is not set
-# CONFIG_IPV6_IOAM6_LWTUNNEL is not set
-# CONFIG_NETLABEL is not set
-CONFIG_MPTCP=y
-CONFIG_INET_MPTCP_DIAG=m
-CONFIG_MPTCP_IPV6=y
-# CONFIG_NETWORK_SECMARK is not set
-CONFIG_NET_PTP_CLASSIFY=y
-CONFIG_NETWORK_PHY_TIMESTAMPING=y
-CONFIG_NETFILTER=y
-CONFIG_NETFILTER_ADVANCED=y
-CONFIG_BRIDGE_NETFILTER=m
-
-#
-# Core Netfilter Configuration
-#
-CONFIG_NETFILTER_INGRESS=y
-CONFIG_NETFILTER_EGRESS=y
-CONFIG_NETFILTER_SKIP_EGRESS=y
-CONFIG_NETFILTER_NETLINK=m
-CONFIG_NETFILTER_FAMILY_BRIDGE=y
-CONFIG_NETFILTER_FAMILY_ARP=y
-# CONFIG_NETFILTER_NETLINK_HOOK is not set
-CONFIG_NETFILTER_NETLINK_ACCT=m
-CONFIG_NETFILTER_NETLINK_QUEUE=m
-CONFIG_NETFILTER_NETLINK_LOG=m
-CONFIG_NETFILTER_NETLINK_OSF=m
-CONFIG_NF_CONNTRACK=m
-CONFIG_NF_LOG_SYSLOG=m
-CONFIG_NETFILTER_CONNCOUNT=m
-CONFIG_NF_CONNTRACK_MARK=y
-CONFIG_NF_CONNTRACK_ZONES=y
-CONFIG_NF_CONNTRACK_PROCFS=y
-CONFIG_NF_CONNTRACK_EVENTS=y
-CONFIG_NF_CONNTRACK_TIMEOUT=y
-CONFIG_NF_CONNTRACK_TIMESTAMP=y
-CONFIG_NF_CONNTRACK_LABELS=y
-CONFIG_NF_CT_PROTO_DCCP=y
-CONFIG_NF_CT_PROTO_GRE=y
-CONFIG_NF_CT_PROTO_SCTP=y
-CONFIG_NF_CT_PROTO_UDPLITE=y
-CONFIG_NF_CONNTRACK_AMANDA=m
-CONFIG_NF_CONNTRACK_FTP=m
-CONFIG_NF_CONNTRACK_H323=m
-CONFIG_NF_CONNTRACK_IRC=m
-CONFIG_NF_CONNTRACK_BROADCAST=m
-CONFIG_NF_CONNTRACK_NETBIOS_NS=m
-CONFIG_NF_CONNTRACK_SNMP=m
-CONFIG_NF_CONNTRACK_PPTP=m
-CONFIG_NF_CONNTRACK_SANE=m
-CONFIG_NF_CONNTRACK_SIP=m
-CONFIG_NF_CONNTRACK_TFTP=m
-CONFIG_NF_CT_NETLINK=m
-CONFIG_NF_CT_NETLINK_TIMEOUT=m
-CONFIG_NF_CT_NETLINK_HELPER=m
-CONFIG_NETFILTER_NETLINK_GLUE_CT=y
-CONFIG_NF_NAT=m
-CONFIG_NF_NAT_AMANDA=m
-CONFIG_NF_NAT_FTP=m
-CONFIG_NF_NAT_IRC=m
-CONFIG_NF_NAT_SIP=m
-CONFIG_NF_NAT_TFTP=m
-CONFIG_NF_NAT_REDIRECT=y
-CONFIG_NF_NAT_MASQUERADE=y
-CONFIG_NETFILTER_SYNPROXY=m
-CONFIG_NF_TABLES=m
-CONFIG_NF_TABLES_INET=y
-CONFIG_NF_TABLES_NETDEV=y
-CONFIG_NFT_NUMGEN=m
-CONFIG_NFT_CT=m
-CONFIG_NFT_FLOW_OFFLOAD=m
-CONFIG_NFT_CONNLIMIT=m
-CONFIG_NFT_LOG=m
-CONFIG_NFT_LIMIT=m
-CONFIG_NFT_MASQ=m
-CONFIG_NFT_REDIR=m
-CONFIG_NFT_NAT=m
-CONFIG_NFT_TUNNEL=m
-CONFIG_NFT_OBJREF=m
-CONFIG_NFT_QUEUE=m
-CONFIG_NFT_QUOTA=m
-CONFIG_NFT_REJECT=m
-CONFIG_NFT_REJECT_INET=m
-CONFIG_NFT_COMPAT=m
-CONFIG_NFT_HASH=m
-CONFIG_NFT_FIB=m
-CONFIG_NFT_FIB_INET=m
-CONFIG_NFT_XFRM=m
-CONFIG_NFT_SOCKET=m
-CONFIG_NFT_OSF=m
-CONFIG_NFT_TPROXY=m
-# CONFIG_NFT_SYNPROXY is not set
-CONFIG_NF_DUP_NETDEV=m
-CONFIG_NFT_DUP_NETDEV=m
-CONFIG_NFT_FWD_NETDEV=m
-CONFIG_NFT_FIB_NETDEV=m
-CONFIG_NFT_REJECT_NETDEV=m
-CONFIG_NF_FLOW_TABLE_INET=m
-CONFIG_NF_FLOW_TABLE=m
-CONFIG_NETFILTER_XTABLES=m
-CONFIG_NETFILTER_XTABLES_COMPAT=y
-
-#
-# Xtables combined modules
-#
-CONFIG_NETFILTER_XT_MARK=m
-CONFIG_NETFILTER_XT_CONNMARK=m
-CONFIG_NETFILTER_XT_SET=m
-
-#
-# Xtables targets
-#
-CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m
-CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
-CONFIG_NETFILTER_XT_TARGET_CONNMARK=m
-CONFIG_NETFILTER_XT_TARGET_CT=m
-CONFIG_NETFILTER_XT_TARGET_DSCP=m
-CONFIG_NETFILTER_XT_TARGET_HL=m
-CONFIG_NETFILTER_XT_TARGET_HMARK=m
-CONFIG_NETFILTER_XT_TARGET_IDLETIMER=m
-CONFIG_NETFILTER_XT_TARGET_LED=m
-CONFIG_NETFILTER_XT_TARGET_LOG=m
-CONFIG_NETFILTER_XT_TARGET_MARK=m
-CONFIG_NETFILTER_XT_NAT=m
-CONFIG_NETFILTER_XT_TARGET_NETMAP=m
-CONFIG_NETFILTER_XT_TARGET_NFLOG=m
-CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
-# CONFIG_NETFILTER_XT_TARGET_NOTRACK is not set
-CONFIG_NETFILTER_XT_TARGET_RATEEST=m
-CONFIG_NETFILTER_XT_TARGET_REDIRECT=m
-CONFIG_NETFILTER_XT_TARGET_MASQUERADE=m
-CONFIG_NETFILTER_XT_TARGET_TEE=m
-CONFIG_NETFILTER_XT_TARGET_TPROXY=m
-CONFIG_NETFILTER_XT_TARGET_TRACE=m
-CONFIG_NETFILTER_XT_TARGET_TCPMSS=m
-CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m
-
-#
-# Xtables matches
-#
-CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m
-CONFIG_NETFILTER_XT_MATCH_BPF=m
-CONFIG_NETFILTER_XT_MATCH_CGROUP=m
-CONFIG_NETFILTER_XT_MATCH_CLUSTER=m
-CONFIG_NETFILTER_XT_MATCH_COMMENT=m
-CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m
-CONFIG_NETFILTER_XT_MATCH_CONNLABEL=m
-CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m
-CONFIG_NETFILTER_XT_MATCH_CONNMARK=m
-CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
-CONFIG_NETFILTER_XT_MATCH_CPU=m
-CONFIG_NETFILTER_XT_MATCH_DCCP=m
-CONFIG_NETFILTER_XT_MATCH_DEVGROUP=m
-CONFIG_NETFILTER_XT_MATCH_DSCP=m
-CONFIG_NETFILTER_XT_MATCH_ECN=m
-CONFIG_NETFILTER_XT_MATCH_ESP=m
-CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
-CONFIG_NETFILTER_XT_MATCH_HELPER=m
-CONFIG_NETFILTER_XT_MATCH_HL=m
-CONFIG_NETFILTER_XT_MATCH_IPCOMP=m
-CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
-CONFIG_NETFILTER_XT_MATCH_L2TP=m
-CONFIG_NETFILTER_XT_MATCH_LENGTH=m
-CONFIG_NETFILTER_XT_MATCH_LIMIT=m
-CONFIG_NETFILTER_XT_MATCH_MAC=m
-CONFIG_NETFILTER_XT_MATCH_MARK=m
-CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
-CONFIG_NETFILTER_XT_MATCH_NFACCT=m
-CONFIG_NETFILTER_XT_MATCH_OSF=m
-CONFIG_NETFILTER_XT_MATCH_OWNER=m
-CONFIG_NETFILTER_XT_MATCH_POLICY=m
-CONFIG_NETFILTER_XT_MATCH_PHYSDEV=m
-CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m
-CONFIG_NETFILTER_XT_MATCH_QUOTA=m
-CONFIG_NETFILTER_XT_MATCH_RATEEST=m
-CONFIG_NETFILTER_XT_MATCH_REALM=m
-CONFIG_NETFILTER_XT_MATCH_RECENT=m
-CONFIG_NETFILTER_XT_MATCH_SCTP=m
-CONFIG_NETFILTER_XT_MATCH_SOCKET=m
-CONFIG_NETFILTER_XT_MATCH_STATE=m
-CONFIG_NETFILTER_XT_MATCH_STATISTIC=m
-CONFIG_NETFILTER_XT_MATCH_STRING=m
-CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
-CONFIG_NETFILTER_XT_MATCH_TIME=m
-CONFIG_NETFILTER_XT_MATCH_U32=m
-# end of Core Netfilter Configuration
-
-CONFIG_IP_SET=m
-CONFIG_IP_SET_MAX=256
-CONFIG_IP_SET_BITMAP_IP=m
-CONFIG_IP_SET_BITMAP_IPMAC=m
-CONFIG_IP_SET_BITMAP_PORT=m
-CONFIG_IP_SET_HASH_IP=m
-CONFIG_IP_SET_HASH_IPMARK=m
-CONFIG_IP_SET_HASH_IPPORT=m
-CONFIG_IP_SET_HASH_IPPORTIP=m
-CONFIG_IP_SET_HASH_IPPORTNET=m
-CONFIG_IP_SET_HASH_IPMAC=m
-CONFIG_IP_SET_HASH_MAC=m
-CONFIG_IP_SET_HASH_NETPORTNET=m
-CONFIG_IP_SET_HASH_NET=m
-CONFIG_IP_SET_HASH_NETNET=m
-CONFIG_IP_SET_HASH_NETPORT=m
-CONFIG_IP_SET_HASH_NETIFACE=m
-CONFIG_IP_SET_LIST_SET=m
-# CONFIG_IP_VS is not set
-
-#
-# IP: Netfilter Configuration
-#
-CONFIG_NF_DEFRAG_IPV4=m
-CONFIG_NF_SOCKET_IPV4=m
-CONFIG_NF_TPROXY_IPV4=m
-CONFIG_NF_TABLES_IPV4=y
-CONFIG_NFT_REJECT_IPV4=m
-CONFIG_NFT_DUP_IPV4=m
-CONFIG_NFT_FIB_IPV4=m
-CONFIG_NF_TABLES_ARP=y
-CONFIG_NF_DUP_IPV4=m
-CONFIG_NF_LOG_ARP=m
-CONFIG_NF_LOG_IPV4=m
-CONFIG_NF_REJECT_IPV4=m
-CONFIG_NF_NAT_SNMP_BASIC=m
-CONFIG_NF_NAT_PPTP=m
-CONFIG_NF_NAT_H323=m
-CONFIG_IP_NF_IPTABLES=m
-CONFIG_IP_NF_MATCH_AH=m
-CONFIG_IP_NF_MATCH_ECN=m
-CONFIG_IP_NF_MATCH_RPFILTER=m
-CONFIG_IP_NF_MATCH_TTL=m
-CONFIG_IP_NF_FILTER=m
-CONFIG_IP_NF_TARGET_REJECT=m
-CONFIG_IP_NF_TARGET_SYNPROXY=m
-CONFIG_IP_NF_NAT=m
-CONFIG_IP_NF_TARGET_MASQUERADE=m
-CONFIG_IP_NF_TARGET_NETMAP=m
-CONFIG_IP_NF_TARGET_REDIRECT=m
-CONFIG_IP_NF_MANGLE=m
-CONFIG_IP_NF_TARGET_CLUSTERIP=m
-CONFIG_IP_NF_TARGET_ECN=m
-CONFIG_IP_NF_TARGET_TTL=m
-CONFIG_IP_NF_RAW=m
-# CONFIG_IP_NF_SECURITY is not set
-CONFIG_IP_NF_ARPTABLES=m
-CONFIG_IP_NF_ARPFILTER=m
-CONFIG_IP_NF_ARP_MANGLE=m
-# end of IP: Netfilter Configuration
-
-#
-# IPv6: Netfilter Configuration
-#
-CONFIG_NF_SOCKET_IPV6=m
-CONFIG_NF_TPROXY_IPV6=m
-CONFIG_NF_TABLES_IPV6=y
-CONFIG_NFT_REJECT_IPV6=m
-CONFIG_NFT_DUP_IPV6=m
-CONFIG_NFT_FIB_IPV6=m
-CONFIG_NF_DUP_IPV6=m
-CONFIG_NF_REJECT_IPV6=m
-CONFIG_NF_LOG_IPV6=m
-CONFIG_IP6_NF_IPTABLES=m
-CONFIG_IP6_NF_MATCH_AH=m
-CONFIG_IP6_NF_MATCH_EUI64=m
-CONFIG_IP6_NF_MATCH_FRAG=m
-CONFIG_IP6_NF_MATCH_OPTS=m
-CONFIG_IP6_NF_MATCH_HL=m
-CONFIG_IP6_NF_MATCH_IPV6HEADER=m
-CONFIG_IP6_NF_MATCH_MH=m
-CONFIG_IP6_NF_MATCH_RPFILTER=m
-CONFIG_IP6_NF_MATCH_RT=m
-CONFIG_IP6_NF_MATCH_SRH=m
-CONFIG_IP6_NF_TARGET_HL=m
-CONFIG_IP6_NF_FILTER=m
-CONFIG_IP6_NF_TARGET_REJECT=m
-CONFIG_IP6_NF_TARGET_SYNPROXY=m
-CONFIG_IP6_NF_MANGLE=m
-CONFIG_IP6_NF_RAW=m
-# CONFIG_IP6_NF_SECURITY is not set
-CONFIG_IP6_NF_NAT=m
-CONFIG_IP6_NF_TARGET_MASQUERADE=m
-CONFIG_IP6_NF_TARGET_NPT=m
-# end of IPv6: Netfilter Configuration
-
-CONFIG_NF_DEFRAG_IPV6=m
-CONFIG_NF_TABLES_BRIDGE=m
-# CONFIG_NFT_BRIDGE_META is not set
-CONFIG_NFT_BRIDGE_REJECT=m
-# CONFIG_NF_CONNTRACK_BRIDGE is not set
-CONFIG_BRIDGE_NF_EBTABLES=m
-CONFIG_BRIDGE_EBT_BROUTE=m
-CONFIG_BRIDGE_EBT_T_FILTER=m
-CONFIG_BRIDGE_EBT_T_NAT=m
-CONFIG_BRIDGE_EBT_802_3=m
-CONFIG_BRIDGE_EBT_AMONG=m
-CONFIG_BRIDGE_EBT_ARP=m
-CONFIG_BRIDGE_EBT_IP=m
-CONFIG_BRIDGE_EBT_IP6=m
-CONFIG_BRIDGE_EBT_LIMIT=m
-CONFIG_BRIDGE_EBT_MARK=m
-CONFIG_BRIDGE_EBT_PKTTYPE=m
-CONFIG_BRIDGE_EBT_STP=m
-CONFIG_BRIDGE_EBT_VLAN=m
-CONFIG_BRIDGE_EBT_ARPREPLY=m
-CONFIG_BRIDGE_EBT_DNAT=m
-CONFIG_BRIDGE_EBT_MARK_T=m
-CONFIG_BRIDGE_EBT_REDIRECT=m
-CONFIG_BRIDGE_EBT_SNAT=m
-CONFIG_BRIDGE_EBT_LOG=m
-CONFIG_BRIDGE_EBT_NFLOG=m
-# CONFIG_BPFILTER is not set
-CONFIG_IP_DCCP=m
-CONFIG_INET_DCCP_DIAG=m
-
-#
-# DCCP CCIDs Configuration
-#
-# CONFIG_IP_DCCP_CCID2_DEBUG is not set
-CONFIG_IP_DCCP_CCID3=y
-# CONFIG_IP_DCCP_CCID3_DEBUG is not set
-CONFIG_IP_DCCP_TFRC_LIB=y
-# end of DCCP CCIDs Configuration
-
-CONFIG_IP_SCTP=m
-# CONFIG_SCTP_DBG_OBJCNT is not set
-# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set
-CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y
-# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set
-CONFIG_SCTP_COOKIE_HMAC_MD5=y
-CONFIG_SCTP_COOKIE_HMAC_SHA1=y
-CONFIG_INET_SCTP_DIAG=m
-# CONFIG_RDS is not set
-# CONFIG_TIPC is not set
-# CONFIG_ATM is not set
-CONFIG_L2TP=m
-CONFIG_L2TP_V3=y
-CONFIG_L2TP_IP=m
-CONFIG_L2TP_ETH=m
-CONFIG_STP=m
-CONFIG_GARP=m
-CONFIG_MRP=m
-CONFIG_BRIDGE=m
-CONFIG_BRIDGE_IGMP_SNOOPING=y
-CONFIG_BRIDGE_VLAN_FILTERING=y
-# CONFIG_BRIDGE_MRP is not set
-# CONFIG_BRIDGE_CFM is not set
-# CONFIG_NET_DSA is not set
-CONFIG_VLAN_8021Q=m
-CONFIG_VLAN_8021Q_GVRP=y
-CONFIG_VLAN_8021Q_MVRP=y
-# CONFIG_DECNET is not set
-CONFIG_LLC=m
-# CONFIG_LLC2 is not set
-# CONFIG_ATALK is not set
-# CONFIG_X25 is not set
-# CONFIG_LAPB is not set
-# CONFIG_PHONET is not set
-# CONFIG_6LOWPAN is not set
-# CONFIG_IEEE802154 is not set
-CONFIG_NET_SCHED=y
-
-#
-# Queueing/Scheduling
-#
-# CONFIG_NET_SCH_CBQ is not set
-CONFIG_NET_SCH_HTB=m
-CONFIG_NET_SCH_HFSC=m
-CONFIG_NET_SCH_PRIO=m
-CONFIG_NET_SCH_MULTIQ=m
-# CONFIG_NET_SCH_RED is not set
-CONFIG_NET_SCH_SFB=m
-CONFIG_NET_SCH_SFQ=m
-CONFIG_NET_SCH_TEQL=m
-CONFIG_NET_SCH_TBF=m
-# CONFIG_NET_SCH_CBS is not set
-# CONFIG_NET_SCH_ETF is not set
-# CONFIG_NET_SCH_TAPRIO is not set
-# CONFIG_NET_SCH_GRED is not set
-CONFIG_NET_SCH_DSMARK=m
-CONFIG_NET_SCH_NETEM=m
-# CONFIG_NET_SCH_DRR is not set
-CONFIG_NET_SCH_MQPRIO=m
-# CONFIG_NET_SCH_SKBPRIO is not set
-CONFIG_NET_SCH_CHOKE=m
-CONFIG_NET_SCH_QFQ=m
-CONFIG_NET_SCH_CODEL=m
-CONFIG_NET_SCH_FQ_CODEL=m
-# CONFIG_NET_SCH_CAKE is not set
-CONFIG_NET_SCH_FQ=m
-CONFIG_NET_SCH_HHF=m
-CONFIG_NET_SCH_PIE=m
-CONFIG_NET_SCH_FQ_PIE=m
-CONFIG_NET_SCH_INGRESS=m
-CONFIG_NET_SCH_PLUG=m
-CONFIG_NET_SCH_ETS=m
-# CONFIG_NET_SCH_DEFAULT is not set
-
-#
-# Classification
-#
-CONFIG_NET_CLS=y
-CONFIG_NET_CLS_BASIC=m
-CONFIG_NET_CLS_TCINDEX=m
-CONFIG_NET_CLS_ROUTE4=m
-CONFIG_NET_CLS_FW=m
-CONFIG_NET_CLS_U32=m
-# CONFIG_CLS_U32_PERF is not set
-CONFIG_CLS_U32_MARK=y
-# CONFIG_NET_CLS_RSVP is not set
-# CONFIG_NET_CLS_RSVP6 is not set
-CONFIG_NET_CLS_FLOW=m
-# CONFIG_NET_CLS_CGROUP is not set
-# CONFIG_NET_CLS_BPF is not set
-CONFIG_NET_CLS_FLOWER=m
-# CONFIG_NET_CLS_MATCHALL is not set
-# CONFIG_NET_EMATCH is not set
-CONFIG_NET_CLS_ACT=y
-CONFIG_NET_ACT_POLICE=y
-CONFIG_NET_ACT_GACT=y
-# CONFIG_GACT_PROB is not set
-CONFIG_NET_ACT_MIRRED=m
-CONFIG_NET_ACT_SAMPLE=m
-CONFIG_NET_ACT_IPT=m
-CONFIG_NET_ACT_NAT=m
-# CONFIG_NET_ACT_PEDIT is not set
-# CONFIG_NET_ACT_SIMP is not set
-# CONFIG_NET_ACT_SKBEDIT is not set
-# CONFIG_NET_ACT_CSUM is not set
-# CONFIG_NET_ACT_MPLS is not set
-# CONFIG_NET_ACT_VLAN is not set
-# CONFIG_NET_ACT_BPF is not set
-CONFIG_NET_ACT_CONNMARK=m
-# CONFIG_NET_ACT_CTINFO is not set
-CONFIG_NET_ACT_SKBMOD=m
-CONFIG_NET_ACT_IFE=m
-CONFIG_NET_ACT_TUNNEL_KEY=m
-# CONFIG_NET_ACT_CT is not set
-# CONFIG_NET_ACT_GATE is not set
-CONFIG_NET_IFE_SKBMARK=m
-CONFIG_NET_IFE_SKBPRIO=m
-CONFIG_NET_IFE_SKBTCINDEX=m
-# CONFIG_NET_TC_SKB_EXT is not set
-CONFIG_NET_SCH_FIFO=y
-# CONFIG_DCB is not set
-CONFIG_DNS_RESOLVER=m
-CONFIG_BATMAN_ADV=m
-# CONFIG_BATMAN_ADV_BATMAN_V is not set
-CONFIG_BATMAN_ADV_BLA=y
-CONFIG_BATMAN_ADV_DAT=y
-CONFIG_BATMAN_ADV_NC=y
-CONFIG_BATMAN_ADV_MCAST=y
-# CONFIG_BATMAN_ADV_DEBUG is not set
-CONFIG_OPENVSWITCH=m
-CONFIG_OPENVSWITCH_GRE=m
-CONFIG_VSOCKETS=m
-CONFIG_VSOCKETS_DIAG=m
-CONFIG_VSOCKETS_LOOPBACK=m
-CONFIG_VIRTIO_VSOCKETS=m
-CONFIG_VIRTIO_VSOCKETS_COMMON=m
-CONFIG_NETLINK_DIAG=m
-CONFIG_MPLS=y
-CONFIG_NET_MPLS_GSO=m
-CONFIG_MPLS_ROUTING=m
-# CONFIG_MPLS_IPTUNNEL is not set
-CONFIG_NET_NSH=m
-CONFIG_HSR=m
-# CONFIG_NET_SWITCHDEV is not set
-CONFIG_NET_L3_MASTER_DEV=y
-# CONFIG_QRTR is not set
-# CONFIG_NET_NCSI is not set
-CONFIG_PCPU_DEV_REFCNT=y
-CONFIG_RPS=y
-CONFIG_RFS_ACCEL=y
-CONFIG_SOCK_RX_QUEUE_MAPPING=y
-CONFIG_XPS=y
-CONFIG_CGROUP_NET_PRIO=y
-CONFIG_CGROUP_NET_CLASSID=y
-CONFIG_NET_RX_BUSY_POLL=y
-CONFIG_BQL=y
-CONFIG_NET_FLOW_LIMIT=y
-
-#
-# Network testing
-#
-# CONFIG_NET_PKTGEN is not set
-# end of Network testing
-# end of Networking options
-
-CONFIG_HAMRADIO=y
-
-#
-# Packet Radio protocols
-#
-CONFIG_AX25=m
-CONFIG_AX25_DAMA_SLAVE=y
-CONFIG_NETROM=m
-CONFIG_ROSE=m
-
-#
-# AX.25 network device drivers
-#
-CONFIG_MKISS=m
-CONFIG_6PACK=m
-CONFIG_BPQETHER=m
-CONFIG_BAYCOM_SER_FDX=m
-CONFIG_BAYCOM_SER_HDX=m
-CONFIG_YAM=m
-# end of AX.25 network device drivers
-
-CONFIG_CAN=m
-CONFIG_CAN_RAW=m
-CONFIG_CAN_BCM=m
-CONFIG_CAN_GW=m
-# CONFIG_CAN_J1939 is not set
-# CONFIG_CAN_ISOTP is not set
-
-#
-# CAN Device Drivers
-#
-# CONFIG_CAN_VCAN is not set
-# CONFIG_CAN_VXCAN is not set
-CONFIG_CAN_SLCAN=m
-CONFIG_CAN_DEV=m
-CONFIG_CAN_CALC_BITTIMING=y
-# CONFIG_CAN_FLEXCAN is not set
-# CONFIG_CAN_GRCAN is not set
-# CONFIG_CAN_KVASER_PCIEFD is not set
-# CONFIG_CAN_XILINXCAN is not set
-# CONFIG_CAN_C_CAN is not set
-# CONFIG_CAN_CC770 is not set
-# CONFIG_CAN_IFI_CANFD is not set
-# CONFIG_CAN_M_CAN is not set
-# CONFIG_CAN_PEAK_PCIEFD is not set
-# CONFIG_CAN_SJA1000 is not set
-# CONFIG_CAN_SOFTING is not set
-
-#
-# CAN SPI interfaces
-#
-# CONFIG_CAN_HI311X is not set
-# CONFIG_CAN_MCP251X is not set
-# CONFIG_CAN_MCP251XFD is not set
-# end of CAN SPI interfaces
-
-#
-# CAN USB interfaces
-#
-# CONFIG_CAN_8DEV_USB is not set
-# CONFIG_CAN_EMS_USB is not set
-# CONFIG_CAN_ESD_USB2 is not set
-# CONFIG_CAN_ETAS_ES58X is not set
-# CONFIG_CAN_GS_USB is not set
-# CONFIG_CAN_KVASER_USB is not set
-# CONFIG_CAN_MCBA_USB is not set
-# CONFIG_CAN_PEAK_USB is not set
-# CONFIG_CAN_UCAN is not set
-# end of CAN USB interfaces
-
-# CONFIG_CAN_DEBUG_DEVICES is not set
-# end of CAN Device Drivers
-
-CONFIG_BT=m
-CONFIG_BT_BREDR=y
-CONFIG_BT_RFCOMM=m
-# CONFIG_BT_RFCOMM_TTY is not set
-# CONFIG_BT_BNEP is not set
-CONFIG_BT_HIDP=m
-CONFIG_BT_HS=y
-CONFIG_BT_LE=y
-# CONFIG_BT_LEDS is not set
-# CONFIG_BT_MSFTEXT is not set
-# CONFIG_BT_AOSPEXT is not set
-# CONFIG_BT_FEATURE_DEBUG is not set
-
-#
-# Bluetooth device drivers
-#
-# CONFIG_BT_HCIBTUSB is not set
-# CONFIG_BT_HCIBTSDIO is not set
-# CONFIG_BT_HCIUART is not set
-# CONFIG_BT_HCIBCM203X is not set
-# CONFIG_BT_HCIBPA10X is not set
-# CONFIG_BT_HCIBFUSB is not set
-# CONFIG_BT_HCIVHCI is not set
-CONFIG_BT_MRVL=m
-CONFIG_BT_MRVL_SDIO=m
-# CONFIG_BT_MTKSDIO is not set
-# CONFIG_BT_MTKUART is not set
-# CONFIG_BT_VIRTIO is not set
-# end of Bluetooth device drivers
-
-# CONFIG_AF_RXRPC is not set
-# CONFIG_AF_KCM is not set
-CONFIG_STREAM_PARSER=y
-# CONFIG_MCTP is not set
-CONFIG_FIB_RULES=y
-CONFIG_WIRELESS=y
-CONFIG_WIRELESS_EXT=y
-CONFIG_WEXT_CORE=y
-CONFIG_WEXT_PROC=y
-CONFIG_WEXT_PRIV=y
-CONFIG_CFG80211=m
-# CONFIG_NL80211_TESTMODE is not set
-# CONFIG_CFG80211_DEVELOPER_WARNINGS is not set
-CONFIG_CFG80211_REQUIRE_SIGNED_REGDB=y
-CONFIG_CFG80211_USE_KERNEL_REGDB_KEYS=y
-CONFIG_CFG80211_DEFAULT_PS=y
-CONFIG_CFG80211_CRDA_SUPPORT=y
-CONFIG_CFG80211_WEXT=y
-CONFIG_LIB80211=m
-CONFIG_LIB80211_CRYPT_WEP=m
-CONFIG_LIB80211_CRYPT_CCMP=m
-# CONFIG_LIB80211_DEBUG is not set
-CONFIG_MAC80211=m
-CONFIG_MAC80211_HAS_RC=y
-CONFIG_MAC80211_RC_MINSTREL=y
-CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y
-CONFIG_MAC80211_RC_DEFAULT="minstrel_ht"
-CONFIG_MAC80211_MESH=y
-CONFIG_MAC80211_LEDS=y
-# CONFIG_MAC80211_MESSAGE_TRACING is not set
-# CONFIG_MAC80211_DEBUG_MENU is not set
-CONFIG_MAC80211_STA_HASH_MAX_SIZE=0
-CONFIG_RFKILL=m
-CONFIG_RFKILL_LEDS=y
-CONFIG_RFKILL_INPUT=y
-CONFIG_RFKILL_GPIO=m
-# CONFIG_NET_9P is not set
-# CONFIG_CAIF is not set
-# CONFIG_CEPH_LIB is not set
-# CONFIG_NFC is not set
-CONFIG_PSAMPLE=m
-CONFIG_NET_IFE=m
-CONFIG_LWTUNNEL=y
-# CONFIG_LWTUNNEL_BPF is not set
-CONFIG_DST_CACHE=y
-CONFIG_GRO_CELLS=y
-CONFIG_NET_SELFTESTS=y
-CONFIG_NET_SOCK_MSG=y
-CONFIG_FAILOVER=m
-CONFIG_ETHTOOL_NETLINK=y
-
-#
-# Device Drivers
-#
-CONFIG_ARM_AMBA=y
-CONFIG_HAVE_PCI=y
-CONFIG_PCI=y
-CONFIG_PCI_DOMAINS=y
-CONFIG_PCI_DOMAINS_GENERIC=y
-CONFIG_PCI_SYSCALL=y
-CONFIG_PCIEPORTBUS=y
-CONFIG_HOTPLUG_PCI_PCIE=y
-CONFIG_PCIEAER=y
-CONFIG_PCIEAER_INJECT=m
-CONFIG_PCIE_ECRC=y
-CONFIG_PCIEASPM=y
-CONFIG_PCIEASPM_DEFAULT=y
-# CONFIG_PCIEASPM_POWERSAVE is not set
-# CONFIG_PCIEASPM_POWER_SUPERSAVE is not set
-# CONFIG_PCIEASPM_PERFORMANCE is not set
-CONFIG_PCIE_PME=y
-# CONFIG_PCIE_DPC is not set
-# CONFIG_PCIE_PTM is not set
-CONFIG_PCI_MSI=y
-CONFIG_PCI_MSI_IRQ_DOMAIN=y
-CONFIG_PCI_QUIRKS=y
-# CONFIG_PCI_REALLOC_ENABLE_AUTO is not set
-CONFIG_PCI_STUB=y
-# CONFIG_PCI_PF_STUB is not set
-CONFIG_PCI_ATS=y
-CONFIG_PCI_ECAM=y
-CONFIG_PCI_IOV=y
-CONFIG_PCI_PRI=y
-CONFIG_PCI_PASID=y
-CONFIG_PCI_LABEL=y
-CONFIG_HOTPLUG_PCI=y
-CONFIG_HOTPLUG_PCI_ACPI=y
-# CONFIG_HOTPLUG_PCI_ACPI_IBM is not set
-# CONFIG_HOTPLUG_PCI_CPCI is not set
-# CONFIG_HOTPLUG_PCI_SHPC is not set
-
-#
-# PCI controller drivers
-#
-# CONFIG_PCI_FTPCI100 is not set
-CONFIG_PCI_HOST_COMMON=y
-CONFIG_PCI_HOST_GENERIC=m
-# CONFIG_PCIE_XILINX is not set
-# CONFIG_PCI_XGENE is not set
-# CONFIG_PCIE_ALTERA is not set
-# CONFIG_PCI_HOST_THUNDER_PEM is not set
-# CONFIG_PCI_HOST_THUNDER_ECAM is not set
-CONFIG_PCIE_ROCKCHIP=y
-CONFIG_PCIE_ROCKCHIP_HOST=y
-# CONFIG_PCIE_MICROCHIP_HOST is not set
-
-#
-# DesignWare PCI Core Support
-#
-CONFIG_PCIE_DW=y
-CONFIG_PCIE_DW_HOST=y
-CONFIG_PCIE_DW_PLAT=y
-CONFIG_PCIE_DW_PLAT_HOST=y
-CONFIG_PCI_HISI=y
-CONFIG_PCIE_ROCKCHIP_DW_HOST=y
-# CONFIG_PCIE_KIRIN is not set
-# CONFIG_PCI_MESON is not set
-# CONFIG_PCIE_AL is not set
-# end of DesignWare PCI Core Support
-
-#
-# Mobiveil PCIe Core Support
-#
-# end of Mobiveil PCIe Core Support
-
-#
-# Cadence PCIe controllers support
-#
-# CONFIG_PCIE_CADENCE_PLAT_HOST is not set
-# CONFIG_PCI_J721E_HOST is not set
-# end of Cadence PCIe controllers support
-# end of PCI controller drivers
-
-#
-# PCI Endpoint
-#
-# CONFIG_PCI_ENDPOINT is not set
-# end of PCI Endpoint
-
-#
-# PCI switch controller drivers
-#
-# CONFIG_PCI_SW_SWITCHTEC is not set
-# end of PCI switch controller drivers
-
-# CONFIG_CXL_BUS is not set
-# CONFIG_PCCARD is not set
-# CONFIG_RAPIDIO is not set
-
-#
-# Generic Driver Options
-#
-CONFIG_UEVENT_HELPER=y
-CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
-CONFIG_DEVTMPFS=y
-CONFIG_DEVTMPFS_MOUNT=y
-# CONFIG_DEVTMPFS_SAFE is not set
-CONFIG_STANDALONE=y
-CONFIG_PREVENT_FIRMWARE_BUILD=y
-
-#
-# Firmware loader
-#
-CONFIG_FW_LOADER=y
-CONFIG_EXTRA_FIRMWARE=""
-# CONFIG_FW_LOADER_USER_HELPER is not set
-# CONFIG_FW_LOADER_COMPRESS is not set
-CONFIG_FW_CACHE=y
-# end of Firmware loader
-
-CONFIG_WANT_DEV_COREDUMP=y
-CONFIG_ALLOW_DEV_COREDUMP=y
-CONFIG_DEV_COREDUMP=y
-# CONFIG_TEST_ASYNC_DRIVER_PROBE is not set
-CONFIG_GENERIC_CPU_AUTOPROBE=y
-CONFIG_GENERIC_CPU_VULNERABILITIES=y
-CONFIG_SOC_BUS=y
-CONFIG_REGMAP=y
-CONFIG_REGMAP_I2C=y
-CONFIG_REGMAP_SPI=m
-CONFIG_REGMAP_SPMI=m
-CONFIG_REGMAP_MMIO=y
-CONFIG_REGMAP_IRQ=y
-CONFIG_DMA_SHARED_BUFFER=y
-# CONFIG_DMA_FENCE_TRACE is not set
-CONFIG_GENERIC_ARCH_TOPOLOGY=y
-# end of Generic Driver Options
-
-#
-# Bus devices
-#
-# CONFIG_BRCMSTB_GISB_ARB is not set
-# CONFIG_MOXTET is not set
-# CONFIG_VEXPRESS_CONFIG is not set
-# CONFIG_MHI_BUS is not set
-# end of Bus devices
-
-CONFIG_CONNECTOR=m
-
-#
-# Firmware Drivers
-#
-
-#
-# ARM System Control and Management Interface Protocol
-#
-# CONFIG_ARM_SCMI_PROTOCOL is not set
-# end of ARM System Control and Management Interface Protocol
-
-CONFIG_ARM_SCPI_PROTOCOL=m
-CONFIG_ARM_SCPI_POWER_DOMAIN=m
-# CONFIG_ARM_SDE_INTERFACE is not set
-CONFIG_DMIID=y
-CONFIG_DMI_SYSFS=m
-# CONFIG_ISCSI_IBFT is not set
-CONFIG_FW_CFG_SYSFS=m
-# CONFIG_FW_CFG_SYSFS_CMDLINE is not set
-CONFIG_SYSFB=y
-# CONFIG_SYSFB_SIMPLEFB is not set
-# CONFIG_ARM_FFA_TRANSPORT is not set
-# CONFIG_GOOGLE_FIRMWARE is not set
-
-#
-# EFI (Extensible Firmware Interface) Support
-#
-CONFIG_EFI_ESRT=y
-CONFIG_EFI_VARS_PSTORE=m
-# CONFIG_EFI_VARS_PSTORE_DEFAULT_DISABLE is not set
-CONFIG_EFI_PARAMS_FROM_FDT=y
-CONFIG_EFI_RUNTIME_WRAPPERS=y
-CONFIG_EFI_GENERIC_STUB=y
-# CONFIG_EFI_ARMSTUB_DTB_LOADER is not set
-CONFIG_EFI_GENERIC_STUB_INITRD_CMDLINE_LOADER=y
-CONFIG_EFI_BOOTLOADER_CONTROL=y
-# CONFIG_EFI_CAPSULE_LOADER is not set
-# CONFIG_EFI_TEST is not set
-# CONFIG_RESET_ATTACK_MITIGATION is not set
-# CONFIG_EFI_DISABLE_PCI_DMA is not set
-# end of EFI (Extensible Firmware Interface) Support
-
-CONFIG_EFI_EARLYCON=y
-# CONFIG_EFI_CUSTOM_SSDT_OVERLAYS is not set
-CONFIG_ARM_PSCI_FW=y
-# CONFIG_ARM_PSCI_CHECKER is not set
-CONFIG_HAVE_ARM_SMCCC=y
-CONFIG_HAVE_ARM_SMCCC_DISCOVERY=y
-CONFIG_ARM_SMCCC_SOC_ID=y
-
-#
-# Tegra firmware driver
-#
-# end of Tegra firmware driver
-# end of Firmware Drivers
-
-# CONFIG_GNSS is not set
-# CONFIG_MTD is not set
-CONFIG_DTC=y
-CONFIG_OF=y
-# CONFIG_OF_UNITTEST is not set
-CONFIG_OF_FLATTREE=y
-CONFIG_OF_EARLY_FLATTREE=y
-CONFIG_OF_KOBJ=y
-CONFIG_OF_DYNAMIC=y
-CONFIG_OF_ADDRESS=y
-CONFIG_OF_IRQ=y
-CONFIG_OF_RESERVED_MEM=y
-CONFIG_OF_RESOLVE=y
-CONFIG_OF_OVERLAY=y
-# CONFIG_PARPORT is not set
-CONFIG_PNP=y
-# CONFIG_PNP_DEBUG_MESSAGES is not set
-
-#
-# Protocols
-#
-CONFIG_PNPACPI=y
-CONFIG_BLK_DEV=y
-# CONFIG_BLK_DEV_NULL_BLK is not set
-CONFIG_CDROM=m
-# CONFIG_BLK_DEV_PCIESSD_MTIP32XX is not set
-CONFIG_ZRAM=m
-# CONFIG_ZRAM_DEF_COMP_LZORLE is not set
-CONFIG_ZRAM_DEF_COMP_ZSTD=y
-# CONFIG_ZRAM_DEF_COMP_LZO is not set
-CONFIG_ZRAM_DEF_COMP="zstd"
-# CONFIG_ZRAM_WRITEBACK is not set
-CONFIG_BLK_DEV_LOOP=m
-CONFIG_BLK_DEV_LOOP_MIN_COUNT=0
-# CONFIG_BLK_DEV_DRBD is not set
-# CONFIG_BLK_DEV_NBD is not set
-# CONFIG_BLK_DEV_SX8 is not set
-# CONFIG_BLK_DEV_RAM is not set
-# CONFIG_CDROM_PKTCDVD is not set
-# CONFIG_ATA_OVER_ETH is not set
-CONFIG_VIRTIO_BLK=m
-# CONFIG_BLK_DEV_RBD is not set
-
-#
-# NVME Support
-#
-# CONFIG_BLK_DEV_NVME is not set
-# CONFIG_NVME_FC is not set
-# CONFIG_NVME_TCP is not set
-# CONFIG_NVME_TARGET is not set
-# end of NVME Support
-
-#
-# Misc devices
-#
-# CONFIG_AD525X_DPOT is not set
-# CONFIG_DUMMY_IRQ is not set
-# CONFIG_PHANTOM is not set
-CONFIG_TIFM_CORE=y
-CONFIG_TIFM_7XX1=m
-# CONFIG_ICS932S401 is not set
-# CONFIG_ENCLOSURE_SERVICES is not set
-# CONFIG_HI6421V600_IRQ is not set
-# CONFIG_HP_ILO is not set
-# CONFIG_APDS9802ALS is not set
-# CONFIG_ISL29003 is not set
-# CONFIG_ISL29020 is not set
-# CONFIG_SENSORS_TSL2550 is not set
-# CONFIG_SENSORS_BH1770 is not set
-# CONFIG_SENSORS_APDS990X is not set
-# CONFIG_HMC6352 is not set
-# CONFIG_DS1682 is not set
-# CONFIG_LATTICE_ECP3_CONFIG is not set
-# CONFIG_SRAM is not set
-# CONFIG_DW_XDATA_PCIE is not set
-# CONFIG_PCI_ENDPOINT_TEST is not set
-# CONFIG_XILINX_SDFEC is not set
-# CONFIG_HISI_HIKEY_USB is not set
-# CONFIG_C2PORT is not set
-
-#
-# EEPROM support
-#
-# CONFIG_EEPROM_AT24 is not set
-# CONFIG_EEPROM_AT25 is not set
-# CONFIG_EEPROM_LEGACY is not set
-# CONFIG_EEPROM_MAX6875 is not set
-# CONFIG_EEPROM_93CX6 is not set
-# CONFIG_EEPROM_93XX46 is not set
-# CONFIG_EEPROM_IDT_89HPESX is not set
-# CONFIG_EEPROM_EE1004 is not set
-# end of EEPROM support
-
-CONFIG_CB710_CORE=m
-# CONFIG_CB710_DEBUG is not set
-CONFIG_CB710_DEBUG_ASSUMPTIONS=y
-
-#
-# Texas Instruments shared transport line discipline
-#
-# CONFIG_TI_ST is not set
-# end of Texas Instruments shared transport line discipline
-
-# CONFIG_SENSORS_LIS3_I2C is not set
-# CONFIG_ALTERA_STAPL is not set
-# CONFIG_GENWQE is not set
-# CONFIG_ECHO is not set
-# CONFIG_BCM_VK is not set
-# CONFIG_MISC_ALCOR_PCI is not set
-# CONFIG_MISC_RTSX_PCI is not set
-# CONFIG_MISC_RTSX_USB is not set
-# CONFIG_HABANA_AI is not set
-# CONFIG_UACCE is not set
-# CONFIG_PVPANIC is not set
-# end of Misc devices
-
-#
-# SCSI device support
-#
-CONFIG_SCSI_MOD=y
-# CONFIG_RAID_ATTRS is not set
-CONFIG_SCSI_COMMON=y
-CONFIG_SCSI=y
-CONFIG_SCSI_DMA=y
-CONFIG_SCSI_PROC_FS=y
-
-#
-# SCSI support type (disk, tape, CD-ROM)
-#
-CONFIG_BLK_DEV_SD=y
-# CONFIG_CHR_DEV_ST is not set
-CONFIG_BLK_DEV_SR=m
-# CONFIG_CHR_DEV_SG is not set
-CONFIG_BLK_DEV_BSG=y
-# CONFIG_CHR_DEV_SCH is not set
-# CONFIG_SCSI_CONSTANTS is not set
-# CONFIG_SCSI_LOGGING is not set
-CONFIG_SCSI_SCAN_ASYNC=y
-
-#
-# SCSI Transports
-#
-# CONFIG_SCSI_SPI_ATTRS is not set
-# CONFIG_SCSI_FC_ATTRS is not set
-# CONFIG_SCSI_ISCSI_ATTRS is not set
-# CONFIG_SCSI_SAS_ATTRS is not set
-# CONFIG_SCSI_SAS_LIBSAS is not set
-# CONFIG_SCSI_SRP_ATTRS is not set
-# end of SCSI Transports
-
-CONFIG_SCSI_LOWLEVEL=y
-# CONFIG_ISCSI_TCP is not set
-# CONFIG_ISCSI_BOOT_SYSFS is not set
-# CONFIG_SCSI_CXGB3_ISCSI is not set
-# CONFIG_SCSI_BNX2_ISCSI is not set
-# CONFIG_BE2ISCSI is not set
-# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
-# CONFIG_SCSI_HPSA is not set
-# CONFIG_SCSI_3W_9XXX is not set
-# CONFIG_SCSI_3W_SAS is not set
-# CONFIG_SCSI_ACARD is not set
-# CONFIG_SCSI_AACRAID is not set
-# CONFIG_SCSI_AIC7XXX is not set
-# CONFIG_SCSI_AIC79XX is not set
-# CONFIG_SCSI_AIC94XX is not set
-# CONFIG_SCSI_MVSAS is not set
-# CONFIG_SCSI_MVUMI is not set
-# CONFIG_SCSI_ADVANSYS is not set
-# CONFIG_SCSI_ARCMSR is not set
-# CONFIG_SCSI_ESAS2R is not set
-# CONFIG_MEGARAID_NEWGEN is not set
-# CONFIG_MEGARAID_LEGACY is not set
-# CONFIG_MEGARAID_SAS is not set
-# CONFIG_SCSI_MPT3SAS is not set
-# CONFIG_SCSI_MPT2SAS is not set
-# CONFIG_SCSI_MPI3MR is not set
-# CONFIG_SCSI_SMARTPQI is not set
-# CONFIG_SCSI_UFSHCD is not set
-# CONFIG_SCSI_HPTIOP is not set
-# CONFIG_SCSI_MYRB is not set
-# CONFIG_SCSI_MYRS is not set
-# CONFIG_SCSI_SNIC is not set
-# CONFIG_SCSI_DMX3191D is not set
-# CONFIG_SCSI_FDOMAIN_PCI is not set
-# CONFIG_SCSI_IPS is not set
-# CONFIG_SCSI_INITIO is not set
-# CONFIG_SCSI_INIA100 is not set
-# CONFIG_SCSI_STEX is not set
-# CONFIG_SCSI_SYM53C8XX_2 is not set
-# CONFIG_SCSI_QLOGIC_1280 is not set
-# CONFIG_SCSI_QLA_ISCSI is not set
-# CONFIG_SCSI_DC395x is not set
-# CONFIG_SCSI_AM53C974 is not set
-# CONFIG_SCSI_WD719X is not set
-# CONFIG_SCSI_DEBUG is not set
-# CONFIG_SCSI_PMCRAID is not set
-# CONFIG_SCSI_PM8001 is not set
-CONFIG_SCSI_VIRTIO=m
-# CONFIG_SCSI_DH is not set
-# end of SCSI device support
-
-CONFIG_HAVE_PATA_PLATFORM=y
-# CONFIG_ATA is not set
-CONFIG_MD=y
-# CONFIG_BLK_DEV_MD is not set
-# CONFIG_BCACHE is not set
-CONFIG_BLK_DEV_DM_BUILTIN=y
-CONFIG_BLK_DEV_DM=m
-# CONFIG_DM_DEBUG is not set
-# CONFIG_DM_UNSTRIPED is not set
-CONFIG_DM_CRYPT=m
-# CONFIG_DM_SNAPSHOT is not set
-# CONFIG_DM_THIN_PROVISIONING is not set
-# CONFIG_DM_CACHE is not set
-# CONFIG_DM_WRITECACHE is not set
-# CONFIG_DM_EBS is not set
-# CONFIG_DM_ERA is not set
-# CONFIG_DM_CLONE is not set
-# CONFIG_DM_MIRROR is not set
-# CONFIG_DM_RAID is not set
-# CONFIG_DM_ZERO is not set
-# CONFIG_DM_MULTIPATH is not set
-# CONFIG_DM_DELAY is not set
-# CONFIG_DM_DUST is not set
-# CONFIG_DM_UEVENT is not set
-# CONFIG_DM_FLAKEY is not set
-# CONFIG_DM_VERITY is not set
-# CONFIG_DM_SWITCH is not set
-# CONFIG_DM_LOG_WRITES is not set
-# CONFIG_DM_INTEGRITY is not set
-# CONFIG_DM_ZONED is not set
-# CONFIG_TARGET_CORE is not set
-# CONFIG_FUSION is not set
-
-#
-# IEEE 1394 (FireWire) support
-#
-# CONFIG_FIREWIRE is not set
-# CONFIG_FIREWIRE_NOSY is not set
-# end of IEEE 1394 (FireWire) support
-
-CONFIG_NETDEVICES=y
-CONFIG_MII=m
-CONFIG_NET_CORE=y
-CONFIG_BONDING=m
-CONFIG_DUMMY=m
-CONFIG_WIREGUARD=m
-# CONFIG_WIREGUARD_DEBUG is not set
-CONFIG_EQUALIZER=m
-# CONFIG_NET_FC is not set
-CONFIG_IFB=m
-# CONFIG_NET_TEAM is not set
-# CONFIG_MACVLAN is not set
-# CONFIG_IPVLAN is not set
-# CONFIG_VXLAN is not set
-# CONFIG_GENEVE is not set
-CONFIG_BAREUDP=m
-CONFIG_GTP=m
-# CONFIG_AMT is not set
-CONFIG_MACSEC=m
-# CONFIG_NETCONSOLE is not set
-CONFIG_TUN=m
-# CONFIG_TUN_VNET_CROSS_LE is not set
-CONFIG_VETH=m
-CONFIG_VIRTIO_NET=m
-CONFIG_NLMON=m
-CONFIG_NET_VRF=m
-# CONFIG_VSOCKMON is not set
-# CONFIG_ARCNET is not set
-# CONFIG_ETHERNET is not set
-# CONFIG_FDDI is not set
-# CONFIG_HIPPI is not set
-# CONFIG_NET_SB1000 is not set
-CONFIG_PHYLIB=y
-CONFIG_SWPHY=y
-CONFIG_LED_TRIGGER_PHY=y
-CONFIG_FIXED_PHY=y
-
-#
-# MII PHY device drivers
-#
-# CONFIG_AMD_PHY is not set
-# CONFIG_ADIN_PHY is not set
-# CONFIG_AQUANTIA_PHY is not set
-CONFIG_AX88796B_PHY=m
-# CONFIG_BROADCOM_PHY is not set
-# CONFIG_BCM54140_PHY is not set
-# CONFIG_BCM7XXX_PHY is not set
-# CONFIG_BCM84881_PHY is not set
-# CONFIG_BCM87XX_PHY is not set
-# CONFIG_CICADA_PHY is not set
-# CONFIG_CORTINA_PHY is not set
-# CONFIG_DAVICOM_PHY is not set
-# CONFIG_ICPLUS_PHY is not set
-# CONFIG_LXT_PHY is not set
-# CONFIG_INTEL_XWAY_PHY is not set
-# CONFIG_LSI_ET1011C_PHY is not set
-# CONFIG_MARVELL_PHY is not set
-# CONFIG_MARVELL_10G_PHY is not set
-# CONFIG_MARVELL_88X2222_PHY is not set
-# CONFIG_MAXLINEAR_GPHY is not set
-# CONFIG_MEDIATEK_GE_PHY is not set
-# CONFIG_MICREL_PHY is not set
-CONFIG_MICROCHIP_PHY=m
-# CONFIG_MICROCHIP_T1_PHY is not set
-# CONFIG_MICROSEMI_PHY is not set
-# CONFIG_MOTORCOMM_PHY is not set
-# CONFIG_NATIONAL_PHY is not set
-# CONFIG_NXP_C45_TJA11XX_PHY is not set
-# CONFIG_NXP_TJA11XX_PHY is not set
-CONFIG_AT803X_PHY=m
-CONFIG_QSEMI_PHY=m
-CONFIG_REALTEK_PHY=m
-# CONFIG_RENESAS_PHY is not set
-CONFIG_ROCKCHIP_PHY=y
-CONFIG_SMSC_PHY=m
-CONFIG_STE10XP=m
-# CONFIG_TERANETICS_PHY is not set
-# CONFIG_DP83822_PHY is not set
-# CONFIG_DP83TC811_PHY is not set
-# CONFIG_DP83848_PHY is not set
-# CONFIG_DP83867_PHY is not set
-# CONFIG_DP83869_PHY is not set
-# CONFIG_VITESSE_PHY is not set
-# CONFIG_XILINX_GMII2RGMII is not set
-# CONFIG_MICREL_KS8995MA is not set
-CONFIG_MDIO_DEVICE=y
-CONFIG_MDIO_BUS=y
-CONFIG_FWNODE_MDIO=y
-CONFIG_OF_MDIO=y
-CONFIG_ACPI_MDIO=y
-CONFIG_MDIO_DEVRES=y
-CONFIG_MDIO_BITBANG=m
-# CONFIG_MDIO_BCM_UNIMAC is not set
-# CONFIG_MDIO_GPIO is not set
-# CONFIG_MDIO_HISI_FEMAC is not set
-# CONFIG_MDIO_MVUSB is not set
-# CONFIG_MDIO_MSCC_MIIM is not set
-# CONFIG_MDIO_OCTEON is not set
-# CONFIG_MDIO_IPQ4019 is not set
-# CONFIG_MDIO_IPQ8064 is not set
-# CONFIG_MDIO_THUNDER is not set
-
-#
-# MDIO Multiplexers
-#
-CONFIG_MDIO_BUS_MUX=m
-CONFIG_MDIO_BUS_MUX_GPIO=m
-# CONFIG_MDIO_BUS_MUX_MULTIPLEXER is not set
-CONFIG_MDIO_BUS_MUX_MMIOREG=m
-
-#
-# PCS device drivers
-#
-# CONFIG_PCS_XPCS is not set
-# end of PCS device drivers
-
-CONFIG_PPP=m
-CONFIG_PPP_BSDCOMP=m
-CONFIG_PPP_DEFLATE=m
-CONFIG_PPP_FILTER=y
-CONFIG_PPP_MPPE=m
-CONFIG_PPP_MULTILINK=y
-CONFIG_PPPOE=m
-CONFIG_PPTP=m
-CONFIG_PPPOL2TP=m
-CONFIG_PPP_ASYNC=m
-CONFIG_PPP_SYNC_TTY=m
-CONFIG_SLIP=m
-CONFIG_SLHC=m
-CONFIG_SLIP_COMPRESSED=y
-CONFIG_SLIP_SMART=y
-CONFIG_SLIP_MODE_SLIP6=y
-CONFIG_USB_NET_DRIVERS=m
-CONFIG_USB_CATC=m
-CONFIG_USB_KAWETH=m
-CONFIG_USB_PEGASUS=m
-CONFIG_USB_RTL8150=m
-CONFIG_USB_RTL8152=m
-CONFIG_USB_LAN78XX=m
-CONFIG_USB_USBNET=m
-CONFIG_USB_NET_AX8817X=m
-CONFIG_USB_NET_AX88179_178A=m
-CONFIG_USB_NET_CDCETHER=m
-CONFIG_USB_NET_CDC_EEM=m
-CONFIG_USB_NET_CDC_NCM=m
-CONFIG_USB_NET_HUAWEI_CDC_NCM=m
-CONFIG_USB_NET_CDC_MBIM=m
-CONFIG_USB_NET_DM9601=m
-CONFIG_USB_NET_SR9700=m
-CONFIG_USB_NET_SR9800=m
-CONFIG_USB_NET_SMSC75XX=m
-CONFIG_USB_NET_SMSC95XX=m
-CONFIG_USB_NET_GL620A=m
-CONFIG_USB_NET_NET1080=m
-CONFIG_USB_NET_PLUSB=m
-CONFIG_USB_NET_MCS7830=m
-CONFIG_USB_NET_RNDIS_HOST=m
-CONFIG_USB_NET_CDC_SUBSET_ENABLE=m
-CONFIG_USB_NET_CDC_SUBSET=m
-CONFIG_USB_ALI_M5632=y
-CONFIG_USB_AN2720=y
-CONFIG_USB_BELKIN=y
-CONFIG_USB_ARMLINUX=y
-CONFIG_USB_EPSON2888=y
-CONFIG_USB_KC2190=y
-CONFIG_USB_NET_ZAURUS=m
-CONFIG_USB_NET_CX82310_ETH=m
-CONFIG_USB_NET_KALMIA=m
-CONFIG_USB_NET_QMI_WWAN=m
-CONFIG_USB_HSO=m
-CONFIG_USB_NET_INT51X1=m
-CONFIG_USB_IPHETH=m
-CONFIG_USB_SIERRA_NET=m
-CONFIG_USB_VL600=m
-CONFIG_USB_NET_CH9200=m
-CONFIG_USB_NET_AQC111=m
-# CONFIG_USB_RTL8153_ECM is not set
-CONFIG_WLAN=y
-# CONFIG_WLAN_VENDOR_ADMTEK is not set
-# CONFIG_WLAN_VENDOR_ATH is not set
-# CONFIG_WLAN_VENDOR_ATMEL is not set
-# CONFIG_WLAN_VENDOR_BROADCOM is not set
-# CONFIG_WLAN_VENDOR_CISCO is not set
-# CONFIG_WLAN_VENDOR_INTEL is not set
-# CONFIG_WLAN_VENDOR_INTERSIL is not set
-CONFIG_WLAN_VENDOR_MARVELL=y
-# CONFIG_LIBERTAS is not set
-# CONFIG_LIBERTAS_THINFIRM is not set
-CONFIG_MWIFIEX=m
-CONFIG_MWIFIEX_SDIO=m
-CONFIG_MWIFIEX_PCIE=m
-CONFIG_MWIFIEX_USB=m
-CONFIG_MWL8K=m
-# CONFIG_WLAN_VENDOR_MEDIATEK is not set
-# CONFIG_WLAN_VENDOR_MICROCHIP is not set
-# CONFIG_WLAN_VENDOR_RALINK is not set
-# CONFIG_WLAN_VENDOR_REALTEK is not set
-# CONFIG_WLAN_VENDOR_RSI is not set
-# CONFIG_WLAN_VENDOR_ST is not set
-# CONFIG_WLAN_VENDOR_TI is not set
-# CONFIG_WLAN_VENDOR_ZYDAS is not set
-# CONFIG_WLAN_VENDOR_QUANTENNA is not set
-CONFIG_MAC80211_HWSIM=m
-CONFIG_USB_NET_RNDIS_WLAN=m
-CONFIG_VIRT_WIFI=m
-# CONFIG_WAN is not set
-
-#
-# Wireless WAN
-#
-# CONFIG_WWAN is not set
-# end of Wireless WAN
-
-# CONFIG_VMXNET3 is not set
-# CONFIG_FUJITSU_ES is not set
-CONFIG_NET_FAILOVER=m
-# CONFIG_ISDN is not set
-
-#
-# Input device support
-#
-CONFIG_INPUT=y
-CONFIG_INPUT_LEDS=m
-CONFIG_INPUT_FF_MEMLESS=m
-CONFIG_INPUT_SPARSEKMAP=m
-CONFIG_INPUT_MATRIXKMAP=y
-
-#
-# Userland interfaces
-#
-# CONFIG_INPUT_MOUSEDEV is not set
-CONFIG_INPUT_JOYDEV=m
-CONFIG_INPUT_EVDEV=y
-# CONFIG_INPUT_EVBUG is not set
-
-#
-# Input Device Drivers
-#
-CONFIG_INPUT_KEYBOARD=y
-# CONFIG_KEYBOARD_ADC is not set
-# CONFIG_KEYBOARD_ADP5588 is not set
-# CONFIG_KEYBOARD_ADP5589 is not set
-# CONFIG_KEYBOARD_ATKBD is not set
-# CONFIG_KEYBOARD_QT1050 is not set
-# CONFIG_KEYBOARD_QT1070 is not set
-# CONFIG_KEYBOARD_QT2160 is not set
-# CONFIG_KEYBOARD_DLINK_DIR685 is not set
-# CONFIG_KEYBOARD_LKKBD is not set
-CONFIG_KEYBOARD_GPIO=m
-# CONFIG_KEYBOARD_GPIO_POLLED is not set
-# CONFIG_KEYBOARD_TCA6416 is not set
-# CONFIG_KEYBOARD_TCA8418 is not set
-# CONFIG_KEYBOARD_MATRIX is not set
-# CONFIG_KEYBOARD_LM8323 is not set
-# CONFIG_KEYBOARD_LM8333 is not set
-# CONFIG_KEYBOARD_MAX7359 is not set
-# CONFIG_KEYBOARD_MCS is not set
-# CONFIG_KEYBOARD_MPR121 is not set
-# CONFIG_KEYBOARD_NEWTON is not set
-# CONFIG_KEYBOARD_OPENCORES is not set
-# CONFIG_KEYBOARD_SAMSUNG is not set
-# CONFIG_KEYBOARD_STOWAWAY is not set
-# CONFIG_KEYBOARD_SUNKBD is not set
-# CONFIG_KEYBOARD_OMAP4 is not set
-# CONFIG_KEYBOARD_TM2_TOUCHKEY is not set
-# CONFIG_KEYBOARD_XTKBD is not set
-CONFIG_KEYBOARD_CROS_EC=y
-# CONFIG_KEYBOARD_CAP11XX is not set
-# CONFIG_KEYBOARD_BCM is not set
-# CONFIG_KEYBOARD_MTK_PMIC is not set
-# CONFIG_KEYBOARD_CYPRESS_SF is not set
-# CONFIG_INPUT_MOUSE is not set
-CONFIG_INPUT_JOYSTICK=y
-# CONFIG_JOYSTICK_ANALOG is not set
-# CONFIG_JOYSTICK_A3D is not set
-# CONFIG_JOYSTICK_ADC is not set
-# CONFIG_JOYSTICK_ADI is not set
-# CONFIG_JOYSTICK_COBRA is not set
-# CONFIG_JOYSTICK_GF2K is not set
-# CONFIG_JOYSTICK_GRIP is not set
-# CONFIG_JOYSTICK_GRIP_MP is not set
-# CONFIG_JOYSTICK_GUILLEMOT is not set
-# CONFIG_JOYSTICK_INTERACT is not set
-# CONFIG_JOYSTICK_SIDEWINDER is not set
-# CONFIG_JOYSTICK_TMDC is not set
-CONFIG_JOYSTICK_IFORCE=m
-CONFIG_JOYSTICK_IFORCE_USB=m
-# CONFIG_JOYSTICK_IFORCE_232 is not set
-# CONFIG_JOYSTICK_WARRIOR is not set
-# CONFIG_JOYSTICK_MAGELLAN is not set
-# CONFIG_JOYSTICK_SPACEORB is not set
-# CONFIG_JOYSTICK_SPACEBALL is not set
-# CONFIG_JOYSTICK_STINGER is not set
-# CONFIG_JOYSTICK_TWIDJOY is not set
-# CONFIG_JOYSTICK_ZHENHUA is not set
-# CONFIG_JOYSTICK_AS5011 is not set
-# CONFIG_JOYSTICK_JOYDUMP is not set
-CONFIG_JOYSTICK_XPAD=m
-CONFIG_JOYSTICK_XPAD_FF=y
-CONFIG_JOYSTICK_XPAD_LEDS=y
-# CONFIG_JOYSTICK_PSXPAD_SPI is not set
-# CONFIG_JOYSTICK_PXRC is not set
-# CONFIG_JOYSTICK_QWIIC is not set
-# CONFIG_JOYSTICK_FSIA6B is not set
-# CONFIG_INPUT_TABLET is not set
-CONFIG_INPUT_TOUCHSCREEN=y
-# CONFIG_TOUCHSCREEN_ADS7846 is not set
-# CONFIG_TOUCHSCREEN_AD7877 is not set
-# CONFIG_TOUCHSCREEN_AD7879 is not set
-# CONFIG_TOUCHSCREEN_ADC is not set
-# CONFIG_TOUCHSCREEN_AR1021_I2C is not set
-CONFIG_TOUCHSCREEN_ATMEL_MXT=m
-# CONFIG_TOUCHSCREEN_ATMEL_MXT_T37 is not set
-# CONFIG_TOUCHSCREEN_AUO_PIXCIR is not set
-# CONFIG_TOUCHSCREEN_BU21013 is not set
-# CONFIG_TOUCHSCREEN_BU21029 is not set
-# CONFIG_TOUCHSCREEN_CHIPONE_ICN8318 is not set
-# CONFIG_TOUCHSCREEN_CHIPONE_ICN8505 is not set
-# CONFIG_TOUCHSCREEN_CY8CTMA140 is not set
-# CONFIG_TOUCHSCREEN_CY8CTMG110 is not set
-# CONFIG_TOUCHSCREEN_CYTTSP_CORE is not set
-# CONFIG_TOUCHSCREEN_CYTTSP4_CORE is not set
-# CONFIG_TOUCHSCREEN_DYNAPRO is not set
-# CONFIG_TOUCHSCREEN_HAMPSHIRE is not set
-# CONFIG_TOUCHSCREEN_EETI is not set
-# CONFIG_TOUCHSCREEN_EGALAX is not set
-# CONFIG_TOUCHSCREEN_EGALAX_SERIAL is not set
-# CONFIG_TOUCHSCREEN_EXC3000 is not set
-# CONFIG_TOUCHSCREEN_FUJITSU is not set
-# CONFIG_TOUCHSCREEN_GOODIX is not set
-# CONFIG_TOUCHSCREEN_HIDEEP is not set
-# CONFIG_TOUCHSCREEN_HYCON_HY46XX is not set
-# CONFIG_TOUCHSCREEN_ILI210X is not set
-# CONFIG_TOUCHSCREEN_ILITEK is not set
-# CONFIG_TOUCHSCREEN_S6SY761 is not set
-# CONFIG_TOUCHSCREEN_GUNZE is not set
-# CONFIG_TOUCHSCREEN_EKTF2127 is not set
-# CONFIG_TOUCHSCREEN_ELAN is not set
-# CONFIG_TOUCHSCREEN_ELO is not set
-# CONFIG_TOUCHSCREEN_WACOM_W8001 is not set
-# CONFIG_TOUCHSCREEN_WACOM_I2C is not set
-# CONFIG_TOUCHSCREEN_MAX11801 is not set
-# CONFIG_TOUCHSCREEN_MCS5000 is not set
-# CONFIG_TOUCHSCREEN_MMS114 is not set
-# CONFIG_TOUCHSCREEN_MELFAS_MIP4 is not set
-# CONFIG_TOUCHSCREEN_MSG2638 is not set
-# CONFIG_TOUCHSCREEN_MTOUCH is not set
-# CONFIG_TOUCHSCREEN_IMX6UL_TSC is not set
-# CONFIG_TOUCHSCREEN_INEXIO is not set
-# CONFIG_TOUCHSCREEN_MK712 is not set
-# CONFIG_TOUCHSCREEN_PENMOUNT is not set
-# CONFIG_TOUCHSCREEN_EDT_FT5X06 is not set
-# CONFIG_TOUCHSCREEN_TOUCHRIGHT is not set
-# CONFIG_TOUCHSCREEN_TOUCHWIN is not set
-# CONFIG_TOUCHSCREEN_PIXCIR is not set
-# CONFIG_TOUCHSCREEN_WDT87XX_I2C is not set
-# CONFIG_TOUCHSCREEN_USB_COMPOSITE is not set
-# CONFIG_TOUCHSCREEN_TOUCHIT213 is not set
-# CONFIG_TOUCHSCREEN_TSC_SERIO is not set
-# CONFIG_TOUCHSCREEN_TSC2004 is not set
-# CONFIG_TOUCHSCREEN_TSC2005 is not set
-# CONFIG_TOUCHSCREEN_TSC2007 is not set
-# CONFIG_TOUCHSCREEN_RM_TS is not set
-# CONFIG_TOUCHSCREEN_SILEAD is not set
-# CONFIG_TOUCHSCREEN_SIS_I2C is not set
-# CONFIG_TOUCHSCREEN_ST1232 is not set
-# CONFIG_TOUCHSCREEN_STMFTS is not set
-# CONFIG_TOUCHSCREEN_SUR40 is not set
-# CONFIG_TOUCHSCREEN_SURFACE3_SPI is not set
-# CONFIG_TOUCHSCREEN_SX8654 is not set
-# CONFIG_TOUCHSCREEN_TPS6507X is not set
-# CONFIG_TOUCHSCREEN_ZET6223 is not set
-# CONFIG_TOUCHSCREEN_ZFORCE is not set
-# CONFIG_TOUCHSCREEN_ROHM_BU21023 is not set
-# CONFIG_TOUCHSCREEN_IQS5XX is not set
-# CONFIG_TOUCHSCREEN_ZINITIX is not set
-CONFIG_INPUT_MISC=y
-# CONFIG_INPUT_AD714X is not set
-# CONFIG_INPUT_ATMEL_CAPTOUCH is not set
-# CONFIG_INPUT_BMA150 is not set
-# CONFIG_INPUT_E3X0_BUTTON is not set
-# CONFIG_INPUT_MMA8450 is not set
-# CONFIG_INPUT_GPIO_BEEPER is not set
-# CONFIG_INPUT_GPIO_DECODER is not set
-# CONFIG_INPUT_GPIO_VIBRA is not set
-# CONFIG_INPUT_ATI_REMOTE2 is not set
-# CONFIG_INPUT_KEYSPAN_REMOTE is not set
-# CONFIG_INPUT_KXTJ9 is not set
-# CONFIG_INPUT_POWERMATE is not set
-# CONFIG_INPUT_YEALINK is not set
-# CONFIG_INPUT_CM109 is not set
-# CONFIG_INPUT_REGULATOR_HAPTIC is not set
-CONFIG_INPUT_AXP20X_PEK=m
-CONFIG_INPUT_UINPUT=m
-# CONFIG_INPUT_PALMAS_PWRBUTTON is not set
-# CONFIG_INPUT_PCF8574 is not set
-CONFIG_INPUT_PWM_BEEPER=m
-# CONFIG_INPUT_PWM_VIBRA is not set
-CONFIG_INPUT_RK805_PWRKEY=m
-# CONFIG_INPUT_GPIO_ROTARY_ENCODER is not set
-# CONFIG_INPUT_DA7280_HAPTICS is not set
-# CONFIG_INPUT_ADXL34X is not set
-# CONFIG_INPUT_IMS_PCU is not set
-# CONFIG_INPUT_IQS269A is not set
-# CONFIG_INPUT_IQS626A is not set
-CONFIG_INPUT_CMA3000=m
-CONFIG_INPUT_CMA3000_I2C=m
-# CONFIG_INPUT_SOC_BUTTON_ARRAY is not set
-# CONFIG_INPUT_DRV260X_HAPTICS is not set
-# CONFIG_INPUT_DRV2665_HAPTICS is not set
-# CONFIG_INPUT_DRV2667_HAPTICS is not set
-# CONFIG_RMI4_CORE is not set
-
-#
-# Hardware I/O ports
-#
-CONFIG_SERIO=y
-# CONFIG_SERIO_SERPORT is not set
-# CONFIG_SERIO_AMBAKMI is not set
-# CONFIG_SERIO_PCIPS2 is not set
-CONFIG_SERIO_LIBPS2=m
-CONFIG_SERIO_RAW=m
-# CONFIG_SERIO_ALTERA_PS2 is not set
-# CONFIG_SERIO_PS2MULT is not set
-# CONFIG_SERIO_ARC_PS2 is not set
-# CONFIG_SERIO_APBPS2 is not set
-# CONFIG_SERIO_GPIO_PS2 is not set
-# CONFIG_USERIO is not set
-# CONFIG_GAMEPORT is not set
-# end of Hardware I/O ports
-# end of Input device support
-
-#
-# Character devices
-#
-CONFIG_TTY=y
-CONFIG_VT=y
-CONFIG_CONSOLE_TRANSLATIONS=y
-CONFIG_VT_CONSOLE=y
-CONFIG_VT_CONSOLE_SLEEP=y
-CONFIG_HW_CONSOLE=y
-CONFIG_VT_HW_CONSOLE_BINDING=y
-CONFIG_UNIX98_PTYS=y
-# CONFIG_LEGACY_PTYS is not set
-CONFIG_LDISC_AUTOLOAD=y
-
-#
-# Serial drivers
-#
-CONFIG_SERIAL_EARLYCON=y
-CONFIG_SERIAL_8250=y
-# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
-CONFIG_SERIAL_8250_PNP=y
-# CONFIG_SERIAL_8250_16550A_VARIANTS is not set
-# CONFIG_SERIAL_8250_FINTEK is not set
-CONFIG_SERIAL_8250_CONSOLE=y
-CONFIG_SERIAL_8250_DMA=y
-CONFIG_SERIAL_8250_PCI=y
-CONFIG_SERIAL_8250_EXAR=y
-CONFIG_SERIAL_8250_NR_UARTS=32
-CONFIG_SERIAL_8250_RUNTIME_UARTS=4
-CONFIG_SERIAL_8250_EXTENDED=y
-CONFIG_SERIAL_8250_MANY_PORTS=y
-# CONFIG_SERIAL_8250_ASPEED_VUART is not set
-CONFIG_SERIAL_8250_SHARE_IRQ=y
-# CONFIG_SERIAL_8250_DETECT_IRQ is not set
-CONFIG_SERIAL_8250_RSA=y
-CONFIG_SERIAL_8250_FSL=y
-# CONFIG_SERIAL_8250_DW is not set
-# CONFIG_SERIAL_8250_RT288X is not set
-CONFIG_SERIAL_8250_PERICOM=y
-CONFIG_SERIAL_OF_PLATFORM=y
-
-#
-# Non-8250 serial port support
-#
-# CONFIG_SERIAL_AMBA_PL010 is not set
-CONFIG_SERIAL_AMBA_PL011=y
-CONFIG_SERIAL_AMBA_PL011_CONSOLE=y
-CONFIG_SERIAL_EARLYCON_ARM_SEMIHOST=y
-# CONFIG_SERIAL_MAX3100 is not set
-# CONFIG_SERIAL_MAX310X is not set
-# CONFIG_SERIAL_UARTLITE is not set
-CONFIG_SERIAL_CORE=y
-CONFIG_SERIAL_CORE_CONSOLE=y
-# CONFIG_SERIAL_JSM is not set
-# CONFIG_SERIAL_SIFIVE is not set
-# CONFIG_SERIAL_SCCNXP is not set
-# CONFIG_SERIAL_SC16IS7XX is not set
-# CONFIG_SERIAL_BCM63XX is not set
-# CONFIG_SERIAL_ALTERA_JTAGUART is not set
-# CONFIG_SERIAL_ALTERA_UART is not set
-# CONFIG_SERIAL_XILINX_PS_UART is not set
-# CONFIG_SERIAL_ARC is not set
-# CONFIG_SERIAL_RP2 is not set
-# CONFIG_SERIAL_FSL_LPUART is not set
-# CONFIG_SERIAL_FSL_LINFLEXUART is not set
-# CONFIG_SERIAL_CONEXANT_DIGICOLOR is not set
-# CONFIG_SERIAL_SPRD is not set
-# end of Serial drivers
-
-CONFIG_SERIAL_MCTRL_GPIO=y
-CONFIG_SERIAL_NONSTANDARD=y
-# CONFIG_MOXA_INTELLIO is not set
-# CONFIG_MOXA_SMARTIO is not set
-# CONFIG_SYNCLINK_GT is not set
-CONFIG_N_HDLC=m
-CONFIG_N_GSM=m
-# CONFIG_NOZOMI is not set
-# CONFIG_NULL_TTY is not set
-CONFIG_HVC_DRIVER=y
-# CONFIG_HVC_DCC is not set
-CONFIG_SERIAL_DEV_BUS=y
-CONFIG_SERIAL_DEV_CTRL_TTYPORT=y
-CONFIG_VIRTIO_CONSOLE=m
-# CONFIG_IPMI_HANDLER is not set
-CONFIG_HW_RANDOM=m
-CONFIG_HW_RANDOM_TIMERIOMEM=m
-# CONFIG_HW_RANDOM_BA431 is not set
-CONFIG_HW_RANDOM_VIRTIO=m
-CONFIG_HW_RANDOM_CAVIUM=m
-# CONFIG_HW_RANDOM_CCTRNG is not set
-# CONFIG_HW_RANDOM_XIPHERA is not set
-CONFIG_HW_RANDOM_ARM_SMCCC_TRNG=m
-# CONFIG_HW_RANDOM_CN10K is not set
-# CONFIG_APPLICOM is not set
-CONFIG_DEVMEM=y
-CONFIG_DEVPORT=y
-CONFIG_TCG_TPM=m
-CONFIG_HW_RANDOM_TPM=y
-# CONFIG_TCG_TIS is not set
-# CONFIG_TCG_TIS_SPI is not set
-# CONFIG_TCG_TIS_I2C_CR50 is not set
-# CONFIG_TCG_TIS_I2C_ATMEL is not set
-CONFIG_TCG_TIS_I2C_INFINEON=m
-# CONFIG_TCG_TIS_I2C_NUVOTON is not set
-CONFIG_TCG_ATMEL=m
-# CONFIG_TCG_INFINEON is not set
-# CONFIG_TCG_CRB is not set
-# CONFIG_TCG_VTPM_PROXY is not set
-# CONFIG_TCG_TIS_ST33ZP24_I2C is not set
-# CONFIG_TCG_TIS_ST33ZP24_SPI is not set
-# CONFIG_XILLYBUS is not set
-# CONFIG_XILLYUSB is not set
-# CONFIG_RANDOM_TRUST_CPU is not set
-# CONFIG_RANDOM_TRUST_BOOTLOADER is not set
-# end of Character devices
-
-#
-# I2C support
-#
-CONFIG_I2C=y
-CONFIG_ACPI_I2C_OPREGION=y
-CONFIG_I2C_BOARDINFO=y
-CONFIG_I2C_COMPAT=y
-CONFIG_I2C_CHARDEV=m
-CONFIG_I2C_MUX=y
-
-#
-# Multiplexer I2C Chip support
-#
-# CONFIG_I2C_ARB_GPIO_CHALLENGE is not set
-# CONFIG_I2C_MUX_GPIO is not set
-# CONFIG_I2C_MUX_GPMUX is not set
-# CONFIG_I2C_MUX_LTC4306 is not set
-# CONFIG_I2C_MUX_PCA9541 is not set
-# CONFIG_I2C_MUX_PCA954x is not set
-# CONFIG_I2C_MUX_PINCTRL is not set
-# CONFIG_I2C_MUX_REG is not set
-# CONFIG_I2C_DEMUX_PINCTRL is not set
-# CONFIG_I2C_MUX_MLXCPLD is not set
-# end of Multiplexer I2C Chip support
-
-CONFIG_I2C_HELPER_AUTO=y
-CONFIG_I2C_SMBUS=m
-CONFIG_I2C_ALGOBIT=y
-
-#
-# I2C Hardware Bus support
-#
-
-#
-# PC SMBus host controller drivers
-#
-# CONFIG_I2C_ALI1535 is not set
-# CONFIG_I2C_ALI1563 is not set
-# CONFIG_I2C_ALI15X3 is not set
-# CONFIG_I2C_AMD756 is not set
-# CONFIG_I2C_AMD8111 is not set
-# CONFIG_I2C_AMD_MP2 is not set
-# CONFIG_I2C_I801 is not set
-# CONFIG_I2C_ISCH is not set
-# CONFIG_I2C_PIIX4 is not set
-# CONFIG_I2C_NFORCE2 is not set
-# CONFIG_I2C_NVIDIA_GPU is not set
-# CONFIG_I2C_SIS5595 is not set
-# CONFIG_I2C_SIS630 is not set
-# CONFIG_I2C_SIS96X is not set
-# CONFIG_I2C_VIA is not set
-# CONFIG_I2C_VIAPRO is not set
-
-#
-# ACPI drivers
-#
-CONFIG_I2C_SCMI=y
-
-#
-# I2C system bus drivers (mostly embedded / system-on-chip)
-#
-# CONFIG_I2C_CADENCE is not set
-# CONFIG_I2C_CBUS_GPIO is not set
-# CONFIG_I2C_DESIGNWARE_PLATFORM is not set
-# CONFIG_I2C_DESIGNWARE_PCI is not set
-# CONFIG_I2C_EMEV2 is not set
-# CONFIG_I2C_GPIO is not set
-# CONFIG_I2C_HISI is not set
-# CONFIG_I2C_NOMADIK is not set
-# CONFIG_I2C_OCORES is not set
-# CONFIG_I2C_PCA_PLATFORM is not set
-CONFIG_I2C_RK3X=y
-# CONFIG_I2C_SIMTEC is not set
-# CONFIG_I2C_THUNDERX is not set
-# CONFIG_I2C_XILINX is not set
-
-#
-# External I2C/SMBus adapter drivers
-#
-# CONFIG_I2C_DIOLAN_U2C is not set
-# CONFIG_I2C_CP2615 is not set
-# CONFIG_I2C_ROBOTFUZZ_OSIF is not set
-# CONFIG_I2C_TAOS_EVM is not set
-CONFIG_I2C_TINY_USB=m
-
-#
-# Other I2C/SMBus bus drivers
-#
-CONFIG_I2C_CROS_EC_TUNNEL=y
-# CONFIG_I2C_VIRTIO is not set
-# end of I2C Hardware Bus support
-
-CONFIG_I2C_STUB=m
-# CONFIG_I2C_SLAVE is not set
-# CONFIG_I2C_DEBUG_CORE is not set
-# CONFIG_I2C_DEBUG_ALGO is not set
-# CONFIG_I2C_DEBUG_BUS is not set
-# end of I2C support
-
-# CONFIG_I3C is not set
-CONFIG_SPI=y
-CONFIG_SPI_MASTER=y
-CONFIG_SPI_MEM=y
-
-#
-# SPI Master Controller Drivers
-#
-# CONFIG_SPI_ALTERA is not set
-# CONFIG_SPI_AXI_SPI_ENGINE is not set
-CONFIG_SPI_BITBANG=y
-# CONFIG_SPI_CADENCE is not set
-# CONFIG_SPI_CADENCE_QUADSPI is not set
-# CONFIG_SPI_CADENCE_XSPI is not set
-# CONFIG_SPI_DESIGNWARE is not set
-# CONFIG_SPI_HISI_KUNPENG is not set
-# CONFIG_SPI_HISI_SFC_V3XX is not set
-# CONFIG_SPI_NXP_FLEXSPI is not set
-CONFIG_SPI_GPIO=y
-# CONFIG_SPI_FSL_SPI is not set
-# CONFIG_SPI_OC_TINY is not set
-# CONFIG_SPI_PL022 is not set
-# CONFIG_SPI_PXA2XX is not set
-CONFIG_SPI_ROCKCHIP=y
-CONFIG_SPI_ROCKCHIP_SFC=m
-# CONFIG_SPI_SC18IS602 is not set
-# CONFIG_SPI_SIFIVE is not set
-# CONFIG_SPI_MXIC is not set
-# CONFIG_SPI_THUNDERX is not set
-# CONFIG_SPI_XCOMM is not set
-# CONFIG_SPI_XILINX is not set
-# CONFIG_SPI_ZYNQMP_GQSPI is not set
-# CONFIG_SPI_AMD is not set
-
-#
-# SPI Multiplexer support
-#
-# CONFIG_SPI_MUX is not set
-
-#
-# SPI Protocol Masters
-#
-CONFIG_SPI_SPIDEV=m
-# CONFIG_SPI_LOOPBACK_TEST is not set
-# CONFIG_SPI_TLE62X0 is not set
-# CONFIG_SPI_SLAVE is not set
-CONFIG_SPI_DYNAMIC=y
-CONFIG_SPMI=m
-# CONFIG_SPMI_HISI3670 is not set
-# CONFIG_HSI is not set
-CONFIG_PPS=y
-# CONFIG_PPS_DEBUG is not set
-
-#
-# PPS clients support
-#
-# CONFIG_PPS_CLIENT_KTIMER is not set
-# CONFIG_PPS_CLIENT_LDISC is not set
-# CONFIG_PPS_CLIENT_GPIO is not set
-
-#
-# PPS generators support
-#
-
-#
-# PTP clock support
-#
-CONFIG_PTP_1588_CLOCK=m
-CONFIG_PTP_1588_CLOCK_OPTIONAL=m
-# CONFIG_DP83640_PHY is not set
-# CONFIG_PTP_1588_CLOCK_INES is not set
-CONFIG_PTP_1588_CLOCK_KVM=m
-# CONFIG_PTP_1588_CLOCK_IDT82P33 is not set
-# CONFIG_PTP_1588_CLOCK_IDTCM is not set
-# end of PTP clock support
-
-CONFIG_PINCTRL=y
-CONFIG_GENERIC_PINCTRL_GROUPS=y
-CONFIG_PINMUX=y
-CONFIG_GENERIC_PINMUX_FUNCTIONS=y
-CONFIG_PINCONF=y
-CONFIG_GENERIC_PINCONF=y
-# CONFIG_PINCTRL_AMD is not set
-# CONFIG_PINCTRL_AS3722 is not set
-# CONFIG_PINCTRL_AXP209 is not set
-CONFIG_PINCTRL_MAX77620=y
-# CONFIG_PINCTRL_MCP23S08 is not set
-# CONFIG_PINCTRL_MICROCHIP_SGPIO is not set
-# CONFIG_PINCTRL_OCELOT is not set
-# CONFIG_PINCTRL_PALMAS is not set
-CONFIG_PINCTRL_RK805=y
-CONFIG_PINCTRL_ROCKCHIP=y
-CONFIG_PINCTRL_SINGLE=y
-# CONFIG_PINCTRL_STMFX is not set
-# CONFIG_PINCTRL_SX150X is not set
-
-#
-# Renesas pinctrl drivers
-#
-# end of Renesas pinctrl drivers
-
-CONFIG_GPIOLIB=y
-CONFIG_GPIOLIB_FASTPATH_LIMIT=512
-CONFIG_OF_GPIO=y
-CONFIG_GPIO_ACPI=y
-CONFIG_GPIOLIB_IRQCHIP=y
-CONFIG_GPIO_CDEV=y
-CONFIG_GPIO_CDEV_V1=y
-CONFIG_GPIO_GENERIC=y
-
-#
-# Memory mapped GPIO drivers
-#
-# CONFIG_GPIO_74XX_MMIO is not set
-# CONFIG_GPIO_ALTERA is not set
-# CONFIG_GPIO_AMDPT is not set
-# CONFIG_GPIO_CADENCE is not set
-CONFIG_GPIO_DWAPB=y
-# CONFIG_GPIO_EXAR is not set
-# CONFIG_GPIO_FTGPIO010 is not set
-CONFIG_GPIO_GENERIC_PLATFORM=y
-# CONFIG_GPIO_GRGPIO is not set
-# CONFIG_GPIO_HISI is not set
-# CONFIG_GPIO_HLWD is not set
-# CONFIG_GPIO_LOGICVC is not set
-# CONFIG_GPIO_MB86S7X is not set
-CONFIG_GPIO_PL061=y
-CONFIG_GPIO_ROCKCHIP=y
-# CONFIG_GPIO_SAMA5D2_PIOBU is not set
-# CONFIG_GPIO_SIFIVE is not set
-CONFIG_GPIO_SYSCON=y
-CONFIG_GPIO_XGENE=y
-# CONFIG_GPIO_XILINX is not set
-# CONFIG_GPIO_AMD_FCH is not set
-# end of Memory mapped GPIO drivers
-
-#
-# I2C GPIO expanders
-#
-# CONFIG_GPIO_ADP5588 is not set
-# CONFIG_GPIO_ADNP is not set
-# CONFIG_GPIO_GW_PLD is not set
-# CONFIG_GPIO_MAX7300 is not set
-# CONFIG_GPIO_MAX732X is not set
-CONFIG_GPIO_PCA953X=y
-CONFIG_GPIO_PCA953X_IRQ=y
-# CONFIG_GPIO_PCA9570 is not set
-# CONFIG_GPIO_PCF857X is not set
-# CONFIG_GPIO_TPIC2810 is not set
-# end of I2C GPIO expanders
-
-#
-# MFD GPIO expanders
-#
-CONFIG_GPIO_MAX77620=y
-# CONFIG_GPIO_PALMAS is not set
-# CONFIG_GPIO_TPS6586X is not set
-# end of MFD GPIO expanders
-
-#
-# PCI GPIO expanders
-#
-# CONFIG_GPIO_BT8XX is not set
-# CONFIG_GPIO_PCI_IDIO_16 is not set
-# CONFIG_GPIO_PCIE_IDIO_24 is not set
-# CONFIG_GPIO_RDC321X is not set
-# end of PCI GPIO expanders
-
-#
-# SPI GPIO expanders
-#
-# CONFIG_GPIO_74X164 is not set
-# CONFIG_GPIO_MAX3191X is not set
-# CONFIG_GPIO_MAX7301 is not set
-# CONFIG_GPIO_MC33880 is not set
-# CONFIG_GPIO_PISOSR is not set
-# CONFIG_GPIO_XRA1403 is not set
-# end of SPI GPIO expanders
-
-#
-# USB GPIO expanders
-#
-# end of USB GPIO expanders
-
-#
-# Virtual GPIO drivers
-#
-CONFIG_GPIO_AGGREGATOR=m
-# CONFIG_GPIO_MOCKUP is not set
-# CONFIG_GPIO_VIRTIO is not set
-# CONFIG_GPIO_SIM is not set
-# end of Virtual GPIO drivers
-
-# CONFIG_W1 is not set
-CONFIG_POWER_RESET=y
-# CONFIG_POWER_RESET_AS3722 is not set
-# CONFIG_POWER_RESET_BRCMSTB is not set
-CONFIG_POWER_RESET_GPIO=y
-CONFIG_POWER_RESET_GPIO_RESTART=y
-# CONFIG_POWER_RESET_LTC2952 is not set
-# CONFIG_POWER_RESET_MT6323 is not set
-# CONFIG_POWER_RESET_REGULATOR is not set
-CONFIG_POWER_RESET_RESTART=y
-# CONFIG_POWER_RESET_XGENE is not set
-CONFIG_POWER_RESET_SYSCON=y
-CONFIG_POWER_RESET_SYSCON_POWEROFF=y
-CONFIG_REBOOT_MODE=y
-CONFIG_SYSCON_REBOOT_MODE=y
-# CONFIG_NVMEM_REBOOT_MODE is not set
-CONFIG_POWER_SUPPLY=y
-# CONFIG_POWER_SUPPLY_DEBUG is not set
-# CONFIG_PDA_POWER is not set
-# CONFIG_GENERIC_ADC_BATTERY is not set
-# CONFIG_TEST_POWER is not set
-# CONFIG_CHARGER_ADP5061 is not set
-# CONFIG_BATTERY_CW2015 is not set
-# CONFIG_BATTERY_DS2780 is not set
-# CONFIG_BATTERY_DS2781 is not set
-# CONFIG_BATTERY_DS2782 is not set
-CONFIG_BATTERY_SBS=m
-CONFIG_CHARGER_SBS=m
-CONFIG_MANAGER_SBS=m
-# CONFIG_BATTERY_BQ27XXX is not set
-# CONFIG_AXP20X_POWER is not set
-# CONFIG_BATTERY_MAX17040 is not set
-# CONFIG_BATTERY_MAX17042 is not set
-# CONFIG_CHARGER_ISP1704 is not set
-# CONFIG_CHARGER_MAX8903 is not set
-# CONFIG_CHARGER_LP8727 is not set
-# CONFIG_CHARGER_GPIO is not set
-# CONFIG_CHARGER_MANAGER is not set
-# CONFIG_CHARGER_LT3651 is not set
-# CONFIG_CHARGER_LTC4162L is not set
-# CONFIG_CHARGER_DETECTOR_MAX14656 is not set
-# CONFIG_CHARGER_MAX77976 is not set
-# CONFIG_CHARGER_BQ2415X is not set
-# CONFIG_CHARGER_BQ24190 is not set
-# CONFIG_CHARGER_BQ24257 is not set
-# CONFIG_CHARGER_BQ24735 is not set
-# CONFIG_CHARGER_BQ2515X is not set
-# CONFIG_CHARGER_BQ25890 is not set
-# CONFIG_CHARGER_BQ25980 is not set
-# CONFIG_CHARGER_BQ256XX is not set
-# CONFIG_CHARGER_SMB347 is not set
-# CONFIG_CHARGER_TPS65090 is not set
-# CONFIG_BATTERY_GAUGE_LTC2941 is not set
-# CONFIG_BATTERY_GOLDFISH is not set
-# CONFIG_BATTERY_RT5033 is not set
-# CONFIG_CHARGER_RT9455 is not set
-CONFIG_CHARGER_CROS_USBPD=m
-CONFIG_CHARGER_CROS_PCHG=y
-# CONFIG_CHARGER_UCS1002 is not set
-# CONFIG_CHARGER_BD99954 is not set
-CONFIG_HWMON=m
-CONFIG_HWMON_VID=m
-# CONFIG_HWMON_DEBUG_CHIP is not set
-
-#
-# Native drivers
-#
-# CONFIG_SENSORS_AD7314 is not set
-CONFIG_SENSORS_AD7414=m
-CONFIG_SENSORS_AD7418=m
-CONFIG_SENSORS_ADM1021=m
-CONFIG_SENSORS_ADM1025=m
-CONFIG_SENSORS_ADM1026=m
-CONFIG_SENSORS_ADM1029=m
-CONFIG_SENSORS_ADM1031=m
-# CONFIG_SENSORS_ADM1177 is not set
-CONFIG_SENSORS_ADM9240=m
-CONFIG_SENSORS_ADT7X10=m
-# CONFIG_SENSORS_ADT7310 is not set
-CONFIG_SENSORS_ADT7410=m
-CONFIG_SENSORS_ADT7411=m
-CONFIG_SENSORS_ADT7462=m
-CONFIG_SENSORS_ADT7470=m
-CONFIG_SENSORS_ADT7475=m
-# CONFIG_SENSORS_AHT10 is not set
-# CONFIG_SENSORS_AQUACOMPUTER_D5NEXT is not set
-# CONFIG_SENSORS_AS370 is not set
-CONFIG_SENSORS_ASC7621=m
-# CONFIG_SENSORS_AXI_FAN_CONTROL is not set
-CONFIG_SENSORS_ARM_SCPI=m
-# CONFIG_SENSORS_ASPEED is not set
-CONFIG_SENSORS_ATXP1=m
-# CONFIG_SENSORS_CORSAIR_CPRO is not set
-# CONFIG_SENSORS_CORSAIR_PSU is not set
-CONFIG_SENSORS_DS620=m
-CONFIG_SENSORS_DS1621=m
-# CONFIG_SENSORS_I5K_AMB is not set
-CONFIG_SENSORS_F71805F=m
-CONFIG_SENSORS_F71882FG=m
-CONFIG_SENSORS_F75375S=m
-# CONFIG_SENSORS_FTSTEUTATES is not set
-CONFIG_SENSORS_GL518SM=m
-CONFIG_SENSORS_GL520SM=m
-CONFIG_SENSORS_G760A=m
-CONFIG_SENSORS_G762=m
-# CONFIG_SENSORS_GPIO_FAN is not set
-# CONFIG_SENSORS_HIH6130 is not set
-CONFIG_SENSORS_IIO_HWMON=m
-CONFIG_SENSORS_IT87=m
-# CONFIG_SENSORS_JC42 is not set
-CONFIG_SENSORS_POWR1220=m
-CONFIG_SENSORS_LINEAGE=m
-CONFIG_SENSORS_LTC2945=m
-# CONFIG_SENSORS_LTC2947_I2C is not set
-# CONFIG_SENSORS_LTC2947_SPI is not set
-# CONFIG_SENSORS_LTC2990 is not set
-# CONFIG_SENSORS_LTC2992 is not set
-CONFIG_SENSORS_LTC4151=m
-CONFIG_SENSORS_LTC4215=m
-CONFIG_SENSORS_LTC4222=m
-CONFIG_SENSORS_LTC4245=m
-CONFIG_SENSORS_LTC4260=m
-CONFIG_SENSORS_LTC4261=m
-# CONFIG_SENSORS_MAX1111 is not set
-# CONFIG_SENSORS_MAX127 is not set
-CONFIG_SENSORS_MAX16065=m
-CONFIG_SENSORS_MAX1619=m
-CONFIG_SENSORS_MAX1668=m
-CONFIG_SENSORS_MAX197=m
-# CONFIG_SENSORS_MAX31722 is not set
-# CONFIG_SENSORS_MAX31730 is not set
-# CONFIG_SENSORS_MAX6620 is not set
-# CONFIG_SENSORS_MAX6621 is not set
-CONFIG_SENSORS_MAX6639=m
-CONFIG_SENSORS_MAX6642=m
-CONFIG_SENSORS_MAX6650=m
-CONFIG_SENSORS_MAX6697=m
-# CONFIG_SENSORS_MAX31790 is not set
-CONFIG_SENSORS_MCP3021=m
-# CONFIG_SENSORS_TC654 is not set
-# CONFIG_SENSORS_TPS23861 is not set
-# CONFIG_SENSORS_MR75203 is not set
-# CONFIG_SENSORS_ADCXX is not set
-CONFIG_SENSORS_LM63=m
-# CONFIG_SENSORS_LM70 is not set
-CONFIG_SENSORS_LM73=m
-CONFIG_SENSORS_LM75=m
-CONFIG_SENSORS_LM77=m
-CONFIG_SENSORS_LM78=m
-CONFIG_SENSORS_LM80=m
-CONFIG_SENSORS_LM83=m
-CONFIG_SENSORS_LM85=m
-CONFIG_SENSORS_LM87=m
-CONFIG_SENSORS_LM90=m
-CONFIG_SENSORS_LM92=m
-CONFIG_SENSORS_LM93=m
-CONFIG_SENSORS_LM95234=m
-CONFIG_SENSORS_LM95241=m
-CONFIG_SENSORS_LM95245=m
-CONFIG_SENSORS_PC87360=m
-CONFIG_SENSORS_PC87427=m
-CONFIG_SENSORS_NTC_THERMISTOR=m
-CONFIG_SENSORS_NCT6683=m
-CONFIG_SENSORS_NCT6775=m
-CONFIG_SENSORS_NCT7802=m
-CONFIG_SENSORS_NCT7904=m
-# CONFIG_SENSORS_NPCM7XX is not set
-# CONFIG_SENSORS_NZXT_KRAKEN2 is not set
-# CONFIG_SENSORS_NZXT_SMART2 is not set
-# CONFIG_SENSORS_OCC_P8_I2C is not set
-CONFIG_SENSORS_PCF8591=m
-CONFIG_PMBUS=m
-CONFIG_SENSORS_PMBUS=m
-# CONFIG_SENSORS_ADM1266 is not set
-CONFIG_SENSORS_ADM1275=m
-# CONFIG_SENSORS_BEL_PFE is not set
-# CONFIG_SENSORS_BPA_RS600 is not set
-# CONFIG_SENSORS_DELTA_AHE50DC_FAN is not set
-# CONFIG_SENSORS_FSP_3Y is not set
-# CONFIG_SENSORS_IBM_CFFPS is not set
-# CONFIG_SENSORS_DPS920AB is not set
-# CONFIG_SENSORS_INSPUR_IPSPS is not set
-# CONFIG_SENSORS_IR35221 is not set
-# CONFIG_SENSORS_IR36021 is not set
-# CONFIG_SENSORS_IR38064 is not set
-# CONFIG_SENSORS_IRPS5401 is not set
-# CONFIG_SENSORS_ISL68137 is not set
-CONFIG_SENSORS_LM25066=m
-CONFIG_SENSORS_LTC2978=m
-# CONFIG_SENSORS_LTC2978_REGULATOR is not set
-# CONFIG_SENSORS_LTC3815 is not set
-# CONFIG_SENSORS_MAX15301 is not set
-CONFIG_SENSORS_MAX16064=m
-# CONFIG_SENSORS_MAX16601 is not set
-# CONFIG_SENSORS_MAX20730 is not set
-# CONFIG_SENSORS_MAX20751 is not set
-# CONFIG_SENSORS_MAX31785 is not set
-CONFIG_SENSORS_MAX34440=m
-CONFIG_SENSORS_MAX8688=m
-# CONFIG_SENSORS_MP2888 is not set
-# CONFIG_SENSORS_MP2975 is not set
-# CONFIG_SENSORS_MP5023 is not set
-# CONFIG_SENSORS_PIM4328 is not set
-# CONFIG_SENSORS_PM6764TR is not set
-# CONFIG_SENSORS_PXE1610 is not set
-# CONFIG_SENSORS_Q54SJ108A2 is not set
-# CONFIG_SENSORS_STPDDC60 is not set
-CONFIG_SENSORS_TPS40422=m
-# CONFIG_SENSORS_TPS53679 is not set
-CONFIG_SENSORS_UCD9000=m
-CONFIG_SENSORS_UCD9200=m
-# CONFIG_SENSORS_XDPE122 is not set
-CONFIG_SENSORS_ZL6100=m
-CONFIG_SENSORS_PWM_FAN=m
-# CONFIG_SENSORS_SBTSI is not set
-# CONFIG_SENSORS_SBRMI is not set
-CONFIG_SENSORS_SHT15=m
-CONFIG_SENSORS_SHT21=m
-CONFIG_SENSORS_SHT3x=m
-# CONFIG_SENSORS_SHT4x is not set
-CONFIG_SENSORS_SHTC1=m
-CONFIG_SENSORS_SIS5595=m
-CONFIG_SENSORS_DME1737=m
-CONFIG_SENSORS_EMC1403=m
-# CONFIG_SENSORS_EMC2103 is not set
-CONFIG_SENSORS_EMC6W201=m
-CONFIG_SENSORS_SMSC47M1=m
-CONFIG_SENSORS_SMSC47M192=m
-CONFIG_SENSORS_SMSC47B397=m
-CONFIG_SENSORS_SCH56XX_COMMON=m
-CONFIG_SENSORS_SCH5627=m
-CONFIG_SENSORS_SCH5636=m
-# CONFIG_SENSORS_STTS751 is not set
-# CONFIG_SENSORS_SMM665 is not set
-CONFIG_SENSORS_ADC128D818=m
-CONFIG_SENSORS_ADS7828=m
-# CONFIG_SENSORS_ADS7871 is not set
-CONFIG_SENSORS_AMC6821=m
-CONFIG_SENSORS_INA209=m
-CONFIG_SENSORS_INA2XX=m
-# CONFIG_SENSORS_INA238 is not set
-CONFIG_SENSORS_INA3221=m
-CONFIG_SENSORS_TC74=m
-CONFIG_SENSORS_THMC50=m
-CONFIG_SENSORS_TMP102=m
-CONFIG_SENSORS_TMP103=m
-CONFIG_SENSORS_TMP108=m
-CONFIG_SENSORS_TMP401=m
-CONFIG_SENSORS_TMP421=m
-# CONFIG_SENSORS_TMP513 is not set
-CONFIG_SENSORS_VIA686A=m
-CONFIG_SENSORS_VT1211=m
-CONFIG_SENSORS_VT8231=m
-# CONFIG_SENSORS_W83773G is not set
-CONFIG_SENSORS_W83781D=m
-CONFIG_SENSORS_W83791D=m
-CONFIG_SENSORS_W83792D=m
-CONFIG_SENSORS_W83793=m
-CONFIG_SENSORS_W83795=m
-# CONFIG_SENSORS_W83795_FANCTRL is not set
-CONFIG_SENSORS_W83L785TS=m
-CONFIG_SENSORS_W83L786NG=m
-CONFIG_SENSORS_W83627HF=m
-CONFIG_SENSORS_W83627EHF=m
-# CONFIG_SENSORS_XGENE is not set
-
-#
-# ACPI drivers
-#
-CONFIG_SENSORS_ACPI_POWER=m
-CONFIG_THERMAL=y
-# CONFIG_THERMAL_NETLINK is not set
-# CONFIG_THERMAL_STATISTICS is not set
-CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0
-CONFIG_THERMAL_OF=y
-CONFIG_THERMAL_WRITABLE_TRIPS=y
-CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y
-# CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE is not set
-# CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE is not set
-CONFIG_THERMAL_GOV_FAIR_SHARE=y
-CONFIG_THERMAL_GOV_STEP_WISE=y
-CONFIG_THERMAL_GOV_BANG_BANG=y
-CONFIG_THERMAL_GOV_USER_SPACE=y
-# CONFIG_THERMAL_GOV_POWER_ALLOCATOR is not set
-CONFIG_CPU_THERMAL=y
-CONFIG_CPU_FREQ_THERMAL=y
-CONFIG_DEVFREQ_THERMAL=y
-CONFIG_THERMAL_EMULATION=y
-# CONFIG_THERMAL_MMIO is not set
-CONFIG_MAX77620_THERMAL=m
-CONFIG_ROCKCHIP_THERMAL=m
-CONFIG_GENERIC_ADC_THERMAL=m
-CONFIG_WATCHDOG=y
-CONFIG_WATCHDOG_CORE=m
-# CONFIG_WATCHDOG_NOWAYOUT is not set
-CONFIG_WATCHDOG_HANDLE_BOOT_ENABLED=y
-CONFIG_WATCHDOG_OPEN_TIMEOUT=0
-# CONFIG_WATCHDOG_SYSFS is not set
-# CONFIG_WATCHDOG_HRTIMER_PRETIMEOUT is not set
-
-#
-# Watchdog Pretimeout Governors
-#
-# CONFIG_WATCHDOG_PRETIMEOUT_GOV is not set
-
-#
-# Watchdog Device Drivers
-#
-# CONFIG_SOFT_WATCHDOG is not set
-# CONFIG_GPIO_WATCHDOG is not set
-# CONFIG_WDAT_WDT is not set
-# CONFIG_XILINX_WATCHDOG is not set
-# CONFIG_ZIIRAVE_WATCHDOG is not set
-# CONFIG_ARM_SP805_WATCHDOG is not set
-# CONFIG_ARM_SBSA_WATCHDOG is not set
-# CONFIG_CADENCE_WATCHDOG is not set
-CONFIG_DW_WATCHDOG=m
-# CONFIG_MAX63XX_WATCHDOG is not set
-# CONFIG_MAX77620_WATCHDOG is not set
-# CONFIG_ARM_SMC_WATCHDOG is not set
-# CONFIG_ALIM7101_WDT is not set
-# CONFIG_I6300ESB_WDT is not set
-# CONFIG_MEN_A21_WDT is not set
-
-#
-# PCI-based Watchdog Cards
-#
-# CONFIG_PCIPCWATCHDOG is not set
-# CONFIG_WDTPCI is not set
-
-#
-# USB-based Watchdog Cards
-#
-# CONFIG_USBPCWATCHDOG is not set
-CONFIG_SSB_POSSIBLE=y
-CONFIG_SSB=m
-CONFIG_SSB_SPROM=y
-CONFIG_SSB_PCIHOST_POSSIBLE=y
-CONFIG_SSB_PCIHOST=y
-CONFIG_SSB_SDIOHOST_POSSIBLE=y
-CONFIG_SSB_SDIOHOST=y
-CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y
-CONFIG_SSB_DRIVER_PCICORE=y
-CONFIG_SSB_DRIVER_GPIO=y
-CONFIG_BCMA_POSSIBLE=y
-# CONFIG_BCMA is not set
-
-#
-# Multifunction device drivers
-#
-CONFIG_MFD_CORE=y
-# CONFIG_MFD_ACT8945A is not set
-CONFIG_MFD_AS3711=y
-CONFIG_MFD_AS3722=m
-# CONFIG_PMIC_ADP5520 is not set
-# CONFIG_MFD_AAT2870_CORE is not set
-# CONFIG_MFD_ATMEL_FLEXCOM is not set
-# CONFIG_MFD_ATMEL_HLCDC is not set
-# CONFIG_MFD_BCM590XX is not set
-# CONFIG_MFD_BD9571MWV is not set
-CONFIG_MFD_AXP20X=y
-CONFIG_MFD_AXP20X_I2C=y
-CONFIG_MFD_CROS_EC_DEV=y
-# CONFIG_MFD_MADERA is not set
-# CONFIG_PMIC_DA903X is not set
-# CONFIG_MFD_DA9052_SPI is not set
-# CONFIG_MFD_DA9052_I2C is not set
-# CONFIG_MFD_DA9055 is not set
-# CONFIG_MFD_DA9062 is not set
-# CONFIG_MFD_DA9063 is not set
-# CONFIG_MFD_DA9150 is not set
-# CONFIG_MFD_DLN2 is not set
-# CONFIG_MFD_GATEWORKS_GSC is not set
-# CONFIG_MFD_MC13XXX_SPI is not set
-# CONFIG_MFD_MC13XXX_I2C is not set
-# CONFIG_MFD_MP2629 is not set
-# CONFIG_MFD_HI6421_PMIC is not set
-# CONFIG_MFD_HI6421_SPMI is not set
-# CONFIG_HTC_PASIC3 is not set
-# CONFIG_HTC_I2CPLD is not set
-# CONFIG_LPC_ICH is not set
-# CONFIG_LPC_SCH is not set
-# CONFIG_MFD_IQS62X is not set
-# CONFIG_MFD_JANZ_CMODIO is not set
-# CONFIG_MFD_KEMPLD is not set
-# CONFIG_MFD_88PM800 is not set
-# CONFIG_MFD_88PM805 is not set
-# CONFIG_MFD_88PM860X is not set
-# CONFIG_MFD_MAX14577 is not set
-CONFIG_MFD_MAX77620=y
-# CONFIG_MFD_MAX77650 is not set
-# CONFIG_MFD_MAX77686 is not set
-# CONFIG_MFD_MAX77693 is not set
-# CONFIG_MFD_MAX77843 is not set
-# CONFIG_MFD_MAX8907 is not set
-# CONFIG_MFD_MAX8925 is not set
-# CONFIG_MFD_MAX8997 is not set
-# CONFIG_MFD_MAX8998 is not set
-# CONFIG_MFD_MT6360 is not set
-CONFIG_MFD_MT6397=y
-# CONFIG_MFD_MENF21BMC is not set
-# CONFIG_EZX_PCAP is not set
-# CONFIG_MFD_CPCAP is not set
-# CONFIG_MFD_VIPERBOARD is not set
-# CONFIG_MFD_NTXEC is not set
-# CONFIG_MFD_RETU is not set
-# CONFIG_MFD_PCF50633 is not set
-# CONFIG_MFD_RDC321X is not set
-# CONFIG_MFD_RT4831 is not set
-# CONFIG_MFD_RT5033 is not set
-# CONFIG_MFD_RC5T583 is not set
-CONFIG_MFD_RK808=y
-# CONFIG_MFD_RN5T618 is not set
-# CONFIG_MFD_SEC_CORE is not set
-# CONFIG_MFD_SI476X_CORE is not set
-CONFIG_MFD_SM501=m
-CONFIG_MFD_SM501_GPIO=y
-# CONFIG_MFD_SKY81452 is not set
-# CONFIG_MFD_STMPE is not set
-CONFIG_MFD_SYSCON=y
-# CONFIG_MFD_TI_AM335X_TSCADC is not set
-# CONFIG_MFD_LP3943 is not set
-# CONFIG_MFD_LP8788 is not set
-# CONFIG_MFD_TI_LMU is not set
-CONFIG_MFD_PALMAS=y
-# CONFIG_TPS6105X is not set
-# CONFIG_TPS65010 is not set
-# CONFIG_TPS6507X is not set
-# CONFIG_MFD_TPS65086 is not set
-CONFIG_MFD_TPS65090=y
-# CONFIG_MFD_TPS65217 is not set
-# CONFIG_MFD_TI_LP873X is not set
-# CONFIG_MFD_TI_LP87565 is not set
-# CONFIG_MFD_TPS65218 is not set
-CONFIG_MFD_TPS6586X=y
-# CONFIG_MFD_TPS65910 is not set
-# CONFIG_MFD_TPS65912_I2C is not set
-# CONFIG_MFD_TPS65912_SPI is not set
-# CONFIG_TWL4030_CORE is not set
-# CONFIG_TWL6040_CORE is not set
-# CONFIG_MFD_WL1273_CORE is not set
-# CONFIG_MFD_LM3533 is not set
-# CONFIG_MFD_TC3589X is not set
-# CONFIG_MFD_TQMX86 is not set
-CONFIG_MFD_VX855=m
-# CONFIG_MFD_LOCHNAGAR is not set
-# CONFIG_MFD_ARIZONA_I2C is not set
-# CONFIG_MFD_ARIZONA_SPI is not set
-# CONFIG_MFD_WM8400 is not set
-# CONFIG_MFD_WM831X_I2C is not set
-# CONFIG_MFD_WM831X_SPI is not set
-# CONFIG_MFD_WM8350_I2C is not set
-# CONFIG_MFD_WM8994 is not set
-# CONFIG_MFD_ROHM_BD718XX is not set
-# CONFIG_MFD_ROHM_BD71828 is not set
-# CONFIG_MFD_ROHM_BD957XMUF is not set
-# CONFIG_MFD_STPMIC1 is not set
-# CONFIG_MFD_STMFX is not set
-# CONFIG_MFD_ATC260X_I2C is not set
-# CONFIG_MFD_KHADAS_MCU is not set
-# CONFIG_MFD_QCOM_PM8008 is not set
-# CONFIG_RAVE_SP_CORE is not set
-# CONFIG_MFD_INTEL_M10_BMC is not set
-# CONFIG_MFD_RSMU_I2C is not set
-# CONFIG_MFD_RSMU_SPI is not set
-# end of Multifunction device drivers
-
-CONFIG_REGULATOR=y
-# CONFIG_REGULATOR_DEBUG is not set
-CONFIG_REGULATOR_FIXED_VOLTAGE=y
-# CONFIG_REGULATOR_VIRTUAL_CONSUMER is not set
-# CONFIG_REGULATOR_USERSPACE_CONSUMER is not set
-# CONFIG_REGULATOR_88PG86X is not set
-# CONFIG_REGULATOR_ACT8865 is not set
-# CONFIG_REGULATOR_AD5398 is not set
-# CONFIG_REGULATOR_AS3711 is not set
-# CONFIG_REGULATOR_AS3722 is not set
-CONFIG_REGULATOR_AXP20X=y
-CONFIG_REGULATOR_CROS_EC=m
-# CONFIG_REGULATOR_DA9121 is not set
-# CONFIG_REGULATOR_DA9210 is not set
-# CONFIG_REGULATOR_DA9211 is not set
-# CONFIG_REGULATOR_FAN53555 is not set
-# CONFIG_REGULATOR_FAN53880 is not set
-CONFIG_REGULATOR_GPIO=y
-# CONFIG_REGULATOR_ISL9305 is not set
-# CONFIG_REGULATOR_ISL6271A is not set
-# CONFIG_REGULATOR_LP3971 is not set
-# CONFIG_REGULATOR_LP3972 is not set
-# CONFIG_REGULATOR_LP872X is not set
-# CONFIG_REGULATOR_LP8755 is not set
-# CONFIG_REGULATOR_LTC3589 is not set
-# CONFIG_REGULATOR_LTC3676 is not set
-# CONFIG_REGULATOR_MAX1586 is not set
-CONFIG_REGULATOR_MAX77620=y
-# CONFIG_REGULATOR_MAX8649 is not set
-# CONFIG_REGULATOR_MAX8660 is not set
-# CONFIG_REGULATOR_MAX8893 is not set
-# CONFIG_REGULATOR_MAX8952 is not set
-# CONFIG_REGULATOR_MAX8973 is not set
-# CONFIG_REGULATOR_MAX20086 is not set
-# CONFIG_REGULATOR_MAX77826 is not set
-# CONFIG_REGULATOR_MCP16502 is not set
-# CONFIG_REGULATOR_MP5416 is not set
-# CONFIG_REGULATOR_MP8859 is not set
-# CONFIG_REGULATOR_MP886X is not set
-# CONFIG_REGULATOR_MPQ7920 is not set
-# CONFIG_REGULATOR_MT6311 is not set
-# CONFIG_REGULATOR_MT6315 is not set
-# CONFIG_REGULATOR_MT6323 is not set
-# CONFIG_REGULATOR_MT6358 is not set
-# CONFIG_REGULATOR_MT6359 is not set
-# CONFIG_REGULATOR_MT6397 is not set
-# CONFIG_REGULATOR_PALMAS is not set
-# CONFIG_REGULATOR_PCA9450 is not set
-# CONFIG_REGULATOR_PF8X00 is not set
-# CONFIG_REGULATOR_PFUZE100 is not set
-# CONFIG_REGULATOR_PV88060 is not set
-# CONFIG_REGULATOR_PV88080 is not set
-# CONFIG_REGULATOR_PV88090 is not set
-CONFIG_REGULATOR_PWM=y
-# CONFIG_REGULATOR_QCOM_SPMI is not set
-# CONFIG_REGULATOR_QCOM_USB_VBUS is not set
-# CONFIG_REGULATOR_RASPBERRYPI_TOUCHSCREEN_ATTINY is not set
-CONFIG_REGULATOR_RK808=y
-# CONFIG_REGULATOR_RT4801 is not set
-# CONFIG_REGULATOR_RT6160 is not set
-# CONFIG_REGULATOR_RT6245 is not set
-# CONFIG_REGULATOR_RTQ2134 is not set
-# CONFIG_REGULATOR_RTMV20 is not set
-# CONFIG_REGULATOR_RTQ6752 is not set
-# CONFIG_REGULATOR_SLG51000 is not set
-# CONFIG_REGULATOR_SY8106A is not set
-# CONFIG_REGULATOR_SY8824X is not set
-# CONFIG_REGULATOR_SY8827N is not set
-# CONFIG_REGULATOR_TPS51632 is not set
-# CONFIG_REGULATOR_TPS62360 is not set
-# CONFIG_REGULATOR_TPS65023 is not set
-# CONFIG_REGULATOR_TPS6507X is not set
-# CONFIG_REGULATOR_TPS65090 is not set
-# CONFIG_REGULATOR_TPS65132 is not set
-# CONFIG_REGULATOR_TPS6524X is not set
-# CONFIG_REGULATOR_TPS6586X is not set
-CONFIG_REGULATOR_VCTRL=m
-# CONFIG_REGULATOR_QCOM_LABIBB is not set
-CONFIG_RC_CORE=m
-# CONFIG_RC_MAP is not set
-# CONFIG_LIRC is not set
-# CONFIG_RC_DECODERS is not set
-# CONFIG_RC_DEVICES is not set
-CONFIG_CEC_CORE=y
-CONFIG_CEC_NOTIFIER=y
-
-#
-# CEC support
-#
-CONFIG_MEDIA_CEC_SUPPORT=y
-# CONFIG_CEC_CH7322 is not set
-CONFIG_CEC_CROS_EC=m
-# CONFIG_CEC_GPIO is not set
-# CONFIG_USB_PULSE8_CEC is not set
-# CONFIG_USB_RAINSHADOW_CEC is not set
-# end of CEC support
-
-CONFIG_MEDIA_SUPPORT=m
-CONFIG_MEDIA_SUPPORT_FILTER=y
-CONFIG_MEDIA_SUBDRV_AUTOSELECT=y
-
-#
-# Media device types
-#
-CONFIG_MEDIA_CAMERA_SUPPORT=y
-# CONFIG_MEDIA_ANALOG_TV_SUPPORT is not set
-# CONFIG_MEDIA_DIGITAL_TV_SUPPORT is not set
-# CONFIG_MEDIA_RADIO_SUPPORT is not set
-CONFIG_MEDIA_SDR_SUPPORT=y
-# CONFIG_MEDIA_PLATFORM_SUPPORT is not set
-# CONFIG_MEDIA_TEST_SUPPORT is not set
-# end of Media device types
-
-CONFIG_VIDEO_DEV=m
-CONFIG_MEDIA_CONTROLLER=y
-
-#
-# Video4Linux options
-#
-CONFIG_VIDEO_V4L2=m
-CONFIG_VIDEO_V4L2_I2C=y
-CONFIG_VIDEO_V4L2_SUBDEV_API=y
-# CONFIG_VIDEO_ADV_DEBUG is not set
-# CONFIG_VIDEO_FIXED_MINOR_RANGES is not set
-# CONFIG_V4L2_FLASH_LED_CLASS is not set
-# end of Video4Linux options
-
-#
-# Media controller options
-#
-# end of Media controller options
-
-#
-# Media drivers
-#
-
-#
-# Drivers filtered as selected at 'Filter media drivers'
-#
-CONFIG_MEDIA_USB_SUPPORT=y
-
-#
-# Webcam devices
-#
-CONFIG_USB_VIDEO_CLASS=m
-CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y
-# CONFIG_USB_GSPCA is not set
-# CONFIG_USB_PWC is not set
-# CONFIG_VIDEO_CPIA2 is not set
-# CONFIG_USB_ZR364XX is not set
-# CONFIG_USB_STKWEBCAM is not set
-# CONFIG_USB_S2255 is not set
-# CONFIG_VIDEO_USBTV is not set
-
-#
-# Webcam, TV (analog/digital) USB devices
-#
-# CONFIG_VIDEO_EM28XX is not set
-
-#
-# Software defined radio USB devices
-#
-CONFIG_USB_AIRSPY=m
-CONFIG_USB_HACKRF=m
-CONFIG_USB_MSI2500=m
-# CONFIG_MEDIA_PCI_SUPPORT is not set
-CONFIG_VIDEOBUF2_CORE=m
-CONFIG_VIDEOBUF2_V4L2=m
-CONFIG_VIDEOBUF2_MEMOPS=m
-CONFIG_VIDEOBUF2_VMALLOC=m
-# end of Media drivers
-
-CONFIG_MEDIA_HIDE_ANCILLARY_SUBDRV=y
-
-#
-# Media ancillary drivers
-#
-
-#
-# IR I2C driver auto-selected by 'Autoselect ancillary drivers'
-#
-CONFIG_VIDEO_IR_I2C=m
-
-#
-# audio, video and radio I2C drivers auto-selected by 'Autoselect ancillary drivers'
-#
-
-#
-# Video and audio decoders
-#
-
-#
-# Camera sensor devices
-#
-# CONFIG_VIDEO_HI556 is not set
-# CONFIG_VIDEO_HI846 is not set
-# CONFIG_VIDEO_IMX208 is not set
-# CONFIG_VIDEO_IMX214 is not set
-# CONFIG_VIDEO_IMX219 is not set
-# CONFIG_VIDEO_IMX258 is not set
-# CONFIG_VIDEO_IMX274 is not set
-# CONFIG_VIDEO_IMX290 is not set
-# CONFIG_VIDEO_IMX319 is not set
-# CONFIG_VIDEO_IMX334 is not set
-# CONFIG_VIDEO_IMX335 is not set
-# CONFIG_VIDEO_IMX355 is not set
-# CONFIG_VIDEO_IMX412 is not set
-# CONFIG_VIDEO_OV02A10 is not set
-# CONFIG_VIDEO_OV2640 is not set
-# CONFIG_VIDEO_OV2659 is not set
-# CONFIG_VIDEO_OV2680 is not set
-# CONFIG_VIDEO_OV2685 is not set
-# CONFIG_VIDEO_OV2740 is not set
-# CONFIG_VIDEO_OV5640 is not set
-# CONFIG_VIDEO_OV5645 is not set
-# CONFIG_VIDEO_OV5647 is not set
-# CONFIG_VIDEO_OV5648 is not set
-# CONFIG_VIDEO_OV6650 is not set
-# CONFIG_VIDEO_OV5670 is not set
-# CONFIG_VIDEO_OV5675 is not set
-# CONFIG_VIDEO_OV5693 is not set
-# CONFIG_VIDEO_OV5695 is not set
-# CONFIG_VIDEO_OV7251 is not set
-# CONFIG_VIDEO_OV772X is not set
-# CONFIG_VIDEO_OV7640 is not set
-# CONFIG_VIDEO_OV7670 is not set
-# CONFIG_VIDEO_OV7740 is not set
-# CONFIG_VIDEO_OV8856 is not set
-# CONFIG_VIDEO_OV8865 is not set
-# CONFIG_VIDEO_OV9282 is not set
-# CONFIG_VIDEO_OV9640 is not set
-# CONFIG_VIDEO_OV9650 is not set
-# CONFIG_VIDEO_OV9734 is not set
-# CONFIG_VIDEO_OV13858 is not set
-# CONFIG_VIDEO_OV13B10 is not set
-# CONFIG_VIDEO_VS6624 is not set
-# CONFIG_VIDEO_MT9M001 is not set
-# CONFIG_VIDEO_MT9M032 is not set
-# CONFIG_VIDEO_MT9M111 is not set
-# CONFIG_VIDEO_MT9P031 is not set
-# CONFIG_VIDEO_MT9T001 is not set
-# CONFIG_VIDEO_MT9T112 is not set
-# CONFIG_VIDEO_MT9V011 is not set
-# CONFIG_VIDEO_MT9V032 is not set
-# CONFIG_VIDEO_MT9V111 is not set
-# CONFIG_VIDEO_SR030PC30 is not set
-# CONFIG_VIDEO_NOON010PC30 is not set
-# CONFIG_VIDEO_M5MOLS is not set
-# CONFIG_VIDEO_RDACM20 is not set
-# CONFIG_VIDEO_RDACM21 is not set
-# CONFIG_VIDEO_RJ54N1 is not set
-# CONFIG_VIDEO_S5K6AA is not set
-# CONFIG_VIDEO_S5K6A3 is not set
-# CONFIG_VIDEO_S5K4ECGX is not set
-# CONFIG_VIDEO_S5K5BAF is not set
-# CONFIG_VIDEO_CCS is not set
-# CONFIG_VIDEO_ET8EK8 is not set
-# CONFIG_VIDEO_S5C73M3 is not set
-# end of Camera sensor devices
-
-#
-# Lens drivers
-#
-# CONFIG_VIDEO_AD5820 is not set
-# CONFIG_VIDEO_AK7375 is not set
-# CONFIG_VIDEO_DW9714 is not set
-# CONFIG_VIDEO_DW9768 is not set
-# CONFIG_VIDEO_DW9807_VCM is not set
-# end of Lens drivers
-
-#
-# Flash devices
-#
-# CONFIG_VIDEO_ADP1653 is not set
-# CONFIG_VIDEO_LM3560 is not set
-# CONFIG_VIDEO_LM3646 is not set
-# end of Flash devices
-
-#
-# SPI I2C drivers auto-selected by 'Autoselect ancillary drivers'
-#
-
-#
-# Media SPI Adapters
-#
-# end of Media SPI Adapters
-
-CONFIG_MEDIA_TUNER=m
-
-#
-# Tuner drivers auto-selected by 'Autoselect ancillary drivers'
-#
-CONFIG_MEDIA_TUNER_SIMPLE=m
-CONFIG_MEDIA_TUNER_TDA8290=m
-CONFIG_MEDIA_TUNER_TDA827X=m
-CONFIG_MEDIA_TUNER_TDA18271=m
-CONFIG_MEDIA_TUNER_TDA9887=m
-CONFIG_MEDIA_TUNER_MSI001=m
-CONFIG_MEDIA_TUNER_MT20XX=m
-CONFIG_MEDIA_TUNER_XC2028=m
-CONFIG_MEDIA_TUNER_XC5000=m
-CONFIG_MEDIA_TUNER_XC4000=m
-CONFIG_MEDIA_TUNER_MC44S803=m
-# end of Media ancillary drivers
-
-#
-# Graphics support
-#
-CONFIG_VGA_ARB=y
-CONFIG_VGA_ARB_MAX_GPUS=4
-CONFIG_DRM=y
-CONFIG_DRM_MIPI_DSI=y
-CONFIG_DRM_DP_AUX_BUS=y
-CONFIG_DRM_DP_AUX_CHARDEV=y
-# CONFIG_DRM_DEBUG_MM is not set
-CONFIG_DRM_KMS_HELPER=y
-CONFIG_DRM_FBDEV_EMULATION=y
-CONFIG_DRM_FBDEV_OVERALLOC=100
-# CONFIG_DRM_LOAD_EDID_FIRMWARE is not set
-# CONFIG_DRM_DP_CEC is not set
-CONFIG_DRM_GEM_CMA_HELPER=y
-CONFIG_DRM_GEM_SHMEM_HELPER=m
-CONFIG_DRM_SCHED=m
-
-#
-# I2C encoder or helper chips
-#
-CONFIG_DRM_I2C_CH7006=m
-CONFIG_DRM_I2C_SIL164=m
-CONFIG_DRM_I2C_NXP_TDA998X=m
-# CONFIG_DRM_I2C_NXP_TDA9950 is not set
-# end of I2C encoder or helper chips
-
-#
-# ARM devices
-#
-# CONFIG_DRM_HDLCD is not set
-# CONFIG_DRM_MALI_DISPLAY is not set
-# CONFIG_DRM_KOMEDA is not set
-# end of ARM devices
-
-# CONFIG_DRM_RADEON is not set
-# CONFIG_DRM_AMDGPU is not set
-# CONFIG_DRM_NOUVEAU is not set
-CONFIG_DRM_VGEM=m
-# CONFIG_DRM_VKMS is not set
-CONFIG_DRM_ROCKCHIP=y
-CONFIG_ROCKCHIP_ANALOGIX_DP=y
-CONFIG_ROCKCHIP_CDN_DP=y
-CONFIG_ROCKCHIP_DW_HDMI=y
-CONFIG_ROCKCHIP_DW_MIPI_DSI=y
-# CONFIG_ROCKCHIP_INNO_HDMI is not set
-# CONFIG_ROCKCHIP_LVDS is not set
-CONFIG_ROCKCHIP_RGB=y
-# CONFIG_ROCKCHIP_RK3066_HDMI is not set
-# CONFIG_DRM_VMWGFX is not set
-CONFIG_DRM_UDL=m
-# CONFIG_DRM_AST is not set
-# CONFIG_DRM_MGAG200 is not set
-# CONFIG_DRM_RCAR_DW_HDMI is not set
-# CONFIG_DRM_RCAR_USE_LVDS is not set
-# CONFIG_DRM_RCAR_MIPI_DSI is not set
-# CONFIG_DRM_QXL is not set
-CONFIG_DRM_VIRTIO_GPU=m
-CONFIG_DRM_PANEL=y
-
-#
-# Display Panels
-#
-# CONFIG_DRM_PANEL_ABT_Y030XX067A is not set
-# CONFIG_DRM_PANEL_ARM_VERSATILE is not set
-# CONFIG_DRM_PANEL_ASUS_Z00T_TM5P5_NT35596 is not set
-# CONFIG_DRM_PANEL_BOE_BF060Y8M_AJ0 is not set
-# CONFIG_DRM_PANEL_BOE_HIMAX8279D is not set
-# CONFIG_DRM_PANEL_BOE_TV101WUM_NL6 is not set
-# CONFIG_DRM_PANEL_DSI_CM is not set
-# CONFIG_DRM_PANEL_LVDS is not set
-CONFIG_DRM_PANEL_SIMPLE=y
-CONFIG_DRM_PANEL_EDP=y
-# CONFIG_DRM_PANEL_ELIDA_KD35T133 is not set
-# CONFIG_DRM_PANEL_FEIXIN_K101_IM2BA02 is not set
-# CONFIG_DRM_PANEL_FEIYANG_FY07024DI26A30D is not set
-# CONFIG_DRM_PANEL_ILITEK_IL9322 is not set
-# CONFIG_DRM_PANEL_ILITEK_ILI9341 is not set
-# CONFIG_DRM_PANEL_ILITEK_ILI9881C is not set
-# CONFIG_DRM_PANEL_INNOLUX_EJ030NA is not set
-# CONFIG_DRM_PANEL_INNOLUX_P079ZCA is not set
-# CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set
-# CONFIG_DRM_PANEL_JDI_R63452 is not set
-# CONFIG_DRM_PANEL_KHADAS_TS050 is not set
-# CONFIG_DRM_PANEL_KINGDISPLAY_KD097D04 is not set
-# CONFIG_DRM_PANEL_LEADTEK_LTK050H3146W is not set
-# CONFIG_DRM_PANEL_LEADTEK_LTK500HD1829 is not set
-# CONFIG_DRM_PANEL_SAMSUNG_LD9040 is not set
-# CONFIG_DRM_PANEL_LG_LB035Q02 is not set
-# CONFIG_DRM_PANEL_LG_LG4573 is not set
-# CONFIG_DRM_PANEL_NEC_NL8048HL11 is not set
-# CONFIG_DRM_PANEL_NOVATEK_NT35510 is not set
-# CONFIG_DRM_PANEL_NOVATEK_NT35950 is not set
-# CONFIG_DRM_PANEL_NOVATEK_NT36672A is not set
-# CONFIG_DRM_PANEL_NOVATEK_NT39016 is not set
-# CONFIG_DRM_PANEL_MANTIX_MLAF057WE51 is not set
-# CONFIG_DRM_PANEL_OLIMEX_LCD_OLINUXINO is not set
-# CONFIG_DRM_PANEL_ORISETECH_OTM8009A is not set
-# CONFIG_DRM_PANEL_OSD_OSD101T2587_53TS is not set
-# CONFIG_DRM_PANEL_PANASONIC_VVX10F034N00 is not set
-# CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN is not set
-# CONFIG_DRM_PANEL_RAYDIUM_RM67191 is not set
-# CONFIG_DRM_PANEL_RAYDIUM_RM68200 is not set
-# CONFIG_DRM_PANEL_RONBO_RB070D30 is not set
-# CONFIG_DRM_PANEL_SAMSUNG_ATNA33XC20 is not set
-# CONFIG_DRM_PANEL_SAMSUNG_DB7430 is not set
-# CONFIG_DRM_PANEL_SAMSUNG_S6D16D0 is not set
-# CONFIG_DRM_PANEL_SAMSUNG_S6D27A1 is not set
-# CONFIG_DRM_PANEL_SAMSUNG_S6E3HA2 is not set
-# CONFIG_DRM_PANEL_SAMSUNG_S6E63J0X03 is not set
-# CONFIG_DRM_PANEL_SAMSUNG_S6E63M0 is not set
-# CONFIG_DRM_PANEL_SAMSUNG_S6E88A0_AMS452EF01 is not set
-# CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0 is not set
-# CONFIG_DRM_PANEL_SAMSUNG_SOFEF00 is not set
-# CONFIG_DRM_PANEL_SEIKO_43WVF1G is not set
-# CONFIG_DRM_PANEL_SHARP_LQ101R1SX01 is not set
-# CONFIG_DRM_PANEL_SHARP_LS037V7DW01 is not set
-# CONFIG_DRM_PANEL_SHARP_LS043T1LE01 is not set
-# CONFIG_DRM_PANEL_SHARP_LS060T1SX01 is not set
-# CONFIG_DRM_PANEL_SITRONIX_ST7701 is not set
-# CONFIG_DRM_PANEL_SITRONIX_ST7703 is not set
-# CONFIG_DRM_PANEL_SITRONIX_ST7789V is not set
-# CONFIG_DRM_PANEL_SONY_ACX424AKP is not set
-# CONFIG_DRM_PANEL_SONY_ACX565AKM is not set
-# CONFIG_DRM_PANEL_SONY_TULIP_TRULY_NT35521 is not set
-# CONFIG_DRM_PANEL_TDO_TL070WSH30 is not set
-# CONFIG_DRM_PANEL_TPO_TD028TTEC1 is not set
-# CONFIG_DRM_PANEL_TPO_TD043MTEA1 is not set
-# CONFIG_DRM_PANEL_TPO_TPG110 is not set
-# CONFIG_DRM_PANEL_TRULY_NT35597_WQXGA is not set
-# CONFIG_DRM_PANEL_VISIONOX_RM69299 is not set
-# CONFIG_DRM_PANEL_WIDECHIPS_WS2401 is not set
-# CONFIG_DRM_PANEL_XINPENG_XPP055C272 is not set
-# end of Display Panels
-
-CONFIG_DRM_BRIDGE=y
-CONFIG_DRM_PANEL_BRIDGE=y
-
-#
-# Display Interface Bridges
-#
-# CONFIG_DRM_CDNS_DSI is not set
-# CONFIG_DRM_CHIPONE_ICN6211 is not set
-# CONFIG_DRM_CHRONTEL_CH7033 is not set
-# CONFIG_DRM_CROS_EC_ANX7688 is not set
-CONFIG_DRM_DISPLAY_CONNECTOR=y
-# CONFIG_DRM_LONTIUM_LT8912B is not set
-# CONFIG_DRM_LONTIUM_LT9611 is not set
-# CONFIG_DRM_LONTIUM_LT9611UXC is not set
-# CONFIG_DRM_ITE_IT66121 is not set
-# CONFIG_DRM_LVDS_CODEC is not set
-# CONFIG_DRM_MEGACHIPS_STDPXXXX_GE_B850V3_FW is not set
-# CONFIG_DRM_NWL_MIPI_DSI is not set
-# CONFIG_DRM_NXP_PTN3460 is not set
-# CONFIG_DRM_PARADE_PS8622 is not set
-CONFIG_DRM_PARADE_PS8640=y
-# CONFIG_DRM_SIL_SII8620 is not set
-# CONFIG_DRM_SII902X is not set
-# CONFIG_DRM_SII9234 is not set
-# CONFIG_DRM_SIMPLE_BRIDGE is not set
-# CONFIG_DRM_THINE_THC63LVD1024 is not set
-# CONFIG_DRM_TOSHIBA_TC358762 is not set
-# CONFIG_DRM_TOSHIBA_TC358764 is not set
-# CONFIG_DRM_TOSHIBA_TC358767 is not set
-# CONFIG_DRM_TOSHIBA_TC358768 is not set
-# CONFIG_DRM_TOSHIBA_TC358775 is not set
-# CONFIG_DRM_TI_TFP410 is not set
-# CONFIG_DRM_TI_SN65DSI83 is not set
-# CONFIG_DRM_TI_SN65DSI86 is not set
-# CONFIG_DRM_TI_TPD12S015 is not set
-CONFIG_DRM_ANALOGIX_ANX6345=m
-CONFIG_DRM_ANALOGIX_ANX78XX=m
-CONFIG_DRM_ANALOGIX_DP=y
-# CONFIG_DRM_ANALOGIX_ANX7625 is not set
-CONFIG_DRM_I2C_ADV7511=m
-CONFIG_DRM_I2C_ADV7511_AUDIO=y
-CONFIG_DRM_I2C_ADV7511_CEC=y
-# CONFIG_DRM_CDNS_MHDP8546 is not set
-CONFIG_DRM_DW_HDMI=y
-# CONFIG_DRM_DW_HDMI_AHB_AUDIO is not set
-CONFIG_DRM_DW_HDMI_I2S_AUDIO=m
-CONFIG_DRM_DW_HDMI_CEC=m
-CONFIG_DRM_DW_MIPI_DSI=y
-# end of Display Interface Bridges
-
-# CONFIG_DRM_ETNAVIV is not set
-# CONFIG_DRM_HISI_HIBMC is not set
-# CONFIG_DRM_HISI_KIRIN is not set
-# CONFIG_DRM_MXSFB is not set
-# CONFIG_DRM_ARCPGU is not set
-# CONFIG_DRM_BOCHS is not set
-# CONFIG_DRM_CIRRUS_QEMU is not set
-# CONFIG_DRM_GM12U320 is not set
-# CONFIG_DRM_SIMPLEDRM is not set
-# CONFIG_TINYDRM_HX8357D is not set
-# CONFIG_TINYDRM_ILI9163 is not set
-# CONFIG_TINYDRM_ILI9225 is not set
-# CONFIG_TINYDRM_ILI9341 is not set
-# CONFIG_TINYDRM_ILI9486 is not set
-# CONFIG_TINYDRM_MI0283QT is not set
-# CONFIG_TINYDRM_REPAPER is not set
-# CONFIG_TINYDRM_ST7586 is not set
-# CONFIG_TINYDRM_ST7735R is not set
-CONFIG_DRM_PL111=m
-# CONFIG_DRM_LIMA is not set
-CONFIG_DRM_PANFROST=m
-# CONFIG_DRM_TIDSS is not set
-# CONFIG_DRM_GUD is not set
-# CONFIG_DRM_LEGACY is not set
-CONFIG_DRM_PANEL_ORIENTATION_QUIRKS=y
-CONFIG_DRM_NOMODESET=y
-
-#
-# Frame buffer Devices
-#
-CONFIG_FB_CMDLINE=y
-CONFIG_FB_NOTIFY=y
-CONFIG_FB=y
-# CONFIG_FIRMWARE_EDID is not set
-CONFIG_FB_CFB_FILLRECT=y
-CONFIG_FB_CFB_COPYAREA=y
-CONFIG_FB_CFB_IMAGEBLIT=y
-CONFIG_FB_SYS_FILLRECT=y
-CONFIG_FB_SYS_COPYAREA=y
-CONFIG_FB_SYS_IMAGEBLIT=y
-# CONFIG_FB_FOREIGN_ENDIAN is not set
-CONFIG_FB_SYS_FOPS=y
-CONFIG_FB_DEFERRED_IO=y
-CONFIG_FB_MODE_HELPERS=y
-# CONFIG_FB_TILEBLITTING is not set
-
-#
-# Frame buffer hardware drivers
-#
-# CONFIG_FB_CIRRUS is not set
-# CONFIG_FB_PM2 is not set
-# CONFIG_FB_ARMCLCD is not set
-# CONFIG_FB_CYBER2000 is not set
-# CONFIG_FB_ASILIANT is not set
-# CONFIG_FB_IMSTT is not set
-# CONFIG_FB_UVESA is not set
-# CONFIG_FB_EFI is not set
-# CONFIG_FB_OPENCORES is not set
-# CONFIG_FB_S1D13XXX is not set
-# CONFIG_FB_NVIDIA is not set
-# CONFIG_FB_RIVA is not set
-# CONFIG_FB_I740 is not set
-# CONFIG_FB_MATROX is not set
-# CONFIG_FB_RADEON is not set
-# CONFIG_FB_ATY128 is not set
-# CONFIG_FB_ATY is not set
-# CONFIG_FB_S3 is not set
-# CONFIG_FB_SAVAGE is not set
-# CONFIG_FB_SIS is not set
-# CONFIG_FB_NEOMAGIC is not set
-# CONFIG_FB_KYRO is not set
-# CONFIG_FB_3DFX is not set
-# CONFIG_FB_VOODOO1 is not set
-# CONFIG_FB_VT8623 is not set
-# CONFIG_FB_TRIDENT is not set
-# CONFIG_FB_ARK is not set
-# CONFIG_FB_PM3 is not set
-# CONFIG_FB_CARMINE is not set
-# CONFIG_FB_SM501 is not set
-# CONFIG_FB_SMSCUFX is not set
-CONFIG_FB_UDL=m
-# CONFIG_FB_IBM_GXT4500 is not set
-# CONFIG_FB_VIRTUAL is not set
-# CONFIG_FB_METRONOME is not set
-# CONFIG_FB_MB862XX is not set
-# CONFIG_FB_SIMPLE is not set
-# CONFIG_FB_SSD1307 is not set
-# CONFIG_FB_SM712 is not set
-# end of Frame buffer Devices
-
-#
-# Backlight & LCD device support
-#
-# CONFIG_LCD_CLASS_DEVICE is not set
-CONFIG_BACKLIGHT_CLASS_DEVICE=y
-# CONFIG_BACKLIGHT_KTD253 is not set
-CONFIG_BACKLIGHT_PWM=y
-# CONFIG_BACKLIGHT_QCOM_WLED is not set
-# CONFIG_BACKLIGHT_ADP8860 is not set
-# CONFIG_BACKLIGHT_ADP8870 is not set
-# CONFIG_BACKLIGHT_LM3630A is not set
-# CONFIG_BACKLIGHT_LM3639 is not set
-CONFIG_BACKLIGHT_LP855X=y
-# CONFIG_BACKLIGHT_AS3711 is not set
-CONFIG_BACKLIGHT_GPIO=y
-# CONFIG_BACKLIGHT_LV5207LP is not set
-# CONFIG_BACKLIGHT_BD6107 is not set
-# CONFIG_BACKLIGHT_ARCXCNN is not set
-# CONFIG_BACKLIGHT_LED is not set
-# end of Backlight & LCD device support
-
-CONFIG_VIDEOMODE_HELPERS=y
-CONFIG_HDMI=y
-
-#
-# Console display driver support
-#
-CONFIG_DUMMY_CONSOLE=y
-CONFIG_DUMMY_CONSOLE_COLUMNS=80
-CONFIG_DUMMY_CONSOLE_ROWS=25
-CONFIG_FRAMEBUFFER_CONSOLE=y
-# CONFIG_FRAMEBUFFER_CONSOLE_LEGACY_ACCELERATION is not set
-CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
-CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y
-# CONFIG_FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER is not set
-# end of Console display driver support
-
-CONFIG_LOGO=y
-# CONFIG_LOGO_LINUX_MONO is not set
-# CONFIG_LOGO_LINUX_VGA16 is not set
-CONFIG_LOGO_LINUX_CLUT224=y
-# end of Graphics support
-
-CONFIG_SOUND=m
-CONFIG_SND=m
-CONFIG_SND_TIMER=m
-CONFIG_SND_PCM=m
-CONFIG_SND_PCM_ELD=y
-CONFIG_SND_PCM_IEC958=y
-CONFIG_SND_DMAENGINE_PCM=m
-CONFIG_SND_HWDEP=m
-CONFIG_SND_RAWMIDI=m
-CONFIG_SND_JACK=y
-CONFIG_SND_JACK_INPUT_DEV=y
-# CONFIG_SND_OSSEMUL is not set
-CONFIG_SND_PCM_TIMER=y
-# CONFIG_SND_HRTIMER is not set
-CONFIG_SND_DYNAMIC_MINORS=y
-CONFIG_SND_MAX_CARDS=32
-# CONFIG_SND_SUPPORT_OLD_API is not set
-CONFIG_SND_PROC_FS=y
-CONFIG_SND_VERBOSE_PROCFS=y
-# CONFIG_SND_VERBOSE_PRINTK is not set
-# CONFIG_SND_DEBUG is not set
-CONFIG_SND_VMASTER=y
-# CONFIG_SND_SEQUENCER is not set
-CONFIG_SND_DRIVERS=y
-# CONFIG_SND_DUMMY is not set
-# CONFIG_SND_ALOOP is not set
-# CONFIG_SND_MTPAV is not set
-# CONFIG_SND_SERIAL_U16550 is not set
-# CONFIG_SND_MPU401 is not set
-CONFIG_SND_PCI=y
-# CONFIG_SND_AD1889 is not set
-# CONFIG_SND_ALS300 is not set
-# CONFIG_SND_ALI5451 is not set
-# CONFIG_SND_ATIIXP is not set
-# CONFIG_SND_ATIIXP_MODEM is not set
-# CONFIG_SND_AU8810 is not set
-# CONFIG_SND_AU8820 is not set
-# CONFIG_SND_AU8830 is not set
-# CONFIG_SND_AW2 is not set
-# CONFIG_SND_AZT3328 is not set
-# CONFIG_SND_BT87X is not set
-# CONFIG_SND_CA0106 is not set
-# CONFIG_SND_CMIPCI is not set
-# CONFIG_SND_OXYGEN is not set
-# CONFIG_SND_CS4281 is not set
-# CONFIG_SND_CS46XX is not set
-# CONFIG_SND_CTXFI is not set
-# CONFIG_SND_DARLA20 is not set
-# CONFIG_SND_GINA20 is not set
-# CONFIG_SND_LAYLA20 is not set
-# CONFIG_SND_DARLA24 is not set
-# CONFIG_SND_GINA24 is not set
-# CONFIG_SND_LAYLA24 is not set
-# CONFIG_SND_MONA is not set
-# CONFIG_SND_MIA is not set
-# CONFIG_SND_ECHO3G is not set
-# CONFIG_SND_INDIGO is not set
-# CONFIG_SND_INDIGOIO is not set
-# CONFIG_SND_INDIGODJ is not set
-# CONFIG_SND_INDIGOIOX is not set
-# CONFIG_SND_INDIGODJX is not set
-# CONFIG_SND_EMU10K1 is not set
-# CONFIG_SND_EMU10K1X is not set
-# CONFIG_SND_ENS1370 is not set
-# CONFIG_SND_ENS1371 is not set
-# CONFIG_SND_ES1938 is not set
-# CONFIG_SND_ES1968 is not set
-# CONFIG_SND_FM801 is not set
-# CONFIG_SND_HDSP is not set
-# CONFIG_SND_HDSPM is not set
-# CONFIG_SND_ICE1712 is not set
-# CONFIG_SND_ICE1724 is not set
-# CONFIG_SND_INTEL8X0 is not set
-# CONFIG_SND_INTEL8X0M is not set
-# CONFIG_SND_KORG1212 is not set
-# CONFIG_SND_LOLA is not set
-# CONFIG_SND_LX6464ES is not set
-# CONFIG_SND_MAESTRO3 is not set
-# CONFIG_SND_MIXART is not set
-# CONFIG_SND_NM256 is not set
-# CONFIG_SND_PCXHR is not set
-# CONFIG_SND_RIPTIDE is not set
-# CONFIG_SND_RME32 is not set
-# CONFIG_SND_RME96 is not set
-# CONFIG_SND_RME9652 is not set
-# CONFIG_SND_SE6X is not set
-# CONFIG_SND_SONICVIBES is not set
-# CONFIG_SND_TRIDENT is not set
-# CONFIG_SND_VIA82XX is not set
-# CONFIG_SND_VIA82XX_MODEM is not set
-# CONFIG_SND_VIRTUOSO is not set
-# CONFIG_SND_VX222 is not set
-# CONFIG_SND_YMFPCI is not set
-
-#
-# HD-Audio
-#
-# CONFIG_SND_HDA_INTEL is not set
-# end of HD-Audio
-
-CONFIG_SND_HDA_PREALLOC_SIZE=4096
-CONFIG_SND_SPI=y
-CONFIG_SND_USB=y
-CONFIG_SND_USB_AUDIO=m
-CONFIG_SND_USB_AUDIO_USE_MEDIA_CONTROLLER=y
-CONFIG_SND_USB_UA101=m
-CONFIG_SND_USB_CAIAQ=m
-CONFIG_SND_USB_CAIAQ_INPUT=y
-CONFIG_SND_USB_6FIRE=m
-CONFIG_SND_USB_HIFACE=m
-CONFIG_SND_BCD2000=m
-CONFIG_SND_USB_LINE6=m
-CONFIG_SND_USB_POD=m
-CONFIG_SND_USB_PODHD=m
-CONFIG_SND_USB_TONEPORT=m
-CONFIG_SND_USB_VARIAX=m
-CONFIG_SND_SOC=m
-CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
-# CONFIG_SND_SOC_ADI is not set
-# CONFIG_SND_SOC_AMD_ACP is not set
-# CONFIG_SND_AMD_ACP_CONFIG is not set
-# CONFIG_SND_ATMEL_SOC is not set
-# CONFIG_SND_BCM63XX_I2S_WHISTLER is not set
-# CONFIG_SND_DESIGNWARE_I2S is not set
-
-#
-# SoC Audio for Freescale CPUs
-#
-
-#
-# Common SoC Audio options for Freescale CPUs:
-#
-# CONFIG_SND_SOC_FSL_ASRC is not set
-# CONFIG_SND_SOC_FSL_SAI is not set
-# CONFIG_SND_SOC_FSL_AUDMIX is not set
-# CONFIG_SND_SOC_FSL_SSI is not set
-# CONFIG_SND_SOC_FSL_SPDIF is not set
-# CONFIG_SND_SOC_FSL_ESAI is not set
-# CONFIG_SND_SOC_FSL_MICFIL is not set
-# CONFIG_SND_SOC_FSL_XCVR is not set
-# CONFIG_SND_SOC_IMX_AUDMUX is not set
-# end of SoC Audio for Freescale CPUs
-
-# CONFIG_SND_I2S_HI6210_I2S is not set
-# CONFIG_SND_SOC_IMG is not set
-# CONFIG_SND_SOC_MTK_BTCVSD is not set
-CONFIG_SND_SOC_ROCKCHIP=m
-CONFIG_SND_SOC_ROCKCHIP_I2S=m
-CONFIG_SND_SOC_ROCKCHIP_I2S_TDM=m
-CONFIG_SND_SOC_ROCKCHIP_PDM=m
-CONFIG_SND_SOC_ROCKCHIP_SPDIF=m
-CONFIG_SND_SOC_ROCKCHIP_MAX98090=m
-CONFIG_SND_SOC_ROCKCHIP_RT5645=m
-CONFIG_SND_SOC_RK3288_HDMI_ANALOG=m
-CONFIG_SND_SOC_RK3399_GRU_SOUND=m
-# CONFIG_SND_SOC_SOF_TOPLEVEL is not set
-
-#
-# STMicroelectronics STM32 SOC audio support
-#
-# end of STMicroelectronics STM32 SOC audio support
-
-# CONFIG_SND_SOC_XILINX_I2S is not set
-# CONFIG_SND_SOC_XILINX_AUDIO_FORMATTER is not set
-# CONFIG_SND_SOC_XILINX_SPDIF is not set
-# CONFIG_SND_SOC_XTFPGA_I2S is not set
-CONFIG_SND_SOC_I2C_AND_SPI=m
-
-#
-# CODEC drivers
-#
-# CONFIG_SND_SOC_AC97_CODEC is not set
-# CONFIG_SND_SOC_ADAU1372_I2C is not set
-# CONFIG_SND_SOC_ADAU1372_SPI is not set
-# CONFIG_SND_SOC_ADAU1701 is not set
-# CONFIG_SND_SOC_ADAU1761_I2C is not set
-# CONFIG_SND_SOC_ADAU1761_SPI is not set
-# CONFIG_SND_SOC_ADAU7002 is not set
-# CONFIG_SND_SOC_ADAU7118_HW is not set
-# CONFIG_SND_SOC_ADAU7118_I2C is not set
-# CONFIG_SND_SOC_AK4104 is not set
-# CONFIG_SND_SOC_AK4118 is not set
-# CONFIG_SND_SOC_AK4375 is not set
-# CONFIG_SND_SOC_AK4458 is not set
-# CONFIG_SND_SOC_AK4554 is not set
-# CONFIG_SND_SOC_AK4613 is not set
-# CONFIG_SND_SOC_AK4642 is not set
-# CONFIG_SND_SOC_AK5386 is not set
-# CONFIG_SND_SOC_AK5558 is not set
-# CONFIG_SND_SOC_ALC5623 is not set
-# CONFIG_SND_SOC_BD28623 is not set
-CONFIG_SND_SOC_BT_SCO=m
-CONFIG_SND_SOC_CROS_EC_CODEC=m
-# CONFIG_SND_SOC_CS35L32 is not set
-# CONFIG_SND_SOC_CS35L33 is not set
-# CONFIG_SND_SOC_CS35L34 is not set
-# CONFIG_SND_SOC_CS35L35 is not set
-# CONFIG_SND_SOC_CS35L36 is not set
-# CONFIG_SND_SOC_CS35L41_SPI is not set
-# CONFIG_SND_SOC_CS35L41_I2C is not set
-# CONFIG_SND_SOC_CS42L42 is not set
-# CONFIG_SND_SOC_CS42L51_I2C is not set
-# CONFIG_SND_SOC_CS42L52 is not set
-# CONFIG_SND_SOC_CS42L56 is not set
-# CONFIG_SND_SOC_CS42L73 is not set
-# CONFIG_SND_SOC_CS4234 is not set
-# CONFIG_SND_SOC_CS4265 is not set
-# CONFIG_SND_SOC_CS4270 is not set
-# CONFIG_SND_SOC_CS4271_I2C is not set
-# CONFIG_SND_SOC_CS4271_SPI is not set
-# CONFIG_SND_SOC_CS42XX8_I2C is not set
-# CONFIG_SND_SOC_CS43130 is not set
-# CONFIG_SND_SOC_CS4341 is not set
-# CONFIG_SND_SOC_CS4349 is not set
-# CONFIG_SND_SOC_CS53L30 is not set
-# CONFIG_SND_SOC_CX2072X is not set
-# CONFIG_SND_SOC_DA7213 is not set
-CONFIG_SND_SOC_DA7219=m
-CONFIG_SND_SOC_DMIC=m
-CONFIG_SND_SOC_HDMI_CODEC=m
-# CONFIG_SND_SOC_ES7134 is not set
-# CONFIG_SND_SOC_ES7241 is not set
-# CONFIG_SND_SOC_ES8316 is not set
-CONFIG_SND_SOC_ES8328=m
-CONFIG_SND_SOC_ES8328_I2C=m
-CONFIG_SND_SOC_ES8328_SPI=m
-# CONFIG_SND_SOC_GTM601 is not set
-# CONFIG_SND_SOC_ICS43432 is not set
-# CONFIG_SND_SOC_INNO_RK3036 is not set
-# CONFIG_SND_SOC_MAX98088 is not set
-CONFIG_SND_SOC_MAX98090=m
-CONFIG_SND_SOC_MAX98357A=m
-# CONFIG_SND_SOC_MAX98504 is not set
-# CONFIG_SND_SOC_MAX9867 is not set
-# CONFIG_SND_SOC_MAX98927 is not set
-# CONFIG_SND_SOC_MAX98520 is not set
-# CONFIG_SND_SOC_MAX98373_I2C is not set
-# CONFIG_SND_SOC_MAX98390 is not set
-# CONFIG_SND_SOC_MAX9860 is not set
-# CONFIG_SND_SOC_MSM8916_WCD_ANALOG is not set
-# CONFIG_SND_SOC_MSM8916_WCD_DIGITAL is not set
-# CONFIG_SND_SOC_PCM1681 is not set
-# CONFIG_SND_SOC_PCM1789_I2C is not set
-# CONFIG_SND_SOC_PCM179X_I2C is not set
-# CONFIG_SND_SOC_PCM179X_SPI is not set
-# CONFIG_SND_SOC_PCM186X_I2C is not set
-# CONFIG_SND_SOC_PCM186X_SPI is not set
-# CONFIG_SND_SOC_PCM3060_I2C is not set
-# CONFIG_SND_SOC_PCM3060_SPI is not set
-# CONFIG_SND_SOC_PCM3168A_I2C is not set
-# CONFIG_SND_SOC_PCM3168A_SPI is not set
-# CONFIG_SND_SOC_PCM5102A is not set
-# CONFIG_SND_SOC_PCM512x_I2C is not set
-# CONFIG_SND_SOC_PCM512x_SPI is not set
-CONFIG_SND_SOC_RK3328=m
-CONFIG_SND_SOC_RK817=m
-CONFIG_SND_SOC_RL6231=m
-CONFIG_SND_SOC_RT5514=m
-CONFIG_SND_SOC_RT5514_SPI=m
-# CONFIG_SND_SOC_RT5616 is not set
-# CONFIG_SND_SOC_RT5631 is not set
-# CONFIG_SND_SOC_RT5640 is not set
-CONFIG_SND_SOC_RT5645=m
-# CONFIG_SND_SOC_RT5659 is not set
-# CONFIG_SND_SOC_RT9120 is not set
-# CONFIG_SND_SOC_SGTL5000 is not set
-# CONFIG_SND_SOC_SIMPLE_AMPLIFIER is not set
-# CONFIG_SND_SOC_SIMPLE_MUX is not set
-# CONFIG_SND_SOC_SPDIF is not set
-# CONFIG_SND_SOC_SSM2305 is not set
-# CONFIG_SND_SOC_SSM2518 is not set
-# CONFIG_SND_SOC_SSM2602_SPI is not set
-# CONFIG_SND_SOC_SSM2602_I2C is not set
-# CONFIG_SND_SOC_SSM4567 is not set
-# CONFIG_SND_SOC_STA32X is not set
-# CONFIG_SND_SOC_STA350 is not set
-# CONFIG_SND_SOC_STI_SAS is not set
-# CONFIG_SND_SOC_TAS2552 is not set
-# CONFIG_SND_SOC_TAS2562 is not set
-# CONFIG_SND_SOC_TAS2764 is not set
-# CONFIG_SND_SOC_TAS2770 is not set
-# CONFIG_SND_SOC_TAS5086 is not set
-# CONFIG_SND_SOC_TAS571X is not set
-# CONFIG_SND_SOC_TAS5720 is not set
-# CONFIG_SND_SOC_TAS6424 is not set
-# CONFIG_SND_SOC_TDA7419 is not set
-# CONFIG_SND_SOC_TFA9879 is not set
-# CONFIG_SND_SOC_TFA989X is not set
-# CONFIG_SND_SOC_TLV320ADC3XXX is not set
-# CONFIG_SND_SOC_TLV320AIC23_I2C is not set
-# CONFIG_SND_SOC_TLV320AIC23_SPI is not set
-# CONFIG_SND_SOC_TLV320AIC31XX is not set
-# CONFIG_SND_SOC_TLV320AIC32X4_I2C is not set
-# CONFIG_SND_SOC_TLV320AIC32X4_SPI is not set
-# CONFIG_SND_SOC_TLV320AIC3X_I2C is not set
-# CONFIG_SND_SOC_TLV320AIC3X_SPI is not set
-# CONFIG_SND_SOC_TLV320ADCX140 is not set
-CONFIG_SND_SOC_TS3A227E=m
-# CONFIG_SND_SOC_TSCS42XX is not set
-# CONFIG_SND_SOC_TSCS454 is not set
-# CONFIG_SND_SOC_UDA1334 is not set
-# CONFIG_SND_SOC_WM8510 is not set
-# CONFIG_SND_SOC_WM8523 is not set
-# CONFIG_SND_SOC_WM8524 is not set
-# CONFIG_SND_SOC_WM8580 is not set
-# CONFIG_SND_SOC_WM8711 is not set
-# CONFIG_SND_SOC_WM8728 is not set
-# CONFIG_SND_SOC_WM8731 is not set
-# CONFIG_SND_SOC_WM8737 is not set
-# CONFIG_SND_SOC_WM8741 is not set
-# CONFIG_SND_SOC_WM8750 is not set
-# CONFIG_SND_SOC_WM8753 is not set
-# CONFIG_SND_SOC_WM8770 is not set
-# CONFIG_SND_SOC_WM8776 is not set
-# CONFIG_SND_SOC_WM8782 is not set
-# CONFIG_SND_SOC_WM8804_I2C is not set
-# CONFIG_SND_SOC_WM8804_SPI is not set
-# CONFIG_SND_SOC_WM8903 is not set
-# CONFIG_SND_SOC_WM8904 is not set
-# CONFIG_SND_SOC_WM8960 is not set
-# CONFIG_SND_SOC_WM8962 is not set
-# CONFIG_SND_SOC_WM8974 is not set
-# CONFIG_SND_SOC_WM8978 is not set
-# CONFIG_SND_SOC_WM8985 is not set
-# CONFIG_SND_SOC_ZL38060 is not set
-# CONFIG_SND_SOC_MAX9759 is not set
-# CONFIG_SND_SOC_MT6351 is not set
-# CONFIG_SND_SOC_MT6358 is not set
-# CONFIG_SND_SOC_MT6660 is not set
-# CONFIG_SND_SOC_NAU8315 is not set
-# CONFIG_SND_SOC_NAU8540 is not set
-# CONFIG_SND_SOC_NAU8810 is not set
-# CONFIG_SND_SOC_NAU8821 is not set
-# CONFIG_SND_SOC_NAU8822 is not set
-# CONFIG_SND_SOC_NAU8824 is not set
-# CONFIG_SND_SOC_TPA6130A2 is not set
-# CONFIG_SND_SOC_LPASS_WSA_MACRO is not set
-# CONFIG_SND_SOC_LPASS_VA_MACRO is not set
-# CONFIG_SND_SOC_LPASS_RX_MACRO is not set
-# CONFIG_SND_SOC_LPASS_TX_MACRO is not set
-# end of CODEC drivers
-
-CONFIG_SND_SIMPLE_CARD_UTILS=m
-CONFIG_SND_SIMPLE_CARD=m
-CONFIG_SND_AUDIO_GRAPH_CARD=m
-# CONFIG_SND_AUDIO_GRAPH_CARD2 is not set
-# CONFIG_SND_TEST_COMPONENT is not set
-# CONFIG_SND_VIRTIO is not set
-
-#
-# HID support
-#
-CONFIG_HID=y
-CONFIG_HID_BATTERY_STRENGTH=y
-CONFIG_HIDRAW=y
-CONFIG_UHID=m
-CONFIG_HID_GENERIC=y
-
-#
-# Special HID drivers
-#
-# CONFIG_HID_A4TECH is not set
-# CONFIG_HID_ACCUTOUCH is not set
-# CONFIG_HID_ACRUX is not set
-# CONFIG_HID_APPLE is not set
-# CONFIG_HID_APPLEIR is not set
-# CONFIG_HID_ASUS is not set
-# CONFIG_HID_AUREAL is not set
-# CONFIG_HID_BELKIN is not set
-# CONFIG_HID_BETOP_FF is not set
-# CONFIG_HID_BIGBEN_FF is not set
-# CONFIG_HID_CHERRY is not set
-# CONFIG_HID_CHICONY is not set
-# CONFIG_HID_CORSAIR is not set
-# CONFIG_HID_COUGAR is not set
-# CONFIG_HID_MACALLY is not set
-# CONFIG_HID_PRODIKEYS is not set
-# CONFIG_HID_CMEDIA is not set
-# CONFIG_HID_CP2112 is not set
-# CONFIG_HID_CREATIVE_SB0540 is not set
-# CONFIG_HID_CYPRESS is not set
-# CONFIG_HID_DRAGONRISE is not set
-# CONFIG_HID_EMS_FF is not set
-# CONFIG_HID_ELAN is not set
-# CONFIG_HID_ELECOM is not set
-# CONFIG_HID_ELO is not set
-# CONFIG_HID_EZKEY is not set
-# CONFIG_HID_FT260 is not set
-# CONFIG_HID_GEMBIRD is not set
-# CONFIG_HID_GFRM is not set
-# CONFIG_HID_GLORIOUS is not set
-# CONFIG_HID_HOLTEK is not set
-# CONFIG_HID_GOOGLE_HAMMER is not set
-# CONFIG_HID_VIVALDI is not set
-# CONFIG_HID_GT683R is not set
-# CONFIG_HID_KEYTOUCH is not set
-# CONFIG_HID_KYE is not set
-CONFIG_HID_UCLOGIC=m
-# CONFIG_HID_WALTOP is not set
-# CONFIG_HID_VIEWSONIC is not set
-# CONFIG_HID_XIAOMI is not set
-# CONFIG_HID_GYRATION is not set
-# CONFIG_HID_ICADE is not set
-# CONFIG_HID_ITE is not set
-# CONFIG_HID_JABRA is not set
-# CONFIG_HID_TWINHAN is not set
-# CONFIG_HID_KENSINGTON is not set
-# CONFIG_HID_LCPOWER is not set
-CONFIG_HID_LED=m
-# CONFIG_HID_LENOVO is not set
-# CONFIG_HID_LETSKETCH is not set
-CONFIG_HID_LOGITECH=m
-CONFIG_HID_LOGITECH_DJ=m
-CONFIG_HID_LOGITECH_HIDPP=m
-# CONFIG_LOGITECH_FF is not set
-# CONFIG_LOGIRUMBLEPAD2_FF is not set
-# CONFIG_LOGIG940_FF is not set
-# CONFIG_LOGIWHEELS_FF is not set
-# CONFIG_HID_MAGICMOUSE is not set
-# CONFIG_HID_MALTRON is not set
-# CONFIG_HID_MAYFLASH is not set
-# CONFIG_HID_REDRAGON is not set
-# CONFIG_HID_MICROSOFT is not set
-# CONFIG_HID_MONTEREY is not set
-CONFIG_HID_MULTITOUCH=m
-# CONFIG_HID_NINTENDO is not set
-# CONFIG_HID_NTI is not set
-# CONFIG_HID_NTRIG is not set
-# CONFIG_HID_ORTEK is not set
-# CONFIG_HID_PANTHERLORD is not set
-# CONFIG_HID_PENMOUNT is not set
-# CONFIG_HID_PETALYNX is not set
-# CONFIG_HID_PICOLCD is not set
-# CONFIG_HID_PLANTRONICS is not set
-# CONFIG_HID_PLAYSTATION is not set
-# CONFIG_HID_PRIMAX is not set
-# CONFIG_HID_RETRODE is not set
-# CONFIG_HID_ROCCAT is not set
-# CONFIG_HID_SAITEK is not set
-# CONFIG_HID_SAMSUNG is not set
-# CONFIG_HID_SEMITEK is not set
-# CONFIG_HID_SONY is not set
-# CONFIG_HID_SPEEDLINK is not set
-# CONFIG_HID_STEAM is not set
-# CONFIG_HID_STEELSERIES is not set
-# CONFIG_HID_SUNPLUS is not set
-# CONFIG_HID_RMI is not set
-# CONFIG_HID_GREENASIA is not set
-# CONFIG_HID_SMARTJOYPLUS is not set
-# CONFIG_HID_TIVO is not set
-# CONFIG_HID_TOPSEED is not set
-# CONFIG_HID_THINGM is not set
-# CONFIG_HID_THRUSTMASTER is not set
-# CONFIG_HID_UDRAW_PS3 is not set
-# CONFIG_HID_U2FZERO is not set
-# CONFIG_HID_WACOM is not set
-# CONFIG_HID_WIIMOTE is not set
-# CONFIG_HID_XINMO is not set
-# CONFIG_HID_ZEROPLUS is not set
-# CONFIG_HID_ZYDACRON is not set
-# CONFIG_HID_SENSOR_HUB is not set
-# CONFIG_HID_ALPS is not set
-# CONFIG_HID_MCP2221 is not set
-# end of Special HID drivers
-
-#
-# USB HID support
-#
-CONFIG_USB_HID=y
-CONFIG_HID_PID=y
-CONFIG_USB_HIDDEV=y
-# end of USB HID support
-
-#
-# I2C HID support
-#
-CONFIG_I2C_HID_ACPI=m
-CONFIG_I2C_HID_OF=m
-# CONFIG_I2C_HID_OF_GOODIX is not set
-# end of I2C HID support
-
-CONFIG_I2C_HID_CORE=m
-# end of HID support
-
-CONFIG_USB_OHCI_LITTLE_ENDIAN=y
-CONFIG_USB_SUPPORT=y
-CONFIG_USB_COMMON=y
-# CONFIG_USB_LED_TRIG is not set
-CONFIG_USB_ULPI_BUS=y
-# CONFIG_USB_CONN_GPIO is not set
-CONFIG_USB_ARCH_HAS_HCD=y
-CONFIG_USB=y
-CONFIG_USB_PCI=y
-CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
-
-#
-# Miscellaneous USB options
-#
-CONFIG_USB_DEFAULT_PERSIST=y
-# CONFIG_USB_FEW_INIT_RETRIES is not set
-# CONFIG_USB_DYNAMIC_MINORS is not set
-CONFIG_USB_OTG=y
-# CONFIG_USB_OTG_PRODUCTLIST is not set
-# CONFIG_USB_OTG_DISABLE_EXTERNAL_HUB is not set
-# CONFIG_USB_OTG_FSM is not set
-# CONFIG_USB_LEDS_TRIGGER_USBPORT is not set
-CONFIG_USB_AUTOSUSPEND_DELAY=2
-CONFIG_USB_MON=m
-
-#
-# USB Host Controller Drivers
-#
-# CONFIG_USB_C67X00_HCD is not set
-CONFIG_USB_XHCI_HCD=y
-# CONFIG_USB_XHCI_DBGCAP is not set
-CONFIG_USB_XHCI_PCI=y
-# CONFIG_USB_XHCI_PCI_RENESAS is not set
-CONFIG_USB_XHCI_PLATFORM=y
-CONFIG_USB_EHCI_HCD=y
-CONFIG_USB_EHCI_ROOT_HUB_TT=y
-CONFIG_USB_EHCI_TT_NEWSCHED=y
-CONFIG_USB_EHCI_PCI=y
-# CONFIG_USB_EHCI_FSL is not set
-CONFIG_USB_EHCI_HCD_PLATFORM=y
-# CONFIG_USB_OXU210HP_HCD is not set
-# CONFIG_USB_ISP116X_HCD is not set
-# CONFIG_USB_FOTG210_HCD is not set
-# CONFIG_USB_MAX3421_HCD is not set
-CONFIG_USB_OHCI_HCD=y
-CONFIG_USB_OHCI_HCD_PCI=y
-CONFIG_USB_OHCI_HCD_PLATFORM=y
-# CONFIG_USB_UHCI_HCD is not set
-# CONFIG_USB_SL811_HCD is not set
-# CONFIG_USB_R8A66597_HCD is not set
-# CONFIG_USB_HCD_SSB is not set
-# CONFIG_USB_HCD_TEST_MODE is not set
-
-#
-# USB Device Class drivers
-#
-CONFIG_USB_ACM=m
-# CONFIG_USB_PRINTER is not set
-CONFIG_USB_WDM=m
-CONFIG_USB_TMC=m
-
-#
-# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may
-#
-
-#
-# also be needed; see USB_STORAGE Help for more info
-#
-CONFIG_USB_STORAGE=y
-# CONFIG_USB_STORAGE_DEBUG is not set
-CONFIG_USB_STORAGE_REALTEK=m
-CONFIG_REALTEK_AUTOPM=y
-CONFIG_USB_STORAGE_DATAFAB=m
-CONFIG_USB_STORAGE_FREECOM=m
-CONFIG_USB_STORAGE_ISD200=m
-CONFIG_USB_STORAGE_USBAT=m
-CONFIG_USB_STORAGE_SDDR09=m
-CONFIG_USB_STORAGE_SDDR55=m
-CONFIG_USB_STORAGE_JUMPSHOT=m
-CONFIG_USB_STORAGE_ALAUDA=m
-CONFIG_USB_STORAGE_ONETOUCH=m
-CONFIG_USB_STORAGE_KARMA=m
-CONFIG_USB_STORAGE_CYPRESS_ATACB=m
-CONFIG_USB_STORAGE_ENE_UB6250=m
-CONFIG_USB_UAS=y
-
-#
-# USB Imaging devices
-#
-# CONFIG_USB_MDC800 is not set
-# CONFIG_USB_MICROTEK is not set
-CONFIG_USBIP_CORE=m
-CONFIG_USBIP_VHCI_HCD=m
-CONFIG_USBIP_VHCI_HC_PORTS=8
-CONFIG_USBIP_VHCI_NR_HCS=1
-CONFIG_USBIP_HOST=m
-# CONFIG_USBIP_DEBUG is not set
-# CONFIG_USB_CDNS_SUPPORT is not set
-# CONFIG_USB_MUSB_HDRC is not set
-CONFIG_USB_DWC3=y
-CONFIG_USB_DWC3_ULPI=y
-CONFIG_USB_DWC3_HOST=y
-
-#
-# Platform Glue Driver Support
-#
-CONFIG_USB_DWC3_PCI=y
-CONFIG_USB_DWC3_HAPS=y
-CONFIG_USB_DWC3_OF_SIMPLE=y
-CONFIG_USB_DWC2=y
-CONFIG_USB_DWC2_HOST=y
-
-#
-# Gadget/Dual-role mode requires USB Gadget support to be enabled
-#
-CONFIG_USB_DWC2_PCI=y
-# CONFIG_USB_DWC2_DEBUG is not set
-# CONFIG_USB_DWC2_TRACK_MISSED_SOFS is not set
-CONFIG_USB_CHIPIDEA=y
-CONFIG_USB_CHIPIDEA_HOST=y
-CONFIG_USB_CHIPIDEA_PCI=y
-CONFIG_USB_CHIPIDEA_MSM=y
-CONFIG_USB_CHIPIDEA_IMX=y
-CONFIG_USB_CHIPIDEA_GENERIC=y
-CONFIG_USB_CHIPIDEA_TEGRA=y
-CONFIG_USB_ISP1760=y
-CONFIG_USB_ISP1760_HCD=y
-CONFIG_USB_ISP1760_HOST_ROLE=y
-
-#
-# USB port drivers
-#
-CONFIG_USB_SERIAL=m
-CONFIG_USB_SERIAL_GENERIC=y
-CONFIG_USB_SERIAL_SIMPLE=m
-CONFIG_USB_SERIAL_AIRCABLE=m
-CONFIG_USB_SERIAL_ARK3116=m
-CONFIG_USB_SERIAL_BELKIN=m
-CONFIG_USB_SERIAL_CH341=m
-CONFIG_USB_SERIAL_WHITEHEAT=m
-CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m
-CONFIG_USB_SERIAL_CP210X=m
-CONFIG_USB_SERIAL_CYPRESS_M8=m
-CONFIG_USB_SERIAL_EMPEG=m
-CONFIG_USB_SERIAL_FTDI_SIO=m
-CONFIG_USB_SERIAL_VISOR=m
-CONFIG_USB_SERIAL_IPAQ=m
-CONFIG_USB_SERIAL_IR=m
-CONFIG_USB_SERIAL_EDGEPORT=m
-CONFIG_USB_SERIAL_EDGEPORT_TI=m
-CONFIG_USB_SERIAL_F81232=m
-CONFIG_USB_SERIAL_F8153X=m
-CONFIG_USB_SERIAL_GARMIN=m
-CONFIG_USB_SERIAL_IPW=m
-CONFIG_USB_SERIAL_IUU=m
-CONFIG_USB_SERIAL_KEYSPAN_PDA=m
-CONFIG_USB_SERIAL_KEYSPAN=m
-CONFIG_USB_SERIAL_KLSI=m
-CONFIG_USB_SERIAL_KOBIL_SCT=m
-CONFIG_USB_SERIAL_MCT_U232=m
-CONFIG_USB_SERIAL_METRO=m
-CONFIG_USB_SERIAL_MOS7720=m
-CONFIG_USB_SERIAL_MOS7840=m
-CONFIG_USB_SERIAL_MXUPORT=m
-CONFIG_USB_SERIAL_NAVMAN=m
-CONFIG_USB_SERIAL_PL2303=m
-CONFIG_USB_SERIAL_OTI6858=m
-CONFIG_USB_SERIAL_QCAUX=m
-CONFIG_USB_SERIAL_QUALCOMM=m
-CONFIG_USB_SERIAL_SPCP8X5=m
-CONFIG_USB_SERIAL_SAFE=m
-CONFIG_USB_SERIAL_SAFE_PADDED=y
-CONFIG_USB_SERIAL_SIERRAWIRELESS=m
-CONFIG_USB_SERIAL_SYMBOL=m
-CONFIG_USB_SERIAL_TI=m
-CONFIG_USB_SERIAL_CYBERJACK=m
-CONFIG_USB_SERIAL_WWAN=m
-CONFIG_USB_SERIAL_OPTION=m
-CONFIG_USB_SERIAL_OMNINET=m
-CONFIG_USB_SERIAL_OPTICON=m
-CONFIG_USB_SERIAL_XSENS_MT=m
-CONFIG_USB_SERIAL_WISHBONE=m
-CONFIG_USB_SERIAL_SSU100=m
-CONFIG_USB_SERIAL_QT2=m
-# CONFIG_USB_SERIAL_UPD78F0730 is not set
-# CONFIG_USB_SERIAL_XR is not set
-# CONFIG_USB_SERIAL_DEBUG is not set
-
-#
-# USB Miscellaneous drivers
-#
-# CONFIG_USB_EMI62 is not set
-# CONFIG_USB_EMI26 is not set
-# CONFIG_USB_ADUTUX is not set
-# CONFIG_USB_SEVSEG is not set
-# CONFIG_USB_LEGOTOWER is not set
-# CONFIG_USB_LCD is not set
-# CONFIG_USB_CYPRESS_CY7C63 is not set
-# CONFIG_USB_CYTHERM is not set
-# CONFIG_USB_IDMOUSE is not set
-# CONFIG_USB_FTDI_ELAN is not set
-# CONFIG_USB_APPLEDISPLAY is not set
-# CONFIG_APPLE_MFI_FASTCHARGE is not set
-# CONFIG_USB_SISUSBVGA is not set
-# CONFIG_USB_LD is not set
-# CONFIG_USB_TRANCEVIBRATOR is not set
-# CONFIG_USB_IOWARRIOR is not set
-# CONFIG_USB_TEST is not set
-# CONFIG_USB_EHSET_TEST_FIXTURE is not set
-# CONFIG_USB_ISIGHTFW is not set
-# CONFIG_USB_YUREX is not set
-CONFIG_USB_EZUSB_FX2=m
-# CONFIG_USB_HUB_USB251XB is not set
-CONFIG_USB_HSIC_USB3503=m
-# CONFIG_USB_HSIC_USB4604 is not set
-# CONFIG_USB_LINK_LAYER_TEST is not set
-# CONFIG_USB_CHAOSKEY is not set
-
-#
-# USB Physical Layer drivers
-#
-CONFIG_USB_PHY=y
-CONFIG_NOP_USB_XCEIV=y
-# CONFIG_USB_GPIO_VBUS is not set
-# CONFIG_USB_ISP1301 is not set
-CONFIG_USB_ULPI=y
-CONFIG_USB_ULPI_VIEWPORT=y
-# end of USB Physical Layer drivers
-
-# CONFIG_USB_GADGET is not set
-CONFIG_TYPEC=y
-CONFIG_TYPEC_TCPM=m
-# CONFIG_TYPEC_TCPCI is not set
-# CONFIG_TYPEC_FUSB302 is not set
-CONFIG_TYPEC_UCSI=m
-# CONFIG_UCSI_CCG is not set
-CONFIG_UCSI_ACPI=m
-# CONFIG_TYPEC_TPS6598X is not set
-# CONFIG_TYPEC_HD3SS3220 is not set
-# CONFIG_TYPEC_STUSB160X is not set
-
-#
-# USB Type-C Multiplexer/DeMultiplexer Switch support
-#
-# CONFIG_TYPEC_MUX_PI3USB30532 is not set
-# end of USB Type-C Multiplexer/DeMultiplexer Switch support
-
-#
-# USB Type-C Alternate Mode drivers
-#
-CONFIG_TYPEC_DP_ALTMODE=m
-# CONFIG_TYPEC_NVIDIA_ALTMODE is not set
-# end of USB Type-C Alternate Mode drivers
-
-CONFIG_USB_ROLE_SWITCH=y
-CONFIG_MMC=y
-CONFIG_PWRSEQ_EMMC=y
-# CONFIG_PWRSEQ_SD8787 is not set
-CONFIG_PWRSEQ_SIMPLE=y
-CONFIG_MMC_BLOCK=y
-CONFIG_MMC_BLOCK_MINORS=32
-# CONFIG_SDIO_UART is not set
-# CONFIG_MMC_TEST is not set
-
-#
-# MMC/SD/SDIO Host Controller Drivers
-#
-# CONFIG_MMC_DEBUG is not set
-# CONFIG_MMC_ARMMMCI is not set
-CONFIG_MMC_SDHCI=y
-CONFIG_MMC_SDHCI_IO_ACCESSORS=y
-CONFIG_MMC_SDHCI_PCI=y
-# CONFIG_MMC_RICOH_MMC is not set
-# CONFIG_MMC_SDHCI_ACPI is not set
-CONFIG_MMC_SDHCI_PLTFM=y
-CONFIG_MMC_SDHCI_OF_ARASAN=y
-# CONFIG_MMC_SDHCI_OF_ASPEED is not set
-# CONFIG_MMC_SDHCI_OF_AT91 is not set
-# CONFIG_MMC_SDHCI_OF_DWCMSHC is not set
-# CONFIG_MMC_SDHCI_CADENCE is not set
-# CONFIG_MMC_SDHCI_F_SDH30 is not set
-# CONFIG_MMC_SDHCI_MILBEAUT is not set
-# CONFIG_MMC_TIFM_SD is not set
-# CONFIG_MMC_SPI is not set
-# CONFIG_MMC_CB710 is not set
-# CONFIG_MMC_VIA_SDMMC is not set
-CONFIG_MMC_DW=y
-CONFIG_MMC_DW_PLTFM=y
-# CONFIG_MMC_DW_BLUEFIELD is not set
-# CONFIG_MMC_DW_EXYNOS is not set
-# CONFIG_MMC_DW_HI3798CV200 is not set
-# CONFIG_MMC_DW_K3 is not set
-CONFIG_MMC_DW_PCI=y
-CONFIG_MMC_DW_ROCKCHIP=y
-# CONFIG_MMC_VUB300 is not set
-# CONFIG_MMC_USHC is not set
-# CONFIG_MMC_USDHI6ROL0 is not set
-CONFIG_MMC_CQHCI=y
-CONFIG_MMC_HSQ=y
-# CONFIG_MMC_TOSHIBA_PCI is not set
-# CONFIG_MMC_MTK is not set
-# CONFIG_MMC_SDHCI_XENON is not set
-# CONFIG_MMC_SDHCI_OMAP is not set
-# CONFIG_MMC_SDHCI_AM654 is not set
-# CONFIG_MEMSTICK is not set
-CONFIG_NEW_LEDS=y
-CONFIG_LEDS_CLASS=y
-CONFIG_LEDS_CLASS_FLASH=m
-CONFIG_LEDS_CLASS_MULTICOLOR=m
-# CONFIG_LEDS_BRIGHTNESS_HW_CHANGED is not set
-
-#
-# LED drivers
-#
-# CONFIG_LEDS_AN30259A is not set
-# CONFIG_LEDS_AW2013 is not set
-# CONFIG_LEDS_BCM6328 is not set
-# CONFIG_LEDS_BCM6358 is not set
-# CONFIG_LEDS_CR0014114 is not set
-# CONFIG_LEDS_EL15203000 is not set
-# CONFIG_LEDS_LM3530 is not set
-# CONFIG_LEDS_LM3532 is not set
-# CONFIG_LEDS_LM3642 is not set
-# CONFIG_LEDS_LM3692X is not set
-# CONFIG_LEDS_MT6323 is not set
-# CONFIG_LEDS_PCA9532 is not set
-# CONFIG_LEDS_GPIO is not set
-# CONFIG_LEDS_LP3944 is not set
-# CONFIG_LEDS_LP3952 is not set
-# CONFIG_LEDS_LP50XX is not set
-# CONFIG_LEDS_LP55XX_COMMON is not set
-# CONFIG_LEDS_LP8860 is not set
-# CONFIG_LEDS_PCA955X is not set
-# CONFIG_LEDS_PCA963X is not set
-# CONFIG_LEDS_DAC124S085 is not set
-# CONFIG_LEDS_PWM is not set
-# CONFIG_LEDS_REGULATOR is not set
-# CONFIG_LEDS_BD2802 is not set
-# CONFIG_LEDS_LT3593 is not set
-# CONFIG_LEDS_TCA6507 is not set
-# CONFIG_LEDS_TLC591XX is not set
-# CONFIG_LEDS_LM355x is not set
-# CONFIG_LEDS_IS31FL319X is not set
-# CONFIG_LEDS_IS31FL32XX is not set
-
-#
-# LED driver for blink(1) USB RGB LED is under Special HID drivers (HID_THINGM)
-#
-CONFIG_LEDS_BLINKM=m
-CONFIG_LEDS_SYSCON=y
-# CONFIG_LEDS_MLXREG is not set
-CONFIG_LEDS_USER=m
-# CONFIG_LEDS_SPI_BYTE is not set
-# CONFIG_LEDS_TI_LMU_COMMON is not set
-
-#
-# Flash and Torch LED drivers
-#
-# CONFIG_LEDS_AAT1290 is not set
-# CONFIG_LEDS_AS3645A is not set
-# CONFIG_LEDS_KTD2692 is not set
-# CONFIG_LEDS_LM3601X is not set
-# CONFIG_LEDS_RT4505 is not set
-# CONFIG_LEDS_RT8515 is not set
-# CONFIG_LEDS_SGM3140 is not set
-
-#
-# LED Triggers
-#
-CONFIG_LEDS_TRIGGERS=y
-# CONFIG_LEDS_TRIGGER_TIMER is not set
-# CONFIG_LEDS_TRIGGER_ONESHOT is not set
-# CONFIG_LEDS_TRIGGER_HEARTBEAT is not set
-# CONFIG_LEDS_TRIGGER_BACKLIGHT is not set
-# CONFIG_LEDS_TRIGGER_CPU is not set
-# CONFIG_LEDS_TRIGGER_ACTIVITY is not set
-# CONFIG_LEDS_TRIGGER_GPIO is not set
-# CONFIG_LEDS_TRIGGER_DEFAULT_ON is not set
-
-#
-# iptables trigger is under Netfilter config (LED target)
-#
-# CONFIG_LEDS_TRIGGER_TRANSIENT is not set
-# CONFIG_LEDS_TRIGGER_CAMERA is not set
-# CONFIG_LEDS_TRIGGER_PANIC is not set
-# CONFIG_LEDS_TRIGGER_NETDEV is not set
-# CONFIG_LEDS_TRIGGER_PATTERN is not set
-# CONFIG_LEDS_TRIGGER_AUDIO is not set
-CONFIG_LEDS_TRIGGER_TTY=m
-
-#
-# Simple LED drivers
-#
-# CONFIG_ACCESSIBILITY is not set
-# CONFIG_INFINIBAND is not set
-CONFIG_EDAC_SUPPORT=y
-# CONFIG_EDAC is not set
-CONFIG_RTC_LIB=y
-CONFIG_RTC_CLASS=y
-CONFIG_RTC_HCTOSYS=y
-CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
-CONFIG_RTC_SYSTOHC=y
-CONFIG_RTC_SYSTOHC_DEVICE="rtc0"
-# CONFIG_RTC_DEBUG is not set
-CONFIG_RTC_NVMEM=y
-
-#
-# RTC interfaces
-#
-CONFIG_RTC_INTF_SYSFS=y
-CONFIG_RTC_INTF_PROC=y
-CONFIG_RTC_INTF_DEV=y
-# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set
-# CONFIG_RTC_DRV_TEST is not set
-
-#
-# I2C RTC drivers
-#
-# CONFIG_RTC_DRV_ABB5ZES3 is not set
-# CONFIG_RTC_DRV_ABEOZ9 is not set
-# CONFIG_RTC_DRV_ABX80X is not set
-# CONFIG_RTC_DRV_AS3722 is not set
-# CONFIG_RTC_DRV_DS1307 is not set
-# CONFIG_RTC_DRV_DS1374 is not set
-# CONFIG_RTC_DRV_DS1672 is not set
-# CONFIG_RTC_DRV_HYM8563 is not set
-# CONFIG_RTC_DRV_MAX6900 is not set
-# CONFIG_RTC_DRV_MAX77686 is not set
-CONFIG_RTC_DRV_RK808=y
-# CONFIG_RTC_DRV_RS5C372 is not set
-# CONFIG_RTC_DRV_ISL1208 is not set
-# CONFIG_RTC_DRV_ISL12022 is not set
-# CONFIG_RTC_DRV_ISL12026 is not set
-# CONFIG_RTC_DRV_X1205 is not set
-# CONFIG_RTC_DRV_PCF8523 is not set
-# CONFIG_RTC_DRV_PCF85063 is not set
-# CONFIG_RTC_DRV_PCF85363 is not set
-# CONFIG_RTC_DRV_PCF8563 is not set
-# CONFIG_RTC_DRV_PCF8583 is not set
-# CONFIG_RTC_DRV_M41T80 is not set
-# CONFIG_RTC_DRV_BQ32K is not set
-CONFIG_RTC_DRV_PALMAS=m
-CONFIG_RTC_DRV_TPS6586X=m
-# CONFIG_RTC_DRV_S35390A is not set
-# CONFIG_RTC_DRV_FM3130 is not set
-# CONFIG_RTC_DRV_RX8010 is not set
-# CONFIG_RTC_DRV_RX8581 is not set
-# CONFIG_RTC_DRV_RX8025 is not set
-# CONFIG_RTC_DRV_EM3027 is not set
-# CONFIG_RTC_DRV_RV3028 is not set
-# CONFIG_RTC_DRV_RV3032 is not set
-# CONFIG_RTC_DRV_RV8803 is not set
-# CONFIG_RTC_DRV_SD3078 is not set
-
-#
-# SPI RTC drivers
-#
-# CONFIG_RTC_DRV_M41T93 is not set
-# CONFIG_RTC_DRV_M41T94 is not set
-# CONFIG_RTC_DRV_DS1302 is not set
-# CONFIG_RTC_DRV_DS1305 is not set
-# CONFIG_RTC_DRV_DS1343 is not set
-# CONFIG_RTC_DRV_DS1347 is not set
-# CONFIG_RTC_DRV_DS1390 is not set
-# CONFIG_RTC_DRV_MAX6916 is not set
-# CONFIG_RTC_DRV_R9701 is not set
-# CONFIG_RTC_DRV_RX4581 is not set
-# CONFIG_RTC_DRV_RS5C348 is not set
-# CONFIG_RTC_DRV_MAX6902 is not set
-# CONFIG_RTC_DRV_PCF2123 is not set
-# CONFIG_RTC_DRV_MCP795 is not set
-CONFIG_RTC_I2C_AND_SPI=y
-
-#
-# SPI and I2C RTC drivers
-#
-# CONFIG_RTC_DRV_DS3232 is not set
-# CONFIG_RTC_DRV_PCF2127 is not set
-CONFIG_RTC_DRV_RV3029C2=m
-CONFIG_RTC_DRV_RV3029_HWMON=y
-# CONFIG_RTC_DRV_RX6110 is not set
-
-#
-# Platform RTC drivers
-#
-# CONFIG_RTC_DRV_DS1286 is not set
-# CONFIG_RTC_DRV_DS1511 is not set
-# CONFIG_RTC_DRV_DS1553 is not set
-# CONFIG_RTC_DRV_DS1685_FAMILY is not set
-# CONFIG_RTC_DRV_DS1742 is not set
-# CONFIG_RTC_DRV_DS2404 is not set
-CONFIG_RTC_DRV_EFI=m
-# CONFIG_RTC_DRV_STK17TA8 is not set
-# CONFIG_RTC_DRV_M48T86 is not set
-# CONFIG_RTC_DRV_M48T35 is not set
-# CONFIG_RTC_DRV_M48T59 is not set
-# CONFIG_RTC_DRV_MSM6242 is not set
-# CONFIG_RTC_DRV_BQ4802 is not set
-# CONFIG_RTC_DRV_RP5C01 is not set
-# CONFIG_RTC_DRV_V3020 is not set
-# CONFIG_RTC_DRV_ZYNQMP is not set
-CONFIG_RTC_DRV_CROS_EC=m
-
-#
-# on-CPU RTC drivers
-#
-# CONFIG_RTC_DRV_PL030 is not set
-# CONFIG_RTC_DRV_PL031 is not set
-# CONFIG_RTC_DRV_CADENCE is not set
-# CONFIG_RTC_DRV_FTRTC010 is not set
-CONFIG_RTC_DRV_MT6397=m
-# CONFIG_RTC_DRV_R7301 is not set
-
-#
-# HID Sensor RTC drivers
-#
-# CONFIG_RTC_DRV_GOLDFISH is not set
-CONFIG_DMADEVICES=y
-# CONFIG_DMADEVICES_DEBUG is not set
-
-#
-# DMA Devices
-#
-CONFIG_ASYNC_TX_ENABLE_CHANNEL_SWITCH=y
-CONFIG_DMA_ENGINE=y
-CONFIG_DMA_ACPI=y
-CONFIG_DMA_OF=y
-# CONFIG_ALTERA_MSGDMA is not set
-# CONFIG_AMBA_PL08X is not set
-# CONFIG_BCM_SBA_RAID is not set
-# CONFIG_DW_AXI_DMAC is not set
-# CONFIG_FSL_EDMA is not set
-# CONFIG_FSL_QDMA is not set
-# CONFIG_HISI_DMA is not set
-# CONFIG_INTEL_IDMA64 is not set
-CONFIG_MV_XOR_V2=y
-CONFIG_PL330_DMA=y
-# CONFIG_PLX_DMA is not set
-# CONFIG_XILINX_DMA is not set
-# CONFIG_XILINX_ZYNQMP_DMA is not set
-# CONFIG_XILINX_ZYNQMP_DPDMA is not set
-CONFIG_QCOM_HIDMA_MGMT=y
-CONFIG_QCOM_HIDMA=y
-CONFIG_DW_DMAC_CORE=m
-CONFIG_DW_DMAC=m
-CONFIG_DW_DMAC_PCI=m
-# CONFIG_DW_EDMA is not set
-# CONFIG_DW_EDMA_PCIE is not set
-# CONFIG_SF_PDMA is not set
-
-#
-# DMA Clients
-#
-CONFIG_ASYNC_TX_DMA=y
-# CONFIG_DMATEST is not set
-CONFIG_DMA_ENGINE_RAID=y
-
-#
-# DMABUF options
-#
-CONFIG_SYNC_FILE=y
-# CONFIG_UDMABUF is not set
-# CONFIG_DMABUF_MOVE_NOTIFY is not set
-# CONFIG_DMABUF_DEBUG is not set
-# CONFIG_DMABUF_SELFTESTS is not set
-# CONFIG_DMABUF_HEAPS is not set
-# CONFIG_DMABUF_SYSFS_STATS is not set
-# end of DMABUF options
-
-# CONFIG_AUXDISPLAY is not set
-CONFIG_UIO=m
-# CONFIG_UIO_CIF is not set
-# CONFIG_UIO_PDRV_GENIRQ is not set
-# CONFIG_UIO_DMEM_GENIRQ is not set
-# CONFIG_UIO_AEC is not set
-# CONFIG_UIO_SERCOS3 is not set
-# CONFIG_UIO_PCI_GENERIC is not set
-# CONFIG_UIO_NETX is not set
-# CONFIG_UIO_PRUSS is not set
-# CONFIG_UIO_MF624 is not set
-CONFIG_VFIO=m
-CONFIG_VFIO_IOMMU_TYPE1=m
-CONFIG_VFIO_VIRQFD=m
-CONFIG_VFIO_NOIOMMU=y
-CONFIG_VFIO_PCI_CORE=m
-CONFIG_VFIO_PCI_MMAP=y
-CONFIG_VFIO_PCI_INTX=y
-CONFIG_VFIO_PCI=m
-CONFIG_VFIO_PLATFORM=m
-# CONFIG_VFIO_AMBA is not set
-# CONFIG_VFIO_PLATFORM_CALXEDAXGMAC_RESET is not set
-# CONFIG_VFIO_PLATFORM_AMDXGBE_RESET is not set
-CONFIG_VFIO_MDEV=m
-CONFIG_VIRT_DRIVERS=y
-# CONFIG_NITRO_ENCLAVES is not set
-CONFIG_VIRTIO=m
-CONFIG_VIRTIO_PCI_LIB=m
-CONFIG_VIRTIO_PCI_LIB_LEGACY=m
-CONFIG_VIRTIO_MENU=y
-CONFIG_VIRTIO_PCI=m
-CONFIG_VIRTIO_PCI_LEGACY=y
-CONFIG_VIRTIO_BALLOON=m
-CONFIG_VIRTIO_INPUT=m
-CONFIG_VIRTIO_MMIO=m
-CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES=y
-CONFIG_VIRTIO_DMA_SHARED_BUFFER=m
-# CONFIG_VDPA is not set
-CONFIG_VHOST_IOTLB=m
-CONFIG_VHOST=m
-CONFIG_VHOST_MENU=y
-CONFIG_VHOST_NET=m
-CONFIG_VHOST_VSOCK=m
-# CONFIG_VHOST_CROSS_ENDIAN_LEGACY is not set
-
-#
-# Microsoft Hyper-V guest support
-#
-# CONFIG_HYPERV is not set
-# end of Microsoft Hyper-V guest support
-
-# CONFIG_GREYBUS is not set
-# CONFIG_COMEDI is not set
-CONFIG_STAGING=y
-# CONFIG_PRISM2_USB is not set
-# CONFIG_RTL8192U is not set
-# CONFIG_RTLLIB is not set
-# CONFIG_RTL8723BS is not set
-# CONFIG_R8712U is not set
-CONFIG_R8188EU=m
-# CONFIG_RTS5208 is not set
-# CONFIG_VT6655 is not set
-# CONFIG_VT6656 is not set
-
-#
-# IIO staging drivers
-#
-
-#
-# Accelerometers
-#
-# CONFIG_ADIS16203 is not set
-# CONFIG_ADIS16240 is not set
-# end of Accelerometers
-
-#
-# Analog to digital converters
-#
-# CONFIG_AD7816 is not set
-# CONFIG_AD7280 is not set
-# end of Analog to digital converters
-
-#
-# Analog digital bi-direction converters
-#
-# CONFIG_ADT7316 is not set
-# end of Analog digital bi-direction converters
-
-#
-# Capacitance to digital converters
-#
-# CONFIG_AD7746 is not set
-# end of Capacitance to digital converters
-
-#
-# Direct Digital Synthesis
-#
-# CONFIG_AD9832 is not set
-# CONFIG_AD9834 is not set
-# end of Direct Digital Synthesis
-
-#
-# Network Analyzer, Impedance Converters
-#
-# CONFIG_AD5933 is not set
-# end of Network Analyzer, Impedance Converters
-
-#
-# Active energy metering IC
-#
-# CONFIG_ADE7854 is not set
-# end of Active energy metering IC
-
-#
-# Resolver to digital converters
-#
-# CONFIG_AD2S1210 is not set
-# end of Resolver to digital converters
-# end of IIO staging drivers
-
-# CONFIG_FB_SM750 is not set
-# CONFIG_STAGING_MEDIA is not set
-
-#
-# Android
-#
-# end of Android
-
-# CONFIG_STAGING_BOARD is not set
-# CONFIG_LTE_GDM724X is not set
-# CONFIG_GS_FPGABOOT is not set
-# CONFIG_UNISYSSPAR is not set
-# CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set
-# CONFIG_FB_TFT is not set
-# CONFIG_KS7010 is not set
-# CONFIG_PI433 is not set
-# CONFIG_XIL_AXIS_FIFO is not set
-# CONFIG_FIELDBUS_DEV is not set
-# CONFIG_WFX is not set
-# CONFIG_GOLDFISH is not set
-CONFIG_CHROME_PLATFORMS=y
-CONFIG_CHROMEOS_TBMC=m
-CONFIG_CROS_EC=y
-CONFIG_CROS_EC_I2C=y
-CONFIG_CROS_EC_SPI=y
-CONFIG_CROS_EC_PROTO=y
-CONFIG_CROS_KBD_LED_BACKLIGHT=m
-CONFIG_CROS_EC_CHARDEV=y
-CONFIG_CROS_EC_LIGHTBAR=y
-CONFIG_CROS_EC_VBC=m
-CONFIG_CROS_EC_SENSORHUB=y
-CONFIG_CROS_EC_SYSFS=m
-CONFIG_CROS_EC_TYPEC=y
-CONFIG_CROS_USBPD_LOGGER=m
-CONFIG_CROS_USBPD_NOTIFY=y
-# CONFIG_MELLANOX_PLATFORM is not set
-# CONFIG_SURFACE_PLATFORMS is not set
-CONFIG_HAVE_CLK=y
-CONFIG_HAVE_CLK_PREPARE=y
-CONFIG_COMMON_CLK=y
-
-#
-# Clock driver for ARM Reference designs
-#
-# CONFIG_CLK_ICST is not set
-# CONFIG_CLK_SP810 is not set
-# end of Clock driver for ARM Reference designs
-
-# CONFIG_LMK04832 is not set
-# CONFIG_COMMON_CLK_MAX77686 is not set
-# CONFIG_COMMON_CLK_MAX9485 is not set
-CONFIG_COMMON_CLK_RK808=y
-CONFIG_COMMON_CLK_SCPI=m
-# CONFIG_COMMON_CLK_SI5341 is not set
-# CONFIG_COMMON_CLK_SI5351 is not set
-# CONFIG_COMMON_CLK_SI514 is not set
-# CONFIG_COMMON_CLK_SI544 is not set
-# CONFIG_COMMON_CLK_SI570 is not set
-# CONFIG_COMMON_CLK_CDCE706 is not set
-# CONFIG_COMMON_CLK_CDCE925 is not set
-# CONFIG_COMMON_CLK_CS2000_CP is not set
-# CONFIG_COMMON_CLK_LAN966X is not set
-# CONFIG_COMMON_CLK_AXI_CLKGEN is not set
-# CONFIG_COMMON_CLK_XGENE is not set
-# CONFIG_COMMON_CLK_PALMAS is not set
-# CONFIG_COMMON_CLK_PWM is not set
-# CONFIG_COMMON_CLK_VC5 is not set
-# CONFIG_COMMON_CLK_FIXED_MMIO is not set
-CONFIG_COMMON_CLK_ROCKCHIP=y
-CONFIG_CLK_PX30=y
-CONFIG_CLK_RK3308=y
-CONFIG_CLK_RK3328=y
-CONFIG_CLK_RK3368=y
-CONFIG_CLK_RK3399=y
-# CONFIG_CLK_RK3568 is not set
-# CONFIG_XILINX_VCU is not set
-# CONFIG_HWSPINLOCK is not set
-
-#
-# Clock Source drivers
-#
-CONFIG_TIMER_OF=y
-CONFIG_TIMER_ACPI=y
-CONFIG_TIMER_PROBE=y
-CONFIG_CLKSRC_MMIO=y
-CONFIG_ROCKCHIP_TIMER=y
-CONFIG_ARM_ARCH_TIMER=y
-CONFIG_ARM_ARCH_TIMER_EVTSTREAM=y
-CONFIG_ARM_ARCH_TIMER_OOL_WORKAROUND=y
-CONFIG_FSL_ERRATUM_A008585=y
-CONFIG_HISILICON_ERRATUM_161010101=y
-CONFIG_ARM64_ERRATUM_858921=y
-# CONFIG_MICROCHIP_PIT64B is not set
-# end of Clock Source drivers
-
-CONFIG_MAILBOX=y
-CONFIG_ARM_MHU=m
-# CONFIG_ARM_MHU_V2 is not set
-CONFIG_PLATFORM_MHU=m
-# CONFIG_PL320_MBOX is not set
-CONFIG_ROCKCHIP_MBOX=y
-CONFIG_PCC=y
-# CONFIG_ALTERA_MBOX is not set
-# CONFIG_MAILBOX_TEST is not set
-CONFIG_IOMMU_IOVA=y
-CONFIG_IOMMU_API=y
-CONFIG_IOMMU_SUPPORT=y
-
-#
-# Generic IOMMU Pagetable Support
-#
-CONFIG_IOMMU_IO_PGTABLE=y
-CONFIG_IOMMU_IO_PGTABLE_LPAE=y
-# CONFIG_IOMMU_IO_PGTABLE_LPAE_SELFTEST is not set
-CONFIG_IOMMU_IO_PGTABLE_ARMV7S=y
-# CONFIG_IOMMU_IO_PGTABLE_ARMV7S_SELFTEST is not set
-# end of Generic IOMMU Pagetable Support
-
-CONFIG_IOMMU_DEFAULT_DMA_STRICT=y
-# CONFIG_IOMMU_DEFAULT_DMA_LAZY is not set
-# CONFIG_IOMMU_DEFAULT_PASSTHROUGH is not set
-CONFIG_OF_IOMMU=y
-CONFIG_IOMMU_DMA=y
-CONFIG_ROCKCHIP_IOMMU=y
-# CONFIG_ARM_SMMU is not set
-# CONFIG_ARM_SMMU_V3 is not set
-# CONFIG_VIRTIO_IOMMU is not set
-
-#
-# Remoteproc drivers
-#
-# CONFIG_REMOTEPROC is not set
-# end of Remoteproc drivers
-
-#
-# Rpmsg drivers
-#
-# CONFIG_RPMSG_QCOM_GLINK_RPM is not set
-# CONFIG_RPMSG_VIRTIO is not set
-# end of Rpmsg drivers
-
-# CONFIG_SOUNDWIRE is not set
-
-#
-# SOC (System On Chip) specific Drivers
-#
-
-#
-# Amlogic SoC drivers
-#
-# end of Amlogic SoC drivers
-
-#
-# Broadcom SoC drivers
-#
-# CONFIG_SOC_BRCMSTB is not set
-# end of Broadcom SoC drivers
-
-#
-# NXP/Freescale QorIQ SoC drivers
-#
-# CONFIG_QUICC_ENGINE is not set
-# CONFIG_FSL_RCPM is not set
-# end of NXP/Freescale QorIQ SoC drivers
-
-#
-# i.MX SoC drivers
-#
-# end of i.MX SoC drivers
-
-#
-# Enable LiteX SoC Builder specific drivers
-#
-# CONFIG_LITEX_SOC_CONTROLLER is not set
-# end of Enable LiteX SoC Builder specific drivers
-
-#
-# Qualcomm SoC drivers
-#
-# end of Qualcomm SoC drivers
-
-CONFIG_ROCKCHIP_GRF=y
-CONFIG_ROCKCHIP_IODOMAIN=y
-CONFIG_ROCKCHIP_PM_DOMAINS=y
-# CONFIG_SOC_TI is not set
-
-#
-# Xilinx SoC drivers
-#
-# end of Xilinx SoC drivers
-# end of SOC (System On Chip) specific Drivers
-
-CONFIG_PM_DEVFREQ=y
-
-#
-# DEVFREQ Governors
-#
-CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=y
-CONFIG_DEVFREQ_GOV_PERFORMANCE=y
-CONFIG_DEVFREQ_GOV_POWERSAVE=y
-CONFIG_DEVFREQ_GOV_USERSPACE=y
-# CONFIG_DEVFREQ_GOV_PASSIVE is not set
-
-#
-# DEVFREQ Drivers
-#
-CONFIG_ARM_RK3399_DMC_DEVFREQ=m
-CONFIG_PM_DEVFREQ_EVENT=y
-CONFIG_DEVFREQ_EVENT_ROCKCHIP_DFI=m
-CONFIG_EXTCON=y
-
-#
-# Extcon Device Drivers
-#
-CONFIG_EXTCON_ADC_JACK=m
-# CONFIG_EXTCON_FSA9480 is not set
-CONFIG_EXTCON_GPIO=y
-# CONFIG_EXTCON_MAX3355 is not set
-# CONFIG_EXTCON_PALMAS is not set
-# CONFIG_EXTCON_PTN5150 is not set
-# CONFIG_EXTCON_RT8973A is not set
-# CONFIG_EXTCON_SM5502 is not set
-CONFIG_EXTCON_USB_GPIO=y
-CONFIG_EXTCON_USBC_CROS_EC=y
-# CONFIG_EXTCON_USBC_TUSB320 is not set
-CONFIG_MEMORY=y
-# CONFIG_ARM_PL172_MPMC is not set
-CONFIG_IIO=y
-CONFIG_IIO_BUFFER=y
-CONFIG_IIO_BUFFER_CB=y
-# CONFIG_IIO_BUFFER_DMA is not set
-# CONFIG_IIO_BUFFER_DMAENGINE is not set
-CONFIG_IIO_BUFFER_HW_CONSUMER=m
-CONFIG_IIO_KFIFO_BUF=y
-CONFIG_IIO_TRIGGERED_BUFFER=m
-CONFIG_IIO_CONFIGFS=m
-CONFIG_IIO_TRIGGER=y
-CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
-CONFIG_IIO_SW_DEVICE=m
-CONFIG_IIO_SW_TRIGGER=m
-# CONFIG_IIO_TRIGGERED_EVENT is not set
-
-#
-# Accelerometers
-#
-# CONFIG_ADIS16201 is not set
-# CONFIG_ADIS16209 is not set
-# CONFIG_ADXL313_I2C is not set
-# CONFIG_ADXL313_SPI is not set
-# CONFIG_ADXL345_I2C is not set
-# CONFIG_ADXL345_SPI is not set
-# CONFIG_ADXL355_I2C is not set
-# CONFIG_ADXL355_SPI is not set
-# CONFIG_ADXL372_SPI is not set
-# CONFIG_ADXL372_I2C is not set
-# CONFIG_BMA180 is not set
-# CONFIG_BMA220 is not set
-# CONFIG_BMA400 is not set
-# CONFIG_BMC150_ACCEL is not set
-# CONFIG_BMI088_ACCEL is not set
-# CONFIG_DA280 is not set
-# CONFIG_DA311 is not set
-# CONFIG_DMARD06 is not set
-# CONFIG_DMARD09 is not set
-# CONFIG_DMARD10 is not set
-# CONFIG_FXLS8962AF_I2C is not set
-# CONFIG_FXLS8962AF_SPI is not set
-CONFIG_IIO_CROS_EC_ACCEL_LEGACY=m
-# CONFIG_IIO_ST_ACCEL_3AXIS is not set
-# CONFIG_KXSD9 is not set
-# CONFIG_KXCJK1013 is not set
-# CONFIG_MC3230 is not set
-# CONFIG_MMA7455_I2C is not set
-# CONFIG_MMA7455_SPI is not set
-# CONFIG_MMA7660 is not set
-# CONFIG_MMA8452 is not set
-# CONFIG_MMA9551 is not set
-# CONFIG_MMA9553 is not set
-# CONFIG_MXC4005 is not set
-# CONFIG_MXC6255 is not set
-# CONFIG_SCA3000 is not set
-# CONFIG_SCA3300 is not set
-# CONFIG_STK8312 is not set
-# CONFIG_STK8BA50 is not set
-# end of Accelerometers
-
-#
-# Analog to digital converters
-#
-# CONFIG_AD7091R5 is not set
-# CONFIG_AD7124 is not set
-# CONFIG_AD7192 is not set
-# CONFIG_AD7266 is not set
-# CONFIG_AD7291 is not set
-# CONFIG_AD7292 is not set
-# CONFIG_AD7298 is not set
-# CONFIG_AD7476 is not set
-# CONFIG_AD7606_IFACE_PARALLEL is not set
-# CONFIG_AD7606_IFACE_SPI is not set
-# CONFIG_AD7766 is not set
-# CONFIG_AD7768_1 is not set
-# CONFIG_AD7780 is not set
-# CONFIG_AD7791 is not set
-# CONFIG_AD7793 is not set
-# CONFIG_AD7887 is not set
-# CONFIG_AD7923 is not set
-# CONFIG_AD7949 is not set
-# CONFIG_AD799X is not set
-# CONFIG_ADI_AXI_ADC is not set
-# CONFIG_AXP20X_ADC is not set
-# CONFIG_AXP288_ADC is not set
-# CONFIG_CC10001_ADC is not set
-# CONFIG_ENVELOPE_DETECTOR is not set
-# CONFIG_HI8435 is not set
-# CONFIG_HX711 is not set
-# CONFIG_INA2XX_ADC is not set
-# CONFIG_LTC2471 is not set
-# CONFIG_LTC2485 is not set
-# CONFIG_LTC2496 is not set
-# CONFIG_LTC2497 is not set
-# CONFIG_MAX1027 is not set
-# CONFIG_MAX11100 is not set
-# CONFIG_MAX1118 is not set
-# CONFIG_MAX1241 is not set
-# CONFIG_MAX1363 is not set
-# CONFIG_MAX9611 is not set
-# CONFIG_MCP320X is not set
-# CONFIG_MCP3422 is not set
-# CONFIG_MCP3911 is not set
-# CONFIG_NAU7802 is not set
-# CONFIG_PALMAS_GPADC is not set
-CONFIG_QCOM_VADC_COMMON=m
-# CONFIG_QCOM_SPMI_IADC is not set
-CONFIG_QCOM_SPMI_VADC=m
-# CONFIG_QCOM_SPMI_ADC5 is not set
-CONFIG_ROCKCHIP_SARADC=m
-# CONFIG_SD_ADC_MODULATOR is not set
-# CONFIG_TI_ADC081C is not set
-# CONFIG_TI_ADC0832 is not set
-# CONFIG_TI_ADC084S021 is not set
-# CONFIG_TI_ADC12138 is not set
-# CONFIG_TI_ADC108S102 is not set
-# CONFIG_TI_ADC128S052 is not set
-# CONFIG_TI_ADC161S626 is not set
-# CONFIG_TI_ADS1015 is not set
-# CONFIG_TI_ADS7950 is not set
-# CONFIG_TI_ADS8344 is not set
-# CONFIG_TI_ADS8688 is not set
-# CONFIG_TI_ADS124S08 is not set
-# CONFIG_TI_ADS131E08 is not set
-# CONFIG_TI_TLC4541 is not set
-# CONFIG_TI_TSC2046 is not set
-# CONFIG_VF610_ADC is not set
-# CONFIG_XILINX_XADC is not set
-# end of Analog to digital converters
-
-#
-# Analog to digital and digital to analog converters
-#
-# CONFIG_AD74413R is not set
-# end of Analog to digital and digital to analog converters
-
-#
-# Analog Front Ends
-#
-# CONFIG_IIO_RESCALE is not set
-# end of Analog Front Ends
-
-#
-# Amplifiers
-#
-CONFIG_AD8366=m
-# CONFIG_HMC425 is not set
-# end of Amplifiers
-
-#
-# Capacitance to digital converters
-#
-# CONFIG_AD7150 is not set
-# end of Capacitance to digital converters
-
-#
-# Chemical Sensors
-#
-# CONFIG_ATLAS_PH_SENSOR is not set
-# CONFIG_ATLAS_EZO_SENSOR is not set
-# CONFIG_BME680 is not set
-# CONFIG_CCS811 is not set
-# CONFIG_IAQCORE is not set
-# CONFIG_PMS7003 is not set
-# CONFIG_SCD30_CORE is not set
-# CONFIG_SCD4X is not set
-# CONFIG_SENSIRION_SGP30 is not set
-# CONFIG_SENSIRION_SGP40 is not set
-# CONFIG_SPS30_I2C is not set
-# CONFIG_SPS30_SERIAL is not set
-# CONFIG_SENSEAIR_SUNRISE_CO2 is not set
-# CONFIG_VZ89X is not set
-# end of Chemical Sensors
-
-CONFIG_IIO_CROS_EC_SENSORS_CORE=m
-CONFIG_IIO_CROS_EC_SENSORS=m
-CONFIG_IIO_CROS_EC_SENSORS_LID_ANGLE=m
-
-#
-# Hid Sensor IIO Common
-#
-# end of Hid Sensor IIO Common
-
-#
-# IIO SCMI Sensors
-#
-# end of IIO SCMI Sensors
-
-#
-# SSP Sensor Common
-#
-# CONFIG_IIO_SSP_SENSORHUB is not set
-# end of SSP Sensor Common
-
-#
-# Digital to analog converters
-#
-# CONFIG_AD3552R is not set
-# CONFIG_AD5064 is not set
-# CONFIG_AD5360 is not set
-# CONFIG_AD5380 is not set
-# CONFIG_AD5421 is not set
-# CONFIG_AD5446 is not set
-# CONFIG_AD5449 is not set
-# CONFIG_AD5592R is not set
-# CONFIG_AD5593R is not set
-# CONFIG_AD5504 is not set
-# CONFIG_AD5624R_SPI is not set
-# CONFIG_AD5686_SPI is not set
-# CONFIG_AD5696_I2C is not set
-# CONFIG_AD5755 is not set
-# CONFIG_AD5758 is not set
-# CONFIG_AD5761 is not set
-# CONFIG_AD5764 is not set
-# CONFIG_AD5766 is not set
-# CONFIG_AD5770R is not set
-# CONFIG_AD5791 is not set
-# CONFIG_AD7293 is not set
-# CONFIG_AD7303 is not set
-# CONFIG_AD8801 is not set
-# CONFIG_DPOT_DAC is not set
-# CONFIG_DS4424 is not set
-# CONFIG_LTC1660 is not set
-# CONFIG_LTC2632 is not set
-# CONFIG_M62332 is not set
-# CONFIG_MAX517 is not set
-# CONFIG_MAX5821 is not set
-# CONFIG_MCP4725 is not set
-# CONFIG_MCP4922 is not set
-# CONFIG_TI_DAC082S085 is not set
-# CONFIG_TI_DAC5571 is not set
-# CONFIG_TI_DAC7311 is not set
-# CONFIG_TI_DAC7612 is not set
-# CONFIG_VF610_DAC is not set
-# end of Digital to analog converters
-
-#
-# IIO dummy driver
-#
-# CONFIG_IIO_SIMPLE_DUMMY is not set
-# end of IIO dummy driver
-
-#
-# Filters
-#
-# CONFIG_ADMV8818 is not set
-# end of Filters
-
-#
-# Frequency Synthesizers DDS/PLL
-#
-
-#
-# Clock Generator/Distribution
-#
-# CONFIG_AD9523 is not set
-# end of Clock Generator/Distribution
-
-#
-# Phase-Locked Loop (PLL) frequency synthesizers
-#
-# CONFIG_ADF4350 is not set
-# CONFIG_ADF4371 is not set
-# CONFIG_ADMV1013 is not set
-# CONFIG_ADRF6780 is not set
-# end of Phase-Locked Loop (PLL) frequency synthesizers
-# end of Frequency Synthesizers DDS/PLL
-
-#
-# Digital gyroscope sensors
-#
-# CONFIG_ADIS16080 is not set
-# CONFIG_ADIS16130 is not set
-# CONFIG_ADIS16136 is not set
-# CONFIG_ADIS16260 is not set
-# CONFIG_ADXRS290 is not set
-# CONFIG_ADXRS450 is not set
-# CONFIG_BMG160 is not set
-# CONFIG_FXAS21002C is not set
-# CONFIG_MPU3050_I2C is not set
-# CONFIG_IIO_ST_GYRO_3AXIS is not set
-# CONFIG_ITG3200 is not set
-# end of Digital gyroscope sensors
-
-#
-# Health Sensors
-#
-
-#
-# Heart Rate Monitors
-#
-# CONFIG_AFE4403 is not set
-# CONFIG_AFE4404 is not set
-# CONFIG_MAX30100 is not set
-# CONFIG_MAX30102 is not set
-# end of Heart Rate Monitors
-# end of Health Sensors
-
-#
-# Humidity sensors
-#
-# CONFIG_AM2315 is not set
-# CONFIG_DHT11 is not set
-# CONFIG_HDC100X is not set
-# CONFIG_HDC2010 is not set
-# CONFIG_HTS221 is not set
-# CONFIG_HTU21 is not set
-# CONFIG_SI7005 is not set
-# CONFIG_SI7020 is not set
-# end of Humidity sensors
-
-#
-# Inertial measurement units
-#
-# CONFIG_ADIS16400 is not set
-# CONFIG_ADIS16460 is not set
-# CONFIG_ADIS16475 is not set
-# CONFIG_ADIS16480 is not set
-# CONFIG_BMI160_I2C is not set
-# CONFIG_BMI160_SPI is not set
-# CONFIG_FXOS8700_I2C is not set
-# CONFIG_FXOS8700_SPI is not set
-# CONFIG_KMX61 is not set
-# CONFIG_INV_ICM42600_I2C is not set
-# CONFIG_INV_ICM42600_SPI is not set
-# CONFIG_INV_MPU6050_I2C is not set
-# CONFIG_INV_MPU6050_SPI is not set
-# CONFIG_IIO_ST_LSM6DSX is not set
-# CONFIG_IIO_ST_LSM9DS0 is not set
-# end of Inertial measurement units
-
-#
-# Light sensors
-#
-# CONFIG_ACPI_ALS is not set
-# CONFIG_ADJD_S311 is not set
-# CONFIG_ADUX1020 is not set
-# CONFIG_AL3010 is not set
-# CONFIG_AL3320A is not set
-# CONFIG_APDS9300 is not set
-# CONFIG_APDS9960 is not set
-# CONFIG_AS73211 is not set
-# CONFIG_BH1750 is not set
-# CONFIG_BH1780 is not set
-# CONFIG_CM32181 is not set
-# CONFIG_CM3232 is not set
-# CONFIG_CM3323 is not set
-# CONFIG_CM3605 is not set
-# CONFIG_CM36651 is not set
-CONFIG_IIO_CROS_EC_LIGHT_PROX=m
-# CONFIG_GP2AP002 is not set
-# CONFIG_GP2AP020A00F is not set
-CONFIG_SENSORS_ISL29018=m
-# CONFIG_SENSORS_ISL29028 is not set
-# CONFIG_ISL29125 is not set
-# CONFIG_JSA1212 is not set
-# CONFIG_RPR0521 is not set
-# CONFIG_LTR501 is not set
-# CONFIG_LV0104CS is not set
-# CONFIG_MAX44000 is not set
-# CONFIG_MAX44009 is not set
-# CONFIG_NOA1305 is not set
-# CONFIG_OPT3001 is not set
-# CONFIG_PA12203001 is not set
-# CONFIG_SI1133 is not set
-# CONFIG_SI1145 is not set
-# CONFIG_STK3310 is not set
-# CONFIG_ST_UVIS25 is not set
-# CONFIG_TCS3414 is not set
-# CONFIG_TCS3472 is not set
-CONFIG_SENSORS_TSL2563=m
-CONFIG_TSL2583=m
-# CONFIG_TSL2591 is not set
-# CONFIG_TSL2772 is not set
-# CONFIG_TSL4531 is not set
-# CONFIG_US5182D is not set
-# CONFIG_VCNL4000 is not set
-# CONFIG_VCNL4035 is not set
-# CONFIG_VEML6030 is not set
-# CONFIG_VEML6070 is not set
-# CONFIG_VL6180 is not set
-# CONFIG_ZOPT2201 is not set
-# end of Light sensors
-
-#
-# Magnetometer sensors
-#
-CONFIG_AK8974=m
-CONFIG_AK8975=m
-# CONFIG_AK09911 is not set
-# CONFIG_BMC150_MAGN_I2C is not set
-# CONFIG_BMC150_MAGN_SPI is not set
-# CONFIG_MAG3110 is not set
-# CONFIG_MMC35240 is not set
-# CONFIG_IIO_ST_MAGN_3AXIS is not set
-# CONFIG_SENSORS_HMC5843_I2C is not set
-# CONFIG_SENSORS_HMC5843_SPI is not set
-# CONFIG_SENSORS_RM3100_I2C is not set
-# CONFIG_SENSORS_RM3100_SPI is not set
-# CONFIG_YAMAHA_YAS530 is not set
-# end of Magnetometer sensors
-
-#
-# Multiplexers
-#
-CONFIG_IIO_MUX=y
-# end of Multiplexers
-
-#
-# Inclinometer sensors
-#
-# end of Inclinometer sensors
-
-#
-# Triggers - standalone
-#
-CONFIG_IIO_HRTIMER_TRIGGER=m
-CONFIG_IIO_INTERRUPT_TRIGGER=m
-CONFIG_IIO_TIGHTLOOP_TRIGGER=m
-CONFIG_IIO_SYSFS_TRIGGER=m
-# end of Triggers - standalone
-
-#
-# Linear and angular position sensors
-#
-# end of Linear and angular position sensors
-
-#
-# Digital potentiometers
-#
-# CONFIG_AD5110 is not set
-# CONFIG_AD5272 is not set
-# CONFIG_DS1803 is not set
-# CONFIG_MAX5432 is not set
-# CONFIG_MAX5481 is not set
-# CONFIG_MAX5487 is not set
-# CONFIG_MCP4018 is not set
-# CONFIG_MCP4131 is not set
-# CONFIG_MCP4531 is not set
-# CONFIG_MCP41010 is not set
-# CONFIG_TPL0102 is not set
-# end of Digital potentiometers
-
-#
-# Digital potentiostats
-#
-# CONFIG_LMP91000 is not set
-# end of Digital potentiostats
-
-#
-# Pressure sensors
-#
-# CONFIG_ABP060MG is not set
-# CONFIG_BMP280 is not set
-CONFIG_IIO_CROS_EC_BARO=m
-# CONFIG_DLHL60D is not set
-# CONFIG_DPS310 is not set
-# CONFIG_HP03 is not set
-# CONFIG_ICP10100 is not set
-# CONFIG_MPL115_I2C is not set
-# CONFIG_MPL115_SPI is not set
-# CONFIG_MPL3115 is not set
-# CONFIG_MS5611 is not set
-# CONFIG_MS5637 is not set
-# CONFIG_IIO_ST_PRESS is not set
-# CONFIG_T5403 is not set
-# CONFIG_HP206C is not set
-# CONFIG_ZPA2326 is not set
-# end of Pressure sensors
-
-#
-# Lightning sensors
-#
-# CONFIG_AS3935 is not set
-# end of Lightning sensors
-
-#
-# Proximity and distance sensors
-#
-CONFIG_CROS_EC_MKBP_PROXIMITY=m
-# CONFIG_ISL29501 is not set
-# CONFIG_LIDAR_LITE_V2 is not set
-# CONFIG_MB1232 is not set
-# CONFIG_PING is not set
-# CONFIG_RFD77402 is not set
-# CONFIG_SRF04 is not set
-# CONFIG_SX9310 is not set
-# CONFIG_SX9500 is not set
-# CONFIG_SRF08 is not set
-# CONFIG_VCNL3020 is not set
-# CONFIG_VL53L0X_I2C is not set
-# end of Proximity and distance sensors
-
-#
-# Resolver to digital converters
-#
-CONFIG_AD2S90=m
-CONFIG_AD2S1200=m
-# end of Resolver to digital converters
-
-#
-# Temperature sensors
-#
-# CONFIG_LTC2983 is not set
-# CONFIG_MAXIM_THERMOCOUPLE is not set
-# CONFIG_MLX90614 is not set
-# CONFIG_MLX90632 is not set
-# CONFIG_TMP006 is not set
-# CONFIG_TMP007 is not set
-# CONFIG_TMP117 is not set
-# CONFIG_TSYS01 is not set
-# CONFIG_TSYS02D is not set
-# CONFIG_MAX31856 is not set
-# CONFIG_MAX31865 is not set
-# end of Temperature sensors
-
-# CONFIG_NTB is not set
-# CONFIG_VME_BUS is not set
-CONFIG_PWM=y
-CONFIG_PWM_SYSFS=y
-# CONFIG_PWM_ATMEL_TCB is not set
-CONFIG_PWM_CROS_EC=y
-# CONFIG_PWM_DWC is not set
-# CONFIG_PWM_FSL_FTM is not set
-# CONFIG_PWM_PCA9685 is not set
-CONFIG_PWM_ROCKCHIP=y
-
-#
-# IRQ chip support
-#
-CONFIG_IRQCHIP=y
-CONFIG_ARM_GIC=y
-CONFIG_ARM_GIC_MAX_NR=1
-CONFIG_ARM_GIC_V2M=y
-CONFIG_ARM_GIC_V3=y
-CONFIG_ARM_GIC_V3_ITS=y
-CONFIG_ARM_GIC_V3_ITS_PCI=y
-# CONFIG_AL_FIC is not set
-CONFIG_PARTITION_PERCPU=y
-# end of IRQ chip support
-
-# CONFIG_IPACK_BUS is not set
-CONFIG_ARCH_HAS_RESET_CONTROLLER=y
-CONFIG_RESET_CONTROLLER=y
-# CONFIG_RESET_TI_SYSCON is not set
-
-#
-# PHY Subsystem
-#
-CONFIG_GENERIC_PHY=y
-CONFIG_GENERIC_PHY_MIPI_DPHY=y
-# CONFIG_PHY_XGENE is not set
-CONFIG_PHY_CAN_TRANSCEIVER=m
-
-#
-# PHY drivers for Broadcom platforms
-#
-# CONFIG_BCM_KONA_USB2_PHY is not set
-# end of PHY drivers for Broadcom platforms
-
-# CONFIG_PHY_CADENCE_TORRENT is not set
-# CONFIG_PHY_CADENCE_DPHY is not set
-# CONFIG_PHY_CADENCE_SIERRA is not set
-# CONFIG_PHY_CADENCE_SALVO is not set
-# CONFIG_PHY_FSL_IMX8MQ_USB is not set
-# CONFIG_PHY_MIXEL_MIPI_DPHY is not set
-# CONFIG_PHY_FSL_IMX8M_PCIE is not set
-# CONFIG_PHY_PXA_28NM_HSIC is not set
-# CONFIG_PHY_PXA_28NM_USB2 is not set
-# CONFIG_PHY_LAN966X_SERDES is not set
-# CONFIG_PHY_CPCAP_USB is not set
-# CONFIG_PHY_MAPPHONE_MDM6600 is not set
-# CONFIG_PHY_OCELOT_SERDES is not set
-# CONFIG_PHY_QCOM_USB_HS is not set
-# CONFIG_PHY_QCOM_USB_HSIC is not set
-CONFIG_PHY_ROCKCHIP_DP=y
-# CONFIG_PHY_ROCKCHIP_DPHY_RX0 is not set
-CONFIG_PHY_ROCKCHIP_EMMC=y
-CONFIG_PHY_ROCKCHIP_INNO_HDMI=y
-CONFIG_PHY_ROCKCHIP_INNO_USB2=y
-# CONFIG_PHY_ROCKCHIP_INNO_CSIDPHY is not set
-# CONFIG_PHY_ROCKCHIP_INNO_DSIDPHY is not set
-CONFIG_PHY_ROCKCHIP_PCIE=y
-CONFIG_PHY_ROCKCHIP_TYPEC=y
-CONFIG_PHY_ROCKCHIP_USB=m
-CONFIG_PHY_SAMSUNG_USB2=m
-# CONFIG_PHY_TUSB1210 is not set
-# end of PHY Subsystem
-
-# CONFIG_POWERCAP is not set
-# CONFIG_MCB is not set
-
-#
-# Performance monitor support
-#
-# CONFIG_ARM_CCI_PMU is not set
-# CONFIG_ARM_CCN is not set
-# CONFIG_ARM_CMN is not set
-CONFIG_ARM_PMU=y
-CONFIG_ARM_PMU_ACPI=y
-# CONFIG_ARM_SMMU_V3_PMU is not set
-# CONFIG_ARM_DSU_PMU is not set
-# CONFIG_ARM_SPE_PMU is not set
-# CONFIG_ARM_DMC620_PMU is not set
-# CONFIG_MARVELL_CN10K_TAD_PMU is not set
-# CONFIG_HISI_PMU is not set
-# CONFIG_HISI_PCIE_PMU is not set
-# end of Performance monitor support
-
-CONFIG_RAS=y
-# CONFIG_USB4 is not set
-
-#
-# Android
-#
-# CONFIG_ANDROID is not set
-# end of Android
-
-# CONFIG_LIBNVDIMM is not set
-# CONFIG_DAX is not set
-CONFIG_NVMEM=y
-CONFIG_NVMEM_SYSFS=y
-# CONFIG_NVMEM_SPMI_SDAM is not set
-CONFIG_ROCKCHIP_EFUSE=m
-CONFIG_ROCKCHIP_OTP=m
-# CONFIG_NVMEM_RMEM is not set
-
-#
-# HW tracing support
-#
-# CONFIG_STM is not set
-# CONFIG_INTEL_TH is not set
-# end of HW tracing support
-
-# CONFIG_FPGA is not set
-# CONFIG_FSI is not set
-# CONFIG_TEE is not set
-CONFIG_MULTIPLEXER=y
-
-#
-# Multiplexer drivers
-#
-# CONFIG_MUX_ADG792A is not set
-# CONFIG_MUX_ADGS1408 is not set
-# CONFIG_MUX_GPIO is not set
-# CONFIG_MUX_MMIO is not set
-# end of Multiplexer drivers
-
-CONFIG_PM_OPP=y
-# CONFIG_SIOX is not set
-# CONFIG_SLIMBUS is not set
-# CONFIG_INTERCONNECT is not set
-# CONFIG_COUNTER is not set
-# CONFIG_MOST is not set
-# end of Device Drivers
-
-#
-# File systems
-#
-CONFIG_DCACHE_WORD_ACCESS=y
-# CONFIG_VALIDATE_FS_PARSER is not set
-CONFIG_FS_IOMAP=y
-# CONFIG_EXT2_FS is not set
-# CONFIG_EXT3_FS is not set
-CONFIG_EXT4_FS=y
-CONFIG_EXT4_USE_FOR_EXT2=y
-CONFIG_EXT4_FS_POSIX_ACL=y
-CONFIG_EXT4_FS_SECURITY=y
-# CONFIG_EXT4_DEBUG is not set
-CONFIG_JBD2=y
-# CONFIG_JBD2_DEBUG is not set
-CONFIG_FS_MBCACHE=y
-# CONFIG_REISERFS_FS is not set
-# CONFIG_JFS_FS is not set
-CONFIG_XFS_FS=m
-CONFIG_XFS_SUPPORT_V4=y
-CONFIG_XFS_QUOTA=y
-CONFIG_XFS_POSIX_ACL=y
-CONFIG_XFS_RT=y
-# CONFIG_XFS_ONLINE_SCRUB is not set
-# CONFIG_XFS_WARN is not set
-# CONFIG_XFS_DEBUG is not set
-# CONFIG_GFS2_FS is not set
-# CONFIG_OCFS2_FS is not set
-CONFIG_BTRFS_FS=m
-CONFIG_BTRFS_FS_POSIX_ACL=y
-# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set
-# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set
-# CONFIG_BTRFS_DEBUG is not set
-# CONFIG_BTRFS_ASSERT is not set
-# CONFIG_BTRFS_FS_REF_VERIFY is not set
-# CONFIG_NILFS2_FS is not set
-CONFIG_F2FS_FS=y
-CONFIG_F2FS_STAT_FS=y
-CONFIG_F2FS_FS_XATTR=y
-CONFIG_F2FS_FS_POSIX_ACL=y
-CONFIG_F2FS_FS_SECURITY=y
-# CONFIG_F2FS_CHECK_FS is not set
-# CONFIG_F2FS_FAULT_INJECTION is not set
-CONFIG_F2FS_FS_COMPRESSION=y
-CONFIG_F2FS_FS_LZO=y
-CONFIG_F2FS_FS_LZORLE=y
-CONFIG_F2FS_FS_LZ4=y
-CONFIG_F2FS_FS_LZ4HC=y
-CONFIG_F2FS_FS_ZSTD=y
-# CONFIG_F2FS_IOSTAT is not set
-# CONFIG_ZONEFS_FS is not set
-# CONFIG_FS_DAX is not set
-CONFIG_FS_POSIX_ACL=y
-CONFIG_EXPORTFS=y
-CONFIG_EXPORTFS_BLOCK_OPS=y
-CONFIG_FILE_LOCKING=y
-CONFIG_FS_ENCRYPTION=y
-CONFIG_FS_ENCRYPTION_ALGS=y
-CONFIG_FS_VERITY=y
-# CONFIG_FS_VERITY_DEBUG is not set
-CONFIG_FS_VERITY_BUILTIN_SIGNATURES=y
-CONFIG_FSNOTIFY=y
-CONFIG_DNOTIFY=y
-CONFIG_INOTIFY_USER=y
-CONFIG_FANOTIFY=y
-# CONFIG_FANOTIFY_ACCESS_PERMISSIONS is not set
-# CONFIG_QUOTA is not set
-# CONFIG_QUOTA_NETLINK_INTERFACE is not set
-CONFIG_QUOTACTL=y
-# CONFIG_AUTOFS4_FS is not set
-# CONFIG_AUTOFS_FS is not set
-CONFIG_FUSE_FS=m
-CONFIG_CUSE=m
-CONFIG_VIRTIO_FS=m
-CONFIG_OVERLAY_FS=m
-# CONFIG_OVERLAY_FS_REDIRECT_DIR is not set
-CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y
-# CONFIG_OVERLAY_FS_INDEX is not set
-# CONFIG_OVERLAY_FS_XINO_AUTO is not set
-# CONFIG_OVERLAY_FS_METACOPY is not set
-
-#
-# Caches
-#
-CONFIG_NETFS_SUPPORT=m
-# CONFIG_NETFS_STATS is not set
-CONFIG_FSCACHE=m
-# CONFIG_FSCACHE_STATS is not set
-# CONFIG_FSCACHE_DEBUG is not set
-CONFIG_CACHEFILES=m
-# CONFIG_CACHEFILES_DEBUG is not set
-# CONFIG_CACHEFILES_ERROR_INJECTION is not set
-# end of Caches
-
-#
-# CD-ROM/DVD Filesystems
-#
-CONFIG_ISO9660_FS=m
-CONFIG_JOLIET=y
-CONFIG_ZISOFS=y
-CONFIG_UDF_FS=m
-# end of CD-ROM/DVD Filesystems
-
-#
-# DOS/FAT/EXFAT/NT Filesystems
-#
-CONFIG_FAT_FS=m
-CONFIG_MSDOS_FS=m
-CONFIG_VFAT_FS=m
-CONFIG_FAT_DEFAULT_CODEPAGE=437
-CONFIG_FAT_DEFAULT_IOCHARSET="ascii"
-CONFIG_FAT_DEFAULT_UTF8=y
-CONFIG_EXFAT_FS=m
-CONFIG_EXFAT_DEFAULT_IOCHARSET="utf8"
-CONFIG_NTFS_FS=m
-# CONFIG_NTFS_DEBUG is not set
-CONFIG_NTFS_RW=y
-CONFIG_NTFS3_FS=m
-# CONFIG_NTFS3_64BIT_CLUSTER is not set
-# CONFIG_NTFS3_LZX_XPRESS is not set
-# CONFIG_NTFS3_FS_POSIX_ACL is not set
-# end of DOS/FAT/EXFAT/NT Filesystems
-
-#
-# Pseudo filesystems
-#
-CONFIG_PROC_FS=y
-# CONFIG_PROC_KCORE is not set
-CONFIG_PROC_SYSCTL=y
-CONFIG_PROC_PAGE_MONITOR=y
-CONFIG_PROC_CHILDREN=y
-CONFIG_KERNFS=y
-CONFIG_SYSFS=y
-CONFIG_TMPFS=y
-CONFIG_TMPFS_POSIX_ACL=y
-CONFIG_TMPFS_XATTR=y
-# CONFIG_TMPFS_INODE64 is not set
-CONFIG_ARCH_SUPPORTS_HUGETLBFS=y
-# CONFIG_HUGETLBFS is not set
-CONFIG_MEMFD_CREATE=y
-CONFIG_ARCH_HAS_GIGANTIC_PAGE=y
-CONFIG_CONFIGFS_FS=m
-CONFIG_EFIVAR_FS=m
-# end of Pseudo filesystems
-
-CONFIG_MISC_FILESYSTEMS=y
-# CONFIG_ORANGEFS_FS is not set
-# CONFIG_ADFS_FS is not set
-# CONFIG_AFFS_FS is not set
-CONFIG_ECRYPT_FS=m
-# CONFIG_ECRYPT_FS_MESSAGING is not set
-CONFIG_HFS_FS=m
-CONFIG_HFSPLUS_FS=m
-# CONFIG_BEFS_FS is not set
-# CONFIG_BFS_FS is not set
-# CONFIG_EFS_FS is not set
-# CONFIG_CRAMFS is not set
-CONFIG_SQUASHFS=m
-CONFIG_SQUASHFS_FILE_CACHE=y
-# CONFIG_SQUASHFS_FILE_DIRECT is not set
-CONFIG_SQUASHFS_DECOMP_SINGLE=y
-# CONFIG_SQUASHFS_DECOMP_MULTI is not set
-# CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU is not set
-CONFIG_SQUASHFS_XATTR=y
-CONFIG_SQUASHFS_ZLIB=y
-CONFIG_SQUASHFS_LZ4=y
-CONFIG_SQUASHFS_LZO=y
-CONFIG_SQUASHFS_XZ=y
-CONFIG_SQUASHFS_ZSTD=y
-# CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set
-# CONFIG_SQUASHFS_EMBEDDED is not set
-CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3
-# CONFIG_VXFS_FS is not set
-CONFIG_MINIX_FS=m
-# CONFIG_OMFS_FS is not set
-# CONFIG_HPFS_FS is not set
-# CONFIG_QNX4FS_FS is not set
-# CONFIG_QNX6FS_FS is not set
-# CONFIG_ROMFS_FS is not set
-CONFIG_PSTORE=m
-CONFIG_PSTORE_DEFAULT_KMSG_BYTES=10240
-CONFIG_PSTORE_DEFLATE_COMPRESS=m
-# CONFIG_PSTORE_LZO_COMPRESS is not set
-# CONFIG_PSTORE_LZ4_COMPRESS is not set
-# CONFIG_PSTORE_LZ4HC_COMPRESS is not set
-# CONFIG_PSTORE_842_COMPRESS is not set
-# CONFIG_PSTORE_ZSTD_COMPRESS is not set
-CONFIG_PSTORE_COMPRESS=y
-CONFIG_PSTORE_DEFLATE_COMPRESS_DEFAULT=y
-CONFIG_PSTORE_COMPRESS_DEFAULT="deflate"
-# CONFIG_PSTORE_CONSOLE is not set
-# CONFIG_PSTORE_PMSG is not set
-# CONFIG_PSTORE_RAM is not set
-# CONFIG_PSTORE_BLK is not set
-# CONFIG_SYSV_FS is not set
-# CONFIG_UFS_FS is not set
-# CONFIG_EROFS_FS is not set
-CONFIG_NETWORK_FILESYSTEMS=y
-CONFIG_NFS_FS=m
-# CONFIG_NFS_V2 is not set
-CONFIG_NFS_V3=m
-CONFIG_NFS_V3_ACL=y
-CONFIG_NFS_V4=m
-# CONFIG_NFS_SWAP is not set
-# CONFIG_NFS_V4_1 is not set
-# CONFIG_NFS_FSCACHE is not set
-# CONFIG_NFS_USE_LEGACY_DNS is not set
-CONFIG_NFS_USE_KERNEL_DNS=y
-CONFIG_NFS_DISABLE_UDP_SUPPORT=y
-CONFIG_NFSD=m
-CONFIG_NFSD_V2_ACL=y
-CONFIG_NFSD_V3=y
-CONFIG_NFSD_V3_ACL=y
-CONFIG_NFSD_V4=y
-# CONFIG_NFSD_BLOCKLAYOUT is not set
-# CONFIG_NFSD_SCSILAYOUT is not set
-# CONFIG_NFSD_FLEXFILELAYOUT is not set
-# CONFIG_NFSD_V4_SECURITY_LABEL is not set
-CONFIG_GRACE_PERIOD=m
-CONFIG_LOCKD=m
-CONFIG_LOCKD_V4=y
-CONFIG_NFS_ACL_SUPPORT=m
-CONFIG_NFS_COMMON=y
-CONFIG_SUNRPC=m
-CONFIG_SUNRPC_GSS=m
-CONFIG_RPCSEC_GSS_KRB5=m
-# CONFIG_SUNRPC_DISABLE_INSECURE_ENCTYPES is not set
-# CONFIG_SUNRPC_DEBUG is not set
-# CONFIG_CEPH_FS is not set
-CONFIG_CIFS=m
-# CONFIG_CIFS_STATS2 is not set
-CONFIG_CIFS_ALLOW_INSECURE_LEGACY=y
-CONFIG_CIFS_UPCALL=y
-CONFIG_CIFS_XATTR=y
-CONFIG_CIFS_POSIX=y
-CONFIG_CIFS_DEBUG=y
-# CONFIG_CIFS_DEBUG2 is not set
-# CONFIG_CIFS_DEBUG_DUMP_KEYS is not set
-CONFIG_CIFS_DFS_UPCALL=y
-CONFIG_CIFS_SWN_UPCALL=y
-CONFIG_CIFS_FSCACHE=y
-CONFIG_SMB_SERVER=m
-CONFIG_SMB_SERVER_CHECK_CAP_NET_ADMIN=y
-# CONFIG_SMB_SERVER_KERBEROS5 is not set
-CONFIG_SMBFS_COMMON=m
-# CONFIG_CODA_FS is not set
-# CONFIG_AFS_FS is not set
-CONFIG_NLS=y
-CONFIG_NLS_DEFAULT="utf8"
-CONFIG_NLS_CODEPAGE_437=m
-# CONFIG_NLS_CODEPAGE_737 is not set
-# CONFIG_NLS_CODEPAGE_775 is not set
-# CONFIG_NLS_CODEPAGE_850 is not set
-CONFIG_NLS_CODEPAGE_852=m
-CONFIG_NLS_CODEPAGE_855=m
-# CONFIG_NLS_CODEPAGE_857 is not set
-# CONFIG_NLS_CODEPAGE_860 is not set
-# CONFIG_NLS_CODEPAGE_861 is not set
-# CONFIG_NLS_CODEPAGE_862 is not set
-# CONFIG_NLS_CODEPAGE_863 is not set
-# CONFIG_NLS_CODEPAGE_864 is not set
-# CONFIG_NLS_CODEPAGE_865 is not set
-CONFIG_NLS_CODEPAGE_866=m
-# CONFIG_NLS_CODEPAGE_869 is not set
-# CONFIG_NLS_CODEPAGE_936 is not set
-# CONFIG_NLS_CODEPAGE_950 is not set
-# CONFIG_NLS_CODEPAGE_932 is not set
-# CONFIG_NLS_CODEPAGE_949 is not set
-# CONFIG_NLS_CODEPAGE_874 is not set
-# CONFIG_NLS_ISO8859_8 is not set
-# CONFIG_NLS_CODEPAGE_1250 is not set
-# CONFIG_NLS_CODEPAGE_1251 is not set
-CONFIG_NLS_ASCII=m
-CONFIG_NLS_ISO8859_1=m
-CONFIG_NLS_ISO8859_2=m
-# CONFIG_NLS_ISO8859_3 is not set
-# CONFIG_NLS_ISO8859_4 is not set
-CONFIG_NLS_ISO8859_5=m
-# CONFIG_NLS_ISO8859_6 is not set
-# CONFIG_NLS_ISO8859_7 is not set
-# CONFIG_NLS_ISO8859_9 is not set
-# CONFIG_NLS_ISO8859_13 is not set
-# CONFIG_NLS_ISO8859_14 is not set
-# CONFIG_NLS_ISO8859_15 is not set
-CONFIG_NLS_KOI8_R=m
-# CONFIG_NLS_KOI8_U is not set
-# CONFIG_NLS_MAC_ROMAN is not set
-# CONFIG_NLS_MAC_CELTIC is not set
-# CONFIG_NLS_MAC_CENTEURO is not set
-# CONFIG_NLS_MAC_CROATIAN is not set
-# CONFIG_NLS_MAC_CYRILLIC is not set
-# CONFIG_NLS_MAC_GAELIC is not set
-# CONFIG_NLS_MAC_GREEK is not set
-# CONFIG_NLS_MAC_ICELAND is not set
-# CONFIG_NLS_MAC_INUIT is not set
-# CONFIG_NLS_MAC_ROMANIAN is not set
-# CONFIG_NLS_MAC_TURKISH is not set
-CONFIG_NLS_UTF8=m
-CONFIG_DLM=m
-# CONFIG_DLM_DEBUG is not set
-# CONFIG_UNICODE is not set
-CONFIG_IO_WQ=y
-# end of File systems
-
-#
-# Security options
-#
-CONFIG_KEYS=y
-# CONFIG_KEYS_REQUEST_CACHE is not set
-CONFIG_PERSISTENT_KEYRINGS=y
-CONFIG_TRUSTED_KEYS=m
-CONFIG_ENCRYPTED_KEYS=y
-CONFIG_KEY_DH_OPERATIONS=y
-# CONFIG_SECURITY_DMESG_RESTRICT is not set
-CONFIG_SECURITY=y
-# CONFIG_SECURITYFS is not set
-# CONFIG_SECURITY_NETWORK is not set
-# CONFIG_SECURITY_PATH is not set
-CONFIG_HAVE_HARDENED_USERCOPY_ALLOCATOR=y
-# CONFIG_HARDENED_USERCOPY is not set
-# CONFIG_FORTIFY_SOURCE is not set
-# CONFIG_STATIC_USERMODEHELPER is not set
-# CONFIG_SECURITY_SMACK is not set
-# CONFIG_SECURITY_TOMOYO is not set
-# CONFIG_SECURITY_APPARMOR is not set
-# CONFIG_SECURITY_LOADPIN is not set
-# CONFIG_SECURITY_YAMA is not set
-# CONFIG_SECURITY_SAFESETID is not set
-CONFIG_SECURITY_LOCKDOWN_LSM=y
-# CONFIG_SECURITY_LOCKDOWN_LSM_EARLY is not set
-CONFIG_LOCK_DOWN_KERNEL_FORCE_NONE=y
-# CONFIG_LOCK_DOWN_KERNEL_FORCE_INTEGRITY is not set
-# CONFIG_LOCK_DOWN_KERNEL_FORCE_CONFIDENTIALITY is not set
-# CONFIG_SECURITY_LANDLOCK is not set
-# CONFIG_INTEGRITY is not set
-# CONFIG_IMA_SECURE_AND_OR_TRUSTED_BOOT is not set
-CONFIG_DEFAULT_SECURITY_DAC=y
-CONFIG_LSM=""
-
-#
-# Kernel hardening options
-#
-
-#
-# Memory initialization
-#
-CONFIG_INIT_STACK_NONE=y
-# CONFIG_INIT_ON_ALLOC_DEFAULT_ON is not set
-# CONFIG_INIT_ON_FREE_DEFAULT_ON is not set
-CONFIG_CC_HAS_ZERO_CALL_USED_REGS=y
-# CONFIG_ZERO_CALL_USED_REGS is not set
-# end of Memory initialization
-# end of Kernel hardening options
-# end of Security options
-
-CONFIG_XOR_BLOCKS=m
-CONFIG_CRYPTO=y
-
-#
-# Crypto core or helper
-#
-# CONFIG_CRYPTO_FIPS is not set
-CONFIG_CRYPTO_ALGAPI=y
-CONFIG_CRYPTO_ALGAPI2=y
-CONFIG_CRYPTO_AEAD=y
-CONFIG_CRYPTO_AEAD2=y
-CONFIG_CRYPTO_SKCIPHER=y
-CONFIG_CRYPTO_SKCIPHER2=y
-CONFIG_CRYPTO_HASH=y
-CONFIG_CRYPTO_HASH2=y
-CONFIG_CRYPTO_RNG=y
-CONFIG_CRYPTO_RNG2=y
-CONFIG_CRYPTO_RNG_DEFAULT=m
-CONFIG_CRYPTO_AKCIPHER2=y
-CONFIG_CRYPTO_AKCIPHER=y
-CONFIG_CRYPTO_KPP2=y
-CONFIG_CRYPTO_KPP=y
-CONFIG_CRYPTO_ACOMP2=y
-CONFIG_CRYPTO_MANAGER=y
-CONFIG_CRYPTO_MANAGER2=y
-CONFIG_CRYPTO_USER=m
-# CONFIG_CRYPTO_MANAGER_DISABLE_TESTS is not set
-CONFIG_CRYPTO_GF128MUL=m
-CONFIG_CRYPTO_NULL=y
-CONFIG_CRYPTO_NULL2=y
-CONFIG_CRYPTO_PCRYPT=m
-CONFIG_CRYPTO_CRYPTD=m
-CONFIG_CRYPTO_AUTHENC=m
-# CONFIG_CRYPTO_TEST is not set
-CONFIG_CRYPTO_ENGINE=m
-
-#
-# Public-key cryptography
-#
-CONFIG_CRYPTO_RSA=y
-CONFIG_CRYPTO_DH=y
-CONFIG_CRYPTO_ECC=m
-CONFIG_CRYPTO_ECDH=m
-# CONFIG_CRYPTO_ECDSA is not set
-CONFIG_CRYPTO_ECRDSA=m
-# CONFIG_CRYPTO_SM2 is not set
-CONFIG_CRYPTO_CURVE25519=m
-
-#
-# Authenticated Encryption with Associated Data
-#
-CONFIG_CRYPTO_CCM=m
-CONFIG_CRYPTO_GCM=m
-CONFIG_CRYPTO_CHACHA20POLY1305=m
-# CONFIG_CRYPTO_AEGIS128 is not set
-CONFIG_CRYPTO_SEQIV=m
-CONFIG_CRYPTO_ECHAINIV=m
-
-#
-# Block modes
-#
-CONFIG_CRYPTO_CBC=y
-# CONFIG_CRYPTO_CFB is not set
-CONFIG_CRYPTO_CTR=y
-CONFIG_CRYPTO_CTS=y
-CONFIG_CRYPTO_ECB=y
-CONFIG_CRYPTO_LRW=m
-# CONFIG_CRYPTO_OFB is not set
-# CONFIG_CRYPTO_PCBC is not set
-CONFIG_CRYPTO_XTS=y
-CONFIG_CRYPTO_KEYWRAP=m
-CONFIG_CRYPTO_NHPOLY1305=m
-CONFIG_CRYPTO_ADIANTUM=m
-CONFIG_CRYPTO_ESSIV=m
-
-#
-# Hash modes
-#
-CONFIG_CRYPTO_CMAC=m
-CONFIG_CRYPTO_HMAC=y
-# CONFIG_CRYPTO_XCBC is not set
-# CONFIG_CRYPTO_VMAC is not set
-
-#
-# Digest
-#
-CONFIG_CRYPTO_CRC32C=y
-CONFIG_CRYPTO_CRC32=y
-CONFIG_CRYPTO_XXHASH=m
-CONFIG_CRYPTO_BLAKE2B=m
-CONFIG_CRYPTO_BLAKE2S=m
-CONFIG_CRYPTO_CRCT10DIF=y
-CONFIG_CRYPTO_GHASH=m
-CONFIG_CRYPTO_POLY1305=m
-CONFIG_CRYPTO_MD4=m
-CONFIG_CRYPTO_MD5=y
-# CONFIG_CRYPTO_MICHAEL_MIC is not set
-CONFIG_CRYPTO_RMD160=m
-CONFIG_CRYPTO_SHA1=y
-CONFIG_CRYPTO_SHA256=y
-CONFIG_CRYPTO_SHA512=y
-CONFIG_CRYPTO_SHA3=m
-CONFIG_CRYPTO_SM3=m
-CONFIG_CRYPTO_STREEBOG=m
-CONFIG_CRYPTO_WP512=m
-
-#
-# Ciphers
-#
-CONFIG_CRYPTO_AES=y
-# CONFIG_CRYPTO_AES_TI is not set
-# CONFIG_CRYPTO_ANUBIS is not set
-CONFIG_CRYPTO_ARC4=m
-CONFIG_CRYPTO_BLOWFISH=m
-CONFIG_CRYPTO_BLOWFISH_COMMON=m
-# CONFIG_CRYPTO_CAMELLIA is not set
-# CONFIG_CRYPTO_CAST5 is not set
-# CONFIG_CRYPTO_CAST6 is not set
-CONFIG_CRYPTO_DES=m
-# CONFIG_CRYPTO_FCRYPT is not set
-# CONFIG_CRYPTO_KHAZAD is not set
-CONFIG_CRYPTO_CHACHA20=m
-CONFIG_CRYPTO_SEED=m
-CONFIG_CRYPTO_SERPENT=m
-CONFIG_CRYPTO_SM4=m
-# CONFIG_CRYPTO_TEA is not set
-CONFIG_CRYPTO_TWOFISH=m
-CONFIG_CRYPTO_TWOFISH_COMMON=m
-
-#
-# Compression
-#
-CONFIG_CRYPTO_DEFLATE=m
-CONFIG_CRYPTO_LZO=y
-# CONFIG_CRYPTO_842 is not set
-# CONFIG_CRYPTO_LZ4 is not set
-# CONFIG_CRYPTO_LZ4HC is not set
-CONFIG_CRYPTO_ZSTD=y
-
-#
-# Random Number Generation
-#
-CONFIG_CRYPTO_ANSI_CPRNG=m
-CONFIG_CRYPTO_DRBG_MENU=y
-CONFIG_CRYPTO_DRBG_HMAC=y
-CONFIG_CRYPTO_DRBG_HASH=y
-CONFIG_CRYPTO_DRBG_CTR=y
-CONFIG_CRYPTO_DRBG=y
-CONFIG_CRYPTO_JITTERENTROPY=y
-CONFIG_CRYPTO_KDF800108_CTR=y
-CONFIG_CRYPTO_USER_API=y
-CONFIG_CRYPTO_USER_API_HASH=m
-CONFIG_CRYPTO_USER_API_SKCIPHER=m
-CONFIG_CRYPTO_USER_API_RNG=y
-# CONFIG_CRYPTO_USER_API_RNG_CAVP is not set
-CONFIG_CRYPTO_USER_API_AEAD=y
-CONFIG_CRYPTO_USER_API_ENABLE_OBSOLETE=y
-# CONFIG_CRYPTO_STATS is not set
-CONFIG_CRYPTO_HASH_INFO=y
-CONFIG_CRYPTO_HW=y
-# CONFIG_CRYPTO_DEV_ATMEL_ECC is not set
-# CONFIG_CRYPTO_DEV_ATMEL_SHA204A is not set
-CONFIG_CRYPTO_DEV_CCP=y
-CONFIG_CRYPTO_DEV_CCP_DD=m
-CONFIG_CRYPTO_DEV_SP_CCP=y
-CONFIG_CRYPTO_DEV_CCP_CRYPTO=m
-# CONFIG_CRYPTO_DEV_CCP_DEBUGFS is not set
-CONFIG_CRYPTO_DEV_NITROX=m
-CONFIG_CRYPTO_DEV_NITROX_CNN55XX=m
-# CONFIG_CRYPTO_DEV_CAVIUM_ZIP is not set
-CONFIG_CRYPTO_DEV_ROCKCHIP=m
-CONFIG_CRYPTO_DEV_VIRTIO=m
-# CONFIG_CRYPTO_DEV_SAFEXCEL is not set
-CONFIG_CRYPTO_DEV_CCREE=m
-# CONFIG_CRYPTO_DEV_HISI_SEC is not set
-# CONFIG_CRYPTO_DEV_HISI_SEC2 is not set
-# CONFIG_CRYPTO_DEV_HISI_ZIP is not set
-# CONFIG_CRYPTO_DEV_HISI_HPRE is not set
-# CONFIG_CRYPTO_DEV_HISI_TRNG is not set
-# CONFIG_CRYPTO_DEV_AMLOGIC_GXL is not set
-CONFIG_ASYMMETRIC_KEY_TYPE=y
-CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=y
-# CONFIG_ASYMMETRIC_TPM_KEY_SUBTYPE is not set
-CONFIG_X509_CERTIFICATE_PARSER=y
-CONFIG_PKCS8_PRIVATE_KEY_PARSER=m
-CONFIG_PKCS7_MESSAGE_PARSER=y
-# CONFIG_PKCS7_TEST_KEY is not set
-# CONFIG_SIGNED_PE_FILE_VERIFICATION is not set
-
-#
-# Certificates for signature checking
-#
-CONFIG_MODULE_SIG_KEY="certs/signing_key.pem"
-CONFIG_MODULE_SIG_KEY_TYPE_RSA=y
-# CONFIG_MODULE_SIG_KEY_TYPE_ECDSA is not set
-CONFIG_SYSTEM_TRUSTED_KEYRING=y
-CONFIG_SYSTEM_TRUSTED_KEYS=""
-# CONFIG_SYSTEM_EXTRA_CERTIFICATE is not set
-# CONFIG_SECONDARY_TRUSTED_KEYRING is not set
-# CONFIG_SYSTEM_BLACKLIST_KEYRING is not set
-# end of Certificates for signature checking
-
-#
-# Library routines
-#
-CONFIG_RAID6_PQ=m
-# CONFIG_RAID6_PQ_BENCHMARK is not set
-CONFIG_LINEAR_RANGES=y
-# CONFIG_PACKING is not set
-CONFIG_BITREVERSE=y
-CONFIG_HAVE_ARCH_BITREVERSE=y
-CONFIG_GENERIC_STRNCPY_FROM_USER=y
-CONFIG_GENERIC_STRNLEN_USER=y
-CONFIG_GENERIC_NET_UTILS=y
-# CONFIG_CORDIC is not set
-# CONFIG_PRIME_NUMBERS is not set
-CONFIG_RATIONAL=y
-CONFIG_GENERIC_PCI_IOMAP=y
-CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y
-CONFIG_ARCH_HAS_FAST_MULTIPLIER=y
-CONFIG_ARCH_USE_SYM_ANNOTATIONS=y
-# CONFIG_INDIRECT_PIO is not set
-
-#
-# Crypto library routines
-#
-CONFIG_CRYPTO_LIB_AES=y
-CONFIG_CRYPTO_LIB_ARC4=m
-CONFIG_CRYPTO_LIB_BLAKE2S_GENERIC=y
-CONFIG_CRYPTO_ARCH_HAVE_LIB_CHACHA=m
-CONFIG_CRYPTO_LIB_CHACHA_GENERIC=m
-CONFIG_CRYPTO_LIB_CHACHA=m
-CONFIG_CRYPTO_LIB_CURVE25519_GENERIC=m
-CONFIG_CRYPTO_LIB_CURVE25519=m
-CONFIG_CRYPTO_LIB_DES=m
-CONFIG_CRYPTO_LIB_POLY1305_RSIZE=9
-CONFIG_CRYPTO_ARCH_HAVE_LIB_POLY1305=m
-CONFIG_CRYPTO_LIB_POLY1305_GENERIC=m
-CONFIG_CRYPTO_LIB_POLY1305=m
-CONFIG_CRYPTO_LIB_CHACHA20POLY1305=m
-CONFIG_CRYPTO_LIB_SHA256=y
-CONFIG_CRYPTO_LIB_SM4=m
-# end of Crypto library routines
-
-CONFIG_CRC_CCITT=y
-CONFIG_CRC16=y
-CONFIG_CRC_T10DIF=y
-CONFIG_CRC_ITU_T=y
-CONFIG_CRC32=y
-# CONFIG_CRC32_SELFTEST is not set
-CONFIG_CRC32_SLICEBY8=y
-# CONFIG_CRC32_SLICEBY4 is not set
-# CONFIG_CRC32_SARWATE is not set
-# CONFIG_CRC32_BIT is not set
-# CONFIG_CRC64 is not set
-# CONFIG_CRC4 is not set
-CONFIG_CRC7=y
-CONFIG_LIBCRC32C=y
-CONFIG_CRC8=m
-CONFIG_XXHASH=y
-CONFIG_AUDIT_ARCH_COMPAT_GENERIC=y
-# CONFIG_RANDOM32_SELFTEST is not set
-CONFIG_ZLIB_INFLATE=m
-CONFIG_ZLIB_DEFLATE=m
-CONFIG_LZO_COMPRESS=y
-CONFIG_LZO_DECOMPRESS=y
-CONFIG_LZ4_COMPRESS=y
-CONFIG_LZ4HC_COMPRESS=y
-CONFIG_LZ4_DECOMPRESS=y
-CONFIG_ZSTD_COMPRESS=y
-CONFIG_ZSTD_DECOMPRESS=y
-CONFIG_XZ_DEC=y
-CONFIG_XZ_DEC_X86=y
-CONFIG_XZ_DEC_POWERPC=y
-CONFIG_XZ_DEC_IA64=y
-CONFIG_XZ_DEC_ARM=y
-CONFIG_XZ_DEC_ARMTHUMB=y
-CONFIG_XZ_DEC_SPARC=y
-# CONFIG_XZ_DEC_MICROLZMA is not set
-CONFIG_XZ_DEC_BCJ=y
-# CONFIG_XZ_DEC_TEST is not set
-CONFIG_GENERIC_ALLOCATOR=y
-CONFIG_TEXTSEARCH=y
-CONFIG_TEXTSEARCH_KMP=m
-CONFIG_TEXTSEARCH_BM=m
-CONFIG_TEXTSEARCH_FSM=m
-CONFIG_INTERVAL_TREE=y
-CONFIG_ASSOCIATIVE_ARRAY=y
-CONFIG_HAS_IOMEM=y
-CONFIG_HAS_IOPORT_MAP=y
-CONFIG_HAS_DMA=y
-CONFIG_DMA_OPS=y
-CONFIG_NEED_SG_DMA_LENGTH=y
-CONFIG_NEED_DMA_MAP_STATE=y
-CONFIG_ARCH_DMA_ADDR_T_64BIT=y
-CONFIG_DMA_DECLARE_COHERENT=y
-CONFIG_ARCH_HAS_SETUP_DMA_OPS=y
-CONFIG_ARCH_HAS_TEARDOWN_DMA_OPS=y
-CONFIG_ARCH_HAS_SYNC_DMA_FOR_DEVICE=y
-CONFIG_ARCH_HAS_SYNC_DMA_FOR_CPU=y
-CONFIG_ARCH_HAS_DMA_PREP_COHERENT=y
-CONFIG_SWIOTLB=y
-# CONFIG_DMA_RESTRICTED_POOL is not set
-CONFIG_DMA_NONCOHERENT_MMAP=y
-CONFIG_DMA_COHERENT_POOL=y
-CONFIG_DMA_REMAP=y
-CONFIG_DMA_DIRECT_REMAP=y
-CONFIG_DMA_CMA=y
-# CONFIG_DMA_PERNUMA_CMA is not set
-
-#
-# Default contiguous memory area size:
-#
-CONFIG_CMA_SIZE_MBYTES=16
-CONFIG_CMA_SIZE_SEL_MBYTES=y
-# CONFIG_CMA_SIZE_SEL_PERCENTAGE is not set
-# CONFIG_CMA_SIZE_SEL_MIN is not set
-# CONFIG_CMA_SIZE_SEL_MAX is not set
-CONFIG_CMA_ALIGNMENT=8
-# CONFIG_DMA_API_DEBUG is not set
-CONFIG_SGL_ALLOC=y
-CONFIG_CPU_RMAP=y
-CONFIG_DQL=y
-CONFIG_GLOB=y
-# CONFIG_GLOB_SELFTEST is not set
-CONFIG_NLATTR=y
-CONFIG_CLZ_TAB=y
-CONFIG_IRQ_POLL=y
-CONFIG_MPILIB=y
-CONFIG_LIBFDT=y
-CONFIG_OID_REGISTRY=y
-CONFIG_UCS2_STRING=y
-CONFIG_HAVE_GENERIC_VDSO=y
-CONFIG_GENERIC_GETTIMEOFDAY=y
-CONFIG_GENERIC_VDSO_TIME_NS=y
-CONFIG_FONT_SUPPORT=y
-CONFIG_FONTS=y
-# CONFIG_FONT_8x8 is not set
-# CONFIG_FONT_8x16 is not set
-# CONFIG_FONT_6x11 is not set
-# CONFIG_FONT_7x14 is not set
-# CONFIG_FONT_PEARL_8x8 is not set
-# CONFIG_FONT_ACORN_8x8 is not set
-# CONFIG_FONT_MINI_4x6 is not set
-# CONFIG_FONT_6x10 is not set
-# CONFIG_FONT_10x18 is not set
-# CONFIG_FONT_SUN8x16 is not set
-# CONFIG_FONT_SUN12x22 is not set
-CONFIG_FONT_TER16x32=y
-# CONFIG_FONT_6x8 is not set
-CONFIG_SG_POOL=y
-CONFIG_ARCH_STACKWALK=y
-CONFIG_SBITMAP=y
-# end of Library routines
-
-CONFIG_GENERIC_LIB_DEVMEM_IS_ALLOWED=y
-CONFIG_ASN1_ENCODER=m
-
-#
-# Kernel hacking
-#
-
-#
-# printk and dmesg options
-#
-CONFIG_PRINTK_TIME=y
-# CONFIG_PRINTK_CALLER is not set
-# CONFIG_STACKTRACE_BUILD_ID is not set
-CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7
-CONFIG_CONSOLE_LOGLEVEL_QUIET=4
-CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4
-# CONFIG_DYNAMIC_DEBUG is not set
-# CONFIG_DYNAMIC_DEBUG_CORE is not set
-CONFIG_SYMBOLIC_ERRNAME=y
-CONFIG_DEBUG_BUGVERBOSE=y
-# end of printk and dmesg options
-
-#
-# Compile-time checks and compiler options
-#
-CONFIG_FRAME_WARN=2048
-# CONFIG_STRIP_ASM_SYMS is not set
-# CONFIG_HEADERS_INSTALL is not set
-# CONFIG_DEBUG_SECTION_MISMATCH is not set
-CONFIG_SECTION_MISMATCH_WARN_ONLY=y
-CONFIG_ARCH_WANT_FRAME_POINTERS=y
-CONFIG_FRAME_POINTER=y
-# end of Compile-time checks and compiler options
-
-#
-# Generic Kernel Debugging Instruments
-#
-# CONFIG_MAGIC_SYSRQ is not set
-# CONFIG_DEBUG_FS is not set
-CONFIG_HAVE_ARCH_KGDB=y
-CONFIG_ARCH_HAS_UBSAN_SANITIZE_ALL=y
-# CONFIG_UBSAN is not set
-CONFIG_HAVE_KCSAN_COMPILER=y
-# end of Generic Kernel Debugging Instruments
-
-# CONFIG_DEBUG_KERNEL is not set
-
-#
-# Networking Debugging
-#
-# end of Networking Debugging
-
-#
-# Memory Debugging
-#
-# CONFIG_PAGE_EXTENSION is not set
-# CONFIG_PAGE_POISONING is not set
-# CONFIG_DEBUG_RODATA_TEST is not set
-CONFIG_ARCH_HAS_DEBUG_WX=y
-# CONFIG_DEBUG_WX is not set
-CONFIG_GENERIC_PTDUMP=y
-# CONFIG_SLUB_DEBUG_ON is not set
-# CONFIG_SLUB_STATS is not set
-CONFIG_HAVE_DEBUG_KMEMLEAK=y
-CONFIG_ARCH_HAS_DEBUG_VM_PGTABLE=y
-# CONFIG_DEBUG_VM_PGTABLE is not set
-CONFIG_ARCH_HAS_DEBUG_VIRTUAL=y
-CONFIG_DEBUG_MEMORY_INIT=y
-CONFIG_HAVE_ARCH_KASAN=y
-CONFIG_HAVE_ARCH_KASAN_SW_TAGS=y
-CONFIG_HAVE_ARCH_KASAN_HW_TAGS=y
-CONFIG_HAVE_ARCH_KASAN_VMALLOC=y
-CONFIG_CC_HAS_KASAN_GENERIC=y
-CONFIG_CC_HAS_KASAN_SW_TAGS=y
-CONFIG_CC_HAS_WORKING_NOSANITIZE_ADDRESS=y
-# CONFIG_KASAN is not set
-CONFIG_HAVE_ARCH_KFENCE=y
-# CONFIG_KFENCE is not set
-# end of Memory Debugging
-
-#
-# Debug Oops, Lockups and Hangs
-#
-# CONFIG_PANIC_ON_OOPS is not set
-CONFIG_PANIC_ON_OOPS_VALUE=0
-CONFIG_PANIC_TIMEOUT=30
-# CONFIG_TEST_LOCKUP is not set
-# end of Debug Oops, Lockups and Hangs
-
-#
-# Scheduler Debugging
-#
-CONFIG_SCHED_INFO=y
-# end of Scheduler Debugging
-
-# CONFIG_DEBUG_TIMEKEEPING is not set
-
-#
-# Lock Debugging (spinlocks, mutexes, etc...)
-#
-CONFIG_LOCK_DEBUGGING_SUPPORT=y
-# CONFIG_WW_MUTEX_SELFTEST is not set
-# end of Lock Debugging (spinlocks, mutexes, etc...)
-
-# CONFIG_DEBUG_IRQFLAGS is not set
-# CONFIG_STACKTRACE is not set
-# CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set
-
-#
-# Debug kernel data structures
-#
-# CONFIG_BUG_ON_DATA_CORRUPTION is not set
-# end of Debug kernel data structures
-
-#
-# RCU Debugging
-#
-CONFIG_RCU_CPU_STALL_TIMEOUT=21
-# end of RCU Debugging
-
-CONFIG_HAVE_FUNCTION_TRACER=y
-CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
-CONFIG_HAVE_DYNAMIC_FTRACE=y
-CONFIG_HAVE_DYNAMIC_FTRACE_WITH_REGS=y
-CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
-CONFIG_HAVE_SYSCALL_TRACEPOINTS=y
-CONFIG_HAVE_C_RECORDMCOUNT=y
-CONFIG_TRACING_SUPPORT=y
-# CONFIG_FTRACE is not set
-# CONFIG_SAMPLES is not set
-CONFIG_STRICT_DEVMEM=y
-CONFIG_IO_STRICT_DEVMEM=y
-
-#
-# arm64 Debugging
-#
-# CONFIG_PID_IN_CONTEXTIDR is not set
-# CONFIG_ARM64_RELOC_TEST is not set
-# CONFIG_CORESIGHT is not set
-# end of arm64 Debugging
-
-#
-# Kernel Testing and Coverage
-#
-# CONFIG_KUNIT is not set
-CONFIG_ARCH_HAS_KCOV=y
-CONFIG_CC_HAS_SANCOV_TRACE_PC=y
-# CONFIG_RUNTIME_TESTING_MENU is not set
-CONFIG_ARCH_USE_MEMTEST=y
-# CONFIG_MEMTEST is not set
-# end of Kernel Testing and Coverage
-# end of Kernel hacking
diff --git a/testing/linux-openvfd/APKBUILD b/testing/linux-openvfd/APKBUILD
new file mode 100644
index 00000000000..a6acde6a1b9
--- /dev/null
+++ b/testing/linux-openvfd/APKBUILD
@@ -0,0 +1,26 @@
+# Contributor: Petr Hodina <phodina@protonmail.com>
+# Maintainer: Petr Hodina <phodina@protonmail.com>
+pkgname=linux-openvfd
+pkgver=0_git20220906
+pkgrel=0
+_gitrev=ac2d94c8f466d6d1d56b5dc818a342b0ce01a750
+pkgdesc="FD628 and similar compatible LED controller driver for linux, service daemon"
+url="https://github.com/arthur-liberman/linux_openvfd"
+makedepends="linux-headers"
+arch="aarch64"
+license="GPL-2.0-or-later"
+source="$pkgname-$_gitrev.tar.gz::https://github.com/arthur-liberman/linux_openvfd/archive/$_gitrev.tar.gz"
+builddir="$srcdir/linux_openvfd-$_gitrev"
+options="!check" # has no test suite
+
+build() {
+ make OpenVFDService
+}
+
+package() {
+ install -Dm755 OpenVFDService -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+340f1102b61e81a126622f91802e11819ffe4ae1ae92542efaa20d2f26faff893bbc1efed9f406c0c6e4f3fcb9d386ce636de242c8677c5486bd27e98b967c64 linux-openvfd-ac2d94c8f466d6d1d56b5dc818a342b0ce01a750.tar.gz
+"
diff --git a/testing/linux-sophgo/APKBUILD b/testing/linux-sophgo/APKBUILD
new file mode 100644
index 00000000000..73cb04ad5e5
--- /dev/null
+++ b/testing/linux-sophgo/APKBUILD
@@ -0,0 +1,150 @@
+# Contributor: Carlo Landmeter <clandmeter@alpinelinux.org>
+
+_flavor=sophgo
+pkgname=linux-$_flavor
+pkgver=6.1.80_git20240328
+_commit=83ab3eda46e651464f2715455ae66711882be116
+pkgrel=0
+arch=riscv64
+pkgdesc="Linux Sophgo kernel"
+url="https://www.kernel.org"
+depends="initramfs-generator"
+subpackages="$pkgname-dev $pkgname-doc"
+_depends_dev="perl gmp-dev mpc1-dev mpfr-dev elfutils-dev bash flex bison zstd"
+makedepends="$_depends_dev sed installkernel bc linux-headers linux-firmware-any openssl-dev>3 mawk
+ diffutils findutils zstd pahole python3 gcc>=13.1.1_git20230624"
+options="!strip !check"
+license="GPL-2.0-only"
+source="$pkgname-$pkgver.tar.gz::https://github.com/sophgo/linux-riscv/archive/$_commit.tar.gz
+ sophgo.riscv64.config
+ "
+builddir="$srcdir"/linux-riscv-$_commit
+arch=riscv64
+
+build() {
+ unset LDFLAGS CFLAGS CPPFLAGS CXXFLAGS
+ export KBUILD_BUILD_TIMESTAMP="$(date -Ru${SOURCE_DATE_EPOCH:+d @$SOURCE_DATE_EPOCH})"
+ local _builddir="$srcdir/build-$_flavor-$arch"
+
+ mkdir -p "$_builddir"
+ echo "-$pkgrel-$_flavor" > "$_builddir"/localversion-alpine
+ cp "$srcdir"/"$_flavor.$arch.config" "$_builddir"/.config
+ msg "Configuring kernel"
+ make -C "$builddir" \
+ O="$_builddir" \
+ olddefconfig
+
+ msg "Build kernel"
+ cd "$_builddir"
+ make CC="${CC:-gcc}" \
+ AWK="${AWK:-mawk}" \
+ KBUILD_BUILD_VERSION="$((pkgrel + 1 ))-Alpine"
+}
+
+package() {
+ depends="$depends linux-firmware-any"
+ local _builddir="$srcdir/build-$_flavor-$arch"
+ export KBUILD_BUILD_TIMESTAMP="$(date -Ru${SOURCE_DATE_EPOCH:+d @$SOURCE_DATE_EPOCH})"
+ cd "$_builddir"
+ local _abi_release="$(make -s kernelrelease)"
+
+ mkdir -p "$pkgdir"/boot "$pkgdir"/lib/modules
+ make modules_install zinstall dtbs_install \
+ INSTALL_MOD_PATH="$pkgdir" \
+ INSTALL_MOD_STRIP=1 \
+ INSTALL_PATH="$pkgdir"/boot \
+ INSTALL_DTBS_PATH="$pkgdir/boot/dtbs-$_flavor"
+
+ rm -f "$pkgdir"/lib/modules/"$_abi_release"/build \
+ "$pkgdir"/lib/modules/"$_abi_release"/source
+ rm -rf "$pkgdir"/lib/firmware
+
+ install -D -m644 include/config/kernel.release \
+ "$pkgdir"/usr/share/kernel/$_flavor/kernel.release
+
+ mkdir -p "$pkgdir"/usr/share/doc
+ cp -r "$builddir"/Documentation \
+ "$pkgdir"/usr/share/doc/linux-doc-"$pkgver"/
+ # remove files that aren't part of the documentation itself
+ for nondoc in \
+ .gitignore conf.py docutils.conf \
+ dontdiff Kconfig Makefile
+ do
+ rm "$pkgdir"/usr/share/doc/linux-doc-"$pkgver"/"$nondoc"
+ done
+ # create /usr/share/doc/linux-doc symlink
+ cd "$pkgdir"/usr/share/doc; ln -s linux-doc-"$pkgver" linux-doc
+}
+
+
+dev() {
+ local _builddir="$srcdir/build-$_flavor-$arch"
+ local _abi_release="$(make -C "$_builddir" -s kernelrelease)"
+ # copy the only the parts that we really need for build 3rd party
+ # kernel modules and install those as /usr/src/linux-headers,
+ # simlar to what ubuntu does
+ #
+ # this way you dont need to install the 300-400 kernel sources to
+ # build a tiny kernel module
+ #
+ pkgdesc="Headers and script for third party modules for $_flavor kernel"
+ depends="$_depends_dev"
+ local dir="$subpkgdir"/usr/src/linux-headers-"$_abi_release"
+ export KBUILD_BUILD_TIMESTAMP="$(date -Ru${SOURCE_DATE_EPOCH:+d @$SOURCE_DATE_EPOCH})"
+
+ # first we import config, run prepare to set up for building
+ # external modules, and create the scripts
+ mkdir -p "$dir"
+ cp -a "$_builddir"/.config "$_builddir"/localversion-alpine \
+ "$dir"/
+
+ make -C "$builddir" \
+ O="$dir" \
+ AWK="${AWK:-mawk}" \
+ prepare modules_prepare scripts
+
+ # remove the stuff that points to real sources. we want 3rd party
+ # modules to believe this is the sources
+ rm "$dir"/Makefile "$dir"/source
+
+ # copy the needed stuff from real sources
+ #
+ # this is taken from ubuntu kernel build script
+ # http://kernel.ubuntu.com/git/ubuntu/ubuntu-zesty.git/tree/debian/rules.d/3-binary-indep.mk
+ cd "$builddir"
+ find . -path './include/*' -prune \
+ -o -path './scripts/*' -prune -o -type f \
+ \( -name 'Makefile*' -o -name 'Kconfig*' -o -name 'Kbuild*' -o \
+ -name '*.sh' -o -name '*.pl' -o -name '*.lds' -o -name 'Platform' \) \
+ -print | cpio -pdm "$dir"
+
+ cp -a scripts include "$dir"
+
+ find "arch/riscv" -name include -type d -print | while IFS='' read -r folder; do
+ find "$folder" -type f
+ done | sort -u | cpio -pdm "$dir"
+
+ install -Dm644 "$_builddir"/Module.symvers \
+ "$dir"/Module.symvers
+
+ # remove unneeded things
+ msg "Removing documentation..."
+ rm -r "$dir"/Documentation
+ find "$dir" -type f -name '*.o' -printf 'Removing %P\n' -delete
+
+ msg "Removing unneeded arch headers..."
+ for i in "$dir"/arch/*; do
+ if [ "${i##*/}" != riscv ]; then
+ echo " ${i##*/}"
+ rm -r "$i"
+ fi
+ done
+
+ mkdir -p "$subpkgdir"/lib/modules/"$_abi_release"
+ ln -sf /usr/src/linux-headers-"$_abi_release" \
+ "$subpkgdir"/lib/modules/"$_abi_release"/build
+}
+sha512sums="
+24a4f4ec9857fcca62b43b0bc62a0ec3b4fb361308fd98075a9f8ba976c10f43add551482a03d27a381b688698fc0a7435d307b015d024c7c18f13d4d040de05 linux-sophgo-6.1.80_git20240328.tar.gz
+c06c0822898247a247bdb6cc9ebe954c1edd15376fe8ffc2c595dfd1cb2e7b63cf52b7a25fc0227b6f9681d546d690134b43e2d3bfb972e6b65696b0ff45e188 sophgo.riscv64.config
+"
diff --git a/testing/linux-sophgo/sophgo.riscv64.config b/testing/linux-sophgo/sophgo.riscv64.config
new file mode 100644
index 00000000000..17f1bc01c3a
--- /dev/null
+++ b/testing/linux-sophgo/sophgo.riscv64.config
@@ -0,0 +1,5540 @@
+#
+# Automatically generated file; DO NOT EDIT.
+# Linux/riscv 6.1.72 Kernel Configuration
+#
+CONFIG_CC_VERSION_TEXT="gcc (Alpine 13.2.1_git20231014) 13.2.1 20231014"
+CONFIG_CC_IS_GCC=y
+CONFIG_GCC_VERSION=130201
+CONFIG_CLANG_VERSION=0
+CONFIG_AS_IS_GNU=y
+CONFIG_AS_VERSION=24100
+CONFIG_LD_IS_BFD=y
+CONFIG_LD_VERSION=24100
+CONFIG_LLD_VERSION=0
+CONFIG_CC_CAN_LINK=y
+CONFIG_CC_CAN_LINK_STATIC=y
+CONFIG_CC_HAS_ASM_GOTO_OUTPUT=y
+CONFIG_CC_HAS_ASM_GOTO_TIED_OUTPUT=y
+CONFIG_CC_HAS_ASM_INLINE=y
+CONFIG_CC_HAS_NO_PROFILE_FN_ATTR=y
+CONFIG_PAHOLE_VERSION=125
+CONFIG_IRQ_WORK=y
+CONFIG_BUILDTIME_TABLE_SORT=y
+CONFIG_THREAD_INFO_IN_TASK=y
+
+#
+# General setup
+#
+CONFIG_INIT_ENV_ARG_LIMIT=32
+# CONFIG_COMPILE_TEST is not set
+# CONFIG_WERROR is not set
+CONFIG_LOCALVERSION=""
+# CONFIG_LOCALVERSION_AUTO is not set
+CONFIG_BUILD_SALT=""
+CONFIG_DEFAULT_INIT=""
+CONFIG_DEFAULT_HOSTNAME="(none)"
+CONFIG_SYSVIPC=y
+CONFIG_SYSVIPC_SYSCTL=y
+CONFIG_SYSVIPC_COMPAT=y
+CONFIG_POSIX_MQUEUE=y
+CONFIG_POSIX_MQUEUE_SYSCTL=y
+# CONFIG_WATCH_QUEUE is not set
+CONFIG_CROSS_MEMORY_ATTACH=y
+# CONFIG_USELIB is not set
+CONFIG_AUDIT=y
+CONFIG_HAVE_ARCH_AUDITSYSCALL=y
+CONFIG_AUDITSYSCALL=y
+
+#
+# IRQ subsystem
+#
+CONFIG_GENERIC_IRQ_SHOW=y
+CONFIG_GENERIC_IRQ_SHOW_LEVEL=y
+CONFIG_GENERIC_IRQ_EFFECTIVE_AFF_MASK=y
+CONFIG_GENERIC_IRQ_MIGRATION=y
+CONFIG_HARDIRQS_SW_RESEND=y
+CONFIG_IRQ_DOMAIN=y
+CONFIG_IRQ_DOMAIN_HIERARCHY=y
+CONFIG_GENERIC_MSI_IRQ=y
+CONFIG_GENERIC_MSI_IRQ_DOMAIN=y
+CONFIG_IRQ_FORCED_THREADING=y
+CONFIG_SPARSE_IRQ=y
+# end of IRQ subsystem
+
+CONFIG_GENERIC_IRQ_MULTI_HANDLER=y
+CONFIG_ARCH_CLOCKSOURCE_INIT=y
+CONFIG_GENERIC_TIME_VSYSCALL=y
+CONFIG_GENERIC_CLOCKEVENTS=y
+CONFIG_ARCH_HAS_TICK_BROADCAST=y
+CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y
+CONFIG_HAVE_POSIX_CPU_TIMERS_TASK_WORK=y
+CONFIG_POSIX_CPU_TIMERS_TASK_WORK=y
+CONFIG_CONTEXT_TRACKING=y
+CONFIG_CONTEXT_TRACKING_IDLE=y
+
+#
+# Timers subsystem
+#
+CONFIG_TICK_ONESHOT=y
+CONFIG_NO_HZ_COMMON=y
+# CONFIG_HZ_PERIODIC is not set
+CONFIG_NO_HZ_IDLE=y
+# CONFIG_NO_HZ_FULL is not set
+# CONFIG_NO_HZ is not set
+CONFIG_HIGH_RES_TIMERS=y
+# end of Timers subsystem
+
+CONFIG_BPF=y
+CONFIG_HAVE_EBPF_JIT=y
+
+#
+# BPF subsystem
+#
+CONFIG_BPF_SYSCALL=y
+# CONFIG_BPF_JIT is not set
+CONFIG_BPF_UNPRIV_DEFAULT_OFF=y
+CONFIG_USERMODE_DRIVER=y
+# CONFIG_BPF_PRELOAD is not set
+# end of BPF subsystem
+
+CONFIG_PREEMPT_BUILD=y
+# CONFIG_PREEMPT_NONE is not set
+# CONFIG_PREEMPT_VOLUNTARY is not set
+CONFIG_PREEMPT=y
+CONFIG_PREEMPT_COUNT=y
+CONFIG_PREEMPTION=y
+
+#
+# CPU/Task time and stats accounting
+#
+CONFIG_TICK_CPU_ACCOUNTING=y
+# CONFIG_VIRT_CPU_ACCOUNTING_GEN is not set
+# CONFIG_IRQ_TIME_ACCOUNTING is not set
+# CONFIG_BSD_PROCESS_ACCT is not set
+CONFIG_TASKSTATS=y
+CONFIG_TASK_DELAY_ACCT=y
+CONFIG_TASK_XACCT=y
+CONFIG_TASK_IO_ACCOUNTING=y
+# CONFIG_PSI is not set
+# end of CPU/Task time and stats accounting
+
+CONFIG_CPU_ISOLATION=y
+
+#
+# RCU Subsystem
+#
+CONFIG_TREE_RCU=y
+CONFIG_PREEMPT_RCU=y
+# CONFIG_RCU_EXPERT is not set
+CONFIG_SRCU=y
+CONFIG_TREE_SRCU=y
+CONFIG_TASKS_RCU_GENERIC=y
+CONFIG_TASKS_RCU=y
+CONFIG_TASKS_TRACE_RCU=y
+CONFIG_RCU_STALL_COMMON=y
+CONFIG_RCU_NEED_SEGCBLIST=y
+# end of RCU Subsystem
+
+CONFIG_IKCONFIG=m
+CONFIG_IKCONFIG_PROC=y
+# CONFIG_IKHEADERS is not set
+CONFIG_LOG_BUF_SHIFT=18
+CONFIG_LOG_CPU_MAX_BUF_SHIFT=13
+CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=13
+CONFIG_GENERIC_SCHED_CLOCK=y
+
+#
+# Scheduler features
+#
+# end of Scheduler features
+
+CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y
+CONFIG_CC_HAS_INT128=y
+CONFIG_CC_IMPLICIT_FALLTHROUGH="-Wimplicit-fallthrough=5"
+CONFIG_GCC11_NO_ARRAY_BOUNDS=y
+CONFIG_CC_NO_ARRAY_BOUNDS=y
+CONFIG_ARCH_SUPPORTS_INT128=y
+CONFIG_NUMA_BALANCING=y
+CONFIG_NUMA_BALANCING_DEFAULT_ENABLED=y
+CONFIG_CGROUPS=y
+CONFIG_PAGE_COUNTER=y
+# CONFIG_CGROUP_FAVOR_DYNMODS is not set
+CONFIG_MEMCG=y
+CONFIG_MEMCG_KMEM=y
+CONFIG_BLK_CGROUP=y
+CONFIG_CGROUP_WRITEBACK=y
+CONFIG_CGROUP_SCHED=y
+CONFIG_FAIR_GROUP_SCHED=y
+CONFIG_CFS_BANDWIDTH=y
+# CONFIG_RT_GROUP_SCHED is not set
+CONFIG_CGROUP_PIDS=y
+# CONFIG_CGROUP_RDMA is not set
+CONFIG_CGROUP_FREEZER=y
+CONFIG_CGROUP_HUGETLB=y
+CONFIG_CPUSETS=y
+# CONFIG_PROC_PID_CPUSET is not set
+CONFIG_CGROUP_DEVICE=y
+CONFIG_CGROUP_CPUACCT=y
+CONFIG_CGROUP_PERF=y
+CONFIG_CGROUP_BPF=y
+CONFIG_CGROUP_MISC=y
+CONFIG_SOCK_CGROUP_DATA=y
+CONFIG_NAMESPACES=y
+CONFIG_UTS_NS=y
+CONFIG_TIME_NS=y
+CONFIG_IPC_NS=y
+CONFIG_USER_NS=y
+CONFIG_PID_NS=y
+CONFIG_NET_NS=y
+CONFIG_CHECKPOINT_RESTORE=y
+CONFIG_SCHED_AUTOGROUP=y
+# CONFIG_SYSFS_DEPRECATED is not set
+CONFIG_RELAY=y
+CONFIG_BLK_DEV_INITRD=y
+CONFIG_INITRAMFS_SOURCE=""
+# CONFIG_INITRAMFS_FORCE is not set
+CONFIG_RD_GZIP=y
+# CONFIG_RD_BZIP2 is not set
+CONFIG_RD_LZMA=y
+CONFIG_RD_XZ=y
+CONFIG_RD_LZO=y
+CONFIG_RD_LZ4=y
+CONFIG_RD_ZSTD=y
+CONFIG_BOOT_CONFIG=y
+# CONFIG_BOOT_CONFIG_EMBED is not set
+CONFIG_INITRAMFS_PRESERVE_MTIME=y
+CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE=y
+# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
+CONFIG_SYSCTL=y
+CONFIG_SYSCTL_EXCEPTION_TRACE=y
+# CONFIG_EXPERT is not set
+CONFIG_MULTIUSER=y
+CONFIG_SYSFS_SYSCALL=y
+CONFIG_FHANDLE=y
+CONFIG_POSIX_TIMERS=y
+CONFIG_PRINTK=y
+CONFIG_BUG=y
+CONFIG_ELF_CORE=y
+CONFIG_BASE_FULL=y
+CONFIG_FUTEX=y
+CONFIG_FUTEX_PI=y
+CONFIG_EPOLL=y
+CONFIG_SIGNALFD=y
+CONFIG_TIMERFD=y
+CONFIG_EVENTFD=y
+CONFIG_SHMEM=y
+CONFIG_AIO=y
+CONFIG_IO_URING=y
+CONFIG_ADVISE_SYSCALLS=y
+CONFIG_MEMBARRIER=y
+CONFIG_KALLSYMS=y
+CONFIG_KALLSYMS_BASE_RELATIVE=y
+CONFIG_KCMP=y
+CONFIG_RSEQ=y
+# CONFIG_EMBEDDED is not set
+CONFIG_HAVE_PERF_EVENTS=y
+
+#
+# Kernel Performance Events And Counters
+#
+CONFIG_PERF_EVENTS=y
+# end of Kernel Performance Events And Counters
+
+CONFIG_SYSTEM_DATA_VERIFICATION=y
+# CONFIG_PROFILING is not set
+# end of General setup
+
+CONFIG_64BIT=y
+CONFIG_RISCV=y
+CONFIG_ARCH_MMAP_RND_BITS_MIN=18
+CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=8
+CONFIG_ARCH_MMAP_RND_BITS_MAX=24
+CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MAX=17
+CONFIG_RISCV_SBI=y
+CONFIG_MMU=y
+CONFIG_PAGE_OFFSET=0xff60000000000000
+CONFIG_ARCH_SPARSEMEM_ENABLE=y
+CONFIG_ARCH_SELECT_MEMORY_MODEL=y
+CONFIG_ARCH_SUPPORTS_UPROBES=y
+CONFIG_STACKTRACE_SUPPORT=y
+CONFIG_GENERIC_BUG=y
+CONFIG_GENERIC_BUG_RELATIVE_POINTERS=y
+CONFIG_GENERIC_CALIBRATE_DELAY=y
+CONFIG_GENERIC_CSUM=y
+CONFIG_GENERIC_HWEIGHT=y
+CONFIG_FIX_EARLYCON_MEM=y
+CONFIG_PGTABLE_LEVELS=5
+CONFIG_LOCKDEP_SUPPORT=y
+CONFIG_RISCV_DMA_NONCOHERENT=y
+CONFIG_AS_HAS_INSN=y
+
+#
+# SoC selection
+#
+# CONFIG_SOC_MICROCHIP_POLARFIRE is not set
+CONFIG_SOC_SIFIVE=y
+CONFIG_SOC_STARFIVE=y
+CONFIG_SOC_VIRT=y
+CONFIG_ARCH_SOPHGO=y
+# CONFIG_SOPHGO_MULTI_CHIP_CLOCK_SYNC is not set
+# end of SoC selection
+
+#
+# CPU errata selection
+#
+CONFIG_ERRATA_SIFIVE=y
+CONFIG_ERRATA_SIFIVE_CIP_453=y
+CONFIG_ERRATA_SIFIVE_CIP_1200=y
+CONFIG_ERRATA_THEAD=y
+CONFIG_ERRATA_THEAD_PBMT=y
+CONFIG_ERRATA_THEAD_CMO=y
+CONFIG_ERRATA_THEAD_PMU=y
+# end of CPU errata selection
+
+#
+# Platform type
+#
+# CONFIG_NONPORTABLE is not set
+CONFIG_ARCH_RV64I=y
+# CONFIG_CMODEL_MEDLOW is not set
+CONFIG_CMODEL_MEDANY=y
+CONFIG_MODULE_SECTIONS=y
+CONFIG_SMP=y
+# CONFIG_SCHED_MC is not set
+CONFIG_SCHED_CLUSTER=y
+# CONFIG_SCHED_SMT is not set
+CONFIG_NR_CPUS=64
+CONFIG_HOTPLUG_CPU=y
+CONFIG_TUNE_GENERIC=y
+CONFIG_HIGHMEM=y
+CONFIG_FORCE_MAX_ZONEORDER=13
+CONFIG_NUMA=y
+CONFIG_NODES_SHIFT=3
+CONFIG_RISCV_ALTERNATIVE=y
+CONFIG_RISCV_ALTERNATIVE_EARLY=y
+CONFIG_RISCV_ISA_C=y
+CONFIG_RISCV_ISA_SVPBMT=y
+CONFIG_TOOLCHAIN_HAS_ZICBOM=y
+CONFIG_RISCV_ISA_ZICBOM=y
+CONFIG_TOOLCHAIN_HAS_ZIHINTPAUSE=y
+CONFIG_TOOLCHAIN_NEEDS_EXPLICIT_ZICSR_ZIFENCEI=y
+CONFIG_FPU=y
+CONFIG_VECTOR=y
+# end of Platform type
+
+#
+# Kernel features
+#
+# CONFIG_HZ_100 is not set
+CONFIG_HZ_250=y
+# CONFIG_HZ_300 is not set
+# CONFIG_HZ_1000 is not set
+CONFIG_HZ=250
+CONFIG_SCHED_HRTICK=y
+CONFIG_RISCV_SBI_V01=y
+CONFIG_RISCV_BOOT_SPINWAIT=y
+CONFIG_KEXEC=y
+CONFIG_KEXEC_FILE=y
+CONFIG_ARCH_HAS_KEXEC_PURGATORY=y
+# CONFIG_CRASH_DUMP is not set
+CONFIG_COMPAT=y
+# end of Kernel features
+
+#
+# Boot options
+#
+CONFIG_CMDLINE="console=ttyS0,115200"
+# CONFIG_CMDLINE_FALLBACK is not set
+CONFIG_CMDLINE_EXTEND=y
+# CONFIG_CMDLINE_FORCE is not set
+CONFIG_EFI_STUB=y
+CONFIG_EFI=y
+CONFIG_CC_HAVE_STACKPROTECTOR_TLS=y
+CONFIG_STACKPROTECTOR_PER_TASK=y
+# end of Boot options
+
+CONFIG_PORTABLE=y
+
+#
+# Power management options
+#
+CONFIG_PM=y
+# CONFIG_PM_DEBUG is not set
+CONFIG_PM_CLK=y
+CONFIG_PM_GENERIC_DOMAINS=y
+# CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set
+CONFIG_PM_GENERIC_DOMAINS_OF=y
+# end of Power management options
+
+#
+# CPU Power Management
+#
+
+#
+# CPU Idle
+#
+# CONFIG_CPU_IDLE is not set
+# end of CPU Idle
+# end of CPU Power Management
+
+CONFIG_HAVE_KVM_EVENTFD=y
+CONFIG_KVM_MMIO=y
+CONFIG_KVM_GENERIC_DIRTYLOG_READ_PROTECT=y
+CONFIG_HAVE_KVM_VCPU_ASYNC_IOCTL=y
+CONFIG_KVM_XFER_TO_GUEST_WORK=y
+CONFIG_VIRTUALIZATION=y
+CONFIG_KVM=m
+
+#
+# General architecture-dependent options
+#
+CONFIG_CRASH_CORE=y
+CONFIG_KEXEC_CORE=y
+CONFIG_KEXEC_ELF=y
+# CONFIG_KPROBES is not set
+CONFIG_JUMP_LABEL=y
+# CONFIG_STATIC_KEYS_SELFTEST is not set
+CONFIG_HAVE_64BIT_ALIGNED_ACCESS=y
+CONFIG_HAVE_KPROBES=y
+CONFIG_HAVE_KRETPROBES=y
+CONFIG_HAVE_KPROBES_ON_FTRACE=y
+CONFIG_HAVE_FUNCTION_ERROR_INJECTION=y
+CONFIG_TRACE_IRQFLAGS_SUPPORT=y
+CONFIG_HAVE_ARCH_TRACEHOOK=y
+CONFIG_HAVE_DMA_CONTIGUOUS=y
+CONFIG_GENERIC_SMP_IDLE_THREAD=y
+CONFIG_GENERIC_IDLE_POLL_SETUP=y
+CONFIG_ARCH_HAS_FORTIFY_SOURCE=y
+CONFIG_ARCH_HAS_SET_MEMORY=y
+CONFIG_ARCH_HAS_SET_DIRECT_MAP=y
+CONFIG_HAVE_ARCH_THREAD_STRUCT_WHITELIST=y
+CONFIG_HAVE_ASM_MODVERSIONS=y
+CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y
+CONFIG_HAVE_RSEQ=y
+CONFIG_HAVE_FUNCTION_ARG_ACCESS_API=y
+CONFIG_HAVE_PERF_REGS=y
+CONFIG_HAVE_PERF_USER_STACK_DUMP=y
+CONFIG_HAVE_ARCH_JUMP_LABEL=y
+CONFIG_HAVE_ARCH_JUMP_LABEL_RELATIVE=y
+CONFIG_HAVE_ARCH_SECCOMP=y
+CONFIG_HAVE_ARCH_SECCOMP_FILTER=y
+CONFIG_SECCOMP=y
+CONFIG_SECCOMP_FILTER=y
+# CONFIG_SECCOMP_CACHE_DEBUG is not set
+CONFIG_HAVE_STACKPROTECTOR=y
+CONFIG_STACKPROTECTOR=y
+CONFIG_STACKPROTECTOR_STRONG=y
+CONFIG_LTO_NONE=y
+CONFIG_HAVE_CONTEXT_TRACKING_USER=y
+CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y
+CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y
+CONFIG_HAVE_MOVE_PUD=y
+CONFIG_HAVE_MOVE_PMD=y
+CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y
+CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y
+CONFIG_HAVE_MOD_ARCH_SPECIFIC=y
+CONFIG_MODULES_USE_ELF_RELA=y
+CONFIG_ARCH_HAS_ELF_RANDOMIZE=y
+CONFIG_HAVE_ARCH_MMAP_RND_BITS=y
+CONFIG_ARCH_MMAP_RND_BITS=18
+CONFIG_HAVE_ARCH_MMAP_RND_COMPAT_BITS=y
+CONFIG_ARCH_MMAP_RND_COMPAT_BITS=8
+CONFIG_PAGE_SIZE_LESS_THAN_64KB=y
+CONFIG_PAGE_SIZE_LESS_THAN_256KB=y
+CONFIG_ARCH_WANT_DEFAULT_TOPDOWN_MMAP_LAYOUT=y
+CONFIG_CLONE_BACKWARDS=y
+CONFIG_COMPAT_32BIT_TIME=y
+CONFIG_HAVE_ARCH_VMAP_STACK=y
+CONFIG_VMAP_STACK=y
+CONFIG_ARCH_OPTIONAL_KERNEL_RWX=y
+CONFIG_ARCH_OPTIONAL_KERNEL_RWX_DEFAULT=y
+CONFIG_ARCH_HAS_STRICT_KERNEL_RWX=y
+CONFIG_STRICT_KERNEL_RWX=y
+CONFIG_ARCH_HAS_STRICT_MODULE_RWX=y
+CONFIG_STRICT_MODULE_RWX=y
+CONFIG_ARCH_USE_MEMREMAP_PROT=y
+CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
+CONFIG_ARCH_SUPPORTS_PAGE_TABLE_CHECK=y
+
+#
+# GCOV-based kernel profiling
+#
+CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y
+# end of GCOV-based kernel profiling
+
+CONFIG_HAVE_GCC_PLUGINS=y
+# CONFIG_GCC_PLUGINS is not set
+# end of General architecture-dependent options
+
+CONFIG_RT_MUTEXES=y
+CONFIG_BASE_SMALL=0
+CONFIG_MODULE_SIG_FORMAT=y
+CONFIG_MODULES=y
+# CONFIG_MODULE_FORCE_LOAD is not set
+CONFIG_MODULE_UNLOAD=y
+# CONFIG_MODULE_FORCE_UNLOAD is not set
+# CONFIG_MODULE_UNLOAD_TAINT_TRACKING is not set
+# CONFIG_MODVERSIONS is not set
+# CONFIG_MODULE_SRCVERSION_ALL is not set
+CONFIG_MODULE_SIG=y
+# CONFIG_MODULE_SIG_FORCE is not set
+CONFIG_MODULE_SIG_ALL=y
+CONFIG_MODULE_SIG_SHA1=y
+# CONFIG_MODULE_SIG_SHA224 is not set
+# CONFIG_MODULE_SIG_SHA256 is not set
+# CONFIG_MODULE_SIG_SHA384 is not set
+# CONFIG_MODULE_SIG_SHA512 is not set
+CONFIG_MODULE_SIG_HASH="sha1"
+# CONFIG_MODULE_COMPRESS_NONE is not set
+CONFIG_MODULE_COMPRESS_GZIP=y
+# CONFIG_MODULE_COMPRESS_XZ is not set
+# CONFIG_MODULE_COMPRESS_ZSTD is not set
+# CONFIG_MODULE_DECOMPRESS is not set
+# CONFIG_MODULE_ALLOW_MISSING_NAMESPACE_IMPORTS is not set
+CONFIG_MODPROBE_PATH="/sbin/modprobe"
+CONFIG_MODULES_TREE_LOOKUP=y
+CONFIG_BLOCK=y
+CONFIG_BLOCK_LEGACY_AUTOLOAD=y
+CONFIG_BLK_CGROUP_RWSTAT=y
+CONFIG_BLK_DEV_BSG_COMMON=y
+CONFIG_BLK_ICQ=y
+# CONFIG_BLK_DEV_BSGLIB is not set
+# CONFIG_BLK_DEV_INTEGRITY is not set
+# CONFIG_BLK_DEV_ZONED is not set
+# CONFIG_BLK_DEV_THROTTLING is not set
+# CONFIG_BLK_WBT is not set
+# CONFIG_BLK_CGROUP_IOLATENCY is not set
+# CONFIG_BLK_CGROUP_IOCOST is not set
+# CONFIG_BLK_CGROUP_IOPRIO is not set
+# CONFIG_BLK_SED_OPAL is not set
+# CONFIG_BLK_INLINE_ENCRYPTION is not set
+
+#
+# Partition Types
+#
+CONFIG_PARTITION_ADVANCED=y
+# CONFIG_ACORN_PARTITION is not set
+# CONFIG_AIX_PARTITION is not set
+# CONFIG_OSF_PARTITION is not set
+# CONFIG_AMIGA_PARTITION is not set
+# CONFIG_ATARI_PARTITION is not set
+# CONFIG_MAC_PARTITION is not set
+CONFIG_MSDOS_PARTITION=y
+# CONFIG_BSD_DISKLABEL is not set
+# CONFIG_MINIX_SUBPARTITION is not set
+# CONFIG_SOLARIS_X86_PARTITION is not set
+# CONFIG_UNIXWARE_DISKLABEL is not set
+# CONFIG_LDM_PARTITION is not set
+# CONFIG_SGI_PARTITION is not set
+# CONFIG_ULTRIX_PARTITION is not set
+# CONFIG_SUN_PARTITION is not set
+# CONFIG_KARMA_PARTITION is not set
+CONFIG_EFI_PARTITION=y
+# CONFIG_SYSV68_PARTITION is not set
+CONFIG_CMDLINE_PARTITION=y
+# end of Partition Types
+
+CONFIG_BLOCK_COMPAT=y
+CONFIG_BLK_MQ_PCI=y
+CONFIG_BLK_MQ_VIRTIO=y
+CONFIG_BLK_PM=y
+
+#
+# IO Schedulers
+#
+CONFIG_MQ_IOSCHED_DEADLINE=m
+CONFIG_MQ_IOSCHED_KYBER=m
+CONFIG_IOSCHED_BFQ=m
+CONFIG_BFQ_GROUP_IOSCHED=y
+# CONFIG_BFQ_CGROUP_DEBUG is not set
+# end of IO Schedulers
+
+CONFIG_PREEMPT_NOTIFIERS=y
+CONFIG_PADATA=y
+CONFIG_ASN1=y
+CONFIG_UNINLINE_SPIN_UNLOCK=y
+CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y
+CONFIG_MUTEX_SPIN_ON_OWNER=y
+CONFIG_RWSEM_SPIN_ON_OWNER=y
+CONFIG_LOCK_SPIN_ON_OWNER=y
+CONFIG_ARCH_USE_QUEUED_RWLOCKS=y
+CONFIG_QUEUED_RWLOCKS=y
+CONFIG_ARCH_HAS_MMIOWB=y
+CONFIG_MMIOWB=y
+CONFIG_ARCH_HAS_NON_OVERLAPPING_ADDRESS_SPACE=y
+CONFIG_FREEZER=y
+
+#
+# Executable file formats
+#
+CONFIG_BINFMT_ELF=y
+CONFIG_COMPAT_BINFMT_ELF=y
+CONFIG_ELFCORE=y
+# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
+CONFIG_BINFMT_SCRIPT=y
+CONFIG_ARCH_HAS_BINFMT_FLAT=y
+# CONFIG_BINFMT_FLAT is not set
+CONFIG_BINFMT_MISC=m
+CONFIG_COREDUMP=y
+# end of Executable file formats
+
+#
+# Memory Management options
+#
+CONFIG_ZPOOL=y
+CONFIG_SWAP=y
+CONFIG_ZSWAP=y
+# CONFIG_ZSWAP_DEFAULT_ON is not set
+# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_DEFLATE is not set
+CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZO=y
+# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_842 is not set
+# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZ4 is not set
+# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZ4HC is not set
+# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_ZSTD is not set
+CONFIG_ZSWAP_COMPRESSOR_DEFAULT="lzo"
+CONFIG_ZSWAP_ZPOOL_DEFAULT_ZBUD=y
+# CONFIG_ZSWAP_ZPOOL_DEFAULT_Z3FOLD is not set
+# CONFIG_ZSWAP_ZPOOL_DEFAULT_ZSMALLOC is not set
+CONFIG_ZSWAP_ZPOOL_DEFAULT="zbud"
+CONFIG_ZBUD=y
+CONFIG_Z3FOLD=y
+CONFIG_ZSMALLOC=y
+# CONFIG_ZSMALLOC_STAT is not set
+
+#
+# SLAB allocator options
+#
+# CONFIG_SLAB is not set
+CONFIG_SLUB=y
+CONFIG_SLAB_MERGE_DEFAULT=y
+CONFIG_SLAB_FREELIST_RANDOM=y
+# CONFIG_SLAB_FREELIST_HARDENED is not set
+# CONFIG_SLUB_STATS is not set
+CONFIG_SLUB_CPU_PARTIAL=y
+# end of SLAB allocator options
+
+CONFIG_SHUFFLE_PAGE_ALLOCATOR=y
+CONFIG_COMPAT_BRK=y
+CONFIG_SELECT_MEMORY_MODEL=y
+CONFIG_SPARSEMEM_MANUAL=y
+CONFIG_SPARSEMEM=y
+CONFIG_SPARSEMEM_EXTREME=y
+CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y
+# CONFIG_SPARSEMEM_VMEMMAP is not set
+CONFIG_SPLIT_PTLOCK_CPUS=4
+CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK=y
+CONFIG_MEMORY_BALLOON=y
+CONFIG_BALLOON_COMPACTION=y
+CONFIG_COMPACTION=y
+CONFIG_COMPACT_UNEVICTABLE_DEFAULT=1
+CONFIG_PAGE_REPORTING=y
+CONFIG_MIGRATION=y
+CONFIG_ARCH_ENABLE_HUGEPAGE_MIGRATION=y
+CONFIG_ARCH_ENABLE_THP_MIGRATION=y
+CONFIG_PHYS_ADDR_T_64BIT=y
+CONFIG_BOUNCE=y
+CONFIG_MMU_NOTIFIER=y
+CONFIG_KSM=y
+CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
+CONFIG_ARCH_WANT_GENERAL_HUGETLB=y
+CONFIG_ARCH_WANTS_THP_SWAP=y
+CONFIG_TRANSPARENT_HUGEPAGE=y
+CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y
+# CONFIG_TRANSPARENT_HUGEPAGE_MADVISE is not set
+CONFIG_THP_SWAP=y
+# CONFIG_READ_ONLY_THP_FOR_FS is not set
+CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y
+CONFIG_USE_PERCPU_NUMA_NODE_ID=y
+CONFIG_FRONTSWAP=y
+# CONFIG_CMA is not set
+CONFIG_GENERIC_EARLY_IOREMAP=y
+# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set
+# CONFIG_IDLE_PAGE_TRACKING is not set
+CONFIG_ARCH_HAS_CURRENT_STACK_POINTER=y
+CONFIG_ZONE_DMA32=y
+CONFIG_VM_EVENT_COUNTERS=y
+# CONFIG_PERCPU_STATS is not set
+
+#
+# GUP_TEST needs to have DEBUG_FS enabled
+#
+CONFIG_ARCH_HAS_PTE_SPECIAL=y
+CONFIG_KMAP_LOCAL=y
+CONFIG_SECRETMEM=y
+# CONFIG_ANON_VMA_NAME is not set
+# CONFIG_USERFAULTFD is not set
+CONFIG_LRU_GEN=y
+CONFIG_LRU_GEN_ENABLED=y
+# CONFIG_LRU_GEN_STATS is not set
+CONFIG_LOCK_MM_AND_FIND_VMA=y
+
+#
+# Data Access Monitoring
+#
+# CONFIG_DAMON is not set
+# end of Data Access Monitoring
+# end of Memory Management options
+
+CONFIG_NET=y
+CONFIG_COMPAT_NETLINK_MESSAGES=y
+CONFIG_NET_INGRESS=y
+CONFIG_NET_EGRESS=y
+CONFIG_NET_REDIRECT=y
+CONFIG_SKB_EXTENSIONS=y
+
+#
+# Networking options
+#
+CONFIG_PACKET=m
+CONFIG_PACKET_DIAG=m
+CONFIG_UNIX=y
+CONFIG_UNIX_SCM=y
+CONFIG_AF_UNIX_OOB=y
+CONFIG_UNIX_DIAG=m
+CONFIG_TLS=m
+# CONFIG_TLS_DEVICE is not set
+# CONFIG_TLS_TOE is not set
+CONFIG_XFRM=y
+CONFIG_XFRM_ALGO=m
+CONFIG_XFRM_USER=m
+CONFIG_XFRM_INTERFACE=m
+CONFIG_XFRM_SUB_POLICY=y
+CONFIG_XFRM_MIGRATE=y
+CONFIG_XFRM_STATISTICS=y
+CONFIG_XFRM_AH=m
+CONFIG_XFRM_ESP=m
+CONFIG_XFRM_IPCOMP=m
+CONFIG_NET_KEY=m
+CONFIG_NET_KEY_MIGRATE=y
+CONFIG_XDP_SOCKETS=y
+# CONFIG_XDP_SOCKETS_DIAG is not set
+CONFIG_INET=y
+CONFIG_IP_MULTICAST=y
+CONFIG_IP_ADVANCED_ROUTER=y
+# CONFIG_IP_FIB_TRIE_STATS is not set
+CONFIG_IP_MULTIPLE_TABLES=y
+CONFIG_IP_ROUTE_MULTIPATH=y
+CONFIG_IP_ROUTE_VERBOSE=y
+CONFIG_IP_ROUTE_CLASSID=y
+# CONFIG_IP_PNP is not set
+CONFIG_NET_IPIP=m
+CONFIG_NET_IPGRE_DEMUX=m
+CONFIG_NET_IP_TUNNEL=m
+CONFIG_NET_IPGRE=m
+CONFIG_NET_IPGRE_BROADCAST=y
+CONFIG_IP_MROUTE_COMMON=y
+CONFIG_IP_MROUTE=y
+CONFIG_IP_MROUTE_MULTIPLE_TABLES=y
+# CONFIG_IP_PIMSM_V1 is not set
+CONFIG_IP_PIMSM_V2=y
+CONFIG_SYN_COOKIES=y
+CONFIG_NET_IPVTI=m
+CONFIG_NET_UDP_TUNNEL=m
+CONFIG_NET_FOU=m
+CONFIG_NET_FOU_IP_TUNNELS=y
+CONFIG_INET_AH=m
+CONFIG_INET_ESP=m
+# CONFIG_INET_ESP_OFFLOAD is not set
+# CONFIG_INET_ESPINTCP is not set
+CONFIG_INET_IPCOMP=m
+CONFIG_INET_TABLE_PERTURB_ORDER=16
+CONFIG_INET_XFRM_TUNNEL=m
+CONFIG_INET_TUNNEL=m
+CONFIG_INET_DIAG=m
+CONFIG_INET_TCP_DIAG=m
+CONFIG_INET_UDP_DIAG=m
+# CONFIG_INET_RAW_DIAG is not set
+CONFIG_INET_DIAG_DESTROY=y
+CONFIG_TCP_CONG_ADVANCED=y
+CONFIG_TCP_CONG_BIC=m
+CONFIG_TCP_CONG_CUBIC=y
+CONFIG_TCP_CONG_WESTWOOD=m
+CONFIG_TCP_CONG_HTCP=m
+CONFIG_TCP_CONG_HSTCP=m
+CONFIG_TCP_CONG_HYBLA=m
+CONFIG_TCP_CONG_VEGAS=m
+CONFIG_TCP_CONG_NV=m
+CONFIG_TCP_CONG_SCALABLE=m
+CONFIG_TCP_CONG_LP=m
+CONFIG_TCP_CONG_VENO=m
+CONFIG_TCP_CONG_YEAH=m
+CONFIG_TCP_CONG_ILLINOIS=m
+CONFIG_TCP_CONG_DCTCP=m
+CONFIG_TCP_CONG_CDG=m
+CONFIG_TCP_CONG_BBR=m
+CONFIG_DEFAULT_CUBIC=y
+# CONFIG_DEFAULT_RENO is not set
+CONFIG_DEFAULT_TCP_CONG="cubic"
+CONFIG_TCP_MD5SIG=y
+CONFIG_IPV6=y
+CONFIG_IPV6_ROUTER_PREF=y
+CONFIG_IPV6_ROUTE_INFO=y
+# CONFIG_IPV6_OPTIMISTIC_DAD is not set
+CONFIG_INET6_AH=m
+CONFIG_INET6_ESP=m
+# CONFIG_INET6_ESP_OFFLOAD is not set
+# CONFIG_INET6_ESPINTCP is not set
+CONFIG_INET6_IPCOMP=m
+CONFIG_IPV6_MIP6=m
+CONFIG_IPV6_ILA=m
+CONFIG_INET6_XFRM_TUNNEL=m
+CONFIG_INET6_TUNNEL=m
+CONFIG_IPV6_VTI=m
+CONFIG_IPV6_SIT=m
+CONFIG_IPV6_SIT_6RD=y
+CONFIG_IPV6_NDISC_NODETYPE=y
+CONFIG_IPV6_TUNNEL=m
+CONFIG_IPV6_GRE=m
+CONFIG_IPV6_FOU=m
+CONFIG_IPV6_FOU_TUNNEL=m
+CONFIG_IPV6_MULTIPLE_TABLES=y
+CONFIG_IPV6_SUBTREES=y
+CONFIG_IPV6_MROUTE=y
+CONFIG_IPV6_MROUTE_MULTIPLE_TABLES=y
+CONFIG_IPV6_PIMSM_V2=y
+# CONFIG_IPV6_SEG6_LWTUNNEL is not set
+# CONFIG_IPV6_SEG6_HMAC is not set
+# CONFIG_IPV6_RPL_LWTUNNEL is not set
+# CONFIG_IPV6_IOAM6_LWTUNNEL is not set
+# CONFIG_NETLABEL is not set
+CONFIG_MPTCP=y
+CONFIG_INET_MPTCP_DIAG=m
+CONFIG_MPTCP_IPV6=y
+# CONFIG_NETWORK_SECMARK is not set
+# CONFIG_NETWORK_PHY_TIMESTAMPING is not set
+CONFIG_NETFILTER=y
+CONFIG_NETFILTER_ADVANCED=y
+CONFIG_BRIDGE_NETFILTER=m
+
+#
+# Core Netfilter Configuration
+#
+CONFIG_NETFILTER_INGRESS=y
+CONFIG_NETFILTER_EGRESS=y
+CONFIG_NETFILTER_SKIP_EGRESS=y
+CONFIG_NETFILTER_NETLINK=m
+CONFIG_NETFILTER_FAMILY_BRIDGE=y
+CONFIG_NETFILTER_FAMILY_ARP=y
+# CONFIG_NETFILTER_NETLINK_HOOK is not set
+CONFIG_NETFILTER_NETLINK_ACCT=m
+CONFIG_NETFILTER_NETLINK_QUEUE=m
+CONFIG_NETFILTER_NETLINK_LOG=m
+CONFIG_NETFILTER_NETLINK_OSF=m
+CONFIG_NF_CONNTRACK=m
+CONFIG_NF_LOG_SYSLOG=m
+CONFIG_NETFILTER_CONNCOUNT=m
+CONFIG_NF_CONNTRACK_MARK=y
+CONFIG_NF_CONNTRACK_ZONES=y
+CONFIG_NF_CONNTRACK_PROCFS=y
+CONFIG_NF_CONNTRACK_EVENTS=y
+CONFIG_NF_CONNTRACK_TIMEOUT=y
+CONFIG_NF_CONNTRACK_TIMESTAMP=y
+CONFIG_NF_CONNTRACK_LABELS=y
+CONFIG_NF_CT_PROTO_DCCP=y
+CONFIG_NF_CT_PROTO_GRE=y
+CONFIG_NF_CT_PROTO_SCTP=y
+CONFIG_NF_CT_PROTO_UDPLITE=y
+CONFIG_NF_CONNTRACK_AMANDA=m
+CONFIG_NF_CONNTRACK_FTP=m
+CONFIG_NF_CONNTRACK_H323=m
+CONFIG_NF_CONNTRACK_IRC=m
+CONFIG_NF_CONNTRACK_BROADCAST=m
+CONFIG_NF_CONNTRACK_NETBIOS_NS=m
+CONFIG_NF_CONNTRACK_SNMP=m
+CONFIG_NF_CONNTRACK_PPTP=m
+CONFIG_NF_CONNTRACK_SANE=m
+CONFIG_NF_CONNTRACK_SIP=m
+CONFIG_NF_CONNTRACK_TFTP=m
+CONFIG_NF_CT_NETLINK=m
+CONFIG_NF_CT_NETLINK_TIMEOUT=m
+CONFIG_NF_CT_NETLINK_HELPER=m
+CONFIG_NETFILTER_NETLINK_GLUE_CT=y
+CONFIG_NF_NAT=m
+CONFIG_NF_NAT_AMANDA=m
+CONFIG_NF_NAT_FTP=m
+CONFIG_NF_NAT_IRC=m
+CONFIG_NF_NAT_SIP=m
+CONFIG_NF_NAT_TFTP=m
+CONFIG_NF_NAT_REDIRECT=y
+CONFIG_NF_NAT_MASQUERADE=y
+CONFIG_NETFILTER_SYNPROXY=m
+CONFIG_NF_TABLES=m
+CONFIG_NF_TABLES_INET=y
+CONFIG_NF_TABLES_NETDEV=y
+# CONFIG_NFT_NUMGEN is not set
+CONFIG_NFT_CT=m
+CONFIG_NFT_FLOW_OFFLOAD=m
+CONFIG_NFT_CONNLIMIT=m
+CONFIG_NFT_LOG=m
+CONFIG_NFT_LIMIT=m
+CONFIG_NFT_MASQ=m
+CONFIG_NFT_REDIR=m
+CONFIG_NFT_NAT=m
+CONFIG_NFT_TUNNEL=m
+CONFIG_NFT_OBJREF=m
+CONFIG_NFT_QUEUE=m
+CONFIG_NFT_QUOTA=m
+CONFIG_NFT_REJECT=m
+CONFIG_NFT_REJECT_INET=m
+CONFIG_NFT_COMPAT=m
+CONFIG_NFT_HASH=m
+CONFIG_NFT_FIB=m
+CONFIG_NFT_FIB_INET=m
+CONFIG_NFT_XFRM=m
+CONFIG_NFT_SOCKET=m
+CONFIG_NFT_OSF=m
+CONFIG_NFT_TPROXY=m
+CONFIG_NFT_SYNPROXY=m
+CONFIG_NF_DUP_NETDEV=m
+CONFIG_NFT_DUP_NETDEV=m
+CONFIG_NFT_FWD_NETDEV=m
+CONFIG_NFT_FIB_NETDEV=m
+CONFIG_NFT_REJECT_NETDEV=m
+CONFIG_NF_FLOW_TABLE_INET=m
+CONFIG_NF_FLOW_TABLE=m
+# CONFIG_NF_FLOW_TABLE_PROCFS is not set
+CONFIG_NETFILTER_XTABLES=m
+CONFIG_NETFILTER_XTABLES_COMPAT=y
+
+#
+# Xtables combined modules
+#
+CONFIG_NETFILTER_XT_MARK=m
+CONFIG_NETFILTER_XT_CONNMARK=m
+CONFIG_NETFILTER_XT_SET=m
+
+#
+# Xtables targets
+#
+CONFIG_NETFILTER_XT_TARGET_AUDIT=m
+CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m
+CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
+CONFIG_NETFILTER_XT_TARGET_CONNMARK=m
+CONFIG_NETFILTER_XT_TARGET_CT=m
+CONFIG_NETFILTER_XT_TARGET_DSCP=m
+CONFIG_NETFILTER_XT_TARGET_HL=m
+CONFIG_NETFILTER_XT_TARGET_HMARK=m
+CONFIG_NETFILTER_XT_TARGET_IDLETIMER=m
+CONFIG_NETFILTER_XT_TARGET_LED=m
+CONFIG_NETFILTER_XT_TARGET_LOG=m
+CONFIG_NETFILTER_XT_TARGET_MARK=m
+CONFIG_NETFILTER_XT_NAT=m
+CONFIG_NETFILTER_XT_TARGET_NETMAP=m
+CONFIG_NETFILTER_XT_TARGET_NFLOG=m
+CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
+CONFIG_NETFILTER_XT_TARGET_NOTRACK=m
+CONFIG_NETFILTER_XT_TARGET_RATEEST=m
+CONFIG_NETFILTER_XT_TARGET_REDIRECT=m
+CONFIG_NETFILTER_XT_TARGET_MASQUERADE=m
+CONFIG_NETFILTER_XT_TARGET_TEE=m
+CONFIG_NETFILTER_XT_TARGET_TPROXY=m
+CONFIG_NETFILTER_XT_TARGET_TRACE=m
+CONFIG_NETFILTER_XT_TARGET_TCPMSS=m
+CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m
+
+#
+# Xtables matches
+#
+CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m
+CONFIG_NETFILTER_XT_MATCH_BPF=m
+CONFIG_NETFILTER_XT_MATCH_CGROUP=m
+CONFIG_NETFILTER_XT_MATCH_CLUSTER=m
+CONFIG_NETFILTER_XT_MATCH_COMMENT=m
+CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m
+CONFIG_NETFILTER_XT_MATCH_CONNLABEL=m
+CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m
+CONFIG_NETFILTER_XT_MATCH_CONNMARK=m
+CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
+CONFIG_NETFILTER_XT_MATCH_CPU=m
+CONFIG_NETFILTER_XT_MATCH_DCCP=m
+CONFIG_NETFILTER_XT_MATCH_DEVGROUP=m
+CONFIG_NETFILTER_XT_MATCH_DSCP=m
+CONFIG_NETFILTER_XT_MATCH_ECN=m
+CONFIG_NETFILTER_XT_MATCH_ESP=m
+CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
+CONFIG_NETFILTER_XT_MATCH_HELPER=m
+CONFIG_NETFILTER_XT_MATCH_HL=m
+CONFIG_NETFILTER_XT_MATCH_IPCOMP=m
+CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
+CONFIG_NETFILTER_XT_MATCH_IPVS=m
+CONFIG_NETFILTER_XT_MATCH_L2TP=m
+CONFIG_NETFILTER_XT_MATCH_LENGTH=m
+CONFIG_NETFILTER_XT_MATCH_LIMIT=m
+CONFIG_NETFILTER_XT_MATCH_MAC=m
+CONFIG_NETFILTER_XT_MATCH_MARK=m
+CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
+CONFIG_NETFILTER_XT_MATCH_NFACCT=m
+CONFIG_NETFILTER_XT_MATCH_OSF=m
+CONFIG_NETFILTER_XT_MATCH_OWNER=m
+CONFIG_NETFILTER_XT_MATCH_POLICY=m
+CONFIG_NETFILTER_XT_MATCH_PHYSDEV=m
+CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m
+CONFIG_NETFILTER_XT_MATCH_QUOTA=m
+CONFIG_NETFILTER_XT_MATCH_RATEEST=m
+CONFIG_NETFILTER_XT_MATCH_REALM=m
+CONFIG_NETFILTER_XT_MATCH_RECENT=m
+CONFIG_NETFILTER_XT_MATCH_SCTP=m
+CONFIG_NETFILTER_XT_MATCH_SOCKET=m
+CONFIG_NETFILTER_XT_MATCH_STATE=m
+CONFIG_NETFILTER_XT_MATCH_STATISTIC=m
+CONFIG_NETFILTER_XT_MATCH_STRING=m
+CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
+CONFIG_NETFILTER_XT_MATCH_TIME=m
+CONFIG_NETFILTER_XT_MATCH_U32=m
+# end of Core Netfilter Configuration
+
+CONFIG_IP_SET=m
+CONFIG_IP_SET_MAX=256
+CONFIG_IP_SET_BITMAP_IP=m
+CONFIG_IP_SET_BITMAP_IPMAC=m
+CONFIG_IP_SET_BITMAP_PORT=m
+CONFIG_IP_SET_HASH_IP=m
+CONFIG_IP_SET_HASH_IPMARK=m
+CONFIG_IP_SET_HASH_IPPORT=m
+CONFIG_IP_SET_HASH_IPPORTIP=m
+CONFIG_IP_SET_HASH_IPPORTNET=m
+CONFIG_IP_SET_HASH_IPMAC=m
+CONFIG_IP_SET_HASH_MAC=m
+CONFIG_IP_SET_HASH_NETPORTNET=m
+CONFIG_IP_SET_HASH_NET=m
+CONFIG_IP_SET_HASH_NETNET=m
+CONFIG_IP_SET_HASH_NETPORT=m
+CONFIG_IP_SET_HASH_NETIFACE=m
+CONFIG_IP_SET_LIST_SET=m
+CONFIG_IP_VS=m
+CONFIG_IP_VS_IPV6=y
+# CONFIG_IP_VS_DEBUG is not set
+CONFIG_IP_VS_TAB_BITS=12
+
+#
+# IPVS transport protocol load balancing support
+#
+CONFIG_IP_VS_PROTO_TCP=y
+CONFIG_IP_VS_PROTO_UDP=y
+CONFIG_IP_VS_PROTO_AH_ESP=y
+CONFIG_IP_VS_PROTO_ESP=y
+CONFIG_IP_VS_PROTO_AH=y
+CONFIG_IP_VS_PROTO_SCTP=y
+
+#
+# IPVS scheduler
+#
+CONFIG_IP_VS_RR=m
+CONFIG_IP_VS_WRR=m
+CONFIG_IP_VS_LC=m
+CONFIG_IP_VS_WLC=m
+CONFIG_IP_VS_FO=m
+CONFIG_IP_VS_OVF=m
+CONFIG_IP_VS_LBLC=m
+CONFIG_IP_VS_LBLCR=m
+CONFIG_IP_VS_DH=m
+CONFIG_IP_VS_SH=m
+CONFIG_IP_VS_MH=m
+CONFIG_IP_VS_SED=m
+CONFIG_IP_VS_NQ=m
+CONFIG_IP_VS_TWOS=m
+
+#
+# IPVS SH scheduler
+#
+CONFIG_IP_VS_SH_TAB_BITS=8
+
+#
+# IPVS MH scheduler
+#
+CONFIG_IP_VS_MH_TAB_INDEX=12
+
+#
+# IPVS application helper
+#
+CONFIG_IP_VS_FTP=m
+CONFIG_IP_VS_NFCT=y
+CONFIG_IP_VS_PE_SIP=m
+
+#
+# IP: Netfilter Configuration
+#
+CONFIG_NF_DEFRAG_IPV4=m
+CONFIG_NF_SOCKET_IPV4=m
+CONFIG_NF_TPROXY_IPV4=m
+CONFIG_NF_TABLES_IPV4=y
+CONFIG_NFT_REJECT_IPV4=m
+CONFIG_NFT_DUP_IPV4=m
+CONFIG_NFT_FIB_IPV4=m
+CONFIG_NF_TABLES_ARP=y
+CONFIG_NF_DUP_IPV4=m
+CONFIG_NF_LOG_ARP=m
+CONFIG_NF_LOG_IPV4=m
+CONFIG_NF_REJECT_IPV4=m
+CONFIG_NF_NAT_SNMP_BASIC=m
+CONFIG_NF_NAT_PPTP=m
+CONFIG_NF_NAT_H323=m
+CONFIG_IP_NF_IPTABLES=m
+CONFIG_IP_NF_MATCH_AH=m
+CONFIG_IP_NF_MATCH_ECN=m
+CONFIG_IP_NF_MATCH_RPFILTER=m
+CONFIG_IP_NF_MATCH_TTL=m
+CONFIG_IP_NF_FILTER=m
+CONFIG_IP_NF_TARGET_REJECT=m
+CONFIG_IP_NF_TARGET_SYNPROXY=m
+CONFIG_IP_NF_NAT=m
+CONFIG_IP_NF_TARGET_MASQUERADE=m
+CONFIG_IP_NF_TARGET_NETMAP=m
+CONFIG_IP_NF_TARGET_REDIRECT=m
+CONFIG_IP_NF_MANGLE=m
+CONFIG_IP_NF_TARGET_CLUSTERIP=m
+CONFIG_IP_NF_TARGET_ECN=m
+CONFIG_IP_NF_TARGET_TTL=m
+CONFIG_IP_NF_RAW=m
+# CONFIG_IP_NF_SECURITY is not set
+CONFIG_IP_NF_ARPTABLES=m
+CONFIG_IP_NF_ARPFILTER=m
+CONFIG_IP_NF_ARP_MANGLE=m
+# end of IP: Netfilter Configuration
+
+#
+# IPv6: Netfilter Configuration
+#
+CONFIG_NF_SOCKET_IPV6=m
+CONFIG_NF_TPROXY_IPV6=m
+CONFIG_NF_TABLES_IPV6=y
+CONFIG_NFT_REJECT_IPV6=m
+CONFIG_NFT_DUP_IPV6=m
+CONFIG_NFT_FIB_IPV6=m
+CONFIG_NF_DUP_IPV6=m
+CONFIG_NF_REJECT_IPV6=m
+CONFIG_NF_LOG_IPV6=m
+CONFIG_IP6_NF_IPTABLES=m
+CONFIG_IP6_NF_MATCH_AH=m
+CONFIG_IP6_NF_MATCH_EUI64=m
+CONFIG_IP6_NF_MATCH_FRAG=m
+CONFIG_IP6_NF_MATCH_OPTS=m
+CONFIG_IP6_NF_MATCH_HL=m
+CONFIG_IP6_NF_MATCH_IPV6HEADER=m
+CONFIG_IP6_NF_MATCH_MH=m
+CONFIG_IP6_NF_MATCH_RPFILTER=m
+CONFIG_IP6_NF_MATCH_RT=m
+CONFIG_IP6_NF_MATCH_SRH=m
+CONFIG_IP6_NF_TARGET_HL=m
+CONFIG_IP6_NF_FILTER=m
+CONFIG_IP6_NF_TARGET_REJECT=m
+CONFIG_IP6_NF_TARGET_SYNPROXY=m
+CONFIG_IP6_NF_MANGLE=m
+CONFIG_IP6_NF_RAW=m
+CONFIG_IP6_NF_SECURITY=m
+CONFIG_IP6_NF_NAT=m
+CONFIG_IP6_NF_TARGET_MASQUERADE=m
+CONFIG_IP6_NF_TARGET_NPT=m
+# end of IPv6: Netfilter Configuration
+
+CONFIG_NF_DEFRAG_IPV6=m
+CONFIG_NF_TABLES_BRIDGE=m
+# CONFIG_NFT_BRIDGE_META is not set
+CONFIG_NFT_BRIDGE_REJECT=m
+CONFIG_NF_CONNTRACK_BRIDGE=m
+CONFIG_BRIDGE_NF_EBTABLES=m
+CONFIG_BRIDGE_EBT_BROUTE=m
+CONFIG_BRIDGE_EBT_T_FILTER=m
+CONFIG_BRIDGE_EBT_T_NAT=m
+CONFIG_BRIDGE_EBT_802_3=m
+CONFIG_BRIDGE_EBT_AMONG=m
+CONFIG_BRIDGE_EBT_ARP=m
+CONFIG_BRIDGE_EBT_IP=m
+CONFIG_BRIDGE_EBT_IP6=m
+CONFIG_BRIDGE_EBT_LIMIT=m
+CONFIG_BRIDGE_EBT_MARK=m
+CONFIG_BRIDGE_EBT_PKTTYPE=m
+CONFIG_BRIDGE_EBT_STP=m
+CONFIG_BRIDGE_EBT_VLAN=m
+CONFIG_BRIDGE_EBT_ARPREPLY=m
+CONFIG_BRIDGE_EBT_DNAT=m
+CONFIG_BRIDGE_EBT_MARK_T=m
+CONFIG_BRIDGE_EBT_REDIRECT=m
+CONFIG_BRIDGE_EBT_SNAT=m
+CONFIG_BRIDGE_EBT_LOG=m
+CONFIG_BRIDGE_EBT_NFLOG=m
+CONFIG_BPFILTER=y
+CONFIG_BPFILTER_UMH=m
+CONFIG_IP_DCCP=m
+CONFIG_INET_DCCP_DIAG=m
+
+#
+# DCCP CCIDs Configuration
+#
+# CONFIG_IP_DCCP_CCID2_DEBUG is not set
+CONFIG_IP_DCCP_CCID3=y
+# CONFIG_IP_DCCP_CCID3_DEBUG is not set
+CONFIG_IP_DCCP_TFRC_LIB=y
+# end of DCCP CCIDs Configuration
+
+CONFIG_IP_SCTP=m
+# CONFIG_SCTP_DBG_OBJCNT is not set
+# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set
+CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y
+# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set
+CONFIG_SCTP_COOKIE_HMAC_MD5=y
+CONFIG_SCTP_COOKIE_HMAC_SHA1=y
+CONFIG_INET_SCTP_DIAG=m
+CONFIG_RDS=m
+# CONFIG_RDS_TCP is not set
+# CONFIG_RDS_DEBUG is not set
+CONFIG_TIPC=m
+CONFIG_TIPC_MEDIA_UDP=y
+CONFIG_TIPC_CRYPTO=y
+CONFIG_TIPC_DIAG=m
+CONFIG_ATM=m
+CONFIG_ATM_CLIP=m
+# CONFIG_ATM_CLIP_NO_ICMP is not set
+CONFIG_ATM_LANE=m
+CONFIG_ATM_MPOA=m
+CONFIG_ATM_BR2684=m
+# CONFIG_ATM_BR2684_IPFILTER is not set
+CONFIG_L2TP=m
+CONFIG_L2TP_V3=y
+CONFIG_L2TP_IP=m
+CONFIG_L2TP_ETH=m
+CONFIG_STP=m
+CONFIG_GARP=m
+CONFIG_MRP=m
+CONFIG_BRIDGE=m
+CONFIG_BRIDGE_IGMP_SNOOPING=y
+CONFIG_BRIDGE_VLAN_FILTERING=y
+# CONFIG_BRIDGE_MRP is not set
+# CONFIG_BRIDGE_CFM is not set
+# CONFIG_NET_DSA is not set
+CONFIG_VLAN_8021Q=m
+CONFIG_VLAN_8021Q_GVRP=y
+CONFIG_VLAN_8021Q_MVRP=y
+CONFIG_LLC=m
+CONFIG_LLC2=m
+CONFIG_ATALK=m
+CONFIG_DEV_APPLETALK=m
+CONFIG_IPDDP=m
+CONFIG_IPDDP_ENCAP=y
+CONFIG_X25=m
+CONFIG_LAPB=m
+CONFIG_PHONET=m
+CONFIG_6LOWPAN=m
+CONFIG_6LOWPAN_NHC=m
+CONFIG_6LOWPAN_NHC_DEST=m
+CONFIG_6LOWPAN_NHC_FRAGMENT=m
+CONFIG_6LOWPAN_NHC_HOP=m
+CONFIG_6LOWPAN_NHC_IPV6=m
+CONFIG_6LOWPAN_NHC_MOBILITY=m
+CONFIG_6LOWPAN_NHC_ROUTING=m
+CONFIG_6LOWPAN_NHC_UDP=m
+CONFIG_6LOWPAN_GHC_EXT_HDR_HOP=m
+CONFIG_6LOWPAN_GHC_UDP=m
+CONFIG_6LOWPAN_GHC_ICMPV6=m
+CONFIG_6LOWPAN_GHC_EXT_HDR_DEST=m
+CONFIG_6LOWPAN_GHC_EXT_HDR_FRAG=m
+CONFIG_6LOWPAN_GHC_EXT_HDR_ROUTE=m
+CONFIG_IEEE802154=m
+# CONFIG_IEEE802154_NL802154_EXPERIMENTAL is not set
+CONFIG_IEEE802154_SOCKET=m
+CONFIG_IEEE802154_6LOWPAN=m
+CONFIG_MAC802154=m
+CONFIG_NET_SCHED=y
+
+#
+# Queueing/Scheduling
+#
+CONFIG_NET_SCH_CBQ=m
+CONFIG_NET_SCH_HTB=m
+CONFIG_NET_SCH_HFSC=m
+CONFIG_NET_SCH_ATM=m
+CONFIG_NET_SCH_PRIO=m
+CONFIG_NET_SCH_MULTIQ=m
+CONFIG_NET_SCH_RED=m
+CONFIG_NET_SCH_SFB=m
+CONFIG_NET_SCH_SFQ=m
+CONFIG_NET_SCH_TEQL=m
+CONFIG_NET_SCH_TBF=m
+CONFIG_NET_SCH_CBS=m
+CONFIG_NET_SCH_ETF=m
+CONFIG_NET_SCH_TAPRIO=m
+CONFIG_NET_SCH_GRED=m
+CONFIG_NET_SCH_DSMARK=m
+CONFIG_NET_SCH_NETEM=m
+CONFIG_NET_SCH_DRR=m
+CONFIG_NET_SCH_MQPRIO=m
+CONFIG_NET_SCH_SKBPRIO=m
+CONFIG_NET_SCH_CHOKE=m
+CONFIG_NET_SCH_QFQ=m
+CONFIG_NET_SCH_CODEL=m
+CONFIG_NET_SCH_FQ_CODEL=m
+CONFIG_NET_SCH_CAKE=m
+CONFIG_NET_SCH_FQ=m
+CONFIG_NET_SCH_HHF=m
+CONFIG_NET_SCH_PIE=m
+CONFIG_NET_SCH_FQ_PIE=m
+CONFIG_NET_SCH_INGRESS=m
+CONFIG_NET_SCH_PLUG=m
+CONFIG_NET_SCH_ETS=m
+# CONFIG_NET_SCH_DEFAULT is not set
+
+#
+# Classification
+#
+CONFIG_NET_CLS=y
+CONFIG_NET_CLS_BASIC=m
+CONFIG_NET_CLS_ROUTE4=m
+CONFIG_NET_CLS_FW=m
+CONFIG_NET_CLS_U32=m
+CONFIG_CLS_U32_PERF=y
+CONFIG_CLS_U32_MARK=y
+CONFIG_NET_CLS_FLOW=m
+CONFIG_NET_CLS_CGROUP=m
+CONFIG_NET_CLS_BPF=m
+CONFIG_NET_CLS_FLOWER=m
+CONFIG_NET_CLS_MATCHALL=m
+CONFIG_NET_EMATCH=y
+CONFIG_NET_EMATCH_STACK=32
+CONFIG_NET_EMATCH_CMP=m
+CONFIG_NET_EMATCH_NBYTE=m
+CONFIG_NET_EMATCH_U32=m
+CONFIG_NET_EMATCH_META=m
+CONFIG_NET_EMATCH_TEXT=m
+CONFIG_NET_EMATCH_IPSET=m
+CONFIG_NET_EMATCH_IPT=m
+CONFIG_NET_CLS_ACT=y
+CONFIG_NET_ACT_POLICE=m
+CONFIG_NET_ACT_GACT=m
+CONFIG_GACT_PROB=y
+CONFIG_NET_ACT_MIRRED=m
+# CONFIG_NET_ACT_SAMPLE is not set
+CONFIG_NET_ACT_IPT=m
+CONFIG_NET_ACT_NAT=m
+CONFIG_NET_ACT_PEDIT=m
+CONFIG_NET_ACT_SIMP=m
+CONFIG_NET_ACT_SKBEDIT=m
+CONFIG_NET_ACT_CSUM=m
+# CONFIG_NET_ACT_MPLS is not set
+CONFIG_NET_ACT_VLAN=m
+CONFIG_NET_ACT_BPF=m
+CONFIG_NET_ACT_CONNMARK=m
+# CONFIG_NET_ACT_CTINFO is not set
+CONFIG_NET_ACT_SKBMOD=m
+CONFIG_NET_ACT_IFE=m
+CONFIG_NET_ACT_TUNNEL_KEY=m
+# CONFIG_NET_ACT_CT is not set
+# CONFIG_NET_ACT_GATE is not set
+CONFIG_NET_IFE_SKBMARK=m
+CONFIG_NET_IFE_SKBPRIO=m
+CONFIG_NET_IFE_SKBTCINDEX=m
+# CONFIG_NET_TC_SKB_EXT is not set
+CONFIG_NET_SCH_FIFO=y
+# CONFIG_DCB is not set
+CONFIG_DNS_RESOLVER=m
+# CONFIG_BATMAN_ADV is not set
+# CONFIG_OPENVSWITCH is not set
+# CONFIG_VSOCKETS is not set
+CONFIG_NETLINK_DIAG=y
+CONFIG_MPLS=y
+CONFIG_NET_MPLS_GSO=m
+CONFIG_MPLS_ROUTING=m
+CONFIG_MPLS_IPTUNNEL=m
+CONFIG_NET_NSH=m
+# CONFIG_HSR is not set
+CONFIG_NET_SWITCHDEV=y
+CONFIG_NET_L3_MASTER_DEV=y
+CONFIG_QRTR=m
+# CONFIG_QRTR_SMD is not set
+# CONFIG_QRTR_TUN is not set
+CONFIG_NET_NCSI=y
+# CONFIG_NCSI_OEM_CMD_GET_MAC is not set
+# CONFIG_NCSI_OEM_CMD_KEEP_PHY is not set
+CONFIG_PCPU_DEV_REFCNT=y
+CONFIG_RPS=y
+CONFIG_RFS_ACCEL=y
+CONFIG_SOCK_RX_QUEUE_MAPPING=y
+CONFIG_XPS=y
+CONFIG_CGROUP_NET_PRIO=y
+CONFIG_CGROUP_NET_CLASSID=y
+CONFIG_NET_RX_BUSY_POLL=y
+CONFIG_BQL=y
+# CONFIG_BPF_STREAM_PARSER is not set
+CONFIG_NET_FLOW_LIMIT=y
+
+#
+# Network testing
+#
+CONFIG_NET_PKTGEN=m
+# end of Network testing
+# end of Networking options
+
+# CONFIG_HAMRADIO is not set
+# CONFIG_CAN is not set
+# CONFIG_BT is not set
+# CONFIG_AF_RXRPC is not set
+# CONFIG_AF_KCM is not set
+CONFIG_STREAM_PARSER=y
+# CONFIG_MCTP is not set
+CONFIG_FIB_RULES=y
+CONFIG_WIRELESS=y
+CONFIG_WIRELESS_EXT=y
+CONFIG_WEXT_CORE=y
+CONFIG_WEXT_PROC=y
+CONFIG_WEXT_PRIV=y
+CONFIG_CFG80211=m
+# CONFIG_NL80211_TESTMODE is not set
+# CONFIG_CFG80211_DEVELOPER_WARNINGS is not set
+CONFIG_CFG80211_REQUIRE_SIGNED_REGDB=y
+CONFIG_CFG80211_USE_KERNEL_REGDB_KEYS=y
+CONFIG_CFG80211_DEFAULT_PS=y
+CONFIG_CFG80211_CRDA_SUPPORT=y
+CONFIG_CFG80211_WEXT=y
+CONFIG_LIB80211=m
+CONFIG_LIB80211_CRYPT_WEP=m
+CONFIG_LIB80211_CRYPT_CCMP=m
+# CONFIG_LIB80211_DEBUG is not set
+CONFIG_MAC80211=m
+CONFIG_MAC80211_HAS_RC=y
+CONFIG_MAC80211_RC_MINSTREL=y
+CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y
+CONFIG_MAC80211_RC_DEFAULT="minstrel_ht"
+# CONFIG_MAC80211_MESH is not set
+CONFIG_MAC80211_LEDS=y
+# CONFIG_MAC80211_MESSAGE_TRACING is not set
+# CONFIG_MAC80211_DEBUG_MENU is not set
+CONFIG_MAC80211_STA_HASH_MAX_SIZE=0
+CONFIG_RFKILL=m
+CONFIG_RFKILL_LEDS=y
+CONFIG_RFKILL_INPUT=y
+CONFIG_RFKILL_GPIO=m
+CONFIG_NET_9P=m
+CONFIG_NET_9P_FD=m
+CONFIG_NET_9P_VIRTIO=m
+# CONFIG_NET_9P_DEBUG is not set
+# CONFIG_CAIF is not set
+CONFIG_CEPH_LIB=m
+# CONFIG_CEPH_LIB_PRETTYDEBUG is not set
+# CONFIG_CEPH_LIB_USE_DNS_RESOLVER is not set
+# CONFIG_NFC is not set
+# CONFIG_PSAMPLE is not set
+CONFIG_NET_IFE=m
+CONFIG_LWTUNNEL=y
+CONFIG_LWTUNNEL_BPF=y
+CONFIG_DST_CACHE=y
+CONFIG_GRO_CELLS=y
+CONFIG_NET_SELFTESTS=y
+CONFIG_NET_SOCK_MSG=y
+CONFIG_NET_DEVLINK=y
+CONFIG_PAGE_POOL=y
+# CONFIG_PAGE_POOL_STATS is not set
+CONFIG_FAILOVER=m
+CONFIG_ETHTOOL_NETLINK=y
+
+#
+# Device Drivers
+#
+CONFIG_ARM_AMBA=y
+CONFIG_HAVE_PCI=y
+CONFIG_PCI=y
+CONFIG_PCI_DOMAINS=y
+CONFIG_PCI_DOMAINS_GENERIC=y
+CONFIG_PCIEPORTBUS=y
+# CONFIG_PCIEAER is not set
+CONFIG_PCIEASPM=y
+CONFIG_PCIEASPM_DEFAULT=y
+# CONFIG_PCIEASPM_POWERSAVE is not set
+# CONFIG_PCIEASPM_POWER_SUPERSAVE is not set
+# CONFIG_PCIEASPM_PERFORMANCE is not set
+CONFIG_PCIE_PME=y
+# CONFIG_PCIE_PTM is not set
+CONFIG_PCI_MSI=y
+CONFIG_PCI_MSI_IRQ_DOMAIN=y
+CONFIG_PCI_QUIRKS=y
+# CONFIG_PCI_STUB is not set
+CONFIG_PCI_ECAM=y
+# CONFIG_PCI_IOV is not set
+# CONFIG_PCI_PRI is not set
+# CONFIG_PCI_PASID is not set
+CONFIG_VGA_ARB=y
+CONFIG_VGA_ARB_MAX_GPUS=4
+# CONFIG_HOTPLUG_PCI is not set
+
+#
+# PCI controller drivers
+#
+# CONFIG_PCI_FTPCI100 is not set
+CONFIG_PCI_HOST_COMMON=y
+CONFIG_PCI_HOST_GENERIC=y
+CONFIG_PCIE_XILINX=y
+# CONFIG_PCIE_MICROCHIP_HOST is not set
+
+#
+# DesignWare PCI Core Support
+#
+CONFIG_PCIE_DW=y
+CONFIG_PCIE_DW_HOST=y
+# CONFIG_PCIE_DW_PLAT_HOST is not set
+# CONFIG_PCI_MESON is not set
+CONFIG_PCIE_FU740=y
+# end of DesignWare PCI Core Support
+
+#
+# Mobiveil PCIe Core Support
+#
+# end of Mobiveil PCIe Core Support
+
+#
+# Cadence PCIe controllers support
+#
+CONFIG_PCIE_CADENCE=y
+CONFIG_PCIE_CADENCE_HOST=y
+CONFIG_PCIE_CADENCE_PLAT=y
+CONFIG_PCIE_CADENCE_PLAT_HOST=y
+CONFIG_PCIE_CADENCE_SOPHGO=y
+# CONFIG_PCI_J721E_HOST is not set
+# end of Cadence PCIe controllers support
+# end of PCI controller drivers
+
+#
+# PCI Endpoint
+#
+# CONFIG_PCI_ENDPOINT is not set
+# end of PCI Endpoint
+
+#
+# PCI switch controller drivers
+#
+# CONFIG_PCI_SW_SWITCHTEC is not set
+# end of PCI switch controller drivers
+
+# CONFIG_CXL_BUS is not set
+# CONFIG_PCCARD is not set
+# CONFIG_RAPIDIO is not set
+
+#
+# Generic Driver Options
+#
+CONFIG_UEVENT_HELPER=y
+CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
+CONFIG_DEVTMPFS=y
+CONFIG_DEVTMPFS_MOUNT=y
+# CONFIG_DEVTMPFS_SAFE is not set
+CONFIG_STANDALONE=y
+CONFIG_PREVENT_FIRMWARE_BUILD=y
+
+#
+# Firmware loader
+#
+CONFIG_FW_LOADER=y
+CONFIG_FW_LOADER_PAGED_BUF=y
+CONFIG_EXTRA_FIRMWARE=""
+# CONFIG_FW_LOADER_USER_HELPER is not set
+CONFIG_FW_LOADER_COMPRESS=y
+CONFIG_FW_LOADER_COMPRESS_XZ=y
+# CONFIG_FW_LOADER_COMPRESS_ZSTD is not set
+# CONFIG_FW_UPLOAD is not set
+# end of Firmware loader
+
+CONFIG_WANT_DEV_COREDUMP=y
+CONFIG_ALLOW_DEV_COREDUMP=y
+CONFIG_DEV_COREDUMP=y
+# CONFIG_TEST_ASYNC_DRIVER_PROBE is not set
+CONFIG_REGMAP=y
+CONFIG_REGMAP_I2C=m
+CONFIG_REGMAP_SPI=m
+CONFIG_REGMAP_MMIO=y
+CONFIG_DMA_SHARED_BUFFER=y
+# CONFIG_DMA_FENCE_TRACE is not set
+CONFIG_GENERIC_ARCH_TOPOLOGY=y
+CONFIG_GENERIC_ARCH_NUMA=y
+# end of Generic Driver Options
+
+#
+# Bus devices
+#
+# CONFIG_MOXTET is not set
+# CONFIG_MHI_BUS is not set
+# CONFIG_MHI_BUS_EP is not set
+# end of Bus devices
+
+# CONFIG_CONNECTOR is not set
+
+#
+# Firmware Drivers
+#
+
+#
+# ARM System Control and Management Interface Protocol
+#
+# end of ARM System Control and Management Interface Protocol
+
+# CONFIG_SYSFB_SIMPLEFB is not set
+# CONFIG_GOOGLE_FIRMWARE is not set
+
+#
+# EFI (Extensible Firmware Interface) Support
+#
+CONFIG_EFI_ESRT=y
+CONFIG_EFI_PARAMS_FROM_FDT=y
+CONFIG_EFI_RUNTIME_WRAPPERS=y
+CONFIG_EFI_GENERIC_STUB=y
+# CONFIG_EFI_ZBOOT is not set
+# CONFIG_EFI_BOOTLOADER_CONTROL is not set
+# CONFIG_EFI_CAPSULE_LOADER is not set
+# CONFIG_EFI_TEST is not set
+# CONFIG_RESET_ATTACK_MITIGATION is not set
+# CONFIG_EFI_DISABLE_PCI_DMA is not set
+CONFIG_EFI_EARLYCON=y
+# CONFIG_EFI_DISABLE_RUNTIME is not set
+# CONFIG_EFI_COCO_SECRET is not set
+# end of EFI (Extensible Firmware Interface) Support
+
+#
+# Tegra firmware driver
+#
+# end of Tegra firmware driver
+# end of Firmware Drivers
+
+# CONFIG_GNSS is not set
+CONFIG_MTD=m
+CONFIG_MTD_TESTS=m
+
+#
+# Partition parsers
+#
+# CONFIG_MTD_AR7_PARTS is not set
+# CONFIG_MTD_CMDLINE_PARTS is not set
+CONFIG_MTD_OF_PARTS=m
+# CONFIG_MTD_REDBOOT_PARTS is not set
+# end of Partition parsers
+
+#
+# User Modules And Translation Layers
+#
+CONFIG_MTD_BLKDEVS=m
+CONFIG_MTD_BLOCK=m
+CONFIG_MTD_BLOCK_RO=m
+
+#
+# Note that in some cases UBI block is preferred. See MTD_UBI_BLOCK.
+#
+CONFIG_FTL=m
+CONFIG_NFTL=m
+CONFIG_NFTL_RW=y
+CONFIG_INFTL=m
+CONFIG_RFD_FTL=m
+CONFIG_SSFDC=m
+CONFIG_SM_FTL=m
+CONFIG_MTD_OOPS=m
+CONFIG_MTD_SWAP=m
+# CONFIG_MTD_PARTITIONED_MASTER is not set
+
+#
+# RAM/ROM/Flash chip drivers
+#
+CONFIG_MTD_CFI=m
+CONFIG_MTD_JEDECPROBE=m
+CONFIG_MTD_GEN_PROBE=m
+# CONFIG_MTD_CFI_ADV_OPTIONS is not set
+CONFIG_MTD_MAP_BANK_WIDTH_1=y
+CONFIG_MTD_MAP_BANK_WIDTH_2=y
+CONFIG_MTD_MAP_BANK_WIDTH_4=y
+CONFIG_MTD_CFI_I1=y
+CONFIG_MTD_CFI_I2=y
+CONFIG_MTD_CFI_INTELEXT=m
+CONFIG_MTD_CFI_AMDSTD=m
+CONFIG_MTD_CFI_STAA=m
+CONFIG_MTD_CFI_UTIL=m
+CONFIG_MTD_RAM=m
+CONFIG_MTD_ROM=m
+CONFIG_MTD_ABSENT=m
+# end of RAM/ROM/Flash chip drivers
+
+#
+# Mapping drivers for chip access
+#
+CONFIG_MTD_COMPLEX_MAPPINGS=y
+CONFIG_MTD_PHYSMAP=m
+# CONFIG_MTD_PHYSMAP_COMPAT is not set
+# CONFIG_MTD_PHYSMAP_OF is not set
+# CONFIG_MTD_PHYSMAP_GPIO_ADDR is not set
+CONFIG_MTD_PCI=m
+CONFIG_MTD_INTEL_VR_NOR=m
+CONFIG_MTD_PLATRAM=m
+# end of Mapping drivers for chip access
+
+#
+# Self-contained MTD device drivers
+#
+CONFIG_MTD_PMC551=m
+CONFIG_MTD_PMC551_BUGFIX=y
+# CONFIG_MTD_PMC551_DEBUG is not set
+CONFIG_MTD_DATAFLASH=m
+# CONFIG_MTD_DATAFLASH_WRITE_VERIFY is not set
+# CONFIG_MTD_DATAFLASH_OTP is not set
+# CONFIG_MTD_MCHP23K256 is not set
+# CONFIG_MTD_MCHP48L640 is not set
+# CONFIG_MTD_SST25L is not set
+CONFIG_MTD_SLRAM=m
+CONFIG_MTD_PHRAM=m
+CONFIG_MTD_MTDRAM=m
+CONFIG_MTDRAM_TOTAL_SIZE=4096
+CONFIG_MTDRAM_ERASE_SIZE=128
+CONFIG_MTD_BLOCK2MTD=m
+
+#
+# Disk-On-Chip Device Drivers
+#
+# CONFIG_MTD_DOCG3 is not set
+# end of Self-contained MTD device drivers
+
+#
+# NAND
+#
+CONFIG_MTD_NAND_CORE=m
+CONFIG_MTD_ONENAND=m
+# CONFIG_MTD_ONENAND_VERIFY_WRITE is not set
+# CONFIG_MTD_ONENAND_GENERIC is not set
+# CONFIG_MTD_ONENAND_OTP is not set
+# CONFIG_MTD_ONENAND_2X_PROGRAM is not set
+# CONFIG_MTD_RAW_NAND is not set
+CONFIG_MTD_SPI_NAND=m
+
+#
+# ECC engine support
+#
+CONFIG_MTD_NAND_ECC=y
+CONFIG_MTD_NAND_ECC_SW_HAMMING=y
+CONFIG_MTD_NAND_ECC_SW_HAMMING_SMC=y
+CONFIG_MTD_NAND_ECC_SW_BCH=y
+# CONFIG_MTD_NAND_ECC_MXIC is not set
+# end of ECC engine support
+# end of NAND
+
+#
+# LPDDR & LPDDR2 PCM memory drivers
+#
+CONFIG_MTD_LPDDR=m
+CONFIG_MTD_QINFO_PROBE=m
+# end of LPDDR & LPDDR2 PCM memory drivers
+
+CONFIG_MTD_SPI_NOR=m
+CONFIG_MTD_SPI_NOR_USE_4K_SECTORS=y
+# CONFIG_MTD_SPI_NOR_SWP_DISABLE is not set
+CONFIG_MTD_SPI_NOR_SWP_DISABLE_ON_VOLATILE=y
+# CONFIG_MTD_SPI_NOR_SWP_KEEP is not set
+CONFIG_SPI_SOPHGO_SPIFMC=m
+CONFIG_MTD_UBI=m
+CONFIG_MTD_UBI_WL_THRESHOLD=4096
+CONFIG_MTD_UBI_BEB_LIMIT=20
+# CONFIG_MTD_UBI_FASTMAP is not set
+# CONFIG_MTD_UBI_GLUEBI is not set
+# CONFIG_MTD_UBI_BLOCK is not set
+# CONFIG_MTD_HYPERBUS is not set
+CONFIG_DTC=y
+CONFIG_OF=y
+# CONFIG_OF_UNITTEST is not set
+CONFIG_OF_FLATTREE=y
+CONFIG_OF_EARLY_FLATTREE=y
+CONFIG_OF_KOBJ=y
+CONFIG_OF_ADDRESS=y
+CONFIG_OF_IRQ=y
+CONFIG_OF_RESERVED_MEM=y
+# CONFIG_OF_OVERLAY is not set
+CONFIG_OF_NUMA=y
+CONFIG_OF_DMA_DEFAULT_COHERENT=y
+# CONFIG_PARPORT is not set
+CONFIG_BLK_DEV=y
+# CONFIG_BLK_DEV_NULL_BLK is not set
+CONFIG_CDROM=y
+# CONFIG_BLK_DEV_PCIESSD_MTIP32XX is not set
+CONFIG_ZRAM=m
+CONFIG_ZRAM_DEF_COMP_LZORLE=y
+# CONFIG_ZRAM_DEF_COMP_LZO is not set
+CONFIG_ZRAM_DEF_COMP="lzo-rle"
+# CONFIG_ZRAM_WRITEBACK is not set
+CONFIG_BLK_DEV_LOOP=m
+CONFIG_BLK_DEV_LOOP_MIN_COUNT=0
+CONFIG_BLK_DEV_DRBD=m
+# CONFIG_DRBD_FAULT_INJECTION is not set
+CONFIG_BLK_DEV_NBD=m
+CONFIG_BLK_DEV_RAM=m
+CONFIG_BLK_DEV_RAM_COUNT=16
+CONFIG_BLK_DEV_RAM_SIZE=4096
+# CONFIG_CDROM_PKTCDVD is not set
+# CONFIG_ATA_OVER_ETH is not set
+CONFIG_VIRTIO_BLK=m
+CONFIG_BLK_DEV_RBD=m
+# CONFIG_BLK_DEV_UBLK is not set
+
+#
+# NVME Support
+#
+CONFIG_NVME_CORE=m
+CONFIG_BLK_DEV_NVME=m
+CONFIG_NVME_MULTIPATH=y
+CONFIG_NVME_VERBOSE_ERRORS=y
+CONFIG_NVME_HWMON=y
+CONFIG_NVME_FABRICS=m
+# CONFIG_NVME_FC is not set
+# CONFIG_NVME_TCP is not set
+# CONFIG_NVME_AUTH is not set
+CONFIG_NVME_TARGET=m
+# CONFIG_NVME_TARGET_PASSTHRU is not set
+CONFIG_NVME_TARGET_LOOP=m
+# CONFIG_NVME_TARGET_FC is not set
+# CONFIG_NVME_TARGET_TCP is not set
+# CONFIG_NVME_TARGET_AUTH is not set
+# end of NVME Support
+
+#
+# Misc devices
+#
+# CONFIG_AD525X_DPOT is not set
+# CONFIG_DUMMY_IRQ is not set
+# CONFIG_PHANTOM is not set
+# CONFIG_TIFM_CORE is not set
+# CONFIG_ICS932S401 is not set
+# CONFIG_ENCLOSURE_SERVICES is not set
+# CONFIG_HP_ILO is not set
+# CONFIG_APDS9802ALS is not set
+# CONFIG_ISL29003 is not set
+# CONFIG_ISL29020 is not set
+# CONFIG_SENSORS_TSL2550 is not set
+# CONFIG_SENSORS_BH1770 is not set
+# CONFIG_SENSORS_APDS990X is not set
+# CONFIG_HMC6352 is not set
+# CONFIG_DS1682 is not set
+# CONFIG_LATTICE_ECP3_CONFIG is not set
+# CONFIG_SRAM is not set
+# CONFIG_DW_XDATA_PCIE is not set
+# CONFIG_PCI_ENDPOINT_TEST is not set
+# CONFIG_XILINX_SDFEC is not set
+# CONFIG_HISI_HIKEY_USB is not set
+# CONFIG_OPEN_DICE is not set
+CONFIG_VCPU_STALL_DETECTOR=m
+# CONFIG_C2PORT is not set
+
+#
+# EEPROM support
+#
+# CONFIG_EEPROM_AT24 is not set
+# CONFIG_EEPROM_AT25 is not set
+# CONFIG_EEPROM_LEGACY is not set
+# CONFIG_EEPROM_MAX6875 is not set
+# CONFIG_EEPROM_93CX6 is not set
+# CONFIG_EEPROM_93XX46 is not set
+# CONFIG_EEPROM_IDT_89HPESX is not set
+# CONFIG_EEPROM_EE1004 is not set
+# end of EEPROM support
+
+# CONFIG_CB710_CORE is not set
+
+#
+# Texas Instruments shared transport line discipline
+#
+# CONFIG_TI_ST is not set
+# end of Texas Instruments shared transport line discipline
+
+# CONFIG_SENSORS_LIS3_SPI is not set
+# CONFIG_SENSORS_LIS3_I2C is not set
+# CONFIG_ALTERA_STAPL is not set
+# CONFIG_GENWQE is not set
+# CONFIG_ECHO is not set
+# CONFIG_BCM_VK is not set
+# CONFIG_MISC_ALCOR_PCI is not set
+# CONFIG_MISC_RTSX_PCI is not set
+# CONFIG_MISC_RTSX_USB is not set
+# CONFIG_HABANA_AI is not set
+# CONFIG_UACCE is not set
+# CONFIG_PVPANIC is not set
+# CONFIG_GP_PCI1XXXX is not set
+# end of Misc devices
+
+#
+# SCSI device support
+#
+CONFIG_SCSI_MOD=y
+# CONFIG_RAID_ATTRS is not set
+CONFIG_SCSI_COMMON=y
+CONFIG_SCSI=y
+CONFIG_SCSI_DMA=y
+CONFIG_SCSI_PROC_FS=y
+
+#
+# SCSI support type (disk, tape, CD-ROM)
+#
+CONFIG_BLK_DEV_SD=y
+# CONFIG_CHR_DEV_ST is not set
+CONFIG_BLK_DEV_SR=y
+CONFIG_CHR_DEV_SG=m
+CONFIG_BLK_DEV_BSG=y
+# CONFIG_CHR_DEV_SCH is not set
+# CONFIG_SCSI_CONSTANTS is not set
+# CONFIG_SCSI_LOGGING is not set
+# CONFIG_SCSI_SCAN_ASYNC is not set
+
+#
+# SCSI Transports
+#
+# CONFIG_SCSI_SPI_ATTRS is not set
+# CONFIG_SCSI_FC_ATTRS is not set
+# CONFIG_SCSI_ISCSI_ATTRS is not set
+# CONFIG_SCSI_SAS_ATTRS is not set
+# CONFIG_SCSI_SAS_LIBSAS is not set
+# CONFIG_SCSI_SRP_ATTRS is not set
+# end of SCSI Transports
+
+CONFIG_SCSI_LOWLEVEL=y
+# CONFIG_ISCSI_TCP is not set
+# CONFIG_ISCSI_BOOT_SYSFS is not set
+# CONFIG_SCSI_CXGB3_ISCSI is not set
+# CONFIG_SCSI_CXGB4_ISCSI is not set
+# CONFIG_SCSI_BNX2_ISCSI is not set
+# CONFIG_BE2ISCSI is not set
+# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
+# CONFIG_SCSI_HPSA is not set
+# CONFIG_SCSI_3W_9XXX is not set
+# CONFIG_SCSI_3W_SAS is not set
+# CONFIG_SCSI_ACARD is not set
+# CONFIG_SCSI_AACRAID is not set
+# CONFIG_SCSI_AIC7XXX is not set
+# CONFIG_SCSI_AIC79XX is not set
+# CONFIG_SCSI_AIC94XX is not set
+# CONFIG_SCSI_MVSAS is not set
+# CONFIG_SCSI_MVUMI is not set
+# CONFIG_SCSI_ADVANSYS is not set
+# CONFIG_SCSI_ARCMSR is not set
+# CONFIG_SCSI_ESAS2R is not set
+# CONFIG_MEGARAID_NEWGEN is not set
+# CONFIG_MEGARAID_LEGACY is not set
+# CONFIG_MEGARAID_SAS is not set
+# CONFIG_SCSI_MPT3SAS is not set
+# CONFIG_SCSI_MPT2SAS is not set
+# CONFIG_SCSI_MPI3MR is not set
+# CONFIG_SCSI_SMARTPQI is not set
+# CONFIG_SCSI_HPTIOP is not set
+# CONFIG_SCSI_BUSLOGIC is not set
+# CONFIG_SCSI_MYRB is not set
+# CONFIG_SCSI_MYRS is not set
+# CONFIG_SCSI_SNIC is not set
+# CONFIG_SCSI_DMX3191D is not set
+# CONFIG_SCSI_FDOMAIN_PCI is not set
+# CONFIG_SCSI_IPS is not set
+# CONFIG_SCSI_INITIO is not set
+# CONFIG_SCSI_INIA100 is not set
+# CONFIG_SCSI_STEX is not set
+# CONFIG_SCSI_SYM53C8XX_2 is not set
+# CONFIG_SCSI_IPR is not set
+# CONFIG_SCSI_QLOGIC_1280 is not set
+# CONFIG_SCSI_QLA_ISCSI is not set
+# CONFIG_SCSI_DC395x is not set
+# CONFIG_SCSI_AM53C974 is not set
+# CONFIG_SCSI_WD719X is not set
+# CONFIG_SCSI_DEBUG is not set
+# CONFIG_SCSI_PMCRAID is not set
+# CONFIG_SCSI_PM8001 is not set
+CONFIG_SCSI_VIRTIO=m
+# CONFIG_SCSI_DH is not set
+# end of SCSI device support
+
+CONFIG_ATA=m
+CONFIG_SATA_HOST=y
+CONFIG_ATA_VERBOSE_ERROR=y
+CONFIG_ATA_FORCE=y
+CONFIG_SATA_PMP=y
+
+#
+# Controllers with non-SFF native interface
+#
+CONFIG_SATA_AHCI=m
+CONFIG_SATA_MOBILE_LPM_POLICY=0
+CONFIG_SATA_AHCI_PLATFORM=m
+# CONFIG_AHCI_DWC is not set
+# CONFIG_AHCI_CEVA is not set
+# CONFIG_AHCI_QORIQ is not set
+# CONFIG_SATA_INIC162X is not set
+# CONFIG_SATA_ACARD_AHCI is not set
+# CONFIG_SATA_SIL24 is not set
+CONFIG_ATA_SFF=y
+
+#
+# SFF controllers with custom DMA interface
+#
+# CONFIG_PDC_ADMA is not set
+# CONFIG_SATA_QSTOR is not set
+# CONFIG_SATA_SX4 is not set
+CONFIG_ATA_BMDMA=y
+
+#
+# SATA SFF controllers with BMDMA
+#
+# CONFIG_ATA_PIIX is not set
+# CONFIG_SATA_MV is not set
+# CONFIG_SATA_NV is not set
+# CONFIG_SATA_PROMISE is not set
+# CONFIG_SATA_SIL is not set
+# CONFIG_SATA_SIS is not set
+# CONFIG_SATA_SVW is not set
+# CONFIG_SATA_ULI is not set
+# CONFIG_SATA_VIA is not set
+# CONFIG_SATA_VITESSE is not set
+
+#
+# PATA SFF controllers with BMDMA
+#
+# CONFIG_PATA_ALI is not set
+# CONFIG_PATA_AMD is not set
+# CONFIG_PATA_ARTOP is not set
+# CONFIG_PATA_ATIIXP is not set
+# CONFIG_PATA_ATP867X is not set
+# CONFIG_PATA_CMD64X is not set
+# CONFIG_PATA_CYPRESS is not set
+# CONFIG_PATA_EFAR is not set
+# CONFIG_PATA_HPT366 is not set
+# CONFIG_PATA_HPT37X is not set
+# CONFIG_PATA_HPT3X2N is not set
+# CONFIG_PATA_HPT3X3 is not set
+# CONFIG_PATA_IT8213 is not set
+# CONFIG_PATA_IT821X is not set
+# CONFIG_PATA_JMICRON is not set
+# CONFIG_PATA_MARVELL is not set
+# CONFIG_PATA_NETCELL is not set
+# CONFIG_PATA_NINJA32 is not set
+# CONFIG_PATA_NS87415 is not set
+# CONFIG_PATA_OLDPIIX is not set
+# CONFIG_PATA_OPTIDMA is not set
+# CONFIG_PATA_PDC2027X is not set
+# CONFIG_PATA_PDC_OLD is not set
+# CONFIG_PATA_RADISYS is not set
+# CONFIG_PATA_RDC is not set
+# CONFIG_PATA_SCH is not set
+# CONFIG_PATA_SERVERWORKS is not set
+# CONFIG_PATA_SIL680 is not set
+# CONFIG_PATA_SIS is not set
+# CONFIG_PATA_TOSHIBA is not set
+# CONFIG_PATA_TRIFLEX is not set
+# CONFIG_PATA_VIA is not set
+# CONFIG_PATA_WINBOND is not set
+
+#
+# PIO-only SFF controllers
+#
+# CONFIG_PATA_CMD640_PCI is not set
+# CONFIG_PATA_MPIIX is not set
+# CONFIG_PATA_NS87410 is not set
+# CONFIG_PATA_OPTI is not set
+# CONFIG_PATA_OF_PLATFORM is not set
+# CONFIG_PATA_RZ1000 is not set
+
+#
+# Generic fallback / legacy drivers
+#
+# CONFIG_ATA_GENERIC is not set
+# CONFIG_PATA_LEGACY is not set
+# CONFIG_MD is not set
+# CONFIG_TARGET_CORE is not set
+# CONFIG_FUSION is not set
+
+#
+# IEEE 1394 (FireWire) support
+#
+# CONFIG_FIREWIRE is not set
+# CONFIG_FIREWIRE_NOSY is not set
+# end of IEEE 1394 (FireWire) support
+
+CONFIG_NETDEVICES=y
+CONFIG_MII=m
+CONFIG_NET_CORE=y
+CONFIG_BONDING=m
+CONFIG_DUMMY=m
+CONFIG_WIREGUARD=m
+# CONFIG_WIREGUARD_DEBUG is not set
+CONFIG_EQUALIZER=m
+# CONFIG_NET_FC is not set
+CONFIG_IFB=m
+# CONFIG_NET_TEAM is not set
+# CONFIG_MACVLAN is not set
+# CONFIG_IPVLAN is not set
+# CONFIG_VXLAN is not set
+CONFIG_GENEVE=m
+CONFIG_BAREUDP=m
+# CONFIG_GTP is not set
+# CONFIG_AMT is not set
+CONFIG_MACSEC=m
+CONFIG_NETCONSOLE=m
+CONFIG_NETCONSOLE_DYNAMIC=y
+CONFIG_NETPOLL=y
+CONFIG_NET_POLL_CONTROLLER=y
+CONFIG_TUN=m
+# CONFIG_TUN_VNET_CROSS_LE is not set
+CONFIG_VETH=m
+CONFIG_VIRTIO_NET=m
+CONFIG_NLMON=m
+CONFIG_NET_VRF=m
+# CONFIG_ARCNET is not set
+# CONFIG_ATM_DRIVERS is not set
+CONFIG_ETHERNET=y
+CONFIG_MDIO=m
+# CONFIG_NET_VENDOR_3COM is not set
+# CONFIG_NET_VENDOR_ADAPTEC is not set
+# CONFIG_NET_VENDOR_AGERE is not set
+# CONFIG_NET_VENDOR_ALACRITECH is not set
+# CONFIG_NET_VENDOR_ALTEON is not set
+# CONFIG_ALTERA_TSE is not set
+# CONFIG_NET_VENDOR_AMAZON is not set
+# CONFIG_NET_VENDOR_AMD is not set
+# CONFIG_NET_VENDOR_AQUANTIA is not set
+# CONFIG_NET_VENDOR_ARC is not set
+# CONFIG_NET_VENDOR_ASIX is not set
+# CONFIG_NET_VENDOR_ATHEROS is not set
+# CONFIG_NET_VENDOR_BROADCOM is not set
+CONFIG_NET_VENDOR_CADENCE=y
+CONFIG_MACB=m
+CONFIG_MACB_PCI=m
+# CONFIG_NET_VENDOR_CAVIUM is not set
+# CONFIG_NET_VENDOR_CHELSIO is not set
+# CONFIG_NET_VENDOR_CISCO is not set
+# CONFIG_NET_VENDOR_CORTINA is not set
+# CONFIG_NET_VENDOR_DAVICOM is not set
+# CONFIG_DNET is not set
+# CONFIG_NET_VENDOR_DEC is not set
+# CONFIG_NET_VENDOR_DLINK is not set
+# CONFIG_NET_VENDOR_EMULEX is not set
+# CONFIG_NET_VENDOR_ENGLEDER is not set
+# CONFIG_NET_VENDOR_EZCHIP is not set
+CONFIG_NET_VENDOR_FUNGIBLE=y
+CONFIG_FUN_CORE=m
+CONFIG_FUN_ETH=m
+# CONFIG_NET_VENDOR_GOOGLE is not set
+# CONFIG_NET_VENDOR_HUAWEI is not set
+CONFIG_NET_VENDOR_I825XX=y
+CONFIG_NET_VENDOR_INTEL=y
+# CONFIG_E100 is not set
+# CONFIG_E1000 is not set
+CONFIG_E1000E=m
+# CONFIG_IGB is not set
+# CONFIG_IGBVF is not set
+# CONFIG_IXGB is not set
+CONFIG_IXGBE=m
+CONFIG_IXGBE_HWMON=y
+# CONFIG_IXGBEVF is not set
+# CONFIG_I40E is not set
+# CONFIG_I40EVF is not set
+# CONFIG_ICE is not set
+# CONFIG_FM10K is not set
+# CONFIG_IGC is not set
+# CONFIG_NET_VENDOR_WANGXUN is not set
+# CONFIG_JME is not set
+# CONFIG_NET_VENDOR_ADI is not set
+# CONFIG_NET_VENDOR_LITEX is not set
+# CONFIG_NET_VENDOR_MARVELL is not set
+# CONFIG_NET_VENDOR_MELLANOX is not set
+# CONFIG_NET_VENDOR_MICREL is not set
+CONFIG_NET_VENDOR_MICROCHIP=y
+# CONFIG_ENC28J60 is not set
+# CONFIG_ENCX24J600 is not set
+# CONFIG_LAN743X is not set
+# CONFIG_LAN966X_SWITCH is not set
+# CONFIG_NET_VENDOR_MICROSEMI is not set
+# CONFIG_NET_VENDOR_MICROSOFT is not set
+CONFIG_NET_VENDOR_MYRI=y
+# CONFIG_MYRI10GE is not set
+# CONFIG_FEALNX is not set
+# CONFIG_NET_VENDOR_NI is not set
+# CONFIG_NET_VENDOR_NATSEMI is not set
+# CONFIG_NET_VENDOR_NETERION is not set
+# CONFIG_NET_VENDOR_NETRONOME is not set
+# CONFIG_NET_VENDOR_NVIDIA is not set
+# CONFIG_NET_VENDOR_OKI is not set
+CONFIG_ETHOC=m
+# CONFIG_NET_VENDOR_PACKET_ENGINES is not set
+# CONFIG_NET_VENDOR_PENSANDO is not set
+# CONFIG_NET_VENDOR_QLOGIC is not set
+# CONFIG_NET_VENDOR_BROCADE is not set
+# CONFIG_NET_VENDOR_QUALCOMM is not set
+# CONFIG_NET_VENDOR_RDC is not set
+CONFIG_NET_VENDOR_REALTEK=y
+# CONFIG_8139CP is not set
+# CONFIG_8139TOO is not set
+CONFIG_R8169=m
+# CONFIG_NET_VENDOR_RENESAS is not set
+# CONFIG_NET_VENDOR_ROCKER is not set
+# CONFIG_NET_VENDOR_SAMSUNG is not set
+# CONFIG_NET_VENDOR_SEEQ is not set
+# CONFIG_NET_VENDOR_SILAN is not set
+# CONFIG_NET_VENDOR_SIS is not set
+# CONFIG_NET_VENDOR_SOLARFLARE is not set
+# CONFIG_NET_VENDOR_SMSC is not set
+# CONFIG_NET_VENDOR_SOCIONEXT is not set
+CONFIG_NET_VENDOR_STMICRO=y
+CONFIG_STMMAC_ETH=m
+# CONFIG_STMMAC_SELFTESTS is not set
+CONFIG_STMMAC_PLATFORM=m
+# CONFIG_DWMAC_DWC_QOS_ETH is not set
+CONFIG_DWMAC_GENERIC=m
+# CONFIG_DWMAC_INTEL_PLAT is not set
+# CONFIG_STMMAC_PCI is not set
+# CONFIG_NET_VENDOR_SUN is not set
+# CONFIG_NET_VENDOR_SYNOPSYS is not set
+# CONFIG_NET_VENDOR_TEHUTI is not set
+# CONFIG_NET_VENDOR_TI is not set
+# CONFIG_NET_VENDOR_VERTEXCOM is not set
+# CONFIG_NET_VENDOR_VIA is not set
+# CONFIG_NET_VENDOR_WIZNET is not set
+# CONFIG_NET_VENDOR_XILINX is not set
+# CONFIG_FDDI is not set
+# CONFIG_HIPPI is not set
+CONFIG_PHYLINK=m
+CONFIG_PHYLIB=y
+CONFIG_SWPHY=y
+# CONFIG_LED_TRIGGER_PHY is not set
+CONFIG_FIXED_PHY=y
+# CONFIG_SFP is not set
+
+#
+# MII PHY device drivers
+#
+# CONFIG_AMD_PHY is not set
+# CONFIG_ADIN_PHY is not set
+# CONFIG_ADIN1100_PHY is not set
+# CONFIG_AQUANTIA_PHY is not set
+# CONFIG_AX88796B_PHY is not set
+# CONFIG_BROADCOM_PHY is not set
+# CONFIG_BCM54140_PHY is not set
+# CONFIG_BCM7XXX_PHY is not set
+# CONFIG_BCM84881_PHY is not set
+# CONFIG_BCM87XX_PHY is not set
+# CONFIG_CICADA_PHY is not set
+# CONFIG_CORTINA_PHY is not set
+# CONFIG_DAVICOM_PHY is not set
+# CONFIG_ICPLUS_PHY is not set
+# CONFIG_LXT_PHY is not set
+# CONFIG_INTEL_XWAY_PHY is not set
+# CONFIG_LSI_ET1011C_PHY is not set
+# CONFIG_MARVELL_PHY is not set
+# CONFIG_MARVELL_10G_PHY is not set
+# CONFIG_MARVELL_88X2222_PHY is not set
+# CONFIG_MAXLINEAR_GPHY is not set
+# CONFIG_MEDIATEK_GE_PHY is not set
+# CONFIG_MICREL_PHY is not set
+# CONFIG_MICROCHIP_PHY is not set
+# CONFIG_MICROCHIP_T1_PHY is not set
+CONFIG_MICROSEMI_PHY=m
+# CONFIG_MOTORCOMM_PHY is not set
+# CONFIG_NATIONAL_PHY is not set
+# CONFIG_NXP_C45_TJA11XX_PHY is not set
+# CONFIG_NXP_TJA11XX_PHY is not set
+# CONFIG_QSEMI_PHY is not set
+CONFIG_REALTEK_PHY=m
+# CONFIG_RENESAS_PHY is not set
+# CONFIG_ROCKCHIP_PHY is not set
+# CONFIG_SMSC_PHY is not set
+# CONFIG_STE10XP is not set
+# CONFIG_TERANETICS_PHY is not set
+# CONFIG_DP83822_PHY is not set
+# CONFIG_DP83TC811_PHY is not set
+# CONFIG_DP83848_PHY is not set
+# CONFIG_DP83867_PHY is not set
+# CONFIG_DP83869_PHY is not set
+# CONFIG_DP83TD510_PHY is not set
+# CONFIG_VITESSE_PHY is not set
+# CONFIG_XILINX_GMII2RGMII is not set
+# CONFIG_MICREL_KS8995MA is not set
+# CONFIG_PSE_CONTROLLER is not set
+CONFIG_MDIO_DEVICE=y
+CONFIG_MDIO_BUS=y
+CONFIG_FWNODE_MDIO=y
+CONFIG_OF_MDIO=y
+CONFIG_MDIO_DEVRES=y
+# CONFIG_MDIO_BITBANG is not set
+# CONFIG_MDIO_BCM_UNIMAC is not set
+# CONFIG_MDIO_HISI_FEMAC is not set
+# CONFIG_MDIO_MVUSB is not set
+# CONFIG_MDIO_MSCC_MIIM is not set
+# CONFIG_MDIO_OCTEON is not set
+# CONFIG_MDIO_IPQ4019 is not set
+# CONFIG_MDIO_IPQ8064 is not set
+# CONFIG_MDIO_THUNDER is not set
+
+#
+# MDIO Multiplexers
+#
+# CONFIG_MDIO_BUS_MUX_GPIO is not set
+# CONFIG_MDIO_BUS_MUX_MULTIPLEXER is not set
+# CONFIG_MDIO_BUS_MUX_MMIOREG is not set
+
+#
+# PCS device drivers
+#
+CONFIG_PCS_XPCS=m
+# end of PCS device drivers
+
+CONFIG_PPP=m
+CONFIG_PPP_BSDCOMP=m
+CONFIG_PPP_DEFLATE=m
+CONFIG_PPP_FILTER=y
+CONFIG_PPP_MPPE=m
+CONFIG_PPP_MULTILINK=y
+CONFIG_PPPOATM=m
+CONFIG_PPPOE=m
+CONFIG_PPTP=m
+CONFIG_PPPOL2TP=m
+CONFIG_PPP_ASYNC=m
+CONFIG_PPP_SYNC_TTY=m
+CONFIG_SLIP=m
+CONFIG_SLHC=m
+CONFIG_SLIP_COMPRESSED=y
+CONFIG_SLIP_SMART=y
+CONFIG_SLIP_MODE_SLIP6=y
+
+#
+# Host-side USB support is needed for USB Network Adapter support
+#
+CONFIG_USB_NET_DRIVERS=m
+# CONFIG_USB_CATC is not set
+# CONFIG_USB_KAWETH is not set
+# CONFIG_USB_PEGASUS is not set
+# CONFIG_USB_RTL8150 is not set
+# CONFIG_USB_RTL8152 is not set
+# CONFIG_USB_LAN78XX is not set
+# CONFIG_USB_USBNET is not set
+# CONFIG_USB_HSO is not set
+# CONFIG_USB_IPHETH is not set
+CONFIG_WLAN=y
+CONFIG_WLAN_VENDOR_ADMTEK=y
+# CONFIG_ADM8211 is not set
+CONFIG_WLAN_VENDOR_ATH=y
+# CONFIG_ATH_DEBUG is not set
+# CONFIG_ATH5K is not set
+# CONFIG_ATH5K_PCI is not set
+# CONFIG_ATH9K is not set
+# CONFIG_ATH9K_HTC is not set
+# CONFIG_CARL9170 is not set
+# CONFIG_ATH6KL is not set
+# CONFIG_AR5523 is not set
+# CONFIG_WIL6210 is not set
+# CONFIG_ATH10K is not set
+# CONFIG_WCN36XX is not set
+# CONFIG_ATH11K is not set
+CONFIG_WLAN_VENDOR_ATMEL=y
+# CONFIG_ATMEL is not set
+# CONFIG_AT76C50X_USB is not set
+CONFIG_WLAN_VENDOR_BROADCOM=y
+# CONFIG_B43 is not set
+# CONFIG_B43LEGACY is not set
+# CONFIG_BRCMSMAC is not set
+# CONFIG_BRCMFMAC is not set
+CONFIG_WLAN_VENDOR_CISCO=y
+CONFIG_WLAN_VENDOR_INTEL=y
+# CONFIG_IPW2100 is not set
+# CONFIG_IPW2200 is not set
+# CONFIG_IWL4965 is not set
+# CONFIG_IWL3945 is not set
+# CONFIG_IWLWIFI is not set
+CONFIG_WLAN_VENDOR_INTERSIL=y
+# CONFIG_HOSTAP is not set
+# CONFIG_HERMES is not set
+# CONFIG_P54_COMMON is not set
+CONFIG_WLAN_VENDOR_MARVELL=y
+# CONFIG_LIBERTAS is not set
+# CONFIG_LIBERTAS_THINFIRM is not set
+# CONFIG_MWIFIEX is not set
+# CONFIG_MWL8K is not set
+CONFIG_WLAN_VENDOR_MEDIATEK=y
+# CONFIG_MT7601U is not set
+CONFIG_MT76_CORE=m
+CONFIG_MT76_LEDS=y
+CONFIG_MT76_CONNAC_LIB=m
+# CONFIG_MT76x0U is not set
+# CONFIG_MT76x0E is not set
+# CONFIG_MT76x2E is not set
+# CONFIG_MT76x2U is not set
+# CONFIG_MT7603E is not set
+# CONFIG_MT7615E is not set
+# CONFIG_MT7663U is not set
+# CONFIG_MT7663S is not set
+# CONFIG_MT7915E is not set
+CONFIG_MT7921_COMMON=m
+CONFIG_MT7921E=m
+# CONFIG_MT7921S is not set
+# CONFIG_MT7921U is not set
+CONFIG_WLAN_VENDOR_MICROCHIP=y
+# CONFIG_WILC1000_SDIO is not set
+# CONFIG_WILC1000_SPI is not set
+# CONFIG_WLAN_VENDOR_PURELIFI is not set
+CONFIG_WLAN_VENDOR_RALINK=y
+# CONFIG_RT2X00 is not set
+CONFIG_WLAN_VENDOR_REALTEK=y
+# CONFIG_RTL8180 is not set
+# CONFIG_RTL8187 is not set
+# CONFIG_RTL_CARDS is not set
+# CONFIG_RTL8XXXU is not set
+# CONFIG_RTW88 is not set
+# CONFIG_RTW89 is not set
+CONFIG_WLAN_VENDOR_RSI=y
+# CONFIG_RSI_91X is not set
+# CONFIG_WLAN_VENDOR_SILABS is not set
+CONFIG_WLAN_VENDOR_ST=y
+# CONFIG_CW1200 is not set
+CONFIG_WLAN_VENDOR_TI=y
+# CONFIG_WL1251 is not set
+# CONFIG_WL12XX is not set
+# CONFIG_WL18XX is not set
+# CONFIG_WLCORE is not set
+CONFIG_WLAN_VENDOR_ZYDAS=y
+# CONFIG_USB_ZD1201 is not set
+# CONFIG_ZD1211RW is not set
+CONFIG_WLAN_VENDOR_QUANTENNA=y
+# CONFIG_QTNFMAC_PCIE is not set
+# CONFIG_MAC80211_HWSIM is not set
+# CONFIG_USB_NET_RNDIS_WLAN is not set
+# CONFIG_VIRT_WIFI is not set
+# CONFIG_WAN is not set
+CONFIG_IEEE802154_DRIVERS=m
+# CONFIG_IEEE802154_FAKELB is not set
+# CONFIG_IEEE802154_AT86RF230 is not set
+# CONFIG_IEEE802154_MRF24J40 is not set
+# CONFIG_IEEE802154_CC2520 is not set
+# CONFIG_IEEE802154_ATUSB is not set
+# CONFIG_IEEE802154_ADF7242 is not set
+# CONFIG_IEEE802154_CA8210 is not set
+# CONFIG_IEEE802154_MCR20A is not set
+# CONFIG_IEEE802154_HWSIM is not set
+
+#
+# Wireless WAN
+#
+# CONFIG_WWAN is not set
+# end of Wireless WAN
+
+# CONFIG_VMXNET3 is not set
+CONFIG_NET_FAILOVER=m
+# CONFIG_ISDN is not set
+
+#
+# Input device support
+#
+CONFIG_INPUT=y
+CONFIG_INPUT_LEDS=m
+CONFIG_INPUT_FF_MEMLESS=m
+# CONFIG_INPUT_SPARSEKMAP is not set
+# CONFIG_INPUT_MATRIXKMAP is not set
+CONFIG_INPUT_VIVALDIFMAP=y
+
+#
+# Userland interfaces
+#
+CONFIG_INPUT_MOUSEDEV=m
+# CONFIG_INPUT_MOUSEDEV_PSAUX is not set
+CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
+CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
+CONFIG_INPUT_JOYDEV=m
+CONFIG_INPUT_EVDEV=m
+# CONFIG_INPUT_EVBUG is not set
+
+#
+# Input Device Drivers
+#
+CONFIG_INPUT_KEYBOARD=y
+# CONFIG_KEYBOARD_ADP5588 is not set
+# CONFIG_KEYBOARD_ADP5589 is not set
+CONFIG_KEYBOARD_ATKBD=y
+# CONFIG_KEYBOARD_QT1050 is not set
+# CONFIG_KEYBOARD_QT1070 is not set
+# CONFIG_KEYBOARD_QT2160 is not set
+# CONFIG_KEYBOARD_DLINK_DIR685 is not set
+# CONFIG_KEYBOARD_LKKBD is not set
+# CONFIG_KEYBOARD_GPIO is not set
+# CONFIG_KEYBOARD_GPIO_POLLED is not set
+# CONFIG_KEYBOARD_TCA6416 is not set
+# CONFIG_KEYBOARD_TCA8418 is not set
+# CONFIG_KEYBOARD_MATRIX is not set
+# CONFIG_KEYBOARD_LM8323 is not set
+# CONFIG_KEYBOARD_LM8333 is not set
+# CONFIG_KEYBOARD_MAX7359 is not set
+# CONFIG_KEYBOARD_MCS is not set
+# CONFIG_KEYBOARD_MPR121 is not set
+# CONFIG_KEYBOARD_NEWTON is not set
+# CONFIG_KEYBOARD_OPENCORES is not set
+# CONFIG_KEYBOARD_SAMSUNG is not set
+# CONFIG_KEYBOARD_GOLDFISH_EVENTS is not set
+# CONFIG_KEYBOARD_STOWAWAY is not set
+# CONFIG_KEYBOARD_SUNKBD is not set
+# CONFIG_KEYBOARD_OMAP4 is not set
+# CONFIG_KEYBOARD_TM2_TOUCHKEY is not set
+# CONFIG_KEYBOARD_XTKBD is not set
+# CONFIG_KEYBOARD_CAP11XX is not set
+# CONFIG_KEYBOARD_BCM is not set
+# CONFIG_KEYBOARD_CYPRESS_SF is not set
+CONFIG_INPUT_MOUSE=y
+CONFIG_MOUSE_PS2=m
+CONFIG_MOUSE_PS2_ALPS=y
+CONFIG_MOUSE_PS2_BYD=y
+CONFIG_MOUSE_PS2_LOGIPS2PP=y
+CONFIG_MOUSE_PS2_SYNAPTICS=y
+CONFIG_MOUSE_PS2_SYNAPTICS_SMBUS=y
+CONFIG_MOUSE_PS2_CYPRESS=y
+CONFIG_MOUSE_PS2_TRACKPOINT=y
+# CONFIG_MOUSE_PS2_ELANTECH is not set
+# CONFIG_MOUSE_PS2_SENTELIC is not set
+# CONFIG_MOUSE_PS2_TOUCHKIT is not set
+CONFIG_MOUSE_PS2_FOCALTECH=y
+CONFIG_MOUSE_PS2_SMBUS=y
+# CONFIG_MOUSE_SERIAL is not set
+# CONFIG_MOUSE_APPLETOUCH is not set
+# CONFIG_MOUSE_BCM5974 is not set
+# CONFIG_MOUSE_CYAPA is not set
+# CONFIG_MOUSE_ELAN_I2C is not set
+# CONFIG_MOUSE_VSXXXAA is not set
+# CONFIG_MOUSE_GPIO is not set
+# CONFIG_MOUSE_SYNAPTICS_I2C is not set
+# CONFIG_MOUSE_SYNAPTICS_USB is not set
+# CONFIG_INPUT_JOYSTICK is not set
+# CONFIG_INPUT_TABLET is not set
+# CONFIG_INPUT_TOUCHSCREEN is not set
+# CONFIG_INPUT_MISC is not set
+# CONFIG_RMI4_CORE is not set
+
+#
+# Hardware I/O ports
+#
+CONFIG_SERIO=y
+CONFIG_SERIO_SERPORT=y
+# CONFIG_SERIO_AMBAKMI is not set
+# CONFIG_SERIO_PCIPS2 is not set
+CONFIG_SERIO_LIBPS2=y
+# CONFIG_SERIO_RAW is not set
+# CONFIG_SERIO_ALTERA_PS2 is not set
+# CONFIG_SERIO_PS2MULT is not set
+# CONFIG_SERIO_ARC_PS2 is not set
+# CONFIG_SERIO_APBPS2 is not set
+# CONFIG_SERIO_GPIO_PS2 is not set
+# CONFIG_USERIO is not set
+# CONFIG_GAMEPORT is not set
+# end of Hardware I/O ports
+# end of Input device support
+
+#
+# Character devices
+#
+CONFIG_TTY=y
+CONFIG_VT=y
+CONFIG_CONSOLE_TRANSLATIONS=y
+CONFIG_VT_CONSOLE=y
+CONFIG_HW_CONSOLE=y
+CONFIG_VT_HW_CONSOLE_BINDING=y
+CONFIG_UNIX98_PTYS=y
+# CONFIG_LEGACY_PTYS is not set
+# CONFIG_LDISC_AUTOLOAD is not set
+
+#
+# Serial drivers
+#
+CONFIG_SERIAL_EARLYCON=y
+CONFIG_SERIAL_8250=y
+CONFIG_SERIAL_8250_DEPRECATED_OPTIONS=y
+CONFIG_SERIAL_8250_16550A_VARIANTS=y
+# CONFIG_SERIAL_8250_FINTEK is not set
+CONFIG_SERIAL_8250_CONSOLE=y
+CONFIG_SERIAL_8250_PCI=y
+CONFIG_SERIAL_8250_EXAR=y
+CONFIG_SERIAL_8250_NR_UARTS=4
+CONFIG_SERIAL_8250_RUNTIME_UARTS=4
+# CONFIG_SERIAL_8250_EXTENDED is not set
+CONFIG_SERIAL_8250_DWLIB=y
+CONFIG_SERIAL_8250_DW=y
+# CONFIG_SERIAL_8250_RT288X is not set
+# CONFIG_SERIAL_8250_PERICOM is not set
+CONFIG_SERIAL_OF_PLATFORM=y
+
+#
+# Non-8250 serial port support
+#
+# CONFIG_SERIAL_AMBA_PL010 is not set
+# CONFIG_SERIAL_AMBA_PL011 is not set
+CONFIG_SERIAL_EARLYCON_RISCV_SBI=y
+# CONFIG_SERIAL_MAX3100 is not set
+# CONFIG_SERIAL_MAX310X is not set
+# CONFIG_SERIAL_UARTLITE is not set
+CONFIG_SERIAL_CORE=y
+CONFIG_SERIAL_CORE_CONSOLE=y
+# CONFIG_SERIAL_JSM is not set
+CONFIG_SERIAL_SIFIVE=y
+CONFIG_SERIAL_SIFIVE_CONSOLE=y
+# CONFIG_SERIAL_SCCNXP is not set
+# CONFIG_SERIAL_SC16IS7XX is not set
+# CONFIG_SERIAL_ALTERA_JTAGUART is not set
+# CONFIG_SERIAL_ALTERA_UART is not set
+# CONFIG_SERIAL_XILINX_PS_UART is not set
+# CONFIG_SERIAL_ARC is not set
+# CONFIG_SERIAL_RP2 is not set
+# CONFIG_SERIAL_FSL_LPUART is not set
+# CONFIG_SERIAL_FSL_LINFLEXUART is not set
+# CONFIG_SERIAL_CONEXANT_DIGICOLOR is not set
+# CONFIG_SERIAL_SPRD is not set
+# end of Serial drivers
+
+CONFIG_SERIAL_MCTRL_GPIO=y
+# CONFIG_SERIAL_NONSTANDARD is not set
+# CONFIG_GOLDFISH_TTY is not set
+# CONFIG_N_GSM is not set
+# CONFIG_NOZOMI is not set
+# CONFIG_NULL_TTY is not set
+CONFIG_HVC_DRIVER=y
+CONFIG_HVC_RISCV_SBI=y
+# CONFIG_RPMSG_TTY is not set
+# CONFIG_SERIAL_DEV_BUS is not set
+CONFIG_VIRTIO_CONSOLE=y
+# CONFIG_IPMI_HANDLER is not set
+CONFIG_HW_RANDOM=y
+# CONFIG_HW_RANDOM_TIMERIOMEM is not set
+# CONFIG_HW_RANDOM_BA431 is not set
+CONFIG_HW_RANDOM_VIRTIO=m
+# CONFIG_HW_RANDOM_CCTRNG is not set
+# CONFIG_HW_RANDOM_XIPHERA is not set
+# CONFIG_APPLICOM is not set
+CONFIG_DEVMEM=y
+CONFIG_DEVPORT=y
+# CONFIG_TCG_TPM is not set
+# CONFIG_XILLYBUS is not set
+# CONFIG_XILLYUSB is not set
+CONFIG_RANDOM_TRUST_CPU=y
+CONFIG_RANDOM_TRUST_BOOTLOADER=y
+# end of Character devices
+
+#
+# I2C support
+#
+CONFIG_I2C=y
+CONFIG_I2C_BOARDINFO=y
+CONFIG_I2C_COMPAT=y
+CONFIG_I2C_CHARDEV=m
+# CONFIG_I2C_MUX is not set
+CONFIG_I2C_HELPER_AUTO=y
+CONFIG_I2C_ALGOBIT=m
+
+#
+# I2C Hardware Bus support
+#
+
+#
+# PC SMBus host controller drivers
+#
+# CONFIG_I2C_ALI1535 is not set
+# CONFIG_I2C_ALI1563 is not set
+# CONFIG_I2C_ALI15X3 is not set
+# CONFIG_I2C_AMD756 is not set
+# CONFIG_I2C_AMD8111 is not set
+# CONFIG_I2C_I801 is not set
+# CONFIG_I2C_ISCH is not set
+# CONFIG_I2C_PIIX4 is not set
+# CONFIG_I2C_NFORCE2 is not set
+# CONFIG_I2C_NVIDIA_GPU is not set
+# CONFIG_I2C_SIS5595 is not set
+# CONFIG_I2C_SIS630 is not set
+# CONFIG_I2C_SIS96X is not set
+# CONFIG_I2C_VIA is not set
+# CONFIG_I2C_VIAPRO is not set
+
+#
+# I2C system bus drivers (mostly embedded / system-on-chip)
+#
+# CONFIG_I2C_CBUS_GPIO is not set
+CONFIG_I2C_DESIGNWARE_CORE=y
+# CONFIG_I2C_DESIGNWARE_SLAVE is not set
+CONFIG_I2C_DESIGNWARE_PLATFORM=y
+# CONFIG_I2C_DESIGNWARE_PCI is not set
+# CONFIG_I2C_EMEV2 is not set
+# CONFIG_I2C_GPIO is not set
+# CONFIG_I2C_NOMADIK is not set
+# CONFIG_I2C_OCORES is not set
+# CONFIG_I2C_PCA_PLATFORM is not set
+# CONFIG_I2C_RK3X is not set
+# CONFIG_I2C_SIMTEC is not set
+# CONFIG_I2C_XILINX is not set
+
+#
+# External I2C/SMBus adapter drivers
+#
+# CONFIG_I2C_DIOLAN_U2C is not set
+# CONFIG_I2C_CP2615 is not set
+# CONFIG_I2C_PCI1XXXX is not set
+# CONFIG_I2C_ROBOTFUZZ_OSIF is not set
+# CONFIG_I2C_TAOS_EVM is not set
+# CONFIG_I2C_TINY_USB is not set
+
+#
+# Other I2C/SMBus bus drivers
+#
+CONFIG_I2C_VIRTIO=m
+# end of I2C Hardware Bus support
+
+# CONFIG_I2C_STUB is not set
+# CONFIG_I2C_SLAVE is not set
+# CONFIG_I2C_DEBUG_CORE is not set
+# CONFIG_I2C_DEBUG_ALGO is not set
+# CONFIG_I2C_DEBUG_BUS is not set
+# end of I2C support
+
+# CONFIG_I3C is not set
+CONFIG_SPI=y
+CONFIG_SPI_MASTER=y
+CONFIG_SPI_MEM=y
+
+#
+# SPI Master Controller Drivers
+#
+# CONFIG_SPI_ALTERA is not set
+# CONFIG_SPI_AXI_SPI_ENGINE is not set
+# CONFIG_SPI_BITBANG is not set
+# CONFIG_SPI_CADENCE is not set
+# CONFIG_SPI_CADENCE_XSPI is not set
+# CONFIG_SPI_DESIGNWARE is not set
+# CONFIG_SPI_NXP_FLEXSPI is not set
+# CONFIG_SPI_GPIO is not set
+# CONFIG_SPI_FSL_SPI is not set
+# CONFIG_SPI_MICROCHIP_CORE is not set
+# CONFIG_SPI_MICROCHIP_CORE_QSPI is not set
+# CONFIG_SPI_OC_TINY is not set
+# CONFIG_SPI_PL022 is not set
+# CONFIG_SPI_PXA2XX is not set
+# CONFIG_SPI_ROCKCHIP is not set
+# CONFIG_SPI_SC18IS602 is not set
+CONFIG_SPI_SIFIVE=y
+# CONFIG_SPI_MXIC is not set
+# CONFIG_SPI_XCOMM is not set
+# CONFIG_SPI_XILINX is not set
+# CONFIG_SPI_ZYNQMP_GQSPI is not set
+# CONFIG_SPI_AMD is not set
+
+#
+# SPI Multiplexer support
+#
+# CONFIG_SPI_MUX is not set
+
+#
+# SPI Protocol Masters
+#
+# CONFIG_SPI_SPIDEV is not set
+# CONFIG_SPI_LOOPBACK_TEST is not set
+# CONFIG_SPI_TLE62X0 is not set
+# CONFIG_SPI_SLAVE is not set
+# CONFIG_SPMI is not set
+# CONFIG_HSI is not set
+CONFIG_PPS=m
+# CONFIG_PPS_DEBUG is not set
+
+#
+# PPS clients support
+#
+# CONFIG_PPS_CLIENT_KTIMER is not set
+CONFIG_PPS_CLIENT_LDISC=m
+# CONFIG_PPS_CLIENT_GPIO is not set
+
+#
+# PPS generators support
+#
+
+#
+# PTP clock support
+#
+# CONFIG_PTP_1588_CLOCK is not set
+CONFIG_PTP_1588_CLOCK_OPTIONAL=y
+
+#
+# Enable PHYLIB and NETWORK_PHY_TIMESTAMPING to see the additional clocks.
+#
+# end of PTP clock support
+
+CONFIG_PINCTRL=y
+CONFIG_GENERIC_PINCTRL_GROUPS=y
+CONFIG_PINMUX=y
+CONFIG_GENERIC_PINMUX_FUNCTIONS=y
+CONFIG_PINCONF=y
+CONFIG_GENERIC_PINCONF=y
+# CONFIG_PINCTRL_CY8C95X0 is not set
+# CONFIG_PINCTRL_MCP23S08 is not set
+# CONFIG_PINCTRL_MICROCHIP_SGPIO is not set
+# CONFIG_PINCTRL_OCELOT is not set
+# CONFIG_PINCTRL_SINGLE is not set
+# CONFIG_PINCTRL_STMFX is not set
+# CONFIG_PINCTRL_SX150X is not set
+
+#
+# Renesas pinctrl drivers
+#
+# end of Renesas pinctrl drivers
+
+CONFIG_PINCTRL_STARFIVE_JH7100=y
+CONFIG_GPIOLIB=y
+CONFIG_GPIOLIB_FASTPATH_LIMIT=512
+CONFIG_OF_GPIO=y
+CONFIG_GPIOLIB_IRQCHIP=y
+CONFIG_GPIO_CDEV=y
+CONFIG_GPIO_CDEV_V1=y
+CONFIG_GPIO_GENERIC=y
+
+#
+# Memory mapped GPIO drivers
+#
+# CONFIG_GPIO_74XX_MMIO is not set
+# CONFIG_GPIO_ALTERA is not set
+# CONFIG_GPIO_CADENCE is not set
+CONFIG_GPIO_DWAPB=m
+# CONFIG_GPIO_EXAR is not set
+# CONFIG_GPIO_FTGPIO010 is not set
+CONFIG_GPIO_GENERIC_PLATFORM=y
+# CONFIG_GPIO_GRGPIO is not set
+# CONFIG_GPIO_HLWD is not set
+# CONFIG_GPIO_LOGICVC is not set
+# CONFIG_GPIO_MB86S7X is not set
+# CONFIG_GPIO_PL061 is not set
+CONFIG_GPIO_SIFIVE=y
+# CONFIG_GPIO_SYSCON is not set
+# CONFIG_GPIO_XILINX is not set
+# CONFIG_GPIO_AMD_FCH is not set
+# end of Memory mapped GPIO drivers
+
+#
+# I2C GPIO expanders
+#
+# CONFIG_GPIO_ADNP is not set
+# CONFIG_GPIO_GW_PLD is not set
+# CONFIG_GPIO_MAX7300 is not set
+# CONFIG_GPIO_MAX732X is not set
+# CONFIG_GPIO_PCA953X is not set
+# CONFIG_GPIO_PCA9570 is not set
+# CONFIG_GPIO_PCF857X is not set
+# CONFIG_GPIO_TPIC2810 is not set
+# end of I2C GPIO expanders
+
+#
+# MFD GPIO expanders
+#
+# end of MFD GPIO expanders
+
+#
+# PCI GPIO expanders
+#
+# CONFIG_GPIO_BT8XX is not set
+# CONFIG_GPIO_PCI_IDIO_16 is not set
+# CONFIG_GPIO_PCIE_IDIO_24 is not set
+# CONFIG_GPIO_RDC321X is not set
+# end of PCI GPIO expanders
+
+#
+# SPI GPIO expanders
+#
+# CONFIG_GPIO_74X164 is not set
+# CONFIG_GPIO_MAX3191X is not set
+# CONFIG_GPIO_MAX7301 is not set
+# CONFIG_GPIO_MC33880 is not set
+# CONFIG_GPIO_PISOSR is not set
+# CONFIG_GPIO_XRA1403 is not set
+# end of SPI GPIO expanders
+
+#
+# USB GPIO expanders
+#
+# end of USB GPIO expanders
+
+#
+# Virtual GPIO drivers
+#
+CONFIG_GPIO_AGGREGATOR=m
+# CONFIG_GPIO_MOCKUP is not set
+CONFIG_GPIO_VIRTIO=m
+# CONFIG_GPIO_SIM is not set
+# end of Virtual GPIO drivers
+
+# CONFIG_W1 is not set
+CONFIG_POWER_RESET=y
+# CONFIG_POWER_RESET_GPIO is not set
+# CONFIG_POWER_RESET_GPIO_RESTART is not set
+# CONFIG_POWER_RESET_LTC2952 is not set
+# CONFIG_POWER_RESET_RESTART is not set
+CONFIG_POWER_RESET_SYSCON=y
+CONFIG_POWER_RESET_SYSCON_POWEROFF=y
+# CONFIG_SYSCON_REBOOT_MODE is not set
+# CONFIG_NVMEM_REBOOT_MODE is not set
+CONFIG_POWER_SUPPLY=y
+# CONFIG_POWER_SUPPLY_DEBUG is not set
+CONFIG_POWER_SUPPLY_HWMON=y
+# CONFIG_PDA_POWER is not set
+# CONFIG_IP5XXX_POWER is not set
+# CONFIG_TEST_POWER is not set
+# CONFIG_CHARGER_ADP5061 is not set
+# CONFIG_BATTERY_CW2015 is not set
+# CONFIG_BATTERY_DS2780 is not set
+# CONFIG_BATTERY_DS2781 is not set
+# CONFIG_BATTERY_DS2782 is not set
+# CONFIG_BATTERY_SAMSUNG_SDI is not set
+CONFIG_BATTERY_SBS=m
+CONFIG_CHARGER_SBS=m
+# CONFIG_BATTERY_BQ27XXX is not set
+# CONFIG_BATTERY_MAX17040 is not set
+# CONFIG_BATTERY_MAX17042 is not set
+# CONFIG_CHARGER_MAX8903 is not set
+# CONFIG_CHARGER_LP8727 is not set
+# CONFIG_CHARGER_GPIO is not set
+# CONFIG_CHARGER_LT3651 is not set
+# CONFIG_CHARGER_LTC4162L is not set
+# CONFIG_CHARGER_DETECTOR_MAX14656 is not set
+# CONFIG_CHARGER_MAX77976 is not set
+# CONFIG_CHARGER_BQ2415X is not set
+# CONFIG_CHARGER_BQ24257 is not set
+# CONFIG_CHARGER_BQ24735 is not set
+# CONFIG_CHARGER_BQ2515X is not set
+# CONFIG_CHARGER_BQ25890 is not set
+# CONFIG_CHARGER_BQ25980 is not set
+# CONFIG_CHARGER_BQ256XX is not set
+# CONFIG_BATTERY_GAUGE_LTC2941 is not set
+# CONFIG_BATTERY_GOLDFISH is not set
+# CONFIG_BATTERY_RT5033 is not set
+# CONFIG_CHARGER_RT9455 is not set
+# CONFIG_CHARGER_BD99954 is not set
+# CONFIG_BATTERY_UG3105 is not set
+CONFIG_HWMON=y
+# CONFIG_HWMON_DEBUG_CHIP is not set
+
+#
+# Native drivers
+#
+# CONFIG_SENSORS_AD7314 is not set
+# CONFIG_SENSORS_AD7414 is not set
+# CONFIG_SENSORS_AD7418 is not set
+# CONFIG_SENSORS_ADM1025 is not set
+# CONFIG_SENSORS_ADM1026 is not set
+# CONFIG_SENSORS_ADM1029 is not set
+# CONFIG_SENSORS_ADM1031 is not set
+# CONFIG_SENSORS_ADM1177 is not set
+# CONFIG_SENSORS_ADM9240 is not set
+# CONFIG_SENSORS_ADT7310 is not set
+# CONFIG_SENSORS_ADT7410 is not set
+# CONFIG_SENSORS_ADT7411 is not set
+# CONFIG_SENSORS_ADT7462 is not set
+# CONFIG_SENSORS_ADT7470 is not set
+# CONFIG_SENSORS_ADT7475 is not set
+# CONFIG_SENSORS_AHT10 is not set
+# CONFIG_SENSORS_AQUACOMPUTER_D5NEXT is not set
+# CONFIG_SENSORS_AS370 is not set
+# CONFIG_SENSORS_ASC7621 is not set
+# CONFIG_SENSORS_AXI_FAN_CONTROL is not set
+# CONFIG_SENSORS_ATXP1 is not set
+# CONFIG_SENSORS_CORSAIR_CPRO is not set
+# CONFIG_SENSORS_CORSAIR_PSU is not set
+# CONFIG_SENSORS_DRIVETEMP is not set
+# CONFIG_SENSORS_DS620 is not set
+# CONFIG_SENSORS_DS1621 is not set
+# CONFIG_SENSORS_I5K_AMB is not set
+# CONFIG_SENSORS_F71805F is not set
+# CONFIG_SENSORS_F71882FG is not set
+# CONFIG_SENSORS_F75375S is not set
+# CONFIG_SENSORS_GL518SM is not set
+# CONFIG_SENSORS_GL520SM is not set
+# CONFIG_SENSORS_G760A is not set
+# CONFIG_SENSORS_G762 is not set
+# CONFIG_SENSORS_GPIO_FAN is not set
+# CONFIG_SENSORS_HIH6130 is not set
+# CONFIG_SENSORS_IT87 is not set
+# CONFIG_SENSORS_JC42 is not set
+# CONFIG_SENSORS_POWR1220 is not set
+# CONFIG_SENSORS_LINEAGE is not set
+# CONFIG_SENSORS_LTC2945 is not set
+# CONFIG_SENSORS_LTC2947_I2C is not set
+# CONFIG_SENSORS_LTC2947_SPI is not set
+# CONFIG_SENSORS_LTC2990 is not set
+# CONFIG_SENSORS_LTC2992 is not set
+# CONFIG_SENSORS_LTC4151 is not set
+# CONFIG_SENSORS_LTC4215 is not set
+# CONFIG_SENSORS_LTC4222 is not set
+# CONFIG_SENSORS_LTC4245 is not set
+# CONFIG_SENSORS_LTC4260 is not set
+# CONFIG_SENSORS_LTC4261 is not set
+# CONFIG_SENSORS_MAX1111 is not set
+# CONFIG_SENSORS_MAX127 is not set
+# CONFIG_SENSORS_MAX16065 is not set
+# CONFIG_SENSORS_MAX1619 is not set
+# CONFIG_SENSORS_MAX1668 is not set
+# CONFIG_SENSORS_MAX197 is not set
+# CONFIG_SENSORS_MAX31722 is not set
+# CONFIG_SENSORS_MAX31730 is not set
+# CONFIG_SENSORS_MAX31760 is not set
+# CONFIG_SENSORS_MAX6620 is not set
+# CONFIG_SENSORS_MAX6621 is not set
+# CONFIG_SENSORS_MAX6639 is not set
+# CONFIG_SENSORS_MAX6650 is not set
+# CONFIG_SENSORS_MAX6697 is not set
+# CONFIG_SENSORS_MAX31790 is not set
+# CONFIG_SENSORS_MCP3021 is not set
+# CONFIG_SENSORS_TC654 is not set
+# CONFIG_SENSORS_TPS23861 is not set
+# CONFIG_SENSORS_MR75203 is not set
+# CONFIG_SENSORS_ADCXX is not set
+# CONFIG_SENSORS_LM63 is not set
+# CONFIG_SENSORS_LM70 is not set
+# CONFIG_SENSORS_LM73 is not set
+# CONFIG_SENSORS_LM75 is not set
+# CONFIG_SENSORS_LM77 is not set
+# CONFIG_SENSORS_LM78 is not set
+# CONFIG_SENSORS_LM80 is not set
+# CONFIG_SENSORS_LM83 is not set
+# CONFIG_SENSORS_LM85 is not set
+# CONFIG_SENSORS_LM87 is not set
+CONFIG_SENSORS_LM90=m
+# CONFIG_SENSORS_LM92 is not set
+# CONFIG_SENSORS_LM93 is not set
+# CONFIG_SENSORS_LM95234 is not set
+# CONFIG_SENSORS_LM95241 is not set
+# CONFIG_SENSORS_LM95245 is not set
+# CONFIG_SENSORS_PC87360 is not set
+# CONFIG_SENSORS_PC87427 is not set
+# CONFIG_SENSORS_NCT6683 is not set
+# CONFIG_SENSORS_NCT6775_I2C is not set
+# CONFIG_SENSORS_NCT7802 is not set
+# CONFIG_SENSORS_NPCM7XX is not set
+# CONFIG_SENSORS_NZXT_KRAKEN2 is not set
+# CONFIG_SENSORS_NZXT_SMART2 is not set
+# CONFIG_SENSORS_PCF8591 is not set
+# CONFIG_PMBUS is not set
+CONFIG_SENSORS_PWM_FAN=m
+# CONFIG_SENSORS_SBTSI is not set
+# CONFIG_SENSORS_SBRMI is not set
+# CONFIG_SENSORS_SHT15 is not set
+# CONFIG_SENSORS_SHT21 is not set
+# CONFIG_SENSORS_SHT3x is not set
+# CONFIG_SENSORS_SHT4x is not set
+# CONFIG_SENSORS_SHTC1 is not set
+# CONFIG_SENSORS_SIS5595 is not set
+# CONFIG_SENSORS_DME1737 is not set
+# CONFIG_SENSORS_EMC1403 is not set
+# CONFIG_SENSORS_EMC2103 is not set
+# CONFIG_SENSORS_EMC2305 is not set
+# CONFIG_SENSORS_EMC6W201 is not set
+# CONFIG_SENSORS_SMSC47M1 is not set
+# CONFIG_SENSORS_SMSC47M192 is not set
+# CONFIG_SENSORS_SMSC47B397 is not set
+# CONFIG_SENSORS_STTS751 is not set
+# CONFIG_SENSORS_SMM665 is not set
+# CONFIG_SENSORS_ADC128D818 is not set
+# CONFIG_SENSORS_ADS7828 is not set
+# CONFIG_SENSORS_ADS7871 is not set
+# CONFIG_SENSORS_AMC6821 is not set
+# CONFIG_SENSORS_INA209 is not set
+# CONFIG_SENSORS_INA2XX is not set
+# CONFIG_SENSORS_INA238 is not set
+# CONFIG_SENSORS_INA3221 is not set
+# CONFIG_SENSORS_TC74 is not set
+# CONFIG_SENSORS_THMC50 is not set
+# CONFIG_SENSORS_TMP102 is not set
+# CONFIG_SENSORS_TMP103 is not set
+# CONFIG_SENSORS_TMP108 is not set
+# CONFIG_SENSORS_TMP401 is not set
+# CONFIG_SENSORS_TMP421 is not set
+# CONFIG_SENSORS_TMP464 is not set
+# CONFIG_SENSORS_TMP513 is not set
+# CONFIG_SENSORS_VIA686A is not set
+# CONFIG_SENSORS_VT1211 is not set
+# CONFIG_SENSORS_VT8231 is not set
+# CONFIG_SENSORS_W83773G is not set
+# CONFIG_SENSORS_W83781D is not set
+# CONFIG_SENSORS_W83791D is not set
+# CONFIG_SENSORS_W83792D is not set
+# CONFIG_SENSORS_W83793 is not set
+# CONFIG_SENSORS_W83795 is not set
+# CONFIG_SENSORS_W83L785TS is not set
+# CONFIG_SENSORS_W83L786NG is not set
+# CONFIG_SENSORS_W83627HF is not set
+# CONFIG_SENSORS_W83627EHF is not set
+CONFIG_THERMAL=y
+# CONFIG_THERMAL_NETLINK is not set
+# CONFIG_THERMAL_STATISTICS is not set
+CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0
+CONFIG_THERMAL_HWMON=y
+CONFIG_THERMAL_OF=y
+# CONFIG_THERMAL_WRITABLE_TRIPS is not set
+CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y
+# CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE is not set
+# CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE is not set
+# CONFIG_THERMAL_GOV_FAIR_SHARE is not set
+CONFIG_THERMAL_GOV_STEP_WISE=y
+# CONFIG_THERMAL_GOV_BANG_BANG is not set
+# CONFIG_THERMAL_GOV_USER_SPACE is not set
+# CONFIG_CPU_THERMAL is not set
+# CONFIG_THERMAL_EMULATION is not set
+# CONFIG_THERMAL_MMIO is not set
+# CONFIG_WATCHDOG is not set
+CONFIG_SSB_POSSIBLE=y
+# CONFIG_SSB is not set
+CONFIG_BCMA_POSSIBLE=y
+# CONFIG_BCMA is not set
+
+#
+# Multifunction device drivers
+#
+# CONFIG_MFD_ACT8945A is not set
+# CONFIG_MFD_AS3711 is not set
+# CONFIG_MFD_AS3722 is not set
+# CONFIG_PMIC_ADP5520 is not set
+# CONFIG_MFD_AAT2870_CORE is not set
+# CONFIG_MFD_ATMEL_FLEXCOM is not set
+# CONFIG_MFD_ATMEL_HLCDC is not set
+# CONFIG_MFD_BCM590XX is not set
+# CONFIG_MFD_BD9571MWV is not set
+# CONFIG_MFD_AXP20X_I2C is not set
+# CONFIG_MFD_MADERA is not set
+# CONFIG_PMIC_DA903X is not set
+# CONFIG_MFD_DA9052_SPI is not set
+# CONFIG_MFD_DA9052_I2C is not set
+# CONFIG_MFD_DA9055 is not set
+# CONFIG_MFD_DA9062 is not set
+# CONFIG_MFD_DA9063 is not set
+# CONFIG_MFD_DA9150 is not set
+# CONFIG_MFD_DLN2 is not set
+# CONFIG_MFD_GATEWORKS_GSC is not set
+# CONFIG_MFD_MC13XXX_SPI is not set
+# CONFIG_MFD_MC13XXX_I2C is not set
+# CONFIG_MFD_MP2629 is not set
+# CONFIG_MFD_HI6421_PMIC is not set
+# CONFIG_HTC_PASIC3 is not set
+# CONFIG_HTC_I2CPLD is not set
+# CONFIG_LPC_ICH is not set
+# CONFIG_LPC_SCH is not set
+# CONFIG_MFD_IQS62X is not set
+# CONFIG_MFD_JANZ_CMODIO is not set
+# CONFIG_MFD_KEMPLD is not set
+# CONFIG_MFD_88PM800 is not set
+# CONFIG_MFD_88PM805 is not set
+# CONFIG_MFD_88PM860X is not set
+# CONFIG_MFD_MAX14577 is not set
+# CONFIG_MFD_MAX77620 is not set
+# CONFIG_MFD_MAX77650 is not set
+# CONFIG_MFD_MAX77686 is not set
+# CONFIG_MFD_MAX77693 is not set
+# CONFIG_MFD_MAX77714 is not set
+# CONFIG_MFD_MAX77843 is not set
+# CONFIG_MFD_MAX8907 is not set
+# CONFIG_MFD_MAX8925 is not set
+# CONFIG_MFD_MAX8997 is not set
+# CONFIG_MFD_MAX8998 is not set
+# CONFIG_MFD_MT6360 is not set
+# CONFIG_MFD_MT6370 is not set
+# CONFIG_MFD_MT6397 is not set
+# CONFIG_MFD_MENF21BMC is not set
+# CONFIG_MFD_OCELOT is not set
+# CONFIG_EZX_PCAP is not set
+# CONFIG_MFD_CPCAP is not set
+# CONFIG_MFD_VIPERBOARD is not set
+# CONFIG_MFD_NTXEC is not set
+# CONFIG_MFD_RETU is not set
+# CONFIG_MFD_PCF50633 is not set
+# CONFIG_UCB1400_CORE is not set
+# CONFIG_MFD_SY7636A is not set
+# CONFIG_MFD_RDC321X is not set
+# CONFIG_MFD_RT4831 is not set
+# CONFIG_MFD_RT5033 is not set
+# CONFIG_MFD_RT5120 is not set
+# CONFIG_MFD_RC5T583 is not set
+# CONFIG_MFD_RK808 is not set
+# CONFIG_MFD_RN5T618 is not set
+# CONFIG_MFD_SEC_CORE is not set
+# CONFIG_MFD_SI476X_CORE is not set
+# CONFIG_MFD_SM501 is not set
+# CONFIG_MFD_SKY81452 is not set
+# CONFIG_MFD_STMPE is not set
+CONFIG_MFD_SYSCON=y
+# CONFIG_MFD_TI_AM335X_TSCADC is not set
+# CONFIG_MFD_LP3943 is not set
+# CONFIG_MFD_LP8788 is not set
+# CONFIG_MFD_TI_LMU is not set
+# CONFIG_MFD_PALMAS is not set
+# CONFIG_TPS6105X is not set
+# CONFIG_TPS65010 is not set
+# CONFIG_TPS6507X is not set
+# CONFIG_MFD_TPS65086 is not set
+# CONFIG_MFD_TPS65090 is not set
+# CONFIG_MFD_TPS65217 is not set
+# CONFIG_MFD_TI_LP873X is not set
+# CONFIG_MFD_TI_LP87565 is not set
+# CONFIG_MFD_TPS65218 is not set
+# CONFIG_MFD_TPS6586X is not set
+# CONFIG_MFD_TPS65910 is not set
+# CONFIG_MFD_TPS65912_I2C is not set
+# CONFIG_MFD_TPS65912_SPI is not set
+# CONFIG_TWL4030_CORE is not set
+# CONFIG_TWL6040_CORE is not set
+# CONFIG_MFD_WL1273_CORE is not set
+# CONFIG_MFD_LM3533 is not set
+# CONFIG_MFD_TC3589X is not set
+# CONFIG_MFD_TQMX86 is not set
+# CONFIG_MFD_VX855 is not set
+# CONFIG_MFD_LOCHNAGAR is not set
+# CONFIG_MFD_ARIZONA_I2C is not set
+# CONFIG_MFD_ARIZONA_SPI is not set
+# CONFIG_MFD_WM8400 is not set
+# CONFIG_MFD_WM831X_I2C is not set
+# CONFIG_MFD_WM831X_SPI is not set
+# CONFIG_MFD_WM8350_I2C is not set
+# CONFIG_MFD_WM8994 is not set
+# CONFIG_MFD_ROHM_BD718XX is not set
+# CONFIG_MFD_ROHM_BD71828 is not set
+# CONFIG_MFD_ROHM_BD957XMUF is not set
+# CONFIG_MFD_STPMIC1 is not set
+# CONFIG_MFD_STMFX is not set
+# CONFIG_MFD_ATC260X_I2C is not set
+# CONFIG_MFD_QCOM_PM8008 is not set
+# CONFIG_MFD_INTEL_M10_BMC is not set
+# CONFIG_MFD_RSMU_I2C is not set
+# CONFIG_MFD_RSMU_SPI is not set
+# end of Multifunction device drivers
+
+# CONFIG_REGULATOR is not set
+# CONFIG_RC_CORE is not set
+
+#
+# CEC support
+#
+# CONFIG_MEDIA_CEC_SUPPORT is not set
+# end of CEC support
+
+# CONFIG_MEDIA_SUPPORT is not set
+
+#
+# Graphics support
+#
+CONFIG_APERTURE_HELPERS=y
+CONFIG_DRM=m
+CONFIG_DRM_KMS_HELPER=m
+CONFIG_DRM_FBDEV_EMULATION=y
+CONFIG_DRM_FBDEV_OVERALLOC=100
+# CONFIG_DRM_LOAD_EDID_FIRMWARE is not set
+CONFIG_DRM_DP_AUX_BUS=m
+CONFIG_DRM_DISPLAY_HELPER=m
+CONFIG_DRM_DISPLAY_DP_HELPER=y
+CONFIG_DRM_DISPLAY_HDMI_HELPER=y
+# CONFIG_DRM_DP_AUX_CHARDEV is not set
+# CONFIG_DRM_DP_CEC is not set
+CONFIG_DRM_TTM=m
+CONFIG_DRM_BUDDY=m
+CONFIG_DRM_VRAM_HELPER=m
+CONFIG_DRM_TTM_HELPER=m
+CONFIG_DRM_GEM_SHMEM_HELPER=m
+CONFIG_DRM_SCHED=m
+
+#
+# I2C encoder or helper chips
+#
+# CONFIG_DRM_I2C_CH7006 is not set
+# CONFIG_DRM_I2C_SIL164 is not set
+# CONFIG_DRM_I2C_NXP_TDA998X is not set
+# CONFIG_DRM_I2C_NXP_TDA9950 is not set
+# end of I2C encoder or helper chips
+
+#
+# ARM devices
+#
+# CONFIG_DRM_KOMEDA is not set
+# end of ARM devices
+
+CONFIG_DRM_RADEON=m
+# CONFIG_DRM_RADEON_USERPTR is not set
+CONFIG_DRM_AMDGPU=m
+CONFIG_DRM_AMDGPU_SI=y
+CONFIG_DRM_AMDGPU_CIK=y
+# CONFIG_DRM_AMDGPU_USERPTR is not set
+
+#
+# ACP (Audio CoProcessor) Configuration
+#
+# CONFIG_DRM_AMD_ACP is not set
+# end of ACP (Audio CoProcessor) Configuration
+
+#
+# Display Engine Configuration
+#
+CONFIG_DRM_AMD_DC=y
+CONFIG_DRM_AMD_DC_DCN=y
+# CONFIG_DRM_AMD_DC_HDCP is not set
+# CONFIG_DRM_AMD_DC_SI is not set
+# end of Display Engine Configuration
+
+CONFIG_DRM_NOUVEAU=m
+CONFIG_NOUVEAU_LEGACY_CTX_SUPPORT=y
+CONFIG_NOUVEAU_DEBUG=5
+CONFIG_NOUVEAU_DEBUG_DEFAULT=3
+# CONFIG_NOUVEAU_DEBUG_MMU is not set
+# CONFIG_NOUVEAU_DEBUG_PUSH is not set
+CONFIG_DRM_NOUVEAU_BACKLIGHT=y
+CONFIG_DRM_VGEM=m
+# CONFIG_DRM_VKMS is not set
+# CONFIG_DRM_UDL is not set
+# CONFIG_DRM_AST is not set
+# CONFIG_DRM_MGAG200 is not set
+# CONFIG_DRM_RCAR_DW_HDMI is not set
+# CONFIG_DRM_RCAR_USE_LVDS is not set
+# CONFIG_DRM_RCAR_USE_MIPI_DSI is not set
+CONFIG_DRM_QXL=m
+CONFIG_DRM_VIRTIO_GPU=m
+CONFIG_DRM_PANEL=y
+
+#
+# Display Panels
+#
+# CONFIG_DRM_PANEL_ABT_Y030XX067A is not set
+# CONFIG_DRM_PANEL_ARM_VERSATILE is not set
+# CONFIG_DRM_PANEL_LVDS is not set
+# CONFIG_DRM_PANEL_SIMPLE is not set
+CONFIG_DRM_PANEL_EDP=m
+# CONFIG_DRM_PANEL_ILITEK_IL9322 is not set
+# CONFIG_DRM_PANEL_ILITEK_ILI9341 is not set
+# CONFIG_DRM_PANEL_INNOLUX_EJ030NA is not set
+# CONFIG_DRM_PANEL_SAMSUNG_LD9040 is not set
+# CONFIG_DRM_PANEL_LG_LB035Q02 is not set
+# CONFIG_DRM_PANEL_LG_LG4573 is not set
+# CONFIG_DRM_PANEL_NEC_NL8048HL11 is not set
+# CONFIG_DRM_PANEL_NEWVISION_NV3052C is not set
+# CONFIG_DRM_PANEL_NOVATEK_NT39016 is not set
+# CONFIG_DRM_PANEL_OLIMEX_LCD_OLINUXINO is not set
+# CONFIG_DRM_PANEL_SAMSUNG_ATNA33XC20 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_DB7430 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6D27A1 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6E63M0 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6E88A0_AMS452EF01 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0 is not set
+# CONFIG_DRM_PANEL_SEIKO_43WVF1G is not set
+# CONFIG_DRM_PANEL_SITRONIX_ST7789V is not set
+# CONFIG_DRM_PANEL_SONY_ACX565AKM is not set
+# CONFIG_DRM_PANEL_TPO_TD028TTEC1 is not set
+# CONFIG_DRM_PANEL_TPO_TPG110 is not set
+# CONFIG_DRM_PANEL_WIDECHIPS_WS2401 is not set
+# end of Display Panels
+
+CONFIG_DRM_BRIDGE=y
+CONFIG_DRM_PANEL_BRIDGE=y
+
+#
+# Display Interface Bridges
+#
+# CONFIG_DRM_CDNS_DSI is not set
+# CONFIG_DRM_CHIPONE_ICN6211 is not set
+# CONFIG_DRM_CHRONTEL_CH7033 is not set
+# CONFIG_DRM_DISPLAY_CONNECTOR is not set
+# CONFIG_DRM_ITE_IT6505 is not set
+# CONFIG_DRM_LONTIUM_LT8912B is not set
+# CONFIG_DRM_LONTIUM_LT9211 is not set
+# CONFIG_DRM_LONTIUM_LT9611 is not set
+# CONFIG_DRM_LONTIUM_LT9611UXC is not set
+# CONFIG_DRM_ITE_IT66121 is not set
+# CONFIG_DRM_LVDS_CODEC is not set
+# CONFIG_DRM_MEGACHIPS_STDPXXXX_GE_B850V3_FW is not set
+# CONFIG_DRM_NWL_MIPI_DSI is not set
+# CONFIG_DRM_NXP_PTN3460 is not set
+# CONFIG_DRM_PARADE_PS8622 is not set
+# CONFIG_DRM_PARADE_PS8640 is not set
+# CONFIG_DRM_SIL_SII8620 is not set
+# CONFIG_DRM_SII902X is not set
+# CONFIG_DRM_SII9234 is not set
+# CONFIG_DRM_SIMPLE_BRIDGE is not set
+# CONFIG_DRM_THINE_THC63LVD1024 is not set
+# CONFIG_DRM_TOSHIBA_TC358762 is not set
+# CONFIG_DRM_TOSHIBA_TC358764 is not set
+# CONFIG_DRM_TOSHIBA_TC358767 is not set
+# CONFIG_DRM_TOSHIBA_TC358768 is not set
+# CONFIG_DRM_TOSHIBA_TC358775 is not set
+# CONFIG_DRM_TI_DLPC3433 is not set
+# CONFIG_DRM_TI_TFP410 is not set
+# CONFIG_DRM_TI_SN65DSI83 is not set
+# CONFIG_DRM_TI_SN65DSI86 is not set
+# CONFIG_DRM_TI_TPD12S015 is not set
+# CONFIG_DRM_ANALOGIX_ANX6345 is not set
+# CONFIG_DRM_ANALOGIX_ANX78XX is not set
+# CONFIG_DRM_ANALOGIX_ANX7625 is not set
+# CONFIG_DRM_I2C_ADV7511 is not set
+# CONFIG_DRM_CDNS_MHDP8546 is not set
+# end of Display Interface Bridges
+
+# CONFIG_DRM_ETNAVIV is not set
+# CONFIG_DRM_LOGICVC is not set
+# CONFIG_DRM_ARCPGU is not set
+# CONFIG_DRM_BOCHS is not set
+# CONFIG_DRM_CIRRUS_QEMU is not set
+# CONFIG_DRM_GM12U320 is not set
+# CONFIG_DRM_PANEL_MIPI_DBI is not set
+CONFIG_DRM_SIMPLEDRM=m
+# CONFIG_TINYDRM_HX8357D is not set
+# CONFIG_TINYDRM_ILI9163 is not set
+# CONFIG_TINYDRM_ILI9225 is not set
+# CONFIG_TINYDRM_ILI9341 is not set
+# CONFIG_TINYDRM_ILI9486 is not set
+# CONFIG_TINYDRM_MI0283QT is not set
+# CONFIG_TINYDRM_REPAPER is not set
+# CONFIG_TINYDRM_ST7586 is not set
+# CONFIG_TINYDRM_ST7735R is not set
+# CONFIG_DRM_GUD is not set
+# CONFIG_DRM_SSD130X is not set
+CONFIG_DRM_SMI=m
+CONFIG_DRM_SMI_HDMI=y
+# CONFIG_DRM_SMI_PRIME is not set
+CONFIG_DRM_LEGACY=y
+# CONFIG_DRM_TDFX is not set
+# CONFIG_DRM_R128 is not set
+# CONFIG_DRM_MGA is not set
+# CONFIG_DRM_VIA is not set
+# CONFIG_DRM_SAVAGE is not set
+CONFIG_DRM_PANEL_ORIENTATION_QUIRKS=m
+CONFIG_DRM_NOMODESET=y
+
+#
+# Frame buffer Devices
+#
+CONFIG_FB_CMDLINE=y
+CONFIG_FB_NOTIFY=y
+CONFIG_FB=y
+CONFIG_FIRMWARE_EDID=y
+CONFIG_FB_DDC=m
+CONFIG_FB_CFB_FILLRECT=m
+CONFIG_FB_CFB_COPYAREA=m
+CONFIG_FB_CFB_IMAGEBLIT=m
+CONFIG_FB_SYS_FILLRECT=m
+CONFIG_FB_SYS_COPYAREA=m
+CONFIG_FB_SYS_IMAGEBLIT=m
+# CONFIG_FB_FOREIGN_ENDIAN is not set
+CONFIG_FB_SYS_FOPS=m
+CONFIG_FB_DEFERRED_IO=y
+CONFIG_FB_BACKLIGHT=m
+CONFIG_FB_MODE_HELPERS=y
+# CONFIG_FB_TILEBLITTING is not set
+
+#
+# Frame buffer hardware drivers
+#
+# CONFIG_FB_CIRRUS is not set
+# CONFIG_FB_PM2 is not set
+# CONFIG_FB_CYBER2000 is not set
+# CONFIG_FB_ASILIANT is not set
+# CONFIG_FB_IMSTT is not set
+# CONFIG_FB_EFI is not set
+# CONFIG_FB_OPENCORES is not set
+# CONFIG_FB_S1D13XXX is not set
+# CONFIG_FB_NVIDIA is not set
+# CONFIG_FB_RIVA is not set
+# CONFIG_FB_I740 is not set
+# CONFIG_FB_MATROX is not set
+CONFIG_FB_RADEON=m
+CONFIG_FB_RADEON_I2C=y
+CONFIG_FB_RADEON_BACKLIGHT=y
+# CONFIG_FB_RADEON_DEBUG is not set
+# CONFIG_FB_ATY128 is not set
+# CONFIG_FB_ATY is not set
+# CONFIG_FB_S3 is not set
+# CONFIG_FB_SAVAGE is not set
+# CONFIG_FB_SIS is not set
+# CONFIG_FB_NEOMAGIC is not set
+# CONFIG_FB_KYRO is not set
+# CONFIG_FB_3DFX is not set
+# CONFIG_FB_VOODOO1 is not set
+# CONFIG_FB_VT8623 is not set
+# CONFIG_FB_TRIDENT is not set
+# CONFIG_FB_ARK is not set
+# CONFIG_FB_PM3 is not set
+# CONFIG_FB_CARMINE is not set
+# CONFIG_FB_SMSCUFX is not set
+# CONFIG_FB_UDL is not set
+# CONFIG_FB_IBM_GXT4500 is not set
+# CONFIG_FB_GOLDFISH is not set
+# CONFIG_FB_VIRTUAL is not set
+# CONFIG_FB_METRONOME is not set
+# CONFIG_FB_MB862XX is not set
+# CONFIG_FB_SIMPLE is not set
+# CONFIG_FB_SSD1307 is not set
+# CONFIG_FB_SM712 is not set
+# end of Frame buffer Devices
+
+#
+# Backlight & LCD device support
+#
+# CONFIG_LCD_CLASS_DEVICE is not set
+CONFIG_BACKLIGHT_CLASS_DEVICE=y
+# CONFIG_BACKLIGHT_KTD253 is not set
+# CONFIG_BACKLIGHT_PWM is not set
+# CONFIG_BACKLIGHT_QCOM_WLED is not set
+# CONFIG_BACKLIGHT_ADP8860 is not set
+# CONFIG_BACKLIGHT_ADP8870 is not set
+# CONFIG_BACKLIGHT_LM3630A is not set
+# CONFIG_BACKLIGHT_LM3639 is not set
+# CONFIG_BACKLIGHT_LP855X is not set
+# CONFIG_BACKLIGHT_GPIO is not set
+# CONFIG_BACKLIGHT_LV5207LP is not set
+# CONFIG_BACKLIGHT_BD6107 is not set
+# CONFIG_BACKLIGHT_ARCXCNN is not set
+# CONFIG_BACKLIGHT_LED is not set
+# end of Backlight & LCD device support
+
+CONFIG_VIDEOMODE_HELPERS=y
+CONFIG_HDMI=y
+
+#
+# Console display driver support
+#
+CONFIG_VGA_CONSOLE=y
+CONFIG_DUMMY_CONSOLE=y
+CONFIG_DUMMY_CONSOLE_COLUMNS=80
+CONFIG_DUMMY_CONSOLE_ROWS=25
+CONFIG_FRAMEBUFFER_CONSOLE=y
+CONFIG_FRAMEBUFFER_CONSOLE_LEGACY_ACCELERATION=y
+CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
+CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y
+CONFIG_FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER=y
+# end of Console display driver support
+
+# CONFIG_LOGO is not set
+# end of Graphics support
+
+CONFIG_SOUND=m
+CONFIG_SND=m
+CONFIG_SND_TIMER=m
+CONFIG_SND_PCM=m
+CONFIG_SND_HWDEP=m
+CONFIG_SND_RAWMIDI=m
+CONFIG_SND_JACK=y
+CONFIG_SND_JACK_INPUT_DEV=y
+# CONFIG_SND_OSSEMUL is not set
+CONFIG_SND_PCM_TIMER=y
+# CONFIG_SND_HRTIMER is not set
+# CONFIG_SND_DYNAMIC_MINORS is not set
+CONFIG_SND_SUPPORT_OLD_API=y
+CONFIG_SND_PROC_FS=y
+CONFIG_SND_VERBOSE_PROCFS=y
+# CONFIG_SND_VERBOSE_PRINTK is not set
+CONFIG_SND_CTL_FAST_LOOKUP=y
+# CONFIG_SND_DEBUG is not set
+# CONFIG_SND_CTL_INPUT_VALIDATION is not set
+CONFIG_SND_VMASTER=y
+# CONFIG_SND_SEQUENCER is not set
+CONFIG_SND_AC97_CODEC=m
+CONFIG_SND_DRIVERS=y
+CONFIG_SND_DUMMY=m
+CONFIG_SND_ALOOP=m
+# CONFIG_SND_MTPAV is not set
+# CONFIG_SND_SERIAL_U16550 is not set
+# CONFIG_SND_MPU401 is not set
+# CONFIG_SND_AC97_POWER_SAVE is not set
+CONFIG_SND_PCI=y
+# CONFIG_SND_AD1889 is not set
+# CONFIG_SND_ATIIXP is not set
+# CONFIG_SND_ATIIXP_MODEM is not set
+# CONFIG_SND_AU8810 is not set
+# CONFIG_SND_AU8820 is not set
+# CONFIG_SND_AU8830 is not set
+# CONFIG_SND_AW2 is not set
+# CONFIG_SND_BT87X is not set
+# CONFIG_SND_CA0106 is not set
+# CONFIG_SND_CMIPCI is not set
+# CONFIG_SND_OXYGEN is not set
+# CONFIG_SND_CS4281 is not set
+# CONFIG_SND_CS46XX is not set
+# CONFIG_SND_CTXFI is not set
+# CONFIG_SND_DARLA20 is not set
+# CONFIG_SND_GINA20 is not set
+# CONFIG_SND_LAYLA20 is not set
+# CONFIG_SND_DARLA24 is not set
+# CONFIG_SND_GINA24 is not set
+# CONFIG_SND_LAYLA24 is not set
+# CONFIG_SND_MONA is not set
+# CONFIG_SND_MIA is not set
+# CONFIG_SND_ECHO3G is not set
+# CONFIG_SND_INDIGO is not set
+# CONFIG_SND_INDIGOIO is not set
+# CONFIG_SND_INDIGODJ is not set
+# CONFIG_SND_INDIGOIOX is not set
+# CONFIG_SND_INDIGODJX is not set
+CONFIG_SND_ENS1370=m
+# CONFIG_SND_ENS1371 is not set
+# CONFIG_SND_FM801 is not set
+# CONFIG_SND_HDSP is not set
+# CONFIG_SND_HDSPM is not set
+# CONFIG_SND_ICE1724 is not set
+# CONFIG_SND_INTEL8X0 is not set
+# CONFIG_SND_INTEL8X0M is not set
+# CONFIG_SND_KORG1212 is not set
+# CONFIG_SND_LOLA is not set
+# CONFIG_SND_LX6464ES is not set
+# CONFIG_SND_MIXART is not set
+# CONFIG_SND_NM256 is not set
+# CONFIG_SND_PCXHR is not set
+# CONFIG_SND_RIPTIDE is not set
+# CONFIG_SND_RME32 is not set
+# CONFIG_SND_RME96 is not set
+# CONFIG_SND_RME9652 is not set
+# CONFIG_SND_SE6X is not set
+# CONFIG_SND_VIA82XX is not set
+# CONFIG_SND_VIA82XX_MODEM is not set
+# CONFIG_SND_VIRTUOSO is not set
+# CONFIG_SND_VX222 is not set
+# CONFIG_SND_YMFPCI is not set
+
+#
+# HD-Audio
+#
+# CONFIG_SND_HDA_INTEL is not set
+# end of HD-Audio
+
+CONFIG_SND_HDA_PREALLOC_SIZE=64
+CONFIG_SND_SPI=y
+CONFIG_SND_USB=y
+CONFIG_SND_USB_AUDIO=m
+CONFIG_SND_USB_UA101=m
+CONFIG_SND_USB_CAIAQ=m
+# CONFIG_SND_USB_CAIAQ_INPUT is not set
+CONFIG_SND_USB_6FIRE=m
+CONFIG_SND_USB_HIFACE=m
+CONFIG_SND_BCD2000=m
+CONFIG_SND_USB_LINE6=m
+CONFIG_SND_USB_POD=m
+CONFIG_SND_USB_PODHD=m
+CONFIG_SND_USB_TONEPORT=m
+CONFIG_SND_USB_VARIAX=m
+CONFIG_SND_SOC=m
+CONFIG_SND_SOC_AC97_BUS=y
+# CONFIG_SND_SOC_ADI is not set
+CONFIG_SND_SOC_AMD_ACP=m
+# CONFIG_SND_SOC_AMD_CZ_RT5645_MACH is not set
+# CONFIG_SND_AMD_ACP_CONFIG is not set
+# CONFIG_SND_ATMEL_SOC is not set
+# CONFIG_SND_BCM63XX_I2S_WHISTLER is not set
+# CONFIG_SND_DESIGNWARE_I2S is not set
+
+#
+# SoC Audio for Freescale CPUs
+#
+
+#
+# Common SoC Audio options for Freescale CPUs:
+#
+# CONFIG_SND_SOC_FSL_ASRC is not set
+# CONFIG_SND_SOC_FSL_SAI is not set
+# CONFIG_SND_SOC_FSL_AUDMIX is not set
+# CONFIG_SND_SOC_FSL_SSI is not set
+# CONFIG_SND_SOC_FSL_SPDIF is not set
+# CONFIG_SND_SOC_FSL_ESAI is not set
+# CONFIG_SND_SOC_FSL_MICFIL is not set
+# CONFIG_SND_SOC_FSL_XCVR is not set
+# CONFIG_SND_SOC_FSL_RPMSG is not set
+# CONFIG_SND_SOC_IMX_AUDMUX is not set
+# end of SoC Audio for Freescale CPUs
+
+# CONFIG_SND_I2S_HI6210_I2S is not set
+# CONFIG_SND_SOC_IMG is not set
+# CONFIG_SND_SOC_MTK_BTCVSD is not set
+# CONFIG_SND_SOC_SOF_TOPLEVEL is not set
+
+#
+# STMicroelectronics STM32 SOC audio support
+#
+# end of STMicroelectronics STM32 SOC audio support
+
+# CONFIG_SND_SOC_XILINX_I2S is not set
+# CONFIG_SND_SOC_XILINX_AUDIO_FORMATTER is not set
+# CONFIG_SND_SOC_XILINX_SPDIF is not set
+# CONFIG_SND_SOC_XTFPGA_I2S is not set
+CONFIG_SND_SOC_I2C_AND_SPI=m
+
+#
+# CODEC drivers
+#
+CONFIG_SND_SOC_AC97_CODEC=m
+# CONFIG_SND_SOC_ADAU1372_I2C is not set
+# CONFIG_SND_SOC_ADAU1372_SPI is not set
+# CONFIG_SND_SOC_ADAU1701 is not set
+# CONFIG_SND_SOC_ADAU1761_I2C is not set
+# CONFIG_SND_SOC_ADAU1761_SPI is not set
+# CONFIG_SND_SOC_ADAU7002 is not set
+# CONFIG_SND_SOC_ADAU7118_HW is not set
+# CONFIG_SND_SOC_ADAU7118_I2C is not set
+# CONFIG_SND_SOC_AK4104 is not set
+# CONFIG_SND_SOC_AK4118 is not set
+# CONFIG_SND_SOC_AK4375 is not set
+# CONFIG_SND_SOC_AK4458 is not set
+# CONFIG_SND_SOC_AK4554 is not set
+# CONFIG_SND_SOC_AK4613 is not set
+# CONFIG_SND_SOC_AK4642 is not set
+# CONFIG_SND_SOC_AK5386 is not set
+# CONFIG_SND_SOC_AK5558 is not set
+# CONFIG_SND_SOC_ALC5623 is not set
+# CONFIG_SND_SOC_AW8738 is not set
+# CONFIG_SND_SOC_BD28623 is not set
+# CONFIG_SND_SOC_BT_SCO is not set
+# CONFIG_SND_SOC_CS35L32 is not set
+# CONFIG_SND_SOC_CS35L33 is not set
+# CONFIG_SND_SOC_CS35L34 is not set
+# CONFIG_SND_SOC_CS35L35 is not set
+# CONFIG_SND_SOC_CS35L36 is not set
+# CONFIG_SND_SOC_CS35L41_SPI is not set
+# CONFIG_SND_SOC_CS35L41_I2C is not set
+# CONFIG_SND_SOC_CS35L45_SPI is not set
+# CONFIG_SND_SOC_CS35L45_I2C is not set
+# CONFIG_SND_SOC_CS42L42 is not set
+# CONFIG_SND_SOC_CS42L51_I2C is not set
+# CONFIG_SND_SOC_CS42L52 is not set
+# CONFIG_SND_SOC_CS42L56 is not set
+# CONFIG_SND_SOC_CS42L73 is not set
+# CONFIG_SND_SOC_CS42L83 is not set
+# CONFIG_SND_SOC_CS4234 is not set
+# CONFIG_SND_SOC_CS4265 is not set
+# CONFIG_SND_SOC_CS4270 is not set
+# CONFIG_SND_SOC_CS4271_I2C is not set
+# CONFIG_SND_SOC_CS4271_SPI is not set
+# CONFIG_SND_SOC_CS42XX8_I2C is not set
+# CONFIG_SND_SOC_CS43130 is not set
+# CONFIG_SND_SOC_CS4341 is not set
+# CONFIG_SND_SOC_CS4349 is not set
+# CONFIG_SND_SOC_CS53L30 is not set
+# CONFIG_SND_SOC_CX2072X is not set
+# CONFIG_SND_SOC_DA7213 is not set
+# CONFIG_SND_SOC_DMIC is not set
+# CONFIG_SND_SOC_ES7134 is not set
+# CONFIG_SND_SOC_ES7241 is not set
+# CONFIG_SND_SOC_ES8316 is not set
+# CONFIG_SND_SOC_ES8326 is not set
+# CONFIG_SND_SOC_ES8328_I2C is not set
+# CONFIG_SND_SOC_ES8328_SPI is not set
+# CONFIG_SND_SOC_GTM601 is not set
+# CONFIG_SND_SOC_HDA is not set
+# CONFIG_SND_SOC_ICS43432 is not set
+# CONFIG_SND_SOC_INNO_RK3036 is not set
+# CONFIG_SND_SOC_MAX98088 is not set
+# CONFIG_SND_SOC_MAX98357A is not set
+# CONFIG_SND_SOC_MAX98504 is not set
+# CONFIG_SND_SOC_MAX9867 is not set
+# CONFIG_SND_SOC_MAX98927 is not set
+# CONFIG_SND_SOC_MAX98520 is not set
+# CONFIG_SND_SOC_MAX98373_I2C is not set
+# CONFIG_SND_SOC_MAX98390 is not set
+# CONFIG_SND_SOC_MAX98396 is not set
+# CONFIG_SND_SOC_MAX9860 is not set
+# CONFIG_SND_SOC_MSM8916_WCD_DIGITAL is not set
+# CONFIG_SND_SOC_PCM1681 is not set
+# CONFIG_SND_SOC_PCM1789_I2C is not set
+# CONFIG_SND_SOC_PCM179X_I2C is not set
+# CONFIG_SND_SOC_PCM179X_SPI is not set
+# CONFIG_SND_SOC_PCM186X_I2C is not set
+# CONFIG_SND_SOC_PCM186X_SPI is not set
+# CONFIG_SND_SOC_PCM3060_I2C is not set
+# CONFIG_SND_SOC_PCM3060_SPI is not set
+# CONFIG_SND_SOC_PCM3168A_I2C is not set
+# CONFIG_SND_SOC_PCM3168A_SPI is not set
+# CONFIG_SND_SOC_PCM5102A is not set
+# CONFIG_SND_SOC_PCM512x_I2C is not set
+# CONFIG_SND_SOC_PCM512x_SPI is not set
+# CONFIG_SND_SOC_RK3328 is not set
+# CONFIG_SND_SOC_RT5616 is not set
+# CONFIG_SND_SOC_RT5631 is not set
+# CONFIG_SND_SOC_RT5640 is not set
+# CONFIG_SND_SOC_RT5659 is not set
+# CONFIG_SND_SOC_RT9120 is not set
+# CONFIG_SND_SOC_SGTL5000 is not set
+# CONFIG_SND_SOC_SIMPLE_AMPLIFIER is not set
+# CONFIG_SND_SOC_SIMPLE_MUX is not set
+# CONFIG_SND_SOC_SPDIF is not set
+# CONFIG_SND_SOC_SRC4XXX_I2C is not set
+# CONFIG_SND_SOC_SSM2305 is not set
+# CONFIG_SND_SOC_SSM2518 is not set
+# CONFIG_SND_SOC_SSM2602_SPI is not set
+# CONFIG_SND_SOC_SSM2602_I2C is not set
+# CONFIG_SND_SOC_SSM4567 is not set
+# CONFIG_SND_SOC_STA32X is not set
+# CONFIG_SND_SOC_STA350 is not set
+# CONFIG_SND_SOC_STI_SAS is not set
+# CONFIG_SND_SOC_TAS2552 is not set
+# CONFIG_SND_SOC_TAS2562 is not set
+# CONFIG_SND_SOC_TAS2764 is not set
+# CONFIG_SND_SOC_TAS2770 is not set
+# CONFIG_SND_SOC_TAS2780 is not set
+# CONFIG_SND_SOC_TAS5086 is not set
+# CONFIG_SND_SOC_TAS571X is not set
+# CONFIG_SND_SOC_TAS5720 is not set
+# CONFIG_SND_SOC_TAS5805M is not set
+# CONFIG_SND_SOC_TAS6424 is not set
+# CONFIG_SND_SOC_TDA7419 is not set
+# CONFIG_SND_SOC_TFA9879 is not set
+# CONFIG_SND_SOC_TFA989X is not set
+# CONFIG_SND_SOC_TLV320ADC3XXX is not set
+# CONFIG_SND_SOC_TLV320AIC23_I2C is not set
+# CONFIG_SND_SOC_TLV320AIC23_SPI is not set
+# CONFIG_SND_SOC_TLV320AIC31XX is not set
+# CONFIG_SND_SOC_TLV320AIC32X4_I2C is not set
+# CONFIG_SND_SOC_TLV320AIC32X4_SPI is not set
+# CONFIG_SND_SOC_TLV320AIC3X_I2C is not set
+# CONFIG_SND_SOC_TLV320AIC3X_SPI is not set
+# CONFIG_SND_SOC_TLV320ADCX140 is not set
+# CONFIG_SND_SOC_TS3A227E is not set
+# CONFIG_SND_SOC_TSCS42XX is not set
+# CONFIG_SND_SOC_TSCS454 is not set
+# CONFIG_SND_SOC_UDA1334 is not set
+# CONFIG_SND_SOC_WM8510 is not set
+# CONFIG_SND_SOC_WM8523 is not set
+# CONFIG_SND_SOC_WM8524 is not set
+# CONFIG_SND_SOC_WM8580 is not set
+# CONFIG_SND_SOC_WM8711 is not set
+# CONFIG_SND_SOC_WM8728 is not set
+# CONFIG_SND_SOC_WM8731_I2C is not set
+# CONFIG_SND_SOC_WM8731_SPI is not set
+# CONFIG_SND_SOC_WM8737 is not set
+# CONFIG_SND_SOC_WM8741 is not set
+# CONFIG_SND_SOC_WM8750 is not set
+# CONFIG_SND_SOC_WM8753 is not set
+# CONFIG_SND_SOC_WM8770 is not set
+# CONFIG_SND_SOC_WM8776 is not set
+# CONFIG_SND_SOC_WM8782 is not set
+# CONFIG_SND_SOC_WM8804_I2C is not set
+# CONFIG_SND_SOC_WM8804_SPI is not set
+# CONFIG_SND_SOC_WM8903 is not set
+# CONFIG_SND_SOC_WM8904 is not set
+# CONFIG_SND_SOC_WM8940 is not set
+# CONFIG_SND_SOC_WM8960 is not set
+# CONFIG_SND_SOC_WM8962 is not set
+# CONFIG_SND_SOC_WM8974 is not set
+# CONFIG_SND_SOC_WM8978 is not set
+# CONFIG_SND_SOC_WM8985 is not set
+# CONFIG_SND_SOC_ZL38060 is not set
+# CONFIG_SND_SOC_MAX9759 is not set
+# CONFIG_SND_SOC_MT6351 is not set
+# CONFIG_SND_SOC_MT6358 is not set
+# CONFIG_SND_SOC_MT6660 is not set
+# CONFIG_SND_SOC_NAU8315 is not set
+# CONFIG_SND_SOC_NAU8540 is not set
+# CONFIG_SND_SOC_NAU8810 is not set
+# CONFIG_SND_SOC_NAU8821 is not set
+# CONFIG_SND_SOC_NAU8822 is not set
+# CONFIG_SND_SOC_NAU8824 is not set
+# CONFIG_SND_SOC_TPA6130A2 is not set
+# CONFIG_SND_SOC_LPASS_WSA_MACRO is not set
+# CONFIG_SND_SOC_LPASS_VA_MACRO is not set
+# CONFIG_SND_SOC_LPASS_RX_MACRO is not set
+# CONFIG_SND_SOC_LPASS_TX_MACRO is not set
+# end of CODEC drivers
+
+# CONFIG_SND_SIMPLE_CARD is not set
+# CONFIG_SND_AUDIO_GRAPH_CARD is not set
+# CONFIG_SND_AUDIO_GRAPH_CARD2 is not set
+# CONFIG_SND_TEST_COMPONENT is not set
+CONFIG_SND_VIRTIO=m
+CONFIG_AC97_BUS=m
+
+#
+# HID support
+#
+CONFIG_HID=m
+CONFIG_HID_BATTERY_STRENGTH=y
+CONFIG_HIDRAW=y
+CONFIG_UHID=m
+CONFIG_HID_GENERIC=m
+
+#
+# Special HID drivers
+#
+# CONFIG_HID_A4TECH is not set
+# CONFIG_HID_ACCUTOUCH is not set
+# CONFIG_HID_ACRUX is not set
+# CONFIG_HID_APPLE is not set
+# CONFIG_HID_APPLEIR is not set
+# CONFIG_HID_ASUS is not set
+# CONFIG_HID_AUREAL is not set
+# CONFIG_HID_BELKIN is not set
+# CONFIG_HID_BETOP_FF is not set
+# CONFIG_HID_BIGBEN_FF is not set
+# CONFIG_HID_CHERRY is not set
+# CONFIG_HID_CHICONY is not set
+# CONFIG_HID_CORSAIR is not set
+# CONFIG_HID_COUGAR is not set
+# CONFIG_HID_MACALLY is not set
+# CONFIG_HID_PRODIKEYS is not set
+# CONFIG_HID_CMEDIA is not set
+# CONFIG_HID_CP2112 is not set
+# CONFIG_HID_CREATIVE_SB0540 is not set
+# CONFIG_HID_CYPRESS is not set
+# CONFIG_HID_DRAGONRISE is not set
+# CONFIG_HID_EMS_FF is not set
+# CONFIG_HID_ELAN is not set
+# CONFIG_HID_ELECOM is not set
+# CONFIG_HID_ELO is not set
+# CONFIG_HID_EZKEY is not set
+# CONFIG_HID_FT260 is not set
+# CONFIG_HID_GEMBIRD is not set
+# CONFIG_HID_GFRM is not set
+# CONFIG_HID_GLORIOUS is not set
+# CONFIG_HID_HOLTEK is not set
+# CONFIG_HID_VIVALDI is not set
+# CONFIG_HID_GT683R is not set
+# CONFIG_HID_KEYTOUCH is not set
+# CONFIG_HID_KYE is not set
+CONFIG_HID_UCLOGIC=m
+# CONFIG_HID_WALTOP is not set
+# CONFIG_HID_VIEWSONIC is not set
+# CONFIG_HID_VRC2 is not set
+# CONFIG_HID_XIAOMI is not set
+# CONFIG_HID_GYRATION is not set
+# CONFIG_HID_ICADE is not set
+# CONFIG_HID_ITE is not set
+# CONFIG_HID_JABRA is not set
+# CONFIG_HID_TWINHAN is not set
+# CONFIG_HID_KENSINGTON is not set
+# CONFIG_HID_LCPOWER is not set
+# CONFIG_HID_LED is not set
+# CONFIG_HID_LENOVO is not set
+# CONFIG_HID_LETSKETCH is not set
+CONFIG_HID_LOGITECH=m
+# CONFIG_HID_LOGITECH_DJ is not set
+# CONFIG_HID_LOGITECH_HIDPP is not set
+# CONFIG_LOGITECH_FF is not set
+# CONFIG_LOGIRUMBLEPAD2_FF is not set
+# CONFIG_LOGIG940_FF is not set
+# CONFIG_LOGIWHEELS_FF is not set
+# CONFIG_HID_MAGICMOUSE is not set
+# CONFIG_HID_MALTRON is not set
+CONFIG_HID_MAYFLASH=m
+# CONFIG_HID_MEGAWORLD_FF is not set
+# CONFIG_HID_REDRAGON is not set
+# CONFIG_HID_MICROSOFT is not set
+# CONFIG_HID_MONTEREY is not set
+# CONFIG_HID_MULTITOUCH is not set
+CONFIG_HID_NINTENDO=m
+# CONFIG_NINTENDO_FF is not set
+# CONFIG_HID_NTI is not set
+# CONFIG_HID_NTRIG is not set
+# CONFIG_HID_ORTEK is not set
+# CONFIG_HID_PANTHERLORD is not set
+# CONFIG_HID_PENMOUNT is not set
+# CONFIG_HID_PETALYNX is not set
+# CONFIG_HID_PICOLCD is not set
+# CONFIG_HID_PLANTRONICS is not set
+# CONFIG_HID_PXRC is not set
+# CONFIG_HID_RAZER is not set
+# CONFIG_HID_PRIMAX is not set
+# CONFIG_HID_RETRODE is not set
+# CONFIG_HID_ROCCAT is not set
+# CONFIG_HID_SAITEK is not set
+# CONFIG_HID_SAMSUNG is not set
+# CONFIG_HID_SEMITEK is not set
+# CONFIG_HID_SIGMAMICRO is not set
+# CONFIG_HID_SONY is not set
+# CONFIG_HID_SPEEDLINK is not set
+# CONFIG_HID_STEAM is not set
+# CONFIG_HID_STEELSERIES is not set
+# CONFIG_HID_SUNPLUS is not set
+# CONFIG_HID_RMI is not set
+# CONFIG_HID_GREENASIA is not set
+# CONFIG_HID_SMARTJOYPLUS is not set
+# CONFIG_HID_TIVO is not set
+# CONFIG_HID_TOPSEED is not set
+# CONFIG_HID_TOPRE is not set
+# CONFIG_HID_THINGM is not set
+# CONFIG_HID_THRUSTMASTER is not set
+# CONFIG_HID_UDRAW_PS3 is not set
+# CONFIG_HID_U2FZERO is not set
+CONFIG_HID_WACOM=m
+CONFIG_HID_WIIMOTE=m
+# CONFIG_HID_XINMO is not set
+# CONFIG_HID_ZEROPLUS is not set
+# CONFIG_HID_ZYDACRON is not set
+# CONFIG_HID_SENSOR_HUB is not set
+# CONFIG_HID_ALPS is not set
+# CONFIG_HID_MCP2221 is not set
+# end of Special HID drivers
+
+#
+# USB HID support
+#
+CONFIG_USB_HID=m
+# CONFIG_HID_PID is not set
+CONFIG_USB_HIDDEV=y
+# end of USB HID support
+
+#
+# I2C HID support
+#
+# CONFIG_I2C_HID_OF is not set
+# CONFIG_I2C_HID_OF_ELAN is not set
+# CONFIG_I2C_HID_OF_GOODIX is not set
+# end of I2C HID support
+# end of HID support
+
+CONFIG_USB_OHCI_LITTLE_ENDIAN=y
+CONFIG_USB_SUPPORT=y
+CONFIG_USB_COMMON=m
+# CONFIG_USB_LED_TRIG is not set
+# CONFIG_USB_ULPI_BUS is not set
+# CONFIG_USB_CONN_GPIO is not set
+CONFIG_USB_ARCH_HAS_HCD=y
+CONFIG_USB=m
+CONFIG_USB_PCI=y
+CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
+
+#
+# Miscellaneous USB options
+#
+CONFIG_USB_DEFAULT_PERSIST=y
+# CONFIG_USB_FEW_INIT_RETRIES is not set
+CONFIG_USB_DYNAMIC_MINORS=y
+# CONFIG_USB_OTG is not set
+# CONFIG_USB_OTG_PRODUCTLIST is not set
+# CONFIG_USB_LEDS_TRIGGER_USBPORT is not set
+CONFIG_USB_AUTOSUSPEND_DELAY=2
+# CONFIG_USB_MON is not set
+
+#
+# USB Host Controller Drivers
+#
+# CONFIG_USB_C67X00_HCD is not set
+CONFIG_USB_XHCI_HCD=m
+CONFIG_USB_XHCI_DBGCAP=y
+CONFIG_USB_XHCI_PCI=m
+# CONFIG_USB_XHCI_PCI_RENESAS is not set
+CONFIG_USB_XHCI_PLATFORM=m
+CONFIG_USB_EHCI_HCD=m
+CONFIG_USB_EHCI_ROOT_HUB_TT=y
+CONFIG_USB_EHCI_TT_NEWSCHED=y
+CONFIG_USB_EHCI_PCI=m
+# CONFIG_USB_EHCI_FSL is not set
+CONFIG_USB_EHCI_HCD_PLATFORM=m
+# CONFIG_USB_OXU210HP_HCD is not set
+# CONFIG_USB_ISP116X_HCD is not set
+# CONFIG_USB_FOTG210_HCD is not set
+# CONFIG_USB_MAX3421_HCD is not set
+CONFIG_USB_OHCI_HCD=m
+CONFIG_USB_OHCI_HCD_PCI=m
+CONFIG_USB_OHCI_HCD_PLATFORM=m
+CONFIG_USB_UHCI_HCD=m
+# CONFIG_USB_SL811_HCD is not set
+# CONFIG_USB_R8A66597_HCD is not set
+# CONFIG_USB_HCD_TEST_MODE is not set
+
+#
+# USB Device Class drivers
+#
+# CONFIG_USB_ACM is not set
+# CONFIG_USB_PRINTER is not set
+# CONFIG_USB_WDM is not set
+# CONFIG_USB_TMC is not set
+
+#
+# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may
+#
+
+#
+# also be needed; see USB_STORAGE Help for more info
+#
+CONFIG_USB_STORAGE=m
+# CONFIG_USB_STORAGE_DEBUG is not set
+# CONFIG_USB_STORAGE_REALTEK is not set
+# CONFIG_USB_STORAGE_DATAFAB is not set
+# CONFIG_USB_STORAGE_FREECOM is not set
+# CONFIG_USB_STORAGE_ISD200 is not set
+# CONFIG_USB_STORAGE_USBAT is not set
+# CONFIG_USB_STORAGE_SDDR09 is not set
+# CONFIG_USB_STORAGE_SDDR55 is not set
+# CONFIG_USB_STORAGE_JUMPSHOT is not set
+# CONFIG_USB_STORAGE_ALAUDA is not set
+# CONFIG_USB_STORAGE_ONETOUCH is not set
+# CONFIG_USB_STORAGE_KARMA is not set
+# CONFIG_USB_STORAGE_CYPRESS_ATACB is not set
+# CONFIG_USB_STORAGE_ENE_UB6250 is not set
+CONFIG_USB_UAS=m
+
+#
+# USB Imaging devices
+#
+# CONFIG_USB_MDC800 is not set
+# CONFIG_USB_MICROTEK is not set
+# CONFIG_USBIP_CORE is not set
+# CONFIG_USB_CDNS_SUPPORT is not set
+# CONFIG_USB_MUSB_HDRC is not set
+# CONFIG_USB_DWC3 is not set
+CONFIG_USB_DWC2=m
+CONFIG_USB_DWC2_HOST=y
+
+#
+# Gadget/Dual-role mode requires USB Gadget support to be enabled
+#
+# CONFIG_USB_DWC2_PCI is not set
+# CONFIG_USB_DWC2_DEBUG is not set
+# CONFIG_USB_DWC2_TRACK_MISSED_SOFS is not set
+# CONFIG_USB_CHIPIDEA is not set
+# CONFIG_USB_ISP1760 is not set
+
+#
+# USB port drivers
+#
+# CONFIG_USB_SERIAL is not set
+
+#
+# USB Miscellaneous drivers
+#
+# CONFIG_USB_EMI62 is not set
+# CONFIG_USB_EMI26 is not set
+# CONFIG_USB_ADUTUX is not set
+# CONFIG_USB_SEVSEG is not set
+# CONFIG_USB_LEGOTOWER is not set
+# CONFIG_USB_LCD is not set
+# CONFIG_USB_CYPRESS_CY7C63 is not set
+# CONFIG_USB_CYTHERM is not set
+# CONFIG_USB_IDMOUSE is not set
+# CONFIG_USB_FTDI_ELAN is not set
+# CONFIG_USB_APPLEDISPLAY is not set
+# CONFIG_APPLE_MFI_FASTCHARGE is not set
+# CONFIG_USB_SISUSBVGA is not set
+# CONFIG_USB_LD is not set
+# CONFIG_USB_TRANCEVIBRATOR is not set
+# CONFIG_USB_IOWARRIOR is not set
+# CONFIG_USB_TEST is not set
+# CONFIG_USB_EHSET_TEST_FIXTURE is not set
+# CONFIG_USB_ISIGHTFW is not set
+# CONFIG_USB_YUREX is not set
+# CONFIG_USB_EZUSB_FX2 is not set
+# CONFIG_USB_HUB_USB251XB is not set
+# CONFIG_USB_HSIC_USB3503 is not set
+# CONFIG_USB_HSIC_USB4604 is not set
+# CONFIG_USB_LINK_LAYER_TEST is not set
+# CONFIG_USB_CHAOSKEY is not set
+# CONFIG_USB_ONBOARD_HUB is not set
+# CONFIG_USB_ATM is not set
+
+#
+# USB Physical Layer drivers
+#
+# CONFIG_NOP_USB_XCEIV is not set
+# CONFIG_USB_GPIO_VBUS is not set
+# CONFIG_USB_ISP1301 is not set
+# end of USB Physical Layer drivers
+
+# CONFIG_USB_GADGET is not set
+# CONFIG_TYPEC is not set
+CONFIG_USB_ROLE_SWITCH=m
+CONFIG_MMC=y
+CONFIG_PWRSEQ_EMMC=y
+CONFIG_PWRSEQ_SIMPLE=y
+CONFIG_MMC_BLOCK=y
+CONFIG_MMC_BLOCK_MINORS=8
+# CONFIG_SDIO_UART is not set
+# CONFIG_MMC_TEST is not set
+
+#
+# MMC/SD/SDIO Host Controller Drivers
+#
+# CONFIG_MMC_DEBUG is not set
+# CONFIG_MMC_ARMMMCI is not set
+CONFIG_MMC_SDHCI=m
+# CONFIG_MMC_SDHCI_PCI is not set
+CONFIG_MMC_SDHCI_PLTFM=m
+# CONFIG_MMC_SDHCI_OF_ARASAN is not set
+# CONFIG_MMC_SDHCI_OF_AT91 is not set
+# CONFIG_MMC_SDHCI_OF_DWCMSHC is not set
+# CONFIG_MMC_SDHCI_CADENCE is not set
+# CONFIG_MMC_SDHCI_F_SDH30 is not set
+# CONFIG_MMC_SDHCI_MILBEAUT is not set
+# CONFIG_MMC_TIFM_SD is not set
+CONFIG_MMC_SPI=y
+CONFIG_MMC_SDHCI_SOPHGO=m
+# CONFIG_MMC_CB710 is not set
+# CONFIG_MMC_VIA_SDMMC is not set
+# CONFIG_MMC_DW is not set
+# CONFIG_MMC_VUB300 is not set
+# CONFIG_MMC_USHC is not set
+# CONFIG_MMC_USDHI6ROL0 is not set
+# CONFIG_MMC_CQHCI is not set
+# CONFIG_MMC_HSQ is not set
+# CONFIG_MMC_TOSHIBA_PCI is not set
+# CONFIG_MMC_MTK is not set
+# CONFIG_MMC_SDHCI_XENON is not set
+# CONFIG_MMC_SDHCI_OMAP is not set
+# CONFIG_MMC_SDHCI_AM654 is not set
+# CONFIG_SCSI_UFSHCD is not set
+# CONFIG_MEMSTICK is not set
+CONFIG_NEW_LEDS=y
+CONFIG_LEDS_CLASS=m
+# CONFIG_LEDS_CLASS_FLASH is not set
+# CONFIG_LEDS_CLASS_MULTICOLOR is not set
+# CONFIG_LEDS_BRIGHTNESS_HW_CHANGED is not set
+
+#
+# LED drivers
+#
+# CONFIG_LEDS_AN30259A is not set
+# CONFIG_LEDS_AW2013 is not set
+# CONFIG_LEDS_BCM6328 is not set
+# CONFIG_LEDS_BCM6358 is not set
+# CONFIG_LEDS_CR0014114 is not set
+# CONFIG_LEDS_EL15203000 is not set
+# CONFIG_LEDS_LM3530 is not set
+# CONFIG_LEDS_LM3532 is not set
+# CONFIG_LEDS_LM3642 is not set
+# CONFIG_LEDS_LM3692X is not set
+# CONFIG_LEDS_PCA9532 is not set
+# CONFIG_LEDS_GPIO is not set
+# CONFIG_LEDS_LP3944 is not set
+# CONFIG_LEDS_LP3952 is not set
+# CONFIG_LEDS_LP50XX is not set
+# CONFIG_LEDS_LP55XX_COMMON is not set
+# CONFIG_LEDS_LP8860 is not set
+# CONFIG_LEDS_PCA955X is not set
+# CONFIG_LEDS_PCA963X is not set
+# CONFIG_LEDS_DAC124S085 is not set
+# CONFIG_LEDS_PWM is not set
+# CONFIG_LEDS_BD2802 is not set
+# CONFIG_LEDS_LT3593 is not set
+# CONFIG_LEDS_TCA6507 is not set
+# CONFIG_LEDS_TLC591XX is not set
+# CONFIG_LEDS_LM355x is not set
+# CONFIG_LEDS_IS31FL319X is not set
+# CONFIG_LEDS_IS31FL32XX is not set
+
+#
+# LED driver for blink(1) USB RGB LED is under Special HID drivers (HID_THINGM)
+#
+# CONFIG_LEDS_BLINKM is not set
+# CONFIG_LEDS_MLXREG is not set
+# CONFIG_LEDS_USER is not set
+# CONFIG_LEDS_SPI_BYTE is not set
+# CONFIG_LEDS_TI_LMU_COMMON is not set
+
+#
+# Flash and Torch LED drivers
+#
+
+#
+# RGB LED drivers
+#
+
+#
+# LED Triggers
+#
+CONFIG_LEDS_TRIGGERS=y
+# CONFIG_LEDS_TRIGGER_TIMER is not set
+# CONFIG_LEDS_TRIGGER_ONESHOT is not set
+# CONFIG_LEDS_TRIGGER_DISK is not set
+# CONFIG_LEDS_TRIGGER_MTD is not set
+# CONFIG_LEDS_TRIGGER_HEARTBEAT is not set
+# CONFIG_LEDS_TRIGGER_BACKLIGHT is not set
+# CONFIG_LEDS_TRIGGER_CPU is not set
+# CONFIG_LEDS_TRIGGER_ACTIVITY is not set
+# CONFIG_LEDS_TRIGGER_GPIO is not set
+# CONFIG_LEDS_TRIGGER_DEFAULT_ON is not set
+
+#
+# iptables trigger is under Netfilter config (LED target)
+#
+# CONFIG_LEDS_TRIGGER_TRANSIENT is not set
+# CONFIG_LEDS_TRIGGER_CAMERA is not set
+# CONFIG_LEDS_TRIGGER_PANIC is not set
+# CONFIG_LEDS_TRIGGER_NETDEV is not set
+# CONFIG_LEDS_TRIGGER_PATTERN is not set
+# CONFIG_LEDS_TRIGGER_AUDIO is not set
+# CONFIG_LEDS_TRIGGER_TTY is not set
+
+#
+# Simple LED drivers
+#
+CONFIG_ACCESSIBILITY=y
+# CONFIG_A11Y_BRAILLE_CONSOLE is not set
+
+#
+# Speakup console speech
+#
+CONFIG_SPEAKUP=m
+# CONFIG_SPEAKUP_SYNTH_ACNTSA is not set
+# CONFIG_SPEAKUP_SYNTH_APOLLO is not set
+# CONFIG_SPEAKUP_SYNTH_AUDPTR is not set
+# CONFIG_SPEAKUP_SYNTH_BNS is not set
+# CONFIG_SPEAKUP_SYNTH_DECTLK is not set
+# CONFIG_SPEAKUP_SYNTH_DECEXT is not set
+# CONFIG_SPEAKUP_SYNTH_LTLK is not set
+CONFIG_SPEAKUP_SYNTH_SOFT=m
+# CONFIG_SPEAKUP_SYNTH_SPKOUT is not set
+# CONFIG_SPEAKUP_SYNTH_TXPRT is not set
+# CONFIG_SPEAKUP_SYNTH_DUMMY is not set
+# end of Speakup console speech
+
+# CONFIG_INFINIBAND is not set
+CONFIG_EDAC_SUPPORT=y
+# CONFIG_EDAC is not set
+CONFIG_RTC_LIB=y
+CONFIG_RTC_CLASS=y
+CONFIG_RTC_HCTOSYS=y
+CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
+CONFIG_RTC_SYSTOHC=y
+CONFIG_RTC_SYSTOHC_DEVICE="rtc0"
+# CONFIG_RTC_DEBUG is not set
+CONFIG_RTC_NVMEM=y
+
+#
+# RTC interfaces
+#
+CONFIG_RTC_INTF_SYSFS=y
+CONFIG_RTC_INTF_PROC=y
+CONFIG_RTC_INTF_DEV=y
+# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set
+# CONFIG_RTC_DRV_TEST is not set
+
+#
+# I2C RTC drivers
+#
+# CONFIG_RTC_DRV_ABB5ZES3 is not set
+# CONFIG_RTC_DRV_ABEOZ9 is not set
+# CONFIG_RTC_DRV_ABX80X is not set
+# CONFIG_RTC_DRV_DS1307 is not set
+# CONFIG_RTC_DRV_DS1374 is not set
+# CONFIG_RTC_DRV_DS1672 is not set
+# CONFIG_RTC_DRV_HYM8563 is not set
+# CONFIG_RTC_DRV_MAX6900 is not set
+# CONFIG_RTC_DRV_NCT3018Y is not set
+# CONFIG_RTC_DRV_RS5C372 is not set
+# CONFIG_RTC_DRV_ISL1208 is not set
+# CONFIG_RTC_DRV_ISL12022 is not set
+# CONFIG_RTC_DRV_ISL12026 is not set
+# CONFIG_RTC_DRV_X1205 is not set
+# CONFIG_RTC_DRV_PCF8523 is not set
+# CONFIG_RTC_DRV_PCF85063 is not set
+# CONFIG_RTC_DRV_PCF85363 is not set
+# CONFIG_RTC_DRV_PCF8563 is not set
+# CONFIG_RTC_DRV_PCF8583 is not set
+# CONFIG_RTC_DRV_M41T80 is not set
+# CONFIG_RTC_DRV_BQ32K is not set
+# CONFIG_RTC_DRV_S35390A is not set
+# CONFIG_RTC_DRV_FM3130 is not set
+# CONFIG_RTC_DRV_RX8010 is not set
+# CONFIG_RTC_DRV_RX8581 is not set
+# CONFIG_RTC_DRV_RX8025 is not set
+# CONFIG_RTC_DRV_EM3027 is not set
+# CONFIG_RTC_DRV_RV3028 is not set
+# CONFIG_RTC_DRV_RV3032 is not set
+# CONFIG_RTC_DRV_RV8803 is not set
+# CONFIG_RTC_DRV_SD3078 is not set
+
+#
+# SPI RTC drivers
+#
+# CONFIG_RTC_DRV_M41T93 is not set
+# CONFIG_RTC_DRV_M41T94 is not set
+# CONFIG_RTC_DRV_DS1302 is not set
+# CONFIG_RTC_DRV_DS1305 is not set
+# CONFIG_RTC_DRV_DS1343 is not set
+# CONFIG_RTC_DRV_DS1347 is not set
+# CONFIG_RTC_DRV_DS1390 is not set
+# CONFIG_RTC_DRV_MAX6916 is not set
+# CONFIG_RTC_DRV_R9701 is not set
+# CONFIG_RTC_DRV_RX4581 is not set
+# CONFIG_RTC_DRV_RS5C348 is not set
+# CONFIG_RTC_DRV_MAX6902 is not set
+# CONFIG_RTC_DRV_PCF2123 is not set
+# CONFIG_RTC_DRV_MCP795 is not set
+CONFIG_RTC_I2C_AND_SPI=y
+
+#
+# SPI and I2C RTC drivers
+#
+# CONFIG_RTC_DRV_DS3232 is not set
+# CONFIG_RTC_DRV_PCF2127 is not set
+# CONFIG_RTC_DRV_RV3029C2 is not set
+# CONFIG_RTC_DRV_RX6110 is not set
+
+#
+# Platform RTC drivers
+#
+# CONFIG_RTC_DRV_DS1286 is not set
+# CONFIG_RTC_DRV_DS1511 is not set
+# CONFIG_RTC_DRV_DS1553 is not set
+# CONFIG_RTC_DRV_DS1685_FAMILY is not set
+# CONFIG_RTC_DRV_DS1742 is not set
+# CONFIG_RTC_DRV_DS2404 is not set
+# CONFIG_RTC_DRV_EFI is not set
+# CONFIG_RTC_DRV_STK17TA8 is not set
+# CONFIG_RTC_DRV_M48T86 is not set
+# CONFIG_RTC_DRV_M48T35 is not set
+# CONFIG_RTC_DRV_M48T59 is not set
+# CONFIG_RTC_DRV_MSM6242 is not set
+# CONFIG_RTC_DRV_BQ4802 is not set
+# CONFIG_RTC_DRV_RP5C01 is not set
+# CONFIG_RTC_DRV_V3020 is not set
+# CONFIG_RTC_DRV_ZYNQMP is not set
+
+#
+# on-CPU RTC drivers
+#
+# CONFIG_RTC_DRV_PL030 is not set
+# CONFIG_RTC_DRV_PL031 is not set
+# CONFIG_RTC_DRV_CADENCE is not set
+# CONFIG_RTC_DRV_FTRTC010 is not set
+# CONFIG_RTC_DRV_R7301 is not set
+
+#
+# HID Sensor RTC drivers
+#
+CONFIG_RTC_DRV_GOLDFISH=y
+# CONFIG_RTC_DRV_ASTBMC is not set
+# CONFIG_DMADEVICES is not set
+
+#
+# DMABUF options
+#
+CONFIG_SYNC_FILE=y
+# CONFIG_UDMABUF is not set
+# CONFIG_DMABUF_MOVE_NOTIFY is not set
+# CONFIG_DMABUF_DEBUG is not set
+# CONFIG_DMABUF_SELFTESTS is not set
+# CONFIG_DMABUF_HEAPS is not set
+# CONFIG_DMABUF_SYSFS_STATS is not set
+# end of DMABUF options
+
+# CONFIG_AUXDISPLAY is not set
+# CONFIG_UIO is not set
+# CONFIG_VFIO is not set
+CONFIG_VIRT_DRIVERS=y
+CONFIG_VIRTIO_ANCHOR=y
+CONFIG_VIRTIO=y
+CONFIG_VIRTIO_PCI_LIB=m
+CONFIG_VIRTIO_PCI_LIB_LEGACY=m
+CONFIG_VIRTIO_MENU=y
+CONFIG_VIRTIO_PCI=m
+CONFIG_VIRTIO_PCI_LEGACY=y
+CONFIG_VIRTIO_BALLOON=m
+CONFIG_VIRTIO_INPUT=m
+CONFIG_VIRTIO_MMIO=m
+CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES=y
+CONFIG_VIRTIO_DMA_SHARED_BUFFER=m
+# CONFIG_VDPA is not set
+CONFIG_VHOST_IOTLB=m
+CONFIG_VHOST=m
+CONFIG_VHOST_MENU=y
+CONFIG_VHOST_NET=m
+# CONFIG_VHOST_CROSS_ENDIAN_LEGACY is not set
+
+#
+# Microsoft Hyper-V guest support
+#
+# end of Microsoft Hyper-V guest support
+
+# CONFIG_GREYBUS is not set
+# CONFIG_COMEDI is not set
+CONFIG_STAGING=y
+# CONFIG_PRISM2_USB is not set
+# CONFIG_RTL8192U is not set
+CONFIG_RTLLIB=m
+CONFIG_RTLLIB_CRYPTO_CCMP=m
+CONFIG_RTLLIB_CRYPTO_TKIP=m
+CONFIG_RTLLIB_CRYPTO_WEP=m
+CONFIG_RTL8192E=m
+# CONFIG_RTL8723BS is not set
+CONFIG_R8712U=m
+CONFIG_R8188EU=m
+# CONFIG_RTS5208 is not set
+# CONFIG_VT6655 is not set
+# CONFIG_VT6656 is not set
+# CONFIG_FB_SM750 is not set
+# CONFIG_STAGING_MEDIA is not set
+# CONFIG_STAGING_BOARD is not set
+# CONFIG_LTE_GDM724X is not set
+# CONFIG_FB_TFT is not set
+# CONFIG_KS7010 is not set
+# CONFIG_PI433 is not set
+# CONFIG_XIL_AXIS_FIFO is not set
+# CONFIG_FIELDBUS_DEV is not set
+# CONFIG_QLGE is not set
+# CONFIG_VME_BUS is not set
+CONFIG_GOLDFISH=y
+# CONFIG_GOLDFISH_PIPE is not set
+CONFIG_HAVE_CLK=y
+CONFIG_HAVE_CLK_PREPARE=y
+CONFIG_COMMON_CLK=y
+# CONFIG_LMK04832 is not set
+# CONFIG_COMMON_CLK_MAX9485 is not set
+# CONFIG_COMMON_CLK_SI5341 is not set
+# CONFIG_COMMON_CLK_SI5351 is not set
+# CONFIG_COMMON_CLK_SI514 is not set
+# CONFIG_COMMON_CLK_SI544 is not set
+# CONFIG_COMMON_CLK_SI570 is not set
+# CONFIG_COMMON_CLK_CDCE706 is not set
+# CONFIG_COMMON_CLK_CDCE925 is not set
+# CONFIG_COMMON_CLK_CS2000_CP is not set
+# CONFIG_COMMON_CLK_AXI_CLKGEN is not set
+# CONFIG_COMMON_CLK_PWM is not set
+# CONFIG_COMMON_CLK_RS9_PCIE is not set
+# CONFIG_COMMON_CLK_VC5 is not set
+# CONFIG_COMMON_CLK_VC7 is not set
+# CONFIG_COMMON_CLK_FIXED_MMIO is not set
+CONFIG_CLK_ANALOGBITS_WRPLL_CLN28HPC=y
+CONFIG_CLK_SIFIVE=y
+CONFIG_CLK_SIFIVE_PRCI=y
+CONFIG_CLK_STARFIVE_JH7100=y
+CONFIG_CLK_STARFIVE_JH7100_AUDIO=m
+# CONFIG_XILINX_VCU is not set
+# CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set
+# CONFIG_HWSPINLOCK is not set
+
+#
+# Clock Source drivers
+#
+CONFIG_TIMER_OF=y
+CONFIG_TIMER_PROBE=y
+CONFIG_DW_APB_TIMER=y
+CONFIG_DW_APB_TIMER_OF=y
+CONFIG_RISCV_TIMER=y
+# CONFIG_MICROCHIP_PIT64B is not set
+# end of Clock Source drivers
+
+# CONFIG_MAILBOX is not set
+CONFIG_IOMMU_API=y
+CONFIG_IOMMU_SUPPORT=y
+
+#
+# Generic IOMMU Pagetable Support
+#
+# end of Generic IOMMU Pagetable Support
+
+CONFIG_IOMMU_DEFAULT_DMA_STRICT=y
+# CONFIG_IOMMU_DEFAULT_DMA_LAZY is not set
+# CONFIG_IOMMU_DEFAULT_PASSTHROUGH is not set
+CONFIG_OF_IOMMU=y
+
+#
+# Remoteproc drivers
+#
+# CONFIG_REMOTEPROC is not set
+# end of Remoteproc drivers
+
+#
+# Rpmsg drivers
+#
+CONFIG_RPMSG=m
+CONFIG_RPMSG_CHAR=m
+# CONFIG_RPMSG_CTRL is not set
+CONFIG_RPMSG_NS=m
+CONFIG_RPMSG_VIRTIO=m
+# end of Rpmsg drivers
+
+# CONFIG_SOUNDWIRE is not set
+
+#
+# SOC (System On Chip) specific Drivers
+#
+
+#
+# Amlogic SoC drivers
+#
+# end of Amlogic SoC drivers
+
+#
+# Broadcom SoC drivers
+#
+# end of Broadcom SoC drivers
+
+#
+# NXP/Freescale QorIQ SoC drivers
+#
+# end of NXP/Freescale QorIQ SoC drivers
+
+#
+# fujitsu SoC drivers
+#
+# end of fujitsu SoC drivers
+
+#
+# i.MX SoC drivers
+#
+# end of i.MX SoC drivers
+
+#
+# Enable LiteX SoC Builder specific drivers
+#
+# CONFIG_LITEX_SOC_CONTROLLER is not set
+# end of Enable LiteX SoC Builder specific drivers
+
+#
+# Qualcomm SoC drivers
+#
+# end of Qualcomm SoC drivers
+
+# CONFIG_SIFIVE_CCACHE is not set
+# CONFIG_SOC_TI is not set
+
+#
+# Xilinx SoC drivers
+#
+# end of Xilinx SoC drivers
+# end of SOC (System On Chip) specific Drivers
+
+# CONFIG_PM_DEVFREQ is not set
+# CONFIG_EXTCON is not set
+# CONFIG_MEMORY is not set
+# CONFIG_IIO is not set
+# CONFIG_NTB is not set
+CONFIG_PWM=y
+CONFIG_PWM_SYSFS=y
+# CONFIG_PWM_ATMEL_TCB is not set
+# CONFIG_PWM_CLK is not set
+# CONFIG_PWM_DWC is not set
+# CONFIG_PWM_FSL_FTM is not set
+# CONFIG_PWM_PCA9685 is not set
+CONFIG_PWM_SIFIVE=y
+# CONFIG_PWM_XILINX is not set
+
+#
+# IRQ chip support
+#
+CONFIG_IRQCHIP=y
+# CONFIG_AL_FIC is not set
+# CONFIG_XILINX_INTC is not set
+CONFIG_RISCV_INTC=y
+CONFIG_SIFIVE_PLIC=y
+# end of IRQ chip support
+
+# CONFIG_IPACK_BUS is not set
+CONFIG_RESET_CONTROLLER=y
+CONFIG_RESET_SIMPLE=y
+CONFIG_RESET_STARFIVE_JH7100=y
+# CONFIG_RESET_TI_SYSCON is not set
+# CONFIG_RESET_TI_TPS380X is not set
+
+#
+# PHY Subsystem
+#
+CONFIG_GENERIC_PHY=y
+# CONFIG_PHY_CAN_TRANSCEIVER is not set
+
+#
+# PHY drivers for Broadcom platforms
+#
+# CONFIG_BCM_KONA_USB2_PHY is not set
+# end of PHY drivers for Broadcom platforms
+
+# CONFIG_PHY_CADENCE_TORRENT is not set
+# CONFIG_PHY_CADENCE_DPHY is not set
+# CONFIG_PHY_CADENCE_DPHY_RX is not set
+# CONFIG_PHY_CADENCE_SIERRA is not set
+# CONFIG_PHY_CADENCE_SALVO is not set
+# CONFIG_PHY_PXA_28NM_HSIC is not set
+# CONFIG_PHY_PXA_28NM_USB2 is not set
+# CONFIG_PHY_LAN966X_SERDES is not set
+# CONFIG_PHY_MAPPHONE_MDM6600 is not set
+# CONFIG_PHY_OCELOT_SERDES is not set
+# CONFIG_PHY_SAMSUNG_USB2 is not set
+# end of PHY Subsystem
+
+# CONFIG_POWERCAP is not set
+# CONFIG_MCB is not set
+
+#
+# Performance monitor support
+#
+CONFIG_RISCV_PMU=y
+CONFIG_RISCV_PMU_LEGACY=y
+CONFIG_RISCV_PMU_SBI=y
+# end of Performance monitor support
+
+CONFIG_RAS=y
+# CONFIG_USB4 is not set
+
+#
+# Android
+#
+# CONFIG_ANDROID_BINDER_IPC is not set
+# end of Android
+
+# CONFIG_LIBNVDIMM is not set
+# CONFIG_DAX is not set
+CONFIG_NVMEM=y
+CONFIG_NVMEM_SYSFS=y
+# CONFIG_NVMEM_RMEM is not set
+# CONFIG_NVMEM_U_BOOT_ENV is not set
+
+#
+# HW tracing support
+#
+# CONFIG_STM is not set
+# CONFIG_INTEL_TH is not set
+# end of HW tracing support
+
+# CONFIG_FPGA is not set
+# CONFIG_FSI is not set
+# CONFIG_SIOX is not set
+# CONFIG_SLIMBUS is not set
+# CONFIG_INTERCONNECT is not set
+# CONFIG_COUNTER is not set
+# CONFIG_MOST is not set
+# CONFIG_PECI is not set
+# CONFIG_HTE is not set
+# end of Device Drivers
+
+#
+# File systems
+#
+# CONFIG_VALIDATE_FS_PARSER is not set
+CONFIG_FS_IOMAP=y
+CONFIG_EXT2_FS=y
+CONFIG_EXT2_FS_XATTR=y
+CONFIG_EXT2_FS_POSIX_ACL=y
+CONFIG_EXT2_FS_SECURITY=y
+# CONFIG_EXT3_FS is not set
+CONFIG_EXT4_FS=y
+CONFIG_EXT4_FS_POSIX_ACL=y
+CONFIG_EXT4_FS_SECURITY=y
+# CONFIG_EXT4_DEBUG is not set
+CONFIG_JBD2=y
+# CONFIG_JBD2_DEBUG is not set
+CONFIG_FS_MBCACHE=y
+CONFIG_REISERFS_FS=m
+# CONFIG_REISERFS_CHECK is not set
+CONFIG_REISERFS_PROC_INFO=y
+CONFIG_REISERFS_FS_XATTR=y
+CONFIG_REISERFS_FS_POSIX_ACL=y
+# CONFIG_REISERFS_FS_SECURITY is not set
+# CONFIG_JFS_FS is not set
+CONFIG_XFS_FS=m
+CONFIG_XFS_SUPPORT_V4=y
+CONFIG_XFS_QUOTA=y
+CONFIG_XFS_POSIX_ACL=y
+CONFIG_XFS_RT=y
+CONFIG_XFS_ONLINE_SCRUB=y
+# CONFIG_XFS_ONLINE_REPAIR is not set
+# CONFIG_XFS_WARN is not set
+# CONFIG_XFS_DEBUG is not set
+CONFIG_GFS2_FS=m
+CONFIG_OCFS2_FS=m
+CONFIG_OCFS2_FS_O2CB=m
+CONFIG_OCFS2_DEBUG_MASKLOG=y
+# CONFIG_OCFS2_DEBUG_FS is not set
+CONFIG_BTRFS_FS=m
+CONFIG_BTRFS_FS_POSIX_ACL=y
+# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set
+# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set
+# CONFIG_BTRFS_DEBUG is not set
+# CONFIG_BTRFS_ASSERT is not set
+# CONFIG_BTRFS_FS_REF_VERIFY is not set
+CONFIG_NILFS2_FS=m
+CONFIG_F2FS_FS=y
+# CONFIG_F2FS_STAT_FS is not set
+CONFIG_F2FS_FS_XATTR=y
+CONFIG_F2FS_FS_POSIX_ACL=y
+CONFIG_F2FS_FS_SECURITY=y
+# CONFIG_F2FS_CHECK_FS is not set
+# CONFIG_F2FS_FAULT_INJECTION is not set
+CONFIG_F2FS_FS_COMPRESSION=y
+CONFIG_F2FS_FS_LZO=y
+CONFIG_F2FS_FS_LZORLE=y
+CONFIG_F2FS_FS_LZ4=y
+CONFIG_F2FS_FS_LZ4HC=y
+CONFIG_F2FS_FS_ZSTD=y
+# CONFIG_F2FS_IOSTAT is not set
+# CONFIG_F2FS_UNFAIR_RWSEM is not set
+CONFIG_FS_POSIX_ACL=y
+CONFIG_EXPORTFS=y
+CONFIG_EXPORTFS_BLOCK_OPS=y
+CONFIG_FILE_LOCKING=y
+CONFIG_FS_ENCRYPTION=y
+CONFIG_FS_ENCRYPTION_ALGS=y
+CONFIG_FS_VERITY=y
+# CONFIG_FS_VERITY_DEBUG is not set
+CONFIG_FS_VERITY_BUILTIN_SIGNATURES=y
+CONFIG_FSNOTIFY=y
+CONFIG_DNOTIFY=y
+CONFIG_INOTIFY_USER=y
+CONFIG_FANOTIFY=y
+# CONFIG_FANOTIFY_ACCESS_PERMISSIONS is not set
+CONFIG_QUOTA=y
+# CONFIG_QUOTA_NETLINK_INTERFACE is not set
+# CONFIG_PRINT_QUOTA_WARNING is not set
+# CONFIG_QUOTA_DEBUG is not set
+CONFIG_QUOTA_TREE=m
+# CONFIG_QFMT_V1 is not set
+# CONFIG_QFMT_V2 is not set
+CONFIG_QUOTACTL=y
+# CONFIG_AUTOFS4_FS is not set
+CONFIG_AUTOFS_FS=y
+CONFIG_FUSE_FS=m
+# CONFIG_CUSE is not set
+CONFIG_VIRTIO_FS=m
+CONFIG_OVERLAY_FS=m
+# CONFIG_OVERLAY_FS_REDIRECT_DIR is not set
+CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y
+# CONFIG_OVERLAY_FS_INDEX is not set
+# CONFIG_OVERLAY_FS_XINO_AUTO is not set
+# CONFIG_OVERLAY_FS_METACOPY is not set
+
+#
+# Caches
+#
+CONFIG_NETFS_SUPPORT=m
+CONFIG_NETFS_STATS=y
+CONFIG_FSCACHE=m
+CONFIG_FSCACHE_STATS=y
+# CONFIG_FSCACHE_DEBUG is not set
+CONFIG_CACHEFILES=m
+# CONFIG_CACHEFILES_DEBUG is not set
+# CONFIG_CACHEFILES_ERROR_INJECTION is not set
+# CONFIG_CACHEFILES_ONDEMAND is not set
+# end of Caches
+
+#
+# CD-ROM/DVD Filesystems
+#
+CONFIG_ISO9660_FS=m
+CONFIG_JOLIET=y
+CONFIG_ZISOFS=y
+CONFIG_UDF_FS=m
+# end of CD-ROM/DVD Filesystems
+
+#
+# DOS/FAT/EXFAT/NT Filesystems
+#
+CONFIG_FAT_FS=m
+CONFIG_MSDOS_FS=m
+CONFIG_VFAT_FS=m
+CONFIG_FAT_DEFAULT_CODEPAGE=437
+CONFIG_FAT_DEFAULT_IOCHARSET="utf8"
+# CONFIG_FAT_DEFAULT_UTF8 is not set
+CONFIG_EXFAT_FS=m
+CONFIG_EXFAT_DEFAULT_IOCHARSET="utf8"
+CONFIG_NTFS_FS=m
+# CONFIG_NTFS_DEBUG is not set
+CONFIG_NTFS_RW=y
+CONFIG_NTFS3_FS=m
+# CONFIG_NTFS3_64BIT_CLUSTER is not set
+# CONFIG_NTFS3_LZX_XPRESS is not set
+# CONFIG_NTFS3_FS_POSIX_ACL is not set
+# end of DOS/FAT/EXFAT/NT Filesystems
+
+#
+# Pseudo filesystems
+#
+CONFIG_PROC_FS=y
+# CONFIG_PROC_KCORE is not set
+CONFIG_PROC_SYSCTL=y
+CONFIG_PROC_PAGE_MONITOR=y
+CONFIG_PROC_CHILDREN=y
+CONFIG_KERNFS=y
+CONFIG_SYSFS=y
+CONFIG_TMPFS=y
+CONFIG_TMPFS_POSIX_ACL=y
+CONFIG_TMPFS_XATTR=y
+# CONFIG_TMPFS_INODE64 is not set
+CONFIG_ARCH_SUPPORTS_HUGETLBFS=y
+CONFIG_HUGETLBFS=y
+CONFIG_HUGETLB_PAGE=y
+CONFIG_MEMFD_CREATE=y
+CONFIG_ARCH_HAS_GIGANTIC_PAGE=y
+CONFIG_CONFIGFS_FS=m
+CONFIG_EFIVAR_FS=m
+# end of Pseudo filesystems
+
+CONFIG_MISC_FILESYSTEMS=y
+# CONFIG_ORANGEFS_FS is not set
+# CONFIG_ADFS_FS is not set
+# CONFIG_AFFS_FS is not set
+CONFIG_ECRYPT_FS=m
+# CONFIG_ECRYPT_FS_MESSAGING is not set
+CONFIG_HFS_FS=m
+CONFIG_HFSPLUS_FS=m
+# CONFIG_BEFS_FS is not set
+# CONFIG_BFS_FS is not set
+# CONFIG_EFS_FS is not set
+# CONFIG_JFFS2_FS is not set
+# CONFIG_UBIFS_FS is not set
+# CONFIG_CRAMFS is not set
+CONFIG_SQUASHFS=m
+# CONFIG_SQUASHFS_FILE_CACHE is not set
+CONFIG_SQUASHFS_FILE_DIRECT=y
+# CONFIG_SQUASHFS_DECOMP_SINGLE is not set
+# CONFIG_SQUASHFS_DECOMP_MULTI is not set
+CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU=y
+CONFIG_SQUASHFS_XATTR=y
+CONFIG_SQUASHFS_ZLIB=y
+CONFIG_SQUASHFS_LZ4=y
+CONFIG_SQUASHFS_LZO=y
+CONFIG_SQUASHFS_XZ=y
+CONFIG_SQUASHFS_ZSTD=y
+# CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set
+# CONFIG_SQUASHFS_EMBEDDED is not set
+CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3
+# CONFIG_VXFS_FS is not set
+# CONFIG_MINIX_FS is not set
+# CONFIG_OMFS_FS is not set
+# CONFIG_HPFS_FS is not set
+# CONFIG_QNX4FS_FS is not set
+# CONFIG_QNX6FS_FS is not set
+# CONFIG_ROMFS_FS is not set
+# CONFIG_PSTORE is not set
+# CONFIG_SYSV_FS is not set
+# CONFIG_UFS_FS is not set
+CONFIG_EROFS_FS=m
+# CONFIG_EROFS_FS_DEBUG is not set
+CONFIG_EROFS_FS_XATTR=y
+CONFIG_EROFS_FS_POSIX_ACL=y
+CONFIG_EROFS_FS_SECURITY=y
+CONFIG_EROFS_FS_ZIP=y
+# CONFIG_EROFS_FS_ZIP_LZMA is not set
+CONFIG_NETWORK_FILESYSTEMS=y
+CONFIG_NFS_FS=m
+CONFIG_NFS_V2=m
+CONFIG_NFS_V3=m
+# CONFIG_NFS_V3_ACL is not set
+CONFIG_NFS_V4=m
+CONFIG_NFS_SWAP=y
+CONFIG_NFS_V4_1=y
+CONFIG_NFS_V4_2=y
+CONFIG_PNFS_FILE_LAYOUT=m
+CONFIG_PNFS_FLEXFILE_LAYOUT=m
+CONFIG_NFS_V4_1_IMPLEMENTATION_ID_DOMAIN="kernel.org"
+# CONFIG_NFS_V4_1_MIGRATION is not set
+CONFIG_NFS_V4_SECURITY_LABEL=y
+CONFIG_NFS_FSCACHE=y
+# CONFIG_NFS_USE_LEGACY_DNS is not set
+CONFIG_NFS_USE_KERNEL_DNS=y
+CONFIG_NFS_DISABLE_UDP_SUPPORT=y
+# CONFIG_NFS_V4_2_READ_PLUS is not set
+# CONFIG_NFSD is not set
+CONFIG_GRACE_PERIOD=m
+CONFIG_LOCKD=m
+CONFIG_LOCKD_V4=y
+CONFIG_NFS_COMMON=y
+CONFIG_NFS_V4_2_SSC_HELPER=y
+CONFIG_SUNRPC=m
+CONFIG_SUNRPC_GSS=m
+CONFIG_SUNRPC_BACKCHANNEL=y
+CONFIG_SUNRPC_SWAP=y
+# CONFIG_SUNRPC_DEBUG is not set
+# CONFIG_CEPH_FS is not set
+CONFIG_CIFS=m
+# CONFIG_CIFS_STATS2 is not set
+CONFIG_CIFS_ALLOW_INSECURE_LEGACY=y
+# CONFIG_CIFS_UPCALL is not set
+CONFIG_CIFS_XATTR=y
+CONFIG_CIFS_POSIX=y
+CONFIG_CIFS_DEBUG=y
+# CONFIG_CIFS_DEBUG2 is not set
+# CONFIG_CIFS_DEBUG_DUMP_KEYS is not set
+CONFIG_CIFS_DFS_UPCALL=y
+CONFIG_CIFS_SWN_UPCALL=y
+CONFIG_CIFS_FSCACHE=y
+CONFIG_SMB_SERVER=m
+CONFIG_SMB_SERVER_CHECK_CAP_NET_ADMIN=y
+# CONFIG_SMB_SERVER_KERBEROS5 is not set
+CONFIG_SMBFS=m
+# CONFIG_CODA_FS is not set
+# CONFIG_AFS_FS is not set
+CONFIG_9P_FS=m
+CONFIG_9P_FSCACHE=y
+CONFIG_9P_FS_POSIX_ACL=y
+CONFIG_9P_FS_SECURITY=y
+CONFIG_NLS=y
+CONFIG_NLS_DEFAULT="utf8"
+CONFIG_NLS_CODEPAGE_437=m
+CONFIG_NLS_CODEPAGE_737=m
+CONFIG_NLS_CODEPAGE_775=m
+CONFIG_NLS_CODEPAGE_850=m
+CONFIG_NLS_CODEPAGE_852=m
+CONFIG_NLS_CODEPAGE_855=m
+CONFIG_NLS_CODEPAGE_857=m
+CONFIG_NLS_CODEPAGE_860=m
+CONFIG_NLS_CODEPAGE_861=m
+CONFIG_NLS_CODEPAGE_862=m
+CONFIG_NLS_CODEPAGE_863=m
+CONFIG_NLS_CODEPAGE_864=m
+CONFIG_NLS_CODEPAGE_865=m
+CONFIG_NLS_CODEPAGE_866=m
+CONFIG_NLS_CODEPAGE_869=m
+CONFIG_NLS_CODEPAGE_936=m
+CONFIG_NLS_CODEPAGE_950=m
+CONFIG_NLS_CODEPAGE_932=m
+CONFIG_NLS_CODEPAGE_949=m
+CONFIG_NLS_CODEPAGE_874=m
+CONFIG_NLS_ISO8859_8=m
+CONFIG_NLS_CODEPAGE_1250=m
+CONFIG_NLS_CODEPAGE_1251=m
+CONFIG_NLS_ASCII=m
+CONFIG_NLS_ISO8859_1=m
+CONFIG_NLS_ISO8859_2=m
+CONFIG_NLS_ISO8859_3=m
+CONFIG_NLS_ISO8859_4=m
+CONFIG_NLS_ISO8859_5=m
+CONFIG_NLS_ISO8859_6=m
+CONFIG_NLS_ISO8859_7=m
+CONFIG_NLS_ISO8859_9=m
+CONFIG_NLS_ISO8859_13=m
+CONFIG_NLS_ISO8859_14=m
+CONFIG_NLS_ISO8859_15=m
+CONFIG_NLS_KOI8_R=m
+CONFIG_NLS_KOI8_U=m
+CONFIG_NLS_MAC_ROMAN=m
+CONFIG_NLS_MAC_CELTIC=m
+CONFIG_NLS_MAC_CENTEURO=m
+CONFIG_NLS_MAC_CROATIAN=m
+CONFIG_NLS_MAC_CYRILLIC=m
+CONFIG_NLS_MAC_GAELIC=m
+CONFIG_NLS_MAC_GREEK=m
+CONFIG_NLS_MAC_ICELAND=m
+CONFIG_NLS_MAC_INUIT=m
+CONFIG_NLS_MAC_ROMANIAN=m
+CONFIG_NLS_MAC_TURKISH=m
+CONFIG_NLS_UTF8=m
+# CONFIG_DLM is not set
+# CONFIG_UNICODE is not set
+CONFIG_IO_WQ=y
+# end of File systems
+
+#
+# Security options
+#
+CONFIG_KEYS=y
+CONFIG_KEYS_REQUEST_CACHE=y
+# CONFIG_PERSISTENT_KEYRINGS is not set
+# CONFIG_TRUSTED_KEYS is not set
+CONFIG_ENCRYPTED_KEYS=m
+# CONFIG_USER_DECRYPTED_DATA is not set
+CONFIG_KEY_DH_OPERATIONS=y
+# CONFIG_SECURITY_DMESG_RESTRICT is not set
+CONFIG_SECURITY=y
+CONFIG_SECURITYFS=y
+CONFIG_SECURITY_NETWORK=y
+# CONFIG_SECURITY_NETWORK_XFRM is not set
+CONFIG_SECURITY_PATH=y
+CONFIG_HAVE_HARDENED_USERCOPY_ALLOCATOR=y
+CONFIG_HARDENED_USERCOPY=y
+CONFIG_FORTIFY_SOURCE=y
+# CONFIG_STATIC_USERMODEHELPER is not set
+# CONFIG_SECURITY_SELINUX is not set
+# CONFIG_SECURITY_SMACK is not set
+# CONFIG_SECURITY_TOMOYO is not set
+# CONFIG_SECURITY_APPARMOR is not set
+# CONFIG_SECURITY_LOADPIN is not set
+# CONFIG_SECURITY_YAMA is not set
+# CONFIG_SECURITY_SAFESETID is not set
+CONFIG_SECURITY_LOCKDOWN_LSM=y
+# CONFIG_SECURITY_LOCKDOWN_LSM_EARLY is not set
+CONFIG_LOCK_DOWN_KERNEL_FORCE_NONE=y
+# CONFIG_LOCK_DOWN_KERNEL_FORCE_INTEGRITY is not set
+# CONFIG_LOCK_DOWN_KERNEL_FORCE_CONFIDENTIALITY is not set
+CONFIG_SECURITY_LANDLOCK=y
+# CONFIG_INTEGRITY is not set
+CONFIG_DEFAULT_SECURITY_DAC=y
+CONFIG_LSM=""
+
+#
+# Kernel hardening options
+#
+
+#
+# Memory initialization
+#
+CONFIG_CC_HAS_AUTO_VAR_INIT_PATTERN=y
+CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO_BARE=y
+CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO=y
+CONFIG_INIT_STACK_NONE=y
+# CONFIG_INIT_STACK_ALL_PATTERN is not set
+# CONFIG_INIT_STACK_ALL_ZERO is not set
+# CONFIG_INIT_ON_ALLOC_DEFAULT_ON is not set
+# CONFIG_INIT_ON_FREE_DEFAULT_ON is not set
+CONFIG_CC_HAS_ZERO_CALL_USED_REGS=y
+# CONFIG_ZERO_CALL_USED_REGS is not set
+# end of Memory initialization
+
+CONFIG_RANDSTRUCT_NONE=y
+# end of Kernel hardening options
+# end of Security options
+
+CONFIG_XOR_BLOCKS=m
+CONFIG_CRYPTO=y
+
+#
+# Crypto core or helper
+#
+CONFIG_CRYPTO_ALGAPI=y
+CONFIG_CRYPTO_ALGAPI2=y
+CONFIG_CRYPTO_AEAD=m
+CONFIG_CRYPTO_AEAD2=y
+CONFIG_CRYPTO_SKCIPHER=y
+CONFIG_CRYPTO_SKCIPHER2=y
+CONFIG_CRYPTO_HASH=y
+CONFIG_CRYPTO_HASH2=y
+CONFIG_CRYPTO_RNG=m
+CONFIG_CRYPTO_RNG2=y
+CONFIG_CRYPTO_RNG_DEFAULT=m
+CONFIG_CRYPTO_AKCIPHER2=y
+CONFIG_CRYPTO_AKCIPHER=y
+CONFIG_CRYPTO_KPP2=y
+CONFIG_CRYPTO_KPP=y
+CONFIG_CRYPTO_ACOMP2=y
+CONFIG_CRYPTO_MANAGER=y
+CONFIG_CRYPTO_MANAGER2=y
+CONFIG_CRYPTO_USER=m
+CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y
+CONFIG_CRYPTO_GF128MUL=m
+CONFIG_CRYPTO_NULL=m
+CONFIG_CRYPTO_NULL2=y
+CONFIG_CRYPTO_PCRYPT=m
+CONFIG_CRYPTO_CRYPTD=m
+CONFIG_CRYPTO_AUTHENC=m
+# CONFIG_CRYPTO_TEST is not set
+CONFIG_CRYPTO_ENGINE=m
+# end of Crypto core or helper
+
+#
+# Public-key cryptography
+#
+CONFIG_CRYPTO_RSA=y
+CONFIG_CRYPTO_DH=y
+# CONFIG_CRYPTO_DH_RFC7919_GROUPS is not set
+CONFIG_CRYPTO_ECC=m
+CONFIG_CRYPTO_ECDH=m
+CONFIG_CRYPTO_ECDSA=m
+CONFIG_CRYPTO_ECRDSA=m
+CONFIG_CRYPTO_SM2=m
+CONFIG_CRYPTO_CURVE25519=m
+# end of Public-key cryptography
+
+#
+# Block ciphers
+#
+CONFIG_CRYPTO_AES=y
+# CONFIG_CRYPTO_AES_TI is not set
+# CONFIG_CRYPTO_ANUBIS is not set
+# CONFIG_CRYPTO_ARIA is not set
+CONFIG_CRYPTO_BLOWFISH=m
+CONFIG_CRYPTO_BLOWFISH_COMMON=m
+# CONFIG_CRYPTO_CAMELLIA is not set
+# CONFIG_CRYPTO_CAST5 is not set
+# CONFIG_CRYPTO_CAST6 is not set
+# CONFIG_CRYPTO_DES is not set
+# CONFIG_CRYPTO_FCRYPT is not set
+# CONFIG_CRYPTO_KHAZAD is not set
+# CONFIG_CRYPTO_SEED is not set
+CONFIG_CRYPTO_SERPENT=m
+# CONFIG_CRYPTO_SM4_GENERIC is not set
+# CONFIG_CRYPTO_TEA is not set
+CONFIG_CRYPTO_TWOFISH=m
+CONFIG_CRYPTO_TWOFISH_COMMON=m
+# end of Block ciphers
+
+#
+# Length-preserving ciphers and modes
+#
+CONFIG_CRYPTO_ADIANTUM=m
+# CONFIG_CRYPTO_ARC4 is not set
+CONFIG_CRYPTO_CHACHA20=m
+CONFIG_CRYPTO_CBC=y
+# CONFIG_CRYPTO_CFB is not set
+CONFIG_CRYPTO_CTR=m
+CONFIG_CRYPTO_CTS=y
+CONFIG_CRYPTO_ECB=y
+# CONFIG_CRYPTO_HCTR2 is not set
+# CONFIG_CRYPTO_KEYWRAP is not set
+# CONFIG_CRYPTO_LRW is not set
+# CONFIG_CRYPTO_OFB is not set
+# CONFIG_CRYPTO_PCBC is not set
+CONFIG_CRYPTO_XTS=y
+CONFIG_CRYPTO_NHPOLY1305=m
+# end of Length-preserving ciphers and modes
+
+#
+# AEAD (authenticated encryption with associated data) ciphers
+#
+# CONFIG_CRYPTO_AEGIS128 is not set
+CONFIG_CRYPTO_CHACHA20POLY1305=m
+CONFIG_CRYPTO_CCM=m
+CONFIG_CRYPTO_GCM=m
+CONFIG_CRYPTO_SEQIV=m
+CONFIG_CRYPTO_ECHAINIV=m
+CONFIG_CRYPTO_ESSIV=m
+# end of AEAD (authenticated encryption with associated data) ciphers
+
+#
+# Hashes, digests, and MACs
+#
+CONFIG_CRYPTO_BLAKE2B=m
+CONFIG_CRYPTO_CMAC=m
+CONFIG_CRYPTO_GHASH=m
+CONFIG_CRYPTO_HMAC=y
+CONFIG_CRYPTO_MD4=m
+CONFIG_CRYPTO_MD5=y
+CONFIG_CRYPTO_MICHAEL_MIC=m
+CONFIG_CRYPTO_POLY1305=m
+# CONFIG_CRYPTO_RMD160 is not set
+CONFIG_CRYPTO_SHA1=y
+CONFIG_CRYPTO_SHA256=y
+CONFIG_CRYPTO_SHA512=y
+CONFIG_CRYPTO_SHA3=m
+CONFIG_CRYPTO_SM3=m
+# CONFIG_CRYPTO_SM3_GENERIC is not set
+CONFIG_CRYPTO_STREEBOG=m
+# CONFIG_CRYPTO_VMAC is not set
+CONFIG_CRYPTO_WP512=m
+# CONFIG_CRYPTO_XCBC is not set
+CONFIG_CRYPTO_XXHASH=m
+# end of Hashes, digests, and MACs
+
+#
+# CRCs (cyclic redundancy checks)
+#
+CONFIG_CRYPTO_CRC32C=y
+CONFIG_CRYPTO_CRC32=y
+# CONFIG_CRYPTO_CRCT10DIF is not set
+# end of CRCs (cyclic redundancy checks)
+
+#
+# Compression
+#
+CONFIG_CRYPTO_DEFLATE=m
+CONFIG_CRYPTO_LZO=y
+# CONFIG_CRYPTO_842 is not set
+# CONFIG_CRYPTO_LZ4 is not set
+# CONFIG_CRYPTO_LZ4HC is not set
+# CONFIG_CRYPTO_ZSTD is not set
+# end of Compression
+
+#
+# Random number generation
+#
+# CONFIG_CRYPTO_ANSI_CPRNG is not set
+CONFIG_CRYPTO_DRBG_MENU=m
+CONFIG_CRYPTO_DRBG_HMAC=y
+# CONFIG_CRYPTO_DRBG_HASH is not set
+# CONFIG_CRYPTO_DRBG_CTR is not set
+CONFIG_CRYPTO_DRBG=m
+CONFIG_CRYPTO_JITTERENTROPY=m
+CONFIG_CRYPTO_KDF800108_CTR=y
+# end of Random number generation
+
+#
+# Userspace interface
+#
+CONFIG_CRYPTO_USER_API=y
+CONFIG_CRYPTO_USER_API_HASH=y
+# CONFIG_CRYPTO_USER_API_SKCIPHER is not set
+# CONFIG_CRYPTO_USER_API_RNG is not set
+# CONFIG_CRYPTO_USER_API_AEAD is not set
+CONFIG_CRYPTO_USER_API_ENABLE_OBSOLETE=y
+# CONFIG_CRYPTO_STATS is not set
+# end of Userspace interface
+
+CONFIG_CRYPTO_HASH_INFO=y
+CONFIG_CRYPTO_HW=y
+# CONFIG_CRYPTO_DEV_ATMEL_ECC is not set
+# CONFIG_CRYPTO_DEV_ATMEL_SHA204A is not set
+# CONFIG_CRYPTO_DEV_QAT_DH895xCC is not set
+# CONFIG_CRYPTO_DEV_QAT_C3XXX is not set
+# CONFIG_CRYPTO_DEV_QAT_C62X is not set
+# CONFIG_CRYPTO_DEV_QAT_4XXX is not set
+# CONFIG_CRYPTO_DEV_QAT_DH895xCCVF is not set
+# CONFIG_CRYPTO_DEV_QAT_C3XXXVF is not set
+# CONFIG_CRYPTO_DEV_QAT_C62XVF is not set
+# CONFIG_CRYPTO_DEV_NITROX_CNN55XX is not set
+CONFIG_CRYPTO_DEV_VIRTIO=m
+# CONFIG_CRYPTO_DEV_SAFEXCEL is not set
+# CONFIG_CRYPTO_DEV_CCREE is not set
+# CONFIG_CRYPTO_DEV_AMLOGIC_GXL is not set
+CONFIG_ASYMMETRIC_KEY_TYPE=y
+CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=y
+CONFIG_X509_CERTIFICATE_PARSER=y
+CONFIG_PKCS8_PRIVATE_KEY_PARSER=m
+CONFIG_PKCS7_MESSAGE_PARSER=y
+# CONFIG_PKCS7_TEST_KEY is not set
+CONFIG_SIGNED_PE_FILE_VERIFICATION=y
+# CONFIG_FIPS_SIGNATURE_SELFTEST is not set
+
+#
+# Certificates for signature checking
+#
+CONFIG_MODULE_SIG_KEY="certs/signing_key.pem"
+CONFIG_MODULE_SIG_KEY_TYPE_RSA=y
+# CONFIG_MODULE_SIG_KEY_TYPE_ECDSA is not set
+CONFIG_SYSTEM_TRUSTED_KEYRING=y
+CONFIG_SYSTEM_TRUSTED_KEYS=""
+# CONFIG_SYSTEM_EXTRA_CERTIFICATE is not set
+CONFIG_SECONDARY_TRUSTED_KEYRING=y
+# CONFIG_SYSTEM_BLACKLIST_KEYRING is not set
+# end of Certificates for signature checking
+
+CONFIG_BINARY_PRINTF=y
+
+#
+# Library routines
+#
+CONFIG_RAID6_PQ=m
+# CONFIG_RAID6_PQ_BENCHMARK is not set
+# CONFIG_PACKING is not set
+CONFIG_BITREVERSE=y
+CONFIG_GENERIC_STRNCPY_FROM_USER=y
+CONFIG_GENERIC_STRNLEN_USER=y
+CONFIG_GENERIC_NET_UTILS=y
+# CONFIG_CORDIC is not set
+# CONFIG_PRIME_NUMBERS is not set
+CONFIG_RATIONAL=y
+CONFIG_GENERIC_PCI_IOMAP=y
+
+#
+# Crypto library routines
+#
+CONFIG_CRYPTO_LIB_UTILS=y
+CONFIG_CRYPTO_LIB_AES=y
+CONFIG_CRYPTO_LIB_ARC4=m
+CONFIG_CRYPTO_LIB_BLAKE2S_GENERIC=y
+CONFIG_CRYPTO_LIB_CHACHA_GENERIC=m
+CONFIG_CRYPTO_LIB_CHACHA=m
+CONFIG_CRYPTO_LIB_CURVE25519_GENERIC=m
+CONFIG_CRYPTO_LIB_CURVE25519=m
+CONFIG_CRYPTO_LIB_DES=m
+CONFIG_CRYPTO_LIB_POLY1305_RSIZE=1
+CONFIG_CRYPTO_LIB_POLY1305_GENERIC=m
+CONFIG_CRYPTO_LIB_POLY1305=m
+CONFIG_CRYPTO_LIB_CHACHA20POLY1305=m
+CONFIG_CRYPTO_LIB_SHA1=y
+CONFIG_CRYPTO_LIB_SHA256=y
+# end of Crypto library routines
+
+CONFIG_CRC_CCITT=m
+CONFIG_CRC16=y
+# CONFIG_CRC_T10DIF is not set
+# CONFIG_CRC64_ROCKSOFT is not set
+CONFIG_CRC_ITU_T=y
+CONFIG_CRC32=y
+# CONFIG_CRC32_SELFTEST is not set
+CONFIG_CRC32_SLICEBY8=y
+# CONFIG_CRC32_SLICEBY4 is not set
+# CONFIG_CRC32_SARWATE is not set
+# CONFIG_CRC32_BIT is not set
+# CONFIG_CRC64 is not set
+# CONFIG_CRC4 is not set
+CONFIG_CRC7=y
+CONFIG_LIBCRC32C=m
+# CONFIG_CRC8 is not set
+CONFIG_XXHASH=y
+CONFIG_AUDIT_GENERIC=y
+# CONFIG_RANDOM32_SELFTEST is not set
+CONFIG_ZLIB_INFLATE=y
+CONFIG_ZLIB_DEFLATE=m
+CONFIG_LZO_COMPRESS=y
+CONFIG_LZO_DECOMPRESS=y
+CONFIG_LZ4_COMPRESS=y
+CONFIG_LZ4HC_COMPRESS=y
+CONFIG_LZ4_DECOMPRESS=y
+CONFIG_ZSTD_COMMON=y
+CONFIG_ZSTD_COMPRESS=y
+CONFIG_ZSTD_DECOMPRESS=y
+CONFIG_XZ_DEC=y
+CONFIG_XZ_DEC_X86=y
+CONFIG_XZ_DEC_POWERPC=y
+CONFIG_XZ_DEC_IA64=y
+CONFIG_XZ_DEC_ARM=y
+CONFIG_XZ_DEC_ARMTHUMB=y
+CONFIG_XZ_DEC_SPARC=y
+# CONFIG_XZ_DEC_MICROLZMA is not set
+CONFIG_XZ_DEC_BCJ=y
+# CONFIG_XZ_DEC_TEST is not set
+CONFIG_DECOMPRESS_GZIP=y
+CONFIG_DECOMPRESS_LZMA=y
+CONFIG_DECOMPRESS_XZ=y
+CONFIG_DECOMPRESS_LZO=y
+CONFIG_DECOMPRESS_LZ4=y
+CONFIG_DECOMPRESS_ZSTD=y
+CONFIG_GENERIC_ALLOCATOR=y
+CONFIG_BCH=m
+CONFIG_TEXTSEARCH=y
+CONFIG_TEXTSEARCH_KMP=m
+CONFIG_TEXTSEARCH_BM=m
+CONFIG_TEXTSEARCH_FSM=m
+CONFIG_INTERVAL_TREE=y
+CONFIG_XARRAY_MULTI=y
+CONFIG_ASSOCIATIVE_ARRAY=y
+CONFIG_HAS_IOMEM=y
+CONFIG_HAS_IOPORT_MAP=y
+CONFIG_HAS_DMA=y
+CONFIG_NEED_DMA_MAP_STATE=y
+CONFIG_ARCH_DMA_ADDR_T_64BIT=y
+CONFIG_DMA_DECLARE_COHERENT=y
+CONFIG_ARCH_HAS_SETUP_DMA_OPS=y
+CONFIG_ARCH_HAS_SYNC_DMA_FOR_DEVICE=y
+CONFIG_ARCH_HAS_SYNC_DMA_FOR_CPU=y
+CONFIG_ARCH_HAS_DMA_PREP_COHERENT=y
+CONFIG_SWIOTLB=y
+# CONFIG_DMA_RESTRICTED_POOL is not set
+CONFIG_DMA_NONCOHERENT_MMAP=y
+CONFIG_DMA_COHERENT_POOL=y
+CONFIG_DMA_DIRECT_REMAP=y
+# CONFIG_DMA_API_DEBUG is not set
+CONFIG_SGL_ALLOC=y
+# CONFIG_FORCE_NR_CPUS is not set
+CONFIG_CPU_RMAP=y
+CONFIG_DQL=y
+CONFIG_GLOB=y
+# CONFIG_GLOB_SELFTEST is not set
+CONFIG_NLATTR=y
+CONFIG_LRU_CACHE=m
+CONFIG_CLZ_TAB=y
+# CONFIG_IRQ_POLL is not set
+CONFIG_MPILIB=y
+CONFIG_LIBFDT=y
+CONFIG_OID_REGISTRY=y
+CONFIG_UCS2_STRING=y
+CONFIG_HAVE_GENERIC_VDSO=y
+CONFIG_GENERIC_GETTIMEOFDAY=y
+CONFIG_GENERIC_VDSO_TIME_NS=y
+CONFIG_FONT_SUPPORT=y
+# CONFIG_FONTS is not set
+CONFIG_FONT_8x8=y
+CONFIG_FONT_8x16=y
+CONFIG_SG_POOL=y
+CONFIG_ARCH_STACKWALK=y
+CONFIG_STACKDEPOT=y
+CONFIG_SBITMAP=y
+# end of Library routines
+
+CONFIG_GENERIC_IOREMAP=y
+CONFIG_GENERIC_LIB_DEVMEM_IS_ALLOWED=y
+
+#
+# Kernel hacking
+#
+
+#
+# printk and dmesg options
+#
+CONFIG_PRINTK_TIME=y
+# CONFIG_PRINTK_CALLER is not set
+# CONFIG_STACKTRACE_BUILD_ID is not set
+CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7
+CONFIG_CONSOLE_LOGLEVEL_QUIET=4
+CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4
+# CONFIG_DYNAMIC_DEBUG is not set
+# CONFIG_DYNAMIC_DEBUG_CORE is not set
+CONFIG_SYMBOLIC_ERRNAME=y
+CONFIG_DEBUG_BUGVERBOSE=y
+# end of printk and dmesg options
+
+# CONFIG_DEBUG_KERNEL is not set
+
+#
+# Compile-time checks and compiler options
+#
+CONFIG_AS_HAS_NON_CONST_LEB128=y
+CONFIG_FRAME_WARN=2048
+# CONFIG_STRIP_ASM_SYMS is not set
+# CONFIG_HEADERS_INSTALL is not set
+# CONFIG_DEBUG_SECTION_MISMATCH is not set
+CONFIG_SECTION_MISMATCH_WARN_ONLY=y
+CONFIG_ARCH_WANT_FRAME_POINTERS=y
+CONFIG_FRAME_POINTER=y
+# end of Compile-time checks and compiler options
+
+#
+# Generic Kernel Debugging Instruments
+#
+CONFIG_MAGIC_SYSRQ=y
+CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x1
+CONFIG_MAGIC_SYSRQ_SERIAL=y
+CONFIG_MAGIC_SYSRQ_SERIAL_SEQUENCE=""
+# CONFIG_DEBUG_FS is not set
+CONFIG_HAVE_ARCH_KGDB=y
+CONFIG_HAVE_ARCH_KGDB_QXFER_PKT=y
+CONFIG_ARCH_HAS_UBSAN_SANITIZE_ALL=y
+# CONFIG_UBSAN is not set
+CONFIG_HAVE_KCSAN_COMPILER=y
+# end of Generic Kernel Debugging Instruments
+
+#
+# Networking Debugging
+#
+# end of Networking Debugging
+
+#
+# Memory Debugging
+#
+# CONFIG_PAGE_EXTENSION is not set
+CONFIG_SLUB_DEBUG=y
+# CONFIG_SLUB_DEBUG_ON is not set
+# CONFIG_PAGE_POISONING is not set
+# CONFIG_DEBUG_RODATA_TEST is not set
+CONFIG_ARCH_HAS_DEBUG_WX=y
+# CONFIG_DEBUG_WX is not set
+CONFIG_GENERIC_PTDUMP=y
+CONFIG_HAVE_DEBUG_KMEMLEAK=y
+CONFIG_ARCH_HAS_DEBUG_VM_PGTABLE=y
+# CONFIG_DEBUG_VM_PGTABLE is not set
+CONFIG_ARCH_HAS_DEBUG_VIRTUAL=y
+CONFIG_DEBUG_MEMORY_INIT=y
+CONFIG_HAVE_ARCH_KASAN=y
+CONFIG_HAVE_ARCH_KASAN_VMALLOC=y
+CONFIG_CC_HAS_KASAN_GENERIC=y
+CONFIG_CC_HAS_WORKING_NOSANITIZE_ADDRESS=y
+# CONFIG_KASAN is not set
+CONFIG_HAVE_ARCH_KFENCE=y
+# CONFIG_KFENCE is not set
+# end of Memory Debugging
+
+#
+# Debug Oops, Lockups and Hangs
+#
+# CONFIG_PANIC_ON_OOPS is not set
+CONFIG_PANIC_ON_OOPS_VALUE=0
+CONFIG_PANIC_TIMEOUT=0
+# CONFIG_TEST_LOCKUP is not set
+# end of Debug Oops, Lockups and Hangs
+
+#
+# Scheduler Debugging
+#
+CONFIG_SCHED_INFO=y
+# end of Scheduler Debugging
+
+# CONFIG_DEBUG_TIMEKEEPING is not set
+
+#
+# Lock Debugging (spinlocks, mutexes, etc...)
+#
+CONFIG_LOCK_DEBUGGING_SUPPORT=y
+# CONFIG_WW_MUTEX_SELFTEST is not set
+# end of Lock Debugging (spinlocks, mutexes, etc...)
+
+# CONFIG_DEBUG_IRQFLAGS is not set
+CONFIG_STACKTRACE=y
+# CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set
+
+#
+# Debug kernel data structures
+#
+CONFIG_DEBUG_LIST=y
+CONFIG_BUG_ON_DATA_CORRUPTION=y
+# end of Debug kernel data structures
+
+#
+# RCU Debugging
+#
+CONFIG_RCU_CPU_STALL_TIMEOUT=21
+CONFIG_RCU_EXP_CPU_STALL_TIMEOUT=0
+# end of RCU Debugging
+
+CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
+CONFIG_HAVE_DYNAMIC_FTRACE=y
+CONFIG_HAVE_DYNAMIC_FTRACE_WITH_REGS=y
+CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
+CONFIG_HAVE_SYSCALL_TRACEPOINTS=y
+CONFIG_TRACING_SUPPORT=y
+# CONFIG_FTRACE is not set
+# CONFIG_SAMPLES is not set
+# CONFIG_STRICT_DEVMEM is not set
+
+#
+# riscv Debugging
+#
+# end of riscv Debugging
+
+#
+# Kernel Testing and Coverage
+#
+# CONFIG_KUNIT is not set
+CONFIG_ARCH_HAS_KCOV=y
+CONFIG_CC_HAS_SANCOV_TRACE_PC=y
+# CONFIG_KCOV is not set
+# CONFIG_RUNTIME_TESTING_MENU is not set
+CONFIG_ARCH_USE_MEMTEST=y
+# CONFIG_MEMTEST is not set
+# end of Kernel Testing and Coverage
+
+#
+# Rust hacking
+#
+# end of Rust hacking
+# end of Kernel hacking
diff --git a/testing/linux-starfive/APKBUILD b/testing/linux-starfive/APKBUILD
new file mode 100644
index 00000000000..90a362643df
--- /dev/null
+++ b/testing/linux-starfive/APKBUILD
@@ -0,0 +1,251 @@
+# Maintainer: Milan P. Stanić <mps@arvanta.net>
+
+_flavor=starfive
+pkgname=linux-${_flavor}
+pkgver=6.8.7
+case $pkgver in
+ *.*.*) _kernver=${pkgver%.*};;
+ *.*) _kernver=$pkgver;;
+esac
+pkgrel=0
+pkgdesc="starfive (development kernel)"
+url="https://www.kernel.org"
+depends="initramfs-generator"
+_depends_dev="perl gmp-dev elfutils-dev flex bison"
+makedepends="$_depends_dev sed bc linux-headers installkernel pigz
+ linux-firmware-any openssl-dev diffutils findutils python3"
+options="!strip !check"
+_config=${config:-config-$_flavor.${CARCH}}
+
+subpackages="$pkgname-dev:_dev:$CBUILD_ARCH"
+source="https://cdn.kernel.org/pub/linux/kernel/v${pkgver%%.*}.x/linux-$_kernver.tar.xz"
+case $pkgver in
+ *.*.0) source="$source";;
+ *.*.*) source="$source
+ https://cdn.kernel.org/pub/linux/kernel/v${pkgver%%.*}.x/patch-$pkgver.xz" ;;
+esac
+ source="$source
+ config-starfive.riscv64
+ aurel32.6.7.y.patch
+ "
+
+builddir="$srcdir/linux-${_kernver}"
+arch="riscv64"
+license="GPL-2.0-only"
+
+unset _flavors
+for _i in $source; do
+ case $_i in
+ config-*.$CARCH)
+ _f=${_i%.$CARCH}
+ _f=${_f#config-}
+ _flavors="$_flavors ${_f}"
+ if [ "linux-$_f" != "$pkgname" ]; then
+ subpackages="$subpackages linux-${_f}::$CBUILD_ARCH linux-${_f}-dev:_dev:$CBUILD_ARCH"
+ fi
+ ;;
+ esac
+done
+
+_carch=${CARCH}
+case "$_carch" in
+aarch64*) _carch="arm64" ;;
+arm*) _carch="arm" ;;
+riscv64) _carch="riscv" ;;
+esac
+
+prepare() {
+ local _patch_failed=
+ case $pkgver in
+ *.*.0);;
+ *)
+ msg "Applying patch-$pkgver.xz"
+ unxz -c < "$srcdir"/patch-$pkgver.xz | patch -p1 -N ;;
+ esac
+
+ # first apply patches in specified order
+ mkdir drivers/pci/controller/plda
+ cp drivers/pci/controller/pcie-microchip-host.c drivers/pci/controller/plda/pcie-microchip-host.c
+ for i in $source; do
+ case $i in
+ *.patch)
+ msg "Applying $i..."
+ if ! patch -s -p1 -N -i "$srcdir"/$i; then
+ echo $i >>failed
+ _patch_failed=1
+ fi
+ ;;
+ esac
+ done
+
+ if ! [ -z "$_patch_failed" ]; then
+ error "The following patches failed:"
+ cat failed
+ return 1
+ fi
+ # remove localversion from patch if any
+ rm -f localversion*
+ oldconfig
+}
+
+oldconfig() {
+ for i in $_flavors; do
+ local _config=config-$i.${CARCH}
+ echo "-$pkgrel-$i" > "$builddir"/localversion-alpine \
+ || return 1
+
+ cp "$srcdir"/$_config "$builddir"/.config
+ make -C $builddir \
+ O="$builddir" \
+ ARCH="$_carch" \
+ listnewconfig oldconfig
+ done
+}
+
+build() {
+ unset LDFLAGS
+ export KBUILD_BUILD_TIMESTAMP="$(date -Ru${SOURCE_DATE_EPOCH:+d @$SOURCE_DATE_EPOCH})"
+ make ARCH="$_carch" DTC_FLAGS="-@" CC="${CC:-gcc}" \
+ KBUILD_BUILD_VERSION="$((pkgrel + 1 ))-Alpine"
+}
+
+_package() {
+ local _buildflavor="$1" _outdir="$2"
+ local _abi_release=${pkgver}-${pkgrel}-${_buildflavor}
+ export KBUILD_BUILD_TIMESTAMP="$(date -Ru${SOURCE_DATE_EPOCH:+d @$SOURCE_DATE_EPOCH})"
+
+ # modules_install seems to regenerate a defect Modules.symvers on s390x. Work
+ # around it by backing it up and restore it after modules_install
+ cp Module.symvers Module.symvers.backup
+
+ mkdir -p "$_outdir"/boot "$_outdir"/lib/modules
+
+ local _install
+ case "$CARCH" in
+ arm*|aarch64) _install="zinstall dtbs_install";;
+ riscv64) _install="zinstall dtbs_install";;
+ *) _install=install;;
+ esac
+
+ make -j1 modules_install $_install \
+ ARCH="$_carch" \
+ INSTALL_MOD_PATH="$_outdir" \
+ INSTALL_PATH="$_outdir"/boot \
+ INSTALL_DTBS_PATH="$_outdir/boot/dtbs-$_buildflavor"
+
+ cp Module.symvers.backup Module.symvers
+
+ rm -f "$_outdir"/lib/modules/${_abi_release}/build \
+ "$_outdir"/lib/modules/${_abi_release}/source
+ rm -rf "$_outdir"/lib/firmware
+
+ install -D -m644 include/config/kernel.release \
+ "$_outdir"/usr/share/kernel/$_buildflavor/kernel.release
+ cp "$builddir"/.config $pkgdir/boot/config-$_flavor
+
+}
+
+# main flavor installs in $pkgdir
+package() {
+ depends="$depends linux-firmware-any"
+
+ _package $_flavor "$pkgdir"
+}
+
+_dev() {
+ local _flavor=$(echo $subpkgname | sed -E 's/(^linux-|-dev$)//g')
+ local _abi_release=${pkgver}-${pkgrel}-$_flavor
+ # copy the only the parts that we really need for build 3rd party
+ # kernel modules and install those as /usr/src/linux-headers,
+ # simlar to what ubuntu does
+ #
+ # this way you dont need to install the 300-400 kernel sources to
+ # build a tiny kernel module
+ #
+ pkgdesc="Headers and script for third party modules for $_flavor kernel"
+ depends="$_depends_dev"
+ local dir="$subpkgdir"/usr/src/linux-headers-${_abi_release}
+ export KBUILD_BUILD_TIMESTAMP="$(date -Ru${SOURCE_DATE_EPOCH:+d @$SOURCE_DATE_EPOCH})"
+
+ # first we import config, run prepare to set up for building
+ # external modules, and create the scripts
+ mkdir -p $dir
+ cd $builddir
+ cp "$srcdir"/config-$_flavor.${CARCH} "$dir"/.config
+ echo "-$pkgrel-$_flavor" > "$dir"/localversion-alpine
+
+ echo "Installing headers..."
+ cp -t $dir -a $builddir/include
+echo "**********"
+ install -Dt $dir -m644 $builddir/Makefile
+ install -Dt $dir -m644 $builddir/Module.symvers
+ install -Dt $dir -m644 $builddir/System.map
+ cp -t $dir -a $builddir/scripts
+
+echo "***********************************"
+ install -Dt "${dir}/arch/${_carch}" -m644 $builddir/arch/${_carch}/Makefile
+ install -Dt "${dir}/arch/${_carch}/kernel" -m644 $builddir/arch/${_carch}/kernel/asm-offsets.s
+ cp -t "${dir}/arch/${_carch}" -a $builddir/arch/${_carch}/include
+
+echo "***********************************"
+ install -Dt "$dir/drivers/md" -m644 drivers/md/*.h
+ install -Dt "$dir/net/mac80211" -m644 net/mac80211/*.h
+
+ # https://bugs.archlinux.org/task/13146
+ install -Dt "$dir/drivers/media/i2c" -m644 drivers/media/i2c/msp3400-driver.h
+
+ # https://bugs.archlinux.org/task/20402
+ install -Dt "$dir/drivers/media/usb/dvb-usb" -m644 drivers/media/usb/dvb-usb/*.h
+ install -Dt "$dir/drivers/media/dvb-frontends" -m644 drivers/media/dvb-frontends/*.h
+ install -Dt "$dir/drivers/media/tuners" -m644 drivers/media/tuners/*.h
+
+ # https://bugs.archlinux.org/task/71392
+ install -Dt "$dir/drivers/iio/common/hid-sensors" -m644 drivers/iio/common/hid-sensors/*.h
+
+ echo "Installing KConfig files..."
+ find . -name 'Kconfig*' -exec install -Dm644 {} "$builddir/{}" \;
+
+ echo "Removing unneeded architectures..."
+ local arch
+ for arch in "$dir"/arch/*/; do
+ case $(basename "$arch") in $_carch) continue ;; esac
+ echo "Removing $(basename "$arch")"
+ rm -r "$arch"
+ done
+
+ echo "Removing broken symlinks..."
+ find -L "$builddir" -type l -printf 'Removing %P\n' -delete
+
+ echo "Removing loose objects..."
+ find "$builddir" -type f -name '*.o' -printf 'Removing %P\n' -delete
+
+ echo "Stripping build tools..."
+ local file
+ while read -rd '' file; do
+ case "$(file -bi "$file")" in
+ application/x-sharedlib\;*) # Libraries (.so)
+ strip -v $STRIP_SHARED "$file" ;;
+ application/x-archive\;*) # Libraries (.a)
+ strip -v $STRIP_STATIC "$file" ;;
+ application/x-executable\;*) # Binaries
+ strip -v $STRIP_BINARIES "$file" ;;
+ application/x-pie-executable\;*) # Relocatable binaries
+ strip -v $STRIP_SHARED "$file" ;;
+ esac
+ done < <(find "$builddir" -type f -perm -u+x ! -name vmlinux -print0)
+
+ echo "Stripping vmlinux..."
+ strip -v $STRIP_STATIC "$builddir/vmlinux"
+
+ echo "Adding symlink..."
+ mkdir -p "$subpkgdir"/lib/modules/${_abi_release}
+ ln -sf /usr/src/linux-headers-${_abi_release} \
+ "$subpkgdir"/lib/modules/${_abi_release}/build
+}
+
+sha512sums="
+5c4eb4aa1d3f7d1ea01c0f7ddeadacdece6e144fd4bdfc16b2b925d3e10dc04de3a6db69320b79a96c3560052616f001d2c09e7a1bb4f7b731e2380a7ecce068 linux-6.8.tar.xz
+19f6ff889e643bd46bce57ff9312900ab2bf866a8c2eaf0ab545bd6f4189872346c861672babbff991dbb04e3ef1a9b805aaac491d660482bdedc30af5922a0c patch-6.8.7.xz
+9d6ec9c178d5fb35669ad8f9ea86374bc26fbe998be8f285bfb2b891d6a53b0aa9ed5b0c8023e9322868488546a20dbbf5aeca2612f8813e5ade18ba3ae28f62 config-starfive.riscv64
+6031bfd1d002e7e12a32ca7d0f91ed642045c2ff205a8c256d9818cd16688c8ca44bd22fec4daa345b896cc86744efb19d41711a6c14241baddd2b19ff3bc6a9 aurel32.6.7.y.patch
+"
diff --git a/testing/linux-starfive/aurel32.6.7.y.patch b/testing/linux-starfive/aurel32.6.7.y.patch
new file mode 100644
index 00000000000..d35c7e9aeb3
--- /dev/null
+++ b/testing/linux-starfive/aurel32.6.7.y.patch
@@ -0,0 +1,5023 @@
+From 28015397cb6568ef62f56b1cc87a95f7bcd01320 Mon Sep 17 00:00:00 2001
+From: Minda Chen <minda.chen@starfivetech.com>
+Date: Mon, 8 Jan 2024 19:05:51 +0800
+Subject: [PATCH 01/23] dt-bindings: PCI: Add PLDA XpressRICH PCIe host common
+ properties
+
+Add PLDA XpressRICH PCIe host common properties dt-binding doc.
+PolarFire PCIe host using PLDA IP. Move common properties from Microchip
+PolarFire PCIe host to PLDA files.
+
+Signed-off-by: Minda Chen <minda.chen@starfivetech.com>
+Reviewed-by: Hal Feng <hal.feng@starfivetech.com>
+Reviewed-by: Conor Dooley <conor.dooley@microchip.com>
+Reviewed-by: Rob Herring <robh@kernel.org>
+Tested-by: John Clark <inindev@gmail.com>
+Message-ID: <20240108110612.19048-2-minda.chen@starfivetech.com>
+Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
+---
+ .../bindings/pci/microchip,pcie-host.yaml | 55 +-------------
+ .../pci/plda,xpressrich3-axi-common.yaml | 75 +++++++++++++++++++
+ 2 files changed, 76 insertions(+), 54 deletions(-)
+ create mode 100644 Documentation/devicetree/bindings/pci/plda,xpressrich3-axi-common.yaml
+
+diff --git a/Documentation/devicetree/bindings/pci/microchip,pcie-host.yaml b/Documentation/devicetree/bindings/pci/microchip,pcie-host.yaml
+index f7a3c2636355..7c2d51221f65 100644
+--- a/Documentation/devicetree/bindings/pci/microchip,pcie-host.yaml
++++ b/Documentation/devicetree/bindings/pci/microchip,pcie-host.yaml
+@@ -10,21 +10,13 @@ maintainers:
+ - Daire McNamara <daire.mcnamara@microchip.com>
+
+ allOf:
+- - $ref: /schemas/pci/pci-bus.yaml#
++ - $ref: plda,xpressrich3-axi-common.yaml#
+ - $ref: /schemas/interrupt-controller/msi-controller.yaml#
+
+ properties:
+ compatible:
+ const: microchip,pcie-host-1.0 # PolarFire
+
+- reg:
+- maxItems: 2
+-
+- reg-names:
+- items:
+- - const: cfg
+- - const: apb
+-
+ clocks:
+ description:
+ Fabric Interface Controllers, FICs, are the interface between the FPGA
+@@ -52,18 +44,6 @@ properties:
+ items:
+ pattern: '^fic[0-3]$'
+
+- interrupts:
+- minItems: 1
+- items:
+- - description: PCIe host controller
+- - description: builtin MSI controller
+-
+- interrupt-names:
+- minItems: 1
+- items:
+- - const: pcie
+- - const: msi
+-
+ ranges:
+ maxItems: 1
+
+@@ -71,39 +51,6 @@ properties:
+ minItems: 1
+ maxItems: 6
+
+- msi-controller:
+- description: Identifies the node as an MSI controller.
+-
+- msi-parent:
+- description: MSI controller the device is capable of using.
+-
+- interrupt-controller:
+- type: object
+- properties:
+- '#address-cells':
+- const: 0
+-
+- '#interrupt-cells':
+- const: 1
+-
+- interrupt-controller: true
+-
+- required:
+- - '#address-cells'
+- - '#interrupt-cells'
+- - interrupt-controller
+-
+- additionalProperties: false
+-
+-required:
+- - reg
+- - reg-names
+- - "#interrupt-cells"
+- - interrupts
+- - interrupt-map-mask
+- - interrupt-map
+- - msi-controller
+-
+ unevaluatedProperties: false
+
+ examples:
+diff --git a/Documentation/devicetree/bindings/pci/plda,xpressrich3-axi-common.yaml b/Documentation/devicetree/bindings/pci/plda,xpressrich3-axi-common.yaml
+new file mode 100644
+index 000000000000..31bb17b11e58
+--- /dev/null
++++ b/Documentation/devicetree/bindings/pci/plda,xpressrich3-axi-common.yaml
+@@ -0,0 +1,75 @@
++# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
++%YAML 1.2
++---
++$id: http://devicetree.org/schemas/pci/plda,xpressrich3-axi-common.yaml#
++$schema: http://devicetree.org/meta-schemas/core.yaml#
++
++title: PLDA XpressRICH PCIe host common properties
++
++maintainers:
++ - Daire McNamara <daire.mcnamara@microchip.com>
++ - Kevin Xie <kevin.xie@starfivetech.com>
++
++description:
++ Generic PLDA XpressRICH PCIe host common properties.
++
++allOf:
++ - $ref: /schemas/pci/pci-bus.yaml#
++
++properties:
++ reg:
++ maxItems: 2
++
++ reg-names:
++ items:
++ - const: cfg
++ - const: apb
++
++ interrupts:
++ minItems: 1
++ items:
++ - description: PCIe host controller
++ - description: builtin MSI controller
++
++ interrupt-names:
++ minItems: 1
++ items:
++ - const: pcie
++ - const: msi
++
++ msi-controller:
++ description: Identifies the node as an MSI controller.
++
++ msi-parent:
++ description: MSI controller the device is capable of using.
++
++ interrupt-controller:
++ type: object
++ properties:
++ '#address-cells':
++ const: 0
++
++ '#interrupt-cells':
++ const: 1
++
++ interrupt-controller: true
++
++ required:
++ - '#address-cells'
++ - '#interrupt-cells'
++ - interrupt-controller
++
++ additionalProperties: false
++
++required:
++ - reg
++ - reg-names
++ - interrupts
++ - msi-controller
++ - "#interrupt-cells"
++ - interrupt-map-mask
++ - interrupt-map
++
++additionalProperties: true
++
++...
+--
+2.43.0
+
+
+From 3e4b15a292dc46205ccca0e73e0397936ce8a8b6 Mon Sep 17 00:00:00 2001
+From: Minda Chen <minda.chen@starfivetech.com>
+Date: Mon, 8 Jan 2024 19:05:52 +0800
+Subject: [PATCH 02/23] PCI: microchip: Move pcie-microchip-host.c to plda
+ directory
+
+For Microchip Polarfire PCIe host is PLDA XpressRich IP, move to plda
+directory. Prepare for refactoring the codes.
+
+Signed-off-by: Minda Chen <minda.chen@starfivetech.com>
+Reviewed-by: Conor Dooley <conor.dooley@microchip.com>
+Message-ID: <20240108110612.19048-3-minda.chen@starfivetech.com>
+Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
+---
+ MAINTAINERS | 4 ++--
+ drivers/pci/controller/Kconfig | 9 +--------
+ drivers/pci/controller/Makefile | 2 +-
+ drivers/pci/controller/plda/Kconfig | 14 ++++++++++++++
+ drivers/pci/controller/plda/Makefile | 2 ++
+ .../controller/{ => plda}/pcie-microchip-host.c | 2 +-
+ 6 files changed, 21 insertions(+), 12 deletions(-)
+ create mode 100644 drivers/pci/controller/plda/Kconfig
+ create mode 100644 drivers/pci/controller/plda/Makefile
+ rename drivers/pci/controller/{ => plda}/pcie-microchip-host.c (99%)
+
+diff --git a/MAINTAINERS b/MAINTAINERS
+index a7c4cf8201e0..1a2a4d2fab74 100644
+--- a/MAINTAINERS
++++ b/MAINTAINERS
+@@ -16789,7 +16789,7 @@ M: Daire McNamara <daire.mcnamara@microchip.com>
+ L: linux-pci@vger.kernel.org
+ S: Supported
+ F: Documentation/devicetree/bindings/pci/microchip*
+-F: drivers/pci/controller/*microchip*
++F: drivers/pci/controller/plda/*microchip*
+
+ PCIE DRIVER FOR QUALCOMM MSM
+ M: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
+@@ -18587,7 +18587,7 @@ F: drivers/char/hw_random/mpfs-rng.c
+ F: drivers/clk/microchip/clk-mpfs*.c
+ F: drivers/i2c/busses/i2c-microchip-corei2c.c
+ F: drivers/mailbox/mailbox-mpfs.c
+-F: drivers/pci/controller/pcie-microchip-host.c
++F: drivers/pci/controller/plda/pcie-microchip-host.c
+ F: drivers/pwm/pwm-microchip-core.c
+ F: drivers/reset/reset-mpfs.c
+ F: drivers/rtc/rtc-mpfs.c
+diff --git a/drivers/pci/controller/Kconfig b/drivers/pci/controller/Kconfig
+index e534c02ee34f..4d2c188f5835 100644
+--- a/drivers/pci/controller/Kconfig
++++ b/drivers/pci/controller/Kconfig
+@@ -215,14 +215,6 @@ config PCIE_MT7621
+ help
+ This selects a driver for the MediaTek MT7621 PCIe Controller.
+
+-config PCIE_MICROCHIP_HOST
+- tristate "Microchip AXI PCIe controller"
+- depends on PCI_MSI && OF
+- select PCI_HOST_COMMON
+- help
+- Say Y here if you want kernel to support the Microchip AXI PCIe
+- Host Bridge driver.
+-
+ config PCI_HYPERV_INTERFACE
+ tristate "Microsoft Hyper-V PCI Interface"
+ depends on ((X86 && X86_64) || ARM64) && HYPERV && PCI_MSI
+@@ -356,4 +348,5 @@ config PCIE_XILINX_CPM
+ source "drivers/pci/controller/cadence/Kconfig"
+ source "drivers/pci/controller/dwc/Kconfig"
+ source "drivers/pci/controller/mobiveil/Kconfig"
++source "drivers/pci/controller/plda/Kconfig"
+ endmenu
+diff --git a/drivers/pci/controller/Makefile b/drivers/pci/controller/Makefile
+index f2b19e6174af..038ccbd9e3ba 100644
+--- a/drivers/pci/controller/Makefile
++++ b/drivers/pci/controller/Makefile
+@@ -33,7 +33,6 @@ obj-$(CONFIG_PCIE_ROCKCHIP_EP) += pcie-rockchip-ep.o
+ obj-$(CONFIG_PCIE_ROCKCHIP_HOST) += pcie-rockchip-host.o
+ obj-$(CONFIG_PCIE_MEDIATEK) += pcie-mediatek.o
+ obj-$(CONFIG_PCIE_MEDIATEK_GEN3) += pcie-mediatek-gen3.o
+-obj-$(CONFIG_PCIE_MICROCHIP_HOST) += pcie-microchip-host.o
+ obj-$(CONFIG_VMD) += vmd.o
+ obj-$(CONFIG_PCIE_BRCMSTB) += pcie-brcmstb.o
+ obj-$(CONFIG_PCI_LOONGSON) += pci-loongson.o
+@@ -44,6 +43,7 @@ obj-$(CONFIG_PCIE_MT7621) += pcie-mt7621.o
+ # pcie-hisi.o quirks are needed even without CONFIG_PCIE_DW
+ obj-y += dwc/
+ obj-y += mobiveil/
++obj-y += plda/
+
+
+ # The following drivers are for devices that use the generic ACPI
+diff --git a/drivers/pci/controller/plda/Kconfig b/drivers/pci/controller/plda/Kconfig
+new file mode 100644
+index 000000000000..5cb3be4fc98c
+--- /dev/null
++++ b/drivers/pci/controller/plda/Kconfig
+@@ -0,0 +1,14 @@
++# SPDX-License-Identifier: GPL-2.0
++
++menu "PLDA-based PCIe controllers"
++ depends on PCI
++
++config PCIE_MICROCHIP_HOST
++ tristate "Microchip AXI PCIe controller"
++ depends on PCI_MSI && OF
++ select PCI_HOST_COMMON
++ help
++ Say Y here if you want kernel to support the Microchip AXI PCIe
++ Host Bridge driver.
++
++endmenu
+diff --git a/drivers/pci/controller/plda/Makefile b/drivers/pci/controller/plda/Makefile
+new file mode 100644
+index 000000000000..e1a265cbf91c
+--- /dev/null
++++ b/drivers/pci/controller/plda/Makefile
+@@ -0,0 +1,2 @@
++# SPDX-License-Identifier: GPL-2.0
++obj-$(CONFIG_PCIE_MICROCHIP_HOST) += pcie-microchip-host.o
+diff --git a/drivers/pci/controller/pcie-microchip-host.c b/drivers/pci/controller/plda/pcie-microchip-host.c
+similarity index 99%
+rename from drivers/pci/controller/pcie-microchip-host.c
+rename to drivers/pci/controller/plda/pcie-microchip-host.c
+index 137fb8570ba2..cb09a8137e25 100644
+--- a/drivers/pci/controller/pcie-microchip-host.c
++++ b/drivers/pci/controller/plda/pcie-microchip-host.c
+@@ -18,7 +18,7 @@
+ #include <linux/pci-ecam.h>
+ #include <linux/platform_device.h>
+
+-#include "../pci.h"
++#include "../../pci.h"
+
+ /* Number of MSI IRQs */
+ #define MC_MAX_NUM_MSI_IRQS 32
+--
+2.43.0
+
+
+From df7fb97715c19a67eb4c19bf63752206d2f62a93 Mon Sep 17 00:00:00 2001
+From: Minda Chen <minda.chen@starfivetech.com>
+Date: Mon, 8 Jan 2024 19:05:53 +0800
+Subject: [PATCH 03/23] PCI: microchip: Move PLDA IP register macros to
+ pcie-plda.h
+
+Move PLDA PCIe host controller IP registers macros to pcie-plda.h,
+including bridge registers and local IRQ event number.
+
+Signed-off-by: Minda Chen <minda.chen@starfivetech.com>
+Reviewed-by: Conor Dooley <conor.dooley@microchip.com>
+Message-ID: <20240108110612.19048-4-minda.chen@starfivetech.com>
+Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
+---
+ MAINTAINERS | 8 ++
+ .../pci/controller/plda/pcie-microchip-host.c | 108 +++---------------
+ drivers/pci/controller/plda/pcie-plda.h | 108 ++++++++++++++++++
+ 3 files changed, 132 insertions(+), 92 deletions(-)
+ create mode 100644 drivers/pci/controller/plda/pcie-plda.h
+
+diff --git a/MAINTAINERS b/MAINTAINERS
+index 1a2a4d2fab74..730fe2d640a1 100644
+--- a/MAINTAINERS
++++ b/MAINTAINERS
+@@ -16557,6 +16557,14 @@ S: Maintained
+ F: Documentation/devicetree/bindings/pci/layerscape-pcie-gen4.txt
+ F: drivers/pci/controller/mobiveil/pcie-layerscape-gen4.c
+
++PCI DRIVER FOR PLDA PCIE IP
++M: Daire McNamara <daire.mcnamara@microchip.com>
++M: Kevin Xie <kevin.xie@starfivetech.com>
++L: linux-pci@vger.kernel.org
++S: Maintained
++F: Documentation/devicetree/bindings/pci/plda,*
++F: drivers/pci/controller/plda/*plda*
++
+ PCI DRIVER FOR RENESAS R-CAR
+ M: Marek Vasut <marek.vasut+renesas@gmail.com>
+ M: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
+diff --git a/drivers/pci/controller/plda/pcie-microchip-host.c b/drivers/pci/controller/plda/pcie-microchip-host.c
+index cb09a8137e25..d9030d550482 100644
+--- a/drivers/pci/controller/plda/pcie-microchip-host.c
++++ b/drivers/pci/controller/plda/pcie-microchip-host.c
+@@ -19,6 +19,7 @@
+ #include <linux/platform_device.h>
+
+ #include "../../pci.h"
++#include "pcie-plda.h"
+
+ /* Number of MSI IRQs */
+ #define MC_MAX_NUM_MSI_IRQS 32
+@@ -30,84 +31,6 @@
+ #define MC_PCIE_BRIDGE_ADDR (MC_PCIE1_BRIDGE_ADDR)
+ #define MC_PCIE_CTRL_ADDR (MC_PCIE1_CTRL_ADDR)
+
+-/* PCIe Bridge Phy Regs */
+-#define PCIE_PCI_IRQ_DW0 0xa8
+-#define MSIX_CAP_MASK BIT(31)
+-#define NUM_MSI_MSGS_MASK GENMASK(6, 4)
+-#define NUM_MSI_MSGS_SHIFT 4
+-
+-#define IMASK_LOCAL 0x180
+-#define DMA_END_ENGINE_0_MASK 0x00000000u
+-#define DMA_END_ENGINE_0_SHIFT 0
+-#define DMA_END_ENGINE_1_MASK 0x00000000u
+-#define DMA_END_ENGINE_1_SHIFT 1
+-#define DMA_ERROR_ENGINE_0_MASK 0x00000100u
+-#define DMA_ERROR_ENGINE_0_SHIFT 8
+-#define DMA_ERROR_ENGINE_1_MASK 0x00000200u
+-#define DMA_ERROR_ENGINE_1_SHIFT 9
+-#define A_ATR_EVT_POST_ERR_MASK 0x00010000u
+-#define A_ATR_EVT_POST_ERR_SHIFT 16
+-#define A_ATR_EVT_FETCH_ERR_MASK 0x00020000u
+-#define A_ATR_EVT_FETCH_ERR_SHIFT 17
+-#define A_ATR_EVT_DISCARD_ERR_MASK 0x00040000u
+-#define A_ATR_EVT_DISCARD_ERR_SHIFT 18
+-#define A_ATR_EVT_DOORBELL_MASK 0x00000000u
+-#define A_ATR_EVT_DOORBELL_SHIFT 19
+-#define P_ATR_EVT_POST_ERR_MASK 0x00100000u
+-#define P_ATR_EVT_POST_ERR_SHIFT 20
+-#define P_ATR_EVT_FETCH_ERR_MASK 0x00200000u
+-#define P_ATR_EVT_FETCH_ERR_SHIFT 21
+-#define P_ATR_EVT_DISCARD_ERR_MASK 0x00400000u
+-#define P_ATR_EVT_DISCARD_ERR_SHIFT 22
+-#define P_ATR_EVT_DOORBELL_MASK 0x00000000u
+-#define P_ATR_EVT_DOORBELL_SHIFT 23
+-#define PM_MSI_INT_INTA_MASK 0x01000000u
+-#define PM_MSI_INT_INTA_SHIFT 24
+-#define PM_MSI_INT_INTB_MASK 0x02000000u
+-#define PM_MSI_INT_INTB_SHIFT 25
+-#define PM_MSI_INT_INTC_MASK 0x04000000u
+-#define PM_MSI_INT_INTC_SHIFT 26
+-#define PM_MSI_INT_INTD_MASK 0x08000000u
+-#define PM_MSI_INT_INTD_SHIFT 27
+-#define PM_MSI_INT_INTX_MASK 0x0f000000u
+-#define PM_MSI_INT_INTX_SHIFT 24
+-#define PM_MSI_INT_MSI_MASK 0x10000000u
+-#define PM_MSI_INT_MSI_SHIFT 28
+-#define PM_MSI_INT_AER_EVT_MASK 0x20000000u
+-#define PM_MSI_INT_AER_EVT_SHIFT 29
+-#define PM_MSI_INT_EVENTS_MASK 0x40000000u
+-#define PM_MSI_INT_EVENTS_SHIFT 30
+-#define PM_MSI_INT_SYS_ERR_MASK 0x80000000u
+-#define PM_MSI_INT_SYS_ERR_SHIFT 31
+-#define NUM_LOCAL_EVENTS 15
+-#define ISTATUS_LOCAL 0x184
+-#define IMASK_HOST 0x188
+-#define ISTATUS_HOST 0x18c
+-#define IMSI_ADDR 0x190
+-#define ISTATUS_MSI 0x194
+-
+-/* PCIe Master table init defines */
+-#define ATR0_PCIE_WIN0_SRCADDR_PARAM 0x600u
+-#define ATR0_PCIE_ATR_SIZE 0x25
+-#define ATR0_PCIE_ATR_SIZE_SHIFT 1
+-#define ATR0_PCIE_WIN0_SRC_ADDR 0x604u
+-#define ATR0_PCIE_WIN0_TRSL_ADDR_LSB 0x608u
+-#define ATR0_PCIE_WIN0_TRSL_ADDR_UDW 0x60cu
+-#define ATR0_PCIE_WIN0_TRSL_PARAM 0x610u
+-
+-/* PCIe AXI slave table init defines */
+-#define ATR0_AXI4_SLV0_SRCADDR_PARAM 0x800u
+-#define ATR_SIZE_SHIFT 1
+-#define ATR_IMPL_ENABLE 1
+-#define ATR0_AXI4_SLV0_SRC_ADDR 0x804u
+-#define ATR0_AXI4_SLV0_TRSL_ADDR_LSB 0x808u
+-#define ATR0_AXI4_SLV0_TRSL_ADDR_UDW 0x80cu
+-#define ATR0_AXI4_SLV0_TRSL_PARAM 0x810u
+-#define PCIE_TX_RX_INTERFACE 0x00000000u
+-#define PCIE_CONFIG_INTERFACE 0x00000001u
+-
+-#define ATR_ENTRY_SIZE 32
+-
+ /* PCIe Controller Phy Regs */
+ #define SEC_ERROR_EVENT_CNT 0x20
+ #define DED_ERROR_EVENT_CNT 0x24
+@@ -179,20 +102,21 @@
+ #define EVENT_LOCAL_DMA_END_ENGINE_1 12
+ #define EVENT_LOCAL_DMA_ERROR_ENGINE_0 13
+ #define EVENT_LOCAL_DMA_ERROR_ENGINE_1 14
+-#define EVENT_LOCAL_A_ATR_EVT_POST_ERR 15
+-#define EVENT_LOCAL_A_ATR_EVT_FETCH_ERR 16
+-#define EVENT_LOCAL_A_ATR_EVT_DISCARD_ERR 17
+-#define EVENT_LOCAL_A_ATR_EVT_DOORBELL 18
+-#define EVENT_LOCAL_P_ATR_EVT_POST_ERR 19
+-#define EVENT_LOCAL_P_ATR_EVT_FETCH_ERR 20
+-#define EVENT_LOCAL_P_ATR_EVT_DISCARD_ERR 21
+-#define EVENT_LOCAL_P_ATR_EVT_DOORBELL 22
+-#define EVENT_LOCAL_PM_MSI_INT_INTX 23
+-#define EVENT_LOCAL_PM_MSI_INT_MSI 24
+-#define EVENT_LOCAL_PM_MSI_INT_AER_EVT 25
+-#define EVENT_LOCAL_PM_MSI_INT_EVENTS 26
+-#define EVENT_LOCAL_PM_MSI_INT_SYS_ERR 27
+-#define NUM_EVENTS 28
++#define NUM_MC_EVENTS 15
++#define EVENT_LOCAL_A_ATR_EVT_POST_ERR (NUM_MC_EVENTS + PLDA_AXI_POST_ERR)
++#define EVENT_LOCAL_A_ATR_EVT_FETCH_ERR (NUM_MC_EVENTS + PLDA_AXI_FETCH_ERR)
++#define EVENT_LOCAL_A_ATR_EVT_DISCARD_ERR (NUM_MC_EVENTS + PLDA_AXI_DISCARD_ERR)
++#define EVENT_LOCAL_A_ATR_EVT_DOORBELL (NUM_MC_EVENTS + PLDA_AXI_DOORBELL)
++#define EVENT_LOCAL_P_ATR_EVT_POST_ERR (NUM_MC_EVENTS + PLDA_PCIE_POST_ERR)
++#define EVENT_LOCAL_P_ATR_EVT_FETCH_ERR (NUM_MC_EVENTS + PLDA_PCIE_FETCH_ERR)
++#define EVENT_LOCAL_P_ATR_EVT_DISCARD_ERR (NUM_MC_EVENTS + PLDA_PCIE_DISCARD_ERR)
++#define EVENT_LOCAL_P_ATR_EVT_DOORBELL (NUM_MC_EVENTS + PLDA_PCIE_DOORBELL)
++#define EVENT_LOCAL_PM_MSI_INT_INTX (NUM_MC_EVENTS + PLDA_INTX)
++#define EVENT_LOCAL_PM_MSI_INT_MSI (NUM_MC_EVENTS + PLDA_MSI)
++#define EVENT_LOCAL_PM_MSI_INT_AER_EVT (NUM_MC_EVENTS + PLDA_AER_EVENT)
++#define EVENT_LOCAL_PM_MSI_INT_EVENTS (NUM_MC_EVENTS + PLDA_MISC_EVENTS)
++#define EVENT_LOCAL_PM_MSI_INT_SYS_ERR (NUM_MC_EVENTS + PLDA_SYS_ERR)
++#define NUM_EVENTS (NUM_MC_EVENTS + PLDA_INT_EVENT_NUM)
+
+ #define PCIE_EVENT_CAUSE(x, s) \
+ [EVENT_PCIE_ ## x] = { __stringify(x), s }
+diff --git a/drivers/pci/controller/plda/pcie-plda.h b/drivers/pci/controller/plda/pcie-plda.h
+new file mode 100644
+index 000000000000..cad3a98d967e
+--- /dev/null
++++ b/drivers/pci/controller/plda/pcie-plda.h
+@@ -0,0 +1,108 @@
++/* SPDX-License-Identifier: GPL-2.0 */
++/*
++ * PLDA PCIe host controller driver
++ */
++
++#ifndef _PCIE_PLDA_H
++#define _PCIE_PLDA_H
++
++/* PCIe Bridge Phy Regs */
++#define PCIE_PCI_IRQ_DW0 0xa8
++#define MSIX_CAP_MASK BIT(31)
++#define NUM_MSI_MSGS_MASK GENMASK(6, 4)
++#define NUM_MSI_MSGS_SHIFT 4
++
++#define IMASK_LOCAL 0x180
++#define DMA_END_ENGINE_0_MASK 0x00000000u
++#define DMA_END_ENGINE_0_SHIFT 0
++#define DMA_END_ENGINE_1_MASK 0x00000000u
++#define DMA_END_ENGINE_1_SHIFT 1
++#define DMA_ERROR_ENGINE_0_MASK 0x00000100u
++#define DMA_ERROR_ENGINE_0_SHIFT 8
++#define DMA_ERROR_ENGINE_1_MASK 0x00000200u
++#define DMA_ERROR_ENGINE_1_SHIFT 9
++#define A_ATR_EVT_POST_ERR_MASK 0x00010000u
++#define A_ATR_EVT_POST_ERR_SHIFT 16
++#define A_ATR_EVT_FETCH_ERR_MASK 0x00020000u
++#define A_ATR_EVT_FETCH_ERR_SHIFT 17
++#define A_ATR_EVT_DISCARD_ERR_MASK 0x00040000u
++#define A_ATR_EVT_DISCARD_ERR_SHIFT 18
++#define A_ATR_EVT_DOORBELL_MASK 0x00000000u
++#define A_ATR_EVT_DOORBELL_SHIFT 19
++#define P_ATR_EVT_POST_ERR_MASK 0x00100000u
++#define P_ATR_EVT_POST_ERR_SHIFT 20
++#define P_ATR_EVT_FETCH_ERR_MASK 0x00200000u
++#define P_ATR_EVT_FETCH_ERR_SHIFT 21
++#define P_ATR_EVT_DISCARD_ERR_MASK 0x00400000u
++#define P_ATR_EVT_DISCARD_ERR_SHIFT 22
++#define P_ATR_EVT_DOORBELL_MASK 0x00000000u
++#define P_ATR_EVT_DOORBELL_SHIFT 23
++#define PM_MSI_INT_INTA_MASK 0x01000000u
++#define PM_MSI_INT_INTA_SHIFT 24
++#define PM_MSI_INT_INTB_MASK 0x02000000u
++#define PM_MSI_INT_INTB_SHIFT 25
++#define PM_MSI_INT_INTC_MASK 0x04000000u
++#define PM_MSI_INT_INTC_SHIFT 26
++#define PM_MSI_INT_INTD_MASK 0x08000000u
++#define PM_MSI_INT_INTD_SHIFT 27
++#define PM_MSI_INT_INTX_MASK 0x0f000000u
++#define PM_MSI_INT_INTX_SHIFT 24
++#define PM_MSI_INT_MSI_MASK 0x10000000u
++#define PM_MSI_INT_MSI_SHIFT 28
++#define PM_MSI_INT_AER_EVT_MASK 0x20000000u
++#define PM_MSI_INT_AER_EVT_SHIFT 29
++#define PM_MSI_INT_EVENTS_MASK 0x40000000u
++#define PM_MSI_INT_EVENTS_SHIFT 30
++#define PM_MSI_INT_SYS_ERR_MASK 0x80000000u
++#define PM_MSI_INT_SYS_ERR_SHIFT 31
++#define NUM_LOCAL_EVENTS 15
++#define ISTATUS_LOCAL 0x184
++#define IMASK_HOST 0x188
++#define ISTATUS_HOST 0x18c
++#define IMSI_ADDR 0x190
++#define ISTATUS_MSI 0x194
++
++/* PCIe Master table init defines */
++#define ATR0_PCIE_WIN0_SRCADDR_PARAM 0x600u
++#define ATR0_PCIE_ATR_SIZE 0x25
++#define ATR0_PCIE_ATR_SIZE_SHIFT 1
++#define ATR0_PCIE_WIN0_SRC_ADDR 0x604u
++#define ATR0_PCIE_WIN0_TRSL_ADDR_LSB 0x608u
++#define ATR0_PCIE_WIN0_TRSL_ADDR_UDW 0x60cu
++#define ATR0_PCIE_WIN0_TRSL_PARAM 0x610u
++
++/* PCIe AXI slave table init defines */
++#define ATR0_AXI4_SLV0_SRCADDR_PARAM 0x800u
++#define ATR_SIZE_SHIFT 1
++#define ATR_IMPL_ENABLE 1
++#define ATR0_AXI4_SLV0_SRC_ADDR 0x804u
++#define ATR0_AXI4_SLV0_TRSL_ADDR_LSB 0x808u
++#define ATR0_AXI4_SLV0_TRSL_ADDR_UDW 0x80cu
++#define ATR0_AXI4_SLV0_TRSL_PARAM 0x810u
++#define PCIE_TX_RX_INTERFACE 0x00000000u
++#define PCIE_CONFIG_INTERFACE 0x00000001u
++
++#define ATR_ENTRY_SIZE 32
++
++enum plda_int_event {
++ PLDA_AXI_POST_ERR,
++ PLDA_AXI_FETCH_ERR,
++ PLDA_AXI_DISCARD_ERR,
++ PLDA_AXI_DOORBELL,
++ PLDA_PCIE_POST_ERR,
++ PLDA_PCIE_FETCH_ERR,
++ PLDA_PCIE_DISCARD_ERR,
++ PLDA_PCIE_DOORBELL,
++ PLDA_INTX,
++ PLDA_MSI,
++ PLDA_AER_EVENT,
++ PLDA_MISC_EVENTS,
++ PLDA_SYS_ERR,
++ PLDA_INT_EVENT_NUM
++};
++
++#define PLDA_NUM_DMA_EVENTS 16
++
++#define PLDA_MAX_INT_NUM (PLDA_NUM_DMA_EVENTS + PLDA_INT_EVENT_NUM)
++
++#endif
+--
+2.43.0
+
+
+From f569d322f9b4683c5f427247c374ac39889643e6 Mon Sep 17 00:00:00 2001
+From: Minda Chen <minda.chen@starfivetech.com>
+Date: Mon, 8 Jan 2024 19:05:54 +0800
+Subject: [PATCH 04/23] PCI: microchip: Add bridge_addr field to struct mc_pcie
+
+For bridge address base is common PLDA field, Add this to struct mc_pcie
+first.
+
+INTx and MSI codes interrupts codes will get the bridge base address from
+port->bridge_addr. These codes will be changed to common codes.
+axi_base_addr is Microchip its own data.
+
+Signed-off-by: Minda Chen <minda.chen@starfivetech.com>
+Reviewed-by: Conor Dooley <conor.dooley@microchip.com>
+Message-ID: <20240108110612.19048-5-minda.chen@starfivetech.com>
+Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
+---
+ .../pci/controller/plda/pcie-microchip-host.c | 23 ++++++++-----------
+ 1 file changed, 9 insertions(+), 14 deletions(-)
+
+diff --git a/drivers/pci/controller/plda/pcie-microchip-host.c b/drivers/pci/controller/plda/pcie-microchip-host.c
+index d9030d550482..c55ede80a6d0 100644
+--- a/drivers/pci/controller/plda/pcie-microchip-host.c
++++ b/drivers/pci/controller/plda/pcie-microchip-host.c
+@@ -195,6 +195,7 @@ struct mc_pcie {
+ struct irq_domain *event_domain;
+ raw_spinlock_t lock;
+ struct mc_msi msi;
++ void __iomem *bridge_addr;
+ };
+
+ struct cause {
+@@ -339,8 +340,7 @@ static void mc_handle_msi(struct irq_desc *desc)
+ struct irq_chip *chip = irq_desc_get_chip(desc);
+ struct device *dev = port->dev;
+ struct mc_msi *msi = &port->msi;
+- void __iomem *bridge_base_addr =
+- port->axi_base_addr + MC_PCIE_BRIDGE_ADDR;
++ void __iomem *bridge_base_addr = port->bridge_addr;
+ unsigned long status;
+ u32 bit;
+ int ret;
+@@ -365,8 +365,7 @@ static void mc_handle_msi(struct irq_desc *desc)
+ static void mc_msi_bottom_irq_ack(struct irq_data *data)
+ {
+ struct mc_pcie *port = irq_data_get_irq_chip_data(data);
+- void __iomem *bridge_base_addr =
+- port->axi_base_addr + MC_PCIE_BRIDGE_ADDR;
++ void __iomem *bridge_base_addr = port->bridge_addr;
+ u32 bitpos = data->hwirq;
+
+ writel_relaxed(BIT(bitpos), bridge_base_addr + ISTATUS_MSI);
+@@ -488,8 +487,7 @@ static void mc_handle_intx(struct irq_desc *desc)
+ struct mc_pcie *port = irq_desc_get_handler_data(desc);
+ struct irq_chip *chip = irq_desc_get_chip(desc);
+ struct device *dev = port->dev;
+- void __iomem *bridge_base_addr =
+- port->axi_base_addr + MC_PCIE_BRIDGE_ADDR;
++ void __iomem *bridge_base_addr = port->bridge_addr;
+ unsigned long status;
+ u32 bit;
+ int ret;
+@@ -514,8 +512,7 @@ static void mc_handle_intx(struct irq_desc *desc)
+ static void mc_ack_intx_irq(struct irq_data *data)
+ {
+ struct mc_pcie *port = irq_data_get_irq_chip_data(data);
+- void __iomem *bridge_base_addr =
+- port->axi_base_addr + MC_PCIE_BRIDGE_ADDR;
++ void __iomem *bridge_base_addr = port->bridge_addr;
+ u32 mask = BIT(data->hwirq + PM_MSI_INT_INTX_SHIFT);
+
+ writel_relaxed(mask, bridge_base_addr + ISTATUS_LOCAL);
+@@ -524,8 +521,7 @@ static void mc_ack_intx_irq(struct irq_data *data)
+ static void mc_mask_intx_irq(struct irq_data *data)
+ {
+ struct mc_pcie *port = irq_data_get_irq_chip_data(data);
+- void __iomem *bridge_base_addr =
+- port->axi_base_addr + MC_PCIE_BRIDGE_ADDR;
++ void __iomem *bridge_base_addr = port->bridge_addr;
+ unsigned long flags;
+ u32 mask = BIT(data->hwirq + PM_MSI_INT_INTX_SHIFT);
+ u32 val;
+@@ -540,8 +536,7 @@ static void mc_mask_intx_irq(struct irq_data *data)
+ static void mc_unmask_intx_irq(struct irq_data *data)
+ {
+ struct mc_pcie *port = irq_data_get_irq_chip_data(data);
+- void __iomem *bridge_base_addr =
+- port->axi_base_addr + MC_PCIE_BRIDGE_ADDR;
++ void __iomem *bridge_base_addr = port->bridge_addr;
+ unsigned long flags;
+ u32 mask = BIT(data->hwirq + PM_MSI_INT_INTX_SHIFT);
+ u32 val;
+@@ -896,8 +891,7 @@ static void mc_pcie_setup_window(void __iomem *bridge_base_addr, u32 index,
+ static int mc_pcie_setup_windows(struct platform_device *pdev,
+ struct mc_pcie *port)
+ {
+- void __iomem *bridge_base_addr =
+- port->axi_base_addr + MC_PCIE_BRIDGE_ADDR;
++ void __iomem *bridge_base_addr = port->bridge_addr;
+ struct pci_host_bridge *bridge = platform_get_drvdata(pdev);
+ struct resource_entry *entry;
+ u64 pci_addr;
+@@ -1081,6 +1075,7 @@ static int mc_host_probe(struct platform_device *pdev)
+ mc_disable_interrupts(port);
+
+ bridge_base_addr = port->axi_base_addr + MC_PCIE_BRIDGE_ADDR;
++ port->bridge_addr = bridge_base_addr;
+
+ /* Allow enabling MSI by disabling MSI-X */
+ val = readl(bridge_base_addr + PCIE_PCI_IRQ_DW0);
+--
+2.43.0
+
+
+From a863afc3ea3339f8fa682b4db2dee8f48ff84cb6 Mon Sep 17 00:00:00 2001
+From: Minda Chen <minda.chen@starfivetech.com>
+Date: Mon, 8 Jan 2024 19:05:55 +0800
+Subject: [PATCH 05/23] PCI: microchip: Rename two PCIe data structures
+
+Add PLDA PCIe related data structures by rename data structure name from
+mc_* to plda_*.
+
+axi_base_addr is stayed in struct mc_pcie for it's microchip its own data.
+
+The event interrupt codes is still using struct mc_pcie because the event
+interrupt codes can not be re-used.
+
+Signed-off-by: Minda Chen <minda.chen@starfivetech.com>
+Reviewed-by: Conor Dooley <conor.dooley@microchip.com>
+Message-ID: <20240108110612.19048-6-minda.chen@starfivetech.com>
+Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
+---
+ .../pci/controller/plda/pcie-microchip-host.c | 96 ++++++++++---------
+ 1 file changed, 53 insertions(+), 43 deletions(-)
+
+diff --git a/drivers/pci/controller/plda/pcie-microchip-host.c b/drivers/pci/controller/plda/pcie-microchip-host.c
+index c55ede80a6d0..df0736f688ce 100644
+--- a/drivers/pci/controller/plda/pcie-microchip-host.c
++++ b/drivers/pci/controller/plda/pcie-microchip-host.c
+@@ -22,7 +22,7 @@
+ #include "pcie-plda.h"
+
+ /* Number of MSI IRQs */
+-#define MC_MAX_NUM_MSI_IRQS 32
++#define PLDA_MAX_NUM_MSI_IRQS 32
+
+ /* PCIe Bridge Phy and Controller Phy offsets */
+ #define MC_PCIE1_BRIDGE_ADDR 0x00008000u
+@@ -179,25 +179,29 @@ struct event_map {
+ u32 event_bit;
+ };
+
+-struct mc_msi {
++struct plda_msi {
+ struct mutex lock; /* Protect used bitmap */
+ struct irq_domain *msi_domain;
+ struct irq_domain *dev_domain;
+ u32 num_vectors;
+ u64 vector_phy;
+- DECLARE_BITMAP(used, MC_MAX_NUM_MSI_IRQS);
++ DECLARE_BITMAP(used, PLDA_MAX_NUM_MSI_IRQS);
+ };
+
+-struct mc_pcie {
+- void __iomem *axi_base_addr;
++struct plda_pcie_rp {
+ struct device *dev;
+ struct irq_domain *intx_domain;
+ struct irq_domain *event_domain;
+ raw_spinlock_t lock;
+- struct mc_msi msi;
++ struct plda_msi msi;
+ void __iomem *bridge_addr;
+ };
+
++struct mc_pcie {
++ struct plda_pcie_rp plda;
++ void __iomem *axi_base_addr;
++};
++
+ struct cause {
+ const char *sym;
+ const char *str;
+@@ -313,7 +317,7 @@ static struct mc_pcie *port;
+
+ static void mc_pcie_enable_msi(struct mc_pcie *port, void __iomem *ecam)
+ {
+- struct mc_msi *msi = &port->msi;
++ struct plda_msi *msi = &port->plda.msi;
+ u16 reg;
+ u8 queue_size;
+
+@@ -336,10 +340,10 @@ static void mc_pcie_enable_msi(struct mc_pcie *port, void __iomem *ecam)
+
+ static void mc_handle_msi(struct irq_desc *desc)
+ {
+- struct mc_pcie *port = irq_desc_get_handler_data(desc);
++ struct plda_pcie_rp *port = irq_desc_get_handler_data(desc);
+ struct irq_chip *chip = irq_desc_get_chip(desc);
+ struct device *dev = port->dev;
+- struct mc_msi *msi = &port->msi;
++ struct plda_msi *msi = &port->msi;
+ void __iomem *bridge_base_addr = port->bridge_addr;
+ unsigned long status;
+ u32 bit;
+@@ -364,7 +368,7 @@ static void mc_handle_msi(struct irq_desc *desc)
+
+ static void mc_msi_bottom_irq_ack(struct irq_data *data)
+ {
+- struct mc_pcie *port = irq_data_get_irq_chip_data(data);
++ struct plda_pcie_rp *port = irq_data_get_irq_chip_data(data);
+ void __iomem *bridge_base_addr = port->bridge_addr;
+ u32 bitpos = data->hwirq;
+
+@@ -373,7 +377,7 @@ static void mc_msi_bottom_irq_ack(struct irq_data *data)
+
+ static void mc_compose_msi_msg(struct irq_data *data, struct msi_msg *msg)
+ {
+- struct mc_pcie *port = irq_data_get_irq_chip_data(data);
++ struct plda_pcie_rp *port = irq_data_get_irq_chip_data(data);
+ phys_addr_t addr = port->msi.vector_phy;
+
+ msg->address_lo = lower_32_bits(addr);
+@@ -400,8 +404,8 @@ static struct irq_chip mc_msi_bottom_irq_chip = {
+ static int mc_irq_msi_domain_alloc(struct irq_domain *domain, unsigned int virq,
+ unsigned int nr_irqs, void *args)
+ {
+- struct mc_pcie *port = domain->host_data;
+- struct mc_msi *msi = &port->msi;
++ struct plda_pcie_rp *port = domain->host_data;
++ struct plda_msi *msi = &port->msi;
+ unsigned long bit;
+
+ mutex_lock(&msi->lock);
+@@ -425,8 +429,8 @@ static void mc_irq_msi_domain_free(struct irq_domain *domain, unsigned int virq,
+ unsigned int nr_irqs)
+ {
+ struct irq_data *d = irq_domain_get_irq_data(domain, virq);
+- struct mc_pcie *port = irq_data_get_irq_chip_data(d);
+- struct mc_msi *msi = &port->msi;
++ struct plda_pcie_rp *port = irq_data_get_irq_chip_data(d);
++ struct plda_msi *msi = &port->msi;
+
+ mutex_lock(&msi->lock);
+
+@@ -456,11 +460,11 @@ static struct msi_domain_info mc_msi_domain_info = {
+ .chip = &mc_msi_irq_chip,
+ };
+
+-static int mc_allocate_msi_domains(struct mc_pcie *port)
++static int mc_allocate_msi_domains(struct plda_pcie_rp *port)
+ {
+ struct device *dev = port->dev;
+ struct fwnode_handle *fwnode = of_node_to_fwnode(dev->of_node);
+- struct mc_msi *msi = &port->msi;
++ struct plda_msi *msi = &port->msi;
+
+ mutex_init(&port->msi.lock);
+
+@@ -484,7 +488,7 @@ static int mc_allocate_msi_domains(struct mc_pcie *port)
+
+ static void mc_handle_intx(struct irq_desc *desc)
+ {
+- struct mc_pcie *port = irq_desc_get_handler_data(desc);
++ struct plda_pcie_rp *port = irq_desc_get_handler_data(desc);
+ struct irq_chip *chip = irq_desc_get_chip(desc);
+ struct device *dev = port->dev;
+ void __iomem *bridge_base_addr = port->bridge_addr;
+@@ -511,7 +515,7 @@ static void mc_handle_intx(struct irq_desc *desc)
+
+ static void mc_ack_intx_irq(struct irq_data *data)
+ {
+- struct mc_pcie *port = irq_data_get_irq_chip_data(data);
++ struct plda_pcie_rp *port = irq_data_get_irq_chip_data(data);
+ void __iomem *bridge_base_addr = port->bridge_addr;
+ u32 mask = BIT(data->hwirq + PM_MSI_INT_INTX_SHIFT);
+
+@@ -520,7 +524,7 @@ static void mc_ack_intx_irq(struct irq_data *data)
+
+ static void mc_mask_intx_irq(struct irq_data *data)
+ {
+- struct mc_pcie *port = irq_data_get_irq_chip_data(data);
++ struct plda_pcie_rp *port = irq_data_get_irq_chip_data(data);
+ void __iomem *bridge_base_addr = port->bridge_addr;
+ unsigned long flags;
+ u32 mask = BIT(data->hwirq + PM_MSI_INT_INTX_SHIFT);
+@@ -535,7 +539,7 @@ static void mc_mask_intx_irq(struct irq_data *data)
+
+ static void mc_unmask_intx_irq(struct irq_data *data)
+ {
+- struct mc_pcie *port = irq_data_get_irq_chip_data(data);
++ struct plda_pcie_rp *port = irq_data_get_irq_chip_data(data);
+ void __iomem *bridge_base_addr = port->bridge_addr;
+ unsigned long flags;
+ u32 mask = BIT(data->hwirq + PM_MSI_INT_INTX_SHIFT);
+@@ -625,21 +629,22 @@ static u32 local_events(struct mc_pcie *port)
+ return val;
+ }
+
+-static u32 get_events(struct mc_pcie *port)
++static u32 get_events(struct plda_pcie_rp *port)
+ {
++ struct mc_pcie *mc_port = container_of(port, struct mc_pcie, plda);
+ u32 events = 0;
+
+- events |= pcie_events(port);
+- events |= sec_errors(port);
+- events |= ded_errors(port);
+- events |= local_events(port);
++ events |= pcie_events(mc_port);
++ events |= sec_errors(mc_port);
++ events |= ded_errors(mc_port);
++ events |= local_events(mc_port);
+
+ return events;
+ }
+
+ static irqreturn_t mc_event_handler(int irq, void *dev_id)
+ {
+- struct mc_pcie *port = dev_id;
++ struct plda_pcie_rp *port = dev_id;
+ struct device *dev = port->dev;
+ struct irq_data *data;
+
+@@ -655,7 +660,7 @@ static irqreturn_t mc_event_handler(int irq, void *dev_id)
+
+ static void mc_handle_event(struct irq_desc *desc)
+ {
+- struct mc_pcie *port = irq_desc_get_handler_data(desc);
++ struct plda_pcie_rp *port = irq_desc_get_handler_data(desc);
+ unsigned long events;
+ u32 bit;
+ struct irq_chip *chip = irq_desc_get_chip(desc);
+@@ -672,12 +677,13 @@ static void mc_handle_event(struct irq_desc *desc)
+
+ static void mc_ack_event_irq(struct irq_data *data)
+ {
+- struct mc_pcie *port = irq_data_get_irq_chip_data(data);
++ struct plda_pcie_rp *port = irq_data_get_irq_chip_data(data);
++ struct mc_pcie *mc_port = container_of(port, struct mc_pcie, plda);
+ u32 event = data->hwirq;
+ void __iomem *addr;
+ u32 mask;
+
+- addr = port->axi_base_addr + event_descs[event].base +
++ addr = mc_port->axi_base_addr + event_descs[event].base +
+ event_descs[event].offset;
+ mask = event_descs[event].mask;
+ mask |= event_descs[event].enb_mask;
+@@ -687,13 +693,14 @@ static void mc_ack_event_irq(struct irq_data *data)
+
+ static void mc_mask_event_irq(struct irq_data *data)
+ {
+- struct mc_pcie *port = irq_data_get_irq_chip_data(data);
++ struct plda_pcie_rp *port = irq_data_get_irq_chip_data(data);
++ struct mc_pcie *mc_port = container_of(port, struct mc_pcie, plda);
+ u32 event = data->hwirq;
+ void __iomem *addr;
+ u32 mask;
+ u32 val;
+
+- addr = port->axi_base_addr + event_descs[event].base +
++ addr = mc_port->axi_base_addr + event_descs[event].base +
+ event_descs[event].mask_offset;
+ mask = event_descs[event].mask;
+ if (event_descs[event].enb_mask) {
+@@ -717,13 +724,14 @@ static void mc_mask_event_irq(struct irq_data *data)
+
+ static void mc_unmask_event_irq(struct irq_data *data)
+ {
+- struct mc_pcie *port = irq_data_get_irq_chip_data(data);
++ struct plda_pcie_rp *port = irq_data_get_irq_chip_data(data);
++ struct mc_pcie *mc_port = container_of(port, struct mc_pcie, plda);
+ u32 event = data->hwirq;
+ void __iomem *addr;
+ u32 mask;
+ u32 val;
+
+- addr = port->axi_base_addr + event_descs[event].base +
++ addr = mc_port->axi_base_addr + event_descs[event].base +
+ event_descs[event].mask_offset;
+ mask = event_descs[event].mask;
+
+@@ -811,7 +819,7 @@ static int mc_pcie_init_clks(struct device *dev)
+ return 0;
+ }
+
+-static int mc_pcie_init_irq_domains(struct mc_pcie *port)
++static int mc_pcie_init_irq_domains(struct plda_pcie_rp *port)
+ {
+ struct device *dev = port->dev;
+ struct device_node *node = dev->of_node;
+@@ -889,7 +897,7 @@ static void mc_pcie_setup_window(void __iomem *bridge_base_addr, u32 index,
+ }
+
+ static int mc_pcie_setup_windows(struct platform_device *pdev,
+- struct mc_pcie *port)
++ struct plda_pcie_rp *port)
+ {
+ void __iomem *bridge_base_addr = port->bridge_addr;
+ struct pci_host_bridge *bridge = platform_get_drvdata(pdev);
+@@ -970,7 +978,7 @@ static void mc_disable_interrupts(struct mc_pcie *port)
+ writel_relaxed(GENMASK(31, 0), bridge_base_addr + ISTATUS_HOST);
+ }
+
+-static int mc_init_interrupts(struct platform_device *pdev, struct mc_pcie *port)
++static int mc_init_interrupts(struct platform_device *pdev, struct plda_pcie_rp *port)
+ {
+ struct device *dev = &pdev->dev;
+ int irq;
+@@ -1043,12 +1051,12 @@ static int mc_platform_init(struct pci_config_window *cfg)
+ mc_pcie_enable_msi(port, cfg->win);
+
+ /* Configure non-config space outbound ranges */
+- ret = mc_pcie_setup_windows(pdev, port);
++ ret = mc_pcie_setup_windows(pdev, &port->plda);
+ if (ret)
+ return ret;
+
+ /* Address translation is up; safe to enable interrupts */
+- ret = mc_init_interrupts(pdev, port);
++ ret = mc_init_interrupts(pdev, &port->plda);
+ if (ret)
+ return ret;
+
+@@ -1059,6 +1067,7 @@ static int mc_host_probe(struct platform_device *pdev)
+ {
+ struct device *dev = &pdev->dev;
+ void __iomem *bridge_base_addr;
++ struct plda_pcie_rp *plda;
+ int ret;
+ u32 val;
+
+@@ -1066,7 +1075,8 @@ static int mc_host_probe(struct platform_device *pdev)
+ if (!port)
+ return -ENOMEM;
+
+- port->dev = dev;
++ plda = &port->plda;
++ plda->dev = dev;
+
+ port->axi_base_addr = devm_platform_ioremap_resource(pdev, 1);
+ if (IS_ERR(port->axi_base_addr))
+@@ -1075,7 +1085,7 @@ static int mc_host_probe(struct platform_device *pdev)
+ mc_disable_interrupts(port);
+
+ bridge_base_addr = port->axi_base_addr + MC_PCIE_BRIDGE_ADDR;
+- port->bridge_addr = bridge_base_addr;
++ plda->bridge_addr = bridge_base_addr;
+
+ /* Allow enabling MSI by disabling MSI-X */
+ val = readl(bridge_base_addr + PCIE_PCI_IRQ_DW0);
+@@ -1087,10 +1097,10 @@ static int mc_host_probe(struct platform_device *pdev)
+ val &= NUM_MSI_MSGS_MASK;
+ val >>= NUM_MSI_MSGS_SHIFT;
+
+- port->msi.num_vectors = 1 << val;
++ plda->msi.num_vectors = 1 << val;
+
+ /* Pick vector address from design */
+- port->msi.vector_phy = readl_relaxed(bridge_base_addr + IMSI_ADDR);
++ plda->msi.vector_phy = readl_relaxed(bridge_base_addr + IMSI_ADDR);
+
+ ret = mc_pcie_init_clks(dev);
+ if (ret) {
+--
+2.43.0
+
+
+From 68cfb6ce3d0d855399cc6d7505cc8ac3ba56afa2 Mon Sep 17 00:00:00 2001
+From: Minda Chen <minda.chen@starfivetech.com>
+Date: Mon, 8 Jan 2024 19:05:56 +0800
+Subject: [PATCH 06/23] PCI: microchip: Move PCIe host data structures to
+ plda-pcie.h
+
+Move the common data structures definition to head file for these two data
+structures can be re-used.
+
+Signed-off-by: Minda Chen <minda.chen@starfivetech.com>
+Reviewed-by: Conor Dooley <conor.dooley@microchip.com>
+Message-ID: <20240108110612.19048-7-minda.chen@starfivetech.com>
+Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
+---
+ .../pci/controller/plda/pcie-microchip-host.c | 20 ------------------
+ drivers/pci/controller/plda/pcie-plda.h | 21 +++++++++++++++++++
+ 2 files changed, 21 insertions(+), 20 deletions(-)
+
+diff --git a/drivers/pci/controller/plda/pcie-microchip-host.c b/drivers/pci/controller/plda/pcie-microchip-host.c
+index df0736f688ce..a554a56cc0e8 100644
+--- a/drivers/pci/controller/plda/pcie-microchip-host.c
++++ b/drivers/pci/controller/plda/pcie-microchip-host.c
+@@ -21,9 +21,6 @@
+ #include "../../pci.h"
+ #include "pcie-plda.h"
+
+-/* Number of MSI IRQs */
+-#define PLDA_MAX_NUM_MSI_IRQS 32
+-
+ /* PCIe Bridge Phy and Controller Phy offsets */
+ #define MC_PCIE1_BRIDGE_ADDR 0x00008000u
+ #define MC_PCIE1_CTRL_ADDR 0x0000a000u
+@@ -179,23 +176,6 @@ struct event_map {
+ u32 event_bit;
+ };
+
+-struct plda_msi {
+- struct mutex lock; /* Protect used bitmap */
+- struct irq_domain *msi_domain;
+- struct irq_domain *dev_domain;
+- u32 num_vectors;
+- u64 vector_phy;
+- DECLARE_BITMAP(used, PLDA_MAX_NUM_MSI_IRQS);
+-};
+-
+-struct plda_pcie_rp {
+- struct device *dev;
+- struct irq_domain *intx_domain;
+- struct irq_domain *event_domain;
+- raw_spinlock_t lock;
+- struct plda_msi msi;
+- void __iomem *bridge_addr;
+-};
+
+ struct mc_pcie {
+ struct plda_pcie_rp plda;
+diff --git a/drivers/pci/controller/plda/pcie-plda.h b/drivers/pci/controller/plda/pcie-plda.h
+index cad3a98d967e..7bec6a470758 100644
+--- a/drivers/pci/controller/plda/pcie-plda.h
++++ b/drivers/pci/controller/plda/pcie-plda.h
+@@ -6,6 +6,9 @@
+ #ifndef _PCIE_PLDA_H
+ #define _PCIE_PLDA_H
+
++/* Number of MSI IRQs */
++#define PLDA_MAX_NUM_MSI_IRQS 32
++
+ /* PCIe Bridge Phy Regs */
+ #define PCIE_PCI_IRQ_DW0 0xa8
+ #define MSIX_CAP_MASK BIT(31)
+@@ -105,4 +108,22 @@ enum plda_int_event {
+
+ #define PLDA_MAX_INT_NUM (PLDA_NUM_DMA_EVENTS + PLDA_INT_EVENT_NUM)
+
++struct plda_msi {
++ struct mutex lock; /* Protect used bitmap */
++ struct irq_domain *msi_domain;
++ struct irq_domain *dev_domain;
++ u32 num_vectors;
++ u64 vector_phy;
++ DECLARE_BITMAP(used, PLDA_MAX_NUM_MSI_IRQS);
++};
++
++struct plda_pcie_rp {
++ struct device *dev;
++ struct irq_domain *intx_domain;
++ struct irq_domain *event_domain;
++ raw_spinlock_t lock;
++ struct plda_msi msi;
++ void __iomem *bridge_addr;
++};
++
+ #endif
+--
+2.43.0
+
+
+From 5d5ba2f5b6133a3d4dc0d84d9777fa28805f14f1 Mon Sep 17 00:00:00 2001
+From: Minda Chen <minda.chen@starfivetech.com>
+Date: Mon, 8 Jan 2024 19:05:57 +0800
+Subject: [PATCH 07/23] PCI: microchip: Rename two setup functions
+
+Rename two setup functions to plda prefix. Prepare to re-use these two
+setup function.
+
+For two setup functions names are similar, rename mc_pcie_setup_windows()
+to plda_pcie_setup_iomems().
+
+Signed-off-by: Minda Chen <minda.chen@starfivetech.com>
+Reviewed-by: Conor Dooley <conor.dooley@microchip.com>
+Message-ID: <20240108110612.19048-8-minda.chen@starfivetech.com>
+Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
+---
+ .../pci/controller/plda/pcie-microchip-host.c | 24 +++++++++----------
+ 1 file changed, 12 insertions(+), 12 deletions(-)
+
+diff --git a/drivers/pci/controller/plda/pcie-microchip-host.c b/drivers/pci/controller/plda/pcie-microchip-host.c
+index a554a56cc0e8..9b367927cd32 100644
+--- a/drivers/pci/controller/plda/pcie-microchip-host.c
++++ b/drivers/pci/controller/plda/pcie-microchip-host.c
+@@ -838,9 +838,9 @@ static int mc_pcie_init_irq_domains(struct plda_pcie_rp *port)
+ return mc_allocate_msi_domains(port);
+ }
+
+-static void mc_pcie_setup_window(void __iomem *bridge_base_addr, u32 index,
+- phys_addr_t axi_addr, phys_addr_t pci_addr,
+- size_t size)
++static void plda_pcie_setup_window(void __iomem *bridge_base_addr, u32 index,
++ phys_addr_t axi_addr, phys_addr_t pci_addr,
++ size_t size)
+ {
+ u32 atr_sz = ilog2(size) - 1;
+ u32 val;
+@@ -876,8 +876,8 @@ static void mc_pcie_setup_window(void __iomem *bridge_base_addr, u32 index,
+ writel(0, bridge_base_addr + ATR0_PCIE_WIN0_SRC_ADDR);
+ }
+
+-static int mc_pcie_setup_windows(struct platform_device *pdev,
+- struct plda_pcie_rp *port)
++static int plda_pcie_setup_iomems(struct platform_device *pdev,
++ struct plda_pcie_rp *port)
+ {
+ void __iomem *bridge_base_addr = port->bridge_addr;
+ struct pci_host_bridge *bridge = platform_get_drvdata(pdev);
+@@ -888,9 +888,9 @@ static int mc_pcie_setup_windows(struct platform_device *pdev,
+ resource_list_for_each_entry(entry, &bridge->windows) {
+ if (resource_type(entry->res) == IORESOURCE_MEM) {
+ pci_addr = entry->res->start - entry->offset;
+- mc_pcie_setup_window(bridge_base_addr, index,
+- entry->res->start, pci_addr,
+- resource_size(entry->res));
++ plda_pcie_setup_window(bridge_base_addr, index,
++ entry->res->start, pci_addr,
++ resource_size(entry->res));
+ index++;
+ }
+ }
+@@ -1023,15 +1023,15 @@ static int mc_platform_init(struct pci_config_window *cfg)
+ int ret;
+
+ /* Configure address translation table 0 for PCIe config space */
+- mc_pcie_setup_window(bridge_base_addr, 0, cfg->res.start,
+- cfg->res.start,
+- resource_size(&cfg->res));
++ plda_pcie_setup_window(bridge_base_addr, 0, cfg->res.start,
++ cfg->res.start,
++ resource_size(&cfg->res));
+
+ /* Need some fixups in config space */
+ mc_pcie_enable_msi(port, cfg->win);
+
+ /* Configure non-config space outbound ranges */
+- ret = mc_pcie_setup_windows(pdev, &port->plda);
++ ret = plda_pcie_setup_iomems(pdev, &port->plda);
+ if (ret)
+ return ret;
+
+--
+2.43.0
+
+
+From cc5abca4b49d346506fd44473be579fdb8949647 Mon Sep 17 00:00:00 2001
+From: Minda Chen <minda.chen@starfivetech.com>
+Date: Mon, 8 Jan 2024 19:05:58 +0800
+Subject: [PATCH 08/23] PCI: microchip: Change the argument of
+ plda_pcie_setup_iomems()
+
+If other vendor do not select PCI_HOST_COMMON, the driver data is not
+struct pci_host_bridge.
+
+Move calling platform_get_drvdata() to mc_platform_init().
+
+Signed-off-by: Minda Chen <minda.chen@starfivetech.com>
+Reviewed-by: Conor Dooley <conor.dooley@microchip.com>
+Message-ID: <20240108110612.19048-9-minda.chen@starfivetech.com>
+Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
+---
+ drivers/pci/controller/plda/pcie-microchip-host.c | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/drivers/pci/controller/plda/pcie-microchip-host.c b/drivers/pci/controller/plda/pcie-microchip-host.c
+index 9b367927cd32..805870aed61d 100644
+--- a/drivers/pci/controller/plda/pcie-microchip-host.c
++++ b/drivers/pci/controller/plda/pcie-microchip-host.c
+@@ -876,11 +876,10 @@ static void plda_pcie_setup_window(void __iomem *bridge_base_addr, u32 index,
+ writel(0, bridge_base_addr + ATR0_PCIE_WIN0_SRC_ADDR);
+ }
+
+-static int plda_pcie_setup_iomems(struct platform_device *pdev,
++static int plda_pcie_setup_iomems(struct pci_host_bridge *bridge,
+ struct plda_pcie_rp *port)
+ {
+ void __iomem *bridge_base_addr = port->bridge_addr;
+- struct pci_host_bridge *bridge = platform_get_drvdata(pdev);
+ struct resource_entry *entry;
+ u64 pci_addr;
+ u32 index = 1;
+@@ -1018,6 +1017,7 @@ static int mc_platform_init(struct pci_config_window *cfg)
+ {
+ struct device *dev = cfg->parent;
+ struct platform_device *pdev = to_platform_device(dev);
++ struct pci_host_bridge *bridge = platform_get_drvdata(pdev);
+ void __iomem *bridge_base_addr =
+ port->axi_base_addr + MC_PCIE_BRIDGE_ADDR;
+ int ret;
+@@ -1031,7 +1031,7 @@ static int mc_platform_init(struct pci_config_window *cfg)
+ mc_pcie_enable_msi(port, cfg->win);
+
+ /* Configure non-config space outbound ranges */
+- ret = plda_pcie_setup_iomems(pdev, &port->plda);
++ ret = plda_pcie_setup_iomems(bridge, &port->plda);
+ if (ret)
+ return ret;
+
+--
+2.43.0
+
+
+From f3c1d38d50a32097e65d63d14402d1b2d0b80de6 Mon Sep 17 00:00:00 2001
+From: Minda Chen <minda.chen@starfivetech.com>
+Date: Mon, 8 Jan 2024 19:05:59 +0800
+Subject: [PATCH 09/23] PCI: microchip: Move setup functions to
+ pcie-plda-host.c
+
+Move setup functions to common pcie-plda-host.c. So these two functions
+can be re-used.
+
+Signed-off-by: Minda Chen <minda.chen@starfivetech.com>
+Reviewed-by: Conor Dooley <conor.dooley@microchip.com>
+Message-ID: <20240108110612.19048-10-minda.chen@starfivetech.com>
+Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
+---
+ drivers/pci/controller/plda/Kconfig | 4 +
+ drivers/pci/controller/plda/Makefile | 1 +
+ .../pci/controller/plda/pcie-microchip-host.c | 59 ---------------
+ drivers/pci/controller/plda/pcie-plda-host.c | 74 +++++++++++++++++++
+ drivers/pci/controller/plda/pcie-plda.h | 5 ++
+ 5 files changed, 84 insertions(+), 59 deletions(-)
+ create mode 100644 drivers/pci/controller/plda/pcie-plda-host.c
+
+diff --git a/drivers/pci/controller/plda/Kconfig b/drivers/pci/controller/plda/Kconfig
+index 5cb3be4fc98c..e54a82ee94f5 100644
+--- a/drivers/pci/controller/plda/Kconfig
++++ b/drivers/pci/controller/plda/Kconfig
+@@ -3,10 +3,14 @@
+ menu "PLDA-based PCIe controllers"
+ depends on PCI
+
++config PCIE_PLDA_HOST
++ bool
++
+ config PCIE_MICROCHIP_HOST
+ tristate "Microchip AXI PCIe controller"
+ depends on PCI_MSI && OF
+ select PCI_HOST_COMMON
++ select PCIE_PLDA_HOST
+ help
+ Say Y here if you want kernel to support the Microchip AXI PCIe
+ Host Bridge driver.
+diff --git a/drivers/pci/controller/plda/Makefile b/drivers/pci/controller/plda/Makefile
+index e1a265cbf91c..4340ab007f44 100644
+--- a/drivers/pci/controller/plda/Makefile
++++ b/drivers/pci/controller/plda/Makefile
+@@ -1,2 +1,3 @@
+ # SPDX-License-Identifier: GPL-2.0
++obj-$(CONFIG_PCIE_PLDA_HOST) += pcie-plda-host.o
+ obj-$(CONFIG_PCIE_MICROCHIP_HOST) += pcie-microchip-host.o
+diff --git a/drivers/pci/controller/plda/pcie-microchip-host.c b/drivers/pci/controller/plda/pcie-microchip-host.c
+index 805870aed61d..573ad31c578a 100644
+--- a/drivers/pci/controller/plda/pcie-microchip-host.c
++++ b/drivers/pci/controller/plda/pcie-microchip-host.c
+@@ -838,65 +838,6 @@ static int mc_pcie_init_irq_domains(struct plda_pcie_rp *port)
+ return mc_allocate_msi_domains(port);
+ }
+
+-static void plda_pcie_setup_window(void __iomem *bridge_base_addr, u32 index,
+- phys_addr_t axi_addr, phys_addr_t pci_addr,
+- size_t size)
+-{
+- u32 atr_sz = ilog2(size) - 1;
+- u32 val;
+-
+- if (index == 0)
+- val = PCIE_CONFIG_INTERFACE;
+- else
+- val = PCIE_TX_RX_INTERFACE;
+-
+- writel(val, bridge_base_addr + (index * ATR_ENTRY_SIZE) +
+- ATR0_AXI4_SLV0_TRSL_PARAM);
+-
+- val = lower_32_bits(axi_addr) | (atr_sz << ATR_SIZE_SHIFT) |
+- ATR_IMPL_ENABLE;
+- writel(val, bridge_base_addr + (index * ATR_ENTRY_SIZE) +
+- ATR0_AXI4_SLV0_SRCADDR_PARAM);
+-
+- val = upper_32_bits(axi_addr);
+- writel(val, bridge_base_addr + (index * ATR_ENTRY_SIZE) +
+- ATR0_AXI4_SLV0_SRC_ADDR);
+-
+- val = lower_32_bits(pci_addr);
+- writel(val, bridge_base_addr + (index * ATR_ENTRY_SIZE) +
+- ATR0_AXI4_SLV0_TRSL_ADDR_LSB);
+-
+- val = upper_32_bits(pci_addr);
+- writel(val, bridge_base_addr + (index * ATR_ENTRY_SIZE) +
+- ATR0_AXI4_SLV0_TRSL_ADDR_UDW);
+-
+- val = readl(bridge_base_addr + ATR0_PCIE_WIN0_SRCADDR_PARAM);
+- val |= (ATR0_PCIE_ATR_SIZE << ATR0_PCIE_ATR_SIZE_SHIFT);
+- writel(val, bridge_base_addr + ATR0_PCIE_WIN0_SRCADDR_PARAM);
+- writel(0, bridge_base_addr + ATR0_PCIE_WIN0_SRC_ADDR);
+-}
+-
+-static int plda_pcie_setup_iomems(struct pci_host_bridge *bridge,
+- struct plda_pcie_rp *port)
+-{
+- void __iomem *bridge_base_addr = port->bridge_addr;
+- struct resource_entry *entry;
+- u64 pci_addr;
+- u32 index = 1;
+-
+- resource_list_for_each_entry(entry, &bridge->windows) {
+- if (resource_type(entry->res) == IORESOURCE_MEM) {
+- pci_addr = entry->res->start - entry->offset;
+- plda_pcie_setup_window(bridge_base_addr, index,
+- entry->res->start, pci_addr,
+- resource_size(entry->res));
+- index++;
+- }
+- }
+-
+- return 0;
+-}
+-
+ static inline void mc_clear_secs(struct mc_pcie *port)
+ {
+ void __iomem *ctrl_base_addr = port->axi_base_addr + MC_PCIE_CTRL_ADDR;
+diff --git a/drivers/pci/controller/plda/pcie-plda-host.c b/drivers/pci/controller/plda/pcie-plda-host.c
+new file mode 100644
+index 000000000000..40139d998568
+--- /dev/null
++++ b/drivers/pci/controller/plda/pcie-plda-host.c
+@@ -0,0 +1,74 @@
++// SPDX-License-Identifier: GPL-2.0
++/*
++ * PLDA PCIe XpressRich host controller driver
++ *
++ * Copyright (C) 2023 Microchip Co. Ltd
++ *
++ * Author: Daire McNamara <daire.mcnamara@microchip.com>
++ */
++
++#include <linux/pci_regs.h>
++#include <linux/pci-ecam.h>
++
++#include "pcie-plda.h"
++
++void plda_pcie_setup_window(void __iomem *bridge_base_addr, u32 index,
++ phys_addr_t axi_addr, phys_addr_t pci_addr,
++ size_t size)
++{
++ u32 atr_sz = ilog2(size) - 1;
++ u32 val;
++
++ if (index == 0)
++ val = PCIE_CONFIG_INTERFACE;
++ else
++ val = PCIE_TX_RX_INTERFACE;
++
++ writel(val, bridge_base_addr + (index * ATR_ENTRY_SIZE) +
++ ATR0_AXI4_SLV0_TRSL_PARAM);
++
++ val = lower_32_bits(axi_addr) | (atr_sz << ATR_SIZE_SHIFT) |
++ ATR_IMPL_ENABLE;
++ writel(val, bridge_base_addr + (index * ATR_ENTRY_SIZE) +
++ ATR0_AXI4_SLV0_SRCADDR_PARAM);
++
++ val = upper_32_bits(axi_addr);
++ writel(val, bridge_base_addr + (index * ATR_ENTRY_SIZE) +
++ ATR0_AXI4_SLV0_SRC_ADDR);
++
++ val = lower_32_bits(pci_addr);
++ writel(val, bridge_base_addr + (index * ATR_ENTRY_SIZE) +
++ ATR0_AXI4_SLV0_TRSL_ADDR_LSB);
++
++ val = upper_32_bits(pci_addr);
++ writel(val, bridge_base_addr + (index * ATR_ENTRY_SIZE) +
++ ATR0_AXI4_SLV0_TRSL_ADDR_UDW);
++
++ val = readl(bridge_base_addr + ATR0_PCIE_WIN0_SRCADDR_PARAM);
++ val |= (ATR0_PCIE_ATR_SIZE << ATR0_PCIE_ATR_SIZE_SHIFT);
++ writel(val, bridge_base_addr + ATR0_PCIE_WIN0_SRCADDR_PARAM);
++ writel(0, bridge_base_addr + ATR0_PCIE_WIN0_SRC_ADDR);
++}
++EXPORT_SYMBOL_GPL(plda_pcie_setup_window);
++
++int plda_pcie_setup_iomems(struct pci_host_bridge *bridge,
++ struct plda_pcie_rp *port)
++{
++ void __iomem *bridge_base_addr = port->bridge_addr;
++ struct resource_entry *entry;
++ u64 pci_addr;
++ u32 index = 1;
++
++ resource_list_for_each_entry(entry, &bridge->windows) {
++ if (resource_type(entry->res) == IORESOURCE_MEM) {
++ pci_addr = entry->res->start - entry->offset;
++ plda_pcie_setup_window(bridge_base_addr, index,
++ entry->res->start, pci_addr,
++ resource_size(entry->res));
++ index++;
++ }
++ }
++
++ return 0;
++}
++EXPORT_SYMBOL_GPL(plda_pcie_setup_iomems);
+diff --git a/drivers/pci/controller/plda/pcie-plda.h b/drivers/pci/controller/plda/pcie-plda.h
+index 7bec6a470758..3a17d8ab5bb2 100644
+--- a/drivers/pci/controller/plda/pcie-plda.h
++++ b/drivers/pci/controller/plda/pcie-plda.h
+@@ -126,4 +126,9 @@ struct plda_pcie_rp {
+ void __iomem *bridge_addr;
+ };
+
++void plda_pcie_setup_window(void __iomem *bridge_base_addr, u32 index,
++ phys_addr_t axi_addr, phys_addr_t pci_addr,
++ size_t size);
++int plda_pcie_setup_iomems(struct pci_host_bridge *bridge,
++ struct plda_pcie_rp *port);
+ #endif
+--
+2.43.0
+
+
+From 530d17ad6ca6d827a3739f4f7424ba9a886df3ab Mon Sep 17 00:00:00 2001
+From: Minda Chen <minda.chen@starfivetech.com>
+Date: Mon, 8 Jan 2024 19:06:00 +0800
+Subject: [PATCH 10/23] PCI: microchip: Rename interrupt related functions
+
+Rename mc_* to plda_* for IRQ functions and related IRQ domain ops data
+instances.
+
+MSI, INTx interrupt code and IRQ init code are all can be re-used.
+
+Signed-off-by: Minda Chen <minda.chen@starfivetech.com>
+Acked-by: Conor Dooley <conor.dooley@microchip.com>
+Message-ID: <20240108110612.19048-11-minda.chen@starfivetech.com>
+Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
+---
+ .../pci/controller/plda/pcie-microchip-host.c | 109 +++++++++---------
+ 1 file changed, 57 insertions(+), 52 deletions(-)
+
+diff --git a/drivers/pci/controller/plda/pcie-microchip-host.c b/drivers/pci/controller/plda/pcie-microchip-host.c
+index 573ad31c578a..18bc352db389 100644
+--- a/drivers/pci/controller/plda/pcie-microchip-host.c
++++ b/drivers/pci/controller/plda/pcie-microchip-host.c
+@@ -318,7 +318,7 @@ static void mc_pcie_enable_msi(struct mc_pcie *port, void __iomem *ecam)
+ ecam + MC_MSI_CAP_CTRL_OFFSET + PCI_MSI_ADDRESS_HI);
+ }
+
+-static void mc_handle_msi(struct irq_desc *desc)
++static void plda_handle_msi(struct irq_desc *desc)
+ {
+ struct plda_pcie_rp *port = irq_desc_get_handler_data(desc);
+ struct irq_chip *chip = irq_desc_get_chip(desc);
+@@ -346,7 +346,7 @@ static void mc_handle_msi(struct irq_desc *desc)
+ chained_irq_exit(chip, desc);
+ }
+
+-static void mc_msi_bottom_irq_ack(struct irq_data *data)
++static void plda_msi_bottom_irq_ack(struct irq_data *data)
+ {
+ struct plda_pcie_rp *port = irq_data_get_irq_chip_data(data);
+ void __iomem *bridge_base_addr = port->bridge_addr;
+@@ -355,7 +355,7 @@ static void mc_msi_bottom_irq_ack(struct irq_data *data)
+ writel_relaxed(BIT(bitpos), bridge_base_addr + ISTATUS_MSI);
+ }
+
+-static void mc_compose_msi_msg(struct irq_data *data, struct msi_msg *msg)
++static void plda_compose_msi_msg(struct irq_data *data, struct msi_msg *msg)
+ {
+ struct plda_pcie_rp *port = irq_data_get_irq_chip_data(data);
+ phys_addr_t addr = port->msi.vector_phy;
+@@ -368,21 +368,23 @@ static void mc_compose_msi_msg(struct irq_data *data, struct msi_msg *msg)
+ (int)data->hwirq, msg->address_hi, msg->address_lo);
+ }
+
+-static int mc_msi_set_affinity(struct irq_data *irq_data,
+- const struct cpumask *mask, bool force)
++static int plda_msi_set_affinity(struct irq_data *irq_data,
++ const struct cpumask *mask, bool force)
+ {
+ return -EINVAL;
+ }
+
+-static struct irq_chip mc_msi_bottom_irq_chip = {
+- .name = "Microchip MSI",
+- .irq_ack = mc_msi_bottom_irq_ack,
+- .irq_compose_msi_msg = mc_compose_msi_msg,
+- .irq_set_affinity = mc_msi_set_affinity,
++static struct irq_chip plda_msi_bottom_irq_chip = {
++ .name = "PLDA MSI",
++ .irq_ack = plda_msi_bottom_irq_ack,
++ .irq_compose_msi_msg = plda_compose_msi_msg,
++ .irq_set_affinity = plda_msi_set_affinity,
+ };
+
+-static int mc_irq_msi_domain_alloc(struct irq_domain *domain, unsigned int virq,
+- unsigned int nr_irqs, void *args)
++static int plda_irq_msi_domain_alloc(struct irq_domain *domain,
++ unsigned int virq,
++ unsigned int nr_irqs,
++ void *args)
+ {
+ struct plda_pcie_rp *port = domain->host_data;
+ struct plda_msi *msi = &port->msi;
+@@ -397,7 +399,7 @@ static int mc_irq_msi_domain_alloc(struct irq_domain *domain, unsigned int virq,
+
+ set_bit(bit, msi->used);
+
+- irq_domain_set_info(domain, virq, bit, &mc_msi_bottom_irq_chip,
++ irq_domain_set_info(domain, virq, bit, &plda_msi_bottom_irq_chip,
+ domain->host_data, handle_edge_irq, NULL, NULL);
+
+ mutex_unlock(&msi->lock);
+@@ -405,8 +407,9 @@ static int mc_irq_msi_domain_alloc(struct irq_domain *domain, unsigned int virq,
+ return 0;
+ }
+
+-static void mc_irq_msi_domain_free(struct irq_domain *domain, unsigned int virq,
+- unsigned int nr_irqs)
++static void plda_irq_msi_domain_free(struct irq_domain *domain,
++ unsigned int virq,
++ unsigned int nr_irqs)
+ {
+ struct irq_data *d = irq_domain_get_irq_data(domain, virq);
+ struct plda_pcie_rp *port = irq_data_get_irq_chip_data(d);
+@@ -423,24 +426,24 @@ static void mc_irq_msi_domain_free(struct irq_domain *domain, unsigned int virq,
+ }
+
+ static const struct irq_domain_ops msi_domain_ops = {
+- .alloc = mc_irq_msi_domain_alloc,
+- .free = mc_irq_msi_domain_free,
++ .alloc = plda_irq_msi_domain_alloc,
++ .free = plda_irq_msi_domain_free,
+ };
+
+-static struct irq_chip mc_msi_irq_chip = {
+- .name = "Microchip PCIe MSI",
++static struct irq_chip plda_msi_irq_chip = {
++ .name = "PLDA PCIe MSI",
+ .irq_ack = irq_chip_ack_parent,
+ .irq_mask = pci_msi_mask_irq,
+ .irq_unmask = pci_msi_unmask_irq,
+ };
+
+-static struct msi_domain_info mc_msi_domain_info = {
++static struct msi_domain_info plda_msi_domain_info = {
+ .flags = (MSI_FLAG_USE_DEF_DOM_OPS | MSI_FLAG_USE_DEF_CHIP_OPS |
+ MSI_FLAG_PCI_MSIX),
+- .chip = &mc_msi_irq_chip,
++ .chip = &plda_msi_irq_chip,
+ };
+
+-static int mc_allocate_msi_domains(struct plda_pcie_rp *port)
++static int plda_allocate_msi_domains(struct plda_pcie_rp *port)
+ {
+ struct device *dev = port->dev;
+ struct fwnode_handle *fwnode = of_node_to_fwnode(dev->of_node);
+@@ -455,7 +458,8 @@ static int mc_allocate_msi_domains(struct plda_pcie_rp *port)
+ return -ENOMEM;
+ }
+
+- msi->msi_domain = pci_msi_create_irq_domain(fwnode, &mc_msi_domain_info,
++ msi->msi_domain = pci_msi_create_irq_domain(fwnode,
++ &plda_msi_domain_info,
+ msi->dev_domain);
+ if (!msi->msi_domain) {
+ dev_err(dev, "failed to create MSI domain\n");
+@@ -466,7 +470,7 @@ static int mc_allocate_msi_domains(struct plda_pcie_rp *port)
+ return 0;
+ }
+
+-static void mc_handle_intx(struct irq_desc *desc)
++static void plda_handle_intx(struct irq_desc *desc)
+ {
+ struct plda_pcie_rp *port = irq_desc_get_handler_data(desc);
+ struct irq_chip *chip = irq_desc_get_chip(desc);
+@@ -493,7 +497,7 @@ static void mc_handle_intx(struct irq_desc *desc)
+ chained_irq_exit(chip, desc);
+ }
+
+-static void mc_ack_intx_irq(struct irq_data *data)
++static void plda_ack_intx_irq(struct irq_data *data)
+ {
+ struct plda_pcie_rp *port = irq_data_get_irq_chip_data(data);
+ void __iomem *bridge_base_addr = port->bridge_addr;
+@@ -502,7 +506,7 @@ static void mc_ack_intx_irq(struct irq_data *data)
+ writel_relaxed(mask, bridge_base_addr + ISTATUS_LOCAL);
+ }
+
+-static void mc_mask_intx_irq(struct irq_data *data)
++static void plda_mask_intx_irq(struct irq_data *data)
+ {
+ struct plda_pcie_rp *port = irq_data_get_irq_chip_data(data);
+ void __iomem *bridge_base_addr = port->bridge_addr;
+@@ -517,7 +521,7 @@ static void mc_mask_intx_irq(struct irq_data *data)
+ raw_spin_unlock_irqrestore(&port->lock, flags);
+ }
+
+-static void mc_unmask_intx_irq(struct irq_data *data)
++static void plda_unmask_intx_irq(struct irq_data *data)
+ {
+ struct plda_pcie_rp *port = irq_data_get_irq_chip_data(data);
+ void __iomem *bridge_base_addr = port->bridge_addr;
+@@ -532,24 +536,24 @@ static void mc_unmask_intx_irq(struct irq_data *data)
+ raw_spin_unlock_irqrestore(&port->lock, flags);
+ }
+
+-static struct irq_chip mc_intx_irq_chip = {
+- .name = "Microchip PCIe INTx",
+- .irq_ack = mc_ack_intx_irq,
+- .irq_mask = mc_mask_intx_irq,
+- .irq_unmask = mc_unmask_intx_irq,
++static struct irq_chip plda_intx_irq_chip = {
++ .name = "PLDA PCIe INTx",
++ .irq_ack = plda_ack_intx_irq,
++ .irq_mask = plda_mask_intx_irq,
++ .irq_unmask = plda_unmask_intx_irq,
+ };
+
+-static int mc_pcie_intx_map(struct irq_domain *domain, unsigned int irq,
+- irq_hw_number_t hwirq)
++static int plda_pcie_intx_map(struct irq_domain *domain, unsigned int irq,
++ irq_hw_number_t hwirq)
+ {
+- irq_set_chip_and_handler(irq, &mc_intx_irq_chip, handle_level_irq);
++ irq_set_chip_and_handler(irq, &plda_intx_irq_chip, handle_level_irq);
+ irq_set_chip_data(irq, domain->host_data);
+
+ return 0;
+ }
+
+ static const struct irq_domain_ops intx_domain_ops = {
+- .map = mc_pcie_intx_map,
++ .map = plda_pcie_intx_map,
+ };
+
+ static inline u32 reg_to_event(u32 reg, struct event_map field)
+@@ -609,7 +613,7 @@ static u32 local_events(struct mc_pcie *port)
+ return val;
+ }
+
+-static u32 get_events(struct plda_pcie_rp *port)
++static u32 mc_get_events(struct plda_pcie_rp *port)
+ {
+ struct mc_pcie *mc_port = container_of(port, struct mc_pcie, plda);
+ u32 events = 0;
+@@ -638,7 +642,7 @@ static irqreturn_t mc_event_handler(int irq, void *dev_id)
+ return IRQ_HANDLED;
+ }
+
+-static void mc_handle_event(struct irq_desc *desc)
++static void plda_handle_event(struct irq_desc *desc)
+ {
+ struct plda_pcie_rp *port = irq_desc_get_handler_data(desc);
+ unsigned long events;
+@@ -647,7 +651,7 @@ static void mc_handle_event(struct irq_desc *desc)
+
+ chained_irq_enter(chip, desc);
+
+- events = get_events(port);
++ events = mc_get_events(port);
+
+ for_each_set_bit(bit, &events, NUM_EVENTS)
+ generic_handle_domain_irq(port->event_domain, bit);
+@@ -741,8 +745,8 @@ static struct irq_chip mc_event_irq_chip = {
+ .irq_unmask = mc_unmask_event_irq,
+ };
+
+-static int mc_pcie_event_map(struct irq_domain *domain, unsigned int irq,
+- irq_hw_number_t hwirq)
++static int plda_pcie_event_map(struct irq_domain *domain, unsigned int irq,
++ irq_hw_number_t hwirq)
+ {
+ irq_set_chip_and_handler(irq, &mc_event_irq_chip, handle_level_irq);
+ irq_set_chip_data(irq, domain->host_data);
+@@ -750,8 +754,8 @@ static int mc_pcie_event_map(struct irq_domain *domain, unsigned int irq,
+ return 0;
+ }
+
+-static const struct irq_domain_ops event_domain_ops = {
+- .map = mc_pcie_event_map,
++static const struct irq_domain_ops plda_event_domain_ops = {
++ .map = plda_pcie_event_map,
+ };
+
+ static inline void mc_pcie_deinit_clk(void *data)
+@@ -799,7 +803,7 @@ static int mc_pcie_init_clks(struct device *dev)
+ return 0;
+ }
+
+-static int mc_pcie_init_irq_domains(struct plda_pcie_rp *port)
++static int plda_pcie_init_irq_domains(struct plda_pcie_rp *port)
+ {
+ struct device *dev = port->dev;
+ struct device_node *node = dev->of_node;
+@@ -813,7 +817,8 @@ static int mc_pcie_init_irq_domains(struct plda_pcie_rp *port)
+ }
+
+ port->event_domain = irq_domain_add_linear(pcie_intc_node, NUM_EVENTS,
+- &event_domain_ops, port);
++ &plda_event_domain_ops,
++ port);
+ if (!port->event_domain) {
+ dev_err(dev, "failed to get event domain\n");
+ of_node_put(pcie_intc_node);
+@@ -835,7 +840,7 @@ static int mc_pcie_init_irq_domains(struct plda_pcie_rp *port)
+ of_node_put(pcie_intc_node);
+ raw_spin_lock_init(&port->lock);
+
+- return mc_allocate_msi_domains(port);
++ return plda_allocate_msi_domains(port);
+ }
+
+ static inline void mc_clear_secs(struct mc_pcie *port)
+@@ -898,14 +903,14 @@ static void mc_disable_interrupts(struct mc_pcie *port)
+ writel_relaxed(GENMASK(31, 0), bridge_base_addr + ISTATUS_HOST);
+ }
+
+-static int mc_init_interrupts(struct platform_device *pdev, struct plda_pcie_rp *port)
++static int plda_init_interrupts(struct platform_device *pdev, struct plda_pcie_rp *port)
+ {
+ struct device *dev = &pdev->dev;
+ int irq;
+ int i, intx_irq, msi_irq, event_irq;
+ int ret;
+
+- ret = mc_pcie_init_irq_domains(port);
++ ret = plda_pcie_init_irq_domains(port);
+ if (ret) {
+ dev_err(dev, "failed creating IRQ domains\n");
+ return ret;
+@@ -938,7 +943,7 @@ static int mc_init_interrupts(struct platform_device *pdev, struct plda_pcie_rp
+ }
+
+ /* Plug the INTx chained handler */
+- irq_set_chained_handler_and_data(intx_irq, mc_handle_intx, port);
++ irq_set_chained_handler_and_data(intx_irq, plda_handle_intx, port);
+
+ msi_irq = irq_create_mapping(port->event_domain,
+ EVENT_LOCAL_PM_MSI_INT_MSI);
+@@ -946,10 +951,10 @@ static int mc_init_interrupts(struct platform_device *pdev, struct plda_pcie_rp
+ return -ENXIO;
+
+ /* Plug the MSI chained handler */
+- irq_set_chained_handler_and_data(msi_irq, mc_handle_msi, port);
++ irq_set_chained_handler_and_data(msi_irq, plda_handle_msi, port);
+
+ /* Plug the main event chained handler */
+- irq_set_chained_handler_and_data(irq, mc_handle_event, port);
++ irq_set_chained_handler_and_data(irq, plda_handle_event, port);
+
+ return 0;
+ }
+@@ -977,7 +982,7 @@ static int mc_platform_init(struct pci_config_window *cfg)
+ return ret;
+
+ /* Address translation is up; safe to enable interrupts */
+- ret = mc_init_interrupts(pdev, &port->plda);
++ ret = plda_init_interrupts(pdev, &port->plda);
+ if (ret)
+ return ret;
+
+--
+2.43.0
+
+
+From 0f2c8b23c449631c31774d68e54f0586719b9f83 Mon Sep 17 00:00:00 2001
+From: Minda Chen <minda.chen@starfivetech.com>
+Date: Mon, 8 Jan 2024 19:06:01 +0800
+Subject: [PATCH 11/23] PCI: microchip: Add num_events field to struct
+ plda_pcie_rp
+
+The number of events is different across platforms. In order to share
+interrupt processing code, add a variable that defines the number of
+events so that it can be set per-platform instead of hardcoding it.
+
+Signed-off-by: Minda Chen <minda.chen@starfivetech.com>
+Reviewed-by: Conor Dooley <conor.dooley@microchip.com>
+Message-ID: <20240108110612.19048-12-minda.chen@starfivetech.com>
+Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
+---
+ drivers/pci/controller/plda/pcie-microchip-host.c | 8 +++++---
+ drivers/pci/controller/plda/pcie-plda.h | 1 +
+ 2 files changed, 6 insertions(+), 3 deletions(-)
+
+diff --git a/drivers/pci/controller/plda/pcie-microchip-host.c b/drivers/pci/controller/plda/pcie-microchip-host.c
+index 18bc352db389..0a5cd8b214cd 100644
+--- a/drivers/pci/controller/plda/pcie-microchip-host.c
++++ b/drivers/pci/controller/plda/pcie-microchip-host.c
+@@ -653,7 +653,7 @@ static void plda_handle_event(struct irq_desc *desc)
+
+ events = mc_get_events(port);
+
+- for_each_set_bit(bit, &events, NUM_EVENTS)
++ for_each_set_bit(bit, &events, port->num_events)
+ generic_handle_domain_irq(port->event_domain, bit);
+
+ chained_irq_exit(chip, desc);
+@@ -816,7 +816,8 @@ static int plda_pcie_init_irq_domains(struct plda_pcie_rp *port)
+ return -EINVAL;
+ }
+
+- port->event_domain = irq_domain_add_linear(pcie_intc_node, NUM_EVENTS,
++ port->event_domain = irq_domain_add_linear(pcie_intc_node,
++ port->num_events,
+ &plda_event_domain_ops,
+ port);
+ if (!port->event_domain) {
+@@ -920,7 +921,7 @@ static int plda_init_interrupts(struct platform_device *pdev, struct plda_pcie_r
+ if (irq < 0)
+ return -ENODEV;
+
+- for (i = 0; i < NUM_EVENTS; i++) {
++ for (i = 0; i < port->num_events; i++) {
+ event_irq = irq_create_mapping(port->event_domain, i);
+ if (!event_irq) {
+ dev_err(dev, "failed to map hwirq %d\n", i);
+@@ -1012,6 +1013,7 @@ static int mc_host_probe(struct platform_device *pdev)
+
+ bridge_base_addr = port->axi_base_addr + MC_PCIE_BRIDGE_ADDR;
+ plda->bridge_addr = bridge_base_addr;
++ plda->num_events = NUM_EVENTS;
+
+ /* Allow enabling MSI by disabling MSI-X */
+ val = readl(bridge_base_addr + PCIE_PCI_IRQ_DW0);
+diff --git a/drivers/pci/controller/plda/pcie-plda.h b/drivers/pci/controller/plda/pcie-plda.h
+index 3a17d8ab5bb2..adfca9f28458 100644
+--- a/drivers/pci/controller/plda/pcie-plda.h
++++ b/drivers/pci/controller/plda/pcie-plda.h
+@@ -124,6 +124,7 @@ struct plda_pcie_rp {
+ raw_spinlock_t lock;
+ struct plda_msi msi;
+ void __iomem *bridge_addr;
++ int num_events;
+ };
+
+ void plda_pcie_setup_window(void __iomem *bridge_base_addr, u32 index,
+--
+2.43.0
+
+
+From 4e90f5c96dbf6799e63d7eaea36b5735f514400e Mon Sep 17 00:00:00 2001
+From: Minda Chen <minda.chen@starfivetech.com>
+Date: Mon, 8 Jan 2024 19:06:02 +0800
+Subject: [PATCH 12/23] PCI: microchip: Add request_event_irq() callback
+ function
+
+As PLDA dts binding doc(Documentation/devicetree/bindings/pci/
+plda,xpressrich3-axi-common.yaml) showes, PLDA PCIe contains an interrupt
+controller. Microchip Polarfire PCIe add some PCIe interrupts base on
+PLDA IP interrupt controller.
+
+Microchip Polarfire PCIe additional intrerrupts:
+EVENT_PCIE_L2_EXIT
+EVENT_PCIE_HOTRST_EXIT
+EVENT_PCIE_DLUP_EXIT
+EVENT_SEC_TX_RAM_SEC_ERR
+EVENT_SEC_RX_RAM_SEC_ERR
+....
+
+Both codes of register interrupts and mc_event_handler() contain
+additional interrupts symbol names, these can not be re-used. So add a
+new plda_event_handler() functions, which implements PLDA interrupt
+defalt handler. Add request_event_irq() callback function to
+compat Microchip Polorfire PCIe additional interrupts.
+
+Signed-off-by: Minda Chen <minda.chen@starfivetech.com>
+Acked-by: Conor Dooley <conor.dooley@microchip.com>
+Message-ID: <20240108110612.19048-13-minda.chen@starfivetech.com>
+Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
+---
+ .../pci/controller/plda/pcie-microchip-host.c | 31 ++++++++++++++++---
+ drivers/pci/controller/plda/pcie-plda.h | 5 +++
+ 2 files changed, 32 insertions(+), 4 deletions(-)
+
+diff --git a/drivers/pci/controller/plda/pcie-microchip-host.c b/drivers/pci/controller/plda/pcie-microchip-host.c
+index 0a5cd8b214cd..bf5ce33ee275 100644
+--- a/drivers/pci/controller/plda/pcie-microchip-host.c
++++ b/drivers/pci/controller/plda/pcie-microchip-host.c
+@@ -642,6 +642,11 @@ static irqreturn_t mc_event_handler(int irq, void *dev_id)
+ return IRQ_HANDLED;
+ }
+
++static irqreturn_t plda_event_handler(int irq, void *dev_id)
++{
++ return IRQ_HANDLED;
++}
++
+ static void plda_handle_event(struct irq_desc *desc)
+ {
+ struct plda_pcie_rp *port = irq_desc_get_handler_data(desc);
+@@ -803,6 +808,17 @@ static int mc_pcie_init_clks(struct device *dev)
+ return 0;
+ }
+
++static int mc_request_event_irq(struct plda_pcie_rp *plda, int event_irq,
++ int event)
++{
++ return devm_request_irq(plda->dev, event_irq, mc_event_handler,
++ 0, event_cause[event].sym, plda);
++}
++
++static const struct plda_event mc_event = {
++ .request_event_irq = mc_request_event_irq,
++};
++
+ static int plda_pcie_init_irq_domains(struct plda_pcie_rp *port)
+ {
+ struct device *dev = port->dev;
+@@ -904,7 +920,9 @@ static void mc_disable_interrupts(struct mc_pcie *port)
+ writel_relaxed(GENMASK(31, 0), bridge_base_addr + ISTATUS_HOST);
+ }
+
+-static int plda_init_interrupts(struct platform_device *pdev, struct plda_pcie_rp *port)
++static int plda_init_interrupts(struct platform_device *pdev,
++ struct plda_pcie_rp *port,
++ const struct plda_event *event)
+ {
+ struct device *dev = &pdev->dev;
+ int irq;
+@@ -928,8 +946,13 @@ static int plda_init_interrupts(struct platform_device *pdev, struct plda_pcie_r
+ return -ENXIO;
+ }
+
+- ret = devm_request_irq(dev, event_irq, mc_event_handler,
+- 0, event_cause[i].sym, port);
++ if (event->request_event_irq)
++ ret = event->request_event_irq(port, event_irq, i);
++ else
++ ret = devm_request_irq(dev, event_irq,
++ plda_event_handler,
++ 0, NULL, port);
++
+ if (ret) {
+ dev_err(dev, "failed to request IRQ %d\n", event_irq);
+ return ret;
+@@ -983,7 +1006,7 @@ static int mc_platform_init(struct pci_config_window *cfg)
+ return ret;
+
+ /* Address translation is up; safe to enable interrupts */
+- ret = plda_init_interrupts(pdev, &port->plda);
++ ret = plda_init_interrupts(pdev, &port->plda, &mc_event);
+ if (ret)
+ return ret;
+
+diff --git a/drivers/pci/controller/plda/pcie-plda.h b/drivers/pci/controller/plda/pcie-plda.h
+index adfca9f28458..16b81b23c213 100644
+--- a/drivers/pci/controller/plda/pcie-plda.h
++++ b/drivers/pci/controller/plda/pcie-plda.h
+@@ -127,6 +127,11 @@ struct plda_pcie_rp {
+ int num_events;
+ };
+
++struct plda_event {
++ int (*request_event_irq)(struct plda_pcie_rp *pcie,
++ int event_irq, int event);
++};
++
+ void plda_pcie_setup_window(void __iomem *bridge_base_addr, u32 index,
+ phys_addr_t axi_addr, phys_addr_t pci_addr,
+ size_t size);
+--
+2.43.0
+
+
+From 5b7f9e79770f81f51a53a1adbd6bfb4f97ebe2e0 Mon Sep 17 00:00:00 2001
+From: Minda Chen <minda.chen@starfivetech.com>
+Date: Mon, 8 Jan 2024 19:06:03 +0800
+Subject: [PATCH 13/23] PCI: microchip: Add INTx and MSI event num to struct
+ plda_event
+
+The INTx and MSI interrupt event num is different in Microchip and
+StarFive platform.
+
+Signed-off-by: Minda Chen <minda.chen@starfivetech.com>
+Acked-by: Conor Dooley <conor.dooley@microchip.com>
+Message-ID: <20240108110612.19048-14-minda.chen@starfivetech.com>
+Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
+---
+ drivers/pci/controller/plda/pcie-microchip-host.c | 6 ++++--
+ drivers/pci/controller/plda/pcie-plda.h | 2 ++
+ 2 files changed, 6 insertions(+), 2 deletions(-)
+
+diff --git a/drivers/pci/controller/plda/pcie-microchip-host.c b/drivers/pci/controller/plda/pcie-microchip-host.c
+index bf5ce33ee275..8a51d3aa7e88 100644
+--- a/drivers/pci/controller/plda/pcie-microchip-host.c
++++ b/drivers/pci/controller/plda/pcie-microchip-host.c
+@@ -817,6 +817,8 @@ static int mc_request_event_irq(struct plda_pcie_rp *plda, int event_irq,
+
+ static const struct plda_event mc_event = {
+ .request_event_irq = mc_request_event_irq,
++ .intx_event = EVENT_LOCAL_PM_MSI_INT_INTX,
++ .msi_event = EVENT_LOCAL_PM_MSI_INT_MSI,
+ };
+
+ static int plda_pcie_init_irq_domains(struct plda_pcie_rp *port)
+@@ -960,7 +962,7 @@ static int plda_init_interrupts(struct platform_device *pdev,
+ }
+
+ intx_irq = irq_create_mapping(port->event_domain,
+- EVENT_LOCAL_PM_MSI_INT_INTX);
++ event->intx_event);
+ if (!intx_irq) {
+ dev_err(dev, "failed to map INTx interrupt\n");
+ return -ENXIO;
+@@ -970,7 +972,7 @@ static int plda_init_interrupts(struct platform_device *pdev,
+ irq_set_chained_handler_and_data(intx_irq, plda_handle_intx, port);
+
+ msi_irq = irq_create_mapping(port->event_domain,
+- EVENT_LOCAL_PM_MSI_INT_MSI);
++ event->msi_event);
+ if (!msi_irq)
+ return -ENXIO;
+
+diff --git a/drivers/pci/controller/plda/pcie-plda.h b/drivers/pci/controller/plda/pcie-plda.h
+index 16b81b23c213..0efe64d5f688 100644
+--- a/drivers/pci/controller/plda/pcie-plda.h
++++ b/drivers/pci/controller/plda/pcie-plda.h
+@@ -130,6 +130,8 @@ struct plda_pcie_rp {
+ struct plda_event {
+ int (*request_event_irq)(struct plda_pcie_rp *pcie,
+ int event_irq, int event);
++ int intx_event;
++ int msi_event;
+ };
+
+ void plda_pcie_setup_window(void __iomem *bridge_base_addr, u32 index,
+--
+2.43.0
+
+
+From 982d3f872fbf86323e7db898d02f3f0af36e4fa9 Mon Sep 17 00:00:00 2001
+From: Minda Chen <minda.chen@starfivetech.com>
+Date: Mon, 8 Jan 2024 19:06:04 +0800
+Subject: [PATCH 14/23] PCI: microchip: Add get_events() callback and add PLDA
+ get_event()
+
+As PLDA dts binding doc(Documentation/devicetree/bindings/pci/
+plda,xpressrich3-axi-common.yaml) showes, PLDA PCIe contains an interrupt
+controller.
+
+PolarFire implements its own PCIe interrupts, additional to the regular
+PCIe interrupts, due to lack of an MSI controller, so the interrupt to
+event number mapping is different to the PLDA regular interrupts,
+necessitating a custom get_events() implementation.
+
+Microchip Polarfire PCIe additional intrerrupts:
+EVENT_PCIE_L2_EXIT
+EVENT_PCIE_HOTRST_EXIT
+EVENT_PCIE_DLUP_EXIT
+EVENT_SEC_TX_RAM_SEC_ERR
+EVENT_SEC_RX_RAM_SEC_ERR
+....
+
+plda_get_events() adds interrupt register to PLDA local event num mapping
+codes. All The PLDA interrupts can be seen in new added graph.
+
+Signed-off-by: Minda Chen <minda.chen@starfivetech.com>
+Acked-by: Conor Dooley <conor.dooley@microchip.com>
+Message-ID: <20240108110612.19048-15-minda.chen@starfivetech.com>
+Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
+---
+ .../pci/controller/plda/pcie-microchip-host.c | 35 ++++++++++++++++++-
+ drivers/pci/controller/plda/pcie-plda.h | 32 +++++++++++++++++
+ 2 files changed, 66 insertions(+), 1 deletion(-)
+
+diff --git a/drivers/pci/controller/plda/pcie-microchip-host.c b/drivers/pci/controller/plda/pcie-microchip-host.c
+index 8a51d3aa7e88..b3df373a2141 100644
+--- a/drivers/pci/controller/plda/pcie-microchip-host.c
++++ b/drivers/pci/controller/plda/pcie-microchip-host.c
+@@ -626,6 +626,26 @@ static u32 mc_get_events(struct plda_pcie_rp *port)
+ return events;
+ }
+
++static u32 plda_get_events(struct plda_pcie_rp *port)
++{
++ u32 events, val, origin;
++
++ origin = readl_relaxed(port->bridge_addr + ISTATUS_LOCAL);
++
++ /* MSI event and sys events */
++ val = (origin & SYS_AND_MSI_MASK) >> PM_MSI_INT_MSI_SHIFT;
++ events = val << (PM_MSI_INT_MSI_SHIFT - PCI_NUM_INTX + 1);
++
++ /* INTx events */
++ if (origin & PM_MSI_INT_INTX_MASK)
++ events |= BIT(PM_MSI_INT_INTX_SHIFT);
++
++ /* remains are same with register */
++ events |= origin & GENMASK(P_ATR_EVT_DOORBELL_SHIFT, 0);
++
++ return events;
++}
++
+ static irqreturn_t mc_event_handler(int irq, void *dev_id)
+ {
+ struct plda_pcie_rp *port = dev_id;
+@@ -656,7 +676,7 @@ static void plda_handle_event(struct irq_desc *desc)
+
+ chained_irq_enter(chip, desc);
+
+- events = mc_get_events(port);
++ events = port->event_ops->get_events(port);
+
+ for_each_set_bit(bit, &events, port->num_events)
+ generic_handle_domain_irq(port->event_domain, bit);
+@@ -750,6 +770,10 @@ static struct irq_chip mc_event_irq_chip = {
+ .irq_unmask = mc_unmask_event_irq,
+ };
+
++static const struct plda_event_ops plda_event_ops = {
++ .get_events = plda_get_events,
++};
++
+ static int plda_pcie_event_map(struct irq_domain *domain, unsigned int irq,
+ irq_hw_number_t hwirq)
+ {
+@@ -815,6 +839,10 @@ static int mc_request_event_irq(struct plda_pcie_rp *plda, int event_irq,
+ 0, event_cause[event].sym, plda);
+ }
+
++static const struct plda_event_ops mc_event_ops = {
++ .get_events = mc_get_events,
++};
++
+ static const struct plda_event mc_event = {
+ .request_event_irq = mc_request_event_irq,
+ .intx_event = EVENT_LOCAL_PM_MSI_INT_INTX,
+@@ -931,6 +959,9 @@ static int plda_init_interrupts(struct platform_device *pdev,
+ int i, intx_irq, msi_irq, event_irq;
+ int ret;
+
++ if (!port->event_ops)
++ port->event_ops = &plda_event_ops;
++
+ ret = plda_pcie_init_irq_domains(port);
+ if (ret) {
+ dev_err(dev, "failed creating IRQ domains\n");
+@@ -1007,6 +1038,8 @@ static int mc_platform_init(struct pci_config_window *cfg)
+ if (ret)
+ return ret;
+
++ port->plda.event_ops = &mc_event_ops;
++
+ /* Address translation is up; safe to enable interrupts */
+ ret = plda_init_interrupts(pdev, &port->plda, &mc_event);
+ if (ret)
+diff --git a/drivers/pci/controller/plda/pcie-plda.h b/drivers/pci/controller/plda/pcie-plda.h
+index 0efe64d5f688..9db92ccf286c 100644
+--- a/drivers/pci/controller/plda/pcie-plda.h
++++ b/drivers/pci/controller/plda/pcie-plda.h
+@@ -58,6 +58,7 @@
+ #define PM_MSI_INT_EVENTS_SHIFT 30
+ #define PM_MSI_INT_SYS_ERR_MASK 0x80000000u
+ #define PM_MSI_INT_SYS_ERR_SHIFT 31
++#define SYS_AND_MSI_MASK GENMASK(31, 28)
+ #define NUM_LOCAL_EVENTS 15
+ #define ISTATUS_LOCAL 0x184
+ #define IMASK_HOST 0x188
+@@ -108,6 +109,36 @@ enum plda_int_event {
+
+ #define PLDA_MAX_INT_NUM (PLDA_NUM_DMA_EVENTS + PLDA_INT_EVENT_NUM)
+
++/*
++ * PLDA interrupt register
++ *
++ * 31 27 23 15 7 0
++ * +--+--+--+-+------+-+-+-+-+-+-+-+-+-----------+-----------+
++ * |12|11|10|9| intx |7|6|5|4|3|2|1|0| DMA error | DMA end |
++ * +--+--+--+-+------+-+-+-+-+-+-+-+-+-----------+-----------+
++ * bit 0-7 DMA interrupt end : reserved for vendor implement
++ * bit 8-15 DMA error : reserved for vendor implement
++ * 0: AXI post error (PLDA_AXI_POST_ERR)
++ * 1: AXI fetch error (PLDA_AXI_FETCH_ERR)
++ * 2: AXI discard error (PLDA_AXI_DISCARD_ERR)
++ * 3: AXI doorbell (PLDA_PCIE_DOORBELL)
++ * 4: PCIe post error (PLDA_PCIE_POST_ERR)
++ * 5: PCIe fetch error (PLDA_PCIE_FETCH_ERR)
++ * 6: PCIe discard error (PLDA_PCIE_DISCARD_ERR)
++ * 7: PCIe doorbell (PLDA_PCIE_DOORBELL)
++ * 8: 4 INTx interruts (PLDA_INTX)
++ * 9: MSI interrupt (PLDA_MSI)
++ * 10: AER event (PLDA_AER_EVENT)
++ * 11: PM/LTR/Hotplug (PLDA_MISC_EVENTS)
++ * 12: System error (PLDA_SYS_ERR)
++ */
++
++struct plda_pcie_rp;
++
++struct plda_event_ops {
++ u32 (*get_events)(struct plda_pcie_rp *pcie);
++};
++
+ struct plda_msi {
+ struct mutex lock; /* Protect used bitmap */
+ struct irq_domain *msi_domain;
+@@ -123,6 +154,7 @@ struct plda_pcie_rp {
+ struct irq_domain *event_domain;
+ raw_spinlock_t lock;
+ struct plda_msi msi;
++ const struct plda_event_ops *event_ops;
+ void __iomem *bridge_addr;
+ int num_events;
+ };
+--
+2.43.0
+
+
+From a4d9ec0a9ad3c0f3637b65c8dfd3ad3af5f38acc Mon Sep 17 00:00:00 2001
+From: Minda Chen <minda.chen@starfivetech.com>
+Date: Mon, 8 Jan 2024 19:06:05 +0800
+Subject: [PATCH 15/23] PCI: microchip: Add event irqchip field to host port
+ and add PLDA irqchip
+
+As PLDA dts binding doc(Documentation/devicetree/bindings/pci/
+plda,xpressrich3-axi-common.yaml) showes, PLDA PCIe contains an interrupt
+controller.
+
+Microchip PolarFire PCIE event IRQs includes PLDA interrupts and
+Polarfire their own interrupts. The interrupt irqchip ops includes
+ack/mask/unmask interrupt ops, which will write correct registers.
+Microchip Polarfire PCIe additional interrupts require to write Polarfire
+SoC self-defined registers. So Microchip PCIe event irqchip ops can not
+be re-used.
+
+To support PLDA its own event IRQ process, implements PLDA irqchip ops and
+add event irqchip field to struct pcie_plda_rp.
+
+Signed-off-by: Minda Chen <minda.chen@starfivetech.com>
+Acked-by: Conor Dooley <conor.dooley@microchip.com>
+Message-ID: <20240108110612.19048-16-minda.chen@starfivetech.com>
+Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
+---
+ .../pci/controller/plda/pcie-microchip-host.c | 66 ++++++++++++++++++-
+ drivers/pci/controller/plda/pcie-plda.h | 5 +-
+ 2 files changed, 69 insertions(+), 2 deletions(-)
+
+diff --git a/drivers/pci/controller/plda/pcie-microchip-host.c b/drivers/pci/controller/plda/pcie-microchip-host.c
+index b3df373a2141..beaf5c27da84 100644
+--- a/drivers/pci/controller/plda/pcie-microchip-host.c
++++ b/drivers/pci/controller/plda/pcie-microchip-host.c
+@@ -770,6 +770,64 @@ static struct irq_chip mc_event_irq_chip = {
+ .irq_unmask = mc_unmask_event_irq,
+ };
+
++static u32 plda_hwirq_to_mask(int hwirq)
++{
++ u32 mask;
++
++ /* hwirq 23 - 0 are the same with register */
++ if (hwirq < EVENT_PM_MSI_INT_INTX)
++ mask = BIT(hwirq);
++ else if (hwirq == EVENT_PM_MSI_INT_INTX)
++ mask = PM_MSI_INT_INTX_MASK;
++ else
++ mask = BIT(hwirq + PCI_NUM_INTX - 1);
++
++ return mask;
++}
++
++static void plda_ack_event_irq(struct irq_data *data)
++{
++ struct plda_pcie_rp *port = irq_data_get_irq_chip_data(data);
++
++ writel_relaxed(plda_hwirq_to_mask(data->hwirq),
++ port->bridge_addr + ISTATUS_LOCAL);
++}
++
++static void plda_mask_event_irq(struct irq_data *data)
++{
++ struct plda_pcie_rp *port = irq_data_get_irq_chip_data(data);
++ u32 mask, val;
++
++ mask = plda_hwirq_to_mask(data->hwirq);
++
++ raw_spin_lock(&port->lock);
++ val = readl_relaxed(port->bridge_addr + IMASK_LOCAL);
++ val &= ~mask;
++ writel_relaxed(val, port->bridge_addr + IMASK_LOCAL);
++ raw_spin_unlock(&port->lock);
++}
++
++static void plda_unmask_event_irq(struct irq_data *data)
++{
++ struct plda_pcie_rp *port = irq_data_get_irq_chip_data(data);
++ u32 mask, val;
++
++ mask = plda_hwirq_to_mask(data->hwirq);
++
++ raw_spin_lock(&port->lock);
++ val = readl_relaxed(port->bridge_addr + IMASK_LOCAL);
++ val |= mask;
++ writel_relaxed(val, port->bridge_addr + IMASK_LOCAL);
++ raw_spin_unlock(&port->lock);
++}
++
++static struct irq_chip plda_event_irq_chip = {
++ .name = "PLDA PCIe EVENT",
++ .irq_ack = plda_ack_event_irq,
++ .irq_mask = plda_mask_event_irq,
++ .irq_unmask = plda_unmask_event_irq,
++};
++
+ static const struct plda_event_ops plda_event_ops = {
+ .get_events = plda_get_events,
+ };
+@@ -777,7 +835,9 @@ static const struct plda_event_ops plda_event_ops = {
+ static int plda_pcie_event_map(struct irq_domain *domain, unsigned int irq,
+ irq_hw_number_t hwirq)
+ {
+- irq_set_chip_and_handler(irq, &mc_event_irq_chip, handle_level_irq);
++ struct plda_pcie_rp *port = (void *)domain->host_data;
++
++ irq_set_chip_and_handler(irq, port->event_irq_chip, handle_level_irq);
+ irq_set_chip_data(irq, domain->host_data);
+
+ return 0;
+@@ -962,6 +1022,9 @@ static int plda_init_interrupts(struct platform_device *pdev,
+ if (!port->event_ops)
+ port->event_ops = &plda_event_ops;
+
++ if (!port->event_irq_chip)
++ port->event_irq_chip = &plda_event_irq_chip;
++
+ ret = plda_pcie_init_irq_domains(port);
+ if (ret) {
+ dev_err(dev, "failed creating IRQ domains\n");
+@@ -1039,6 +1102,7 @@ static int mc_platform_init(struct pci_config_window *cfg)
+ return ret;
+
+ port->plda.event_ops = &mc_event_ops;
++ port->plda.event_irq_chip = &mc_event_irq_chip;
+
+ /* Address translation is up; safe to enable interrupts */
+ ret = plda_init_interrupts(pdev, &port->plda, &mc_event);
+diff --git a/drivers/pci/controller/plda/pcie-plda.h b/drivers/pci/controller/plda/pcie-plda.h
+index 9db92ccf286c..a3ce01735bea 100644
+--- a/drivers/pci/controller/plda/pcie-plda.h
++++ b/drivers/pci/controller/plda/pcie-plda.h
+@@ -107,7 +107,9 @@ enum plda_int_event {
+
+ #define PLDA_NUM_DMA_EVENTS 16
+
+-#define PLDA_MAX_INT_NUM (PLDA_NUM_DMA_EVENTS + PLDA_INT_EVENT_NUM)
++#define EVENT_PM_MSI_INT_INTX (PLDA_NUM_DMA_EVENTS + PLDA_INTX)
++#define EVENT_PM_MSI_INT_MSI (PLDA_NUM_DMA_EVENTS + PLDA_MSI)
++#define PLDA_MAX_EVENT_NUM (PLDA_NUM_DMA_EVENTS + PLDA_INT_EVENT_NUM)
+
+ /*
+ * PLDA interrupt register
+@@ -155,6 +157,7 @@ struct plda_pcie_rp {
+ raw_spinlock_t lock;
+ struct plda_msi msi;
+ const struct plda_event_ops *event_ops;
++ const struct irq_chip *event_irq_chip;
+ void __iomem *bridge_addr;
+ int num_events;
+ };
+--
+2.43.0
+
+
+From 874bc4a2048652f676823b6f728bae729f56fdfd Mon Sep 17 00:00:00 2001
+From: Minda Chen <minda.chen@starfivetech.com>
+Date: Mon, 8 Jan 2024 19:06:06 +0800
+Subject: [PATCH 16/23] PCI: microchip: Move IRQ functions to pcie-plda-host.c
+
+Move IRQ related functions to pcie-plda-host.c for re-use these codes.
+Now Refactoring codes complete.
+
+Including MSI, INTx, event interrupts and IRQ init functions.
+
+Signed-off-by: Minda Chen <minda.chen@starfivetech.com>
+Acked-by: Conor Dooley <conor.dooley@microchip.com>
+Message-ID: <20240108110612.19048-17-minda.chen@starfivetech.com>
+Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
+---
+ .../pci/controller/plda/pcie-microchip-host.c | 467 -----------------
+ drivers/pci/controller/plda/pcie-plda-host.c | 472 ++++++++++++++++++
+ drivers/pci/controller/plda/pcie-plda.h | 3 +
+ 3 files changed, 475 insertions(+), 467 deletions(-)
+
+diff --git a/drivers/pci/controller/plda/pcie-microchip-host.c b/drivers/pci/controller/plda/pcie-microchip-host.c
+index beaf5c27da84..105964306b71 100644
+--- a/drivers/pci/controller/plda/pcie-microchip-host.c
++++ b/drivers/pci/controller/plda/pcie-microchip-host.c
+@@ -318,244 +318,6 @@ static void mc_pcie_enable_msi(struct mc_pcie *port, void __iomem *ecam)
+ ecam + MC_MSI_CAP_CTRL_OFFSET + PCI_MSI_ADDRESS_HI);
+ }
+
+-static void plda_handle_msi(struct irq_desc *desc)
+-{
+- struct plda_pcie_rp *port = irq_desc_get_handler_data(desc);
+- struct irq_chip *chip = irq_desc_get_chip(desc);
+- struct device *dev = port->dev;
+- struct plda_msi *msi = &port->msi;
+- void __iomem *bridge_base_addr = port->bridge_addr;
+- unsigned long status;
+- u32 bit;
+- int ret;
+-
+- chained_irq_enter(chip, desc);
+-
+- status = readl_relaxed(bridge_base_addr + ISTATUS_LOCAL);
+- if (status & PM_MSI_INT_MSI_MASK) {
+- writel_relaxed(status & PM_MSI_INT_MSI_MASK, bridge_base_addr + ISTATUS_LOCAL);
+- status = readl_relaxed(bridge_base_addr + ISTATUS_MSI);
+- for_each_set_bit(bit, &status, msi->num_vectors) {
+- ret = generic_handle_domain_irq(msi->dev_domain, bit);
+- if (ret)
+- dev_err_ratelimited(dev, "bad MSI IRQ %d\n",
+- bit);
+- }
+- }
+-
+- chained_irq_exit(chip, desc);
+-}
+-
+-static void plda_msi_bottom_irq_ack(struct irq_data *data)
+-{
+- struct plda_pcie_rp *port = irq_data_get_irq_chip_data(data);
+- void __iomem *bridge_base_addr = port->bridge_addr;
+- u32 bitpos = data->hwirq;
+-
+- writel_relaxed(BIT(bitpos), bridge_base_addr + ISTATUS_MSI);
+-}
+-
+-static void plda_compose_msi_msg(struct irq_data *data, struct msi_msg *msg)
+-{
+- struct plda_pcie_rp *port = irq_data_get_irq_chip_data(data);
+- phys_addr_t addr = port->msi.vector_phy;
+-
+- msg->address_lo = lower_32_bits(addr);
+- msg->address_hi = upper_32_bits(addr);
+- msg->data = data->hwirq;
+-
+- dev_dbg(port->dev, "msi#%x address_hi %#x address_lo %#x\n",
+- (int)data->hwirq, msg->address_hi, msg->address_lo);
+-}
+-
+-static int plda_msi_set_affinity(struct irq_data *irq_data,
+- const struct cpumask *mask, bool force)
+-{
+- return -EINVAL;
+-}
+-
+-static struct irq_chip plda_msi_bottom_irq_chip = {
+- .name = "PLDA MSI",
+- .irq_ack = plda_msi_bottom_irq_ack,
+- .irq_compose_msi_msg = plda_compose_msi_msg,
+- .irq_set_affinity = plda_msi_set_affinity,
+-};
+-
+-static int plda_irq_msi_domain_alloc(struct irq_domain *domain,
+- unsigned int virq,
+- unsigned int nr_irqs,
+- void *args)
+-{
+- struct plda_pcie_rp *port = domain->host_data;
+- struct plda_msi *msi = &port->msi;
+- unsigned long bit;
+-
+- mutex_lock(&msi->lock);
+- bit = find_first_zero_bit(msi->used, msi->num_vectors);
+- if (bit >= msi->num_vectors) {
+- mutex_unlock(&msi->lock);
+- return -ENOSPC;
+- }
+-
+- set_bit(bit, msi->used);
+-
+- irq_domain_set_info(domain, virq, bit, &plda_msi_bottom_irq_chip,
+- domain->host_data, handle_edge_irq, NULL, NULL);
+-
+- mutex_unlock(&msi->lock);
+-
+- return 0;
+-}
+-
+-static void plda_irq_msi_domain_free(struct irq_domain *domain,
+- unsigned int virq,
+- unsigned int nr_irqs)
+-{
+- struct irq_data *d = irq_domain_get_irq_data(domain, virq);
+- struct plda_pcie_rp *port = irq_data_get_irq_chip_data(d);
+- struct plda_msi *msi = &port->msi;
+-
+- mutex_lock(&msi->lock);
+-
+- if (test_bit(d->hwirq, msi->used))
+- __clear_bit(d->hwirq, msi->used);
+- else
+- dev_err(port->dev, "trying to free unused MSI%lu\n", d->hwirq);
+-
+- mutex_unlock(&msi->lock);
+-}
+-
+-static const struct irq_domain_ops msi_domain_ops = {
+- .alloc = plda_irq_msi_domain_alloc,
+- .free = plda_irq_msi_domain_free,
+-};
+-
+-static struct irq_chip plda_msi_irq_chip = {
+- .name = "PLDA PCIe MSI",
+- .irq_ack = irq_chip_ack_parent,
+- .irq_mask = pci_msi_mask_irq,
+- .irq_unmask = pci_msi_unmask_irq,
+-};
+-
+-static struct msi_domain_info plda_msi_domain_info = {
+- .flags = (MSI_FLAG_USE_DEF_DOM_OPS | MSI_FLAG_USE_DEF_CHIP_OPS |
+- MSI_FLAG_PCI_MSIX),
+- .chip = &plda_msi_irq_chip,
+-};
+-
+-static int plda_allocate_msi_domains(struct plda_pcie_rp *port)
+-{
+- struct device *dev = port->dev;
+- struct fwnode_handle *fwnode = of_node_to_fwnode(dev->of_node);
+- struct plda_msi *msi = &port->msi;
+-
+- mutex_init(&port->msi.lock);
+-
+- msi->dev_domain = irq_domain_add_linear(NULL, msi->num_vectors,
+- &msi_domain_ops, port);
+- if (!msi->dev_domain) {
+- dev_err(dev, "failed to create IRQ domain\n");
+- return -ENOMEM;
+- }
+-
+- msi->msi_domain = pci_msi_create_irq_domain(fwnode,
+- &plda_msi_domain_info,
+- msi->dev_domain);
+- if (!msi->msi_domain) {
+- dev_err(dev, "failed to create MSI domain\n");
+- irq_domain_remove(msi->dev_domain);
+- return -ENOMEM;
+- }
+-
+- return 0;
+-}
+-
+-static void plda_handle_intx(struct irq_desc *desc)
+-{
+- struct plda_pcie_rp *port = irq_desc_get_handler_data(desc);
+- struct irq_chip *chip = irq_desc_get_chip(desc);
+- struct device *dev = port->dev;
+- void __iomem *bridge_base_addr = port->bridge_addr;
+- unsigned long status;
+- u32 bit;
+- int ret;
+-
+- chained_irq_enter(chip, desc);
+-
+- status = readl_relaxed(bridge_base_addr + ISTATUS_LOCAL);
+- if (status & PM_MSI_INT_INTX_MASK) {
+- status &= PM_MSI_INT_INTX_MASK;
+- status >>= PM_MSI_INT_INTX_SHIFT;
+- for_each_set_bit(bit, &status, PCI_NUM_INTX) {
+- ret = generic_handle_domain_irq(port->intx_domain, bit);
+- if (ret)
+- dev_err_ratelimited(dev, "bad INTx IRQ %d\n",
+- bit);
+- }
+- }
+-
+- chained_irq_exit(chip, desc);
+-}
+-
+-static void plda_ack_intx_irq(struct irq_data *data)
+-{
+- struct plda_pcie_rp *port = irq_data_get_irq_chip_data(data);
+- void __iomem *bridge_base_addr = port->bridge_addr;
+- u32 mask = BIT(data->hwirq + PM_MSI_INT_INTX_SHIFT);
+-
+- writel_relaxed(mask, bridge_base_addr + ISTATUS_LOCAL);
+-}
+-
+-static void plda_mask_intx_irq(struct irq_data *data)
+-{
+- struct plda_pcie_rp *port = irq_data_get_irq_chip_data(data);
+- void __iomem *bridge_base_addr = port->bridge_addr;
+- unsigned long flags;
+- u32 mask = BIT(data->hwirq + PM_MSI_INT_INTX_SHIFT);
+- u32 val;
+-
+- raw_spin_lock_irqsave(&port->lock, flags);
+- val = readl_relaxed(bridge_base_addr + IMASK_LOCAL);
+- val &= ~mask;
+- writel_relaxed(val, bridge_base_addr + IMASK_LOCAL);
+- raw_spin_unlock_irqrestore(&port->lock, flags);
+-}
+-
+-static void plda_unmask_intx_irq(struct irq_data *data)
+-{
+- struct plda_pcie_rp *port = irq_data_get_irq_chip_data(data);
+- void __iomem *bridge_base_addr = port->bridge_addr;
+- unsigned long flags;
+- u32 mask = BIT(data->hwirq + PM_MSI_INT_INTX_SHIFT);
+- u32 val;
+-
+- raw_spin_lock_irqsave(&port->lock, flags);
+- val = readl_relaxed(bridge_base_addr + IMASK_LOCAL);
+- val |= mask;
+- writel_relaxed(val, bridge_base_addr + IMASK_LOCAL);
+- raw_spin_unlock_irqrestore(&port->lock, flags);
+-}
+-
+-static struct irq_chip plda_intx_irq_chip = {
+- .name = "PLDA PCIe INTx",
+- .irq_ack = plda_ack_intx_irq,
+- .irq_mask = plda_mask_intx_irq,
+- .irq_unmask = plda_unmask_intx_irq,
+-};
+-
+-static int plda_pcie_intx_map(struct irq_domain *domain, unsigned int irq,
+- irq_hw_number_t hwirq)
+-{
+- irq_set_chip_and_handler(irq, &plda_intx_irq_chip, handle_level_irq);
+- irq_set_chip_data(irq, domain->host_data);
+-
+- return 0;
+-}
+-
+-static const struct irq_domain_ops intx_domain_ops = {
+- .map = plda_pcie_intx_map,
+-};
+-
+ static inline u32 reg_to_event(u32 reg, struct event_map field)
+ {
+ return (reg & field.reg_mask) ? BIT(field.event_bit) : 0;
+@@ -626,26 +388,6 @@ static u32 mc_get_events(struct plda_pcie_rp *port)
+ return events;
+ }
+
+-static u32 plda_get_events(struct plda_pcie_rp *port)
+-{
+- u32 events, val, origin;
+-
+- origin = readl_relaxed(port->bridge_addr + ISTATUS_LOCAL);
+-
+- /* MSI event and sys events */
+- val = (origin & SYS_AND_MSI_MASK) >> PM_MSI_INT_MSI_SHIFT;
+- events = val << (PM_MSI_INT_MSI_SHIFT - PCI_NUM_INTX + 1);
+-
+- /* INTx events */
+- if (origin & PM_MSI_INT_INTX_MASK)
+- events |= BIT(PM_MSI_INT_INTX_SHIFT);
+-
+- /* remains are same with register */
+- events |= origin & GENMASK(P_ATR_EVT_DOORBELL_SHIFT, 0);
+-
+- return events;
+-}
+-
+ static irqreturn_t mc_event_handler(int irq, void *dev_id)
+ {
+ struct plda_pcie_rp *port = dev_id;
+@@ -662,28 +404,6 @@ static irqreturn_t mc_event_handler(int irq, void *dev_id)
+ return IRQ_HANDLED;
+ }
+
+-static irqreturn_t plda_event_handler(int irq, void *dev_id)
+-{
+- return IRQ_HANDLED;
+-}
+-
+-static void plda_handle_event(struct irq_desc *desc)
+-{
+- struct plda_pcie_rp *port = irq_desc_get_handler_data(desc);
+- unsigned long events;
+- u32 bit;
+- struct irq_chip *chip = irq_desc_get_chip(desc);
+-
+- chained_irq_enter(chip, desc);
+-
+- events = port->event_ops->get_events(port);
+-
+- for_each_set_bit(bit, &events, port->num_events)
+- generic_handle_domain_irq(port->event_domain, bit);
+-
+- chained_irq_exit(chip, desc);
+-}
+-
+ static void mc_ack_event_irq(struct irq_data *data)
+ {
+ struct plda_pcie_rp *port = irq_data_get_irq_chip_data(data);
+@@ -770,83 +490,6 @@ static struct irq_chip mc_event_irq_chip = {
+ .irq_unmask = mc_unmask_event_irq,
+ };
+
+-static u32 plda_hwirq_to_mask(int hwirq)
+-{
+- u32 mask;
+-
+- /* hwirq 23 - 0 are the same with register */
+- if (hwirq < EVENT_PM_MSI_INT_INTX)
+- mask = BIT(hwirq);
+- else if (hwirq == EVENT_PM_MSI_INT_INTX)
+- mask = PM_MSI_INT_INTX_MASK;
+- else
+- mask = BIT(hwirq + PCI_NUM_INTX - 1);
+-
+- return mask;
+-}
+-
+-static void plda_ack_event_irq(struct irq_data *data)
+-{
+- struct plda_pcie_rp *port = irq_data_get_irq_chip_data(data);
+-
+- writel_relaxed(plda_hwirq_to_mask(data->hwirq),
+- port->bridge_addr + ISTATUS_LOCAL);
+-}
+-
+-static void plda_mask_event_irq(struct irq_data *data)
+-{
+- struct plda_pcie_rp *port = irq_data_get_irq_chip_data(data);
+- u32 mask, val;
+-
+- mask = plda_hwirq_to_mask(data->hwirq);
+-
+- raw_spin_lock(&port->lock);
+- val = readl_relaxed(port->bridge_addr + IMASK_LOCAL);
+- val &= ~mask;
+- writel_relaxed(val, port->bridge_addr + IMASK_LOCAL);
+- raw_spin_unlock(&port->lock);
+-}
+-
+-static void plda_unmask_event_irq(struct irq_data *data)
+-{
+- struct plda_pcie_rp *port = irq_data_get_irq_chip_data(data);
+- u32 mask, val;
+-
+- mask = plda_hwirq_to_mask(data->hwirq);
+-
+- raw_spin_lock(&port->lock);
+- val = readl_relaxed(port->bridge_addr + IMASK_LOCAL);
+- val |= mask;
+- writel_relaxed(val, port->bridge_addr + IMASK_LOCAL);
+- raw_spin_unlock(&port->lock);
+-}
+-
+-static struct irq_chip plda_event_irq_chip = {
+- .name = "PLDA PCIe EVENT",
+- .irq_ack = plda_ack_event_irq,
+- .irq_mask = plda_mask_event_irq,
+- .irq_unmask = plda_unmask_event_irq,
+-};
+-
+-static const struct plda_event_ops plda_event_ops = {
+- .get_events = plda_get_events,
+-};
+-
+-static int plda_pcie_event_map(struct irq_domain *domain, unsigned int irq,
+- irq_hw_number_t hwirq)
+-{
+- struct plda_pcie_rp *port = (void *)domain->host_data;
+-
+- irq_set_chip_and_handler(irq, port->event_irq_chip, handle_level_irq);
+- irq_set_chip_data(irq, domain->host_data);
+-
+- return 0;
+-}
+-
+-static const struct irq_domain_ops plda_event_domain_ops = {
+- .map = plda_pcie_event_map,
+-};
+-
+ static inline void mc_pcie_deinit_clk(void *data)
+ {
+ struct clk *clk = data;
+@@ -909,47 +552,6 @@ static const struct plda_event mc_event = {
+ .msi_event = EVENT_LOCAL_PM_MSI_INT_MSI,
+ };
+
+-static int plda_pcie_init_irq_domains(struct plda_pcie_rp *port)
+-{
+- struct device *dev = port->dev;
+- struct device_node *node = dev->of_node;
+- struct device_node *pcie_intc_node;
+-
+- /* Setup INTx */
+- pcie_intc_node = of_get_next_child(node, NULL);
+- if (!pcie_intc_node) {
+- dev_err(dev, "failed to find PCIe Intc node\n");
+- return -EINVAL;
+- }
+-
+- port->event_domain = irq_domain_add_linear(pcie_intc_node,
+- port->num_events,
+- &plda_event_domain_ops,
+- port);
+- if (!port->event_domain) {
+- dev_err(dev, "failed to get event domain\n");
+- of_node_put(pcie_intc_node);
+- return -ENOMEM;
+- }
+-
+- irq_domain_update_bus_token(port->event_domain, DOMAIN_BUS_NEXUS);
+-
+- port->intx_domain = irq_domain_add_linear(pcie_intc_node, PCI_NUM_INTX,
+- &intx_domain_ops, port);
+- if (!port->intx_domain) {
+- dev_err(dev, "failed to get an INTx IRQ domain\n");
+- of_node_put(pcie_intc_node);
+- return -ENOMEM;
+- }
+-
+- irq_domain_update_bus_token(port->intx_domain, DOMAIN_BUS_WIRED);
+-
+- of_node_put(pcie_intc_node);
+- raw_spin_lock_init(&port->lock);
+-
+- return plda_allocate_msi_domains(port);
+-}
+-
+ static inline void mc_clear_secs(struct mc_pcie *port)
+ {
+ void __iomem *ctrl_base_addr = port->axi_base_addr + MC_PCIE_CTRL_ADDR;
+@@ -1010,75 +612,6 @@ static void mc_disable_interrupts(struct mc_pcie *port)
+ writel_relaxed(GENMASK(31, 0), bridge_base_addr + ISTATUS_HOST);
+ }
+
+-static int plda_init_interrupts(struct platform_device *pdev,
+- struct plda_pcie_rp *port,
+- const struct plda_event *event)
+-{
+- struct device *dev = &pdev->dev;
+- int irq;
+- int i, intx_irq, msi_irq, event_irq;
+- int ret;
+-
+- if (!port->event_ops)
+- port->event_ops = &plda_event_ops;
+-
+- if (!port->event_irq_chip)
+- port->event_irq_chip = &plda_event_irq_chip;
+-
+- ret = plda_pcie_init_irq_domains(port);
+- if (ret) {
+- dev_err(dev, "failed creating IRQ domains\n");
+- return ret;
+- }
+-
+- irq = platform_get_irq(pdev, 0);
+- if (irq < 0)
+- return -ENODEV;
+-
+- for (i = 0; i < port->num_events; i++) {
+- event_irq = irq_create_mapping(port->event_domain, i);
+- if (!event_irq) {
+- dev_err(dev, "failed to map hwirq %d\n", i);
+- return -ENXIO;
+- }
+-
+- if (event->request_event_irq)
+- ret = event->request_event_irq(port, event_irq, i);
+- else
+- ret = devm_request_irq(dev, event_irq,
+- plda_event_handler,
+- 0, NULL, port);
+-
+- if (ret) {
+- dev_err(dev, "failed to request IRQ %d\n", event_irq);
+- return ret;
+- }
+- }
+-
+- intx_irq = irq_create_mapping(port->event_domain,
+- event->intx_event);
+- if (!intx_irq) {
+- dev_err(dev, "failed to map INTx interrupt\n");
+- return -ENXIO;
+- }
+-
+- /* Plug the INTx chained handler */
+- irq_set_chained_handler_and_data(intx_irq, plda_handle_intx, port);
+-
+- msi_irq = irq_create_mapping(port->event_domain,
+- event->msi_event);
+- if (!msi_irq)
+- return -ENXIO;
+-
+- /* Plug the MSI chained handler */
+- irq_set_chained_handler_and_data(msi_irq, plda_handle_msi, port);
+-
+- /* Plug the main event chained handler */
+- irq_set_chained_handler_and_data(irq, plda_handle_event, port);
+-
+- return 0;
+-}
+-
+ static int mc_platform_init(struct pci_config_window *cfg)
+ {
+ struct device *dev = cfg->parent;
+diff --git a/drivers/pci/controller/plda/pcie-plda-host.c b/drivers/pci/controller/plda/pcie-plda-host.c
+index 40139d998568..98c51e594efe 100644
+--- a/drivers/pci/controller/plda/pcie-plda-host.c
++++ b/drivers/pci/controller/plda/pcie-plda-host.c
+@@ -7,11 +7,483 @@
+ * Author: Daire McNamara <daire.mcnamara@microchip.com>
+ */
+
++#include <linux/irqchip/chained_irq.h>
++#include <linux/irqdomain.h>
++#include <linux/msi.h>
+ #include <linux/pci_regs.h>
+ #include <linux/pci-ecam.h>
+
+ #include "pcie-plda.h"
+
++static void plda_handle_msi(struct irq_desc *desc)
++{
++ struct plda_pcie_rp *port = irq_desc_get_handler_data(desc);
++ struct irq_chip *chip = irq_desc_get_chip(desc);
++ struct device *dev = port->dev;
++ struct plda_msi *msi = &port->msi;
++ void __iomem *bridge_base_addr = port->bridge_addr;
++ unsigned long status;
++ u32 bit;
++ int ret;
++
++ chained_irq_enter(chip, desc);
++
++ status = readl_relaxed(bridge_base_addr + ISTATUS_LOCAL);
++ if (status & PM_MSI_INT_MSI_MASK) {
++ writel_relaxed(status & PM_MSI_INT_MSI_MASK,
++ bridge_base_addr + ISTATUS_LOCAL);
++ status = readl_relaxed(bridge_base_addr + ISTATUS_MSI);
++ for_each_set_bit(bit, &status, msi->num_vectors) {
++ ret = generic_handle_domain_irq(msi->dev_domain, bit);
++ if (ret)
++ dev_err_ratelimited(dev, "bad MSI IRQ %d\n",
++ bit);
++ }
++ }
++
++ chained_irq_exit(chip, desc);
++}
++
++static void plda_msi_bottom_irq_ack(struct irq_data *data)
++{
++ struct plda_pcie_rp *port = irq_data_get_irq_chip_data(data);
++ void __iomem *bridge_base_addr = port->bridge_addr;
++ u32 bitpos = data->hwirq;
++
++ writel_relaxed(BIT(bitpos), bridge_base_addr + ISTATUS_MSI);
++}
++
++static void plda_compose_msi_msg(struct irq_data *data, struct msi_msg *msg)
++{
++ struct plda_pcie_rp *port = irq_data_get_irq_chip_data(data);
++ phys_addr_t addr = port->msi.vector_phy;
++
++ msg->address_lo = lower_32_bits(addr);
++ msg->address_hi = upper_32_bits(addr);
++ msg->data = data->hwirq;
++
++ dev_dbg(port->dev, "msi#%x address_hi %#x address_lo %#x\n",
++ (int)data->hwirq, msg->address_hi, msg->address_lo);
++}
++
++static int plda_msi_set_affinity(struct irq_data *irq_data,
++ const struct cpumask *mask, bool force)
++{
++ return -EINVAL;
++}
++
++static struct irq_chip plda_msi_bottom_irq_chip = {
++ .name = "PLDA MSI",
++ .irq_ack = plda_msi_bottom_irq_ack,
++ .irq_compose_msi_msg = plda_compose_msi_msg,
++ .irq_set_affinity = plda_msi_set_affinity,
++};
++
++static int plda_irq_msi_domain_alloc(struct irq_domain *domain,
++ unsigned int virq,
++ unsigned int nr_irqs,
++ void *args)
++{
++ struct plda_pcie_rp *port = domain->host_data;
++ struct plda_msi *msi = &port->msi;
++ unsigned long bit;
++
++ mutex_lock(&msi->lock);
++ bit = find_first_zero_bit(msi->used, msi->num_vectors);
++ if (bit >= msi->num_vectors) {
++ mutex_unlock(&msi->lock);
++ return -ENOSPC;
++ }
++
++ set_bit(bit, msi->used);
++
++ irq_domain_set_info(domain, virq, bit, &plda_msi_bottom_irq_chip,
++ domain->host_data, handle_edge_irq, NULL, NULL);
++
++ mutex_unlock(&msi->lock);
++
++ return 0;
++}
++
++static void plda_irq_msi_domain_free(struct irq_domain *domain,
++ unsigned int virq,
++ unsigned int nr_irqs)
++{
++ struct irq_data *d = irq_domain_get_irq_data(domain, virq);
++ struct plda_pcie_rp *port = irq_data_get_irq_chip_data(d);
++ struct plda_msi *msi = &port->msi;
++
++ mutex_lock(&msi->lock);
++
++ if (test_bit(d->hwirq, msi->used))
++ __clear_bit(d->hwirq, msi->used);
++ else
++ dev_err(port->dev, "trying to free unused MSI%lu\n", d->hwirq);
++
++ mutex_unlock(&msi->lock);
++}
++
++static const struct irq_domain_ops msi_domain_ops = {
++ .alloc = plda_irq_msi_domain_alloc,
++ .free = plda_irq_msi_domain_free,
++};
++
++static struct irq_chip plda_msi_irq_chip = {
++ .name = "PLDA PCIe MSI",
++ .irq_ack = irq_chip_ack_parent,
++ .irq_mask = pci_msi_mask_irq,
++ .irq_unmask = pci_msi_unmask_irq,
++};
++
++static struct msi_domain_info plda_msi_domain_info = {
++ .flags = (MSI_FLAG_USE_DEF_DOM_OPS | MSI_FLAG_USE_DEF_CHIP_OPS |
++ MSI_FLAG_PCI_MSIX),
++ .chip = &plda_msi_irq_chip,
++};
++
++static int plda_allocate_msi_domains(struct plda_pcie_rp *port)
++{
++ struct device *dev = port->dev;
++ struct fwnode_handle *fwnode = of_node_to_fwnode(dev->of_node);
++ struct plda_msi *msi = &port->msi;
++
++ mutex_init(&port->msi.lock);
++
++ msi->dev_domain = irq_domain_add_linear(NULL, msi->num_vectors,
++ &msi_domain_ops, port);
++ if (!msi->dev_domain) {
++ dev_err(dev, "failed to create IRQ domain\n");
++ return -ENOMEM;
++ }
++
++ msi->msi_domain = pci_msi_create_irq_domain(fwnode,
++ &plda_msi_domain_info,
++ msi->dev_domain);
++ if (!msi->msi_domain) {
++ dev_err(dev, "failed to create MSI domain\n");
++ irq_domain_remove(msi->dev_domain);
++ return -ENOMEM;
++ }
++
++ return 0;
++}
++
++static void plda_handle_intx(struct irq_desc *desc)
++{
++ struct plda_pcie_rp *port = irq_desc_get_handler_data(desc);
++ struct irq_chip *chip = irq_desc_get_chip(desc);
++ struct device *dev = port->dev;
++ void __iomem *bridge_base_addr = port->bridge_addr;
++ unsigned long status;
++ u32 bit;
++ int ret;
++
++ chained_irq_enter(chip, desc);
++
++ status = readl_relaxed(bridge_base_addr + ISTATUS_LOCAL);
++ if (status & PM_MSI_INT_INTX_MASK) {
++ status &= PM_MSI_INT_INTX_MASK;
++ status >>= PM_MSI_INT_INTX_SHIFT;
++ for_each_set_bit(bit, &status, PCI_NUM_INTX) {
++ ret = generic_handle_domain_irq(port->intx_domain, bit);
++ if (ret)
++ dev_err_ratelimited(dev, "bad INTx IRQ %d\n",
++ bit);
++ }
++ }
++
++ chained_irq_exit(chip, desc);
++}
++
++static void plda_ack_intx_irq(struct irq_data *data)
++{
++ struct plda_pcie_rp *port = irq_data_get_irq_chip_data(data);
++ void __iomem *bridge_base_addr = port->bridge_addr;
++ u32 mask = BIT(data->hwirq + PM_MSI_INT_INTX_SHIFT);
++
++ writel_relaxed(mask, bridge_base_addr + ISTATUS_LOCAL);
++}
++
++static void plda_mask_intx_irq(struct irq_data *data)
++{
++ struct plda_pcie_rp *port = irq_data_get_irq_chip_data(data);
++ void __iomem *bridge_base_addr = port->bridge_addr;
++ unsigned long flags;
++ u32 mask = BIT(data->hwirq + PM_MSI_INT_INTX_SHIFT);
++ u32 val;
++
++ raw_spin_lock_irqsave(&port->lock, flags);
++ val = readl_relaxed(bridge_base_addr + IMASK_LOCAL);
++ val &= ~mask;
++ writel_relaxed(val, bridge_base_addr + IMASK_LOCAL);
++ raw_spin_unlock_irqrestore(&port->lock, flags);
++}
++
++static void plda_unmask_intx_irq(struct irq_data *data)
++{
++ struct plda_pcie_rp *port = irq_data_get_irq_chip_data(data);
++ void __iomem *bridge_base_addr = port->bridge_addr;
++ unsigned long flags;
++ u32 mask = BIT(data->hwirq + PM_MSI_INT_INTX_SHIFT);
++ u32 val;
++
++ raw_spin_lock_irqsave(&port->lock, flags);
++ val = readl_relaxed(bridge_base_addr + IMASK_LOCAL);
++ val |= mask;
++ writel_relaxed(val, bridge_base_addr + IMASK_LOCAL);
++ raw_spin_unlock_irqrestore(&port->lock, flags);
++}
++
++static struct irq_chip plda_intx_irq_chip = {
++ .name = "PLDA PCIe INTx",
++ .irq_ack = plda_ack_intx_irq,
++ .irq_mask = plda_mask_intx_irq,
++ .irq_unmask = plda_unmask_intx_irq,
++};
++
++static int plda_pcie_intx_map(struct irq_domain *domain, unsigned int irq,
++ irq_hw_number_t hwirq)
++{
++ irq_set_chip_and_handler(irq, &plda_intx_irq_chip, handle_level_irq);
++ irq_set_chip_data(irq, domain->host_data);
++
++ return 0;
++}
++
++static const struct irq_domain_ops intx_domain_ops = {
++ .map = plda_pcie_intx_map,
++};
++
++static u32 plda_get_events(struct plda_pcie_rp *port)
++{
++ u32 events, val, origin;
++
++ origin = readl_relaxed(port->bridge_addr + ISTATUS_LOCAL);
++
++ /* MSI event and sys events */
++ val = (origin & SYS_AND_MSI_MASK) >> PM_MSI_INT_MSI_SHIFT;
++ events = val << (PM_MSI_INT_MSI_SHIFT - PCI_NUM_INTX + 1);
++
++ /* INTx events */
++ if (origin & PM_MSI_INT_INTX_MASK)
++ events |= BIT(PM_MSI_INT_INTX_SHIFT);
++
++ /* remains are same with register */
++ events |= origin & GENMASK(P_ATR_EVT_DOORBELL_SHIFT, 0);
++
++ return events;
++}
++
++static irqreturn_t plda_event_handler(int irq, void *dev_id)
++{
++ return IRQ_HANDLED;
++}
++
++static void plda_handle_event(struct irq_desc *desc)
++{
++ struct plda_pcie_rp *port = irq_desc_get_handler_data(desc);
++ unsigned long events;
++ u32 bit;
++ struct irq_chip *chip = irq_desc_get_chip(desc);
++
++ chained_irq_enter(chip, desc);
++
++ events = port->event_ops->get_events(port);
++
++ for_each_set_bit(bit, &events, port->num_events)
++ generic_handle_domain_irq(port->event_domain, bit);
++
++ chained_irq_exit(chip, desc);
++}
++
++static u32 plda_hwirq_to_mask(int hwirq)
++{
++ u32 mask;
++
++ /* hwirq 23 - 0 are the same with register */
++ if (hwirq < EVENT_PM_MSI_INT_INTX)
++ mask = BIT(hwirq);
++ else if (hwirq == EVENT_PM_MSI_INT_INTX)
++ mask = PM_MSI_INT_INTX_MASK;
++ else
++ mask = BIT(hwirq + PCI_NUM_INTX - 1);
++
++ return mask;
++}
++
++static void plda_ack_event_irq(struct irq_data *data)
++{
++ struct plda_pcie_rp *port = irq_data_get_irq_chip_data(data);
++
++ writel_relaxed(plda_hwirq_to_mask(data->hwirq),
++ port->bridge_addr + ISTATUS_LOCAL);
++}
++
++static void plda_mask_event_irq(struct irq_data *data)
++{
++ struct plda_pcie_rp *port = irq_data_get_irq_chip_data(data);
++ u32 mask, val;
++
++ mask = plda_hwirq_to_mask(data->hwirq);
++
++ raw_spin_lock(&port->lock);
++ val = readl_relaxed(port->bridge_addr + IMASK_LOCAL);
++ val &= ~mask;
++ writel_relaxed(val, port->bridge_addr + IMASK_LOCAL);
++ raw_spin_unlock(&port->lock);
++}
++
++static void plda_unmask_event_irq(struct irq_data *data)
++{
++ struct plda_pcie_rp *port = irq_data_get_irq_chip_data(data);
++ u32 mask, val;
++
++ mask = plda_hwirq_to_mask(data->hwirq);
++
++ raw_spin_lock(&port->lock);
++ val = readl_relaxed(port->bridge_addr + IMASK_LOCAL);
++ val |= mask;
++ writel_relaxed(val, port->bridge_addr + IMASK_LOCAL);
++ raw_spin_unlock(&port->lock);
++}
++
++static struct irq_chip plda_event_irq_chip = {
++ .name = "PLDA PCIe EVENT",
++ .irq_ack = plda_ack_event_irq,
++ .irq_mask = plda_mask_event_irq,
++ .irq_unmask = plda_unmask_event_irq,
++};
++
++static const struct plda_event_ops plda_event_ops = {
++ .get_events = plda_get_events,
++};
++
++static int plda_pcie_event_map(struct irq_domain *domain, unsigned int irq,
++ irq_hw_number_t hwirq)
++{
++ struct plda_pcie_rp *port = (void *)domain->host_data;
++
++ irq_set_chip_and_handler(irq, port->event_irq_chip, handle_level_irq);
++ irq_set_chip_data(irq, domain->host_data);
++
++ return 0;
++}
++
++static const struct irq_domain_ops plda_event_domain_ops = {
++ .map = plda_pcie_event_map,
++};
++
++static int plda_pcie_init_irq_domains(struct plda_pcie_rp *port)
++{
++ struct device *dev = port->dev;
++ struct device_node *node = dev->of_node;
++ struct device_node *pcie_intc_node;
++
++ /* Setup INTx */
++ pcie_intc_node = of_get_next_child(node, NULL);
++ if (!pcie_intc_node) {
++ dev_err(dev, "failed to find PCIe Intc node\n");
++ return -EINVAL;
++ }
++
++ port->event_domain = irq_domain_add_linear(pcie_intc_node,
++ port->num_events,
++ &plda_event_domain_ops,
++ port);
++ if (!port->event_domain) {
++ dev_err(dev, "failed to get event domain\n");
++ of_node_put(pcie_intc_node);
++ return -ENOMEM;
++ }
++
++ irq_domain_update_bus_token(port->event_domain, DOMAIN_BUS_NEXUS);
++
++ port->intx_domain = irq_domain_add_linear(pcie_intc_node, PCI_NUM_INTX,
++ &intx_domain_ops, port);
++ if (!port->intx_domain) {
++ dev_err(dev, "failed to get an INTx IRQ domain\n");
++ of_node_put(pcie_intc_node);
++ return -ENOMEM;
++ }
++
++ irq_domain_update_bus_token(port->intx_domain, DOMAIN_BUS_WIRED);
++
++ of_node_put(pcie_intc_node);
++ raw_spin_lock_init(&port->lock);
++
++ return plda_allocate_msi_domains(port);
++}
++
++int plda_init_interrupts(struct platform_device *pdev,
++ struct plda_pcie_rp *port,
++ const struct plda_event *event)
++{
++ struct device *dev = &pdev->dev;
++ int irq;
++ int i, intx_irq, msi_irq, event_irq;
++ int ret;
++
++ if (!port->event_ops)
++ port->event_ops = &plda_event_ops;
++
++ if (!port->event_irq_chip)
++ port->event_irq_chip = &plda_event_irq_chip;
++
++ ret = plda_pcie_init_irq_domains(port);
++ if (ret) {
++ dev_err(dev, "failed creating IRQ domains\n");
++ return ret;
++ }
++
++ irq = platform_get_irq(pdev, 0);
++ if (irq < 0)
++ return -ENODEV;
++
++ for (i = 0; i < port->num_events; i++) {
++ event_irq = irq_create_mapping(port->event_domain, i);
++ if (!event_irq) {
++ dev_err(dev, "failed to map hwirq %d\n", i);
++ return -ENXIO;
++ }
++
++ if (event->request_event_irq)
++ ret = event->request_event_irq(port, event_irq, i);
++ else
++ ret = devm_request_irq(dev, event_irq,
++ plda_event_handler,
++ 0, NULL, port);
++
++ if (ret) {
++ dev_err(dev, "failed to request IRQ %d\n", event_irq);
++ return ret;
++ }
++ }
++
++ intx_irq = irq_create_mapping(port->event_domain,
++ event->intx_event);
++ if (!intx_irq) {
++ dev_err(dev, "failed to map INTx interrupt\n");
++ return -ENXIO;
++ }
++
++ /* Plug the INTx chained handler */
++ irq_set_chained_handler_and_data(intx_irq, plda_handle_intx, port);
++
++ msi_irq = irq_create_mapping(port->event_domain,
++ event->msi_event);
++ if (!msi_irq)
++ return -ENXIO;
++
++ /* Plug the MSI chained handler */
++ irq_set_chained_handler_and_data(msi_irq, plda_handle_msi, port);
++
++ /* Plug the main event chained handler */
++ irq_set_chained_handler_and_data(irq, plda_handle_event, port);
++
++ return 0;
++}
++EXPORT_SYMBOL_GPL(plda_init_interrupts);
++
+ void plda_pcie_setup_window(void __iomem *bridge_base_addr, u32 index,
+ phys_addr_t axi_addr, phys_addr_t pci_addr,
+ size_t size)
+diff --git a/drivers/pci/controller/plda/pcie-plda.h b/drivers/pci/controller/plda/pcie-plda.h
+index a3ce01735bea..6672a231a4bc 100644
+--- a/drivers/pci/controller/plda/pcie-plda.h
++++ b/drivers/pci/controller/plda/pcie-plda.h
+@@ -169,6 +169,9 @@ struct plda_event {
+ int msi_event;
+ };
+
++int plda_init_interrupts(struct platform_device *pdev,
++ struct plda_pcie_rp *port,
++ const struct plda_event *event);
+ void plda_pcie_setup_window(void __iomem *bridge_base_addr, u32 index,
+ phys_addr_t axi_addr, phys_addr_t pci_addr,
+ size_t size);
+--
+2.43.0
+
+
+From 3ed458f3854d5e86cd34ee9e3d87a8b3c2287913 Mon Sep 17 00:00:00 2001
+From: Minda Chen <minda.chen@starfivetech.com>
+Date: Mon, 8 Jan 2024 19:06:07 +0800
+Subject: [PATCH 17/23] pci: plda: Add event bitmap field to struct
+ plda_pcie_rp
+
+For PLDA DMA interrupts are not all implemented. The non-implemented
+interrupts should be masked. So add a bitmap field to mask the non-
+implemented interrupts.
+
+Signed-off-by: Minda Chen <minda.chen@starfivetech.com>
+Message-ID: <20240108110612.19048-18-minda.chen@starfivetech.com>
+Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
+---
+ drivers/pci/controller/plda/pcie-microchip-host.c | 1 +
+ drivers/pci/controller/plda/pcie-plda-host.c | 6 ++++--
+ drivers/pci/controller/plda/pcie-plda.h | 1 +
+ 3 files changed, 6 insertions(+), 2 deletions(-)
+
+diff --git a/drivers/pci/controller/plda/pcie-microchip-host.c b/drivers/pci/controller/plda/pcie-microchip-host.c
+index 105964306b71..48f60a04b740 100644
+--- a/drivers/pci/controller/plda/pcie-microchip-host.c
++++ b/drivers/pci/controller/plda/pcie-microchip-host.c
+@@ -636,6 +636,7 @@ static int mc_platform_init(struct pci_config_window *cfg)
+
+ port->plda.event_ops = &mc_event_ops;
+ port->plda.event_irq_chip = &mc_event_irq_chip;
++ port->plda.events_bitmap = GENMASK(NUM_EVENTS - 1, 0);
+
+ /* Address translation is up; safe to enable interrupts */
+ ret = plda_init_interrupts(pdev, &port->plda, &mc_event);
+diff --git a/drivers/pci/controller/plda/pcie-plda-host.c b/drivers/pci/controller/plda/pcie-plda-host.c
+index 98c51e594efe..a040e7e5492f 100644
+--- a/drivers/pci/controller/plda/pcie-plda-host.c
++++ b/drivers/pci/controller/plda/pcie-plda-host.c
+@@ -290,6 +290,7 @@ static void plda_handle_event(struct irq_desc *desc)
+
+ events = port->event_ops->get_events(port);
+
++ events &= port->events_bitmap;
+ for_each_set_bit(bit, &events, port->num_events)
+ generic_handle_domain_irq(port->event_domain, bit);
+
+@@ -420,8 +421,9 @@ int plda_init_interrupts(struct platform_device *pdev,
+ {
+ struct device *dev = &pdev->dev;
+ int irq;
+- int i, intx_irq, msi_irq, event_irq;
++ int intx_irq, msi_irq, event_irq;
+ int ret;
++ u32 i;
+
+ if (!port->event_ops)
+ port->event_ops = &plda_event_ops;
+@@ -439,7 +441,7 @@ int plda_init_interrupts(struct platform_device *pdev,
+ if (irq < 0)
+ return -ENODEV;
+
+- for (i = 0; i < port->num_events; i++) {
++ for_each_set_bit(i, &port->events_bitmap, port->num_events) {
+ event_irq = irq_create_mapping(port->event_domain, i);
+ if (!event_irq) {
+ dev_err(dev, "failed to map hwirq %d\n", i);
+diff --git a/drivers/pci/controller/plda/pcie-plda.h b/drivers/pci/controller/plda/pcie-plda.h
+index 6672a231a4bc..443109d04d59 100644
+--- a/drivers/pci/controller/plda/pcie-plda.h
++++ b/drivers/pci/controller/plda/pcie-plda.h
+@@ -159,6 +159,7 @@ struct plda_pcie_rp {
+ const struct plda_event_ops *event_ops;
+ const struct irq_chip *event_irq_chip;
+ void __iomem *bridge_addr;
++ unsigned long events_bitmap;
+ int num_events;
+ };
+
+--
+2.43.0
+
+
+From 45f29fdd79438d1efe3924e796be927c79822fe5 Mon Sep 17 00:00:00 2001
+From: Minda Chen <minda.chen@starfivetech.com>
+Date: Mon, 8 Jan 2024 19:06:08 +0800
+Subject: [PATCH 18/23] PCI: plda: Add host init/deinit and map bus functions
+
+Add PLDA host plda_pcie_host_init()/plda_pcie_host_deinit() and map bus
+function. So vendor can use it to init PLDA PCIe host core.
+
+Signed-off-by: Minda Chen <minda.chen@starfivetech.com>
+Reviewed-by: Mason Huo <mason.huo@starfivetech.com>
+Message-ID: <20240108110612.19048-19-minda.chen@starfivetech.com>
+Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
+---
+ drivers/pci/controller/plda/pcie-plda-host.c | 131 +++++++++++++++++--
+ drivers/pci/controller/plda/pcie-plda.h | 22 ++++
+ 2 files changed, 139 insertions(+), 14 deletions(-)
+
+diff --git a/drivers/pci/controller/plda/pcie-plda-host.c b/drivers/pci/controller/plda/pcie-plda-host.c
+index a040e7e5492f..a18923d7cea6 100644
+--- a/drivers/pci/controller/plda/pcie-plda-host.c
++++ b/drivers/pci/controller/plda/pcie-plda-host.c
+@@ -3,6 +3,7 @@
+ * PLDA PCIe XpressRich host controller driver
+ *
+ * Copyright (C) 2023 Microchip Co. Ltd
++ * StarFive Co. Ltd
+ *
+ * Author: Daire McNamara <daire.mcnamara@microchip.com>
+ */
+@@ -15,6 +16,15 @@
+
+ #include "pcie-plda.h"
+
++void __iomem *plda_pcie_map_bus(struct pci_bus *bus, unsigned int devfn,
++ int where)
++{
++ struct plda_pcie_rp *pcie = bus->sysdata;
++
++ return pcie->config_base + PCIE_ECAM_OFFSET(bus->number, devfn, where);
++}
++EXPORT_SYMBOL_GPL(plda_pcie_map_bus);
++
+ static void plda_handle_msi(struct irq_desc *desc)
+ {
+ struct plda_pcie_rp *port = irq_desc_get_handler_data(desc);
+@@ -420,9 +430,7 @@ int plda_init_interrupts(struct platform_device *pdev,
+ const struct plda_event *event)
+ {
+ struct device *dev = &pdev->dev;
+- int irq;
+- int intx_irq, msi_irq, event_irq;
+- int ret;
++ int event_irq, ret;
+ u32 i;
+
+ if (!port->event_ops)
+@@ -437,8 +445,8 @@ int plda_init_interrupts(struct platform_device *pdev,
+ return ret;
+ }
+
+- irq = platform_get_irq(pdev, 0);
+- if (irq < 0)
++ port->irq = platform_get_irq(pdev, 0);
++ if (port->irq < 0)
+ return -ENODEV;
+
+ for_each_set_bit(i, &port->events_bitmap, port->num_events) {
+@@ -461,26 +469,26 @@ int plda_init_interrupts(struct platform_device *pdev,
+ }
+ }
+
+- intx_irq = irq_create_mapping(port->event_domain,
+- event->intx_event);
+- if (!intx_irq) {
++ port->intx_irq = irq_create_mapping(port->event_domain,
++ event->intx_event);
++ if (!port->intx_irq) {
+ dev_err(dev, "failed to map INTx interrupt\n");
+ return -ENXIO;
+ }
+
+ /* Plug the INTx chained handler */
+- irq_set_chained_handler_and_data(intx_irq, plda_handle_intx, port);
++ irq_set_chained_handler_and_data(port->intx_irq, plda_handle_intx, port);
+
+- msi_irq = irq_create_mapping(port->event_domain,
+- event->msi_event);
+- if (!msi_irq)
++ port->msi_irq = irq_create_mapping(port->event_domain,
++ event->msi_event);
++ if (!port->msi_irq)
+ return -ENXIO;
+
+ /* Plug the MSI chained handler */
+- irq_set_chained_handler_and_data(msi_irq, plda_handle_msi, port);
++ irq_set_chained_handler_and_data(port->msi_irq, plda_handle_msi, port);
+
+ /* Plug the main event chained handler */
+- irq_set_chained_handler_and_data(irq, plda_handle_event, port);
++ irq_set_chained_handler_and_data(port->irq, plda_handle_event, port);
+
+ return 0;
+ }
+@@ -546,3 +554,98 @@ int plda_pcie_setup_iomems(struct pci_host_bridge *bridge,
+ return 0;
+ }
+ EXPORT_SYMBOL_GPL(plda_pcie_setup_iomems);
++
++static void plda_pcie_irq_domain_deinit(struct plda_pcie_rp *pcie)
++{
++ irq_set_chained_handler_and_data(pcie->irq, NULL, NULL);
++ irq_set_chained_handler_and_data(pcie->msi_irq, NULL, NULL);
++ irq_set_chained_handler_and_data(pcie->intx_irq, NULL, NULL);
++
++ irq_domain_remove(pcie->msi.msi_domain);
++ irq_domain_remove(pcie->msi.dev_domain);
++
++ irq_domain_remove(pcie->intx_domain);
++ irq_domain_remove(pcie->event_domain);
++}
++
++int plda_pcie_host_init(struct plda_pcie_rp *port, struct pci_ops *ops,
++ const struct plda_event *plda_event)
++{
++ struct device *dev = port->dev;
++ struct pci_host_bridge *bridge;
++ struct platform_device *pdev = to_platform_device(dev);
++ struct resource *cfg_res;
++ int ret;
++
++ pdev = to_platform_device(dev);
++
++ port->bridge_addr =
++ devm_platform_ioremap_resource_byname(pdev, "apb");
++
++ if (IS_ERR(port->bridge_addr))
++ return dev_err_probe(dev, PTR_ERR(port->bridge_addr),
++ "failed to map reg memory\n");
++
++ cfg_res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "cfg");
++ if (!cfg_res)
++ return dev_err_probe(dev, -ENODEV,
++ "failed to get config memory\n");
++
++ port->config_base = devm_ioremap_resource(dev, cfg_res);
++ if (IS_ERR(port->config_base))
++ return dev_err_probe(dev, PTR_ERR(port->config_base),
++ "failed to map config memory\n");
++
++ bridge = devm_pci_alloc_host_bridge(dev, 0);
++ if (!bridge)
++ return dev_err_probe(dev, -ENOMEM,
++ "failed to alloc bridge\n");
++
++ if (port->host_ops && port->host_ops->host_init) {
++ ret = port->host_ops->host_init(port);
++ if (ret)
++ return ret;
++ }
++
++ port->bridge = bridge;
++ plda_pcie_setup_window(port->bridge_addr, 0, cfg_res->start, 0,
++ resource_size(cfg_res));
++ plda_pcie_setup_iomems(bridge, port);
++ plda_set_default_msi(&port->msi);
++ ret = plda_init_interrupts(pdev, port, plda_event);
++ if (ret)
++ goto err_host;
++
++ /* Set default bus ops */
++ bridge->ops = ops;
++ bridge->sysdata = port;
++
++ ret = pci_host_probe(bridge);
++ if (ret < 0) {
++ dev_err_probe(dev, ret, "failed to probe pci host\n");
++ goto err_probe;
++ }
++
++ return ret;
++
++err_probe:
++ plda_pcie_irq_domain_deinit(port);
++err_host:
++ if (port->host_ops && port->host_ops->host_deinit)
++ port->host_ops->host_deinit(port);
++
++ return ret;
++}
++EXPORT_SYMBOL_GPL(plda_pcie_host_init);
++
++void plda_pcie_host_deinit(struct plda_pcie_rp *port)
++{
++ pci_stop_root_bus(port->bridge->bus);
++ pci_remove_root_bus(port->bridge->bus);
++
++ plda_pcie_irq_domain_deinit(port);
++
++ if (port->host_ops && port->host_ops->host_deinit)
++ port->host_ops->host_deinit(port);
++}
++EXPORT_SYMBOL_GPL(plda_pcie_host_deinit);
+diff --git a/drivers/pci/controller/plda/pcie-plda.h b/drivers/pci/controller/plda/pcie-plda.h
+index 443109d04d59..7b69891700a4 100644
+--- a/drivers/pci/controller/plda/pcie-plda.h
++++ b/drivers/pci/controller/plda/pcie-plda.h
+@@ -141,6 +141,11 @@ struct plda_event_ops {
+ u32 (*get_events)(struct plda_pcie_rp *pcie);
+ };
+
++struct plda_pcie_host_ops {
++ int (*host_init)(struct plda_pcie_rp *pcie);
++ void (*host_deinit)(struct plda_pcie_rp *pcie);
++};
++
+ struct plda_msi {
+ struct mutex lock; /* Protect used bitmap */
+ struct irq_domain *msi_domain;
+@@ -152,14 +157,20 @@ struct plda_msi {
+
+ struct plda_pcie_rp {
+ struct device *dev;
++ struct pci_host_bridge *bridge;
+ struct irq_domain *intx_domain;
+ struct irq_domain *event_domain;
+ raw_spinlock_t lock;
+ struct plda_msi msi;
+ const struct plda_event_ops *event_ops;
+ const struct irq_chip *event_irq_chip;
++ const struct plda_pcie_host_ops *host_ops;
+ void __iomem *bridge_addr;
++ void __iomem *config_base;
+ unsigned long events_bitmap;
++ int irq;
++ int msi_irq;
++ int intx_irq;
+ int num_events;
+ };
+
+@@ -170,6 +181,8 @@ struct plda_event {
+ int msi_event;
+ };
+
++void __iomem *plda_pcie_map_bus(struct pci_bus *bus, unsigned int devfn,
++ int where);
+ int plda_init_interrupts(struct platform_device *pdev,
+ struct plda_pcie_rp *port,
+ const struct plda_event *event);
+@@ -178,4 +191,13 @@ void plda_pcie_setup_window(void __iomem *bridge_base_addr, u32 index,
+ size_t size);
+ int plda_pcie_setup_iomems(struct pci_host_bridge *bridge,
+ struct plda_pcie_rp *port);
++int plda_pcie_host_init(struct plda_pcie_rp *port, struct pci_ops *ops,
++ const struct plda_event *plda_event);
++void plda_pcie_host_deinit(struct plda_pcie_rp *pcie);
++
++static inline void plda_set_default_msi(struct plda_msi *msi)
++{
++ msi->vector_phy = IMSI_ADDR;
++ msi->num_vectors = PLDA_MAX_NUM_MSI_IRQS;
++}
+ #endif
+--
+2.43.0
+
+
+From a3bcc30c729854515731b73ed6e1e3bc5f7d2bc7 Mon Sep 17 00:00:00 2001
+From: Minda Chen <minda.chen@starfivetech.com>
+Date: Mon, 8 Jan 2024 19:06:09 +0800
+Subject: [PATCH 19/23] dt-bindings: PCI: Add StarFive JH7110 PCIe controller
+
+Add StarFive JH7110 SoC PCIe controller dt-bindings. JH7110 using PLDA
+XpressRICH PCIe host controller IP.
+
+Signed-off-by: Minda Chen <minda.chen@starfivetech.com>
+Reviewed-by: Hal Feng <hal.feng@starfivetech.com>
+Reviewed-by: Conor Dooley <conor.dooley@microchip.com>
+Reviewed-by: Rob Herring <robh@kernel.org>
+Message-ID: <20240108110612.19048-20-minda.chen@starfivetech.com>
+Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
+---
+ .../bindings/pci/starfive,jh7110-pcie.yaml | 120 ++++++++++++++++++
+ 1 file changed, 120 insertions(+)
+ create mode 100644 Documentation/devicetree/bindings/pci/starfive,jh7110-pcie.yaml
+
+diff --git a/Documentation/devicetree/bindings/pci/starfive,jh7110-pcie.yaml b/Documentation/devicetree/bindings/pci/starfive,jh7110-pcie.yaml
+new file mode 100644
+index 000000000000..67151aaa3948
+--- /dev/null
++++ b/Documentation/devicetree/bindings/pci/starfive,jh7110-pcie.yaml
+@@ -0,0 +1,120 @@
++# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
++%YAML 1.2
++---
++$id: http://devicetree.org/schemas/pci/starfive,jh7110-pcie.yaml#
++$schema: http://devicetree.org/meta-schemas/core.yaml#
++
++title: StarFive JH7110 PCIe host controller
++
++maintainers:
++ - Kevin Xie <kevin.xie@starfivetech.com>
++
++allOf:
++ - $ref: plda,xpressrich3-axi-common.yaml#
++
++properties:
++ compatible:
++ const: starfive,jh7110-pcie
++
++ clocks:
++ items:
++ - description: NOC bus clock
++ - description: Transport layer clock
++ - description: AXI MST0 clock
++ - description: APB clock
++
++ clock-names:
++ items:
++ - const: noc
++ - const: tl
++ - const: axi_mst0
++ - const: apb
++
++ resets:
++ items:
++ - description: AXI MST0 reset
++ - description: AXI SLAVE0 reset
++ - description: AXI SLAVE reset
++ - description: PCIE BRIDGE reset
++ - description: PCIE CORE reset
++ - description: PCIE APB reset
++
++ reset-names:
++ items:
++ - const: mst0
++ - const: slv0
++ - const: slv
++ - const: brg
++ - const: core
++ - const: apb
++
++ starfive,stg-syscon:
++ $ref: /schemas/types.yaml#/definitions/phandle-array
++ description:
++ The phandle to System Register Controller syscon node.
++
++ perst-gpios:
++ description: GPIO controlled connection to PERST# signal
++ maxItems: 1
++
++ phys:
++ description:
++ Specified PHY is attached to PCIe controller.
++ maxItems: 1
++
++required:
++ - clocks
++ - resets
++ - starfive,stg-syscon
++
++unevaluatedProperties: false
++
++examples:
++ - |
++ #include <dt-bindings/gpio/gpio.h>
++ soc {
++ #address-cells = <2>;
++ #size-cells = <2>;
++
++ pcie@940000000 {
++ compatible = "starfive,jh7110-pcie";
++ reg = <0x9 0x40000000 0x0 0x10000000>,
++ <0x0 0x2b000000 0x0 0x1000000>;
++ reg-names = "cfg", "apb";
++ #address-cells = <3>;
++ #size-cells = <2>;
++ #interrupt-cells = <1>;
++ device_type = "pci";
++ ranges = <0x82000000 0x0 0x30000000 0x0 0x30000000 0x0 0x08000000>,
++ <0xc3000000 0x9 0x00000000 0x9 0x00000000 0x0 0x40000000>;
++ starfive,stg-syscon = <&stg_syscon>;
++ bus-range = <0x0 0xff>;
++ interrupt-parent = <&plic>;
++ interrupts = <56>;
++ interrupt-map-mask = <0x0 0x0 0x0 0x7>;
++ interrupt-map = <0x0 0x0 0x0 0x1 &pcie_intc0 0x1>,
++ <0x0 0x0 0x0 0x2 &pcie_intc0 0x2>,
++ <0x0 0x0 0x0 0x3 &pcie_intc0 0x3>,
++ <0x0 0x0 0x0 0x4 &pcie_intc0 0x4>;
++ msi-controller;
++ clocks = <&syscrg 86>,
++ <&stgcrg 10>,
++ <&stgcrg 8>,
++ <&stgcrg 9>;
++ clock-names = "noc", "tl", "axi_mst0", "apb";
++ resets = <&stgcrg 11>,
++ <&stgcrg 12>,
++ <&stgcrg 13>,
++ <&stgcrg 14>,
++ <&stgcrg 15>,
++ <&stgcrg 16>;
++ perst-gpios = <&gpios 26 GPIO_ACTIVE_LOW>;
++ phys = <&pciephy0>;
++
++ pcie_intc0: interrupt-controller {
++ #address-cells = <0>;
++ #interrupt-cells = <1>;
++ interrupt-controller;
++ };
++ };
++ };
+--
+2.43.0
+
+
+From 68c605686c561a1cc3a42c82bc0de854b5b4183e Mon Sep 17 00:00:00 2001
+From: Kevin Xie <kevin.xie@starfivetech.com>
+Date: Mon, 8 Jan 2024 19:06:10 +0800
+Subject: [PATCH 20/23] PCI: Add PCIE_RESET_CONFIG_DEVICE_WAIT_MS waiting time
+ value
+
+Add the PCIE_RESET_CONFIG_DEVICE_WAIT_MS macro to define the minimum
+waiting time between exit from a conventional reset and sending the
+first configuration request to the device.
+
+As described in PCI base specification r6.0, section 6.6.1 <Conventional
+Reset>, there are two different use cases of the value:
+
+ - "With a Downstream Port that does not support Link speeds greater
+ than 5.0 GT/s, software must wait a minimum of 100 ms following exit
+ from a Conventional Reset before sending a Configuration Request to
+ the device immediately below that Port."
+
+ - "With a Downstream Port that supports Link speeds greater than
+ 5.0 GT/s, software must wait a minimum of 100 ms after Link training
+ completes before sending a Configuration Request to the device
+ immediately below that Port."
+
+Signed-off-by: Kevin Xie <kevin.xie@starfivetech.com>
+Reviewed-by: Mason Huo <mason.huo@starfivetech.com>
+Acked-by: Bjorn Helgaas <bhelgaas@google.com>
+Message-ID: <20240108110612.19048-21-minda.chen@starfivetech.com>
+Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
+---
+ drivers/pci/pci.h | 16 ++++++++++++++++
+ 1 file changed, 16 insertions(+)
+
+diff --git a/drivers/pci/pci.h b/drivers/pci/pci.h
+index f43873049d52..6990146e14e3 100644
+--- a/drivers/pci/pci.h
++++ b/drivers/pci/pci.h
+@@ -22,6 +22,22 @@
+ */
+ #define PCIE_PME_TO_L2_TIMEOUT_US 10000
+
++/*
++ * As described in PCI base specification r6.0, section 6.6.1 <Conventional
++ * Reset>, there are two different use cases of the value:
++ *
++ * - "With a Downstream Port that does not support Link speeds greater
++ * than 5.0 GT/s, software must wait a minimum of 100 ms following exit
++ * from a Conventional Reset before sending a Configuration Request to
++ * the device immediately below that Port."
++ *
++ * - "With a Downstream Port that supports Link speeds greater than
++ * 5.0 GT/s, software must wait a minimum of 100 ms after Link training
++ * completes before sending a Configuration Request to the device
++ * immediately below that Port."
++ */
++#define PCIE_RESET_CONFIG_DEVICE_WAIT_MS 100
++
+ extern const unsigned char pcie_link_speed[];
+ extern bool pci_early_dump;
+
+--
+2.43.0
+
+
+From d595015610966f0c9e3128ce23db29dd0f212e0e Mon Sep 17 00:00:00 2001
+From: Minda Chen <minda.chen@starfivetech.com>
+Date: Mon, 8 Jan 2024 19:06:11 +0800
+Subject: [PATCH 21/23] PCI: starfive: Add JH7110 PCIe controller
+
+Add StarFive JH7110 SoC PCIe controller platform driver codes, JH7110
+with PLDA host PCIe core.
+
+Signed-off-by: Minda Chen <minda.chen@starfivetech.com>
+Co-developed-by: Kevin Xie <kevin.xie@starfivetech.com>
+Reviewed-by: Mason Huo <mason.huo@starfivetech.com>
+Message-ID: <20240108110612.19048-22-minda.chen@starfivetech.com>
+Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
+---
+ MAINTAINERS | 7 +
+ drivers/pci/controller/plda/Kconfig | 12 +
+ drivers/pci/controller/plda/Makefile | 1 +
+ drivers/pci/controller/plda/pcie-plda.h | 71 ++-
+ drivers/pci/controller/plda/pcie-starfive.c | 473 ++++++++++++++++++++
+ 5 files changed, 563 insertions(+), 1 deletion(-)
+ create mode 100644 drivers/pci/controller/plda/pcie-starfive.c
+
+diff --git a/MAINTAINERS b/MAINTAINERS
+index 730fe2d640a1..7fa339e6c25d 100644
+--- a/MAINTAINERS
++++ b/MAINTAINERS
+@@ -16821,6 +16821,13 @@ S: Maintained
+ F: Documentation/devicetree/bindings/pci/socionext,uniphier-pcie*
+ F: drivers/pci/controller/dwc/pcie-uniphier*
+
++PCIE DRIVER FOR STARFIVE JH71x0
++M: Kevin Xie <kevin.xie@starfivetech.com>
++L: linux-pci@vger.kernel.org
++S: Maintained
++F: Documentation/devicetree/bindings/pci/starfive*
++F: drivers/pci/controller/plda/pcie-starfive.c
++
+ PCIE DRIVER FOR ST SPEAR13XX
+ M: Pratyush Anand <pratyush.anand@gmail.com>
+ L: linux-pci@vger.kernel.org
+diff --git a/drivers/pci/controller/plda/Kconfig b/drivers/pci/controller/plda/Kconfig
+index e54a82ee94f5..c0e14146d7e4 100644
+--- a/drivers/pci/controller/plda/Kconfig
++++ b/drivers/pci/controller/plda/Kconfig
+@@ -15,4 +15,16 @@ config PCIE_MICROCHIP_HOST
+ Say Y here if you want kernel to support the Microchip AXI PCIe
+ Host Bridge driver.
+
++config PCIE_STARFIVE_HOST
++ tristate "StarFive PCIe host controller"
++ depends on PCI_MSI && OF
++ depends on ARCH_STARFIVE || COMPILE_TEST
++ select PCIE_PLDA_HOST
++ help
++ Say Y here if you want to support the StarFive PCIe controller in
++ host mode. StarFive PCIe controller uses PLDA PCIe core.
++
++ If you choose to build this driver as module it will be dynamically
++ linked and module will be called pcie-starfive.ko.
++
+ endmenu
+diff --git a/drivers/pci/controller/plda/Makefile b/drivers/pci/controller/plda/Makefile
+index 4340ab007f44..0ac6851bed48 100644
+--- a/drivers/pci/controller/plda/Makefile
++++ b/drivers/pci/controller/plda/Makefile
+@@ -1,3 +1,4 @@
+ # SPDX-License-Identifier: GPL-2.0
+ obj-$(CONFIG_PCIE_PLDA_HOST) += pcie-plda-host.o
+ obj-$(CONFIG_PCIE_MICROCHIP_HOST) += pcie-microchip-host.o
++obj-$(CONFIG_PCIE_STARFIVE_HOST) += pcie-starfive.o
+diff --git a/drivers/pci/controller/plda/pcie-plda.h b/drivers/pci/controller/plda/pcie-plda.h
+index 7b69891700a4..04e385758a2f 100644
+--- a/drivers/pci/controller/plda/pcie-plda.h
++++ b/drivers/pci/controller/plda/pcie-plda.h
+@@ -10,10 +10,20 @@
+ #define PLDA_MAX_NUM_MSI_IRQS 32
+
+ /* PCIe Bridge Phy Regs */
++#define GEN_SETTINGS 0x80
++#define RP_ENABLE 1
++#define PCIE_PCI_IDS_DW1 0x9c
++#define IDS_CLASS_CODE_SHIFT 16
++#define REVISION_ID_MASK GENMASK(7, 0)
++#define CLASS_CODE_ID_MASK GENMASK(31, 8)
+ #define PCIE_PCI_IRQ_DW0 0xa8
+ #define MSIX_CAP_MASK BIT(31)
+ #define NUM_MSI_MSGS_MASK GENMASK(6, 4)
+ #define NUM_MSI_MSGS_SHIFT 4
++#define PCI_MISC 0xb4
++#define PHY_FUNCTION_DIS BIT(15)
++#define PCIE_WINROM 0xfc
++#define PREF_MEM_WIN_64_SUPPORT BIT(3)
+
+ #define IMASK_LOCAL 0x180
+ #define DMA_END_ENGINE_0_MASK 0x00000000u
+@@ -65,6 +75,8 @@
+ #define ISTATUS_HOST 0x18c
+ #define IMSI_ADDR 0x190
+ #define ISTATUS_MSI 0x194
++#define PMSG_SUPPORT_RX 0x3f0
++#define PMSG_LTR_SUPPORT BIT(2)
+
+ /* PCIe Master table init defines */
+ #define ATR0_PCIE_WIN0_SRCADDR_PARAM 0x600u
+@@ -86,6 +98,8 @@
+ #define PCIE_TX_RX_INTERFACE 0x00000000u
+ #define PCIE_CONFIG_INTERFACE 0x00000001u
+
++#define CONFIG_SPACE_ADDR_OFFSET 0x1000u
++
+ #define ATR_ENTRY_SIZE 32
+
+ enum plda_int_event {
+@@ -200,4 +214,59 @@ static inline void plda_set_default_msi(struct plda_msi *msi)
+ msi->vector_phy = IMSI_ADDR;
+ msi->num_vectors = PLDA_MAX_NUM_MSI_IRQS;
+ }
+-#endif
++
++static inline void plda_pcie_enable_root_port(struct plda_pcie_rp *plda)
++{
++ u32 value;
++
++ value = readl_relaxed(plda->bridge_addr + GEN_SETTINGS);
++ value |= RP_ENABLE;
++ writel_relaxed(value, plda->bridge_addr + GEN_SETTINGS);
++}
++
++static inline void plda_pcie_set_standard_class(struct plda_pcie_rp *plda)
++{
++ u32 value;
++
++ /* set class code and reserve revision id */
++ value = readl_relaxed(plda->bridge_addr + PCIE_PCI_IDS_DW1);
++ value &= REVISION_ID_MASK;
++ value |= (PCI_CLASS_BRIDGE_PCI << IDS_CLASS_CODE_SHIFT);
++ writel_relaxed(value, plda->bridge_addr + PCIE_PCI_IDS_DW1);
++}
++
++static inline void plda_pcie_set_pref_win_64bit(struct plda_pcie_rp *plda)
++{
++ u32 value;
++
++ value = readl_relaxed(plda->bridge_addr + PCIE_WINROM);
++ value |= PREF_MEM_WIN_64_SUPPORT;
++ writel_relaxed(value, plda->bridge_addr + PCIE_WINROM);
++}
++
++static inline void plda_pcie_disable_ltr(struct plda_pcie_rp *plda)
++{
++ u32 value;
++
++ value = readl_relaxed(plda->bridge_addr + PMSG_SUPPORT_RX);
++ value &= ~PMSG_LTR_SUPPORT;
++ writel_relaxed(value, plda->bridge_addr + PMSG_SUPPORT_RX);
++}
++
++static inline void plda_pcie_disable_func(struct plda_pcie_rp *plda)
++{
++ u32 value;
++
++ value = readl_relaxed(plda->bridge_addr + PCI_MISC);
++ value |= PHY_FUNCTION_DIS;
++ writel_relaxed(value, plda->bridge_addr + PCI_MISC);
++}
++
++static inline void plda_pcie_write_rc_bar(struct plda_pcie_rp *plda, u64 val)
++{
++ void __iomem *addr = plda->bridge_addr + CONFIG_SPACE_ADDR_OFFSET;
++
++ writel_relaxed(lower_32_bits(val), addr + PCI_BASE_ADDRESS_0);
++ writel_relaxed(upper_32_bits(val), addr + PCI_BASE_ADDRESS_1);
++}
++#endif /* _PCIE_PLDA_H */
+diff --git a/drivers/pci/controller/plda/pcie-starfive.c b/drivers/pci/controller/plda/pcie-starfive.c
+new file mode 100644
+index 000000000000..9bb9f0e29565
+--- /dev/null
++++ b/drivers/pci/controller/plda/pcie-starfive.c
+@@ -0,0 +1,473 @@
++// SPDX-License-Identifier: GPL-2.0+
++/*
++ * PCIe host controller driver for StarFive JH7110 Soc.
++ *
++ * Copyright (C) 2023 StarFive Technology Co., Ltd.
++ */
++
++#include <linux/bitfield.h>
++#include <linux/clk.h>
++#include <linux/delay.h>
++#include <linux/gpio/consumer.h>
++#include <linux/interrupt.h>
++#include <linux/kernel.h>
++#include <linux/mfd/syscon.h>
++#include <linux/module.h>
++#include <linux/of_address.h>
++#include <linux/of_irq.h>
++#include <linux/of_pci.h>
++#include <linux/pci.h>
++#include <linux/phy/phy.h>
++#include <linux/platform_device.h>
++#include <linux/pm_runtime.h>
++#include <linux/regmap.h>
++#include <linux/reset.h>
++#include "../../pci.h"
++
++#include "pcie-plda.h"
++
++#define PCIE_FUNC_NUM 4
++
++/* system control */
++#define STG_SYSCON_PCIE0_BASE 0x48
++#define STG_SYSCON_PCIE1_BASE 0x1f8
++
++#define STG_SYSCON_AR_OFFSET 0x78
++#define STG_SYSCON_AXI4_SLVL_AR_MASK GENMASK(22, 8)
++#define STG_SYSCON_AXI4_SLVL_PHY_AR(x) FIELD_PREP(GENMASK(20, 17), x)
++#define STG_SYSCON_AW_OFFSET 0x7c
++#define STG_SYSCON_AXI4_SLVL_AW_MASK GENMASK(14, 0)
++#define STG_SYSCON_AXI4_SLVL_PHY_AW(x) FIELD_PREP(GENMASK(12, 9), x)
++#define STG_SYSCON_CLKREQ BIT(22)
++#define STG_SYSCON_CKREF_SRC_MASK GENMASK(19, 18)
++#define STG_SYSCON_RP_NEP_OFFSET 0xe8
++#define STG_SYSCON_K_RP_NEP BIT(8)
++#define STG_SYSCON_LNKSTA_OFFSET 0x170
++#define DATA_LINK_ACTIVE BIT(5)
++
++/* Parameters for the waiting for link up routine */
++#define LINK_WAIT_MAX_RETRIES 10
++#define LINK_WAIT_USLEEP_MIN 90000
++#define LINK_WAIT_USLEEP_MAX 100000
++
++struct starfive_jh7110_pcie {
++ struct plda_pcie_rp plda;
++ struct reset_control *resets;
++ struct clk_bulk_data *clks;
++ struct regmap *reg_syscon;
++ struct gpio_desc *power_gpio;
++ struct gpio_desc *reset_gpio;
++ struct phy *phy;
++
++ unsigned int stg_pcie_base;
++ int num_clks;
++};
++
++/*
++ * The BAR0/1 of bridge should be hidden during enumeration to
++ * avoid the sizing and resource allocation by PCIe core.
++ */
++static bool starfive_pcie_hide_rc_bar(struct pci_bus *bus, unsigned int devfn,
++ int offset)
++{
++ if (pci_is_root_bus(bus) && !devfn &&
++ (offset == PCI_BASE_ADDRESS_0 || offset == PCI_BASE_ADDRESS_1))
++ return true;
++
++ return false;
++}
++
++static int starfive_pcie_config_write(struct pci_bus *bus, unsigned int devfn,
++ int where, int size, u32 value)
++{
++ if (starfive_pcie_hide_rc_bar(bus, devfn, where))
++ return PCIBIOS_SUCCESSFUL;
++
++ return pci_generic_config_write(bus, devfn, where, size, value);
++}
++
++static int starfive_pcie_config_read(struct pci_bus *bus, unsigned int devfn,
++ int where, int size, u32 *value)
++{
++ if (starfive_pcie_hide_rc_bar(bus, devfn, where)) {
++ *value = 0;
++ return PCIBIOS_SUCCESSFUL;
++ }
++
++ return pci_generic_config_read(bus, devfn, where, size, value);
++}
++
++static int starfive_pcie_parse_dt(struct starfive_jh7110_pcie *pcie,
++ struct device *dev)
++{
++ int domain_nr;
++
++ pcie->num_clks = devm_clk_bulk_get_all(dev, &pcie->clks);
++ if (pcie->num_clks < 0)
++ return dev_err_probe(dev, pcie->num_clks,
++ "failed to get pcie clocks\n");
++
++ pcie->resets = devm_reset_control_array_get_exclusive(dev);
++ if (IS_ERR(pcie->resets))
++ return dev_err_probe(dev, PTR_ERR(pcie->resets),
++ "failed to get pcie resets");
++
++ pcie->reg_syscon =
++ syscon_regmap_lookup_by_phandle(dev->of_node,
++ "starfive,stg-syscon");
++
++ if (IS_ERR(pcie->reg_syscon))
++ return dev_err_probe(dev, PTR_ERR(pcie->reg_syscon),
++ "failed to parse starfive,stg-syscon\n");
++
++ pcie->phy = devm_phy_optional_get(dev, NULL);
++ if (IS_ERR(pcie->phy))
++ return dev_err_probe(dev, PTR_ERR(pcie->phy),
++ "failed to get pcie phy\n");
++
++ domain_nr = of_get_pci_domain_nr(dev->of_node);
++
++ if (domain_nr < 0 || domain_nr > 1)
++ return dev_err_probe(dev, -ENODEV,
++ "failed to get valid pcie domain\n");
++
++ if (domain_nr == 0)
++ pcie->stg_pcie_base = STG_SYSCON_PCIE0_BASE;
++ else
++ pcie->stg_pcie_base = STG_SYSCON_PCIE1_BASE;
++
++ pcie->reset_gpio = devm_gpiod_get_optional(dev, "perst",
++ GPIOD_OUT_HIGH);
++ if (IS_ERR(pcie->reset_gpio))
++ return dev_err_probe(dev, PTR_ERR(pcie->reset_gpio),
++ "failed to get perst-gpio\n");
++
++ pcie->power_gpio = devm_gpiod_get_optional(dev, "enable",
++ GPIOD_OUT_LOW);
++ if (IS_ERR(pcie->power_gpio))
++ return dev_err_probe(dev, PTR_ERR(pcie->power_gpio),
++ "failed to get power-gpio\n");
++
++ return 0;
++}
++
++static struct pci_ops starfive_pcie_ops = {
++ .map_bus = plda_pcie_map_bus,
++ .read = starfive_pcie_config_read,
++ .write = starfive_pcie_config_write,
++};
++
++static int starfive_pcie_clk_rst_init(struct starfive_jh7110_pcie *pcie)
++{
++ struct device *dev = pcie->plda.dev;
++ int ret;
++
++ ret = clk_bulk_prepare_enable(pcie->num_clks, pcie->clks);
++ if (ret)
++ return dev_err_probe(dev, ret, "failed to enable clocks\n");
++
++ ret = reset_control_deassert(pcie->resets);
++ if (ret) {
++ clk_bulk_disable_unprepare(pcie->num_clks, pcie->clks);
++ dev_err_probe(dev, ret, "failed to deassert resets\n");
++ }
++
++ return ret;
++}
++
++static void starfive_pcie_clk_rst_deinit(struct starfive_jh7110_pcie *pcie)
++{
++ reset_control_assert(pcie->resets);
++ clk_bulk_disable_unprepare(pcie->num_clks, pcie->clks);
++}
++
++static bool starfive_pcie_link_up(struct plda_pcie_rp *plda)
++{
++ struct starfive_jh7110_pcie *pcie =
++ container_of(plda, struct starfive_jh7110_pcie, plda);
++ int ret;
++ u32 stg_reg_val;
++
++ ret = regmap_read(pcie->reg_syscon,
++ pcie->stg_pcie_base + STG_SYSCON_LNKSTA_OFFSET,
++ &stg_reg_val);
++ if (ret) {
++ dev_err(pcie->plda.dev, "failed to read link status\n");
++ return false;
++ }
++
++ return !!(stg_reg_val & DATA_LINK_ACTIVE);
++}
++
++static int starfive_pcie_host_wait_for_link(struct starfive_jh7110_pcie *pcie)
++{
++ int retries;
++
++ /* Check if the link is up or not */
++ for (retries = 0; retries < LINK_WAIT_MAX_RETRIES; retries++) {
++ if (starfive_pcie_link_up(&pcie->plda)) {
++ dev_info(pcie->plda.dev, "port link up\n");
++ return 0;
++ }
++ usleep_range(LINK_WAIT_USLEEP_MIN, LINK_WAIT_USLEEP_MAX);
++ }
++
++ return -ETIMEDOUT;
++}
++
++static int starfive_pcie_enable_phy(struct device *dev,
++ struct starfive_jh7110_pcie *pcie)
++{
++ int ret;
++
++ if (!pcie->phy)
++ return 0;
++
++ ret = phy_init(pcie->phy);
++ if (ret)
++ return dev_err_probe(dev, ret,
++ "failed to initialize pcie phy\n");
++
++ ret = phy_set_mode(pcie->phy, PHY_MODE_PCIE);
++ if (ret) {
++ dev_err_probe(dev, ret, "failed to set pcie mode\n");
++ goto err_phy_on;
++ }
++
++ ret = phy_power_on(pcie->phy);
++ if (ret) {
++ dev_err_probe(dev, ret, "failed to power on pcie phy\n");
++ goto err_phy_on;
++ }
++
++ return 0;
++
++err_phy_on:
++ phy_exit(pcie->phy);
++ return ret;
++}
++
++static void starfive_pcie_disable_phy(struct starfive_jh7110_pcie *pcie)
++{
++ phy_power_off(pcie->phy);
++ phy_exit(pcie->phy);
++}
++
++static void starfive_pcie_host_deinit(struct plda_pcie_rp *plda)
++{
++ struct starfive_jh7110_pcie *pcie =
++ container_of(plda, struct starfive_jh7110_pcie, plda);
++
++ starfive_pcie_clk_rst_deinit(pcie);
++ if (pcie->power_gpio)
++ gpiod_set_value_cansleep(pcie->power_gpio, 0);
++ starfive_pcie_disable_phy(pcie);
++}
++
++static int starfive_pcie_host_init(struct plda_pcie_rp *plda)
++{
++ struct starfive_jh7110_pcie *pcie =
++ container_of(plda, struct starfive_jh7110_pcie, plda);
++ struct device *dev = plda->dev;
++ int ret;
++ int i;
++
++ ret = starfive_pcie_enable_phy(dev, pcie);
++ if (ret)
++ return ret;
++
++ regmap_update_bits(pcie->reg_syscon,
++ pcie->stg_pcie_base + STG_SYSCON_RP_NEP_OFFSET,
++ STG_SYSCON_K_RP_NEP, STG_SYSCON_K_RP_NEP);
++
++ regmap_update_bits(pcie->reg_syscon,
++ pcie->stg_pcie_base + STG_SYSCON_AW_OFFSET,
++ STG_SYSCON_CKREF_SRC_MASK,
++ FIELD_PREP(STG_SYSCON_CKREF_SRC_MASK, 2));
++
++ regmap_update_bits(pcie->reg_syscon,
++ pcie->stg_pcie_base + STG_SYSCON_AW_OFFSET,
++ STG_SYSCON_CLKREQ, STG_SYSCON_CLKREQ);
++
++ ret = starfive_pcie_clk_rst_init(pcie);
++ if (ret)
++ return ret;
++
++ if (pcie->power_gpio)
++ gpiod_set_value_cansleep(pcie->power_gpio, 1);
++
++ if (pcie->reset_gpio)
++ gpiod_set_value_cansleep(pcie->reset_gpio, 1);
++
++ /* Disable physical functions except #0 */
++ for (i = 1; i < PCIE_FUNC_NUM; i++) {
++ regmap_update_bits(pcie->reg_syscon,
++ pcie->stg_pcie_base + STG_SYSCON_AR_OFFSET,
++ STG_SYSCON_AXI4_SLVL_AR_MASK,
++ STG_SYSCON_AXI4_SLVL_PHY_AR(i));
++
++ regmap_update_bits(pcie->reg_syscon,
++ pcie->stg_pcie_base + STG_SYSCON_AW_OFFSET,
++ STG_SYSCON_AXI4_SLVL_AW_MASK,
++ STG_SYSCON_AXI4_SLVL_PHY_AW(i));
++
++ plda_pcie_disable_func(plda);
++ }
++
++ regmap_update_bits(pcie->reg_syscon,
++ pcie->stg_pcie_base + STG_SYSCON_AR_OFFSET,
++ STG_SYSCON_AXI4_SLVL_AR_MASK, 0);
++ regmap_update_bits(pcie->reg_syscon,
++ pcie->stg_pcie_base + STG_SYSCON_AW_OFFSET,
++ STG_SYSCON_AXI4_SLVL_AW_MASK, 0);
++
++ plda_pcie_enable_root_port(plda);
++ plda_pcie_write_rc_bar(plda, 0);
++
++ /* PCIe PCI Standard Configuration Identification Settings. */
++ plda_pcie_set_standard_class(plda);
++
++ /*
++ * The LTR message forwarding of PCIe Message Reception was set by core
++ * as default, but the forward id & addr are also need to be reset.
++ * If we do not disable LTR message forwarding here, or set a legal
++ * forwarding address, the kernel will get stuck after the driver probe.
++ * To workaround, disable the LTR message forwarding support on
++ * PCIe Message Reception.
++ */
++ plda_pcie_disable_ltr(plda);
++
++ /* Prefetchable memory window 64-bit addressing support */
++ plda_pcie_set_pref_win_64bit(plda);
++
++ /*
++ * Ensure that PERST has been asserted for at least 100 ms,
++ * the sleep value is T_PVPERL from PCIe CEM spec r2.0 (Table 2-4)
++ */
++ msleep(100);
++ if (pcie->reset_gpio)
++ gpiod_set_value_cansleep(pcie->reset_gpio, 0);
++
++ /*
++ * With a Downstream Port (<=5GT/s), software must wait a minimum
++ * of 100ms following exit from a conventional reset before
++ * sending a configuration request to the device.
++ */
++ msleep(PCIE_RESET_CONFIG_DEVICE_WAIT_MS);
++
++ if (starfive_pcie_host_wait_for_link(pcie))
++ dev_info(dev, "port link down\n");
++
++ return 0;
++}
++
++static const struct plda_pcie_host_ops sf_host_ops = {
++ .host_init = starfive_pcie_host_init,
++ .host_deinit = starfive_pcie_host_deinit,
++};
++
++static const struct plda_event stf_pcie_event = {
++ .intx_event = EVENT_PM_MSI_INT_INTX,
++ .msi_event = EVENT_PM_MSI_INT_MSI
++};
++
++static int starfive_pcie_probe(struct platform_device *pdev)
++{
++ struct starfive_jh7110_pcie *pcie;
++ struct device *dev = &pdev->dev;
++ struct plda_pcie_rp *plda;
++ int ret;
++
++ pcie = devm_kzalloc(dev, sizeof(*pcie), GFP_KERNEL);
++ if (!pcie)
++ return -ENOMEM;
++
++ plda = &pcie->plda;
++ plda->dev = dev;
++
++ ret = starfive_pcie_parse_dt(pcie, dev);
++ if (ret)
++ return ret;
++
++ plda->host_ops = &sf_host_ops;
++ plda->num_events = PLDA_MAX_EVENT_NUM;
++ /* mask doorbell event */
++ plda->events_bitmap = GENMASK(PLDA_INT_EVENT_NUM - 1, 0)
++ & ~BIT(PLDA_AXI_DOORBELL)
++ & ~BIT(PLDA_PCIE_DOORBELL);
++ plda->events_bitmap <<= PLDA_NUM_DMA_EVENTS;
++ ret = plda_pcie_host_init(&pcie->plda, &starfive_pcie_ops,
++ &stf_pcie_event);
++ if (ret)
++ return ret;
++
++ pm_runtime_enable(&pdev->dev);
++ pm_runtime_get_sync(&pdev->dev);
++ platform_set_drvdata(pdev, pcie);
++
++ return 0;
++}
++
++static void starfive_pcie_remove(struct platform_device *pdev)
++{
++ struct starfive_jh7110_pcie *pcie = platform_get_drvdata(pdev);
++
++ pm_runtime_put(&pdev->dev);
++ pm_runtime_disable(&pdev->dev);
++ plda_pcie_host_deinit(&pcie->plda);
++ platform_set_drvdata(pdev, NULL);
++}
++
++static int starfive_pcie_suspend_noirq(struct device *dev)
++{
++ struct starfive_jh7110_pcie *pcie = dev_get_drvdata(dev);
++
++ clk_bulk_disable_unprepare(pcie->num_clks, pcie->clks);
++ starfive_pcie_disable_phy(pcie);
++
++ return 0;
++}
++
++static int starfive_pcie_resume_noirq(struct device *dev)
++{
++ struct starfive_jh7110_pcie *pcie = dev_get_drvdata(dev);
++ int ret;
++
++ ret = starfive_pcie_enable_phy(dev, pcie);
++ if (ret)
++ return ret;
++
++ ret = clk_bulk_prepare_enable(pcie->num_clks, pcie->clks);
++ if (ret) {
++ dev_err(dev, "failed to enable clocks\n");
++ starfive_pcie_disable_phy(pcie);
++ return ret;
++ }
++
++ return 0;
++}
++
++static const struct dev_pm_ops starfive_pcie_pm_ops = {
++ NOIRQ_SYSTEM_SLEEP_PM_OPS(starfive_pcie_suspend_noirq,
++ starfive_pcie_resume_noirq)
++};
++
++static const struct of_device_id starfive_pcie_of_match[] = {
++ { .compatible = "starfive,jh7110-pcie", },
++ { /* sentinel */ }
++};
++MODULE_DEVICE_TABLE(of, starfive_pcie_of_match);
++
++static struct platform_driver starfive_pcie_driver = {
++ .driver = {
++ .name = "pcie-starfive",
++ .of_match_table = of_match_ptr(starfive_pcie_of_match),
++ .pm = pm_sleep_ptr(&starfive_pcie_pm_ops),
++ },
++ .probe = starfive_pcie_probe,
++ .remove_new = starfive_pcie_remove,
++};
++module_platform_driver(starfive_pcie_driver);
++
++MODULE_DESCRIPTION("StarFive JH7110 PCIe host driver");
++MODULE_LICENSE("GPL v2");
+--
+2.43.0
+
+
+From bb33f9248da218662ccf28d1730833a18ce22d9f Mon Sep 17 00:00:00 2001
+From: Minda Chen <minda.chen@starfivetech.com>
+Date: Mon, 8 Jan 2024 19:06:12 +0800
+Subject: [PATCH 22/23] riscv: dts: starfive: add PCIe dts configuration for
+ JH7110
+
+Add PCIe dts configuraion for JH7110 SoC platform.
+
+Signed-off-by: Minda Chen <minda.chen@starfivetech.com>
+Reviewed-by: Hal Feng <hal.feng@starfivetech.com>
+Message-ID: <20240108110612.19048-23-minda.chen@starfivetech.com>
+Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
+---
+ .../jh7110-starfive-visionfive-2.dtsi | 64 ++++++++++++++
+ arch/riscv/boot/dts/starfive/jh7110.dtsi | 86 +++++++++++++++++++
+ 2 files changed, 150 insertions(+)
+
+diff --git a/arch/riscv/boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi b/arch/riscv/boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi
+index b89e9791efa7..2f8056d6f817 100644
+--- a/arch/riscv/boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi
++++ b/arch/riscv/boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi
+@@ -287,6 +287,22 @@ &pwmdac {
+ status = "okay";
+ };
+
++&pcie0 {
++ perst-gpios = <&sysgpio 26 GPIO_ACTIVE_LOW>;
++ phys = <&pciephy0>;
++ pinctrl-names = "default";
++ pinctrl-0 = <&pcie0_pins>;
++ status = "okay";
++};
++
++&pcie1 {
++ perst-gpios = <&sysgpio 28 GPIO_ACTIVE_LOW>;
++ phys = <&pciephy1>;
++ pinctrl-names = "default";
++ pinctrl-0 = <&pcie1_pins>;
++ status = "okay";
++};
++
+ &qspi {
+ #address-cells = <1>;
+ #size-cells = <0>;
+@@ -513,6 +529,54 @@ GPOEN_ENABLE,
+ };
+ };
+
++ pcie0_pins: pcie0-0 {
++ clkreq-pins {
++ pinmux = <GPIOMUX(27, GPOUT_LOW,
++ GPOEN_DISABLE,
++ GPI_NONE)>;
++ bias-pull-down;
++ drive-strength = <2>;
++ input-enable;
++ input-schmitt-disable;
++ slew-rate = <0>;
++ };
++
++ wake-pins {
++ pinmux = <GPIOMUX(32, GPOUT_LOW,
++ GPOEN_DISABLE,
++ GPI_NONE)>;
++ bias-pull-up;
++ drive-strength = <2>;
++ input-enable;
++ input-schmitt-disable;
++ slew-rate = <0>;
++ };
++ };
++
++ pcie1_pins: pcie1-0 {
++ clkreq-pins {
++ pinmux = <GPIOMUX(29, GPOUT_LOW,
++ GPOEN_DISABLE,
++ GPI_NONE)>;
++ bias-pull-down;
++ drive-strength = <2>;
++ input-enable;
++ input-schmitt-disable;
++ slew-rate = <0>;
++ };
++
++ wake-pins {
++ pinmux = <GPIOMUX(21, GPOUT_LOW,
++ GPOEN_DISABLE,
++ GPI_NONE)>;
++ bias-pull-up;
++ drive-strength = <2>;
++ input-enable;
++ input-schmitt-disable;
++ slew-rate = <0>;
++ };
++ };
++
+ spi0_pins: spi0-0 {
+ mosi-pins {
+ pinmux = <GPIOMUX(52, GPOUT_SYS_SPI0_TXD,
+diff --git a/arch/riscv/boot/dts/starfive/jh7110.dtsi b/arch/riscv/boot/dts/starfive/jh7110.dtsi
+index 45213cdf50dc..dfa2f94ed5b2 100644
+--- a/arch/riscv/boot/dts/starfive/jh7110.dtsi
++++ b/arch/riscv/boot/dts/starfive/jh7110.dtsi
+@@ -1138,5 +1138,91 @@ voutcrg: clock-controller@295c0000 {
+ #reset-cells = <1>;
+ power-domains = <&pwrc JH7110_PD_VOUT>;
+ };
++
++ pcie0: pcie@940000000 {
++ compatible = "starfive,jh7110-pcie";
++ reg = <0x9 0x40000000 0x0 0x1000000>,
++ <0x0 0x2b000000 0x0 0x100000>;
++ reg-names = "cfg", "apb";
++ linux,pci-domain = <0>;
++ #address-cells = <3>;
++ #size-cells = <2>;
++ #interrupt-cells = <1>;
++ ranges = <0x82000000 0x0 0x30000000 0x0 0x30000000 0x0 0x08000000>,
++ <0xc3000000 0x9 0x00000000 0x9 0x00000000 0x0 0x40000000>;
++ interrupts = <56>;
++ interrupt-map-mask = <0x0 0x0 0x0 0x7>;
++ interrupt-map = <0x0 0x0 0x0 0x1 &pcie_intc0 0x1>,
++ <0x0 0x0 0x0 0x2 &pcie_intc0 0x2>,
++ <0x0 0x0 0x0 0x3 &pcie_intc0 0x3>,
++ <0x0 0x0 0x0 0x4 &pcie_intc0 0x4>;
++ msi-controller;
++ device_type = "pci";
++ starfive,stg-syscon = <&stg_syscon>;
++ bus-range = <0x0 0xff>;
++ clocks = <&syscrg JH7110_SYSCLK_NOC_BUS_STG_AXI>,
++ <&stgcrg JH7110_STGCLK_PCIE0_TL>,
++ <&stgcrg JH7110_STGCLK_PCIE0_AXI_MST0>,
++ <&stgcrg JH7110_STGCLK_PCIE0_APB>;
++ clock-names = "noc", "tl", "axi_mst0", "apb";
++ resets = <&stgcrg JH7110_STGRST_PCIE0_AXI_MST0>,
++ <&stgcrg JH7110_STGRST_PCIE0_AXI_SLV0>,
++ <&stgcrg JH7110_STGRST_PCIE0_AXI_SLV>,
++ <&stgcrg JH7110_STGRST_PCIE0_BRG>,
++ <&stgcrg JH7110_STGRST_PCIE0_CORE>,
++ <&stgcrg JH7110_STGRST_PCIE0_APB>;
++ reset-names = "mst0", "slv0", "slv", "brg",
++ "core", "apb";
++ status = "disabled";
++
++ pcie_intc0: interrupt-controller {
++ #address-cells = <0>;
++ #interrupt-cells = <1>;
++ interrupt-controller;
++ };
++ };
++
++ pcie1: pcie@9c0000000 {
++ compatible = "starfive,jh7110-pcie";
++ reg = <0x9 0xc0000000 0x0 0x1000000>,
++ <0x0 0x2c000000 0x0 0x100000>;
++ reg-names = "cfg", "apb";
++ linux,pci-domain = <1>;
++ #address-cells = <3>;
++ #size-cells = <2>;
++ #interrupt-cells = <1>;
++ ranges = <0x82000000 0x0 0x38000000 0x0 0x38000000 0x0 0x08000000>,
++ <0xc3000000 0x9 0x80000000 0x9 0x80000000 0x0 0x40000000>;
++ interrupts = <57>;
++ interrupt-map-mask = <0x0 0x0 0x0 0x7>;
++ interrupt-map = <0x0 0x0 0x0 0x1 &pcie_intc1 0x1>,
++ <0x0 0x0 0x0 0x2 &pcie_intc1 0x2>,
++ <0x0 0x0 0x0 0x3 &pcie_intc1 0x3>,
++ <0x0 0x0 0x0 0x4 &pcie_intc1 0x4>;
++ msi-controller;
++ device_type = "pci";
++ starfive,stg-syscon = <&stg_syscon>;
++ bus-range = <0x0 0xff>;
++ clocks = <&syscrg JH7110_SYSCLK_NOC_BUS_STG_AXI>,
++ <&stgcrg JH7110_STGCLK_PCIE1_TL>,
++ <&stgcrg JH7110_STGCLK_PCIE1_AXI_MST0>,
++ <&stgcrg JH7110_STGCLK_PCIE1_APB>;
++ clock-names = "noc", "tl", "axi_mst0", "apb";
++ resets = <&stgcrg JH7110_STGRST_PCIE1_AXI_MST0>,
++ <&stgcrg JH7110_STGRST_PCIE1_AXI_SLV0>,
++ <&stgcrg JH7110_STGRST_PCIE1_AXI_SLV>,
++ <&stgcrg JH7110_STGRST_PCIE1_BRG>,
++ <&stgcrg JH7110_STGRST_PCIE1_CORE>,
++ <&stgcrg JH7110_STGRST_PCIE1_APB>;
++ reset-names = "mst0", "slv0", "slv", "brg",
++ "core", "apb";
++ status = "disabled";
++
++ pcie_intc1: interrupt-controller {
++ #address-cells = <0>;
++ #interrupt-cells = <1>;
++ interrupt-controller;
++ };
++ };
+ };
+ };
+--
+2.43.0
+
+
+From 744fa2c80f19985d27a786af5e78cc9ce945b06c Mon Sep 17 00:00:00 2001
+From: Xingyu Wu <xingyu.wu@starfivetech.com>
+Date: Mon, 21 Aug 2023 23:29:15 +0800
+Subject: [PATCH 23/23] clk: starfive: jh7110-sys: Fix lower rate of CPUfreq by
+ setting PLL0 rate to 1.5GHz
+
+CPUfreq supports 4 cpu frequency loads on 375/500/750/1500MHz.
+But now PLL0 rate is 1GHz and the cpu frequency loads become
+333/500/500/1000MHz in fact.
+
+So PLL0 rate should be set to 1.5GHz. Change the parent of cpu_root clock
+and the divider of cpu_core before the setting.
+
+Reviewed-by: Hal Feng <hal.feng@starfivetech.com>
+Fixes: e2c510d6d630 ("riscv: dts: starfive: Add cpu scaling for JH7110 SoC")
+Signed-off-by: Xingyu Wu <xingyu.wu@starfivetech.com>
+Link: https://lore.kernel.org/r/20230821152915.208366-1-xingyu.wu@starfivetech.com
+Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
+---
+ .../clk/starfive/clk-starfive-jh7110-sys.c | 47 ++++++++++++++++++-
+ 1 file changed, 46 insertions(+), 1 deletion(-)
+
+diff --git a/drivers/clk/starfive/clk-starfive-jh7110-sys.c b/drivers/clk/starfive/clk-starfive-jh7110-sys.c
+index 3884eff9fe93..b6b9e967dfc7 100644
+--- a/drivers/clk/starfive/clk-starfive-jh7110-sys.c
++++ b/drivers/clk/starfive/clk-starfive-jh7110-sys.c
+@@ -501,7 +501,52 @@ static int __init jh7110_syscrg_probe(struct platform_device *pdev)
+ if (ret)
+ return ret;
+
+- return jh7110_reset_controller_register(priv, "rst-sys", 0);
++ ret = jh7110_reset_controller_register(priv, "rst-sys", 0);
++ if (ret)
++ return ret;
++
++ /*
++ * Set PLL0 rate to 1.5GHz
++ * In order to not affect the cpu when the PLL0 rate is changing,
++ * we need to switch the parent of cpu_root clock to osc clock first,
++ * and then switch back after setting the PLL0 rate.
++ */
++ pllclk = clk_get(priv->dev, "pll0_out");
++ if (!IS_ERR(pllclk)) {
++ struct clk *osc = clk_get(&pdev->dev, "osc");
++ struct clk *cpu_root = priv->reg[JH7110_SYSCLK_CPU_ROOT].hw.clk;
++ struct clk *cpu_core = priv->reg[JH7110_SYSCLK_CPU_CORE].hw.clk;
++
++ if (IS_ERR(osc)) {
++ clk_put(pllclk);
++ return PTR_ERR(osc);
++ }
++
++ /*
++ * CPU need voltage regulation by CPUfreq if set 1.5GHz.
++ * So in this driver, cpu_core need to be set the divider to be 2 first
++ * and will be 750M after setting parent.
++ */
++ ret = clk_set_rate(cpu_core, clk_get_rate(cpu_core) / 2);
++ if (ret)
++ goto failed_set;
++
++ ret = clk_set_parent(cpu_root, osc);
++ if (ret)
++ goto failed_set;
++
++ ret = clk_set_rate(pllclk, 1500000000);
++ if (ret)
++ goto failed_set;
++
++ ret = clk_set_parent(cpu_root, pllclk);
++
++failed_set:
++ clk_put(pllclk);
++ clk_put(osc);
++ }
++
++ return ret;
+ }
+
+ static const struct of_device_id jh7110_syscrg_match[] = {
+--
+2.43.0
+
diff --git a/testing/linux-starfive/config-starfive.riscv64 b/testing/linux-starfive/config-starfive.riscv64
new file mode 100644
index 00000000000..29494f3e5b2
--- /dev/null
+++ b/testing/linux-starfive/config-starfive.riscv64
@@ -0,0 +1,5744 @@
+#
+# Automatically generated file; DO NOT EDIT.
+# Linux/riscv 6.8.7 Kernel Configuration
+#
+CONFIG_CC_VERSION_TEXT="gcc (Alpine 13.2.1_git20240309) 13.2.1 20240309"
+CONFIG_CC_IS_GCC=y
+CONFIG_GCC_VERSION=130201
+CONFIG_CLANG_VERSION=0
+CONFIG_AS_IS_GNU=y
+CONFIG_AS_VERSION=24200
+CONFIG_LD_IS_BFD=y
+CONFIG_LD_VERSION=24200
+CONFIG_LLD_VERSION=0
+CONFIG_CC_CAN_LINK=y
+CONFIG_CC_CAN_LINK_STATIC=y
+CONFIG_CC_HAS_ASM_GOTO_OUTPUT=y
+CONFIG_CC_HAS_ASM_GOTO_TIED_OUTPUT=y
+CONFIG_GCC_ASM_GOTO_OUTPUT_WORKAROUND=y
+CONFIG_CC_HAS_ASM_INLINE=y
+CONFIG_CC_HAS_NO_PROFILE_FN_ATTR=y
+CONFIG_PAHOLE_VERSION=0
+CONFIG_IRQ_WORK=y
+CONFIG_BUILDTIME_TABLE_SORT=y
+CONFIG_THREAD_INFO_IN_TASK=y
+
+#
+# General setup
+#
+CONFIG_INIT_ENV_ARG_LIMIT=32
+# CONFIG_COMPILE_TEST is not set
+# CONFIG_WERROR is not set
+CONFIG_LOCALVERSION=""
+# CONFIG_LOCALVERSION_AUTO is not set
+CONFIG_BUILD_SALT=""
+CONFIG_DEFAULT_INIT=""
+CONFIG_DEFAULT_HOSTNAME="(none)"
+CONFIG_SYSVIPC=y
+CONFIG_SYSVIPC_SYSCTL=y
+CONFIG_SYSVIPC_COMPAT=y
+CONFIG_POSIX_MQUEUE=y
+CONFIG_POSIX_MQUEUE_SYSCTL=y
+# CONFIG_WATCH_QUEUE is not set
+CONFIG_CROSS_MEMORY_ATTACH=y
+# CONFIG_USELIB is not set
+# CONFIG_AUDIT is not set
+CONFIG_HAVE_ARCH_AUDITSYSCALL=y
+
+#
+# IRQ subsystem
+#
+CONFIG_GENERIC_IRQ_SHOW=y
+CONFIG_GENERIC_IRQ_SHOW_LEVEL=y
+CONFIG_GENERIC_IRQ_EFFECTIVE_AFF_MASK=y
+CONFIG_GENERIC_IRQ_MIGRATION=y
+CONFIG_HARDIRQS_SW_RESEND=y
+CONFIG_IRQ_DOMAIN=y
+CONFIG_IRQ_DOMAIN_HIERARCHY=y
+CONFIG_GENERIC_IRQ_IPI=y
+CONFIG_GENERIC_IRQ_IPI_MUX=y
+CONFIG_GENERIC_MSI_IRQ=y
+CONFIG_IRQ_FORCED_THREADING=y
+CONFIG_SPARSE_IRQ=y
+# end of IRQ subsystem
+
+CONFIG_GENERIC_IRQ_MULTI_HANDLER=y
+CONFIG_GENERIC_TIME_VSYSCALL=y
+CONFIG_GENERIC_CLOCKEVENTS=y
+CONFIG_ARCH_HAS_TICK_BROADCAST=y
+CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y
+CONFIG_HAVE_POSIX_CPU_TIMERS_TASK_WORK=y
+CONFIG_POSIX_CPU_TIMERS_TASK_WORK=y
+CONFIG_CONTEXT_TRACKING=y
+CONFIG_CONTEXT_TRACKING_IDLE=y
+
+#
+# Timers subsystem
+#
+CONFIG_TICK_ONESHOT=y
+CONFIG_NO_HZ_COMMON=y
+# CONFIG_HZ_PERIODIC is not set
+CONFIG_NO_HZ_IDLE=y
+# CONFIG_NO_HZ_FULL is not set
+# CONFIG_NO_HZ is not set
+CONFIG_HIGH_RES_TIMERS=y
+# end of Timers subsystem
+
+CONFIG_BPF=y
+CONFIG_HAVE_EBPF_JIT=y
+
+#
+# BPF subsystem
+#
+CONFIG_BPF_SYSCALL=y
+# CONFIG_BPF_JIT is not set
+CONFIG_BPF_UNPRIV_DEFAULT_OFF=y
+# CONFIG_BPF_PRELOAD is not set
+# end of BPF subsystem
+
+CONFIG_PREEMPT_BUILD=y
+# CONFIG_PREEMPT_NONE is not set
+# CONFIG_PREEMPT_VOLUNTARY is not set
+CONFIG_PREEMPT=y
+CONFIG_PREEMPT_COUNT=y
+CONFIG_PREEMPTION=y
+CONFIG_PREEMPT_DYNAMIC=y
+
+#
+# CPU/Task time and stats accounting
+#
+CONFIG_TICK_CPU_ACCOUNTING=y
+# CONFIG_VIRT_CPU_ACCOUNTING_GEN is not set
+# CONFIG_IRQ_TIME_ACCOUNTING is not set
+# CONFIG_BSD_PROCESS_ACCT is not set
+CONFIG_TASKSTATS=y
+CONFIG_TASK_DELAY_ACCT=y
+CONFIG_TASK_XACCT=y
+CONFIG_TASK_IO_ACCOUNTING=y
+# CONFIG_PSI is not set
+# end of CPU/Task time and stats accounting
+
+CONFIG_CPU_ISOLATION=y
+
+#
+# RCU Subsystem
+#
+CONFIG_TREE_RCU=y
+CONFIG_PREEMPT_RCU=y
+# CONFIG_RCU_EXPERT is not set
+CONFIG_TREE_SRCU=y
+CONFIG_TASKS_RCU_GENERIC=y
+CONFIG_TASKS_RCU=y
+CONFIG_TASKS_TRACE_RCU=y
+CONFIG_RCU_STALL_COMMON=y
+CONFIG_RCU_NEED_SEGCBLIST=y
+# end of RCU Subsystem
+
+CONFIG_IKCONFIG=m
+CONFIG_IKCONFIG_PROC=y
+# CONFIG_IKHEADERS is not set
+CONFIG_LOG_BUF_SHIFT=18
+CONFIG_LOG_CPU_MAX_BUF_SHIFT=12
+CONFIG_GENERIC_SCHED_CLOCK=y
+
+#
+# Scheduler features
+#
+# CONFIG_UCLAMP_TASK is not set
+# end of Scheduler features
+
+CONFIG_ARCH_WANT_BATCHED_UNMAP_TLB_FLUSH=y
+CONFIG_CC_HAS_INT128=y
+CONFIG_CC_IMPLICIT_FALLTHROUGH="-Wimplicit-fallthrough=5"
+CONFIG_GCC10_NO_ARRAY_BOUNDS=y
+CONFIG_CC_NO_ARRAY_BOUNDS=y
+CONFIG_GCC_NO_STRINGOP_OVERFLOW=y
+CONFIG_CC_NO_STRINGOP_OVERFLOW=y
+CONFIG_ARCH_SUPPORTS_INT128=y
+CONFIG_CGROUPS=y
+CONFIG_PAGE_COUNTER=y
+# CONFIG_CGROUP_FAVOR_DYNMODS is not set
+CONFIG_MEMCG=y
+CONFIG_MEMCG_KMEM=y
+CONFIG_BLK_CGROUP=y
+CONFIG_CGROUP_WRITEBACK=y
+CONFIG_CGROUP_SCHED=y
+CONFIG_FAIR_GROUP_SCHED=y
+CONFIG_CFS_BANDWIDTH=y
+# CONFIG_RT_GROUP_SCHED is not set
+CONFIG_SCHED_MM_CID=y
+CONFIG_CGROUP_PIDS=y
+# CONFIG_CGROUP_RDMA is not set
+CONFIG_CGROUP_FREEZER=y
+CONFIG_CGROUP_HUGETLB=y
+CONFIG_CPUSETS=y
+# CONFIG_PROC_PID_CPUSET is not set
+CONFIG_CGROUP_DEVICE=y
+CONFIG_CGROUP_CPUACCT=y
+# CONFIG_CGROUP_PERF is not set
+CONFIG_CGROUP_BPF=y
+# CONFIG_CGROUP_MISC is not set
+CONFIG_SOCK_CGROUP_DATA=y
+CONFIG_NAMESPACES=y
+CONFIG_UTS_NS=y
+CONFIG_TIME_NS=y
+CONFIG_IPC_NS=y
+CONFIG_USER_NS=y
+CONFIG_PID_NS=y
+CONFIG_NET_NS=y
+# CONFIG_CHECKPOINT_RESTORE is not set
+CONFIG_SCHED_AUTOGROUP=y
+CONFIG_RELAY=y
+CONFIG_BLK_DEV_INITRD=y
+CONFIG_INITRAMFS_SOURCE=""
+CONFIG_RD_GZIP=y
+# CONFIG_RD_BZIP2 is not set
+# CONFIG_RD_LZMA is not set
+# CONFIG_RD_XZ is not set
+# CONFIG_RD_LZO is not set
+# CONFIG_RD_LZ4 is not set
+CONFIG_RD_ZSTD=y
+CONFIG_BOOT_CONFIG=y
+# CONFIG_BOOT_CONFIG_FORCE is not set
+# CONFIG_BOOT_CONFIG_EMBED is not set
+CONFIG_INITRAMFS_PRESERVE_MTIME=y
+CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE=y
+# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
+CONFIG_HAVE_LD_DEAD_CODE_DATA_ELIMINATION=y
+CONFIG_LD_ORPHAN_WARN=y
+CONFIG_LD_ORPHAN_WARN_LEVEL="warn"
+CONFIG_SYSCTL=y
+CONFIG_SYSCTL_EXCEPTION_TRACE=y
+CONFIG_SYSCTL_ARCH_UNALIGN_ALLOW=y
+# CONFIG_EXPERT is not set
+CONFIG_MULTIUSER=y
+CONFIG_SYSFS_SYSCALL=y
+CONFIG_FHANDLE=y
+CONFIG_POSIX_TIMERS=y
+CONFIG_PRINTK=y
+CONFIG_BUG=y
+CONFIG_ELF_CORE=y
+CONFIG_BASE_FULL=y
+CONFIG_FUTEX=y
+CONFIG_FUTEX_PI=y
+CONFIG_EPOLL=y
+CONFIG_SIGNALFD=y
+CONFIG_TIMERFD=y
+CONFIG_EVENTFD=y
+CONFIG_SHMEM=y
+CONFIG_AIO=y
+CONFIG_IO_URING=y
+CONFIG_ADVISE_SYSCALLS=y
+CONFIG_MEMBARRIER=y
+CONFIG_KCMP=y
+CONFIG_RSEQ=y
+CONFIG_CACHESTAT_SYSCALL=y
+CONFIG_KALLSYMS=y
+# CONFIG_KALLSYMS_SELFTEST is not set
+CONFIG_KALLSYMS_BASE_RELATIVE=y
+CONFIG_HAVE_PERF_EVENTS=y
+
+#
+# Kernel Performance Events And Counters
+#
+CONFIG_PERF_EVENTS=y
+# end of Kernel Performance Events And Counters
+
+CONFIG_SYSTEM_DATA_VERIFICATION=y
+# CONFIG_PROFILING is not set
+
+#
+# Kexec and crash features
+#
+# CONFIG_KEXEC is not set
+# CONFIG_KEXEC_FILE is not set
+# CONFIG_CRASH_DUMP is not set
+# end of Kexec and crash features
+# end of General setup
+
+CONFIG_64BIT=y
+CONFIG_RISCV=y
+CONFIG_GCC_SUPPORTS_DYNAMIC_FTRACE=y
+CONFIG_RISCV_USE_LINKER_RELAXATION=y
+CONFIG_ARCH_MMAP_RND_BITS_MIN=18
+CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=8
+CONFIG_ARCH_MMAP_RND_BITS_MAX=24
+CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MAX=17
+CONFIG_RISCV_SBI=y
+CONFIG_MMU=y
+CONFIG_PAGE_OFFSET=0xff60000000000000
+CONFIG_ARCH_FLATMEM_ENABLE=y
+CONFIG_ARCH_SPARSEMEM_ENABLE=y
+CONFIG_ARCH_SELECT_MEMORY_MODEL=y
+CONFIG_ARCH_SUPPORTS_UPROBES=y
+CONFIG_STACKTRACE_SUPPORT=y
+CONFIG_GENERIC_BUG=y
+CONFIG_GENERIC_BUG_RELATIVE_POINTERS=y
+CONFIG_GENERIC_CALIBRATE_DELAY=y
+CONFIG_GENERIC_CSUM=y
+CONFIG_GENERIC_HWEIGHT=y
+CONFIG_FIX_EARLYCON_MEM=y
+CONFIG_PGTABLE_LEVELS=5
+CONFIG_LOCKDEP_SUPPORT=y
+CONFIG_RISCV_DMA_NONCOHERENT=y
+CONFIG_RISCV_NONSTANDARD_CACHE_OPS=y
+CONFIG_AS_HAS_INSN=y
+CONFIG_AS_HAS_OPTION_ARCH=y
+
+#
+# SoC selection
+#
+# CONFIG_SOC_MICROCHIP_POLARFIRE is not set
+# CONFIG_ARCH_RENESAS is not set
+# CONFIG_SOC_SIFIVE is not set
+# CONFIG_ARCH_SOPHGO is not set
+CONFIG_ARCH_STARFIVE=y
+CONFIG_SOC_STARFIVE=y
+# CONFIG_ARCH_SUNXI is not set
+# CONFIG_ARCH_THEAD is not set
+# CONFIG_SOC_VIRT is not set
+# end of SoC selection
+
+#
+# CPU errata selection
+#
+# CONFIG_ERRATA_ANDES is not set
+CONFIG_ERRATA_SIFIVE=y
+CONFIG_ERRATA_SIFIVE_CIP_453=y
+CONFIG_ERRATA_SIFIVE_CIP_1200=y
+CONFIG_ERRATA_THEAD=y
+CONFIG_ERRATA_THEAD_PBMT=y
+CONFIG_ERRATA_THEAD_CMO=y
+CONFIG_ERRATA_THEAD_PMU=y
+# end of CPU errata selection
+
+#
+# Platform type
+#
+# CONFIG_NONPORTABLE is not set
+CONFIG_ARCH_RV64I=y
+# CONFIG_CMODEL_MEDLOW is not set
+CONFIG_CMODEL_MEDANY=y
+CONFIG_MODULE_SECTIONS=y
+CONFIG_SMP=y
+# CONFIG_SCHED_MC is not set
+CONFIG_NR_CPUS=4
+CONFIG_HOTPLUG_CPU=y
+CONFIG_TUNE_GENERIC=y
+# CONFIG_NUMA is not set
+CONFIG_RISCV_ALTERNATIVE=y
+CONFIG_RISCV_ALTERNATIVE_EARLY=y
+CONFIG_RISCV_ISA_C=y
+CONFIG_RISCV_ISA_SVNAPOT=y
+CONFIG_RISCV_ISA_SVPBMT=y
+CONFIG_TOOLCHAIN_HAS_V=y
+CONFIG_RISCV_ISA_V=y
+CONFIG_RISCV_ISA_V_DEFAULT_ENABLE=y
+CONFIG_RISCV_ISA_V_UCOPY_THRESHOLD=768
+CONFIG_RISCV_ISA_V_PREEMPTIVE=y
+CONFIG_TOOLCHAIN_HAS_ZBB=y
+CONFIG_RISCV_ISA_ZBB=y
+CONFIG_RISCV_ISA_ZICBOM=y
+CONFIG_RISCV_ISA_ZICBOZ=y
+CONFIG_TOOLCHAIN_HAS_ZIHINTPAUSE=y
+CONFIG_TOOLCHAIN_NEEDS_EXPLICIT_ZICSR_ZIFENCEI=y
+CONFIG_FPU=y
+CONFIG_IRQ_STACKS=y
+CONFIG_THREAD_SIZE_ORDER=2
+CONFIG_RISCV_MISALIGNED=y
+# end of Platform type
+
+#
+# Kernel features
+#
+# CONFIG_HZ_100 is not set
+# CONFIG_HZ_250 is not set
+# CONFIG_HZ_300 is not set
+CONFIG_HZ_1000=y
+CONFIG_HZ=1000
+CONFIG_SCHED_HRTICK=y
+CONFIG_RISCV_SBI_V01=y
+# CONFIG_RISCV_BOOT_SPINWAIT is not set
+CONFIG_ARCH_SUPPORTS_KEXEC=y
+CONFIG_ARCH_SUPPORTS_KEXEC_FILE=y
+CONFIG_ARCH_SUPPORTS_KEXEC_PURGATORY=y
+CONFIG_ARCH_SUPPORTS_CRASH_DUMP=y
+CONFIG_COMPAT=y
+# CONFIG_PARAVIRT is not set
+# CONFIG_RELOCATABLE is not set
+# CONFIG_RANDOMIZE_BASE is not set
+# end of Kernel features
+
+#
+# Boot options
+#
+CONFIG_CMDLINE=""
+CONFIG_EFI_STUB=y
+CONFIG_EFI=y
+CONFIG_CC_HAVE_STACKPROTECTOR_TLS=y
+CONFIG_STACKPROTECTOR_PER_TASK=y
+CONFIG_RISCV_ISA_FALLBACK=y
+# end of Boot options
+
+CONFIG_PORTABLE=y
+CONFIG_ARCH_PROC_KCORE_TEXT=y
+
+#
+# Power management options
+#
+CONFIG_SUSPEND=y
+CONFIG_SUSPEND_FREEZER=y
+CONFIG_PM_SLEEP=y
+CONFIG_PM_SLEEP_SMP=y
+# CONFIG_PM_AUTOSLEEP is not set
+# CONFIG_PM_USERSPACE_AUTOSLEEP is not set
+# CONFIG_PM_WAKELOCKS is not set
+CONFIG_PM=y
+# CONFIG_PM_DEBUG is not set
+CONFIG_PM_CLK=y
+CONFIG_PM_GENERIC_DOMAINS=y
+# CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set
+CONFIG_PM_GENERIC_DOMAINS_SLEEP=y
+CONFIG_PM_GENERIC_DOMAINS_OF=y
+CONFIG_CPU_PM=y
+# CONFIG_ENERGY_MODEL is not set
+CONFIG_ARCH_SUSPEND_POSSIBLE=y
+# end of Power management options
+
+#
+# CPU Power Management
+#
+
+#
+# CPU Idle
+#
+CONFIG_CPU_IDLE=y
+CONFIG_CPU_IDLE_MULTIPLE_DRIVERS=y
+# CONFIG_CPU_IDLE_GOV_LADDER is not set
+CONFIG_CPU_IDLE_GOV_MENU=y
+# CONFIG_CPU_IDLE_GOV_TEO is not set
+CONFIG_DT_IDLE_STATES=y
+CONFIG_DT_IDLE_GENPD=y
+
+#
+# RISC-V CPU Idle Drivers
+#
+CONFIG_RISCV_SBI_CPUIDLE=y
+# end of RISC-V CPU Idle Drivers
+# end of CPU Idle
+
+#
+# CPU Frequency scaling
+#
+CONFIG_CPU_FREQ=y
+CONFIG_CPU_FREQ_GOV_ATTR_SET=y
+CONFIG_CPU_FREQ_GOV_COMMON=y
+# CONFIG_CPU_FREQ_STAT is not set
+# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set
+# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set
+# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
+# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set
+# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
+CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL=y
+CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
+CONFIG_CPU_FREQ_GOV_POWERSAVE=m
+CONFIG_CPU_FREQ_GOV_USERSPACE=m
+CONFIG_CPU_FREQ_GOV_ONDEMAND=m
+CONFIG_CPU_FREQ_GOV_CONSERVATIVE=m
+CONFIG_CPU_FREQ_GOV_SCHEDUTIL=y
+
+#
+# CPU frequency scaling drivers
+#
+CONFIG_CPUFREQ_DT=m
+CONFIG_CPUFREQ_DT_PLATDEV=y
+# end of CPU Frequency scaling
+# end of CPU Power Management
+
+# CONFIG_VIRTUALIZATION is not set
+CONFIG_ARCH_SUPPORTS_ACPI=y
+# CONFIG_ACPI is not set
+
+#
+# General architecture-dependent options
+#
+CONFIG_HOTPLUG_CORE_SYNC=y
+CONFIG_HOTPLUG_CORE_SYNC_DEAD=y
+CONFIG_GENERIC_ENTRY=y
+# CONFIG_KPROBES is not set
+CONFIG_JUMP_LABEL=y
+# CONFIG_STATIC_KEYS_SELFTEST is not set
+CONFIG_HAVE_64BIT_ALIGNED_ACCESS=y
+CONFIG_HAVE_KPROBES=y
+CONFIG_HAVE_KRETPROBES=y
+CONFIG_HAVE_KPROBES_ON_FTRACE=y
+CONFIG_HAVE_FUNCTION_ERROR_INJECTION=y
+CONFIG_TRACE_IRQFLAGS_SUPPORT=y
+CONFIG_HAVE_ARCH_TRACEHOOK=y
+CONFIG_HAVE_DMA_CONTIGUOUS=y
+CONFIG_GENERIC_SMP_IDLE_THREAD=y
+CONFIG_GENERIC_IDLE_POLL_SETUP=y
+CONFIG_ARCH_HAS_FORTIFY_SOURCE=y
+CONFIG_ARCH_HAS_SET_MEMORY=y
+CONFIG_ARCH_HAS_SET_DIRECT_MAP=y
+CONFIG_HAVE_ARCH_THREAD_STRUCT_WHITELIST=y
+CONFIG_ARCH_WANTS_NO_INSTR=y
+CONFIG_HAVE_ASM_MODVERSIONS=y
+CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y
+CONFIG_HAVE_RSEQ=y
+CONFIG_HAVE_FUNCTION_ARG_ACCESS_API=y
+CONFIG_HAVE_PERF_REGS=y
+CONFIG_HAVE_PERF_USER_STACK_DUMP=y
+CONFIG_HAVE_ARCH_JUMP_LABEL=y
+CONFIG_HAVE_ARCH_JUMP_LABEL_RELATIVE=y
+CONFIG_MMU_LAZY_TLB_REFCOUNT=y
+CONFIG_HAVE_ARCH_SECCOMP=y
+CONFIG_HAVE_ARCH_SECCOMP_FILTER=y
+CONFIG_SECCOMP=y
+CONFIG_SECCOMP_FILTER=y
+# CONFIG_SECCOMP_CACHE_DEBUG is not set
+CONFIG_HAVE_STACKPROTECTOR=y
+CONFIG_STACKPROTECTOR=y
+CONFIG_STACKPROTECTOR_STRONG=y
+CONFIG_LTO_NONE=y
+CONFIG_ARCH_SUPPORTS_CFI_CLANG=y
+CONFIG_HAVE_CONTEXT_TRACKING_USER=y
+CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y
+CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y
+CONFIG_HAVE_MOVE_PUD=y
+CONFIG_HAVE_MOVE_PMD=y
+CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y
+CONFIG_HAVE_ARCH_HUGE_VMAP=y
+CONFIG_HAVE_ARCH_HUGE_VMALLOC=y
+CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y
+CONFIG_ARCH_WANT_PMD_MKWRITE=y
+CONFIG_HAVE_MOD_ARCH_SPECIFIC=y
+CONFIG_MODULES_USE_ELF_RELA=y
+CONFIG_HAVE_IRQ_EXIT_ON_IRQ_STACK=y
+CONFIG_HAVE_SOFTIRQ_ON_OWN_STACK=y
+CONFIG_SOFTIRQ_ON_OWN_STACK=y
+CONFIG_ARCH_HAS_ELF_RANDOMIZE=y
+CONFIG_HAVE_ARCH_MMAP_RND_BITS=y
+CONFIG_ARCH_MMAP_RND_BITS=18
+CONFIG_HAVE_ARCH_MMAP_RND_COMPAT_BITS=y
+CONFIG_ARCH_MMAP_RND_COMPAT_BITS=8
+CONFIG_PAGE_SIZE_LESS_THAN_64KB=y
+CONFIG_PAGE_SIZE_LESS_THAN_256KB=y
+CONFIG_ARCH_WANT_DEFAULT_TOPDOWN_MMAP_LAYOUT=y
+CONFIG_CLONE_BACKWARDS=y
+CONFIG_COMPAT_32BIT_TIME=y
+CONFIG_HAVE_ARCH_VMAP_STACK=y
+CONFIG_VMAP_STACK=y
+CONFIG_ARCH_OPTIONAL_KERNEL_RWX=y
+CONFIG_ARCH_OPTIONAL_KERNEL_RWX_DEFAULT=y
+CONFIG_ARCH_HAS_STRICT_KERNEL_RWX=y
+CONFIG_STRICT_KERNEL_RWX=y
+CONFIG_ARCH_HAS_STRICT_MODULE_RWX=y
+CONFIG_STRICT_MODULE_RWX=y
+CONFIG_ARCH_USE_MEMREMAP_PROT=y
+CONFIG_ARCH_HAS_VDSO_DATA=y
+CONFIG_HAVE_PREEMPT_DYNAMIC=y
+CONFIG_HAVE_PREEMPT_DYNAMIC_KEY=y
+CONFIG_ARCH_WANT_LD_ORPHAN_WARN=y
+CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
+CONFIG_ARCH_SUPPORTS_PAGE_TABLE_CHECK=y
+CONFIG_DYNAMIC_SIGFRAME=y
+
+#
+# GCOV-based kernel profiling
+#
+CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y
+# end of GCOV-based kernel profiling
+
+CONFIG_HAVE_GCC_PLUGINS=y
+# CONFIG_GCC_PLUGINS is not set
+CONFIG_FUNCTION_ALIGNMENT=0
+# end of General architecture-dependent options
+
+CONFIG_RT_MUTEXES=y
+CONFIG_BASE_SMALL=0
+CONFIG_MODULE_SIG_FORMAT=y
+CONFIG_MODULES=y
+# CONFIG_MODULE_FORCE_LOAD is not set
+CONFIG_MODULE_UNLOAD=y
+# CONFIG_MODULE_FORCE_UNLOAD is not set
+# CONFIG_MODULE_UNLOAD_TAINT_TRACKING is not set
+# CONFIG_MODVERSIONS is not set
+# CONFIG_MODULE_SRCVERSION_ALL is not set
+CONFIG_MODULE_SIG=y
+# CONFIG_MODULE_SIG_FORCE is not set
+CONFIG_MODULE_SIG_ALL=y
+# CONFIG_MODULE_SIG_SHA1 is not set
+CONFIG_MODULE_SIG_SHA256=y
+# CONFIG_MODULE_SIG_SHA384 is not set
+# CONFIG_MODULE_SIG_SHA512 is not set
+# CONFIG_MODULE_SIG_SHA3_256 is not set
+# CONFIG_MODULE_SIG_SHA3_384 is not set
+# CONFIG_MODULE_SIG_SHA3_512 is not set
+CONFIG_MODULE_SIG_HASH="sha256"
+CONFIG_MODULE_COMPRESS_NONE=y
+# CONFIG_MODULE_COMPRESS_GZIP is not set
+# CONFIG_MODULE_COMPRESS_XZ is not set
+# CONFIG_MODULE_COMPRESS_ZSTD is not set
+# CONFIG_MODULE_ALLOW_MISSING_NAMESPACE_IMPORTS is not set
+CONFIG_MODPROBE_PATH="/sbin/modprobe"
+CONFIG_MODULES_TREE_LOOKUP=y
+CONFIG_BLOCK=y
+CONFIG_BLOCK_LEGACY_AUTOLOAD=y
+CONFIG_BLK_CGROUP_RWSTAT=y
+CONFIG_BLK_CGROUP_PUNT_BIO=y
+CONFIG_BLK_DEV_BSG_COMMON=y
+CONFIG_BLK_ICQ=y
+# CONFIG_BLK_DEV_BSGLIB is not set
+CONFIG_BLK_DEV_INTEGRITY=y
+CONFIG_BLK_DEV_INTEGRITY_T10=y
+CONFIG_BLK_DEV_WRITE_MOUNTED=y
+# CONFIG_BLK_DEV_ZONED is not set
+CONFIG_BLK_DEV_THROTTLING=y
+# CONFIG_BLK_DEV_THROTTLING_LOW is not set
+CONFIG_BLK_WBT=y
+CONFIG_BLK_WBT_MQ=y
+CONFIG_BLK_CGROUP_IOLATENCY=y
+# CONFIG_BLK_CGROUP_IOCOST is not set
+CONFIG_BLK_CGROUP_IOPRIO=y
+# CONFIG_BLK_SED_OPAL is not set
+# CONFIG_BLK_INLINE_ENCRYPTION is not set
+
+#
+# Partition Types
+#
+# CONFIG_PARTITION_ADVANCED is not set
+CONFIG_MSDOS_PARTITION=y
+CONFIG_EFI_PARTITION=y
+# end of Partition Types
+
+CONFIG_BLK_MQ_PCI=y
+CONFIG_BLK_MQ_VIRTIO=y
+CONFIG_BLK_PM=y
+CONFIG_BLOCK_HOLDER_DEPRECATED=y
+CONFIG_BLK_MQ_STACKING=y
+
+#
+# IO Schedulers
+#
+CONFIG_MQ_IOSCHED_DEADLINE=m
+CONFIG_MQ_IOSCHED_KYBER=m
+CONFIG_IOSCHED_BFQ=m
+CONFIG_BFQ_GROUP_IOSCHED=y
+# CONFIG_BFQ_CGROUP_DEBUG is not set
+# end of IO Schedulers
+
+CONFIG_PADATA=y
+CONFIG_ASN1=y
+CONFIG_UNINLINE_SPIN_UNLOCK=y
+CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y
+CONFIG_MUTEX_SPIN_ON_OWNER=y
+CONFIG_RWSEM_SPIN_ON_OWNER=y
+CONFIG_LOCK_SPIN_ON_OWNER=y
+CONFIG_ARCH_USE_QUEUED_RWLOCKS=y
+CONFIG_QUEUED_RWLOCKS=y
+CONFIG_ARCH_HAS_MMIOWB=y
+CONFIG_MMIOWB=y
+CONFIG_ARCH_HAS_NON_OVERLAPPING_ADDRESS_SPACE=y
+CONFIG_ARCH_HAS_SYSCALL_WRAPPER=y
+CONFIG_FREEZER=y
+
+#
+# Executable file formats
+#
+CONFIG_BINFMT_ELF=y
+CONFIG_COMPAT_BINFMT_ELF=y
+CONFIG_ELFCORE=y
+# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
+CONFIG_BINFMT_SCRIPT=y
+CONFIG_ARCH_HAS_BINFMT_FLAT=y
+# CONFIG_BINFMT_FLAT is not set
+CONFIG_BINFMT_MISC=m
+CONFIG_COREDUMP=y
+# end of Executable file formats
+
+#
+# Memory Management options
+#
+CONFIG_ZPOOL=y
+CONFIG_SWAP=y
+CONFIG_ZSWAP=y
+# CONFIG_ZSWAP_DEFAULT_ON is not set
+# CONFIG_ZSWAP_EXCLUSIVE_LOADS_DEFAULT_ON is not set
+# CONFIG_ZSWAP_SHRINKER_DEFAULT_ON is not set
+# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_DEFLATE is not set
+CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZO=y
+# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_842 is not set
+# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZ4 is not set
+# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZ4HC is not set
+# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_ZSTD is not set
+CONFIG_ZSWAP_COMPRESSOR_DEFAULT="lzo"
+CONFIG_ZSWAP_ZPOOL_DEFAULT_ZBUD=y
+# CONFIG_ZSWAP_ZPOOL_DEFAULT_Z3FOLD is not set
+# CONFIG_ZSWAP_ZPOOL_DEFAULT_ZSMALLOC is not set
+CONFIG_ZSWAP_ZPOOL_DEFAULT="zbud"
+CONFIG_ZBUD=y
+CONFIG_Z3FOLD=y
+CONFIG_ZSMALLOC=m
+# CONFIG_ZSMALLOC_STAT is not set
+CONFIG_ZSMALLOC_CHAIN_SIZE=8
+
+#
+# Slab allocator options
+#
+CONFIG_SLUB=y
+CONFIG_SLAB_MERGE_DEFAULT=y
+CONFIG_SLAB_FREELIST_RANDOM=y
+# CONFIG_SLAB_FREELIST_HARDENED is not set
+# CONFIG_SLUB_STATS is not set
+CONFIG_SLUB_CPU_PARTIAL=y
+# CONFIG_RANDOM_KMALLOC_CACHES is not set
+# end of Slab allocator options
+
+CONFIG_SHUFFLE_PAGE_ALLOCATOR=y
+CONFIG_COMPAT_BRK=y
+CONFIG_SELECT_MEMORY_MODEL=y
+CONFIG_FLATMEM_MANUAL=y
+# CONFIG_SPARSEMEM_MANUAL is not set
+CONFIG_FLATMEM=y
+CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y
+CONFIG_ARCH_WANT_OPTIMIZE_HUGETLB_VMEMMAP=y
+CONFIG_MEMORY_ISOLATION=y
+CONFIG_SPLIT_PTLOCK_CPUS=4
+CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK=y
+CONFIG_MEMORY_BALLOON=y
+CONFIG_BALLOON_COMPACTION=y
+CONFIG_COMPACTION=y
+CONFIG_COMPACT_UNEVICTABLE_DEFAULT=1
+CONFIG_PAGE_REPORTING=y
+CONFIG_MIGRATION=y
+CONFIG_ARCH_ENABLE_HUGEPAGE_MIGRATION=y
+CONFIG_ARCH_ENABLE_THP_MIGRATION=y
+CONFIG_CONTIG_ALLOC=y
+CONFIG_PCP_BATCH_SCALE_MAX=5
+CONFIG_PHYS_ADDR_T_64BIT=y
+CONFIG_KSM=y
+CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
+CONFIG_ARCH_WANTS_THP_SWAP=y
+CONFIG_TRANSPARENT_HUGEPAGE=y
+CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y
+# CONFIG_TRANSPARENT_HUGEPAGE_MADVISE is not set
+# CONFIG_TRANSPARENT_HUGEPAGE_NEVER is not set
+CONFIG_THP_SWAP=y
+# CONFIG_READ_ONLY_THP_FOR_FS is not set
+CONFIG_CMA=y
+# CONFIG_CMA_SYSFS is not set
+CONFIG_CMA_AREAS=7
+CONFIG_GENERIC_EARLY_IOREMAP=y
+# CONFIG_IDLE_PAGE_TRACKING is not set
+CONFIG_ARCH_HAS_CURRENT_STACK_POINTER=y
+CONFIG_ZONE_DMA32=y
+CONFIG_VM_EVENT_COUNTERS=y
+# CONFIG_PERCPU_STATS is not set
+
+#
+# GUP_TEST needs to have DEBUG_FS enabled
+#
+# CONFIG_DMAPOOL_TEST is not set
+CONFIG_ARCH_HAS_PTE_SPECIAL=y
+CONFIG_MEMFD_CREATE=y
+CONFIG_SECRETMEM=y
+# CONFIG_ANON_VMA_NAME is not set
+# CONFIG_USERFAULTFD is not set
+CONFIG_LRU_GEN=y
+CONFIG_LRU_GEN_ENABLED=y
+# CONFIG_LRU_GEN_STATS is not set
+CONFIG_ARCH_SUPPORTS_PER_VMA_LOCK=y
+CONFIG_PER_VMA_LOCK=y
+CONFIG_LOCK_MM_AND_FIND_VMA=y
+
+#
+# Data Access Monitoring
+#
+# CONFIG_DAMON is not set
+# end of Data Access Monitoring
+# end of Memory Management options
+
+CONFIG_NET=y
+CONFIG_COMPAT_NETLINK_MESSAGES=y
+CONFIG_NET_INGRESS=y
+CONFIG_NET_EGRESS=y
+CONFIG_NET_XGRESS=y
+CONFIG_NET_REDIRECT=y
+CONFIG_SKB_EXTENSIONS=y
+
+#
+# Networking options
+#
+CONFIG_PACKET=m
+CONFIG_PACKET_DIAG=m
+CONFIG_UNIX=y
+CONFIG_UNIX_SCM=y
+CONFIG_AF_UNIX_OOB=y
+CONFIG_UNIX_DIAG=m
+CONFIG_TLS=m
+# CONFIG_TLS_DEVICE is not set
+# CONFIG_TLS_TOE is not set
+CONFIG_XFRM=y
+CONFIG_XFRM_ALGO=m
+CONFIG_XFRM_USER=m
+CONFIG_XFRM_INTERFACE=m
+CONFIG_XFRM_SUB_POLICY=y
+CONFIG_XFRM_MIGRATE=y
+CONFIG_XFRM_STATISTICS=y
+CONFIG_XFRM_AH=m
+CONFIG_XFRM_ESP=m
+CONFIG_XFRM_IPCOMP=m
+CONFIG_NET_KEY=m
+CONFIG_NET_KEY_MIGRATE=y
+# CONFIG_XDP_SOCKETS is not set
+CONFIG_NET_HANDSHAKE=y
+CONFIG_INET=y
+CONFIG_IP_MULTICAST=y
+CONFIG_IP_ADVANCED_ROUTER=y
+# CONFIG_IP_FIB_TRIE_STATS is not set
+CONFIG_IP_MULTIPLE_TABLES=y
+CONFIG_IP_ROUTE_MULTIPATH=y
+CONFIG_IP_ROUTE_VERBOSE=y
+CONFIG_IP_ROUTE_CLASSID=y
+# CONFIG_IP_PNP is not set
+CONFIG_NET_IPIP=m
+CONFIG_NET_IPGRE_DEMUX=m
+CONFIG_NET_IP_TUNNEL=m
+CONFIG_NET_IPGRE=m
+CONFIG_NET_IPGRE_BROADCAST=y
+CONFIG_IP_MROUTE_COMMON=y
+CONFIG_IP_MROUTE=y
+CONFIG_IP_MROUTE_MULTIPLE_TABLES=y
+# CONFIG_IP_PIMSM_V1 is not set
+CONFIG_IP_PIMSM_V2=y
+CONFIG_SYN_COOKIES=y
+CONFIG_NET_IPVTI=m
+CONFIG_NET_UDP_TUNNEL=m
+CONFIG_NET_FOU=m
+CONFIG_NET_FOU_IP_TUNNELS=y
+CONFIG_INET_AH=m
+CONFIG_INET_ESP=m
+# CONFIG_INET_ESP_OFFLOAD is not set
+# CONFIG_INET_ESPINTCP is not set
+CONFIG_INET_IPCOMP=m
+CONFIG_INET_TABLE_PERTURB_ORDER=16
+CONFIG_INET_XFRM_TUNNEL=m
+CONFIG_INET_TUNNEL=m
+CONFIG_INET_DIAG=m
+CONFIG_INET_TCP_DIAG=m
+CONFIG_INET_UDP_DIAG=m
+# CONFIG_INET_RAW_DIAG is not set
+CONFIG_INET_DIAG_DESTROY=y
+CONFIG_TCP_CONG_ADVANCED=y
+CONFIG_TCP_CONG_BIC=m
+CONFIG_TCP_CONG_CUBIC=y
+CONFIG_TCP_CONG_WESTWOOD=m
+CONFIG_TCP_CONG_HTCP=m
+CONFIG_TCP_CONG_HSTCP=m
+CONFIG_TCP_CONG_HYBLA=m
+CONFIG_TCP_CONG_VEGAS=m
+CONFIG_TCP_CONG_NV=m
+CONFIG_TCP_CONG_SCALABLE=m
+CONFIG_TCP_CONG_LP=m
+CONFIG_TCP_CONG_VENO=m
+CONFIG_TCP_CONG_YEAH=m
+CONFIG_TCP_CONG_ILLINOIS=m
+CONFIG_TCP_CONG_DCTCP=m
+CONFIG_TCP_CONG_CDG=m
+CONFIG_TCP_CONG_BBR=m
+CONFIG_DEFAULT_CUBIC=y
+# CONFIG_DEFAULT_RENO is not set
+CONFIG_DEFAULT_TCP_CONG="cubic"
+CONFIG_TCP_SIGPOOL=y
+# CONFIG_TCP_AO is not set
+CONFIG_TCP_MD5SIG=y
+CONFIG_IPV6=y
+CONFIG_IPV6_ROUTER_PREF=y
+CONFIG_IPV6_ROUTE_INFO=y
+# CONFIG_IPV6_OPTIMISTIC_DAD is not set
+CONFIG_INET6_AH=m
+CONFIG_INET6_ESP=m
+# CONFIG_INET6_ESP_OFFLOAD is not set
+# CONFIG_INET6_ESPINTCP is not set
+CONFIG_INET6_IPCOMP=m
+CONFIG_IPV6_MIP6=m
+CONFIG_IPV6_ILA=m
+CONFIG_INET6_XFRM_TUNNEL=m
+CONFIG_INET6_TUNNEL=m
+CONFIG_IPV6_VTI=m
+CONFIG_IPV6_SIT=m
+CONFIG_IPV6_SIT_6RD=y
+CONFIG_IPV6_NDISC_NODETYPE=y
+CONFIG_IPV6_TUNNEL=m
+CONFIG_IPV6_GRE=m
+CONFIG_IPV6_FOU=m
+CONFIG_IPV6_FOU_TUNNEL=m
+CONFIG_IPV6_MULTIPLE_TABLES=y
+CONFIG_IPV6_SUBTREES=y
+CONFIG_IPV6_MROUTE=y
+CONFIG_IPV6_MROUTE_MULTIPLE_TABLES=y
+CONFIG_IPV6_PIMSM_V2=y
+# CONFIG_IPV6_SEG6_LWTUNNEL is not set
+# CONFIG_IPV6_SEG6_HMAC is not set
+# CONFIG_IPV6_RPL_LWTUNNEL is not set
+# CONFIG_IPV6_IOAM6_LWTUNNEL is not set
+# CONFIG_NETLABEL is not set
+CONFIG_MPTCP=y
+CONFIG_INET_MPTCP_DIAG=m
+CONFIG_MPTCP_IPV6=y
+# CONFIG_NETWORK_SECMARK is not set
+# CONFIG_NETWORK_PHY_TIMESTAMPING is not set
+CONFIG_NETFILTER=y
+CONFIG_NETFILTER_ADVANCED=y
+CONFIG_BRIDGE_NETFILTER=m
+
+#
+# Core Netfilter Configuration
+#
+CONFIG_NETFILTER_INGRESS=y
+CONFIG_NETFILTER_EGRESS=y
+CONFIG_NETFILTER_SKIP_EGRESS=y
+CONFIG_NETFILTER_NETLINK=m
+CONFIG_NETFILTER_FAMILY_BRIDGE=y
+CONFIG_NETFILTER_FAMILY_ARP=y
+CONFIG_NETFILTER_BPF_LINK=y
+# CONFIG_NETFILTER_NETLINK_HOOK is not set
+CONFIG_NETFILTER_NETLINK_ACCT=m
+CONFIG_NETFILTER_NETLINK_QUEUE=m
+CONFIG_NETFILTER_NETLINK_LOG=m
+CONFIG_NETFILTER_NETLINK_OSF=m
+CONFIG_NF_CONNTRACK=m
+CONFIG_NF_LOG_SYSLOG=m
+CONFIG_NETFILTER_CONNCOUNT=m
+CONFIG_NF_CONNTRACK_MARK=y
+CONFIG_NF_CONNTRACK_ZONES=y
+CONFIG_NF_CONNTRACK_PROCFS=y
+CONFIG_NF_CONNTRACK_EVENTS=y
+CONFIG_NF_CONNTRACK_TIMEOUT=y
+CONFIG_NF_CONNTRACK_TIMESTAMP=y
+CONFIG_NF_CONNTRACK_LABELS=y
+CONFIG_NF_CT_PROTO_DCCP=y
+CONFIG_NF_CT_PROTO_GRE=y
+CONFIG_NF_CT_PROTO_SCTP=y
+CONFIG_NF_CT_PROTO_UDPLITE=y
+CONFIG_NF_CONNTRACK_AMANDA=m
+CONFIG_NF_CONNTRACK_FTP=m
+CONFIG_NF_CONNTRACK_H323=m
+CONFIG_NF_CONNTRACK_IRC=m
+CONFIG_NF_CONNTRACK_BROADCAST=m
+CONFIG_NF_CONNTRACK_NETBIOS_NS=m
+CONFIG_NF_CONNTRACK_SNMP=m
+CONFIG_NF_CONNTRACK_PPTP=m
+CONFIG_NF_CONNTRACK_SANE=m
+CONFIG_NF_CONNTRACK_SIP=m
+CONFIG_NF_CONNTRACK_TFTP=m
+CONFIG_NF_CT_NETLINK=m
+CONFIG_NF_CT_NETLINK_TIMEOUT=m
+CONFIG_NF_CT_NETLINK_HELPER=m
+CONFIG_NETFILTER_NETLINK_GLUE_CT=y
+CONFIG_NF_NAT=m
+CONFIG_NF_NAT_AMANDA=m
+CONFIG_NF_NAT_FTP=m
+CONFIG_NF_NAT_IRC=m
+CONFIG_NF_NAT_SIP=m
+CONFIG_NF_NAT_TFTP=m
+CONFIG_NF_NAT_REDIRECT=y
+CONFIG_NF_NAT_MASQUERADE=y
+CONFIG_NETFILTER_SYNPROXY=m
+CONFIG_NF_TABLES=m
+CONFIG_NF_TABLES_INET=y
+CONFIG_NF_TABLES_NETDEV=y
+# CONFIG_NFT_NUMGEN is not set
+CONFIG_NFT_CT=m
+CONFIG_NFT_FLOW_OFFLOAD=m
+CONFIG_NFT_CONNLIMIT=m
+CONFIG_NFT_LOG=m
+CONFIG_NFT_LIMIT=m
+CONFIG_NFT_MASQ=m
+CONFIG_NFT_REDIR=m
+CONFIG_NFT_NAT=m
+CONFIG_NFT_TUNNEL=m
+CONFIG_NFT_QUEUE=m
+CONFIG_NFT_QUOTA=m
+CONFIG_NFT_REJECT=m
+CONFIG_NFT_REJECT_INET=m
+CONFIG_NFT_COMPAT=m
+CONFIG_NFT_HASH=m
+CONFIG_NFT_FIB=m
+CONFIG_NFT_FIB_INET=m
+CONFIG_NFT_XFRM=m
+CONFIG_NFT_SOCKET=m
+CONFIG_NFT_OSF=m
+CONFIG_NFT_TPROXY=m
+CONFIG_NFT_SYNPROXY=m
+CONFIG_NF_DUP_NETDEV=m
+CONFIG_NFT_DUP_NETDEV=m
+CONFIG_NFT_FWD_NETDEV=m
+CONFIG_NFT_FIB_NETDEV=m
+CONFIG_NFT_REJECT_NETDEV=m
+CONFIG_NF_FLOW_TABLE_INET=m
+CONFIG_NF_FLOW_TABLE=m
+# CONFIG_NF_FLOW_TABLE_PROCFS is not set
+CONFIG_NETFILTER_XTABLES=m
+CONFIG_NETFILTER_XTABLES_COMPAT=y
+
+#
+# Xtables combined modules
+#
+CONFIG_NETFILTER_XT_MARK=m
+CONFIG_NETFILTER_XT_CONNMARK=m
+CONFIG_NETFILTER_XT_SET=m
+
+#
+# Xtables targets
+#
+CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m
+CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
+CONFIG_NETFILTER_XT_TARGET_CONNMARK=m
+CONFIG_NETFILTER_XT_TARGET_CT=m
+CONFIG_NETFILTER_XT_TARGET_DSCP=m
+CONFIG_NETFILTER_XT_TARGET_HL=m
+CONFIG_NETFILTER_XT_TARGET_HMARK=m
+CONFIG_NETFILTER_XT_TARGET_IDLETIMER=m
+CONFIG_NETFILTER_XT_TARGET_LED=m
+CONFIG_NETFILTER_XT_TARGET_LOG=m
+CONFIG_NETFILTER_XT_TARGET_MARK=m
+CONFIG_NETFILTER_XT_NAT=m
+CONFIG_NETFILTER_XT_TARGET_NETMAP=m
+CONFIG_NETFILTER_XT_TARGET_NFLOG=m
+CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
+CONFIG_NETFILTER_XT_TARGET_NOTRACK=m
+CONFIG_NETFILTER_XT_TARGET_RATEEST=m
+CONFIG_NETFILTER_XT_TARGET_REDIRECT=m
+CONFIG_NETFILTER_XT_TARGET_MASQUERADE=m
+CONFIG_NETFILTER_XT_TARGET_TEE=m
+CONFIG_NETFILTER_XT_TARGET_TPROXY=m
+CONFIG_NETFILTER_XT_TARGET_TRACE=m
+CONFIG_NETFILTER_XT_TARGET_TCPMSS=m
+CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m
+
+#
+# Xtables matches
+#
+CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m
+CONFIG_NETFILTER_XT_MATCH_BPF=m
+CONFIG_NETFILTER_XT_MATCH_CGROUP=m
+CONFIG_NETFILTER_XT_MATCH_CLUSTER=m
+CONFIG_NETFILTER_XT_MATCH_COMMENT=m
+CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m
+CONFIG_NETFILTER_XT_MATCH_CONNLABEL=m
+CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m
+CONFIG_NETFILTER_XT_MATCH_CONNMARK=m
+CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
+CONFIG_NETFILTER_XT_MATCH_CPU=m
+CONFIG_NETFILTER_XT_MATCH_DCCP=m
+CONFIG_NETFILTER_XT_MATCH_DEVGROUP=m
+CONFIG_NETFILTER_XT_MATCH_DSCP=m
+CONFIG_NETFILTER_XT_MATCH_ECN=m
+CONFIG_NETFILTER_XT_MATCH_ESP=m
+CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
+CONFIG_NETFILTER_XT_MATCH_HELPER=m
+CONFIG_NETFILTER_XT_MATCH_HL=m
+CONFIG_NETFILTER_XT_MATCH_IPCOMP=m
+CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
+CONFIG_NETFILTER_XT_MATCH_IPVS=m
+CONFIG_NETFILTER_XT_MATCH_L2TP=m
+CONFIG_NETFILTER_XT_MATCH_LENGTH=m
+CONFIG_NETFILTER_XT_MATCH_LIMIT=m
+CONFIG_NETFILTER_XT_MATCH_MAC=m
+CONFIG_NETFILTER_XT_MATCH_MARK=m
+CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
+CONFIG_NETFILTER_XT_MATCH_NFACCT=m
+CONFIG_NETFILTER_XT_MATCH_OSF=m
+CONFIG_NETFILTER_XT_MATCH_OWNER=m
+CONFIG_NETFILTER_XT_MATCH_POLICY=m
+CONFIG_NETFILTER_XT_MATCH_PHYSDEV=m
+CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m
+CONFIG_NETFILTER_XT_MATCH_QUOTA=m
+CONFIG_NETFILTER_XT_MATCH_RATEEST=m
+CONFIG_NETFILTER_XT_MATCH_REALM=m
+CONFIG_NETFILTER_XT_MATCH_RECENT=m
+CONFIG_NETFILTER_XT_MATCH_SCTP=m
+CONFIG_NETFILTER_XT_MATCH_SOCKET=m
+CONFIG_NETFILTER_XT_MATCH_STATE=m
+CONFIG_NETFILTER_XT_MATCH_STATISTIC=m
+CONFIG_NETFILTER_XT_MATCH_STRING=m
+CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
+CONFIG_NETFILTER_XT_MATCH_TIME=m
+CONFIG_NETFILTER_XT_MATCH_U32=m
+# end of Core Netfilter Configuration
+
+CONFIG_IP_SET=m
+CONFIG_IP_SET_MAX=256
+CONFIG_IP_SET_BITMAP_IP=m
+CONFIG_IP_SET_BITMAP_IPMAC=m
+CONFIG_IP_SET_BITMAP_PORT=m
+CONFIG_IP_SET_HASH_IP=m
+CONFIG_IP_SET_HASH_IPMARK=m
+CONFIG_IP_SET_HASH_IPPORT=m
+CONFIG_IP_SET_HASH_IPPORTIP=m
+CONFIG_IP_SET_HASH_IPPORTNET=m
+CONFIG_IP_SET_HASH_IPMAC=m
+CONFIG_IP_SET_HASH_MAC=m
+CONFIG_IP_SET_HASH_NETPORTNET=m
+CONFIG_IP_SET_HASH_NET=m
+CONFIG_IP_SET_HASH_NETNET=m
+CONFIG_IP_SET_HASH_NETPORT=m
+CONFIG_IP_SET_HASH_NETIFACE=m
+CONFIG_IP_SET_LIST_SET=m
+CONFIG_IP_VS=m
+CONFIG_IP_VS_IPV6=y
+# CONFIG_IP_VS_DEBUG is not set
+CONFIG_IP_VS_TAB_BITS=12
+
+#
+# IPVS transport protocol load balancing support
+#
+CONFIG_IP_VS_PROTO_TCP=y
+CONFIG_IP_VS_PROTO_UDP=y
+CONFIG_IP_VS_PROTO_AH_ESP=y
+CONFIG_IP_VS_PROTO_ESP=y
+CONFIG_IP_VS_PROTO_AH=y
+CONFIG_IP_VS_PROTO_SCTP=y
+
+#
+# IPVS scheduler
+#
+CONFIG_IP_VS_RR=m
+CONFIG_IP_VS_WRR=m
+CONFIG_IP_VS_LC=m
+CONFIG_IP_VS_WLC=m
+CONFIG_IP_VS_FO=m
+CONFIG_IP_VS_OVF=m
+CONFIG_IP_VS_LBLC=m
+CONFIG_IP_VS_LBLCR=m
+CONFIG_IP_VS_DH=m
+CONFIG_IP_VS_SH=m
+CONFIG_IP_VS_MH=m
+CONFIG_IP_VS_SED=m
+CONFIG_IP_VS_NQ=m
+CONFIG_IP_VS_TWOS=m
+
+#
+# IPVS SH scheduler
+#
+CONFIG_IP_VS_SH_TAB_BITS=8
+
+#
+# IPVS MH scheduler
+#
+CONFIG_IP_VS_MH_TAB_INDEX=12
+
+#
+# IPVS application helper
+#
+CONFIG_IP_VS_FTP=m
+CONFIG_IP_VS_NFCT=y
+CONFIG_IP_VS_PE_SIP=m
+
+#
+# IP: Netfilter Configuration
+#
+CONFIG_NF_DEFRAG_IPV4=m
+CONFIG_NF_SOCKET_IPV4=m
+CONFIG_NF_TPROXY_IPV4=m
+CONFIG_NF_TABLES_IPV4=y
+CONFIG_NFT_REJECT_IPV4=m
+CONFIG_NFT_DUP_IPV4=m
+CONFIG_NFT_FIB_IPV4=m
+CONFIG_NF_TABLES_ARP=y
+CONFIG_NF_DUP_IPV4=m
+CONFIG_NF_LOG_ARP=m
+CONFIG_NF_LOG_IPV4=m
+CONFIG_NF_REJECT_IPV4=m
+CONFIG_NF_NAT_SNMP_BASIC=m
+CONFIG_NF_NAT_PPTP=m
+CONFIG_NF_NAT_H323=m
+CONFIG_IP_NF_IPTABLES=m
+CONFIG_IP_NF_MATCH_AH=m
+CONFIG_IP_NF_MATCH_ECN=m
+CONFIG_IP_NF_MATCH_RPFILTER=m
+CONFIG_IP_NF_MATCH_TTL=m
+CONFIG_IP_NF_FILTER=m
+CONFIG_IP_NF_TARGET_REJECT=m
+CONFIG_IP_NF_TARGET_SYNPROXY=m
+CONFIG_IP_NF_NAT=m
+CONFIG_IP_NF_TARGET_MASQUERADE=m
+CONFIG_IP_NF_TARGET_NETMAP=m
+CONFIG_IP_NF_TARGET_REDIRECT=m
+CONFIG_IP_NF_MANGLE=m
+CONFIG_IP_NF_TARGET_ECN=m
+CONFIG_IP_NF_TARGET_TTL=m
+CONFIG_IP_NF_RAW=m
+# CONFIG_IP_NF_SECURITY is not set
+CONFIG_IP_NF_ARPTABLES=m
+CONFIG_IP_NF_ARPFILTER=m
+CONFIG_IP_NF_ARP_MANGLE=m
+# end of IP: Netfilter Configuration
+
+#
+# IPv6: Netfilter Configuration
+#
+CONFIG_NF_SOCKET_IPV6=m
+CONFIG_NF_TPROXY_IPV6=m
+CONFIG_NF_TABLES_IPV6=y
+CONFIG_NFT_REJECT_IPV6=m
+CONFIG_NFT_DUP_IPV6=m
+CONFIG_NFT_FIB_IPV6=m
+CONFIG_NF_DUP_IPV6=m
+CONFIG_NF_REJECT_IPV6=m
+CONFIG_NF_LOG_IPV6=m
+CONFIG_IP6_NF_IPTABLES=m
+CONFIG_IP6_NF_MATCH_AH=m
+CONFIG_IP6_NF_MATCH_EUI64=m
+CONFIG_IP6_NF_MATCH_FRAG=m
+CONFIG_IP6_NF_MATCH_OPTS=m
+CONFIG_IP6_NF_MATCH_HL=m
+CONFIG_IP6_NF_MATCH_IPV6HEADER=m
+CONFIG_IP6_NF_MATCH_MH=m
+CONFIG_IP6_NF_MATCH_RPFILTER=m
+CONFIG_IP6_NF_MATCH_RT=m
+CONFIG_IP6_NF_MATCH_SRH=m
+CONFIG_IP6_NF_TARGET_HL=m
+CONFIG_IP6_NF_FILTER=m
+CONFIG_IP6_NF_TARGET_REJECT=m
+CONFIG_IP6_NF_TARGET_SYNPROXY=m
+CONFIG_IP6_NF_MANGLE=m
+CONFIG_IP6_NF_RAW=m
+CONFIG_IP6_NF_SECURITY=m
+CONFIG_IP6_NF_NAT=m
+CONFIG_IP6_NF_TARGET_MASQUERADE=m
+CONFIG_IP6_NF_TARGET_NPT=m
+# end of IPv6: Netfilter Configuration
+
+CONFIG_NF_DEFRAG_IPV6=m
+CONFIG_NF_TABLES_BRIDGE=m
+# CONFIG_NFT_BRIDGE_META is not set
+CONFIG_NFT_BRIDGE_REJECT=m
+CONFIG_NF_CONNTRACK_BRIDGE=m
+CONFIG_BRIDGE_NF_EBTABLES=m
+CONFIG_BRIDGE_EBT_BROUTE=m
+CONFIG_BRIDGE_EBT_T_FILTER=m
+CONFIG_BRIDGE_EBT_T_NAT=m
+CONFIG_BRIDGE_EBT_802_3=m
+CONFIG_BRIDGE_EBT_AMONG=m
+CONFIG_BRIDGE_EBT_ARP=m
+CONFIG_BRIDGE_EBT_IP=m
+CONFIG_BRIDGE_EBT_IP6=m
+CONFIG_BRIDGE_EBT_LIMIT=m
+CONFIG_BRIDGE_EBT_MARK=m
+CONFIG_BRIDGE_EBT_PKTTYPE=m
+CONFIG_BRIDGE_EBT_STP=m
+CONFIG_BRIDGE_EBT_VLAN=m
+CONFIG_BRIDGE_EBT_ARPREPLY=m
+CONFIG_BRIDGE_EBT_DNAT=m
+CONFIG_BRIDGE_EBT_MARK_T=m
+CONFIG_BRIDGE_EBT_REDIRECT=m
+CONFIG_BRIDGE_EBT_SNAT=m
+CONFIG_BRIDGE_EBT_LOG=m
+CONFIG_BRIDGE_EBT_NFLOG=m
+CONFIG_IP_DCCP=m
+CONFIG_INET_DCCP_DIAG=m
+
+#
+# DCCP CCIDs Configuration
+#
+# CONFIG_IP_DCCP_CCID2_DEBUG is not set
+CONFIG_IP_DCCP_CCID3=y
+# CONFIG_IP_DCCP_CCID3_DEBUG is not set
+CONFIG_IP_DCCP_TFRC_LIB=y
+# end of DCCP CCIDs Configuration
+
+CONFIG_IP_SCTP=m
+# CONFIG_SCTP_DBG_OBJCNT is not set
+# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set
+CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y
+# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set
+CONFIG_SCTP_COOKIE_HMAC_MD5=y
+CONFIG_SCTP_COOKIE_HMAC_SHA1=y
+CONFIG_INET_SCTP_DIAG=m
+CONFIG_RDS=m
+# CONFIG_RDS_TCP is not set
+# CONFIG_RDS_DEBUG is not set
+CONFIG_TIPC=m
+CONFIG_TIPC_MEDIA_UDP=y
+CONFIG_TIPC_CRYPTO=y
+CONFIG_TIPC_DIAG=m
+CONFIG_ATM=m
+CONFIG_ATM_CLIP=m
+# CONFIG_ATM_CLIP_NO_ICMP is not set
+CONFIG_ATM_LANE=m
+CONFIG_ATM_MPOA=m
+CONFIG_ATM_BR2684=m
+# CONFIG_ATM_BR2684_IPFILTER is not set
+CONFIG_L2TP=m
+CONFIG_L2TP_V3=y
+CONFIG_L2TP_IP=m
+CONFIG_L2TP_ETH=m
+CONFIG_STP=m
+CONFIG_GARP=m
+CONFIG_MRP=m
+CONFIG_BRIDGE=m
+CONFIG_BRIDGE_IGMP_SNOOPING=y
+CONFIG_BRIDGE_VLAN_FILTERING=y
+# CONFIG_BRIDGE_MRP is not set
+# CONFIG_BRIDGE_CFM is not set
+# CONFIG_NET_DSA is not set
+CONFIG_VLAN_8021Q=m
+CONFIG_VLAN_8021Q_GVRP=y
+CONFIG_VLAN_8021Q_MVRP=y
+CONFIG_LLC=m
+CONFIG_LLC2=m
+# CONFIG_ATALK is not set
+CONFIG_X25=m
+CONFIG_LAPB=m
+CONFIG_PHONET=m
+CONFIG_6LOWPAN=m
+CONFIG_6LOWPAN_NHC=m
+CONFIG_6LOWPAN_NHC_DEST=m
+CONFIG_6LOWPAN_NHC_FRAGMENT=m
+CONFIG_6LOWPAN_NHC_HOP=m
+CONFIG_6LOWPAN_NHC_IPV6=m
+CONFIG_6LOWPAN_NHC_MOBILITY=m
+CONFIG_6LOWPAN_NHC_ROUTING=m
+CONFIG_6LOWPAN_NHC_UDP=m
+CONFIG_6LOWPAN_GHC_EXT_HDR_HOP=m
+CONFIG_6LOWPAN_GHC_UDP=m
+CONFIG_6LOWPAN_GHC_ICMPV6=m
+CONFIG_6LOWPAN_GHC_EXT_HDR_DEST=m
+CONFIG_6LOWPAN_GHC_EXT_HDR_FRAG=m
+CONFIG_6LOWPAN_GHC_EXT_HDR_ROUTE=m
+CONFIG_IEEE802154=m
+# CONFIG_IEEE802154_NL802154_EXPERIMENTAL is not set
+CONFIG_IEEE802154_SOCKET=m
+CONFIG_IEEE802154_6LOWPAN=m
+CONFIG_MAC802154=m
+CONFIG_NET_SCHED=y
+
+#
+# Queueing/Scheduling
+#
+CONFIG_NET_SCH_HTB=m
+CONFIG_NET_SCH_HFSC=m
+CONFIG_NET_SCH_PRIO=m
+CONFIG_NET_SCH_MULTIQ=m
+CONFIG_NET_SCH_RED=m
+CONFIG_NET_SCH_SFB=m
+CONFIG_NET_SCH_SFQ=m
+CONFIG_NET_SCH_TEQL=m
+CONFIG_NET_SCH_TBF=m
+CONFIG_NET_SCH_CBS=m
+CONFIG_NET_SCH_ETF=m
+CONFIG_NET_SCH_MQPRIO_LIB=m
+CONFIG_NET_SCH_TAPRIO=m
+CONFIG_NET_SCH_GRED=m
+CONFIG_NET_SCH_NETEM=m
+CONFIG_NET_SCH_DRR=m
+CONFIG_NET_SCH_MQPRIO=m
+CONFIG_NET_SCH_SKBPRIO=m
+CONFIG_NET_SCH_CHOKE=m
+CONFIG_NET_SCH_QFQ=m
+CONFIG_NET_SCH_CODEL=m
+CONFIG_NET_SCH_FQ_CODEL=m
+CONFIG_NET_SCH_CAKE=m
+CONFIG_NET_SCH_FQ=m
+CONFIG_NET_SCH_HHF=m
+CONFIG_NET_SCH_PIE=m
+CONFIG_NET_SCH_FQ_PIE=m
+CONFIG_NET_SCH_INGRESS=m
+CONFIG_NET_SCH_PLUG=m
+CONFIG_NET_SCH_ETS=m
+# CONFIG_NET_SCH_DEFAULT is not set
+
+#
+# Classification
+#
+CONFIG_NET_CLS=y
+CONFIG_NET_CLS_BASIC=m
+CONFIG_NET_CLS_ROUTE4=m
+CONFIG_NET_CLS_FW=m
+CONFIG_NET_CLS_U32=m
+CONFIG_CLS_U32_PERF=y
+CONFIG_CLS_U32_MARK=y
+CONFIG_NET_CLS_FLOW=m
+CONFIG_NET_CLS_CGROUP=m
+CONFIG_NET_CLS_BPF=m
+CONFIG_NET_CLS_FLOWER=m
+CONFIG_NET_CLS_MATCHALL=m
+CONFIG_NET_EMATCH=y
+CONFIG_NET_EMATCH_STACK=32
+CONFIG_NET_EMATCH_CMP=m
+CONFIG_NET_EMATCH_NBYTE=m
+CONFIG_NET_EMATCH_U32=m
+CONFIG_NET_EMATCH_META=m
+CONFIG_NET_EMATCH_TEXT=m
+CONFIG_NET_EMATCH_IPSET=m
+CONFIG_NET_EMATCH_IPT=m
+CONFIG_NET_CLS_ACT=y
+CONFIG_NET_ACT_POLICE=m
+CONFIG_NET_ACT_GACT=m
+CONFIG_GACT_PROB=y
+CONFIG_NET_ACT_MIRRED=m
+# CONFIG_NET_ACT_SAMPLE is not set
+CONFIG_NET_ACT_IPT=m
+CONFIG_NET_ACT_NAT=m
+CONFIG_NET_ACT_PEDIT=m
+CONFIG_NET_ACT_SIMP=m
+CONFIG_NET_ACT_SKBEDIT=m
+CONFIG_NET_ACT_CSUM=m
+# CONFIG_NET_ACT_MPLS is not set
+CONFIG_NET_ACT_VLAN=m
+CONFIG_NET_ACT_BPF=m
+CONFIG_NET_ACT_CONNMARK=m
+# CONFIG_NET_ACT_CTINFO is not set
+CONFIG_NET_ACT_SKBMOD=m
+CONFIG_NET_ACT_IFE=m
+CONFIG_NET_ACT_TUNNEL_KEY=m
+# CONFIG_NET_ACT_CT is not set
+# CONFIG_NET_ACT_GATE is not set
+CONFIG_NET_IFE_SKBMARK=m
+CONFIG_NET_IFE_SKBPRIO=m
+CONFIG_NET_IFE_SKBTCINDEX=m
+# CONFIG_NET_TC_SKB_EXT is not set
+CONFIG_NET_SCH_FIFO=y
+# CONFIG_DCB is not set
+CONFIG_DNS_RESOLVER=m
+# CONFIG_BATMAN_ADV is not set
+# CONFIG_OPENVSWITCH is not set
+# CONFIG_VSOCKETS is not set
+CONFIG_NETLINK_DIAG=y
+CONFIG_MPLS=y
+CONFIG_NET_MPLS_GSO=m
+CONFIG_MPLS_ROUTING=m
+CONFIG_MPLS_IPTUNNEL=m
+CONFIG_NET_NSH=m
+# CONFIG_HSR is not set
+CONFIG_NET_SWITCHDEV=y
+CONFIG_NET_L3_MASTER_DEV=y
+CONFIG_QRTR=m
+# CONFIG_QRTR_TUN is not set
+CONFIG_NET_NCSI=y
+# CONFIG_NCSI_OEM_CMD_GET_MAC is not set
+# CONFIG_NCSI_OEM_CMD_KEEP_PHY is not set
+CONFIG_PCPU_DEV_REFCNT=y
+CONFIG_MAX_SKB_FRAGS=17
+CONFIG_RPS=y
+CONFIG_RFS_ACCEL=y
+CONFIG_SOCK_RX_QUEUE_MAPPING=y
+CONFIG_XPS=y
+CONFIG_CGROUP_NET_PRIO=y
+CONFIG_CGROUP_NET_CLASSID=y
+CONFIG_NET_RX_BUSY_POLL=y
+CONFIG_BQL=y
+# CONFIG_BPF_STREAM_PARSER is not set
+CONFIG_NET_FLOW_LIMIT=y
+
+#
+# Network testing
+#
+CONFIG_NET_PKTGEN=m
+# end of Network testing
+# end of Networking options
+
+# CONFIG_HAMRADIO is not set
+# CONFIG_CAN is not set
+# CONFIG_BT is not set
+# CONFIG_AF_RXRPC is not set
+# CONFIG_AF_KCM is not set
+CONFIG_STREAM_PARSER=y
+# CONFIG_MCTP is not set
+CONFIG_FIB_RULES=y
+CONFIG_WIRELESS=y
+CONFIG_WEXT_CORE=y
+CONFIG_WEXT_PROC=y
+CONFIG_CFG80211=m
+# CONFIG_NL80211_TESTMODE is not set
+# CONFIG_CFG80211_DEVELOPER_WARNINGS is not set
+CONFIG_CFG80211_REQUIRE_SIGNED_REGDB=y
+CONFIG_CFG80211_USE_KERNEL_REGDB_KEYS=y
+CONFIG_CFG80211_DEFAULT_PS=y
+CONFIG_CFG80211_CRDA_SUPPORT=y
+CONFIG_CFG80211_WEXT=y
+CONFIG_MAC80211=m
+CONFIG_MAC80211_HAS_RC=y
+CONFIG_MAC80211_RC_MINSTREL=y
+CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y
+CONFIG_MAC80211_RC_DEFAULT="minstrel_ht"
+# CONFIG_MAC80211_MESH is not set
+CONFIG_MAC80211_LEDS=y
+# CONFIG_MAC80211_MESSAGE_TRACING is not set
+# CONFIG_MAC80211_DEBUG_MENU is not set
+CONFIG_MAC80211_STA_HASH_MAX_SIZE=0
+CONFIG_RFKILL=m
+CONFIG_RFKILL_LEDS=y
+CONFIG_RFKILL_INPUT=y
+CONFIG_RFKILL_GPIO=m
+CONFIG_NET_9P=m
+CONFIG_NET_9P_FD=m
+CONFIG_NET_9P_VIRTIO=m
+# CONFIG_NET_9P_DEBUG is not set
+# CONFIG_CAIF is not set
+CONFIG_CEPH_LIB=m
+# CONFIG_CEPH_LIB_PRETTYDEBUG is not set
+# CONFIG_CEPH_LIB_USE_DNS_RESOLVER is not set
+# CONFIG_NFC is not set
+# CONFIG_PSAMPLE is not set
+CONFIG_NET_IFE=m
+CONFIG_LWTUNNEL=y
+CONFIG_LWTUNNEL_BPF=y
+CONFIG_DST_CACHE=y
+CONFIG_GRO_CELLS=y
+CONFIG_NET_SELFTESTS=y
+CONFIG_NET_SOCK_MSG=y
+CONFIG_PAGE_POOL=y
+CONFIG_PAGE_POOL_STATS=y
+CONFIG_FAILOVER=m
+CONFIG_ETHTOOL_NETLINK=y
+
+#
+# Device Drivers
+#
+CONFIG_ARM_AMBA=y
+CONFIG_HAVE_PCI=y
+CONFIG_PCI=y
+CONFIG_PCI_DOMAINS=y
+CONFIG_PCI_DOMAINS_GENERIC=y
+# CONFIG_PCIEPORTBUS is not set
+CONFIG_PCIEASPM=y
+CONFIG_PCIEASPM_DEFAULT=y
+# CONFIG_PCIEASPM_POWERSAVE is not set
+# CONFIG_PCIEASPM_POWER_SUPERSAVE is not set
+# CONFIG_PCIEASPM_PERFORMANCE is not set
+# CONFIG_PCIE_PTM is not set
+CONFIG_PCI_MSI=y
+CONFIG_PCI_QUIRKS=y
+# CONFIG_PCI_STUB is not set
+# CONFIG_PCI_IOV is not set
+# CONFIG_PCI_PRI is not set
+# CONFIG_PCI_PASID is not set
+# CONFIG_PCI_DYNAMIC_OF_NODES is not set
+CONFIG_VGA_ARB=y
+CONFIG_VGA_ARB_MAX_GPUS=16
+# CONFIG_HOTPLUG_PCI is not set
+
+#
+# PCI controller drivers
+#
+# CONFIG_PCI_FTPCI100 is not set
+# CONFIG_PCI_HOST_GENERIC is not set
+# CONFIG_PCIE_XILINX is not set
+
+#
+# Cadence-based PCIe controllers
+#
+# CONFIG_PCIE_CADENCE_PLAT_HOST is not set
+# end of Cadence-based PCIe controllers
+
+#
+# DesignWare-based PCIe controllers
+#
+# CONFIG_PCI_MESON is not set
+# CONFIG_PCIE_DW_PLAT_HOST is not set
+# end of DesignWare-based PCIe controllers
+
+#
+# Mobiveil-based PCIe controllers
+#
+# end of Mobiveil-based PCIe controllers
+
+#
+# PLDA-based PCIe controllers
+#
+CONFIG_PCIE_PLDA_HOST=y
+# CONFIG_PCIE_MICROCHIP_HOST is not set
+CONFIG_PCIE_STARFIVE_HOST=y
+# end of PLDA-based PCIe controllers
+# end of PCI controller drivers
+
+#
+# PCI Endpoint
+#
+# CONFIG_PCI_ENDPOINT is not set
+# end of PCI Endpoint
+
+#
+# PCI switch controller drivers
+#
+# CONFIG_PCI_SW_SWITCHTEC is not set
+# end of PCI switch controller drivers
+
+# CONFIG_CXL_BUS is not set
+# CONFIG_PCCARD is not set
+# CONFIG_RAPIDIO is not set
+
+#
+# Generic Driver Options
+#
+CONFIG_AUXILIARY_BUS=y
+CONFIG_UEVENT_HELPER=y
+CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
+CONFIG_DEVTMPFS=y
+CONFIG_DEVTMPFS_MOUNT=y
+# CONFIG_DEVTMPFS_SAFE is not set
+CONFIG_STANDALONE=y
+CONFIG_PREVENT_FIRMWARE_BUILD=y
+
+#
+# Firmware loader
+#
+CONFIG_FW_LOADER=y
+CONFIG_EXTRA_FIRMWARE=""
+# CONFIG_FW_LOADER_USER_HELPER is not set
+# CONFIG_FW_LOADER_COMPRESS is not set
+CONFIG_FW_CACHE=y
+# CONFIG_FW_UPLOAD is not set
+# end of Firmware loader
+
+CONFIG_ALLOW_DEV_COREDUMP=y
+# CONFIG_TEST_ASYNC_DRIVER_PROBE is not set
+CONFIG_GENERIC_CPU_DEVICES=y
+CONFIG_REGMAP=y
+CONFIG_REGMAP_I2C=y
+CONFIG_REGMAP_SPI=m
+CONFIG_REGMAP_MMIO=y
+CONFIG_REGMAP_IRQ=y
+CONFIG_DMA_SHARED_BUFFER=y
+# CONFIG_DMA_FENCE_TRACE is not set
+CONFIG_GENERIC_ARCH_TOPOLOGY=y
+# CONFIG_FW_DEVLINK_SYNC_STATE_TIMEOUT is not set
+# end of Generic Driver Options
+
+#
+# Bus devices
+#
+# CONFIG_MOXTET is not set
+# CONFIG_MHI_BUS is not set
+# CONFIG_MHI_BUS_EP is not set
+# end of Bus devices
+
+#
+# Cache Drivers
+#
+# CONFIG_AX45MP_L2_CACHE is not set
+CONFIG_SIFIVE_CCACHE=y
+# end of Cache Drivers
+
+# CONFIG_CONNECTOR is not set
+
+#
+# Firmware Drivers
+#
+
+#
+# ARM System Control and Management Interface Protocol
+#
+# end of ARM System Control and Management Interface Protocol
+
+# CONFIG_FW_CFG_SYSFS is not set
+# CONFIG_SYSFB_SIMPLEFB is not set
+# CONFIG_GOOGLE_FIRMWARE is not set
+
+#
+# EFI (Extensible Firmware Interface) Support
+#
+CONFIG_EFI_ESRT=y
+CONFIG_EFI_PARAMS_FROM_FDT=y
+CONFIG_EFI_RUNTIME_WRAPPERS=y
+CONFIG_EFI_GENERIC_STUB=y
+# CONFIG_EFI_ZBOOT is not set
+# CONFIG_EFI_BOOTLOADER_CONTROL is not set
+# CONFIG_EFI_CAPSULE_LOADER is not set
+# CONFIG_EFI_TEST is not set
+# CONFIG_RESET_ATTACK_MITIGATION is not set
+# CONFIG_EFI_DISABLE_PCI_DMA is not set
+CONFIG_EFI_EARLYCON=y
+# CONFIG_EFI_DISABLE_RUNTIME is not set
+# CONFIG_EFI_COCO_SECRET is not set
+# end of EFI (Extensible Firmware Interface) Support
+
+#
+# Qualcomm firmware drivers
+#
+# end of Qualcomm firmware drivers
+
+#
+# Tegra firmware driver
+#
+# end of Tegra firmware driver
+# end of Firmware Drivers
+
+# CONFIG_GNSS is not set
+CONFIG_MTD=m
+# CONFIG_MTD_TESTS is not set
+
+#
+# Partition parsers
+#
+# CONFIG_MTD_CMDLINE_PARTS is not set
+CONFIG_MTD_OF_PARTS=m
+# CONFIG_MTD_REDBOOT_PARTS is not set
+# end of Partition parsers
+
+#
+# User Modules And Translation Layers
+#
+CONFIG_MTD_BLKDEVS=m
+CONFIG_MTD_BLOCK=m
+# CONFIG_MTD_BLOCK_RO is not set
+
+#
+# Note that in some cases UBI block is preferred. See MTD_UBI_BLOCK.
+#
+# CONFIG_FTL is not set
+# CONFIG_NFTL is not set
+# CONFIG_INFTL is not set
+# CONFIG_RFD_FTL is not set
+# CONFIG_SSFDC is not set
+# CONFIG_SM_FTL is not set
+# CONFIG_MTD_OOPS is not set
+# CONFIG_MTD_SWAP is not set
+CONFIG_MTD_PARTITIONED_MASTER=y
+
+#
+# RAM/ROM/Flash chip drivers
+#
+# CONFIG_MTD_CFI is not set
+# CONFIG_MTD_JEDECPROBE is not set
+CONFIG_MTD_MAP_BANK_WIDTH_1=y
+CONFIG_MTD_MAP_BANK_WIDTH_2=y
+CONFIG_MTD_MAP_BANK_WIDTH_4=y
+CONFIG_MTD_CFI_I1=y
+CONFIG_MTD_CFI_I2=y
+# CONFIG_MTD_RAM is not set
+# CONFIG_MTD_ROM is not set
+# CONFIG_MTD_ABSENT is not set
+# end of RAM/ROM/Flash chip drivers
+
+#
+# Mapping drivers for chip access
+#
+# CONFIG_MTD_COMPLEX_MAPPINGS is not set
+# CONFIG_MTD_INTEL_VR_NOR is not set
+# CONFIG_MTD_PLATRAM is not set
+# end of Mapping drivers for chip access
+
+#
+# Self-contained MTD device drivers
+#
+# CONFIG_MTD_PMC551 is not set
+# CONFIG_MTD_DATAFLASH is not set
+# CONFIG_MTD_MCHP23K256 is not set
+# CONFIG_MTD_MCHP48L640 is not set
+# CONFIG_MTD_SST25L is not set
+# CONFIG_MTD_SLRAM is not set
+# CONFIG_MTD_PHRAM is not set
+# CONFIG_MTD_MTDRAM is not set
+# CONFIG_MTD_BLOCK2MTD is not set
+
+#
+# Disk-On-Chip Device Drivers
+#
+# CONFIG_MTD_DOCG3 is not set
+# end of Self-contained MTD device drivers
+
+#
+# NAND
+#
+# CONFIG_MTD_ONENAND is not set
+# CONFIG_MTD_RAW_NAND is not set
+# CONFIG_MTD_SPI_NAND is not set
+
+#
+# ECC engine support
+#
+# CONFIG_MTD_NAND_ECC_SW_HAMMING is not set
+# CONFIG_MTD_NAND_ECC_SW_BCH is not set
+# CONFIG_MTD_NAND_ECC_MXIC is not set
+# end of ECC engine support
+# end of NAND
+
+#
+# LPDDR & LPDDR2 PCM memory drivers
+#
+# CONFIG_MTD_LPDDR is not set
+# end of LPDDR & LPDDR2 PCM memory drivers
+
+CONFIG_MTD_SPI_NOR=m
+# CONFIG_MTD_SPI_NOR_USE_4K_SECTORS is not set
+# CONFIG_MTD_SPI_NOR_SWP_DISABLE is not set
+CONFIG_MTD_SPI_NOR_SWP_DISABLE_ON_VOLATILE=y
+# CONFIG_MTD_SPI_NOR_SWP_KEEP is not set
+CONFIG_MTD_UBI=m
+CONFIG_MTD_UBI_WL_THRESHOLD=4096
+CONFIG_MTD_UBI_BEB_LIMIT=20
+# CONFIG_MTD_UBI_FASTMAP is not set
+# CONFIG_MTD_UBI_GLUEBI is not set
+# CONFIG_MTD_UBI_BLOCK is not set
+# CONFIG_MTD_HYPERBUS is not set
+CONFIG_DTC=y
+CONFIG_OF=y
+# CONFIG_OF_UNITTEST is not set
+CONFIG_OF_FLATTREE=y
+CONFIG_OF_EARLY_FLATTREE=y
+CONFIG_OF_KOBJ=y
+CONFIG_OF_ADDRESS=y
+CONFIG_OF_IRQ=y
+CONFIG_OF_RESERVED_MEM=y
+# CONFIG_OF_OVERLAY is not set
+# CONFIG_PARPORT is not set
+CONFIG_BLK_DEV=y
+# CONFIG_BLK_DEV_NULL_BLK is not set
+CONFIG_CDROM=m
+# CONFIG_BLK_DEV_PCIESSD_MTIP32XX is not set
+CONFIG_ZRAM=m
+CONFIG_ZRAM_DEF_COMP_LZORLE=y
+# CONFIG_ZRAM_DEF_COMP_LZO is not set
+CONFIG_ZRAM_DEF_COMP="lzo-rle"
+# CONFIG_ZRAM_WRITEBACK is not set
+# CONFIG_ZRAM_TRACK_ENTRY_ACTIME is not set
+# CONFIG_ZRAM_MULTI_COMP is not set
+CONFIG_BLK_DEV_LOOP=m
+CONFIG_BLK_DEV_LOOP_MIN_COUNT=0
+CONFIG_BLK_DEV_DRBD=m
+# CONFIG_DRBD_FAULT_INJECTION is not set
+CONFIG_BLK_DEV_NBD=m
+# CONFIG_BLK_DEV_RAM is not set
+# CONFIG_CDROM_PKTCDVD is not set
+# CONFIG_ATA_OVER_ETH is not set
+# CONFIG_VIRTIO_BLK is not set
+# CONFIG_BLK_DEV_RBD is not set
+# CONFIG_BLK_DEV_UBLK is not set
+
+#
+# NVME Support
+#
+CONFIG_NVME_CORE=y
+CONFIG_BLK_DEV_NVME=y
+# CONFIG_NVME_MULTIPATH is not set
+# CONFIG_NVME_VERBOSE_ERRORS is not set
+# CONFIG_NVME_HWMON is not set
+# CONFIG_NVME_FC is not set
+# CONFIG_NVME_TCP is not set
+# CONFIG_NVME_HOST_AUTH is not set
+# CONFIG_NVME_TARGET is not set
+# end of NVME Support
+
+#
+# Misc devices
+#
+# CONFIG_AD525X_DPOT is not set
+# CONFIG_DUMMY_IRQ is not set
+# CONFIG_PHANTOM is not set
+# CONFIG_TIFM_CORE is not set
+# CONFIG_ICS932S401 is not set
+# CONFIG_ENCLOSURE_SERVICES is not set
+# CONFIG_HP_ILO is not set
+# CONFIG_APDS9802ALS is not set
+# CONFIG_ISL29003 is not set
+# CONFIG_ISL29020 is not set
+# CONFIG_SENSORS_TSL2550 is not set
+# CONFIG_SENSORS_BH1770 is not set
+# CONFIG_SENSORS_APDS990X is not set
+# CONFIG_HMC6352 is not set
+# CONFIG_DS1682 is not set
+# CONFIG_LATTICE_ECP3_CONFIG is not set
+# CONFIG_SRAM is not set
+# CONFIG_DW_XDATA_PCIE is not set
+# CONFIG_PCI_ENDPOINT_TEST is not set
+# CONFIG_XILINX_SDFEC is not set
+# CONFIG_HISI_HIKEY_USB is not set
+# CONFIG_OPEN_DICE is not set
+# CONFIG_VCPU_STALL_DETECTOR is not set
+# CONFIG_NSM is not set
+# CONFIG_C2PORT is not set
+
+#
+# EEPROM support
+#
+CONFIG_EEPROM_AT24=y
+# CONFIG_EEPROM_AT25 is not set
+# CONFIG_EEPROM_MAX6875 is not set
+# CONFIG_EEPROM_93CX6 is not set
+# CONFIG_EEPROM_93XX46 is not set
+# CONFIG_EEPROM_IDT_89HPESX is not set
+# CONFIG_EEPROM_EE1004 is not set
+# end of EEPROM support
+
+# CONFIG_CB710_CORE is not set
+
+#
+# Texas Instruments shared transport line discipline
+#
+# CONFIG_TI_ST is not set
+# end of Texas Instruments shared transport line discipline
+
+# CONFIG_SENSORS_LIS3_SPI is not set
+# CONFIG_SENSORS_LIS3_I2C is not set
+# CONFIG_ALTERA_STAPL is not set
+# CONFIG_GENWQE is not set
+# CONFIG_ECHO is not set
+# CONFIG_BCM_VK is not set
+# CONFIG_MISC_ALCOR_PCI is not set
+# CONFIG_MISC_RTSX_PCI is not set
+# CONFIG_MISC_RTSX_USB is not set
+# CONFIG_PVPANIC is not set
+# CONFIG_GP_PCI1XXXX is not set
+# end of Misc devices
+
+#
+# SCSI device support
+#
+CONFIG_SCSI_MOD=y
+# CONFIG_RAID_ATTRS is not set
+CONFIG_SCSI_COMMON=y
+CONFIG_SCSI=y
+CONFIG_SCSI_DMA=y
+CONFIG_SCSI_PROC_FS=y
+
+#
+# SCSI support type (disk, tape, CD-ROM)
+#
+CONFIG_BLK_DEV_SD=y
+# CONFIG_CHR_DEV_ST is not set
+CONFIG_BLK_DEV_SR=m
+# CONFIG_CHR_DEV_SG is not set
+CONFIG_BLK_DEV_BSG=y
+# CONFIG_CHR_DEV_SCH is not set
+# CONFIG_SCSI_CONSTANTS is not set
+# CONFIG_SCSI_LOGGING is not set
+# CONFIG_SCSI_SCAN_ASYNC is not set
+
+#
+# SCSI Transports
+#
+# CONFIG_SCSI_SPI_ATTRS is not set
+# CONFIG_SCSI_FC_ATTRS is not set
+# CONFIG_SCSI_ISCSI_ATTRS is not set
+# CONFIG_SCSI_SAS_ATTRS is not set
+# CONFIG_SCSI_SAS_LIBSAS is not set
+# CONFIG_SCSI_SRP_ATTRS is not set
+# end of SCSI Transports
+
+# CONFIG_SCSI_LOWLEVEL is not set
+# CONFIG_SCSI_DH is not set
+# end of SCSI device support
+
+# CONFIG_ATA is not set
+CONFIG_MD=y
+CONFIG_BLK_DEV_MD=m
+# CONFIG_MD_BITMAP_FILE is not set
+CONFIG_MD_RAID0=m
+CONFIG_MD_RAID1=m
+CONFIG_MD_RAID10=m
+CONFIG_MD_RAID456=m
+CONFIG_BCACHE=m
+# CONFIG_BCACHE_DEBUG is not set
+# CONFIG_BCACHE_ASYNC_REGISTRATION is not set
+CONFIG_BLK_DEV_DM_BUILTIN=y
+CONFIG_BLK_DEV_DM=m
+# CONFIG_DM_DEBUG is not set
+CONFIG_DM_BUFIO=m
+# CONFIG_DM_DEBUG_BLOCK_MANAGER_LOCKING is not set
+CONFIG_DM_PERSISTENT_DATA=m
+# CONFIG_DM_UNSTRIPED is not set
+CONFIG_DM_CRYPT=m
+CONFIG_DM_SNAPSHOT=m
+# CONFIG_DM_THIN_PROVISIONING is not set
+# CONFIG_DM_CACHE is not set
+# CONFIG_DM_WRITECACHE is not set
+# CONFIG_DM_EBS is not set
+# CONFIG_DM_ERA is not set
+CONFIG_DM_CLONE=m
+CONFIG_DM_MIRROR=m
+# CONFIG_DM_LOG_USERSPACE is not set
+CONFIG_DM_RAID=m
+# CONFIG_DM_ZERO is not set
+CONFIG_DM_MULTIPATH=m
+# CONFIG_DM_MULTIPATH_QL is not set
+# CONFIG_DM_MULTIPATH_ST is not set
+# CONFIG_DM_MULTIPATH_HST is not set
+# CONFIG_DM_MULTIPATH_IOA is not set
+# CONFIG_DM_DELAY is not set
+# CONFIG_DM_DUST is not set
+CONFIG_DM_UEVENT=y
+# CONFIG_DM_FLAKEY is not set
+# CONFIG_DM_VERITY is not set
+# CONFIG_DM_SWITCH is not set
+# CONFIG_DM_LOG_WRITES is not set
+CONFIG_DM_INTEGRITY=m
+# CONFIG_TARGET_CORE is not set
+# CONFIG_FUSION is not set
+
+#
+# IEEE 1394 (FireWire) support
+#
+# CONFIG_FIREWIRE is not set
+# CONFIG_FIREWIRE_NOSY is not set
+# end of IEEE 1394 (FireWire) support
+
+CONFIG_NETDEVICES=y
+CONFIG_MII=m
+CONFIG_NET_CORE=y
+CONFIG_BONDING=m
+CONFIG_DUMMY=m
+CONFIG_WIREGUARD=m
+# CONFIG_WIREGUARD_DEBUG is not set
+CONFIG_EQUALIZER=m
+# CONFIG_NET_FC is not set
+CONFIG_IFB=m
+# CONFIG_NET_TEAM is not set
+# CONFIG_MACVLAN is not set
+# CONFIG_IPVLAN is not set
+# CONFIG_VXLAN is not set
+CONFIG_GENEVE=m
+CONFIG_BAREUDP=m
+# CONFIG_GTP is not set
+# CONFIG_AMT is not set
+CONFIG_MACSEC=m
+CONFIG_NETCONSOLE=m
+CONFIG_NETCONSOLE_DYNAMIC=y
+# CONFIG_NETCONSOLE_EXTENDED_LOG is not set
+CONFIG_NETPOLL=y
+CONFIG_NET_POLL_CONTROLLER=y
+CONFIG_TUN=m
+# CONFIG_TUN_VNET_CROSS_LE is not set
+CONFIG_VETH=m
+CONFIG_VIRTIO_NET=m
+CONFIG_NLMON=m
+# CONFIG_NETKIT is not set
+CONFIG_NET_VRF=m
+# CONFIG_ARCNET is not set
+# CONFIG_ATM_DRIVERS is not set
+CONFIG_ETHERNET=y
+# CONFIG_NET_VENDOR_3COM is not set
+# CONFIG_NET_VENDOR_ADAPTEC is not set
+# CONFIG_NET_VENDOR_AGERE is not set
+# CONFIG_NET_VENDOR_ALACRITECH is not set
+# CONFIG_NET_VENDOR_ALTEON is not set
+# CONFIG_ALTERA_TSE is not set
+# CONFIG_NET_VENDOR_AMAZON is not set
+# CONFIG_NET_VENDOR_AMD is not set
+# CONFIG_NET_VENDOR_AQUANTIA is not set
+# CONFIG_NET_VENDOR_ARC is not set
+# CONFIG_NET_VENDOR_ASIX is not set
+# CONFIG_NET_VENDOR_ATHEROS is not set
+# CONFIG_NET_VENDOR_BROADCOM is not set
+# CONFIG_NET_VENDOR_CADENCE is not set
+# CONFIG_NET_VENDOR_CAVIUM is not set
+# CONFIG_NET_VENDOR_CHELSIO is not set
+# CONFIG_NET_VENDOR_CISCO is not set
+# CONFIG_NET_VENDOR_CORTINA is not set
+# CONFIG_NET_VENDOR_DAVICOM is not set
+# CONFIG_DNET is not set
+# CONFIG_NET_VENDOR_DEC is not set
+# CONFIG_NET_VENDOR_DLINK is not set
+# CONFIG_NET_VENDOR_EMULEX is not set
+# CONFIG_NET_VENDOR_ENGLEDER is not set
+# CONFIG_NET_VENDOR_EZCHIP is not set
+# CONFIG_NET_VENDOR_FUNGIBLE is not set
+# CONFIG_NET_VENDOR_GOOGLE is not set
+# CONFIG_NET_VENDOR_HUAWEI is not set
+# CONFIG_NET_VENDOR_INTEL is not set
+# CONFIG_JME is not set
+# CONFIG_NET_VENDOR_ADI is not set
+# CONFIG_NET_VENDOR_LITEX is not set
+# CONFIG_NET_VENDOR_MARVELL is not set
+# CONFIG_NET_VENDOR_MELLANOX is not set
+# CONFIG_NET_VENDOR_MICREL is not set
+# CONFIG_NET_VENDOR_MICROCHIP is not set
+# CONFIG_NET_VENDOR_MICROSEMI is not set
+# CONFIG_NET_VENDOR_MICROSOFT is not set
+# CONFIG_NET_VENDOR_MYRI is not set
+# CONFIG_FEALNX is not set
+# CONFIG_NET_VENDOR_NI is not set
+# CONFIG_NET_VENDOR_NATSEMI is not set
+# CONFIG_NET_VENDOR_NETERION is not set
+# CONFIG_NET_VENDOR_NETRONOME is not set
+# CONFIG_NET_VENDOR_NVIDIA is not set
+# CONFIG_NET_VENDOR_OKI is not set
+# CONFIG_ETHOC is not set
+# CONFIG_NET_VENDOR_PACKET_ENGINES is not set
+# CONFIG_NET_VENDOR_PENSANDO is not set
+# CONFIG_NET_VENDOR_QLOGIC is not set
+# CONFIG_NET_VENDOR_BROCADE is not set
+# CONFIG_NET_VENDOR_QUALCOMM is not set
+# CONFIG_NET_VENDOR_RDC is not set
+# CONFIG_NET_VENDOR_REALTEK is not set
+# CONFIG_NET_VENDOR_RENESAS is not set
+# CONFIG_NET_VENDOR_ROCKER is not set
+# CONFIG_NET_VENDOR_SAMSUNG is not set
+# CONFIG_NET_VENDOR_SEEQ is not set
+# CONFIG_NET_VENDOR_SILAN is not set
+# CONFIG_NET_VENDOR_SIS is not set
+# CONFIG_NET_VENDOR_SOLARFLARE is not set
+# CONFIG_NET_VENDOR_SMSC is not set
+# CONFIG_NET_VENDOR_SOCIONEXT is not set
+CONFIG_NET_VENDOR_STMICRO=y
+CONFIG_STMMAC_ETH=m
+# CONFIG_STMMAC_SELFTESTS is not set
+CONFIG_STMMAC_PLATFORM=m
+# CONFIG_DWMAC_DWC_QOS_ETH is not set
+CONFIG_DWMAC_GENERIC=m
+CONFIG_DWMAC_STARFIVE=m
+# CONFIG_DWMAC_INTEL_PLAT is not set
+CONFIG_STMMAC_PCI=m
+# CONFIG_NET_VENDOR_SUN is not set
+# CONFIG_NET_VENDOR_SYNOPSYS is not set
+# CONFIG_NET_VENDOR_TEHUTI is not set
+# CONFIG_NET_VENDOR_TI is not set
+# CONFIG_NET_VENDOR_VERTEXCOM is not set
+# CONFIG_NET_VENDOR_VIA is not set
+# CONFIG_NET_VENDOR_WANGXUN is not set
+# CONFIG_NET_VENDOR_WIZNET is not set
+# CONFIG_NET_VENDOR_XILINX is not set
+# CONFIG_FDDI is not set
+# CONFIG_HIPPI is not set
+CONFIG_PHYLINK=m
+CONFIG_PHYLIB=y
+CONFIG_SWPHY=y
+# CONFIG_LED_TRIGGER_PHY is not set
+CONFIG_FIXED_PHY=y
+# CONFIG_SFP is not set
+
+#
+# MII PHY device drivers
+#
+# CONFIG_AMD_PHY is not set
+# CONFIG_ADIN_PHY is not set
+# CONFIG_ADIN1100_PHY is not set
+# CONFIG_AQUANTIA_PHY is not set
+# CONFIG_AX88796B_PHY is not set
+# CONFIG_BROADCOM_PHY is not set
+# CONFIG_BCM54140_PHY is not set
+# CONFIG_BCM7XXX_PHY is not set
+# CONFIG_BCM84881_PHY is not set
+# CONFIG_BCM87XX_PHY is not set
+# CONFIG_CICADA_PHY is not set
+# CONFIG_CORTINA_PHY is not set
+# CONFIG_DAVICOM_PHY is not set
+# CONFIG_ICPLUS_PHY is not set
+# CONFIG_LXT_PHY is not set
+# CONFIG_INTEL_XWAY_PHY is not set
+# CONFIG_LSI_ET1011C_PHY is not set
+# CONFIG_MARVELL_PHY is not set
+# CONFIG_MARVELL_10G_PHY is not set
+# CONFIG_MARVELL_88Q2XXX_PHY is not set
+# CONFIG_MARVELL_88X2222_PHY is not set
+# CONFIG_MAXLINEAR_GPHY is not set
+# CONFIG_MEDIATEK_GE_PHY is not set
+CONFIG_MICREL_PHY=y
+# CONFIG_MICROCHIP_T1S_PHY is not set
+# CONFIG_MICROCHIP_PHY is not set
+# CONFIG_MICROCHIP_T1_PHY is not set
+# CONFIG_MICROSEMI_PHY is not set
+CONFIG_MOTORCOMM_PHY=m
+# CONFIG_NATIONAL_PHY is not set
+# CONFIG_NXP_CBTX_PHY is not set
+# CONFIG_NXP_C45_TJA11XX_PHY is not set
+# CONFIG_NXP_TJA11XX_PHY is not set
+# CONFIG_NCN26000_PHY is not set
+# CONFIG_AT803X_PHY is not set
+# CONFIG_QSEMI_PHY is not set
+# CONFIG_REALTEK_PHY is not set
+# CONFIG_RENESAS_PHY is not set
+# CONFIG_ROCKCHIP_PHY is not set
+# CONFIG_SMSC_PHY is not set
+CONFIG_STE10XP=m
+# CONFIG_TERANETICS_PHY is not set
+# CONFIG_DP83822_PHY is not set
+# CONFIG_DP83TC811_PHY is not set
+# CONFIG_DP83848_PHY is not set
+# CONFIG_DP83867_PHY is not set
+# CONFIG_DP83869_PHY is not set
+# CONFIG_DP83TD510_PHY is not set
+# CONFIG_DP83TG720_PHY is not set
+# CONFIG_VITESSE_PHY is not set
+# CONFIG_XILINX_GMII2RGMII is not set
+# CONFIG_MICREL_KS8995MA is not set
+# CONFIG_PSE_CONTROLLER is not set
+CONFIG_MDIO_DEVICE=y
+CONFIG_MDIO_BUS=y
+CONFIG_FWNODE_MDIO=y
+CONFIG_OF_MDIO=y
+CONFIG_MDIO_DEVRES=y
+# CONFIG_MDIO_BITBANG is not set
+# CONFIG_MDIO_BCM_UNIMAC is not set
+# CONFIG_MDIO_HISI_FEMAC is not set
+# CONFIG_MDIO_MVUSB is not set
+# CONFIG_MDIO_MSCC_MIIM is not set
+# CONFIG_MDIO_OCTEON is not set
+# CONFIG_MDIO_IPQ4019 is not set
+# CONFIG_MDIO_IPQ8064 is not set
+# CONFIG_MDIO_THUNDER is not set
+
+#
+# MDIO Multiplexers
+#
+# CONFIG_MDIO_BUS_MUX_GPIO is not set
+# CONFIG_MDIO_BUS_MUX_MULTIPLEXER is not set
+# CONFIG_MDIO_BUS_MUX_MMIOREG is not set
+
+#
+# PCS device drivers
+#
+CONFIG_PCS_XPCS=m
+# end of PCS device drivers
+
+CONFIG_PPP=m
+CONFIG_PPP_BSDCOMP=m
+CONFIG_PPP_DEFLATE=m
+CONFIG_PPP_FILTER=y
+CONFIG_PPP_MPPE=m
+CONFIG_PPP_MULTILINK=y
+CONFIG_PPPOATM=m
+CONFIG_PPPOE=m
+# CONFIG_PPPOE_HASH_BITS_1 is not set
+# CONFIG_PPPOE_HASH_BITS_2 is not set
+CONFIG_PPPOE_HASH_BITS_4=y
+# CONFIG_PPPOE_HASH_BITS_8 is not set
+CONFIG_PPPOE_HASH_BITS=4
+CONFIG_PPTP=m
+CONFIG_PPPOL2TP=m
+CONFIG_PPP_ASYNC=m
+CONFIG_PPP_SYNC_TTY=m
+CONFIG_SLIP=m
+CONFIG_SLHC=m
+CONFIG_SLIP_COMPRESSED=y
+CONFIG_SLIP_SMART=y
+CONFIG_SLIP_MODE_SLIP6=y
+CONFIG_USB_NET_DRIVERS=m
+# CONFIG_USB_CATC is not set
+# CONFIG_USB_KAWETH is not set
+# CONFIG_USB_PEGASUS is not set
+# CONFIG_USB_RTL8150 is not set
+# CONFIG_USB_RTL8152 is not set
+# CONFIG_USB_LAN78XX is not set
+# CONFIG_USB_USBNET is not set
+# CONFIG_USB_HSO is not set
+# CONFIG_USB_IPHETH is not set
+CONFIG_WLAN=y
+CONFIG_WLAN_VENDOR_ADMTEK=y
+# CONFIG_ADM8211 is not set
+CONFIG_WLAN_VENDOR_ATH=y
+# CONFIG_ATH_DEBUG is not set
+# CONFIG_ATH5K is not set
+# CONFIG_ATH5K_PCI is not set
+# CONFIG_ATH9K is not set
+# CONFIG_ATH9K_HTC is not set
+# CONFIG_CARL9170 is not set
+# CONFIG_ATH6KL is not set
+# CONFIG_AR5523 is not set
+# CONFIG_WIL6210 is not set
+# CONFIG_ATH10K is not set
+# CONFIG_WCN36XX is not set
+# CONFIG_ATH11K is not set
+# CONFIG_ATH12K is not set
+CONFIG_WLAN_VENDOR_ATMEL=y
+# CONFIG_AT76C50X_USB is not set
+CONFIG_WLAN_VENDOR_BROADCOM=y
+# CONFIG_B43 is not set
+# CONFIG_B43LEGACY is not set
+CONFIG_BRCMUTIL=m
+# CONFIG_BRCMSMAC is not set
+CONFIG_BRCMFMAC=m
+CONFIG_BRCMFMAC_PROTO_BCDC=y
+CONFIG_BRCMFMAC_SDIO=y
+# CONFIG_BRCMFMAC_USB is not set
+# CONFIG_BRCMFMAC_PCIE is not set
+# CONFIG_BRCM_TRACING is not set
+# CONFIG_BRCMDBG is not set
+CONFIG_WLAN_VENDOR_INTEL=y
+# CONFIG_IPW2100 is not set
+# CONFIG_IPW2200 is not set
+# CONFIG_IWL4965 is not set
+# CONFIG_IWL3945 is not set
+# CONFIG_IWLWIFI is not set
+CONFIG_WLAN_VENDOR_INTERSIL=y
+# CONFIG_P54_COMMON is not set
+CONFIG_WLAN_VENDOR_MARVELL=y
+# CONFIG_LIBERTAS is not set
+# CONFIG_LIBERTAS_THINFIRM is not set
+# CONFIG_MWIFIEX is not set
+# CONFIG_MWL8K is not set
+CONFIG_WLAN_VENDOR_MEDIATEK=y
+# CONFIG_MT7601U is not set
+# CONFIG_MT76x0U is not set
+# CONFIG_MT76x0E is not set
+# CONFIG_MT76x2E is not set
+# CONFIG_MT76x2U is not set
+# CONFIG_MT7603E is not set
+# CONFIG_MT7615E is not set
+# CONFIG_MT7663U is not set
+# CONFIG_MT7663S is not set
+# CONFIG_MT7915E is not set
+# CONFIG_MT7921E is not set
+# CONFIG_MT7921S is not set
+# CONFIG_MT7921U is not set
+# CONFIG_MT7996E is not set
+# CONFIG_MT7925E is not set
+# CONFIG_MT7925U is not set
+CONFIG_WLAN_VENDOR_MICROCHIP=y
+# CONFIG_WILC1000_SDIO is not set
+# CONFIG_WILC1000_SPI is not set
+# CONFIG_WLAN_VENDOR_PURELIFI is not set
+CONFIG_WLAN_VENDOR_RALINK=y
+# CONFIG_RT2X00 is not set
+CONFIG_WLAN_VENDOR_REALTEK=y
+# CONFIG_RTL8180 is not set
+# CONFIG_RTL8187 is not set
+# CONFIG_RTL_CARDS is not set
+# CONFIG_RTL8XXXU is not set
+# CONFIG_RTW88 is not set
+# CONFIG_RTW89 is not set
+CONFIG_WLAN_VENDOR_RSI=y
+# CONFIG_RSI_91X is not set
+# CONFIG_WLAN_VENDOR_SILABS is not set
+CONFIG_WLAN_VENDOR_ST=y
+# CONFIG_CW1200 is not set
+CONFIG_WLAN_VENDOR_TI=y
+# CONFIG_WL1251 is not set
+# CONFIG_WL12XX is not set
+# CONFIG_WL18XX is not set
+# CONFIG_WLCORE is not set
+CONFIG_WLAN_VENDOR_ZYDAS=y
+# CONFIG_ZD1211RW is not set
+CONFIG_WLAN_VENDOR_QUANTENNA=y
+# CONFIG_QTNFMAC_PCIE is not set
+# CONFIG_MAC80211_HWSIM is not set
+# CONFIG_VIRT_WIFI is not set
+# CONFIG_WAN is not set
+CONFIG_IEEE802154_DRIVERS=m
+# CONFIG_IEEE802154_FAKELB is not set
+# CONFIG_IEEE802154_AT86RF230 is not set
+# CONFIG_IEEE802154_MRF24J40 is not set
+# CONFIG_IEEE802154_CC2520 is not set
+# CONFIG_IEEE802154_ATUSB is not set
+# CONFIG_IEEE802154_ADF7242 is not set
+# CONFIG_IEEE802154_CA8210 is not set
+# CONFIG_IEEE802154_MCR20A is not set
+# CONFIG_IEEE802154_HWSIM is not set
+
+#
+# Wireless WAN
+#
+# CONFIG_WWAN is not set
+# end of Wireless WAN
+
+# CONFIG_VMXNET3 is not set
+CONFIG_NET_FAILOVER=m
+# CONFIG_ISDN is not set
+
+#
+# Input device support
+#
+CONFIG_INPUT=y
+CONFIG_INPUT_LEDS=m
+# CONFIG_INPUT_FF_MEMLESS is not set
+# CONFIG_INPUT_SPARSEKMAP is not set
+# CONFIG_INPUT_MATRIXKMAP is not set
+CONFIG_INPUT_VIVALDIFMAP=y
+
+#
+# Userland interfaces
+#
+# CONFIG_INPUT_MOUSEDEV is not set
+# CONFIG_INPUT_JOYDEV is not set
+CONFIG_INPUT_EVDEV=m
+# CONFIG_INPUT_EVBUG is not set
+
+#
+# Input Device Drivers
+#
+CONFIG_INPUT_KEYBOARD=y
+# CONFIG_KEYBOARD_ADP5588 is not set
+# CONFIG_KEYBOARD_ADP5589 is not set
+CONFIG_KEYBOARD_ATKBD=y
+# CONFIG_KEYBOARD_QT1050 is not set
+# CONFIG_KEYBOARD_QT1070 is not set
+# CONFIG_KEYBOARD_QT2160 is not set
+# CONFIG_KEYBOARD_DLINK_DIR685 is not set
+# CONFIG_KEYBOARD_LKKBD is not set
+# CONFIG_KEYBOARD_GPIO is not set
+CONFIG_KEYBOARD_GPIO_POLLED=m
+# CONFIG_KEYBOARD_TCA6416 is not set
+# CONFIG_KEYBOARD_TCA8418 is not set
+# CONFIG_KEYBOARD_MATRIX is not set
+# CONFIG_KEYBOARD_LM8323 is not set
+# CONFIG_KEYBOARD_LM8333 is not set
+# CONFIG_KEYBOARD_MAX7359 is not set
+# CONFIG_KEYBOARD_MCS is not set
+# CONFIG_KEYBOARD_MPR121 is not set
+# CONFIG_KEYBOARD_NEWTON is not set
+# CONFIG_KEYBOARD_OPENCORES is not set
+# CONFIG_KEYBOARD_PINEPHONE is not set
+# CONFIG_KEYBOARD_SAMSUNG is not set
+# CONFIG_KEYBOARD_STOWAWAY is not set
+# CONFIG_KEYBOARD_SUNKBD is not set
+# CONFIG_KEYBOARD_OMAP4 is not set
+# CONFIG_KEYBOARD_TM2_TOUCHKEY is not set
+# CONFIG_KEYBOARD_XTKBD is not set
+# CONFIG_KEYBOARD_CAP11XX is not set
+# CONFIG_KEYBOARD_BCM is not set
+# CONFIG_KEYBOARD_CYPRESS_SF is not set
+# CONFIG_INPUT_MOUSE is not set
+# CONFIG_INPUT_JOYSTICK is not set
+# CONFIG_INPUT_TABLET is not set
+# CONFIG_INPUT_TOUCHSCREEN is not set
+CONFIG_INPUT_MISC=y
+# CONFIG_INPUT_AD714X is not set
+# CONFIG_INPUT_ATMEL_CAPTOUCH is not set
+# CONFIG_INPUT_BMA150 is not set
+# CONFIG_INPUT_E3X0_BUTTON is not set
+# CONFIG_INPUT_MMA8450 is not set
+CONFIG_INPUT_GPIO_BEEPER=m
+CONFIG_INPUT_GPIO_DECODER=m
+# CONFIG_INPUT_GPIO_VIBRA is not set
+# CONFIG_INPUT_ATI_REMOTE2 is not set
+# CONFIG_INPUT_KEYSPAN_REMOTE is not set
+# CONFIG_INPUT_KXTJ9 is not set
+# CONFIG_INPUT_POWERMATE is not set
+# CONFIG_INPUT_YEALINK is not set
+# CONFIG_INPUT_CM109 is not set
+# CONFIG_INPUT_REGULATOR_HAPTIC is not set
+# CONFIG_INPUT_AXP20X_PEK is not set
+# CONFIG_INPUT_UINPUT is not set
+# CONFIG_INPUT_PCF8574 is not set
+# CONFIG_INPUT_PWM_BEEPER is not set
+# CONFIG_INPUT_PWM_VIBRA is not set
+# CONFIG_INPUT_GPIO_ROTARY_ENCODER is not set
+# CONFIG_INPUT_DA7280_HAPTICS is not set
+# CONFIG_INPUT_ADXL34X is not set
+# CONFIG_INPUT_IBM_PANEL is not set
+# CONFIG_INPUT_IMS_PCU is not set
+# CONFIG_INPUT_IQS269A is not set
+# CONFIG_INPUT_IQS626A is not set
+# CONFIG_INPUT_IQS7222 is not set
+# CONFIG_INPUT_CMA3000 is not set
+# CONFIG_INPUT_DRV260X_HAPTICS is not set
+# CONFIG_INPUT_DRV2665_HAPTICS is not set
+# CONFIG_INPUT_DRV2667_HAPTICS is not set
+# CONFIG_RMI4_CORE is not set
+
+#
+# Hardware I/O ports
+#
+CONFIG_SERIO=y
+CONFIG_SERIO_SERPORT=y
+# CONFIG_SERIO_AMBAKMI is not set
+# CONFIG_SERIO_PCIPS2 is not set
+CONFIG_SERIO_LIBPS2=y
+# CONFIG_SERIO_RAW is not set
+# CONFIG_SERIO_ALTERA_PS2 is not set
+# CONFIG_SERIO_PS2MULT is not set
+# CONFIG_SERIO_ARC_PS2 is not set
+# CONFIG_SERIO_APBPS2 is not set
+# CONFIG_SERIO_GPIO_PS2 is not set
+# CONFIG_USERIO is not set
+# CONFIG_GAMEPORT is not set
+# end of Hardware I/O ports
+# end of Input device support
+
+#
+# Character devices
+#
+CONFIG_TTY=y
+CONFIG_VT=y
+CONFIG_CONSOLE_TRANSLATIONS=y
+CONFIG_VT_CONSOLE=y
+CONFIG_VT_CONSOLE_SLEEP=y
+CONFIG_HW_CONSOLE=y
+CONFIG_VT_HW_CONSOLE_BINDING=y
+CONFIG_UNIX98_PTYS=y
+# CONFIG_LEGACY_PTYS is not set
+# CONFIG_LEGACY_TIOCSTI is not set
+# CONFIG_LDISC_AUTOLOAD is not set
+
+#
+# Serial drivers
+#
+CONFIG_SERIAL_EARLYCON=y
+CONFIG_SERIAL_8250=y
+# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
+# CONFIG_SERIAL_8250_16550A_VARIANTS is not set
+# CONFIG_SERIAL_8250_FINTEK is not set
+CONFIG_SERIAL_8250_CONSOLE=y
+CONFIG_SERIAL_8250_DMA=y
+CONFIG_SERIAL_8250_PCILIB=y
+CONFIG_SERIAL_8250_PCI=y
+CONFIG_SERIAL_8250_EXAR=y
+CONFIG_SERIAL_8250_NR_UARTS=4
+CONFIG_SERIAL_8250_RUNTIME_UARTS=4
+# CONFIG_SERIAL_8250_EXTENDED is not set
+# CONFIG_SERIAL_8250_PCI1XXXX is not set
+CONFIG_SERIAL_8250_DWLIB=y
+CONFIG_SERIAL_8250_DW=y
+# CONFIG_SERIAL_8250_RT288X is not set
+CONFIG_SERIAL_8250_PERICOM=y
+# CONFIG_SERIAL_OF_PLATFORM is not set
+
+#
+# Non-8250 serial port support
+#
+# CONFIG_SERIAL_AMBA_PL010 is not set
+# CONFIG_SERIAL_AMBA_PL011 is not set
+# CONFIG_SERIAL_EARLYCON_SEMIHOST is not set
+CONFIG_SERIAL_EARLYCON_RISCV_SBI=y
+# CONFIG_SERIAL_MAX3100 is not set
+# CONFIG_SERIAL_MAX310X is not set
+# CONFIG_SERIAL_UARTLITE is not set
+CONFIG_SERIAL_CORE=y
+CONFIG_SERIAL_CORE_CONSOLE=y
+# CONFIG_SERIAL_JSM is not set
+# CONFIG_SERIAL_SIFIVE is not set
+# CONFIG_SERIAL_SCCNXP is not set
+# CONFIG_SERIAL_SC16IS7XX is not set
+# CONFIG_SERIAL_ALTERA_JTAGUART is not set
+# CONFIG_SERIAL_ALTERA_UART is not set
+# CONFIG_SERIAL_XILINX_PS_UART is not set
+# CONFIG_SERIAL_ARC is not set
+# CONFIG_SERIAL_RP2 is not set
+# CONFIG_SERIAL_FSL_LPUART is not set
+# CONFIG_SERIAL_FSL_LINFLEXUART is not set
+# CONFIG_SERIAL_CONEXANT_DIGICOLOR is not set
+# CONFIG_SERIAL_SPRD is not set
+# end of Serial drivers
+
+CONFIG_SERIAL_MCTRL_GPIO=y
+# CONFIG_SERIAL_NONSTANDARD is not set
+# CONFIG_N_GSM is not set
+# CONFIG_NOZOMI is not set
+# CONFIG_NULL_TTY is not set
+# CONFIG_SERIAL_DEV_BUS is not set
+# CONFIG_VIRTIO_CONSOLE is not set
+# CONFIG_IPMI_HANDLER is not set
+# CONFIG_SSIF_IPMI_BMC is not set
+# CONFIG_IPMB_DEVICE_INTERFACE is not set
+CONFIG_HW_RANDOM=y
+# CONFIG_HW_RANDOM_TIMERIOMEM is not set
+# CONFIG_HW_RANDOM_BA431 is not set
+# CONFIG_HW_RANDOM_VIRTIO is not set
+# CONFIG_HW_RANDOM_CCTRNG is not set
+# CONFIG_HW_RANDOM_XIPHERA is not set
+CONFIG_HW_RANDOM_JH7110=m
+# CONFIG_APPLICOM is not set
+CONFIG_DEVMEM=y
+CONFIG_DEVPORT=y
+# CONFIG_TCG_TPM is not set
+# CONFIG_XILLYBUS is not set
+# CONFIG_XILLYUSB is not set
+# end of Character devices
+
+#
+# I2C support
+#
+CONFIG_I2C=y
+CONFIG_I2C_BOARDINFO=y
+CONFIG_I2C_COMPAT=y
+CONFIG_I2C_CHARDEV=y
+CONFIG_I2C_MUX=m
+
+#
+# Multiplexer I2C Chip support
+#
+# CONFIG_I2C_ARB_GPIO_CHALLENGE is not set
+# CONFIG_I2C_MUX_GPIO is not set
+CONFIG_I2C_MUX_GPMUX=m
+CONFIG_I2C_MUX_LTC4306=m
+# CONFIG_I2C_MUX_PCA9541 is not set
+# CONFIG_I2C_MUX_PCA954x is not set
+# CONFIG_I2C_MUX_PINCTRL is not set
+# CONFIG_I2C_MUX_REG is not set
+# CONFIG_I2C_DEMUX_PINCTRL is not set
+CONFIG_I2C_MUX_MLXCPLD=m
+# end of Multiplexer I2C Chip support
+
+CONFIG_I2C_HELPER_AUTO=y
+
+#
+# I2C Hardware Bus support
+#
+
+#
+# PC SMBus host controller drivers
+#
+# CONFIG_I2C_ALI1535 is not set
+# CONFIG_I2C_ALI1563 is not set
+# CONFIG_I2C_ALI15X3 is not set
+# CONFIG_I2C_AMD756 is not set
+# CONFIG_I2C_AMD8111 is not set
+# CONFIG_I2C_I801 is not set
+# CONFIG_I2C_ISCH is not set
+# CONFIG_I2C_PIIX4 is not set
+# CONFIG_I2C_NFORCE2 is not set
+# CONFIG_I2C_NVIDIA_GPU is not set
+# CONFIG_I2C_SIS5595 is not set
+# CONFIG_I2C_SIS630 is not set
+# CONFIG_I2C_SIS96X is not set
+# CONFIG_I2C_VIA is not set
+# CONFIG_I2C_VIAPRO is not set
+
+#
+# I2C system bus drivers (mostly embedded / system-on-chip)
+#
+# CONFIG_I2C_CBUS_GPIO is not set
+CONFIG_I2C_DESIGNWARE_CORE=m
+# CONFIG_I2C_DESIGNWARE_SLAVE is not set
+CONFIG_I2C_DESIGNWARE_PLATFORM=m
+# CONFIG_I2C_DESIGNWARE_PCI is not set
+# CONFIG_I2C_EMEV2 is not set
+# CONFIG_I2C_GPIO is not set
+# CONFIG_I2C_NOMADIK is not set
+# CONFIG_I2C_OCORES is not set
+# CONFIG_I2C_PCA_PLATFORM is not set
+# CONFIG_I2C_RK3X is not set
+# CONFIG_I2C_SIMTEC is not set
+# CONFIG_I2C_XILINX is not set
+
+#
+# External I2C/SMBus adapter drivers
+#
+# CONFIG_I2C_DIOLAN_U2C is not set
+# CONFIG_I2C_CP2615 is not set
+# CONFIG_I2C_PCI1XXXX is not set
+# CONFIG_I2C_ROBOTFUZZ_OSIF is not set
+# CONFIG_I2C_TAOS_EVM is not set
+# CONFIG_I2C_TINY_USB is not set
+
+#
+# Other I2C/SMBus bus drivers
+#
+# CONFIG_I2C_VIRTIO is not set
+# end of I2C Hardware Bus support
+
+# CONFIG_I2C_STUB is not set
+CONFIG_I2C_SLAVE=y
+# CONFIG_I2C_SLAVE_EEPROM is not set
+# CONFIG_I2C_SLAVE_TESTUNIT is not set
+# CONFIG_I2C_DEBUG_CORE is not set
+# CONFIG_I2C_DEBUG_ALGO is not set
+# CONFIG_I2C_DEBUG_BUS is not set
+# end of I2C support
+
+# CONFIG_I3C is not set
+CONFIG_SPI=y
+CONFIG_SPI_MASTER=y
+CONFIG_SPI_MEM=y
+
+#
+# SPI Master Controller Drivers
+#
+# CONFIG_SPI_ALTERA is not set
+# CONFIG_SPI_AXI_SPI_ENGINE is not set
+CONFIG_SPI_BITBANG=m
+# CONFIG_SPI_CADENCE is not set
+CONFIG_SPI_CADENCE_QUADSPI=y
+# CONFIG_SPI_CADENCE_XSPI is not set
+CONFIG_SPI_DESIGNWARE=y
+CONFIG_SPI_DW_DMA=y
+# CONFIG_SPI_DW_PCI is not set
+CONFIG_SPI_DW_MMIO=y
+CONFIG_SPI_GPIO=m
+# CONFIG_SPI_FSL_SPI is not set
+# CONFIG_SPI_MICROCHIP_CORE is not set
+# CONFIG_SPI_MICROCHIP_CORE_QSPI is not set
+# CONFIG_SPI_OC_TINY is not set
+# CONFIG_SPI_PCI1XXXX is not set
+# CONFIG_SPI_PL022 is not set
+# CONFIG_SPI_PXA2XX is not set
+# CONFIG_SPI_SC18IS602 is not set
+CONFIG_SPI_SIFIVE=m
+# CONFIG_SPI_SN_F_OSPI is not set
+# CONFIG_SPI_MXIC is not set
+# CONFIG_SPI_XCOMM is not set
+# CONFIG_SPI_XILINX is not set
+# CONFIG_SPI_ZYNQMP_GQSPI is not set
+# CONFIG_SPI_AMD is not set
+
+#
+# SPI Multiplexer support
+#
+CONFIG_SPI_MUX=m
+
+#
+# SPI Protocol Masters
+#
+CONFIG_SPI_SPIDEV=m
+CONFIG_SPI_LOOPBACK_TEST=m
+# CONFIG_SPI_TLE62X0 is not set
+CONFIG_SPI_SLAVE=y
+CONFIG_SPI_SLAVE_TIME=m
+CONFIG_SPI_SLAVE_SYSTEM_CONTROL=m
+CONFIG_SPI_DYNAMIC=y
+# CONFIG_SPMI is not set
+# CONFIG_HSI is not set
+CONFIG_PPS=y
+# CONFIG_PPS_DEBUG is not set
+
+#
+# PPS clients support
+#
+# CONFIG_PPS_CLIENT_KTIMER is not set
+CONFIG_PPS_CLIENT_LDISC=m
+# CONFIG_PPS_CLIENT_GPIO is not set
+
+#
+# PPS generators support
+#
+
+#
+# PTP clock support
+#
+# CONFIG_PTP_1588_CLOCK is not set
+CONFIG_PTP_1588_CLOCK_OPTIONAL=y
+
+#
+# Enable PHYLIB and NETWORK_PHY_TIMESTAMPING to see the additional clocks.
+#
+# end of PTP clock support
+
+CONFIG_PINCTRL=y
+CONFIG_GENERIC_PINCTRL_GROUPS=y
+CONFIG_PINMUX=y
+CONFIG_GENERIC_PINMUX_FUNCTIONS=y
+CONFIG_PINCONF=y
+CONFIG_GENERIC_PINCONF=y
+# CONFIG_PINCTRL_AXP209 is not set
+# CONFIG_PINCTRL_CY8C95X0 is not set
+# CONFIG_PINCTRL_MCP23S08 is not set
+# CONFIG_PINCTRL_MICROCHIP_SGPIO is not set
+# CONFIG_PINCTRL_OCELOT is not set
+# CONFIG_PINCTRL_SINGLE is not set
+# CONFIG_PINCTRL_STMFX is not set
+# CONFIG_PINCTRL_SX150X is not set
+
+#
+# Renesas pinctrl drivers
+#
+# end of Renesas pinctrl drivers
+
+CONFIG_PINCTRL_STARFIVE_JH7100=y
+CONFIG_PINCTRL_STARFIVE_JH7110=y
+CONFIG_PINCTRL_STARFIVE_JH7110_SYS=y
+CONFIG_PINCTRL_STARFIVE_JH7110_AON=y
+CONFIG_GPIOLIB=y
+CONFIG_GPIOLIB_FASTPATH_LIMIT=256
+CONFIG_OF_GPIO=y
+CONFIG_GPIOLIB_IRQCHIP=y
+CONFIG_GPIO_CDEV=y
+CONFIG_GPIO_CDEV_V1=y
+
+#
+# Memory mapped GPIO drivers
+#
+# CONFIG_GPIO_74XX_MMIO is not set
+# CONFIG_GPIO_ALTERA is not set
+# CONFIG_GPIO_CADENCE is not set
+# CONFIG_GPIO_DWAPB is not set
+# CONFIG_GPIO_EXAR is not set
+# CONFIG_GPIO_FTGPIO010 is not set
+# CONFIG_GPIO_GENERIC_PLATFORM is not set
+# CONFIG_GPIO_GRGPIO is not set
+# CONFIG_GPIO_HLWD is not set
+# CONFIG_GPIO_LOGICVC is not set
+# CONFIG_GPIO_MB86S7X is not set
+# CONFIG_GPIO_PL061 is not set
+# CONFIG_GPIO_SIFIVE is not set
+# CONFIG_GPIO_SYSCON is not set
+# CONFIG_GPIO_XILINX is not set
+# CONFIG_GPIO_AMD_FCH is not set
+# end of Memory mapped GPIO drivers
+
+#
+# I2C GPIO expanders
+#
+# CONFIG_GPIO_ADNP is not set
+# CONFIG_GPIO_FXL6408 is not set
+# CONFIG_GPIO_DS4520 is not set
+# CONFIG_GPIO_GW_PLD is not set
+# CONFIG_GPIO_MAX7300 is not set
+# CONFIG_GPIO_MAX732X is not set
+# CONFIG_GPIO_PCA953X is not set
+# CONFIG_GPIO_PCA9570 is not set
+# CONFIG_GPIO_PCF857X is not set
+# CONFIG_GPIO_TPIC2810 is not set
+# end of I2C GPIO expanders
+
+#
+# MFD GPIO expanders
+#
+CONFIG_GPIO_TPS65086=y
+# end of MFD GPIO expanders
+
+#
+# PCI GPIO expanders
+#
+# CONFIG_GPIO_BT8XX is not set
+# CONFIG_GPIO_PCI_IDIO_16 is not set
+# CONFIG_GPIO_PCIE_IDIO_24 is not set
+# CONFIG_GPIO_RDC321X is not set
+# end of PCI GPIO expanders
+
+#
+# SPI GPIO expanders
+#
+# CONFIG_GPIO_74X164 is not set
+# CONFIG_GPIO_MAX3191X is not set
+# CONFIG_GPIO_MAX7301 is not set
+# CONFIG_GPIO_MC33880 is not set
+# CONFIG_GPIO_PISOSR is not set
+# CONFIG_GPIO_XRA1403 is not set
+# end of SPI GPIO expanders
+
+#
+# USB GPIO expanders
+#
+# end of USB GPIO expanders
+
+#
+# Virtual GPIO drivers
+#
+CONFIG_GPIO_AGGREGATOR=m
+# CONFIG_GPIO_LATCH is not set
+# CONFIG_GPIO_MOCKUP is not set
+# CONFIG_GPIO_VIRTIO is not set
+# CONFIG_GPIO_SIM is not set
+# end of Virtual GPIO drivers
+
+# CONFIG_W1 is not set
+CONFIG_POWER_RESET=y
+CONFIG_POWER_RESET_GPIO=y
+CONFIG_POWER_RESET_GPIO_RESTART=y
+# CONFIG_POWER_RESET_LTC2952 is not set
+# CONFIG_POWER_RESET_REGULATOR is not set
+# CONFIG_POWER_RESET_RESTART is not set
+# CONFIG_POWER_RESET_TPS65086 is not set
+CONFIG_POWER_RESET_SYSCON=y
+CONFIG_POWER_RESET_SYSCON_POWEROFF=y
+CONFIG_REBOOT_MODE=y
+CONFIG_SYSCON_REBOOT_MODE=y
+# CONFIG_NVMEM_REBOOT_MODE is not set
+CONFIG_POWER_SUPPLY=y
+# CONFIG_POWER_SUPPLY_DEBUG is not set
+CONFIG_POWER_SUPPLY_HWMON=y
+# CONFIG_IP5XXX_POWER is not set
+# CONFIG_TEST_POWER is not set
+# CONFIG_CHARGER_ADP5061 is not set
+# CONFIG_BATTERY_CW2015 is not set
+# CONFIG_BATTERY_DS2780 is not set
+# CONFIG_BATTERY_DS2781 is not set
+# CONFIG_BATTERY_DS2782 is not set
+# CONFIG_BATTERY_SAMSUNG_SDI is not set
+# CONFIG_BATTERY_SBS is not set
+# CONFIG_CHARGER_SBS is not set
+# CONFIG_MANAGER_SBS is not set
+# CONFIG_BATTERY_BQ27XXX is not set
+# CONFIG_BATTERY_MAX17042 is not set
+# CONFIG_CHARGER_MAX8903 is not set
+# CONFIG_CHARGER_LP8727 is not set
+# CONFIG_CHARGER_GPIO is not set
+# CONFIG_CHARGER_MANAGER is not set
+# CONFIG_CHARGER_LT3651 is not set
+# CONFIG_CHARGER_LTC4162L is not set
+# CONFIG_CHARGER_DETECTOR_MAX14656 is not set
+# CONFIG_CHARGER_MAX77976 is not set
+# CONFIG_CHARGER_BQ2415X is not set
+# CONFIG_CHARGER_BQ24190 is not set
+# CONFIG_CHARGER_BQ24257 is not set
+# CONFIG_CHARGER_BQ24735 is not set
+# CONFIG_CHARGER_BQ2515X is not set
+# CONFIG_CHARGER_BQ25890 is not set
+# CONFIG_CHARGER_BQ25980 is not set
+# CONFIG_CHARGER_BQ256XX is not set
+# CONFIG_CHARGER_SMB347 is not set
+# CONFIG_BATTERY_GAUGE_LTC2941 is not set
+# CONFIG_BATTERY_GOLDFISH is not set
+# CONFIG_BATTERY_RT5033 is not set
+# CONFIG_CHARGER_RT9455 is not set
+# CONFIG_CHARGER_RT9467 is not set
+# CONFIG_CHARGER_RT9471 is not set
+# CONFIG_CHARGER_UCS1002 is not set
+# CONFIG_CHARGER_BD99954 is not set
+# CONFIG_BATTERY_UG3105 is not set
+# CONFIG_FUEL_GAUGE_MM8013 is not set
+CONFIG_HWMON=y
+# CONFIG_HWMON_DEBUG_CHIP is not set
+
+#
+# Native drivers
+#
+# CONFIG_SENSORS_AD7314 is not set
+# CONFIG_SENSORS_AD7414 is not set
+# CONFIG_SENSORS_AD7418 is not set
+# CONFIG_SENSORS_ADM1021 is not set
+# CONFIG_SENSORS_ADM1025 is not set
+# CONFIG_SENSORS_ADM1026 is not set
+# CONFIG_SENSORS_ADM1029 is not set
+# CONFIG_SENSORS_ADM1031 is not set
+# CONFIG_SENSORS_ADM1177 is not set
+# CONFIG_SENSORS_ADM9240 is not set
+# CONFIG_SENSORS_ADT7310 is not set
+# CONFIG_SENSORS_ADT7410 is not set
+# CONFIG_SENSORS_ADT7411 is not set
+# CONFIG_SENSORS_ADT7462 is not set
+# CONFIG_SENSORS_ADT7470 is not set
+# CONFIG_SENSORS_ADT7475 is not set
+# CONFIG_SENSORS_AHT10 is not set
+# CONFIG_SENSORS_AQUACOMPUTER_D5NEXT is not set
+# CONFIG_SENSORS_AS370 is not set
+# CONFIG_SENSORS_ASC7621 is not set
+# CONFIG_SENSORS_AXI_FAN_CONTROL is not set
+# CONFIG_SENSORS_ATXP1 is not set
+# CONFIG_SENSORS_CORSAIR_CPRO is not set
+# CONFIG_SENSORS_CORSAIR_PSU is not set
+# CONFIG_SENSORS_DS620 is not set
+# CONFIG_SENSORS_DS1621 is not set
+# CONFIG_SENSORS_I5K_AMB is not set
+# CONFIG_SENSORS_F71805F is not set
+# CONFIG_SENSORS_F71882FG is not set
+# CONFIG_SENSORS_F75375S is not set
+# CONFIG_SENSORS_FTSTEUTATES is not set
+# CONFIG_SENSORS_GIGABYTE_WATERFORCE is not set
+# CONFIG_SENSORS_GL518SM is not set
+# CONFIG_SENSORS_GL520SM is not set
+# CONFIG_SENSORS_G760A is not set
+# CONFIG_SENSORS_G762 is not set
+# CONFIG_SENSORS_GPIO_FAN is not set
+# CONFIG_SENSORS_HIH6130 is not set
+# CONFIG_SENSORS_HS3001 is not set
+# CONFIG_SENSORS_IT87 is not set
+# CONFIG_SENSORS_JC42 is not set
+# CONFIG_SENSORS_POWERZ is not set
+# CONFIG_SENSORS_POWR1220 is not set
+# CONFIG_SENSORS_LINEAGE is not set
+# CONFIG_SENSORS_LTC2945 is not set
+# CONFIG_SENSORS_LTC2947_I2C is not set
+# CONFIG_SENSORS_LTC2947_SPI is not set
+# CONFIG_SENSORS_LTC2990 is not set
+# CONFIG_SENSORS_LTC2991 is not set
+# CONFIG_SENSORS_LTC2992 is not set
+# CONFIG_SENSORS_LTC4151 is not set
+# CONFIG_SENSORS_LTC4215 is not set
+# CONFIG_SENSORS_LTC4222 is not set
+# CONFIG_SENSORS_LTC4245 is not set
+# CONFIG_SENSORS_LTC4260 is not set
+# CONFIG_SENSORS_LTC4261 is not set
+# CONFIG_SENSORS_MAX1111 is not set
+# CONFIG_SENSORS_MAX127 is not set
+# CONFIG_SENSORS_MAX16065 is not set
+# CONFIG_SENSORS_MAX1619 is not set
+# CONFIG_SENSORS_MAX1668 is not set
+# CONFIG_SENSORS_MAX197 is not set
+# CONFIG_SENSORS_MAX31722 is not set
+# CONFIG_SENSORS_MAX31730 is not set
+# CONFIG_SENSORS_MAX31760 is not set
+# CONFIG_MAX31827 is not set
+# CONFIG_SENSORS_MAX6620 is not set
+# CONFIG_SENSORS_MAX6621 is not set
+# CONFIG_SENSORS_MAX6639 is not set
+# CONFIG_SENSORS_MAX6642 is not set
+# CONFIG_SENSORS_MAX6650 is not set
+# CONFIG_SENSORS_MAX6697 is not set
+# CONFIG_SENSORS_MAX31790 is not set
+# CONFIG_SENSORS_MC34VR500 is not set
+# CONFIG_SENSORS_MCP3021 is not set
+# CONFIG_SENSORS_TC654 is not set
+# CONFIG_SENSORS_TPS23861 is not set
+# CONFIG_SENSORS_MR75203 is not set
+# CONFIG_SENSORS_ADCXX is not set
+# CONFIG_SENSORS_LM63 is not set
+# CONFIG_SENSORS_LM70 is not set
+# CONFIG_SENSORS_LM73 is not set
+# CONFIG_SENSORS_LM75 is not set
+# CONFIG_SENSORS_LM77 is not set
+# CONFIG_SENSORS_LM78 is not set
+# CONFIG_SENSORS_LM80 is not set
+# CONFIG_SENSORS_LM83 is not set
+# CONFIG_SENSORS_LM85 is not set
+# CONFIG_SENSORS_LM87 is not set
+# CONFIG_SENSORS_LM90 is not set
+# CONFIG_SENSORS_LM92 is not set
+# CONFIG_SENSORS_LM93 is not set
+# CONFIG_SENSORS_LM95234 is not set
+# CONFIG_SENSORS_LM95241 is not set
+# CONFIG_SENSORS_LM95245 is not set
+# CONFIG_SENSORS_PC87360 is not set
+# CONFIG_SENSORS_PC87427 is not set
+# CONFIG_SENSORS_NCT6683 is not set
+# CONFIG_SENSORS_NCT6775 is not set
+# CONFIG_SENSORS_NCT6775_I2C is not set
+# CONFIG_SENSORS_NCT7802 is not set
+# CONFIG_SENSORS_NCT7904 is not set
+# CONFIG_SENSORS_NPCM7XX is not set
+# CONFIG_SENSORS_NZXT_KRAKEN2 is not set
+# CONFIG_SENSORS_NZXT_SMART2 is not set
+# CONFIG_SENSORS_OCC_P8_I2C is not set
+# CONFIG_SENSORS_PCF8591 is not set
+# CONFIG_PMBUS is not set
+# CONFIG_SENSORS_PWM_FAN is not set
+# CONFIG_SENSORS_SBTSI is not set
+# CONFIG_SENSORS_SBRMI is not set
+# CONFIG_SENSORS_SHT15 is not set
+# CONFIG_SENSORS_SHT21 is not set
+# CONFIG_SENSORS_SHT3x is not set
+# CONFIG_SENSORS_SHT4x is not set
+# CONFIG_SENSORS_SHTC1 is not set
+# CONFIG_SENSORS_SIS5595 is not set
+# CONFIG_SENSORS_DME1737 is not set
+# CONFIG_SENSORS_EMC1403 is not set
+# CONFIG_SENSORS_EMC2103 is not set
+# CONFIG_SENSORS_EMC2305 is not set
+# CONFIG_SENSORS_EMC6W201 is not set
+# CONFIG_SENSORS_SMSC47M1 is not set
+# CONFIG_SENSORS_SMSC47M192 is not set
+# CONFIG_SENSORS_SMSC47B397 is not set
+# CONFIG_SENSORS_SCH5627 is not set
+# CONFIG_SENSORS_SCH5636 is not set
+# CONFIG_SENSORS_STTS751 is not set
+CONFIG_SENSORS_SFCTEMP=m
+# CONFIG_SENSORS_ADC128D818 is not set
+# CONFIG_SENSORS_ADS7828 is not set
+# CONFIG_SENSORS_ADS7871 is not set
+# CONFIG_SENSORS_AMC6821 is not set
+# CONFIG_SENSORS_INA209 is not set
+# CONFIG_SENSORS_INA2XX is not set
+# CONFIG_SENSORS_INA238 is not set
+# CONFIG_SENSORS_INA3221 is not set
+# CONFIG_SENSORS_TC74 is not set
+# CONFIG_SENSORS_THMC50 is not set
+# CONFIG_SENSORS_TMP102 is not set
+# CONFIG_SENSORS_TMP103 is not set
+# CONFIG_SENSORS_TMP108 is not set
+# CONFIG_SENSORS_TMP401 is not set
+# CONFIG_SENSORS_TMP421 is not set
+# CONFIG_SENSORS_TMP464 is not set
+# CONFIG_SENSORS_TMP513 is not set
+# CONFIG_SENSORS_VIA686A is not set
+# CONFIG_SENSORS_VT1211 is not set
+# CONFIG_SENSORS_VT8231 is not set
+# CONFIG_SENSORS_W83773G is not set
+# CONFIG_SENSORS_W83781D is not set
+# CONFIG_SENSORS_W83791D is not set
+# CONFIG_SENSORS_W83792D is not set
+# CONFIG_SENSORS_W83793 is not set
+# CONFIG_SENSORS_W83795 is not set
+# CONFIG_SENSORS_W83L785TS is not set
+# CONFIG_SENSORS_W83L786NG is not set
+# CONFIG_SENSORS_W83627HF is not set
+# CONFIG_SENSORS_W83627EHF is not set
+CONFIG_THERMAL=y
+CONFIG_THERMAL_NETLINK=y
+CONFIG_THERMAL_STATISTICS=y
+CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0
+CONFIG_THERMAL_HWMON=y
+CONFIG_THERMAL_OF=y
+CONFIG_THERMAL_WRITABLE_TRIPS=y
+CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y
+# CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE is not set
+# CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE is not set
+# CONFIG_THERMAL_GOV_FAIR_SHARE is not set
+CONFIG_THERMAL_GOV_STEP_WISE=y
+# CONFIG_THERMAL_GOV_BANG_BANG is not set
+CONFIG_THERMAL_GOV_USER_SPACE=y
+CONFIG_CPU_THERMAL=y
+CONFIG_CPU_FREQ_THERMAL=y
+CONFIG_DEVFREQ_THERMAL=y
+# CONFIG_THERMAL_EMULATION is not set
+# CONFIG_THERMAL_MMIO is not set
+CONFIG_WATCHDOG=y
+CONFIG_WATCHDOG_CORE=m
+# CONFIG_WATCHDOG_NOWAYOUT is not set
+CONFIG_WATCHDOG_HANDLE_BOOT_ENABLED=y
+CONFIG_WATCHDOG_OPEN_TIMEOUT=0
+# CONFIG_WATCHDOG_SYSFS is not set
+# CONFIG_WATCHDOG_HRTIMER_PRETIMEOUT is not set
+
+#
+# Watchdog Pretimeout Governors
+#
+# CONFIG_WATCHDOG_PRETIMEOUT_GOV is not set
+
+#
+# Watchdog Device Drivers
+#
+# CONFIG_SOFT_WATCHDOG is not set
+# CONFIG_GPIO_WATCHDOG is not set
+# CONFIG_XILINX_WATCHDOG is not set
+# CONFIG_ZIIRAVE_WATCHDOG is not set
+# CONFIG_CADENCE_WATCHDOG is not set
+# CONFIG_DW_WATCHDOG is not set
+# CONFIG_MAX63XX_WATCHDOG is not set
+# CONFIG_ALIM7101_WDT is not set
+# CONFIG_I6300ESB_WDT is not set
+# CONFIG_MEN_A21_WDT is not set
+CONFIG_STARFIVE_WATCHDOG=m
+
+#
+# PCI-based Watchdog Cards
+#
+# CONFIG_PCIPCWATCHDOG is not set
+# CONFIG_WDTPCI is not set
+
+#
+# USB-based Watchdog Cards
+#
+# CONFIG_USBPCWATCHDOG is not set
+CONFIG_SSB_POSSIBLE=y
+# CONFIG_SSB is not set
+CONFIG_BCMA_POSSIBLE=y
+# CONFIG_BCMA is not set
+
+#
+# Multifunction device drivers
+#
+CONFIG_MFD_CORE=y
+# CONFIG_MFD_ACT8945A is not set
+# CONFIG_MFD_AS3711 is not set
+# CONFIG_MFD_SMPRO is not set
+# CONFIG_MFD_AS3722 is not set
+# CONFIG_PMIC_ADP5520 is not set
+# CONFIG_MFD_AAT2870_CORE is not set
+# CONFIG_MFD_ATMEL_FLEXCOM is not set
+# CONFIG_MFD_ATMEL_HLCDC is not set
+# CONFIG_MFD_BCM590XX is not set
+# CONFIG_MFD_BD9571MWV is not set
+CONFIG_MFD_AXP20X=m
+CONFIG_MFD_AXP20X_I2C=m
+# CONFIG_MFD_CS42L43_I2C is not set
+# CONFIG_MFD_MADERA is not set
+# CONFIG_MFD_MAX5970 is not set
+# CONFIG_PMIC_DA903X is not set
+# CONFIG_MFD_DA9052_SPI is not set
+# CONFIG_MFD_DA9052_I2C is not set
+# CONFIG_MFD_DA9055 is not set
+# CONFIG_MFD_DA9062 is not set
+# CONFIG_MFD_DA9063 is not set
+# CONFIG_MFD_DA9150 is not set
+# CONFIG_MFD_DLN2 is not set
+# CONFIG_MFD_GATEWORKS_GSC is not set
+# CONFIG_MFD_MC13XXX_SPI is not set
+# CONFIG_MFD_MC13XXX_I2C is not set
+# CONFIG_MFD_MP2629 is not set
+# CONFIG_MFD_HI6421_PMIC is not set
+# CONFIG_LPC_ICH is not set
+# CONFIG_LPC_SCH is not set
+# CONFIG_MFD_IQS62X is not set
+# CONFIG_MFD_JANZ_CMODIO is not set
+# CONFIG_MFD_KEMPLD is not set
+# CONFIG_MFD_88PM800 is not set
+# CONFIG_MFD_88PM805 is not set
+# CONFIG_MFD_88PM860X is not set
+# CONFIG_MFD_MAX14577 is not set
+# CONFIG_MFD_MAX77541 is not set
+# CONFIG_MFD_MAX77620 is not set
+# CONFIG_MFD_MAX77650 is not set
+# CONFIG_MFD_MAX77686 is not set
+# CONFIG_MFD_MAX77693 is not set
+# CONFIG_MFD_MAX77714 is not set
+# CONFIG_MFD_MAX77843 is not set
+# CONFIG_MFD_MAX8907 is not set
+# CONFIG_MFD_MAX8925 is not set
+# CONFIG_MFD_MAX8997 is not set
+# CONFIG_MFD_MAX8998 is not set
+# CONFIG_MFD_MT6360 is not set
+# CONFIG_MFD_MT6370 is not set
+# CONFIG_MFD_MT6397 is not set
+# CONFIG_MFD_MENF21BMC is not set
+# CONFIG_MFD_OCELOT is not set
+# CONFIG_EZX_PCAP is not set
+# CONFIG_MFD_CPCAP is not set
+# CONFIG_MFD_VIPERBOARD is not set
+# CONFIG_MFD_NTXEC is not set
+# CONFIG_MFD_RETU is not set
+# CONFIG_MFD_PCF50633 is not set
+# CONFIG_MFD_SY7636A is not set
+# CONFIG_MFD_RDC321X is not set
+# CONFIG_MFD_RT4831 is not set
+# CONFIG_MFD_RT5033 is not set
+# CONFIG_MFD_RT5120 is not set
+# CONFIG_MFD_RC5T583 is not set
+# CONFIG_MFD_RK8XX_I2C is not set
+# CONFIG_MFD_RK8XX_SPI is not set
+# CONFIG_MFD_RN5T618 is not set
+# CONFIG_MFD_SEC_CORE is not set
+# CONFIG_MFD_SI476X_CORE is not set
+# CONFIG_MFD_SM501 is not set
+# CONFIG_MFD_SKY81452 is not set
+# CONFIG_MFD_STMPE is not set
+CONFIG_MFD_SYSCON=y
+# CONFIG_MFD_LP3943 is not set
+# CONFIG_MFD_LP8788 is not set
+# CONFIG_MFD_TI_LMU is not set
+# CONFIG_MFD_PALMAS is not set
+# CONFIG_TPS6105X is not set
+# CONFIG_TPS65010 is not set
+# CONFIG_TPS6507X is not set
+CONFIG_MFD_TPS65086=y
+# CONFIG_MFD_TPS65090 is not set
+# CONFIG_MFD_TPS65217 is not set
+# CONFIG_MFD_TI_LP873X is not set
+# CONFIG_MFD_TI_LP87565 is not set
+# CONFIG_MFD_TPS65218 is not set
+# CONFIG_MFD_TPS65219 is not set
+# CONFIG_MFD_TPS6586X is not set
+# CONFIG_MFD_TPS65910 is not set
+# CONFIG_MFD_TPS65912_I2C is not set
+# CONFIG_MFD_TPS65912_SPI is not set
+# CONFIG_MFD_TPS6594_I2C is not set
+# CONFIG_MFD_TPS6594_SPI is not set
+# CONFIG_TWL4030_CORE is not set
+# CONFIG_TWL6040_CORE is not set
+# CONFIG_MFD_WL1273_CORE is not set
+# CONFIG_MFD_LM3533 is not set
+# CONFIG_MFD_TC3589X is not set
+# CONFIG_MFD_TQMX86 is not set
+# CONFIG_MFD_VX855 is not set
+# CONFIG_MFD_LOCHNAGAR is not set
+# CONFIG_MFD_ARIZONA_I2C is not set
+# CONFIG_MFD_ARIZONA_SPI is not set
+# CONFIG_MFD_WM8400 is not set
+# CONFIG_MFD_WM831X_I2C is not set
+# CONFIG_MFD_WM831X_SPI is not set
+# CONFIG_MFD_WM8350_I2C is not set
+# CONFIG_MFD_WM8994 is not set
+# CONFIG_MFD_ROHM_BD718XX is not set
+# CONFIG_MFD_ROHM_BD71828 is not set
+# CONFIG_MFD_ROHM_BD957XMUF is not set
+# CONFIG_MFD_STPMIC1 is not set
+# CONFIG_MFD_STMFX is not set
+# CONFIG_MFD_ATC260X_I2C is not set
+# CONFIG_MFD_QCOM_PM8008 is not set
+# CONFIG_MFD_INTEL_M10_BMC_SPI is not set
+# CONFIG_MFD_RSMU_I2C is not set
+# CONFIG_MFD_RSMU_SPI is not set
+# end of Multifunction device drivers
+
+CONFIG_REGULATOR=y
+# CONFIG_REGULATOR_DEBUG is not set
+# CONFIG_REGULATOR_FIXED_VOLTAGE is not set
+# CONFIG_REGULATOR_VIRTUAL_CONSUMER is not set
+# CONFIG_REGULATOR_USERSPACE_CONSUMER is not set
+# CONFIG_REGULATOR_NETLINK_EVENTS is not set
+# CONFIG_REGULATOR_88PG86X is not set
+# CONFIG_REGULATOR_ACT8865 is not set
+# CONFIG_REGULATOR_AD5398 is not set
+# CONFIG_REGULATOR_AW37503 is not set
+CONFIG_REGULATOR_AXP20X=m
+# CONFIG_REGULATOR_DA9121 is not set
+# CONFIG_REGULATOR_DA9210 is not set
+# CONFIG_REGULATOR_DA9211 is not set
+# CONFIG_REGULATOR_FAN53555 is not set
+# CONFIG_REGULATOR_FAN53880 is not set
+# CONFIG_REGULATOR_GPIO is not set
+# CONFIG_REGULATOR_ISL9305 is not set
+# CONFIG_REGULATOR_ISL6271A is not set
+# CONFIG_REGULATOR_LP3971 is not set
+# CONFIG_REGULATOR_LP3972 is not set
+# CONFIG_REGULATOR_LP872X is not set
+# CONFIG_REGULATOR_LP8755 is not set
+# CONFIG_REGULATOR_LTC3589 is not set
+# CONFIG_REGULATOR_LTC3676 is not set
+# CONFIG_REGULATOR_MAX1586 is not set
+# CONFIG_REGULATOR_MAX77503 is not set
+# CONFIG_REGULATOR_MAX77857 is not set
+# CONFIG_REGULATOR_MAX8649 is not set
+# CONFIG_REGULATOR_MAX8660 is not set
+# CONFIG_REGULATOR_MAX8893 is not set
+# CONFIG_REGULATOR_MAX8952 is not set
+# CONFIG_REGULATOR_MAX8973 is not set
+# CONFIG_REGULATOR_MAX20086 is not set
+# CONFIG_REGULATOR_MAX20411 is not set
+# CONFIG_REGULATOR_MAX77826 is not set
+# CONFIG_REGULATOR_MCP16502 is not set
+# CONFIG_REGULATOR_MP5416 is not set
+# CONFIG_REGULATOR_MP8859 is not set
+# CONFIG_REGULATOR_MP886X is not set
+# CONFIG_REGULATOR_MPQ7920 is not set
+# CONFIG_REGULATOR_MT6311 is not set
+# CONFIG_REGULATOR_PCA9450 is not set
+# CONFIG_REGULATOR_PF8X00 is not set
+# CONFIG_REGULATOR_PFUZE100 is not set
+# CONFIG_REGULATOR_PV88060 is not set
+# CONFIG_REGULATOR_PV88080 is not set
+# CONFIG_REGULATOR_PV88090 is not set
+# CONFIG_REGULATOR_PWM is not set
+# CONFIG_REGULATOR_RAA215300 is not set
+# CONFIG_REGULATOR_RT4801 is not set
+# CONFIG_REGULATOR_RT4803 is not set
+# CONFIG_REGULATOR_RT5190A is not set
+# CONFIG_REGULATOR_RT5739 is not set
+# CONFIG_REGULATOR_RT5759 is not set
+# CONFIG_REGULATOR_RT6160 is not set
+# CONFIG_REGULATOR_RT6190 is not set
+# CONFIG_REGULATOR_RT6245 is not set
+# CONFIG_REGULATOR_RTQ2134 is not set
+# CONFIG_REGULATOR_RTMV20 is not set
+# CONFIG_REGULATOR_RTQ6752 is not set
+# CONFIG_REGULATOR_RTQ2208 is not set
+# CONFIG_REGULATOR_SLG51000 is not set
+# CONFIG_REGULATOR_SY8106A is not set
+# CONFIG_REGULATOR_SY8824X is not set
+# CONFIG_REGULATOR_SY8827N is not set
+# CONFIG_REGULATOR_TPS51632 is not set
+# CONFIG_REGULATOR_TPS62360 is not set
+# CONFIG_REGULATOR_TPS6286X is not set
+# CONFIG_REGULATOR_TPS6287X is not set
+# CONFIG_REGULATOR_TPS65023 is not set
+# CONFIG_REGULATOR_TPS6507X is not set
+# CONFIG_REGULATOR_TPS65086 is not set
+# CONFIG_REGULATOR_TPS65132 is not set
+# CONFIG_REGULATOR_TPS6524X is not set
+# CONFIG_REGULATOR_VCTRL is not set
+# CONFIG_RC_CORE is not set
+
+#
+# CEC support
+#
+# CONFIG_MEDIA_CEC_SUPPORT is not set
+# end of CEC support
+
+# CONFIG_MEDIA_SUPPORT is not set
+
+#
+# Graphics support
+#
+CONFIG_APERTURE_HELPERS=y
+CONFIG_VIDEO_CMDLINE=y
+CONFIG_VIDEO_NOMODESET=y
+# CONFIG_AUXDISPLAY is not set
+CONFIG_DRM=y
+CONFIG_DRM_MIPI_DSI=y
+# CONFIG_DRM_DEBUG_MM is not set
+CONFIG_DRM_KMS_HELPER=y
+CONFIG_DRM_FBDEV_EMULATION=y
+CONFIG_DRM_FBDEV_OVERALLOC=100
+# CONFIG_DRM_LOAD_EDID_FIRMWARE is not set
+CONFIG_DRM_GEM_SHMEM_HELPER=y
+
+#
+# I2C encoder or helper chips
+#
+# CONFIG_DRM_I2C_CH7006 is not set
+# CONFIG_DRM_I2C_SIL164 is not set
+CONFIG_DRM_I2C_NXP_TDA998X=m
+# CONFIG_DRM_I2C_NXP_TDA9950 is not set
+# end of I2C encoder or helper chips
+
+#
+# ARM devices
+#
+# CONFIG_DRM_KOMEDA is not set
+# end of ARM devices
+
+# CONFIG_DRM_RADEON is not set
+# CONFIG_DRM_AMDGPU is not set
+# CONFIG_DRM_NOUVEAU is not set
+# CONFIG_DRM_XE is not set
+# CONFIG_DRM_VGEM is not set
+# CONFIG_DRM_VKMS is not set
+# CONFIG_DRM_UDL is not set
+# CONFIG_DRM_AST is not set
+# CONFIG_DRM_MGAG200 is not set
+# CONFIG_DRM_QXL is not set
+# CONFIG_DRM_VIRTIO_GPU is not set
+CONFIG_DRM_PANEL=y
+
+#
+# Display Panels
+#
+# CONFIG_DRM_PANEL_ABT_Y030XX067A is not set
+# CONFIG_DRM_PANEL_ARM_VERSATILE is not set
+# CONFIG_DRM_PANEL_AUO_A030JTN01 is not set
+# CONFIG_DRM_PANEL_ILITEK_IL9322 is not set
+# CONFIG_DRM_PANEL_INNOLUX_EJ030NA is not set
+# CONFIG_DRM_PANEL_LG_LB035Q02 is not set
+# CONFIG_DRM_PANEL_LG_LG4573 is not set
+# CONFIG_DRM_PANEL_NEC_NL8048HL11 is not set
+# CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6D16D0 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6D27A1 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6E88A0_AMS452EF01 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0 is not set
+# CONFIG_DRM_PANEL_SHARP_LS037V7DW01 is not set
+# CONFIG_DRM_PANEL_TPO_TD043MTEA1 is not set
+# CONFIG_DRM_PANEL_TRULY_NT35597_WQXGA is not set
+# CONFIG_DRM_PANEL_VISIONOX_RM69299 is not set
+# end of Display Panels
+
+CONFIG_DRM_BRIDGE=y
+CONFIG_DRM_PANEL_BRIDGE=y
+
+#
+# Display Interface Bridges
+#
+# CONFIG_DRM_CHIPONE_ICN6211 is not set
+# CONFIG_DRM_CHRONTEL_CH7033 is not set
+CONFIG_DRM_DISPLAY_CONNECTOR=m
+# CONFIG_DRM_ITE_IT6505 is not set
+# CONFIG_DRM_LONTIUM_LT8912B is not set
+# CONFIG_DRM_LONTIUM_LT9211 is not set
+# CONFIG_DRM_LONTIUM_LT9611 is not set
+# CONFIG_DRM_LONTIUM_LT9611UXC is not set
+# CONFIG_DRM_ITE_IT66121 is not set
+# CONFIG_DRM_LVDS_CODEC is not set
+# CONFIG_DRM_MEGACHIPS_STDPXXXX_GE_B850V3_FW is not set
+# CONFIG_DRM_NWL_MIPI_DSI is not set
+# CONFIG_DRM_NXP_PTN3460 is not set
+# CONFIG_DRM_PARADE_PS8622 is not set
+# CONFIG_DRM_PARADE_PS8640 is not set
+# CONFIG_DRM_SAMSUNG_DSIM is not set
+# CONFIG_DRM_SIL_SII8620 is not set
+# CONFIG_DRM_SII902X is not set
+# CONFIG_DRM_SII9234 is not set
+# CONFIG_DRM_SIMPLE_BRIDGE is not set
+# CONFIG_DRM_THINE_THC63LVD1024 is not set
+# CONFIG_DRM_TOSHIBA_TC358762 is not set
+# CONFIG_DRM_TOSHIBA_TC358764 is not set
+# CONFIG_DRM_TOSHIBA_TC358767 is not set
+# CONFIG_DRM_TOSHIBA_TC358768 is not set
+# CONFIG_DRM_TOSHIBA_TC358775 is not set
+# CONFIG_DRM_TI_DLPC3433 is not set
+# CONFIG_DRM_TI_TFP410 is not set
+# CONFIG_DRM_TI_SN65DSI83 is not set
+# CONFIG_DRM_TI_SN65DSI86 is not set
+# CONFIG_DRM_TI_TPD12S015 is not set
+# CONFIG_DRM_ANALOGIX_ANX6345 is not set
+# CONFIG_DRM_ANALOGIX_ANX78XX is not set
+# CONFIG_DRM_ANALOGIX_ANX7625 is not set
+# CONFIG_DRM_I2C_ADV7511 is not set
+CONFIG_DRM_CDNS_DSI=m
+CONFIG_DRM_CDNS_DSI_J721E=y
+# CONFIG_DRM_CDNS_MHDP8546 is not set
+# end of Display Interface Bridges
+
+# CONFIG_DRM_ETNAVIV is not set
+# CONFIG_DRM_LOGICVC is not set
+# CONFIG_DRM_ARCPGU is not set
+# CONFIG_DRM_BOCHS is not set
+# CONFIG_DRM_CIRRUS_QEMU is not set
+# CONFIG_DRM_GM12U320 is not set
+# CONFIG_DRM_PANEL_MIPI_DBI is not set
+CONFIG_DRM_SIMPLEDRM=y
+# CONFIG_TINYDRM_HX8357D is not set
+# CONFIG_TINYDRM_ILI9163 is not set
+# CONFIG_TINYDRM_ILI9225 is not set
+# CONFIG_TINYDRM_ILI9341 is not set
+# CONFIG_TINYDRM_ILI9486 is not set
+# CONFIG_TINYDRM_MI0283QT is not set
+# CONFIG_TINYDRM_REPAPER is not set
+# CONFIG_TINYDRM_ST7586 is not set
+# CONFIG_TINYDRM_ST7735R is not set
+# CONFIG_DRM_GUD is not set
+# CONFIG_DRM_SSD130X is not set
+CONFIG_DRM_PANEL_ORIENTATION_QUIRKS=y
+
+#
+# Frame buffer Devices
+#
+CONFIG_FB=y
+# CONFIG_FB_CIRRUS is not set
+# CONFIG_FB_PM2 is not set
+# CONFIG_FB_CYBER2000 is not set
+# CONFIG_FB_ASILIANT is not set
+# CONFIG_FB_IMSTT is not set
+# CONFIG_FB_EFI is not set
+# CONFIG_FB_OPENCORES is not set
+# CONFIG_FB_S1D13XXX is not set
+# CONFIG_FB_NVIDIA is not set
+# CONFIG_FB_RIVA is not set
+# CONFIG_FB_I740 is not set
+# CONFIG_FB_MATROX is not set
+# CONFIG_FB_RADEON is not set
+# CONFIG_FB_ATY128 is not set
+# CONFIG_FB_ATY is not set
+# CONFIG_FB_S3 is not set
+# CONFIG_FB_SAVAGE is not set
+# CONFIG_FB_SIS is not set
+# CONFIG_FB_NEOMAGIC is not set
+# CONFIG_FB_KYRO is not set
+# CONFIG_FB_3DFX is not set
+# CONFIG_FB_VOODOO1 is not set
+# CONFIG_FB_VT8623 is not set
+# CONFIG_FB_TRIDENT is not set
+# CONFIG_FB_ARK is not set
+# CONFIG_FB_PM3 is not set
+# CONFIG_FB_CARMINE is not set
+# CONFIG_FB_SMSCUFX is not set
+# CONFIG_FB_UDL is not set
+# CONFIG_FB_IBM_GXT4500 is not set
+# CONFIG_FB_VIRTUAL is not set
+# CONFIG_FB_METRONOME is not set
+# CONFIG_FB_MB862XX is not set
+# CONFIG_FB_SSD1307 is not set
+# CONFIG_FB_SM712 is not set
+CONFIG_FB_CORE=y
+CONFIG_FB_NOTIFY=y
+# CONFIG_FIRMWARE_EDID is not set
+CONFIG_FB_DEVICE=y
+CONFIG_FB_SYS_FILLRECT=y
+CONFIG_FB_SYS_COPYAREA=y
+CONFIG_FB_SYS_IMAGEBLIT=y
+# CONFIG_FB_FOREIGN_ENDIAN is not set
+CONFIG_FB_SYSMEM_FOPS=y
+CONFIG_FB_DEFERRED_IO=y
+CONFIG_FB_SYSMEM_HELPERS=y
+CONFIG_FB_SYSMEM_HELPERS_DEFERRED=y
+# CONFIG_FB_MODE_HELPERS is not set
+# CONFIG_FB_TILEBLITTING is not set
+# end of Frame buffer Devices
+
+#
+# Backlight & LCD device support
+#
+# CONFIG_LCD_CLASS_DEVICE is not set
+# CONFIG_BACKLIGHT_CLASS_DEVICE is not set
+# end of Backlight & LCD device support
+
+CONFIG_HDMI=y
+
+#
+# Console display driver support
+#
+CONFIG_DUMMY_CONSOLE=y
+CONFIG_DUMMY_CONSOLE_COLUMNS=80
+CONFIG_DUMMY_CONSOLE_ROWS=25
+CONFIG_FRAMEBUFFER_CONSOLE=y
+# CONFIG_FRAMEBUFFER_CONSOLE_LEGACY_ACCELERATION is not set
+CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
+# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set
+# CONFIG_FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER is not set
+# end of Console display driver support
+
+# CONFIG_LOGO is not set
+# end of Graphics support
+
+# CONFIG_DRM_ACCEL is not set
+CONFIG_SOUND=m
+CONFIG_SND=m
+CONFIG_SND_TIMER=m
+CONFIG_SND_PCM=m
+CONFIG_SND_PCM_ELD=y
+CONFIG_SND_PCM_IEC958=y
+CONFIG_SND_DMAENGINE_PCM=m
+CONFIG_SND_HWDEP=m
+CONFIG_SND_RAWMIDI=m
+CONFIG_SND_JACK=y
+CONFIG_SND_JACK_INPUT_DEV=y
+# CONFIG_SND_OSSEMUL is not set
+CONFIG_SND_PCM_TIMER=y
+CONFIG_SND_HRTIMER=m
+CONFIG_SND_DYNAMIC_MINORS=y
+CONFIG_SND_MAX_CARDS=32
+# CONFIG_SND_SUPPORT_OLD_API is not set
+CONFIG_SND_PROC_FS=y
+CONFIG_SND_VERBOSE_PROCFS=y
+# CONFIG_SND_VERBOSE_PRINTK is not set
+CONFIG_SND_CTL_FAST_LOOKUP=y
+# CONFIG_SND_DEBUG is not set
+# CONFIG_SND_CTL_INPUT_VALIDATION is not set
+CONFIG_SND_VMASTER=y
+# CONFIG_SND_SEQUENCER is not set
+CONFIG_SND_AC97_CODEC=m
+CONFIG_SND_DRIVERS=y
+CONFIG_SND_DUMMY=m
+CONFIG_SND_ALOOP=m
+# CONFIG_SND_MTPAV is not set
+# CONFIG_SND_SERIAL_U16550 is not set
+# CONFIG_SND_MPU401 is not set
+# CONFIG_SND_AC97_POWER_SAVE is not set
+CONFIG_SND_PCI=y
+# CONFIG_SND_AD1889 is not set
+# CONFIG_SND_ATIIXP is not set
+# CONFIG_SND_ATIIXP_MODEM is not set
+# CONFIG_SND_AU8810 is not set
+# CONFIG_SND_AU8820 is not set
+# CONFIG_SND_AU8830 is not set
+# CONFIG_SND_AW2 is not set
+# CONFIG_SND_BT87X is not set
+# CONFIG_SND_CA0106 is not set
+# CONFIG_SND_CMIPCI is not set
+# CONFIG_SND_OXYGEN is not set
+# CONFIG_SND_CS4281 is not set
+# CONFIG_SND_CS46XX is not set
+# CONFIG_SND_CTXFI is not set
+# CONFIG_SND_DARLA20 is not set
+# CONFIG_SND_GINA20 is not set
+# CONFIG_SND_LAYLA20 is not set
+# CONFIG_SND_DARLA24 is not set
+# CONFIG_SND_GINA24 is not set
+# CONFIG_SND_LAYLA24 is not set
+# CONFIG_SND_MONA is not set
+# CONFIG_SND_MIA is not set
+# CONFIG_SND_ECHO3G is not set
+# CONFIG_SND_INDIGO is not set
+# CONFIG_SND_INDIGOIO is not set
+# CONFIG_SND_INDIGODJ is not set
+# CONFIG_SND_INDIGOIOX is not set
+# CONFIG_SND_INDIGODJX is not set
+# CONFIG_SND_ENS1370 is not set
+# CONFIG_SND_ENS1371 is not set
+# CONFIG_SND_FM801 is not set
+# CONFIG_SND_HDSP is not set
+# CONFIG_SND_HDSPM is not set
+# CONFIG_SND_ICE1724 is not set
+# CONFIG_SND_INTEL8X0 is not set
+# CONFIG_SND_INTEL8X0M is not set
+# CONFIG_SND_KORG1212 is not set
+# CONFIG_SND_LOLA is not set
+# CONFIG_SND_LX6464ES is not set
+# CONFIG_SND_MIXART is not set
+# CONFIG_SND_NM256 is not set
+# CONFIG_SND_PCXHR is not set
+# CONFIG_SND_RIPTIDE is not set
+# CONFIG_SND_RME32 is not set
+# CONFIG_SND_RME96 is not set
+# CONFIG_SND_RME9652 is not set
+# CONFIG_SND_SE6X is not set
+# CONFIG_SND_VIA82XX is not set
+# CONFIG_SND_VIA82XX_MODEM is not set
+# CONFIG_SND_VIRTUOSO is not set
+# CONFIG_SND_VX222 is not set
+# CONFIG_SND_YMFPCI is not set
+
+#
+# HD-Audio
+#
+# CONFIG_SND_HDA_INTEL is not set
+# end of HD-Audio
+
+CONFIG_SND_HDA_PREALLOC_SIZE=64
+CONFIG_SND_SPI=y
+CONFIG_SND_USB=y
+CONFIG_SND_USB_AUDIO=m
+# CONFIG_SND_USB_AUDIO_MIDI_V2 is not set
+CONFIG_SND_USB_UA101=m
+CONFIG_SND_USB_CAIAQ=m
+# CONFIG_SND_USB_CAIAQ_INPUT is not set
+CONFIG_SND_USB_6FIRE=m
+CONFIG_SND_USB_HIFACE=m
+CONFIG_SND_BCD2000=m
+CONFIG_SND_USB_LINE6=m
+CONFIG_SND_USB_POD=m
+CONFIG_SND_USB_PODHD=m
+CONFIG_SND_USB_TONEPORT=m
+CONFIG_SND_USB_VARIAX=m
+CONFIG_SND_SOC=m
+CONFIG_SND_SOC_AC97_BUS=y
+CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
+# CONFIG_SND_SOC_ADI is not set
+# CONFIG_SND_SOC_AMD_ACP is not set
+# CONFIG_SND_AMD_ACP_CONFIG is not set
+# CONFIG_SND_ATMEL_SOC is not set
+# CONFIG_SND_BCM63XX_I2S_WHISTLER is not set
+# CONFIG_SND_DESIGNWARE_I2S is not set
+
+#
+# SoC Audio for Freescale CPUs
+#
+
+#
+# Common SoC Audio options for Freescale CPUs:
+#
+# CONFIG_SND_SOC_FSL_ASRC is not set
+# CONFIG_SND_SOC_FSL_SAI is not set
+# CONFIG_SND_SOC_FSL_AUDMIX is not set
+# CONFIG_SND_SOC_FSL_SSI is not set
+# CONFIG_SND_SOC_FSL_SPDIF is not set
+# CONFIG_SND_SOC_FSL_ESAI is not set
+# CONFIG_SND_SOC_FSL_MICFIL is not set
+# CONFIG_SND_SOC_FSL_XCVR is not set
+# CONFIG_SND_SOC_IMX_AUDMUX is not set
+# end of SoC Audio for Freescale CPUs
+
+# CONFIG_SND_SOC_CHV3_I2S is not set
+# CONFIG_SND_I2S_HI6210_I2S is not set
+# CONFIG_SND_SOC_IMG is not set
+# CONFIG_SND_SOC_MTK_BTCVSD is not set
+# CONFIG_SND_SOC_SOF_TOPLEVEL is not set
+CONFIG_SND_SOC_STARFIVE=m
+CONFIG_SND_SOC_JH7110_PWMDAC=m
+CONFIG_SND_SOC_JH7110_TDM=m
+
+#
+# STMicroelectronics STM32 SOC audio support
+#
+# end of STMicroelectronics STM32 SOC audio support
+
+# CONFIG_SND_SOC_XILINX_I2S is not set
+# CONFIG_SND_SOC_XILINX_AUDIO_FORMATTER is not set
+# CONFIG_SND_SOC_XILINX_SPDIF is not set
+# CONFIG_SND_SOC_XTFPGA_I2S is not set
+CONFIG_SND_SOC_I2C_AND_SPI=m
+
+#
+# CODEC drivers
+#
+CONFIG_SND_SOC_AC97_CODEC=m
+# CONFIG_SND_SOC_ADAU1372_I2C is not set
+# CONFIG_SND_SOC_ADAU1372_SPI is not set
+# CONFIG_SND_SOC_ADAU1701 is not set
+# CONFIG_SND_SOC_ADAU1761_I2C is not set
+# CONFIG_SND_SOC_ADAU1761_SPI is not set
+# CONFIG_SND_SOC_ADAU7002 is not set
+# CONFIG_SND_SOC_ADAU7118_HW is not set
+# CONFIG_SND_SOC_ADAU7118_I2C is not set
+# CONFIG_SND_SOC_AK4104 is not set
+# CONFIG_SND_SOC_AK4118 is not set
+# CONFIG_SND_SOC_AK4375 is not set
+# CONFIG_SND_SOC_AK4458 is not set
+# CONFIG_SND_SOC_AK4554 is not set
+# CONFIG_SND_SOC_AK4613 is not set
+# CONFIG_SND_SOC_AK4642 is not set
+# CONFIG_SND_SOC_AK5386 is not set
+# CONFIG_SND_SOC_AK5558 is not set
+# CONFIG_SND_SOC_ALC5623 is not set
+# CONFIG_SND_SOC_AW8738 is not set
+# CONFIG_SND_SOC_AW88395 is not set
+# CONFIG_SND_SOC_AW88261 is not set
+# CONFIG_SND_SOC_AW87390 is not set
+# CONFIG_SND_SOC_AW88399 is not set
+# CONFIG_SND_SOC_BD28623 is not set
+# CONFIG_SND_SOC_BT_SCO is not set
+# CONFIG_SND_SOC_CHV3_CODEC is not set
+# CONFIG_SND_SOC_CS35L32 is not set
+# CONFIG_SND_SOC_CS35L33 is not set
+# CONFIG_SND_SOC_CS35L34 is not set
+# CONFIG_SND_SOC_CS35L35 is not set
+# CONFIG_SND_SOC_CS35L36 is not set
+# CONFIG_SND_SOC_CS35L41_SPI is not set
+# CONFIG_SND_SOC_CS35L41_I2C is not set
+# CONFIG_SND_SOC_CS35L45_SPI is not set
+# CONFIG_SND_SOC_CS35L45_I2C is not set
+# CONFIG_SND_SOC_CS35L56_I2C is not set
+# CONFIG_SND_SOC_CS35L56_SPI is not set
+# CONFIG_SND_SOC_CS42L42 is not set
+# CONFIG_SND_SOC_CS42L51_I2C is not set
+# CONFIG_SND_SOC_CS42L52 is not set
+# CONFIG_SND_SOC_CS42L56 is not set
+# CONFIG_SND_SOC_CS42L73 is not set
+# CONFIG_SND_SOC_CS42L83 is not set
+# CONFIG_SND_SOC_CS4234 is not set
+# CONFIG_SND_SOC_CS4265 is not set
+# CONFIG_SND_SOC_CS4270 is not set
+# CONFIG_SND_SOC_CS4271_I2C is not set
+# CONFIG_SND_SOC_CS4271_SPI is not set
+# CONFIG_SND_SOC_CS42XX8_I2C is not set
+# CONFIG_SND_SOC_CS43130 is not set
+# CONFIG_SND_SOC_CS4341 is not set
+# CONFIG_SND_SOC_CS4349 is not set
+# CONFIG_SND_SOC_CS53L30 is not set
+# CONFIG_SND_SOC_CX2072X is not set
+# CONFIG_SND_SOC_DA7213 is not set
+# CONFIG_SND_SOC_DMIC is not set
+CONFIG_SND_SOC_HDMI_CODEC=m
+# CONFIG_SND_SOC_ES7134 is not set
+# CONFIG_SND_SOC_ES7241 is not set
+# CONFIG_SND_SOC_ES8316 is not set
+# CONFIG_SND_SOC_ES8326 is not set
+# CONFIG_SND_SOC_ES8328_I2C is not set
+# CONFIG_SND_SOC_ES8328_SPI is not set
+# CONFIG_SND_SOC_GTM601 is not set
+# CONFIG_SND_SOC_HDA is not set
+# CONFIG_SND_SOC_ICS43432 is not set
+# CONFIG_SND_SOC_IDT821034 is not set
+# CONFIG_SND_SOC_INNO_RK3036 is not set
+# CONFIG_SND_SOC_MAX98088 is not set
+# CONFIG_SND_SOC_MAX98090 is not set
+# CONFIG_SND_SOC_MAX98357A is not set
+# CONFIG_SND_SOC_MAX98504 is not set
+# CONFIG_SND_SOC_MAX9867 is not set
+# CONFIG_SND_SOC_MAX98927 is not set
+# CONFIG_SND_SOC_MAX98520 is not set
+# CONFIG_SND_SOC_MAX98373_I2C is not set
+# CONFIG_SND_SOC_MAX98388 is not set
+# CONFIG_SND_SOC_MAX98390 is not set
+# CONFIG_SND_SOC_MAX98396 is not set
+# CONFIG_SND_SOC_MAX9860 is not set
+# CONFIG_SND_SOC_MSM8916_WCD_DIGITAL is not set
+# CONFIG_SND_SOC_PCM1681 is not set
+# CONFIG_SND_SOC_PCM1789_I2C is not set
+# CONFIG_SND_SOC_PCM179X_I2C is not set
+# CONFIG_SND_SOC_PCM179X_SPI is not set
+# CONFIG_SND_SOC_PCM186X_I2C is not set
+# CONFIG_SND_SOC_PCM186X_SPI is not set
+# CONFIG_SND_SOC_PCM3060_I2C is not set
+# CONFIG_SND_SOC_PCM3060_SPI is not set
+# CONFIG_SND_SOC_PCM3168A_I2C is not set
+# CONFIG_SND_SOC_PCM3168A_SPI is not set
+# CONFIG_SND_SOC_PCM5102A is not set
+# CONFIG_SND_SOC_PCM512x_I2C is not set
+# CONFIG_SND_SOC_PCM512x_SPI is not set
+# CONFIG_SND_SOC_PEB2466 is not set
+# CONFIG_SND_SOC_RK3328 is not set
+# CONFIG_SND_SOC_RT5616 is not set
+# CONFIG_SND_SOC_RT5631 is not set
+# CONFIG_SND_SOC_RT5640 is not set
+# CONFIG_SND_SOC_RT5659 is not set
+# CONFIG_SND_SOC_RT9120 is not set
+# CONFIG_SND_SOC_RTQ9128 is not set
+# CONFIG_SND_SOC_SGTL5000 is not set
+# CONFIG_SND_SOC_SIMPLE_AMPLIFIER is not set
+# CONFIG_SND_SOC_SIMPLE_MUX is not set
+# CONFIG_SND_SOC_SMA1303 is not set
+CONFIG_SND_SOC_SPDIF=m
+# CONFIG_SND_SOC_SRC4XXX_I2C is not set
+# CONFIG_SND_SOC_SSM2305 is not set
+# CONFIG_SND_SOC_SSM2518 is not set
+# CONFIG_SND_SOC_SSM2602_SPI is not set
+# CONFIG_SND_SOC_SSM2602_I2C is not set
+# CONFIG_SND_SOC_SSM3515 is not set
+# CONFIG_SND_SOC_SSM4567 is not set
+# CONFIG_SND_SOC_STA32X is not set
+# CONFIG_SND_SOC_STA350 is not set
+# CONFIG_SND_SOC_STI_SAS is not set
+# CONFIG_SND_SOC_TAS2552 is not set
+# CONFIG_SND_SOC_TAS2562 is not set
+# CONFIG_SND_SOC_TAS2764 is not set
+# CONFIG_SND_SOC_TAS2770 is not set
+# CONFIG_SND_SOC_TAS2780 is not set
+# CONFIG_SND_SOC_TAS2781_I2C is not set
+# CONFIG_SND_SOC_TAS5086 is not set
+# CONFIG_SND_SOC_TAS571X is not set
+# CONFIG_SND_SOC_TAS5720 is not set
+# CONFIG_SND_SOC_TAS5805M is not set
+# CONFIG_SND_SOC_TAS6424 is not set
+# CONFIG_SND_SOC_TDA7419 is not set
+# CONFIG_SND_SOC_TFA9879 is not set
+# CONFIG_SND_SOC_TFA989X is not set
+# CONFIG_SND_SOC_TLV320ADC3XXX is not set
+# CONFIG_SND_SOC_TLV320AIC23_I2C is not set
+# CONFIG_SND_SOC_TLV320AIC23_SPI is not set
+# CONFIG_SND_SOC_TLV320AIC31XX is not set
+# CONFIG_SND_SOC_TLV320AIC32X4_I2C is not set
+# CONFIG_SND_SOC_TLV320AIC32X4_SPI is not set
+# CONFIG_SND_SOC_TLV320AIC3X_I2C is not set
+# CONFIG_SND_SOC_TLV320AIC3X_SPI is not set
+# CONFIG_SND_SOC_TLV320ADCX140 is not set
+# CONFIG_SND_SOC_TS3A227E is not set
+# CONFIG_SND_SOC_TSCS42XX is not set
+# CONFIG_SND_SOC_TSCS454 is not set
+# CONFIG_SND_SOC_UDA1334 is not set
+# CONFIG_SND_SOC_WM8510 is not set
+# CONFIG_SND_SOC_WM8523 is not set
+# CONFIG_SND_SOC_WM8524 is not set
+# CONFIG_SND_SOC_WM8580 is not set
+# CONFIG_SND_SOC_WM8711 is not set
+# CONFIG_SND_SOC_WM8728 is not set
+# CONFIG_SND_SOC_WM8731_I2C is not set
+# CONFIG_SND_SOC_WM8731_SPI is not set
+# CONFIG_SND_SOC_WM8737 is not set
+# CONFIG_SND_SOC_WM8741 is not set
+# CONFIG_SND_SOC_WM8750 is not set
+# CONFIG_SND_SOC_WM8753 is not set
+# CONFIG_SND_SOC_WM8770 is not set
+# CONFIG_SND_SOC_WM8776 is not set
+# CONFIG_SND_SOC_WM8782 is not set
+# CONFIG_SND_SOC_WM8804_I2C is not set
+# CONFIG_SND_SOC_WM8804_SPI is not set
+# CONFIG_SND_SOC_WM8903 is not set
+# CONFIG_SND_SOC_WM8904 is not set
+# CONFIG_SND_SOC_WM8940 is not set
+# CONFIG_SND_SOC_WM8960 is not set
+# CONFIG_SND_SOC_WM8961 is not set
+# CONFIG_SND_SOC_WM8962 is not set
+# CONFIG_SND_SOC_WM8974 is not set
+# CONFIG_SND_SOC_WM8978 is not set
+# CONFIG_SND_SOC_WM8985 is not set
+# CONFIG_SND_SOC_ZL38060 is not set
+# CONFIG_SND_SOC_MAX9759 is not set
+# CONFIG_SND_SOC_MT6351 is not set
+# CONFIG_SND_SOC_MT6358 is not set
+# CONFIG_SND_SOC_MT6660 is not set
+# CONFIG_SND_SOC_NAU8315 is not set
+# CONFIG_SND_SOC_NAU8540 is not set
+# CONFIG_SND_SOC_NAU8810 is not set
+# CONFIG_SND_SOC_NAU8821 is not set
+# CONFIG_SND_SOC_NAU8822 is not set
+# CONFIG_SND_SOC_NAU8824 is not set
+# CONFIG_SND_SOC_TPA6130A2 is not set
+# CONFIG_SND_SOC_LPASS_WSA_MACRO is not set
+# CONFIG_SND_SOC_LPASS_VA_MACRO is not set
+# CONFIG_SND_SOC_LPASS_RX_MACRO is not set
+# CONFIG_SND_SOC_LPASS_TX_MACRO is not set
+# end of CODEC drivers
+
+CONFIG_SND_SIMPLE_CARD_UTILS=m
+CONFIG_SND_SIMPLE_CARD=m
+# CONFIG_SND_AUDIO_GRAPH_CARD is not set
+# CONFIG_SND_AUDIO_GRAPH_CARD2 is not set
+# CONFIG_SND_TEST_COMPONENT is not set
+# CONFIG_SND_VIRTIO is not set
+CONFIG_AC97_BUS=m
+CONFIG_HID_SUPPORT=y
+CONFIG_HID=m
+CONFIG_HID_BATTERY_STRENGTH=y
+CONFIG_HIDRAW=y
+CONFIG_UHID=m
+CONFIG_HID_GENERIC=m
+
+#
+# Special HID drivers
+#
+# CONFIG_HID_A4TECH is not set
+# CONFIG_HID_ACCUTOUCH is not set
+# CONFIG_HID_ACRUX is not set
+# CONFIG_HID_APPLE is not set
+# CONFIG_HID_APPLEIR is not set
+# CONFIG_HID_ASUS is not set
+# CONFIG_HID_AUREAL is not set
+# CONFIG_HID_BELKIN is not set
+# CONFIG_HID_BETOP_FF is not set
+# CONFIG_HID_BIGBEN_FF is not set
+# CONFIG_HID_CHERRY is not set
+# CONFIG_HID_CHICONY is not set
+# CONFIG_HID_CORSAIR is not set
+# CONFIG_HID_COUGAR is not set
+# CONFIG_HID_MACALLY is not set
+# CONFIG_HID_PRODIKEYS is not set
+# CONFIG_HID_CMEDIA is not set
+# CONFIG_HID_CP2112 is not set
+# CONFIG_HID_CREATIVE_SB0540 is not set
+# CONFIG_HID_CYPRESS is not set
+# CONFIG_HID_DRAGONRISE is not set
+# CONFIG_HID_EMS_FF is not set
+# CONFIG_HID_ELAN is not set
+# CONFIG_HID_ELECOM is not set
+# CONFIG_HID_ELO is not set
+# CONFIG_HID_EVISION is not set
+# CONFIG_HID_EZKEY is not set
+# CONFIG_HID_FT260 is not set
+# CONFIG_HID_GEMBIRD is not set
+# CONFIG_HID_GFRM is not set
+# CONFIG_HID_GLORIOUS is not set
+# CONFIG_HID_HOLTEK is not set
+# CONFIG_HID_GOOGLE_STADIA_FF is not set
+# CONFIG_HID_VIVALDI is not set
+# CONFIG_HID_GT683R is not set
+# CONFIG_HID_KEYTOUCH is not set
+# CONFIG_HID_KYE is not set
+CONFIG_HID_UCLOGIC=m
+# CONFIG_HID_WALTOP is not set
+# CONFIG_HID_VIEWSONIC is not set
+# CONFIG_HID_VRC2 is not set
+# CONFIG_HID_XIAOMI is not set
+# CONFIG_HID_GYRATION is not set
+# CONFIG_HID_ICADE is not set
+# CONFIG_HID_ITE is not set
+# CONFIG_HID_JABRA is not set
+# CONFIG_HID_TWINHAN is not set
+# CONFIG_HID_KENSINGTON is not set
+# CONFIG_HID_LCPOWER is not set
+# CONFIG_HID_LED is not set
+# CONFIG_HID_LENOVO is not set
+# CONFIG_HID_LETSKETCH is not set
+CONFIG_HID_LOGITECH=m
+# CONFIG_HID_LOGITECH_DJ is not set
+# CONFIG_HID_LOGITECH_HIDPP is not set
+# CONFIG_LOGITECH_FF is not set
+# CONFIG_LOGIRUMBLEPAD2_FF is not set
+# CONFIG_LOGIG940_FF is not set
+# CONFIG_LOGIWHEELS_FF is not set
+# CONFIG_HID_MAGICMOUSE is not set
+# CONFIG_HID_MALTRON is not set
+# CONFIG_HID_MAYFLASH is not set
+# CONFIG_HID_MEGAWORLD_FF is not set
+# CONFIG_HID_REDRAGON is not set
+# CONFIG_HID_MICROSOFT is not set
+# CONFIG_HID_MONTEREY is not set
+# CONFIG_HID_MULTITOUCH is not set
+# CONFIG_HID_NINTENDO is not set
+# CONFIG_HID_NTI is not set
+# CONFIG_HID_NTRIG is not set
+# CONFIG_HID_ORTEK is not set
+# CONFIG_HID_PANTHERLORD is not set
+# CONFIG_HID_PENMOUNT is not set
+# CONFIG_HID_PETALYNX is not set
+# CONFIG_HID_PICOLCD is not set
+# CONFIG_HID_PLANTRONICS is not set
+# CONFIG_HID_PXRC is not set
+# CONFIG_HID_RAZER is not set
+# CONFIG_HID_PRIMAX is not set
+# CONFIG_HID_RETRODE is not set
+# CONFIG_HID_ROCCAT is not set
+# CONFIG_HID_SAITEK is not set
+# CONFIG_HID_SAMSUNG is not set
+# CONFIG_HID_SEMITEK is not set
+# CONFIG_HID_SIGMAMICRO is not set
+# CONFIG_HID_SONY is not set
+# CONFIG_HID_SPEEDLINK is not set
+# CONFIG_HID_STEAM is not set
+# CONFIG_HID_STEELSERIES is not set
+# CONFIG_HID_SUNPLUS is not set
+# CONFIG_HID_RMI is not set
+# CONFIG_HID_GREENASIA is not set
+# CONFIG_HID_SMARTJOYPLUS is not set
+# CONFIG_HID_TIVO is not set
+# CONFIG_HID_TOPSEED is not set
+# CONFIG_HID_TOPRE is not set
+# CONFIG_HID_THINGM is not set
+# CONFIG_HID_THRUSTMASTER is not set
+# CONFIG_HID_UDRAW_PS3 is not set
+# CONFIG_HID_U2FZERO is not set
+# CONFIG_HID_WACOM is not set
+# CONFIG_HID_WIIMOTE is not set
+# CONFIG_HID_XINMO is not set
+# CONFIG_HID_ZEROPLUS is not set
+# CONFIG_HID_ZYDACRON is not set
+# CONFIG_HID_SENSOR_HUB is not set
+# CONFIG_HID_ALPS is not set
+# CONFIG_HID_MCP2200 is not set
+# CONFIG_HID_MCP2221 is not set
+# end of Special HID drivers
+
+#
+# HID-BPF support
+#
+# end of HID-BPF support
+
+#
+# USB HID support
+#
+CONFIG_USB_HID=m
+# CONFIG_HID_PID is not set
+CONFIG_USB_HIDDEV=y
+# end of USB HID support
+
+CONFIG_I2C_HID=m
+# CONFIG_I2C_HID_OF is not set
+# CONFIG_I2C_HID_OF_ELAN is not set
+# CONFIG_I2C_HID_OF_GOODIX is not set
+CONFIG_USB_OHCI_LITTLE_ENDIAN=y
+CONFIG_USB_SUPPORT=y
+CONFIG_USB_COMMON=y
+# CONFIG_USB_LED_TRIG is not set
+# CONFIG_USB_ULPI_BUS is not set
+# CONFIG_USB_CONN_GPIO is not set
+CONFIG_USB_ARCH_HAS_HCD=y
+CONFIG_USB=y
+CONFIG_USB_PCI=y
+# CONFIG_USB_PCI_AMD is not set
+CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
+
+#
+# Miscellaneous USB options
+#
+CONFIG_USB_DEFAULT_PERSIST=y
+# CONFIG_USB_FEW_INIT_RETRIES is not set
+# CONFIG_USB_DYNAMIC_MINORS is not set
+# CONFIG_USB_OTG is not set
+# CONFIG_USB_OTG_PRODUCTLIST is not set
+# CONFIG_USB_LEDS_TRIGGER_USBPORT is not set
+CONFIG_USB_AUTOSUSPEND_DELAY=2
+# CONFIG_USB_MON is not set
+
+#
+# USB Host Controller Drivers
+#
+# CONFIG_USB_C67X00_HCD is not set
+CONFIG_USB_XHCI_HCD=y
+CONFIG_USB_XHCI_DBGCAP=y
+CONFIG_USB_XHCI_PCI=y
+# CONFIG_USB_XHCI_PCI_RENESAS is not set
+CONFIG_USB_XHCI_PLATFORM=y
+# CONFIG_USB_EHCI_HCD is not set
+# CONFIG_USB_OXU210HP_HCD is not set
+# CONFIG_USB_ISP116X_HCD is not set
+# CONFIG_USB_MAX3421_HCD is not set
+# CONFIG_USB_OHCI_HCD is not set
+# CONFIG_USB_UHCI_HCD is not set
+# CONFIG_USB_SL811_HCD is not set
+# CONFIG_USB_R8A66597_HCD is not set
+# CONFIG_USB_HCD_TEST_MODE is not set
+
+#
+# USB Device Class drivers
+#
+# CONFIG_USB_ACM is not set
+# CONFIG_USB_PRINTER is not set
+# CONFIG_USB_WDM is not set
+# CONFIG_USB_TMC is not set
+
+#
+# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may
+#
+
+#
+# also be needed; see USB_STORAGE Help for more info
+#
+CONFIG_USB_STORAGE=y
+# CONFIG_USB_STORAGE_DEBUG is not set
+# CONFIG_USB_STORAGE_REALTEK is not set
+# CONFIG_USB_STORAGE_DATAFAB is not set
+# CONFIG_USB_STORAGE_FREECOM is not set
+# CONFIG_USB_STORAGE_ISD200 is not set
+# CONFIG_USB_STORAGE_USBAT is not set
+# CONFIG_USB_STORAGE_SDDR09 is not set
+# CONFIG_USB_STORAGE_SDDR55 is not set
+# CONFIG_USB_STORAGE_JUMPSHOT is not set
+# CONFIG_USB_STORAGE_ALAUDA is not set
+# CONFIG_USB_STORAGE_ONETOUCH is not set
+# CONFIG_USB_STORAGE_KARMA is not set
+# CONFIG_USB_STORAGE_CYPRESS_ATACB is not set
+# CONFIG_USB_STORAGE_ENE_UB6250 is not set
+CONFIG_USB_UAS=y
+
+#
+# USB Imaging devices
+#
+# CONFIG_USB_MDC800 is not set
+# CONFIG_USB_MICROTEK is not set
+# CONFIG_USBIP_CORE is not set
+
+#
+# USB dual-mode controller drivers
+#
+CONFIG_USB_CDNS_SUPPORT=y
+CONFIG_USB_CDNS_HOST=y
+CONFIG_USB_CDNS3=y
+CONFIG_USB_CDNS3_HOST=y
+CONFIG_USB_CDNS3_STARFIVE=y
+# CONFIG_USB_MUSB_HDRC is not set
+CONFIG_USB_DWC3=m
+CONFIG_USB_DWC3_HOST=y
+
+#
+# Platform Glue Driver Support
+#
+CONFIG_USB_DWC3_HAPS=m
+CONFIG_USB_DWC3_OF_SIMPLE=m
+# CONFIG_USB_DWC2 is not set
+# CONFIG_USB_ISP1760 is not set
+
+#
+# USB port drivers
+#
+CONFIG_USB_SERIAL=m
+# CONFIG_USB_SERIAL_GENERIC is not set
+CONFIG_USB_SERIAL_SIMPLE=m
+# CONFIG_USB_SERIAL_AIRCABLE is not set
+# CONFIG_USB_SERIAL_ARK3116 is not set
+# CONFIG_USB_SERIAL_BELKIN is not set
+# CONFIG_USB_SERIAL_CH341 is not set
+# CONFIG_USB_SERIAL_WHITEHEAT is not set
+# CONFIG_USB_SERIAL_DIGI_ACCELEPORT is not set
+CONFIG_USB_SERIAL_CP210X=m
+CONFIG_USB_SERIAL_CYPRESS_M8=m
+# CONFIG_USB_SERIAL_EMPEG is not set
+CONFIG_USB_SERIAL_FTDI_SIO=m
+# CONFIG_USB_SERIAL_VISOR is not set
+# CONFIG_USB_SERIAL_IPAQ is not set
+# CONFIG_USB_SERIAL_IR is not set
+# CONFIG_USB_SERIAL_EDGEPORT is not set
+# CONFIG_USB_SERIAL_EDGEPORT_TI is not set
+# CONFIG_USB_SERIAL_F81232 is not set
+# CONFIG_USB_SERIAL_F8153X is not set
+CONFIG_USB_SERIAL_GARMIN=m
+# CONFIG_USB_SERIAL_IPW is not set
+# CONFIG_USB_SERIAL_IUU is not set
+# CONFIG_USB_SERIAL_KEYSPAN_PDA is not set
+# CONFIG_USB_SERIAL_KEYSPAN is not set
+# CONFIG_USB_SERIAL_KLSI is not set
+CONFIG_USB_SERIAL_KOBIL_SCT=m
+# CONFIG_USB_SERIAL_MCT_U232 is not set
+# CONFIG_USB_SERIAL_METRO is not set
+# CONFIG_USB_SERIAL_MOS7720 is not set
+# CONFIG_USB_SERIAL_MOS7840 is not set
+# CONFIG_USB_SERIAL_MXUPORT is not set
+# CONFIG_USB_SERIAL_NAVMAN is not set
+CONFIG_USB_SERIAL_PL2303=m
+# CONFIG_USB_SERIAL_OTI6858 is not set
+# CONFIG_USB_SERIAL_QCAUX is not set
+# CONFIG_USB_SERIAL_QUALCOMM is not set
+# CONFIG_USB_SERIAL_SPCP8X5 is not set
+# CONFIG_USB_SERIAL_SAFE is not set
+# CONFIG_USB_SERIAL_SIERRAWIRELESS is not set
+# CONFIG_USB_SERIAL_SYMBOL is not set
+# CONFIG_USB_SERIAL_TI is not set
+# CONFIG_USB_SERIAL_CYBERJACK is not set
+# CONFIG_USB_SERIAL_OPTION is not set
+# CONFIG_USB_SERIAL_OMNINET is not set
+# CONFIG_USB_SERIAL_OPTICON is not set
+# CONFIG_USB_SERIAL_XSENS_MT is not set
+# CONFIG_USB_SERIAL_WISHBONE is not set
+# CONFIG_USB_SERIAL_SSU100 is not set
+# CONFIG_USB_SERIAL_QT2 is not set
+# CONFIG_USB_SERIAL_UPD78F0730 is not set
+# CONFIG_USB_SERIAL_XR is not set
+# CONFIG_USB_SERIAL_DEBUG is not set
+
+#
+# USB Miscellaneous drivers
+#
+# CONFIG_USB_EMI62 is not set
+# CONFIG_USB_EMI26 is not set
+# CONFIG_USB_ADUTUX is not set
+# CONFIG_USB_SEVSEG is not set
+# CONFIG_USB_LEGOTOWER is not set
+# CONFIG_USB_LCD is not set
+# CONFIG_USB_CYPRESS_CY7C63 is not set
+# CONFIG_USB_CYTHERM is not set
+# CONFIG_USB_IDMOUSE is not set
+# CONFIG_USB_APPLEDISPLAY is not set
+# CONFIG_APPLE_MFI_FASTCHARGE is not set
+# CONFIG_USB_LD is not set
+# CONFIG_USB_TRANCEVIBRATOR is not set
+# CONFIG_USB_IOWARRIOR is not set
+# CONFIG_USB_TEST is not set
+# CONFIG_USB_EHSET_TEST_FIXTURE is not set
+# CONFIG_USB_ISIGHTFW is not set
+# CONFIG_USB_YUREX is not set
+# CONFIG_USB_EZUSB_FX2 is not set
+# CONFIG_USB_HUB_USB251XB is not set
+# CONFIG_USB_HSIC_USB3503 is not set
+# CONFIG_USB_HSIC_USB4604 is not set
+# CONFIG_USB_LINK_LAYER_TEST is not set
+# CONFIG_USB_CHAOSKEY is not set
+# CONFIG_USB_ONBOARD_HUB is not set
+# CONFIG_USB_ATM is not set
+
+#
+# USB Physical Layer drivers
+#
+# CONFIG_NOP_USB_XCEIV is not set
+# CONFIG_USB_GPIO_VBUS is not set
+# CONFIG_USB_ISP1301 is not set
+# end of USB Physical Layer drivers
+
+# CONFIG_USB_GADGET is not set
+CONFIG_TYPEC=y
+CONFIG_TYPEC_TCPM=y
+CONFIG_TYPEC_TCPCI=y
+# CONFIG_TYPEC_RT1711H is not set
+# CONFIG_TYPEC_TCPCI_MAXIM is not set
+# CONFIG_TYPEC_FUSB302 is not set
+# CONFIG_TYPEC_UCSI is not set
+# CONFIG_TYPEC_TPS6598X is not set
+# CONFIG_TYPEC_ANX7411 is not set
+# CONFIG_TYPEC_RT1719 is not set
+# CONFIG_TYPEC_HD3SS3220 is not set
+# CONFIG_TYPEC_STUSB160X is not set
+# CONFIG_TYPEC_WUSB3801 is not set
+
+#
+# USB Type-C Multiplexer/DeMultiplexer Switch support
+#
+# CONFIG_TYPEC_MUX_FSA4480 is not set
+# CONFIG_TYPEC_MUX_GPIO_SBU is not set
+# CONFIG_TYPEC_MUX_PI3USB30532 is not set
+# CONFIG_TYPEC_MUX_NB7VPQ904M is not set
+# CONFIG_TYPEC_MUX_PTN36502 is not set
+# CONFIG_TYPEC_MUX_WCD939X_USBSS is not set
+# end of USB Type-C Multiplexer/DeMultiplexer Switch support
+
+#
+# USB Type-C Alternate Mode drivers
+#
+# CONFIG_TYPEC_DP_ALTMODE is not set
+# end of USB Type-C Alternate Mode drivers
+
+CONFIG_USB_ROLE_SWITCH=y
+CONFIG_MMC=m
+CONFIG_PWRSEQ_EMMC=m
+CONFIG_PWRSEQ_SIMPLE=m
+CONFIG_MMC_BLOCK=m
+CONFIG_MMC_BLOCK_MINORS=8
+# CONFIG_SDIO_UART is not set
+# CONFIG_MMC_TEST is not set
+
+#
+# MMC/SD/SDIO Host Controller Drivers
+#
+# CONFIG_MMC_DEBUG is not set
+# CONFIG_MMC_ARMMMCI is not set
+# CONFIG_MMC_SDHCI is not set
+# CONFIG_MMC_TIFM_SD is not set
+# CONFIG_MMC_SPI is not set
+# CONFIG_MMC_CB710 is not set
+# CONFIG_MMC_VIA_SDMMC is not set
+CONFIG_MMC_DW=m
+CONFIG_MMC_DW_PLTFM=m
+# CONFIG_MMC_DW_BLUEFIELD is not set
+# CONFIG_MMC_DW_EXYNOS is not set
+# CONFIG_MMC_DW_HI3798CV200 is not set
+# CONFIG_MMC_DW_K3 is not set
+# CONFIG_MMC_DW_PCI is not set
+CONFIG_MMC_DW_STARFIVE=m
+# CONFIG_MMC_VUB300 is not set
+# CONFIG_MMC_USHC is not set
+# CONFIG_MMC_USDHI6ROL0 is not set
+# CONFIG_MMC_CQHCI is not set
+CONFIG_MMC_HSQ=m
+# CONFIG_MMC_TOSHIBA_PCI is not set
+# CONFIG_MMC_MTK is not set
+# CONFIG_SCSI_UFSHCD is not set
+# CONFIG_MEMSTICK is not set
+CONFIG_NEW_LEDS=y
+CONFIG_LEDS_CLASS=m
+# CONFIG_LEDS_CLASS_FLASH is not set
+# CONFIG_LEDS_CLASS_MULTICOLOR is not set
+# CONFIG_LEDS_BRIGHTNESS_HW_CHANGED is not set
+
+#
+# LED drivers
+#
+# CONFIG_LEDS_AN30259A is not set
+# CONFIG_LEDS_AW200XX is not set
+# CONFIG_LEDS_AW2013 is not set
+# CONFIG_LEDS_BCM6328 is not set
+# CONFIG_LEDS_BCM6358 is not set
+# CONFIG_LEDS_CR0014114 is not set
+# CONFIG_LEDS_EL15203000 is not set
+# CONFIG_LEDS_LM3530 is not set
+# CONFIG_LEDS_LM3532 is not set
+# CONFIG_LEDS_LM3642 is not set
+# CONFIG_LEDS_LM3692X is not set
+# CONFIG_LEDS_PCA9532 is not set
+CONFIG_LEDS_GPIO=m
+# CONFIG_LEDS_LP3944 is not set
+# CONFIG_LEDS_LP3952 is not set
+# CONFIG_LEDS_LP50XX is not set
+# CONFIG_LEDS_LP55XX_COMMON is not set
+# CONFIG_LEDS_LP8860 is not set
+# CONFIG_LEDS_PCA955X is not set
+# CONFIG_LEDS_PCA963X is not set
+# CONFIG_LEDS_PCA995X is not set
+# CONFIG_LEDS_DAC124S085 is not set
+CONFIG_LEDS_PWM=m
+# CONFIG_LEDS_REGULATOR is not set
+# CONFIG_LEDS_BD2606MVV is not set
+# CONFIG_LEDS_BD2802 is not set
+# CONFIG_LEDS_LT3593 is not set
+# CONFIG_LEDS_TCA6507 is not set
+# CONFIG_LEDS_TLC591XX is not set
+# CONFIG_LEDS_LM355x is not set
+# CONFIG_LEDS_IS31FL319X is not set
+# CONFIG_LEDS_IS31FL32XX is not set
+
+#
+# LED driver for blink(1) USB RGB LED is under Special HID drivers (HID_THINGM)
+#
+# CONFIG_LEDS_BLINKM is not set
+# CONFIG_LEDS_MLXREG is not set
+CONFIG_LEDS_USER=m
+# CONFIG_LEDS_SPI_BYTE is not set
+# CONFIG_LEDS_LM3697 is not set
+
+#
+# Flash and Torch LED drivers
+#
+
+#
+# RGB LED drivers
+#
+
+#
+# LED Triggers
+#
+CONFIG_LEDS_TRIGGERS=y
+CONFIG_LEDS_TRIGGER_TIMER=m
+CONFIG_LEDS_TRIGGER_ONESHOT=m
+# CONFIG_LEDS_TRIGGER_MTD is not set
+CONFIG_LEDS_TRIGGER_HEARTBEAT=m
+# CONFIG_LEDS_TRIGGER_BACKLIGHT is not set
+# CONFIG_LEDS_TRIGGER_CPU is not set
+CONFIG_LEDS_TRIGGER_ACTIVITY=m
+CONFIG_LEDS_TRIGGER_GPIO=m
+CONFIG_LEDS_TRIGGER_DEFAULT_ON=m
+
+#
+# iptables trigger is under Netfilter config (LED target)
+#
+CONFIG_LEDS_TRIGGER_TRANSIENT=m
+# CONFIG_LEDS_TRIGGER_CAMERA is not set
+CONFIG_LEDS_TRIGGER_PANIC=y
+CONFIG_LEDS_TRIGGER_NETDEV=m
+CONFIG_LEDS_TRIGGER_PATTERN=m
+CONFIG_LEDS_TRIGGER_AUDIO=m
+CONFIG_LEDS_TRIGGER_TTY=m
+
+#
+# Simple LED drivers
+#
+# CONFIG_ACCESSIBILITY is not set
+# CONFIG_INFINIBAND is not set
+CONFIG_EDAC_SUPPORT=y
+CONFIG_RTC_LIB=y
+CONFIG_RTC_CLASS=y
+CONFIG_RTC_HCTOSYS=y
+CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
+CONFIG_RTC_SYSTOHC=y
+CONFIG_RTC_SYSTOHC_DEVICE="rtc0"
+# CONFIG_RTC_DEBUG is not set
+CONFIG_RTC_NVMEM=y
+
+#
+# RTC interfaces
+#
+CONFIG_RTC_INTF_SYSFS=y
+CONFIG_RTC_INTF_PROC=y
+CONFIG_RTC_INTF_DEV=y
+# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set
+# CONFIG_RTC_DRV_TEST is not set
+
+#
+# I2C RTC drivers
+#
+# CONFIG_RTC_DRV_ABB5ZES3 is not set
+# CONFIG_RTC_DRV_ABEOZ9 is not set
+# CONFIG_RTC_DRV_ABX80X is not set
+# CONFIG_RTC_DRV_DS1307 is not set
+# CONFIG_RTC_DRV_DS1374 is not set
+# CONFIG_RTC_DRV_DS1672 is not set
+# CONFIG_RTC_DRV_HYM8563 is not set
+# CONFIG_RTC_DRV_MAX6900 is not set
+# CONFIG_RTC_DRV_MAX31335 is not set
+# CONFIG_RTC_DRV_NCT3018Y is not set
+# CONFIG_RTC_DRV_RS5C372 is not set
+# CONFIG_RTC_DRV_ISL1208 is not set
+# CONFIG_RTC_DRV_ISL12022 is not set
+# CONFIG_RTC_DRV_ISL12026 is not set
+# CONFIG_RTC_DRV_X1205 is not set
+# CONFIG_RTC_DRV_PCF8523 is not set
+# CONFIG_RTC_DRV_PCF85063 is not set
+# CONFIG_RTC_DRV_PCF85363 is not set
+# CONFIG_RTC_DRV_PCF8563 is not set
+# CONFIG_RTC_DRV_PCF8583 is not set
+# CONFIG_RTC_DRV_M41T80 is not set
+# CONFIG_RTC_DRV_BQ32K is not set
+# CONFIG_RTC_DRV_S35390A is not set
+# CONFIG_RTC_DRV_FM3130 is not set
+# CONFIG_RTC_DRV_RX8010 is not set
+# CONFIG_RTC_DRV_RX8581 is not set
+# CONFIG_RTC_DRV_RX8025 is not set
+# CONFIG_RTC_DRV_EM3027 is not set
+# CONFIG_RTC_DRV_RV3028 is not set
+# CONFIG_RTC_DRV_RV3032 is not set
+# CONFIG_RTC_DRV_RV8803 is not set
+# CONFIG_RTC_DRV_SD3078 is not set
+
+#
+# SPI RTC drivers
+#
+# CONFIG_RTC_DRV_M41T93 is not set
+# CONFIG_RTC_DRV_M41T94 is not set
+# CONFIG_RTC_DRV_DS1302 is not set
+# CONFIG_RTC_DRV_DS1305 is not set
+# CONFIG_RTC_DRV_DS1343 is not set
+# CONFIG_RTC_DRV_DS1347 is not set
+# CONFIG_RTC_DRV_DS1390 is not set
+# CONFIG_RTC_DRV_MAX6916 is not set
+# CONFIG_RTC_DRV_R9701 is not set
+# CONFIG_RTC_DRV_RX4581 is not set
+# CONFIG_RTC_DRV_RS5C348 is not set
+# CONFIG_RTC_DRV_MAX6902 is not set
+# CONFIG_RTC_DRV_PCF2123 is not set
+# CONFIG_RTC_DRV_MCP795 is not set
+CONFIG_RTC_I2C_AND_SPI=y
+
+#
+# SPI and I2C RTC drivers
+#
+# CONFIG_RTC_DRV_DS3232 is not set
+# CONFIG_RTC_DRV_PCF2127 is not set
+# CONFIG_RTC_DRV_RV3029C2 is not set
+# CONFIG_RTC_DRV_RX6110 is not set
+
+#
+# Platform RTC drivers
+#
+# CONFIG_RTC_DRV_DS1286 is not set
+# CONFIG_RTC_DRV_DS1511 is not set
+# CONFIG_RTC_DRV_DS1553 is not set
+# CONFIG_RTC_DRV_DS1685_FAMILY is not set
+# CONFIG_RTC_DRV_DS1742 is not set
+# CONFIG_RTC_DRV_DS2404 is not set
+# CONFIG_RTC_DRV_EFI is not set
+# CONFIG_RTC_DRV_STK17TA8 is not set
+# CONFIG_RTC_DRV_M48T86 is not set
+# CONFIG_RTC_DRV_M48T35 is not set
+# CONFIG_RTC_DRV_M48T59 is not set
+# CONFIG_RTC_DRV_MSM6242 is not set
+# CONFIG_RTC_DRV_RP5C01 is not set
+# CONFIG_RTC_DRV_ZYNQMP is not set
+
+#
+# on-CPU RTC drivers
+#
+# CONFIG_RTC_DRV_PL030 is not set
+# CONFIG_RTC_DRV_PL031 is not set
+# CONFIG_RTC_DRV_CADENCE is not set
+# CONFIG_RTC_DRV_FTRTC010 is not set
+# CONFIG_RTC_DRV_R7301 is not set
+
+#
+# HID Sensor RTC drivers
+#
+# CONFIG_RTC_DRV_GOLDFISH is not set
+CONFIG_DMADEVICES=y
+# CONFIG_DMADEVICES_DEBUG is not set
+
+#
+# DMA Devices
+#
+CONFIG_DMA_ENGINE=y
+CONFIG_DMA_VIRTUAL_CHANNELS=y
+CONFIG_DMA_OF=y
+# CONFIG_ALTERA_MSGDMA is not set
+# CONFIG_AMBA_PL08X is not set
+CONFIG_DW_AXI_DMAC=y
+# CONFIG_FSL_EDMA is not set
+# CONFIG_INTEL_IDMA64 is not set
+# CONFIG_PL330_DMA is not set
+# CONFIG_PLX_DMA is not set
+# CONFIG_XILINX_DMA is not set
+# CONFIG_XILINX_XDMA is not set
+# CONFIG_XILINX_ZYNQMP_DPDMA is not set
+# CONFIG_QCOM_HIDMA_MGMT is not set
+# CONFIG_QCOM_HIDMA is not set
+# CONFIG_DW_DMAC is not set
+# CONFIG_DW_DMAC_PCI is not set
+# CONFIG_DW_EDMA is not set
+# CONFIG_SF_PDMA is not set
+
+#
+# DMA Clients
+#
+# CONFIG_ASYNC_TX_DMA is not set
+# CONFIG_DMATEST is not set
+
+#
+# DMABUF options
+#
+CONFIG_SYNC_FILE=y
+# CONFIG_UDMABUF is not set
+# CONFIG_DMABUF_MOVE_NOTIFY is not set
+# CONFIG_DMABUF_DEBUG is not set
+# CONFIG_DMABUF_SELFTESTS is not set
+CONFIG_DMABUF_HEAPS=y
+# CONFIG_DMABUF_SYSFS_STATS is not set
+CONFIG_DMABUF_HEAPS_SYSTEM=y
+# CONFIG_DMABUF_HEAPS_CMA is not set
+# end of DMABUF options
+
+# CONFIG_UIO is not set
+# CONFIG_VFIO is not set
+# CONFIG_VIRT_DRIVERS is not set
+CONFIG_VIRTIO_ANCHOR=y
+CONFIG_VIRTIO=m
+CONFIG_VIRTIO_MENU=y
+# CONFIG_VIRTIO_PCI is not set
+CONFIG_VIRTIO_BALLOON=m
+CONFIG_VIRTIO_INPUT=m
+CONFIG_VIRTIO_MMIO=m
+# CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set
+# CONFIG_VDPA is not set
+CONFIG_VHOST_IOTLB=m
+CONFIG_VHOST_TASK=y
+CONFIG_VHOST=m
+CONFIG_VHOST_MENU=y
+CONFIG_VHOST_NET=m
+# CONFIG_VHOST_CROSS_ENDIAN_LEGACY is not set
+
+#
+# Microsoft Hyper-V guest support
+#
+# end of Microsoft Hyper-V guest support
+
+# CONFIG_GREYBUS is not set
+# CONFIG_COMEDI is not set
+# CONFIG_STAGING is not set
+# CONFIG_GOLDFISH is not set
+CONFIG_HAVE_CLK=y
+CONFIG_HAVE_CLK_PREPARE=y
+CONFIG_COMMON_CLK=y
+# CONFIG_LMK04832 is not set
+# CONFIG_COMMON_CLK_MAX9485 is not set
+# CONFIG_COMMON_CLK_SI5341 is not set
+# CONFIG_COMMON_CLK_SI5351 is not set
+# CONFIG_COMMON_CLK_SI514 is not set
+# CONFIG_COMMON_CLK_SI544 is not set
+# CONFIG_COMMON_CLK_SI570 is not set
+# CONFIG_COMMON_CLK_CDCE706 is not set
+# CONFIG_COMMON_CLK_CDCE925 is not set
+# CONFIG_COMMON_CLK_CS2000_CP is not set
+# CONFIG_COMMON_CLK_AXI_CLKGEN is not set
+# CONFIG_COMMON_CLK_PWM is not set
+# CONFIG_COMMON_CLK_RS9_PCIE is not set
+# CONFIG_COMMON_CLK_SI521XX is not set
+# CONFIG_COMMON_CLK_VC3 is not set
+# CONFIG_COMMON_CLK_VC5 is not set
+# CONFIG_COMMON_CLK_VC7 is not set
+# CONFIG_COMMON_CLK_FIXED_MMIO is not set
+CONFIG_CLK_STARFIVE_JH71X0=y
+CONFIG_CLK_STARFIVE_JH7100=y
+CONFIG_CLK_STARFIVE_JH7100_AUDIO=m
+CONFIG_CLK_STARFIVE_JH7110_PLL=y
+CONFIG_CLK_STARFIVE_JH7110_SYS=y
+CONFIG_CLK_STARFIVE_JH7110_AON=y
+CONFIG_CLK_STARFIVE_JH7110_STG=y
+CONFIG_CLK_STARFIVE_JH7110_ISP=y
+CONFIG_CLK_STARFIVE_JH7110_VOUT=y
+# CONFIG_XILINX_VCU is not set
+# CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set
+# CONFIG_HWSPINLOCK is not set
+
+#
+# Clock Source drivers
+#
+CONFIG_TIMER_OF=y
+CONFIG_TIMER_PROBE=y
+CONFIG_RISCV_TIMER=y
+# end of Clock Source drivers
+
+# CONFIG_MAILBOX is not set
+CONFIG_IOMMU_SUPPORT=y
+
+#
+# Generic IOMMU Pagetable Support
+#
+# end of Generic IOMMU Pagetable Support
+
+# CONFIG_IOMMUFD is not set
+
+#
+# Remoteproc drivers
+#
+# CONFIG_REMOTEPROC is not set
+# end of Remoteproc drivers
+
+#
+# Rpmsg drivers
+#
+# CONFIG_RPMSG_VIRTIO is not set
+# end of Rpmsg drivers
+
+# CONFIG_SOUNDWIRE is not set
+
+#
+# SOC (System On Chip) specific Drivers
+#
+
+#
+# Amlogic SoC drivers
+#
+# end of Amlogic SoC drivers
+
+#
+# Broadcom SoC drivers
+#
+# end of Broadcom SoC drivers
+
+#
+# NXP/Freescale QorIQ SoC drivers
+#
+# end of NXP/Freescale QorIQ SoC drivers
+
+#
+# fujitsu SoC drivers
+#
+# end of fujitsu SoC drivers
+
+#
+# i.MX SoC drivers
+#
+# end of i.MX SoC drivers
+
+#
+# Enable LiteX SoC Builder specific drivers
+#
+# CONFIG_LITEX_SOC_CONTROLLER is not set
+# end of Enable LiteX SoC Builder specific drivers
+
+# CONFIG_WPCM450_SOC is not set
+
+#
+# Qualcomm SoC drivers
+#
+# end of Qualcomm SoC drivers
+
+# CONFIG_SOC_TI is not set
+
+#
+# Xilinx SoC drivers
+#
+# end of Xilinx SoC drivers
+# end of SOC (System On Chip) specific Drivers
+
+#
+# PM Domains
+#
+
+#
+# Amlogic PM Domains
+#
+# end of Amlogic PM Domains
+
+#
+# Broadcom PM Domains
+#
+# end of Broadcom PM Domains
+
+#
+# i.MX PM Domains
+#
+# end of i.MX PM Domains
+
+#
+# Qualcomm PM Domains
+#
+# end of Qualcomm PM Domains
+
+CONFIG_JH71XX_PMU=y
+# end of PM Domains
+
+CONFIG_PM_DEVFREQ=y
+
+#
+# DEVFREQ Governors
+#
+CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=m
+CONFIG_DEVFREQ_GOV_PERFORMANCE=y
+CONFIG_DEVFREQ_GOV_POWERSAVE=m
+CONFIG_DEVFREQ_GOV_USERSPACE=m
+CONFIG_DEVFREQ_GOV_PASSIVE=m
+
+#
+# DEVFREQ Drivers
+#
+# CONFIG_PM_DEVFREQ_EVENT is not set
+CONFIG_EXTCON=y
+
+#
+# Extcon Device Drivers
+#
+# CONFIG_EXTCON_FSA9480 is not set
+# CONFIG_EXTCON_GPIO is not set
+# CONFIG_EXTCON_MAX3355 is not set
+# CONFIG_EXTCON_PTN5150 is not set
+# CONFIG_EXTCON_RT8973A is not set
+# CONFIG_EXTCON_SM5502 is not set
+# CONFIG_EXTCON_USB_GPIO is not set
+# CONFIG_EXTCON_USBC_TUSB320 is not set
+# CONFIG_MEMORY is not set
+# CONFIG_IIO is not set
+# CONFIG_NTB is not set
+CONFIG_PWM=y
+CONFIG_PWM_SYSFS=y
+# CONFIG_PWM_ATMEL_TCB is not set
+# CONFIG_PWM_CLK is not set
+# CONFIG_PWM_DWC is not set
+# CONFIG_PWM_FSL_FTM is not set
+# CONFIG_PWM_PCA9685 is not set
+# CONFIG_PWM_SIFIVE is not set
+# CONFIG_PWM_XILINX is not set
+
+#
+# IRQ chip support
+#
+CONFIG_IRQCHIP=y
+# CONFIG_AL_FIC is not set
+# CONFIG_XILINX_INTC is not set
+CONFIG_RISCV_INTC=y
+CONFIG_SIFIVE_PLIC=y
+# end of IRQ chip support
+
+# CONFIG_IPACK_BUS is not set
+CONFIG_RESET_CONTROLLER=y
+# CONFIG_RESET_TI_SYSCON is not set
+# CONFIG_RESET_TI_TPS380X is not set
+CONFIG_RESET_STARFIVE_JH71X0=y
+CONFIG_RESET_STARFIVE_JH7100=y
+CONFIG_RESET_STARFIVE_JH7110=y
+
+#
+# PHY Subsystem
+#
+CONFIG_GENERIC_PHY=y
+CONFIG_GENERIC_PHY_MIPI_DPHY=y
+# CONFIG_PHY_CAN_TRANSCEIVER is not set
+
+#
+# PHY drivers for Broadcom platforms
+#
+# CONFIG_BCM_KONA_USB2_PHY is not set
+# end of PHY drivers for Broadcom platforms
+
+# CONFIG_PHY_CADENCE_TORRENT is not set
+# CONFIG_PHY_CADENCE_DPHY is not set
+# CONFIG_PHY_CADENCE_DPHY_RX is not set
+# CONFIG_PHY_CADENCE_SIERRA is not set
+# CONFIG_PHY_CADENCE_SALVO is not set
+# CONFIG_PHY_PXA_28NM_HSIC is not set
+# CONFIG_PHY_PXA_28NM_USB2 is not set
+# CONFIG_PHY_LAN966X_SERDES is not set
+# CONFIG_PHY_MAPPHONE_MDM6600 is not set
+# CONFIG_PHY_OCELOT_SERDES is not set
+CONFIG_PHY_STARFIVE_JH7110_DPHY_RX=y
+CONFIG_PHY_STARFIVE_JH7110_PCIE=y
+CONFIG_PHY_STARFIVE_JH7110_USB=y
+# end of PHY Subsystem
+
+CONFIG_POWERCAP=y
+# CONFIG_IDLE_INJECT is not set
+# CONFIG_DTPM is not set
+# CONFIG_MCB is not set
+
+#
+# Performance monitor support
+#
+CONFIG_RISCV_PMU=y
+CONFIG_RISCV_PMU_LEGACY=y
+CONFIG_RISCV_PMU_SBI=y
+# CONFIG_DWC_PCIE_PMU is not set
+# end of Performance monitor support
+
+# CONFIG_RAS is not set
+# CONFIG_USB4 is not set
+
+#
+# Android
+#
+# CONFIG_ANDROID_BINDER_IPC is not set
+# end of Android
+
+# CONFIG_LIBNVDIMM is not set
+# CONFIG_DAX is not set
+CONFIG_NVMEM=y
+CONFIG_NVMEM_SYSFS=y
+CONFIG_NVMEM_LAYOUTS=y
+
+#
+# Layout Types
+#
+# CONFIG_NVMEM_LAYOUT_SL28_VPD is not set
+# CONFIG_NVMEM_LAYOUT_ONIE_TLV is not set
+# end of Layout Types
+
+# CONFIG_NVMEM_RMEM is not set
+CONFIG_NVMEM_U_BOOT_ENV=m
+
+#
+# HW tracing support
+#
+# CONFIG_STM is not set
+# CONFIG_INTEL_TH is not set
+# end of HW tracing support
+
+# CONFIG_FPGA is not set
+# CONFIG_FSI is not set
+CONFIG_MULTIPLEXER=m
+
+#
+# Multiplexer drivers
+#
+# CONFIG_MUX_ADG792A is not set
+# CONFIG_MUX_ADGS1408 is not set
+# CONFIG_MUX_GPIO is not set
+# CONFIG_MUX_MMIO is not set
+# end of Multiplexer drivers
+
+CONFIG_PM_OPP=y
+# CONFIG_SIOX is not set
+# CONFIG_SLIMBUS is not set
+# CONFIG_INTERCONNECT is not set
+# CONFIG_COUNTER is not set
+# CONFIG_MOST is not set
+# CONFIG_PECI is not set
+# CONFIG_HTE is not set
+# end of Device Drivers
+
+#
+# File systems
+#
+# CONFIG_VALIDATE_FS_PARSER is not set
+CONFIG_FS_IOMAP=y
+CONFIG_FS_STACK=y
+CONFIG_BUFFER_HEAD=y
+CONFIG_LEGACY_DIRECT_IO=y
+# CONFIG_EXT2_FS is not set
+# CONFIG_EXT3_FS is not set
+CONFIG_EXT4_FS=y
+CONFIG_EXT4_USE_FOR_EXT2=y
+CONFIG_EXT4_FS_POSIX_ACL=y
+CONFIG_EXT4_FS_SECURITY=y
+# CONFIG_EXT4_DEBUG is not set
+CONFIG_JBD2=y
+# CONFIG_JBD2_DEBUG is not set
+CONFIG_FS_MBCACHE=y
+# CONFIG_REISERFS_FS is not set
+# CONFIG_JFS_FS is not set
+# CONFIG_XFS_FS is not set
+# CONFIG_GFS2_FS is not set
+# CONFIG_OCFS2_FS is not set
+CONFIG_BTRFS_FS=m
+CONFIG_BTRFS_FS_POSIX_ACL=y
+# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set
+# CONFIG_BTRFS_DEBUG is not set
+# CONFIG_BTRFS_ASSERT is not set
+# CONFIG_BTRFS_FS_REF_VERIFY is not set
+# CONFIG_NILFS2_FS is not set
+CONFIG_F2FS_FS=y
+# CONFIG_F2FS_STAT_FS is not set
+CONFIG_F2FS_FS_XATTR=y
+CONFIG_F2FS_FS_POSIX_ACL=y
+CONFIG_F2FS_FS_SECURITY=y
+# CONFIG_F2FS_CHECK_FS is not set
+# CONFIG_F2FS_FAULT_INJECTION is not set
+CONFIG_F2FS_FS_COMPRESSION=y
+CONFIG_F2FS_FS_LZO=y
+CONFIG_F2FS_FS_LZORLE=y
+CONFIG_F2FS_FS_LZ4=y
+CONFIG_F2FS_FS_LZ4HC=y
+CONFIG_F2FS_FS_ZSTD=y
+# CONFIG_F2FS_IOSTAT is not set
+# CONFIG_F2FS_UNFAIR_RWSEM is not set
+# CONFIG_BCACHEFS_FS is not set
+CONFIG_FS_POSIX_ACL=y
+CONFIG_EXPORTFS=y
+CONFIG_EXPORTFS_BLOCK_OPS=y
+CONFIG_FILE_LOCKING=y
+CONFIG_FS_ENCRYPTION=y
+CONFIG_FS_ENCRYPTION_ALGS=y
+CONFIG_FS_VERITY=y
+CONFIG_FS_VERITY_BUILTIN_SIGNATURES=y
+CONFIG_FSNOTIFY=y
+# CONFIG_DNOTIFY is not set
+CONFIG_INOTIFY_USER=y
+CONFIG_FANOTIFY=y
+# CONFIG_FANOTIFY_ACCESS_PERMISSIONS is not set
+CONFIG_QUOTA=y
+# CONFIG_QUOTA_NETLINK_INTERFACE is not set
+# CONFIG_QUOTA_DEBUG is not set
+# CONFIG_QFMT_V1 is not set
+# CONFIG_QFMT_V2 is not set
+CONFIG_QUOTACTL=y
+CONFIG_AUTOFS_FS=m
+CONFIG_FUSE_FS=m
+# CONFIG_CUSE is not set
+CONFIG_VIRTIO_FS=m
+CONFIG_OVERLAY_FS=m
+# CONFIG_OVERLAY_FS_REDIRECT_DIR is not set
+CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y
+# CONFIG_OVERLAY_FS_INDEX is not set
+# CONFIG_OVERLAY_FS_XINO_AUTO is not set
+# CONFIG_OVERLAY_FS_METACOPY is not set
+# CONFIG_OVERLAY_FS_DEBUG is not set
+
+#
+# Caches
+#
+CONFIG_NETFS_SUPPORT=m
+CONFIG_NETFS_STATS=y
+CONFIG_FSCACHE=y
+CONFIG_FSCACHE_STATS=y
+# CONFIG_FSCACHE_DEBUG is not set
+CONFIG_CACHEFILES=m
+# CONFIG_CACHEFILES_DEBUG is not set
+# CONFIG_CACHEFILES_ERROR_INJECTION is not set
+# CONFIG_CACHEFILES_ONDEMAND is not set
+# end of Caches
+
+#
+# CD-ROM/DVD Filesystems
+#
+CONFIG_ISO9660_FS=m
+CONFIG_JOLIET=y
+CONFIG_ZISOFS=y
+CONFIG_UDF_FS=m
+# end of CD-ROM/DVD Filesystems
+
+#
+# DOS/FAT/EXFAT/NT Filesystems
+#
+CONFIG_FAT_FS=m
+CONFIG_MSDOS_FS=m
+CONFIG_VFAT_FS=m
+CONFIG_FAT_DEFAULT_CODEPAGE=437
+CONFIG_FAT_DEFAULT_IOCHARSET="utf8"
+# CONFIG_FAT_DEFAULT_UTF8 is not set
+CONFIG_EXFAT_FS=m
+CONFIG_EXFAT_DEFAULT_IOCHARSET="utf8"
+CONFIG_NTFS_FS=m
+# CONFIG_NTFS_DEBUG is not set
+CONFIG_NTFS_RW=y
+CONFIG_NTFS3_FS=m
+# CONFIG_NTFS3_64BIT_CLUSTER is not set
+# CONFIG_NTFS3_LZX_XPRESS is not set
+# CONFIG_NTFS3_FS_POSIX_ACL is not set
+# end of DOS/FAT/EXFAT/NT Filesystems
+
+#
+# Pseudo filesystems
+#
+CONFIG_PROC_FS=y
+# CONFIG_PROC_KCORE is not set
+CONFIG_PROC_SYSCTL=y
+CONFIG_PROC_PAGE_MONITOR=y
+CONFIG_PROC_CHILDREN=y
+CONFIG_KERNFS=y
+CONFIG_SYSFS=y
+CONFIG_TMPFS=y
+CONFIG_TMPFS_POSIX_ACL=y
+CONFIG_TMPFS_XATTR=y
+# CONFIG_TMPFS_INODE64 is not set
+# CONFIG_TMPFS_QUOTA is not set
+CONFIG_ARCH_SUPPORTS_HUGETLBFS=y
+CONFIG_HUGETLBFS=y
+CONFIG_HUGETLB_PAGE=y
+CONFIG_ARCH_HAS_GIGANTIC_PAGE=y
+CONFIG_CONFIGFS_FS=m
+CONFIG_EFIVAR_FS=m
+# end of Pseudo filesystems
+
+CONFIG_MISC_FILESYSTEMS=y
+# CONFIG_ORANGEFS_FS is not set
+# CONFIG_ADFS_FS is not set
+# CONFIG_AFFS_FS is not set
+CONFIG_ECRYPT_FS=m
+# CONFIG_ECRYPT_FS_MESSAGING is not set
+# CONFIG_HFS_FS is not set
+# CONFIG_HFSPLUS_FS is not set
+# CONFIG_BEFS_FS is not set
+# CONFIG_BFS_FS is not set
+# CONFIG_EFS_FS is not set
+# CONFIG_JFFS2_FS is not set
+# CONFIG_UBIFS_FS is not set
+# CONFIG_CRAMFS is not set
+CONFIG_SQUASHFS=m
+# CONFIG_SQUASHFS_FILE_CACHE is not set
+CONFIG_SQUASHFS_FILE_DIRECT=y
+CONFIG_SQUASHFS_DECOMP_SINGLE=y
+# CONFIG_SQUASHFS_CHOICE_DECOMP_BY_MOUNT is not set
+CONFIG_SQUASHFS_COMPILE_DECOMP_SINGLE=y
+# CONFIG_SQUASHFS_COMPILE_DECOMP_MULTI is not set
+# CONFIG_SQUASHFS_COMPILE_DECOMP_MULTI_PERCPU is not set
+CONFIG_SQUASHFS_XATTR=y
+CONFIG_SQUASHFS_ZLIB=y
+CONFIG_SQUASHFS_LZ4=y
+CONFIG_SQUASHFS_LZO=y
+CONFIG_SQUASHFS_XZ=y
+CONFIG_SQUASHFS_ZSTD=y
+# CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set
+# CONFIG_SQUASHFS_EMBEDDED is not set
+CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3
+# CONFIG_VXFS_FS is not set
+# CONFIG_MINIX_FS is not set
+# CONFIG_OMFS_FS is not set
+# CONFIG_HPFS_FS is not set
+# CONFIG_QNX4FS_FS is not set
+# CONFIG_QNX6FS_FS is not set
+# CONFIG_ROMFS_FS is not set
+# CONFIG_PSTORE is not set
+# CONFIG_SYSV_FS is not set
+# CONFIG_UFS_FS is not set
+# CONFIG_EROFS_FS is not set
+CONFIG_NETWORK_FILESYSTEMS=y
+CONFIG_NFS_FS=m
+CONFIG_NFS_V2=m
+CONFIG_NFS_V3=m
+# CONFIG_NFS_V3_ACL is not set
+CONFIG_NFS_V4=m
+CONFIG_NFS_SWAP=y
+CONFIG_NFS_V4_1=y
+CONFIG_NFS_V4_2=y
+CONFIG_PNFS_FILE_LAYOUT=m
+CONFIG_PNFS_BLOCK=m
+CONFIG_PNFS_FLEXFILE_LAYOUT=m
+CONFIG_NFS_V4_1_IMPLEMENTATION_ID_DOMAIN="kernel.org"
+# CONFIG_NFS_V4_1_MIGRATION is not set
+CONFIG_NFS_V4_SECURITY_LABEL=y
+CONFIG_NFS_FSCACHE=y
+# CONFIG_NFS_USE_LEGACY_DNS is not set
+CONFIG_NFS_USE_KERNEL_DNS=y
+CONFIG_NFS_DISABLE_UDP_SUPPORT=y
+# CONFIG_NFS_V4_2_READ_PLUS is not set
+# CONFIG_NFSD is not set
+CONFIG_GRACE_PERIOD=m
+CONFIG_LOCKD=m
+CONFIG_LOCKD_V4=y
+CONFIG_NFS_COMMON=y
+CONFIG_NFS_V4_2_SSC_HELPER=y
+CONFIG_SUNRPC=m
+CONFIG_SUNRPC_GSS=m
+CONFIG_SUNRPC_BACKCHANNEL=y
+CONFIG_SUNRPC_SWAP=y
+CONFIG_RPCSEC_GSS_KRB5=m
+CONFIG_RPCSEC_GSS_KRB5_ENCTYPES_AES_SHA1=y
+# CONFIG_RPCSEC_GSS_KRB5_ENCTYPES_AES_SHA2 is not set
+# CONFIG_SUNRPC_DEBUG is not set
+# CONFIG_CEPH_FS is not set
+CONFIG_CIFS=m
+# CONFIG_CIFS_STATS2 is not set
+CONFIG_CIFS_ALLOW_INSECURE_LEGACY=y
+# CONFIG_CIFS_UPCALL is not set
+CONFIG_CIFS_XATTR=y
+CONFIG_CIFS_POSIX=y
+CONFIG_CIFS_DEBUG=y
+# CONFIG_CIFS_DEBUG2 is not set
+# CONFIG_CIFS_DEBUG_DUMP_KEYS is not set
+CONFIG_CIFS_DFS_UPCALL=y
+CONFIG_CIFS_SWN_UPCALL=y
+CONFIG_CIFS_FSCACHE=y
+CONFIG_SMB_SERVER=m
+CONFIG_SMB_SERVER_CHECK_CAP_NET_ADMIN=y
+# CONFIG_SMB_SERVER_KERBEROS5 is not set
+CONFIG_SMBFS=m
+# CONFIG_CODA_FS is not set
+# CONFIG_AFS_FS is not set
+# CONFIG_9P_FS is not set
+CONFIG_NLS=y
+CONFIG_NLS_DEFAULT="utf8"
+CONFIG_NLS_CODEPAGE_437=m
+# CONFIG_NLS_CODEPAGE_737 is not set
+# CONFIG_NLS_CODEPAGE_775 is not set
+CONFIG_NLS_CODEPAGE_850=m
+CONFIG_NLS_CODEPAGE_852=m
+CONFIG_NLS_CODEPAGE_855=m
+# CONFIG_NLS_CODEPAGE_857 is not set
+# CONFIG_NLS_CODEPAGE_860 is not set
+# CONFIG_NLS_CODEPAGE_861 is not set
+# CONFIG_NLS_CODEPAGE_862 is not set
+# CONFIG_NLS_CODEPAGE_863 is not set
+# CONFIG_NLS_CODEPAGE_864 is not set
+# CONFIG_NLS_CODEPAGE_865 is not set
+# CONFIG_NLS_CODEPAGE_866 is not set
+# CONFIG_NLS_CODEPAGE_869 is not set
+# CONFIG_NLS_CODEPAGE_936 is not set
+# CONFIG_NLS_CODEPAGE_950 is not set
+# CONFIG_NLS_CODEPAGE_932 is not set
+# CONFIG_NLS_CODEPAGE_949 is not set
+# CONFIG_NLS_CODEPAGE_874 is not set
+# CONFIG_NLS_ISO8859_8 is not set
+# CONFIG_NLS_CODEPAGE_1250 is not set
+# CONFIG_NLS_CODEPAGE_1251 is not set
+# CONFIG_NLS_ASCII is not set
+# CONFIG_NLS_ISO8859_1 is not set
+# CONFIG_NLS_ISO8859_2 is not set
+# CONFIG_NLS_ISO8859_3 is not set
+# CONFIG_NLS_ISO8859_4 is not set
+# CONFIG_NLS_ISO8859_5 is not set
+# CONFIG_NLS_ISO8859_6 is not set
+# CONFIG_NLS_ISO8859_7 is not set
+# CONFIG_NLS_ISO8859_9 is not set
+# CONFIG_NLS_ISO8859_13 is not set
+# CONFIG_NLS_ISO8859_14 is not set
+# CONFIG_NLS_ISO8859_15 is not set
+# CONFIG_NLS_KOI8_R is not set
+# CONFIG_NLS_KOI8_U is not set
+# CONFIG_NLS_MAC_ROMAN is not set
+# CONFIG_NLS_MAC_CELTIC is not set
+# CONFIG_NLS_MAC_CENTEURO is not set
+# CONFIG_NLS_MAC_CROATIAN is not set
+# CONFIG_NLS_MAC_CYRILLIC is not set
+# CONFIG_NLS_MAC_GAELIC is not set
+# CONFIG_NLS_MAC_GREEK is not set
+# CONFIG_NLS_MAC_ICELAND is not set
+# CONFIG_NLS_MAC_INUIT is not set
+# CONFIG_NLS_MAC_ROMANIAN is not set
+# CONFIG_NLS_MAC_TURKISH is not set
+CONFIG_NLS_UTF8=m
+CONFIG_NLS_UCS2_UTILS=m
+# CONFIG_DLM is not set
+# CONFIG_UNICODE is not set
+CONFIG_IO_WQ=y
+# end of File systems
+
+#
+# Security options
+#
+CONFIG_KEYS=y
+CONFIG_KEYS_REQUEST_CACHE=y
+# CONFIG_PERSISTENT_KEYRINGS is not set
+# CONFIG_TRUSTED_KEYS is not set
+CONFIG_ENCRYPTED_KEYS=m
+# CONFIG_USER_DECRYPTED_DATA is not set
+CONFIG_KEY_DH_OPERATIONS=y
+# CONFIG_SECURITY_DMESG_RESTRICT is not set
+CONFIG_SECURITY=y
+CONFIG_SECURITYFS=y
+CONFIG_SECURITY_NETWORK=y
+# CONFIG_SECURITY_NETWORK_XFRM is not set
+CONFIG_SECURITY_PATH=y
+CONFIG_HARDENED_USERCOPY=y
+CONFIG_FORTIFY_SOURCE=y
+# CONFIG_STATIC_USERMODEHELPER is not set
+# CONFIG_SECURITY_SMACK is not set
+# CONFIG_SECURITY_TOMOYO is not set
+# CONFIG_SECURITY_APPARMOR is not set
+# CONFIG_SECURITY_LOADPIN is not set
+# CONFIG_SECURITY_YAMA is not set
+# CONFIG_SECURITY_SAFESETID is not set
+CONFIG_SECURITY_LOCKDOWN_LSM=y
+# CONFIG_SECURITY_LOCKDOWN_LSM_EARLY is not set
+CONFIG_LOCK_DOWN_KERNEL_FORCE_NONE=y
+# CONFIG_LOCK_DOWN_KERNEL_FORCE_INTEGRITY is not set
+# CONFIG_LOCK_DOWN_KERNEL_FORCE_CONFIDENTIALITY is not set
+# CONFIG_SECURITY_LANDLOCK is not set
+# CONFIG_INTEGRITY is not set
+CONFIG_DEFAULT_SECURITY_DAC=y
+CONFIG_LSM=""
+
+#
+# Kernel hardening options
+#
+
+#
+# Memory initialization
+#
+CONFIG_CC_HAS_AUTO_VAR_INIT_PATTERN=y
+CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO_BARE=y
+CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO=y
+CONFIG_INIT_STACK_NONE=y
+# CONFIG_INIT_STACK_ALL_PATTERN is not set
+# CONFIG_INIT_STACK_ALL_ZERO is not set
+# CONFIG_INIT_ON_ALLOC_DEFAULT_ON is not set
+# CONFIG_INIT_ON_FREE_DEFAULT_ON is not set
+CONFIG_CC_HAS_ZERO_CALL_USED_REGS=y
+# CONFIG_ZERO_CALL_USED_REGS is not set
+# end of Memory initialization
+
+#
+# Hardening of kernel data structures
+#
+# CONFIG_LIST_HARDENED is not set
+# CONFIG_BUG_ON_DATA_CORRUPTION is not set
+# end of Hardening of kernel data structures
+
+CONFIG_RANDSTRUCT_NONE=y
+# end of Kernel hardening options
+# end of Security options
+
+CONFIG_XOR_BLOCKS=m
+CONFIG_ASYNC_CORE=m
+CONFIG_ASYNC_MEMCPY=m
+CONFIG_ASYNC_XOR=m
+CONFIG_ASYNC_PQ=m
+CONFIG_ASYNC_RAID6_RECOV=m
+CONFIG_CRYPTO=y
+
+#
+# Crypto core or helper
+#
+CONFIG_CRYPTO_ALGAPI=y
+CONFIG_CRYPTO_ALGAPI2=y
+CONFIG_CRYPTO_AEAD=m
+CONFIG_CRYPTO_AEAD2=y
+CONFIG_CRYPTO_SIG2=y
+CONFIG_CRYPTO_SKCIPHER=y
+CONFIG_CRYPTO_SKCIPHER2=y
+CONFIG_CRYPTO_HASH=y
+CONFIG_CRYPTO_HASH2=y
+CONFIG_CRYPTO_RNG=y
+CONFIG_CRYPTO_RNG2=y
+CONFIG_CRYPTO_RNG_DEFAULT=y
+CONFIG_CRYPTO_AKCIPHER2=y
+CONFIG_CRYPTO_AKCIPHER=y
+CONFIG_CRYPTO_KPP2=y
+CONFIG_CRYPTO_KPP=y
+CONFIG_CRYPTO_ACOMP2=y
+CONFIG_CRYPTO_MANAGER=y
+CONFIG_CRYPTO_MANAGER2=y
+CONFIG_CRYPTO_USER=m
+CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y
+CONFIG_CRYPTO_NULL=m
+CONFIG_CRYPTO_NULL2=m
+CONFIG_CRYPTO_PCRYPT=m
+CONFIG_CRYPTO_CRYPTD=m
+CONFIG_CRYPTO_AUTHENC=m
+# CONFIG_CRYPTO_TEST is not set
+# end of Crypto core or helper
+
+#
+# Public-key cryptography
+#
+CONFIG_CRYPTO_RSA=y
+CONFIG_CRYPTO_DH=y
+CONFIG_CRYPTO_DH_RFC7919_GROUPS=y
+CONFIG_CRYPTO_ECC=m
+CONFIG_CRYPTO_ECDH=m
+# CONFIG_CRYPTO_ECDSA is not set
+CONFIG_CRYPTO_ECRDSA=m
+CONFIG_CRYPTO_SM2=m
+CONFIG_CRYPTO_CURVE25519=m
+# end of Public-key cryptography
+
+#
+# Block ciphers
+#
+CONFIG_CRYPTO_AES=y
+CONFIG_CRYPTO_AES_TI=m
+# CONFIG_CRYPTO_ANUBIS is not set
+# CONFIG_CRYPTO_ARIA is not set
+# CONFIG_CRYPTO_BLOWFISH is not set
+# CONFIG_CRYPTO_CAMELLIA is not set
+# CONFIG_CRYPTO_CAST5 is not set
+# CONFIG_CRYPTO_CAST6 is not set
+CONFIG_CRYPTO_DES=m
+# CONFIG_CRYPTO_FCRYPT is not set
+# CONFIG_CRYPTO_KHAZAD is not set
+# CONFIG_CRYPTO_SEED is not set
+CONFIG_CRYPTO_SERPENT=m
+# CONFIG_CRYPTO_SM4_GENERIC is not set
+# CONFIG_CRYPTO_TEA is not set
+CONFIG_CRYPTO_TWOFISH=m
+CONFIG_CRYPTO_TWOFISH_COMMON=m
+# end of Block ciphers
+
+#
+# Length-preserving ciphers and modes
+#
+CONFIG_CRYPTO_ADIANTUM=m
+# CONFIG_CRYPTO_ARC4 is not set
+CONFIG_CRYPTO_CHACHA20=m
+CONFIG_CRYPTO_CBC=y
+CONFIG_CRYPTO_CTR=m
+CONFIG_CRYPTO_CTS=y
+CONFIG_CRYPTO_ECB=y
+# CONFIG_CRYPTO_HCTR2 is not set
+# CONFIG_CRYPTO_KEYWRAP is not set
+# CONFIG_CRYPTO_LRW is not set
+# CONFIG_CRYPTO_PCBC is not set
+CONFIG_CRYPTO_XTS=y
+CONFIG_CRYPTO_NHPOLY1305=m
+# end of Length-preserving ciphers and modes
+
+#
+# AEAD (authenticated encryption with associated data) ciphers
+#
+# CONFIG_CRYPTO_AEGIS128 is not set
+CONFIG_CRYPTO_CHACHA20POLY1305=m
+CONFIG_CRYPTO_CCM=m
+CONFIG_CRYPTO_GCM=m
+CONFIG_CRYPTO_GENIV=m
+CONFIG_CRYPTO_SEQIV=m
+CONFIG_CRYPTO_ECHAINIV=m
+CONFIG_CRYPTO_ESSIV=m
+# end of AEAD (authenticated encryption with associated data) ciphers
+
+#
+# Hashes, digests, and MACs
+#
+CONFIG_CRYPTO_BLAKE2B=m
+CONFIG_CRYPTO_CMAC=m
+CONFIG_CRYPTO_GHASH=m
+CONFIG_CRYPTO_HMAC=y
+CONFIG_CRYPTO_MD4=m
+CONFIG_CRYPTO_MD5=y
+# CONFIG_CRYPTO_MICHAEL_MIC is not set
+CONFIG_CRYPTO_POLY1305=m
+# CONFIG_CRYPTO_RMD160 is not set
+CONFIG_CRYPTO_SHA1=y
+CONFIG_CRYPTO_SHA256=y
+CONFIG_CRYPTO_SHA512=y
+CONFIG_CRYPTO_SHA3=y
+CONFIG_CRYPTO_SM3=m
+CONFIG_CRYPTO_SM3_GENERIC=m
+CONFIG_CRYPTO_STREEBOG=m
+# CONFIG_CRYPTO_VMAC is not set
+CONFIG_CRYPTO_WP512=m
+# CONFIG_CRYPTO_XCBC is not set
+CONFIG_CRYPTO_XXHASH=m
+# end of Hashes, digests, and MACs
+
+#
+# CRCs (cyclic redundancy checks)
+#
+CONFIG_CRYPTO_CRC32C=y
+CONFIG_CRYPTO_CRC32=y
+CONFIG_CRYPTO_CRCT10DIF=y
+CONFIG_CRYPTO_CRC64_ROCKSOFT=y
+# end of CRCs (cyclic redundancy checks)
+
+#
+# Compression
+#
+CONFIG_CRYPTO_DEFLATE=m
+CONFIG_CRYPTO_LZO=y
+# CONFIG_CRYPTO_842 is not set
+# CONFIG_CRYPTO_LZ4 is not set
+# CONFIG_CRYPTO_LZ4HC is not set
+# CONFIG_CRYPTO_ZSTD is not set
+# end of Compression
+
+#
+# Random number generation
+#
+# CONFIG_CRYPTO_ANSI_CPRNG is not set
+CONFIG_CRYPTO_DRBG_MENU=y
+CONFIG_CRYPTO_DRBG_HMAC=y
+# CONFIG_CRYPTO_DRBG_HASH is not set
+# CONFIG_CRYPTO_DRBG_CTR is not set
+CONFIG_CRYPTO_DRBG=y
+CONFIG_CRYPTO_JITTERENTROPY=y
+CONFIG_CRYPTO_JITTERENTROPY_MEMORY_BLOCKS=64
+CONFIG_CRYPTO_JITTERENTROPY_MEMORY_BLOCKSIZE=32
+CONFIG_CRYPTO_JITTERENTROPY_OSR=1
+CONFIG_CRYPTO_KDF800108_CTR=y
+# end of Random number generation
+
+#
+# Userspace interface
+#
+CONFIG_CRYPTO_USER_API=y
+CONFIG_CRYPTO_USER_API_HASH=y
+CONFIG_CRYPTO_USER_API_SKCIPHER=m
+# CONFIG_CRYPTO_USER_API_RNG is not set
+# CONFIG_CRYPTO_USER_API_AEAD is not set
+CONFIG_CRYPTO_USER_API_ENABLE_OBSOLETE=y
+# CONFIG_CRYPTO_STATS is not set
+# end of Userspace interface
+
+CONFIG_CRYPTO_HASH_INFO=y
+CONFIG_CRYPTO_HW=y
+# CONFIG_CRYPTO_DEV_ATMEL_ECC is not set
+# CONFIG_CRYPTO_DEV_ATMEL_SHA204A is not set
+# CONFIG_CRYPTO_DEV_NITROX_CNN55XX is not set
+# CONFIG_CRYPTO_DEV_QAT_DH895xCC is not set
+# CONFIG_CRYPTO_DEV_QAT_C3XXX is not set
+# CONFIG_CRYPTO_DEV_QAT_C62X is not set
+# CONFIG_CRYPTO_DEV_QAT_4XXX is not set
+# CONFIG_CRYPTO_DEV_QAT_420XX is not set
+# CONFIG_CRYPTO_DEV_QAT_DH895xCCVF is not set
+# CONFIG_CRYPTO_DEV_QAT_C3XXXVF is not set
+# CONFIG_CRYPTO_DEV_QAT_C62XVF is not set
+# CONFIG_CRYPTO_DEV_VIRTIO is not set
+# CONFIG_CRYPTO_DEV_SAFEXCEL is not set
+# CONFIG_CRYPTO_DEV_CCREE is not set
+# CONFIG_CRYPTO_DEV_AMLOGIC_GXL is not set
+CONFIG_ASYMMETRIC_KEY_TYPE=y
+CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=y
+CONFIG_X509_CERTIFICATE_PARSER=y
+CONFIG_PKCS8_PRIVATE_KEY_PARSER=m
+CONFIG_PKCS7_MESSAGE_PARSER=y
+# CONFIG_PKCS7_TEST_KEY is not set
+CONFIG_SIGNED_PE_FILE_VERIFICATION=y
+# CONFIG_FIPS_SIGNATURE_SELFTEST is not set
+
+#
+# Certificates for signature checking
+#
+CONFIG_MODULE_SIG_KEY="certs/signing_key.pem"
+CONFIG_MODULE_SIG_KEY_TYPE_RSA=y
+CONFIG_SYSTEM_TRUSTED_KEYRING=y
+CONFIG_SYSTEM_TRUSTED_KEYS=""
+# CONFIG_SYSTEM_EXTRA_CERTIFICATE is not set
+CONFIG_SECONDARY_TRUSTED_KEYRING=y
+# CONFIG_SECONDARY_TRUSTED_KEYRING_SIGNED_BY_BUILTIN is not set
+# CONFIG_SYSTEM_BLACKLIST_KEYRING is not set
+# end of Certificates for signature checking
+
+CONFIG_BINARY_PRINTF=y
+
+#
+# Library routines
+#
+CONFIG_RAID6_PQ=m
+# CONFIG_RAID6_PQ_BENCHMARK is not set
+CONFIG_LINEAR_RANGES=y
+# CONFIG_PACKING is not set
+CONFIG_BITREVERSE=y
+CONFIG_GENERIC_STRNCPY_FROM_USER=y
+CONFIG_GENERIC_STRNLEN_USER=y
+CONFIG_GENERIC_NET_UTILS=y
+# CONFIG_CORDIC is not set
+# CONFIG_PRIME_NUMBERS is not set
+CONFIG_RATIONAL=y
+CONFIG_GENERIC_PCI_IOMAP=y
+
+#
+# Crypto library routines
+#
+CONFIG_CRYPTO_LIB_UTILS=y
+CONFIG_CRYPTO_LIB_AES=y
+CONFIG_CRYPTO_LIB_ARC4=m
+CONFIG_CRYPTO_LIB_GF128MUL=m
+CONFIG_CRYPTO_LIB_BLAKE2S_GENERIC=y
+CONFIG_CRYPTO_LIB_CHACHA_GENERIC=m
+CONFIG_CRYPTO_LIB_CHACHA=m
+CONFIG_CRYPTO_LIB_CURVE25519_GENERIC=m
+CONFIG_CRYPTO_LIB_CURVE25519=m
+CONFIG_CRYPTO_LIB_DES=m
+CONFIG_CRYPTO_LIB_POLY1305_RSIZE=1
+CONFIG_CRYPTO_LIB_POLY1305_GENERIC=m
+CONFIG_CRYPTO_LIB_POLY1305=m
+CONFIG_CRYPTO_LIB_CHACHA20POLY1305=m
+CONFIG_CRYPTO_LIB_SHA1=y
+CONFIG_CRYPTO_LIB_SHA256=y
+# end of Crypto library routines
+
+CONFIG_CRC_CCITT=m
+CONFIG_CRC16=y
+CONFIG_CRC_T10DIF=y
+CONFIG_CRC64_ROCKSOFT=y
+CONFIG_CRC_ITU_T=m
+CONFIG_CRC32=y
+# CONFIG_CRC32_SELFTEST is not set
+CONFIG_CRC32_SLICEBY8=y
+# CONFIG_CRC32_SLICEBY4 is not set
+# CONFIG_CRC32_SARWATE is not set
+# CONFIG_CRC32_BIT is not set
+CONFIG_CRC64=y
+# CONFIG_CRC4 is not set
+# CONFIG_CRC7 is not set
+CONFIG_LIBCRC32C=m
+# CONFIG_CRC8 is not set
+CONFIG_XXHASH=y
+# CONFIG_RANDOM32_SELFTEST is not set
+CONFIG_ZLIB_INFLATE=y
+CONFIG_ZLIB_DEFLATE=m
+CONFIG_LZO_COMPRESS=y
+CONFIG_LZO_DECOMPRESS=y
+CONFIG_LZ4_COMPRESS=y
+CONFIG_LZ4HC_COMPRESS=y
+CONFIG_LZ4_DECOMPRESS=y
+CONFIG_ZSTD_COMMON=y
+CONFIG_ZSTD_COMPRESS=y
+CONFIG_ZSTD_DECOMPRESS=y
+CONFIG_XZ_DEC=m
+CONFIG_XZ_DEC_X86=y
+CONFIG_XZ_DEC_POWERPC=y
+CONFIG_XZ_DEC_ARM=y
+CONFIG_XZ_DEC_ARMTHUMB=y
+CONFIG_XZ_DEC_SPARC=y
+# CONFIG_XZ_DEC_MICROLZMA is not set
+CONFIG_XZ_DEC_BCJ=y
+# CONFIG_XZ_DEC_TEST is not set
+CONFIG_DECOMPRESS_GZIP=y
+CONFIG_DECOMPRESS_ZSTD=y
+CONFIG_GENERIC_ALLOCATOR=y
+CONFIG_TEXTSEARCH=y
+CONFIG_TEXTSEARCH_KMP=m
+CONFIG_TEXTSEARCH_BM=m
+CONFIG_TEXTSEARCH_FSM=m
+CONFIG_XARRAY_MULTI=y
+CONFIG_ASSOCIATIVE_ARRAY=y
+CONFIG_CLOSURES=y
+CONFIG_HAS_IOMEM=y
+CONFIG_HAS_IOPORT=y
+CONFIG_HAS_IOPORT_MAP=y
+CONFIG_HAS_DMA=y
+CONFIG_NEED_DMA_MAP_STATE=y
+CONFIG_ARCH_DMA_ADDR_T_64BIT=y
+CONFIG_DMA_DECLARE_COHERENT=y
+CONFIG_ARCH_HAS_SETUP_DMA_OPS=y
+CONFIG_ARCH_HAS_SYNC_DMA_FOR_DEVICE=y
+CONFIG_ARCH_HAS_SYNC_DMA_FOR_CPU=y
+CONFIG_ARCH_HAS_DMA_PREP_COHERENT=y
+CONFIG_ARCH_DMA_DEFAULT_COHERENT=y
+CONFIG_SWIOTLB=y
+# CONFIG_SWIOTLB_DYNAMIC is not set
+CONFIG_DMA_BOUNCE_UNALIGNED_KMALLOC=y
+# CONFIG_DMA_RESTRICTED_POOL is not set
+CONFIG_DMA_NONCOHERENT_MMAP=y
+CONFIG_DMA_COHERENT_POOL=y
+CONFIG_DMA_DIRECT_REMAP=y
+CONFIG_DMA_CMA=y
+
+#
+# Default contiguous memory area size:
+#
+CONFIG_CMA_SIZE_MBYTES=16
+CONFIG_CMA_SIZE_SEL_MBYTES=y
+# CONFIG_CMA_SIZE_SEL_PERCENTAGE is not set
+# CONFIG_CMA_SIZE_SEL_MIN is not set
+# CONFIG_CMA_SIZE_SEL_MAX is not set
+CONFIG_CMA_ALIGNMENT=8
+# CONFIG_DMA_API_DEBUG is not set
+CONFIG_SGL_ALLOC=y
+CONFIG_CPU_RMAP=y
+CONFIG_DQL=y
+CONFIG_NLATTR=y
+CONFIG_LRU_CACHE=m
+CONFIG_CLZ_TAB=y
+# CONFIG_IRQ_POLL is not set
+CONFIG_MPILIB=y
+CONFIG_DIMLIB=y
+CONFIG_LIBFDT=y
+CONFIG_OID_REGISTRY=y
+CONFIG_UCS2_STRING=y
+CONFIG_HAVE_GENERIC_VDSO=y
+CONFIG_GENERIC_GETTIMEOFDAY=y
+CONFIG_GENERIC_VDSO_TIME_NS=y
+CONFIG_FONT_SUPPORT=y
+# CONFIG_FONTS is not set
+CONFIG_FONT_8x8=y
+CONFIG_FONT_8x16=y
+CONFIG_SG_POOL=y
+CONFIG_ARCH_HAS_PMEM_API=y
+CONFIG_ARCH_STACKWALK=y
+CONFIG_STACKDEPOT=y
+CONFIG_STACKDEPOT_MAX_FRAMES=64
+CONFIG_SBITMAP=y
+# CONFIG_LWQ_TEST is not set
+# end of Library routines
+
+CONFIG_GENERIC_IOREMAP=y
+CONFIG_GENERIC_LIB_DEVMEM_IS_ALLOWED=y
+
+#
+# Kernel hacking
+#
+
+#
+# printk and dmesg options
+#
+CONFIG_PRINTK_TIME=y
+# CONFIG_PRINTK_CALLER is not set
+# CONFIG_STACKTRACE_BUILD_ID is not set
+CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7
+CONFIG_CONSOLE_LOGLEVEL_QUIET=4
+CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4
+# CONFIG_DYNAMIC_DEBUG is not set
+# CONFIG_DYNAMIC_DEBUG_CORE is not set
+CONFIG_SYMBOLIC_ERRNAME=y
+CONFIG_DEBUG_BUGVERBOSE=y
+# end of printk and dmesg options
+
+# CONFIG_DEBUG_KERNEL is not set
+
+#
+# Compile-time checks and compiler options
+#
+CONFIG_AS_HAS_NON_CONST_ULEB128=y
+CONFIG_FRAME_WARN=2048
+# CONFIG_STRIP_ASM_SYMS is not set
+# CONFIG_HEADERS_INSTALL is not set
+# CONFIG_DEBUG_SECTION_MISMATCH is not set
+CONFIG_SECTION_MISMATCH_WARN_ONLY=y
+CONFIG_ARCH_WANT_FRAME_POINTERS=y
+CONFIG_FRAME_POINTER=y
+# end of Compile-time checks and compiler options
+
+#
+# Generic Kernel Debugging Instruments
+#
+CONFIG_MAGIC_SYSRQ=y
+CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x1
+CONFIG_MAGIC_SYSRQ_SERIAL=y
+CONFIG_MAGIC_SYSRQ_SERIAL_SEQUENCE=""
+# CONFIG_DEBUG_FS is not set
+CONFIG_HAVE_ARCH_KGDB=y
+CONFIG_HAVE_ARCH_KGDB_QXFER_PKT=y
+CONFIG_ARCH_HAS_UBSAN_SANITIZE_ALL=y
+# CONFIG_UBSAN is not set
+CONFIG_HAVE_KCSAN_COMPILER=y
+# end of Generic Kernel Debugging Instruments
+
+#
+# Networking Debugging
+#
+# end of Networking Debugging
+
+#
+# Memory Debugging
+#
+# CONFIG_PAGE_EXTENSION is not set
+CONFIG_SLUB_DEBUG=y
+# CONFIG_SLUB_DEBUG_ON is not set
+# CONFIG_PAGE_POISONING is not set
+# CONFIG_DEBUG_RODATA_TEST is not set
+CONFIG_ARCH_HAS_DEBUG_WX=y
+# CONFIG_DEBUG_WX is not set
+CONFIG_GENERIC_PTDUMP=y
+CONFIG_HAVE_DEBUG_KMEMLEAK=y
+# CONFIG_PER_VMA_LOCK_STATS is not set
+CONFIG_ARCH_HAS_DEBUG_VM_PGTABLE=y
+# CONFIG_DEBUG_VM_PGTABLE is not set
+CONFIG_ARCH_HAS_DEBUG_VIRTUAL=y
+CONFIG_DEBUG_MEMORY_INIT=y
+CONFIG_HAVE_ARCH_KASAN=y
+CONFIG_HAVE_ARCH_KASAN_VMALLOC=y
+CONFIG_CC_HAS_KASAN_GENERIC=y
+CONFIG_CC_HAS_WORKING_NOSANITIZE_ADDRESS=y
+# CONFIG_KASAN is not set
+CONFIG_HAVE_ARCH_KFENCE=y
+# CONFIG_KFENCE is not set
+# end of Memory Debugging
+
+#
+# Debug Oops, Lockups and Hangs
+#
+# CONFIG_PANIC_ON_OOPS is not set
+CONFIG_PANIC_ON_OOPS_VALUE=0
+CONFIG_PANIC_TIMEOUT=0
+CONFIG_HAVE_HARDLOCKUP_DETECTOR_BUDDY=y
+# CONFIG_TEST_LOCKUP is not set
+# end of Debug Oops, Lockups and Hangs
+
+#
+# Scheduler Debugging
+#
+CONFIG_SCHED_INFO=y
+# end of Scheduler Debugging
+
+# CONFIG_DEBUG_TIMEKEEPING is not set
+
+#
+# Lock Debugging (spinlocks, mutexes, etc...)
+#
+CONFIG_LOCK_DEBUGGING_SUPPORT=y
+# CONFIG_WW_MUTEX_SELFTEST is not set
+# end of Lock Debugging (spinlocks, mutexes, etc...)
+
+# CONFIG_DEBUG_IRQFLAGS is not set
+CONFIG_STACKTRACE=y
+# CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set
+
+#
+# Debug kernel data structures
+#
+# CONFIG_DEBUG_CLOSURES is not set
+# end of Debug kernel data structures
+
+#
+# RCU Debugging
+#
+CONFIG_RCU_CPU_STALL_TIMEOUT=21
+CONFIG_RCU_EXP_CPU_STALL_TIMEOUT=0
+# CONFIG_RCU_CPU_STALL_CPUTIME is not set
+# end of RCU Debugging
+
+CONFIG_HAVE_RETHOOK=y
+CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
+CONFIG_HAVE_FUNCTION_GRAPH_RETVAL=y
+CONFIG_HAVE_DYNAMIC_FTRACE=y
+CONFIG_HAVE_DYNAMIC_FTRACE_WITH_REGS=y
+CONFIG_HAVE_DYNAMIC_FTRACE_WITH_DIRECT_CALLS=y
+CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
+CONFIG_HAVE_SYSCALL_TRACEPOINTS=y
+CONFIG_TRACING_SUPPORT=y
+# CONFIG_FTRACE is not set
+# CONFIG_SAMPLES is not set
+CONFIG_HAVE_SAMPLE_FTRACE_DIRECT=y
+CONFIG_HAVE_SAMPLE_FTRACE_DIRECT_MULTI=y
+# CONFIG_STRICT_DEVMEM is not set
+
+#
+# riscv Debugging
+#
+
+#
+# arch/riscv/kernel Testing and Coverage
+#
+CONFIG_AS_HAS_ULEB128=y
+CONFIG_RUNTIME_KERNEL_TESTING_MENU=y
+# end of arch/riscv/kernel Testing and Coverage
+# end of riscv Debugging
+
+#
+# Kernel Testing and Coverage
+#
+# CONFIG_KUNIT is not set
+CONFIG_ARCH_HAS_KCOV=y
+CONFIG_CC_HAS_SANCOV_TRACE_PC=y
+# CONFIG_KCOV is not set
+# CONFIG_RUNTIME_TESTING_MENU is not set
+CONFIG_ARCH_USE_MEMTEST=y
+# CONFIG_MEMTEST is not set
+# end of Kernel Testing and Coverage
+
+#
+# Rust hacking
+#
+# end of Rust hacking
+# end of Kernel hacking
diff --git a/testing/linux-timemachine/APKBUILD b/testing/linux-timemachine/APKBUILD
new file mode 100644
index 00000000000..add90edb773
--- /dev/null
+++ b/testing/linux-timemachine/APKBUILD
@@ -0,0 +1,20 @@
+# Contributor: Kevin Daudt <kdaudt@alpinelinux.org>
+# Maintainer: Kevin Daudt <kdaudt@alpinelinux.org>
+pkgname=linux-timemachine
+pkgver=1.3.2
+pkgrel=0
+pkgdesc="Rsync-based OSX-like time machine for atomic and resumable local and remote backups"
+url="https://github.com/cytopia/linux-timemachine"
+arch="noarch"
+license="MIT"
+depends="rsync"
+options="!check" # tests depend on docker
+source="https://github.com/cytopia/linux-timemachine/archive/refs/tags/v$pkgver/linux-timemachine-$pkgver.tar.gz"
+
+package() {
+ install -Dm0755 -oroot -groot timemachine "$pkgdir"/usr/bin/timemachine
+}
+
+sha512sums="
+ed0d010a20feef169aca3bcad7703afd05334a4047563b70fae0266daf3edc7af259a5838986b8a6ff6a990cf712b832079e2c6170d96b9107e2e6fb1057132f linux-timemachine-1.3.2.tar.gz
+"
diff --git a/testing/linuxkit/APKBUILD b/testing/linuxkit/APKBUILD
new file mode 100644
index 00000000000..fd987d95ef6
--- /dev/null
+++ b/testing/linuxkit/APKBUILD
@@ -0,0 +1,41 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=linuxkit
+pkgver=1.2.0
+pkgrel=1
+pkgdesc="Toolkit for building immutable operating systems for containers"
+url="https://github.com/linuxkit/linuxkit"
+# 32-bit platforms: github.com/rn/iso9660wrap: integer overflow
+# riscv64: fails to build
+arch="all !x86 !armhf !armv7 !riscv64"
+license="Apache-2.0"
+makedepends="go"
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/linuxkit/linuxkit/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/$pkgname-$pkgver/src/cmd/linuxkit"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ local _goldflags="
+ -X github.com/linuxkit/linuxkit/src/cmd/linuxkit/version.GitCommit=AlpineLinux
+ -X github.com/linuxkit/linuxkit/src/cmd/linuxkit/version.Version=v$pkgver
+ "
+ go build -v -ldflags "$_goldflags"
+}
+
+check() {
+ go test ./...
+}
+
+package() {
+ install -Dm755 $pkgname -t "$pkgdir"/usr/bin/
+
+ mkdir -p "$pkgdir"/usr/share/doc/linuxkit/examples
+ cp -r ../../../examples/*.yml "$pkgdir"/usr/share/doc/linuxkit/examples/
+}
+
+sha512sums="
+5cc5b8ef7005e64185a46e94c0e7102b040959d040b88fd565121842c8f0f061511b41c6bb397255aa02a2508c7d60e48e03e68ba25c7376209554a4ea0ab370 linuxkit-1.2.0.tar.gz
+"
diff --git a/testing/linuxptp/APKBUILD b/testing/linuxptp/APKBUILD
new file mode 100644
index 00000000000..491be0a8fc1
--- /dev/null
+++ b/testing/linuxptp/APKBUILD
@@ -0,0 +1,48 @@
+# Maintainer:
+pkgname=linuxptp
+pkgver=4.2
+pkgrel=0
+pkgdesc="User space PTP stack for Linux"
+url="https://linuxptp.nwtime.org/"
+arch="all"
+license="GPL-2.0-or-later"
+makedepends="
+ bsd-compat-headers
+ linux-headers
+ "
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/richardcochran/linuxptp/archive/refs/tags/v$pkgver.tar.gz"
+options="!check" # no tests
+
+_bins="hwstamp_ctl nsm phc2sys phc_ctl pmc ptp4l timemaster ts2phc tz2alt"
+for _bin in $_bins; do
+ depends="$depends $pkgname-$_bin=$pkgver-r$pkgrel"
+ subpackages="$subpackages $pkgname-$_bin:split"
+done
+
+build() {
+ make \
+ CC="${CC:-cc}" \
+ version="$pkgver" \
+ EXTRA_CFLAGS="$CFLAGS -flto=auto"
+}
+
+package() {
+ make \
+ prefix=/usr \
+ mandir=/usr/share/man \
+ DESTDIR="$pkgdir" \
+ install
+}
+
+split() {
+ local name="${subpkgname#"$pkgname"-}"
+ pkgdesc="$pkgdesc ($name utility)"
+ depends=""
+
+ amove usr/sbin/$name
+}
+
+sha512sums="
+479e512efd0573602379a9e1d8ef5c0ec9e033944cee5aed11c68cea5e8a3f7d4b6f2d11f6d6d4718282010da52c2c8629d675d9b388cc0c3d574845a913cdbb linuxptp-4.2.tar.gz
+"
diff --git a/testing/linuxwave/APKBUILD b/testing/linuxwave/APKBUILD
new file mode 100644
index 00000000000..8c0f8bd22d6
--- /dev/null
+++ b/testing/linuxwave/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: Orhun Parmaksız <orhunparmaksiz@gmail.com>
+# Maintainer: Orhun Parmaksız <orhunparmaksiz@gmail.com>
+pkgname=linuxwave
+pkgver=0.1.5
+pkgrel=0
+pkgdesc="Generate music from the entropy of Linux"
+url="https://github.com/orhun/linuxwave"
+license="MIT"
+arch="x86_64 aarch64" # Limited by zig aport
+makedepends="zig"
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/orhun/linuxwave/releases/download/v$pkgver/v$pkgver.tar.gz"
+builddir="$srcdir/$pkgname"
+
+# We may want other than "baseline" for other targets, when enabled by zig
+case "$CARCH" in
+aarch64 | x86_64) cputarget=baseline ;;
+esac
+
+build() {
+ zig build -Drelease-safe -Dpie=true -Drelro=true ${cputarget:+-Dcpu="$cputarget"}
+}
+
+check() {
+ zig build test
+}
+
+package() {
+ install -Dm755 "zig-out/bin/$pkgname" -t "$pkgdir/usr/bin"
+ install -Dm644 "man/$pkgname.1" -t "$pkgdir/usr/share/man/man1"
+ install -Dm644 LICENSE -t "$pkgdir/usr/share/licenses/$pkgname"
+}
+
+sha512sums="
+1df73a1bdda6eed122f7e114a283e327f849cccc8fcb0d925403a21de683eea6eb327374f1d6028a7502648004709d9e2ad07d2be80247ec111c44686ebefbfb linuxwave-0.1.5.tar.gz
+"
diff --git a/testing/lipstick-asteroidos/APKBUILD b/testing/lipstick-asteroidos/APKBUILD
index 54c8368b2aa..23cc5f5fb4a 100644
--- a/testing/lipstick-asteroidos/APKBUILD
+++ b/testing/lipstick-asteroidos/APKBUILD
@@ -1,16 +1,18 @@
# Contributor: Bart Ribbers <bribbers@disroot.org>
# Maintainer: Bart Ribbers <bribbers@disroot.org>
+
+# The group tag is just to easily find this APKBUILD by some scripts for automation
+# group=asteroid
pkgname=lipstick-asteroidos
-pkgver=0_git20220417
+pkgver=2.0.0
pkgrel=1
-_commit="74fa4178de368944fbdb3f911b3b59cee22e07e6"
pkgdesc="A project aimed at offering easy to modify user experiences for varying mobile device form factors"
url="https://github.com/AsteroidOS/lipstick"
# armhf blocked by nemo-qml-plugin-devicelock
arch="all !armhf"
license="LGPL-2.1-only"
depends_dev="
- bluez-qt-dev
+ bluez-qt5-dev
elogind-dev
libdsme-dev
libmce-qt-dev
@@ -36,15 +38,14 @@ depends_dev="
makedepends="$depends_dev
doxygen
graphviz
- qtchooser
"
subpackages="$pkgname-dbg $pkgname-dev $pkgname-tools"
-source="https://github.com/AsteroidOS/lipstick/archive/$_commit/lipstick-$_commit.tar.gz
+source="$pkgname-$pkgver.tar.gz::https://github.com/AsteroidOS/lipstick/archive/refs/tags/$pkgver.tar.gz
0001-Drop-Qt-extended-surface.patch
0002-Disables-tests-and-doc.patch
"
options="!check" # Broken
-builddir="$srcdir/lipstick-$_commit"
+builddir="$srcdir/lipstick-$pkgver"
provides="lipstick=$pkgver-r$pkgrel"
replaces="lipstick lipstick-glacier"
@@ -72,7 +73,7 @@ tools() {
}
sha512sums="
-6b3764007333ef61a7b5c21a24c35ad6041b5e7ef4da06859b971b5ed2ac1b64b00091853f27bf443d2d1cb4255896026c4a60d7e5454c1190fc3880dec06fdc lipstick-74fa4178de368944fbdb3f911b3b59cee22e07e6.tar.gz
+e4e65a328bdac7c5a0bfcb8f9bf54f749ab5cb0bf1ef1d5f2829866ff0f7698fcf174c8871d58c700e198a992b3cc0ccfd74eae3d6ab748f51514e4331c51a29 lipstick-asteroidos-2.0.0.tar.gz
b08c875045ce84beea6bab5c22aafc7eb32668450d3b9ed2163718adedf1f19e16e9d143514882e06da38e720f508924f641a80a654eea0e76af873088c16233 0001-Drop-Qt-extended-surface.patch
221e2a75d660197364372ea8718ee6b0a476b6f8f413157b8524ec5cca57d45779b02fe7fc433727af2c8e47b52ddc6a784063fe7d1608d98396464935447a78 0002-Disables-tests-and-doc.patch
"
diff --git a/testing/liquid-dsp/APKBUILD b/testing/liquid-dsp/APKBUILD
new file mode 100644
index 00000000000..47c03e2489a
--- /dev/null
+++ b/testing/liquid-dsp/APKBUILD
@@ -0,0 +1,41 @@
+# Contributor: Edd Salkield <edd@salkield.uk>
+# Maintainer: Edd Salkield <edd@salkield.uk>
+pkgname=liquid-dsp
+pkgver=1.5.0
+pkgrel=0
+pkgdesc="Digital signal processing library for software-defined radios"
+url="https://liquidsdr.org"
+arch="x86_64 aarch64" # tests only pass on 64 bit architectures https://github.com/jgaeddert/liquid-dsp/issues/146
+license="MIT"
+makedepends="autoconf automake"
+subpackages="$pkgname-dev"
+source="https://github.com/jgaeddert/liquid-dsp/archive/v$pkgver/liquid-dsp-v$pkgver.tar.gz"
+
+prepare() {
+ default_prepare
+
+ ./bootstrap.sh
+}
+
+build() {
+ ./configure \
+ --prefix=/usr \
+ --host=$CHOST \
+ --build=$CBUILD
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+
+ # https://github.com/jgaeddert/liquid-dsp/issues/312
+ mv "$pkgdir"/usr/lib/libliquid.a* "$pkgdir"/usr/lib/libliquid.a
+}
+
+sha512sums="
+b9b655d155136aee828c76ae8287726b8abf51c969e5c2ded63e99bcb064b247597eec5b896d2fd608d94363a0d3d51214af12673858a5bdf22d27d4b662de12 liquid-dsp-v1.5.0.tar.gz
+"
diff --git a/testing/listenbrainz-mpd/APKBUILD b/testing/listenbrainz-mpd/APKBUILD
new file mode 100644
index 00000000000..9af9bb61f1d
--- /dev/null
+++ b/testing/listenbrainz-mpd/APKBUILD
@@ -0,0 +1,48 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=listenbrainz-mpd
+pkgver=2.3.4
+pkgrel=0
+pkgdesc="ListenBrainz submission client for MPD written in Rust"
+url="https://codeberg.org/elomatreb/listenbrainz-mpd"
+arch="all"
+license="AGPL-3.0-only"
+makedepends="
+ cargo
+ cargo-auditable
+ openssl-dev
+ sqlite-dev
+"
+subpackages="
+ $pkgname-doc
+ $pkgname-bash-completion
+ $pkgname-zsh-completion
+ $pkgname-fish-completion
+"
+source="$pkgname-$pkgver.tar.gz::https://codeberg.org/elomatreb/listenbrainz-mpd/archive/v$pkgver.tar.gz"
+builddir="$srcdir/$pkgname"
+options="net !check" # no tests
+
+prepare() {
+ default_prepare
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen --all-features
+}
+
+package() {
+ install -Dm755 target/release/listenbrainz-mpd "$pkgdir"/usr/bin/listenbrainz-mpd
+
+ install -Dm644 listenbrainz-mpd.adoc -t "$pkgdir"/usr/share/doc/$pkgname/
+ install -Dm644 LICENSE.txt "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+
+ install -Dm644 generated_completions/listenbrainz-mpd.bash "$pkgdir"/usr/share/bash-completion/completions/listenbrainz-mpd
+ install -Dm644 generated_completions/listenbrainz-mpd.fish "$pkgdir"/usr/share/fish/vendor_completions.d/listenbrainz-mpd.fish
+ install -Dm644 generated_completions/_listenbrainz-mpd "$pkgdir"/usr/share/zsh/site-functions/_listenbrainz-mpd
+}
+
+sha512sums="
+d2523b9194e992fa6c50e9819adbb462e9f5b2921ef1cc9b2680a3dcd38f72e80f5eab123363f33ebd7ff044cf6519bbee9ff270d1bdbc8d64046005d7431b8d listenbrainz-mpd-2.3.4.tar.gz
+"
diff --git a/testing/lite-xl/APKBUILD b/testing/lite-xl/APKBUILD
index 494bf88bd6f..2c527aa9df8 100644
--- a/testing/lite-xl/APKBUILD
+++ b/testing/lite-xl/APKBUILD
@@ -1,17 +1,16 @@
# Contributor: Jakub Panek <me@panekj.dev>
-# Maintainer: Jakub Panek <me@panekj.dev>
+# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=lite-xl
-pkgver=2.0.5
-pkgrel=0
+pkgver=2.1.1
+pkgrel=1
pkgdesc="Lightweight text editor written in Lua"
url="https://lite-xl.github.io"
arch="all"
license="MIT"
makedepends="
- agg-dev
cmake
freetype-dev
- lua5.2-dev
+ lua5.4-dev
meson
pcre2-dev
reproc-dev
@@ -22,8 +21,8 @@ source="https://github.com/lite-xl/lite-xl/archive/v$pkgver/lite-xl-$pkgver.tar.
options="!check" # no tests available
build() {
- abuild-meson . output
- meson compile ${JOBS:+-j ${JOBS}} -C output
+ abuild-meson -Darch_tuple="$CARCH-linux" . output
+ meson compile -C output
}
package() {
@@ -31,5 +30,5 @@ package() {
}
sha512sums="
-ead8ab036f60d98dc495d318e14a5c473333d897e88a37d09f543dfd2b76eacf206447b5a6e132acaa267431655b8275eb9dfddbbfdf9561cb3bcdbe1eff2057 lite-xl-2.0.5.tar.gz
+224bf8e2629f2dcd9bc5c8468a0f3f8fd6453db910241e79c8d3ba6902202a31df8381f0dd9c5fb797ad98df7bc122ea288accb58353fe310ed770d0874268e5 lite-xl-2.1.1.tar.gz
"
diff --git a/testing/litehtml/APKBUILD b/testing/litehtml/APKBUILD
new file mode 100644
index 00000000000..ce33d6c4219
--- /dev/null
+++ b/testing/litehtml/APKBUILD
@@ -0,0 +1,49 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
+pkgname=litehtml
+pkgver=0.8
+pkgrel=2
+pkgdesc="Fast and lightweight HTML/CSS rendering engine"
+url="http://www.litehtml.com"
+arch="all"
+license="BSD-3-Clause"
+makedepends="cmake samurai gumbo-parser-dev"
+checkdepends="gtest-dev"
+subpackages="$pkgname-static $pkgname-dev"
+source="https://github.com/litehtml/litehtml/archive/v$pkgver/litehtml-$pkgver.tar.gz
+ fix-gtest-check.patch
+ "
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DLITEHTML_UTF8=ON \
+ -DEXTERNAL_GUMBO=ON \
+ -DEXTERNAL_GTEST=ON \
+ -DBUILD_TESTING=ON \
+ -DBUILD_SHARED_LIBS=ON \
+ -DBUILD_TESTING="$(want_check && echo ON || echo OFF)"
+ cmake -B build-static -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DLITEHTML_UTF8=ON \
+ -DEXTERNAL_GUMBO=ON \
+ -DBUILD_TESTING=OFF
+ cmake --build build
+ cmake --build build-static
+}
+
+check() {
+ ctest --output-on-failure --test-dir build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+ DESTDIR="$pkgdir" cmake --install build-static
+}
+
+sha512sums="
+e2df205258c4e6f48cc0d8f900fb62c2da1b18c9ca007f1e222e51a59a632eb122eb2dc6136de6641ed96b3c6c823f7f90d098f2f40f9966b0cb831b180776a4 litehtml-0.8.tar.gz
+dd4d42b85a90ecb76e7d95d450e99ffce120a0032fd73196fc06835105bae8f3b3b294743e29d4f177ec363e99ebf1ae7e265e39d656ce9180244d2aafe45e3c fix-gtest-check.patch
+"
diff --git a/testing/litehtml/fix-gtest-check.patch b/testing/litehtml/fix-gtest-check.patch
new file mode 100644
index 00000000000..3ea2454d625
--- /dev/null
+++ b/testing/litehtml/fix-gtest-check.patch
@@ -0,0 +1,20 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -147,7 +147,7 @@
+ set_target_properties(${PROJECT_NAME} PROPERTIES VERSION ${PROJECT_LIB_VERSION} SOVERSION ${PROJECT_SO_VERSION})
+
+ set_target_properties(${PROJECT_NAME} PROPERTIES
+- CXX_STANDARD 11
++ CXX_STANDARD 14
+ C_STANDARD 99
+ PUBLIC_HEADER "${HEADER_LITEHTML}"
+ )
+@@ -205,7 +205,7 @@
+ )
+
+ set_target_properties(${TEST_NAME} PROPERTIES
+- CXX_STANDARD 11
++ CXX_STANDARD 14
+ C_STANDARD 99
+ PUBLIC_HEADER "${HEADER_LITEHTML}"
+ )
diff --git a/testing/litespeed/APKBUILD b/testing/litespeed/APKBUILD
deleted file mode 100644
index c1936b3dfe5..00000000000
--- a/testing/litespeed/APKBUILD
+++ /dev/null
@@ -1,142 +0,0 @@
-# Contributor: Valery Kartel <valery.kartel@gmail.com>
-# Maintainer: Valery Kartel <valery.kartel@gmail.com>
-pkgname=litespeed
-pkgver=1.5.12
-pkgrel=1
-_pkgreal=open$pkgname
-_pkghome=var/lib/$pkgname
-_php=php8
-pkgdesc="High-performance, lightweight, open source HTTP server"
-url="https://openlitespeed.org/"
-arch="x86 x86_64"
-license="GPL-3.0-or-later"
-pkgusers=litespeed
-pkggroups=litespeed
-depends="$_php-$pkgname $_php-bcmath $_php-session $_php-sockets $_php-posix"
-makedepends="linux-headers openssl-dev geoip-dev expat-dev pcre-dev zlib-dev udns-dev autoconf
- bsd-compat-headers lua-dev luajit-dev brotli-dev brotli-static zlib-static"
-install="$pkgname.pre-install"
-subpackages="$pkgname-openrc $pkgname-snmp::noarch"
-source="https://openlitespeed.org/packages/openlitespeed-$pkgver.src.tgz
- $pkgname.initd
- include.patch
- install.patch
- ls_lock.patch
- thread.patch
- admin.patch
- "
-builddir="$srcdir/openlitespeed-$pkgver"
-
-build() {
- ./configure \
- --host=$CHOST \
- --build=$CBUILD \
- --prefix=/$_pkghome \
- --with-user=$pkgusers \
- --with-group=$pkggroups \
- --enable-adminssl=yes \
- --enable-recaptcha=no \
- --disable-rpath \
- --disable-static \
- --with-openssl=/usr \
- --with-expat \
- --with-pcre \
- --with-lua \
- --with-brotli=/usr \
- --with-zlib=/lib
- local extra_libs
- case "$CARCH" in
- x86 | arm* | aarch64 | ppc64le ) extra_libs='-latomic'
- esac
- make EXTRA_LIBS="$extra_libs"
-}
-
-package() {
- local file;
- make DESTDIR="$pkgdir" install
-
- mkdir -p "$pkgdir"/usr/lib/$pkgname \
- "$pkgdir"/usr/sbin \
- "$pkgdir"/var/log
-
- # remove trash
- rm -fr "$pkgdir"/$_pkghome/php* \
- "$pkgdir"/$_pkghome/lib \
- "$pkgdir"/$_pkghome/GPL* \
- "$pkgdir"/$_pkghome/gdata \
- "$pkgdir"/$_pkghome/autoupdate \
- "$pkgdir"/$_pkghome/fcgi-bin/* \
- "$pkgdir"/$_pkghome/bin/lshttpd \
- "$pkgdir"/$_pkghome/admin/conf/php.* \
- "$pkgdir"/$_pkghome/admin/misc/gdb-bt \
- "$pkgdir"/$_pkghome/admin/misc/convertxml.* \
- "$pkgdir"/$_pkghome/admin/misc/build_admin_php.sh
-
- # fix ownership
- chown -R $pkgusers:$pkggroups \
- "$pkgdir"/$_pkghome/tmp \
- "$pkgdir"/$_pkghome/conf \
- "$pkgdir"/$_pkghome/logs \
- "$pkgdir"/$_pkghome/backup \
- "$pkgdir"/$_pkghome/cachedata \
- "$pkgdir"/$_pkghome/admin/tmp \
- "$pkgdir"/$_pkghome/admin/logs \
- "$pkgdir"/$_pkghome/admin/conf \
- "$pkgdir"/$_pkghome/admin/cgid \
- "$pkgdir"/$_pkghome/Example/logs
-
- # install configs
- install -Dm755 "$srcdir"/$pkgname.initd \
- "$pkgdir"/etc/init.d/$pkgname
- mv "$pkgdir"/$_pkghome/conf \
- "$pkgdir"/etc/$pkgname
- mv "$pkgdir"/$_pkghome/admin/conf \
- "$pkgdir"/etc/$pkgname/admin
- ln -s /etc/$pkgname "$pkgdir"/$_pkghome/conf
- ln -s /etc/$pkgname/admin "$pkgdir"/$_pkghome/admin/conf
- find "$pkgdir"/etc/$pkgname -type f -print0 | xargs -0 chmod -x
-
- # install binary
- mv "$pkgdir"/$_pkghome/bin/$_pkgreal \
- "$pkgdir"/usr/sbin/lshttpd
- ln -sf /usr/sbin/lshttpd \
- "$pkgdir"/$_pkghome/bin/$pkgname
-
- # install modules
- for file in $(find "$pkgdir"/$_pkghome/modules -name "*.so"); do
- mv $file "$pkgdir"/usr/lib/$pkgname/${file##*/}
- ln -s /usr/lib/$pkgname/${file##*/} $file
- done
-
- # install logs
- mv "$pkgdir"/$_pkghome/logs "$pkgdir"/var/log/$pkgname
- mv "$pkgdir"/$_pkghome/admin/logs "$pkgdir"/var/log/$pkgname/admin
- mv "$pkgdir"/$_pkghome/Example/logs "$pkgdir"/var/log/$pkgname/Example
- ln -s /var/log/$pkgname "$pkgdir"/$_pkghome/logs
- ln -s /var/log/$pkgname/admin "$pkgdir"/$_pkghome/admin/logs
- ln -s /var/log/$pkgname/Example "$pkgdir"/$_pkghome/Example/logs
-
- # install backend
- ln -s /usr/bin/ls$_php "$pkgdir"/$_pkghome/fcgi-bin/lsphp
- ln -s /etc/$_php/php.ini "$pkgdir"/etc/$pkgname/php.ini
- ln -s /etc/$_php/php.ini "$pkgdir"/etc/$pkgname/admin/php.ini
-}
-
-snmp() {
- pkgdesc="$pkgdesc (snmp monitoring add-on + cacti templates)"
- depends="$pkgname net-snmp"
-
- mkdir -p "$subpkgdir"/$_pkghome/add-ons
- mv "$pkgdir"/$_pkghome/add-ons/snmp_monitoring \
- "$subpkgdir"/$_pkghome/add-ons
-}
-
-sha512sums="
-62045fd137cccfbb1962d375070da19989f645061042b95a4cfd162bd6da12e70939b6410624887071414634595f2c20b1b52036f39ade90fd91f7221e4a9fbb openlitespeed-1.5.12.src.tgz
-2b0299246aaeb885122d8f939437f0e4701f6a79ea976f725ba8765d8b295c2797c0cac30e639d5eda665b9589710ee55acc4d03b078c4b9cc1e564994ccb9f5 litespeed.initd
-4932d6f039c12cc3054ad20d9066e031a656e87f1ca2897a10723872db588eacb68914b5f36eb57c3c918c1716c68db2388414659049c295cf28094cccb4c4b0 include.patch
-f4ed44c7cf00daf44aad572cc5b4814b8923e75270d6a48ec5c431902c1c91c3199f4c42394f8b3dcc04ec20c8ba21bf35af78f0760262ba7079379c896abc88 install.patch
-f4b4c1cb8199f8fcc5c6cd401b4cbe1dac74ebe6b3365cc81bf87b7161ccf2b753b565e5b0efed27b3ba2200ca54e37e4bc3b99111afe91ebc8fde74a7d4e37a ls_lock.patch
-333292a77cea48fb1aeaa68102e6c9ca925b9156ae5e6f013f7e096ed55b860e81a1f430bb1b4cbc583c782ca8c60cde51934c76be865219e0f0efc84c3b9081 thread.patch
-50b8bbd3172c44febf82bbe91da9c1c31d73ec40455cf397a91797ead47ff468ceb518d31b4cbf61d33d060cbd213985d38b8f69d4a287679698c7cb64773869 admin.patch
-"
diff --git a/testing/litespeed/admin.patch b/testing/litespeed/admin.patch
deleted file mode 100644
index 8f8467fb251..00000000000
--- a/testing/litespeed/admin.patch
+++ /dev/null
@@ -1,51 +0,0 @@
---- a/dist/admin/html.open/lib/CData.php.orig
-+++ b/dist/admin/html.open/lib/CData.php
-@@ -46,7 +46,7 @@
-
- error_log("Migrate plain conf to xml from $SERVER_ROOT\n");
-
-- if ($SERVER_ROOT{-1} != '/')
-+ if ($SERVER_ROOT[-1] != '/')
- $SERVER_ROOT .= '/';
-
- define('SERVER_ROOT', $SERVER_ROOT);
-@@ -77,7 +77,7 @@
- die("Require removexml as input param with value 1 or 0.");
-
- error_log("Migrate xml to plain conf under server root $SERVER_ROOT\n");
-- if ($SERVER_ROOT{-1} != '/')
-+ if ($SERVER_ROOT[-1] != '/')
- $SERVER_ROOT .= '/';
-
- define('SERVER_ROOT', $SERVER_ROOT);
---- a/dist/admin/html.open/lib/PathTool.php.orig
-+++ b/dist/admin/html.open/lib/PathTool.php
-@@ -5,7 +5,7 @@
-
- public static function getAbsolutePath($root, $path)
- {
-- if ($path{-1} != '/')
-+ if ($path[-1] != '/')
- $path .= '/';
-
- $newPath = $this->getAbsoluteFile($root, $path);
-@@ -14,7 +14,7 @@
-
- public static function getAbsoluteFile($root, $path)
- {
-- if ($path{0} != '/')
-+ if ($path[0] != '/')
- $path = $root . '/' . $path;
-
- $newPath = $this->clean($path);
---- a/dist/admin/html.open/lib/PlainConfParser.php.orig
-+++ b/dist/admin/html.open/lib/PlainConfParser.php
-@@ -20,7 +20,7 @@
- $parentid = $index - 1;
- $level = ($index > 0) ? $this->_list[$parentid][1] + 1 : 0;
- $fullpath = $filename;
-- if ($filename{0} != '/') {
-+ if ($filename[0] != '/') {
- if ($parentid) {
- $fullpath = $this->_list[$parentid][3] . '/' . $filename;
- } else {
diff --git a/testing/litespeed/include.patch b/testing/litespeed/include.patch
deleted file mode 100644
index cf9e560bade..00000000000
--- a/testing/litespeed/include.patch
+++ /dev/null
@@ -1,118 +0,0 @@
---- a/src/main/httpserver.cpp.orig
-+++ b/src/main/httpserver.cpp
-@@ -138,7 +138,7 @@
-
- #if defined(__FreeBSD__ ) || defined(__NetBSD__) || defined(__OpenBSD__) \
- || defined(macintosh) || defined(__APPLE__) || defined(__APPLE_CC__)
--#include <sys/sysctl.h>
-+#include <linux/sysctl.h>
- #endif
-
- #define FILEMODE 0644
---- a/src/main/lshttpdmain.cpp.orig
-+++ b/src/main/lshttpdmain.cpp
-@@ -51,7 +51,7 @@
- #include <util/httpfetch.h>
- #include <socket/gsockaddr.h>
-
--#include <sys/sysctl.h>
-+#include <linux/sysctl.h>
-
- #include <extensions/cgi/cgidworker.h>
- #include <extensions/registry/extappregistry.h>
-
---- a/src/sslpp/sslsesscache.h.orig
-+++ b/src/sslpp/sslsesscache.h
-@@ -24,6 +24,7 @@
- #include <util/tsingleton.h>
- #include <stdint.h>
- #include <unistd.h>
-+#include <time.h>
-
-
- #define LS_SSLSESSCACHE_DEFAULTSIZE 40*1024
-
---- a/src/modules/lua/lsluadefs.h.orig
-+++ b/src/modules/lua/lsluadefs.h
-@@ -22,8 +22,8 @@
- extern "C" {
- #endif
- /* need lua_State * */
--#include <luajit.h>
--#include <lauxlib.h>
-+#include <luajit-2.1/luajit.h>
-+#include <luajit-2.1/lauxlib.h>
- #ifdef __cplusplus
- };
- #endif
---- a/configure.orig
-+++ b/configure
-@@ -16026,16 +16026,16 @@
- if test "$OPENLSWS_BROTLI" = "no" ; then
- echo "Brotli compression disabled!!!"
- else
-- LIBBROTLI=" $OPENLSWS_BROTLI/out/libbrotlidec-static.a $OPENLSWS_BROTLI/out/libbrotlienc-static.a $OPENLSWS_BROTLI/out/libbrotlicommon-static.a "
-- as_ac_File=`$as_echo "ac_cv_file_$OPENLSWS_BROTLI/out/libbrotlidec-static.a" | $as_tr_sh`
--{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $OPENLSWS_BROTLI/out/libbrotlidec-static.a" >&5
--$as_echo_n "checking for $OPENLSWS_BROTLI/out/libbrotlidec-static.a... " >&6; }
-+ LIBBROTLI=" /usr/lib/libbrotlidec-static.a /usr/lib/libbrotlienc-static.a /usr/lib/libbrotlicommon-static.a "
-+ as_ac_File=`$as_echo "ac_cv_file_/usr/lib/libbrotlidec-static.a" | $as_tr_sh`
-+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for /usr/lib/libbrotlidec-static.a" >&5
-+$as_echo_n "checking for /usr/lib/libbrotlidec-static.a... " >&6; }
- if eval \${$as_ac_File+:} false; then :
- $as_echo_n "(cached) " >&6
- else
- test "$cross_compiling" = yes &&
- as_fn_error $? "cannot check for file existence when cross compiling" "$LINENO" 5
--if test -r "$OPENLSWS_BROTLI/out/libbrotlidec-static.a"; then
-+if test -r "/usr/lib/libbrotlidec-static.a"; then
- eval "$as_ac_File=yes"
- else
- eval "$as_ac_File=no"
-@@ -16047,21 +16047,21 @@
- if eval test \"x\$"$as_ac_File"\" = x"yes"; then :
-
- cat >>confdefs.h <<_ACEOF
--#define `$as_echo "HAVE_$OPENLSWS_BROTLI/out/libbrotlidec-static.a" | $as_tr_cpp` 1
-+#define `$as_echo "HAVE_/usr/lib/libbrotlidec-static.a" | $as_tr_cpp` 1
- _ACEOF
-
- else
- LIBBROTLI=
- fi
--as_ac_File=`$as_echo "ac_cv_file_$OPENLSWS_BROTLI/c/include/brotli/decode.h" | $as_tr_sh`
--{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $OPENLSWS_BROTLI/c/include/brotli/decode.h" >&5
--$as_echo_n "checking for $OPENLSWS_BROTLI/c/include/brotli/decode.h... " >&6; }
-+as_ac_File=`$as_echo "ac_cv_file_/usr/include/brotli/decode.h" | $as_tr_sh`
-+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for /usr/include/brotli/decode.h" >&5
-+$as_echo_n "checking for /usr/include/brotli/decode.h... " >&6; }
- if eval \${$as_ac_File+:} false; then :
- $as_echo_n "(cached) " >&6
- else
- test "$cross_compiling" = yes &&
- as_fn_error $? "cannot check for file existence when cross compiling" "$LINENO" 5
--if test -r "$OPENLSWS_BROTLI/c/include/brotli/decode.h"; then
-+if test -r "/usr/include/brotli/decode.h"; then
- eval "$as_ac_File=yes"
- else
- eval "$as_ac_File=no"
-@@ -16073,7 +16073,7 @@
- if eval test \"x\$"$as_ac_File"\" = x"yes"; then :
-
- cat >>confdefs.h <<_ACEOF
--#define `$as_echo "HAVE_$OPENLSWS_BROTLI/c/include/brotli/decode.h" | $as_tr_cpp` 1
-+#define `$as_echo "HAVE_/sur/include/brotli/decode.h" | $as_tr_cpp` 1
- _ACEOF
-
- else
-@@ -16084,8 +16084,8 @@
- echo "Brotli files check failed. If continue, brotli compression will be disabled."
- else
- echo "Brotli checked and enabled!!!"
-- CPPFLAGS="$CPPFLAGS -I$OPENLSWS_BROTLI/c/include "
-- LIBBROTLI=" $OPENLSWS_BROTLI/out/libbrotlidec-static.a $OPENLSWS_BROTLI/out/libbrotlienc-static.a $OPENLSWS_BROTLI/out/libbrotlicommon-static.a "
-+ CPPFLAGS="$CPPFLAGS -I/usr/include "
-+ LIBBROTLI=" /usr/lib/libbrotlidec-static.a /usr/lib/libbrotlienc-static.a /usr/lib/libbrotlicommon-static.a "
-
- cat >>confdefs.h <<_ACEOF
- #define USE_BROTLI 1
diff --git a/testing/litespeed/install.patch b/testing/litespeed/install.patch
deleted file mode 100644
index ec3112170bd..00000000000
--- a/testing/litespeed/install.patch
+++ /dev/null
@@ -1,215 +0,0 @@
---- a/configure.orig
-+++ b/configure
-@@ -16191,10 +16191,10 @@
-
-
- if test "$OPENLSWS_BSSL" = no ; then
-- usedynossl=no
-- CPPFLAGS=" -I../../ssl/include $CPPFLAGS -I../../src -I../../include -I/usr/local/include -I/usr/local -I/usr -I/usr/pkg "
-+ usedynossl=yes
-+ CPPFLAGS=" $CPPFLAGS -I../../src -I../../include -I/usr/local/include -I/usr/local -I/usr -I/usr/pkg "
- echo "Will build latest stable openssl libraries for you, this may take several minutes ..."
-- OSSL=`. $srcdir/dlossl.sh`
-+# OSSL=`. $srcdir/dlossl.sh`
- echo "Finsihed building openssl."
- echo "Openssl: use_dyn_ossl = $usedynossl"
-
-@@ -16576,7 +16576,7 @@
-
-
-
--if test "$OSNAME" = Darwin ; then
-+if test "$OSNAME" = Linux ; then
-
-
- # Check whether --with-openssl was given.
---- a/dist/install.sh.orig
-+++ b/dist/install.sh
-@@ -35,11 +35,7 @@
- fi
-
- if [ "x$OS" = "xLinux" ] ; then
-- if [ "x$OSTYPE" != "x64" ] ; then
-- $DLCMD $LSWS_HOME/admin/fcgi-bin/admin_php http://www.litespeedtech.com/packages/lsphp5_bin/i386/lsphp5
-- else
-- $DLCMD $LSWS_HOME/admin/fcgi-bin/admin_php http://www.litespeedtech.com/packages/lsphp5_bin/x86_64/lsphp5
-- fi
-+ ln -s /usr/bin/lsphp8 $LSWS_HOME/admin/fcgi-bin/admin_php
-
- if [ $? = 0 ] ; then
- HASADMINPHP=y
---- a/dist/functions.sh.orig
-+++ b/dist/functions.sh
-@@ -399,7 +399,7 @@
-
- if [ $INST_USER = "root" ]; then
- if [ $SUCC -eq "1" ]; then
-- chown -R "$DIR_OWN" "$LSWS_HOME"
-+ : #chown -R "$DIR_OWN" "$LSWS_HOME"
- fi
- fi
- }
-@@ -649,7 +649,7 @@
- if [ ! -d "$LSWS_HOME/$arg" ]; then
- mkdir "$LSWS_HOME/$arg"
- fi
-- chown "$OWNER" "$LSWS_HOME/$arg"
-+ #chown "$OWNER" "$LSWS_HOME/$arg"
- chmod $PERM "$LSWS_HOME/$arg"
- done
-
-@@ -666,7 +666,7 @@
- do
- if [ -f "$LSINSTALL_DIR/$arg" ]; then
- cp -f "$LSINSTALL_DIR/$arg" "$LSWS_HOME/$arg"
-- chown "$OWNER" "$LSWS_HOME/$arg"
-+ #chown "$OWNER" "$LSWS_HOME/$arg"
- chmod $PERM "$LSWS_HOME/$arg"
- fi
- done
-@@ -685,7 +685,7 @@
- cp "$LSINSTALL_DIR/$arg" "$LSWS_HOME/$arg"
- fi
- if [ -f "$LSWS_HOME/$arg" ]; then
-- chown "$OWNER" "$LSWS_HOME/$arg"
-+ #chown "$OWNER" "$LSWS_HOME/$arg"
- chmod $PERM "$LSWS_HOME/$arg"
- fi
- done
-@@ -701,7 +701,7 @@
- for arg
- do
- cp -R "$LSINSTALL_DIR/$arg/"* "$LSWS_HOME/$arg/"
-- chown -R "$OWNER" "$LSWS_HOME/$arg/"*
-+ #chown -R "$OWNER" "$LSWS_HOME/$arg/"*
- #chmod -R $PERM $LSWS_HOME/$arg/*
- done
- }
-@@ -728,7 +728,7 @@
- for arg
- do
- cp -R "$LSINSTALL_DIR/$arg/"* "$LSWS_HOME/$arg.$VERSION/"
-- chown -R "$OWNER" "$LSWS_HOME/$arg.$VERSION"
-+ #chown -R "$OWNER" "$LSWS_HOME/$arg.$VERSION"
- $TEST_BIN -L "$LSWS_HOME/$arg"
- if [ $? -eq 0 ]; then
- rm -f "$LSWS_HOME/$arg"
-@@ -750,7 +750,7 @@
- for arg
- do
- cp -f "$LSINSTALL_DIR/$arg" "$LSWS_HOME/$arg.$VERSION"
-- chown "$OWNER" "$LSWS_HOME/$arg.$VERSION"
-+ #chown "$OWNER" "$LSWS_HOME/$arg.$VERSION"
- chmod $PERM "$LSWS_HOME/$arg.$VERSION"
- $TEST_BIN -L "$LSWS_HOME/$arg"
- if [ $? -eq 0 ]; then
-@@ -767,11 +767,11 @@
- umask 022
- if [ $INST_USER = "root" ]; then
- SDIR_OWN="root:$ROOTGROUP"
-- chown $SDIR_OWN $LSWS_HOME
-+ #chown $SDIR_OWN $LSWS_HOME
- else
- SDIR_OWN=$DIR_OWN
- fi
-- sed "s:%LSWS_CTRL%:$LSWS_HOME/bin/lswsctrl:" "$LSINSTALL_DIR/admin/misc/lsws.rc.in" > "$LSINSTALL_DIR/admin/misc/lsws.rc"
-+ #sed "s:%LSWS_CTRL%:$LSWS_HOME/bin/lswsctrl:" "$LSINSTALL_DIR/admin/misc/lsws.rc.in" > "$LSINSTALL_DIR/admin/misc/lsws.rc"
-
- OWNER=$1
- PERM=$2
-@@ -782,7 +782,7 @@
- if [ ! -f "$LSWS_HOME/$arg" ]; then
- cp "$LSINSTALL_DIR/$arg" "$LSWS_HOME/$arg"
- fi
-- chown "$OWNER" "$LSWS_HOME/$arg"
-+ #chown "$OWNER" "$LSWS_HOME/$arg"
- chmod $PERM "$LSWS_HOME/$arg"
- done
- }
-@@ -797,7 +797,7 @@
- for arg
- do
- cp -R "$LSINSTALL_DIR/$arg/"* "$LSWS_HOME/$arg/"
-- chown -R "$OWNER" "$LSWS_HOME/$arg/"*
-+ #chown -R "$OWNER" "$LSWS_HOME/$arg/"*
- #chmod -R $PERM $LSWS_HOME/$arg/*
- done
- }
-@@ -816,7 +816,7 @@
- do
- if [ -d "$LSINSTALL_DIR/$arg" ]; then
- cp -R "$LSINSTALL_DIR/$arg/"* "$LSWS_HOME/$arg.$VERSION/"
-- chown -R "$OWNER" "$LSWS_HOME/$arg.$VERSION"
-+ #chown -R "$OWNER" "$LSWS_HOME/$arg.$VERSION"
- $TEST_BIN -L "$LSWS_HOME/$arg"
- if [ $? -eq 0 ]; then
- rm -f "$LSWS_HOME/$arg"
-@@ -841,7 +841,7 @@
- if [ -f "$LSINSTALL_DIR/$arg" ]; then
-
- cp -f "$LSINSTALL_DIR/$arg" "$LSWS_HOME/$arg.$VERSION"
-- chown "$OWNER" "$LSWS_HOME/$arg.$VERSION"
-+ #chown "$OWNER" "$LSWS_HOME/$arg.$VERSION"
- chmod $PERM "$LSWS_HOME/$arg.$VERSION"
- $TEST_BIN -L "$LSWS_HOME/$arg"
- if [ $? -eq 0 ]; then
-@@ -873,11 +873,11 @@
-
- create_lsadm()
- {
-- groupadd lsadm
-+ #groupadd lsadm
- #1>/dev/null 2>&1
- lsadm_gid=`grep "^lsadm:" /etc/group | awk -F : '{ print $3; }'`
-- useradd -g $lsadm_gid -d / -r -s /sbin/nologin lsadm
-- usermod -a -G $WS_GROUP lsadm
-+ #useradd -g $lsadm_gid -d / -r -s /sbin/nologin lsadm
-+ #usermod -a -G $WS_GROUP lsadm
- #1>/dev/null 2>&1
-
- }
-@@ -950,13 +950,13 @@
- CONF_OWN="lsadm:lsadm"
- fi
- SDIR_OWN="root:$ROOTGROUP"
-- chown $SDIR_OWN $LSWS_HOME
-+ #chown $SDIR_OWN $LSWS_HOME
- else
- SDIR_OWN=$DIR_OWN
- fi
-- sed "s:%LSWS_CTRL%:$LSWS_HOME/bin/lswsctrl:" "$LSINSTALL_DIR/admin/misc/lsws.rc.in" > "$LSINSTALL_DIR/admin/misc/lsws.rc"
-- sed "s:%LSWS_CTRL%:$LSWS_HOME/bin/lswsctrl:" "$LSINSTALL_DIR/admin/misc/lsws.rc.gentoo.in" > "$LSINSTALL_DIR/admin/misc/lsws.rc.gentoo"
-- sed "s:%LSWS_CTRL%:$LSWS_HOME/bin/lswsctrl:" "$LSINSTALL_DIR/admin/misc/lshttpd.service.in" > "$LSINSTALL_DIR/admin/misc/lshttpd.service"
-+ #sed "s:%LSWS_CTRL%:$LSWS_HOME/bin/lswsctrl:" "$LSINSTALL_DIR/admin/misc/lsws.rc.in" > "$LSINSTALL_DIR/admin/misc/lsws.rc"
-+ #sed "s:%LSWS_CTRL%:$LSWS_HOME/bin/lswsctrl:" "$LSINSTALL_DIR/admin/misc/lsws.rc.gentoo.in" > "$LSINSTALL_DIR/admin/misc/lsws.rc.gentoo"
-+ #sed "s:%LSWS_CTRL%:$LSWS_HOME/bin/lswsctrl:" "$LSINSTALL_DIR/admin/misc/lshttpd.service.in" > "$LSINSTALL_DIR/admin/misc/lshttpd.service"
- if [ -d "$LSWS_HOME/admin/html.$VERSION" ]; then
- rm -rf "$LSWS_HOME/admin/html.$VERSION"
- fi
-@@ -965,10 +965,7 @@
- util_mkdir "$CONF_OWN" $SDIR_MOD conf conf/cert conf/templates conf/vhosts conf/vhosts/Example admin/conf admin/tmp phpbuild
- util_mkdir "$SDIR_OWN" $SDIR_MOD cgid admin/cgid admin/cgid/secret
- util_mkdir "$DIR_OWN" $SDIR_MOD tmp/ocspcache
-- chgrp $WS_GROUP $LSWS_HOME/admin/tmp $LSWS_HOME/admin/cgid $LSWS_HOME/cgid
- chmod g+x $LSWS_HOME/admin/tmp $LSWS_HOME/admin/cgid $LSWS_HOME/cgid
-- chown $CONF_OWN $LSWS_HOME/admin/tmp/sess_* 1>/dev/null 2>&1
-- chown $DIR_OWN $LSWS_HOME/cachedata
- chown $DIR_OWN $LSWS_HOME/autoupdate
- chown $DIR_OWN $LSWS_HOME/tmp
- util_mkdir "$SDIR_OWN" $DIR_MOD Example
-@@ -994,7 +991,6 @@
- util_cpfile "$SDIR_OWN" $EXEC_MOD fcgi-bin/RailsRunner.rb fcgi-bin/RailsRunner.rb.2.3
-
- util_cpfile "$SDIR_OWN" $EXEC_MOD lsrecaptcha/_recaptcha lsrecaptcha/_recaptcha.shtml
-- util_cpfile "$SDIR_OWN" $EXEC_MOD admin/misc/rc-inst.sh admin/misc/admpass.sh admin/misc/rc-uninst.sh admin/misc/uninstall.sh admin/misc/lsws.rc admin/misc/lsws.rc.gentoo admin/misc/enable_phpa.sh admin/misc/mgr_ver.sh admin/misc/gzipStatic.sh admin/misc/fp_install.sh admin/misc/create_admin_keypair.sh admin/misc/awstats_install.sh admin/misc/update.sh admin/misc/cleancache.sh admin/misc/lsup.sh admin/misc/testbeta.sh
- util_cpfile "$SDIR_OWN" $EXEC_MOD admin/misc/ap_lsws.sh.in admin/misc/build_ap_wrapper.sh admin/misc/cpanel_restart_httpd.in admin/misc/build_admin_php.sh admin/misc/convertxml.sh admin/misc/lscmctl
- util_cpfile "$SDIR_OWN" $DOC_MOD admin/misc/gdb-bt admin/misc/htpasswd.php admin/misc/php.ini admin/misc/genjCryptionKeyPair.php admin/misc/purge_cache_byurl.php
- util_cpfile "$SDIR_OWN" $DOC_MOD admin/misc/convertxml.php admin/misc/lshttpd.service
-@@ -1049,7 +1045,6 @@
- fi
-
- #change conf own as lsadm:nobody permission 750
-- chown -R lsadm:$WS_GROUP "$LSWS_HOME/conf/"
- chmod -R 0750 "$LSWS_HOME/conf/"
-
- chmod 0600 "$LSWS_HOME/conf/httpd_config.conf"
diff --git a/testing/litespeed/litespeed.initd b/testing/litespeed/litespeed.initd
deleted file mode 100644
index ee3cf42ecd3..00000000000
--- a/testing/litespeed/litespeed.initd
+++ /dev/null
@@ -1,33 +0,0 @@
-#!/sbin/openrc-run
-
-description="LiteSpeed Web Server"
-
-lshome=/var/lib/litespeed
-
-command=$lshome/bin/lswsctrl
-cfgfile=$lshome/conf/httpd_config.conf
-pidfile=/tmp/lshttpd/lshttpd.pid
-required_files="$cfgfile"
-
-depend() {
- need net
- use dns netmount
-}
-
-start() {
- ebegin "Starting $RC_SVCNAME"
- $command start >/dev/null
- eend $?
-}
-
-stop() {
- ebegin "Stopping $RC_SVCNAME"
- $command stop >/dev/null
- eend $?
-}
-
-restart() {
- ebegin "Restarting $RC_SVCNAME"
- $command restart >/dev/null
- eend $?
-}
diff --git a/testing/litespeed/litespeed.pre-install b/testing/litespeed/litespeed.pre-install
deleted file mode 100644
index eed557467b5..00000000000
--- a/testing/litespeed/litespeed.pre-install
+++ /dev/null
@@ -1,6 +0,0 @@
-#!/bin/sh
-
-addgroup -S litespeed 2>/dev/null
-adduser -S -D -H -h /var/lib/litespeed -s /sbin/nologin -G litespeed -g litespeed litespeed 2>/dev/null
-
-exit 0
diff --git a/testing/litespeed/ls_lock.patch b/testing/litespeed/ls_lock.patch
deleted file mode 100644
index 645e61ef825..00000000000
--- a/testing/litespeed/ls_lock.patch
+++ /dev/null
@@ -1,34 +0,0 @@
---- a/include/lsr/ls_lock.h
-+++ b/include/lsr/ls_lock.h
-@@ -55,16 +55,9 @@
- extern "C" {
- #endif
-
--#if defined(linux) || defined(__linux) || defined(__linux__) || defined(__gnu_linux__) \
-- || defined(__FreeBSD__ ) || defined(__NetBSD__) || defined(__OpenBSD__)
--#define USE_F_MUTEX
--#define USE_MUTEX_ADAPTIVE
--
--#else
- #undef USE_F_MUTEX
- #define USE_MUTEX_LOCK
-
--#endif
- #define USE_ATOMIC_SPIN
-
- #define MAX_FUTEX_SPINCNT 10
---- a/src/lsr/ls_lock.c.orig
-+++ b/src/lsr/ls_lock.c
-@@ -124,11 +124,7 @@
- #else /* defined(USE_MUTEX_ADAPTIVE) */
- /* pthread_mutexattr_settype(&myAttr, PTHREAD_MUTEX_NORMAL); */
- pthread_mutexattr_settype(&myAttr,
--#if defined(linux) || defined(__linux) || defined(__linux__) || defined(__gnu_linux__)
-- PTHREAD_MUTEX_ERRORCHECK_NP
--#else /* defined(linux) */
- PTHREAD_MUTEX_ERRORCHECK
--#endif /* defined(linux) */
- );
- #endif /* defined(USE_MUTEX_ADAPTIVE) */
- /* pthread_mutexattr_settype(&myAttr, PTHREAD_MUTEX_RECURSIVE); */
-
diff --git a/testing/litespeed/thread.patch b/testing/litespeed/thread.patch
deleted file mode 100644
index 8f8522baee8..00000000000
--- a/testing/litespeed/thread.patch
+++ /dev/null
@@ -1,37 +0,0 @@
---- a/src/thread/thread.h
-+++ b/src/thread/thread.h
-@@ -118,12 +118,6 @@
-
- int timedJoin(void **pRetVal, struct timespec *timeout)
- { return pthread_timedjoin_np(m_thread, pRetVal, timeout); }
--
-- int attrSetAffinity(size_t cpusetsize, const cpu_set_t *cpuset)
-- { return m_thread ? LS_FAIL : pthread_attr_setaffinity_np(&m_attr, cpusetsize, cpuset); }
--
-- int attrGetAffinity(size_t cpusetsize, cpu_set_t *pCpuSet)
-- { return pthread_attr_getaffinity_np(&m_attr, cpusetsize, pCpuSet); }
- #endif
-
- int attrSetDetachState(int detachstate)
---- a/src/thread/pthreadmutex.cpp
-+++ b/src/thread/pthreadmutex.cpp
-@@ -16,19 +16,6 @@
- * along with this program. If not, see http://www.gnu.org/licenses/. *
- *****************************************************************************/
- #include "pthreadmutex.h"
--#if (defined(linux) || defined(__linux) || defined(__linux__) || defined(__gnu_linux__)) && !defined( NDEBUG )
-
--#ifndef PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP
--# define PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP \
-- {0, 0, 0, PTHREAD_MUTEX_ERRORCHECK_NP, __LOCK_INITIALIZER}
--#endif
--
--pthread_mutex_t PThreadMutex::s_proto =
-- PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP;
--
--#else
--
- pthread_mutex_t PThreadMutex::s_proto = PTHREAD_MUTEX_INITIALIZER;
--
--#endif
-
diff --git a/testing/litterbox/APKBUILD b/testing/litterbox/APKBUILD
index 7542204c010..e596d6f3b75 100644
--- a/testing/litterbox/APKBUILD
+++ b/testing/litterbox/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: TBK <alpine@jjtc.eu>
# Maintainer: TBK <alpine@jjtc.eu>
pkgname=litterbox
-pkgver=1.8
-pkgrel=3
+pkgver=1.9
+pkgrel=1
pkgdesc="IRC logger"
arch="all"
url="https://git.causal.agency/litterbox/"
@@ -26,5 +26,5 @@ package() {
}
sha512sums="
-ef49f1591eb70b80d8cd71eb4bf43ec02d09e20061627ad6900e32935b06a48ee52787cbc9debc7ac871b38d91e58ffe190d3c9fabe4cc764fb669cdd07a4c39 litterbox-1.8.tar.gz
+b2af91635118010ba5093027bffadbbdaa4e6e80f953881f1fb416ebff410897b9a1259e9cc7ddd33df6334b97704b3992979a85f0310e0dabde6af41b56149a litterbox-1.9.tar.gz
"
diff --git a/testing/livestreamer/APKBUILD b/testing/livestreamer/APKBUILD
deleted file mode 100644
index 9014a73b103..00000000000
--- a/testing/livestreamer/APKBUILD
+++ /dev/null
@@ -1,26 +0,0 @@
-# Contributor: Francesco Colista <fcolista@alpinelinux.org>
-# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
-pkgname=livestreamer
-pkgver=1.12.2
-pkgrel=11
-pkgdesc="Command-line utility that extracts streams from various services and pipes them into a video player of choice"
-url="https://docs.livestreamer.io/"
-arch="noarch"
-license="BSD-2-Clause AND MIT"
-depends="py3-requests rtmpdump py3-pycryptodome py3-librtmp"
-makedepends="py3-sphinx py3-setuptools"
-source="$pkgname-$pkgver.tar.gz::https://github.com/chrippa/livestreamer/archive/v$pkgver.tar.gz"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 setup.py test
-}
-
-package() {
- python3 setup.py install --root="$pkgdir" --optimize=1
-}
-
-sha512sums="547886b494a7562e479cf31db15b5b02545f2ebc5f8b70d0fe0006d3748c5c9f20517638c7642377e2bdc4083738829eacf272e8d68f332da212bf65300f5d12 livestreamer-1.12.2.tar.gz"
diff --git a/testing/lizardfs/APKBUILD b/testing/lizardfs/APKBUILD
index 51167a74da0..2cbde1fa54d 100644
--- a/testing/lizardfs/APKBUILD
+++ b/testing/lizardfs/APKBUILD
@@ -2,10 +2,10 @@
# Maintainer: Michael Pirogov <vbnet.ru@gmail.com>
pkgname=lizardfs
pkgver=3.13.0
-pkgrel=1
-pkgdesc="A highly reliable, scalable and efficient distributed file system"
+pkgrel=12
+pkgdesc="Highly reliable, scalable and efficient distributed file system"
url="https://github.com/lizardfs/lizardfs/"
-arch="all !x86 !s390x !ppc64le" # limited to isa-l-dev
+arch="all"
license="GPL-3.0-only"
makedepends="
asciidoc
@@ -45,6 +45,8 @@ subpackages="
$pkgname-bash-completion
"
source="$pkgname-$pkgver.tar.gz::https://github.com/lizardfs/lizardfs/archive/refs/tags/$pkgver-rc3.tar.gz
+ gcc13.patch
+ $pkgname-uraft.patch
$pkgname-cgiserv.initd
$pkgname-chunkserver.initd
$pkgname-cgiserv.confd
@@ -52,12 +54,9 @@ source="$pkgname-$pkgver.tar.gz::https://github.com/lizardfs/lizardfs/archive/re
$pkgname-metalogger.initd
$pkgname-iostat-header.patch
$pkgname-cstdio-header.patch
- $pkgname-uraft.patch
"
builddir="$srcdir/$pkgname-$pkgver-rc3"
-[ "$CARCH" = "riscv64" ] && options="$options textrels"
-
build() {
if [ "$CBUILD" != "$CHOST" ]; then
CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
@@ -124,7 +123,7 @@ chunkserver_openrc() {
client() {
pkgdesc="LizardFS client"
- depends="fuse"
+ depends="fuse fuse3"
amove usr/bin/*
}
@@ -149,6 +148,8 @@ cgiserv_openrc() {
sha512sums="
5e57c0704d30d1e4f7fd7c2ac6ed889d0075d86ad20536fc927f4fe0d228b907c4ac2697d3c17d0313853f27506fdf6441bf9559d3ed79ae95f51595ec3363d9 lizardfs-3.13.0.tar.gz
+b0c13076aeef2489897ab73138101fbbd239ae4c7375bb45dc280b42dd5d7a761a46a97b64f3b5274c99a4318758024db593cb91a0d9a82e58b71ef45b20bf4c gcc13.patch
+ec38f06048c2719bba1a8e751411468270e9bc82c955c897dde21cd1e428be686e2b3ae680a57813370ec89e264f66132acd27f84f2ade6f5a63c0b8e2ece256 lizardfs-uraft.patch
c698aff4de9aeb76202a809e44ac8d0ec9c6348a806b1c813c2a40858339b1c139a480a9c5aff40bf2c9821883c6c0dfeabb010f3faa5746673235f0fb3c5a76 lizardfs-cgiserv.initd
56a714f3d29030ca12dc1859a1121b2a89606a2ccccec65481e2eb0b846757dea71dfe5f5a6d648b32e731d14b7d7725f79703851365b0862d7eb415a5f49dfb lizardfs-chunkserver.initd
b5c625f0004df33889de60ddad37e41f3acf081b37247606a1544e5f63354e121fe4cce511a6e60f4f2c0305155faf0614b8a4bce7267929fe68a1a4b546b582 lizardfs-cgiserv.confd
@@ -156,5 +157,4 @@ a041fa324d37bda098ad65e9d6507f281ed388471956ca79aa33b8b0d1c4a9d528662a2410c47f38
8e73a7715e7a010d435efb9058ed67aad1caa95c840d3f1fae6bafd2a700cedbb0244d29363929d8e8d9a2036a2e0b173c0c2f7b52529ba4088e1296479fc0f5 lizardfs-metalogger.initd
fed14323975cd2d916bcc78d15ec105176106024faa6587a5b6dc3f2c7c5cf3632491babf2865459ac614ba885ee79e301aac4f19c27c4f04780a4a9d94e9312 lizardfs-iostat-header.patch
b91f07af8a1d82ac9530e0ddc5984ee1f3cba9af7d6e9bf2093d04fbd0862d98860a2db2bd13fe6e0eea0cd7bfd2254a8973a5a398402c1682c51b54267b82cf lizardfs-cstdio-header.patch
-ec38f06048c2719bba1a8e751411468270e9bc82c955c897dde21cd1e428be686e2b3ae680a57813370ec89e264f66132acd27f84f2ade6f5a63c0b8e2ece256 lizardfs-uraft.patch
"
diff --git a/testing/lizardfs/gcc13.patch b/testing/lizardfs/gcc13.patch
new file mode 100644
index 00000000000..40438422b35
--- /dev/null
+++ b/testing/lizardfs/gcc13.patch
@@ -0,0 +1,12 @@
+diff --git a/src/common/io_limits_config_loader.h b/src/common/io_limits_config_loader.h
+index 411f986..7554792 100644
+--- a/src/common/io_limits_config_loader.h
++++ b/src/common/io_limits_config_loader.h
+@@ -19,6 +19,7 @@
+ #pragma once
+ #include "common/platform.h"
+
++#include <cstdint>
+ #include <istream>
+ #include <map>
+ #include <string>
diff --git a/testing/lkrg/AKMBUILD b/testing/lkrg/AKMBUILD
new file mode 100644
index 00000000000..7f5d2d278b4
--- /dev/null
+++ b/testing/lkrg/AKMBUILD
@@ -0,0 +1,3 @@
+modname=lkrg
+modver=0.9.6
+built_modules='lkrg.ko'
diff --git a/testing/lkrg/APKBUILD b/testing/lkrg/APKBUILD
new file mode 100644
index 00000000000..f0eddaa344c
--- /dev/null
+++ b/testing/lkrg/APKBUILD
@@ -0,0 +1,39 @@
+# Contributor: Jo Coscia <jo@jcoscia.com>
+# Maintainer: Jo Coscia <jo@jcoscia.com>
+pkgname=lkrg
+pkgver=0.9.6
+pkgrel=0
+pkgdesc="Linux Kernel Runtime Guard kernel module (AKMS)"
+url="https://lkrg.org/"
+arch="x86 x86_64 aarch64 armhf armv7"
+license="GPL-2.0-only"
+depends="akms"
+install="$pkgname.post-deinstall"
+subpackages="$pkgname-doc"
+source="https://lkrg.org/download/lkrg-$pkgver.tar.gz
+ AKMBUILD"
+options="!check" # no test suite
+
+package() {
+ install -Dm644 "$srcdir"/AKMBUILD "$pkgdir"/usr/src/lkrg/AKMBUILD
+ install -Dm644 "$builddir"/Makefile "$pkgdir"/usr/src/lkrg/Makefile
+ install -Dm644 "$builddir"/scripts/bootup/lkrg.conf "$pkgdir"/etc/sysctl.d/lkrg.conf
+ install -Dm644 "$builddir"/LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+ cp -Rp "$builddir"/src "$pkgdir"/usr/src/lkrg/src
+ chmod -R u=rwX,go=rX-w "$pkgdir"/usr/src/lkrg/
+}
+
+doc() {
+ pkgdesc="Documentation for $pkgname"
+ mkdir -p "$subpkgdir"/usr/share/doc/"$pkgname"
+ mv "$builddir"/CHANGES "$subpkgdir"/usr/share/doc/lkrg/
+ mv "$builddir"/CONCEPTS "$subpkgdir"/usr/share/doc/lkrg/
+ mv "$builddir"/PATREONS "$subpkgdir"/usr/share/doc/lkrg/
+ mv "$builddir"/PERFORMANCE "$subpkgdir"/usr/share/doc/lkrg/
+ mv "$builddir"/README "$subpkgdir"/usr/share/doc/lkrg/
+ chmod -R u=rwX,go=rX-w "$subpkgdir"/usr/share/doc/lkrg/
+}
+
+sha512sums="
+08c109ffbe7f15ff60ed1958640f43194b96b16c75bd91c1e209e2f93a2b97f60f0b9ed00ccc13effbbf06092fc3c432dfb55f94b9e181a6cd2b30a1ea8ee653 lkrg-0.9.6.tar.gz
+e9174654cac18a8cbb4dc8e46a93bd19620ab355bf50563660980a525e87eb1d72b9fdece9fac5749c8ffad7ea38940da8e5bd950439695e2f50d82eebd18b5c AKMBUILD"
diff --git a/testing/lkrg/lkrg.post-deinstall b/testing/lkrg/lkrg.post-deinstall
new file mode 100644
index 00000000000..3abf364e19f
--- /dev/null
+++ b/testing/lkrg/lkrg.post-deinstall
@@ -0,0 +1,2 @@
+#!/bin/sh
+/usr/sbin/akms uninstall lkrg
diff --git a/testing/llhttp/APKBUILD b/testing/llhttp/APKBUILD
deleted file mode 100644
index 779176bb265..00000000000
--- a/testing/llhttp/APKBUILD
+++ /dev/null
@@ -1,42 +0,0 @@
-# Contributor: Michał Polański <michal@polanski.me>
-# Maintainer: Michał Polański <michal@polanski.me>
-pkgname=llhttp
-pkgver=6.0.6
-pkgrel=0
-pkgdesc="Port of http_parser to llparse"
-url="https://llhttp.org/"
-license="MIT"
-arch="all !riscv64" # limited by nodejs/npm
-makedepends="cmake clang npm"
-subpackages="$pkgname-dev $pkgname-doc"
-source="https://github.com/nodejs/llhttp/archive/v$pkgver/llhttp-$pkgver.tar.gz
- soname.patch
- "
-
-prepare() {
- default_prepare
- npm ci
-}
-
-build() {
- make release
- cmake -S release -B releasebuild \
- -DCMAKE_BUILD_TYPE=MinSizeRel \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DBUILD_SHARED_LIBS=ON
- cmake --build releasebuild
-}
-
-check() {
- npm test
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install releasebuild
- install -Dm644 LICENSE-MIT "$pkgdir"/usr/share/doc/$pkgname/LICENSE
-}
-
-sha512sums="
-6d621aafcf8b0fcddfb8ceb04b69caa4c79f4b955c9548ee8616290a538fcbdd3b2f1f1d35c6609e03d49de01db2b771a60e38fd7f277dd89b5f1a0abc0c31ae llhttp-6.0.6.tar.gz
-17bb4f27f4e09cda3909451f1825bbba59148b24ffc542f6bb691ce0b0167e50a91c62ed3ead97e6c7b18a67e97bfefca1939d2431e40f83a0a88090f63b1778 soname.patch
-"
diff --git a/testing/llhttp/soname.patch b/testing/llhttp/soname.patch
deleted file mode 100644
index 5126e96526c..00000000000
--- a/testing/llhttp/soname.patch
+++ /dev/null
@@ -1,207 +0,0 @@
-Patch-Source: https://github.com/nodejs/llhttp/pull/125
-
-From 56a26d66afc9a918e68c96a7d3eeb807384ecd27 Mon Sep 17 00:00:00 2001
-From: Jack Liar <15205739+JackLiar@users.noreply.github.com>
-Date: Wed, 7 Jul 2021 20:10:14 +0800
-Subject: [PATCH] enhance CMakeLists.txt
-
----
- CMakeLists.txt | 116 +++++++++++++++++++++++++++++++++++++------------
- 1 file changed, 89 insertions(+), 27 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 41d2000..c234222 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -1,53 +1,115 @@
- cmake_minimum_required(VERSION 3.5.1)
- cmake_policy(SET CMP0069 NEW)
-
--project(llhttp C)
-+project(llhttp VERSION 6.0.5)
-+include(GNUInstallDirs)
-
- set(CMAKE_C_STANDARD 99)
-
-+# By default build in relwithdebinfo type, supports both lowercase and uppercase
-+if(NOT CMAKE_CONFIGURATION_TYPES)
-+ set(allowableBuileTypes DEBUG RELEASE RELWITHDEBINFO MINSIZEREL)
-+ set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS "${allowableBuileTypes}")
-+ if(NOT CMAKE_BUILD_TYPE)
-+ set(CMAKE_BUILD_TYPE RELWITHDEBINFO CACHE STRING "" FORCE)
-+ else()
-+ string(TOUPPER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE)
-+ if(NOT CMAKE_BUILD_TYPE IN_LIST allowableBuileTypes)
-+ message(FATEL_ERROR "Invalid build type: ${CMAKE_BUILD_TYPE}")
-+ endif()
-+ endif()
-+endif()
-+
- #
- # Options
- #
- # Generic option
--option(BUILD_SHARED_LIBS "Build shared libraries (.dll/.so) instead of static ones (.lib/.a)" OFF)
-+option(BUILD_SHARED_LIBS "Build shared libraries (.dll/.so)" ON)
-+option(BUILD_STATIC_LIBS "Build static libraries (.lib/.a)" OFF)
-
- # Source code
- set(LLHTTP_SOURCES
-- src/llhttp.c
-- src/http.c
-- src/api.c
-+ ${CMAKE_CURRENT_SOURCE_DIR}/src/llhttp.c
-+ ${CMAKE_CURRENT_SOURCE_DIR}/src/http.c
-+ ${CMAKE_CURRENT_SOURCE_DIR}/src/api.c
- )
-
- set(LLHTTP_HEADERS
-- include/llhttp.h
-+ ${CMAKE_CURRENT_SOURCE_DIR}/include/llhttp.h
- )
-
--add_library(llhttp)
--add_library(llhttp::llhttp ALIAS llhttp)
-+configure_file(
-+ ${CMAKE_CURRENT_SOURCE_DIR}/libllhttp.pc.in
-+ ${CMAKE_CURRENT_SOURCE_DIR}/libllhttp.pc
-+ @ONLY
-+)
-
--target_sources(llhttp PRIVATE ${LLHTTP_SOURCES} ${LLHTTP_HEADERS})
-+function(config_library target)
-+ target_sources(${target} PRIVATE ${LLHTTP_SOURCES} ${LLHTTP_HEADERS})
-
--# On windows with Visual Studio, add a debug postfix so that release
--# and debug libraries can coexist.
--if(MSVC)
-- set(CMAKE_DEBUG_POSTFIX "d")
--endif()
-+ target_include_directories(${target} PRIVATE
-+ ${CMAKE_CURRENT_SOURCE_DIR}/include
-+ )
-
--target_include_directories(llhttp PUBLIC
-- $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
-- $<INSTALL_INTERFACE:include>
--)
-+ set_target_properties(${target} PROPERTIES
-+ OUTPUT_NAME llhttp
-+ VERSION ${PROJECT_VERSION}
-+ SOVERSION ${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}
-+ PUBLIC_HEADER ${LLHTTP_HEADERS}
-+ )
-
--set_target_properties(llhttp PROPERTIES PUBLIC_HEADER ${LLHTTP_HEADERS})
-+ install(TARGETS ${target}
-+ EXPORT llhttp
-+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
-+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
-+ PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
-+ )
-
--install(TARGETS llhttp
-- EXPORT llhttp
-- ARCHIVE DESTINATION lib
-- PUBLIC_HEADER DESTINATION include/
--)
-+ install(FILES
-+ ${CMAKE_CURRENT_SOURCE_DIR}/libllhttp.pc
-+ DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig
-+ )
-
--# This is required to work with FetchContent
--install(EXPORT llhttp
-+ # This is required to work with FetchContent
-+ install(EXPORT llhttp
- FILE llhttp-config.cmake
- NAMESPACE llhttp::
-- DESTINATION lib/cmake/llhttp)
-+ DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/llhttp)
-+endfunction(config_library target)
-+
-+if(BUILD_SHARED_LIBS)
-+ add_library(llhttp_shared SHARED
-+ ${llhttp_src}
-+ )
-+ add_library(llhttp::llhttp ALIAS llhttp_shared)
-+ config_library(llhttp_shared)
-+endif()
-+
-+if(BUILD_STATIC_LIBS)
-+ add_library(llhttp_static STATIC
-+ ${llhttp_src}
-+ )
-+ if(BUILD_SHARED_LIBS)
-+ add_library(llhttp::llhttp ALIAS llhttp_shared)
-+ else()
-+ add_library(llhttp::llhttp ALIAS llhttp_static)
-+ endif()
-+ config_library(llhttp_static)
-+endif()
-+
-+# On windows with Visual Studio, add a debug postfix so that release
-+# and debug libraries can coexist.
-+if(MSVC)
-+ set(CMAKE_DEBUG_POSTFIX "d")
-+endif()
-+
-+# Print project configure summary
-+message(STATUS "")
-+message(STATUS "")
-+message(STATUS "Project configure summary:")
-+message(STATUS "")
-+message(STATUS " CMake build type .................: ${CMAKE_BUILD_TYPE}")
-+message(STATUS " Install prefix ...................: ${CMAKE_INSTALL_PREFIX}")
-+message(STATUS " Build shared library .............: ${BUILD_SHARED_LIBS}")
-+message(STATUS " Build static library .............: ${BUILD_STATIC_LIBS}")
-+message(STATUS "")
-From d576df23f2c087da536cec1f380e80db69501d1e Mon Sep 17 00:00:00 2001
-From: Jack Liar <15205739+JackLiar@users.noreply.github.com>
-Date: Wed, 7 Jul 2021 21:03:17 +0800
-Subject: [PATCH] add missing libllhttp.pc.in
-
----
- libllhttp.pc.in | 10 ++++++++++
- 1 file changed, 10 insertions(+)
- create mode 100644 libllhttp.pc.in
-
-diff --git a/libllhttp.pc.in b/libllhttp.pc.in
-new file mode 100644
-index 0000000..67d280a
---- /dev/null
-+++ b/libllhttp.pc.in
-@@ -0,0 +1,10 @@
-+prefix=@CMAKE_INSTALL_PREFIX@
-+exec_prefix=@CMAKE_INSTALL_PREFIX@
-+libdir=@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@
-+includedir=@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_INCLUDEDIR@
-+
-+Name: libllhttp
-+Description: Node.js llhttp Library
-+Version: @PROJECT_VERSION@
-+Libs: -L${libdir} -lllhttp
-+Cflags: -I${includedir}
-
-Patch-Source: https://github.com/nodejs/llhttp/pull/141
-
-From dcaea9bd4e9389b930dca61cb5e6b16be1278665 Mon Sep 17 00:00:00 2001
-From: "Benjamin A. Beasley" <code@musicinmybrain.net>
-Date: Tue, 14 Dec 2021 09:41:35 -0500
-Subject: [PATCH] Also copy libllhttp.pc.in to release directory
-
----
- Makefile | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/Makefile b/Makefile
-index 283c3d3..47f18e1 100644
---- a/Makefile
-+++ b/Makefile
-@@ -51,6 +51,7 @@ release: generate
- cp -rf src/llhttp.gyp release/
- cp -rf src/common.gypi release/
- cp -rf CMakeLists.txt release/
-+ cp -rf libllhttp.pc.in release/
- cp -rf README.md release/
- cp -rf LICENSE-MIT release/
diff --git a/testing/llmnrd/APKBUILD b/testing/llmnrd/APKBUILD
index 5bbf588d434..5ba2ee26f49 100644
--- a/testing/llmnrd/APKBUILD
+++ b/testing/llmnrd/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Nathan Caldwell <saintdev@gmail.com>
pkgname=llmnrd
pkgver=0.7
-pkgrel=0
+pkgrel=1
pkgdesc="Link-Local Multicast Resolution (LLMNR) Daemon for Linux"
url="https://github.com/tklauser/llmnrd"
arch="all"
diff --git a/testing/lmms/APKBUILD b/testing/lmms/APKBUILD
deleted file mode 100644
index dcfd2eaf9ba..00000000000
--- a/testing/lmms/APKBUILD
+++ /dev/null
@@ -1,49 +0,0 @@
-# Contributor: David Demelier <markand@malikania.fr>
-# Maintainer: David Demelier <markand@malikania.fr>
-pkgname=lmms
-pkgver=1.2.2
-pkgrel=1
-pkgdesc="Cross-platform music production software"
-url="https://lmms.io/"
-arch="all !armhf" # build failure
-license="GPL-2.0-only"
-makedepends="
- alsa-lib-dev
- cmake
- fftw-dev
- jack-dev
- libsamplerate-dev
- libsndfile-dev
- pulseaudio-dev
- qt5-qtbase-dev
- qt5-qttools-dev
- qt5-qtx11extras-dev
- sdl2-dev
- xcb-util-dev
- xcb-util-keysyms-dev
-"
-subpackages="$pkgname-dev $pkgname-doc"
-source="https://github.com/LMMS/lmms/releases/download/v$pkgver/lmms_$pkgver.tar.xz"
-options="!check" # No tests
-builddir="$srcdir/$pkgname"
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- -DCMAKE_BUILD_TYPE=None \
- -DWANT_QT5=On \
- -DWANT_PULSEAUDIO=On \
- $CMAKE_CROSSOPTS .
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --build build --target install
-}
-
-sha512sums="df74d9e938f1c3807e9941b11db4ccfe9450e23b723c82774de15b7666ac39f1bfdd8519231e28849f994628190ecc92fa05d55bbc0b50a4421f2d183e729028 lmms_1.2.2.tar.xz"
diff --git a/testing/lockrun/APKBUILD b/testing/lockrun/APKBUILD
index 4c45bc312f8..96dfdd6a96c 100644
--- a/testing/lockrun/APKBUILD
+++ b/testing/lockrun/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Mikhail Snetkov <msnetkov@navikey.ru>
pkgname=lockrun
pkgver=1.1.3
-pkgrel=0
+pkgrel=1
pkgdesc="Run cron job with overrun protection"
url="http://unixwiz.net/tools/lockrun.html"
arch="all"
diff --git a/testing/log4cpp/APKBUILD b/testing/log4cpp/APKBUILD
index 86af987e0b1..5d440a99a21 100644
--- a/testing/log4cpp/APKBUILD
+++ b/testing/log4cpp/APKBUILD
@@ -1,10 +1,10 @@
# Contributor: Hidde van der Heide <hvanderheide@nexuz.net>
# Maintainer: Roberto Oliveira <robertoguimaraes8@gmail.com>
pkgname=log4cpp
-pkgver=1.1.3
-pkgrel=2
+pkgver=1.1.4
+pkgrel=1
pkgdesc="Log library for C++"
-url="http://log4cpp.sourceforge.net/"
+url="https://log4cpp.sourceforge.net/"
arch="all"
license="LGPL-2.1-or-later"
subpackages="$pkgname-dev"
@@ -19,7 +19,6 @@ prepare() {
}
build() {
- cd "$builddir"
./configure \
--prefix=/usr \
--sysconfdir=/etc \
@@ -33,13 +32,13 @@ build() {
}
check() {
- cd "$builddir"
make check
}
package() {
- cd "$builddir"
make DESTDIR="$pkgdir" install
}
-sha512sums="88e5e10bce8d7d6421c3dcf14aa25385159c4ae52becdc1f3666ab86e1ad3f633786d82afe398c517d4faaa57b3e7b7c0b524361d81c6b9040dbded5cecc19de log4cpp-1.1.3.tar.gz"
+sha512sums="
+0cdbd46ccd048d70bea3c35d22080dc5dd21fc3b9c415fe464847e60775954f57e9c8344506f0f94f16e90e8bdaa9cc6d84d3aa65191501e52ee8dfc639f0398 log4cpp-1.1.4.tar.gz
+"
diff --git a/testing/log4cxx/APKBUILD b/testing/log4cxx/APKBUILD
index 9bb4b29bed1..31860573a6e 100644
--- a/testing/log4cxx/APKBUILD
+++ b/testing/log4cxx/APKBUILD
@@ -1,21 +1,22 @@
# Contributor: Russ Webber <russ@rw.id.au>
# Maintainer: Russ Webber <russ@rw.id.au>
pkgname=log4cxx
-pkgver=0.12.1
-pkgrel=0
+pkgver=1.1.0
+pkgrel=1
pkgdesc="C++ port of the Log4j logging framework"
url="http://logging.apache.org/log4cxx"
license="Apache-2.0"
-options="!check" # testsuite in 0.10.0 does not work on alpine
+options="!check" # testsuite in 1.1.0 does not work on alpine
subpackages="$pkgname-dev"
arch="all"
-depends_dev="$pkgname-static"
makedepends="cmake zip libxml2-dev apr-util-dev samurai"
-source="https://archive.apache.org/dist/logging/log4cxx/$pkgver/apache-log4cxx-$pkgver.tar.gz
- fix-pkgconfig-install-dir.patch
- "
+source="https://archive.apache.org/dist/logging/log4cxx/$pkgver/apache-log4cxx-$pkgver.tar.gz"
builddir="$srcdir/apache-$pkgname-$pkgver"
+# secfixes:
+# 1.1.0-r0:
+# - CVE-2023-31038
+
build() {
if [ "$CBUILD" != "$CHOST" ]; then
CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
@@ -26,15 +27,13 @@ build() {
-DCMAKE_INSTALL_LIBDIR=lib \
-DCMAKE_BUILD_TYPE=MinSizeRel \
-DBUILD_SHARED_LIBS=ON \
- -DCMAKE_VERBOSE_MAKEFILE=ON \
-DCMAKE_INSTALL_SYSCONFDIR=/etc \
- -DCMAKE_POSITION_INDEPENDENT_CODE=ON \
- "$CMAKE_CROSSOPTS"
+ $CMAKE_CROSSOPTS
cmake --build build
}
check() {
- CTEST_OUTPUT_ON_FAILURE=TRUE ctest --test-dir build
+ CTEST_OUTPUT_ON_FAILURE=TRUE ctest --test-dir build -E sizebasedrollingtest
}
package() {
@@ -42,6 +41,5 @@ package() {
}
sha512sums="
-807058734cebf7c92e99484313becbc6be63e48bd930889c733318bb78dfec498b66aaa12255ed30879abb005b32e2b965f9dd87ec50d0421ca067f3f66280d9 apache-log4cxx-0.12.1.tar.gz
-a77f5a03c388d3cf21f568424084148725b746b51fb9cebc5cf318abc2267bac31d6d55315d10537a74c541dc26f8ea226a573e41e891fe660df96877c330e36 fix-pkgconfig-install-dir.patch
+66a66eab933a6afd0779e3f73f65afa4fb82481208b591fd7c7c86ded805f50abcd9cdf954bdb49e1e7f5198e6c1c4fff8a7e180ff5fff9491f1946e9ba6fe2b apache-log4cxx-1.1.0.tar.gz
"
diff --git a/testing/log4cxx/fix-pkgconfig-install-dir.patch b/testing/log4cxx/fix-pkgconfig-install-dir.patch
deleted file mode 100644
index 6ef6faef7c1..00000000000
--- a/testing/log4cxx/fix-pkgconfig-install-dir.patch
+++ /dev/null
@@ -1,68 +0,0 @@
-Patch-Source: https://github.com/apache/logging-log4cxx/commit/67baf993b50cdfb90ece06c76e4c70ab04ab6ad8
-From 67baf993b50cdfb90ece06c76e4c70ab04ab6ad8 Mon Sep 17 00:00:00 2001
-From: Tobias Frost <coldtobi@users.noreply.github.com>
-Date: Sat, 11 Dec 2021 16:31:33 +0100
-Subject: [PATCH] LOGCXX-536 Use CMAKE_INSTALL_LIBDIR instead
- CMAKE_INSTALL_DATAROOTDIR for cmake/pkgconfig target (#77)
-
-Co-authored-by: Tobias Frost <tobi@debian.org>
----
- CMakeLists.txt | 12 ++++++------
- 1 file changed, 6 insertions(+), 6 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index ecd3f91a..ae79a728 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -97,7 +97,7 @@ if(UNIX)
- )
-
- install(FILES "${CMAKE_CURRENT_BINARY_DIR}/liblog4cxx.pc"
-- DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/pkgconfig)
-+ DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
-
- if(LOG4CXX_QT_SUPPORT)
- set(prefix "${CMAKE_INSTALL_PREFIX}")
-@@ -110,7 +110,7 @@ if(UNIX)
- )
-
- install(FILES "${CMAKE_CURRENT_BINARY_DIR}/liblog4cxx-qt.pc"
-- DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/pkgconfig)
-+ DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
- endif(LOG4CXX_QT_SUPPORT)
- endif(UNIX)
-
-@@ -119,7 +119,7 @@ endif(UNIX)
- # target_link_libraries( myApplication PRIVATE log4cxx)
- install(EXPORT log4cxxTargets
- FILE log4cxxConfig.cmake
-- DESTINATION share/cmake/log4cxx
-+ DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/log4cxx
- )
- # Support for find_package(log4cxx 0.11) in consuming CMake projects
- include(CMakePackageConfigHelpers)
-@@ -128,13 +128,13 @@ write_basic_package_version_file("${CMAKE_CURRENT_BINARY_DIR}/log4cxxConfigVersi
- COMPATIBILITY SameMinorVersion
- )
- install(FILES "${CMAKE_CURRENT_BINARY_DIR}/log4cxxConfigVersion.cmake"
-- DESTINATION share/cmake/log4cxx
-+ DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/log4cxx
- )
-
- if(LOG4CXX_QT_SUPPORT)
- install(EXPORT log4cxx-qtTargets
- FILE log4cxx-qtConfig.cmake
-- DESTINATION share/cmake/log4cxx
-+ DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/log4cxx
- )
- # Support for find_package(log4cxx 0.11) in consuming CMake projects
- include(CMakePackageConfigHelpers)
-@@ -143,7 +143,7 @@ if(LOG4CXX_QT_SUPPORT)
- COMPATIBILITY SameMinorVersion
- )
- install(FILES "${CMAKE_CURRENT_BINARY_DIR}/log4cxx-qtConfigVersion.cmake"
-- DESTINATION share/cmake/log4cxx
-+ DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/log4cxx
- )
- endif(LOG4CXX_QT_SUPPORT)
-
diff --git a/testing/logc-libs/APKBUILD b/testing/logc-libs/APKBUILD
new file mode 100644
index 00000000000..4b87b095a0b
--- /dev/null
+++ b/testing/logc-libs/APKBUILD
@@ -0,0 +1,55 @@
+# Contributor: Jakub Jirutka <jakub@jirutka.cz>
+# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
+pkgname=logc-libs
+pkgver=0.1.0
+pkgrel=0
+pkgdesc="A set of libraries adding LogC support to third-party libraries"
+url="https://gitlab.nic.cz/turris/logc-libs"
+# s390x: blocked by czmq
+arch="all !s390x"
+license="MIT"
+makedepends="
+ autoconf-archive
+ automake
+ czmq-dev
+ libevent-dev
+ libtool
+ logc-dev
+ "
+subpackages="
+ $pkgname-dev
+ logc-czmq:_lib
+ logc-libevent:_lib
+ "
+source="https://gitlab.nic.cz/turris/logc-libs/-/archive/v$pkgver/logc-libs-v$pkgver.tar.bz2"
+builddir="$srcdir/$pkgname-v$pkgver"
+options="!check" # tests are not supported on musl
+
+prepare() {
+ default_prepare
+ ./bootstrap
+}
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --with-czmq \
+ --with-event
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+_lib() {
+ pkgdesc="LogC extension for ${subpkgname#logc-}"
+
+ amove usr/lib/*${subpkgname#logc-}_logc.so*
+}
+
+sha512sums="
+21b14bcaf516b63215a3860816f25c65477e8954a807596ab1e3dbb48ad86a051abec0f03ee0fcc8351e7485f8568d6efbb1d9ef69e0301f7cbef6374d7cefe9 logc-libs-v0.1.0.tar.bz2
+"
diff --git a/testing/logc/APKBUILD b/testing/logc/APKBUILD
new file mode 100644
index 00000000000..33188940e5c
--- /dev/null
+++ b/testing/logc/APKBUILD
@@ -0,0 +1,54 @@
+# Contributor: Jakub Jirutka <jakub@jirutka.cz>
+# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
+pkgname=logc
+pkgver=0.5.0
+pkgrel=0
+pkgdesc="Logging library for C"
+url="https://gitlab.nic.cz/turris/logc"
+arch="all"
+license="MIT"
+makedepends="
+ argp-standalone
+ gperf
+ libconfig-dev
+ meson
+ "
+subpackages="
+ $pkgname-dev
+ $pkgname-argp
+ $pkgname-config:_config
+ "
+source="https://gitlab.nic.cz/turris/logc/-/archive/v$pkgver/logc-v$pkgver.tar.bz2"
+builddir="$srcdir/$pkgname-v$pkgver"
+options="!check" # tests are not supported on musl
+
+build() {
+ abuild-meson \
+ -Dlibargp=enabled \
+ -Dlibconfig=enabled \
+ -Dtests=disabled \
+ . output
+ meson compile -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+argp() {
+ pkgdesc="$pkgdesc - argp integration"
+ depends="$pkgname=$pkgver-r$pkgrel"
+
+ amove usr/lib/liblogc_argp.so*
+}
+
+_config() {
+ pkgdesc="$pkgdesc - libconfig integration"
+ depends="$pkgname=$pkgver-r$pkgrel"
+
+ amove usr/lib/liblogc_config.so*
+}
+
+sha512sums="
+425dad537f891891a314b7b0b95f14987b0adffb5bbe9fd511cfe83ddc965b1eace9e71670463ed4a87444ba56bceeb8b61d07f07cf89b8674f6efb38a58faf2 logc-v0.5.0.tar.bz2
+"
diff --git a/testing/logisim-evolution/APKBUILD b/testing/logisim-evolution/APKBUILD
new file mode 100644
index 00000000000..fab3fce79dc
--- /dev/null
+++ b/testing/logisim-evolution/APKBUILD
@@ -0,0 +1,45 @@
+# Maintainer: Cowington Post <cowingtonpost@gmail.com>
+pkgname=logisim-evolution
+pkgver=3.8.0
+pkgrel=0
+pkgdesc="Digital logic design tool and simulator"
+url="https://github.com/logisim-evolution/logisim-evolution"
+arch="x86_64 aarch64 s390x" # limited by java
+license="GPL-3.0-or-later"
+depends="openjdk17-jre hicolor-icon-theme"
+makedepends="openjdk17-jdk"
+source="https://github.com/logisim-evolution/logisim-evolution/archive/v$pkgver/logisim-evolution-$pkgver.tar.gz
+logisim-evolution
+Desktop-file.patch"
+options="net !check"
+
+build() {
+ export GRADLE_USER_HOME="$srcdir"/.gradle
+ ./gradlew --parallel shadowJar
+}
+
+package() {
+ install -Dm644 build/libs/logisim-evolution-"$pkgver"-all.jar \
+ "$pkgdir"/usr/share/logisim-evolution/logisim-evolution.jar
+
+ install -Dm644 support/Flatpak/com.github.reds.LogisimEvolution.xml \
+ "$pkgdir"/usr/share/mime/packages/logisim-evolution.xml
+
+ install -Dm644 support/Flatpak/com.github.reds.LogisimEvolution.desktop \
+ "$pkgdir"/usr/share/applications/logisim-evolution.desktop
+
+ install -Dm755 "$srcdir"/logisim-evolution "$pkgdir"/usr/bin/logisim-evolution
+
+ local size
+ for size in 16 32 48 128 256; do
+ install -Dm644 \
+ src/main/resources/resources/logisim/img/logisim-icon-"$size".png \
+ "$pkgdir"/usr/share/icons/hicolor/"$size"x"$size"/apps/logisim-evolution.png
+ done
+}
+
+sha512sums="
+3f1b78fbd3cfe06c0d8fbe224481bd4134bc8583bdfd7b3009386281ede32526a847c23d02f1709707682a276dd8106cd49c120f774fb00c5d72ba3ccbb46f21 logisim-evolution-3.8.0.tar.gz
+dc93426421ace75f6479fbfb49a5d54ba7c7b64a49be3d5336451639f26a559d9b3f1a93136863d921760d53646e6fbca7be1c3a6580b8132245c4980115e5ca logisim-evolution
+34a4331673bffd6db0f1a1c17a4879c5a4b48dc099b9bae9fb5b190a3541fe1e6c8d6a7bdf3f9d00691e3e002051bc509282d89a95847ff1f90f755986a797a3 Desktop-file.patch
+"
diff --git a/testing/logisim-evolution/Desktop-file.patch b/testing/logisim-evolution/Desktop-file.patch
new file mode 100644
index 00000000000..018d8ade9bc
--- /dev/null
+++ b/testing/logisim-evolution/Desktop-file.patch
@@ -0,0 +1,13 @@
+diff --git a/support/Flatpak/com.github.reds.LogisimEvolution.desktop b/support/Flatpak/com.github.reds.LogisimEvolution.desktop
+index 60a3521ac..312e80f35 100644
+--- a/support/Flatpak/com.github.reds.LogisimEvolution.desktop
++++ b/support/Flatpak/com.github.reds.LogisimEvolution.desktop
+@@ -2,7 +2,7 @@
+ Name=Logisim Evolution
+ GenericName=Logisim Logic Circuit Simulator
+ Comment=Digital Logic Circuit Simulator
+-Exec=LogisimEvolution.sh
++Exec=logisim-evolution
+ Icon=com.github.reds.LogisimEvolution
+ Terminal=false
+ Type=Application
diff --git a/testing/logisim-evolution/logisim-evolution b/testing/logisim-evolution/logisim-evolution
new file mode 100755
index 00000000000..c795466c1de
--- /dev/null
+++ b/testing/logisim-evolution/logisim-evolution
@@ -0,0 +1,2 @@
+#!/bin/sh
+exec /usr/bin/java -jar /usr/share/logisim-evolution/logisim-evolution.jar "$@"
diff --git a/testing/logstash/APKBUILD b/testing/logstash/APKBUILD
deleted file mode 100644
index 3e378a809a0..00000000000
--- a/testing/logstash/APKBUILD
+++ /dev/null
@@ -1,85 +0,0 @@
-# Contributor: Steeve Chailloux <steeve@chaahk.com>
-# Maintainer: Stuart Cardall <developer@it-offshore.co.uk>
-pkgname=logstash
-pkgver=7.5.2
-pkgrel=1
-pkgdesc="A flexible, open source, data collection, parsing and enrichment pipeline"
-url="http://logstash.net"
-# ppc64le and riscv64 blocked by java-jffi-native
-arch="noarch !ppc64le !riscv64"
-license="Apache-2.0"
-depends="java-jre-headless java-jffi-native libc6-compat bash"
-makedepends="$depends_dev"
-install="$pkgname.pre-install"
-pkgusers="logstash"
-subpackages="$pkgname-doc $pkgname-openrc"
-options="!strip !check"
-source="https://artifacts.elastic.co/downloads/logstash/logstash-$pkgver.tar.gz
- $pkgname.confd
- $pkgname.initd
- $pkgname.conf
- $pkgname.profile
- "
-
-package() {
- local datadir=/var/lib/logstash logdir=$datadir/logs confdir=/etc/logstash
- local homedir=/usr/share/logstash heapsize=150m
-
- # create the necessary dirs
- install -dm755 "$pkgdir/$homedir"
- install -dm755 "$pkgdir/$logdir"
- install -dm755 "$pkgdir/$datadir"
- install -dm755 "$pkgdir/$confdir"
- install -dm755 "$pkgdir/$confdir/conf.d"
-
- # install scripts
- install -m755 -D "$srcdir"/$pkgname.initd \
- "$pkgdir"/etc/init.d/$pkgname
- install -m644 -D "$srcdir"/$pkgname.confd \
- "$pkgdir"/etc/conf.d/$pkgname
- install -m644 -D "$srcdir"/$pkgname.conf \
- "$pkgdir/$confdir"/conf.d/
- install -m644 -D "$srcdir"/$pkgname.profile \
- "$pkgdir"/etc/profile.d/logstash.sh
-
- # copy files
- cp -r * "$pkgdir/$homedir/"
- cp config/* "$pkgdir/$confdir/"
-
- # move docs
- mkdir -p "$pkgdir"/usr/share/doc/logstash && cd "$pkgdir"
- find usr/share/logstash -maxdepth 1 -type f ! -name Gemfile* \
- -name "[[:upper:]]*" -exec mv {} usr/share/doc/logstash/ \;
-
- # remove files for windows
- find usr/share/logstash -type f -name *.bat -exec rm -f {} \;
- find usr/share/logstash -type f -name *win32* -exec rm -f {} \;
- find usr/share/logstash -type f -name *Win32* -exec rm -f {} \;
-
- # remove bundled libjffi (we use Alpine's java-jffi-native)
- rm -rf "$pkgdir"/usr/share/logstash/vendor/jruby/lib/jni
-
- # set default paths
- sed -i \
- -e "s|# path.config:|path.config: $confdir/conf.d|" \
- -e "s|# path.logs:|path.logs: $logdir|" \
- -e "s|# path.data:|path.data: $datadir|" \
- "$pkgdir/$confdir"/logstash.yml
-
- # symlink so manual commands without -path.settings works
- rmdir "$pkgdir/$homedir"/data
- ln -s "$datadir" "$pkgdir/$homedir"/data
- ln -s "$logdir" "$pkgdir/$homedir"/logs
-
- # reduce heap sizes
- sed -i \
- -e "s|^-Xms.*|-Xms$heapsize|" \
- -e "s|^-Xmx.*|-Xmx$heapsize|" \
- "$pkgdir/$confdir"/jvm.options
-}
-
-sha512sums="955e546372466fb557eb15b9f466decef24c520c7ff16afd5432d5a8d1dd1f061f11fb9178678bed74b3c16a2d5ee6cd72fc8e4d757c8af36747dc25522c443e logstash-7.5.2.tar.gz
-94b18da3f0ef40f68118b27654563e7aa6dd4a3b90f0d8ad61a8be579d4be62c2bf1b192a32ee6140b81224343eeb442687539f6def1e725787b8cb96c0c70d1 logstash.confd
-828684ea0b9faa53ac51f7fb22bf73d862dc058d605f27958db6a8efbd10f5463a0837fa88b62a3964582c72fdd7ece434057a540b0924eae1fae17b9d5887b4 logstash.initd
-21609c8f44b31a5f298573be4b5c0fdcdc165e603a95c3626570fb6dd44dad114a74ee3f10fbd518f72b537a3d6bdcdbad09798c4bead0ee16f2a3b8e2b00ed3 logstash.conf
-180349d57a6a48be9052649425a945a07cf5e194d0f32f83567b460936729a70244d73c3495f8a318a3b98ac99a2848cadfbee5bd017da803c68c5140b6cd29d logstash.profile"
diff --git a/testing/logstash/logstash.conf b/testing/logstash/logstash.conf
deleted file mode 100644
index ddd5ada667d..00000000000
--- a/testing/logstash/logstash.conf
+++ /dev/null
@@ -1,16 +0,0 @@
-# https://www.elastic.co/guide/en/logstash/current/configuration.html
-# https://www.elastic.co/guide/en/logstash/current/input-plugins.html
-# https://www.elastic.co/guide/en/logstash/current/filter-plugins.html
-# https://www.elastic.co/guide/en/logstash/current/output-plugins.html
-
-input {
- file {
- type => "syslog"
- path => ["/var/log/**/*.log"]
- }
-}
-
-output {
- stdout { codec => rubydebug }
-}
-
diff --git a/testing/logstash/logstash.confd b/testing/logstash/logstash.confd
deleted file mode 100644
index 67edcd26500..00000000000
--- a/testing/logstash/logstash.confd
+++ /dev/null
@@ -1,20 +0,0 @@
-# Config file for /etc/init.d/logstash
-#
-# see also $LS_CONF/jvm.options
-#
-LS_HOME=/usr/share/logstash
-LS_CONF=/etc/logstash
-LS_DATA=/var/lib/logstash
-LS_LOGS=${LS_DATA}/logs
-
-# User to run Logstash as.
-LS_USER=logstash
-
-# Group to run Logstash as. Defaults to primary group of $LS_USER.
-# LS_GROUP=
-
-# stdout & stderr fill logs rapidly
-#LS_REDIR="1>/dev/null 2>> ${LS_LOGS}/error.log"
-
-# add pipeline config under conf.d
-LS_OPTS="-f $LS_CONF/conf.d/*.conf -l $LS_LOGS $LS_REDIR"
diff --git a/testing/logstash/logstash.initd b/testing/logstash/logstash.initd
deleted file mode 100644
index b022fd387bf..00000000000
--- a/testing/logstash/logstash.initd
+++ /dev/null
@@ -1,43 +0,0 @@
-#!/sbin/openrc-run
-supervisor=supervise-daemon
-
-description="logs, events, or other data transporter"
-
-: ${LS_USER:="logstash"}
-: ${LS_GROUP:="$(id -gn $LS_USER)"}
-
-nice="19"
-pidfile="/run/$RC_SVCNAME.sd.pid"
-supervise_daemon_args="-u $LS_USER -g $LS_GROUP -p $pidfile -N $nice"
-command=/usr/share/logstash/bin/logstash
-command_args="--path.settings ${LS_CONF} ${LS_OPTS}"
-max_fd="16384"
-
-depends() {
- use net
-}
-
-in_contr() {
- grep "container=" /proc/1/environ
-}
-
-start_pre() {
- local dir
-
- # Note: checkpath doesn't create intermediate directories.
- for dir in "${LS_HOME}" "${LS_DATA}" "${LS_LOGS}"; do
- mkdir -p "$(dirname "$dir")"
- done
-
- checkpath -d -o $LS_USER:$LS_GROUP -m755 "${LS_HOME}"
- checkpath -d -o $LS_USER:$LS_GROUP -m700 "${LS_DATA}"
- checkpath -d -o $LS_USER:$LS_GROUP -m755 "${LS_LOGS}"
-
- if [ -n "$max_fd" ]; then
- if [ -z "$(in_contr)" ]; then
- ulimit -n "$max_fd" && einfo "Max open filedescriptors: $max_fd"
- else
- einfo "Run 'ulimit -n $max_fd' on the container host"
- fi
- fi
-}
diff --git a/testing/logstash/logstash.pre-install b/testing/logstash/logstash.pre-install
deleted file mode 100644
index bd470b80512..00000000000
--- a/testing/logstash/logstash.pre-install
+++ /dev/null
@@ -1,6 +0,0 @@
-#!/bin/sh
-
-addgroup -S logstash 2>/dev/null
-adduser -S -D -H -h /usr/share/logstash -s /sbin/nologin -G logstash -g logstash logstash 2>/dev/null
-
-exit 0
diff --git a/testing/logstash/logstash.profile b/testing/logstash/logstash.profile
deleted file mode 100644
index fd6cc07b5a9..00000000000
--- a/testing/logstash/logstash.profile
+++ /dev/null
@@ -1,3 +0,0 @@
-#!/bin/sh
-
-export PATH=$PATH:/usr/share/logstash/bin
diff --git a/testing/logwatch/APKBUILD b/testing/logwatch/APKBUILD
index deffc929835..1d8c4164117 100644
--- a/testing/logwatch/APKBUILD
+++ b/testing/logwatch/APKBUILD
@@ -1,12 +1,12 @@
# Contributor: Valery Kartel <valery.kartel@gmail.com>
# Maintainer: Valery Kartel <valery.kartel@gmail.com>
pkgname=logwatch
-pkgver=7.5.4
+pkgver=7.10
pkgrel=0
-pkgdesc="A customizable, pluggable log-monitoring system"
+pkgdesc="Customizable, pluggable log-monitoring system"
url="https://sourceforge.net/projects/logwatch/"
arch="noarch"
-license="custom"
+license="MIT"
options="!check"
depends="perl"
subpackages="$pkgname-doc"
@@ -44,4 +44,6 @@ package() {
install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
}
-sha512sums="6e6a5e8b7ae977244ea97895e06cccde320fce3dfbd2b1c58c945fc8872325a9676c8afe122b1f7230cb6617b64813caf90ef37fc472a1b200eb0b24ea72fa9b logwatch-7.5.4.tar.gz"
+sha512sums="
+838bcc7a3b12eb31450a20195fe2ca4ab238500051bb2f50bd1775272fefa412e0a2473c0294a5495ef594fa530b00dac0dc6d18b93e124f36614686502e55cb logwatch-7.10.tar.gz
+"
diff --git a/testing/loki/APKBUILD b/testing/loki/APKBUILD
deleted file mode 100644
index 4e689eb98c0..00000000000
--- a/testing/loki/APKBUILD
+++ /dev/null
@@ -1,71 +0,0 @@
-# Contributor: Michael Pirogov <vbnet.ru@gmail.com>
-# Maintainer: Michael Pirogov <vbnet.ru@gmail.com>
-pkgname=loki
-pkgver=2.3.0
-pkgrel=4
-pkgdesc="Like Prometheus, but for logs"
-options="net"
-url="https://github.com/grafana/loki"
-license="Apache-2.0"
-arch="x86_64 aarch64 ppc64le riscv64" # limited by 64 bit
-makedepends="go bash libc-dev"
-checkdepends="tzdata"
-subpackages="$pkgname-promtail-openrc:promtail_openrc $pkgname-promtail $pkgname-openrc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/grafana/loki/archive/refs/tags/v$pkgver.tar.gz
- $pkgname.initd
- $pkgname.confd
- $pkgname-promtail.confd
- $pkgname-promtail.initd
- go-1.18-sigsegv.patch
- "
-
-export GOPATH="$srcdir"
-export GOCACHE="$srcdir"
-export GOTMPDIR="$srcdir"
-export GOFLAGS="$GOFLAGS -modcacherw -trimpath"
-export CGO_ENABLED=0
-
-build() {
- make GOMOD=readonly logcli loki promtail
-}
-
-check() {
- # not stable test for fluent-bit
- # shell check suggests to break it
- # shellcheck disable=SC2046
- TZ=UTC GOGC=10 go test -covermode=atomic -coverprofile=coverage.txt -p=4 $(go list ./... | grep -v fluent-bit)
-}
-
-promtail() {
- pkgdesc="Promtail client"
- mkdir -p "$subpkgdir"/etc/$pkgname
- cp "$builddir"/clients/cmd/promtail/promtail-local-config.yaml "$subpkgdir"/etc/$pkgname
- install -Dm0755 "$builddir"/clients/cmd/promtail/promtail -t "$subpkgdir"/usr/bin
-}
-
-promtail_openrc() {
- pkgdesc="Promtail client (Open RC init scripts)"
- install_if="openrc loki-promtail=$pkgver-r$pkgrel"
-
- install -Dm755 "$srcdir"/$pkgname-promtail.initd "$subpkgdir"/etc/init.d/$pkgname-promtail
- install -Dm644 "$srcdir"/$pkgname-promtail.confd "$subpkgdir"/etc/conf.d/$pkgname-promtail
-}
-
-package() {
- mkdir -p "$pkgdir"/etc/$pkgname
- cp "$builddir"/cmd/loki/loki-local-config.yaml "$pkgdir"/etc/$pkgname
- install -Dm0755 cmd/$pkgname/$pkgname -t "$pkgdir"/usr/bin
- install -Dm0755 cmd/logcli/logcli -t "$pkgdir"/usr/bin
-
- install -Dm644 "$srcdir"/$pkgname.confd "$pkgdir"/etc/conf.d/$pkgname
- install -Dm755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
-}
-
-sha512sums="
-7f2855d8df69c551e182d0e27e2a6fb6960fa5bc525dcc90cb2dc2428f52aeb5e2bddd0a9232e1ab70cbe60a9d5bb3349ba749dbee82fc63c6fc43e61240feed loki-2.3.0.tar.gz
-469920d90daebf142db5dc5d3f2e972f59f5f5dc86684c4dcd5924a33ac7db305561006050ad42393296977ea27f1ce1cd78f78c71de351335167b41e4631a85 loki.initd
-b4c281e191e7620ffe19d3fcc0b5669f54051a8108f0abc5b1aec2f2026452e02e3c26c3885e1e857cb6007bbc41c1f964e6d25d73bdfe170b67b63ecd9f14fd loki.confd
-f7d33f03d51c3cc5cda082e72f56ec821c60f70f42923a215652517835b66a68d7db3b246cd1a53ce0b2c003fe31f7e6cca06965ba792e92117d7e91abce829f loki-promtail.confd
-ff72431ba978880cc58914302b2ec1e48ef3d16b2a667dc82deaa3d2d890331170757dcac48ba0b145c988e70e85c240c94da335894d2c9d114fa811007f1111 loki-promtail.initd
-e0f881b3b470fa77eb242efe8c0054bf249f2099face6c2e66659351b8dd1d196e9d4a11fed59b38225e411d72b81f4f51d510335773885e30917e59a0ef786d go-1.18-sigsegv.patch
-"
diff --git a/testing/loki/go-1.18-sigsegv.patch b/testing/loki/go-1.18-sigsegv.patch
deleted file mode 100644
index 9ec8246ed87..00000000000
--- a/testing/loki/go-1.18-sigsegv.patch
+++ /dev/null
@@ -1,593 +0,0 @@
-From 34504d7f83b7ae25bf41ccca87bfb2dedc0f7ac4 Mon Sep 17 00:00:00 2001
-From: psykose <alice@ayaya.dev>
-Date: Sun, 20 Mar 2022 02:07:28 +0000
-Subject: [PATCH] vendor
-
----
- go.mod | 5 +-
- go.sum | 6 +++
- vendor/github.com/json-iterator/go/README.md | 2 -
- vendor/github.com/json-iterator/go/go.mod | 2 +-
- vendor/github.com/json-iterator/go/go.sum | 5 +-
- .../github.com/modern-go/reflect2/.travis.yml | 2 +-
- .../github.com/modern-go/reflect2/Gopkg.lock | 8 +--
- .../github.com/modern-go/reflect2/Gopkg.toml | 4 --
- vendor/github.com/modern-go/reflect2/go.mod | 3 ++
- .../modern-go/reflect2/go_above_118.go | 23 +++++++++
- .../modern-go/reflect2/go_above_17.go | 8 ---
- .../modern-go/reflect2/go_above_19.go | 3 ++
- .../modern-go/reflect2/go_below_118.go | 21 ++++++++
- .../modern-go/reflect2/go_below_17.go | 9 ----
- .../modern-go/reflect2/go_below_19.go | 14 -----
- .../github.com/modern-go/reflect2/reflect2.go | 20 ++++----
- vendor/github.com/modern-go/reflect2/test.sh | 12 -----
- .../github.com/modern-go/reflect2/type_map.go | 51 ++-----------------
- .../modern-go/reflect2/unsafe_link.go | 26 ++++++----
- .../modern-go/reflect2/unsafe_map.go | 8 ---
- .../unsafe/assume-no-moving-gc/untested.go | 3 +-
- vendor/k8s.io/client-go/pkg/version/base.go | 4 +-
- vendor/modules.txt | 7 +--
- 23 files changed, 103 insertions(+), 143 deletions(-)
- create mode 100644 vendor/github.com/modern-go/reflect2/go.mod
- create mode 100644 vendor/github.com/modern-go/reflect2/go_above_118.go
- delete mode 100644 vendor/github.com/modern-go/reflect2/go_above_17.go
- create mode 100644 vendor/github.com/modern-go/reflect2/go_below_118.go
- delete mode 100644 vendor/github.com/modern-go/reflect2/go_below_17.go
- delete mode 100644 vendor/github.com/modern-go/reflect2/go_below_19.go
- delete mode 100644 vendor/github.com/modern-go/reflect2/test.sh
-
-diff --git a/go.mod b/go.mod
-index ef12619..bda8baa 100644
---- a/go.mod
-+++ b/go.mod
-@@ -42,11 +42,11 @@ require (
- github.com/influxdata/telegraf v1.16.3
- github.com/jmespath/go-jmespath v0.4.0
- github.com/joncrlsn/dque v2.2.1-0.20200515025108-956d14155fa2+incompatible
-- github.com/json-iterator/go v1.1.11
-+ github.com/json-iterator/go v1.1.12
- github.com/klauspost/compress v1.11.13
- github.com/klauspost/pgzip v1.2.5
- github.com/mitchellh/mapstructure v1.4.1
-- github.com/modern-go/reflect2 v1.0.1
-+ github.com/modern-go/reflect2 v1.0.2
- github.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f
- github.com/opentracing/opentracing-go v1.2.0
- // github.com/pierrec/lz4 v2.0.5+incompatible
-@@ -68,6 +68,7 @@ require (
- go.etcd.io/bbolt v1.3.5
- go.uber.org/atomic v1.8.0
- go.uber.org/goleak v1.1.10
-+ go4.org/unsafe/assume-no-moving-gc v0.0.0-20211027215541-db492cf91b37 // indirect
- golang.org/x/crypto v0.0.0-20210616213533-5ff15b29337e
- golang.org/x/net v0.0.0-20210610132358-84b48f89b13b
- golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1
-diff --git a/go.sum b/go.sum
-index 10b3639..7e08e96 100644
---- a/go.sum
-+++ b/go.sum
-@@ -1258,6 +1258,8 @@ github.com/json-iterator/go v1.1.9/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/u
- github.com/json-iterator/go v1.1.10/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4=
- github.com/json-iterator/go v1.1.11 h1:uVUAXhF2To8cbw/3xN3pxj6kk7TYKs98NIrTqPlMWAQ=
- github.com/json-iterator/go v1.1.11/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4=
-+github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM=
-+github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo=
- github.com/jstemmer/go-junit-report v0.0.0-20190106144839-af01ea7f8024/go.mod h1:6v2b51hI/fHJwM22ozAgKL4VKDeJcHhJFhtBdhmNjmU=
- github.com/jstemmer/go-junit-report v0.9.1 h1:6QPYqodiu3GuPL+7mfx+NwDdp2eTkp9IfEUpgAwUN0o=
- github.com/jstemmer/go-junit-report v0.9.1/go.mod h1:Brl9GWCQeLvo8nXZwPNNblvFj/XSXhF0NWZEnDohbsk=
-@@ -1457,6 +1459,8 @@ github.com/modern-go/reflect2 v0.0.0-20180320133207-05fbef0ca5da/go.mod h1:bx2lN
- github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0=
- github.com/modern-go/reflect2 v1.0.1 h1:9f412s+6RmYXLWZSEzVVgPGK7C2PphHj5RJrvfx9AWI=
- github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0=
-+github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M=
-+github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk=
- github.com/montanaflynn/stats v0.0.0-20171201202039-1bf9dbcd8cbe/go.mod h1:wL8QJuTMNUDYhXwkmfOly8iTdp5TEcJFWZD2D7SIkUc=
- github.com/morikuni/aec v0.0.0-20170113033406-39771216ff4c/go.mod h1:BbKIizmSmc5MMPqRYbxO4ZU0S0+P200+tUnFx7PXmsc=
- github.com/morikuni/aec v1.0.0 h1:nP9CBfwrvYnBRgY6qfDQkygYDmYwOilePFkwzv4dU8A=
-@@ -2075,6 +2079,8 @@ go4.org/intern v0.0.0-20210108033219-3eb7198706b2/go.mod h1:vLqJ+12kCw61iCWsPto0
- go4.org/unsafe/assume-no-moving-gc v0.0.0-20201222175341-b30ae309168e/go.mod h1:FftLjUGFEDu5k8lt0ddY+HcrH/qU/0qk+H8j9/nTl3E=
- go4.org/unsafe/assume-no-moving-gc v0.0.0-20201222180813-1025295fd063 h1:1tk03FUNpulq2cuWpXZWj649rwJpk0d20rxWiopKRmc=
- go4.org/unsafe/assume-no-moving-gc v0.0.0-20201222180813-1025295fd063/go.mod h1:FftLjUGFEDu5k8lt0ddY+HcrH/qU/0qk+H8j9/nTl3E=
-+go4.org/unsafe/assume-no-moving-gc v0.0.0-20211027215541-db492cf91b37 h1:Tx9kY6yUkLge/pFG7IEMwDZy6CS2ajFc9TvQdPCW0uA=
-+go4.org/unsafe/assume-no-moving-gc v0.0.0-20211027215541-db492cf91b37/go.mod h1:FftLjUGFEDu5k8lt0ddY+HcrH/qU/0qk+H8j9/nTl3E=
- golang.org/x/crypto v0.0.0-20171113213409-9f005a07e0d3/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
- golang.org/x/crypto v0.0.0-20180505025534-4ec37c66abab/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
- golang.org/x/crypto v0.0.0-20180608092829-8ac0e0d97ce4/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
-diff --git a/vendor/github.com/json-iterator/go/README.md b/vendor/github.com/json-iterator/go/README.md
-index 52b111d..c589add 100644
---- a/vendor/github.com/json-iterator/go/README.md
-+++ b/vendor/github.com/json-iterator/go/README.md
-@@ -8,8 +8,6 @@
-
- A high-performance 100% compatible drop-in replacement of "encoding/json"
-
--You can also use thrift like JSON using [thrift-iterator](https://github.com/thrift-iterator/go)
--
- # Benchmark
-
- ![benchmark](http://jsoniter.com/benchmarks/go-benchmark.png)
-diff --git a/vendor/github.com/json-iterator/go/go.mod b/vendor/github.com/json-iterator/go/go.mod
-index e05c42f..e817ccc 100644
---- a/vendor/github.com/json-iterator/go/go.mod
-+++ b/vendor/github.com/json-iterator/go/go.mod
-@@ -6,6 +6,6 @@ require (
- github.com/davecgh/go-spew v1.1.1
- github.com/google/gofuzz v1.0.0
- github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421
-- github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742
-+ github.com/modern-go/reflect2 v1.0.2
- github.com/stretchr/testify v1.3.0
- )
-diff --git a/vendor/github.com/json-iterator/go/go.sum b/vendor/github.com/json-iterator/go/go.sum
-index be00a6d..4b7bb8a 100644
---- a/vendor/github.com/json-iterator/go/go.sum
-+++ b/vendor/github.com/json-iterator/go/go.sum
-@@ -5,11 +5,10 @@ github.com/google/gofuzz v1.0.0 h1:A8PeW59pxE9IoFRqBp37U+mSNaQoZ46F1f0f863XSXw=
- github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
- github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421 h1:ZqeYNhU3OHLH3mGKHDcjJRFFRrJa6eAM5H+CtDdOsPc=
- github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
--github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742 h1:Esafd1046DLDQ0W1YjYsBW+p8U2u7vzgW2SQVmlNazg=
--github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0=
-+github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M=
-+github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk=
- github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
- github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
--github.com/stretchr/objx v0.1.0 h1:4G4v2dO3VZwixGIRoQ5Lfboy6nUhCyYzaqnIAPPhYs4=
- github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
- github.com/stretchr/testify v1.3.0 h1:TivCn/peBQ7UY8ooIcPgZFpTNSz0Q2U6UrFlUfqbe0Q=
- github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
-diff --git a/vendor/github.com/modern-go/reflect2/.travis.yml b/vendor/github.com/modern-go/reflect2/.travis.yml
-index fbb4374..b097728 100644
---- a/vendor/github.com/modern-go/reflect2/.travis.yml
-+++ b/vendor/github.com/modern-go/reflect2/.travis.yml
-@@ -1,7 +1,7 @@
- language: go
-
- go:
-- - 1.8.x
-+ - 1.9.x
- - 1.x
-
- before_install:
-diff --git a/vendor/github.com/modern-go/reflect2/Gopkg.lock b/vendor/github.com/modern-go/reflect2/Gopkg.lock
-index 2a3a698..10ef811 100644
---- a/vendor/github.com/modern-go/reflect2/Gopkg.lock
-+++ b/vendor/github.com/modern-go/reflect2/Gopkg.lock
-@@ -1,15 +1,9 @@
- # This file is autogenerated, do not edit; changes may be undone by the next 'dep ensure'.
-
-
--[[projects]]
-- name = "github.com/modern-go/concurrent"
-- packages = ["."]
-- revision = "e0a39a4cb4216ea8db28e22a69f4ec25610d513a"
-- version = "1.0.0"
--
- [solve-meta]
- analyzer-name = "dep"
- analyzer-version = 1
-- inputs-digest = "daee8a88b3498b61c5640056665b8b9eea062006f5e596bbb6a3ed9119a11ec7"
-+ input-imports = []
- solver-name = "gps-cdcl"
- solver-version = 1
-diff --git a/vendor/github.com/modern-go/reflect2/Gopkg.toml b/vendor/github.com/modern-go/reflect2/Gopkg.toml
-index 2f4f4db..a9bc506 100644
---- a/vendor/github.com/modern-go/reflect2/Gopkg.toml
-+++ b/vendor/github.com/modern-go/reflect2/Gopkg.toml
-@@ -26,10 +26,6 @@
-
- ignored = []
-
--[[constraint]]
-- name = "github.com/modern-go/concurrent"
-- version = "1.0.0"
--
- [prune]
- go-tests = true
- unused-packages = true
-diff --git a/vendor/github.com/modern-go/reflect2/go.mod b/vendor/github.com/modern-go/reflect2/go.mod
-new file mode 100644
-index 0000000..9057e9b
---- /dev/null
-+++ b/vendor/github.com/modern-go/reflect2/go.mod
-@@ -0,0 +1,3 @@
-+module github.com/modern-go/reflect2
-+
-+go 1.12
-diff --git a/vendor/github.com/modern-go/reflect2/go_above_118.go b/vendor/github.com/modern-go/reflect2/go_above_118.go
-new file mode 100644
-index 0000000..2b4116f
---- /dev/null
-+++ b/vendor/github.com/modern-go/reflect2/go_above_118.go
-@@ -0,0 +1,23 @@
-+//+build go1.18
-+
-+package reflect2
-+
-+import (
-+ "unsafe"
-+)
-+
-+// m escapes into the return value, but the caller of mapiterinit
-+// doesn't let the return value escape.
-+//go:noescape
-+//go:linkname mapiterinit reflect.mapiterinit
-+func mapiterinit(rtype unsafe.Pointer, m unsafe.Pointer, it *hiter)
-+
-+func (type2 *UnsafeMapType) UnsafeIterate(obj unsafe.Pointer) MapIterator {
-+ var it hiter
-+ mapiterinit(type2.rtype, *(*unsafe.Pointer)(obj), &it)
-+ return &UnsafeMapIterator{
-+ hiter: &it,
-+ pKeyRType: type2.pKeyRType,
-+ pElemRType: type2.pElemRType,
-+ }
-+}
-\ No newline at end of file
-diff --git a/vendor/github.com/modern-go/reflect2/go_above_17.go b/vendor/github.com/modern-go/reflect2/go_above_17.go
-deleted file mode 100644
-index 5c1cea8..0000000
---- a/vendor/github.com/modern-go/reflect2/go_above_17.go
-+++ /dev/null
-@@ -1,8 +0,0 @@
--//+build go1.7
--
--package reflect2
--
--import "unsafe"
--
--//go:linkname resolveTypeOff reflect.resolveTypeOff
--func resolveTypeOff(rtype unsafe.Pointer, off int32) unsafe.Pointer
-diff --git a/vendor/github.com/modern-go/reflect2/go_above_19.go b/vendor/github.com/modern-go/reflect2/go_above_19.go
-index c7e3b78..974f768 100644
---- a/vendor/github.com/modern-go/reflect2/go_above_19.go
-+++ b/vendor/github.com/modern-go/reflect2/go_above_19.go
-@@ -6,6 +6,9 @@ import (
- "unsafe"
- )
-
-+//go:linkname resolveTypeOff reflect.resolveTypeOff
-+func resolveTypeOff(rtype unsafe.Pointer, off int32) unsafe.Pointer
-+
- //go:linkname makemap reflect.makemap
- func makemap(rtype unsafe.Pointer, cap int) (m unsafe.Pointer)
-
-diff --git a/vendor/github.com/modern-go/reflect2/go_below_118.go b/vendor/github.com/modern-go/reflect2/go_below_118.go
-new file mode 100644
-index 0000000..00003db
---- /dev/null
-+++ b/vendor/github.com/modern-go/reflect2/go_below_118.go
-@@ -0,0 +1,21 @@
-+//+build !go1.18
-+
-+package reflect2
-+
-+import (
-+ "unsafe"
-+)
-+
-+// m escapes into the return value, but the caller of mapiterinit
-+// doesn't let the return value escape.
-+//go:noescape
-+//go:linkname mapiterinit reflect.mapiterinit
-+func mapiterinit(rtype unsafe.Pointer, m unsafe.Pointer) (val *hiter)
-+
-+func (type2 *UnsafeMapType) UnsafeIterate(obj unsafe.Pointer) MapIterator {
-+ return &UnsafeMapIterator{
-+ hiter: mapiterinit(type2.rtype, *(*unsafe.Pointer)(obj)),
-+ pKeyRType: type2.pKeyRType,
-+ pElemRType: type2.pElemRType,
-+ }
-+}
-\ No newline at end of file
-diff --git a/vendor/github.com/modern-go/reflect2/go_below_17.go b/vendor/github.com/modern-go/reflect2/go_below_17.go
-deleted file mode 100644
-index 65a93c8..0000000
---- a/vendor/github.com/modern-go/reflect2/go_below_17.go
-+++ /dev/null
-@@ -1,9 +0,0 @@
--//+build !go1.7
--
--package reflect2
--
--import "unsafe"
--
--func resolveTypeOff(rtype unsafe.Pointer, off int32) unsafe.Pointer {
-- return nil
--}
-diff --git a/vendor/github.com/modern-go/reflect2/go_below_19.go b/vendor/github.com/modern-go/reflect2/go_below_19.go
-deleted file mode 100644
-index b050ef7..0000000
---- a/vendor/github.com/modern-go/reflect2/go_below_19.go
-+++ /dev/null
-@@ -1,14 +0,0 @@
--//+build !go1.9
--
--package reflect2
--
--import (
-- "unsafe"
--)
--
--//go:linkname makemap reflect.makemap
--func makemap(rtype unsafe.Pointer) (m unsafe.Pointer)
--
--func makeMapWithSize(rtype unsafe.Pointer, cap int) unsafe.Pointer {
-- return makemap(rtype)
--}
-diff --git a/vendor/github.com/modern-go/reflect2/reflect2.go b/vendor/github.com/modern-go/reflect2/reflect2.go
-index 63b49c7..c43c8b9 100644
---- a/vendor/github.com/modern-go/reflect2/reflect2.go
-+++ b/vendor/github.com/modern-go/reflect2/reflect2.go
-@@ -1,8 +1,9 @@
- package reflect2
-
- import (
-- "github.com/modern-go/concurrent"
- "reflect"
-+ "runtime"
-+ "sync"
- "unsafe"
- )
-
-@@ -130,13 +131,13 @@ var ConfigSafe = Config{UseSafeImplementation: true}.Froze()
-
- type frozenConfig struct {
- useSafeImplementation bool
-- cache *concurrent.Map
-+ cache *sync.Map
- }
-
- func (cfg Config) Froze() *frozenConfig {
- return &frozenConfig{
- useSafeImplementation: cfg.UseSafeImplementation,
-- cache: concurrent.NewMap(),
-+ cache: new(sync.Map),
- }
- }
-
-@@ -288,11 +289,12 @@ func NoEscape(p unsafe.Pointer) unsafe.Pointer {
- }
-
- func UnsafeCastString(str string) []byte {
-+ bytes := make([]byte, 0)
- stringHeader := (*reflect.StringHeader)(unsafe.Pointer(&str))
-- sliceHeader := &reflect.SliceHeader{
-- Data: stringHeader.Data,
-- Cap: stringHeader.Len,
-- Len: stringHeader.Len,
-- }
-- return *(*[]byte)(unsafe.Pointer(sliceHeader))
-+ sliceHeader := (*reflect.SliceHeader)(unsafe.Pointer(&bytes))
-+ sliceHeader.Data = stringHeader.Data
-+ sliceHeader.Cap = stringHeader.Len
-+ sliceHeader.Len = stringHeader.Len
-+ runtime.KeepAlive(str)
-+ return bytes
- }
-diff --git a/vendor/github.com/modern-go/reflect2/test.sh b/vendor/github.com/modern-go/reflect2/test.sh
-deleted file mode 100644
-index 3d2b976..0000000
---- a/vendor/github.com/modern-go/reflect2/test.sh
-+++ /dev/null
-@@ -1,12 +0,0 @@
--#!/usr/bin/env bash
--
--set -e
--echo "" > coverage.txt
--
--for d in $(go list github.com/modern-go/reflect2-tests/... | grep -v vendor); do
-- go test -coverprofile=profile.out -coverpkg=github.com/modern-go/reflect2 $d
-- if [ -f profile.out ]; then
-- cat profile.out >> coverage.txt
-- rm profile.out
-- fi
--done
-diff --git a/vendor/github.com/modern-go/reflect2/type_map.go b/vendor/github.com/modern-go/reflect2/type_map.go
-index 3acfb55..4b13c31 100644
---- a/vendor/github.com/modern-go/reflect2/type_map.go
-+++ b/vendor/github.com/modern-go/reflect2/type_map.go
-@@ -1,17 +1,13 @@
-+// +build !gccgo
-+
- package reflect2
-
- import (
- "reflect"
-- "runtime"
-- "strings"
- "sync"
- "unsafe"
- )
-
--// typelinks1 for 1.5 ~ 1.6
--//go:linkname typelinks1 reflect.typelinks
--func typelinks1() [][]unsafe.Pointer
--
- // typelinks2 for 1.7 ~
- //go:linkname typelinks2 reflect.typelinks
- func typelinks2() (sections []unsafe.Pointer, offset [][]int32)
-@@ -27,49 +23,10 @@ func discoverTypes() {
- types = make(map[string]reflect.Type)
- packages = make(map[string]map[string]reflect.Type)
-
-- ver := runtime.Version()
-- if ver == "go1.5" || strings.HasPrefix(ver, "go1.5.") {
-- loadGo15Types()
-- } else if ver == "go1.6" || strings.HasPrefix(ver, "go1.6.") {
-- loadGo15Types()
-- } else {
-- loadGo17Types()
-- }
-+ loadGoTypes()
- }
-
--func loadGo15Types() {
-- var obj interface{} = reflect.TypeOf(0)
-- typePtrss := typelinks1()
-- for _, typePtrs := range typePtrss {
-- for _, typePtr := range typePtrs {
-- (*emptyInterface)(unsafe.Pointer(&obj)).word = typePtr
-- typ := obj.(reflect.Type)
-- if typ.Kind() == reflect.Ptr && typ.Elem().Kind() == reflect.Struct {
-- loadedType := typ.Elem()
-- pkgTypes := packages[loadedType.PkgPath()]
-- if pkgTypes == nil {
-- pkgTypes = map[string]reflect.Type{}
-- packages[loadedType.PkgPath()] = pkgTypes
-- }
-- types[loadedType.String()] = loadedType
-- pkgTypes[loadedType.Name()] = loadedType
-- }
-- if typ.Kind() == reflect.Slice && typ.Elem().Kind() == reflect.Ptr &&
-- typ.Elem().Elem().Kind() == reflect.Struct {
-- loadedType := typ.Elem().Elem()
-- pkgTypes := packages[loadedType.PkgPath()]
-- if pkgTypes == nil {
-- pkgTypes = map[string]reflect.Type{}
-- packages[loadedType.PkgPath()] = pkgTypes
-- }
-- types[loadedType.String()] = loadedType
-- pkgTypes[loadedType.Name()] = loadedType
-- }
-- }
-- }
--}
--
--func loadGo17Types() {
-+func loadGoTypes() {
- var obj interface{} = reflect.TypeOf(0)
- sections, offset := typelinks2()
- for i, offs := range offset {
-diff --git a/vendor/github.com/modern-go/reflect2/unsafe_link.go b/vendor/github.com/modern-go/reflect2/unsafe_link.go
-index 57229c8..b49f614 100644
---- a/vendor/github.com/modern-go/reflect2/unsafe_link.go
-+++ b/vendor/github.com/modern-go/reflect2/unsafe_link.go
-@@ -19,18 +19,12 @@ func typedslicecopy(elemType unsafe.Pointer, dst, src sliceHeader) int
-
- //go:linkname mapassign reflect.mapassign
- //go:noescape
--func mapassign(rtype unsafe.Pointer, m unsafe.Pointer, key, val unsafe.Pointer)
-+func mapassign(rtype unsafe.Pointer, m unsafe.Pointer, key unsafe.Pointer, val unsafe.Pointer)
-
- //go:linkname mapaccess reflect.mapaccess
- //go:noescape
- func mapaccess(rtype unsafe.Pointer, m unsafe.Pointer, key unsafe.Pointer) (val unsafe.Pointer)
-
--// m escapes into the return value, but the caller of mapiterinit
--// doesn't let the return value escape.
--//go:noescape
--//go:linkname mapiterinit reflect.mapiterinit
--func mapiterinit(rtype unsafe.Pointer, m unsafe.Pointer) *hiter
--
- //go:noescape
- //go:linkname mapiternext reflect.mapiternext
- func mapiternext(it *hiter)
-@@ -42,9 +36,21 @@ func ifaceE2I(rtype unsafe.Pointer, src interface{}, dst unsafe.Pointer)
- // If you modify hiter, also change cmd/internal/gc/reflect.go to indicate
- // the layout of this structure.
- type hiter struct {
-- key unsafe.Pointer // Must be in first position. Write nil to indicate iteration end (see cmd/internal/gc/range.go).
-- value unsafe.Pointer // Must be in second position (see cmd/internal/gc/range.go).
-- // rest fields are ignored
-+ key unsafe.Pointer
-+ value unsafe.Pointer
-+ t unsafe.Pointer
-+ h unsafe.Pointer
-+ buckets unsafe.Pointer
-+ bptr unsafe.Pointer
-+ overflow *[]unsafe.Pointer
-+ oldoverflow *[]unsafe.Pointer
-+ startBucket uintptr
-+ offset uint8
-+ wrapped bool
-+ B uint8
-+ i uint8
-+ bucket uintptr
-+ checkBucket uintptr
- }
-
- // add returns p+x.
-diff --git a/vendor/github.com/modern-go/reflect2/unsafe_map.go b/vendor/github.com/modern-go/reflect2/unsafe_map.go
-index f2e76e6..37872da 100644
---- a/vendor/github.com/modern-go/reflect2/unsafe_map.go
-+++ b/vendor/github.com/modern-go/reflect2/unsafe_map.go
-@@ -107,14 +107,6 @@ func (type2 *UnsafeMapType) Iterate(obj interface{}) MapIterator {
- return type2.UnsafeIterate(objEFace.data)
- }
-
--func (type2 *UnsafeMapType) UnsafeIterate(obj unsafe.Pointer) MapIterator {
-- return &UnsafeMapIterator{
-- hiter: mapiterinit(type2.rtype, *(*unsafe.Pointer)(obj)),
-- pKeyRType: type2.pKeyRType,
-- pElemRType: type2.pElemRType,
-- }
--}
--
- type UnsafeMapIterator struct {
- *hiter
- pKeyRType unsafe.Pointer
-diff --git a/vendor/go4.org/unsafe/assume-no-moving-gc/untested.go b/vendor/go4.org/unsafe/assume-no-moving-gc/untested.go
-index b7df7df..01377f7 100644
---- a/vendor/go4.org/unsafe/assume-no-moving-gc/untested.go
-+++ b/vendor/go4.org/unsafe/assume-no-moving-gc/untested.go
-@@ -2,7 +2,8 @@
- // Use of this source code is governed by a BSD-style
- // license that can be found in the LICENSE file.
-
--// +build go1.18
-+//go:build go1.19
-+// +build go1.19
-
- package assume_no_moving_gc
-
-diff --git a/vendor/k8s.io/client-go/pkg/version/base.go b/vendor/k8s.io/client-go/pkg/version/base.go
-index f8679a1..51e34dd 100644
---- a/vendor/k8s.io/client-go/pkg/version/base.go
-+++ b/vendor/k8s.io/client-go/pkg/version/base.go
-@@ -55,8 +55,8 @@ var (
- // NOTE: The $Format strings are replaced during 'git archive' thanks to the
- // companion .gitattributes file containing 'export-subst' in this same
- // directory. See also https://git-scm.com/docs/gitattributes
-- gitVersion string = "v0.0.0-master+f5fd029660034d31833ff1d2620bb82d1c1618af"
-- gitCommit string = "f5fd029660034d31833ff1d2620bb82d1c1618af" // sha1 from git, output of $(git rev-parse HEAD)
-+ gitVersion string = "v0.0.0-master+$Format:%H$"
-+ gitCommit string = "$Format:%H$" // sha1 from git, output of $(git rev-parse HEAD)
- gitTreeState string = "" // state of git tree, either "clean" or "dirty"
-
- buildDate string = "1970-01-01T00:00:00Z" // build date in ISO8601 format, output of $(date -u +'%Y-%m-%dT%H:%M:%SZ')
-diff --git a/vendor/modules.txt b/vendor/modules.txt
-index 73a3d67..7abe3bd 100644
---- a/vendor/modules.txt
-+++ b/vendor/modules.txt
-@@ -625,7 +625,7 @@ github.com/joncrlsn/dque
- github.com/josharian/intern
- # github.com/jpillora/backoff v1.0.0
- github.com/jpillora/backoff
--# github.com/json-iterator/go v1.1.11
-+# github.com/json-iterator/go v1.1.12
- ## explicit
- github.com/json-iterator/go
- # github.com/jstemmer/go-junit-report v0.9.1
-@@ -703,7 +703,7 @@ github.com/moby/term
- github.com/moby/term/windows
- # github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd
- github.com/modern-go/concurrent
--# github.com/modern-go/reflect2 v1.0.1
-+# github.com/modern-go/reflect2 v1.0.2
- ## explicit
- github.com/modern-go/reflect2
- # github.com/morikuni/aec v1.0.0
-@@ -1155,7 +1155,8 @@ go.uber.org/zap/internal/exit
- go.uber.org/zap/zapcore
- # go4.org/intern v0.0.0-20210108033219-3eb7198706b2
- go4.org/intern
--# go4.org/unsafe/assume-no-moving-gc v0.0.0-20201222180813-1025295fd063
-+# go4.org/unsafe/assume-no-moving-gc v0.0.0-20211027215541-db492cf91b37
-+## explicit
- go4.org/unsafe/assume-no-moving-gc
- # golang.org/x/crypto v0.0.0-20210616213533-5ff15b29337e
- ## explicit
---
-2.35.1
-
diff --git a/testing/loki/loki-promtail.confd b/testing/loki/loki-promtail.confd
deleted file mode 100644
index ebf62ab463b..00000000000
--- a/testing/loki/loki-promtail.confd
+++ /dev/null
@@ -1,5 +0,0 @@
-# The promtail config file
-PROMTAIL_CONF="/etc/loki/promtail-local-config.yaml"
-
-# Add any extra options to pass to promtail to this setting.
-#PROMTAIL_OPTS=""
diff --git a/testing/loki/loki-promtail.initd b/testing/loki/loki-promtail.initd
deleted file mode 100644
index 778fbd96602..00000000000
--- a/testing/loki/loki-promtail.initd
+++ /dev/null
@@ -1,25 +0,0 @@
-#!/sbin/openrc-run
-
-output_log="${output_log:-/dev/null}"
-error_log="${error_log:-/var/log/promtail/error.log}"
-configfile="${PROMTAIL_CONF:-/etc/loki/promtail-local-config.yaml}"
-
-name="${name:-Promtail}"
-command="/usr/bin/promtail"
-command_args="-config.file=${configfile}
- ${PROMTAIL_OPTS}"
-command_user="${command_user:-root:root}"
-command_background=yes
-make_pidfile=yes
-pidfile="/run/${RC_SVCNAME}.pid"
-start_stop_daemon_args="${SSD_OPTS}
- -1 ${output_log} -2 ${error_log}"
-
-depend() {
- need net
-}
-
-start_pre() {
- checkpath -d -m 0750 -o "${command_user}" "/var/log/promtail"
-}
-
diff --git a/testing/loki/loki.confd b/testing/loki/loki.confd
deleted file mode 100644
index 850fa53e253..00000000000
--- a/testing/loki/loki.confd
+++ /dev/null
@@ -1,5 +0,0 @@
-# The loki config file
-LOKI_CONF="/etc/loki/loki-local-config.yaml"
-
-# Add any extra options to pass to loki to this setting.
-#LOKI_OPTS=""
diff --git a/testing/loki/loki.initd b/testing/loki/loki.initd
deleted file mode 100644
index dd5bd96283c..00000000000
--- a/testing/loki/loki.initd
+++ /dev/null
@@ -1,11 +0,0 @@
-#!/sbin/openrc-run
-
-configfile="${LOKI_CONF:-/etc/loki/loki-local-config.yaml}"
-
-command=/usr/bin/loki
-command_args="-config.file=${configfile}
- ${LOKI_OPTS}"
-command_background=yes
-command_user=loki:grafana
-make_pidfile=yes
-pidfile=/var/run/loki.pid
diff --git a/testing/lol-html/APKBUILD b/testing/lol-html/APKBUILD
new file mode 100644
index 00000000000..915868b851a
--- /dev/null
+++ b/testing/lol-html/APKBUILD
@@ -0,0 +1,56 @@
+# Contributor: lauren n. liberda <lauren@selfisekai.rocks>
+# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
+pkgname=lol-html
+pkgver=1.1.1
+pkgrel=0
+pkgdesc="Low output latency streaming HTML parser/rewriter (C library)"
+url="https://crates.io/crates/lol-html"
+arch="all"
+license="BSD-3-Clause"
+depends_dev="$pkgname=$pkgver-r$pkgrel"
+makedepends="
+ cargo
+ cargo-auditable
+ "
+subpackages="$pkgname-dev"
+source="
+ https://github.com/cloudflare/lol-html/archive/v$pkgver/lol-html-$pkgver.tar.gz
+ lol-html.pc.in
+
+ lockfile.patch
+ "
+builddir="$srcdir/lol-html-$pkgver/c-api"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+ (
+ cd tests
+ cargo fetch --target="$CTARGET" --locked
+ )
+}
+
+build() {
+ cargo auditable build --frozen --release
+
+ sed 's/@VERSION@/'"$pkgver"'/' "$srcdir"/lol-html.pc.in > lol-html.pc
+}
+
+check() {
+ # why is this a separate crate?
+ cd tests
+ cargo test --frozen
+}
+
+package() {
+ install -Dm755 target/release/liblolhtml.so -t "$pkgdir"/usr/lib/
+ install -Dm644 include/lol_html.h -t "$pkgdir"/usr/include/
+ install -Dm644 lol-html.pc -t "$pkgdir"/usr/lib/pkgconfig/
+}
+
+sha512sums="
+5cf78d7f602018e22642fbba0bbf0a84fc17dc218f5e60d77f2c0f08c7d5bd6e378487372e40a2a3a02c7729ae6a24d128130fa702e597335e9a9e860f60cce1 lol-html-1.1.1.tar.gz
+21772f891c68c8d6970c35d0c0fc920c00bd61bc075adcb72fa9479b340ea020f8d112832c6dba41f5e96cb03245587c3ffd518341ee7bb154ccebf7535e691c lol-html.pc.in
+e92b9e841e3db4c3fe8cf8132ca85317dfaf0dd072d34146e6249050b0165d1130f190d1646962ec406fcc7d27936a9d47018aadda02132b38cefe9c53c0fc5f lockfile.patch
+"
diff --git a/testing/lol-html/lockfile.patch b/testing/lol-html/lockfile.patch
new file mode 100644
index 00000000000..e84a35984c6
--- /dev/null
+++ b/testing/lol-html/lockfile.patch
@@ -0,0 +1,1087 @@
+--- /dev/null
++++ ./Cargo.lock
+@@ -0,0 +1,532 @@
++# This file is automatically @generated by Cargo.
++# It is not intended for manual editing.
++version = 3
++
++[[package]]
++name = "ahash"
++version = "0.8.6"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "91429305e9f0a25f6205c5b8e0d2db09e0708a7a6df0f42212bb56c32c8ac97a"
++dependencies = [
++ "cfg-if",
++ "once_cell",
++ "version_check",
++ "zerocopy",
++]
++
++[[package]]
++name = "bitflags"
++version = "1.3.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
++
++[[package]]
++name = "bitflags"
++version = "2.4.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07"
++
++[[package]]
++name = "byteorder"
++version = "1.5.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
++
++[[package]]
++name = "cc"
++version = "1.0.83"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0"
++dependencies = [
++ "libc",
++]
++
++[[package]]
++name = "cfg-if"
++version = "1.0.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
++
++[[package]]
++name = "convert_case"
++version = "0.4.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e"
++
++[[package]]
++name = "cssparser"
++version = "0.27.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "754b69d351cdc2d8ee09ae203db831e005560fc6030da058f86ad60c92a9cb0a"
++dependencies = [
++ "cssparser-macros",
++ "dtoa-short",
++ "itoa",
++ "matches",
++ "phf",
++ "proc-macro2",
++ "quote",
++ "smallvec",
++ "syn 1.0.109",
++]
++
++[[package]]
++name = "cssparser-macros"
++version = "0.6.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "13b588ba4ac1a99f7f2964d24b3d896ddc6bf847ee3855dbd4366f058cfcd331"
++dependencies = [
++ "quote",
++ "syn 2.0.38",
++]
++
++[[package]]
++name = "derive_more"
++version = "0.99.17"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321"
++dependencies = [
++ "convert_case",
++ "proc-macro2",
++ "quote",
++ "rustc_version",
++ "syn 1.0.109",
++]
++
++[[package]]
++name = "dtoa"
++version = "1.0.9"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "dcbb2bf8e87535c23f7a8a321e364ce21462d0ff10cb6407820e8e96dfff6653"
++
++[[package]]
++name = "dtoa-short"
++version = "0.3.4"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "dbaceec3c6e4211c79e7b1800fb9680527106beb2f9c51904a3210c03a448c74"
++dependencies = [
++ "dtoa",
++]
++
++[[package]]
++name = "encoding_rs"
++version = "0.8.33"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1"
++dependencies = [
++ "cfg-if",
++]
++
++[[package]]
++name = "fxhash"
++version = "0.2.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c"
++dependencies = [
++ "byteorder",
++]
++
++[[package]]
++name = "getrandom"
++version = "0.1.16"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce"
++dependencies = [
++ "cfg-if",
++ "libc",
++ "wasi",
++]
++
++[[package]]
++name = "hashbrown"
++version = "0.13.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e"
++dependencies = [
++ "ahash",
++]
++
++[[package]]
++name = "itoa"
++version = "0.4.8"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "b71991ff56294aa922b450139ee08b3bfc70982c6b2c7562771375cf73542dd4"
++
++[[package]]
++name = "lazy_static"
++version = "1.4.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
++
++[[package]]
++name = "lazycell"
++version = "1.3.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55"
++
++[[package]]
++name = "libc"
++version = "0.2.149"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "a08173bc88b7955d1b3145aa561539096c421ac8debde8cbc3612ec635fee29b"
++
++[[package]]
++name = "log"
++version = "0.4.20"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f"
++
++[[package]]
++name = "lol_html"
++version = "1.1.1"
++dependencies = [
++ "bitflags 2.4.1",
++ "cfg-if",
++ "cssparser",
++ "encoding_rs",
++ "hashbrown",
++ "lazy_static",
++ "lazycell",
++ "memchr",
++ "mime",
++ "safemem",
++ "selectors",
++ "thiserror",
++]
++
++[[package]]
++name = "lolhtml"
++version = "1.1.1"
++dependencies = [
++ "cc",
++ "encoding_rs",
++ "libc",
++ "lol_html",
++ "thiserror",
++]
++
++[[package]]
++name = "matches"
++version = "0.1.10"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "2532096657941c2fea9c289d370a250971c689d4f143798ff67113ec042024a5"
++
++[[package]]
++name = "memchr"
++version = "2.6.4"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f665ee40bc4a3c5590afb1e9677db74a508659dfd71e126420da8274909a0167"
++
++[[package]]
++name = "mime"
++version = "0.3.17"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a"
++
++[[package]]
++name = "nodrop"
++version = "0.1.14"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "72ef4a56884ca558e5ddb05a1d1e7e1bfd9a68d9ed024c21704cc98872dae1bb"
++
++[[package]]
++name = "once_cell"
++version = "1.18.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d"
++
++[[package]]
++name = "phf"
++version = "0.8.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "3dfb61232e34fcb633f43d12c58f83c1df82962dcdfa565a4e866ffc17dafe12"
++dependencies = [
++ "phf_macros",
++ "phf_shared",
++ "proc-macro-hack",
++]
++
++[[package]]
++name = "phf_codegen"
++version = "0.8.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "cbffee61585b0411840d3ece935cce9cb6321f01c45477d30066498cd5e1a815"
++dependencies = [
++ "phf_generator",
++ "phf_shared",
++]
++
++[[package]]
++name = "phf_generator"
++version = "0.8.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "17367f0cc86f2d25802b2c26ee58a7b23faeccf78a396094c13dced0d0182526"
++dependencies = [
++ "phf_shared",
++ "rand",
++]
++
++[[package]]
++name = "phf_macros"
++version = "0.8.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7f6fde18ff429ffc8fe78e2bf7f8b7a5a5a6e2a8b58bc5a9ac69198bbda9189c"
++dependencies = [
++ "phf_generator",
++ "phf_shared",
++ "proc-macro-hack",
++ "proc-macro2",
++ "quote",
++ "syn 1.0.109",
++]
++
++[[package]]
++name = "phf_shared"
++version = "0.8.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "c00cf8b9eafe68dde5e9eaa2cef8ee84a9336a47d566ec55ca16589633b65af7"
++dependencies = [
++ "siphasher",
++]
++
++[[package]]
++name = "ppv-lite86"
++version = "0.2.17"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de"
++
++[[package]]
++name = "precomputed-hash"
++version = "0.1.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c"
++
++[[package]]
++name = "proc-macro-hack"
++version = "0.5.20+deprecated"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "dc375e1527247fe1a97d8b7156678dfe7c1af2fc075c9a4db3690ecd2a148068"
++
++[[package]]
++name = "proc-macro2"
++version = "1.0.69"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "134c189feb4956b20f6f547d2cf727d4c0fe06722b20a0eec87ed445a97f92da"
++dependencies = [
++ "unicode-ident",
++]
++
++[[package]]
++name = "quote"
++version = "1.0.33"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae"
++dependencies = [
++ "proc-macro2",
++]
++
++[[package]]
++name = "rand"
++version = "0.7.3"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03"
++dependencies = [
++ "getrandom",
++ "libc",
++ "rand_chacha",
++ "rand_core",
++ "rand_hc",
++ "rand_pcg",
++]
++
++[[package]]
++name = "rand_chacha"
++version = "0.2.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402"
++dependencies = [
++ "ppv-lite86",
++ "rand_core",
++]
++
++[[package]]
++name = "rand_core"
++version = "0.5.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19"
++dependencies = [
++ "getrandom",
++]
++
++[[package]]
++name = "rand_hc"
++version = "0.2.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c"
++dependencies = [
++ "rand_core",
++]
++
++[[package]]
++name = "rand_pcg"
++version = "0.2.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "16abd0c1b639e9eb4d7c50c0b8100b0d0f849be2349829c740fe8e6eb4816429"
++dependencies = [
++ "rand_core",
++]
++
++[[package]]
++name = "rustc_version"
++version = "0.4.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366"
++dependencies = [
++ "semver",
++]
++
++[[package]]
++name = "safemem"
++version = "0.3.3"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ef703b7cb59335eae2eb93ceb664c0eb7ea6bf567079d843e09420219668e072"
++
++[[package]]
++name = "selectors"
++version = "0.22.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "df320f1889ac4ba6bc0cdc9c9af7af4bd64bb927bccdf32d81140dc1f9be12fe"
++dependencies = [
++ "bitflags 1.3.2",
++ "cssparser",
++ "derive_more",
++ "fxhash",
++ "log",
++ "matches",
++ "phf",
++ "phf_codegen",
++ "precomputed-hash",
++ "servo_arc",
++ "smallvec",
++ "thin-slice",
++]
++
++[[package]]
++name = "semver"
++version = "1.0.20"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "836fa6a3e1e547f9a2c4040802ec865b5d85f4014efe00555d7090a3dcaa1090"
++
++[[package]]
++name = "servo_arc"
++version = "0.1.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "d98238b800e0d1576d8b6e3de32827c2d74bee68bb97748dcf5071fb53965432"
++dependencies = [
++ "nodrop",
++ "stable_deref_trait",
++]
++
++[[package]]
++name = "siphasher"
++version = "0.3.11"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "38b58827f4464d87d377d175e90bf58eb00fd8716ff0a62f80356b5e61555d0d"
++
++[[package]]
++name = "smallvec"
++version = "1.11.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "942b4a808e05215192e39f4ab80813e599068285906cc91aa64f923db842bd5a"
++
++[[package]]
++name = "stable_deref_trait"
++version = "1.2.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3"
++
++[[package]]
++name = "syn"
++version = "1.0.109"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
++dependencies = [
++ "proc-macro2",
++ "quote",
++ "unicode-ident",
++]
++
++[[package]]
++name = "syn"
++version = "2.0.38"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e96b79aaa137db8f61e26363a0c9b47d8b4ec75da28b7d1d614c2303e232408b"
++dependencies = [
++ "proc-macro2",
++ "quote",
++ "unicode-ident",
++]
++
++[[package]]
++name = "thin-slice"
++version = "0.1.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "8eaa81235c7058867fa8c0e7314f33dcce9c215f535d1913822a2b3f5e289f3c"
++
++[[package]]
++name = "thiserror"
++version = "1.0.50"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f9a7210f5c9a7156bb50aa36aed4c95afb51df0df00713949448cf9e97d382d2"
++dependencies = [
++ "thiserror-impl",
++]
++
++[[package]]
++name = "thiserror-impl"
++version = "1.0.50"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "266b2e40bc00e5a6c09c3584011e08b06f123c00362c92b975ba9843aaaa14b8"
++dependencies = [
++ "proc-macro2",
++ "quote",
++ "syn 2.0.38",
++]
++
++[[package]]
++name = "unicode-ident"
++version = "1.0.12"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b"
++
++[[package]]
++name = "version_check"
++version = "0.9.4"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
++
++[[package]]
++name = "wasi"
++version = "0.9.0+wasi-snapshot-preview1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519"
++
++[[package]]
++name = "zerocopy"
++version = "0.7.23"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e50cbb27c30666a6108abd6bc7577556265b44f243e2be89a8bc4e07a528c107"
++dependencies = [
++ "zerocopy-derive",
++]
++
++[[package]]
++name = "zerocopy-derive"
++version = "0.7.23"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "a25f293fe55f0a48e7010d65552bb63704f6ceb55a1a385da10d41d8f78e4a3d"
++dependencies = [
++ "proc-macro2",
++ "quote",
++ "syn 2.0.38",
++]
+--- /dev/null
++++ ./tests/Cargo.lock
+@@ -0,0 +1,549 @@
++# This file is automatically @generated by Cargo.
++# It is not intended for manual editing.
++version = 3
++
++[[package]]
++name = "ahash"
++version = "0.8.6"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "91429305e9f0a25f6205c5b8e0d2db09e0708a7a6df0f42212bb56c32c8ac97a"
++dependencies = [
++ "cfg-if",
++ "once_cell",
++ "version_check",
++ "zerocopy",
++]
++
++[[package]]
++name = "bitflags"
++version = "1.3.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
++
++[[package]]
++name = "bitflags"
++version = "2.4.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07"
++
++[[package]]
++name = "byteorder"
++version = "1.5.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
++
++[[package]]
++name = "cc"
++version = "1.0.83"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0"
++dependencies = [
++ "libc",
++]
++
++[[package]]
++name = "cfg-if"
++version = "1.0.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
++
++[[package]]
++name = "convert_case"
++version = "0.4.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e"
++
++[[package]]
++name = "cssparser"
++version = "0.27.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "754b69d351cdc2d8ee09ae203db831e005560fc6030da058f86ad60c92a9cb0a"
++dependencies = [
++ "cssparser-macros",
++ "dtoa-short",
++ "itoa",
++ "matches",
++ "phf",
++ "proc-macro2",
++ "quote",
++ "smallvec",
++ "syn 1.0.109",
++]
++
++[[package]]
++name = "cssparser-macros"
++version = "0.6.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "13b588ba4ac1a99f7f2964d24b3d896ddc6bf847ee3855dbd4366f058cfcd331"
++dependencies = [
++ "quote",
++ "syn 2.0.38",
++]
++
++[[package]]
++name = "ctests"
++version = "0.1.0"
++dependencies = [
++ "cc",
++ "glob",
++ "libc",
++ "lol_html",
++ "lolhtml",
++]
++
++[[package]]
++name = "derive_more"
++version = "0.99.17"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321"
++dependencies = [
++ "convert_case",
++ "proc-macro2",
++ "quote",
++ "rustc_version",
++ "syn 1.0.109",
++]
++
++[[package]]
++name = "dtoa"
++version = "1.0.9"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "dcbb2bf8e87535c23f7a8a321e364ce21462d0ff10cb6407820e8e96dfff6653"
++
++[[package]]
++name = "dtoa-short"
++version = "0.3.4"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "dbaceec3c6e4211c79e7b1800fb9680527106beb2f9c51904a3210c03a448c74"
++dependencies = [
++ "dtoa",
++]
++
++[[package]]
++name = "encoding_rs"
++version = "0.8.33"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1"
++dependencies = [
++ "cfg-if",
++]
++
++[[package]]
++name = "fxhash"
++version = "0.2.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c"
++dependencies = [
++ "byteorder",
++]
++
++[[package]]
++name = "getrandom"
++version = "0.1.16"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce"
++dependencies = [
++ "cfg-if",
++ "libc",
++ "wasi",
++]
++
++[[package]]
++name = "glob"
++version = "0.3.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b"
++
++[[package]]
++name = "hashbrown"
++version = "0.13.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e"
++dependencies = [
++ "ahash",
++]
++
++[[package]]
++name = "itoa"
++version = "0.4.8"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "b71991ff56294aa922b450139ee08b3bfc70982c6b2c7562771375cf73542dd4"
++
++[[package]]
++name = "lazy_static"
++version = "1.4.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
++
++[[package]]
++name = "lazycell"
++version = "1.3.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55"
++
++[[package]]
++name = "libc"
++version = "0.2.149"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "a08173bc88b7955d1b3145aa561539096c421ac8debde8cbc3612ec635fee29b"
++
++[[package]]
++name = "log"
++version = "0.4.20"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f"
++
++[[package]]
++name = "lol_html"
++version = "1.1.1"
++dependencies = [
++ "bitflags 2.4.1",
++ "cfg-if",
++ "cssparser",
++ "encoding_rs",
++ "hashbrown",
++ "lazy_static",
++ "lazycell",
++ "memchr",
++ "mime",
++ "safemem",
++ "selectors",
++ "thiserror",
++]
++
++[[package]]
++name = "lolhtml"
++version = "1.1.1"
++dependencies = [
++ "cc",
++ "encoding_rs",
++ "libc",
++ "lol_html",
++ "thiserror",
++]
++
++[[package]]
++name = "matches"
++version = "0.1.10"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "2532096657941c2fea9c289d370a250971c689d4f143798ff67113ec042024a5"
++
++[[package]]
++name = "memchr"
++version = "2.6.4"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f665ee40bc4a3c5590afb1e9677db74a508659dfd71e126420da8274909a0167"
++
++[[package]]
++name = "mime"
++version = "0.3.17"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a"
++
++[[package]]
++name = "nodrop"
++version = "0.1.14"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "72ef4a56884ca558e5ddb05a1d1e7e1bfd9a68d9ed024c21704cc98872dae1bb"
++
++[[package]]
++name = "once_cell"
++version = "1.18.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d"
++
++[[package]]
++name = "phf"
++version = "0.8.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "3dfb61232e34fcb633f43d12c58f83c1df82962dcdfa565a4e866ffc17dafe12"
++dependencies = [
++ "phf_macros",
++ "phf_shared",
++ "proc-macro-hack",
++]
++
++[[package]]
++name = "phf_codegen"
++version = "0.8.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "cbffee61585b0411840d3ece935cce9cb6321f01c45477d30066498cd5e1a815"
++dependencies = [
++ "phf_generator",
++ "phf_shared",
++]
++
++[[package]]
++name = "phf_generator"
++version = "0.8.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "17367f0cc86f2d25802b2c26ee58a7b23faeccf78a396094c13dced0d0182526"
++dependencies = [
++ "phf_shared",
++ "rand",
++]
++
++[[package]]
++name = "phf_macros"
++version = "0.8.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7f6fde18ff429ffc8fe78e2bf7f8b7a5a5a6e2a8b58bc5a9ac69198bbda9189c"
++dependencies = [
++ "phf_generator",
++ "phf_shared",
++ "proc-macro-hack",
++ "proc-macro2",
++ "quote",
++ "syn 1.0.109",
++]
++
++[[package]]
++name = "phf_shared"
++version = "0.8.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "c00cf8b9eafe68dde5e9eaa2cef8ee84a9336a47d566ec55ca16589633b65af7"
++dependencies = [
++ "siphasher",
++]
++
++[[package]]
++name = "ppv-lite86"
++version = "0.2.17"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de"
++
++[[package]]
++name = "precomputed-hash"
++version = "0.1.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c"
++
++[[package]]
++name = "proc-macro-hack"
++version = "0.5.20+deprecated"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "dc375e1527247fe1a97d8b7156678dfe7c1af2fc075c9a4db3690ecd2a148068"
++
++[[package]]
++name = "proc-macro2"
++version = "1.0.69"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "134c189feb4956b20f6f547d2cf727d4c0fe06722b20a0eec87ed445a97f92da"
++dependencies = [
++ "unicode-ident",
++]
++
++[[package]]
++name = "quote"
++version = "1.0.33"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae"
++dependencies = [
++ "proc-macro2",
++]
++
++[[package]]
++name = "rand"
++version = "0.7.3"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03"
++dependencies = [
++ "getrandom",
++ "libc",
++ "rand_chacha",
++ "rand_core",
++ "rand_hc",
++ "rand_pcg",
++]
++
++[[package]]
++name = "rand_chacha"
++version = "0.2.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402"
++dependencies = [
++ "ppv-lite86",
++ "rand_core",
++]
++
++[[package]]
++name = "rand_core"
++version = "0.5.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19"
++dependencies = [
++ "getrandom",
++]
++
++[[package]]
++name = "rand_hc"
++version = "0.2.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c"
++dependencies = [
++ "rand_core",
++]
++
++[[package]]
++name = "rand_pcg"
++version = "0.2.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "16abd0c1b639e9eb4d7c50c0b8100b0d0f849be2349829c740fe8e6eb4816429"
++dependencies = [
++ "rand_core",
++]
++
++[[package]]
++name = "rustc_version"
++version = "0.4.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366"
++dependencies = [
++ "semver",
++]
++
++[[package]]
++name = "safemem"
++version = "0.3.3"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ef703b7cb59335eae2eb93ceb664c0eb7ea6bf567079d843e09420219668e072"
++
++[[package]]
++name = "selectors"
++version = "0.22.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "df320f1889ac4ba6bc0cdc9c9af7af4bd64bb927bccdf32d81140dc1f9be12fe"
++dependencies = [
++ "bitflags 1.3.2",
++ "cssparser",
++ "derive_more",
++ "fxhash",
++ "log",
++ "matches",
++ "phf",
++ "phf_codegen",
++ "precomputed-hash",
++ "servo_arc",
++ "smallvec",
++ "thin-slice",
++]
++
++[[package]]
++name = "semver"
++version = "1.0.20"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "836fa6a3e1e547f9a2c4040802ec865b5d85f4014efe00555d7090a3dcaa1090"
++
++[[package]]
++name = "servo_arc"
++version = "0.1.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "d98238b800e0d1576d8b6e3de32827c2d74bee68bb97748dcf5071fb53965432"
++dependencies = [
++ "nodrop",
++ "stable_deref_trait",
++]
++
++[[package]]
++name = "siphasher"
++version = "0.3.11"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "38b58827f4464d87d377d175e90bf58eb00fd8716ff0a62f80356b5e61555d0d"
++
++[[package]]
++name = "smallvec"
++version = "1.11.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "942b4a808e05215192e39f4ab80813e599068285906cc91aa64f923db842bd5a"
++
++[[package]]
++name = "stable_deref_trait"
++version = "1.2.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3"
++
++[[package]]
++name = "syn"
++version = "1.0.109"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
++dependencies = [
++ "proc-macro2",
++ "quote",
++ "unicode-ident",
++]
++
++[[package]]
++name = "syn"
++version = "2.0.38"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e96b79aaa137db8f61e26363a0c9b47d8b4ec75da28b7d1d614c2303e232408b"
++dependencies = [
++ "proc-macro2",
++ "quote",
++ "unicode-ident",
++]
++
++[[package]]
++name = "thin-slice"
++version = "0.1.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "8eaa81235c7058867fa8c0e7314f33dcce9c215f535d1913822a2b3f5e289f3c"
++
++[[package]]
++name = "thiserror"
++version = "1.0.50"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f9a7210f5c9a7156bb50aa36aed4c95afb51df0df00713949448cf9e97d382d2"
++dependencies = [
++ "thiserror-impl",
++]
++
++[[package]]
++name = "thiserror-impl"
++version = "1.0.50"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "266b2e40bc00e5a6c09c3584011e08b06f123c00362c92b975ba9843aaaa14b8"
++dependencies = [
++ "proc-macro2",
++ "quote",
++ "syn 2.0.38",
++]
++
++[[package]]
++name = "unicode-ident"
++version = "1.0.12"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b"
++
++[[package]]
++name = "version_check"
++version = "0.9.4"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
++
++[[package]]
++name = "wasi"
++version = "0.9.0+wasi-snapshot-preview1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519"
++
++[[package]]
++name = "zerocopy"
++version = "0.7.23"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e50cbb27c30666a6108abd6bc7577556265b44f243e2be89a8bc4e07a528c107"
++dependencies = [
++ "zerocopy-derive",
++]
++
++[[package]]
++name = "zerocopy-derive"
++version = "0.7.23"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "a25f293fe55f0a48e7010d65552bb63704f6ceb55a1a385da10d41d8f78e4a3d"
++dependencies = [
++ "proc-macro2",
++ "quote",
++ "syn 2.0.38",
++]
diff --git a/testing/lol-html/lol-html.pc.in b/testing/lol-html/lol-html.pc.in
new file mode 100644
index 00000000000..bd7145a470b
--- /dev/null
+++ b/testing/lol-html/lol-html.pc.in
@@ -0,0 +1,12 @@
+prefix=/usr
+exec_prefix=${prefix}
+libdir=${exec_prefix}/lib
+includedir=${prefix}/include
+
+Name: lol-html
+Description: Low output latency streaming HTML parser/rewriter
+Version: @VERSION@
+
+Requires:
+Libs: -L${libdir} -llolhtml
+Cflags: -I${includedir}
diff --git a/testing/lolcat/APKBUILD b/testing/lolcat/APKBUILD
index 053fd336443..69618c03f53 100644
--- a/testing/lolcat/APKBUILD
+++ b/testing/lolcat/APKBUILD
@@ -1,13 +1,15 @@
# Contributor: Daniel Isaksen <d@duniel.no>
# Maintainer: Simon Frankenberger <simon-alpine@fraho.eu>
pkgname=lolcat
-pkgver=1.2
-pkgrel=1
+pkgver=1.4
+pkgrel=0
pkgdesc="High-performance implementation of lolcat"
url="https://github.com/jaseg/lolcat/"
arch="all"
license="WTFPL"
-source="$pkgname-$pkgver.tar.gz::https://github.com/jaseg/lolcat/archive/v$pkgver.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/jaseg/lolcat/archive/v$pkgver.tar.gz
+ makefile.patch
+ "
options="!check" # No upstream testsuite
build() {
@@ -19,4 +21,7 @@ package() {
make DESTDIR="$pkgdir/usr/bin" install
}
-sha512sums="e8db711283267a38573eee584c01c64db4d20ea057f7b7db88c93c58189e0340eadd13129723e326618995e2a3dd80e1ff24aacb2b7e3d10c077c0f5f54a1fd3 lolcat-1.2.tar.gz"
+sha512sums="
+8f73121ef372383f5ff1d444f69a6255f5ff65abfbb4f103197480f957dcc440375c7c01be5c33247ce920ff39e34519702f7550b9b8ada2f18190d0ae948024 lolcat-1.4.tar.gz
+cddac8348b17f180daa8f4c53788dc86ab348f2d5c4c98e91b7b50010e6638750e6f1c2931d115090e8075055bef2c3d4e12218fc64b4a346bfdf543c058b262 makefile.patch
+"
diff --git a/testing/lolcat/makefile.patch b/testing/lolcat/makefile.patch
new file mode 100644
index 00000000000..e9d100482a9
--- /dev/null
+++ b/testing/lolcat/makefile.patch
@@ -0,0 +1,17 @@
+diff --git a/Makefile b/Makefile
+index 9ce889d..e9ca9db 100644
+--- a/Makefile
++++ b/Makefile
+@@ -16,10 +16,10 @@ xterm256lut.h: xterm256lut_gen.py
+ python $< > $@
+
+ lolcat: lolcat.c xterm256lut.h
+- $(CC) $(CFLAGS) -o $@ $< $(LIBS)
++ $(CC) $(CFLAGS) -o $@ $< $(LIBS) $(LDFLAGS)
+
+ censor: censor.c
+- $(CC) $(CFLAGS) -o $@ $< $(LIBS)
++ $(CC) $(CFLAGS) -o $@ $< $(LIBS) $(LDFLAGS)
+
+ install: lolcat censor
+ install lolcat $(DESTDIR)/lolcat
diff --git a/testing/lomiri-action-api/0002-Use-qmltestrunner-qt5.patch b/testing/lomiri-action-api/0002-Use-qmltestrunner-qt5.patch
new file mode 100644
index 00000000000..197f8ccac2d
--- /dev/null
+++ b/testing/lomiri-action-api/0002-Use-qmltestrunner-qt5.patch
@@ -0,0 +1,53 @@
+From 095b55e0e992f63af414b27e1b2ca52ff1a550fb Mon Sep 17 00:00:00 2001
+From: Luca Weiss <luca@z3ntu.xyz>
+Date: Wed, 15 Nov 2023 00:21:02 +0100
+Subject: [PATCH 2/2] Use qmltestrunner-qt5
+
+---
+ CMakeLists.txt | 2 +-
+ cmake/modules/QmlTest.cmake | 2 +-
+ test/qml/CMakeLists.txt | 2 +-
+ 3 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index e70f8ec..6cefd26 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -82,7 +82,7 @@ if(${GENERATE_DOCUMENTATION})
+ endif()
+
+
+-find_program(qmltestrunner_exe qmltestrunner)
++find_program(qmltestrunner_exe qmltestrunner-qt5)
+
+ if(NOT qmltestrunner_exe)
+ message(FATAL_ERROR "Could not locate qmltestrunner.")
+diff --git a/cmake/modules/QmlTest.cmake b/cmake/modules/QmlTest.cmake
+index 87fab8e..61bdc51 100644
+--- a/cmake/modules/QmlTest.cmake
++++ b/cmake/modules/QmlTest.cmake
+@@ -15,7 +15,7 @@
+ # qmltest_DEFAULT_IMPORT_PATHS
+ # qmltest_DEFAULT_PROPERTIES
+
+-find_program(qmltestrunner_exe qmltestrunner)
++find_program(qmltestrunner_exe qmltestrunner-qt5)
+
+ if(NOT qmltestrunner_exe)
+ message(FATAL_ERROR "Could not locate qmltestrunner.")
+diff --git a/test/qml/CMakeLists.txt b/test/qml/CMakeLists.txt
+index e817ea0..f4fd2fa 100644
+--- a/test/qml/CMakeLists.txt
++++ b/test/qml/CMakeLists.txt
+@@ -1,7 +1,7 @@
+ add_custom_target(qmlunittests)
+ add_custom_target(qmlunittests_1_1)
+
+-find_program(qmltestrunner_exe qmltestrunner)
++find_program(qmltestrunner_exe qmltestrunner-qt5)
+
+ if(NOT qmltestrunner_exe)
+ message(FATAL_ERROR "Could not locate qmltestrunner.")
+--
+2.42.1
+
diff --git a/testing/lomiri-action-api/APKBUILD b/testing/lomiri-action-api/APKBUILD
new file mode 100644
index 00000000000..2bbfe6acb01
--- /dev/null
+++ b/testing/lomiri-action-api/APKBUILD
@@ -0,0 +1,43 @@
+# Maintainer: Luca Weiss <luca@z3ntu.xyz>
+pkgname=lomiri-action-api
+pkgver=1.1.3
+pkgrel=0
+pkgdesc="Lomiri Action Qt API"
+url="https://gitlab.com/ubports/development/core/lomiri-action-api"
+arch="all"
+license="LGPL-3.0-only"
+depends_dev="qt5-qtdeclarative-dev"
+makedepends="
+ $depends_dev
+ cmake
+ samurai
+ "
+checkdepends="dbus-test-runner"
+subpackages="$pkgname-dev"
+source="https://gitlab.com/ubports/development/core/lomiri-action-api/-/archive/$pkgver/lomiri-action-api-$pkgver.tar.gz
+ 0002-Use-qmltestrunner-qt5.patch
+ "
+options="!check" # tests hang
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=None \
+ -Duse_libhud2=OFF
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+425b88cc97a0de10378dd003daaf3749d856ed469b468350de22fc428dd614e36361e1297b3e0b801999c13d8c7647fe0bcf732333e8a7af10dc65f8b9a53aa9 lomiri-action-api-1.1.3.tar.gz
+3c6c8b12579ee0a9ad5bc28afa6dcfee132cb9a90b44314f9c10e044fd468f8004b8b460aa624714f672b35a500b1ae755494d112c3a9185a2670b8aec5d2e3b 0002-Use-qmltestrunner-qt5.patch
+"
diff --git a/testing/lomiri-api/0001-Add-missing-headers-for-GCC13.patch b/testing/lomiri-api/0001-Add-missing-headers-for-GCC13.patch
new file mode 100644
index 00000000000..4cc5b2bd150
--- /dev/null
+++ b/testing/lomiri-api/0001-Add-missing-headers-for-GCC13.patch
@@ -0,0 +1,37 @@
+From 029b42a9b4d5467951595dff8bc536eb5a9e3ef7 Mon Sep 17 00:00:00 2001
+From: Luca Weiss <luca@z3ntu.xyz>
+Date: Wed, 7 Jun 2023 09:22:27 +0200
+Subject: [PATCH] Add missing headers for GCC13
+
+---
+ include/lomiri/util/FileIO.h | 1 +
+ include/lomiri/util/ResourcePtr.h | 1 +
+ 2 files changed, 2 insertions(+)
+
+diff --git a/include/lomiri/util/FileIO.h b/include/lomiri/util/FileIO.h
+index b2ad19e..815bf8e 100644
+--- a/include/lomiri/util/FileIO.h
++++ b/include/lomiri/util/FileIO.h
+@@ -23,6 +23,7 @@
+
+ #include <string>
+ #include <vector>
++#include <cstdint>
+
+ namespace lomiri
+ {
+diff --git a/include/lomiri/util/ResourcePtr.h b/include/lomiri/util/ResourcePtr.h
+index b385590..701bfb3 100644
+--- a/include/lomiri/util/ResourcePtr.h
++++ b/include/lomiri/util/ResourcePtr.h
+@@ -21,6 +21,7 @@
+
+ #include <mutex>
+ #include <type_traits>
++#include <stdexcept>
+
+ namespace lomiri
+ {
+--
+2.42.0
+
diff --git a/testing/lomiri-api/APKBUILD b/testing/lomiri-api/APKBUILD
new file mode 100644
index 00000000000..4c2d9197402
--- /dev/null
+++ b/testing/lomiri-api/APKBUILD
@@ -0,0 +1,50 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Luca Weiss <luca@z3ntu.xyz>
+pkgname=lomiri-api
+pkgver=0.2.1
+pkgrel=0
+pkgdesc="API for Lomiri shell integration"
+url="https://gitlab.com/ubports/development/core/lomiri-api"
+arch="all"
+license="LGPL-3.0-only"
+depends_dev="
+ gtest-dev
+ qt5-qtdeclarative-dev
+ "
+makedepends="
+ $depends_dev
+ cmake
+ cmake-extras
+ gmock
+ libqtdbustest
+ samurai
+ "
+checkdepends="dbus"
+source="https://gitlab.com/ubports/development/core/lomiri-api/-/archive/$pkgver/lomiri-api-$pkgver.tar.gz
+ 0001-Add-missing-headers-for-GCC13.patch
+ qmltestrunner.patch
+ "
+subpackages="$pkgname-dev"
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=None
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+9eb356d6733a780aabb8e8dde412c0aafca5dd021e1b093f5b369c778da0c0ae933e0a8f527528a85ae989d1856f8a3691117bacda1829716dadf253852ffb96 lomiri-api-0.2.1.tar.gz
+08c2b3bd7d583064f60c29accd74d10cad64c221e79b84ec973dd0e31b0bfb180a30f3800c1695686d172198a0a15fdf4ae6860e84413bab2d19e89e693b32f7 0001-Add-missing-headers-for-GCC13.patch
+04c316667ed5892c55278b01377d4d9c1a6ae14a330bfa594e5e54371d37441747684ab553799cb5e7804f4c68d181e78caeb8279491b9f5302a4e70095c74af qmltestrunner.patch
+"
diff --git a/testing/lomiri-api/qmltestrunner.patch b/testing/lomiri-api/qmltestrunner.patch
new file mode 100644
index 00000000000..4129a866348
--- /dev/null
+++ b/testing/lomiri-api/qmltestrunner.patch
@@ -0,0 +1,15 @@
+Alpine uses versioned Qt binaries
+
+diff --git a/cmake/modules/QmlTest.cmake b/cmake/modules/QmlTest.cmake
+index 8241703..d209b55 100644
+--- a/cmake/modules/QmlTest.cmake
++++ b/cmake/modules/QmlTest.cmake
+@@ -15,7 +15,7 @@
+ # qmltest_DEFAULT_IMPORT_PATHS
+ # qmltest_DEFAULT_PROPERTIES
+
+-find_program(qmltestrunner_exe qmltestrunner)
++find_program(qmltestrunner_exe qmltestrunner-qt5)
+
+ if(NOT qmltestrunner_exe)
+ message(FATAL_ERROR "Could not locate qmltestrunner.")
diff --git a/testing/lomiri-app-launch/0001-liblomiri-app-launch-jobs-posix.cpp-pass-more-enviro.patch b/testing/lomiri-app-launch/0001-liblomiri-app-launch-jobs-posix.cpp-pass-more-enviro.patch
new file mode 100644
index 00000000000..276df5b4445
--- /dev/null
+++ b/testing/lomiri-app-launch/0001-liblomiri-app-launch-jobs-posix.cpp-pass-more-enviro.patch
@@ -0,0 +1,27 @@
+From 9ae05ed4263e0c61724e2613101f89759d1b1f09 Mon Sep 17 00:00:00 2001
+From: Brandon Boese <brandonboese@protonmail.com>
+Date: Thu, 14 Mar 2024 19:38:29 -0400
+Subject: [PATCH] liblomiri-app-launch/jobs-posix.cpp: pass more environment
+ variables
+
+---
+ liblomiri-app-launch/jobs-posix.cpp | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/liblomiri-app-launch/jobs-posix.cpp b/liblomiri-app-launch/jobs-posix.cpp
+index e1639fe..f5b9518 100644
+--- a/liblomiri-app-launch/jobs-posix.cpp
++++ b/liblomiri-app-launch/jobs-posix.cpp
+@@ -211,6 +211,9 @@ std::shared_ptr<Application::Instance> POSIX::launch(
+ {
+ copyEnvByPrefix("QT_", env);
+ copyEnvByPrefix("XDG_", env);
++ copyEnv("HOME", env);
++ copyEnv("DISPLAY", env);
++ copyEnv("WAYLAND_DISPLAY", env);
+
+ /* If we're in Lomiri we don't want to pass it's platform, we want
+ * an application platform. */
+--
+2.43.2
+
diff --git a/testing/lomiri-app-launch/APKBUILD b/testing/lomiri-app-launch/APKBUILD
new file mode 100644
index 00000000000..71bc7b558fa
--- /dev/null
+++ b/testing/lomiri-app-launch/APKBUILD
@@ -0,0 +1,68 @@
+# Maintainer: Luca Weiss <luca@z3ntu.xyz>
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Contributor: Antoni Aloy <aaloytorrens@gmail.com>
+pkgname=lomiri-app-launch
+pkgver=0.1.9
+pkgrel=1
+pkgdesc="User space daemon for launching applications"
+arch="all"
+url="https://gitlab.com/ubports/development/core/lomiri-app-launch"
+license="GPL-3.0-only"
+depends_dev="
+ click-dev
+ curl-dev
+ dbus-test-runner-dev
+ gobject-introspection-dev
+ gtest-dev
+ json-glib-dev
+ lomiri-api-dev
+ lttng-ust-dev
+ mir-dev
+ properties-cpp-dev
+ zeitgeist-dev
+ "
+makedepends="
+ $depends_dev
+ cmake
+ cmake-extras
+ dbus-test-runner
+ glib-dev
+ lttng-ust-tools
+ qt5-qtdeclarative
+ samurai
+ "
+checkdepends="
+ bash
+ gmock
+ gtest-dev
+ py3-dbusmock
+ "
+source="https://gitlab.com/ubports/development/core/lomiri-app-launch/-/archive/$pkgver/lomiri-app-launch-$pkgver.tar.gz
+ 0001-liblomiri-app-launch-jobs-posix.cpp-pass-more-enviro.patch
+ "
+subpackages="$pkgname-dev"
+options="!check" # test 12/13 appears to hang
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DCMAKE_BUILD_TYPE=None \
+ -DUSE_SYSTEMD=OFF \
+ -DLOMIRI_APP_LAUNCH_ARCH=foo \
+ -DENABLE_MIRCLIENT=OFF
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+b00ae1009f9b10126d9d9abc4961d9315e6d1fa086e9c010cf752826a166cb2aa9a3f3aa915900ee1156081e409f3df93be970c23c9e5a31f8ab2fa2b9bbf6c9 lomiri-app-launch-0.1.9.tar.gz
+e8228226e3b4436333dd74869167417a0deaaf9c9c3e62a8b07c7478ccadb44d232320da6389e4aeba737f93adb7b348d077e694410d4d225d9b888a947eb98b 0001-liblomiri-app-launch-jobs-posix.cpp-pass-more-enviro.patch
+"
diff --git a/testing/lomiri-calculator-app/0001-point-qmlscene-to-qmlscene-qt5.patch b/testing/lomiri-calculator-app/0001-point-qmlscene-to-qmlscene-qt5.patch
new file mode 100644
index 00000000000..f78866c0dec
--- /dev/null
+++ b/testing/lomiri-calculator-app/0001-point-qmlscene-to-qmlscene-qt5.patch
@@ -0,0 +1,35 @@
+From 18cc9602d0bf71df38cfaaa5615f6f782be43a72 Mon Sep 17 00:00:00 2001
+From: Brandon Boese <brandonboese@protonmail.com>
+Date: Tue, 5 Mar 2024 16:24:28 -0500
+Subject: [PATCH] point qmlscene to qmlscene-qt5
+
+---
+ CMakeLists.txt | 2 +-
+ app/lomiri-calculator-app.in | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 6869c1b..2790571 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -35,7 +35,7 @@ if(CLICK_MODE)
+ set(LOMIRI-CALCULATOR-APP_DIR "${CMAKE_INSTALL_DATADIR}/qml")
+
+ set(QT_IMPORTS_DIR "${CMAKE_INSTALL_LIBDIR}")
+- set(EXEC "lomiri-calculator-app-migrate.py qmlscene -qt5 $@ ${LOMIRI-CALCULATOR-APP_DIR}/${MAIN_QML}")
++ set(EXEC "lomiri-calculator-app-migrate.py qmlscene-qt5 $@ ${LOMIRI-CALCULATOR-APP_DIR}/${MAIN_QML}")
+ if(NOT BZR_REVNO)
+ execute_process(
+ COMMAND bzr revno
+diff --git a/app/lomiri-calculator-app.in b/app/lomiri-calculator-app.in
+index d07f134..6762bd4 100644
+--- a/app/lomiri-calculator-app.in
++++ b/app/lomiri-calculator-app.in
+@@ -1,3 +1,3 @@
+ #!/bin/sh
+ export QT_SELECT=qt5
+-exec qmlscene @CMAKE_INSTALL_PREFIX@/@LOMIRI-CALCULATOR-APP_DIR@/@MAIN_QML@
++exec qmlscene-qt5 @CMAKE_INSTALL_PREFIX@/@LOMIRI-CALCULATOR-APP_DIR@/@MAIN_QML@
+--
+2.43.2
+
diff --git a/testing/lomiri-calculator-app/APKBUILD b/testing/lomiri-calculator-app/APKBUILD
new file mode 100644
index 00000000000..6a0a0059ef2
--- /dev/null
+++ b/testing/lomiri-calculator-app/APKBUILD
@@ -0,0 +1,53 @@
+# Maintainer: Brandon Boese <brandonboese@protonmail.com>
+pkgname=lomiri-calculator-app
+pkgver=4.0.2
+pkgrel=0
+pkgdesc="A powerful and easy to use calculator"
+url="https://gitlab.com/ubports/development/apps/lomiri-calculator-app"
+arch="all !armhf" # blocked by lomiri-ui-toolkit
+license="GPL-3.0-only"
+source="https://gitlab.com/ubports/development/apps/lomiri-calculator-app/-/archive/v$pkgver/lomiri-calculator-app-v$pkgver.tar.gz
+ 0001-point-qmlscene-to-qmlscene-qt5.patch
+ "
+depends="
+ lomiri-ui-extras
+ lomiri-ui-toolkit
+ qqc2-suru-style
+ "
+makedepends="
+ click-dev
+ cmake
+ cmake-extras
+ lomiri-trust-store-dev
+ qt5-qtbase-dev
+ qt5-qtdeclarative-dev
+ samurai
+ "
+checkdepends="
+ py3-dbusmock
+ py3-xdg
+ xvfb-run
+ "
+subpackages="$pkgname-lang"
+builddir="$srcdir/$pkgname-v$pkgver"
+options="!check" # requires autopilot
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCLICK_MODE=OFF \
+ -DINSTALL_TESTS=OFF
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+7642f8e62ce7a2e11474155790283f21c9ab1b16462f16541f5937bfbda1c2eed400fd553a451bb9acacfe8d12348696524d43198ae2745e78bd501f04baa8e7 lomiri-calculator-app-v4.0.2.tar.gz
+86d64f4be2f8277ee044a3b6b7041e4ff6694606f4a506ad1f9f970382ca10ae0ccc3d1b242589ca5e17f26b6258b688587770128c8449c61bce1bb8206fc4f1 0001-point-qmlscene-to-qmlscene-qt5.patch
+"
diff --git a/testing/lomiri-clock-app/0001-point-qmlscene-to-qmlscene-qt5.patch b/testing/lomiri-clock-app/0001-point-qmlscene-to-qmlscene-qt5.patch
new file mode 100644
index 00000000000..4abaa19bc7b
--- /dev/null
+++ b/testing/lomiri-clock-app/0001-point-qmlscene-to-qmlscene-qt5.patch
@@ -0,0 +1,37 @@
+From 7d5caaa5c9e48ca83e1b99340ffc845b8e6a88af Mon Sep 17 00:00:00 2001
+From: Brandon Boese <brandonboese@protonmail.com>
+Date: Tue, 28 Nov 2023 21:01:24 +0100
+Subject: [PATCH] point qmlscene to qmlscene-qt5
+
+---
+ CMakeLists.txt | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 7c092b80..2ae948c8 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -86,10 +86,10 @@ if(${CLICK_MODE})
+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/manifest.json DESTINATION ${CMAKE_INSTALL_PREFIX})
+ install(FILES "${APP_HARDCODE}.json" DESTINATION ${CMAKE_INSTALL_PREFIX})
+ install(PROGRAMS lomiri-clock-app-migrate.py DESTINATION ${CMAKE_INSTALL_PREFIX})
+- set(EXEC "lomiri-clock-app-migrate.py qmlscene -I ${MODULE_PATH} %U ${LOMIRI-CLOCK_APP_DIR}/${MAIN_QML}")
++ set(EXEC "lomiri-clock-app-migrate.py qmlscene-qt5 -I ${MODULE_PATH} %U ${LOMIRI-CLOCK_APP_DIR}/${MAIN_QML}")
+ else(CLICK_MODE)
+ install(PROGRAMS lomiri-clock-app-migrate.py DESTINATION ${CMAKE_INSTALL_PREFIX}/${LOMIRI-CLOCK_APP_DIR})
+- set(EXEC "qmlscene $@ -I ${MODULE_PATH} ${CMAKE_INSTALL_PREFIX}/${LOMIRI-CLOCK_APP_DIR}/${MAIN_QML}")
++ set(EXEC "qmlscene-qt5 $@ -I ${MODULE_PATH} ${CMAKE_INSTALL_PREFIX}/${LOMIRI-CLOCK_APP_DIR}/${MAIN_QML}")
+ endif()
+
+ install(FILES ${URLS_FILE} DESTINATION "${CMAKE_INSTALL_DATADIR}/lomiri-url-dispatcher/urls")
+@@ -124,6 +124,6 @@ add_custom_target("autopilot" chmod +x ${CMAKE_SOURCE_DIR}/tests/autopilot/run
+ DEPENDS timezone timezone-qmldir alarmsettings alarmsettings-qmldir datetime datetime-qmldir geolocation geolocation-qmldir
+ WORKING_DIRECTORY ./app)
+
+-add_custom_target("run" /usr/bin/qmlscene -I ${CMAKE_BINARY_DIR}/backend ${CMAKE_SOURCE_DIR}/app/lomiri-clock-app.qml
++add_custom_target("run" /usr/bin/qmlscene-qt5 -I ${CMAKE_BINARY_DIR}/backend ${CMAKE_SOURCE_DIR}/app/lomiri-clock-app.qml
+ DEPENDS timezone timezone-qmldir alarmsettings alarmsettings-qmldir datetime datetime-qmldir geolocation geolocation-qmldir
+ WORKING_DIRECTORY ./app)
+--
+2.43.0
+
diff --git a/testing/lomiri-clock-app/APKBUILD b/testing/lomiri-clock-app/APKBUILD
new file mode 100644
index 00000000000..37a22bd119e
--- /dev/null
+++ b/testing/lomiri-clock-app/APKBUILD
@@ -0,0 +1,64 @@
+# Maintainer: Luca Weiss <luca@z3ntu.xyz>
+# Contributor: Brandon Boese <brandonboese@protonmail.com>
+pkgname=lomiri-clock-app
+pkgver=4.0.3
+pkgrel=0
+pkgdesc="Clock App for Lomiri Operating Environment"
+url="https://gitlab.com/ubports/development/apps/lomiri-clock-app"
+arch="all !armhf" # blocked by lomiri-ui-toolkit
+license="GPL-3.0-only"
+depends="
+ geonames
+ gsettings-qt
+ lomiri-libusermetrics
+ lomiri-ui-extras
+ lomiri-ui-toolkit
+ qt5-qtlocation
+ u1db-qt
+ "
+makedepends="
+ click-dev
+ cmake
+ cmake-extras
+ geonames-dev
+ gnome-desktop-dev
+ lomiri-trust-store-dev
+ qt5-qtbase-dev
+ qt5-qtdeclarative
+ qt5-qtdeclarative-dev
+ samurai
+ "
+checkdepends="
+ py3-dbusmock
+ py3-xdg
+ xvfb-run
+ "
+subpackages="$pkgname-lang"
+source="https://gitlab.com/ubports/development/apps/lomiri-clock-app/-/archive/v$pkgver/lomiri-clock-app-v$pkgver.tar.gz
+ 0001-point-qmlscene-to-qmlscene-qt5.patch
+ "
+builddir="$srcdir/$pkgname-v$pkgver"
+options="!check" # tests do not run
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCLICK_MODE=OFF
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+d906a34e789dbd486af5c4837ab076485737217910d95bbe1e9b0b8453356c5d08373cd700dd768f41b2440e7c9a57fb7ca699a4fa73f80cf03e66bec3bc0cc4 lomiri-clock-app-v4.0.3.tar.gz
+eccc0ef81f43d59271a613a74eb71c1fa809e5afed581188878dd608a485ee9b2baf7b2f34242cc650bbc35b2a63782d9fa053f1a01e23ce9c5e8a995619a06e 0001-point-qmlscene-to-qmlscene-qt5.patch
+"
diff --git a/testing/lomiri-content-hub/APKBUILD b/testing/lomiri-content-hub/APKBUILD
new file mode 100644
index 00000000000..90e3616bb3d
--- /dev/null
+++ b/testing/lomiri-content-hub/APKBUILD
@@ -0,0 +1,76 @@
+# Maintainer: Luca Weiss <luca@z3ntu.xyz>
+# Contributor: Antoni Aloy <aaloytorrens@gmail.com>
+pkgname=lomiri-content-hub
+pkgver=1.1.1
+pkgrel=0
+pkgdesc="Content sharing/picking infrastructure and service, designed to allow apps to securely and efficiently exchange content"
+url="https://gitlab.com/ubports/development/core/content-hub"
+arch="all !armhf" # blocked by lomiri-ui-toolkit-dev
+license="GPL-3.0-only AND LGPL-3.0-only"
+depends_dev="
+ gsettings-qt-dev
+ libapparmor-dev
+ libnih-dev
+ libnotify-dev
+ lomiri-app-launch-dev
+ lomiri-download-manager-dev
+ lomiri-ui-toolkit-dev
+ qt5-qtdeclarative-dev
+ "
+makedepends="
+ $depends_dev
+ cmake
+ cmake-extras
+ doxygen
+ graphviz
+ gtest-dev
+ libapparmor
+ qt5-qttools-dev
+ samurai
+ "
+checkdepends="
+ dbus-test-runner
+ gmock
+ xvfb-run
+ "
+source="https://gitlab.com/ubports/development/core/content-hub/-/archive/$pkgver/content-hub-$pkgver.tar.gz
+ qdoc.patch
+ qmlplugindump.patch
+ "
+subpackages="$pkgname-dev $pkgname-doc $pkgname-lang"
+builddir="$srcdir/content-hub-$pkgver"
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=None \
+ -DWerror=OFF
+ cmake --build build
+}
+
+check() {
+ # Some app_hub_communication_* tests require some custom dbus extension
+ # (GetConnectionAppArmorSecurityContext).
+ xvfb-run ctest --test-dir build --output-on-failure \
+ -E 'app_hub_communication_store_migration|app_hub_communication_transfer|app_hub_communication_handler'
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+
+ # Remove files for testing only
+ # https://gitlab.com/ubports/development/core/content-hub/-/blob/main/debian/content-hub-testability.install
+ rm "$pkgdir"/usr/bin/content-hub-test*
+ rm "$pkgdir"/usr/share/content-hub/peers/content-hub-test*
+ rm "$pkgdir"/usr/share/applications/content-hub-test*
+ rm -r "$pkgdir"/usr/share/content-hub/testability/data
+ rm "$pkgdir"/usr/share/icons/hicolor/512x512/apps/content-hub-test*
+}
+
+sha512sums="
+b14dc28bf81adfd1eb5b52f38c744fdcc7e4a5aedc8f220dbdf01b1d78adb4de269db6a6f3bf5edf711cdd6f429e4d6b8c1e318f4b8bdc7e0fceb3597c019f40 content-hub-1.1.1.tar.gz
+32f307cbe1418842315080627240e9b2fe0ea26c96197da446d2a239a19c947a91fbf242a87d8ebb2b6d4f729e8ce2adc71b3592513d14479e39b45ce7d0085e qdoc.patch
+639a3b2ea44d436f0a5e61dae77a71e7650b8d5a0073e5f04d0af0ac3060675cf93c927f5cfddfabc09866a7b5ab36810a109597ae3cc43865e5b1680c5a9b28 qmlplugindump.patch
+"
diff --git a/testing/lomiri-content-hub/qdoc.patch b/testing/lomiri-content-hub/qdoc.patch
new file mode 100644
index 00000000000..c4110240418
--- /dev/null
+++ b/testing/lomiri-content-hub/qdoc.patch
@@ -0,0 +1,17 @@
+diff --git a/doc/qml/CMakeLists.txt b/doc/qml/CMakeLists.txt
+index 4e14324..6f2f537 100644
+--- a/doc/qml/CMakeLists.txt
++++ b/doc/qml/CMakeLists.txt
+@@ -1,10 +1,9 @@
+ # add a target to generate API documentation with qdoc
+ SET(QDOC_WORKS FALSE)
+-SET(ENV{QT_SELECT} qt5)
+-FIND_PROGRAM(QDOC_EXECUTABLE qdoc)
++FIND_PROGRAM(QDOC_EXECUTABLE qdoc-qt5)
+ if(QDOC_EXECUTABLE)
+ EXECUTE_PROCESS(COMMAND ${QDOC_EXECUTABLE} --version OUTPUT_VARIABLE QDOC_OUTPUT ERROR_QUIET)
+-string(REGEX REPLACE "qdoc ([0-9]+(\\.[0-9]+)+).*" "\\1" QDOC_VERSION ${QDOC_OUTPUT})
++string(REGEX REPLACE "qdoc-qt5 ([0-9]+(\\.[0-9]+)+).*" "\\1" QDOC_VERSION ${QDOC_OUTPUT})
+ if(QDOC_VERSION MATCHES "^5\\.")
+ set(QDOC_WORKS TRUE)
+ endif()
diff --git a/testing/lomiri-content-hub/qmlplugindump.patch b/testing/lomiri-content-hub/qmlplugindump.patch
new file mode 100644
index 00000000000..f4a31e18397
--- /dev/null
+++ b/testing/lomiri-content-hub/qmlplugindump.patch
@@ -0,0 +1,13 @@
+diff --git a/import/Lomiri/Content/CMakeLists.txt b/import/Lomiri/Content/CMakeLists.txt
+index d2382a3..055ea34 100644
+--- a/import/Lomiri/Content/CMakeLists.txt
++++ b/import/Lomiri/Content/CMakeLists.txt
+@@ -93,7 +93,7 @@ endif()
+
+ if(NOT CMAKE_CROSSCOMPILING)
+ add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/plugins.qmltypes
+- COMMAND qmlplugindump -qt=qt5 -noinstantiate -notrelocatable Lomiri.Content 1.1 ../../ > ${CMAKE_CURRENT_BINARY_DIR}/plugins.qmltypes
++ COMMAND qmlplugindump-qt5 -noinstantiate -notrelocatable Lomiri.Content 1.1 ../../ > ${CMAKE_CURRENT_BINARY_DIR}/plugins.qmltypes
+ DEPENDS ${PLUGIN}
+ WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
+ )
diff --git a/testing/lomiri-docviewer-app/0001-non-click-mode-install-icon-and-splash.patch b/testing/lomiri-docviewer-app/0001-non-click-mode-install-icon-and-splash.patch
new file mode 100644
index 00000000000..93f018517aa
--- /dev/null
+++ b/testing/lomiri-docviewer-app/0001-non-click-mode-install-icon-and-splash.patch
@@ -0,0 +1,85 @@
+From 09dfa87f3189c6b26d717a7cd470d7c79254f2f7 Mon Sep 17 00:00:00 2001
+From: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
+Date: Mon, 26 Feb 2024 09:55:57 +0100
+Subject: [PATCH 1/3] CMakeLists.txt: Use SVG icon as desktop app icon.
+
+---
+ CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index ebcb355..a085c40 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -21,7 +21,7 @@ set(LIBREOFFICE_INCLUDE_DIR "" CACHE PATH "Custom LibreOfficeKit include directo
+
+ set(APP_NAME lomiri-docviewer-app)
+ set(DESKTOP_FILE "${PROJECT_NAME}.desktop")
+-set(ICON_FILE docviewer-app.png)
++set(ICON_FILE docviewer-app.svg)
+ set(SPLASH_FILE docviewer-app-splash.svg)
+ set(AUTOPILOT_DIR lomiri_docviewer_app)
+
+--
+GitLab
+
+
+From 3797d91f205ca72166e413bf2272a09164dd5c72 Mon Sep 17 00:00:00 2001
+From: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
+Date: Mon, 26 Feb 2024 09:56:06 +0100
+Subject: [PATCH 2/3] data/CMakeLists.txt: In non-click mode, fix installation
+ of desktop app icon into datadir.
+
+---
+ data/CMakeLists.txt | 4 +---
+ 1 file changed, 1 insertion(+), 3 deletions(-)
+
+diff --git a/data/CMakeLists.txt b/data/CMakeLists.txt
+index 05b1f4e..ce552e1 100644
+--- a/data/CMakeLists.txt
++++ b/data/CMakeLists.txt
+@@ -11,9 +11,7 @@ else(CLICK_MODE)
+ set(DESKTOP_DIR ${CMAKE_INSTALL_DATADIR}/applications)
+ set(EXEC "${APP_NAME}")
+
+- install(DIRECTORY icons/hicolor DESTINATION ${CMAKE_INSTALL_DATADIR}/icons
+- FILES_MATCHING PATTERN *.png
+- )
++ install(FILES ${ICON_FILE} DESTINATION ${DATA_DIR})
+ endif(CLICK_MODE)
+
+ set(TRYEXEC "${APP_NAME}")
+--
+GitLab
+
+
+From 4d09277013f3ae12772a3888d90083c4c7ceff1c Mon Sep 17 00:00:00 2001
+From: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
+Date: Mon, 26 Feb 2024 09:56:31 +0100
+Subject: [PATCH 3/3] data/CMakeLists.txt: Do install splash file in non-click
+ mode.
+
+---
+ data/CMakeLists.txt | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/data/CMakeLists.txt b/data/CMakeLists.txt
+index ce552e1..da34181 100644
+--- a/data/CMakeLists.txt
++++ b/data/CMakeLists.txt
+@@ -8,10 +8,12 @@ if(CLICK_MODE)
+ install(FILES ${SPLASH_FILE} DESTINATION ${DATA_DIR})
+ else(CLICK_MODE)
+ set(ICON "${CMAKE_INSTALL_PREFIX}/${DATA_DIR}/${ICON_FILE}")
++ set(SPLASH "${CMAKE_INSTALL_PREFIX}/${DATA_DIR}/${SPLASH_FILE}")
+ set(DESKTOP_DIR ${CMAKE_INSTALL_DATADIR}/applications)
+ set(EXEC "${APP_NAME}")
+
+ install(FILES ${ICON_FILE} DESTINATION ${DATA_DIR})
++ install(FILES ${SPLASH_FILE} DESTINATION ${DATA_DIR})
+ endif(CLICK_MODE)
+
+ set(TRYEXEC "${APP_NAME}")
+--
+GitLab
+
diff --git a/testing/lomiri-docviewer-app/APKBUILD b/testing/lomiri-docviewer-app/APKBUILD
new file mode 100644
index 00000000000..f908a6bfa20
--- /dev/null
+++ b/testing/lomiri-docviewer-app/APKBUILD
@@ -0,0 +1,60 @@
+# Maintainer: Brandon Boese <brandonboese@protonmail.com>
+pkgname=lomiri-docviewer-app
+pkgver=3.0.4
+pkgrel=0
+pkgdesc="A Document Viewer application capable of opening many common document file formats"
+url="https://gitlab.com/ubports/development/apps/lomiri-docviewer-app"
+# blocked by lomiri-ui-toolkit and libreofficekit
+arch="all !armhf !ppc64le !s390x !riscv64"
+license="GPL-3.0-only"
+source="https://gitlab.com/ubports/development/apps/lomiri-docviewer-app/-/archive/v$pkgver/lomiri-docviewer-app-v$pkgver.tar.gz
+ 0001-non-click-mode-install-icon-and-splash.patch
+ "
+depends="
+ lomiri-content-hub
+ lomiri-thumbnailer
+ lomiri-trust-store
+ lomiri-ui-extras
+ lomiri-ui-toolkit
+ poppler-qt5
+ qqc2-suru-style
+ qt5-qtmultimedia
+ "
+makedepends="
+ click-dev
+ cmake
+ cmake-extras
+ libreofficekit
+ poppler-qt5-dev
+ qt5-qtbase-dev
+ qt5-qtdeclarative-dev
+ samurai
+ "
+checkdepends="
+ py3-dbusmock
+ py3-xdg
+ xvfb-run
+ "
+builddir="$srcdir/$pkgname-v$pkgver"
+options="!check" # requires autopilot
+subpackages="$pkgname-lang $pkgname-doc"
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=OFF \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCLICK_MODE=OFF \
+ -DINSTALL_TESTS=Off
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+b4ec929c432c28aaec3f011fd70a9e35708ff1e202a785624aa4bc4ffbb8664101362a1a9a4fa8d72529d4e455bd3c9b249659d266f6d2d2c69b353629fecb6f lomiri-docviewer-app-v3.0.4.tar.gz
+0f308ab1c1e6cc0cc6fc154936c9d103594249ab7c3fa1022f0d454c0c57b769f86b4fbff63950b47e43f28c43638fa9315772ee4cbe41aa7b75197cdf33f172 0001-non-click-mode-install-icon-and-splash.patch
+"
diff --git a/testing/lomiri-download-manager/0001-Use-CMAKE_INSTALL_FULL_-for-installing.patch b/testing/lomiri-download-manager/0001-Use-CMAKE_INSTALL_FULL_-for-installing.patch
new file mode 100644
index 00000000000..02d85281faa
--- /dev/null
+++ b/testing/lomiri-download-manager/0001-Use-CMAKE_INSTALL_FULL_-for-installing.patch
@@ -0,0 +1,218 @@
+From 58412c9afc9e6caa0fc1f848958ae1e4631dd1a2 Mon Sep 17 00:00:00 2001
+From: Luca Weiss <luca@z3ntu.xyz>
+Date: Wed, 31 Jan 2024 22:45:49 +0100
+Subject: [PATCH] Use CMAKE_INSTALL_FULL_* for installing
+
+While I don't think there should be a difference between the two
+variables for most cases, for SYSCONFDIR we might end up installing into
+/usr/etc/ if we don't use the FULL_SYSCONFDIR variable.
+---
+ CMakeLists.txt | 2 +-
+ docs/CMakeLists.txt | 2 +-
+ docs/man/CMakeLists.txt | 2 +-
+ docs/qml/CMakeLists.txt | 2 +-
+ po/CMakeLists.txt | 2 +-
+ src/common/priv/CMakeLists.txt | 2 +-
+ src/common/public/CMakeLists.txt | 8 ++++----
+ src/downloads/client/CMakeLists.txt | 6 +++---
+ src/downloads/common/CMakeLists.txt | 6 +++---
+ src/downloads/daemon/CMakeLists.txt | 8 ++++----
+ src/downloads/priv/CMakeLists.txt | 2 +-
+ src/extractor/CMakeLists.txt | 2 +-
+ src/uploads/common/CMakeLists.txt | 6 +++---
+ src/uploads/daemon/CMakeLists.txt | 8 ++++----
+ 14 files changed, 29 insertions(+), 29 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 8c4750a2..c183b3d2 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -34,7 +34,7 @@ IF(CMAKE_BUILD_TYPE MATCHES [cC][oO][vV][eE][rR][aA][gG][eE])
+ ENABLE_COVERAGE_REPORT(TARGETS ${DIALER_APP})
+ ENDIF(CMAKE_BUILD_TYPE MATCHES [cC][oO][vV][eE][rR][aA][gG][eE])
+
+-set(QT_INSTALL_QML "${CMAKE_INSTALL_LIBDIR}/qt5/qml")
++set(QT_INSTALL_QML "${CMAKE_INSTALL_FULL_LIBDIR}/qt5/qml")
+
+ set(LDM_VERSION_MAJOR 0)
+ set(LDM_VERSION_MINOR 1)
+diff --git a/docs/CMakeLists.txt b/docs/CMakeLists.txt
+index 059b8797..0658acaa 100644
+--- a/docs/CMakeLists.txt
++++ b/docs/CMakeLists.txt
+@@ -28,7 +28,7 @@ if(DOXYGEN_FOUND)
+ COMMENT "Generating API documentation with Doxygen" VERBATIM)
+ install(
+ DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/html
+- DESTINATION ${CMAKE_INSTALL_DOCDIR}/cpp)
++ DESTINATION ${CMAKE_INSTALL_FULL_DOCDIR}/cpp)
+ add_dependencies(doc cppdoc)
+ endif(DOXYGEN_FOUND)
+
+diff --git a/docs/man/CMakeLists.txt b/docs/man/CMakeLists.txt
+index d51c7a65..1e17c01e 100644
+--- a/docs/man/CMakeLists.txt
++++ b/docs/man/CMakeLists.txt
+@@ -2,5 +2,5 @@ install(
+ FILES
+ lomiri-download-manager.1
+ lomiri-upload-manager.1
+- DESTINATION ${CMAKE_INSTALL_MANDIR}/man1/
++ DESTINATION ${CMAKE_INSTALL_FULL_MANDIR}/man1/
+ )
+diff --git a/docs/qml/CMakeLists.txt b/docs/qml/CMakeLists.txt
+index 8fd39d22..26579b02 100644
+--- a/docs/qml/CMakeLists.txt
++++ b/docs/qml/CMakeLists.txt
+@@ -31,7 +31,7 @@ file(COPY "${CMAKE_CURRENT_SOURCE_DIR}/css"
+
+ install(
+ DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/html/
+- DESTINATION ${CMAKE_INSTALL_DOCDIR}/qml/html
++ DESTINATION ${CMAKE_INSTALL_FULL_DOCDIR}/qml/html
+ )
+
+ add_dependencies(doc qmldoc)
+diff --git a/po/CMakeLists.txt b/po/CMakeLists.txt
+index f5c1f3ed..ae887c7c 100644
+--- a/po/CMakeLists.txt
++++ b/po/CMakeLists.txt
+@@ -21,7 +21,7 @@ add_custom_target(${POT_FILE}
+ foreach(PO_FILE ${PO_FILES})
+ get_filename_component(LANG ${PO_FILE} NAME_WE)
+ gettext_process_po_files(${LANG} ALL PO_FILES ${PO_FILE})
+- set(INSTALL_DIR ${CMAKE_INSTALL_LOCALEDIR}/${LANG}/LC_MESSAGES)
++ set(INSTALL_DIR ${CMAKE_INSTALL_FULL_LOCALEDIR}/${LANG}/LC_MESSAGES)
+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${LANG}.gmo
+ DESTINATION ${INSTALL_DIR}
+ RENAME ${DOMAIN}.mo)
+diff --git a/src/common/priv/CMakeLists.txt b/src/common/priv/CMakeLists.txt
+index e7723f3d..fe0596a4 100644
+--- a/src/common/priv/CMakeLists.txt
++++ b/src/common/priv/CMakeLists.txt
+@@ -83,4 +83,4 @@ target_link_libraries(${TARGET}
+ ldm-common
+ )
+
+-install(TARGETS ${TARGET} DESTINATION ${CMAKE_INSTALL_LIBDIR})
++install(TARGETS ${TARGET} DESTINATION ${CMAKE_INSTALL_FULL_LIBDIR})
+diff --git a/src/common/public/CMakeLists.txt b/src/common/public/CMakeLists.txt
+index 4b1e8660..95738aa7 100644
+--- a/src/common/public/CMakeLists.txt
++++ b/src/common/public/CMakeLists.txt
+@@ -57,7 +57,7 @@ target_link_libraries(${TARGET}
+
+ configure_file(${TARGET}.pc.in ${CMAKE_CURRENT_BINARY_DIR}/${TARGET}.pc @ONLY)
+
+-install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${TARGET}.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
+-install(TARGETS ${TARGET} DESTINATION ${CMAKE_INSTALL_LIBDIR})
+-install(FILES ${TRANSFERS_PUBLIC_HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/lomiri/transfers)
+-install(FILES ${ERRORS_PUBLIC_HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/lomiri/transfers/errors)
++install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${TARGET}.pc DESTINATION ${CMAKE_INSTALL_FULL_LIBDIR}/pkgconfig)
++install(TARGETS ${TARGET} DESTINATION ${CMAKE_INSTALL_FULL_LIBDIR})
++install(FILES ${TRANSFERS_PUBLIC_HEADERS} DESTINATION ${CMAKE_INSTALL_FULL_INCLUDEDIR}/lomiri/transfers)
++install(FILES ${ERRORS_PUBLIC_HEADERS} DESTINATION ${CMAKE_INSTALL_FULL_INCLUDEDIR}/lomiri/transfers/errors)
+diff --git a/src/downloads/client/CMakeLists.txt b/src/downloads/client/CMakeLists.txt
+index d622434c..79ae0d34 100644
+--- a/src/downloads/client/CMakeLists.txt
++++ b/src/downloads/client/CMakeLists.txt
+@@ -71,6 +71,6 @@ target_link_libraries(${TARGET}
+
+ configure_file(${TARGET}.pc.in ${CMAKE_CURRENT_BINARY_DIR}/${TARGET}.pc @ONLY)
+
+-install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${TARGET}.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
+-install(TARGETS ${TARGET} DESTINATION ${CMAKE_INSTALL_LIBDIR})
+-install(FILES ${PUBLIC_HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/lomiri/download_manager)
++install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${TARGET}.pc DESTINATION ${CMAKE_INSTALL_FULL_LIBDIR}/pkgconfig)
++install(TARGETS ${TARGET} DESTINATION ${CMAKE_INSTALL_FULL_LIBDIR})
++install(FILES ${PUBLIC_HEADERS} DESTINATION ${CMAKE_INSTALL_FULL_INCLUDEDIR}/lomiri/download_manager)
+diff --git a/src/downloads/common/CMakeLists.txt b/src/downloads/common/CMakeLists.txt
+index 23fa1482..448e773a 100644
+--- a/src/downloads/common/CMakeLists.txt
++++ b/src/downloads/common/CMakeLists.txt
+@@ -47,6 +47,6 @@ target_link_libraries(${TARGET}
+
+ configure_file(${TARGET}.pc.in ${CMAKE_CURRENT_BINARY_DIR}/${TARGET}.pc @ONLY)
+
+-install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${TARGET}.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
+-install(TARGETS ${TARGET} DESTINATION ${CMAKE_INSTALL_LIBDIR})
+-install(FILES ${PUBLIC_HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/lomiri/download_manager)
++install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${TARGET}.pc DESTINATION ${CMAKE_INSTALL_FULL_LIBDIR}/pkgconfig)
++install(TARGETS ${TARGET} DESTINATION ${CMAKE_INSTALL_FULL_LIBDIR})
++install(FILES ${PUBLIC_HEADERS} DESTINATION ${CMAKE_INSTALL_FULL_INCLUDEDIR}/lomiri/download_manager)
+diff --git a/src/downloads/daemon/CMakeLists.txt b/src/downloads/daemon/CMakeLists.txt
+index cdc9f83b..a0e94a74 100644
+--- a/src/downloads/daemon/CMakeLists.txt
++++ b/src/downloads/daemon/CMakeLists.txt
+@@ -43,9 +43,9 @@ if(USE_SYSTEMD)
+ endif()
+
+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${TARGET}.service DESTINATION
+- ${CMAKE_INSTALL_DATADIR}/dbus-1/services)
++ ${CMAKE_INSTALL_FULL_DATADIR}/dbus-1/services)
+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/com.lomiri.applications.Downloader.service DESTINATION
+- ${CMAKE_INSTALL_DATADIR}/dbus-1/system-services)
++ ${CMAKE_INSTALL_FULL_DATADIR}/dbus-1/system-services)
+ install(FILES com.lomiri.applications.Downloader.conf DESTINATION
+- ${CMAKE_INSTALL_SYSCONFDIR}/dbus-1/system.d)
+-install(TARGETS ${TARGET} DESTINATION ${CMAKE_INSTALL_BINDIR})
++ ${CMAKE_INSTALL_FULL_SYSCONFDIR}/dbus-1/system.d)
++install(TARGETS ${TARGET} DESTINATION ${CMAKE_INSTALL_FULL_BINDIR})
+diff --git a/src/downloads/priv/CMakeLists.txt b/src/downloads/priv/CMakeLists.txt
+index 9eaf3092..40b1093d 100644
+--- a/src/downloads/priv/CMakeLists.txt
++++ b/src/downloads/priv/CMakeLists.txt
+@@ -49,7 +49,7 @@ include_directories(${CMAKE_SOURCE_DIR}/src/common/public)
+ include_directories(${CMAKE_SOURCE_DIR}/src/common/priv)
+ include_directories(${CMAKE_SOURCE_DIR}/src/downloads/common)
+
+-add_definitions(-DHELPER_DIR="${CMAKE_INSTALL_LIBEXECDIR}/lomiri-download-manager")
++add_definitions(-DHELPER_DIR="${CMAKE_INSTALL_FULL_LIBEXECDIR}/lomiri-download-manager")
+
+ add_library(${TARGET} STATIC
+ ${HEADERS}
+diff --git a/src/extractor/CMakeLists.txt b/src/extractor/CMakeLists.txt
+index 8c40b9b5..9efc64ed 100644
+--- a/src/extractor/CMakeLists.txt
++++ b/src/extractor/CMakeLists.txt
+@@ -29,4 +29,4 @@ target_link_libraries(${TARGET}
+ ldm-priv-common
+ )
+
+-install(TARGETS ${TARGET} DESTINATION ${CMAKE_INSTALL_LIBEXECDIR}/lomiri-download-manager)
++install(TARGETS ${TARGET} DESTINATION ${CMAKE_INSTALL_FULL_LIBEXECDIR}/lomiri-download-manager)
+diff --git a/src/uploads/common/CMakeLists.txt b/src/uploads/common/CMakeLists.txt
+index 0729445f..aa444553 100644
+--- a/src/uploads/common/CMakeLists.txt
++++ b/src/uploads/common/CMakeLists.txt
+@@ -41,6 +41,6 @@ target_link_libraries(${TARGET}
+
+ configure_file(${TARGET}.pc.in ${CMAKE_CURRENT_BINARY_DIR}/${TARGET}.pc @ONLY)
+
+-install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${TARGET}.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
+-install(TARGETS ${TARGET} DESTINATION ${CMAKE_INSTALL_LIBDIR})
+-install(FILES ${PUBLIC_HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/lomiri/upload_manager)
++install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${TARGET}.pc DESTINATION ${CMAKE_INSTALL_FULL_LIBDIR}/pkgconfig)
++install(TARGETS ${TARGET} DESTINATION ${CMAKE_INSTALL_FULL_LIBDIR})
++install(FILES ${PUBLIC_HEADERS} DESTINATION ${CMAKE_INSTALL_FULL_INCLUDEDIR}/lomiri/upload_manager)
+diff --git a/src/uploads/daemon/CMakeLists.txt b/src/uploads/daemon/CMakeLists.txt
+index 157c6fd6..9731899d 100644
+--- a/src/uploads/daemon/CMakeLists.txt
++++ b/src/uploads/daemon/CMakeLists.txt
+@@ -43,9 +43,9 @@ if(USE_SYSTEMD)
+ endif()
+
+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${TARGET}.service DESTINATION
+- ${CMAKE_INSTALL_DATADIR}/dbus-1/services)
++ ${CMAKE_INSTALL_FULL_DATADIR}/dbus-1/services)
+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/com.lomiri.applications.Uploader.service DESTINATION
+- ${CMAKE_INSTALL_DATADIR}/dbus-1/system-services)
++ ${CMAKE_INSTALL_FULL_DATADIR}/dbus-1/system-services)
+ install(FILES com.lomiri.applications.Uploader.conf DESTINATION
+- ${CMAKE_INSTALL_SYSCONFDIR}/dbus-1/system.d)
+-install(TARGETS ${TARGET} DESTINATION ${CMAKE_INSTALL_BINDIR})
++ ${CMAKE_INSTALL_FULL_SYSCONFDIR}/dbus-1/system.d)
++install(TARGETS ${TARGET} DESTINATION ${CMAKE_INSTALL_FULL_BINDIR})
+--
+2.43.0
+
diff --git a/testing/lomiri-download-manager/0001-docs-use-qdoc-qt5-directly-instead-of-qtswitcher.patch b/testing/lomiri-download-manager/0001-docs-use-qdoc-qt5-directly-instead-of-qtswitcher.patch
new file mode 100644
index 00000000000..a5e51db1ece
--- /dev/null
+++ b/testing/lomiri-download-manager/0001-docs-use-qdoc-qt5-directly-instead-of-qtswitcher.patch
@@ -0,0 +1,29 @@
+From ea2ef8fe05fa0ff60bd11ff6db0d98b7cbb78299 Mon Sep 17 00:00:00 2001
+From: Luca Weiss <luca@z3ntu.xyz>
+Date: Wed, 7 Jun 2023 12:03:31 +0200
+Subject: [PATCH] docs: use qdoc-qt5 directly instead of qtswitcher
+
+---
+ docs/qml/CMakeLists.txt | 5 ++---
+ 1 file changed, 2 insertions(+), 3 deletions(-)
+
+diff --git a/docs/qml/CMakeLists.txt b/docs/qml/CMakeLists.txt
+index 8fd39d22..0f6c29a6 100644
+--- a/docs/qml/CMakeLists.txt
++++ b/docs/qml/CMakeLists.txt
+@@ -1,10 +1,9 @@
+ # add a target to generate API documentation with qdoc 5.x
+ SET(QDOC_WORKS FALSE)
+-SET(ENV{QT_SELECT} qt5)
+-FIND_PROGRAM(QDOC_EXECUTABLE qdoc)
++FIND_PROGRAM(QDOC_EXECUTABLE qdoc-qt5)
+ if(QDOC_EXECUTABLE)
+ EXECUTE_PROCESS(COMMAND ${QDOC_EXECUTABLE} --version OUTPUT_VARIABLE QDOC_OUTPUT ERROR_QUIET)
+-string(REGEX REPLACE "qdoc ([0-9]+(\\.[0-9]+)+).*" "\\1" QDOC_VERSION ${QDOC_OUTPUT})
++string(REGEX REPLACE "qdoc-qt5 ([0-9]+(\\.[0-9]+)+).*" "\\1" QDOC_VERSION ${QDOC_OUTPUT})
+ if(QDOC_VERSION MATCHES "^5\\.")
+ set(QDOC_WORKS TRUE)
+ endif()
+--
+2.43.0
+
diff --git a/testing/lomiri-download-manager/APKBUILD b/testing/lomiri-download-manager/APKBUILD
new file mode 100644
index 00000000000..9d84a0b05f1
--- /dev/null
+++ b/testing/lomiri-download-manager/APKBUILD
@@ -0,0 +1,58 @@
+# Maintainer: Luca Weiss <luca@z3ntu.xyz>
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Contributor: Antoni Aloy <aaloytorrens@gmail.com>
+pkgname=lomiri-download-manager
+pkgver=0.1.3
+pkgrel=0
+pkgdesc="Provides a service for downloading files while an application is suspended"
+arch="all"
+url="https://gitlab.com/ubports/development/core/lomiri-download-manager"
+license="LGPL-3.0-only"
+depends_dev="
+ boost-dev
+ glog-dev
+ gtest-dev
+ lomiri-api-dev
+ qt5-qtdeclarative-dev
+ qt5-qttools-dev
+ "
+makedepends="
+ $depends_dev
+ cmake
+ cmake-extras
+ doxygen
+ gmock
+ graphviz
+ samurai
+ "
+checkdepends="dbus-test-runner xvfb-run"
+source="https://gitlab.com/ubports/development/core/lomiri-download-manager/-/archive/$pkgver/lomiri-download-manager-$pkgver.tar.gz
+ 0001-docs-use-qdoc-qt5-directly-instead-of-qtswitcher.patch
+ 0001-Use-CMAKE_INSTALL_FULL_-for-installing.patch
+ "
+subpackages="$pkgname-dev $pkgname-doc $pkgname-lang"
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=None \
+ -DUSE_SYSTEMD=OFF \
+ -DENABLE_WERROR=OFF
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+693dbaa85dc227a2c1ed26acc4bf662c888f45df544868906c9d405c62e32215a4825e03ba548ce3aa38f7c9a0c9c7c8e58198c4384c54aec343dfa47b7ab99c lomiri-download-manager-0.1.3.tar.gz
+6b387c39a3073d9f7c3c90724db192490f435c1fef72489188908ee13e512b56234f8b0ac45469fd5f4cb1a961338f85a1534440c99ba992bc461547df7f024d 0001-docs-use-qdoc-qt5-directly-instead-of-qtswitcher.patch
+ad8e60484201053b93585a3f818409ba8c235d57590454084f0d3c3dcb2e62297fc277a2662f5dd1a19c0682fb3200089d752e01cd585ef7d4a6a7fcc52b9fd8 0001-Use-CMAKE_INSTALL_FULL_-for-installing.patch
+"
diff --git a/testing/lomiri-filemanager-app/0001-include-paths.h.patch b/testing/lomiri-filemanager-app/0001-include-paths.h.patch
new file mode 100644
index 00000000000..549f89826af
--- /dev/null
+++ b/testing/lomiri-filemanager-app/0001-include-paths.h.patch
@@ -0,0 +1,25 @@
+From 0bb6c9dd19989dcc54d0a2c93bb67b5db9abff0f Mon Sep 17 00:00:00 2001
+From: Brandon Boese <brandonboese@protonmail.com>
+Date: Sun, 31 Dec 2023 13:37:18 -0500
+Subject: [PATCH] include paths.h
+
+---
+ src/plugin/placesmodel/qmtabparser.cpp | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/plugin/placesmodel/qmtabparser.cpp b/src/plugin/placesmodel/qmtabparser.cpp
+index 0ce1e73b..45549b42 100644
+--- a/src/plugin/placesmodel/qmtabparser.cpp
++++ b/src/plugin/placesmodel/qmtabparser.cpp
+@@ -24,6 +24,8 @@
+ #include <QFileInfo>
+ #include <QStringList>
+
++#include <paths.h>
++
+ class MtabFileGuard
+ {
+ FILE *mtabFile;
+--
+2.43.0
+
diff --git a/testing/lomiri-filemanager-app/0002-link-libintl.patch b/testing/lomiri-filemanager-app/0002-link-libintl.patch
new file mode 100644
index 00000000000..76fdd921d70
--- /dev/null
+++ b/testing/lomiri-filemanager-app/0002-link-libintl.patch
@@ -0,0 +1,25 @@
+From fef0cf28275e471e069f570e460746b89bb6d7a6 Mon Sep 17 00:00:00 2001
+From: Brandon Boese <brandonboese@protonmail.com>
+Date: Sun, 31 Dec 2023 13:40:37 -0500
+Subject: [PATCH] link libintl
+
+---
+ src/app/CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/app/CMakeLists.txt b/src/app/CMakeLists.txt
+index dc22cc94..fb978121 100644
+--- a/src/app/CMakeLists.txt
++++ b/src/app/CMakeLists.txt
+@@ -12,7 +12,7 @@ set(filemanager_SRCS
+ add_executable(lomiri-filemanager-app ${filemanager_SRCS})
+
+ qt5_use_modules(lomiri-filemanager-app Gui Qml Quick)
+-target_link_libraries(lomiri-filemanager-app stdc++)
++target_link_libraries(lomiri-filemanager-app stdc++ -lintl)
+
+ if(NOT "${CMAKE_CURRENT_SOURCE_DIR}" STREQUAL "${CMAKE_CURRENT_BINARY_DIR}")
+ add_custom_target(lomiri-filemanager-app-qmlfiles ALL
+--
+2.43.0
+
diff --git a/testing/lomiri-filemanager-app/APKBUILD b/testing/lomiri-filemanager-app/APKBUILD
new file mode 100644
index 00000000000..30bfd2e8adb
--- /dev/null
+++ b/testing/lomiri-filemanager-app/APKBUILD
@@ -0,0 +1,62 @@
+# Maintainer: Brandon Boese <brandonboese@protonmail.com>
+pkgname=lomiri-filemanager-app
+pkgver=1.0.4
+pkgrel=0
+pkgdesc="A convergent file manager supporting both mobile devices and desktops"
+url="https://gitlab.com/ubports/development/apps/lomiri-filemanager-app"
+arch="all !armhf" # blocked by lomiri-ui-toolkit
+license="GPL-3.0-only"
+source="https://gitlab.com/ubports/development/apps/lomiri-filemanager-app/-/archive/v$pkgver/lomiri-filemanager-app-v$pkgver.tar.gz
+ 0001-include-paths.h.patch
+ 0002-link-libintl.patch
+ "
+depends="
+ lomiri-content-hub
+ lomiri-thumbnailer
+ lomiri-ui-extras
+ lomiri-ui-toolkit
+ qqc2-suru-style
+ samba
+ suru-icon-theme
+ "
+makedepends="
+ click-dev
+ cmake
+ cmake-extras
+ libsmbclient
+ lomiri-trust-store-dev
+ musl-dev
+ qt5-qtbase-dev
+ qt5-qtdeclarative-dev
+ samba-dev
+ samurai
+ "
+checkdepends="
+ py3-dbusmock
+ py3-xdg
+ xvfb-run
+ "
+builddir="$srcdir/$pkgname-v$pkgver"
+options="!check" # requires autopilot
+subpackages="$pkgname-lang"
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCLICK_MODE=OFF \
+ -DINSTALL_TESTS=OFF
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+a22b3d952779569d0cf9f23a86b876b1024301d5a40ff8b30e4076bc60868e50a09447e7c2212902f58e18a0e67b6fab508244050a8f8560beffe6d2e2d53263 lomiri-filemanager-app-v1.0.4.tar.gz
+b3abc5dfb4b7d6ed9923b3819bebb42316d9d7fb383d60ae36c6d523c6b49d0b8aeec20bc13fe45887cfa5254fb51ad366b86891d0611dcabe15e44faedbe8bd 0001-include-paths.h.patch
+8a129769115f4c4381c771ad38b8a02071ba11fa686d4337e707272c0fb62536973784980df0df42052b051e6d532697e3b592bd48e033ade5467f9a3f624107 0002-link-libintl.patch
+"
diff --git a/testing/lomiri-gallery-app/0001-update-for-newer-Exiv2-version.patch b/testing/lomiri-gallery-app/0001-update-for-newer-Exiv2-version.patch
new file mode 100644
index 00000000000..5cfbe030a57
--- /dev/null
+++ b/testing/lomiri-gallery-app/0001-update-for-newer-Exiv2-version.patch
@@ -0,0 +1,66 @@
+From ab358e7a51375945c1f6119a08ce5ccc03bce34a Mon Sep 17 00:00:00 2001
+From: Brandon Boese <brandonboese@protonmail.com>
+Date: Sun, 31 Dec 2023 14:07:54 -0500
+Subject: [PATCH] update for newer Exiv2 version
+
+---
+ src/photo/photo-metadata.cpp | 8 ++++----
+ src/photo/photo-metadata.h | 2 +-
+ 2 files changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/src/photo/photo-metadata.cpp b/src/photo/photo-metadata.cpp
+index ac4a0b05..f9a08ae8 100644
+--- a/src/photo/photo-metadata.cpp
++++ b/src/photo/photo-metadata.cpp
+@@ -134,7 +134,7 @@ PhotoMetadata* PhotoMetadata::fromFile(const char* filepath)
+ result->m_keysPresent.insert(QString(i->key().c_str()));
+
+ return result;
+- } catch (Exiv2::AnyError& e) {
++ } catch (Exiv2::Error& e) {
+ qDebug("Error loading image metadata: %s", e.what());
+ delete result;
+ return NULL;
+@@ -165,7 +165,7 @@ Orientation PhotoMetadata::orientation() const
+ if (m_keysPresent.find(EXIF_ORIENTATION_KEY) == m_keysPresent.end())
+ return DEFAULT_ORIENTATION;
+
+- long orientation_code = exif_data[EXIF_ORIENTATION_KEY].toLong();
++ long orientation_code = exif_data[EXIF_ORIENTATION_KEY].toUint32();
+ if (orientation_code < MIN_ORIENTATION || orientation_code > MAX_ORIENTATION)
+ return DEFAULT_ORIENTATION;
+
+@@ -244,7 +244,7 @@ void PhotoMetadata::setDateTimeDigitized(const QDateTime& digitized)
+ if (!m_keysPresent.contains(EXIF_DATETIMEDIGITIZED_KEY))
+ m_keysPresent.insert(EXIF_DATETIMEDIGITIZED_KEY);
+
+- } catch (Exiv2::AnyError& e) {
++ } catch (Exiv2::Error& e) {
+ qDebug("Do not set DateTimeDigitized, error reading image metadata; %s", e.what());
+ return;
+ }
+@@ -259,7 +259,7 @@ bool PhotoMetadata::save() const
+ try {
+ m_image->writeMetadata();
+ return true;
+- } catch (Exiv2::AnyError& e) {
++ } catch (Exiv2::Error& e) {
+ return false;
+ }
+ }
+diff --git a/src/photo/photo-metadata.h b/src/photo/photo-metadata.h
+index a2687b8d..97f27acd 100644
+--- a/src/photo/photo-metadata.h
++++ b/src/photo/photo-metadata.h
+@@ -59,7 +59,7 @@ public:
+ private:
+ PhotoMetadata(const char* filepath);
+
+- Exiv2::Image::AutoPtr m_image;
++ Exiv2::Image::UniquePtr m_image;
+ QSet<QString> m_keysPresent;
+ QFileInfo m_fileSourceInfo;
+ };
+--
+2.43.0
+
diff --git a/testing/lomiri-gallery-app/0002-disable-werror.patch b/testing/lomiri-gallery-app/0002-disable-werror.patch
new file mode 100644
index 00000000000..cf06062a41a
--- /dev/null
+++ b/testing/lomiri-gallery-app/0002-disable-werror.patch
@@ -0,0 +1,25 @@
+From 07e6f48526d8acd7a8a8bb0d8fb399cfb87dc7eb Mon Sep 17 00:00:00 2001
+From: Brandon Boese <brandonboese@protonmail.com>
+Date: Sun, 31 Dec 2023 14:19:21 -0500
+Subject: [PATCH] disable werror
+
+---
+ CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 76eff6aa..c3073013 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -42,7 +42,7 @@ find_package(PkgConfig REQUIRED)
+ pkg_check_modules(EXIV2 REQUIRED exiv2)
+ pkg_check_modules(MEDIAINFO REQUIRED libmediainfo)
+
+-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Wall -Werror")
++set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Wall")
+ set(CMAKE_EXE_LINKER_FLAGS "-s")
+
+ # Activate C++11 on Cmake >= 3.1
+--
+2.43.0
+
diff --git a/testing/lomiri-gallery-app/APKBUILD b/testing/lomiri-gallery-app/APKBUILD
new file mode 100644
index 00000000000..d9ad50a3036
--- /dev/null
+++ b/testing/lomiri-gallery-app/APKBUILD
@@ -0,0 +1,63 @@
+# Maintainer: Brandon Boese <brandonboese@protonmail.com>
+pkgname=lomiri-gallery-app
+pkgver=3.0.2
+pkgrel=0
+pkgdesc="Photo gallery for the Ubuntu Touch platform"
+url="https://gitlab.com/ubports/development/apps/lomiri-gallery-app"
+arch="all !armhf" # blocked by lomiri-ui-toolkit
+license="GPL-3.0-only"
+source="https://gitlab.com/ubports/development/apps/lomiri-gallery-app/-/archive/v$pkgver/lomiri-gallery-app-v$pkgver.tar.gz
+ 0001-update-for-newer-Exiv2-version.patch
+ 0002-disable-werror.patch"
+depends="
+ exiv2
+ libmediainfo
+ lomiri-thumbnailer
+ lomiri-trust-store
+ lomiri-ui-extras
+ lomiri-ui-toolkit
+ qqc2-suru-style
+ qt5-qtmultimedia
+ "
+makedepends="
+ click-dev
+ cmake
+ cmake-extras
+ exiv2-dev
+ libmediainfo-dev
+ lomiri-trust-store-dev
+ mesa-gles
+ qt5-qtbase-dev
+ qt5-qtbase-sqlite
+ qt5-qtdeclarative-dev
+ samurai
+ "
+checkdepends="
+ py3-dbusmock
+ py3-xdg
+ xvfb-run
+ "
+builddir="$srcdir/$pkgname-v$pkgver"
+options="!check" # requires autopilot
+subpackages="$pkgname-lang"
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=OFF \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCLICK_MODE=OFF \
+ -DINSTALL_TESTS=OFF
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+408ab6883e82f9862e9eaa578652f48121707421bcd9672a7bcdc4412cb740a1f6077326badaadb79807de538dd5c31084706c9014fe3994c0725dfad7adb381 lomiri-gallery-app-v3.0.2.tar.gz
+e5e0eecd9b6926ff2a8359ebd3a59b5189e939cd830d0378f7a2271401f51c320061df6700a3d7ff5f2b0de274db02e6c02a2b0974498255351e3be3e186e7d1 0001-update-for-newer-Exiv2-version.patch
+01e020651ba57625476138cac716714843aceb2896bb49a3510a8adabed4579fc6c33871df5afb3a449a736c6d54b52cd23fa33aec8ca9110b1bbe908bf20461 0002-disable-werror.patch
+"
diff --git a/testing/lomiri-history-service/0001-CMakeLists.txt-Add-ENABLE_WERROR-CMake-option-defaul.patch b/testing/lomiri-history-service/0001-CMakeLists.txt-Add-ENABLE_WERROR-CMake-option-defaul.patch
new file mode 100644
index 00000000000..6ca2fe29b43
--- /dev/null
+++ b/testing/lomiri-history-service/0001-CMakeLists.txt-Add-ENABLE_WERROR-CMake-option-defaul.patch
@@ -0,0 +1,38 @@
+From af704299654bc2c1816454da23e7da5fb5f74318 Mon Sep 17 00:00:00 2001
+From: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
+Date: Fri, 13 Jan 2023 10:55:22 +0100
+Subject: [PATCH 1/4] CMakeLists.txt: Add ENABLE_WERROR CMake option,
+ defaulting to ON.
+
+Signed-off-by: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
+---
+ CMakeLists.txt | 9 +++++++--
+ 1 file changed, 7 insertions(+), 2 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index e61fea5..7e9e9ca 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -79,12 +79,17 @@ enable_testing()
+
+ add_definitions(-std=c++11)
+
+-set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=gnu99 -Wall -Werror")
++set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=gnu99 -Wall")
+ # TODO remove the need for -Wno-unused-variable
+ # unused-variable currently fails because of public headers includes static char's
+ # there is also a gcc bug that makes it not possable to rely on diagnostic pragmas
+ # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69967
+-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Werror -Wno-unused-variable")
++set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wno-unused-variable")
++
++option(ENABLE_WERROR "Treat all build warnings as errors" ON)
++if(ENABLE_WERROR)
++ add_compile_options(-Werror)
++endif()
+
+ # Define the version to be used in the library
+ set(HISTORY_VERSION_MAJOR 0)
+--
+2.42.1
+
diff --git a/testing/lomiri-history-service/0002-upgrade-to-C-17.patch b/testing/lomiri-history-service/0002-upgrade-to-C-17.patch
new file mode 100644
index 00000000000..ba836c6e077
--- /dev/null
+++ b/testing/lomiri-history-service/0002-upgrade-to-C-17.patch
@@ -0,0 +1,25 @@
+From 47323491d7054c28f24e34e7baa644b2f1a19833 Mon Sep 17 00:00:00 2001
+From: Brandon Boese <brandonboese@protonmail.com>
+Date: Sun, 15 Oct 2023 20:57:38 -0400
+Subject: [PATCH 2/4] upgrade to C++17
+
+---
+ CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 7e9e9ca..b4d1a8a 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -77,7 +77,7 @@ endfunction()
+
+ enable_testing()
+
+-add_definitions(-std=c++11)
++add_definitions(-std=c++17)
+
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=gnu99 -Wall")
+ # TODO remove the need for -Wno-unused-variable
+--
+2.42.1
+
diff --git a/testing/lomiri-history-service/0003-remove-systemd-dependency.patch b/testing/lomiri-history-service/0003-remove-systemd-dependency.patch
new file mode 100644
index 00000000000..42a1438c4dd
--- /dev/null
+++ b/testing/lomiri-history-service/0003-remove-systemd-dependency.patch
@@ -0,0 +1,24 @@
+From 5af65080d792d88131bf76bb642518e99279b9da Mon Sep 17 00:00:00 2001
+From: Brandon Boese <brandonboese@protonmail.com>
+Date: Sun, 15 Oct 2023 16:52:02 -0400
+Subject: [PATCH 3/4] remove systemd dependency
+
+---
+ CMakeLists.txt | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index b4d1a8a..3c28459 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -47,7 +47,6 @@ find_package(PkgConfig REQUIRED)
+ pkg_check_modules(TP_QT5 REQUIRED TelepathyQt5)
+ pkg_check_modules(SQLITE3 REQUIRED sqlite3)
+ pkg_check_modules(QTGLIB QtGLib-2.0)
+-pkg_check_modules(SYSTEMD REQUIRED systemd)
+
+ find_program(DBUS_RUNNER dbus-test-runner)
+
+--
+2.42.1
+
diff --git a/testing/lomiri-history-service/0004-remove-daemon-directory.patch b/testing/lomiri-history-service/0004-remove-daemon-directory.patch
new file mode 100644
index 00000000000..bf019dd458c
--- /dev/null
+++ b/testing/lomiri-history-service/0004-remove-daemon-directory.patch
@@ -0,0 +1,26 @@
+From 55637288bad139d24c4401eb71c994835defee48 Mon Sep 17 00:00:00 2001
+From: Brandon Boese <brandonboese@protonmail.com>
+Date: Sun, 15 Oct 2023 17:49:13 -0400
+Subject: [PATCH 4/4] remove daemon directory
+
+Temporary patch to allow compiling. Will be fixed when work on ofono begins.
+---
+ CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 3c28459..45a0635 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -97,7 +97,7 @@ set(HISTORY_VERSION_PATCH 0)
+ set(PACKAGE_VERSION ${HISTORY_VERSION_MAJOR}.${HISTORY_VERSION_MINOR}.${HISTORY_VERSION_PATCH})
+
+ add_subdirectory(src)
+-add_subdirectory(daemon)
++# add_subdirectory(daemon)
+ add_subdirectory(plugins)
+ add_subdirectory(tools)
+ add_subdirectory(Lomiri)
+--
+2.42.1
+
diff --git a/testing/lomiri-history-service/APKBUILD b/testing/lomiri-history-service/APKBUILD
new file mode 100644
index 00000000000..bc4d7102f25
--- /dev/null
+++ b/testing/lomiri-history-service/APKBUILD
@@ -0,0 +1,65 @@
+# Maintainer: Luca Weiss <luca@z3ntu.xyz>
+# Contributor: Brandon Boese <brandonboese@protonmail.com>
+pkgname=lomiri-history-service
+pkgver=0.4
+pkgrel=0
+pkgdesc="Service that provides call log and conversation history"
+url="https://gitlab.com/ubports/development/core/history-service"
+arch="all"
+license="GPL-3.0-only"
+depends="
+ libphonenumber-dev
+ qt5-qtbase-dev
+ qt5-qtbase-sqlite
+ qt5-qtdeclarative-dev
+ qt5-qtpim-dev
+ sqlite-dev
+ telepathy-mission-control
+ telepathy-qt-dev
+ "
+makedepends="
+ cmake
+ cmake-extras
+ dconf
+ libqtdbustest
+ samurai
+ "
+checkdepends="
+ dbus-test-runner
+ xvfb-run
+ "
+subpackages="$pkgname-dev"
+source="https://gitlab.com/ubports/development/core/history-service/-/archive/$pkgver/history-service-$pkgver.tar.gz
+ 0001-CMakeLists.txt-Add-ENABLE_WERROR-CMake-option-defaul.patch
+ 0002-upgrade-to-C-17.patch
+ 0003-remove-systemd-dependency.patch
+ 0004-remove-daemon-directory.patch
+ "
+builddir="$srcdir/history-service-$pkgver"
+options="!check" # several tests timing out
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DCMAKE_INSTALL_SYSCONFDIR=/etc \
+ -DCMAKE_INSTALL_LOCALSTATEDIR=/var \
+ -DENABLE_WERROR=OFF
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+73188367eb492375b1613ad10f45efd37b23cc0017955a12a89c375716268bb8bf1ba5ef024fae9798646312d3125d551549ffe44ad6c6e34fde60ba6d20fb42 history-service-0.4.tar.gz
+00d0ff183864c08307cd8161f99b2b7a51df745e29cc6c920536f5c9fe712526805943c799e8e52e373af933698a70a79e1a0e9abb5fda95c3bd3f8ea765d7c3 0001-CMakeLists.txt-Add-ENABLE_WERROR-CMake-option-defaul.patch
+ca24316555e14ac9a3f8f7420040b2803470efd312053020007009ae0273acbcf823c2c5cf0d6b88f2bbcd8430c248537e53e13a9c5855ccba17eac197cd9c4e 0002-upgrade-to-C-17.patch
+328f346cbdea5d36a432e20076dbb0a765fbe5a45b96425756e7871e66fe204d415a3e38c48a71473c7c55b7947062637ff9098df77e36873b8057b6d76dcb2a 0003-remove-systemd-dependency.patch
+5537768ff3ceda6fd4715adba63e8d34f97d2850e8137ca6efbb0614995c7c5b0ea83faef7b3b34e4b9e1c61910df47f113a1558088d510f0448f08cf28c7d7d 0004-remove-daemon-directory.patch
+"
diff --git a/testing/lomiri-indicator-location/0001-manually-disable-tests.patch b/testing/lomiri-indicator-location/0001-manually-disable-tests.patch
new file mode 100644
index 00000000000..7dd3470675a
--- /dev/null
+++ b/testing/lomiri-indicator-location/0001-manually-disable-tests.patch
@@ -0,0 +1,43 @@
+From 6432f05d57236a3279f92d51082e7eb1db3a6953 Mon Sep 17 00:00:00 2001
+From: Brandon Boese <brandonboese@protonmail.com>
+Date: Tue, 26 Dec 2023 20:45:54 -0500
+Subject: [PATCH] manually disable tests
+
+Fixes:
+Cannot find source file:
+
+/usr/src/gtest/src/gtest-all.cc
+
+---
+ CMakeLists.txt | 15 ---------------
+ 1 file changed, 15 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 7a08d6f..c5d2fbe 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -48,21 +48,6 @@ include_directories (SYSTEM ${SERVICE_DEPS_INCLUDE_DIRS})
+ set (CMAKE_INCLUDE_CURRENT_DIR ON)
+ set (CC_WARNING_ARGS " -Wall -Wextra -Wno-missing-field-initializers")
+
+-# testing & coverage
+-if (${enable_tests})
+- set (GTEST_SOURCE_DIR /usr/src/gtest/src)
+- set (GTEST_INCLUDE_DIR ${GTEST_SOURCE_DIR}/..)
+- set (GTEST_LIBS -lpthread)
+- enable_testing ()
+- if (${enable_lcov})
+- include(GCov)
+- endif ()
+-endif ()
+-
+ add_subdirectory (src)
+ add_subdirectory (data)
+ add_subdirectory (po)
+-
+-if (${enable_tests})
+- add_subdirectory (tests)
+-endif ()
+--
+2.43.0
+
diff --git a/testing/lomiri-indicator-location/APKBUILD b/testing/lomiri-indicator-location/APKBUILD
new file mode 100644
index 00000000000..85315ec8bce
--- /dev/null
+++ b/testing/lomiri-indicator-location/APKBUILD
@@ -0,0 +1,50 @@
+# Maintainer: Brandon Boese <brandonboese@protonmail.com>
+pkgname=lomiri-indicator-location
+pkgver=0_git20231227
+pkgrel=0
+_commit=f0525a93eb7b3f7da824459deb2244846d967ab5
+pkgdesc="Indicator controlling access to physical location data"
+url="https://gitlab.com/ubports/development/core/indicator-location"
+arch="all !armhf" # blocked by qt5-qtdeclarative
+license="GPL-3.0-only"
+source="https://gitlab.com/ubports/development/core/indicator-location/-/archive/$_commit/indicator-location-$_commit.tar.gz
+ 0001-manually-disable-tests.patch
+ "
+makedepends="
+ cmake-extras
+ glib-dev
+ gmenuharness-dev
+ gmock
+ gtest-dev
+ intltool
+ libqtdbusmock
+ libqtdbustest
+ lomiri-api-dev
+ lomiri-app-launch-dev
+ lomiri-url-dispatcher-dev
+ qt5-qtdeclarative-dev
+ qt5-qttools
+ samurai
+ "
+checkdepends="py3-dbusmock"
+builddir="$srcdir/indicator-location-$_commit"
+options="!check" # requires Ubuntu gtest
+subpackages="$pkgname-lang"
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=None
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+743ff6fc676f68d58b5f2e864072a3469638839cd50c7a6aa0f950934f19f0b03ff1918a32c49a20fec586effbada0f393f5f69a288aeaafc9294938e952764d indicator-location-f0525a93eb7b3f7da824459deb2244846d967ab5.tar.gz
+02a51e168fb3f857905ffc4d47c20f8b3e740177f19d5277f16df54dcc8a7b0fb969724d91379e6ca9e570c8a0bca0d353dac72c2d6a3a38c222052a68a17b85 0001-manually-disable-tests.patch
+"
diff --git a/testing/lomiri-indicator-network/0001-Use-CMAKE_INSTALL_FULL_-for-installing.patch b/testing/lomiri-indicator-network/0001-Use-CMAKE_INSTALL_FULL_-for-installing.patch
new file mode 100644
index 00000000000..78ce65dd977
--- /dev/null
+++ b/testing/lomiri-indicator-network/0001-Use-CMAKE_INSTALL_FULL_-for-installing.patch
@@ -0,0 +1,117 @@
+From 2e65084c0bdcb88f670ce8ca2609802036809566 Mon Sep 17 00:00:00 2001
+From: Luca Weiss <luca@z3ntu.xyz>
+Date: Wed, 31 Jan 2024 22:48:22 +0100
+Subject: [PATCH] Use CMAKE_INSTALL_FULL_* for installing
+
+While I don't think there should be a difference between the two
+variables for most cases, for SYSCONFDIR we might end up installing into
+/usr/etc/ if we don't use the FULL_SYSCONFDIR variable.
+---
+ data/CMakeLists.txt | 4 ++--
+ doc/CMakeLists.txt | 2 +-
+ po/CMakeLists.txt | 2 +-
+ src/agent/CMakeLists.txt | 2 +-
+ src/connectivity-api/connectivity-qt/CMakeLists.txt | 4 ++--
+ src/indicator/CMakeLists.txt | 2 +-
+ src/indicator/agent/CMakeLists.txt | 2 +-
+ 7 files changed, 9 insertions(+), 9 deletions(-)
+
+diff --git a/data/CMakeLists.txt b/data/CMakeLists.txt
+index 34ce2bce..27f31641 100644
+--- a/data/CMakeLists.txt
++++ b/data/CMakeLists.txt
+@@ -5,7 +5,7 @@
+
+ set(
+ INDICATOR_DIR
+- "${CMAKE_INSTALL_DATADIR}/unity/indicators"
++ "${CMAKE_INSTALL_FULL_DATADIR}/unity/indicators"
+ CACHE FILEPATH "Indicator directory"
+ )
+
+@@ -73,7 +73,7 @@ add_schema ("com.lomiri.indicator.network.gschema.xml")
+ ###########################
+
+ # where to install
+-set (XDG_AUTOSTART_DIR "${CMAKE_INSTALL_SYSCONFDIR}/xdg/autostart")
++set (XDG_AUTOSTART_DIR "${CMAKE_INSTALL_FULL_SYSCONFDIR}/xdg/autostart")
+ message (STATUS "${XDG_AUTOSTART_DIR} is the DBus Service File install dir")
+
+ set (XDG_AUTOSTART_NAME "${CMAKE_PROJECT_NAME}.desktop")
+diff --git a/doc/CMakeLists.txt b/doc/CMakeLists.txt
+index 54b5c4e9..54eb05b2 100644
+--- a/doc/CMakeLists.txt
++++ b/doc/CMakeLists.txt
+@@ -1,4 +1,4 @@
+-set(INSTALL_DOCDIR ${CMAKE_INSTALL_DOCDIR})
++set(INSTALL_DOCDIR ${CMAKE_INSTALL_FULL_DOCDIR})
+
+ option(BUILD_DOC "Build documentation by default" TRUE)
+ option(PRIVATE_DOCS "Build private documentation" FALSE)
+diff --git a/po/CMakeLists.txt b/po/CMakeLists.txt
+index dfb7d213..9decad7c 100644
+--- a/po/CMakeLists.txt
++++ b/po/CMakeLists.txt
+@@ -36,5 +36,5 @@ foreach(LANG ${LANGS})
+ COPYONLY)
+ endforeach(LANG)
+ gettext_process_pot_file(${POT_FILE} ALL
+- INSTALL_DESTINATION ${CMAKE_INSTALL_LOCALEDIR}
++ INSTALL_DESTINATION ${CMAKE_INSTALL_FULL_LOCALEDIR}
+ LANGUAGES ${LANGS})
+diff --git a/src/agent/CMakeLists.txt b/src/agent/CMakeLists.txt
+index e71aac5c..24653240 100644
+--- a/src/agent/CMakeLists.txt
++++ b/src/agent/CMakeLists.txt
+@@ -57,5 +57,5 @@ target_link_libraries(
+ install(
+ TARGETS
+ lomiri-indicator-network-secret-agent
+- RUNTIME DESTINATION "${CMAKE_INSTALL_LIBEXECDIR}/lomiri-indicator-network/"
++ RUNTIME DESTINATION "${CMAKE_INSTALL_FULL_LIBEXECDIR}/lomiri-indicator-network/"
+ )
+diff --git a/src/connectivity-api/connectivity-qt/CMakeLists.txt b/src/connectivity-api/connectivity-qt/CMakeLists.txt
+index 663f644b..ba37ae26 100644
+--- a/src/connectivity-api/connectivity-qt/CMakeLists.txt
++++ b/src/connectivity-api/connectivity-qt/CMakeLists.txt
+@@ -123,7 +123,7 @@ set_target_properties(
+
+ install(
+ TARGETS ${CONNECTIVITY_QT_LIB_TARGET}
+- LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
++ LIBRARY DESTINATION ${CMAKE_INSTALL_FULL_LIBDIR}
+ )
+
+ set(PC_FILE_TARGET "${CMAKE_BINARY_DIR}/${CONNECTIVITY_QT_LIB_TARGET}.pc")
+@@ -133,5 +133,5 @@ set(ABSOLUTE_SO_FILE "${CMAKE_INSTALL_FULL_LIBDIR}/lib${CONNECTIVITY_QT_LIB_TARG
+ configure_file("lomiri-connectivity-qt.pc.in" ${PC_FILE_TARGET} @ONLY)
+ install(
+ FILES ${PC_FILE_TARGET}
+- DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig"
++ DESTINATION "${CMAKE_INSTALL_FULL_LIBDIR}/pkgconfig"
+ )
+diff --git a/src/indicator/CMakeLists.txt b/src/indicator/CMakeLists.txt
+index ff3e0bfe..a0e3744a 100644
+--- a/src/indicator/CMakeLists.txt
++++ b/src/indicator/CMakeLists.txt
+@@ -174,5 +174,5 @@ target_link_libraries(
+ install(
+ TARGETS
+ lomiri-indicator-network-service
+- RUNTIME DESTINATION "${CMAKE_INSTALL_LIBEXECDIR}/lomiri-indicator-network/"
++ RUNTIME DESTINATION "${CMAKE_INSTALL_FULL_LIBEXECDIR}/lomiri-indicator-network/"
+ )
+diff --git a/src/indicator/agent/CMakeLists.txt b/src/indicator/agent/CMakeLists.txt
+index 9b47bc77..38e394d8 100644
+--- a/src/indicator/agent/CMakeLists.txt
++++ b/src/indicator/agent/CMakeLists.txt
+@@ -73,5 +73,5 @@ target_link_libraries(
+
+ install(
+ TARGETS indicator-secret-agent-bin
+- RUNTIME DESTINATION "${CMAKE_INSTALL_LIBEXECDIR}"
++ RUNTIME DESTINATION "${CMAKE_INSTALL_FULL_LIBEXECDIR}"
+ )
+--
+2.43.0
+
diff --git a/testing/lomiri-indicator-network/APKBUILD b/testing/lomiri-indicator-network/APKBUILD
new file mode 100644
index 00000000000..366a800f39e
--- /dev/null
+++ b/testing/lomiri-indicator-network/APKBUILD
@@ -0,0 +1,61 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Luca Weiss <luca@z3ntu.xyz>
+pkgname=lomiri-indicator-network
+pkgver=1.0.2
+pkgrel=0
+pkgdesc="The 'Network' indicator for Ubuntu Touch"
+# armhf blocked by qt5-qtdeclarative
+arch="all !armhf"
+url="https://gitlab.com/ubports/development/core/lomiri-indicator-network"
+license="GPL-3.0-only"
+depends_dev="
+ glib-dev
+ gmenuharness-dev
+ gtest-dev
+ libqofono-dev
+ libsecret-dev
+ lomiri-api-dev
+ lomiri-url-dispatcher-dev
+ networkmanager-dev
+ ofono-dev
+ qt5-qtdeclarative-dev
+ "
+makedepends="
+ $depends_dev
+ cmake-extras
+ gmock
+ intltool
+ libqtdbusmock
+ libqtdbustest
+ qt5-qttools
+ samurai
+ "
+checkdepends="py3-dbusmock"
+source="https://gitlab.com/ubports/development/core/lomiri-indicator-network/-/archive/$pkgver/lomiri-indicator-network-$pkgver.tar.gz
+ 0001-Use-CMAKE_INSTALL_FULL_-for-installing.patch
+ "
+subpackages="$pkgname-dev $pkgname-doc $pkgname-lang"
+options="!check" # some tests hang
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=None \
+ -DUSE_SYSTEMD=OFF
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+bdb722678fc0ef1c3ff133c3beaeb7419bdc5a5c255888b1e82cf938f438ff6a758b0904d7780e2fe045e4ecd8e31ad10e7bf526f85d49093125d5e907dc945e lomiri-indicator-network-1.0.2.tar.gz
+89c26a655f62a82a74dab87ee5757335723c99e1da93c0797975c14a362edb45573a64fc6e335cd561f53ab2a3b3954bd58c1550b489f6b7418588fdafd33bee 0001-Use-CMAKE_INSTALL_FULL_-for-installing.patch
+"
diff --git a/testing/lomiri-libusermetrics/0001-Use-CMAKE_INSTALL_FULL_-for-installing.patch b/testing/lomiri-libusermetrics/0001-Use-CMAKE_INSTALL_FULL_-for-installing.patch
new file mode 100644
index 00000000000..44f9a57e89c
--- /dev/null
+++ b/testing/lomiri-libusermetrics/0001-Use-CMAKE_INSTALL_FULL_-for-installing.patch
@@ -0,0 +1,135 @@
+From e87aa75b004aef1ce74c6b92290c4c4ed047e8e4 Mon Sep 17 00:00:00 2001
+From: Luca Weiss <luca@z3ntu.xyz>
+Date: Wed, 31 Jan 2024 22:49:40 +0100
+Subject: [PATCH] Use CMAKE_INSTALL_FULL_* for installing
+
+While I don't think there should be a difference between the two
+variables for most cases, for SYSCONFDIR we might end up installing into
+/usr/etc/ if we don't use the FULL_SYSCONFDIR variable.
+---
+ data/CMakeLists.txt | 8 ++++----
+ doc/CMakeLists.txt | 2 +-
+ src/libusermetricsinput/CMakeLists.txt | 10 +++++-----
+ src/libusermetricsoutput/CMakeLists.txt | 6 +++---
+ 4 files changed, 13 insertions(+), 13 deletions(-)
+
+diff --git a/data/CMakeLists.txt b/data/CMakeLists.txt
+index 87db31b..71d812c 100644
+--- a/data/CMakeLists.txt
++++ b/data/CMakeLists.txt
+@@ -10,7 +10,7 @@ install(
+ DIRECTORY
+ libusermetrics
+ DESTINATION
+- ${CMAKE_INSTALL_DATADIR}
++ ${CMAKE_INSTALL_FULL_DATADIR}
+ )
+
+ ###########################
+@@ -19,7 +19,7 @@ install(
+
+ set(
+ DBUSCONFDIR
+- "${CMAKE_INSTALL_SYSCONFDIR}/dbus-1/system.d"
++ "${CMAKE_INSTALL_FULL_SYSCONFDIR}/dbus-1/system.d"
+ )
+
+ install(
+@@ -34,7 +34,7 @@ install(
+
+ set(
+ DBUSIFACEDIR
+- "${CMAKE_INSTALL_DATADIR}/dbus-1/interfaces/"
++ "${CMAKE_INSTALL_FULL_DATADIR}/dbus-1/interfaces/"
+ )
+
+ install(
+@@ -52,7 +52,7 @@ install(
+
+ set(
+ DBUSSERVICEDIR
+- "${CMAKE_INSTALL_DATADIR}/dbus-1/system-services/"
++ "${CMAKE_INSTALL_FULL_DATADIR}/dbus-1/system-services/"
+ )
+
+ set(USERMETRICS_SERVICE
+diff --git a/doc/CMakeLists.txt b/doc/CMakeLists.txt
+index 46941d9..1e4ec27 100644
+--- a/doc/CMakeLists.txt
++++ b/doc/CMakeLists.txt
+@@ -19,7 +19,7 @@ add_doxygen(
+ *::internal*
+ *::Priv
+ INSTALL
+- ${CMAKE_INSTALL_DATAROOTDIR}/doc/libusermetrics-doc
++ ${CMAKE_INSTALL_FULL_DATAROOTDIR}/doc/libusermetrics-doc
+ XML
+ ALL
+ )
+diff --git a/src/libusermetricsinput/CMakeLists.txt b/src/libusermetricsinput/CMakeLists.txt
+index 9554117..206ff4a 100644
+--- a/src/libusermetricsinput/CMakeLists.txt
++++ b/src/libusermetricsinput/CMakeLists.txt
+@@ -84,8 +84,8 @@ set_target_properties(
+
+ install(
+ TARGETS usermetricsinput
+- LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+- PUBLIC_HEADER DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/libusermetrics-${API_VERSION}/libusermetricsinput"
++ LIBRARY DESTINATION ${CMAKE_INSTALL_FULL_LIBDIR}
++ PUBLIC_HEADER DESTINATION "${CMAKE_INSTALL_FULL_INCLUDEDIR}/libusermetrics-${API_VERSION}/libusermetricsinput"
+ )
+
+ # Package config
+@@ -95,7 +95,7 @@ configure_file("libusermetricsinput.pc.in" "${CMAKE_CURRENT_BINARY_DIR}/${LIBUSE
+
+ install(
+ FILES "${CMAKE_CURRENT_BINARY_DIR}/${LIBUSERMETRICSINPUT_PC}"
+- DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig"
++ DESTINATION "${CMAKE_INSTALL_FULL_LIBDIR}/pkgconfig"
+ )
+
+ ##########################
+@@ -115,7 +115,7 @@ set_target_properties(
+
+ install(
+ TARGETS usermetricsinput-bin
+- RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
++ RUNTIME DESTINATION ${CMAKE_INSTALL_FULL_BINDIR}
+ )
+
+ target_link_libraries(
+@@ -135,7 +135,7 @@ add_executable(
+
+ install(
+ TARGETS usermetricsinput-increment
+- RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
++ RUNTIME DESTINATION ${CMAKE_INSTALL_FULL_BINDIR}
+ )
+
+ target_link_libraries(
+diff --git a/src/libusermetricsoutput/CMakeLists.txt b/src/libusermetricsoutput/CMakeLists.txt
+index 9cdd56f..775cfa5 100644
+--- a/src/libusermetricsoutput/CMakeLists.txt
++++ b/src/libusermetricsoutput/CMakeLists.txt
+@@ -76,8 +76,8 @@ set_target_properties(
+
+ install(
+ TARGETS usermetricsoutput
+- LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+- PUBLIC_HEADER DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/libusermetrics-${API_VERSION}/libusermetricsoutput"
++ LIBRARY DESTINATION ${CMAKE_INSTALL_FULL_LIBDIR}
++ PUBLIC_HEADER DESTINATION "${CMAKE_INSTALL_FULL_INCLUDEDIR}/libusermetrics-${API_VERSION}/libusermetricsoutput"
+ )
+
+ # Package config
+@@ -87,5 +87,5 @@ configure_file("libusermetricsoutput.pc.in" "${CMAKE_CURRENT_BINARY_DIR}/${LIBUS
+
+ install(
+ FILES "${CMAKE_CURRENT_BINARY_DIR}/${LIBUSERMETRICSOUTPUT_PC}"
+- DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig"
++ DESTINATION "${CMAKE_INSTALL_FULL_LIBDIR}/pkgconfig"
+ )
+--
+2.43.0
+
diff --git a/testing/lomiri-libusermetrics/APKBUILD b/testing/lomiri-libusermetrics/APKBUILD
new file mode 100644
index 00000000000..8f42fa463b8
--- /dev/null
+++ b/testing/lomiri-libusermetrics/APKBUILD
@@ -0,0 +1,56 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Luca Weiss <luca@z3ntu.xyz>
+pkgname=lomiri-libusermetrics
+pkgver=1.3.2
+pkgrel=0
+pkgdesc='Library for exporting anonymous metrics about users'
+arch="all !armhf" # blocked by qt5-qtxmlpatterns-dev
+url="https://gitlab.com/ubports/development/core/libusermetrics"
+license="GPL-3.0-only AND LGPL-3.0-only AND LGPL-2.1-only"
+depends_dev="
+ click-dev
+ gsettings-qt-dev
+ libapparmor-dev
+ qdjango-dev
+ qt5-qtxmlpatterns-dev
+ "
+makedepends="
+ $depends_dev
+ cmake-extras
+ doxygen
+ gmock
+ gtest-dev
+ intltool
+ libapparmor
+ libqtdbustest
+ qt5-qtbase-dev
+ samurai
+ "
+checkdepends="dbus"
+source="https://gitlab.com/ubports/development/core/libusermetrics/-/archive/$pkgver/libusermetrics-$pkgver.tar.gz
+ 0001-Use-CMAKE_INSTALL_FULL_-for-installing.patch
+ "
+subpackages="$pkgname-dev $pkgname-doc $pkgname-lang"
+builddir="$srcdir/libusermetrics-$pkgver"
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=None
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+6e790903e386f32585646c04867b49200acde335b69b16049c11a0a5db1402dee0bbabf16c89cd967efd0eca8e9bd3af93ba01f40b1d5bf0a90534d7f21a570e libusermetrics-1.3.2.tar.gz
+eb65d7bfcf5ffc0b71dc16fd847e999bea0976a04919afb61cdd1ec789015699693912aeef862576ede7734274b103bd0c0aab554967d99d8fc7470dd3bbf361 0001-Use-CMAKE_INSTALL_FULL_-for-installing.patch
+"
diff --git a/testing/lomiri-location-service/APKBUILD b/testing/lomiri-location-service/APKBUILD
new file mode 100644
index 00000000000..af45a93b18b
--- /dev/null
+++ b/testing/lomiri-location-service/APKBUILD
@@ -0,0 +1,62 @@
+# Maintainer: Luca Weiss <luca@z3ntu.xyz>
+pkgname=lomiri-location-service
+pkgver=3.1.0
+pkgrel=0
+pkgdesc="Location service aggregating position/velocity/heading updates and exporting them over dbus"
+arch="all"
+url="https://gitlab.com/ubports/development/core/location-service"
+license="GPL-3.0-only AND LGPL-3.0-only"
+depends_dev="
+ boost-dev
+ dbus-cpp-dev
+ dbus-dev
+ gflags-dev
+ glog-dev
+ gpsd-dev
+ json-c-dev
+ libapparmor-dev
+ lomiri-trust-store-dev
+ net-cpp-dev
+ process-cpp-dev
+ properties-cpp-dev
+ qt5-qtbase-dev
+ qt5-qtlocation-dev
+ "
+makedepends="$depends_dev
+ cmake-extras
+ gettext
+ gmock
+ gtest-dev
+ samurai
+ "
+checkdepends="coreutils"
+source="https://gitlab.com/ubports/development/core/location-service/-/archive/$pkgver/location-service-$pkgver.tar.gz
+ cstdint.patch
+ "
+subpackages="$pkgname-dev $pkgname-doc $pkgname-lang"
+builddir="$srcdir/location-service-$pkgver"
+# tests try to write to /var/lib/lomiri-location-service/config.ini
+options="!check"
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=None \
+ -DLOCATION_SERVICE_ENABLE_GPS_PROVIDER=OFF
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+cb336690469c97780348de86ba6881228160f3f7ef5c548cd7238fcaeca5f35b1fbd2fb5897d20a805e922b63e2592c159d93747ecfdd7ef94b40c4d5b708838 location-service-3.1.0.tar.gz
+a593923e4a997977bdab1b7e72bfefbe401c5cb12c15d137e67c7e3527d3b0cd2be10a376140f081a5922d347bb5bce4c88140f33e53f1580bfdaad2a9f36f46 cstdint.patch
+"
diff --git a/testing/lomiri-location-service/cstdint.patch b/testing/lomiri-location-service/cstdint.patch
new file mode 100644
index 00000000000..bd0c01e4ec8
--- /dev/null
+++ b/testing/lomiri-location-service/cstdint.patch
@@ -0,0 +1,24 @@
+diff --git a/src/location_service/com/lomiri/location/satellite_based_positioning_state.cpp b/src/location_service/com/lomiri/location/satellite_based_positioning_state.cpp
+index 022b595..ceadd6a 100644
+--- a/src/location_service/com/lomiri/location/satellite_based_positioning_state.cpp
++++ b/src/location_service/com/lomiri/location/satellite_based_positioning_state.cpp
+@@ -20,6 +20,7 @@
+
+ #include <iostream>
+ #include <unordered_map>
++#include <cstdint>
+
+ namespace location = com::lomiri::location;
+
+diff --git a/src/location_service/com/lomiri/location/wifi_and_cell_reporting_state.cpp b/src/location_service/com/lomiri/location/wifi_and_cell_reporting_state.cpp
+index 4ef18a2..f22b0f6 100644
+--- a/src/location_service/com/lomiri/location/wifi_and_cell_reporting_state.cpp
++++ b/src/location_service/com/lomiri/location/wifi_and_cell_reporting_state.cpp
+@@ -20,6 +20,7 @@
+
+ #include <iostream>
+ #include <unordered_map>
++#include <cstdint>
+
+ namespace location = com::lomiri::location;
+
diff --git a/testing/lomiri-notifications/APKBUILD b/testing/lomiri-notifications/APKBUILD
new file mode 100644
index 00000000000..e65270c2514
--- /dev/null
+++ b/testing/lomiri-notifications/APKBUILD
@@ -0,0 +1,41 @@
+# Maintainer: Luca Weiss <luca@z3ntu.xyz>
+# Contributor: Brandon Boese <brandonboese@protonmail.com>
+pkgname=lomiri-notifications
+pkgver=1.3.0
+pkgrel=0
+pkgdesc="An implementation of the Free Desktop Notification server for Lomiri"
+url="https://gitlab.com/ubports/development/core/lomiri-notifications"
+arch="all"
+license="GPL-3.0-only"
+makedepends="
+ cmake
+ libqtdbustest
+ lomiri-api-dev
+ qt5-qtbase-dev
+ qt5-qtdeclarative-dev
+ qt5-qtquickcontrols2-dev
+ samurai
+ "
+source="https://gitlab.com/ubports/development/core/lomiri-notifications/-/archive/$pkgver/lomiri-notifications-$pkgver.tar.gz"
+options="!check" # tests fail
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=None
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+5e60238ee5c926324cd9749e425e3da62ff27634e31c4db22e328dd4e9508e15ff1cba28aade48982f9d9d884fcb6720f0bb32e8c89e8ede35db1dcd8e433f14 lomiri-notifications-1.3.0.tar.gz
+"
diff --git a/testing/lomiri-schemas/0001-data-schemas-com.lomiri.Shell.gschema.xml.in-Add-log.patch b/testing/lomiri-schemas/0001-data-schemas-com.lomiri.Shell.gschema.xml.in-Add-log.patch
new file mode 100644
index 00000000000..551d0b8b833
--- /dev/null
+++ b/testing/lomiri-schemas/0001-data-schemas-com.lomiri.Shell.gschema.xml.in-Add-log.patch
@@ -0,0 +1,31 @@
+From 533ef3e23f65fb87042a21fde421b6a3a653032b Mon Sep 17 00:00:00 2001
+From: Brandon Boese <brandonboese@protonmail.com>
+Date: Fri, 22 Mar 2024 19:00:35 -0400
+Subject: [PATCH] data/schemas/com.lomiri.Shell.gschema.xml.in: Add
+ logo-picture-uri
+
+---
+ data/schemas/com.lomiri.Shell.gschema.xml.in | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git a/data/schemas/com.lomiri.Shell.gschema.xml.in b/data/schemas/com.lomiri.Shell.gschema.xml.in
+index 692de37..5ef6947 100644
+--- a/data/schemas/com.lomiri.Shell.gschema.xml.in
++++ b/data/schemas/com.lomiri.Shell.gschema.xml.in
+@@ -272,6 +272,13 @@
+ <summary>The position of launcher.</summary>
+ <description>The position of launcher.</description>
+ </key>
++ <key name="logo-picture-uri" type="s">
++ <default>'file:///usr/share/lomiri/Launcher/graphics/home.svg'</default>
++ <summary>Logo URI to be displayed on the launcher</summary>
++ <description>
++ URI to use for the launcher's logo. Only .svg files are supported.
++ </description>
++ </key>
+ </schema>
+ <schema path="/com/lomiri/shell/devices/" id="com.lomiri.Shell.Devices" gettext-domain="lomiri">
+ <key type="as" name="blacklist">
+--
+2.44.0
+
diff --git a/testing/lomiri-schemas/APKBUILD b/testing/lomiri-schemas/APKBUILD
new file mode 100644
index 00000000000..a2c47dacf88
--- /dev/null
+++ b/testing/lomiri-schemas/APKBUILD
@@ -0,0 +1,38 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Luca Weiss <luca@z3ntu.xyz>
+pkgname=lomiri-schemas
+pkgver=0.1.4
+pkgrel=1
+pkgdesc="GSettings / AccountsService schema files for Lomiri"
+arch="noarch"
+url="https://gitlab.com/ubports/development/core/lomiri-schemas"
+license="LGPL-2.1-or-later"
+makedepends="
+ cmake
+ cmake-extras
+ glib-dev
+ intltool
+ "
+source="https://gitlab.com/ubports/development/core/lomiri-schemas/-/archive/$pkgver/lomiri-schemas-$pkgver.tar.gz
+ 0001-data-schemas-com.lomiri.Shell.gschema.xml.in-Add-log.patch
+ "
+options="!check" # No tests
+
+build() {
+ # Doesn't build with Ninja backend:
+ # ninja: multiple rules generate 'data/schemas/com.lomiri.Shell.gschema.xml'
+ cmake -B build \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DCMAKE_BUILD_TYPE=None
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+a77f3591c0e5e58683ecd94964b232db69d6eaf97623ca554c03f33c7711c1638372f9274608d77838c6228a46c8379953766124c4b85ca49987a3a6a77b0fa0 lomiri-schemas-0.1.4.tar.gz
+ff1397970b31179a1c9538bf3d929f06d9667024df202ad50d2727cd91e0979e273d9ec77bff4a109c6e942ecc74dde60704843c19dd84a5fabf4aeb91abf239 0001-data-schemas-com.lomiri.Shell.gschema.xml.in-Add-log.patch
+"
diff --git a/testing/lomiri-settings-components/APKBUILD b/testing/lomiri-settings-components/APKBUILD
new file mode 100644
index 00000000000..a4d4df26e29
--- /dev/null
+++ b/testing/lomiri-settings-components/APKBUILD
@@ -0,0 +1,42 @@
+# Maintainer: Luca Weiss <luca@z3ntu.xyz>
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Contributor: Antoni Aloy <aaloytorrens@gmail.com>
+pkgname=lomiri-settings-components
+pkgver=1.1.1
+pkgrel=0
+pkgdesc="Lomiri settings Components"
+arch="all"
+url="https://gitlab.com/ubports/development/core/lomiri-settings-components"
+license="GPL-3.0-only AND LGPL-3.0-only"
+makedepends="
+ cmake
+ cmake-extras
+ qt5-qtdeclarative-dev
+ samurai
+ "
+source="https://gitlab.com/ubports/development/core/lomiri-settings-components/-/archive/$pkgver/lomiri-settings-components-$pkgver.tar
+ qmltestrunner.patch
+ "
+subpackages="$pkgname-lang"
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=None
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+21e170a558f4d34d5e06918d0b63ae95eb6791b2fdbfe5438dfbdf61c87abcbbd37149dd3f35158a775608db0257f503b3fe0f8ee78dd924c96cd36fa51d2b1b lomiri-settings-components-1.1.1.tar
+0cbe24ba24468ccfae80b6d6b49c68b55e44561ac7914645746af15ee252c12341f2b401390cffbed520963d1cb7da6980f99520ee820528de964b8a714b87b4 qmltestrunner.patch
+"
diff --git a/testing/lomiri-settings-components/qmltestrunner.patch b/testing/lomiri-settings-components/qmltestrunner.patch
new file mode 100644
index 00000000000..d98bb704de7
--- /dev/null
+++ b/testing/lomiri-settings-components/qmltestrunner.patch
@@ -0,0 +1,29 @@
+diff --git a/cmake/modules/QmlTest.cmake b/cmake/modules/QmlTest.cmake
+index 42d5c49..3ccd6ac 100644
+--- a/cmake/modules/QmlTest.cmake
++++ b/cmake/modules/QmlTest.cmake
+@@ -65,9 +65,9 @@ endfunction()
+ # This function wraps add_executable_test, see below for available arguments.
+
+ function(add_qml_unittest PATH COMPONENT_NAME)
+- import_executables(qmltestrunner)
++ import_executables(qmltestrunner-qt5)
+
+- add_executable_test(${COMPONENT_NAME} qmltestrunner
++ add_executable_test(${COMPONENT_NAME} qmltestrunner-qt5
+ ${ARGN}
+ ARGS -input ${CMAKE_CURRENT_SOURCE_DIR}/${PATH}/tst_${COMPONENT_NAME}.qml ${QMLTEST_ARGS}
+ )
+@@ -84,10 +84,10 @@ endfunction()
+ # This function wraps add_manual_test, see below for available arguments.
+
+ function(add_manual_qml_test PATH COMPONENT_NAME)
+- import_executables(qmlscene)
++ import_executables(qmlscene-qt5)
+ cmake_parse_arguments(QMLTEST "${QMLTEST_OPTIONS}" "${QMLTEST_SINGLE}" "${QMLTEST_MULTI}" ${ARGN})
+
+- add_manual_test(${COMPONENT_NAME} qmlscene
++ add_manual_test(${COMPONENT_NAME} qmlscene-qt5
+ ${ARGN}
+ ARGS ${CMAKE_CURRENT_SOURCE_DIR}/${PATH}/tst_${COMPONENT_NAME}.qml ${QMLTEST_ARGS}
+ )
diff --git a/testing/lomiri-sounds/APKBUILD b/testing/lomiri-sounds/APKBUILD
new file mode 100644
index 00000000000..700e495ca79
--- /dev/null
+++ b/testing/lomiri-sounds/APKBUILD
@@ -0,0 +1,30 @@
+# Maintainer: Brandon Boese <brandonboese@protonmail.com>
+pkgname=lomiri-sounds
+pkgver=22.02
+pkgrel=0
+pkgdesc="Ringtones and notification tones recommended for the Lomiri stack"
+url="https://gitlab.com/ubports/development/apps/lomiri-sounds"
+arch="noarch"
+license="CC0-1.0 AND CC-BY-3.0 AND CC-BY-SA-3.0 AND CC-BY-4.0"
+source="https://gitlab.com/ubports/development/core/lomiri-sounds/-/archive/$pkgver/lomiri-sounds-$pkgver.tar.gz"
+makedepends="
+ cmake
+ samurai
+ "
+options="!check" # no tests
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DCMAKE_BUILD_TYPE=None
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+759e0ce2d38b4463533cb4d6869cabdb90d7b9fcb05b833929eb1318f8ab5e7ae93078da3a25015d6874ab6bb79d3048004d9502ca6e0d5a0a49833fc2c1982f lomiri-sounds-22.02.tar.gz
+"
diff --git a/testing/lomiri-system-settings/0001-Migrate-to-upstream-maliit-keyboard.patch b/testing/lomiri-system-settings/0001-Migrate-to-upstream-maliit-keyboard.patch
new file mode 100644
index 00000000000..616110d2cca
--- /dev/null
+++ b/testing/lomiri-system-settings/0001-Migrate-to-upstream-maliit-keyboard.patch
@@ -0,0 +1,81 @@
+From c4873925dbe4eaa5ba9f8fc6884abbbb31fc7a22 Mon Sep 17 00:00:00 2001
+From: Brandon Boese <brandonboese@protonmail.com>
+Date: Sat, 14 Oct 2023 02:35:10 -0400
+Subject: [PATCH 1/2] Migrate to upstream maliit keyboard
+
+---
+ plugins/language/PageComponent.qml | 2 +-
+ plugins/language/SpellChecking.qml | 2 +-
+ plugins/language/ThemeValues.qml | 2 +-
+ plugins/language/onscreenkeyboard-plugin.cpp | 2 +-
+ plugins/sound/PageComponent.qml | 2 +-
+ 5 files changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/plugins/language/PageComponent.qml b/plugins/language/PageComponent.qml
+index 02c0369e..30cdcfda 100644
+--- a/plugins/language/PageComponent.qml
++++ b/plugins/language/PageComponent.qml
+@@ -106,7 +106,7 @@ ItemPage {
+ GSettings {
+ id: settings
+
+- schema.id: "com.lomiri.keyboard.maliit"
++ schema.id: "org.maliit.keyboard.maliit"
+ }
+
+ GSettings {
+diff --git a/plugins/language/SpellChecking.qml b/plugins/language/SpellChecking.qml
+index 0c184516..dc6f6980 100644
+--- a/plugins/language/SpellChecking.qml
++++ b/plugins/language/SpellChecking.qml
+@@ -36,7 +36,7 @@ ItemPage {
+ GSettings {
+ id: settings
+
+- schema.id: "com.lomiri.keyboard.maliit"
++ schema.id: "org.maliit.keyboard.maliit"
+ }
+
+ ListItem.Standard {
+diff --git a/plugins/language/ThemeValues.qml b/plugins/language/ThemeValues.qml
+index d7da214d..e8867cf8 100644
+--- a/plugins/language/ThemeValues.qml
++++ b/plugins/language/ThemeValues.qml
+@@ -35,7 +35,7 @@ ItemPage {
+ GSettings {
+ id: settings
+
+- schema.id: "com.lomiri.keyboard.maliit"
++ schema.id: "org.maliit.keyboard.maliit"
+
+ onChanged: {
+ var curIndex = themeModel.findIndex(function(data){return data.value === value})
+diff --git a/plugins/language/onscreenkeyboard-plugin.cpp b/plugins/language/onscreenkeyboard-plugin.cpp
+index 9d96b1e4..a98b7010 100644
+--- a/plugins/language/onscreenkeyboard-plugin.cpp
++++ b/plugins/language/onscreenkeyboard-plugin.cpp
+@@ -24,7 +24,7 @@
+ #include "onscreenkeyboard-plugin.h"
+ #include "qstringliteral.h"
+
+-#define LOMIRI_KEYBOARD_SCHEMA_ID "com.lomiri.keyboard.maliit"
++#define LOMIRI_KEYBOARD_SCHEMA_ID "org.maliit.keyboard.maliit"
+
+ #define KEY_ENABLED_LAYOUTS "enabled-languages"
+ #define KEY_CURRENT_LAYOUT "active-language"
+diff --git a/plugins/sound/PageComponent.qml b/plugins/sound/PageComponent.qml
+index 50e16bb1..ea15cbeb 100644
+--- a/plugins/sound/PageComponent.qml
++++ b/plugins/sound/PageComponent.qml
+@@ -44,7 +44,7 @@ ItemPage {
+ GSettings {
+ id: keyboardSettings
+
+- schema.id: "com.lomiri.keyboard.maliit"
++ schema.id: "org.maliit.keyboard.maliit"
+ }
+
+ GSettings {
+--
+2.44.0
+
diff --git a/testing/lomiri-system-settings/0002-Use-qmltestrunner-qt5.patch b/testing/lomiri-system-settings/0002-Use-qmltestrunner-qt5.patch
new file mode 100644
index 00000000000..cb82ba15877
--- /dev/null
+++ b/testing/lomiri-system-settings/0002-Use-qmltestrunner-qt5.patch
@@ -0,0 +1,25 @@
+From 32df5272bd8c58d5e0fa8a249f10011d046d4a87 Mon Sep 17 00:00:00 2001
+From: Luca Weiss <luca@z3ntu.xyz>
+Date: Mon, 18 May 2020 21:37:40 +0200
+Subject: [PATCH 2/2] Use qmltestrunner-qt5
+
+---
+ cmake/QmlTest.cmake | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/cmake/QmlTest.cmake b/cmake/QmlTest.cmake
+index 253b1206..dbdf6668 100644
+--- a/cmake/QmlTest.cmake
++++ b/cmake/QmlTest.cmake
+@@ -19,7 +19,7 @@
+ # qmltest_DEFAULT_IMPORT_PATHS
+ # qmltest_DEFAULT_PROPERTIES
+
+-find_program(qmltestrunner_exe qmltestrunner)
++find_program(qmltestrunner_exe qmltestrunner-qt5)
+ find_program(qmlscene_exe qmlscene)
+ find_program(gcc_exe gcc)
+
+--
+2.44.0
+
diff --git a/testing/lomiri-system-settings/APKBUILD b/testing/lomiri-system-settings/APKBUILD
new file mode 100644
index 00000000000..056ebab068d
--- /dev/null
+++ b/testing/lomiri-system-settings/APKBUILD
@@ -0,0 +1,80 @@
+# Contributor: Brandon Boese <brandonboese@protonmail.com>
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Luca Weiss <luca@z3ntu.xyz>
+pkgname=lomiri-system-settings
+pkgver=1.1.0
+pkgrel=0
+pkgdesc="System Settings application for Lomiri"
+url="https://gitlab.com/ubports/development/core/lomiri-system-settings"
+# armhf: blocked by lomiri-ui-toolkit
+# s390x, riscv64, ppc64le: blocked by ayatana-indicator-datetime
+arch="all !armhf !s390x !riscv64 !ppc64le"
+license="GPL-3.0-only"
+depends="
+ accountsservice
+ ayatana-indicator-bluetooth
+ ayatana-indicator-datetime
+ ayatana-indicator-power
+ lomiri-content-hub
+ lomiri-indicator-network
+ lomiri-settings-components
+ lomiri-ui-toolkit
+ qt5-qtmultimedia
+ "
+makedepends="
+ accountsservice-dev
+ click-dev
+ cmake
+ cmake-extras
+ geonames-dev
+ gnome-desktop-dev
+ gsettings-qt-dev
+ icu-dev
+ intltool
+ libqtdbusmock
+ networkmanager-dev
+ qt5-qtbase-dev
+ qt5-qtdeclarative
+ qt5-qtdeclarative-dev
+ samurai
+ upower-dev
+ "
+checkdepends="
+ mesa-dri-gallium
+ py3-dbusmock
+ py3-xdg
+ xvfb-run
+ "
+subpackages="$pkgname-lang"
+source="https://gitlab.com/ubports/development/core/lomiri-system-settings/-/archive/$pkgver/lomiri-system-settings-$pkgver.tar.gz
+ 0001-Migrate-to-upstream-maliit-keyboard.patch
+ 0002-Use-qmltestrunner-qt5.patch
+ "
+options="!check" # fails tst-bluetooth-device
+# Somehow on armv7 the tests try to use zink from mesa which doesn't work
+case "$CARCH" in
+ armv7) options="!check" ;;
+esac
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=None
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+ebdedf53d0ac7a68d5742d751ad14181b47928aa8083d9fe8198e8700e04763f42536f725fc77d06fbc8356a5f0ccbc737adc620535287fc45a9ef99b8303396 lomiri-system-settings-1.1.0.tar.gz
+ff645e7d129e09cf2545ac8298244dd03cd6764362350e4d564c9d806202123ff666428a54eda6bb37e6b88d5dcee944a771a726c8261299c4b9b93920fafdb9 0001-Migrate-to-upstream-maliit-keyboard.patch
+169dda7b2fab1e6e7b791579aa15eb79b08442463a71a786d7b3506c3ae8ad14a9000d3ca8b67b6d4facf81066fe210c62b6e130143f4f04de604ea233307412 0002-Use-qmltestrunner-qt5.patch
+"
diff --git a/testing/lomiri-telephony-service/APKBUILD b/testing/lomiri-telephony-service/APKBUILD
new file mode 100644
index 00000000000..127911771bf
--- /dev/null
+++ b/testing/lomiri-telephony-service/APKBUILD
@@ -0,0 +1,61 @@
+# Maintainer: Luca Weiss <luca@z3ntu.xyz>
+# Contributor: Brandon Boese <brandonboese@protonmail.com>
+pkgname=lomiri-telephony-service
+pkgver=0.5.3
+pkgrel=0
+pkgdesc="Backend dispatcher service for various mobile phone related operations"
+url="https://gitlab.com/ubports/development/core/telephony-service"
+# armhf: blocked by lomiri-libusermetrics
+# s390x/riscv64: blocked by ayatana-indicator-messages
+arch="all !armhf !s390x !riscv64"
+license="GPL-3.0-only"
+depends="
+ dconf
+ telepathy-mission-control
+ "
+makedepends="
+ ayatana-indicator-messages-dev
+ cmake
+ libnotify-dev
+ libphonenumber-dev
+ libqtdbustest
+ lomiri-api-dev
+ lomiri-history-service-dev
+ lomiri-libusermetrics-dev
+ lomiri-url-dispatcher-dev
+ pulseaudio-dev
+ qt5-qtbase-dev
+ qt5-qtdeclarative-dev
+ qt5-qtfeedback-dev
+ qt5-qtmultimedia-dev
+ qt5-qtpim-dev
+ telepathy-qt-dev
+ samurai
+ "
+checkdepends="dbus-test-runner xvfb-run"
+source="https://gitlab.com/ubports/development/core/telephony-service/-/archive/$pkgver/telephony-service-$pkgver.tar.gz"
+subpackages="$pkgname-lang"
+builddir="$srcdir/telephony-service-$pkgver"
+options="!check" # Various tests hang
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DCMAKE_INSTALL_SYSCONFDIR=/etc \
+ -DCMAKE_INSTALL_LOCALSTATEDIR=/var \
+ -DSKIP_QML_TESTS=ON
+ cmake --build build
+}
+
+check() {
+ xvfb-run ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+f0632c9008378568c3b4fa8b93216afc9e004d9313865487c1c06866c9bfddb4e96071411721c2785960a33631dd3ade7b2491333ad2c17c8e40626e1e5c5b2a telephony-service-0.5.3.tar.gz
+"
diff --git a/testing/lomiri-terminal-app/APKBUILD b/testing/lomiri-terminal-app/APKBUILD
new file mode 100644
index 00000000000..12302f26396
--- /dev/null
+++ b/testing/lomiri-terminal-app/APKBUILD
@@ -0,0 +1,54 @@
+# Maintainer: Luca Weiss <luca@z3ntu.xyz>
+# Contributor: Brandon Boese <brandonboese@protonmail.com>
+pkgname=lomiri-terminal-app
+pkgver=2.0.2
+pkgrel=0
+pkgdesc="A terminal app for desktop and mobile devices"
+url="https://gitlab.com/ubports/development/apps/lomiri-terminal-app"
+# armhf: blocked by lomiri-ui-toolkit
+arch="all !armhf"
+license="GPL-3.0-only"
+depends="
+ gsettings-qt
+ lomiri-ui-extras
+ lomiri-ui-toolkit
+ qmltermwidget
+ "
+makedepends="
+ click-dev
+ cmake
+ cmake-extras
+ gnome-desktop-dev
+ lomiri-trust-store-dev
+ qt5-qtbase-dev
+ qt5-qtdeclarative-dev
+ samurai
+ "
+checkdepends="
+ py3-dbusmock
+ py3-xdg
+ xvfb-run
+ "
+source="https://gitlab.com/ubports/development/apps/lomiri-terminal-app/-/archive/v$pkgver/lomiri-terminal-app-v$pkgver.tar.gz"
+subpackages="$pkgname-doc $pkgname-lang"
+builddir="$srcdir/$pkgname-v$pkgver"
+options="!check" # no tests
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCLICK_MODE=OFF \
+ -DINSTALL_TESTS=OFF
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+86ef104e5ee98fbaec876b2ca2c8f013f0e6228ecd80afc68c111522ef1536757bfabe52cffc22b9e12f5d38dbe195835dfe728fb62363f9c2c15c1d28c37be2 lomiri-terminal-app-v2.0.2.tar.gz
+"
diff --git a/testing/lomiri-thumbnailer/APKBUILD b/testing/lomiri-thumbnailer/APKBUILD
new file mode 100644
index 00000000000..1f5cadf7dff
--- /dev/null
+++ b/testing/lomiri-thumbnailer/APKBUILD
@@ -0,0 +1,74 @@
+# Maintainer: Luca Weiss <luca@z3ntu.xyz>
+# Contributor: Brandon Boese <brandonboese@protonmail.com>
+pkgname=lomiri-thumbnailer
+pkgver=3.0.3
+pkgrel=0
+pkgdesc="D-Bus service for out of process thumbnailing"
+url="https://gitlab.com/ubports/development/core/lomiri-thumbnailer"
+arch="all"
+license="GPL-3.0-only"
+depends="
+ dconf
+ "
+depends_dev="
+ boost-dev
+ gdk-pixbuf-dev
+ gst-plugins-base-dev
+ gstreamer-dev
+ gtest-dev
+ leveldb-dev
+ libapparmor-dev
+ libexif-dev
+ librsvg-dev
+ lomiri-api-dev
+ persistent-cache-cpp-dev
+ qt5-qtdeclarative-dev
+ qt5-qtquickcontrols2-dev
+ taglib-dev
+ "
+makedepends="
+ $depends_dev
+ cmake
+ cmake-extras
+ doxygen
+ gmock
+ libqtdbustest
+ samurai
+ "
+checkdepends="
+ xvfb-run
+ "
+subpackages="$pkgname-dev $pkgname-doc"
+source="https://gitlab.com/ubports/development/core/lomiri-thumbnailer/-/archive/$pkgver/lomiri-thumbnailer-$pkgver.tar.gz
+ fix-googletest.patch
+ disable-qml-and-dbus-tests.patch
+ manually-disable-tests.patch
+ "
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DCMAKE_INSTALL_SYSCONFDIR=/etc \
+ -DCMAKE_INSTALL_LOCALSTATEDIR=/var
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+ # uncompressed man pages
+ rm "$pkgdir"/usr/share/man/man1/lomiri-thumbnailer-admin.1
+ rm "$pkgdir"/usr/share/man/man1/thumbnailer-service.1
+ rm "$pkgdir"/usr/share/man/man5/thumbnailer-settings.5
+}
+
+sha512sums="
+4f64cfaf79273edcd9cf1a27b23b2d55fdc06d61a0e80f4be095b9034c269a28535ece5f558dd1b42bae4465da1444b5eb1716c2c94a34533fefc8aaae5a15f7 lomiri-thumbnailer-3.0.3.tar.gz
+51f9aea7dd5ebc66012df4efcaf6f84bdfdb43ac3c0168e662ad6d8f5029aa806aea876ecb9b6c78376feff80d6937ff1de868ca20301814dd99a93c8baf5978 fix-googletest.patch
+27181c3acd8ddd17f4b85c331c98143e45e440d7411dfa1fa6252be9013b2804291f9d194579163925a97fc9fdb2a52fc572aec6bb8230d2fd49cd8f29730d02 disable-qml-and-dbus-tests.patch
+664007046cec229fb9ace9428a512064aa4e4993a451a8aa2c597d3e1088ddd7569fd8a6811148fabd1ec9dd9fb3e3e8ba2dfb7a0d497b40cfa42653e7ff14d9 manually-disable-tests.patch
+"
diff --git a/testing/lomiri-thumbnailer/disable-qml-and-dbus-tests.patch b/testing/lomiri-thumbnailer/disable-qml-and-dbus-tests.patch
new file mode 100644
index 00000000000..10efa5a7611
--- /dev/null
+++ b/testing/lomiri-thumbnailer/disable-qml-and-dbus-tests.patch
@@ -0,0 +1,42 @@
+From 06caff49c352aa090f17d2fec41273f8441cea1d Mon Sep 17 00:00:00 2001
+From: Brandon Boese <brandonboese@protonmail.com>
+Date: Tue, 17 Oct 2023 21:05:45 -0400
+Subject: [PATCH] disable-qml-and-dbus-tests
+
+---
+ tests/dbus/CMakeLists.txt | 1 -
+ tests/qml/CMakeLists.txt | 11 -----------
+ 2 files changed, 12 deletions(-)
+
+diff --git a/tests/dbus/CMakeLists.txt b/tests/dbus/CMakeLists.txt
+index 1f42ad1..9be6696 100644
+--- a/tests/dbus/CMakeLists.txt
++++ b/tests/dbus/CMakeLists.txt
+@@ -8,5 +8,4 @@ target_link_libraries(dbus_test
+ Qt5::Test
+ gtest
+ )
+-add_test(dbus dbus_test)
+ add_dependencies(dbus_test thumbnailer-service)
+diff --git a/tests/qml/CMakeLists.txt b/tests/qml/CMakeLists.txt
+index a165c8a..ae47bbd 100644
+--- a/tests/qml/CMakeLists.txt
++++ b/tests/qml/CMakeLists.txt
+@@ -8,14 +8,3 @@ target_link_libraries(qml_test
+ Qt5::Test
+ )
+ add_dependencies(qml_test thumbnailer-service LomiriThumbnailer-qml)
+-
+-if (${CMAKE_LIBRARY_ARCHITECTURE} STREQUAL "powerpc-linux-gnu"
+- OR ${CMAKE_LIBRARY_ARCHITECTURE} STREQUAL "s390x-linux-gnu")
+- message("Skipping qml test for ${CMAKE_LIBRARY_ARCHITECTURE}")
+-else()
+- add_test(qml ${CMAKE_SOURCE_DIR}/tools/run-xvfb.sh ./qml_test -import ${CMAKE_BINARY_DIR}/plugins)
+- # Clear some environment variables that can interfere with the tests
+- set_tests_properties(qml PROPERTIES
+- ENVIRONMENT "DBUS_SESSION_BUS_ADDRESS=;QT_QPA_PLATFORMTHEME="
+- )
+-endif()
+--
+2.42.0
+
diff --git a/testing/lomiri-thumbnailer/fix-googletest.patch b/testing/lomiri-thumbnailer/fix-googletest.patch
new file mode 100644
index 00000000000..41f648cef26
--- /dev/null
+++ b/testing/lomiri-thumbnailer/fix-googletest.patch
@@ -0,0 +1,14 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 57a2816..d925953 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -23,7 +23,7 @@ endif()
+
+ set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake ${CMAKE_MODULE_PATH})
+
+-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} --std=c++11 -Wall -pedantic -Wextra -fvisibility=hidden")
++set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} --std=c++14 -Wall -pedantic -Wextra -fvisibility=hidden")
+
+ # Some additional warnings not included by the general flags set above.
+ set(EXTRA_C_WARNINGS "-Wcast-align -Wcast-qual -Wformat -Wredundant-decls -Wswitch-default")
+
diff --git a/testing/lomiri-thumbnailer/manually-disable-tests.patch b/testing/lomiri-thumbnailer/manually-disable-tests.patch
new file mode 100644
index 00000000000..0ceec7ddade
--- /dev/null
+++ b/testing/lomiri-thumbnailer/manually-disable-tests.patch
@@ -0,0 +1,24 @@
+From ce210b9cb0be02dc51bf01de5e52ced27e10e24f Mon Sep 17 00:00:00 2001
+From: Brandon Boese <brandonboese@protonmail.com>
+Date: Tue, 17 Oct 2023 21:40:21 -0400
+Subject: [PATCH] manually disable tests
+
+---
+ CMakeLists.txt | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 5d8994c..e60d65f 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -176,7 +176,6 @@ add_subdirectory(plugins/Lomiri/Thumbnailer.0.1)
+ if (${ENABLE_UBUNTU_COMPAT})
+ add_subdirectory(plugins/Ubuntu/Thumbnailer.0.1)
+ endif()
+-add_subdirectory(tests)
+ add_subdirectory(include)
+ add_subdirectory(man)
+ #add_subdirectory(doc)
+--
+2.42.0
+
diff --git a/testing/lomiri-trust-store/APKBUILD b/testing/lomiri-trust-store/APKBUILD
new file mode 100644
index 00000000000..cd89fb42fb9
--- /dev/null
+++ b/testing/lomiri-trust-store/APKBUILD
@@ -0,0 +1,56 @@
+# Maintainer: Luca Weiss <luca@z3ntu.xyz>
+pkgname=lomiri-trust-store
+pkgver=2.0.2
+pkgrel=0
+pkgdesc="API for creating, reading, updating and deleting trust requests answered by users"
+url="https://gitlab.com/ubports/development/core/trust-store"
+arch="all"
+license="LGPL-3.0-only"
+depends_dev="
+ boost-dev
+ dbus-cpp-dev
+ libapparmor-dev
+ mir-dev
+ process-cpp-dev
+ properties-cpp-dev
+ qt5-qtdeclarative-dev
+ "
+makedepends="
+ $depends_dev
+ cmake
+ cmake-extras
+ gmock
+ gtest-dev
+ libapparmor
+ samurai
+ "
+checkdepends="
+ coreutils
+ dbus
+ "
+source="https://gitlab.com/ubports/development/core/trust-store/-/archive/$pkgver/trust-store-$pkgver.tar.gz"
+subpackages="$pkgname-dev $pkgname-lang"
+builddir="$srcdir/trust-store-$pkgver"
+options="!check" # some tests fail
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DCMAKE_BUILD_TYPE=None \
+ -DTRUST_STORE_MIR_AGENT_ENABLED=OFF \
+ -DENABLE_WERROR=OFF
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+3dab27f752ad12845a41af04c3a749d89043a2d36cdd81f4705399144b7747f1f37142df8e30e70003ab42d75171e01e99bc6678d39e277f94eb0a8267c856b7 trust-store-2.0.2.tar.gz
+"
diff --git a/testing/lomiri-ui-extras/0004-Disable-tst_printers-unittest.patch b/testing/lomiri-ui-extras/0004-Disable-tst_printers-unittest.patch
new file mode 100644
index 00000000000..6b3c2af0008
--- /dev/null
+++ b/testing/lomiri-ui-extras/0004-Disable-tst_printers-unittest.patch
@@ -0,0 +1,25 @@
+Description: Disable failing tst_printers unittest.
+Author: Anton Gladky <gladk@debian.org>
+Bug-Debian: https://bugs.debian.org/1015103
+Forwarded: https://gitlab.com/ubports/development/core/lomiri-ui-extras/-/issues/67
+Last-Update: 2022-10-06
+
+--- lomiri-ui-extras-0.5.orig/tests/unittests/Printers/CMakeLists.txt
++++ lomiri-ui-extras-0.5/tests/unittests/Printers/CMakeLists.txt
+@@ -19,11 +19,11 @@ add_executable(testPrintersPrinterJob ts
+ target_link_libraries(testPrintersPrinterJob LomiriComponentsExtrasPrintersQml Qt5::Test Qt5::Gui)
+ add_test(tst_printerjob testPrintersPrinterJob)
+
+-add_executable(testPrintersPrinters tst_printers.cpp ${MOCK_SOURCES})
+-target_link_libraries(testPrintersPrinters LomiriComponentsExtrasPrintersQml Qt5::Test Qt5::Gui)
+-add_test(tst_printers testPrintersPrinters)
+-set_tests_properties(tst_printers PROPERTIES
+- ENVIRONMENT "XDG_DATA_DIRS=${CMAKE_CURRENT_SOURCE_DIR}/testdata")
++#add_executable(testPrintersPrinters tst_printers.cpp ${MOCK_SOURCES})
++#target_link_libraries(testPrintersPrinters LomiriComponentsExtrasPrintersQml Qt5::Test Qt5::Gui)
++#add_test(tst_printers testPrintersPrinters)
++#set_tests_properties(tst_printers PROPERTIES
++# ENVIRONMENT "XDG_DATA_DIRS=${CMAKE_CURRENT_SOURCE_DIR}/testdata")
+
+ add_executable(testPrintersPrinterModel tst_printermodel.cpp ${MOCK_SOURCES})
+ target_link_libraries(testPrintersPrinterModel LomiriComponentsExtrasPrintersQml Qt5::Test Qt5::Gui)
diff --git a/testing/lomiri-ui-extras/APKBUILD b/testing/lomiri-ui-extras/APKBUILD
new file mode 100644
index 00000000000..0309e98bf6d
--- /dev/null
+++ b/testing/lomiri-ui-extras/APKBUILD
@@ -0,0 +1,51 @@
+# Maintainer: Luca Weiss <luca@z3ntu.xyz>
+# Contributor: Brandon Boese <brandonboese@protonmail.com>
+pkgname=lomiri-ui-extras
+pkgver=0.6.3
+pkgrel=0
+pkgdesc='Misc Lomiri UI QML components'
+arch="all"
+url="https://gitlab.com/ubports/development/core/lomiri-ui-extras"
+license="GPL-3.0-only"
+makedepends="
+ cmake-extras
+ cups-dev
+ exiv2-dev
+ linux-pam-dev
+ qt5-qtbase-dev
+ qt5-qtdeclarative-dev
+ samurai
+ "
+checkdepends="
+ bash
+ dbus-test-runner
+ diffutils
+ grep
+ xvfb-run
+ "
+source="https://gitlab.com/ubports/development/core/lomiri-ui-extras/-/archive/$pkgver/lomiri-ui-extras-$pkgver.tar.gz
+ 0004-Disable-tst_printers-unittest.patch
+ "
+subpackages="$pkgname-lang"
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=None
+ cmake --build build
+}
+
+check() {
+ xvfb-run ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+bbbd45ec59cd7720b64659b29c5c26d76454c311a8ee886cd02073ad6110733c915006d943500f7238038a5cbbf823e81311b408d1ba59d4766d795c652a6b38 lomiri-ui-extras-0.6.3.tar.gz
+888a089cc548e2904a7c787d33edc24a1b140cc0371591594f6851dac7bccc62a07a32eab30d271421f4d9593d0490aaf57cd824883470ede4b44980f6bda997 0004-Disable-tst_printers-unittest.patch
+"
diff --git a/testing/lomiri-ui-toolkit/0001-Remove-debian-isms-from-test-runner.patch b/testing/lomiri-ui-toolkit/0001-Remove-debian-isms-from-test-runner.patch
new file mode 100644
index 00000000000..76b7fdead8f
--- /dev/null
+++ b/testing/lomiri-ui-toolkit/0001-Remove-debian-isms-from-test-runner.patch
@@ -0,0 +1,31 @@
+From 618fc59553bf8d15254e6d695908c982fbd21dae Mon Sep 17 00:00:00 2001
+From: Luca Weiss <luca@z3ntu.xyz>
+Date: Sun, 23 Aug 2020 14:09:54 +0200
+Subject: [PATCH 1/2] Remove debian-isms from test runner
+
+---
+ tests/unit/runtest.sh | 8 +-------
+ 1 file changed, 1 insertion(+), 7 deletions(-)
+
+diff --git a/tests/unit/runtest.sh b/tests/unit/runtest.sh
+index c19682df0..c426fe4d7 100755
+--- a/tests/unit/runtest.sh
++++ b/tests/unit/runtest.sh
+@@ -88,13 +88,7 @@ function create_test_cmd {
+ EXE=$(abspath $_TARGETPATH)
+ _CMD="-n $_TESTFILE -m 500"
+
+- DEB_HOST_ARCH=$(dpkg-architecture -qDEB_HOST_ARCH)
+- if [[ ${DEB_HOST_ARCH} =~ 'arm' ]]; then
+- _CMD="dbus-test-runner --task $EXE $_CMD"
+- else
+- _CMD="dbus-test-runner --task gdb -p --quiet $_CMD"
+- _CMD="$_CMD -p --batch -p -ex -p 'set print thread-events off' -p -ex -p run -p -ex -p bt -p --return-child-result -p --args -p $EXE"
+- fi
++ _CMD="dbus-test-runner --task $EXE $_CMD"
+
+ if [[ 'minimal custom' == *$_MINIMAL* ]]; then
+ _CMD="$_CMD -p -platform -p $_MINIMAL"
+--
+2.31.1
+
diff --git a/testing/lomiri-ui-toolkit/0002-Don-t-build-app-launch-profiler.patch b/testing/lomiri-ui-toolkit/0002-Don-t-build-app-launch-profiler.patch
new file mode 100644
index 00000000000..be9c33a1a72
--- /dev/null
+++ b/testing/lomiri-ui-toolkit/0002-Don-t-build-app-launch-profiler.patch
@@ -0,0 +1,25 @@
+From 481eb1c21cd60455737fa288a62941bd0aa12350 Mon Sep 17 00:00:00 2001
+From: Luca Weiss <luca@z3ntu.xyz>
+Date: Tue, 15 Sep 2020 17:48:47 +0200
+Subject: [PATCH 2/2] Don't build app-launch-profiler
+
+---
+ lomiri-sdk.pro | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/lomiri-sdk.pro b/lomiri-sdk.pro
+index a180b037f..e987f2b30 100644
+--- a/lomiri-sdk.pro
++++ b/lomiri-sdk.pro
+@@ -11,7 +11,7 @@ load(qt_parts)
+ src_uitk_launcher.subdir = lomiri-ui-toolkit-launcher
+ src_uitk_launcher.depends = sub-src
+
+-SUBDIRS += po app-launch-profiler src_uitk_launcher apicheck
++SUBDIRS += po src_uitk_launcher apicheck
+ !CONFIG(no_docs) {
+ SUBDIRS += documentation
+ }
+--
+2.31.1
+
diff --git a/testing/lomiri-ui-toolkit/APKBUILD b/testing/lomiri-ui-toolkit/APKBUILD
new file mode 100644
index 00000000000..01455bf5997
--- /dev/null
+++ b/testing/lomiri-ui-toolkit/APKBUILD
@@ -0,0 +1,63 @@
+# Maintainer: Luca Weiss <luca@z3ntu.xyz>
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+pkgname=lomiri-ui-toolkit
+pkgver=1.3.5100
+pkgrel=0
+pkgdesc="Qt Components for Lomiri"
+arch="all !armhf" # blocked by qt5-qtsystems-dev
+url="https://gitlab.com/ubports/development/core/lomiri-ui-toolkit"
+license="LGPL-3.0-only"
+depends="
+ qt5-qtfeedback
+ qt5-qtgraphicaleffects
+ "
+depends_dev="
+ eudev-dev
+ libevdev-dev
+ libnih-dev
+ libxi-dev
+ lttng-ust-dev
+ mir-dev
+ qt5-qtfeedback-dev
+ qt5-qtgraphicaleffects
+ qt5-qtpim-dev
+ qt5-qtsvg-dev
+ qt5-qtsystems-dev
+ "
+makedepends="
+ $depends_dev
+ qt5-qtdeclarative-dev
+ qt5-qttools-dev
+ "
+checkdepends="
+ bash
+ dbus-test-runner
+ diffutils
+ grep
+ xvfb-run
+ "
+source="https://gitlab.com/ubports/development/core/lomiri-ui-toolkit/-/archive/$pkgver/lomiri-ui-toolkit-$pkgver.tar.gz
+ 0001-Remove-debian-isms-from-test-runner.patch
+ 0002-Don-t-build-app-launch-profiler.patch
+ "
+subpackages="$pkgname-dev $pkgname-lang"
+options="!check" # Several tests fail
+
+build() {
+ qmake-qt5 CONFIG+=no_docs
+ make
+}
+
+check() {
+ xvfb-run make check
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+}
+
+sha512sums="
+42752f329ddbd8bf0f1411493c8826b9751681a007ced97a2a3441593ff7d5bb78f3ae3d849f3fa56a9a6b9a9d87a45ff571597ef1f4f33097fed2a9360ef67c lomiri-ui-toolkit-1.3.5100.tar.gz
+7423ea0f4edececdeab09c4c91686e981ecedc2b7b39d147d604eb1bd8cdb26a1c3b4fad848215a1a8db1197bd3a58fb82651b0e298c52181632ae629c307d9a 0001-Remove-debian-isms-from-test-runner.patch
+46a12139eeb09b4a7baba4c020103bff8c7885d65fc88ec2e2f4cbf6d93f0aed8d853da316619cb3bafdde5853517dab0b372132d91a03870b9e06a839a854df 0002-Don-t-build-app-launch-profiler.patch
+"
diff --git a/testing/lomiri-url-dispatcher/0001-remove-systemd.patch b/testing/lomiri-url-dispatcher/0001-remove-systemd.patch
new file mode 100644
index 00000000000..429af543f0e
--- /dev/null
+++ b/testing/lomiri-url-dispatcher/0001-remove-systemd.patch
@@ -0,0 +1,64 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 7d9d00b..55e1e12 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -90,9 +90,6 @@ else()
+ endif()
+ message("Installing DBus interfaces to ${DBUSIFACEDIR}")
+
+-pkg_check_modules(SYSTEMD REQUIRED systemd)
+-pkg_get_variable(SYSTEMD_USER_UNIT_DIR systemd systemduserunitdir)
+-
+ include_directories(${CMAKE_CURRENT_SOURCE_DIR})
+ include_directories(${CMAKE_CURRENT_BINARY_DIR})
+
+diff --git a/data/CMakeLists.txt b/data/CMakeLists.txt
+index 79f7547..e7e0a76 100644
+--- a/data/CMakeLists.txt
++++ b/data/CMakeLists.txt
+@@ -27,45 +27,6 @@ com.lomiri.URLDispatcher.xml
+ DESTINATION ${DBUSIFACEDIR}
+ )
+
+-###########################
+-# systemd
+-###########################
+-
+-configure_file(
+-lomiri-url-dispatcher.service.in
+-${CMAKE_CURRENT_BINARY_DIR}/lomiri-url-dispatcher.service
+-)
+-
+-configure_file(
+-lomiri-url-dispatcher-update-system-dir.path.in
+-${CMAKE_CURRENT_BINARY_DIR}/lomiri-url-dispatcher-update-system-dir.path
+-)
+-
+-configure_file(
+-lomiri-url-dispatcher-update-system-dir.service.in
+-${CMAKE_CURRENT_BINARY_DIR}/lomiri-url-dispatcher-update-system-dir.service
+-)
+-
+-configure_file(
+-lomiri-url-dispatcher-update-user-dir.path.in
+-${CMAKE_CURRENT_BINARY_DIR}/lomiri-url-dispatcher-update-user-dir.path
+-)
+-
+-configure_file(
+-lomiri-url-dispatcher-update-user-dir.service.in
+-${CMAKE_CURRENT_BINARY_DIR}/lomiri-url-dispatcher-update-user-dir.service
+-)
+-
+-install(
+-FILES
+-${CMAKE_CURRENT_BINARY_DIR}/lomiri-url-dispatcher.service
+-${CMAKE_CURRENT_BINARY_DIR}/lomiri-url-dispatcher-update-system-dir.path
+-${CMAKE_CURRENT_BINARY_DIR}/lomiri-url-dispatcher-update-system-dir.service
+-${CMAKE_CURRENT_BINARY_DIR}/lomiri-url-dispatcher-update-user-dir.path
+-${CMAKE_CURRENT_BINARY_DIR}/lomiri-url-dispatcher-update-user-dir.service
+-DESTINATION ${SYSTEMD_USER_UNIT_DIR}
+-)
+-
+ ###########################
+ # Click Hook
+ ###########################
diff --git a/testing/lomiri-url-dispatcher/APKBUILD b/testing/lomiri-url-dispatcher/APKBUILD
new file mode 100644
index 00000000000..6087708e00e
--- /dev/null
+++ b/testing/lomiri-url-dispatcher/APKBUILD
@@ -0,0 +1,56 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Luca Weiss <luca@z3ntu.xyz>
+pkgname=lomiri-url-dispatcher
+pkgver=0.1.3
+pkgrel=1
+pkgdesc="Service to allow sending of URLs and get handlers started"
+arch="all"
+url="https://gitlab.com/ubports/development/core/lomiri-url-dispatcher"
+license="LGPL-3.0-only"
+depends_dev="
+ click-dev
+ dbus-test-runner-dev
+ gtest-dev
+ json-glib-dev
+ libapparmor-dev
+ lomiri-app-launch-dev
+ "
+makedepends="
+ $depends_dev
+ cmake
+ cmake-extras
+ dbus-test-runner
+ glib-dev
+ gmock
+ intltool
+ samurai
+ "
+checkdepends="py3-dbusmock"
+source="https://gitlab.com/ubports/development/core/lomiri-url-dispatcher/-/archive/$pkgver/lomiri-url-dispatcher-$pkgver.tar.gz
+ 0001-remove-systemd.patch
+ "
+subpackages="$pkgname-dev $pkgname-lang"
+options="!check" # several tests hang
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=None \
+ -Denable_mirclient=OFF
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+3aeae627e5e01fff6a1201d5fd2f5d52b78b1c628feadf19f0f23e6cad34004212930e317c584f3fc9d67a9dac6dea72bac770747f2a6a116359d5e55a20fd77 lomiri-url-dispatcher-0.1.3.tar.gz
+586d24fd32f368b7f0404d4f5664bde8ed85e88e79f4532aa686ba0e4fc5c6c9c3c33832fded9f09bc5eba983b853a6be2204d9796a571e2dfecfa1afaf9f74f 0001-remove-systemd.patch
+"
diff --git a/testing/lomiri-weather-app/0001-rename-WEATHER_APP_DIR-to-LOMIRI_WEATHER_APP_DIR.patch b/testing/lomiri-weather-app/0001-rename-WEATHER_APP_DIR-to-LOMIRI_WEATHER_APP_DIR.patch
new file mode 100644
index 00000000000..e11cc560c13
--- /dev/null
+++ b/testing/lomiri-weather-app/0001-rename-WEATHER_APP_DIR-to-LOMIRI_WEATHER_APP_DIR.patch
@@ -0,0 +1,21 @@
+From d1d9814346b24baffe1850418e0b2f9e172f2bb1 Mon Sep 17 00:00:00 2001
+From: Brandon Boese <brandonboese@protonmail.com>
+Date: Mon, 11 Mar 2024 17:59:17 -0400
+Subject: [PATCH 1/2] rename WEATHER_APP_DIR to LOMIRI_WEATHER_APP_DIR
+
+---
+ lomiri-weather-app.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/lomiri-weather-app.in b/lomiri-weather-app.in
+index 4a179c1..95d7fbc 100644
+--- a/lomiri-weather-app.in
++++ b/lomiri-weather-app.in
+@@ -1,3 +1,3 @@
+ #!/bin/bash
+ export QT_SELECT=qt5
+-exec qmlscene @CMAKE_INSTALL_PREFIX@/@WEATHER_APP_DIR@/@MAIN_QML@
++exec qmlscene @CMAKE_INSTALL_PREFIX@/@LOMIRI_WEATHER_APP_DIR@/@MAIN_QML@
+--
+2.43.2
+
diff --git a/testing/lomiri-weather-app/0002-point-qmlscene-to-qmlscene-qt5.patch b/testing/lomiri-weather-app/0002-point-qmlscene-to-qmlscene-qt5.patch
new file mode 100644
index 00000000000..5c4146ed696
--- /dev/null
+++ b/testing/lomiri-weather-app/0002-point-qmlscene-to-qmlscene-qt5.patch
@@ -0,0 +1,21 @@
+From 0626f5457f5a5ab00f785b2b68d0b943b99c8ac0 Mon Sep 17 00:00:00 2001
+From: Brandon Boese <brandonboese@protonmail.com>
+Date: Mon, 11 Mar 2024 18:02:26 -0400
+Subject: [PATCH 2/2] point qmlscene to qmlscene-qt5
+
+---
+ lomiri-weather-app.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/lomiri-weather-app.in b/lomiri-weather-app.in
+index 95d7fbc..9fe6475 100644
+--- a/lomiri-weather-app.in
++++ b/lomiri-weather-app.in
+@@ -1,3 +1,3 @@
+ #!/bin/bash
+ export QT_SELECT=qt5
+-exec qmlscene @CMAKE_INSTALL_PREFIX@/@LOMIRI_WEATHER_APP_DIR@/@MAIN_QML@
++exec qmlscene-qt5 @CMAKE_INSTALL_PREFIX@/@LOMIRI_WEATHER_APP_DIR@/@MAIN_QML@
+--
+2.43.2
+
diff --git a/testing/lomiri-weather-app/APKBUILD b/testing/lomiri-weather-app/APKBUILD
new file mode 100644
index 00000000000..bffa83f5217
--- /dev/null
+++ b/testing/lomiri-weather-app/APKBUILD
@@ -0,0 +1,60 @@
+# Maintainer: Brandon Boese <brandonboese@protonmail.com>
+pkgname=lomiri-weather-app
+pkgver=5.13.5
+pkgrel=0
+pkgdesc="Provides current weather information for your mobile device"
+url="https://gitlab.com/ubports/development/apps/lomiri-weather-app"
+arch="all !armhf" # blocked by lomiri-ui-toolkit
+license="GPL-3.0-only"
+source="https://gitlab.com/ubports/development/apps/lomiri-weather-app/-/archive/v$pkgver/lomiri-weather-app-v$pkgver.tar.gz
+ 0001-rename-WEATHER_APP_DIR-to-LOMIRI_WEATHER_APP_DIR.patch
+ 0002-point-qmlscene-to-qmlscene-qt5.patch
+ "
+depends="
+ lomiri-indicator-network
+ lomiri-ui-extras
+ lomiri-ui-toolkit
+ qqc2-suru-style
+ qt5-qtlocation
+ "
+makedepends="
+ click-dev
+ cmake
+ cmake-extras
+ lomiri-trust-store-dev
+ qt5-qtbase-dev
+ qt5-qtdeclarative-dev
+ samurai
+ "
+checkdepends="
+ py3-dbusmock
+ py3-xdg
+ xvfb-run
+ "
+subpackages="$pkgname-lang"
+builddir="$srcdir/$pkgname-v$pkgver"
+options="!check" # requires autopilot
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCLICK_MODE=OFF \
+ -DINSTALL_TESTS=OFF
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+
+ mv "$pkgdir"/usr/share/lomiri-weather-app/app/*.svg \
+ "$pkgdir"/usr/share/lomiri-weather-app
+}
+
+sha512sums="
+3a90bd80a8748e9f3a3ab76a36b5e9ba39f9a93999584d7e92e8412170f5c0b7ecb6466b7390420507a572b657a319df4dda6f683f2064e338ee7b21af769261 lomiri-weather-app-v5.13.5.tar.gz
+1755d62aab06d873ba28ddcf5037e13c3faf16bb3b38881ac885caa5a4006f46705a1a25db382e30f8438d8e212e70e2767698ca41ed42d56c64ab86adfbb548 0001-rename-WEATHER_APP_DIR-to-LOMIRI_WEATHER_APP_DIR.patch
+7251565108426e207cdc3ea68c677b4f9b3ba65390d7fac9510704e74985b8b258bd80bf4e25e1fd83fdb92c46228a7ad09a23f0de7b37bcc734fb30ea592628 0002-point-qmlscene-to-qmlscene-qt5.patch
+"
diff --git a/testing/lomiri/0001-Fix-overwriting-INCLUDE_DIRECTORIES-variable.patch b/testing/lomiri/0001-Fix-overwriting-INCLUDE_DIRECTORIES-variable.patch
new file mode 100644
index 00000000000..cbb86ab7376
--- /dev/null
+++ b/testing/lomiri/0001-Fix-overwriting-INCLUDE_DIRECTORIES-variable.patch
@@ -0,0 +1,40 @@
+From 57a1a449b7305604710db32ffd9ab413492e1f5b Mon Sep 17 00:00:00 2001
+From: Luca Weiss <luca@z3ntu.xyz>
+Date: Sun, 24 Dec 2023 17:23:39 +0100
+Subject: [PATCH 1/7] Fix overwriting INCLUDE_DIRECTORIES variable
+
+Let's set it before adding more include directories. Fixes compilation
+on Alpine Linux as of day - with CMake 3.28.1 fwiw
+---
+ tests/uqmlscene/CMakeLists.txt | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/tests/uqmlscene/CMakeLists.txt b/tests/uqmlscene/CMakeLists.txt
+index 6cffcc4f1..6c0cce047 100644
+--- a/tests/uqmlscene/CMakeLists.txt
++++ b/tests/uqmlscene/CMakeLists.txt
+@@ -6,6 +6,10 @@ add_executable(uqmlscene
+
+ pkg_check_modules(XCB REQUIRED xcb)
+
++if (NOT "${XCB_INCLUDE_DIRS}" STREQUAL "")
++ set_target_properties(uqmlscene PROPERTIES INCLUDE_DIRECTORIES ${XCB_INCLUDE_DIRS})
++endif()
++
+ include_directories(
+ SYSTEM
+ ${Qt5Quick_PRIVATE_INCLUDE_DIRS}
+@@ -19,10 +23,6 @@ include_directories(
+ ${liblomiri-private_SOURCE_DIR}
+ )
+
+-if (NOT "${XCB_INCLUDE_DIRS}" STREQUAL "")
+- set_target_properties(uqmlscene PROPERTIES INCLUDE_DIRECTORIES ${XCB_INCLUDE_DIRS})
+-endif()
+-
+ target_link_libraries(uqmlscene
+ Qt5::Qml Qt5::Quick Qt5::Test Qt5::DBus
+ ${Qt5Qml_LIBRARIES}
+--
+2.43.0
+
diff --git a/testing/lomiri/0002-Fix-build-on-32bit-arches-with-64bit-time_t.patch b/testing/lomiri/0002-Fix-build-on-32bit-arches-with-64bit-time_t.patch
new file mode 100644
index 00000000000..3a670177afe
--- /dev/null
+++ b/testing/lomiri/0002-Fix-build-on-32bit-arches-with-64bit-time_t.patch
@@ -0,0 +1,59 @@
+From 601e01de1085356f61de8337c05b685f4f70c28d Mon Sep 17 00:00:00 2001
+From: Luca Weiss <luca@z3ntu.xyz>
+Date: Sun, 28 Jan 2024 11:25:29 +0100
+Subject: [PATCH 2/7] Fix build on 32bit arches with 64bit time_t
+
+time element is deprecated on new input_event structure in kernel's
+input.h [1]
+
+[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit?id=152194fe9c3f
+---
+ plugins/UInput/uinput.cpp | 15 ++++++++++++---
+ 1 file changed, 12 insertions(+), 3 deletions(-)
+
+diff --git a/plugins/UInput/uinput.cpp b/plugins/UInput/uinput.cpp
+index e80db50d1..65034ae83 100644
+--- a/plugins/UInput/uinput.cpp
++++ b/plugins/UInput/uinput.cpp
+@@ -108,8 +108,11 @@ void UInput::removeMouse()
+ void UInput::moveMouse(int dx, int dy)
+ {
+ struct input_event event;
++ struct timespec time;
+ memset(&event, 0, sizeof(event));
+- clock_gettime(CLOCK_MONOTONIC, (timespec*)&event.time);
++ clock_gettime(CLOCK_MONOTONIC, &time);
++ event.input_event_sec = time.tv_sec;
++ event.input_event_usec = time.tv_nsec / 1000;
+ event.type = EV_REL;
+ event.code = REL_X;
+ event.value = dx;
+@@ -138,8 +141,11 @@ void UInput::releaseMouse(Button button)
+ void UInput::scrollMouse(int dh, int dv)
+ {
+ struct input_event event;
++ struct timespec time;
+ memset(&event, 0, sizeof(event));
+- clock_gettime(CLOCK_MONOTONIC, (timespec*)&event.time);
++ clock_gettime(CLOCK_MONOTONIC, &time);
++ event.input_event_sec = time.tv_sec;
++ event.input_event_usec = time.tv_nsec / 1000;
+ event.type = EV_REL;
+ event.code = REL_HWHEEL;
+ event.value = dh;
+@@ -158,8 +164,11 @@ void UInput::scrollMouse(int dh, int dv)
+ void UInput::injectMouse(Button button, int down)
+ {
+ struct input_event event;
++ struct timespec time;
+ memset(&event, 0, sizeof(event));
+- clock_gettime(CLOCK_MONOTONIC, (timespec*)&event.time);
++ clock_gettime(CLOCK_MONOTONIC, &time);
++ event.input_event_sec = time.tv_sec;
++ event.input_event_usec = time.tv_nsec / 1000;
+ event.type = EV_KEY;
+ switch (button) {
+ case ButtonLeft:
+--
+2.43.0
+
diff --git a/testing/lomiri/0003-cursor-Always-follow-cursor-position-from-mir.patch b/testing/lomiri/0003-cursor-Always-follow-cursor-position-from-mir.patch
new file mode 100644
index 00000000000..81771cd59c1
--- /dev/null
+++ b/testing/lomiri/0003-cursor-Always-follow-cursor-position-from-mir.patch
@@ -0,0 +1,32 @@
+From 0528e804b6625bd42664ac661566efb4f1918031 Mon Sep 17 00:00:00 2001
+From: Marius Gripsgard <marius@ubports.com>
+Date: Wed, 31 May 2023 05:48:35 +0200
+Subject: [PATCH 3/7] cursor: Always follow cursor position from mir
+
+It makes no sense to not, if we dont we can quickly get out of sync with
+mir.
+
+This was done for multiscreen, but this has to be fixed another way then
+tracking pointer ourself. The plan is to follow mir's screen position
+anyway so we don't need this. (the current multiscreen impl is horrable)
+---
+ plugins/Cursor/InputDispatcherFilter.cpp | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/plugins/Cursor/InputDispatcherFilter.cpp b/plugins/Cursor/InputDispatcherFilter.cpp
+index 4ef0199d9..5dcc1a421 100644
+--- a/plugins/Cursor/InputDispatcherFilter.cpp
++++ b/plugins/Cursor/InputDispatcherFilter.cpp
+@@ -72,7 +72,8 @@ bool InputDispatcherFilter::eventFilter(QObject *o, QEvent *e)
+ QPointF movement = me->localPos();
+
+ // Adjust the position
+- QPointF oldPos = pointer->window()->geometry().topLeft() + pointer->position();
++ // Get the pos from mir
++ QPointF oldPos = me->screenPos();
+ QPointF newPos = adjustedPositionForMovement(oldPos, movement);
+
+ QScreen* currentScreen = screenAt(newPos);
+--
+2.43.0
+
diff --git a/testing/lomiri/0004-Disable-broken-tests-due-to-dropped-mocks-from-mir-2.patch b/testing/lomiri/0004-Disable-broken-tests-due-to-dropped-mocks-from-mir-2.patch
new file mode 100644
index 00000000000..01b23f1b57d
--- /dev/null
+++ b/testing/lomiri/0004-Disable-broken-tests-due-to-dropped-mocks-from-mir-2.patch
@@ -0,0 +1,26 @@
+From ced81a10807327855f583687f4ac3c7f7ec7250c Mon Sep 17 00:00:00 2001
+From: Marius Gripsgard <marius@ubports.com>
+Date: Thu, 12 Jan 2023 01:08:08 +0100
+Subject: [PATCH 4/7] Disable broken tests due to dropped mocks from mir 2.9
+
+---
+ tests/mocks/CMakeLists.txt | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/tests/mocks/CMakeLists.txt b/tests/mocks/CMakeLists.txt
+index c9a93cf66..c49e8898f 100644
+--- a/tests/mocks/CMakeLists.txt
++++ b/tests/mocks/CMakeLists.txt
+@@ -41,7 +41,8 @@ add_subdirectory(Powerd)
+ add_subdirectory(QMenuModel.1)
+ add_subdirectory(SessionBroadcast)
+ add_subdirectory(Lomiri)
+-add_subdirectory(QtMir/Application)
++# Broken due to dropped mocks from mir 2.9
++#add_subdirectory(QtMir/Application)
+ add_subdirectory(QtMultimedia)
+ add_subdirectory(WindowManager)
+ add_subdirectory(Wizard)
+--
+2.43.0
+
diff --git a/testing/lomiri/0005-Add-qt5-suffix-to-search-for-Qt-tools.patch b/testing/lomiri/0005-Add-qt5-suffix-to-search-for-Qt-tools.patch
new file mode 100644
index 00000000000..1452c101e7d
--- /dev/null
+++ b/testing/lomiri/0005-Add-qt5-suffix-to-search-for-Qt-tools.patch
@@ -0,0 +1,47 @@
+From 7a1477480b29605193be5e77ee27faf5c52839d2 Mon Sep 17 00:00:00 2001
+From: Luca Weiss <luca@z3ntu.xyz>
+Date: Tue, 29 Jan 2019 19:25:24 +0100
+Subject: [PATCH 5/7] Add -qt5 suffix to search for Qt tools
+
+---
+ cmake/modules/QmlTest.cmake | 4 ++--
+ tests/CMakeLists.txt | 4 ++--
+ 2 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/cmake/modules/QmlTest.cmake b/cmake/modules/QmlTest.cmake
+index f4a95ab4e..537ba792c 100644
+--- a/cmake/modules/QmlTest.cmake
++++ b/cmake/modules/QmlTest.cmake
+@@ -114,9 +114,9 @@ endfunction()
+ # This function wraps add_executable_test, see below for available arguments.
+
+ function(add_qml_unittest PATH COMPONENT_NAME)
+- import_executables(qmltestrunner)
++ import_executables(qmltestrunner-qt5)
+
+- add_executable_test(${COMPONENT_NAME} qmltestrunner
++ add_executable_test(${COMPONENT_NAME} qmltestrunner-qt5
+ ${ARGN}
+ ARGS -input ${CMAKE_CURRENT_SOURCE_DIR}/${PATH}/tst_${COMPONENT_NAME}.qml ${QMLTEST_ARGS}
+ )
+diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
+index f2bcf212d..58cf9bee9 100644
+--- a/tests/CMakeLists.txt
++++ b/tests/CMakeLists.txt
+@@ -135,11 +135,11 @@ endfunction()
+ if(DEFINED ENV{DEB_BUILD_MULTIARCH})
+ set(QDBUSXML2CPP_EXECUTABLE "/usr/lib/$ENV{DEB_BUILD_MULTIARCH}/qt5/bin/qdbusxml2cpp")
+ else()
+- FIND_PROGRAM(QDBUSXML2CPP_EXECUTABLE qdbusxml2cpp)
++ FIND_PROGRAM(QDBUSXML2CPP_EXECUTABLE qdbusxml2cpp-qt5)
+ endif()
+
+ if(NOT QDBUSXML2CPP_EXECUTABLE)
+- message(FATAL_ERROR "qdbusxml2cpp not found")
++ message(FATAL_ERROR "qdbusxml2cpp-qt5 not found")
+ endif()
+
+ install(DIRECTORY data graphics
+--
+2.43.0
+
diff --git a/testing/lomiri/0006-No-systemd.patch b/testing/lomiri/0006-No-systemd.patch
new file mode 100644
index 00000000000..86d2bdfe314
--- /dev/null
+++ b/testing/lomiri/0006-No-systemd.patch
@@ -0,0 +1,22 @@
+From f7b5bcf00f57ef0d64cefb772a02e29d81b6bb2b Mon Sep 17 00:00:00 2001
+From: Luca Weiss <luca@z3ntu.xyz>
+Date: Fri, 25 Jun 2021 10:16:19 +0200
+Subject: [PATCH 6/7] No systemd
+
+---
+ data/CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/data/CMakeLists.txt b/data/CMakeLists.txt
+index 4bffd05dd..7b5bb8e4f 100644
+--- a/data/CMakeLists.txt
++++ b/data/CMakeLists.txt
+@@ -49,4 +49,4 @@ add_custom_target(pkgversion ALL COMMAND echo ${PROJECT_VERSION} | head -n1 > ${
+
+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/version DESTINATION ${CMAKE_INSTALL_LOCALSTATEDIR}/lib/lomiri)
+
+-add_subdirectory(systemd-user)
++#add_subdirectory(systemd-user)
+--
+2.43.0
+
diff --git a/testing/lomiri/0007-Disable-lightdm-integration.patch b/testing/lomiri/0007-Disable-lightdm-integration.patch
new file mode 100644
index 00000000000..58109720a81
--- /dev/null
+++ b/testing/lomiri/0007-Disable-lightdm-integration.patch
@@ -0,0 +1,40 @@
+From 8f73d2aa28bf83b45876b1b6719a8488eb762f85 Mon Sep 17 00:00:00 2001
+From: Luca Weiss <luca.weiss@fairphone.com>
+Date: Tue, 14 Nov 2023 22:00:38 +0100
+Subject: [PATCH 7/7] Disable lightdm integration
+
+Not needed on postmarketOS
+---
+ plugins/CMakeLists.txt | 2 +-
+ tests/plugins/CMakeLists.txt | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/plugins/CMakeLists.txt b/plugins/CMakeLists.txt
+index 7dacef455..da53955d4 100644
+--- a/plugins/CMakeLists.txt
++++ b/plugins/CMakeLists.txt
+@@ -16,7 +16,7 @@ add_subdirectory(BatteryMonitor)
+ add_subdirectory(Cursor)
+ add_subdirectory(GlobalShortcut)
+ add_subdirectory(Greeter)
+-add_subdirectory(LightDM)
++#add_subdirectory(LightDM)
+ add_subdirectory(Powerd)
+ add_subdirectory(ProcessControl)
+ add_subdirectory(ScreenshotDirectory)
+diff --git a/tests/plugins/CMakeLists.txt b/tests/plugins/CMakeLists.txt
+index 352beba17..5f6f5cc8c 100644
+--- a/tests/plugins/CMakeLists.txt
++++ b/tests/plugins/CMakeLists.txt
+@@ -2,7 +2,7 @@ add_subdirectory(AccountsService)
+ add_subdirectory(Cursor)
+ add_subdirectory(GlobalShortcut)
+ add_subdirectory(Greeter)
+-add_subdirectory(LightDM)
++#add_subdirectory(LightDM)
+ add_subdirectory(SessionBroadcast)
+ add_subdirectory(Lomiri)
+ add_subdirectory(Utils)
+--
+2.43.0
+
diff --git a/testing/lomiri/0008-Change-hard-coded-launcher-logo-to-one-set-by-a-reso.patch b/testing/lomiri/0008-Change-hard-coded-launcher-logo-to-one-set-by-a-reso.patch
new file mode 100644
index 00000000000..44e8fc81602
--- /dev/null
+++ b/testing/lomiri/0008-Change-hard-coded-launcher-logo-to-one-set-by-a-reso.patch
@@ -0,0 +1,158 @@
+From b7df6bf3459ddadb29b6c4203e1032b6f3808c0b Mon Sep 17 00:00:00 2001
+From: Brandon Boese <brandonboese@protonmail.com>
+Date: Fri, 22 Mar 2024 19:28:46 -0400
+Subject: [PATCH] Change hard-coded launcher logo to one set by a resolver
+
+---
+ plugins/Utils/constants.cpp | 1 +
+ plugins/Utils/constants.h | 3 ++
+ qml/Components/LogoResolver.qml | 61 +++++++++++++++++++++++++++++++++
+ qml/Launcher/LauncherPanel.qml | 22 ++++++++++--
+ 4 files changed, 85 insertions(+), 2 deletions(-)
+ create mode 100644 qml/Components/LogoResolver.qml
+
+diff --git a/plugins/Utils/constants.cpp b/plugins/Utils/constants.cpp
+index d7d6053f5..780cb75ed 100644
+--- a/plugins/Utils/constants.cpp
++++ b/plugins/Utils/constants.cpp
+@@ -29,4 +29,5 @@ Constants::Constants(QObject *parent)
+
+ QString snapRoot = QFile::decodeName(qgetenv("SNAP"));
+ m_defaultWallpaper = snapRoot + "/usr/share/backgrounds/warty-final-ubuntu.png";
++ m_defaultLogo = snapRoot + "/usr/share/lomiri/Launcher/graphics/home.svg";
+ }
+diff --git a/plugins/Utils/constants.h b/plugins/Utils/constants.h
+index c2ccc9cab..0e4eded31 100644
+--- a/plugins/Utils/constants.h
++++ b/plugins/Utils/constants.h
+@@ -30,14 +30,17 @@ class Constants: public QObject
+ Q_OBJECT
+ Q_PROPERTY(int indicatorValueTimeout READ indicatorValueTimeout CONSTANT)
+ Q_PROPERTY(QString defaultWallpaper READ defaultWallpaper CONSTANT)
++ Q_PROPERTY(QString defaultLogo READ defaultLogo CONSTANT)
+
+ public:
+ Constants(QObject *parent = 0);
+
+ int indicatorValueTimeout() const { return m_indicatorValueTimeout; }
+ QString defaultWallpaper() const { return m_defaultWallpaper; }
++ QString defaultLogo() const { return m_defaultLogo; }
+
+ private:
+ int m_indicatorValueTimeout;
+ QString m_defaultWallpaper;
++ QString m_defaultLogo;
+ };
+diff --git a/qml/Components/LogoResolver.qml b/qml/Components/LogoResolver.qml
+new file mode 100644
+index 000000000..53b1bb937
+--- /dev/null
++++ b/qml/Components/LogoResolver.qml
+@@ -0,0 +1,61 @@
++/*
++ * Copyright (C) 2015 Canonical Ltd.
++ * Copyright (C) 2024 UBports Foundation
++ *
++ * This program is free software; you can redistribute it and/or modify
++ * it under the terms of the GNU General Public License as published by
++ * the Free Software Foundation; version 3.
++ *
++ * This program is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ * GNU General Public License for more details.
++ *
++ * You should have received a copy of the GNU General Public License
++ * along with this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++import QtQuick 2.12
++import Lomiri.Components 1.3
++
++Item {
++ id: root
++
++ // Provide a list of logos to resolve here, preferred ones first
++ property var candidates: []
++
++ property bool cache: true
++
++ readonly property url logo: {
++ for (var i = 0; i < repeater.count; i++) {
++ var image = repeater.itemAt(i);
++ var expectedImageSource = Qt.resolvedUrl(candidates[i]);
++ if (image.source != expectedImageSource)
++ return "";
++ if (image.status === Image.Ready)
++ return candidates[i];
++ if (image.status === Image.Loading)
++ return "";
++ }
++ if (candidates.length > 0) {
++ return candidates.slice(-1)[0]; // last item is last resort
++ } else {
++ return "";
++ }
++ }
++
++ Repeater {
++ id: repeater
++ model: root.candidates.slice(0, -1)
++ delegate: Image {
++ source: modelData
++ autoTransform: true
++ asynchronous: true
++ cache: root.cache
++ height: 0
++ width: 0
++ sourceSize.height: 1
++ sourceSize.width: 1
++ }
++ }
++}
+diff --git a/qml/Launcher/LauncherPanel.qml b/qml/Launcher/LauncherPanel.qml
+index 4d5764803..56a0110ea 100644
+--- a/qml/Launcher/LauncherPanel.qml
++++ b/qml/Launcher/LauncherPanel.qml
+@@ -19,6 +19,7 @@ import QtQml.StateMachine 1.0 as DSM
+ import Lomiri.Components 1.3
+ import Lomiri.Launcher 0.1
+ import Lomiri.Components.Popups 1.3
++import GSettings 1.0
+ import Utils 0.1
+ import "../Components"
+
+@@ -95,11 +96,28 @@ Rectangle {
+ width: parent.width * .6
+ height: width
+ anchors.centerIn: parent
+- source: "graphics/home.svg"
+- color: "white"
++ source: homeLogoResolver.logo
+ rotation: root.rotation
+ }
+
++ LogoResolver {
++ id: homeLogoResolver
++ objectName: "homeLogoResolver"
++
++ readonly property url defaultLogo: "file://" + Constants.defaultLogo
++ readonly property bool hasCustomLogo: logo != defaultLogo
++
++ GSettings {
++ id: logoSettings
++ schema.id: "com.lomiri.Shell.Launcher"
++ }
++
++ candidates: [
++ logoSettings.logoPictureUri,
++ defaultLogo
++ ]
++ }
++
+ AbstractButton {
+ id: dashItem
+ anchors.fill: parent
+--
+2.44.0
+
diff --git a/testing/lomiri/APKBUILD b/testing/lomiri/APKBUILD
new file mode 100644
index 00000000000..3a2e4ea2beb
--- /dev/null
+++ b/testing/lomiri/APKBUILD
@@ -0,0 +1,115 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Luca Weiss <luca@z3ntu.xyz>
+pkgname=lomiri
+pkgver=0.2.1
+pkgrel=1
+pkgdesc="A convergent desktop environment"
+# armhf: blocked by lomiri-ui-toolkit
+# s390x, riscv64, ppc64le: blocked by lomiri-system-settings
+arch="all !armhf !s390x !riscv64 !ppc64le"
+url="https://gitlab.com/ubports/development/core/lomiri"
+license="GPL-3.0-only AND LGPL-2.1-only"
+depends="
+ ayatana-indicator-keyboard
+ ayatana-indicator-session
+ biometryd
+ gsettings-desktop-schemas
+ lomiri-notifications
+ lomiri-schemas
+ lomiri-settings-components
+ lomiri-telephony-service
+ lomiri-thumbnailer
+ openrc-settingsd
+ qt5-qtbase-sqlite
+ qt5-qtgraphicaleffects
+ suru-icon-theme
+ "
+makedepends="
+ cmake
+ cmake-extras
+ dbus-test-runner
+ doxygen
+ elogind-dev
+ geonames-dev
+ gnome-desktop-dev
+ graphviz
+ gsettings-qt-dev
+ libqtdbusmock
+ libqtdbustest
+ linux-pam-dev
+ lomiri-api-dev
+ lomiri-app-launch-dev
+ lomiri-deviceinfo-dev
+ lomiri-download-manager-dev
+ lomiri-indicator-network-dev
+ lomiri-libusermetrics-dev
+ lomiri-system-settings
+ lomiri-ui-toolkit-dev
+ qmenumodel
+ qmenumodel-dev
+ qt5-qtbase-dev
+ qt5-qtdeclarative-dev
+ qtmir-dev
+ samurai
+ "
+checkdepends="py3-dbusmock"
+source="https://gitlab.com/ubports/development/core/lomiri/-/archive/$pkgver/lomiri-$pkgver.tar.gz
+ 0001-Fix-overwriting-INCLUDE_DIRECTORIES-variable.patch
+ 0002-Fix-build-on-32bit-arches-with-64bit-time_t.patch
+ 0003-cursor-Always-follow-cursor-position-from-mir.patch
+ 0004-Disable-broken-tests-due-to-dropped-mocks-from-mir-2.patch
+ 0005-Add-qt5-suffix-to-search-for-Qt-tools.patch
+ 0006-No-systemd.patch
+ 0007-Disable-lightdm-integration.patch
+ 0008-Change-hard-coded-launcher-logo-to-one-set-by-a-reso.patch
+ home.svg
+ "
+subpackages="$pkgname-lang"
+options="!check" # Tests fail
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DCMAKE_INSTALL_LOCALSTATEDIR=/var \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=None
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+
+ # Replace the Ubuntu logo with Alpine
+ rm "$pkgdir"/usr/share/lomiri/Launcher/graphics/home.svg
+ install -Dm644 "$srcdir"/home.svg \
+ "$pkgdir"/usr/share/lomiri/Launcher/graphics/
+
+ # Remove various mocks and test files not wanted at runtime
+ rm "$pkgdir"/usr/bin/indicators-client
+ rm "$pkgdir"/usr/bin/lomiri-mock-indicator-service
+ rm -r "$pkgdir"/usr/lib/lomiri/qml/mocks/
+ rm -r "$pkgdir"/usr/lib/lomiri/qml/utils/Lomiri/SelfTest/
+ rm -r "$pkgdir"/usr/libexec/lomiri/tests/
+ rm "$pkgdir"/usr/libexec/lomiri/uqmlscene
+ rm "$pkgdir"/usr/share/applications/indicators-client.desktop
+ rm -r "$pkgdir"/usr/share/lomiri/mocks/
+ rm -r "$pkgdir"/usr/share/lomiri/tests/
+}
+
+sha512sums="
+4f844cb7552a6df9c3ed31f6705d0af2147fd44e7b390e8a4f7c5f95e61fc91590ebec1b296cf9eae83bbaa56df8fc5b1fa685143a788472e21525532d0b4251 lomiri-0.2.1.tar.gz
+46f11652b0ed77fd27f14cef236a9f247885cc2fd85c433b47c617c0a9a3f80c292ba98c779b02e75bd752075160dc5e997b3f2bd4e24ee7f7005706268ded81 0001-Fix-overwriting-INCLUDE_DIRECTORIES-variable.patch
+2a1f8069ff84486f7905fa2dc098b283c4d8308ad374d3f8383559241bfd9da4cabaecacfef41825f154e0d2d902eb85dff788aaca6260e1f6a21714bba7ff1d 0002-Fix-build-on-32bit-arches-with-64bit-time_t.patch
+f124a98e8b13a0c640ab7180a9516d11122c787bff821225f7730fe292ad476a7fc68d1ffa7b3d2be0f3daf4732c3d60aba61044225764bf62eb4b432ca51a68 0003-cursor-Always-follow-cursor-position-from-mir.patch
+1ce136ed0dd5f9a285d194684194ca04135ad9b4a7ac3bea5f1714b58465cc8d98f5f218938ea2155d9d9a4939877a65b7f7b02dba2d6beed3a940e42e137fd8 0004-Disable-broken-tests-due-to-dropped-mocks-from-mir-2.patch
+33e92a4646352f16993829ae7686b7ebf2c949d418e51ed466268b53d8d0f939861fa113a19403936ce48e16e58c6166e370a4fd27a184bde554c4e2746b0898 0005-Add-qt5-suffix-to-search-for-Qt-tools.patch
+828c19e69cc830b40d648ed5bfe03fdd350986c0f6276c7cb659097c54bb593a5a5c2471d2b4a463ced80f23f790829f50f5ec807c4e0d846e5b84a433109c1c 0006-No-systemd.patch
+1ddd7a73bf5aa815e50251afd4b54563cc366667c9b9d230ba377451a569a0af01255ad2a3dbff255fc2067d9a404592f3c3f3910ff1c1a83f1280741663e92d 0007-Disable-lightdm-integration.patch
+c953baa7ee424567105dcf37f45674638f9b8236e59121e05f454ccf198d65a9f8de445cfcc3d78a6e11439e395c33812d161b8fff0a6e03df2ee3f4d5526fbd 0008-Change-hard-coded-launcher-logo-to-one-set-by-a-reso.patch
+8be30a5e7692c39ffb1948910b45d8fa69a88725df45b67ba69711281b3cf15568b9fff29a8b5b216e5e86656b5961ad7ef9eb0e87c007215e012c3a663045b7 home.svg
+"
diff --git a/testing/lomiri/home.svg b/testing/lomiri/home.svg
new file mode 100644
index 00000000000..0cf773428db
--- /dev/null
+++ b/testing/lomiri/home.svg
@@ -0,0 +1,72 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ id="svg2"
+ version="1.1"
+ inkscape:version="1.3.2 (091e20ef0f, 2023-11-25)"
+ width="320"
+ height="320"
+ xml:space="preserve"
+ sodipodi:docname="home.svg"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:dc="http://purl.org/dc/elements/1.1/"><metadata
+ id="metadata8"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
+ id="defs6"><clipPath
+ clipPathUnits="userSpaceOnUse"
+ id="clipPath16"><path
+ d="M 0,560 H 960 V 0 H 0 Z"
+ id="path18"
+ inkscape:connector-curvature="0" /></clipPath></defs><sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="1080"
+ inkscape:window-height="689"
+ id="namedview4"
+ showgrid="false"
+ fit-margin-top="0"
+ fit-margin-left="0"
+ fit-margin-right="0"
+ fit-margin-bottom="0"
+ inkscape:zoom="0.9560989"
+ inkscape:cx="145.90541"
+ inkscape:cy="141.19878"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="g10"
+ inkscape:showpageshadow="2"
+ inkscape:pagecheckerboard="0"
+ inkscape:deskcolor="#d1d1d1"
+ inkscape:clip-to-page="false" /><g
+ id="g10"
+ inkscape:groupmode="layer"
+ inkscape:label="Alpine_Linux_logo_v4"
+ transform="matrix(1.25,0,0,-1.25,-267.55675,591.98975)"><g
+ id="g56"
+ transform="matrix(1.697972,0,0,1.697972,307.48063,318.69932)"
+ style="fill:#ffffff;fill-opacity:1"><path
+ d="M 0,0 V 15.687 L -11.296,4.379 C -10.079,3.532 -8.932,2.836 -7.853,2.27 -6.774,1.703 -5.764,1.265 -4.823,0.932 -3.882,0.598 -3.009,0.37 -2.206,0.222 -1.402,0.075 -0.667,0.009 0,0 m 57.751,1.304 c 0.02,-0.017 0.13,-0.11 0.333,-0.239 0.204,-0.13 0.502,-0.297 0.898,-0.462 0.395,-0.164 0.889,-0.327 1.485,-0.448 0.596,-0.122 1.294,-0.202 2.098,-0.202 0.671,0 1.411,0.059 2.222,0.2 0.812,0.142 1.693,0.367 2.645,0.699 0.953,0.333 1.976,0.773 3.07,1.344 1.094,0.572 2.259,1.276 3.495,2.136 L 65.425,12.729 37.015,41.245 24.549,28.776 7.733,46.117 -34.471,4.39 c 1.235,-0.86 2.398,-1.564 3.491,-2.136 1.093,-0.571 2.115,-1.011 3.067,-1.344 0.951,-0.332 1.832,-0.557 2.643,-0.698 0.81,-0.142 1.55,-0.201 2.22,-0.201 0.804,0 1.502,0.08 2.097,0.202 0.596,0.121 1.089,0.284 1.485,0.449 0.396,0.164 0.693,0.331 0.897,0.461 0.204,0.13 0.314,0.223 0.334,0.24 L 0.815,20.415 7.628,26.948 26.494,8.082 33.085,1.304 c 0.02,-0.017 0.13,-0.11 0.334,-0.239 0.204,-0.13 0.501,-0.297 0.897,-0.462 0.396,-0.164 0.89,-0.327 1.485,-0.448 0.596,-0.122 1.295,-0.202 2.099,-0.202 0.67,0 1.411,0.059 2.222,0.2 0.811,0.142 1.693,0.367 2.645,0.699 0.952,0.333 1.975,0.773 3.069,1.344 1.094,0.572 2.259,1.276 3.495,2.136 L 34.192,19.157 37.01,21.975 50.111,8.874 57.751,1.304 M 57.588,80.32 94.807,15.838 57.588,-48.644 h -74.463 l -37.219,64.482 37.219,64.482 z"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ id="path58"
+ inkscape:connector-curvature="0" /></g><g
+ id="g60"
+ transform="matrix(1.697972,0,0,1.697972,365.83092,350.92547)"
+ style="fill:#ffffff;fill-opacity:1"><path
+ d="M 0,0 -9.913,9.895 -9.208,10.604 0.775,0.73 Z"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ id="path62"
+ inkscape:connector-curvature="0" /></g></g></svg>
diff --git a/testing/looking-glass/APKBUILD b/testing/looking-glass/APKBUILD
new file mode 100644
index 00000000000..21818202bf5
--- /dev/null
+++ b/testing/looking-glass/APKBUILD
@@ -0,0 +1,71 @@
+# Contributor: Rogério da Silva Yokomizo <me@ro.ger.io>
+# Maintainer: Rogério da Silva Yokomizo <me@ro.ger.io>
+pkgname=looking-glass
+_pkgver=B6
+pkgver=6b
+pkgrel=2
+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-$_pkgver.tar.gz::https://looking-glass.io/artifact/$_pkgver/source
+ missing-includes.patch
+ obs-plugins-lib.patch
+ werror.patch
+ "
+subpackages="$pkgname-obs"
+builddir="$srcdir/$pkgname-$_pkgver"
+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
+}
+
+obs() {
+ pkgdesc="$pkgdesc (obs plugin)"
+ amove usr/lib/obs-plugins
+}
+
+sha512sums="
+558981d6b32098076ef0775a748da349941551352cbef836e37310e43e5cd6072df3dec6fa2418a9abecc7729ef0c1c6869e3168d05a3d76bea46c6eb8c4e82c looking-glass-B6.tar.gz
+6d2449764a8316dd3c1b5cc0aa552671068f89ed2f95297f3c5256af8529b93e5ec7af8f979bd2e744fd09b11063e8a93f3ed26284f0e49294e467ca10f6e772 missing-includes.patch
+33c5463412a16691f47d7833ebf81d7cf20c560a077dca141dcc9f02a5d6dfb676e483835f39a06012b114be9f509dda4614fe253bb1c72a0142e82dc265a5ca obs-plugins-lib.patch
+b952d1fd284aed15bcfe7990f160dec3a4565fb5833ce339920f62de6bb46fbc09265a0a79fe80d212eecc6a1813614e1e193a8846c37e2afd18431dc3a89ca4 werror.patch
+"
diff --git a/testing/looking-glass/missing-includes.patch b/testing/looking-glass/missing-includes.patch
new file mode 100644
index 00000000000..635752cca64
--- /dev/null
+++ b/testing/looking-glass/missing-includes.patch
@@ -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>
+
diff --git a/testing/looking-glass/obs-plugins-lib.patch b/testing/looking-glass/obs-plugins-lib.patch
new file mode 100644
index 00000000000..1390adb7fb7
--- /dev/null
+++ b/testing/looking-glass/obs-plugins-lib.patch
@@ -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)
diff --git a/testing/looking-glass/werror.patch b/testing/looking-glass/werror.patch
new file mode 100644
index 00000000000..436419f70d7
--- /dev/null
+++ b/testing/looking-glass/werror.patch
@@ -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"
diff --git a/testing/loolwsd/APKBUILD b/testing/loolwsd/APKBUILD
index defb4aec23c..7a86790ebd5 100644
--- a/testing/loolwsd/APKBUILD
+++ b/testing/loolwsd/APKBUILD
@@ -2,17 +2,16 @@
# Maintainer: Duncan Bellamy <dunk@denkimushi.com>
pkgname=loolwsd
pkgver=6.4.0.2
-pkgrel=1
+pkgrel=2
pkgdesc="LibreOffice Online WebSocket server"
url="https://github.com/LibreOffice/online"
license="MPL-2.0"
# x86 and armv7 fail to build with size errors
-# riscv64 blocked by nodejs/npm
# ppc64le blocked by libreofficekit
# all: does not build
-#arch="all !s390x !x86 !armv7 !armhf !riscv64 !ppc64le"
+#arch="all !s390x !x86 !armv7 !armhf !ppc64le"
makedepends="automake autoconf libtool libreofficekit bash py3-lxml py3-polib libpng-dev
- cppunit-dev libcap-dev linux-pam-dev npm openssl-dev krb5-dev poco-dev libseccomp-dev"
+ cppunit-dev libcap-dev linux-pam-dev npm openssl-dev>3 krb5-dev poco-dev libseccomp-dev"
subpackages="$pkgname-doc"
source="https://github.com/LibreOffice/online/archive/libreoffice-$pkgver.tar.gz
10-musl.patch"
diff --git a/testing/lotide/APKBUILD b/testing/lotide/APKBUILD
new file mode 100644
index 00000000000..a9039b54f34
--- /dev/null
+++ b/testing/lotide/APKBUILD
@@ -0,0 +1,89 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=lotide
+pkgver=0.15.0
+pkgrel=0
+_hitide="${pkgver%.*}.0"
+pkgdesc="Federated forum / link aggregator using ActivityPub"
+url="https://sr.ht/~vpzom/lotide/"
+arch="all"
+license="AGPL-3.0-or-later"
+makedepends="cargo cargo-auditable openssl-dev zlib-dev"
+install="lotide.pre-install lotide.post-install hitide.pre-install"
+pkgusers="lotide"
+pkggroups="lotide"
+subpackages="lotide-openrc hitide hitide-openrc:_hitide_openrc:noarch"
+source="lotide-$pkgver.tar.gz::https://git.sr.ht/~vpzom/lotide/archive/v$pkgver.tar.gz
+ hitide-$_hitide.tar.gz::https://git.sr.ht/~vpzom/hitide/archive/v$_hitide.tar.gz
+ cargo-update-libc_patch
+
+ lotide.initd lotide.confd
+ hitide.initd hitide.confd
+ "
+builddir="$srcdir/$pkgname-v$pkgver"
+options="!check" # Requires running database
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+
+ cd "../hitide-v$_hitide"
+ patch Cargo.lock "$srcdir"/cargo-update-libc_patch
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release
+
+ cd "../hitide-v$_hitide"
+
+ cargo auditable build --frozen --release
+}
+
+check() {
+ cargo test --frozen
+
+ cd "../hitide-v$_hitide"
+
+ cargo test --frozen
+}
+
+package() {
+ install -Dvm755 target/release/lotide -t "$pkgdir"/usr/bin/
+
+ install -dm750 -o lotide -g lotide "$pkgdir"/var/lib/lotide
+ install -dm750 -o lotide -g lotide "$pkgdir"/var/lib/lotide/media
+
+ install -Dm755 "$srcdir"/lotide.initd "$pkgdir"/etc/init.d/lotide
+ install -Dm644 "$srcdir"/lotide.confd "$pkgdir"/etc/conf.d/lotide
+
+ cd "../hitide-v$_hitide"
+
+ install -Dvm755 target/release/hitide -t "$pkgdir"/usr/bin/
+}
+
+hitide() {
+ pkgdesc="$pkgdesc (web UI frontend)"
+
+ amove usr/bin/hitide
+}
+
+_hitide_openrc() {
+ pkgdesc="$pkgdesc (OpenRC init scripts for web UI frontend)"
+ install_if="openrc hitide=$pkgver-r$pkgrel"
+
+ install -Dm755 "$srcdir"/hitide.initd "$subpkgdir"/etc/init.d/hitide
+ install -Dm644 "$srcdir"/hitide.confd "$subpkgdir"/etc/conf.d/hitide
+}
+
+sha512sums="
+f6c49e58207644eea17a847a4a38f23765322e030fdfe79f6aec27312217a42f10c830047f87de1441d45856a3f53dc02247b934fe9b85cbe36ca83d251b7497 lotide-0.15.0.tar.gz
+3888c09e51005faf55bd2a7d9772398f318ed01b016bf1af265b94ad6d3e3272b8d5fe163629f2227e8ec9638da196393c040dcacf4100ab1616a741de2545b2 hitide-0.15.0.tar.gz
+753b55edaa323cd7d777a994ebfc365036e1031f81f31e4907181dd2acf94e3f77e3ce0b49c1ccb73f801687f385d263506276c48fe627f56b906421251b9ed7 cargo-update-libc_patch
+ba052e36c230192c4b5eb3d3f47c39c00ecc4bfb8722bada4101b7367f9c49713ae3de5688680c556b4c3042ce338b8bd0e20b85d5367e1f541b38669bba64cd lotide.initd
+a8c10e2d17118bdc7701330a3f2e6930c8e3a85162174792f7ee314b4bb8ee4d21954a32689282ab5ed75edda588fbc84ab6c309c346b8dde5910fcf7a4dcaec lotide.confd
+83a27192d78fc399cf4b3158fe687efb6155c183812444657a42938f91ef5d8c675f46af365ecb677bf728158868a2fd9a80a3e1ca479ab810f4a7909d711168 hitide.initd
+f715ea4d941d45bdd7773d0450049333ab48d9d7292c7aa17bcf26109246f33289ddeae92e4a06457a4209a0a65248d67a13736e3be7126378c890776aa515d6 hitide.confd
+"
diff --git a/testing/lotide/cargo-update-libc_patch b/testing/lotide/cargo-update-libc_patch
new file mode 100644
index 00000000000..8454e6bbeb0
--- /dev/null
+++ b/testing/lotide/cargo-update-libc_patch
@@ -0,0 +1,14 @@
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -728,9 +728,9 @@
+
+ [[package]]
+ name = "libc"
+-version = "0.2.145"
++version = "0.2.150"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "fc86cde3ff845662b8f4ef6cb50ea0e20c524eb3d29ae048287e06a1b3fa6a81"
++checksum = "89d92a4743f9a61002fae18374ed11e7973f530cb3a3255fb354818118b2203c"
+
+ [[package]]
+ name = "linux-raw-sys"
diff --git a/testing/lotide/hitide.confd b/testing/lotide/hitide.confd
new file mode 100644
index 00000000000..bb9eb20ef78
--- /dev/null
+++ b/testing/lotide/hitide.confd
@@ -0,0 +1,11 @@
+# Configuration for /etc/init.d/hitide
+
+# The internal URL path for accessing the lotide backend
+BACKEND_HOST="http://localhost:3333"
+
+# The external user-facing URL path of the frontend
+FRONTEND_URL="https://lotide.example.com"
+
+# Port number to bind to.
+# (If not set, defaults to 4333.)
+#HITIDE_PORT=4333
diff --git a/testing/lotide/hitide.initd b/testing/lotide/hitide.initd
new file mode 100644
index 00000000000..af848ea99f0
--- /dev/null
+++ b/testing/lotide/hitide.initd
@@ -0,0 +1,23 @@
+#!/sbin/openrc-run
+
+name=hitide
+description="Lotide UI"
+
+export BACKEND_HOST
+export FRONTEND_URL
+export HITIDE_PORT
+
+command="/usr/bin/hitide"
+command_background=true
+command_user="hitide:hitide"
+pidfile="/run/${RC_SVCNAME}.pid"
+error_log="/var/log/hitide.log"
+
+depend() {
+ need localmount net
+ after firewall lotide
+}
+
+start_pre() {
+ checkpath -f -m 0640 -o "$command_user" "$error_log"
+}
diff --git a/testing/lotide/hitide.pre-install b/testing/lotide/hitide.pre-install
new file mode 100644
index 00000000000..b914069286b
--- /dev/null
+++ b/testing/lotide/hitide.pre-install
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+addgroup -S hitide 2>/dev/null
+adduser -S -D -H \
+ -h /var/empty \
+ -s /sbin/nologin \
+ -G hitide \
+ -g "Lotide UI" \
+ hitide 2>/dev/null
+
+exit 0
diff --git a/testing/lotide/lotide.confd b/testing/lotide/lotide.confd
new file mode 100644
index 00000000000..bcc82f6c436
--- /dev/null
+++ b/testing/lotide/lotide.confd
@@ -0,0 +1,33 @@
+# Configuration for /etc/init.d/lotide
+
+# Credentials for database connection. For examples, see
+# https://docs.rs/tokio-postgres/0.6.0/tokio_postgres/config/struct.Config.html#examples-1
+DATABASE_URL="postgres://user:password@localhost/lotide"
+
+# Port the lotide backend listens on.
+# (If not set, defaults to 3333.)
+#LOTIDE_PORT=3333
+
+# Set this to the external root address lotide is hosted at,
+# and reverse proxy all `application/activity+json` and
+# `application/ld+json` content types to "http://localhost:3333/apub"
+HOST_URL_ACTIVITYPUB="https://lotide.example.com"
+
+# Lotide API endpoint
+HOST_URL_API="https://lotide.example.com/api"
+
+# Set to `true` to make signatures work with the proxy setup
+APUB_PROXY_REWRITES="true"
+
+# Set to `true` to make ratelimiting work with the proxy setup
+ALLOW_FORWARDED="true"
+
+# URL used to access SMTP server, required for sending email
+#SMTP_URL="smtps://username:password@smtp.example.com"
+
+# From value used in sent emails, required for sending email
+#SMTP_FROM="admin@lotide.example.com"
+
+# Directory on disk used for storing uploaded images.
+# (If not set, image uploads will be disabled.)
+#MEDIA_LOCATION="/var/lib/lotide/media"
diff --git a/testing/lotide/lotide.initd b/testing/lotide/lotide.initd
new file mode 100644
index 00000000000..ab275f9cf56
--- /dev/null
+++ b/testing/lotide/lotide.initd
@@ -0,0 +1,80 @@
+#!/sbin/openrc-run
+
+name=lotide
+description="Lotide Backend"
+
+extra_stopped_commands="setup migrate"
+description_setup="Setup the Lotide database"
+description_migrate="Run Lotide database migrations"
+
+export DATABASE_URL
+export LOTIDE_PORT
+export HOST_URL_ACTIVITYPUB
+export HOST_URL_API
+export APUB_PROXY_REWRITES
+export ALLOW_FORWARDED
+export SMTP_URL
+export SMTP_FROM
+export MEDIA_LOCATION
+
+command="/usr/bin/lotide"
+command_background=true
+command_user="lotide:lotide"
+pidfile="/run/${RC_SVCNAME}.pid"
+error_log="/var/log/lotide.log"
+
+depend() {
+ need localmount net
+ after firewall postgresql
+}
+
+start_pre() {
+ checkpath -f -m 0640 -o "$command_user" "$error_log"
+ checkpath -d -m 0750 -o "$command_user" "/var/lib/lotide"
+
+ lotide_exec migrate
+}
+
+setup() {
+ local dbname dbuser dbpass domain sqlhost sqlport sqluri
+ local sqlfile="$(mktemp -u).sql"
+
+ read -p "Lotide db name: " dbname
+ read -p "Lotide db user: " dbuser
+ read -p "Lotide db password: " dbpass
+ read -p "Lotide domain: " domain
+ read -p "PostgreSQL host: " sqlhost
+ read -p "PostgreSQL port: " sqlport
+
+ sqluri="\"postgres:\/\/$dbuser:$dbpass@$sqlhost:$sqlport\/$dbname\""
+
+ sed -i -e "s/lotide\.example\.com/$domain/g" \
+ -e "/^DATABASE_URL/s/=.*/=$sqluri/" \
+ /etc/conf.d/lotide
+
+ if [ -f /etc/conf.d/hitide ]; then
+ sed -i -e "s/lotide\.example\.com/$domain/g" \
+ /etc/conf.d/hitide
+ fi
+
+ umask 0177
+ cat > "$sqlfile" <<-EOF
+ CREATE USER $dbuser WITH PASSWORD '$dbpass';
+ CREATE DATABASE $dbname OWNER $dbuser;
+ EOF
+
+ einfo "Initialize your Lotide db with $sqlfile,"
+ einfo "then run: rc-service $RC_SVCNAME migrate"
+}
+
+migrate() {
+ ebegin "Running Lotide database migrations"
+ lotide_exec migrate setup
+ lotide_exec migrate >/dev/null
+ eend $?
+}
+
+lotide_exec() {
+ start-stop-daemon --exec "$command" --user "$command_user" \
+ -- $command_args $*
+}
diff --git a/testing/lotide/lotide.post-install b/testing/lotide/lotide.post-install
new file mode 100644
index 00000000000..c039eb83dc0
--- /dev/null
+++ b/testing/lotide/lotide.post-install
@@ -0,0 +1,7 @@
+#!/bin/sh
+
+echo "--"
+echo "Setup the Lotide database by running: rc-service lotide setup"
+echo "Run the hitide service, and setup your reverse proxy by following the example at"
+echo "https://git.sr.ht/~vpzom/lotide/tree/master/doc/INSTALL.md#recommended-proxy-setup"
+echo "--"
diff --git a/testing/lotide/lotide.pre-install b/testing/lotide/lotide.pre-install
new file mode 100644
index 00000000000..ee165c91754
--- /dev/null
+++ b/testing/lotide/lotide.pre-install
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+addgroup -S lotide 2>/dev/null
+adduser -S -D -H \
+ -h /var/lib/lotide \
+ -s /sbin/nologin \
+ -G lotide \
+ -g "Lotide Backend" \
+ lotide 2>/dev/null
+
+exit 0
diff --git a/testing/lottieconverter/APKBUILD b/testing/lottieconverter/APKBUILD
new file mode 100644
index 00000000000..66e20054bad
--- /dev/null
+++ b/testing/lottieconverter/APKBUILD
@@ -0,0 +1,49 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=lottieconverter
+pkgver=0.2_git20231219
+_gitrev=3ad34af7bbcf9197fda782a5832b18b72a3bb939
+pkgrel=0
+pkgdesc="Simple, dummy lottie converter"
+url="https://github.com/sot-tech/LottieConverter"
+arch="all"
+license="BSD-3-Clause"
+makedepends="
+ cmake
+ giflib-dev
+ libpng-dev
+ rlottie-dev
+ samurai
+ zlib-dev
+"
+subpackages="$pkgname-doc"
+source="
+ $pkgname-$_gitrev.tar.gz::https://github.com/sot-tech/LottieConverter/archive/$_gitrev.tar.gz
+"
+builddir="$srcdir/LottieConverter-$_gitrev"
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DSYSTEM_GL=1 \
+ -DSYSTEM_RL=1
+
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build -C Release --output-on-failure
+}
+
+package() {
+ install -Dm755 build/lottieconverter -t "$pkgdir"/usr/bin
+
+ install -Dm644 LICENSE.txt "$pkgdir"/usr/share/licenses/lottieconverter/LICENSE
+}
+
+sha512sums="
+770b305ecb843807a2519094f090c092baee56a572b7e52c7d6cde079c179e6aa57ebdabf8448cbbaedda7b7ae9f6f0552389b900bae2b3de00eca8ea9408d45 lottieconverter-3ad34af7bbcf9197fda782a5832b18b72a3bb939.tar.gz
+"
diff --git a/testing/lout/APKBUILD b/testing/lout/APKBUILD
index 21f88a677fd..d39995e6e82 100644
--- a/testing/lout/APKBUILD
+++ b/testing/lout/APKBUILD
@@ -1,9 +1,9 @@
# Maintainer: Paul Bredbury <brebs@sent.com>
pkgname=lout
-pkgver=3.42
-pkgrel=1
+pkgver=3.42.2
+pkgrel=0
pkgdesc="Lightweight typesetting and document formatting system"
-url="https://savannah.nongnu.org/projects/lout"
+url="https://github.com/william8000/lout"
arch="all"
license="GPL-3.0-or-later"
makedepends="zlib-dev"
@@ -34,6 +34,6 @@ package() {
}
sha512sums="
-2c6e496bbacbce68f1c0b6a8c4b18eb275264c04eae14afc9f59fdc7578457da001c7f0fe4c0c1a1603618a1e4528ba41e53539c3c5e8e747221abaf9d1df8f2 lout-3.42.tar.gz
-25ec49f9c650e93f68e6e06a9a9b0d0b68b4ecbe30b7d4df4c86b30f1c5b590bad49f6b4948054f49ffe13d1ad27bf72eaf4be9d3db0223eed7310ac1b443b39 makefile.patch
+1e3b419f03232a55c8d6b2d904e8a4fed4a601b4bc93f9e85bdfc78a56b6f93837d4751ae1d877e2ef19215cd9ec2ad76d83ec75cd7d74d668c89b14014304d9 lout-3.42.2.tar.gz
+5f36fcda843a5dc933f8fb6e01b23184153b80401986f233c2ec622fc459fa78b73e1dbf2c17b5973d99dd57c7cd79744b3c1d4dd4f70e156e08a0f3184db065 makefile.patch
"
diff --git a/testing/lout/makefile.patch b/testing/lout/makefile.patch
index f17dcb1daa4..cf5176bfd13 100644
--- a/testing/lout/makefile.patch
+++ b/testing/lout/makefile.patch
@@ -1,6 +1,5 @@
-diff '--color=auto' -Naur a/makefile b/makefile
---- a/makefile 2021-10-23 19:51:45.196005946 +0100
-+++ b/makefile 2021-10-23 21:34:11.902953403 +0100
+--- a/makefile
++++ b/makefile
@@ -274,16 +274,11 @@
#TRACING = -g -fno-omit-frame-pointer -fsanitize=undefined
#TRACING = -g -fno-omit-frame-pointer -fsanitize=address -fsanitize-recover
@@ -22,7 +21,7 @@ diff '--color=auto' -Naur a/makefile b/makefile
LIBFONT = font
LIBMAPS = maps
-@@ -295,7 +290,7 @@
+@@ -295,14 +290,14 @@
CHARIN = 1
CHAROUT = 0
@@ -31,30 +30,12 @@ diff '--color=auto' -Naur a/makefile b/makefile
LOC_FR = fr
LOC_DE = de
-@@ -315,7 +310,7 @@
- # Add WARN to COPTS for more checking
- WARN = -Wpointer-arith -Wclobbered -Wempty-body -Wmissing-parameter-type -Wmissing-field-initializers -Wold-style-declaration -Wtype-limits -Wuninitialized -Winit-self -Wlogical-op -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Wbad-function-cast
+ COLLATE = 1
--COPTS = -ansi -pedantic -Wall -O3 -pipe
-+COPTS += -ansi -pedantic
+-PDF_COMPRESSION = 0
+-ZLIB =
++PDF_COMPRESSION = 1
++ZLIB = -lz
+ ZLIBPATH =
- CFLAGS = -DOS_UNIX=$(OSUNIX) \
- -DOS_DOS=$(OSDOS) \
-@@ -349,7 +344,7 @@
- z49.o z50.o z51.o z52.o
-
- lout: $(OBJS)
-- $(CC) $(CFLAGS) -o lout $(OBJS) $(ZLIB) -lm
-+ $(CC) $(CFLAGS) $(LDFLAGS) -o lout $(OBJS) $(ZLIB) -lm
- chmod a+x lout
-
- $(OBJS): externs.h
-@@ -357,7 +352,7 @@
- externs.h:
-
- prg2lout: prg2lout.c
-- $(CC) $(COPTS) -o prg2lout prg2lout.c
-+ $(CC) $(COPTS) $(LDFLAGS) -o prg2lout prg2lout.c
- chmod a+x prg2lout
-
- all: lout prg2lout
+ CC = gcc
diff --git a/testing/lowjs/APKBUILD b/testing/lowjs/APKBUILD
index 9c2c4b87a8d..38fe82176fc 100644
--- a/testing/lowjs/APKBUILD
+++ b/testing/lowjs/APKBUILD
@@ -4,8 +4,9 @@ pkgname=lowjs
pkgver=1.6.2
# Keep in sync with submodules in deps/.
_gitrev_open62541="8828fa712d7076962aa67d2a0542d7892c34d964"
-_gitrev_duktape="10486db548732957ba9fc8c9e4ad01a857d268bd"
-pkgrel=0
+_commit_sha="d14bd8de2d"
+_commit_date="2021-02-28T00:53:17Z"
+pkgrel=2
pkgdesc="A port of Node.JS with far lower system requirements"
url="https://www.neonious.com/lowjs/"
arch="all !s390x !ppc64le !riscv64" # excluded archs are not supported
@@ -13,53 +14,40 @@ license="custom"
makedepends="
c-ares-dev
cmake
+ duktape-dev
jq
- mbedtls-dev
+ mbedtls2-dev
npm
- py2-setuptools
python3
- python3-dev
- yaml-dev
"
subpackages="$pkgname-doc"
source="https://github.com/neonious/lowjs/archive/v$pkgver/$pkgname-$pkgver.tar.gz
https://github.com/neonious/open62541/archive/$_gitrev_open62541/open62541-$_gitrev_open62541.tar.gz
- https://github.com/svaarala/duktape/archive/$_gitrev_duktape/duktape-$_gitrev_duktape.tar.gz
- https://pypi.org/packages/source/p/pyaml/pyaml-20.4.0.tar.gz
use-npm-ci.patch
open62541-gcc9.patch
unbundle-c-ares.patch
unbundle-mbedtls.patch
make-flags.patch
+ musl.patch
+ unbundle-duktape.patch
test.js
"
builddir="$srcdir/$pkgname-$pkgver"
+options="net" # npm
prepare() {
- cd "$builddir"
-
rm -Rf deps/open62541
mv ../open62541-$_gitrev_open62541 deps/open62541
- rm -Rf deps/duktape
- mv ../duktape-$_gitrev_duktape deps/duktape
-
- easy_install-2.7 --user ../pyaml-*
-
default_prepare
}
build() {
- local resp=$(curl -fsSL https://api.github.com/repos/neonious/lowjs/commits/v$pkgver)
- local commit_sha=$(echo "$resp" | jq -r '.sha | .[0:10]')
- local commit_date=$(echo "$resp" | jq -r '.commit.committer.date | .[0:4]+.[5:7]+.[8:10]')
- [ "$commit_sha" ] && [ "$commit_date" ] || { eerror "Failed to get commit SHA or date"; return 1; }
-
unset LDFLAGS # fails to build with -Wl,--as-needed
make -j1 \
LOW_LIB_PATH="../lib/low/" \
- LOW_VERSION="${commit_date}_${commit_sha}"
+ LOW_VERSION="${_commit_date}_${_commit_sha}"
}
check() {
@@ -81,13 +69,15 @@ package() {
install -D -m 0644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
}
-sha512sums="d013b1d631d1056baf1e5b12f606b1d14ebd3355a9cc75e5e1b6179e65918c5a5d68b79058c6ea56c848729eee74c39386451fd17c6de53667a3b542b1256c83 lowjs-1.6.2.tar.gz
+sha512sums="
+d013b1d631d1056baf1e5b12f606b1d14ebd3355a9cc75e5e1b6179e65918c5a5d68b79058c6ea56c848729eee74c39386451fd17c6de53667a3b542b1256c83 lowjs-1.6.2.tar.gz
8d992a3a8fdf1717af2497c0d2d5e9e27e490b29253da78ecd64a6ff866fcef4f7114cb7cb073a8a862efff16eddfcb9416a9c64a2659b3bc9c2294e4cec3734 open62541-8828fa712d7076962aa67d2a0542d7892c34d964.tar.gz
-7f34ae3f6f0d9bfd039ef3ba14939eb4d59cf513b5c7fac7e9aec915cb3551751a95c2e8d91d56bae9343d2a834a572516827a7997cf8596cb3e9b127e1f32d5 duktape-10486db548732957ba9fc8c9e4ad01a857d268bd.tar.gz
-432fd215e034beafc07270a6aa8b726d5a16ef8946a95c1db9a34b4f492bbe2089dffbb1ce856d3e8153ec18ac943973a23e3aa9283d53ee0b2e7ba5dcd3d317 pyaml-20.4.0.tar.gz
b8aecec6aa87eb2ab7ffecaca1989f922042ee534612229872bad10bc0e304951cb66a1d1aa3ba4e76384ca2ea28b8c5b7176eacf6b7df3d59ea7435b7894a48 use-npm-ci.patch
c2c7f10d327d2e56d2824db02c647c05773c652179f40eff7b376dfbf7eecd72b7d07c18458d59fd195993b261cb9a48e9f521ccb1a519807270c036ed8d5746 open62541-gcc9.patch
37d8810d8e89354ed8d908395ba21b7795049ff990f2d6d795d2458f511c4a9352c734f989c9eb2a54f8a06475769abe4051056d4c92e613d12103168790d361 unbundle-c-ares.patch
bc0d847cabf195911b127768ac99d7876a2c43b0bb7ed359c9691f525560b302c3ee404fb16a0245acf9d04b912dabb89dd6f9584bafeeb6fe3b07eeaaac7cdb unbundle-mbedtls.patch
6a7771e749bf567819bb028738cf38da71ab7a397211de410e2406dc3a2e87bc8d4e4c4804e25f0a76b2dc96836b020ac91d8a32c806eb2874fe65deee2c51f9 make-flags.patch
-9ee7d585c9ce17ca00e86e0f74976883fa14e70f3728cf230256f2570dafdaa3adeae1922de5f0dcb74bba8577f9394c54441bc3729c1bb58bb6a298c26651d0 test.js"
+e42dfb980acacdd4bd042bad0e625562122b84037fa8b25c2bbe8dee2b6598505205d5aa9ecc66cee5ae2d830bd847e74147323c9db183789dc09f3be58fc71c musl.patch
+03b1a8fb5ef165c0b64165e191ad4f15bfbfadde58cc46b149943bfefaeebe2d0819cf54ed28c7935640545b523fcaa73abf0d8efa9988bca70d5791988e84d5 unbundle-duktape.patch
+9ee7d585c9ce17ca00e86e0f74976883fa14e70f3728cf230256f2570dafdaa3adeae1922de5f0dcb74bba8577f9394c54441bc3729c1bb58bb6a298c26651d0 test.js
+"
diff --git a/testing/lowjs/musl.patch b/testing/lowjs/musl.patch
new file mode 100644
index 00000000000..20c9cd89980
--- /dev/null
+++ b/testing/lowjs/musl.patch
@@ -0,0 +1,45 @@
+--- a/src/low_main.cpp
++++ b/src/low_main.cpp
+@@ -78,9 +78,9 @@
+ low->in_gc = false;
+ low->disallow_native = false;
+
+- low->web_thread = NULL;
++ low->web_thread = 0;
+ for(int i = 0; i < LOW_NUM_DATA_THREADS; i++)
+- low->data_thread[i] = NULL;
++ low->data_thread[i] = 0;
+
+ low->destroying = false;
+ low->duk_flag_stop = 0;
+--- a/src/LowHTTPDirect.h
++++ b/src/LowHTTPDirect.h
+@@ -8,6 +8,7 @@
+ #include "LowLoopCallback.h"
+ #include "LowSocketDirect.h"
+
++#include <ctype.h>
+ #include <pthread.h>
+
+ #include "low_config.h"
+--- a/src/low_crypto.h
++++ b/src/low_crypto.h
+@@ -5,6 +5,7 @@
+ #ifndef __LOW_CRYPTO_H__
+ #define __LOW_CRYPTO_H__
+
++#include <ctype.h>
+ #include "duktape.h"
+
+ duk_ret_t low_crypto_create_hash(duk_context *ctx);
+--- a/src/low_opcua.h
++++ b/src/low_opcua.h
+@@ -7,6 +7,7 @@
+ #define __LOW_OPCUA_H__
+
+ #include "duktape.h"
++#include <ctype.h>
+
+ #include "low_main.h"
+ #include "LowLoopCallback.h"
+
diff --git a/testing/lowjs/unbundle-duktape.patch b/testing/lowjs/unbundle-duktape.patch
new file mode 100644
index 00000000000..40b5fba8ea3
--- /dev/null
+++ b/testing/lowjs/unbundle-duktape.patch
@@ -0,0 +1,36 @@
+--- a/Makefile
++++ b/Makefile
+@@ -1,19 +1,18 @@
+ FLAGS = -DLOW_VERSION="\"$(LOW_VERSION)\"" -DLOW_LIB_PATH="\"$(LOW_LIB_PATH)\""
+
+ C = gcc
+-CFLAGS += $(FLAGS) -Isrc -Iapp -Ideps/duktape/src-low
++CFLAGS += $(FLAGS) -Isrc -Iapp
+
+ CXX = g++
+-CXXFLAGS += $(CXXFLAGS_SERV) $(FLAGS) -Isrc -Iapp -Ideps/duktape/src-low -Ideps/open62541/build/src_generated -Ideps/open62541/include -Ideps/open62541/arch -Ideps/open62541/plugins/include -Ideps/open62541/src/client -Ideps/open62541/deps -Ideps/open62541/src --std=c++11
++CXXFLAGS += $(CXXFLAGS_SERV) $(FLAGS) -Isrc -Iapp -Ideps/open62541/build/src_generated -Ideps/open62541/include -Ideps/open62541/arch -Ideps/open62541/plugins/include -Ideps/open62541/src/client -Ideps/open62541/deps -Ideps/open62541/src --std=c++11
+
+ LD = g++
+-LDFLAGS += $(FLAGS) -lm -ldl -lpthread -lcares -lmbedcrypto -lmbedtls -lmbedx509 deps/open62541/build/bin/libopen62541.a -lresolv
++LDFLAGS += $(FLAGS) -lm -ldl -lpthread -lcares -lmbedcrypto -lmbedtls -lmbedx509 deps/open62541/build/bin/libopen62541.a -lresolv -lduktape
+
+ OBJECTS_LOW = \
+ app/main.o \
+ app/transpile.o
+ OBJECTS = \
+- deps/duktape/src-low/duktape.o \
+ src/low_main.o \
+ src/low_module.o \
+ src/low_native.o \
+@@ -60,8 +59,8 @@
+
+ obj_lowjs_serv: $(OBJECTS) $(OBJECTS_LOW) deps/mbedtls/programs/test/benchmark util/dukc
+
+-util/dukc: deps/duktape/src-low/duktape.o util/dukc.o
+- $(LD) -o util/dukc deps/duktape/src-low/duktape.o util/dukc.o $(LDFLAGS)
++util/dukc: util/dukc.o
++ $(LD) -o util/dukc util/dukc.o $(LDFLAGS)
+
+ test/bugs/duk_crash_TR20180627: deps/duktape/src-low/duktape.o test/bugs/duk_crash_TR20180627.o
+ $(LD) -o test/bugs/duk_crash_TR20180627 deps/duktape/src-low/duktape.o test/bugs/duk_crash_TR20180627.o $(LDFLAGS)
diff --git a/testing/lpac/APKBUILD b/testing/lpac/APKBUILD
new file mode 100644
index 00000000000..664b02d69b7
--- /dev/null
+++ b/testing/lpac/APKBUILD
@@ -0,0 +1,37 @@
+# Contributor: Luca Weiss <luca@z3ntu.xyz>
+# Maintainer: Luca Weiss <luca@z3ntu.xyz>
+pkgname=lpac
+pkgver=2.0.0
+pkgrel=0
+pkgdesc="C-based eUICC LPA"
+url="https://github.com/estkme-group/lpac"
+# x86: textrels
+arch="all !x86"
+license="AGPL-3.0-only AND LGPL-2.0-only AND MIT"
+makedepends="
+ cmake
+ curl-dev
+ pcsc-lite-dev
+ samurai
+ "
+subpackages="$pkgname-dbg"
+source="$pkgname-$pkgver.tar.gz::https://github.com/estkme-group/lpac/archive/refs/tags/v$pkgver.tar.gz"
+options="!check" # no tests
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCMAKE_INSTALL_RPATH=/usr/lib/lpac
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+d92037f095cdb73911f6933b09e208e33cb56e3c09155bb0492903eb7b3b5026a2605d3fcdea71bdbdd1115afb04171a8d44cb18df0fac09670dd1ba3b0be523 lpac-2.0.0.tar.gz
+"
diff --git a/testing/lpairs2/APKBUILD b/testing/lpairs2/APKBUILD
deleted file mode 100644
index 63146b9fa1e..00000000000
--- a/testing/lpairs2/APKBUILD
+++ /dev/null
@@ -1,50 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=lpairs2
-pkgver=2.1
-pkgrel=0
-pkgdesc="Classical memory game"
-url="https://lgames.sourceforge.io/LPairs/"
-arch="all"
-license="GPL-2.0-or-later"
-depends="$pkgname-data"
-makedepends="sdl2-dev sdl2_image-dev sdl2_mixer-dev sdl2_ttf-dev"
-subpackages="$pkgname-data::noarch"
-source="https://downloads.sourceforge.net/project/lgames/lpairs/lpairs2-$pkgver.tar.gz
- fix-undeclared-uint.patch
- "
-
-prepare() {
- default_prepare
- update_config_guess
- update_config_sub
- chmod +x install-sh
-}
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --sysconfdir=/etc \
- --prefix=/usr
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-data() {
- pkgdesc="$pkgdesc (data files)"
- mkdir -p "$subpkgdir"/usr/share/
- mv "$pkgdir"/usr/share/lpairs2 \
- "$subpkgdir"/usr/share/lpairs2
-}
-
-sha512sums="
-753b8107f6b55605ef43bcf75b0e3984e5df5b12d5e42fd4c4143c0d487273c3dab7e8ad848d514bda7c029fc0798ce554b705c1ae03b0a7053c9c254fbf30df lpairs2-2.1.tar.gz
-4de6934a7840153354f54c5c6a9c14d22e3d5a76030cd33131c2511d97c363d73912d53d3581fd756ff42dec9c7d4e819056e5a2eee5d92064a88a9337abe5eb fix-undeclared-uint.patch
-"
diff --git a/testing/lpairs2/fix-undeclared-uint.patch b/testing/lpairs2/fix-undeclared-uint.patch
deleted file mode 100644
index 4e231bd1526..00000000000
--- a/testing/lpairs2/fix-undeclared-uint.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/src/tools.h 2021-06-01 21:37:47.088154398 +0200
-+++ b/src/tools.h 2021-06-01 21:38:22.696329395 +0200
-@@ -17,6 +17,7 @@
-
- using namespace std;
-
-+#include <sys/types.h>
- #include <stdio.h>
- #include <stdlib.h>
- #include <math.h>
diff --git a/testing/lrcalc/APKBUILD b/testing/lrcalc/APKBUILD
new file mode 100644
index 00000000000..4a002ddf2f0
--- /dev/null
+++ b/testing/lrcalc/APKBUILD
@@ -0,0 +1,35 @@
+# Contributor: Eloi Torrents <eloitor@disroot.org>
+# Maintainer: Eloi Torrents <eloitor@disroot.org>
+pkgname=lrcalc
+pkgver=2.1
+pkgrel=1
+pkgdesc="Littlewood-Richardson Calculator"
+url="https://sites.math.rutgers.edu/~asbuch/lrcalc/"
+arch="all"
+license="GPL-3.0-or-later"
+subpackages="$pkgname-dev $pkgname-libs"
+source="https://sites.math.rutgers.edu/~asbuch/lrcalc/lrcalc-$pkgver.tar.gz"
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var \
+ --disable-static
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+76db29af51fb97e582d37b92a426cacf85fd61b8e7c2a70dc99dec23b396d62d996f0c66b5bbbd8b6928b46fa1186c9bb3c28aa91646cdccd38bd9b783af44d7 lrcalc-2.1.tar.gz
+"
diff --git a/testing/lrdf/APKBUILD b/testing/lrdf/APKBUILD
deleted file mode 100644
index 3cdb74ee585..00000000000
--- a/testing/lrdf/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Contributor: David Demelier <markand@malikania.fr>
-# Maintainer: David Demelier <markand@malikania.fr>
-pkgname=lrdf
-pkgver=0.6.1
-pkgrel=1
-pkgdesc="RDF library for accessing plugin metadata in the LADSPA plugin system"
-url="https://github.com/swh/LRDF"
-arch="all"
-license="GPL-2.0-only"
-makedepends="autoconf automake libtool raptor2-dev"
-subpackages="$pkgname-static $pkgname-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/swh/LRDF/archive/v0.6.1.tar.gz"
-builddir="$srcdir/LRDF-$pkgver"
-options="!check" # remove_test not working: https://github.com/swh/LRDF/issues/15
-
-prepare() {
- default_prepare
- autoreconf -vif
-}
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="7732813eec704aef984d056de254e4fa049fdd0a7444b6a88f75f012afe9c587cbd1295f027c77361fa42bc097cdce9d9cabdba6b86e99a3c14805d84258df1c lrdf-0.6.1.tar.gz"
diff --git a/testing/lrzsz/APKBUILD b/testing/lrzsz/APKBUILD
index 3f8651ca40c..eea2d84e4ec 100644
--- a/testing/lrzsz/APKBUILD
+++ b/testing/lrzsz/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Roberto Oliveira <robertoguimaraes8@gmail.com>
pkgname=lrzsz
pkgver=0.12.20
-pkgrel=1
+pkgrel=2
pkgdesc="Unix communication package providing the XMODEM, YMODEM ZMODEM file transfer protocols"
url="https://ohse.de/uwe/software/lrzsz.html"
arch="all"
diff --git a/testing/lsd/APKBUILD b/testing/lsd/APKBUILD
index ca6acec4f99..6096f83cb3a 100644
--- a/testing/lsd/APKBUILD
+++ b/testing/lsd/APKBUILD
@@ -1,32 +1,25 @@
# Contributor: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
# Maintainer: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
pkgname=lsd
-pkgver=0.21.0
-pkgrel=1
+pkgver=1.1.1
+pkgrel=0
pkgdesc="Next-Gen ls command"
-url="https://github.com/Peltoche/lsd"
-arch="x86_64 armv7 armhf aarch64 x86 ppc64le" # limited by rust/cargo
+url="https://github.com/lsd-rs/lsd"
+arch="all"
license="Apache-2.0"
-makedepends="cargo"
-source="${pkgname}-${pkgver}.tar.gz::https://github.com/Peltoche/$pkgname/archive/refs/tags/$pkgver.tar.gz"
-
-prepare() {
- default_prepare
-
- # Optimize binary for size (https://opensourcelibs.com/lib/min-sized-rust).
- # Add strip = "symbols" optimization once it is out of nightly
- cat >> Cargo.toml <<-EOF
-
- [profile.release]
- codegen-units = 1
- lto = true
- opt-level = "z"
- panic = "abort"
- EOF
-}
+makedepends="cargo cargo-auditable"
+subpackages="
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
+ "
+source="https://github.com/lsd-rs/lsd/archive/refs/tags/v$pkgver/lsd-$pkgver.tar.gz"
+# check: tests fail in CI only due to escape code
+# net: needed for downloading dependencies
+options="!check net"
build() {
- cargo build --release --locked
+ SHELL_COMPLETIONS_DIR=completions cargo auditable build --release --locked
}
check() {
@@ -34,10 +27,12 @@ check() {
}
package() {
- cargo install --locked --path . --root="$pkgdir/usr"
- rm "$pkgdir"/usr/.crates*
+ install -Dm755 target/release/lsd -t "$pkgdir"/usr/bin/
+ install -D -m644 completions/lsd.bash "$pkgdir"/usr/share/bash-completion/completions/lsd
+ install -D -m644 completions/lsd.fish "$pkgdir"/usr/share/fish/vendor_completions.d/lsd.fish
+ install -D -m644 completions/_lsd "$pkgdir"/usr/share/zsh/site-functions/_lsd
}
sha512sums="
-7c80e33fe930c0265a63852e1f0f9201c7df1e4bd25339fc8a8eda30fd51ba32aeca19fbae1aae60e83ba0c7011981b2173c8573b1df12361a9e9a155af47bd4 lsd-0.21.0.tar.gz
+7a3f517bb9d9b2f3a43989caef1b7454c99fd7a4f49a86da09a221821a78273bf6be60404288fead4a36bf8e3f88cfb38e0b601c7edd2ff98ea847ca8ac0ed01 lsd-1.1.1.tar.gz
"
diff --git a/testing/lsdvd/APKBUILD b/testing/lsdvd/APKBUILD
new file mode 100644
index 00000000000..1f1553f3539
--- /dev/null
+++ b/testing/lsdvd/APKBUILD
@@ -0,0 +1,29 @@
+# Contributor: Dominika Liberda <ja@sdomi.pl>
+# Maintainer: Dominika Liberda <ja@sdomi.pl>
+pkgname=lsdvd
+pkgver=0.17
+pkgrel=0
+pkgdesc="Console application that displays the content of a DVD"
+url="https://sourceforge.net/projects/lsdvd/"
+arch="all"
+license="GPL-2.0-only"
+makedepends="libdvdread-dev"
+subpackages="$pkgname-doc"
+source="https://downloads.sourceforge.net/lsdvd/lsdvd-$pkgver.tar.gz"
+options="!check" # no tests
+
+build() {
+ ./configure \
+ --prefix=/usr \
+ --build=$CBUILD \
+ --host=$CHOST
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+d217ebe063c9d4c1584abe99cba5c5d09e1d600d26c58f90d542235f9a629433aa24f24fd8399c639e21391e7a5e8bdf54a9c85083aed63eae1090f4c23677e0 lsdvd-0.17.tar.gz
+"
diff --git a/testing/lshell/APKBUILD b/testing/lshell/APKBUILD
index e2043c60f77..0c561f4bde6 100644
--- a/testing/lshell/APKBUILD
+++ b/testing/lshell/APKBUILD
@@ -2,22 +2,26 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=lshell
pkgver=0.9.18
-pkgrel=7
+pkgrel=11
pkgdesc="Python3-based limited Shell"
url="https://github.com/ghantoos/lshell"
arch="noarch"
license="GPL-3.0-or-later"
depends="python3"
-makedepends="py3-setuptools"
-subpackages="$pkgname-doc"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-doc $pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/ghantoos/lshell/archive/$pkgver.tar.gz"
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
+ mv "$pkgdir"/usr/lib/python3*/site-packages/etc "$pkgdir"
}
sha512sums="546e55fd04d9913adbf6ff181d365f0aff8c94131229d4be994b29e94b925943fb32f99dc145172938535565f69405d0edad5bd2d9b7125f8770d0f0c591fece lshell-0.9.18.tar.gz"
diff --git a/testing/lsip6/APKBUILD b/testing/lsip6/APKBUILD
new file mode 100644
index 00000000000..e862f66064d
--- /dev/null
+++ b/testing/lsip6/APKBUILD
@@ -0,0 +1,30 @@
+# Contributor: Martijn Braam <martijn@brixit.nl>
+# Maintainer: Martijn Braam <martijn@brixit.nl>
+pkgname=lsip6
+pkgver=0.2.0
+pkgrel=1
+pkgdesc="Look up IPv6 link-local addresses on point-to-point links"
+url="https://git.sr.ht/~martijnbraam/lsip6"
+arch="all"
+license="MIT"
+source="$pkgname-$pkgver.tar.gz::https://git.sr.ht/~martijnbraam/lsip6/archive/$pkgver.tar.gz"
+depends="python3"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+options="!check" # No testsuite
+subpackages="$pkgname-pyc"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir"\
+ .dist/*.whl
+}
+
+
+sha512sums="
+e5af476807ff1315df9830a0de3875bde6025a7d508aa11c54d4c05f9649159bb3dec51419103427ca7cb63932e92e614ff41b7bc24f0fa2b913671cbfa3816b lsip6-0.2.0.tar.gz
+"
diff --git a/testing/lsix/APKBUILD b/testing/lsix/APKBUILD
index 9a782da9597..3d4be329904 100644
--- a/testing/lsix/APKBUILD
+++ b/testing/lsix/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Edd Salkield <edd@salkield.uk>
# Maintainer: Edd Salkield <edd@salkield.uk>
pkgname=lsix
-pkgver=1.8
+pkgver=1.8.2
pkgrel=0
pkgdesc="Preview thumbnails in the terminal using sixel graphics"
url="https://github.com/hackerb9/lsix"
@@ -12,9 +12,9 @@ source="https://github.com/hackerb9/lsix/archive/$pkgver/lsix-$pkgver.tar.gz"
options="!check" # no upstream tests
package() {
- install -D -m755 ./lsix "$pkgdir"/usr/bin/lsix
+ install -Dm755 lsix -t "$pkgdir"/usr/bin/
}
sha512sums="
-2bc670c408563923f28b291c6247e73a3e183e7ccd3b56f48065ce98f2703b62aa3f7287ef30ffffa05de91a22725a1986193800d75892db516a84a4f7a97d8a lsix-1.8.tar.gz
+735b1b052123aee2562a41f6aa3c386a0e1cc147e09add4b33092a68071ed95b8f77461a803e6a212ab445ba56ca37d0fed616296437c07235d38ac0c1ba06b8 lsix-1.8.2.tar.gz
"
diff --git a/testing/lsmash/APKBUILD b/testing/lsmash/APKBUILD
index 84810203f31..611a4938b19 100644
--- a/testing/lsmash/APKBUILD
+++ b/testing/lsmash/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer:
pkgname=lsmash
pkgver=2.14.5
-pkgrel=1
+pkgrel=2
pkgdesc="MP4 and MOV muxer/demuxer"
url="https://github.com/l-smash/l-smash"
arch="all"
diff --git a/testing/lsp-plugins/APKBUILD b/testing/lsp-plugins/APKBUILD
deleted file mode 100644
index 1ed9e8032a3..00000000000
--- a/testing/lsp-plugins/APKBUILD
+++ /dev/null
@@ -1,38 +0,0 @@
-# Contributor: psykose <alice@ayaya.dev>
-# Maintainer: psykose <alice@ayaya.dev>
-pkgname=lsp-plugins
-pkgver=1.2.1
-pkgrel=0
-pkgdesc="Collection of free plugins compatible with LADSPA, LV2 and LinuxVST"
-url="https://lsp-plug.in"
-arch="all !armv7" # ftbfs
-license="LGPL-3.0-or-later"
-options="!check" # no testsuite
-makedepends="
- cairo-dev
- jack-dev
- ladspa-dev
- libsndfile-dev
- lv2-dev
- mesa-dev
- php8
- "
-subpackages="$pkgname-doc $pkgname-dev"
-source="https://github.com/sadko4u/lsp-plugins/releases/download/$pkgver/lsp-plugins-src-$pkgver.tar.gz"
-builddir="$srcdir/$pkgname"
-
-build() {
- make \
- PREFIX=/usr \
- ADD_FEATURES=xdg \
- config
- make PREFIX=/usr
-}
-
-package() {
- make DESTDIR="$pkgdir" PREFIX=/usr install
-}
-
-sha512sums="
-7246d60cd34313aa05a9167218d84cfd7a8d839520de44d1cb52e9da4df25a3f76a4cc1af17b5914532f0aa7227071e9b0cc4d9b87cab57d77feb759f26bd461 lsp-plugins-src-1.2.1.tar.gz
-"
diff --git a/testing/lua-ansicolors/APKBUILD b/testing/lua-ansicolors/APKBUILD
deleted file mode 100644
index ec8057507d3..00000000000
--- a/testing/lua-ansicolors/APKBUILD
+++ /dev/null
@@ -1,51 +0,0 @@
-# Maintainer: Guilherme Felipe da Silva <gfsilva.eng@gmail.com>
-pkgname=lua-ansicolors
-_rockname="${pkgname#lua-}"
-pkgver=1.0.2
-pkgrel=1
-pkgdesc="ANSI terminal color manipulation for Lua"
-url="https://github.com/kikito/ansicolors.lua"
-license="MIT"
-arch="all"
-makedepends="luarocks"
-options="!check" # Test dependencies not available
-source="$_rockname-$pkgver.tar.gz::https://github.com/kikito/$_rockname.lua/archive/v$pkgver.tar.gz"
-builddir="$srcdir/$_rockname.lua-$pkgver"
-
-_luaversions="5.1 5.2 5.3"
-for _v in $_luaversions; do
- makedepends="$makedepends lua$_v-dev luarocks$_v"
- subpackages="$subpackages lua$_v-${pkgname#lua-}:_subpackage"
-done
-
-build() {
- local lver; for lver in $_luaversions; do
- msg "Building for Lua $lver..."
-
- luarocks-$lver \
- --deps-mode=none \
- LUA_INCDIR="$(pkg-config --variable=includedir lua$lver)" \
- LUA_LIBDIR="$(pkg-config --variable=libdir lua$lver)" \
- make --tree="./build" \
- "$_rockname-${pkgver%??}-1.rockspec"
-
- rm "./build/lib/luarocks/rocks-$lver/manifest"
- done
-}
-
-package() {
- mkdir -p "$pkgdir"
-}
-
-_subpackage() {
- local lver="${subpkgname:3:3}"
- pkgdesc="$pkgdesc (for Lua $lver)"
- depends="lua$lver"
- install_if="$pkgname=$pkgver-r$pkgrel lua$lver"
-
- local path; for path in "lib/luarocks/rocks-$lver" "share/lua/$lver"; do
- mkdir -p "$subpkgdir/usr/${path%/*}"
- mv "$builddir/build/$path" "$subpkgdir/usr/$path/"
- done
-}
-sha512sums="d7052fc63ec09076c0fa940f506fa06ebd210cf590f35310a21c80062cbf062b6d2607c3f89b8dbb39377793e25ea11f471101913e620a7566957e7ed7efbb04 ansicolors-1.0.2.tar.gz"
diff --git a/testing/lua-crypt/APKBUILD b/testing/lua-crypt/APKBUILD
deleted file mode 100644
index 226058e87ce..00000000000
--- a/testing/lua-crypt/APKBUILD
+++ /dev/null
@@ -1,55 +0,0 @@
-# Maintainer: Díaz Urbaneja Diego <sodomon2@gmail.com>
-# Contributor: Díaz Urbaneja Diego <sodomon2@gmail.com>
-pkgname=lua-crypt
-pkgver=1.0.0
-pkgrel=0
-pkgdesc="A crypt(3)-style module for Lua. Brings its own implementations, entirely independent of your local libc"
-url="https://github.com/jprjr/lua-crypt"
-arch="all"
-license="MIT"
-options="!check" # make check not implemented
-source="lua-crypt-$pkgver.tar.gz::https://github.com/jprjr/lua-crypt/archive/$pkgver.tar.gz"
-
-_luaversions="5.1 5.2 5.3 5.4"
-for _v in $_luaversions; do
- makedepends="$makedepends lua$_v-dev"
- subpackages="$subpackages lua$_v-${pkgname#lua-}:_package"
-done
-
-prepare() {
- default_prepare
-
- local lver; for lver in $_luaversions; do
- cp -r "$builddir" "$builddir-$lver"
- done
-}
-
-build() {
- local lver; for lver in $_luaversions; do
- msg "Building for Lua $lver..."
- cd "$builddir-$lver"
- make LUA=lua$lver
- done
-}
-
-package() {
- mkdir -p "$pkgdir"
-}
-
-_package() {
- local lver="${subpkgname:3:3}"
- pkgdesc="$pkgdesc (for Lua $lver)"
- depends="lua$lver"
- install_if="$pkgname=$pkgver-r$pkgrel lua$lver"
-
- mkdir -p "$subpkgdir"
- cd "$builddir-$lver"
- mkdir -p "$subpkgdir"/usr/lib/lua/$lver/crypt
- mkdir -p "$subpkgdir"/usr/share/lua/$lver
- cp -a crypt.lua "$subpkgdir"/usr/share/lua/$lver
- cp -a crypt/core.so "$subpkgdir"/usr/lib/lua/$lver/crypt/
-}
-
-
-
-sha512sums="a3e488c60c622a5635fe6ce1c835e7cb0d9bd04c7b14416f4ea69af890b651c84f4fced2e5bdf08090d074cabb21253badd8e4ee34fbce135d4ce69353396fcf lua-crypt-1.0.0.tar.gz"
diff --git a/testing/lua-etlua/APKBUILD b/testing/lua-etlua/APKBUILD
deleted file mode 100644
index 133e4d21378..00000000000
--- a/testing/lua-etlua/APKBUILD
+++ /dev/null
@@ -1,65 +0,0 @@
-# Maintainer: Guilherme Felipe da Silva <gfsilva.eng@gmail.com>
-pkgname=lua-etlua
-_rockname="${pkgname#lua-}"
-pkgver=1.3.0
-pkgrel=2
-pkgdesc="Embedded Lua templates"
-url="https://github.com/leafo/etlua"
-license="MIT"
-arch="all"
-makedepends="luarocks"
-checkdepends="lua-busted luajit moonscript"
-source="$_rockname-$pkgver.tar.gz::https://github.com/leafo/$_rockname/archive/v$pkgver.tar.gz"
-builddir="$srcdir/$_rockname-$pkgver"
-
-_luaversions="5.1 5.2"
-for _v in $_luaversions; do
- makedepends="$makedepends lua$_v-dev luarocks$_v"
- subpackages="$subpackages lua$_v-${pkgname#lua-}:_subpackage"
- checkdepends="$checkdepends lua$_v lua$_v-busted"
-done
-
-build() {
- local lver; for lver in $_luaversions; do
- msg "Building for Lua $lver..."
-
- luarocks-$lver \
- --deps-mode=none \
- LUA_INCDIR="$(pkg-config --variable=includedir lua$lver)" \
- LUA_LIBDIR="$(pkg-config --variable=libdir lua$lver)" \
- make --tree="./build" \
- "$_rockname-dev-1.rockspec"
-
- rm "./build/lib/luarocks/rocks-$lver/manifest"
- done
-}
-
-check() {
- mkdir .bin
-
- local lver; for lver in $_luaversions; do
- msg "Testing on lua$lver..."
- ln -sf "/usr/bin/lua$lver" ".bin/lua"
- LUA_PATH="$builddir/?.lua;;" \
- PATH="$builddir/.bin:$PATH" \
- lua "/usr/bin/busted"
- done
-}
-
-package() {
- mkdir -p "$pkgdir"
-}
-
-_subpackage() {
- local lver="${subpkgname:3:3}"
- pkgdesc="$pkgdesc (for Lua $lver)"
- depends="lua$lver"
- install_if="$pkgname=$pkgver-r$pkgrel lua$lver"
-
- local path; for path in "lib/luarocks/rocks-$lver" "share/lua/$lver"; do
- mkdir -p "$subpkgdir/usr/${path%/*}"
- mv "$builddir/build/$path" "$subpkgdir/usr/$path/"
- done
-}
-
-sha512sums="132a5d7d898b791242abc3b95f47f534d0b0e2a3f9848efb95be04f92049b18c919af8c2ac162e11f78b502d346e78a73935c1ad720f5ffbb1efe90355b39a9a etlua-1.3.0.tar.gz"
diff --git a/testing/lua-fn/APKBUILD b/testing/lua-fn/APKBUILD
new file mode 100644
index 00000000000..1ad7ab595d5
--- /dev/null
+++ b/testing/lua-fn/APKBUILD
@@ -0,0 +1,24 @@
+# Contributor: Ziyao <tswuyin_st127@163.com>
+# Maintainer: Ziyao <tswuyin_st127@163.com>
+pkgname=lua-fn
+pkgver=0.1.0
+pkgrel=0
+pkgdesc="Functional programming library for Lua"
+url="https://github.com/ziyao233/fn"
+arch="noarch"
+license="MIT"
+depends="lua5.4"
+source="$pkgname-$pkgver.tar.gz::https://github.com/ziyao233/fn/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/fn-$pkgver"
+
+check() {
+ lua5.4 test.lua
+}
+
+package() {
+ install -Dm644 fn.lua -t "$pkgdir"/usr/share/lua/5.4/
+}
+
+sha512sums="
+bf5a5dfbdc51e7dd85b965a0393e6c68aad61414acc4047e5dabfcc819a7a6bea4cfb9dda03091b8b1df4225b02f48bd774b56b8f0f951202c0e88a7a78a25ad lua-fn-0.1.0.tar.gz
+"
diff --git a/testing/lua-inet/APKBUILD b/testing/lua-inet/APKBUILD
index 153d1b2f0d6..6bf66cbb61c 100644
--- a/testing/lua-inet/APKBUILD
+++ b/testing/lua-inet/APKBUILD
@@ -1,4 +1,5 @@
# Contributor: Kaarle Ritvanen <kunkku@alpinelinux.org>
+# Maintainer:
pkgname=lua-inet
_rockname=${pkgname#lua-}
pkgver=0.2.0
@@ -10,7 +11,7 @@ arch="noarch"
license="LGPL-3.0-only"
depends="lua-lpeg"
checkdepends="lua5.2 lua5.3 luacheck"
-source="$pkgname-$pkgver.tar.gz::$url/snapshot/$_gittag.tar.gz
+source="$pkgname-$pkgver.tar.gz::https://git.2e8.dk/lua-inet//snapshot/$_gittag.tar.gz
luacheck.patch"
builddir="$srcdir/$_gittag"
diff --git a/testing/lua-jsonschema/APKBUILD b/testing/lua-jsonschema/APKBUILD
deleted file mode 100644
index ae8373142ec..00000000000
--- a/testing/lua-jsonschema/APKBUILD
+++ /dev/null
@@ -1,52 +0,0 @@
-# Maintainer: Guilherme Felipe da Silva <gfsilva.eng@gmail.com>
-pkgname=lua-jsonschema
-_rockname=${pkgname#lua-}
-pkgver=0.9
-pkgrel=0
-pkgdesc="Pure Lua JSON schema validator for Lua/LuaJIT"
-url="https://github.com/iresty/jsonschema"
-license="MIT"
-arch="noarch"
-depends="lua-net-url lua-rex-pcre"
-makedepends="luarocks"
-options="!check" # Test dependencies not available
-source="$_rockname-$pkgver.tar.gz::https://github.com/iresty/jsonschema/archive/v$pkgver.tar.gz"
-builddir="$srcdir/$_rockname-$pkgver"
-_luaversions="5.1 5.2 5.3"
-
-for _luaversion in $_luaversions; do
- makedepends="$makedepends lua$_luaversion-dev"
- subpackages="$subpackages lua$_luaversion-$_rockname:_subpackage"
-done
-
-build() {
- local lver; for lver in $_luaversions; do
- msg "Building for Lua $lver..."
-
- luarocks-$lver \
- --deps-mode=none \
- LUA_INCDIR="$(pkg-config --variable=includedir lua$lver)" \
- LUA_LIBDIR="$(pkg-config --variable=libdir lua$lver)" \
- make --tree="./build" \
- "rockspec/$_rockname-master-"*".rockspec"
-
- rm "./build/lib/luarocks/rocks-$lver/manifest"
- done
-}
-
-package() {
- mkdir -p "$pkgdir"
-}
-
-_subpackage() {
- local lver="${subpkgname:3:3}"
- pkgdesc="$pkgdesc (for Lua $lver)"
- depends="lua$lver"
- install_if="$pkgname=$pkgver-r$pkgrel lua$lver"
-
- local path; for path in "lib/luarocks/rocks-$lver" "share/lua/$lver"; do
- mkdir -p "$subpkgdir/usr/${path%/*}"
- mv "$builddir/build/$path" "$subpkgdir/usr/$path/"
- done
-}
-sha512sums="e76c1a267ffc33d5092d572e65ab0d91861c37f943e657dadd38472ae38030d0f4558e441233385799a3a5452595dfb891c42ab718806d4177fa82492d4191fe jsonschema-0.9.tar.gz"
diff --git a/testing/lua-lanes/APKBUILD b/testing/lua-lanes/APKBUILD
index 0f1e7984675..b7a27d204d3 100644
--- a/testing/lua-lanes/APKBUILD
+++ b/testing/lua-lanes/APKBUILD
@@ -2,17 +2,17 @@
# Maintainer: Hani Shawa <hani.shawa@ev-box.com>
pkgname=lua-lanes
_rockname=${pkgname#lua-}
-pkgver=3.13.0
-pkgrel=0
+pkgver=3.16.0
+pkgrel=1
pkgdesc="portable, message passing multithreading library"
url="https://github.com/LuaLanes/lanes"
license="MIT"
-arch="noarch"
+arch="all"
makedepends="luarocks"
options="!check" # Test dependencies not available
source="$_rockname-$pkgver.tar.gz::https://github.com/LuaLanes/lanes/archive/v$pkgver.tar.gz"
builddir="$srcdir/$_rockname-$pkgver"
-_luaversions="5.1 5.2 5.3"
+_luaversions="5.1 5.2 5.3 5.4"
for _luaversion in $_luaversions; do
makedepends="$makedepends lua$_luaversion-dev"
@@ -42,10 +42,12 @@ _subpackage() {
depends="lua$lver"
install_if="$pkgname=$pkgver-r$pkgrel lua$lver"
- local path; for path in "lib/luarocks/rocks-$lver" "share/lua/$lver"; do
+ local path; for path in "lib/lua/$lver" "lib/luarocks/rocks-$lver" "share/lua/$lver"; do
mkdir -p "$subpkgdir/usr/${path%/*}"
mv "$builddir/build/$path" "$subpkgdir/usr/$path/"
done
}
-sha512sums="bb509181757fa2b4f07a55962015b35ca6bb867b18ec89dd655f333babe2e12f56479fa85bc98e0dacf5bec2a523265bbc3a978396dc332dc1fdda4df760b2e5 lanes-3.13.0.tar.gz"
+sha512sums="
+ffd935baae8af752591251bbb1a7f936034ad281870d453e6e1b4291c175c91537ccae23ec25a616b45e8ab601222f323e05e938d7887091ba7e132b0cd5e449 lanes-3.16.0.tar.gz
+"
diff --git a/testing/lua-language-server/APKBUILD b/testing/lua-language-server/APKBUILD
new file mode 100644
index 00000000000..1f76228ed57
--- /dev/null
+++ b/testing/lua-language-server/APKBUILD
@@ -0,0 +1,44 @@
+# Maintainer: Jordan Christiansen <xordspar0@gmail.com>
+pkgname=lua-language-server
+pkgver=3.7.4
+pkgrel=0
+pkgdesc="Language Server for Lua"
+url="https://github.com/LuaLS/lua-language-server"
+# s390x/ppc64le: ftbfs
+# 32-bit: not useful there
+arch="all !x86 !armhf !armv7 !s390x !ppc64le"
+license="MIT"
+makedepends="bash linux-headers samurai"
+source="https://github.com/LuaLS/lua-language-server/archive/refs/tags/$pkgver/lua-language-server-$pkgver.tar.gz
+ lua-language-server-submodules-$pkgver.zip.noauto::https://github.com/LuaLS/lua-language-server/releases/download/$pkgver/lua-language-server-$pkgver-submodules.zip
+ wrapper
+ "
+options="!check" # tests run in build
+
+prepare() {
+ unzip -o "$srcdir"/lua-language-server-submodules-$pkgver.zip.noauto \
+ -d "$builddir"
+ default_prepare
+}
+
+build() {
+ ninja -C 3rd/luamake -f compile/ninja/linux.ninja
+ ./3rd/luamake/luamake rebuild
+}
+
+package() {
+ install -Dm755 "$srcdir"/wrapper "$pkgdir"/usr/bin/lua-language-server
+ install -Dm755 bin/lua-language-server \
+ -t "$pkgdir"/usr/lib/lua-language-server/bin
+ install -Dm644 bin/main.lua \
+ -t "$pkgdir"/usr/lib/lua-language-server/bin
+ install -Dm644 debugger.lua main.lua \
+ -t "$pkgdir"/usr/lib/lua-language-server
+ cp -a locale meta script "$pkgdir"/usr/lib/lua-language-server
+}
+
+sha512sums="
+1efaa72b597bd3be7da9c7d4ef57163621a75fcd933fae8407df0fda4a2014c810fc149326ce30e325cc122c942444ef8cc7c4f29454653b172931560a33372c lua-language-server-3.7.4.tar.gz
+29894c4c01eeb03c5c474a3e353f47a4033ee3dad145be601b15c905a2a117363a4c3c810b976668002ffb968452ad30a019b606ab40387db35cf9e7f5f042b5 lua-language-server-submodules-3.7.4.zip.noauto
+d8d34d2ae8073c256b5f98f4cc7db058fbb92d63a5709894fca898ab47fcfcfca2d1419a1060c29464fbad937e3d09f0cde404b4d98609eec934ea4392044849 wrapper
+"
diff --git a/testing/lua-language-server/wrapper b/testing/lua-language-server/wrapper
new file mode 100755
index 00000000000..7ebcd4440f3
--- /dev/null
+++ b/testing/lua-language-server/wrapper
@@ -0,0 +1,11 @@
+#!/bin/sh
+# taken from https://github.com/archlinux/svntogit-community/blob/3b6e414da1733d2fc1bc4f830e1bd913c1f4b529/trunk/wrapper
+TMPPATH="/tmp/lua-language-server-$(id -u)"
+mkdir -p "$TMPPATH"
+INSTANCEPATH=$(mktemp -d "$TMPPATH/instance.XXXXXX")
+DEFAULT_LOGPATH="$INSTANCEPATH/log"
+DEFAULT_METAPATH="$INSTANCEPATH/meta"
+
+exec /usr/lib/lua-language-server/bin/lua-language-server -E /usr/lib/lua-language-server/main.lua \
+ --logpath="$DEFAULT_LOGPATH" --metapath="$DEFAULT_METAPATH" \
+ "$@"
diff --git a/testing/lua-lapis/APKBUILD b/testing/lua-lapis/APKBUILD
deleted file mode 100644
index 0b93fc539ed..00000000000
--- a/testing/lua-lapis/APKBUILD
+++ /dev/null
@@ -1,80 +0,0 @@
-# Contributor: Will Sinatra <wpsinatra@gmail.com>
-# Maintainer: Pegah Bahramiani <pb.bahramiani@gmail.com>
-pkgname=lua-lapis
-_rockname="${pkgname#lua-}"
-pkgver=1.9.0
-pkgrel=0
-pkgdesc="A web framework for Lua/MoonScript supporting OpenResty or http.server"
-url="https://leafo.net/lapis/"
-license="MIT"
-arch="all"
-depends="
- lua-ansicolors
- lua-cjson
- lua-date
- lua-etlua
- lua-filesystem
- lua-loadkit
- lua-lpeg
- lua-mimetypes
- lua-ossl
- lua-pgmoon
- lua-socket
-"
-makedepends="luarocks"
-options="!check" # Test dependencies not available
-source="$_rockname-$pkgver.tar.gz::https://github.com/leafo/$_rockname/archive/v$pkgver.tar.gz
- lapis-5.1"
-builddir="$srcdir/$_rockname-$pkgver"
-_luaversions="5.1"
-for _v in $_luaversions; do
- makedepends="$makedepends lua$_v-dev luarocks$_v"
- subpackages="$subpackages lua$_v-${pkgname#lua-}:_subpackage"
-done
-
-build() {
- local lver; for lver in $_luaversions; do
- msg "Building for Lua $lver..."
- luarocks-$lver \
- --deps-mode=none \
- LUA_INCDIR="$(pkg-config --variable=includedir lua$lver)" \
- LUA_LIBDIR="$(pkg-config --variable=libdir lua$lver)" \
- make --tree="./build" \
- "$_rockname-dev-1.rockspec"
- rm "./build/lib/luarocks/rocks-$lver/manifest"
- done
-}
-
-package() {
- mkdir -p "$pkgdir"
-}
-
-_subpackage() {
- local lver="${subpkgname:3:3}"
- pkgdesc="$pkgdesc (for Lua $lver)"
- depends="
- lua$lver
- lua$_v-ansicolors
- lua$_v-cjson
- lua-date
- lua$_v-etlua
- lua$_v-filesystem
- lua$_v-loadkit
- lua$_v-lpeg
- lua$_v-mimetypes
- lua$_v-ossl
- lua$_v-pgmoon
- lua$_v-socket
-"
- install_if="$pkgname=$pkgver-r$pkgrel lua$lver"
- install -Dm 755 "$srcdir/lapis-$lver" "$subpkgdir/usr/bin/lapis"
- local path; for path in "lib/luarocks/rocks-$lver" "share/lua/$lver"; do
- mkdir -p "$subpkgdir/usr/${path%/*}"
- mv "$builddir/build/$path" "$subpkgdir/usr/$path/"
- done
-}
-
-sha512sums="
-a83681a6b1e65c25bf9372d704ca9640e751a1594c75ca7682f2ca75e6ce7e0438f22eb43a1ffebd9e7cdabab3489809d786b38e406a1156eb3c8d0901ad1d22 lapis-1.9.0.tar.gz
-c4be44e42089e9c99aff2c092a2654b4b7f3814cbc2036c2d0c43742302760be189bd00072584433c78bcee25bfd37a0ced0f62da0f0d27d04e52f3b64a4e33e lapis-5.1
-"
diff --git a/testing/lua-lapis/lapis-5.1 b/testing/lua-lapis/lapis-5.1
deleted file mode 100644
index 93ab94df8bb..00000000000
--- a/testing/lua-lapis/lapis-5.1
+++ /dev/null
@@ -1,3 +0,0 @@
-#!/bin/sh
-
-exec '/usr/bin/lua5.1' -e 'package.path="/usr/share/lua/5.1/?.lua;/usr/share/lua/5.1/?/init.lua;/usr/share/lua/common/?.lua;/usr/share/lua/common/?/init.lua;/usr/local/share/lua/5.1/?.lua;/usr/local/share/lua/5.1/?/init.lua;"..package.path; package.cpath="/usr/lib/lua/5.1/?.so;/usr/lib/lua/5.1/?.so;/usr/local/lib/lua/5.1/?.so;"..package.cpath' -e 'local k,l,_=pcall(require,"luarocks.loader") _=k and l.add_context("lapis","dev-1")' '/usr/lib/luarocks/rocks-5.1/lapis/dev-1/bin/lapis' "$@"
diff --git a/testing/lua-linotify/APKBUILD b/testing/lua-linotify/APKBUILD
deleted file mode 100644
index d2bcf337c4f..00000000000
--- a/testing/lua-linotify/APKBUILD
+++ /dev/null
@@ -1,51 +0,0 @@
-# Contributor: Carlo Landmeter <clandmeter@alpinelinux.org>
-# Maintainer:
-pkgname=lua-linotify
-pkgver=0.5
-pkgrel=1
-pkgdesc="Inotify bindings for Lua"
-url="https://github.com/hoelzro/linotify"
-arch="all"
-license="MIT"
-source="linotify-$pkgver.tar.gz::https://github.com/hoelzro/linotify/archive/$pkgver.tar.gz
- makefile.patch
- "
-builddir="$srcdir/linotify-$pkgver"
-
-_luaversions="5.1 5.2 5.3 5.4"
-for _v in $_luaversions; do
- makedepends="$makedepends lua$_v-dev"
- subpackages="$subpackages lua$_v-${pkgname#lua-}:_subpackage"
-done
-
-prepare() {
- default_prepare
-
- local lver; for lver in $_luaversions; do
- cp -r "$builddir" "$builddir-$lver"
- done
-}
-
-build() {
- local lver; for lver in $_luaversions; do
- msg "Building for Lua $lver..."
- make LUAVER=$lver -C "$builddir-$lver"
- done
-}
-
-package() {
- mkdir -p "$pkgdir"
-}
-
-_subpackage() {
- local lver="${subpkgname:3:3}"
- pkgdesc="$pkgdesc (for Lua $lver)"
- depends="lua$lver"
- install_if="$pkgname=$pkgver-r$pkgrel lua$lver"
-
- cd "$builddir-$lver"
- make LUAVER=$lver PREFIX="/usr" DESTDIR="$subpkgdir" install
-}
-
-sha512sums="08901e7b7954a3a57674dda633da7da5b11f9760dd13953e195d0d79974f3512182830065c321e5d0eac4ac00d1bbf9702eb34f929dbd15c085e5808f4c28ab5 linotify-0.5.tar.gz
-5cfdeb71bb2a653d985400e6d150c6d144f108fe320247fbf4aa9f757a1aeabb1cb768d4c20a475fe7e7c564d278058b4a8e7e51fb779d6bc350cefcf0b83935 makefile.patch"
diff --git a/testing/lua-linotify/makefile.patch b/testing/lua-linotify/makefile.patch
deleted file mode 100644
index d6131331b39..00000000000
--- a/testing/lua-linotify/makefile.patch
+++ /dev/null
@@ -1,25 +0,0 @@
---- ./Makefile.orig
-+++ ./Makefile
-@@ -7,19 +7,13 @@
- # out this line when debugging.
- OMIT_FRAME_POINTER = -fomit-frame-pointer
-
--# Seach for lua .pc file
--LUAPKG_CMD = $(shell pkg-config --list-all | grep Lua | awk 'FNR == 1 {print $$1}')
--CFLAGS = -fPIC -O3 -Wall $(shell pkg-config "$(LUAPKG_CMD)" --cflags)
--LFLAGS = -shared $(OMIT_FRAME_POINTER)
--INSTALL_PATH = $(shell pkg-config "$(LUAPKG_CMD)" --variable=INSTALL_CMOD)
--
- ## If your system doesn't have pkg-config, comment out the previous
- ## lines and uncomment and change the following ones according to your
- ## building enviroment.
-
--#CFLAGS = -I/usr/include/lua5.1/ -fPIC -O3 -Wall
--#LFLAGS = -shared $(OMIT_FRAME_POINTER)
--#INSTALL_PATH = /usr/lib/lua/5.1
-+CFLAGS = -I/usr/include/lua$(LUAVER)/ -fPIC -O3 -Wall
-+LFLAGS = -shared $(OMIT_FRAME_POINTER)
-+INSTALL_PATH = /usr/lib/lua/$(LUAVER)
-
- all: $(LIBNAME)
-
diff --git a/testing/lua-luastatic/APKBUILD b/testing/lua-luastatic/APKBUILD
index 3f7e2e7d503..68958420541 100644
--- a/testing/lua-luastatic/APKBUILD
+++ b/testing/lua-luastatic/APKBUILD
@@ -3,7 +3,7 @@
pkgname=lua-luastatic
_pkgname=luastatic
pkgver=0.0.12
-pkgrel=0
+pkgrel=1
pkgdesc="Build a standalone executable from a Lua program."
url="https://github.com/ers35/luastatic"
arch="all"
diff --git a/testing/lua-lupa/APKBUILD b/testing/lua-lupa/APKBUILD
index fc609ff0297..ccf2615a525 100644
--- a/testing/lua-lupa/APKBUILD
+++ b/testing/lua-lupa/APKBUILD
@@ -1,4 +1,5 @@
# Contributor: Kaarle Ritvanen <kunkku@alpinelinux.org>
+# Maintainer:
pkgname=lua-lupa
_rockname=${pkgname#lua-}
pkgver=1.0
diff --git a/testing/lua-middleclass/APKBUILD b/testing/lua-middleclass/APKBUILD
deleted file mode 100644
index 44046a29dc0..00000000000
--- a/testing/lua-middleclass/APKBUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-# Contributor: Carlo Landmeter <clandmeter@alpinelinux.org>
-# Maintainer:
-pkgname=lua-middleclass
-pkgver=4.1.1
-pkgrel=1
-_luaversions="5.1 5.2 5.3 5.4"
-pkgdesc="Object-orientation for Lua"
-url="https://github.com/kikito/middleclass"
-arch="noarch"
-license="MIT"
-makedepends="$depends_dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/kikito/middleclass/archive/v$pkgver.tar.gz"
-builddir="$srcdir/middleclass-$pkgver"
-
-for _v in $_luaversions; do
- subpackages="$subpackages lua$_v-${pkgname#*lua-}:split_${_v/./_}"
- eval "split_${_v/./_}() { _split $_v; }"
-done
-
-package() {
- mkdir -p "$pkgdir"
-}
-
-_split() {
- cd "$builddir"
- local _ver="$1"
- install_if="lua$_ver $pkgname=$pkgver-r$pkgrel"
- pkgdesc="Object-orientation for Lua $_ver"
- install -Dm644 middleclass.lua \
- "$subpkgdir/usr/share/lua/$_ver/middleclass.lua"
-}
-
-sha512sums="d408435752adf4309a444e1d573ece1d8c79f20dde91f01d7724399079f19a4bfb99083d8cdc70eeb3c1aa21971c272df88cd4c2cce0eb942857de42e4a887e3 lua-middleclass-4.1.1.tar.gz"
diff --git a/testing/lua-mimetypes/APKBUILD b/testing/lua-mimetypes/APKBUILD
index 768212c8009..fdcf5acd5a3 100644
--- a/testing/lua-mimetypes/APKBUILD
+++ b/testing/lua-mimetypes/APKBUILD
@@ -1,60 +1,33 @@
-# Maintainer: Guilherme Felipe da Silva <gfsilva.eng@gmail.com>
+# Contributor: Will Sinatra <wpsinatra@gmail.com>
+# Maintainer: Will Sinatra <wpsinatra@gmail.com>
pkgname=lua-mimetypes
-_rockname="${pkgname#lua-}"
-pkgver=1.0.0
-pkgrel=1
-pkgdesc="A MIME type database for Lua. You can use this in servers and the like to check the MIME types of files"
-url="https://bitbucket.org/leafstorm/lua-mimetypes"
-license="MIT"
+_pkgname=mimetypes
+pkgver=0_git20240207
+_commit=fd570b2dff729b430c42d7bd6a767c197d38384b
+pkgrel=0
+pkgdesc="Lua library designed to provide a non-server bound mime type database."
+url="https://github.com/tst2005/lua-mimetypes"
arch="noarch"
-makedepends="luarocks"
-checkdepends="luajit"
-_commithash="ef4ee2e81596" # v1.0.0 with updated rockspec
-source="$_rockname-$pkgver.tar.gz::https://bitbucket.org/leafstorm/lua-mimetypes/get/$_commithash.tar.gz"
-builddir="$srcdir/leafstorm-$pkgname-$_commithash"
-
-_luaversions="5.1 5.2 5.3"
-for _v in $_luaversions; do
- makedepends="$makedepends lua$_v-dev luarocks$_v"
- checkdepends="$checkdepends lua$_v"
- subpackages="$subpackages lua$_v-${pkgname#lua-}:_subpackage"
-done
-
-build() {
- local lver; for lver in $_luaversions; do
- msg "Building for Lua $lver..."
+license="MIT"
+source="$pkgname-$pkgver.tar.gz::https://github.com/tst2005/lua-mimetypes/archive/$_commit.tar.gz"
+builddir="$srcdir/$pkgname-$_commit"
+options="!check"
+subpackages="$pkgname-doc"
- luarocks-$lver \
- --deps-mode=none \
- LUA_INCDIR="$(pkg-config --variable=includedir lua$lver)" \
- LUA_LIBDIR="$(pkg-config --variable=libdir lua$lver)" \
- make --tree="./build" \
- "rockspecs/$_rockname-$pkgver-1.rockspec"
+package() {
+ local destdir="$pkgdir/usr/share/lua/common/"
+ local rockdir="$pkgdir/usr/lib/luarocks/rocks-common/$_pkgname/$pkgver-1"
- rm "./build/lib/luarocks/rocks-$lver/manifest"
- done
-}
+ mkdir -p "$destdir"
+ cp generate.lua "$destdir"/
+ cp mimetypes.lua "$destdir"/
-check() {
- local lver; for lver in $_luaversions jit; do
- msg "Testing on lua$lver..."
- lua$lver "test.lua"
- done
-}
+ mkdir -p "$rockdir"
+ echo 'rock_manifest = {}' > "$rockdir"/rock_manifest
-package() {
- mkdir -p "$pkgdir"
+ install -Dm644 "$builddir"/LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
}
-_subpackage() {
- local lver="${subpkgname:3:3}"
- pkgdesc="$pkgdesc (for Lua $lver)"
- depends="lua$lver"
- install_if="$pkgname=$pkgver-r$pkgrel lua$lver"
-
- local path; for path in "lib/luarocks/rocks-$lver" "share/lua/$lver"; do
- mkdir -p "$subpkgdir/usr/${path%/*}"
- mv "$builddir/build/$path" "$subpkgdir/usr/$path/"
- done
-}
-sha512sums="605618a04d0f8fa13d4077ed0f0a1e7846a8c028a7dc7125c3576fb6214863557cf18e4ee0318fba7de367e90e346313e1a25a03db8049ef7aa4cd2747614811 mimetypes-1.0.0.tar.gz"
+sha512sums="
+ace0ec495492e24ce9e34be2994e748e14f24794f0052ed42c9a0c12000d580f1d155c22f652bf85a6375c95b67cd92e4a0d7c337b69f87d22281c407c3092ee lua-mimetypes-0_git20240207.tar.gz
+"
diff --git a/testing/lua-net-url/APKBUILD b/testing/lua-net-url/APKBUILD
deleted file mode 100644
index f49569f15d4..00000000000
--- a/testing/lua-net-url/APKBUILD
+++ /dev/null
@@ -1,55 +0,0 @@
-# Maintainer: Guilherme Felipe da Silva <gfsilva.eng@gmail.com>
-pkgname=lua-net-url
-_rockname=${pkgname#lua-}
-pkgver=0.9
-pkgrel=1
-pkgdesc="URL and Query string parser, builder, normalizer for Lua"
-url="https://github.com/golgote/neturl"
-license="MIT"
-arch="noarch"
-makedepends="luarocks"
-subpackages="$pkgname-doc"
-options="!check" #test dependencies not available
-source="$_rockname-$pkgver.tar.gz::https://github.com/golgote/neturl/archive/$pkgver-1.tar.gz"
-builddir="$srcdir/neturl-$pkgver-1"
-
-_luaversions="5.1 5.2 5.3"
-for _luaversion in $_luaversions; do
- makedepends="$makedepends lua$_luaversion-dev"
- subpackages="$subpackages lua$_luaversion-$_rockname:_subpackage"
-done
-
-build() {
- for _luaversion in $_luaversions; do
- msg "Building for Lua $_luaversion"
- "luarocks-$_luaversion" \
- CC="$CC" \
- CFLAGS="$CFLAGS -fPIC" \
- LUA_INCDIR="$(pkg-config --variable=includedir "lua$_luaversion")" \
- LUA_LIBDIR="$(pkg-config --variable=libdir "lua$_luaversion")" \
- LUA_VERSION="$_luaversion" \
- make --tree="./build-$_luaversion" \
- "rockspec/$_rockname-$pkgver-"*".rockspec"
- done
-}
-
-package() {
- mkdir -p "$pkgdir/usr/share/doc/$pkgname/"
- cp -r "docs/" "$pkgdir/usr/share/doc/$pkgname/"
-}
-
-_subpackage() {
- _luaversion="${subpkgname%-${_rockname}}"
- _luaversion="${_luaversion#lua*}"
- pkgdesc="$pkgdesc - for Lua $_luaversion"
- depends="$depends lua$_luaversion"
- install_if="lua$_luaversion $pkgname=$pkgver-r$pkgrel"
-
- for _luascript in "$builddir/build-$_luaversion/share/lua/$_luaversion/${_rockname%-url}/"*.lua; do
- install -D -m 644 \
- -t "$subpkgdir/usr/share/lua/$_luaversion/${_rockname%-url}" \
- "$_luascript"
- done
-}
-
-sha512sums="c9a9742d3158e81edc20a972764dc8e85721f9cfa37a430ffce519db9ea3293adc3124f95aa27c380f55eeae36ef398f6c78df285a02eb0896683f53ca369f8e net-url-0.9.tar.gz"
diff --git a/testing/lua-pgmoon/APKBUILD b/testing/lua-pgmoon/APKBUILD
deleted file mode 100644
index c06c12be926..00000000000
--- a/testing/lua-pgmoon/APKBUILD
+++ /dev/null
@@ -1,52 +0,0 @@
-# Maintainer: Guilherme Felipe da Silva <gfsilva.eng@gmail.com>
-pkgname=lua-pgmoon
-_rockname="${pkgname#lua-}"
-pkgver=1.10.0
-pkgrel=1
-pkgdesc="A pure Lua Postgres driver for use in OpenResty & more"
-url="https://github.com/leafo/pgmoon"
-license="MIT"
-arch="all"
-depends="lua-bitop lua-lpeg"
-makedepends="luarocks"
-options="!check" # Test suite is broken
-source="$_rockname-$pkgver.tar.gz::https://github.com/leafo/$_rockname/archive/v$pkgver.tar.gz"
-builddir="$srcdir/$_rockname-$pkgver"
-
-_luaversions="5.1 5.2 5.3"
-for _v in $_luaversions; do
- makedepends="$makedepends lua$_v-dev luarocks$_v"
- subpackages="$subpackages lua$_v-${pkgname#lua-}:_subpackage"
-done
-
-build() {
- local lver; for lver in $_luaversions; do
- msg "Building for Lua $lver..."
-
- luarocks-$lver \
- --deps-mode=none \
- LUA_INCDIR="$(pkg-config --variable=includedir lua$lver)" \
- LUA_LIBDIR="$(pkg-config --variable=libdir lua$lver)" \
- make --tree="./build" \
- "$_rockname-dev-1.rockspec"
-
- rm "./build/lib/luarocks/rocks-$lver/manifest"
- done
-}
-
-package() {
- mkdir -p "$pkgdir"
-}
-
-_subpackage() {
- local lver="${subpkgname:3:3}"
- pkgdesc="$pkgdesc (for Lua $lver)"
- depends="lua$lver"
- install_if="$pkgname=$pkgver-r$pkgrel lua$lver"
-
- local path; for path in "lib/luarocks/rocks-$lver" "share/lua/$lver"; do
- mkdir -p "$subpkgdir/usr/${path%/*}"
- mv "$builddir/build/$path" "$subpkgdir/usr/$path/"
- done
-}
-sha512sums="aa37e57286f1dde1fb475e7c86ccd6d2830cd7246e8ffaa1182b7e0bc65dad4bc84bd28bd161afeef06fbb1b36d734bb3c3cdc22217229b90875a61d1246336a pgmoon-1.10.0.tar.gz"
diff --git a/testing/lua-pgsql/APKBUILD b/testing/lua-pgsql/APKBUILD
deleted file mode 100644
index cc4d1d635a3..00000000000
--- a/testing/lua-pgsql/APKBUILD
+++ /dev/null
@@ -1,65 +0,0 @@
-# Maintainer: Díaz Urbaneja Diego <sodomon2@gmail.com>
-# Contributor: Díaz Urbaneja Diego <sodomon2@gmail.com>
-pkgname=lua-pgsql
-pkgver=1.6.7
-pkgrel=0
-pkgdesc="Lua binding for PostgreSQL"
-url="https://github.com/arcapos/luapgsql"
-arch="all"
-license="custom"
-makedepends="libpq-dev"
-options="!check" # make check not implemented
-source="lua-pgsql-$pkgver.tar.gz::https://github.com/arcapos/luapgsql/archive/pgsql-$pkgver.tar.gz"
-builddir="$srcdir/luapgsql-pgsql-1.6.7"
-
-_luaversions="5.1 5.2 5.3 5.4"
-for _v in $_luaversions; do
- makedepends="$makedepends lua$_v-dev"
- subpackages="$subpackages lua$_v-${pkgname#lua-}:_package"
-done
-
-prepare() {
- default_prepare
-
- local lver; for lver in $_luaversions; do
- cp -r "$builddir" "$builddir-$lver"
- done
-}
-
-build() {
- local lver; for lver in $_luaversions; do
- msg "Building for Lua $lver..."
- cd "$builddir-$lver"
- if [ "$lver" = "5.1" ]; then
- make CFLAGS=" -O3 -Wall -fPIC -I/usr/include -I/usr/include/lua$lver -I/usr/include/postgresql $CFLAGS" \
- LDADD="-L/usr/lib -lpq -llua" \
- LIBDIR="/usr/lib" \
- LUADIR="/usr/lib/lua/5.1"
- else
- make CFLAGS=" -O3 -Wall -fPIC -I/usr/include -I/usr/include/lua$lver -I/usr/include/postgresql $CFLAGS" \
- LDADD="-L/usr/lib -lpq /usr/lib/liblua-$lver.so.0" \
- LIBDIR="/usr/lib" \
- LUADIR="/usr/lib/lua/$lver"
- fi
- done
-}
-
-package() {
- mkdir -p "$pkgdir"
-}
-
-_package() {
- local lver="${subpkgname:3:3}"
- pkgdesc="$pkgdesc (for Lua $lver)"
- depends="lua$lver"
- install_if="$pkgname=$pkgver-r$pkgrel lua$lver"
-
- mkdir -p "$subpkgdir"
- cd "$builddir-$lver"
- mkdir -p "$subpkgdir"/usr/lib/lua/$lver
- cp -a pgsql.so "$subpkgdir"/usr/lib/lua/$lver
-}
-
-
-
-sha512sums="13c26b3bd5f86c80e4ba157e41968bc066b9d61f20ab856e78fc85d60b40151b1dfdf0ac95f9c972e57bfaed4bec9969780e607aed36d3d587364d1e387216d7 lua-pgsql-1.6.7.tar.gz"
diff --git a/testing/lua-resty-openssl/APKBUILD b/testing/lua-resty-openssl/APKBUILD
new file mode 100644
index 00000000000..e2a5b4f9f93
--- /dev/null
+++ b/testing/lua-resty-openssl/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: Lauren N. Liberda <lauren@selfisekai.rocks>
+# Maintainer: Lauren N. Liberda <lauren@selfisekai.rocks>
+pkgname=lua-resty-openssl
+pkgver=0.8.22
+pkgrel=0
+pkgdesc="FFI-based OpenSSL binding for OpenResty"
+url="https://github.com/fffonion/lua-resty-openssl"
+# ppc64le, riscv64: no luajit/openresty
+# armhf, armv7, s390x, x86: failing tests
+arch="aarch64 x86_64"
+license="BSD-2-Clause"
+depends="
+ libcrypto3
+ libssl3
+ luajit
+ "
+checkdepends="
+ bash
+ openresty
+ perl-test-harness-utils
+ perl-test-nginx
+ "
+source="https://github.com/fffonion/lua-resty-openssl/archive/refs/tags/$pkgver/lua-resty-openssl-$pkgver.tar.gz"
+
+check() {
+ prove -r t
+}
+
+package() {
+ mkdir -p "$pkgdir/usr/share/lua/common"
+ cp -r ./lib/resty "$pkgdir/usr/share/lua/common"
+}
+
+sha512sums="
+02d9542d716a9dd9c319a2cb5228b0461dd5c8fee9650e7f87f3c8f4c115677fcb1cea208d4e4105882198b6f6a9afe8896140b6ffb6c6200701d6d4a47813cd lua-resty-openssl-0.8.22.tar.gz
+"
diff --git a/testing/lua-resty-redis/APKBUILD b/testing/lua-resty-redis/APKBUILD
index d2bd1dac135..b902f843e71 100644
--- a/testing/lua-resty-redis/APKBUILD
+++ b/testing/lua-resty-redis/APKBUILD
@@ -1,14 +1,14 @@
# Contributor: Michael Pirogov <vbnet.ru@gmail.com>
# Maintainer: Michael Pirogov <vbnet.ru@gmail.com>
pkgname=lua-resty-redis
-pkgver=0.27
-pkgrel=1
+pkgver=0.29
+pkgrel=0
pkgdesc="Lua redis client driver for the ngx_lua based on the cosocket API"
url="https://github.com/openresty/lua-resty-redis"
-arch="noarch !riscv64" # blocked by luajit
+arch="noarch !riscv64 !ppc64le" # blocked by luajit
license="BSD-2-Clause"
depends="luajit"
-source="https://github.com/openresty/lua-resty-redis/archive/v$pkgver/$pkgname-$pkgver.tar.gz"
+source="https://github.com/openresty/lua-resty-redis/archive/v$pkgver/lua-resty-redis-$pkgver.tar.gz"
options="!check" # FIXME: tests require OpenResty and additional dependencies
package() {
@@ -19,4 +19,6 @@ package() {
"$pkgdir"/usr/lib/luarocks/rocks-common/$pkgname/$pkgver-1
}
-sha512sums="cb4fb5b5bb903c8740ac5ae75960f786039406a7e9c671c758cb25aa2fc8fdfcac351db4b2aefe73f28fd89a110b85b6ef4b9c6642ae2983f67d371c99f41bd3 lua-resty-redis-0.27.tar.gz"
+sha512sums="
+f72e28de510de7b1e9760ad8936b72b83549aa85813bcd76b2b047070cbc2f8c5aab7b0ea0374640bf6bfe7e8fe93dcea5a413825d548da1671a8b643f81362e lua-resty-redis-0.29.tar.gz
+"
diff --git a/testing/lua-resty-upload/APKBUILD b/testing/lua-resty-upload/APKBUILD
index d952b84d0aa..6b8bc503b1c 100644
--- a/testing/lua-resty-upload/APKBUILD
+++ b/testing/lua-resty-upload/APKBUILD
@@ -1,11 +1,11 @@
# Maintainer: Pegah Bahramiani <pb.bahramiani@gmail.com>
pkgname=lua-resty-upload
-pkgver=0.10
+pkgver=0.11
pkgrel=0
pkgdesc="Streaming reader and parser for HTTP file uploading based on ngx_lua cosocket"
url="https://github.com/openresty/lua-resty-upload"
-# riscv64: no luajit
-arch="all !riscv64"
+# riscv64, ppc64le: no luajit
+arch="all !riscv64 !ppc64le"
license="BSD-2-Clause"
depends="luajit"
source="https://github.com/openresty/lua-resty-upload/archive/v$pkgver/lua-resty-upload-$pkgver.tar.gz"
@@ -18,4 +18,6 @@ package() {
install -D -m 644 rock_manifest \
"$pkgdir"/usr/lib/luarocks/rocks-5.1/$pkgname/$pkgver-1
}
-sha512sums="5826780d79c6e5a3644e3d8985c4274c439df60815ae3d13d94ff66dd84328aae6786c9b5a76579ed8cfbabdef7d856e240a85a3af13c1cf03f793dff33ba068 lua-resty-upload-0.10.tar.gz"
+sha512sums="
+4aa778701dd869524cc448ae62af2efdc633215806326e8bcda094cdd7e71d4e362948412d46c5121c41c01891fa369d7d55dc67c11e1db65ea6e5e074b733ba lua-resty-upload-0.11.tar.gz
+"
diff --git a/testing/lua-xml/APKBUILD b/testing/lua-xml/APKBUILD
index 0407ea92b3c..0e57ff24bbe 100644
--- a/testing/lua-xml/APKBUILD
+++ b/testing/lua-xml/APKBUILD
@@ -13,6 +13,13 @@ checkdepends="lua-lut luajit"
source="https://github.com/lubyk/$_rockname/archive/REL-$pkgver/lua-xml-$pkgver.tar.gz"
builddir="$srcdir/$_rockname-REL-$pkgver"
+case "$CARCH" in
+ppc64le|riscv64)
+ # blocked by luajit
+ options="$options !check"
+ ;;
+esac
+
_luaversions="5.1 5.2"
for _v in $_luaversions; do
makedepends="$makedepends lua$_v-dev luarocks$_v"
diff --git a/testing/lua5.2-penlight/APKBUILD b/testing/lua5.2-penlight/APKBUILD
index a8941eaf943..79ea057a862 100644
--- a/testing/lua5.2-penlight/APKBUILD
+++ b/testing/lua5.2-penlight/APKBUILD
@@ -2,16 +2,16 @@
_luaver=5.2
pkgname=lua${_luaver}-penlight
pkgver=1.3.0
-pkgrel=0
+pkgrel=1
pkgdesc="Lua libraries for extended operations on tables, lists and strings"
-url="https://github.com/stevedonovan/Penlight"
+url="https://github.com/lunarmodules/Penlight"
arch="noarch"
license="GPL"
depends="lua${_luaver}-filesystem"
makedepends="wget"
install=
subpackages="$pkgname-doc"
-source="penlight-$pkgver.tar.gz::https://github.com/stevedonovan/Penlight/archive/$pkgver.tar.gz"
+source="penlight-$pkgver.tar.gz::https://github.com/lunarmodules/Penlight/archive/$pkgver.tar.gz"
_builddir="$srcdir"/Penlight-$pkgver
diff --git a/testing/luacov-html/APKBUILD b/testing/luacov-html/APKBUILD
index 96027ef7b5b..dce09e893e6 100644
--- a/testing/luacov-html/APKBUILD
+++ b/testing/luacov-html/APKBUILD
@@ -3,7 +3,7 @@
pkgname=luacov-html
_rockname=${pkgname#lua-}
pkgver=1.0.0
-pkgrel=0
+pkgrel=1
pkgdesc="reporter for LuaCov that generates HTML files to visualize the code coverage"
options="!check" # Test dependencies not available
url="https://github.com/wesen1/luacov-html"
@@ -31,6 +31,7 @@ build() {
LUA_LIBDIR="$(pkg-config --variable=libdir lua$lver)" \
make --tree=./build \
"$_rockname-$pkgver-"*".rockspec"
+ rm "./build/lib/luarocks/rocks-$lver/manifest"
done
}
@@ -50,4 +51,6 @@ _subpackage() {
done
}
-sha512sums="68d108a01ba8a8d37fa6297b1663f0c04eac7d5e3161662351a0ae5a201145de4d385f9866be92cd28525b1357c832d7a6d6069ecde039d3d6e0e7b77c973d54 luacov-html-1.0.0.tar.gz"
+sha512sums="
+68d108a01ba8a8d37fa6297b1663f0c04eac7d5e3161662351a0ae5a201145de4d385f9866be92cd28525b1357c832d7a6d6069ecde039d3d6e0e7b77c973d54 luacov-html-1.0.0.tar.gz
+"
diff --git a/testing/luacov/APKBUILD b/testing/luacov/APKBUILD
index e6cda6fd45b..57679265768 100644
--- a/testing/luacov/APKBUILD
+++ b/testing/luacov/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Hani Shawa <hani.shawa@ev-box.com>
pkgname=luacov
_rockname=${pkgname#lua-}
-pkgver=0.14.0
+pkgver=0.15.0
pkgrel=0
pkgdesc="simple coverage analysis tool for Lua scripts"
url="https://github.com/keplerproject/luacov"
@@ -10,8 +10,11 @@ license="MIT"
arch="noarch"
makedepends="luarocks"
options="!check" # Test dependencies not available
-source="$_rockname-$pkgver.tar.gz::https://github.com/keplerproject/luacov/archive/v$pkgver.tar.gz"
-_luaversions="5.1 5.2 5.3"
+source="$_rockname-$pkgver.tar.gz::https://github.com/keplerproject/luacov/archive/v$pkgver.tar.gz
+reporter_fix.lua.patch
+"
+
+_luaversions="5.1 5.2 5.3 5.4"
for _v in $_luaversions; do
makedepends="$makedepends lua$_v-dev luarocks$_v"
@@ -23,12 +26,11 @@ build() {
msg "Building for Lua $lver..."
luarocks-$lver \
- CC="$CC" \
- CFLAGS="$CFLAGS -fPIC" \
LUA_INCDIR="$(pkg-config --variable=includedir lua$lver)" \
LUA_LIBDIR="$(pkg-config --variable=libdir lua$lver)" \
make --tree=./build \
"$_rockname-scm-1.rockspec"
+ rm "./build/lib/luarocks/rocks-$lver/manifest"
done
}
@@ -48,4 +50,7 @@ _subpackage() {
done
}
-sha512sums="44ea158ce597f705d80b9768676e401804daea91b9c2afb146a8d25aae612e895e4f42a29c4b7b3438659c596fa500af5d23b66b7f3477459747ad06ca9b7ffa luacov-0.14.0.tar.gz"
+sha512sums="
+cab02c540aad905db1fecd7f62545157c8ff9ea82f9ea602bff7b6093e3940a3a316e212a2efe30fa2439435dae6cd4005c2ee41de6b937d3e5f447bc2128a59 luacov-0.15.0.tar.gz
+8694e1d5f72da049909d1a868c5b159721c81d20ce5cf9061069732cf6d52e24a9453ad172dec47baf605ed45a8501a7f5131d6bf7609d6b81d1e1eb451e5ce9 reporter_fix.lua.patch
+"
diff --git a/testing/luacov/reporter_fix.lua.patch b/testing/luacov/reporter_fix.lua.patch
new file mode 100644
index 00000000000..b97ccd1974e
--- /dev/null
+++ b/testing/luacov/reporter_fix.lua.patch
@@ -0,0 +1,22 @@
+diff --git a/src/luacov/reporter.lua b/src/luacov/reporter.lua
+index 0aadce1..d041d10 100644
+--- a/src/luacov/reporter.lua
++++ b/src/luacov/reporter.lua
+@@ -33,7 +33,7 @@ local function dirtree(dir)
+ entry=directory..dir_sep..entry
+ local attr=lfs.attributes(entry)
+ coroutine.yield(entry,attr)
+- if attr.mode == "directory" then
++ if attr and attr.mode == "directory" then
+ yieldtree(entry)
+ end
+ end
+@@ -130,7 +130,7 @@ function ReporterBase:new(conf)
+ local function add_empty_dir_coverage_data(directory_path)
+
+ for filename, attr in dirtree(directory_path) do
+- if attr.mode == "file" and fileMatches(filename, '.%.lua$') then
++ if attr and attr.mode == "file" and fileMatches(filename, '.%.lua$') then
+ add_empty_file_coverage_data(filename)
+ end
+ end
diff --git a/testing/luakit/APKBUILD b/testing/luakit/APKBUILD
deleted file mode 100644
index f1763e89675..00000000000
--- a/testing/luakit/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
-# Maintainer:
-pkgname=luakit
-pkgver=2.3
-pkgrel=1
-pkgdesc="Fast, small, webkit based browser framework extensible by Lua"
-url="https://luakit.github.io/"
-# armv7: fails to build
-# s390x: install fails
-# riscv64: no luajit
-arch="all !armv7 !s390x !riscv64"
-license="GPL-3.0-or-later"
-depends="gsettings-desktop-schemas lua5.1-filesystem"
-makedepends="webkit2gtk-dev luajit-dev"
-checkdepends="xvfb luacheck lua5.1-luassert"
-options="!check" #fixme
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/luakit/luakit/archive/$pkgver.tar.gz
- "
-
-build() {
- make PREFIX=/usr USE_LUAJIT=1 DEVELOPMENT_PATHS=0
-}
-
-check() {
- make run-tests
-}
-
-package() {
- make PREFIX=/usr DESTDIR="$pkgdir" install
- mkdir -p "$pkgdir"/usr/share/doc/"$pkgname"
- mv "$pkgdir"/usr/share/"$pkgname"/doc/* "$pkgdir"/usr/share/doc/"$pkgname"
- rmdir "$pkgdir"/usr/share/"$pkgname"/doc
-}
-
-sha512sums="f41121e1c47c020d90fe69f858b8c348f5c3ad752891abf2b94e5b44eebe3d5c8c315342c9aa4c53bbaef548f6ef2a1d0c522d877f0a20516734755967c0bb5c luakit-2.3.tar.gz"
diff --git a/testing/luau/APKBUILD b/testing/luau/APKBUILD
deleted file mode 100644
index e8f42490062..00000000000
--- a/testing/luau/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Contributor: Rob Blanckaert <basicer@gmail.com>
-# Maintainer: Rob Blanckaert <basicer@gmail.com>
-pkgname=luau
-pkgver=0.526
-pkgrel=0
-pkgdesc="A fast, small, safe, gradually typed embeddable scripting language derived from Lua"
-url="https://github.com/roblox/luau"
-arch="all"
-license="MIT"
-makedepends="cmake linux-headers samurai"
-source="$pkgname-$pkgver.tar.gz::https://github.com/Roblox/luau/archive/refs/tags/$pkgver.tar.gz"
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build -G Ninja \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DBUILD_SHARED_LIBS=True \
- -DCMAKE_BUILD_TYPE=MinSizeRel \
- $CMAKE_CROSSOPTS
- cmake --build build
-}
-
-check() {
- "$builddir"/build/Luau.UnitTest && "$builddir"/build/Luau.Conformance
-}
-
-package() {
- install -Dm755 build/luau "$pkgdir"/usr/bin/luau
- install -Dm755 build/luau-analyze "$pkgdir"/usr/bin/luau-analyze
-}
-
-sha512sums="
-2a816666ba898a577817784f7ab00ac088d883f8ee9889a791c6c87f4cf82b3206d03587a4e8069aacac728db1afb01955e0bead1fed69c327ba70148df584b7 luau-0.526.tar.gz
-"
diff --git a/testing/luksmeta/APKBUILD b/testing/luksmeta/APKBUILD
new file mode 100644
index 00000000000..27d1f46a301
--- /dev/null
+++ b/testing/luksmeta/APKBUILD
@@ -0,0 +1,43 @@
+# Contributor: Michał Polański <michal@polanski.me>
+# Maintainer: Michał Polański <michal@polanski.me>
+pkgname=luksmeta
+pkgver=9
+pkgrel=0
+pkgdesc="Library for storing metadata in the LUKSv1 header"
+url="https://github.com/latchset/luksmeta"
+license="LGPL-2.0-or-later"
+arch="all"
+makedepends="autoconf automake libtool asciidoc cryptsetup-dev"
+checkdepends="bash cryptsetup"
+subpackages="$pkgname-dev $pkgname-doc"
+source="https://github.com/latchset/luksmeta/archive/v$pkgver/luksmeta-$pkgver.tar.gz
+ force-creation-of-luks1-containers-in-tests.patch
+ relax-content-tests-in-test-suite.patch
+ musl.patch
+ "
+
+prepare() {
+ default_prepare
+
+ autoreconf -fi
+}
+
+build() {
+ ./configure --prefix=/usr
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+874331988fe2648d4924779b348f190ed5c6e4d71da4ad027f176e3f8dcbc78fc26e9f9b8402a97437db5b884db31b72598afc70e025cd8533168a5986417a76 luksmeta-9.tar.gz
+a97a000c8bd952fb5a6569ef111bdef5acd56d75bd6bc1f3be3b44113ec6d313400961d018ebe442aa214ac6e8aba41bcce838cb5e34cacd3f84d012910ae729 force-creation-of-luks1-containers-in-tests.patch
+6821e042fcc182dbb7c534a2108d486600c87d3c30fa02491cf6cb47867de85bab6f1fdb13c701bab53a794a9d5559e78dc5a9e53cc169d8792e754dee927741 relax-content-tests-in-test-suite.patch
+aec3e5b91464a71e33ca7e53c51924cf99b5a7048923bf253c88587d607d763c6671c2fa89c21c0447020368487270dd31f65a40477d277880a9f12d6569431e musl.patch
+"
diff --git a/testing/luksmeta/force-creation-of-luks1-containers-in-tests.patch b/testing/luksmeta/force-creation-of-luks1-containers-in-tests.patch
new file mode 100644
index 00000000000..9f3cd5669cf
--- /dev/null
+++ b/testing/luksmeta/force-creation-of-luks1-containers-in-tests.patch
@@ -0,0 +1,26 @@
+Patch-Source: https://github.com/latchset/luksmeta/pull/10
+
+From af81262c0f6e6b37e5c6b520d0fca3a9f9b6c1fc Mon Sep 17 00:00:00 2001
+From: Christoph Biedl <debian.axhn@manchmal.in-ulm.de>
+Date: Sat, 28 Sep 2019 13:24:11 +0200
+Subject: [PATCH] Force creation of LUKS1 containers in test suite
+
+Cryptsetup defaults to LUKS2 since version 2.1, make sure to create
+LUKS1 containers instead by using the "--type luks1" argument.
+---
+ test-luksmeta | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/test-luksmeta b/test-luksmeta
+index fd17ead..f1e8b2e 100755
+--- a/test-luksmeta
++++ b/test-luksmeta
+@@ -11,7 +11,7 @@ function onexit() {
+ trap 'onexit' EXIT
+
+ truncate -s 4M $tmp
+-echo -n foo | cryptsetup luksFormat $tmp -
++echo -n foo | cryptsetup luksFormat --type luks1 $tmp -
+
+ ! ./luksmeta test -d $tmp
+
diff --git a/testing/luksmeta/musl.patch b/testing/luksmeta/musl.patch
new file mode 100644
index 00000000000..26eb47ab86d
--- /dev/null
+++ b/testing/luksmeta/musl.patch
@@ -0,0 +1,175 @@
+The tests use glibc's error.h, which musl libc does not implement.
+Use err.h instead.
+
+--- a/test-lm-big.c
++++ b/test-lm-big.c
+@@ -19,7 +19,7 @@
+
+ #include "test.h"
+ #include <errno.h>
+-#include <error.h>
++#include <err.h>
+ #include <stdlib.h>
+ #include <string.h>
+
+@@ -107,7 +107,7 @@ main(int argc, char *argv[])
+ /* Set the data. */
+ r = luksmeta_save(cd, CRYPT_ANY_SLOT, UUID, DATA, sizeof(DATA));
+ if (r < 0)
+- error(EXIT_FAILURE, -r, "luksmeta_save()");
++ err(EXIT_FAILURE, "luksmeta_save()");
+
+ assert(test_layout((range_t[]) {
+ { 0, 1024 }, /* LUKS header */
+--- a/test-lm-init.c
++++ b/test-lm-init.c
+@@ -22,7 +22,7 @@
+ #include <sys/stat.h>
+ #include <fcntl.h>
+ #include <errno.h>
+-#include <error.h>
++#include <err.h>
+ #include <stdio.h>
+ #include <stdlib.h>
+
+@@ -89,11 +89,11 @@ main(int argc, char *argv[])
+ /* Test to make sure that data corruption is picked up correctly. */
+ fd = open(filename, O_RDWR | O_SYNC);
+ if (fd < 0)
+- error(EXIT_FAILURE, errno, "%s:%d", __FILE__, __LINE__);
++ err(EXIT_FAILURE, "%s:%d", __FILE__, __LINE__);
+ if (lseek(fd, offset + 16, SEEK_SET) == -1)
+- error(EXIT_FAILURE, errno, "%s:%d", __FILE__, __LINE__);
++ err(EXIT_FAILURE, "%s:%d", __FILE__, __LINE__);
+ if (write(fd, &(char) { 17 }, 1) != 1)
+- error(EXIT_FAILURE, errno, "%s:%d", __FILE__, __LINE__);
++ err(EXIT_FAILURE, "%s:%d", __FILE__, __LINE__);
+ close(fd);
+ assert(luksmeta_save(cd, 2, UUID, UUID, sizeof(UUID)) == -EINVAL);
+ assert(luksmeta_load(cd, 2, uuid, data, sizeof(data)) == -EINVAL);
+--- a/test-lm-one.c
++++ b/test-lm-one.c
+@@ -18,7 +18,7 @@
+ */
+
+ #include "test.h"
+-#include <error.h>
++#include <err.h>
+ #include <errno.h>
+ #include <stdlib.h>
+ #include <string.h>
+@@ -44,7 +44,7 @@ main(int argc, char *argv[])
+
+ r = luksmeta_save(cd, CRYPT_ANY_SLOT, UUID, UUID, sizeof(UUID));
+ if (r < 0)
+- error(EXIT_FAILURE, -r, "%s:%d", __FILE__, __LINE__);
++ err(EXIT_FAILURE, "%s:%d", __FILE__, __LINE__);
+
+ /* Test the layout state. */
+ assert(test_layout((range_t[]) {
+--- a/test-lm-two.c
++++ b/test-lm-two.c
+@@ -18,7 +18,7 @@
+ */
+
+ #include "test.h"
+-#include <error.h>
++#include <err.h>
+ #include <stdlib.h>
+ #include <string.h>
+
+@@ -49,7 +49,7 @@ main(int argc, char *argv[])
+ /* Add one metadata. */
+ r = luksmeta_save(cd, 0, UUID0, UUID0, sizeof(UUID0));
+ if (r < 0)
+- error(EXIT_FAILURE, -r, "luksmeta_save()");
++ err(EXIT_FAILURE, "luksmeta_save()");
+
+ assert(test_layout((range_t[]) {
+ { 0, 1024 }, /* LUKS header */
+@@ -66,7 +66,7 @@ main(int argc, char *argv[])
+ /* Add a second metadata. */
+ r = luksmeta_save(cd, 1, UUID1, UUID1, sizeof(UUID1));
+ if (r < 0)
+- error(EXIT_FAILURE, -r, "luksmeta_save()");
++ err(EXIT_FAILURE, "luksmeta_save()");
+
+ assert(test_layout((range_t[]) {
+ { 0, 1024 }, /* LUKS header */
+--- a/test.c
++++ b/test.c
+@@ -18,7 +18,7 @@
+ */
+
+ #include <assert.h>
+-#include <error.h>
++#include <err.h>
+ #include <errno.h>
+ #include <stdbool.h>
+ #include <stdio.h>
+@@ -105,7 +105,7 @@ test_hole(struct crypt_device *cd, uint32_t *offset, uint32_t *length)
+
+ payload_offset = crypt_get_data_offset(cd) * 512;
+ if (payload_offset < ALIGN(1, true))
+- error(EXIT_FAILURE, -r, "%s:%d", __FILE__, __LINE__);
++ err(EXIT_FAILURE, "%s:%d", __FILE__, __LINE__);
+
+ for (int slot = 0; slot < crypt_keyslot_max(CRYPT_LUKS1); slot++) {
+ uint64_t off = 0;
+@@ -113,7 +113,7 @@ test_hole(struct crypt_device *cd, uint32_t *offset, uint32_t *length)
+
+ r = crypt_keyslot_area(cd, slot, &off, &len);
+ if (r < 0)
+- error(EXIT_FAILURE, -r, "%s:%d", __FILE__, __LINE__);
++ err(EXIT_FAILURE, "%s:%d", __FILE__, __LINE__);
+
+ if (off + len > keyarea_end)
+ keyarea_end = off + len;
+@@ -132,23 +132,23 @@ test_format(void)
+
+ fd = mkstemp(filename);
+ if (fd < 0)
+- error(EXIT_FAILURE, errno, "%s:%d", __FILE__, __LINE__);
++ err(EXIT_FAILURE, "%s:%d", __FILE__, __LINE__);
+
+ /* Create a 4MB sparse file. */
+ if (lseek(fd, 4194303, SEEK_SET) == -1)
+- error(EXIT_FAILURE, errno, "%s:%d", __FILE__, __LINE__);
++ err(EXIT_FAILURE, "%s:%d", __FILE__, __LINE__);
+ if (write(fd, "", 1) != 1)
+- error(EXIT_FAILURE, errno, "%s:%d", __FILE__, __LINE__);
++ err(EXIT_FAILURE, "%s:%d", __FILE__, __LINE__);
+ close(fd);
+
+ r = crypt_init(&cd, filename);
+ if (r < 0)
+- error(EXIT_FAILURE, -r, "%s:%d", __FILE__, __LINE__);
++ err(EXIT_FAILURE, "%s:%d", __FILE__, __LINE__);
+
+ r = crypt_format(cd, CRYPT_LUKS1, "aes", "xts-plain64",
+ NULL, NULL, 32, NULL);
+ if (r < 0)
+- error(EXIT_FAILURE, -r, "%s:%d", __FILE__, __LINE__);
++ err(EXIT_FAILURE, "%s:%d", __FILE__, __LINE__);
+
+ return cd;
+ }
+@@ -161,15 +161,15 @@ test_init(void)
+
+ r = crypt_init(&cd, filename);
+ if (r < 0)
+- error(EXIT_FAILURE, -r, "%s:%d", __FILE__, __LINE__);
++ err(EXIT_FAILURE, "%s:%d", __FILE__, __LINE__);
+
+ r = crypt_load(cd, CRYPT_LUKS1, NULL);
+ if (r < 0)
+- error(EXIT_FAILURE, -r, "%s:%d", __FILE__, __LINE__);
++ err(EXIT_FAILURE, "%s:%d", __FILE__, __LINE__);
+
+ r = luksmeta_init(cd);
+ if (r < 0)
+- error(EXIT_FAILURE, -r, "%s:%d", __FILE__, __LINE__);
++ err(EXIT_FAILURE, "%s:%d", __FILE__, __LINE__);
+
+ return cd;
+ }
diff --git a/testing/luksmeta/relax-content-tests-in-test-suite.patch b/testing/luksmeta/relax-content-tests-in-test-suite.patch
new file mode 100644
index 00000000000..563fe634517
--- /dev/null
+++ b/testing/luksmeta/relax-content-tests-in-test-suite.patch
@@ -0,0 +1,150 @@
+Patch-Source: https://github.com/latchset/luksmeta/pull/7
+
+From 9c550e0675f9fa8fe58c996660c61eca11b424d1 Mon Sep 17 00:00:00 2001
+From: Christoph Biedl <debian.axhn@manchmal.in-ulm.de>
+Date: Mon, 10 Dec 2018 14:25:33 +0100
+Subject: [PATCH] Relax content tests in test suite
+
+Starting with version 2.0.5, cryptsetup wipes the full LUKS header
+and fills unused sections with random data, this was introduced
+in commit
+
+ commit c2bce3e93ecee41f661b589ee28f112eb538259e
+ Author: Milan Broz <gmazyland@gmail.com>
+ Date: Sun Oct 14 13:11:50 2018 +0200
+
+ Wipe full header areas (including unused) during LUKS format.
+
+While this is the right thing to do, it breaks luksmeta tests. So
+relax them.
+
+Bug-Debian: https://bugs.debian.org/915256
+Resolves: https://github.com/latchset/luksmeta/issues/6
+---
+ test-lm-assumptions.c | 3 ++-
+ test-lm-big.c | 4 ++--
+ test-lm-init.c | 4 ++--
+ test-lm-one.c | 4 ++--
+ test-lm-two.c | 8 ++++----
+ 5 files changed, 12 insertions(+), 11 deletions(-)
+
+diff --git a/test-lm-assumptions.c b/test-lm-assumptions.c
+index d9ff20b..b4f293f 100644
+--- a/test-lm-assumptions.c
++++ b/test-lm-assumptions.c
+@@ -28,7 +28,8 @@ main(int argc, char *argv[])
+ /* Test the layout state. */
+ assert(test_layout((range_t[]) {
+ { 0, 1024 }, /* LUKS header */
+- END(1024), /* Rest of the file */
++ { 1024, 3072, true }, /* Keyslot Area */
++ { 0, 0 },
+ }));
+
+ unlink(filename);
+diff --git a/test-lm-big.c b/test-lm-big.c
+index 6098e59..eb94d3b 100644
+--- a/test-lm-big.c
++++ b/test-lm-big.c
+@@ -111,7 +111,7 @@ main(int argc, char *argv[])
+
+ assert(test_layout((range_t[]) {
+ { 0, 1024 }, /* LUKS header */
+- { 1024, offset - 1024, true }, /* Keyslot Area */
++ { 1024, 3072, true }, /* Keyslot Area */
+ { offset, 4096 }, /* luksmeta header */
+ { offset + 4096, 4096 }, /* luksmeta slot 0 */
+ { offset + 8192, 4096 }, /* luksmeta slot 0 (cont) */
+@@ -127,7 +127,7 @@ main(int argc, char *argv[])
+
+ assert(test_layout((range_t[]) {
+ { 0, 1024 }, /* LUKS header */
+- { 1024, offset - 1024, true }, /* Keyslot Area */
++ { 1024, 3072, true }, /* Keyslot Area */
+ { offset, 4096 }, /* luksmeta header */
+ END(offset + 4096), /* Rest of the file */
+ }));
+diff --git a/test-lm-init.c b/test-lm-init.c
+index 2a6cb45..b16d597 100644
+--- a/test-lm-init.c
++++ b/test-lm-init.c
+@@ -57,7 +57,7 @@ main(int argc, char *argv[])
+ /* Test the layout state. */
+ assert(test_layout((range_t[]) {
+ { 0, 1024 }, /* LUKS header */
+- { 1024, offset - 1024, true }, /* Keyslot Area */
++ { 1024, 3072, true }, /* Keyslot Area */
+ { offset, 4096 }, /* luksmeta header */
+ END(offset + 4096), /* Rest of the file */
+ }));
+@@ -106,7 +106,7 @@ main(int argc, char *argv[])
+ assert(luksmeta_test(cd) == -ENOENT);
+ assert(test_layout((range_t[]) {
+ { 0, 1024 }, /* LUKS header */
+- { 1024, offset - 1024, true }, /* Keyslot Area */
++ { 1024, 3072, true }, /* Keyslot Area */
+ END(offset), /* Rest of the file */
+ }));
+
+diff --git a/test-lm-one.c b/test-lm-one.c
+index 8deb70a..18613e0 100644
+--- a/test-lm-one.c
++++ b/test-lm-one.c
+@@ -49,7 +49,7 @@ main(int argc, char *argv[])
+ /* Test the layout state. */
+ assert(test_layout((range_t[]) {
+ { 0, 1024 }, /* LUKS header */
+- { 1024, offset - 1024, true }, /* Keyslot Area */
++ { 1024, 3072, true }, /* Keyslot Area */
+ { offset, 4096 }, /* luksmeta header */
+ { offset + 4096, 4096 }, /* luksmeta slot 0 */
+ END(offset + 8192), /* Rest of the file */
+@@ -68,7 +68,7 @@ main(int argc, char *argv[])
+ /* Test the layout state. */
+ assert(test_layout((range_t[]) {
+ { 0, 1024 }, /* LUKS header */
+- { 1024, offset - 1024, true }, /* Keyslot Area */
++ { 1024, 3072, true }, /* Keyslot Area */
+ { offset, 4096 }, /* luksmeta header */
+ END(offset + 4096), /* Rest of the file */
+ }));
+diff --git a/test-lm-two.c b/test-lm-two.c
+index 78fea5b..9f0b1c5 100644
+--- a/test-lm-two.c
++++ b/test-lm-two.c
+@@ -53,7 +53,7 @@ main(int argc, char *argv[])
+
+ assert(test_layout((range_t[]) {
+ { 0, 1024 }, /* LUKS header */
+- { 1024, offset - 1024, true }, /* Keyslot Area */
++ { 1024, 3072, true }, /* Keyslot Area */
+ { offset, 4096 }, /* luksmeta header */
+ { offset + 4096, 4096 }, /* luksmeta slot 0 */
+ END(offset + 8192), /* Rest of the file */
+@@ -70,7 +70,7 @@ main(int argc, char *argv[])
+
+ assert(test_layout((range_t[]) {
+ { 0, 1024 }, /* LUKS header */
+- { 1024, offset - 1024, true }, /* Keyslot Area */
++ { 1024, 3072, true }, /* Keyslot Area */
+ { offset, 4096 }, /* luksmeta header */
+ { offset + 4096, 4096 }, /* luksmeta slot 0 */
+ { offset + 8192, 4096 }, /* luksmeta slot 1 */
+@@ -88,7 +88,7 @@ main(int argc, char *argv[])
+ assert(luksmeta_wipe(cd, 0, UUID0) == 0);
+ assert(test_layout((range_t[]) {
+ { 0, 1024 }, /* LUKS header */
+- { 1024, offset - 1024, true }, /* Keyslot Area */
++ { 1024, 3072, true }, /* Keyslot Area */
+ { offset, 4096 }, /* luksmeta header */
+ { offset + 4096, 4096, true }, /* luksmeta slot 0 */
+ { offset + 8192, 4096 }, /* luksmeta slot 1 */
+@@ -99,7 +99,7 @@ main(int argc, char *argv[])
+ assert(luksmeta_wipe(cd, 1, UUID1) == 0);
+ assert(test_layout((range_t[]) {
+ { 0, 1024 }, /* LUKS header */
+- { 1024, offset - 1024, true }, /* Keyslot Area */
++ { 1024, 3072, true }, /* Keyslot Area */
+ { offset, 4096 }, /* luksmeta header */
+ END(offset + 4096), /* Rest of the file */
+ }));
diff --git a/testing/lumina-desktop/APKBUILD b/testing/lumina-desktop/APKBUILD
index c98f7efbb1b..bcbe312cb04 100644
--- a/testing/lumina-desktop/APKBUILD
+++ b/testing/lumina-desktop/APKBUILD
@@ -1,12 +1,12 @@
# Contributor: Damian Kurek <starfire24680@gmail.com>
# Maintainer: Damian Kurek <starfire24680@gmail.com>
pkgname=lumina-desktop
-pkgver=1.6.0
+pkgver=1.6.2
pkgrel=0
pkgdesc="Lumina desktop environment"
options="!check" #no tests available
url="https://lumina-desktop.org/"
-arch="all !armhf !armv7" # qt5-multimedia-dev
+arch="all"
license="BSD-3-Clause"
depends="
$pkgname-core
@@ -17,11 +17,12 @@ depends="
$pkgname-mediaplayer
$pkgname-photo
$pkgname-screenshot
+ $pkgname-sudo
$pkgname-textedit
"
makedepends="qt5-qtbase-dev qt5-qtx11extras-dev qt5-qtsvg-dev
qt5-qtmultimedia-dev qt5-qttools-dev xcb-util-wm-dev xcb-util-image-dev
- libxcursor-dev"
+ libxcursor-dev qt5-qtdeclarative-dev"
source="$pkgname-$pkgver.tar.gz::https://github.com/lumina-desktop/lumina/archive/v$pkgver.tar.gz"
builddir="$srcdir/lumina-$pkgver"
subpackages="$depends $pkgname-doc"
@@ -46,8 +47,11 @@ core() {
depends="libxcb xinit fluxbox xscreensaver xterm xbacklight pavucontrol acpi dbus"
amove usr/share/lumina-desktop/*.ogg
amove usr/share/lumina-desktop/*.jpg
+ amove usr/share/lumina-desktop/*.png
amove usr/share/lumina-desktop/*.conf
amove usr/share/lumina-desktop/fluxbox*
+ amove usr/share/lumina-desktop/theme.cfg
+ amove usr/share/lumina-desktop/screensavers
amove usr/share/icons
amove etc
@@ -73,6 +77,8 @@ core() {
amove usr/share/lthemeengine
amove usr/share/applications/lthemeengine.desktop
amove usr/bin/lthemeengine*
+
+ amove usr/bin/lumina-pingcursor
}
coreutils() {
@@ -147,6 +153,13 @@ screenshot() {
amove usr/share/lumina-desktop/i18n/l-screenshot*
}
+sudo() {
+ pkgdesc="Lumina sudo"
+ depends=""
+
+ amove usr/bin/lumina-sudo
+}
+
textedit() {
pkgdesc="Lumina desktop textedit"
depends=""
@@ -158,4 +171,6 @@ textedit() {
amove usr/share/lumina-desktop/i18n/l-te*
}
-sha512sums="e923961568ab9cc32206386066daef8cd1fd2db2d5c3e260e5c1da1dcda39a516576418f607cefbe5a1c47d8684591d0e595fb344e7d6aa2859fc3b326e73e30 lumina-desktop-1.6.0.tar.gz"
+sha512sums="
+0bebdc89644af49232ad9a0b753dee501f3e99d6615ce926c71790932d228e3c6676ca4835aeaf6badf5455102278261e48bed0d3004fe9209aca68d620cae02 lumina-desktop-1.6.2.tar.gz
+"
diff --git a/testing/lumins/APKBUILD b/testing/lumins/APKBUILD
index d1b47e26925..64465a8e147 100644
--- a/testing/lumins/APKBUILD
+++ b/testing/lumins/APKBUILD
@@ -2,22 +2,23 @@
# Maintainer: guddaff <guddaff@protonmail.com>
pkgname=lumins
pkgver=0.4.0
-pkgrel=0
+pkgrel=2
pkgdesc="tool for local file synchronizing"
url="https://github.com/wchang22/LuminS"
arch="x86_64 armv7 armhf aarch64 x86 ppc64le" #limited by rust/cargo
options="!check" #Test are passing but creation of apkindex crashes
license="MIT"
-makedepends="cargo"
+makedepends="cargo cargo-auditable"
source="$pkgname-$pkgver.tar.gz::https://github.com/wchang22/LuminS/archive/refs/tags/v$pkgver.tar.gz"
builddir="$srcdir/LuminS-$pkgver"
+
build() {
- cargo build --release --locked
+ cargo auditable build --release --locked
}
package() {
- cargo install --locked --path . --root=$pkgdir/usr
+ cargo auditable install --locked --path . --root=$pkgdir/usr
rm "$pkgdir"/usr/.crates*
}
diff --git a/testing/lutgen/APKBUILD b/testing/lutgen/APKBUILD
new file mode 100644
index 00000000000..a1fa411fc40
--- /dev/null
+++ b/testing/lutgen/APKBUILD
@@ -0,0 +1,46 @@
+# Contributor: Sam Nystrom <sam@samnystrom.dev>
+# Maintainer: Sam Nystrom <sam@samnystrom.dev>
+pkgname=lutgen
+pkgver=0.10.0
+pkgrel=0
+pkgdesc="Blazingly fast interpolated LUT generator and applicator for arbitrary and popular color palettes"
+url="https://github.com/ozwaldorf/lutgen-rs"
+arch="all"
+license="MIT"
+makedepends="cargo cargo-auditable"
+subpackages="
+ $pkgname-bash-completion
+ $pkgname-zsh-completion
+ $pkgname-fish-completion
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/ozwaldorf/lutgen-rs/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/lutgen-rs-$pkgver"
+options="net" # cargo fetch
+
+prepare() {
+ default_prepare
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+ mkdir -p completions
+ ./target/release/lutgen completions bash > completions/lutgen
+ ./target/release/lutgen completions zsh > completions/_lutgen
+ ./target/release/lutgen completions fish > completions/lutgen.fish
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm755 target/release/lutgen "$pkgdir"/usr/bin/lutgen
+ install -Dm644 completions/lutgen "$pkgdir"/usr/share/bash-completion/completions/lutgen
+ install -Dm644 completions/_lutgen "$pkgdir"/usr/share/zsh/site-functions/_lutgen
+ install -Dm644 completions/lutgen.fish "$pkgdir"/usr/share/fish/vendor_completions.d/lutgen.fish
+}
+
+sha512sums="
+416b748ff0b0ef5f43deb446fadd14f9d370cbda62f20dcc83499bfc548073d0c7dab1e4cfbe608a797806d48eb751de447945bd3d748a8baba1928c7de068f1 lutgen-0.10.0.tar.gz
+"
diff --git a/testing/lwan/APKBUILD b/testing/lwan/APKBUILD
index 820389066af..227f88f59e0 100644
--- a/testing/lwan/APKBUILD
+++ b/testing/lwan/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=lwan
pkgver=0.1
-pkgrel=1
+pkgrel=2
pkgdesc="Experimental, scalable, high performance HTTP server"
url="https://lwan.ws"
arch="x86_64"
@@ -14,6 +14,7 @@ source="$pkgname-$pkgver.tar.gz::https://github.com/lpereira/lwan/archive/v$pkgv
fix-pthread-stack-min.patch
fix-libdir.patch
fix-pkgconfig-version.patch
+ gettid.patch
"
build() {
@@ -48,7 +49,10 @@ dev() {
default_dev
}
-sha512sums="6cd42b81402f98c13f905149e515758994b15d9bda6179112c5b2ce59f63c1ce6299234ffcdd64fbc8c37e5f4fd45cfe125c80a05a09ba599158ecf26f5c511c lwan-0.1.tar.gz
+sha512sums="
+6cd42b81402f98c13f905149e515758994b15d9bda6179112c5b2ce59f63c1ce6299234ffcdd64fbc8c37e5f4fd45cfe125c80a05a09ba599158ecf26f5c511c lwan-0.1.tar.gz
e0db0c8c580543399893a86374cc2597cd8f8b358bc79334401948f0729e6da69d719388f023fd696e71d4cca3d9312d26b62b5d8aa0d44196754f8707b0bbcb fix-pthread-stack-min.patch
43e3cdbfa55357a35ea3980d18dcd1962bb850b52592f8c5d270f5f4860cde3ab1e4e371136cb59b7b3d1fa98d81c0f5de447630b40d2300953ff6b62ab1bb4a fix-libdir.patch
-b1107bcca58a6243a1e297ec86af7a5fddde856ef718425903abb6163295f6f861c7c55ec961118f087e175b23d2772cf3ce25b998bca8da3129c289ab10ad65 fix-pkgconfig-version.patch"
+b1107bcca58a6243a1e297ec86af7a5fddde856ef718425903abb6163295f6f861c7c55ec961118f087e175b23d2772cf3ce25b998bca8da3129c289ab10ad65 fix-pkgconfig-version.patch
+d1bda2e3e385fc5f9722ae37b2fe7a6f41ab9bc6bb158cc7ba68eed7dfed429b54c0fa8cd2927be4f91ed3de11209f03dd8b7bbaf203d7cc18176e2a9efe7a4e gettid.patch
+"
diff --git a/testing/lwan/gettid.patch b/testing/lwan/gettid.patch
new file mode 100644
index 00000000000..da8ab2e82e9
--- /dev/null
+++ b/testing/lwan/gettid.patch
@@ -0,0 +1,76 @@
+Patch-Source: https://github.com/lpereira/lwan/commit/870a8aa013544b944db15abf484690b5fb0b88be
+From 870a8aa013544b944db15abf484690b5fb0b88be Mon Sep 17 00:00:00 2001
+From: Leandro Pereira <leandro@hardinfo.org>
+Date: Wed, 9 Oct 2019 22:03:06 -0700
+Subject: [PATCH] Only provide gettid() implementation if not available in libc
+
+Newer glibc provides a wrapper for this syscall now.
+---
+ CMakeLists.txt | 1 +
+ src/cmake/lwan-build-config.h.cmake | 1 +
+ src/lib/missing.c | 6 +++++-
+ src/lib/missing/sys/types.h | 4 +++-
+ 4 files changed, 10 insertions(+), 2 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 8266609..7028963 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -85,6 +85,7 @@ check_function_exists(readahead HAS_READAHEAD)
+ check_function_exists(mkostemp HAS_MKOSTEMP)
+ check_function_exists(clock_gettime HAS_CLOCK_GETTIME)
+ check_function_exists(pthread_barrier_init HAS_PTHREADBARRIER)
++check_function_exists(gettid HAVE_GETTID)
+
+ if (NOT HAS_CLOCK_GETTIME AND ${CMAKE_SYSTEM_NAME} MATCHES "Linux")
+ list(APPEND ADDITIONAL_LIBRARIES rt)
+diff --git a/src/cmake/lwan-build-config.h.cmake b/src/cmake/lwan-build-config.h.cmake
+index 4708ed5..3d80c20 100644
+--- a/src/cmake/lwan-build-config.h.cmake
++++ b/src/cmake/lwan-build-config.h.cmake
+@@ -30,6 +30,7 @@
+ #cmakedefine HAS_READAHEAD
+ #cmakedefine HAS_REALLOCARRAY
+ #cmakedefine HAS_MKOSTEMP
++#cmakedefine HAVE_GETTID
+
+ /* Compiler builtins for specific CPU instruction support */
+ #cmakedefine HAVE_BUILTIN_CLZLL
+diff --git a/src/lib/missing.c b/src/lib/missing.c
+index 22dddaa..c3b5a4b 100644
+--- a/src/lib/missing.c
++++ b/src/lib/missing.c
+@@ -351,13 +351,17 @@ proc_pidpath(pid_t pid, void *buffer, size_t buffersize)
+ #endif
+
+ #if defined(__linux__)
++
++#if !defined(HAVE_GETTID)
+ #include <sys/syscall.h>
+
+-long
++pid_t
+ gettid(void)
+ {
+- return syscall(SYS_gettid);
++ return (pid_t)syscall(SYS_gettid);
+ }
++#endif
++
+ #elif defined(__FreeBSD__)
+ #include <sys/thr.h>
+
+diff --git a/src/lib/missing/sys/types.h b/src/lib/missing/sys/types.h
+index f178de8..cdc0658 100644
+--- a/src/lib/missing/sys/types.h
++++ b/src/lib/missing/sys/types.h
+@@ -22,6 +22,8 @@
+ #ifndef MISSING_SYS_TYPES_H
+ #define MISSING_SYS_TYPES_H
+
+-long gettid(void);
++#ifndef HAVE_GETTID
++pid_t gettid(void);
++#endif
+
+ #endif
diff --git a/testing/lxappearance/APKBUILD b/testing/lxappearance/APKBUILD
index 290766152ff..9a77229d5d4 100644
--- a/testing/lxappearance/APKBUILD
+++ b/testing/lxappearance/APKBUILD
@@ -1,12 +1,11 @@
# Contributor: Bartłomiej Piotrowski <bpiotrowski@alpinelinux.org>
# Maintainer:
-
pkgname=lxappearance
pkgver=0.6.3
-pkgrel=1
+pkgrel=3
pkgdesc='Feature-rich GTK+ theme switcher'
arch='all'
-license='GPL2'
+license='GPL-2.0-or-later'
url='https://lxde.org/'
makedepends='gtk+2.0-dev intltool dbus-glib-dev'
subpackages="$pkgname-doc $pkgname-dev $pkgname-lang"
@@ -14,20 +13,19 @@ source="https://downloads.sourceforge.net/lxde/$pkgname-$pkgver.tar.xz"
builddir="$srcdir"/$pkgname-$pkgver
build() {
- cd "$builddir"
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --enable-dbus \
- || return 1
- make || return 1
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --enable-dbus \
+ make
}
package() {
- cd "$builddir"
- make DESTDIR="$pkgdir" install || return 1
+ make DESTDIR="$pkgdir" install
}
-sha512sums="035cc952a33ac25408a4158cb4e745b17af3f29b5ceedfbe6b37235d16c801658403e862cd35ad7c8ca20fe6186fab1dce74a6e8d3b2eec12a30d532fc21662c lxappearance-0.6.3.tar.xz"
+sha512sums="
+035cc952a33ac25408a4158cb4e745b17af3f29b5ceedfbe6b37235d16c801658403e862cd35ad7c8ca20fe6186fab1dce74a6e8d3b2eec12a30d532fc21662c lxappearance-0.6.3.tar.xz
+"
diff --git a/testing/lxd-feature/32-bit-fix.patch b/testing/lxd-feature/32-bit-fix.patch
deleted file mode 100644
index b8556b899eb..00000000000
--- a/testing/lxd-feature/32-bit-fix.patch
+++ /dev/null
@@ -1,171 +0,0 @@
-Patch-Source: https://github.com/lxc/lxd/pull/10348
-From fd6845ddda3f80cdd24a8f94c42acce6bff0c41f Mon Sep 17 00:00:00 2001
-From: Thomas Parrott <thomas.parrott@canonical.com>
-Date: Fri, 29 Apr 2022 11:12:48 +0100
-Subject: [PATCH] lxd/secommp: Fix sysinfo syscall interception on 32 bit
- platforms
-
-Fixes #10347
-
-Signed-off-by: Thomas Parrott <thomas.parrott@canonical.com>
----
- lxd/seccomp/seccomp.go | 22 ++++++++++++++--------
- lxd/seccomp/sysinfo.go | 13 +++++++++++++
- lxd/seccomp/sysinfo_32.go | 19 +++++++++++++++++++
- lxd/seccomp/sysinfo_64.go | 19 +++++++++++++++++++
- 4 files changed, 65 insertions(+), 8 deletions(-)
- create mode 100644 lxd/seccomp/sysinfo.go
- create mode 100644 lxd/seccomp/sysinfo_32.go
- create mode 100644 lxd/seccomp/sysinfo_64.go
-
-diff --git a/lxd/seccomp/seccomp.go b/lxd/seccomp/seccomp.go
-index 03fee3c71a0..203d408a828 100644
---- a/lxd/seccomp/seccomp.go
-+++ b/lxd/seccomp/seccomp.go
-@@ -1709,6 +1709,7 @@ func (s *Server) HandleSysinfoSyscall(c Instance, siov *Iovec) int {
-
- defer l.Debug("Handling sysinfo syscall")
-
-+ // Pre-fill sysinfo struct with metrics from host system.
- info := unix.Sysinfo_t{}
- err := unix.Sysinfo(&info)
- if err != nil {
-@@ -1718,6 +1719,8 @@ func (s *Server) HandleSysinfoSyscall(c Instance, siov *Iovec) int {
- return 0
- }
-
-+ instMetrics := Sysinfo{} // Architecture independent place to hold instance metrics.
-+
- cg, err := cgroup.NewFileReadWriter(int(siov.msg.init_pid), liblxc.HasApiExtension("cgroup2"))
- if err != nil {
- l.Warn("Failed loading cgroup", logger.Ctx{"err": err, "pid": siov.msg.init_pid})
-@@ -1735,7 +1738,7 @@ func (s *Server) HandleSysinfoSyscall(c Instance, siov *Iovec) int {
- return 0
- }
-
-- info.Uptime = int64(time.Now().Sub(f.ModTime()).Seconds())
-+ instMetrics.Uptime = int64(time.Now().Sub(f.ModTime()).Seconds())
-
- // Get instance process count.
- pids, err := cg.GetTotalProcesses()
-@@ -1746,7 +1749,7 @@ func (s *Server) HandleSysinfoSyscall(c Instance, siov *Iovec) int {
- return 0
- }
-
-- info.Procs = uint16(pids)
-+ instMetrics.Procs = uint16(pids)
-
- // Get instance memory stats.
- memStats, err := cg.GetMemoryStats()
-@@ -1760,9 +1763,9 @@ func (s *Server) HandleSysinfoSyscall(c Instance, siov *Iovec) int {
- for k, v := range memStats {
- switch k {
- case "shmem":
-- info.Sharedram = v
-+ instMetrics.Sharedram = v
- case "cache":
-- info.Bufferram = v
-+ instMetrics.Bufferram = v
- }
- }
-
-@@ -1784,8 +1787,8 @@ func (s *Server) HandleSysinfoSyscall(c Instance, siov *Iovec) int {
- return 0
- }
-
-- info.Totalram = uint64(memoryLimit)
-- info.Freeram = info.Totalram - uint64(memoryUsage) - info.Bufferram
-+ instMetrics.Totalram = uint64(memoryLimit)
-+ instMetrics.Freeram = instMetrics.Totalram - uint64(memoryUsage) - instMetrics.Bufferram
-
- // Get instance swap info.
- if s.s.OS.CGInfo.Supports(cgroup.MemorySwapUsage, cg) {
-@@ -1805,14 +1808,17 @@ func (s *Server) HandleSysinfoSyscall(c Instance, siov *Iovec) int {
- return 0
- }
-
-- info.Totalswap = uint64(swapLimit)
-- info.Freeswap = info.Totalswap - uint64(swapUsage)
-+ instMetrics.Totalswap = uint64(swapLimit)
-+ instMetrics.Freeswap = instMetrics.Totalswap - uint64(swapUsage)
- }
-
- // Get writable pointer to buffer of sysinfo syscall result.
- const sz = int(unsafe.Sizeof(info))
- var b []byte = (*(*[sz]byte)(unsafe.Pointer(&info)))[:]
-
-+ // Write instance metrics to native sysinfo struct.
-+ instMetrics.ToNative(&info)
-+
- // Write sysinfo response into buffer.
- _, err = unix.Pwrite(siov.memFd, b, int64(siov.req.data.args[0]))
- if err != nil {
-diff --git a/lxd/seccomp/sysinfo.go b/lxd/seccomp/sysinfo.go
-new file mode 100644
-index 00000000000..b255894af26
---- /dev/null
-+++ b/lxd/seccomp/sysinfo.go
-@@ -0,0 +1,13 @@
-+package seccomp
-+
-+// Sysinfo architecture independent sysinfo struct.
-+type Sysinfo struct {
-+ Uptime int64
-+ Totalram uint64
-+ Freeram uint64
-+ Sharedram uint64
-+ Bufferram uint64
-+ Totalswap uint64
-+ Freeswap uint64
-+ Procs uint16
-+}
-diff --git a/lxd/seccomp/sysinfo_32.go b/lxd/seccomp/sysinfo_32.go
-new file mode 100644
-index 00000000000..e52808300dd
---- /dev/null
-+++ b/lxd/seccomp/sysinfo_32.go
-@@ -0,0 +1,19 @@
-+//go:build 386 || arm || ppc || s390 || mips || mipsle
-+
-+package seccomp
-+
-+import (
-+ "golang.org/x/sys/unix"
-+)
-+
-+// ToNative fills fields from s into native fields.
-+func (s *Sysinfo) ToNative(n *unix.Sysinfo_t) {
-+ n.Bufferram = uint32(s.Bufferram)
-+ n.Freeram = uint32(s.Freeram)
-+ n.Freeswap = uint32(s.Freeswap)
-+ n.Procs = s.Procs
-+ n.Sharedram = uint32(s.Sharedram)
-+ n.Totalram = uint32(s.Totalram)
-+ n.Totalswap = uint32(s.Totalswap)
-+ n.Uptime = int32(s.Uptime)
-+}
-diff --git a/lxd/seccomp/sysinfo_64.go b/lxd/seccomp/sysinfo_64.go
-new file mode 100644
-index 00000000000..84383b1c5a8
---- /dev/null
-+++ b/lxd/seccomp/sysinfo_64.go
-@@ -0,0 +1,19 @@
-+//go:build amd64 || ppc64 || ppc64le || arm64 || s390x || mips64 || mips64le || riscv64
-+
-+package seccomp
-+
-+import (
-+ "golang.org/x/sys/unix"
-+)
-+
-+// ToNative fills fields from s into native fields.
-+func (s *Sysinfo) ToNative(n *unix.Sysinfo_t) {
-+ n.Bufferram = s.Bufferram
-+ n.Freeram = s.Freeram
-+ n.Freeswap = s.Freeswap
-+ n.Procs = s.Procs
-+ n.Sharedram = s.Sharedram
-+ n.Totalram = s.Totalram
-+ n.Totalswap = s.Totalswap
-+ n.Uptime = s.Uptime
-+}
diff --git a/testing/lxd-feature/APKBUILD b/testing/lxd-feature/APKBUILD
index 0728fb43277..cd4485e29f7 100644
--- a/testing/lxd-feature/APKBUILD
+++ b/testing/lxd-feature/APKBUILD
@@ -1,61 +1,57 @@
# Contributor: Carlo Landmeter <clandmeter@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=lxd-feature
-pkgver=5.1
+pkgver=5.20
pkgrel=2
pkgdesc="Container hypervisor and a new user experience for LXC - 'Feature' release channel"
-url="https://linuxcontainers.org/lxd/"
+url="https://ubuntu.com/lxd"
arch="all"
-license="Apache-2.0"
+license="AGPL-3.0"
pkggroups="lxd"
depends="
acl
attr
- netcat-openbsd
+ ca-certificates
cgmanager
- squashfs-tools
+ dnsmasq
+ iproute2
+ iptables
+ lxc
+ netcat-openbsd
rsync
- dqlite
shadow-subids
- lxc
- ip6tables
- dnsmasq
- ca-certificates
+ squashfs-tools
tar
- iproute2
xz
"
makedepends="
- lxc-dev
- gettext-dev
acl-dev
acl-static
- tcl-dev
- libuv-dev
- eudev-dev
- libcap-dev
- linux-headers
-
- rsync
- go
- intltool
-
- libtool
autoconf
automake
- patchelf
dqlite-dev
dqlite-static
+ eudev-dev
+ gettext-dev
+ gettext-static
+ go
+ intltool
+ libcap-dev
+ libcap-static
+ libseccomp-static
+ libtool
+ libuv-dev
+ libuv-static
+ linux-headers
+ lxc-dev
lz4-dev
- sqlite-dev
- sqlite-static
+ patchelf
raft-dev
raft-static
- gettext-static
+ sqlite-dev
+ sqlite-static
+ tcl-dev
zlib-static
- libuv-static
- libseccomp-static
- libcap-static
"
subpackages="
$pkgname-scripts:scripts:noarch
@@ -65,25 +61,27 @@ subpackages="
"
install="$pkgname.pre-install"
options="!check"
-source="https://linuxcontainers.org/downloads/lxd/lxd-$pkgver.tar.gz
+source="$pkgname-$pkgver.tar.gz::https://github.com/canonical/lxd/releases/download/lxd-$pkgver/lxd-$pkgver.tar.gz
$pkgname.confd
$pkgname.initd
- 32-bit-fix.patch
"
ldpath="/usr/lib/lxd"
sonameprefix="$pkgname:"
builddir="$srcdir/lxd-$pkgver"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
build() {
export GOPATH="$builddir/_dist"
- export GOFLAGS="$GOFLAGS -buildmode=pie -trimpath"
export CGO_LDFLAGS="-lintl $LDFLAGS"
export CGO_LDFLAGS_ALLOW="(-Wl,-wrap,pthread_create)|(-Wl,-z,now)"
export GO111MODULE=on
mkdir -p bin
- go build -v -tags "netgo" -ldflags '-extldflags "-static -lm -ldl -lz -lpthread -lz -lintl -lraft -ldqlite -luv -lseccomp -lcap"' -o bin/ ./lxd-migrate/...
- go build -v -tags "agent" -ldflags '-extldflags "-static -lm -ldl -lz -lpthread -lz -lintl -lraft -ldqlite -luv -lseccomp -lcap"' -o bin/ ./lxd-agent/...
+ go build -v -tags "netgo libsqlite3" -ldflags '-extldflags "-static -lm -ldl -lz -lpthread -lz -lintl -lraft -ldqlite -luv -lseccomp -lcap"' -o bin/ ./lxd-migrate/...
+ go build -v -tags "agent libsqlite3" -ldflags '-extldflags "-static -lm -ldl -lz -lpthread -lz -lintl -lraft -ldqlite -luv -lseccomp -lcap"' -o bin/ ./lxd-agent/...
for tool in fuidshift lxc lxc-to-lxd lxd lxd-benchmark; do
go build -v -tags "libsqlite3" -o bin/ ./$tool/...
@@ -108,35 +106,28 @@ package() {
chmod 755 "$pkgdir"/var/lib/lxd
chgrp $pkggroups "$pkgdir"/var/lib/lxd
- mkdir -p "$pkgdir/usr/share/doc/lxd"
- cat > "$pkgdir"/usr/share/doc/lxd/README.alpine <<EOF
------------------------------------
-Be sure to add your local user to the lxd group.
-EOF
-}
+ install -Dm755 scripts/empty-lxd.sh \
+ "$pkgdir"/usr/bin/empty-lxd.sh
-bashcomp() {
- depends="bash"
- pkgdesc="Bash completions for $pkgname"
- install_if="$pkgname=$pkgver-r$pkgrel bash-completion"
+ install -Dm644 scripts/bash/lxd-client \
+ -t "$pkgdir"/usr/share/bash-completion/completions/
- cd $builddir
- mkdir -p "$subpkgdir"/usr/share/bash-completion/completions
- cp scripts/bash/lxd-client "$subpkgdir"/usr/share/bash-completion/completions/lxd-client
+ mkdir -p "$pkgdir/usr/share/doc/lxd"
+ cat > "$pkgdir"/usr/share/doc/lxd/README.alpine <<-EOF
+ -----------------------------------
+ Be sure to add your local user to the lxd group.
+ EOF
}
scripts() {
pkgdesc="LXD scripts"
- depends="$pkgname py3-lxc jq"
+ depends="$pkgname=$pkgver-r$pkgrel py3-lxc jq"
- cd $builddir
- export GOPATH="$builddir/_dist"
- install -Dm755 scripts/empty-lxd.sh "$subpkgdir"/usr/bin/empty-lxd.sh
+ amove usr/bin/empty-lxd.sh
}
sha512sums="
-875f9cad8bbfddcb2122a69e4ac13bdd0f7972a110b1a61a6060a5b4c380785e3c8219954b050594c01ba998b321891e03e2a23253f8f0f0e04ef2e399a1a04d lxd-5.1.tar.gz
+cf593f967d9d595577ab9b05bad99d04b9c30031461fdd4769f4746e651b3aa8e94fca53548da1aec22ff312a91ff46710ab88043a633fbd78ffafe130fed3e3 lxd-feature-5.20.tar.gz
1bbb26a61b3812e6eb4c3cb7db6c2d9adb43195f96f317d6bba1ace6a97f1faed0677a12c3827002bc147edba9b355f0e7ead3960d254a131b25fb8c060ea8d0 lxd-feature.confd
ebf9608ea3db25b456a557c81838c6a793adf5f490bd64e1f3dc6951bad619188cb0170f0a794b086adbd128267b4339ab46c1b6a815a4ae7f3a6566b7854d97 lxd-feature.initd
-99c9dc9062f5c8bc1cdc1583dc4d6d42ebd093de30791d40777aef51ed2d322c17b5bee71e9c91697cac888007611a865e620b9424b7eced782e590194047650 32-bit-fix.patch
"
diff --git a/testing/lximage-qt/APKBUILD b/testing/lximage-qt/APKBUILD
deleted file mode 100644
index 80da57d0a04..00000000000
--- a/testing/lximage-qt/APKBUILD
+++ /dev/null
@@ -1,34 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=lximage-qt
-pkgver=1.1.0
-pkgrel=0
-pkgdesc="The image viewer and screenshot tool for LXQt"
-url="https://github.com/lxqt/lximage-qt"
-arch="all !armhf !s390x" # armhf blocked by liblxqt, s390x blocked by libfm-qt
-license="LGPL-2.0-or-later"
-makedepends="
- cmake lxqt-build-tools liblxqt-dev qt5-qttools-dev
- libfm-qt-dev libexif-dev menu-cache-dev
- "
-options="!check" # No testsuite
-source="https://github.com/lxqt/lximage-qt/releases/download/$pkgver/lximage-qt-$pkgver.tar.xz"
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- $CMAKE_CROSSOPTS .
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --build build --target install
-}
-sha512sums="
-8d64bb35a56c5f565c1dde7f74534440e4decb9c4435e46986b713dad5b6c87aec0f0d9cb927a73f2f0b94f7101957fe1660737559b30c68b1d93cecfdf2e187 lximage-qt-1.1.0.tar.xz
-"
diff --git a/testing/lxmenu-data/APKBUILD b/testing/lxmenu-data/APKBUILD
deleted file mode 100644
index c7f5386ccfd..00000000000
--- a/testing/lxmenu-data/APKBUILD
+++ /dev/null
@@ -1,25 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=lxmenu-data
-pkgver=0.1.5
-pkgrel=0
-pkgdesc="Freedesktop.org desktop menus for LXDE"
-url="https://lxde.org"
-arch="noarch"
-license="GPL-2.0-or-later"
-makedepends="intltool"
-options="!check" # No testsuite
-source="https://downloads.sourceforge.net/lxde/lxmenu-data-$pkgver.tar.xz"
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-sha512sums="ea1a1ad511d9e56c7692a8d96feb52c53aa7bd7595f2312d4f41fc15a12a056551c70d6a2c55a30f849e2ac2fd1a06436751573472ae70e0158e069736578b40 lxmenu-data-0.1.5.tar.xz"
diff --git a/testing/lxqt-about/APKBUILD b/testing/lxqt-about/APKBUILD
deleted file mode 100644
index d8255b5cdbb..00000000000
--- a/testing/lxqt-about/APKBUILD
+++ /dev/null
@@ -1,34 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=lxqt-about
-pkgver=1.1.0
-pkgrel=0
-pkgdesc="Information provider about LXQt and the system"
-url="https://github.com/lxqt/lxqt-about"
-arch="all !armhf" # armhf blocked by liblxqt and kwindowsystem
-license="LGPL-2.0-or-later"
-makedepends="
- cmake lxqt-build-tools liblxqt-dev
- kwindowsystem-dev qt5-qttools-dev
- "
-options="!check" # No testsuite
-source="https://github.com/lxqt/lxqt-about/releases/download/$pkgver/lxqt-about-$pkgver.tar.xz"
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- $CMAKE_CROSSOPTS .
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --build build --target install
-}
-sha512sums="
-d98f7892d416ed4dc6b77fd9d0ef1ce090f41e21f964b651cfd049b285766a46bf72f5111879c56760fd701926b8760734322edc0969019c3b161436e14a2104 lxqt-about-1.1.0.tar.xz
-"
diff --git a/testing/lxqt-admin/APKBUILD b/testing/lxqt-admin/APKBUILD
deleted file mode 100644
index 47ca9af1008..00000000000
--- a/testing/lxqt-admin/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=lxqt-admin
-pkgver=1.1.0
-pkgrel=0
-pkgdesc="LXQt system administration tool"
-url="https://github.com/lxqt/lxqt-admin"
-# armhf: blocked by liblxqt and kwindowsystem
-# s390x, riscv64: blocked by polkit-qt
-arch="all !armhf !s390x !riscv64"
-license="LGPL-2.0-or-later"
-makedepends="
- cmake lxqt-build-tools liblxqt-dev kwindowsystem-dev
- polkit-qt-1-dev qt5-qttools-dev
- "
-options="!check" # No testsuite
-source="https://github.com/lxqt/lxqt-admin/releases/download/$pkgver/lxqt-admin-$pkgver.tar.xz"
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- $CMAKE_CROSSOPTS .
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --build build --target install
-}
-sha512sums="
-f49e0c3e3b90f5b7fec2e304f45288c685447152bb80bdcf4bfdaa9051fd79ac557e363340e49c04dfe56a5454997d7f3b9488141056789fa2e22873ab1afa3c lxqt-admin-1.1.0.tar.xz
-"
diff --git a/testing/lxqt-archiver/APKBUILD b/testing/lxqt-archiver/APKBUILD
deleted file mode 100644
index a6e1655a404..00000000000
--- a/testing/lxqt-archiver/APKBUILD
+++ /dev/null
@@ -1,34 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=lxqt-archiver
-pkgver=0.6.0
-pkgrel=0
-pkgdesc="Simple and lightweight desktop-agnostic Qt file archiver"
-url="https://github.com/lxqt/lxqt-archiver"
-arch="all !s390x !armhf" # s390x blocked by libfm-qt
-license="LGPL-2.0-or-later"
-makedepends="
- cmake lxqt-build-tools qt5-qttools-dev qt5-qtx11extras-dev
- libfm-qt-dev json-glib-dev menu-cache-dev libexif-dev
- "
-options="!check" # No testsuite
-source="https://github.com/lxqt/lxqt-archiver/releases/download/$pkgver/lxqt-archiver-$pkgver.tar.xz"
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- $CMAKE_CROSSOPTS .
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --build build --target install
-}
-sha512sums="
-e714969ac285969b845cc3b293bf74fd3986be09ec0315aa11aca553e432397b8b68ec3830ae009f5fa950866b299e71aa89794de5af329f7012cb2524b310df lxqt-archiver-0.6.0.tar.xz
-"
diff --git a/testing/lxqt-build-tools/APKBUILD b/testing/lxqt-build-tools/APKBUILD
deleted file mode 100644
index 011b6300f76..00000000000
--- a/testing/lxqt-build-tools/APKBUILD
+++ /dev/null
@@ -1,34 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-# Contributor: Carlo Landmeter <clandmeter@alpinelinux.org>
-# Contributor: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=lxqt-build-tools
-pkgver=0.11.0
-pkgrel=0
-pkgdesc="Various packaging tools and scripts for LXQt applications"
-url="https://lxqt.org/"
-options="!check" # No testsuite
-arch="noarch"
-license="BSD-3-Clause"
-makedepends="cmake qt5-qtbase-dev glib-dev"
-source="https://github.com/lxde/lxqt-build-tools/releases/download/$pkgver/lxqt-build-tools-$pkgver.tar.xz"
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- $CMAKE_CROSSOPTS .
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --build build --target install
-}
-
-sha512sums="
-d421aaf74b13efa3b603b5c8a998bfd6091f5d3c45e0201d64e0c1f12d93c45fdc12d9232b0ac1c98ccf47007560c5814612162d1ac879bb3173bad57164408d lxqt-build-tools-0.11.0.tar.xz
-"
diff --git a/testing/lxqt-config/APKBUILD b/testing/lxqt-config/APKBUILD
deleted file mode 100644
index 4487be15185..00000000000
--- a/testing/lxqt-config/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=lxqt-config
-pkgver=1.1.0
-pkgrel=0
-pkgdesc="Tools to configure LXQt and the underlying operating system"
-url="https://github.com/lxqt/lxqt-config"
-arch="all !armhf" # armhf blocked by libkscreen, liblxqt and kwindowsystem
-license="LGPL-2.0-or-later"
-makedepends="
- cmake libxcursor-dev lxqt-build-tools qt5-qtbase-dev
- qt5-qttools-dev qt5-qtx11extras-dev xf86-input-libinput-dev
- libxi-dev libudev-zero-dev libqtxdg-dev liblxqt-dev
- libkscreen-dev kwindowsystem-dev
- "
-subpackages="$pkgname-doc"
-options="!check" # No testsuite
-source="https://github.com/lxqt/lxqt-config/releases/download/$pkgver/lxqt-config-$pkgver.tar.xz"
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- $CMAKE_CROSSOPTS .
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --build build --target install
-}
-sha512sums="
-f0272737c5127492f9cd560a831720a7df6ced326109739fcd0f429c45f8d62e4685c438424c5efe4f4927339de7a5f6849560ee5f9901768db5d8511406bb21 lxqt-config-1.1.0.tar.xz
-"
diff --git a/testing/lxqt-core/APKBUILD b/testing/lxqt-core/APKBUILD
deleted file mode 100644
index 44bae68764c..00000000000
--- a/testing/lxqt-core/APKBUILD
+++ /dev/null
@@ -1,22 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=lxqt-core
-pkgver=1.1.0
-pkgrel=0
-pkgdesc="LXQt Desktop Core"
-url="https://lxqt-project.org/"
-arch="noarch !armhf !s390x !riscv64"
-license="GPL-3.0-or-later"
-options="!check" # No testsuite
-depends="
- libqtxdg libsysstat liblxqt libfm-qt lxqt-themes
- libdbusmenu-qt lxqt-about lxqt-admin lxqt-config
- lxqt-globalkeys lxqt-powermanagement lxqt-session
- lxqt-panel lxqt-runner pcmanfm-qt xscreensaver
- lxqt-qtplugin lxqt-notificationd lxqt-archiver
- lxqt-policykit lxqt-openssh-askpass lxqt-sudo
- pm-utils qtermwidget qterminal openbox xdg-utils
- "
-
-package() {
- mkdir -p "$pkgdir"
-}
diff --git a/testing/lxqt-desktop/APKBUILD b/testing/lxqt-desktop/APKBUILD
deleted file mode 100644
index 3395258fdcc..00000000000
--- a/testing/lxqt-desktop/APKBUILD
+++ /dev/null
@@ -1,17 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=lxqt-desktop
-pkgver=1.1.0
-pkgrel=0
-pkgdesc="LXQt Desktop with Applications"
-url="https://lxqt-project.org/"
-arch="noarch !armhf !s390x !riscv64"
-license="GPL-3.0-or-later"
-options="!check" # No testsuite
-depends="
- lxqt-core lximage-qt obconf-qt
- pavucontrol-qt qps screengrab
- "
-
-package() {
- mkdir -p "$pkgdir"
-}
diff --git a/testing/lxqt-globalkeys/APKBUILD b/testing/lxqt-globalkeys/APKBUILD
deleted file mode 100644
index 921be8d8690..00000000000
--- a/testing/lxqt-globalkeys/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=lxqt-globalkeys
-pkgver=1.1.0
-pkgrel=0
-pkgdesc="Daemon used to register global keyboard shortcuts"
-url="https://github.com/lxqt/lxqt-globalkeys"
-arch="all !armhf" # armhf blocked by liblxqt and kwindowsystem
-license="LGPL-2.0-or-later"
-makedepends="
- cmake lxqt-build-tools liblxqt-dev
- qt5-qttools-dev kwindowsystem-dev
- "
-subpackages="$pkgname-dev"
-options="!check" # No testsuite
-source="https://github.com/lxqt/lxqt-globalkeys/releases/download/$pkgver/lxqt-globalkeys-$pkgver.tar.xz"
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- $CMAKE_CROSSOPTS .
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --build build --target install
-}
-sha512sums="
-51cda7a4cdac39502f875c51e0f418f751538dd110545b111462aa3d96007ea72c71127cfb0dc49efc47439ce8155ff3aabfb733d9fe2c8ee17929467bccfe44 lxqt-globalkeys-1.1.0.tar.xz
-"
diff --git a/testing/lxqt-notificationd/APKBUILD b/testing/lxqt-notificationd/APKBUILD
deleted file mode 100644
index 97e0dc3e823..00000000000
--- a/testing/lxqt-notificationd/APKBUILD
+++ /dev/null
@@ -1,34 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=lxqt-notificationd
-pkgver=1.1.0
-pkgrel=0
-pkgdesc="LXQt notification daemon"
-url="https://github.com/lxqt/lxqt-notificationd"
-arch="all !armhf" # armhf blocked by liblxqt and kwindowsystem
-license="LGPL-2.0-or-later"
-makedepends="
- cmake lxqt-build-tools liblxqt-dev
- qt5-qttools-dev kwindowsystem-dev
- "
-options="!check" # No testsuite
-source="https://github.com/lxqt/lxqt-notificationd/releases/download/$pkgver/lxqt-notificationd-$pkgver.tar.xz"
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- $CMAKE_CROSSOPTS .
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --build build --target install
-}
-sha512sums="
-fd4ecdff4e32886959dd8806d247e7bfa5920a3b3c8f98066577758ab7d3884b15c9b791982e9b05a581b04ac09e6eb7d127172a930acf639e1378f997bd583f lxqt-notificationd-1.1.0.tar.xz
-"
diff --git a/testing/lxqt-openssh-askpass/APKBUILD b/testing/lxqt-openssh-askpass/APKBUILD
deleted file mode 100644
index cf3f7daf784..00000000000
--- a/testing/lxqt-openssh-askpass/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=lxqt-openssh-askpass
-pkgver=1.1.0
-pkgrel=0
-pkgdesc="GUI to query passwords on behalf of SSH agents"
-url="https://github.com/lxqt/lxqt-openssh-askpass"
-arch="all !armhf" # qt5
-license="LGPL-2.0-or-later"
-makedepends="
- cmake lxqt-build-tools qt5-qtbase-dev
- qt5-qttools-dev liblxqt-dev kwindowsystem-dev
- "
-subpackages="$pkgname-doc"
-options="!check" # No testsuite
-source="https://github.com/lxqt/lxqt-openssh-askpass/releases/download/$pkgver/lxqt-openssh-askpass-$pkgver.tar.xz"
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- $CMAKE_CROSSOPTS .
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --build build --target install
-}
-sha512sums="
-7909bb4deb2b0bce466e1cf89788d45e5e5b1db37d813f75d268ff7d36f26840f24ada0df55da1e605ba64aadde882ffdf800bfff38dcb4bda0205d64df320b9 lxqt-openssh-askpass-1.1.0.tar.xz
-"
diff --git a/testing/lxqt-panel/APKBUILD b/testing/lxqt-panel/APKBUILD
deleted file mode 100644
index 42d6eb5e7f8..00000000000
--- a/testing/lxqt-panel/APKBUILD
+++ /dev/null
@@ -1,39 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=lxqt-panel
-pkgver=1.1.0
-pkgrel=0
-pkgdesc="The LXQt desktop panel"
-url="https://github.com/lxqt/lxqt-panel"
-arch="all !s390x !armhf !riscv64" # s390x blocked by solid, armhf by qt
-license="LGPL-2.0-or-later"
-subpackages="$pkgname-doc $pkgname-dev"
-makedepends="
- cmake lxqt-build-tools libsoundio-dev xcb-util-dev
- libstatgrab-dev pulseaudio-dev libxrender-dev
- libsysstat-dev lm-sensors-dev lxqt-globalkeys-dev
- liblxqt-dev libdbusmenu-qt-dev qt5-qttools-dev
- menu-cache-dev kwindowsystem-dev kguiaddons-dev
- solid-dev libxtst-dev xcb-util-image-dev
- "
-options="!check" # No testsuite
-source="https://github.com/lxqt/lxqt-panel/releases/download/$pkgver/lxqt-panel-$pkgver.tar.xz"
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- $CMAKE_CROSSOPTS .
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --build build --target install
-}
-sha512sums="
-d112bb2a251c858f250fec34fab4392b070e5a1128155f1bb8ff1fa1d7189225624b2151b8d4beb19f12548c90b2a5892bd717ab5b8e2928271d2167c62aa053 lxqt-panel-1.1.0.tar.xz
-"
diff --git a/testing/lxqt-policykit/APKBUILD b/testing/lxqt-policykit/APKBUILD
deleted file mode 100644
index 96c6ea0eff5..00000000000
--- a/testing/lxqt-policykit/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=lxqt-policykit
-pkgver=1.1.0
-pkgrel=0
-pkgdesc="LXQt PolicyKit agent"
-url="https://github.com/lxqt/lxqt-policykit"
-# s390x, riscv64: blocked by polkit-qt
-# armhf blocked by liblxqt-dev
-arch="all !s390x !armhf !riscv64"
-license="LGPL-2.0-or-later"
-makedepends="
- cmake lxqt-build-tools liblxqt-dev qt5-qttools-dev
- polkit-qt-1-dev kwindowsystem-dev
- "
-subpackages="$pkgname-doc"
-source="https://github.com/lxqt/lxqt-policykit/releases/download/$pkgver/lxqt-policykit-$pkgver.tar.xz"
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- $CMAKE_CROSSOPTS .
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --build build --target install
-}
-sha512sums="
-41592a2f086c5308ed71ef856bba8c3f81aa392700696e8a82554ce049bec07f41221a9862244d22f732b8f09a7c157596a50ef48bd30f1acf491317c4e21d12 lxqt-policykit-1.1.0.tar.xz
-"
diff --git a/testing/lxqt-powermanagement/APKBUILD b/testing/lxqt-powermanagement/APKBUILD
deleted file mode 100644
index f174784792e..00000000000
--- a/testing/lxqt-powermanagement/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=lxqt-powermanagement
-pkgver=1.1.0
-pkgrel=0
-pkgdesc="Power management module for LXQt"
-url="https://github.com/lxqt/lxqt-powermanagement"
-# s390x and riscv64 blocked by polkit -> solid
-arch="all !s390x !armhf !riscv64"
-license="LGPL-2.0-or-later"
-makedepends="
- cmake
- kidletime-dev
- kwindowsystem-dev
- liblxqt-dev
- lxqt-build-tools
- lxqt-globalkeys-dev
- qt5-qttools-dev
- solid-dev
- "
-options="!check" # No testsuite
-source="https://github.com/lxqt/lxqt-powermanagement/releases/download/$pkgver/lxqt-powermanagement-$pkgver.tar.xz"
-
-build() {
- cmake -B build \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-sha512sums="
-1c675e69371f7c4b684be6e43627ffd9d69f38d5c4edbccd577cc374d73046c3f260fa555fa8e8e5ab9ed00e81d72c987e8959760a9a31ed277aaaf88670d4b8 lxqt-powermanagement-1.1.0.tar.xz
-"
diff --git a/testing/lxqt-qtplugin/APKBUILD b/testing/lxqt-qtplugin/APKBUILD
deleted file mode 100644
index e09243fb61b..00000000000
--- a/testing/lxqt-qtplugin/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=lxqt-qtplugin
-pkgver=1.1.0
-pkgrel=0
-pkgdesc="Qt-LXQt plugin integration"
-url="https://github.com/lxqt/lxqt-qtplugin"
-arch="all !s390x" # s390x blocked by libfm-qt
-arch="$arch !armhf" # armhf blocked by liblxqt-dev
-license="LGPL-2.0-or-later"
-makedepends="
- cmake lxqt-build-tools liblxqt-dev libdbusmenu-qt-dev
- libfm-qt-dev qt5-qttools-dev
- "
-options="!check" # No testsuite
-source="https://github.com/lxqt/lxqt-qtplugin/releases/download/$pkgver/lxqt-qtplugin-$pkgver.tar.xz"
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- $CMAKE_CROSSOPTS .
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --build build --target install
-}
-sha512sums="
-37d3e8cda1f912482362d0bae4df65657f204c43734a8a0ca27c7a88819e9fc0aa089863ab08f50e47ef555e7f032b108cf5b97153525b4562d9b643b51d1240 lxqt-qtplugin-1.1.0.tar.xz
-"
diff --git a/testing/lxqt-runner/APKBUILD b/testing/lxqt-runner/APKBUILD
deleted file mode 100644
index 1d06476b580..00000000000
--- a/testing/lxqt-runner/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=lxqt-runner
-pkgver=1.1.0
-pkgrel=0
-pkgdesc="Tool used to launch programs quickly by typing their names"
-url="https://github.com/lxqt/lxqt-runner"
-arch="all !s390x !armhf" # s390x blocked by muparser
-license="LGPL-2.0-or-later"
-makedepends="
- cmake liblxqt-dev lxqt-build-tools qt5-qttools-dev
- kwindowsystem-dev libqtxdg-dev lxqt-globalkeys-dev
- menu-cache-dev muparser-dev
- "
-subpackages="$pkgname-doc"
-options="!check" # No testsuite
-source="https://github.com/lxqt/lxqt-runner/releases/download/$pkgver/lxqt-runner-$pkgver.tar.xz"
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- $CMAKE_CROSSOPTS .
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --build build --target install
-}
-sha512sums="
-f6afeaed839b80cbcc56497536e5b17c11e58cb66eae38d210ecf7689ee0c69d0c1a4e27ed3b70d8d90114711659958f6e9bb35e252feac7339cd6c61bb07a21 lxqt-runner-1.1.0.tar.xz
-"
diff --git a/testing/lxqt-session/APKBUILD b/testing/lxqt-session/APKBUILD
deleted file mode 100644
index afd2876d74d..00000000000
--- a/testing/lxqt-session/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=lxqt-session
-pkgver=1.1.0
-pkgrel=0
-pkgdesc="The LXQt session manager"
-url="https://github.com/lxqt/lxqt-session"
-arch="all !armhf" # liblxqt-dev
-license="LGPL-2.0-or-later"
-depends="xdg-user-dirs"
-makedepends="
- cmake lxqt-build-tools liblxqt-dev qt5-qttools-dev
- kwindowsystem-dev libudev-zero-dev procps-dev
- "
-subpackages="$pkgname-doc"
-options="!check" # No testsuite
-source="https://github.com/lxqt/lxqt-session/releases/download/$pkgver/lxqt-session-$pkgver.tar.xz"
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- $CMAKE_CROSSOPTS .
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --build build --target install
-}
-sha512sums="
-d3431197264227b2f813a87b35f5cc18e8c4036e9f429f653da8aed2df8edbbb75b743e94c0e105b0797dff9062027486ba944278c6f03a62afb620bc6967259 lxqt-session-1.1.0.tar.xz
-"
diff --git a/testing/lxqt-sudo/APKBUILD b/testing/lxqt-sudo/APKBUILD
deleted file mode 100644
index 7101ad6be57..00000000000
--- a/testing/lxqt-sudo/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=lxqt-sudo
-pkgver=1.1.0
-pkgrel=0
-pkgdesc="Tools to sudoure LXQt and the underlying operating system"
-url="https://github.com/lxqt/lxqt-sudo"
-arch="all !armhf" # blocked by liblxqt-dev
-license="LGPL-2.0-or-later"
-makedepends="
- cmake libxcursor-dev lxqt-build-tools qt5-qtbase-dev
- qt5-qttools-dev qt5-qtx11extras-dev xf86-input-libinput-dev
- libxi-dev libudev-zero-dev libqtxdg-dev liblxqt-dev
- libkscreen-dev kwindowsystem-dev
- "
-subpackages="$pkgname-doc"
-options="!check" # No testsuite
-source="https://github.com/lxqt/lxqt-sudo/releases/download/$pkgver/lxqt-sudo-$pkgver.tar.xz"
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- $CMAKE_CROSSOPTS .
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --build build --target install
-}
-sha512sums="
-ab986be7b67195e16462301c098ef6a90d2f0c86dc7ee6f23d3a00e3ae4131e25578bf56be5add84a28b42e460ff242440c607a8bf93ec119438ea09c8d28eaa lxqt-sudo-1.1.0.tar.xz
-"
diff --git a/testing/lxqt-themes/APKBUILD b/testing/lxqt-themes/APKBUILD
deleted file mode 100644
index c2fb4c17b84..00000000000
--- a/testing/lxqt-themes/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=lxqt-themes
-pkgver=1.1.0
-pkgrel=0
-pkgdesc="Themes for LXQt"
-url="https://github.com/lxqt/lxqt-themes"
-arch="noarch"
-license="LGPL-2.0-or-later"
-makedepends="cmake lxqt-build-tools perl-dev"
-options="!check" # No testsuite
-source="https://github.com/lxqt/lxqt-themes/releases/download/$pkgver/lxqt-themes-$pkgver.tar.xz"
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- $CMAKE_CROSSOPTS .
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --build build --target install
-}
-sha512sums="
-8b83ba7534a9d133b332e7cf68cd4a5a658053d0dc4963f6074514bb97072855485d897f83e7de3b2321a8887b2ad2eda9bb902868d185ebde458134a3299bc5 lxqt-themes-1.1.0.tar.xz
-"
diff --git a/testing/lychee/APKBUILD b/testing/lychee/APKBUILD
new file mode 100644
index 00000000000..76d5461e1ce
--- /dev/null
+++ b/testing/lychee/APKBUILD
@@ -0,0 +1,45 @@
+# Contributor: Orhun Parmaksız <orhunparmaksiz@gmail.com>
+# Maintainer: Orhun Parmaksız <orhunparmaksiz@gmail.com>
+pkgname=lychee
+pkgver=0.14.3
+pkgrel=0
+pkgdesc="Fast, async, resource-friendly link checker written in Rust"
+url=https://lychee.cli.rs
+# !s390x !armhf !riscv64: openssl fails to build
+arch="all !s390x !armhf !riscv64"
+license="MIT OR Apache-2.0"
+makedepends="
+ cargo
+ cargo-auditable
+ perl
+ make
+ pkgconf
+ "
+subpackages="$pkgname-doc"
+options="net"
+source="$pkgname-$pkgver.tar.gz::https://github.com/lycheeverse/lychee/archive/v$pkgver/lychee-$pkgver.tar.gz
+ fix-ssl-certificate-tests.patch::https://github.com/lycheeverse/lychee/commit/381d368fbfd773fa07b62e32dc51d38a888ea873.patch"
+
+prepare() {
+ default_prepare
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release --features vendored-openssl
+}
+
+check() {
+ cargo test --features vendored-openssl -- --test-threads 1
+}
+
+package() {
+ install -Dm 755 "target/release/$pkgname" -t "$pkgdir/usr/bin"
+ install -Dm 644 README.md -t "$pkgdir/usr/share/doc/$pkgname"
+ install -Dm 644 LICENSE-MIT -t "$pkgdir/usr/share/licenses/$pkgname"
+}
+
+sha512sums="
+aa2ede6734b0aff9775347b72cb51b914f6387bb42463f604ab8d6f661944600bb5a856145c0820a5ac692464a738aced0571cdce44a6a33a6d94240bbdbfc34 lychee-0.14.3.tar.gz
+f1591f6316257095924ca3ff2609ad0a34e2ee86f34b9e00ba607e0591e3ad61b48998d8773ee442e7dbe01028d11a35d74a812a4e4bbbfb34b359717ec1dda1 fix-ssl-certificate-tests.patch
+"
diff --git a/testing/lynis/APKBUILD b/testing/lynis/APKBUILD
index 698bc66272b..07d4c00071b 100644
--- a/testing/lynis/APKBUILD
+++ b/testing/lynis/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Michael Pirogov <vbnet.ru@gmail.com>
# Maintainer: Michael Pirogov <vbnet.ru@gmail.com>
pkgname=lynis
-pkgver=3.0.8
+pkgver=3.1.1
pkgrel=0
pkgdesc="Security and system auditing tool"
url="https://cisofy.com/lynis/"
@@ -34,8 +34,7 @@ package() {
}
-
sha512sums="
-df41aa8b7518a72ee17732eb7e69ccc62ca6e1323d3adc7aec509cd1c21494fece873e101bc317655dafbf58b32699f56dd27eec13a2ce615801cee75961cd33 lynis-3.0.8.tar.gz
+c37366154e03a661a7e995d14c651d5503c7189f50edfd194d8b7034e001b9610bfe79917221156ab3607f7c348625ea956fb0acb46a6c7e64a7d189dbcfd4ee lynis-3.1.1.tar.gz
1cdaaee433912c2ccdec8ad7c9b88be55fe3f1d68e2fca79cc6e0e10112d465a70cfbe0a049623437f604bfc9793e0d29b709e035cbf710d4d38ba48acc5355f lynis.cron
"
diff --git a/testing/lyrebird/APKBUILD b/testing/lyrebird/APKBUILD
new file mode 100644
index 00000000000..8a161ec2e15
--- /dev/null
+++ b/testing/lyrebird/APKBUILD
@@ -0,0 +1,35 @@
+# Contributor: Katie Holly <holly@fuslvz.ws>
+# Maintainer: Katie Holly <holly@fuslvz.ws>
+pkgname=lyrebird
+pkgver=0.1.0
+pkgrel=4
+pkgdesc="pluggable transport proxy for Tor, implementing obfs4"
+url="https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/lyrebird"
+arch="all"
+license="BSD-3-Clause"
+makedepends="go"
+source="$pkgname-$pkgver.tar.bz2::https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/lyrebird/-/archive/lyrebird-$pkgver/lyrebird-lyrebird-$pkgver.tar.bz2"
+builddir="$srcdir/lyrebird-lyrebird-$pkgver"
+
+# it used to be named this upstream
+provides="obfs4proxy=$pkgver-r$pkgrel"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ go build -o lyrebird ./cmd/lyrebird
+}
+
+check() {
+ go test -short ./...
+}
+
+package() {
+ install -Dm755 lyrebird -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+f9b8686d1c5f9ddb41a255a1a8954e05cefd50523ada7360432b456c62475ba606872df407ba8ebd7714d4f185eef0efae63e3e53c5c1c18fd323a97912f951e lyrebird-0.1.0.tar.bz2
+"
diff --git a/testing/lzbench/APKBUILD b/testing/lzbench/APKBUILD
deleted file mode 100644
index 04bd9d45f07..00000000000
--- a/testing/lzbench/APKBUILD
+++ /dev/null
@@ -1,25 +0,0 @@
-# Contributor: Oleg Titov <oleg.titov@gmail.com>
-# Maintainer: Oleg Titov <oleg.titov@gmail.com>
-pkgname=lzbench
-pkgver=1.8.1
-pkgrel=0
-pkgdesc="lzbench is an in-memory benchmark of open-source LZ77/LZSS/LZMA compressors"
-url="https://github.com/inikep/lzbench"
-arch="all !x86 !s390x !riscv64"
-license="GPL zlib MIT Unlicense BSD Apache-2.0 CDDL CC0 custom"
-options="!check" # No test suite from upstream
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/inikep/lzbench/archive/v$pkgver.tar.gz"
-builddir="$srcdir/$pkgname-$pkgver/"
-
-build() {
- make
-}
-
-package() {
- install -Dm 755 lzbench "$pkgdir"/usr/bin/lzbench
-
- install -Dm 644 -t "$pkgdir"/usr/share/doc/$pkgname/ README.md
-}
-
-sha512sums="5a1f4c25a7d8b95619027c527e668d466cbdb8759faf4fcd59d3de311895fc72788b8e06b7ac5bb2d26bb94fbe633f5639336fa6eac6ba72769e4ad969401862 lzbench-1.8.1.tar.gz"
diff --git a/testing/lzdoom/0001-link-zipdir-against-fts.patch b/testing/lzdoom/0001-link-zipdir-against-fts.patch
deleted file mode 100644
index 449da8c75fd..00000000000
--- a/testing/lzdoom/0001-link-zipdir-against-fts.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/tools/zipdir/CMakeLists.txt
-+++ b/tools/zipdir/CMakeLists.txt
-@@ -4,6 +4,6 @@
- include_directories( "${ZLIB_INCLUDE_DIR}" "${BZIP2_INCLUDE_DIR}" "${LZMA_INCLUDE_DIR}" )
- add_executable( zipdir
- zipdir.c )
-- target_link_libraries( zipdir ${ZLIB_LIBRARIES} ${BZIP2_LIBRARIES} lzma )
-+ target_link_libraries( zipdir ${ZLIB_LIBRARIES} ${BZIP2_LIBRARIES} lzma fts )
- set( CROSS_EXPORTS ${CROSS_EXPORTS} zipdir PARENT_SCOPE )
- endif()
diff --git a/testing/lzdoom/0002-fix-musl-fts.patch b/testing/lzdoom/0002-fix-musl-fts.patch
deleted file mode 100644
index b8024004d37..00000000000
--- a/testing/lzdoom/0002-fix-musl-fts.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -275,6 +275,7 @@
- if ( NOT HAVE_FTS )
- include ( FindPkgConfig )
- pkg_check_modules( MUSL_FTS musl-fts )
-+ string(REPLACE ";" " " MUSL_FTS_LDFLAGS "${MUSL_FTS_LDFLAGS}")
- if ( MUSL_FTS_FOUND )
- set ( ALL_C_FLAGS "${ALL_C_FLAGS} ${MUSL_FTS_LDFLAGS}" )
- else ( MUSL_FTS_FOUND )
diff --git a/testing/lzdoom/APKBUILD b/testing/lzdoom/APKBUILD
deleted file mode 100644
index 324fdfd04d3..00000000000
--- a/testing/lzdoom/APKBUILD
+++ /dev/null
@@ -1,63 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=lzdoom
-pkgver=3.88a
-pkgrel=0
-pkgdesc="Feature centric port for all Doom engine games (legacy GL 2.0 support)"
-url="https://www.zdoom.org/"
-# x86 blocked by sse2
-# ppc64 blocked by zmusic
-# riscv64 fails to build, link-make applet not found
-arch="all !x86 !ppc64le !riscv64"
-license="GPL-3.0-or-later"
-depends="fluidsynth"
-makedepends="
- cmake nasm fts-dev sdl2-dev gtk+3.0-dev zlib-dev
- zmusic-dev bzip2-dev libjpeg-turbo-dev libgme-dev
- openal-soft-dev mpg123-dev libsndfile-dev libexecinfo-dev
- mesa-dev samurai vulkan-loader-dev
- "
-subpackages="$pkgname-doc"
-source="
- 0001-link-zipdir-against-fts.patch
- 0002-fix-musl-fts.patch
- $pkgname-$pkgver.tar.gz::https://github.com/drfrag666/gzdoom/archive/refs/tags/$pkgver.tar.gz
- "
-builddir="$srcdir/gzdoom-$pkgver"
-options="!check" # No test suite
-
-# Enable openmp when possible
-case "$CARCH" in
-s390x)
- _no_openmp=ON
- ;;
-*)
- makedepends="$makedepends openmp-dev"
- _no_openmp=OFF
- ;;
-esac
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
-
- cmake -B build -G Ninja \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DBUILD_SHARED_LIBS=True \
- -DDYN_GTK=OFF \
- -DDYN_OPENAL=OFF \
- -DNO_OPENMP=$_no_openmp \
- $CMAKE_CROSSOPTS
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-
-sha512sums="
-7e2f5e593cabf618c2e5c520380af01ba4aa3fef9955a6305888d2bb017af25579ee02bd16b6c6080ac4e823498b224edb553f998b8a6d7833d4789070931c38 0001-link-zipdir-against-fts.patch
-7fed60cb9006653c9a85c226e98efae02b3f7f6bd34c47db03f29bc98bf1584f7e128394ab920956d799efa6bace3605f628fd806e130410243e3fdc78b417bc 0002-fix-musl-fts.patch
-7c083bc57c32cefcc84dbe157e3bf76e67d6fd61ff5d65c50bfaf7ed60a8bf54874ed98c80ebda61d6ef4133758186a8a8b2814d52a335c51b08630b1774fec4 lzdoom-3.88a.tar.gz
-"
diff --git a/testing/lzfse/APKBUILD b/testing/lzfse/APKBUILD
new file mode 100644
index 00000000000..72d4d870302
--- /dev/null
+++ b/testing/lzfse/APKBUILD
@@ -0,0 +1,39 @@
+# Contributor: Milan P. Stanić <mps@arvanta.net>
+# Maintainer: Milan P. Stanić <mps@arvanta.net>
+pkgname=lzfse
+pkgver=1.0
+pkgrel=0
+pkgdesc="lzfse compression library and command line tool"
+url="https://github.com/lzfse/lzfse"
+arch="all !s390x" # test fails on s390x
+license="BSD-3-Clause"
+makedepends="cmake"
+subpackages="$pkgname-dev"
+source="https://github.com/lzfse/lzfse/archive/refs/tags/lzfse-$pkgver.tar.gz"
+builddir="$srcdir/"$pkgname-$pkgname-$pkgver
+
+build() {
+ if [ "$CBUILD" != "$CHOST" ]; then
+ CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ cmake -B build \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=True \
+ -DCMAKE_BUILD_TYPE=MinSizeRel \
+ $CMAKE_CROSSOPTS
+ cmake --build build
+}
+
+check() {
+ cd build
+ CTEST_OUTPUT_ON_FAILURE=TRUE ctest
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+9d7ca44e6d3d2bdf4b82b0eb66c14922369b8b6fe2cf891187a77c6708b8d26c2c1b2ccddec6059e85dbbbb37c497419549f02812b5f34d06238ac246a8cf912 lzfse-1.0.tar.gz
+"
diff --git a/testing/lzlib/APKBUILD b/testing/lzlib/APKBUILD
deleted file mode 100644
index 549fba7bb7f..00000000000
--- a/testing/lzlib/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Contributor: Klemens Nanni <kl3@posteo.org>
-# Maintainer: Klemens Nanni <kl3@posteo.org>
-pkgname=lzlib
-pkgver=1.13
-pkgrel=0
-pkgdesc="Library for the lzip compression file format"
-url="http://www.nongnu.org/lzip/lzlib.html"
-arch="all"
-license="GPL-2.0-or-later"
-subpackages="$pkgname-doc $pkgname-dev"
-source="https://download.savannah.gnu.org/releases/lzip/lzlib/lzlib-$pkgver.tar.gz"
-
-build() {
- ./configure \
- --prefix=/usr \
- --mandir=/usr/share/man \
- --disable-static
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-b9c4e5a9aca982984b497d1da2e1f0439b37b19acaf88a02f5af114b0a65a828c5ae235b3bd4f419ce001963de38a4d03445a6a1bd93f37e783e799abd75578d lzlib-1.13.tar.gz
-"
diff --git a/testing/lzop/APKBUILD b/testing/lzop/APKBUILD
deleted file mode 100644
index 2507d7a1bd8..00000000000
--- a/testing/lzop/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Contributor: Sasha Gerrand <alpine-pkgs@sgerrand.com>
-# Maintainer: Sasha Gerrand <alpine-pkgs@sgerrand.com>
-pkgname=lzop
-pkgver=1.04
-pkgrel=0
-pkgdesc="lzop is a very fast file compressor"
-url="https://www.lzop.org/"
-arch="all"
-license="GPL-2.0-only"
-makedepends="lzo-dev"
-subpackages="$pkgname-doc"
-source="https://www.lzop.org/download/lzop-$pkgver.tar.gz"
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-5829b4495ffefab549aa697a05c536ce593c572c9eee6004460583a0090abcd317c6074c4f981dfee6be61ac8d127f02dd37053b6cb782af64db41586a8bbb6e lzop-1.04.tar.gz
-"
diff --git a/testing/m17n-db/APKBUILD b/testing/m17n-db/APKBUILD
new file mode 100644
index 00000000000..2774161b4f6
--- /dev/null
+++ b/testing/m17n-db/APKBUILD
@@ -0,0 +1,42 @@
+# Maintainer:
+pkgname=m17n-db
+pkgver=1.8.5
+pkgrel=0
+# the i18n/charmaps are in the glibc source
+_glibc=2.37
+pkgdesc="gnu M-text multilingualization data"
+url="https://www.nongnu.org/m17n/"
+arch="noarch"
+license="LGPL-2.1-or-later"
+# FIXME: bb awk hangs
+depends_dev="$pkgname=$pkgver-r$pkgrel"
+makedepends="mawk gettext-dev"
+subpackages="$pkgname-lang $pkgname-dev"
+source="https://download.savannah.gnu.org/releases/m17n/m17n-db-$pkgver.tar.gz
+ glibc-$_glibc.tar.xz::https://ftp.gnu.org/gnu/glibc/glibc-$_glibc.tar.xz
+ "
+
+build() {
+ ./configure \
+ --host=$CHOST \
+ --build=$CBUILD \
+ --prefix=/usr \
+ --with-charmaps="$srcdir"/glibc-$_glibc/localedata/charmaps/ \
+ AWK=mawk
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+ mkdir -p "$pkgdir"/usr/lib
+ mv "$pkgdir"/usr/share/pkgconfig "$pkgdir"/usr/lib/
+}
+
+sha512sums="
+6c3f42072b7e0a36870fd8143fb1ac7c3efc21c41869d984dfa0cbb87eb1f9958e429f1144a975b401791f0423386a03ab02531f162496531e303d9b0e049987 m17n-db-1.8.5.tar.gz
+4fc5932f206bb1b8b54828a28af1a681616b838bbab60c81c82155f3629cbfe1301d271af65511ed917f4c6949a025429221fe6035753282f15346919f15b90c glibc-2.37.tar.xz
+"
diff --git a/testing/m17n-lib/APKBUILD b/testing/m17n-lib/APKBUILD
new file mode 100644
index 00000000000..2e30be76b13
--- /dev/null
+++ b/testing/m17n-lib/APKBUILD
@@ -0,0 +1,75 @@
+# Maintainer:
+pkgname=m17n-lib
+pkgver=1.8.4
+pkgrel=1
+pkgdesc="gnu M-text multilingualization library"
+url="https://www.nongnu.org/m17n/"
+arch="all"
+license="LGPL-2.1-or-later"
+depends="m17n-db"
+depends_dev="
+ m17n-db-dev
+ $pkgname-tools=$pkgver-r$pkgrel
+ "
+makedepends="
+ anthy-dev
+ fontconfig-dev
+ freetype-dev
+ fribidi-dev
+ gettext-dev
+ libthai-dev
+ libx11-dev
+ libxaw-dev
+ libxft-dev
+ libxml2-dev
+ libxt-dev
+ "
+subpackages="
+ $pkgname-dev
+ libm17n-core
+ libm17n-flt
+ $pkgname-tools
+ "
+source="http://download.savannah.gnu.org/releases/m17n/m17n-lib-$pkgver.tar.gz"
+
+build() {
+ export CFLAGS="$CFLAGS -flto=auto $(pkg-config --cflags glib-2.0)"
+ export LIBS="-lintl"
+ ./configure \
+ --host=$CHOST \
+ --build=$CBUILD \
+ --prefix=/usr \
+ --disable-dependency-tracking \
+ --disable-static
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+core() {
+ pkgdesc="$pkgdesc (-core lib)"
+
+ amove usr/lib/libm17n-core.so.*
+}
+
+flt() {
+ pkgdesc="$pkgdesc (-flt lib)"
+
+ amove usr/lib/libm17n-flt.so.*
+}
+
+tools() {
+ pkgdesc="$pkgdesc (extra tools)"
+
+ amove usr/bin
+}
+
+sha512sums="
+7e322788aed8a758a8c289112433aabccd12dacf14b247ba9060503bcc44930c9251f0c4e718987b9a151de097e72bc1e07c8096f7f4ad83a7d7183a549721d6 m17n-lib-1.8.4.tar.gz
+"
diff --git a/testing/m1n1/APKBUILD b/testing/m1n1/APKBUILD
deleted file mode 100644
index 774a2bb754b..00000000000
--- a/testing/m1n1/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Contributor: Milan P. Stanić <mps@arvanta.net>
-# Maintainer: Milan P. Stanić <mps@arvanta.net>
-pkgname=m1n1
-pkgver=1.0.2
-_artwork_commitid=35626c31f5c5a8a884aaff93f864795026495742
-pkgrel=0
-pkgdesc="bootloader and experimentation playground for Apple Silicon"
-url="https://github.com/AsahiLinux/m1n1"
-arch="aarch64"
-license="MIT"
-options="!check" # no tests
-makedepends="llvm bash imagemagick dtc"
-source="m1n1-$pkgver.tar.gz::https://github.com/AsahiLinux/m1n1/archive/refs/tags/v$pkgver.tar.gz
- artwork-$pkgver.tar.gz::https://github.com/AsahiLinux/artwork/archive/$_artwork_commitid.tar.gz"
-
-prepare() {
- default_prepare
- rmdir artwork
- tar xf "$srcdir/"artwork-$pkgver.tar.gz
- mv artwork-$_artwork_commitid artwork
-}
-
-build() {
- make ARCH=
-}
-
-package() {
- mkdir -p "$pkgdir"/usr/share/m1n1
- install -p -Dm644 "$builddir"/build/m1n1.bin $pkgdir/usr/share/m1n1/
- install -p -Dm644 "$builddir"/build/m1n1.macho $pkgdir/usr/share/m1n1/
-}
-
-sha512sums="
-258a4fe69729c38bee6ae2032c5893172c53406551c546a7976283fed9dfabaa9531749d4dd7f93393cf5f9255e4db48dd3e00f6561bea16db76907d85112019 m1n1-1.0.2.tar.gz
-db83c018636d5148a2d7753fc6d5b7343684bc255b93cc3a6f08cf416ddab1d6ce4290b4a5692c30d1f8258db43d261598e45ebfef0066c632a00d7b53ea7881 artwork-1.0.2.tar.gz
-"
diff --git a/testing/m2r2/APKBUILD b/testing/m2r2/APKBUILD
index e44364b3dc2..4c578870ed8 100644
--- a/testing/m2r2/APKBUILD
+++ b/testing/m2r2/APKBUILD
@@ -1,21 +1,20 @@
# Contributor: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
# Maintainer: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
pkgname=m2r2
-pkgver=0_git20211210
-_githash=b47d195275d39201c6bd0da4c26acbae28fcbcb9
+pkgver=0.3.3
pkgrel=2
pkgdesc="Markdown to reStructuredText converter"
url="https://crossnox.github.io/m2r2"
arch="all"
license="MIT"
depends="python3 py3-docutils py3-mistune1 py3-setuptools py3-setuptools_scm"
-makedepends="py3-setuptools"
-checkdepends="py3-pytest"
-source="$pkgname-$pkgver.zip::https://github.com/CrossNox/m2r2/archive/$_githash.zip
- no-circular-import.patch
+checkdepends="py3-pytest py3-six"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/CrossNox/m2r2/archive/v$pkgver.tar.gz
mistune1.patch
+ no-circular-import.patch
"
-builddir="$srcdir/$pkgname-$_githash"
+options="!check" # fail for some reason
build() {
python3 setup.py build
@@ -26,11 +25,11 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
-136a9f60fef67e14dc4a64b159e85f500941eda82d7660ed1276d9c2a3e363bb7786936ed3c163756fc886707ccc1017d8ad1e4f7baa744503ba3455b9e9c242 m2r2-0_git20211210.zip
+502ac414e023579590078df3cf2bc704434ae8dcfde771b1085be99347499047c7000e7b8eb8bfeedb42e0a835f1871c1f01b198318225d6ced396d2bbafde20 m2r2-0.3.3.tar.gz
+9c5e062b8bff6db108894b33971499a8d0badd187414ab5ffe40934fe7894239189e89a1aa592da428d228d640d3e4f9c10b5aa89553dafe37734b896a5c3f32 mistune1.patch
3f6c03ac0244b9514a830449a1ac57d2cecd30b5f5c84301eb68f304d3d8e6e6287770c9ea8144c6cee9d00c21b48e6d88ace0e92e80ee460c6c6d02cb29c34f no-circular-import.patch
-e9831e9b25f11e9e980937c45d83853aca6717539feb0a093147bf482a98a6e2987de85df1c54acdf8fb4f0e13f38afead302045aff0ce39742267fdf2966037 mistune1.patch
"
diff --git a/testing/m2r2/mistune1.patch b/testing/m2r2/mistune1.patch
index 45c821588c5..28a5eaff640 100644
--- a/testing/m2r2/mistune1.patch
+++ b/testing/m2r2/mistune1.patch
@@ -1,23 +1,27 @@
---- ./m2r2.py.orig
-+++ ./m2r2.py
-@@ -9,7 +9,7 @@
+diff --git a/m2r2.py b/m2r2.py
+index e78d969..b259970 100644
+--- a/m2r2.py
++++ b/m2r2.py
+@@ -9,7 +9,7 @@ import re
import sys
from argparse import ArgumentParser, Namespace
-import mistune
+import mistune1
from docutils import io, nodes, statemachine, utils
- from docutils.core import ErrorString
from docutils.parsers import rst
-@@ -80,19 +80,19 @@
+ from docutils.utils import column_width
+@@ -79,7 +79,7 @@ def parse_options():
parser.parse_known_args(namespace=options)
-class RestBlockGrammar(mistune.BlockGrammar):
+class RestBlockGrammar(mistune1.BlockGrammar):
- directive = re.compile(r"^( *\.\..*?)\n(?=\S)", re.DOTALL | re.MULTILINE,)
- oneline_directive = re.compile(r"^( *\.\..*?)$", re.DOTALL | re.MULTILINE,)
- rest_code_block = re.compile(r"^::\s*$", re.DOTALL | re.MULTILINE,)
+ directive = re.compile(
+ r"^( *\.\..*?)\n(?=\S)",
+ re.DOTALL | re.MULTILINE,
+@@ -94,13 +94,13 @@ class RestBlockGrammar(mistune.BlockGrammar):
+ )
-class RestBlockLexer(mistune.BlockLexer):
@@ -32,7 +36,7 @@
def parse_directive(self, m):
self.tokens.append({"type": "directive", "text": m.group(1)})
-@@ -105,7 +105,7 @@
+@@ -113,7 +113,7 @@ class RestBlockLexer(mistune.BlockLexer):
self.tokens.append({"type": "rest_code_block"})
@@ -41,7 +45,7 @@
image_link = re.compile(
r"\[!\[(?P<alt>.*?)\]\((?P<url>.*?)\).*?\]\((?P<target>.*?)\)"
)
-@@ -131,14 +131,14 @@
+@@ -139,14 +139,14 @@ class RestInlineGrammar(mistune.InlineGrammar):
self.emphasis = re.compile(r"^\*(?P<text>(?:\*\*|[^\*])+?)\*(?!\*)") # *word*
@@ -58,7 +62,7 @@
def __init__(self, *args, **kwargs):
no_underscore_emphasis = kwargs.pop("no_underscore_emphasis", False)
-@@ -189,7 +189,7 @@
+@@ -197,7 +197,7 @@ class RestInlineLexer(mistune.InlineLexer):
return self.renderer.eol_literal_marker(marker)
@@ -67,7 +71,7 @@
_include_raw_html = False
list_indent_re = re.compile(r"^(\s*(#\.|\*)\s)")
indent = " " * 3
-@@ -520,7 +520,7 @@
+@@ -528,7 +528,7 @@ class RestRenderer(mistune.Renderer):
return "\n\n"
diff --git a/testing/ma1sd/APKBUILD b/testing/ma1sd/APKBUILD
index 16d69a8d882..b94026dbb99 100644
--- a/testing/ma1sd/APKBUILD
+++ b/testing/ma1sd/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer:
pkgname=ma1sd
pkgver=2.5.0
-pkgrel=1
+pkgrel=2
pkgdesc="Federated Matrix Identity Server"
url="https://github.com/ma1uta/ma1sd/"
arch="noarch !riscv64" # openjdk8-jre missing
diff --git a/testing/macchina/APKBUILD b/testing/macchina/APKBUILD
index 01093adda37..37e43719e6e 100644
--- a/testing/macchina/APKBUILD
+++ b/testing/macchina/APKBUILD
@@ -1,25 +1,26 @@
# Contributor: Jakub Panek <me@panekj.dev>
# Maintainer: Dominika Liberda <ja@sdomi.pl>
pkgname=macchina
-pkgver=6.0.6
-pkgrel=0
+pkgver=6.1.8
+pkgrel=1
pkgdesc="System information fetcher, with an (unhealthy) emphasis on performance"
url="https://github.com/Macchina-CLI/macchina"
-arch="all !s390x !riscv64" # s390x and riscv64 blocked by cargo
+# arm: needs https://github.com/Macchina-CLI/libmacchina/commit/1afd21de2d38b82cb2821259e260fcfc8d0cabc0
+arch="all !armhf !armv7 !x86 !s390x !riscv64" # s390x and riscv64 blocked by cargo
license="MIT"
-makedepends="cargo"
+makedepends="cargo sqlite-dev cargo-auditable"
options="net"
subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/Macchina-CLI/macchina/archive/refs/tags/v$pkgver.tar.gz
- minimize-size.patch"
+source="$pkgname-$pkgver.tar.gz::https://github.com/Macchina-CLI/macchina/archive/refs/tags/v$pkgver.tar.gz"
+
prepare() {
default_prepare
- cargo fetch --locked
+ cargo fetch --target="$CTARGET" --locked
}
build() {
- cargo build --frozen --release
+ cargo auditable build --frozen --release
}
check() {
@@ -36,6 +37,5 @@ package() {
}
sha512sums="
-9e88d06c58925d396c5c92627e950f9e3de71e8d9d1c36ef7c2e5888bc8800f41f990ea08f2855d4b3aebfd9754df6aa88e65384e2750e325cb4e3f7d4527156 macchina-6.0.6.tar.gz
-e7fe1542f9d1cd38a2d90c7333bbef7f7631d05341a3d269458cf81d5022a03737ef30d15b11fad8d4c8ce13288a79bc307f002d49b191f7e306f3a64d8b36df minimize-size.patch
+e91c21497745e3317c811b0edbf004087989fbd1053cb5d63c9e802e5508dec104bb0834d1719c557a45aac2870c4605d00922e0505846a414af0db93d037349 macchina-6.1.8.tar.gz
"
diff --git a/testing/macchina/minimize-size.patch b/testing/macchina/minimize-size.patch
deleted file mode 100644
index f12c4370513..00000000000
--- a/testing/macchina/minimize-size.patch
+++ /dev/null
@@ -1,16 +0,0 @@
---- a/Cargo.toml
-+++ b/Cargo.toml
-@@ -36,11 +36,12 @@
- features = ["build", "cargo", "git", "rustc"]
-
- [profile.release]
--opt-level = 3
-+opt-level = "z"
- debug = false
- lto = true
- incremental = true
- codegen-units = 1
-+panic = "abort"
-
- [features]
- openwrt = ["libmacchina/openwrt"]
diff --git a/testing/madbomber/0001-makefile.patch b/testing/madbomber/0001-makefile.patch
deleted file mode 100644
index bedaf8a730f..00000000000
--- a/testing/madbomber/0001-makefile.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/Makefile 2020-12-30 16:20:22.000000000 +0100
-+++ b/Makefile 2020-12-30 16:35:17.352796089 +0100
-@@ -41,6 +41,7 @@
- install: install-arch install-indep
-
- install-arch:
-+ mkdir -p $(BIN_PREFIX)
- cp madbomber $(BIN_PREFIX)
- chown root.root $(BIN_PREFIX)/madbomber
- chmod a+rx,g-w,o-w $(BIN_PREFIX)/madbomber
diff --git a/testing/madbomber/APKBUILD b/testing/madbomber/APKBUILD
deleted file mode 100644
index 63d0db1204a..00000000000
--- a/testing/madbomber/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=madbomber
-pkgver=0.2.5
-pkgrel=2
-pkgdesc="Clone of Activision's classic Atari 2600 console game Kaboom!"
-url="http://www.newbreedsoftware.com/madbomber/"
-arch="all"
-license="GPL-2.0-or-later"
-depends="libmikmod"
-makedepends="sdl12-compat-dev sdl_mixer-dev sdl_image-dev"
-options="!check" # No testsuite
-source="https://github.com/antonialoytorrens/nbs/raw/master/unix/x/madbomber/src/madbomber-$pkgver.tar.gz
- 0001-makefile.patch
- "
-
-build() {
- make
-}
-
-package() {
- make install \
- DATA_PREFIX="$pkgdir"/usr/share/madbomber \
- BIN_PREFIX="$pkgdir"/usr/bin
- install -Dm644 "$builddir"/madbomber.desktop \
- "$pkgdir"/usr/share/applications/madbomber.desktop
- install -Dm644 "$builddir"/madbomber-icon.xpm \
- "$pkgdir"/usr/share/pixmaps/madbomber-icon.xpm
-}
-
-sha512sums="c9e0890f5dede6b031dea544a0a09f5a13dd8f40e23cf7d2dba1ad83322f036da56f5ebc3b5b4d8fc0a6b8973ccfdec29108706e36953a11b0c5768083ce6ced madbomber-0.2.5.tar.gz
-0b3c1d0ad391e23a362c980264aadc1d83194b3353232481cb78598366f70e81c4b3ecf92def87eea24a611ef7ca12cddf75332a6c8d5bc803a826af94bc7a74 0001-makefile.patch"
diff --git a/testing/maddy/APKBUILD b/testing/maddy/APKBUILD
index 6803dd05aaa..22aac31e1b7 100644
--- a/testing/maddy/APKBUILD
+++ b/testing/maddy/APKBUILD
@@ -1,13 +1,13 @@
# Contributor: Michał Polański <michal@polanski.me>
# Maintainer: Michał Polański <michal@polanski.me>
pkgname=maddy
-pkgver=0.5.4
-pkgrel=4
+pkgver=0.7.1
+pkgrel=2
pkgdesc="Composable all-in-one mail server"
url="https://maddy.email/"
license="GPL-3.0-or-later"
arch="all"
-makedepends="go libcap scdoc linux-pam-dev sqlite-dev"
+makedepends="go scdoc linux-pam-dev sqlite-dev"
subpackages="$pkgname-openrc $pkgname-doc $pkgname-vim::noarch"
pkgusers="$pkgname"
pkggroups="$pkgname"
@@ -15,42 +15,41 @@ install="$pkgname.pre-install"
source="https://github.com/foxcpp/maddy/archive/v$pkgver/maddy-$pkgver.tar.gz
$pkgname.initd
use-syslog.patch
- acme-default-hostname.patch
"
+# secfixes:
+# 0.6.3-r0:
+# - CVE-2023-27582
+
export GOFLAGS="$GOFLAGS -trimpath -mod=readonly -modcacherw -tags=libsqlite3"
-export GOPATH="$srcdir"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
build() {
- ldflags="-extldflags \"$LDFLAGS\" -s -w
+ ldflags="-extldflags \"$LDFLAGS\"
-X github.com/foxcpp/maddy.Version=$pkgver
"
go build -ldflags="$ldflags" -v -o bin/maddy ./cmd/maddy
- go build -ldflags="$ldflags" -v -o bin/maddyctl ./cmd/maddyctl
- msg "Building man pages..."
- for f in docs/man/*.scd; do
- echo "$f -> ${f%.scd}"
- scdoc <"$f" >"${f%.scd}"
- done
+ scdoc <docs/man/maddy.1.scd >maddy.1
}
check() {
- go test ./...
+ # disable failing remote_test
+ # pam-helper fails to build due to strict-prototypes; "int run()" w/o prototype invalid
+ go test $(go list ./... | grep -Ev '(internal/target/remote|maddy-pam-helper)')
}
package() {
- install -Dm755 bin/maddy "$pkgdir"/usr/bin/maddy
- setcap cap_net_bind_service=+ep "$pkgdir"/usr/bin/maddy
- install -Dm755 bin/maddyctl "$pkgdir"/usr/bin/maddyctl
+ install -Dm755 bin/maddy -t "$pkgdir"/usr/bin/
install -Dm644 maddy.conf "$pkgdir"/etc/maddy/maddy.conf
install -Dm755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
- install -Dm644 docs/man/*.1 -t "$pkgdir"/usr/share/man/man1
- install -Dm644 docs/man/*.5 -t "$pkgdir"/usr/share/man/man5
+ install -Dm644 maddy.1 -t "$pkgdir"/usr/share/man/man1/
}
vim() {
@@ -63,8 +62,7 @@ vim() {
}
sha512sums="
-46ae7ecd91bc4664486e05eb86f67a49192aed3d9fa798c95bf177ed23c73f285df88de340f0238ae599145e70b631bcfcceaaa93a26c2539f47a6803166d99f maddy-0.5.4.tar.gz
-a5b919e1fbecb570123e567ca0e78499efe25e4ae01abbba3221fc54cd35d12f194da847377a0fd00823733817922fae163e247f5b92edad498bb89d14b1bee0 maddy.initd
+1aca8c03a232e8556655c84721211eca829174f6aa4a371fd0b15fbfdf82ab24c841338f214a742b05118a8a31d21d513bd8667513559bb32ba0870c427062fe maddy-0.7.1.tar.gz
+c521763df519f86063ecfcb65c6689df880ea6478a83584ee1a7ebbfa5d95d1adf52ea9355f918a5a1c41f78d8b3a690e049fb43faac718ca5b6c519e10b0f23 maddy.initd
76dbb8d7f4b389f2fc1e4e9ecbf93bd7e9a002a8520d93067e39b7a8d35e74e92af7151c116d38aa9d7548747cdd107b38392204f7d3a8944914aee236f7934e use-syslog.patch
-6701d74e0bf160b17ee7b4c6335e02d4e1f87e71ff832021f62298c7c5baee73dac96d691c5be9013a3df22f3dba683e5614a473df625d3592313fbea455f253 acme-default-hostname.patch
"
diff --git a/testing/maddy/acme-default-hostname.patch b/testing/maddy/acme-default-hostname.patch
deleted file mode 100644
index ea4eb60c63d..00000000000
--- a/testing/maddy/acme-default-hostname.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-From 4b1c4f932a38557fbb0adeab9f8d28ec672216ca Mon Sep 17 00:00:00 2001
-From: ptrcnull <git@ptrcnull.me>
-Date: Tue, 15 Mar 2022 00:14:13 +0100
-Subject: [PATCH] tls/acme: set default hostname
-
----
- internal/tls/acme/acme.go | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/internal/tls/acme/acme.go b/internal/tls/acme/acme.go
-index 556e6372..65f9e7c3 100644
---- a/internal/tls/acme/acme.go
-+++ b/internal/tls/acme/acme.go
-@@ -90,6 +90,7 @@ func (l *Loader) Init(cfg *config.Map) error {
- l.cfg = certmagic.New(l.cache, certmagic.Config{
- Storage: l.store, // not sure if it is necessary to set these twice
- Logger: cmLog,
-+ DefaultServerName: hostname,
- })
- mngr := certmagic.NewACMEManager(l.cfg, certmagic.ACMEManager{
- Logger: cmLog,
diff --git a/testing/maddy/maddy.initd b/testing/maddy/maddy.initd
index 7f9be77f8e6..aae69fc2fb3 100644
--- a/testing/maddy/maddy.initd
+++ b/testing/maddy/maddy.initd
@@ -7,7 +7,9 @@ description_log_reopen="Reopen log files"
description_reload="Reload some files from disk (but without main configuration)"
command=/usr/bin/maddy
+command_args="run $maddy_opts"
command_user=maddy:maddy
+capabilities="^cap_net_bind_service"
# make relative paths in config relative to the state directory
directory="/var/lib/$RC_SVCNAME"
diff --git a/testing/madonctl/APKBUILD b/testing/madonctl/APKBUILD
deleted file mode 100644
index be2034a69ae..00000000000
--- a/testing/madonctl/APKBUILD
+++ /dev/null
@@ -1,25 +0,0 @@
-# Contributor: mio <miyopan@e.email>
-# Maintainer: mio <miyopan@e.email>
-pkgname=madonctl
-pkgver=0_git20210711
-pkgrel=3
-_gitrev=8ecb5fad4db276453ceca2123fcf568fe77ca211
-pkgdesc="CLI client for the Mastodon social network API"
-url="https://github.com/McKael/madonctl"
-license="MIT"
-arch="all"
-makedepends="go"
-source="madonctl-$_gitrev.tar.gz::https://github.com/McKael/madonctl/archive/$_gitrev.tar.gz"
-options="!check" # No tests
-builddir="$srcdir/$pkgname-$_gitrev"
-
-build() {
- go build
-}
-
-package() {
- install -Dm0755 madonctl -t "$pkgdir"/usr/bin
-}
-sha512sums="
-8a11fc6a9495248c424ddf9cdf9028c8faf984f554f4e112f5336519764ea75076d9b566b4255df67afe46797fbc7a50d8c9c109c29d4b7f16d5297a0f49f075 madonctl-8ecb5fad4db276453ceca2123fcf568fe77ca211.tar.gz
-"
diff --git a/testing/mage/APKBUILD b/testing/mage/APKBUILD
index 928098f0a76..6f690acae98 100644
--- a/testing/mage/APKBUILD
+++ b/testing/mage/APKBUILD
@@ -1,19 +1,21 @@
# Contributor: Mark Pashmfouroush <mark@markpash.me>
# Maintainer: Mark Pashmfouroush <mark@markpash.me>
pkgname=mage
-pkgver=1.12.1
-pkgrel=2
+pkgver=1.13.0
+pkgrel=15
# Commit hash that corresponds to the version
-_commit=2f1ec406dfa856a4b8378ef837061abc2a0ce01b
+_commit=3504e09d7fcfdeab6e70281edce5d5dfb205f31a
pkgdesc="make-like build tool using Go"
url="https://magefile.org/"
license="Apache-2.0"
arch="all"
depends="go"
-options="chmod-clean"
+options="chmod-clean net"
source="https://github.com/magefile/mage/archive/v$pkgver/mage-$pkgver.tar.gz"
-export GOPATH="$srcdir"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
build() {
go build -o bin/mage -ldflags="
@@ -24,6 +26,7 @@ build() {
}
check() {
+ export GOROOT=/usr/lib/go
go vet ./...
go test -v -tags CI ./...
}
@@ -33,5 +36,5 @@ package() {
}
sha512sums="
-bad85971bd484745a2a4ae1099579311464a18dce27199787d408cafdcfdce918780c3b3f7059e222d4b98a16ee5363e4e095fea9d23702e23b86ba3fed04394 mage-1.12.1.tar.gz
+a393a0192ecaf8664f9dd35acfd994993ab1c028a08fb8c925fc569ce58dc9d58baeef4760b012563e3f3a6957c77d548bb33a6b577d12af2e030e2465e6d24b mage-1.13.0.tar.gz
"
diff --git a/testing/mailctl/APKBUILD b/testing/mailctl/APKBUILD
new file mode 100644
index 00000000000..19d1b384121
--- /dev/null
+++ b/testing/mailctl/APKBUILD
@@ -0,0 +1,65 @@
+# Contributor: Koni Marti <koni.marti@gmail.com>
+# Maintainer: Koni Marti <koni.marti@gmail.com>
+pkgname=mailctl
+pkgver=0.9.2
+pkgrel=0
+pkgdesc="Renewal and authorization of OAuth2 credentials"
+url="https://github.com/pdobsan/mailctl"
+arch="aarch64 x86_64" # limited by ghc
+license="BSD-3-Clause"
+depends="gnupg"
+makedepends="ghc cabal zlib-dev libffi-dev"
+subpackages="$pkgname-doc $pkgname-bash-completion $pkgname-zsh-completion $pkgname-fish-completion"
+source="mailctl-$pkgver.tar.gz::https://github.com/pdobsan/mailctl/archive/refs/tags/$pkgver.tar.gz
+ cabal.project.freeze
+ "
+
+export CABAL_DIR="$srcdir/.cabal"
+
+cabal_update() {
+ cd $builddir
+ cabal v2-update
+ (
+ cd "$builddir"
+ cabal v2-freeze --shadow-installed-packages
+ mv cabal.project.freeze "$startdir/"
+ )
+}
+
+prepare() {
+ default_prepare
+ ln -sf "$srcdir/cabal.project.freeze" \
+ "$builddir/cabal.project.freeze"
+}
+
+build() {
+ cabal v2-update
+ cabal v2-build mailctl:exes \
+ --jobs=${JOBS:-1} \
+ --prefix=/usr \
+ --docdir=/usr/share/doc/$pkgname \
+ --sysconfdir=/etc
+}
+
+check() {
+ cabal test
+}
+
+package() {
+ mkdir -p "$pkgdir"
+
+ # See https://github.com/haskell/cabal/issues/6919#issuecomment-761563498
+ cabal list-bin mailctl:exes | xargs install -Dm755 -t "$pkgdir"/usr/bin
+ install -Dm644 README.md -t "$pkgdir"/usr/share/doc/$pkgname/
+ install -Dm644 configs/* -t "$pkgdir"/usr/share/$pkgname
+
+ cd completions
+ install -Dm644 $pkgname.bash "$pkgdir"/usr/share/bash-completion/completions/$pkgname
+ install -Dm644 $pkgname.fish "$pkgdir"/usr/share/fish/vendor_completions.d/$pkgname.fish
+ install -Dm644 $pkgname.zsh "$pkgdir"/usr/share/zsh/site-functions/_$pkgname
+}
+
+sha512sums="
+d179eca8a24c819cab7e3d7337f12b5321d69baba2e0f61613c1ad8a438261ffe54ad78b77407576c67216f83fbfcd142e5fffa918181165e326b748ffe9d4f4 mailctl-0.9.2.tar.gz
+387f833c20e9055340e1ef71a997d741e5e5acf44e47ef7ed7305fb8787b210db98f2526a972cba99c1e1b1dc0eaf2527e03e4d7fe0d7c17c3d62cc65d78403c cabal.project.freeze
+"
diff --git a/testing/mailctl/cabal.project.freeze b/testing/mailctl/cabal.project.freeze
new file mode 100644
index 00000000000..4d1f21145c3
--- /dev/null
+++ b/testing/mailctl/cabal.project.freeze
@@ -0,0 +1,203 @@
+active-repositories: hackage.haskell.org:merge
+constraints: any.Cabal ==3.8.1.0,
+ any.Cabal-syntax ==3.8.1.0,
+ any.HUnit ==1.6.2.0,
+ any.OneTuple ==0.4.1.1,
+ any.QuickCheck ==2.14.3,
+ QuickCheck -old-random +templatehaskell,
+ any.StateVar ==1.2.2,
+ any.aeson ==2.2.1.0,
+ aeson +ordered-keymap,
+ any.ansi-terminal ==1.0,
+ ansi-terminal -example,
+ any.ansi-terminal-types ==0.11.5,
+ any.appar ==0.1.8,
+ any.array ==0.5.4.0,
+ any.asn1-encoding ==0.9.6,
+ any.asn1-parse ==0.9.5,
+ any.asn1-types ==0.3.4,
+ any.assoc ==1.1,
+ assoc +tagged,
+ any.async ==2.2.5,
+ async -bench,
+ any.attoparsec ==0.14.4,
+ attoparsec -developer,
+ any.attoparsec-aeson ==2.2.0.1,
+ any.auto-update ==0.1.6,
+ any.base ==4.17.2.1,
+ any.base-orphans ==0.9.1,
+ any.base64 ==0.4.2.4,
+ any.base64-bytestring ==1.2.1.0,
+ any.basement ==0.0.16,
+ any.bifunctors ==5.6.1,
+ bifunctors +tagged,
+ any.binary ==0.8.9.1,
+ any.bitvec ==1.1.5.0,
+ bitvec +simd,
+ any.blaze-builder ==0.4.2.3,
+ any.bsb-http-chunked ==0.0.0.4,
+ any.byteorder ==1.0.4,
+ any.bytestring ==0.11.5.3,
+ any.cabal-doctest ==1.0.9,
+ any.call-stack ==0.4.0,
+ any.case-insensitive ==1.2.1.0,
+ any.cereal ==0.5.8.3,
+ cereal -bytestring-builder,
+ any.colour ==2.3.6,
+ any.comonad ==5.0.8,
+ comonad +containers +distributive +indexed-traversable,
+ any.conduit ==1.3.5,
+ any.conduit-extra ==1.3.6,
+ any.containers ==0.6.7,
+ any.contravariant ==1.5.5,
+ contravariant +semigroups +statevar +tagged,
+ any.cookie ==0.4.6,
+ any.crypton ==0.34,
+ crypton -check_alignment +integer-gmp -old_toolchain_inliner +support_aesni +support_deepseq +support_pclmuldq +support_rdrand -support_sse +use_target_attributes,
+ any.crypton-connection ==0.3.1,
+ any.crypton-x509 ==1.7.6,
+ any.crypton-x509-store ==1.6.9,
+ any.crypton-x509-system ==1.6.7,
+ any.crypton-x509-validation ==1.6.12,
+ any.data-default-class ==0.1.2.0,
+ any.data-fix ==0.3.2,
+ any.deepseq ==1.4.8.0,
+ any.directory ==1.3.7.1,
+ any.distributive ==0.6.2.1,
+ distributive +semigroups +tagged,
+ any.dlist ==1.0,
+ dlist -werror,
+ any.easy-file ==0.2.5,
+ any.either ==5.0.2,
+ any.exceptions ==0.10.5,
+ any.fast-logger ==3.2.2,
+ any.filepath ==1.4.2.2,
+ any.foldable1-classes-compat ==0.1,
+ foldable1-classes-compat +tagged,
+ any.generically ==0.1.1,
+ any.ghc-bignum ==1.3,
+ any.ghc-boot-th ==9.4.8,
+ any.ghc-prim ==0.9.1,
+ any.hashable ==1.4.3.0,
+ hashable +integer-gmp -random-initial-seed,
+ any.hourglass ==0.2.12,
+ any.hsc2hs ==0.68.10,
+ hsc2hs -in-ghc-tree,
+ any.hsyslog ==5.0.2,
+ hsyslog -install-examples,
+ any.http-client ==0.7.16,
+ http-client +network-uri,
+ any.http-client-tls ==0.3.6.3,
+ any.http-conduit ==2.3.8.3,
+ http-conduit +aeson,
+ any.http-date ==0.0.11,
+ any.http-types ==0.12.4,
+ any.http2 ==3.0.3,
+ http2 -devel -doc -h2spec,
+ any.indexed-traversable ==0.1.3,
+ any.indexed-traversable-instances ==0.1.1.2,
+ any.integer-conversion ==0.1.0.1,
+ any.integer-gmp ==1.1,
+ any.integer-logarithms ==1.0.3.1,
+ integer-logarithms -check-bounds +integer-gmp,
+ any.iproute ==1.7.12,
+ any.libyaml ==0.1.2,
+ libyaml -no-unicode -system-libyaml,
+ any.memory ==0.18.0,
+ memory +support_bytestring +support_deepseq,
+ any.mime-types ==0.1.2.0,
+ any.mono-traversable ==1.0.15.3,
+ any.mtl ==2.2.2,
+ any.network ==3.1.4.0,
+ network -devel,
+ any.network-byte-order ==0.1.7,
+ any.network-uri ==2.6.4.2,
+ any.old-locale ==1.0.0.7,
+ any.old-time ==1.1.0.4,
+ any.optparse-applicative ==0.18.1.0,
+ optparse-applicative +process,
+ any.parsec ==3.1.16.1,
+ any.pem ==0.2.4,
+ any.pretty ==1.1.3.6,
+ any.pretty-simple ==4.1.2.0,
+ pretty-simple -buildexample +buildexe,
+ any.prettyprinter ==1.7.1,
+ prettyprinter -buildreadme +text,
+ any.prettyprinter-ansi-terminal ==1.1.3,
+ any.primitive ==0.9.0.0,
+ any.process ==1.6.18.0,
+ any.profunctors ==5.6.2,
+ any.psqueues ==0.2.8.0,
+ any.random ==1.2.1.1,
+ any.recv ==0.1.0,
+ any.resourcet ==1.3.0,
+ any.rts ==1.0.2,
+ any.safe-exceptions ==0.1.7.4,
+ any.scientific ==0.3.7.0,
+ scientific -bytestring-builder -integer-simple,
+ any.semialign ==1.3,
+ semialign +semigroupoids,
+ any.semigroupoids ==6.0.0.1,
+ semigroupoids +comonad +containers +contravariant +distributive +tagged +unordered-containers,
+ any.simple-sendfile ==0.2.32,
+ simple-sendfile +allow-bsd -fallback,
+ any.socks ==0.6.1,
+ any.split ==0.2.4,
+ any.splitmix ==0.1.0.5,
+ splitmix -optimised-mixer,
+ any.stm ==2.5.1.0,
+ any.streaming-commons ==0.2.2.6,
+ streaming-commons -use-bytestring-builder,
+ any.strict ==0.5,
+ any.strings ==1.1,
+ any.tagged ==0.8.8,
+ tagged +deepseq +transformers,
+ any.template-haskell ==2.19.0.0,
+ any.text ==2.0.2,
+ any.text-iso8601 ==0.1,
+ any.text-short ==0.1.5,
+ text-short -asserts,
+ any.th-abstraction ==0.6.0.0,
+ any.th-compat ==0.1.4,
+ any.these ==1.2,
+ any.time ==1.12.2,
+ any.time-compat ==1.9.6.1,
+ time-compat -old-locale,
+ any.time-manager ==0.0.1,
+ any.tls ==1.9.0,
+ tls +compat -hans +network,
+ any.transformers ==0.5.6.2,
+ any.transformers-compat ==0.7.2,
+ transformers-compat -five +five-three -four +generic-deriving +mtl -three -two,
+ any.twain ==2.1.2.0,
+ any.typed-process ==0.2.11.1,
+ any.unix ==2.7.3,
+ any.unix-compat ==0.7.1,
+ unix-compat -old-time,
+ any.unix-time ==0.4.11,
+ any.unliftio ==0.2.25.0,
+ any.unliftio-core ==0.2.1.0,
+ any.unordered-containers ==0.2.19.1,
+ unordered-containers -debug,
+ any.utf8-string ==1.0.2,
+ any.uuid-types ==1.0.5.1,
+ any.vault ==0.3.1.5,
+ vault +useghc,
+ any.vector ==0.13.1.0,
+ vector +boundschecks -internalchecks -unsafechecks -wall,
+ any.vector-algorithms ==0.9.0.1,
+ vector-algorithms +bench +boundschecks -internalchecks -llvm +properties -unsafechecks,
+ any.vector-stream ==0.1.0.0,
+ any.wai ==3.2.4,
+ any.wai-extra ==3.1.13.0,
+ wai-extra -build-example,
+ any.wai-logger ==2.4.0,
+ any.warp ==3.3.30,
+ warp +allow-sendfilefd -network-bytestring -warp-debug +x509,
+ any.witherable ==0.4.2,
+ any.word8 ==0.1.3,
+ any.yaml ==0.11.11.2,
+ yaml +no-examples +no-exe,
+ any.zlib ==0.6.3.0,
+ zlib -bundled-c-zlib -non-blocking-ffi -pkg-config
+index-state: hackage.haskell.org 2024-01-01T03:15:09Z
diff --git a/testing/maildir2rss/APKBUILD b/testing/maildir2rss/APKBUILD
new file mode 100644
index 00000000000..4ff7b5e9177
--- /dev/null
+++ b/testing/maildir2rss/APKBUILD
@@ -0,0 +1,30 @@
+# Maintainer: Cowington Post <cowingtonpost@gmail.com>
+pkgname=maildir2rss
+pkgver=0.0.2
+pkgrel=4
+pkgdesc="Convert a maildir to a rss feed"
+url="https://git.sr.ht/~cowingtonpost/maildir2rss"
+arch="all"
+license="MPL-2.0"
+makedepends="go"
+source="$pkgname-$pkgver.tar.gz::https://git.sr.ht/~cowingtonpost/maildir2rss/archive/v$pkgver.tar.gz"
+builddir="$srcdir/maildir2rss-v$pkgver"
+options="!check" # no tests
+
+export GOPATH="$srcdir/go"
+export GOCACHE="$srcdir/go-build"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+export GOFLAGS="$GOFLAGS -modcacherw"
+
+build() {
+ make
+}
+
+package() {
+ make PREFIX=/usr DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+020b83dc4f0bef57f7abed28bb0d8504b8bcdc7c8ed6dbd43b7c03634fea37bb6473a785a911eca8d8f8c106776aec6326b91b8b73267e0f6ac7b09d251a1ffd maildir2rss-0.0.2.tar.gz
+"
diff --git a/testing/mailmunge/APKBUILD b/testing/mailmunge/APKBUILD
deleted file mode 100644
index 27944173b0f..00000000000
--- a/testing/mailmunge/APKBUILD
+++ /dev/null
@@ -1,66 +0,0 @@
-# Contributor: Duncan Bellamy <dunk@denkimushi.com>
-# Maintainer: Duncan Bellamy <dunk@denkimushi.com>
-pkgname=mailmunge
-pkgver=3.07
-pkgrel=0
-pkgdesc="email filtering framework that uses libmilter to interface with Postfix or Sendmail"
-url="https://mailmunge.org"
-arch="all"
-license="GPL-2.0-only"
-pkgusers="mailmunge"
-pkggroups="mailmunge"
-depends="
- perl-io-socket-ssl
- perl-mime-tools
- perl-socket
- perl-time-local
- perl-unix-syslog
- tzdata
- "
-makedepends="libmilter-dev"
-checkdepends="
- perl-dbi
- perl-file-find-rule
- perl-html-parser
- perl-json-any
- perl-json-xs
- perl-mail-spamassassin
- perl-net-dns
- perl-dbd-sqlite
- perl-test-deep
- perl-utils
- "
-subpackages="$pkgname-openrc $pkgname-doc"
-install="$pkgname.pre-install"
-source="$pkgname-$pkgver.tar.gz::https://git.skoll.ca/Skollsoft-Public/mailmunge/archive/v$pkgver.tar.gz"
-builddir="$srcdir/$pkgname"
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var \
- --with-perlinstalldirs=vendor \
- make
-}
-
-check() {
- make test
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- # delete systemd and tests
- rm -rf "$pkgdir"/etc/systemd
- rm -rf "$pkgdir"/usr/share/perl*/vendor_perl/Test
-
- install -dm 750 -o mailmunge -g mailmunge \
- var/spool/mailmunge
-}
-
-sha512sums="
-3e7cb3dc1af971d2a8cc3f6e26aecd8876e7203294a4d839a7b316ef33d2b90768b98c3b805b9c1614dbb86141e7a963f849ea57454e0c1cf4d7ccb50e725386 mailmunge-3.07.tar.gz
-"
diff --git a/testing/mailmunge/mailmunge.pre-install b/testing/mailmunge/mailmunge.pre-install
deleted file mode 100644
index 852f3e14c8f..00000000000
--- a/testing/mailmunge/mailmunge.pre-install
+++ /dev/null
@@ -1,6 +0,0 @@
-#!/bin/sh
-
-addgroup -S mailmunge 2>/dev/null
-adduser -S -D -H -h /var/spool/mailmunge -s /sbin/nologin -G mailmunge -g mailmunge mailmunge 2>/dev/null
-
-exit 0
diff --git a/testing/mailsec-check/APKBUILD b/testing/mailsec-check/APKBUILD
index 73cba131c04..093e13f85a8 100644
--- a/testing/mailsec-check/APKBUILD
+++ b/testing/mailsec-check/APKBUILD
@@ -3,7 +3,7 @@
pkgname=mailsec-check
pkgver=0_git20210729
_commit=a4aa6329a96ae6403791a51ddb8ac880af5b4eb3
-pkgrel=3
+pkgrel=18
pkgdesc="Utility to analyze state of deployment of security-related email protocols"
url="https://github.com/foxcpp/mailsec-check"
license="MIT"
@@ -15,8 +15,9 @@ source="$pkgname-$pkgver.tar.gz::https://github.com/foxcpp/mailsec-check/archive
builddir="$srcdir/$pkgname-$_commit"
export GOFLAGS="$GOFLAGS -trimpath -mod=readonly -modcacherw"
-export GOPATH="$srcdir"
-export CGO_ENABLED=0
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
build() {
go build
diff --git a/testing/mailtutan/APKBUILD b/testing/mailtutan/APKBUILD
new file mode 100644
index 00000000000..7873685dfe1
--- /dev/null
+++ b/testing/mailtutan/APKBUILD
@@ -0,0 +1,34 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=mailtutan
+pkgver=0.3.0
+pkgrel=0
+pkgdesc="An SMTP server for test and development environments written in Rust"
+url="https://github.com/mailtutan/mailtutan"
+arch="all !s390x !riscv64 !ppc64le" # builds fail due to ring (dependency), see issues 986, 1612 and 1630 respectively at https://github.com/briansmith/ring
+license="MIT"
+makedepends="
+ cargo
+ cargo-auditable
+"
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/mailtutan/mailtutan/archive/refs/tags/v$pkgver.tar.gz
+"
+options="!check" # no tests
+
+prepare() {
+ default_prepare
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+package() {
+ install -Dm 755 target/release/mailtutan "$pkgdir"/usr/bin/mailtutan
+}
+
+sha512sums="
+5193a5a946a50e865de0b60930c4ba2d227e3c418d4f6d90a9eba7a184c7c09441be459e09160bf76ee943703d41a8db7986901b2a098f56a9db030c4fc342c1 mailtutan-0.3.0.tar.gz
+"
diff --git a/testing/mailutils/APKBUILD b/testing/mailutils/APKBUILD
index 895df24c5b3..6f61f9bc365 100644
--- a/testing/mailutils/APKBUILD
+++ b/testing/mailutils/APKBUILD
@@ -1,20 +1,27 @@
# Contributor: Shiz <hi@shiz.me>
# Maintainer: Shiz <hi@shiz.me>
pkgname=mailutils
-pkgver=3.9
-pkgrel=1
+pkgver=3.17
+pkgrel=0
pkgdesc="GNU swiss army knife of electronic mail handling"
url="https://mailutils.org/"
-arch="all !s390x"
+arch="all"
license="GPL-3.0-or-later"
replaces="mailx"
depends_dev="$pkgname-libs=$pkgver-r$pkgrel"
-makedepends="readline-dev libtool"
-checkdepends="autoconf"
+makedepends="
+ libunistring-dev
+ libtool
+ gnutls-dev
+ readline-dev
+ "
+checkdepends="autoconf netcat-openbsd"
subpackages="$pkgname-dev $pkgname-doc $pkgname-libs $pkgname-servers $pkgname-mh"
source="https://ftp.gnu.org/gnu/mailutils/mailutils-$pkgver.tar.xz
disable-koi8-r-test.patch
- fix-build-with-gcc-10.patch"
+ "
+# they pretty much all pass, but the test suite takes an hour
+options="!check"
build() {
./configure \
@@ -36,41 +43,35 @@ package() {
make DESTDIR="$pkgdir" install
cd "$pkgdir"
- rm usr/lib/charset.alias
+ # rm usr/lib/charset.alias
# No need for these to be suid/sgid root.
chmod u-s usr/sbin/mda
chmod g-s usr/bin/dotlock
}
-servers() {
- pkgdesc="$pkgdesc (servers)"
+libs() {
+ pkgdesc="$pkgdesc (libraries)"
- mkdir -p "$subpkgdir"/usr/sbin
- local server; for server in pop3d imap4d comsatd; do
- mv "$pkgdir"/usr/sbin/$server "$subpkgdir"/usr/sbin/
- done
+ amove usr/lib
}
-libs() {
- pkgdesc="$pkgdesc (libraries)"
+servers() {
+ pkgdesc="$pkgdesc (servers)"
- mkdir -p "$subpkgdir"/usr
- mv "$pkgdir"/usr/lib "$subpkgdir"/usr/
+ amove \
+ usr/sbin/pop3d \
+ usr/sbin/imap4d \
+ usr/sbin/comsatd
}
mh() {
pkgdesc="$pkgdesc (MH compatibility)"
- mkdir -p "$subpkgdir"/usr/bin \
- "$subpkgdir"/usr/share/$pkgname
-
- mv "$pkgdir"/usr/bin/mu-mh "$subpkgdir"/usr/bin/
- mv "$pkgdir"/usr/share/$pkgname/mh "$subpkgdir"/usr/share/$pkgname/
- rmdir -p "$pkgdir"/usr/share/$pkgname || true
+ amove usr/bin/mu-mh \
+ usr/share/mailutils/mh
}
sha512sums="
-1eef9bebeeafbf974e54b87705444ee02b663a86e22442a9ec5db16ade38e6e9a3079ee8a8267393e97d6e9e477917617b2e1d57d3287ab19e4df73b66e5a8d4 mailutils-3.9.tar.xz
-d0d78bba10d3ce039bb00657a570fb9411fabf448548994860285701939ae52afd15c007daa85bb18662a67153dda86069afe240b430fbe1b28a45755108f477 disable-koi8-r-test.patch
-7050e5069f82d51971096e7f3c9835a4162d593c38e7e8a60184144c985901e0092c7ab230eed340023909e3b856f2619a2c26f983f4dd9cc5397548e9e173ef fix-build-with-gcc-10.patch
+e4080d9674444c3e077aa72f825a0373a4750d187a04a488449e89f6fec19d9309a118412e91745575eb90d05fa541f8d2626a8fd5e8ac10710aa1f7a0ff3193 mailutils-3.17.tar.xz
+fd628287a8b70b84e4fe477f3fed157308f1a0e803dfd65390d90a7ad40023155559b284e29ceb95dd3c854fce4e3a22a651d8de99b49db7c9d4b3682003cf2c disable-koi8-r-test.patch
"
diff --git a/testing/mailutils/disable-koi8-r-test.patch b/testing/mailutils/disable-koi8-r-test.patch
index 803072148af..2d67861df43 100644
--- a/testing/mailutils/disable-koi8-r-test.patch
+++ b/testing/mailutils/disable-koi8-r-test.patch
@@ -1,7 +1,9 @@
musl does not support this charset.
+diff --git a/libmailutils/tests/decode2047.at b/libmailutils/tests/decode2047.at
+index d255844..806d4bd 100644
--- a/libmailutils/tests/decode2047.at
+++ b/libmailutils/tests/decode2047.at
-@@ -49,12 +49,6 @@
+@@ -50,12 +50,6 @@ TESTDEC2047([],[decode04],
[If you can read this yo ... u understand the example.
])
diff --git a/testing/mailutils/fix-build-with-gcc-10.patch b/testing/mailutils/fix-build-with-gcc-10.patch
deleted file mode 100644
index 74feeca9973..00000000000
--- a/testing/mailutils/fix-build-with-gcc-10.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-Otherwise doesn't compile with -fcommon.
-
-diff -upr mailutils-3.9.orig/imap4d/imap4d.h mailutils-3.9/imap4d/imap4d.h
---- mailutils-3.9.orig/imap4d/imap4d.h 2021-07-10 14:39:56.469994975 +0200
-+++ mailutils-3.9/imap4d/imap4d.h 2021-07-10 14:41:29.953368933 +0200
-@@ -229,8 +229,6 @@ extern struct mu_tls_config global_tls_c
- extern int test_mode;
- extern int silent_expunge;
-
--int tls_available;
--
- /* Input functions */
- extern mu_stream_t iostream;
- extern int io_untagged_response (int, const char *, ...) MU_PRINTFLIKE(2,3);
-diff -upr mailutils-3.9.orig/lib/tcpwrap.h mailutils-3.9/lib/tcpwrap.h
---- mailutils-3.9.orig/lib/tcpwrap.h 2021-07-10 14:39:56.526661667 +0200
-+++ mailutils-3.9/lib/tcpwrap.h 2021-07-10 14:40:13.370002323 +0200
-@@ -17,7 +17,7 @@
- #include <mailutils/types.h>
-
- extern int mu_tcp_wrapper_enable;
--const char *mu_tcp_wrapper_daemon;
-+extern const char *mu_tcp_wrapper_daemon;
- extern int mu_tcpwrapper_access (int fd);
- extern void mu_tcpwrapper_cfg_init (void);
- extern int mu_tcp_wrapper_prefork (int fd,
diff --git a/testing/maitreya/APKBUILD b/testing/maitreya/APKBUILD
deleted file mode 100644
index 07a2fca67bb..00000000000
--- a/testing/maitreya/APKBUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer: rubicon <rubicon@mailo.com>
-pkgname=maitreya
-pkgver=8.0.1
-_majorver=${pkgver%%.*}
-_pkgname="$pkgname$_majorver"
-pkgrel=0
-pkgdesc="Software for Vedic and western astrology"
-url="https://www.saravali.de/maitreya.html"
-arch="all"
-# Saravali.ttf is licensed under OFL-1.1-RFN
-# geonames1000.sql is licensed under CC-BY-4.0
-license="GPL-2.0-or-later AND OFL-1.1-RFN AND CC-BY-4.0"
-makedepends="wxgtk3-dev"
-options="!check"
-subpackages="$pkgname-lang"
-source="https://github.com/martin-pe/maitreya8/releases/download/v$pkgver/$_pkgname-$pkgver.tar.bz2"
-builddir="$srcdir/$_pkgname-$pkgver"
-
-build() {
- ./configure \
- --prefix=/usr \
- --with-wx-config=wx-config-gtk3
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-53fe5c7c5d83bc39884e09717189ac9548e6817c489d3dfd26edadda04af059fd5628ec263e61fc3541cde93d9ee1816969adaa3815baa8289776b4d0ac4742a maitreya8-8.0.1.tar.bz2
-"
diff --git a/testing/makeself/APKBUILD b/testing/makeself/APKBUILD
index 4bb0dc6808e..ef870b4aa95 100644
--- a/testing/makeself/APKBUILD
+++ b/testing/makeself/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Pedro Filipe <xpecex@outlook.com>
pkgname=makeself
-pkgver=2.4.4
-pkgrel=1
+pkgver=2.5.0
+pkgrel=0
pkgdesc="Generate a self-extractable compressed tar archive from a directory"
options="!check" # Github tarball is incomplete
url="https://makeself.io/"
@@ -18,6 +18,6 @@ package() {
}
sha512sums="
-3d4d03458f7f11a8df46340d1b489ca60d413d5ed857cc67bb8ef15335ce2848e4675e080791c26fdf29423f813d468b4b797438fe0876dad54e85c6346b9b8b makeself-release-2.4.4.tar.gz
+cd0ce98579f00a02f9559848b39e0a6efea9df1866073d419f0b6560034cc186ed8315f8b4589e03f626b040727d9ae646bc2abaebe4f4da556b87617bdd770f makeself-release-2.5.0.tar.gz
0d334c17f3801961cb0ed9175734bdac3bf0fdf40531707bedcd75a9e7d2fb6f5dd7e377cf31cc851000d002ea7059e65280efbcb10e923d4e02714c890ba37b makeself-header_path.patch
"
diff --git a/testing/mame/APKBUILD b/testing/mame/APKBUILD
index e4c82851b3e..991b95baa8e 100644
--- a/testing/mame/APKBUILD
+++ b/testing/mame/APKBUILD
@@ -1,18 +1,18 @@
# Maintainer: Taner Tas <taner76@gmail.com>
pkgname=mame
-pkgver=0.243
+pkgver=0.251
_pkgver=${pkgver/.}
-_groovymame=gm0243sr002i
+_groovymame=gm0251sr002o
pkgrel=0
pkgdesc="Multi Arcade Machine Emulator with GroovyMAME/Switchres/No-nag patchset."
url="https://mamedev.org/"
# riscv64: takes forever to build and constantly fails
-arch="all !riscv64"
+# s390x: who plays an arcade emulator on a mainframe
+arch="all !s390x !riscv64"
license="GPL-2.0-or-later"
depends="$pkgname-common"
makedepends="
alsa-lib-dev
- clang-dev
coreutils
expat-dev
flac-dev
@@ -26,7 +26,7 @@ makedepends="
mesa-dev
nasm
portaudio-dev
- portmidi-dev
+ portmidi-dev<=200
pulseaudio-dev
python3-dev
py3-sphinx
@@ -40,15 +40,15 @@ subpackages="
$pkgname-common::noarch
$pkgname-arcade
$pkgname-mess
- $pkgname-data::noarch
+ $pkgname-plugins::noarch
$pkgname-doc
$pkgname-lang
$pkgname-tools
- $pkgname-plugins::noarch
+ $pkgname-data::noarch
"
source="
https://github.com/mamedev/mame/archive/mame$_pkgver.tar.gz
- $_groovymame.patch::https://github.com/antonioginer/GroovyMAME/releases/download/$_groovymame/GroovyMAME${pkgver#*.}.patch
+ $_groovymame.patch::https://github.com/antonioginer/GroovyMAME/releases/download/$_groovymame/GroovyMAME${_groovymame:3:3}.patch
mame.ini
midi.conf
fix-musl.patch
@@ -57,11 +57,6 @@ source="
options="!check" # No test suite
builddir="$srcdir"/$pkgname-$pkgname${pkgver/.}
-# temp allow textrels on rv64
-case $CARCH in
- riscv64) options="$options textrels" ;;
-esac
-
build() {
case "$CARCH" in
x86|armhf|armv7) _PTR64=0;;
@@ -73,62 +68,43 @@ build() {
*) _NOASM=1 ;;
esac
- case "$CARCH" in
- s390x) _BIGENDIAN=1 ;;
- *) _BIGENDIAN=0 ;;
- esac
-
- case "$CARCH" in
- armhf|x86)
- # clang segfaults on armhf
- # x86 seems not compiling with clang anymore
- true
- ;;
- *)
- # clang builds have better benchmark score and smaller size
- export OVERRIDE_CC=clang
- export OVERRIDE_CXX=clang++
- # clang workaraound
- sed -i -e 's/-flifetime-dse=1//g' scripts/genie.lua
- ;;
- esac
-
- export CFLAGS="$CFLAGS -I/usr/include/lua5.3 -DBX_CRT_MUSL -Wno-everything"
- export CXXFLAGS="$CXXFLAGS $CFLAGS"
+ export CFLAGS="$CFLAGS -I/usr/include/lua5.3 -DBX_CRT_MUSL"
+ export CXXFLAGS="$CXXFLAGS -I/usr/include/lua5.3 -DBX_CRT_MUSL"
export LDFLAGS="$LDFLAGS -L/usr/lib/lua5.3"
-_build="make
- TARGETOS=linux
- NOWERROR=1
- DEBUG=0
- USE_QTDEBUG=0
- VERBOSE=1
- REGENIE=1
- OSD=sdl
- SYMBOLS=0
- FORCE_DRC_C_BACKEND=
- PTR64=$_PTR64
- NOASM=$_NOASM
- BIGENDIAN=$_BIGENDIAN
- TOOLS=
- PYTHON_EXECUTABLE=python3
- SDL_INI_PATH=/etc/mame
- USE_SYSTEM_LIB_EXPAT=1
- USE_SYSTEM_LIB_ZLIB=1
- USE_SYSTEM_LIB_JPEG=1
- USE_SYSTEM_LIB_FLAC=1
- USE_SYSTEM_LIB_LUA=1
- USE_SYSTEM_LIB_SQLITE3=1
- USE_SYSTEM_LIB_PORTAUDIO=1
- USE_SYSTEM_LIB_UV=1
- USE_SYSTEM_LIB_GLM=1
- USE_SYSTEM_LIB_RAPIDJSON=1
- USE_SYSTEM_LIB_PORTMIDI=1
- USE_SYSTEM_LIB_ASIO=0"
-
- [ -f mame ] || [ -f mame64 ] || $_build TOOLS=1 SUBTARGET=mame
- [ -f mamearcade ] || [ -f mamearcade64 ] || $_build SUBTARGET=arcade
- [ -f mess ] || [ -f mess64 ] || $_build SUBTARGET=mess
+ local build="make
+ TARGETOS=linux
+ NOWERROR=1
+ DEBUG=0
+ USE_QTDEBUG=0
+ VERBOSE=1
+ REGENIE=1
+ OSD=sdl
+ SYMBOLS=0
+ FORCE_DRC_C_BACKEND=
+ PTR64=$_PTR64
+ NOASM=$_NOASM
+ BIGENDIAN=0
+ TOOLS=
+ PYTHON_EXECUTABLE=python3
+ SDL_INI_PATH=/etc/mame
+ USE_SYSTEM_LIB_EXPAT=1
+ USE_SYSTEM_LIB_ZLIB=1
+ USE_SYSTEM_LIB_JPEG=1
+ USE_SYSTEM_LIB_FLAC=1
+ USE_SYSTEM_LIB_LUA=1
+ USE_SYSTEM_LIB_SQLITE3=1
+ USE_SYSTEM_LIB_PORTAUDIO=1
+ USE_SYSTEM_LIB_UV=1
+ USE_SYSTEM_LIB_GLM=1
+ USE_SYSTEM_LIB_RAPIDJSON=1
+ USE_SYSTEM_LIB_PORTMIDI=1
+ USE_SYSTEM_LIB_ASIO=0
+ "
+
+ [ -f mame ] || [ -f mame64 ] || $build TOOLS=1 SUBTARGET=mame
+ [ -f mamearcade ] || [ -f mamearcade64 ] || $build SUBTARGET=arcade
+ [ -f mess ] || [ -f mess64 ] || $build SUBTARGET=mess
}
package() {
@@ -146,61 +122,34 @@ package() {
do
install -D -m644 docs/man/"$i" "$pkgdir"/usr/share/man/man1/"$i"
done
-}
-common() {
- cd "$builddir"
- pkgdesc="MAME - Common configuration files"
- install -D -m644 "$srcdir"/mame.ini "$subpkgdir"/etc/mame/mame.ini
- install -D -m644 "$srcdir"/midi.conf "$subpkgdir"/usr/lib/modules-load.d/midi.conf
- install -d -m755 "$subpkgdir"/usr/share/$pkgname/roms
-}
+ install -D -m644 "$srcdir"/mame.ini "$pkgdir"/etc/mame/mame.ini
+ install -D -m644 "$srcdir"/midi.conf "$pkgdir"/usr/lib/modules-load.d/midi.conf
+ install -d -m755 "$pkgdir"/usr/share/mame/roms
-arcade() {
- pkgdesc="Multi Arcade Machine Emulator - Arcade specific build."
- cd "$builddir"
- install -D -m755 mamearcade "$subpkgdir"/usr/bin/mamearcade || \
- install -D -m755 mamearcade64 "$subpkgdir"/usr/bin/mamearcade
- ln -s mamearcade "$subpkgdir"/usr/bin/arcade
-}
+ install -D -m755 mamearcade "$pkgdir"/usr/bin/mamearcade || \
+ install -D -m755 mamearcade64 "$pkgdir"/usr/bin/mamearcade
+ ln -s mamearcade "$pkgdir"/usr/bin/arcade
-mess() {
- pkgdesc="Multi Arcade Machine Emulator - Mess specific build."
- cd "$builddir"
- install -D -m755 mess "$subpkgdir"/usr/bin/mess || \
- install -D -m755 mess64 "$subpkgdir"/usr/bin/mess
-}
+ install -D -m755 mamemess "$pkgdir"/usr/bin/mess || \
+ install -D -m755 mamemess64 "$pkgdir"/usr/bin/mess
-data() {
- pkgdesc="Distribution data files for MAME"
- cd "$builddir"
- mkdir -p "$subpkgdir"/usr/share/$pkgname
for i in artwork \
bgfx \
hash \
hlsl \
ini \
keymaps \
+ language \
+ plugins \
samples
do
- cp -r "$i" "$subpkgdir"/usr/share/$pkgname
+ cp -r "$i" "$pkgdir"/usr/share/mame
done
- rm -rf "$subpkgdir"/usr/share/$pkgname/bgfx/shaders/dx11
- rm -rf "$subpkgdir"/usr/share/$pkgname/bgfx/shaders/dx9
- rm -rf "$subpkgdir"/usr/share/$pkgname/bgfx/shaders/metal
-}
+ rm -rf "$pkgdir"/usr/share/mame/bgfx/shaders/dx11
+ rm -rf "$pkgdir"/usr/share/mame/bgfx/shaders/dx9
+ rm -rf "$pkgdir"/usr/share/mame/bgfx/shaders/metal
-plugins() {
- pkgdesc="Distribution plugins for MAME"
- cd "$builddir"
- mkdir -p "$subpkgdir"/usr/share/$pkgname
- cp -r plugins "$subpkgdir"/usr/share/$pkgname/
-}
-
-tools() {
- pkgdesc="Tools for MAME"
- cd "$builddir"
- mkdir -p "$subpkgdir"/usr/bin
for i in castool \
chdman \
floptool \
@@ -210,21 +159,67 @@ tools() {
ldverify \
romcmp
do
- install -sm755 "$i" "$subpkgdir"/usr/bin
+ install -Dm755 "$i" -t "$pkgdir"/usr/bin
done
}
+common() {
+ pkgdesc="MAME - Common configuration files"
+
+ amove etc/mame/mame.ini \
+ usr/lib/modules-load.d/midi.conf \
+ usr/share/mame/roms
+}
+
+arcade() {
+ pkgdesc="Multi Arcade Machine Emulator - Arcade specific build."
+
+ amove usr/bin/mamearcade \
+ usr/bin/arcade
+}
+
+mess() {
+ pkgdesc="Multi Arcade Machine Emulator - Mess specific build."
+
+ amove usr/bin/mess
+}
+
+data() {
+ pkgdesc="Distribution data files for MAME"
+
+ amove usr/share/mame
+}
+
+plugins() {
+ pkgdesc="Distribution plugins for MAME"
+
+ amove usr/share/mame/plugins
+}
+
+tools() {
+ pkgdesc="Tools for MAME"
+
+ amove usr/bin/castool \
+ usr/bin/chdman \
+ usr/bin/floptool \
+ usr/bin/imgtool \
+ usr/bin/jedutil \
+ usr/bin/ldresample \
+ usr/bin/ldverify \
+ usr/bin/romcmp
+}
+
lang() {
pkgdesc="Localization files for MAME"
- cd "$builddir"
- mkdir -p "$subpkgdir"/usr/share/$pkgname
- cp -r language "$subpkgdir"/usr/share/$pkgname/
+
+ amove usr/share/mame/language
}
+
sha512sums="
-282d026280a128b96bb7867265536f7bd90ce774ddca6a0ce55999c4321289f8ba0388a5bf10c1915c67ecd0e0abb0e524f9ed6d6251c4ccd818c7f82d95f062 mame0243.tar.gz
-2049a1418a86c5b3a80ba3ed0228392b9804ff666939dc7e65a3d78e043531e5deab4cc5698e7924c8d24e7f302e2b7c2988a09440eac9f073b0b577251b81db gm0243sr002i.patch
+5d613f5057cbd30e20bd47912e31db25d284b75e768228d637a740c2d5303297a0d53caff79f38b1dd3f691e1c1978f9e3c3b20158c61f71b94d879fc9c8ddf5 mame0251.tar.gz
+c99a4b0dc5eed6126a9b1237b824d16a19267b61041e90637e9566abe0ca32376478c3cead7b32388fe253b351b842cb4b873d42477fa53fc09d4164a595d06a gm0251sr002o.patch
dc008245cbea0b94f58d83e09bf5fd3fff04ac0e2f3a36b910a8b7633c5377419fc67a1fd366ef268e283f744d9a8d29928cfacf456b3edaa2d0b1a11d46a701 mame.ini
8f83ff5a916f4ff8e86c5afbdfe4475f7780bb36c20c78d6d029d0eb0dafd77b3471faa538aca384001d2049dc94c4df3429c67d743adde9fd6329c91e6d19a2 midi.conf
-30b235f85df8461249d9c1cd02318d319814e5f93d455bbae50ffddd07fef913d2f25b29c9ca49b9938c96f9e91a3d00971882438692c162cf8c7b39a0709e0d fix-musl.patch
+32fa59744e426a0921e44e1e792dbdc263cf8e505407adfe1dc392aa949db96bf8fce2140a3f5ede5a5ba756cf40d80887c502f52cec805c34c477ac44c21049 fix-musl.patch
3e4e1ccfc506d18cd4d78ea477b53bf9854568c1eab64e6dc63bbdc750dcd94a2229635d17dbe9c5ee75b28baffeac5c87850f7c87b0dd400636811a961d8d9d nonag.patch
"
diff --git a/testing/mame/fix-musl.patch b/testing/mame/fix-musl.patch
index a2421c50568..0c1378c6834 100644
--- a/testing/mame/fix-musl.patch
+++ b/testing/mame/fix-musl.patch
@@ -29,3 +29,13 @@
#include <thread>
#include <pulse/pulseaudio.h>
+--- a/src/lib/netlist/plib/ppmf.h
++++ b/src/lib/netlist/plib/ppmf.h
+@@ -94,6 +94,7 @@
+ #ifndef PPMF_FORCE_TYPE
+ #define PPMF_FORCE_TYPE -1
+ #endif
++#include "stddef.h"
+
+ namespace plib {
+
diff --git a/testing/mangal/APKBUILD b/testing/mangal/APKBUILD
new file mode 100644
index 00000000000..5fc9f5b45a2
--- /dev/null
+++ b/testing/mangal/APKBUILD
@@ -0,0 +1,44 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=mangal
+pkgver=4.0.6
+pkgrel=10
+pkgdesc="Fancy TUI manga downloader"
+url="https://github.com/metafates/mangal"
+arch="all"
+license="MIT"
+makedepends="go"
+subpackages="
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/metafates/mangal/archive/refs/tags/v$pkgver.tar.gz"
+options="!check" # connects to dead api
+
+build() {
+ local _goldflags="
+ -X github.com/metafates/mangal/constant.BuiltAt=$(date -u "+%Y-%m-%dT%H:%M:%SZ" ${SOURCE_DATE_EPOCH:+-d @$SOURCE_DATE_EPOCH})
+ -X github.com/metafates/mangal/constant.BuiltBy=AlpineLinux
+ -X github.com/metafates/mangal/constant.Revision=0000000
+ "
+ go build -v -ldflags "$_goldflags"
+}
+
+check() {
+ go test ./...
+}
+
+package() {
+ install -Dm755 $pkgname -t "$pkgdir"/usr/bin/
+
+ install -Dm644 completions/$pkgname.bash \
+ "$pkgdir"/usr/share/bash-completion/completions/$pkgname
+ install -Dm644 completions/$pkgname.fish \
+ "$pkgdir"/usr/share/fish/vendor_completions.d/$pkgname.fish
+ install -Dm644 completions/$pkgname.zsh \
+ "$pkgdir"/usr/share/zsh/site-functions/_$pkgname
+}
+
+sha512sums="
+b826dd77cb66efe39812eb6c00439d2578dd32456fbb038509e4a92da52e96d06c8a55d8d85fde2414dcde57197a181cf8a95c0a2bd90903f11340fceda9059b mangal-4.0.6.tar.gz
+"
diff --git a/testing/mangr0ve/APKBUILD b/testing/mangr0ve/APKBUILD
new file mode 100644
index 00000000000..31e5181270c
--- /dev/null
+++ b/testing/mangr0ve/APKBUILD
@@ -0,0 +1,25 @@
+# Contributor: Jacob Ludvigsen <jacob.ludvigsen@protonmail.com>
+# Maintainer: Jacob Ludvigsen <jacob.ludvigsen@protonmail.com>
+pkgname=mangr0ve
+pkgver=0.1.2
+pkgrel=0
+pkgdesc="Terminal application simplifiyng rollback of btrfs subvols"
+url="https://gitlab.com/papiris/mangr0ve"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="btrfs-progs"
+options="!check" # Upstream does not provide tests yet
+subpackages="$pkgname-doc"
+source="https://gitlab.com/papiris/mangr0ve/-/archive/$pkgver/mangr0ve-$pkgver.tar.bz2"
+
+build() {
+ return 0
+}
+
+package() {
+ make DESTDIR="$pkgdir/" install
+}
+
+sha512sums="
+0edd067d47aca23f901b5e76087f3148f9e3894e8ef0409d9d2b57f3a5b78fae7a6dbd99c023c36eff42d69d9569531708a84cf18469776e687ca482e916d03d mangr0ve-0.1.2.tar.bz2
+"
diff --git a/testing/manifest-tool/APKBUILD b/testing/manifest-tool/APKBUILD
new file mode 100644
index 00000000000..eb8a9870b33
--- /dev/null
+++ b/testing/manifest-tool/APKBUILD
@@ -0,0 +1,37 @@
+# Contributor: Phil Estes <estesp@gmail.com>
+# Maintainer: Phil Estes <estesp@gmail.com>
+pkgname=manifest-tool
+pkgver=2.1.6
+_pkgcommit=d96ae95374f885e40b1e7de367c72ab09d7dc362
+pkgrel=2
+pkgdesc="tool for inspecting and creating multi-platform container images"
+url="https://github.com/estesp/manifest-tool"
+arch="all"
+license="Apache-2.0"
+makedepends="go"
+source="$pkgname-$pkgver.tar.gz::https://github.com/estesp/manifest-tool/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/manifest-tool-$pkgver/"
+
+export GOFLAGS="$GOFLAGS -modcacherw"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ msg "Building manifest-tool"
+ cd v2 && go build \
+ -ldflags "-X main.gitCommit=$_pkgcommit -X main.version=$pkgver" \
+ -o ../manifest-tool github.com/estesp/manifest-tool/v2/cmd/manifest-tool
+}
+
+check() {
+ echo "no check"
+}
+
+package() {
+ install -Dm0755 manifest-tool -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+0a23875928191626d474a99d4a052dc578863eef301d4e4c48a96dbf0a1c59279b6d3fb90d3cced4c01c7fa0b2d8f58feaa6612fb21c614cfacaf3b4b8692bee manifest-tool-2.1.6.tar.gz
+"
diff --git a/testing/manticore/0001-use-shared-boost-lib.patch b/testing/manticore/0001-use-shared-boost-lib.patch
new file mode 100644
index 00000000000..65c0d76a3c7
--- /dev/null
+++ b/testing/manticore/0001-use-shared-boost-lib.patch
@@ -0,0 +1,13 @@
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index c2fce771f..388558341 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -113,7 +113,7 @@ endif ()
+
+ # Boost is required dependency now
+ set ( Boost_USE_MULTITHREADED ON )
+-set ( Boost_USE_STATIC_LIBS ON )
++set ( Boost_USE_STATIC_LIBS OFF )
+ # todo: as alternative we can try to recompile boost with clang, but precompiled also quite ok
+ if (CMAKE_CROSSCOMPILING AND CMAKE_SYSTEM_NAME STREQUAL Windows)
+ set ( Boost_COMPILER vc142 )
diff --git a/testing/manticore/APKBUILD b/testing/manticore/APKBUILD
new file mode 100644
index 00000000000..8cee589fe7d
--- /dev/null
+++ b/testing/manticore/APKBUILD
@@ -0,0 +1,102 @@
+# Contributor: Zach DeCook <zachdecook@librem.one>
+# Maintainer: Noel Kuntze <noel.kuntze@contauro.com>
+pkgname=manticore
+pkgver=6.2.12
+pkgrel=0
+pkgdesc="Easy to use open source fast database for search"
+url="https://manticoresearch.com/"
+# 32-bit systems fail to build, tests fail on s390x, ppc64le doc fail.
+arch="all !ppc64le !s390x !x86 !armhf !armv7"
+license="GPL-2.0-only"
+replaces="sphinx manticoresearch"
+install="$pkgname.pre-install"
+source="$pkgname-$pkgver.tar.gz::https://github.com/manticoresoftware/manticoresearch/archive/refs/tags/$pkgver.tar.gz
+ 0001-use-shared-boost-lib.patch
+ $pkgname.initd
+ "
+makedepends="
+ bison
+ boost-dev
+ cmake
+ curl-dev
+ expat-dev
+ flex
+ gtest-dev
+ icu-dev
+ libpq-dev
+ libstemmer-dev
+ mariadb-connector-c-dev
+ re2-dev
+ samurai
+ unixodbc-dev
+ zstd-dev
+ "
+checkdepends="php82"
+pkgusers="manticore"
+pkggroups="manticore"
+subpackages="
+ $pkgname-converter
+ $pkgname-dev
+ $pkgname-doc
+ $pkgname-openrc
+ $pkgname-tools
+ "
+
+builddir="$srcdir/manticoresearch-$pkgver/"
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_SYSCONFDIR=/etc \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DCMAKE_INSTALL_LOCALSTATEDIR=/var \
+ -DCMAKE_INSTALL_FULL_LOCALSTATEDIR=/var \
+ -DCMAKE_BUILD_TYPE=MinSizeRel \
+ -DLOCALDATADIR=/var/lib/manticore \
+ -DWITH_ICU=1 \
+ -DWITH_ICU_FORCE_STATIC=0 \
+ -DWITH_RE2=1 \
+ -DWITH_RE2_FORCE_STATIC=0 \
+ -DWITH_STEMMER=1 \
+ -DWITH_STEMMER_FORCE_STATIC=0 \
+ -DWITH_GALERA=0
+ cmake --build build
+}
+
+check() {
+ # Exclude test 'perform indextool' which always fails
+ ctest --test-dir build --output-on-failure -E '(Perform_indextool)' -j1
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+ install -Dm755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
+ # User/Group created by pre-install hook.
+ chown -R $pkgusers:$pkggroups "$pkgdir"/var/lib/manticore
+ chown -R $pkgusers:$pkggroups "$pkgdir"/var/log/manticore
+ chown -R $pkgusers:$pkggroups "$pkgdir"/var/run/manticore
+
+ mkdir -p "$pkgdir"/usr/share/man/man1
+ cp "$builddir"/doc/*.1 "$pkgdir"/usr/share/man/man1/
+
+}
+
+converter() {
+ pkgdesc="Update Sphinx/Manticore 2.X indexes to new format for Manticore Search"
+ amove usr/bin/index_converter
+}
+
+tools() {
+ pkgdesc="indexer, indextool, and miscellaneous tools for Manticore Search"
+ mkdir -p "$subpkgdir/usr/bin"
+ amove usr/bin/indexer \
+ usr/bin/indextool \
+ usr/bin/spelldump \
+ usr/bin/wordbreaker
+}
+
+sha512sums="
+3dcf0b70153564553182c0e596f2107df67e8265c814c4bee1dafa14e7241ec5258437f9740b5cdf6a29fd84b73c482e33eb70b93c1386eb595d292050984eef manticore-6.2.12.tar.gz
+c5579f95e21041f9859d2ad1a8f8c5d60a1cb812ba201d56a26c22a410329be221c62f3e33d2e3ed634a9d3d345a2a8e96dd02c13f7d32e077ff67615dd51551 0001-use-shared-boost-lib.patch
+d7aec4e7cd4eebaae190083e79bd20c3cc486aaba7557eb846bf9383a21eb6f8d9c30923b187c8ec4062ee5299a432ccc3839e6ed1402e3adc13588cb6525ce9 manticore.initd
+"
diff --git a/testing/manticoresearch/manticoresearch.initd b/testing/manticore/manticore.initd
index 8dab732181c..8dab732181c 100644
--- a/testing/manticoresearch/manticoresearch.initd
+++ b/testing/manticore/manticore.initd
diff --git a/testing/manticoresearch/manticoresearch.pre-install b/testing/manticore/manticore.pre-install
index 67ff8152ac3..67ff8152ac3 100755
--- a/testing/manticoresearch/manticoresearch.pre-install
+++ b/testing/manticore/manticore.pre-install
diff --git a/testing/manticoresearch/0001-Documentation-Create-go-md2man-pages-for-indexer.1-i.patch b/testing/manticoresearch/0001-Documentation-Create-go-md2man-pages-for-indexer.1-i.patch
deleted file mode 100644
index 6c7635f36bf..00000000000
--- a/testing/manticoresearch/0001-Documentation-Create-go-md2man-pages-for-indexer.1-i.patch
+++ /dev/null
@@ -1,344 +0,0 @@
-From 5537fdb9cc5560ce49a9e5ec26c691775b7488ba Mon Sep 17 00:00:00 2001
-From: Zach DeCook <zachdecook@librem.one>
-Date: Tue, 4 Jan 2022 13:48:15 -0500
-Subject: [PATCH] Documentation: Create go-md2man pages for indexer.1 indexer.5
- index_converter.1 indextool.1 spelldump.1 wordbreaker.1 searchd.1
-
----
- .../Plain_indexes_creation.md | 23 +++++--
- manual/Installation/Migration_from_Sphinx.md | 24 ++++---
- manual/Miscellaneous_tools.md | 22 +++---
- manual/Starting_the_server/Manually.md | 67 +++++++------------
- 4 files changed, 70 insertions(+), 66 deletions(-)
-
-diff --git a/manual/Adding_data_from_external_storages/Plain_indexes_creation.md b/manual/Adding_data_from_external_storages/Plain_indexes_creation.md
-index 84142f40..d5e5dbe9 100755
---- a/manual/Adding_data_from_external_storages/Plain_indexes_creation.md
-+++ b/manual/Adding_data_from_external_storages/Plain_indexes_creation.md
-@@ -1,20 +1,26 @@
--# Plain indexes creation
-+# indexer 1 "October 2021" manticoresearch-tools
-+
-+## NAME
-+indexer - auxiliary tool to create plain indexes for Manticore Search
-+
-+## BACKGROUND INFORMATION
-
- Plain indexes are indexes that are created one-time by fetching data at creation from one or several sources. A plain index is immutable as documents cannot be added or deleted during it's lifespan. It is only possible to update values of numeric attributes (including MVA). Refreshing the data is only possible by recreating the whole index.
-
- Plain indexes are available only in [Plain mode](../Creating_an_index/Local_indexes.md#Defining-index-schema-in-config-%28Plain mode%29) and their definition is made of an index declaration and one or several source declarations. The data gathering and index creation is not made by the `searchd` server, but by the auxiliary tool `indexer`.
-
--**Indexer** is a command line tool that can be called directly from the command line or from shell scripts.
-+## DESCRIPTION
-+indexer is a command line tool that can be called directly from the command line or from shell scripts.
-
- It can accept a number of arguments when called, but there are also several settings of it's own in the Manticore configuration file.
-
- In the typical scenario, indexer does the following:
-+
- * fetches the data from the source
- * builds the plain index
- * writes the index files
- * (optional) informs search server about the new index which triggers index rotation
-
--## Indexer tool
- General syntax for `indexer` is as follows:
-
- ```shell
-@@ -36,6 +42,7 @@ sudo -u manticore indexer mysmallindex mybigindex
- ```
-
- Wildcarding on index names is also supported. The following wildcard tokens can be used:
-+
- * `?` matches any single character
- * `*` matches any count of any characters
- * `%` matches none or any single character
-@@ -44,12 +51,12 @@ Wildcarding on index names is also supported. The following wildcard tokens can
- sudo -u manticore indexer indexpart*main --rotate
- ```
-
--The exit codes are as follows:
-+## EXIT STATUS
- * 0 - everything went ok
- * 1 - there was a problem while indexing (and if –-rotate was specified, it was skipped) or an operation emitted a warning
- * 2 - indexing went ok, but –-rotate attempt failed
-
--### Indexer command line arguments
-+## OPTIONS
- * `--config <file>` (`-c <file>` for short) tells `indexer` to use the given file as its configuration. Normally, it will look for `manticore.conf` in the installation directory (e.g. `/etc/manticoresearch/manticore.conf`), followed by the current directory you are in when calling `indexer` from the shell. This is most of use in shared environments where the binary files are installed in a global folder, e.g. `/usr/bin/`, but you want to provide users with the ability to make their own custom Manticore set-ups, or if you want to run multiple instances on a single server. In cases like those you could allow them to create their own `manticore.conf` files and pass them to `indexer` with this option. For example:
-
- ```shell
-@@ -87,6 +94,7 @@ sudo -u manticore indexer myindex --buildstops word_freq.txt 1000
- ```
-
- This would produce a document in the current directory, `word_freq.txt` with the 1,000 most common words in 'myindex', ordered by most common first. Note that the file will pertain to the last index indexed when specified with multiple indexes or `--all` (i.e. the last one listed in the configuration file)
-+
- * `--buildfreqs` works with `--buildstops` (and is ignored if `--buildstops` is not specified). As `--buildstops` provides the list of words used within the index, `--buildfreqs` adds the quantity present in the index, which would be useful in establishing whether certain words should be considered stopwords if they are too prevalent. It will also help with developing "Did you mean…" features where you need to know how much more common a given word compared to another, similar one. Example:
-
- ```shell
-@@ -94,6 +102,7 @@ sudo -u manticore indexer myindex --buildstops word_freq.txt 1000 --buildfreqs
- ```
-
- This would produce the `word_freq.txt` as above, however after each word would be the number of times it occurred in the index in question.
-+
- * `--merge <dst-index> <src-index>` is used for physically merging indexes together, for example if you have a [main+delta scheme](../Creating_an_index/Local_indexes/Plain_index.md#Main+delta), where the main index rarely changes, but the delta index is rebuilt frequently, and `--merge` would be used to combine the two. The operation moves from right to left - the contents of `src-index` get examined and physically combined with the contents of `dst-index` and the result is left in `dst-index`. In pseudo-code, it might be expressed as: `dst-index += src-index` An example:
-
- ```shell
-@@ -101,6 +110,7 @@ sudo -u manticore indexer --merge main delta --rotate
- ```
-
- In the above example, where the main is the master, rarely modified index, and the delta is more frequently modified one, you might use the above to call `indexer` to combine the contents of the delta into the main index and rotate the indexes.
-+
- * `--merge-dst-range <attr> <min> <max>` runs the filter range given upon merging. Specifically, as the merge is applied to the destination index (as part of `--merge`, and is ignored if `--merge` is not specified), `indexer` will also filter the documents ending up in the destination index, and only documents will pass through the filter given will end up in the final index. This could be used for example, in an index where there is a 'deleted' attribute, where 0 means 'not deleted'. Such an index could be merged with:
-
- ```shell
-@@ -108,6 +118,7 @@ sudo -u manticore indexer --merge main delta --merge-dst-range deleted 0 0
- ```
-
- Any documents marked as deleted (value 1) would be removed from the newly-merged destination index. It can be added several times to the command line, to add successive filters to the merge, all of which must be met in order for a document to become part of the final index.
-+
- * `--merge-killlists` (and its shorter alias `--merge-klists`) changes the way kill lists are processed when merging indexes. By default, both kill lists get discarded after a merge. That supports the most typical main+delta merge scenario. With this option enabled, however, kill lists from both indexes get concatenated and stored into the destination index. Note that a source (delta) index kill list will be used to suppress rows from a destination (main) index at all times.
- * `--keep-attrs` allows to reuse existing attributes on reindexing. Whenever the index is rebuilt, each new document id is checked for presence in the "old" index, and if it already exists, its attributes are transferred to the "new" index; if not found, attributes from the new index are used. If the user has updated attributes in the index, but not in the actual source used for the index, all updates will be lost when reindexing; using –keep-attrs enables saving the updated attribute values from the previous index. It is possible to specify a path for index files to used instead of reference path from config:
-
-@@ -135,6 +146,8 @@ sudo -u manticore indextool --rotate --check myindex
- * `--help` (`-h` for short) lists all of the parameters that can be called in `indexer`.
- * `-v` shows `indexer` version.
-
-+# indexer 5 "October 2021" manticoresearch-tools
-+
- ### Indexer configuration settings
- You can also configure indexer behaviour in Manticore configuration file in section `indexer`:
-
-diff --git a/manual/Installation/Migration_from_Sphinx.md b/manual/Installation/Migration_from_Sphinx.md
-index 52f30a6d..4507ee52 100755
---- a/manual/Installation/Migration_from_Sphinx.md
-+++ b/manual/Installation/Migration_from_Sphinx.md
-@@ -1,3 +1,4 @@
-+# null 4 "This section of documentation not converted to man page"
- # Migration from Sphinx Search
-
- ## Sphinx 2.x -> Manticore 2.x
-@@ -72,9 +73,12 @@ Manticore 3.x recognizes and parses special suffixes which makes easier to use n
- * Size suffixes - can be used in parameters that define size of something (memory buffer, disk file, limit of RAM, etc. ) in bytes. "Naked" numbers in that places mean literally size in bytes (octets). Size values take suffix `k` for kilobytes (1k=1024), `m` for megabytes (1m=1024k), `g` for gigabytes (1g=1024m) and `t` for terabytes (1t=1024g).
- * Time suffixes - can be used in parameters defining some time interval values like delays, timeouts, etc. "Naked" values for those parameters usually have documented scale, and you must know if their numbers, say, 100, means '100 seconds' or '100 milliseconds'. However instead of guessing you just can write suffixed value and it will be fully determined by it's suffix. Time values take suffix `us` for useconds (microseconds), `ms` for milliseconds, `s` for seconds, `m` for minutes, `h` for hours, `d` for days and `w` for weeks.
-
--## index_converter
-+# index_converter 1 "May 2021" manticoresearch-converter
-
--`index_converter` is a tool for converting indexes created with Sphinx/Manticore Search 2.x to Manticore Search 3.x index format. The tool can be used in several different ways:
-+## NAME
-+index_converter - tool for converting indexes created with Sphinx/Manticore Search 2.x to Manticore Search 3.x index format.
-+
-+## DESCRIPTION
-
- #### Convert one index at a time
-
-@@ -104,20 +108,20 @@ $ index_converter --config /home/myuser/manticore.conf --all --output-dir /new/p
-
- #### Convert kill lists
-
--A special case is for indexes containing kill-lists. As the behaviour of how kill-lists works has changed (see [killlist_target](../Creating_an_index/Local_indexes/Plain_and_real-time_index_settings.md#killlist_target)), the delta index should know which are the target indexes for applying the kill-lists. There are 3 ways to have a converted index ready for setting targeted indexes for applying kill-lists:
-+A special case is for indexes containing kill-lists. As the behaviour of how kill-lists works has changed, the delta index should know which are the target indexes for applying the kill-lists. There are 3 ways to have a converted index ready for setting targeted indexes for applying kill-lists:
-
- * Use `-–killlist-target` when converting an index
-- ```ini
-- $ index_converter --config /home/myuser/manticore.conf --index deltaindex --killlist-target mainindex:kl
-- ```
-+
-+```ini
-+$ index_converter --config /home/myuser/manticore.conf --index deltaindex --killlist-target mainindex:kl
-+```
-+
- * Add killlist_target in the configuration before doing the conversion
- * use [ALTER ... KILLIST_TARGET](../Adding_data_from_external_storages/Adding_data_from_indexes/Killlist_in_plain_indexes.md#killlist_target) command after conversion
-
--#### Complete list of index_converter options
--
--Here's the complete list of `index_converter` options:
-+## OPTIONS
-
--* `--config <file>` (`-c <file>` for short) tells index_converter to use the given file as its configuration. Normally, it will look for manticore.conf in the installation directory (e.g. `/usr/local/manticore/etc/manticore.conf` if installed into `/usr/local/sphinx`), followed by the current directory you are in when calling index_converter from the shell.
-+* `--config <file>` (`-c <file>` for short) tells index_converter to use the given file as its configuration. Normally, it will look for manticore.conf in the installation directory (e.g. `/etc/manticoresearch/manticore.conf`), followed by the current directory you are in when calling index_converter from the shell.
- * `--index` specifies which index should be converted
- * `--path` - instead of using a config file, a path containing index(es) can be used
- * `--strip-path` - strips path from filenames referenced by index: stopwords, exceptions and wordforms
-diff --git a/manual/Miscellaneous_tools.md b/manual/Miscellaneous_tools.md
-index 99fcd442..1ee9cb58 100755
---- a/manual/Miscellaneous_tools.md
-+++ b/manual/Miscellaneous_tools.md
-@@ -1,14 +1,15 @@
--# Miscellaneous tools
-+# indextool 1 "February 2021" manticoresearch-tools
-
--## indextool
-+## NAME
-+indextool - helper tool used to dump miscellaneous information about a physical index.
-
--`indextool` is a helper tool used to dump miscellaneous information about a physical index. The general usage is:
-+## SYNOPSIS
-
- ```sql
- indextool <command> [options]
- ```
-
--Options effective for all commands:
-+## OPTIONS
-
- * `--config <file>` (`-c <file>` for short) overrides the built-in config file names.
- * `--quiet` (`-q` for short) keep indextool quiet - it will not output banner, etc.
-@@ -37,16 +38,19 @@ The commands are as follows:
- * `--rotate` works only with `--check` and defines whether to check index waiting for rotation, i.e. with .new extension. This is useful when you want to check your index before actually using it.
- * `--apply-killlists` loads and applies kill-lists for all indexes listed in the config file. Changes are saved in .SPM files. Kill-list files (.SPK) are deleted. This can be useful if you want to move applying indexes from server startup to indexing stage.
-
--## spelldump
-+# spelldump 1 "February 2021" manticoresearch-tools
-
--`spelldump` is used to extract contents of a dictionary file that uses `ispell` or `MySpell` format, which can help build word lists for *wordforms* - all of the possible forms are pre-built for you.
-+## NAME
-+spelldump - extract contents of a dictionary file that uses `ispell` or `MySpell` format, which can help build word lists for *wordforms* - all of the possible forms are pre-built for you.
-
--The general usage is:
-+## SYNOPSIS
-
- ```bash
- spelldump [options] <dictionary> <affix> [result] [locale-name]
- ```
-
-+## DESCRIPTION
-+
- The two main parameters are the dictionary's main file and its affix file; usually these are named as `[language-prefix].dict` and `[language-prefix].aff` and will be available with most common Linux distributions, as well as various places online.
-
- `[result]` specifies where the dictionary data should be output to, and `[locale-name]` additionally specifies the locale details you wish to use.
-@@ -69,7 +73,9 @@ zoned > zoned
- zoning > zoning
- ```
-
--## wordbreaker
-+# wordbreaker 1 "February 2021" manticoresearch-tools
-+
-+## DESCRIPTION
-
- `wordbreaker` is used to split compound words, as usual in URLs, into its component words. For example, this tool can split "lordoftherings" into its four component words, or `http://manofsteel.warnerbros.com` into "man of steel warner bros". This helps searching, without requiring prefixes or infixes: searching for "sphinx" wouldn't match "sphinxsearch" but if you break the compound word and index the separate components, you'll get a match without the costs of prefix and infix larger index files.
-
-diff --git a/manual/Starting_the_server/Manually.md b/manual/Starting_the_server/Manually.md
-index aa5c337a..4c1ba572 100755
---- a/manual/Starting_the_server/Manually.md
-+++ b/manual/Starting_the_server/Manually.md
-@@ -1,15 +1,6 @@
--# Starting Manticore manually
--
--You can also start Manticore Search by calling `searchd` (Manticore Search server binary) directly:
--
--```shell
--searchd [OPTIONS]
--```
--
--Note that without setting a path to the configuration file `searchd` will try to find it in several locations, depending on the operation system.
--
--## searchd command line options
-+# searchd 1 "September 2021" manticoresearch
-
-+## OPTIONS
-
- The options available to `searchd` in all operation systems are:
-
-@@ -36,32 +27,44 @@ Possible exit codes are as follows:
- * 3 if server crashed during shutdown
-
- * `--status` command is used to query running `searchd` instance status using the connection details from the (optionally) provided configuration file. It will try to connect to running instance using the first found UNIX socket or TCP port from the configuration file. On success it will query for a number of status and performance counter values and print them. You can also use [SHOW STATUS](../Profiling_and_monitoring/Node_status.md#SHOW-STATUS) command to access the very same counters via SQL protocol. Examples:
-+
- ```bash
- $ searchd --status
- $ searchd --config /etc/manticoresearch/manticore.conf --status
- ```
-+
- * `--pidfile` is used to explicitly force using a PID file (where the `searchd` process identification number is stored) despite any other debugging options that say otherwise (for instance, `--console`). This is a debugging option.
-+
- ```bash
- $ searchd --console --pidfile
- ```
-+
- * `--console` is used to force `searchd` into console mode; typically Manticore runs as a conventional server application and logs information into log files (as specified in configuration file). Sometimes though, when debugging issues in the configuration or the server itself or trying to diagnose hard-to-track-down problems it may be easier to force it to dump information directly to the console/command line from which it is being called. Running in console mode also means that the process will not be forked (so searches are done in sequence) and logs will not be written to. (It should be noted that console mode is not the intended method for running `searchd`.) You can invoke so:
-+
- ```bash
- $ searchd --config /etc/manticoresearch/manticore.conf --console
- ```
-+
- * `--logdebug`, `--logreplication`, `--logdebugv`, and `--logdebugvv` options enable additional debug output in the server log. They differ by the logging verboseness level. These are debugging options, they pollute the log a lot, and thus they should *not* be normally enabled. (The normal use case for these is to enable them temporarily on request, to assist with some particularly complicated debugging session.)
- * `--iostats` is used in conjunction with the logging options (the `query_log` will need to have been activated in `manticore.conf`) to provide more detailed information on a per-query basis as to the input/output operations carried out in the course of that query, with a slight performance hit and a little bit bigger logs. The IO statistics don't include information about IO operations for attributes, as these are loaded with mmap. To enable it you can start `searchd` so:
-+
- ```bash
- $ searchd --config /etc/manticoresearch/manticore.conf --iostats
- ```
-+
- * `--cpustats` is used to provide actual CPU time report (in addition to wall time) in both query log file (for every given query) and status report (aggregated). It depends on `clock_gettime()` Linux system call or falls back to less precise call on certain systems. You might start `searchd` thus:
-+
- ```bash
- $ searchd --config /etc/manticoresearch/manticore.conf --cpustats
- ```
-+
- * `--port portnumber` (`-p` for short) is used to specify the port that Manticore should listen on to accept binary protocol requests, usually for debugging purposes. This will usually default to 9312, but sometimes you need to run it on a different port. Specifying it on the command line will override anything specified in the configuration file. The valid range is 0 to 65535, but ports numbered 1024 and below usually require a privileged account in order to run.
- An example of usage:
-- ```bash
-- $ searchd --port 9313
-- ```
-+
-+```bash
-+$ searchd --port 9313
-+```
-+
- * `--listen ( address ":" port | port | path ) [ ":" protocol ]` (or `-l` for short) Works as `--port`, but allow you to specify not only the port, but full path, as IP address and port, or Unix-domain socket path, that `searchd` will listen on. In other words, you can specify either an IP address (or hostname) and port number or just a port number or Unix socket path. If you specify port number, but not the address searchd will listen on all network interfaces. Unix path is identified by a leading slash. As the last param you can also specify a protocol handler (listener) to be used for connections on this socket. Supported protocol values are 'sphinx' and 'mysql' (MySQL protocol used since 4.1).
- * `--force-preread` forbids the server to serve any incoming connection until prereading of index files completes. By default, at startup the server accepts connections while index files are lazy loaded into memory. This opens extends the behavior and makes it wait until the files are loaded.
- * `--index <index>` (or `-i <index>` for short) forces this instance of `searchd` to only serve the specified index. Like `--port`, above, this is usually for debugging purposes; more long-term changes would generally be applied to the configuration file itself.
-@@ -72,41 +75,19 @@ $ searchd --config /etc/manticoresearch/manticore.conf --cpustats
- * `ignore-trx-errors`, ignore any transaction errors and skip current binlog file (the default behavior is to exit with an error).
- * `ignore-all-errors`, ignore any errors described above (the default behavior is to exit with an error).
- Example:
-- ```bash
-- $ searchd --replay-flags=accept-desc-timestamp
-- ```
--* `--coredump` is used to enable saving a core file or a minidump of the server on crash. Disabled by default to speed up of server restart on crash. This is useful for debugging purposes.
-+
- ```bash
--$ searchd --config /etc/manticoresearch/manticore.conf --coredump
-+$ searchd --replay-flags=accept-desc-timestamp
- ```
--* `--new-cluster` bootstraps a replication cluster and makes the server a reference node with [cluster restart](../Creating_a_cluster/Setting_up_replication/Restarting_a_cluster.md) protection. On Linux you can also run `manticore_new_cluster`. It will start Manticore in `--new-cluster` mode via systemd.
--* `--new-cluster-force` bootstraps a replication cluster and makes the server a reference node bypassing [cluster restart](../Creating_a_cluster/Setting_up_replication/Restarting_a_cluster.md) protection. On Linux you can also run `manticore_new_cluster --force`. It will start Manticore in `--new-cluster-force` mode via systemd.
-
--There are some options for `searchd` that are specific to Windows platforms, concerning handling as a service, and are only available in Windows binaries.
-+* `--coredump` is used to enable saving a core file or a minidump of the server on crash. Disabled by default to speed up of server restart on crash. This is useful for debugging purposes.
-
--Note that in Windows searchd will default to `--console` mode, unless you install it as a service.
--* `--install` installs `searchd` as a service into the Microsoft Management Console (Control Panel / Administrative Tools / Services). Any other parameters specified on the command line, where `--install` is specified will also become part of the command line on future starts of the service. For example, as a part of calling `searchd`, you will likely also need to specify the configuration file with `--config`, and you would do that as well as specifying `--install`. Once called, the usual start/stop facilities will become available via the management console, so any methods you could use for starting, stopping and restarting services would also apply to `searchd`. Example:
--```bat
--C:\WINDOWS\system32> C:\Manticore\bin\searchd.exe --install
-- --config C:\Manticore\manticore.conf
-+```bash
-+$ searchd --config /etc/manticoresearch/manticore.conf --coredump
- ```
-
--If you want to have the I/O stats every time you start `searchd`, you need to specify its option on the same line as the `--install` command thus:
--
--```bat
--C:\WINDOWS\system32> C:\Manticore\bin\searchd.exe --install
-- --config C:\Manticore\manticore.conf --iostats
--```
--* `--delete` removes the service from the Microsoft Management Console and other places where services are registered, after previously installed with `--install`. Note, this does not uninstall the software or delete the indexes. It means the service will not be called from the services systems, and will not be started on the machine's next start. If currently running as a service, the current instance will not be terminated (until the next reboot, or until `searchd` is called with `--stop`). If the service was installed with a custom name (with `--servicename`), the same name will need to be specified with `--servicename` when calling to uninstall. Example:
--```bat
--C:\WINDOWS\system32> C:\Manticore\bin\searchd.exe --delete
--```
--* `--servicename <name>` applies the given name to `searchd` when installing or deleting the service, as would appear in the Management Console; this will default to searchd, but if being deployed on servers where multiple administrators may log into the system, or a system with multiple `searchd` instances, a more descriptive name may be applicable. Note that unless combined with `--install` or `--delete`, this option does not do anything. Example:
--```bat
--C:\WINDOWS\system32> C:\Manticore\bin\searchd.exe --install
-- --config C:\Manticore\manticore.conf --servicename ManticoreSearch
--```
--* `--ntservice` is the option that is passed by the Management Console to `searchd` to invoke it as a service on Windows platforms. It would not normally be necessary to call this directly; this would normally be called by Windows when the service would be started, although if you wanted to call this as a regular service from the command-line (as the complement to `--console`) you could do so in theory.
-+* `--new-cluster` bootstraps a replication cluster and makes the server a reference node with [cluster restart](../Creating_a_cluster/Setting_up_replication/Restarting_a_cluster.md) protection. On Linux you can also run `manticore_new_cluster`. It will start Manticore in `--new-cluster` mode via systemd.
-+* `--new-cluster-force` bootstraps a replication cluster and makes the server a reference node bypassing [cluster restart](../Creating_a_cluster/Setting_up_replication/Restarting_a_cluster.md) protection. On Linux you can also run `manticore_new_cluster --force`. It will start Manticore in `--new-cluster-force` mode via systemd.
- * `--safetrace` forces `searchd` to only use system backtrace() call in crash reports. In certain (rare) scenarios, this might be a "safer" way to get that report. This is a debugging option.
- * `--nodetach` switch (Linux only) tells `searchd` not to detach into background. This will also cause log entry to be printed out to console. Query processing operates as usual. This is a debugging option and might also be useful when you run Manticore in a docker container to capture its output.
-
---
-2.34.1
-
diff --git a/testing/manticoresearch/APKBUILD b/testing/manticoresearch/APKBUILD
deleted file mode 100644
index 4517869a2f5..00000000000
--- a/testing/manticoresearch/APKBUILD
+++ /dev/null
@@ -1,128 +0,0 @@
-# Contributor: Zach DeCook <zachdecook@librem.one>
-# Maintainer: Zach DeCook <zachdecook@librem.one>
-pkgname=manticoresearch
-pkgver=5.0.0
-pkgrel=0
-pkgdesc="Easy to use open source fast database for search"
-url="https://manticoresearch.com/"
-# 32-bit systems fail to build, tests fail on s390x, ppc64le doc fail.
-arch="all !ppc64le !s390x !x86 !armhf !armv7"
-license="GPL-2.0-only"
-install="$pkgname.pre-install"
-source="$pkgname-$pkgver.tar.gz::https://github.com/manticoresoftware/manticoresearch/archive/refs/tags/$pkgver.tar.gz
- $pkgname.initd
- $pkgname.pre-install
- 0001-Documentation-Create-go-md2man-pages-for-indexer.1-i.patch
- "
-makedepends="
- bison
- boost-dev
- boost1.77-static
- cmake
- expat-dev
- flex
- go-md2man
- gtest
- icu-dev
- libpq-dev
- libstemmer-dev
- mariadb-connector-c-dev
- re2-dev
- samurai
- unixodbc-dev
- "
-checkdepends="php8"
-pkgusers="manticore"
-pkggroups="manticore"
-subpackages="
- $pkgname-converter
- $pkgname-dev
- $pkgname-doc
- $pkgname-icudata
- $pkgname-openrc
- $pkgname-stopwords
- $pkgname-tools
- "
-
-[ "$CARCH" = "riscv64" ] && options="$options textrels"
-
-build() {
- cmake -B build -G Ninja \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_SYSCONFDIR=/etc \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DCMAKE_INSTALL_LOCALSTATEDIR=/var \
- -DCMAKE_INSTALL_FULL_LOCALSTATEDIR=/var \
- -DCMAKE_BUILD_TYPE=Release \
- -DWITH_GALERA=0
- cmake --build build
-}
-
-check() {
- cd build
- CTEST_OUTPUT_ON_FAILURE=TRUE ctest
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
- install -Dm755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
- # User/Group created by pre-install hook.
- chown -R $pkgusers:$pkggroups "$pkgdir"/var/lib/manticore
- chown -R $pkgusers:$pkggroups "$pkgdir"/var/log/manticore
- chown -R $pkgusers:$pkggroups "$pkgdir"/var/run/manticore
-}
-
-_md_cleanup() {
- # Remove HTML comments and markdown links.
- sed 's/<!--.\+\?-->//g' | sed 's/\[\([^]]*\)\]([^)]*)/\1/g'
-}
-
-doc() {
- cd "$builddir/manual/"
- mkdir -p man
- # Documents manually patched to contain man pages.
- cat Starting_the_server/Manually.md \
- Miscellaneous_tools.md \
- Installation/Migration_from_Sphinx.md \
- Adding_data_from_external_storages/Plain_indexes_creation.md \
- | awk 'BEGIN{of="/dev/null"} /^# [a-z-]* [1457]/{of="man/"$2"."$3".md"} (1){print $0 > of}'
-
- mkdir -p "$subpkgdir"/usr/share/man/man1 "$subpkgdir"/usr/share/man/man5
- for i in man/*.1.md man/*.5.md; do
- local name="$(echo "$i" | cut -d/ -f2)"
- local num="$(echo "$name" | cut -d. -f2)"
- _md_cleanup < "$i" | go-md2man > "$subpkgdir/usr/share/man/man$num/$name"
- done
-
- # Let default_doc compress man files.
- default_doc
-}
-
-converter() {
- pkgdesc="Update Sphinx/Manticore 2.X indexes to new format for Manticore Search"
- amove usr/bin/index_converter
-}
-
-tools() {
- pkgdesc="indexer, index-tool, and miscellaneous tools for Manticore Search"
- mkdir -p "$subpkgdir/usr/bin"
- amove usr/bin/indexer \
- usr/bin/indextool \
- usr/bin/spelldump \
- usr/bin/wordbreaker
-}
-
-icudata() {
- pkgdesc="$pkgdesc (icudata)"
- amove usr/share/manticore/icu
-}
-
-stopwords() {
- pkgdesc="$pkgdesc (stopwords)"
- amove usr/share/manticore/stopwords
-}
-
-sha512sums="98e082f395689d0543bb7c4ea65ef12a5b72a00c651d223abe7f1afc5e38c5b994120edffefb5b71473a100e9188116d27c3ead73419852a154cf31b629dfe4e manticoresearch-5.0.0.tar.gz
-d7aec4e7cd4eebaae190083e79bd20c3cc486aaba7557eb846bf9383a21eb6f8d9c30923b187c8ec4062ee5299a432ccc3839e6ed1402e3adc13588cb6525ce9 manticoresearch.initd
-6eac1cc4bfe7afc78826650ce768d35a8aa8d0585ef738207eb40fae746461b087c12fa6629c9d185845755322838b35ab0303002fc3aa6018310157e15afc50 manticoresearch.pre-install
-f60fd6fc30ad5752a3618ba29db29bcf20516a622ae0e27bfa07a317e8fe2c45218580183cdff646622db0b77010cf4a658ba3e2a648862abf519efde5a61c67 0001-Documentation-Create-go-md2man-pages-for-indexer.1-i.patch"
diff --git a/testing/mapnik/APKBUILD b/testing/mapnik/APKBUILD
index 5241110b3b5..f86a372eedf 100644
--- a/testing/mapnik/APKBUILD
+++ b/testing/mapnik/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Markus Juenemann <markus@juenemann.net>
pkgname=mapnik
pkgver=3.1.0
-pkgrel=13
+pkgrel=25
pkgdesc="An open source toolkit for developing mapping applications"
url="https://mapnik.org/"
arch="all"
@@ -19,20 +19,21 @@ makedepends="
libwebp-dev
libxml2-dev
proj-dev
- proj-dev
py3-setuptools
python3
sqlite-dev
- scons
+ scons
tiff-dev
zlib-dev
"
subpackages="$pkgname-dev $pkgname-doc"
source="https://github.com/mapnik/mapnik/releases/download/v$pkgver/mapnik-v$pkgver.tar.bz2
boost-1.77.patch
- scons4.patch
+ gcc13.patch
+ scons4.patch
"
builddir="$srcdir/$pkgname-v$pkgver"
+options="!check" # fail to build
build() {
scons configure FAST=True \
@@ -40,6 +41,7 @@ build() {
INPUT_PLUGINS=all \
XMLPARSER=libxml2 \
DESTDIR="$pkgdir" \
+ CPP_TESTS="$(want_check && echo True || echo False)" \
CUSTOM_CXXFLAGS="$CXXFLAGS" \
CUSTOM_LDFLAGS="$LDFLAGS" \
CUSTOM_DEFINES="-DACCEPT_USE_OF_DEPRECATED_PROJ_API_H=1"
@@ -71,5 +73,6 @@ doc() {
sha512sums="
089e619f4672e017b1aaf31836ade7e22d2a465f5a923f697935d8447d5dd0c2acb9ae6682d1c9035e58036c62685c2f38f75f0a106ee9b4ce6197e0357c47eb mapnik-v3.1.0.tar.bz2
b5961faf1bf903fca0d92408f4b9a783e61b5c06e89c9318aa7f59c6ca98be922504909ae7cf59dd09e953378952f7af3335f3f71cb1ff9f5a8a8c8f7c729f6d boost-1.77.patch
+b9de94825d5c9934adcfd451b1fada42d17d9b79345649c19d9d1b3db333309086b7de711e9fb44038a3ba992c27d520f6a5a66f656c267f9e8d286ad2bec920 gcc13.patch
e0c60c696b9d195ad0e430c8c4fb9c36465d9635fae3e4a8b25dca4b421d90330994285c92dfcefe929a196ff87345da278a564d8fa9f3ac29a46d9e2dfa3110 scons4.patch
"
diff --git a/testing/mapnik/gcc13.patch b/testing/mapnik/gcc13.patch
new file mode 100644
index 00000000000..e68020675f8
--- /dev/null
+++ b/testing/mapnik/gcc13.patch
@@ -0,0 +1,12 @@
+diff --git a/include/mapnik/wkb.hpp b/include/mapnik/wkb.hpp
+index fc32a9f..482496a 100644
+--- a/include/mapnik/wkb.hpp
++++ b/include/mapnik/wkb.hpp
+@@ -27,6 +27,7 @@
+ #include <mapnik/config.hpp>
+ #include <mapnik/geometry.hpp>
+ #include <mapnik/util/noncopyable.hpp>
++#include <cstdint>
+
+ namespace mapnik
+ {
diff --git a/testing/mapserver/10-musl.patch b/testing/mapserver/10-musl.patch
index d9c4c4d9c38..4b08dd10493 100644
--- a/testing/mapserver/10-musl.patch
+++ b/testing/mapserver/10-musl.patch
@@ -2,13 +2,32 @@ Author: Holger Jaekel <holger.jaekel@gmx.de>
Summary: Fixes compilation with musl libc, define PATH_MAX
----
+--- a/mapflatgeobuf.c
++++ b/mapflatgeobuf.c
+@@ -29,9 +29,9 @@
+
+ #define NEED_IGNORE_RET_VAL
+
++#include "mapserver.h"
+ #include <limits.h>
+ #include <assert.h>
+-#include "mapserver.h"
+ #include "mapows.h"
+
+ #include "flatgeobuf/flatgeobuf_c.h"
+
+
--- a/mapshape.c
+++ b/mapshape.c
-@@ -34,6 +34,7 @@
- * DEALINGS IN THE SOFTWARE.
- ****************************************************************************/
+@@ -36,10 +36,10 @@
-+#define _GNU_SOURCE
+ #define NEED_IGNORE_RET_VAL
+
++#include "mapserver.h"
#include <limits.h>
#include <assert.h>
- #include "mapserver.h"
+ #include <stdbool.h>
+-#include "mapserver.h"
+ #include "mapows.h"
+
+ #include <cpl_conv.h>
diff --git a/testing/mapserver/APKBUILD b/testing/mapserver/APKBUILD
index 01f5f82e908..70ad25fd488 100644
--- a/testing/mapserver/APKBUILD
+++ b/testing/mapserver/APKBUILD
@@ -1,47 +1,48 @@
# Contributor: Bjoern Schilberg <bjoern@intevation.de>
# Maintainer: Bjoern Schilberg <bjoern@intevation.de>
pkgname=mapserver
-pkgver=7.6.4
-pkgrel=3
+pkgver=8.0.1
+pkgrel=2
pkgdesc="CGI-based platform for publishing spatial data and interactive mapping applications to the web"
url="https://mapserver.org/"
-# riscv64, s390x blocked by rust -> librsvg
-arch="all !riscv64 !s390x"
+# s390x: blocked by exempi-dev
+arch="all !s390x"
license="MIT"
depends_dev="
- cmake
- libpq-dev
- geos-dev
+ cairo-dev
+ curl-dev
+ exempi-dev
+ fcgi-dev
+ freetype-dev
+ fribidi-dev
gdal-dev
- jpeg-dev
+ geos-dev
giflib-dev
+ harfbuzz-dev
+ jpeg-dev
+ libpq-dev
+ librsvg-dev
libxml2-dev
+ pixman-dev
proj-dev
- fcgi-dev
- curl-dev
- freetype-dev
- cairo-dev
protobuf-c-dev
- harfbuzz-dev
- fribidi-dev
- exempi-dev
- pixman-dev
- librsvg-dev
"
makedepends="
$depends_dev
+ cmake
+ samurai
"
subpackages="
$pkgname-dev
"
source="
- https://download.osgeo.org/mapserver/$pkgname-$pkgver.tar.gz
+ https://download.osgeo.org/mapserver/mapserver-$pkgver.tar.gz
10-musl.patch
"
build() {
- mkdir build; cd build
- cmake .. \
+ CXXFLAGS="$CXXFLAGS -D_GNU_SOURCE" \
+ cmake -B build -G Ninja \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_BUILD_TYPE=None \
-DWITH_GEOS=ON \
@@ -64,16 +65,17 @@ build() {
-DWITH_EXEMPI=ON \
-DWITH_PROTOBUFC=ON \
-DWITH_PIXMAN=ON
- make
+ cmake --build build
}
package() {
- make -C build DESTDIR="$pkgdir" install
+ DESTDIR="$pkgdir" cmake --install build
+ # shellcheck disable=2115
rm -rf "$pkgdir"/usr/share/
chmod -x "$pkgdir"/usr/include/mapserver/*.h
}
sha512sums="
-ccca87b650df3c1784ba82ca4a58960585d72fb4004fcea43c0dcabf03b9617ba51870bc63dbb2238a7eeb8d4337b6ff152587150912a74eeaf4a3e3d2d584ce mapserver-7.6.4.tar.gz
-52a6d6ce210f49a62dabbef712387ef1e42f3cdaf77f7248c64665fcf1a2af6b5fe116b6cecf5c95ecdb3014d353601db0dd7b715f8560ed77cd007025e17e6a 10-musl.patch
+dae14a7eb6b09f5461c19bff83ca8ed6c21ae84d451b2c854794efb25b144b7edbf2a33479dc53e78aa646e5196e81219b4a1f393ff824db4508204a2d0301d1 mapserver-8.0.1.tar.gz
+12743afabee45bc77788b699cfc8ac50cf11629e0041b7b9aac3ba1c966d14fa0280044b72ac1b7520e99124d9b4627a6b5d005a486ae9ad03bc86b0775ad547 10-musl.patch
"
diff --git a/testing/mariadb-connector-odbc/APKBUILD b/testing/mariadb-connector-odbc/APKBUILD
deleted file mode 100644
index 50aa9fe03e1..00000000000
--- a/testing/mariadb-connector-odbc/APKBUILD
+++ /dev/null
@@ -1,39 +0,0 @@
-# Contributor: Joe Searle <joe@jsearle.net>
-# Maintainer: Joe Searle <joe@jsearle.net>
-pkgname=mariadb-connector-odbc
-pkgver=3.1.14
-pkgrel=0
-pkgdesc="MariaDB Connector/ODBC database driver"
-url="https://github.com/MariaDB/mariadb-connector-odbc"
-arch="all"
-license="LGPL-2.1-only"
-options="!check" # 'test' directory not included in releases
-makedepends="cmake unixodbc-dev mariadb-connector-c-dev mariadb-static"
-source="$pkgname-$pkgver.tar.gz::https://github.com/MariaDB/mariadb-connector-odbc/archive/$pkgver.tar.gz"
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- # Link to /usr/include/mysql necessary when using system installed mariadb-connector-c
- CFLAGS="$CFLAGS -I/usr/include/mysql" \
- cmake -B build \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DBUILD_SHARED_LIBS=True \
- -DCMAKE_BUILD_TYPE=None \
- -DUSE_SYSTEM_INSTALLED_LIB=True \
- -DWITH_SSL=OPENSSL \
- $CMAKE_CROSSOPTS .
- make -C build
-}
-
-package() {
- make -C build DESTDIR="$pkgdir" install
-
- # Remove license files
- rm -rf "$pkgdir"/usr/docs
-}
-
-sha512sums="
-8b45f38e6b6a78ee2c68f09917cbf23fd11b0f452d8920fbe8fdbe31b1126f8584188895b19c978bc0e6a7030e02b1b04c2e2238ed70684aee9ef72ed3baa932 mariadb-connector-odbc-3.1.14.tar.gz
-"
diff --git a/testing/marknote/APKBUILD b/testing/marknote/APKBUILD
new file mode 100644
index 00000000000..797fa3e02bb
--- /dev/null
+++ b/testing/marknote/APKBUILD
@@ -0,0 +1,55 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: team/kde <bribbers@disroot.org>
+
+# The group tag is just to easily find this APKBUILD by some scripts for automation
+# group=kde-other
+pkgname=marknote
+pkgver=1.1.1
+pkgrel=0
+pkgdesc="A simple markdown note management app"
+# armhf blocked by extra-cmake-modules
+arch="all !armhf"
+url="https://apps.kde.org/marknote/"
+license="GPL-3.0-or-later AND CC0-1.0"
+depends="
+ kirigami
+ kirigami-addons
+ "
+makedepends="
+ extra-cmake-modules
+ kcolorscheme-dev
+ kconfig-dev
+ kcoreaddons-dev
+ ki18n-dev
+ kirigami-addons-dev
+ kirigami-dev
+ kxmlgui-dev
+ qt6-qtbase-dev
+ qt6-qtdeclarative-dev
+ qt6-qtsvg-dev
+ samurai
+ "
+subpackages="$pkgname-lang"
+_repo_url="https://invent.kde.org/office/marknote.git"
+source="https://download.kde.org/stable/marknote/marknote-$pkgver.tar.xz"
+options="!check" # No tests
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=RelWithDebInfo \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+b5664ae77d64e53f2eb773a3bca88709995ee2fc743490a2cc45bc15affb30a866cf970f5c766c4c8a4f0da8c93cce97c5ef2c21776d2977acd3c3344bda3a6b marknote-1.1.1.tar.xz
+"
diff --git a/testing/marxan/APKBUILD b/testing/marxan/APKBUILD
index 6878acfaef9..87daf7260ec 100644
--- a/testing/marxan/APKBUILD
+++ b/testing/marxan/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: andrea rota <andrea.rota@vizzuality.com>
pkgname=marxan
pkgver=4.0.7
-pkgrel=0
+pkgrel=1
pkgdesc="Systematic reserve design for conservation planning"
url="https://marxansolutions.org/"
license="MIT"
diff --git a/testing/masky/APKBUILD b/testing/masky/APKBUILD
new file mode 100644
index 00000000000..8d4b017258f
--- /dev/null
+++ b/testing/masky/APKBUILD
@@ -0,0 +1,40 @@
+# Contributor: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
+# Maintainer: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
+pkgname=masky
+pkgver=0.2.0
+pkgrel=1
+pkgdesc="Python library with CLI allowing to remotely dump domain user credentials via an ADCS"
+url="https://github.com/Z4kSec/Masky"
+arch="noarch"
+license="MIT"
+depends="
+ py3-asn1
+ py3-asn1crypto
+ py3-colorama
+ py3-cryptography
+ py3-impacket
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/Z4kSec/Masky/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/Masky-$pkgver"
+options="!check" # no tests provided
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+1de63dd2d01af8bb9762aadd5bf215cf87bc45edee91e2a99534d234344e849050476a1fbe61caf7786ceb5b2b7e040f8b9f3cd1d9416193f7b022ac856bb013 masky-0.2.0.tar.gz
+"
diff --git a/testing/mat2/APKBUILD b/testing/mat2/APKBUILD
index acac71095dd..d733ca470c8 100644
--- a/testing/mat2/APKBUILD
+++ b/testing/mat2/APKBUILD
@@ -1,8 +1,8 @@
# Maintainer: Waweic <waweic@activ.ism.rocks>
# Contributor: Waweic <waweic@activ.ism.rocks>
pkgname=mat2
-pkgver=0.12.4
-pkgrel=0
+pkgver=0.13.4
+pkgrel=1
pkgdesc="Metadata removal tool, supporting a wide range of commonly used file formats"
url="https://0xacab.org/jvoisin/mat2"
arch="noarch !s390x !riscv64" #librsvg missing for s390x and riscv64
@@ -20,8 +20,18 @@ depends="
"
makedepends="py3-setuptools"
checkdepends="ffmpeg"
-source="https://0xacab.org/jvoisin/mat2/-/archive/$pkgver/mat2-$pkgver.tar.gz"
-subpackages="$pkgname-doc"
+source="https://0xacab.org/jvoisin/mat2/-/archive/$pkgver/mat2-$pkgver.tar.gz
+ manpage-dir.patch
+ "
+subpackages="$pkgname-doc $pkgname-pyc"
+
+prepare() {
+ default_prepare
+
+ # doesn't contain a version in [project], so it's invalid to parse from a
+ # builder, # but we can ignore all that as all the logic is in setup.*
+ rm -fv pyproject.toml
+}
build() {
python3 setup.py build
@@ -33,10 +43,10 @@ check() {
package() {
python3 setup.py install --skip-build --prefix=/usr --root="$pkgdir"
- install -Dm 644 doc/mat2.1 -t "$pkgdir/usr/share/man/man1"
install -Dm 644 doc/*.md -t "$pkgdir/usr/share/doc/$pkgname"
}
sha512sums="
-20936c80d0fa31dae9ee14c3d853c0e63a87b2d3ad5838a17bdbbc3e7cb4cf73462c9a9573d2aeab6e4ab0d6c18ce24c63a80e1a7cd044724c8ecc639d13da80 mat2-0.12.4.tar.gz
+75c08c9c52a82f9983e799c2aeef0da8324d1c92ac32fb748a68063ec7b28569692082aceacf7161d24db0e8a988357c423b6e17ca5c0f934309c9791c41ab18 mat2-0.13.4.tar.gz
+2bf84ae9fab848fea43c87b708937628c2d5e74cb4f0457ef259356c651056eea1a0d033d606fc5511f195cbb5a097c21e631a9a4973431c8f3242a1969d9123 manpage-dir.patch
"
diff --git a/testing/mat2/manpage-dir.patch b/testing/mat2/manpage-dir.patch
new file mode 100644
index 00000000000..e66f5202375
--- /dev/null
+++ b/testing/mat2/manpage-dir.patch
@@ -0,0 +1,13 @@
+diff --git a/setup.py b/setup.py
+index 356ca4b..bbdf1d9 100644
+--- a/setup.py
++++ b/setup.py
+@@ -20,7 +20,7 @@ setuptools.setup(
+ 'pycairo',
+ ],
+ packages=setuptools.find_packages(exclude=('tests', )),
+- data_files = [('man/man1', ['doc/mat2.1'])],
++ data_files = [('share/man/man1', ['doc/mat2.1'])],
+ classifiers=[
+ "Development Status :: 3 - Alpha",
+ "Environment :: Console",
diff --git a/testing/materia-gtk-theme/APKBUILD b/testing/materia-gtk-theme/APKBUILD
index 13cfe047962..f6e39890ade 100644
--- a/testing/materia-gtk-theme/APKBUILD
+++ b/testing/materia-gtk-theme/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer:
pkgname=materia-gtk-theme
pkgver=20210322
-pkgrel=0
+pkgrel=1
pkgdesc="Material Design theme for GNOME/GTK desktops"
options="!check" # It is a theme
url="https://github.com/nana-4/materia-theme"
@@ -42,7 +42,7 @@ build() {
abuild-meson \
-Dgnome_shell_version=3.38 \
. output
- meson compile ${JOBS:+-j ${JOBS}} -C output
+ meson compile -C output
}
package() {
@@ -63,7 +63,7 @@ package() {
_dark_compact() {
pkgdesc="Dark compact version of Materia"
- depends="gnome-themes-extra gtk-murrine-engine"
+ depends="gtk-murrine-engine"
amove usr/share/themes/Materia-dark-compact/index.theme
}
@@ -101,7 +101,7 @@ _dark_compact_chromium() {
_dark() {
pkgdesc="Dark version of Materia"
- depends="gnome-themes-extra gtk-murrine-engine"
+ depends="gtk-murrine-engine"
amove usr/share/themes/Materia-dark/index.theme
}
@@ -139,7 +139,7 @@ _dark_chromium() {
_materia() {
pkgdesc="Materia theme"
- depends="gnome-themes-extra gtk-murrine-engine"
+ depends="gtk-murrine-engine"
amove usr/share/themes/Materia/index.theme
}
@@ -177,7 +177,7 @@ _chromium() {
_materia_compact() {
pkgdesc="Compact Materia theme"
- depends="gnome-themes-extra gtk-murrine-engine"
+ depends="gtk-murrine-engine"
amove usr/share/themes/Materia-compact/index.theme
}
diff --git a/testing/materia-kde/APKBUILD b/testing/materia-kde/APKBUILD
index fa290508d5c..d75e83ca1bf 100644
--- a/testing/materia-kde/APKBUILD
+++ b/testing/materia-kde/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Leo <thinkabit.ukim@gmail.com>
# Maintainer:
pkgname=materia-kde
-pkgver=20220207
+pkgver=20220823
pkgrel=0
pkgdesc="Materia theme from GNOME for KDE Plasma 5"
options="!check" # It is a theme
@@ -130,5 +130,5 @@ _light_compact_kvantum() {
}
sha512sums="
-6becaf71a6b574885d307152c6b9de2ab743b54a40559836f52f5c97d64748bb4c02f5dee7562702a2dc99aa73cabca1d985c650ba321477ffa4b5447238d970 materia-kde-20220207.tar.gz
+22052f581269f78a6d4fcdb3e475f682be625151b698b29273b5c62514d2c70e5aff75d51e514731f5263726e66aa970a788af610e943991aca1d5968ef42775 materia-kde-20220823.tar.gz
"
diff --git a/testing/matrix-synapse-rest-password-provider/APKBUILD b/testing/matrix-synapse-rest-password-provider/APKBUILD
deleted file mode 100644
index 478faa2a68d..00000000000
--- a/testing/matrix-synapse-rest-password-provider/APKBUILD
+++ /dev/null
@@ -1,23 +0,0 @@
-# Contributor: Bart Ribbers <bribbers@disroot.org>
-# Maintainer:
-pkgname=matrix-synapse-rest-password-provider
-pkgver=0.1.3
-pkgrel=3
-pkgdesc="Password Provider for Synapse fetching data from a REST endpoint"
-url="https://github.com/ma1uta/matrix-synapse-rest-password-provider"
-arch="noarch"
-license="AGPL-3.0-or-later"
-depends="python3"
-makedepends="py3-setuptools"
-source="https://github.com/ma1uta/matrix-synapse-rest-password-provider/archive/v$pkgver/matrix-synapse-rest-password-provider-v$pkgver.tar.gz"
-options="!check" # No tests
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="4e897562235531652bf74e05facd0a1ebcc249d0bd8f55932940c7bb9f65d98054fb8c910abbabcc074b421aecb0d6c8bca776003b0f57f1b00bc44f7b47fcf5 matrix-synapse-rest-password-provider-v0.1.3.tar.gz"
diff --git a/testing/mattermost-desktop/APKBUILD b/testing/mattermost-desktop/APKBUILD
new file mode 100644
index 00000000000..47eb9dbaf4f
--- /dev/null
+++ b/testing/mattermost-desktop/APKBUILD
@@ -0,0 +1,80 @@
+# Contributor: lauren n. liberda <lauren@selfisekai.rocks>
+# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
+pkgname=mattermost-desktop
+pkgver=5.7.0
+pkgrel=0
+_pkgver="${pkgver/_rc/-rc.}"
+pkgdesc="Open source collaboration for developers"
+url="https://mattermost.com/"
+arch="aarch64 x86_64" # electron
+license="Apache-2.0"
+depends="electron"
+makedepends="
+ electron-dev
+ electron-tasje
+ nodejs
+ npm
+ python3
+ "
+options="net !check" # broken
+checkdepends="libx11-dev make"
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/mattermost/desktop/archive/refs/tags/v$_pkgver/mattermost-v$_pkgver.tar.gz
+
+ mattermost-desktop
+ "
+builddir="$srcdir/desktop-$_pkgver"
+replaces="mattermost"
+
+prepare() {
+ default_prepare
+
+ git init
+ git config user.email x@x
+ git config user.name x
+ git commit --allow-empty --message "$(date -Is)" --no-gpg-sign
+
+ msg "Downloading dependencies"
+ npm ci --ignore-scripts
+}
+
+build() {
+ msg "Building the app resources"
+ NODE_ENV=production npm run build
+
+ msg "Building native modules"
+ (
+ # it doesn't have an install script with node-gyp and doesn't even have it in deps
+ cd node_modules/macos-notification-state
+ ../.bin/node-gyp rebuild --build-from-source --nodedir=/usr/include/electron/node_headers
+ )
+
+ msg "Removing devDependencies"
+ npm prune --omit=dev
+
+ msg "Packaging the app"
+ tasje --config electron-builder.json pack --additional-asar-unpack '*.node'
+}
+
+check() {
+ export ELECTRON_OVERRIDE_DIST_PATH=/usr/bin/electron
+ npm rebuild robotjs --build-from-source --nodedir=/usr/include/electron/node_headers
+
+ npm run test
+}
+
+package() {
+ install -Dm644 release/resources/app.asar "$pkgdir"/usr/lib/$pkgname/app.asar
+ cp -r release/resources/app.asar.unpacked/ "$pkgdir"/usr/lib/$pkgname/app.asar.unpacked
+ install -Dm644 release/Mattermost.Desktop "$pkgdir"/usr/share/applications/$pkgname.desktop
+ install -Dm755 "$srcdir"/mattermost-desktop "$pkgdir"/usr/bin/mattermost-desktop
+
+ while read -r size; do
+ install -Dm644 release/icons/$size.png "$pkgdir"/usr/share/icons/hicolor/$size/apps/$pkgname.png
+ done < release/icons/size-list
+}
+
+sha512sums="
+b6d0e12e81bc7fa75bba9b4808480db2b64c003e41faf31157612b7f234f76b11334c4fc375adec7b1744358e28e7847e92b78dc26d4e3c10bec860095b15efd mattermost-desktop-5.7.0.tar.gz
+4947e5e7db708f34c812735099c83228b63be7e0f27c19272449c48405a8a49b4f5aa9b45b802c9d6e55a4898ef750d3f9d033e65bb2d0cc906429c5d2864194 mattermost-desktop
+"
diff --git a/testing/mattermost-desktop/mattermost-desktop b/testing/mattermost-desktop/mattermost-desktop
new file mode 100755
index 00000000000..4af404ba534
--- /dev/null
+++ b/testing/mattermost-desktop/mattermost-desktop
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+exec electron /usr/lib/mattermost-desktop/app.asar "$@"
diff --git a/testing/mautrix-discord/APKBUILD b/testing/mautrix-discord/APKBUILD
new file mode 100644
index 00000000000..491c0f2e533
--- /dev/null
+++ b/testing/mautrix-discord/APKBUILD
@@ -0,0 +1,56 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=mautrix-discord
+pkgver=0.6.5
+pkgrel=2
+pkgdesc="Matrix-Discord puppeting bridge"
+url="https://go.mau.fi/mautrix-discord/"
+arch="all"
+license="AGPL-3.0-or-later"
+depends="lottieconverter"
+makedepends="go olm-dev sqlite-dev"
+install="$pkgname.pre-install"
+subpackages="$pkgname-openrc $pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/mautrix/discord/archive/v$pkgver.tar.gz
+ mautrix-discord.initd
+ mautrix-discord.confd
+ default-log-dir.patch
+"
+builddir="$srcdir/discord-$pkgver"
+options="net"
+
+export GOFLAGS="$GOFLAGS -tags=libsqlite3"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ export CGO_CFLAGS="$CFLAGS"
+ export CGO_LDFLAGS="$LDFLAGS"
+ go build
+}
+
+check() {
+ go test -v ./...
+}
+
+package() {
+ install -Dm755 mautrix-discord \
+ -t "$pkgdir"/usr/bin/
+ install -Dm644 example-config.yaml \
+ -t "$pkgdir"/etc/mautrix-discord/
+
+ install -Dm755 "$srcdir"/mautrix-discord.initd \
+ "$pkgdir"/etc/init.d/mautrix-discord
+ install -Dm644 "$srcdir"/mautrix-discord.confd \
+ "$pkgdir"/etc/conf.d/mautrix-discord
+
+ install -Dm 644 LICENSE "$pkgdir"/usr/share/licenses/"$pkgname"/LICENSE
+}
+
+sha512sums="
+b52bc3a963c52970a6af334e985b959efc04e3181cac6d2c1f404b06ee94d19a2ed4a7edfcbe2248eb2ee5196e19f917c9451326593fc5b95724bdc7dd6fd936 mautrix-discord-0.6.5.tar.gz
+772c39fd22eccf4116ebe0b496a055a2807ef3b500a7bbc8838e2fc1fef8b05e20be80b7e7b515304914ca244349093a21cdcf42b2e6dd0bcbd45fef3358fd89 mautrix-discord.initd
+46c472289880a631389dbc7f40062858f7a11e2987f1183cb16d426aa50f57d4b57e4857e4f9852b1c930fc03ccf304bcd27a452681a570e97ec8174808cbf01 mautrix-discord.confd
+f2317ccd91959c2d6b6937ab09bbcb5e2472847c5b880c4a37a4dd96784705a503a5cfcb183017656d716dfceabbc55c33d1083f1cb26c7964bf6dd4dd57f364 default-log-dir.patch
+"
diff --git a/testing/mautrix-discord/default-log-dir.patch b/testing/mautrix-discord/default-log-dir.patch
new file mode 100644
index 00000000000..0739cce186c
--- /dev/null
+++ b/testing/mautrix-discord/default-log-dir.patch
@@ -0,0 +1,17 @@
+Upstream: No, Alpine specific
+Reason: We don't want to log into $PWD/logs by default but
+into /var/log/mautrix-discord.
+diff --git a/example-config.yaml b/example-config.yaml
+index a636e58..9674a1c 100644
+--- a/example-config.yaml
++++ b/example-config.yaml
+@@ -357,7 +357,7 @@ logging:
+ format: pretty-colored
+ - type: file
+ format: json
+- filename: ./logs/mautrix-discord.log
++ filename: /var/log/mautrix-discord/mautrix-discord.log
+ max_size: 100
+ max_backups: 10
+ compress: true
+
diff --git a/testing/mautrix-discord/mautrix-discord.confd b/testing/mautrix-discord/mautrix-discord.confd
new file mode 100644
index 00000000000..518d93ee0c7
--- /dev/null
+++ b/testing/mautrix-discord/mautrix-discord.confd
@@ -0,0 +1,7 @@
+# Configuration for /etc/init.d/mautrix-discord
+
+# Location of configuration file
+config="/etc/mautrix-discord/config.yaml"
+
+# Extra arguments to be passed when starting mautrix-discord
+# command_args=""
diff --git a/testing/mautrix-discord/mautrix-discord.initd b/testing/mautrix-discord/mautrix-discord.initd
new file mode 100644
index 00000000000..b5d33392208
--- /dev/null
+++ b/testing/mautrix-discord/mautrix-discord.initd
@@ -0,0 +1,20 @@
+#!/sbin/openrc-run
+supervisor=supervise-daemon
+
+name="mautrix-discord"
+description="Daemon for Mautrix-Discord, a Matrix-Discord puppeting bridge"
+
+: ${config:="/etc/mautrix-discord/config.yaml"}
+: ${command_user:="mautrix-discord:mautrix-discord"}
+
+command="/usr/bin/mautrix-discord"
+command_args="-c $config $command_args"
+
+depends() {
+ need net
+}
+
+start_pre() {
+ checkpath --file --owner "$command_user" "$config"
+ checkpath --directory --owner "$command_user" /var/log/mautrix-discord
+}
diff --git a/testing/mautrix-discord/mautrix-discord.pre-install b/testing/mautrix-discord/mautrix-discord.pre-install
new file mode 100644
index 00000000000..9bc4428b595
--- /dev/null
+++ b/testing/mautrix-discord/mautrix-discord.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S mautrix-discord 2>/dev/null
+adduser -S -D -H -h /var/lib/mautrix-discord -s /sbin/nologin -G mautrix-discord -g mautrix-discord mautrix-discord 2>/dev/null
+
+exit 0
diff --git a/testing/mautrix-gmessages/APKBUILD b/testing/mautrix-gmessages/APKBUILD
new file mode 100644
index 00000000000..459665c403a
--- /dev/null
+++ b/testing/mautrix-gmessages/APKBUILD
@@ -0,0 +1,55 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=mautrix-gmessages
+pkgver=0.4.0
+pkgrel=0
+pkgdesc="Matrix-Google Messages puppeting bridge"
+url="https://go.mau.fi/mautrix-gmessages/"
+arch="all"
+license="AGPL-3.0-or-later"
+makedepends="go olm-dev sqlite-dev"
+install="$pkgname.pre-install"
+subpackages="$pkgname-openrc $pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/mautrix/gmessages/archive/v$pkgver.tar.gz
+ mautrix-gmessages.initd
+ mautrix-gmessages.confd
+ default-log-dir.patch
+ "
+builddir="$srcdir/gmessages-$pkgver"
+options="net"
+
+export GOFLAGS="$GOFLAGS -tags=libsqlite3"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ export CGO_CFLAGS="$CFLAGS"
+ export CGO_LDFLAGS="$LDFLAGS"
+ go build
+}
+
+check() {
+ go test -v ./...
+}
+
+package() {
+ install -Dm755 mautrix-gmessages \
+ -t "$pkgdir"/usr/bin/
+ install -Dm644 example-config.yaml \
+ -t "$pkgdir"/etc/mautrix-gmessages/
+
+ install -Dm755 "$srcdir"/mautrix-gmessages.initd \
+ "$pkgdir"/etc/init.d/mautrix-gmessages
+ install -Dm644 "$srcdir"/mautrix-gmessages.confd \
+ "$pkgdir"/etc/conf.d/mautrix-gmessages
+
+ install -Dm 644 LICENSE "$pkgdir"/usr/share/licenses/"$pkgname"/LICENSE
+}
+
+sha512sums="
+5155910eff8f5da6f28ab264439dd1990eb07116f25744f4681e41c9bb794ae73ef997760193e439674c55bcb26c5d457c1c07b2e9b277afd61c07aed6a0b10f mautrix-gmessages-0.4.0.tar.gz
+4d8d9752b97a64b1b0d97031aced7d202f9bf3462d1362a137853987de6b870b5f8a599943b63b730024ca477665f27f611090ac8c03e5fc24b5ed719d589e0a mautrix-gmessages.initd
+3332b10948fc07845b3b9a775bbb01057d2e6c768e25b429a451dbfb668195eb9f2c1d6b435a944aa7e5618b6ae609fb16e471696176fe3ae0768dffec6618e5 mautrix-gmessages.confd
+336298e0506bb3056733499098c291376e1777a24c994bdb92e4b2d62e954a59cddb66e60ce04100a86bc9ef4b7eb95353e003f9a3db2971040b72c9df0cc21b default-log-dir.patch
+"
diff --git a/testing/mautrix-gmessages/default-log-dir.patch b/testing/mautrix-gmessages/default-log-dir.patch
new file mode 100644
index 00000000000..abea44a5fb2
--- /dev/null
+++ b/testing/mautrix-gmessages/default-log-dir.patch
@@ -0,0 +1,17 @@
+Upstream: No, Alpine specific
+Reason: We don't want to log into $PWD/logs by default but
+into /var/log/mautrix-gmessages.
+diff --git a/example-config.yaml b/example-config.yaml
+index a636e58..9674a1c 100644
+--- a/example-config.yaml
++++ b/example-config.yaml
+@@ -399,7 +399,7 @@ logging:
+ format: pretty-colored
+ - type: file
+ format: json
+- filename: ./logs/mautrix-gmessages.log
++ filename: /var/log/mautrix-gmessages/mautrix-gmessages.log
+ max_size: 100
+ max_backups: 10
+ compress: true
+
diff --git a/testing/mautrix-gmessages/mautrix-gmessages.confd b/testing/mautrix-gmessages/mautrix-gmessages.confd
new file mode 100644
index 00000000000..1d405d64c5a
--- /dev/null
+++ b/testing/mautrix-gmessages/mautrix-gmessages.confd
@@ -0,0 +1,7 @@
+# Configuration for /etc/init.d/mautrix-gmessages
+
+# Location of configuration file
+config="/etc/mautrix-gmessages/config.yaml"
+
+# Extra arguments to be passed when starting mautrix-gmessages
+# command_args=""
diff --git a/testing/mautrix-gmessages/mautrix-gmessages.initd b/testing/mautrix-gmessages/mautrix-gmessages.initd
new file mode 100644
index 00000000000..6d8804b63fc
--- /dev/null
+++ b/testing/mautrix-gmessages/mautrix-gmessages.initd
@@ -0,0 +1,20 @@
+#!/sbin/openrc-run
+supervisor=supervise-daemon
+
+name="mautrix-gmessages"
+description="Daemon for Mautrix-GMessages, a Matrix-Google Messages puppeting bridge"
+
+: ${config:="/etc/mautrix-gmessages/config.yaml"}
+: ${command_user:="mautrix-gmessages:mautrix-gmessages"}
+
+command="/usr/bin/mautrix-gmessages"
+command_args="-c $config $command_args"
+
+depends() {
+ need net
+}
+
+start_pre() {
+ checkpath --file --owner "$command_user" "$config"
+ checkpath --directory --owner "$command_user" /var/log/mautrix-gmessages
+}
diff --git a/testing/mautrix-gmessages/mautrix-gmessages.pre-install b/testing/mautrix-gmessages/mautrix-gmessages.pre-install
new file mode 100644
index 00000000000..93f835bfaef
--- /dev/null
+++ b/testing/mautrix-gmessages/mautrix-gmessages.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S mautrix-gmessages 2>/dev/null
+adduser -S -D -H -h /var/lib/mautrix-gmessages -s /sbin/nologin -G mautrix-gmessages -g mautrix-gmessages mautrix-gmessages 2>/dev/null
+
+exit 0
diff --git a/testing/mautrix-meta/APKBUILD b/testing/mautrix-meta/APKBUILD
new file mode 100644
index 00000000000..9334f19e271
--- /dev/null
+++ b/testing/mautrix-meta/APKBUILD
@@ -0,0 +1,51 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=mautrix-meta
+pkgver=0.3.0
+pkgrel=0
+pkgdesc="Matrix-Facebook Messenger and Instagram DM puppeting bridge"
+url="https://go.mau.fi/mautrix-meta/"
+arch="all"
+license="AGPL-3.0-or-later"
+makedepends="go olm-dev sqlite-dev"
+install="$pkgname.pre-install"
+subpackages="$pkgname-openrc $pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/mautrix/meta/archive/v$pkgver.tar.gz
+ mautrix-meta.initd
+ mautrix-meta.confd
+ default-log-dir.patch
+"
+builddir="$srcdir/meta-$pkgver"
+options="net !check" # only test requires test data we don't have
+
+export GOFLAGS="$GOFLAGS -tags=libsqlite3"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ export CGO_CFLAGS="$CFLAGS"
+ export CGO_LDFLAGS="$LDFLAGS"
+ go build -ldflags "-X main.Tag=$pkgver -X 'main.BuildTime=$(date '+%b %_d %Y, %H:%M:%S')'"
+}
+
+package() {
+ install -Dm755 mautrix-meta \
+ -t "$pkgdir"/usr/bin/
+ install -Dm644 example-config.yaml \
+ -t "$pkgdir"/etc/mautrix-meta/
+
+ install -Dm755 "$srcdir"/mautrix-meta.initd \
+ "$pkgdir"/etc/init.d/mautrix-meta
+ install -Dm644 "$srcdir"/mautrix-meta.confd \
+ "$pkgdir"/etc/conf.d/mautrix-meta
+
+ install -Dm 644 LICENSE "$pkgdir"/usr/share/licenses/"$pkgname"/LICENSE
+}
+
+sha512sums="
+099c105ad8834f585215d0d9e3db16c1fe6d6064fe480b944e895527e44c069623f7667db8e84f90004df72dd49bdd1e1359b46e7987814e7c41a0b344ec3a67 mautrix-meta-0.3.0.tar.gz
+9b870d61aa277ae3434df0167b64bb7cdff8f29bd3493f305cef40e2c132089a9a106d30161e81ec76a09c608c652caf83e1c3d481589cdf4f4791965d9fe435 mautrix-meta.initd
+473d1ba73d1e311f8ebb364d495bab5289a167414ab4aa824c9ed7a37ea93cd3dd4ef0262963c9e300eb748b0dff6a030add39cbf636acb6db208b6c01aaec3d mautrix-meta.confd
+c95f99af50ef5841af7f654fd37ca34470eb3c918cec2ea624a149942901350b1b154207b8b0a1ddb763d4c65850379a44898b5b208afd01812c9993c7621ada default-log-dir.patch
+"
diff --git a/testing/mautrix-meta/default-log-dir.patch b/testing/mautrix-meta/default-log-dir.patch
new file mode 100644
index 00000000000..11c7f518e1b
--- /dev/null
+++ b/testing/mautrix-meta/default-log-dir.patch
@@ -0,0 +1,17 @@
+Upstream: No, Alpine specific
+Reason: We don't want to log into $PWD/logs by default but
+into /var/log/mautrix-meta.
+diff --git a/example-config.yaml b/example-config.yaml
+index a636e58..9674a1c 100644
+--- a/example-config.yaml
++++ b/example-config.yaml
+@@ -333,7 +333,7 @@ logging:
+ format: pretty-colored
+ - type: file
+ format: json
+- filename: ./logs/mautrix-meta.log
++ filename: /var/log/mautrix-meta/mautrix-meta.log
+ max_size: 100
+ max_backups: 10
+ compress: true
+
diff --git a/testing/mautrix-meta/mautrix-meta.confd b/testing/mautrix-meta/mautrix-meta.confd
new file mode 100644
index 00000000000..834b7fdb3a0
--- /dev/null
+++ b/testing/mautrix-meta/mautrix-meta.confd
@@ -0,0 +1,7 @@
+# Configuration for /etc/init.d/mautrix-meta
+
+# Location of configuration file
+config="/etc/mautrix-meta/config.yaml"
+
+# Extra arguments to be passed when starting mautrix-meta
+# command_args=""
diff --git a/testing/mautrix-meta/mautrix-meta.initd b/testing/mautrix-meta/mautrix-meta.initd
new file mode 100644
index 00000000000..5dee6c217c9
--- /dev/null
+++ b/testing/mautrix-meta/mautrix-meta.initd
@@ -0,0 +1,20 @@
+#!/sbin/openrc-run
+supervisor=supervise-daemon
+
+name="mautrix-meta"
+description="Daemon for Mautrix-Meta, a Matrix-Facebook Messenger and Instagram DM puppeting bridge"
+
+: ${config:="/etc/mautrix-meta/config.yaml"}
+: ${command_user:="mautrix-meta:mautrix-meta"}
+
+command="/usr/bin/mautrix-meta"
+command_args="-c $config $command_args"
+
+depends() {
+ need net
+}
+
+start_pre() {
+ checkpath --file --owner "$command_user" "$config"
+ checkpath --directory --owner "$command_user" /var/log/mautrix-meta
+}
diff --git a/testing/mautrix-meta/mautrix-meta.pre-install b/testing/mautrix-meta/mautrix-meta.pre-install
new file mode 100644
index 00000000000..020b7614ed9
--- /dev/null
+++ b/testing/mautrix-meta/mautrix-meta.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S mautrix-meta 2>/dev/null
+adduser -S -D -H -h /var/lib/mautrix-meta -s /sbin/nologin -G mautrix-meta -g mautrix-meta mautrix-meta 2>/dev/null
+
+exit 0
diff --git a/testing/mautrix-signal/APKBUILD b/testing/mautrix-signal/APKBUILD
new file mode 100644
index 00000000000..c0cc794ed5d
--- /dev/null
+++ b/testing/mautrix-signal/APKBUILD
@@ -0,0 +1,80 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=mautrix-signal
+pkgver=0.6.0
+_libsignalver=0.44.0
+pkgrel=0
+pkgdesc="A Matrix-Signal puppeting bridge"
+url="https://go.mau.fi/mautrix-signal/"
+arch="all !armhf !armv7 !x86 !ppc64le !s390x" # boring ssl only supports 64 bit, and doesn't set OPENSSL_64_BIT for ppc64le and s390x
+license="AGPL-3.0-or-later"
+makedepends="
+ cargo
+ cargo-auditable
+ clang-libclang
+ cmake
+ go
+ olm-dev
+ protoc
+ sqlite-dev
+"
+install="$pkgname.pre-install"
+subpackages="$pkgname-openrc $pkgname-doc"
+source="
+ signal-$pkgver.tar.gz::https://github.com/mautrix/signal/archive/refs/tags/v$pkgver.tar.gz
+ libsignal-$_libsignalver.tar.gz::https://github.com/signalapp/libsignal/archive/refs/tags/v$_libsignalver.tar.gz
+ mautrix-signal.initd
+ mautrix-signal.confd
+ default-log-dir.patch
+"
+builddir="$srcdir/signal-$pkgver"
+options="net"
+_rust_dir=pkg/libsignalgo/libsignal
+
+export GOFLAGS="$GOFLAGS -tags=libsqlite3"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+prepare() {
+ default_prepare
+ mv -T "$srcdir/libsignal-$_libsignalver" "$_rust_dir"
+ cd "$_rust_dir"
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ export CGO_CFLAGS="$CFLAGS"
+ export CGO_LDFLAGS="$LDFLAGS"
+ cd "$_rust_dir"
+ cargo auditable build -p libsignal-ffi --release --frozen
+ mv target/release/libsignal_ffi.a "$builddir"
+ cd "$builddir"
+ LIBRARY_PATH=. go build -ldflags "-X main.Tag=$pkgver -X 'main.BuildTime=$(date '+%b %_d %Y, %H:%M:%S')'"
+}
+
+check() {
+ LIBRARY_PATH=. go test ./...
+}
+
+package() {
+ install -Dm755 mautrix-signal \
+ -t "$pkgdir"/usr/bin/
+ install -Dm644 example-config.yaml \
+ -t "$pkgdir"/etc/mautrix-signal/
+
+ install -Dm755 "$srcdir"/mautrix-signal.initd \
+ "$pkgdir"/etc/init.d/mautrix-signal
+ install -Dm644 "$srcdir"/mautrix-signal.confd \
+ "$pkgdir"/etc/conf.d/mautrix-signal
+
+ install -Dm 644 LICENSE "$pkgdir"/usr/share/licenses/"$pkgname"/LICENSE
+}
+
+sha512sums="
+ac55ed462b442bc28045bd639359151b5717fef374f74a150c6597f4252cfb406c16de2b7989cb49b5e0e3c29f447427e19ac860048f7a9b2b020823694ffdba signal-0.6.0.tar.gz
+ef5bb03e2ebf37aefb31eb7c2e6c5196d07ca90f056e834a580f6293505789cd56268296a4ebc44b60b7550f2d6995ff1d8e4d27e73e783dedc29d097135d784 libsignal-0.44.0.tar.gz
+90555c016fc9d9aa90b5115b898c3e2f365d277390862fa6de693970db53d6ae41e0e55ca1ca5315d52fc14f61a58e7d8713aefd4eb4050241cfdbb27f9a8213 mautrix-signal.initd
+ffcfed000e4ca779a055ddf4374753e23e424501a70a148e9785a4c4f6f2d32e94e2275a766ac9435b2509a1d621821a2baad8c5e4964ef08cbd13045cb430df mautrix-signal.confd
+8c355de5a4a6714afa2aec594f9035b8cb25fab153e83a2222a17f2068d10a970f9ef2e1854085a122494df152831dfcdeb5612f648dc685fe6d9c0b4b4107f4 default-log-dir.patch
+"
diff --git a/testing/mautrix-signal/default-log-dir.patch b/testing/mautrix-signal/default-log-dir.patch
new file mode 100644
index 00000000000..b1692b0f43a
--- /dev/null
+++ b/testing/mautrix-signal/default-log-dir.patch
@@ -0,0 +1,17 @@
+Upstream: No, Alpine specific
+Reason: We don't want to log into $PWD/logs by default but
+into /var/log/mautrix-signal.
+diff --git a/example-config.yaml b/example-config.yaml
+index a636e58..9674a1c 100644
+--- a/example-config.yaml
++++ b/example-config.yaml
+@@ -300,7 +300,7 @@ logging:
+ format: pretty-colored
+ - type: file
+ format: json
+- filename: ./logs/mautrix-signal.log
++ filename: /var/log/mautrix-signal/mautrix-signal.log
+ max_size: 100
+ max_backups: 10
+ compress: true
+
diff --git a/testing/mautrix-signal/mautrix-signal.confd b/testing/mautrix-signal/mautrix-signal.confd
new file mode 100644
index 00000000000..53d94bd7afd
--- /dev/null
+++ b/testing/mautrix-signal/mautrix-signal.confd
@@ -0,0 +1,7 @@
+# Configuration for /etc/init.d/mautrix-signal
+
+# Location of configuration file
+config="/etc/mautrix-signal/config.yaml"
+
+# Extra arguments to be passed when starting mautrix-signal
+# command_args=""
diff --git a/testing/mautrix-signal/mautrix-signal.initd b/testing/mautrix-signal/mautrix-signal.initd
new file mode 100644
index 00000000000..f8146da2461
--- /dev/null
+++ b/testing/mautrix-signal/mautrix-signal.initd
@@ -0,0 +1,20 @@
+#!/sbin/openrc-run
+supervisor=supervise-daemon
+
+name="mautrix-signal"
+description="Daemon for Mautrix-Signal, a Matrix-Signal puppeting bridge"
+
+: ${config:="/etc/mautrix-signal/config.yaml"}
+: ${command_user:="mautrix-signal:mautrix-signal"}
+
+command="/usr/bin/mautrix-signal"
+command_args="-c $config $command_args"
+
+depends() {
+ need net
+}
+
+start_pre() {
+ checkpath --file --owner "$command_user" "$config"
+ checkpath --directory --owner "$command_user" /var/log/mautrix-signal
+}
diff --git a/testing/mautrix-signal/mautrix-signal.pre-install b/testing/mautrix-signal/mautrix-signal.pre-install
new file mode 100644
index 00000000000..83a633e59fc
--- /dev/null
+++ b/testing/mautrix-signal/mautrix-signal.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S mautrix-signal 2>/dev/null
+adduser -S -D -H -h /var/lib/mautrix-signal -s /sbin/nologin -G mautrix-signal -g mautrix-signal mautrix-signal 2>/dev/null
+
+exit 0
diff --git a/testing/mautrix-slack/APKBUILD b/testing/mautrix-slack/APKBUILD
new file mode 100644
index 00000000000..b56d9bd3d9c
--- /dev/null
+++ b/testing/mautrix-slack/APKBUILD
@@ -0,0 +1,56 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=mautrix-slack
+pkgver=0_git20230925
+_gitrev=4530ff397d08d93b673cd71da4c2a75d969ca0df
+pkgrel=2
+pkgdesc="Matrix-Slack puppeting bridge"
+url="https://go.mau.fi/mautrix-slack/"
+arch="all"
+license="AGPL-3.0-or-later"
+makedepends="go olm-dev sqlite-dev"
+install="$pkgname.pre-install"
+subpackages="$pkgname-openrc $pkgname-doc"
+source="$pkgname-$_gitrev.tar.gz::https://github.com/mautrix/slack/archive/$_gitrev.tar.gz
+ mautrix-slack.initd
+ mautrix-slack.confd
+ default-log-dir.patch
+ "
+builddir="$srcdir/slack-$_gitrev"
+options="net"
+
+export GOFLAGS="$GOFLAGS -tags=libsqlite3"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ export CGO_CFLAGS="$CFLAGS"
+ export CGO_LDFLAGS="$LDFLAGS"
+ go build
+}
+
+check() {
+ go test -v ./...
+}
+
+package() {
+ install -Dm755 mautrix-slack \
+ -t "$pkgdir"/usr/bin/
+ install -Dm644 example-config.yaml \
+ -t "$pkgdir"/etc/mautrix-slack/
+
+ install -Dm755 "$srcdir"/mautrix-slack.initd \
+ "$pkgdir"/etc/init.d/mautrix-slack
+ install -Dm644 "$srcdir"/mautrix-slack.confd \
+ "$pkgdir"/etc/conf.d/mautrix-slack
+
+ install -Dm 644 LICENSE "$pkgdir"/usr/share/licenses/"$pkgname"/LICENSE
+}
+
+sha512sums="
+d2bd2b4a52233d2ce59c7fde956ae253c97c6e28913b479fd64708759fceae8154dc71d54dadb8d515fccf6a5a43c0b77a94d0938e4c2a8333a18ac9b7965a7f mautrix-slack-4530ff397d08d93b673cd71da4c2a75d969ca0df.tar.gz
+84d1b9d35eab5345f236571830f0d18c1028c82e596f7c2ff17036bbc46ef1d2a11a214f2a5b28e4774045d6f0369381097c445479bd45f0f1e0157f0bf12040 mautrix-slack.initd
+cda8cd828fa1e4e4c302adc79a51d9af99fb428a81639691afefad6b575f6d2ac75730ea2cc455be514fe65a9836bdeb530a86b553c34a47e4a56796ce843fe1 mautrix-slack.confd
+9444fec2555b1a4a1a4db2f0d08179fdd7a9d725e0a7414cea35591dbaea642978ce2020b6889f54c40f69627b167eaa1a796abcaf216ade5a6457584c38f8dc default-log-dir.patch
+"
diff --git a/testing/mautrix-slack/default-log-dir.patch b/testing/mautrix-slack/default-log-dir.patch
new file mode 100644
index 00000000000..82c8818bb36
--- /dev/null
+++ b/testing/mautrix-slack/default-log-dir.patch
@@ -0,0 +1,17 @@
+Upstream: No, Alpine specific
+Reason: We don't want to log into $PWD/logs by default but
+into /var/log/mautrix-slack.
+diff --git a/example-config.yaml b/example-config.yaml
+index a636e58..9674a1c 100644
+--- a/example-config.yaml
++++ b/example-config.yaml
+@@ -288,7 +288,7 @@ logging:
+ format: pretty-colored
+ - type: file
+ format: json
+- filename: ./logs/mautrix-slack.log
++ filename: /var/log/mautrix-slack/mautrix-slack.log
+ max_size: 100
+ max_backups: 10
+ compress: true
+
diff --git a/testing/mautrix-slack/mautrix-slack.confd b/testing/mautrix-slack/mautrix-slack.confd
new file mode 100644
index 00000000000..9bea816b80d
--- /dev/null
+++ b/testing/mautrix-slack/mautrix-slack.confd
@@ -0,0 +1,7 @@
+# Configuration for /etc/init.d/mautrix-slack
+
+# Location of configuration file
+config="/etc/mautrix-slack/config.yaml"
+
+# Extra arguments to be passed when starting mautrix-slack
+# command_args=""
diff --git a/testing/mautrix-slack/mautrix-slack.initd b/testing/mautrix-slack/mautrix-slack.initd
new file mode 100644
index 00000000000..ffd5da54eb7
--- /dev/null
+++ b/testing/mautrix-slack/mautrix-slack.initd
@@ -0,0 +1,20 @@
+#!/sbin/openrc-run
+supervisor=supervise-daemon
+
+name="mautrix-slack"
+description="Daemon for Mautrix-Slack, a Matrix-Slack puppeting bridge"
+
+: ${config:="/etc/mautrix-slack/config.yaml"}
+: ${command_user:="mautrix-slack:mautrix-slack"}
+
+command="/usr/bin/mautrix-slack"
+command_args="-c $config $command_args"
+
+depends() {
+ need net
+}
+
+start_pre() {
+ checkpath --file --owner "$command_user" "$config"
+ checkpath --directory --owner "$command_user" /var/log/mautrix-slack
+}
diff --git a/testing/mautrix-slack/mautrix-slack.pre-install b/testing/mautrix-slack/mautrix-slack.pre-install
new file mode 100644
index 00000000000..4f04f9d2de4
--- /dev/null
+++ b/testing/mautrix-slack/mautrix-slack.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S mautrix-slack 2>/dev/null
+adduser -S -D -H -h /var/lib/mautrix-slack -s /sbin/nologin -G mautrix-slack -g mautrix-slack mautrix-slack 2>/dev/null
+
+exit 0
diff --git a/testing/mautrix-whatsapp/APKBUILD b/testing/mautrix-whatsapp/APKBUILD
deleted file mode 100644
index ef3fe74a2a6..00000000000
--- a/testing/mautrix-whatsapp/APKBUILD
+++ /dev/null
@@ -1,38 +0,0 @@
-# Contributor: Rasmus Thomsen <oss@cogitri.dev>
-# Maintainer: Rasmus Thomsen <oss@cogitri.dev>
-pkgname=mautrix-whatsapp
-pkgver=0.4.0
-pkgrel=0
-pkgdesc="A Matrix-WhatsApp puppeting bridge"
-url="https://maunium.net/go/mautrix-whatsapp"
-arch="all !s390x"
-license="AGPL-3.0-or-later"
-makedepends="go olm-dev"
-install="$pkgname.pre-install $pkgname.pre-upgrade"
-subpackages="$pkgname-openrc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/mautrix/whatsapp/archive/v$pkgver.tar.gz
- mautrix-whatsapp.initd
- mautrix-whatsapp.confd
- default-log-dir.patch
- "
-builddir="$srcdir"/whatsapp-$pkgver
-
-build() {
- go build
-}
-
-check() {
- go test -v ./...
-}
-
-package() {
- install -Dm755 mautrix-whatsapp "$pkgdir"/usr/bin/mautrix-whatsapp
- install -Dm644 example-config.yaml "$pkgdir"/etc/mautrix-whatsapp/example-config.yaml
- install -Dm755 "$srcdir"/mautrix-whatsapp.initd "$pkgdir"/etc/init.d/mautrix-whatsapp
- install -Dm644 "$srcdir"/mautrix-whatsapp.confd "$pkgdir"/etc/conf.d/mautrix-whatsapp
-}
-
-sha512sums="1dcf41164449c76b3298d2505a51da0be2e0cb904987be14830f72d120c1f73dc7509f2a02bf3c7e7e88e3a4728f6d2826bc224cbb227289e08c975e592fb974 mautrix-whatsapp-0.4.0.tar.gz
-c735950faace99380a5cfd998ede482108381fcb48bdcd2405d32a4a84e12b2ee75995c3c12160d257479612dcd0ea4c773d4d7b6bef6f6bbbd0373f31f20acd mautrix-whatsapp.initd
-9349b660273c63d2973f1b99ddbd98469dddc098157380603210159f17d3cb1eb55e71dbd21550b20d40831f4da320225e7c03441667e2750e30a2e1fa03acfe mautrix-whatsapp.confd
-5642900e35028d4a0918ed9fd73f6dee402d895dff53423aa32f728703a01492d5aba64ec63984e2929d4630e43f7ed35bec71039fb4b8051703c421f38013da default-log-dir.patch"
diff --git a/testing/mautrix-whatsapp/default-log-dir.patch b/testing/mautrix-whatsapp/default-log-dir.patch
deleted file mode 100644
index 629fde6bada..00000000000
--- a/testing/mautrix-whatsapp/default-log-dir.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-Upstream: No, Alpine specific
-Reason: We don't want to log into $PWD/logs by default but
-into /var/log/mautrix-whatsapp.
-diff --git a/example-config.yaml b/example-config.yaml
-index dfe2c25..ee79796 100644
---- a/example-config.yaml
-+++ b/example-config.yaml
-@@ -188,7 +188,7 @@ bridge:
- # Logging config.
- logging:
- # The directory for log files. Will be created if not found.
-- directory: ./logs
-+ directory: /var/log/mautrix-whatsapp
- # Available variables: .Date for the file date and .Index for different log files on the same day.
- file_name_format: "{{.Date}}-{{.Index}}.log"
- # Date format for file names in the Go time format: https://golang.org/pkg/time/#pkg-constants
diff --git a/testing/mautrix-whatsapp/mautrix-whatsapp.confd b/testing/mautrix-whatsapp/mautrix-whatsapp.confd
deleted file mode 100644
index 2ff3d33dd54..00000000000
--- a/testing/mautrix-whatsapp/mautrix-whatsapp.confd
+++ /dev/null
@@ -1,7 +0,0 @@
-# Configuration for /etc/init.d/mautrix-whatsapp
-
-# Location of configuration file
-config="/etc/mautrix-whatsapp/config.yaml"
-
-# Extra arguments to be passed when starting mautrix-whatsapp
-# command_args=""
diff --git a/testing/mautrix-whatsapp/mautrix-whatsapp.initd b/testing/mautrix-whatsapp/mautrix-whatsapp.initd
deleted file mode 100644
index 138ab8e615f..00000000000
--- a/testing/mautrix-whatsapp/mautrix-whatsapp.initd
+++ /dev/null
@@ -1,21 +0,0 @@
-#!/sbin/openrc-run
-supervisor=supervise-daemon
-
-name="mautrix-whatsapp"
-description="Daemon for Mautrix-Whatsapp, a Matrix-WhatsApp puppeting bridge"
-
-: ${config:="/etc/mautrix-whatsapp/config.yaml"}
-: ${command_user:="mautrix-whatsapp:mautrix-whatsapp"}
-
-command="/usr/bin/mautrix-whatsapp"
-command_args="-c $config $command_args"
-
-depends() {
- need net
-}
-
-start_pre() {
- checkpath --file --owner "$command_user" /etc/mautrix-whatsapp/config.yaml
- checkpath --file --owner "$command_user" /etc/mautrix-whatsapp/registration.yaml
- checkpath --directory --owner "$command_user" /var/log/mautrix-whatsapp
-}
diff --git a/testing/mautrix-whatsapp/mautrix-whatsapp.pre-install b/testing/mautrix-whatsapp/mautrix-whatsapp.pre-install
deleted file mode 100644
index 14f7ec9eb63..00000000000
--- a/testing/mautrix-whatsapp/mautrix-whatsapp.pre-install
+++ /dev/null
@@ -1,6 +0,0 @@
-#!/bin/sh
-
-addgroup -S mautrix-whatsapp 2>/dev/null
-adduser -S -D -H -h /var/lib/mautrix-whatsapp -s /sbin/nologin -G mautrix-whatsapp -g mautrix-whatsapp mautrix-whatsapp 2>/dev/null
-
-exit 0
diff --git a/testing/mautrix-whatsapp/mautrix-whatsapp.pre-upgrade b/testing/mautrix-whatsapp/mautrix-whatsapp.pre-upgrade
deleted file mode 120000
index e105e629a44..00000000000
--- a/testing/mautrix-whatsapp/mautrix-whatsapp.pre-upgrade
+++ /dev/null
@@ -1 +0,0 @@
-mautrix-whatsapp.pre-install \ No newline at end of file
diff --git a/testing/maxima/APKBUILD b/testing/maxima/APKBUILD
new file mode 100644
index 00000000000..407d2bdc205
--- /dev/null
+++ b/testing/maxima/APKBUILD
@@ -0,0 +1,69 @@
+# Maintainer: Jakob Meier <comcloudway@ccw.icu>
+# Contributor: Jakob Meier <comcloudway@ccw.icu>
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+pkgname=maxima
+pkgver=5.47.0
+pkgrel=6
+pkgdesc="Sophisticated computer algebra system"
+url="http://maxima.sourceforge.net"
+# ppc64le, s390x, riscv64: blocked by sbcl
+# arm*, x86: not useful on 32-bit
+# aarch64: fails to build
+arch="x86_64"
+license="GPL-2.0-or-later"
+depends="texinfo shared-mime-info sbcl"
+makedepends="python3 perl gmp-dev"
+checkdepends="gnuplot"
+subpackages="
+ $pkgname-doc
+ $pkgname-doc-extra
+ $pkgname-bash-completion
+ $pkgname-emacs
+ "
+source="maxima-$pkgver.tar.gz::https://sourceforge.net/projects/maxima/files/Maxima-source/$pkgver-source/maxima-$pkgver.tar.gz/download"
+options="!check" # take hours
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --infodir=/usr/share/info \
+ --libexecdir=/usr/lib \
+ --localstatedir=/var \
+ --enable-sbcl \
+ --with-default-lisp=sbcl
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+
+ # remove unused files
+ find "$pkgdir" -type d -iname tests -exec rm -r {} \+
+}
+
+extra() {
+ pkgdesc="$pkgdesc (extra html documentation + demos)"
+
+ amove usr/share/$pkgname/$pkgver/doc
+ amove usr/share/$pkgname/$pkgver/demo
+}
+
+emacs() {
+ depends="$pkgname=$pkgver-r$pkgrel"
+ install_if="$pkgname=$pkgver-r$pkgrel emacs"
+ pkgdesc="Emacs plugins for $pkgname"
+
+ amove usr/share/emacs
+}
+
+sha512sums="
+953b98336eb086069edaa917981372450ce165dedd7a7b39b181d3f2d8b089551eea943e0084148eaa3ded395dcba9135509d3d11d9132ab7a3ad8bb800d3a11 maxima-5.47.0.tar.gz
+"
diff --git a/testing/mbpfan/APKBUILD b/testing/mbpfan/APKBUILD
index 85b939f068e..97b9b0c93fb 100644
--- a/testing/mbpfan/APKBUILD
+++ b/testing/mbpfan/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Sean McAvoy <seanmcavoy@gmail.com>
# Maintainer: Sean McAvoy <seanmcavoy@gmail.com>
pkgname=mbpfan
-pkgver=2.3.0
+pkgver=2.4.0
pkgrel=0
pkgdesc="simple daemon to control fan speed on MacBooks, other macs"
url="https://ineed.coffee/projects/mbpfan"
@@ -13,7 +13,6 @@ source="mbpfan-$pkgver.tar.gz::https://github.com/linux-on-mac/mbpfan/archive/re
01-remove-systemd.patch
$pkgname.initd"
-
build() {
make
}
@@ -24,7 +23,7 @@ package() {
}
sha512sums="
-676817d7d9b9e9fa866539d4b0e3edc8d0d22761807695961451fe1d5845c22031d45f53222d37c5ed967757b4cf80523a3af7d28084d9af11248798a463cdfd mbpfan-2.3.0.tar.gz
+fa906043552a895d274642dfe8e3a94fdece0bf9b430710d9ee4dc4f33b6762fbed3314e4a67ede11916514297d511031cc99b35b7a267b58aceefd73e4b1d22 mbpfan-2.4.0.tar.gz
bd9e2496049978f4dae322279573e784b7866bbdaa39de65b124f5206ab270ff71933b762a1caf3a792b33760bdd66852c46486b66429d825c623a32c8c7c52b 01-remove-systemd.patch
bc3905e85d89e71d56239549bede3dd826633da2152d2e548fdf0c5eb2fde7a94e776afcce4d1657d2198998538d9e19b2a9d464c95c2b14083d8f5782417467 mbpfan.initd
"
diff --git a/testing/mbrola/APKBUILD b/testing/mbrola/APKBUILD
new file mode 100644
index 00000000000..32e26f1316e
--- /dev/null
+++ b/testing/mbrola/APKBUILD
@@ -0,0 +1,27 @@
+# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=mbrola
+pkgver=3.3
+pkgrel=0
+pkgdesc="Speech synthesizer based on the concatenation of diphones"
+url="https://github.com/numediart/MBROLA"
+arch="all !s390x" # assumes little endian
+license="AGPL-3.0-or-later"
+source="https://github.com/numediart/MBROLA/archive/refs/tags/$pkgver/mbrola-$pkgver.tar.gz
+ terrible-makefile.patch
+ "
+builddir="$srcdir/MBROLA-$pkgver"
+options="!check" # tests need some external script to run
+
+build() {
+ make
+}
+
+package() {
+ install -Dm755 Bin/mbrola -t "$pkgdir"/usr/bin
+}
+
+sha512sums="
+4c15481d2afc7f459c511d2f2791ae1f0f89893ea86fcde113c73f9b5509b893bc7beac8ec5fa76ca0f4e0aca35982ff1db15e8611514d91991608aee004c3f2 mbrola-3.3.tar.gz
+73390819c34612a9438b6fc197c0b01934401c0d2fd2bd8f3514a1f61422d4dbac79fe0c5f82c963e29531b615fe676eeda981cad6089fa4224baf7dbf67d219 terrible-makefile.patch
+"
diff --git a/testing/mbrola/terrible-makefile.patch b/testing/mbrola/terrible-makefile.patch
new file mode 100644
index 00000000000..4ebbf009357
--- /dev/null
+++ b/testing/mbrola/terrible-makefile.patch
@@ -0,0 +1,22 @@
+diff --git a/Makefile b/Makefile
+index 47cf410..2d3f916 100644
+--- a/Makefile
++++ b/Makefile
+@@ -4,7 +4,7 @@
+ VERSION=3.3
+
+ # To test strict C ANSI compliance
+-CC = gcc -ansi -pedantic
++CC ?= gcc -ansi -pedantic
+ LIB= -lm
+
+ # This allow you to write commands like "make PURE=purify demo1"
+@@ -33,7 +33,7 @@ CFLAGS += -DLITTLE_ENDIAN
+ # GENERAL FLAGS FOR GCC
+
+ # Optimized code
+-CFLAGS += -O6
++CFLAGS ?= -O2
+
+ # Debug mode with gdb
+ #CFLAGS += -g
diff --git a/testing/mcjoin/APKBUILD b/testing/mcjoin/APKBUILD
index bd1209d6e9c..22c8e4cc44c 100644
--- a/testing/mcjoin/APKBUILD
+++ b/testing/mcjoin/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Nico de Haer <nico.dehaer@gmail.com>
# Maintainer: Nico de Haer <nico.dehaer@gmail.com>
pkgname=mcjoin
-pkgver=2.9
+pkgver=2.11
pkgrel=0
pkgdesc="Tiny multicast testing tool"
url="https://github.com/troglobit/mcjoin"
@@ -21,5 +21,5 @@ package() {
}
sha512sums="
-f73366f311d0d8ea6cf0fa3e800c474e05de810aeb480518db5aa9014309e4aca5d8fb2899e352149afc631ca21bcccd1ff6f12994920cc74a5502fa50c834a4 mcjoin-2.9.tar.gz
+4a1af8dae08e7ee5cc168b2a9b5f921f5f11be1d9dc0d9b0a3d5f1f7f531c22414be6edf448dd52f543ad27c66cab3663105bd7efc621f13e575d47d5434adff mcjoin-2.11.tar.gz
"
diff --git a/testing/mcman/APKBUILD b/testing/mcman/APKBUILD
new file mode 100644
index 00000000000..a0424e7df7e
--- /dev/null
+++ b/testing/mcman/APKBUILD
@@ -0,0 +1,37 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=mcman
+pkgver=0.4.4
+pkgrel=0
+pkgdesc="Powerful Minecraft Server Manager CLI"
+url="https://github.com/ParadigmMC/mcman"
+arch="all"
+license="GPL-3.0-only"
+makedepends="
+ cargo
+ cargo-auditable
+"
+subpackages="$pkgname-doc"
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/ParadigmMC/mcman/archive/refs/tags/$pkgver.tar.gz
+"
+options="!check" # no tests
+
+prepare() {
+ default_prepare
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+package() {
+ install -Dm 755 target/release/mcman "$pkgdir"/usr/bin/mcman
+
+ install -Dm 644 LICENSE "$pkgdir"/usr/share/licenses/"$pkgname"/LICENSE
+}
+
+sha512sums="
+6b5ca9ba901d803c07932eaab38876bfe7baea767bd747692ba63de2a79924502d60fed4637578ca46cb43f3c16911e4981c85f9393c3fa0888fa5baf9ff54d5 mcman-0.4.4.tar.gz
+"
diff --git a/testing/mcqd/APKBUILD b/testing/mcqd/APKBUILD
new file mode 100644
index 00000000000..1b1382e6f5a
--- /dev/null
+++ b/testing/mcqd/APKBUILD
@@ -0,0 +1,29 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
+pkgname=mcqd
+pkgver=1.0.0
+pkgrel=1
+pkgdesc="Fast exact algorithm for finding a maximum clique in an undirected graph"
+url="https://gitlab.com/janezkonc/mcqd"
+arch="all"
+license="GPL-3.0-only"
+source="https://gitlab.com/janezkonc/mcqd/-/archive/v$pkgver/mcqd-v$pkgver.tar.gz"
+subpackages="$pkgname-dev"
+builddir="$srcdir/$pkgname-v$pkgver"
+
+build() {
+ $CXX ${CXXFLAGS/-Os/-O3} $LDFLAGS -o mcqd mcqd.cpp
+}
+
+check() {
+ ./mcqd test.clq
+}
+
+package() {
+ install -Dm755 mcqd "$pkgdir"/usr/bin/mcqd
+ install -Dm644 mcqd.h "$pkgdir"/usr/include/mcqd.h
+}
+
+sha512sums="
+ce0a8e1722d793793bdc1c0d47bf088daaa26e830550d401c1a05938581cc1e1f5ec3d846292e4152658143231f64542c32f046344d95c71b975f28a9c750817 mcqd-v1.0.0.tar.gz
+"
diff --git a/testing/md2gemini/APKBUILD b/testing/md2gemini/APKBUILD
index 71f58fceb68..089dae6e136 100644
--- a/testing/md2gemini/APKBUILD
+++ b/testing/md2gemini/APKBUILD
@@ -1,15 +1,16 @@
# Contributor: omni <omni+alpine@hack.org>
# Maintainer: omni <omni+alpine@hack.org>
pkgname=md2gemini
-pkgver=1.9.0
-pkgrel=0
+pkgver=1.9.1
+pkgrel=1
pkgdesc="converter from Markdown to the Gemini text format"
-arch="noarch"
+#arch="noarch" # archived upstream, need Mistune 2.x
url="https://github.com/makeworld-the-better-one/md2gemini"
license="LGPL-3.0-or-later"
depends="py3-cjkwrap py3-wcwidth py3-mistune"
makedepends="py3-setuptools"
checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/makeworld-the-better-one/md2gemini/archive/v$pkgver.tar.gz"
build() {
@@ -25,4 +26,6 @@ package() {
rm -rf "$pkgdir"/usr/lib/python3*/site-packages/tests
}
-sha512sums="01c65c74f3a21fbc015865fc04c00d0baba6ee7a3a844b6a718abcc71d3acb9bb423af942047334482385de2317b8543b04543dd3cf438fbe4a43c3516263095 md2gemini-1.9.0.tar.gz"
+sha512sums="
+c066d8e8d2a0d784b140b778b988dd78793e4ae1735b9534f354283f8c24e7a20ec517aafeeea00029db5e8da166a38f3fa4d410389de05feafc96405b47eee9 md2gemini-1.9.1.tar.gz
+"
diff --git a/testing/md5ha1/APKBUILD b/testing/md5ha1/APKBUILD
index d18cb2ec3ae..ab44b9092ea 100644
--- a/testing/md5ha1/APKBUILD
+++ b/testing/md5ha1/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=md5ha1
pkgver=0_git20171202
-pkgrel=0
+pkgrel=1
pkgdesc="Tool for computing WWW-Digest MD5 HA1 string"
url="https://github.com/miconda/md5ha1"
arch="all"
diff --git a/testing/mda-lv2/APKBUILD b/testing/mda-lv2/APKBUILD
deleted file mode 100644
index 684f7348616..00000000000
--- a/testing/mda-lv2/APKBUILD
+++ /dev/null
@@ -1,25 +0,0 @@
-# Contributor: psykose <alice@ayaya.dev>
-# Maintainer: psykose <alice@ayaya.dev>
-pkgname=mda-lv2
-pkgver=1.2.6
-pkgrel=0
-pkgdesc="Port of the MDA VST plugins to LV2"
-url="https://gitlab.com/drobilla/mda-lv2"
-arch="all"
-license="GPL-3.0-or-later"
-makedepends="lv2-dev waf"
-options="!check" # no testsuite
-source="https://download.drobilla.net/mda-lv2-$pkgver.tar.bz2"
-
-build() {
- python3 waf configure --prefix=/usr
- python3 waf build
-}
-
-package() {
- python3 waf install --destdir="$pkgdir"
-}
-
-sha512sums="
-0b49c8d4868010726bdf4b969b4822ffe17d705d81c956afabcfa27135c1bf54bb4fd00168d2606ddcd3f9b1930247655e700ae8d6039b43ff1a779cb8a617cc mda-lv2-1.2.6.tar.bz2
-"
diff --git a/testing/mdbook-katex/APKBUILD b/testing/mdbook-katex/APKBUILD
new file mode 100644
index 00000000000..2b6b05d17b8
--- /dev/null
+++ b/testing/mdbook-katex/APKBUILD
@@ -0,0 +1,33 @@
+# Maintainer: Cowington Post <cowingtonpost@gmail.com>
+pkgname=mdbook-katex
+pkgver=0.8.0
+pkgrel=0
+pkgdesc="Preprocessor for mdbook to render LaTeX equations in HTML"
+url="https://github.com/lzanini/mdbook-katex"
+arch="all"
+license="MIT"
+depends="mdbook"
+makedepends="
+ cargo
+ cargo-auditable
+ "
+source="https://github.com/lzanini/mdbook-katex/archive/refs/tags/v$pkgver/mdbook-katex-$pkgver.tar.gz"
+options="!check" # no tests
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release
+}
+
+package() {
+ install -Dm755 target/release/mdbook-katex "$pkgdir"/usr/bin/mdbook-katex
+}
+
+sha512sums="
+b7091b5985a552ef9b4cfad82855fd92f663f4b632bccda1904046c23549a22916deb6adea54e583d2edf3f08115db9868be464dfbdf3e090e8197999e4230ae mdbook-katex-0.8.0.tar.gz
+"
diff --git a/testing/mdbook/APKBUILD b/testing/mdbook/APKBUILD
deleted file mode 100644
index 82ad630ec35..00000000000
--- a/testing/mdbook/APKBUILD
+++ /dev/null
@@ -1,49 +0,0 @@
-# Maintainer: crapStone <crapstone01@gmail.com>
-pkgname=mdbook
-pkgver=0.4.18
-pkgrel=0
-pkgdesc="mdBook is a utility to create modern online books from Markdown files"
-url="https://rust-lang.github.io/mdBook/"
-arch="all !s390x !riscv64" # limited by cargo
-license="MPL-2.0"
-makedepends="rust cargo"
-subpackages="
- $pkgname-bash-completion
- $pkgname-fish-completion
- $pkgname-zsh-completion
- "
-source="$pkgname-$pkgver.tar.gz::https://github.com/rust-lang/mdBook/archive/v$pkgver.tar.gz"
-builddir="$srcdir/mdBook-$pkgver"
-export CARGO_HOME="$srcdir"/cargo
-
-prepare() {
- default_prepare
- cargo fetch --locked
-}
-
-build() {
- cargo build --frozen --release
-}
-
-check() {
- cargo test --frozen
-}
-
-package() {
- install -Dm755 target/release/mdbook "$pkgdir"/usr/bin/mdbook
-
- target/release/mdbook completions bash > mdbook.bash
- target/release/mdbook completions fish > mdbook.fish
- target/release/mdbook completions zsh > _mdbook
-
- install -Dm644 mdbook.bash \
- "$pkgdir/usr/share/bash-completion/completions/mdbook"
- install -Dm644 mdbook.fish \
- "$pkgdir/usr/share/fish/completions/mdbook.fish"
- install -Dm644 _mdbook \
- "$pkgdir/usr/share/zsh/site-functions/_mdbook"
-}
-
-sha512sums="
-f209d8882ff317deb3356a5de0d39c71fe0c51cf80874f0edc56c7ddf46b537c7194c58172dd5f704554bf0724cb0899ecb61b1eeea467226fa83c0679c336f5 mdbook-0.4.18.tar.gz
-"
diff --git a/testing/mdbtools/10-Werror.patch b/testing/mdbtools/10-Werror.patch
deleted file mode 100644
index c186e2cdb6d..00000000000
--- a/testing/mdbtools/10-Werror.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-Author: Holger Jaekel <holger.jaekel@gmx.de>
-Summary: treat compiler warnings as warnings, not errors
-----
---- a/configure.ac
-+++ b/configure.ac
-@@ -83,7 +83,7 @@
- AC_SUBST(SQL)
- AC_SUBST(LFLAGS)
-
--CFLAGS="$CFLAGS -Wall -Werror"
-+CFLAGS="$CFLAGS -Wall"
- LOCALE_T=locale_t
- AS_CASE([$host],
- [*mingw*], [LDFLAGS="$LDFLAGS -no-undefined" LOCALE_T=_locale_t], [])
diff --git a/testing/mdbtools/APKBUILD b/testing/mdbtools/APKBUILD
deleted file mode 100644
index 89fff49a8e2..00000000000
--- a/testing/mdbtools/APKBUILD
+++ /dev/null
@@ -1,90 +0,0 @@
-# Contributor: Holger Jaekel <holger.jaekel@gmx.de>
-# Maintainer: Holger Jaekel <holger.jaekel@gmx.de>
-pkgname=mdbtools
-pkgver=1.0.0
-pkgrel=0
-pkgdesc="library for reading MS Access database files"
-url="https://github.com/mdbtools/mdbtools"
-arch="all !s390x" # no support for big-endian
-license="GPL-2.0-or-later"
-makedepends="
- autoconf
- automake
- bison
- flex
- gawk
- gettext-dev
- gnu-libiconv-dev
- libtool
- unixodbc-dev
- "
-subpackages="
- $pkgname-dev
- $pkgname-doc
- $pkgname-bash-completion
- $pkgname-utils
- $pkgname-odbc
- "
-_testdata=e649f792cb8f966d404e052d1523e93de0192d50
-source="
- https://github.com/mdbtools/mdbtools/releases/download/v$pkgver/mdbtools-$pkgver.tar.gz
- mdbtestdata-$_testdata.tar.gz::https://github.com/mdbtools/mdbtestdata/archive/$_testdata.tar.gz
- 10-Werror.patch
- "
-
-prepare() {
- default_prepare
-
- mv "$srcdir"/mdbtestdata-$_testdata "$builddir"/test
-
- autoreconf -i -f
-}
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --enable-static=no \
- --with-unixodbc=/usr/include \
- --with-libiconv-prefix=/usr/include
- make
-}
-
-check() {
- # taken from https://github.com/mdbtools/mdbtools/blob/master/test_script.sh
- ./src/util/mdb-json test/data/ASampleDatabase.accdb "Asset Items"
- ./src/util/mdb-json test/data/nwind.mdb "Umsätze"
- ./src/util/mdb-count test/data/ASampleDatabase.accdb "Asset Items"
- ./src/util/mdb-count test/data/nwind.mdb "Umsätze"
- ./src/util/mdb-prop test/data/ASampleDatabase.accdb "Asset Items"
- ./src/util/mdb-prop test/data/nwind.mdb "Umsätze"
- ./src/util/mdb-schema test/data/ASampleDatabase.accdb
- ./src/util/mdb-schema test/data/nwind.mdb
- ./src/util/mdb-schema test/data/nwind.mdb -T "Umsätze" postgres
- ./src/util/mdb-tables test/data/ASampleDatabase.accdb
- ./src/util/mdb-tables test/data/nwind.mdb
- ./src/util/mdb-ver test/data/ASampleDatabase.accdb
- ./src/util/mdb-ver test/data/nwind.mdb
- ./src/util/mdb-queries test/data/ASampleDatabase.accdb qryCostsSummedByOwner
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-utils() {
- pkgdesc="library for reading MS Access database files (command line utilities)"
- amove /usr/bin
-}
-
-odbc() {
- pkgdesc="library for reading MS Access database files (ODBC driver for use with unixODBC)"
- amove /usr/lib/odbc/libmdbodbc*
-}
-
-sha512sums="
-146606d1c26c939cef5d4e153f312c24858e0a2eeaad9260c3bdd5eea9f5b58f5fd06ccad72323aa18db5fe197b4c50167b3ca9e112f1a8200ea5b69e1b16ccd mdbtools-1.0.0.tar.gz
-e7bee8761ff20e231ccf50fe5b4eb917c774a8c60fab4769f39bac024c5a507537db407ac616930203222e5965e0a7556a87d39555e3c4e2a543f6a49e890aea mdbtestdata-e649f792cb8f966d404e052d1523e93de0192d50.tar.gz
-c3ab42c277546d74760be28592ec4a15194c0df837f3043b3d66918658c35100def729b50222e9f3f9f301a2c49a6aeb6b7b810afbacc9f636f12934aa1a3cb9 10-Werror.patch
-"
diff --git a/testing/mdcat/APKBUILD b/testing/mdcat/APKBUILD
index 83fbe5920b4..f5f95b57590 100644
--- a/testing/mdcat/APKBUILD
+++ b/testing/mdcat/APKBUILD
@@ -1,33 +1,30 @@
# Contributor: Leo <thinkabit.ukim@gmail.com>
-# Maintainer:
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
pkgname=mdcat
-pkgver=0.27.1
+pkgver=2.1.1
pkgrel=0
pkgdesc="Cat for markdown"
-url="https://codeberg.org/flausch/mdcat"
-# s390x, limited by cargo
-# ppc64le fails to build 'ring v0.16.19'
-arch="all !s390x !ppc64le !riscv64"
+url="https://github.com/swsnr/mdcat"
+#Undefined temporary symbol .LBB16_2
+arch="all !armhf"
license="Apache-2.0"
-makedepends="asciidoctor cargo shared-mime-info openssl-dev"
+makedepends="asciidoctor cargo shared-mime-info openssl-dev>3 cargo-auditable"
subpackages="
$pkgname-doc
$pkgname-bash-completion
$pkgname-zsh-completion
$pkgname-fish-completion
"
-source="https://codeberg.org/flausch/mdcat/archive/mdcat-$pkgver.tar.gz
- minimize-size.patch
- "
-builddir="$srcdir"/mdcat
+source="https://github.com/swsnr/mdcat/archive/refs/tags/mdcat-$pkgver.tar.gz"
+builddir="$srcdir/mdcat-mdcat-$pkgver"
prepare() {
default_prepare
- cargo fetch --locked
+ cargo fetch --target="$CTARGET" --locked
}
build() {
- cargo build --release --frozen
+ cargo auditable build --release --frozen
}
check() {
@@ -35,15 +32,22 @@ check() {
}
package() {
- install -s -Dm0755 target/release/mdcat -t "$pkgdir"/usr/bin
+ install -Dm755 target/release/mdcat -t "$pkgdir"/usr/bin/
+ ln -s /usr/bin/mdcat "$pkgdir"/usr/bin/mdless
# Install the generated shell completion files
- install -Dm644 target/release/build/mdcat-*/out/mdcat.bash \
- -t "$pkgdir"/usr/share/bash-completion/completions
- install -Dm644 target/release/build/mdcat-*/out/_mdcat \
+ install -Dm644 target/release/build/mdcat-*/out/completions/mdcat.bash \
+ "$pkgdir"/usr/share/bash-completion/completions/mdcat
+ install -Dm644 target/release/build/mdcat-*/out/completions/mdless.bash \
+ "$pkgdir"/usr/share/bash-completion/completions/mdless
+ install -Dm644 target/release/build/mdcat-*/out/completions/_mdcat \
+ -t "$pkgdir"/usr/share/zsh/site-functions
+ install -Dm644 target/release/build/mdcat-*/out/completions/_mdless \
-t "$pkgdir"/usr/share/zsh/site-functions
- install -Dm644 target/release/build/mdcat-*/out/mdcat.fish \
- -t "$pkgdir"/usr/share/fish/completions
+ install -Dm644 target/release/build/mdcat-*/out/completions/mdcat.fish \
+ -t "$pkgdir"/usr/share/fish/vendor_completions.d
+ install -Dm644 target/release/build/mdcat-*/out/completions/mdless.fish \
+ -t "$pkgdir"/usr/share/fish/vendor_completions.d
# Install the generated man-page
install -Dm644 "$builddir"/target/release/build/mdcat-*/out/mdcat.1 \
@@ -51,6 +55,5 @@ package() {
}
sha512sums="
-61fbab4c247473f041fd116fcfaf107a78ade3ae0bc567972008eb50b4e06bba29ba6b6baab5ed14336b9ae6d932065d75860b9f69fea7a7e895205bb0d74522 mdcat-0.27.1.tar.gz
-457cbc306ba65fe09c5304c7cd89ccbaeeeec29ca7c54e84e610de1256fffd37391f2d3fe592aed061d425d6092d50a8277d33f7b3143714d70ad500654a926d minimize-size.patch
+8bff3c1e696311fc39bfb5a89e8aaf45986acab3f06a4c905682af233720940f4b1193c36907474ea8d94491148fba72b098dd23166adb56d7ebaac37c861d82 mdcat-2.1.1.tar.gz
"
diff --git a/testing/mdcat/minimize-size.patch b/testing/mdcat/minimize-size.patch
deleted file mode 100644
index 4f6c4aa5483..00000000000
--- a/testing/mdcat/minimize-size.patch
+++ /dev/null
@@ -1,12 +0,0 @@
---- a/Cargo.toml
-+++ b/Cargo.toml
-@@ -57,6 +57,9 @@
- [profile.release]
- # Enable LTO for release builds; makes the binary a lot smaller
- lto = true
-+codegen-units = 1
-+opt-level = "z"
-+panic = "abort"
-
- [package.metadata.release]
- allow-branch = ["main"]
diff --git a/testing/mdnsd/APKBUILD b/testing/mdnsd/APKBUILD
index b418125d1f8..0f3a5ea180b 100644
--- a/testing/mdnsd/APKBUILD
+++ b/testing/mdnsd/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Miguel Terron <miguel.a.terron@gmail.com>
# Maintainer: Miguel Terron <miguel.a.terron@gmail.com>
pkgname=mdnsd
-pkgver=0.11
-pkgrel=0
+pkgver=0.12
+pkgrel=1
pkgdesc="Embeddable Multicast DNS Daemon"
url="https://github.com/troglobit/mdnsd"
arch="all"
@@ -43,8 +43,9 @@ package() {
install -m644 -D "$srcdir"/$pkgname.confd \
"$pkgdir"/etc/conf.d/$pkgname
}
+
sha512sums="
417c394b24ee1ac87f83a6040df963e948191007ef9b27b28537ecdf7b01e126b0069f6ef96e579394d75b90194f1de975edb9e71486e16815372ea379006601 mdnsd.confd
8a4fb736263ec05aa439f320091a43dfea64fb7e89fd0af5ada3981d0461009f55e1ac598a143a9458063eaf117e1b7b788463f0af316153fa6bfea864019a99 mdnsd.initd
-1d7c8641c9ee5cdc806c54bdf0aaa3d6043c0c83c79249ac9d952fe632991caebb9eb9c9ef9a7fc797e701ccf22517d2b0449716ea26683a7e2b476ecb8b24e7 mdnsd-0.11.tar.xz
+c28917bfb16f1fa6d3594a4e98f43cae7cc5bfcb31dac6bc8eeafae60e05b15790245d859137e0c15838893f04365c2a48331b6082fa5b17ff5ae3665c963de6 mdnsd-0.12.tar.xz
"
diff --git a/testing/mdp/APKBUILD b/testing/mdp/APKBUILD
index 6cced9038a8..0546db01337 100644
--- a/testing/mdp/APKBUILD
+++ b/testing/mdp/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Galen Abell <galen@galenabell.com>
pkgname=mdp
pkgver=1.0.15
-pkgrel=0
+pkgrel=1
pkgdesc="command line based markdown presentation tool"
url="https://github.com/visit1985/mdp"
arch="all"
diff --git a/testing/mediaelch/APKBUILD b/testing/mediaelch/APKBUILD
deleted file mode 100644
index 6ea3652ec34..00000000000
--- a/testing/mediaelch/APKBUILD
+++ /dev/null
@@ -1,54 +0,0 @@
-# Contributor: Galen Abell <galen@galenabell.com>
-# Maintainer: Galen Abell <galen@galenabell.com>
-pkgname=mediaelch
-pkgver=2.8.16
-pkgrel=1
-pkgdesc="Media Manager for Kodi"
-url="https://github.com/Komet/MediaElch"
-# armhf: limited by qt5-qtdeclarative
-arch="all !armhf"
-license="LGPL-3.0-only"
-depends="qt5-qtquickcontrols"
-makedepends="
- cmake
- qt5-qtbase-dev
- qt5-qtmultimedia-dev
- qt5-qtdeclarative-dev
- qt5-qtsvg-dev
- qt5-qttools-dev
- libmediainfo-dev
- curl-dev
- fortify-headers
- quazip-dev
- samurai
- xvfb-run
- "
-source="$pkgname-$pkgver.tar.gz::https://github.com/Komet/MediaElch/archive/v$pkgver.tar.gz"
-builddir="$srcdir/MediaElch-$pkgver"
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build -G Ninja \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DCMAKE_BUILD_TYPE=Release \
- -DUSE_EXTERN_QUAZIP=true \
- -DENABLE_TESTS=ON \
- $CMAKE_CROSSOPTS .
- xvfb-run -a cmake --build build
-}
-
-check() {
- cd build
- CTEST_OUTPUT_ON_FAILURE=TRUE xvfb-run -a ctest
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-
-sha512sums="
-60bdad6db21ffca61deccc8690e70a433853cbe0d5ac16d9852a7099440117caa947f6155095650aa8c0cbe524f6c0afde7fbc3148c5314c9eae34521890c83f mediaelch-2.8.16.tar.gz
-"
diff --git a/testing/mediascanner2/0001-rename-msg-to-message.patch b/testing/mediascanner2/0001-rename-msg-to-message.patch
new file mode 100644
index 00000000000..0f48b70ed7c
--- /dev/null
+++ b/testing/mediascanner2/0001-rename-msg-to-message.patch
@@ -0,0 +1,39 @@
+From 897636832b3fb5cb62aea5d32db65e41262c0a78 Mon Sep 17 00:00:00 2001
+From: Brandon Boese <brandonboese@protonmail.com>
+Date: Mon, 11 Mar 2024 15:56:53 -0400
+Subject: [PATCH 1/3] rename msg to message
+
+---
+ src/extractor/CMakeLists.txt | 2 +-
+ src/qml/MediaScanner.0.1/CMakeLists.txt | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/extractor/CMakeLists.txt b/src/extractor/CMakeLists.txt
+index 7bc6d3f..6e9579d 100644
+--- a/src/extractor/CMakeLists.txt
++++ b/src/extractor/CMakeLists.txt
+@@ -5,7 +5,7 @@ include_directories(.. ${CMAKE_CURRENT_BINARY_DIR})
+ # Build stubs/skeletons for D-Bus interface
+ find_program(gdbus_codegen gdbus-codegen)
+ if(NOT gdbus_codegen)
+- msg(FATAL_ERROR "Could not locate gdbus-codegen")
++ message(FATAL_ERROR "Could not locate gdbus-codegen")
+ endif()
+
+ add_custom_command(
+diff --git a/src/qml/MediaScanner.0.1/CMakeLists.txt b/src/qml/MediaScanner.0.1/CMakeLists.txt
+index e08ccb0..73b5146 100644
+--- a/src/qml/MediaScanner.0.1/CMakeLists.txt
++++ b/src/qml/MediaScanner.0.1/CMakeLists.txt
+@@ -61,7 +61,7 @@ install(
+ if(NOT CMAKE_CROSSCOMPILING)
+ find_program(qmlplugindump_exe qmlplugindump)
+ if(NOT qmlplugindump_exe)
+- msg(FATAL_ERROR "Could not locate qmlplugindump.")
++ message(FATAL_ERROR "Could not locate qmlplugindump.")
+ endif()
+
+ # qmlplugindump doesn't run reliably in the CI environment (it seems
+--
+2.43.2
+
diff --git a/testing/mediascanner2/0002-point-qmlplugindump-to-qmlplugindump-qt5.patch b/testing/mediascanner2/0002-point-qmlplugindump-to-qmlplugindump-qt5.patch
new file mode 100644
index 00000000000..267a343efaa
--- /dev/null
+++ b/testing/mediascanner2/0002-point-qmlplugindump-to-qmlplugindump-qt5.patch
@@ -0,0 +1,25 @@
+From 1af9d8f6209534c54c573b021e4f04e678bb090b Mon Sep 17 00:00:00 2001
+From: Brandon Boese <brandonboese@protonmail.com>
+Date: Mon, 11 Mar 2024 16:01:49 -0400
+Subject: [PATCH 2/3] point qmlplugindump to qmlplugindump-qt5
+
+---
+ src/qml/MediaScanner.0.1/CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/qml/MediaScanner.0.1/CMakeLists.txt b/src/qml/MediaScanner.0.1/CMakeLists.txt
+index 73b5146..489988a 100644
+--- a/src/qml/MediaScanner.0.1/CMakeLists.txt
++++ b/src/qml/MediaScanner.0.1/CMakeLists.txt
+@@ -59,7 +59,7 @@ install(
+ )
+
+ if(NOT CMAKE_CROSSCOMPILING)
+- find_program(qmlplugindump_exe qmlplugindump)
++ find_program(qmlplugindump_exe qmlplugindump-qt5)
+ if(NOT qmlplugindump_exe)
+ message(FATAL_ERROR "Could not locate qmlplugindump.")
+ endif()
+--
+2.43.2
+
diff --git a/testing/mediascanner2/0003-disable-coverage-report.patch b/testing/mediascanner2/0003-disable-coverage-report.patch
new file mode 100644
index 00000000000..a08bb6d4752
--- /dev/null
+++ b/testing/mediascanner2/0003-disable-coverage-report.patch
@@ -0,0 +1,58 @@
+From d41c684e2a40e0f9dc90e87cddfb912708fec7b6 Mon Sep 17 00:00:00 2001
+From: Brandon Boese <brandonboese@protonmail.com>
+Date: Mon, 11 Mar 2024 16:18:38 -0400
+Subject: [PATCH 3/3] disable coverage report
+
+---
+ CMakeLists.txt | 31 -------------------------------
+ 1 file changed, 31 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index e92d036..ddaaea4 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -39,7 +39,6 @@ if(${FULL_WARNINGS})
+ # C does not have any more warning flags.
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Weffc++")
+ endif()
+-find_package(CoverageReport)
+
+ include(GNUInstallDirs)
+ set(LIBDIR $CMAKE_INSTALL_LIBDIR)
+@@ -65,33 +64,3 @@ install(
+ FILES ${CMAKE_CURRENT_BINARY_DIR}/mediascanner-2.0.service
+ DESTINATION lib/systemd/user
+ )
+-
+-enable_coverage_report(
+- TARGETS
+- mediascanner
+- extractor-client
+- extractor-backend
+- mediascanner-extractor
+- scannerstuff
+- scannerdaemon
+- ms-dbus
+- mediascanner-dbus
+- mediascanner-qml
+- query
+- mountwatcher
+- FILTER
+- ${CMAKE_SOURCE_DIR}/tests/*
+- ${CMAKE_BINARY_DIR}/*
+- TESTS
+- basic
+- test_mediastore
+- test_metadataextractor
+- test_extractorbackend
+- test_sqliteutils
+- test_mfbuilder
+- test_subtreewatcher
+- test_volumemanager
+- test_dbus
+- test_qml
+- test_util
+-)
+--
+2.43.2
+
diff --git a/testing/mediascanner2/APKBUILD b/testing/mediascanner2/APKBUILD
new file mode 100644
index 00000000000..690411f6a62
--- /dev/null
+++ b/testing/mediascanner2/APKBUILD
@@ -0,0 +1,53 @@
+# Maintainer: Brandon Boese <brandonboese@protonmail.com>
+pkgname=mediascanner2
+pkgver=0.115
+pkgrel=0
+pkgdesc="Media scanner for Lomiri"
+url="https://gitlab.com/ubports/development/core/mediascanner2.git"
+arch="all"
+license="GPL-3.0-only AND LGPL-3.0-only"
+source="https://gitlab.com/ubports/development/core/mediascanner2/-/archive/$pkgver/mediascanner2-$pkgver.tar.gz
+ 0001-rename-msg-to-message.patch
+ 0002-point-qmlplugindump-to-qmlplugindump-qt5.patch
+ 0003-disable-coverage-report.patch
+ "
+makedepends="
+ cmake
+ dbus-cpp-dev
+ gdk-pixbuf-dev
+ glib-dev
+ gmock
+ gtest-dev
+ gstreamer-dev
+ gst-plugins-base-dev
+ libapparmor-dev
+ libexif-dev
+ qt5-qtbase-dev
+ qt5-qtdeclarative-dev
+ samurai
+ sqlite-dev
+ taglib-dev
+ udisks2-dev
+ "
+options="!check" # tests fail to find gmock
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=None \
+ -DENABLE_TESTS=OFF
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+82399ba394f6d858374de26d722b932812eb4c519993f1f5262c7b7b59eb620b56d24938c00bff9ccd3ab1759be451d2b782e1ab32f8fe4254635431462d67db mediascanner2-0.115.tar.gz
+18da589b6ba8394d175ea55d94407ebbd54e0dda90137e0ec172706b766115e80b6140ab4556dad5fa27cdec3f80acedb29d5db150ef7d3ba37b178c48b902c1 0001-rename-msg-to-message.patch
+afa4ab639e8e72b8964e5a2ede6cb69ae207f298e5aaf966e9d3152da7ae19c46123c7a938b2a5499703f34aee703b73a5ba45a89c5c4116b061d79e5984fabb 0002-point-qmlplugindump-to-qmlplugindump-qt5.patch
+3bb35becaf1e38fee9db96fc3e9410a221d2db5e757cd8e4a52a87ba18ff8d259698beb5d742e07ed06ba99fe77cb66fd6d2bb102069719b291f848a2afbe947 0003-disable-coverage-report.patch
+"
diff --git a/testing/mediastreamer2-plugin-openh264/APKBUILD b/testing/mediastreamer2-plugin-openh264/APKBUILD
index a180673f5bc..37414b34a5d 100644
--- a/testing/mediastreamer2-plugin-openh264/APKBUILD
+++ b/testing/mediastreamer2-plugin-openh264/APKBUILD
@@ -1,35 +1,33 @@
# Contributor: Martin Schmidt <martin.schmidt13@gmx.de>
# Maintainer: Martin Schmidt <martin.schmidt13@gmx.de>
-_commit=2c3abf52824ad23a4caae7565ef158ef91767704
pkgname=mediastreamer2-plugin-openh264
-pkgver=1.2.1_git20200309
+pkgver=5.2.0_git20231020
+_commit=ed96173dc74ca48e700cafea53f1d49575d84c70
pkgrel=0
pkgdesc="An H.264 encoder/decoder plugin for mediastreamer2 based on the openh264 library"
url="https://gitlab.linphone.org/BC/public/msopenh264"
arch="all"
license="GPL-2.0-or-later"
options="!check" # no test available
-makedepends="cmake ortp-dev bctoolbox-dev mediastreamer2-dev openh264-dev"
-
-source="$pkgname-$_commit.tar.gz::https://gitlab.linphone.org/BC/public/msopenh264/-/archive/$_commit.tar.gz
-"
-
+makedepends="
+ bctoolbox-dev
+ cmake
+ mediastreamer2-dev
+ openh264-dev
+ ortp-dev
+ samurai
+ "
+source="$pkgname-$_commit.tar.gz::https://gitlab.linphone.org/BC/public/msopenh264/-/archive/$_commit.tar.gz"
builddir="$srcdir/msopenh264-$_commit"
-prepare() {
- default_prepare
- sed -i 's/ORTP\ REQUIRED/ortp\ REQUIRED/g' src/CMakeLists.txt
-}
-
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
-DCMAKE_MODULE_PATH=/usr/lib/cmake \
-DCMAKE_SKIP_INSTALL_RPATH=ON \
- -DENABLE_STRICT=NO \
- -DENABLE_SHARED=YES
+ -DBUILD_SHARED_LIBS=YES
cmake --build build
}
@@ -37,4 +35,7 @@ build() {
package() {
DESTDIR="$pkgdir" cmake --build build --target install
}
-sha512sums="7a62edd688a1336aee8f30d72b8e8d5bee62e68e02a23cfc4c043af07e8f231a247ce5a817538abe6f61956cb11567752b15228b57ef3f67a5125789328d3897 mediastreamer2-plugin-openh264-2c3abf52824ad23a4caae7565ef158ef91767704.tar.gz"
+
+sha512sums="
+c4487675b7ea16ed4a967d0cbc0a9c3e8aff8e0832805b9a3fb2f38d836008663f68c37253f04d04237b306e709c357e19c34598242cc9fcdbe7bbdce57e9d3c mediastreamer2-plugin-openh264-ed96173dc74ca48e700cafea53f1d49575d84c70.tar.gz
+"
diff --git a/testing/mediastreamer2-plugin-x264/APKBUILD b/testing/mediastreamer2-plugin-x264/APKBUILD
index 2a614937b15..13e79f01b25 100644
--- a/testing/mediastreamer2-plugin-x264/APKBUILD
+++ b/testing/mediastreamer2-plugin-x264/APKBUILD
@@ -3,38 +3,37 @@
_commit=f4fe74056d0474b42025d95449ec859e984d78ea
pkgname=mediastreamer2-plugin-x264
pkgver=20200722
-pkgrel=2
+pkgrel=6
pkgdesc="GPL plugin to bring video H264 encoding/decoding capabilities to mediastreamer2 applications"
url="https://gitlab.linphone.org/BC/public/msx264"
arch="all"
license="GPL-2.0-or-later"
options="!check" # no test available
-makedepends="cmake ortp-dev bctoolbox-dev mediastreamer2-dev x264-dev"
-
+makedepends="cmake ortp-dev bctoolbox-dev mediastreamer2-dev x264-dev samurai"
source="$pkgname-$_commit.tar.gz::https://gitlab.linphone.org/BC/public/msx264/-/archive/$_commit.tar.gz
-"
-
+ fix-cmakelists.patch
+ no-werror.patch
+ "
builddir="$srcdir/msx264-$_commit"
-prepare() {
- default_prepare
- sed -i 's/ORTP\ REQUIRED/ortp\ REQUIRED/g' src/CMakeLists.txt
-}
-
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
-DCMAKE_MODULE_PATH=/usr/lib/cmake \
-DCMAKE_SKIP_INSTALL_RPATH=ON \
- -DENABLE_STRICT=NO \
-DENABLE_SHARED=YES
- make -C build
+ cmake --build build
}
package() {
- make -C build DESTDIR="$pkgdir" install
+ DESTDIR="$pkgdir" cmake --install build
}
-sha512sums="cc295d06b13fddaf97669ef20bf239622ea0690bd8d193df0f435831caf433f5b036be83bfdd9a261af8d51c272d4e2b614cfd2af04766797c86314d46782065 mediastreamer2-plugin-x264-f4fe74056d0474b42025d95449ec859e984d78ea.tar.gz"
+
+sha512sums="
+cc295d06b13fddaf97669ef20bf239622ea0690bd8d193df0f435831caf433f5b036be83bfdd9a261af8d51c272d4e2b614cfd2af04766797c86314d46782065 mediastreamer2-plugin-x264-f4fe74056d0474b42025d95449ec859e984d78ea.tar.gz
+179d6451494275566286fe437323ddf34ad54afca8770c24723a0a956b55b56e547aa70ca34c7956beda8618914b3e6e0eec92bd8fd567e5828dc7271e6f56b9 fix-cmakelists.patch
+aa8663ea222d6152fe9a101a3060a668876f22875bbc496b6e549a00a2660a3e9eeb95cda2189431968934ace90cabad7575d76ae65127171d10f84f2589567f no-werror.patch
+"
diff --git a/testing/mediastreamer2-plugin-x264/fix-cmakelists.patch b/testing/mediastreamer2-plugin-x264/fix-cmakelists.patch
new file mode 100644
index 00000000000..f17ef6e1071
--- /dev/null
+++ b/testing/mediastreamer2-plugin-x264/fix-cmakelists.patch
@@ -0,0 +1,18 @@
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -25,12 +25,12 @@
+ include("${EP_ortp_CONFIG_DIR}/OrtpConfig.cmake")
+ else()
+ find_package(Mediastreamer2 REQUIRED)
+- find_package(ORTP REQUIRED)
++ find_package(Ortp REQUIRED)
+ endif()
+
+ set(LIBS
+- ${ORTP_LIBRARIES}
+- ${MEDIASTREAMER2_LIBRARIES}
++ ${Ortp_TARGET}
++ ${Mediastreamer2_TARGET}
+ ${X264_LIBRARIES}
+ )
+
diff --git a/testing/mediastreamer2-plugin-x264/no-werror.patch b/testing/mediastreamer2-plugin-x264/no-werror.patch
new file mode 100644
index 00000000000..64e2830a685
--- /dev/null
+++ b/testing/mediastreamer2-plugin-x264/no-werror.patch
@@ -0,0 +1,17 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index ba97d92..276d570 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -72,10 +72,10 @@ if(NOT MSVC)
+ if(CMAKE_C_COMPILER_ID MATCHES "Clang")
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-error=unknown-warning-option")
+ if(NOT IOS)
+- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Werror -Wextra")
++ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wextra")
+ endif()
+ elseif(CMAKE_C_COMPILER_ID STREQUAL "GNU")
+- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Werror -Wextra -Wno-error=pragmas")
++ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wextra -Wno-error=pragmas")
+ endif()
+ endif()
+
diff --git a/testing/mediastreamer2/APKBUILD b/testing/mediastreamer2/APKBUILD
index ef56dce222c..1cef0f71238 100644
--- a/testing/mediastreamer2/APKBUILD
+++ b/testing/mediastreamer2/APKBUILD
@@ -1,23 +1,50 @@
# Contributor: Francesco Colista <fcolista@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=mediastreamer2
-pkgver=5.1.20
+pkgver=5.3.38
pkgrel=0
pkgdesc="library written in C that allows you to create and run audio and video streams"
url="https://www.linphone.org/technical-corner/mediastreamer2"
arch="all"
license="GPL-2.0-or-later"
options="!check" # no test available
-makedepends="cmake samurai gettext-dev ffmpeg4-dev ortp-dev
- libxv-dev speex-dev speexdsp-dev libsrtp-dev
- v4l-utils-dev bctoolbox-dev mesa-dev glew-dev
- opus-dev libpcap-dev spandsp-dev tiff-dev libtheora-dev
- alsa-lib-dev python3-dev gsm-dev sqlite-dev libxml2-dev
- jpeg-dev libvpx-dev bzrtp-dev bcg729-dev grep
- doxygen graphviz"
+makedepends="
+ alsa-lib-dev
+ bcg729-dev
+ bctoolbox-dev
+ bzrtp-dev
+ cmake
+ doxygen
+ ffmpeg4-dev
+ gettext-dev
+ glew-dev
+ graphviz
+ grep
+ gsm-dev
+ jpeg-dev
+ libpcap-dev
+ libsrtp-dev
+ libtheora-dev
+ libvpx-dev
+ libxml2-dev
+ libxv-dev
+ mesa-dev
+ opus-dev
+ ortp-dev
+ python3-dev
+ samurai
+ spandsp-dev
+ speex-dev
+ speexdsp-dev
+ sqlite-dev
+ tiff-dev
+ v4l-utils-dev
+ "
subpackages="$pkgname-dev $pkgname-doc"
source="https://gitlab.linphone.org/BC/public/mediastreamer2/-/archive/$pkgver/mediastreamer2-$pkgver.tar.gz
- missing-def-o-binary.patch"
+ fix-cmake-path.patch
+ fix-soname.patch
+ "
build() {
cmake -G Ninja -B build \
@@ -35,7 +62,7 @@ build() {
-DENABLE_FFMPEG=YES \
-DENABLE_SPEEX_CODEC=YES \
-DENABLE_SPEEX_DSP=YES \
- -DENABLE_SHARED=YES \
+ -DBUILD_SHARED_LIBS=YES \
-DENABLE_VPX=YES \
-DENABLE_UNIT_TESTS=NO
cmake --build build
@@ -43,18 +70,11 @@ build() {
package() {
DESTDIR="$pkgdir" cmake --install build
-}
-
-dev() {
- default_dev
- mkdir -p "$subpkgdir"/usr/lib/cmake/Mediastreamer2
- mv "$pkgdir"/usr/share/Mediastreamer2/cmake/* "$subpkgdir"/usr/lib/cmake/Mediastreamer2
- # Remove empty dirs
- rmdir "$pkgdir"/usr/share/Mediastreamer2/cmake
- rmdir "$pkgdir"/usr/share/Mediastreamer2
+ rm -r "$pkgdir"/usr/include/OpenGL
}
sha512sums="
-919eb967ba15a8266912ea74fa3a3b7b2157ecd67b4f94d5fe39a52ecbf4002a0aa699e7f51e3dbd581740044b9606c42a36c756dcaa12b26802849b5986a3dc mediastreamer2-5.1.20.tar.gz
-d0158e03a7552580a9d9f04226c18a31a23d3cc502d52b51a9b083a5c32094ea7349495a7f74316eb727c2478a80b0385e1a28798b5b7d6e85e463485e33a822 missing-def-o-binary.patch
+1c3da2ccf14e01f5f439e0264b130088f592c659999dcf3da5f429a7c3caf1ea535c483ef197302eb3f3bfc28ba524dbb034fc2265f9cb59f3872016377488b8 mediastreamer2-5.3.38.tar.gz
+964467b5f493915d4e920b3afce9ce0cacc9bb34a7886c4b4e06340d6fa646754a03ce18ec66a4a3b82d63ec52330a0b21c842d80e47a6685eb942bb01b1869b fix-cmake-path.patch
+9aa98303d53c622cd8ee6386544db337eb5069d86754876d6901a0d9bebe6e6d623f41c7ae900bb2649254b503ee63367ce612bc4bec9423fc3d57cfece119c2 fix-soname.patch
"
diff --git a/testing/mediastreamer2/fix-cmake-path.patch b/testing/mediastreamer2/fix-cmake-path.patch
new file mode 100644
index 00000000000..48323e8f3cd
--- /dev/null
+++ b/testing/mediastreamer2/fix-cmake-path.patch
@@ -0,0 +1,14 @@
+Adapted from https://github.com/OpenMandrivaAssociation/mediastreamer/blob/master/mediastreamer2-5.3.6-cmake-config-location.patch
+
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -680,7 +680,7 @@ if(ENABLE_TOOLS AND NOT ANDROID)
+ )
+
+ include(CMakePackageConfigHelpers)
+-set(CMAKE_MODULES_INSTALL_DIR "${CMAKE_INSTALL_DATADIR}/${PROJECT_NAME}/cmake")
++set(CMAKE_MODULES_INSTALL_DIR "${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}/")
+ configure_package_config_file("cmake/${PROJECT_NAME}Config.cmake.in" "${PROJECT_BINARY_DIR}/${PROJECT_NAME}Config.cmake"
+ INSTALL_DESTINATION "${CMAKE_MODULES_INSTALL_DIR}"
+ PATH_VARS MS2_PLUGINS_DIR
+
diff --git a/testing/mediastreamer2/fix-soname.patch b/testing/mediastreamer2/fix-soname.patch
new file mode 100644
index 00000000000..05e36b57cf4
--- /dev/null
+++ b/testing/mediastreamer2/fix-soname.patch
@@ -0,0 +1,12 @@
+Patch-Source: https://github.com/OpenMandrivaAssociation/mediastreamer/blob/master/mediastreamer2-5.3.6-soname.patch
+
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -617,6 +617,7 @@ if(BUILD_SHARED_LIBS)
+ set_target_properties(mediastreamer2 PROPERTIES SOVERSION ${MEDIASTREAMER_SO_VERSION})
+ else()
+
++ set_target_properties(mediastreamer2 PROPERTIES SOVERSION ${MEDIASTREAMER_SO_VERSION})
+
+ #Workaround for the Debian 11 issue with conflict between libc and libtirpc
+ #/usr/bin/ld: /lib/x86_64-linux-gnu/libtirpc.so.3: warning: common of `rpc_createerr@@GLIBC_2.2.5' overridden by definition from /lib/x86_64-linux-gnu/libc.so.6
diff --git a/testing/mediastreamer2/missing-def-o-binary.patch b/testing/mediastreamer2/missing-def-o-binary.patch
deleted file mode 100644
index 7515a6c85e3..00000000000
--- a/testing/mediastreamer2/missing-def-o-binary.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-diff --git a/src/otherfilters/mspcapfileplayer.c b/src/otherfilters/mspcapfileplayer.c
-index 1337089..8841882 100644
---- a/src/otherfilters/mspcapfileplayer.c
-+++ b/src/otherfilters/mspcapfileplayer.c
-@@ -33,8 +33,9 @@
- #include <fcntl.h>
- #include <sys/types.h>
- #include <sys/stat.h>
--
--
-+#ifndef O_BINARY
-+#define O_BINARY 0
-+#endif
-
- static int player_close(MSFilter *f, void *arg);
-
diff --git a/testing/mednafen/APKBUILD b/testing/mednafen/APKBUILD
deleted file mode 100644
index 27d6076d029..00000000000
--- a/testing/mednafen/APKBUILD
+++ /dev/null
@@ -1,41 +0,0 @@
-# Contributor: August Klein <amatcoder@gmail.com>
-# Maintainer: August Klein <amatcoder@gmail.com>
-pkgname=mednafen
-pkgver=1.27.1
-pkgrel=0
-pkgdesc="A command-line multi-system emulator"
-url="https://mednafen.github.io/"
-arch="all !s390x"
-license="GPL-2.0-only"
-makedepends="alsa-lib-dev flac-dev libogg-dev libsndfile-dev libvorbis-dev
- lzo-dev sdl2-dev zlib-dev"
-subpackages="$pkgname-lang"
-source="https://mednafen.github.io/releases/files/mednafen-$pkgver.tar.xz"
-builddir="$srcdir"/$pkgname
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr
- make
-}
-
-check() {
- make check
-}
-
-lang() {
- default_lang
- mkdir -p "$subpkgdir"/usr/share/$pkgname
- mv "$subpkgdir"/usr/share/locale "$subpkgdir"/usr/share/$pkgname
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- rm -rf "$pkgdir"/usr/lib/charset.alias
-}
-
-sha512sums="
-f55d86baa8c77fc98aae63a38235eb64f64131f180c40ed1ac7cd2ad845230348fbba05643eb5e6af203e56c39c8011b632d2bcecbd2c9f2c19b2447f6b99e83 mednafen-1.27.1.tar.xz
-"
diff --git a/testing/mednaffe/APKBUILD b/testing/mednaffe/APKBUILD
deleted file mode 100644
index 4aeb4fd1c4d..00000000000
--- a/testing/mednaffe/APKBUILD
+++ /dev/null
@@ -1,27 +0,0 @@
-# Contributor: Will Sinatra <wpsinatra@gmail.com>
-# Maintainer: Will Sinatra <wpsinatra@gmail.com>
-pkgname=mednaffe
-pkgver=0.9.1
-pkgrel=0
-pkgdesc="front-end (GUI) for mednafen emulator"
-url="https://github.com/AmatCoder/mednaffe"
-license="GPL-3.0-only"
-arch="all !s390x" #these do not have mednafen packaged for them
-makedepends="gtk+3.0-dev"
-depends="mednafen gtk+3.0"
-source=https://github.com/AmatCoder/mednaffe/releases/download/$pkgver/mednaffe-$pkgver.tar.gz
-subpackages="$pkgname-doc"
-options="!check"
-
-build() {
- ./configure --prefix=/usr --enable-gtk3
- make
-}
-
-package() {
- make prefix="$pkgdir"/usr install
-}
-
-sha512sums="
-02390e7960511756aafb925b77c9eebc099ac81623dfb640dbfcbb342061f885955599d2edbc1d84b8818f7ce459eac183917507235c58c27ce9ab2b3d8eb198 mednaffe-0.9.1.tar.gz
-"
diff --git a/testing/meep/APKBUILD b/testing/meep/APKBUILD
index 42b4696cf7e..ed6ba607786 100644
--- a/testing/meep/APKBUILD
+++ b/testing/meep/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Isaac Dunham <ibid.ag@gmail.com>
# Maintainer:
pkgname=meep
-pkgver=1.22.0
-pkgrel=1
+pkgver=1.28.0
+pkgrel=0
pkgdesc="FDTD finite-difference time-domain solver"
url="https://meep.readthedocs.io/"
arch="x86_64 ppc64le s390x"
@@ -37,5 +37,5 @@ package() {
}
sha512sums="
-0b448693472658d61ab9314e065083105f4d08d5bcee912c01960bce03b308996b75fdac2fdb2882115836ea8ec6185cd20ad303be895d43ebdd51097634b92a meep-1.22.0.tar.gz
+1a50ee1ebd5646e838fa57a95169a77d3d30e0d96016faeacccab4a3ba68c6763d1379f8087b3ec83a79202e87c45056321ca2cca6a720cfd700653fe35a917d meep-1.28.0.tar.gz
"
diff --git a/testing/megatools/APKBUILD b/testing/megatools/APKBUILD
index d9b1c100244..ab19c4c1bbc 100644
--- a/testing/megatools/APKBUILD
+++ b/testing/megatools/APKBUILD
@@ -1,42 +1,47 @@
+# Contributor: Jonas Marklen <txc@txc.se>
# Contributor: H <agathos5@gmail.com>
-# Maintainer:
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
pkgname=megatools
-pkgver=1.10.3
-pkgrel=0
-pkgdesc="collection of programs for accessing Mega.nz service"
+pkgver=1.11.1.20230212
+pkgrel=1
+pkgdesc="Collection of programs for accessing Mega.nz service"
url="https://megatools.megous.com"
arch="all"
license="GPL-2.0-only"
-makedepends="curl-dev glib-dev openssl-dev gmp-dev asciidoc"
-subpackages="$pkgname-doc"
+makedepends="
+ asciidoc
+ curl-dev
+ docbook2x
+ glib-dev
+ gmp-dev
+ meson
+ openssl-dev
+ "
+subpackages="$pkgname-doc $pkgname-bash-completion"
source="https://megatools.megous.com/builds/megatools-$pkgver.tar.gz"
build() {
- ./configure --prefix=/usr
- make
+ abuild-meson \
+ -Db_lto=true \
+ . output
+ meson compile -C output
}
check() {
- make check
- for i in megacopy megadf megadl megaget megals megamkdir megaput megareg megarm; do
- msg $i
- ./$i --version
- done
+ meson test --no-rebuild --print-errorlogs -C output
}
package() {
- #make DESTDIR="$pkgdir" install
- ./install-sh -c -d "$pkgdir/usr/bin"
- ./install-sh -c -d "$pkgdir/usr/share/doc/megatools"
- ./install-sh -c -d "$pkgdir/usr/share/man/man1"
- ./install-sh -c -d "$pkgdir/usr/share/man/man5"
- ./install-sh -c -d "$pkgdir/usr/share/man/man7"
- ./install-sh -c -m 755 megacopy megadf megadl megaget megals megamkdir megaput megareg megarm "$pkgdir/usr/bin"
- ./install-sh -c -m 644 LICENSE NEWS TODO README INSTALL HACKING "$pkgdir/usr/share/doc/megatools"
- ./install-sh -c -m 644 docs/megadf.1 docs/megaget.1 docs/megals.1 docs/megamkdir.1 docs/megaput.1 docs/megareg.1 docs/megarm.1 \
- docs/megacopy.1 docs/megadl.1 "$pkgdir/usr/share/man/man1"
- ./install-sh -c -m 644 docs/megarc.5 "$pkgdir/usr/share/man/man5"
- ./install-sh -c -m 644 docs/megatools.7 "$pkgdir/usr/share/man/man7"
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+
+ install -Dm644 contrib/bash-completion/megatools \
+ "$pkgdir"/usr/share/bash-completion/completions/megatools
+
+ for bin in megacopy megadf megadl megaget megals megamkdir megaput megareg megarm; do
+ ln -s megatools "$pkgdir"/usr/share/bash-completion/completions/$bin
+ done
}
-sha512sums="cf431e151f3f7e1a77fcfe07092694f861eca43ab88bb4e0d4de72f01662e9140c51891f8f5cf3cf66d3a04b64a55d57fd766c3febf2fc5cee1720558ff2079b megatools-1.10.3.tar.gz"
+sha512sums="
+8d96533c6ae117f38e095b16f4c3241a9170397174befaff9caf81b598addbe60c89c05d29b20efead462a8f263f799107653cab1ad429ab2ba2fe0dc4fbbb39 megatools-1.11.1.20230212.tar.gz
+"
diff --git a/testing/megazeux/APKBUILD b/testing/megazeux/APKBUILD
new file mode 100644
index 00000000000..da1a1309417
--- /dev/null
+++ b/testing/megazeux/APKBUILD
@@ -0,0 +1,40 @@
+# Contributor: Adrian Siekierka <kontakt@asie.pl>
+# Maintainer: Adrian Siekierka <kontakt@asie.pl>
+pkgname=megazeux
+pkgver=2.93
+pkgrel=0
+pkgdesc="Game creation system"
+url="https://www.digitalmzx.com/"
+# Compiling on s390x currently leads to an endianness misdetection, and thus
+# a test failure.
+# https://www.digitalmzx.com/forums/index.php?app=tracker&showissue=830
+arch="all !s390x"
+license="GPL-2.0-or-later"
+makedepends="libpng-dev libvorbis-dev sdl2-dev zlib-dev"
+subpackages="$pkgname-doc"
+_srcprefix=mzx${pkgver/.}
+source="${_srcprefix}src.tar.xz::https://www.digitalmzx.com/download.php?latest=src&ver=$pkgver"
+builddir="$srcdir/$_srcprefix/"
+
+build() {
+ ./config.sh \
+ --platform unix \
+ --prefix /usr \
+ --bindir /usr/lib/megazeux \
+ --libdir /usr/lib \
+ --gamesdir /usr/bin
+
+ make
+}
+
+check() {
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir/" install
+}
+
+sha512sums="
+23356d28b59f8da5865f4535fec106f7b25f3330b58e5a1ec8839ebf2c2d529d30582ebf1753ba798f23047cf9a0ae3a1e598a672ef68b25649d12979b83a012 mzx293src.tar.xz
+"
diff --git a/testing/melonds/0000-remove-failing-assertion-x86.patch b/testing/melonds/0000-remove-failing-assertion-x86.patch
deleted file mode 100644
index 19720587ec4..00000000000
--- a/testing/melonds/0000-remove-failing-assertion-x86.patch
+++ /dev/null
@@ -1,9 +0,0 @@
---- a/src/teakra/src/test.h
-+++ b/src/teakra/src/test.h
-@@ -34,5 +34,5 @@
- u16 opcode, expand;
- };
-
--static_assert(sizeof(TestCase) == 4312);
-+// static_assert(sizeof(TestCase) == 4312);
- static_assert(std::is_trivially_copyable_v<TestCase>);
diff --git a/testing/melonds/APKBUILD b/testing/melonds/APKBUILD
deleted file mode 100644
index e598554a14b..00000000000
--- a/testing/melonds/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=melonds
-pkgver=0.9.4
-pkgrel=0
-pkgdesc="Nintendo DS Emulator"
-url="http://melonds.kuribo64.net/"
-arch="all !armv7 !aarch64 !armhf" # arm disabled due to missing OpenGL on qt5-qtbase
-license="GPL-3.0-or-later"
-makedepends="cmake pkgconf libslirp-dev libepoxy-dev libarchive-dev sdl2-dev qt5-qtbase-dev"
-source="
- 0000-remove-failing-assertion-x86.patch
- $pkgname-$pkgver.tar.gz::https://github.com/Arisotura/melonDS/archive/$pkgver.tar.gz
- "
-options="!check" # No test suite
-builddir="$srcdir/melonDS-$pkgver"
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build \
- -DCMAKE_BUILD_TYPE=None \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DBUILD_SHARED_LIBS=True \
- $CMAKE_CROSSOPTS .
- make -C build
-}
-
-package() {
- make -C build DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-d5cabf1dfc3932bae2b939b4f87efd1caf14499d98f324f9013bd3e7ff33656e676c32d92ed912137a68f5e48163082472d722113d2957080174b187be52940f 0000-remove-failing-assertion-x86.patch
-76886ecfbabd00ae9261c33fcd4074b20e989f4357575bf68139538136fb0ba728d7590310ce4ae9c45670ee01ec315046f03f54e7ca9a359be202709b030f6d melonds-0.9.4.tar.gz
-"
diff --git a/testing/memdump/APKBUILD b/testing/memdump/APKBUILD
index e17fc9b90a0..293ffa52098 100644
--- a/testing/memdump/APKBUILD
+++ b/testing/memdump/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Niklas Cathor <niklas.cathor@gmx.de>
pkgname=memdump
pkgver=1.01
-pkgrel=0
+pkgrel=1
pkgdesc="utility to dump memory contents to standard output"
url="http://www.porcupine.org/forensics/tct.html"
arch="all"
diff --git a/testing/menumaker/APKBUILD b/testing/menumaker/APKBUILD
new file mode 100644
index 00000000000..6626ac1de21
--- /dev/null
+++ b/testing/menumaker/APKBUILD
@@ -0,0 +1,33 @@
+# Maintainer: Avis Orsetti <avisorsetti@riseup.net>
+# Contributor: Dominika Liberda <ja@sdomi.pl>
+pkgname=menumaker
+pkgver=0.99.14
+pkgrel=1
+pkgdesc="Heuristics-driven menu generator for Deskmenu, FluxBox, IceWM, OpenBox, WindowMaker and XFCE"
+url="https://menumaker.sourceforge.net/"
+arch="all"
+license="BSD-2-Clause"
+depends="python3"
+options="!check" # No tests provided
+source="https://downloads.sourceforge.net/menumaker/menumaker-$pkgver.tar.gz"
+
+prepare() {
+ default_prepare
+ ./configure --prefix=/usr --infodir=/usr/share/info
+}
+
+build() {
+ make
+}
+
+package() {
+ mkdir -p "$pkgdir"/usr/bin
+ make DESTDIR="$pkgdir" pkgdatadir=/usr/lib/menumaker install
+ make DESTDIR="$pkgdir" PYTHON_BIN="python3" pkgdatadir=/usr/lib/menumaker install-exec-local
+ rm -rf "$pkgdir"/usr/share/info
+ install -Dm644 COPYING "$pkgdir"/usr/share/licenses/$pkgname/license
+}
+
+sha512sums="
+81d44c1917d0fd4cd1c8b7cdd4ce12795fee7cc286959a7fc9dc6f84a096ea850a4348d98b6a7dce153c5d07fdb8b3aaf13f3476a9f34dd56646af3097d406d0 menumaker-0.99.14.tar.gz
+"
diff --git a/testing/mepo/APKBUILD b/testing/mepo/APKBUILD
index 2adc5174921..a0a02f57bdc 100644
--- a/testing/mepo/APKBUILD
+++ b/testing/mepo/APKBUILD
@@ -1,21 +1,26 @@
# Maintainer: Miles Alan <m@milesalan.com>
pkgname=mepo
-pkgver=0.4.1
+pkgver=1.2.0
pkgrel=0
-pkgrel=1
-arch="aarch64 x86_64" # Limited by zig aport
+_pkgdescbase="Fast, simple, and hackable OSM map viewer for Linux"
+pkgdesc="$_pkgdescbase (base SDL application)"
url="https://git.sr.ht/~mil/mepo"
-pkgdesc="Fast, simple, and hackable OSM map viewer for Linux"
-source="
-$pkgname-$pkgver.tar.gz::$url/archive/$pkgver.tar.gz
-"
+arch="aarch64 x86_64" # Limited by zig aport
license="GPL-3.0-or-later"
-depends="jq curl ncurses font-inconsolata-nerd"
-makedepends="zig>=0.9.1 curl-dev sdl2-dev sdl2_image-dev sdl2_ttf-dev sdl2_gfx-dev"
+makedepends="
+ curl-dev
+ sdl2-dev
+ sdl2_gfx-dev
+ sdl2_image-dev
+ sdl2_ttf-dev
+ zig>=0.11.0
+ "
+source="
+ $pkgname-$pkgver.tar.gz::https://git.sr.ht/~mil/mepo/archive/$pkgver.tar.gz
+ "
subpackages="
- $pkgname-xorg:xorg:noarch
- $pkgname-wayland:wayland:noarch
- $pkgname-framebuffer:framebuffer:noarch
+ $pkgname-doc
+ $pkgname-scripts:scripts:noarch
"
# We may want other than "baseline" for other targets, when enabled by zig
@@ -24,38 +29,28 @@ case "$CARCH" in
esac
build() {
- zig build -Drelease-safe=true ${cputarget:+-Dcpu="$cputarget"}
+ zig build -Doptimize=ReleaseSafe ${cputarget:+-Dcpu="$cputarget"}
+ zig-out/bin/mepo -docman > mepo.1
}
check() {
zig build test
}
-xorg() {
- pkgdesc="$pkgname (xorg)"
- depends="$depends $pkgname xdotool dmenu"
- mkdir -p "$subpkgdir"
-}
-
-wayland() {
- pkgdesc="$pkgname (wayland)"
- depends="$depends $pkgname bemenu"
- mkdir -p "$subpkgdir"
+package() {
+ install -Dm755 zig-out/bin/mepo* -t "$pkgdir/usr/bin/"
+ install -Dm644 zig-out/share/applications/mepo.desktop -t "$pkgdir/usr/share/applications/"
+ install -Dm644 zig-out/share/pixmaps/mepo.png -t "$pkgdir/usr/share/pixmaps/"
+ install -Dm644 mepo.1 -t "$pkgdir/usr/share/man/man1/"
}
-framebuffer() {
- pkgdesc="$pkgname (framebuffer)"
- depends="$depends $pkgname directfb mesa-gl kbd vis"
+scripts() {
+ pkgdesc="$_pkgdescbase (including base SDL application & scripts)"
+ depends="$pkgname=$pkgver-r$pkgrel zenity curl findutils xwininfo geoclue jq ncurses font-hack-nerd"
mkdir -p "$subpkgdir"
-}
-
-package() {
- mkdir -p "$pkgdir/usr/bin" "$pkgdir/usr/share/applications" "$pkgdir/usr/share/pixmaps"
- install zig-out/bin/* "$pkgdir/usr/bin/"
- install zig-out/share/applications/mepo.desktop "$pkgdir/usr/share/applications/"
- install zig-out/share/pixmaps/mepo.png "$pkgdir/usr/share/pixmaps/"
+ amove usr/bin/mepo_*
}
sha512sums="
-0baf41980e9b4c85276019151e258c7588261c825e59b159af4fa00e5f821df26fbc5598382dc7f9ce3bb395986d867d5dfdf519c211e5a4c2bee0062b44becf mepo-0.4.1.tar.gz
+e01b19a578f9ffa340eac62e1db75495b424fe9bff98b9d25cf2c3cd6a402e8c756463582757bbd979aa927cd2e8c1ded2c25f6746851fb2a39a1257794fbbf3 mepo-1.2.0.tar.gz
"
diff --git a/testing/mergerfs/APKBUILD b/testing/mergerfs/APKBUILD
index bf88433dae6..f3ff66592a4 100644
--- a/testing/mergerfs/APKBUILD
+++ b/testing/mergerfs/APKBUILD
@@ -3,21 +3,18 @@
# NOTE: For now we must use vendored libfuse, see the URL below for details.
# https://github.com/trapexit/mergerfs/blob/2.27.0/README.md#why-was-libfuse-embedded-into-mergerfs
pkgname=mergerfs
-pkgver=2.33.4
+pkgver=2.38.1
pkgrel=0
pkgdesc="A FUSE based union filesystem"
url="https://github.com/trapexit/mergerfs"
arch="all"
license="ISC"
-depends="libattr fuse"
+depends="libattr"
makedepends="autoconf automake libtool gettext-dev attr-dev linux-headers"
options="suid !check" # No test suite
subpackages="$pkgname-doc"
source="$pkgname-$pkgver.tar.gz::https://github.com/trapexit/mergerfs/archive/$pkgver.tar.gz"
-# Temporarily allow textrels on riscv64.
-[ "$CARCH" = "riscv64" ] && options="$options textrels"
-
prepare() {
default_prepare
echo "$pkgver" > "$builddir"/VERSION
@@ -33,5 +30,5 @@ package() {
}
sha512sums="
-e8bd0a502c045d6f93d34bce833108deaf1071a3e5c56eb61a59416067230d6e8f19f9b0f8c8aa9fe84060a886afae7509231c97fc6d9537d3ad3390ce342239 mergerfs-2.33.4.tar.gz
+f485df32bb0749898ea18e8f97996c74cb1fd998108baa3fc207e6c4f6d68f3a0905fd0cbb113e9aefa6444bf98ffe207de53d57579e393da259d9a79d2cc160 mergerfs-2.38.1.tar.gz
"
diff --git a/testing/merlin/APKBUILD b/testing/merlin/APKBUILD
index 94c64cc0c48..9e39c0b49ce 100644
--- a/testing/merlin/APKBUILD
+++ b/testing/merlin/APKBUILD
@@ -1,26 +1,31 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=merlin
-pkgver=4.5
+pkgver=4.14
_ocamlver=4.14
_pkgver="$pkgver-${_ocamlver//./}"
-pkgrel=1
+pkgrel=0
pkgdesc="Context sensitive completion for OCaml"
url="https://ocaml.github.io/merlin/"
-arch="all !riscv64" # restricted by ocaml
+arch="all !riscv64 !loongarch64" # ocaml
license="MIT"
-depends="ocaml-runtime ocaml-findlib"
+depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="
dune
ocaml
+ ocaml-csexp-dev
ocaml-findlib-dev
- ocaml-yojson-dev
ocaml-menhir-dev
- ocaml-csexp-dev
+ ocaml-yojson-dev
"
-options="!check" # XXX: tests are broken, see https://github.com/ocaml/merlin/issues/766
-subpackages="$pkgname-emacs::noarch $pkgname-vim::noarch"
-source="$pkgname-$pkgver.tar.bz2::https://github.com/ocaml/merlin/releases/download/v$_pkgver/merlin-$_pkgver.tbz"
+checkdepends="cmd:menhir jq ocaml-ppxlib-dev"
+options="!check" # requires annotation and source files that we delete in ocaml
+subpackages="
+ $pkgname-dev
+ $pkgname-emacs::noarch
+ $pkgname-vim::noarch
+ "
+source="$pkgname-$_pkgver.tar.bz2::https://github.com/ocaml/merlin/releases/download/v$_pkgver/merlin-$_pkgver.tbz"
builddir="$srcdir/$pkgname-$_pkgver"
# 32-bit archs
@@ -29,22 +34,22 @@ case "$CARCH" in
esac
build() {
- export OCAMLPATH=/usr/lib/ocaml
- dune build -p merlin,dot-merlin-reader @install --no-buffer --verbose
+ dune build -p merlin,merlin-lib,dot-merlin-reader \
+ @install --no-buffer --verbose
}
check() {
- dune runtest --no-buffer --verbose
+ dune runtest --build-dir=.testenv --no-buffer --verbose
}
package() {
dune install \
--destdir="$pkgdir" \
- --prefix=/usr \
- --libdir=/usr/lib/ocaml \
- merlin dot-merlin-reader
+ --docdir=/.omit \
+ merlin merlin-lib dot-merlin-reader
- rm -Rvf "$pkgdir"/usr/doc
+ install -Dvm644 LICENSE \
+ -t "$pkgdir"/usr/share/licenses/$pkgname/
}
emacs() {
@@ -63,6 +68,43 @@ vim() {
amove usr/share/merlin/vim
}
+dev() {
+ default_dev
+
+ cd "$pkgdir"
+
+ local path; find usr/lib/ocaml \( \
+ -name '*.cmt' -o \
+ -name '*.cmti' -o \
+ -name '*.ml' -o \
+ -name '*.mli' \
+ \) | while read -r path
+ do
+ amove "$path"
+ done
+}
+
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
-cc2cf2c208091b3ae435a8124617e56f2002b7091532002ab49a1f817d90a5c4f9cf0bc5741dc7f2526e0352c3ca95b42c3b3a17c6cbfb80ad73d42310a25d22 merlin-4.5.tar.bz2
+ebefec44c7f54b10aa85895baacecf778930ee0c4cd5a257836755ccadd9018c20379511e254efa98ed7d48fff9ba9eeb93b45a722cc1d2d61f51570cc57985d merlin-4.14-414.tar.bz2
"
diff --git a/testing/mesa-asahi/APKBUILD b/testing/mesa-asahi/APKBUILD
new file mode 100644
index 00000000000..d2860170431
--- /dev/null
+++ b/testing/mesa-asahi/APKBUILD
@@ -0,0 +1,339 @@
+# Maintainer: Milan P. Stanić <mps@arvanta.net>
+# this package is temporary for asahi linux
+pkgname=mesa-asahi
+_asahiver=20240228
+_commit=asahi-$_asahiver
+pkgver=24.0.0_pre$_asahiver
+pkgrel=1
+pkgdesc="Mesa DRI OpenGL library for Asahi linux"
+url="https://gitlab.freedesktop.org/asahi/mesa"
+arch="aarch64"
+license="MIT SGI-B-2.0 BSL-1.0"
+subpackages="
+ $pkgname-dev
+ $pkgname-dri-gallium:_gallium
+ $pkgname-va-gallium:_va
+ $pkgname-vdpau-gallium:_vdpau
+ $pkgname-glapi
+ $pkgname-egl
+ $pkgname-gl
+ $pkgname-gles
+ $pkgname-xatracker
+ $pkgname-osmesa
+ $pkgname-gbm
+ $pkgname-vulkan-swrast:_vulkan
+ $pkgname-rusticl
+ "
+_llvmver=17
+depends_dev="
+ libdrm-dev
+ libxext-dev
+ libxdamage-dev
+ libxcb-dev
+ libxshmfence-dev
+ "
+makedepends="
+ $depends_dev
+ bison
+ clang17-dev
+ expat-dev
+ findutils
+ flex
+ gettext
+ elfutils-dev
+ glslang-dev
+ libtool
+ libclc-dev
+ libxfixes-dev
+ libva-dev
+ libvdpau-dev
+ libx11-dev
+ libxml2-dev
+ libxrandr-dev
+ libxxf86vm-dev
+ llvm$_llvmver-dev
+ meson
+ py3-mako
+ python3
+ vulkan-loader-dev
+ wayland-dev
+ wayland-protocols
+ xorgproto
+ zlib-dev
+ zstd-dev
+ rust
+ rust-bindgen
+ spirv-llvm-translator-dev
+ "
+source="
+ https://gitlab.freedesktop.org/asahi/mesa/-/archive/$_commit/mesa-$_commit.tar.gz
+ "
+# $pkgname-$_commitid.tar.gz::https://gitlab.freedesktop.org/asahi/mesa/-/archive/$_commitid/mesa-$_commitid.tar.gz
+
+replaces="mesa-dricore"
+options="!check" # we skip tests intentionally
+builddir="$srcdir"/mesa-asahi-$_asahiver
+
+_dri_driverdir=/usr/lib/xorg/modules/dri
+_gallium_drivers="swrast,virgl,kmsro,asahi,svga,zink"
+_vulkan_drivers="swrast"
+_vulkan_layers="device-select,overlay"
+ _rusticl=true
+
+ # ~5% smaller
+ _lto=false
+
+build() {
+ # use -g1 to generate less debug info:
+ # 485 MiB -> ~80 MiB
+ export CFLAGS="$CFLAGS -O2 -g1"
+ export CXXFLAGS="$CXXFLAGS -O2 -g1"
+ export CPPFLAGS="$CPPFLAGS -O2 -g1"
+ echo '24.0.0' > VERSION
+ case "$CARCH" in
+ armhf|armv7)
+ # gnu2 tlsdesc is broken in binutils
+ export CFLAGS="$CFLAGS -mtls-dialect=gnu"
+ export CXXFLAGS="$CXXFLAGS -mtls-dialect=gnu"
+ ;;
+ esac
+
+ PATH="$PATH:/usr/lib/llvm$_llvmver/bin" \
+ abuild-meson \
+ -Db_ndebug=true \
+ -Db_lto=$_lto \
+ -Ddri-drivers-path=$_dri_driverdir \
+ -Dgallium-drivers=$_gallium_drivers \
+ -Dvulkan-drivers=$_vulkan_drivers \
+ -Dvulkan-layers=$_vulkan_layers \
+ -Dplatforms=x11,wayland \
+ -Dllvm=enabled \
+ -Dshared-llvm=enabled \
+ -Dshared-glapi=enabled \
+ -Dgbm=enabled \
+ -Dglx=dri \
+ -Dopengl=true \
+ -Dosmesa=true \
+ -Dgles1=enabled \
+ -Dgles2=enabled \
+ -Ddri3=enabled \
+ -Degl=enabled \
+ -Dgallium-extra-hud=true \
+ -Dgallium-nine=false \
+ -Dgallium-rusticl=$_rusticl \
+ -Dgallium-va=enabled \
+ -Dgallium-vdpau=enabled \
+ -Dgallium-xa=enabled \
+ -Dvideo-codecs=h264dec,h264enc,h265dec,h265enc \
+ . output
+
+ # Print config
+ meson configure --no-pager output
+
+ # parallel build workaround
+ ninja -C output \
+ src/compiler/nir/nir_intrinsics.h \
+ src/util/format/u_format_pack.h \
+ $build_first
+
+ meson compile -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+ provides="mesa"
+ provider_priority=0
+ replaces="mesa"
+
+}
+
+_dev() {
+ pkgdesc="Mesa development libraries"
+ depends="mesa-asahi=$pkgver-r$pkgrel"
+ provides="mesa-dev"
+ provider_priority=0
+ replaces="mesa-dev"
+}
+egl() {
+ pkgdesc="Mesa libEGL runtime libraries"
+ depends="mesa-asahi=$pkgver-r$pkgrel"
+ provider_priority=0
+ provides="mesa-egl"
+ replaces="mesa-egl"
+
+ amove usr/lib/libEGL.so*
+}
+
+gl() {
+ pkgdesc="Mesa libGL runtime libraries"
+ depends="mesa-asahi=$pkgver-r$pkgrel"
+ provider_priority=0
+ provides="mesa-gl"
+ replaces="mesa-gl"
+
+ amove usr/lib/libGL.so*
+}
+
+glapi() {
+ pkgdesc="Mesa shared glapi"
+ depends="mesa-asahi=$pkgver-r$pkgrel"
+ provider_priority=0
+ provides="mesa-glapi"
+ replaces="mesa-glapi"
+
+ amove usr/lib/libglapi.so.*
+}
+
+gles() {
+ pkgdesc="Mesa libGLESv2 runtime libraries"
+ depends="mesa-asahi=$pkgver-r$pkgrel"
+ provider_priority=0
+ provides="mesa-gles"
+ replaces="mesa-gles"
+
+ amove usr/lib/libGLES*.so*
+}
+xatracker() {
+ pkgdesc="Mesa XA state tracker for vmware"
+ depends="mesa-asahi=$pkgver-r$pkgrel"
+ provider_priority=0
+ provides="mesa-xatracker"
+ replaces="mesa-xatracker"
+
+ amove usr/lib/libxatracker*.so.*
+}
+
+osmesa() {
+ pkgdesc="Mesa offscreen rendering libraries"
+ depends="mesa-asahi=$pkgver-r$pkgrel"
+ provider_priority=0
+ provides="mesa-osmesa"
+ replaces="mesa-osmesa"
+
+ amove usr/lib/libOSMesa.so.*
+}
+
+gbm() {
+ pkgdesc="Mesa gbm library"
+ depends="mesa-asahi=$pkgver-r$pkgrel"
+ provider_priority=0
+ provides="mesa-gbm"
+ replaces="mesa-gbm"
+
+ amove usr/lib/libgbm.so.*
+}
+
+libd3dadapter9() {
+ pkgdesc="Mesa directx9 adapter"
+ depends="mesa-asahi=$pkgver-r$pkgrel"
+ provider_priority=0
+
+ amove usr/lib/d3d/d3dadapter9.so*
+}
+
+rusticl() {
+ pkgdesc="Mesa OpenCL driver"
+ depends="mesa-asahi=$pkgver-r$pkgrel clang$_llvmver-headers libclc~$_llvmver"
+ provider_priority=0
+ provides="mesa-rusticl"
+ replaces="mesa-rusticl"
+
+ amove usr/lib/libRusticlOpenCL.so.*
+ amove etc/OpenCL/vendors/
+}
+
+# Move links referencing the same file to the subpackage.
+# Usage: _mv_links <base directory> <example>
+# where <example> is one of the libraries covered by the megadriver.
+# The example is used to find other links that point to the same file.
+_mv_links() {
+ install -d "$subpkgdir"/$1
+ find -L "$pkgdir"/$1 -samefile "$pkgdir"/$1/$2 -print0 \
+ | xargs -0 -I{} mv {} "$subpkgdir"/$1/
+}
+
+_mv_vulkan() {
+ local i
+ install -d "$subpkgdir"/usr/lib
+ install -d "$subpkgdir"/usr/share/vulkan/icd.d
+ for i in "$@"; do
+ amove usr/lib/libvulkan_$i*.so
+ amove usr/share/vulkan/icd.d/${i}_*.*
+ done
+}
+
+# Mesa uses "megadrivers" where multiple drivers are linked into one shared
+# library. This library is then hard-linked to separate files (one for each driver).
+# Each subpackage contains one megadriver so that all the hard-links are preserved.
+
+_gallium() {
+ pkgdesc="Mesa gallium DRI drivers"
+ depends="mesa-asahi=$pkgver-r$pkgrel"
+ provider_priority=0
+ provides="mesa-dri-gallium"
+ replaces="mesa-dri-gallium"
+
+ # libgallium_dri.so
+ _mv_links $_dri_driverdir swrast_dri.so
+}
+
+_va() {
+ local n=${subpkgname##*-va-}
+ pkgdesc="Mesa $n VAAPI drivers"
+ depends="mesa-asahi=$pkgver-r$pkgrel libva"
+
+ case $n in
+ gallium)
+ # libgallium_drv_video.so
+ _mv_links /usr/lib/dri radeonsi_drv_video.so ;;
+ esac
+}
+
+_vdpau() {
+ local n=${subpkgname##*-vdpau-}
+ pkgdesc="Mesa $n VDPAU drivers"
+ depends="mesa-asahi=$pkgver-r$pkgrel libvdpau"
+
+ case $n in
+ gallium)
+ # libvdpau_gallium.so.1.0.0
+ _mv_links /usr/lib/vdpau libvdpau_radeonsi.so.1.0.0 ;;
+ esac
+}
+
+_vulkan() {
+ local n=${subpkgname##*-vulkan-}
+ pkgdesc="Mesa Vulkan API driver for $n"
+ depends="mesa-asahi=$pkgver-r$pkgrel"
+ provider_priority=0
+ provides="mesa-vulkan"
+ replaces="mesa-vulkan"
+
+ case $n in
+ swrast)
+ _mv_vulkan lvp ;;
+ esac
+}
+
+_vulkan_layers() {
+ pkgdesc="collection of vulkan layers from mesa"
+ depends="python3"
+ provider_priority=0
+ provides="mesa-vulkan-layers"
+
+ # Remove this after the release of the next stable (3.14)
+ # it originally was claed layer as it only packaged the
+ # overlay one but now it also packages device-select and
+ # intel-nullhw (on x86*)
+ provides="$pkgname-vulkan-layer=$pkgver-r$pkgrel"
+ replaces="$pkgname-vulkan-layer=$pkgver-r$pkgrel"
+
+ amove usr/share/vulkan/explicit_layer.d
+ amove usr/share/vulkan/implicit_layer.d
+ amove usr/lib/libVkLayer_*.so
+ amove usr/bin/mesa-overlay-control.py
+}
+
+sha512sums="
+7c0125e67ad34b283a4aebf2236d709c3d783583f7d851b725c8fd50767ca29c10337794953e291f6aa87eac2432856e00a90e363b820edd45e500e0891f78bb mesa-asahi-20240228.tar.gz
+"
diff --git a/testing/meson-tools/APKBUILD b/testing/meson-tools/APKBUILD
index 821369669ae..6235ed9f2a1 100644
--- a/testing/meson-tools/APKBUILD
+++ b/testing/meson-tools/APKBUILD
@@ -2,12 +2,12 @@
# Maintainer: Daniel Santana <daniel@santana.tech>
pkgname=meson-tools
pkgver=0.1
-pkgrel=0
+pkgrel=1
pkgdesc="Tools for Amlogic Meson ARM platforms"
url="https://github.com/afaerber/meson-tools"
arch="all"
license="GPL-2.0-or-later"
-makedepends_host="openssl-dev"
+makedepends_host="openssl-dev>3"
subpackages="$pkgname-doc"
options="!check" # no tests provided
source="$pkgname-$pkgver.tar.gz::https://github.com/afaerber/meson-tools/archive/v$pkgver.tar.gz"
diff --git a/testing/metalang99/APKBUILD b/testing/metalang99/APKBUILD
index cee797d72d3..fa2cf514cea 100644
--- a/testing/metalang99/APKBUILD
+++ b/testing/metalang99/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Sebastian Hudak <sebastian@sebsite.pw>
# Maintainer: Sebastian Hudak <sebastian@sebsite.pw>
pkgname=metalang99
-pkgver=1.13.2
+pkgver=1.13.3
pkgrel=0
pkgdesc="C meta-programming language built with pre-processor macros"
url="https://github.com/Hirrolot/metalang99"
@@ -19,4 +19,6 @@ package() {
cp -r include "$pkgdir"/usr/include
}
-sha512sums="e1077241aedd999b2b4ea46e39aa42fc3bf68a0637dcea7feb1487ab8c11f89a8b6e3c2b59d1fddb66db685a3b616e7321efde4dc83a23ac0d39cfe5441d83a1 metalang99-1.13.2.tar.gz"
+sha512sums="
+dae829981780995fd3fbb1c2921a57fd560a3e1ad2af5df1654bc555a77aa15287b33ce064fd0914b50869aceb959f567ed79d4b00249ef814973756fc9c5ff1 metalang99-1.13.3.tar.gz
+"
diff --git a/testing/metalog/APKBUILD b/testing/metalog/APKBUILD
deleted file mode 100644
index 1d46ed0bd5e..00000000000
--- a/testing/metalog/APKBUILD
+++ /dev/null
@@ -1,51 +0,0 @@
-# Contributor: Milan P. Stanić <mps@arvanta.net>
-# Maintainer: Milan P. Stanić <mps@arvanta.net>
-pkgname=metalog
-pkgver=20220214
-pkgrel=0
-pkgdesc="small, simple to config, flexible syslogd/klogd daemon"
-url="https://github.com/hvisage/metalog"
-arch="all"
-license="GPL-2.0-only"
-makedepends="pcre2-dev automake autoconf autoconf-archive"
-subpackages="$pkgname-doc $pkgname-openrc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/hvisage/metalog/archive/metalog-$pkgver.tar.gz
- metalog.initd
- metalog.confd
- "
-builddir="$srcdir/"metalog-metalog-$pkgver
-
-prepare() {
- default_prepare
- ./autogen.sh
-}
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-
- install -m755 -D "$srcdir"/$pkgname.initd \
- "$pkgdir"/etc/init.d/$pkgname
- install -m644 -D "$srcdir"/$pkgname.confd \
- "$pkgdir"/etc/conf.d/$pkgname
-}
-
-sha512sums="
-44a1443e8f9e92460f128aa35125d50ae247ba4f2ce8fd8cc32b96a491e29963cdc27be12a6db28f286e2d5a2bc6243e126a77ae3eb642e7c969d58446a18fcd metalog-20220214.tar.gz
-09d8ac585418c6a3dfccc9d0f1a050b5862924712d78dc44fce3cb497bb362afe0a556240b14cf957fcdf64d0d06f5b6a8df4372c69129b43dc3520ecd310344 metalog.initd
-1efbc74e23abef06bd62b35bb1f4166b86b5b4618d81e8eb085b4c9b45d0c4319b6db19a24648f7010400eed05c2486e16f16176a0e5435d7f263492934019c6 metalog.confd
-"
diff --git a/testing/metalog/metalog.confd b/testing/metalog/metalog.confd
deleted file mode 100644
index 2f3630d03de..00000000000
--- a/testing/metalog/metalog.confd
+++ /dev/null
@@ -1,10 +0,0 @@
-# Configuration file
-CONFIGFILE="/etc/metalog.conf"
-
-# PID file
-PIDFILE="/run/metalog.pid"
-
-# Options to metalog
-# "-B" start server in background/daemon mode
-# "-s" tells metalog to run in sync mode
-METALOG_OPTS="-B -s"
diff --git a/testing/metalog/metalog.initd b/testing/metalog/metalog.initd
deleted file mode 100644
index bb947bdadf8..00000000000
--- a/testing/metalog/metalog.initd
+++ /dev/null
@@ -1,28 +0,0 @@
-#!/sbin/openrc-run
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-pidfile="${PIDFILE:-/run/metalog.pid}"
-command="/usr/sbin/metalog"
-command_args="--pidfile=${pidfile} --daemonize ${METALOG_OPTS}"
-
-extra_started_commands="buffer unbuffer"
-
-depend() {
- need localmount
- use clock hostname
- after bootmisc
- provide logger
-}
-
-buffer() {
- ebegin "Enabling log buffering"
- start-stop-daemon --exec "${command}" --signal USR2 --pidfile "${pidfile}"
- eend ${?}
-}
-
-unbuffer() {
- ebegin "Disabling log buffering"
- start-stop-daemon --exec "${command}" --signal USR1 --pidfile "${pidfile}"
- eend ${?}
-}
diff --git a/testing/metricbeat/APKBUILD b/testing/metricbeat/APKBUILD
deleted file mode 100644
index 1193238b0d5..00000000000
--- a/testing/metricbeat/APKBUILD
+++ /dev/null
@@ -1,49 +0,0 @@
-# Contributor: Ramanathan Sivagurunathan <ramzthecoder@gmail.com>
-# Maintainer: Ramanathan Sivagurunathan <ramzthecoder@gmail.com>
-pkgname=metricbeat
-pkgver=7.13.1
-pkgrel=6
-pkgdesc="MetricBeat - Lightweight shipper for system and service statistics"
-pkgusers="root"
-url="https://www.elastic.co/products/beats"
-# riscv64: https://github.com/elastic/go-concert/issues/51
-arch="all !aarch64 !armhf !armv7 !riscv64"
-license="Apache-2.0"
-makedepends="go"
-subpackages="$pkgname-openrc"
-source="beats-$pkgver.tar.gz::https://github.com/elastic/beats/archive/v$pkgver.tar.gz
- metricbeat.initd
- metricbeat.confd
- metricbeat.yml
- "
-
-builddir="$srcdir/beats-$pkgver"
-
-export GOPATH="$srcdir/go"
-export GOCACHE="$srcdir/go-build"
-export GOTEMPDIR="$srcdir/go"
-
-export GOFLAGS="$GOFLAGS -modcacherw"
-
-build() {
- mkdir -p bin
- go build -o bin/ -v github.com/elastic/beats/v7/metricbeat
-}
-
-check() {
- go test -v github.com/elastic/beats/v7/metricbeat
-}
-
-package() {
- install -Dm755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
- install -Dm644 "$srcdir"/$pkgname.confd "$pkgdir"/etc/conf.d/$pkgname
- install -Dm644 "$srcdir/metricbeat.yml" "$pkgdir/etc/$pkgname/metricbeat.yml"
- install -Dm755 "bin/metricbeat" "$pkgdir/usr/bin/metricbeat"
-}
-
-sha512sums="
-25b3b0f7dc27777b5cb934163291060a0dbdeadc2b64e36913ff56de57d8b25578db2fda7d093c4041bf9a04776c970e039402f9c0022cca0cf1cd045fc257c0 beats-7.13.1.tar.gz
-a846db44732077c38fd0699592ad27371af75ee8a53419c79197c4e5d727e1745c5145ebefd21073304cb624c5947686626f693e87406b122892f99cebe38f5b metricbeat.initd
-91fad211c1ac8b3bb97848f1ff97f7e708cfd100b174ae1839c4dd60d501cd8b7b4e9f0f4dbb936134c4ef19595bf39c53b256990f08f003c3e88893e0c94212 metricbeat.confd
-b05e083c2ea2337cebd650f2898385ff40fb7f4fe2d7d46109cec3e960d80566129756e8a45e71ed53ec40c33539295453d363feafb60caec8747ae8d09f9124 metricbeat.yml
-"
diff --git a/testing/metricbeat/metricbeat.confd b/testing/metricbeat/metricbeat.confd
deleted file mode 100644
index 31ab5d85813..00000000000
--- a/testing/metricbeat/metricbeat.confd
+++ /dev/null
@@ -1,2 +0,0 @@
-# Metricbeat startup
-metricbeat_opts="-c /etc/metricbeat/metricbeat.yml -e"
diff --git a/testing/metricbeat/metricbeat.initd b/testing/metricbeat/metricbeat.initd
deleted file mode 100644
index 989afe6908a..00000000000
--- a/testing/metricbeat/metricbeat.initd
+++ /dev/null
@@ -1,42 +0,0 @@
-#!/sbin/openrc-run
-
-METRICBEAT_LOG_FILE="/var/log/${SVCNAME}.log"
-
-name=metricbeat
-description="MetricBeat - Lightweight shipper for system and service statistics"
-description_checkconfig="Verify configuration file"
-daemon=/usr/bin/$name
-extra_commands="checkconfig"
-
-start_pre() {
- checkpath -f -m 0644 "$METRICBEAT_LOG_FILE"
-}
-
-depend() {
- need net
- after firewall
-}
-
-checkconfig() {
- metricbeat -configtest -c /etc/metricbeat/metricbeat.yml
-}
-
-start() {
- checkconfig || return 1
-
-ebegin "Starting ${name}"
- start-stop-daemon --start --quiet \
- -m --pidfile /var/run/${name}.pid \
- -b --stdout $METRICBEAT_LOG_FILE --stderr $METRICBEAT_LOG_FILE \
- --exec ${daemon} -- ${metricbeat_opts}
- eend $?
-}
-
-stop() {
- ebegin "Stopping ${name}"
- start-stop-daemon --stop --quiet \
- --pidfile /var/run/${name}.pid \
- --exec ${daemon}
- eend $?
-}
-
diff --git a/testing/metricbeat/metricbeat.yml b/testing/metricbeat/metricbeat.yml
deleted file mode 100644
index 657ea61828d..00000000000
--- a/testing/metricbeat/metricbeat.yml
+++ /dev/null
@@ -1,105 +0,0 @@
-###################### Metricbeat Configuration Example #######################
-
-# This file is an example configuration file highlighting only the most common
-# options. The metricbeat.full.yml file from the same directory contains all the
-# supported options with more comments. You can use it as a reference.
-#
-# You can find the full configuration reference here:
-# https://www.elastic.co/guide/en/beats/metricbeat/index.html
-
-#========================== Modules configuration ============================
-metricbeat.modules:
-
-#------------------------------- System Module -------------------------------
-- module: system
- metricsets:
- # CPU stats
- - cpu
-
- # System Load stats
- - load
-
- # Per CPU core stats
- #- core
-
- # IO stats
- #- diskio
-
- # Per filesystem stats
- - filesystem
-
- # File system summary stats
- - fsstat
-
- # Memory stats
- - memory
-
- # Network stats
- - network
-
- # Per process stats
- - process
-
- # Sockets (linux only)
- #- socket
- enabled: true
- period: 10s
- processes: ['.*']
-
-
-
-#================================ General =====================================
-
-# The name of the shipper that publishes the network data. It can be used to group
-# all the transactions sent by a single shipper in the web interface.
-#name:
-
-# The tags of the shipper are included in their own field with each
-# transaction published.
-#tags: ["service-X", "web-tier"]
-
-# Optional fields that you can specify to add additional information to the
-# output.
-#fields:
-# env: staging
-
-#================================ Outputs =====================================
-
-# Configure what outputs to use when sending the data collected by the beat.
-# Multiple outputs may be used.
-
-#-------------------------- Elasticsearch output ------------------------------
-output.elasticsearch:
- # Array of hosts to connect to.
- hosts: ["localhost:9200"]
-
- # Optional protocol and basic auth credentials.
- #protocol: "https"
- #username: "elastic"
- #password: "changeme"
-
-#----------------------------- Logstash output --------------------------------
-#output.logstash:
- # The Logstash hosts
- #hosts: ["localhost:5044"]
-
- # Optional SSL. By default is off.
- # List of root certificates for HTTPS server verifications
- #ssl.certificate_authorities: ["/etc/pki/root/ca.pem"]
-
- # Certificate for SSL client authentication
- #ssl.certificate: "/etc/pki/client/cert.pem"
-
- # Client Certificate Key
- #ssl.key: "/etc/pki/client/cert.key"
-
-#================================ Logging =====================================
-
-# Sets log level. The default log level is info.
-# Available log levels are: critical, error, warning, info, debug
-#logging.level: debug
-
-# At debug level, you can selectively enable logging only for some components.
-# To enable all selectors use ["*"]. Examples of other selectors are "beat",
-# "publish", "service".
-#logging.selectors: ["*"]
diff --git a/testing/mgba/APKBUILD b/testing/mgba/APKBUILD
deleted file mode 100644
index 295bd79e42b..00000000000
--- a/testing/mgba/APKBUILD
+++ /dev/null
@@ -1,68 +0,0 @@
-# Contributor: Alexander Edland <alpine@ocv.me>
-# Contributor: knuxify <knuxify@gmail.com>
-# Maintainer:
-pkgname=mgba
-pkgver=0.9.3
-pkgrel=1
-pkgdesc="Game Boy Advance Emulator"
-url="https://mgba.io"
-arch="all !s390x" # broken on big-endian
-arch="$arch !armhf" # Missing qt5-qtmultimedia-dev
-license="MPL-2.0"
-makedepends="cmake qt5-qtmultimedia-dev qt5-qtbase-dev qt5-qttools-dev
- sdl2-dev libzip-dev zlib-dev libpng-dev ffmpeg-dev imagemagick-dev
- libepoxy-dev cmocka-dev libedit-dev py3-virtualenv python3-dev
- libzip-tools elfutils-dev samurai
- "
-checkdepends="py3-cffi py3-cached-property"
-subpackages="$pkgname-doc libmgba:_libmgba libmgba-dev $pkgname-qt:_qt"
-source="mgba-$pkgver.tar.gz::https://github.com/mgba-emu/mgba/archive/$pkgver.tar.gz
- ffmpeg5.patch
- "
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -G Ninja -B build \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- -DCMAKE_BUILD_TYPE=MinSizeRel \
- -DBUILD_TEST:BOOL=ON \
- -DBUILD_SUITE:BOOL=ON \
- $CMAKE_CROSSOPTS .
- cmake --build build
-}
-
-check() {
- cd build
- CTEST_OUTPUT_ON_FAILURE=TRUE ctest
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-
- # remove test leftovers
- rm "$pkgdir"/usr/bin/mgba-fuzz
- rm "$pkgdir"/usr/bin/tbl-fuzz
-}
-
-_qt() {
- pkgdesc="Qt5 frontend for the mGBA emulator"
-
- mkdir -p "$subpkgdir"/usr/share/applications
- amove usr/bin/mgba-qt
- amove usr/share/applications/mgba-qt.desktop
-}
-
-_libmgba() {
- pkgdesc="Shared library of mGBA"
-
- amove usr/lib
-}
-
-sha512sums="
-da65b3c7ec32d732163f129c4fd38949ae2da2980beb3257bf6def5e35534a27b6d30309bb3c9a8d651642f99e1a45db7a8577c8dbf5472153d4551167471b3a mgba-0.9.3.tar.gz
-3f714c1c950636a5938d4226b8120bd566ec65a922a9ea43b01913e266b0b81e2334fef37b73fa3e1fd0cd2ffb619f14283ce5ded328e99b28af34f40c77b2c2 ffmpeg5.patch
-"
diff --git a/testing/mgba/ffmpeg5.patch b/testing/mgba/ffmpeg5.patch
deleted file mode 100644
index de55da6b20c..00000000000
--- a/testing/mgba/ffmpeg5.patch
+++ /dev/null
@@ -1,118 +0,0 @@
-Patch-Source: https://github.com/mgba-emu/mgba/commit/cdc753516798882a805db1d2042dbce8313382bf
-From cdc753516798882a805db1d2042dbce8313382bf Mon Sep 17 00:00:00 2001
-From: Ryan Tandy <ryan@nardis.ca>
-Date: Thu, 3 Feb 2022 19:02:52 -0800
-Subject: [PATCH] FFmpeg: Support FFmpeg 5.0
-
----
- src/feature/ffmpeg/ffmpeg-decoder.c | 3 ++-
- src/feature/ffmpeg/ffmpeg-encoder.c | 25 ++++++++++++++-----------
- 2 files changed, 16 insertions(+), 12 deletions(-)
-
-diff --git a/src/feature/ffmpeg/ffmpeg-decoder.c b/src/feature/ffmpeg/ffmpeg-decoder.c
-index c3bb6d1c5c..daa47fbf2c 100644
---- a/src/feature/ffmpeg/ffmpeg-decoder.c
-+++ b/src/feature/ffmpeg/ffmpeg-decoder.c
-@@ -5,6 +5,7 @@
- * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- #include "ffmpeg-decoder.h"
-
-+#include <libavcodec/avcodec.h>
- #include <libswscale/swscale.h>
-
- void FFmpegDecoderInit(struct FFmpegDecoder* decoder) {
-@@ -38,7 +39,7 @@ bool FFmpegDecoderOpen(struct FFmpegDecoder* decoder, const char* infile) {
- #else
- enum AVMediaType type = decoder->context->streams[i]->codec->codec_type;
- #endif
-- struct AVCodec* codec;
-+ const struct AVCodec* codec;
- struct AVCodecContext* context = NULL;
- if (type == AVMEDIA_TYPE_VIDEO && decoder->videoStream < 0) {
- decoder->video = avcodec_alloc_context3(NULL);
-diff --git a/src/feature/ffmpeg/ffmpeg-encoder.c b/src/feature/ffmpeg/ffmpeg-encoder.c
-index ad76ca57b2..be6bd3af5e 100644
---- a/src/feature/ffmpeg/ffmpeg-encoder.c
-+++ b/src/feature/ffmpeg/ffmpeg-encoder.c
-@@ -12,6 +12,9 @@
-
- #include <libavcodec/version.h>
- #include <libavcodec/avcodec.h>
-+#if LIBAVCODEC_VERSION_MAJOR >= 58
-+#include <libavcodec/bsf.h>
-+#endif
-
- #include <libavfilter/buffersink.h>
- #include <libavfilter/buffersrc.h>
-@@ -121,7 +124,7 @@ bool FFmpegEncoderSetAudio(struct FFmpegEncoder* encoder, const char* acodec, un
- return true;
- }
-
-- AVCodec* codec = avcodec_find_encoder_by_name(acodec);
-+ const AVCodec* codec = avcodec_find_encoder_by_name(acodec);
- if (!codec) {
- return false;
- }
-@@ -193,7 +196,7 @@ bool FFmpegEncoderSetVideo(struct FFmpegEncoder* encoder, const char* vcodec, in
- return true;
- }
-
-- AVCodec* codec = avcodec_find_encoder_by_name(vcodec);
-+ const AVCodec* codec = avcodec_find_encoder_by_name(vcodec);
- if (!codec) {
- return false;
- }
-@@ -213,7 +216,7 @@ bool FFmpegEncoderSetVideo(struct FFmpegEncoder* encoder, const char* vcodec, in
- if (encoder->pixFormat == AV_PIX_FMT_NONE) {
- return false;
- }
-- if (vbr < 0 && !av_opt_find(&codec->priv_class, "crf", NULL, 0, 0)) {
-+ if (vbr < 0 && !av_opt_find((void*) &codec->priv_class, "crf", NULL, 0, 0)) {
- return false;
- }
- encoder->videoCodec = vcodec;
-@@ -223,7 +226,7 @@ bool FFmpegEncoderSetVideo(struct FFmpegEncoder* encoder, const char* vcodec, in
- }
-
- bool FFmpegEncoderSetContainer(struct FFmpegEncoder* encoder, const char* container) {
-- AVOutputFormat* oformat = av_guess_format(container, 0, 0);
-+ const AVOutputFormat* oformat = av_guess_format(container, 0, 0);
- if (!oformat) {
- return false;
- }
-@@ -241,9 +244,9 @@ void FFmpegEncoderSetLooping(struct FFmpegEncoder* encoder, bool loop) {
- }
-
- bool FFmpegEncoderVerifyContainer(struct FFmpegEncoder* encoder) {
-- AVOutputFormat* oformat = av_guess_format(encoder->containerFormat, 0, 0);
-- AVCodec* acodec = avcodec_find_encoder_by_name(encoder->audioCodec);
-- AVCodec* vcodec = avcodec_find_encoder_by_name(encoder->videoCodec);
-+ const AVOutputFormat* oformat = av_guess_format(encoder->containerFormat, 0, 0);
-+ const AVCodec* acodec = avcodec_find_encoder_by_name(encoder->audioCodec);
-+ const AVCodec* vcodec = avcodec_find_encoder_by_name(encoder->videoCodec);
- if ((encoder->audioCodec && !acodec) || (encoder->videoCodec && !vcodec) || !oformat || (!acodec && !vcodec)) {
- return false;
- }
-@@ -257,8 +260,8 @@ bool FFmpegEncoderVerifyContainer(struct FFmpegEncoder* encoder) {
- }
-
- bool FFmpegEncoderOpen(struct FFmpegEncoder* encoder, const char* outfile) {
-- AVCodec* acodec = avcodec_find_encoder_by_name(encoder->audioCodec);
-- AVCodec* vcodec = avcodec_find_encoder_by_name(encoder->videoCodec);
-+ const AVCodec* acodec = avcodec_find_encoder_by_name(encoder->audioCodec);
-+ const AVCodec* vcodec = avcodec_find_encoder_by_name(encoder->videoCodec);
- if ((encoder->audioCodec && !acodec) || (encoder->videoCodec && !vcodec) || !FFmpegEncoderVerifyContainer(encoder)) {
- return false;
- }
-@@ -272,9 +275,9 @@ bool FFmpegEncoderOpen(struct FFmpegEncoder* encoder, const char* outfile) {
- encoder->currentVideoFrame = 0;
- encoder->skipResidue = 0;
-
-- AVOutputFormat* oformat = av_guess_format(encoder->containerFormat, 0, 0);
-+ const AVOutputFormat* oformat = av_guess_format(encoder->containerFormat, 0, 0);
- #ifndef USE_LIBAV
-- avformat_alloc_output_context2(&encoder->context, oformat, 0, outfile);
-+ avformat_alloc_output_context2(&encoder->context, (AVOutputFormat*) oformat, 0, outfile);
- #else
- encoder->context = avformat_alloc_context();
- strncpy(encoder->context->filename, outfile, sizeof(encoder->context->filename) - 1);
diff --git a/testing/micropython/APKBUILD b/testing/micropython/APKBUILD
index e97401a7e5b..0f2f493f6b0 100644
--- a/testing/micropython/APKBUILD
+++ b/testing/micropython/APKBUILD
@@ -1,26 +1,34 @@
# Contributor: Marian <marian.buschsieweke@ovgu.de>
# Maintainer: Marian <marian.buschsieweke@ovgu.de>
pkgname=micropython
-pkgver=1.17
+pkgver=1.22.1
+_mpy_lib_ver=1.22.0
pkgrel=0
pkgdesc="lean and efficient Python implementation for MCUs and constrained systems"
url="https://www.micropython.org/"
-# ppc64le: mpy-cross fails to compile with "unsupported relocation type 4"
-# armv7: 17 unit tests fail, mostly viper related
-# armhf: fails to build
-# s390x: sporadic test failures: "2 tests failed: repl_cont uasyncio_heaplock"
-arch="all !ppc64le !armv7 !armhf !s390x"
+# ppc64le: mpy-cross fails to compile with "unsupported relocation type 4 & 5"
+# armhf: fails to build due to "error compiling argparse.py"
+arch="all !ppc64le !armhf"
license="MIT"
makedepends="libffi-dev python3"
subpackages="$pkgname-cross"
-source="micropython-$pkgver.tar.gz::https://github.com/micropython/micropython/archive/v$pkgver.tar.gz
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/micropython/micropython/archive/refs/tags/v$pkgver.tar.gz
+ micropython-lib-$_mpy_lib_ver.tar.gz::https://github.com/micropython/micropython-lib/archive/refs/tags/v$_mpy_lib_ver.tar.gz
micropython-1.9.4-prevent-stripping.patch
- no_ussl.patch
+ no_ssl.patch
no_legacy_berkeley_db.patch
+ no-werror.patch
"
+prepare() {
+ default_prepare
+ rmdir lib/micropython-lib
+ ln -s ../../micropython-lib-$_mpy_lib_ver lib/micropython-lib
+}
+
build() {
make -C mpy-cross PYTHON=python3
make -C ports/unix PYTHON=python3
@@ -37,27 +45,30 @@ check() {
;;
esac
- # ffi callback fails on kernel with PaX
- rm tests/unix/ffi_callback.py
+ # Needed for tests/extmod/select_poll_fd.py to
+ # pass (see comment in that file for more info)
+ ulimit -n 1024
make -C ports/unix test PYTHON=python3
}
package() {
- mkdir -p "$pkgdir/usr/bin"
- install -m755 ports/unix/micropython "$pkgdir/usr/bin/micropython"
+ install -Dm755 -t "$pkgdir"/usr/bin \
+ ports/unix/build-standard/micropython \
+ mpy-cross/build/mpy-cross
}
cross() {
pkgdesc="Compile micropython code to bytecode, which can be transfered to MCUs"
- cd "$builddir"
- mkdir -p "$subpkgdir/usr/bin"
- install -m755 mpy-cross/mpy-cross "$subpkgdir/usr/bin/mpy-cross"
+
+ amove usr/bin/mpy-cross
}
sha512sums="
-6995ec2bfdf5193fe8259db95341ca0d4556f1adbb203678633a447ad74a4adf98cdf798d380f84e619abd72d420b2397b0a78abe5b6413ce3493cd86af0f3b8 micropython-1.17.tar.gz
-eff33f41757048113d013cb30566c5d1eed72fdbd3cd7b046655efb168f39165e3bb17fa3c29a8f27039393db9363a8a12b9d75faa21fc6c370b16500a54ef52 micropython-1.9.4-prevent-stripping.patch
-9a6cd131c8875a9d320653b7b93d46a759eee3255e25763eb8de6934b3035f691e497eafc9412320f13c5921a384d42d6e60ea3eb3d65f3a6101dae9be514f3c no_ussl.patch
+df4220a360f38b865e128fe23d8082eec1ed30cd80d5c94ea957de59e5ba67b766852b26a068c4abb672448012336fbab988f810a95cb4f4dc49055158f30a2f micropython-1.22.1.tar.gz
+fb46625b038c649c98fe0929a8f8fb6c01495614942942a7c92b90679f07c39ad7142c966a7643538d529c356b00f483308a33ac00d441fb662dd3a3dd3c418d micropython-lib-1.22.0.tar.gz
+47f4923b1901bf0c8c90a15fe7188ae5c07d4c451d129c271d52d9449ac6094bf7183d5c4dc9cb38d5d5b4bf6944a715b7a3377575e9bc92bee16801d8088436 micropython-1.9.4-prevent-stripping.patch
+6e13449a4d273538d9d752de88a292ff15ef035ca55abc8c5ee4b396d3088c292f059e59a9b17594d02393a0deb28f309d6fde057ba9c2bd91e58b99f55d7c97 no_ssl.patch
e86ad02ef746605f2f685ae776a6ad6ea39ae6e57fa0869a0c03895fd581647de20fa7e6aaeebac45e7302a63451d625208b1356ee2f35a66df70ac2755a25ff no_legacy_berkeley_db.patch
+99a021dc8fe8f7cd26455e9e7610e36bfb3c01182b42855a6cc3453dea29ea25fe622c3d722a71f973a1382446f6434260cc2a986d92895e187e784c57069b31 no-werror.patch
"
diff --git a/testing/micropython/micropython-1.9.4-prevent-stripping.patch b/testing/micropython/micropython-1.9.4-prevent-stripping.patch
index 10507289c2d..b9da21e885f 100644
--- a/testing/micropython/micropython-1.9.4-prevent-stripping.patch
+++ b/testing/micropython/micropython-1.9.4-prevent-stripping.patch
@@ -1,6 +1,6 @@
---- a/py/mkenv.mk 2017-11-25 09:52:30.921836372 +0000
-+++ a/py/mkenv.mk 2017-11-25 09:52:35.257861233 +0000
-@@ -50,7 +50,6 @@
+--- a/py/mkenv.mk
++++ a/py/mkenv.mk
+@@ -52,7 +52,6 @@
LD = $(CROSS_COMPILE)ld
OBJCOPY = $(CROSS_COMPILE)objcopy
SIZE = $(CROSS_COMPILE)size
@@ -8,15 +8,17 @@
AR = $(CROSS_COMPILE)ar
MAKE_MANIFEST = $(PYTHON) $(TOP)/tools/makemanifest.py
---- a/py/mkrules.mk 2017-11-25 09:53:13.107078063 +0000
-+++ a/py/mkrules.mk 2017-11-25 09:53:31.898185592 +0000
-@@ -198,9 +198,6 @@
+--- a/py/mkrules.mk
++++ a/py/mkrules.mk
+@@ -211,11 +211,6 @@
# Do not pass COPT here - it's *C* compiler optimizations. For example,
# we may want to compile using Thumb, but link with non-Thumb libc.
$(Q)$(CC) -o $@ $^ $(LIB) $(LDFLAGS)
-ifndef DEBUG
+-ifdef STRIP
- $(Q)$(STRIP) $(STRIPFLAGS_EXTRA) $@
-endif
+-endif
$(Q)$(SIZE) $$(find $(BUILD) -path "$(BUILD)/build/frozen*.o") $@
clean: clean-prog
diff --git a/testing/micropython/no-werror.patch b/testing/micropython/no-werror.patch
new file mode 100644
index 00000000000..4f292119cc6
--- /dev/null
+++ b/testing/micropython/no-werror.patch
@@ -0,0 +1,11 @@
+--- a/ports/unix/Makefile
++++ b/ports/unix/Makefile
+@@ -44,7 +44,7 @@
+ INC += -I$(BUILD)
+
+ # compiler settings
+-CWARN = -Wall -Werror
++CWARN = -Wall
+ CWARN += -Wextra -Wno-unused-parameter -Wpointer-arith -Wdouble-promotion -Wfloat-conversion
+ CFLAGS += $(INC) $(CWARN) -std=gnu99 -DUNIX $(COPT) -I$(VARIANT_DIR) $(CFLAGS_EXTRA)
+
diff --git a/testing/micropython/no_ssl.patch b/testing/micropython/no_ssl.patch
new file mode 100644
index 00000000000..231e60ff3d7
--- /dev/null
+++ b/testing/micropython/no_ssl.patch
@@ -0,0 +1,18 @@
+--- micropython-1.12-orig/ports/unix/mpconfigport.mk
++++ micropython-1.12/ports/unix/mpconfigport.mk
+@@ -24,13 +24,13 @@
+ MICROPY_PY_FFI = 1
+
+ # ssl module requires one of the TLS libraries below
+-MICROPY_PY_SSL = 1
++MICROPY_PY_SSL = 0
+ # axTLS has minimal size but implements only a subset of modern TLS
+ # functionality, so may have problems with some servers.
+ MICROPY_SSL_AXTLS = 0
+ # mbedTLS is more up to date and complete implementation, but also
+ # more bloated.
+-MICROPY_SSL_MBEDTLS = 1
++MICROPY_SSL_MBEDTLS = 0
+
+ # jni module requires JVM/JNI
+ MICROPY_PY_JNI = 0
diff --git a/testing/micropython/no_ussl.patch b/testing/micropython/no_ussl.patch
deleted file mode 100644
index d39ca849b70..00000000000
--- a/testing/micropython/no_ussl.patch
+++ /dev/null
@@ -1,15 +0,0 @@
---- micropython-1.12-orig/ports/unix/mpconfigport.mk
-+++ micropython-1.12/ports/unix/mpconfigport.mk
-@@ -24,10 +24,10 @@
- MICROPY_PY_FFI = 1
-
- # ussl module requires one of the TLS libraries below
--MICROPY_PY_USSL = 1
-+MICROPY_PY_USSL = 0
- # axTLS has minimal size but implements only a subset of modern TLS
- # functionality, so may have problems with some servers.
--MICROPY_SSL_AXTLS = 1
-+MICROPY_SSL_AXTLS = 0
- # mbedTLS is more up to date and complete implementation, but also
- # more bloated.
- MICROPY_SSL_MBEDTLS = 0
diff --git a/testing/milkytracker/APKBUILD b/testing/milkytracker/APKBUILD
index 6524b77fa3b..cabeba2ebf8 100644
--- a/testing/milkytracker/APKBUILD
+++ b/testing/milkytracker/APKBUILD
@@ -1,40 +1,42 @@
# Maintainer: Ariadne Conill <ariadne@dereferenced.org>
pkgname=milkytracker
-pkgver=1.03.00
-pkgrel=0
+pkgver=1.04.00
+pkgrel=2
pkgdesc="music tracker inspired by fast tracker 2"
url="https://milkytracker.titandemo.org/"
arch="all"
license="GPL-3.0-or-later"
-depends=""
makedepends="
alsa-lib-dev
+ cmake
+ rtmidi-dev
+ samurai
sdl2-dev
zziplib-dev
- cmake
- ninja
-"
-checkdepends=""
-install=""
+ "
subpackages="$pkgname-doc"
-source="https://github.com/milkytracker/MilkyTracker/releases/download/v$pkgver/milkytracker-$pkgver.tar.gz"
-builddir="$srcdir"
-options="!check"
+source="$pkgname-$pkgver-1.tar.gz::https://github.com/milkytracker/MilkyTracker/archive/refs/tags/v$pkgver.tar.gz
+ fix-crash.patch
+ "
+builddir="$srcdir/MilkyTracker-$pkgver"
+options="!check" # no testsuite
build() {
cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=MinSizeRel \
- -DCMAKE_C_FLAGS_MINSIZEREL_INIT="$CFLAGS" \
- -DCMAKE_CXX_FLAGS_MINSIZEREL_INIT="$CXXFLAGS" \
- -DCMAKE_EXE_LINKER_FLAGS_MINSIZEREL_INIT="$LDFLAGS" \
-DCMAKE_INSTALL_PREFIX=/usr
- ninja -C build
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
}
package() {
- DESTDIR="$pkgdir" ninja -C build install
+ DESTDIR="$pkgdir" cmake --install build
}
sha512sums="
-dc5aee7fabab496c17c56229964de80fd55f97c01d2e3c45ce8786f41726ccc42670151c86f5cbc39c34e4870e1648217dcacc2a496f8b6528ecb6f43ccfa36b milkytracker-1.03.00.tar.gz
+247ff5daacb45b9445262917ab6c5e3b2309756d4e2a8317f4fd1fddefb49e97359122362ca0d8c5e3676661a45e2c559dd5a1e2cd7193d916a645f626ff32e7 milkytracker-1.04.00-1.tar.gz
+9142846f031067c6327ae06cb77ac9a2be5d3e743b9ffc5f8f7e5ff12b48bd0d483c552401f476ef79edfb640cc2bd32353587fd9710e556eb3f1af0aae8024a fix-crash.patch
"
diff --git a/testing/milkytracker/fix-crash.patch b/testing/milkytracker/fix-crash.patch
new file mode 100644
index 00000000000..727a5903e56
--- /dev/null
+++ b/testing/milkytracker/fix-crash.patch
@@ -0,0 +1,16 @@
+https://github.com/milkytracker/MilkyTracker/pull/319
+--
+diff --git a/src/milkyplay/PlayerBase.h b/src/milkyplay/PlayerBase.h
+index 18bcc74..6dc123c 100644
+--- a/src/milkyplay/PlayerBase.h
++++ b/src/milkyplay/PlayerBase.h
+@@ -117,3 +117,3 @@ private:
+ (speed << BITPOS_SPEED)),
+- mainVolumeTicker((mainVol << BITPOS_MAINVOL) +
++ mainVolumeTicker(mainVol +
+ (ticker << BITPOS_TICKER))
+@@ -174,3 +174,3 @@ protected:
+ mp_sint32 bpm; // BPM speed
+- mp_sint32 ticker; // runs from 0 to tickspeed-1
++ mp_sint32 ticker = 0; // runs from 0 to tickspeed-1
+
diff --git a/testing/mimalloc1/APKBUILD b/testing/mimalloc1/APKBUILD
index ac41c76d618..81bb217ea4f 100644
--- a/testing/mimalloc1/APKBUILD
+++ b/testing/mimalloc1/APKBUILD
@@ -3,7 +3,7 @@
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=mimalloc1
_projname=mimalloc
-pkgver=1.7.6
+pkgver=1.8.2
pkgrel=0
_pkgdesc="A compact general purpose allocator with excellent performance"
pkgdesc="$_pkgdesc (in secure mode)"
@@ -13,8 +13,11 @@ arch="all !ppc64le"
license="MIT"
makedepends="cmake samurai"
provides="mimalloc=$pkgver-r$pkgrel"
-provider_priority=100 # highest
-subpackages="$pkgname-dev $pkgname-insecure $pkgname-debug"
+subpackages="
+ $pkgname-dev
+ $pkgname-insecure
+ $pkgname-debug
+ "
source="https://github.com/microsoft/mimalloc/archive/v$pkgver/$_projname-$pkgver.tar.gz
cmake-add-insecure-suffix.patch
"
@@ -23,6 +26,8 @@ builddir="$srcdir/$_projname-$pkgver"
_buildtypes='debug insecure secure'
build() {
+ # https://github.com/microsoft/mimalloc/issues/597
+ export CFLAGS="$CFLAGS -D__USE_ISOC11"
_build out/debug -DCMAKE_BUILD_TYPE=Debug -DMI_DEBUG_FULL=ON
# This is called "release" build by upstream.
@@ -63,6 +68,7 @@ package() {
cd "$pkgdir"
ln -s libmimalloc-secure.so usr/lib/libmimalloc.so
+ ln -s libmimalloc-secure.so.${pkgver%%.*} usr/lib/libmimalloc.so.${pkgver%%.*}
ln -s libmimalloc-secure.so.${pkgver%.*} usr/lib/libmimalloc.so.${pkgver%.*}
ln -s libmimalloc-secure.a usr/lib/libmimalloc.a
@@ -74,20 +80,28 @@ package() {
rm -f usr/lib/*.o
}
+dev() {
+ provides="mimalloc-dev=$pkgver-r$pkgrel"
+
+ default_dev
+}
+
insecure() {
pkgdesc="$_pkgdesc (in insecure mode)"
+ provides="mimalloc-insecure=$pkgver-r$pkgrel"
amove usr/lib/libmimalloc-insecure.*
}
debug() {
pkgdesc="$_pkgdesc (debug build)"
+ provides="mimalloc-debug=$pkgver-r$pkgrel"
options="!strip"
amove usr/lib/libmimalloc-debug.*
}
sha512sums="
-dc0c072b08a68409937062600aec0a1b67933334e050ff80f6396d2d2c33a4c7515beb1709a86d51c24a3d5a2c27565ff87401e154cb8cb3937a647ee91e2c31 mimalloc-1.7.6.tar.gz
-d34954ac0b18d8a3baa1fcb056eec887c5919b0b8c41e7a338a6be315e2685277a9511b86ed799c83bd8a0aa2fa6127239fef261836ae8c4e30f48c17a2c411f cmake-add-insecure-suffix.patch
+8648043fc94c2a998bb84464bbfb52cc85e9dcaff604433b9b0940104f314753fdedf1413c9ffb6719d6affaac6ad0d7a1289532387464bce2291a00152443a0 mimalloc-1.8.2.tar.gz
+9cfaa68a6dcf377a52a60e37a1e83f81fc9ba94afb55f10bb089e24561e791c318e7e0860c17944ef2aaa11546a32fa4a3510afe3aefefcc0a393dc2f334ef3d cmake-add-insecure-suffix.patch
"
diff --git a/testing/mimalloc1/cmake-add-insecure-suffix.patch b/testing/mimalloc1/cmake-add-insecure-suffix.patch
index 0220d657c52..a0e4abb7a2b 100644
--- a/testing/mimalloc1/cmake-add-insecure-suffix.patch
+++ b/testing/mimalloc1/cmake-add-insecure-suffix.patch
@@ -6,9 +6,11 @@ Subject: Add suffix "-insecure" to library with MI_SECURE=OFF
We want to make the secure variant the default one.
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 0011b87..bda3d5e 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
-@@ -63,10 +63,6 @@
+@@ -67,11 +67,6 @@ if (NOT CMAKE_BUILD_TYPE)
endif()
endif()
@@ -16,21 +18,25 @@ We want to make the secure variant the default one.
- message(STATUS "Default to secure build")
- set(MI_SECURE "ON")
-endif()
-
+-
# -----------------------------------------------------------------------------
-@@ -254,12 +250,12 @@
+ # Process options
+@@ -313,6 +308,8 @@ endif()
+ set(mi_basename "mimalloc")
if(MI_SECURE)
- set(mi_basename "mimalloc-secure")
- else()
-- set(mi_basename "mimalloc")
-+ set(mi_basename "mimalloc-insecure")
+ set(mi_basename "${mi_basename}-secure")
++else()
++ set(mi_basename "${mi_basename}-insecure")
+ endif()
+ if(MI_VALGRIND)
+ set(mi_basename "${mi_basename}-valgrind")
+@@ -322,7 +319,7 @@ if(MI_ASAN)
endif()
-
string(TOLOWER "${CMAKE_BUILD_TYPE}" CMAKE_BUILD_TYPE_LC)
if(NOT(CMAKE_BUILD_TYPE_LC MATCHES "^(release|relwithdebinfo|minsizerel|none)$"))
- set(mi_basename "${mi_basename}-${CMAKE_BUILD_TYPE_LC}") #append build type (e.g. -debug) if not a release version
+ set(mi_basename "mimalloc-${CMAKE_BUILD_TYPE_LC}") #append build type (e.g. -debug) if not a release version
endif()
+
if(MI_BUILD_SHARED)
- list(APPEND mi_build_targets "shared")
diff --git a/testing/mimalloc2/APKBUILD b/testing/mimalloc2/APKBUILD
deleted file mode 100644
index c5e0e62c547..00000000000
--- a/testing/mimalloc2/APKBUILD
+++ /dev/null
@@ -1,93 +0,0 @@
-# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Contributor: Nicolas Lorin <androw95220@gmail.com>
-# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
-pkgname=mimalloc2
-_projname=mimalloc
-pkgver=2.0.6
-_pkgver=${pkgver%_*}
-pkgrel=0
-_pkgdesc="A compact general purpose allocator with excellent performance"
-pkgdesc="$_pkgdesc (in secure mode)"
-url="https://github.com/microsoft/mimalloc"
-arch="all"
-license="MIT"
-makedepends="cmake samurai"
-provides="mimalloc=$pkgver-r$pkgrel"
-provider_priority=0 # lowest
-subpackages="$pkgname-dev $pkgname-insecure $pkgname-debug"
-source="https://github.com/microsoft/mimalloc/archive/v$_pkgver/$_projname-$_pkgver.tar.gz
- cmake-add-insecure-suffix.patch
- "
-builddir="$srcdir/$_projname-$_pkgver"
-
-_buildtypes='debug insecure secure'
-
-build() {
- _build out/debug -DCMAKE_BUILD_TYPE=Debug -DMI_DEBUG_FULL=ON
-
- # This is called "release" build by upstream.
- _build out/insecure -DCMAKE_BUILD_TYPE=Release -DMI_SECURE=OFF
-
- _build out/secure -DCMAKE_BUILD_TYPE=Release -DMI_SECURE=ON
-}
-
-_build() {
- local outdir="$1"; shift
-
- local crossopts=
- [ "$CBUILD" = "$CHOST" ] \
- || crossopts='-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux'
-
- CFLAGS=${CFLAGS/-Os/} cmake -B "$outdir" -G Ninja \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_VERBOSE_MAKEFILE=ON \
- -DMI_INSTALL_TOPLEVEL=ON \
- $crossopts \
- "$@" .
- cmake --build "$outdir"
-}
-
-check() {
- local btype; for btype in $_buildtypes; do
- msg "Testing $btype build"
-
- cd "$builddir"/out/$btype
- CTEST_OUTPUT_ON_FAILURE=TRUE ctest --timeout 300
- done
-}
-
-package() {
- local btype; for btype in $_buildtypes; do
- DESTDIR="$pkgdir" cmake --install out/$btype
- done
-
- cd "$pkgdir"
- ln -s libmimalloc-secure.so usr/lib/libmimalloc.so
- ln -s libmimalloc-secure.so.${pkgver%.*} usr/lib/libmimalloc.so.${pkgver%.*}
- ln -s libmimalloc-secure.a usr/lib/libmimalloc.a
-
- sed 's/-secure/-insecure/g' usr/lib/cmake/mimalloc/mimalloc-release.cmake \
- > usr/lib/cmake/mimalloc/mimalloc-insecure.cmake
- mv usr/lib/cmake/mimalloc/mimalloc-release.cmake usr/lib/cmake/mimalloc/mimalloc-secure.cmake
- ln -s mimalloc-secure.cmake usr/lib/cmake/mimalloc/mimalloc-release.cmake
-
- rm -f usr/lib/*.o
-}
-
-insecure() {
- pkgdesc="$_pkgdesc (in insecure mode)"
-
- amove usr/lib/libmimalloc-insecure.*
-}
-
-debug() {
- pkgdesc="$_pkgdesc (debug build)"
- options="!strip"
-
- amove usr/lib/libmimalloc-debug.*
-}
-
-sha512sums="
-f2fc0fbfb6384e85959897f129e5d5d9acc51bda536d5cabcd7d4177dbda9fb735b8a8c239b961f8bea31d37c9ae10f66da23aa91d497f95393253d4ac792bb3 mimalloc-2.0.6.tar.gz
-984d4d1f0be8ae1ad6a33fc49e0509fbe2a07a9834bbfca9794e02347aee3c615562fc0846e03f84e735367743d95d7a65dd2ffb09b6548036436d6a0b3e13a3 cmake-add-insecure-suffix.patch
-"
diff --git a/testing/mimalloc2/cmake-add-insecure-suffix.patch b/testing/mimalloc2/cmake-add-insecure-suffix.patch
deleted file mode 100644
index 2a881aceb4c..00000000000
--- a/testing/mimalloc2/cmake-add-insecure-suffix.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-Updated: 20 Feb 2021 by Nicolas Lorin <androw95220@gmail.com>
-
-From: Jakub Jirutka <jakub@jirutka.cz>
-Date: Thu, 19 Aug 2021 23:08:13 +0200
-Subject: Add suffix "-insecure" to library with MI_SECURE=OFF
-
-We want to make the secure variant the default one.
-
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -63,12 +63,7 @@
- endif()
- endif()
-
--if("${CMAKE_BINARY_DIR}" MATCHES ".*(S|s)ecure$")
-- message(STATUS "Default to secure build")
-- set(MI_SECURE "ON")
--endif()
-
--
- # -----------------------------------------------------------------------------
- # Process options
- # -----------------------------------------------------------------------------
-@@ -254,12 +249,12 @@
- if(MI_SECURE)
- set(mi_basename "mimalloc-secure")
- else()
-- set(mi_basename "mimalloc")
-+ set(mi_basename "mimalloc-insecure")
- endif()
-
- string(TOLOWER "${CMAKE_BUILD_TYPE}" CMAKE_BUILD_TYPE_LC)
- if(NOT(CMAKE_BUILD_TYPE_LC MATCHES "^(release|relwithdebinfo|minsizerel|none)$"))
-- set(mi_basename "${mi_basename}-${CMAKE_BUILD_TYPE_LC}") #append build type (e.g. -debug) if not a release version
-+ set(mi_basename "mimalloc-${CMAKE_BUILD_TYPE_LC}") #append build type (e.g. -debug) if not a release version
- endif()
- if(MI_BUILD_SHARED)
- list(APPEND mi_build_targets "shared")
diff --git a/testing/mimedefang/APKBUILD b/testing/mimedefang/APKBUILD
index 3a1196549b5..902075f7a31 100644
--- a/testing/mimedefang/APKBUILD
+++ b/testing/mimedefang/APKBUILD
@@ -1,30 +1,40 @@
# Contributor: Duncan Bellamy <dunk@denkimushi.com>
# Maintainer: Duncan Bellamy <dunk@denkimushi.com>
pkgname=mimedefang
-pkgver=2.86
+pkgver=3.4.1
pkgrel=0
pkgdesc="e-mail filtering tool that works with the Sendmail Milter library"
url="https://mimedefang.org"
-arch="all !riscv64" # rspamd-client
+arch="all"
license="GPL-2.0-only"
-pkgusers="mimedfang"
-pkggroups="mimedefang"
+pkgusers="defang"
+pkggroups="defang"
depends="
perl-digest-sha1
perl-html-parser
perl-io-socket-ssl
+ perl-mail-dkim
+ perl-mail-spf
perl-mime-base64
perl-mime-tools
+ perl-net-dns
perl-unix-syslog
tzdata
"
-# if compiled with support from clamd it must be run as user mimedefang
-makedepends="clamav-clamdscan clamav-scanner libmilter-dev rspamd-client"
-checkdepends="perl-test-class perl-test-harness-utils perl-test-most"
+# if compiled with support from clamd it must be run as user defang
+makedepends="clamav-clamdscan clamav-scanner libmilter-dev"
+case "$CARCH" in
+ x86) :
+ ;;
+ *) makedepends="$makedepends rspamd-client"
+ ;;
+esac
+checkdepends="perl-archive-zip perl-test-class perl-test-harness-utils perl-test-most"
subpackages="$pkgname-doc"
install="$pkgname.pre-install"
-source="$pkgname-$pkgver.tar.gz::https://github.com/The-McGrail-Foundation/MIMEDefang/archive/v$pkgver.tar.gz"
-builddir="$srcdir/MIMEDefang-$pkgver"
+source="https://github.com/The-McGrail-Foundation/MIMEDefang/releases/download/v$pkgver/mimedefang-$pkgver.tar.gz
+ date-test.patch
+ "
build() {
./configure \
@@ -34,20 +44,20 @@ build() {
--sysconfdir=/etc \
--mandir=/usr/share/man \
--localstatedir=/var \
- --with-user=mimedefang
+ --with-user=defang
make
}
check() {
- # fails on the builders
- [ "$CARCH" = "x86_64" ] && rm t/unit/dates.t
- make test
+ make test SMTP_TEST=no
}
package() {
make DESTDIR="$pkgdir" install
+ install -dm 750 -o defang -g defang "$pkgdir"/var/log/$pkgname
}
sha512sums="
-8a556953f0079033861d60460e05fab7b1d238b8201a3fbb9167c9f64beba791a8e9e8b4247e700a514fc9b3afc6b8a2b1e0e50589d820c3f209618cb3ab482a mimedefang-2.86.tar.gz
+2734834774c44d53a4e5632d113385e13e4e2ae8e94d5a766dca4f5a08b974373dbd6ee8a815a5b12d967b485154344ddbc9b70eb5ffe4988f061523e60ac0ab mimedefang-3.4.1.tar.gz
+3921058b9526dfbb2480d989e45ec9e1fc584470afb024f328e682b0fccdd8121945f9b61794c3abb599b22b0a0797dfaeb3071930e8f339cf0508baf1513ecd date-test.patch
"
diff --git a/testing/mimedefang/date-test.patch b/testing/mimedefang/date-test.patch
new file mode 100644
index 00000000000..72bd4a13ea6
--- /dev/null
+++ b/testing/mimedefang/date-test.patch
@@ -0,0 +1,11 @@
+--- a/t/dates.t
++++ b/t/dates.t
+@@ -37,7 +37,7 @@
+ {
+ no warnings 'once';
+ local $::main::QueueID = 'wookie';
+- like(::main::gen_msgid_header(), qr/Message-ID: <\d{12}\.wookie\@[-a-zA-Z0-9\.]+>\n/, 'Got Message-ID header in correct format');
++ like(::main::gen_msgid_header(), qr/Message-ID: <\d{12}\.wookie\@[-_a-zA-Z0-9\.]+>\n/, 'Got Message-ID header in correct format');
+ }
+
+ sub t_time_str: Test(1)
diff --git a/testing/mimedefang/mimedefang.pre-install b/testing/mimedefang/mimedefang.pre-install
index 7d28342a4ae..517db26e01b 100644
--- a/testing/mimedefang/mimedefang.pre-install
+++ b/testing/mimedefang/mimedefang.pre-install
@@ -1,6 +1,6 @@
#!/bin/sh
-addgroup -S mimefang 2>/dev/null
-adduser -S -D -H -h /var/spool/MIMEDefang -s /sbin/nologin -G mimedefang -g mimedefang mimedefang 2>/dev/null
+addgroup -S defang 2>/dev/null
+adduser -S -D -H -h /var/spool/MIMEDefang -s /sbin/nologin -G defang -g defang defang 2>/dev/null
exit 0
diff --git a/testing/mimeo/APKBUILD b/testing/mimeo/APKBUILD
index 9fb707bd912..99523d0f4c0 100644
--- a/testing/mimeo/APKBUILD
+++ b/testing/mimeo/APKBUILD
@@ -1,14 +1,15 @@
# Contributor: Anjandev Momi <anjan@momi.ca>
# Maintainer: Anjandev Momi <anjan@momi.ca>
pkgname=mimeo
-pkgver=2021.11
-pkgrel=0
+pkgver=2023
+pkgrel=1
pkgdesc="Open files by MIME-type or file name using regular expressions"
url="https://xyne.dev/projects/mimeo/"
arch="noarch"
license="GPL-3.0-or-later"
depends="python3 py3-xdg file shared-mime-info"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://xyne.dev/projects/mimeo/src/mimeo-$pkgver.tar.xz"
options="!check" # no upstream checks
@@ -17,9 +18,9 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
-85843acf42ef92ea1ae86cc7bc6c2291771b42714fbf06da167b7c98b944c0b413199d0c19c29dffd89f12c7ecbe43f96bde7f8da06c7831bb871d47dc35b031 mimeo-2021.11.tar.xz
+700c0cc79ee4a37aceeaddf1370112b65ea7506f6740c3be7339d53787d419046f3086304bd4f97a13c11e81d0bc0973cd3542ef70ab888f4f6c01808bb00d30 mimeo-2023.tar.xz
"
diff --git a/testing/mimir/APKBUILD b/testing/mimir/APKBUILD
new file mode 100644
index 00000000000..cda60b643ed
--- /dev/null
+++ b/testing/mimir/APKBUILD
@@ -0,0 +1,60 @@
+# Contributor: Guy Godfroy <guy.godfroy@gugod.fr>
+# Maintainer: Guy Godfroy <guy.godfroy@gugod.fr>
+pkgname=mimir
+pkgver=2.11.0
+pkgrel=2
+pkgdesc="Horizontally scalable, highly available, multi-tenant, long-term storage for Prometheus"
+options="net"
+url="https://github.com/grafana/mimir"
+license="AGPL-3.0-or-later"
+# others: needs 64 bits
+arch="x86_64 aarch64 ppc64le riscv64"
+makedepends="go bash"
+checkdepends="tzdata"
+subpackages="$pkgname-openrc"
+install="mimir.pre-install"
+source="$pkgname-$pkgver.tar.gz::https://github.com/grafana/mimir/archive/refs/tags/mimir-$pkgver.tar.gz
+ $pkgname.initd
+ $pkgname.confd
+ $pkgname.yaml
+ "
+builddir="$srcdir/$pkgname-$pkgname-$pkgver"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+prepare() {
+ default_prepare
+ mkdir build
+}
+
+build() {
+ go build -v \
+ -o build \
+ ./cmd/...
+}
+
+check() {
+ # not stable test for fluent-bit
+ # tsdb/index fails on aarch64
+ # shell check suggests to break it
+ # shellcheck disable=SC2046
+ # TestHelp fails because we build on a different path
+ TZ=UTC GOGC=10 go test -p=2 -skip 'fluent-bit|stores/tsdb/index|TestAlertmanager_StateReplication|TestHelp|TestConfigDescriptorIsUpToDate|TestIngester_compactBlocksToReduceInMemorySeries_Concurrency' ./...
+}
+
+package() {
+ mkdir -p "$pkgdir"/etc/$pkgname
+ install -Dm0755 build/* -t "$pkgdir"/usr/bin
+ install -Dm644 "$srcdir"/$pkgname.yaml "$pkgdir"/etc/mimir/mimir.yaml
+ install -Dm644 "$srcdir"/$pkgname.confd "$pkgdir"/etc/conf.d/$pkgname
+ install -Dm755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
+}
+
+sha512sums="
+4bea41a1a915904a56a68d5dcb9a24ce9af2ba812f850f5c7b0de1e92a674f9cc2de9f1bd28c84dfbd98989422006b05dbec77f362a409c5411f28a30025c9ec mimir-2.11.0.tar.gz
+7e0121d8d464d202ed8689d9831c2a86740ae4cf0da12f7e723bd90895ff7b3f33a1355dfe6a443e7e5d2a87b159a26b3eef937463a576205bd78dbdb8c01460 mimir.initd
+246f0c875828b819bd8f11d49afecd63480626f4d96d95a1431c2d755e356ebe6109b7e0d34262f668c783609f7781cace26a73bfbe660b6626854f0d34fba72 mimir.confd
+f4e1ef6f40faaeaa2a46112c023596c94b4d910274b257f5cb19198cfc6c068c3b6fe762b949354547948449a952a5ed1fb93b3cb090e69459cd5b780b4b3d44 mimir.yaml
+"
diff --git a/testing/mimir/mimir.confd b/testing/mimir/mimir.confd
new file mode 100644
index 00000000000..a9d2f31365b
--- /dev/null
+++ b/testing/mimir/mimir.confd
@@ -0,0 +1,5 @@
+# The mimir config file
+MIMIR_CONF="/etc/mimir/mimir.yaml"
+
+# Add any extra options to pass to mimir to this setting.
+#MIMIR_OPTS=""
diff --git a/testing/mimir/mimir.initd b/testing/mimir/mimir.initd
new file mode 100644
index 00000000000..8a753681baf
--- /dev/null
+++ b/testing/mimir/mimir.initd
@@ -0,0 +1,11 @@
+#!/sbin/openrc-run
+
+configfile="${MIMIR_CONF:-/etc/mimir/mimir.yaml}"
+
+command=/usr/bin/mimir
+command_args="-config.file=${configfile}
+ ${MIMIR_OPTS}"
+command_background=yes
+command_user=mimir:grafana
+make_pidfile=yes
+pidfile=/var/run/mimir.pid
diff --git a/testing/mimir/mimir.pre-install b/testing/mimir/mimir.pre-install
new file mode 100755
index 00000000000..4a84c04e8e3
--- /dev/null
+++ b/testing/mimir/mimir.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S grafana 2>/dev/null
+adduser -S -D -h /var/lib/mimir -s /bin/false -G grafana -g grafana mimir 2>/dev/null
+
+exit 0
diff --git a/testing/mimir/mimir.yaml b/testing/mimir/mimir.yaml
new file mode 100644
index 00000000000..5c58c51259d
--- /dev/null
+++ b/testing/mimir/mimir.yaml
@@ -0,0 +1,50 @@
+# Do not use this configuration in production.
+# It is for demonstration purposes only.
+multitenancy_enabled: false
+
+activity_tracker:
+ filepath: /var/lib/mimir/metrics-activity.log
+
+blocks_storage:
+ backend: filesystem
+ bucket_store:
+ sync_dir: /var/lib/mimir/tsdb-sync
+ filesystem:
+ dir: /var/lib/mimir/data/tsdb
+ tsdb:
+ dir: /var/lib/mimir/tsdb
+
+compactor:
+ data_dir: /var/lib/mimir/compactor
+ sharding_ring:
+ kvstore:
+ store: memberlist
+
+distributor:
+ ring:
+ instance_addr: 127.0.0.1
+ kvstore:
+ store: memberlist
+
+ingester:
+ ring:
+ instance_addr: 127.0.0.1
+ kvstore:
+ store: memberlist
+ replication_factor: 1
+
+ruler:
+ rule_path: /var/lib/mimir/data-ruler/
+
+ruler_storage:
+ backend: filesystem
+ filesystem:
+ dir: /var/lib/mimir/rules
+
+server:
+ http_listen_port: 9009
+ log_level: error
+
+store_gateway:
+ sharding_ring:
+ replication_factor: 1
diff --git a/testing/mingw-w64-libusb/APKBUILD b/testing/mingw-w64-libusb/APKBUILD
index bb33e38ab20..04a26213149 100644
--- a/testing/mingw-w64-libusb/APKBUILD
+++ b/testing/mingw-w64-libusb/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Clayton Craft <clayton@craftyguy.net>
# Maintainer: Clayton Craft <clayton@craftyguy.net>
pkgname=mingw-w64-libusb
-pkgver=1.0.24
+pkgver=1.0.27
pkgrel=0
pkgdesc="MinGW-w64 library that provides generic access to USB device for Windows"
options="!check"
@@ -27,7 +27,7 @@ case "$CARCH" in
esac
build() {
- echo $builddir
+ export LDFLAGS="${LDFLAGS/-Wl,-z,pack-relative-relocs/}"
./configure \
--prefix=/usr/$_target \
--host=$_target \
@@ -42,5 +42,5 @@ package() {
}
sha512sums="
-5aea36a530aaa15c6dd656d0ed3ce204522c9946d8d39ffbb290dab4a98cda388a2598da4995123d1032324056090bd429e702459626d3e8d7daeebc4e7ff3dc libusb-1.0.24.tar.bz2
+42abbbcf2564f86cc2f05826aeefa6beb03c9f89dc9fe05bdfa351caa3dbd07713ce193daadecf29557604dd3cbc770c8031a78e1ad0a8df3627c3f551d28ff0 libusb-1.0.27.tar.bz2
"
diff --git a/testing/minikube/APKBUILD b/testing/minikube/APKBUILD
index c6af70f438a..18176e4938f 100644
--- a/testing/minikube/APKBUILD
+++ b/testing/minikube/APKBUILD
@@ -1,15 +1,14 @@
# Contributor: Michał Polański <michal@polanski.me>
# Maintainer: Magicloud <magiclouds@gmail.com>
pkgname=minikube
-pkgver=1.25.2
-pkgrel=3
+pkgver=1.32.0
+pkgrel=2
pkgdesc="Tool that makes it easy to run Kubernetes locally"
url="https://github.com/kubernetes/minikube"
license="Apache-2.0"
arch="all !s390x !riscv64" # blocked by libvirt
arch="$arch !x86 !armhf !armv7 !ppc64le !aarch64" # FTBFS (kvm2 driver)
-options="chmod-clean"
-makedepends="go go-bindata bash libvirt-dev"
+makedepends="go bash libvirt-dev"
subpackages="
$pkgname-bash-completion
$pkgname-fish-completion
@@ -19,38 +18,33 @@ subpackages="
source="https://github.com/kubernetes/minikube/archive/v$pkgver/minikube-$pkgver.tar.gz
skip-amd64-only-test.patch
"
+options="net"
export GOPATH="$srcdir"
-
-prepare() {
- default_prepare
-
- mkdir -p "$srcdir"/src/k8s.io
- mv "$srcdir"/minikube-$pkgver "$srcdir"/src/k8s.io/minikube
- ln -s "$srcdir"/src/k8s.io/minikube/out "$srcdir"/minikube-$pkgver
-}
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
build() {
- cd "$GOPATH"/src/k8s.io/minikube
make out/minikube out/docker-machine-driver-kvm2
- cd "$builddir"
+ cd out
./minikube completion bash > $pkgname.bash
./minikube completion fish > $pkgname.fish
./minikube completion zsh > $pkgname.zsh
}
check() {
- cd "$GOPATH"/src/k8s.io/minikube
TESTSUITE=unittest make test
}
package() {
+ cd out
install -Dm755 minikube "$pkgdir"/usr/bin/minikube
install -Dm755 docker-machine-driver-kvm2 "$pkgdir"/usr/bin/docker-machine-driver-kvm2
install -Dm644 $pkgname.bash "$pkgdir"/usr/share/bash-completion/completions/$pkgname
- install -Dm644 $pkgname.fish "$pkgdir"/usr/share/fish/completions/$pkgname.fish
+ install -Dm644 $pkgname.fish "$pkgdir"/usr/share/fish/vendor_completions.d/$pkgname.fish
install -Dm644 $pkgname.zsh "$pkgdir"/usr/share/zsh/site-functions/_$pkgname
}
@@ -61,6 +55,6 @@ _kvm2_driver() {
}
sha512sums="
-137878da3f6ba84898c91d66579d09b425791e8688ea2a50b6bdd0900e5983633570965ad9e13f27b7b1da25cf0c402e47647b7b063dee9e6c585280f4158763 minikube-1.25.2.tar.gz
+afc759879b1f5cb713c112592ae7547bb7f6f4792289110183e87dafd00e4d05187ea9d728472cc15e585e50a1c219729fb66c5ae3d63dc32ee8d00b873ab2ae minikube-1.32.0.tar.gz
2eccb63b0905791968dec95f8f758da12632a8530c6db600648f2a190b23dd363d1a3c717488fc4e36f9082346c053eb9cf2ed00f65d14744e3fe9606dc32ddd skip-amd64-only-test.patch
"
diff --git a/testing/minimodem/APKBUILD b/testing/minimodem/APKBUILD
index 5c99440809d..64d3ed9fec0 100644
--- a/testing/minimodem/APKBUILD
+++ b/testing/minimodem/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=minimodem
pkgver=0.24
-pkgrel=0
+pkgrel=1
pkgdesc="general-purpose software audio FSK modem"
url="http://www.whence.com/minimodem"
arch="all"
diff --git a/testing/minio-client/APKBUILD b/testing/minio-client/APKBUILD
deleted file mode 100644
index c37c08974cb..00000000000
--- a/testing/minio-client/APKBUILD
+++ /dev/null
@@ -1,48 +0,0 @@
-# Maintainer: Chloe Kudryavtsev <toast@toast.cafe>
-
-# RESTRICTED: Do not upgrade to any version licensed under AGPL. No evidence
-# has been found supporting the existence of a CLA or relicensing campaign,
-# so we cannot confirm the legal validity of the license change. Accordingly,
-# any commit upgrading the version to an AGPL-licensed version WILL be reverted.
-
-pkgname=minio-client
-_pkgname=mc
-_pkgver='RELEASE.2020-12-18T10-53-53Z'
-pkgver=${_pkgver#*.}
-pkgver=${pkgver%T*}
-pkgver=0.${pkgver//-}
-pkgrel=6
-pkgdesc="The MinIO Client"
-url="https://minio.io/"
-license="Apache-2.0"
-arch="all"
-makedepends="go"
-source="$_pkgname-$pkgver.tar.gz::https://github.com/minio/$_pkgname/archive/$_pkgver.tar.gz"
-builddir="$srcdir/$_pkgname-$_pkgver"
-options="net"
-
-export GOPATH="$srcdir"
-export CGO_ENABLED=0
-
-build() {
- local _ldflags=$(go run buildscripts/gen-ldflags.go 2> /dev/null)
- go build -tags kqueue --ldflags "$_ldflags" -o bin/mc
-}
-
-check() {
- # mc/cmd is disabled, seems to be outdated and fails on all my systems
- go test -tags kqueue $(go list ./... | grep -v \
- -e cmd \
- )
-}
-
-package() {
- install -Dm755 "$builddir"/bin/mc \
- "$pkgdir"/usr/bin/mcli
-}
-
-cleanup_srcdir() {
- go clean -modcache
- default_cleanup_srcdir
-}
-sha512sums="7559df5c607cbb0e3a5bbeb83df97c2162ccce98ea3891243f8eb8ad3c1c5b35630baed3ec2659ddf2e4672b272b605f1546f07e6cde6c5c104623b7b6df7c6e mc-0.20201218.tar.gz"
diff --git a/testing/minipeg/APKBUILD b/testing/minipeg/APKBUILD
new file mode 100644
index 00000000000..2c04752b043
--- /dev/null
+++ b/testing/minipeg/APKBUILD
@@ -0,0 +1,31 @@
+# Contributor: Bryce Vandegrift <bryce@brycevandegrift.xyz>
+# Maintainer: Bryce Vandegrift <bryce@brycevandegrift.xyz>
+pkgname=minipeg
+pkgver=0.1.18_git20221008
+_commit=e6e26c2612cae839cee1323395bc62f2e11377d1
+pkgrel=0
+pkgdesc="Minimal fork of peg/leg C parser generator"
+url="https://ach.srht.site/minipeg"
+arch="all"
+license="MIT"
+subpackages="$pkgname-doc"
+source="$pkgname-$_commit.tar.gz::https://github.com/andrewchambers/minipeg/archive/$_commit.tar.gz"
+builddir="$srcdir/$pkgname-$_commit"
+
+build() {
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ install -Dm 0755 "$pkgname" -t "$pkgdir"/usr/bin
+ install -Dm 0644 "$pkgname".1 -t "$pkgdir"/usr/share/man/man1
+ install -Dm 0644 LICENSE -t "$pkgdir"/usr/share/licenses/$pkgname
+}
+
+sha512sums="
+6adea0dc0f236c05a20b0bbe9fe118dc7938274c0b32a5e1565ac21f27e9e99a264cd1dd1754e9885dac603dcfb5bb3483a4d504835ba9493e52bac9ba903d05 minipeg-e6e26c2612cae839cee1323395bc62f2e11377d1.tar.gz
+"
diff --git a/testing/minisatip/APKBUILD b/testing/minisatip/APKBUILD
new file mode 100644
index 00000000000..39b979451d7
--- /dev/null
+++ b/testing/minisatip/APKBUILD
@@ -0,0 +1,63 @@
+# Maintainer: lgehr <lgehr@mailbox.org>
+pkgname=minisatip
+pkgver=1.3.4
+pkgrel=0
+pkgdesc="minisatip is an SATIP server for linux using local DVB-S2, DVB-C, DVB-T or ATSC cards"
+url="https://minisatip.org"
+arch="all"
+license="GPL-2.0-or-later"
+makedepends="linux-headers openssl-dev libdvbcsa-dev"
+install="$pkgname.pre-install"
+subpackages="$pkgname-openrc"
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/catalinii/minisatip/archive/refs/tags/v$pkgver.tar.gz
+ minisatip.initd
+ minisatip.confd
+ default_document_root.patch
+ "
+
+prepare() {
+ default_prepare
+
+ # gcc sanitisers don't work on musl
+ # #10304
+ sed -i 's; -fsanitize=address;;g' tests/Makefile.in
+ sed -i 's; -fsanitize=leak;;g' tests/Makefile.in
+ sed -i 's; -fsanitize=null;;g' tests/Makefile.in
+}
+
+build() {
+ # no execinfo.h
+ export CFLAGS="$CFLAGS -DNO_BACKTRACE"
+
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var
+ make
+}
+
+check() {
+ make -j1 test #parallel execution fails with "text file busy"
+}
+
+package() {
+ install -Dm755 minisatip "$pkgdir"/usr/bin/minisatip
+ mkdir -p "$pkgdir"/usr/share/minisatip/html
+ cp -r html "$pkgdir"/usr/share/minisatip
+
+ install -m755 -D "$srcdir"/$pkgname.initd \
+ "$pkgdir"/etc/init.d/$pkgname
+ install -m644 -D "$srcdir"/$pkgname.confd \
+ "$pkgdir"/etc/conf.d/$pkgname
+}
+
+sha512sums="
+12e6d81e1b7c8c0c2206a209aa7f4cf5daabfa1d71f26ce11284f585add5e989685c061f179ada35eaa54e28332a49eef7ef3ace21f9db56d15831a15a33ae52 minisatip-1.3.4.tar.gz
+fb0c4125350dbb516fb005ee0246d9219bb7c38a0429fc714bd861990cfa8c13e5e217f5be9cf7216a0f5e912ef1fb6d21e93e98b303286332f66dfee6936460 minisatip.initd
+b29b2d4140b2c66431fdf876c0f15f98794be185c786cce7c5c202484e8c73c8b17aa564c37bdca22157fa97ac5598a8c16b58699559b1bd39e4a5c18835bccd minisatip.confd
+f9352ea6973e0314aa5c5bab4ee31dcb2b731fc889115a442d8cf912ae143ed2d04cdacefbebf13c949c0f17c6a800b73d3d0ee804734ba2dfce09783085781a default_document_root.patch
+"
diff --git a/testing/minisatip/default_document_root.patch b/testing/minisatip/default_document_root.patch
new file mode 100644
index 00000000000..8e2fd17f86f
--- /dev/null
+++ b/testing/minisatip/default_document_root.patch
@@ -0,0 +1,11 @@
+--- a/src/minisatip.c
++++ b/src/minisatip.c
+@@ -662,7 +662,7 @@
+ opts.pids_all_no_dec = 0;
+ opts.rtsp_port = 554;
+ opts.use_ipv4_only = 1;
+- opts.document_root = "html";
++ opts.document_root = "/usr/share/minisatip/html";
+ opts.cache_dir = "/var/cache/minisatip";
+ opts.xml_path = DESC_XML;
+ opts.th_priority = -1;
diff --git a/testing/minisatip/minisatip.confd b/testing/minisatip/minisatip.confd
new file mode 100644
index 00000000000..558669db98f
--- /dev/null
+++ b/testing/minisatip/minisatip.confd
@@ -0,0 +1,2 @@
+supervisor=supervise-daemon
+extra_opts="--syslog"
diff --git a/testing/minisatip/minisatip.initd b/testing/minisatip/minisatip.initd
new file mode 100644
index 00000000000..386b13dfe26
--- /dev/null
+++ b/testing/minisatip/minisatip.initd
@@ -0,0 +1,13 @@
+#!/sbin/openrc-run
+command="/usr/bin/minisatip"
+command_args="-f $extra_opts"
+command_background="yes"
+pidfile="/run/$RC_SVCNAME.pid"
+command_user="minisatip:minisatip"
+capabilities="^cap_net_bind_service"
+
+depend() {
+ need net
+ use logger dns
+ after firewall
+}
diff --git a/testing/minisatip/minisatip.pre-install b/testing/minisatip/minisatip.pre-install
new file mode 100644
index 00000000000..8e64a72b60f
--- /dev/null
+++ b/testing/minisatip/minisatip.pre-install
@@ -0,0 +1,7 @@
+#!/bin/sh
+
+addgroup -S minisatip 2>/dev/null
+adduser -S -D -H -s /sbin/nologin -G minisatip -g minisatip minisatip 2>/dev/null
+adduser minisatip video
+
+exit 0
diff --git a/testing/miniserve/APKBUILD b/testing/miniserve/APKBUILD
deleted file mode 100644
index 174dc65e72b..00000000000
--- a/testing/miniserve/APKBUILD
+++ /dev/null
@@ -1,46 +0,0 @@
-# Contributor: Michał Polański <michal@polanski.me>
-# Maintainer: Michał Polański <michal@polanski.me>
-pkgname=miniserve
-pkgver=0.19.5
-pkgrel=0
-pkgdesc="Quickly serve files via HTTP"
-url="https://github.com/svenstaro/miniserve"
-license="MIT"
-arch="all !s390x !riscv64" # limited by rust/cargo
-arch="$arch !ppc64le" # FTBFS
-makedepends="cargo"
-subpackages="
- $pkgname-doc
- $pkgname-bash-completion
- $pkgname-fish-completion
- $pkgname-zsh-completion
- "
-source="https://github.com/svenstaro/miniserve/archive/v$pkgver/miniserve-$pkgver.tar.gz"
-
-build() {
- cargo build --release --locked
-
- ./target/release/miniserve --print-manpage > $pkgname.1
-
- ./target/release/miniserve --print-completions bash > $pkgname.bash
- ./target/release/miniserve --print-completions fish > $pkgname.fish
- ./target/release/miniserve --print-completions zsh > $pkgname.zsh
-}
-
-check() {
- cargo test --release --locked
-}
-
-package() {
- install -Dm755 target/release/miniserve "$pkgdir"/usr/bin/miniserve
-
- install -Dm644 $pkgname.1 "$pkgdir"/usr/share/man/man1/$pkgname.1
-
- install -Dm644 $pkgname.bash "$pkgdir"/usr/share/bash-completion/completions/$pkgname
- install -Dm644 $pkgname.fish "$pkgdir"/usr/share/fish/completions/$pkgname.fish
- install -Dm644 $pkgname.zsh "$pkgdir"/usr/share/zsh/site-functions/_$pkgname
-}
-
-sha512sums="
-c5f5ee93dce6eae35c4e08468b197bf6c9c0dc6fd6d73478fd05875a88883aebfa85fb6679544e5afa143f8f1b32300e62804c47f44dce921aa0118c32c43e08 miniserve-0.19.5.tar.gz
-"
diff --git a/testing/mint-themes/APKBUILD b/testing/mint-themes/APKBUILD
index 553c1b228d2..f742fcf828d 100644
--- a/testing/mint-themes/APKBUILD
+++ b/testing/mint-themes/APKBUILD
@@ -1,15 +1,30 @@
-# Maintainer: Raymond Hackley <RaymondHackley0689@protonmail.com>
+# Maintainer: Raymond Hackley <raymondhackley@protonmail.com>
pkgname=mint-themes
-pkgver=1.9.6
-pkgrel=2
+pkgver=2.1.1
+pkgrel=0
pkgdesc="Mint themes for GNOME/GTK desktops"
options="!check" # It is a theme
url="https://github.com/linuxmint/mint-themes"
arch="noarch"
license="GPL-3.0-or-later"
+depends="mint-x-theme mint-y-theme"
makedepends="python3 sassc"
source="$pkgname-$pkgver.tar.gz::https://github.com/linuxmint/mint-themes/archive/$pkgver.tar.gz"
-subpackages="$pkgname-doc"
+subpackages="
+ $pkgname-doc
+ mint-x-theme:mint_x_theme
+ mint-x-theme-gtk2:mint_x_theme_gtk2
+ mint-x-theme-gtk3:mint_x_theme_gtk3
+ mint-x-theme-gtk4:mint_x_theme_gtk4
+ mint-x-theme-metacity:mint_x_theme_metacity
+ mint-x-theme-xfwm4:mint_x_theme_xfwm4
+ mint-y-theme:mint_y_theme
+ mint-y-theme-gtk2:mint_y_theme_gtk2
+ mint-y-theme-gtk3:mint_y_theme_gtk3
+ mint-y-theme-gtk4:mint_y_theme_gtk4
+ mint-y-theme-metacity:mint_y_theme_metacity
+ mint-y-theme-xfwm4:mint_y_theme_xfwm4
+ "
build() {
make
@@ -27,6 +42,98 @@ package() {
"$pkgdir"/usr/share/doc/"$pkgname"/copyright
}
+mint_x_theme() {
+ pkgdesc="Mint-X themes"
+ depends=""
+ amove usr/share/themes/Mint-X*/index.theme
+}
+
+mint_x_theme_gtk2() {
+ pkgdesc="GTK+2.0 assets for Mint themes"
+ depends="gtk-murrine-engine"
+ install_if="mint-x-theme=$pkgver-r$pkgrel gtk+2.0"
+
+ amove usr/share/themes/Mint-X*/gtk-2.0
+}
+
+mint_x_theme_gtk3() {
+ pkgdesc="GTK+3.0 assets for Mint themes"
+ depends=""
+ install_if="mint-x-theme=$pkgver-r$pkgrel gtk+3.0"
+
+ amove usr/share/themes/Mint-X*/gtk-3.0
+}
+
+mint_x_theme_gtk4() {
+ pkgdesc="GTK+4.0 assets for Mint themes"
+ depends=""
+ install_if="mint-x-theme=$pkgver-r$pkgrel gtk4.0"
+
+ amove usr/share/themes/Mint-X*/gtk-4.0
+}
+
+mint_x_theme_xfwm4() {
+ pkgdesc="xfwm assets for Mint themes"
+ depends=""
+ install_if="mint-x-theme=$pkgver-r$pkgrel xfwm4"
+
+ amove usr/share/themes/Mint-X*/xfwm4
+}
+
+mint_x_theme_metacity() {
+ pkgdesc="metacity assets for Mint themes"
+ depends=""
+ install_if="mint-x-theme=$pkgver-r$pkgrel metacity"
+
+ amove usr/share/themes/Mint-X*/metacity-1
+}
+
+mint_y_theme() {
+ pkgdesc="Mint-Y themes"
+ depends=""
+ amove usr/share/themes/Mint-Y*/index.theme
+}
+
+mint_y_theme_gtk2() {
+ pkgdesc="GTK+2.0 assets for Mint-Y themes"
+ depends="gtk-murrine-engine"
+ install_if="mint-y-theme=$pkgver-r$pkgrel gtk+2.0"
+
+ amove usr/share/themes/Mint-Y*/gtk-2.0
+}
+
+mint_y_theme_gtk3() {
+ pkgdesc="GTK+3.0 assets for Mint-Y themes"
+ depends=""
+ install_if="mint-y-theme=$pkgver-r$pkgrel gtk+3.0"
+
+ amove usr/share/themes/Mint-Y*/gtk-3.0
+}
+
+mint_y_theme_gtk4() {
+ pkgdesc="GTK+4.0 assets for Mint-Y themes"
+ depends=""
+ install_if="mint-y-theme=$pkgver-r$pkgrel gtk4.0"
+
+ amove usr/share/themes/Mint-Y*/gtk-4.0
+}
+
+mint_y_theme_xfwm4() {
+ pkgdesc="xfwm assets for Mint-Y themes"
+ depends=""
+ install_if="mint-y-theme=$pkgver-r$pkgrel xfwm4"
+
+ amove usr/share/themes/Mint-Y*/xfwm4
+}
+
+mint_y_theme_metacity() {
+ pkgdesc="metacity assets for Mint-Y themes"
+ depends=""
+ install_if="mint-y-theme=$pkgver-r$pkgrel metacity"
+
+ amove usr/share/themes/Mint-Y*/metacity-1
+}
+
sha512sums="
-a49d5aca5d020dcc68a98992b3a90fc56ef8a1c9b47f04e9f1ae42906ba39d035954341d3d9fade196e33ffe4dc43aa8a9ff45dd8b8e3c1b08ef05e205e9c1c8 mint-themes-1.9.6.tar.gz
+7692608dd0ac8e6f5d14b2f0332d40d215e4f07f9745a3bcc2bea099b7519d70d1a23aec853ca30191d04f133772cacae9fca38b3f6737b9afe916c696b08aaf mint-themes-2.1.1.tar.gz
"
diff --git a/testing/mint-x-icons/APKBUILD b/testing/mint-x-icons/APKBUILD
index fed5dd487b3..af615497e3e 100644
--- a/testing/mint-x-icons/APKBUILD
+++ b/testing/mint-x-icons/APKBUILD
@@ -1,15 +1,13 @@
-# Maintainer: Raymond Hackley <RaymondHackley0689@protonmail.com>
+# Maintainer: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
pkgname=mint-x-icons
-pkgver=1.6.4
+pkgver=1.6.5
pkgrel=1
pkgdesc="Mint-X icon theme"
options="!check" # It is an icon theme
url="https://github.com/linuxmint/mint-x-icons"
arch="noarch"
license="GPL-3.0-or-later"
-_mint_x_icons_commit="4ab3c314db1b3751d87d5769629b28ac0ca3c671"
-source="$pkgname-$pkgver.tar.gz::https://github.com/linuxmint/mint-x-icons/archive/$_mint_x_icons_commit.tar.gz"
-builddir="$srcdir"/$pkgname-$_mint_x_icons_commit
+source="$pkgname-$pkgver-2.tar.gz::https://github.com/linuxmint/mint-x-icons/archive/$pkgver.tar.gz"
subpackages="$pkgname-doc"
package() {
@@ -23,5 +21,5 @@ package() {
}
sha512sums="
-21b19675dc92eed11abfd3364ccff340770a0da75f8d55a363f00857a37d3bd952e05950fb9c7315a5bf42929a4a4545fc29de60c46815a74918ff1d4cc10c4a mint-x-icons-1.6.4.tar.gz
+63dc27dccbcf3c548a7aed6cb18abcd3abd17e254f4e94b8e5589ff57f843e315bea618e25e9b974d93abf2929bcd7271c1596bba3e71ddab56f8e7d2def854d mint-x-icons-1.6.5-2.tar.gz
"
diff --git a/testing/mint-y-icons/APKBUILD b/testing/mint-y-icons/APKBUILD
index 536ea883d64..edb6f33fca2 100644
--- a/testing/mint-y-icons/APKBUILD
+++ b/testing/mint-y-icons/APKBUILD
@@ -1,15 +1,13 @@
-# Maintainer: Raymond Hackley <RaymondHackley0689@protonmail.com>
+# Maintainer: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
pkgname=mint-y-icons
-pkgver=1.5.9
-pkgrel=1
+pkgver=1.7.2
+pkgrel=0
pkgdesc="Mint-Y icon theme"
options="!check" # It is an icon theme
url="https://github.com/linuxmint/mint-y-icons"
arch="noarch"
license="GPL-3.0-or-later"
-_mint_y_icons_commit="36cdc3c1978dfd9d62469fdf8bf641b97742b7a7"
-source="$pkgname-$pkgver.tar.gz::https://github.com/linuxmint/mint-y-icons/archive/$_mint_y_icons_commit.tar.gz"
-builddir="$srcdir"/$pkgname-$_mint_y_icons_commit
+source="$pkgname-$pkgver.tar.gz::https://github.com/linuxmint/mint-y-icons/archive/$pkgver.tar.gz"
subpackages="$pkgname-doc"
package() {
@@ -23,5 +21,5 @@ package() {
}
sha512sums="
-2cdcd7a7362e15a718ac4d98cfcdafd337adc95e48968b4f86c029bfee92152ba741076abfd8223f7e5107b62f4600e8628a24e2108c1111dd7981eaec4e1892 mint-y-icons-1.5.9.tar.gz
+a188b69618b005882a5fbad4252abc35ecddd70a811f0d9d54a1116cdeec10c543f1d9d5554938d753655270e5e16282d27dc219a6a217461bf7591a597a1a20 mint-y-icons-1.7.2.tar.gz
"
diff --git a/testing/mir/0001-Fix-the-signature-of-drmModeCrtcSetGamma.patch b/testing/mir/0001-Fix-the-signature-of-drmModeCrtcSetGamma.patch
new file mode 100644
index 00000000000..51707dfa212
--- /dev/null
+++ b/testing/mir/0001-Fix-the-signature-of-drmModeCrtcSetGamma.patch
@@ -0,0 +1,70 @@
+From 98250e9c32c5b9b940da2fb0a32d8139bbc68157 Mon Sep 17 00:00:00 2001
+From: Alan Griffiths <alan@octopull.co.uk>
+Date: Thu, 31 Aug 2023 12:05:13 +0100
+Subject: [PATCH] Fix the signature of drmModeCrtcSetGamma
+
+---
+ tests/include/mir/test/doubles/mock_drm.h | 2 +-
+ tests/mir_test_doubles/mock_drm.cpp | 22 ++++++++++++++++++++--
+ 2 files changed, 21 insertions(+), 3 deletions(-)
+
+diff --git a/tests/include/mir/test/doubles/mock_drm.h b/tests/include/mir/test/doubles/mock_drm.h
+index aeba8c7d05..d3c44f30c2 100644
+--- a/tests/include/mir/test/doubles/mock_drm.h
++++ b/tests/include/mir/test/doubles/mock_drm.h
+@@ -155,7 +155,7 @@ public:
+ MOCK_METHOD6(drmModeCrtcGetGamma, int(int fd, uint32_t crtc_id, uint32_t size,
+ uint16_t* red, uint16_t* green, uint16_t* blue));
+ MOCK_METHOD6(drmModeCrtcSetGamma, int(int fd, uint32_t crtc_id, uint32_t size,
+- uint16_t* red, uint16_t* green, uint16_t* blue));
++ uint16_t const* red, uint16_t const* green, uint16_t const* blue));
+
+ MOCK_METHOD1(drmGetVersion, drmVersionPtr(int));
+ MOCK_METHOD1(drmFreeVersion, void(drmVersionPtr));
+diff --git a/tests/mir_test_doubles/mock_drm.cpp b/tests/mir_test_doubles/mock_drm.cpp
+index d3d5840b7a..bd51466cba 100644
+--- a/tests/mir_test_doubles/mock_drm.cpp
++++ b/tests/mir_test_doubles/mock_drm.cpp
+@@ -489,6 +489,24 @@ testing::Matcher<int> mtd::IsFdOfDevice(char const* device)
+ return ::testing::MakeMatcher(new mtd::MockDRM::IsFdOfDeviceMatcher(device));
+ }
+
++// The signature of drmModeCrtcSetGamma() changes from passing the gamma as `uint16_t*` to `uint16_t const*`
++// We need to provide a definition that matches
++namespace
++{
++template<typename Any>
++struct Decode_drmModeCrtcSetGamma_signature;
++
++template<typename Arg>
++struct Decode_drmModeCrtcSetGamma_signature<int(int fd, uint32_t crtc_id, uint32_t size, Arg red, Arg gree, Arg blue)>
++{
++ using gamma_t = Arg;
++};
++using gamma_t = Decode_drmModeCrtcSetGamma_signature<decltype(drmModeCrtcSetGamma)>::gamma_t;
++}
++
++// Ensure we get a compile error if the definition doesn't match the declaration (instead of providing an overload)
++extern "C"
++{
+ int drmOpen(const char *name, const char *busid)
+ {
+ return global_mock->drmOpen(name, busid);
+@@ -548,8 +566,7 @@ int drmModeCrtcGetGamma(int fd, uint32_t crtc_id, uint32_t size,
+ return global_mock->drmModeCrtcGetGamma(fd, crtc_id, size, red, green, blue);
+ }
+
+-int drmModeCrtcSetGamma(int fd, uint32_t crtc_id, uint32_t size,
+- uint16_t* red, uint16_t* green, uint16_t* blue)
++int drmModeCrtcSetGamma(int fd, uint32_t crtc_id, uint32_t size, gamma_t red, gamma_t green, gamma_t blue)
+ {
+ return global_mock->drmModeCrtcSetGamma(fd, crtc_id, size, red, green, blue);
+ }
+@@ -751,3 +768,4 @@ int drmCheckModesettingSupported(char const* busid)
+ {
+ return global_mock->drmCheckModesettingSupported(busid);
+ }
++}
+--
+2.42.0
+
diff --git a/testing/mir/APKBUILD b/testing/mir/APKBUILD
new file mode 100644
index 00000000000..ea77d920617
--- /dev/null
+++ b/testing/mir/APKBUILD
@@ -0,0 +1,111 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Luca Weiss <luca@z3ntu.xyz>
+pkgname=mir
+pkgver=2.15.0
+pkgrel=0
+pkgdesc="Mir Display Server"
+url="https://mir-server.io"
+arch="all"
+license="GPL-2.0-or-later AND LGPL-2.0-or-later"
+depends="
+ ttf-freefont
+ xkeyboard-config
+ "
+depends_dev="
+ boost-dev
+ capnproto-dev
+ eudev-dev
+ freetype-dev
+ gflags-dev
+ glib-dev
+ glm-dev
+ glog-dev
+ libepoxy-dev
+ libevdev-dev
+ libinput-dev
+ libxcursor-dev
+ libxkbcommon-dev
+ libxml++-2.6-dev
+ lttng-ust-dev
+ mesa-dev
+ nettle-dev
+ protobuf-dev
+ umockdev-dev
+ wayland-dev
+ yaml-cpp-dev
+ "
+makedepends="
+ $depends_dev
+ cmake
+ gmock
+ gtest-dev
+ lttng-ust-tools
+ py3-pillow
+ samurai
+ wlcs-dev
+ "
+checkdepends="
+ bash
+ grep
+ wlcs
+ "
+source="https://github.com/MirServer/mir/releases/download/v$pkgver/mir-$pkgver.tar.xz
+ 0001-Fix-the-signature-of-drmModeCrtcSetGamma.patch
+ "
+subpackages="$pkgname-dev $pkgname-demos $pkgname-test-tools:test_tools"
+options="!check" # some tests fail/hang currently, to be debugged
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=None \
+ -DMIR_FATAL_COMPILE_WARNINGS=OFF \
+ -DMIR_ENABLE_WLCS_TESTS=OFF \
+ -DMIR_USE_LD=ld
+ cmake --build build
+}
+
+check() {
+ XDG_RUNTIME_DIR=/tmp ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+dev() {
+ default_dev
+ amove usr/bin/mir_wayland_generator
+}
+
+demos() {
+ pkgdesc="$pkgdesc - demonstration programs"
+ amove usr/bin/miral-shell
+ amove usr/bin/miral-kiosk
+ amove usr/bin/miral-app
+ amove usr/bin/miral-terminal
+ amove usr/bin/mir-shell
+ amove usr/bin/miral-system-compositor
+ amove usr/share/applications/miral-shell.desktop
+ amove usr/share/wayland-sessions/mir-shell.desktop
+ amove usr/share/icons/hicolor/scalable/apps/ubuntu-logo.svg
+}
+
+test_tools() {
+ pkgdesc="$pkgdesc - stress tests and other test tools"
+ amove usr/bin/mir_performance_tests
+ amove usr/bin/mir-smoke-test-runner
+ amove usr/bin/mir_platform_graphics_test_harness
+ amove usr/lib/mir/tools/libmirserverlttng.so
+ amove usr/bin/mir_demo_client_*
+ amove usr/bin/mir_demo_server
+ amove usr/lib/mir/server-platform/graphics-dummy.so
+ amove usr/lib/mir/server-platform/input-stub.so
+}
+
+sha512sums="
+b8a5ed4326a6257595873c35d683a343fc96840d1b2824af6478c59db44cc8d0eea9984b74db09ae101885d457d83fa4faa37992b755b92f3e7712b1c09072cd mir-2.15.0.tar.xz
+c31f487d4db5281bad79b228899dcc4e159050e218002f7f152a5885e065c55f109932085854f8c4f45fb70ecb629c5a6bfeef87d2f94db0e39ab82004f337fc 0001-Fix-the-signature-of-drmModeCrtcSetGamma.patch
+"
diff --git a/testing/miraclecast/APKBUILD b/testing/miraclecast/APKBUILD
new file mode 100644
index 00000000000..1d2b8ff934b
--- /dev/null
+++ b/testing/miraclecast/APKBUILD
@@ -0,0 +1,47 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=miraclecast
+pkgver=1.0_git20221016
+pkgrel=0
+_commit="380504b0f833faa46f12d3a1f3861b97d08d32a4"
+pkgdesc="Connect external monitors to your system via Wifi-Display specification also known as Miracast"
+url="https://github.com/albfan/miraclecast"
+arch="all"
+license="LGPL-2.1-or-later AND LGPL-2.0-or-later AND GPL-2.0-only"
+makedepends="
+ meson
+ elogind-dev
+ eudev-dev
+ glib-dev
+ readline-dev
+ samurai
+ "
+subpackages="$pkgname-bash-completion"
+source="https://github.com/albfan/miraclecast/archive/$_commit/miraclecast-$_commit.tar.gz"
+builddir="$srcdir/$pkgname-$_commit"
+
+build() {
+ abuild-meson \
+ . output \
+ -Denable-systemd=false \
+ -Dbuild-tests=true
+ meson compile -C output
+}
+
+check() {
+ meson test --no-rebuild -v -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+
+ mkdir -p "$pkgdir"/usr/share/dbus-1/system.d
+ mv \
+ "$pkgdir"/etc/dbus-1/system.d/org.freedesktop.miracle.conf \
+ "$pkgdir"/usr/share/dbus-1/system.d/
+ rm -r "$pkgdir"/etc/dbus-1
+}
+
+sha512sums="
+b3a91cffa36cdfff3db9cd080d1ccf549188cf26a01d2f795b0262e9c7e621b9bc9bdf1e606c38b4051381dac8295f7dc9561b77601db29ac520eadd237c2003 miraclecast-380504b0f833faa46f12d3a1f3861b97d08d32a4.tar.gz
+"
diff --git a/testing/mitmproxy/APKBUILD b/testing/mitmproxy/APKBUILD
index 9c3631885d5..3acec9de8f6 100644
--- a/testing/mitmproxy/APKBUILD
+++ b/testing/mitmproxy/APKBUILD
@@ -1,30 +1,31 @@
# Contributor: Fabian Affolter <fabian@affolter-engineering.ch>
# Contributor: Michał Polański <michal@polanski.me>
-# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
+# Maintainer: Michał Polański <michal@polanski.me>
pkgname=mitmproxy
-pkgver=7.0.4
-pkgrel=2
+pkgver=10.2.0
+pkgrel=0
pkgdesc="Interactive TLS-capable intercepting HTTP proxy"
url="https://mitmproxy.org/"
license="MIT"
-arch="noarch !s390x !armhf" # limited by py3-zstandard
+# armhf, s390x: limited by py3-zstandard
+# ppc64le, riscv64, s390x: limited by py3-mitmproxy-rs
+arch="noarch !armhf !ppc64le !riscv64 !s390x"
depends="
- python3
+ py3-aioquic
py3-asgiref
- py3-blinker
py3-brotli
py3-certifi
- py3-click
py3-cryptography
py3-flask
+ py3-h11
py3-h2
py3-hyperframe
py3-kaitaistruct
py3-ldap3
+ py3-mitmproxy-rs
py3-msgpack
py3-passlib
py3-protobuf
- py3-asn1
py3-openssl
py3-parsing
py3-pyperclip
@@ -36,7 +37,12 @@ depends="
py3-publicsuffix2
py3-zstandard
"
-makedepends="py3-setuptools"
+makedepends="
+ py3-gpep517
+ py3-installer
+ py3-setuptools
+ py3-wheel
+ "
checkdepends="
py3-hypothesis
py3-parver
@@ -44,37 +50,36 @@ checkdepends="
py3-pytest-asyncio
py3-requests
"
-source="$pkgname-$pkgver.tar.gz::https://github.com/mitmproxy/mitmproxy/archive/v$pkgver.tar.gz
+subpackages="$pkgname-pyc"
+source="https://github.com/mitmproxy/mitmproxy/archive/$pkgver/mitmproxy-$pkgver.tar.gz
skip-test-optmanager-x86.patch
+ fix-openssl-tests.patch
"
# secfixes:
# 7.0.3-r0:
# - CVE-2021-39214
-prepare() {
- default_prepare
- # remove test file importing asynctest module, which doesn't support python3.8
- # see: https://github.com/Martiusweb/asynctest/issues/132
- rm test/mitmproxy/addons/test_readfile.py
-
- # relax constraints on required dependencies
- sed -E "s/, *<[0-9=.]*//" -i setup.py
-}
-
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- pytest --deselect "test/mitmproxy/test_version.py::test_get_version"
+ pytest \
+ --deselect "test/mitmproxy/test_version.py::test_get_version" \
+ --deselect "test/mitmproxy/proxy/test_mode_servers.py::test_wireguard" \
+ --deselect "test/mitmproxy/addons/test_script.py::test_order"
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir" --skip-build
+ python3 -m installer -d "$pkgdir" \
+ .dist/mitmproxy-$pkgver-py3-none-any.whl
}
sha512sums="
-4224b44e609f84b974b5419c6ceb576845957968c786ee437bffb5fa5df685ce0712d5ef8c402d40c568406242f44692cc7f04037fadd19ecece8b112d73b7ae mitmproxy-7.0.4.tar.gz
-30d677fe7899394e096d20f16d5522dc962518bebf4e23eaa954507a2dd99af61e568e6515363c74fd606d43cce21bc4c3272c6f08d2cf97d88981449cf9d1a2 skip-test-optmanager-x86.patch
+dde49756394b6ea0c69e791f0ffe579d8ba2b0a321032af8700a4ba3d1a26039e477f24523fb34229faf0e9c71a29530938c8f302dc9131a674f4cb47a57f0c3 mitmproxy-10.2.0.tar.gz
+1baa88dae9f664af4bed62f89a7f5d13685b42774ea19563eba7298ef09fa07fafb4d5f1650e044561a5d304451d916e6c9833ad9755204d424bea6ed3bdb4fd skip-test-optmanager-x86.patch
+7f37bcff3ea870224075f18745e382c9ba8bd3c8697be11d0eccf458a5f4eecdda097c2ae790f6f5db796512c03fb78988d3e96cbde5aac6cef6a8b8b767faab fix-openssl-tests.patch
"
diff --git a/testing/mitmproxy/fix-openssl-tests.patch b/testing/mitmproxy/fix-openssl-tests.patch
new file mode 100644
index 00000000000..8e3d07bbe84
--- /dev/null
+++ b/testing/mitmproxy/fix-openssl-tests.patch
@@ -0,0 +1,20 @@
+apparently the tests rely on some openssl library error strings, and we get different ones :)
+
+diff --git a/test/mitmproxy/proxy/layers/test_tls.py b/test/mitmproxy/proxy/layers/test_tls.py
+index 9960f8b..892ce31 100644
+--- a/test/mitmproxy/proxy/layers/test_tls.py
++++ b/test/mitmproxy/proxy/layers/test_tls.py
+@@ -394,3 +394,3 @@ class TestServerTLS:
+ << commands.Log(
+- "Server TLS handshake failed. The remote server does not speak TLS.",
++ "Server TLS handshake failed. OpenSSL Error([('SSL routines', '', 'packet length too long'), ('SSL routines', '', 'record layer failure')])",
+ WARNING,
+@@ -401,3 +401,2 @@ class TestServerTLS:
+ )
+- assert tls_hook_data().conn.error == "The remote server does not speak TLS."
+
+@@ -668,3 +667,3 @@ class TestClientTLS:
+ "Client TLS handshake failed. The client does not trust the proxy's certificate "
+- "for wrong.host.mitmproxy.org (sslv3 alert bad certificate)",
++ "for wrong.host.mitmproxy.org (OpenSSL Error([('SSL routines', '', 'ssl/tls alert bad certificate')]))",
+ WARNING,
diff --git a/testing/mitmproxy/skip-test-optmanager-x86.patch b/testing/mitmproxy/skip-test-optmanager-x86.patch
index 0300d9b9867..b2d21c93091 100644
--- a/testing/mitmproxy/skip-test-optmanager-x86.patch
+++ b/testing/mitmproxy/skip-test-optmanager-x86.patch
@@ -1,5 +1,3 @@
-diff --git a/test/mitmproxy/test_optmanager.py b/test/mitmproxy/test_optmanager.py
-index d0f0567..e24e378 100644
--- a/test/mitmproxy/test_optmanager.py
+++ b/test/mitmproxy/test_optmanager.py
@@ -186,6 +186,8 @@ def test_subscribe():
diff --git a/testing/mitra/APKBUILD b/testing/mitra/APKBUILD
new file mode 100644
index 00000000000..31a634d6891
--- /dev/null
+++ b/testing/mitra/APKBUILD
@@ -0,0 +1,100 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=mitra
+pkgver=2.16.0
+pkgrel=0
+_mitraweb=$pkgver #"${pkgver%.*}.0"
+pkgdesc="ActivityPub microblogging platform written in Rust"
+url="https://mitra.social/@mitra"
+# riscv64: vite webapp fails to build: 'Parse error @:1:38'
+arch="all !riscv64"
+license="AGPL-3.0-only"
+depends="postgresql"
+makedepends="
+ cargo
+ cargo-auditable
+ nodejs
+ npm
+ openssl-dev
+ "
+install="$pkgname.pre-install $pkgname.post-install"
+pkgusers="mitra"
+pkggroups="mitra"
+subpackages="$pkgname-doc $pkgname-openrc"
+source="mitra-$pkgver.tar.gz::https://codeberg.org/silverpill/mitra/archive/v$pkgver.tar.gz
+ mitra-web-$_mitraweb.tar.gz::https://codeberg.org/silverpill/mitra-web/archive/v$_mitraweb.tar.gz
+ mitra.initd
+ init.sql
+ config.yaml
+ "
+builddir="$srcdir/mitra"
+
+# use system openssl
+export OPENSSL_NO_VENDOR=1
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+
+ cd "$srcdir/mitra-web"
+
+ npm ci --foreground-scripts
+}
+
+build() {
+ RUSTFLAGS="--cfg=ammonia_unstable" \
+ cargo auditable build --frozen --release \
+ --features production
+
+ cd "$srcdir/mitra-web"
+
+ echo 'VITE_BACKEND_URL=' > .env.local
+ npm run build
+}
+
+check() {
+ # These tests require a database connection
+ RUSTFLAGS="--cfg=ammonia_unstable" \
+ cargo test --frozen --workspace \
+ --exclude mitra_models -- \
+ --skip test_follow_unfollow \
+ --skip test_hide_reblogs \
+ --skip test_subscribe_unsubscribe \
+ --skip test_get_jrd \
+ --skip test_filter_mentions_none \
+ --skip test_filter_mentions_only_known \
+ --skip test_prepare_instance_ed25519_key
+
+ cd "$srcdir/mitra-web"
+
+ npm run test
+}
+
+package() {
+ install -Dm755 target/release/mitra -t "$pkgdir"/usr/bin
+ install -Dm755 target/release/mitractl -t "$pkgdir"/usr/bin
+
+ mkdir -p "$pkgdir"/usr/share/webapps
+ cp -r "$srcdir"/mitra-web/dist \
+ "$pkgdir"/usr/share/webapps/mitra
+
+ install -Dm644 docs/* -t "$pkgdir"/usr/share/doc/$pkgname
+ install -Dm644 config_dev.example.yaml \
+ contrib/Caddyfile contrib/*.nginx \
+ contrib/monero/wallet.conf \
+ -t "$pkgdir"/usr/share/doc/$pkgname/examples
+
+ install -Dm640 -g mitra "$srcdir"/config.yaml -t "$pkgdir"/etc/mitra
+ install -dm755 -o mitra -g mitra "$pkgdir"/var/lib/mitra
+ install -Dm644 "$srcdir"/init.sql -t "$pkgdir"/var/lib/mitra
+ install -Dm755 "$srcdir"/mitra.initd "$pkgdir"/etc/init.d/mitra
+}
+
+sha512sums="
+11ccb4162e5d35f774438c964f174c28d89e67be1d0789cb0320997c149739ade73388ebf18fdc1d5bf476f8b589e41f83b5a9a3e587ee7383fb39e6f4201af1 mitra-2.16.0.tar.gz
+59935e83c4c462d6d44774d3780844962c7a5c34bc1aa335cfb6565a8f32d7af55344a61d45d4cbcb7fed9a6ce68925ec9982feaa171e895bed8fef9d9a38447 mitra-web-2.16.0.tar.gz
+691f84f5dfdddc176e75792ab03ff167054246e75ced51be47a89f405ae55ebe5eb6280b73c1b467b5ecbe8539f6108fb3d86873d50fcc4f4b8c5b182632acb0 mitra.initd
+180a47f5072534418b4aac3ce7c885a4f7e4dc38aca80d6d81c79848d12fbe24799788c3575bd195030a10da5e0372f87fa2809a4ef99a48eaa6df52f4d053dd init.sql
+c958bcd6c96cb40d7369b7dcd13d1722ed23afb856c2569630b47cf5fe8a94105bb5e7ed7421c169e08f3764d9e60e05bed0b861ab117292d715600c852b15b0 config.yaml
+"
diff --git a/testing/mitra/config.yaml b/testing/mitra/config.yaml
new file mode 100644
index 00000000000..7f93b570260
--- /dev/null
+++ b/testing/mitra/config.yaml
@@ -0,0 +1,121 @@
+# Mitra configuration file
+
+# Database configuration
+# Examples:
+# - postgres://mitra:mitra@127.0.0.1:5432/mitra
+# - postgres://mitra@%2Fvar%2Frun%2Fpostgresql/mitra
+database_url: postgres://mitra:${psql_password}@127.0.0.1:5432/mitra
+#database_tls_ca_file: /etc/mitra/database.pem
+
+# Directory where media attachments and temporary files are stored
+storage_dir: /var/lib/mitra
+# Directory where static files for web client (frontend) are stored
+web_client_dir: /usr/share/webapps/mitra
+
+http_host: '127.0.0.1'
+http_port: 8383
+
+# List of allowed origins for CORS (in addition to `instance_uri`)
+# Trailing slashes are not allowed.
+#http_cors_allowlist:
+# - http://127.0.0.1:8383
+
+# Log level (debug, info, warn)
+#log_level: info
+
+# Domain name
+instance_uri: https://example.tld
+
+instance_title: example
+instance_short_description: my instance
+# Long description can contain markdown syntax
+instance_description: |
+ # My instance
+ Welcome!
+# Make list of instance admins public
+instance_staff_public: false
+# Make instance (local) timeline public
+instance_timeline_public: false
+
+registration:
+ # Possible values: open, invite
+ type: invite
+ # Possible values: user, read_only_user
+ default_role: user
+
+# Possible values: password, eip4361, caip122_monero. Default: only password.
+#authentication_methods:
+# - password
+# - eip4361
+# - caip122_monero
+# Access token expiration time (seconds). Default: 7 days
+#authentication_token_lifetime: 604800
+
+# EIP-4361 / CAIP-122 login message
+#login_message: 'Do not sign this message on other sites!'
+
+# Limits
+#limits:
+# media:
+# file_size_limit: 20M
+# posts:
+# character_limit: 5000
+
+# Data retention parameters.
+# Objects will be deleted after the specified number of days.
+retention:
+ # Remote posts with which local accounts didn't interact
+ extraneous_posts: 50
+ # Remote accounts without posts
+ empty_profiles: 150
+
+# Federation parameters
+#federation:
+# enabled: true
+# # Proxy for outgoing requests
+# #proxy_url: 'socks5h://127.0.0.1:9050'
+# # Proxy for outgoing requests to .onion targets
+# #onion_proxy_url: 'socks5h://127.0.0.1:9050'
+# # Proxy for outgoing requests to .i2p targets
+# #i2p_proxy_url: 'socks5h://127.0.0.1:4447'
+
+# Lists of blocked and allowed domains (allowlist has higher priority).
+# Wildcard patterns are supported. Example: *.domain.example
+#blocked_instances: []
+#allowed_instances: []
+
+# Blockchain integrations
+# Multi-chain setups are currently not supported.
+# Chain metadata for EVM chains can be found at https://github.com/ethereum-lists/chains
+# Signing key for ethereum integration can be generated with `mitractl generate-ethereum-address`
+#blockchains:
+# - chain_id: monero:mainnet
+# chain_metadata:
+# # Displayed on subscription page, can contain markdown syntax
+# description: null
+# node_url: 'http://127.0.0.1:18089'
+# wallet_rpc_url: 'http://127.0.0.1:18083'
+# wallet_rpc_username: null
+# wallet_rpc_password: null
+# wallet_name: null
+# wallet_password: null
+# account_index: 0
+# - chain_id: eip155:31337
+# chain_metadata:
+# chain_name: localhost
+# currency_name: ETH
+# currency_symbol: ETH
+# currency_decimals: 18
+# public_api_url: 'http://127.0.0.1:8545'
+# explorer_url: null
+# contract_address: '0xDc64a140Aa3E981100a9becA4E685f962f0cF6C9'
+# contract_dir: /usr/share/mitra/contracts
+# api_url: 'http://127.0.0.1:8545'
+# signing_key: null
+# chain_sync_step: 1000
+# chain_reorg_max_depth: 10
+
+# IPFS integration
+#ipfs_api_url: 'http://127.0.0.1:5001'
+# IPFS gateway (for clients)
+#ipfs_gateway_url: 'https://ipfs.example.tld'
diff --git a/testing/mitra/init.sql b/testing/mitra/init.sql
new file mode 100644
index 00000000000..be22ea28630
--- /dev/null
+++ b/testing/mitra/init.sql
@@ -0,0 +1,2 @@
+CREATE USER mitra WITH PASSWORD '${psql_password}';
+CREATE DATABASE mitra OWNER mitra ENCODING 'UTF8';
diff --git a/testing/mitra/mitra.initd b/testing/mitra/mitra.initd
new file mode 100644
index 00000000000..c50b06ba5bb
--- /dev/null
+++ b/testing/mitra/mitra.initd
@@ -0,0 +1,27 @@
+#!/sbin/openrc-run
+
+name=mitra
+description="Mitra is an ActivityPub microblogging platform written in Rust"
+
+: ${cfgfile:="/etc/mitra/config.yaml"}
+export CONFIG_PATH="${cfgfile}"
+
+command="/usr/bin/mitra"
+command_background=true
+command_user="mitra:mitra"
+pidfile="/run/${RC_SVCNAME}.pid"
+directory="/var/lib/mitra"
+error_log="/var/log/mitra.log"
+
+required_files="$cfgfile"
+
+depend() {
+ need localmount net postgresql
+ after firewall
+}
+
+start_pre() {
+ checkpath -f -m 0640 -o "root:mitra" "$cfgfile"
+ checkpath -f -m 0640 -o "$command_user" "$error_log"
+ checkpath -d -m 0750 -o "$command_user" "$directory"
+}
diff --git a/testing/mitra/mitra.post-install b/testing/mitra/mitra.post-install
new file mode 100644
index 00000000000..ab2f6413a95
--- /dev/null
+++ b/testing/mitra/mitra.post-install
@@ -0,0 +1,7 @@
+#!/bin/sh
+
+echo "--"
+echo "Create a PostgreSQL user and database using /var/lib/mitra/init.sql."
+echo "Be sure to set the database password in the config at /etc/mitra/config.yaml."
+echo "Then create an admin user with 'mitractl create-user <user> <password> admin'."
+echo "--"
diff --git a/testing/mitra/mitra.pre-install b/testing/mitra/mitra.pre-install
new file mode 100644
index 00000000000..b91fd19ad2e
--- /dev/null
+++ b/testing/mitra/mitra.pre-install
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+addgroup -S mitra 2>/dev/null
+adduser -S -D -H \
+ -h /var/lib/mitra \
+ -s /sbin/nologin \
+ -G mitra \
+ -g "Mitra microblogging platform" \
+ mitra 2>/dev/null
+
+exit 0
diff --git a/testing/mixxx/APKBUILD b/testing/mixxx/APKBUILD
index 9f680f5a0f7..6da4121366d 100644
--- a/testing/mixxx/APKBUILD
+++ b/testing/mixxx/APKBUILD
@@ -1,58 +1,50 @@
# Maintainer: Ariadne Conill <ariadne@dereferenced.org>
pkgname=mixxx
-pkgver=2.3.2
-pkgrel=3
+pkgver=2.3.6
+pkgrel=2
pkgdesc="DJ mixing software"
url="https://www.mixxx.org/"
-# riscv64 and s390x blocked by polkit -> upower
-arch="all !riscv64 !s390x"
+arch="all"
license="GPL-2.0-or-later"
depends="qt5-qtbase-sqlite"
# eudev is used to determine the right location to install a udev file by the build system
makedepends="
+ chromaprint-dev
cmake
-
+ eudev-dev
+ ffmpeg-dev
+ fftw-dev
+ flac-dev
+ glu-dev
+ hidapi-dev
lame-dev
+ libebur128-dev
+ libid3tag-dev
libkeyfinder-dev
libmad-dev
- libid3tag-dev
- taglib-dev
- opusfile-dev
libmodplug-dev
- libvorbis-dev
- wavpack-dev
- ffmpeg-dev
+ libshout-dev
libsndfile-dev
- flac-dev
-
- fftw-dev
+ libusb-dev
+ libvorbis-dev
lilv-dev
- rubberband-dev
- soundtouch-dev
-
+ opusfile-dev
portaudio-dev
- portmidi-dev
- libshout-dev
-
+ portmidi-dev<=200
protobuf-dev
- chromaprint-dev
- sqlite-dev
- libusb-dev
-
- upower-dev
- hidapi-dev
-
qt5-qtbase-dev
- qt5-qtkeychain-dev
- qt5-qttools-dev
- qt5-qtx11extras-dev
qt5-qtscript-dev
qt5-qtsvg-dev
-
+ qt5-qttools-dev
+ qt5-qtx11extras-dev
+ qtkeychain-dev
+ rubberband-dev
samurai
-
- glu-dev
- eudev-dev
+ soundtouch-dev
+ sqlite-dev
+ taglib-dev
+ upower-dev
+ wavpack-dev
"
checkdepends="xvfb-run"
subpackages="$pkgname-doc"
@@ -68,7 +60,7 @@ build() {
}
check() {
- CTEST_OUTPUT_ON_FAILURE=TRUE xvfb-run ctest
+ CTEST_OUTPUT_ON_FAILURE=TRUE xvfb-run -a ctest
}
package() {
@@ -76,5 +68,5 @@ package() {
}
sha512sums="
-81282d6c587914157b9ef4a7ca2f0e886cb97a847e215e2b0496671938d392e3fc8f941071577bc69db517e677dcd96b72e4b53d6fd42d2224c8a4e62d2acbcd mixxx-2.3.2.tar.gz
+a92c2c92dc7619ac135d940f23ffdc101c528eca6322517805afb9eb48a84c6339cefb88b96bdac6ffb23967c2f93f621daf3e98bfecbf7f3fe7626ddcec4398 mixxx-2.3.6.tar.gz
"
diff --git a/testing/mjpg-streamer/APKBUILD b/testing/mjpg-streamer/APKBUILD
index c2a886a4045..51bb4d66478 100644
--- a/testing/mjpg-streamer/APKBUILD
+++ b/testing/mjpg-streamer/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: George Hopkins <george-hopkins@null.net>
pkgname=mjpg-streamer
pkgver=0_git20210220
-pkgrel=0
+pkgrel=1
_commit="310b29f4a94c46652b20c4b7b6e5cf24e532af39"
pkgdesc="MJPEG streaming application for Linux-UVC compatible webcams"
url="https://github.com/jacksonliam/mjpg-streamer"
diff --git a/testing/mk-configure/APKBUILD b/testing/mk-configure/APKBUILD
deleted file mode 100644
index 8a92a558554..00000000000
--- a/testing/mk-configure/APKBUILD
+++ /dev/null
@@ -1,27 +0,0 @@
-# Contributor: David Demelier <markand@malikania.fr>
-# Maintainer: David Demelier <markand@malikania.fr>
-pkgname=mk-configure
-pkgver=0.37.0
-pkgrel=0
-pkgdesc="Lightweight replacement for autotools"
-url="https://github.com/cheusov/mk-configure"
-arch="noarch"
-license="BSD-2-Clause"
-depends="bmake bmkdep"
-checkdepends="texinfo flex bison groff"
-subpackages="$pkgname-dev $pkgname-doc"
-source="https://github.com/cheusov/mk-configure/archive/refs/tags/mk-configure-$pkgver.tar.gz"
-builddir="$srcdir/$pkgname-$pkgname-$pkgver"
-options="!check" # Not working correctly.
-
-build() {
- bmake PREFIX=/usr SYSCONFDIR=/etc
-}
-
-package() {
- bmake install DESTDIR="$pkgdir" PREFIX=/usr MANDIR=/usr/share/man SYSCONFDIR=/etc
-}
-
-sha512sums="
-53908709c478aa60ad9fc4ca5ef2c4249b243fd398735ad6f601864715b582b8abbd710a43d81d86a36864bf6e60e64304ddf014ddce0b1ae6c08a6a2a4e1cef mk-configure-0.37.0.tar.gz
-"
diff --git a/testing/mkcert/APKBUILD b/testing/mkcert/APKBUILD
index bbeb56fee55..2650a0a0c19 100644
--- a/testing/mkcert/APKBUILD
+++ b/testing/mkcert/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Andy Postnikov <apostnikov@gmail.com>
pkgname=mkcert
-pkgver=1.4.3
-pkgrel=4
+pkgver=1.4.4
+pkgrel=11
pkgdesc="simple zero-config tool to make locally trusted development certificates with any names you'd like"
url="https://mkcert.dev/"
arch="all"
@@ -10,6 +10,10 @@ makedepends="go nss-tools"
options="chmod-clean"
source="$pkgname-$pkgver.tar.gz::https://github.com/FiloSottile/mkcert/archive/refs/tags/v$pkgver.tar.gz"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
build() {
go generate
go build -ldflags "-X main.Version=$pkgver" -v
@@ -24,5 +28,5 @@ package() {
}
sha512sums="
-d21269253fbcd96b7fd5afe5469123becbd1d280428272292de052b4772f4017af373289f5cb66179b7689368d1c262f4253dba04e0faa2f18824aa34607f250 mkcert-1.4.3.tar.gz
+480672618df409f153535f42ed4777447635b2ac78e38d9cc62aa9baa47b074aa01fa94ade4666f9ad31bf870caec53e5f0de69791c5e094a911d59f82382b05 mkcert-1.4.4.tar.gz
"
diff --git a/testing/mkdocs-alabaster/APKBUILD b/testing/mkdocs-alabaster/APKBUILD
deleted file mode 100644
index 5fc8062482b..00000000000
--- a/testing/mkdocs-alabaster/APKBUILD
+++ /dev/null
@@ -1,25 +0,0 @@
-# Contributor: David Demelier <markand@malikania.fr>
-# Maintainer: David Demelier <markand@malikania.fr>
-pkgname=mkdocs-alabaster
-pkgver=0.8.0
-pkgrel=1
-pkgdesc="alabaster port for MkDocs"
-url="https://mkdocs-alabaster.ale.sh"
-arch="noarch"
-license="BSD-3-Clause"
-depends="python3"
-makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/m/mkdocs-alabaster/mkdocs-alabaster-$pkgver.tar.gz"
-options="!check"
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-d2c25f5ee3820aabb5398ada04d17127088d4a477495dea363cf13f07bba315da46a68a6be94a76852ecbdb9f050f071d439e4210cc9b709a004ab5794097eff mkdocs-alabaster-0.8.0.tar.gz
-"
diff --git a/testing/mkdocs-bootstrap/APKBUILD b/testing/mkdocs-bootstrap/APKBUILD
index 70e7ef7cedb..152beca0d7a 100644
--- a/testing/mkdocs-bootstrap/APKBUILD
+++ b/testing/mkdocs-bootstrap/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: David Demelier <markand@malikania.fr>
# Maintainer: David Demelier <markand@malikania.fr>
pkgname=mkdocs-bootstrap
-pkgver=1.1
+pkgver=1.1.1
pkgrel=1
pkgdesc="bootstrap theme for mkdocs"
url="http://mkdocs.github.io/mkdocs-bootstrap"
@@ -9,6 +9,7 @@ arch="noarch"
license="BSD-2-Clause"
depends="python3"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/m/mkdocs-bootstrap/mkdocs-bootstrap-$pkgver.tar.gz"
options="!check" # No tests.
@@ -17,9 +18,9 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
-1fd0461c11db0d696955bcd62153328a379b03661d2e36d28265e5c94aa536c6a277c935d51138ec3df5f3cb4b5b9479efe1b01ac13b8c6903e1509cab23077e mkdocs-bootstrap-1.1.tar.gz
+590b6ab2b449c65e26a90a76cae2b10d3a6681c99b33c0ff91c48ca3e2e90c2c4cf3cb0588d9c13775568b084bec56862dc212e9b30bd081e78e4ff3da2c8cbe mkdocs-bootstrap-1.1.1.tar.gz
"
diff --git a/testing/mkdocs-bootstrap386/APKBUILD b/testing/mkdocs-bootstrap386/APKBUILD
index b0bb3196d1a..084186a895f 100644
--- a/testing/mkdocs-bootstrap386/APKBUILD
+++ b/testing/mkdocs-bootstrap386/APKBUILD
@@ -2,13 +2,14 @@
# Maintainer: David Demelier <markand@malikania.fr>
pkgname=mkdocs-bootstrap386
pkgver=0.0.2
-pkgrel=1
+pkgrel=4
pkgdesc="a vintage 1980s DOS inspired Twitter Bootstrap theme for mkdocs"
url="https://github.com/chrissimpkins/bootstrap386"
arch="noarch"
license="BSD-2-Clause"
depends="python3"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/m/mkdocs-bootstrap386/mkdocs-bootstrap386-$pkgver.tar.gz"
options="!check" # No tests.
@@ -17,7 +18,7 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
diff --git a/testing/mkdocs-bootstrap4/APKBUILD b/testing/mkdocs-bootstrap4/APKBUILD
index 44576b5aad8..5aab0d37e57 100644
--- a/testing/mkdocs-bootstrap4/APKBUILD
+++ b/testing/mkdocs-bootstrap4/APKBUILD
@@ -2,13 +2,14 @@
# Maintainer: David Demelier <markand@malikania.fr>
pkgname=mkdocs-bootstrap4
pkgver=0.1.5
-pkgrel=1
+pkgrel=4
pkgdesc="bootstrap4 theme for mkdocs"
url="https://github.com/byrnereese/mkdocs-bootstrap4"
arch="noarch"
license="MIT"
depends="python3"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/m/mkdocs-bootstrap4/mkdocs-bootstrap4-$pkgver.tar.gz"
options="!check" # No tests.
@@ -17,7 +18,7 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
diff --git a/testing/mkdocs-bootswatch/APKBUILD b/testing/mkdocs-bootswatch/APKBUILD
index f0695ab5c2e..619d872bdfc 100644
--- a/testing/mkdocs-bootswatch/APKBUILD
+++ b/testing/mkdocs-bootswatch/APKBUILD
@@ -2,13 +2,14 @@
# Maintainer: David Demelier <markand@malikania.fr>
pkgname=mkdocs-bootswatch
pkgver=1.1
-pkgrel=1
+pkgrel=4
pkgdesc="bootswatch themes for mkdocs"
url="http://mkdocs.org"
arch="noarch"
license="BSD-2-Clause"
depends="python3"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/m/mkdocs-bootswatch/mkdocs-bootswatch-$pkgver.tar.gz"
options="!check" # No tests.
@@ -17,7 +18,7 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
diff --git a/testing/mkdocs-cinder/APKBUILD b/testing/mkdocs-cinder/APKBUILD
index b6eb7e8353b..cc43b24463c 100644
--- a/testing/mkdocs-cinder/APKBUILD
+++ b/testing/mkdocs-cinder/APKBUILD
@@ -2,13 +2,14 @@
# Maintainer: David Demelier <markand@malikania.fr>
pkgname=mkdocs-cinder
pkgver=1.2.0
-pkgrel=1
+pkgrel=4
pkgdesc="clean responsive theme for mkdocs"
url="https://github.com/chrissimpkins/cinder"
arch="noarch"
license="MIT"
depends="python3"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/m/mkdocs-cinder/mkdocs-cinder-$pkgver.tar.gz"
options="!check" # No tests.
@@ -17,7 +18,7 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
diff --git a/testing/mkdocs-cluster/APKBUILD b/testing/mkdocs-cluster/APKBUILD
index 3af1580ba9e..cb8ed57a739 100644
--- a/testing/mkdocs-cluster/APKBUILD
+++ b/testing/mkdocs-cluster/APKBUILD
@@ -2,13 +2,14 @@
# Maintainer: David Demelier <markand@malikania.fr>
pkgname=mkdocs-cluster
pkgver=0.0.9
-pkgrel=1
+pkgrel=4
pkgdesc="another bootstrap theme for mkdocs"
url="https://gitlab.com/kaliko/mkdocs-cluster"
arch="noarch"
license="BSD-2-Clause"
depends="python3"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/m/mkdocs-cluster/mkdocs-cluster-$pkgver.tar.gz"
options="!check" # No tests.
@@ -17,7 +18,7 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
diff --git a/testing/mkdocs-gitbook/APKBUILD b/testing/mkdocs-gitbook/APKBUILD
index b3c33dcdd75..15d2d8011e2 100644
--- a/testing/mkdocs-gitbook/APKBUILD
+++ b/testing/mkdocs-gitbook/APKBUILD
@@ -2,13 +2,14 @@
# Maintainer: David Demelier <markand@malikania.fr>
pkgname=mkdocs-gitbook
pkgver=0.0.1
-pkgrel=1
+pkgrel=4
pkgdesc="GitBook theme for mkdocs"
url="https://gitlab.com/lramage/mkdocs-gitbook-theme"
arch="noarch"
license="Apache-2.0"
depends="python3"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/m/mkdocs-gitbook/mkdocs-gitbook-$pkgver.tar.gz"
options="!check" # No tests.
@@ -17,7 +18,7 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
diff --git a/testing/mkdocs-ivory/APKBUILD b/testing/mkdocs-ivory/APKBUILD
index 589b5743d6f..c8632955a27 100644
--- a/testing/mkdocs-ivory/APKBUILD
+++ b/testing/mkdocs-ivory/APKBUILD
@@ -2,13 +2,14 @@
# Maintainer: David Demelier <markand@malikania.fr>
pkgname=mkdocs-ivory
pkgver=0.4.6
-pkgrel=1
+pkgrel=4
pkgdesc="ivory theme for MkDocs"
url="https://github.com/daizutabi/mkdocs-ivory"
arch="noarch"
license="MIT"
depends="python3"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/m/mkdocs-ivory/mkdocs-ivory-$pkgver.tar.gz"
options="!check" # No tests.
@@ -17,7 +18,7 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
diff --git a/testing/mkdocs-material-extensions/APKBUILD b/testing/mkdocs-material-extensions/APKBUILD
deleted file mode 100644
index 14931bcb263..00000000000
--- a/testing/mkdocs-material-extensions/APKBUILD
+++ /dev/null
@@ -1,25 +0,0 @@
-# Contributor: David Demelier <markand@malikania.fr>
-# Maintainer: David Demelier <markand@malikania.fr>
-pkgname=mkdocs-material-extensions
-pkgver=1.0.1
-pkgrel=1
-pkgdesc="extension pack for Python Markdown"
-url="https://github.com/facelessuser/mkdocs-material-extensions"
-arch="noarch"
-license="MIT"
-depends="python3"
-makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/m/mkdocs-material-extensions/mkdocs-material-extensions-$pkgver.tar.gz"
-options="!check" # Recursive dependency with mkdocs-material
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-9f127735dcca9cd668496af18d850762131ce4f754e1852bc9b322213dce0854bb5f4438bfe5ac0eea11176f3ffc3c7a79a75a6812b2f3eba9d65165c5063421 mkdocs-material-extensions-1.0.1.tar.gz
-"
diff --git a/testing/mkdocs-material/APKBUILD b/testing/mkdocs-material/APKBUILD
deleted file mode 100644
index 9490fbf5b36..00000000000
--- a/testing/mkdocs-material/APKBUILD
+++ /dev/null
@@ -1,25 +0,0 @@
-# Contributor: David Demelier <markand@malikania.fr>
-# Maintainer: David Demelier <markand@malikania.fr>
-pkgname=mkdocs-material
-pkgver=7.1.9
-pkgrel=1
-pkgdesc="a material Design theme for MkDocs"
-url="https://squidfunk.github.io/mkdocs-material"
-arch="noarch"
-license="MIT"
-depends="mkdocs-material-extensions py3-pygments py3-pymdown-extensions python3"
-makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/m/mkdocs-material/mkdocs-material-$pkgver.tar.gz"
-options="!check" # No tests.
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-d3e0286ab05ec6651bfef0862eb46ebfb7a3d6632b0f36c37d90b97a57626cd6f0a3fdacbd11f3bea80f6344377c8247797551d1a5d6e8ab616a242e3459417c mkdocs-material-7.1.9.tar.gz
-"
diff --git a/testing/mkdocs-rtd-dropdown/APKBUILD b/testing/mkdocs-rtd-dropdown/APKBUILD
index a237eaf5159..fefcea2a171 100644
--- a/testing/mkdocs-rtd-dropdown/APKBUILD
+++ b/testing/mkdocs-rtd-dropdown/APKBUILD
@@ -2,13 +2,14 @@
# Maintainer: David Demelier <markand@malikania.fr>
pkgname=mkdocs-rtd-dropdown
pkgver=1.0.2
-pkgrel=1
+pkgrel=4
pkgdesc="clone of read the docs theme for markdown"
url="https://github.com/cjsheets/mkdocs-rtd-dropdown"
arch="noarch"
license="MIT"
depends="python3"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/m/mkdocs-rtd-dropdown/mkdocs-rtd-dropdown-$pkgver.tar.gz"
options="!check" # No tests.
@@ -17,7 +18,7 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
diff --git a/testing/mkdocs-windmill-dark/APKBUILD b/testing/mkdocs-windmill-dark/APKBUILD
deleted file mode 100644
index 2c28d200415..00000000000
--- a/testing/mkdocs-windmill-dark/APKBUILD
+++ /dev/null
@@ -1,25 +0,0 @@
-# Contributor: David Demelier <markand@malikania.fr>
-# Maintainer: David Demelier <markand@malikania.fr>
-pkgname=mkdocs-windmill-dark
-pkgver=0.2.0
-pkgrel=1
-pkgdesc="mkdocs theme focused on navigation and usability (dark variant)"
-url="https://github.com/noraj/mkdocs-windmill-dark"
-arch="noarch"
-license="MIT"
-depends="python3"
-makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/m/mkdocs-windmill-dark/mkdocs-windmill-dark-$pkgver.tar.gz"
-options="!check" # No tests.
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-90e766e3c2a465e513dc2cd42754f9786c34a1c8e12e5521e5a39b08271f9125c7a9807d4223b19d04b965357af1e6dc4027fb6e2b3b3c70749aa21f8ee3d848 mkdocs-windmill-dark-0.2.0.tar.gz
-"
diff --git a/testing/mkdocs-windmill/APKBUILD b/testing/mkdocs-windmill/APKBUILD
index dadf71bc0c5..cfc9f8b6edb 100644
--- a/testing/mkdocs-windmill/APKBUILD
+++ b/testing/mkdocs-windmill/APKBUILD
@@ -1,15 +1,16 @@
# Contributor: David Demelier <markand@malikania.fr>
# Maintainer: David Demelier <markand@malikania.fr>
pkgname=mkdocs-windmill
-pkgver=1.0.4
-pkgrel=1
-pkgdesc="mkdocs theme focused on navigation and usability"
+pkgver=1.0.5
+pkgrel=3
+pkgdesc="MkDocs theme focused on navigation and usability"
url="https://github.com/gristlabs/mkdocs-windmill"
arch="noarch"
license="MIT"
-depends="python3"
+depends="python3 mkdocs"
makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/m/mkdocs-windmill/mkdocs-windmill-$pkgver.tar.gz"
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/m/$pkgname/$pkgname-$pkgver.tar.gz"
options="!check" # No tests.
build() {
@@ -17,9 +18,9 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
-5e5e0fd580d2c6af7842a0c91549a59c71baf65cceaeafd453b141e33e1ea7ff8820c819413b2df04a6c969d9dba66ee963ffabb16cf7799463453207090f4c6 mkdocs-windmill-1.0.4.tar.gz
+32093a10e1ef1eddba6de031556bcf53f7b8bb9ef911a5bde4b89aecb4733a1ec35cf9ec3d99b98b678b4d22f8958ef6da4e36b1fcac04fdf3cdc1a9a71766f0 mkdocs-windmill-1.0.5.tar.gz
"
diff --git a/testing/mkdocs/APKBUILD b/testing/mkdocs/APKBUILD
deleted file mode 100644
index f8acc2a3244..00000000000
--- a/testing/mkdocs/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Contributor: David Demelier <markand@malikania.fr>
-# Maintainer: David Demelier <markand@malikania.fr>
-pkgname=mkdocs
-pkgver=1.2.3
-pkgrel=0
-pkgdesc="project documentation with Markdown"
-url="http://mkdocs.org"
-arch="noarch !ppc64le" # Missing py3-importlib-metadata
-license="BSD-2-Clause"
-depends="py3-click
- py3-ghp-import
- py3-importlib-metadata
- py3-jinja2
- py3-markdown
- py3-mergedeep
- py3-packaging
- py3-pyyaml-env-tag
- py3-watchdog
- py3-yaml
- python3
- "
-makedepends="py3-setuptools"
-source="mkdocs-$pkgver.tar.gz::https://github.com/mkdocs/mkdocs/archive/refs/tags/$pkgver.tar.gz"
-options="!check" # No tests.
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-03385bc940df8a6b3668300f3752afe973b95f149bee58217ace82063aacb661dbd000a2a7a383c4804434473c3945cec3cb41d6608388350da3098c32709541 mkdocs-1.2.3.tar.gz
-"
diff --git a/testing/mkg3a/APKBUILD b/testing/mkg3a/APKBUILD
index a3ad1acded6..b41ba76cc12 100644
--- a/testing/mkg3a/APKBUILD
+++ b/testing/mkg3a/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: KikooDX <kikoodx@paranoici.org>
pkgname=mkg3a
pkgver=0.5.0
-pkgrel=0
+pkgrel=1
pkgdesc="utility for creating Casio Prizm add-on (.g3a) files"
url="https://gitlab.com/taricorp/mkg3a"
arch="all"
@@ -10,7 +10,7 @@ license="Zlib"
makedepends="libpng-dev cmake"
subpackages="$pkgname-doc"
options="!check" # there is no test suite
-source="$pkgname-$pkgver.tar.gz::$url/-/archive/$pkgver/mkg3a-$pkgver.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://gitlab.com/taricorp/mkg3a/-/archive/$pkgver/mkg3a-$pkgver.tar.gz"
build() {
if [ "$CBUILD" != "$CHOST" ]; then
diff --git a/testing/mkrundir/APKBUILD b/testing/mkrundir/APKBUILD
new file mode 100644
index 00000000000..f54b53b3d7e
--- /dev/null
+++ b/testing/mkrundir/APKBUILD
@@ -0,0 +1,27 @@
+# Contributor: Hugo Osvaldo Barrera <hugo@whynothugo.nl>
+# Maintainer: Hugo Osvaldo Barrera <hugo@whynothugo.nl>
+pkgname=mkrundir
+pkgver=0.3.1
+pkgrel=1
+pkgdesc="Create an XDG_RUNTIME_DIR"
+url="https://sr.ht/~whynothugo/mkrundir/"
+arch="x86_64 aarch64 riscv64" # Hare
+license="ISC"
+makedepends="hare libcap-setcap"
+source="
+ mkrundir-$pkgver.tar.gz::https://git.sr.ht/~whynothugo/mkrundir/archive/v$pkgver.tar.gz
+"
+options="!check setcap"
+builddir="$srcdir/mkrundir-v$pkgver/"
+
+build() {
+ make PREFIX=/usr mkrundir
+}
+
+package() {
+ make DESTDIR="$pkgdir" PREFIX=/usr install
+}
+
+sha512sums="
+586dcfcd39a953cd012b44f63b7f6a513a1f020d13b8e42e3bfde994a1b595ae82fd6f16ecf1867262b51a4adef2a5ae28f8990126fcb3d77931d973f62a3a68 mkrundir-0.3.1.tar.gz
+"
diff --git a/testing/mktorrent-borg/APKBUILD b/testing/mktorrent-borg/APKBUILD
index e6bb2dd9a98..7fdeefa3b79 100644
--- a/testing/mktorrent-borg/APKBUILD
+++ b/testing/mktorrent-borg/APKBUILD
@@ -1,13 +1,13 @@
# Contributor: Francesco Colista <fcolista@alpinelinux.org>
-# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
+# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=mktorrent-borg
pkgver=0.9.9
-pkgrel=0
+pkgrel=1
pkgdesc="A handy tool for creating .torrent files"
url="http://borg.uu3.net/~borg/"
arch="all"
license="BSD-3-Clause"
-makedepends="openssl-dev"
+makedepends="openssl-dev>3"
subpackages="$pkgname-doc"
source="http://borg.uu3.net/ftp/pub/unix/mktorrent/mktorrent-$pkgver.tgz"
diff --git a/testing/mle/APKBUILD b/testing/mle/APKBUILD
deleted file mode 100644
index 914c6e7b377..00000000000
--- a/testing/mle/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Contributor: Adam Saponara <as@php.net>
-# Maintainer: Adam Saponara <as@php.net>
-pkgname=mle
-pkgver=1.4.3
-pkgrel=0
-pkgdesc="Flexible terminal-based text editor"
-url="https://github.com/adsr/mle"
-arch="all"
-license="Apache-2.0"
-makedepends="uthash-dev termbox-dev lua5.3-dev pcre-dev"
-checkdepends="bash grep"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/adsr/mle/archive/v$pkgver.tar.gz"
-
-prepare() {
- default_prepare
- sed -i 's/-llua5.3/-llua/g' Makefile
-}
-
-build() {
- export CFLAGS="$CFLAGS -I/usr/include/lua5.3"
- export LDFLAGS="$LDFLAGS -L/usr/lib/lua5.3"
- make
-}
-
-check() {
- make test
-}
-
-package() {
- make DESTDIR="$pkgdir" prefix=/usr install
- install -d "$pkgdir/usr/share/man/man1"
- install -m644 mle.1 "$pkgdir"/usr/share/man/man1/
-}
-
-sha512sums="014a8834a088f410a9ef5cd213140f1e4386726bd277f5fdffdfff8165cd1460ede54d5cb62a26bdef804391a524d398a439977b8f82add3d365936a3c5505ab mle-1.4.3.tar.gz"
diff --git a/testing/mlxl/APKBUILD b/testing/mlxl/APKBUILD
new file mode 100644
index 00000000000..d9e61f66e1c
--- /dev/null
+++ b/testing/mlxl/APKBUILD
@@ -0,0 +1,30 @@
+# Maintainer: Miles Alan <m@milesalan.com>
+pkgname=mlxl
+pkgver=0.1
+pkgrel=0
+pkgdesc="Mobile Linux X Lock"
+url="https://git.sr.ht/~mil/mlxl"
+arch="all"
+license="GPL-3.0-or-later"
+makedepends="libx11-dev"
+source="
+ $pkgname-$pkgver.tar.gz::https://git.sr.ht/~mil/mlxl/archive/$pkgver.tar.gz
+ flags.patch
+ "
+# No test suite.
+# suid locker
+options="suid !check"
+
+build() {
+ make
+}
+
+package() {
+ mkdir -p "$pkgdir"/usr/bin
+ make PREFIX=/usr DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+b6fc13d8cdcda18206e50c5606932a076ac270bb525da1364c637e6b89be2e62c58e3fe77aaed5e1e3656a991ddb0e6de0be623e70170afac6f264a53398cc1f mlxl-0.1.tar.gz
+01418e757936a1693b42d576d563dffb4fc8751b7d787945feb3cb0c9fdf3056061844841c5a3ed636b075f1c707529d5a17a48071e423c76702d20082d025a9 flags.patch
+"
diff --git a/testing/mlxl/flags.patch b/testing/mlxl/flags.patch
new file mode 100644
index 00000000000..7c19464e947
--- /dev/null
+++ b/testing/mlxl/flags.patch
@@ -0,0 +1,11 @@
+diff --git a/Makefile b/Makefile
+index d468630..c2ccfd4 100644
+--- a/Makefile
++++ b/Makefile
+@@ -1,5 +1,5 @@
+ mlxl:
+- gcc -o mlxl mlxl.c -lX11
++ gcc $(CFLAGS) $(LDFLAGS) -o mlxl mlxl.c -lX11
+ chmod u+s mlxl
+
+ clean:
diff --git a/testing/mm-common/APKBUILD b/testing/mm-common/APKBUILD
index 331b815a305..c10137f8970 100755..100644
--- a/testing/mm-common/APKBUILD
+++ b/testing/mm-common/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Alex Yam <alex@alexyam.com>
# Maintainer: Alex Yam <alex@alexyam.com>
pkgname=mm-common
-pkgver=1.0.3
+pkgver=1.0.5
pkgrel=0
arch="noarch"
pkgdesc="Build infrastructure and utilities for GNOME C++ binding libraries"
@@ -9,38 +9,22 @@ options="!check" # No test suite
url="https://gitlab.gnome.org/GNOME/mm-common"
license="GPL-2.0-or-later"
depends="
- autoconf
- automake
gtkmm3-dev
glibmm-dev
"
+makedepends="meson"
subpackages="$pkgname-doc"
-source="
- $pkgname-$pkgver.tar.gz::https://github.com/GNOME/mm-common/archive/$pkgver.tar.gz
- http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/libstdc++.tag
- "
-
-prepare() {
- default_prepare
- ./autogen.sh
-
- cp $srcdir/libstdc++.tag $builddir/doctags/
-}
+source="$pkgname-$pkgver-2.tar.xz::https://download.gnome.org/sources/mm-common/${pkgver%.*}/mm-common-$pkgver.tar.xz"
build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --disable-network # Download libstdc++.tag outside configure
- make
+ abuild-meson -Db_lto=true . output
+ meson compile -C output
}
package() {
- make DESTDIR="$pkgdir" install
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
}
sha512sums="
-a7d37ec74cae29e990ab1add4454eaded92ad929b9da19314879b408a43835bff5ee41d876c87aed3e6627b8f48f6dcd8f7afb84afa8f2521629a94590afc0b5 mm-common-1.0.3.tar.gz
-e47ca5e16e4b80bf5eedc7efb95c4d50200b1b7fc209021be330de35120aed1372e8106628819b0e8f4794b801320e1e87d3a266d2ba9ae98ab3842e1b202bb4 libstdc++.tag
+bf681b4d63d5bf531a9315b0c8841e3815af276828d1828a3eb04dcb805cbbfbaac182f79f5e48688a7eef8666975b9079144e320093e4ee3addff48813e61ad mm-common-1.0.5-2.tar.xz
"
diff --git a/testing/mm/APKBUILD b/testing/mm/APKBUILD
index aa6af1e4eac..d87d4363053 100644
--- a/testing/mm/APKBUILD
+++ b/testing/mm/APKBUILD
@@ -1,4 +1,3 @@
-# Contributor:
# Contributor: Valery Kartel <valery.kartel@gmail.com>
# Maintainer: Valery Kartel <valery.kartel@gmail.com>
pkgname=mm
diff --git a/testing/mmix/APKBUILD b/testing/mmix/APKBUILD
index 1630bccae22..d0eacf1296a 100644
--- a/testing/mmix/APKBUILD
+++ b/testing/mmix/APKBUILD
@@ -1,27 +1,29 @@
# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
pkgname=mmix
-pkgver=0_git20190219
+pkgver=0_git20221025
pkgrel=0
pkgdesc="Assembler and instruction level simulator for the MMIX platform"
url="http://www.mmix.cs.hm.edu/exe/index.html"
-# s390x and riscv64 blocked by texlive
-arch="all !s390x !riscv64"
+# ppc64le, s390x and riscv64 blocked by texlive
+arch="all !ppc64le !s390x !riscv64"
license="custom"
makedepends="texlive" # ctangle is needed to compile .w files
-_commit=ceed178e11ad19010b67c9282544b980984fdde3
+_commit=013719105c56e0205e003f7f6ae5c3e1314da6bc
source="$pkgname-$pkgver.tar.bz2::https://gitlab.lrz.de/mmix/mmixware/-/archive/$_commit/mmixware-$_commit.tar.bz2"
builddir="$srcdir/mmixware-$_commit"
options="!check" # contains no unit test suite
build() {
- make
+ # parallel build is broken. Luckily, this is quick to compile anyway
+ make all -j1
}
package() {
mkdir -p "$pkgdir/usr/bin"
- install -Dm 755 mmix mmixal -t "$pkgdir/usr/bin"
+ install -Dm 755 mmix mmixal mmotype mmmix -t "$pkgdir/usr/bin"
install -Dm 644 -t "$pkgdir"/usr/share/licenses/$pkgname/ boilerplate.w
}
-
-sha512sums="05400b2427aee5236237611e0da9ccb245ebf84d37f8300fcbf871df6cee2b6d1651015af7dfd2b149ea278d357b77927669fd20e1e7d90bf7d0c9f1f0efc202 mmix-0_git20190219.tar.bz2"
+sha512sums="
+279e75ec798f0b168dc002accfc449d222def43b5f580d5d69bb0156f7f11613a880dc68eac554c4813708db5efd92fe70f6e0e7bdf3864eb69060f843a968e7 mmix-0_git20221025.tar.bz2
+"
diff --git a/testing/mml/APKBUILD b/testing/mml/APKBUILD
new file mode 100644
index 00000000000..0a8e3bcd56d
--- /dev/null
+++ b/testing/mml/APKBUILD
@@ -0,0 +1,59 @@
+# Contributor: Hugo Osvaldo Barrera <hugo@whynothugo.nl>
+# Maintainer: Hugo Osvaldo Barrera <hugo@whynothugo.nl>
+pkgname=mml
+pkgver=1.0.0
+pkgrel=0
+pkgdesc="Command line tool for MIME message Meta Language"
+url="https://github.com/soywod/mml"
+# s390x: nix/libc crate
+# riscv64: ftbfs, segfault
+arch="all !s390x !riscv64"
+license="MIT"
+makedepends="cargo cargo-auditable"
+subpackages="
+ $pkgname-doc
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
+ "
+source="shotman-$pkgver.tar.gz::https://github.com/soywod/mml/archive/refs/tags/v$pkgver.tar.gz"
+options="net" # fetch dependencies
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+ ./target/release/mml completion bash > $pkgname.bash
+ ./target/release/mml completion fish > $pkgname.fish
+ ./target/release/mml completion zsh > $pkgname.zsh
+ ./target/release/mml man ./
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm 0755 target/release/$pkgname "$pkgdir/usr/bin/$pkgname"
+
+ install -Dm644 $pkgname.bash \
+ "$pkgdir"/usr/share/bash-completion/completions/$pkgname
+ install -Dm644 $pkgname.fish \
+ "$pkgdir"/usr/share/fish/vendor_completions.d/$pkgname.fish
+ install -Dm644 $pkgname.zsh \
+ "$pkgdir"/usr/share/zsh/site-functions/_$pkgname
+
+ install -Dm 0644 mml-compile.1 "$pkgdir/usr/share/man/man1/mml-compile.1"
+ install -Dm 0644 mml-completion.1 "$pkgdir/usr/share/man/man1/mml-completion.1"
+ install -Dm 0644 mml-interpret.1 "$pkgdir/usr/share/man/man1/mml-interpret.1"
+ install -Dm 0644 mml-man.1 "$pkgdir/usr/share/man/man1/mml-man.1"
+ install -Dm 0644 mml.1 "$pkgdir/usr/share/man/man1/mml.1"
+}
+
+sha512sums="
+2e164288c7e9de283427cf4d80f234b1db3d9eb252e2cfbf87b5a2e81148f2d7ad473242cea7afe2ea9cc11447de08c824e8dd72faf63fe537225f9b5de8e6f8 shotman-1.0.0.tar.gz
+"
diff --git a/testing/mmtc/APKBUILD b/testing/mmtc/APKBUILD
new file mode 100644
index 00000000000..399ca01113f
--- /dev/null
+++ b/testing/mmtc/APKBUILD
@@ -0,0 +1,32 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=mmtc
+pkgver=0.3.2
+pkgrel=0
+pkgdesc="Minimal mpd terminal client that aims to be simple yet highly configurable"
+url="https://github.com/figsoda/mmtc"
+arch="all"
+license="MPL-2.0"
+makedepends="
+ cargo
+ cargo-auditable
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/figsoda/mmtc/archive/refs/tags/v$pkgver.tar.gz"
+options="!check" # no tests
+
+prepare() {
+ default_prepare
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+package() {
+ install -Dm 755 target/release/mmtc "$pkgdir"/usr/bin/mmtc
+}
+
+sha512sums="
+0a5c7f362b74004788dc2764fcd93508c521baa6543bb5583b200fe03c03b820f3817dd437deee7df4e3ff0dc2f93ba18861f535db4b59da8cc855ab6ee503b2 mmtc-0.3.2.tar.gz
+"
diff --git a/testing/mnamer/APKBUILD b/testing/mnamer/APKBUILD
index e0d3f3889b0..d3df2c8e328 100644
--- a/testing/mnamer/APKBUILD
+++ b/testing/mnamer/APKBUILD
@@ -2,25 +2,29 @@
# Maintainer: Philipp Glaum <p@pglaum.de>
pkgname=mnamer
_pkgname=mnamer
-pkgver=2.5.3
+pkgver=2.5.5
pkgrel=1
pkgdesc="media file organiser"
options="!check" # No testsuite
url="https://pypi.org/project/mnamer/"
arch="noarch"
license="MIT"
-depends="python3 py3-appdirs py3-guessit py3-requests py3-requests-cache py3-teletype"
-makedepends="py3-setuptools"
+depends="py3-appdirs py3-guessit py3-requests py3-requests-cache py3-teletype"
+makedepends="py3-setuptools py3-gpep517 py3-installer py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
-6849788b80198a87964d6cf346e8c08f3d6616b47208bf4e6e98f6cca69ab72257d028506ef9407e6f54c641d0f372772dbf1a9267d553c3529521e350cdebb6 mnamer-2.5.3.tar.gz
+f5d197c57c76474f0b4ae07a39333bc0ebbd5dec858593b602e9b19b7a7bfb64e4b04cf2a98197fecf0a3c1f49b55214e72c67dc3250200acf737cb626c2a980 mnamer-2.5.5.tar.gz
"
diff --git a/testing/mnemosyne/APKBUILD b/testing/mnemosyne/APKBUILD
index c4114b1bf2e..89afe7ded34 100644
--- a/testing/mnemosyne/APKBUILD
+++ b/testing/mnemosyne/APKBUILD
@@ -1,28 +1,34 @@
# Contributor: Eloi Torrents <eloitor@disroot.org>
# Maintainer: Eloi Torrents <eloitor@disroot.org>
pkgname=mnemosyne
-pkgver=2.8
-pkgrel=1
-pkgdesc="A flash-card tool with a sophisticated card review algorithm"
+pkgver=2.10.1
+pkgrel=0
+pkgdesc="Flash-card tool with a sophisticated card review algorithm"
url="https://mnemosyne-proj.org"
-arch="all !armhf !ppc64le !s390x !riscv64" # missing py3-qt5 and qt5-qtwebengine
+# py3-pyqt6-webengine
+arch="x86_64 aarch64"
license="GPL-3.0 AND AGPL-3.0-or-later"
depends="
- py3-qt5
- qt5-qtwebengine
py3-argon2-cffi
- py3-pillow
- py3-matplotlib
py3-cherrypy
- py3-webob
- py3-urllib3
- py3-qtwebengine
- py3-googletrans
+ py3-google-trans-new
py3-gtts
+ py3-matplotlib
+ py3-pillow
+ py3-pyqt6-webengine
+ py3-qt6
+ py3-urllib3
+ py3-webob
python3
+ qt6-qtbase-sqlite
+ "
+makedepends="
+ py3-setuptools
+ "
+subpackages="$pkgname-lang $pkgname-pyc"
+source="https://downloads.sourceforge.net/mnemosyne-proj/Mnemosyne-$pkgver.tar.gz
+ fix-loading-icons.patch
"
-makedepends="py3-setuptools"
-source="https://downloads.sourceforge.net/mnemosyne-proj/Mnemosyne-$pkgver.tar.gz"
builddir="$srcdir/Mnemosyne-$pkgver"
build() {
@@ -30,9 +36,12 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
+ mkdir -p "$pkgdir"/usr/share/mnemosyne
+ mv "$pkgdir"/usr/pixmaps "$pkgdir"/usr/share/mnemosyne/
}
sha512sums="
-ae18e89f9f6866bdf164104828491482263b926785090a394a394697034fa96778a6c617ca9404121a48701b425c5978c123e644c20c250624acbe0a0ae488c5 Mnemosyne-2.8.tar.gz
+84b33186c20c1741c2ce305ec8f49eae5bca9a5f519f68bbbc8d5a7d60b0bee927b20c8682bfe309f00269e89364e0fc64a0c2edae880f8ef991123918c40475 Mnemosyne-2.10.1.tar.gz
+62d57b6aaec59c011cc1fa0706e2e3adfc460d431e49f597b13a21f584490188c46daff798917c3fd889c235a5f181bc607f2b9362e80a76c25d25078b760dd1 fix-loading-icons.patch
"
diff --git a/testing/mnemosyne/fix-loading-icons.patch b/testing/mnemosyne/fix-loading-icons.patch
new file mode 100644
index 00000000000..16d51fa40a9
--- /dev/null
+++ b/testing/mnemosyne/fix-loading-icons.patch
@@ -0,0 +1,76 @@
+Patch-Source: https://github.com/mnemosyne-proj/mnemosyne/commit/3c596c439feb7b3ed449100000de20dc87a35b6f
+also manually patched for pixmaps dir
+--
+From 3c596c439feb7b3ed449100000de20dc87a35b6f Mon Sep 17 00:00:00 2001
+From: Vlad <itraveller@mail.ru>
+Date: Sun, 26 Feb 2023 21:21:58 +0300
+Subject: [PATCH] Fix a bug causing the app to not find its icons.
+
+The reason for the problem is that the icon paths were not tied to the script, but to the current working directory.
+
+Fix #234
+---
+ mnemosyne/pyqt_ui/about_dlg.py | 2 +-
+ mnemosyne/pyqt_ui/getting_started_dlg.py | 2 +-
+ mnemosyne/pyqt_ui/main_wdgt.ui | 24 ++++++++++++------------
+ mnemosyne/pyqt_ui/mnemosyne | 7 ++-----
+ mnemosyne/pyqt_ui/tip_dlg.py | 2 +-
+ 5 files changed, 17 insertions(+), 20 deletions(-)
+
+diff --git a/mnemosyne/pyqt_ui/about_dlg.py b/mnemosyne/pyqt_ui/about_dlg.py
+index 0d5926db..3b6a78eb 100755
+--- a/mnemosyne/pyqt_ui/about_dlg.py
++++ b/mnemosyne/pyqt_ui/about_dlg.py
+@@ -22,7 +22,7 @@ def __init__(self, **kwds):
+ # Note: the svg file does not seem to work under windows.
+ #watermark = QtGui.QPixmap("pixmaps/mnemosyne.svg").\
+ # scaledToHeight(200, QtCore.Qt.TransformationMode.SmoothTransformation)
+- watermark = QtGui.QPixmap("pixmaps/mnemosyne.png")
++ watermark = QtGui.QPixmap("icons:mnemosyne.png")
+ self.watermark.setPixmap(watermark)
+ self.about_label.setText("<b>" + _("Mnemosyne") + " " + version + "</b><br><br>" + \
+ _("Main author: Peter Bienstman") + "<br><br>" + \
+diff --git a/mnemosyne/pyqt_ui/getting_started_dlg.py b/mnemosyne/pyqt_ui/getting_started_dlg.py
+index f125fb66..69edae43 100755
+--- a/mnemosyne/pyqt_ui/getting_started_dlg.py
++++ b/mnemosyne/pyqt_ui/getting_started_dlg.py
+@@ -20,7 +20,7 @@ def __init__(self, **kwds):
+ # Note: the svg file does not seem to work under windows.
+ #watermark = QtGui.QPixmap("pixmaps/mnemosyne.svg")\
+ # .scaledToHeight(200, QtCore.Qt.TransformationMode.SmoothTransformation)
+- watermark = QtGui.QPixmap("pixmaps/mnemosyne.png")
++ watermark = QtGui.QPixmap("icons:mnemosyne.png")
+ self.setPixmap(QtWidgets.QWizard.WizardPixmap.WatermarkPixmap, watermark)
+
+ def activate(self):
+diff --git a/mnemosyne/pyqt_ui/mnemosyne b/mnemosyne/pyqt_ui/mnemosyne
+index 73660586..603cd457 100755
+--- a/mnemosyne/pyqt_ui/mnemosyne
++++ b/mnemosyne/pyqt_ui/mnemosyne
+@@ -203,11 +203,8 @@ font-size: 12px;
+ }"""
+ a.setStyleSheet(stylesheet)
+
+-# FIXME: install in the system Python does not really work unless
+-# you copy 'pixmaps' to 'C:\Program Files\Python311'
+-# The statement below don't help.
+-QtGui.QIcon.setFallbackSearchPaths(["C:/Program Files (x86)/Mnemosyne",
+-"C:/Program Files/Python311/Lib/site-packages/Mnemosyne-2.10-py3.11.egg"])
++pixmaps_dir = '/usr/share/mnemosyne/pixmaps'
++QtCore.QDir.addSearchPath('icons', pixmaps_dir)
+
+ # Add other components we need. The translator should come first.
+ # The UI components should come in the order they should be instantiated,
+diff --git a/mnemosyne/pyqt_ui/tip_dlg.py b/mnemosyne/pyqt_ui/tip_dlg.py
+index ae12c25d..9eb891a5 100755
+--- a/mnemosyne/pyqt_ui/tip_dlg.py
++++ b/mnemosyne/pyqt_ui/tip_dlg.py
+@@ -71,7 +71,7 @@ def __init__(self, **kwds):
+ # Note: the svg file does not seem to work under windows.
+ #watermark = QtGui.QPixmap("pixmaps/mnemosyne.svg").\
+ # scaledToHeight(200, QtCore.Qt.TransformationMode.SmoothTransformation)
+- watermark = QtGui.QPixmap("pixmaps/mnemosyne.png")
++ watermark = QtGui.QPixmap("icons:mnemosyne.png")
+ self.watermark.setPixmap(watermark)
+ self.update_dialog()
+
diff --git a/testing/mobpass/APKBUILD b/testing/mobpass/APKBUILD
index 58e51842219..37e79be1654 100644
--- a/testing/mobpass/APKBUILD
+++ b/testing/mobpass/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Anjandev Momi <anjan@momi.ca>
pkgname=mobpass
pkgver=0.2
-pkgrel=2
+pkgrel=5
pkgdesc="A mobile interface for gopass"
url="https://git.sr.ht/~anjan/mobpass"
arch="noarch !armhf" # missing dependencies
@@ -10,6 +10,7 @@ options="!check" # No test suite
license="GPL-3.0-or-later"
depends="python3 py3-qt5 qt5-qtquickcontrols qt5-qtquickcontrols2 gopass py3-fuzzyfinder"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://git.sr.ht/~anjan/mobpass/archive/v$pkgver.tar.gz"
builddir="$srcdir/"$pkgname-v$pkgver
@@ -18,7 +19,7 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
install -Dm644 mobpass.desktop "$pkgdir"/usr/share/applications/mobpass.desktop
}
diff --git a/testing/moderncli/APKBUILD b/testing/moderncli/APKBUILD
new file mode 100644
index 00000000000..82c52df2d49
--- /dev/null
+++ b/testing/moderncli/APKBUILD
@@ -0,0 +1,34 @@
+# Maintainer: David Sugar <tychosoft@gmail.com>
+# Contributor: David Sugar <tychosoft@gmail.com>
+pkgname=moderncli
+pkgver=0.8.1
+pkgrel=0
+pkgdesc="Modern C++17 header-only library of includes"
+url="https://www.tychosoft.com/tychosoft/moderncli/wiki"
+arch="noarch"
+license="MIT"
+makedepends="cmake fmt-dev openssl-dev"
+subpackages="$pkgname-dev $pkgname-doc"
+source="https://www.tychosoft.com/api/packages/tychosoft/generic/moderncli/$pkgver/moderncli-$pkgver.tar.gz"
+
+build() {
+ cmake \
+ -DCMAKE_INSTALL_SYSCONFDIR:PATH=/etc \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=Release .
+ make
+}
+
+check() {
+ make test
+}
+
+package() {
+ DESTDIR="$pkgdir" make install
+ install -Dm644 LICENSE.md "$pkgdir"/usr/share/licenses/$pkgname/LICENSE.md
+ install -Dm644 README.md "$pkgdir"/usr/share/doc/$pkgname/README.md
+ install -Dm644 FEATURES.md "$pkgdir"/usr/share/doc/$pkgname/FEATURES.md
+}
+
+sha512sums="d38e8e8abc2854aa3524885ebd4bf22b19711d94b2238e4f7db0765dd8abc2dafd0e7fed81534c3676ede2746d960f7a977019a43739a91d1a2cdaf6531fc1e3 moderncli-0.8.1.tar.gz
+"
diff --git a/testing/moe/APKBUILD b/testing/moe/APKBUILD
index 59ef0370ef5..eea68fac2fd 100644
--- a/testing/moe/APKBUILD
+++ b/testing/moe/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: André Klitzing <aklitzing@gmail.com>
# Maintainer: André Klitzing <aklitzing@gmail.com>
pkgname=moe
-pkgver=1.12
+pkgver=1.14
pkgrel=0
pkgdesc="powerful and user-friendly text editor"
url="https://www.gnu.org/software/moe/moe.html"
@@ -13,7 +13,9 @@ source="https://ftp.gnu.org/gnu/moe/moe-$pkgver.tar.lz"
options="!check"
build() {
- ./configure --prefix=/usr --sysconfdir=/etc
+ ./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc
make CXXFLAGS="$CXXFLAGS" LDFLAGS="$LDFLAGS"
}
@@ -22,5 +24,5 @@ package() {
}
sha512sums="
-f0d5daba70d0018ce82d6673749b8f688c0bac58de7684cc24f5badffd6868d425c9f771404186ab5cec12ab94c3e20af870bd920bfef0432a622925838ebed7 moe-1.12.tar.lz
+db45f7c05b9a1a06085b2604eb8e9857caeb7d3a56a4815df208806bbbf19cc47b19776619635c70860142cb8bb775c0eaf31b9b07698cc83b74f1c6d6f47d5c moe-1.14.tar.lz
"
diff --git a/testing/moka-icon-theme/APKBUILD b/testing/moka-icon-theme/APKBUILD
index de24aedf6f4..82f306958f8 100644
--- a/testing/moka-icon-theme/APKBUILD
+++ b/testing/moka-icon-theme/APKBUILD
@@ -8,12 +8,11 @@ url="https://snwh.org/moka"
arch="noarch"
license="CC-BY-SA-4.0 OR GPL-3.0-or-later"
makedepends="meson"
-options="!strip"
source="moka-icon-theme-$pkgver.tar.gz::https://github.com/snwh/moka-icon-theme/archive/v$pkgver.tar.gz"
build() {
abuild-meson output
- meson compile ${JOBS:+-j ${JOBS}} -C output
+ meson compile -C output
}
package() {
diff --git a/testing/mold/APKBUILD b/testing/mold/APKBUILD
deleted file mode 100644
index 0f0680fee58..00000000000
--- a/testing/mold/APKBUILD
+++ /dev/null
@@ -1,59 +0,0 @@
-# Contributor: psykose <alice@ayaya.dev>
-# Maintainer: psykose <alice@ayaya.dev>
-pkgname=mold
-pkgver=1.2.1
-pkgrel=0
-pkgdesc="fast modern linker"
-url="https://github.com/rui314/mold"
-arch="x86_64" # only x86_64 supported
-license="AGPL-3.0" # not specified if -only
-makedepends="
- clang
- cmake
- libtbb-dev
- linux-headers
- llvm-dev
- mimalloc2-dev
- openssl-dev
- zlib-dev
- "
-checkdepends="
- bash
- dwarf-tools
- grep
- perl
- "
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/rui314/mold/archive/refs/tags/v$pkgver.tar.gz"
-
-export SYSTEM_MIMALLOC=1
-export SYSTEM_TBB=1
-export LTO=1
-
-build() {
-
- make CC=clang \
- CXX=clang++ \
- PREFIX=/usr \
- CFLAGS="$CFLAGS -O2" \
- CXXFLAGS="$CXXFLAGS -O2"
-}
-
-check() {
- # no idea why it fails
- rm test/elf/mold-wrapper2.sh
- rm test/elf/versioned-undef.sh
- rm test/elf/z-text.sh
- # not supported on musl
- rm test/elf/ifunc*
-
- make test
-}
-
-package() {
- make DESTDIR="$pkgdir" PREFIX=/usr install
-}
-
-sha512sums="
-fc39674b00119d09b3275ed7232356f0b25dad1a0f3a498f9db1a4835b6d4f9ea637ca9a643a05591ea895e8751d9bee43cdcb42303beb082462e76ddb42a0f1 mold-1.2.1.tar.gz
-"
diff --git a/testing/monetdb/APKBUILD b/testing/monetdb/APKBUILD
index 2be7c5b6c03..8d3261984a4 100644
--- a/testing/monetdb/APKBUILD
+++ b/testing/monetdb/APKBUILD
@@ -3,12 +3,12 @@
pkgname=monetdb
_pkgname=MonetDB
pkgver=11.33.11
-pkgrel=1
+pkgrel=4
pkgdesc="Column-oriented database management system"
url="https://www.monetdb.org/Home"
arch="all"
license="MPL-1.1"
-makedepends="musl-dev gcc bison make openssl-dev libxml2-dev xz-dev
+makedepends="musl-dev gcc bison make openssl-dev>3 libxml2-dev xz-dev
bzip2-dev lz4-dev readline-dev snappy-dev curl-dev pcre-dev unixodbc-dev
libatomic_ops-dev"
subpackages="$pkgname-dev $pkgname-doc"
@@ -30,6 +30,8 @@ check() {
package() {
make DESTDIR="$pkgdir" install
+
+ rm -r "$pkgdir"/usr/lib/systemd
}
sha512sums="1f841a9c5455faf14840608ddb570d70374989c2371a6dcb9044c3e66f4de722f123bd89adca28e3193ecbbe16fb4fd184ee622ce47fbb59076d230c14b18b4f MonetDB-11.33.11.tar.xz
diff --git a/testing/mongo-cxx-driver/01-dont-build-mongo-tests.patch b/testing/mongo-cxx-driver/01-dont-build-mongo-tests.patch
deleted file mode 100644
index 6e93a19fae9..00000000000
--- a/testing/mongo-cxx-driver/01-dont-build-mongo-tests.patch
+++ /dev/null
@@ -1,10 +0,0 @@
-diff --git a/src/mongocxx/CMakeLists.txt b/src/mongocxx/CMakeLists.txt
-index eaa9060..819078d 100644
---- a/src/mongocxx/CMakeLists.txt
-+++ b/src/mongocxx/CMakeLists.txt
-@@ -259,4 +259,4 @@ install(
- DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${PKG}-${MONGOCXX_VERSION}
- )
-
--add_subdirectory(test)
-+# add_subdirectory(test)
diff --git a/testing/mongo-cxx-driver/APKBUILD b/testing/mongo-cxx-driver/APKBUILD
index 6527b082f91..27ebeda32cf 100644
--- a/testing/mongo-cxx-driver/APKBUILD
+++ b/testing/mongo-cxx-driver/APKBUILD
@@ -1,58 +1,69 @@
# Contributor: Russ Webber <russ@rw.id.au>
# Maintainer: Russ Webber <russ@rw.id.au>
pkgname=mongo-cxx-driver
-pkgver=3.4.1
+pkgver=3.8.0
pkgrel=0
pkgdesc="C++ driver for MongoDB"
url="http://mongocxx.org/"
-arch="all !armhf" # mongo-c-driver
+arch="all"
license="Apache-2.0"
-makedepends="cmake mongo-c-driver-dev libbson-dev openssl-dev python3 snappy-dev zstd-dev"
+makedepends="
+ cmake
+ libbson-dev
+ mongo-c-driver-dev
+ mongo-c-driver-static
+ openssl-dev
+ python3
+ samurai
+ snappy-dev
+ zstd-dev
+ "
subpackages="$pkgname-dev:_dev libbsoncxx libbsoncxx-dev"
source="mongo-cxx-driver-$pkgver.tar.gz::https://github.com/mongodb/mongo-cxx-driver/archive/r$pkgver.tar.gz
- 01-dont-build-mongo-tests.patch"
+ no-mongo-tests.patch
+ "
builddir="$srcdir/mongo-cxx-driver-r$pkgver"
build() {
if [ "$CBUILD" != "$CHOST" ]; then
CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
fi
- cmake -B build . \
+ cmake -B build -G Ninja \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
-DBUILD_SHARED_LIBS=True \
-DCMAKE_BUILD_TYPE=None \
- -DCMAKE_CXX_FLAGS="$CXXFLAGS" \
- -DCMAKE_C_FLAGS="$CFLAGS" \
-DCMAKE_CXX_STANDARD=17 \
-DBSONCXX_POLY_USE_STD=ON \
-DBUILD_VERSION="$pkgver" \
- $CMAKE_CROSSOPTS .
- make -C build
+ $CMAKE_CROSSOPTS
+ cmake --build build
}
check() {
# mongo tests require a running server, so they are disabled.
# libbsoncxx tests are still ran
- make -C build test
+ ctest --test-dir build --output-on-failure
}
package() {
- make -C build DESTDIR="$pkgdir" install
+ # abuild can't trace this
+ depends="libbsoncxx=$pkgver-r$pkgrel"
+ DESTDIR="$pkgdir" cmake --install build
rm -rf "$pkgdir"/usr/share/mongo-cxx-driver/
}
libbsoncxx() {
pkgdesc="Building, parsing, and iterating BSON documents using C++"
- mkdir -p "$subpkgdir"/usr/lib
- mv "$pkgdir"/usr/lib/libbsoncxx.so.* "$subpkgdir"/usr/lib/
+
+ amove usr/lib/libbsoncxx.so.*
}
_dev() {
# This should be removed once abuild knows how to search for pkg-config
# files that are in another subpackage that is also being created alongside
# this one.
- depends_dev="libbsoncxx-dev"
+ depends_dev="libbsoncxx-dev=$pkgver-r$pkgrel"
default_dev
@@ -73,5 +84,7 @@ _dev() {
mv "$subpkgdir"/usr/include/bsoncxx "$pkgdir"/usr/include
}
-sha512sums="c34d7e06946c89db88a6122ab4e7e4952bd6403ca80e57adc7d91264505e1ac1d623fe932f7b82546e26033078ab1f96bb6048a0e343b26d4b8b630658be0e71 mongo-cxx-driver-3.4.1.tar.gz
-4eed3eb4236bd13eb6f80f90938481c35d6d728c7b777f2cf6e459c5b3776d612cf7d8e000fa7e5c74f741943b2900325cbcd623584081cbb931cab04ce36828 01-dont-build-mongo-tests.patch"
+sha512sums="
+f9f0d83ee2ef1f3c2dae1f3663b893d819737d4e646d0137fb623b84663382eb93ab36123c2a85247f43ae979a95276fa231d5da8ad62a6da002ab9daecaa0d4 mongo-cxx-driver-3.8.0.tar.gz
+18eaace179782c8e59d585def40da2cb941c767484f2739a6714dc1526c62cd8595bfe89545ddfa32e781a618a0f73a53ac3ee9ecdeb86c7b3250bd380b4d276 no-mongo-tests.patch
+"
diff --git a/testing/mongo-cxx-driver/no-mongo-tests.patch b/testing/mongo-cxx-driver/no-mongo-tests.patch
new file mode 100644
index 00000000000..b49d880a45d
--- /dev/null
+++ b/testing/mongo-cxx-driver/no-mongo-tests.patch
@@ -0,0 +1,22 @@
+diff --git a/src/mongocxx/CMakeLists.txt b/src/mongocxx/CMakeLists.txt
+index 7106040..e3456ce 100644
+--- a/src/mongocxx/CMakeLists.txt
++++ b/src/mongocxx/CMakeLists.txt
+@@ -208,7 +208,7 @@ else()
+ mongocxx_add_library(mongocxx_mocked "mongocxx-mocked" STATIC)
+ endif()
+ endif()
+-if(ENABLE_TESTS)
++if(ENABLE_TESTING)
+ target_link_libraries(mongocxx_mocked PUBLIC bsoncxx_testing)
+ target_compile_definitions(mongocxx_mocked PUBLIC MONGOCXX_TESTING)
+ if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
+@@ -249,7 +249,7 @@ if(MONGOCXX_BUILD_STATIC)
+ endif()
+ mongocxx_install("${mongocxx_target_list}" "${mongocxx_pkg_dep}")
+
+-if(ENABLE_TESTS)
++if(false)
+ add_subdirectory(test)
+ endif()
+
diff --git a/testing/mono/APKBUILD b/testing/mono/APKBUILD
index 64e1544c456..1483e38df9f 100644
--- a/testing/mono/APKBUILD
+++ b/testing/mono/APKBUILD
@@ -1,32 +1,38 @@
-# Contributor: Carlo Landmeter <clandmeter@alpinelinux.org>
-# Contributor: blattersturm <peachypies@protonmail.ch>
-# Contributor: Antoni Aloy <aaloytorrens@gmail.com>
# Maintainer:
pkgname=mono
-pkgver=6.12.0.122
+pkgver=6.12.0.205
pkgrel=1
pkgdesc="Free implementation of the .NET platform including runtime and compiler"
url="https://www.mono-project.com/"
-# riscv64 - mono_os_mutex_init_type: pthread_mutexattr_setprotocol failed with "Function not implemented" (38)
-arch="all !s390x !ppc64le !riscv64"
+arch="x86_64 aarch64"
license="MIT"
depends="python3"
-depends_dev="$pkgname=$pkgver-r$pkgrel libgdiplus-dev zlib-dev"
-makedepends="$depends_dev autoconf automake cmake libtool linux-headers"
-subpackages="$pkgname-dev $pkgname-doc $pkgname-lang"
-source="https://download.mono-project.com/sources/mono/mono-$pkgver.tar.xz
+depends_dev="
+ $pkgname=$pkgver-r$pkgrel
+ libgdiplus-dev
+ "
+makedepends="
+ $depends_dev
+ bash
+ cmake
+ linux-headers
+ perl
+ samurai
+ "
+subpackages="
+ $pkgname-dev
+ $pkgname-doc
+ $pkgname-lang
+ "
+source="https://download.mono-project.com/sources/mono/preview/mono-$pkgver.tar.xz
mono-try-catch.patch
"
+options="!check" # fail
build() {
- # Based on Fedora and SUSE package.
- export CFLAGS="$CFLAGS -fno-strict-aliasing"
-
- # Set the minimum arch for x86 to prevent atomic linker errors.
- [ "$CARCH" = "x86" ] && export CFLAGS="$CFLAGS -march=i586 -mtune=generic"
-
- # Run autogen to fix supplied configure linker issues with make install.
- ./autogen.sh \
+ CFLAGS="$CFLAGS -O2 -flto=auto" \
+ CXXFLAGS="$CXXFLAGS -O2 -flto=auto" \
+ ./configure \
--build=$CBUILD \
--host=$CHOST \
--prefix=/usr \
@@ -34,31 +40,39 @@ build() {
--mandir=/usr/share/man \
--infodir=/usr/share/info \
--localstatedir=/var \
- --disable-rpath \
--disable-boehm \
+ --enable-ninja \
+ --disable-rpath \
+ --disable-static \
--enable-parallel-mark \
--with-mcs-docs=no \
--without-sigaltstack
make
+ make -C mcs/jay
+}
+
+check() {
+ make check
}
package() {
- make -j1 DESTDIR="$pkgdir" install
+ make DESTDIR="$pkgdir" install
+ make DESTDIR="$pkgdir" prefix=/usr INSTALL=../../install-sh -C mcs/jay install
cd "$pkgdir"
- # Remove .la files.
- rm ./usr/lib/*.la
-
- # Remove Windows-only stuff.
- rm -r ./usr/lib/mono/*/Mono.Security.Win32*
- rm ./usr/lib/libMonoSupportW.*
+ rm -rf \
+ usr/lib/mono/*/Mono.Security.Win32* \
+ usr/lib/*.la
}
dev() {
default_dev
- mv "$subpkgdir"/usr/lib/libmono-native.so "$pkgdir"/usr/lib
+
+ mv "$subpkgdir"/usr/lib/*.so "$pkgdir"/usr/lib/
}
-sha512sums="0fbd4147498cc81e384933147eb6aa5c559d17a794a308af7ffa43dce51e0faefde24fc75e987ed804dcb161b52756944bc3611100fc0a4adcc260ca97ddaecd mono-6.12.0.122.tar.xz
-3a82d4bed31b212e23fe24647fc5b9c4788be5f4966377a3bef9f92a51d16181e77e19ca1ec4736792da6a18206986bbb54d967499e2ca7e224201cf811f91b5 mono-try-catch.patch"
+sha512sums="
+ede22d511b8f0757b6ba3cb85af209eddfe9d19b00b0d870a8f6b68fa90bc56d3fe06a86874fdfcef2a1e93ec3ed524fee7d1363c0a00296c1d522bb8c71697a mono-6.12.0.205.tar.xz
+3a82d4bed31b212e23fe24647fc5b9c4788be5f4966377a3bef9f92a51d16181e77e19ca1ec4736792da6a18206986bbb54d967499e2ca7e224201cf811f91b5 mono-try-catch.patch
+"
diff --git a/testing/moon-buggy/APKBUILD b/testing/moon-buggy/APKBUILD
index 6391bb51c0b..3930e440ef4 100644
--- a/testing/moon-buggy/APKBUILD
+++ b/testing/moon-buggy/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Miles Alan <m@milesalan.com>
pkgname=moon-buggy
pkgver=1.0.51
-pkgrel=0
+pkgrel=1
pkgdesc="Simple character graphics game where you drive some kind of car across the moon's surface"
url="https://www.seehuhn.de/pages/moon-buggy.html"
license="GPL-2.0-or-later"
diff --git a/testing/moosefs/APKBUILD b/testing/moosefs/APKBUILD
index fdec0e2accc..5d1ae30758c 100644
--- a/testing/moosefs/APKBUILD
+++ b/testing/moosefs/APKBUILD
@@ -1,13 +1,13 @@
# Contributor: Michael Pirogov <vbnet.ru@gmail.com>
# Maintainer: Michael Pirogov <vbnet.ru@gmail.com>
pkgname=moosefs
-pkgver=3.0.116
-pkgrel=0
+pkgver=3.0.117
+pkgrel=1
pkgdesc="Open Source, Petabyte, Fault-Tolerant, Highly Performing, Scalable Network Distributed File System"
url="https://moosefs.com"
arch="all"
license="GPL-2.0-only"
-makedepends="autoconf automake zlib-dev libpcap-dev libtool fuse-dev python3-dev"
+makedepends="autoconf automake zlib-dev libpcap-dev libtool fuse3-dev python3-dev"
pkgusers="mfs"
pkggroups="mfs"
subpackages="$pkgname-doc $pkgname-static $pkgname-client $pkgname-master
@@ -123,10 +123,11 @@ chunkserver_openrc() {
client() {
pkgdesc="MooseFS client"
- depends="fuse"
+ depends="fuse3"
cd "$pkgdir"
_mv_files \
- usr/bin/* \
+ usr/bin \
+ sbin/mount.* \
etc/mfs/mfsmount.cfg.sample
}
@@ -152,7 +153,7 @@ cgiserv_openrc() {
}
sha512sums="
-eab53b95dbd7331666adfa69800f782575b772885f57a6c8d55bd746e5078f2280a2c2612cb53fd78216a4e91b4e6a5d4b46a66f359417d3b26f4fd7e2cf8451 moosefs-3.0.116.tar.gz
+ee0bba2fc5c62e8ec52d27743871d79c1c201b327f8b6f2c12434fef38c87179485a958bf08b97754aae4a8e82b1d20e4cea74a17e973b0682f78cfa73dff3ef moosefs-3.0.117.tar.gz
c698aff4de9aeb76202a809e44ac8d0ec9c6348a806b1c813c2a40858339b1c139a480a9c5aff40bf2c9821883c6c0dfeabb010f3faa5746673235f0fb3c5a76 moosefs-cgiserv.initd
b5c625f0004df33889de60ddad37e41f3acf081b37247606a1544e5f63354e121fe4cce511a6e60f4f2c0305155faf0614b8a4bce7267929fe68a1a4b546b582 moosefs-cgiserv.confd
a041fa324d37bda098ad65e9d6507f281ed388471956ca79aa33b8b0d1c4a9d528662a2410c47f3856183d6378ac7fb417c3d7ec314f624e7e5dac7c5e4247f0 moosefs-master.initd
diff --git a/testing/morph-browser/APKBUILD b/testing/morph-browser/APKBUILD
new file mode 100644
index 00000000000..6436f3ee515
--- /dev/null
+++ b/testing/morph-browser/APKBUILD
@@ -0,0 +1,61 @@
+# Maintainer: Luca Weiss <luca@z3ntu.xyz>
+# Contributor: Brandon Boese <brandonboese@protonmail.com>
+pkgname=morph-browser
+pkgver=1.1.0
+pkgrel=0
+pkgdesc="Lightweight web browser tailored for Ubuntu Touch"
+url="https://gitlab.com/ubports/development/core/morph-browser"
+# armhf: blocked by lomiri-ui-toolkit
+# ppc64le/riscv64/s390x: blocked by qt5-qtwebengine
+arch="all !armhf !ppc64le !riscv64 !s390x"
+license="GPL-3.0-only"
+depends="
+ font-liberation
+ lomiri-action-api
+ lomiri-content-hub
+ lomiri-ui-extras
+ lomiri-ui-toolkit
+ qt5-qtbase-sqlite
+ qt5-qtquickcontrols2
+ "
+makedepends="
+ click-dev
+ cmake
+ cmake-extras
+ gnome-desktop-dev
+ libapparmor-dev
+ lomiri-trust-store-dev
+ qt5-qtdeclarative-dev
+ qt5-qtwebengine-dev
+ samurai
+ xvfb-run
+ "
+checkdepends="
+ py3-dbusmock
+ py3-xdg
+ "
+subpackages="$pkgname-lang"
+source="https://gitlab.com/ubports/development/core/morph-browser/-/archive/$pkgver/morph-browser-$pkgver.tar.gz"
+options="!check" # 4 tests fail and test 27 hangs
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCLICK_MODE=off
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+646182b0b408e40e96e506180059c388e0b1fe6e8a249618997f7e5064ae8ad603f7d66438b0116063cfce4e2e3372e847663e9bbaf1e1eea0bbee0dbf5c16ce morph-browser-1.1.0.tar.gz
+"
diff --git a/testing/motion/APKBUILD b/testing/motion/APKBUILD
index e487ea1b4c4..59c895b9cd3 100644
--- a/testing/motion/APKBUILD
+++ b/testing/motion/APKBUILD
@@ -4,8 +4,8 @@
# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=motion
-pkgver=4.4.0
-pkgrel=1
+pkgver=4.6.0
+pkgrel=0
pkgdesc="Detect if a significant part of the picture has changed (e.g. from a webcam)"
url="https://motion-project.github.io"
arch="all"
@@ -15,9 +15,9 @@ pkgusers="motion"
pkggroups="motion"
depends="v4l-utils"
makedepends="$depends_dev autoconf automake bash gettext-dev v4l-utils-dev linux-headers
- libjpeg-turbo-dev ffmpeg-dev libmicrohttpd-dev libwebp-dev"
+ libjpeg-turbo-dev ffmpeg-dev libmicrohttpd-dev libwebp-dev xz"
install="$pkgname.pre-install"
-subpackages="$pkgname-doc $pkgname-openrc"
+subpackages="$pkgname-doc $pkgname-openrc $pkgname-lang"
source="https://github.com/Motion-Project/motion/archive/release-$pkgver/motion-$pkgver.tar.gz
motion.confd
motion.initd
@@ -50,7 +50,7 @@ package() {
}
sha512sums="
-8ef7a9e84641597aeec826f29c90250345fb8c398c16b50f284bc39fcf8d8663dab3af1734159200ae3eae5b26b8fab8abfce00c87057474e8684943f16a1920 motion-4.4.0.tar.gz
+96984254e316694e98ac55a0216c712d7280a3b5b8d5e1bca17282eee5426022c56e54aa4175269117c6128a3a834a550528bfc2a04c9f5b670e41e740456d29 motion-4.6.0.tar.gz
8a67b5b0360924e58ba3136a737ce73bb43201a49b2b6e2c632426561b830f6ab55cbbeaa89be7f1683aa8fd322b4f31b9f560e67a93eaceb964c9f56ceef363 motion.confd
be30f19595dba27f2d0ca8133c93e134161781935a152bd1701e581410039e37742acd11987c38e6e64f495b1fd2b0a74a8c61ae0e6e211a475fca7994172501 motion.initd
"
diff --git a/testing/mp3gain/APKBUILD b/testing/mp3gain/APKBUILD
index fb84b8425fb..9079402954e 100644
--- a/testing/mp3gain/APKBUILD
+++ b/testing/mp3gain/APKBUILD
@@ -3,9 +3,9 @@
pkgname=mp3gain
pkgver=1.6.2
_pkgver_download=1_6_2
-pkgrel=0
+pkgrel=2
pkgdesc="Analyzes and adjusts the volume of MP3 files"
-url="http://mp3gain.sourceforge.net"
+url="https://mp3gain.sourceforge.net/"
arch="all"
license="LGPL-2.1-only"
makedepends="mpg123-dev"
diff --git a/testing/mp3val/APKBUILD b/testing/mp3val/APKBUILD
index 1dc36494be6..43de6481698 100644
--- a/testing/mp3val/APKBUILD
+++ b/testing/mp3val/APKBUILD
@@ -2,12 +2,12 @@
# Maintainer: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
pkgname=mp3val
pkgver=0.1.8
-pkgrel=0
+pkgrel=1
pkgdesc="Tool for MPEG Audio File (MP3, etc) validation and fixing"
-url="http://mp3val.sourceforge.net/"
+url="https://mp3val.sourceforge.net/"
arch="all"
license="GPL-2.0-or-later"
-source="$pkgname-$pkgver.tar.gz::http://downloads.sourceforge.net/mp3val/mp3val-$pkgver-src.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://downloads.sourceforge.net/mp3val/mp3val-$pkgver-src.tar.gz"
builddir="$srcdir/$pkgname-$pkgver-src/"
build() {
diff --git a/testing/mpdcron/APKBUILD b/testing/mpdcron/APKBUILD
index b65a138c088..6e0b11869f0 100644
--- a/testing/mpdcron/APKBUILD
+++ b/testing/mpdcron/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: dai9ah <dai9ah@protonmail.com>
pkgname=mpdcron
pkgver=0.3
-pkgrel=0
+pkgrel=1
pkgdesc="Cron-like daemon for mpd"
options="!check" # No testsuite
url="https://github.com/alip/mpdcron"
diff --git a/testing/mpdris2-rs/APKBUILD b/testing/mpdris2-rs/APKBUILD
new file mode 100644
index 00000000000..2c012a001d8
--- /dev/null
+++ b/testing/mpdris2-rs/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=mpdris2-rs
+pkgver=0.2.3
+pkgrel=0
+pkgdesc="Exposing MPRIS V2.1 D-Bus interface for mpd"
+url="https://github.com/szclsya/mpdris2-rs"
+arch="all"
+license="GPL-3.0-or-later"
+depends="dbus"
+makedepends="
+ cargo
+ cargo-auditable
+"
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/szclsya/mpdris2-rs/archive/refs/tags/$pkgver.tar.gz"
+options="net !check" # no tests
+
+prepare() {
+ default_prepare
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+package() {
+ install -Dm 755 target/release/mpdris2-rs "$pkgdir"/usr/bin/mpdris2-rs
+
+ install -Dm 655 COPYING "$pkgdir"/usr/share/licenses/"$pkgname"/COPYING
+}
+
+sha512sums="
+0a6bb577dd80a658f6b492ac3e9dd15337d8cf7d3dd2ffc672f94245856b67ae6ac1e6848cf3fccf8150e40bfed4c90b7ba3c301a874dd22f680fd05d5d4c4b5 mpdris2-rs-0.2.3.tar.gz
+"
diff --git a/testing/mpdris2/APKBUILD b/testing/mpdris2/APKBUILD
index ee620729b6f..d08d3ba1fa3 100644
--- a/testing/mpdris2/APKBUILD
+++ b/testing/mpdris2/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Galen Abell <galen@galenabell.com>
pkgname=mpdris2
pkgver=0.9.1
-pkgrel=2
+pkgrel=3
pkgdesc="MPRIS V2.1 support for mpd"
url="https://github.com/eonpatapon/mpDris2"
arch="noarch"
@@ -27,5 +27,8 @@ build() {
package() {
make DESTDIR="$pkgdir" install
+
+ rm -rf "$pkgdir"/usr/lib/systemd
}
+
sha512sums="260b5c910303766a7730110a1ca52c859b4e8ba41ba4fe842187cb3dbacca1bc096a93cce2e26e6c82b640f2905411e3011251566b47404466cedfb2f43860ee mpdris2-0.9.1.tar.gz"
diff --git a/testing/mpir/APKBUILD b/testing/mpir/APKBUILD
deleted file mode 100644
index 4cfa52f8e82..00000000000
--- a/testing/mpir/APKBUILD
+++ /dev/null
@@ -1,50 +0,0 @@
-# Contributor: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
-# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
-pkgname=mpir
-pkgver=3.0.0
-pkgrel=0
-pkgdesc="Multiple Precision Integers and Rationals"
-url="http://mpir.org/"
-# Fails on ppc64le: "ABI version 1 is not compatible with ABI version 2 output"
-# x86: Lots of bad register names
-arch="all !ppc64le !x86"
-license="LGPL-3.0-or-later"
-makedepends="yasm m4"
-subpackages="$pkgname-dev $pkgname-doc"
-source="
- http://mpir.org/mpir-$pkgver.tar.bz2
- mpir.pc
- mpirxx.pc
- "
-
-prepare() {
- default_prepare
-
- update_config_guess
- update_config_sub
-
- sed -e "s/@PKGVER@/$pkgver/" -i "$srcdir"/mpir.pc
- sed -e "s/@PKGVER@/$pkgver/" -i "$srcdir"/mpirxx.pc
-}
-
-build() {
- ./configure \
- --prefix=/usr \
- --enable-cxx \
- --disable-static
- make
-}
-
-package() {
- DESTDIR="$pkgdir" make install
- install -Dm644 "$srcdir"/mpir.pc "$pkgdir"/usr/lib/pkgconfig/mpir.pc
- install -Dm644 "$srcdir"/mpirxx.pc "$pkgdir"/usr/lib/pkgconfig/mpirxx.pc
-}
-
-check() {
- make check-recursive
-}
-
-sha512sums="c735105db8b86db739fd915bf16064e6bc82d0565ad8858059e4e93f62c9d72d9a1c02a5ca9859b184346a8dc64fa714d4d61404cff1e405dc548cbd54d0a88e mpir-3.0.0.tar.bz2
-00f960b5f320a12ef8ce98d457591f963e30685c94ad7f79942268c64e428f564f16c6bade001e63610817f6c22279a1d3b2473b9ca88b29c36fe9589e58d400 mpir.pc
-c6c264b12091ef6f962cfcc819a0cd74586189afbba4af878f47d9921745e6d3634cd62a3a107a865438644181a5c60286f907b1aa4c80eb0ec1c7df44ab0f56 mpirxx.pc"
diff --git a/testing/mpir/mpir.pc b/testing/mpir/mpir.pc
deleted file mode 100644
index fad400a0394..00000000000
--- a/testing/mpir/mpir.pc
+++ /dev/null
@@ -1,12 +0,0 @@
-prefix=/usr
-exec_prefix=${prefix}
-libdir=${exec_prefix}/lib
-includedir=${prefix}/include
-modules=1
-
-Name: mpir
-Version: @PKGVER@
-Description: Multiple Precision Integers and Rationals.
-Requires:
-Libs: -L${libdir} -lmpir
-Cflags: -I${includedir}
diff --git a/testing/mpir/mpirxx.pc b/testing/mpir/mpirxx.pc
deleted file mode 100644
index 227dbe44075..00000000000
--- a/testing/mpir/mpirxx.pc
+++ /dev/null
@@ -1,12 +0,0 @@
-prefix=/usr
-exec_prefix=${prefix}
-libdir=${exec_prefix}/lib
-includedir=${prefix}/include
-modules=1
-
-Name: mpir C++
-Version: @PKGVER@
-Description: Multiple Precision Integers and Rationals.
-Requires:
-Libs: -L${libdir} -lmpirxx
-Cflags: -I${includedir}
diff --git a/testing/mpop/APKBUILD b/testing/mpop/APKBUILD
index d27ba31c68b..655efec1bce 100644
--- a/testing/mpop/APKBUILD
+++ b/testing/mpop/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: xcko <xcko@airmail.cc>
# Maintainer: xcko <xcko@airmail.cc>
pkgname=mpop
-pkgver=1.4.16
+pkgver=1.4.18
pkgrel=0
pkgdesc="retrieves mail from pop3 mailboxes"
url="https://marlam.de/mpop"
@@ -35,5 +35,5 @@ vim() {
}
sha512sums="
-a1dea5d2d124596fe86f5edbbfd01e3a97342caefe269c4e0c159d278658b8e39212b23544bfd775a9e6ba5c0d87b84c0004fdd698a5893074cc1b53a0e7567f mpop-1.4.16.tar.xz
+4f20d3653c99361269011162df6a5d2b2f73d7e3e4bb62fc24c301a5d12f0e911ff432b2e786d2f49088cb96c273a4961ee514ba48465c0c455937559d2b2cff mpop-1.4.18.tar.xz
"
diff --git a/testing/mpv-mpris/APKBUILD b/testing/mpv-mpris/APKBUILD
deleted file mode 100644
index 47137c90806..00000000000
--- a/testing/mpv-mpris/APKBUILD
+++ /dev/null
@@ -1,25 +0,0 @@
-# Contributor: Galen Abell <galen@galenabell.com>
-# Maintainer: Galen Abell <galen@galenabell.com>
-pkgname=mpv-mpris
-pkgver=0.7.1
-pkgrel=0
-pkgdesc="MPRIS plugin for mpv"
-url="https://github.com/hoyon/mpv-mpris"
-arch="all"
-license="MIT"
-depends="mpv"
-makedepends="glib-dev mpv-dev"
-options="!check" # no tests
-source="$pkgname-$pkgver.tar.gz::https://github.com/hoyon/mpv-mpris/archive/$pkgver.tar.gz"
-
-build() {
- make
-}
-
-package() {
- install -Dm 0644 mpris.so "$pkgdir"/etc/mpv/scripts/mpris.so
-}
-
-sha512sums="
-7e928bbbf85b5c8e1e92ce51e65986ef7a7fe27a1e382b0148cdd70e22e5320be37a573c6206b3a1ab05119d9d24b861fd45081a008111f1da37673aa3896f23 mpv-mpris-0.7.1.tar.gz
-"
diff --git a/testing/mpv-sponsorblock/APKBUILD b/testing/mpv-sponsorblock/APKBUILD
new file mode 100644
index 00000000000..862d570777f
--- /dev/null
+++ b/testing/mpv-sponsorblock/APKBUILD
@@ -0,0 +1,39 @@
+# Maintainer: Cowington Post <cowingtonpost@gmail.com>
+pkgname=mpv-sponsorblock
+pkgver=2.1.0
+pkgrel=0
+pkgdesc="MPV plugin that allows you to skip sponsors while watching YouTube videos"
+url="https://github.com/TheCactusVert/mpv-sponsorblock"
+# rust-ring
+arch="x86 x86_64 aarch64"
+license="MIT"
+depends="mpv"
+makedepends="
+ cargo
+ cargo-auditable
+ mpv-dev
+ "
+source="https://github.com/TheCactusVert/mpv-sponsorblock/archive/v$pkgver/mpv-sponsorblock-$pkgver.tar.gz"
+options="!check" # no tests
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm0644 target/release/libmpv_sponsorblock.so -t "$pkgdir"/etc/mpv/scripts/
+}
+
+sha512sums="
+60c673ef37e72aad87e69a533311fe2172fd53cc687f29d64560b35d2b272d16cbda523536312992170bcab2d5d84d7b4bdc91a7b75bdf8e76f4b21dccc6bd79 mpv-sponsorblock-2.1.0.tar.gz
+"
diff --git a/testing/mpvpaper/APKBUILD b/testing/mpvpaper/APKBUILD
new file mode 100644
index 00000000000..673e50f04f7
--- /dev/null
+++ b/testing/mpvpaper/APKBUILD
@@ -0,0 +1,33 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=mpvpaper
+pkgver=1.4
+pkgrel=0
+pkgdesc="Video wallpaper setter for wlroots based compositors using mpv"
+url="https://github.com/GhostNaN/mpvpaper"
+arch="all"
+license="GPL-3.0-or-later"
+options="!check" # no test suite
+makedepends="
+ meson
+ ninja
+ mpv-dev
+ wayland-dev
+ wayland-protocols
+ mesa-dev
+ "
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/GhostNaN/mpvpaper/archive/refs/tags/$pkgver.tar.gz"
+
+build() {
+ abuild-meson . output
+ meson compile -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+ install -Dm644 mpvpaper.man "$pkgdir"/usr/share/man/man1/mpvpaper.1
+}
+
+sha512sums="
+23a5859705319bea6508a09df3ea791b976326dcaa8a7df86e0b38754017a1bcb0c594b967db91abe2d631fe9f07454399f57f447fd14192c6f9ede4d479f1d2 mpvpaper-1.4.tar.gz
+"
diff --git a/testing/mqtt2prometheus/APKBUILD b/testing/mqtt2prometheus/APKBUILD
index e65fa6f5a8b..a419fba3f6c 100644
--- a/testing/mqtt2prometheus/APKBUILD
+++ b/testing/mqtt2prometheus/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=mqtt2prometheus
-pkgver=0.1.6
-pkgrel=2
+pkgver=0.1.7
+pkgrel=8
pkgdesc="MQTT to Prometheus gateway"
url="https://github.com/hikhvar/mqtt2prometheus"
arch="all"
@@ -10,6 +10,10 @@ license="MIT"
makedepends="go"
source="https://github.com/hikhvar/mqtt2prometheus/archive/v$pkgver/mqtt2prometheus-$pkgver.tar.gz"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
build() {
go build -o mqtt2prometheus ./cmd
}
@@ -23,5 +27,5 @@ package() {
}
sha512sums="
-2c33cc2e7f94a673e059b4ebfc66d44c9030acb5d9d1e0d8debe7df3d8629d5d88e6c205abc257e39fc18f4c335890becc11c53863845b145079a2bca7567c7f mqtt2prometheus-0.1.6.tar.gz
+729c1e6dd1a6d3cc8fefb6ae371e26d0fd6d30fbb8eac03033780de2fc90aaaddfce2fd6ac6e5c5fdcd828c40794bda519f603ad7e9210d8dbf28108e45a994f mqtt2prometheus-0.1.7.tar.gz
"
diff --git a/testing/mrsh/APKBUILD b/testing/mrsh/APKBUILD
index 55ae6106f43..62339f64c71 100644
--- a/testing/mrsh/APKBUILD
+++ b/testing/mrsh/APKBUILD
@@ -4,7 +4,7 @@ pkgname=mrsh
# NOTE: this software is not ready to be moved out of the testing repository
pkgver=0_git20210518
_commit=cd3c3a48055ab4085d83f149ff4b4feba40b40cb
-pkgrel=0
+pkgrel=1
pkgdesc="Minimal POSIX shell"
url="https://mrsh.sh/"
license="MIT"
@@ -16,11 +16,11 @@ builddir="$srcdir/mrsh-$_commit"
build() {
abuild-meson . output
- meson compile ${JOBS:+-j ${JOBS}} -C output
+ meson compile -C output
}
check() {
- meson test --no-rebuild -v -C output
+ meson test --no-rebuild --print-errorlogs -C output
}
package() {
diff --git a/testing/msh/APKBUILD b/testing/msh/APKBUILD
new file mode 100644
index 00000000000..829d5dc99f1
--- /dev/null
+++ b/testing/msh/APKBUILD
@@ -0,0 +1,46 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=msh
+pkgver=2.5.0
+pkgrel=4
+pkgdesc="Autostart and stop minecraft-server when players join/leave"
+url="https://github.com/gekware/minecraft-server-hibernation"
+arch="all"
+license="GPL-3.0-only"
+makedepends="go"
+install="$pkgname.pre-install"
+subpackages="$pkgname-openrc"
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/gekware/minecraft-server-hibernation/archive/refs/tags/v$pkgver.tar.gz
+ msh.initd
+ msh.confd
+"
+builddir="$srcdir/minecraft-server-hibernation-$pkgver"
+options="!check" # no tests
+pkgusers="$pkgname"
+pkggroups="$pkgname"
+
+export GOFLAGS="$GOFLAGS -modcacherw"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ go build .
+}
+
+package() {
+ install -Dm 755 msh "$pkgdir"/usr/bin/msh
+ install -dm 644 -o $pkgname -g $pkgname "$pkgdir"/etc/$pkgname # Write access is required
+
+ install -Dm 644 msh-config.json "$pkgdir"/etc/msh/msh-config.json
+
+ install -Dm755 "$srcdir"/msh.initd "$pkgdir"/etc/init.d/msh
+ install -Dm644 "$srcdir"/msh.confd "$pkgdir"/etc/conf.d/msh
+}
+
+sha512sums="
+90b059f8ba7940023a270e4f09b088ca55f319fd4bbfcdc1bca0bc3efd09b2f509074c283640fe4de3124b865060bd9fc1f4805baaafa5017d1bcbfc5c6424b6 msh-2.5.0.tar.gz
+c5683294949686b348e5bfb870ff39eed7af64758d7646224335aec7d2c431b0d6cf818b19384e10311e7a381be2c85b052e8d859abe8515ccb7fc514fe4696e msh.initd
+8074464d36b54183f0091e48f2ef25ce0378fc12b0e613a4c53a47a3c8bdd4688b8407f115480d8651ad434cfbfeb681a9beb9650124863843beee97cef259ad msh.confd
+"
diff --git a/testing/msh/msh.confd b/testing/msh/msh.confd
new file mode 100644
index 00000000000..51bdf02b38c
--- /dev/null
+++ b/testing/msh/msh.confd
@@ -0,0 +1,3 @@
+command_user="msh:msh"
+directory="/etc/msh"
+logdir="/var/log/msh"
diff --git a/testing/msh/msh.initd b/testing/msh/msh.initd
new file mode 100644
index 00000000000..b354c0107df
--- /dev/null
+++ b/testing/msh/msh.initd
@@ -0,0 +1,26 @@
+#!/sbin/openrc-run
+supervisor="supervise-daemon"
+
+# fallback values for /etc/conf.d/msh
+: ${command_user:=msh:msh}
+: ${directory:=/etc/msh}
+: ${logdir:=/var/log/msh}
+
+name=msh
+description="Autostart and stop minecraft-server when players join/leave"
+command="/usr/bin/msh"
+command_background=true
+
+pidfile="/run/$name.pid"
+output_log="$logdir/output.log"
+error_log="$logdir/error.log"
+
+depend() {
+ need net
+ use logger
+}
+
+start_pre() {
+ checkpath -d -o "$command_user" "$directory" "$logdir"
+ checkpath -f -o "$command_user" "$output_log" "$error_log"
+}
diff --git a/testing/msh/msh.pre-install b/testing/msh/msh.pre-install
new file mode 100644
index 00000000000..615debdc3ad
--- /dev/null
+++ b/testing/msh/msh.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S msh #2>/dev/null
+adduser -S -D -s /sbin/nologin -G msh -g msh msh #2>/dev/null
+
+exit 0
diff --git a/testing/mspdebug/APKBUILD b/testing/mspdebug/APKBUILD
index 6eb91aed963..a7849a0cf61 100644
--- a/testing/mspdebug/APKBUILD
+++ b/testing/mspdebug/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
pkgname=mspdebug
pkgver=0.25
-pkgrel=0
+pkgrel=1
pkgdesc="A free debugger for use with MSP430 MCUs"
url="https://github.com/dlbeer/mspdebug"
makedepends="libusb-compat-dev readline-dev linux-headers"
diff --git a/testing/msr-tools/APKBUILD b/testing/msr-tools/APKBUILD
index 0b0a2f9d97f..0759bf6ba14 100644
--- a/testing/msr-tools/APKBUILD
+++ b/testing/msr-tools/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Milan P. Stanić <mps@arvanta.net>
pkgname=msr-tools
pkgver=1.3
-pkgrel=0
+pkgrel=1
pkgdesc="utilities for MSRs and CPU ID"
url="https://01.org/msr-tools"
arch="x86_64 x86"
diff --git a/testing/mstflint/0001-fix-musl.patch b/testing/mstflint/0001-fix-musl.patch
new file mode 100644
index 00000000000..6a9131c2aed
--- /dev/null
+++ b/testing/mstflint/0001-fix-musl.patch
@@ -0,0 +1,26 @@
+diff -ur mstflint-4.25.0/mtcr_ul/mtcr_ul_com.c mstflint-4.25.0/mtcr_ul/mtcr_ul_com.c
+--- mstflint-4.25.0/mtcr_ul/mtcr_ul_com.c 2022-04-28 11:50:04.000000000 +0000
++++ mstflint-4.25.0/mtcr_ul/mtcr_ul_com.c 2022-05-19 14:06:49.479797274 +0000
+@@ -67,7 +67,13 @@
+ #include <endian.h>
+ #include <byteswap.h>
+ #include <errno.h>
++#ifndef _GNU_SOURCE
++#define _GNU_SOURCE
+ #include <sys/types.h>
++#undef _GNU_SOURCE
++#else
++#include <sys/types.h>
++#endif
+ #include <sys/stat.h>
+ #include <fcntl.h>
+ #include <string.h>
+@@ -77,7 +83,7 @@
+
+ #if CONFIG_ENABLE_MMAP
+ #include <sys/mman.h>
+-#include <sys/pci.h>
++#include <linux/pci.h>
+ #include <sys/ioctl.h>
+ #endif
+
diff --git a/testing/mstflint/APKBUILD b/testing/mstflint/APKBUILD
new file mode 100644
index 00000000000..422e0b6715c
--- /dev/null
+++ b/testing/mstflint/APKBUILD
@@ -0,0 +1,48 @@
+# Contributor: Hal Martin <hal.martin@gmail.com>
+# Maintainer: Hal Martin <hal.martin@gmail.com>
+pkgname=mstflint
+_pkgver=4.26.0-1
+pkgver=${_pkgver/-/.}
+pkgrel=0
+pkgdesc="MSTFLINT Firmware Burning and Diagnostics Tools"
+url="https://github.com/Mellanox/mstflint"
+license="GPL-2.0-only"
+# only tested on x86_64 as I lack hardware to test other architectures
+# should work for platforms with PCIe and PCIe x4/x8 slot
+arch="x86_64 aarch64"
+makedepends="
+ linux-headers
+ zlib-dev
+ openssl-dev
+ automake
+ autoconf
+ pciutils-dev"
+
+source="https://github.com/Mellanox/mstflint/releases/download/v$_pkgver/mstflint-$_pkgver.tar.gz
+ 0001-fix-musl.patch
+ "
+builddir="$srcdir/$pkgname-${_pkgver/-*/}"
+
+subpackages="$pkgname-doc"
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var \
+ --disable-inband
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+
+sha512sums="
+6ba357f5ed3a8c5ac4195b7b45c5abad3eb95d549f5bd2cc8ae84dee7dab894c47839a3ce3aec04bdaa4942ca953bb148a68cf72c2e9d4e60e090595c96c163e mstflint-4.26.0-1.tar.gz
+0e2b8c69570e9aa5a3815915f6c66e0b0a5f9498c4bea0df5e29d654d436d33bb7bb7fe54405cc883c38077bbea3e1cffb9ee28e9af03dec510c3c36acbecd57 0001-fix-musl.patch
+"
diff --git a/testing/mtg/APKBUILD b/testing/mtg/APKBUILD
index 791bc1caf0a..a6f6f505cea 100644
--- a/testing/mtg/APKBUILD
+++ b/testing/mtg/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Konstantin Kulikov <k.kulikov2@gmail.com>
# Maintainer: Konstantin Kulikov <k.kulikov2@gmail.com>
pkgname=mtg
-pkgver=2.1.6
-pkgrel=2
+pkgver=2.1.7
+pkgrel=13
pkgdesc="MTPROTO proxy for Telegram"
url="https://github.com/9seconds/mtg"
license="MIT"
@@ -18,10 +18,11 @@ source="$pkgname-$pkgver.tar.gz::https://github.com/9seconds/mtg/archive/refs/ta
skip-network-tests.patch
increase-test-timeout.patch
"
-export GOPATH=$srcdir/go
-export GOCACHE=$srcdir/go-build
-export GOTMPDIR=$srcdir
+
export GOFLAGS="$GOFLAGS -modcacherw"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
build() {
go build -v .
@@ -39,7 +40,7 @@ package() {
}
sha512sums="
-2ae18d839be736d2ed0b16310a22aad5d98818f83b64730199ad7738055626bcaa7a29aa5aaeb1a65d128b791ebd5b950e4b8838cbba8253d1f74222cacc7d15 mtg-2.1.6.tar.gz
+e98307683274e73977b352442ccabcc9064a4dd93a3f840c9b36edffce6d2a66ee01ffce49eaf496451c351ce083447d72009912483dd9639847a32055822c95 mtg-2.1.7.tar.gz
6ce0b34b2224ea86d56f1c6911302c42a6b4aa9d13046fd0016d9adc267121fd1365829e26559875b836d0b94f9e784954949094489b7e16975d82332d241273 mtg.initd
41c3edc721fae9569596776e38fe6cebfe213cbb62b9a187fbb893eab9421d64ec5a683a54af5f1444a3e28af89402ab4d55abf9f653a64a040c0a4b684f5ece mtg.confd
340651372d8fa861bf40ead66af7fc52ee917aa62eb21bbf562bd5775ffd13ed688fe516a278aa96a8fe55ea48225ca1d9048a7bca7eaf6a5fedd563b27f21b4 mtg.conf
diff --git a/testing/mtm/APKBUILD b/testing/mtm/APKBUILD
new file mode 100644
index 00000000000..e718a46de10
--- /dev/null
+++ b/testing/mtm/APKBUILD
@@ -0,0 +1,27 @@
+# Contributor: Sergiy Stupar <owner@sestolab.pp.ua>
+# Maintainer: Sergiy Stupar <owner@sestolab.pp.ua>
+pkgname=mtm
+pkgver=1.2.1
+pkgrel=0
+pkgdesc="Perhaps the smallest useful terminal multiplexer in the world"
+url="https://github.com/deadpixi/mtm"
+arch="all"
+license="GPL-3.0-or-later"
+options="!check" # No tests
+depends="ncurses-terminfo"
+makedepends="ncurses-dev"
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/deadpixi/mtm/archive/$pkgver.tar.gz"
+
+build() {
+ make HEADERS='-DNCURSESW_INCLUDE_H="<ncurses.h>"'
+}
+
+package() {
+ install -Dm755 $pkgname -t "$pkgdir"/usr/bin
+ install -Dm644 $pkgname.1 -t "$pkgdir"/usr/share/man/man1
+}
+
+sha512sums="
+74e5230c6ea65c87d580516b7b62edeb4f273c1a36662bac84af41ca47e4ce252e393132dfe8c700441d6b74c19d6d560fbc503815c12f9d1cbdda2e19a9a9e2 mtm-1.2.1.tar.gz
+"
diff --git a/testing/muon/APKBUILD b/testing/muon/APKBUILD
index aee46b9ea88..fcb4b63b0f4 100644
--- a/testing/muon/APKBUILD
+++ b/testing/muon/APKBUILD
@@ -1,44 +1,64 @@
-# Contributor: KikooDX <kikoodx@paranoici.org>
-# Maintainer: KikooDX <kikoodx@paranoici.org>
+# Contributor: Stone Tickle <lattis@mochiro.moe>
+# Maintainer: Stone Tickle <lattis@mochiro.moe>
pkgname=muon
-pkgver=0_git20210812
+pkgver=0.2.0
pkgrel=2
-pkgdesc="meson implementation in C"
-options="!check" # broken test suite
-url="https://sr.ht/~lattis/muon"
-_giturl="https://github.com/annacrombie/muon"
+pkgdesc="A meson-compatible build system."
+url="https://muon.build"
arch="all"
-license="GPL-3.0-only"
+license="GPL-3.0-only AND Apache-2.0"
depends="samurai"
-makedepends="pkgconf-dev curl-dev zlib-dev"
+makedepends="scdoc curl-dev libarchive-dev pkgconf-dev python3 py3-yaml"
subpackages="$pkgname-doc"
-_gitrev=f4ee369d4a90ca597aaf63d99da9355266eba83b
-source="$pkgname-$_gitrev.tar.gz::$_giturl/archive/$_gitrev.tar.gz
- fix-bootstrap.patch"
-builddir="$srcdir/$pkgname-$_gitrev"
-
-prepare() {
- default_prepare
- ./bootstrap.sh bootstrap
-}
+source="
+ $pkgname-$pkgver.tar.gz::https://git.sr.ht/~lattis/muon/archive/$pkgver.tar.gz
+ https://mochiro.moe/wrap/meson-docs-0.64.1-19-g39c6fa4bc.tar.gz
+ fix-tests.patch
+"
+builddir="$srcdir/$pkgname-$pkgver/"
build() {
- bootstrap/muon setup \
- -Dstatic=false \
- -Dcurl=enabled \
- -Dzlib=enabled \
- -Dlibpkgconf=enabled \
- -Dsamu=disabled \
+ mv ../meson-docs subprojects/
+ ./bootstrap.sh build
+ build/muon setup build
+ samu -C build
+
+ # options copied from abuild-meson
+ build/muon setup \
+ -Dprefix=/usr \
+ -Dlibdir=/usr/lib \
+ -Dlibexecdir=/usr/libexec \
+ -Dbindir=/usr/bin \
+ -Dsbindir=/usr/sbin \
+ -Dincludedir=/usr/include \
+ -Ddatadir=/usr/share \
+ -Dmandir=/usr/share/man \
+ -Dinfodir=/usr/share/info \
+ -Dlocaledir=/usr/share/locale \
+ -Dsysconfdir=/etc \
+ -Dlocalstatedir=/var \
+ -Dsharedstatedir=/var/lib \
+ -Dbuildtype=plain \
+ -Dauto_features=auto \
+ -Dwrap_mode=nodownload \
+ -Db_lto=false \
+ -Db_staticpic=true \
+ -Db_pie=true \
build
- ninja -C build
+
+ samu -C build
+}
+
+check() {
+ build/muon -C build test -d dots
}
package() {
- install -Dm711 build/muon "$pkgdir"/usr/bin/muon
- install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+ DESTDIR=$pkgdir build/muon -C build install
}
sha512sums="
-34a76775e137687e345426d3d7dd415fafe5f053d1881b8a2f384ebe49046d9b338c210f3eb1544fddd2dd912427a5d75fb2d8a5be269e3b3e9c95cf5e622e38 muon-f4ee369d4a90ca597aaf63d99da9355266eba83b.tar.gz
-937d8fffec20b5244d7234738eda5baba8a351bff2a6815ec71c30c08180d63febcb6a2adc9a1bd495481d2384cf04c01ab8aa5abc121b76d344a559e4b65569 fix-bootstrap.patch
+b2e90048756bdc26bdea24fe227a87ad4d0e57176e217e22ea492a55229c62e2a70243f60af1e162e2dde8468fdda9662a32ea5cfadd69fab95a83499efa077b muon-0.2.0.tar.gz
+59c986c4c4d545a6488cd74a2b6563b867716b74aab95fd19a745ce46a99fe5222232e132c80c5ed80f3e61d13e74cf2dc13b1b6d4638fd40a69d82d0d74faaa meson-docs-0.64.1-19-g39c6fa4bc.tar.gz
+e9b402583f6dcf31756408abde8eef4752d34c36fcc96b563095eaf73c1736ec06012c347828d5040e18d8b0b788371a5d6fd4866cb4be23b57320ca0df6a74d fix-tests.patch
"
diff --git a/testing/muon/fix-bootstrap.patch b/testing/muon/fix-bootstrap.patch
deleted file mode 100644
index db19cbeec42..00000000000
--- a/testing/muon/fix-bootstrap.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-diff '--color=auto' -Nurp a/bootstrap.sh b/bootstrap.sh
---- a/bootstrap.sh 2021-08-17 03:11:15.990682670 +0200
-+++ b/bootstrap.sh 2021-08-17 03:11:33.563754987 +0200
-@@ -11,7 +11,6 @@ dir="$1"
- mkdir -p "$dir"
-
- cat \
-- platform/dirs.c \
- src/coerce.c \
- src/compilers.c \
- src/data/bucket_array.c \
-@@ -59,6 +58,7 @@ cat \
- src/main.c \
- src/opts.c \
- src/output/output.c \
-+ src/platform/dirs.c \
- src/platform/filesystem.c \
- src/platform/mem.c \
- src/platform/path.c \
diff --git a/testing/muon/fix-tests.patch b/testing/muon/fix-tests.patch
new file mode 100644
index 00000000000..ea750db09d2
--- /dev/null
+++ b/testing/muon/fix-tests.patch
@@ -0,0 +1,28 @@
+One of the test cases of this test checks if ppoll is only defined
+when poll.h is included with -D_GNU_SOURCE. The generated C code
+for this test must be compiled with -std=c99 or newer, as otherwise,
+the ppoll function will be implicitly declared to be `int ppoll()`
+even if poll.h doesn't define it, thereby causing the test case
+to fail.
+
+The test failure message is:
+
+c compiler: has function ppoll: YES
+c compiler: header poll.h has symbol ppoll: YES
+err ppoll should not be accessible without _GNU_SOURCE
+tests/project/common/103 has header symbol/meson.build:49:5: error in function assert()
+ 49 | assert(
+ ^
+
+diff -upr "muon-0.2.0.orig/tests/project/common/103 has header symbol/meson.build" "muon-0.2.0/tests/project/common/103 has header symbol/meson.build"
+--- "muon-0.2.0.orig/tests/project/common/103 has header symbol/meson.build" 2024-03-27 22:11:49.923516032 +0100
++++ "muon-0.2.0/tests/project/common/103 has header symbol/meson.build" 2024-03-27 22:12:09.156904627 +0100
+@@ -2,7 +2,7 @@ project(
+ 'has header symbol',
+ 'c',
+ 'cpp',
+- default_options: ['cpp_std=c++11'],
++ default_options: ['c_std=c99', 'cpp_std=c++11'],
+ )
+
+ cc = meson.get_compiler('c')
diff --git a/testing/muparser/APKBUILD b/testing/muparser/APKBUILD
deleted file mode 100644
index 61dbe3c1785..00000000000
--- a/testing/muparser/APKBUILD
+++ /dev/null
@@ -1,50 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=muparser
-pkgver=2.3.3
-pkgrel=0
-pkgdesc="Fast math parser library"
-url="https://beltoforion.de/en/muparser/"
-arch="all !s390x" # s390x blocked by openmp
-license="BSD-2-Clause"
-makedepends="cmake openmp-dev"
-subpackages="$pkgname-dev $pkgname-doc"
-options="!check" # No testsuite
-source="$pkgname-$pkgver.tar.gz::https://github.com/beltoforion/muparser/archive/v$pkgver-1.tar.gz"
-builddir="$srcdir/muparser-$pkgver-1"
-
-# FIXME: For some reason CMake is unable to find the OpenMP dependency
-# on riscv64. Might be qemu-user related:
-#
-# CMake Error at /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
-# Could NOT find OpenMP_C (missing: OpenMP_gomp_LIBRARY
-# OpenMP_pthread_LIBRARY) (found version "4.5")
-#
-_cmake_opts="-DENABLE_OPENMP=ON"
-case "${CARCH}" in
-riscv64) _cmake_opts="-DENABLE_OPENMP=OFF" ;;
-esac
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build \
- -DCMAKE_BUILD_TYPE=None \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- $CMAKE_CROSSOPTS \
- $_cmake_opts .
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --build build --target install
-
- install -Dm644 "$builddir"/LICENSE -t \
- "$pkgdir"/usr/share/licenses/muparser/
-}
-
-sha512sums="
-f7e01c83f6ffe71e240653c47fdb8f3152d7fdf61b5997a3c717dec50d0175065c4fc4241ec95fb35b60b968c5c965a820009163ebe84f0fa57d64b3a23226b4 muparser-2.3.3.tar.gz
-"
diff --git a/testing/muse/APKBUILD b/testing/muse/APKBUILD
new file mode 100644
index 00000000000..643c508a020
--- /dev/null
+++ b/testing/muse/APKBUILD
@@ -0,0 +1,51 @@
+# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=muse
+pkgver=4.2.1
+pkgrel=1
+pkgdesc="Linux Music Editor"
+url="https://github.com/muse-sequencer/muse/"
+# x86: doesn't build
+arch="all !x86"
+license="GPL-2.0-or-later"
+makedepends="
+ alsa-lib-dev
+ cmake
+ extra-cmake-modules
+ fluidsynth-dev
+ jack-dev
+ ladspa-dev
+ libsamplerate-dev
+ libsndfile-dev
+ lilv-dev
+ lv2-dev
+ python3-dev
+ qt5-qtbase-dev
+ qt5-qtsvg-dev
+ qt5-qttools-dev
+ rubberband-dev
+ samurai
+ "
+subpackages="$pkgname-doc"
+source="https://github.com/muse-sequencer/muse/archive/refs/tags/$pkgver/muse-$pkgver.tar.gz"
+builddir="$srcdir/muse-$pkgver/src"
+options="!check" # no tests
+
+build() {
+ cmake -B build -G Ninja -Wno-dev \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DCMAKE_INSTALL_PREFIX=/usr
+ cmake --build build
+}
+
+check() {
+ CTEST_OUTPUT_ON_FAILURE=TRUE ctest --test-dir build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+cf033cf77cb328a2aa704bf04d69dd515108e9c789e2ec9321a577b5b3b3bb73ce738142903b69b2c9c3ec5c27e921adc52511932f48809149f5a5cf5fd7deb2 muse-4.2.1.tar.gz
+"
diff --git a/testing/musikcube/APKBUILD b/testing/musikcube/APKBUILD
new file mode 100644
index 00000000000..cf72ffda84c
--- /dev/null
+++ b/testing/musikcube/APKBUILD
@@ -0,0 +1,108 @@
+# Maintainer:
+pkgname=musikcube
+pkgver=3.0.2
+pkgrel=1
+pkgdesc="a cross-platform, terminal-based music player, audio engine, metadata indexer, and server"
+url="https://github.com/clangen/musikcube"
+arch="all"
+license="BSD-3-Clause"
+# TODO: libbasu-dev instead of elogind-dev yields a nonfunctioning mpris plugin,
+# even though session is not in elogind anyway, libelogind works
+makedepends="
+ alsa-lib-dev
+ asio-dev
+ cmake
+ curl-dev
+ elogind-dev
+ ffmpeg-dev
+ kissfft-dev
+ lame-dev
+ libev-dev
+ libmicrohttpd-dev
+ libopenmpt-dev
+ ncurses-dev
+ pipewire-dev
+ samurai
+ sdbus-cpp-dev
+ sqlite-dev
+ taglib-dev
+ "
+# TODO: split server (-d)
+# put plugins in not /usr/share
+# split locales
+subpackages="
+ $pkgname-dev
+ $pkgname-plugin-all:allplugins
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/clangen/musikcube/archive/refs/tags/$pkgver.tar.gz
+ locale.patch
+ tinfo.patch
+ sys.patch
+ "
+options="!check" # no tests
+
+# alsa/pipewire/ffmpegdecorder left in by default
+_plugins="
+ httpdatastream
+ mpris
+ openmpt
+ server
+ stockencoders
+ supereqdsp
+ taglibreader
+ "
+for _plugin in $_plugins; do
+ subpackages="$subpackages $pkgname-plugin-$_plugin:plugin"
+done
+
+prepare() {
+ default_prepare
+
+ cd src/3rdparty
+ rm -r src/sqlite
+ rm -r src/kiss*
+}
+
+build() {
+ # no-ncursesw prevents looking in the wrong place
+ # disable-update-check is passed for ''homebrew builds'', removes update checker
+ CFLAGS="$CFLAGS -DNDEBUG -O2" \
+ CXXFLAGS="$CXXFLAGS -DDISABLE_UPDATE_CHECK -DNO_NCURSESW -DNDEBUG -O2" \
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=None
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+ mkdir -p "$pkgdir"/usr/lib
+ mv "$pkgdir"/usr/share/musikcube/libmusikcore.so "$pkgdir"/usr/lib/
+
+ # just sh wrappers, so use symlinks instead
+ ln -sfv ../share/musikcube/musikcube "$pkgdir"/usr/bin/musikcube
+ ln -sfv ../share/musikcube/musikcubed "$pkgdir"/usr/bin/musikcubed
+}
+
+plugin() {
+ local sub="${subpkgname#"$pkgname"-plugin-}"
+ pkgdesc="$pkgdesc ($sub plugin)"
+
+ amove usr/share/musikcube/plugins/*$sub*.so
+}
+
+allplugins() {
+ pkgdesc="$pkgdesc (all plugins)"
+ local plugin
+ for plugin in $_plugins; do
+ depends="$depends $pkgname-plugin-$plugin=$pkgver-r$pkgrel"
+ done
+ mkdir -p "$subpkgdir"
+}
+
+sha512sums="
+33d7fa0768c235afa2d877fb2bd3523f47c2fcf1bd500daabbd3755645439c51a1d477e8e8fe7f2a6aba451121b0d600e413fa0a491da9947a4dff7cb0430d82 musikcube-3.0.2.tar.gz
+cbb0c515a245475221f98b6858152f99c5e0d1d95ee4d79ecfcb616788f907099aed7195fa16180267900e56c136bd9d38caea7b285a2f8720cd7a767cbba279 locale.patch
+4f473fae6a4351875930ee5ba537116047e7cd1e16d70822f815b46bacb4e80289afcef9c577b0ef9c966ddc8087819391a2517b630e4ef4a791c120b849b2a7 tinfo.patch
+fdcd4c2ed2771b6c5584723a6a9e7d4ab582cceb5f50f4b8bd22b59be31eb8bf905c4e5981c6aabcf437ff64ea5b49b0b0ec2b8da5b458311a8880bdacbc8be5 sys.patch
+"
diff --git a/testing/musikcube/locale.patch b/testing/musikcube/locale.patch
new file mode 100644
index 00000000000..29eaaf65f3b
--- /dev/null
+++ b/testing/musikcube/locale.patch
@@ -0,0 +1,15 @@
+the output of setlocale is quite opaque and segfaults in portable libstdc++ locale() implementation later, so just use current
+--
+diff --git a/src/musikcube/app/model/DirectoryAdapter.cpp b/src/musikcube/app/model/DirectoryAdapter.cpp
+index 6108cde..2f4d1bc 100755
+--- a/src/musikcube/app/model/DirectoryAdapter.cpp
++++ b/src/musikcube/app/model/DirectoryAdapter.cpp
+@@ -133,7 +133,7 @@ static void buildDirectoryList(
+ std::sort(
+ target.begin(),
+ target.end(),
+- std::locale(setlocale(LC_ALL, nullptr)));
++ std::locale(""));
+ }
+ catch (...) {
+ std::sort(target.begin(), target.end());
diff --git a/testing/musikcube/sys.patch b/testing/musikcube/sys.patch
new file mode 100644
index 00000000000..b1e80ff83e6
--- /dev/null
+++ b/testing/musikcube/sys.patch
@@ -0,0 +1,37 @@
+use system versions of some things
+--
+diff --git a/src/musikcore/CMakeLists.txt b/src/musikcore/CMakeLists.txt
+index 8309cc3..8894c15 100644
+--- a/src/musikcore/CMakeLists.txt
++++ b/src/musikcore/CMakeLists.txt
+@@ -1,3 +1,7 @@
++find_package(PkgConfig REQUIRED)
++pkg_check_modules(kissfft REQUIRED kissfft-float)
++pkg_check_modules(sqlite REQUIRED sqlite3)
++
+ set(CORE_SOURCES
+ ./c_context.cpp
+ ./c_interface_wrappers.cpp
+@@ -67,10 +71,7 @@ set(CORE_SOURCES
+ ./support/Playback.cpp
+ ./support/Preferences.cpp
+ ./support/PreferenceKeys.cpp
+ ../3rdparty/src/sqlean/unicode/extension.c
+- ../3rdparty/src/sqlite/sqlite3.c
+- ../3rdparty/src/kiss_fft.c
+- ../3rdparty/src/kiss_fftr.c
+ ../3rdparty/src/md5.c
+ )
+
+@@ -85,9 +86,9 @@ add_definitions(-DMCSDK_DEFINE_EXPORTS)
+ add_library(musikcore SHARED ${CORE_SOURCES})
+
+ set_target_properties(musikcore PROPERTIES LIBRARY_OUTPUT_DIRECTORY ${musikcube_SOURCE_DIR}/bin)
+-target_link_libraries(musikcore ${musikcube_LINK_LIBS})
+-target_include_directories(musikcore BEFORE PRIVATE ${VENDOR_INCLUDE_DIRECTORIES})
++target_link_libraries(musikcore ${musikcube_LINK_LIBS} ${sqlite_LIBRARIES} ${kissfft_LIBRARIES})
++target_include_directories(musikcore BEFORE PRIVATE ${VENDOR_INCLUDE_DIRECTORIES} ${sqlite_INCLUDE_DIRS} ${kissfft_INCLUDE_DIRS})
+ find_header(asio.hpp)
+
+ if (ENABLE_PCH MATCHES "true")
+ message(STATUS "[musikcore] enabling precompiled headers")
diff --git a/testing/musikcube/tinfo.patch b/testing/musikcube/tinfo.patch
new file mode 100644
index 00000000000..dbc021e2985
--- /dev/null
+++ b/testing/musikcube/tinfo.patch
@@ -0,0 +1,16 @@
+libtinfo is just a split part of ncurses
+--
+diff --git a/src/musikcube/CMakeLists.txt b/src/musikcube/CMakeLists.txt
+index e16ec8b..7d10500 100644
+--- a/src/musikcube/CMakeLists.txt
++++ b/src/musikcube/CMakeLists.txt
+@@ -113,9 +113,6 @@ else()
+ message(STATUS "[ncurses] detected OpenBSD, unsetting LIBTINFO")
+ set(LIBTINFO "")
+ else()
+- message(STATUS "[ncurses] not Darwin! will attempt to link against libtinfo")
+- find_library(LIBTINFO NAMES tinfo)
+- message(STATUS "[musikcube] using libtinfo at: " ${LIBTINFO})
+ endif()
+ endif()
+
diff --git a/testing/mustach/APKBUILD b/testing/mustach/APKBUILD
deleted file mode 100644
index 14c7a333a8e..00000000000
--- a/testing/mustach/APKBUILD
+++ /dev/null
@@ -1,28 +0,0 @@
-# Contributor: Lucas Ramage <ramage.lucas@protonmail.com>
-# Maintainer: Lucas Ramage <ramage.lucas@protonmail.com>
-pkgname=mustach
-pkgver=1.2.2
-pkgrel=0
-pkgdesc="C implementation of the mustache template specification"
-url="https://gitlab.com/jobol/mustach"
-arch="all"
-license="Apache-2.0"
-makedepends="json-c-dev"
-subpackages="$pkgname-dev $pkgname-doc $pkgname-libs"
-source="https://gitlab.com/jobol/mustach/-/archive/$pkgver/mustach-$pkgver.tar.bz2"
-restrict="!check" # test1 segfaults
-
-build() {
- make tool=jsonc libs=single
-}
-
-package() {
- make -j1 DESTDIR="$pkgdir" PREFIX="/usr" install
-
- mkdir -p "$pkgdir"/usr/share/doc/$pkgname/
- install -m644 AUTHORS README.md \
- "$pkgdir"/usr/share/doc/$pkgname/
-}
-sha512sums="
-974e18c2d174cf7a36beb37a7b8c3ffb3ff231b86d3c6978a0a2a40050d1c8f2db2d7976398c12dc3b226a7f571212595ce4d726ccc60e32bf984033be493d13 mustach-1.2.2.tar.bz2
-"
diff --git a/testing/mwoffliner/APKBUILD b/testing/mwoffliner/APKBUILD
deleted file mode 100644
index 57205f4fb7b..00000000000
--- a/testing/mwoffliner/APKBUILD
+++ /dev/null
@@ -1,40 +0,0 @@
-# Contributor: Oleg Titov <oleg.titov@gmail.com>
-# Maintainer: Oleg Titov <oleg.titov@gmail.com>
-pkgname=mwoffliner
-pkgver=1.11.10
-pkgrel=0
-pkgdesc="Scrape any online Mediawiki motorised wiki to your local filesystem"
-url="https://github.com/openzim/mwoffliner"
-arch="x86_64"
-license="GPL-3.0-or-later"
-options="!check" # no test suite from upstream
-depends="npm redis libc6-compat"
-makedepends="python3 autoconf automake chrpath libjpeg-turbo-dev nasm zlib-dev
- libzim-dev bash"
-subpackages="$pkgname-doc"
-source="mwoffliner-$pkgver.tar.gz::https://github.com/openzim/mwoffliner/archive/v$pkgver.tar.gz"
-
-build() {
- npm install
-}
-
-check() {
- npm test
-}
-
-package() {
- install -d "$pkgdir"/usr/share/doc/$pkgname "$pkgdir"/usr/lib/node_modules/$pkgname
- cp -a lib node_modules package*.json "$pkgdir"/usr/lib/node_modules/$pkgname
- ln -s /usr/lib/node_modules/$pkgname/bin/$pkgname "$pkgdir"/usr/lib/node_modules/$pkgname
-
- install -Dm644 README.md "$pkgdir/usr/share/doc/$pkgname/README.md"
-
- # Strip all the rpath that include /home
- local scandir="$pkgdir"/usr/lib/node_modules/mwoffliner/node_modules/@openzim/libzim/
- scanelf --recursive --rpath --etype ET_DYN "$scandir" | \
- awk '/home/{print $3;}' | xargs chrpath --delete
-}
-
-sha512sums="
-d9a820327343a41f21df93c40ebe682ddf91cc18431399d712a6f1e7830192e13b18a677cc2639f6a0aa36518782c0581d2a6991ff5f744cef9fb91c3433e025 mwoffliner-1.11.10.tar.gz
-"
diff --git a/testing/mxclient/APKBUILD b/testing/mxclient/APKBUILD
index ed2148576b8..d7c8ad45025 100644
--- a/testing/mxclient/APKBUILD
+++ b/testing/mxclient/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Milan P. Stanić <mps@arvanta.net>
pkgname=mxclient
pkgver=0_git20211002
-pkgrel=0
+pkgrel=1
_commitid="7d47bcf1df699c2a9ea9b333c3b980c546455a3b"
pkgdesc="minimalist client for sending mail direct to the recipient's MX"
url="https://github.com/richfelker/mxclient/"
diff --git a/testing/mycroft-embedded-shell/APKBUILD b/testing/mycroft-embedded-shell/APKBUILD
deleted file mode 100644
index 38329e93364..00000000000
--- a/testing/mycroft-embedded-shell/APKBUILD
+++ /dev/null
@@ -1,46 +0,0 @@
-# Contributor: Bart Ribbers <bribbers@disroot.org>
-# Maintainer: Bart Ribbers <bribbers@disroot.org>
-pkgname=mycroft-embedded-shell
-pkgver=0_git20211005
-pkgrel=0
-_commit="c2855bffe17cd346397909bf84842eca2d15bd39"
-pkgdesc="A MyCroft GUI app which is intended to run on low power hardware"
-url="https://github.com/OpenVoiceOS/mycroft-embedded-shell"
-# armhf blocked by extra-cmake-modules
-# s390x and riscv64 blocked by polkit -> plasma-pa
-# ppc64le blocked by qt5-qtwebview
-arch="all !armhf !s390x !riscv64 !ppc64le"
-license="Apache-2.0"
-depends="plasma-pa"
-makedepends="
- extra-cmake-modules
- kdbusaddons-dev
- ki18n-dev
- qt5-qtbase-dev
- qt5-qtdeclarative-dev
- qt5-qtwebview-dev
- "
-source="https://github.com/OpenVoiceOS/mycroft-embedded-shell/archive/$_commit/mycroft-embedded-shell-$_commit.tar.gz"
-options="!check" # No tests
-builddir="$srcdir/$pkgname-$_commit"
-
-build() {
- cmake -B build \
- -DCMAKE_BUILD_TYPE=None \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib
- cmake --build build
-}
-
-check() {
- cd build
- CTEST_OUTPUT_ON_FAILURE=TRUE ctest
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-
-sha512sums="
-5b7e664e27234d5ee29401f5525b7d19e2b39c58cd5da9c4b8496f0527e7fcd9b6894593a246b2e2b30b30b90b03aa95c7ceed1295da5f0f0dfe1029396402ae mycroft-embedded-shell-c2855bffe17cd346397909bf84842eca2d15bd39.tar.gz
-"
diff --git a/testing/mynewt-newt/APKBUILD b/testing/mynewt-newt/APKBUILD
deleted file mode 100644
index 8f3f1866ef8..00000000000
--- a/testing/mynewt-newt/APKBUILD
+++ /dev/null
@@ -1,30 +0,0 @@
-# Contributor: Oleg Titov <oleg.titov@gmail.com>
-# Maintainer: Oleg Titov <oleg.titov@gmail.com>
-pkgname=mynewt-newt
-pkgver=1.10.0
-_ver=${pkgver//./_}_tag
-pkgrel=0
-pkgdesc="Apache Newt is a smart build and package management tool for Apache Mynewt Operating System"
-url="https://mynewt.apache.org"
-arch="x86_64 x86"
-license="Apache-2.0"
-options="!check" # unreleased test suite in separate repository
-depends="git"
-makedepends="go"
-subpackages="$pkgname-doc"
-source="mynewt-newt-$pkgver.tar.gz::https://github.com/apache/mynewt-newt/archive/mynewt_${_ver}.tar.gz"
-builddir="$srcdir/mynewt-newt-mynewt_${_ver}"
-
-build() {
- ./build.sh
-}
-
-package() {
- install -Dm 755 newt/newt "${pkgdir}/usr/bin/newt"
-
- install -Dm 644 -t "${pkgdir}/usr/share/doc/${pkgname}/" README.md
-}
-
-sha512sums="
-6109b0421d8e02d5b83082f8085ccf0904ad7f1997e1d9932fad015d3cb40ab6804571a2466d2a42f3f7970e114ac25b2a9084c3c15e16c46eb01f359ecc0151 mynewt-newt-1.10.0.tar.gz
-"
diff --git a/testing/mypaint/APKBUILD b/testing/mypaint/APKBUILD
new file mode 100644
index 00000000000..40eb2bbc2cd
--- /dev/null
+++ b/testing/mypaint/APKBUILD
@@ -0,0 +1,63 @@
+# Contributor: mio <miyopan@e.email>
+# Maintainer: mio <miyopan@e.email>
+pkgname=mypaint
+pkgver=2.0.1
+pkgrel=0
+pkgdesc="Fast and dead-simple painting app for artists"
+url="https://mypaint.app/"
+license="GPL-2.0-or-later"
+# s390x: fails big endian tests
+arch="all !s390x"
+depends="
+ mypaint-brushes2
+ py3-cairo
+ py3-gobject3
+ py3-numpy
+ "
+# Required for tests: py3-cairo py3-gobject3
+makedepends="
+ glib-dev
+ gtk+3.0-dev
+ lcms2-dev
+ libmypaint-dev
+ libpng-dev
+ mypaint-brushes2-dev
+ python3-dev
+ py3-cairo
+ py3-numpy-dev
+ py3-gobject3-dev
+ py3-setuptools
+ py3-wheel
+ swig
+ "
+subpackages="$pkgname-pyc $pkgname-lang"
+source="mypaint-v$pkgver.tar.gz::https://github.com/mypaint/mypaint/archive/v$pkgver.tar.gz
+ fix-invalid-mode-ru.patch"
+
+build() {
+ python setup.py build_config
+ python setup.py build
+}
+
+check() {
+ python setup.py test
+}
+
+package() {
+ python setup.py install --root="$pkgdir" --skip-build
+}
+
+pyc() {
+ pkgdesc="Precompiled Python bytecode for ${subpkgname%-pyc}"
+ install_if="${subpkgname%-pyc}=$pkgver-r$pkgrel pyc"
+
+ cd "$pkgdir" || return 0
+ local IFS='
+'
+ amove $(find usr/lib -type d -name __pycache__)
+}
+
+sha512sums="
+80983bb70234c4f5fbcc0c13d0e6bb8d20198ec18e22c395d42814b9c7a6621bdd0b1c395ac8067b19bb7a47400514c99aa3ebdad2ddb4859f9446c43beb51ea mypaint-v2.0.1.tar.gz
+ad87fcf5b76db88ff495e260e12dd24d3309d5e8897a88ed836e4df4bc09f7188ef1e17a8190a94020a4d0c978017b99f7afcaf88d99dce12b9037d663e37157 fix-invalid-mode-ru.patch
+"
diff --git a/testing/mypaint/fix-invalid-mode-ru.patch b/testing/mypaint/fix-invalid-mode-ru.patch
new file mode 100644
index 00000000000..7c2df6effdc
--- /dev/null
+++ b/testing/mypaint/fix-invalid-mode-ru.patch
@@ -0,0 +1,98 @@
+From 032a155b72f2b021f66a994050d83f07342d04af Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
+ <congdanhqx@gmail.com>
+Date: Wed, 9 Nov 2022 11:24:33 +0700
+Subject: [PATCH] python: fix for Python 3.11
+
+- python 3 always open in universal mode, U is default mode in 3.0,
+ and removed in 3.11
+- mypaint doesn't use ld?n?gettext, so bind_textdomain_codeset isn't
+ needed, that function is deprecated in 3.8 and is no-ops in 3.10 and
+ removed in 3.11
+---
+ lib/gettext_setup.py | 25 ++-----------------------
+ setup.py | 2 +-
+ 2 files changed, 3 insertions(+), 24 deletions(-)
+
+diff --git a/lib/gettext_setup.py b/lib/gettext_setup.py
+index d4ce60a20..72cfaeddc 100644
+--- a/lib/gettext_setup.py
++++ b/lib/gettext_setup.py
+@@ -82,13 +82,11 @@ def init_gettext(localepath):
+ # yanked in over GI.
+ # https://bugzilla.gnome.org/show_bug.cgi?id=574520#c26
+ bindtextdomain = None
+- bind_textdomain_codeset = None
+ textdomain = None
+
+ # Try the POSIX/Linux way first.
+ try:
+ bindtextdomain = locale.bindtextdomain
+- bind_textdomain_codeset = locale.bind_textdomain_codeset
+ textdomain = locale.textdomain
+ except AttributeError:
+ logger.warning(
+@@ -117,12 +115,6 @@ def init_gettext(localepath):
+ ctypes.c_char_p,
+ )
+ bindtextdomain.restype = ctypes.c_char_p
+- bind_textdomain_codeset = libintl.bind_textdomain_codeset
+- bind_textdomain_codeset.argtypes = (
+- ctypes.c_char_p,
+- ctypes.c_char_p,
+- )
+- bind_textdomain_codeset.restype = ctypes.c_char_p
+ textdomain = libintl.textdomain
+ textdomain.argtypes = (
+ ctypes.c_char_p,
+@@ -177,35 +169,22 @@ def init_gettext(localepath):
+ # complete set from the same source.
+ # Required for translatable strings in GtkBuilder XML
+ # to be translated.
+- if bindtextdomain and bind_textdomain_codeset and textdomain:
++ if bindtextdomain and textdomain:
+ assert os.path.exists(path)
+ assert os.path.isdir(path)
+ if sys.platform == 'win32':
+ p = bindtextdomain(dom.encode('utf-8'), path.encode('utf-8'))
+- c = bind_textdomain_codeset(
+- dom.encode('utf-8'), codeset.encode('utf-8')
+- )
+ else:
+ p = bindtextdomain(dom, path)
+- c = bind_textdomain_codeset(dom, codeset)
+ logger.debug("C bindtextdomain(%r, %r): %r", dom, path, p)
+- logger.debug(
+- "C bind_textdomain_codeset(%r, %r): %r",
+- dom, codeset, c,
+- )
+ # Call the implementations in Python's standard gettext module
+ # too. This has proper cross-platform support, but it only
+ # initializes the native Python "gettext" module.
+ # Required for marked strings in Python source to be translated.
+ # See http://docs.python.org/release/2.7/library/locale.html
+ p = gettext.bindtextdomain(dom, path)
+- c = gettext.bind_textdomain_codeset(dom, codeset)
+ logger.debug("Python bindtextdomain(%r, %r): %r", dom, path, p)
+- logger.debug(
+- "Python bind_textdomain_codeset(%r, %r): %r",
+- dom, codeset, c,
+- )
+- if bindtextdomain and bind_textdomain_codeset and textdomain:
++ if bindtextdomain and textdomain:
+ if sys.platform == 'win32':
+ d = textdomain(defaultdom.encode('utf-8'))
+ else:
+diff --git a/setup.py b/setup.py
+index 204236765..046db5880 100644
+--- a/setup.py
++++ b/setup.py
+@@ -679,7 +679,7 @@ def _install_script(self, src, header):
+ self.announce("installing %s as %s" % (src, targ_basename), level=2)
+ if self.dry_run:
+ return []
+- with open(src, "rU") as in_fp:
++ with open(src, "r") as in_fp:
+ with open(targ, "w") as out_fp:
+ line = in_fp.readline().rstrip()
+ if line.startswith("#!"):
diff --git a/testing/n30f/APKBUILD b/testing/n30f/APKBUILD
index fb1d11565eb..7fc5b33151b 100644
--- a/testing/n30f/APKBUILD
+++ b/testing/n30f/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Camille Scholtz <onodera@openmailbox.org>
pkgname=n30f
pkgver=2.0
-pkgrel=2
+pkgrel=3
pkgdesc="A quick hack to display a png in a borderless and transparent non-wm-managed window"
url="https://github.com/sdhand/n30f"
arch="all"
diff --git a/testing/nano-hare/APKBUILD b/testing/nano-hare/APKBUILD
new file mode 100644
index 00000000000..da4309aef25
--- /dev/null
+++ b/testing/nano-hare/APKBUILD
@@ -0,0 +1,23 @@
+# Contributor: Sertonix <sertonix@posteo.net>
+# Maintainer: Sertonix <sertonix@posteo.net>
+pkgname=nano-hare
+pkgver=0_git20231021
+_commit=6907c3f20a9177c3aeeead5fcf4dae1926471181
+pkgrel=0
+pkgdesc="Nano syntax highlighting for Hare"
+url="https://sr.ht/~lmarz/nano-hare/"
+arch="noarch"
+license="Unlicense"
+install_if="nano-syntax hare"
+source="$pkgname-$_commit.tar.gz::https://git.sr.ht/~lmarz/nano-hare/archive/$_commit.tar.gz"
+builddir="$srcdir/nano-hare-$_commit"
+# !check: no checks available
+options="!check"
+
+package() {
+ install -Dm0644 -t "$pkgdir"/usr/share/nano/ -- "$builddir"/hare.nanorc
+}
+
+sha512sums="
+b77d83f952ac72114d0902895fe6994d45b97131415610e3d98344e9bdbf880c8c98e63ef3c0c713c6d84e31280545e8976bc88f1d597b79fc1570b94e8c5648 nano-hare-6907c3f20a9177c3aeeead5fcf4dae1926471181.tar.gz
+"
diff --git a/testing/nanomsg/APKBUILD b/testing/nanomsg/APKBUILD
deleted file mode 100644
index e48aac555a5..00000000000
--- a/testing/nanomsg/APKBUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-# Contributor: Francesco Colista <fcolista@alpinelinux.org>
-# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
-pkgname=nanomsg
-pkgver=1.2
-pkgrel=0
-pkgdesc="Socket library that provides several common communication patterns"
-url="https://nanomsg.org"
-arch="all !armhf !armv7" # armhf: segfaults in 2 tests
-license="MIT"
-makedepends="asciidoctor xmlto cmake"
-options="libtool"
-subpackages="$pkgname-dev $pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/nanomsg/nanomsg/archive/$pkgver.tar.gz"
-
-
-build() {
- cmake \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib .
- make
-}
-
-check() {
- make test
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-377b3a0b4be6d6decd2711ff84ac1855ae0a298e7557dbe4b7d881c2a76f4e521671b47987b924c434afdad7ff1dfebb50982c8c0afca9b44682c898510d4c92 nanomsg-1.2.tar.gz
-"
diff --git a/testing/nauty/APKBUILD b/testing/nauty/APKBUILD
new file mode 100644
index 00000000000..1e65a786102
--- /dev/null
+++ b/testing/nauty/APKBUILD
@@ -0,0 +1,37 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
+pkgname=nauty
+pkgver=2.8.8
+_pkgver=${pkgver//./_}
+pkgrel=0
+pkgdesc="Programs for computing automorphism groups of graphs and digraphs"
+url="https://pallini.di.uniroma1.it/"
+arch="all"
+license="Apache-2.0"
+subpackages="$pkgname-dev"
+source="https://pallini.di.uniroma1.it/nauty$_pkgver.tar.gz"
+builddir="$srcdir/$pkgname$_pkgver"
+
+build() {
+ export CFLAGS="${CFLAGS/-Os/-O3}" # gotta go fast
+
+ ./configure \
+ --target="$CTARGET" \
+ --build="$CBUILD" \
+ --host="$CHOST" \
+ --prefix=/usr \
+ --enable-generic
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" pkgconfigexecdir=/usr/lib/pkgconfig install
+}
+
+sha512sums="
+c0495256b92b0742e7f0a3ad8b43f400e7b4bc4b58dff560e7d0a868f392b0462424566b8ebba5ec08499551eab091b6a8e2c0ddba4953ab7592906034812c18 nauty2_8_8.tar.gz
+"
diff --git a/testing/navidrome/APKBUILD b/testing/navidrome/APKBUILD
deleted file mode 100644
index c52c2c54ebe..00000000000
--- a/testing/navidrome/APKBUILD
+++ /dev/null
@@ -1,77 +0,0 @@
-# Contributor: Tom Lebreux <me@tomlebreux.com>
-# Maintainer: Tom Lebreux <me@tomlebreux.com>
-pkgname=navidrome
-pkgver=0.47.5
-pkgrel=3
-pkgdesc="Modern Music Server and Streamer compatible with Subsonic/Airsonic"
-url="https://navidrome.org/"
-arch="all !riscv64" # blocked by nodejs
-license="GPL-3.0-or-later"
-# check: TypeError: Cannot redefine property: localStorage
-# For downloading go and nodejs dependencies
-options="net !check"
-depends="ffmpeg"
-makedepends="go npm taglib-dev zlib-dev"
-install="$pkgname.pre-install"
-subpackages="$pkgname-openrc"
-pkgusers="navidrome"
-pkggroups="navidrome"
-source="
- $pkgname-$pkgver.tar.gz::https://github.com/navidrome/navidrome/archive/refs/tags/v$pkgver.tar.gz
- navidrome.initd
- navidrome.confd
- navidrome.toml
- "
-# temp fix remove later
-options="$options chmod-clean"
-
-export GOFLAGS="$GOFLAGS -modcacherw -trimpath"
-export GOPATH="$srcdir"
-
-# secfixes:
-# 0.47.5-r0:
-# - CVE-2022-23857
-
-build() {
- make download-deps
- # Prevents crash due to allocation failure
- echo 'node-options=--max_old_space_size=3072' > ./ui/.npmrc
- cd ./ui/
- npm install
- npm run build
- cd ..
-
- # Display pkgrel instead of keeping the git sha in sync with pkgver
- CGO_ENABLED=1 go build \
- -ldflags="
- -X github.com/navidrome/navidrome/consts.gitSha=$pkgver-r$pkgrel
- -X github.com/navidrome/navidrome/consts.gitTag=v$pkgver" \
- -tags=embed,netgo
-}
-
-check() {
- make testall
-}
-
-package() {
- install -Dm755 navidrome "$pkgdir"/usr/bin/navidrome
-
- install -Dm644 "$srcdir"/navidrome.toml \
- "$pkgdir"/etc/navidrome/navidrome.toml
-
- install -Dm755 "$srcdir"/$pkgname.initd \
- "$pkgdir"/etc/init.d/$pkgname
- install -Dm644 "$srcdir"/$pkgname.confd \
- "$pkgdir"/etc/conf.d/$pkgname
-
- install -dm755 -o navidrome -g navidrome \
- "$pkgdir"/var/lib/navidrome \
- "$pkgdir"/var/lib/navidrome/music
-}
-
-sha512sums="
-c3bd67b52c55d722b4d6f581c24b7cb566598db3911d5c716d2876099ec5c9c82947571d509c9df14b2c327ec9fdfd9204412848f511ca99cbf89367454c1db0 navidrome-0.47.5.tar.gz
-d632f769ed4dd0cc1ddf937ed6b3115df538399f176cc5afb576f3129c305e7a0b2762b5d62968e2819ee4cd9c88552e5c821601f5fd5b32ce5925f3e92ce281 navidrome.initd
-e69ff79d0be237979c7faa28cc7d6467070c48fb8870a228d122622b8fb4d4cd3cdd58bd22090bec37478b8c4cec8d30db5928c2094ee60a32c40bc7c96d10a3 navidrome.confd
-c3f25ce03e9a433f845485d744a5634c2cf462bf7e52bd8f58d965d5c5bd53630cc71702b444fb0201d66a20556f8570a24a69683be93e0efdd719d2a5e0f02f navidrome.toml
-"
diff --git a/testing/navidrome/navidrome.confd b/testing/navidrome/navidrome.confd
deleted file mode 100644
index 05cab79aa6a..00000000000
--- a/testing/navidrome/navidrome.confd
+++ /dev/null
@@ -1,3 +0,0 @@
-navidrome_configfile=/etc/navidrome/navidrome.toml
-
-error_log=/var/log/navidrome.log
diff --git a/testing/navidrome/navidrome.initd b/testing/navidrome/navidrome.initd
deleted file mode 100644
index f87b62c1546..00000000000
--- a/testing/navidrome/navidrome.initd
+++ /dev/null
@@ -1,26 +0,0 @@
-#!/sbin/openrc-run
-supervisor=supervise-daemon
-
-name=navidrome
-description="Modern Music Server and Streamer compatible with Subsonic/Airsonic"
-
-command=/usr/bin/navidrome
-command_args="--nobanner --configfile $navidrome_configfile"
-command_user="navidrome:navidrome"
-directory="/var/lib/$RC_SVCNAME"
-
-extra_started_commands="scan"
-
-start_pre() {
- [ -n "$error_log" ] && checkpath -f "$error_log" \
- -m 644 -o navidrome:navidrome
-}
-
-scan() {
- ${supervisor} "${SVCNAME}" --signal USR1
-}
-
-depend() {
- need net localmount
- after firewall
-}
diff --git a/testing/navidrome/navidrome.pre-install b/testing/navidrome/navidrome.pre-install
deleted file mode 100644
index 3ad5705cc33..00000000000
--- a/testing/navidrome/navidrome.pre-install
+++ /dev/null
@@ -1,6 +0,0 @@
-#!/bin/sh
-
-addgroup -S navidrome 2>/dev/null
-adduser -S -D -h /var/lib/navidrome -s /sbin/nologin -G navidrome -g navidrome navidrome 2>/dev/null
-
-exit 0
diff --git a/testing/navidrome/navidrome.toml b/testing/navidrome/navidrome.toml
deleted file mode 100644
index 7de56c9eb76..00000000000
--- a/testing/navidrome/navidrome.toml
+++ /dev/null
@@ -1,154 +0,0 @@
-# Folder where your music library is stored. Can be read-only.
-#MusicFolder = "music"
-
-# Folder to store application data (DB, cache…)
-#DataFolder = "."
-
-# Configure periodic scans using “cron†syntax. To disable it altogether, set
-# it to "" (empty string)
-#ScanSchedule = "@every 1m"
-
-# Log level. Useful for troubleshooting. Possible values: error, info, debug,
-# trace.
-#LogLevel = "info"
-
-# Whether or not sensitive information (like tokens and passwords) should be
-# redacted (hidden) in the logs
-#EnableLogRedacting = true
-
-# HTTP port Navidrome will use.
-#Port = 4533
-
-# IP address the server will bind to.
-#Address = "0.0.0.0"
-
-# Enables transcoding configuration in the UI.
-#EnableTranscodingConfig = false
-
-# Size of transcoding cache. Set to 0 to disable cache.
-#TranscodingCacheSize = "100MB"
-
-# Size of image (art work) cache. Set to 0 to disable cache.
-#ImageCacheSize = "100MB"
-
-# Enable/disable .m3u playlist auto-import.
-#AutoImportPlaylists = true
-
-# Where to search for and import playlists from. Can be a list of folders/globs
-# (separated by : (or ; on Windows). Paths are relative to MusicFolder.
-#PlaylistsPath = ".:**/**"
-
-# Base URL (only the path part) to configure Navidrome behind a proxy
-# (ex: /music)
-#BaseUrl = ""
-
-# Change background image used in the Login page.
-#UILoginBackgroundUrl = "https://source.unsplash.com/random/1600x900?music"
-
-# Add a welcome message to the login screen.
-#UIWelcomeMessage = ""
-
-# Send basic info to your own Google Analytics account. Must be in the format
-# UA-XXXXXXXX. Empty means disabled.
-#GATrackingID = ""
-
-# Controls whether the player in the UI will animate the album cover (rotation)
-#EnableCoverAnimation = true
-
-# List of ignored articles when sorting/indexing artists.
-#IgnoredArticles = "The El La Los Las Le Les Os As O A"
-
-# Match query strings anywhere in searchable fields, not only in word
-# boundaries. Useful for languages where words are not space separated.
-#SearchFullString = false
-
-# Uses music files’ modification time when sorting by “Recently Addedâ€.
-# Otherwise use import time.
-#RecentlyAddedByModTime = false
-
-# Configure the order to look for cover art images. Use special embedded value
-# to get embedded images from the audio files.
-#CoverArtPriority = "embedded, cover.*, folder.*, front.*"
-
-# Set JPEG quality percentage for resized cover art images.
-#CoverJpegQuality = 75
-
-# Enable the option in the UI to download music/albums/artists/playlists from
-# the server.
-#EnableDownloads = true
-
-# How long Navidrome will wait before closing web ui idle sessions.
-#SessionTimeout = "24h"
-
-# How many login requests can be processed from a single IP during the
-# AuthWindowLength. Set to 0 to disable the limit rater.
-#AuthRequestLimit = 5
-
-# Window Length for the authentication rate limit.
-#AuthWindowLength = "20s"
-
-# Use Gravatar images as the user profile image. Needs the user’s email to be
-# filled.
-#EnableGravatar = false
-
-# Set this to false to completely disable ALL external integrations
-#EnableExternalServices = true
-
-# Enable toggling "Heart"/"Loved" for songs/albums/artists in the UI (maps to
-# "Star"/"Starred" in Subsonic Clients).
-#EnableFavourites = true
-
-# Enable 5-star ratings in the UI.
-#EnableStarRating = true
-
-# Enable regular users to edit their details and change their password.
-#EnableUserEditing = true
-
-# Sets the default theme used byt the UI when logging in from a new browser.
-# This value must match one of the options in the UI.
-#DefaultTheme = "Dark"
-
-# Passphrase used to encrypt passwords in the DB. This is a one-time only
-# configuration, and after this point the config option cannot be changed
-# anymore or users won’t be able to authenticate.
-#PasswordEncryptionKey = ""
-
-# HTTP header containing user name from authenticated proxy
-#ReverseProxyUserHeader = "Remote-User"
-
-# Comma separated list of IP CIDRs which are allowed to use reverse proxy
-# authentication, empty means “deny allâ€
-#ReverseProxyWhitelist = ""
-
-# [Scanner]
-# Select metadata extractor implementation. Options: taglib or ffmpeg.
-#Extractor = "taglib"
-
-# List of separators to split genre tags
-#GenreSeparator = ";/,"
-
-
-# [LastFM]
-# Set this to false to completely disable Last.FM integration
-#Enabled = true
-
-# Last.FM ApiKey
-#ApiKey = ""
-
-# Last.FM Shared Secret
-#Secret = ""
-
-# Two letter-code for language to be used to retrieve biographies from Last.FM
-#Language = "en"
-
-
-# [Spotify]
-# Spotify Client ID
-#ID = ""
-
-# Spotify Client Secret
-#Secret = ""
-
-# [ListenBrainz]
-# Set this to false to completely disable ListenBrainz integration
-#Enabled = true
diff --git a/testing/nawk/APKBUILD b/testing/nawk/APKBUILD
deleted file mode 100644
index e6f5beeb1a7..00000000000
--- a/testing/nawk/APKBUILD
+++ /dev/null
@@ -1,30 +0,0 @@
-# Maintainer: psykose <alice@ayaya.dev>
-pkgname=nawk
-pkgver=20220122
-pkgrel=0
-pkgdesc="The one, true implementation of AWK"
-url="https://www.cs.princeton.edu/~bwk/btl.mirror/"
-arch="x86_64"
-license=MIT
-makedepends="bison"
-checkdepends="bash"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/onetrueawk/awk/archive/refs/tags/$pkgver.tar.gz"
-builddir="$srcdir/awk-$pkgver"
-
-build() {
- make
-}
-
-check() {
- make check
-}
-
-package() {
- install -Dm755 a.out "$pkgdir"/usr/bin/$pkgname
- install -Dm644 awk.1 "$pkgdir"/usr/share/man/man1/$pkgname.1
-}
-
-sha512sums="
-46ab7936705288c9cd22867ad9f5b080ade67c4b05d674304e0e5cae8ea329420a9a46e3578bf3a014b7066a1185b7506b0f74445bb52aafb1090e7a82a5bf28 nawk-20220122.tar.gz
-"
diff --git a/testing/nb/APKBUILD b/testing/nb/APKBUILD
new file mode 100644
index 00000000000..d8b8b08ab15
--- /dev/null
+++ b/testing/nb/APKBUILD
@@ -0,0 +1,45 @@
+# Contributor: Quillith <tag.quill@protonmail.com>
+# Maintainer: Quillith <tag.quill@protonmail.com>
+pkgname=nb
+pkgver=7.12.1
+pkgrel=0
+pkgdesc="Command line note-taking, bookmarking, archiving, and knowledge base application"
+url="https://github.com/xwmx/nb"
+arch="noarch"
+license="AGPL-3.0-or-later"
+depends="bash git"
+subpackages="
+ $pkgname-doc
+ $pkgname-full
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/xwmx/nb/archive/$pkgver.tar.gz"
+options="!check" # no tests
+
+package() {
+ install -Dm755 nb "$pkgdir/usr/bin/nb"
+ install -Dm644 LICENSE "$pkgdir/usr/share/licenses/nb/LICENSE"
+ install -Dm644 README.md "$pkgdir/usr/share/doc/nb/README.md"
+ # Completions
+ install -Dm644 etc/nb-completion.bash "$pkgdir/usr/share/bash-completion/completions/nb"
+ install -Dm644 etc/nb-completion.fish "$pkgdir/usr/share/fish/vendor_completions.d/nb.fish"
+ install -Dm644 etc/nb-completion.zsh "$pkgdir/usr/share/zsh/site-functions/_nb"
+ # Plugins
+ install -Dm644 -t "$pkgdir/usr/share/nb/plugins/" plugins/*
+ # Extras (prefixed with "nb-")
+ for extra in bookmark notes; do
+ install -Dm0755 "bin/$extra" "$pkgdir/usr/bin/nb-$extra"
+ done
+}
+
+full() {
+ pkgdesc="More utilities that integrate with nb"
+ depends="$pkgname=$pkgver-r$pkgrel bat nmap-ncat pandoc ripgrep tig w3m"
+ mkdir -p "$subpkgdir"
+}
+
+sha512sums="
+ed3d41a809e39a19711c6c97c38216f17f144b8b474eb94aec4134f9756da03440073f3f6557acf8f7959d3d9fba6392d1d5f59e8b94d5269b7336b11353457e nb-7.12.1.tar.gz
+"
diff --git a/testing/nbtscan/APKBUILD b/testing/nbtscan/APKBUILD
deleted file mode 100644
index b1c1300d742..00000000000
--- a/testing/nbtscan/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Maintainer: François Chavant <alpine@mail.chavant.info>
-pkgname=nbtscan
-pkgver=1.7.2
-pkgrel=0
-pkgdesc="NETBIOS nameserver scanner"
-url="http://www.unixwiz.net/tools/nbtscan.html"
-arch="all"
-license="GPL-2.0-or-later"
-makedepends="autoconf automake"
-source="nbtscan-$pkgver.tar.gz::https://github.com/resurrecting-open-source-projects/nbtscan/archive/$pkgver.tar.gz"
-subpackages="$pkgname-doc $pkgname-dbg"
-options="!check"
-
-prepare() {
- default_prepare
- ./autogen.sh
-}
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-b20eafe6737aa378e230dd2842e045bf2a48497e21b87ce6c534366cbb162862168a5c8143c0a69d495525caca75e91e437b87d9778e4cfe573b20461e2ccbbf nbtscan-1.7.2.tar.gz
-"
diff --git a/testing/ncdu2/APKBUILD b/testing/ncdu2/APKBUILD
index 119ecfc6360..d7030241bd2 100644
--- a/testing/ncdu2/APKBUILD
+++ b/testing/ncdu2/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Michał Polański <michal@polanski.me>
# Maintainer: Michał Polański <michal@polanski.me>
pkgname=ncdu2
-pkgver=2.1.2
+pkgver=2.3
pkgrel=0
pkgdesc="Disk usage analyzer with an ncurses interface"
url="https://dev.yorhel.nl/ncdu"
@@ -9,9 +9,7 @@ license="MIT"
arch="x86_64 aarch64" # Limited by zig aport
makedepends="chrpath zig ncurses-dev"
subpackages="$pkgname-doc"
-source="https://dev.yorhel.nl/download/ncdu-$pkgver.tar.gz
- pie-build.patch
- "
+source="https://dev.yorhel.nl/download/ncdu-$pkgver.tar.gz"
builddir="$srcdir/ncdu-$pkgver"
replaces=ncdu
@@ -21,7 +19,7 @@ case "$CARCH" in
esac
build() {
- zig build -Drelease-safe ${cputarget:+-Dcpu="$cputarget"}
+ zig build -Doptimize=ReleaseSafe -Dpie=true ${cputarget:+-Dcpu="$cputarget"}
}
check() {
@@ -38,6 +36,5 @@ package() {
}
sha512sums="
-ff48f2b9625e1aba29e5598051d16c4b5dc1a634fab897709226dd69d3b48031e6e62527c8514ec4753874d2d96800e538d6ad90b4a5f9851410d10579ccc67c ncdu-2.1.2.tar.gz
-25bc148b8bf9b33abab17ece35ea4f9fb657078438154b57f6c53d41e6e28487dce9e14bcc124cd77a9235ec3767bf31df2482ccde11b1d5d1ec35fd8a464e32 pie-build.patch
+283f78761b225883e090c4d0d1325bffc70049477087df3e8d1afcebc3136930c2636b2bba4aa6e43d53626668519c26a1528ba5c75489d3b5924e8974184e47 ncdu-2.3.tar.gz
"
diff --git a/testing/ncdu2/pie-build.patch b/testing/ncdu2/pie-build.patch
deleted file mode 100644
index 94215dd2bf1..00000000000
--- a/testing/ncdu2/pie-build.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/build.zig
-+++ b/build.zig
-@@ -10,6 +10,7 @@ pub fn build(b: *std.build.Builder) void {
- const exe = b.addExecutable("ncdu", "src/main.zig");
- exe.setTarget(target);
- exe.setBuildMode(mode);
-+ exe.pie = true;
- exe.addCSourceFile("src/ncurses_refs.c", &[_][]const u8{});
- exe.linkLibC();
- exe.linkSystemLibrary("ncursesw");
diff --git a/testing/ndpi/APKBUILD b/testing/ndpi/APKBUILD
index de1ba4d219f..82d60f82061 100644
--- a/testing/ndpi/APKBUILD
+++ b/testing/ndpi/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Leonardo Arena <rnalrd@alpinelinux.org>
pkgname=ndpi
_pkgreal=nDPI
-pkgver=4.2
+pkgver=4.8
pkgrel=0
pkgdesc="Open Source Deep Packet Inspection Software Toolkit"
url="https://github.com/ntop/nDPI"
@@ -40,5 +40,5 @@ check() {
}
sha512sums="
-c58b228b7de2b5fa111234bb065f9be259cd0282d0058f5985180aab6567c9a18e3453ce9062bd3c057a096ec3dfdc21b7c9680e0148e34af10f707530d853b8 ndpi-4.2.tar.gz
+f76eb99a83262a6d148509c7ce457b9af35dce3657c8191405ba15999b25c323ee0bee2907b0a7e6ba6f12a63182fde839e0098a4e8e0f63999e600526f3036b ndpi-4.8.tar.gz
"
diff --git a/testing/neard/APKBUILD b/testing/neard/APKBUILD
index 8d6a52c06bb..28843c45920 100644
--- a/testing/neard/APKBUILD
+++ b/testing/neard/APKBUILD
@@ -1,14 +1,14 @@
# Contributor: Minecrell <minecrell@minecrell.net>
# Maintainer: Minecrell <minecrell@minecrell.net>
pkgname=neard
-pkgver=0.18
-pkgrel=1
+pkgver=0.19
+pkgrel=0
pkgdesc="Near Field Communication manager"
url="https://01.org/linux-nfc/"
arch="all"
license="GPL-2.0-only"
depends="dbus"
-makedepends="glib-dev dbus-dev libnl-dev autoconf autoconf-archive automake libtool"
+makedepends="glib-dev dbus-dev libnl3-dev autoconf autoconf-archive automake libtool"
subpackages="$pkgname-dev $pkgname-doc $pkgname-openrc"
source="
https://git.kernel.org/pub/scm/network/nfc/neard.git/snapshot/neard-$pkgver.tar.gz
@@ -50,6 +50,6 @@ package() {
}
sha512sums="
-2f1da13ade60a75b81e51a76be80a5f6681439c612ae33659eed2e495b1e390dcb1deb60945e14a4bec247b3a046b940146b78925f43be88f35880e4677c721b neard-0.18.tar.gz
+577061c214365853667033a2ae9f78a367adcbf07f2d7a70087c484ac31b410d34c003f396da622604f8844f30d44cba01f0d8a7cadebfd4c4c6457996541b48 neard-0.19.tar.gz
6e28ffa74687cc409856d8966d9e794e523254781133e61adb81007ed00b7f057122ca8dfa967684312a613e9a3898865844320e4302990046d871a0a9b66eb5 neard.initd
"
diff --git a/testing/neatvi/APKBUILD b/testing/neatvi/APKBUILD
deleted file mode 100644
index a806cc84fb8..00000000000
--- a/testing/neatvi/APKBUILD
+++ /dev/null
@@ -1,26 +0,0 @@
-# Maintainer:
-pkgname=neatvi
-pkgver=10
-pkgrel=0
-pkgdesc="vi/ex editor with support for bidirectional UTF-8 text, syntax highlight and infinite undo/redo"
-url="https://github.com/aligrudi/neatvi"
-arch="all"
-license="ISC" # vi.c
-subpackages="$pkgname-doc"
-options="!check" # no test suite
-source="$pkgname-$pkgver.tar.gz::https://github.com/aligrudi/neatvi/archive/$pkgver.tar.gz
- conf.patch"
-
-build() {
- make CFLAGS="$CFLAGS" LDFLAGS="$LDFLAGS"
-}
-
-package() {
- install -Dm755 "$builddir"/vi "$pkgdir"/usr/bin/neatvi
- install -Dm644 "$builddir"/README -t "$pkgdir"/usr/share/doc/neatvi
-}
-
-sha512sums="
-80282e1bbdc3b4aeb62faf9d094175ace8a909bb036d075ed821b018c950e653ef49ab98c0ace77f5e5f1f10fc9d32a42152279abf635f0e639a4695ee907d5e neatvi-10.tar.gz
-1c67a6fb1cae78525a00ab5e78a6dfbbad1d5f79cd8daa09edd6cbc9b6c6a52729c6775b30b96c78e28f71d5e70ac10ad08cc0b3d5db54db6dc250ce0daea868 conf.patch
-"
diff --git a/testing/neatvi/conf.patch b/testing/neatvi/conf.patch
deleted file mode 100644
index 66b8bbb76ca..00000000000
--- a/testing/neatvi/conf.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-diff --git a/conf.h b/conf.h
-index 4435a91..0e055cf 100644
---- a/conf.h
-+++ b/conf.h
-@@ -17,7 +17,8 @@ static struct filetype {
- {"py", "\\.py$"}, /* python */
- {"bib", "bib$"}, /* refer */
- {"nm", "\\.nm$"}, /* neatmail */
-- {"diff", "\\.(patch|diff)$"} /* diff */
-+ {"diff", "\\.(patch|diff)$"}, /* diff */
-+ {"sh", ".$"} /* everything else */
- };
-
- /* syntax highlighting patterns */
diff --git a/testing/neomutt/APKBUILD b/testing/neomutt/APKBUILD
deleted file mode 100644
index 50b9d35684f..00000000000
--- a/testing/neomutt/APKBUILD
+++ /dev/null
@@ -1,65 +0,0 @@
-# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
-# Maintainer: Alex Denes <caskd@redxen.eu>
-pkgname=neomutt
-pkgver=20220415
-pkgrel=0
-pkgdesc="Mutt with miscellaneous fixes and feature patches"
-url="https://neomutt.org/"
-arch="all !riscv64" # blocked by notmuch
-options="chmod-clean !check" # mutt_file_read_line hangs on ci, probably requires some device to be present (https://github.com/neomutt/neomutt/blob/bccb959d1c917259e170dd2e51909b27e81bd28f/test/file/mutt_file_read_line.c)
-license="GPL-2.0-or-later"
-# TODO: Replace gnupg with specific gnupg subpackages that neomutt really needs.
-depends="gnupg"
-makedepends="cyrus-sasl-dev gdbm-dev gettext-dev gpgme-dev libidn-dev
- ncurses-dev openssl-dev notmuch-dev bsd-compat-headers libxslt tcl
- docbook-xsl perl w3m"
-checkdepends="bash"
-subpackages="$pkgname-doc $pkgname-lang"
-_test_commit=8629adab700a75c54e8e28bf05ad092503a98f75
-source="neomutt-$pkgver.tar.gz::https://github.com/neomutt/neomutt/archive/$pkgver.tar.gz
- neomutt-test-files-$_test_commit.tar.gz::https://github.com/neomutt/neomutt-test-files/archive/$_test_commit.tar.gz
- "
-
-# secfixes:
-# 20211015-r0:
-# - CVE-2021-32055
-
-build() {
- ./configure \
- --notmuch \
- --gpgme \
- --gdbm \
- --ssl \
- --sasl \
- --testing
- make
-}
-
-check() {
- export NEOMUTT_TEST_DIR="$srcdir/neomutt-test-files-$_test_commit"
- (cd $NEOMUTT_TEST_DIR && ./setup.sh)
- make test
- (cd $NEOMUTT_TEST_DIR && ./restore.sh)
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- mkdir -p "$pkgdir"/usr/share/doc/"$pkgname"
- mv contrib/samples "$pkgdir"/usr/share/doc/$pkgname/examples
-}
-
-cleanup_srcdir() {
- if ! [ -d "$srcdir" ]; then
- return 0
- fi
-
- # maildir/damson has mode 0000, so fix that
- find "$srcdir" -type d -exec chmod 0755 {} \;
-
- default_cleanup_srcdir
-}
-
-sha512sums="
-8723416fe0ed325d8f0e49f6a77f2724e23e0e81c5786f15005cb05b47c0fc7f722f61a58fe0250dd5a2dac6f40b155b6bac202e6316662a1855265670affc92 neomutt-20220415.tar.gz
-3d4962210bc558234d818801dcaa7851a0aef011c96d91c054af535186ffda42059fc61fb148c48e1b076999fe3159b31589a69a29ed1897f8928f52fcc157d3 neomutt-test-files-8629adab700a75c54e8e28bf05ad092503a98f75.tar.gz
-"
diff --git a/testing/nerdctl/APKBUILD b/testing/nerdctl/APKBUILD
deleted file mode 100644
index d758163b2e1..00000000000
--- a/testing/nerdctl/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Contributor: psykose <alice@ayaya.dev>
-# Maintainer: psykose <alice@ayaya.dev>
-pkgname=nerdctl
-pkgver=0.20.0
-pkgrel=0
-pkgdesc="Docker-compatible CLI for containerd"
-url="https://github.com/containerd/nerdctl/"
-arch="all"
-license="Apache-2.0"
-depends="ca-certificates containerd cni-plugins iptables ip6tables"
-makedepends="go"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/containerd/nerdctl/archive/refs/tags/v$pkgver.tar.gz"
-options="!check" # a lot fail
-
-export GOFLAGS="$GOFLAGS -modcacherw -trimpath"
-export GOPATH="$srcdir"
-
-build() {
- go build -ldflags "-X github.com/containerd/nerdctl/pkg/version.Version=$pkgver" \
- -o nerdctl ./cmd/nerdctl
-}
-
-package() {
- install -Dm755 nerdctl -t "$pkgdir"/usr/bin
- install -Dm644 docs/*.md -t "$pkgdir"/usr/share/doc/$pkgname
-}
-
-sha512sums="
-573fa8c5c9a4582a3aa3101f7e095b8835ce6583072932ac04ccf274668fe67ceab45f4ffd3b3a798bb115cff4804a1d2237ee7b912fb5933077b265c6b712b2 nerdctl-0.20.0.tar.gz
-"
diff --git a/testing/netcdf-cxx4/APKBUILD b/testing/netcdf-cxx4/APKBUILD
deleted file mode 100644
index e7a83ae464a..00000000000
--- a/testing/netcdf-cxx4/APKBUILD
+++ /dev/null
@@ -1,38 +0,0 @@
-# Contributor: Holger Jaekel <holger.jaekel@gmx.de>
-# Maintainer: Holger Jaekel <holger.jaekel@gmx.de>
-pkgname=netcdf-cxx4
-pkgver=4.3.1
-pkgrel=0
-pkgdesc="NetCDF C++ bindings"
-url="https://www.unidata.ucar.edu/software/netcdf/"
-arch="all !s390x" # limited by netcdf
-license="Apache-2.0"
-makedepends="
- hdf5-dev
- netcdf-dev
- "
-depends_dev="
- netcdf-dev
- "
-subpackages="
- $pkgname-dev
- "
-source="$pkgname-$pkgver.tar.gz::https://github.com/Unidata/netcdf-cxx4/archive/v$pkgver.tar.gz"
-
-build() {
- ./configure \
- --prefix=/usr \
- --enable-shared \
- --enable-extra-tests \
- --enable-large-file-tests
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-check() {
- make -j1 check
-}
-sha512sums="404711eb80d5e78968c0f6cbdcb08855a2778d7fd94e7ee94bdc9d1cd72848ac3327613c6437a7634349f26bc463b950092a2999abb34ddab0a47ad185547d22 netcdf-cxx4-4.3.1.tar.gz"
diff --git a/testing/netcdf-fortran/APKBUILD b/testing/netcdf-fortran/APKBUILD
deleted file mode 100644
index 4ed6945a6da..00000000000
--- a/testing/netcdf-fortran/APKBUILD
+++ /dev/null
@@ -1,46 +0,0 @@
-# Contributor: Holger Jaekel <holger.jaekel@gmx.de>
-# Maintainer: Holger Jaekel <holger.jaekel@gmx.de>
-pkgname=netcdf-fortran
-pkgver=4.5.4
-pkgrel=0
-pkgdesc="NetCDF fortran bindings"
-url="https://www.unidata.ucar.edu/software/netcdf/"
-arch="all !s390x"
-license="Apache-2.0"
-makedepends="
- cmake
- doxygen
- gfortran
- graphviz
- m4
- netcdf-dev
- "
-depends_dev="
- netcdf-dev
- "
-subpackages="
- $pkgname-doc
- $pkgname-dev
- "
-source="$pkgname-$pkgver.tar.gz::https://github.com/Unidata/netcdf-fortran/archive/v$pkgver.tar.gz"
-
-build() {
- FCFLAGS="$FCFLAGS -fallow-argument-mismatch" \
- FFLAGS="$FFLAGS -fallow-argument-mismatch" \
- ./configure \
- --prefix=/usr \
- --disable-static
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- rm -rf $pkgdir/usr/include/CMakeFiles
-}
-
-check() {
- make check
-}
-sha512sums="
-a704f6483f2c8b8bf2353615a3e4b784294bd790588cfc13193c617e776e330edb17fa16da69e1a0b6c767308992321e01399ba2067c32f6ae6b3cb9ff72c3ee netcdf-fortran-4.5.4.tar.gz
-"
diff --git a/testing/netdata-go-plugins/APKBUILD b/testing/netdata-go-plugins/APKBUILD
deleted file mode 100644
index 92a48748d72..00000000000
--- a/testing/netdata-go-plugins/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Contributor: Henrik Riomar <henrik.riomar@gmail.com>
-# Maintainer: Henrik Riomar <henrik.riomar@gmail.com>
-pkgname=netdata-go-plugins
-pkgver=0.32.1
-pkgrel=2
-pkgdesc="netdata go.d.plugin"
-url="https://github.com/netdata/go.d.plugin"
-arch="all !x86 !armv7 !armhf" # checks fail
-license="GPL-3.0-only"
-depends="netdata"
-makedepends="go"
-source="$pkgname-$pkgver.tar.gz::https://codeload.github.com/netdata/go.d.plugin/tar.gz/refs/tags/v$pkgver"
-builddir="$srcdir/go.d.plugin-$pkgver"
-
-export GOMODCACHE="$srcdir/go"
-export GOFLAGS="$GOFLAGS -modcacherw"
-
-build() {
- go build -v -o go.d.plugin ./cmd/godplugin
-}
-
-check() {
- go test ./...
-}
-
-package() {
- mkdir -p "$pkgdir/usr/lib/netdata/conf.d"
- cp -r "$builddir/config/go.d.conf" "$builddir/config/go.d" "$pkgdir/usr/lib/netdata/conf.d/"
-
- mkdir -p "$pkgdir/usr/libexec/netdata/plugins.d/"
- install -D -m755 -t "$pkgdir/usr/libexec/netdata/plugins.d" "$builddir/go.d.plugin"
-}
-
-sha512sums="
-54cb164b9eb8c2446c5da673e11236c5615384d4a3d4b2df8195b6bbadb2e413bc5e0317b1809ad58ffd86d19800a252fad0c218e4d48a93cf6d5ed419c7bd72 netdata-go-plugins-0.32.1.tar.gz
-"
diff --git a/testing/netdiscover/APKBUILD b/testing/netdiscover/APKBUILD
new file mode 100644
index 00000000000..70ebee3d83a
--- /dev/null
+++ b/testing/netdiscover/APKBUILD
@@ -0,0 +1,43 @@
+# Contributor: Faustin Lammler <faustin@fala.red>
+# Maintainer: Faustin Lammler <faustin@fala.red>
+pkgname=netdiscover
+pkgver=0.10
+pkgrel=0
+pkgdesc="Active/passive ARP reconnaissance tool"
+url="https://github.com/netdiscover-scanner/netdiscover"
+arch="all"
+license="GPL-3.0-or-later"
+makedepends="
+ autoconf
+ automake
+ libpcap-dev
+ "
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/netdiscover-scanner/netdiscover/archive/$pkgver.tar.gz"
+options="!check" # no proper testsuite
+
+prepare() {
+ default_prepare
+ autoreconf -fi
+}
+
+build() {
+ # Running update-oui-database.sh would probably make the build irreproducible
+ # ./update-oui-database.sh
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var
+ make
+}
+
+package() {
+ make install DESTDIR="$pkgdir"
+}
+
+sha512sums="
+a04a3ecb9cb76f22edc761b1a661e6e0f5c620763ca5a059923ce2d080e0d15bc0e0861ae354efc28ba2cea09b642128d8ee022106402f82041180c22e8becc9 netdiscover-0.10.tar.gz
+"
diff --git a/testing/netifrc/APKBUILD b/testing/netifrc/APKBUILD
deleted file mode 100644
index cd7271ce60a..00000000000
--- a/testing/netifrc/APKBUILD
+++ /dev/null
@@ -1,27 +0,0 @@
-# Maintainer: Haelwenn (lanodan) Monnier <contact+alpine@hacktivis.me>
-pkgname=netifrc
-pkgver=0.7.3
-pkgrel=0
-pkgdesc="Gentoo Network Interface Management Scripts"
-url="https://gitweb.gentoo.org/proj/netifrc.git/"
-arch="all"
-license="BSD-2"
-depends=""
-makedepends=""
-install=""
-source="https://gitweb.gentoo.org/proj/netifrc.git/snapshot/netifrc-$pkgver.tar.gz"
-builddir="$srcdir/$pkgname-$pkgver"
-
-build() {
- make all
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-check() {
- make check
-}
-
-sha512sums="a82ac6835c15763becb5845a8c8d90dfd8d6c289ea5e00b0d7ae332d3e7ad6797f0fdcbf27bb9f44ff345c98884cdfa13210c76089585b8dd9970ded5f6236d8 netifrc-0.7.3.tar.gz"
diff --git a/testing/netpbm/01-makefile.patch b/testing/netpbm/01-makefile.patch
deleted file mode 100644
index 9658a5bd10a..00000000000
--- a/testing/netpbm/01-makefile.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/GNUmakefile.orig
-+++ b/GNUmakefile
-@@ -252,7 +252,7 @@
- echo " make package pkgdir=/tmp/newnetpbm "; \
- false; \
- fi
-- mkdir $(PKGDIR)
-+ mkdir -p $(PKGDIR)
- echo "Netpbm install package made by 'make package'" \
- >$(PKGDIR)/pkginfo
- date >>$(PKGDIR)/pkginfo
diff --git a/testing/netpbm/02-installnetpbm.patch b/testing/netpbm/02-installnetpbm.patch
deleted file mode 100644
index 23637eea5f7..00000000000
--- a/testing/netpbm/02-installnetpbm.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-Author: Tom Parker-Shemilt <palfrey@tevp.net>
-Summary: Enables non-interactive builds
-
-installnetpbm.pl defaults to wanting keyboard interactivity, which we don't want!
-----
---- a/buildtools/installnetpbm.pl.orig
-+++ b/buildtools/installnetpbm.pl
-@@ -186,2 +186,3 @@
- my $default = "$prefix/bin";
-+ return $default;
-
-@@ -244,2 +245,3 @@
- my $default = "$prefix/lib";
-+ return $default;
-
-@@ -508,2 +510,3 @@
-
-+ return;
- my $done;
-@@ -575,2 +578,3 @@
- my $default = "$prefix/lib";
-+ return $default;
-
-@@ -638,2 +642,3 @@
- my $default = "$prefix/lib";
-+ return $default;
-
-@@ -675,2 +680,3 @@
- my $default = "$prefix/include";
-+ return $default;
-
-@@ -769,2 +775,3 @@
- my $default = "$prefix/man";
-+ return "$prefix/share/man";
-
-@@ -810,2 +817,3 @@
- sub tryToCreateManwebConf($) {
-+ return;
-
-@@ -1103,2 +1111,3 @@
- my $default = "$prefix/lib/pkgconfig";
-+ return $default;
-
-@@ -1184,5 +1193,5 @@
-
--my $pkgdir = getPkgdir();
-+my $pkgdir = $ENV{'BUILDDIR'} . "/pkgdir";
-
--my $prefix = getPrefix();
-+my $prefix = $ENV{'PKGDIR'} . "/usr";
-
diff --git a/testing/netpbm/APKBUILD b/testing/netpbm/APKBUILD
deleted file mode 100644
index 416da915ae6..00000000000
--- a/testing/netpbm/APKBUILD
+++ /dev/null
@@ -1,43 +0,0 @@
-# Contributor: Tom Parker-Shemilt <palfrey@tevp.net>
-# Maintainer: Tom Parker-Shemilt <palfrey@tevp.net>
-pkgname=netpbm
-pkgver=10.73.39
-pkgrel=0
-pkgdesc="toolkit for manipulation of graphic images"
-url="http://netpbm.sourceforge.net/"
-arch="all"
-license="IJG AND BSD-3-Clause AND GPL-2.0-only"
-makedepends="perl libpng-dev libjpeg-turbo-dev tiff-dev zlib-dev libx11-dev
- sed flex"
-subpackages="$pkgname-static $pkgname-dev $pkgname-doc"
-source="https://downloads.sourceforge.net/netpbm/super_stable/netpbm-$pkgver.tgz
- config.mk
- 01-makefile.patch
- 02-installnetpbm.patch
- "
-
-build() {
- cat config.mk.in "$srcdir"/config.mk > config.mk
- make
- make package pkgdir="$PWD/pkgdir"
-}
-
-package() {
- mkdir -p $pkgdir/usr/bin/ \
- $pkgdir/usr/share/man/man1 \
- $pkgdir/usr/share/man/man3 \
- $pkgdir/usr/share/man/man5 \
- $pkgdir/usr/share/man/web \
- $pkgdir/usr/lib/pkgconfig
- BUILDDIR="$builddir" PKGDIR="$pkgdir" ./installnetpbm
- install -Dm644 $builddir/doc/copyright_summary "$pkgdir"/usr/share/licenses/$pkgname/COPYING
- sed -i "s,$pkgdir,,g" "$pkgdir/usr/lib/pkgconfig/netpbm.pc"
- sed -i "s/Version: Netpbm $pkgver/Version: $pkgver/" "$pkgdir/usr/lib/pkgconfig/netpbm.pc"
-}
-
-sha512sums="
-3b832fe81e025aa9883e135cbfe1a12c47af622957eef86c9c839cc8b29a1193412eaa97ee0cc8a275d179e44493117c7a02afe24c487f9618be4c35e69d0326 netpbm-10.73.39.tgz
-07e87947e71fe5831ffb7740df051b66eacef45892f6c28e337882a28b47b87ab15252cf2ae51c3208fb80523539ad7996136d09f436f32c2dc2bd4be24549d0 config.mk
-85d78938cf825fdca5c43a40ab25a147ae42e7b78f61ffb73082b64edb3a7127d2197971b9bdbf1011ef8ba20a55acce84b5dc8fba43b603f8faa33abeb761bb 01-makefile.patch
-e863fba8eec7551179eb96246abd9e3af1bfacf5dbb029a9a2c4d4af00bc6fc6d12e484d422f50d5890993c101b9f060b30c5ca753c4c7ae8577a219649b9dad 02-installnetpbm.patch
-"
diff --git a/testing/netpbm/config.mk b/testing/netpbm/config.mk
deleted file mode 100644
index 51ab18f7c8a..00000000000
--- a/testing/netpbm/config.mk
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFAULT_TARGET = nonmerge
-NETPBMLIBTYPE = unixshared
-NETPBMLIBSUFFIX = so
-STATICLIB_TOO = Y
-LDRELOC = ld --reloc
-LINKER_CAN_DO_EXPLICIT_LIBRARY = Y
-LINKERISCOMPILER = Y
-CFLAGS_SHLIB += -fPIC
-TIFFLIB = -ltiff
-JPEGLIB = -ljpeg
-PNGLIB = -lpng
-ZLIB = -lz
-X11LIB = -lX11
-NETPBM_DOCURL = http://netpbm.sourceforge.net/doc/ \ No newline at end of file
diff --git a/testing/netsed/APKBUILD b/testing/netsed/APKBUILD
index 7149bba7c77..23a27f2517e 100644
--- a/testing/netsed/APKBUILD
+++ b/testing/netsed/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=netsed
pkgver=1.3
-pkgrel=2
+pkgrel=3
pkgdesc="The network packet stream editor"
url="http://silicone.homelinux.org/projects/netsed/"
arch="all"
diff --git a/testing/netsurf/APKBUILD b/testing/netsurf/APKBUILD
index ba7929983fa..71d5046c7a9 100644
--- a/testing/netsurf/APKBUILD
+++ b/testing/netsurf/APKBUILD
@@ -3,17 +3,16 @@
# Contributor: Miles Alan <m@milesalan.com>
# Maintainer: ScrumpyJack <scrumpyjack@st.ilet.to>
pkgname=netsurf
-pkgver=3.10
-pkgrel=5
+pkgver=3.11
+pkgrel=0
pkgdesc="free, open source web browser"
url="http://www.netsurf-browser.org"
-arch="all !s390x !riscv64" # blocked by librsvg
-license="GPL-2.0"
-makedepends="curl-dev openssl1.1-compat-dev doxygen flex bison libwebp-dev lcms2-dev
+arch="all"
+license="GPL-2.0-or-later"
+makedepends="curl-dev openssl-dev doxygen flex bison libwebp-dev lcms2-dev
libmng-dev gperf gtk+3.0-dev libcurl libpng-dev libidn-dev
check-dev libharu-dev librsvg-dev libjpeg-turbo-dev vim
- perl perl-html-parser sdl-dev expat-dev
- " # Note not compatible with sdl12-compat, see: https://github.com/libsdl-org/sdl12-compat/issues/155
+ perl perl-html-parser sdl12-compat-dev expat-dev"
subpackages="
$pkgname-doc
$pkgname-framebuffer
@@ -90,7 +89,7 @@ framebuffer() {
}
sha512sums="
-fc4c300eef07c540a7e07f8034db25b7e5fb731b5956029af2220f8638802aa38c055ad54b5683c14501aef9c22fb781b96613c16ae9a6996c3833ceede6f9bf netsurf-all-3.10.tar.gz
+f931687e08976ca336762587cc1ac75e45518be62b19d1d31aac3063b92b9666f8a022ff3a183e80c89404ba8ff33458b26521130e96943043085a42291ee283 netsurf-all-3.11.tar.gz
4f6868f377abb1fbade92088bee9a319952c4cee82821ca5b3f892484e0d111f33045c8583f3d069e48af6f3f2fcad43c364daa0f5457b3b013542793ac10fcf netsurf
-fcdf69dac7d951448f44360105b56fdd3b097b38ffeaae4dd702c0ff4176044add4260688612e07d04bcf63aa43673234f484a2210a3cf4a9b71c80596ac5751 non-coreutils-install-compatibility.patch
+528a0d085afcf089789fc2e2aafa27e48c71f9eba1eeed65ba293ccb9c60187193d8e36337ff56b9de8221821d6cb2a4146e175edb383f7a6ef660771c8a1e28 non-coreutils-install-compatibility.patch
"
diff --git a/testing/netsurf/non-coreutils-install-compatibility.patch b/testing/netsurf/non-coreutils-install-compatibility.patch
index dd3efac7f5f..de5374db041 100644
--- a/testing/netsurf/non-coreutils-install-compatibility.patch
+++ b/testing/netsurf/non-coreutils-install-compatibility.patch
@@ -2,7 +2,7 @@ Alpine / busybox's install doesn't have coreutils' -T option.
--- a/netsurf/frontends/framebuffer/Makefile
+++ b/netsurf/frontends/framebuffer/Makefile
-@@ -222,7 +222,7 @@
+@@ -200,10 +200,10 @@ NETSURF_FRAMEBUFFER_RESOURCE_LIST := adblock.css credits.html \
install-framebuffer:
$(VQ)echo " INSTALL: $(DESTDIR)/$(PREFIX)"
$(Q)$(INSTALL) -d $(DESTDIR)/$(NETSURF_FRAMEBUFFER_BIN)
@@ -10,4 +10,18 @@ Alpine / busybox's install doesn't have coreutils' -T option.
+ $(Q)$(INSTALL) $(EXETARGET) $(DESTDIR)/$(NETSURF_FRAMEBUFFER_BIN)/netsurf-fb
$(Q)$(INSTALL) -d $(DESTDIR)/$(NETSURF_FRAMEBUFFER_RESOURCES)
$(Q)for F in $(NETSURF_FRAMEBUFFER_RESOURCE_LIST); do $(INSTALL) -m 644 $(FRONTEND_RESOURCES_DIR)/$$F $(DESTDIR)/$(NETSURF_FRAMEBUFFER_RESOURCES); done
- $(Q)$(RM) $(DESTDIR)/$(NETSURF_FRAMEBUFFER_RESOURCES)/Messages
+- $(Q)$(INSTALL) -m 644 -T $(MESSAGES_TARGET)/en/Messages $(DESTDIR)/$(NETSURF_FRAMEBUFFER_RESOURCES)/Messages
++ $(Q)$(INSTALL) -m 644 $(MESSAGES_TARGET)/en/Messages $(DESTDIR)/$(NETSURF_FRAMEBUFFER_RESOURCES)/Messages
+
+ # ----------------------------------------------------------------------------
+ # Package target
+--- a/buildsystem/makefiles/Makefile.tools
++++ b/buildsystem/makefiles/Makefile.tools
+@@ -285,7 +285,7 @@ GENHTML ?= genhtml
+
+ BUILD_CXX ?= c++
+
+-INSTALL ?= install -C
++INSTALL ?= install
+
+ LCOV ?= lcov
diff --git a/testing/newsyslog/10-compat.patch b/testing/newsyslog/10-compat.patch
new file mode 100644
index 00000000000..f954ffe2ce2
--- /dev/null
+++ b/testing/newsyslog/10-compat.patch
@@ -0,0 +1,80 @@
+Author: Vlad Glagolev <scm@vaygr.net>
+URL: based on https://bugs.gentoo.org/707452
+Summary: fixes build with recent compilers, modern sort(1), musl
+diff --git a/mksigname.sh b/mksigname.sh
+index 164f5b8..bdb918b 100644
+--- a/mksigname.sh
++++ b/mksigname.sh
+@@ -40,7 +40,7 @@ fi
+ trap 'rc=$?; rm -f $tmpin $tmpout; trap 0; exit $rc' $trapsigs
+
+ CC="${CC:-cc}"
+-CPP="${CPP:-${CC} -E -C}"
++CPP="${CPP:-${CC} -E -C -P}"
+
+ cat <<__EOF__
+ /*
+@@ -86,7 +86,7 @@ sed -n -e 's|"\(..\)", /|"\1", /|' \
+ -e 's|"\(..*\)", /|"\1", /|' \
+ -e 's|^[ ]*QwErTy \([0-9]\)[ ]|/* \1 */ |p' \
+ -e 's|^[ ]*QwErTy \([0-9][0-9]*\)[ ]|/* \1 */ |p' < $tmpout | \
+- sort -n +1 | \
++ sort -n -k2 | \
+ awk 'BEGIN {
+ last = 0;
+ nsigs = 0;
+diff --git a/newsyslog.c b/newsyslog.c
+index 6d814c9..f4b4c4f 100644
+--- a/newsyslog.c
++++ b/newsyslog.c
+@@ -423,12 +423,12 @@ do_entry(ent)
+
+ assert(domidnight == -1 || domidnight == 1 || domidnight == 0);
+ if (verbose) {
+- printf("## %s [%s(%lu):%s(%lu)] 0%03o <#%u,%s%s%s%s%s>: ",
++ printf("## %s [%s(%lu):%s(%lu)] 0%03o <#%u,%s%s%s%s%s%s>: ",
+ ent->log,
+ ent->user ? ent->user : "",
+- (unsigned long) (ent->uid == NO_ID) ? (write_metalog ? 0 : geteuid()) : ent->uid,
++ (unsigned long) ((ent->uid == NO_ID) ? (write_metalog ? 0 : geteuid()) : ent->uid),
+ ent->group ? ent->group : "",
+- (unsigned long) (ent->gid == NO_ID) ? (write_metalog ? 0 : getegid()) : ent->gid,
++ (unsigned long) ((ent->gid == NO_ID) ? (write_metalog ? 0 : getegid()) : ent->gid),
+ ent->permissions,
+ ent->numlogs,
+ (ent->flags & CE_SUBDIR) ? "subdir," : "",
+diff --git a/sig2str.c b/sig2str.c
+index c05da8a..43f1e2a 100644
+--- a/sig2str.c
++++ b/sig2str.c
+@@ -65,7 +65,7 @@ extern const unsigned int sys_nsigname; /* also from sys_signame.c */
+ #endif
+
+ #if !defined(SYS_SIGNAME_DECLARED)
+-const char *const sys_signame[]; /* defined in sys_signame.c */
++extern const char *const sys_signame[]; /* defined in sys_signame.c */
+ #endif
+
+ #if !defined(HAVE_DECL_SIG2STR)
+diff --git a/str2sig.c b/str2sig.c
+index 65e730d..d485e0f 100644
+--- a/str2sig.c
++++ b/str2sig.c
+@@ -31,7 +31,7 @@ static const char rcsid[] =
+ #include "newsyslog.h" /* generic portability definitions */
+
+ #if !defined(SYS_SIGNAME_DECLARED)
+-const char *const sys_signame[]; /* defined in signame.c */
++extern const char *const sys_signame[]; /* defined in signame.c */
+ #endif
+
+ /* NetBSD gained sys_nsig sometime just prior to 1.4 */
+@@ -67,7 +67,7 @@ extern const unsigned int sys_nsigname; /* also from sys_signame.c */
+ #endif
+
+ #if !defined(SYS_SIGNAME_DECLARED)
+-const char *const sys_signame[]; /* defined in sys_signame.c */
++extern const char *const sys_signame[]; /* defined in sys_signame.c */
+ #endif
+
+ #if !defined(HAVE_DECL_STR2SIG)
diff --git a/testing/newsyslog/20-html.patch b/testing/newsyslog/20-html.patch
new file mode 100644
index 00000000000..93c1921fc02
--- /dev/null
+++ b/testing/newsyslog/20-html.patch
@@ -0,0 +1,23 @@
+Author: Vlad Glagolev <scm@vaygr.net>
+URL: N/A
+Summary: fixes build with groff
+--- a/Makefile.am.orig
++++ b/Makefile.am
+@@ -118,7 +118,7 @@
+
+ .8.8.html:
+ @rm -f $@
+- ($(TBL) $< | $(NROFF) -mdoc2html > $@) || (rm -f $@; exit 1)
++ ($(TBL) $< | $(NROFF) -mhtml > $@) || (rm -f $@; exit 1)
+
+ .5.5.ps:
+ @rm -f $@
+@@ -126,7 +126,7 @@
+
+ .5.5.html:
+ @rm -f $@
+- ($(TBL) $< | $(NROFF) -mdoc2html > $@) || (rm -f $@; exit 1)
++ ($(TBL) $< | $(NROFF) -mhtml > $@) || (rm -f $@; exit 1)
+
+ .cat5.cat5-dist:
+ @rm -f $@
diff --git a/testing/newsyslog/APKBUILD b/testing/newsyslog/APKBUILD
new file mode 100644
index 00000000000..508ae689828
--- /dev/null
+++ b/testing/newsyslog/APKBUILD
@@ -0,0 +1,51 @@
+# Contributor: Vlad Glagolev <scm@vaygr.net>
+# Maintainer: Vlad Glagolev <scm@vaygr.net>
+pkgname=newsyslog
+pkgver=1.2.0.91
+pkgrel=1
+pkgdesc="utility that automates system log rotation and compression"
+url="https://github.com/robohack/newsyslog"
+arch="all"
+license="MIT"
+makedepends="automake autoconf groff"
+subpackages="$pkgname-doc"
+source="https://github.com/robohack/newsyslog/archive/refs/tags/v$pkgver/newsyslog-$pkgver.tar.gz
+ 10-compat.patch
+ 20-html.patch
+ "
+
+prepare() {
+ default_prepare
+ autoreconf -fisv
+}
+
+build() {
+ CFLAGS="$CFLAGS -D_GNU_SOURCE" \
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var \
+ --with-syslogd_pid=/run/syslogd.pid \
+ --with-gzip
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+ install -Dm644 newsyslog.conf "$pkgdir"/etc/newsyslog.conf
+
+ install -Dm644 COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING
+}
+
+sha512sums="
+7e3522b5fc8332f83c902b0c4f3e1539b2e25a9acea0d48540d2283f7675a324c2cdf008c9fa49b8091f17f7eff55017058aa81eaf263a75b94bf4eada70c5ec newsyslog-1.2.0.91.tar.gz
+bcb598cbe8e48fc81a8503ef3f07131d1c57a8e30b6cd45a0553beaa702e1f998eafcb02751b7f1b2c648b93278d7aecc10da46da4690405344ac882ec70befa 10-compat.patch
+4194b6334324e857d8d3d047111a266381af86649b21e5ff44b987a6ef9e39a4a8bcea8f8a1d989aceac84fd7ac88726bd1e22ce6f9e47c2a67958fc290cbafb 20-html.patch
+"
diff --git a/testing/nextpnr/APKBUILD b/testing/nextpnr/APKBUILD
new file mode 100644
index 00000000000..27c31b4dbc6
--- /dev/null
+++ b/testing/nextpnr/APKBUILD
@@ -0,0 +1,69 @@
+# Maintainer: Marian Buschsieweke <marian.buschsieweke@posteo.net>
+pkgname=nextpnr
+pkgver=0.6
+pkgrel=1
+pkgdesc="portable FPGA place and route tool"
+url="https://github.com/YosysHQ/nextpnr"
+arch="all"
+license="ISC"
+makedepends="
+ py3-apicula
+ boost-dev
+ cmake
+ eigen-dev
+ icestorm
+ ninja
+ prjtrellis
+ prjtrellis-db-ecp5
+ python3-dev
+ "
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/YosysHQ/nextpnr/archive/refs/tags/nextpnr-$pkgver.tar.gz
+ "
+builddir="$srcdir/nextpnr-nextpnr-$pkgver"
+
+_fpga_archs="generic ice40 ecp5 gowin"
+for _fpga_arch in $_fpga_archs; do
+ subpackages="$subpackages $pkgname-$_fpga_arch:_subpkg"
+done
+
+build() {
+ for _fpga_arch in $_fpga_archs; do
+ echo "--> building for $_fpga_arch"
+ # regarding -DUSE_IPO=off: see https://github.com/YosysHQ/nextpnr/issues/797
+ cmake -B "build-$_fpga_arch" -G Ninja \
+ -DBUILD_SHARED_LIBS=True \
+ -DCMAKE_BUILD_TYPE=MinSizeRel \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DUSE_IPO=off \
+ -DBUILD_TESTS=ON \
+ -DCURRENT_GIT_VERSION=$pkgver \
+ -DARCH="$_fpga_arch" \
+ #
+ cmake --build build-$_fpga_arch
+ done
+}
+
+check() {
+ for _fpga_arch in $_fpga_archs; do
+ cd "$builddir/build-$_fpga_arch"
+ CTEST_OUTPUT_ON_FAILURE=TRUE ctest -j1
+ done
+}
+
+package() {
+ for _fpga_arch in $_fpga_archs; do
+ depends="$depends $pkgname-$_fpga_arch"
+ done
+ mkdir -p "$pkgdir"
+}
+
+_subpkg() {
+ local _fpga_arch="${subpkgname#nextpnr-}"
+ pkgdesc="portable FPGA place and route tool for $_fpga_arch"
+ DESTDIR="$subpkgdir" cmake --install "$builddir/build-$_fpga_arch"
+}
+
+sha512sums="
+d943afa9bee2c786b0474936300c1a8f9971dc62f2348fb7b67ab3e1ab44d9dc7cfae62ccdd61838cdd80de2139ff6d1c5f22f45fa3932be095254f8b4214f84 nextpnr-0.6.tar.gz
+"
diff --git a/testing/nginx-naxsi/APKBUILD b/testing/nginx-naxsi/APKBUILD
deleted file mode 100644
index 3337d81ebf6..00000000000
--- a/testing/nginx-naxsi/APKBUILD
+++ /dev/null
@@ -1,193 +0,0 @@
-# Maintainer: Stuart Cardall <developer@it-offshore.co.uk>
-# Contributor: Cameron Banta <cbanta@gmail.com>
-# Contributor: Jeff Bilyk <jbilyk@gmail.com>
-# Contributor: Bartłomiej Piotrowski <nospam@bpiotrowski.pl>
-
-pkgname=nginx-naxsi
-_pkgname=nginx
-pkgver=1.16.1
-pkgrel=1
-pkgdesc="Lightweight HTTP and reverse proxy server with Naxsi WAF support, see also 'nxapi'"
-url="https://github.com/nbs-system/naxsi"
-arch="all"
-license="custom"
-
-# Modules
-_ngx_naxsi_name=naxsi
-_ngx_naxsi_ver=1.3
-_ngx_naxsi_dir="$srcdir/$_ngx_naxsi_name-$_ngx_naxsi_ver/naxsi_src"
-
-_ngx_cache_purge_name=ngx_cache_purge
-_ngx_cache_purge_ver=2.3.0.1
-_ngx_cache_purge_dir="$srcdir/$_ngx_cache_purge_name-$_ngx_cache_purge_ver"
-
-_ngx_upstream_fair_name=nginx-upstream-fair
-_ngx_upstream_fair_ver=0.1.3
-_ngx_upstream_fair_dir="$srcdir/$_ngx_upstream_fair_name-$_ngx_upstream_fair_ver"
-
-_ngx_http_sysguard_name=tengine-http-sysguard
-_ngx_http_sysguard_ver=2.2.0
-_ngx_http_sysguard_dir="$srcdir/$_ngx_http_sysguard_name-$_ngx_http_sysguard_ver"
-
-depends="!nginx"
-makedepends="linux-headers gd-dev geoip-dev libxml2-dev libxslt-dev openssl-dev
- pcre-dev perl-dev pkgconf zlib-dev"
-pkgusers="nginx"
-_grp_ngx="nginx"
-_grp_www="www-data"
-pkggroups="$_grp_ngx $_grp_www"
-install="$pkgname.pre-install $pkgname.pre-upgrade"
-options="!check"
-subpackages="$pkgname-doc"
-source="https://nginx.org/download/$_pkgname-$pkgver.tar.gz
- naxsi-$_ngx_naxsi_ver.tar.gz::https://github.com/nbs-system/$_ngx_naxsi_name/archive/$_ngx_naxsi_ver.tar.gz
- ngx_cache_purge-$_ngx_cache_purge_ver.tar.gz::https://github.com/itoffshore/$_ngx_cache_purge_name/archive/v$_ngx_cache_purge_ver.tar.gz
- upstream-fair-$_ngx_upstream_fair_ver.tar.gz::https://github.com/itoffshore/$_ngx_upstream_fair_name/archive/$_ngx_upstream_fair_ver.tar.gz
- sysguard-$_ngx_http_sysguard_ver.tar.gz::https://github.com/itoffshore/$_ngx_http_sysguard_name/archive/v$_ngx_http_sysguard_ver.tar.gz
-
- anonymise.patch
- sysguard.patch
-
- nginx.initd
- nginx.logrotate
- nginx.conf
- default.conf
- sysguard.conf
- "
-builddir="$srcdir"/$_pkgname-$pkgver
-
-_modules_dir="usr/lib/nginx/modules"
-_modules="
- http-geoip
- http-image-filter
- http-perl
- http-xslt-filter
- mail
- stream
- http-naxsi
- http-cache-purge
- http-upstream-fair
- http-sysguard
- "
-
-for _m in $_modules; do
- subpackages="$subpackages $pkgname-mod-$_m:_module"
-done
-
-
-build() {
- ./configure \
- --prefix=/var/lib/$_pkgname \
- --sbin-path=/usr/sbin/$_pkgname \
- --modules-path=/$_modules_dir \
- --conf-path=/etc/$_pkgname/$_pkgname.conf \
- --pid-path=/run/$_pkgname/$_pkgname.pid \
- --lock-path=/run/$_pkgname/$_pkgname.lock \
- --error-log-path=/var/log/$_pkgname/error.log \
- --http-log-path=/var/log/$_pkgname/access.log \
- --http-client-body-temp-path=/var/lib/$_pkgname/tmp/client_body \
- --http-proxy-temp-path=/var/lib/$_pkgname/tmp/proxy \
- --http-fastcgi-temp-path=/var/lib/$_pkgname/tmp/fastcgi \
- --with-perl_modules_path=/usr/lib/perl5/vendor_perl \
- \
- --user=$pkgusers \
- --group=$_grp_ngx \
- --with-threads \
- --with-file-aio \
- --without-http_uwsgi_module \
- --without-http_scgi_module \
- \
- --with-http_ssl_module \
- --with-http_v2_module \
- --with-http_realip_module \
- --with-http_addition_module \
- --with-http_sub_module \
- --with-http_dav_module \
- --with-http_flv_module \
- --with-http_mp4_module \
- --with-http_gunzip_module \
- --with-http_gzip_static_module \
- --with-http_auth_request_module \
- --with-http_random_index_module \
- --with-http_secure_link_module \
- --with-http_slice_module \
- --with-http_stub_status_module \
- --with-http_xslt_module=dynamic \
- --with-http_image_filter_module=dynamic \
- --with-http_geoip_module=dynamic \
- --with-http_perl_module=dynamic \
- --with-mail=dynamic \
- --with-mail_ssl_module \
- --with-stream=dynamic \
- --with-stream_ssl_module \
- \
- --add-dynamic-module="$_ngx_naxsi_dir" \
- --add-dynamic-module="$_ngx_cache_purge_dir" \
- --add-dynamic-module="$_ngx_upstream_fair_dir" \
- --add-dynamic-module="$_ngx_http_sysguard_dir"
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-
- install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
- install -Dm644 README "$pkgdir"/usr/share/doc/$pkgname/README
-
- cd "$pkgdir"
-
- install -Dm644 "$srcdir"/nginx.conf ./etc/$_pkgname/nginx.conf
- install -Dm644 "$srcdir"/default.conf ./etc/$_pkgname/conf.d/default.conf
- install -m755 -D "$srcdir"/$_pkgname.initd ./etc/init.d/$_pkgname
- install -m644 -D "$srcdir"/$_pkgname.logrotate ./etc/logrotate.d/$_pkgname
- install -m644 -D "$srcdir"/naxsi-$_ngx_naxsi_ver/naxsi_config/naxsi_core.rules ./etc/nginx/naxsi_core.rules
-
- install -dm755 ./etc/$_pkgname/modules
- install -dm750 -o $pkgusers -g $_grp_ngx ./var/lib/$_pkgname
- install -dm700 -o $pkgusers -g $_grp_ngx ./var/lib/$_pkgname/tmp
-
- ln -sf /$_modules_dir ./var/lib/$_pkgname/modules
- ln -sf /var/log/$_pkgname ./var/lib/$_pkgname/logs
- ln -sf /run/$_pkgname ./var/lib/$_pkgname/run
-
- rm -rf ./run ./etc/$_pkgname/*.default
- # scgi & uwsgi servers are disabled
- rm ./etc/$_pkgname/scgi_params ./etc/$_pkgname/uwsgi_params
-
- # add module configuration
- _mod_conf sysguard.conf nginx-naxsi-mod-http-sysguard
-}
-
-_module() {
- local name="${subpkgname#$pkgname-mod-}"
- name="${name//-/_}"
- soname="ngx_${name}_module.so"
-
- pkgdesc="$pkgdesc (module $name)"
- depends="!nginx-mod-$name"
- provides="$name"
-
- mkdir -p "$subpkgdir"/$_modules_dir
- cd "$subpkgdir"
-
- mv "$pkgdir"/$_modules_dir/$soname ./$_modules_dir/$soname
- mkdir -p "$subpkgdir"/etc/nginx/modules
- echo "load_module \"modules/$soname\";" > ./etc/nginx/modules/$name.conf
-}
-
-_mod_conf() {
- local conf=$1 module=$2
- install -Dm644 "$srcdir"/$conf ${pkgdir%/*}/$module/etc/nginx/conf.d/$conf
-}
-sha512sums="17e95b43fa47d4fef5e652dea587518e16ab5ec562c9c94355c356440166d4b6a6a41ee520d406e5a34791a327d2e3c46b3f9b105ac9ce07afdd495c49eca437 nginx-1.16.1.tar.gz
-d7aac69b5eceeb1b0db4741201159ade1e0e7f6f7c3e8c4afa2f8959c6c00c3b5285d5185747c2fb0b1400efda02e96799836315e7e492bb4a059b14acb2142d naxsi-1.3.tar.gz
-c49c81dbdb8bd507fccf31295e603cea8f0a964867c27eff0436dcea3b4a547c8ae2f11ecf49c4d82c693cf8138c17ebbed395738539d0d61254951e5f0db7e3 ngx_cache_purge-2.3.0.1.tar.gz
-8adb7453c27748f4e685e3352e9b318b408da818754dc5b6244e908423941a8ba337561104f6e481f2553cbc0e334dcea73b57f8e810a9d6e974bb69ff8859e5 upstream-fair-0.1.3.tar.gz
-2743d9aea60bd4984b650213e571cf27e6ff5b3db708242ccb53b8fc669d1cc82ee224ba79aee2f6969b6e13821cfdd3df7b412541e1fdbb867ecc95326e07e1 sysguard-2.2.0.tar.gz
-1117ca5887822e002d9995c041435fda53890614fd7309ea011a59bfb0df3261fc7ba8670e93aaee9116cda16b9806921a85f52c9959b093f2e5ac5df4d9b0fb anonymise.patch
-2dca2ac74fb92e330fde7b6b6120b2fd2565c377a629c9536cf77beebe41aa4b092d4229d5b487b0fb02be4f2cc5b897c429c87bbbbc7b0d31e1cbb94231ddce sysguard.patch
-72888c43cec3203cafe1c5e018be464129a220913c21e0abe5ca57ad0649b7120d419ede9b37181def3daad7f08b1c1afdacb33a20aa148ce1d1b9ce3b5b2a33 nginx.initd
-01b77cff16f6e8bfd7fa1d4d20f625bbcddd08f0509173452d060c342c93dc315a7b0560f4734323a5d29ea294de0491f2e3f32e5337574e1a28ebc005eceea8 nginx.logrotate
-a1a1d9dbd65955b458d17918138fc65bf8990c46909ef43940b1633458c8f119eb485939179b6a9a3dac0c3b58c1eb0c5aec44e7b25ea7a34969c4a0807d4788 nginx.conf
-ed1257ca2c0f687e24ebfd5446c472a592a9f7abea022bd04b3dd519631cc235f448027aabf699a89cb7aa4d5761031d44dffcd33d02fd17db0c93da0d5e8689 default.conf
-8067c78b00e9fd89141b7a70fdc39ab1095a89c97abc8c9a37df26bef40785715dabdae19bce596ec3c3baff00f9022e2f24c7f5d884590857773e87aae75734 sysguard.conf"
diff --git a/testing/nginx-naxsi/anonymise.patch b/testing/nginx-naxsi/anonymise.patch
deleted file mode 100644
index 8b6f9c2ba14..00000000000
--- a/testing/nginx-naxsi/anonymise.patch
+++ /dev/null
@@ -1,75 +0,0 @@
---- nginx-1.11.10/src/http/ngx_http_header_filter_module.c
-+++ nginx-1.11.10/src/http/ngx_http_header_filter_module.c.new
-@@ -46,9 +46,9 @@
- };
-
-
--static u_char ngx_http_server_string[] = "Server: nginx" CRLF;
--static u_char ngx_http_server_full_string[] = "Server: " NGINX_VER CRLF;
--static u_char ngx_http_server_build_string[] = "Server: " NGINX_VER_BUILD CRLF;
-+static u_char ngx_http_server_string[] = "";
-+static u_char ngx_http_server_full_string[] = "";
-+static u_char ngx_http_server_build_string[] = "";
-
-
- static ngx_str_t ngx_http_status_lines[] = {
-@@ -276,10 +276,10 @@
-
- if (r->headers_out.server == NULL) {
- if (clcf->server_tokens == NGX_HTTP_SERVER_TOKENS_ON) {
-- len += sizeof(ngx_http_server_full_string) - 1;
-+ len += sizeof(ngx_http_server_full_string) - 0;
-
- } else if (clcf->server_tokens == NGX_HTTP_SERVER_TOKENS_BUILD) {
-- len += sizeof(ngx_http_server_build_string) - 1;
-+ len += sizeof(ngx_http_server_build_string) - 0;
-
- } else {
- len += sizeof(ngx_http_server_string) - 1;
---- nginx-1.11.10/src/http/ngx_http_special_response.c
-+++ nginx-1.11.10/src/http/ngx_http_special_response.c.new
-@@ -19,21 +19,21 @@
-
-
- static u_char ngx_http_error_full_tail[] =
--"<hr><center>" NGINX_VER "</center>" CRLF
-+"<hr><center>127.0.0.1</center>" CRLF
- "</body>" CRLF
- "</html>" CRLF
- ;
-
-
- static u_char ngx_http_error_build_tail[] =
--"<hr><center>" NGINX_VER_BUILD "</center>" CRLF
-+"<hr><center>1.0.0</center>" CRLF
- "</body>" CRLF
- "</html>" CRLF
- ;
-
-
- static u_char ngx_http_error_tail[] =
--"<hr><center>nginx</center>" CRLF
-+"<hr><center>localhost</center>" CRLF
- "</body>" CRLF
- "</html>" CRLF
- ;
---- nginx-1.11.10/src/http/v2/ngx_http_v2_filter_module.c
-+++ nginx-1.11.10/src/http/v2/ngx_http_v2_filter_module.c.new
-@@ -236,16 +236,7 @@
- clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module);
-
- if (r->headers_out.server == NULL) {
--
-- if (clcf->server_tokens == NGX_HTTP_SERVER_TOKENS_ON) {
-- len += 1 + nginx_ver_len;
--
-- } else if (clcf->server_tokens == NGX_HTTP_SERVER_TOKENS_BUILD) {
-- len += 1 + nginx_ver_build_len;
--
-- } else {
-- len += 1 + sizeof(nginx);
-- }
-+ len += 1 + sizeof(nginx);
- }
-
- if (r->headers_out.date == NULL) {
diff --git a/testing/nginx-naxsi/default.conf b/testing/nginx-naxsi/default.conf
deleted file mode 100644
index 3225a5d067a..00000000000
--- a/testing/nginx-naxsi/default.conf
+++ /dev/null
@@ -1,20 +0,0 @@
-# This is a default site configuration which will simply return 404, preventing
-# chance access to any other virtualhost.
-
-server {
- listen 80 default_server;
- listen [::]:80 default_server;
-
- server_tokens off;
-
- # Everything is a 404
- location / {
- return 404;
- }
-
- # You may need this to prevent return 404 recursion.
- location = /404.html {
- internal;
- }
-}
-
diff --git a/testing/nginx-naxsi/nginx-naxsi.pre-install b/testing/nginx-naxsi/nginx-naxsi.pre-install
deleted file mode 100644
index 8512f43ddaa..00000000000
--- a/testing/nginx-naxsi/nginx-naxsi.pre-install
+++ /dev/null
@@ -1,9 +0,0 @@
-#!/bin/sh
-
-addgroup -S -g 82 www-data 2>/dev/null
-addgroup -S nginx 2>/dev/null
-adduser -S -D -H -h /var/www/localhost/htdocs -s /sbin/nologin -G nginx \
- -g nginx nginx 2>/dev/null
-addgroup nginx www-data 2>/dev/null
-
-exit 0
diff --git a/testing/nginx-naxsi/nginx-naxsi.pre-upgrade b/testing/nginx-naxsi/nginx-naxsi.pre-upgrade
deleted file mode 120000
index 364e0b943cd..00000000000
--- a/testing/nginx-naxsi/nginx-naxsi.pre-upgrade
+++ /dev/null
@@ -1 +0,0 @@
-nginx-naxsi.pre-install \ No newline at end of file
diff --git a/testing/nginx-naxsi/nginx.conf b/testing/nginx-naxsi/nginx.conf
deleted file mode 100644
index c637b92e32a..00000000000
--- a/testing/nginx-naxsi/nginx.conf
+++ /dev/null
@@ -1,92 +0,0 @@
-# /etc/nginx/nginx.conf
-
-user nginx;
-
-# Set number of worker processes automatically based on number of CPU cores.
-worker_processes auto;
-
-# Enables the use of JIT for regular expressions to speed-up their processing.
-pcre_jit on;
-
-# Configures default error logger.
-error_log /var/log/nginx/error.log warn;
-
-# Includes files with directives to load dynamic modules.
-include /etc/nginx/modules/*.conf;
-
-
-events {
- # The maximum number of simultaneous connections that can be opened by
- # a worker process.
- worker_connections 1024;
-}
-
-http {
- # Includes mapping of file name extensions to MIME types of responses
- # and defines the default type.
- include /etc/nginx/mime.types;
- default_type application/octet-stream;
-
- # Name servers used to resolve names of upstream servers into addresses.
- # It's also needed when using tcpsocket and udpsocket in Lua modules.
- #resolver 208.67.222.222 208.67.220.220;
-
- # Don't tell nginx version to clients.
- server_tokens off;
-
- # Specifies the maximum accepted body size of a client request, as
- # indicated by the request header Content-Length. If the stated content
- # length is greater than this size, then the client receives the HTTP
- # error code 413. Set to 0 to disable.
- client_max_body_size 1m;
-
- # Timeout for keep-alive connections. Server will close connections after
- # this time.
- keepalive_timeout 65;
-
- # Sendfile copies data between one FD and other from within the kernel,
- # which is more efficient than read() + write().
- sendfile on;
-
- # Don't buffer data-sends (disable Nagle algorithm).
- # Good for sending frequent small bursts of data in real time.
- tcp_nodelay on;
-
- # Causes nginx to attempt to send its HTTP response head in one packet,
- # instead of using partial frames.
- #tcp_nopush on;
-
-
- # Path of the file with Diffie-Hellman parameters for EDH ciphers.
- #ssl_dhparam /etc/ssl/nginx/dh2048.pem;
-
- # Specifies that our cipher suits should be preferred over client ciphers.
- ssl_prefer_server_ciphers on;
-
- # Enables a shared SSL cache with size that can hold around 8000 sessions.
- ssl_session_cache shared:SSL:2m;
-
-
- # Enable gzipping of responses.
- #gzip on;
-
- # Set the Vary HTTP header as defined in the RFC 2616.
- gzip_vary on;
-
- # Enable checking the existence of precompressed files.
- #gzip_static on;
-
-
- # Specifies the main log format.
- log_format main '$remote_addr - $remote_user [$time_local] "$request" '
- '$status $body_bytes_sent "$http_referer" '
- '"$http_user_agent" "$http_x_forwarded_for"';
-
- # Sets the path, format, and configuration for a buffered log write.
- access_log /var/log/nginx/access.log main;
-
-
- # Includes virtual hosts configs.
- include /etc/nginx/conf.d/*.conf;
-}
-
diff --git a/testing/nginx-naxsi/nginx.initd b/testing/nginx-naxsi/nginx.initd
deleted file mode 100644
index 7a58780f87c..00000000000
--- a/testing/nginx-naxsi/nginx.initd
+++ /dev/null
@@ -1,47 +0,0 @@
-#!/sbin/openrc-run
-supervisor=supervise-daemon
-
-description="Nginx http and reverse proxy server"
-extra_started_commands="reload reopen upgrade"
-
-cfgfile=${cfgfile:-/etc/nginx/nginx.conf}
-pidfile=/run/nginx/$RC_SVCNAME.sd.pid
-command=/usr/sbin/nginx
-command_args="-c $cfgfile"
-command_args_foreground='-g "daemon off;"'
-required_files="$cfgfile"
-
-depend() {
- need net
- use dns logger netmount
-}
-
-start_pre() {
- ebegin
- checkpath --directory --owner nginx:nginx ${pidfile%/*}
- $command $command_args -t -q
- eend $?
-}
-
-reload() {
- ebegin "Reloading ${RC_SVCNAME} configuration"
- start_pre && $command -s reload
- eend $?
-}
-
-reopen() {
- ebegin "Reopening ${RC_SVCNAME} log files"
- $command -s reopen
- eend $?
-}
-
-upgrade() {
- restart
-}
-
-restart() {
- stop
- # prevents bind() failed (98: Address in use) error msg
- sleep 0.05
- start
-}
diff --git a/testing/nginx-naxsi/nginx.logrotate b/testing/nginx-naxsi/nginx.logrotate
deleted file mode 100644
index 7778b1108b1..00000000000
--- a/testing/nginx-naxsi/nginx.logrotate
+++ /dev/null
@@ -1,12 +0,0 @@
-# Copyright 1999-2010 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/www-servers/nginx/files/nginx.logrotate,v 1.1 2010/01/03 20:29:40 djc Exp $
-
-/var/log/nginx/*.log {
- missingok
- sharedscripts
- postrotate
- kill -USR1 `cat /var/run/nginx.pid`
- endscript
-}
-
diff --git a/testing/nginx-naxsi/sysguard.conf b/testing/nginx-naxsi/sysguard.conf
deleted file mode 100644
index 25619d3d4e4..00000000000
--- a/testing/nginx-naxsi/sysguard.conf
+++ /dev/null
@@ -1,25 +0,0 @@
-# http://tengine.taobao.org/document/http_sysguard
-
-sysguard on;
-
-sysguard_load load=10.5 action=/loadlimit;
-sysguard_mem swapratio=20% action=/swaplimit;
-sysguard_mem free=20M action=/freelimit;
-sysguard_rt rt=2.5 period=5s action=/rtlimit;
-
-location /loadlimit {
- return 503;
-}
-
-location /swaplimit {
- return 503;
-}
-
-location /freelimit {
- return 503;
-}
-
-location /rtlimit {
- return 503;
-}
-
diff --git a/testing/nginx-naxsi/sysguard.patch b/testing/nginx-naxsi/sysguard.patch
deleted file mode 100644
index be8b0d2ee43..00000000000
--- a/testing/nginx-naxsi/sysguard.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/src/http/ngx_http_request.h
-+++ b/src/http/ngx_http_request.h
-@@ -498,6 +498,7 @@
- */
- unsigned limit_conn_set:1;
- unsigned limit_req_set:1;
-+ unsigned sysguard_set:1;
-
- #if 0
- unsigned cacheable:1;
diff --git a/testing/nginx-ultimate-bad-bot-blocker/APKBUILD b/testing/nginx-ultimate-bad-bot-blocker/APKBUILD
index fa8a0ebcf0d..f4e4b095f13 100644
--- a/testing/nginx-ultimate-bad-bot-blocker/APKBUILD
+++ b/testing/nginx-ultimate-bad-bot-blocker/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Stuart Cardall <developer@it-offshore.co.uk>
# Maintainer: Stuart Cardall <developer@it-offshore.co.uk>
pkgname=nginx-ultimate-bad-bot-blocker
-pkgver=4.2022.02.2926
+pkgver=4.2023.10.4046
pkgrel=0
pkgdesc="Nginx Bad Bot and User-Agent Blocker"
url="https://github.com/mitchellkrogza/nginx-ultimate-bad-bot-blocker"
@@ -36,5 +36,5 @@ package() {
}
sha512sums="
-0b58da157f55a8787bb566c426fd12574ec8cfe350b626178fd7e513a1b1a201a3f9d66b707c4865df9f4c3db33643a67e4ce30e2da1975b7eff86f913f7845c nginx-ubbb-4.2022.02.2926.tar.gz
+b51f8cad242aec6c4979f046918f6c8ffc6e7be374bb3357b18fc6eecfd45baaf5f03f825ba115907e55a9b6c8faa1a295d6f73d48c283ab1a97b9605ec55f2e nginx-ubbb-4.2023.10.4046.tar.gz
"
diff --git a/testing/ngs/APKBUILD b/testing/ngs/APKBUILD
index e7a1371fb8d..46905bf9870 100644
--- a/testing/ngs/APKBUILD
+++ b/testing/ngs/APKBUILD
@@ -1,30 +1,46 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=ngs
-pkgver=0.2.12
-pkgrel=1
+pkgver=0.2.14
+pkgrel=0
pkgdesc="Next Generation Shell"
url="https://ngs-lang.org"
-# tests fail on disabled arches
-arch="all !armhf !armv7 !s390x !x86"
+# armhf, armv7, x86: tests fail
+arch="all !armhf !armv7 !x86"
license="GPL-3.0"
-makedepends="bash cmake gc-dev json-c-dev libffi-dev pcre-dev peg"
-subpackages="$pkgname-aws::noarch $pkgname-vim::noarch"
+makedepends="
+ bash
+ cmake
+ gc-dev
+ json-c-dev
+ libffi-dev
+ pcre-dev
+ peg
+ samurai
+ "
+subpackages="
+ $pkgname-aws::noarch
+ $pkgname-vim::noarch
+ "
source="https://github.com/ngs-lang/ngs/archive/v$pkgver/ngs-$pkgver.tar.gz
cmakelists.patch
busybox-compat.patch
"
build() {
+ local crossopts=
if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ crossopts="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
fi
- cmake -B build \
+
+ # The test segfaults with the default stack size.
+ LDFLAGS="$LDFLAGS -Wl,-z,stack-size=2097152" \
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=MinSizeRel \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_BUILD_TYPE=None \
-DCMAKE_VERBOSE_MAKEFILE=ON \
- $CMAKE_CROSSOPTS .
- make -C build
+ $crossopts
+ cmake --build build
}
check() {
@@ -33,7 +49,7 @@ check() {
}
package() {
- make -C build install DESTDIR="$pkgdir"
+ DESTDIR="$pkgdir" cmake --install build
# stdlib.ngs is bundled into the ngs binary, so it's not used.
cd "$pkgdir"/usr/lib/ngs
@@ -57,7 +73,7 @@ vim() {
}
sha512sums="
-7946448787526f1981acea37810ca5eec8d57a0f44ae7a3219b525663cd628e2d41840fb0426333dde5b3750d6183d475809e0fa1de76e41d4fb6a8cba61b652 ngs-0.2.12.tar.gz
-e0f2c590ecb2d354671e0db7ddef725a2b7aa5201a93db6ae387f46bdcd956d71a66bb54309c6d9a1407b7cb500ccbbb2e0ade4e2a04a1ab721596791b051fb4 cmakelists.patch
+5b0f8fc94eb936133312d088cabd09f3097dfc0157fafaab7b25279b1ce85a1359de4df2b1499d287e64b2e98d6fc9dd02ef12bd5e7a672834b361f6d7f4bb8d ngs-0.2.14.tar.gz
+b53ff460f4e5ccf3db8819c897dbfce5b97cec8c6b2b8f917479c9aa3e8caea923a3d9b6cb73f8baa79926f8463c2eac23c89b72163220ee898ce055a132091b cmakelists.patch
a3c22590c2ba072eab773859d9fa50c55d88f8f7af5d70c0ddb4bd005d69a549f87625d5da47f515256ef004bdae2f2366e427c63b16a4f9471eca3effdec0cd busybox-compat.patch
"
diff --git a/testing/ngs/cmakelists.patch b/testing/ngs/cmakelists.patch
index cc25f414605..b32702fbf90 100644
--- a/testing/ngs/cmakelists.patch
+++ b/testing/ngs/cmakelists.patch
@@ -1,6 +1,6 @@
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
-@@ -91,19 +91,22 @@
+@@ -116,25 +116,28 @@
target_link_libraries(ngs m pthread gc ffi dl json-c pcre)
@@ -18,16 +18,22 @@
- PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_WRITE GROUP_EXECUTE WORLD_READ WORLD_WRITE WORLD_EXECUTE
-)
-install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/LICENSE DESTINATION doc/ngs)
--install(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/doc/ DESTINATION man/man1 FILES_MATCHING PATTERN "*.1")
+# XXX-Patched: these scripts are quite doubtful, looks like helper scripts for the project or experimental stuff
+#install(
+# DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/bin/
+# DESTINATION bin FILES_MATCHING PATTERN "*.ngs"
+# PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_WRITE GROUP_EXECUTE WORLD_READ WORLD_WRITE WORLD_EXECUTE
+#)
-+#install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/LICENSE DESTINATION share/licenses/ngs)
++#install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/LICENSE DESTINATION doc/ngs)
+
+ if(APPLE)
+ set(MAN_DIR share/man/man1)
+ else()
+ set(MAN_DIR man/man1)
+ endif()
+-install(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/doc/ DESTINATION ${MAN_DIR} FILES_MATCHING PATTERN "*.1")
+# XXX-Patched: pandoc is available for x86_64 only
-+#install(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/doc/ DESTINATION share/man/man1 FILES_MATCHING PATTERN "*.1")
++#install(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/doc/ DESTINATION ${MAN_DIR} FILES_MATCHING PATTERN "*.1")
enable_testing()
add_test(all bash -c "${CMAKE_CURRENT_BINARY_DIR}/ngs ${CMAKE_CURRENT_SOURCE_DIR}/test.ngs")
diff --git a/testing/ngspice/APKBUILD b/testing/ngspice/APKBUILD
deleted file mode 100644
index da80ede0304..00000000000
--- a/testing/ngspice/APKBUILD
+++ /dev/null
@@ -1,70 +0,0 @@
-# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
-pkgname=ngspice
-pkgver=36
-pkgrel=1
-pkgdesc="open source spice simulator for electric and electronic circuits"
-url="http://ngspice.sourceforge.net/"
-arch="all"
-license="BSD-3-Clause"
-makedepends="libxaw-dev libedit-dev readline-dev"
-depends="python3"
-subpackages="$pkgname-doc $pkgname-dev"
-source="
- https://downloads.sourceforge.net/project/ngspice/ng-spice-rework/$pkgver/ngspice-$pkgver.tar.gz
- $pkgname.pc
- "
-
-prepare() {
- default_prepare
- sed -e "s/@PKGVER@/$pkgver/" -i "$srcdir"/$pkgname.pc
-
- # a lot of tests fail because of unexpected "No compatibility mode selected!"
- # this replaces them with no-op makefiles
- echo -e "check: ;\nall: ;\ninstall: ;" > tests/regression/Makefile.in
- echo -e "check: ;\nall: ;\ninstall: ;" > tests/xspice/Makefile.in
-}
-
-build() {
- ./configure \
- --prefix=/usr \
- --mandir=/usr/share/man \
- --infodir=/usr/share/info \
- --with-readline=yes \
- --enable-xspice \
- --enable-cider \
- --enable-openmp \
- --with-ngshared
-
- make
-
- # build the binary ngspice, which is only build without --with-ngshared
-
- ./configure \
- --prefix=/usr \
- --mandir=/usr/share/man \
- --infodir=/usr/share/info \
- --with-readline=yes \
- --enable-xspice \
- --enable-cider \
- --enable-openmp
-
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- install -Dm755 src/.libs/libngspice.so.0.0.2 "$pkgdir/usr/lib/libngspice.so.0.0.2"
- install -Dm644 src/include/ngspice/sharedspice.h "$pkgdir/usr/include/ngspice/sharedspice.h"
- ln -s "libngspice.so.0.0.2" "$pkgdir/usr/lib/libngspice.so.0"
- ln -s "libngspice.so.0.0.2" "$pkgdir/usr/lib/libngspice.so"
- install -Dm644 "$srcdir"/$pkgname.pc "$pkgdir"/usr/lib/pkgconfig/$pkgname.pc
-}
-
-sha512sums="
-d862097f465e92986e8d6644374d43249eebee0fb6d79b1404dbb7c11d14a058dfedd4bdb61baf5aa1ffd1d2e71167440db73eb417d4b1249a0a7b83bd39efc3 ngspice-36.tar.gz
-211321d3c56f06a58ce500807284657294beef1e712c2ce3e9b2253e622c6882cf1f1233fa18427902cac5bd9d31f48c7be64a03bc6e2705d3f10f4752c41b7c ngspice.pc
-"
diff --git a/testing/ngspice/ngspice.pc b/testing/ngspice/ngspice.pc
deleted file mode 100644
index bd4989a5a33..00000000000
--- a/testing/ngspice/ngspice.pc
+++ /dev/null
@@ -1,12 +0,0 @@
-prefix=/usr
-exec_prefix=${prefix}
-libdir=${exec_prefix}/lib
-includedir=${prefix}/include/ngspice
-modules=1
-
-Name: ngspice
-Version: @PKGVER@
-Description: Open Source Spice Simulator for Electric and Electronic Circuits.
-Requires:
-Libs: -L${libdir} -lngspice
-Cflags: -I${includedir}
diff --git a/testing/nicotine-plus/APKBUILD b/testing/nicotine-plus/APKBUILD
index baa2987731f..340990fc2a3 100644
--- a/testing/nicotine-plus/APKBUILD
+++ b/testing/nicotine-plus/APKBUILD
@@ -1,21 +1,41 @@
# Contributor: dai9ah <dai9ah@protonmail.com>
# Maintainer: dai9ah <dai9ah@protonmail.com>
pkgname=nicotine-plus
-pkgver=3.2.2
-pkgrel=0
+pkgver=3.3.2
+pkgrel=1
pkgdesc="Graphical client for the SoulSeek peer-to-peer system"
url="https://nicotine-plus.github.io/nicotine-plus"
arch="noarch"
license="GPL-3.0-or-later"
-depends="gtk+3.0 py3-gobject3 python3"
-makedepends="py3-setuptools gettext"
-subpackages="$pkgname-doc $pkgname-lang"
+depends="gtk+3.0 py3-gobject3 python3 python3-gdbm"
+makedepends="py3-gpep517 py3-setuptools py3-wheel gettext"
+checkdepends="py3-pytest"
+subpackages="$pkgname-doc $pkgname-lang $pkgname-pyc"
source="nicotine-plus-$pkgver.tar.gz::https://github.com/Nicotine-Plus/nicotine-plus/archive/$pkgver.tar.gz"
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m pytest \
+ --deselect pynicotine/tests/integration/test_startup.py::StartupTest::test_gui_startup
+}
+
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+lang() {
+ pkgdesc="Languages for package $pkgname"
+ install_if="$pkgname=$pkgver-r$pkgrel lang"
+
+ amove usr/lib/python*/site-packages/pynicotine/locale
}
sha512sums="
-e8e28b7452a31b7221135e145eb7ee91e30a927a4dbf42bafa7d3380835f2cde4cbf28adc77041b80b6bc4d20d7a5e37043822933468e81dc9ca3458b152666d nicotine-plus-3.2.2.tar.gz
+590886c24104e47c1cd72fb0c03bc0a87f33f7ecdb6349b2fef354aa22a6417bcf002b2d1083b383bdc2ca4f35200f3997af7f8c552658ca9defec2958510cd8 nicotine-plus-3.3.2.tar.gz
"
diff --git a/testing/nil/APKBUILD b/testing/nil/APKBUILD
new file mode 100644
index 00000000000..14329d5e4d7
--- /dev/null
+++ b/testing/nil/APKBUILD
@@ -0,0 +1,46 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=nil
+pkgver=2023.08.09
+_pkgver=${pkgver//./-}
+pkgrel=0
+pkgdesc="An incremental analysis assistant for writing in Nix"
+url="https://github.com/oxalica/nil"
+arch="x86 x86_64 aarch64" # nix (aports)
+license="MIT OR Apache-2.0"
+makedepends="
+ cargo
+ cargo-auditable
+ nix
+"
+source="
+ $pkgname-$_pkgver.tar.gz::https://github.com/oxalica/nil/archive/refs/tags/$_pkgver.tar.gz
+"
+builddir="$srcdir/$pkgname-$_pkgver"
+options="net"
+
+prepare() {
+ default_prepare
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm 755 target/release/nil "$pkgdir"/usr/bin/nil
+
+ for l in APACHE MIT
+ do
+ install -Dm 644 LICENSE-"$l" "$pkgdir"/usr/share/licenses/"$pkgname"/LICENSE-"$l"
+ done
+}
+
+sha512sums="
+44e93b06ee90503e79e41d137d14d7c576fafd889a41436aca0ddaa58eecd0cff329bd8a884baca2984a750fbb984000ef79b56981209d6692d564e0a587406c nil-2023-08-09.tar.gz
+"
diff --git a/testing/nilfs-utils/APKBUILD b/testing/nilfs-utils/APKBUILD
deleted file mode 100644
index 2c19c86c5b3..00000000000
--- a/testing/nilfs-utils/APKBUILD
+++ /dev/null
@@ -1,49 +0,0 @@
-# Contributor: Natanael Copa <ncopa@alpinelinux.org>
-# Contributor: Sodface <sod@sodface.com>
-# Maintainer: Sodface <sod@sodface.com>
-pkgname=nilfs-utils
-pkgver=2.2.8
-pkgrel=0
-pkgdesc="Utilities for managing NILFS v2 filesystems"
-url="http://nilfs.sourceforge.net"
-arch="all"
-license="GPL-2.0-or-later"
-makedepends="autoconf automake libtool linux-headers util-linux-dev"
-options="!check" # no test suite
-subpackages="$pkgname-libs $pkgname-dev $pkgname-doc"
-source="http://nilfs.sourceforge.net/download/nilfs-utils-$pkgver.tar.bz2
- max-input.patch"
-
-prepare() {
- default_prepare
- autoreconf -fi
-}
-
-build() {
- LDCONFIG=/bin/true \
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --infodir=/usr/share/info \
- --localstatedir=/var \
- --disable-static \
- --without-selinux
-
- sed -i \
- -e 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' \
- -e 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' \
- libtool
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-3232390581f63de5ebe7b461b178a40dfbdaa4bc6aa96b218ea8182c5bf81b162a1e632a1c21d9f1e89fdba9393b4e268e001c335a99ce22f645a62ae3154783 nilfs-utils-2.2.8.tar.bz2
-9605c535bed809075df901f265d22b45b3b0c8915e69ea0dbb6ffef039f9e3a9c616f246fab927589a446035341eca2aadb807c0f74e0a9abd01977e09ebd39b max-input.patch
-"
diff --git a/testing/nilfs-utils/max-input.patch b/testing/nilfs-utils/max-input.patch
deleted file mode 100644
index 21a769e4805..00000000000
--- a/testing/nilfs-utils/max-input.patch
+++ /dev/null
@@ -1,12 +0,0 @@
---- ./bin/rmcp.c.orig
-+++ ./bin/rmcp.c
-@@ -56,6 +56,9 @@
- #include "nilfs.h"
- #include "parser.h"
-
-+#ifndef MAX_INPUT
-+#define MAX_INPUT _POSIX_MAX_INPUT
-+#endif
-
- #ifdef _GNU_SOURCE
- #include <getopt.h>
diff --git a/testing/nitro/APKBUILD b/testing/nitro/APKBUILD
index d87336ecb16..aa07ca1d165 100644
--- a/testing/nitro/APKBUILD
+++ b/testing/nitro/APKBUILD
@@ -1,42 +1,36 @@
# Contributor: Bradley J Chambers <brad.chambers@gmail.com>
# Maintainer: Bradley J Chambers <brad.chambers@gmail.com>
pkgname=nitro
-pkgver=2.7_beta2
+pkgver=2.7_beta8
_ver=${pkgver/_beta/dev-}
-pkgrel=1
-pkgdesc="The Nitro NITF project"
+pkgrel=2
+pkgdesc="Nitro NITF project"
url="https://github.com/hobu/nitro"
arch="all"
-license="GPL-3.0"
-depends=""
-makedepends="cmake linux-headers"
-install=""
+license="GPL-3.0-or-later"
+makedepends="cmake linux-headers samurai"
subpackages="$pkgname-dev"
source="$pkgname-$_ver.tar.gz::https://github.com/hobu/$pkgname/archive/$_ver.tar.gz
- fix-path-max.patch
gettid.patch
+ path-max.patch
"
builddir="$srcdir/$pkgname-$_ver"
options="!check"
build() {
- mkdir -p "$builddir"
- cd "$builddir"
-
- mkdir build && cd build
- cmake .. \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_BUILD_TYPE=None
- make
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DNITRO_PKG_SUBDIR=lib/pkgconfig
+ cmake --build build
}
package() {
- cd "$builddir"/build
- make DESTDIR="$pkgdir" install
+ DESTDIR="$pkgdir" cmake --install build
}
sha512sums="
-8414cfa4a3ca6bb1ad6536dc149c1d0d52479a9fda916db3c9c9c6fe39b01dba292f73a17b6ba47d757f5107997055e9b19f69ff08beca87dfb59383a4fb184a nitro-2.7dev-2.tar.gz
-4bf97526c39ae9a7c402d42451770b5b1383e44b426b49685a8d66ce5b0dd178f47e0865349b9c4b953af4b94616b2493d732c4562e6be10ba96b40bd1332052 fix-path-max.patch
+5aba97037bfcb3543a881b74a1adb0dfbff689b4ce39bd674274470c9f5712af7f93f2528a5035154c0c4e79993c23a18084af7ff385f4ad1a714a92a51151f6 nitro-2.7dev-8.tar.gz
d1866140e2fb76ba48c6f63f966ee1079248bdef64dd218fa44c73126649168076cc9e2a36aecd58d2b29a3c326a89e6aa0a8376de89ff94144e49606c9e3d32 gettid.patch
+58ad46ca4dde8511cda41af90d26c8898f84d509f6f9b31c2d17defc16a6d99aeba33d6c4c88d339ea39fe6598aa164c4ed46dfe009d06d46b3e11a5e13b78af path-max.patch
"
diff --git a/testing/nitro/fix-path-max.patch b/testing/nitro/fix-path-max.patch
deleted file mode 100644
index 4a3c575527f..00000000000
--- a/testing/nitro/fix-path-max.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- nitro-2.7dev-1/c++/sys/source/OSUnix.cpp.orig 2017-08-29 13:22:41.833028289 +0300
-+++ nitro-2.7dev-1/c++/sys/source/OSUnix.cpp 2017-08-29 13:22:59.726615275 +0300
-@@ -25,6 +25,7 @@
- #include <stdio.h>
- #include <stdlib.h>
- #include <unistd.h>
-+#include <limits.h>
-
- #include "sys/OSUnix.h"
- #include "sys/File.h"
diff --git a/testing/nitro/path-max.patch b/testing/nitro/path-max.patch
new file mode 100644
index 00000000000..13de4827487
--- /dev/null
+++ b/testing/nitro/path-max.patch
@@ -0,0 +1,12 @@
+diff --git a/c++/sys/source/OSUnix.cpp b/c++/sys/source/OSUnix.cpp
+index 0f03e6c..9b30c40 100644
+--- a/c++/sys/source/OSUnix.cpp
++++ b/c++/sys/source/OSUnix.cpp
+@@ -25,6 +25,7 @@
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <unistd.h>
++#include <limits.h>
+
+ #include "sys/OSUnix.h"
+ #include "sys/File.h"
diff --git a/testing/nitrocli/APKBUILD b/testing/nitrocli/APKBUILD
index ab073d16fe9..4f162b0c755 100644
--- a/testing/nitrocli/APKBUILD
+++ b/testing/nitrocli/APKBUILD
@@ -2,22 +2,23 @@
# Maintainer:
pkgname=nitrocli
pkgver=0.4.1
-pkgrel=1
+pkgrel=3
pkgdesc="A command line tool for interacting with Nitrokey devices"
url="https://github.com/d-e-s-o/nitrocli"
arch="x86_64 x86 armhf armv7 aarch64 ppc64le" # limited by rust/cargo
license="GPL-3.0-or-later"
depends="gnupg"
checkdepends="python3" # used by the extension tests
-makedepends="cargo hidapi-dev libnitrokey-dev"
+makedepends="cargo hidapi-dev libnitrokey-dev cargo-auditable"
subpackages="$pkgname-doc $pkgname-bash-completion"
source="https://github.com/d-e-s-o/nitrocli/archive/v$pkgver/nitrocli-$pkgver.tar.gz
src-tests-run.rs-use-python3.patch
"
+
build() {
export USE_SYSTEM_LIBNITROKEY=1
- cargo build --release --locked
+ cargo auditable build --release --locked
cargo run --bin=shell-complete bash > nitrocli
}
@@ -26,7 +27,7 @@ check() {
}
package() {
- cargo install --locked --path . --root="$pkgdir/usr"
+ cargo auditable install --locked --path . --root="$pkgdir/usr"
rm "$pkgdir"/usr/bin/shell-complete
rm "$pkgdir"/usr/.crates*
diff --git a/testing/nix/APKBUILD b/testing/nix/APKBUILD
deleted file mode 100644
index 8caae8795af..00000000000
--- a/testing/nix/APKBUILD
+++ /dev/null
@@ -1,99 +0,0 @@
-# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
-pkgname=nix
-pkgver=2.3.11
-pkgrel=2
-pkgdesc="The purely functional package manager"
-url="https://nixos.org/nix/"
-arch="x86 x86_64 aarch64" # supported platforms
-license="LGPL-2.1-or-later"
-depends="ca-certificates"
-depends_dev="boost-dev"
-makedepends="
- $depends_dev
- bash
- brotli-dev
- bzip2-dev
- curl-dev
- gc-dev
- openssl-dev
- libseccomp-dev
- libsodium-dev
- sqlite-dev
- xz
- xz-dev
- editline-dev
- "
-pkggroups="nix nixbld"
-install="$pkgname.pre-install"
-subpackages="$pkgname-dev $pkgname-openrc $pkgname-doc"
-source="https://nixos.org/releases/nix/nix-$pkgver/nix-$pkgver.tar.xz
- nix-daemon.initd
- nix-profile.sh
- "
-
-build() {
- # NOTE: /nix/var is recommended by upstream and we need /nix anyway.
- bash ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/nix/var \
- --enable-gc
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-
- cd "$pkgdir"
-
- # Remove trash.
- rm -R etc/init
- rm -R usr/lib/systemd
- rm etc/profile.d/*
-
- mkdir -p usr/sbin
- rm -f usr/bin/nix-daemon
- ln -s ../bin/nix usr/sbin/nix-daemon
-
- install -m 755 -D "$srcdir"/nix-profile.sh etc/profile.d/nix.sh
- install -m 755 -D "$srcdir"/nix-daemon.initd etc/init.d/nix-daemon
-
- # Setup build users.
- # Note: max-jobs should equal number of created nixbld<n> users.
- install -d -m 0555 etc/nix
- cat > etc/nix/nix.conf <<-EOF
- build-users-group = nixbld
- max-jobs = 4
- EOF
-
- # This is based on https://github.com/NixOS/nix/blob/9617a04/scripts/install-multi-user.sh#L525
- # NOTE: store dir must be /nix/store, otherwise pre-built binaries from
- # the standard Nixpkgs channels would not work.
- install -d -m 1775 -g nixbld \
- nix/store
- install -d -m 0755 \
- nix/var/log/nix/drvs \
- nix/var/nix/db \
- nix/var/nix/gcroots \
- nix/var/nix/manifests \
- nix/var/nix/profiles/default \
- nix/var/nix/temproots \
- nix/var/nix/userpool \
- nix/var/nix/profile/per-user/root
- install -d -m 1777 \
- nix/var/nix/profiles/per-user \
- nix/var/nix/gcroots/per-user
- # Allow only users in the nix group to perform Nix operations.
- install -d -m 0770 -g nix \
- nix/var/nix/daemon-socket
-}
-
-sha512sums="
-298a658e5b808f3d528927ea9f0a12006300277025bbd915bf43d39336d0cb2b7ed044a2c6bb744c4c83c7376bbfdb4eba55f0a941909c35995f4eae9ea6e049 nix-2.3.11.tar.xz
-9e4568db987fbae5097f7bb086e8ad51742c2d229703104fb7e6f240ffb0ca72e57dc305fb238bcee4ec8002d780007af60f241b1f32b6aa413dd579d9c59e75 nix-daemon.initd
-0fb5b9ff2f593dca22251b342494ea0b61380d8f905d85855282d259c112aa2a918d9785aa08f847c693a939ebae9fbefcd4e417ad93283a142e066105cc87b5 nix-profile.sh
-"
diff --git a/testing/nix/nix-daemon.initd b/testing/nix/nix-daemon.initd
deleted file mode 100644
index fe81aa8e2bd..00000000000
--- a/testing/nix/nix-daemon.initd
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/sbin/openrc-run
-
-description="Nix multi-user support daemon"
-
-command="/usr/sbin/nix-daemon"
-command_background="yes"
-pidfile="/run/$RC_SVCNAME.pid"
diff --git a/testing/nix/nix-profile.sh b/testing/nix/nix-profile.sh
deleted file mode 100644
index 527122d3222..00000000000
--- a/testing/nix/nix-profile.sh
+++ /dev/null
@@ -1,84 +0,0 @@
-# Profile for Nix package manager
-# This script is based on https://github.com/NixOS/nix/blob/master/scripts/nix-profile.sh.in.
-
-# Sanity check
-[ "$HOME" ] && [ "$USER" ] || return 0
-
-_nix_setup_user() {
- local nix_profile="$HOME/.nix-profile"
- local nix_defexpr="$HOME/.nix-defexpr"
- local profiles_dir="/nix/var/nix/profiles"
- local user_profile_dir="$profiles_dir/per-user/$USER"
- local user_gcroots_dir="/nix/var/nix/gcroots/per-user/$USER"
-
- mkdir -m 0755 -p "$user_profile_dir"
- [ -O "$user_profile_dir" ] \
- || echo "Nix: WARNING: bad ownership on $user_profile_dir, should be $(id -u)" >&2
-
- [ -w "$HOME" ] || return 0
-
- # Create ~/.nix-profile if needed.
- if ! [ -L "$nix_profile" ]; then
- echo "Nix: creating $nix_profile" >&2
-
- if [ "$USER" = root ]; then
- # Root installs in the system-wide profile by default.
- ln -s "$profiles_dir/default" "$nix_profile" \
- || echo "Nix: WARNING: could not create $nix_profile -> $profiles_dir/default" >&2
- else
- ln -s "$user_profile_dir/profile" "$nix_profile" \
- || echo "Nix: WARNING: could not create $nix_profile -> $user_profile_dir/profile" >&2
- fi
- fi
-
- # Subscribe the user to the unstable Nixpkgs channel by default.
- if ! [ -e "$HOME/.nix-channels" ]; then
- echo 'https://nixos.org/channels/nixpkgs-unstable nixpkgs' > "$HOME/.nix-channels"
- fi
-
- # Create the per-user garbage collector roots directory.
- mkdir -m 0755 -p "$user_gcroots_dir"
- [ -O "$user_gcroots_dir" ] \
- || echo "Nix: WARNING: bad ownership on $user_gcroots_dir, should be $(id -u)" >&2
-
- # Set up a default Nix expression from which to install stuff.
- if [ ! -e "$nix_defexpr" -o -L "$nix_defexpr" ]; then
- rm -f "$nix_defexpr"
- mkdir -p "$nix_defexpr"
-
- if [ "$USER" != root ]; then
- ln -s "$profiles_dir"/per-user/root/channels "$nix_defexpr"/channels_root
- fi
- fi
-
- export NIX_PROFILES="$NIX_PROFILES $nix_profile"
-
- # Append ~/.nix-defexpr/channels/nixpkgs to $NIX_PATH so that <nixpkgs>
- # paths work when the user has fetched the Nixpkgs channel.
- export NIX_PATH="${NIX_PATH:+$NIX_PATH:}nixpkgs=$nix_defexpr/channels/nixpkgs"
-
- # Set up secure multi-user builds; non-root users build through the Nix daemon.
- [ "$USER" = root ] || export NIX_REMOTE='daemon'
-}
-
-
-# Set $NIX_SSL_CERT_FILE so that Nixpkgs applications like curl work.
-export NIX_SSL_CERT_FILE='/etc/ssl/certs/ca-certificates.crt'
-
-# The default profile for all users.
-export NIX_PROFILES='/nix/var/nix/profiles/default'
-
-# Set up environment for users that are allowed to build and install Nix
-# packages: root and members of nix or wheel group.
-if [ "$USER" = root ] || id -nG | grep -Eq '\b(nix|wheel)\b'; then
- _nix_setup_user
-fi
-
-# Set up PATH and MANPATH.
-for _i in $NIX_PROFILES; do
- export PATH="$_i/bin:$PATH"
- [ "$MANPATH" ] && export MANPATH="$_i/share/man:$MANPATH"
-done
-
-unset _i
-unset -f _nix_setup_user
diff --git a/testing/nix/nix.pre-install b/testing/nix/nix.pre-install
deleted file mode 100644
index 04bca100955..00000000000
--- a/testing/nix/nix.pre-install
+++ /dev/null
@@ -1,10 +0,0 @@
-#!/bin/sh
-
-addgroup -S nix 2>/dev/null
-addgroup -S nixbld 2>/dev/null
-for n in $(seq 0 3); do
- adduser -S -D -H -h /var/empty -s /sbin/nologin -G nixbld \
- -g "Nix build user $n" nixbld$n 2>/dev/null
-done
-
-exit 0
diff --git a/testing/nixpacks/APKBUILD b/testing/nixpacks/APKBUILD
new file mode 100644
index 00000000000..8de3a985b13
--- /dev/null
+++ b/testing/nixpacks/APKBUILD
@@ -0,0 +1,29 @@
+# Contributor: Tomio <mail@tom1o.space>
+# Maintainer: Tomio <mail@tom1o.space>
+pkgname=nixpacks
+pkgver=0.1.7
+pkgrel=1
+pkgdesc="Generate an OCI compliant image based off app source."
+url="https://github.com/railwayapp/nixpacks"
+arch="x86_64 armv7 armhf aarch64 x86 ppc64le" # limited by alpine's integration/bootstrapping (https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/35671#note_243623)
+license="MIT"
+makedepends="cargo cargo-auditable"
+source="https://github.com/railwayapp/nixpacks/archive/v$pkgver/$pkgname-$pkgver.tar.gz"
+
+
+build() {
+ cargo auditable build --release
+}
+
+check() {
+ # Only generate_plan_tests, docker_run_tests needs docker
+ cargo test --test generate_plan_tests
+}
+
+package() {
+ install -D -m755 target/release/nixpacks -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+66f437f3a4e357886a1eba59411d543f585b3204e662afcc2ef5d701d2d221f3ec4de9c7852de712eef2f9c7c8822822d7f6534597d58aab3b99ccf8e64a7c52 nixpacks-0.1.7.tar.gz
+"
diff --git a/testing/nkk/APKBUILD b/testing/nkk/APKBUILD
index ebb54483108..8c1496af876 100644
--- a/testing/nkk/APKBUILD
+++ b/testing/nkk/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=nkk
-pkgver=0_git20220318
-_commit=20457f36f7
+pkgver=0_git20221010
+_commit=b3c87f883d6bad7a
pkgrel=0
pkgdesc="Simple wayland client library briding the gap from cairo to wayland"
url="https://code.jessemcclure.org/nkk/"
@@ -11,12 +11,15 @@ license="MIT"
depends_dev="
cairo-dev
libxkbcommon-dev
+ mesa-dev
pango-dev
wayland-dev
"
makedepends="$depends_dev"
subpackages="$pkgname-dev $pkgname-doc"
-source="https://code.jessemcclure.org/nkk/tarball/$_commit/nkk-$_commit.tar.gz"
+source="https://code.jessemcclure.org/nkk/tarball/$_commit/nkk-$_commit.tar.gz
+ pc-opengl.patch
+ "
builddir="$srcdir/nkk-$_commit"
options="!check" # no testsuite provided
@@ -29,5 +32,6 @@ package() {
}
sha512sums="
-379c507f8f19ad2f6f13c129ff7bc3d4ef1b5e63a95691c2859a288af6fd914326060ab5bd0a7ae0bd763902b4913270372d55d7cdfc6e0b28e9215e86bbf99b nkk-20457f36f7.tar.gz
+b66a03ef446ed3b005c41db967f71385601a9b9d85b9ecf3567fd5564eb38962f1dbc0356da36750a9076b59aa4aa2abb35220da5d4e6fe0b36e9339fdc87ff2 nkk-b3c87f883d6bad7a.tar.gz
+5088862425121660e3ca3a16af29260b501d266e269f9502ccf176e974da517c8c4081d4113b715491f803012550c7e3664ccd1360a1d1b5c0557382de121499 pc-opengl.patch
"
diff --git a/testing/nkk/pc-opengl.patch b/testing/nkk/pc-opengl.patch
new file mode 100644
index 00000000000..60f87bc4bff
--- /dev/null
+++ b/testing/nkk/pc-opengl.patch
@@ -0,0 +1,14 @@
+opengl.pc is glvnd
+--
+diff --git a/nkk.pc b/nkk.pc
+index dbe8e64..38837f1 100644
+--- a/nkk.pc
++++ b/nkk.pc
+@@ -5,6 +5,6 @@ includedir=${prefix}/include
+ Name: nkk
+ Description: Wayland client library
+ Version: 0.1
+-Requires: opengl pangocairo wayland-egl
++Requires: egl pangocairo wayland-egl
+ Requires.private: wayland-client xkbcommon
+ Libs: -L${libdir} -lnkk
diff --git a/testing/nm-tray/APKBUILD b/testing/nm-tray/APKBUILD
new file mode 100644
index 00000000000..90632a2fc06
--- /dev/null
+++ b/testing/nm-tray/APKBUILD
@@ -0,0 +1,39 @@
+# Contributor: cristian_ci <cristian_ci@protonmail.com>
+# Maintainer: cristian_ci <cristian_ci@protonmail.com>
+pkgname=nm-tray
+pkgver=0.5.0
+pkgrel=0
+pkgdesc="Simple NetworkManager front end based on Qt"
+url="https://github.com/palinek/nm-tray"
+arch="all"
+license="GPL-2.0-or-later"
+makedepends="
+ cmake
+ networkmanager-qt5-dev
+ qt5-qtbase-dev
+ qt5-qttools-dev
+ samurai
+ "
+subpackages="$pkgname-lang"
+source="$pkgname-$pkgver.tar.gz::https://github.com/palinek/nm-tray/archive/refs/tags/$pkgver.tar.gz"
+options="!check" # no test suite
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DNM_TRAY_XDG_AUTOSTART_DIR=/etc/xdg/autostart
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+lang() {
+ install_if="lang $pkgname=$pkgver-r$pkgrel"
+ amove usr/share/$pkgname/*.qm
+}
+
+sha512sums="
+ba118f7fd07a60af5ed6b7b53cf771f339c89f9bef02aeb2f59bfbddd3e896bdc31aa506437e33cb8fe2ef921c595b76527d61cefd202e9e1f5197762b69ab51 nm-tray-0.5.0.tar.gz
+"
diff --git a/testing/nmail/APKBUILD b/testing/nmail/APKBUILD
new file mode 100644
index 00000000000..710e09def4d
--- /dev/null
+++ b/testing/nmail/APKBUILD
@@ -0,0 +1,57 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=nmail
+pkgver=4.54
+pkgrel=0
+pkgdesc="Terminal-based email client"
+url="https://github.com/d99kris/nmail"
+arch="all"
+license="MIT"
+depends="cyrus-sasl-login"
+makedepends="
+ cmake
+ cyrus-sasl-dev
+ file-dev
+ libetpan-dev
+ linux-headers
+ ncurses-dev
+ openssl-dev
+ samurai
+ sqlite-dev
+ util-linux-dev
+ xapian-core-dev
+ "
+subpackages="$pkgname-doc $pkgname-oauth::noarch"
+source="https://github.com/d99kris/nmail/archive/v$pkgver/nmail-$pkgver.tar.gz"
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=None \
+ -DHAS_CUSTOM_LIBETPAN=OFF
+ cmake --build build
+}
+
+check() {
+ ./build/nmail --version
+
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+
+ install -Dvm644 LICENSE -t "$pkgdir"/usr/share/licenses/$pkgname/
+}
+
+oauth() {
+ pkgdesc="$pkgdesc (OAuth2 Python helper script)"
+ depends="$pkgname=$pkgver-r$pkgrel py3-requests"
+
+ amove usr/bin/oauth2nmail
+}
+
+sha512sums="
+e8c221bfa4891d1133ad98d273c75b522644c7e21f36d869b33e933205aad959e44012406fffdc028fefef07632c9609bacd56d3486de371b6a04bb69c1d1bc1 nmail-4.54.tar.gz
+"
diff --git a/testing/nmap-parse-output/APKBUILD b/testing/nmap-parse-output/APKBUILD
new file mode 100644
index 00000000000..ad9b2d3b3c9
--- /dev/null
+++ b/testing/nmap-parse-output/APKBUILD
@@ -0,0 +1,33 @@
+# Contributor: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
+# Maintainer: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
+pkgname=nmap-parse-output
+pkgver=1.5.1
+pkgrel=0
+pkgdesc="Converts/manipulates/extracts data from a Nmap scan output."
+url="https://github.com/ernw/nmap-parse-output"
+arch="noarch"
+license="BSD-3-Clause"
+depends="bash libxslt"
+subpackages="$pkgname-bash-completion $pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/ernw/nmap-parse-output/archive/v$pkgver.tar.gz"
+options="!check"
+
+package() {
+ install -Dm 755 -t "$pkgdir/usr/share/$pkgname/" nmap-parse-output
+ install -Dm 644 -t "$pkgdir/usr/share/$pkgname/nmap-parse-output-xslt/" nmap-parse-output-xslt/*
+ install -dm 755 "$pkgdir/usr/bin"
+ ln -sf "/usr/share/$pkgname/$pkgname" "$pkgdir/usr/bin/$pkgname"
+
+ # bash-completion
+ install -Dm 644 _nmap-parse-output "$pkgdir/usr/share/bash-completion/completions/nmap-parse-output"
+
+ # doc
+ install -Dm 644 -t "$pkgdir/usr/share/doc/$pkgname/" README.md
+ install -Dm 644 -t "$pkgdir/usr/share/doc/$pkgname/" demo.gif
+ install -Dm 644 -t "$pkgdir/usr/share/licenses/$pkgname/" LICENSE
+ install -Dm 644 -t "$pkgdir/usr/share/licenses/$pkgname/" ThirdPartyNotices.md
+}
+
+sha512sums="
+460705435905bf08f71c66af107c453ee3090d3f9e9381417e78d13811f22646e76fa311718e88f75083756b4d368431d7c47df0747031d5631fe63fcbf77726 nmap-parse-output-1.5.1.tar.gz
+"
diff --git a/testing/nmon/APKBUILD b/testing/nmon/APKBUILD
index b09005c18bd..e50fe4583f9 100644
--- a/testing/nmon/APKBUILD
+++ b/testing/nmon/APKBUILD
@@ -1,10 +1,10 @@
# Contributor: Mike Crute <mike@crute.us>
-# Maintainer: Mike Crute <mike@crute.us>
+# Maintainer: Mike Crute <mike@crute.us>
pkgname=nmon
-pkgver=16m
+pkgver=16p
pkgrel=0
pkgdesc="Nigel's performance Monitor for Linux"
-url="http://nmon.sourceforge.net/"
+url="https://nmon.sourceforge.net/"
arch="all"
license="BSD-3-Clause"
options="!check" # no upstream tests
@@ -12,7 +12,7 @@ makedepends="ncurses-dev"
source="
glibc.patch
- http://sourceforge.net/projects/nmon/files/lmon$pkgver.c
+ https://sourceforge.net/projects/nmon/files/lmon$pkgver.c
"
prepare() {
@@ -38,5 +38,7 @@ package() {
install -Dm0755 nmon "$pkgdir"/usr/bin/nmon
}
-sha512sums="c6749baeeefbb5fa781badcf0a3b1a77792498663155b70f00ae8da751eb72ac38f1f734fd9e2eb32cb364938e366453f50e29928f247b945b684021fbde9af5 glibc.patch
-391d4703f5d052fd44a3c623155028e28649ea41a88c0fe8df81c7a7dc1f845e044f25e63352c1a7ea607c76c9afb0f82ff2841c8e789d88a9f1cf3c9e035f2e lmon16m.c"
+sha512sums="
+c6749baeeefbb5fa781badcf0a3b1a77792498663155b70f00ae8da751eb72ac38f1f734fd9e2eb32cb364938e366453f50e29928f247b945b684021fbde9af5 glibc.patch
+137a54e49a43f0197dc1edc039bcba7e0a51965c8e49b0034123e1d1d540fb7cec8203bca691dcbe0621b8667a73c572bd9b7b3f7e20948d62d8b9b76124edba lmon16p.c
+"
diff --git a/testing/noblenote/APKBUILD b/testing/noblenote/APKBUILD
index 1ac8c89946d..6484058c3c0 100644
--- a/testing/noblenote/APKBUILD
+++ b/testing/noblenote/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
pkgname=noblenote
pkgver=1.2.1
-pkgrel=0
+pkgrel=1
pkgdesc="Program to make and manage notes"
url="https://github.com/hakaishi/nobleNote"
arch="all"
diff --git a/testing/node-closurecompiler-externs/APKBUILD b/testing/node-closurecompiler-externs/APKBUILD
deleted file mode 100644
index a1a3be2ae6d..00000000000
--- a/testing/node-closurecompiler-externs/APKBUILD
+++ /dev/null
@@ -1,29 +0,0 @@
-# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
-pkgname=node-closurecompiler-externs
-_pkgname=node.js-closure-compiler-externs
-_npmname=closurecompiler-externs
-pkgver=1.0.4
-pkgrel=0
-pkgdesc="A collection of node.js externs for use with Closure Compiler"
-url="https://github.com/dcodeIO/node.js-closure-compiler-externs"
-arch="noarch !riscv64" # blocked by nodejs
-license="Apache-2.0"
-depends="nodejs"
-source="$pkgname-$pkgver.tar.gz::https://github.com/dcodeIO/$_pkgname/archive/$pkgver.tar.gz
- domain.js-fix-type-annotations.patch"
-builddir="$srcdir/$_pkgname-$pkgver"
-options="!check"
-
-package() {
- local destdir="$pkgdir/usr/lib/node_modules/$_npmname"
-
- mkdir -p "$destdir"
- cp -R "$builddir"/* "$destdir"/
-
- cd "$destdir"
- rm -r tests *.md *.png LICENSE
-}
-
-sha512sums="74965e7519bf618dd0ebf85a8716e1e4156bb6b696598ee405c0da4e9e646a4f84838a1e4b12cf8936b2871010adf363d1611726185b3b273d94c4be1c78c298 node-closurecompiler-externs-1.0.4.tar.gz
-68189a32cef61ebd9dc19ddc6e0e8cf750b6205ee3d82ba17e49f831e9ad813e33c3629ce1aebaf91d644d39378651901c72959f6a4960353288e28573d002d5 domain.js-fix-type-annotations.patch"
diff --git a/testing/node-closurecompiler-externs/domain.js-fix-type-annotations.patch b/testing/node-closurecompiler-externs/domain.js-fix-type-annotations.patch
deleted file mode 100644
index c638747b251..00000000000
--- a/testing/node-closurecompiler-externs/domain.js-fix-type-annotations.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From 8a76d75392291c80a6b303133b95a31d98fd2f5c Mon Sep 17 00:00:00 2001
-From: Andrew Keller <andrew@wimpyprogrammer.com>
-Date: Wed, 18 Feb 2015 22:45:15 -0500
-Subject: [PATCH] Fixing type annotations in domain.js
-
-Fixing the syntax of the type annotations for variable number, any type callbacks to avoid warnings from the Closure Compiler.
-
-Upstream-Commit: https://github.com/dcodeIO/node.js-closure-compiler-externs/commit/8a76d75392291c80a6b303133b95a31d98fd2f5c
----
- domain.js | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/domain.js b/domain.js
-index 3349561..6136f91 100644
---- a/domain.js
-+++ b/domain.js
-@@ -64,14 +64,14 @@ domain.Domain.prototype.add = function(emitter) {};
- domain.Domain.prototype.remove = function(emitter) {};
-
- /**
-- * @param {function(...[*])} callback
-- * @return {function(...[*])}
-+ * @param {function(...*)} callback
-+ * @return {function(...*)}
- */
- domain.Domain.prototype.bind = function(callback) {};
-
- /**
-- * @param {function(...[*])} callback
-- * @return {function(...[*])}
-+ * @param {function(...*)} callback
-+ * @return {function(...*)}
- */
- domain.Domain.prototype.intercept = function(callback) {};
-
diff --git a/testing/node-libpg-query/APKBUILD b/testing/node-libpg-query/APKBUILD
index 2dfb6d9b9a8..2f1483f6dea 100644
--- a/testing/node-libpg-query/APKBUILD
+++ b/testing/node-libpg-query/APKBUILD
@@ -5,17 +5,19 @@ _npmname=libpg-query
pkgver=13.1.2
# XXX: upstream does not use tags
_gitrev=f34989e21713a66938f559480230359b4a7d3c31
-pkgrel=0
+pkgrel=4
pkgdesc="The real PostgreSQL query parser for Node.js (experimental aport!)"
url="https://github.com/pyramation/libpg-query-node"
-# riscv64: limited by nodejs
+# riscv64: missing libpg_query
# x86: textrels
-arch="all !riscv64 !x86"
+# armhf, armv7: blocked by libpg_query
+arch="all !x86 !riscv64 !armhf !armv7"
license="MIT"
makedepends="libpg_query-dev nodejs-dev python3 yarn"
source="https://github.com/pyramation/libpg-query-node/archive/$_gitrev/$pkgname-$_gitrev.tar.gz
gyp.patch
package.patch
+ bump-gyp.patch
"
builddir="$srcdir/$_npmname-node-$_gitrev"
@@ -44,4 +46,5 @@ sha512sums="
54f28409383783877f66a40375a663401c5fd2b8a6a73c059e6d286cb28332c489f1bf7ed67c6aaaab164a9443ad347f6bd7031dc4fdc5eac389c0bf40b16256 node-libpg-query-f34989e21713a66938f559480230359b4a7d3c31.tar.gz
54d3a540fc351a4e8530ad7455b25df666efef564699626da363531caf483785abea1bf1ba7b895c385af852dfffbd032c759d2cd73882bf77b8836aa9c9bbda gyp.patch
d6656ddc5ee9b0c3365bb4f6f7deb0fea24cadf08450a09e0615a2c7c44f65ce6e2dcbddcf921af92bf9a3608d0134d1b2910b1af9e97b79a62600bab4f11f34 package.patch
+aeff0d4fd3c0f0713607b98d682b1c46ee118586370cbb3f870ca67b90034cb075c2f443e2f21fa107f3c8a02e5ae905d9e836c64dfbde60068c6e249bb2123b bump-gyp.patch
"
diff --git a/testing/node-libpg-query/bump-gyp.patch b/testing/node-libpg-query/bump-gyp.patch
new file mode 100644
index 00000000000..a09fff81fef
--- /dev/null
+++ b/testing/node-libpg-query/bump-gyp.patch
@@ -0,0 +1,57 @@
+diff --git a/package.json b/package.json
+index 89c42ac..d976ff8 100644
+--- a/package.json
++++ b/package.json
+@@ -32,3 +32,3 @@
+ "node-addon-api": "^1.6.3",
+- "node-gyp": "^8.0.0"
++ "node-gyp": "~8.2.0"
+ },
+diff --git a/yarn.lock b/yarn.lock
+index bf81a2d..9cc9bd7 100644
+--- a/yarn.lock
++++ b/yarn.lock
+@@ -479,2 +479,7 @@ minipass@^3.0.0, minipass@^3.1.0, minipass@^3.1.1, minipass@^3.1.3:
+
++minipass@^5.0.0:
++ version "5.0.0"
++ resolved "https://registry.yarnpkg.com/minipass/-/minipass-5.0.0.tgz#3e9788ffb90b694a5d0ec94479a45b5d8738133d"
++ integrity sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==
++
+ minizlib@^2.0.0, minizlib@^2.1.1:
+@@ -536,6 +541,6 @@ node-addon-api@^1.6.3:
+
+-node-gyp@^8.0.0:
+- version "8.0.0"
+- resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-8.0.0.tgz#225af2b06b8419ae81f924bf25ae4c167f6378a5"
+- integrity sha512-Jod6NxyWtcwrpAQe0O/aXOpC5QfncotgtG73dg65z6VW/C6g/G4jiajXQUBIJ8pk/VfM6mBYE9BN/HvudTunUQ==
++node-gyp@~8.2.0:
++ version "8.2.0"
++ resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-8.2.0.tgz#ef509ccdf5cef3b4d93df0690b90aa55ff8c7977"
++ integrity sha512-KG8SdcoAnw2d6augGwl1kOayALUrXW/P2uOAm2J2+nmW/HjZo7y+8TDg7LejxbekOOSv3kzhq+NSUYkIDAX8eA==
+ dependencies:
+@@ -549,3 +554,3 @@ node-gyp@^8.0.0:
+ semver "^7.3.5"
+- tar "^6.1.0"
++ tar "^6.1.2"
+ which "^2.0.2"
+@@ -742,3 +747,3 @@ supports-color@5.4.0:
+
+-tar@^6.0.2, tar@^6.1.0:
++tar@^6.0.2:
+ version "6.1.0"
+@@ -754,2 +759,14 @@ tar@^6.0.2, tar@^6.1.0:
+
++tar@^6.1.2:
++ version "6.2.1"
++ resolved "https://registry.yarnpkg.com/tar/-/tar-6.2.1.tgz#717549c541bc3c2af15751bea94b1dd068d4b03a"
++ integrity sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==
++ dependencies:
++ chownr "^2.0.0"
++ fs-minipass "^2.0.0"
++ minipass "^5.0.0"
++ minizlib "^2.1.1"
++ mkdirp "^1.0.3"
++ yallist "^4.0.0"
++
+ type-detect@0.1.1:
diff --git a/testing/nodejs18/APKBUILD b/testing/nodejs18/APKBUILD
new file mode 100644
index 00000000000..821d86af505
--- /dev/null
+++ b/testing/nodejs18/APKBUILD
@@ -0,0 +1,222 @@
+# Contributor: Jose-Luis Rivas <ghostbar@riseup.net>
+# Contributor: Jakub Jirutka <jakub@jirutka.cz>
+# Contributor: Dave Esaias <dave@containership.io>
+# Contributor: Tadahisa Kamijo <kamijin@live.jp>
+# Contributor: Eivind Uggedal <eu@eju.no>
+# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
+#
+# secfixes:
+# 18.18.2-r0:
+# - CVE-2023-45143
+# - CVE-2023-38552
+# - CVE-2023-39333
+# 18.17.1-r0:
+# - CVE-2023-32002
+# - CVE-2023-32006
+# - CVE-2023-32559
+# 18.14.1-r0:
+# - CVE-2023-23918
+# - CVE-2023-23919
+# - CVE-2023-23920
+# - CVE-2023-23936
+# - CVE-2023-24807
+# 18.12.1-r0:
+# - CVE-2022-3602
+# - CVE-2022-3786
+# - CVE-2022-43548
+# 16.17.1-r0:
+# - CVE-2022-32213
+# - CVE-2022-32214
+# - CVE-2022-32215
+# - CVE-2022-35255
+# - CVE-2022-35256
+# 16.13.2-r0:
+# - CVE-2021-44531
+# - CVE-2021-44532
+# - CVE-2021-44533
+# - CVE-2022-21824
+# 14.18.1-r0:
+# - CVE-2021-22959
+# - CVE-2021-22960
+# 14.17.6-r0:
+# - CVE-2021-37701
+# - CVE-2021-37712
+# - CVE-2021-37713
+# - CVE-2021-39134
+# - CVE-2021-39135
+# 14.17.5-r0:
+# - CVE-2021-3672
+# - CVE-2021-22931
+# - CVE-2021-22939
+# 14.17.4-r0:
+# - CVE-2021-22930
+# 14.16.1-r0:
+# - CVE-2020-7774
+# 14.16.0-r0:
+# - CVE-2021-22883
+# - CVE-2021-22884
+# 14.15.5-r0:
+# - CVE-2021-21148
+# 14.15.4-r0:
+# - CVE-2020-8265
+# - CVE-2020-8287
+# 14.15.1-r0:
+# - CVE-2020-8277
+# 12.18.4-r0:
+# - CVE-2020-8201
+# - CVE-2020-8252
+# 12.18.0-r0:
+# - CVE-2020-8172
+# - CVE-2020-11080
+# - CVE-2020-8174
+# 12.15.0-r0:
+# - CVE-2019-15606
+# - CVE-2019-15605
+# - CVE-2019-15604
+# 10.16.3-r0:
+# - CVE-2019-9511
+# - CVE-2019-9512
+# - CVE-2019-9513
+# - CVE-2019-9514
+# - CVE-2019-9515
+# - CVE-2019-9516
+# - CVE-2019-9517
+# - CVE-2019-9518
+# 10.15.3-r0:
+# - CVE-2019-5737
+# 10.14.0-r0:
+# - CVE-2018-12121
+# - CVE-2018-12122
+# - CVE-2018-12123
+# - CVE-2018-0735
+# - CVE-2018-0734
+# 8.11.4-r0:
+# - CVE-2018-12115
+# 8.11.3-r0:
+# - CVE-2018-7167
+# - CVE-2018-7161
+# - CVE-2018-1000168
+# 8.11.0-r0:
+# - CVE-2018-7158
+# - CVE-2018-7159
+# - CVE-2018-7160
+# 8.9.3-r0:
+# - CVE-2017-15896
+# - CVE-2017-15897
+# 6.11.5-r0:
+# - CVE-2017-14919
+# 6.11.1-r0:
+# - CVE-2017-1000381
+# 0:
+# - CVE-2021-43803
+# - CVE-2022-32212
+
+# temporary package to fix testing/code-oss builds
+pkgname=nodejs18
+# Note: Update only to even-numbered versions (e.g. 6.y.z, 8.y.z)!
+# Odd-numbered versions are supported only for 9 months by upstream.
+pkgver=18.19.1
+pkgrel=0
+pkgdesc="JavaScript runtime built on V8 engine - LTS version (temporary hack)"
+url="https://nodejs.org/"
+arch="aarch64 x86_64"
+license="MIT"
+depends="ca-certificates"
+makedepends="
+ brotli-dev
+ c-ares-dev
+ icu-dev
+ linux-headers
+ nghttp2-dev
+ openssl-dev
+ py3-jinja2
+ python3
+ samurai
+ zlib-dev
+ "
+subpackages="$pkgname-dev $pkgname-doc"
+source="https://nodejs.org/dist/v$pkgver/node-v$pkgver.tar.gz
+ disable-running-gyp-on-shared-deps.patch
+ fix-build-with-system-c-ares.patch
+ "
+builddir="$srcdir/node-v$pkgver"
+
+prepare() {
+ default_prepare
+
+ # openssl.cnf is required for build.
+ mv deps/openssl/nodejs-openssl.cnf .
+
+ # Remove bundled dependencies that we're not using.
+ rm -rf deps/brotli \
+ deps/cares \
+ deps/corepack \
+ deps/openssl/* \
+ deps/v8/third_party/jinja2 \
+ deps/zlib \
+ tools/inspector_protocol/jinja2
+
+ mv nodejs-openssl.cnf deps/openssl/
+
+ # the build system tries to import from the riscv folder for some reason
+ # the push_registers_asm.cc has definitions fo 64 bit riscv only
+ cp -r deps/v8/src/heap/base/asm/riscv64 deps/v8/src/heap/base/asm/riscv
+}
+
+build() {
+ # Add defines recommended in libuv readme.
+ local common_flags="-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"
+
+ # Compiling with O2 instead of Os increases binary size by ~10%
+ # (53.1 MiB -> 58.6 MiB), but also increases performance by ~20%
+ # according to v8/web-tooling-benchmark. Node.js is quite huge anyway;
+ # there are better options for size constrained environments.
+ export CFLAGS="${CFLAGS/-Os/-O2} $common_flags"
+ export CXXFLAGS="${CXXFLAGS/-Os/-O2} $common_flags"
+ export CPPFLAGS="${CPPFLAGS/-Os/-O2} $common_flags"
+
+ # NOTE: We use bundled libuv because they don't care much about backward
+ # compatibility and it has happened several times in past that we
+ # couldn't upgrade nodejs package in stable branches to fix CVEs due to
+ # libuv incompatibility.
+ #
+ # NOTE: We don't package the bundled npm - it's a separate project with
+ # its own release cycle and version numbering, so it's better to keep
+ # it in a standalone aport.
+ #
+ # TODO: Fix and enable corepack.
+ python3 configure.py --prefix=/usr \
+ --shared-brotli \
+ --shared-zlib \
+ --shared-openssl \
+ --shared-cares \
+ --shared-nghttp2 \
+ --ninja \
+ --openssl-use-def-ca-store \
+ --with-icu-default-data-dir=$(icu-config --icudatadir) \
+ --with-intl=system-icu \
+ --without-corepack \
+ --without-npm
+
+ make BUILDTYPE=Release
+}
+
+# TODO Run provided test suite.
+check() {
+ cd "$builddir"/out/Release
+
+ ./node -e 'console.log("Hello, world!")'
+ ./node -e "require('assert').equal(process.versions.node, '$pkgver')"
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+ mv "$pkgdir"/usr/bin/node "$pkgdir"/usr/bin/node18
+ mv "$pkgdir"/usr/include/node "$pkgdir"/usr/include/node18
+}
+
+sha512sums="
+039359089d0383808ac3929b97995d23bfa02b4cd150492888942fd51d6d7d60df174dbf14d7764dae379d4251ca02b6c1702bce8b79d4f99fff23c7874469f7 node-v18.19.1.tar.gz
+8c264eefc0bfa9dd57656f9f515e940d5c21b8d836dc549031ee559ba909643f4f2495b8b392ee9976c5eed7c3b4a09db876bbe0f7fcd5b2bf63fafca37bffc2 disable-running-gyp-on-shared-deps.patch
+30ca1ce7f9512c943950b8eec98bca99d24c740ebaa14619292fe5ed931dcf603ca90afb1d704ca7f545e421752ba4dde81c0c5bbb5242eb1726739ca627e15f fix-build-with-system-c-ares.patch
+"
diff --git a/testing/nodejs18/disable-running-gyp-on-shared-deps.patch b/testing/nodejs18/disable-running-gyp-on-shared-deps.patch
new file mode 100644
index 00000000000..ce3cbe224c1
--- /dev/null
+++ b/testing/nodejs18/disable-running-gyp-on-shared-deps.patch
@@ -0,0 +1,22 @@
+From: Jakub Jirutka <jakub@jirutka.cz>
+Date: Sat, 26 Nov 2016 01:32:00 +0200
+Subject: Disable running gyp on shared deps
+
+Author: Stephen Gallagher <sgallagh@redhat.com>
+
+Modified 2016-11-26 by Jakub Jirutka <jakub@jirutka.cz> to update for
+Node.js 7.2.0
+
+diff --git a/Makefile b/Makefile
+index 94013466..de3f5e9a 100644
+--- a/Makefile
++++ b/Makefile
+@@ -169,7 +169,7 @@ with-code-cache test-code-cache:
+ $(warning '$@' target is a noop)
+
+ out/Makefile: config.gypi common.gypi node.gyp \
+- deps/uv/uv.gyp deps/llhttp/llhttp.gyp deps/zlib/zlib.gyp \
++ deps/uv/uv.gyp deps/llhttp/llhttp.gyp \
+ deps/simdutf/simdutf.gyp deps/ada/ada.gyp \
+ tools/v8_gypfiles/toolchain.gypi tools/v8_gypfiles/features.gypi \
+ tools/v8_gypfiles/inspector.gypi tools/v8_gypfiles/v8.gyp
diff --git a/testing/nodejs18/fix-build-with-system-c-ares.patch b/testing/nodejs18/fix-build-with-system-c-ares.patch
new file mode 100644
index 00000000000..8121891d048
--- /dev/null
+++ b/testing/nodejs18/fix-build-with-system-c-ares.patch
@@ -0,0 +1,535 @@
+From aff98a5667c22794e2eaf658f6dfbee54cdd4a3b Mon Sep 17 00:00:00 2001
+From: Felix Yan <felixonmars@archlinux.org>
+Date: Thu, 12 Aug 2021 02:44:43 +0800
+Subject: [PATCH 1/2] deps: fix building with system c-ares on Linux
+Patch-Source: https://github.com/nodejs/node/pull/39739
+
+The change in #39724 breaks building with system c-ares
+(`--shared-cares`):
+```
+In file included from ../src/cares_wrap.cc:25:
+../src/cares_wrap.h:25:11: fatal error: ares_nameser.h: No such file or
+directory
+ 25 | # include <ares_nameser.h>
+ | ^~~~~~~~~~~~~~~~
+```
+
+Since `ares_nameser.h` isn't available with a default system c-ares
+installation, let's copy it as our private header here.
+
+Tested to build fine on Arch Linux with shared c-ares.
+---
+ src/ares_nameser.h | 482 +++++++++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 482 insertions(+)
+ create mode 100644 src/ares_nameser.h
+
+diff --git a/src/ares_nameser.h b/src/ares_nameser.h
+new file mode 100644
+index 000000000000..5270e5a3a6a0
+--- /dev/null
++++ b/src/ares_nameser.h
+@@ -0,0 +1,482 @@
++
++#ifndef ARES_NAMESER_H
++#define ARES_NAMESER_H
++
++#ifdef HAVE_ARPA_NAMESER_H
++# include <arpa/nameser.h>
++#endif
++#ifdef HAVE_ARPA_NAMESER_COMPAT_H
++# include <arpa/nameser_compat.h>
++#endif
++
++/* ============================================================================
++ * arpa/nameser.h may or may not provide ALL of the below defines, so check
++ * each one individually and set if not
++ * ============================================================================
++ */
++
++#ifndef NS_PACKETSZ
++# define NS_PACKETSZ 512 /* maximum packet size */
++#endif
++
++#ifndef NS_MAXDNAME
++# define NS_MAXDNAME 256 /* maximum domain name */
++#endif
++
++#ifndef NS_MAXCDNAME
++# define NS_MAXCDNAME 255 /* maximum compressed domain name */
++#endif
++
++#ifndef NS_MAXLABEL
++# define NS_MAXLABEL 63
++#endif
++
++#ifndef NS_HFIXEDSZ
++# define NS_HFIXEDSZ 12 /* #/bytes of fixed data in header */
++#endif
++
++#ifndef NS_QFIXEDSZ
++# define NS_QFIXEDSZ 4 /* #/bytes of fixed data in query */
++#endif
++
++#ifndef NS_RRFIXEDSZ
++# define NS_RRFIXEDSZ 10 /* #/bytes of fixed data in r record */
++#endif
++
++#ifndef NS_INT16SZ
++# define NS_INT16SZ 2
++#endif
++
++#ifndef NS_INADDRSZ
++# define NS_INADDRSZ 4
++#endif
++
++#ifndef NS_IN6ADDRSZ
++# define NS_IN6ADDRSZ 16
++#endif
++
++#ifndef NS_CMPRSFLGS
++# define NS_CMPRSFLGS 0xc0 /* Flag bits indicating name compression. */
++#endif
++
++#ifndef NS_DEFAULTPORT
++# define NS_DEFAULTPORT 53 /* For both TCP and UDP. */
++#endif
++
++/* ============================================================================
++ * arpa/nameser.h should provide these enumerations always, so if not found,
++ * provide them
++ * ============================================================================
++ */
++#ifndef HAVE_ARPA_NAMESER_H
++
++typedef enum __ns_class {
++ ns_c_invalid = 0, /* Cookie. */
++ ns_c_in = 1, /* Internet. */
++ ns_c_2 = 2, /* unallocated/unsupported. */
++ ns_c_chaos = 3, /* MIT Chaos-net. */
++ ns_c_hs = 4, /* MIT Hesiod. */
++ /* Query class values which do not appear in resource records */
++ ns_c_none = 254, /* for prereq. sections in update requests */
++ ns_c_any = 255, /* Wildcard match. */
++ ns_c_max = 65536
++} ns_class;
++
++typedef enum __ns_type {
++ ns_t_invalid = 0, /* Cookie. */
++ ns_t_a = 1, /* Host address. */
++ ns_t_ns = 2, /* Authoritative server. */
++ ns_t_md = 3, /* Mail destination. */
++ ns_t_mf = 4, /* Mail forwarder. */
++ ns_t_cname = 5, /* Canonical name. */
++ ns_t_soa = 6, /* Start of authority zone. */
++ ns_t_mb = 7, /* Mailbox domain name. */
++ ns_t_mg = 8, /* Mail group member. */
++ ns_t_mr = 9, /* Mail rename name. */
++ ns_t_null = 10, /* Null resource record. */
++ ns_t_wks = 11, /* Well known service. */
++ ns_t_ptr = 12, /* Domain name pointer. */
++ ns_t_hinfo = 13, /* Host information. */
++ ns_t_minfo = 14, /* Mailbox information. */
++ ns_t_mx = 15, /* Mail routing information. */
++ ns_t_txt = 16, /* Text strings. */
++ ns_t_rp = 17, /* Responsible person. */
++ ns_t_afsdb = 18, /* AFS cell database. */
++ ns_t_x25 = 19, /* X_25 calling address. */
++ ns_t_isdn = 20, /* ISDN calling address. */
++ ns_t_rt = 21, /* Router. */
++ ns_t_nsap = 22, /* NSAP address. */
++ ns_t_nsap_ptr = 23, /* Reverse NSAP lookup (deprecated). */
++ ns_t_sig = 24, /* Security signature. */
++ ns_t_key = 25, /* Security key. */
++ ns_t_px = 26, /* X.400 mail mapping. */
++ ns_t_gpos = 27, /* Geographical position (withdrawn). */
++ ns_t_aaaa = 28, /* Ip6 Address. */
++ ns_t_loc = 29, /* Location Information. */
++ ns_t_nxt = 30, /* Next domain (security). */
++ ns_t_eid = 31, /* Endpoint identifier. */
++ ns_t_nimloc = 32, /* Nimrod Locator. */
++ ns_t_srv = 33, /* Server Selection. */
++ ns_t_atma = 34, /* ATM Address */
++ ns_t_naptr = 35, /* Naming Authority PoinTeR */
++ ns_t_kx = 36, /* Key Exchange */
++ ns_t_cert = 37, /* Certification record */
++ ns_t_a6 = 38, /* IPv6 address (deprecates AAAA) */
++ ns_t_dname = 39, /* Non-terminal DNAME (for IPv6) */
++ ns_t_sink = 40, /* Kitchen sink (experimentatl) */
++ ns_t_opt = 41, /* EDNS0 option (meta-RR) */
++ ns_t_apl = 42, /* Address prefix list (RFC3123) */
++ ns_t_ds = 43, /* Delegation Signer (RFC4034) */
++ ns_t_sshfp = 44, /* SSH Key Fingerprint (RFC4255) */
++ ns_t_rrsig = 46, /* Resource Record Signature (RFC4034) */
++ ns_t_nsec = 47, /* Next Secure (RFC4034) */
++ ns_t_dnskey = 48, /* DNS Public Key (RFC4034) */
++ ns_t_tkey = 249, /* Transaction key */
++ ns_t_tsig = 250, /* Transaction signature. */
++ ns_t_ixfr = 251, /* Incremental zone transfer. */
++ ns_t_axfr = 252, /* Transfer zone of authority. */
++ ns_t_mailb = 253, /* Transfer mailbox records. */
++ ns_t_maila = 254, /* Transfer mail agent records. */
++ ns_t_any = 255, /* Wildcard match. */
++ ns_t_zxfr = 256, /* BIND-specific, nonstandard. */
++ ns_t_caa = 257, /* Certification Authority Authorization. */
++ ns_t_max = 65536
++} ns_type;
++
++typedef enum __ns_opcode {
++ ns_o_query = 0, /* Standard query. */
++ ns_o_iquery = 1, /* Inverse query (deprecated/unsupported). */
++ ns_o_status = 2, /* Name server status query (unsupported). */
++ /* Opcode 3 is undefined/reserved. */
++ ns_o_notify = 4, /* Zone change notification. */
++ ns_o_update = 5, /* Zone update message. */
++ ns_o_max = 6
++} ns_opcode;
++
++typedef enum __ns_rcode {
++ ns_r_noerror = 0, /* No error occurred. */
++ ns_r_formerr = 1, /* Format error. */
++ ns_r_servfail = 2, /* Server failure. */
++ ns_r_nxdomain = 3, /* Name error. */
++ ns_r_notimpl = 4, /* Unimplemented. */
++ ns_r_refused = 5, /* Operation refused. */
++ /* these are for BIND_UPDATE */
++ ns_r_yxdomain = 6, /* Name exists */
++ ns_r_yxrrset = 7, /* RRset exists */
++ ns_r_nxrrset = 8, /* RRset does not exist */
++ ns_r_notauth = 9, /* Not authoritative for zone */
++ ns_r_notzone = 10, /* Zone of record different from zone section */
++ ns_r_max = 11,
++ /* The following are TSIG extended errors */
++ ns_r_badsig = 16,
++ ns_r_badkey = 17,
++ ns_r_badtime = 18
++} ns_rcode;
++
++#endif /* HAVE_ARPA_NAMESER_H */
++
++
++/* ============================================================================
++ * arpa/nameser_compat.h typically sets these. However on some systems
++ * arpa/nameser.h does, but may not set all of them. Lets conditionally
++ * define each
++ * ============================================================================
++ */
++
++#ifndef PACKETSZ
++# define PACKETSZ NS_PACKETSZ
++#endif
++
++#ifndef MAXDNAME
++# define MAXDNAME NS_MAXDNAME
++#endif
++
++#ifndef MAXCDNAME
++# define MAXCDNAME NS_MAXCDNAME
++#endif
++
++#ifndef MAXLABEL
++# define MAXLABEL NS_MAXLABEL
++#endif
++
++#ifndef HFIXEDSZ
++# define HFIXEDSZ NS_HFIXEDSZ
++#endif
++
++#ifndef QFIXEDSZ
++# define QFIXEDSZ NS_QFIXEDSZ
++#endif
++
++#ifndef RRFIXEDSZ
++# define RRFIXEDSZ NS_RRFIXEDSZ
++#endif
++
++#ifndef INDIR_MASK
++# define INDIR_MASK NS_CMPRSFLGS
++#endif
++
++#ifndef NAMESERVER_PORT
++# define NAMESERVER_PORT NS_DEFAULTPORT
++#endif
++
++
++/* opcodes */
++#ifndef O_QUERY
++# define O_QUERY 0 /* ns_o_query */
++#endif
++#ifndef O_IQUERY
++# define O_IQUERY 1 /* ns_o_iquery */
++#endif
++#ifndef O_STATUS
++# define O_STATUS 2 /* ns_o_status */
++#endif
++#ifndef O_NOTIFY
++# define O_NOTIFY 4 /* ns_o_notify */
++#endif
++#ifndef O_UPDATE
++# define O_UPDATE 5 /* ns_o_update */
++#endif
++
++
++/* response codes */
++#ifndef SERVFAIL
++# define SERVFAIL ns_r_servfail
++#endif
++#ifndef NOTIMP
++# define NOTIMP ns_r_notimpl
++#endif
++#ifndef REFUSED
++# define REFUSED ns_r_refused
++#endif
++#if defined(_WIN32) && !defined(HAVE_ARPA_NAMESER_COMPAT_H) && defined(NOERROR)
++# undef NOERROR /* it seems this is already defined in winerror.h */
++#endif
++#ifndef NOERROR
++# define NOERROR ns_r_noerror
++#endif
++#ifndef FORMERR
++# define FORMERR ns_r_formerr
++#endif
++#ifndef NXDOMAIN
++# define NXDOMAIN ns_r_nxdomain
++#endif
++/* Non-standard response codes, use numeric values */
++#ifndef YXDOMAIN
++# define YXDOMAIN 6 /* ns_r_yxdomain */
++#endif
++#ifndef YXRRSET
++# define YXRRSET 7 /* ns_r_yxrrset */
++#endif
++#ifndef NXRRSET
++# define NXRRSET 8 /* ns_r_nxrrset */
++#endif
++#ifndef NOTAUTH
++# define NOTAUTH 9 /* ns_r_notauth */
++#endif
++#ifndef NOTZONE
++# define NOTZONE 10 /* ns_r_notzone */
++#endif
++#ifndef TSIG_BADSIG
++# define TSIG_BADSIG 16 /* ns_r_badsig */
++#endif
++#ifndef TSIG_BADKEY
++# define TSIG_BADKEY 17 /* ns_r_badkey */
++#endif
++#ifndef TSIG_BADTIME
++# define TSIG_BADTIME 18 /* ns_r_badtime */
++#endif
++
++
++/* classes */
++#ifndef C_IN
++# define C_IN 1 /* ns_c_in */
++#endif
++#ifndef C_CHAOS
++# define C_CHAOS 3 /* ns_c_chaos */
++#endif
++#ifndef C_HS
++# define C_HS 4 /* ns_c_hs */
++#endif
++#ifndef C_NONE
++# define C_NONE 254 /* ns_c_none */
++#endif
++#ifndef C_ANY
++# define C_ANY 255 /* ns_c_any */
++#endif
++
++
++/* types */
++#ifndef T_A
++# define T_A 1 /* ns_t_a */
++#endif
++#ifndef T_NS
++# define T_NS 2 /* ns_t_ns */
++#endif
++#ifndef T_MD
++# define T_MD 3 /* ns_t_md */
++#endif
++#ifndef T_MF
++# define T_MF 4 /* ns_t_mf */
++#endif
++#ifndef T_CNAME
++# define T_CNAME 5 /* ns_t_cname */
++#endif
++#ifndef T_SOA
++# define T_SOA 6 /* ns_t_soa */
++#endif
++#ifndef T_MB
++# define T_MB 7 /* ns_t_mb */
++#endif
++#ifndef T_MG
++# define T_MG 8 /* ns_t_mg */
++#endif
++#ifndef T_MR
++# define T_MR 9 /* ns_t_mr */
++#endif
++#ifndef T_NULL
++# define T_NULL 10 /* ns_t_null */
++#endif
++#ifndef T_WKS
++# define T_WKS 11 /* ns_t_wks */
++#endif
++#ifndef T_PTR
++# define T_PTR 12 /* ns_t_ptr */
++#endif
++#ifndef T_HINFO
++# define T_HINFO 13 /* ns_t_hinfo */
++#endif
++#ifndef T_MINFO
++# define T_MINFO 14 /* ns_t_minfo */
++#endif
++#ifndef T_MX
++# define T_MX 15 /* ns_t_mx */
++#endif
++#ifndef T_TXT
++# define T_TXT 16 /* ns_t_txt */
++#endif
++#ifndef T_RP
++# define T_RP 17 /* ns_t_rp */
++#endif
++#ifndef T_AFSDB
++# define T_AFSDB 18 /* ns_t_afsdb */
++#endif
++#ifndef T_X25
++# define T_X25 19 /* ns_t_x25 */
++#endif
++#ifndef T_ISDN
++# define T_ISDN 20 /* ns_t_isdn */
++#endif
++#ifndef T_RT
++# define T_RT 21 /* ns_t_rt */
++#endif
++#ifndef T_NSAP
++# define T_NSAP 22 /* ns_t_nsap */
++#endif
++#ifndef T_NSAP_PTR
++# define T_NSAP_PTR 23 /* ns_t_nsap_ptr */
++#endif
++#ifndef T_SIG
++# define T_SIG 24 /* ns_t_sig */
++#endif
++#ifndef T_KEY
++# define T_KEY 25 /* ns_t_key */
++#endif
++#ifndef T_PX
++# define T_PX 26 /* ns_t_px */
++#endif
++#ifndef T_GPOS
++# define T_GPOS 27 /* ns_t_gpos */
++#endif
++#ifndef T_AAAA
++# define T_AAAA 28 /* ns_t_aaaa */
++#endif
++#ifndef T_LOC
++# define T_LOC 29 /* ns_t_loc */
++#endif
++#ifndef T_NXT
++# define T_NXT 30 /* ns_t_nxt */
++#endif
++#ifndef T_EID
++# define T_EID 31 /* ns_t_eid */
++#endif
++#ifndef T_NIMLOC
++# define T_NIMLOC 32 /* ns_t_nimloc */
++#endif
++#ifndef T_SRV
++# define T_SRV 33 /* ns_t_srv */
++#endif
++#ifndef T_ATMA
++# define T_ATMA 34 /* ns_t_atma */
++#endif
++#ifndef T_NAPTR
++# define T_NAPTR 35 /* ns_t_naptr */
++#endif
++#ifndef T_KX
++# define T_KX 36 /* ns_t_kx */
++#endif
++#ifndef T_CERT
++# define T_CERT 37 /* ns_t_cert */
++#endif
++#ifndef T_A6
++# define T_A6 38 /* ns_t_a6 */
++#endif
++#ifndef T_DNAME
++# define T_DNAME 39 /* ns_t_dname */
++#endif
++#ifndef T_SINK
++# define T_SINK 40 /* ns_t_sink */
++#endif
++#ifndef T_OPT
++# define T_OPT 41 /* ns_t_opt */
++#endif
++#ifndef T_APL
++# define T_APL 42 /* ns_t_apl */
++#endif
++#ifndef T_DS
++# define T_DS 43 /* ns_t_ds */
++#endif
++#ifndef T_SSHFP
++# define T_SSHFP 44 /* ns_t_sshfp */
++#endif
++#ifndef T_RRSIG
++# define T_RRSIG 46 /* ns_t_rrsig */
++#endif
++#ifndef T_NSEC
++# define T_NSEC 47 /* ns_t_nsec */
++#endif
++#ifndef T_DNSKEY
++# define T_DNSKEY 48 /* ns_t_dnskey */
++#endif
++#ifndef T_TKEY
++# define T_TKEY 249 /* ns_t_tkey */
++#endif
++#ifndef T_TSIG
++# define T_TSIG 250 /* ns_t_tsig */
++#endif
++#ifndef T_IXFR
++# define T_IXFR 251 /* ns_t_ixfr */
++#endif
++#ifndef T_AXFR
++# define T_AXFR 252 /* ns_t_axfr */
++#endif
++#ifndef T_MAILB
++# define T_MAILB 253 /* ns_t_mailb */
++#endif
++#ifndef T_MAILA
++# define T_MAILA 254 /* ns_t_maila */
++#endif
++#ifndef T_ANY
++# define T_ANY 255 /* ns_t_any */
++#endif
++#ifndef T_ZXFR
++# define T_ZXFR 256 /* ns_t_zxfr */
++#endif
++#ifndef T_CAA
++# define T_CAA 257 /* ns_t_caa */
++#endif
++#ifndef T_MAX
++# define T_MAX 65536 /* ns_t_max */
++#endif
++
++
++#endif /* ARES_NAMESER_H */
+
+From db4643979ee676b3a3d6cdf2fb597d399cf8013f Mon Sep 17 00:00:00 2001
+From: Felix Yan <felixonmars@archlinux.org>
+Date: Fri, 13 Aug 2021 00:01:59 +0800
+Subject: [PATCH 2/2] build: ignore cpplint for third-party ares_nameser.h
+
+---
+ Makefile | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/Makefile b/Makefile
+index ec4c774748cd..c418995c53c1 100644
+--- a/Makefile
++++ b/Makefile
+@@ -1289,6 +1289,7 @@ jslint-ci: lint-js-ci
+ LINT_CPP_ADDON_DOC_FILES_GLOB = test/addons/??_*/*.cc test/addons/??_*/*.h
+ LINT_CPP_ADDON_DOC_FILES = $(wildcard $(LINT_CPP_ADDON_DOC_FILES_GLOB))
+ LINT_CPP_EXCLUDE ?=
++LINT_CPP_EXCLUDE += src/ares_nameser.h
+ LINT_CPP_EXCLUDE += src/node_root_certs.h
+ LINT_CPP_EXCLUDE += $(LINT_CPP_ADDON_DOC_FILES)
+ LINT_CPP_EXCLUDE += $(wildcard test/js-native-api/??_*/*.cc test/js-native-api/??_*/*.h test/node-api/??_*/*.cc test/node-api/??_*/*.h)
diff --git a/testing/noggin-model/APKBUILD b/testing/noggin-model/APKBUILD
new file mode 100644
index 00000000000..f8b3a9dd2aa
--- /dev/null
+++ b/testing/noggin-model/APKBUILD
@@ -0,0 +1,26 @@
+# Contributor: John Gebbie <me@johngebbie.com>
+# Maintainer: John Gebbie <me@johngebbie.com>
+pkgname=noggin-model
+pkgver=0.1
+pkgrel=0
+pkgdesc="Face landmark tracking model"
+url="https://sr.ht/~geb/noggin"
+arch="noarch"
+license="BSD-2-Clause"
+subpackages="$pkgname-lightweight"
+source="noggin-$pkgver.tar.gz::https://git.sr.ht/~geb/noggin/archive/$pkgver.tar.gz"
+builddir="$srcdir/noggin-$pkgver"
+options="!check" # just data
+
+package() {
+ install -Dm644 models/lm_model3_opt.onnx -t "$pkgdir"/usr/share/noggin-models
+ install -Dm644 models/lm_model0_opt.onnx -t "$pkgdir"/usr/share/noggin-models
+}
+
+lightweight() {
+ amove usr/share/noggin-models/lm_model0_opt.onnx
+}
+
+sha512sums="
+5da081eb8cb51ac3460d7e4c427a844ca95f50f768a9ada9e5fde2644b1cc51ae9f2745eccf88ecf0f49a6fd5c1fcc36d827ee1f32d1c4550fe65547f9baaf09 noggin-0.1.tar.gz
+"
diff --git a/testing/noggin/APKBUILD b/testing/noggin/APKBUILD
new file mode 100644
index 00000000000..c62c1fbb63f
--- /dev/null
+++ b/testing/noggin/APKBUILD
@@ -0,0 +1,37 @@
+# Contributor: John Gebbie <me@johngebbie.com>
+# Maintainer: John Gebbie <me@johngebbie.com>
+pkgname=noggin
+pkgver=0.1
+pkgrel=7
+pkgdesc="Face tracking utility, often for playing games"
+url="https://sr.ht/~geb/noggin"
+# limited by onnxruntime and opencv
+arch="all !x86 !s390x !riscv64 !ppc64le"
+license="GPL-3.0-only"
+depends="onnxruntime"
+makedepends="go scdoc opencv-dev"
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://git.sr.ht/~geb/noggin/archive/$pkgver.tar.gz"
+options="!check" # no test suite
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+export NOGGIN_VERSION="$pkgver"
+export NOGGIN_MODEL_PACKAGE=noggin-model
+export NOGGIN_SKIP_CHECKS=yes
+export NOGGIN_SKIP_EXAMPLES=yes
+
+build() {
+ NOGGIN_SKIP_INSTALL=yes ./install.sh "$pkgdir" /usr/bin
+}
+
+package() {
+ install -Dm755 noggin -t "$pkgdir/usr/bin"
+ NOGGIN_SKIP_BINARY=yes NOGGIN_SKIP_MODELS=yes ./install.sh "$pkgdir" /usr/bin
+}
+
+sha512sums="
+5da081eb8cb51ac3460d7e4c427a844ca95f50f768a9ada9e5fde2644b1cc51ae9f2745eccf88ecf0f49a6fd5c1fcc36d827ee1f32d1c4550fe65547f9baaf09 noggin-0.1.tar.gz
+"
diff --git a/testing/noice/APKBUILD b/testing/noice/APKBUILD
index 9eea829fddf..bf6586cbafa 100644
--- a/testing/noice/APKBUILD
+++ b/testing/noice/APKBUILD
@@ -3,7 +3,7 @@
# Maintainer: sin <sin@2f30.org>
pkgname=noice
pkgver=0.8
-pkgrel=0
+pkgrel=1
pkgdesc="A simple file browser"
url="https://git.2f30.org/noice"
arch="all"
diff --git a/testing/nom/APKBUILD b/testing/nom/APKBUILD
new file mode 100644
index 00000000000..ec2fc1b2bde
--- /dev/null
+++ b/testing/nom/APKBUILD
@@ -0,0 +1,41 @@
+# Contributor: Tuan Anh Tran <me@tuananh.org>
+# Maintainer: Tuan Anh Tran <me@tuananh.org>
+pkgname=nom
+pkgver=2.1.4
+pkgrel=0
+pkgdesc="RSS reader for the terminal"
+url="https://github.com/guyfedwards/nom"
+arch="all"
+depends="glow"
+license="GPL-3.0-or-later"
+makedepends="go"
+# bumping go-sqlite in go.{mod,sum} to solve issue with musl. ref: https://github.com/mattn/go-sqlite3/issues/1164
+source="$pkgname-$pkgver.tar.gz::https://github.com/guyfedwards/nom/archive/refs/tags/v$pkgver.tar.gz
+ update-go-sqlite3.patch
+ "
+builddir="$srcdir/nom-$pkgver/"
+
+export GOFLAGS="$GOFLAGS -modcacherw"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ msg "Building nom"
+ go build -o nom cmd/nom/main.go
+}
+
+check() {
+ go test -v ./internal/...
+}
+
+package() {
+ install -Dm0755 nom -t "$pkgdir"/usr/bin/
+ install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+ install -Dm644 -t "$pkgdir"/usr/share/doc/"$pkgname" README.md
+}
+
+sha512sums="
+3dde1e13cac6e7d5731c85c40e5ed992a5fbe1705f1910e2cfc0f396d90382f272a4359d30a97e2d92e1efcd4ea0361226ca25698a03df3095fa6b432f62e1ef nom-2.1.4.tar.gz
+422329cfba5655f62061bbff64a8227d891b0fa6d3a49a9d307bbe033b47889a871a97cea2c45ca069869a3604f073f72734337a9d583d7ece9d01e9b6585216 update-go-sqlite3.patch
+"
diff --git a/testing/nom/update-go-sqlite3.patch b/testing/nom/update-go-sqlite3.patch
new file mode 100644
index 00000000000..8e574d2c537
--- /dev/null
+++ b/testing/nom/update-go-sqlite3.patch
@@ -0,0 +1,28 @@
+diff --git a/go.mod b/go.mod
+index 554391e..ab4e276 100644
+--- a/go.mod
++++ b/go.mod
+@@ -9,7 +9,7 @@ require (
+ github.com/charmbracelet/glamour v0.5.0
+ github.com/charmbracelet/lipgloss v0.6.0
+ github.com/jessevdk/go-flags v1.4.0
+- github.com/mattn/go-sqlite3 v1.14.16
++ github.com/mattn/go-sqlite3 v1.14.22
+ github.com/mmcdole/gofeed v1.1.3
+ golang.org/x/term v0.4.0
+ gopkg.in/yaml.v3 v3.0.1
+diff --git a/go.sum b/go.sum
+index 3c096c9..c586418 100644
+--- a/go.sum
++++ b/go.sum
+@@ -62,8 +62,8 @@ github.com/mattn/go-runewidth v0.0.12/go.mod h1:RAqKPSqVFrSLVXbA8x7dzmKdmGzieGRC
+ github.com/mattn/go-runewidth v0.0.13/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w=
+ github.com/mattn/go-runewidth v0.0.14 h1:+xnbZSEeDbOIg5/mE6JF0w6n9duR1l3/WmbinWVwUuU=
+ github.com/mattn/go-runewidth v0.0.14/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w=
+-github.com/mattn/go-sqlite3 v1.14.16 h1:yOQRA0RpS5PFz/oikGwBEqvAWhWg5ufRz4ETLjwpU1Y=
+-github.com/mattn/go-sqlite3 v1.14.16/go.mod h1:2eHXhiwb8IkHr+BDWZGa96P6+rkvnG63S2DGjv9HUNg=
++github.com/mattn/go-sqlite3 v1.14.22 h1:2gZY6PC6kBnID23Tichd1K+Z0oS6nE/XwU+Vz/5o4kU=
++github.com/mattn/go-sqlite3 v1.14.22/go.mod h1:Uh1q+B4BYcTPb+yiD3kU8Ct7aC0hY9fxUwlHK0RXw+Y=
+ github.com/microcosm-cc/bluemonday v1.0.17 h1:Z1a//hgsQ4yjC+8zEkV8IWySkXnsxmdSY642CTFQb5Y=
+ github.com/microcosm-cc/bluemonday v1.0.17/go.mod h1:Z0r70sCuXHig8YpBzCc5eGHAap2K7e/u082ZUpDRRqM=
+ github.com/mmcdole/gofeed v1.1.3 h1:pdrvMb18jMSLidGp8j0pLvc9IGziX4vbmvVqmLH6z8o=
diff --git a/testing/normaliz/APKBUILD b/testing/normaliz/APKBUILD
new file mode 100644
index 00000000000..1f93b257b19
--- /dev/null
+++ b/testing/normaliz/APKBUILD
@@ -0,0 +1,51 @@
+# Contributor: Jakob Meier <comcloudway@ccw.icu>
+# Maintainer: Jakob Meier <comcloudway@ccw.icu>
+pkgname=normaliz
+pkgver=3.10.2
+pkgrel=0
+pkgdesc="Normaliz is an open source tool for computations."
+url="https://www.normaliz.uni-osnabrueck.de/"
+# s390x: flint, libarb, libantic
+arch="all !s390x"
+license="GPL-3.0"
+makedepends="
+ boost-dev
+ diffutils
+ flint-dev
+ gmp-dev
+ libantic-dev
+ libarb-dev
+ "
+subpackages="$pkgname-dev $pkgname-libs"
+source="
+ normaliz-$pkgver.tar.gz::https://github.com/Normaliz/Normaliz/releases/download/v$pkgver/normaliz-$pkgver.tar.gz
+ "
+
+build() {
+ # math
+ export CFLAGS="$CFLAGS -O3 -flto=auto"
+ export CXXFLAGS="$CXXFLAGS -O3 -flto=auto"
+
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var \
+ --disable-static
+
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+e9b6fdc699376e7d4245d100d600b5931fbf4ea0d8086144fe148a4f17210324d1f0cbaa2a4ed9e10fc1977302f083442ad27e94a4dfd8ec9015f22f696d7685 normaliz-3.10.2.tar.gz
+"
diff --git a/testing/noson-app/APKBUILD b/testing/noson-app/APKBUILD
index 36155a2c063..c56108e92be 100644
--- a/testing/noson-app/APKBUILD
+++ b/testing/noson-app/APKBUILD
@@ -1,13 +1,16 @@
# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
# Contributor: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
pkgname=noson-app
-pkgver=5.0.8
-pkgrel=0
+pkgver=5.4.1
+pkgrel=1
pkgdesc="The essential to control music from your SONOS devices on Linux platforms"
url="https://janbar.github.io/noson-app/"
-arch="all !armhf" # Missing Qt stuff
+# armhf: Missing Qt stuff
+# riscv64: truncated relocation
+arch="all !armhf !riscv64"
license="GPL-3.0-only"
subpackages="$pkgname-dbg"
+depends="qt5-qtsvg"
makedepends="
cmake
flac-dev
@@ -17,6 +20,7 @@ makedepends="
qt5-qtdeclarative-dev
qt5-qtquickcontrols2-dev
qt5-qtsvg-dev
+ samurai
"
source="
$pkgname-$pkgver.tar.gz::https://github.com/janbar/noson-app/archive/$pkgver.tar.gz
@@ -24,20 +28,20 @@ source="
options="!check" # No unit tests
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
-DBUILD_SHARED_LIBS=1 \
-DBUILD_DEPENDENCIES=0 \
-DBUILD_LIBNOSON=0
- make -C build
+ cmake --build build
}
package() {
- make DESTDIR="$pkgdir" install -C build
+ DESTDIR="$pkgdir" cmake --install build
}
sha512sums="
-e5416d5dfb5deb6c196af8557069b20bf57dcffa442297abed95593175b2016def24e65fb5136788e12457ec03c769bf0ef02359f897beb930057f0ba84d788d noson-app-5.0.8.tar.gz
+dbddb96f3e0720c3d9306d34466575d64be622250345ff0d45589abbdfc6f4a777a3fe1314c023ac5240b208f865dd7886c8ef206bb81b85262e5172a72f9441 noson-app-5.4.1.tar.gz
"
diff --git a/testing/noson/APKBUILD b/testing/noson/APKBUILD
index 2671e0a01e5..704ae5d8856 100644
--- a/testing/noson/APKBUILD
+++ b/testing/noson/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
# Contributor: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
pkgname=noson
-pkgver=2.8.6
+pkgver=2.10.3
pkgrel=0
pkgdesc="An easy client interface to drive SONOS player"
url="https://github.com/janbar/noson"
@@ -11,28 +11,30 @@ subpackages="$pkgname-dev $pkgname-dbg"
makedepends="
cmake
flac-dev
- openssl-dev
+ openssl-dev>3
pulseaudio-dev
+ samurai
zlib-dev
"
source="
$pkgname-$pkgver.tar.gz::https://github.com/janbar/noson/archive/$pkgver.tar.gz
+ gcc12.patch
"
options="!check" # No unit tests
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
-DBUILD_SHARED_LIBS=1
- make -C build
+ cmake --build build
}
package() {
- make DESTDIR="$pkgdir" install -C build
+ DESTDIR="$pkgdir" cmake --install build
}
sha512sums="
-88cb6b60eab117ffb3e55f64e99349c73704272b8ab1595ca06ba1bd4027636116673bbfcdf67f8790f0aa59fd0b2bc77522ab87e62f678431126d5cfa4d7973 noson-2.8.6.tar.gz
+5cfd459b317ad5320311fa25377b1daabc3744fe7a6b78a29d7e9e28f9bb6c2d248b97093f775818e4b9868a30a5b3952210d28d3870fb283d4b7a18111f1b01 noson-2.10.3.tar.gz
+18dc5e56f4a08be910cdae6ee6edf0c10c5864ba8712e4d21d357ea2e14bc9f23124b9699c9bf760972855fc1a28f64c071ac5a00b61d22da1bcd442cfe9eaec gcc12.patch
"
diff --git a/testing/noson/gcc12.patch b/testing/noson/gcc12.patch
new file mode 100644
index 00000000000..edaac4dc711
--- /dev/null
+++ b/testing/noson/gcc12.patch
@@ -0,0 +1,13 @@
+diff --git a/noson/src/private/os/threads/timeout.h b/noson/src/private/os/threads/timeout.h
+index f0c3453..d65fcd7 100644
+--- a/noson/src/private/os/threads/timeout.h
++++ b/noson/src/private/os/threads/timeout.h
+@@ -26,6 +26,8 @@
+ #include <mach/mach_time.h>
+ #endif
+
++#include <time.h>
++
+ #ifdef NSROOT
+ namespace NSROOT {
+ #endif
diff --git a/testing/novnc/APKBUILD b/testing/novnc/APKBUILD
deleted file mode 100644
index 7d3935d1989..00000000000
--- a/testing/novnc/APKBUILD
+++ /dev/null
@@ -1,46 +0,0 @@
-# Contributor: Andre Bierwolf <a.b.bierwolf@gmail.com>
-# Maintainer: Andre Bierwolf <a.b.bierwolf@gmail.com>
-pkgname=novnc
-_pkgname=noVNC
-pkgver=1.3.0
-pkgrel=0
-pkgdesc="VNC client using HTML5 (WebSockets, Canvas) with encryption (wss://) support"
-url="https://kanaka.github.io/noVNC/"
-arch="noarch"
-license="MPL-2.0"
-depends="websockify>=0.8.0-r2 net-tools"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/novnc/noVNC/archive/v$pkgver.tar.gz
- alpine-specific-launch.js.patch"
-builddir="$srcdir/$_pkgname-$pkgver"
-options="!check"
-
-package() {
- mkdir -p "$pkgdir"/usr/share/$pkgname
- cd "$pkgdir"/usr/share/$pkgname
-
- cp -r "$builddir"/* .
-
- # Clean up package.
- rm utils/README.md
-
- # Move license files.
- mkdir -p "$pkgdir"/usr/share/licenses/$pkgname
- mv LICENSE.txt docs/LICENSE.* "$pkgdir"/usr/share/licenses/novnc/
-
- # Move documentation.
- mkdir -p "$pkgdir"/usr/share/doc
- mv docs "$pkgdir"/usr/share/doc/$pkgname
- mv README.md "$pkgdir"/usr/share/doc/$pkgname/
-
- # Install launch.sh to /usr/bin.
- install -D -m 755 utils/novnc_proxy "$pkgdir"/usr/bin/novnc_server
-
- # Remove irrelevant utils.
- rm -r utils
-}
-
-sha512sums="
-2c9eb019bd9c86a0ffb716eba06e8f05bc522c37561e0acc7f88a66188c617ebc54f4cc9220897c241280ba2ed5919a2050a94eeb3da2c030bde43af0bd92c51 novnc-1.3.0.tar.gz
-705022507f8083091161f5fdf46b868aec81e4304c1b908084de65515c9bd825bec3629bdd2dd3f6e49dccdf7bab4ef0d8b8bf7c6aaef1ce92282b671210a59e alpine-specific-launch.js.patch
-"
diff --git a/testing/novnc/alpine-specific-launch.js.patch b/testing/novnc/alpine-specific-launch.js.patch
deleted file mode 100644
index 423a8cc8341..00000000000
--- a/testing/novnc/alpine-specific-launch.js.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-diff --git a/utils/novnc_proxy b/utils/novnc_proxy
-index 0900f7e..6229dc1 100755
---- a/utils/novnc_proxy
-+++ b/utils/novnc_proxy
-@@ -1,4 +1,4 @@
--#!/usr/bin/env bash
-+#!/bin/sh
-
- # Copyright (C) 2018 The noVNC Authors
- # Licensed under MPL 2.0 or any later version (see LICENSE.txt)
-@@ -180,7 +180,7 @@ echo "Starting webserver and WebSockets proxy on port ${PORT}"
- ${WEBSOCKIFY} ${SYSLOG_ARG} ${SSLONLY} --web ${WEB} ${CERT:+--cert ${CERT}} ${KEY:+--key ${KEY}} ${PORT} ${VNC_DEST} ${HEARTBEAT_ARG} ${IDLETIMEOUT_ARG} ${RECORD_ARG} ${TIMEOUT_ARG} &
- proxy_pid="$!"
- sleep 1
--if ! ps -p ${proxy_pid} >/dev/null; then
-+if [ -z "$proxy_pid" ] || ! ps -o pid= | grep -qw ${proxy_pid}; then
- proxy_pid=
- echo "Failed to start WebSockets proxy"
- exit 1
diff --git a/testing/nsh/APKBUILD b/testing/nsh/APKBUILD
index af183c8c532..49394ad5304 100644
--- a/testing/nsh/APKBUILD
+++ b/testing/nsh/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=nsh
pkgver=0.4.2
-pkgrel=0
+pkgrel=1
pkgdesc="A command-line shell like fish, but POSIX compatible"
url="https://github.com/nuta/nsh"
arch="aarch64 armhf armv7 ppc64le x86 x86_64" # limited by rust/cargo
@@ -10,22 +10,23 @@ license="CC0-1.0 OR MIT"
# bash is needed for completion
depends="bash"
checkdepends="python3 py3-termcolor"
-makedepends="cargo"
+makedepends="cargo cargo-auditable"
install="$pkgname.post-install $pkgname.pre-deinstall"
subpackages="$pkgname-dbg"
source="https://github.com/nuta/nsh/archive/v$pkgver/nsh-$pkgver.tar.gz"
+
prepare() {
default_prepare
# Optimize for size (1.9 -> 1.4 MiB).
sed -i 's/^opt-level\s*=.*/opt-level = "z"/' Cargo.toml
- cargo fetch --locked
+ cargo fetch --target="$CTARGET" --locked
}
build() {
- cargo build --release --frozen
+ cargo auditable build --release --frozen
}
check() {
@@ -37,7 +38,7 @@ check() {
}
package() {
- cargo install --locked --offline --path . --root="$pkgdir/usr"
+ cargo auditable install --locked --offline --path . --root="$pkgdir/usr"
rm "$pkgdir"/usr/.crates*
}
diff --git a/testing/nsjail/APKBUILD b/testing/nsjail/APKBUILD
new file mode 100644
index 00000000000..4b15bf9c337
--- /dev/null
+++ b/testing/nsjail/APKBUILD
@@ -0,0 +1,43 @@
+# Contributor: John Vogel <jvogel4@stny.rr.com>
+# Maintainer: John Vogel <jvogel4@stny.rr.com>
+pkgname=nsjail
+pkgver=3.4
+pkgrel=2
+pkgdesc="A light-weight process isolation tool"
+url="https://github.com/google/nsjail"
+# upstream supported architectures
+arch="armhf armv7 aarch64 riscv64 x86 x86_64"
+license="Apache-2.0"
+makedepends="bison flex linux-headers abseil-cpp-dev libnl3-dev protobuf-dev libbsd-dev"
+options="!check" # no tests
+subpackages="$pkgname-doc"
+_kafelver=1af0975af45ca4404f357b9a4e1636f53a01bfd3
+source="https://github.com/google/nsjail/archive/$pkgver/nsjail-$pkgver.tar.gz
+ https://github.com/google/kafel/archive/$_kafelver/kafel-$_kafelver.tar.gz
+ protobuf-23.patch
+ "
+
+prepare() {
+ default_prepare
+ mv "$srcdir"/kafel-"$_kafelver"/* "$builddir"/kafel/
+}
+
+build() {
+ make
+}
+
+package() {
+ install -D -t "$pkgdir"/usr/bin nsjail
+ install -D -t "$pkgdir"/usr/share/man/man1 nsjail.1
+ install -D -t "$pkgdir"/usr/share/doc/nsjail README.md LICENSE
+ install -d "$pkgdir"/usr/share/doc/nsjail/configs
+ for config in configs/*; do
+ install -D -t "$pkgdir"/usr/share/doc/nsjail/configs "$config"
+ done
+}
+
+sha512sums="
+085006762a02408c9e1c3ea713905230fda0c240ca553e3891b4c705abecb83bf9cb4439413c61b4979bdc1a8f2de708a6ee5dbf487cad8a70476f76607d5a36 nsjail-3.4.tar.gz
+521ab57afd6fb21dfff9d2ce20e316007b0dbff952cabc6e86a8071300a6c47351c7fe151c9c8db0c59fa3a27ca45b34934c029a3325252a2cef1b5de72e6e21 kafel-1af0975af45ca4404f357b9a4e1636f53a01bfd3.tar.gz
+1acb9d983a7eaf545a893a1951b711d2b2267131c84f7d3a37f35f69524a29ea0690f42cea65a7f009cc7c9a789c58dab56e189cae07726c7f09a60de5b0f3a8 protobuf-23.patch
+"
diff --git a/testing/nsjail/protobuf-23.patch b/testing/nsjail/protobuf-23.patch
new file mode 100644
index 00000000000..d99148df920
--- /dev/null
+++ b/testing/nsjail/protobuf-23.patch
@@ -0,0 +1,24 @@
+diff --git a/config.cc b/config.cc
+index 0148ab2..7f0b4d7 100644
+--- a/config.cc
++++ b/config.cc
+@@ -302,11 +302,6 @@ static bool parseInternal(nsjconf_t* nsjconf, const nsjail::NsJailConfig& njc) {
+ return true;
+ }
+
+-static void logHandler(
+- google::protobuf::LogLevel level, const char* filename, int line, const std::string& message) {
+- LOG_W("config.cc: '%s'", message.c_str());
+-}
+-
+ bool parseFile(nsjconf_t* nsjconf, const char* file) {
+ LOG_D("Parsing configuration from '%s'", file);
+
+@@ -316,7 +311,6 @@ bool parseFile(nsjconf_t* nsjconf, const char* file) {
+ return false;
+ }
+
+- SetLogHandler(logHandler);
+ google::protobuf::io::FileInputStream input(fd);
+ input.SetCloseOnDelete(true);
+
diff --git a/testing/nsq/APKBUILD b/testing/nsq/APKBUILD
index 329c569af18..36603da41c7 100644
--- a/testing/nsq/APKBUILD
+++ b/testing/nsq/APKBUILD
@@ -1,20 +1,29 @@
# Contributor: Michael Pirogov <vbnet.ru@gmail.com>
# Maintainer: Michael Pirogov <vbnet.ru@gmail.com>
pkgname=nsq
-pkgver=1.2.0
-pkgrel=5
+pkgver=1.3.0
+pkgrel=2
pkgdesc="A realtime distributed messaging platform"
url="https://nsq.io/"
arch="all"
license="MIT"
depends="go"
-options="chmod-clean"
source="$pkgname-$pkgver.tar.gz::https://github.com/nsqio/nsq/archive/v$pkgver.tar.gz
- glibc-test.patch"
+ no-fmt.patch
+ more-test-procs.patch
+ "
+options="net"
-build() {
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+prepare() {
+ default_prepare
go mod download
- export GOPATH="$srcdir/go"
+}
+
+build() {
make
}
@@ -23,12 +32,11 @@ check() {
}
package() {
- cd build
- for file in *; do
- install -sD -m 755 "$file" "$pkgdir"/usr/bin/"$file"
- done
+ install -Dm755 -t "$pkgdir"/usr/bin/ build/*
}
-
-sha512sums="01ef18775a3ee6688fed2c7b85f35099d6b01e9a2f10813b3baa94a6c5a2974abf70ee8d2c6d5aebb6952825ab0a2f986838d3dc35e7b5e06bef3ffa8c0e7c15 nsq-1.2.0.tar.gz
-e0fa26f0a7b412dc4b3e56cb1d557183d86e751862b86f9192fca153232e856713c2cf76f1f063b7595912e4164c7b6e1f33cfec6fab9c7e8e96297646230a22 glibc-test.patch"
+sha512sums="
+5d466c3675dbccd99b5ad4f691968d3396af0a92630b850cd36e9ffb0c8d00a6f43cf5617a0fa0d78876dfd65ae496e79fa72da5707b04397e0444529d2e88d6 nsq-1.3.0.tar.gz
+7d7ac1942dbeea48b90fe9e2a88f06c9d197c0c55949ab435edf5e6b3c174c38357749306232f56f26dc2513d049327242bb03c4b655d75db642f28015ad5b58 no-fmt.patch
+771822f35ba925a1e8a93d3d29c6f8afb9f23e354f50ece7dc360584db52a2c7ba260397827dcc780f3972d7b37d941e910a5702ce8b9c818fc8eeb3eea1265a more-test-procs.patch
+"
diff --git a/testing/nsq/glibc-test.patch b/testing/nsq/glibc-test.patch
deleted file mode 100644
index 58997f554e2..00000000000
--- a/testing/nsq/glibc-test.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- a/test.sh
-+++ b/test.sh.orig
-@@ -1,8 +1,7 @@
--#!/bin/bash
-+#!/bin/sh
- set -e
-
- GOMAXPROCS=1 go test -timeout 90s $(go list ./... | grep -v /vendor/)
--GOMAXPROCS=4 go test -timeout 90s -race $(go list ./... | grep -v /vendor/)
-
- # no tests, but a build is something
- for dir in apps/*/ bench/*/; do
-
diff --git a/testing/nsq/more-test-procs.patch b/testing/nsq/more-test-procs.patch
new file mode 100644
index 00000000000..e45a6800726
--- /dev/null
+++ b/testing/nsq/more-test-procs.patch
@@ -0,0 +1,11 @@
+--- a/test.sh
++++ b/test.sh.orig
+@@ -1,7 +1,7 @@
+ #!/bin/sh
+ set -e
+
+-GOMAXPROCS=1 go test -timeout 90s ./...
++GOMAXPROCS=4 go test -timeout 90s ./...
+
+ if [ "$GOARCH" = "amd64" ] || [ "$GOARCH" = "arm64" ]; then
+ # go test: -race is only supported on linux/amd64, linux/ppc64le,
diff --git a/testing/nsq/no-fmt.patch b/testing/nsq/no-fmt.patch
new file mode 100644
index 00000000000..1f2931e0cba
--- /dev/null
+++ b/testing/nsq/no-fmt.patch
@@ -0,0 +1,11 @@
+diff --git a/test.sh b/test.sh
+index 42fe934..78f7a94 100755
+--- a/test.sh
++++ b/test.sh
+@@ -23,5 +23,5 @@ done
+ FMTDIFF="$(find apps internal nsqd nsqlookupd -name '*.go' -exec gofmt -d '{}' ';')"
+ if [ -n "$FMTDIFF" ]; then
+ printf '%s\n' "$FMTDIFF"
+- exit 1
++ #exit 1
+ fi
diff --git a/testing/nsss/APKBUILD b/testing/nsss/APKBUILD
deleted file mode 100644
index 79bf35c3d7c..00000000000
--- a/testing/nsss/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Contributor: Leo <thinkabit.ukim@gmail.com>
-# Maintainer: Laurent Bercot <ska-devel@skarnet.org>
-pkgname=nsss
-pkgver=0.2.0.1
-pkgrel=0
-pkgdesc=" A small and statically linkable alternative to Name Service Switch"
-url="https://skarnet.org/software/nsss"
-arch="all"
-license="ISC"
-makedepends="skalibs-dev>=2.11"
-subpackages="$pkgname-dev $pkgname-doc"
-source="https://skarnet.org/software/nsss/nsss-$pkgver.tar.gz"
-
-build() {
- ./configure \
- --enable-shared \
- --enable-static \
- --disable-allstatic \
- --prefix=/usr \
- --libdir=/usr/lib \
- --libexecdir="/usr/lib/$pkgname" \
- --with-dynlib=/lib
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-doc() {
- default_doc
- mkdir -p "$subpkgdir/usr/share/doc"
- cp -a "$builddir/doc" "$subpkgdir/usr/share/doc/$pkgname"
-}
-sha512sums="
-5b6968fb9eff9adc28b05a658a4dedeb6f208893c1308644f4df62c9c9cf065098c6f7044841ef2d51c38f1a2f2fc6548b9b9fc4fda9ecde44fd9fa73bedafc2 nsss-0.2.0.1.tar.gz
-"
diff --git a/testing/nsxiv/APKBUILD b/testing/nsxiv/APKBUILD
deleted file mode 100644
index 02bd39b2047..00000000000
--- a/testing/nsxiv/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Contributor: Dmitry Zakharchenko <dmitz@disroot.org>
-# Maintainer: Dmitry Zakharchenko <dmitz@disroot.org>
-pkgname=nsxiv
-pkgver=29
-pkgrel=0
-pkgdesc="Neo Simple X Image Viewer"
-url="https://nsxiv.github.io/nsxiv/"
-arch="all"
-license="GPL-2.0-or-later"
-options="!check" # no test suite
-makedepends="
- giflib-dev
- imlib2-dev
- libexif-dev
- libwebp-dev
- libx11-dev
- libxft-dev
- "
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/nsxiv/nsxiv/archive/v$pkgver.tar.gz"
-
-prepare() {
- default_prepare
- ln -s config.def.h config.h
-}
-
-build() {
- make
-}
-
-package() {
- make PREFIX=/usr DESTDIR="$pkgdir" install-all
-}
-
-sha512sums="
-d891fc0885f280a622401e105dc1ed9ba39e40f3e760e3e0cd34ae79fdb32187b1d3dc15590bbefd68a18db2aa12795433907e6e744561cc891fc03e7a1f1e94 nsxiv-29.tar.gz
-"
diff --git a/testing/ntfy-alertmanager/APKBUILD b/testing/ntfy-alertmanager/APKBUILD
new file mode 100644
index 00000000000..373bbabc1ca
--- /dev/null
+++ b/testing/ntfy-alertmanager/APKBUILD
@@ -0,0 +1,38 @@
+# Contributor: fossdd <fossdd@pwned.life>
+# Maintainer: fossdd <fossdd@pwned.life>
+pkgname=ntfy-alertmanager
+pkgver=0.3.0
+pkgrel=0
+pkgdesc="A bridge between ntfy and Alertmanager"
+url="https://hub.xenrox.net/~xenrox/ntfy-alertmanager"
+arch="all"
+license="AGPL3"
+makedepends="go"
+install="$pkgname.pre-install"
+subpackages="$pkgname-openrc"
+source="https://git.xenrox.net/~xenrox/ntfy-alertmanager/refs/download/v$pkgver/ntfy-alertmanager-$pkgver.tar.gz
+ ntfy-alertmanager.initd
+ "
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ go build -o ntfy-alertmanager
+}
+
+check() {
+ go test ./...
+}
+
+package() {
+ install -Dm755 ntfy-alertmanager "$pkgdir"/usr/bin/ntfy-alertmanager
+ install -Dm644 config.scfg "$pkgdir"/etc/ntfy-alertmanager/config
+ install -Dm755 "$srcdir"/ntfy-alertmanager.initd "$pkgdir"/etc/init.d/ntfy-alertmanager
+}
+
+sha512sums="
+8bde22778aae862a8fbde0c5fc8f966ee55b39cbc9f28b7983af356ea8ab8522030a4477df2bd47f3e6aea295a5c2f18a69657977b6760b78355eeb748646ddf ntfy-alertmanager-0.3.0.tar.gz
+843b3e00af5019d1af9330717598631cf76d8876bb373cc31419173897e01d889ffa3dab0c29ac91e15eec6677ca629b199d0dfc1ffe4e00c5ae895364cbfd7c ntfy-alertmanager.initd
+"
diff --git a/testing/ntfy-alertmanager/ntfy-alertmanager.initd b/testing/ntfy-alertmanager/ntfy-alertmanager.initd
new file mode 100644
index 00000000000..318c4ab4bad
--- /dev/null
+++ b/testing/ntfy-alertmanager/ntfy-alertmanager.initd
@@ -0,0 +1,12 @@
+#!/sbin/openrc-run
+
+name=ntfy-alertmanager
+command="/usr/bin/ntfy-alertmanager"
+command_user="ntfy-alertmanager:ntfy-alertmanager"
+command_background=true
+pidfile="/run/$RC_SVCNAME.pid"
+
+depend() {
+ need net
+ after firewall
+}
diff --git a/testing/ntfy-alertmanager/ntfy-alertmanager.pre-install b/testing/ntfy-alertmanager/ntfy-alertmanager.pre-install
new file mode 100644
index 00000000000..11829150d6d
--- /dev/null
+++ b/testing/ntfy-alertmanager/ntfy-alertmanager.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S ntfy-alertmanager 2>/dev/null
+adduser -S -D -h /dev/null -s /sbin/nologin -G ntfy-alertmanager -g ntfy-alertmanager ntfy-alertmanager 2>/dev/null
+
+exit 0
diff --git a/testing/nuklear/APKBUILD b/testing/nuklear/APKBUILD
index 65552ceff33..902a0661f3c 100644
--- a/testing/nuklear/APKBUILD
+++ b/testing/nuklear/APKBUILD
@@ -1,20 +1,24 @@
# Contributor: Grigory Kirillov <txgk@bk.ru>
-# Maintainer: Grigory Kirillov <txgk@bk.ru>
+# Maintainer: Sergiy Stupar <owner@sestolab.pp.ua>
pkgname=nuklear
-pkgver=4.9.6
+pkgver=4.12.0
pkgrel=0
pkgdesc="A single-header ANSI C cross-platform GUI library"
url="https://immediate-mode-ui.github.io/Nuklear"
arch="noarch"
-license="MIT"
+license="MIT OR Public-Domain"
options="!check" # no test suite
subpackages="$pkgname-doc"
source="$pkgname-$pkgver.tar.gz::https://github.com/Immediate-Mode-UI/Nuklear/archive/refs/tags/$pkgver.tar.gz"
+builddir="$srcdir/Nuklear-$pkgver"
package() {
- cd "$srcdir"/Nuklear-"$pkgver"
- install -Dm644 nuklear.h "$pkgdir"/usr/include/nuklear.h
- install -Dm644 Readme.md "$pkgdir"/usr/share/doc/"$pkgname"/Readme.md
+ install -Dm644 nuklear.h -t "$pkgdir"/usr/include/
+ install -Dm644 Readme.md -t "$pkgdir"/usr/share/doc/$pkgname/
+ install -Dm644 doc/index.html -t "$pkgdir"/usr/share/doc/$pkgname/
+ install -Dm644 src/LICENSE -t "$pkgdir"/usr/share/licenses/$pkgname/
}
-sha512sums="928dcf19a5a2a8d2798a89178f82d04d7e4d7a280d5915bcbcc507f828cf653719279f5949fb45c015c5372d54bfe7a1b6679a781dcca9f3710f85a9d347f160 $pkgname-$pkgver.tar.gz"
+sha512sums="
+571af205d3fca9c698942c96de14a02c8a2c5112b474028ede9dc215191f6d87520fbdc5c0fdb6c45d316df7e27f04d7b2c5ea063cfd57e9c1b62e49aa23140e nuklear-4.12.0.tar.gz
+"
diff --git a/testing/numbat/APKBUILD b/testing/numbat/APKBUILD
new file mode 100644
index 00000000000..ce7a9d5bf48
--- /dev/null
+++ b/testing/numbat/APKBUILD
@@ -0,0 +1,41 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=numbat
+pkgver=1.9.0
+pkgrel=0
+pkgdesc="Statically typed programming language for scientific computations"
+url="https://numbat.dev/"
+arch="all !s390x" # nix crate fails to build
+license="Apache-2.0"
+makedepends="cargo cargo-auditable openssl-dev"
+subpackages="$pkgname-doc"
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/sharkdp/numbat/archive/refs/tags/v$pkgver.tar.gz
+ use-system-openssl.patch
+ "
+
+export OPENSSL_NO_VENDOR=1
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm755 target/release/numbat -t "$pkgdir"/usr/bin/
+ mkdir -p "$pkgdir"/usr/share/doc/$pkgname
+ cp -r examples "$pkgdir"/usr/share/doc/$pkgname/
+}
+
+sha512sums="
+873a78881e62883ac7e296ea044105b2413382188a95e40989333a119cd6ca5d030fbda6dba3f1fcb656891f7694e193395d4daa7e0cca29b8c3b1821bc217b0 numbat-1.9.0.tar.gz
+025bb1315a1dd43d041721e625c4dbc990b38c9491205e67cbe4d2beffe4a62bc909ed4eb4ef6c23b4e98fa9a579a42b9f1a5be5eea746279de8f874e96a7bc0 use-system-openssl.patch
+"
diff --git a/testing/numbat/use-system-openssl.patch b/testing/numbat/use-system-openssl.patch
new file mode 100644
index 00000000000..eb081bd89c6
--- /dev/null
+++ b/testing/numbat/use-system-openssl.patch
@@ -0,0 +1,368 @@
+diff --git a/Cargo.lock b/Cargo.lock
+index cada940..cfddfe0 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -109,9 +109,8 @@ checksum = "0f77d243921b0979fbbd728dd2d5162e68ac8252976797c24eb5b3a6af9090dc"
+ dependencies = [
+ "http",
+ "log",
+- "rustls",
++ "native-tls",
+ "url",
+- "webpki-roots",
+ ]
+
+ [[package]]
+@@ -301,6 +300,22 @@ dependencies = [
+ "windows-sys 0.45.0",
+ ]
+
++[[package]]
++name = "core-foundation"
++version = "0.9.4"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f"
++dependencies = [
++ "core-foundation-sys",
++ "libc",
++]
++
++[[package]]
++name = "core-foundation-sys"
++version = "0.8.6"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f"
++
+ [[package]]
+ name = "cpufeatures"
+ version = "0.2.11"
+@@ -492,6 +507,12 @@ version = "3.0.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "281e452d3bad4005426416cdba5ccfd4f5c1280e10099e21db27f7c1c28347fc"
+
++[[package]]
++name = "fastrand"
++version = "2.0.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5"
++
+ [[package]]
+ name = "fd-lock"
+ version = "4.0.1"
+@@ -518,6 +539,21 @@ version = "1.0.7"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
+
++[[package]]
++name = "foreign-types"
++version = "0.3.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
++dependencies = [
++ "foreign-types-shared",
++]
++
++[[package]]
++name = "foreign-types-shared"
++version = "0.1.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
++
+ [[package]]
+ name = "form_urlencoded"
+ version = "1.2.0"
+@@ -723,6 +759,24 @@ dependencies = [
+ "autocfg",
+ ]
+
++[[package]]
++name = "native-tls"
++version = "0.2.11"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "07226173c32f2926027b63cce4bcd8076c3552846cbe7925f3aaffeac0a3b92e"
++dependencies = [
++ "lazy_static",
++ "libc",
++ "log",
++ "openssl",
++ "openssl-probe",
++ "openssl-sys",
++ "schannel",
++ "security-framework",
++ "security-framework-sys",
++ "tempfile",
++]
++
+ [[package]]
+ name = "nibble_vec"
+ version = "0.1.0"
+@@ -866,6 +920,50 @@ version = "11.1.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "0ab1bc2a289d34bd04a330323ac98a1b4bc82c9d9fcb1e66b63caa84da26b575"
+
++[[package]]
++name = "openssl"
++version = "0.10.63"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "15c9d69dd87a29568d4d017cfe8ec518706046a05184e5aea92d0af890b803c8"
++dependencies = [
++ "bitflags 2.4.1",
++ "cfg-if",
++ "foreign-types",
++ "libc",
++ "once_cell",
++ "openssl-macros",
++ "openssl-sys",
++]
++
++[[package]]
++name = "openssl-macros"
++version = "0.1.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
++dependencies = [
++ "proc-macro2",
++ "quote",
++ "syn",
++]
++
++[[package]]
++name = "openssl-probe"
++version = "0.1.5"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf"
++
++[[package]]
++name = "openssl-sys"
++version = "0.9.99"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "22e1bf214306098e4832460f797824c05d25aacdf896f64a985fb0fd992454ae"
++dependencies = [
++ "cc",
++ "libc",
++ "pkg-config",
++ "vcpkg",
++]
++
+ [[package]]
+ name = "option-ext"
+ version = "0.2.0"
+@@ -878,6 +976,12 @@ version = "2.3.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94"
+
++[[package]]
++name = "pkg-config"
++version = "0.3.29"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "2900ede94e305130c13ddd391e0ab7cbaeb783945ae07a279c268cb05109c6cb"
++
+ [[package]]
+ name = "plotters"
+ version = "0.3.5"
+@@ -1012,6 +1116,15 @@ dependencies = [
+ "bitflags 1.3.2",
+ ]
+
++[[package]]
++name = "redox_syscall"
++version = "0.4.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa"
++dependencies = [
++ "bitflags 1.3.2",
++]
++
+ [[package]]
+ name = "redox_users"
+ version = "0.4.3"
+@@ -1019,7 +1132,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b"
+ dependencies = [
+ "getrandom",
+- "redox_syscall",
++ "redox_syscall 0.2.16",
+ "thiserror",
+ ]
+
+@@ -1052,20 +1165,6 @@ version = "0.8.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f"
+
+-[[package]]
+-name = "ring"
+-version = "0.17.5"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "fb0205304757e5d899b9c2e448b867ffd03ae7f988002e47cd24954391394d0b"
+-dependencies = [
+- "cc",
+- "getrandom",
+- "libc",
+- "spin",
+- "untrusted",
+- "windows-sys 0.48.0",
+-]
+-
+ [[package]]
+ name = "rust-embed"
+ version = "8.0.0"
+@@ -1114,28 +1213,6 @@ dependencies = [
+ "windows-sys 0.48.0",
+ ]
+
+-[[package]]
+-name = "rustls"
+-version = "0.21.8"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "446e14c5cda4f3f30fe71863c34ec70f5ac79d6087097ad0bb433e1be5edf04c"
+-dependencies = [
+- "log",
+- "ring",
+- "rustls-webpki",
+- "sct",
+-]
+-
+-[[package]]
+-name = "rustls-webpki"
+-version = "0.101.7"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765"
+-dependencies = [
+- "ring",
+- "untrusted",
+-]
+-
+ [[package]]
+ name = "rustyline"
+ version = "13.0.0"
+@@ -1191,6 +1268,15 @@ dependencies = [
+ "winapi-util",
+ ]
+
++[[package]]
++name = "schannel"
++version = "0.1.23"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "fbc91545643bcf3a0bbb6569265615222618bdf33ce4ffbbd13c4bbd4c093534"
++dependencies = [
++ "windows-sys 0.52.0",
++]
++
+ [[package]]
+ name = "scopeguard"
+ version = "1.2.0"
+@@ -1198,13 +1284,26 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
+
+ [[package]]
+-name = "sct"
+-version = "0.7.1"
++name = "security-framework"
++version = "2.9.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "05b64fb303737d99b81884b2c63433e9ae28abebe5eb5045dcdd175dc2ecf4de"
++dependencies = [
++ "bitflags 1.3.2",
++ "core-foundation",
++ "core-foundation-sys",
++ "libc",
++ "security-framework-sys",
++]
++
++[[package]]
++name = "security-framework-sys"
++version = "2.9.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414"
++checksum = "e932934257d3b408ed8f30db49d85ea163bfe74961f017f405b025af298f0c7a"
+ dependencies = [
+- "ring",
+- "untrusted",
++ "core-foundation-sys",
++ "libc",
+ ]
+
+ [[package]]
+@@ -1279,12 +1378,6 @@ version = "1.11.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "942b4a808e05215192e39f4ab80813e599068285906cc91aa64f923db842bd5a"
+
+-[[package]]
+-name = "spin"
+-version = "0.9.8"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67"
+-
+ [[package]]
+ name = "strsim"
+ version = "0.10.0"
+@@ -1302,6 +1395,19 @@ dependencies = [
+ "unicode-ident",
+ ]
+
++[[package]]
++name = "tempfile"
++version = "3.8.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7ef1adac450ad7f4b3c28589471ade84f25f731a7a0fe30d71dfa9f60fd808e5"
++dependencies = [
++ "cfg-if",
++ "fastrand",
++ "redox_syscall 0.4.1",
++ "rustix",
++ "windows-sys 0.48.0",
++]
++
+ [[package]]
+ name = "termcolor"
+ version = "1.3.0"
+@@ -1445,12 +1551,6 @@ version = "0.1.11"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "e51733f11c9c4f72aa0c160008246859e340b00807569a0da0e7a1079b27ba85"
+
+-[[package]]
+-name = "untrusted"
+-version = "0.9.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1"
+-
+ [[package]]
+ name = "url"
+ version = "2.4.1"
+@@ -1468,6 +1568,12 @@ version = "0.2.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a"
+
++[[package]]
++name = "vcpkg"
++version = "0.2.15"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426"
++
+ [[package]]
+ name = "version_check"
+ version = "0.9.4"
+@@ -1563,12 +1669,6 @@ dependencies = [
+ "wasm-bindgen",
+ ]
+
+-[[package]]
+-name = "webpki-roots"
+-version = "0.25.2"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "14247bb57be4f377dfb94c72830b8ce8fc6beac03cf4bf7b9732eadd414123fc"
+-
+ [[package]]
+ name = "winapi"
+ version = "0.3.9"
+diff --git a/numbat-exchange-rates/Cargo.toml b/numbat-exchange-rates/Cargo.toml
+index c28a79a..1291b98 100644
+--- a/numbat-exchange-rates/Cargo.toml
++++ b/numbat-exchange-rates/Cargo.toml
+@@ -10,5 +10,5 @@ license = "MIT OR Apache-2.0"
+ rust-version = "1.70"
+
+ [dependencies]
+-attohttpc = { version = "0.26.0", default-features = false, features = ["tls-rustls-webpki-roots"] }
++attohttpc = { version = "0.26.0", default-features = false, features = ["tls-native"] }
+ quick-xml = "0.31.0"
diff --git a/testing/nushell/APKBUILD b/testing/nushell/APKBUILD
deleted file mode 100644
index 702b74a7466..00000000000
--- a/testing/nushell/APKBUILD
+++ /dev/null
@@ -1,46 +0,0 @@
-# Contributor: nibon7 <nibon7@163.com>
-# Maintainer: nibon7 <nibon7@163.com>
-pkgname=nushell
-pkgver=0.63.0
-pkgrel=0
-pkgdesc="A new type of shell"
-url="https://www.nushell.sh"
-# s390x/riscv64 rust/cargo
-arch="x86_64 armv7 armhf aarch64 x86 ppc64le"
-license="MIT"
-makedepends="cargo pkgconf openssl-dev libx11-dev libxcb-dev libgit2-dev"
-subpackages="$pkgname-plugins:_plugins"
-install="$pkgname.post-install $pkgname.post-upgrade $pkgname.pre-deinstall"
-source="$pkgname-$pkgver.tar.gz::https://github.com/nushell/nushell/archive/$pkgver.tar.gz"
-
-prepare() {
- default_prepare
- cargo fetch --locked
-}
-
-build() {
- cargo build --workspace --release --frozen
-}
-
-check() {
- cargo test --workspace --frozen
-}
-
-package() {
- find target/release \
- -maxdepth 1 \
- -executable \
- -type f \
- -name "nu*" \
- -exec install -Dm755 '{}' -t "$pkgdir"/usr/bin/ \;
-}
-
-_plugins() {
- pkgdesc="Nushell plugins"
- depends="nushell"
-
- mkdir -p "$subpkgdir"/usr/bin
- mv "$pkgdir"/usr/bin/nu_plugin_* "$subpkgdir"/usr/bin/
-}
-
-sha512sums="e41b3ecbc1c5709034e66875736dfa153b784263f5f37a2192d42b0f703cfa990e1431310398f0863f68752ff503f5df7238afea922d23e3f68fdaff242733ef nushell-0.63.0.tar.gz"
diff --git a/testing/nushell/nushell.post-install b/testing/nushell/nushell.post-install
deleted file mode 100644
index ddf9b4d4e56..00000000000
--- a/testing/nushell/nushell.post-install
+++ /dev/null
@@ -1,3 +0,0 @@
-#!/bin/sh
-add-shell '/usr/bin/nu'
-exit 0
diff --git a/testing/nushell/nushell.post-upgrade b/testing/nushell/nushell.post-upgrade
deleted file mode 120000
index a023e4e9338..00000000000
--- a/testing/nushell/nushell.post-upgrade
+++ /dev/null
@@ -1 +0,0 @@
-nushell.post-install \ No newline at end of file
diff --git a/testing/nushell/nushell.pre-deinstall b/testing/nushell/nushell.pre-deinstall
deleted file mode 100644
index 8ea90c0456f..00000000000
--- a/testing/nushell/nushell.pre-deinstall
+++ /dev/null
@@ -1,3 +0,0 @@
-#!/bin/sh
-remove-shell '/usr/bin/nu'
-exit 0
diff --git a/testing/nuzzle/APKBUILD b/testing/nuzzle/APKBUILD
new file mode 100644
index 00000000000..5ee72b6a647
--- /dev/null
+++ b/testing/nuzzle/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor:
+# Maintainer: Vladimir Vitkov <vvitkov@gmail.com>
+pkgname=nuzzle
+pkgver=1.5
+pkgrel=0
+# as there is no official versioning code comes from git hash
+# use the hash later on for shortening of commands
+_gitcommit="2fdb5e793cb3e41cd5ef350d757aef7eeba93bda"
+pkgdesc="Lightweight, fast network attack detection IDS and IPS"
+url="https://nuzzle.hackerfactor.com/"
+arch="all"
+license="custom"
+makedepends="g++"
+subpackages="$pkgname-doc"
+options="toolchain !check" # No test suite provided.
+ # Single c file.
+ # Author recommends using g++ for build
+source="$pkgname-$pkgver.zip::https://github.com/hackerfactor/nuzzle/archive/$_gitcommit.zip"
+prepare() {
+ mkdir -p "$builddir"
+ mv "$srcdir"/$pkgname-$_gitcommit/* "$builddir"/
+ default_prepare
+}
+
+build() {
+ g++ -Wall -o nuzzle nuzzle.c
+}
+
+package() {
+ install -m755 -D "$builddir"/nuzzle "$pkgdir"/usr/sbin/nuzzle
+ install -m644 -D "$builddir"/LICENSE.txt "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+ install -m644 -D "$builddir"/README.md "$pkgdir"/usr/share/doc/$pkgname/README.md
+}
+sha512sums="
+7e08bf666634acbd8a8304254073e6c64d880347440050409c70ea3ee5671274bdef16de8ab8b7fcf7c4e12b855cd2db5acddb6231fd4708d16eae2cd241cc58 nuzzle-1.5.zip
+"
diff --git a/testing/nvchecker/APKBUILD b/testing/nvchecker/APKBUILD
new file mode 100644
index 00000000000..7d03179c4df
--- /dev/null
+++ b/testing/nvchecker/APKBUILD
@@ -0,0 +1,59 @@
+# Contributor: fossdd <fossdd@pwned.life>
+# Maintainer: fossdd <fossdd@pwned.life>
+pkgname=nvchecker
+pkgver=2.13.1
+pkgrel=1
+pkgdesc="New version checker for software releases"
+url="https://github.com/lilydjwg/nvchecker"
+arch="noarch"
+license="MIT"
+depends="
+ py3-curl
+ py3-platformdirs
+ py3-structlog
+ py3-tornado
+ python3
+ "
+makedepends="
+ git
+ py3-aiohttp
+ py3-docutils
+ py3-flaky
+ py3-gobject3
+ py3-gpep517
+ py3-pygments
+ py3-setuptools
+ py3-toml
+ py3-wheel
+ "
+checkdepends="
+ py3-pytest-asyncio
+ py3-pytest-httpbin
+ pytest
+ "
+subpackages="$pkgname-pyc $pkgname-doc $pkgname-bash-completion"
+source="$pkgname-$pkgver.tar.gz::https://github.com/lilydjwg/nvchecker/archive/refs/tags/v$pkgver.tar.gz"
+options="!check" # tests fail
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+ make -C docs man
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer "$builddir"/.dist/*.whl
+ .testenv/bin/python3 -m pytest -v
+}
+
+package() {
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
+ install -Dm644 scripts/nvtake.bash_completion "$pkgdir"/usr/share/bash-completion/completions/nvtake
+ install -Dm644 docs/_build/man/nvchecker.1 -t "$pkgdir"/usr/share/man/man1/
+}
+sha512sums="
+df1af3f4d260a6aa8b4e0a71eb22c8d93844ac885ad13da77a15ac9a09c91040b8981cd82225f9279bfb73493a9df70ea69950c0d4633204c997b1edf029380d nvchecker-2.13.1.tar.gz
+"
diff --git a/testing/nvidia-src/AKMBUILD b/testing/nvidia-src/AKMBUILD
deleted file mode 100644
index 9b3a64fab2b..00000000000
--- a/testing/nvidia-src/AKMBUILD
+++ /dev/null
@@ -1,14 +0,0 @@
-modname=nvidia
-modver=515.43.04-r0
-makedepends="linux-headers"
-built_modules="kernel-open/nvidia.ko \
- kernel-open/nvidia-drm.ko \
- kernel-open/nvidia-modeset.ko \
- kernel-open/nvidia-uvm.ko \
- kernel-open/nvidia-peermem.ko"
-
-
-build() {
- cp -r "$srcdir"/* .
- make modules $MAKEFLAGS
-}
diff --git a/testing/nvidia-src/APKBUILD b/testing/nvidia-src/APKBUILD
index b38d26adc2b..c861c741d87 100644
--- a/testing/nvidia-src/APKBUILD
+++ b/testing/nvidia-src/APKBUILD
@@ -1,25 +1,40 @@
# Contributor: Dominika Liberda <ja@sdomi.pl>
# Maintainer: Dominika Liberda <ja@sdomi.pl>
pkgname=nvidia-src
-pkgver=515.43.04
+pkgver=535.86.05
pkgrel=0
pkgdesc="NVIDIA Linux open GPU kernel module source (sources, AKMS)"
url="https://github.com/NVIDIA/open-gpu-kernel-modules"
-arch="noarch"
-license="MIT OR GPL-2.0"
+# x86_64/aarch64 only
+arch="noarch !riscv64 !s390x !armhf !armv7 !x86 !ppc64le"
+license="MIT AND GPL-2.0-or-later"
depends="akms"
-source="nvidia-$pkgver.tar.gz::https://github.com/NVIDIA/open-gpu-kernel-modules/archive/refs/tags/$pkgver.tar.gz
- AKMBUILD"
+source="$pkgname-$pkgver.tar.gz::https://github.com/NVIDIA/open-gpu-kernel-modules/archive/refs/tags/$pkgver.tar.gz"
builddir="$srcdir/open-gpu-kernel-modules-$pkgver"
options="!check" # no tests
package() {
mkdir -p "$pkgdir"/usr/src
cp -r "$builddir" "$pkgdir"/usr/src/nvidia-$pkgver
- install -Dm644 "$srcdir"/AKMBUILD "$pkgdir"/usr/src/nvidia-$pkgver/AKMBUILD
+
+ cat > "$pkgdir"/usr/src/nvidia-$pkgver/AKMBUILD <<EOF
+modname=nvidia
+modver=$pkgver-r$pkgrel
+makedepends="linux-headers"
+built_modules="kernel-open/nvidia.ko \
+ kernel-open/nvidia-drm.ko \
+ kernel-open/nvidia-modeset.ko \
+ kernel-open/nvidia-uvm.ko \
+ kernel-open/nvidia-peermem.ko \
+ "
+
+build() {
+ cp -r "\$srcdir"/* .
+ make modules \$MAKEFLAGS
+}
+EOF
}
sha512sums="
-2a95132cfebe2dd746e2b507829618557a2518b56d8d77628df9f8073f154fab769604b0789e852e4cc6a52f3130b4b637068b0469931464019f8386db48041f nvidia-515.43.04.tar.gz
-c3496f79c4703c19b74f20f31d66a661a5d71c5dd4734597407dfa04316218284748fc10abe5f9bb3b778ef559f0f6705fec1c8c49ca84eae09c8f14409118d0 AKMBUILD
+da1964921f2f0a07e136ad5301b633c01d1e045b5fbb4ebb32f5d57471a89e649a1b653bbbb62e97755d070ce911c442ceaac2fb3d81baa53af75f4123075308 nvidia-src-535.86.05.tar.gz
"
diff --git a/testing/nvim-cmp-buffer/APKBUILD b/testing/nvim-cmp-buffer/APKBUILD
new file mode 100644
index 00000000000..8c972bf7f7d
--- /dev/null
+++ b/testing/nvim-cmp-buffer/APKBUILD
@@ -0,0 +1,25 @@
+# Contributor: Maxim Karasev <mxkrsv@disroot.org>
+# Maintainer: Maxim Karasev <mxkrsv@disroot.org>
+pkgname=nvim-cmp-buffer
+pkgver=0.0.0_git20220810
+_commit=3022dbc9166796b644a841a02de8dd1cc1d311fa
+pkgrel=0
+pkgdesc="nvim-cmp source for buffer words"
+url="https://github.com/hrsh7th/cmp-buffer"
+arch="noarch"
+license="MIT"
+subpackages="$pkgname-doc"
+depends="nvim-cmp"
+source="https://github.com/hrsh7th/cmp-buffer/archive/$_commit/nvim-cmp-$pkgver.tar.gz"
+builddir="$srcdir/cmp-buffer-$_commit"
+options="!check" # no tests
+
+package() {
+ install -d "$pkgdir"/usr/share/nvim/site
+ cp -ra after lua "$pkgdir"/usr/share/nvim/site
+ install -Dm644 README.md "$pkgdir"/usr/share/doc/$pkgname/README.md
+}
+
+sha512sums="
+6ecddcb31b87274f27bc19a3e33fd549bbab139acc65cc1239b3295f9e279207d35b542dcca40c03589097997bec681555861731cf3a09e8a292f34f5cbc2f11 nvim-cmp-0.0.0_git20220810.tar.gz
+"
diff --git a/testing/nvim-cmp-cmdline/APKBUILD b/testing/nvim-cmp-cmdline/APKBUILD
new file mode 100644
index 00000000000..bc7f269c91c
--- /dev/null
+++ b/testing/nvim-cmp-cmdline/APKBUILD
@@ -0,0 +1,25 @@
+# Contributor: Maxim Karasev <mxkrsv@disroot.org>
+# Maintainer: Maxim Karasev <mxkrsv@disroot.org>
+pkgname=nvim-cmp-cmdline
+pkgver=0.0.0_git20220902
+_commit=d1a96c21e53316e1e21571dcce529c68720b0cf9
+pkgrel=0
+pkgdesc="nvim-cmp source for vim cmdline"
+url="https://github.com/hrsh7th/cmp-cmdline"
+arch="noarch"
+license="MIT"
+subpackages="$pkgname-doc"
+depends="nvim-cmp"
+source="https://github.com/hrsh7th/cmp-cmdline/archive/$_commit/nvim-cmp-$pkgver.tar.gz"
+builddir="$srcdir/cmp-cmdline-$_commit"
+options="!check" # no tests
+
+package() {
+ install -d "$pkgdir"/usr/share/nvim/site
+ cp -ra after lua "$pkgdir"/usr/share/nvim/site
+ install -Dm644 README.md "$pkgdir"/usr/share/doc/$pkgname/README.md
+}
+
+sha512sums="
+326c6939947706d4f9de3dfde6fcdf83e17c93601553c60860c6fcc38566c50b7c90a5b08c4074fa5dfabedc938d3ed2e152e4b059bfba1b98df63f9a15d56b9 nvim-cmp-0.0.0_git20220902.tar.gz
+"
diff --git a/testing/nvim-cmp-lsp/APKBUILD b/testing/nvim-cmp-lsp/APKBUILD
new file mode 100644
index 00000000000..6e4ec9b16c8
--- /dev/null
+++ b/testing/nvim-cmp-lsp/APKBUILD
@@ -0,0 +1,30 @@
+# Contributor: Maxim Karasev <begs@disroot.org>
+# Maintainer: Maxim Karasev <begs@disroot.org>
+pkgname=nvim-cmp-lsp
+pkgver=0.0.0_git20220516
+_commit=affe808a5c56b71630f17aa7c38e15c59fd648a8
+pkgrel=0
+pkgdesc="nvim-cmp source for neovim builtin LSP client"
+url="https://github.com/hrsh7th/cmp-nvim-lsp"
+arch="noarch"
+license="MIT"
+subpackages="$pkgname-doc"
+depends="nvim-cmp"
+source="https://github.com/hrsh7th/cmp-nvim-lsp/archive/$_commit/nvim-cmp-$pkgver.tar.gz"
+builddir="$srcdir/cmp-nvim-lsp-$_commit"
+options="!check" # no tests
+
+package() {
+ install -d "$pkgdir"/usr/share/nvim/site
+ cp -ra after doc lua "$pkgdir"/usr/share/nvim/site
+ install -Dm644 README.md "$pkgdir"/usr/share/doc/$pkgname/README.md
+}
+
+doc() {
+ default_doc
+ amove usr/share/nvim/site/doc
+}
+
+sha512sums="
+7a54d390579ec2410abcba138ffa833da49e5171decceda5e948281abe4f2938638c86380e9268678048c833af60d5d4f4f71c2968d058f050c742a051ffcbdd nvim-cmp-0.0.0_git20220516.tar.gz
+"
diff --git a/testing/nvim-cmp-luasnip/APKBUILD b/testing/nvim-cmp-luasnip/APKBUILD
new file mode 100644
index 00000000000..63318d96eee
--- /dev/null
+++ b/testing/nvim-cmp-luasnip/APKBUILD
@@ -0,0 +1,25 @@
+# Contributor: Maxim Karasev <begs@disroot.org>
+# Maintainer: Maxim Karasev <begs@disroot.org>
+pkgname=nvim-cmp-luasnip
+pkgver=0.0.0_git20220501
+_commit=a9de941bcbda508d0a45d28ae366bb3f08db2e36
+pkgrel=0
+pkgdesc="luasnip completion source for nvim-cmp"
+url="https://github.com/saadparwaiz1/cmp_luasnip"
+arch="noarch"
+license="Apache-2.0"
+subpackages="$pkgname-doc"
+depends="nvim-cmp"
+source="https://github.com/saadparwaiz1/cmp_luasnip/archive/$_commit/nvim-cmp-$pkgver.tar.gz"
+builddir="$srcdir/cmp_luasnip-$_commit"
+options="!check" # no tests
+
+package() {
+ install -d "$pkgdir"/usr/share/nvim/site
+ cp -ra after lua "$pkgdir"/usr/share/nvim/site
+ install -Dm644 README.md "$pkgdir"/usr/share/doc/$pkgname/README.md
+}
+
+sha512sums="
+5e32c074e425c36b0724f95b91516e4885eb6da0e319f12157460bffe45aad3bd2d04d27d0f09033aee2bc372c86cf58d4f7b5310d42de6a2d47ceef571cb5ea nvim-cmp-0.0.0_git20220501.tar.gz
+"
diff --git a/testing/nvim-cmp-path/APKBUILD b/testing/nvim-cmp-path/APKBUILD
new file mode 100644
index 00000000000..38580b8fbbf
--- /dev/null
+++ b/testing/nvim-cmp-path/APKBUILD
@@ -0,0 +1,25 @@
+# Contributor: Maxim Karasev <mxkrsv@disroot.org>
+# Maintainer: Maxim Karasev <mxkrsv@disroot.org>
+pkgname=nvim-cmp-path
+pkgver=0.0.0_git20221002
+_commit=1267fcfe8845f547b6d88d9a857859fb442fde6a
+pkgrel=0
+pkgdesc="nvim-cmp source for path"
+url="https://github.com/hrsh7th/cmp-path"
+arch="noarch"
+license="MIT"
+subpackages="$pkgname-doc"
+depends="nvim-cmp"
+source="https://github.com/hrsh7th/cmp-path/archive/$_commit/nvim-cmp-$pkgver.tar.gz"
+builddir="$srcdir/cmp-path-$_commit"
+options="!check" # no tests
+
+package() {
+ install -d "$pkgdir"/usr/share/nvim/site
+ cp -ra after lua "$pkgdir"/usr/share/nvim/site
+ install -Dm644 README.md "$pkgdir"/usr/share/doc/$pkgname/README.md
+}
+
+sha512sums="
+eaf14f5ede9e53bbb3aae7a0430277f2b42c6012248edb007ce3fec0684dffb4c0d9af4a04f7395299a92ba2cae66cdd3307f2e54c696f7b68b85aec18a76d00 nvim-cmp-0.0.0_git20221002.tar.gz
+"
diff --git a/testing/nvim-cmp/APKBUILD b/testing/nvim-cmp/APKBUILD
new file mode 100644
index 00000000000..f17947221f0
--- /dev/null
+++ b/testing/nvim-cmp/APKBUILD
@@ -0,0 +1,30 @@
+# Contributor: Maxim Karasev <mxkrsv@disroot.org>
+# Maintainer: Maxim Karasev <mxkrsv@disroot.org>
+pkgname=nvim-cmp
+pkgver=0.0.0_git20221011
+_commit=714ccb7483d0ab90de1b93914f3afad1de8da24a
+pkgrel=0
+pkgdesc="completion plugin for neovim"
+url="https://github.com/hrsh7th/nvim-cmp"
+arch="noarch"
+license="MIT"
+subpackages="$pkgname-doc"
+depends="neovim"
+source="https://github.com/hrsh7th/nvim-cmp/archive/$_commit/nvim-cmp-$pkgver.tar.gz"
+builddir="$srcdir/nvim-cmp-$_commit"
+options="!check" # requires vusted
+
+package() {
+ install -d "$pkgdir"/usr/share/nvim/site
+ cp -ra lua autoload doc plugin utils "$pkgdir"/usr/share/nvim/site
+ install -Dm644 README.md "$pkgdir"/usr/share/doc/$pkgname/README.md
+}
+
+doc() {
+ default_doc
+ amove usr/share/nvim/site/doc
+}
+
+sha512sums="
+f17bbe91aee091b53bd5e7b2702f44eaf0ab296de10cdfbcceeb861235d4eb2beb40a4f1cb549d25ffbe9b8e65b62010aaf9b36a2c62dabdc4c8373e9ed0ec5e nvim-cmp-0.0.0_git20221011.tar.gz
+"
diff --git a/testing/nvim-gruvbox/APKBUILD b/testing/nvim-gruvbox/APKBUILD
index e61d579f0a6..bf4179e0008 100644
--- a/testing/nvim-gruvbox/APKBUILD
+++ b/testing/nvim-gruvbox/APKBUILD
@@ -1,9 +1,9 @@
-# Contributor: Maxim Karasev <begs@disroot.org>
-# Maintainer: Maxim Karasev <begs@disroot.org>
+# Contributor: Maxim Karasev <mxkrsv@disroot.org>
+# Maintainer: Maxim Karasev <mxkrsv@disroot.org>
pkgname=nvim-gruvbox
-pkgver=0.0.0_git20220212
-_commit=dc6bae93ded04ac542d429ff5cc87189dde44294
-pkgrel=1
+pkgver=0.0.0_git20221212
+_commit=c64ec557672c9c8ecc71a438533525482021377f
+pkgrel=0
pkgdesc="lua port of gruvbox vim colorscheme"
url="https://github.com/ellisonleao/gruvbox.nvim"
arch="noarch"
@@ -20,5 +20,5 @@ package() {
}
sha512sums="
-f5780cd7b0f00d99321f8b98e8c7cd151b305199a48fa3936e523242f568ff1e6b5de6f7d0212fe5c28606e229eb2f4e939ead46d82912b4591f029e600eb144 nvim-gruvbox-0.0.0_git20220212.tar.gz
+1a723d5f99296f0354e33cd78f08f31ff77d8e01b161362fbe97ea7b430a2119bd6ca3cedb9d591a3ca528478303387c00e934b9372575a8f8ea85a89329ae70 nvim-gruvbox-0.0.0_git20221212.tar.gz
"
diff --git a/testing/nvim-lspconfig/APKBUILD b/testing/nvim-lspconfig/APKBUILD
deleted file mode 100644
index 3f605cd5824..00000000000
--- a/testing/nvim-lspconfig/APKBUILD
+++ /dev/null
@@ -1,28 +0,0 @@
-# Contributor: Maxim Karasev <begs@disroot.org>
-# Maintainer: Maxim Karasev <begs@disroot.org>
-pkgname=nvim-lspconfig
-pkgver=0.1.2
-pkgrel=1
-pkgdesc="quickstart configurations for the neovim LSP client"
-url="https://github.com/neovim/nvim-lspconfig"
-arch="noarch"
-license="Apache-2.0"
-subpackages="$pkgname-doc"
-source="https://github.com/neovim/nvim-lspconfig/archive/v$pkgver/nvim-lspconfig-$pkgver.tar.gz"
-options="!check" # requires entire neovim tree
-
-package() {
- install -d "$pkgdir"/usr/share/nvim/site
- cp -ra lua plugin "$pkgdir"/usr/share/nvim/site
- install -Dm644 doc/*.txt -t "$pkgdir"/usr/share/nvim/site/doc
- install -Dm644 README.md doc/*.md -t "$pkgdir"/usr/share/doc/$pkgname
-}
-
-doc() {
- default_doc
- amove usr/share/nvim/site/doc
-}
-
-sha512sums="
-854412f1b5d2f01c56ff8e7f9712e782c10c9dfdf554ea7c94ef59c985aa29b7b6b966ffedc8f5a23bee177fe429bf09a7ce24bc5a6ba4e6ff1faacbe8add24b nvim-lspconfig-0.1.2.tar.gz
-"
diff --git a/testing/nvim-lualine/APKBUILD b/testing/nvim-lualine/APKBUILD
index e0f0d3947a6..c5a538f2037 100644
--- a/testing/nvim-lualine/APKBUILD
+++ b/testing/nvim-lualine/APKBUILD
@@ -1,9 +1,9 @@
-# Contributor: Maxim Karasev <begs@disroot.org>
-# Maintainer: Maxim Karasev <begs@disroot.org>
+# Contributor: Maxim Karasev <mxkrsv@disroot.org>
+# Maintainer: Maxim Karasev <mxkrsv@disroot.org>
pkgname=nvim-lualine
-pkgver=0.0.0_git20220307
-_commit=88a44ade818f9ee7ba730aa4096250e22b243808
-pkgrel=1
+pkgver=0.0.0_git20221006
+_commit=edca2b03c724f22bdc310eee1587b1523f31ec7c
+pkgrel=0
pkgdesc="fast and easy to configure neovim statusline plugin"
url="https://github.com/nvim-lualine/lualine.nvim"
arch="noarch"
@@ -25,5 +25,5 @@ doc() {
}
sha512sums="
-cfd4d8c1a3327667c137f1f365f05f6fa28b958b900bcf7f48fda7f51dd3602022673ea4030e38e34d51a0a10c59364efc991e35019f69b122a37a46537e59d8 nvim-lualine-0.0.0_git20220307.tar.gz
+83e13a44ce877de1b7cce0d56f552d75c6b52b0100c3961687ff06315646a7f6e110293bfa2b6408addd07744d08e27654caf9e9371bba206430ca7aeedfacdd nvim-lualine-0.0.0_git20221006.tar.gz
"
diff --git a/testing/nvim-packer/APKBUILD b/testing/nvim-packer/APKBUILD
index 7d8992ab60e..b62c02566fb 100644
--- a/testing/nvim-packer/APKBUILD
+++ b/testing/nvim-packer/APKBUILD
@@ -1,9 +1,9 @@
-# Contributor: Maxim Karasev <begs@disroot.org>
-# Maintainer: Maxim Karasev <begs@disroot.org>
+# Contributor: Maxim Karasev <mxkrsv@disroot.org>
+# Maintainer: Maxim Karasev <mxkrsv@disroot.org>
pkgname=nvim-packer
-pkgver=0.0.0_git20220225
-_commit=c576ab3f1488ee86d60fd340d01ade08dcabd256
-pkgrel=1
+pkgver=0.0.0_git20220910
+_commit=6afb67460283f0e990d35d229fd38fdc04063e0a
+pkgrel=0
pkgdesc="use-package inspired plugin manager for neovim"
url="https://github.com/wbthomason/packer.nvim"
arch="noarch"
@@ -25,5 +25,5 @@ doc() {
}
sha512sums="
-d604f86a9e72321b5d70a5074f26eaa413ac7fc21d32a0b222960d4d3c7ebe0d9e622b12d6b23dd543c715772c20239b77820ae8564f8c8eb35665e17e3352b8 nvim-packer-0.0.0_git20220225.tar.gz
+4f78d23cd909f91f399b7721a1971ef8a63548d08d48d125365cbde425acebb10d3d52ce0c5d0b253223bc98b413945771d5fc1bb1960aa715f0cac9848abba3 nvim-packer-0.0.0_git20220910.tar.gz
"
diff --git a/testing/nvim-treesitter/APKBUILD b/testing/nvim-treesitter/APKBUILD
index e5e2eb8c1b3..3a16b892940 100644
--- a/testing/nvim-treesitter/APKBUILD
+++ b/testing/nvim-treesitter/APKBUILD
@@ -1,9 +1,9 @@
-# Contributor: Maxim Karasev <begs@disroot.org>
-# Maintainer: Maxim Karasev <begs@disroot.org>
+# Contributor: Maxim Karasev <mxkrsv@disroot.org>
+# Maintainer: Maxim Karasev <mxkrsv@disroot.org>
pkgname=nvim-treesitter
-pkgver=0.0.0_git20220309
-_commit=90485c890503f973271db1ae02ddba6d6fd46397
-pkgrel=1
+pkgver=0.0.0_git20221013
+_commit=d3ca4de41faf996258b72924ecb1ecc2df69846e
+pkgrel=0
pkgdesc="nvim treesitter configurations and abstraction layer"
url="https://github.com/nvim-treesitter/nvim-treesitter"
arch="noarch"
@@ -15,7 +15,7 @@ options="!check" # requires entire neovim tree
package() {
install -d "$pkgdir"/usr/share/nvim/site
- cp -ra lua autoload after doc plugin ftdetect queries \
+ cp -ra lua autoload doc plugin queries \
"$pkgdir"/usr/share/nvim/site
install -Dm644 README.md -t "$pkgdir"/usr/share/doc/$pkgname
}
@@ -26,5 +26,5 @@ doc() {
}
sha512sums="
-5124dcfefbe84e5ef28fd2021b0580b9da8cdfba7d76e5f7174f71a2765bffa7e9bb073d351c039392e525c0633da3a2c5c0b1152d151df3610b6c3b06fbb18d nvim-treesitter-0.0.0_git20220309.tar.gz
+2ddd2ae92a5044e3c092e87b04385aff3d9bf0b8e886cd2375aa81281cfe82eeda2e8a59a040a270eb45646c3ca9afe4f24a70fc1ec7ce2c8edfc283e6ee89f4 nvim-treesitter-0.0.0_git20221013.tar.gz
"
diff --git a/testing/nvimpager/APKBUILD b/testing/nvimpager/APKBUILD
new file mode 100644
index 00000000000..203d401c81e
--- /dev/null
+++ b/testing/nvimpager/APKBUILD
@@ -0,0 +1,26 @@
+# Contributor: Prokop RandáÄek <prokop@rdck.dev>
+# Maintainer: Prokop RandáÄek <prokop@rdck.dev>
+pkgname=nvimpager
+pkgver=0.12.0
+pkgrel=0
+pkgdesc="Use nvim as a pager to view manpages, diffs, etc with nvim's syntax highlighting"
+url="https://github.com/lucc/nvimpager"
+arch="noarch"
+license="BSD-2-Clause"
+depends="cmd:nvim cmd:tput bash"
+makedepends="scdoc"
+checkdepends="cmd:lua lua-busted procps-ng"
+subpackages="$pkgname-doc $pkgname-zsh-completion"
+source="$pkgname-$pkgver.tar.gz::https://github.com/lucc/nvimpager/archive/refs/tags/v$pkgver.tar.gz"
+
+check() {
+ TERM=linux make test
+}
+
+package() {
+ make PREFIX="/usr" DESTDIR=$pkgdir install
+}
+
+sha512sums="
+a1b67aafdb73c5baa96cf0d682b1fa7ac7f39f58d6ce50f9875b1f9815dfce04921ffdd748552f07279cb9cc6b5c700c4aa43b7755952ce7993362b4c664e2de nvimpager-0.12.0.tar.gz
+"
diff --git a/testing/nvtop/APKBUILD b/testing/nvtop/APKBUILD
new file mode 100644
index 00000000000..0614e9b927c
--- /dev/null
+++ b/testing/nvtop/APKBUILD
@@ -0,0 +1,49 @@
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=nvtop
+pkgver=3.1.0
+pkgrel=0
+pkgdesc="GPUs process monitoring for AMD, Intel and NVIDIA"
+url="https://github.com/Syllo/nvtop"
+# no gpus that are usable on s390x
+arch="all !s390x"
+license="GPL-3.0-or-later"
+makedepends="
+ cmake
+ eudev-dev
+ libdrm-dev
+ ncurses-dev
+ samurai
+ "
+subpackages="$pkgname-doc"
+source="https://github.com/Syllo/nvtop/archive/$pkgver/nvtop-$pkgver.tar.gz"
+options="!check" # no tests provided by upstream
+
+build() {
+ if [ "$CBUILD" != "$CHOST" ]; then
+ local crossopts="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+
+ case "$CARCH" in
+ arm*|aarch64) local msm=ON ;;
+ *) local msm=OFF ;;
+ esac
+
+ CFLAGS="$CFLAGS -flto=auto -DNDEBUG" \
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=None \
+ -DAMDGPU_SUPPORT=ON \
+ -DINTEL_SUPPORT=ON \
+ -DMSM_SUPPORT=$msm \
+ -DNVIDIA_SUPPORT=ON \
+ $crossopts
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+a22806920d85954930cf9a24450de2603418326b59bc7acedf8ff59ddb0f40e119de496a63f42706b4b6961c83ba664a8a33a3e4106a1c3ef6cd3da758aa5a55 nvtop-3.1.0.tar.gz
+"
diff --git a/testing/nwg-bar/APKBUILD b/testing/nwg-bar/APKBUILD
index 9388a1a010b..ea57036e24b 100644
--- a/testing/nwg-bar/APKBUILD
+++ b/testing/nwg-bar/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Edd Salkield <edd@salkield.uk>
# Maintainer: Edd Salkield <edd@salkield.uk>
pkgname=nwg-bar
-pkgver=0.1.0
-pkgrel=1
+pkgver=0.1.6
+pkgrel=2
pkgdesc="GTK3-based button bar for sway and other wlroots-based compositors"
url="https://github.com/nwg-piotr/nwg-bar/"
arch="all"
@@ -11,6 +11,10 @@ makedepends="go glib-dev cairo-dev gtk+3.0-dev gtk-layer-shell-dev"
source="https://github.com/nwg-piotr/nwg-bar/archive/v$pkgver/nwg-bar-v$pkgver.tar.gz"
options="!check net" # no upstream tests
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
build() {
go build -o bin/nwg-bar .
}
@@ -22,5 +26,5 @@ package() {
}
sha512sums="
-46c7fefe9e8b9557663154f5a808f630835212537d5ee9a5fe4067339d8cd44bd11c2735bd4042309b3d57820fd7f8dcbc23a8366246e9716fc0f00328301cbe nwg-bar-v0.1.0.tar.gz
+f59a7bf34d86bd7fe5c7a98653b364fbc53cde6262fbb962950b18dd77c8c20d59e1985347e1b3e300b2c9b68a84059009c3b0a9d0ee0152a30171c78435586a nwg-bar-v0.1.6.tar.gz
"
diff --git a/testing/nwg-displays/APKBUILD b/testing/nwg-displays/APKBUILD
new file mode 100644
index 00000000000..a79ca3d0a93
--- /dev/null
+++ b/testing/nwg-displays/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: Jakub Jirutka <jakub@jirutka.cz>
+# Maintainer:
+pkgname=nwg-displays
+pkgver=0.3.13
+pkgrel=1
+pkgdesc="Output management utility for sway Wayland compositor"
+url="https://github.com/nwg-piotr/nwg-displays"
+arch="noarch"
+license="MIT"
+depends="
+ gtk+3.0
+ gtk-layer-shell
+ py3-gobject3
+ py3-i3ipc
+ python3
+ wlr-randr
+ "
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+subpackages="$pkgname-pyc"
+source="https://github.com/nwg-piotr/nwg-displays/archive/v$pkgver/nwg-displays-$pkgver.tar.gz"
+options="!check" # no tests provided
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+ccf708b5c528519c323951c6a2b2c0b0f5228fdfdf7e94f54f15eeb82d7fa52c8b49bf91399f6801651d02226592dc8cb6833dfe9d0cb59b5c420dd8462e1850 nwg-displays-0.3.13.tar.gz
+"
diff --git a/testing/nwg-dock/APKBUILD b/testing/nwg-dock/APKBUILD
new file mode 100644
index 00000000000..f8dbde7eacb
--- /dev/null
+++ b/testing/nwg-dock/APKBUILD
@@ -0,0 +1,31 @@
+# Contributor: Edd Salkield <edd@salkield.uk>
+# Maintainer: Edd Salkield <edd@salkield.uk>
+pkgname=nwg-dock
+pkgver=0.3.9
+pkgrel=3
+pkgdesc="GTK3-based dock for sway and other wlroots-based compositors"
+url="https://github.com/nwg-piotr/nwg-dock/"
+arch="all"
+license="MIT"
+makedepends="go glib-dev gtk+3.0-dev gtk-layer-shell-dev" # TODO: strip non-required
+#makedepends="go glib-dev cairo-dev gtk+3.0-dev gtk-layer-shell-dev" # TODO: strip non-required
+source="https://github.com/nwg-piotr/nwg-dock/archive/v$pkgver/nwg-dock-v$pkgver.tar.gz"
+options="!check net" # no upstream tests
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ go build -o bin/nwg-dock .
+}
+
+package() {
+ install -m755 -D ./bin/nwg-dock "$pkgdir"/usr/bin/nwg-dock
+ install -m644 -D -t "$pkgdir"/usr/share/nwg-dock ./config/*
+ install -m644 -D -t "$pkgdir"/usr/share/nwg-dock/images ./images/*
+}
+
+sha512sums="
+d19849659691e32a63f00b2a02c829e2cd4276f7539944e2ed7b1d630395471f1785dcb5f9cffc3a0f9aa7cde1a7305536c0ad5714750bcf0f2870e909db5c3e nwg-dock-v0.3.9.tar.gz
+"
diff --git a/testing/nymphcast-mediaserver/APKBUILD b/testing/nymphcast-mediaserver/APKBUILD
index 18f77a151fa..bc92f03a2b5 100644
--- a/testing/nymphcast-mediaserver/APKBUILD
+++ b/testing/nymphcast-mediaserver/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Bart Ribbers <bribbers@disroot.org>
pkgname=nymphcast-mediaserver
pkgver=0.1
-pkgrel=0
+pkgrel=2
arch="all"
url="http://nyanko.ws/product_nymphcast.php"
pkgdesc="Media server for the NymphCast ecosystem"
diff --git a/testing/nyx/APKBUILD b/testing/nyx/APKBUILD
deleted file mode 100644
index 0349d03adc8..00000000000
--- a/testing/nyx/APKBUILD
+++ /dev/null
@@ -1,27 +0,0 @@
-# Maintainer: Donoban <donoban@riseup.net>
-pkgname=nyx
-pkgver=2.1.0
-pkgrel=1
-pkgdesc="Terminal status monitor for Tor"
-url="https://nyx.torproject.org/"
-arch="noarch"
-license="LGPL-3.0-or-later"
-depends="py3-stem"
-makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/n/nyx/nyx-$pkgver.tar.gz"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 setup.py check
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-69a645cc811a1b1fbd9cf0501d8f23f1a52e0e92a0598097bb0c9efb040e1895e1dd431bad93be36db0e85ca7ac32ee5c866d50d2812069a39e5160b44575a37 nyx-2.1.0.tar.gz
-"
diff --git a/testing/nyxt/APKBUILD b/testing/nyxt/APKBUILD
deleted file mode 100644
index bb80ea7dea0..00000000000
--- a/testing/nyxt/APKBUILD
+++ /dev/null
@@ -1,42 +0,0 @@
-# Contributor: Will Sinatra <wpsinatra@gmail.com>
-# Contributor: Benjamin Buccianti <bebuccianti@gmail.com>
-# Maintainer: Will Sinatra <wpsinatra@gmail.com>
-pkgname=nyxt
-pkgver=1.5.0
-pkgrel=1
-pkgdesc="Atlas Engineer Nyxt Browser"
-url="https://nyxt.atlas.engineer"
-arch="x86_64 aarch64"
-#SBCL must be compiled with thread support for Nyxt to work
-#SBCL thread is not supported on armv7
-#SBCL is only built on arches x86, x86_64, aarch64, and armv7
-license="BSD-3-Clause"
-source="$pkgname-$pkgver.zip::https://github.com/atlas-engineer/nyxt/archive/$pkgver.zip"
-depends="
- glib-networking
- gsettings-desktop-schemas
- libfixposix-dev
- gstreamer
- gst-plugins-base
- gst-plugins-good
- gst-plugins-bad
- gst-plugins-ugly
- libffi-dev
- "
-makedepends="git sbcl webkit2gtk-dev"
-options="!check !strip" #No testsuite exists; Stripping the package causes the
-# package to build, but the nyxt browser is unfunctional, dropping to an SBCL repl
-# instead of properly running.
-
-replaces=next
-provides=next=$pkgver-r$pkgrel
-
-build() {
- make all
-}
-
-package() {
- make PREFIX=/usr DESTDIR="$pkgdir" install
-}
-
-sha512sums="1d27e2a2b1f586ea2904d51205bceaa3b7ac3107e5b1135c0f6be54dd2d3bf82aec69fc01a56eed64b9540364971b4638aa873cbd4ed37c11dfa25cfdf195c27 nyxt-1.5.0.zip"
diff --git a/testing/nzbget/APKBUILD b/testing/nzbget/APKBUILD
index 604d019086b..09ae54943df 100644
--- a/testing/nzbget/APKBUILD
+++ b/testing/nzbget/APKBUILD
@@ -2,14 +2,16 @@
# Maintainer: August Klein <amatcoder@gmail.com>
pkgname=nzbget
pkgver=21.1
-pkgrel=0
+pkgrel=2
pkgdesc="Usenet downloader"
url="https://nzbget.net"
arch="all"
license="GPL-2.0-or-later"
makedepends="libxml2-dev ncurses-dev openssl-dev"
subpackages="$pkgname-doc"
-source="https://github.com/nzbget/nzbget/releases/download/v$pkgver/nzbget-$pkgver-src.tar.gz"
+source="https://github.com/nzbget/nzbget/releases/download/v$pkgver/nzbget-$pkgver-src.tar.gz
+ openssl3.patch
+ "
prepare() {
default_prepare
@@ -37,4 +39,5 @@ package() {
sha512sums="
d8dc1ad324f675c5505e623049a14c022475267aa03dcd5d8fd6cf9ed3b776cc2776077b61d035e252937ea4b6bf8f90bd33e715cfd842d2e012615df3ffeafb nzbget-21.1-src.tar.gz
+d080db57ee71ca04466b649cce7ca6a32d9fbecee0feae7b5c07482e7590202235e0b8d61dc8b60b4acf3c5bdd6c063042a212951b2d51a13ffe6c547a9ecc2e openssl3.patch
"
diff --git a/testing/nzbget/openssl3.patch b/testing/nzbget/openssl3.patch
new file mode 100644
index 00000000000..b2f8decf8c7
--- /dev/null
+++ b/testing/nzbget/openssl3.patch
@@ -0,0 +1,29 @@
+Patch-Source: https://github.com/nzbget/nzbget/pull/793
+From f76e8555504e3af4cf8dd4a8c8e374b3ca025099 Mon Sep 17 00:00:00 2001
+From: Simon Chopin <simon.chopin@canonical.com>
+Date: Tue, 7 Dec 2021 13:23:21 +0100
+Subject: [PATCH] daemon:connect: don't use FIPS_mode_set with OpenSSL 3
+
+This function has been removed in OpenSSL 3, replaced by
+EVP_default_properties_enable_fips. See
+https://www.openssl.org/docs/man3.0/man7/migration_guide.html
+---
+ daemon/connect/TlsSocket.cpp | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/daemon/connect/TlsSocket.cpp b/daemon/connect/TlsSocket.cpp
+index 544bf6850..831da0dc0 100644
+--- a/daemon/connect/TlsSocket.cpp
++++ b/daemon/connect/TlsSocket.cpp
+@@ -189,7 +189,11 @@ void TlsSocket::Final()
+
+ #ifdef HAVE_OPENSSL
+ #ifndef LIBRESSL_VERSION_NUMBER
++#if OPENSSL_VERSION_NUMBER < 0x30000000L
+ FIPS_mode_set(0);
++#else
++ EVP_default_properties_enable_fips(NULL, 0);
++#endif
+ #endif
+ #ifdef NEED_CRYPTO_LOCKING
+ CRYPTO_set_locking_callback(nullptr);
diff --git a/testing/oauth2-proxy/APKBUILD b/testing/oauth2-proxy/APKBUILD
new file mode 100644
index 00000000000..e941a437c55
--- /dev/null
+++ b/testing/oauth2-proxy/APKBUILD
@@ -0,0 +1,43 @@
+# Contributor: lauren n. liberda <lauren@selfisekai.rocks>
+# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
+pkgname=oauth2-proxy
+pkgver=7.6.0
+pkgrel=3
+pkgdesc="Reverse proxy that provides authentication with Google, Azure, OpenID Connect and many more identity providers"
+url="https://oauth2-proxy.github.io/oauth2-proxy"
+arch="all"
+license="MIT"
+install="$pkgname.pre-install"
+makedepends="go"
+subpackages="$pkgname-openrc"
+source="
+ https://github.com/oauth2-proxy/oauth2-proxy/archive/v$pkgver/oauth2-proxy-$pkgver.tar.gz
+
+ oauth2-proxy.initd
+ oauth2-proxy.confd
+
+ make-dont-disable-cgo.patch
+ "
+options="net"
+
+build() {
+ VERSION="$pkgver" make oauth2-proxy
+}
+
+check() {
+ go test ./...
+}
+
+package() {
+ install -Dm755 oauth2-proxy "$pkgdir"/usr/bin/oauth2-proxy
+ install -Dm755 "$srcdir"/oauth2-proxy.initd "$pkgdir"/etc/init.d/oauth2-proxy
+ install -Dm755 "$srcdir"/oauth2-proxy.confd "$pkgdir"/etc/conf.d/oauth2-proxy
+ install -Dm644 contrib/oauth2-proxy.cfg.example "$pkgdir"/etc/oauth2-proxy/oauth2-proxy.cfg
+}
+
+sha512sums="
+de7574ae6ecf0da0b9962e4601fdc5b7f742fa0d4a55a0e5844256a2aa10170973c324b1041c490b2be0023b954a53d9b78ed488dcd238a2a047e25ab5ba7667 oauth2-proxy-7.6.0.tar.gz
+4f91d8bff4ced7fca4d0795c2a0a89e0c8cb28f981db435f30b30f122757b8fe9d855a0d4d87497becedc543cdf48d20f3bc7813728bffaeac891d927157a237 oauth2-proxy.initd
+56ec244414ecc96cad80b7c3f231c9e437350046ec80edc3661753bf24e194c51472acf2b097d893f3aed4200b0304e20e9c4d6edd05d698ff54524137c726e7 oauth2-proxy.confd
+783bd07239d36e8913836f2f1970e1603ae43d58e643b689fa9d6abaeaf6b34c5e0e250bd13fefecf7b43c45b66cb54170b9f8b913d35d6def28dcb6ea3a5489 make-dont-disable-cgo.patch
+"
diff --git a/testing/oauth2-proxy/make-dont-disable-cgo.patch b/testing/oauth2-proxy/make-dont-disable-cgo.patch
new file mode 100644
index 00000000000..9006c12e4ea
--- /dev/null
+++ b/testing/oauth2-proxy/make-dont-disable-cgo.patch
@@ -0,0 +1,16 @@
+Fixes: -buildmode=pie requires external (cgo) linking, but cgo is not enabled
+
+This is enforced on riscv64 since go 1.22
+diff --git a/Makefile b/Makefile
+index 41d01bf..b1d7e17 100644
+--- a/Makefile
++++ b/Makefile
+@@ -40,7 +40,7 @@ lint: validate-go-version
+ build: validate-go-version clean $(BINARY)
+
+ $(BINARY):
+- CGO_ENABLED=0 $(GO) build -a -installsuffix cgo -ldflags="-X main.VERSION=${VERSION}" -o $@ github.com/oauth2-proxy/oauth2-proxy/v7
++ $(GO) build -a -installsuffix cgo -ldflags="-X main.VERSION=${VERSION}" -o $@ github.com/oauth2-proxy/oauth2-proxy/v7
+
+ DOCKER_BUILD_PLATFORM ?= linux/amd64,linux/arm64,linux/ppc64le,linux/arm/v7
+ DOCKER_BUILD_RUNTIME_IMAGE ?= gcr.io/distroless/static:nonroot
diff --git a/testing/oauth2-proxy/oauth2-proxy.confd b/testing/oauth2-proxy/oauth2-proxy.confd
new file mode 100644
index 00000000000..bf95e6b8125
--- /dev/null
+++ b/testing/oauth2-proxy/oauth2-proxy.confd
@@ -0,0 +1,5 @@
+# comment to not use process supervisor
+supervisor=supervise-daemon
+
+# extra args
+#command_args=""
diff --git a/testing/oauth2-proxy/oauth2-proxy.initd b/testing/oauth2-proxy/oauth2-proxy.initd
new file mode 100644
index 00000000000..0c32bc2edbc
--- /dev/null
+++ b/testing/oauth2-proxy/oauth2-proxy.initd
@@ -0,0 +1,37 @@
+#!/sbin/openrc-run
+
+command="/usr/bin/oauth2-proxy"
+command_args="--config=/etc/oauth2-proxy/oauth2-proxy.cfg $command_args"
+command_user="oa2proxy:oa2proxy"
+command_background=true
+directory="/var/lib/oauth2-proxy"
+pidfile="/run/$RC_SVCNAME.pid"
+
+output_log="/var/log/oauth2-proxy.log"
+error_log="/var/log/oauth2-proxy.log"
+
+extra_started_commands="reload"
+description_reload="Reload configuration"
+
+depend() {
+ need net
+ after firewall
+}
+
+start_pre() {
+ checkpath -d -m 755 -o $command_user /run/oauth2-proxy
+ checkpath -d -m 755 -o $command_user /var/lib/oauth2-proxy
+
+ checkpath -f -m 640 -o $command_user /etc/oauth2-proxy/oauth2-proxy.cfg
+ checkpath -f -m 644 -o $command_user /var/log/oauth2-proxy.log
+}
+
+reload() {
+ ebegin "Reloading configuration"
+
+ if [ -n "$supervisor" ]; then
+ $supervisor $RC_SVCNAME --signal HUP
+ else
+ start-stop-daemon --signal HUP --pidfile "$pidfile"
+ fi
+}
diff --git a/testing/oauth2-proxy/oauth2-proxy.pre-install b/testing/oauth2-proxy/oauth2-proxy.pre-install
new file mode 100644
index 00000000000..3f94b54e4c3
--- /dev/null
+++ b/testing/oauth2-proxy/oauth2-proxy.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S oa2proxy 2>/dev/null
+adduser -S -D -H -h /var/lib/oauth2-proxy -s /sbin/nologin -G oa2proxy -g oa2proxy oa2proxy 2>/dev/null
+
+exit 0
diff --git a/testing/obconf-qt/APKBUILD b/testing/obconf-qt/APKBUILD
deleted file mode 100644
index 80ca6a5ac93..00000000000
--- a/testing/obconf-qt/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=obconf-qt
-pkgver=0.16.2
-pkgrel=0
-pkgdesc="Qt port of obconf, the Openbox configuration tool"
-url="https://github.com/lxqt/obconf-qt"
-# s390x, riscv64: blocked by openbox
-# *: blocked by lxqt
-arch="all !s390x !armhf !riscv64"
-license="LGPL-2.0-or-later"
-makedepends="
- cmake lxqt-build-tools liblxqt-dev
- qt5-qttools-dev openbox-dev
- "
-options="!check" # No testsuite
-source="https://github.com/lxqt/obconf-qt/releases/download/$pkgver/obconf-qt-$pkgver.tar.xz"
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- $CMAKE_CROSSOPTS .
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --build build --target install
-}
-sha512sums="
-bd91a5669f07471966d296b91d78e2a40e2e3640405de2179513457088eb7d6cb063dbfaff623db6f404985734e986b52c1e3155a050f374b7afa58f7d720c0d obconf-qt-0.16.2.tar.xz
-"
diff --git a/testing/obfs4proxy/APKBUILD b/testing/obfs4proxy/APKBUILD
deleted file mode 100644
index 034224c9f95..00000000000
--- a/testing/obfs4proxy/APKBUILD
+++ /dev/null
@@ -1,29 +0,0 @@
-# Contributor: Katie Holly <holly@fuslvz.ws>
-# Maintainer: Katie Holly <holly@fuslvz.ws>
-pkgname=obfs4proxy
-pkgver=0.0.11
-pkgrel=7
-pkgdesc="pluggable transport proxy for Tor, implementing obfs4"
-url="https://gitweb.torproject.org/pluggable-transports/obfs4.git/"
-arch="x86_64 x86 armv7"
-license="BSD-3-Clause"
-makedepends="go"
-options="!strip chmod-clean"
-source="$pkgname-$pkgver.tar.gz::https://github.com/Yawning/obfs4/archive/obfs4proxy-$pkgver.tar.gz"
-builddir="$srcdir"/obfs4-$pkgname-$pkgver
-
-export GOPATH="$srcdir"
-
-build() {
- go build -v -o ./$pkgname-executable ./$pkgname
-}
-
-check() {
- go test -short ./...
-}
-
-package() {
- install -Dm755 $pkgname-executable "$pkgdir"/usr/bin/$pkgname
-}
-
-sha512sums="3eb50bc8067802f8260e0926999a659919e55cb34247f443f66a4852c9ceceacae361602a57ad1fd28a84e4ed54f3800c3258e67266eb23d45b1d09e31c5d869 obfs4proxy-0.0.11.tar.gz"
diff --git a/testing/objconv/APKBUILD b/testing/objconv/APKBUILD
index f5e7af5a238..4a253da43cb 100644
--- a/testing/objconv/APKBUILD
+++ b/testing/objconv/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Olliver Schinagl <oliver@schinagl.nl>
pkgname="objconv"
pkgver="2.52_git20210213"
-pkgrel=1
+pkgrel=2
pkgdesc="Agner's Object file converter"
url="http://www.agner.org/optimize/#objconv"
arch="all"
@@ -22,7 +22,7 @@ prepare() {
build() {
cd "${builddir}/src/"
- make ${JOBS:+-j ${JOBS}} -f "../Makefile"
+ make -f "../Makefile"
}
package() {
diff --git a/testing/ocaml-alcotest/APKBUILD b/testing/ocaml-alcotest/APKBUILD
index 59d6d9c9531..4202de014ca 100644
--- a/testing/ocaml-alcotest/APKBUILD
+++ b/testing/ocaml-alcotest/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-alcotest
_pkgname=alcotest-js
pkgver=1.5.0
-pkgrel=0
+pkgrel=3
pkgdesc="Lightweight and colourful test framework"
url="https://github.com/mirage/alcotest"
-arch="all !riscv64" # restricted by ocaml
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="ocaml-runtime"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="
dune
@@ -66,19 +65,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find usr/lib/ocaml \( \
+ local path; find usr/lib/ocaml \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
1aea91de40795ec4f6603d510107e4b663c1a94bd223f162ad231316d8595e9e098cabbe28a46bdcb588942f3d103d8377373d533bcc7413ba3868a577469b45 ocaml-alcotest-1.5.0.tar.bz2
"
diff --git a/testing/ocaml-angstrom/APKBUILD b/testing/ocaml-angstrom/APKBUILD
index 30227009b7c..a42f7378ad6 100644
--- a/testing/ocaml-angstrom/APKBUILD
+++ b/testing/ocaml-angstrom/APKBUILD
@@ -1,20 +1,19 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-angstrom
_pkgname=angstrom
-pkgver=0.15.0
+pkgver=0.16.0
pkgrel=0
pkgdesc="Parser combinators built for speed and memory-efficiency"
url="https://github.com/inhabitedtype/angstrom"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="BSD-3-Clause"
-depends="ocaml-runtime ocaml-bigstringaf" # ocaml-lwt
depends_dev="$pkgname=$pkgver-r$pkgrel ocaml-bigstringaf-dev ocaml-lwt-dev"
makedepends="$depends_dev dune ocaml"
checkdepends="ocaml-alcotest-dev ocaml-ppx_let-dev"
options="!check"
subpackages="$pkgname-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/inhabitedtype/angstrom/archive/$pkgver.tar.gz"
+source="$_pkgname-$pkgver.tar.gz::https://github.com/inhabitedtype/angstrom/archive/$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
_ocamldir=usr/lib/ocaml
@@ -30,7 +29,7 @@ build() {
}
check() {
- dune runtest --verbose
+ dune runtest --build-dir=.testenv --verbose
}
package() {
@@ -46,19 +45,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
-307040a6174f9d3c45a9a3bd3c9d1f4e026aef4a3360bd8d171e2e147306fe0d00ee4cb42019bb2abe8101d25c4a2b5887e466537345eb35246bc34d285ffddf ocaml-angstrom-0.15.0.tar.gz
+3fda504f0d4cb53d0b7d249964257f3ab8f9a0b4e0dee13665e8b65d2a281bc1e0529f4f2e29cf376c7331bd44833cae929641a559ac003989c7341b08e33f6c angstrom-0.16.0.tar.gz
"
diff --git a/testing/ocaml-arp/APKBUILD b/testing/ocaml-arp/APKBUILD
index db1975e96a5..c22a298123e 100644
--- a/testing/ocaml-arp/APKBUILD
+++ b/testing/ocaml-arp/APKBUILD
@@ -1,24 +1,14 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-arp
_pkgname=arp
pkgver=3.0.0
-pkgrel=0
+pkgrel=3
pkgdesc="Address Resolution Protocol purely in OCaml"
url="https://github.com/mirage/arp"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
# ocaml-bisect_ppx only needed for dev
-depends="
- ocaml-runtime
- ocaml-cstruct
- ocaml-duration
- ocaml-ethernet
- ocaml-ipaddr
- ocaml-logs
- ocaml-mirage-profile
- ocaml-mirage-time
- "
depends_dev="
$pkgname=$pkgver-r$pkgrel
ocaml-bisect_ppx-dev
@@ -72,19 +62,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
52eb9fdb00729a5b6c1d7dd9d14fca213aecddc6e2893c0e670dea3b31576e6765061f557b6521a065ed15a931f4cbbf432b4db8fe53df40dc801695acd242d4 ocaml-arp-3.0.0.tar.bz2
"
diff --git a/testing/ocaml-asn1-combinators/APKBUILD b/testing/ocaml-asn1-combinators/APKBUILD
index 317be94e5d7..12a7420c85b 100644
--- a/testing/ocaml-asn1-combinators/APKBUILD
+++ b/testing/ocaml-asn1-combinators/APKBUILD
@@ -1,16 +1,20 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-asn1-combinators
_pkgname=asn1-combinators
pkgver=0.2.6
-pkgrel=0
+pkgrel=2
pkgdesc="Embed typed ASN.1 grammars in OCaml"
url="https://github.com/mirleft/ocaml-asn1-combinators"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="ocaml-runtime ocaml-cstruct ocaml-ptime ocaml-zarith"
# ocaml-zarith is not separated into a -dev subpackage
-depends_dev="$pkgname=$pkgver-r$pkgrel ocaml-cstruct-dev ocaml-ptime-dev"
+depends_dev="
+ $pkgname=$pkgver-r$pkgrel
+ ocaml-cstruct-dev
+ ocaml-ptime-dev
+ ocaml-zarith
+ "
makedepends="$depends_dev dune ocaml"
checkdepends="ocaml-alcotest-dev"
options="!check"
@@ -44,19 +48,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
4c1b28f1d230395ff1ad3b8e8d03981b10015062ec270f29e2521914eb64c2fa4d5df68363e339e9a1158c3b58aef0e25156f7ec6addd85a580fecadc17edfac ocaml-asn1-combinators-0.2.6.tar.bz2
"
diff --git a/testing/ocaml-astring/APKBUILD b/testing/ocaml-astring/APKBUILD
index 0721fee8c7b..7b84534b292 100644
--- a/testing/ocaml-astring/APKBUILD
+++ b/testing/ocaml-astring/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-astring
_pkgname=astring
pkgver=0.8.5
-pkgrel=0
+pkgrel=2
pkgdesc="Alternative String module for OCaml"
url="https://erratique.ch/software/astring"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="ocaml-runtime"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="
ocaml
@@ -46,19 +45,37 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
sha512sums="
b40634cc2053d651bce5c1974996b352ffa48ecac429919113840b2a807efb34387d950f12accb346afd5e40514cb90219d70b00109c30e1450c4e99f65c9856 ocaml-astring-0.8.5.tar.bz2
diff --git a/testing/ocaml-base/APKBUILD b/testing/ocaml-base/APKBUILD
index 6d747a89720..43fd9208c68 100644
--- a/testing/ocaml-base/APKBUILD
+++ b/testing/ocaml-base/APKBUILD
@@ -1,19 +1,18 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-base
_pkgname=base
-pkgver=0.15.0
-pkgrel=1
+pkgver=0.16.3
+pkgrel=0
pkgdesc="Full standard library replacement for OCaml"
url="https://github.com/janestreet/base"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="MIT"
-depends="ocaml-runtime ocaml-sexplib0"
depends_dev="$pkgname=$pkgver-r$pkgrel ocaml-sexplib0-dev"
makedepends="$depends_dev dune dune-configurator ocaml ocaml-compiler-libs"
subpackages="$pkgname-dev"
-source="$pkgname-$pkgver.tar.gz::https://ocaml.janestreet.com/ocaml-core/v${pkgver%.*}/files/base-v$pkgver.tar.gz"
-builddir="$srcdir/$_pkgname-v$pkgver"
+source="https://github.com/janestreet/base/archive/refs/tags/v$pkgver/base-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
_ocamldir=usr/lib/ocaml
# 32-bit archs
@@ -26,7 +25,7 @@ build() {
}
check() {
- dune runtest --verbose
+ dune runtest --build-dir=.testenv --verbose
}
package() {
@@ -41,19 +40,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
-838652994052b445a5090a8ad2b3bfb4130df42fc332ab295865000818de775cc78fb5b8960e29c68ab7cdff72186aad3b4d953088b956d9817213b0d24f4cff ocaml-base-0.15.0.tar.gz
+69380ed392faf4495459f97f70a10a6959fce71d2e6ba093472fc272141646307fd7872407de855dfa48ef0435f6587eae5aa50f4a67eac40a9e1946d0c3c070 base-0.16.3.tar.gz
"
diff --git a/testing/ocaml-base64/APKBUILD b/testing/ocaml-base64/APKBUILD
index db7ee26bd1d..272311c991d 100644
--- a/testing/ocaml-base64/APKBUILD
+++ b/testing/ocaml-base64/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-base64
_pkgname=base64
pkgver=3.5.0
-pkgrel=0
+pkgrel=2
pkgdesc="Base64 encoding for OCaml"
url="https://github.com/mirage/ocaml-base64"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="ocaml-runtime"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="dune ocaml"
checkdepends="ocaml-alcotest-dev ocaml-bos-dev ocaml-rresult-dev"
@@ -43,19 +42,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
82efc76ca75717dbd533eac20845ca8731f535233f6a3e6081114d7e3dc7ee8367ded16f402ef05ad0bf1217a3a6224161c92b9467023e44fc7f3598a314a432 ocaml-base64-3.5.0.tar.bz2
"
diff --git a/testing/ocaml-bigarray-compat/APKBUILD b/testing/ocaml-bigarray-compat/APKBUILD
index 5b62dac8463..c2946c7961d 100644
--- a/testing/ocaml-bigarray-compat/APKBUILD
+++ b/testing/ocaml-bigarray-compat/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-bigarray-compat
_pkgname=bigarray-compat
pkgver=1.1.0
-pkgrel=0
+pkgrel=2
pkgdesc="Compatibility library to use Stdlib.Bigarray when possible"
url="https://github.com/mirage/bigarray-compat"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="ocaml-runtime"
depends_dev="$pkgname=$pkgver-r$pkgrel"
options="!check"
makedepends="dune ocaml ocaml-findlib ocamlbuild ocaml-compiler-libs"
@@ -49,19 +48,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find usr/lib/ocaml \( \
+ local path; find usr/lib/ocaml \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
bbd9c2b319930db832ae8d41844ef81e74ced9f745f32981f2efcc9777220d55e1e5d6dc2965e9e1a6ed5e0d56ad27c672289f8dc28fbe2658f3230cbda5a800 ocaml-bigarray-compat-1.1.0.tar.gz
"
diff --git a/testing/ocaml-bigstringaf/APKBUILD b/testing/ocaml-bigstringaf/APKBUILD
index bf765b6923d..3f67f25a426 100644
--- a/testing/ocaml-bigstringaf/APKBUILD
+++ b/testing/ocaml-bigstringaf/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-bigstringaf
_pkgname=bigstringaf
pkgver=0.9.0
-pkgrel=0
+pkgrel=2
pkgdesc="Bigstring intrinsics and fast blits based on memcpy/memmove"
url="https://github.com/inhabitedtype/bigstringaf"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="BSD-3-Clause"
-depends="ocaml-runtime"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="dune ocaml"
checkdepends="ocaml-alcotest-dev"
@@ -43,19 +42,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
c5148d967beef15bba21a706009cb8443fe6afd76b949d6a6bcf4fc6c6d410bd0ca4c86b4ef6897cad73c51449e5387ee0173347b8d43c49f1a62024a8aa4db5 ocaml-bigstringaf-0.9.0.tar.gz
"
diff --git a/testing/ocaml-biniou/APKBUILD b/testing/ocaml-biniou/APKBUILD
index 8a06c7601e8..79a3a58f6f9 100644
--- a/testing/ocaml-biniou/APKBUILD
+++ b/testing/ocaml-biniou/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-biniou
_pkgname=biniou
pkgver=1.2.1
-pkgrel=3
+pkgrel=5
pkgdesc="Extensible binary data format, like JSON but faster"
url="https://github.com/ocaml-community/biniou"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="BSD-3-Clause"
-depends="ocaml-runtime ocaml-easy-format"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="dune ocaml ocaml-easy-format-dev ocaml-findlib"
subpackages="$pkgname-dev"
@@ -44,19 +43,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find usr/lib/ocaml \( \
+ local path; find usr/lib/ocaml \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
f0166666559f3a767fdc6987bad45ec4a772b70b8880b6d769ef644c9bfd46962f089c7b5dfff368413015e765daf4bacffe253bdb3478d9a4d30a15f0d29589 ocaml-biniou-1.2.1.tar.gz
"
diff --git a/testing/ocaml-bisect_ppx/APKBUILD b/testing/ocaml-bisect_ppx/APKBUILD
index 48acbf1fb7d..dee6025c47e 100644
--- a/testing/ocaml-bisect_ppx/APKBUILD
+++ b/testing/ocaml-bisect_ppx/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-bisect_ppx
_pkgname=bisect_ppx
-pkgver=2.8.1
-pkgrel=1
+pkgver=2.8.3
+pkgrel=0
pkgdesc="Code coverage for OCaml"
url="https://github.com/aantron/bisect_ppx"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="MIT"
-depends="ocaml-runtime ocaml-cmdliner ocaml-ppxlib"
depends_dev="
$pkgname=$pkgver-r$pkgrel
ocaml-cmdliner-dev
@@ -17,9 +16,7 @@ depends_dev="
makedepends="$depends_dev dune ocaml"
options="!check" # needs ocamlformat
subpackages="$pkgname-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/aantron/bisect_ppx/archive/$pkgver.tar.gz
- ppxlib-0.26-compat.patch
- "
+source="$_pkgname-$pkgver.tar.gz::https://github.com/aantron/bisect_ppx/archive/$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
_ocamldir=usr/lib/ocaml
@@ -33,7 +30,7 @@ build() {
}
check() {
- dune runtest --verbose
+ dune runtest --build-dir=.testenv --verbose
}
package() {
@@ -48,20 +45,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
-6becffb012bcd02cf8042e3f21cc0f1b6ae18984077951c8213f31ae931b0ba69d4b04ae0b1976d59919fd378e5197b49310a6c80ef3a6e06fb48275ed79c149 ocaml-bisect_ppx-2.8.1.tar.gz
-c870b0a6b82d23e7e5595ba80582923a5fefb7720d24c2cc505e0b9effe77f8b1713589f699c2e037fa28118ec6245d4f403c1aebd563785d41ee17bae251eb6 ppxlib-0.26-compat.patch
+061f335617ff294a470efd9769adacf7a6fd11f30493aea8717e4b61a79e77a4f610dbf6026f518b35e3ef58bd0ba209bfdf60e589888469bee815d007488beb bisect_ppx-2.8.3.tar.gz
"
diff --git a/testing/ocaml-bisect_ppx/ppxlib-0.26-compat.patch b/testing/ocaml-bisect_ppx/ppxlib-0.26-compat.patch
deleted file mode 100644
index 2eea6042133..00000000000
--- a/testing/ocaml-bisect_ppx/ppxlib-0.26-compat.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-Taken from https://github.com/aantron/bisect_ppx/pull/400
-
---- a/src/ppx/instrument.ml
-+++ b/src/ppx/instrument.ml
-@@ -490,11 +490,14 @@
- |> List.map (fun (location_trace, p'') ->
- (location_trace, Pat.alias ~loc ~attrs p'' x))
-
-- | Ppat_construct (c, Some p') ->
-+ | Ppat_construct (c, Some ([], p')) ->
- recur ~enclosing_loc p'
- |> List.map (fun (location_trace, p'') ->
- (location_trace, Pat.construct ~loc ~attrs c (Some p'')))
-
-+ | Ppat_construct (_, Some (_ :: _, _)) ->
-+ Location.raise_errorf ~loc "bisect_ppx: named existentials aren't supported"
-+
- | Ppat_variant (c, Some p') ->
- recur ~enclosing_loc p'
- |> List.map (fun (location_trace, p'') ->
-@@ -708,11 +711,14 @@
- List.map (fun (_, p') -> bound_variables p') fields
- |> List.flatten
-
-- | Ppat_construct (_, Some p') | Ppat_variant (_, Some p')
-+ | Ppat_construct (_, Some ([], p')) | Ppat_variant (_, Some p')
- | Ppat_constraint (p', _) | Ppat_lazy p' | Ppat_exception p'
- | Ppat_open (_, p') ->
- bound_variables p'
-
-+ | Ppat_construct (_, Some ({loc; _} :: _, _)) ->
-+ Location.raise_errorf ~loc "bisect_ppx: named existentials aren't supported"
-+
- | Ppat_or (p_1, _) ->
- bound_variables p_1 (* Should be unreachable. *)
-
-@@ -725,10 +731,13 @@
- | Ppat_type _ | Ppat_variant _ ->
- true
-
-- | Ppat_alias (p', _) | Ppat_construct (_, Some p')
-+ | Ppat_alias (p', _) | Ppat_construct (_, Some ([], p'))
- | Ppat_constraint (p', _) | Ppat_lazy p' | Ppat_exception p'
- | Ppat_open (_, p') ->
- has_polymorphic_variant p'
-+
-+ | Ppat_construct (_, Some ({loc; _} :: _, _)) ->
-+ Location.raise_errorf ~loc "bisect_ppx: named existentials aren't supported"
-
- | Ppat_tuple ps | Ppat_array ps ->
- List.exists has_polymorphic_variant ps
diff --git a/testing/ocaml-bitstring/APKBUILD b/testing/ocaml-bitstring/APKBUILD
index 7ed87d919ab..697f54c3c86 100644
--- a/testing/ocaml-bitstring/APKBUILD
+++ b/testing/ocaml-bitstring/APKBUILD
@@ -1,15 +1,18 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-bitstring
_pkgname=bitstring
pkgver=4.1.0
-pkgrel=1
+pkgrel=3
pkgdesc="Erlang-style bitstrings for OCaml"
url="https://github.com/xguerin/bitstring"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="LGPL-2.0-or-later"
-depends="ocaml-runtime ocaml-ppxlib ocaml-stdlib-shims"
-depends_dev="$pkgname=$pkgver-r$pkgrel ocaml-ppxlib-dev"
+depends_dev="
+ $pkgname=$pkgver-r$pkgrel
+ ocaml-ppxlib-dev
+ ocaml-stdlib-shims
+ "
makedepends="$depends_dev dune ocaml"
options="!check" # needs oUnit
subpackages="$pkgname-dev"
@@ -42,19 +45,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
808c2f1e12286a0a346d52b0a72008e248a3ca0fd9f99b8db9f38929d25492bcb6e65ecb7e7339c23269dd948c51e5f0fc917b13adc0c497ea4d4e5c0ed7d250 ocaml-bitstring-4.1.0.tar.gz
"
diff --git a/testing/ocaml-bos/APKBUILD b/testing/ocaml-bos/APKBUILD
index 17e953d6192..0e0859abc27 100644
--- a/testing/ocaml-bos/APKBUILD
+++ b/testing/ocaml-bos/APKBUILD
@@ -1,21 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-bos
_pkgname=bos
pkgver=0.2.1
-pkgrel=0
+pkgrel=2
pkgdesc="Basic OS interaction for OCaml"
url="https://erratique.ch/software/bos"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="
- ocaml-runtime
- ocaml-astring
- ocaml-fmt
- ocaml-fpath
- ocaml-logs
- ocaml-rresult
- "
depends_dev="
$pkgname=$pkgver-r$pkgrel
ocaml-astring-dev
@@ -62,19 +54,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
8daeb8a4c2dd1f2460f6274ada19f4f1b6ebe875ff83a938c93418ce0e6bdb74b8afc5c9a7d410c1c9df2dad030e4fa276b6ed2da580639484e8b5bc92610b1d ocaml-bos-0.2.1.tar.bz2
"
diff --git a/testing/ocaml-ca-certs-nss/APKBUILD b/testing/ocaml-ca-certs-nss/APKBUILD
index 8975a5a3147..17a16aaf261 100644
--- a/testing/ocaml-ca-certs-nss/APKBUILD
+++ b/testing/ocaml-ca-certs-nss/APKBUILD
@@ -1,19 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-ca-certs-nss
_pkgname=ca-certs-nss
-pkgver=3.77
-pkgrel=0
+pkgver=3.89.1
+pkgrel=1
pkgdesc="X.509 trust anchors extracted from Mozilla's NSS"
url="https://github.com/mirage/ca-certs-nss"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="
- ocaml-runtime
- ocaml-mirage-clock
- ocaml-mirage-crypto
- ocaml-x509
- "
depends_dev="
$pkgname=$pkgver-r$pkgrel
ocaml-mirage-clock-dev
@@ -63,14 +57,12 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
@@ -83,6 +75,27 @@ tools() {
amove usr/bin
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
-fdeadfd8decdb1441b9d41ab2a8a747c66cf4029031ab6528a7930d372b945d0a5d3ba1702ec076f6eb71659d788c7c0db5f685339e5ba09de4f52cf882c5764 ocaml-ca-certs-nss-3.77.tar.bz2
+274d59075585ca13420c2d35082e9d12e1d842620c9b13e2215e0ade8c114d18e85dfe08da24f51dbfe69abccaef14d0ca6968f6073718063a925cdc9986699e ocaml-ca-certs-nss-3.89.1.tar.bz2
"
diff --git a/testing/ocaml-ca-certs/APKBUILD b/testing/ocaml-ca-certs/APKBUILD
index f2171b2e6b4..834292bc984 100644
--- a/testing/ocaml-ca-certs/APKBUILD
+++ b/testing/ocaml-ca-certs/APKBUILD
@@ -1,23 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-ca-certs
_pkgname=ca-certs
pkgver=0.2.2
-pkgrel=0
+pkgrel=2
pkgdesc="Detect root CA certificates from the operating system"
url="https://github.com/mirage/ca-certs"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="
- ocaml-runtime
- ocaml-astring
- ocaml-bos
- ocaml-fpath
- ocaml-logs
- ocaml-mirage-crypto
- ocaml-ptime
- ocaml-x509
- "
depends_dev="
$pkgname=$pkgver-r$pkgrel
ocaml-astring-dev
@@ -61,19 +51,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
70e564a5bb69a66018ff3387bf7b4b6af2ec1507d9f2f140f2aa8519e405920ec1469e56d1fa2aa8b452d05531a35f22df2c1ac08071f9a322525e95de8e3e1f ocaml-ca-certs-0.2.2.tar.bz2
"
diff --git a/testing/ocaml-cairo2/APKBUILD b/testing/ocaml-cairo2/APKBUILD
index ebf1ecead9f..0ff0a866016 100644
--- a/testing/ocaml-cairo2/APKBUILD
+++ b/testing/ocaml-cairo2/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-cairo2
_pkgname=cairo2
pkgver=0.6.2
-pkgrel=0
+pkgrel=2
pkgdesc="OCaml bindings to Cairo, a 2D Vector Graphics Library"
url="https://github.com/Chris00/ocaml-cairo"
-arch="all !riscv64" # restricted by ocaml
+arch="all !riscv64 !loongarch64" # ocaml
license="LGPL-3.0-only"
-depends="ocaml-runtime"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="
dune
@@ -52,19 +51,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find usr/lib/ocaml \( \
+ local path; find usr/lib/ocaml \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
789b65428855c3b8fb71836ee6e607870c3140a6152fb01b8ba6e7d2e2f4842a62412061a5eff99023234d305587b605d0cbbacd29456c86a52e9df6466bd302 ocaml-cairo2-0.6.2.tar.bz2
"
diff --git a/testing/ocaml-calendar/APKBUILD b/testing/ocaml-calendar/APKBUILD
index 1fca69f7db5..d58c15b9095 100644
--- a/testing/ocaml-calendar/APKBUILD
+++ b/testing/ocaml-calendar/APKBUILD
@@ -3,11 +3,11 @@
pkgname=ocaml-calendar
_pkgname=calendar
pkgver=2.04
-pkgrel=2
+pkgrel=4
pkgdesc="Objective Caml library for managing dates and times"
url="https://forge.ocamlcore.org/projects/calendar/"
-arch="all !riscv64" # limited by ocaml aport
-license="LGPL-2.1-or-later-WITH-linking-exception"
+arch="all !riscv64 !loongarch64" # ocaml
+license="LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception"
makedepends="ocaml ocaml-findlib-dev ocaml-ocamldoc gawk"
subpackages="$pkgname-dev $pkgname-doc"
source="https://download.ocamlcore.org/calendar/calendar/$pkgver/calendar-$pkgver.tar.gz"
@@ -42,19 +42,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find usr/lib/ocaml \( \
+ local path; find usr/lib/ocaml \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
3941768428eda47f47912846cc2921ee82c722bda7cf6095c1c8bdcfebc19bb8f64ebb1a25475396d2a49c186b83421af63602a54a261684117b1c036a66cf3d calendar-2.04.tar.gz
"
diff --git a/testing/ocaml-camlzip/APKBUILD b/testing/ocaml-camlzip/APKBUILD
index b39c1b6226a..4b24ebb8cc4 100644
--- a/testing/ocaml-camlzip/APKBUILD
+++ b/testing/ocaml-camlzip/APKBUILD
@@ -1,15 +1,14 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-camlzip
_pkgname=camlzip
pkgver=1.11
_pkgver="rel${pkgver//./}"
-pkgrel=0
+pkgrel=2
pkgdesc="Access compressed files in ZIP, GZIP and JAR format"
url="https://github.com/xavierleroy/camlzip"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception"
-depends="ocaml-runtime"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="ocaml ocaml-findlib zlib-dev"
options="!check"
@@ -40,19 +39,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
4d69ef900437e66e00cd345497ec70f407f28cd8344ee5f2fad685d3bfe356924597d1854b752f2841b4007f96d6e0307cfae7e13cfb6f74951ae3eba5198a06 ocaml-camlzip-1.11.tar.gz
"
diff --git a/testing/ocaml-camomile/APKBUILD b/testing/ocaml-camomile/APKBUILD
index a76ac20263e..1ac56963d75 100644
--- a/testing/ocaml-camomile/APKBUILD
+++ b/testing/ocaml-camomile/APKBUILD
@@ -1,14 +1,14 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-camomile
_pkgname=camomile
pkgver=1.0.2
-pkgrel=1
+pkgrel=3
pkgdesc="A Unicode library for OCaml"
url="https://github.com/yoriyuki/Camomile"
-arch="all !riscv64" # restricted by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="LGPL-2.0-or-later"
-depends="$pkgname-data=$pkgver-r$pkgrel ocaml-runtime"
+depends="$pkgname-data=$pkgver-r$pkgrel"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="dune ocaml ocaml-compiler-libs ocaml-cppo ocaml-findlib"
subpackages="$pkgname-dev $pkgname-data::noarch"
@@ -52,14 +52,12 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find usr/lib/ocaml \( \
+ local path; find usr/lib/ocaml \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
@@ -72,6 +70,27 @@ data() {
amove usr/share/"$_pkgname"
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
7586422e68779476206027c6ebbe19b677fbe459153221f7c952c7fae374c5c8232249cb76fdb1f482069707aa1580be827cd39693906142988268b7f0e7f6d0 ocaml-camomile-1.0.2.tar.bz2
"
diff --git a/testing/ocaml-charinfo_width/APKBUILD b/testing/ocaml-charinfo_width/APKBUILD
index 12b4ad75f3f..cd984f54d78 100644
--- a/testing/ocaml-charinfo_width/APKBUILD
+++ b/testing/ocaml-charinfo_width/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-charinfo_width
_pkgname=charInfo_width
pkgver=1.1.0
-pkgrel=1
+pkgrel=3
pkgdesc="Determine column width for a character in OCaml"
url="https://github.com/kandu/charinfo_width/"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="MIT"
-depends="ocaml-runtime ocaml-camomile ocaml-result"
depends_dev="$pkgname=$pkgver-r$pkgrel ocaml-camomile-dev ocaml-result-dev"
makedepends="$depends_dev dune ocaml"
options="!check" # needs ppx_expect
@@ -42,19 +41,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
c8dac9eb6f520213de69b23433e2f0d6a21578c70ae69fb682065e707363968959395a6ddc6c88893e08372a138287318634b52a8b4fb70ac988b4ad4a18b140 ocaml-charinfo_width-1.1.0.tar.gz
"
diff --git a/testing/ocaml-cmdliner/APKBUILD b/testing/ocaml-cmdliner/APKBUILD
index d2130476e61..a029a7768c2 100644
--- a/testing/ocaml-cmdliner/APKBUILD
+++ b/testing/ocaml-cmdliner/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-cmdliner
_pkgname=cmdliner
pkgver=1.1.1
-pkgrel=1
+pkgrel=3
pkgdesc="Declarative definition of command line interfaces for OCaml"
url="https://erratique.ch/software/cmdliner"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="ocaml-runtime"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="ocaml"
options="!check" # no tests provided
@@ -36,19 +35,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
5478ad833da254b5587b3746e3a8493e66e867a081ac0f653a901cc8a7d944f66e4387592215ce25d939be76f281c4785702f54d4a74b1700bc8838a62255c9e ocaml-cmdliner-1.1.1.tar.bz2
"
diff --git a/testing/ocaml-compiler-libs-repackaged/APKBUILD b/testing/ocaml-compiler-libs-repackaged/APKBUILD
index 5e364b5c1e9..bbf75db047e 100644
--- a/testing/ocaml-compiler-libs-repackaged/APKBUILD
+++ b/testing/ocaml-compiler-libs-repackaged/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-compiler-libs-repackaged
_pkgname=ocaml-compiler-libs
pkgver=0.12.4
-pkgrel=1
+pkgrel=3
pkgdesc="OCaml compiler libraries repackaged to not expose everything at toplevel"
url="https://github.com/janestreet/ocaml-compiler-libs"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="MIT"
-depends="ocaml-runtime ocaml-compiler-libs"
depends_dev="$pkgname=$pkgver-r$pkgrel ocaml-compiler-libs"
makedepends="$depends_dev dune ocaml"
subpackages="$pkgname-dev"
@@ -41,19 +40,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
978dba8dfa61f98fa24fda7a9c26c2e837081f37d1685fe636dc19cfc3278a940cf01a10293504b185c406706bc1008bc54313d50f023bcdea6d5ac6c0788b35 ocaml-compiler-libs-repackaged-0.12.4.tar.bz2
"
diff --git a/testing/ocaml-containers/APKBUILD b/testing/ocaml-containers/APKBUILD
index 5be71dc13ec..e2a05ef6ed4 100644
--- a/testing/ocaml-containers/APKBUILD
+++ b/testing/ocaml-containers/APKBUILD
@@ -1,13 +1,12 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-containers
pkgver=3.7
-pkgrel=0
+pkgrel=2
pkgdesc="Modular, clean and powerful extension of the OCaml standard library"
url="https://github.com/c-cube/ocaml-containers/"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="BSD-2-Clause"
-depends="ocaml-runtime"
depends_dev="$pkgname=$pkgver-r$pkgrel ocaml-compiler-libs"
makedepends="$depends_dev dune dune-configurator ocaml"
checkdepends="
@@ -48,7 +47,6 @@ package() {
top() {
pkgdesc="$pkgdesc (toplevel pretty-printers)"
- depends="$depends ocaml-compiler-libs"
amove usr/lib/ocaml/containers-data/top/
amove usr/lib/ocaml/containers/top/
@@ -59,19 +57,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
70f99a062f7696d4ed7a6336532261c93c49a9858a84a12f7f3d60190a5c664198e70be6281dc7c7932c07325dc9c579ff521367e4c7e083566910ba0f9ea760 ocaml-containers-3.7.tar.gz
f8404c969bfc5b03b3c8d786b04ff03e24a3eb7e75d3d1d9b84922ca78ffe4223229e8a823e401bbd967b4548d211481d4c6efefc48a603bf5d5f0b9fad239ac use-built-in-libraries.patch
diff --git a/testing/ocaml-cppo/APKBUILD b/testing/ocaml-cppo/APKBUILD
deleted file mode 100644
index 3dc51adf9a6..00000000000
--- a/testing/ocaml-cppo/APKBUILD
+++ /dev/null
@@ -1,68 +0,0 @@
-# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer:
-pkgname=ocaml-cppo
-_pkgname=cppo
-pkgver=1.6.8
-pkgrel=1
-pkgdesc="C-style preprocessor for OCaml"
-url="https://github.com/mjambon/cppo"
-arch="all !riscv64" # restricted by ocaml
-license="BSD-3-Clause"
-depends_dev="$pkgname=$pkgver-r$pkgrel $pkgname-ocamlbuild=$pkgver-r$pkgrel"
-makedepends="dune ocaml ocaml-ocamlbuild-dev ocaml-findlib"
-subpackages="$pkgname-dev $pkgname-ocamlbuild"
-source="$pkgname-$pkgver.tar.gz::https://github.com/mjambon/cppo/archive/v$pkgver.tar.gz"
-builddir="$srcdir/$_pkgname-$pkgver"
-
-# 32-bit archs
-case "$CARCH" in
- arm*|x86) options="$options textrels" ;;
-esac
-
-build() {
- export OCAMLPATH=/usr/lib/ocaml
- dune build --root . @install @DEFAULT
-}
-
-check() {
- dune runtest
-}
-
-package() {
- dune install \
- --destdir="$pkgdir" \
- --prefix=/usr \
- --libdir=/usr/lib/ocaml
-
- # Nothing interesting here.
- rm -Rf "$pkgdir"/usr/doc
-}
-
-ocamlbuild() {
- pkgdesc="$pkgdesc (Ocamlbuild plugin)"
- depends="ocaml-runtime ocaml-ocamlbuild"
-
- amove usr/lib/ocaml/${_pkgname}_ocamlbuild
-}
-
-dev() {
- default_dev
-
- cd "$pkgdir"
-
- local path; for path in $(find usr/lib/ocaml \( \
- -name '*.cmt' -o \
- -name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
- -name '*.ml' -o \
- -name '*.mli' \
- \))
- do
- amove "$path"
- done
-}
-
-sha512sums="
-069bbe0ef09c03b0dc4b5795f909c3ef872fe99c6f1e6704a0fa97594b1570b3579226ec67fe11d696ccc349a4585055bbaf07c65eff423aa45af28abf38c858 ocaml-cppo-1.6.8.tar.gz
-"
diff --git a/testing/ocaml-csexp/APKBUILD b/testing/ocaml-csexp/APKBUILD
deleted file mode 100644
index 92ae4cefe47..00000000000
--- a/testing/ocaml-csexp/APKBUILD
+++ /dev/null
@@ -1,63 +0,0 @@
-# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer: rubicon <rubicon@mailo.com>
-pkgname=ocaml-csexp
-_pkgname=csexp
-pkgver=1.5.1
-pkgrel=1
-pkgdesc="Parsing and printing of S-expressions in Canonical form"
-url="https://github.com/ocaml-dune/csexp"
-arch="all !riscv64" # limited by ocaml aport
-license="MIT"
-depends="ocaml-runtime"
-depends_dev="$pkgname=$pkgver-r$pkgrel"
-options="!check" # requires ppx_expect
-makedepends="dune ocaml ocaml-findlib ocamlbuild"
-subpackages="$pkgname-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/ocaml-dune/csexp/archive/$pkgver.tar.gz"
-builddir="$srcdir/$_pkgname-$pkgver"
-
-# 32-bit archs
-case "$CARCH" in
- arm*|x86) options="$options textrels" ;;
-esac
-
-build() {
- export OCAMLPATH=/usr/lib/ocaml
- dune build @install
-}
-
-check() {
- dune runtest
-}
-
-package() {
- dune install \
- --destdir="$pkgdir" \
- --prefix=/usr \
- --libdir=/usr/lib/ocaml
-
- # There's just a readme and changelog.
- rm -Rf "$pkgdir"/usr/doc
-}
-
-dev() {
- default_dev
-
- cd "$pkgdir"
-
- local path; for path in $(find usr/lib/ocaml \( \
- -name '*.cmt' -o \
- -name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
- -name '*.ml' -o \
- -name '*.mli' \
- \))
- do
- amove "$path"
- done
-}
-
-sha512sums="
-b451f380786fda53998f77b1509422d58bb5a51518595e329f625fbf0ca67e597be0c9935de77a10a65216cb4b9ec91579ad51bdeee536795e142e014433d46b ocaml-csexp-1.5.1.tar.gz
-"
diff --git a/testing/ocaml-cstruct/APKBUILD b/testing/ocaml-cstruct/APKBUILD
index 2b8a5828552..6d7a231db6a 100644
--- a/testing/ocaml-cstruct/APKBUILD
+++ b/testing/ocaml-cstruct/APKBUILD
@@ -1,20 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-cstruct
_pkgname=cstruct
pkgver=6.1.0
-pkgrel=0
+pkgrel=3
pkgdesc="Access C-like structures directly from OCaml"
url="https://github.com/mirage/ocaml-cstruct"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="
- ocaml-runtime
- ocaml-fmt
- ocaml-lwt
- ocaml-ppxlib
- ocaml-sexplib
- "
depends_dev="
$pkgname=$pkgver-r$pkgrel
ocaml-fmt-dev
@@ -58,19 +51,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
24620eb8dd37b7508a6adbad19fe21b44739a1bd641827b4fdd74e642991647fb814cabdf44195199bdb5208cac182580c55dce511bf22ad595d56a140cc0584 ocaml-cstruct-6.1.0.tar.bz2
"
diff --git a/testing/ocaml-ctypes/APKBUILD b/testing/ocaml-ctypes/APKBUILD
index 619562547ef..af036b48ce3 100644
--- a/testing/ocaml-ctypes/APKBUILD
+++ b/testing/ocaml-ctypes/APKBUILD
@@ -1,13 +1,12 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-ctypes
pkgver=0.20.1
-pkgrel=0
+pkgrel=2
pkgdesc="Combinators for binding to C libraries without writing any C"
url="https://github.com/ocamllabs/ocaml-ctypes"
-arch="all !riscv64" # restricted by ocaml
+arch="all !riscv64 !loongarch64" # ocaml
license="MIT"
-depends="ocaml-runtime"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="
libffi-dev
@@ -21,7 +20,6 @@ makedepends="
options="!check" # requires lwt and ounit
subpackages="$pkgname-dev"
source="$pkgname-$pkgver.tar.gz::https://github.com/ocamllabs/ocaml-ctypes/archive/$pkgver.tar.gz"
-builddir="$srcdir/$pkgname-$pkgver"
# 32-bit archs
case "$CARCH" in
@@ -44,19 +42,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find usr/lib/ocaml \( \
+ local path; find usr/lib/ocaml \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
f95e65ce5003a07634afcbee431cb23c54c8335f926074615fc8d76ab777b9d2fce8f75bb25bbb6ed9550a7d6237fb377aa9ad65a426d2d7e387f86c1158fe4a ocaml-ctypes-0.20.1.tar.gz
"
diff --git a/testing/ocaml-curses/APKBUILD b/testing/ocaml-curses/APKBUILD
index 2be027e35ba..db32edee067 100644
--- a/testing/ocaml-curses/APKBUILD
+++ b/testing/ocaml-curses/APKBUILD
@@ -3,12 +3,11 @@
pkgname=ocaml-curses
_pkgname=curses
pkgver=1.0.10
-pkgrel=0
+pkgrel=2
pkgdesc="OCaml bindings for ncurses"
url="https://github.com/mbacarella/curses"
-arch="all !riscv64" # restricted by ocaml
-license="LGPL-2.1"
-depends="ocaml-runtime"
+arch="all !riscv64 !loongarch64" # ocaml
+license="LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="dune dune-configurator-dev ncurses-dev ocaml ocaml-csexp-dev"
subpackages="$pkgname-dev"
@@ -43,19 +42,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find usr/lib/ocaml \( \
+ local path; find usr/lib/ocaml \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
158626f3fd6931f30482a47ab149990ff49334c8c0dc966eb07d92f22e87faaab3fd48ed7788bbc5a77f82cb6163520588ce55ab53456bca22994f147c7e00c5 ocaml-curses-1.0.10.tar.bz2
"
diff --git a/testing/ocaml-dns/APKBUILD b/testing/ocaml-dns/APKBUILD
index 4716fa0c653..041acd874ec 100644
--- a/testing/ocaml-dns/APKBUILD
+++ b/testing/ocaml-dns/APKBUILD
@@ -1,42 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-dns
_pkgname=dns
pkgver=6.2.2
-pkgrel=0
+pkgrel=3
pkgdesc="An opinionated Domain Name System (DNS) library"
url="https://github.com/mirage/ocaml-dns"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="BSD-2-Clause"
-depends="
- ocaml-runtime
- ocaml-bos
- ocaml-hex
- ocaml-base64
- ocaml-cstruct
- ocaml-domain-name
- ocaml-duration
- ocaml-fmt
- ocaml-gmap
- ocaml-happy-eyeballs
- ocaml-ipaddr
- ocaml-logs
- ocaml-lru
- ocaml-metrics
- ocaml-ptime
- ocaml-ca-certs
- ocaml-ca-certs-nss
- ocaml-lwt
- ocaml-mirage-clock
- ocaml-mirage-crypto
- ocaml-mirage-random
- ocaml-mirage-time
- ocaml-mtime
- ocaml-randomconv
- ocaml-tcpip
- ocaml-tls
- ocaml-x509
- "
depends_dev="
$pkgname=$pkgver-r$pkgrel
ocaml-bos-dev
@@ -99,14 +70,12 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
@@ -119,6 +88,27 @@ tools() {
amove usr/bin
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
6bb12f258114cf89b7fb0ad9bd8be80863e6e9a2d32173143fdada1534898260fddd7b5965122a67eae4cd81c3918e80b0f04a4c20f6d399e01a9a9eefbdc2b9 ocaml-dns-6.2.2.tar.bz2
"
diff --git a/testing/ocaml-domain-name/APKBUILD b/testing/ocaml-domain-name/APKBUILD
index aefb0e39be5..2ebe82a1a7b 100644
--- a/testing/ocaml-domain-name/APKBUILD
+++ b/testing/ocaml-domain-name/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-domain-name
_pkgname=domain-name
pkgver=0.4.0
-pkgrel=0
+pkgrel=2
pkgdesc="RFC 1035 Internet domain names"
url="https://github.com/hannesm/domain-name"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="ocaml-runtime"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="dune ocaml"
checkdepends="ocaml-alcotest-dev"
@@ -43,19 +42,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
f25aedb1ddf6ab8c49b1545cf88f4990114a9e7954d91cabf260e6ce470abd42dd135e8a55084262a77d4c9ee4bff6dc00c71307b23a48d82d50593b910ee173 ocaml-domain-name-0.4.0.tar.bz2
"
diff --git a/testing/ocaml-down/APKBUILD b/testing/ocaml-down/APKBUILD
index 0208cadac44..c2ad2432cf4 100644
--- a/testing/ocaml-down/APKBUILD
+++ b/testing/ocaml-down/APKBUILD
@@ -1,18 +1,18 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-down
_pkgname=down
pkgver=0.1.0
-pkgrel=1
+pkgrel=3
pkgdesc="OCaml toplevel (REPL) upgrade"
url="https://erratique.ch/software/down"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="ocaml-runtime ocaml-compiler-libs"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="
ocaml
ocamlbuild
+ ocaml-compiler-libs
ocaml-findlib
ocaml-topkg
cmd:opam-installer
@@ -46,19 +46,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
f09d34f9a21d6a65ce85d9f6c267ee811d85cc0a91ab9dd76ed6ca0e8183df09a2e77331484e54661d154465d64fc31adb4be4a94615ef735c772d56b409a9e3 ocaml-down-0.1.0.tar.bz2
"
diff --git a/testing/ocaml-duration/APKBUILD b/testing/ocaml-duration/APKBUILD
index cd2129e81ca..40bdfe125bc 100644
--- a/testing/ocaml-duration/APKBUILD
+++ b/testing/ocaml-duration/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-duration
_pkgname=duration
pkgver=0.2.0
-pkgrel=0
+pkgrel=2
pkgdesc="Conversions to various time units"
url="https://github.com/hannesm/duration"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="ocaml-runtime"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="dune ocaml"
checkdepends="ocaml-alcotest-dev"
@@ -43,19 +42,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
6a259ca406739bfc6020c7de767e39c2a7ee06169aa1966d43d426b2a54fc69b81be6465d04b9bd8fbbbbfd9ebe1c82a1cbfbf62100a37eb0f7403f6cf53e3b8 ocaml-duration-0.2.0.tar.bz2
"
diff --git a/testing/ocaml-easy-format/APKBUILD b/testing/ocaml-easy-format/APKBUILD
index f372b497b4a..c3368797c34 100644
--- a/testing/ocaml-easy-format/APKBUILD
+++ b/testing/ocaml-easy-format/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-easy-format
_pkgname=easy-format
-pkgver=1.3.3
+pkgver=1.3.4
pkgrel=1
pkgdesc="Pretty-printing library for OCaml"
url="https://mjambon.github.io/mjambon2016/easy-format.html"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="BSD-3-Clause"
-depends="ocaml-runtime"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="dune ocaml ocaml-findlib"
subpackages="$pkgname-dev"
@@ -44,19 +43,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find usr/lib/ocaml \( \
+ local path; find usr/lib/ocaml \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
-697f4143750320e4f02360e61fb2e5fa4ad41091a87aa997beaf0275d5d6e91d57b13c6578f1f2dca09dd4ff1a09a5922cf805ab0611aca5357757911f6d1bcb ocaml-easy-format-1.3.3.tar.gz
+e3f25d8e40fefb22ed327601c8dcdadcea97fcb15ca3e92e095fd773b545d738d6709c77e76b3870bd035f985b187c7ca7a4af9bdfa95a45865ee14c9219652e ocaml-easy-format-1.3.4.tar.gz
"
diff --git a/testing/ocaml-eqaf/APKBUILD b/testing/ocaml-eqaf/APKBUILD
index 3b03d1a69ca..3370a6d549d 100644
--- a/testing/ocaml-eqaf/APKBUILD
+++ b/testing/ocaml-eqaf/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-eqaf
_pkgname=eqaf
pkgver=0.8
-pkgrel=0
+pkgrel=2
pkgdesc="Constant-time equal function on string"
url="https://github.com/mirage/eqaf"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="MIT"
-depends="ocaml-runtime ocaml-cstruct"
depends_dev="$pkgname=$pkgver-r$pkgrel ocaml-cstruct-dev"
makedepends="$depends_dev dune ocaml"
checkdepends="ocaml-alcotest-dev ocaml-base64-dev ocaml-crowbar-dev"
@@ -43,19 +42,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
303749bdbaae8fc27f57ebaa5cf9b16ed5b8cbaee35f0a35d69f91a437b1a3411a613d145d3aff7ff74a587509d877cc0a569fdae4d00cec65bf50d705361e25 ocaml-eqaf-0.8.tar.bz2
"
diff --git a/testing/ocaml-erm_xml/APKBUILD b/testing/ocaml-erm_xml/APKBUILD
index 7ecd2b9e272..547f3f71e78 100644
--- a/testing/ocaml-erm_xml/APKBUILD
+++ b/testing/ocaml-erm_xml/APKBUILD
@@ -1,15 +1,14 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-erm_xml
_pkgname=xml
pkgver=0_git20211229
_commit=a2b4db61ca93dc265ca47b51d01fa147d3b267c3
-pkgrel=0
+pkgrel=2
pkgdesc="XML stream parser for OCaml"
url="https://github.com/hannesm/xml"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="BSD-3-Clause"
-depends="ocaml-runtime"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="
ocaml
@@ -49,19 +48,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
ddb674fbd4e27aece25d4b288163ee7550591f8d23c7219dd212355cab9feedba847ae9990ac1219c834ec9620fcc5c4805013f99f1d5312a36c4a0c1d3f0536 ocaml-erm_xml-0_git20211229.tar.gz
"
diff --git a/testing/ocaml-erm_xmpp/APKBUILD b/testing/ocaml-erm_xmpp/APKBUILD
index 657c5cd87d3..3bc0b5c1a3b 100644
--- a/testing/ocaml-erm_xmpp/APKBUILD
+++ b/testing/ocaml-erm_xmpp/APKBUILD
@@ -1,22 +1,16 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-erm_xmpp
_pkgname=xmpp
pkgver=0_git20220404
_commit=e54d54e142ac9770c37e144693473692bf473530
-pkgrel=0
+pkgrel=2
pkgdesc="XMPP protocol implementation for OCaml"
url="https://github.com/hannesm/xmpp"
-# riscv64: restricted by ocaml aport
+# riscv64, loongarch64: restricted by ocaml aport
# ppc64le: ocamlbuild terminated with error code 10
-arch="all !riscv64 !ppc64le"
+arch="all !riscv64 !loongarch64 !ppc64le"
license="BSD-3-Clause"
-depends="
- ocaml-runtime
- ocaml-base64
- ocaml-erm_xml
- ocaml-mirage-crypto
- "
depends_dev="
$pkgname=$pkgver-r$pkgrel
ocaml-base64-dev
@@ -63,19 +57,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
84e5b165d0257cfbbc83e888adeca2233cca201f66b7ac4d661a1fee56290816d3c36f8793bfae8ca10e52acd76baa4b29ca45e29da2701976d0b676a600252a ocaml-erm_xmpp-0_git20220404.tar.gz
"
diff --git a/testing/ocaml-ethernet/APKBUILD b/testing/ocaml-ethernet/APKBUILD
index 897776777ad..da3a5cdd1a0 100644
--- a/testing/ocaml-ethernet/APKBUILD
+++ b/testing/ocaml-ethernet/APKBUILD
@@ -1,21 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-ethernet
_pkgname=ethernet
pkgver=3.0.0
-pkgrel=0
+pkgrel=3
pkgdesc="OCaml Ethernet (IEEE 802.3) layer, used in MirageOS"
url="https://github.com/mirage/ethernet"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="
- ocaml-runtime
- ocaml-cstruct
- ocaml-logs
- ocaml-ipaddr
- ocaml-mirage-net
- ocaml-mirage-profile
- "
depends_dev="
$pkgname=$pkgver-r$pkgrel
ocaml-cstruct-dev
@@ -55,19 +47,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
171d061b16f2e00b9caa3dfc1cd9b5b358d380e892281ac5c137dc2a3119c3fa288ea927dcb4e9efbcf4850f6857ed0d4b754f56dbb248c1c6150779e57d24e4 ocaml-ethernet-3.0.0.tar.bz2
"
diff --git a/testing/ocaml-extlib/APKBUILD b/testing/ocaml-extlib/APKBUILD
index 90f3688092e..51bcf7a895a 100644
--- a/testing/ocaml-extlib/APKBUILD
+++ b/testing/ocaml-extlib/APKBUILD
@@ -2,12 +2,12 @@
# Maintainer: Fernando Casas Schossow <casasfernando@outlook.com>
pkgname=ocaml-extlib
_pkgname=extlib
-pkgver=1.7.8
-pkgrel=1
+pkgver=1.7.9
+pkgrel=2
pkgdesc="OCaml ExtLib additions to the standard library"
url="https://github.com/ygrek/ocaml-extlib"
-arch="all !riscv64" # limited by ocaml
-license="LGPL-2.1-or-later-WITH-linking-exception"
+arch="all !riscv64 !loongarch64" # ocaml
+license="LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception"
makedepends="ocaml ocaml-findlib-dev ocaml-ocamldoc ocaml-cppo gawk"
subpackages="$pkgname-dev $pkgname-doc"
source="https://github.com/ygrek/ocaml-extlib/releases/download/$pkgver/extlib-$pkgver.tar.gz"
@@ -39,19 +39,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find usr/lib/ocaml \( \
+ local path; find usr/lib/ocaml \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
-664a8366fb4eed685bd8f8907dbc9a8103bbf75ebb5d7635f6db890722e673107aa052bd09c276f5ed10dc3695220234c382d90d4f8c4e6b93ff68dd22e876e4 extlib-1.7.8.tar.gz
+2386ac69f037ea520835c0624d39ae9fbffe43a20b18e247de032232ed6f419d667b53d2314c6f56dc71d368bf0b6201a56c2f3f2a5bdfd933766c5a6cb98768 extlib-1.7.9.tar.gz
"
diff --git a/testing/ocaml-fileutils/APKBUILD b/testing/ocaml-fileutils/APKBUILD
index 89f43527c63..cfae1523bb4 100644
--- a/testing/ocaml-fileutils/APKBUILD
+++ b/testing/ocaml-fileutils/APKBUILD
@@ -2,20 +2,21 @@
# Maintainer: Fernando Casas Schossow <casasfernando@outlook.com>
pkgname=ocaml-fileutils
_pkgname=fileutils
-pkgver=0.6.3
-pkgrel=1
+pkgver=0.6.4
+pkgrel=2
pkgdesc="OCaml library for common file and filename operations"
url="https://github.com/gildor478/ocaml-fileutils"
-arch="all !riscv64" # limited by ocaml aport
-license="LGPL-2.1-or-later-WITH-linking-exception"
+arch="all !riscv64 !loongarch64" # ocaml
+license="LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception"
makedepends="
dune
ocaml
- ocaml-ocamldoc
- ocamlbuild
ocaml-compiler-libs
ocaml-findlib-dev
+ ocaml-ocamldoc
+ ocaml-seq-dev
ocaml-stdlib-shims
+ ocamlbuild
"
options="!check"
subpackages="$pkgname-dev $pkgname-doc"
@@ -53,19 +54,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find usr/lib/ocaml \( \
+ local path; find usr/lib/ocaml \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
-491c01347714b9caf69e184be7e031d82d3602b91ce52c5c995b25897090d9af79b2ae058ff92b91ab31b44dd1fdf15fbe1a428d2f3a50872d3f0f7689a64e8c ocaml-fileutils-0.6.3.tar.gz
+fed41c0c98bd9a2dde18335f0c7fd721b609f936001424eff200bca058146af55134f1d245b143bd211ece37bc036b3308528b193a6b578735b27891181f07e1 ocaml-fileutils-0.6.4.tar.gz
"
diff --git a/testing/ocaml-fix/APKBUILD b/testing/ocaml-fix/APKBUILD
index 82d37d9e24b..74418e51f52 100644
--- a/testing/ocaml-fix/APKBUILD
+++ b/testing/ocaml-fix/APKBUILD
@@ -1,15 +1,14 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-fix
_pkgname=fix
pkgver=20220121
_commit=a288f05de716bcc9e82527f4cf440f9aebe965ae
-pkgrel=0
+pkgrel=2
pkgdesc="Algorithmic building blocks for memoization, recursion, and more"
url="https://gitlab.inria.fr/fpottier/fix"
-arch="all !riscv64" # restricted by ocaml
+arch="all !riscv64 !loongarch64" # ocaml
license="LGPL-2.0-only"
-depends="ocaml-runtime"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="dune ocaml"
options="!check" # tests take a long time to run
@@ -45,19 +44,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find usr/lib/ocaml \( \
+ local path; find usr/lib/ocaml \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
a851d8783c0c519c6e55359a5c471af433058872409c29a1a7bdfd0076813341ad2c0ebd1ce9e28bff4d4c729dfbc808c41c084fe12a42b45a2b5e391e77ccd2 ocaml-fix-20220121.tar.gz
"
diff --git a/testing/ocaml-fmt/APKBUILD b/testing/ocaml-fmt/APKBUILD
index 43d337e9118..2b7d09c157e 100644
--- a/testing/ocaml-fmt/APKBUILD
+++ b/testing/ocaml-fmt/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-fmt
_pkgname=fmt
pkgver=0.9.0
-pkgrel=0
+pkgrel=2
pkgdesc="OCaml Format pretty-printer combinators"
url="https://erratique.ch/software/fmt"
-arch="all !riscv64" # restricted by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="ocaml-runtime"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="
ocaml
@@ -49,19 +48,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
66cf4b8bb92232a091dfda5e94d1c178486a358cdc34b1eec516d48ea5acb6209c0dfcb416f0c516c50ddbddb3c94549a45e4a6d5c5fd1c81d3374dec823a83b ocaml-fmt-0.9.0.tar.bz2
"
diff --git a/testing/ocaml-fpath/APKBUILD b/testing/ocaml-fpath/APKBUILD
index 5a6c019d5e0..c9ff5554f74 100644
--- a/testing/ocaml-fpath/APKBUILD
+++ b/testing/ocaml-fpath/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-fpath
_pkgname=fpath
pkgver=0.7.3
-pkgrel=0
+pkgrel=2
pkgdesc="File system paths for OCaml"
url="https://erratique.ch/software/fpath"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="ocaml-runtime ocaml-astring"
depends_dev="$pkgname=$pkgver-r$pkgrel ocaml-astring-dev"
makedepends="
$depends_dev
@@ -46,19 +45,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
acf4b379aee3c25305ef71d1b97b154faa6de1e8248a8e8d046cf11090a3e94f2dc048b961bb51725ca7384e784455f2893fbd51f26bf80571a9cc7e9475b945 ocaml-fpath-0.7.3.tar.bz2
"
diff --git a/testing/ocaml-gen/APKBUILD b/testing/ocaml-gen/APKBUILD
index eb74360ec18..8ba01db9d2e 100644
--- a/testing/ocaml-gen/APKBUILD
+++ b/testing/ocaml-gen/APKBUILD
@@ -1,22 +1,19 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-gen
_pkgname=gen
-pkgver=1.0
-pkgrel=0
+pkgver=1.1
+pkgrel=1
pkgdesc="Simple, efficient iterators for OCaml"
url="https://github.com/c-cube/gen/"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="BSD-2-Clause"
-depends="ocaml-runtime"
-depends_dev="$pkgname=$pkgver-r$pkgrel"
-makedepends="dune dune-configurator ocaml"
+depends_dev="$pkgname=$pkgver-r$pkgrel ocaml-seq-dev"
+makedepends="$depends_dev dune dune-configurator ocaml"
checkdepends="ocaml-ounit-dev ocaml-qcheck-dev ocaml-qtest-dev"
options="!check"
subpackages="$pkgname-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/c-cube/gen/archive/v$pkgver.tar.gz
- dont-use-external-seq.patch
- "
+source="$pkgname-$pkgver.tar.gz::https://github.com/c-cube/gen/archive/v$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
_ocamldir=usr/lib/ocaml
@@ -45,20 +42,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
-fb4ec2ab35a1aba0dcc8439b11f14a0a785d939f661f505aec88a6f2ca6ca87e14ddfda860d9c180b215190b76690de87040c144582f069224f7e58d37ef48a0 ocaml-gen-1.0.tar.gz
-d9e4bc65357c4f83e39418a14e299e7626229545fac4c5e38e172f5dcb1e47abf651af77bc7ccdcc6ccaf15a2d9856c166f62b8a3882a781865ea5aacd4ed0de dont-use-external-seq.patch
+71a4b5c3666a7c11935398a78feea7383f61d2c549dfb96e324d40783ffa87b5ec492c5ec468803aabfb9b48e7d0ebaa30b24d2b974540afc7cca5feea3121c1 ocaml-gen-1.1.tar.gz
"
diff --git a/testing/ocaml-gen/dont-use-external-seq.patch b/testing/ocaml-gen/dont-use-external-seq.patch
deleted file mode 100644
index 9f26a3ab4ed..00000000000
--- a/testing/ocaml-gen/dont-use-external-seq.patch
+++ /dev/null
@@ -1,9 +0,0 @@
---- a/src/dune
-+++ b/src/dune
-@@ -21,5 +21,5 @@
- (modules Gen GenLabels GenM GenClone GenMList GenM_intf Gen_intf GenLabels_intf GenShims_)
- (flags :standard -warn-error -a+8 -safe-string -nolabels)
- (ocamlopt_flags :standard (:include flambda.flags))
-- (libraries bytes seq))
-+ (libraries bytes))
-
diff --git a/testing/ocaml-gettext/APKBUILD b/testing/ocaml-gettext/APKBUILD
index 674fc62f7e2..7869035f1c4 100644
--- a/testing/ocaml-gettext/APKBUILD
+++ b/testing/ocaml-gettext/APKBUILD
@@ -3,11 +3,11 @@
pkgname=ocaml-gettext
_pkgname=gettext
pkgver=0.4.2
-pkgrel=1
+pkgrel=3
pkgdesc="OCaml library for i18n"
url="https://github.com/gildor478/ocaml-gettext"
-arch="all !riscv64" # limited by ocaml
-license="LGPL-2.1-or-later-WITH-linking-exception"
+arch="all !riscv64 !loongarch64" # ocaml
+license="LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception"
makedepends="
autoconf
automake
@@ -25,6 +25,7 @@ makedepends="
ocaml-fileutils
ocaml-fileutils-dev
ocaml-findlib-dev
+ ocaml-seq-dev
ocaml-ocamldoc
ocaml-stdlib-shims
"
@@ -62,19 +63,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find usr/lib/ocaml \( \
+ local path; find usr/lib/ocaml \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
fb89be8d8d9e0ed9327b81a0c81c884ff3f1a97e46b475ef8084abded5c84a256de05d5aa0f42be94f43ab438276a4506af726b6950e4161359a9616fb5832ec ocaml-gettext-0.4.2.tar.gz
"
diff --git a/testing/ocaml-gmap/APKBUILD b/testing/ocaml-gmap/APKBUILD
index 24ae86b2895..11989d3cb1c 100644
--- a/testing/ocaml-gmap/APKBUILD
+++ b/testing/ocaml-gmap/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-gmap
_pkgname=gmap
pkgver=0.3.0
-pkgrel=0
+pkgrel=2
pkgdesc="Heterogenous maps over a GADT"
url="https://github.com/hannesm/gmap"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="ocaml-runtime"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="dune ocaml"
checkdepends="ocaml-alcotest-dev ocaml-fmt-dev"
@@ -43,19 +42,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
71616981f5a15d6b2a47e18702083e52e81f6547076085b1489f676f50b0cc47c7c2c4fa19cb581e2878dc3d4f7133d0c50d8b51a8390be0e6e30318907d81d3 ocaml-gmap-0.3.0.tar.bz2
"
diff --git a/testing/ocaml-happy-eyeballs-lwt/APKBUILD b/testing/ocaml-happy-eyeballs-lwt/APKBUILD
index 5ddabd36a24..4613bce1c02 100644
--- a/testing/ocaml-happy-eyeballs-lwt/APKBUILD
+++ b/testing/ocaml-happy-eyeballs-lwt/APKBUILD
@@ -1,26 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-happy-eyeballs-lwt
_pkgname=happy-eyeballs
pkgver=0.3.0
-pkgrel=0
+pkgrel=3
pkgdesc="Connecting to a remote host via IP version 4 or 6 using Lwt_unix"
url="https://github.com/roburio/happy-eyeballs"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="
- ocaml-runtime
- ocaml-domain-name
- ocaml-duration
- ocaml-fmt
- ocaml-ipaddr
- ocaml-logs
- ocaml-lwt
- ocaml-happy-eyeballs
- ocaml-cmdliner
- ocaml-dns
- ocaml-mtime
- "
depends_dev="
$pkgname=$pkgver-r$pkgrel
ocaml-domain-name-dev
@@ -68,14 +55,12 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
@@ -88,6 +73,27 @@ tools() {
amove usr/bin
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
0c43180c635c1ac807bd6a2abbb0403afca646870936baa451f6eadcd37d1b32ceea916d7b441b190392c4b32d32292bf6196de00faa198e2e8e59c3b4fdef56 ocaml-happy-eyeballs-lwt-0.3.0.tar.bz2
"
diff --git a/testing/ocaml-happy-eyeballs/APKBUILD b/testing/ocaml-happy-eyeballs/APKBUILD
index bbb404d402c..f54e500f047 100644
--- a/testing/ocaml-happy-eyeballs/APKBUILD
+++ b/testing/ocaml-happy-eyeballs/APKBUILD
@@ -1,21 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-happy-eyeballs
_pkgname=happy-eyeballs
pkgver=0.3.0
-pkgrel=0
+pkgrel=2
pkgdesc="Connecting to a remote host via IP version 4 or 6"
url="https://github.com/roburio/happy-eyeballs"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="
- ocaml-runtime
- ocaml-domain-name
- ocaml-duration
- ocaml-fmt
- ocaml-ipaddr
- ocaml-logs
- "
depends_dev="
$pkgname=$pkgver-r$pkgrel
ocaml-domain-name-dev
@@ -60,19 +52,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
0c43180c635c1ac807bd6a2abbb0403afca646870936baa451f6eadcd37d1b32ceea916d7b441b190392c4b32d32292bf6196de00faa198e2e8e59c3b4fdef56 ocaml-happy-eyeballs-0.3.0.tar.bz2
"
diff --git a/testing/ocaml-hex/APKBUILD b/testing/ocaml-hex/APKBUILD
index 255955792b2..e9a1c509dea 100644
--- a/testing/ocaml-hex/APKBUILD
+++ b/testing/ocaml-hex/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-hex
_pkgname=hex
pkgver=1.5.0
-pkgrel=0
+pkgrel=2
pkgdesc="Library providing hexadecimal converters"
url="https://github.com/mirage/ocaml-hex"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="ocaml-runtime ocaml-cstruct"
depends_dev="$pkgname=$pkgver-r$pkgrel ocaml-cstruct-dev"
makedepends="$depends_dev dune ocaml"
subpackages="$pkgname-dev"
@@ -41,19 +40,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
baa09b47a90f0a54ad2becfb272f0674219e4fc0c03559deff26aaf13ccd59258b31bf98e56c44a5a8fa03437e3eba2bf5f0cd76e52d184d26cfb1170c490462 ocaml-hex-1.5.0.tar.bz2
"
diff --git a/testing/ocaml-hkdf/APKBUILD b/testing/ocaml-hkdf/APKBUILD
index f92355c88b9..9b54721127c 100644
--- a/testing/ocaml-hkdf/APKBUILD
+++ b/testing/ocaml-hkdf/APKBUILD
@@ -1,15 +1,18 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-hkdf
_pkgname=hkdf
pkgver=1.0.4
-pkgrel=0
+pkgrel=2
pkgdesc="HMAC-based Extract-and-Expand Key Derivation Function (RFC 5869)"
url="https://github.com/hannesm/ocaml-hkdf"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="BSD-2-Clause"
-depends="ocaml-runtime ocaml-cstruct ocaml-mirage-crypto"
-depends_dev="$pkgname=$pkgver-r$pkgrel ocaml-cstruct-dev ocaml-mirage-crypto-dev"
+depends_dev="
+ $pkgname=$pkgver-r$pkgrel
+ ocaml-cstruct-dev
+ ocaml-mirage-crypto-dev
+ "
makedepends="$depends_dev dune ocaml"
checkdepends="ocaml-alcotest-dev"
options="!check"
@@ -43,19 +46,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
d08e50857f7761572adc4d382975fde5808898c1d92d9e6e943a496cba8780ffabe1edf67844063b70d9727c0fe10b24391e001a3f65c978a5326ac82199cc88 ocaml-hkdf-1.0.4.tar.bz2
"
diff --git a/testing/ocaml-integers/APKBUILD b/testing/ocaml-integers/APKBUILD
index 5fd4c04b161..53b4709dab8 100644
--- a/testing/ocaml-integers/APKBUILD
+++ b/testing/ocaml-integers/APKBUILD
@@ -1,18 +1,16 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-integers
pkgver=0.7.0
-pkgrel=0
+pkgrel=2
pkgdesc="Various signed and unsigned integer types for OCaml"
url="https://github.com/ocamllabs/ocaml-integers"
-arch="all !riscv64" # restricted by ocaml
+arch="all !riscv64 !loongarch64" # ocaml
license="MIT"
-depends="ocaml-runtime"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="dune ocaml ocaml-compiler-libs ocaml-stdlib-shims"
subpackages="$pkgname-dev"
source="$pkgname-$pkgver.tar.gz::https://github.com/ocamllabs/ocaml-integers/archive/$pkgver.tar.gz"
-builddir="$srcdir/$pkgname-$pkgver"
# 32-bit archs
case "$CARCH" in
@@ -42,19 +40,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find usr/lib/ocaml \( \
+ local path; find usr/lib/ocaml \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
f71bf73af2e4e0dd5bd039b28bce1fdabfb199ada1836d694814aa6d0c1c2d205531fbfc05581082b2dbb1e9cc0948e594915d5ad6a1cfa1dbffa9e44a7a7450 ocaml-integers-0.7.0.tar.gz
"
diff --git a/testing/ocaml-ipaddr/APKBUILD b/testing/ocaml-ipaddr/APKBUILD
index 055f064c96f..ad0ffb7b618 100644
--- a/testing/ocaml-ipaddr/APKBUILD
+++ b/testing/ocaml-ipaddr/APKBUILD
@@ -1,20 +1,14 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-ipaddr
_pkgname=ipaddr
-pkgver=5.3.0
-pkgrel=0
+pkgver=5.3.1
+pkgrel=2
pkgdesc="A library for manipulation of IP (and MAC) address representations"
provides="ocaml-macaddr=$pkgver-r$pkgrel"
url="https://github.com/mirage/ocaml-ipaddr"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="
- ocaml-runtime
- ocaml-cstruct
- ocaml-domain-name
- ocaml-ppx_sexp_conv
- "
depends_dev="
$pkgname=$pkgver-r$pkgrel
ocaml-cstruct-dev
@@ -56,19 +50,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
-06b16e319672c8182210296ed005accd9a4e190f99bd019f24232e213be8de6d198f9e8cb40ee00ec226184e1dd4ebd7e589d890b1f88f40f17eaf785dae975c ocaml-ipaddr-5.3.0.tar.bz2
+1d400f8344d1a8c2ac1c55e4a7167484034094e2227ce7c8f2f45843b0875a83030851400ceb96b5cdb756fa8798d83c77d839705fcb9e3f2bd5e46d337d63d0 ocaml-ipaddr-5.3.1.tar.bz2
"
diff --git a/testing/ocaml-lablgtk3-extras/APKBUILD b/testing/ocaml-lablgtk3-extras/APKBUILD
index be778b20225..92685d3da4d 100644
--- a/testing/ocaml-lablgtk3-extras/APKBUILD
+++ b/testing/ocaml-lablgtk3-extras/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-lablgtk3-extras
_pkgname=lablgtk-extras
pkgver=3.0.1
-pkgrel=0
+pkgrel=2
pkgdesc="Additional tools and libraries for ocaml-lablgtk3"
url="https://zoggy.frama.io/lablgtk-extras/"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="LGPL-3.0-only"
-depends="ocaml-runtime ocaml-lablgtk3 ocaml-ocf ocaml-xmlm ocaml-yojson"
# lablgtk3-sourceview3 is bundled together in ocaml-lablgtk3
depends_dev="
$pkgname=$pkgver-r$pkgrel
@@ -48,19 +47,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
a14faba4a0bd679311ad7c00fd80bb768727e70c84591af51e880a928a545e51c020d5fb3d51752162aff1525a6cd1606a25199e18c0c368b8d112d253bd7320 ocaml-lablgtk3-extras-3.0.1.tar.bz2
"
diff --git a/testing/ocaml-lablgtk3/APKBUILD b/testing/ocaml-lablgtk3/APKBUILD
index 6c2730b3866..fcb65971d71 100644
--- a/testing/ocaml-lablgtk3/APKBUILD
+++ b/testing/ocaml-lablgtk3/APKBUILD
@@ -1,16 +1,19 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-lablgtk3
_pkgname=lablgtk
pkgver=3.1.2
-pkgrel=1
+pkgrel=3
pkgdesc="OCaml interface to GTK+3"
provides="$pkgname-sourceview3=$pkgver-r$pkgrel"
url="https://github.com/garrigue/lablgtk"
-arch="all !riscv64" # limited by ocaml aport
-license="LGPL-2.1-or-later-WITH-linking-exception"
-depends="ocaml-runtime ocaml-cairo2"
-depends_dev="$pkgname=$pkgver-r$pkgrel ocaml-cairo2-dev gtksourceview-dev"
+arch="all !riscv64 !loongarch64" # ocaml
+license="LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception"
+depends_dev="
+ $pkgname=$pkgver-r$pkgrel
+ ocaml-cairo2-dev
+ gtksourceview-dev
+ "
makedepends="$depends_dev dune dune-configurator ocaml"
options="!check"
subpackages="$pkgname-dev"
@@ -44,19 +47,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
c63a492160f36685f65cb6bc0e72ff4939005acb2c65c56c0d9ba8f2112a618f24db84765e7b4416e49024048a36895028cfc5ef2c3e298dd4a309e902e34af5 ocaml-lablgtk3-3.1.2.tar.gz
"
diff --git a/testing/ocaml-labltk/APKBUILD b/testing/ocaml-labltk/APKBUILD
index 45fd9ae7237..be36cb6d40a 100644
--- a/testing/ocaml-labltk/APKBUILD
+++ b/testing/ocaml-labltk/APKBUILD
@@ -1,25 +1,26 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-labltk
_pkgname=labltk
pkgver=8.06.12
-pkgrel=0
-_ocamlver=4.14.0
+pkgrel=2
+_ocamlver=4.14
pkgdesc="Tcl/Tk interface for OCaml"
url="https://garrigue.github.io/labltk/"
-arch="all !riscv64" # limited by ocaml aport
-license="LGPL-2.0-or-later-WITH-linking-exception"
-depends="ocaml-runtime"
+arch="all !riscv64 !loongarch64" # ocaml
+license="LGPL-2.0-or-later WITH OCaml-LGPL-linking-exception"
depends_dev="$pkgname=$pkgver-r$pkgrel"
-makedepends="ocaml=~$_ocamlver ocaml-compiler-libs=~$_ocamlver tcl-dev tk tk-dev"
+makedepends="
+ ocaml=~$_ocamlver
+ ocaml-compiler-libs=~$_ocamlver
+ tk-dev
+ "
options="!check" # no tests provided
subpackages="$pkgname-dev"
source="$pkgname-$pkgver.tar.gz::https://github.com/garrigue/labltk/archive/refs/tags/$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
build() {
- cd "$builddir"
-
./configure --tk-no-x11
make -j1 all
make -j1 opt
@@ -27,12 +28,12 @@ build() {
package() {
local libdir="$pkgdir/usr/lib/ocaml"
- cd "$builddir"
mkdir -p "$libdir"/$_pkgname \
"$libdir"/stublibs \
"$pkgdir"/usr/bin
+ export RANLIB=ranlib
make install \
BINDIR="$pkgdir/usr/bin" \
INSTALLDIR="$pkgdir/usr/lib/ocaml/$_pkgname" \
@@ -52,7 +53,28 @@ dev() {
cd "$pkgdir"/$sitelib
mkdir -p "$subpkgdir"/$sitelib
- mv *.cmx *.cmxa *.mli "$subpkgdir"/$sitelib/
+ mv ./*.mli "$subpkgdir"/$sitelib/
+}
+
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
}
sha512sums="
diff --git a/testing/ocaml-lambda-term/APKBUILD b/testing/ocaml-lambda-term/APKBUILD
index 94c1fc91e51..922fd1a07b7 100644
--- a/testing/ocaml-lambda-term/APKBUILD
+++ b/testing/ocaml-lambda-term/APKBUILD
@@ -1,22 +1,13 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-lambda-term
_pkgname=lambda-term
pkgver=3.2.0
-pkgrel=1
+pkgrel=4
pkgdesc="Terminal manipulation library for OCaml"
url="https://github.com/ocaml-community/lambda-term"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="BSD-3-Clause"
-depends="
- ocaml-runtime
- ocaml-camomile
- ocaml-lwt
- ocaml-lwt_log
- ocaml-lwt_react
- ocaml-mew_vi
- ocaml-zed
- "
# ocaml-lwt_react-dev is provided by ocaml-lwt-dev
depends_dev="
$pkgname=$pkgver-r$pkgrel
@@ -54,19 +45,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
46cd46f47c9f34c0a5e096b96e6eec59667b645bf5201140e498e6d4eb9baba8204a2b30b73c4b2f8140e5cf1972a56e3aa485b27bc5ace25b2c368f713ad7c4 ocaml-lambda-term-3.2.0.tar.gz
"
diff --git a/testing/ocaml-lambdasoup/APKBUILD b/testing/ocaml-lambdasoup/APKBUILD
index ae5bf37683d..c5466e26b31 100644
--- a/testing/ocaml-lambdasoup/APKBUILD
+++ b/testing/ocaml-lambdasoup/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-lambdasoup
_pkgname=lambdasoup
pkgver=0.7.3
-pkgrel=0
+pkgrel=2
pkgdesc="Easy functional HTML scraping and manipulation with CSS selectors"
url="https://github.com/aantron/lambdasoup"
-arch="all !riscv64" # restricted by ocaml
+arch="all !riscv64 !loongarch64" # ocaml
license="MIT"
-depends="ocaml-runtime"
depends_dev="$pkgname=$pkgver-r$pkgrel"
checkdepends="ocaml-result-dev ocaml-ounit-dev"
makedepends="
@@ -52,19 +51,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find usr/lib/ocaml \( \
+ local path; find usr/lib/ocaml \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
a6f15259e0034f297913fedb2713d4048dcf760d31d00c5ce0a990f977e22aba332a7303dec557912c74c59e178cdfeebfc26703a9698a65f8020aa8222e66e9 ocaml-lambdasoup-0.7.3.tar.gz
"
diff --git a/testing/ocaml-libvirt/APKBUILD b/testing/ocaml-libvirt/APKBUILD
index 9f689f53af2..644bc4311b3 100644
--- a/testing/ocaml-libvirt/APKBUILD
+++ b/testing/ocaml-libvirt/APKBUILD
@@ -2,20 +2,17 @@
# Maintainer: Fernando Casas Schossow <casasfernando@outlook.com>
pkgname=ocaml-libvirt
_pkgname=libvirt-ocaml
-pkgver=0.6.1.5_git20220503
-_commit=562ac8c3a9193fa5f24cb64f3b2f3eebe3cd723a
+pkgver=0.6.1.7
pkgrel=0
pkgdesc="OCaml binding for libvirt"
url="https://libvirt.org/ocaml/"
-# s390x: libvirt-dev unavailable
-# riscv64: limited by ocaml aport
-arch="all !s390x !riscv64"
-license="LGPL-2.1-or-later-WITH-linking-exception"
+arch="all !riscv64 !loongarch64" # ocaml
+license="LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception"
makedepends="autoconf automake ocaml ocaml-findlib-dev libvirt-dev perl gawk"
subpackages="$pkgname-dev $pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://gitlab.com/libvirt/libvirt-ocaml/-/archive/$_commit/libvirt-ocaml-$_commit.tar.gz"
+source="https://gitlab.com/libvirt/libvirt-ocaml/-/archive/v$pkgver/libvirt-ocaml-v$pkgver.tar.gz"
options="!check" # there is no test suite/unit tests
-builddir="$srcdir/$_pkgname-$_commit"
+builddir="$srcdir/$_pkgname-v$pkgver"
# 32-bit archs
case "$CARCH" in
@@ -28,7 +25,6 @@ prepare() {
}
build() {
- export OCAMLPARAM="safe-string=0,_"
./configure \
--host=$CHOST \
--build=$CBUILD \
@@ -42,13 +38,9 @@ package() {
export OCAMLFIND_DESTDIR="$DESTDIR/usr/lib/ocaml"
mkdir -p "$OCAMLFIND_DESTDIR" "$OCAMLFIND_DESTDIR/stublibs"
- # FIXME: if META.libvirt exists `make install` will fail with
- # error msg "ocamlfind: Package libvirt is already installed"
- rm -vf libvirt/META.libvirt
-
make install
- install -D -m644 COPYING "$pkgdir/usr/share/licenses/$pkgname/COPYING"
- install -D -m644 COPYING.LIB "$pkgdir/usr/share/licenses/$pkgname/COPYING.LIB"
+ install -Dm644 COPYING COPYING.LIB \
+ -t "$pkgdir"/usr/share/licenses/$pkgname/
}
dev() {
@@ -56,19 +48,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find usr/lib/ocaml \( \
+ local path; find usr/lib/ocaml \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
-527b9f29fbb6db17ffd1f89cea821d01c8a7db567bc2d6b2034f228cc75536b1321602c91cab2cb686e62ee674d0619fd33a24ec35401fbfdbf95e1b36c3e5ce ocaml-libvirt-0.6.1.5_git20220503.tar.gz
+065008709b653f52e119665a5fbe4bedeb1dceb430b2d3ce022d4f9d685e168860145d40f6ae2be4d0715da5c0815029c9de49d370c73cd54d0e83846dc6a785 libvirt-ocaml-v0.6.1.7.tar.gz
"
diff --git a/testing/ocaml-logs/APKBUILD b/testing/ocaml-logs/APKBUILD
index 564f42a3cd4..955f628897d 100644
--- a/testing/ocaml-logs/APKBUILD
+++ b/testing/ocaml-logs/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-logs
_pkgname=logs
pkgver=0.7.0
-pkgrel=0
+pkgrel=3
pkgdesc="Logging infrastructure for OCaml"
url="https://erratique.ch/software/logs"
-arch="all !riscv64" # restricted by ocaml
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="ocaml-runtime"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="
ocaml
@@ -55,19 +54,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
657f66eeaf5788947a3ff4b2a179f7e192ad4ce086fc8968286066d4b83af476523b3befce50ee58abf2d9b8c8dc65573ba8ed62f9c5e7933db29a7fb769646a ocaml-logs-0.7.0.tar.bz2
"
diff --git a/testing/ocaml-lru/APKBUILD b/testing/ocaml-lru/APKBUILD
index 7cb6c364207..20c73e74cd5 100644
--- a/testing/ocaml-lru/APKBUILD
+++ b/testing/ocaml-lru/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-lru
_pkgname=lru
pkgver=0.3.0
-pkgrel=0
+pkgrel=2
pkgdesc="Scalable LRU caches"
url="https://github.com/pqwy/lru"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="ocaml-runtime ocaml-psq"
depends_dev="$pkgname=$pkgver-r$pkgrel ocaml-psq-dev"
makedepends="$depends_dev dune ocaml"
checkdepends="ocaml-alcotest-dev ocaml-qcheck-alcotest-dev ocaml-qcheck-core-dev"
@@ -43,19 +42,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
b4d23089bc73bd5b0bdaa977d6e65982486def1c4fd35a2a24655adb22377692927752de2d8373fc0f751a4ec5cf905546b8754320acb01308ce43fa42288112 ocaml-lru-0.3.0.tar.bz2
"
diff --git a/testing/ocaml-lwd/APKBUILD b/testing/ocaml-lwd/APKBUILD
index 2302bc1af7e..63b250ca342 100644
--- a/testing/ocaml-lwd/APKBUILD
+++ b/testing/ocaml-lwd/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-lwd
-_pkgname=nottui-lwt
-pkgver=0.2
+_pkgname=lwd
+pkgver=0.3
pkgrel=0
pkgdesc="Lightweight reactive documents"
url="https://github.com/let-def/lwd"
-arch="all !riscv64" # restricted by ocaml
+arch="all !riscv64 !loongarch64" # ocaml
license="MIT"
-depends="ocaml-runtime"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="
dune
@@ -29,9 +28,7 @@ options="!check"
checkdepends="ocaml-qcheck-dev ocaml-qtest-dev"
subpackages="$pkgname-dev"
provides="ocaml-nottui=$pkgver-r$pkgrel"
-source="$pkgname-$pkgver.tar.bz2::https://github.com/let-def/lwd/releases/download/v$pkgver/nottui-lwt-$pkgver.tbz
- notty-latest-git.patch
- "
+source="$_pkgname-$pkgver.tar.bz2::https://github.com/let-def/lwd/releases/download/v$pkgver/lwd-$pkgver.tbz"
builddir="$srcdir/$_pkgname-$pkgver"
# 32-bit archs
@@ -47,7 +44,7 @@ build() {
}
check() {
- dune runtest --no-buffer --verbose
+ dune runtest --build-dir=.testenv --no-buffer --verbose
}
package() {
@@ -66,20 +63,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find usr/lib/ocaml \( \
+ local path; find usr/lib/ocaml \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
-a88cfbdce6ecd280d10c34a712b685b44c712981ac85e500dab1518e513f9ac0bc02d0469184df927ab86f29e330b3439bb7eb8fb9a11f90a0a37bf46fdaa53e ocaml-lwd-0.2.tar.bz2
-4ef58722954ca93b6ea62949cb63f7942cfc67e452c3d01b6d0d7a5c22fd75107a49e20418a78462fc344c66d982023ae9f2fd97aabd27081b1093f59b706c88 notty-latest-git.patch
+95b1fd4b7fcce72f4e220cc9a6cb3c14ea352faeac239345cca61a8906c328078e5ff3143e04c2602710e1ac4c3513d4f19c6ab62ffc716f195a3f9e0ba0560c lwd-0.3.tar.bz2
"
diff --git a/testing/ocaml-lwd/notty-latest-git.patch b/testing/ocaml-lwd/notty-latest-git.patch
deleted file mode 100644
index 5eacd1473ff..00000000000
--- a/testing/ocaml-lwd/notty-latest-git.patch
+++ /dev/null
@@ -1,66 +0,0 @@
---- a/lib/nottui/nottui.ml
-+++ b/lib/nottui/nottui.ml
-@@ -655,7 +655,7 @@
- let image = resize_canvas2 dx dy sw sh c.image in
- let image =
- if bg != A.empty then
-- I.(image </> char bg ' ' sw sh)
-+ I.(image </> char ~attr:bg ' ' sw sh)
- else
- image
- in
---- a/lib/nottui/nottui_widgets.ml
-+++ b/lib/nottui/nottui_widgets.ml
-@@ -18,10 +18,10 @@
- let rec split str i =
- match control_character_index str i with
- | j ->
-- let img = I.string attr (String.sub str i (j - i)) in
-+ let img = I.string ~attr (String.sub str i (j - i)) in
- img :: split str (j + 1)
- | exception Not_found ->
-- [I.string attr
-+ [I.string ~attr
- (if i = 0 then str
- else String.sub str i (String.length str - i))]
- in
-@@ -371,15 +371,15 @@
- let attr = attr_clickable in
- let len = String.length text in
- (if pos >= len
-- then [I.string attr text]
-- else [I.string attr (sub' text 0 pos)])
-+ then [I.string ~attr text]
-+ else [I.string ~attr (sub' text 0 pos)])
- @
- (if pos < String.length text then
-- [I.string A.(bg lightred) (sub' text pos 1);
-- I.string attr (sub' text (pos + 1) (len - pos - 1))]
-- else [I.string A.(bg lightred) " "]);
-+ [I.string ~attr:A.(bg lightred) (sub' text pos 1);
-+ I.string ~attr (sub' text (pos + 1) (len - pos - 1))]
-+ else [I.string ~attr:A.(bg lightred) " "]);
- ) else
-- [I.string A.(st underline) (if text = "" then " " else text)]
-+ [I.string ~attr:A.(st underline) (if text = "" then " " else text)]
- in
- let handler = function
- | `ASCII 'U', [`Ctrl] -> on_change ("", 0); `Handled (* clear *)
-@@ -720,7 +720,7 @@
- let prefix = offset * visible / total in
- let suffix = (total - offset - visible) * visible / total in
- let handle = visible - prefix - suffix in
-- let render size color = Ui.atom Notty.(I.char (A.bg color) ' ' size 1) in
-+ let render size color = Ui.atom Notty.(I.char ~attr:(A.bg color) ' ' size 1) in
- let mouse_handler ~x ~y:_ = function
- | `Left ->
- if x < prefix then
-@@ -748,7 +748,7 @@
- let prefix = offset * visible / total in
- let suffix = (total - offset - visible) * visible / total in
- let handle = visible - prefix - suffix in
-- let render size color = Ui.atom Notty.(I.char (A.bg color) ' ' 1 size) in
-+ let render size color = Ui.atom Notty.(I.char ~attr:(A.bg color) ' ' 1 size) in
- let mouse_handler ~x:_ ~y = function
- | `Left ->
- if y < prefix then
diff --git a/testing/ocaml-lwt-dllist/APKBUILD b/testing/ocaml-lwt-dllist/APKBUILD
index 9232e71bd17..450aa169833 100644
--- a/testing/ocaml-lwt-dllist/APKBUILD
+++ b/testing/ocaml-lwt-dllist/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-lwt-dllist
_pkgname=lwt-dllist
pkgver=1.0.1
-pkgrel=0
+pkgrel=3
pkgdesc="Mutable doubly-linked list with Lwt iterators"
url="https://github.com/mirage/lwt-dllist"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="MIT"
-depends="ocaml-runtime ocaml-lwt"
depends_dev="$pkgname=$pkgver-r$pkgrel ocaml-lwt-dev"
makedepends="$depends_dev dune ocaml"
checkdepends="ocaml-lwt-dev" # necessary only for testing?
@@ -43,19 +42,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
1df7e8e12e01a5d32e1db746f922e05f23a67c0d20e72a5b9126fead1e04decdb062081574b1c410c822305ef4eac990b7dd69f36673db8f50b9db2152abad80 ocaml-lwt-dllist-1.0.1.tar.bz2
"
diff --git a/testing/ocaml-lwt/APKBUILD b/testing/ocaml-lwt/APKBUILD
index 6d60d618561..d989c294f6b 100644
--- a/testing/ocaml-lwt/APKBUILD
+++ b/testing/ocaml-lwt/APKBUILD
@@ -1,19 +1,13 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-lwt
_pkgname=lwt
-pkgver=5.5.0
-pkgrel=1
+pkgver=5.7.0
+pkgrel=0
pkgdesc="OCaml promises and concurrent I/O"
url="https://github.com/ocsigen/lwt"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="MIT"
-depends="
- ocaml-runtime
- ocaml-mmap
- ocaml-ocplib-endian
- ocaml-result
- "
depends_dev="
libev-dev
ocaml-mmap-dev
@@ -25,10 +19,7 @@ depends_dev="
makedepends="$depends_dev dune dune-configurator ocaml ocaml-cppo"
options="!check" # FIXME: tests hang
subpackages="$pkgname-dev ${pkgname}_react:_react ${pkgname}_ppx:_ppx"
-source="$pkgname-$pkgver.tar.gz::https://github.com/ocsigen/$_pkgname/archive/$pkgver.tar.gz
- result_lseek_noinline.patch
- dont-use-external-seq.patch
- "
+source="$_pkgname-$pkgver.tar.gz::https://github.com/ocsigen/lwt/archive/$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
_ocamldir=usr/lib/ocaml
@@ -70,14 +61,12 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find usr/lib/ocaml \( \
+ local path; find usr/lib/ocaml \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
@@ -85,20 +74,37 @@ dev() {
_ppx() {
pkgdesc="$pkgdesc (PPX syntax)"
- depends="$pkgname=$pkgver-r$pkgrel ocaml-runtime ocaml-ppxlib"
amove usr/lib/ocaml/lwt_ppx
}
_react() {
pkgdesc="$pkgdesc (for FRP)"
- depends="$pkgname=$pkgver-r$pkgrel ocaml-runtime ocaml-react"
amove usr/lib/ocaml/lwt_react
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
-8951b94555e930634375816d71815b9d85daad6ffb7dab24864661504d11be26575ab0b237196c54693efa372a9b69cdc1d5068a20a250dc0bbb4a3c03c5fda1 ocaml-lwt-5.5.0.tar.gz
-dc3abce70b3ad022066e8023a9b37346df0ecbbc6351186cc24b569189142ad3e7e32f27c33a4378f11ec8c40df5c96f4c37190ca4797bc228ca8943f53cf5bf result_lseek_noinline.patch
-7a7d1876b633668892e7eb8b6d08a7432807abd8a98cd8c05589221c92bf1bf068236c018031f88db22d3f055595651c440d23aad118c6e3f4992b9c9d9c75c7 dont-use-external-seq.patch
+42e629920783428673b99c9d7a639237c9e6b35079b5d907bc67e7ea506acf9edadc48cec580bdcfd2410ed9412bf5e6bcc8b09de2fa7d35ce1490973d05ddd1 lwt-5.7.0.tar.gz
"
diff --git a/testing/ocaml-lwt/dont-use-external-seq.patch b/testing/ocaml-lwt/dont-use-external-seq.patch
deleted file mode 100644
index d138e0b37d1..00000000000
--- a/testing/ocaml-lwt/dont-use-external-seq.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/src/core/dune
-+++ b/src/core/dune
-@@ -26,7 +26,7 @@
- (synopsis "Monadic promises and concurrent I/O")
- (wrapped false)
- |} ^ preprocess ^ {|
-- (libraries bytes result seq)
-+ (libraries bytes result)
- (flags (:standard -w +A-29)))
-
- (documentation
diff --git a/testing/ocaml-lwt/result_lseek_noinline.patch b/testing/ocaml-lwt/result_lseek_noinline.patch
deleted file mode 100644
index 2e2fd1552de..00000000000
--- a/testing/ocaml-lwt/result_lseek_noinline.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/src/unix/unix_c/unix_lseek_job.c
-+++ b/src/unix/unix_c/unix_lseek_job.c
-@@ -92,7 +92,7 @@
- }
-
- /* The function building the caml result. */
--static value result_lseek(struct job_lseek* job)
-+__attribute__((noinline)) static value result_lseek(struct job_lseek* job)
- {
- value result;
- /* Check for errors. */
-@@ -113,7 +113,7 @@
- }
-
- /* The function building the caml result. */
--static value result_lseek_64(struct job_lseek* job)
-+__attribute__((noinline)) static value result_lseek_64(struct job_lseek* job)
- {
- value result;
- /* Check for errors. */
diff --git a/testing/ocaml-lwt_log/APKBUILD b/testing/ocaml-lwt_log/APKBUILD
index 8d03aff7722..002c445b700 100644
--- a/testing/ocaml-lwt_log/APKBUILD
+++ b/testing/ocaml-lwt_log/APKBUILD
@@ -1,19 +1,18 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-lwt_log
_pkgname=lwt_log
pkgver=1.1.1
-pkgrel=1
+pkgrel=5
pkgdesc="Lwt-friendly logger"
-url="https://github.com/aantron/lwt_log"
-arch="all !riscv64" # limited by ocaml aport
+url="https://github.com/ocsigen/lwt_log"
+arch="all !riscv64 !loongarch64" # ocaml
license="LGPL-2.0-or-later"
-depends="ocaml-runtime ocaml-lwt"
depends_dev="$pkgname=$pkgver-r$pkgrel ocaml-lwt-dev"
makedepends="$depends_dev dune ocaml"
options="!check" # no tests provided
subpackages="$pkgname-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/aantron/lwt_log/archive/$pkgver.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/ocsigen/lwt_log/archive/$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
_ocamldir=usr/lib/ocaml
@@ -38,19 +37,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
df3d171a7c72f37e96b756d252ab586767df9c13e01500faf13d4b2cee936b0602fd7c725c03db488d3737d8d92300af103d395a926dc654a2c44a5d6068f24a ocaml-lwt_log-1.1.1.tar.gz
"
diff --git a/testing/ocaml-markup/APKBUILD b/testing/ocaml-markup/APKBUILD
index a3f62d4f877..5e10202d1cc 100644
--- a/testing/ocaml-markup/APKBUILD
+++ b/testing/ocaml-markup/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-markup
_pkgname=markup.ml
pkgver=1.0.3
-pkgrel=0
+pkgrel=3
pkgdesc="Error-recovering functional HTML5 and XML parsers and writers for OCaml"
url="https://aantron.github.io/markup.ml"
-arch="all !riscv64" # restricted by ocaml
+arch="all !riscv64 !loongarch64" # ocaml
license="MIT"
-depends="ocaml-runtime ocaml-lwt ocaml-uutf"
depends_dev="$pkgname=$pkgver-r$pkgrel"
checkdepends="ocaml-result-dev ocaml-ounit-dev"
makedepends="
@@ -63,19 +62,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find usr/lib/ocaml \( \
+ local path; find usr/lib/ocaml \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
1bb030fa2d79f7a7ac2d04c07c72a39e83620757b1d7d8a33eea1ec9b4c32883a67de45d1eea9bfa6533ae8076009fab9af5f180ad2be9c1fef66e3e5937048a ocaml-markup-1.0.3.tar.gz
"
diff --git a/testing/ocaml-menhir/APKBUILD b/testing/ocaml-menhir/APKBUILD
index bbecc52f6e5..6a98029c8d9 100644
--- a/testing/ocaml-menhir/APKBUILD
+++ b/testing/ocaml-menhir/APKBUILD
@@ -1,18 +1,23 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-menhir
_pkgname=menhir
# NOTE: Check supported version in Reason before upgrading!
pkgver=20220210
_commit=4f8151679e73cdfe598c42220ae869f904dfaa9a
-pkgrel=0
+pkgrel=2
pkgdesc="LR(1) parser generator for OCaml"
url="http://gallium.inria.fr/~fpottier/menhir/"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="GPL-2.0-only"
-depends="ocaml-findlib"
-depends_dev="$pkgname=$pkgver-r$pkgrel ocaml-runtime"
-makedepends="dune ocaml ocaml-ocamlbuild-dev ocamlbuild"
+depends_dev="$pkgname=$pkgver-r$pkgrel"
+makedepends="
+ dune
+ ocaml
+ ocaml-findlib
+ ocaml-ocamlbuild-dev
+ ocamlbuild
+ "
options="!check" # no tests provided
subpackages="$pkgname-dev $pkgname-doc"
source="$pkgname-$pkgver.tar.gz::https://gitlab.inria.fr/fpottier/menhir/-/archive/$pkgver/archive.tar.gz"
@@ -45,6 +50,27 @@ dev() {
amove usr/lib/ocaml
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
3063fec1d8b9fe092c8461b0689d426c7fe381a2bf3fd258dc42ceecca1719d32efbb8a18d94ada5555c38175ea352da3adbb239fdbcbcf52c3a5c85a4d9586f ocaml-menhir-20220210.tar.gz
"
diff --git a/testing/ocaml-merlin-extend/APKBUILD b/testing/ocaml-merlin-extend/APKBUILD
index 90eddd47264..00e66758dc6 100644
--- a/testing/ocaml-merlin-extend/APKBUILD
+++ b/testing/ocaml-merlin-extend/APKBUILD
@@ -1,16 +1,21 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-merlin-extend
_pkgname=merlin-extend
pkgver=0.6.1
-pkgrel=0
+pkgrel=2
pkgdesc="SDK to extend Merlin"
url="https://github.com/let-def/merlin-extend"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="MIT"
-depends="ocaml-runtime"
depends_dev="$pkgname=$pkgver-r$pkgrel"
-makedepends="dune ocaml ocaml-compiler-libs ocaml-cppo-dev ocaml-findlib"
+makedepends="
+ dune
+ ocaml
+ ocaml-compiler-libs
+ ocaml-cppo
+ ocaml-findlib
+ "
options="!check" # no tests provided
subpackages="$pkgname-dev"
source="$pkgname-$pkgver.tar.bz2::https://github.com/let-def/merlin-extend/releases/download/v$pkgver/merlin-extend-$pkgver.tbz"
@@ -44,19 +49,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find usr/lib/ocaml \( \
+ local path; find usr/lib/ocaml \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
631fc96aab2f35e12a078c9b4907ca7b0db9f1e3a4026040e6c23b82e0171c256a89fb5d4c887f1d156eb9e3152783cdf7a546b2496051007a1bcf5777417396 ocaml-merlin-extend-0.6.1.tar.bz2
"
diff --git a/testing/ocaml-metrics/APKBUILD b/testing/ocaml-metrics/APKBUILD
index f8928c5d78f..1ba361924fe 100644
--- a/testing/ocaml-metrics/APKBUILD
+++ b/testing/ocaml-metrics/APKBUILD
@@ -1,22 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-metrics
_pkgname=metrics
pkgver=0.4.0
-pkgrel=0
+pkgrel=3
pkgdesc="Metrics infrastructure for OCaml"
url="https://github.com/mirage/metrics"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="
- ocaml-runtime
- ocaml-lwt
- ocaml-mtime
- ocaml-uuidm
- ocaml-fmt
- ocaml-duration
- ocaml-logs
- "
depends_dev="
$pkgname=$pkgver-r$pkgrel
ocaml-lwt-dev
@@ -59,19 +50,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
00b271b74b7081b2fe202f402c9be6fef70da7241ee82a82b7a52329aad7c1d73c0eb7ee579a20a08c0e54f546351104dd822052624654ecbfc1c33d067656fa ocaml-metrics-0.4.0.tar.bz2
"
diff --git a/testing/ocaml-mew/APKBUILD b/testing/ocaml-mew/APKBUILD
index 3387da420a4..0c19eb64994 100644
--- a/testing/ocaml-mew/APKBUILD
+++ b/testing/ocaml-mew/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-mew
_pkgname=mew
pkgver=0.1.0
-pkgrel=1
+pkgrel=3
pkgdesc="Modal editing witch"
url="https://github.com/kandu/mew"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="MIT"
-depends="ocaml-runtime ocaml-trie"
depends_dev="$pkgname=$pkgver-r$pkgrel ocaml-trie-dev"
makedepends="$depends_dev dune ocaml"
options="!check" # needs ppx_expect
@@ -44,19 +43,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
77a68f6dc9f3edc729384d59247a29f32f969dc6d987ed2e6c88b9a64b655822dafa9c3cb424bf40e6cf9ed20cddf9c708738872db245f14a711770e8e938db3 ocaml-mew-0.1.0.tar.gz
b8bbfd9fc9281ad4463d060ba7941ed09516fb66a2b751213cd70094070e585f039bee0235012661eabfa28ba52ca011139c5def1457394bbe5fb9fb41e3d0b8 use-built-in-result-lib.patch
diff --git a/testing/ocaml-mew_vi/APKBUILD b/testing/ocaml-mew_vi/APKBUILD
index 382b46499ea..acb72641993 100644
--- a/testing/ocaml-mew_vi/APKBUILD
+++ b/testing/ocaml-mew_vi/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-mew_vi
_pkgname=mew_vi
pkgver=0.5.0
-pkgrel=1
+pkgrel=3
pkgdesc="Modal editing witch (VI interpreter)"
url="https://github.com/kandu/mew_vi"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="MIT"
-depends="ocaml-runtime ocaml-mew ocaml-react"
depends_dev="$pkgname=$pkgver-r$pkgrel ocaml-mew-dev ocaml-react-dev"
makedepends="$depends_dev dune ocaml"
options="!check" # needs ppx_expect
@@ -42,19 +41,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
f6ee1375ceee60ccae1799d07a8bc55684fdbffc2275147ef19cf3c7d242663764e6630b9423287a78efacba17f410971e3fc397d202effb331f94dc00797eb0 ocaml-mew_vi-0.5.0.tar.gz
"
diff --git a/testing/ocaml-mikmatch/APKBUILD b/testing/ocaml-mikmatch/APKBUILD
index c909d22d428..bebef618e2d 100644
--- a/testing/ocaml-mikmatch/APKBUILD
+++ b/testing/ocaml-mikmatch/APKBUILD
@@ -1,15 +1,16 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-mikmatch
_pkgname=mikmatch
pkgver=1.0.9
-pkgrel=0
+pkgrel=2
pkgdesc="OCaml syntax extension for regexps"
url="https://mjambon.github.io/mjambon2016/micmatch.html"
-arch="all !riscv64" # restricted by ocaml
+arch="all !riscv64 !loongarch64" # ocaml
license="BSD-3-Clause"
-depends="ocaml-runtime ocaml-camlp4 ocaml-pcre ocaml-tophide"
+depends="ocaml-tophide"
makedepends="
+ coreutils
ocaml
ocaml-camlp4-dev
ocaml-compiler-libs
@@ -35,6 +36,27 @@ package() {
make install
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
dcf62f67b01f039e0510446267f3d4b965daa6507631da71c8562f7eeedebf9859403d0be7a2e217365af95bb818d05de38ab4987d900a4050a1c5403a66fa5c ocaml-mikmatch-1.0.9.tar.gz
"
diff --git a/testing/ocaml-mirage-clock/APKBUILD b/testing/ocaml-mirage-clock/APKBUILD
index 710c0418220..6bfa659f66e 100644
--- a/testing/ocaml-mirage-clock/APKBUILD
+++ b/testing/ocaml-mirage-clock/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-mirage-clock
_pkgname=mirage-clock
pkgver=4.2.0
-pkgrel=0
+pkgrel=2
pkgdesc="Libraries and module types for portable clocks"
url="https://github.com/mirage/mirage-clock"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="ocaml-runtime"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="dune ocaml dune-configurator"
subpackages="$pkgname-dev"
@@ -41,19 +40,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
05a359dc8400d4ca200ff255dbd030acd33d2c4acb5020838f772c02cdb5f243f3dbafbc43a8cd51e6b5923a140f84c9e7ea25b2c0fa277bb68b996190d36e3b ocaml-mirage-clock-4.2.0.tar.bz2
"
diff --git a/testing/ocaml-mirage-crypto/APKBUILD b/testing/ocaml-mirage-crypto/APKBUILD
index 69603a0813d..781de27360a 100644
--- a/testing/ocaml-mirage-crypto/APKBUILD
+++ b/testing/ocaml-mirage-crypto/APKBUILD
@@ -1,22 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-mirage-crypto
_pkgname=mirage-crypto
pkgver=0.10.6
-pkgrel=0
+pkgrel=3
pkgdesc="Simple symmetric cryptography for the modern age"
url="https://github.com/mirage/mirage-crypto"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="
- ocaml-runtime
- ocaml-cstruct
- ocaml-duration
- ocaml-eqaf
- ocaml-logs
- ocaml-mtime
- ocaml-zarith
- "
# ocaml-zarith is not separated into a -dev subpackage
depends_dev="
$pkgname=$pkgver-r$pkgrel
@@ -25,6 +16,7 @@ depends_dev="
ocaml-eqaf-dev
ocaml-logs-dev
ocaml-mtime-dev
+ ocaml-zarith
"
makedepends="$depends_dev dune dune-configurator ocaml"
checkdepends="ocaml-ounit2-dev"
@@ -62,19 +54,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
870b7d0d32acde970afcd3fac2cb51131ac74bb20c887d07ddfccd239467a5dc8b700adf463427fa916393c503f106feb733cba5bf4b9d1f8eb57f52b5af9f9c ocaml-mirage-crypto-0.10.6.tar.bz2
"
diff --git a/testing/ocaml-mirage-flow/APKBUILD b/testing/ocaml-mirage-flow/APKBUILD
index 3ffb2e3d333..78e0bcdf8f1 100644
--- a/testing/ocaml-mirage-flow/APKBUILD
+++ b/testing/ocaml-mirage-flow/APKBUILD
@@ -1,21 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-mirage-flow
_pkgname=mirage-flow
pkgver=3.0.0
-pkgrel=0
+pkgrel=3
pkgdesc="Flow implementations and combinators for MirageOS"
url="https://github.com/mirage/mirage-flow"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="
- ocaml-runtime
- ocaml-cstruct
- ocaml-fmt
- ocaml-lwt
- ocaml-logs
- ocaml-mirage-clock
- "
depends_dev="
$pkgname=$pkgver-r$pkgrel
ocaml-cstruct-dev
@@ -57,19 +49,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
2aeb397799621bc0ea2485b68058949c99b3da8d454939d594a9b2d39ef47aa2c16489f06adfa2dea3b34fd15e60a23abc6b8e214dfbc8b7da2e958de7c36b57 ocaml-mirage-flow-3.0.0.tar.bz2
"
diff --git a/testing/ocaml-mirage-kv/APKBUILD b/testing/ocaml-mirage-kv/APKBUILD
index af417e2db2f..5389fb98990 100644
--- a/testing/ocaml-mirage-kv/APKBUILD
+++ b/testing/ocaml-mirage-kv/APKBUILD
@@ -1,16 +1,15 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-mirage-kv
_pkgname=mirage-kv
pkgver=4.0.1
-pkgrel=0
+pkgrel=3
pkgdesc="MirageOS signatures for key/value devices"
url="https://github.com/mirage/mirage-kv"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="ocaml-runtime ocaml-fmt ocaml-lwt"
depends_dev="$pkgname=$pkgver-r$pkgrel ocaml-fmt-dev ocaml-lwt-dev"
-makedepends="dune ocaml"
+makedepends="$depends_dev dune ocaml"
checkdepends="ocaml-alcotest-dev"
options="!check"
subpackages="$pkgname-dev"
@@ -43,19 +42,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
e6ac8b8638eac760d245edb0159366c313ff9f5986fd310557fa6bec6f9fb87a3bb59d73065b42d2a798779d7b41cb81da235624db8e836f44801c4ae20c0293 ocaml-mirage-kv-4.0.1.tar.bz2
"
diff --git a/testing/ocaml-mirage-net/APKBUILD b/testing/ocaml-mirage-net/APKBUILD
index 16f1f3e16d0..f06cbebc51d 100644
--- a/testing/ocaml-mirage-net/APKBUILD
+++ b/testing/ocaml-mirage-net/APKBUILD
@@ -1,19 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-mirage-net
_pkgname=mirage-net
pkgver=4.0.0
-pkgrel=0
+pkgrel=3
pkgdesc="Network signatures for MirageOS"
url="https://github.com/mirage/mirage-net"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="
- ocaml-runtime
- ocaml-cstruct
- ocaml-lwt
- ocaml-ipaddr
- "
depends_dev="
$pkgname=$pkgver-r$pkgrel
ocaml-cstruct-dev
@@ -51,19 +45,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
52064dc704ebd0d305fd234b6d89fc313d5a80016d8875ef93212a1962ad8b1f332f7b0338244afbb2d2f207a28d476e7d7639be9dc607d95145afee7fccc483 ocaml-mirage-net-4.0.0.tar.bz2
"
diff --git a/testing/ocaml-mirage-profile/APKBUILD b/testing/ocaml-mirage-profile/APKBUILD
index cd901b65781..081d2123a41 100644
--- a/testing/ocaml-mirage-profile/APKBUILD
+++ b/testing/ocaml-mirage-profile/APKBUILD
@@ -1,20 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-mirage-profile
_pkgname=mirage-profile
pkgver=0.9.1
-pkgrel=0
+pkgrel=3
pkgdesc="Collect runtime profiling information in CTF format"
url="https://github.com/mirage/mirage-profile"
-arch="all !riscv64" # limited by ocaml aport
-license="BSD-2-clause"
-depends="
- ocaml-runtime
- ocaml-cstruct
- ocaml-lwt
- ocaml-ocplib-endian
- ocaml-mtime
- "
+arch="all !riscv64 !loongarch64" # ocaml
+license="BSD-2-Clause"
depends_dev="
$pkgname=$pkgver-r$pkgrel
ocaml-cstruct-dev
@@ -57,19 +50,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
23cc4a2a62f5cc05b48d626bd6c8171a442fd46490da6810b1c507fcd7661c7fcd901d8328cddf687af4144136bf0d34b63f8484e32550077ab63d23e6eaea2b ocaml-mirage-profile-0.9.1.tar.bz2
"
diff --git a/testing/ocaml-mirage-random/APKBUILD b/testing/ocaml-mirage-random/APKBUILD
index 77380992568..81207eedb38 100644
--- a/testing/ocaml-mirage-random/APKBUILD
+++ b/testing/ocaml-mirage-random/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-mirage-random
_pkgname=mirage-random
pkgver=3.0.0
-pkgrel=0
+pkgrel=3
pkgdesc="Random-related devices for MirageOS"
url="https://github.com/mirage/mirage-random"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="ocaml-runtime ocaml-cstruct"
depends_dev="$pkgname=$pkgver-r$pkgrel ocaml-cstruct-dev"
makedepends="$depends_dev dune ocaml"
subpackages="$pkgname-dev"
@@ -41,19 +40,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
5d16855740e04f8efe5bcd5a7596ccffb5b927a616c5e6de4a5f5bd96e2f9f8f3b030d8b216156cac897d49a64b0f5bd7f89c30c787c3d9be63ab952c9984160 ocaml-mirage-random-3.0.0.tar.bz2
"
diff --git a/testing/ocaml-mirage-time/APKBUILD b/testing/ocaml-mirage-time/APKBUILD
index 20b15961c59..2a895232083 100644
--- a/testing/ocaml-mirage-time/APKBUILD
+++ b/testing/ocaml-mirage-time/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-mirage-time
_pkgname=mirage-time
pkgver=3.0.0
-pkgrel=0
+pkgrel=4
pkgdesc="Time operations for MirageOS"
url="https://github.com/mirage/mirage-time"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="ocaml-runtime ocaml-lwt ocaml-duration"
depends_dev="$pkgname=$pkgver-r$pkgrel ocaml-lwt-dev ocaml-duration-dev"
makedepends="$depends_dev dune ocaml"
subpackages="$pkgname-dev"
@@ -41,19 +40,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
066f9271c7871eb754cf9b3f8853f4861ce80d1cc31eb9a2384f3cd62441e15aa7636d19cc3bee6d56219fa5653b9f7da7d9b9d659fd1f7cd17326e7ba1715eb ocaml-mirage-time-3.0.0.tar.bz2
"
diff --git a/testing/ocaml-mmap/APKBUILD b/testing/ocaml-mmap/APKBUILD
index d231ce86329..169af019aac 100644
--- a/testing/ocaml-mmap/APKBUILD
+++ b/testing/ocaml-mmap/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-mmap
_pkgname=mmap
pkgver=1.2.0
-pkgrel=1
+pkgrel=3
pkgdesc="File mapping functionality"
url="https://github.com/mirage/mmap"
-arch="all !riscv64" # limited by ocaml aport
-license="LGPL-2.1-only-WITH-linking-exception"
-depends="ocaml-runtime ocaml-bigarray-compat"
+arch="all !riscv64 !loongarch64" # ocaml
+license="LGPL-2.1-only WITH OCaml-LGPL-linking-exception"
depends_dev="$pkgname=$pkgver-r$pkgrel ocaml-bigarray-compat-dev"
makedepends="$depends_dev dune ocaml"
options="!check"
@@ -42,19 +41,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
cef6c37953d62f2f7472147a03707d60401d92aaf4ddb2dbaa697ee4eee252f70d8068e8fe5c6a36e005d4cc738f61d2c5bea12d844f1e3a696fef2f6546d59c ocaml-mmap-1.2.0.tar.gz
"
diff --git a/testing/ocaml-mtime/APKBUILD b/testing/ocaml-mtime/APKBUILD
index e53669d4105..fe65f63dfe4 100644
--- a/testing/ocaml-mtime/APKBUILD
+++ b/testing/ocaml-mtime/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-mtime
_pkgname=mtime
pkgver=1.4.0
-pkgrel=0
+pkgrel=2
pkgdesc="Monotonic wall-clock time for OCaml"
url="https://erratique.ch/software/mtime"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="ocaml-runtime"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="
ocaml
@@ -45,19 +44,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
0492fa5f5187b909fe2b0550363c7dcb8cffef963d51072272ef3d876b51e1ddf8de4c4e221cffb0144658fccf6a0dc584a5c8094a4b2208156e43bad5b269d4 ocaml-mtime-1.4.0.tar.bz2
"
diff --git a/testing/ocaml-notty/APKBUILD b/testing/ocaml-notty/APKBUILD
index a3f61016586..1e588d0fb42 100644
--- a/testing/ocaml-notty/APKBUILD
+++ b/testing/ocaml-notty/APKBUILD
@@ -1,22 +1,23 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-notty
_pkgname=notty
-pkgver=0.2.2_git20200516
-_commit=67c602e3b32fdd6f4356c8e6b7537ff811ac14bf
-pkgrel=1
+pkgver=0.2.3
+pkgrel=0
pkgdesc="Declarative terminal library for OCaml"
url="https://github.com/pqwy/notty"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="ocaml-runtime ocaml-lwt ocaml-uutf ocaml-compiler-libs"
-depends_dev="$pkgname=$pkgver-r$pkgrel ocaml-lwt-dev ocaml-uutf-dev"
+depends_dev="
+ $pkgname=$pkgver-r$pkgrel
+ ocaml-compiler-libs
+ ocaml-lwt-dev
+ ocaml-uutf-dev
+ "
makedepends="$depends_dev dune ocaml ocaml-cppo"
subpackages="$pkgname-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/pqwy/notty/archive/$_commit/notty-$_commit.tar.gz
- ocaml-4.14-support.patch
- "
-builddir="$srcdir/$_pkgname-$_commit"
+source="$_pkgname-$pkgver.tar.bz2::https://github.com/pqwy/notty/releases/download/v$pkgver/notty-$pkgver.tbz"
+builddir="$srcdir/$_pkgname-$pkgver"
_ocamldir=usr/lib/ocaml
# 32-bit archs
@@ -29,7 +30,7 @@ build() {
}
check() {
- dune runtest --verbose
+ dune runtest --build-dir=.testenv --verbose
}
package() {
@@ -44,20 +45,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
-58ec06c391bb9b95add279ec20c08a33c6aeb3aa66c0fcf4994ec335075ac3e25d8ece26ac75300608c1d2d15f75ad6e8caa8dbfa4f535d683b0bd9b170c7546 ocaml-notty-0.2.2_git20200516.tar.gz
-4c89e78ae0cf0f24bbb3259f31b6569f78ac130df208a573fadd1b6bbbb320fc6d357a2b119dee37a7c013d202887adf63d21a39523829e39cf52cc9a4a7041e ocaml-4.14-support.patch
+6e21d44fe39f3d80884b87635bebae55cb2b931ef74f9184ba4d74cc3e51cb0b3e976c3b6dc61d377288504e8bfabe21acdc1069eacb30df1fbf6686b80f7c6b notty-0.2.3.tar.bz2
"
diff --git a/testing/ocaml-notty/ocaml-4.14-support.patch b/testing/ocaml-notty/ocaml-4.14-support.patch
deleted file mode 100644
index 3648994f6d4..00000000000
--- a/testing/ocaml-notty/ocaml-4.14-support.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-Taken from https://github.com/pqwy/notty/pull/35
-
---- a/src-unix/notty_unix.ml
-+++ b/src-unix/notty_unix.ml
-@@ -156,7 +156,7 @@
- Buffer.reset t.buf; t.winched <- true; set_size t dim in f)
- } in
- winsize output |> iter (set_size t);
-- Lazy.force t.unwinch |> ignore;
-+ (Lazy.force t.unwinch |> ignore) [@ocaml.warning "-5"];
- if dispose then at_exit (fun () -> release t);
- write t;
- t
---- a/src/dune
-+++ b/src/dune
-@@ -3,7 +3,7 @@
- (library
- (public_name notty)
- (synopsis "Declaring terminals")
-- (libraries uchar uutf)
-+ (libraries uutf)
- (wrapped false)
- (modules notty notty_grapheme_cluster notty_uucp notty_uucp_data)
- (private_modules notty_grapheme_cluster notty_uucp notty_uucp_data))
-@@ -14,6 +14,7 @@
- (name notty_top)
- (wrapped false)
- (modules notty_top)
-+ (preprocess (action (run %{bin:cppo} -V OCAML:%{ocaml_version} %{input-file})))
- (libraries notty compiler-libs.toplevel))
-
- (install
---- a/src/notty_top.ml
-+++ b/src/notty_top.ml
-@@ -1,4 +1,4 @@
- (* Copyright (c) 2017 David Kaloper Meršinjak. All rights reserved.
- See LICENSE.md. *)
-
--let _ = Toploop.use_silently Format.err_formatter "notty_top_init.ml"
-+let _ = Toploop.use_silently Format.err_formatter (Toploop.File "notty_top_init.ml")
diff --git a/testing/ocaml-num/APKBUILD b/testing/ocaml-num/APKBUILD
index 364df2358cc..38c6f0a7fec 100644
--- a/testing/ocaml-num/APKBUILD
+++ b/testing/ocaml-num/APKBUILD
@@ -3,21 +3,20 @@
pkgname=ocaml-num
_pkgname=num
pkgver=1.4
-pkgrel=1
+pkgrel=3
pkgdesc="Arbitray-precision rational arithmetic for OCaml"
url="https://github.com/ocaml/num"
-arch="all !riscv64" # limited by ocaml aport
-license="LGPL-2.1-or-later-WITH-linking-exception-AND-MIT"
-depends="ocaml-runtime"
+arch="all !riscv64 !loongarch64" # ocaml
+license="LGPL-2.1-only WITH OCaml-LGPL-linking-exception AND MIT"
+depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="ocaml ocaml-compiler-libs ocaml-findlib"
subpackages="$pkgname-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/ocaml/$_pkgname/archive/v$pkgver.tar.gz
- "
+source="$pkgname-$pkgver.tar.gz::https://github.com/ocaml/$_pkgname/archive/v$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
# 32bit archs
case "$CARCH" in
-armv7|armhf|mips|x86) options="$options textrels" ;;
+armv7|armhf|x86) options="$options textrels" ;;
esac
build() {
@@ -46,14 +45,32 @@ package() {
}
dev() {
- depends="$pkgname=$pkgver-r$pkgrel"
- pkgdesc="$pkgdesc (development files)"
-
- local _numdir="usr/lib/ocaml/$_pkgname"
- mkdir -p "$subpkgdir/$_numdir"
- for p in '*.a' '*.cmx' '*.cmxa' '*.mli'; do
- mv "$pkgdir/$_numdir/"$p "$subpkgdir/$_numdir"
- done
+ default_dev
+
+ amove usr/lib/ocaml/$_pkgname/*.mli
+}
+
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
}
-sha512sums="0cc9be8ad95704bb683b4bf6698bada1ee9a40dc05924b72adc7b969685c33eeb68ccf174cc09f6a228c48c18fe94af06f28bebc086a24973a066da620db8e6f ocaml-num-1.4.tar.gz"
+sha512sums="
+0cc9be8ad95704bb683b4bf6698bada1ee9a40dc05924b72adc7b969685c33eeb68ccf174cc09f6a228c48c18fe94af06f28bebc086a24973a066da620db8e6f ocaml-num-1.4.tar.gz
+"
diff --git a/testing/ocaml-obuild/APKBUILD b/testing/ocaml-obuild/APKBUILD
index 3b74535f192..2de2c398b31 100644
--- a/testing/ocaml-obuild/APKBUILD
+++ b/testing/ocaml-obuild/APKBUILD
@@ -2,16 +2,15 @@
# Maintainer: Andy Li <andy@onthewings.net>
pkgname=ocaml-obuild
_pkgname=obuild
-pkgver=0.1.10
-pkgrel=1
+pkgver=0.1.11
+pkgrel=0
pkgdesc="Simple package build system for ocaml"
url="https://github.com/ocaml-obuild/obuild"
-arch="all !riscv64" # restricted by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="BSD-2-Clause"
-depends="ocaml-runtime"
makedepends="bash ocaml ocaml-findlib cmd:opam-installer"
options="!check" # no tests provided
-source="$pkgname-$pkgver.tar.gz::https://github.com/ocaml-obuild/obuild/archive/obuild-v$pkgver.tar.gz"
+source="https://github.com/ocaml-obuild/obuild/archive/obuild-v$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$_pkgname-v$pkgver"
# 32-bit archs
@@ -28,10 +27,29 @@ package() {
--prefix="$pkgdir"/usr \
--libdir="$pkgdir"/usr/lib/ocaml \
$_pkgname.install
+}
+
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
- rm -rf "$builddir"/dist
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
}
sha512sums="
-23667213ec7de6610fd5b3c7e0c5f98c081d0244619ed0c833ad13647b9a40561f21e862574488454993eab84a8467f4b2caa3288293451bb54f08b92d280175 ocaml-obuild-0.1.10.tar.gz
+855f47e31bebacb2adcd0ed31e9d50f1f4803f91828afc192d306dc2cc28adc18dd91d0bf40f8ef814ac85822a20db16dce87a0bd6edf0ff9037b8dc039abff3 obuild-v0.1.11.tar.gz
"
diff --git a/testing/ocaml-obytelib/APKBUILD b/testing/ocaml-obytelib/APKBUILD
deleted file mode 100644
index be1e4b57ec1..00000000000
--- a/testing/ocaml-obytelib/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
-pkgname=ocaml-obytelib
-_pkgname=obytelib
-pkgver=1.6
-pkgrel=0
-pkgdesc="OCaml bytecode library tools to read, write and evaluate OCaml bytecode files"
-url="https://github.com/bvaugon/obytelib"
-arch="all !riscv64" # restricted by ocaml
-license="CeCILL-2.0"
-depends="ocaml-runtime"
-makedepends="bash ocaml ocamlbuild cmd:ocamldoc"
-options="!check"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/bvaugon/obytelib/archive/refs/tags/$pkgver.tar.gz"
-builddir="$srcdir/$_pkgname-$pkgver"
-
-# 32-bit archs
-case "$CARCH" in
- arm*|x86) options="$options textrels" ;;
-esac
-
-build() {
- ./configure \
- -prefix "$pkgdir"/usr \
- -libdir "$pkgdir"/usr/lib/ocaml/"$_pkgname" \
- -mandir "$pkgdir"/usr/share/man
- make
-}
-
-package() {
- make install
-}
-
-sha512sums="
-570cb52ccc395074e39743fa3c0b18043abc3da3f0cfd3d3871ffe56b390f37baf66c646a2341f03ff892feb98147e5cfcc6374b8658071649e32f86c84898e4 ocaml-obytelib-1.6.tar.gz
-"
diff --git a/testing/ocaml-ocf/APKBUILD b/testing/ocaml-ocf/APKBUILD
index 12e807e0838..4e3c574b8ca 100644
--- a/testing/ocaml-ocf/APKBUILD
+++ b/testing/ocaml-ocf/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-ocf
_pkgname=ocf
pkgver=0.8.0
-pkgrel=1
+pkgrel=3
pkgdesc="OCaml library to read and write configuration files in JSON syntax"
url="https://zoggy.frama.io/ocf/"
-arch="all !riscv64" # limited by ocaml aport
-license="GPL-3.0-only"
-depends="ocaml-runtime ocaml-ppxlib ocaml-yojson"
+arch="all !riscv64 !loongarch64" # ocaml
+license="LGPL-3.0-only"
depends_dev="
$pkgname=$pkgver-r$pkgrel
ocaml-ppxlib-dev
@@ -45,19 +44,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
b9b1ce82ff370222b74429b28748c99b5b78c657e8c8b273d404ba9c17df2cd48274aad4d16b4748ecdbd1402cb8fad4136122cdf617b8ca1d6256a09efe2161 ocaml-ocf-0.8.0.tar.gz
"
diff --git a/testing/ocaml-ocplib-endian/APKBUILD b/testing/ocaml-ocplib-endian/APKBUILD
index 83f62071293..ed95e33dd13 100644
--- a/testing/ocaml-ocplib-endian/APKBUILD
+++ b/testing/ocaml-ocplib-endian/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-ocplib-endian
_pkgname=ocplib-endian
pkgver=1.2
-pkgrel=1
+pkgrel=3
pkgdesc="Optimised functions to read and write int16/32/64 from strings and bigarrays"
url="https://github.com/OCamlPro/ocplib-endian"
-arch="all !riscv64" # limited by ocaml aport
-license="LGPL-2.1-or-later-WITH-linking-exception"
-depends="ocaml-runtime"
+arch="all !riscv64 !loongarch64" # ocaml
+license="LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="$depends_dev dune ocaml ocaml-cppo"
options="!check"
@@ -42,19 +41,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
2e70be5f3d6e377485c60664a0e235c3b9b24a8d6b6a03895d092c6e40d53810bfe1f292ee69e5181ce6daa8a582bfe3d59f3af889f417134f658812be5b8b85 ocaml-ocplib-endian-1.2.tar.gz
"
diff --git a/testing/ocaml-omake/APKBUILD b/testing/ocaml-omake/APKBUILD
index b09c49401b9..72dad33b4f3 100644
--- a/testing/ocaml-omake/APKBUILD
+++ b/testing/ocaml-omake/APKBUILD
@@ -1,18 +1,17 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-omake
_pkgname=omake
-pkgver=0.10.3
+pkgver=0.10.6
pkgrel=0
pkgdesc="Build system designed for scalability and portability"
url="http://projects.camlcity.org/projects/omake.html"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="GPL-2.0-only"
-depends="ocaml-runtime"
-depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="ocaml ocaml-findlib"
options="!check"
-source="$pkgname-$pkgver.tar.gz::http://download.camlcity.org/download/omake-$pkgver.tar.gz"
+subpackages="$pkgname-doc"
+source="http://download.camlcity.org/download/omake-$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
_ocamldir=usr/lib/ocaml
@@ -23,8 +22,32 @@ build() {
package() {
make INSTALL_ROOT="$pkgdir" install
+
+ mkdir -vp "$pkgdir"/usr/share/
+ mv -v "$pkgdir"/usr/man "$pkgdir"/usr/share/
+}
+
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
}
sha512sums="
-77eb87b819048d7d9cb9b89a73c5f922ba3adc93f0d58536b3cfa20abdbf1d2a4c576b77921c52e8ea5f80171e8a503b573bf2a92b65fa0579f6492574079733 ocaml-omake-0.10.3.tar.gz
+e27e6a580b1b4c04c6ae9021d529ab5d9196932e6fd1f441038d1e31e22e2fd817572eca475818a8a9cfb9f9f2487fef57b88ec41c9f0b81a5b42a6954e90a2d omake-0.10.6.tar.gz
"
diff --git a/testing/ocaml-omod/APKBUILD b/testing/ocaml-omod/APKBUILD
index 816cb53daff..01f6b2d1071 100644
--- a/testing/ocaml-omod/APKBUILD
+++ b/testing/ocaml-omod/APKBUILD
@@ -1,18 +1,19 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-omod
_pkgname=omod
pkgver=0.0.3
-pkgrel=1
+pkgrel=3
pkgdesc="Lookup and load installed OCaml modules"
url="https://erratique.ch/software/omod"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="ocaml-runtime cmd:ocamlc ocaml-compiler-libs $pkgname-bin"
+depends="$pkgname-bin"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="
ocaml
ocamlbuild
+ ocaml-compiler-libs
ocaml-findlib
ocaml-topkg
ocaml-cmdliner-dev
@@ -55,19 +56,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
4f53b8cdd054dc1a6813427452a91294e0bbcfefe948fc1caec47be136dbcecf13112bf2b620fa2f667592b04b28df74e3bf012ea0fb0038c1da4217155ca626 ocaml-omod-0.0.3.tar.bz2
a53e77bc22f6b8a45b664973c648234155c5b3e1cd3526ac0713e91cf6d40bede7e8f084684203c027495c70d7ccf8ebf678a4cbe13e61f22eaa5444a2a1987d fix-cache-dir.patch
diff --git a/testing/ocaml-otr/APKBUILD b/testing/ocaml-otr/APKBUILD
index 7dd91c36117..7f44cd86157 100644
--- a/testing/ocaml-otr/APKBUILD
+++ b/testing/ocaml-otr/APKBUILD
@@ -1,21 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-otr
_pkgname=otr
pkgver=0.3.10
-pkgrel=0
+pkgrel=2
pkgdesc="Off the record implementation purely in OCaml"
url="https://github.com/hannesm/ocaml-otr"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="BSD-2-Clause"
-depends="
- ocaml-runtime
- ocaml-astring
- ocaml-base64
- ocaml-cstruct
- ocaml-mirage-crypto
- ocaml-sexplib0
- "
depends_dev="
$pkgname=$pkgver-r$pkgrel
ocaml-astring-dev
@@ -55,19 +47,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
24eee63e54c29e27d90718fe764178d5ee8b9fa599c7ca25b042e57b2442501089c51f11656315949f60e0362f86f743597c74dd968c4d3472e18c4def5179ba ocaml-otr-0.3.10.tar.bz2
"
diff --git a/testing/ocaml-ounit/APKBUILD b/testing/ocaml-ounit/APKBUILD
index 841e4a97340..dcc971f3712 100644
--- a/testing/ocaml-ounit/APKBUILD
+++ b/testing/ocaml-ounit/APKBUILD
@@ -2,14 +2,18 @@
# Maintainer: omni <omni+alpine@hack.org>
pkgname=ocaml-ounit
_pkgname=ounit
-pkgver=2.2.6
-pkgrel=2
+pkgver=2.2.7
+pkgrel=3
pkgdesc="A unit test framework for OCaml"
url="https://github.com/gildor478/ounit"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="MIT"
-depends="ocaml-runtime ocaml-stdlib-shims" # ocaml-lwt
-depends_dev="$pkgname=$pkgver-r$pkgrel ocaml-lwt-dev ocaml-seq-dev"
+depends_dev="
+ $pkgname=$pkgver-r$pkgrel
+ ocaml-lwt-dev
+ ocaml-seq-dev
+ ocaml-stdlib-shims
+ "
makedepends="$depends_dev dune ocaml ocaml-findlib"
subpackages="$pkgname-dev"
source="$pkgname-$pkgver.tar.gz::https://github.com/gildor478/ounit/archive/refs/tags/v$pkgver.tar.gz"
@@ -48,19 +52,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
-4d808866dc4f9de6493a17910fafb2452398aef45cb29add54ed25e15a10ec7715bdd52d40190f618e77fe351d8bb67fbe12c1df6a6736c501792a57f6b3768a ocaml-ounit-2.2.6.tar.gz
+b2cefed53127f724c099391eefe1bce3b43cad5d6b629b5f1e9446b58892639de758f5dbcbd5efb6c409ce77ed01d06693989a3ba909cf79c36c2554c1473396 ocaml-ounit-2.2.7.tar.gz
"
diff --git a/testing/ocaml-parsexp/APKBUILD b/testing/ocaml-parsexp/APKBUILD
index ea89dc54166..f303215ff73 100644
--- a/testing/ocaml-parsexp/APKBUILD
+++ b/testing/ocaml-parsexp/APKBUILD
@@ -1,18 +1,17 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-parsexp
_pkgname=parsexp
-pkgver=0.15.0
+pkgver=0.16.0
pkgrel=0
pkgdesc="S-expression parsing library"
url="https://github.com/janestreet/parsexp"
-arch="all !riscv64" # restricted by ocaml
+arch="all !riscv64 !loongarch64" # ocaml
license="MIT"
-depends="ocaml-runtime"
depends_dev="$pkgname=$pkgver-r$pkgrel"
-makedepends="dune ocaml ocaml-base-dev ocaml-sexplib0-dev"
+makedepends="dune ocaml ocaml-sexplib0-dev"
subpackages="$pkgname-dev"
-source="$pkgname-$pkgver.tar.gz::https://ocaml.janestreet.com/ocaml-core/v${pkgver%.*}/files/parsexp-v$pkgver.tar.gz"
+source="https://ocaml.janestreet.com/ocaml-core/v${pkgver%.*}/files/parsexp-v$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-v$pkgver"
# 32-bit archs
@@ -26,7 +25,7 @@ build() {
}
check() {
- dune runtest --no-buffer --verbose
+ dune runtest --build-dir=.testenv --no-buffer --verbose
}
package() {
@@ -43,19 +42,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find usr/lib/ocaml \( \
+ local path; find usr/lib/ocaml \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
-da638df515ae1641cef8d2a425424e37047579a7b502afaa9d565975c6ccfa64580b8d7430a4822c176a638957a49e7342373135386959afee854d216a133d0b ocaml-parsexp-0.15.0.tar.gz
+3308c7cda8a410d1d31b0abbebb549317fd4749fa6da65742576ac5563a8a92a4f2a3c97379546eaf1a1d0e5c71493d5a98a6b033431c48fccd09375d4d939fb parsexp-v0.16.0.tar.gz
"
diff --git a/testing/ocaml-pbkdf/APKBUILD b/testing/ocaml-pbkdf/APKBUILD
index ce284fe1aab..fe9445379d7 100644
--- a/testing/ocaml-pbkdf/APKBUILD
+++ b/testing/ocaml-pbkdf/APKBUILD
@@ -1,14 +1,17 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-pbkdf
pkgver=1.2.0
-pkgrel=0
+pkgrel=2
pkgdesc="Password based key derivation functions (PBKDF) from PKCS#5"
url="https://github.com/abeaumont/ocaml-pbkdf"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="BSD-2-Clause"
-depends="ocaml-runtime ocaml-cstruct ocaml-mirage-crypto"
-depends_dev="$pkgname=$pkgver-r$pkgrel ocaml-cstruct-dev ocaml-mirage-crypto-dev"
+depends_dev="
+ $pkgname=$pkgver-r$pkgrel
+ ocaml-cstruct-dev
+ ocaml-mirage-crypto-dev
+ "
makedepends="$depends_dev dune ocaml"
checkdepends="ocaml-alcotest-dev"
options="!check"
@@ -41,19 +44,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
d6f7d5efd761b87dd420ddcf97c2f9d4402dcc81d65cd1f4d81039b70c4d8c1e803bbaf4251482de8de7076da9f40b48c7eb1684e31e7a316deb5036c192bd3c ocaml-pbkdf-1.2.0.tar.gz
"
diff --git a/testing/ocaml-pcre/APKBUILD b/testing/ocaml-pcre/APKBUILD
index 972e964fc90..c99134c1c23 100644
--- a/testing/ocaml-pcre/APKBUILD
+++ b/testing/ocaml-pcre/APKBUILD
@@ -1,16 +1,15 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-pcre
_pkgname=pcre
pkgver=7.5.0
-pkgrel=1
+pkgrel=4
pkgdesc="OCaml bindings to the Perl Compatibility Regular Expressions (PCRE) library"
url="https://mmottl.github.io/pcre-ocaml"
-arch="all !riscv64" # limited by ocaml aport
-license="LGPL-2.1-or-later-WITH-linking-exception"
-depends="ocaml-runtime"
-depends_dev="$pkgname=$pkgver-r$pkgrel"
-makedepends="dune dune-configurator ocaml pcre-dev"
+arch="all !riscv64 !loongarch64" # ocaml
+license="LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception"
+depends_dev="$pkgname=$pkgver-r$pkgrel pcre-dev"
+makedepends="$depends_dev dune dune-configurator ocaml"
subpackages="$pkgname-dev"
source="$pkgname-$pkgver.tar.bz2::https://github.com/mmottl/pcre-ocaml/releases/download/$pkgver/pcre-$pkgver.tbz"
builddir="$srcdir/$_pkgname-$pkgver"
@@ -41,19 +40,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
be60f13ddb6bbfe20e30ca5d92434d85e1d1371479e1e2c725588af83fcc9366ed0435021b6a800c20336ac521f2134c767420136438684656a44ac1f9924be4 ocaml-pcre-7.5.0.tar.bz2
"
diff --git a/testing/ocaml-perl-bridge/APKBUILD b/testing/ocaml-perl-bridge/APKBUILD
deleted file mode 100644
index 156050d15e4..00000000000
--- a/testing/ocaml-perl-bridge/APKBUILD
+++ /dev/null
@@ -1,56 +0,0 @@
-# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer: rubicon <rubicon@mailo.com>
-pkgname=ocaml-perl-bridge
-pkgver=0.01
-_gitrev=611f632429f4e70508db4a921fea4b13b8e57161
-pkgrel=0
-pkgdesc="Perl embedded in OCaml"
-url="https://github.com/stevan/ocaml-perl-bridge"
-arch="all !riscv64" # restricted by ocaml aport
-license="LGPL-2.0-or-later"
-depends="ocaml-runtime"
-depends_dev="$pkgname=$pkgver-r$pkgrel"
-makedepends="ocaml perl-dev"
-options="!check"
-subpackages="$pkgname-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/stevan/ocaml-perl-bridge/archive/$_gitrev/ocaml-perl-bridge-$_gitrev.tar.gz
- makefile-site-lib.patch
- ocaml-headers-path.patch
- ocaml-preprocessor-macros.patch
- perl-SVt_RV-missing.patch
- "
-builddir="$srcdir/$pkgname-$_gitrev"
-
-build() {
- make
- make opt
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-dev() {
- default_dev
-
- cd "$pkgdir"
-
- local path; for path in $(find usr/lib/ocaml \( \
- -name '*.cmt' -o \
- -name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
- -name '*.ml' -o \
- -name '*.mli' \
- \))
- do
- amove "$path"
- done
-}
-sha512sums="
-3d7df4b7e93bad7fc6173804d3828276f6be526a6bdea6f8ff595d56ed3b6d53b8b926cf7c11f7abff7420fd47505f9e8c8f88a2c69951be3001ef3072f4fdf3 ocaml-perl-bridge-0.01.tar.gz
-d09f7f33886d235078353626b659340070859b5591e088555ddf4c0d1eb71f717ded18876d1811bc3db260742365c0b0581b9320721e8d13c0997a98270ae6f3 makefile-site-lib.patch
-514681b9d4a0c1c737a61e9cd225cedc0850e94555b3c4f8ec7a4aecd610ccd411d0ee24c32347c263064138017f672caa76ad27597367efe7fd23dbd8a4f80c ocaml-headers-path.patch
-a7d385682902c48ff49bac77170f8d41376897f7d9056a49b97457d1895839496f706ecfbe93db9ea1f6dfc10fbebaa75a8d07c25d0265e168866f43bdef1408 ocaml-preprocessor-macros.patch
-ec916fd8115a2bfe1f05cd7bd15bc7ad8125dd7c6da7ee9e9cb97bd2c4ebd4e7f84df8f2564c7fd79e4da25b5727d72a2dbd03e7d933773dd5715707178661c9 perl-SVt_RV-missing.patch
-"
diff --git a/testing/ocaml-perl-bridge/makefile-site-lib.patch b/testing/ocaml-perl-bridge/makefile-site-lib.patch
deleted file mode 100644
index da071fb5552..00000000000
--- a/testing/ocaml-perl-bridge/makefile-site-lib.patch
+++ /dev/null
@@ -1,17 +0,0 @@
---- a/Makefile
-+++ b/Makefile
-@@ -79,10 +79,10 @@
- # Install.
-
- install:
-- rm -rf $(DESTDIR)$(OCAMLLIBDIR)/site-lib/poCaml
-- install -c -m 0755 -d $(DESTDIR)$(OCAMLLIBDIR)/site-lib/poCaml
-+ rm -rf $(DESTDIR)$(OCAMLLIBDIR)/poCaml
-+ install -c -m 0755 -d $(DESTDIR)$(OCAMLLIBDIR)/poCaml
- install -c -m 0755 -d $(DESTDIR)$(OCAMLLIBDIR)/stublibs
- install -c -m 0644 poCaml.cmi poCaml.cma poCaml.cmxa \
- poCaml.a libpoCaml.a META \
-- $(DESTDIR)$(OCAMLLIBDIR)/site-lib/poCaml
-- install -c -m 0644 dllpoCaml.so $(DESTDIR)$(OCAMLLIBDIR)/stublibs
-+ $(DESTDIR)$(OCAMLLIBDIR)/poCaml
-+ install -c -m 0755 dllpoCaml.so $(DESTDIR)$(OCAMLLIBDIR)/stublibs
diff --git a/testing/ocaml-perl-bridge/ocaml-headers-path.patch b/testing/ocaml-perl-bridge/ocaml-headers-path.patch
deleted file mode 100644
index 825436cedc3..00000000000
--- a/testing/ocaml-perl-bridge/ocaml-headers-path.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- a/pocaml_c.c
-+++ b/pocaml_c.c
-@@ -8,12 +8,12 @@
- #define CAML_NAME_SPACE 1
-
- /* Fix me (probably needs some setting the Makefile) */
--#include </usr/local/lib/ocaml/caml/alloc.h>
--#include </usr/local/lib/ocaml/caml/callback.h>
--#include </usr/local/lib/ocaml/caml/custom.h>
--#include </usr/local/lib/ocaml/caml/fail.h>
--#include </usr/local/lib/ocaml/caml/memory.h>
--#include </usr/local/lib/ocaml/caml/mlvalues.h>
-+#include </usr/lib/ocaml/caml/alloc.h>
-+#include </usr/lib/ocaml/caml/callback.h>
-+#include </usr/lib/ocaml/caml/custom.h>
-+#include </usr/lib/ocaml/caml/fail.h>
-+#include </usr/lib/ocaml/caml/memory.h>
-+#include </usr/lib/ocaml/caml/mlvalues.h>
-
- #include <EXTERN.h>
- #include <perl.h>
diff --git a/testing/ocaml-perl-bridge/ocaml-preprocessor-macros.patch b/testing/ocaml-perl-bridge/ocaml-preprocessor-macros.patch
deleted file mode 100644
index 1328248750b..00000000000
--- a/testing/ocaml-perl-bridge/ocaml-preprocessor-macros.patch
+++ /dev/null
@@ -1,26 +0,0 @@
---- a/pocaml_c.c
-+++ b/pocaml_c.c
-@@ -676,11 +676,13 @@
- static inline void
- check_perl_failure ()
- {
-+ CAMLparam0 ();
-+ CAMLlocal1 (errv);
-+
- SV *errsv = get_sv ("@", TRUE);
-
- if (SvTRUE (errsv)) /* Equivalent of $@ in Perl. */
- {
-- CAMLlocal1 (errv);
- STRLEN n_a;
- const char *err = SvPV (errsv, n_a);
-
-@@ -688,6 +688,8 @@
-
- caml_raise_with_arg (*caml_named_value ("pocaml_perl_failure"), errv);
- }
-+
-+ CAMLreturn0;
- }
-
- CAMLprim value
diff --git a/testing/ocaml-perl-bridge/perl-SVt_RV-missing.patch b/testing/ocaml-perl-bridge/perl-SVt_RV-missing.patch
deleted file mode 100644
index c8e3e79f064..00000000000
--- a/testing/ocaml-perl-bridge/perl-SVt_RV-missing.patch
+++ /dev/null
@@ -1,24 +0,0 @@
---- a/pocaml_c.c
-+++ b/pocaml_c.c
-@@ -183,12 +183,12 @@
- CAMLparam1 (svv);
- SV *sv = Sv_val (svv);
-
-+ if (SvROK(sv)) CAMLreturn (Val_int (4));
- switch (SvTYPE (sv))
- {
- case SVt_IV: CAMLreturn (Val_int (1));
- case SVt_NV: CAMLreturn (Val_int (2));
- case SVt_PV: CAMLreturn (Val_int (3));
-- case SVt_RV: CAMLreturn (Val_int (4));
- case SVt_PVAV: CAMLreturn (Val_int (5));
- case SVt_PVHV: CAMLreturn (Val_int (6));
- case SVt_PVCV: CAMLreturn (Val_int (7));
-@@ -266,7 +266,6 @@
- case SVt_IV:
- case SVt_NV:
- case SVt_PV:
-- case SVt_RV:
- case SVt_PVMG:
- break;
- default:
diff --git a/testing/ocaml-ppx_derivers/APKBUILD b/testing/ocaml-ppx_derivers/APKBUILD
index 37d03ef7838..0183b0cfea4 100644
--- a/testing/ocaml-ppx_derivers/APKBUILD
+++ b/testing/ocaml-ppx_derivers/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-ppx_derivers
_pkgname=ppx_derivers
pkgver=1.2.1
-pkgrel=0
+pkgrel=2
pkgdesc="Shared [@@deriving] plugins registry"
url="https://github.com/ocaml-ppx/ppx_derivers"
-arch="all !riscv64" # restricted by ocaml
+arch="all !riscv64 !loongarch64" # ocaml
license="BSD-3-Clause"
-depends="ocaml-runtime"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="dune ocaml ocaml-findlib"
options="!check" # no tests provided
@@ -45,19 +44,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find usr/lib/ocaml \( \
+ local path; find usr/lib/ocaml \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
ef0796fe2592e653d34ba01d206d4b507429882a2aaadcb89c7f807c33a417f2871b0c94ade5c92aefd9487daa582e19d88ad5a5eaa631e8162ae12f4a0756c6 ocaml-ppx_derivers-1.2.1.tar.gz
"
diff --git a/testing/ocaml-ppx_deriving/APKBUILD b/testing/ocaml-ppx_deriving/APKBUILD
index 4cec5b40aaa..cf82ad49131 100644
--- a/testing/ocaml-ppx_deriving/APKBUILD
+++ b/testing/ocaml-ppx_deriving/APKBUILD
@@ -1,21 +1,20 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-ppx_deriving
_pkgname=ppx_deriving
-pkgver=5.2.1
+pkgver=5.3.0
pkgrel=0
pkgdesc="Type-driven code generation for OCaml"
url="https://github.com/ocaml-ppx/ppx_deriving"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="MIT"
-depends="ocaml-runtime ocaml-ppxlib ocaml-result"
depends_dev="$pkgname=$pkgver-r$pkgrel ocaml-ppxlib-dev ocaml-result-dev"
makedepends="$depends_dev dune ocaml ocaml-cppo ocaml-findlib-dev"
checkdepends="ocaml-ounit-dev"
options="!check"
subpackages="$pkgname-dev"
-source="$pkgname-$pkgver.tar.bz2::https://github.com/ocaml-ppx/ppx_deriving/releases/download/v$pkgver/ppx_deriving-v$pkgver.tbz"
-builddir="$srcdir/$_pkgname-v$pkgver"
+source="$_pkgname-$pkgver.tar.bz2::https://github.com/ocaml-ppx/ppx_deriving/releases/download/$pkgver/ppx_deriving-$pkgver.tbz"
+builddir="$srcdir/$_pkgname-$pkgver"
_ocamldir=usr/lib/ocaml
# 32-bit archs
@@ -43,19 +42,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
-f28cd778a2d48ababa53f73131b25229a11b03685610d020b7b9228b1e25570891cd927b37475aeda49be72debaf5f2dda4c1518a0965db7a361c0ebe325a8d2 ocaml-ppx_deriving-5.2.1.tar.bz2
+9bed9b00accf9a385f1f60ac4099bcab3c9a06a09b5cb11ecc378f7abde72caa53ed1ed7b92dd9c4479888b0f0af03f33f42126644c85a1b33c5665ec3c8ba9b ppx_deriving-5.3.0.tar.bz2
"
diff --git a/testing/ocaml-ppx_sexp_conv/APKBUILD b/testing/ocaml-ppx_sexp_conv/APKBUILD
index 6eea2fa5156..4b94b427778 100644
--- a/testing/ocaml-ppx_sexp_conv/APKBUILD
+++ b/testing/ocaml-ppx_sexp_conv/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-ppx_sexp_conv
_pkgname=ppx_sexp_conv
-pkgver=0.15.1
+pkgver=0.16.0
pkgrel=0
pkgdesc="[@@deriving] plugin to generate S-expression conversion functions"
url="https://github.com/janestreet/ppx_sexp_conv"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="MIT"
-depends="ocaml-runtime ocaml-base ocaml-ppxlib ocaml-sexplib0"
depends_dev="
$pkgname=$pkgver-r$pkgrel
ocaml-base-dev
@@ -17,8 +16,8 @@ depends_dev="
"
makedepends="$depends_dev dune ocaml"
subpackages="$pkgname-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/janestreet/ppx_sexp_conv/archive/refs/tags/v$pkgver.tar.gz"
-builddir="$srcdir/$_pkgname-$pkgver"
+source="https://ocaml.janestreet.com/ocaml-core/v${pkgver%.*}/files/ppx_sexp_conv-v$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-v$pkgver"
_ocamldir=usr/lib/ocaml
# 32-bit archs
@@ -31,7 +30,7 @@ build() {
}
check() {
- dune runtest --verbose
+ dune runtest --build-dir=.testenv --verbose
}
package() {
@@ -46,19 +45,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
-f2b669e7c7bbbc8dd4978b47b73662dd0195ae85cdd71596485211cb5ab4daedcae9be4b33796674320e0d324b7ee9f90d3b219212be98ed792e3a89ccf8c41b ocaml-ppx_sexp_conv-0.15.1.tar.gz
+898549b8fdac328bf4583b3ee744b7fed59bb22ebcf9d5afe4268985c60f5d7b04881a7e77fc2940776afb21669e96411a244b5e4902af737c673f0cce63bb55 ppx_sexp_conv-v0.16.0.tar.gz
"
diff --git a/testing/ocaml-ppxlib/APKBUILD b/testing/ocaml-ppxlib/APKBUILD
index dbf47d06e4f..3a9c8c89ed7 100644
--- a/testing/ocaml-ppxlib/APKBUILD
+++ b/testing/ocaml-ppxlib/APKBUILD
@@ -1,25 +1,19 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-ppxlib
_pkgname=ppxlib
-pkgver=0.26.0
+pkgver=0.32.0
pkgrel=0
pkgdesc="Standard library for ppx rewriters"
url="https://github.com/ocaml-ppx/ppxlib"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="MIT"
-depends="
- ocaml-runtime
- ocaml-compiler-libs-repackaged
- ocaml-ppx_derivers
- ocaml-sexplib0
- ocaml-stdlib-shims
- "
depends_dev="
$pkgname=$pkgver-r$pkgrel
ocaml-compiler-libs-repackaged-dev
ocaml-ppx_derivers-dev
ocaml-sexplib0-dev
+ ocaml-stdlib-shims
"
makedepends="$depends_dev dune ocaml"
checkdepends="
@@ -31,7 +25,7 @@ checkdepends="
"
options="!check"
subpackages="$pkgname-dev"
-source="$pkgname-$pkgver.tar.bz2::https://github.com/ocaml-ppx/ppxlib/releases/download/$pkgver/ppxlib-$pkgver.tbz"
+source="$_pkgname-$pkgver.tar.bz2::https://github.com/ocaml-ppx/ppxlib/releases/download/$pkgver/ppxlib-$pkgver.tbz"
builddir="$srcdir/$_pkgname-$pkgver"
_ocamldir=usr/lib/ocaml
@@ -60,19 +54,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
-9cfc9587657d17cdee5483e2a03292f872c42886e512bcc7442652e6418ce74c0135c731d8a68288c7fecae7f1b2defd93fe5acf8edb41e25144a8cec2806227 ocaml-ppxlib-0.26.0.tar.bz2
+73fef8ab8761bfbfde6ae87cc51eaacc5a5c937f0d628a890f0abdb2bffbf073932c25287a9e3baa2a1947c37f3dfa7f83ddd33c440e2e800971015addc97cd2 ppxlib-0.32.0.tar.bz2
"
diff --git a/testing/ocaml-psq/APKBUILD b/testing/ocaml-psq/APKBUILD
index e24de17d8c6..5a6b0aaa443 100644
--- a/testing/ocaml-psq/APKBUILD
+++ b/testing/ocaml-psq/APKBUILD
@@ -1,16 +1,15 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-psq
_pkgname=psq
pkgver=0.2.0
-pkgrel=0
+pkgrel=2
pkgdesc="Functional Priority Search Queues"
url="https://github.com/pqwy/psq"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="ocaml-runtime ocaml-seq"
depends_dev="$pkgname=$pkgver-r$pkgrel ocaml-seq-dev"
-makedepends="dune ocaml"
+makedepends="$depends_dev dune ocaml"
checkdepends="ocaml-alcotest-dev ocaml-qcheck-alcotest-dev ocaml-qcheck-core-dev"
options="!check"
subpackages="$pkgname-dev"
@@ -43,19 +42,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
0c570c5fc2bb2348b1ec03507abb4f152673a5d8f92c388c4cd5b7fc43a6e8f514007dbf4fb613503c4e8d5c8d3210b24ac37c546c79d94ebdf6b482e5cde024 ocaml-psq-0.2.0.tar.bz2
"
diff --git a/testing/ocaml-ptime/APKBUILD b/testing/ocaml-ptime/APKBUILD
index 8b7a6c372e5..065b9342d6b 100644
--- a/testing/ocaml-ptime/APKBUILD
+++ b/testing/ocaml-ptime/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-ptime
_pkgname=ptime
pkgver=1.0.0
-pkgrel=0
+pkgrel=2
pkgdesc="POSIX time for OCaml"
url="https://erratique.ch/software/ptime"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="ocaml-runtime"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="
ocaml
@@ -45,19 +44,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
df2410d9cc25a33083fe968a584b8fb4d68ad5c077f3356da0a20427e6cd8756a5b946b921e5cf8ed4097f2c506e93345d9dca63b113be644d5a7cc0753d1534 ocaml-ptime-1.0.0.tar.bz2
"
diff --git a/testing/ocaml-ptmap/APKBUILD b/testing/ocaml-ptmap/APKBUILD
index 5d5c7fab7a8..f99d3ec1cc3 100644
--- a/testing/ocaml-ptmap/APKBUILD
+++ b/testing/ocaml-ptmap/APKBUILD
@@ -3,12 +3,11 @@
pkgname=ocaml-ptmap
_pkgname=ptmap
pkgver=2.0.5
-pkgrel=1
+pkgrel=3
pkgdesc="Maps over integers implemented as Patricia trees"
url="https://github.com/backtracking/ptmap"
-arch="all !riscv64" # limited by ocaml aport
-license="LGPL-2.1-or-later WITH OCaml-linking-exception"
-depends="ocaml-runtime"
+arch="all !riscv64 !loongarch64" # ocaml
+license="LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="
dune
@@ -50,19 +49,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find usr/lib/ocaml \( \
+ local path; find usr/lib/ocaml \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
6815ee977cb9a4c5088af8dfb7d8055c8d35870ceb4e95f658fbdc50405495bea75a8755442dc6f7345d2e9021c3b96d14883603759baf267feced9cd5ba5202 ocaml-ptmap-2.0.5.tar.gz
"
diff --git a/testing/ocaml-qcheck/APKBUILD b/testing/ocaml-qcheck/APKBUILD
index af1d3d38d74..38ed0d5627c 100644
--- a/testing/ocaml-qcheck/APKBUILD
+++ b/testing/ocaml-qcheck/APKBUILD
@@ -3,12 +3,11 @@
pkgname=ocaml-qcheck
_pkgname=qcheck
pkgver=0.18.1
-pkgrel=1
+pkgrel=3
pkgdesc="QuickCheck inspired property-based testing for OCaml"
url="https://github.com/c-cube/qcheck"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="BSD-2-Clause"
-depends="ocaml-runtime"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="dune ocaml ocaml-findlib ocaml-ounit-dev ocaml-seq-dev ocaml-stdlib-shims"
options="!check" # requires alcotest
@@ -48,19 +47,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find usr/lib/ocaml \( \
+ local path; find usr/lib/ocaml \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
6fd5fd4348ed6a48a8f64a466fedd07374eaf23d516b3c250ebad2a32ddbca3ae4ad9c84fe1112858075df46c119cd6550205a4228a553b014d135581f024ded ocaml-qcheck-0.18.1.tar.gz
"
diff --git a/testing/ocaml-qtest/APKBUILD b/testing/ocaml-qtest/APKBUILD
index 0a721b79a86..788f4022353 100644
--- a/testing/ocaml-qtest/APKBUILD
+++ b/testing/ocaml-qtest/APKBUILD
@@ -3,12 +3,11 @@
pkgname=ocaml-qtest
_pkgname=qtest
pkgver=2.11.2
-pkgrel=1
+pkgrel=3
pkgdesc="Lightweight inline test extraction from comments"
url="https://github.com/vincent-hugot/qtest"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="GPL-3.0-or-later"
-depends="ocaml-runtime ocaml-qcheck"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="dune ocaml ocaml-findlib ocaml-qcheck-dev ocaml-ounit-dev"
subpackages="$pkgname-dev"
@@ -44,19 +43,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find usr/lib/ocaml \( \
+ local path; find usr/lib/ocaml \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
3edb8471b29c9eb2f6ba11b157abf7ca43ef965d4b1500aaaf1acaeb261972a61c9b104887ada6ca63dc85e06b1d27e34f391885b2fbeb7ea5646323d3be08d0 ocaml-qtest-2.11.2.tar.gz
"
diff --git a/testing/ocaml-randomconv/APKBUILD b/testing/ocaml-randomconv/APKBUILD
index 35168ed34d9..caa5187691a 100644
--- a/testing/ocaml-randomconv/APKBUILD
+++ b/testing/ocaml-randomconv/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-randomconv
_pkgname=randomconv
pkgver=0.1.3
-pkgrel=0
+pkgrel=2
pkgdesc="Convert from random byte vectors (Cstruct.t) to random native numbers"
url="https://github.com/hannesm/randomconv"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="ocaml-runtime ocaml-cstruct"
depends_dev="$pkgname=$pkgver-r$pkgrel ocaml-cstruct-dev"
makedepends="$depends_dev dune ocaml"
subpackages="$pkgname-dev"
@@ -41,19 +40,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
f5186f7669a6b1b943442fdcfcdb37cf6c8199a1c644ed815f351f50428b9b7e1e5408ff4a0fcdfb093451b5237e48602af60f87a1b93e49897576c8aa2cd23f ocaml-randomconv-0.1.3.tar.bz2
"
diff --git a/testing/ocaml-re/APKBUILD b/testing/ocaml-re/APKBUILD
index bc54e32bfc8..f055d15b97e 100644
--- a/testing/ocaml-re/APKBUILD
+++ b/testing/ocaml-re/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-re
_pkgname=re
-pkgver=1.10.4
+pkgver=1.11.0
pkgrel=1
pkgdesc="Pure OCaml regular expressions, with support for Perl and POSIX-style strings"
url="https://github.com/ocaml/ocaml-re"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="LGPL-2.1-or-later"
-depends="ocaml-runtime ocaml-seq"
depends_dev="$pkgname=$pkgver-r$pkgrel ocaml-seq-dev"
makedepends="$depends_dev dune ocaml"
checkdepends="ocaml-ounit-dev"
@@ -43,19 +42,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
-92b05cf92c389fa8c753f2acca837b15dd05a4a2e8e2bec7a269d2e14c35b1a786d394258376648f80b4b99250ba1900cfe68230b8385aeac153149d9ce56099 ocaml-re-1.10.4.tar.bz2
+3e3712cc1266ec1f27620f3508ea2ebba338f4083b07d8a69dccee1facfdc1971a6c39f9deea664d2a62fd7f2cfd2eae816ca4c274acfadaee992a3befc4b757 ocaml-re-1.11.0.tar.bz2
"
diff --git a/testing/ocaml-react/APKBUILD b/testing/ocaml-react/APKBUILD
index 64edfe3816b..add2fc698c1 100644
--- a/testing/ocaml-react/APKBUILD
+++ b/testing/ocaml-react/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-react
_pkgname=react
pkgver=1.2.2
-pkgrel=0
+pkgrel=2
pkgdesc="OCaml framework for Functional Reactive Programming (FRP)"
url="https://erratique.ch/software/react"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="ocaml-runtime"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="
ncurses
@@ -51,19 +50,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find usr/lib/ocaml \( \
+ local path; find usr/lib/ocaml \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
18cdd544d484222ba02db6bd9351571516532e7a1c107b59bbe39193837298f5c745eab6754f8bc6ff125b387be7018c6d6e6ac99f91925a5e4f53af688522b1 ocaml-react-1.2.2.tar.bz2
"
diff --git a/testing/ocaml-result/APKBUILD b/testing/ocaml-result/APKBUILD
index 2280850c060..198c23063e5 100644
--- a/testing/ocaml-result/APKBUILD
+++ b/testing/ocaml-result/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-result
_pkgname=result
pkgver=1.5
-pkgrel=0
+pkgrel=2
pkgdesc="Compatibility Result module"
url="https://github.com/janestreet/result"
-arch="all !riscv64" # limited by ocaml
+arch="all !riscv64 !loongarch64" # ocaml
license="BSD-3-Clause"
-depends="ocaml-runtime"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="dune ocaml ocaml-findlib"
options="!check" # no tests provided
@@ -41,19 +40,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find usr/lib/ocaml \( \
+ local path; find usr/lib/ocaml \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
4dfabc121fd69b3e0fe742f4da483830104d8fedf5ad3d83b4fb3efa2d544cb05eadc8719960b24bdf5760bff3434c5225f280339d70af9fb2842f3efe1bb87b ocaml-result-1.5.tar.bz2
"
diff --git a/testing/ocaml-rresult/APKBUILD b/testing/ocaml-rresult/APKBUILD
index bd60cfa557d..602510a5e2e 100644
--- a/testing/ocaml-rresult/APKBUILD
+++ b/testing/ocaml-rresult/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-rresult
_pkgname=rresult
pkgver=0.7.0
-pkgrel=0
+pkgrel=2
pkgdesc="Result value combinators for OCaml"
url="https://erratique.ch/software/rresult"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="ocaml-runtime"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="
ocaml
@@ -45,19 +44,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
f1bb631c986996388e9686d49d5ae4d8aaf14034f6865c62a88fb58c48ce19ad2eb785327d69ca27c032f835984e0bd2efd969b415438628a31f3e84ec4551d3 ocaml-rresult-0.7.0.tar.bz2
"
diff --git a/testing/ocaml-sedlex/APKBUILD b/testing/ocaml-sedlex/APKBUILD
index 24f19c3f96e..04d60305023 100644
--- a/testing/ocaml-sedlex/APKBUILD
+++ b/testing/ocaml-sedlex/APKBUILD
@@ -1,20 +1,19 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-sedlex
_pkgname=sedlex
-pkgver=2.6
+pkgver=3.2
pkgrel=0
pkgdesc="An OCaml lexer generator for Unicode"
url="https://github.com/ocaml-community/sedlex"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="MIT"
-depends="ocaml-runtime ocaml-gen ocaml-ppxlib"
depends_dev="$pkgname=$pkgver-r$pkgrel ocaml-gen-dev ocaml-ppxlib-dev"
makedepends="$depends_dev dune ocaml"
checkdepends="cmd:curl"
options="!check"
subpackages="$pkgname-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/ocaml-community/sedlex/archive/v$pkgver.tar.gz"
+source="$_pkgname-$pkgver.tar.gz::https://github.com/ocaml-community/sedlex/archive/v$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
_ocamldir=usr/lib/ocaml
@@ -43,19 +42,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
-25806a8187c423ab2bf2439cdc1970e0ad8bb9c98dd51f0f5845180656b12fa37f95c7b160db4300336f92a534887d47631f5d9a1e461bcea0f83654c1413168 ocaml-sedlex-2.6.tar.gz
+00e257d1b97e99d49028d2e38b20a05c6aa151c362991c37c17522bf58c19e273b762ea39dd9783ed9ecc60d11dadeabb0487e16b4af91536e45e7e18c86cfe9 sedlex-3.2.tar.gz
"
diff --git a/testing/ocaml-seq/APKBUILD b/testing/ocaml-seq/APKBUILD
index 94bd7cfd337..a500cad0f0d 100644
--- a/testing/ocaml-seq/APKBUILD
+++ b/testing/ocaml-seq/APKBUILD
@@ -1,18 +1,17 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-seq
_pkgname=seq
-pkgver=0.2.2
-pkgrel=1
+pkgver=0.3.1
+pkgrel=2
pkgdesc="Compatibility package for the standard OCaml iterator type"
url="https://github.com/c-cube/seq"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="LGPL-2.1-only"
-depends="ocaml-runtime"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="dune ocaml ocaml-findlib"
subpackages="$pkgname-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/c-cube/seq/archive/$pkgver.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/c-cube/seq/archive/v$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
# 32-bit archs
@@ -44,19 +43,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find usr/lib/ocaml \( \
+ local path; find usr/lib/ocaml \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
-cab0eb4cb6d9788b7cbd7acbefefc15689d706c97ff7f75dd97faf3c21e466af4d0ff110541a24729db587e7172b1a30a3c2967e17ec2e49cbd923360052c07c ocaml-seq-0.2.2.tar.gz
+06ce767d3ec1532f8a2421d033f4d9dc5c08c9a27574754d456c31a71ecb9a3c33857591b7d24f85492dce679cd0da8c8985c9fb1a5b5a7f8588d90056b663b8 ocaml-seq-0.3.1.tar.gz
"
diff --git a/testing/ocaml-sexplib/APKBUILD b/testing/ocaml-sexplib/APKBUILD
index 9f13cc37a2e..75e9434a8e5 100644
--- a/testing/ocaml-sexplib/APKBUILD
+++ b/testing/ocaml-sexplib/APKBUILD
@@ -1,30 +1,22 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-sexplib
_pkgname=sexplib
-pkgver=0.15.0
-pkgrel=1
+pkgver=0.16.0
+pkgrel=0
pkgdesc="Library for serializing OCaml values to and from S-expressions"
url="https://github.com/janestreet/sexplib"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="MIT"
-depends="
- ocaml-runtime
- ocaml-base
- ocaml-num
- ocaml-parsexp
- ocaml-sexplib0
- "
depends_dev="
$pkgname=$pkgver-r$pkgrel
- ocaml-base-dev
ocaml-num-dev
ocaml-parsexp-dev
ocaml-sexplib0-dev
"
makedepends="$depends_dev dune ocaml"
subpackages="$pkgname-dev"
-source="$pkgname-$pkgver.tar.gz::https://ocaml.janestreet.com/ocaml-core/v${pkgver%.*}/files/sexplib-v$pkgver.tar.gz"
+source="https://ocaml.janestreet.com/ocaml-core/v${pkgver%.*}/files/sexplib-v$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-v$pkgver"
_ocamldir=usr/lib/ocaml
@@ -38,7 +30,7 @@ build() {
}
check() {
- dune runtest --verbose
+ dune runtest --build-dir=.testenv --verbose
}
package() {
@@ -53,19 +45,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
-141a24649439e1c707004ba19977072c44a68d2dc79fa3659663dc325089245fc623c7ef231d31774e94e92b6ceedbe604930a352c4ce54473adee7e9d377c11 ocaml-sexplib-0.15.0.tar.gz
+d361795cdc24848658aa9245fbb7a78e768849158bbbd4304e6c117f5c15b139f66a714d2eb9cbc3c16bac48dbf36357bd69641300fb7124b8a1614ce34e3a08 sexplib-v0.16.0.tar.gz
"
diff --git a/testing/ocaml-sexplib0/APKBUILD b/testing/ocaml-sexplib0/APKBUILD
index 5430656a8e5..e14a9650f8c 100644
--- a/testing/ocaml-sexplib0/APKBUILD
+++ b/testing/ocaml-sexplib0/APKBUILD
@@ -1,18 +1,17 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-sexplib0
_pkgname=sexplib0
-pkgver=0.15.0
+pkgver=0.16.0
pkgrel=0
pkgdesc="Library containing the definition of S-expressions and some base converters"
url="https://github.com/janestreet/sexplib0"
-arch="all !riscv64" # restricted by ocaml
+arch="all !riscv64 !loongarch64" # ocaml
license="MIT"
-depends="ocaml-runtime"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="dune ocaml"
subpackages="$pkgname-dev"
-source="$pkgname-$pkgver.tar.gz::https://ocaml.janestreet.com/ocaml-core/v0.15/files/sexplib0-v$pkgver.tar.gz"
+source="https://ocaml.janestreet.com/ocaml-core/v${pkgver%.*}/files/sexplib0-v$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-v$pkgver"
# 32-bit archs
@@ -26,7 +25,7 @@ build() {
}
check() {
- dune runtest --no-buffer --verbose
+ dune runtest --build-dir=.testenv --no-buffer --verbose
}
package() {
@@ -43,19 +42,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find usr/lib/ocaml \( \
+ local path; find usr/lib/ocaml \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
-6f8b11422ce066a3c48338deea6aedfc44d365de6128bf926b0da3a51e9c0d839d84f92388b0a84c25ef875ea9d48e521e3cba53d8db85be30d67ad78e7ff450 ocaml-sexplib0-0.15.0.tar.gz
+397c7a9cc5bd9f8a90948a94c576f757b7bb6033900b8f134f61dce8344556c4825b8408925e3686b577e67758f5de55b07181f73cbb52b12e2eacfb6c8b6259 sexplib0-v0.16.0.tar.gz
"
diff --git a/testing/ocaml-sha/APKBUILD b/testing/ocaml-sha/APKBUILD
index b8974253724..55e80867211 100644
--- a/testing/ocaml-sha/APKBUILD
+++ b/testing/ocaml-sha/APKBUILD
@@ -2,17 +2,17 @@
# Maintainer: Andy Li <andy@onthewings.net>
pkgname=ocaml-sha
_pkgname=sha
-pkgver=1.15.2
-pkgrel=1
+pkgver=1.15.4
+pkgrel=0
pkgdesc="Binding to the SHA cryptographic functions"
url="https://github.com/djs55/ocaml-sha"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="ocaml-runtime"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="dune ocaml ocaml-findlib ocaml-ounit-dev ocaml-stdlib-shims ocaml-seq-dev"
subpackages="$pkgname-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/djs55/ocaml-sha/archive/$pkgver.tar.gz"
+source="$pkgname-$pkgver.tar.bz2::https://github.com/djs55/ocaml-sha/releases/download/v$pkgver/sha-$pkgver.tbz"
+builddir="$srcdir/$_pkgname-$pkgver"
# 32-bit archs
case "$CARCH" in
@@ -25,7 +25,7 @@ build() {
}
check() {
- dune runtest --verbose
+ dune runtest --build-dir=.testenv --verbose
}
package() {
@@ -43,19 +43,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find usr/lib/ocaml \( \
+ local path; find usr/lib/ocaml \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
-7ea47377747ef4c36791c4ed9ff88fe138ee14d012cc3f7b41fcc28776e57ea54c5ee5cc033adc6288177ed834afb73c44e60cfff01f1be28492a992f97a1d06 ocaml-sha-1.15.2.tar.gz
+dbb31b523ba0bace023bc1b0558a8f572a0ec20fb3f19f783935be755cd161e09aba352eda2bcf7c4e5ab838c7f874cfbfaed9debf0813df25d9dbe7b9314fdf ocaml-sha-1.15.4.tar.bz2
"
diff --git a/testing/ocaml-stdlib-shims/APKBUILD b/testing/ocaml-stdlib-shims/APKBUILD
index be3f3b404ff..847f4053534 100644
--- a/testing/ocaml-stdlib-shims/APKBUILD
+++ b/testing/ocaml-stdlib-shims/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-stdlib-shims
_pkgname=stdlib-shims
pkgver=0.3.0
-pkgrel=0
+pkgrel=2
pkgdesc="OCaml Shims to substitute Pervasives with Stdlib"
url="https://github.com/ocaml/stdlib-shims"
-arch="all !riscv64" # limited by ocaml aport
-license="LGPL-2.1-only-WITH-linking-exception"
-depends="ocaml-runtime"
+arch="all !riscv64 !loongarch64" # ocaml
+license="LGPL-2.1-only WITH OCaml-LGPL-linking-exception"
makedepends="dune ocaml ocaml-findlib ocaml-compiler-libs"
source="$pkgname-$pkgver.tar.gz::https://github.com/ocaml/stdlib-shims/archive/$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
@@ -31,6 +30,27 @@ package() {
rm -Rf "$pkgdir"/usr/doc
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
c4f2a6dc38171e1d2125cc30e5d63f64f49d8ed011df6588dfa0b51f9dc634f9e8771d6237110c7d1d5e81e161dd5112eaae8df71ee3a7d8a010c2732fcc75ca ocaml-stdlib-shims-0.3.0.tar.gz
"
diff --git a/testing/ocaml-stringext/APKBUILD b/testing/ocaml-stringext/APKBUILD
index 8b96ac3e1e4..c305028d691 100644
--- a/testing/ocaml-stringext/APKBUILD
+++ b/testing/ocaml-stringext/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-stringext
_pkgname=stringext
pkgver=1.6.0
-pkgrel=0
+pkgrel=2
pkgdesc="Extra string functions for OCaml"
url="https://github.com/rgrinberg/stringext"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="MIT"
-depends="ocaml-runtime"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="dune ocaml"
checkdepends="ocaml-ounit-dev ocaml-qtest-dev"
@@ -43,19 +42,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
d8ebe40f42b598a9bd99f1ef4b00ba93458385a4accd121af66a0bf3b3f8d7135f576740adf1a43081dd409977c2219fd4bdbb5b3d1308890d301d553ed49900 ocaml-stringext-1.6.0.tar.bz2
"
diff --git a/testing/ocaml-tcpip/APKBUILD b/testing/ocaml-tcpip/APKBUILD
index a31d13e8f95..8a191430c73 100644
--- a/testing/ocaml-tcpip/APKBUILD
+++ b/testing/ocaml-tcpip/APKBUILD
@@ -1,35 +1,14 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-tcpip
_pkgname=tcpip
-pkgver=7.1.0
-pkgrel=0
+pkgver=7.1.2
+pkgrel=3
pkgdesc="OCaml TCP/IP networking stack, used in MirageOS"
url="https://github.com/mirage/mirage-tcpip"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
# ocaml-bisect_ppx only needed for dev
-depends="
- ocaml-runtime
- ocaml-arp
- ocaml-cstruct
- ocaml-duration
- ocaml-ethernet
- ocaml-fmt
- ocaml-ipaddr
- ocaml-logs
- ocaml-lru
- ocaml-lwt
- ocaml-lwt-dllist
- ocaml-metrics
- ocaml-mirage-clock
- ocaml-mirage-flow
- ocaml-mirage-net
- ocaml-mirage-profile
- ocaml-mirage-random
- ocaml-mirage-time
- ocaml-randomconv
- "
depends_dev="
$pkgname=$pkgver-r$pkgrel
ocaml-arp-dev
@@ -85,19 +64,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
-fae605ba30b0bb5ae28cbedc32f220c5a5166db4af9e060d82007cd020132f1e334fa8fcb7e9bd68851fc838f7e6fb1b4e1d3cba8fb787dcec79d2107b8ffd4a ocaml-tcpip-7.1.0.tar.bz2
+3f873c986de5c58df72db2953c6b2a6319963dbbbd0781b55c2878fd1eaa081ebb7cecbee595db7cb3680a6f438904f98cb69ca17e70c7a6d2d1f61277e929bd ocaml-tcpip-7.1.2.tar.bz2
"
diff --git a/testing/ocaml-tls/APKBUILD b/testing/ocaml-tls/APKBUILD
index 930533d6169..79ccbe53eba 100644
--- a/testing/ocaml-tls/APKBUILD
+++ b/testing/ocaml-tls/APKBUILD
@@ -1,31 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-tls
_pkgname=tls
pkgver=0.15.3
-pkgrel=0
+pkgrel=4
pkgdesc="Transport Layer Security purely in OCaml"
url="https://github.com/mirleft/ocaml-tls"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="BSD-2-Clause"
-depends="
- ocaml-runtime
- ocaml-cstruct
- ocaml-domain-name
- ocaml-fmt
- ocaml-hkdf
- ocaml-ipaddr
- ocaml-logs
- ocaml-lwt
- ocaml-mirage-crypto
- ocaml-mirage-clock
- ocaml-mirage-flow
- ocaml-mirage-kv
- ocaml-ppx_sexp_conv
- ocaml-ptime
- ocaml-sexplib
- ocaml-x509
- "
depends_dev="
$pkgname=$pkgver-r$pkgrel
ocaml-cstruct-dev
@@ -84,19 +66,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
371b85c6afebeda0fcc8cc5252e3333d9c3ef3a6bdbee160bb194e2a5928fd537c811c6eec729f16852070944e627257d44c97142a259d00d0db66956a95df49 ocaml-tls-0.15.3.tar.bz2
"
diff --git a/testing/ocaml-tophide/APKBUILD b/testing/ocaml-tophide/APKBUILD
index cc6fbd81078..feca779f93b 100644
--- a/testing/ocaml-tophide/APKBUILD
+++ b/testing/ocaml-tophide/APKBUILD
@@ -1,15 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-tophide
_pkgname=tophide
pkgver=1.0.4
-pkgrel=0
+pkgrel=2
pkgdesc="Hide OCaml toplevel values whose name starts with an underscore"
url="https://github.com/mjambon/tophide"
-arch="all !riscv64" # restricted by ocaml
+arch="all !riscv64 !loongarch64" # ocaml
license="BSD-3-Clause"
-depends="ocaml-runtime"
-depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="ocaml ocaml-compiler-libs ocaml-findlib"
options="!check"
source="$pkgname-$pkgver.tar.gz::https://github.com/mjambon/tophide/archive/v$pkgver.tar.gz"
@@ -30,6 +28,27 @@ package() {
make install
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
9dafd73463f349e77b410e8df56966812752e78f08ad6ec5f1f13958beb374f8396fd05233b6499b0b941dc9ee5ca0d96e19041fc9b28c125692c8abf693734c ocaml-tophide-1.0.4.tar.gz
"
diff --git a/testing/ocaml-topkg/APKBUILD b/testing/ocaml-topkg/APKBUILD
index fde483d9c35..aed4ef05edf 100644
--- a/testing/ocaml-topkg/APKBUILD
+++ b/testing/ocaml-topkg/APKBUILD
@@ -1,15 +1,14 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
# FIXME: run tests!
pkgname=ocaml-topkg
_pkgname=topkg
pkgver=1.0.5
-pkgrel=0
+pkgrel=2
pkgdesc="The transitory OCaml software packager"
url="https://erratique.ch/software/topkg"
-arch="all !riscv64" # restricted by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="ocaml-runtime"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="
ocaml
@@ -44,19 +43,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find usr/lib/ocaml \( \
+ local path; find usr/lib/ocaml \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
9450e9139209aacd8ddb4ba18e4225770837e526a52a56d94fd5c9c4c9941e83e0e7102e2292b440104f4c338fabab47cdd6bb51d69b41cc92cc7a551e6fefab ocaml-topkg-1.0.5.tar.bz2
"
diff --git a/testing/ocaml-trie/APKBUILD b/testing/ocaml-trie/APKBUILD
index e0cf265841e..051486a7811 100644
--- a/testing/ocaml-trie/APKBUILD
+++ b/testing/ocaml-trie/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-trie
_pkgname=trie
pkgver=1.0.0
-pkgrel=0
+pkgrel=2
pkgdesc="Strict impure trie tree OCaml module"
url="https://github.com/kandu/trie/"
-arch="all !riscv64" # restricted by ocaml
+arch="all !riscv64 !loongarch64" # ocaml
license="MIT"
-depends="ocaml-runtime"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="dune ocaml"
subpackages="$pkgname-dev"
@@ -43,19 +42,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find usr/lib/ocaml \( \
+ local path; find usr/lib/ocaml \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
1921a42486a0a221e546507287cbf28ccae5462abe55817269517b7b92e19f35031f2d0fba2b1890b97236d6fff11be9d76ade317ae1dfa1089bd4740a46786f ocaml-trie-1.0.0.tar.gz
"
diff --git a/testing/ocaml-uri/APKBUILD b/testing/ocaml-uri/APKBUILD
index 77323695535..e06be9b1ef3 100644
--- a/testing/ocaml-uri/APKBUILD
+++ b/testing/ocaml-uri/APKBUILD
@@ -1,20 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-uri
_pkgname=uri
pkgver=4.2.0
-pkgrel=0
+pkgrel=2
pkgdesc="RFC3986 URI/URL parsing library for OCaml"
url="https://github.com/mirage/ocaml-uri"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="
- ocaml-runtime
- ocaml-angstrom
- ocaml-stringext
- ocaml-ppx_sexp_conv
- ocaml-re
- "
depends_dev="
$pkgname=$pkgver-r$pkgrel
ocaml-angstrom-dev
@@ -55,19 +48,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
119e39bf53db9e94383a4e3a3df492b60b2db097266b3a8660de431ad85bc87997718305972fd2abbfb529973475ce6b210ba5e34d12e85a5dabbb0e24130aa1 ocaml-uri-4.2.0.tar.bz2
"
diff --git a/testing/ocaml-uucd/APKBUILD b/testing/ocaml-uucd/APKBUILD
index 181903cce9e..e9018dacf53 100644
--- a/testing/ocaml-uucd/APKBUILD
+++ b/testing/ocaml-uucd/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-uucd
_pkgname=uucd
pkgver=14.0.0
-pkgrel=0
+pkgrel=2
pkgdesc="Unicode character database decoder for OCaml"
url="https://erratique.ch/software/uucd"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="ocaml-runtime"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="
ocaml
@@ -47,19 +46,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
2748ea59440e5379b7a1ed2aed94f1ad0c9f9063ae329a3ac9fc8dc057fa95b4b7c81fc0011eab89af31ddfe8e5562a49476590b36352e62004db476c45a67e1 ocaml-uucd-14.0.0.tar.bz2
"
diff --git a/testing/ocaml-uucp/APKBUILD b/testing/ocaml-uucp/APKBUILD
index 20e4ab72037..0b25076047d 100644
--- a/testing/ocaml-uucp/APKBUILD
+++ b/testing/ocaml-uucp/APKBUILD
@@ -1,15 +1,14 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-uucp
_pkgname=uucp
pkgver=14.0.0
-pkgrel=0
+pkgrel=2
pkgdesc="Unicode character properties for OCaml"
url="https://erratique.ch/software/uucp"
-# limited by riscv64: ocaml, ppc64le: ocaml-uunf
-arch="all !riscv64 !ppc64le"
+# limited by riscv64, loongarch64: ocaml, ppc64le: ocaml-uunf
+arch="all !riscv64 !loongarch64 !ppc64le"
license="ISC"
-depends="ocaml-runtime"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="
ocaml
@@ -54,19 +53,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
2d0224aed5d5accbb121624898f08598e8c74a2415942f159a54221c0cdac62ed64fc70a039c833e50110cefce77754ada9ac2d58f79a6fc9331135326fe6899 ocaml-uucp-14.0.0.tar.bz2
"
diff --git a/testing/ocaml-uuidm/APKBUILD b/testing/ocaml-uuidm/APKBUILD
index 964fc5f1f0f..62ec82a94b8 100644
--- a/testing/ocaml-uuidm/APKBUILD
+++ b/testing/ocaml-uuidm/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-uuidm
_pkgname=uuidm
pkgver=0.9.8
-pkgrel=0
+pkgrel=2
pkgdesc="Universally unique identifiers (UUIDs) for OCaml"
url="https://erratique.ch/software/uuidm"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="ocaml-runtime" # ocaml-cmdliner
depends_dev="$pkgname=$pkgver-r$pkgrel ocaml-cmdliner-dev"
makedepends="
$depends_dev
@@ -47,14 +46,12 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
@@ -67,6 +64,27 @@ tools() {
amove usr/bin
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
d5073ae49c402ab3ea6dc8f86bc5b8cc14129437e23e47da4d91431648fcb31c4dce6308f9c936c58df9a2c6afda61d77105a3022e369cca4e4c140320e803b5 ocaml-uuidm-0.9.8.tar.bz2
"
diff --git a/testing/ocaml-uunf/APKBUILD b/testing/ocaml-uunf/APKBUILD
index 04eeb1ad920..5baeb6b156c 100644
--- a/testing/ocaml-uunf/APKBUILD
+++ b/testing/ocaml-uunf/APKBUILD
@@ -1,16 +1,15 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-uunf
_pkgname=uunf
pkgver=14.0.0
-pkgrel=0
+pkgrel=2
pkgdesc="Unicode text normalization for OCaml"
url="https://erratique.ch/software/uunf"
-# riscv64: restricted by ocaml aport
+# riscv64, loongarch64: restricted by ocaml aport
# ppc64le: ocamlopt exited with code 2 while compiling uunf_data.ml
-arch="all !riscv64 !ppc64le"
+arch="all !riscv64 !loongarch64 !ppc64le"
license="ISC"
-depends="ocaml-runtime"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="
ocaml
@@ -53,19 +52,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
9aac01483abb8a8a5d68832d7f7692909d61559f2c9b0284c1da293f8115d1100df26e9e4cf7280bda6499ba866f5da2c72c4c21ca99a1d594b29d000e9bb051 ocaml-uunf-14.0.0.tar.bz2
"
diff --git a/testing/ocaml-uuseg/APKBUILD b/testing/ocaml-uuseg/APKBUILD
index e9748fc5349..27279deac6b 100644
--- a/testing/ocaml-uuseg/APKBUILD
+++ b/testing/ocaml-uuseg/APKBUILD
@@ -1,15 +1,14 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-uuseg
_pkgname=uuseg
pkgver=14.0.0
-pkgrel=0
+pkgrel=2
pkgdesc="Unicode text segmentation for OCaml"
url="https://erratique.ch/software/uuseg"
-# limited by riscv64: ocaml, ppc64le: ocaml-uucp
-arch="all !riscv64 !ppc64le"
+# limited by riscv64, loongarch64: ocaml, ppc64le: ocaml-uucp
+arch="all !riscv64 !loongarch64 !ppc64le"
license="ISC"
-depends="ocaml-runtime ocaml-uucp ocaml-uutf"
depends_dev="$pkgname=$pkgver-r$pkgrel ocaml-uucp-dev ocaml-uutf-dev"
makedepends="
$depends_dev
@@ -51,14 +50,12 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
@@ -71,6 +68,27 @@ tools() {
amove usr/bin
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
3f089baf95f010663a0c2f060b2911395d9b396f478efb10fd979815f527c9e61e0a70b3192f2e921f59287bfde0da6e25109d4a1825554e2e4a50c0535e97aa ocaml-uuseg-14.0.0.tar.bz2
"
diff --git a/testing/ocaml-uutf/APKBUILD b/testing/ocaml-uutf/APKBUILD
index 8a4cad68942..6c44a08fc1c 100644
--- a/testing/ocaml-uutf/APKBUILD
+++ b/testing/ocaml-uutf/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-uutf
_pkgname=uutf
pkgver=1.0.3
-pkgrel=0
+pkgrel=2
pkgdesc="Non-blocking streaming Unicode codec for OCaml"
url="https://erratique.ch/software/uutf"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="ocaml-runtime"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="
ocaml
@@ -48,19 +47,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
50cc4486021da46fb08156e9daec0d57b4ca469b07309c508d5a9a41e9dbcf1f32dec2ed7be027326544453dcaf9c2534919395fd826dc7768efc6cc4bfcc9f8 ocaml-uutf-1.0.3.tar.bz2
"
diff --git a/testing/ocaml-x509/APKBUILD b/testing/ocaml-x509/APKBUILD
index 300fb01ed9b..f1a1ca7df42 100644
--- a/testing/ocaml-x509/APKBUILD
+++ b/testing/ocaml-x509/APKBUILD
@@ -1,27 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-x509
_pkgname=x509
pkgver=0.16.0
-pkgrel=0
+pkgrel=2
pkgdesc="Public Key Infrastructure (RFC 5280, PKCS) purely in OCaml"
url="https://github.com/mirleft/ocaml-x509"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="BSD-2-Clause"
-depends="
- ocaml-runtime
- ocaml-asn1-combinators
- ocaml-base64
- ocaml-cstruct
- ocaml-domain-name
- ocaml-fmt
- ocaml-gmap
- ocaml-ipaddr
- ocaml-logs
- ocaml-mirage-crypto
- ocaml-pbkdf
- ocaml-ptime
- "
depends_dev="
$pkgname=$pkgver-r$pkgrel
ocaml-asn1-combinators-dev
@@ -69,19 +55,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
c9b4cf55d16d8b1e6b6faa18fc9ac08065fa09937f07a3447d4b637539b37bea6374c98d184eba159a8ba8eba860303a78563097e47ef30529fedaaf722115c6 ocaml-x509-0.16.0.tar.bz2
"
diff --git a/testing/ocaml-xml-light/APKBUILD b/testing/ocaml-xml-light/APKBUILD
index d2c02ee38ea..5edd35d5da7 100644
--- a/testing/ocaml-xml-light/APKBUILD
+++ b/testing/ocaml-xml-light/APKBUILD
@@ -2,16 +2,16 @@
# Maintainer: Fernando Casas Schossow <casasfernando@outlook.com>
pkgname=ocaml-xml-light
_pkgname=xml-light
-pkgver=2.4
-pkgrel=2
+pkgver=2.5
+pkgrel=0
pkgdesc="Minimal XML parser and printer for OCaml"
url="https://github.com/ncannasse/xml-light"
-arch="all !riscv64" # limited by ocaml aport
-license="LGPL-2.1-or-later-WITH-linking-exception"
-makedepends="ocaml ocaml-findlib-dev ocaml-ocamldoc gawk"
-subpackages="$pkgname-dev $pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/ncannasse/xml-light/archive/$pkgver.tar.gz
- Makefile-explicit-target-fix.patch"
+arch="all !riscv64 !loongarch64" # ocaml
+license="LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception"
+depends_dev="$pkgname=$pkgver-r$pkgrel"
+makedepends="dune ocaml"
+subpackages="$pkgname-dev"
+source="$_pkgname-$pkgver.tar.bz2::https://github.com/ncannasse/xml-light/releases/download/$pkgver/xml-light-$pkgver.tbz"
builddir="$srcdir/$_pkgname-$pkgver"
# 32-bit archs
@@ -20,30 +20,17 @@ case "$CARCH" in
esac
build() {
- make all
- make doc
- make opt
+ dune build --release --verbose
}
check() {
- ./test.exe <<EOF
-<abc><123/></abc>
-
-EOF
- ./test_opt.exe <<EOF
-<abc><123/></abc>
-
-EOF
+ dune runtest --build-dir=.testenv
}
package() {
- export DESTDIR="$pkgdir"
- export OCAMLFIND_DESTDIR="$DESTDIR/usr/lib/ocaml"
- mkdir -p "$OCAMLFIND_DESTDIR" "$OCAMLFIND_DESTDIR/stublibs"
- rm -f test.cmi
- make install_ocamlfind
- install -D -m644 README "$pkgdir/usr/share/licenses/$pkgname/README"
- install -D -m644 -t "$pkgdir/usr/share/doc/$pkgname/html/" doc/*
+ dune install \
+ --destdir="$pkgdir" \
+ --docdir=/.omit
}
dev() {
@@ -51,20 +38,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find usr/lib/ocaml \( \
+ local path; find usr/lib/ocaml \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
-029068c6eb48cd1223438dc0f86e1c5e6fd0412d160ea4d79928eec5e5f5843af46260d7240e4260851e9580e7f92d578c764c63c8e0acab348637455493ef02 ocaml-xml-light-2.4.tar.gz
-6fd6d9131cb652df96c7fd7b68e9161a6e9a0c08fedfd2e2ee00a474d3d249ce16d4a8631a02ca36e158d8c61ff8fb0fe440b5e620eb64f865b23dcfd433e476 Makefile-explicit-target-fix.patch
+fec6b83f8342a37bdad0fc745032f1faa57b359365ab53c2376fb031613a83a3139766f2d646a9b9b8d67da25252f2499a03de4caaef7bd8738f9b183ef84b6e xml-light-2.5.tar.bz2
"
diff --git a/testing/ocaml-xml-light/Makefile-explicit-target-fix.patch b/testing/ocaml-xml-light/Makefile-explicit-target-fix.patch
deleted file mode 100644
index ebf09faa041..00000000000
--- a/testing/ocaml-xml-light/Makefile-explicit-target-fix.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/Makefile
-+++ b/Makefile
-@@ -78,6 +78,8 @@
-
- xml.cmi:
-
-+xml_parser.mli:
-+
- xmlParser.cmi: dtd.cmi xml.cmi
-
- xml_lexer.cmi: dtd.cmi
diff --git a/testing/ocaml-xmlm/APKBUILD b/testing/ocaml-xmlm/APKBUILD
index c1bf8ac4feb..0399de29789 100644
--- a/testing/ocaml-xmlm/APKBUILD
+++ b/testing/ocaml-xmlm/APKBUILD
@@ -1,14 +1,13 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-xmlm
_pkgname=xmlm
pkgver=1.4.0
-pkgrel=0
+pkgrel=2
pkgdesc="Streaming XML codec for OCaml"
url="https://erratique.ch/software/xmlm"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="ISC"
-depends="ocaml-runtime"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="
ocaml
@@ -46,19 +45,37 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
sha512sums="
69f6112e6466952256d670fe1751fe4ae79e20d50f018ece1709eb2240cb1b00968ac7cee110771e0617a38ebc1cdb43e9d146471ce66ac1b176e4a1660531eb ocaml-xmlm-1.4.0.tar.bz2
diff --git a/testing/ocaml-yojson/APKBUILD b/testing/ocaml-yojson/APKBUILD
index 496e45ae595..c74cfa9ae02 100644
--- a/testing/ocaml-yojson/APKBUILD
+++ b/testing/ocaml-yojson/APKBUILD
@@ -2,17 +2,16 @@
# Maintainer: omni <omni+alpine@hack.org>
pkgname=ocaml-yojson
_pkgname=yojson
-pkgver=1.7.0
-pkgrel=1
+pkgver=2.1.2
+pkgrel=0
pkgdesc="JSON parsing and pretty-printing library for OCaml"
url="https://github.com/ocaml-community/yojson"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="BSD-3-Clause"
-depends="ocaml-runtime ocaml-biniou ocaml-easy-format"
-depends_dev="$pkgname=$pkgver-r$pkgrel ocaml-biniou-dev ocaml-easy-format-dev"
+depends_dev="$pkgname=$pkgver-r$pkgrel ocaml-seq-dev"
makedepends="$depends_dev dune ocaml ocaml-cppo ocaml-findlib"
subpackages="$pkgname-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/ocaml-community/yojson/archive/$pkgver.tar.gz"
+source="$_pkgname-$pkgver.tar.gz::https://github.com/ocaml-community/yojson/archive/$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
options="!check" # tests need alcotest library
@@ -23,7 +22,7 @@ esac
build() {
export OCAMLPATH=/usr/lib/ocaml
- dune build @install
+ dune build @install -p yojson
}
check() {
@@ -34,13 +33,16 @@ package() {
dune install \
--destdir="$pkgdir" \
--prefix=/usr \
- --libdir=/usr/lib/ocaml
+ --libdir=/usr/lib/ocaml \
+ yojson
+
+ cd "$pkgdir"
# There's just a readme and changelog.
- rm -Rf "$pkgdir"/usr/doc
+ rm -Rf usr/doc
# Don't package ydump tool for now.
- rm -Rf "$pkgdir"/usr/bin
+ rm -Rf usr/bin
}
dev() {
@@ -48,19 +50,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find usr/lib/ocaml \( \
+ local path; find usr/lib/ocaml \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
-25eedb64e4bf7c7e8d5a5a115812cd502540afbdeb7c947da3a14e5968aa0a7db8ab402425662571d8935b9cd6a19796ce81dd80a65dc614f156626c60e7036e ocaml-yojson-1.7.0.tar.gz
+52c3a479492c0adcd4783f5343d00b7ce76d303e08a458e59d9faf006ebaf782a03f77c1ba1d5b75f4e3da586073911d5fdd2b80dc7ce198c9a16d9b0a776e4f yojson-2.1.2.tar.gz
"
diff --git a/testing/ocaml-zarith/APKBUILD b/testing/ocaml-zarith/APKBUILD
index efa04978554..6b48859b8f8 100644
--- a/testing/ocaml-zarith/APKBUILD
+++ b/testing/ocaml-zarith/APKBUILD
@@ -2,20 +2,25 @@
# Maintainer: River Dillon <oss@outerpassage.net>
pkgname=ocaml-zarith
pkgver=1.12
-pkgrel=1
+pkgrel=5
pkgdesc="library implementing arithmetic and logical operations"
url="https://github.com/ocaml/Zarith"
-arch="all !riscv64" # limited by ocaml aport
-license="custom"
-depends="gmp-dev"
-makedepends="ocaml ocaml-findlib ocaml-compiler-libs ocaml-ocamldoc gmp-dev"
+arch="all !riscv64 !loongarch64" # ocaml
+license="LGPL-2.0-only WITH OCaml-LGPL-linking-exception"
+depends="gmp-dev" # zarith is not split into a -dev subpackage
+makedepends="
+ ocaml
+ ocaml-findlib
+ ocaml-compiler-libs
+ ocaml-ocamldoc
+ "
subpackages="$pkgname-doc"
source="$pkgname-$pkgver.tar.gz::https://github.com/ocaml/Zarith/archive/refs/tags/release-$pkgver.tar.gz"
builddir="$srcdir/Zarith-release-$pkgver"
# 32bit archs
case "$CARCH" in
-armv7|armhf|mips|x86) options="$options textrels" ;;
+armv7|armhf|x86) options="$options textrels" ;;
esac
build() {
@@ -29,10 +34,31 @@ check() {
}
package() {
- mkdir -p "$pkgdir"/usr/lib/ocaml
+ mkdir -p "$pkgdir"/usr/lib/ocaml "$pkgdir"/usr/lib/ocaml/stublibs
OCAMLFIND_LDCONF=ignore make install
- install -Dm644 README.md -t "$pkgdir"/usr/share/doc/"$pkgname"
- install -Dm644 LICENSE -t "$pkgdir"/usr/share/licenses/"$pkgname"
+ install -Dm644 README.md -t "$pkgdir"/usr/share/doc/$pkgname/
+ install -Dm644 LICENSE -t "$pkgdir"/usr/share/licenses/$pkgname/
+}
+
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
}
sha512sums="
diff --git a/testing/ocaml-zed/APKBUILD b/testing/ocaml-zed/APKBUILD
index ea6531453aa..70ca41ded48 100644
--- a/testing/ocaml-zed/APKBUILD
+++ b/testing/ocaml-zed/APKBUILD
@@ -1,19 +1,13 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-zed
_pkgname=zed
pkgver=3.1.0
-pkgrel=1
+pkgrel=3
pkgdesc="Abstract engine for text edition in OCaml"
url="https://github.com/ocaml-community/zed"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # ocaml
license="BSD-3-Clause"
-depends="
- ocaml-runtime
- ocaml-camomile
- ocaml-charinfo_width
- ocaml-react
- "
depends_dev="
$pkgname=$pkgver-r$pkgrel
ocaml-camomile-dev
@@ -50,19 +44,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
d4457af15f970adb7b1ed543017e590fa0ecc47171d6dd520a1397f21ce0219caa30a9db7bedb76c0602d4f6d0f0684012cc33feafe18b848d3261a460dea10a ocaml-zed-3.1.0.tar.gz
03655451e382d7539589ef80a97e1e16edb6f269bbf95b5997c334f08dad0332807588dc9cb5b1e4aebee64c88fcd8d1d5015bdec044093dff19bbffa84b3b53 use-built-in-result-lib.patch
diff --git a/testing/ocaml5/APKBUILD b/testing/ocaml5/APKBUILD
new file mode 100644
index 00000000000..822775727c0
--- /dev/null
+++ b/testing/ocaml5/APKBUILD
@@ -0,0 +1,114 @@
+# Contributor: Borys Zhukov <mp5@mp5.im>
+# Contributor: Jakub Jirutka <jakub@jirutka.cz>
+# Contributor: omni <omni+alpine@hack.org>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=ocaml5
+provides=ocaml
+pkgver=5.1.1
+pkgrel=0
+pkgdesc="Main implementation of the Caml programming language"
+url="https://ocaml.org/"
+# loongarch64: no upstream support
+arch="all !loongarch64"
+license="LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception"
+depends="$pkgname-runtime=$pkgver-r$pkgrel gcc"
+checkdepends="parallel"
+subpackages="
+ $pkgname-doc
+ $pkgname-ocamldoc
+ $pkgname-compiler-libs:_compiler_libs
+ $pkgname-runtime
+ "
+source="https://caml.inria.fr/pub/distrib/ocaml-${pkgver%.*}/ocaml-$pkgver.tar.xz"
+builddir="$srcdir/ocaml-$pkgver"
+
+# The s390x native compiler is newly added in 5.1.x and still needs some work
+case "$CARCH" in
+s390x)
+ options="$options textrels !check"
+ export LDFLAGS="$LDFLAGS -Wl,-z,notext"
+ ;;
+esac
+
+build() {
+ local _make _conf
+ case "$CARCH" in
+ # Current native compiler support in 5.1.x
+ # Disabling riscv64 here as it segfaults while building dynlink
+ aarch64|s390x|x86_64)
+ _make="world.opt"
+ _conf="--enable-native-compiler \
+ --enable-native-toplevel \
+ --disable-installing-bytecode-programs"
+ msg "Building native compiler for $CARCH"
+ ;;
+ *)
+ _make="world"
+ _conf="--disable-native-compiler \
+ --disable-native-toplevel \
+ --enable-installing-bytecode-programs"
+ msg "Building bytecode compiler for $CARCH"
+ ;;
+ esac
+
+ ./configure \
+ --prefix /usr \
+ --bindir /usr/bin \
+ --libdir /usr/lib/ocaml \
+ --mandir /usr/share/man \
+ --docdir /usr/share/doc/$pkgname \
+ --disable-installing-source-artifacts \
+ $_conf \
+ CC="${CC:-gcc}" \
+ AS="${CC:-gcc} -c" \
+ ASPP="${CC:-gcc} -c"
+ make $_make
+}
+
+check() {
+ make ocamltest
+ make -C testsuite parallel
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+ocamldoc() {
+ pkgdesc="$pkgdesc (documentation generator)"
+ depends="$pkgname=$pkgver-r$pkgrel"
+
+ amove usr/bin/ocamldoc*
+ amove usr/lib/ocaml/ocamldoc
+}
+
+_compiler_libs() {
+ pkgdesc="$pkgdesc (compiler libraries)"
+ depends="$pkgname=$pkgver-r$pkgrel"
+ provides="$pkgname-dev=$pkgver-r$pkgrel"
+
+ amove usr/lib/ocaml/compiler-libs
+}
+
+runtime() {
+ pkgdesc="$pkgdesc (runtime environment)"
+ depends=
+
+ amove usr/bin/ocamlrun*
+ amove usr/lib/ocaml/ld.conf
+
+ local i; for i in \
+ '*.cmo' \
+ '*.cmi' \
+ '*.cma' \
+ 'stublibs' \
+ 'threads/*.cmi' \
+ 'threads/*.cma'
+ do
+ amove "usr/lib/ocaml/$i"
+ done
+}
+
+sha512sums="
+e534881eec10b79141b6598ba6d3f59e32ed46a2c64b90c226bbec199c73cdb70e6e5bfa555c34c385d3d83c15e5115f0ea9a182fdda6547db7bbb416f8ed98f ocaml-5.1.1.tar.xz
+"
diff --git a/testing/ocamlclean/APKBUILD b/testing/ocamlclean/APKBUILD
deleted file mode 100644
index 8d6ee034f79..00000000000
--- a/testing/ocamlclean/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer:
-pkgname=ocamlclean
-pkgver=2.3
-pkgrel=0
-pkgdesc="OCaml Bytecode Cleaner"
-url="http://www.algo-prog.info/ocapic/web/index.php?id=OCAPIC:OCamlClean"
-arch="all !riscv64" # limited by ocaml aport
-license="CECILL-2.0"
-makedepends="bash ocaml ocamlbuild ocaml-obytelib"
-subpackages="$pkgname-doc"
-options="!check" # no test suite
-source="$pkgname-$pkgver.tar.gz::https://github.com/bvaugon/ocamlclean/archive/$pkgver.tar.gz
- obytelib-dir.patch
- "
-
-build() {
- ./configure \
- -prefix "$pkgdir"/usr \
- -mandir "$pkgdir"/usr/share/man
- make
-}
-
-package() {
- make install
-}
-
-sha512sums="
-f8cfd1f55daea5f11d2ab3507b141358f1fba9313ba18d71ebfb83eef8ded567a20bee8eb10577fec92ee8e5a2fed34581f7bf7e42c672553b86de733c473641 ocamlclean-2.3.tar.gz
-b6687df1d5a9b843b33344fa23c4ffd262f49b2e624c4ed3cd7448e57fa561ae1cd2c06580e96f1259bd240e3b95695d59868140c05537c5febd3c8b031563c3 obytelib-dir.patch
-"
diff --git a/testing/ocamlclean/obytelib-dir.patch b/testing/ocamlclean/obytelib-dir.patch
deleted file mode 100644
index 7f14154ab85..00000000000
--- a/testing/ocamlclean/obytelib-dir.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/src/Makefile
-+++ b/src/Makefile
-@@ -21,7 +21,7 @@
- cp $< $@
-
- _build/$(BUILD): $(SRCS) config.ml
-- $(OCAMLBUILD) -cflags -I,+../obytelib,-g -lflags -I,+../obytelib,obytelib.cmxa $(BUILD)
-+ $(OCAMLBUILD) -cflags -I,+obytelib,-g -lflags -I,+obytelib,obytelib.cmxa $(BUILD)
-
- config.ml: $(ETC)/config.ml
- cp $< $@
diff --git a/testing/ocamlnet/APKBUILD b/testing/ocamlnet/APKBUILD
index e568ba14e29..5df97c3fc4e 100644
--- a/testing/ocamlnet/APKBUILD
+++ b/testing/ocamlnet/APKBUILD
@@ -1,19 +1,17 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocamlnet
pkgver=4.1.9
-pkgrel=0
+pkgrel=2
pkgdesc="Network and system programming library for OCaml"
url="http://projects.camlcity.org/projects/ocamlnet.html"
-arch="all !riscv64" # restricted by ocaml
-license="zlib-acknowledgement, BSD-3-Clause and GPL-2.0-only"
-depends="ocaml-runtime"
+arch="all !riscv64 !loongarch64" # ocaml
+license="zlib-acknowledgement AND BSD-3-Clause AND GPL-2.0-only"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="
ocaml
ocaml-camlzip-dev
ocaml-compiler-libs
- ocaml-dev
ocaml-findlib
ocaml-pcre-dev
gnutls-dev
@@ -21,7 +19,7 @@ makedepends="
tcl-dev
"
subpackages="$pkgname-tcl $pkgname-dev"
-source="http://download.camlcity.org/download/ocamlnet-4.1.9.tar.gz
+source="http://download.camlcity.org/download/ocamlnet-$pkgver.tar.gz
fix-version-number.patch
"
@@ -68,19 +66,38 @@ dev() {
cd "$pkgdir"
- local path; for path in $(find usr/lib/ocaml \( \
+ local path; find usr/lib/ocaml \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
a251724deb35e756c81d2d3ac836d413b659acdce6c0acf479a4fca48934ab62ad399a884197d00dbb7e7558132a56be1c8efd553c0a644d329418272f809a46 ocamlnet-4.1.9.tar.gz
0fd0e8e51229a126ebf96fdac957d2ed69e8b3511b11b2d0a7b6d4a6f77018a4f79370f59f5ce460ad5847dc727cdddce96b2aa1da7180baff1245aee35939f4 fix-version-number.patch
diff --git a/testing/ocfs2-tools/APKBUILD b/testing/ocfs2-tools/APKBUILD
index b5a48ec4f40..579eedcf8c6 100644
--- a/testing/ocfs2-tools/APKBUILD
+++ b/testing/ocfs2-tools/APKBUILD
@@ -5,7 +5,7 @@
# TODO: Fix init script (remove bashisms)
pkgname=ocfs2-tools
pkgver=1.8.7
-pkgrel=0
+pkgrel=2
pkgdesc="Oracle Cluster File System 2 Core Tools"
url="https://oss.oracle.com/projects/ocfs2-tools"
arch="all"
@@ -20,7 +20,7 @@ source="ocfs2-tools-$pkgver.tar.gz::https://github.com/markfasheh/ocfs2-tools/ar
cluster.conf
musl-libocfs2-__bswap_constant_32.patch
musl-o2info-atimensec.patch
- musl-sys-raw.h.patch
+ new-linux.patch
fix-operations-include-ioctl.patch
fix-o2monitor-undeclared-PATH_MAX.patch
tunefs-remove-op_query.patch
@@ -70,7 +70,7 @@ e510f08a9adc2d7c07e7b8a4d2c503c5a130a156ab1bf1cf45d8480dd94490968f718e966d0bae09
f844e5389e0b42d6f91a1335bd2ef4d2666e5b883c999d05acd3bc63ad901bc5838aa4da35bb1d069463d7cc7dcfa277dbaa938b5953e8d420a37cfbb30f24f3 cluster.conf
87ea579ddb4a6ae34c5b815fe9015dc0168cb267312f9ef3dccfd16cd65a1f13ef1275dda72308d952ca844e42a486c891340210c4757866f2caacd0d6d3a916 musl-libocfs2-__bswap_constant_32.patch
d1eb24086f71f22e0333f4c246389ce82c9b4540bb0a2d091f6deee7f563c7e5457a838937cd07f1b90359e9c215639aebcbc54c551fb0e9e3617f29c03d49a1 musl-o2info-atimensec.patch
-b471c21f30f7ebba05ed8e4c63ff00b4ddad7e6095d256929472d61368dcb7566296201ad0af382a21f0a16c47f23cfa256ad91e6629f17595034e4807c96f3b musl-sys-raw.h.patch
+56fa3bdefca7fabec6db1ba24a5b6ee669008f05a953d88f1336a6a74e095235de350bc3adb810ec79d5e2c5045cec0db25ea4eb49e65ac31324dd7e4d770c32 new-linux.patch
41b5e0d2eae738a8e05b6377e6dd4fc79592c6fc7b62dbc1ea6d7bd1fdb80122bc2f915748e64e30c9e964a1ebc73a65d81b5409fd499a959b3015d8c0683ead fix-operations-include-ioctl.patch
35d5872e6a3651583442b3a333a2e866bf241b4fc19bdbabf4bb46cdbdb6b2806d81092b1fa80a9841a49e95a40d2bc09d12ad33e8cfbf3c267698eb9120b307 fix-o2monitor-undeclared-PATH_MAX.patch
c614235c98426a60d484203b47c44643833496de9864f2f6b1bedec206de33231878799d0b16ad2462c7ed2920cd0d8f9fd41fd7b1fff5b644e8be4b31ed815d tunefs-remove-op_query.patch
diff --git a/testing/ocfs2-tools/musl-sys-raw.h.patch b/testing/ocfs2-tools/musl-sys-raw.h.patch
deleted file mode 100644
index d29210d4338..00000000000
--- a/testing/ocfs2-tools/musl-sys-raw.h.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From: Jakub Jirutka <jakub@jirutka.cz>
-Date: Wed, 23 May 2018 21:18:00 +0200
-Subject: [PATCH] Replace include sys/raw.h with linux/raw.h
-
---- a/debugfs.ocfs2/include/main.h
-+++ b/debugfs.ocfs2/include/main.h
-@@ -45,7 +45,7 @@
- #include <arpa/inet.h>
- #include <netinet/in.h>
- #include <signal.h>
--#include <sys/raw.h>
-+#include <linux/raw.h>
- #include <linux/kdev_t.h>
- #include <inttypes.h>
- #include <utime.h>
---- a/fswreck/include/main.h
-+++ b/fswreck/include/main.h
-@@ -43,7 +43,7 @@
- #include <arpa/inet.h>
- #include <netinet/in.h>
- #include <signal.h>
--#include <sys/raw.h>
-+#include <linux/raw.h>
- #include <linux/kdev_t.h>
- #include <inttypes.h>
-
---- a/o2info/operations.c
-+++ b/o2info/operations.c
-@@ -22,7 +22,7 @@
- #define _GNU_SOURCE /* Because libc really doesn't want us using O_DIRECT? */
-
- #include <errno.h>
--#include <sys/raw.h>
-+#include <linux/raw.h>
- #include <inttypes.h>
-
- #include "ocfs2/ocfs2.h"
diff --git a/testing/ocfs2-tools/new-linux.patch b/testing/ocfs2-tools/new-linux.patch
new file mode 100644
index 00000000000..05de1c55f68
--- /dev/null
+++ b/testing/ocfs2-tools/new-linux.patch
@@ -0,0 +1,37 @@
+neither this nor linux/raw.h exists, but seem to not be needed
+diff --git a/debugfs.ocfs2/include/main.h b/debugfs.ocfs2/include/main.h
+index 89a55ca..dc726eb 100644
+--- a/debugfs.ocfs2/include/main.h
++++ b/debugfs.ocfs2/include/main.h
+@@ -45,7 +45,6 @@
+ #include <arpa/inet.h>
+ #include <netinet/in.h>
+ #include <signal.h>
+-#include <sys/raw.h>
+ #include <linux/kdev_t.h>
+ #include <inttypes.h>
+ #include <utime.h>
+diff --git a/fswreck/include/main.h b/fswreck/include/main.h
+index 03e1b3d..8260e75 100644
+--- a/fswreck/include/main.h
++++ b/fswreck/include/main.h
+@@ -43,7 +43,6 @@
+ #include <arpa/inet.h>
+ #include <netinet/in.h>
+ #include <signal.h>
+-#include <sys/raw.h>
+ #include <linux/kdev_t.h>
+ #include <inttypes.h>
+
+diff --git a/o2info/operations.c b/o2info/operations.c
+index 9c0ba30..b52b54e 100644
+--- a/o2info/operations.c
++++ b/o2info/operations.c
+@@ -22,7 +22,6 @@
+ #define _GNU_SOURCE /* Because libc really doesn't want us using O_DIRECT? */
+
+ #include <errno.h>
+-#include <sys/raw.h>
+ #include <inttypes.h>
+ #include <sys/ioctl.h>
+
diff --git a/testing/ocp-indent/APKBUILD b/testing/ocp-indent/APKBUILD
index aad8ecc4257..4316deb5e66 100644
--- a/testing/ocp-indent/APKBUILD
+++ b/testing/ocp-indent/APKBUILD
@@ -1,13 +1,12 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocp-indent
-pkgver=1.8.1
-pkgrel=0
+pkgver=1.8.2
+pkgrel=2
pkgdesc="OCaml source code indenter"
url="http://www.typerex.org/ocp-indent.html"
-arch="all !riscv64" # limited by ocaml aport
-license="LGPL-2.1-only-WITH-linking-exception"
-_depends_ocaml="ocaml-runtime ocaml-findlib"
+arch="all !riscv64 !loongarch64" # ocaml
+license="LGPL-2.1-only WITH OCaml-LGPL-linking-exception"
depends_dev="ocaml-cmdliner-dev ocaml-findlib-dev"
makedepends="$depends_dev dune ocaml"
subpackages="
@@ -59,14 +58,12 @@ _libdev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
@@ -75,11 +72,31 @@ _libdev() {
_lib() {
pkgdesc="$pkgdesc (library)"
- depends="$_depends_ocaml"
amove usr/lib/ocaml
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
-565353de333dd44375366fff75e85a6256c3cd9ff52b3db79803141f975e77cda04dfe32f5e0f2d4c82c59be8f04e9c2bf4d066b113b2cdf267f4c3dcfa401da ocp-indent-1.8.1.tar.gz
+c5f8b63d6d3baabbadffba159d485f54f6e903eaa59a58b6df509e12e679b5b63a1cf7734d336d6b3456ea6ac74e42c58889199f2a3ed584566589d0c9bbfef5 ocp-indent-1.8.2.tar.gz
"
diff --git a/testing/ocp-index/APKBUILD b/testing/ocp-index/APKBUILD
index c2aba2359f9..5f08f93f5d3 100644
--- a/testing/ocp-index/APKBUILD
+++ b/testing/ocp-index/APKBUILD
@@ -1,13 +1,12 @@
# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocp-index
-pkgver=1.3.3
+pkgver=1.3.6
pkgrel=0
pkgdesc="Lightweight completion and documentation browsing for OCaml libraries"
url="http://www.typerex.org/ocp-index.html"
-arch="all !riscv64" # limited by ocaml aport
-license="LGPL-2.1-only-WITH-linking-exception AND GPL-3.0-only"
-_depends_ocaml="ocaml-runtime ocaml-ocp-indent ocaml-re"
+arch="all !riscv64 !loongarch64" # ocaml
+license="LGPL-2.1-only WITH OCaml-LGPL-linking-exception AND GPL-3.0-only"
depends_dev="
ocaml-cmdliner-dev
ocaml-compiler-libs
@@ -35,7 +34,7 @@ build() {
}
check() {
- dune runtest -p ocp-index --verbose
+ dune runtest --build-dir=.testenv -p ocp-index
}
package() {
@@ -66,14 +65,12 @@ _libdev() {
cd "$pkgdir"
- local path; for path in $(find $_ocamldir \( \
+ local path; find $_ocamldir \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
@@ -82,11 +79,31 @@ _libdev() {
_lib() {
pkgdesc="$pkgdesc (library)"
- depends="$_depends_ocaml"
amove usr/lib/ocaml
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
-6360240c951ac64baf9b3736c9a37c41a5ac8c5ddf52e723019fb5ef294e786e245712fd88f408bd8f6881d8741ab152872181062acd81443eec07d1d703e85a ocp-index-1.3.3.tar.gz
+f8f97e846e37473a77636518ceefafa72a62f26ed9e7fc65ee4625498bcc1797187e895d903dfb2e874e93889956ee02b2e1f6f90c61717107db8e96d388d65a ocp-index-1.3.6.tar.gz
"
diff --git a/testing/octoprint-creality2xfix/APKBUILD b/testing/octoprint-creality2xfix/APKBUILD
new file mode 100644
index 00000000000..335ce48a7de
--- /dev/null
+++ b/testing/octoprint-creality2xfix/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: lauren n. liberda <lauren@selfisekai.rocks>
+# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
+pkgname=octoprint-creality2xfix
+pkgver=0.0.4
+pkgrel=1
+pkgdesc="Fixes the temperature reporting from the Creality Ender-3 v2 printer"
+url="https://github.com/SimplyPrint/OctoPrint-Creality2xTemperatureReportingFix"
+arch="noarch"
+license="MIT"
+depends="octoprint"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+options="!check" # no tests
+subpackages="$pkgname-pyc"
+source="https://github.com/SimplyPrint/OctoPrint-Creality2xTemperatureReportingFix/archive/refs/tags/$pkgver/OctoPrint-Creality2xTemperatureReportingFix-$pkgver.tar.gz"
+builddir="$srcdir/OctoPrint-Creality2xTemperatureReportingFix-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages testenv
+ testenv/bin/python3 -m installer .dist/*.whl
+ testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+7ef05e9e8cc4482f815ebbc5d58abb8569a5249ed38382838048ba72e7575aa47e84120bbb9d85ac06c2914702dabecb141e124fd50cf0bb805e2b5de790a35f OctoPrint-Creality2xTemperatureReportingFix-0.0.4.tar.gz
+"
diff --git a/testing/octoprint-filecheck/APKBUILD b/testing/octoprint-filecheck/APKBUILD
new file mode 100644
index 00000000000..8e53aee6cae
--- /dev/null
+++ b/testing/octoprint-filecheck/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: lauren n. liberda <lauren@selfisekai.rocks>
+# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
+pkgname=octoprint-filecheck
+pkgver=2024.3.27
+pkgrel=0
+pkgdesc="Checks for common issues in uploaded files"
+url="https://github.com/OctoPrint/OctoPrint-FileCheck"
+arch="noarch"
+license="AGPL-3.0-only"
+depends="octoprint"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+options="!check" # no tests
+subpackages="$pkgname-pyc"
+source="https://github.com/OctoPrint/OctoPrint-FileCheck/archive/refs/tags/$pkgver/OctoPrint-FileCheck-$pkgver.tar.gz"
+builddir="$srcdir/OctoPrint-FileCheck-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages testenv
+ testenv/bin/python3 -m installer .dist/*.whl
+ testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+5aa5709dabbd8ce7fee1867d6e140f2b2d6bbce15eacb0977d7044e788b9d5db358ea0d6e729c371772605fcf28902be65ffaab050670cbb5d9e9af3596ede17 OctoPrint-FileCheck-2024.3.27.tar.gz
+"
diff --git a/testing/octoprint-firmwarecheck/APKBUILD b/testing/octoprint-firmwarecheck/APKBUILD
new file mode 100644
index 00000000000..40e5d597c8f
--- /dev/null
+++ b/testing/octoprint-firmwarecheck/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: lauren n. liberda <lauren@selfisekai.rocks>
+# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
+pkgname=octoprint-firmwarecheck
+pkgver=2021.10.11
+pkgrel=1
+pkgdesc="Checks for unsafe or broken printer firmwares"
+url="https://github.com/OctoPrint/OctoPrint-FirmwareCheck"
+arch="noarch"
+license="AGPL-3.0-only"
+depends="octoprint"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+options="!check" # no tests
+subpackages="$pkgname-pyc"
+source="https://github.com/OctoPrint/OctoPrint-FirmwareCheck/archive/refs/tags/$pkgver/OctoPrint-FirmwareCheck-$pkgver.tar.gz"
+builddir="$srcdir/OctoPrint-FirmwareCheck-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages testenv
+ testenv/bin/python3 -m installer .dist/*.whl
+ testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+1916d1fb23869aec9eb8f7a837d9622e04fef551701874f5c82f4066bc1a9a6d46bead6cd0c7bd7c1a87bff30449be147534f9f3d94d21294c7f6d1ee8d9faf6 OctoPrint-FirmwareCheck-2021.10.11.tar.gz
+"
diff --git a/testing/octoprint-pisupport/APKBUILD b/testing/octoprint-pisupport/APKBUILD
new file mode 100644
index 00000000000..e7b72dd6b2b
--- /dev/null
+++ b/testing/octoprint-pisupport/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: lauren n. liberda <lauren@selfisekai.rocks>
+# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
+pkgname=octoprint-pisupport
+pkgver=2023.10.10
+pkgrel=0
+pkgdesc="OctoPrint plugin that provides additional information about your Pi in the UI"
+url="https://github.com/OctoPrint/OctoPrint-PiSupport"
+arch="noarch"
+license="AGPL-3.0-only"
+depends="octoprint"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+checkdepends="py3-ddt py3-pytest"
+subpackages="$pkgname-pyc"
+source="https://github.com/OctoPrint/OctoPrint-PiSupport/archive/refs/tags/$pkgver/OctoPrint-PiSupport-$pkgver.tar.gz"
+builddir="$srcdir/OctoPrint-PiSupport-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages testenv
+ testenv/bin/python3 -m installer .dist/*.whl
+ testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+ecc5f323efccfe3d7ebc2d57c47799bdac589fe2edbdceb4f162aa82453335b0a0a6d4e62bfb28f3b288b152a251c05b5f09559b43b43ba46ba1eb0935b2987f OctoPrint-PiSupport-2023.10.10.tar.gz
+"
diff --git a/testing/octoprint/APKBUILD b/testing/octoprint/APKBUILD
new file mode 100644
index 00000000000..66944a2e52f
--- /dev/null
+++ b/testing/octoprint/APKBUILD
@@ -0,0 +1,119 @@
+# Contributor: lauren n. liberda <lauren@selfisekai.rocks>
+# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
+pkgname=octoprint
+pkgver=1.9.3
+pkgrel=4
+pkgdesc="Snappy web interface for your 3D printer"
+url="https://octoprint.org/"
+arch="noarch"
+license="AGPL-3.0-only"
+depends="
+ py3-argon2-cffi
+ py3-babel
+ py3-blinker
+ py3-cachelib
+ py3-class-doc
+ py3-click
+ py3-colorlog
+ py3-emoji
+ py3-feedparser
+ py3-filetype
+ py3-flask
+ py3-flask-assets
+ py3-flask-babel
+ py3-flask-limiter
+ py3-flask-login
+ py3-frozendict
+ py3-future
+ py3-markdown
+ py3-netaddr
+ py3-netifaces
+ py3-passlib
+ py3-pathvalidate
+ py3-pkginfo
+ py3-psutil
+ py3-pydantic
+ py3-pylru
+ py3-pyserial
+ py3-regex
+ py3-requests
+ py3-sarge
+ py3-semantic-version
+ py3-sentry-sdk
+ py3-setuptools
+ py3-tornado
+ py3-unidecode
+ py3-watchdog
+ py3-websocket-client
+ py3-werkzeug
+ py3-wrapt
+ py3-yaml
+ py3-zeroconf
+ py3-zipstream-ng
+"
+makedepends="
+ py3-gpep517
+ py3-wheel
+ py3-python-versioneer
+ "
+checkdepends="
+ py3-ddt
+ py3-pytest
+ "
+pkgusers="octoprint"
+pkggroups="octoprint"
+install="$pkgname.pre-install"
+subpackages="
+ $pkgname-openrc
+ $pkgname-pyc
+ "
+# upstream produces volatile tarballs: https://github.com/OctoPrint/OctoPrint/issues/4908
+# https://github.com/OctoPrint/OctoPrint/archive/refs/tags/$pkgver/OctoPrint-$pkgver.tar.gz
+source="
+ https://dev.alpinelinux.org/archive/octoprint/OctoPrint-$pkgver.tar.gz
+
+ config.yaml
+ octoprint.initd
+
+ fix-tests.patch
+ netaddr-0.10.patch
+ pydantic-2.0.patch
+ py3.12-typeparams.patch
+ "
+builddir="$srcdir/OctoPrint-$pkgver"
+
+prepare() {
+ default_prepare
+ rm versioneer.py
+}
+
+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 -k 'not pip'
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+
+ install -Dm640 -o octoprint -g octoprint "$srcdir"/config.yaml "$pkgdir"/etc/octoprint/config.yaml
+ install -Dm755 "$srcdir"/octoprint.initd "$pkgdir"/etc/init.d/octoprint
+ install -d -o octoprint -g octoprint "$pkgdir"/var/log/octoprint/ "$pkgdir"/var/lib/octoprint/
+}
+
+sha512sums="
+ec2cc8e73c3ff4855c3e389259d87d196aadf4a55f35ccef87b1ef59a0d832a29c52c4ab28db833b5ec275c5270fefb35e4c4769d692e004828b58aa6241c044 OctoPrint-1.9.3.tar.gz
+b56a37d1225d37caff1288b9c943ee86ed1f36653bbb311c835031e53e5f68e95be3ad9b53d333aad65508ba2a3ba786f80601bd74fef8efb1c3364a8fd85010 config.yaml
+3edd9971cc59fb66126f063ecac50a77792c5a3f5b718e03b7cbff74ff9f842c7784e7de2a56fb2e847a2bcb8e1c4fcfc52f8d236cdf3ecd511b230eea001162 octoprint.initd
+d678b87aaee4529b4d96f496862e5bec86df98491330328848ac06fec8d1f4571cfac995b2e9de26dcd2efc43b9dc24578d7f50cae1893fefc76470aee074f14 fix-tests.patch
+f99c752dccdee4821a88ac6e7ea98ac906002d734d2672bbd513b30d596b0c54b699071679581cdc46bfcd0eb98d6d032243a6d940f64620a69623a65db229bf netaddr-0.10.patch
+ed0bebc3632519b0adab58f6ef4666e0192ab72021f2c127146eec9c566551f04c49f05ace5a4056177f21605064146ac6259a88db15faaf88853fd3750abe88 pydantic-2.0.patch
+6845a07fbe7776b7f29a2d2a532fe5f230d40ab74705aa6dff50b777e2ac603fd88e1f5434323285895e2a8705f54c8a2970228ee1309a746e7a921229e8de4b py3.12-typeparams.patch
+"
diff --git a/testing/octoprint/config.yaml b/testing/octoprint/config.yaml
new file mode 100644
index 00000000000..e3617db687f
--- /dev/null
+++ b/testing/octoprint/config.yaml
@@ -0,0 +1,153 @@
+# this is just some subset of the config. comments WILL disappear, octoprint edits this file.
+# for full reference, see:
+# https://docs.octoprint.org/en/master/configuration/config_yaml.html
+
+access_control:
+ # The YAML user file to use. If left out defaults to users.yaml in the default configuration folder.
+ userfile: /etc/octoprint/users.yaml
+
+ # If set to true, will automatically log on clients originating from any of the networks defined in
+ # "localNetworks" as the user defined in "autologinAs". Defaults to false.
+ #autologinLocal: false
+
+ # The name of the user to automatically log on clients originating from "localNetworks" as. Must
+ # be the name of one of your configured users.
+ #autologinAs: someUser
+
+ # A list of networks or IPs for which an automatic logon as the user defined in "autologinAs" will
+ # take place. If available OctoPrint will evaluate the "X-Forwarded-For" HTTP header for determining
+ # the client's IP address (see https://code.google.com/p/haproxy-docs/wiki/forwardfor on how to
+ # configure the sending of this header in HAProxy). Defaults to 127.0.0.0/8 (so basically anything
+ # originating from localhost).
+ #localNetworks:
+ #- 127.0.0.0/8
+ #- 192.168.1.0/24
+
+ # Whether to trust Basic Authentication headers. If you have setup Basic Authentication in front of
+ # OctoPrint and the user names you use there match OctoPrint accounts, by setting this to true users will
+ # be logged into OctoPrint as the user user during Basic Authentication. Your should ONLY ENABLE THIS if your
+ # OctoPrint instance is only accessible through a connection locked down through Basic Authentication!
+ #trustBasicAuthentication: false
+
+ # Whether to also check the password provided through Basic Authentication if the Basic Authentication
+ # header is to be trusted. Disabling this will only match the user name in the Basic Authentication
+ # header and login the user without further checks. Use with caution.
+ #checkBasicAuthenticationPassword: true
+
+ # Whether to trust remote user headers. If you have setup authentication in front of
+ # OctoPrint and the user names you use there match OctoPrint accounts, by setting this to true users will
+ # be logged into OctoPrint as the user provided in the header. Your should ONLY ENABLE THIS if your
+ # OctoPrint instance is only accessible through a connection locked down through an authenticating reverse proxy!
+ #trustRemoteUser: false
+
+ # Header used by the reverse proxy to convey the authenticated user.
+ #remoteUserHeader: REMOTE_USER
+
+ # If a remote user is not found, add them. Use this only if all users from the remote system can use OctoPrint.
+ #addRemoteUsers: false
+
+
+api:
+ # Whether to enable the API
+ #enabled: True
+
+ # Current API key needed for accessing the API
+ #key: ...
+
+ # Whether to allow cross origin access to the API or not
+ #allowCrossOrigin: false
+
+
+folder:
+ # Absolute path where to store gcode uploads. Defaults to the uploads folder in the OctoPrint settings folder
+ uploads: /var/lib/octoprint/uploads
+
+ # Absolute path where to store finished timelapse recordings. Defaults to the timelapse folder in the OctoPrint
+ # settings dir
+ timelapse: /var/lib/octoprint/timelapse
+
+ # Absolute path where to store temporary timelapse files. Defaults to the timelapse/tmp folder in the OctoPrint
+ # settings dir
+ timelapse_tmp: /var/lib/octoprint/timelapse_tmp
+
+ # Absolute path where to store log files. Defaults to the logs folder in the OctoPrint settings dir
+ logs: /var/log/octoprint
+
+ # Absolute path to the virtual printer's simulated SD card. Only useful for development, just ignore
+ # it otherwise
+ virtualSd: /var/lib/octoprint/virtualSd
+
+ # Absolute path to a folder being watched for new files which then get automatically
+ # added to OctoPrint (and deleted from that folder). Can e.g. be used to define a folder which
+ # can then be mounted from remote machines and used as local folder for quickly adding downloaded
+ # and/or sliced objects to print in the future.
+ watched: /run/octoprint/watched
+
+ # Absolute path to a folder where manually installed plugins may reside
+ plugins: /var/lib/octoprint/plugins
+
+ # Absolute path where to store slicing profiles
+ slicingProfiles: /etc/octoprint/slicingProfiles
+
+ # Absolute path where to store printer profiles
+ printerProfiles: /etc/octoprint/printerProfiles
+
+ # Absolute path where to store (GCODE) scripts
+ scripts: /var/lib/octoprint/scripts
+
+
+server:
+ # Use this option to define the host to which to bind the server, defaults to "0.0.0.0" (= all
+ # interfaces)
+ host: 0.0.0.0
+
+ # Use this option to define the port to which to bind the server, defaults to 5000
+ port: 5000
+
+ # If this option is true, OctoPrint will show the First Run wizard and set the setting to
+ # false after that completes
+ firstRun: true
+
+ # Settings if OctoPrint is running behind a reverse proxy (haproxy, nginx, apache, ...).
+ # These are necessary in order to make OctoPrint generate correct external URLs so
+ # that AJAX requests and download URLs work, and so that client IPs are read correctly.
+ reverseProxy:
+
+ # The request header from which to determine the URL prefix under which OctoPrint
+ # is served by the reverse proxy
+ #prefixHeader: X-Script-Name
+
+ # The request header from which to determine the scheme (http or https) under which
+ # a specific request to OctoPrint was made to the reverse proxy
+ #schemeHeader: X-Scheme
+
+ # The request header from which to determine the host under which OctoPrint
+ # is served by the reverse proxy
+ #hostHeader: X-Forwarded-Host
+
+ # Use this option to define an optional URL prefix (with a leading /, so absolute to your
+ # server's root) under which to run OctoPrint. This should only be needed if you want to run
+ # OctoPrint behind a reverse proxy under a different root endpoint than `/` and can't configure
+ # said reverse proxy to send a prefix HTTP header (X-Script-Name by default, see above) with
+ # forwarded requests.
+ #prefixFallback: ""
+
+ # Use this option to define an optional forced scheme (http or https) under which to run
+ # OctoPrint. This should only be needed if you want to run OctoPrint behind a reverse
+ # proxy that also does HTTPS determination but can't configure said reverse proxy to
+ # send a scheme HTTP header (X-Scheme by default, see above) with forwarded requests.
+ #schemeFallback: ""
+
+ # Use this option to define an optional forced host under which to run OctoPrint. This should
+ # only be needed if you want to run OctoPrint behind a reverse proxy with a different hostname
+ # than OctoPrint itself but can't configure said reverse proxy to send a host HTTP header
+ # (X-Forwarded-Host by default, see above) with forwarded requests.
+ #hostFallback: ""
+
+ # List of trusted downstream servers for which to ignore the IP address when trying to determine
+ # the connecting client's IP address. If you have OctoPrint behind more than one reverse proxy
+ # you should add their IPs here so that they won't be interpreted as the client's IP. One reverse
+ # proxy will be handled correctly by default.
+ #trustedDownstream:
+ #- 192.168.1.254
+ #- 192.168.23.42
diff --git a/testing/octoprint/fix-tests.patch b/testing/octoprint/fix-tests.patch
new file mode 100644
index 00000000000..9a52286c1e7
--- /dev/null
+++ b/testing/octoprint/fix-tests.patch
@@ -0,0 +1,9 @@
+--- ./pytest.ini.orig
++++ ./pytest.ini
+@@ -1,5 +1,3 @@
+ [pytest]
+ testpaths = src tests
+-addopts = --doctest-modules
+- --doctest-repr=octoprint.util:pp
+- --ignore=src/octoprint/vendor
++addopts = --ignore=src/octoprint/vendor
diff --git a/testing/octoprint/netaddr-0.10.patch b/testing/octoprint/netaddr-0.10.patch
new file mode 100644
index 00000000000..54f71330b03
--- /dev/null
+++ b/testing/octoprint/netaddr-0.10.patch
@@ -0,0 +1,33 @@
+From 519b66c312e903c8485470a2792bbfaa5dc5e10a Mon Sep 17 00:00:00 2001
+From: "lauren n. liberda" <lauren@selfisekai.rocks>
+Date: Thu, 15 Feb 2024 03:18:46 +0100
+Subject: [PATCH] upgrade netaddr to 0.10.x
+
+---
+ AUTHORS.md | 1 +
+ setup.py | 2 +-
+ src/octoprint/util/net.py | 7 ++++---
+ 3 files changed, 6 insertions(+), 4 deletions(-)
+
+diff --git a/src/octoprint/util/net.py b/src/octoprint/util/net.py
+index e3fc10d5f7..4207a212e7 100644
+--- a/src/octoprint/util/net.py
++++ b/src/octoprint/util/net.py
+@@ -102,13 +102,14 @@ def to_ipnetwork(address):
+ )
+ )
+
+- subnets += list(netaddr.ip.IPV4_PRIVATE) + [
++ subnets += list(netaddr.ip.IPV4_PRIVATE_USE) + [
+ netaddr.ip.IPV4_LOOPBACK,
+ netaddr.ip.IPV4_LINK_LOCAL,
+ ]
+ if HAS_V6:
+- subnets += list(netaddr.ip.IPV6_PRIVATE) + [
+- netaddr.IPNetwork(netaddr.ip.IPV6_LOOPBACK),
++ subnets += [
++ netaddr.ip.IPV6_UNIQUE_LOCAL,
++ netaddr.ip.IPV6_LOOPBACK,
+ netaddr.ip.IPV6_LINK_LOCAL,
+ ]
+
diff --git a/testing/octoprint/octoprint.initd b/testing/octoprint/octoprint.initd
new file mode 100644
index 00000000000..691c0fa5760
--- /dev/null
+++ b/testing/octoprint/octoprint.initd
@@ -0,0 +1,24 @@
+#!/sbin/openrc-run
+
+supervisor=supervise-daemon
+
+command="/usr/bin/octoprint"
+command_args="serve --basedir /etc/octoprint"
+command_user="octoprint:octoprint"
+directory="/var/lib/octoprint"
+
+depend() {
+ need net
+ after firewall
+}
+
+start_pre() {
+ checkpath -d -m 755 -o "octoprint:octoprint" /etc/octoprint
+ checkpath -d -m 755 -o "octoprint:octoprint" /run/octoprint
+ checkpath -d -m 755 -o "octoprint:octoprint" /run/octoprint/watched
+ checkpath -d -m 755 -o "octoprint:octoprint" /var/lib/octoprint
+ checkpath -d -m 755 -o "octoprint:octoprint" /var/log/octoprint
+
+ # contains secrets for api, cookies
+ checkpath -f -m 640 -o "octoprint:octoprint" /etc/octoprint/config.yaml
+}
diff --git a/testing/octoprint/octoprint.pre-install b/testing/octoprint/octoprint.pre-install
new file mode 100644
index 00000000000..0bbbbd37d8e
--- /dev/null
+++ b/testing/octoprint/octoprint.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S octoprint 2>/dev/null
+adduser -S -D -H -h /var/lib/octoprint -s /sbin/nologin -G octoprint -g octoprint octoprint 2>/dev/null
+
+exit 0
diff --git a/testing/octoprint/py3.12-typeparams.patch b/testing/octoprint/py3.12-typeparams.patch
new file mode 100644
index 00000000000..f1f7d6ceb2c
--- /dev/null
+++ b/testing/octoprint/py3.12-typeparams.patch
@@ -0,0 +1,49 @@
+From 0718dfb68eaae5d9547690458c6f33b3243d9d44 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Gina=20H=C3=A4u=C3=9Fge?= <gina@octoprint.org>
+Date: Wed, 4 Oct 2023 13:35:56 +0200
+Subject: [PATCH] =?UTF-8?q?=F0=9F=92=9A=20Fix=203.12=20unit=20tests?=
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+---
+ src/octoprint/plugin/core.py | 5 ++++-
+ tests/plugin/test_settings.py | 2 ++
+ 2 files changed, 6 insertions(+), 1 deletion(-)
+
+diff --git a/src/octoprint/plugin/core.py b/src/octoprint/plugin/core.py
+index 297386e4a9..b793f401d0 100644
+--- a/src/octoprint/plugin/core.py
++++ b/src/octoprint/plugin/core.py
+@@ -115,7 +115,10 @@ def extract_names(node):
+ for a in reversed(assignments):
+ targets = extract_target_ids(a)
+ if key in targets:
+- if isinstance(a.value, ast.Str):
++ if isinstance(a.value, ast.Constant):
++ result[key] = a.value.value
++
++ elif isinstance(a.value, ast.Str):
+ result[key] = a.value.s
+
+ elif (
+diff --git a/tests/plugin/test_settings.py b/tests/plugin/test_settings.py
+index 6d5a3d4281..36f52182d1 100644
+--- a/tests/plugin/test_settings.py
++++ b/tests/plugin/test_settings.py
+@@ -111,6 +111,7 @@ def test_deprecated_forwarded_getter(
+ called_method.__name__ = forwarded
+ called_method.__qualname__ = forwarded
+ called_method.__annotations__ = {}
++ called_method.__type_params__ = ()
+
+ method = getattr(plugin_settings, deprecated)
+ assert callable(method)
+@@ -330,6 +331,7 @@ def test_deprecated_forwarded_setter(
+ called_method.__name__ = forwarded
+ called_method.__qualname__ = forwarded
+ called_method.__annotations__ = {}
++ called_method.__type_params__ = ()
+
+ method = getattr(plugin_settings, deprecated)
+ assert callable(method)
diff --git a/testing/octoprint/pydantic-2.0.patch b/testing/octoprint/pydantic-2.0.patch
new file mode 100644
index 00000000000..1fc21eee45c
--- /dev/null
+++ b/testing/octoprint/pydantic-2.0.patch
@@ -0,0 +1,28 @@
+--- ./src/octoprint/vendor/with_attrs_docs.py.orig
++++ ./src/octoprint/vendor/with_attrs_docs.py
+@@ -4,7 +4,6 @@
+
+ from typing import Type
+
+-from class_doc import extract_docs_from_cls_obj
+ from pydantic import BaseModel
+
+
+@@ -17,16 +16,7 @@
+ :param model: any pydantic model
+ :param override_existing: override existing descriptions
+ """
+- docs = extract_docs_from_cls_obj(model)
+-
+- for field in model.__fields__.values():
+- if field.field_info.description and not override_existing:
+- continue
+-
+- try:
+- field.field_info.description = '\n'.join(docs[field.name])
+- except KeyError:
+- pass
++ pass
+
+
+ def with_attrs_docs(
diff --git a/testing/odyssey/APKBUILD b/testing/odyssey/APKBUILD
index 34c3873773a..7ca28068ef3 100644
--- a/testing/odyssey/APKBUILD
+++ b/testing/odyssey/APKBUILD
@@ -1,16 +1,24 @@
# Contributor: Michael Pirogov <vbnet.ru@gmail.com>
# Maintainer: Michael Pirogov <vbnet.ru@gmail.com>
pkgname=odyssey
-pkgver=1.1
-pkgrel=1
+pkgver=1.3
+pkgrel=2
pkgdesc="Scalable PostgreSQL connection pooler"
url="https://github.com/yandex/odyssey"
arch="x86_64 x86" # limited by machinarium supported architecture
license="BSD-3-Clause"
-makedepends="cmake postgresql-dev openssl1.1-compat-dev linux-pam-dev"
+makedepends="
+ argp-standalone
+ cmake
+ linux-pam-dev
+ openssl-dev
+ postgresql-dev
+ "
options="!check" # https://github.com/yandex/odyssey/issues/134
subpackages="$pkgname-openrc"
-source="$pkgname-$pkgver-$pkgrel.tar.gz::https://github.com/yandex/odyssey/archive/$pkgver.tar.gz
+source="$pkgname-$pkgver.tar.gz::https://github.com/yandex/odyssey/archive/$pkgver.tar.gz
+ argp.patch
+ types.patch
odyssey.initd
odyssey.confd"
@@ -18,14 +26,13 @@ build() {
if [ "$CBUILD" != "$CHOST" ]; then
CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
fi
+ export CXXFLAGS="$CXXFLAGS -I$(pg_config --includedir)/server)"
cmake -B build \
- -DPOSTGRESQL_INCLUDE_DIR="$(pg_config --includedir)/server" \
-DCMAKE_INSTALL_PREFIX=/usr \
-DBUILD_SHARED_LIBS=True \
-DCMAKE_BUILD_TYPE=None \
- -DCMAKE_C_FLAGS="$CFLAGS" \
- $CMAKE_CROSSOPTS .
- make -C build
+ $CMAKE_CROSSOPTS
+ cmake --build build
}
check() {
@@ -45,6 +52,10 @@ package() {
}
-sha512sums="640eb0c68c274ad2b58edf854ae969e47b83376303c39a61cb8752598feb1afe612e62e41a373fa2630dea2f2b1682b2427058501b2db1b4f5b5eb1d9cc03090 odyssey-1.1-1.tar.gz
+sha512sums="
+d78fd48439074fe75b800051d69ed611efdafdceff339a9fbae5bb4c961c1f934c4c6e6e10c0350ad240977d8ad655586e55c7f7153528abebb7175a62fe68e6 odyssey-1.3.tar.gz
+8b3c6ca3490cf96d3578161fb7ed35fc3fbb56bed8d71dcdf4cbdce284cd352b14fc0ad6c309e087b198c4fdab3859d274825a0f77f4282b27bfd7df7077f52d argp.patch
+d938644040a555349a50f8b9cbe7b111c105f8a3d96609152aeb86880c7c6529f0a05202358bce7674ce2244d8657ae0e1781a7386e94ed124e5b975e29d987d types.patch
a1f129b06476c103465e9e649e88e1d5da071a377453e7a5b6dce4734928e8a5eb1c29b4a026d38b81587e6ca813ac3f533c668a264ae4ae7997716c2ec85715 odyssey.initd
-1e9fdd3cc7cf0d789b2ea57b275cca6de171d3adc887f1cddfb5a0b273988a514db133e58403fd5a01ec0511446b8746c6a78137df1d5141c7499065e9bd745a odyssey.confd"
+1e9fdd3cc7cf0d789b2ea57b275cca6de171d3adc887f1cddfb5a0b273988a514db133e58403fd5a01ec0511446b8746c6a78137df1d5141c7499065e9bd745a odyssey.confd
+"
diff --git a/testing/odyssey/argp.patch b/testing/odyssey/argp.patch
new file mode 100644
index 00000000000..5efbc3b08db
--- /dev/null
+++ b/testing/odyssey/argp.patch
@@ -0,0 +1,13 @@
+diff --git a/sources/CMakeLists.txt b/sources/CMakeLists.txt
+index 81f91a9..602d327 100644
+--- a/sources/CMakeLists.txt
++++ b/sources/CMakeLists.txt
+@@ -77,7 +77,7 @@ if(THREADS_HAVE_PTHREAD_ARG)
+ set_property(TARGET ${od_binary} PROPERTY INTERFACE_COMPILE_OPTIONS "-pthread")
+ endif()
+
+-target_link_libraries(${od_binary} ${od_libraries} ${CMAKE_THREAD_LIBS_INIT} m)
++target_link_libraries(${od_binary} ${od_libraries} ${CMAKE_THREAD_LIBS_INIT} m argp)
+
+ if (BUILD_COMPRESSION)
+ target_link_libraries(${od_binary} ${compression_libraries})
diff --git a/testing/odyssey/types.patch b/testing/odyssey/types.patch
new file mode 100644
index 00000000000..8e4dd145d50
--- /dev/null
+++ b/testing/odyssey/types.patch
@@ -0,0 +1,12 @@
+diff --git a/third_party/machinarium/sources/zpq_stream.h b/third_party/machinarium/sources/zpq_stream.h
+index 70ef5e2..f86b3d2 100644
+--- a/third_party/machinarium/sources/zpq_stream.h
++++ b/third_party/machinarium/sources/zpq_stream.h
+@@ -9,6 +9,7 @@
+ #define MM_ZPQ_STREAM_H
+
+ #include <stdlib.h>
++#include <sys/types.h>
+
+ #define MM_ZPQ_IO_ERROR (-1)
+ #define MM_ZPQ_DECOMPRESS_ERROR (-2)
diff --git a/testing/oed/APKBUILD b/testing/oed/APKBUILD
deleted file mode 100644
index 280cb35a2c1..00000000000
--- a/testing/oed/APKBUILD
+++ /dev/null
@@ -1,29 +0,0 @@
-# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
-# Maintainer:
-pkgname=oed
-pkgver=6.7
-pkgrel=0
-pkgdesc="Portable version of the OpenBSD ed text editor"
-url="https://github.com/ibara/oed"
-arch="all"
-license="BSD-2-Clause AND ISC"
-subpackages="$pkgname-doc"
-options="!check" # no test suite
-source="https://github.com/ibara/oed/releases/download/oed-$pkgver/oed-$pkgver.tar.gz"
-builddir="$srcdir/oed-$pkgver"
-
-build() {
- ./configure \
- --prefix=/usr \
- --mandir=/usr/share/man \
- --program-name=$pkgname
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-1fcd33c0d84646d4a0d6a47cdf47536bd4d920d49d5294ad598f6aee6c48c344bbe263636ce7561a2c295429f59514940bec7050b50dfe7e2b89ef3b4ef2e777 oed-6.7.tar.gz
-"
diff --git a/testing/oh-my-zsh/APKBUILD b/testing/oh-my-zsh/APKBUILD
index 96629bca0e4..05d60a51840 100644
--- a/testing/oh-my-zsh/APKBUILD
+++ b/testing/oh-my-zsh/APKBUILD
@@ -2,9 +2,8 @@
# Maintainer: Jacek Pruciak <alpine@juniorjpdj.pl>
pkgname=oh-my-zsh
pkgver=0_git20220104
-pkgrel=0
-pkgdesc="A delightful community-driven framework for managing your zsh \
-configuration that includes plugins and themes."
+pkgrel=1
+pkgdesc="A delightful community-driven framework for managing your zsh configuration that includes plugins and themes"
url="https://ohmyz.sh/"
arch="noarch"
license="MIT"
diff --git a/testing/oil/APKBUILD b/testing/oil/APKBUILD
index 32d894889b1..c8bfc944917 100644
--- a/testing/oil/APKBUILD
+++ b/testing/oil/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Miles Alan <m@milesalan.com>
# Contributor: Miles Alan <m@milesalan.com>
pkgname=oil
-pkgver=0.9.9
+pkgver=0.21.0
pkgrel=0
pkgdesc="Oil is a new POSIX & bash compatible shell"
url="https://www.oilshell.org"
@@ -15,7 +15,10 @@ subpackages="$pkgname-doc"
source="https://www.oilshell.org/download/oil-$pkgver.tar.gz"
build() {
- ./configure --prefix /usr --with-readline # not a gnu-autoconf script
+ # not gnu autoconf
+ ./configure \
+ --prefix /usr \
+ --datarootdir /usr/share
make
}
@@ -25,5 +28,5 @@ package() {
}
sha512sums="
-b44359b17d82b1f3a6ecb35fe42541ca55cf068f6b35ef76aac65f602d0a15505e376ee4ac57e67fc748f08fb3b3bc732fa838519a1959c541882ff7e67387db oil-0.9.9.tar.gz
+6226fba20a7dd53344d4cd710bb5b4ffe65a9cf5413bff965e99af01c161f555c556296aebe2b842376e825c96a0dfc538964d3d1c904e61cab26bb1850ddfdc oil-0.21.0.tar.gz
"
diff --git a/testing/ol/APKBUILD b/testing/ol/APKBUILD
new file mode 100644
index 00000000000..6cd74abb6df
--- /dev/null
+++ b/testing/ol/APKBUILD
@@ -0,0 +1,35 @@
+# Contributor: Yuriy Chumak <yuriy.chumak@mail.com>
+# Maintainer: Yuriy Chumak <yuriy.chumak@mail.com>
+pkgname=ol
+pkgver=2.4
+pkgrel=0
+pkgdesc="Purely functional dialect of Lisp"
+url="https://yuriy-chumak.github.io/ol/"
+arch="all"
+license="LGPL-3.0-or-later OR MIT"
+makedepends="xxd"
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/yuriy-chumak/ol/archive/refs/tags/$pkgver.tar.gz
+ GNUmakefile.patch
+ tests-Makefile.patch
+ memfd_create.patch
+ "
+
+build() {
+ make HAS_SECCOMP=0
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+c280da70f04637e1c822ab5a4b6eda3a1e1602b4c1fbd59731be2619fb09b0acb079841ba142f9b7b80cbf7539b1c7bd15603311b2ae4a30636f174a1ba2499b ol-2.4.tar.gz
+07db7f6bc4a0a039865bb59fa09b0a10e6d0f0d644ab846435fb5fd6fe6e84a11e8c2736ea41b81b31445a57c45f1e0d7573132dd69c1beb5e144a1ee90ac995 GNUmakefile.patch
+fa5bdc23dda4139f04597e1d2f41ce99007378b457ddfd36b0ab5a1f932d5147c88b123fee6aececc7cec632eca2e54c514a097f3dffda5d156b1d57882742c7 tests-Makefile.patch
+da7466825b62cc8d918de012cecee85b6c54d66c3e051bacc3210f6b2459c6ffc6325be52257baf189aed1ab73f42c1661aa6e18508e4aeef2c4d5a7faa93705 memfd_create.patch
+"
diff --git a/testing/ol/GNUmakefile.patch b/testing/ol/GNUmakefile.patch
new file mode 100644
index 00000000000..6f0997ae6a7
--- /dev/null
+++ b/testing/ol/GNUmakefile.patch
@@ -0,0 +1,21 @@
+diff --git a/GNUmakefile b/GNUmakefile
+index 16403d50..42533737 100644
+--- a/GNUmakefile
++++ b/GNUmakefile
+@@ -57,9 +58,13 @@ CFLAGS_DEBUG := -O0 -g2 -Wall
+ CFLAGS_RELEASE := $(if $(RPM_OPT_FLAGS), $(RPM_OPT_FLAGS), -O2 -DNDEBUG)
+ CFLAGS_RELEASE += -DCAR_CHECK=0 -DCDR_CHECK=0
+
+-CFLAGS += -DHAS_SOCKETS=$(if $(HAS_SOCKETS),1,0)
+-CFLAGS += -DHAS_DLOPEN=$(if $(HAS_DLOPEN),1,0)
+-CFLAGS += -DHAS_SANDBOX=$(if $(HAS_SECCOMP),1,0)
++CFLAGS += -DHAS_SOCKETS=$(if $(HAS_SOCKETS),$(HAS_SOCKETS),0)
++CFLAGS += -DHAS_DLOPEN=$(if $(HAS_DLOPEN),$(HAS_DLOPEN),0)
++CFLAGS += -DHAS_SANDBOX=$(if $(HAS_SECCOMP),$(HAS_SECCOMP),0)
++
++ifneq ($(HAS_MEMFD_CREATE),)
++CFLAGS += -DHAS_MEMFD_CREATE=$(HAS_MEMFD_CREATE)
++endif
+
+ VERSION ?= $(shell echo `git describe --tags \`git rev-list --tags --max-count=1\``-`git rev-list HEAD --count`-`git log --pretty=format:'%h' -n 1`)
+
diff --git a/testing/ol/memfd_create.patch b/testing/ol/memfd_create.patch
new file mode 100644
index 00000000000..a3ec7b65c33
--- /dev/null
+++ b/testing/ol/memfd_create.patch
@@ -0,0 +1,107 @@
+diff --git a/configure.mk b/configure.mk
+index f784608f..bd8d8596 100644
+--- a/configure.mk
++++ b/configure.mk
+@@ -52,6 +52,8 @@ HAS_DLOPEN ?= $(call exists,,stdlib.h, dlopen, -ldl)
+ HAS_SECCOMP ?= $(call exists,,linux/seccomp.h, prctl)
+ HAS_SOCKETS ?= $(call exists,,stdlib.h, socket)
+
++HAS_MEMFD_CREATE ?= $(call exists,,sys/mman.h, memfd_create)
++
+ # computing native x11 variables
+ ifeq ($(UNAME),Linux)
+ x11_sizeof = $(shell echo "'|sizeof $1| (if x86? $(call sizeof,$1,,-m32 -include X11/Xlib.h) $(call sizeof,$1,,-m64 -include X11/Xlib.h))")
+diff --git a/src/olvm.c b/src/olvm.c
+index e614e359..fae38d50 100644
+--- a/src/olvm.c
++++ b/src/olvm.c
+@@ -1015,8 +1015,7 @@ __attribute__((used)) const char copyright[] = "@(#)(c) 2014-2023 Yuriy Chumak";
+ # define SYSCALL_PRCTL 0
+
+ # define HAS_SOCKETS 0
+-
+-# define SYSCALL_MEMFD 0
++# define HAS_MEMFD_CREATE 0
+ #endif
+
+ #ifdef __ANDROID__
+@@ -1035,7 +1034,7 @@ __attribute__((used)) const char copyright[] = "@(#)(c) 2014-2023 Yuriy Chumak";
+ # define SYSCALL_GETRLIMIT 0
+
+ # if __ANDROID_API__ < 30
+-# define SYSCALL_MEMFD 0
++# define HAS_MEMFD_CREATE 0
+ # endif
+ #endif
+
+@@ -1157,7 +1156,7 @@ __attribute__((used)) const char copyright[] = "@(#)(c) 2014-2023 Yuriy Chumak";
+ #endif
+
+ #ifndef HAS_SENDFILE
+-# if defined(_WIN32) || defined(__linux__)
++# if defined(_WIN32) || defined(__linux__) || defined(__APPLE__)
+ # define HAS_SENDFILE HAS_SOCKETS
+ # else
+ # define HAS_SENDFILE 0
+@@ -1274,7 +1273,28 @@ __attribute__((used)) const char copyright[] = "@(#)(c) 2014-2023 Yuriy Chumak";
+ # define __builtin_pow pow
+ #endif
+
+-#include <sys/mman.h> // we have own win32 implementation
++#ifdef __linux__
++# if HAS_MEMFD_CREATE
++# include <sys/mman.h>
++# else
++# undef HAS_MEMFD_CREATE
++# define HAS_MEMFD_CREATE 1
++ static // not a real memfd_create, but compatibility wrapper
++ int memfd_create (char* name, unsigned int flags)
++ {
++ (void) name;
++ assert (flags == 0);
++
++ char tmp_m[] = "/tmp/memfd_olvmXXXXXX";
++ int fd = mkstemp(tmp_m); unlink(tmp_m);
++
++ return fd;
++ }
++# endif
++#else
++# include <sys/mman.h> // we have own win32/macos implementation
++#endif
++
+ #include <sys/utsname.h> // we have own win32 implementation
+ #if HAS_DLOPEN
+ # include <dlfcn.h> // we have own win32 implementation
+@@ -1312,17 +1332,7 @@ __attribute__((used)) const char copyright[] = "@(#)(c) 2014-2023 Yuriy Chumak";
+ #endif
+
+ #ifdef __APPLE__
+-static // not a real memfd_create, but only compatibility wrapper
+-int memfd_create (char* name, unsigned int flags)
+-{
+- (void) name;
+- assert (flags == 0);
+-
+- char tmp_m[] = "/tmp/memfd_olvmXXXXXX";
+- int fd = mkstemp(tmp_m); unlink(tmp_m);
+-
+- return fd;
+-}
++int sendfile(int, int, off_t, off_t *, struct sf_hdtr *, int);
+ #endif
+
+ #if HAS_SENDFILE
+@@ -2644,7 +2654,11 @@ mainloop:;
+ # define SYSCALL_MKDIR 83 // deprecated
+
+ # ifndef SYSCALL_MEMFD
+- # define SYSCALL_MEMFD 85
++ # ifdef HAS_MEMFD_CREATE
++ # define SYSCALL_MEMFD ((HAS_MEMFD_CREATE == 1) ? 85 : 0)
++ # else
++ # define SYSCALL_MEMFD 85
++ # endif
+ # endif
+
+ # define SYSCALL_GETTIMEOFDAY 96
diff --git a/testing/ol/tests-Makefile.patch b/testing/ol/tests-Makefile.patch
new file mode 100644
index 00000000000..e745850b361
--- /dev/null
+++ b/testing/ol/tests-Makefile.patch
@@ -0,0 +1,395 @@
+diff --git a/tests/Makefile b/tests/Makefile
+index 1fe99d72..4199af3a 100644
+--- a/tests/Makefile
++++ b/tests/Makefile
+@@ -9,6 +9,7 @@ else
+
+ FAILED := $(shell mktemp -u /tmp/failed.XXXXXXXXX)
+
++# win32 tests:
+ MINGW32Q := $(shell which i686-w64-mingw32-gcc 1>/dev/null 2>/dev/null && echo 1)
+ MINGW64Q := $(shell which x86_64-w64-mingw32-gcc 1>/dev/null 2>/dev/null && echo 1)
+ WINEQ := $(shell which wine 1>/dev/null 2>/dev/null && echo 1)
+@@ -16,42 +17,34 @@ WINEQ := $(shell which wine 1>/dev/null 2>/dev/null && echo 1)
+ ok:="\033[1;32mok\033[0m"
+ failed:="\033[1;31mfailed\033[0m"
+
+-# 32-/64-bit test environment setup
+-HAS_32CDEFS ?= $(call exists,-m32,sys/cdefs.h,exit)
+-HAS_64CDEFS ?= $(call exists,-m64,sys/cdefs.h,exit)
++MACHINE ?= $(shell uname -m)
+
++# special case, test 64- and 32-bit both
++# (maximal testings under main development platform)
++ifeq ($(UNAME)-$(MACHINE),Linux-x86_64)
++HAS_32CDEFS ?= $(call exists,-m32,sys/cdefs.h,exit)
++HAS_64CDEFS ?= $(call exists,-m64,sys/cdefs.h,exit)
++ifeq ($(HAS_32CDEFS),1)
++DEV_MACHINE ?= 1
++endif
+ ifeq ($(HAS_64CDEFS),1)
+-vm64 = printf "64 " && ./vm64 repl <$$F | diff - $$F.ok
+-else
+-vm64 = true
++DEV_MACHINE ?= 1
+ endif
+-
+-ifeq ($(HAS_32CDEFS),1)
+-vm32 = printf "32 " && ./vm32 repl <$$F | diff - $$F.ok
+ else
+-vm32 = true
++HAS_32CDEFS ?= 0
++HAS_64CDEFS ?= 0
+ endif
+
+
+-vm32: src/olvm.c includes/ol/vm.h
+- $(CC) src/olvm.c -o $@ \
+- $(L) -m32 -DOLVM_FFI=0 \
+- $(CFLAGS)
+- @echo $(ok)
+-vm64: src/olvm.c includes/ol/vm.h
+- $(CC) src/olvm.c -o $@ \
+- $(L) -m64 -DOLVM_FFI=0 \
+- $(CFLAGS)
+- @echo $(ok)
+-
+ # -------------
+ # win
+ define winbuild
+ $(CC) src/olvm.c -o $1 \
+- -DOLVM_FFI=1 -Iincludes/win32 -Iincludes \
++ -DHAS_DLOPEN=1 -DHAS_SOCKES=1 -DOLVM_FFI=1 \
++ -Iincludes/win32 -Iincludes \
+ extensions/ffi.c \
+ -std=gnu99 -fno-exceptions -lws2_32 \
+- -DHAS_DLOPEN=1 -DHAS_SOCKES=1 $2
++ $2
+ endef
+
+ ifeq ($(MINGW32Q),1)
+@@ -72,45 +65,45 @@ tmp/vm64r.exe: src/olvm.c
+ endif
+
+
+-
+-test32: $(wildcard tests/*.scm)
+- @echo "-- test32 ----------"
+- @rm -f $(FAILED)
+- @$(CC) src/olvm.c $(CFLAGS) tests/vm.c -Iincludes -DOLVM_NOMAIN -o vm32d $(L) -m32
+- @./vm32d
+- @$(CC) src/olvm.c $(CFLAGS) tests/ffi.c -Iincludes \
+- -DOLVM_FFI=1 -Iincludes extensions/ffi.c -o ffi32 $(L) -m32
+- @for F in $^ ;do \
+- printf "Testing $$F ... " ;\
+- if OL_HOME=`pwd`/libraries ./ffi32 repl $$F >/dev/null; then\
+- echo "Ok." ;\
+- else \
+- echo "\033[0;31mFailed!\033[0m" ;\
+- touch $(FAILED) ;\
+- fi ;\
+- done
+- @if [ -e $(FAILED) ] ;then rm -f $(FAILED); exit 1 ;fi
+-
+-test64: $(wildcard tests/*.scm)
+- @echo "-- test64 ----------"
+- @rm -f $(FAILED)
+- @$(CC) src/olvm.c $(CFLAGS) tests/vm.c -Iincludes -DOLVM_NOMAIN -o vm64d $(L) -m64
+- @./vm64d
+- @$(CC) src/olvm.c $(CFLAGS) tests/ffi.c -Iincludes \
+- -DOLVM_FFI=1 -Iincludes extensions/ffi.c -o ffi64 $(L) -m64
+- @for F in $^ ;do \
+- printf "Testing $$F ... " ;\
+- if OL_HOME=`pwd`/libraries ./ffi64 repl $$F >/dev/null; then\
+- echo "Ok." ;\
+- else \
+- echo "\033[0;31mFailed!\033[0m" ;\
+- touch $(FAILED) ;\
+- fi ;\
+- done
+- @if [ -e $(FAILED) ] ;then rm -f $(FAILED); exit 1 ;fi
+-
+-test: test64
+- @echo "passed!"
++# # -=( test )=----------------------------------------
++# test32: $(wildcard tests/*.scm)
++# @echo "-- test32 ----------"
++# @rm -f $(FAILED)
++# @$(CC) src/olvm.c $(CFLAGS) tests/vm.c -Iincludes -DOLVM_NOMAIN -o vm32d $(L) -m32
++# @./vm32d
++# @$(CC) src/olvm.c $(CFLAGS) tests/ffi.c -Iincludes \
++# -DOLVM_FFI=1 -Iincludes extensions/ffi.c -o ffi32 $(L) -m32
++# @for F in $^ ;do \
++# printf "Testing $$F ... " ;\
++# if OL_HOME=`pwd`/libraries ./ffi32 repl $$F >/dev/null; then\
++# echo "Ok." ;\
++# else \
++# echo "\033[0;31mFailed!\033[0m" ;\
++# touch $(FAILED) ;\
++# fi ;\
++# done
++# @if [ -e $(FAILED) ] ;then rm -f $(FAILED); exit 1 ;fi
++
++# test64: $(wildcard tests/*.scm)
++# @echo "-- test64 ----------"
++# @rm -f $(FAILED)
++# @$(CC) src/olvm.c $(CFLAGS) tests/vm.c -Iincludes -DOLVM_NOMAIN -o vm64d $(L) -m64
++# @./vm64d
++# @$(CC) src/olvm.c $(CFLAGS) tests/ffi.c -Iincludes \
++# -DOLVM_FFI=1 -Iincludes extensions/ffi.c -o ffi64 $(L) -m64
++# @for F in $^ ;do \
++# printf "Testing $$F ... " ;\
++# if OL_HOME=`pwd`/libraries ./ffi64 repl $$F >/dev/null; then\
++# echo "Ok." ;\
++# else \
++# echo "\033[0;31mFailed!\033[0m" ;\
++# touch $(FAILED) ;\
++# fi ;\
++# done
++# @if [ -e $(FAILED) ] ;then rm -f $(FAILED); exit 1 ;fi
++
++# test: test64
++# @echo "passed!"
+
+ # -=( ffi )=----------------------------------------
+ test-ffi:
+@@ -134,23 +127,24 @@ test-ffi-release: CFLAGS += $(CFLAGS_RELEASE)
+ test-ffi-release: affix=r
+ test-ffi-release: test-ffi
+
+-# special case, maximal testings under main development platform
+-ifeq ($(UNAME),Linux)
++ifeq ($(HAS_32CDEFS),1) # x86_64
+ test-ffi-debug-32: CFLAGS += -m32
+ test-ffi-debug-32: bits=32
+ test-ffi-debug-32: test-ffi-debug
+-test-ffi-debug-64: CFLAGS += -m64
+-test-ffi-debug-64: bits=64
+-test-ffi-debug-64: test-ffi-debug
+ test-ffi-release-32: CFLAGS += -m32
+ test-ffi-release-32: bits=32
+ test-ffi-release-32: test-ffi-release
++endif
++ifeq ($(HAS_64CDEFS),1) # x86_64
++test-ffi-debug-64: CFLAGS += -m64
++test-ffi-debug-64: bits=64
++test-ffi-debug-64: test-ffi-debug
+ test-ffi-release-64: CFLAGS += -m64
+ test-ffi-release-64: bits=64
+ test-ffi-release-64: test-ffi-release
+ endif
+
+-# -=( vm )=----------------------------------------
++# -=( vmi )=---------------------------------------
+ test-vmi:
+ $(CC) src/olvm.c $(CFLAGS) tests/vm.c -Iincludes -DOLVM_NOMAIN -o $(vmi)$(affix)$(bits) $(L)
+ @echo "$(vmi)$(affix)$(bits):"
+@@ -164,22 +158,26 @@ test-vmi-release: CFLAGS += $(CFLAGS_RELEASE)
+ test-vmi-release: affix=r
+ test-vmi-release: test-vmi
+
+-# special case, maximal testings under main development platform
+-ifeq ($(UNAME),Linux)
++ifeq ($(HAS_32CDEFS),1) # x86_64
+ test-vmi-debug-32: CFLAGS += -m32
+ test-vmi-debug-32: bits=32
+ test-vmi-debug-32: test-vmi-debug
+-test-vmi-debug-64: CFLAGS += -m64
+-test-vmi-debug-64: bits=64
+-test-vmi-debug-64: test-vmi-debug
+ test-vmi-release-32: CFLAGS += -m32
+ test-vmi-release-32: bits=32
+ test-vmi-release-32: test-vmi-release
++endif
++ifeq ($(HAS_64CDEFS),1) # x86_64
++test-vmi-debug-64: CFLAGS += -m64
++test-vmi-debug-64: bits=64
++test-vmi-debug-64: test-vmi-debug
+ test-vmi-release-64: CFLAGS += -m64
+ test-vmi-release-64: bits=64
+ test-vmi-release-64: test-vmi-release
+ endif
+
++
++# -=( vm )=----------------------------------------
++# binaries
+ vm-debug:
+ $(CC) src/olvm.c $(CFLAGS) \
+ -DOLVM_FFI=1 -Iincludes extensions/ffi.c -o $(vm)d$(bits) $(L) $(CFLAGS_DEBUG)
+@@ -188,17 +186,25 @@ vm-release:
+ -DOLVM_FFI=1 -Iincludes extensions/ffi.c -o $(vm)r$(bits) $(L) $(CFLAGS_RELEASE)
+ vm=tmp/vm
+
+-# special case, maximal testings under main development platform
+-ifeq ($(UNAME),Linux)
++# vm-debug: CFLAGS += $(CFLAGS_DEBUG)
++# vm-debug: affix=d
++# vm-debug: vm-debug
++# vm-release: CFLAGS += $(CFLAGS_RELEASE)
++# vm-release: affix=r
++# vm-release: vm-release
++
++ifeq ($(HAS_32CDEFS),1) # x86_64
+ vm-debug-32: CFLAGS += -m32
+ vm-debug-32: bits=32
+ vm-debug-32: vm-debug
+-vm-debug-64: CFLAGS += -m64
+-vm-debug-64: bits=64
+-vm-debug-64: vm-debug
+ vm-release-32: CFLAGS += -m32
+ vm-release-32: bits=32
+ vm-release-32: vm-release
++endif
++ifeq ($(HAS_64CDEFS),1) # x86_64
++vm-debug-64: CFLAGS += -m64
++vm-debug-64: bits=64
++vm-debug-64: vm-debug
+ vm-release-64: CFLAGS += -m64
+ vm-release-64: bits=64
+ vm-release-64: vm-release
+@@ -206,8 +212,9 @@ endif
+
+ # -- binaries ---------------------
+ testing-binaries: includes/ol/vm.h
+- @echo "Building test binaries:"
+-ifeq ($(UNAME),Linux) # main development platform, try to do a maximal testings
++ @printf "Building test binaries:"
++ifeq ($(DEV_MACHINE),1) # main development platform, special case
++ @printf "\n"
+ ifeq ($(HAS_32CDEFS),1)
+ @printf " linux 32-bit debug and release versions... "
+ @$(MAKE) -s vm-debug-32
+@@ -232,20 +239,20 @@ ifeq ($(MINGW64Q),1)
+ @$(MAKE) -s $(vm)64r.exe
+ @echo $(ok)
+ endif
+- @echo "built."
+-else
+- @printf "Building test binaries (debug and release versions both)... "
++else # regular case
++ @printf " (debug and release versions both)... "
+ @$(MAKE) -s vm-debug
+ @$(MAKE) -s vm-release
+- @echo "Built."
+ endif
++ @echo "built."
++ @printf "\n"
+
+ # -- embed --------------------------------------------------------
+ testing-embed: tests/embed.c src/olvm.c includes/ol/ol.h tmp/repl.c
+ @echo "embed testing"
+ @echo "----------------------------------------"
+ @printf "tests/embed.c ..."
+-ifeq ($(UNAME),Linux) # main development platform, try to do a maximal testings
++ifeq ($(DEV_MACHINE),1) # main development platform, special case
+ ifeq ($(HAS_32CDEFS),1)
+ @printf ", debug-32: "
+ @$(CC) tests/embed.c src/olvm.c tmp/repl.c $(CFLAGS) $(L) -DOLVM_NOMAIN \
+@@ -290,7 +297,7 @@ ifeq ($(HAS_64CDEFS),1)
+ touch $(FAILED) ;\
+ fi
+ endif
+-else
++else # regular case
+ @printf ", debug: "
+ @$(CC) tests/embed.c src/olvm.c tmp/repl.c $(CFLAGS) $(L) -DOLVM_NOMAIN \
+ -DOLVM_FFI=1 extensions/ffi.c -o tmp/embedd \
+@@ -315,11 +322,11 @@ endif
+ @echo "."
+
+
+-# -- internal --------------------------------------
++# -- internal -------------------------------------
+ testing-internal:
+ @echo "Internal vm testing"
+- @echo "---------------------------------------"
+-ifeq ($(UNAME),Linux) # special case, try to do maximal testings under main development platform
++ @echo "----------------------------------------"
++ifeq ($(DEV_MACHINE),1) # main development platform, special case
+ ifeq ($(HAS_32CDEFS),1)
+ @$(MAKE) -s test-vmi-debug-32
+ @$(MAKE) -s test-vmi-release-32
+@@ -328,16 +335,17 @@ ifeq ($(HAS_64CDEFS),1)
+ @$(MAKE) -s test-vmi-debug-64
+ @$(MAKE) -s test-vmi-release-64
+ endif
+-else
++else # regular case
+ @$(MAKE) -s test-vmi-debug
+ @$(MAKE) -s test-vmi-release
+ endif
+ @echo " "
+
++# -- ffi ------------------------------------------
+ testing-ffi:
+ @echo "ffi testing"
+ @echo "----------------------------------------"
+-ifeq ($(UNAME),Linux) # special case, try to do maximal testings under main development platform
++ifeq ($(DEV_MACHINE),1) # main development platform, special case
+ ifeq ($(HAS_32CDEFS),1)
+ @$(MAKE) -s test-ffi-debug-32
+ @$(MAKE) -s test-ffi-release-32
+@@ -346,18 +354,17 @@ ifeq ($(HAS_64CDEFS),1)
+ @$(MAKE) -s test-ffi-debug-64
+ @$(MAKE) -s test-ffi-release-64
+ endif
+-else
++else # regular case
+ @$(MAKE) -s test-ffi-debug
+ @$(MAKE) -s test-ffi-release
+ endif
+ @echo " "
+
+-
+-# -- scm -------
++# -- scm ------------------------------------------
+ define scmtestok
+ @if ([ -f $1 ]); then\
+ printf ", $2: ";\
+- if ([ -f $^.in ] && $3 $1 repl --home=libraries $^ <$^.in 2>&1 || $3 $1 repl --home=libraries $^ 2>&1) | diff --strip-trailing-cr - $^.ok >/dev/null; then\
++ if ([ -f $^.in ] && $3 $1 repl --home=libraries $^ <$^.in 2>&1 || $3 $1 repl --home=libraries $^ 2>&1) | diff $4 - $^.ok >/dev/null; then\
+ printf $(ok) ;\
+ else \
+ printf $(failed);\
+@@ -374,17 +381,17 @@ endef
+ $(call scmtestok,$(vm)r,release)
+ $(call scmtestok,$(vm)r32,release-32)
+ $(call scmtestok,$(vm)r64,release-64)
+- $(call scmtestok,$(vm)32d.exe,win-debug-32,wine)
+- $(call scmtestok,$(vm)32r.exe,win-release-32,wine)
+- $(call scmtestok,$(vm)64d.exe,win-debug-64,wine)
+- $(call scmtestok,$(vm)64r.exe,win-release-64,wine)
++ $(call scmtestok,$(vm)32d.exe,win-debug-32,wine,--strip-trailing-cr)
++ $(call scmtestok,$(vm)32r.exe,win-release-32,wine,--strip-trailing-cr)
++ $(call scmtestok,$(vm)64d.exe,win-debug-64,wine,--strip-trailing-cr)
++ $(call scmtestok,$(vm)64r.exe,win-release-64,wine,--strip-trailing-cr)
+ @printf ".\n"
+
+-# -- bin -------
++# -- bin ------------------------------------------
+ define bintestok
+ @if ([ -f $1 ]); then\
+ printf ", $2: ";\
+- if ([ -f $^.in ] && $3 $1 $^ --home=libraries <$^.in || $3 $1 $^ --home=libraries) | diff --strip-trailing-cr - $^.ok >/dev/null; then\
++ if ([ -f $^.in ] && $3 $1 $^ --home=libraries <$^.in || $3 $1 $^ --home=libraries) | diff $4 - $^.ok >/dev/null; then\
+ printf $(ok) ;\
+ else \
+ printf $(failed);\
+@@ -401,13 +408,12 @@ endef
+ $(call bintestok,$(vm)r,release)
+ $(call bintestok,$(vm)r32,release-32)
+ $(call bintestok,$(vm)r64,release-64)
+- $(call bintestok,$(vm)32d.exe,win-debug-32,wine)
+- $(call bintestok,$(vm)32r.exe,win-release-32,wine)
+- $(call bintestok,$(vm)64d.exe,win-debug-64,wine)
+- $(call bintestok,$(vm)64r.exe,win-release-64,wine)
++ $(call bintestok,$(vm)32d.exe,win-debug-32,wine,--strip-trailing-cr)
++ $(call bintestok,$(vm)32r.exe,win-release-32,wine,--strip-trailing-cr)
++ $(call bintestok,$(vm)64d.exe,win-debug-64,wine,--strip-trailing-cr)
++ $(call bintestok,$(vm)64r.exe,win-release-64,wine,--strip-trailing-cr)
+ @printf ".\n"
+
+-
+ # -------------------------------------------------
+ # -=( tests )=-------------------------------------
+ check: tests
diff --git a/testing/olsrd/APKBUILD b/testing/olsrd/APKBUILD
index f60adea2f6e..a6932d8dfe1 100644
--- a/testing/olsrd/APKBUILD
+++ b/testing/olsrd/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Mathew Meins <mm@blackhelicopters.net>
pkgname=olsrd
pkgver=0.9.8
-pkgrel=1
+pkgrel=2
pkgdesc="An implementation of the IETF RFC 3626: Optimized Link State Routing Protocol"
url="http://www.olsr.org/mediawiki/index.php/Olsr_Daemon"
arch="all"
diff --git a/testing/ombi/APKBUILD b/testing/ombi/APKBUILD
new file mode 100644
index 00000000000..5e51d48e1f6
--- /dev/null
+++ b/testing/ombi/APKBUILD
@@ -0,0 +1,89 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=ombi
+pkgver=4.43.5
+pkgrel=1
+pkgdesc="Friendly media request tool which automatically syncs with your media servers!"
+url="https://ombi.io"
+arch="x86_64 aarch64 armv7" # blocked by dotnet6-sdk
+license="GPL-2.0-only"
+depends="aspnetcore6-runtime sqlite-libs"
+makedepends="dotnet6-sdk yarn"
+subpackages="$pkgname-openrc"
+install="$pkgname.pre-install"
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/Ombi-app/Ombi/archive/refs/tags/v$pkgver.tar.gz
+ ombi.initd
+ ombi.confd
+ "
+builddir="$srcdir/Ombi-$pkgver"
+pkgusers="ombi"
+pkggroups="ombi"
+options="net" # dotnet and yarn dependencies
+
+export DOTNET_CLI_HOME="$builddir"/dotnetclihome
+
+case $CARCH in
+ x86_64) _dotnet_arch="x64";;
+ aarch64) _dotnet_arch="arm64";;
+ armv7) _dotnet_arch="arm";;
+ *) _dotnet_arch="$CARCH";;
+esac
+
+_backend="$builddir/src/Ombi"
+_frontend="$_backend/ClientApp"
+_artifacts="$_backend/bin/Release/net6.0"
+_runtime="linux-musl-$_dotnet_arch"
+
+build() {
+ # set backend version
+ dotnet new tool-manifest
+ dotnet tool install --local dotnet-setversion
+ dotnet setversion -r "$pkgver"
+
+ # build the backend
+ dotnet publish "$_backend" \
+ -c Release \
+ -r "$_runtime" \
+ --no-self-contained
+
+ # move binaries out of runtime directory
+ mv "$_artifacts/$_runtime"/publish/* "$_artifacts" -f
+ rm -r "${_artifacts:?}/${_runtime:?}"
+
+ # remove dev config
+ rm "$_artifacts"/appsettings.Development.json
+
+ # build frontend
+ yarn --cwd "$_frontend" install --network-timeout 120000 --frozen-lockfile
+ yarn --cwd "$_frontend" build
+
+ # move frontend to atrifacts directory
+ mkdir -p "$_artifacts"/ClientApp
+ mv "$_frontend"/dist "$_artifacts"/ClientApp
+}
+
+check() {
+ make backend-tests
+}
+
+package() {
+ # setup runtime config file
+ mkdir -p "$pkgdir"/var/lib/ombi
+ chown -R "$pkgusers:$pkggroups" "$pkgdir"/var/lib/ombi
+
+ local DESTDIR="$pkgdir"/usr/lib/ombi
+
+ mkdir -p "$DESTDIR"
+ cp -af "$_artifacts"/* "$DESTDIR"
+ chown -R "$pkgusers:$pkggroups" "$DESTDIR"
+
+ install -Dm755 "$srcdir"/ombi.initd "$pkgdir"/etc/init.d/ombi
+ install -Dm644 "$srcdir"/ombi.confd "$pkgdir"/etc/conf.d/ombi
+}
+
+sha512sums="
+92f4eb27d0a1501347014e357738b51d9fe7ef769e744021281da18d74a513bf2c8d4b156a248b3719066bbf1064097a65228084f55d41994bf18abc6d8b05f7 ombi-4.43.5.tar.gz
+a48fac800aa0779c793aa1220cce16ccc55dc064487e11daf17b165fbc565e4c62e7a52e1372395508b199a12d6bf773157125f3cbaa845381cc035547b29afa ombi.initd
+7355ae0ffedc179688dc6e4c472bd8963b2cbb851bf00a103febe3138630c1cc8c7af37dc7d2e61bff7dc47214517d5b02bc0e8744894f1ff7272df5f566b8c1 ombi.confd
+"
diff --git a/testing/ombi/ombi.confd b/testing/ombi/ombi.confd
new file mode 100644
index 00000000000..5e16f801d86
--- /dev/null
+++ b/testing/ombi/ombi.confd
@@ -0,0 +1,4 @@
+#command_user="ombi:ombi" # user:group
+#umask=0002
+#storage_directory=/var/lib/ombi
+#port=3579
diff --git a/testing/ombi/ombi.initd b/testing/ombi/ombi.initd
new file mode 100644
index 00000000000..3905997aa5d
--- /dev/null
+++ b/testing/ombi/ombi.initd
@@ -0,0 +1,24 @@
+#!/sbin/openrc-run
+
+# fallback values for /etc/conf.d/ombi
+: ${command_user:=ombi:ombi}
+: ${umask:=0002}
+: ${storage_directory:=/var/lib/ombi}
+: ${port:=3579}
+
+name=ombi
+description="Ombi daemon"
+command="/usr/lib/ombi/Ombi"
+command_args="--storage $storage_directory --host http://*:$port"
+command_background=true
+directory=/usr/lib/ombi
+pidfile="/run/$RC_SVCNAME.pid"
+
+depend() {
+ need net
+ use dns logger netmount
+}
+
+start_pre() {
+ checkpath -d -o "$command_user" "$directory"
+}
diff --git a/testing/ombi/ombi.pre-install b/testing/ombi/ombi.pre-install
new file mode 100644
index 00000000000..3892cee67c5
--- /dev/null
+++ b/testing/ombi/ombi.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S ombi 2>/dev/null
+adduser -S -D -h /var/lib/ombi -s /sbin/nologin -G ombi -g ombi ombi 2>/dev/null
+
+exit 0
diff --git a/testing/one-dnn/APKBUILD b/testing/one-dnn/APKBUILD
index 874eced7e57..045953ab2d1 100644
--- a/testing/one-dnn/APKBUILD
+++ b/testing/one-dnn/APKBUILD
@@ -1,17 +1,19 @@
# Contributor: Dennis Krupenik <dennis@krupenik.com>
# Maintainer: Dennis Krupenik <dennis@krupenik.com>
pkgname=one-dnn
-pkgver=2.5
+pkgver=3.1
pkgrel=0
pkgdesc="oneAPI Deep Neural Network Library"
url="https://01.org/oneDNN"
# Used to executed primitives on Intel 64bit, aarch64 and compatible devices
arch="x86_64"
license="Apache-2.0"
-depends_dev="libtbb-dev opencl-headers opencl-icd-loader-dev"
+depends_dev="onetbb-dev opencl-headers opencl-icd-loader-dev"
makedepends="cmake samurai $depends_dev"
subpackages="$pkgname-dev $pkgname-doc"
-source="https://github.com/oneapi-src/oneDNN/archive/v$pkgver/oneDNN-$pkgver.tar.gz"
+source="https://github.com/oneapi-src/oneDNN/archive/v$pkgver/oneDNN-$pkgver.tar.gz
+ gcc13.patch
+ "
builddir="$srcdir/oneDNN-$pkgver"
build() {
@@ -23,10 +25,10 @@ build() {
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
-DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_VERBOSE_MAKEFILE=ON \
-DDNNL_GPU_RUNTIME=OCL \
-DDNNL_CPU_RUNTIME=TBB \
- $CMAKE_CROSSOPTS .
+ -DONEDNN_BUILD_GRAPH=OFF \
+ $CMAKE_CROSSOPTS
cmake --build build
}
@@ -39,5 +41,6 @@ package() {
}
sha512sums="
-49b0730d1af1e6ba18b9ae3c1f43430a4e22d581e5b540323db2b053fa58915a42a1797974e59c508e85e0ee6ddb61020d570df6cd956a97a19f2a8435d10ef1 oneDNN-2.5.tar.gz
+2053157a3885618364a9da5ec738c9cc2dde15db1ce9737578565d25c4a15a65944db3bbd17780de2032cfa2329bea4cb0af24ee428c9c246bdfa07a5bdde30b oneDNN-3.1.tar.gz
+356b2d6e2aa3156e92e23872ee6643ba0d27de08af15fdd9dcf0f6dd45eaf30bf8506dbcc3594981f5a8a68fadf9d790b4b2c920c33675bc316aea6fb5a26d6b gcc13.patch
"
diff --git a/testing/one-dnn/gcc13.patch b/testing/one-dnn/gcc13.patch
new file mode 100644
index 00000000000..fbe8614bc5b
--- /dev/null
+++ b/testing/one-dnn/gcc13.patch
@@ -0,0 +1,12 @@
+diff --git a/tests/benchdnn/utils/dims.hpp b/tests/benchdnn/utils/dims.hpp
+index 8b8430c..5c25428 100644
+--- a/tests/benchdnn/utils/dims.hpp
++++ b/tests/benchdnn/utils/dims.hpp
+@@ -18,6 +18,7 @@
+ #define UTILS_DIMS_T_HPP
+
+ #include <cassert>
++#include <cstdint>
+ #include <iostream>
+ #include <string>
+ #include <vector>
diff --git a/testing/onevpl-intel-gpu/APKBUILD b/testing/onevpl-intel-gpu/APKBUILD
new file mode 100644
index 00000000000..711e0865aff
--- /dev/null
+++ b/testing/onevpl-intel-gpu/APKBUILD
@@ -0,0 +1,40 @@
+# Contributor: Assaf Inbal <shmuelzon@gmail.com>
+# Maintainer: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
+pkgname=onevpl-intel-gpu
+pkgver=23.2.4
+pkgrel=1
+pkgdesc="Intel oneVPL GPU Runtime"
+options="!check" # tests can't run in check(), only on install
+url="https://github.com/oneapi-src/oneVPL-intel-gpu"
+arch="x86_64"
+license="MIT"
+depends="libva"
+makedepends="
+ cmake
+ libva-dev
+ samurai
+ "
+subpackages="$pkgname-dev"
+source="$pkgname-$pkgver.tar.gz::https://github.com/oneapi-src/oneVPL-intel-gpu/archive/refs/tags/intel-onevpl-$pkgver.tar.gz"
+builddir="$srcdir/oneVPL-intel-gpu-intel-onevpl-$pkgver"
+
+build() {
+ if [ "$CBUILD" != "$CHOST" ]; then
+ CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ cmake -B build -G Ninja -Wno-dev \
+ -DCMAKE_BUILD_TYPE=MinSizeRel \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=True \
+ $CMAKE_CROSSOPTS
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+4edadb45eac2246f15301f08ad90af5695b1d848391a639447ff292ec9df85d64ea9bd04cfb52fdb751ed3707601515b09988cebcbd06b03411cb2d69970512d onevpl-intel-gpu-23.2.4.tar.gz
+"
diff --git a/testing/onevpl/APKBUILD b/testing/onevpl/APKBUILD
deleted file mode 100644
index 2aed5cbb067..00000000000
--- a/testing/onevpl/APKBUILD
+++ /dev/null
@@ -1,46 +0,0 @@
-# Contributor: psykose <alice@ayaya.dev>
-# Maintainer: psykose <alice@ayaya.dev>
-pkgname=onevpl
-pkgver=2022.1.3
-pkgrel=0
-pkgdesc="oneAPI Video Processing Library"
-url="https://github.com/oneapi-src/oneVPL"
-arch="x86_64" # only x86_64 supported
-license="MIT"
-makedepends="cmake samurai"
-subpackages="$pkgname-doc $pkgname-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/oneapi-src/oneVPL/archive/refs/tags/v$pkgver.tar.gz"
-builddir="$srcdir/oneVPL-$pkgver"
-
-build() {
- cmake -B build -G Ninja \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DONEAPI_INSTALL_ENVDIR=/usr/share/oneVPL/env \
- -DONEAPI_INSTALL_LICENSEDIR=/usr/share/doc/oneVPL \
- -DONEAPI_INSTALL_MODFILEDIR=/usr/share/oneVPL/modulefiles \
- -DBUILD_PREVIEW=OFF \
- -DBUILD_EXAMPLES=OFF \
- -DBUILD_TOOLS=OFF \
- -DINSTALL_EXAMPLE_CODE=OFF \
- -DBUILD_TESTS="$(want_check && echo ON || echo OFF)"
- cmake --build build
-}
-
-check() {
- ctest -j $JOBS --output-on-failure --test-dir build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-
-dev() {
- default_dev
-
- amove usr/share
-}
-
-sha512sums="
-5fa837a9c0c9219892f5b6cdab6b2500560755b4f822c6b5efa922d24de43fc6f60822b309829f2eeae6705f73f80cce830012b8b358354d46ef85d2b2e28db4 onevpl-2022.1.3.tar.gz
-"
diff --git a/testing/onioncat/APKBUILD b/testing/onioncat/APKBUILD
new file mode 100644
index 00000000000..9860305ea2e
--- /dev/null
+++ b/testing/onioncat/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: Anon <danilagdn.2004@gmail.com>
+# Maintainer: Anon <danilagdn.2004@gmail.com>
+pkgname=onioncat
+pkgver=4.11.0
+pkgrel=1
+pkgdesc="OnionCat is a VPN-adapter, which uses Tor or I2P as its transport."
+url="https://www.onioncat.org/"
+arch="x86 x86_64"
+license="GPL-3.0-only"
+depends="net-tools"
+makedepends="automake autoconf libmnl-dev"
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/rahra/onioncat/archive/refs/tags/v$pkgver.tar.gz"
+
+prepare() {
+ default_prepare
+
+ ./autogen.sh
+}
+
+build() {
+ ./configure --prefix=/usr --localstatedir=/var/lib --runstatedir=/run --sysconfdir=/etc
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make prefix="$pkgdir/usr" exec_prefix="$pkgdir/usr" localstatedir="$pkgdir/var/lib" install
+}
+
+sha512sums="
+5dc6538f343749530cbd2f29bdd6ba6bc1e921a4fae6f5c783dd2bc1d045ce304639acc5cea6c1946b7c938ce58b732c01ae1a00998f5438a414b4c623dfd0bf onioncat-4.11.0.tar.gz
+"
diff --git a/testing/onnxruntime/0001-Remove-MATH_NO_EXCEPT-macro.patch b/testing/onnxruntime/0001-Remove-MATH_NO_EXCEPT-macro.patch
new file mode 100644
index 00000000000..8f42e589122
--- /dev/null
+++ b/testing/onnxruntime/0001-Remove-MATH_NO_EXCEPT-macro.patch
@@ -0,0 +1,50 @@
+From 8caf31352140d655e2c88fb9784982c4e5db3b5b Mon Sep 17 00:00:00 2001
+From: sudotac <sudo@tofuyard.net>
+Date: Sun, 6 Aug 2023 23:46:28 +0900
+Subject: [PATCH] Remove MATH_NO_EXCEPT macro
+
+Signed-off-by: sudotac <sudo@tofuyard.net>
+---
+ .../test/providers/cpu/math/element_wise_ops_test.cc | 12 +++---------
+ 1 file changed, 3 insertions(+), 9 deletions(-)
+
+diff --git a/onnxruntime/test/providers/cpu/math/element_wise_ops_test.cc b/onnxruntime/test/providers/cpu/math/element_wise_ops_test.cc
+index 04fbd05669..5ec4d915f5 100644
+--- a/onnxruntime/test/providers/cpu/math/element_wise_ops_test.cc
++++ b/onnxruntime/test/providers/cpu/math/element_wise_ops_test.cc
+@@ -2603,13 +2603,7 @@ TEST(MathOpTest, Mean_8) {
+ test.Run(OpTester::ExpectResult::kExpectSuccess, "", {kTensorrtExecutionProvider}); // TensorRT: Input batch size is inconsistent
+ }
+
+-#ifdef _LIBCPP_VERSION
+-#define MATH_NO_EXCEPT
+-#else
+-#define MATH_NO_EXCEPT noexcept
+-#endif
+-
+-template <float (&op)(float value) MATH_NO_EXCEPT>
++template <float (&op)(float value)>
+ void TrigFloatTest(OpTester& test, std::initializer_list<float> input) {
+ std::vector<int64_t> dims{static_cast<int64_t>(input.size())};
+
+@@ -2622,7 +2616,7 @@ void TrigFloatTest(OpTester& test, std::initializer_list<float> input) {
+ test.Run();
+ }
+
+-template <double (&op)(double value) MATH_NO_EXCEPT>
++template <double (&op)(double value)>
+ void TrigDoubleTest(OpTester& test, std::initializer_list<double> input,
+ const std::unordered_set<std::string> excluded_provider_types = {}) {
+ std::vector<int64_t> dims{static_cast<int64_t>(input.size())};
+@@ -2636,7 +2630,7 @@ void TrigDoubleTest(OpTester& test, std::initializer_list<double> input,
+ test.Run(OpTester::ExpectResult::kExpectSuccess, "", excluded_provider_types);
+ }
+
+-template <float (&op)(float value) MATH_NO_EXCEPT>
++template <float (&op)(float value)>
+ void TrigFloat16Test(OpTester& test, std::initializer_list<float> input) {
+ std::vector<int64_t> dims{static_cast<int64_t>(input.size())};
+
+--
+2.41.0
+
diff --git a/testing/onnxruntime/APKBUILD b/testing/onnxruntime/APKBUILD
new file mode 100644
index 00000000000..d48fe7f86be
--- /dev/null
+++ b/testing/onnxruntime/APKBUILD
@@ -0,0 +1,99 @@
+# Maintainer: leso-kn <info@lesosoftware.com>
+pkgname=onnxruntime
+pkgver=1.17.1
+pkgrel=1
+pkgdesc="Cross-platform, high performance ML inferencing and training accelerator"
+url="https://onnxruntime.ai"
+# x86, s390x: fails to build
+arch="all !x86 !s390x"
+license="MIT"
+makedepends="
+ abseil-cpp-dev
+ bash
+ cmake
+ gtest-dev
+ icu-dev
+ linux-headers
+ nlohmann-json
+ protobuf-dev
+ py3-numpy-dev
+ py3-pybind11-dev
+ py3-setuptools
+ py3-wheel
+ python3-dev
+ re2-dev
+ samurai
+ zlib-dev
+ "
+subpackages="
+ $pkgname-dev
+ py3-$pkgname-pyc
+ py3-$pkgname:py3
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/microsoft/onnxruntime/archive/refs/tags/v$pkgver.tar.gz
+ no-execinfo.patch
+ system.patch
+ 0001-Remove-MATH_NO_EXCEPT-macro.patch
+ "
+options="net"
+
+# tests fail on arm 32 bit, see https://github.com/microsoft/onnxruntime/issues/16387
+case "$CARCH" in
+armhf|armv7) options="!check $options"; CXXFLAGS="$CXXFLAGS -Wno-overflow";;
+esac
+
+build() {
+ CFLAGS="$CFLAGS -O2 -flto=auto" \
+ CXXFLAGS="$CXXFLAGS -O2 -Wno-deprecated-declarations -flto=auto" \
+ LDFLAGS="$LDFLAGS -Wl,--copy-dt-needed-entries" \
+ cmake -S cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DBUILD_ONNX_PYTHON=ON \
+ -Donnxruntime_BUILD_SHARED_LIB=ON \
+ -Donnxruntime_BUILD_UNIT_TESTS="$(want_check && echo ON || echo OFF)" \
+ -Donnxruntime_ENABLE_PYTHON=ON \
+ -Donnxruntime_USE_NEURAL_SPEED=OFF # fix for 1.17.0, see: https://github.com/microsoft/onnxruntime/pull/19382
+ # hack for protobuf 23
+ sed -i 's|CMAKE_CXX_STANDARD 11|CMAKE_CXX_STANDARD 17|' build/_deps/onnx-src/CMakeLists.txt
+
+ cmake --build build
+
+ cd build
+ msg "building python module"
+ python3 ../setup.py build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+
+ cd build
+ python3 ../setup.py install --skip-build --root="$pkgdir"
+
+ ln -sfv ../../../../libonnxruntime_providers_shared.so \
+ "$(echo "$pkgdir"/usr/lib/python3*/site-packages/onnxruntime/capi/libonnxruntime_providers_shared.so)"
+}
+
+py3() {
+ pkgdesc="$pkgname (python3 bindings)"
+ depends="
+ py3-coloredlogs
+ py3-flatbuffers
+ py3-numpy
+ py3-packaging
+ py3-sympy
+ "
+
+ amove usr/lib/python3*
+}
+
+sha512sums="
+a4629a9bb92d30a2686ed3d760f1ae1b94f15a6021dd4bdf36bdf66f4470c870610d217169b4489eeb51e0f730176dd2e8f8e102fea6508cc3ff5fd2f3dfccb8 onnxruntime-1.17.1.tar.gz
+976913be90b0a82ff1ba403f46306ef4e5939bb05296227c99d3c4a609dd00f5750f9b1c6c30d20791ff0724c1bcffc6aa498eac906257aefefc6f35df796fe0 no-execinfo.patch
+963542ac3cfef08c9dcd60f28c0a47d6a9fbfcbe43efbf891047939aecd5b56fe0285f538e0da3df409a53745433b0ed2bc2470c59ae8fcf86ce94bf7cd02649 system.patch
+696d76c9265ad31fdd1d8b7790693e139f31006dff4d571473f8406129fff47f2885010ed0affb7fcf629f98bed5e14d33eeef9e52eb251e90f581a05f587350 0001-Remove-MATH_NO_EXCEPT-macro.patch
+"
diff --git a/testing/onnxruntime/no-execinfo.patch b/testing/onnxruntime/no-execinfo.patch
new file mode 100644
index 00000000000..4b96c29a750
--- /dev/null
+++ b/testing/onnxruntime/no-execinfo.patch
@@ -0,0 +1,22 @@
+diff --git a/onnxruntime/core/platform/posix/stacktrace.cc b/onnxruntime/core/platform/posix/stacktrace.cc
+index 76864b2..185f131 100644
+--- a/onnxruntime/core/platform/posix/stacktrace.cc
++++ b/onnxruntime/core/platform/posix/stacktrace.cc
+@@ -3,7 +3,7 @@
+
+ #include "core/common/common.h"
+
+-#if !defined(__ANDROID__) && !defined(__wasm__) && !defined(_OPSCHEMA_LIB_) && !defined(_AIX)
++#if defined(__GLIBC__) && !defined(__ANDROID__) && !defined(__wasm__) && !defined(_OPSCHEMA_LIB_) && !defined(_AIX)
+ #include <execinfo.h>
+ #endif
+ #include <vector>
+@@ -13,7 +13,7 @@ namespace onnxruntime {
+ std::vector<std::string> GetStackTrace() {
+ std::vector<std::string> stack;
+
+-#if !defined(NDEBUG) && !defined(__ANDROID__) && !defined(__wasm__) && !defined(_OPSCHEMA_LIB_)
++#if defined(__GLIBC__) && !defined(NDEBUG) && !defined(__ANDROID__) && !defined(__wasm__) && !defined(_OPSCHEMA_LIB_)
+ constexpr int kCallstackLimit = 64; // Maximum depth of callstack
+
+ void* array[kCallstackLimit];
diff --git a/testing/onnxruntime/system.patch b/testing/onnxruntime/system.patch
new file mode 100644
index 00000000000..6f9a751aba7
--- /dev/null
+++ b/testing/onnxruntime/system.patch
@@ -0,0 +1,66 @@
+diff --git a/cmake/external/onnxruntime_external_deps.cmake b/cmake/external/onnxruntime_external_deps.cmake
+index 9effd1a2db..ed15ad31aa 100644
+--- a/cmake/external/onnxruntime_external_deps.cmake
++++ b/cmake/external/onnxruntime_external_deps.cmake
+@@ -19,16 +19,16 @@ endforeach()
+
+ message("Loading Dependencies ...")
+ # ABSL should be included before protobuf because protobuf may use absl
+-include(external/abseil-cpp.cmake)
+
+ set(RE2_BUILD_TESTING OFF CACHE BOOL "" FORCE)
+
+-FetchContent_Declare(
+- re2
+- URL ${DEP_URL_re2}
+- URL_HASH SHA1=${DEP_SHA1_re2}
+- FIND_PACKAGE_ARGS NAMES re2
+-)
++find_package(absl REQUIRED)
++set(ABSEIL_LIBS absl::inlined_vector absl::flat_hash_set
++ absl::flat_hash_map absl::node_hash_set absl::node_hash_map absl::base absl::throw_delegate absl::raw_hash_set
++ absl::hash absl::city absl::low_level_hash absl::raw_logging_internal)
++find_package(Protobuf REQUIRED)
++find_package(re2 REQUIRED)
++find_package(nlohmann_json REQUIRED)
+
+ if (onnxruntime_BUILD_UNIT_TESTS)
+ # WebAssembly threading support in Node.js is still an experimental feature and
+@@ -199,7 +199,6 @@ if (onnxruntime_DISABLE_RTTI)
+ set(protobuf_DISABLE_RTTI ON CACHE BOOL "Remove runtime type information in the binaries" FORCE)
+ endif()
+
+-include(protobuf_function)
+ #protobuf end
+
+ set(ENABLE_DATE_TESTING OFF CACHE BOOL "" FORCE)
+@@ -359,7 +359,7 @@ FetchContent_Declare(
+ # protobuf's cmake/utf8_range.cmake has the following line
+ include_directories(${utf8_range_SOURCE_DIR})
+
+-onnxruntime_fetchcontent_makeavailable(Protobuf nlohmann_json mp11 re2 GSL flatbuffers ${ONNXRUNTIME_CPUINFO_PROJ} ${ONNXRUNTIME_CLOG_PROJ})
++onnxruntime_fetchcontent_makeavailable(mp11 GSL flatbuffers ${ONNXRUNTIME_CPUINFO_PROJ} ${ONNXRUNTIME_CLOG_PROJ})
+ if(NOT flatbuffers_FOUND)
+ if(NOT TARGET flatbuffers::flatbuffers)
+ add_library(flatbuffers::flatbuffers ALIAS flatbuffers)
+@@ -386,7 +386,7 @@ namespace std { using ::getenv; }
+ endif()
+
+ if (onnxruntime_BUILD_UNIT_TESTS)
+- onnxruntime_fetchcontent_makeavailable(googletest)
++ find_package(GTest REQUIRED)
+ endif()
+
+ if(Protobuf_FOUND)
+diff --git a/cmake/onnxruntime_unittests.cmake b/cmake/onnxruntime_unittests.cmake
+index 9347be180d..8c60ff40f4 100644
+--- a/cmake/onnxruntime_unittests.cmake
++++ b/cmake/onnxruntime_unittests.cmake
+@@ -935,6 +935,7 @@ endif()
+ onnxruntime_add_include_to_target(onnx_test_data_proto onnx_proto)
+ target_include_directories(onnx_test_data_proto PRIVATE ${CMAKE_CURRENT_BINARY_DIR})
+ set_target_properties(onnx_test_data_proto PROPERTIES FOLDER "ONNXRuntimeTest")
++include(protobuf_function)
+ onnxruntime_protobuf_generate(APPEND_PATH IMPORT_DIRS ${onnx_SOURCE_DIR} TARGET onnx_test_data_proto)
+
+ #
diff --git a/testing/opa/APKBUILD b/testing/opa/APKBUILD
new file mode 100644
index 00000000000..b12d3544b78
--- /dev/null
+++ b/testing/opa/APKBUILD
@@ -0,0 +1,77 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=opa
+pkgver=0.61.0
+pkgrel=2
+pkgdesc="Open source, general-purpose policy engine"
+url="https://www.openpolicyagent.org/"
+# only platforms with full +wasm support, as upstream does
+arch="aarch64 x86_64"
+license="Apache-2.0"
+makedepends="go wasmtime-dev"
+checkdepends="tzdata"
+subpackages="
+ $pkgname-doc
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
+ "
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/open-policy-agent/opa/archive/refs/tags/v$pkgver.tar.gz
+ https://dev.alpinelinux.org/archive/open-policy-agent/pr6556-bump-wasmtime-go-v17.patch
+ tests-go1.22-compat.patch
+ "
+
+export CGO_ENABLED=1
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ # report.ExternalServiceURL is left blank to disable telemetry
+ # - "opa version -c" errors out
+ # - "opa run" fails the version check process silently in the background
+ # this is intended :)
+ local goldflags="
+ -X github.com/open-policy-agent/opa/version.Version=$pkgver
+ -X github.com/open-policy-agent/opa/version.Hostname=AlpineLinux
+ -X github.com/open-policy-agent/opa/version.Vcs=0000000000000000000000000000000000000000
+ -X github.com/open-policy-agent/opa/version.Timestamp=$(date -u "+%Y-%m-%dT%H:%M:%SZ" ${SOURCE_DATE_EPOCH:+-d @$SOURCE_DATE_EPOCH})
+ -X github.com/open-policy-agent/opa/internal/report.ExternalServiceURL=
+ "
+
+ export CGO_CFLAGS="$CFLAGS"
+ export CGO_LDFLAGS="$LDFLAGS -L/usr/lib -lwasmtime"
+
+ go build -v -ldflags "$goldflags" -tags opa_wasm
+
+ mkdir -p man/
+ go run build/generate-man/generate.go man/
+
+ for shell in bash fish zsh; do
+ ./opa completion $shell > opa.$shell
+ done
+}
+
+check() {
+ # tests are not ran with opa_wasm tag so tests that use wasm engine fail
+ go test -skip TestRegoTargetWasmAndTargetPluginDisablesIndexingTopdownStages ./...
+}
+
+package() {
+ install -Dm755 opa -t "$pkgdir"/usr/bin/
+
+ install -Dm644 man/*.1 -t "$pkgdir"/usr/share/man/man1/
+
+ install -Dm644 opa.bash \
+ "$pkgdir"/usr/share/bash-completion/completions/opa
+ install -Dm644 opa.fish \
+ "$pkgdir"/usr/share/fish/vendor_completions.d/opa.fish
+ install -Dm644 opa.zsh \
+ "$pkgdir"/usr/share/zsh/site-functions/_opa
+}
+
+sha512sums="
+d80443cf58d3b703cf4209d4170b76a2173a6af5fc18c2f777d1258b328aa35e030ac220212a03ad76f26ff08c1a93077fccbacf9a3ae6c72f48162b715375a9 opa-0.61.0.tar.gz
+458e515e22faf739ef6966ea39de5f7d9863d5d1e1e9b8659dc6e0c717ec03215ffb2770f4d48437bf995ec72fc52d85d9b8b53aa3f8428901b49fe59760a167 pr6556-bump-wasmtime-go-v17.patch
+74ab9327d0b7a5ed2c568cd0f4d1e06272671e785112f0037b810c54e2a1bc5437722973e8b4bdc2619570dbf2ae637b2057817c36b7828e365f48d1c0184c9a tests-go1.22-compat.patch
+"
diff --git a/testing/opa/tests-go1.22-compat.patch b/testing/opa/tests-go1.22-compat.patch
new file mode 100644
index 00000000000..3ad677d5461
--- /dev/null
+++ b/testing/opa/tests-go1.22-compat.patch
@@ -0,0 +1,274 @@
+Patch-Source: https://github.com/open-policy-agent/opa/commit/963f5eaada9afef608a649550eb7f50d89a06181.patch
+--
+From 963f5eaada9afef608a649550eb7f50d89a06181 Mon Sep 17 00:00:00 2001
+From: Stephan Renatus <stephan@styra.com>
+Date: Tue, 20 Feb 2024 12:46:17 +0100
+Subject: [PATCH] build(go): bump golang, build with 1.22, support 1.20+
+ (#6595)
+
+https://go.dev/doc/go1.22
+
+Signed-off-by: Stephan Renatus <stephan@styra.com>
+---
+ .github/workflows/pull-request.yaml | 2 +-
+ .go-version | 2 +-
+ go.mod | 2 +-
+ internal/prometheus/prometheus_go1.19_test.go | 145 ------------------
+ internal/prometheus/prometheus_test.go | 20 ++-
+ topdown/tokens_test.go | 6 -
+ 6 files changed, 18 insertions(+), 159 deletions(-)
+ delete mode 100644 internal/prometheus/prometheus_go1.19_test.go
+
+diff --git a/.github/workflows/pull-request.yaml b/.github/workflows/pull-request.yaml
+index 10f073f7f9..52ddd670cf 100644
+--- a/.github/workflows/pull-request.yaml
++++ b/.github/workflows/pull-request.yaml
+@@ -292,7 +292,7 @@ jobs:
+ fail-fast: false
+ matrix:
+ os: [ubuntu-22.04, macos-latest]
+- version: ["1.19"]
++ version: ["1.20"]
+ steps:
+ - uses: actions/checkout@v4
+ - name: Download generated artifacts
+diff --git a/.go-version b/.go-version
+index ce2dd53570..71f7f51df9 100644
+--- a/.go-version
++++ b/.go-version
+@@ -1 +1 @@
+-1.21.5
++1.22
+diff --git a/go.mod b/go.mod
+index e0d860b6a0..7abc6d4cfd 100644
+--- a/go.mod
++++ b/go.mod
+@@ -1,6 +1,6 @@
+ module github.com/open-policy-agent/opa
+
+-go 1.19
++go 1.20
+
+ require (
+ github.com/OneOfOne/xxhash v1.2.8
+diff --git a/internal/prometheus/prometheus_go1.19_test.go b/internal/prometheus/prometheus_go1.19_test.go
+deleted file mode 100644
+index 4b253d8ada..0000000000
+--- a/internal/prometheus/prometheus_go1.19_test.go
++++ /dev/null
+@@ -1,145 +0,0 @@
+-// Copyright 2022 The OPA Authors. All rights reserved.
+-// Use of this source code is governed by an Apache2
+-// license that can be found in the LICENSE file.
+-
+-// NOTE(sr): Different go runtime metrics on 1.19.
+-// This can be removed when we drop support for go 1.19.
+-//go:build go1.19 && !go1.20
+-// +build go1.19,!go1.20
+-
+-package prometheus
+-
+-import (
+- "encoding/json"
+- "testing"
+-
+- "github.com/open-policy-agent/opa/logging"
+- "github.com/open-policy-agent/opa/metrics"
+-)
+-
+-func TestJSONSerialization(t *testing.T) {
+- inner := metrics.New()
+- logger := func(logger logging.Logger) loggerFunc {
+- return func(attrs map[string]interface{}, f string, a ...interface{}) {
+- logger.WithFields(attrs).Error(f, a...)
+- }
+- }(logging.NewNoOpLogger())
+-
+- prom := New(inner, logger, []float64{1e-6, 5e-6, 1e-5, 5e-5, 1e-4, 5e-4, 1e-3, 0.01, 0.1, 1})
+-
+- m := prom.All()
+- bs, err := json.Marshal(m)
+- if err != nil {
+- t.Fatal(err)
+- }
+-
+- act := make(map[string]map[string]interface{}, len(m))
+- err = json.Unmarshal(bs, &act)
+- if err != nil {
+- t.Fatal(err)
+- }
+-
+- // NOTE(sr): "http_request_duration_seconds" only shows up after there has been a request
+- exp := map[string][]string{
+- "GAUGE": {
+- "go_gc_heap_goal_bytes",
+- "go_gc_heap_objects_objects",
+- "go_gc_stack_starting_size_bytes",
+- "go_gc_limiter_last_enabled_gc_cycle",
+- "go_goroutines",
+- "go_info",
+- "go_memory_classes_heap_free_bytes",
+- "go_memory_classes_heap_objects_bytes",
+- "go_memory_classes_heap_released_bytes",
+- "go_memory_classes_heap_stacks_bytes",
+- "go_memory_classes_heap_unused_bytes",
+- "go_memory_classes_metadata_mcache_free_bytes",
+- "go_memory_classes_metadata_mcache_inuse_bytes",
+- "go_memory_classes_metadata_mspan_free_bytes",
+- "go_memory_classes_metadata_mspan_inuse_bytes",
+- "go_memory_classes_metadata_other_bytes",
+- "go_memory_classes_os_stacks_bytes",
+- "go_memory_classes_other_bytes",
+- "go_memory_classes_profiling_buckets_bytes",
+- "go_memory_classes_total_bytes",
+- "go_memstats_alloc_bytes",
+- "go_memstats_buck_hash_sys_bytes",
+- // "go_memstats_gc_cpu_fraction", // removed: https://github.com/prometheus/client_golang/issues/842#issuecomment-861812034
+- "go_memstats_gc_sys_bytes",
+- "go_memstats_heap_alloc_bytes",
+- "go_memstats_heap_idle_bytes",
+- "go_memstats_heap_inuse_bytes",
+- "go_memstats_heap_objects",
+- "go_memstats_heap_released_bytes",
+- "go_memstats_heap_sys_bytes",
+- "go_memstats_last_gc_time_seconds",
+- "go_memstats_mcache_inuse_bytes",
+- "go_memstats_mcache_sys_bytes",
+- "go_memstats_mspan_inuse_bytes",
+- "go_memstats_mspan_sys_bytes",
+- "go_memstats_next_gc_bytes",
+- "go_memstats_other_sys_bytes",
+- "go_memstats_stack_inuse_bytes",
+- "go_memstats_stack_sys_bytes",
+- "go_memstats_sys_bytes",
+- "go_sched_goroutines_goroutines",
+- "go_sched_gomaxprocs_threads",
+- "go_threads",
+- },
+- "COUNTER": {
+- "go_gc_cycles_automatic_gc_cycles_total",
+- "go_gc_cycles_forced_gc_cycles_total",
+- "go_gc_cycles_total_gc_cycles_total",
+- "go_gc_heap_allocs_bytes_total",
+- "go_gc_heap_allocs_objects_total",
+- "go_gc_heap_tiny_allocs_objects_total",
+- "go_gc_heap_frees_bytes_total",
+- "go_gc_heap_frees_objects_total",
+- "go_cgo_go_to_c_calls_calls_total",
+- "go_memstats_alloc_bytes_total",
+- "go_memstats_lookups_total",
+- "go_memstats_mallocs_total",
+- "go_memstats_frees_total",
+- },
+- "SUMMARY": {
+- "go_gc_duration_seconds",
+- },
+- "HISTOGRAM": {
+- "go_gc_pauses_seconds", // was: "go_gc_pauses_seconds_total"
+- "go_gc_heap_allocs_by_size_bytes", // was: "go_gc_heap_allocs_by_size_bytes_total"
+- "go_gc_heap_frees_by_size_bytes", // was: "go_gc_heap_frees_by_size_bytes_total"
+- "go_sched_latencies_seconds",
+- },
+- }
+- found := 0
+- for typ, es := range exp {
+- for _, e := range es {
+- a, ok := act[e]
+- if !ok {
+- t.Errorf("%v: metric missing", e)
+- continue
+- }
+- if act, ok := a["type"].(string); !ok || act != typ {
+- t.Errorf("%v: unexpected type: %v (expected %v)", e, act, typ)
+- continue
+- }
+- found++
+- }
+- }
+- if len(act) != found {
+- t.Errorf("unexpected extra metrics, expected %d, got %d", found, len(act))
+- for a, ty := range act {
+- found := false
+- for _, es := range exp {
+- for _, e := range es {
+- if a == e {
+- found = true
+- }
+- }
+- }
+- if !found {
+- t.Errorf("unexpected metric: %v (type: %v)", a, ty)
+- }
+- }
+- }
+-}
+diff --git a/internal/prometheus/prometheus_test.go b/internal/prometheus/prometheus_test.go
+index 7f2c73f441..4f09f866bb 100644
+--- a/internal/prometheus/prometheus_test.go
++++ b/internal/prometheus/prometheus_test.go
+@@ -1,11 +1,10 @@
+ // Copyright 2022 The OPA Authors. All rights reserved.
+ // Use of this source code is governed by an Apache2
+ // license that can be found in the LICENSE file.
+-
+-// NOTE(an): Different go runtime metrics on 1.20.
+-// This can be removed when we drop support for go 1.19.
+-//go:build go1.20
+-// +build go1.20
++//
++// NOTE(sr): Different go runtime metrics on 1.20 vs 1.22.
++// Let's only test these on 1.22.
++//go:build go1.22
+
+ package prometheus
+
+@@ -137,6 +136,13 @@ func TestJSONSerialization(t *testing.T) {
+ "go_godebug_non_default_behavior_x509usefallbackroots_events_total",
+ "go_godebug_non_default_behavior_zipinsecurepath_events_total",
+ "go_godebug_non_default_behavior_tlsmaxrsasize_events_total",
++ "go_godebug_non_default_behavior_gotypesalias_events_total", // BEGIN added in 1.22
++ "go_godebug_non_default_behavior_tlsunsafeekm_events_total",
++ "go_godebug_non_default_behavior_httplaxcontentlength_events_total",
++ "go_godebug_non_default_behavior_x509usepolicies_events_total",
++ "go_godebug_non_default_behavior_tls10server_events_total",
++ "go_godebug_non_default_behavior_httpmuxgo121_events_total",
++ "go_godebug_non_default_behavior_tlsrsakex_events_total",
+ },
+ "SUMMARY": {
+ "go_gc_duration_seconds",
+@@ -146,6 +152,10 @@ func TestJSONSerialization(t *testing.T) {
+ "go_gc_heap_allocs_by_size_bytes", // was: "go_gc_heap_allocs_by_size_bytes_total"
+ "go_gc_heap_frees_by_size_bytes", // was: "go_gc_heap_frees_by_size_bytes_total"
+ "go_sched_latencies_seconds",
++ "go_sched_pauses_stopping_other_seconds", // BEGIN added in 1.22
++ "go_sched_pauses_stopping_gc_seconds",
++ "go_sched_pauses_total_gc_seconds",
++ "go_sched_pauses_total_other_seconds",
+ },
+ }
+ found := 0
+diff --git a/topdown/tokens_test.go b/topdown/tokens_test.go
+index 975a78461c..d3f482cb00 100644
+--- a/topdown/tokens_test.go
++++ b/topdown/tokens_test.go
+@@ -10,7 +10,6 @@ import (
+ "encoding/json"
+ "fmt"
+ "os"
+- "runtime"
+ "strings"
+ "testing"
+ "time"
+@@ -472,12 +471,7 @@ func TestTopdownJWTEncodeSignECWithSeedReturnsSameSignature(t *testing.T) {
+ "d":"jpsQnnGQmL-YBIffH1136cspYG6-0iY7X1fCE9-E9LI"
+ }, x)`
+
+- // go1.20 and beyond
+ encodedSigned := "eyJhbGciOiAiRVMyNTYifQ.eyJwYXkiOiAibG9hZCJ9.GRp6wIqDZuYnvQH50hnIy559LdrjUux76v1ynxX6lH0XtlgwreyR16x2JMnuElo79X3zUbqlWrZITICv86arew"
+- if strings.HasPrefix(runtime.Version(), "go1.19") { // we don't use go1.18 anymore
+- encodedSigned = "eyJhbGciOiAiRVMyNTYifQ.eyJwYXkiOiAibG9hZCJ9.05wmHY3NomU1jr7yvusBvKwhthRklPuJhUPOkoeIn5e5n_GXvE25EfRs9AJK2wOy6NoY2ljhj07M9BMtV0dfyA"
+- }
+-
+ for i := 0; i < 10; i++ {
+ q := NewQuery(ast.MustParseBody(query)).
+ WithSeed(&cng{}).
diff --git a/testing/opcr-policy/APKBUILD b/testing/opcr-policy/APKBUILD
new file mode 100644
index 00000000000..4d3333a11d6
--- /dev/null
+++ b/testing/opcr-policy/APKBUILD
@@ -0,0 +1,37 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=opcr-policy
+pkgver=0.2.9
+pkgrel=2
+pkgdesc="CLI for building, versioning and publishing authorization policies"
+url="https://www.openpolicycontainers.com/"
+arch="all"
+license="Apache-2.0"
+makedepends="go"
+source="$pkgname-$pkgver.tar.gz::https://github.com/opcr-io/policy/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/policy-$pkgver"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ local _goldflags="
+ -X github.com/opcr-io/policy/pkg/version.ver=$pkgver
+ -X github.com/opcr-io/policy/pkg/version.commit=AlpineLinux
+ -X github.com/opcr-io/policy/pkg/version.date=$(date -u "+%Y-%m-%dT%H:%M:%SZ" ${SOURCE_DATE_EPOCH:+-d @$SOURCE_DATE_EPOCH})
+ "
+
+ go build -v -ldflags "$_goldflags" ./cmd/policy/
+}
+
+check() {
+ go test ./...
+}
+
+package() {
+ install -Dm755 policy -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+761d650b69c1eebc166b66660a3ac28686e3c69121890bc2c691db5ce0c116e6dc12343927b3302da8ded9be250721d3eeef423dbfeed08de7bb27e98e6ec589 opcr-policy-0.2.9.tar.gz
+"
diff --git a/testing/opencascade/APKBUILD b/testing/opencascade/APKBUILD
deleted file mode 100644
index 5387554dfe0..00000000000
--- a/testing/opencascade/APKBUILD
+++ /dev/null
@@ -1,68 +0,0 @@
-# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
-# Contributor: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
-pkgname=opencascade
-pkgver=7.6.2
-pkgrel=0
-pkgdesc="An SDK for development of applications dealing with 3D CAD data"
-url="https://dev.opencascade.org/"
-# s390x blocked by vtk -> netcdf
-arch="all !s390x"
-license="LGPL-2.1-only"
-makedepends="
- cmake
- doxygen
- freeimage-dev
- freetype-dev
- libtbb
- libtbb-dev
- libxi-dev
- libxmu-dev
- mesa-dev
- ninja
- tk
- tk-dev
- vtk-dev
- "
-subpackages="$pkgname-doc $pkgname-dev"
-# remove updatecache on next update
-source="$pkgname-$pkgver-updatecache.tar.gz::https://github.com/Open-Cascade-SAS/OCCT/archive/refs/tags/V${pkgver//./_}.tar.gz
- no_mallinfo.patch
- no_feenableexcept.patch
- cmake_fix_install_dir.patch
- cmake_add_buildtype_none.patch
- no_backtrace.patch
- fix-tbb-2021.patch
- "
-builddir="$srcdir/OCCT-${pkgver//./_}"
-options="!check" # No tests provided :-/
-
-build() {
- # Disabling ffmpeg for now, as VTK already uses ffmpeg in version 5, while OCC only
- # builds with ffmpeg4 right now. vtk-dev depends on ffmpeg-dev which conflics with
- # ffmpeg4-dev. Once patched to build with ffmpeg-dev (not ffmpeg4-dev), ffmpeg support
- # should be re-enabled.
- cmake -B build -G Ninja \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DUSE_GL2PS=OFF \
- -DUSE_FREEIMAGE=ON \
- -DUSE_FFMPEG=OFF \
- -DUSE_VTK=ON \
- -DUSE_TBB=ON \
- -D3RDPARTY_VTK_INCLUDE_DIR=/usr/include/vtk-9.1/
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-
-sha512sums="
-1339889bb721ff43af00ba0048f0ca41fd5e424339ca6ff147436f67629ce360cfb0a623896608554872a1cfab67e8bcb8df066f4d1458da914aef70ffed0960 opencascade-7.6.2-updatecache.tar.gz
-e04cb898ec16c57ea5f2e9e79f6616153b7f6e4ddcad815f5d28898a692e26e1054a8f3321e6ee8616a915b10d45927f5e596c4f096c5333be910eaea751cce3 no_mallinfo.patch
-b039b8fce696bfd0f53309a72adab4065780bf1755da6208040157e9383deb0061ad8927a6f160730f431cbebe3fdd1eaa7967b38da4a245a8d9306042d97629 no_feenableexcept.patch
-10481f153adf1db55111d68da49dae1885a50e745d3a978f6316b5b13a3f2d7de6a2ed6a3c60c20ef967ea65c16b372da03bf2665ffe4493ad6fe329a3abf368 cmake_fix_install_dir.patch
-4bdedc8f0e011530115777cddeeb898750242999725347c3392d8858e5cc9543c791814aa41e1543c575a6a79b0b32fd72970bb83c8948fe42f33993244db1cf cmake_add_buildtype_none.patch
-86dceb6e8309e18f5ea72ce2e3524ff08dc761ffe76557d62a1a4f2824ca0e2f9dfc194cae22164aaaf5ad9a15a6ec0f1fef443241aa2ccb0a2140de217c8a90 no_backtrace.patch
-80a5fdfec8159bfcfa2dce8f6635c8567eef64b0b142046ed2b7fc7a77849d14ae9b588b04daf5b5789d18130cbc40c5396af22787f38d8cd425f9f53d1fff9c fix-tbb-2021.patch
-"
diff --git a/testing/opencascade/cmake_add_buildtype_none.patch b/testing/opencascade/cmake_add_buildtype_none.patch
deleted file mode 100644
index cabe4055a65..00000000000
--- a/testing/opencascade/cmake_add_buildtype_none.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 1c6a41b..ff973e8 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -4,7 +4,7 @@ set (CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/adm/cmake")
-
- set (CMAKE_SUPPRESS_REGENERATION TRUE)
-
--set (CMAKE_CONFIGURATION_TYPES Release Debug RelWithDebInfo CACHE INTERNAL "" FORCE)
-+set (CMAKE_CONFIGURATION_TYPES Release Debug RelWithDebInfo None CACHE INTERNAL "" FORCE)
-
- # macro: include patched file if it exists
- macro (OCCT_INCLUDE_CMAKE_FILE BEING_INCLUDED_FILE)
diff --git a/testing/opencascade/cmake_fix_install_dir.patch b/testing/opencascade/cmake_fix_install_dir.patch
deleted file mode 100644
index f7340a97a79..00000000000
--- a/testing/opencascade/cmake_fix_install_dir.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-Fixes:
-> CMake Error at cmake_install.cmake:8340 (configure_file):
-> configure_file Problem configuring file
-First posted on Arch Linux
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 0b445de..1c6a41b 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -1122,7 +1122,7 @@ foreach (OCCT_CONFIGURATION ${CMAKE_CONFIGURATION_TYPES})
- endforeach()
- # install OpenCASCADE config file with compile definitions and C/C++ flags ONLY for current configuration
- install (CODE "string (TOLOWER \"\${CMAKE_INSTALL_CONFIG_NAME}\" CMAKE_INSTALL_CONFIG_NAME_LOWER)")
--install (CODE "configure_file(\"${CMAKE_BINARY_DIR}/OpenCASCADECompileDefinitionsAndFlags-\${CMAKE_INSTALL_CONFIG_NAME_LOWER}.cmake\" \"${INSTALL_DIR}/${INSTALL_DIR_CMAKE}/OpenCASCADECompileDefinitionsAndFlags-\${CMAKE_INSTALL_CONFIG_NAME_LOWER}.cmake\" COPYONLY)")
-+install (CODE "configure_file(\"${CMAKE_BINARY_DIR}/OpenCASCADECompileDefinitionsAndFlags-\${CMAKE_INSTALL_CONFIG_NAME_LOWER}.cmake\" \"\$ENV{DESTDIR}${INSTALL_DIR}/${INSTALL_DIR_CMAKE}/OpenCASCADECompileDefinitionsAndFlags-\${CMAKE_INSTALL_CONFIG_NAME_LOWER}.cmake\" COPYONLY)")
-
- foreach (OCCT_MODULE ${OCCT_MODULES})
- if (BUILD_MODULE_${OCCT_MODULE})
-diff --git a/adm/cmake/occt_macros.cmake b/adm/cmake/occt_macros.cmake
-index 8220ecd..d1ceea6 100644
---- a/adm/cmake/occt_macros.cmake
-+++ b/adm/cmake/occt_macros.cmake
-@@ -598,7 +598,7 @@ macro (OCCT_UPDATE_TARGET_FILE)
- "cmake_policy(PUSH)
- cmake_policy(SET CMP0007 NEW)
- string (TOLOWER \"\${CMAKE_INSTALL_CONFIG_NAME}\" CMAKE_INSTALL_CONFIG_NAME_LOWERCASE)
-- file (GLOB ALL_OCCT_TARGET_FILES \"${INSTALL_DIR}/${INSTALL_DIR_CMAKE}/OpenCASCADE*Targets-\${CMAKE_INSTALL_CONFIG_NAME_LOWERCASE}.cmake\")
-+ file (GLOB ALL_OCCT_TARGET_FILES \"\$ENV{DESTDIR}${INSTALL_DIR}/${INSTALL_DIR_CMAKE}/OpenCASCADE*Targets-\${CMAKE_INSTALL_CONFIG_NAME_LOWERCASE}.cmake\")
- foreach(TARGET_FILENAME \${ALL_OCCT_TARGET_FILES})
- file (STRINGS \"\${TARGET_FILENAME}\" TARGET_FILE_CONTENT)
- file (REMOVE \"\${TARGET_FILENAME}\")
diff --git a/testing/opencascade/fix-tbb-2021.patch b/testing/opencascade/fix-tbb-2021.patch
deleted file mode 100644
index 1487ea0a709..00000000000
--- a/testing/opencascade/fix-tbb-2021.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-X-Git-Url: http://git.dev.opencascade.org/gitweb/?p=occt.git;a=blobdiff_plain;f=src%2FOSD%2FOSD_Parallel_TBB.cxx;h=0b9022b57630b98a47ed090eff8233c5d15148bb;hp=2344a6ca2df9c2d01c8a73579060c9cb44d3d789;hb=740833a6a88e481f474783c426b6f6311ed586d3;hpb=20095306111bc6e035c001e719231a894bdd6882
-
-diff --git a/src/OSD/OSD_Parallel_TBB.cxx b/src/OSD/OSD_Parallel_TBB.cxx
-index 2344a6ca2d..0b9022b576 100644
---- a/src/OSD/OSD_Parallel_TBB.cxx
-+++ b/src/OSD/OSD_Parallel_TBB.cxx
-@@ -25,7 +25,9 @@ Standard_DISABLE_DEPRECATION_WARNINGS
- #include <tbb/parallel_for.h>
- #include <tbb/parallel_for_each.h>
- #include <tbb/blocked_range.h>
--#include <tbb/task_scheduler_init.h>
-+#if TBB_VERSION_MAJOR < 2021
-+ #include <tbb/task_scheduler_init.h>
-+#endif
- Standard_ENABLE_DEPRECATION_WARNINGS
-
- //=======================================================================
-@@ -38,12 +40,16 @@ void OSD_Parallel::forEachExternal (UniversalIterator& theBegin,
- const FunctorInterface& theFunctor,
- Standard_Integer theNbItems)
- {
-+#if TBB_VERSION_MAJOR >= 2021
-+ // task_scheduler_init is removed,
-+ // exceptions are captured without proxy tbb::captured_exception object
-+ (void )theNbItems;
-+ tbb::parallel_for_each (theBegin, theEnd, theFunctor);
-+#else
- try
- {
- const Handle(OSD_ThreadPool)& aThreadPool = OSD_ThreadPool::DefaultPool();
-- const Standard_Integer aNbThreads = theNbItems > 0 ?
-- aThreadPool->NbDefaultThreadsToLaunch() : -1;
--
-+ const Standard_Integer aNbThreads = theNbItems > 0 ? aThreadPool->NbDefaultThreadsToLaunch() : -1;
- tbb::task_scheduler_init aScheduler (aNbThreads);
- tbb::parallel_for_each (theBegin, theEnd, theFunctor);
- }
-@@ -51,6 +57,7 @@ void OSD_Parallel::forEachExternal (UniversalIterator& theBegin,
- {
- throw Standard_ProgramError (anException.what());
- }
-+#endif
- }
-
- #endif /* HAVE_TBB */
diff --git a/testing/opencascade/no_backtrace.patch b/testing/opencascade/no_backtrace.patch
deleted file mode 100644
index efa47ba076d..00000000000
--- a/testing/opencascade/no_backtrace.patch
+++ /dev/null
@@ -1,63 +0,0 @@
---- ./src/Standard/Standard_StackTrace.cxx
-+++ ./src/Standard/Standard_StackTrace.cxx
-@@ -30,7 +30,6 @@
- #elif defined(__QNX__)
- //#include <backtrace.h> // requires linking to libbacktrace
- #elif !defined(_WIN32) && !(defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE)
-- #include <execinfo.h>
- #elif defined(_WIN32) && !defined(OCCT_UWP)
-
- #include <Standard_WarningsDisable.hxx>
-@@ -314,51 +313,6 @@
- return false;
- #endif
- #else
-- const int aTopSkip = theNbTopSkip + 1; // skip this function call and specified extra number
-- int aNbTraces = theNbTraces + aTopSkip;
-- void** aStackArr = (void** )alloca (sizeof(void*) * aNbTraces);
-- if (aStackArr == NULL)
-- {
-- return false;
-- }
--
-- aNbTraces = ::backtrace (aStackArr, aNbTraces);
-- if (aNbTraces <= 1)
-- {
-- return false;
-- }
--
-- aNbTraces -= aTopSkip;
-- char** aStrings = ::backtrace_symbols (aStackArr + aTopSkip, aNbTraces);
-- if (aStrings == NULL)
-- {
-- return false;
-- }
--
-- const size_t aLenInit = strlen (theBuffer);
-- size_t aLimit = (size_t) theBufferSize - aLenInit - 1;
-- if (aLimit > 14)
-- {
-- strcat (theBuffer, "\n==Backtrace==");
-- aLimit -= 14;
-- }
-- for (int aLineIter = 0; aLineIter < aNbTraces; ++aLineIter)
-- {
-- const size_t aLen = strlen (aStrings[aLineIter]);
-- if (aLen + 1 >= aLimit)
-- {
-- break;
-- }
--
-- strcat (theBuffer, "\n");
-- strcat (theBuffer, aStrings[aLineIter]);
-- aLimit -= aLen + 1;
-- }
-- free (aStrings);
-- if (aLimit > 14)
-- {
-- strcat (theBuffer, "\n=============");
-- }
-- return true;
-+ return false;
- #endif
- }
diff --git a/testing/opencascade/no_feenableexcept.patch b/testing/opencascade/no_feenableexcept.patch
deleted file mode 100644
index 21d9e699e6a..00000000000
--- a/testing/opencascade/no_feenableexcept.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-musl does not provice feenableexcept and fedisableexcept. Those calls have
-only been used on linux so far. This patch extends the #ifdef logic to only use
-them on Linux if additionally glibc is used.
---- occt-V7_4_0-org/src/OSD/OSD_signal.cxx
-+++ occt-V7_4_0/src/OSD/OSD_signal.cxx
-@@ -678,7 +678,7 @@
- // POSIX threads
- #include <pthread.h>
-
--#ifdef __linux__
-+#ifdef __linux__ && defined(__GLIBC__)
- #include <cfenv>
- //#include <fenv.h>
- #endif
-@@ -793,7 +793,7 @@
- case SIGFPE:
- sigaddset(&set, SIGFPE);
- sigprocmask(SIG_UNBLOCK, &set, NULL) ;
--#ifdef __linux__
-+#ifdef __linux__ && defined(__GLIBC__)
- OSD::SetFloatingSignal (Standard_True);
- #endif
- #if (!defined (__sun)) && (!defined(SOLARIS))
-@@ -914,7 +914,7 @@
- //=======================================================================
- void OSD::SetFloatingSignal (Standard_Boolean theFloatingSignal)
- {
--#if defined (__linux__)
-+#if defined (__linux__) && defined(__GLIBC__)
- feclearexcept (FE_ALL_EXCEPT);
- if (theFloatingSignal)
- {
-@@ -947,7 +947,7 @@
- //=======================================================================
- Standard_Boolean OSD::ToCatchFloatingSignals()
- {
--#if defined (__linux__)
-+#if defined (__linux__) && defined(__GLIBC__)
- return (fegetexcept() & _OSD_FPX) != 0;
- #else
- return Standard_False;
diff --git a/testing/opencascade/no_mallinfo.patch b/testing/opencascade/no_mallinfo.patch
deleted file mode 100644
index 12301ab0904..00000000000
--- a/testing/opencascade/no_mallinfo.patch
+++ /dev/null
@@ -1,61 +0,0 @@
---- ./src/OSD/OSD_MemInfo.cxx.old
-+++ ./src/OSD/OSD_MemInfo.cxx
-@@ -35,6 +35,9 @@
- #include <sstream>
- #include <fstream>
-
-+#include <sys/time.h>
-+#include <sys/resource.h>
-+
- #include <OSD_MemInfo.hxx>
-
- #if defined(__EMSCRIPTEN__)
-@@ -161,18 +164,22 @@
- || IsActive (MemWorkingSetPeak))
- {
- // /proc/%d/status is not emulated - get more info from mallinfo()
-- const struct mallinfo aMI = mallinfo();
-+ // mallinfo() not available with musl. We use getrusage to approximate it
-+ // with the maximum resident set size
-+ struct rusage ru = { .ru_maxrss = 0 };
-+ getrusage(RUSAGE_SELF, &ru);
- if (IsActive (MemHeapUsage))
- {
-- myCounters[MemHeapUsage] = aMI.uordblks;
-+ myCounters[MemHeapUsage] = ru.ru_maxrss;
- }
- if (IsActive (MemWorkingSet))
- {
-- myCounters[MemWorkingSet] = aMI.uordblks;
-+ myCounters[MemWorkingSet] = ru.ru_maxrss;
- }
- if (IsActive (MemWorkingSetPeak))
- {
-- myCounters[MemWorkingSetPeak] = aMI.usmblks;
-+ //usmblks is always 0
-+ myCounters[MemWorkingSetPeak] = 0;
- }
- }
- if (IsActive (MemVirtual))
-@@ -182,18 +189,9 @@
- #elif (defined(__linux__) || defined(__linux))
- if (IsActive (MemHeapUsage))
- {
-- #if defined(__GLIBC__) && defined(__GLIBC_PREREQ)
-- #if __GLIBC_PREREQ(2,33)
-- #define HAS_MALLINFO2
-- #endif
-- #endif
--
-- #ifdef HAS_MALLINFO2
-- const struct mallinfo2 aMI = mallinfo2();
-- #else
-- const struct mallinfo aMI = mallinfo();
-- #endif
-- myCounters[MemHeapUsage] = aMI.uordblks;
-+ struct rusage ru = { .ru_maxrss = 0 };
-+ getrusage(RUSAGE_SELF, &ru);
-+ myCounters[MemHeapUsage] = ru.ru_maxrss;
- }
-
- if (!IsActive (MemVirtual)
diff --git a/testing/opencc/APKBUILD b/testing/opencc/APKBUILD
deleted file mode 100644
index a03d2e0f991..00000000000
--- a/testing/opencc/APKBUILD
+++ /dev/null
@@ -1,49 +0,0 @@
-# Contributor: Ivan Tham <pickfire@riseup.net>
-# Maintainer:
-pkgname=opencc
-_pkgname=OpenCC
-pkgver=1.1.3
-pkgrel=0
-pkgdesc="Open Chinese Convert"
-url="https://opencc.byvoid.com/"
-arch="all"
-license="Apache-2.0"
-makedepends="
- cmake
- doxygen
- libmarisa-dev
- python3
- rapidjson-dev
- tclap-dev
- samurai
- "
-subpackages="$pkgname-dev $pkgname-doc"
-source="https://github.com/BYVoid/opencc/archive/refs/tags/ver.$pkgver/OpenCC-ver.$pkgver.tar.gz"
-builddir="$srcdir/$_pkgname-ver.$pkgver"
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build -G Ninja \
- -DCMAKE_BUILD_TYPE=MinSizeRel \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DBUILD_DOCUMENTATION=ON \
- -DBUILD_TESTING=OFF \
- -DUSE_SYSTEM_MARISA=ON \
- -DUSE_SYSTEM_RAPIDJSON=ON \
- -DUSE_SYSTEM_TCLAP=ON \
- $CMAKE_CROSSOPTS
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-
- mkdir -p "$pkgdir"/usr/share/doc
- mv "$pkgdir"/usr/share/opencc/doc "$pkgdir"/usr/share/doc/opencc
-}
-
-sha512sums="
-90da656fa4790c58932ad2240a076cc4a9e8cf70ac73d83e0d299e84472deb6491a823966a7686ed1487ef8405909981b9a12b661d8de7f086bd4b498594abac OpenCC-ver.1.1.3.tar.gz
-"
diff --git a/testing/opencl-clang/APKBUILD b/testing/opencl-clang/APKBUILD
deleted file mode 100644
index 0ffe72af3e7..00000000000
--- a/testing/opencl-clang/APKBUILD
+++ /dev/null
@@ -1,39 +0,0 @@
-# Contributor: Dennis Krupenik <dennis@krupenik.com>
-# Maintainer: Dennis Krupenik <dennis@krupenik.com>
-pkgname=opencl-clang
-pkgver=12.0.0
-pkgrel=1
-pkgdesc="opencl-clang is a thin wrapper library around clang"
-url="https://github.com/intel/opencl-clang"
-arch="x86_64"
-license="NCSA"
-depends_dev="spirv-llvm-translator-dev"
-_llvmver=12
-makedepends="$depends_dev clang-static cmake llvm-static~$_llvmver"
-subpackages="$pkgname-dev"
-source="https://github.com/intel/opencl-clang/archive/v$pkgver/$pkgname-$pkgver.tar.gz
- cl_headers-clang-include.patch
- "
-options="!check" # no check in upstream
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_BUILD_TYPE=None \
- -DBUILD_SHARED_LIBS=True \
- -DPREFERRED_LLVM_VERSION="$_llvmver" \
- $CMAKE_CROSSOPTS .
- make -C build
-}
-
-package() {
- make -C build DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-7fa05480b10be97dd784b8fb7579a2471cf3a904facd9949a980602085515bb3d42a042c74db80381771ad18f78bed2efdcb09538a865ac4a600d6190b8f9c31 opencl-clang-12.0.0.tar.gz
-87cbb5e5dfe289971d4aa979faae57cbd2b994f1543e819be07626990388b40c70610f437f0a3825c6aa2361cc88827eae4f15e3fedc979b64afb6f7e72f9a6e cl_headers-clang-include.patch
-"
diff --git a/testing/opencl-clang/cl_headers-clang-include.patch b/testing/opencl-clang/cl_headers-clang-include.patch
deleted file mode 100644
index 54c2eb433ca..00000000000
--- a/testing/opencl-clang/cl_headers-clang-include.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-we use different LLVM/Clang includes layout
----
---- a/cl_headers/CMakeLists.txt
-+++ b/cl_headers/CMakeLists.txt
-@@ -13,7 +13,7 @@
-
- if(USE_PREBUILT_LLVM)
- set(OPENCL_HEADERS_DIR
-- "${LLVM_LIBRARY_DIRS}/clang/${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR}.${LLVM_VERSION_PATCH}/include/")
-+ "/usr/lib/clang/${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR}.${LLVM_VERSION_PATCH}/include/")
- else(USE_PREBUILT_LLVM)
- set(OPENCL_HEADERS_DIR "${CLANG_SOURCE_DIR}/lib/Headers")
- endif(USE_PREBUILT_LLVM)
diff --git a/testing/opencsg/APKBUILD b/testing/opencsg/APKBUILD
deleted file mode 100644
index 71a5a89f723..00000000000
--- a/testing/opencsg/APKBUILD
+++ /dev/null
@@ -1,34 +0,0 @@
-# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
-pkgname=opencsg
-pkgver=1.4.2
-pkgrel=1
-pkgdesc="A library that does image-based CSG rendering using OpenGL"
-url="http://www.opencsg.org/"
-arch="all"
-license="GPL-2.0-only"
-subpackages="$pkgname-dev $pkgname-example"
-makedepends="glew-dev freeglut-dev"
-source="http://www.opencsg.org/OpenCSG-$pkgver.tar.gz"
-builddir="$srcdir/OpenCSG-$pkgver"
-
-build() {
- make -j1
-}
-
-check() {
- make check
-}
-
-package() {
- for folder in src example; do
- sed -e 's/\/usr\/local\//\/usr\//g' -i $folder/Makefile
- make INSTALL_ROOT="$pkgdir" install -j 1 -C $folder
- done
-}
-
-example() {
- mkdir -p "$subpkgdir"/usr/
- mv "$pkgdir"/usr/bin "$subpkgdir"/usr/
-}
-
-sha512sums="fbe6f925982717ecca7bd0eacc4fc5b362c80c7663b1ff0d9a228f2b5e1d3625d3e6d324d9e634665c74e9c0fc37d10290ece293e59a3eba67035b6b700b7778 OpenCSG-1.4.2.tar.gz"
diff --git a/testing/opendht/APKBUILD b/testing/opendht/APKBUILD
index aa47c7adbd6..37fdb53e1d7 100644
--- a/testing/opendht/APKBUILD
+++ b/testing/opendht/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Gavin Henry <ghenry@sentrypeer.org>
# Maintainer: Gavin Henry <ghenry@sentrypeer.org>
pkgname=opendht
-pkgver=2.4.4
-pkgrel=0
+pkgver=3.1.7
+pkgrel=2
pkgdesc="C++17 Distributed Hash Table implementation"
url="https://github.com/savoirfairelinux/opendht"
arch="all"
@@ -12,25 +12,31 @@ makedepends="
asio-dev
cmake
cython
+ fmt-dev
gnutls-dev
+ http-parser-dev
jsoncpp-dev
msgpack-cxx-dev
nettle-dev
+ openssl-dev
py3-setuptools
python3-dev
readline-dev
+ restinio-dev
samurai
"
-subpackages="$pkgname-static py3-$pkgname:_py3 $pkgname-libs $pkgname-dev $pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/savoirfairelinux/opendht/archive/refs/tags/$pkgver.tar.gz"
-
-[ "$CARCH" = "riscv64" ] && options="$options textrels"
+checkdepends="cppunit-dev"
+depends_dev="fmt-dev"
+subpackages="py3-$pkgname:_py3 $pkgname-libs $pkgname-dev $pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/savoirfairelinux/opendht/archive/refs/tags/v$pkgver.tar.gz"
+# tests require a quiet environment or network reads don't match
+options="!check"
build() {
if [ "$CBUILD" != "$CHOST" ]; then
CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
fi
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
-DBUILD_SHARED_LIBS=True \
@@ -38,14 +44,15 @@ build() {
-DOPENDHT_C=ON \
-DOPENDHT_TOOLS=ON \
-DOPENDHT_PYTHON=ON \
- -G Ninja \
+ -DOPENDHT_HTTP=ON \
+ -DOPENDHT_PUSH_NOTIFICATIONS=ON \
+ -DBUILD_TESTING="$(want_check && echo ON || echo OFF)" \
$CMAKE_CROSSOPTS .
cmake --build build
}
check() {
- cd build
- CTEST_OUTPUT_ON_FAILURE=TRUE ctest
+ ctest --test-dir build --output-on-failure
}
package() {
@@ -64,5 +71,5 @@ _py3() {
}
sha512sums="
-f6d665485a4a82b292dc50e3da4a5e281d3e99e8735d7537d7426cd4efa8d70ba8137e4d9eb0feaae5373af431b165443d516f32296c107366614f587b78f338 opendht-2.4.4.tar.gz
+c89e8276520f94daa31a5c07e6725ba6b8f3daa2fa118914f61394b879b63dce2e0ab462e35af31d40ebd15d1feb119236b4a791dff683486ed7ccd1d0589756 opendht-3.1.7.tar.gz
"
diff --git a/testing/openfire/APKBUILD b/testing/openfire/APKBUILD
deleted file mode 100644
index fa167178777..00000000000
--- a/testing/openfire/APKBUILD
+++ /dev/null
@@ -1,86 +0,0 @@
-# Contributor: Taner Tas <taner76@gmail.com>
-# Maintainer: Taner Tas <taner76@gmail.com>
-pkgname=openfire
-pkgver=4.7.1
-pkgrel=0
-pkgdesc="Openfire is a cross-platform real-time collaboration server based on the XMPP (Jabber) protocol."
-url="https://www.igniterealtime.org/projects/openfire/"
-# riscv64 blocked by openjdk8
-arch="all !riscv64"
-license="Apache-2.0"
-depends="java-jre-headless"
-makedepends="maven"
-subpackages="$pkgname-plugins::noarch $pkgname-openrc"
-source="
- $pkgname-$pkgver.tar.gz::https://github.com/igniterealtime/Openfire/archive/refs/tags/v$pkgver.tar.gz
- $pkgname.initd
- $pkgname.confd
- $pkgname.logrotate
- "
-pkgusers="openfire"
-pkggroups="openfire"
-install="
- $pkgname.pre-install
- openfire.post-install
- openfire.post-upgrade
- "
-options="net !check" # No test suite
-_ofhome="/var/lib/openfire"
-builddir="$srcdir/Openfire-$pkgver"
-
-build() {
- rm -rf distribution/src/nativeAuth
- make
-}
-
-package() {
- install -dm0755 "$pkgdir/$_ofhome"
- install -dm0755 "$pkgdir/$_ofhome"/plugins
-
- cp -r distribution/target/distribution-base/conf "$pkgdir/$_ofhome"/
- cp -r distribution/target/distribution-base/lib "$pkgdir/$_ofhome"/
- cp -r distribution/target/distribution-base/resources "$pkgdir/$_ofhome"/
- cp -r distribution/target/distribution-base/plugins/admin "$pkgdir/$_ofhome"/plugins/
-
- find "$pkgdir" -type f -exec chmod 0644 {} \;
- find "$pkgdir" -type d -exec chmod 0755 {} \;
- find "$pkgdir" -type d -exec chmod u-s,g-s {} \;
-
- chmod 0700 "$pkgdir/$_ofhome"/conf \
- "$pkgdir/$_ofhome"/resources/security
-
- cd "$pkgdir/$_ofhome"/conf
- for i in openfire.xml security.xml
- do
- mv "$i" "$i".default
- chmod 0600 "$i".default
- done
-
- cd "$pkgdir/$_ofhome"/resources/security
- for i in client.truststore keystore truststore
- do
- mv "$i" "$i".default
- chmod 0600 "$i".default
- done
-
- chown -R $pkgusers:$pkggroups "$pkgdir/$_ofhome"
-
- install -Dm0755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
- install -Dm0644 "$srcdir"/$pkgname.confd "$pkgdir"/etc/conf.d/$pkgname
- install -Dm0644 "$srcdir"/$pkgname.logrotate "$pkgdir"/etc/logrotate.d/$pkgname
-
-}
-
-plugins() {
- cd "$builddir"
- install -dm755 "$subpkgdir/$_ofhome"/plugins
- cp distribution/target/distribution-base/plugins/*.jar "$subpkgdir/$_ofhome"/plugins/
- chown -R $pkgusers:$pkggroups "$subpkgdir/$_ofhome"
-}
-
-sha512sums="
-7da8143a67df5cfb9cb4d0653e7cd06240f0421c1e8c10055545162353a17422a7e7b60274f67270c4d79e3adba140ec2c88a4bcb1814f83dec4dbd428236db9 openfire-4.7.1.tar.gz
-95a486898b84c4b7b0e3a60ceb7ccbb5d383451228b9c5090dc58513afc9513095e6c124e2ef170912376a7179d058b106d3bbd69db7b7204ff5f1be13823bdc openfire.initd
-e952b1dbf10df6c8303f6e71ae08853a1901cbf92f059c3dc927e0085365e6c4752d2c5ddaa9ce1da944a164ee0f29b1057e10a61840814bff3722020253b5bf openfire.confd
-e17684600700c85d366549b7ac9fec64b9abcd1fd53e131e2d5b9d53514865ad0eacb25618dfc6c264af25fb880e761cdd7349bdcbc22c1f65a6fa7444dcd2a7 openfire.logrotate
-"
diff --git a/testing/openfire/openfire.confd b/testing/openfire/openfire.confd
deleted file mode 100644
index d6888b0f8dd..00000000000
--- a/testing/openfire/openfire.confd
+++ /dev/null
@@ -1,6 +0,0 @@
-JAVA_HOME=/usr/lib/jvm/default-jvm
-OPENFIRE_HOME=/var/lib/openfire
-OPENFIRE_CMD="$JAVA_HOME/bin/java"
-OPENFIRE_ARGS="-server -Xmx256m -DopenfireHome=$OPENFIRE_HOME \
- -Dopenfire.lib.dir=$OPENFIRE_HOME/lib -classpath $OPENFIRE_HOME/lib/startup.jar \
- -jar $OPENFIRE_HOME/lib/startup.jar"
diff --git a/testing/openfire/openfire.initd b/testing/openfire/openfire.initd
deleted file mode 100644
index 1a370c9d884..00000000000
--- a/testing/openfire/openfire.initd
+++ /dev/null
@@ -1,24 +0,0 @@
-#!/sbin/openrc-run
-
-depend() {
- need net
- provide jabber-server
-}
-
-start() {
- ebegin "Starting Openfire Server"
- start-stop-daemon \
- --user openfire \
- --background \
- --make-pidfile \
- --pidfile /run/openfire.pid \
- --start \
- --exec $OPENFIRE_CMD -- $OPENFIRE_ARGS > /var/log/openfire.log 2>&1
- eend
-}
-
-stop() {
- ebegin "Stopping Openfire Server"
- start-stop-daemon --pidfile /run/openfire.pid --stop
- eend
-}
diff --git a/testing/openfire/openfire.logrotate b/testing/openfire/openfire.logrotate
deleted file mode 100644
index aa26432c494..00000000000
--- a/testing/openfire/openfire.logrotate
+++ /dev/null
@@ -1,8 +0,0 @@
-/var/lib/openfire/log/* {
- size 1M
- missingok
- notifempty
- copytruncate
- rotate 7
- compress
-}
diff --git a/testing/openfire/openfire.post-install b/testing/openfire/openfire.post-install
deleted file mode 100755
index 9b2a66fae80..00000000000
--- a/testing/openfire/openfire.post-install
+++ /dev/null
@@ -1,18 +0,0 @@
-#!/bin/sh
-
-_ofhome=/var/lib/openfire
-
-for conf in "$_ofhome"/conf/openfire.xml \
- "$_ofhome"/conf/security.xml \
- "$_ofhome"/resources/security/client.truststore \
- "$_ofhome"/resources/security/keystore \
- "$_ofhome"/resources/security/truststore
-do
- if [ -f "$conf" ]
- then
- printf "$conf exists. Not creating new one. \n\n"
- else
- printf "Copying new $conf \n"
- cp -av "$conf".default "$conf" || printf "Copying new $conf failed. \n\n"
- fi
-done
diff --git a/testing/openfire/openfire.post-upgrade b/testing/openfire/openfire.post-upgrade
deleted file mode 120000
index d373752edb9..00000000000
--- a/testing/openfire/openfire.post-upgrade
+++ /dev/null
@@ -1 +0,0 @@
-openfire.post-install \ No newline at end of file
diff --git a/testing/openfire/openfire.pre-install b/testing/openfire/openfire.pre-install
deleted file mode 100755
index 929ee1b5a2b..00000000000
--- a/testing/openfire/openfire.pre-install
+++ /dev/null
@@ -1,6 +0,0 @@
-#!/bin/sh
-
-addgroup -S openfire 2>/dev/null
-adduser -S -D -H -h /var/lib/openfire -G openfire -g openfire openfire 2>/dev/null
-
-exit 0
diff --git a/testing/openfortivpn/APKBUILD b/testing/openfortivpn/APKBUILD
index 32a6e6c5896..4e1970ac33a 100644
--- a/testing/openfortivpn/APKBUILD
+++ b/testing/openfortivpn/APKBUILD
@@ -1,16 +1,16 @@
# Maintainer: Taner Tas <taner76@gmail.com>
pkgname=openfortivpn
-pkgver=1.17.2
+pkgver=1.21.0
pkgrel=0
pkgdesc="Openfortivpn is a client for PPP+SSL VPN tunnel services"
url="https://github.com/adrienverge/openfortivpn"
arch="all"
license="GPL-3.0-only"
-depends="ppp"
+depends="ppp-daemon"
makedepends="
autoconf
automake
- openssl-dev
+ openssl-dev>3
"
subpackages="$pkgname-doc"
source="
@@ -37,5 +37,5 @@ package() {
}
sha512sums="
-6e614d709cc1c4d866996f20c600a071120aca5a83fbe7066173e3928292846fb6566b9b51a2d57e7905523b1ea4d3fabf6765935e12bf87986ec0a95e05e7a3 openfortivpn-1.17.2.tar.gz
+9751a1ce2f71fe51f8b15dec76afe600fc659b78a44397df9413ebdba9a77bc861fb75b1eb3540590c777447c15849e19033827cea3b494f2dac8075ec17142d openfortivpn-1.21.0.tar.gz
"
diff --git a/testing/openfpgaloader/APKBUILD b/testing/openfpgaloader/APKBUILD
new file mode 100644
index 00000000000..6a5494c461f
--- /dev/null
+++ b/testing/openfpgaloader/APKBUILD
@@ -0,0 +1,43 @@
+# Maintainer: Marian Buschsieweke <marian.buschsieweke@posteo.net>
+pkgname=openfpgaloader
+pkgver=0.11.0
+pkgrel=0
+pkgdesc="Universal utility for programming FPGAs"
+url="https://github.com/trabucayre/openFPGALoader"
+arch="all"
+license="Apache-2.0"
+makedepends="
+ cmake
+ hidapi-dev
+ libftdi1-dev
+ libusb-dev
+ ninja
+ zlib-dev
+ "
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/trabucayre/openFPGALoader/archive/refs/tags/v$pkgver.tar.gz
+ "
+builddir="$srcdir/openFPGALoader-$pkgver"
+
+build() {
+ cmake -B build -G Ninja \
+ -DBUILD_SHARED_LIBS=True \
+ -DCMAKE_BUILD_TYPE=MinSizeRel \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ #
+ cmake --build build
+}
+
+check() {
+ cd build
+ CTEST_OUTPUT_ON_FAILURE=TRUE ctest -j1
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+cffc5f9ae0ffd75c7b7954dc19e348c80c2c847141879b6dfac06efc22fc0f574d9352cbd748553275077364a2086b00af67b5ea11130a6eea3e6f32e01f3f42 openfpgaloader-0.11.0.tar.gz
+"
diff --git a/testing/openh264/APKBUILD b/testing/openh264/APKBUILD
deleted file mode 100644
index a5fa50b1c69..00000000000
--- a/testing/openh264/APKBUILD
+++ /dev/null
@@ -1,30 +0,0 @@
-# Contributor: Martin Schmidt <martin.schmidt13@gmx.de>
-# Maintainer: Martin Schmidt <martin.schmidt13@gmx.de>
-pkgname=openh264
-pkgver=2.1.1
-pkgrel=0
-options="!check"
-pkgdesc="OpenH264 is a codec library which supports H.264 encoding and decoding"
-url="https://github.com/cisco/openh264"
-arch="all"
-license="BSD-2-Clause"
-makedepends="nasm"
-subpackages="$pkgname-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/cisco/openh264/archive/v$pkgver.tar.gz"
-
-build() {
- case "$CARCH" in
- x86)
- export CFLAGS="$CFLAGS -DX86_32_PICASM"
- export CXXFLAGS="$CXXFLAGS -DX86_32_PICASM"
- export ASMFLAGS="$ASMFLAGS -DX86_32_PICASM"
- ;;
- esac
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" PREFIX="/usr" install
-}
-
-sha512sums="f9c2925fa902c6278da40f68b967d25e62db7ce3541e8f5e7a0ee174204b6ecc7026b5853885c361f48ca01d71bacd585fb5b91f01f0c054ece80943f1afcf79 openh264-2.1.1.tar.gz"
diff --git a/testing/openjdk18/APKBUILD b/testing/openjdk18/APKBUILD
deleted file mode 100644
index bc225eb15bf..00000000000
--- a/testing/openjdk18/APKBUILD
+++ /dev/null
@@ -1,298 +0,0 @@
-# Contributor: Simon Frankenberger <simon-alpine@fraho.eu>
-# Maintainer: Simon Frankenberger <simon-alpine@fraho.eu>
-pkgname=openjdk18
-pkgver=18.0.1_p10
-_pkgver=${pkgver%_p*}-ga
-pkgrel=1
-pkgdesc="Oracle OpenJDK 18"
-provider_priority=18
-url="https://github.com/openjdk/jdk18u"
-arch="all !x86 !armhf !armv7 !riscv64" # oracle dropped support for 32 bit
-license="GPL-2.0-with-classpath-exception"
-makedepends="autoconf
- bash
- gawk
- grep
- make
- openjdk17-jdk
- zip
- alsa-lib-dev
- cups-dev
- elfutils-dev
- fontconfig-dev
- freetype-dev
- giflib-dev
- lcms2-dev
- libexecinfo-dev
- libffi-dev
- libjpeg-turbo-dev
- libx11-dev
- libxext-dev
- libxrandr-dev
- libxrender-dev
- libxt-dev
- libxtst-dev
- linux-headers
- zlib-dev"
-depends="$pkgname-jdk $pkgname-demos $pkgname-doc" # for the virtual openjdk18 package
-subpackages="$pkgname-jmods:_jmods:noarch
- $pkgname-demos:_demos:noarch
- $pkgname-doc:_doc:noarch
- $pkgname-jre:_jre
- $pkgname-src:_src:noarch
- $pkgname-jre-headless:_jre_headless
- $pkgname-jdk:_jdk"
-source="jdk-$_pkgver.tar.gz::https://github.com/openjdk/jdk18u/archive/jdk-$_pkgver.tar.gz
- gtest-1.8.1.tar.gz::https://github.com/google/googletest/archive/release-1.8.1.tar.gz
-
- detect-busybox-date-as-gnu-date.patch
- ppc64le.patch
- FixNullPtrCast.patch
-
- HelloWorld.java
- TestECDSA.java
- TestCryptoLevel.java
- Alpine_Bug_10126.java
-"
-builddir="$srcdir/jdk18u-jdk-${_pkgver/+/-}"
-
-_java_home="/usr/lib/jvm/java-18-openjdk"
-
-ldpath="$_java_home/lib:$_java_home/lib/server"
-sonameprefix="$pkgname:"
-
-# enable running the JTReg tests in check?
-# see comment in that function for explanation
-_run_jtreg=${_run_jtreg:-0}
-if [ $_run_jtreg -ne 0 ]; then
- makedepends="$makedepends java-jtreg"
- checkdepends="$checkdepends ttf-freefont xvfb-run"
-fi
-
-prepare() {
- default_prepare
-
- # update autoconf files to detect alpine
- update_config_sub
- update_config_guess
-}
-
-build() {
- if [ $_run_jtreg -ne 0 ]; then
- _with_jtreg="--with-jtreg=/usr/share/java/jtreg"
- else
- _with_jtreg="--with-jtreg=no"
- fi
-
- # CFLAGS, CXXFLAGS and LDFLAGS are ignored as shown by a warning
- # in the output of ./configure unless used like such:
- # --with-extra-cflags="$CFLAGS"
- # --with-extra-cxxflags="$CXXFLAGS"
- # --with-extra-ldflags="$LDFLAGS"
- # See also paragraph "Configure Control Variables" from "common/doc/building.md"
- # shellcheck disable=2097 disable=2098
- CFLAGS='' CXXFLAGS='' LDFLAGS='' \
- bash ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --target=$CTARGET \
- --prefix="$_java_home" \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --infodir=/usr/share/info \
- --localstatedir=/var \
- --with-extra-cflags="$CFLAGS" \
- --with-extra-cxxflags="$CXXFLAGS" \
- --with-extra-ldflags="$LDFLAGS" \
- --with-zlib=system \
- --with-libjpeg=system \
- --with-giflib=system \
- --with-libpng=system \
- --with-lcms=system \
- --with-jobs=${JOBS:-4} \
- --with-test-jobs=${JOBS:-4} \
- --with-native-debug-symbols=none \
- --with-gtest=../googletest-release-1.8.1 \
- $_with_jtreg \
- --disable-warnings-as-errors \
- --disable-precompiled-headers \
- --enable-dtrace=no \
- --with-jvm-variants=server \
- --with-debug-level=release \
- --with-version-pre= \
- --with-version-opt="alpine-r$pkgrel" \
- --with-version-build="${pkgver##*p}" \
- --with-vendor-name="Alpine" \
- --with-vendor-url="https://alpinelinux.org/" \
- --with-vendor-bug-url="https://gitlab.alpinelinux.org/alpine/aports/issues" \
- --with-vendor-vm-bug-url="https://gitlab.alpinelinux.org/alpine/aports/issues"
- MAKEFLAGS='' make jdk-image
-}
-
-check() {
- local _java_bin="./build/linux-*-server-release/images/jdk/bin"
-
- # 1) compile and run a simple hello world
- $_java_bin/javac -d . "$srcdir"/HelloWorld.java
- $_java_bin/java HelloWorld
-
- # 2) compile and run a testcase for unlimited policy
- $_java_bin/javac -d . "$srcdir"/TestCryptoLevel.java
- $_java_bin/java -cp . --add-opens java.base/javax.crypto=ALL-UNNAMED TestCryptoLevel
-
- # 3) compile and run a testcase for ECDSA signatures
- $_java_bin/javac -d . "$srcdir"/TestECDSA.java
- $_java_bin/java TestECDSA
-
- # 4) compile and run testcase for bug 10126
- $_java_bin/javac -d . "$srcdir"/Alpine_Bug_10126.java
- $_java_bin/java Alpine_Bug_10126
-
- # run the gtest unittest suites
- # they don't take long, DO NOT DISABLE THEM!
- MAKEFLAGS='' make test-hotspot-gtest
-
- # The jtreg tests take very, very long to finish and show some failures (9 - 12 on my machine, varying between runs)
- # I think these are not critical and can be safely ignored.
- # As the tests take too long, they are disabled by default.
- # When updating this aport please let them run at least once on your machine to see if the failure count changes.
- if [ $_run_jtreg -ne 0 ]; then
- _logfile=$( mktemp -p "$builddir" )
- MAKEFLAGS='' xvfb-run make \
- run-test-tier1 \
- run-test-tier2 \
- run-test-tier3 \
- | tee "$_logfile"
- msg "---------------------------------------"
- msg "The build log can be found at $_logfile"
- # abort the build so you may take a look at the logfile
- false
- return 1
- fi
-}
-
-package() {
- mkdir -p "$pkgdir/$_java_home"
- cp -r build/linux-*-server-release/images/jdk/* "$pkgdir/$_java_home"
-}
-
-_jmods() {
- pkgdesc="Oracle OpenJDK 18 (jmods)"
- depends=""
- _fromroot="$pkgdir/$_java_home"
- _toroot="$subpkgdir/$_java_home"
-
- mkdir -p "$_toroot"
- mv "$_fromroot/jmods" "$_toroot"
-}
-
-_demos() {
- pkgdesc="Oracle OpenJDK 18 (demos)"
- depends=""
- _fromroot="$pkgdir/$_java_home"
- _toroot="$subpkgdir/$_java_home"
-
- mkdir -p "$_toroot"
- mv "$_fromroot/demo" "$_toroot"
-}
-
-_doc() {
- pkgdesc="Oracle OpenJDK 18 (Documentation)"
- depends=""
- _fromroot="$pkgdir/$_java_home"
- _toroot="$subpkgdir/$_java_home"
-
- mkdir -p "$_toroot"
- mv "$_fromroot/man" "$_toroot"
-}
-
-_jre() {
- pkgdesc="Oracle OpenJDK 18 (JRE)"
- depends="$pkgname-jre-headless"
- provides=java-jre
- _fromroot="$pkgdir/$_java_home"
- _toroot="$subpkgdir/$_java_home"
-
- mkdir -p "$_toroot/lib"
- mv "$_fromroot/lib/libawt_xawt.so" \
- "$_fromroot/lib/libfontmanager.so" \
- "$_fromroot/lib/libjavajpeg.so" \
- "$_fromroot/lib/libjawt.so" \
- "$_fromroot/lib/libjsound.so" \
- "$_fromroot/lib/liblcms.so" \
- "$_fromroot/lib/libsplashscreen.so" \
- "$_toroot/lib"
-}
-
-_src() {
- pkgdesc="Oracle OpenJDK 18 (sources)"
- depends="$pkgname-jre-headless"
- mkdir -p "$subpkgdir/$_java_home"/lib
- mv "$pkgdir"/$_java_home/lib/src.zip \
- "$subpkgdir"/$_java_home/lib/
-}
-
-_jre_headless() {
- pkgdesc="Oracle OpenJDK 18 (JRE headless)"
- depends="java-common java-cacerts"
- provides=java-jre-headless
- _fromroot="$pkgdir/$_java_home"
- _toroot="$subpkgdir/$_java_home"
-
- mkdir -p "$_toroot"
- mv "$_fromroot/lib" "$_toroot"
-
- # ct.sym should stay in -jdk
- mkdir "$_fromroot/lib"
- mv "$_toroot/lib/ct.sym" "$_fromroot/lib"
-
- mkdir -p "$_toroot/bin"
- for i in java \
- jfr \
- jrunscript \
- jwebserver \
- keytool \
- rmiregistry; do
- mv "$_fromroot/bin/$i" "$_toroot/bin/$i"
- done
-
- mv "$_fromroot/legal" "$_toroot"
- mv "$_fromroot/conf" "$_toroot"
- mv "$_fromroot/release" "$_toroot"
- cp "$builddir/ASSEMBLY_EXCEPTION" "$_toroot"
- cp "$builddir/LICENSE" "$_toroot"
- cp "$builddir/README.md" "$_toroot"
-
- # symlink to shared cacerts store
- rm "$_toroot/lib/security/cacerts"
- ln -sf /etc/ssl/certs/java/cacerts \
- "$_toroot/lib/security/cacerts"
-
- # symlink for java-common to work (expects jre in $_java_home/jre)
- ln -sf . "$_toroot/jre"
-}
-
-_jdk() {
- pkgdesc="Oracle OpenJDK 18 (JDK)"
- depends="$pkgname-jre $pkgname-jmods"
- provides=java-jdk
- _fromroot="$pkgdir/$_java_home"
- _toroot="$subpkgdir/$_java_home"
-
- mkdir -p "$_toroot"
- mv "$_fromroot/bin" "$_toroot"
- mv "$_fromroot/lib" "$_toroot"
- mv "$_fromroot/include" "$_toroot"
-}
-
-sha512sums="
-c658c7c850224986485dc865c9579c3f906f80f6478260161233bd019c601cf87add8829dcc63f3f759385879fb89f7711fc70cb7743a74a7ff34781d3e5812d jdk-18.0.1-ga.tar.gz
-e6283c667558e1fd6e49fa96e52af0e415a3c8037afe1d28b7ff1ec4c2ef8f49beb70a9327b7fc77eb4052a58c4ccad8b5260ec90e4bceeac7a46ff59c4369d7 gtest-1.8.1.tar.gz
-19773223b495606d10432c68a235570c605e322cdf21c5a8fcecba1146f6852dd86622b47be3453a8df53f907fc980a35a4fd96634db72f7bbda8aa2285cd676 detect-busybox-date-as-gnu-date.patch
-65037936fa3ae8b61b09f673f0dca7b51c569f708ef6cfa9b720b418f2fb636972180f630d94b52a2ba41742b63883743f49133270ffc8228f7ae82b191485ba ppc64le.patch
-60ee8d27e52fe53de55cfdaf10dd155ed9406b0c89e1f85feec04f91d8e558f675dd5ac87f0d33daad109462efd7b2c6fc06ad9333c3eeac283f5fd9c44514a1 FixNullPtrCast.patch
-d1767dddd8e0956e25c0f77ed45c6fc86a1191bae1704a6dc33be490fd20eaa50461fe5c2a3349512059d555651e2eb41437dd3c1096c351e8ee68b4534a2579 HelloWorld.java
-27e91edef89d26c0c5b9a813e2045f8d2b348745a506ae37b34b660fa7093da9a4e0e676ea41dc4a5c901bce02e5304d95e90f68d6c99cbf461b2da40a7a9853 TestECDSA.java
-b02dff8d549f88317bb4c741a9e269e8d59eef990197d085388fc49c7423a4eb9367dbe1e02bffb10e7862f5980301eb58d4494e177d0e8f60af6b05c7fbbe60 TestCryptoLevel.java
-cc466f64fcc8762cf6e3c1f5739be6425209b27aa58acff4e7eb126003d61fa18266f0e79e57e9d84224654010185ab45dc0a8043543dea227258458a00a1eb1 Alpine_Bug_10126.java
-"
diff --git a/testing/openjdk18/Alpine_Bug_10126.java b/testing/openjdk18/Alpine_Bug_10126.java
deleted file mode 100644
index a381c9ed70a..00000000000
--- a/testing/openjdk18/Alpine_Bug_10126.java
+++ /dev/null
@@ -1,13 +0,0 @@
-public class Alpine_Bug_10126 {
- public static void main(String[] args) throws Exception {
- try (java.net.Socket sock = javax.net.ssl.SSLSocketFactory.getDefault().createSocket("gitlab.alpinelinux.org", 443);
- java.io.InputStream in = sock.getInputStream();
- java.io.OutputStream out = sock.getOutputStream()) {
- out.write("GET / HTTP/1.0\n\nHost: gitlab.alpinelinux.org\n\nConnection: close\n\n\n\n".getBytes());
- out.flush();
- while (in.read(new byte[1024]) != -1) ;
- }
- System.out.println("Secured connection performed successfully");
- }
-}
-
diff --git a/testing/openjdk18/FixNullPtrCast.patch b/testing/openjdk18/FixNullPtrCast.patch
deleted file mode 100644
index 7fa335939e6..00000000000
--- a/testing/openjdk18/FixNullPtrCast.patch
+++ /dev/null
@@ -1,104 +0,0 @@
-Subject: Fix cast errors with latest GCC (11.2)
-Upstream: No
-Author: Simon Frankenberger <simon-alpine@fraho.eu>
-
-This patch fixes multiple casting errors reported by GCC 11.2
-
---- old/src/hotspot/share/gc/shenandoah/shenandoahBarrierSet.inline.hpp
-+++ new/src/hotspot/share/gc/shenandoah/shenandoahBarrierSet.inline.hpp
-@@ -205,7 +205,7 @@
-
- // Note: We don't need a keep-alive-barrier here. We already enqueue any loaded reference for SATB anyway,
- // because it must be the previous value.
-- res = load_reference_barrier(decorators, res, reinterpret_cast<T*>(NULL));
-+ res = load_reference_barrier(decorators, res, static_cast<T*>(NULL));
- satb_enqueue(res);
- return res;
- }
-@@ -216,7 +216,7 @@
- oop previous = RawAccess<>::oop_atomic_xchg(addr, new_value);
- // Note: We don't need a keep-alive-barrier here. We already enqueue any loaded reference for SATB anyway,
- // because it must be the previous value.
-- previous = load_reference_barrier<T>(decorators, previous, reinterpret_cast<T*>(NULL));
-+ previous = load_reference_barrier<T>(decorators, previous, static_cast<T*>(NULL));
- satb_enqueue(previous);
- return previous;
- }
---- old/src/hotspot/share/oops/access.hpp
-+++ new/src/hotspot/share/oops/access.hpp
-@@ -294,8 +294,8 @@
- static inline void arraycopy(arrayOop src_obj, size_t src_offset_in_bytes,
- arrayOop dst_obj, size_t dst_offset_in_bytes,
- size_t length) {
-- AccessT::arraycopy(src_obj, src_offset_in_bytes, reinterpret_cast<const T*>(NULL),
-- dst_obj, dst_offset_in_bytes, reinterpret_cast<T*>(NULL),
-+ AccessT::arraycopy(src_obj, src_offset_in_bytes, static_cast<const T*>(NULL),
-+ dst_obj, dst_offset_in_bytes, static_cast<T*>(NULL),
- length);
- }
-
-@@ -303,7 +303,7 @@
- static inline void arraycopy_to_native(arrayOop src_obj, size_t src_offset_in_bytes,
- T* dst,
- size_t length) {
-- AccessT::arraycopy(src_obj, src_offset_in_bytes, reinterpret_cast<const T*>(NULL),
-+ AccessT::arraycopy(src_obj, src_offset_in_bytes, static_cast<const T*>(NULL),
- NULL, 0, dst,
- length);
- }
-@@ -313,15 +313,15 @@
- arrayOop dst_obj, size_t dst_offset_in_bytes,
- size_t length) {
- AccessT::arraycopy(NULL, 0, src,
-- dst_obj, dst_offset_in_bytes, reinterpret_cast<T*>(NULL),
-+ dst_obj, dst_offset_in_bytes, static_cast<T*>(NULL),
- length);
- }
-
- static inline bool oop_arraycopy(arrayOop src_obj, size_t src_offset_in_bytes,
- arrayOop dst_obj, size_t dst_offset_in_bytes,
- size_t length) {
-- return AccessT::oop_arraycopy(src_obj, src_offset_in_bytes, reinterpret_cast<const HeapWord*>(NULL),
-- dst_obj, dst_offset_in_bytes, reinterpret_cast<HeapWord*>(NULL),
-+ return AccessT::oop_arraycopy(src_obj, src_offset_in_bytes, static_cast<const HeapWord*>(NULL),
-+ dst_obj, dst_offset_in_bytes, static_cast<HeapWord*>(NULL),
- length);
- }
-
---- old/src/hotspot/cpu/x86/interp_masm_x86.cpp
-+++ new/src/hotspot/cpu/x86/interp_masm_x86.cpp
-@@ -1122,7 +1122,7 @@
-
- bind(loop);
- // check if current entry is used
-- cmpptr(Address(rmon, BasicObjectLock::obj_offset_in_bytes()), (int32_t) NULL);
-+ cmpptr(Address(rmon, BasicObjectLock::obj_offset_in_bytes()), 0);
- jcc(Assembler::notEqual, exception);
-
- addptr(rmon, entry_size); // otherwise advance to next entry
---- old/src/hotspot/cpu/x86/interpreterRT_x86_64.cpp
-+++ new/src/hotspot/cpu/x86/interpreterRT_x86_64.cpp
-@@ -443,10 +443,10 @@
- _from -= Interpreter::stackElementSize;
-
- if (_num_int_args < Argument::n_int_register_parameters_c-1) {
-- *_int_args++ = (*from_addr == 0) ? NULL : (intptr_t)from_addr;
-+ *_int_args++ = (*from_addr == 0) ? (intptr_t) 0 : (intptr_t) from_addr;
- _num_int_args++;
- } else {
-- *_to++ = (*from_addr == 0) ? NULL : (intptr_t) from_addr;
-+ *_to++ = (*from_addr == 0) ? (intptr_t) 0 : (intptr_t) from_addr;
- }
- }
-
---- old/src/hotspot/cpu/aarch64/interpreterRT_aarch64.cpp
-+++ new/src/hotspot/cpu/aarch64/interpreterRT_aarch64.cpp
-@@ -267,7 +267,7 @@
-
- virtual void pass_object() {
- intptr_t* addr = single_slot_addr();
-- intptr_t value = *addr == 0 ? NULL : (intptr_t)addr;
-+ intptr_t value = *addr == 0 ? (intptr_t) 0 : (intptr_t)addr;
- if (pass_gpr(value) < 0) {
- pass_stack<>(value);
- }
diff --git a/testing/openjdk18/HelloWorld.java b/testing/openjdk18/HelloWorld.java
deleted file mode 100644
index 0be813a1901..00000000000
--- a/testing/openjdk18/HelloWorld.java
+++ /dev/null
@@ -1,3 +0,0 @@
-public class HelloWorld {
- public static void main(String[] args) { System.out.println("Hello World!"); }
-}
diff --git a/testing/openjdk18/TestCryptoLevel.java b/testing/openjdk18/TestCryptoLevel.java
deleted file mode 100644
index 3ed6c8dc15c..00000000000
--- a/testing/openjdk18/TestCryptoLevel.java
+++ /dev/null
@@ -1,72 +0,0 @@
-/* TestCryptoLevel -- Ensure unlimited crypto policy is in use.
- Copyright (C) 2012 Red Hat, Inc.
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU Affero General Public License as
-published by the Free Software Foundation, either version 3 of the
-License, or (at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU Affero General Public License for more details.
-
-You should have received a copy of the GNU Affero General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-import java.lang.reflect.Field;
-import java.lang.reflect.Method;
-import java.lang.reflect.InvocationTargetException;
-
-import java.security.Permission;
-import java.security.PermissionCollection;
-
-public class TestCryptoLevel
-{
- public static void main(String[] args)
- throws NoSuchFieldException, ClassNotFoundException,
- IllegalAccessException, InvocationTargetException
- {
- Class<?> cls = null;
- Method def = null, exempt = null;
-
- try
- {
- cls = Class.forName("javax.crypto.JceSecurity");
- }
- catch (ClassNotFoundException ex)
- {
- System.err.println("Running a non-Sun JDK.");
- System.exit(0);
- }
- try
- {
- def = cls.getDeclaredMethod("getDefaultPolicy");
- exempt = cls.getDeclaredMethod("getExemptPolicy");
- }
- catch (NoSuchMethodException ex)
- {
- System.err.println("Running IcedTea with the original crypto patch.");
- System.exit(0);
- }
- def.setAccessible(true);
- exempt.setAccessible(true);
- PermissionCollection defPerms = (PermissionCollection) def.invoke(null);
- PermissionCollection exemptPerms = (PermissionCollection) exempt.invoke(null);
- Class<?> apCls = Class.forName("javax.crypto.CryptoAllPermission");
- Field apField = apCls.getDeclaredField("INSTANCE");
- apField.setAccessible(true);
- Permission allPerms = (Permission) apField.get(null);
- if (defPerms.implies(allPerms) && (exemptPerms == null || exemptPerms.implies(allPerms)))
- {
- System.err.println("Running with the unlimited policy.");
- System.exit(0);
- }
- else
- {
- System.err.println("WARNING: Running with a restricted crypto policy.");
- System.exit(-1);
- }
- }
-}
diff --git a/testing/openjdk18/TestECDSA.java b/testing/openjdk18/TestECDSA.java
deleted file mode 100644
index abd81d1cedf..00000000000
--- a/testing/openjdk18/TestECDSA.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/* TestECDSA -- Ensure ECDSA signatures are working.
- Copyright (C) 2016 Red Hat, Inc.
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU Affero General Public License as
-published by the Free Software Foundation, either version 3 of the
-License, or (at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU Affero General Public License for more details.
-
-You should have received a copy of the GNU Affero General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-import java.math.BigInteger;
-import java.security.KeyPair;
-import java.security.KeyPairGenerator;
-import java.security.Signature;
-
-/**
- * @test
- */
-public class TestECDSA {
-
- public static void main(String[] args) throws Exception {
- KeyPairGenerator keyGen = KeyPairGenerator.getInstance("EC");
- KeyPair key = keyGen.generateKeyPair();
-
- byte[] data = "This is a string to sign".getBytes("UTF-8");
-
- Signature dsa = Signature.getInstance("NONEwithECDSA");
- dsa.initSign(key.getPrivate());
- dsa.update(data);
- byte[] sig = dsa.sign();
- System.out.println("Signature: " + new BigInteger(1, sig).toString(16));
-
- Signature dsaCheck = Signature.getInstance("NONEwithECDSA");
- dsaCheck.initVerify(key.getPublic());
- dsaCheck.update(data);
- boolean success = dsaCheck.verify(sig);
- if (!success) {
- throw new RuntimeException("Test failed. Signature verification error");
- }
- System.out.println("Test passed.");
- }
-}
diff --git a/testing/openjdk18/detect-busybox-date-as-gnu-date.patch b/testing/openjdk18/detect-busybox-date-as-gnu-date.patch
deleted file mode 100644
index 1b8bbb114fe..00000000000
--- a/testing/openjdk18/detect-busybox-date-as-gnu-date.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- old/make/autoconf/basic_tools.m4
-+++ new/make/autoconf/basic_tools.m4
-@@ -357,7 +357,7 @@
- AC_SUBST(IS_GNU_TIME)
-
- # Check if it's GNU date
-- check_date=`$DATE --version 2>&1 | $GREP GNU`
-+ check_date=`$DATE --version 2>&1 | $GREP GNU || $DATE --version 2>&1 | $GREP BusyBox`
- if test "x$check_date" != x; then
- IS_GNU_DATE=yes
- else
diff --git a/testing/openjdk18/ppc64le.patch b/testing/openjdk18/ppc64le.patch
deleted file mode 100644
index e54d7258b8d..00000000000
--- a/testing/openjdk18/ppc64le.patch
+++ /dev/null
@@ -1,256 +0,0 @@
-Subject: Fix compilation with different ucontext_t on musl
-Upstream: No
-Author: Simon Frankenberger <simon-alpine@fraho.eu>
-
-The machine state registers have to be accessed differently when
-running on musl libc. This patch fix this by replacing
-"uc_mcontext.regs->grp" with "uc_mcontext.gp_regs"
-and accessing the named fields (like "->nip") by the array index constants.
-
---- old/src/hotspot/cpu/ppc/macroAssembler_ppc.cpp
-+++ new/src/hotspot/cpu/ppc/macroAssembler_ppc.cpp
-@@ -47,6 +47,10 @@
- #include "utilities/macros.hpp"
- #include "utilities/powerOfTwo.hpp"
-
-+#if ! (defined(__GLIBC__) || defined(__UCLIBC__))
-+#include <asm/ptrace.h>
-+#endif
-+
- #ifdef PRODUCT
- #define BLOCK_COMMENT(str) // nothing
- #else
-@@ -1308,7 +1312,11 @@
- // the safepoing polling page.
- ucontext_t* uc = (ucontext_t*) ucontext;
- // Set polling address.
-+#if defined(__GLIBC__) || defined(__UCLIBC__)
- address addr = (address)uc->uc_mcontext.regs->gpr[ra] + (ssize_t)ds;
-+#else // Musl
-+ address addr = (address)uc->uc_mcontext.gp_regs[ra] + (ssize_t) ds;
-+#endif
- if (polling_address_ptr != NULL) {
- *polling_address_ptr = addr;
- }
-@@ -1371,11 +1379,20 @@
- || (is_stdu(instruction) && rs == 1)) {
- int ds = inv_ds_field(instruction);
- // return banged address
-+#if defined(__GLIBC__) || defined(__UCLIBC__)
- return ds+(address)uc->uc_mcontext.regs->gpr[ra];
-+#else // Musl
-+ return ds+(address)uc->uc_mcontext.gp_regs[ra];
-+#endif
- } else if (is_stdux(instruction) && rs == 1) {
- int rb = inv_rb_field(instruction);
-+#if defined(__GLIBC__) || defined(__UCLIBC__)
- address sp = (address)uc->uc_mcontext.regs->gpr[1];
- long rb_val = (long)uc->uc_mcontext.regs->gpr[rb];
-+#else // Musl
-+ address sp = (address)uc->uc_mcontext.gp_regs[1];
-+ long rb_val = (long)uc->uc_mcontext.gp_regs[rb];
-+#endif
- return ra != 1 || rb_val >= 0 ? NULL // not a stack bang
- : sp + rb_val; // banged address
- }
---- old/src/hotspot/cpu/ppc/vm_version_ppc.cpp
-+++ new/src/hotspot/cpu/ppc/vm_version_ppc.cpp
-@@ -52,6 +52,10 @@
- #endif
- #endif
-
-+#if ! (defined(__GLIBC__) || defined(__UCLIBC__))
-+#include <asm/ptrace.h>
-+#endif
-+
- bool VM_Version::_is_determine_features_test_running = false;
- uint64_t VM_Version::_dscr_val = 0;
-
-@@ -682,7 +686,7 @@
- unsigned long auxv = getauxval(AT_HWCAP2);
-
- if (auxv & PPC_FEATURE2_HTM_NOSC) {
-- if (auxv & PPC_FEATURE2_HAS_HTM) {
-+ if (auxv & PPC_FEATURE2_HTM) {
- // TM on POWER8 and POWER9 in compat mode (VM) is supported by the JVM.
- // TM on POWER9 DD2.1 NV (baremetal) is not supported by the JVM (TM on
- // POWER9 DD2.1 NV has a few issues that need a couple of firmware
---- old/src/hotspot/os_cpu/linux_ppc/os_linux_ppc.cpp
-+++ new/src/hotspot/os_cpu/linux_ppc/os_linux_ppc.cpp
-@@ -76,7 +76,11 @@
- # include <poll.h>
- # include <ucontext.h>
-
-+#if ! (defined(__GLIBC__) || defined(__UCLIBC__))
-+#include <asm/ptrace.h>
-+#endif
-
-+
- address os::current_stack_pointer() {
- return (address)__builtin_frame_address(0);
- }
-@@ -103,24 +107,42 @@
- // - if uc was filled by getcontext(), it is undefined - getcontext() does not fill
- // it because the volatile registers are not needed to make setcontext() work.
- // Hopefully it was zero'd out beforehand.
-+#if defined(__GLIBC__) || defined(__UCLIBC__)
- guarantee(uc->uc_mcontext.regs != NULL, "only use ucontext_get_pc in sigaction context");
- return (address)uc->uc_mcontext.regs->nip;
-+#else // Musl
-+ guarantee(uc->uc_mcontext.gp_regs != NULL, "only use ucontext_get_pc in sigaction context");
-+ return (address)uc->uc_mcontext.gp_regs[PT_NIP];
-+#endif
- }
-
- // modify PC in ucontext.
- // Note: Only use this for an ucontext handed down to a signal handler. See comment
- // in ucontext_get_pc.
- void os::Posix::ucontext_set_pc(ucontext_t * uc, address pc) {
-+#if defined(__GLIBC__) || defined(__UCLIBC__)
- guarantee(uc->uc_mcontext.regs != NULL, "only use ucontext_set_pc in sigaction context");
- uc->uc_mcontext.regs->nip = (unsigned long)pc;
-+#else // Musl
-+ guarantee(uc->uc_mcontext.gp_regs != NULL, "only use ucontext_set_pc in sigaction context");
-+ uc->uc_mcontext.gp_regs[PT_NIP] = (unsigned long)pc;
-+#endif
- }
-
- static address ucontext_get_lr(const ucontext_t * uc) {
-+#if defined(__GLIBC__) || defined(__UCLIBC__)
- return (address)uc->uc_mcontext.regs->link;
-+#else // Musl
-+ return (address)uc->uc_mcontext.gp_regs[PT_LNK];
-+#endif
- }
-
- intptr_t* os::Linux::ucontext_get_sp(const ucontext_t * uc) {
-+#if defined(__GLIBC__) || defined(__UCLIBC__)
- return (intptr_t*)uc->uc_mcontext.regs->gpr[1/*REG_SP*/];
-+#else // Musl
-+ return (intptr_t*)uc->uc_mcontext.gp_regs[1/*REG_SP*/];
-+#endif
- }
-
- intptr_t* os::Linux::ucontext_get_fp(const ucontext_t * uc) {
-@@ -128,7 +150,11 @@
- }
-
- static unsigned long ucontext_get_trap(const ucontext_t * uc) {
-+#if defined(__GLIBC__) || defined(__UCLIBC__)
- return uc->uc_mcontext.regs->trap;
-+#else // Musl
-+ return uc->uc_mcontext.gp_regs[PT_TRAP];
-+#endif
- }
-
- address os::fetch_frame_from_context(const void* ucVoid,
-@@ -194,7 +220,11 @@
- // 3.2.1 "Machine State Register"), however note that ISA notation for bit
- // numbering is MSB 0, so for normal bit numbering (LSB 0) they come to be
- // bits 33 and 34. It's not related to endianness, just a notation matter.
-+#if defined(__GLIBC__) || defined(__UCLIBC__)
- if (second_uc->uc_mcontext.regs->msr & 0x600000000) {
-+#else // Musl
-+ if (second_uc->uc_mcontext.gp_regs[PT_MSR] & 0x600000000) {
-+#endif
- if (TraceTraps) {
- tty->print_cr("caught signal in transaction, "
- "ignoring to jump to abort handler");
-@@ -450,6 +480,7 @@
- const ucontext_t* uc = (const ucontext_t*)context;
-
- st->print_cr("Registers:");
-+#if defined(__GLIBC__) || defined(__UCLIBC__)
- st->print("pc =" INTPTR_FORMAT " ", uc->uc_mcontext.regs->nip);
- st->print("lr =" INTPTR_FORMAT " ", uc->uc_mcontext.regs->link);
- st->print("ctr=" INTPTR_FORMAT " ", uc->uc_mcontext.regs->ctr);
-@@ -458,8 +489,18 @@
- st->print("r%-2d=" INTPTR_FORMAT " ", i, uc->uc_mcontext.regs->gpr[i]);
- if (i % 3 == 2) st->cr();
- }
-+#else // Musl
-+ st->print("pc =" INTPTR_FORMAT " ", uc->uc_mcontext.gp_regs[PT_NIP]);
-+ st->print("lr =" INTPTR_FORMAT " ", uc->uc_mcontext.gp_regs[PT_LNK]);
-+ st->print("ctr=" INTPTR_FORMAT " ", uc->uc_mcontext.gp_regs[PT_CTR]);
- st->cr();
-+ for (int i = 0; i < 32; i++) {
-+ st->print("r%-2d=" INTPTR_FORMAT " ", i, uc->uc_mcontext.gp_regs[i]);
-+ if (i % 3 == 2) st->cr();
-+ }
-+#endif
- st->cr();
-+ st->cr();
-
- intptr_t *sp = (intptr_t *)os::Linux::ucontext_get_sp(uc);
- st->print_cr("Top of Stack: (sp=" PTR_FORMAT ")", p2i(sp));
-@@ -482,12 +523,22 @@
- st->print_cr("Register to memory mapping:");
- st->cr();
-
-+#if defined(__GLIBC__) || defined(__UCLIBC__)
- st->print("pc ="); print_location(st, (intptr_t)uc->uc_mcontext.regs->nip);
- st->print("lr ="); print_location(st, (intptr_t)uc->uc_mcontext.regs->link);
- st->print("ctr ="); print_location(st, (intptr_t)uc->uc_mcontext.regs->ctr);
-+#else // Musl
-+ st->print("pc ="); print_location(st, (intptr_t)uc->uc_mcontext.gp_regs[PT_NIP]);
-+ st->print("lr ="); print_location(st, (intptr_t)uc->uc_mcontext.gp_regs[PT_LNK]);
-+ st->print("ctr ="); print_location(st, (intptr_t)uc->uc_mcontext.gp_regs[PT_CTR]);
-+#endif
- for (int i = 0; i < 32; i++) {
- st->print("r%-2d=", i);
-+#if defined(__GLIBC__) || defined(__UCLIBC__)
- print_location(st, uc->uc_mcontext.regs->gpr[i]);
-+#else // Musl
-+ print_location(st, uc->uc_mcontext.gp_regs[i]);
-+#endif
- }
- st->cr();
- }
---- old/src/hotspot/os_cpu/linux_ppc/thread_linux_ppc.cpp
-+++ new/src/hotspot/os_cpu/linux_ppc/thread_linux_ppc.cpp
-@@ -28,6 +28,10 @@
- #include "runtime/frame.inline.hpp"
- #include "runtime/thread.hpp"
-
-+#if ! (defined(__GLIBC__) || defined(__UCLIBC__))
-+#include <asm/ptrace.h>
-+#endif
-+
- frame JavaThread::pd_last_frame() {
- assert(has_last_Java_frame(), "must have last_Java_sp() when suspended");
-
-@@ -58,14 +62,22 @@
- // if we were running Java code when SIGPROF came in.
- if (isInJava) {
- ucontext_t* uc = (ucontext_t*) ucontext;
-+#if defined(__GLIBC__) || defined(__UCLIBC__)
- address pc = (address)uc->uc_mcontext.regs->nip;
-+#else // Musl
-+ address pc = (address)uc->uc_mcontext.gp_regs[PT_NIP];
-+#endif
-
- if (pc == NULL) {
- // ucontext wasn't useful
- return false;
- }
-
-+#if defined(__GLIBC__) || defined(__UCLIBC__)
- frame ret_frame((intptr_t*)uc->uc_mcontext.regs->gpr[1/*REG_SP*/], pc);
-+#else // Musl
-+ frame ret_frame((intptr_t*)uc->uc_mcontext.gp_regs[1/*REG_SP*/], pc);
-+#endif
-
- if (ret_frame.fp() == NULL) {
- // The found frame does not have a valid frame pointer.
-@@ -84,7 +96,11 @@
- if (!Method::is_valid_method(m)) return false;
- if (!Metaspace::contains(m->constMethod())) return false;
-
-+#if defined(__GLIBC__) || defined(__UCLIBC__)
- uint64_t reg_bcp = uc->uc_mcontext.regs->gpr[14/*R14_bcp*/];
-+#else // Musl
-+ uint64_t reg_bcp = uc->uc_mcontext.gp_regs[14/*R14_bcp*/];
-+#endif
- uint64_t istate_bcp = istate->bcp;
- uint64_t code_start = (uint64_t)(m->code_base());
- uint64_t code_end = (uint64_t)(m->code_base() + m->code_size());
diff --git a/testing/openjfx/APKBUILD b/testing/openjfx/APKBUILD
new file mode 100644
index 00000000000..c39c09c79d4
--- /dev/null
+++ b/testing/openjfx/APKBUILD
@@ -0,0 +1,53 @@
+# Maintainer: Dekedro <dekedro@protonmail.com>
+pkgname=openjfx
+pkgver=21.0.3_p1 # latest LTS
+pkgrel=0
+pkgdesc="Client application platform for desktop, mobile and embedded systems built on Java"
+url="https://openjfx.io/"
+# aarch64: java broken
+arch="x86_64"
+license="GPL-2.0-only WITH Classpath-exception-2.0 AND BSD-3-Clause"
+options="net"
+makedepends="apache-ant gradle glib-dev gtk+2.0-dev gtk+3.0-dev"
+subpackages="$pkgname-doc $pkgname-demos::noarch"
+source="$pkgname-$pkgver.tar.gz::https://github.com/openjdk/jfx21u/archive/refs/tags/${pkgver%_p*}+${pkgver##*_p}.tar.gz
+ openjfx.profile
+ remove-version-suffix-check.patch"
+builddir="$srcdir/jfx21u-${pkgver%_p*}-${pkgver##*_p}"
+
+build() {
+ gradle -PRELEASE_SUFFIX="-alpine-r$pkgrel" -PCONF=Release sdk apps
+}
+
+check() {
+ gradle test -x :web:test
+}
+
+package() {
+ install -dm755 \
+ "$pkgdir"/usr/lib \
+ "$pkgdir"/usr/share/doc \
+ "$pkgdir"/usr/share/licenses \
+ "$pkgdir"/usr/share/"$pkgname"/demo
+
+ cp -a build/sdk/lib "$pkgdir"/usr/lib/"$pkgname"
+ cp -a build/sdk/legal "$pkgdir"/usr/share/licenses/"$pkgname"
+ for app in apps/*/*; do
+ test -d "$app"/dist || continue
+ cp -a "$app"/dist "$pkgdir"/usr/share/"$pkgname"/demo/"${app##*/}"
+ done
+
+ install -Dm644 "$srcdir"/openjfx.profile "$pkgdir"/etc/profile.d/openjfx.sh
+}
+
+demos() {
+ pkgdesc="$pkgdesc (demos)"
+
+ amove /usr/share/"$pkgname"/demo
+}
+
+sha512sums="
+9ef6540e316e461a8cddcc6b99c3659663d3d6911204214afe5330fd238b7112431b70e5d2bc7ad548d41f1d8e22fa8d5342f6135901ae8404a8a4e9fdd718cf openjfx-21.0.3_p1.tar.gz
+41cf37116f748269e74a3333b718a854962088b83c6c56cc2860a21c0d0e24673184cea60502afc5d4cb222de368535c417d93ebe841a75c91c6a88dbb0a5041 openjfx.profile
+3757ec908449891567150bc4e0a5b301b0b238d17095c0829f6e1f1dae59260d9b162df031a25a31d4836a200a3e045ca9d79e656e4f1b2165649005345ee7a4 remove-version-suffix-check.patch
+"
diff --git a/testing/openjfx/openjfx.profile b/testing/openjfx/openjfx.profile
new file mode 100644
index 00000000000..9ddabc854f1
--- /dev/null
+++ b/testing/openjfx/openjfx.profile
@@ -0,0 +1,3 @@
+JDK_JAVA_OPTIONS="$JDK_JAVA_OPTIONS --module-path /usr/lib/openjfx --add-modules \
+javafx.base,javafx.controls,javafx.fxml,javafx.graphics,javafx.swing"
+export JDK_JAVA_OPTIONS \ No newline at end of file
diff --git a/testing/openjfx/remove-version-suffix-check.patch b/testing/openjfx/remove-version-suffix-check.patch
new file mode 100644
index 00000000000..899b2077cf9
--- /dev/null
+++ b/testing/openjfx/remove-version-suffix-check.patch
@@ -0,0 +1,42 @@
+--- a/modules/javafx.base/src/test/java/test/com/sun/javafx/runtime/VersionInfoTest.java
++++ b/modules/javafx.base/src/test/java/test/com/sun/javafx/runtime/VersionInfoTest.java
+@@ -161,39 +161,6 @@
+ }
+
+ @Test
+- public void testNonPublic() {
+- String runtimeVersion = VersionInfo.getRuntimeVersion();
+- Version v = new Version(runtimeVersion);
+- String milestone = VersionInfo.getReleaseMilestone();
+- String timestamp = VersionInfo.getBuildTimestamp();
+- String hudsonJob = VersionInfo.getHudsonJobName();
+- assertEquals(milestone, v.suffix);
+- if (hudsonJob.length() == 0) {
+- assertEquals(timestamp, v.opt);
+- assertEquals("internal", v.suffix);
+- } else {
+- assertFalse("internal".equals(v.suffix));
+- }
+- }
+-
+- @Test
+- public void testVersionFormat() {
+- String version = VersionInfo.getVersion();
+- String message = String.format("Wrong short version string: '%s'", version);
+- assertTrue(message, version.matches(SVSTR));
+- }
+-
+- @Test
+- public void testRuntimeVersionFormat() {
+- String runtimeVersion = VersionInfo.getRuntimeVersion();
+- try {
+- Runtime.Version.parse(runtimeVersion);
+- } catch (IllegalArgumentException e) {
+- fail(e.getMessage());
+- }
+- }
+-
+- @Test
+ public void testVersionInFile() {
+ String versionLive = VersionInfo.getVersion();
+ String versionFile = properties.getProperty(VERSION_KEY);
diff --git a/testing/openmg/APKBUILD b/testing/openmg/APKBUILD
index 5787fd24691..b3c15ada930 100644
--- a/testing/openmg/APKBUILD
+++ b/testing/openmg/APKBUILD
@@ -1,25 +1,28 @@
# Contributor: Sergio Iglesias <sergiotarxz@posteo.net>
# Maintainer: Sergio Iglesias <sergiotarxz@posteo.net>
pkgname=openmg
-pkgver=0.0.8
+pkgver=0.0.9
pkgrel=0
pkgdesc="Manga reader for GNOME"
-url="https://gitea.sergiotarxz.freemyip.com/sergiotarxz/mangareader"
+url="https://github.com/sergiotarxz/openmg"
arch="all !s390x !riscv64"
license="GPL-3.0-or-later"
makedepends="gtk4.0-dev meson libsoup-dev libadwaita-dev pcre2-dev json-glib-dev"
options="!check" # no tests
-source="$pkgname-$pkgver.tar.gz::https://gitea.sergiotarxz.freemyip.com/sergiotarxz/mangareader/archive/v$pkgver.tar.gz"
-builddir="$srcdir/mangareader"
+source="$pkgname-$pkgver.tar.gz::https://github.com/sergiotarxz/openmg/archive/refs/tags/v$pkgver.tar.gz
+ format-security.patch
+ "
build() {
abuild-meson . output
- meson compile ${JOBS:+-j ${JOBS}} -C output
+ meson compile -C output
}
package() {
DESTDIR="$pkgdir" meson install --no-rebuild -C output
}
+
sha512sums="
-2298e41e09438cd812778c1c0e4fc68d4c31005f2a2b1e86cc1dd5487aac17b53773e85d32f8a199e692e4da09e6165b4469219ff05a8c6bf1cf5cf7ad307226 openmg-0.0.8.tar.gz
+862ee4bfec1aee50060ea8cf375eb650c2f2646f39eb0148bec4661934cdac939b2e1255f0761142730949ff242549113087d2bc0e6142823c88d37fffdc0fe8 openmg-0.0.9.tar.gz
+880c8309c7fc6b6000cb3135e7dc1f32d740856d4d14de1e9529e9045605502692db6c5e3e6d052c3b1ecd2e5d944718d7373635b00339a3487404b216b5e668 format-security.patch
"
diff --git a/testing/openmg/format-security.patch b/testing/openmg/format-security.patch
new file mode 100644
index 00000000000..faccc20905e
--- /dev/null
+++ b/testing/openmg/format-security.patch
@@ -0,0 +1,119 @@
+diff --git a/src/database.c b/src/database.c
+index 778ccf7..ccbb9bf 100644
+--- a/src/database.c
++++ b/src/database.c
+@@ -172,22 +172,22 @@ mg_database_register_next_migration_atttempt_insert (MgDatabase *self, sqlite3 *
+ int error = sqlite3_prepare_v2 (sqlite, "insert into options (key, value) values (?, ?);",
+ -1, &statement, NULL);
+ if (error != SQLITE_OK) {
+- g_warning (sqlite3_errmsg (sqlite));
++ g_warning ("%s", sqlite3_errmsg (sqlite));
+ goto cleanup_mg_database_register_next_migration_attempt_insert;
+ }
+ error = sqlite3_bind_text (statement, 1, "migration", -1, SQLITE_TRANSIENT);
+ if (error != SQLITE_OK) {
+- g_warning (sqlite3_errmsg (sqlite));
++ g_warning ("%s", sqlite3_errmsg (sqlite));
+ goto cleanup_mg_database_register_next_migration_attempt_insert;
+ }
+ error = sqlite3_bind_int (statement, 2, next_migration);
+ if (error != SQLITE_OK) {
+- g_warning (sqlite3_errmsg (sqlite));
++ g_warning ("%s", sqlite3_errmsg (sqlite));
+ goto cleanup_mg_database_register_next_migration_attempt_insert;
+ }
+ error = sqlite3_step (statement);
+ if (error != SQLITE_DONE) {
+- g_warning (sqlite3_errmsg (sqlite));
++ g_warning ("%s", sqlite3_errmsg (sqlite));
+ goto cleanup_mg_database_register_next_migration_attempt_insert;
+ }
+ return_value = sqlite3_changes (sqlite);
+@@ -204,22 +204,22 @@ mg_database_register_next_migration_update (MgDatabase *self, sqlite3 *sqlite,
+ int error = sqlite3_prepare_v2 (sqlite, "update options set value = ? where key = ?;",
+ -1, &statement, NULL);
+ if (error != SQLITE_OK) {
+- g_warning (sqlite3_errmsg (sqlite));
++ g_warning ("%s", sqlite3_errmsg (sqlite));
+ goto cleanup_mg_database_register_next_migration_update;
+ }
+ error = sqlite3_bind_int (statement, 1, next_migration);
+ if (error != SQLITE_OK) {
+- g_warning (sqlite3_errmsg (sqlite));
++ g_warning ("%s", sqlite3_errmsg (sqlite));
+ goto cleanup_mg_database_register_next_migration_update;
+ }
+ error = sqlite3_bind_text (statement, 2, "migration", -1, SQLITE_TRANSIENT);
+ if (error != SQLITE_OK) {
+- g_warning (sqlite3_errmsg (sqlite));
++ g_warning ("%s", sqlite3_errmsg (sqlite));
+ goto cleanup_mg_database_register_next_migration_update;
+ }
+ error = sqlite3_step (statement);
+ if (error != SQLITE_DONE) {
+- g_warning (sqlite3_errmsg (sqlite));
++ g_warning ("%s", sqlite3_errmsg (sqlite));
+ goto cleanup_mg_database_register_next_migration_update;
+ }
+ return_value = sqlite3_changes (sqlite);
+@@ -245,12 +245,12 @@ mg_database_retrieve_next_migration (MgDatabase *self, sqlite3 *sqlite) {
+ sqlite3_stmt *statement = NULL;
+ error = sqlite3_prepare_v2 (sqlite, "select value from options where key = ?;", -1, &statement, NULL);
+ if (error != SQLITE_OK) {
+- g_warning (sqlite3_errmsg (sqlite));
++ g_warning ("%s", sqlite3_errmsg (sqlite));
+ goto cleanup_mg_database_retrieve_next_migration;
+ }
+ error = sqlite3_bind_text (statement, 1, "migration", -1, SQLITE_TRANSIENT);
+ if (error != SQLITE_OK) {
+- g_warning (sqlite3_errmsg (sqlite));
++ g_warning ("%s", sqlite3_errmsg (sqlite));
+ goto cleanup_mg_database_retrieve_next_migration;
+ }
+ error = sqlite3_step (statement);
+@@ -269,12 +269,12 @@ mg_database_apply_single_migration (MgDatabase *self, sqlite3 *sqlite, int migra
+ gboolean return_value = 0;
+ int error = sqlite3_prepare_v2 (sqlite, current_migration, -1, &statement, NULL);
+ if (error != SQLITE_OK) {
+- g_warning (sqlite3_errmsg (sqlite));
++ g_warning ("%s", sqlite3_errmsg (sqlite));
+ goto cleanup_mg_database_apply_single_migration;
+ }
+ error = sqlite3_step (statement);
+ if (error != SQLITE_DONE) {
+- g_warning (sqlite3_errmsg (sqlite));
++ g_warning ("%s", sqlite3_errmsg (sqlite));
+ goto cleanup_mg_database_apply_single_migration;
+ }
+ return_value = 1;
+@@ -303,7 +303,7 @@ mg_database_prepare (MgDatabase *self, char *z_sql, const char **pz_tail) {
+ sqlite3 *sqlite = mg_database_get_sqlite (self);
+ int error = sqlite3_prepare_v2 (sqlite, z_sql, -1, &statement, pz_tail);
+ if (error != SQLITE_OK) {
+- g_warning (sqlite3_errmsg (sqlite));
++ g_warning ("%s", sqlite3_errmsg (sqlite));
+ return NULL;
+ }
+ return mg_database_statement_new (self, statement);
+diff --git a/src/database/statement.c b/src/database/statement.c
+index 1599354..7218f22 100644
+--- a/src/database/statement.c
++++ b/src/database/statement.c
+@@ -137,7 +137,7 @@ mg_database_statement_bind_text (MgDatabaseStatement *self,
+ sqlite3_stmt *stmt = mg_database_statement_get_stmt (self);
+ int error = sqlite3_bind_text (stmt, index, value, -1, SQLITE_TRANSIENT);
+ if ( error != SQLITE_OK ) {
+- g_error (mg_database_get_error_string (self->owner));
++ g_error ("%s", mg_database_get_error_string (self->owner));
+ }
+ return error;
+ }
+@@ -149,7 +149,7 @@ mg_database_statement_step (MgDatabaseStatement *self) {
+ while ((error = sqlite3_step (stmt)) == SQLITE_BUSY) {
+ }
+ if (error != SQLITE_DONE && error != SQLITE_ROW) {
+- g_error (mg_database_get_error_string (self->owner));
++ g_error ("%s", mg_database_get_error_string (self->owner));
+ }
+ return error;
+ }
diff --git a/testing/openocd-esp32/APKBUILD b/testing/openocd-esp32/APKBUILD
new file mode 100644
index 00000000000..eae4a199f27
--- /dev/null
+++ b/testing/openocd-esp32/APKBUILD
@@ -0,0 +1,78 @@
+# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
+# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
+pkgname=openocd-esp32
+pkgver=0_git20230921
+_commit=a23a2d4f82f848a9e76b0b79c4b26782f26b11ed
+pkgrel=4
+pkgdesc="Fork of OpenOCD with ESP32 support"
+url="https://github.com/espressif/openocd-esp32"
+arch="all"
+license="GPL-2.0-only AND GPL-2.0-or-later AND GPL-3.0-only"
+makedepends="
+ autoconf
+ automake
+ hidapi-dev
+ jimtcl-dev
+ libftdi1-dev
+ libjaylink-dev
+ libtool
+ libusb-dev
+ "
+subpackages="$pkgname-dev $pkgname-doc $pkgname-udev-rules:udev_rules"
+source="$pkgname-$pkgver.tar.gz::https://github.com/espressif/openocd-esp32/archive/$_commit.tar.gz
+ fix-jimtcl-link.patch"
+builddir="$srcdir/openocd-esp32-$_commit"
+
+##
+# XXX: Remove this aport when changes are upstreamed.
+##
+
+prepare() {
+ default_prepare
+ ./bootstrap nosubmodule
+}
+
+build() {
+ # --datadir:
+ # avoid conflicts with upstream openocd to allow parallel installations
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --datadir=/usr/share/$pkgname \
+ --localstatedir=/var \
+ --disable-werror \
+ --disable-internal-jimtcl \
+ --disable-internal-libjaylink
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+ install -Dm644 contrib/60-openocd.rules \
+ "$pkgdir"/lib/udev/rules.d/60-$pkgname.rules
+
+ # allow parallel install with upstream openocd
+ mv "$pkgdir"/usr/bin/openocd "$pkgdir"/usr/bin/$pkgname
+ mv "$pkgdir"/usr/share/man/man1/openocd.1 \
+ "$pkgdir"/usr/share/man/man1/openocd-esp32.1
+ sed -e 's/openocd/openocd-esp32/g' -i \
+ "$pkgdir"/usr/share/man/man1/openocd-esp32.1
+}
+
+udev_rules() {
+ pkgdesc="udev rules for $pkgname"
+ depends="!openocd-udev-rules"
+ amove lib/udev/rules.d/60-$pkgname.rules
+}
+
+sha512sums="
+cb884616a7547c30776629923d6a599f5702506a96a47076bbdfbe0a550b560a1277e751a8a6cd3e6bc7f1894604c1899d9416c731fa91ce71a95049f3cc8479 openocd-esp32-0_git20230921.tar.gz
+6fd2fbe11917bb7f181ba67812f63e75d51bcd19e4df6a7e22e1abb8f36a4f4bdc9202e815f560476ec184d54d84df8ae4dceb17f2429b9dc1d9503804dacb03 fix-jimtcl-link.patch
+"
diff --git a/testing/openocd-esp32/fix-jimtcl-link.patch b/testing/openocd-esp32/fix-jimtcl-link.patch
new file mode 100644
index 00000000000..657f3333c65
--- /dev/null
+++ b/testing/openocd-esp32/fix-jimtcl-link.patch
@@ -0,0 +1,44 @@
+Without this patch, OpenOCD only adds -ljim when linking against the
+internal version of jimtcl is disabled. This is insufficient as we build
+jimtcl with various additional features (OpenSSL, …) and thus also need
+to link against the libraries needed for these features (e.g. -lssl).
+For this reason, it is required to extract libraries needed by jimtcl
+using pkg-config. In the GNU autotools context, this can be achieved using
+the PKG_CHECK_MODULES macro from pkg.m4(7).
+
+This patch uses this macro for jimtcl and adds the required
+CFLAGS/LDFLAGS values for linking against jimtcl for the openocd target.
+
+diff -upr a/configure.ac b/configure.ac
+--- a/configure.ac 2021-09-14 17:31:53.000000000 +0200
++++ b/configure.ac 2021-10-02 11:32:04.066085040 +0200
+@@ -622,6 +622,9 @@ PKG_CHECK_MODULES([LIBGPIOD], [libgpiod]
+ PKG_CHECK_MODULES([LIBJAYLINK], [libjaylink >= 0.2],
+ [use_libjaylink=yes], [use_libjaylink=no])
+
++PKG_CHECK_MODULES([LIBJIM], [jimtcl >= 0.80],
++ [use_internal_jimtcl=no], [use_internal_jimtcl=yes])
++
+ m4_define([PROCESS_ADAPTERS], [
+ m4_foreach([adapter], [$1], [
+ AS_IF([test $2], [
+diff -upr a/src/Makefile.am b/src/Makefile.am
+--- a/src/Makefile.am 2021-09-14 17:31:53.000000000 +0200
++++ b/src/Makefile.am 2021-10-02 11:31:57.529416686 +0200
+@@ -9,13 +9,15 @@ bin_PROGRAMS += %D%/openocd
+ %D%/openocd.c %D%/openocd.h
+
+ %C%_openocd_LDADD = %D%/libopenocd.la
++%C%_openocd_CFLAGS =
+
+ %C%_openocd_LDADD += $(MINGWLDADD)
+
+ if INTERNAL_JIMTCL
+ %C%_openocd_LDADD += $(top_builddir)/jimtcl/libjim.a
+ else
+-%C%_openocd_LDADD += -ljim
++%C%_openocd_CFLAGS += $(LIBJIM_CFLAGS)
++%C%_openocd_LDADD += $(LIBJIM_LIBS)
+ endif
+
+ %C%_libopenocd_la_CPPFLAGS =
diff --git a/testing/openocd-git/APKBUILD b/testing/openocd-git/APKBUILD
index d0d1be3904e..0f10268041b 100644
--- a/testing/openocd-git/APKBUILD
+++ b/testing/openocd-git/APKBUILD
@@ -1,18 +1,31 @@
# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
_pkgname=openocd
-_commit=2586fec922ae9ea9bea345f40598e0367934d22c
+_commit=ea2e26f7d521f5755b4bfda7bf12d99650277421
pkgname=$_pkgname-git
-pkgver=20220305
+pkgver=0_git20240113
pkgrel=0
pkgdesc="Free and Open On-Chip Debugging, In-System Programming and Boundary-Scan Testing"
url="http://openocd.org/"
arch="all"
license="GPL-2.0-only AND GPL-2.0-or-later AND GPL-3.0-only"
-makedepends="libftdi1-dev libusb-dev hidapi-dev jimtcl-dev
- libjaylink-dev libtool autoconf automake"
-provides="openocd"
-subpackages="$pkgname-dev $pkgname-doc"
+makedepends="
+ autoconf
+ automake
+ hidapi-dev
+ jimtcl-dev
+ libftdi1-dev
+ libjaylink-dev
+ libtool
+ libusb-dev
+ "
+subpackages="
+ $pkgname-dbg
+ $pkgname-dev
+ $pkgname-doc
+ $pkgname-udev-rules:udev_rules:noarch
+ $pkgname-cmd-openocd:symlink:noarch
+ "
# Note: Using a github mirror here as sourceforge git snapshots have changing checksums
source="
$_pkgname-$_commit.tar.gz::https://github.com/openocd-org/openocd/archive/$_commit.tar.gz
@@ -27,12 +40,16 @@ prepare() {
}
build() {
+ # --datadir:
+ # avoid conflicts with release version of openocd to allow parallel
+ # installations
./configure \
--build=$CBUILD \
--host=$CHOST \
--prefix=/usr \
--sysconfdir=/etc \
--mandir=/usr/share/man \
+ --datadir=/usr/share/$pkgname \
--localstatedir=/var \
--disable-werror \
--enable-cmsis-dap \
@@ -49,9 +66,31 @@ check() {
package() {
make DESTDIR="$pkgdir" install
+ install -Dm644 contrib/60-openocd.rules \
+ "$pkgdir"/lib/udev/rules.d/60-$pkgname.rules
+
+ # allow parallel install with release openocd
+ mv "$pkgdir"/usr/bin/openocd "$pkgdir"/usr/bin/$pkgname
+ mv "$pkgdir"/usr/share/man/man1/openocd.1 \
+ "$pkgdir"/usr/share/man/man1/openocd-git.1
+ sed -e 's/openocd/openocd-git/g' -i \
+ "$pkgdir"/usr/share/man/man1/openocd-git.1
+}
+
+udev_rules() {
+ pkgdesc="udev rules for $pkgname"
+ depends="!openocd-udev-rules"
+ amove lib/udev/rules.d/60-$pkgname.rules
+}
+
+symlink() {
+ pkgdesc="provide the 'openocd' cmd as symlink to 'openocd-git'"
+ depends="$pkgname=$pkgver-r$pkgrel"
+ mkdir -p "$subpkgdir"/usr/bin/
+ ln -s openocd-git "$subpkgdir"/usr/bin/openocd
}
sha512sums="
-f89c1c8daca4cef4ca705f4dacd2671c5d4a5d5a82c4c4da04e33073af127af62c600dc2726ee445ddb88901f9323d4444c9885b8166e90a7308004116e196e3 openocd-2586fec922ae9ea9bea345f40598e0367934d22c.tar.gz
+82ecf9ca084adef91f88425c0f8d35ba5939ccee4086e11559b98e21a0287c1fca7c8f20b25a7d650458319a10c106fd484616ffef6f9dd6dd3d3bc847bc8317 openocd-ea2e26f7d521f5755b4bfda7bf12d99650277421.tar.gz
6fd2fbe11917bb7f181ba67812f63e75d51bcd19e4df6a7e22e1abb8f36a4f4bdc9202e815f560476ec184d54d84df8ae4dceb17f2429b9dc1d9503804dacb03 fix-jimtcl-link.patch
"
diff --git a/testing/openocd-riscv/APKBUILD b/testing/openocd-riscv/APKBUILD
index 6e15be84ba9..e1149896bf5 100644
--- a/testing/openocd-riscv/APKBUILD
+++ b/testing/openocd-riscv/APKBUILD
@@ -1,19 +1,26 @@
# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
# Maintainer: Sören Tempel <soeren+alpine@soeren-tempel.net>
pkgname=openocd-riscv
-pkgver=0_git20210914
-_commit=41ffb2dee645834c71b8ebda4cacf9187b3fe686
-pkgrel=3
+pkgver=0_git20230104
+_commit=43ea20dfbb6c815004a51106a3b2009d7f6c4940
+pkgrel=1
pkgdesc="Fork of OpenOCD with RISC-V support"
url="https://github.com/riscv/riscv-openocd"
arch="all"
license="GPL-2.0-only,GPL-2.0-or-later,GPL-3.0-only"
-depends="!openocd-git !openocd"
-makedepends="libftdi1-dev libusb-dev hidapi-dev libtool automake autoconf jimtcl-dev"
-subpackages="$pkgname-dev $pkgname-doc"
+makedepends="
+ autoconf
+ automake
+ hidapi-dev
+ jimtcl-dev
+ libftdi1-dev
+ libjaylink-dev
+ libtool
+ libusb-dev
+ "
+subpackages="$pkgname-dev $pkgname-doc $pkgname-udev-rules:udev_rules"
source="$pkgname-$pkgver.tar.gz::https://github.com/riscv/riscv-openocd/archive/$_commit.tar.gz
- fix-jimtcl-link.patch
- fix-dynamic-linking.patch"
+ fix-jimtcl-link.patch"
builddir="$srcdir/riscv-openocd-$_commit"
##
@@ -26,18 +33,19 @@ prepare() {
}
build() {
- # XXX: This fork uses a modified version of libjaylink which is
- # not fully compatible with our packaged version of libjaylink.
- # As such, we can't pass --disable-internal-libjaylink here.
+ # --datadir:
+ # avoid conflicts with upstream openocd to allow parallel installations
./configure \
--build=$CBUILD \
--host=$CHOST \
--prefix=/usr \
--sysconfdir=/etc \
--mandir=/usr/share/man \
+ --datadir=/usr/share/$pkgname \
--localstatedir=/var \
--disable-werror \
- --disable-internal-jimtcl
+ --disable-internal-jimtcl \
+ --disable-internal-libjaylink
make
}
@@ -47,10 +55,23 @@ check() {
package() {
make DESTDIR="$pkgdir" install
+ install -Dm644 contrib/60-openocd.rules \
+ "$pkgdir"/lib/udev/rules.d/60-$pkgname.rules
+ # allow parallel install with upstream openocd
+ mv "$pkgdir"/usr/bin/openocd "$pkgdir"/usr/bin/$pkgname
+ mv "$pkgdir"/usr/share/man/man1/openocd.1 \
+ "$pkgdir"/usr/share/man/man1/openocd-riscv.1
+ sed -e 's/openocd/openocd-riscv/g' -i \
+ "$pkgdir"/usr/share/man/man1/openocd-riscv.1
+}
+
+udev_rules() {
+ pkgdesc="udev rules for $pkgname"
+ depends="!openocd-udev-rules"
+ amove lib/udev/rules.d/60-$pkgname.rules
}
sha512sums="
-272f2c141d04c44e23ff743160148e7a08fcc74647fde63c719c003836b8ea65f4455fb7b5c35b48068b1e44670aab748f7ad1e7bc082f242e12566521e8e02b openocd-riscv-0_git20210914.tar.gz
+2ffe4047d4c3afa8dd7be581362f36b88d250a46c4ed3f9b396a15163bd6d131984a9b0d27c47bfbda9f195443010ddfb267e7401b6b334a466a1dcad4ebc9b8 openocd-riscv-0_git20230104.tar.gz
6fd2fbe11917bb7f181ba67812f63e75d51bcd19e4df6a7e22e1abb8f36a4f4bdc9202e815f560476ec184d54d84df8ae4dceb17f2429b9dc1d9503804dacb03 fix-jimtcl-link.patch
-a0980806af54bafd759c2e329cd11eabf0eb352f7f823966ab0f4a60508559fb7abd41072c0a882da0906ddf086ee139115deca04bb1a70ab915b50a1d3fc2e7 fix-dynamic-linking.patch
"
diff --git a/testing/openocd-riscv/fix-dynamic-linking.patch b/testing/openocd-riscv/fix-dynamic-linking.patch
deleted file mode 100644
index 44cec606308..00000000000
--- a/testing/openocd-riscv/fix-dynamic-linking.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-Without this patch, linking against libjim dynamically will cause an
-infinite loop. We just fix the memory leak, for which this thingy is
-supposed to be a workaround, directly in the jimtcl package instead.
-
-See: https://gitlab.alpinelinux.org/alpine/aports/-/issues/13046#note_182639
-
-diff -upr a/src/helper/command.c b/src/helper/command.c
---- a/src/helper/command.c 2021-10-02 11:47:43.452995606 +0200
-+++ b/src/helper/command.c 2021-10-02 11:51:10.803049538 +0200
-@@ -148,9 +148,14 @@ static void command_log_capture_finish(s
- * If jimtcl is linked-in from a precompiled library, either static or dynamic,
- * the symbol Jim_CreateCommandObj is not exported and the build will use the
- * bugged API.
-+ *
-+ * This workaround creates an infinite loop when OpenOCD is linked
-+ * dynamically against jimtcl on Alpine and thus only enabled if the internal
-+ * version of jimtcl is used.
-+ *
- * To be removed when OpenOCD will switch to jimtcl 0.81
- */
--#if JIM_VERSION == 80 && defined __linux__
-+#if JIM_VERSION == 80 && defined __linux__ && defined INTERNAL_JIMTCL
- static int workaround_createcommand(Jim_Interp *interp, const char *cmdName,
- Jim_CmdProc *cmdProc, void *privData, Jim_DelCmdProc *delProc);
- int Jim_CreateCommandObj(Jim_Interp *interp, Jim_Obj *cmdNameObj,
diff --git a/testing/openra/APKBUILD b/testing/openra/APKBUILD
new file mode 100644
index 00000000000..c9b487abef4
--- /dev/null
+++ b/testing/openra/APKBUILD
@@ -0,0 +1,51 @@
+# Contributor: Dmitry Zakharchenko <dmitz@disroot.org>
+# Maintainer: Dmitry Zakharchenko <dmitz@disroot.org>
+pkgname=openra
+pkgver=20231010
+pkgrel=0
+pkgdesc="Open source implementation of the Red Alert engine"
+url="https://www.openra.net"
+arch="x86_64 armv7 aarch64"
+license="GPL-3.0-or-later"
+depends="
+ dotnet6-runtime
+ freetype
+ libgdiplus
+ lua5.1
+ openal-soft-libs
+ sdl2
+ xdg-utils
+ "
+makedepends="dotnet6-sdk"
+source="$pkgname-$pkgver.tar.gz::https://github.com/OpenRA/OpenRA/archive/release-$pkgver.tar.gz"
+builddir="$srcdir/OpenRA-release-$pkgver"
+options="net"
+
+prepare() {
+ default_prepare
+
+ make version VERSION="release-$pkgver"
+}
+
+build() {
+ make RUNTIME=net6 TARGETPLATFORM=unix-generic
+}
+
+check() {
+ make RUNTIME=net6 check
+}
+
+package() {
+ mkdir -p "$pkgdir"/usr/lib/
+ cp -a bin/ "$pkgdir"/usr/lib/openra
+ # shellcheck disable=1091
+ . ./packaging/functions.sh
+
+ install_data . "$pkgdir"/usr/lib/openra/ cnc d2k ra
+ make prefix=/usr DESTDIR="$pkgdir" install-linux-shortcuts
+ make prefix=/usr DESTDIR="$pkgdir" install-linux-appdata
+}
+
+sha512sums="
+76968f241f506faf879793b63553bd259eb2ae204c607dcbfdb03078773c32d3d122ffe554049d31fed5cd7d35bf22fb07ef0fa73505a88b2ce7f8ae21189f8d openra-20231010.tar.gz
+"
diff --git a/testing/openrazer/APKBUILD b/testing/openrazer/APKBUILD
deleted file mode 100644
index 28ca9d860e1..00000000000
--- a/testing/openrazer/APKBUILD
+++ /dev/null
@@ -1,63 +0,0 @@
-# Contributor: Bart Ribbers <bribbers@disroot.org>
-# Maintainer: Bart Ribbers <bribbers@disroot.org>
-pkgname=openrazer
-pkgver=3.3.0
-pkgrel=0
-pkgdesc="Open source driver and user-space daemon to control Razer lighting and other features on GNU/Linux"
-url="https://openrazer.github.io/"
-arch="noarch"
-license="GPL-2.0-only"
-depends="
- py3-daemonize
- py3-setproctitle
- py3-udev
- "
-makedepends="
- py3-setuptools
- "
-subpackages="
- $pkgname-doc
- $pkgname-src
- py3-$pkgname:py3
- "
-source="https://github.com/openrazer/openrazer/archive/v$pkgver/openrazer-v$pkgver.tar.gz"
-options="!check" # No tests
-
-package() {
- DESTDIR="$pkgdir" make appstream_install udev_install daemon_install xdg_install
-
- # We don't have systemd
- rm -r "$pkgdir"/usr/lib/systemd
-}
-
-src() {
- depends="akms"
-
- cd "$builddir"
- DESTDIR="$subpkgdir" make setup_dkms
-
- # We don't have dkms but use akms instead
- #rm "$pkgdir"/usr/src/openrazer-driver-$pkgver/dkms.conf
-
- cat >"$subpkgdir"/usr/src/openrazer-driver-$pkgver/AKMBUILD <<-EOF
- modname=openrazer-driver
- modver=$pkgver
- built_modules='razeraccessory.ko razerkbd.ko razerkraken.ko razermouse.ko'
-
- build() {
- touch "\$builddir"/Makefile
- make \$MAKEFLAGS -C "\$kernel_srcdir" M="\$builddir" src="\$srcdir"/driver modules
- }
- EOF
-}
-
-py3() {
- depends="py3-numpy"
-
- cd "$builddir"
- DESTDIR="$subpkgdir" make python_library_install
-}
-
-sha512sums="
-b27be82e57e252abd57c1168e8c1fde940d4fb4deea165979f7d711a438bec34cfedcc81ae5ef107db0626182a9629141cb2c6023cd09fcbd822a36c17d737fa openrazer-v3.3.0.tar.gz
-"
diff --git a/testing/openrc-exporter/APKBUILD b/testing/openrc-exporter/APKBUILD
deleted file mode 100644
index 20be63bb5f9..00000000000
--- a/testing/openrc-exporter/APKBUILD
+++ /dev/null
@@ -1,42 +0,0 @@
-# Contributor: Tom Lebreux <me@tomlebreux.com>
-# Maintainer: Tom Lebreux <me@tomlebreux.com>
-pkgname=openrc-exporter
-pkgver=0.0.2
-pkgrel=5
-pkgdesc="Prometheus exporter for OpenRC"
-url="https://sr.ht/~tomleb/openrc-exporter"
-arch="all"
-license="AGPL-3.0-only"
-makedepends="go openrc-dev"
-install="$pkgname.pre-install"
-subpackages="$pkgname-openrc"
-pkgusers="openrc-exporter"
-pkggroups="openrc-exporter"
-source="
- $pkgname-$pkgver.tar.gz::https://git.sr.ht/~tomleb/openrc-exporter/archive/$pkgver.tar.gz
- openrc-exporter.initd
- openrc-exporter.confd
- "
-options="!check" # No tests yet
-
-build() {
- CGO_ENABLED=1 go build -v -ldflags "-X main.version=$pkgver" \
- -trimpath ./cmd/openrc-exporter
-}
-
-check() {
- go test ./...
-}
-
-package() {
- install -Dm755 openrc-exporter "$pkgdir"/usr/bin/openrc-exporter
-
- install -Dm755 "$srcdir"/$pkgname.initd \
- "$pkgdir"/etc/init.d/$pkgname
- install -Dm644 "$srcdir"/$pkgname.confd \
- "$pkgdir"/etc/conf.d/$pkgname
-}
-
-sha512sums="f593bb6e9f462527cd0a527539be576cbab361911fc19c9170f3e2da64093011eefa5a28bd527e07b2fdb4b8143bbd59b2590f9be0305b7d909a9039366f6a54 openrc-exporter-0.0.2.tar.gz
-674cc2095b5ff46f59240f3a7a76b5fe0f3824eccaaa952d56d41a8dbef7e022dbff77eb210615dab8914b6a458bfa2fdc9ccb41d3beeda358e259daf4665597 openrc-exporter.initd
-53fe95875b1f91acb91afa6e878885c2716d5b356ba535c20fc5ad4d8bf37ff4807c14b6379e82387348dde81dc3c0c421598736b48b0d3ddf337c69de2aa0a5 openrc-exporter.confd"
diff --git a/testing/openrc-exporter/openrc-exporter.confd b/testing/openrc-exporter/openrc-exporter.confd
deleted file mode 100644
index f607091e475..00000000000
--- a/testing/openrc-exporter/openrc-exporter.confd
+++ /dev/null
@@ -1,3 +0,0 @@
-# Configuration for /etc/init.d/openrc-exporter
-
-openrc_exporter_opts="-listen-address 0.0.0.0:9816"
diff --git a/testing/openrc-exporter/openrc-exporter.initd b/testing/openrc-exporter/openrc-exporter.initd
deleted file mode 100644
index a05226c39a6..00000000000
--- a/testing/openrc-exporter/openrc-exporter.initd
+++ /dev/null
@@ -1,14 +0,0 @@
-#!/sbin/openrc-run
-supervisor=supervise-daemon
-
-name=openrc-exporter
-description="Prometheus exporter which exposes metrics on services managed by OpenRC"
-
-command=/usr/bin/openrc-exporter
-command_args="$openrc_exporter_opts"
-command_user="openrc-exporter:openrc-exporter"
-
-depend() {
- need net
- after firewall
-}
diff --git a/testing/openrc-exporter/openrc-exporter.pre-install b/testing/openrc-exporter/openrc-exporter.pre-install
deleted file mode 100644
index 6ff2e15769d..00000000000
--- a/testing/openrc-exporter/openrc-exporter.pre-install
+++ /dev/null
@@ -1,6 +0,0 @@
-#!/bin/sh
-
-addgroup -S openrc-exporter 2>/dev/null
-adduser -H -S -D -s /sbin/nologin -G openrc-exporter -g openrc-exporter openrc-exporter 2>/dev/null
-
-exit 0
diff --git a/testing/openresty/APKBUILD b/testing/openresty/APKBUILD
deleted file mode 100644
index 9546b4b0e3a..00000000000
--- a/testing/openresty/APKBUILD
+++ /dev/null
@@ -1,157 +0,0 @@
-# Contributor: tcely <openresty+aports@tcely.33mail.com>
-# Maintainer: Will Sinatra <wpsinatra@gmail.com>
-pkgname=openresty
-pkgver=1.21.4.1
-_pkgver=rc3
-pkgrel=0
-pkgdesc="Scalable Web Platform by Extending NGINX with Lua"
-url="https://openresty.org/"
-arch="all !riscv64" # blocked by luajit
-license="BSD-2-Clause"
-options="!check" # tests environment not available
-provides="nginx"
-makedepends="linux-headers gd-dev geoip-dev openssl-dev libxml2-dev libxslt-dev
- luajit-dev pcre-dev perl-dev pkgconf readline-dev zlib-dev"
-subpackages="$pkgname-doc"
-source="https://openresty.org/download/openresty-$pkgver$_pkgver.tar.gz"
-builddir="$srcdir/$pkgname-$pkgver$_pkgver"
-
-_modules_dir="/usr/lib/nginx/modules"
-_add_module() {
- local name="http-$1"
- local _soname="${2-$1}"
- local soname="ngx_http_${_soname//-/_}_module.so"
-
- subpackages="$subpackages $pkgname-mod-${name}:_module"
- eval "_module_${name//-/_}_so='${soname//\'}'"
-
- [ -z "$3" ] || { shift; shift; eval "_module_${name//-/_}_deps='${*//\'}'"; }
-}
-
-_add_module echo
-_add_module headers-more headers_more_filter
-_add_module lua lua nginx-mod-devel-kit
-_add_module lua-upstream lua_upstream "$pkgname-mod-http-lua"
-_add_module redis2
-_add_module set-misc set_misc nginx-mod-devel-kit
-
-prepare() {
- default_prepare
- sed -i.orig -e '/--add-module=$dir/s/module/dynamic-&/' configure
-}
-
-_configure() {
- local _pkgname=nginx
-
- ./configure -j"$(nproc)" \
- --prefix=/usr/lib/$_pkgname \
- --sbin-path=/usr/sbin/$_pkgname \
- --modules-path="$_modules_dir" \
- --conf-path=/etc/$_pkgname/$_pkgname.conf \
- --pid-path=/var/run/$_pkgname/$_pkgname.pid \
- --lock-path=/var/run/$_pkgname/$_pkgname.lock \
- --error-log-path=/var/log/$_pkgname/error.log \
- --http-log-path=/var/log/$_pkgname/access.log \
- \
- --http-client-body-temp-path=/var/tmp/$_pkgname/client_body \
- --http-proxy-temp-path=/var/tmp/$_pkgname/proxy \
- --http-fastcgi-temp-path=/var/tmp/$_pkgname/fastcgi \
- --http-uwsgi-temp-path=/var/tmp/$_pkgname/uwsgi \
- --http-scgi-temp-path=/var/tmp/$_pkgname/scgi \
- --with-perl_modules_path=/usr/lib/perl5/vendor_perl \
- \
- --user=$_pkgname \
- --group=$_pkgname \
- --with-threads \
- --with-file-aio \
- \
- --with-http_ssl_module \
- --with-http_v2_module \
- --with-http_realip_module \
- --with-http_addition_module \
- --with-http_xslt_module=dynamic \
- --with-http_image_filter_module=dynamic \
- --with-http_geoip_module=dynamic \
- --with-luajit=/usr \
- --with-http_sub_module \
- --with-http_dav_module \
- --with-http_flv_module \
- --with-http_mp4_module \
- --with-http_gunzip_module \
- --with-http_gzip_static_module \
- --with-http_auth_request_module \
- --with-http_random_index_module \
- --with-http_secure_link_module \
- --with-http_degradation_module \
- --with-http_slice_module \
- --with-http_stub_status_module \
- --with-http_perl_module=dynamic \
- --with-mail=dynamic \
- --with-mail_ssl_module \
- --with-stream=dynamic \
- --with-stream_ssl_module \
- --with-stream_realip_module \
- --with-stream_geoip_module=dynamic \
- --with-stream_ssl_preread_module \
- --with-pcre-jit \
-
-}
-
-build() {
- _configure
- make
- mv build built
-
- mv configure.orig configure
- _configure
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-_module() {
- local name="${subpkgname#$pkgname-mod-}"
- local soname="$(eval echo "\$_module_${name//-/_}_so")"
- local _deps="$(eval echo "\$_module_${name//-/_}_deps")"
-
- pkgdesc="$pkgdesc (module $soname)"
- depends="cmd:nginx openresty${_deps:+ }$_deps"
- provides=""
-
- mkdir -p "${subpkgdir}$_modules_dir"
- cd "${subpkgdir}$_modules_dir"
- mv "$builddir"/built/nginx-*/objs/"$soname" .
-
- mkdir -p "$subpkgdir/etc/nginx/modules"
- cd "$subpkgdir/etc/nginx/modules"
- echo "load_module \"modules/$soname\";" > "./$name.conf"
-}
-
-doc() {
- default_doc
- local _prefix='/usr/lib/nginx'
-
- mkdir -p "$subpkgdir$_prefix"
- mkdir -p "$subpkgdir$_prefix/bin"
- mkdir -p "$subpkgdir$_prefix/site"
-
- mv "$pkgdir$_prefix/pod" "$subpkgdir$_prefix/"
- mv "$pkgdir$_prefix/site/pod" "$subpkgdir$_prefix/site/"
-
- mv "$pkgdir$_prefix/bin/md2pod.pl" "$subpkgdir$_prefix/bin/"
- mv "$pkgdir$_prefix/bin/nginx-xml2pod" "$subpkgdir$_prefix/bin/"
- mv "$pkgdir$_prefix/bin/restydoc" "$subpkgdir$_prefix/bin/"
- mv "$pkgdir$_prefix/bin/restydoc-index" "$subpkgdir$_prefix/bin/"
-
- mkdir -p "$subpkgdir/usr/lib/perl5/vendor_perl"
- mv "$pkgdir/usr/lib/perl5/vendor_perl/man3" "$subpkgdir/usr/lib/perl5/vendor_perl/"
-}
-
-#gpg_signature_extensions="asc"
-#gpgfingerprints="good:2545 1EB0 8846 0026 195B D62C B550 E09E A0E9 8066"
-
-sha512sums="
-9db798a06aa5ed0e0dbf0d20c2c2095d94470424136b303613025bcbcbc89e20dfb2f185948c6ac77bd3c6e580c77a17d371e5ede0725f2be10aa5a1b5a0a477 openresty-1.21.4.1rc3.tar.gz
-"
diff --git a/testing/openscad/0001-fix-CVE-2022-0496.patch b/testing/openscad/0001-fix-CVE-2022-0496.patch
deleted file mode 100644
index 8f8a1e889dc..00000000000
--- a/testing/openscad/0001-fix-CVE-2022-0496.patch
+++ /dev/null
@@ -1,76 +0,0 @@
-From 00a4692989c4e2f191525f73f24ad8727bacdf41 Mon Sep 17 00:00:00 2001
-From: Torsten Paul <Torsten.Paul@gmx.de>
-Date: Sat, 5 Feb 2022 18:38:31 +0100
-Subject: [PATCH] CVE-2022-0496 Out-of-bounds memory access in DXF loader.
-
-Public issue:
-https://github.com/openscad/openscad/issues/4037
-
-Fix in master branch:
-https://github.com/openscad/openscad/pull/4090
----
- src/dxfdata.cc | 27 +++++++++++++++++++++++----
- 1 file changed, 23 insertions(+), 4 deletions(-)
-
-diff --git a/src/dxfdata.cc b/src/dxfdata.cc
-index 2bb7236746..aa6b6f3976 100644
---- a/src/dxfdata.cc
-+++ b/src/dxfdata.cc
-@@ -441,6 +441,11 @@ DxfData::DxfData(double fn, double fs, double fa,
- auto lv = grid.data(this->points[lines[idx].idx[j]][0], this->points[lines[idx].idx[j]][1]);
- for (size_t ki = 0; ki < lv.size(); ++ki) {
- int k = lv.at(ki);
-+ if (k < 0 || k >= lines.size()) {
-+ LOG(message_group::Warning,Location::NONE,"",
-+ "Bad DXF line index in %1$s.",QuotedString(boostfs_uncomplete(filename, fs::current_path()).generic_string()));
-+ continue;
-+ }
- if (k == idx || lines[k].disabled) continue;
- goto next_open_path_j;
- }
-@@ -466,13 +471,20 @@ DxfData::DxfData(double fn, double fs, double fa,
- auto lv = grid.data(ref_point[0], ref_point[1]);
- for (size_t ki = 0; ki < lv.size(); ++ki) {
- int k = lv.at(ki);
-+ if (k < 0 || k >= lines.size()) {
-+ LOG(message_group::Warning,Location::NONE,"",
-+ "Bad DXF line index in %1$s.",QuotedString(boostfs_uncomplete(filename, fs::current_path()).generic_string()));
-+ continue;
-+ }
- if (lines[k].disabled) continue;
-- if (grid.eq(ref_point[0], ref_point[1], this->points[lines[k].idx[0]][0], this->points[lines[k].idx[0]][1])) {
-+ auto idk0 = lines[k].idx[0]; // make it easier to read and debug
-+ auto idk1 = lines[k].idx[1];
-+ if (grid.eq(ref_point[0], ref_point[1], this->points[idk0][0], this->points[idk0][1])) {
- current_line = k;
- current_point = 0;
- goto found_next_line_in_open_path;
- }
-- if (grid.eq(ref_point[0], ref_point[1], this->points[lines[k].idx[1]][0], this->points[lines[k].idx[1]][1])) {
-+ if (grid.eq(ref_point[0], ref_point[1], this->points[idk1][0], this->points[idk1][1])) {
- current_line = k;
- current_point = 1;
- goto found_next_line_in_open_path;
-@@ -501,13 +513,20 @@ DxfData::DxfData(double fn, double fs, double fa,
- auto lv = grid.data(ref_point[0], ref_point[1]);
- for (size_t ki = 0; ki < lv.size(); ++ki) {
- int k = lv.at(ki);
-+ if (k < 0 || k >= lines.size()) {
-+ LOG(message_group::Warning,Location::NONE,"",
-+ "Bad DXF line index in %1$s.",QuotedString(boostfs_uncomplete(filename, fs::current_path()).generic_string()));
-+ continue;
-+ }
- if (lines[k].disabled) continue;
-- if (grid.eq(ref_point[0], ref_point[1], this->points[lines[k].idx[0]][0], this->points[lines[k].idx[0]][1])) {
-+ auto idk0 = lines[k].idx[0]; // make it easier to read and debug
-+ auto idk1 = lines[k].idx[1];
-+ if (grid.eq(ref_point[0], ref_point[1], this->points[idk0][0], this->points[idk0][1])) {
- current_line = k;
- current_point = 0;
- goto found_next_line_in_closed_path;
- }
-- if (grid.eq(ref_point[0], ref_point[1], this->points[lines[k].idx[1]][0], this->points[lines[k].idx[1]][1])) {
-+ if (grid.eq(ref_point[0], ref_point[1], this->points[idk1][0], this->points[idk1][1])) {
- current_line = k;
- current_point = 1;
- goto found_next_line_in_closed_path;
diff --git a/testing/openscad/0002-fix-CVE-2022-0497.patch b/testing/openscad/0002-fix-CVE-2022-0497.patch
deleted file mode 100644
index fac3024d07f..00000000000
--- a/testing/openscad/0002-fix-CVE-2022-0497.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 84addf3c1efbd51d8ff424b7da276400bbfa1a4b Mon Sep 17 00:00:00 2001
-From: Torsten Paul <Torsten.Paul@gmx.de>
-Date: Sat, 5 Feb 2022 18:45:29 +0100
-Subject: [PATCH] CVE-2022-0497 Out-of-bounds memory access in comment parser.
-
-Public issue:
-https://github.com/openscad/openscad/issues/4043
-
-Fix in master branch:
-https://github.com/openscad/openscad/pull/4044
----
- src/comment.cpp | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/comment.cpp b/src/comment.cpp
-index f02ad2c5f6..1ce3ab547b 100644
---- a/src/comment.cpp
-+++ b/src/comment.cpp
-@@ -92,7 +92,7 @@ static std::string getComment(const std::string &fulltext, int line)
- }
-
- int end = start + 1;
-- while (fulltext[end] != '\n') end++;
-+ while (end < fulltext.size() && fulltext[end] != '\n') end++;
-
- std::string comment = fulltext.substr(start, end - start);
-
diff --git a/testing/openscad/0003-fix-build-with-cgal-5.3.patch b/testing/openscad/0003-fix-build-with-cgal-5.3.patch
deleted file mode 100644
index dc3c1caa3b7..00000000000
--- a/testing/openscad/0003-fix-build-with-cgal-5.3.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-From 9aa0d7e9f2914fe5f547bdde69202161d1c6064d Mon Sep 17 00:00:00 2001
-From: Jordan Brown <github@jordan.maileater.net>
-Date: Sun, 18 Jul 2021 21:01:46 -0700
-Subject: [PATCH] Fix build failure with "generic_print_polyhedron" on
- CGAL-5.3.
-
----
- src/cgalutils-polyhedron.cc | 13 -------------
- src/cgalutils.h | 1 -
- 2 files changed, 14 deletions(-)
-
-diff --git a/src/cgalutils-polyhedron.cc b/src/cgalutils-polyhedron.cc
-index 9f4f98f623..41cca4b3f2 100644
---- a/src/cgalutils-polyhedron.cc
-+++ b/src/cgalutils-polyhedron.cc
-@@ -337,19 +337,6 @@ namespace CGALUtils {
- }
- };
-
-- template <typename Polyhedron>
-- std::string printPolyhedron(const Polyhedron &p) {
-- std::ostringstream sstream;
-- sstream.precision(20);
--
-- Polyhedron_writer writer;
-- generic_print_polyhedron(sstream, p, writer);
--
-- return sstream.str();
-- }
--
-- template std::string printPolyhedron(const CGAL_Polyhedron &p);
--
- }; // namespace CGALUtils
-
- #endif /* ENABLE_CGAL */
-diff --git a/src/cgalutils.h b/src/cgalutils.h
-index 21a01cdba6..c08a3aa7df 100644
---- a/src/cgalutils.h
-+++ b/src/cgalutils.h
-@@ -45,7 +45,6 @@ namespace CGALUtils {
- bool is_approximately_convex(const PolySet &ps);
- Geometry const* applyMinkowski(const Geometry::Geometries &children);
-
-- template <typename Polyhedron> std::string printPolyhedron(const Polyhedron &p);
- template <typename Polyhedron> bool createPolySetFromPolyhedron(const Polyhedron &p, PolySet &ps);
- template <typename Polyhedron> bool createPolyhedronFromPolySet(const PolySet &ps, Polyhedron &p);
- template <class Polyhedron_A, class Polyhedron_B>
diff --git a/testing/openscad/0004-fix-build-with-cgal-5.4.patch b/testing/openscad/0004-fix-build-with-cgal-5.4.patch
deleted file mode 100644
index f1fedc2cd82..00000000000
--- a/testing/openscad/0004-fix-build-with-cgal-5.4.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From abfebc651343909b534ef337aacc7604c99cf0ea Mon Sep 17 00:00:00 2001
-From: Torsten Paul <Torsten.Paul@gmx.de>
-Date: Wed, 2 Feb 2022 02:30:59 +0100
-Subject: [PATCH] CGAL build fix, v5.4 renames projection traits header files
- and classes.
-
----
- src/cgalutils-tess.cc | 9 +++++----
- 1 file changed, 5 insertions(+), 4 deletions(-)
-
-diff --git a/src/cgalutils-tess.cc b/src/cgalutils-tess.cc
-index ec1cc1eeb3..37f8cf08b1 100644
---- a/src/cgalutils-tess.cc
-+++ b/src/cgalutils-tess.cc
-@@ -6,10 +6,12 @@
- #pragma push_macro("NDEBUG")
- #undef NDEBUG
- #include <CGAL/Constrained_Delaunay_triangulation_2.h>
--#if CGAL_VERSION_NR >= CGAL_VERSION_NUMBER(4,11,0)
-- #include <CGAL/Triangulation_2_projection_traits_3.h>
-+#if CGAL_VERSION_NR < 1050401000
-+#include <CGAL/Triangulation_2_projection_traits_3.h>
-+typedef CGAL::Triangulation_2_filtered_projection_traits_3<K> Projection;
- #else
-- #include <CGAL/Triangulation_2_filtered_projection_traits_3.h>
-+#include <CGAL/Projection_traits_3.h>
-+typedef CGAL::Filtered_projection_traits_3<K> Projection;
- #endif
- #include <CGAL/Triangulation_face_base_with_info_2.h>
- #pragma pop_macro("NDEBUG")
-@@ -19,7 +21,6 @@ struct FaceInfo {
- bool in_domain() { return nesting_level%2 == 1; }
- };
-
--typedef CGAL::Triangulation_2_filtered_projection_traits_3<K> Projection;
- typedef CGAL::Triangulation_face_base_with_info_2<FaceInfo, K> Fbb;
- typedef CGAL::Triangulation_data_structure_2<
- CGAL::Triangulation_vertex_base_2<Projection>,
diff --git a/testing/openscad/0005-fix-boost-join.patch b/testing/openscad/0005-fix-boost-join.patch
deleted file mode 100644
index 1347c2746a0..00000000000
--- a/testing/openscad/0005-fix-boost-join.patch
+++ /dev/null
@@ -1,62 +0,0 @@
-From 08bf69b4115c989fc5671254e0d05735d01bcca5 Mon Sep 17 00:00:00 2001
-From: Torsten Paul <Torsten.Paul@gmx.de>
-Date: Wed, 2 Feb 2022 00:50:43 +0100
-Subject: [PATCH] Fix build issue with overloaded join().
-
----
- src/openscad.cc | 11 +++++------
- 1 file changed, 5 insertions(+), 6 deletions(-)
-
-diff --git a/src/openscad.cc b/src/openscad.cc
-index a6f648d2a2..3c46cda2af 100644
---- a/src/openscad.cc
-+++ b/src/openscad.cc
-@@ -65,7 +65,6 @@
- #include <chrono>
- #include <boost/algorithm/string.hpp>
- #include <boost/algorithm/string/split.hpp>
--#include <boost/algorithm/string/join.hpp>
- #include <boost/range/adaptor/transformed.hpp>
- #include <boost/program_options.hpp>
- #include <boost/filesystem.hpp>
-@@ -307,7 +306,7 @@ void set_render_color_scheme(const std::string color_scheme, const bool exit_if_
- }
-
- if (exit_if_not_found) {
-- LOG(message_group::None,Location::NONE,"",(boost::join(ColorMap::inst()->colorSchemeNames(), "\n")));
-+ LOG(message_group::None,Location::NONE,"",(boost::algorithm::join(ColorMap::inst()->colorSchemeNames(), "\n")));
-
- exit(1);
- } else {
-@@ -885,7 +884,7 @@ struct CommaSeparatedVector
- };
-
- template <class Seq, typename ToString>
--std::string join(const Seq &seq, const std::string &sep, const ToString &toString)
-+std::string str_join(const Seq &seq, const std::string &sep, const ToString &toString)
- {
- return boost::algorithm::join(boost::adaptors::transform(seq, toString), sep);
- }
-@@ -947,7 +946,7 @@ int main(int argc, char **argv)
- ("P,P", po::value<string>(), "customizer parameter set")
- #ifdef ENABLE_EXPERIMENTAL
- ("enable", po::value<vector<string>>(), ("enable experimental features: " +
-- join(boost::make_iterator_range(Feature::begin(), Feature::end()), " | ",
-+ str_join(boost::make_iterator_range(Feature::begin(), Feature::end()), " | ",
- [](const Feature *feature) {
- return feature->get_name();
- }) +
-@@ -964,11 +963,11 @@ int main(int argc, char **argv)
- ("render", po::value<string>()->implicit_value(""), "for full geometry evaluation when exporting png")
- ("preview", po::value<string>()->implicit_value(""), "[=throwntogether] -for ThrownTogether preview png")
- ("animate", po::value<unsigned>(), "export N animated frames")
-- ("view", po::value<CommaSeparatedVector>(), ("=view options: " + boost::join(viewOptions.names(), " | ")).c_str())
-+ ("view", po::value<CommaSeparatedVector>(), ("=view options: " + boost::algorithm::join(viewOptions.names(), " | ")).c_str())
- ("projection", po::value<string>(), "=(o)rtho or (p)erspective when exporting png")
- ("csglimit", po::value<unsigned int>(), "=n -stop rendering at n CSG elements when exporting png")
- ("colorscheme", po::value<string>(), ("=colorscheme: " +
-- join(ColorMap::inst()->colorSchemeNames(), " | ",
-+ str_join(ColorMap::inst()->colorSchemeNames(), " | ",
- [](const std::string& colorScheme) {
- return (colorScheme == ColorMap::inst()->defaultColorSchemeName() ? "*" : "") + colorScheme;
- }) +
diff --git a/testing/openscad/APKBUILD b/testing/openscad/APKBUILD
deleted file mode 100644
index d194172b877..00000000000
--- a/testing/openscad/APKBUILD
+++ /dev/null
@@ -1,143 +0,0 @@
-# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
-pkgname=openscad
-pkgver=2021.01
-pkgrel=6
-pkgdesc="The programmers solid 3D CAD modeller"
-url="http://openscad.org/"
-# Glew and GLES on ARM don't play well with each other
-arch="all !armv7 !aarch64 !armhf"
-license="GPL-2.0-only"
-subpackages="$pkgname-doc"
-makedepends="
- bison
- boost-dev
- cairo-dev
- cgal-dev
- cmake
- double-conversion-dev
- eigen-dev
- flex
- glew-dev
- gmp-dev
- harfbuzz-dev
- libxml2-dev
- libzip-dev
- libspnav-dev
- mpfr-dev
- opencsg-dev
- qscintilla-dev
- qt5-qtbase-dev
- qt5-qtmultimedia-dev
- "
-checkdepends="
- imagemagick
- mesa
- mesa-dri-gallium
- python3
- xvfb-run
- "
-source="
- https://files.openscad.org/openscad-$pkgver.src.tar.gz
-
- 0001-fix-CVE-2022-0496.patch
- 0002-fix-CVE-2022-0497.patch
- 0003-fix-build-with-cgal-5.3.patch
- 0004-fix-build-with-cgal-5.4.patch
- 0005-fix-boost-join.patch
- "
-
-# Handle tests failing only on some arch's, or building against libs only
-# provided by some arch's.
-case "$CARCH" in
- x86_64)
- makedepends="$makedepends lib3mf-dev"
- export LIB3MF_INCLUDEPATH="/usr/include/lib3mf/Bindings/Cpp"
- ;;
- x86)
- makedepends="$makedepends lib3mf-dev"
- export LIB3MF_INCLUDEPATH="/usr/include/lib3mf/Bindings/Cpp"
- _arch_failing_tests="
- 3mfpngtest_cube10
- "
- ;;
- s390x)
- _arch_failing_tests="
- 3mfpngtest_cube10
- cgalbinstlcgalpngtest_bad-stl-pcbvicebar
- cgalbinstlcgalpngtest_bad-stl-tardis
- cgalbinstlcgalpngtest_fn_bug
- cgalbinstlcgalpngtest_issue1225
- cgalpngtest_import_3mf-tests
- csgpngtest_import_3mf-tests
- opencsgtest_import_3mf-tests
- throwntogethertest_import_3mf-tests
- "
- ;;
- *)
- # lib3mf is not available on all other archs
- _arch_failing_tests="
- 3mfpngtest_cube10
- cgalpngtest_import_3mf-tests
- csgpngtest_import_3mf-tests
- opencsgtest_import_3mf-tests
- throwntogethertest_import_3mf-tests
- "
- ;;
-esac
-
-# secfixes:
-# 2021.01-r2:
-# - CVE-2022-0496
-# - CVE-2022-0497
-
-build() {
- qmake-qt5 PREFIX="/usr"
- make
-}
-
-check() {
- cd tests
- # collect failing tests in a way that creates friendly git diffs
- local failing_tests
- failing_tests="
- 3mfexport_3mf-export
- astdumptest_allexpressions
- cgalbinstlcgalpngtest_polyhedron-nonplanar-tests
- cgalpngtest_nef3_broken
- cgalpngtest_polyhedron-nonplanar-tests
- cgalstlcgalpngtest_polyhedron-nonplanar-tests
- csgpngtest_nef3_broken
- csgpngtest_polyhedron-nonplanar-tests
- echotest_allexpressions
- echotest_function-literal-.*
- lazyunion-.*
- monotonepngtest_polyhedron-nonplanar-tests
- opencsgtest_nef3_broken
- pdfexporttest_centered
- pdfexporttest_simple-pdf
- throwntogethertest_nef3_broken
- $_arch_failing_tests
- "
-
- # trim whitespace before and after list and separate expressions by | (regex or)
- failing_tests="$(echo "$failing_tests" | tr -d '\n' | sed -e 's/^\s*//' -e 's/\s*$//' -e 's/\s\+/|/g')"
-
- cmake \
- -DEXPERIMENTAL=OFF \
- .
- make
- xvfb-run ctest -E "$failing_tests"
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
-}
-
-sha512sums="
-8deaa26bf4c295c12da38f323d2b2e6f827851337f5bc1cc9c79afc083c9f913c19a263086e6e853bf2c8434c1ccc705ea22ddb02dc99d39bb1e5e03fc58d128 openscad-2021.01.src.tar.gz
-369353f13bb6d2bf123af1e25b5f264cd757efa5d0cd8c226a3803a41a0fdb74aff7411ddf91cb394f9cd295e10e05159487fb6e9c2d661280bf060e391bc3da 0001-fix-CVE-2022-0496.patch
-708a491c5a6166bdf92419bce68dbcb4eccbb97ce1880c5a3c919a90ae5af19aa9092e46b81fe8705e8470189d43c4ecad19dece9f1e405681a186c0bd8f5ca4 0002-fix-CVE-2022-0497.patch
-090b8a8e53cc7560695d4065db891a3602923d893d752e3d007a42f2cd32c5f6f444d735d716658fb6f3d979e8cf2489cbff3a58a9070621ab5448a6dbf3372b 0003-fix-build-with-cgal-5.3.patch
-7d3067bcadf5a56b3b21b80f36e8d1fd99047029b86db6803b71760d47a8b199d3485c6486767707273aa57f9a83aaafcb763fe7a1ee295b01a776f7e5db038f 0004-fix-build-with-cgal-5.4.patch
-f0538eb98543a2a15534794f91c35f10d21fe04a8696639a4f08cd98daf63e6efc855b102f41ecb05a1e1bffeecc7c445fcfad7c3a90f32ec28c5a1646863466 0005-fix-boost-join.patch
-"
diff --git a/testing/openscap-daemon/APKBUILD b/testing/openscap-daemon/APKBUILD
index d5c9f5cdd79..6975d5a7d2a 100644
--- a/testing/openscap-daemon/APKBUILD
+++ b/testing/openscap-daemon/APKBUILD
@@ -2,14 +2,14 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=openscap-daemon
pkgver=0.1.10
-pkgrel=6
+pkgrel=9
pkgdesc="Manages continuous scans of your infrastructure"
url="https://www.open-scap.org/tools/openscap-daemon/"
arch="noarch"
license="LGPL-2.1-only"
depends="py3-gobject3"
-makedepends="python3-dev"
-subpackages="$pkgname-doc"
+makedepends="python3-dev py3-setuptools"
+subpackages="$pkgname-doc $pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/OpenSCAP/openscap-daemon/archive/$pkgver.tar.gz
python-3.7.patch"
@@ -31,7 +31,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
rm -rf "$pkgdir"/usr/lib/systemd
}
diff --git a/testing/openscap/APKBUILD b/testing/openscap/APKBUILD
deleted file mode 100644
index a2dc3e63375..00000000000
--- a/testing/openscap/APKBUILD
+++ /dev/null
@@ -1,52 +0,0 @@
-# Contributor: Francesco Colista <fcolista@alpinelinux.org>
-# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
-pkgname=openscap
-pkgver=1.3.6
-pkgrel=0
-pkgdesc="NIST Certified SCAP 1.2 toolkit"
-url="https://www.open-scap.org/tools/openscap-base/"
-arch="all"
-license="LGPL-2.1-or-later"
-makedepends="cmake python3-dev dbus-dev dbus-glib-dev bash libselinux-dev
- curl-dev openssl1.1-compat-dev libgcrypt-dev acl-dev libblkid libcap-dev libxml2-dev
- libxslt-dev openldap-dev pcre2-dev perl-xml-parser perl-xml-xpath perl-dev
- rpm-dev swig bzip2-dev asciidoc fts-dev doxygen procps-dev
- libbz2 util-linux-dev nss-dev xmlsec-dev"
-options="!check"
-subpackages="$pkgname-dev $pkgname-doc $pkgname-bash-completion"
-source="https://github.com/OpenSCAP/openscap/releases/download/$pkgver/openscap-$pkgver.tar.gz
- fix-ppc64le-path_max.patch
- path_mounted.patch
- "
-
-prepare() {
- default_prepare
- mkdir -p build
-}
-
-build() {
- cd "$builddir"/build
- export LIBS=-lfts
- cmake \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DENABLE_DOCS=ON \
- -DENABLE_PERL=OFF \
- -DENABLE_TESTS=OFF\
- ..
- make
-}
-
-package() {
- cd "$builddir"/build
- make DESTDIR="$pkgdir" install
-
- install -Dm644 "$builddir"/dist/bash_completion.d/oscap \
- "$pkgdir"/usr/share/bash-completion/completions/$pkgname
-}
-
-sha512sums="
-5e4d6c4addc15b2a0245b5caef80fda3020f1cac83ed4aa436ef3f1703d1d761060c931c2536fa68de7ad5bab002b79c8b2d1e5f7695d46249f4562f5a1569a0 openscap-1.3.6.tar.gz
-0d8e5eb492b4439b82e35e4a87a2030f9aeff3173bda60d8ce57584fa7d7dda970ad35099e45fe46a7e135d9a55d6c2ced0a8b180556e37c7a9926de28244133 fix-ppc64le-path_max.patch
-f2157d6b1d31affe16edb184a287b69d28808123f1cc26a5a4238040d935517b307772b1f2d66271b8ee99b59a4d204930f9147b78478c83c36c7fc8718ec1d9 path_mounted.patch
-"
diff --git a/testing/openscap/fix-ppc64le-path_max.patch b/testing/openscap/fix-ppc64le-path_max.patch
deleted file mode 100644
index 5fd2981d871..00000000000
--- a/testing/openscap/fix-ppc64le-path_max.patch
+++ /dev/null
@@ -1,34 +0,0 @@
---- a/src/OVAL/probes/unix/linux/iflisteners_probe.c
-+++ b/src/OVAL/probes/unix/linux/iflisteners_probe.c
-@@ -53,6 +53,7 @@
- #include <netdb.h>
- #include <arpa/inet.h>
- #include <regex.h>
-+#include <limits.h>
-
- #include "_seap.h"
- #include "probe-api.h"
-diff --git a/src/OVAL/probes/unix/process58_probe.c b/src/OVAL/probes/unix/process58_probe.c
-index 95ef0a7..3ab2cb0 100644
---- a/src/OVAL/probes/unix/process58_probe.c
-+++ b/src/OVAL/probes/unix/process58_probe.c
-@@ -67,6 +67,7 @@
- #include <fcntl.h>
- #include <sched.h>
- #include <time.h>
-+#include <limits.h>
-
- #ifdef HAVE_PROC_DEVNAME_H
- #include <proc/devname.h>
-diff --git a/src/OVAL/probes/independent/environmentvariable58_probe.c b/src/OVAL/probes/independent/environmentvariable58_probe.c
-index 552ce67..e2490ac 100644
---- a/src/OVAL/probes/independent/environmentvariable58_probe.c
-+++ b/src/OVAL/probes/independent/environmentvariable58_probe.c
-@@ -50,6 +50,7 @@
- #include <fcntl.h>
- #include <sys/types.h>
- #include <dirent.h>
-+#include <limits.h>
-
- #include <probe/probe.h>
- #include "_seap.h"
diff --git a/testing/openscap/path_mounted.patch b/testing/openscap/path_mounted.patch
deleted file mode 100644
index 2d6361402e6..00000000000
--- a/testing/openscap/path_mounted.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/src/OVAL/probes/fsdev.c b/src/OVAL/probes/fsdev.c
-index c0b0f76..99bf786 100644
---- a/src/OVAL/probes/fsdev.c
-+++ b/src/OVAL/probes/fsdev.c
-@@ -38,6 +38,7 @@
- #include <sys/types.h>
- #include <sys/stat.h>
- #include <errno.h>
-+#include <paths.h>
-
- #if defined(OS_LINUX)
- # include <mntent.h>
diff --git a/testing/openslide/APKBUILD b/testing/openslide/APKBUILD
new file mode 100644
index 00000000000..47babd604d8
--- /dev/null
+++ b/testing/openslide/APKBUILD
@@ -0,0 +1,52 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
+pkgname=openslide
+pkgver=3.4.1
+pkgrel=3
+pkgdesc="C library for reading virtual slide images"
+url="https://openslide.org"
+arch="all"
+license="LGPL-2.1-only"
+options="!check" # no test suite
+makedepends="
+ cairo-dev
+ gdk-pixbuf-dev
+ glib-dev
+ libpng-dev
+ libjpeg-turbo-dev
+ libxml2-dev
+ tiff-dev
+ openjpeg-dev
+ sqlite-dev
+ zlib-dev
+ "
+source="https://github.com/openslide/openslide/releases/download/v$pkgver/openslide-$pkgver.tar.gz"
+subpackages="$pkgname-dev $pkgname-tools:_tools $pkgname-doc"
+
+prepare() {
+ default_prepare
+ update_config_guess
+ update_config_sub
+}
+
+build() {
+ ./configure \
+ --target="$CTARGET" \
+ --build="$CBUILD" \
+ --host="$CHOST" \
+ --prefix=/usr
+ make
+}
+
+_tools() {
+ pkgdesc="Utilities for reading virtual slide images"
+ amove usr/bin
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+dfab4de1cc0c5599d0128e59957a43ecf6f75ea773d87e58967afe54733e4bcc0ef08573723194a33e7b1da8054a458f509f15a1b4830776d2851b83a9af279b openslide-3.4.1.tar.gz
+"
diff --git a/testing/opensm/APKBUILD b/testing/opensm/APKBUILD
index 2a9a8404d70..700bc87946a 100644
--- a/testing/opensm/APKBUILD
+++ b/testing/opensm/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer:
pkgname=opensm
pkgver=3.3.24
-pkgrel=0
+pkgrel=2
pkgdesc="OpenSM InfiniBand subnet manager"
url="https://github.com/linux-rdma/opensm"
arch="x86 x86_64 ppc64le"
diff --git a/testing/opensmtpd-filter-dkimsign/APKBUILD b/testing/opensmtpd-filter-dkimsign/APKBUILD
index df2b67c8da7..66591477885 100644
--- a/testing/opensmtpd-filter-dkimsign/APKBUILD
+++ b/testing/opensmtpd-filter-dkimsign/APKBUILD
@@ -4,7 +4,7 @@
_pkgname=filter-dkimsign
pkgname=opensmtpd-$_pkgname
pkgver=0.6
-pkgrel=0
+pkgrel=1
pkgdesc="OpenSMTPD filter for DKIM signing"
url="http://imperialat.at/dev/filter-dkimsign/"
arch="all"
diff --git a/testing/openspades/APKBUILD b/testing/openspades/APKBUILD
index 1aa891db566..4c8ea197028 100644
--- a/testing/openspades/APKBUILD
+++ b/testing/openspades/APKBUILD
@@ -3,41 +3,56 @@
pkgname=openspades
pkgver=0.1.3
_resource_version=r33
-pkgrel=3
+pkgrel=5
pkgdesc="open-source voxel firt person shooter"
url="http://openspades.yvt.jp/"
arch="x86_64 x86" #disabled for the other architectures due to compiling problems
license="GPL-3.0-only"
depends="bash openal-soft glew opus libjpeg-turbo libxinerama libxft zip"
-makedepends="grep make cmake openal-soft-dev glew-dev curl-dev sdl2-dev
- sdl2_image-dev freetype-dev opus-dev opusfile-dev libjpeg-turbo-dev
- libxinerama-dev libxft-dev"
+makedepends="
+ cmake
+ curl-dev
+ freetype-dev
+ glew-dev
+ grep
+ imagemagick
+ libjpeg-turbo-dev
+ libxft-dev
+ libxinerama-dev
+ openal-soft-dev
+ opus-dev
+ opusfile-dev
+ samurai
+ sdl2-dev
+ sdl2_image-dev
+ "
subpackages="$pkgname-doc"
options="!check" #no testsuite
source="$pkgname-$pkgver.zip::https://github.com/yvt/openspades/archive/v$pkgver.zip
https://github.com/yvt/openspades-paks/releases/download/$_resource_version/OpenSpadesDevPackage-$_resource_version.zip
fix-resources.patch"
-prepare() {
- default_prepare
- mv "$srcdir/Nonfree/pak000-Nonfree.pak" "$srcdir/$pkgname-$pkgver/Resources"
- mv "$srcdir/OfficialMods/font-unifont.pak" "$srcdir/$pkgname-$pkgver/Resources"
-}
-
build() {
- cmake CMakeLists.txt \
- -DCMAKE_INSTALL_PREFIX:PATH=/usr \
- -DCMAKE_BUILD_TYPE=None \
- -DOPENSPADES_RESDIR=/usr/share/$pkgname/Resources \
- -DOPENSPADES_INSTALL_RESOURCES=share/$pkgname/Resources \
- -DOPENSPADES_INSTALL_BINARY=bin
- make
+ cmake -G Ninja -B build \
+ -DCMAKE_INSTALL_PREFIX:PATH=/usr \
+ -DCMAKE_BUILD_TYPE=None \
+ -DOPENSPADES_RESDIR=/usr/share/$pkgname/Resources \
+ -DOPENSPADES_INSTALL_RESOURCES=share/$pkgname/Resources \
+ -DOPENSPADES_INSTALL_BINARY=bin
+ cmake --build build
+
+ # need to be installed by cmake
+ mv "$srcdir/Nonfree/pak000-Nonfree.pak" build/Resources/
+ mv "$srcdir/OfficialMods/font-unifont.pak" build/Resources/
}
package() {
- make DESTDIR="$pkgdir" install
+ DESTDIR="$pkgdir" cmake --install build
+ install -Dm644 "$srcdir"/Nonfree/LICENSE.md "$pkgdir"/usr/share/doc/openspades/ASSETS_LICENSE
}
-sha512sums="c7164dc5c9ac67ec20ef174b18e2ed7383fbe8ccd2d2e725b92256ee58273b96d6c2fa106ea7f8f196505f847340e381c221f97fe797a040575bb2dd6e228e6c openspades-0.1.3.zip
+sha512sums="
+c7164dc5c9ac67ec20ef174b18e2ed7383fbe8ccd2d2e725b92256ee58273b96d6c2fa106ea7f8f196505f847340e381c221f97fe797a040575bb2dd6e228e6c openspades-0.1.3.zip
eb16dee8adfdd93388eac6309908811af02afdcdd6d009e2ab30b87a6b9bb495e77d3de750af18a3209dcf01ddb8400a6b03c1d570f1b77f8a1d2e5f26eb329e OpenSpadesDevPackage-r33.zip
-f9d01fb4443c5cc8a60ef1d115bff21ddbd6e1ee606391d04962228c5b986b5ec27972350aa921f6837e8d73435ba84abdbd89adc1767282625d15defa947ebe fix-resources.patch"
+f9d01fb4443c5cc8a60ef1d115bff21ddbd6e1ee606391d04962228c5b986b5ec27972350aa921f6837e8d73435ba84abdbd89adc1767282625d15defa947ebe fix-resources.patch
+"
diff --git a/testing/openssl1.1-compat/APKBUILD b/testing/openssl1.1-compat/APKBUILD
new file mode 100644
index 00000000000..29eb65bacac
--- /dev/null
+++ b/testing/openssl1.1-compat/APKBUILD
@@ -0,0 +1,177 @@
+# Contributor: Ariadne Conill <ariadne@dereferenced.org>
+# Maintainer: Timo Teras <timo.teras@iki.fi>
+pkgname=openssl1.1-compat
+pkgver=1.1.1w
+_abiver=${pkgver%.*}
+pkgrel=0
+pkgdesc="toolkit for transport layer security (TLS) - version 1.1"
+url="https://www.openssl.org/"
+arch="all"
+license="OpenSSL"
+replaces="libressl"
+depends_dev="!openssl-dev"
+makedepends_build="perl"
+makedepends_host="linux-headers"
+makedepends="$makedepends_host $makedepends_build"
+subpackages="$pkgname-dbg $pkgname-libs-static:_static $pkgname-dev
+ libcrypto$_abiver:_libcrypto libssl$_abiver:_libssl"
+source="https://www.openssl.org/source/openssl-$pkgver.tar.gz
+ man-section.patch
+ ppc64.patch
+ "
+builddir="$srcdir/openssl-$pkgver"
+pcprefix="openssl$_abiver:pc:"
+
+# secfixes:
+# 1.1.1u-r1:
+# - CVE-2023-3446
+# 1.1.1t-r2:
+# - CVE-2023-0465
+# 1.1.1t-r1:
+# - CVE-2023-0464
+# 1.1.1t-r0:
+# - CVE-2022-4304
+# - CVE-2022-4450
+# - CVE-2023-0215
+# - CVE-2023-0286
+# 1.1.1q-r0:
+# - CVE-2022-2097
+# 1.1.1n-r0:
+# - CVE-2022-0778
+# 1.1.1l-r0:
+# - CVE-2021-3711
+# - CVE-2021-3712
+# 1.1.1k-r0:
+# - CVE-2021-3449
+# - CVE-2021-3450
+# 1.1.1j-r0:
+# - CVE-2021-23841
+# - CVE-2021-23840
+# - CVE-2021-23839
+# 1.1.1i-r0:
+# - CVE-2020-1971
+# 1.1.1g-r0:
+# - CVE-2020-1967
+# 1.1.1d-r3:
+# - CVE-2019-1551
+# 1.1.1d-r1:
+# - CVE-2019-1547
+# - CVE-2019-1549
+# - CVE-2019-1563
+# 1.1.1b-r1:
+# - CVE-2019-1543
+# 1.1.1a-r0:
+# - CVE-2018-0734
+# - CVE-2018-0735
+# 0:
+# - CVE-2022-1292
+# - CVE-2022-2068
+
+build() {
+ local _target _optflags
+
+ # openssl will prepend crosscompile always core CC et al
+ CC=${CC#${CROSS_COMPILE}}
+ CXX=${CXX#${CROSS_COMPILE}}
+ CPP=${CPP#${CROSS_COMPILE}}
+
+ # determine target OS for openssl
+ case "$CARCH" in
+ aarch64*) _target="linux-aarch64" ;;
+ arm*) _target="linux-armv4" ;;
+ mips64*) _target="linux64-mips64" ;;
+ # explicit _optflags is needed to prevent automatic -mips3 addition
+ mips*) _target="linux-mips32"; _optflags="-mips32" ;;
+ ppc) _target="linux-ppc" ;;
+ ppc64) _target="linux-ppc64" ;;
+ ppc64le) _target="linux-ppc64le" ;;
+ x86) _target="linux-elf" ;;
+ x86_64) _target="linux-x86_64"; _optflags="enable-ec_nistp_64_gcc_128" ;;
+ s390x) _target="linux64-s390x";;
+ riscv64) _target="linux-generic64";;
+ *) msg "Unable to determine architecture from (CARCH=$CARCH)" ; return 1 ;;
+ esac
+
+ # Configure assumes --options are for it, so can't use
+ # gcc's --sysroot fake this by overriding CC
+ [ -n "$CBUILDROOT" ] && CC="$CC --sysroot=$CBUILDROOT"
+
+ # when cross building do not enable threads as libatomic is not avaiable
+ if [ "$CBUILD" != "$CHOST" ]; then
+ case $CARCH in
+ riscv64) _optflags="$_optflags no-threads";;
+ esac
+ fi
+
+ perl ./Configure \
+ $_target \
+ --prefix=/usr \
+ --libdir=lib \
+ --openssldir=/etc/ssl1.1 \
+ shared \
+ no-zlib \
+ no-async \
+ no-comp \
+ no-idea \
+ no-mdc2 \
+ no-rc5 \
+ no-ec2m \
+ no-sm2 \
+ no-sm4 \
+ no-ssl2 \
+ no-ssl3 \
+ no-seed \
+ no-weak-ssl-ciphers \
+ $_optflags \
+ $CPPFLAGS \
+ $CFLAGS \
+ $LDFLAGS -Wa,--noexecstack
+ make
+}
+
+check() {
+ # AFALG tests have a sporadic test failure, just delete the broken
+ # test for now.
+ rm -f test/recipes/30-test_afalg.t
+
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install_sw install_ssldirs
+ # remove the script c_rehash
+ rm "$pkgdir"/usr/bin/c_rehash
+ mv -f "$pkgdir"/usr/bin/openssl "$pkgdir"/usr/bin/openssl$_abiver
+}
+
+_libcrypto() {
+ pkgdesc="Crypto library from openssl"
+ replaces="libressl2.7-libcrypto"
+ mkdir -p "$subpkgdir"/lib "$subpkgdir"/usr/lib
+ mv "$pkgdir"/etc "$subpkgdir"/
+ for i in "$pkgdir"/usr/lib/libcrypto*; do
+ mv $i "$subpkgdir"/lib/
+ ln -s ../../lib/${i##*/} "$subpkgdir"/usr/lib/${i##*/}
+ done
+ mv "$pkgdir"/usr/lib/engines-$_abiver "$subpkgdir"/usr/lib/
+}
+
+_libssl() {
+ pkgdesc="SSL shared libraries"
+
+ mkdir -p "$subpkgdir"/lib "$subpkgdir"/usr/lib
+ for i in "$pkgdir"/usr/lib/libssl*; do
+ mv $i "$subpkgdir"/lib/
+ ln -s ../../lib/${i##*/} "$subpkgdir"/usr/lib/${i##*/}
+ done
+}
+
+_static() {
+ default_static
+}
+
+sha512sums="
+b4c625fe56a4e690b57b6a011a225ad0cb3af54bd8fb67af77b5eceac55cc7191291d96a660c5b568a08a2fbf62b4612818e7cca1bb95b2b6b4fc649b0552b6d openssl-1.1.1w.tar.gz
+43c3255118db6f5f340dc865c0f25ccbcafe5bf7507585244ca59b4d27daf533d6c3171aa32a8685cbb6200104bec535894b633de13feaadff87ab86739a445a man-section.patch
+e040f23770d52b988578f7ff84d77563340f37c026db7643db8e4ef18e795e27d10cb42cb8656da4d9c57a28283a2828729d70f940edc950c3422a54fea55509 ppc64.patch
+"
diff --git a/testing/openssl1.1-compat/man-section.patch b/testing/openssl1.1-compat/man-section.patch
new file mode 100644
index 00000000000..0606897f45e
--- /dev/null
+++ b/testing/openssl1.1-compat/man-section.patch
@@ -0,0 +1,54 @@
+From: Debian OpenSSL Team <pkg-openssl-devel@lists.alioth.debian.org>
+Date: Sun, 5 Nov 2017 15:09:09 +0100
+Subject: man-section
+
+---
+ Configurations/unix-Makefile.tmpl | 6 ++++--
+ util/process_docs.pl | 3 ++-
+ 2 files changed, 6 insertions(+), 3 deletions(-)
+
+diff --git a/Configurations/unix-Makefile.tmpl b/Configurations/unix-Makefile.tmpl
+index 1292053546f5..c034d21884d8 100644
+--- a/Configurations/unix-Makefile.tmpl
++++ b/Configurations/unix-Makefile.tmpl
+@@ -183,7 +183,8 @@ HTMLDIR=$(DOCDIR)/html
+ # MANSUFFIX is for the benefit of anyone who may want to have a suffix
+ # appended after the manpage file section number. "ssl" is popular,
+ # resulting in files such as config.5ssl rather than config.5.
+-MANSUFFIX=
++MANSUFFIX=ssl
++MANSECTION=SSL
+ HTMLSUFFIX=html
+
+ # For "optional" echo messages, to get "real" silence
+@@ -726,7 +727,8 @@ uninstall_runtime: uninstall_programs uninstall_runtime_libs
+ @[ -n "$(INSTALLTOP)" ] || (echo INSTALLTOP should not be empty; exit 1)
+ @$(ECHO) "*** Installing manpages"
+ $(PERL) $(SRCDIR)/util/process_docs.pl \
+- "--destdir=$(DESTDIR)$(MANDIR)" --type=man --suffix=$(MANSUFFIX)
++ "--destdir=$(DESTDIR)$(MANDIR)" --type=man --suffix=$(MANSUFFIX) \
++ --mansection=$(MANSECTION)
+
+ uninstall_man_docs:
+ @$(ECHO) "*** Uninstalling manpages"
+diff --git a/util/process_docs.pl b/util/process_docs.pl
+index 30b149eb8fcc..424155ea808e 100755
+--- a/util/process_docs.pl
++++ b/util/process_docs.pl
+@@ -37,6 +37,7 @@ GetOptions(\%options,
+ 'type=s', # The result type, 'man' or 'html'
+ 'suffix:s', # Suffix to add to the extension.
+ # Only used with type=man
++ 'mansection:s', # Section to put to manpage in
+ 'remove', # To remove files rather than writing them
+ 'dry-run|n', # Only output file names on STDOUT
+ 'debug|D+',
+@@ -97,7 +98,7 @@ foreach my $section (sort @{$options{section}}) {
+ my $name = uc $podname;
+ my $suffix = { man => ".$podinfo{section}".($options{suffix} // ""),
+ html => ".html" } -> {$options{type}};
+- my $generate = { man => "pod2man --name=$name --section=$podinfo{section} --center=OpenSSL --release=$config{version} \"$podpath\"",
++ my $generate = { man => "pod2man --name=$name --section=$podinfo{section}$options{mansection} --center=OpenSSL --release=$config{version} \"$podpath\"",
+ html => "pod2html \"--podroot=$options{sourcedir}\" --htmldir=$updir --podpath=man1:man3:man5:man7 \"--infile=$podpath\" \"--title=$podname\" --quiet"
+ } -> {$options{type}};
+ my $output_dir = catdir($options{destdir}, "man$podinfo{section}");
diff --git a/testing/openssl1.1-compat/ppc64.patch b/testing/openssl1.1-compat/ppc64.patch
new file mode 100644
index 00000000000..c75ceedba2c
--- /dev/null
+++ b/testing/openssl1.1-compat/ppc64.patch
@@ -0,0 +1,96 @@
+From 34ab13b7d8e3e723adb60be8142e38b7c9cd382a Mon Sep 17 00:00:00 2001
+From: Andy Polyakov <appro@openssl.org>
+Date: Sun, 5 May 2019 18:25:50 +0200
+Subject: [PATCH] crypto/perlasm/ppc-xlate.pl: add linux64v2 flavour
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+This is a big endian ELFv2 configuration. ELFv2 was already being
+used for little endian, and big endian was traditionally ELFv1
+but there are practical configurations that use ELFv2 with big
+endian nowadays (Adélie Linux, Void Linux, possibly Gentoo, etc.)
+
+Reviewed-by: Paul Dale <paul.dale@oracle.com>
+Reviewed-by: Richard Levitte <levitte@openssl.org>
+(Merged from https://github.com/openssl/openssl/pull/8883)
+---
+ crypto/perlasm/ppc-xlate.pl | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/crypto/perlasm/ppc-xlate.pl b/crypto/perlasm/ppc-xlate.pl
+index e52f2f6ea62..5fcd0526dff 100755
+--- a/crypto/perlasm/ppc-xlate.pl
++++ b/crypto/perlasm/ppc-xlate.pl
+@@ -49,7 +49,7 @@
+ /osx/ && do { $name = "_$name";
+ last;
+ };
+- /linux.*(32|64le)/
++ /linux.*(32|64(le|v2))/
+ && do { $ret .= ".globl $name";
+ if (!$$type) {
+ $ret .= "\n.type $name,\@function";
+@@ -80,7 +80,7 @@
+ };
+ my $text = sub {
+ my $ret = ($flavour =~ /aix/) ? ".csect\t.text[PR],7" : ".text";
+- $ret = ".abiversion 2\n".$ret if ($flavour =~ /linux.*64le/);
++ $ret = ".abiversion 2\n".$ret if ($flavour =~ /linux.*64(le|v2)/);
+ $ret;
+ };
+ my $machine = sub {
+@@ -186,7 +186,7 @@
+
+ # Some ABIs specify vrsave, special-purpose register #256, as reserved
+ # for system use.
+-my $no_vrsave = ($flavour =~ /aix|linux64le/);
++my $no_vrsave = ($flavour =~ /aix|linux64(le|v2)/);
+ my $mtspr = sub {
+ my ($f,$idx,$ra) = @_;
+ if ($idx == 256 && $no_vrsave) {
+@@ -318,7 +318,7 @@ sub vfour {
+ if ($label) {
+ my $xlated = ($GLOBALS{$label} or $label);
+ print "$xlated:";
+- if ($flavour =~ /linux.*64le/) {
++ if ($flavour =~ /linux.*64(le|v2)/) {
+ if ($TYPES{$label} =~ /function/) {
+ printf "\n.localentry %s,0\n",$xlated;
+ }
+
+From 098404128383ded87ba390dd74ecd9e2ffa6f530 Mon Sep 17 00:00:00 2001
+From: Andy Polyakov <appro@openssl.org>
+Date: Sun, 5 May 2019 18:30:55 +0200
+Subject: [PATCH] Configure: use ELFv2 ABI on some ppc64 big endian systems
+
+If _CALL_ELF is defined to be 2, it's an ELFv2 system.
+Conditionally switch to the v2 perlasm scheme.
+
+Reviewed-by: Paul Dale <paul.dale@oracle.com>
+Reviewed-by: Richard Levitte <levitte@openssl.org>
+(Merged from https://github.com/openssl/openssl/pull/8883)
+---
+ Configure | 10 +++++++---
+ 1 file changed, 7 insertions(+), 3 deletions(-)
+
+diff --git a/Configure b/Configure
+index 22082deb4c7..e303d98deb3 100755
+--- a/Configure
++++ b/Configure
+@@ -1402,8 +1402,15 @@
+ my %predefined_C = compiler_predefined($config{CROSS_COMPILE}.$config{CC});
+ my %predefined_CXX = $config{CXX}
+ ? compiler_predefined($config{CROSS_COMPILE}.$config{CXX})
+ : ();
+
++unless ($disabled{asm}) {
++ # big endian systems can use ELFv2 ABI
++ if ($target eq "linux-ppc64") {
++ $target{perlasm_scheme} = "linux64v2" if ($predefined_C{_CALL_ELF} == 2);
++ }
++}
++
+ # Check for makedepend capabilities.
+ if (!$disabled{makedepend}) {
+ if ($config{target} =~ /^(VC|vms)-/) {
diff --git a/testing/opensurge/APKBUILD b/testing/opensurge/APKBUILD
deleted file mode 100644
index c63235b21b4..00000000000
--- a/testing/opensurge/APKBUILD
+++ /dev/null
@@ -1,38 +0,0 @@
-# Contributor: David Demelier <markand@malikania.fr>
-# Maintainer: David Demelier <markand@malikania.fr>
-pkgname=opensurge
-pkgver=0.5.2.1
-pkgrel=0
-pkgdesc="2D retro platformer inspired by Sonic games"
-url="https://opensurge2d.org"
-arch="all"
-license="GPL-3.0-only"
-makedepends="allegro-dev cmake linux-headers surgescript-dev"
-source="opensurge-$pkgver.tar.gz::https://github.com/alemart/opensurge/archive/refs/tags/v$pkgver.tar.gz
- patch-zip.patch"
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_BUILD_TYPE=None \
- -DGAME_BINDIR=/bin \
- $CMAKE_CROSSOPTS .
- cmake --build build
-}
-
-check() {
- cd build
- CTEST_OUTPUT_ON_FAILURE=TRUE ctest
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-
-sha512sums="
-1f407ca33ef6d6bd72848f3db1b0b51f42a19648c1164d3547bdc2126dba310f318527f3bf04af0dfe78998a3a53bf057af92f8b1ff36e33255ee270a97bf2f3 opensurge-0.5.2.1.tar.gz
-e830dcac54afa3d8042a5ac647dbcf96df065639b425070f7b5874741360996b46a6ffe30b14b6b01f19b9404e2541d020d7bba7caf0c29f2408a2531deba991 patch-zip.patch
-"
diff --git a/testing/opensurge/patch-zip.patch b/testing/opensurge/patch-zip.patch
deleted file mode 100644
index 39aee00055c..00000000000
--- a/testing/opensurge/patch-zip.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-Fix invalid conditional on recent version of musl.
-
-Upstream: not yet, need better alternative.
---- a/src/core/zip/zip.h
-+++ b/src/core/zip/zip.h
-@@ -19,15 +19,6 @@
- extern "C" {
- #endif
-
--#if !defined(_SSIZE_T_DEFINED) && !defined(_SSIZE_T_DEFINED_) && \
-- !defined(_SSIZE_T) && !defined(_SSIZE_T_) && \
-- !defined(__ssize_t_defined) && !defined(ssize_t) && \
-- !defined(_SSIZE_T_DECLARED) && !defined(HAVE_SSIZE_T)
--#define _SSIZE_T
--#define __ssize_t_defined
--typedef long ssize_t; /* byte count or error */
--#endif
--
- #ifndef MAX_PATH
- #define MAX_PATH 32767 /* # chars in a path name including NULL */
- #endif
diff --git a/testing/opentelemetry-cpp/APKBUILD b/testing/opentelemetry-cpp/APKBUILD
new file mode 100644
index 00000000000..92997fa44c7
--- /dev/null
+++ b/testing/opentelemetry-cpp/APKBUILD
@@ -0,0 +1,108 @@
+# Contributor: Severin Neumann <neumanns@cisco.com>
+# Maintainer: Severin Neumann <neumanns@cisco.com>
+pkgname=opentelemetry-cpp
+pkgver=1.11.0
+pkgrel=2
+_opentelemetryproto_ver=1.0.0
+pkgdesc="OpenTelemetry C++"
+url="https://opentelemetry.io/"
+arch="all !s390x" # failing test (TraceIdRatioBasedSampler.ShouldSampleWithoutContext)
+license="Apache-2.0"
+depends_dev="
+ $pkgname=$pkgver-r$pkgrel
+ $pkgname-exporter-otlp-common=$pkgver-r$pkgrel
+ $pkgname-exporter-otlp-grpc=$pkgver-r$pkgrel
+ $pkgname-exporter-otlp-http=$pkgver-r$pkgrel
+ $pkgname-exporter-zipkin=$pkgver-r$pkgrel
+ "
+makedepends="
+ abseil-cpp-dev
+ c-ares-dev
+ cmake
+ curl-dev
+ grpc-dev
+ nlohmann-json
+ protobuf-dev
+ re2-dev
+ samurai
+ "
+checkdepends="
+ benchmark-dev
+ gtest-dev
+ "
+subpackages="
+ $pkgname-dev
+ $pkgname-exporter-otlp-common
+ $pkgname-exporter-otlp-grpc
+ $pkgname-exporter-otlp-http
+ $pkgname-exporter-zipkin
+ "
+source="
+ https://github.com/open-telemetry/opentelemetry-cpp/archive/v$pkgver/opentelemetry-cpp-v$pkgver.tar.gz
+ opentelemetry-proto-$_opentelemetryproto_ver.tar.gz::https://github.com/open-telemetry/opentelemetry-proto/archive/refs/tags/v$_opentelemetryproto_ver.tar.gz
+ gcc13.patch
+ "
+
+build() {
+ # skip some broken asm in benchmark 1.8.1
+ export CXXFLAGS="$CXXFLAGS -DBENCHMARK_HAS_NO_INLINE_ASSEMBLY"
+ cmake -B build -G Ninja -Wno-dev \
+ -DOTELCPP_PROTO_PATH="$srcdir/opentelemetry-proto-$_opentelemetryproto_ver" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DBUILD_SHARED_LIBS=ON \
+ -DBUILD_TESTING="$(want_check && echo ON || echo OFF)" \
+ -DBUILD_W3CTRACECONTEXT_TEST="$(want_check && echo ON || echo OFF)" \
+ -DCMAKE_BUILD_TYPE=None \
+ -DWITH_ABSEIL=ON \
+ -DWITH_STL=ON \
+ -DWITH_EXAMPLES=OFF \
+ -DWITH_ZPAGES=OFF \
+ -DWITH_OTLP_GRPC=ON \
+ -DWITH_OTLP_HTTP=ON \
+ -DWITH_ZIPKIN=ON \
+ -DWITH_PROMETHEUS=OFF \
+ -DWITH_LOGS_PREVIEW=OFF \
+ -DWITH_ASYNC_EXPORT_PREVIEW=OFF \
+ -DWITH_METRICS_EXEMPLAR_PREVIEW=OFF
+ cmake --build build
+}
+
+check() {
+ cd build
+ # these seem to fail on 32-bit as passing an invalid curl option
+ CTEST_OUTPUT_ON_FAILURE=TRUE ctest -j1 -E '(SendPostRequest.*)'
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+common() {
+ pkgdesc="OpenTelemetry C++ OTLP Common Libraries"
+ depends="$pkgname=$pkgver-r$pkgrel"
+ amove usr/lib/libopentelemetry_otlp*
+}
+
+http() {
+ pkgdesc="OpenTelemetry C++ OTLP HTTP exporter"
+ depends="$pkgname=$pkgver-r$pkgrel $pkgname-exporter-otlp-common=$pkgver-r$pkgrel"
+ amove usr/lib/libopentelemetry_exporter_otlp_http*
+}
+
+grpc() {
+ pkgdesc="OpenTelemetry C++ OTLP gRPC exporter"
+ depends="$pkgname=$pkgver-r$pkgrel $pkgname-exporter-otlp-common=$pkgver-r$pkgrel"
+ amove usr/lib/libopentelemetry_exporter_otlp_grpc*
+}
+
+zipkin() {
+ pkgdesc="OpenTelemetry C++ OTLP Zipkin exporter"
+ depends="$pkgname=$pkgver-r$pkgrel"
+ amove usr/lib/libopentelemetry_exporter_zipkin*
+}
+
+sha512sums="
+906df3cd44d88f7846231bc14c7305b9c6d9ee22ebd5a0cce21d6da1d7d62e72efe6101a2518d969a238eb3d6bbdf75e8017d7ab42edc0409391700973602006 opentelemetry-cpp-v1.11.0.tar.gz
+74de78304a91fe72cfcdbd87fcb19c0d6338c161d6624ce09eac0527b1b43b8a5d8790ae055e1d3d44319eaa070a506f47e740f888c91d724a0aef8b509688f0 opentelemetry-proto-1.0.0.tar.gz
+ca839f8bac0b16855fdbe539c21bf16de0fcd13802bb0ba62d25db99a6bf1fa5e6911dbb19ee0523f39bb47188e5c657e2fd10193908c060a6b74f8d2c5f0fc3 gcc13.patch
+"
diff --git a/testing/opentelemetry-cpp/gcc13.patch b/testing/opentelemetry-cpp/gcc13.patch
new file mode 100644
index 00000000000..5933a699dfc
--- /dev/null
+++ b/testing/opentelemetry-cpp/gcc13.patch
@@ -0,0 +1,12 @@
+diff --git a/api/include/opentelemetry/trace/propagation/detail/hex.h b/api/include/opentelemetry/trace/propagation/detail/hex.h
+index c8bd58f..aecdedd 100644
+--- a/api/include/opentelemetry/trace/propagation/detail/hex.h
++++ b/api/include/opentelemetry/trace/propagation/detail/hex.h
+@@ -5,6 +5,7 @@
+
+ #include <algorithm>
+ #include <cstring>
++#include <cstdint>
+
+ #include "opentelemetry/nostd/string_view.h"
+ #include "opentelemetry/version.h"
diff --git a/testing/openttd/APKBUILD b/testing/openttd/APKBUILD
index 3de0d14abd9..8683114f3eb 100644
--- a/testing/openttd/APKBUILD
+++ b/testing/openttd/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Adrian Siekierka <kontakt@asie.pl>
# Maintainer: Thomas Kienlen <kommander@laposte.net>
pkgname=openttd
-pkgver=12.2
-pkgrel=2
+pkgver=13.4
+pkgrel=1
pkgdesc="Open source version of the Transport Tycoon Deluxe simulator"
url="https://www.openttd.org"
arch="all"
@@ -16,7 +16,7 @@ makedepends="
libpng-dev
lzo-dev
samurai
- sdl12-compat-dev
+ sdl2-dev
xz-dev
zlib-dev
"
@@ -32,9 +32,8 @@ build() {
-DCMAKE_INSTALL_BINDIR=bin \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_DATADIR=share/games \
- -DGLOBAL_DATA_DIR=share/games/openttd \
-DCMAKE_BUILD_TYPE=Release \
- -DReleaseBuild=ON
+ -DCMAKE_EXE_LINKER_FLAGS="$LDFLAGS -Wl,-z,stack-size=1048576"
cmake --build build
}
@@ -52,6 +51,6 @@ lang() {
}
sha512sums="
-577792faee1d5e0c19fbfe31501dab3359f8e1327caa87e6378bb3e616ab6b2c64d02044c6ac99f7c40397df7bc6847a6b432852a5318a2db574203ddebfaef6 openttd-12.2-source.tar.xz
+84f57a39c0dade44f0e6153dff7a40eec0da8e2f892ce870d5f9e037f80daa5c7c46ff786fa51c3671366dd5056504cd7ccbc1c4e5bce8b2c5575533b454c001 openttd-13.4-source.tar.xz
fef70a685b4d440a0c1a6b6cde94df2dcada7ee10f4b213ee0a649dfbbb5de800aed06a4f066b2be5369147b1ecd83ad6b89bdb06138c46b250ca7f75c95b5a4 no-sse4.patch
"
diff --git a/testing/openvino/APKBUILD b/testing/openvino/APKBUILD
deleted file mode 100644
index 9bedf477df2..00000000000
--- a/testing/openvino/APKBUILD
+++ /dev/null
@@ -1,146 +0,0 @@
-# Contributor: Dennis Krupenik <dennis@krupenik.com>
-# Maintainer: Dennis Krupenik <dennis@krupenik.com>
-pkgname=openvino
-pkgver=2020.4
-_gflags=46f73f88b18aee341538c0dfc22b1710a6abedef
-_ade=cbe2db61a659c2cc304c3837406f95c39dfa938e
-_googletest=9bd163b993459b2ca6ba2dc508577bbc8774c851
-_onednn=2706f56ebab54415be48add2751072065f4b52ab
-pkgrel=3
-pkgdesc="Deep Learning Deployment Toolkit"
-url="https://github.com/openvinotoolkit/openvino"
-# limited by geos -> gdal -> vtk -> opencv
-# x86: error: '_mm_insert_epi64' was not declared in this scope; did you mean '_mm_insert_epi32'?
-# 'usr/openvino/deployment_tools/inference_engine/lib/*/cache.json' not found for others than x86_64
-arch="x86_64"
-license="Apache-2.0"
-depends_dev="opencl-headers opencl-icd-loader-dev opencv-dev"
-makedepends="autoconf automake cmake cython gcompat git libtool python3-dev
- py3-setuptools samurai $depends_dev"
-subpackages="$pkgname-static py3-$pkgname:py3 $pkgname-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/openvinotoolkit/openvino/archive/$pkgver.tar.gz
- gflags-$_gflags.tar.gz::https://github.com/gflags/gflags/archive/$_gflags.tar.gz
- ade-$_ade.tar.gz::https://github.com/opencv/ade/archive/$_ade.tar.gz
- googletest-$_googletest.tar.gz::https://github.com/openvinotoolkit/googletest/archive/$_googletest.tar.gz
- oneDNN-$_onednn.tar.gz::https://github.com/openvinotoolkit/oneDNN/archive/$_onednn.tar.gz
- cmake-config.patch
- pessimizing-move.patch
- deprecated-copy.patch
- cmake-dont-force-build-type.patch
- include-stdexcept.patch
- fix-missing-include.patch
- "
-
-prepare() {
- # FIXME: use system versions
- cp -r "$srcdir"/ade-*/* inference-engine/thirdparty/ade/
- cp -r "$srcdir"/gflags-*/* inference-engine/samples/thirdparty/gflags/
- cp -r "$srcdir"/googletest-*/* inference-engine/tests/ie_test_utils/common_test_utils/gtest/
- cp -r "$srcdir"/oneDNN-*/* inference-engine/thirdparty/mkl-dnn/
-
- default_prepare
-
- sed -e 's|-Werror||g' -i cmake/os_flags.cmake
-}
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build -G Ninja \
- -Wno-dev \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=/usr/openvino \
- -DENABLE_ALTERNATIVE_TEMP=OFF \
- -DENABLE_CLANG_FORMAT=OFF \
- -DENABLE_CPPLINT=OFF \
- -DENABLE_GNA=OFF \
- -DENABLE_MYRIAD=OFF \
- -DENABLE_OPENCV=OFF \
- -DENABLE_PROFILING_ITT=OFF \
- -DENABLE_PYTHON=ON \
- -DENABLE_SAMPLES=OFF \
- -DENABLE_SPEECH_DEMO=OFF \
- -DENABLE_VPU=OFF \
- -DNGRAPH_DYNAMIC_COMPONENTS_ENABLE=OFF \
- -DNGRAPH_EXPORT_TARGETS_ENABLE=OFF \
- -DNGRAPH_IE_ENABLE=ON \
- -DNGRAPH_JSON_ENABLE=OFF \
- -DNGRAPH_ONNX_IMPORT_ENABLE=OFF \
- -DNGRAPH_PYTHON_BUILD_ENABLE=OFF \
- -DNGRAPH_TEST_UTIL_ENABLE=OFF \
- -DNGRAPH_UNIT_TEST_ENABLE=OFF \
- -DOpenCV_DIR=/usr/lib/cmake/opencv4 \
- -DNGRAPH_WARNINGS_AS_ERRORS=False \
- -DCMAKE_CXX_FLAGS="$CXXFLAGS -Wno-error" \
- -DTHREADING=SEQ \
- $CMAKE_CROSSOPTS .
- cmake --build build
-}
-
-check() {
- CTEST_OUTPUT_ON_FAILURE=1 ninja -C build test
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-
- cd "$pkgdir"
- mkdir -p usr/bin usr/include usr/lib usr/share/openvino
-
- mv usr/openvino/include/* usr/include/
- mv usr/openvino/deployment_tools/inference_engine/include/* usr/include/
-
- # debug
- find usr/openvino -type f
-
- mv usr/openvino/deployment_tools/inference_engine/lib/*/compile_tool usr/bin/
- mv usr/openvino/deployment_tools/inference_engine/lib/*/*.so usr/lib/
- mv usr/openvino/deployment_tools/inference_engine/lib/*/cache.json usr/share/openvino
- mv usr/openvino/deployment_tools/inference_engine/lib/*/plugins.xml usr/share/openvino
-
- mv usr/openvino/lib*/* usr/lib/
- mv usr/openvino/python/* usr/lib/
-
- mv usr/openvino/share/* usr/share/
- mv usr/openvino/deployment_tools/inference_engine/share/* usr/share/
-
- rm -rf usr/openvino
-
- # These are part of third-party packages and should not be included
- rm -rf usr/include/pugiconfig.hpp usr/include/pugixml.hpp
- rm -rf usr/include/clDNN usr/include/cldnn
- rm -rf usr/include/ade
- rm -rf usr/lib/cmake/ade
- rm -rf usr/lib/cmake/pugixml
- rm -rf usr/lib/pkgconfig/gflags.pc
-}
-
-dev() {
- default_dev
-
- mkdir -p "$subpkgdir"/usr/lib/cmake/InferenceEngine
- mv "$pkgdir"/usr/share/InferenceEngine*.cmake "$subpkgdir"/usr/lib/cmake/InferenceEngine/
- mv "$pkgdir"/usr/share/ie_parallel.cmake "$subpkgdir"/usr/lib/cmake/InferenceEngine/
-}
-
-py3() {
- pkgdesc="$pkgname python bindings"
-
- mkdir -p "$subpkgdir"/usr/lib
- mv "$pkgdir"/usr/lib/python* "$subpkgdir"/usr/lib/
-}
-
-sha512sums="
-67cfe44f587f1b5a96cac3d0dbfbf299e09d47afef626d2a56e0ea8fbe7c24a06bc1ae8fb2c3c3f634637f34826b5a9eb53190697587f966b4140b8400061a6f openvino-2020.4.tar.gz
-cf4ba466421959b4be24efa9304f32d831a24e57b6a88d1806b232bf564a67d63a1012c6e6ce7af1ecb1fb70933bc8135b02aa72fdfd10d1bad531ce215e53aa gflags-46f73f88b18aee341538c0dfc22b1710a6abedef.tar.gz
-32453e59c3d176bc31b0a55d30667f528bee19979728d8cdeb6fd8fe7143a3b9d0bf15f36ca31b2204570164a0c234702b6f5b4201061760e4edcaed664715f6 ade-cbe2db61a659c2cc304c3837406f95c39dfa938e.tar.gz
-130a7a751fb40c55309c5b41ca8d56540e5533d922a811eb01991ac66064c37e52c00bc303d34ccb4eb3847ee8fbcf0e39bd71d05b8c02e8490f31c459c95175 googletest-9bd163b993459b2ca6ba2dc508577bbc8774c851.tar.gz
-b099fc26d3ea36ebfe8a8f8c93a7cf2d6c51196a71752c316813dd671936367bbe82aaee0b7cbc761e9d671909d53ff8b77c32f1428cb7ac5087a489f5ff2b8a oneDNN-2706f56ebab54415be48add2751072065f4b52ab.tar.gz
-b6347720e08746a4fdbb6e09691644597c900a6c440283baac6b1008399c78c5c34157dbfdb21476a71a7c4fd47c2912c7a7629076761d1bcb26d2a34ba73ba8 cmake-config.patch
-9a93c41120189166bfcd5986954de812ebb16e429711b3f637907d2abf79dab75aac55eb1ee04ccbcee06e47709c3dcdd22b56aef89e64bb82b30fa10ca3dfd2 pessimizing-move.patch
-d02374561f469f5818a9c76e697d68a84550c191459a2b4f9c7085f5b5e39eb6767a143e281dc0952a950cc7de12e11dd4a4602082f596553e2755c20a7a4867 deprecated-copy.patch
-9744e36e5f75d0b39e2862eb2fd6bd5cededda120775e2bd47a039e39f3a9594a6d900d5d060117bdfa1f733ecd08691aa709841f3c89d258b005fd5a9fdfb84 cmake-dont-force-build-type.patch
-23b051129678fd790de975f9fdbd0fd7ffdc0dd4de772b7883ffd90bc670eb62292e561b0db72468e8e142701cf3befcefeb2d17020e8eca10ffefcb841b136b include-stdexcept.patch
-0adfa161396ca4788b7b94d5a3b075aace5b833e252599176343ba33116b254c6cd884cb54319b73a35ce38da3930f1b75f453d8d89c127582053167919087c9 fix-missing-include.patch
-"
diff --git a/testing/openvino/cmake-config.patch b/testing/openvino/cmake-config.patch
deleted file mode 100644
index b1c8683787a..00000000000
--- a/testing/openvino/cmake-config.patch
+++ /dev/null
@@ -1,94 +0,0 @@
-Fix CMake scripts
----
---- a/docs/template_extension/CMakeLists.txt
-+++ b/docs/template_extension/CMakeLists.txt
-@@ -5,7 +5,10 @@
- # [cmake:extension]
- set(TARGET_NAME "template_extension")
-
--find_package(ngraph REQUIRED)
-+find_package(ngraph QUIET)
-+if(NOT ngraph_FOUND)
-+ set(ngraph_DIR ${CMAKE_BINARY_DIR}/ngraph)
-+endif()
- find_package(InferenceEngine REQUIRED)
-
- file(GLOB_RECURSE SRC *.cpp)
---- a/inference-engine/thirdparty/clDNN/CMakeLists.txt
-+++ b/inference-engine/thirdparty/clDNN/CMakeLists.txt
-@@ -465,8 +465,8 @@
- # ======================================================================================================
-
- # Check for python 2.7 interpreter (required tool).
--find_package(PythonInterp 2.7)
--if(NOT PYTHONINTERP_FOUND)
-+find_package(Python)
-+if(NOT Python_FOUND)
- message(WARNING "[clDNN] Project requires Python 2.7 interpreter to build (with python loader). CMake could not detect it correctly.
- If you have installed this interpreter, please disregard this warning or specify PYTHON_EXECUTABLE in CMake command-line."
- )
-
---- a/inference-engine/thirdparty/clDNN/kernel_selector/CMakeLists.txt
-+++ b/inference-engine/thirdparty/clDNN/kernel_selector/CMakeLists.txt
-@@ -167,7 +167,7 @@
- # =================================== Custom pre- and post-steps =======================================
- add_custom_command(OUTPUT "${__CLDNN_CGDirectory__cg_cache}/${__CLDNN_File__cg_cache__prim_db}"
- COMMAND "${CMAKE_COMMAND}" -E make_directory "${__CLDNN_CGDirectory__cg_cache}"
-- COMMAND "${PYTHON_EXECUTABLE}" "${__CLDNN_Directory__core_common}/primitive_db_gen.py" -out_path "${__CLDNN_CGDirectory__cg_cache}" -out_file_name "${__CLDNN_File__cg_cache__prim_db}" -kernels "${__CLDNN_Directory__cl_kernels}"
-+ COMMAND "${Python_EXECUTABLE}" "${__CLDNN_Directory__core_common}/primitive_db_gen.py" -out_path "${__CLDNN_CGDirectory__cg_cache}" -out_file_name "${__CLDNN_File__cg_cache__prim_db}" -kernels "${__CLDNN_Directory__cl_kernels}"
- DEPENDS ${__CLDNN_Sources__cl_kernels} "${__CLDNN_Directory__core_common}/primitive_db_gen.py"
- COMMENT "Generating ${__CLDNN_File__cg_cache__prim_db} ..."
- )
-
---- a/ngraph/CMakeLists.txt
-+++ b/ngraph/CMakeLists.txt
-@@ -258,13 +258,8 @@
- set(NGRAPH_INSTALL_DOC "${NGRAPH_COMPONENT_PREFIX}${CMAKE_INSTALL_DOCDIR}")
- set(NGRAPH_INSTALL_BIN "${NGRAPH_COMPONENT_PREFIX}${CMAKE_INSTALL_BINDIR}")
- if (LINUX)
-- if (DEFINED NGRAPH_RPATH)
-- set(CMAKE_BUILD_RPATH "$ORIGIN:${NGRAPH_RPATH}")
-- set(CMAKE_INSTALL_RPATH "$ORIGIN:${NGRAPH_RPATH}")
-- else()
-- set(CMAKE_BUILD_RPATH "$ORIGIN")
-- set(CMAKE_INSTALL_RPATH "$ORIGIN")
-- endif()
-+ set(CMAKE_BUILD_RPATH "$ORIGIN")
-+ set(CMAKE_INSTALL_RPATH "$ORIGIN")
- endif()
-
- #-----------------------------------------------------------------------------------------------
-
---- a/inference-engine/src/inference_engine/CMakeLists.txt
-+++ b/inference-engine/src/inference_engine/CMakeLists.txt
-@@ -230,30 +230,6 @@
-
- list(APPEND core_components ngraph)
-
--if(THREADING STREQUAL "TBB" OR THREADING STREQUAL "TBB_AUTO")
-- ie_cpack_add_component(tbb REQUIRED)
-- list(APPEND core_components tbb)
--
-- install(DIRECTORY "${TBB}/include"
-- DESTINATION ${IE_CPACK_IE_DIR}/external/tbb
-- COMPONENT tbb)
-- install(DIRECTORY "${TBB}/lib"
-- DESTINATION ${IE_CPACK_IE_DIR}/external/tbb
-- COMPONENT tbb)
-- if(EXISTS "${TBB}/bin")
-- install(DIRECTORY "${TBB}/bin"
-- DESTINATION ${IE_CPACK_IE_DIR}/external/tbb
-- COMPONENT tbb)
-- endif()
-- install(FILES "${TBB}/LICENSE"
-- DESTINATION ${IE_CPACK_IE_DIR}/external/tbb
-- COMPONENT tbb)
-- install(FILES "${TBB}/cmake/TBBConfig.cmake"
-- "${TBB}/cmake/TBBConfigVersion.cmake"
-- DESTINATION ${IE_CPACK_IE_DIR}/external/tbb/cmake
-- COMPONENT tbb)
--endif()
--
- ie_cpack_add_component(core REQUIRED DEPENDS ${core_components})
-
- install(DIRECTORY "${IE_MAIN_SOURCE_DIR}/include" DESTINATION ${IE_CPACK_IE_DIR}
diff --git a/testing/openvino/cmake-dont-force-build-type.patch b/testing/openvino/cmake-dont-force-build-type.patch
deleted file mode 100644
index 0b7ca5d590f..00000000000
--- a/testing/openvino/cmake-dont-force-build-type.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-Upstream: No
-Reason: We use BUILD_TYPE=None
-
-diff --git a/ngraph/CMakeLists.txt b/ngraph/CMakeLists.txt
-index 356ce18..1c4984f 100644
---- a/ngraph/CMakeLists.txt
-+++ b/ngraph/CMakeLists.txt
-@@ -23,14 +23,6 @@ if("${CMAKE_SOURCE_DIR}" STREQUAL "${CMAKE_BINARY_DIR}")
- message(FATAL_ERROR "In-source builds are not allowed.")
- endif()
-
--if (CMAKE_BUILD_TYPE)
-- set(RELEASE_TYPES Debug Release RelWithDebInfo MinSizeRel)
-- list(FIND RELEASE_TYPES ${CMAKE_BUILD_TYPE} INDEX_FOUND)
-- if (${INDEX_FOUND} EQUAL -1)
-- message(FATAL_ERROR "CMAKE_BUILD_TYPE must be one of Debug, Release, RelWithDebInfo, or MinSizeRel")
-- endif()
--endif()
--
- include(git_tags)
- include(var_functions)
-
diff --git a/testing/openvino/deprecated-copy.patch b/testing/openvino/deprecated-copy.patch
deleted file mode 100644
index a63b0c74e63..00000000000
--- a/testing/openvino/deprecated-copy.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-Fix error: implicitly-declared 'constexpr ...' is deprecated [-Werror=deprecated-copy]
----
---- a/inference-engine/thirdparty/clDNN/src/gpu/memory_gpu.cpp
-+++ b/inference-engine/thirdparty/clDNN/src/gpu/memory_gpu.cpp
-@@ -127,8 +127,7 @@
- CLDNN_ERROR_MESSAGE("2D image allocation", "unsupported image type!");
- }
-
-- cl::ImageFormat imageFormat(order, type);
-- _buffer = cl::Image2D(_context->context(), CL_MEM_READ_WRITE, imageFormat, _width, _height, 0);
-+ _buffer = cl::Image2D(_context->context(), CL_MEM_READ_WRITE, cl::ImageFormat(order, type), _width, _height, 0);
-
- if (reset) zero_image();
- }
diff --git a/testing/openvino/fix-missing-include.patch b/testing/openvino/fix-missing-include.patch
deleted file mode 100644
index 446225cbf75..00000000000
--- a/testing/openvino/fix-missing-include.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/inference-engine/src/plugin_api/ie_system_conf.h
-+++ b/inference-engine/src/plugin_api/ie_system_conf.h
-@@ -10,6 +10,7 @@
- #pragma once
-
- #include "ie_api.h"
-+#include <exception>
- #include <vector>
-
- namespace InferenceEngine {
diff --git a/testing/openvino/include-stdexcept.patch b/testing/openvino/include-stdexcept.patch
deleted file mode 100644
index b8baf987936..00000000000
--- a/testing/openvino/include-stdexcept.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-Upstream: Should be
-Reason: Fixes compilation by making std::runtime_error available
-
-diff --git a/inference-engine/thirdparty/clDNN/kernel_selector/common/tensor_type.h b/inference-engine/thirdparty/clDNN/kernel_selector/common/tensor_type.h
-index 3dbdfd0..2226f1a 100644
---- a/inference-engine/thirdparty/clDNN/kernel_selector/common/tensor_type.h
-+++ b/inference-engine/thirdparty/clDNN/kernel_selector/common/tensor_type.h
-@@ -25,6 +25,7 @@
- #include <array>
- #include <string>
- #include <utility>
-+#include <stdexcept>
-
- namespace kernel_selector {
- #define KERNEL_SELECTOR_TENSOR_DIM_MAX 9
diff --git a/testing/openvino/pessimizing-move.patch b/testing/openvino/pessimizing-move.patch
deleted file mode 100644
index 8a078cf59bf..00000000000
--- a/testing/openvino/pessimizing-move.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-Fix error: moving a local object in a return statement prevents copy elision [-Werror=pessimizing-move]
----
---- a/inference-engine/thirdparty/ade/sources/ade/source/execution_engine.cpp
-+++ b/inference-engine/thirdparty/ade/sources/ade/source/execution_engine.cpp
-@@ -138,7 +138,7 @@
- }
- }
-
-- return std::move(ret);
-+ return ret;
- }
-
- void ExecutionEngine::addExecutableDependency(const std::string& lazyPassName)
-
---- a/inference-engine/thirdparty/clDNN/kernel_selector/core/actual_kernels/fully_connected/fully_connected_kernel_fs_byx_fsv32.cpp
-+++ b/inference-engine/thirdparty/clDNN/kernel_selector/core/actual_kernels/fully_connected/fully_connected_kernel_fs_byx_fsv32.cpp
-@@ -60,7 +60,7 @@
-
- runInfo.efficiency = FORCE_PRIORITY_5;
-
-- return std::move(runInfo);
-+ return runInfo;
- }
-
- JitConstants FullyConnected_fs_byx_fsv32::GetJitConstants(const fully_connected_params& params,
-
---- a/inference-engine/thirdparty/clDNN/src/gpu/kernels_cache.cpp
-+++ b/inference-engine/thirdparty/clDNN/src/gpu/kernels_cache.cpp
-@@ -74,7 +74,7 @@
- undefs += "#endif\n";
- }
-
-- return std::move(undefs);
-+ return undefs;
- }
-
- std::string reorder_options(const std::string& org_options) {
-@@ -159,7 +159,7 @@
- current_bucket.kernels_counter++;
- }
-
-- return std::move(scode);
-+ return scode;
- }
-
- kernels_cache::kernels_cache(gpu_toolkit& context, uint32_t prog_id) : _context(context), _prog_id(prog_id) {}
diff --git a/testing/openvpn3/APKBUILD b/testing/openvpn3/APKBUILD
index b1350dfc38a..d13575a369b 100644
--- a/testing/openvpn3/APKBUILD
+++ b/testing/openvpn3/APKBUILD
@@ -1,13 +1,13 @@
# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=openvpn3
-pkgver=3.7
+pkgver=3.8.4
pkgrel=0
pkgdesc="C++ class library that implements the functionality of an OpenVPN client"
url="https://github.com/OpenVPN/openvpn3"
arch="all !s390x" # broken tests due to endianness assumptions
license="AGPL-3.0-only"
-depends_dev="lz4-dev asio-dev libcap-dev"
+depends_dev="lz4-dev asio-dev libcap-dev jsoncpp-dev xxhash-dev"
makedepends="cmake samurai gtest-dev $depends_dev"
subpackages="$pkgname-dev"
source="https://github.com/OpenVPN/openvpn3/archive/refs/tags/release/$pkgver/openvpn3-$pkgver.tar.gz
@@ -15,13 +15,10 @@ source="https://github.com/OpenVPN/openvpn3/archive/refs/tags/release/$pkgver/op
"
builddir="$srcdir/openvpn3-release-$pkgver"
-[ "$CARCH" = "riscv64" ] && options="$options textrels"
-
build() {
cmake -G Ninja -B build \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
+ -DBUILD_SHARED_LIBS=False \
-DCMAKE_BUILD_TYPE=MinSizeRel
cmake --build build
}
@@ -40,6 +37,6 @@ package() {
}
sha512sums="
-de95bd2b1a01179aa81e1612be175540c2486b856f66880372d09966655bbbadd71d874ed49b032566dde2896207bc76298c5cfcf73e86272c04d5aaa977d660 openvpn3-3.7.tar.gz
+2678cfc090ae65c3be03f2056ad009a708f1af13cbad904a6630d5ddf619cd7885b91c042b63c4a839d0603e754d69fe8d060b6ab7366db6ab69cecba4007da4 openvpn3-3.8.4.tar.gz
83bf9085f97a08abccb583a5bd0b15258594b2746e45128c1f987445a92c1de0ea6ef80b750a12dab4baf4aba6fe94d44ff4e8b886796bd107e5cd3568755c5d unvendor.patch
"
diff --git a/testing/openwsman/APKBUILD b/testing/openwsman/APKBUILD
index 877d3ebbda1..84587296273 100644
--- a/testing/openwsman/APKBUILD
+++ b/testing/openwsman/APKBUILD
@@ -1,14 +1,24 @@
# Contributor: Francesco Colista <fcolista@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=openwsman
-pkgver=2.7.1
-pkgrel=1
+pkgver=2.7.2
+pkgrel=4
pkgdesc="Opensource Implementation of WS-Management"
url="https://openwsman.github.io"
arch="all"
license="custom BSD-3-Clause"
options="!check" # No test suite
-makedepends="cmake swig openssl-dev perl-dev curl-dev python3-dev sblim-sfcc-dev libxml2-dev"
+makedepends="
+ cmake
+ curl-dev
+ libxml2-dev
+ openssl-dev
+ perl-dev
+ py3-setuptools
+ python3-dev
+ sblim-sfcc-dev
+ swig
+ "
subpackages="$pkgname-dev $pkgname-doc $pkgname-libs"
source="$pkgname-$pkgver.tar.gz::https://github.com/Openwsman/openwsman/archive/v$pkgver.tar.gz
fix-musl-build.patch
@@ -21,15 +31,9 @@ source="$pkgname-$pkgver.tar.gz::https://github.com/Openwsman/openwsman/archive/
# 2.6.4-r0:
# - CVE-2016-2183
-prepare() {
- default_prepare
- mkdir -p build
-}
-
build() {
- cd "$builddir"/build
- cmake \
- -DCMAKE_BUILD_TYPE=None \
+ cmake -B build \
+ -DCMAKE_BUILD_TYPE=MinSizeRel \
-DCMAKE_C_FLAGS="$CFLAGS $CPPFLAGS" \
-DCMAKE_CXX_FLAGS="$CFXXLAGS $CPPFLAGS" \
-DCMAKE_INSTALL_PREFIX=/usr \
@@ -39,13 +43,18 @@ build() {
-DBUILD_PYTHON=OFF \
-DBUILD_PYTHON3=ON \
-DBUILD_RUBY_GEM=OFF \
- -DBUILD_JAVA=OFF \
- ..
- make
+ -DBUILD_JAVA=OFF
+ cmake --build build
}
-check() {
- cd "$builddir"/build
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+
+ mv "$pkgdir/usr/sbin/"* "$pkgdir/usr/bin"
+ rmdir "$pkgdir/usr/sbin/"
+ rm "$pkgdir"/etc/pam.d/$pkgname
+ rmdir "$pkgdir/etc/pam.d/"
+ install -Dp -m644 COPYING "$pkgdir/usr/share/licenses/$pkgname/COPYING"
}
libs() {
@@ -56,19 +65,8 @@ libs() {
"$subpkgdir"/usr/lib/
}
-package() {
- cd "$builddir"/build
- make DESTDIR="$pkgdir/" install
-
- mv "$pkgdir/usr/sbin/"* "$pkgdir/usr/bin"
- rmdir "$pkgdir/usr/sbin/"
- rm "$pkgdir"/etc/pam.d/$pkgname
- rmdir "$pkgdir/etc/pam.d/"
- install -Dp -m644 ../COPYING "$pkgdir/usr/share/licenses/$pkgname/COPYING"
-}
-
sha512sums="
-37738bc5be7b1c3fa961587fca4db74b8e7714fc0641a550682275fbe925b2c8e18a683cf493f4740e479f7461cc98392d3d675f4769f5cf04e7249f1e9ee880 openwsman-2.7.1.tar.gz
+ffd6a0d00a00b00e321b2b55e0c77326f5943ca3224eee74c706e53a1c5c44ef0e8b1cfde5d631966769eefd4e567b0db8713085b7a8b386c2871ab4ada83046 openwsman-2.7.2.tar.gz
d031a3fd5f30b71ef87d7fd9c241baf55c20953c175ab0eb6192f9971b7b8a3a9c18693fa2cd468ed7f7ef94170281b7db5e987ba1b88c92d64231e560e91542 fix-musl-build.patch
3c10cb34a0bb0d70461225c0944c0fdaf9aadba2c78ee8122dcf8b493190bc86db0252cc74a7fdb178a2d0a0c26fb3323a1cd8dce320fe21eb0ad2860e42a0f1 default-config.patch
"
diff --git a/testing/opkg-utils/APKBUILD b/testing/opkg-utils/APKBUILD
index 8089fa5724f..5ded96cc3f9 100644
--- a/testing/opkg-utils/APKBUILD
+++ b/testing/opkg-utils/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Ryan Barnett <ryanbarnett3@gmail.com>
pkgname=opkg-utils
pkgver=0.4.5
-pkgrel=0
+pkgrel=1
pkgdesc="Helper scripts for use with the opkg package manager"
url="https://git.yoctoproject.org/cgit/cgit.cgi/opkg-utils/"
arch="noarch"
diff --git a/testing/opkg/APKBUILD b/testing/opkg/APKBUILD
index 29b032cc8e8..fb19282d781 100644
--- a/testing/opkg/APKBUILD
+++ b/testing/opkg/APKBUILD
@@ -1,14 +1,14 @@
# Maintainer: Ryan Barnett <ryanbarnett3@gmail.com>
pkgname=opkg
-pkgver=0.4.5
+pkgver=0.6.2
pkgrel=0
pkgdesc="Lightweight package management system"
-url="http://git.yoctoproject.org/cgit/cgit.cgi/opkg/"
+url="https://git.yoctoproject.org/opkg/"
arch="all"
license="GPL-2.0-or-later"
-makedepends="curl-dev gpgme-dev libarchive-dev autoconf automake libtool pkgconf"
+makedepends="curl-dev gpgme-dev libarchive-dev zstd-dev autoconf automake libtool pkgconf"
subpackages="$pkgname-dev $pkgname-libs $pkgname-doc"
-source="http://downloads.yoctoproject.org/releases/opkg/opkg-$pkgver.tar.gz"
+source="https://downloads.yoctoproject.org/releases/opkg/opkg-$pkgver.tar.gz"
build() {
./configure \
@@ -17,7 +17,8 @@ build() {
--prefix=/usr \
--sysconfdir=/etc \
--mandir=/usr/share/man \
- --localstatedir=/var
+ --localstatedir=/var \
+ --enable-zstd
make
}
@@ -30,4 +31,6 @@ package() {
make DESTDIR="$pkgdir" install
}
-sha512sums="d2d7b75f285c0cc3b85aaa9c0b2c4968e02be5f2aa9c084f58987572840900f9aee31d1fd899cf25497fb1166520277cdc417c2046c13cedc01e84b750166619 opkg-0.4.5.tar.gz"
+sha512sums="
+40175634d109bba45a67b01ac342a089b9caa132b143f29e76b23ef5688a103797843a555c067474a1796bdeb86e0fc5bfb584575da87cecf8809ccc77a87bde opkg-0.6.2.tar.gz
+"
diff --git a/testing/opmsg/APKBUILD b/testing/opmsg/APKBUILD
index 2690cf2dd15..c73cf8be7b3 100644
--- a/testing/opmsg/APKBUILD
+++ b/testing/opmsg/APKBUILD
@@ -1,26 +1,28 @@
# Contributor: stef <l0ls0fo2i@ctrlc.hu>
# Maintainer: Roberto Oliveira <robertoguimaraes8@gmail.com>
pkgname=opmsg
-pkgver=1.78
-pkgrel=2
+pkgver=1.84
+pkgrel=1
pkgdesc="opmsg gpg-like encryption system"
url="https://github.com/stealth/opmsg"
arch="all"
license="GPL-3.0-or-later"
-makedepends="openssl-dev"
+makedepends="openssl-dev>3"
source="$pkgname-$pkgver.tar.gz::https://github.com/stealth/opmsg/archive/rel-${pkgver}s.tar.gz"
builddir="$srcdir/$pkgname-rel-${pkgver}s"
build() {
cd "$builddir/src"
- make opmsg opmux
+ make all contrib
}
package() {
- cd "$builddir/src"
+ cd "$builddir/src/build"
mkdir -p "$pkgdir"/usr/bin
- cp opmsg opmux "$pkgdir"/usr/bin
+ cp opcoin opmsg opmux "$pkgdir"/usr/bin
}
-sha512sums="bfd3a9dfcc5082f4f7e3988d31c9e7ef499dd9726565f8fa21d631698c5821bcf080ff2b46488f1a93a997ff76a6e106343d85358b25a2785ce184419372cd23 opmsg-1.78.tar.gz"
+sha512sums="
+055795e9fde157bd43f2ff124800e5f1e4d8e0349f0acbf6afe6e3c3855f01bcb0068051e0d22aa454ff2f95b6320c18823e8e066d36bcfa0f560e561aa69134 opmsg-1.84.tar.gz
+"
diff --git a/testing/optee-client/APKBUILD b/testing/optee-client/APKBUILD
new file mode 100644
index 00000000000..4e46e6a6a8c
--- /dev/null
+++ b/testing/optee-client/APKBUILD
@@ -0,0 +1,38 @@
+# Maintainer: Petr Hodina <phodina@protonmail.com>
+pkgname=optee-client
+pkgver=3.20.0
+pkgrel=0
+pkgdesc="Normal World Client side of tee"
+url="https://github.com/OP-TEE/optee_client"
+arch="aarch64 armv7"
+license="BSD-2-Clause"
+makedepends="
+ bsd-compat-headers
+ cmake
+ linux-headers
+ samurai
+ util-linux-dev
+ "
+subpackages="$pkgname-dev $pkgname-libs"
+source="$pkgname-$pkgver.tar.gz::https://github.com/OP-TEE/optee_client/archive/refs/tags/$pkgver.tar.gz"
+builddir="$srcdir/optee_client-$pkgver"
+# requires more dependencies
+options="!check"
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCFG_TEE_CLIENT_LOG_FILE=/var/log/tee/teec.log \
+ -DBUILD_SHARED_LIBS=ON
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+ mkdir -p "$pkgdir"/var/log/tee
+}
+
+sha512sums="
+678db0b9c5c2a0332120e737ddd2c4d83e6e6b0e2a09fa53b61edf3dd9586268314d4cd429833d9baf1f77fd6b0a78ea5b828b62bcfb00ad59bdbab494b0842b optee-client-3.20.0.tar.gz
+"
diff --git a/testing/orage/APKBUILD b/testing/orage/APKBUILD
index 4217406b94c..ce5b49a4ad9 100644
--- a/testing/orage/APKBUILD
+++ b/testing/orage/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
# Maintainer: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
pkgname=orage
-pkgver=4.16.0
+pkgver=4.18.0
pkgrel=0
pkgdesc="Calendar for Xfce"
url="https://docs.xfce.org/apps/orage/start"
@@ -41,5 +41,5 @@ package() {
}
sha512sums="
-fe8abe482fe61bd05a46c1497e99a080753f7accbd738a55210324d2e175a742c5630508b1da59ffed401f51a2b1b02ff4bcd3570ce9b4575919b921fc76b8a4 orage-4.16.0.tar.gz
+27ee0a5d54f0e31a5f177c087db614859aed3916dbe2972c8a93b44d13ed943f321ff26d022a053d599ff1e85f37b4d28b65aff22e6efd96bc2e43b6d2e23093 orage-4.18.0.tar.gz
"
diff --git a/testing/oras-cli/APKBUILD b/testing/oras-cli/APKBUILD
new file mode 100644
index 00000000000..b08133c7a1e
--- /dev/null
+++ b/testing/oras-cli/APKBUILD
@@ -0,0 +1,53 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=oras-cli
+pkgver=1.1.0
+pkgrel=2
+pkgdesc="OCI registry client"
+url="https://oras.land/cli"
+arch="all"
+license="Apache-2.0"
+makedepends="go"
+subpackages="
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/oras-project/oras/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/oras-$pkgver"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ local _goldflags="
+ -X oras.land/oras/internal/version.Version=$pkgver
+ -X oras.land/oras/internal/version.BuildMetadata=
+ -X oras.land/oras/internal/version.GitCommit=AlpineLinux
+ -X oras.land/oras/internal/version.GitTreeState=clean
+ "
+ go build -v -ldflags "$_goldflags" ./cmd/oras
+
+ for shell in bash fish zsh; do
+ ./oras completion $shell > oras.$shell
+ done
+}
+
+check() {
+ go test ./...
+}
+
+package() {
+ install -Dm755 oras -t "$pkgdir"/usr/bin/
+
+ install -Dm644 oras.bash \
+ "$pkgdir"/usr/share/bash-completion/completions/oras
+ install -Dm644 oras.fish \
+ "$pkgdir"/usr/share/fish/vendor_completions.d/oras.fish
+ install -Dm644 oras.zsh \
+ "$pkgdir"/usr/share/zsh/site-functions/_oras
+}
+
+sha512sums="
+2353a879ca7ff62f2933c2548c3b16e4dafb0b18a6428cb6722121c6961486d821e4caf4d853854cfb5879fcc97338490f6273660ad4235fc9277ad3797071c3 oras-cli-1.1.0.tar.gz
+"
diff --git a/testing/osmctools/APKBUILD b/testing/osmctools/APKBUILD
new file mode 100644
index 00000000000..512478e50ff
--- /dev/null
+++ b/testing/osmctools/APKBUILD
@@ -0,0 +1,34 @@
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=osmctools
+pkgver=0.9
+pkgrel=0
+pkgdesc="A few really fast tools to convert, filter and update OpenStreetMap data files"
+url="https://gitlab.com/osm-c-tools/osmctools"
+arch="all"
+license="AGPL-3.0-only"
+makedepends="autoconf automake zlib-dev"
+source="https://gitlab.com/osm-c-tools/osmctools/-/archive/$pkgver/osmctools-$pkgver.tar.gz"
+options="!check" # no tests included
+
+prepare() {
+ default_prepare
+ autoreconf -vfi
+}
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --localstatedir=/var
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+6e51646e9291b53ce109f579c555c1eb9e6853452c81caebd530aa1be56aa3d313331a3544375f187c9d26888e4a330774f2acd6bdbb3baadf1a2db330430940 osmctools-0.9.tar.gz
+"
diff --git a/testing/ossp-uuid/APKBUILD b/testing/ossp-uuid/APKBUILD
deleted file mode 100644
index 977fd634b7d..00000000000
--- a/testing/ossp-uuid/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Contributor: "Andrzej Trzaska <atrzaska2@gmail.com>"
-# Maintainer: "Andrzej Trzaska <atrzaska2@gmail.com>"
-pkgname=ossp-uuid
-pkgver=1.6.2
-pkgrel=1
-pkgdesc="Open Source Software Project Universally Unique Identifier (UUID)"
-url="http://www.ossp.org/pkg/lib/uuid/"
-arch="all"
-license="MIT"
-subpackages="$pkgname-dev $pkgname-doc"
-source="https://mirrors.ocf.berkeley.edu/debian/pool/main/o/ossp-uuid/ossp-uuid_$pkgver.orig.tar.gz
- uuid.patch
- "
-builddir="$srcdir/uuid-$pkgver"
-
-prepare() {
- default_prepare
-
- update_config_sub
- update_config_guess
-}
-
-build() {
- ./configure --prefix=/usr --without-pgsql --without-perl --without-php --disable-static
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="16c7e016ce08d7679cc6ee7dec43a886a8c351960acdde99f8f9b590c7232d521bc6e66e4766d969d22c3f835dcc2814fdecc44eef1cd11e7b9b0f9c41b5c03e ossp-uuid_1.6.2.orig.tar.gz
-5247357f73ba667e4530af80f38bac17dd3395d8152ba1bf239abb1ab53f334d405a8673a3f99ac82c73737c19eccea71886b2ebc61ac37bc64e9ed69ab1bc0a uuid.patch"
diff --git a/testing/ossp-uuid/uuid.patch b/testing/ossp-uuid/uuid.patch
deleted file mode 100644
index a88c453d830..00000000000
--- a/testing/ossp-uuid/uuid.patch
+++ /dev/null
@@ -1,208 +0,0 @@
-diff -up uuid-1.6.1/uuid-config.in.BAD uuid-1.6.1/uuid-config.in
---- uuid-1.6.1/uuid-config.in.BAD 2008-03-06 11:56:13.000000000 -0500
-+++ uuid-1.6.1/uuid-config.in 2008-03-06 11:56:25.000000000 -0500
-@@ -121,7 +121,7 @@ do
- output_extra="$output_extra $uuid_ldflags"
- ;;
- --libs)
-- output="$output -luuid"
-+ output="$output -lossp-uuid"
- output_extra="$output_extra $uuid_libs"
- ;;
- * )
-diff -up uuid-1.6.1/Makefile.in.BAD uuid-1.6.1/Makefile.in
---- uuid-1.6.1/Makefile.in.BAD 2008-03-06 11:10:13.000000000 -0500
-+++ uuid-1.6.1/Makefile.in 2008-03-06 11:11:39.000000000 -0500
-@@ -62,13 +62,13 @@ PERL = @PERL@
- PHP = @PHP@
- PG_CONFIG = @PG_CONFIG@
-
--LIB_NAME = libuuid.la
-+LIB_NAME = libossp-uuid.la
- LIB_OBJS = uuid.lo uuid_md5.lo uuid_sha1.lo uuid_prng.lo uuid_mac.lo uuid_time.lo uuid_ui64.lo uuid_ui128.lo uuid_str.lo
-
--DCE_NAME = libuuid_dce.la
-+DCE_NAME = libossp-uuid_dce.la
- DCE_OBJS = uuid_dce.lo $(LIB_OBJS)
-
--CXX_NAME = libuuid++.la
-+CXX_NAME = libossp-uuid++.la
- CXX_OBJS = uuid++.lo $(LIB_OBJS)
-
- PRG_NAME = uuid
-@@ -79,10 +79,10 @@ MAN_NAME = uuid.3 uuid++.3 uuid.1
- PERL_NAME = $(S)/perl/blib/lib/OSSP/uuid.pm
- PERL_OBJS = $(S)/perl/uuid.pm
-
--PHP_NAME = $(S)/php/modules/uuid.so
-+PHP_NAME = $(S)/php/modules/ossp-uuid.so
- PHP_OBJS = $(S)/php/uuid.c
-
--PGSQL_NAME = $(S)/pgsql/libuuid.so
-+PGSQL_NAME = $(S)/pgsql/libossp-uuid.so
- PGSQL_OBJS = $(S)/pgsql/uuid.c
-
- TARGETS = $(LIB_NAME) @DCE_NAME@ @CXX_NAME@ $(PRG_NAME) @PERL_NAME@ @PHP_NAME@ @PGSQL_NAME@
-@@ -231,7 +231,7 @@ install:
- $(SHTOOL) mkdir -f -p -m 755 $(DESTDIR)$(mandir)/man1
- $(SHTOOL) install -c -m 755 uuid-config $(DESTDIR)$(bindir)/
- $(SHTOOL) install -c -m 644 $(S)/uuid-config.1 $(DESTDIR)$(mandir)/man1/
-- $(SHTOOL) install -c -m 644 $(S)/uuid.pc $(DESTDIR)$(libdir)/pkgconfig/
-+ $(SHTOOL) install -c -m 644 $(S)/uuid.pc $(DESTDIR)$(libdir)/pkgconfig/ossp-uuid.pc
- $(SHTOOL) install -c -m 644 uuid.h $(DESTDIR)$(includedir)/
- -@if [ ".$(WITH_DCE)" = .yes ]; then \
- echo "$(SHTOOL) install -c -m 644 $(S)/uuid_dce.h $(DESTDIR)$(includedir)/"; \
-@@ -241,7 +241,7 @@ install:
- echo "$(SHTOOL) install -c -m 644 $(S)/uuid++.hh $(DESTDIR)$(includedir)/"; \
- $(SHTOOL) install -c -m 644 $(S)/uuid++.hh $(DESTDIR)$(includedir)/; \
- fi
-- $(SHTOOL) install -c -m 644 $(S)/uuid.3 $(DESTDIR)$(mandir)/man3/
-+ $(SHTOOL) install -c -m 644 $(S)/uuid.3 $(DESTDIR)$(mandir)/man3/ossp-uuid.3
- -@if [ ".$(WITH_CXX)" = .yes ]; then \
- echo "$(SHTOOL) install -c -m 644 $(S)/uuid++.3 $(DESTDIR)$(mandir)/man3/"; \
- $(SHTOOL) install -c -m 644 $(S)/uuid++.3 $(DESTDIR)$(mandir)/man3/; \
-@@ -276,7 +276,7 @@ uninstall:
- -@if [ ".$(WITH_CXX)" = .yes ]; then \
- $(LIBTOOL) --mode=uninstall $(RM) $(DESTDIR)$(libdir)/$(CXX_NAME); \
- fi
-- -$(RM) $(DESTDIR)$(mandir)/man3/uuid.3
-+ -$(RM) $(DESTDIR)$(mandir)/man3/ossp-uuid.3
- -@if [ ".$(WITH_CXX)" = .yes ]; then \
- echo "$(RM) $(DESTDIR)$(mandir)/man3/uuid++.3"; \
- $(RM) $(DESTDIR)$(mandir)/man3/uuid++.3; \
-@@ -290,7 +290,7 @@ uninstall:
- echo "$(RM) $(DESTDIR)$(includedir)/uuid++.hh"; \
- $(RM) $(DESTDIR)$(includedir)/uuid++.hh; \
- fi
-- -$(RM) $(DESTDIR)$(libdir)/pkgconfig/uuid.pc
-+ -$(RM) $(DESTDIR)$(libdir)/pkgconfig/ossp-uuid.pc
- -$(RM) $(DESTDIR)$(mandir)/man1/uuid-config.1
- -$(RM) $(DESTDIR)$(bindir)/uuid-config
- -$(RMDIR) $(DESTDIR)$(mandir)/man1 >/dev/null 2>&1 || $(TRUE)
-diff -up uuid-1.6.1/pgsql/Makefile.BAD uuid-1.6.1/pgsql/Makefile
---- uuid-1.6.1/pgsql/Makefile.BAD 2008-03-06 11:53:26.000000000 -0500
-+++ uuid-1.6.1/pgsql/Makefile 2008-03-06 11:54:14.000000000 -0500
-@@ -18,13 +18,13 @@ POSTGRES := $(shell $(PG_CONFIG
- top_builddir := $(dir $(PGXS))../..
- include $(top_builddir)/src/Makefile.global
-
--NAME = uuid
-+NAME = ossp-uuid
- OBJS = uuid.o
- SO_MAJOR_VERSION = 1
- SO_MINOR_VERSION = 0
-
- override CPPFLAGS := -I.. $(CPPFLAGS)
--SHLIB_LINK := -L../.libs -luuid
-+SHLIB_LINK := -L../.libs -lossp-uuid
- SHLIB_LINK += $(shell test $(shell uname -s) = FreeBSD && echo "-Wl,-Bsymbolic")
- SHLIB_LINK += $(shell test $(shell uname -s) = Darwin && echo "-bundle_loader $(POSTGRES)")
- rpath :=
-@@ -35,16 +35,16 @@ enable_shared = yes
- include $(top_builddir)/src/Makefile.shlib
-
- uuid.sql: uuid.sql.in
-- sed -e 's;MODULE_PATHNAME;$(DESTDIR)$(pkglibdir)/uuid$(DLSUFFIX);g' <uuid.sql.in >uuid.sql
-+ sed -e 's;MODULE_PATHNAME;$(DESTDIR)$(pkglibdir)/ossp-uuid$(DLSUFFIX);g' <uuid.sql.in >uuid.sql
-
- install: all
- $(mkinstalldirs) $(DESTDIR)$(pkglibdir)
- $(mkinstalldirs) $(DESTDIR)$(datadir)
-- $(INSTALL_SHLIB) $(shlib) $(DESTDIR)$(pkglibdir)/uuid$(DLSUFFIX)
-+ $(INSTALL_SHLIB) $(shlib) $(DESTDIR)$(pkglibdir)/ossp-uuid$(DLSUFFIX)
- $(INSTALL_DATA) uuid.sql $(DESTDIR)$(datadir)/uuid.sql
-
- uninstall:
-- -rm -f $(DESTDIR)$(pkglibdir)/uuid$(DLSUFFIX)
-+ -rm -f $(DESTDIR)$(pkglibdir)/ossp-uuid$(DLSUFFIX)
- -rm -f $(DESTDIR)$(datadir)/uuid.sql
-
- clean distclean: clean-lib
-diff -up uuid-1.6.1/uuid.pc.in.BAD uuid-1.6.1/uuid.pc.in
---- uuid-1.6.1/uuid.pc.in.BAD 2008-03-06 11:57:29.000000000 -0500
-+++ uuid-1.6.1/uuid.pc.in 2008-03-06 11:57:36.000000000 -0500
-@@ -37,6 +37,6 @@ Description: Universally Unique Identifi
- Version: @UUID_VERSION_RAW@
- URL: http://www.ossp.org/pkg/lib/uuid/
- Cflags: -I${includedir}
--Libs: -L${libdir} -luuid
-+Libs: -L${libdir} -lossp-uuid
- Libs.private: @LIBS@
-
-diff -up uuid-1.6.1/perl/Makefile.PL.BAD uuid-1.6.1/perl/Makefile.PL
---- uuid-1.6.1/perl/Makefile.PL.BAD 2008-03-06 11:12:05.000000000 -0500
-+++ uuid-1.6.1/perl/Makefile.PL 2008-03-06 11:49:25.000000000 -0500
-@@ -33,9 +33,9 @@ use Config;
- use ExtUtils::MakeMaker;
-
- # determine source directory
--my ($srcdir) = map { my $d = $_; $d =~ s/\/libuuid\.la$//; $d }
-- grep { -f $_ } ("../libuuid.la", glob("../*/libuuid.la"))
-- or die "no source directory found (where libuuid.la is located)";
-+my ($srcdir) = map { my $d = $_; $d =~ s/\/libossp-uuid\.la$//; $d }
-+ grep { -f $_ } ("../libossp-uuid.la", glob("../*/libossp-uuid.la"))
-+ or die "no source directory found (where libossp-uuid.la is located)";
-
- # determine extra build options
- my $compat = 0;
-@@ -47,7 +47,7 @@ WriteMakefile(
- VERSION_FROM => 'uuid.pm',
- ABSTRACT_FROM => 'uuid.pod',
- PREREQ_PM => {},
-- LIBS => [ "-L$srcdir/.libs -L$srcdir -luuid" ],
-+ LIBS => [ "-L$srcdir/.libs -L$srcdir -lossp-uuid" ],
- DEFINE => '',
- INC => "-I. -I$srcdir",
- PM => { 'uuid.pm' => '$(INST_LIBDIR)/uuid.pm',
-diff -up uuid-1.6.1/Makefile.PL.BAD uuid-1.6.1/Makefile.PL
---- uuid-1.6.1/Makefile.PL.BAD 2008-03-06 11:09:49.000000000 -0500
-+++ uuid-1.6.1/Makefile.PL 2008-03-06 11:10:01.000000000 -0500
-@@ -44,7 +44,7 @@ ARGS = $ARGS
- all pure_all:
- \@if [ ! -d build ]; then mkdir build; fi
- \@if [ ! -f build/Makefile ]; then (cd build && ../configure --disable-shared); fi
-- \@if [ ! -f build/libuuid.la ]; then (cd build && \$(MAKE) \$(MFLAGS) libuuid.la); fi
-+ \@if [ ! -f build/libossp-uuid.la ]; then (cd build && \$(MAKE) \$(MFLAGS) libossp-uuid.la); fi
- \@if [ ! -f perl/Makefile ]; then (cd perl && \$(PERL) Makefile.PL \$(ARGS)); fi
- \@cd perl && \$(MAKE) \$(MFLAGS) \$\@
-
-diff -up uuid-1.6.1/php/config.m4.BAD uuid-1.6.1/php/config.m4
---- uuid-1.6.1/php/config.m4.BAD 2008-03-06 11:54:55.000000000 -0500
-+++ uuid-1.6.1/php/config.m4 2008-03-06 11:55:07.000000000 -0500
-@@ -34,7 +34,7 @@ if test "$PHP_UUID" != "no"; then
- PHP_NEW_EXTENSION(uuid, uuid.c, $ext_shared)
- AC_DEFINE(HAVE_UUID, 1, [Have OSSP uuid library])
- PHP_ADD_LIBPATH([..], )
-- PHP_ADD_LIBRARY([uuid],, UUID_SHARED_LIBADD)
-+ PHP_ADD_LIBRARY([ossp-uuid],, UUID_SHARED_LIBADD)
- PHP_ADD_INCLUDE([..])
- PHP_SUBST(UUID_SHARED_LIBADD)
-
-diff -up uuid-1.6.1/php/Makefile.local.BAD uuid-1.6.1/php/Makefile.local
---- uuid-1.6.1/php/Makefile.local.BAD 2008-03-06 11:54:39.000000000 -0500
-+++ uuid-1.6.1/php/Makefile.local 2008-03-06 11:54:49.000000000 -0500
-@@ -48,7 +48,7 @@ install: build
- @version=`$(PHP)-config --version | sed -e 's;^\([0-9]\).*$$;\1;'`; extdir="$(EXTDIR)"; \
- echo "installing PHP$$version API into $$extdir"; \
- ./build/shtool mkdir -f -p -m 755 $(DESTDIR)$$extdir; \
-- ./build/shtool install -c -m 755 modules/uuid.so $(DESTDIR)$$extdir/uuid.so; \
-+ ./build/shtool install -c -m 755 modules/uuid.so $(DESTDIR)$$extdir/ossp-uuid.so; \
- ./build/shtool install -c -m 644 uuid.php$$version $(DESTDIR)$$extdir/uuid.php
-
- clean:
-diff -up uuid-1.6.1/php/uuid.ts.BAD uuid-1.6.1/php/uuid.ts
---- uuid-1.6.1/php/uuid.ts.BAD 2008-03-06 11:55:38.000000000 -0500
-+++ uuid-1.6.1/php/uuid.ts 2008-03-06 11:56:03.000000000 -0500
-@@ -34,9 +34,9 @@
-
- $php_version = $argv[1];
-
--print "++ loading DSO uuid.so (low-level API)\n";
-+print "++ loading DSO ossp-uuid.so (low-level API)\n";
- if (!extension_loaded('uuid')) {
-- dl('modules/uuid.so');
-+ dl('modules/ossp-uuid.so');
- }
-
- print "++ loading PHP uuid.php${php_version} (high-level API)\n";
-
diff --git a/testing/ostinato/APKBUILD b/testing/ostinato/APKBUILD
deleted file mode 100644
index 12d7f389f91..00000000000
--- a/testing/ostinato/APKBUILD
+++ /dev/null
@@ -1,49 +0,0 @@
-# Contributor: Corentin Henry <corentinhenry@gmail.com>
-# Maintainer:
-pkgname=ostinato
-pkgver=1.1
-pkgrel=6
-pkgdesc="Packet/Traffic Generator and Analyzer"
-url="https://www.ostinato.org"
-arch="all"
-license="GPL-3.0-or-later"
-options="!check" # make test does nothing
-makedepends="libnl3-dev libpcap-dev protobuf-dev qt5-qtbase-dev
- qt5-qtscript-dev qt5-qtsvg-dev"
-subpackages="$pkgname-drone $pkgname-gui"
-source="$pkgname-$pkgver.tar.gz::https://github.com/pstavirs/ostinato/archive/v$pkgver.tar.gz
- ModelTest.patch
- "
- # ModelTest::ModelTest is included and needed during linking even in release mode
-
-build() {
- qmake-qt5 PREFIX=/usr
-
- # Parallel build fails on armv7 with:
- # fatal error: protocol.pb.h: No such file or directory
- # qmake generates broken CFLAGS, demand it use ours
- # also keep DEFINES because of #11848
- make -j1 CXXFLAGS="$CXXFLAGS \$(DEFINES)"
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
-}
-
-drone() {
- pkgdesc="ostinato controller"
-
- install -d "$subpkgdir"/usr/bin
- mv "$pkgdir"/usr/bin/drone "$subpkgdir"/usr/bin/drone
-}
-
-gui() {
- pkgdesc="graphical controller for ostinato"
- depends="qt5-qtsvg" # 11849
-
- install -d "$subpkgdir"/usr/bin
- mv "$pkgdir"/usr/bin/ostinato "$subpkgdir"/usr/bin/ostinato
-}
-
-sha512sums="a45e157d155d4f2efe9a1594a140647b5cbd7264985b15a9ed47d86198c9df9d763170097dcfd40fae1317206e53c9155f08c48c747cce458e0cae7f3a841449 ostinato-1.1.tar.gz
-e0a3d2781c62b1898a80af8522b36d6b1a7aeae9831c33c42e4e76fe002ee7ebff50d432508a18046d7b5988f09d9a9f90a0433cfae1d2c1cbeaf664671abf6c ModelTest.patch"
diff --git a/testing/ostinato/ModelTest.patch b/testing/ostinato/ModelTest.patch
deleted file mode 100644
index d01a1e7b0d4..00000000000
--- a/testing/ostinato/ModelTest.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-Undefined reference to ModelTest::ModelTest under defaults.
-Clearly, we're not in a debug mode, but the sources think we are.
-
-Patch is not upstream, made by SpaceToast on #alpine-devel
-diff -ur a/client/ostinato.pro b/client/ostinato.pro
---- a/client/ostinato.pro 2019-05-28 09:32:50.000000000 -0400
-+++ b/client/ostinato.pro 2019-06-04 19:14:23.477762179 -0400
-@@ -123,6 +123,6 @@
-
- INCLUDEPATH += "../extra/modeltest"
- greaterThan(QT_MINOR_VERSION, 6) {
--CONFIG(debug, debug|release): LIBS += -L"../extra/modeltest/$(OBJECTS_DIR)/" -lmodeltest
--CONFIG(debug, debug|release): QT += testlib
-+LIBS += -L"../extra/modeltest/$(OBJECTS_DIR)/" -lmodeltest
-+QT += testlib
- }
-
-
diff --git a/testing/otpclient/APKBUILD b/testing/otpclient/APKBUILD
index 29092e9d011..9e8a052aac4 100644
--- a/testing/otpclient/APKBUILD
+++ b/testing/otpclient/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Michał Polański <michal@polanski.me>
# Maintainer: Michał Polański <michal@polanski.me>
pkgname=otpclient
-pkgver=2.5.1
-pkgrel=0
+pkgver=3.2.1
+pkgrel=1
pkgdesc="Simple GTK+ client for managing TOTP and HOTP"
url="https://github.com/paolostivanin/OTPClient"
license="GPL-3.0-or-later"
@@ -10,20 +10,25 @@ arch="all"
options="!check" # no test suite
makedepends="
cmake
+ gtk+3.0-dev
+ jansson-dev
libcotp-dev
libgcrypt-dev
libpng-dev
+ libqrencode-dev
+ libsecret-dev
libzip-dev
- jansson-dev
+ protobuf-c-dev
+ protobuf-dev
+ samurai
zbar-dev
- gtk+3.0-dev
"
subpackages="$pkgname-doc"
source="https://github.com/paolostivanin/OTPClient/archive/v$pkgver/OTPClient-$pkgver.tar.gz"
builddir="$srcdir/OTPClient-$pkgver"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr
cmake --build build
@@ -34,5 +39,5 @@ package() {
}
sha512sums="
-121c9b41ba4d658c7273da32d1be705cdeca88160794739959ee63aa53d7e3afcb40e48a2b048a0fdd20f089e2389d6da187be56191a62b6101a2d69abf5d180 OTPClient-2.5.1.tar.gz
+74eb67e93ee2ec9bf780fbe23febd927877073524ad3574034f6b885d3c898a7ec14c2f9771f8368762d76514ca863e84a4ef7cc2db5e7fdeb79de91ee28b2c0 OTPClient-3.2.1.tar.gz
"
diff --git a/testing/otrs/APKBUILD b/testing/otrs/APKBUILD
index 7038fc8d70b..a6c43aaba3d 100644
--- a/testing/otrs/APKBUILD
+++ b/testing/otrs/APKBUILD
@@ -2,8 +2,8 @@
# Maintainer: Valery Kartel <valery.kartel@gmail.com>
pkgname=otrs
_pkgname=znuny
-pkgver=6.0.43
-pkgrel=0
+pkgver=6.0.48
+pkgrel=1
pkgdesc="Flexible Open Source Service Management Software"
url="https://www.znuny.org/"
arch="noarch"
@@ -11,10 +11,10 @@ license="AGPL-3.0-or-later"
pkgusers="otrs"
pkggroups="www-data"
depends="perl perl-archive-zip perl-crypt-eksblowfish perl-crypt-ssleay
- perl-date-format perl-dbi perl-encode-hanextra perl-io-socket-ssl perl-json-xs
+ perl-timedate perl-dbi perl-encode-hanextra perl-io-socket-ssl perl-json-xs
perl-ldap perl-libwww perl-mail-imapclient perl-net-dns perl-template-toolkit
perl-text-csv perl-text-csv_xs perl-uri perl-xml-libxml perl-xml-libxslt
- perl-xml-parser perl-yaml-xs ttf-dejavu perl-datetime perl-moo
+ perl-xml-parser perl-yaml-xs font-dejavu perl-datetime perl-moo
perl-css-minifier-xs perl-javascript-minifier-xs"
subpackages="$pkgname-doc $pkgname-dev $pkgname-setup $pkgname-apache2
$pkgname-fastcgi $pkgname-nginx $pkgname-bash-completion:bashcomp
@@ -29,6 +29,11 @@ source="https://download.znuny.org/releases/$_pkgname-$pkgver.tar.bz2
builddir=$srcdir/$_pkgname-$pkgver
# secfixes:
+# 6.0.48-r0:
+# - CVE-2022-4427
+# 6.0.44-r0:
+# - ZSA-2022-05
+# - ZSA-2022-06
# 6.0.43-r0:
# - ZSA-2022-04
# 6.0.40-r0:
@@ -101,11 +106,11 @@ package() {
# switch to system fonts
rm -fr var/lib/$pkgname/var/fonts
- ln -s /usr/share/fonts/ttf-dejavu \
+ ln -s /usr/share/fonts/dejavu \
var/lib/$pkgname/var/fonts
# fix *.dist files
- for file in var/lib/$pkgname/var/cron/*.dist \
+ for file in "var/lib/$pkgname/var/cron"/*.dist \
var/lib/$pkgname/Kernel/Config.pod.dist
do
mv $file ${file%.dist}
@@ -125,11 +130,11 @@ doc() {
mv "$pkgdir"/var/lib/$pkgname/doc \
"$subpkgdir"/var/lib/$pkgname
- for file in $(find "$pkgdir" -name "*.md" -o -name "*.pod" -o -name "*.txt" \
- -o -name "ARCHIVE" -o -name "README" \
- -o -name "UPGRADING" -o -name "COPYING*")
- do
- file=${file#$pkgdir}
+ local file; find "$pkgdir" -name "*.md" -o -name "*.pod" \
+ -o -name "*.txt" -o -name "ARCHIVE" -o -name "README" \
+ -o -name "UPGRADING" -o -name "COPYING*" \
+ | while read -r file; do
+ file=${file#"$pkgdir"}
mkdir -p "$subpkgdir"/${file%/*}
mv "$pkgdir"/$file "$subpkgdir"/$file
done
@@ -235,7 +240,7 @@ bashcomp() {
}
sha512sums="
-82b837d008e27af7d5f90db24201265b6958088601109acf95f62edfe94b95273348cb2e394cad3d39db308e86bf2699e8554cb0ea97a415b65f33877e935861 znuny-6.0.43.tar.bz2
+898d97edffb82965767d77f5c7f0bdf9cf286008ce32fb46d67eb5d571b9576777d95573e2ed66d69db6141039f9b350f8c64e022478b08cd9b0d00d9c87f2a8 znuny-6.0.48.tar.bz2
90d43b350a00fa1648c8add5e2af9b88f78cb583f71438306a9b80ee45a939eda903472b84db1327e0579a5d8c5fd88e3c1e7d55a15106aeef426b16e932363d otrs.initd
7bab58132a5705c8e8ecade8e4aea3b0f04af66a71e4ae08cfeda91b0e143607de350debdc49bf2ce022277ee3804aead3ca8825804d073690c2f5f3a19d776e otrs.spawn-fcgi
f79474575ac7c734edcfbaf56fc8062c3594749791f9d1fa4328c6bde71747f0ce6219d47ba7ab409927b7343b36dc0c4aa29cd03600c2d806ed5409edab6b14 otrs.nginx.conf
diff --git a/testing/ouch/APKBUILD b/testing/ouch/APKBUILD
index 121922ec7e2..735cb317f28 100644
--- a/testing/ouch/APKBUILD
+++ b/testing/ouch/APKBUILD
@@ -1,28 +1,54 @@
# Contributor: guddaff <guddaff@protonmail.com>
# Maintainer: guddaff <guddaff@protonmail.com>
pkgname=ouch
-pkgver=0.3.1
+pkgver=0.5.1
pkgrel=0
pkgdesc="Painless compression and decompression"
url="https://github.com/ouch-org/ouch"
-arch="all !s390x !riscv64"
+arch="all"
license="MIT"
-makedepends="cargo"
-source="$pkgname-$pkgver.tar.gz::https://github.com/ouch-org/ouch/archive/refs/tags/$pkgver.tar.gz"
+makedepends="cargo bzip2-dev xz-dev zlib-dev zstd-dev cargo-auditable"
+subpackages="
+ $pkgname-doc
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
+ "
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/ouch-org/ouch/archive/refs/tags/$pkgver.tar.gz
+ use-system-libs.patch
+ "
+
+prepare() {
+ default_prepare
+ cargo fetch --target="$CTARGET" --locked
+}
build() {
- cargo build --release --locked
+ OUCH_ARTIFACTS_FOLDER=artifacts \
+ cargo auditable build --frozen --release
}
check() {
- cargo test --release --locked
+ cargo test --frozen
}
package() {
- cargo install --locked --path . --root="$pkgdir/usr"
- rm "$pkgdir"/usr/.crates*
+ install -Dm755 target/release/ouch -t "$pkgdir"/usr/bin/
+
+ cd artifacts/
+ install -Dm644 ouch.1 ouch-list.1 ouch-compress.1 ouch-decompress.1 \
+ -t "$pkgdir"/usr/share/man/man1/
+
+ install -Dm644 ouch.bash \
+ "$pkgdir"/usr/share/bash-completion/completions/ouch
+ install -Dm644 ouch.fish \
+ "$pkgdir"/usr/share/fish/vendor_completions.d/ouch.fish
+ install -Dm644 _ouch \
+ "$pkgdir"/usr/share/zsh/site-functions/_ouch
}
sha512sums="
-06977fbdf203e9d2be1898ff66258b32a24baf76509ba690ae4b0aa123aadf5ecec2174e9fdfd9c168ff117faaa468c1ff88b607e97eef2ae904a791fd9eb606 ouch-0.3.1.tar.gz
+b30dc9bb6bf8850f30ea6e23ae202df0941c2dc80b1f9b137093c36c6c2028e4c167809e657daa8b3af7a5ed1692a350e0b4709095281ad744d9fe0e22dd42b3 ouch-0.5.1.tar.gz
+1f56e8fcef76e48a7d1f3d2aac852c610a44e2d46360e8f6639f8f75a0385202aad772734f121218b132262cfe62a701e312db1a826ce45dad099ee09acd9e1b use-system-libs.patch
"
diff --git a/testing/ouch/use-system-libs.patch b/testing/ouch/use-system-libs.patch
new file mode 100644
index 00000000000..0c61e09d672
--- /dev/null
+++ b/testing/ouch/use-system-libs.patch
@@ -0,0 +1,11 @@
+--- a/Cargo.toml
++++ b/Cargo.toml
+@@ -34,7 +34,7 @@
+ unrar = "0.5.2"
+ xz2 = "0.1.7"
+ zip = { version = "0.6.6", default-features = false, features = ["time"] }
+-zstd = { version = "0.13.0", default-features = false }
++zstd = { version = "0.13.0", default-features = false, features = ["pkg-config"] }
+
+ [target.'cfg(not(unix))'.dependencies]
+ is_executable = "1.0.1"
diff --git a/testing/ovn/APKBUILD b/testing/ovn/APKBUILD
index 7a3730d5ecc..70e2be13c07 100644
--- a/testing/ovn/APKBUILD
+++ b/testing/ovn/APKBUILD
@@ -1,10 +1,11 @@
+# Contributor: Stuart Cardall <developer@it-offshore.co.uk>
# Maintainer: Leonardo Arena <rnalrd@alpinelinux.org>
pkgname=ovn
-pkgver=22.03.0
-ovs_pkgver=2.17.1
+pkgver=24.03.1
+ovs_pkgver=3.3.0
pkgrel=0
pkgdesc="Open Virtual Network"
-url="ttps://www.ovn.org"
+url="https://www.ovn.org"
arch="all"
license="Apache-2.0"
makedepends="automake
@@ -12,16 +13,32 @@ makedepends="automake
libtool
libcap-ng-dev
linux-headers
- openssl-dev
+ openssl-dev>3
python3
unbound-dev
"
-subpackages="$pkgname-dev $pkgname-doc"
+subpackages="$pkgname-dev $pkgname-doc $pkgname-dbg $pkgname-openrc"
giturl="https://github.com/openvswitch/ovs.git"
_gitrev="498cedc"
-options="!check" # a couple of tests fail, disabling for now
+options="!check" # most of the tests are failing
+install="$pkgname.post-install"
source="$pkgname-$pkgver.tar.gz::https://github.com/ovn-org/ovn/archive/refs/tags/v$pkgver.tar.gz
- https://dev.alpinelinux.org/archive/ovn/openvswitch-$ovs_pkgver-$_gitrev.tar.gz"
+ openvswitch-$ovs_pkgver.tar.gz::https://github.com/openvswitch/ovs/archive/refs/tags/v$ovs_pkgver.tar.gz
+ ovn-ctl.confd
+ ovn-northd.initd
+ ovn-ovsdb-server-nb.initd
+ ovn-ovsdb-server-sb.initd
+ ovn-controller.initd
+ ovs-modules.initd
+ ovs-vswitchd.confd
+ ovs-vswitchd.initd
+ ovsdb-server.confd
+ ovsdb-server.initd
+
+ ovs-ifupdown-alpine.patch
+ "
+provides="openvswitch=$ovs_pkgver"
+# https://dev.alpinelinux.org/archive/ovn/openvswitch-$ovs_pkgver-$_gitrev.tar.gz
snapshot() {
mkdir -p "$srcdir"
@@ -33,7 +50,10 @@ snapshot() {
}
prepare() {
- default_prepare
+ # default_prepare
+ ./boot.sh
+ cd "$srcdir"/ovs-$ovs_pkgver
+ patch -p1 < ../ovs-ifupdown-alpine.patch
./boot.sh
}
@@ -41,42 +61,92 @@ build() {
export CFLAGS="$CFLAGS -fPIC"
# First OpenVSwitch must be built
# Taking the same configure options from openvswitch APKBUILD
- cd "$srcdir"/openvswitch-$ovs_pkgver
- ./boot.sh
- ./configure --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --infodir=/usr/share/info \
- --localstatedir=/var \
- --enable-ndebug \
- --enable-libcap-ng \
- PYTHON=/usr/bin/python3
+ cd "$srcdir"/ovs-$ovs_pkgver
+ ./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --infodir=/usr/share/info \
+ --localstatedir=/var \
+ --enable-ndebug \
+ --enable-libcap-ng
make
- # now building OVN
+ msg "Built OVS. Now building OVN"
cd "$builddir"
- ./configure --prefix=/usr \
+ ./configure \
+ --prefix=/usr \
--sysconfdir=/etc \
- --localstatedir=/var \
+ --localstatedir=/var \
--mandir=/usr/share/man \
--infodir=/usr/share/info \
--enable-shared \
- --with-ovs-source=../openvswitch-$ovs_pkgver \
- --with-ovs-build=../openvswitch-$ovs_pkgver
+ --enable-ndebug \
+ --with-ovs-source=../ovs-$ovs_pkgver \
+ --with-ovs-build=../ovs-$ovs_pkgver
make
}
+check() {
+ make check
+}
+
package() {
# parallel install issue
make -j1 DESTDIR="$pkgdir" install
-}
+ install -Dm644 ../ovn-ctl.confd "$pkgdir"/etc/conf.d/ovn-ctl
+ local f
+ for f in ovn-northd \
+ ovn-ovsdb-server-nb \
+ ovn-ovsdb-server-sb \
+ ; do
+ install -Dm755 ../"$f".initd "$pkgdir/etc/init.d/$f"
+ ln -s ovn-ctl "$pkgdir/etc/conf.d/$f"
+ done
-check() {
- make check
+ install -Dm755 ../ovn-controller.initd "$pkgdir/etc/init.d/ovn-controller"
+
+ # Install the required version of OpenVSwitch
+ # Taken from openvswitch package
+ cd "$srcdir/ovs-$ovs_pkgver"
+ make DESTDIR="$pkgdir" install
+
+ # we don't install python and bash extensions
+ rm -rf "$pkgdir"/usr/share/openvswitch/python
+ rm -rf "$pkgdir"/etc/bash_completion.d
+
+ install -Dm755 "$srcdir"/ovsdb-server.initd \
+ "$pkgdir"/etc/init.d/ovsdb-server
+ install -Dm755 "$srcdir"/ovs-vswitchd.initd \
+ "$pkgdir"/etc/init.d/ovs-vswitchd
+ install -Dm755 "$srcdir"/ovs-modules.initd \
+ "$pkgdir"/etc/init.d/ovs-modules
+ install -Dm644 "$srcdir"/ovsdb-server.confd \
+ "$pkgdir"/etc/conf.d/ovsdb-server
+ install -Dm644 "$srcdir"/ovs-vswitchd.confd \
+ "$pkgdir"/etc/conf.d/ovs-vswitchd
+
+ install -d "$pkgdir"/etc/network/if-pre-up.d \
+ "$pkgdir"/etc/network/if-post-down.d
+ install -m755 debian/ifupdown.sh \
+ "$pkgdir"/etc/network/if-pre-up.d/openvswitch
+ ln -s ../if-pre-up.d/openvswitch \
+ "$pkgdir"/etc/network/if-post-down.d/openvswitch
}
sha512sums="
-b47ad17ada4bbaadd4a7baf194512f327c9838aa779a811c4ba1859e6ebcf380e56cb3bf4786d32ef1cdef4fe285351996dccf740b74982f195c6b19feb75ccb ovn-22.03.0.tar.gz
-5d1fb0fb5eb070c8712759131f4c86915ab7b9075a1f5d136bea7b66efdcf55fd9aef79768f6431582aba9baddec4514200e2998abc3a37e01e5f0e186170b86 openvswitch-2.17.1-498cedc.tar.gz
+297d41adfcbcf325c69ef7e44ea6951c0c2aacca6457140e656d7fc5e33f6cd297bee05cb7ffdbe64faebe92e1f9e3a5e8dafdd62f0c4e966dce3fbae8b8bc8e ovn-24.03.1.tar.gz
+05d980e51a11ae315d81de91404351774d05717946e3200a2564c0baf7959c204e94e3ea7efda75ff1a202b05348e5f39614c49eb65f60208beabf1103a8ae4c openvswitch-3.3.0.tar.gz
+b98fd4acefcc03714cebe18dd78839ec1e6777ed6b1b035873b7a05c24ce5c91b62d890543e58529ed47413c4ab926468a9915bf15675475712ac039f9d1cda5 ovn-ctl.confd
+436f3bc162675b5baa9e301d58fe30d7d0dfb7a196f73012cd8dd3ee7b3e9016c8db81092629da08ee08fc572a697c4c1463c819254c26eaf1f69150f522c503 ovn-northd.initd
+e2dc52c9328514d5ebe1b6b9e63a6b6055ff9fe1d9b4eb1cec429631f65d24b2144d5f328c7943b501eef40f1aafdf5bd247d5e7d58b028d25a8a361b9ebdcb0 ovn-ovsdb-server-nb.initd
+393e8ae14280e8495b92063556c40273a8dc04572e2a78f03cbf61fd37fe509d9deacf30f50831f23664c1c3dd566122c5e683e928aa5e5c8a035f3183d84a78 ovn-ovsdb-server-sb.initd
+9d54d84d1e70b0cc13c2c19b327f1441208ebcf3c1248c6625afa32cd47f8207ea80006fa82c9de6aa4d3fe03b2ab3bd3c887fb85dd6cb9bb7e5c3925afa38af ovn-controller.initd
+1e08aa5ac6ce55b97256478b9243c8a4c92a42a97fc70ea0439c832b12a775af28a127224ae6c4ce01642dde65f76c610a44105912338bf443d8ea390c2d9ccf ovs-modules.initd
+346aea099f51707d2b4fc9fdc8c1502582723fb4e00c4d5d1624b0378c94dfb76674fa95e2af894f36169df52109dbe441ee6a45aa744584d9e4c74d15a46c1d ovs-vswitchd.confd
+4bff37f8bed32d5327b4b0433984ab8ffdce77f618034aa6ffd1ad4a7caa00703ea2bef312876dce5aafa4c17fe06dddd75e5c05c10e13bf8f5c3805a0654a96 ovs-vswitchd.initd
+b1588d076bbfc7ef2dd46fce8e46186f40cbbc4667697f7ac13ddc68e34568fdab315fde47838de7f6d32916853190336cfe3735f672ad7cb624ae14dbff55a5 ovsdb-server.confd
+097d4721a78fff749c534910d98543778474406bd61b469b88a0d981a2a380556444437ec44278cead6d8688c45a38b2acbf1551acb9ab38d048f413728e3b88 ovsdb-server.initd
+08c08612be2bbcc3c006a6175f2357542e436fa5bec6b2f3ff5200e8084874a72b8116d3408cffec312e33c104b177db381727666f8dd4712617616eee8c4d63 ovs-ifupdown-alpine.patch
"
diff --git a/testing/ovn/ovn-controller.initd b/testing/ovn/ovn-controller.initd
new file mode 100644
index 00000000000..5c93465eb35
--- /dev/null
+++ b/testing/ovn/ovn-controller.initd
@@ -0,0 +1,22 @@
+#!/sbin/openrc-run
+
+command="/usr/share/ovn/scripts/ovn-ctl"
+command_args="start_controller --ovn-manage-ovsdb=no --no-monitor $OVN_CTL_OPTS"
+command_background="yes"
+pidfile="/run/ovn/$RC_SVCNAME.pid"
+description="Open Virtual Network host control daemon"
+
+depend() {
+ need net ovs-vswitchd
+ after firewall
+}
+
+start_pre() {
+ checkpath --directory "${pidfile%/*}"
+}
+
+stop() {
+ ebegin "Stopping $RC_SVCNAME"
+ $command stop_controller --no-monitor
+ eend $?
+}
diff --git a/testing/ovn/ovn-ctl.confd b/testing/ovn/ovn-ctl.confd
new file mode 100644
index 00000000000..c969a18ef0d
--- /dev/null
+++ b/testing/ovn/ovn-ctl.confd
@@ -0,0 +1,3 @@
+# OVN_CTL_OPTS: Extra options to pass to ovs-ctl. This is, for example,
+# a suitable place to specify --ovn-northd-wrapper=valgrind.
+# OVN_CTL_OPTS=
diff --git a/testing/ovn/ovn-northd.initd b/testing/ovn/ovn-northd.initd
new file mode 100644
index 00000000000..0638b09dc06
--- /dev/null
+++ b/testing/ovn/ovn-northd.initd
@@ -0,0 +1,22 @@
+#!/sbin/openrc-run
+
+command="/usr/share/ovn/scripts/ovn-ctl"
+command_args="start_northd --ovn-manage-ovsdb=no --no-monitor $OVN_CTL_OPTS"
+command_background="yes"
+pidfile="/run/ovn/$RC_SVCNAME.pid"
+description="Open Virtual Network central control daemon"
+
+depend() {
+ need net
+ after firewall
+}
+
+start_pre() {
+ checkpath --directory "${pidfile%/*}"
+}
+
+stop() {
+ ebegin "Stopping $RC_SVCNAME"
+ $command stop_northd --no-monitor
+ eend $?
+}
diff --git a/testing/ovn/ovn-ovsdb-server-nb.initd b/testing/ovn/ovn-ovsdb-server-nb.initd
new file mode 100644
index 00000000000..c04148bcced
--- /dev/null
+++ b/testing/ovn/ovn-ovsdb-server-nb.initd
@@ -0,0 +1,22 @@
+#!/sbin/openrc-run
+
+command="/usr/share/ovn/scripts/ovn-ctl"
+command_args="run_nb_ovsdb $OVN_CTL_OPTS"
+command_background="yes"
+pidfile="/run/ovn/$RC_SVCNAME.pid"
+description="Open vSwitch database server for OVN Northbound database"
+
+depend() {
+ need net ovn-northd
+ after firewall
+}
+
+start_pre() {
+ checkpath --directory "${pidfile%/*}"
+}
+
+stop() {
+ ebegin "Stopping $RC_SVCNAME"
+ $command stop_nb_ovsdb
+ eend $?
+}
diff --git a/testing/ovn/ovn-ovsdb-server-sb.initd b/testing/ovn/ovn-ovsdb-server-sb.initd
new file mode 100644
index 00000000000..89e1743df57
--- /dev/null
+++ b/testing/ovn/ovn-ovsdb-server-sb.initd
@@ -0,0 +1,22 @@
+#!/sbin/openrc-run
+
+command="/usr/share/ovn/scripts/ovn-ctl"
+command_args="run_sb_ovsdb $OVN_CTL_OPTS"
+command_background="yes"
+pidfile="/run/ovn/$RC_SVCNAME.pid"
+description="Open vSwitch database server for OVN Southbound database"
+
+depend() {
+ need net ovn-northd
+ after firewall
+}
+
+start_pre() {
+ checkpath --directory "${pidfile%/*}"
+}
+
+stop() {
+ ebegin "Stopping $RC_SVCNAME"
+ $command stop_sb_ovsdb
+ eend $?
+}
diff --git a/testing/ovn/ovn.post-install b/testing/ovn/ovn.post-install
new file mode 100644
index 00000000000..8ce006b744c
--- /dev/null
+++ b/testing/ovn/ovn.post-install
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+test -e /proc/sys/kernel/random/uuid && cat /proc/sys/kernel/random/uuid > /etc/openvswitch/system-id.conf
diff --git a/testing/ovn/ovs-ifupdown-alpine.patch b/testing/ovn/ovs-ifupdown-alpine.patch
new file mode 100644
index 00000000000..2c156f0101f
--- /dev/null
+++ b/testing/ovn/ovs-ifupdown-alpine.patch
@@ -0,0 +1,17 @@
+diff --git a/debian/ifupdown.sh b/debian/ifupdown.sh
+index 952d1b0..7aed7e0 100755
+--- a/debian/ifupdown.sh
++++ b/debian/ifupdown.sh
+@@ -35,8 +35,10 @@ if [ -f $SERVICE_UNIT ] && [ -x /bin/systemctl ]; then
+ systemctl start openvswitch-switch.service
+ fi
+ else
+- if service openvswitch-switch status > /dev/null 2>&1; then
+- service openvswitch-switch start
++ if ! /etc/init.d/ovs-vswitchd status &>/dev/null; then
++ /etc/init.d/ovs-modules start
++ /etc/init.d/ovsdb-server start
++ /etc/init.d/ovs-vswitchd start
+ fi
+ fi
+
diff --git a/testing/ovn/ovs-modules.initd b/testing/ovn/ovs-modules.initd
new file mode 100644
index 00000000000..e6695ac3ccf
--- /dev/null
+++ b/testing/ovn/ovs-modules.initd
@@ -0,0 +1,20 @@
+#!/sbin/openrc-run
+
+MODULES="openvswitch"
+
+depend() {
+ before ovsdb-server
+}
+
+start() {
+ ebegin "Loading Openvswitch kernel modules"
+ for mod in $MODULES; do
+ modprobe -q $mod
+ done
+ eend $?
+}
+
+stop() {
+ # modules cannot be removed without a reboot
+ return 0
+}
diff --git a/testing/ovn/ovs-vswitchd.confd b/testing/ovn/ovs-vswitchd.confd
new file mode 100644
index 00000000000..3c3d15865b1
--- /dev/null
+++ b/testing/ovn/ovs-vswitchd.confd
@@ -0,0 +1,6 @@
+# Connection string for the configuration database (usually a unix socket)
+DATABASE="unix:/var/run/openvswitch/db.sock"
+
+# Additional options
+OPTIONS="--mlockall"
+
diff --git a/testing/ovn/ovs-vswitchd.initd b/testing/ovn/ovs-vswitchd.initd
new file mode 100644
index 00000000000..fe35a96721d
--- /dev/null
+++ b/testing/ovn/ovs-vswitchd.initd
@@ -0,0 +1,25 @@
+#!/sbin/openrc-run
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-misc/openvswitch/files/ovs-vswitchd-r1,v 1.1 2013/04/08 19:37:58 dev-zero Exp $
+
+description="Open vSwitch virtual switch"
+
+pidfile="/var/run/openvswitch/ovs-vswitchd.pid"
+command="/usr/sbin/ovs-vswitchd"
+command_args="
+ --pidfile=$pidfile
+ --detach
+ --monitor
+ ${OPTIONS} ${DATABASE}"
+
+depend() {
+ need localmount ovsdb-server
+ after bootmisc hwdrivers modules
+ before net
+ use logger
+}
+
+start_pre() {
+ checkpath --directory "${pidfile%/*}" --mode 0750
+}
diff --git a/testing/ovn/ovsdb-server.confd b/testing/ovn/ovsdb-server.confd
new file mode 100644
index 00000000000..97367b9717e
--- /dev/null
+++ b/testing/ovn/ovsdb-server.confd
@@ -0,0 +1,16 @@
+# Socket for bringing the server up
+DB_SOCKET="/var/run/openvswitch/db.sock"
+
+# Remote sockets are defined in the database by default
+REMOTE_DB="db:Open_vSwitch,Open_vSwitch,manager_options"
+
+# All certificates and keys are stored in the database (if any)
+PRIVATE_KEY="db:Open_vSwitch,SSL,private_key"
+CERTIFICATE="db:Open_vSwitch,SSL,certificate"
+BOOTSTRAP_CA_CERT="db:Open_vSwitch,SSL,ca_cert"
+
+# Alternative path for the database (default is /etc/openvswitch/conf.db)
+# DATABASE="/etc/openvswitch/conf.db"
+
+# Additional options
+# OPTIONS=""
diff --git a/testing/ovn/ovsdb-server.initd b/testing/ovn/ovsdb-server.initd
new file mode 100644
index 00000000000..65c3f2ef33e
--- /dev/null
+++ b/testing/ovn/ovsdb-server.initd
@@ -0,0 +1,50 @@
+#!/sbin/openrc-run
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-misc/openvswitch/files/ovsdb-server-r1,v 1.1 2013/04/08 19:37:58 dev-zero Exp $
+
+description="Open vSwitch database server"
+
+remote_punix=${DB_SOCKET:+"--remote=punix:${DB_SOCKET}"}
+remote_db=${REMOTE_DB:+"--remote=${REMOTE_DB}"}
+private_key=${PRIVATE_KEY:+"--private-key=${PRIVATE_KEY}"}
+certificate=${CERTIFICATE:+"--certificate=${CERTIFICATE}"}
+bootstrap_ca_cert=${BOOTSTRAP_CA_CERT:+"--bootstrap-ca-cert=${BOOTSTRAP_CA_CERT}"}
+
+db=${DATABASE:-/etc/openvswitch/conf.db}
+dbschema=/usr/share/openvswitch/vswitch.ovsschema
+
+command="/usr/sbin/ovsdb-server"
+command_args="
+ --pidfile
+ --detach
+ --monitor
+ ${remote_punix}
+ ${remote_db}
+ ${private_key}
+ ${certificate}
+ ${bootstrap_ca_cert}
+ ${DATABASE}
+ ${OPTIONS}"
+pidfile="/var/run/openvswitch/ovsdb-server.pid"
+
+
+depend() {
+ need localmount dev
+ after bootmisc hwdrivers modules
+ before net
+ use logger
+}
+
+# ovsdb-server is a hard dependency for ovs-vswitchd (to keep them in sync) - to stop the db only:
+# /etc/init.d/ovsdb-server --nodeps stop |or| rc-service ovsdb-server -- --nodeps stop
+
+start_pre() {
+ checkpath -d "/var/run/openvswitch" -m 0750
+ if ! [ -e "$db" ]; then
+ ovsdb-tool create $db $dbschema
+ elif [ "$(ovsdb-tool needs-conversion $db $dbschema)" = "yes" ]; then
+ ovsdb-tool convert $db $dbschema
+ fi
+}
+
diff --git a/testing/ovos-audio/APKBUILD b/testing/ovos-audio/APKBUILD
new file mode 100644
index 00000000000..752fef2d415
--- /dev/null
+++ b/testing/ovos-audio/APKBUILD
@@ -0,0 +1,53 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=ovos-audio
+pkgver=0.0.2_alpha13
+pkgrel=0
+pkgdesc="ovos-core metapackage for audio daemon "
+url="https://github.com/OpenVoiceOS/ovos-audio"
+arch="noarch !s390x" # blocked by py3-ovos-ocp-audio-plugin
+license="Apache-2.0"
+depends="
+ py3-ovos-bus-client
+ py3-ovos-config
+ py3-ovos-ocp-files-plugin
+ py3-ovos-ocp-m3u-plugin
+ py3-ovos-ocp-news-plugin
+ py3-ovos-ocp-rss-plugin
+ py3-ovos-ocp-audio-plugin
+ py3-ovos-plugin-manager
+ py3-ovos-tts-plugin-mimic3-server
+ py3-ovos-utils
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="
+ py3-pytest
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/OpenVoiceOS/ovos-audio/archive/refs/tags/V${pkgver//_alpha/a}.tar.gz"
+builddir=$srcdir/ovos-audio-${pkgver//_alpha/a}
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+ff87bc8506843825a2766932f0b83a4ba72754e175d94175c01fb772193ef9372130807e7d5d931f5ba3ef406b522a094d4a965f5a05926ccda8d308f36d4d69 ovos-audio-0.0.2_alpha13.tar.gz
+"
diff --git a/testing/ovos-core/APKBUILD b/testing/ovos-core/APKBUILD
new file mode 100644
index 00000000000..6ed0824ea69
--- /dev/null
+++ b/testing/ovos-core/APKBUILD
@@ -0,0 +1,69 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=ovos-core
+pkgver=0.0.8_alpha24
+pkgrel=1
+pkgdesc="OVOS Core, the OVOS Artificial Intelligence platform"
+url="https://github.com/OpenVoiceOS/ovos-core/"
+# s390x blocked by py3-speechrecognition -> py3-ovos-backend-client
+arch="noarch !s390x"
+license="Apache-2.0"
+depends="
+ py3-adapt-parser
+ py3-combo-lock
+ py3-dateutil
+ py3-lingua-franca
+ py3-ovos-backend-client
+ py3-ovos-bus-client
+ py3-ovos-classifiers
+ py3-ovos-config
+ py3-ovos-plugin-manager
+ py3-ovos-utils
+ py3-ovos-workshop
+ py3-padatious
+ py3-requests
+ py3-watchdog
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/OpenVoiceOS/ovos-core/archive/refs/tags/V${pkgver//_alpha/a}.tar.gz
+ profile.sh
+ ovos.conf
+ "
+builddir=$srcdir/ovos-core-${pkgver//_alpha/a}
+# Net is required for tests
+# Some tests are broken still, will be enabled later
+options="!check"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ # test_hotword_factory and test_local_recognizer fail
+ # https://github.com/MycroftAI/mycroft-core/issues/2574
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+
+ install -Dm644 -t "$pkgdir"/etc/OpenVoiceOS "$srcdir"/ovos.conf
+
+ install -Dm644 "$srcdir"/profile.sh "$pkgdir"/etc/profile.d/ovos.sh
+}
+sha512sums="
+c0e7bbad76b5de655ed4d14ce4b84d4a7061f34de3aebc2335f8b14b08eae5ef4090e05ca81444249d3818ff2e1caa9bb9289753fbb17b663e9cd094a7a0458e ovos-core-0.0.8_alpha24.tar.gz
+c3d1a605a0b574c8e2c4031f592bdbf023f5ed9b2e1ba0cea38cf79278331f245dbe4e220e7f81de73fe612ffd722253805058dae04ba89c3d01c361b329e4ef profile.sh
+889b668be450db9c27d7d9f3b00bbcd9a2882f8a4c129cdc5c94ab21490e85acddfd914496447f5f011713c2ecd5b1cafbf13a5948677d9ff82eb5e478faf47a ovos.conf
+"
diff --git a/testing/ovos-core/ovos.conf b/testing/ovos-core/ovos.conf
new file mode 100644
index 00000000000..0071b1db4c1
--- /dev/null
+++ b/testing/ovos-core/ovos.conf
@@ -0,0 +1 @@
+{ "xdg": true }
diff --git a/testing/ovos-core/profile.sh b/testing/ovos-core/profile.sh
new file mode 100644
index 00000000000..4765d018c0e
--- /dev/null
+++ b/testing/ovos-core/profile.sh
@@ -0,0 +1,2 @@
+export MYCROFT_START_CMD="mycroft-start all"
+export MYCROFT_STOP_CMD="mycroft-stop all"
diff --git a/testing/ovos-dinkum-listener/APKBUILD b/testing/ovos-dinkum-listener/APKBUILD
new file mode 100644
index 00000000000..03d6a46813f
--- /dev/null
+++ b/testing/ovos-dinkum-listener/APKBUILD
@@ -0,0 +1,51 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=ovos-dinkum-listener
+pkgver=0.0.2
+pkgrel=0
+pkgdesc="ovos-listener based on the voice loop from mycroft-dinkum "
+url="https://github.com/OpenVoiceOS/ovos-dinkum-listener"
+# 32-bit arches blocked by py3-webrtcvad -> py3-ovos-vad-plugin-webrtcvad
+# s390x, ppc64le and riscv64 blocked by py3-webrtcvad -> py3-ovos-vad-plugin-webrtcvad
+arch="noarch !x86 !armhf !armv7 !s390x !ppc64le !riscv64"
+license="Apache-2.0"
+depends="
+ py3-ovos-backend-client
+ py3-ovos-bus-client
+ py3-ovos-config
+ py3-ovos-microphone-plugin-alsa
+ py3-ovos-plugin-manager
+ py3-ovos-utils
+ py3-ovos-vad-plugin-webrtcvad
+ py3-speechrecognition
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/OpenVoiceOS/ovos-dinkum-listener/archive/refs/tags/V$pkgver.tar.gz"
+options="!check" # Broken
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+ac351db0e53410f7b4456c7b96aad5848d0e41d058a3a30239860e9215c252d00eb1ea64a84649a923a225f1b2e054172309e34a029d5835e188a2d835bcf76e ovos-dinkum-listener-0.0.2.tar.gz
+"
diff --git a/testing/ovos-gui/APKBUILD b/testing/ovos-gui/APKBUILD
new file mode 100644
index 00000000000..c741ce43c14
--- /dev/null
+++ b/testing/ovos-gui/APKBUILD
@@ -0,0 +1,46 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=ovos-gui
+pkgver=0.0.3_alpha5
+pkgrel=1
+pkgdesc="ovos-core metapackage for gui daemon"
+url="https://github.com/OpenVoiceOS/ovos-gui"
+arch="noarch"
+license="Apache-2.0"
+depends="
+ py3-ovos-bus-client
+ py3-ovos-config
+ py3-ovos-plugin-manager
+ py3-ovos-utils
+ py3-tornado
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/OpenVoiceOS/ovos-gui/archive/refs/tags/V${pkgver//_alpha/a}.tar.gz"
+builddir=$srcdir/ovos-gui-${pkgver//_alpha/a}
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+1cb8ceba3ad53dfde671b492a76bd3b3d24560a598fccc80d8254dde35e7d8b2b9446cdd56b1e8042c72695841af83a5bd7b3ee121a387f0a89213719b431ebb ovos-gui-0.0.3_alpha5.tar.gz
+"
diff --git a/testing/ovos-messagebus/APKBUILD b/testing/ovos-messagebus/APKBUILD
new file mode 100644
index 00000000000..ab6e40836a3
--- /dev/null
+++ b/testing/ovos-messagebus/APKBUILD
@@ -0,0 +1,40 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=ovos-messagebus
+pkgver=0.0.3
+pkgrel=1
+pkgdesc="ovos-core metapackage for bus daemon"
+url="https://github.com/OpenVoiceOS/ovos-messagebus"
+arch="noarch"
+license="Apache-2.0"
+depends="
+ py3-ovos-config
+ py3-ovos-utils
+ py3-tornado
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="
+ py3-pytest
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/OpenVoiceOS/ovos-messagebus/archive/refs/tags/V$pkgver.tar.gz"
+options="!check" # No tests
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+a908e8974440d742a79006f1167b5dde15911898fd46532c356354b177c661a651320670c5f1c00f2cb2f68cc99ccece32429c6356867360077b64c6b739b51b ovos-messagebus-0.0.3.tar.gz
+"
diff --git a/testing/ovos-phal/APKBUILD b/testing/ovos-phal/APKBUILD
new file mode 100644
index 00000000000..30a4f7e716d
--- /dev/null
+++ b/testing/ovos-phal/APKBUILD
@@ -0,0 +1,54 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=ovos-phal
+pkgver=0.0.5_alpha6
+pkgrel=1
+pkgdesc="Plugin based Hardware Abstraction Layer for OVOS"
+url="https://github.com/OpenVoiceOS/ovos-PHAL"
+# s390x blocked by py3-speechrecognition -> py3-ovos-backend-client
+arch="noarch !s390x"
+license="Apache-2.0"
+depends="
+ py3-ovos-bus-client
+ py3-ovos-config
+ py3-ovos-phal-plugin-connectivity-events
+ py3-ovos-phal-plugin-ipgeo
+ py3-ovos-phal-plugin-network-manager
+ py3-ovos-phal-plugin-oauth
+ py3-ovos-phal-plugin-system
+ py3-ovos-plugin-manager
+ py3-ovos-utils
+ py3-ovos-workshop
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="
+ py3-pytest
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/OpenVoiceOS/ovos-PHAL/archive/refs/tags/V${pkgver//_alpha/a}.tar.gz"
+builddir="$srcdir/ovos-PHAL-${pkgver//_alpha/a}"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+860d0e763a9caa87defd985eaa4663c1d194e41a6dbb22dbcfe42e3bb40245832caa25ce07915b5469e35ce2aaa09ffb8f52a392fedec55b946ee47f6a1eefa3 ovos-phal-0.0.5_alpha6.tar.gz
+"
diff --git a/testing/ovos-shell/APKBUILD b/testing/ovos-shell/APKBUILD
new file mode 100644
index 00000000000..2dfc807a504
--- /dev/null
+++ b/testing/ovos-shell/APKBUILD
@@ -0,0 +1,59 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=ovos-shell
+pkgver=0.0.1_git20230404
+pkgrel=2
+_commit="d98c91ac82e2aa5984a4dd616f2d072ae9767395"
+pkgdesc="OpenVoiceOS Shell with Mycroft GUI embedded view for Wayland and EGLFS platforms"
+url="https://github.com/OpenVoiceOS/ovos-shell"
+# armhf blocked by extra-cmake-modules
+# ppc64le, s390x and riscv64 blocked by qt5-qtwebengine -> qt5-qtwebview
+# armv7 blocked by mycroft-gui
+arch="all !armhf !ppc64le !s390x !riscv64 !armv7"
+license="Apache-2.0"
+depends="
+ kirigami2
+ mycroft-gui
+ plasma-pa
+ "
+makedepends="
+ extra-cmake-modules
+ kconfig5-dev
+ kconfigwidgets5-dev
+ kcoreaddons5-dev
+ kdbusaddons5-dev
+ kguiaddons5-dev
+ ki18n5-dev
+ kiconthemes5-dev
+ kirigami2-dev
+ qt5-qtbase-dev
+ qt5-qtdeclarative-dev
+ qt5-qtwebview-dev
+ "
+source="$pkgname-$_commit.tar.gz::https://github.com/OpenVoiceOS/ovos-shell/archive/$_commit.tar.gz"
+options="!check" # No tests
+builddir="$srcdir/$pkgname-$_commit"
+
+provides="mycroft-embedded-shell=$pkgver-r$pkgrel"
+replaces="mycroft-embedded-shell"
+
+build() {
+ cmake -B build \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib
+ cmake --build build
+}
+
+check() {
+ cd build
+ CTEST_OUTPUT_ON_FAILURE=TRUE ctest
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+f02cce034edce9d234e93fbe2379a9a5f937664abfc47315665e7c29a8f3806a03b7b7614da1cc0baa35c3cf072a856ce7f9aee027a864b872a73c02b1dd3cc2 ovos-shell-d98c91ac82e2aa5984a4dd616f2d072ae9767395.tar.gz
+"
diff --git a/testing/ovos-skill-hello-world/APKBUILD b/testing/ovos-skill-hello-world/APKBUILD
new file mode 100644
index 00000000000..6298a4049d0
--- /dev/null
+++ b/testing/ovos-skill-hello-world/APKBUILD
@@ -0,0 +1,39 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=ovos-skill-hello-world
+pkgver=0.0.4_alpha3
+pkgrel=1
+pkgdesc="Introductory Skill so that Skill Authors can see how an OVOS Skill is put together"
+url="https://github.com/OpenVoiceOS/skill-ovos-hello-world"
+# s390x blocked by py3-speechrecognition -> py3-ovos-workshop
+arch="noarch !s390x"
+license="Apache-2.0"
+depends="
+ py3-ovos-utils
+ py3-ovos-workshop
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/OpenVoiceOS/skill-ovos-hello-world/archive/refs/tags/V${pkgver//_alpha/a}.tar.gz"
+options="!check" # No tests
+builddir="$srcdir/skill-ovos-hello-world-${pkgver//_alpha/a}"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+af103a0c9d09f8e178d4da234eca133023b4ff813e4f8203c9eac9dce974684bf9c42c25d640027b8d01f6adf23a1921c9a1ba8233b1c3e8e2d887235fd3f85b ovos-skill-hello-world-0.0.4_alpha3.tar.gz
+"
diff --git a/testing/ovos-skill-manager/APKBUILD b/testing/ovos-skill-manager/APKBUILD
new file mode 100644
index 00000000000..ca6d5298b02
--- /dev/null
+++ b/testing/ovos-skill-manager/APKBUILD
@@ -0,0 +1,81 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=ovos-skill-manager
+pkgver=0.0.13
+pkgrel=1
+pkgdesc="Open Voice OS skill manager (deprecated)"
+url="https://github.com/OpenVoiceOS/ovos_skill_manager"
+arch="noarch"
+license="Apache-2.0"
+depends="
+ ovos-skill-installer
+ py3-beautifulsoup4
+ py3-click
+ py3-click-default-group
+ py3-combo-lock
+ py3-json-database
+ py3-ovos-config
+ py3-ovos-utils
+ py3-packaging
+ py3-pako
+ py3-requests
+ py3-requests-cache
+ py3-yaml
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/OpenVoiceOS/ovos_skill_manager/archive/refs/tags/$pkgver.tar.gz
+ appstore-use-last-compatible-archive.patch
+ fix-github-main-branch-detection.patch
+ "
+# net required for tests
+options="net"
+builddir="$srcdir/ovos_skill_manager-$pkgver"
+
+# Backwards compatibility from a rename
+provides="ovos-skills-manager=$pkgver-r$pkgrel"
+replaces="ovos-skills-manager"
+
+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
+ case "$CARCH" in
+ armhf)
+ .testenv/bin/python3 -m pytest \
+ -k 'not test_locate_config and not test_skill_entry_uuid' \
+ --deselect test/unittests/test_osm.py \
+ --deselect test/unittests/test_skill_entry.py::TestSkillEntryFromGit::test_requirements_commented \
+ --deselect test/unittests/test_skill_entry.py::TestSkillEntryFromGit::test_requirements_from_txt \
+ --deselect test/unittests/test_skill_entry.py::TestSkillEntryFromGit::test_requirements_json_manifest_txt \
+ --deselect test/unittests/test_skill_entry.py::TestSkillEntryFromGit::test_requirements_json_manifest_txt_dep_system_reqs \
+ --deselect test/unittests/test_skill_entry.py::TestSkillEntryFromGit::test_requirements_null_json
+ ;;
+ *)
+ .testenv/bin/python3 -m pytest \
+ -k 'not test_locate_config and not test_skill_entry_uuid' \
+ --deselect test/unittests/test_osm.py
+ ;;
+ esac
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+38629a4571e1508dae5f9f66b93b76a02f4f90069a00148cc216728c91efa1a3b397131e71a83837d9447214021ea1f5a83a80bf42e8e9d2af7d8f70e847993f ovos-skill-manager-0.0.13.tar.gz
+fdd52cc7a40e2c39c63d8a1c7adab1d713f669bf08733c5bc11d3c0a248c56a23206825d2b3729c2a182fe0bb9b18492e5319bff970aa91a8f91f7ffdc69a409 appstore-use-last-compatible-archive.patch
+2b6bb10b244fd1b9fbd5c76c0f3506d68d693a861eaa310df1c6ee2d5db49befb80268e2fe3720942b60c4b73d2f05b2f7a9dfce7c5c19b6e6afcdbd27926667 fix-github-main-branch-detection.patch
+"
diff --git a/testing/ovos-skill-manager/appstore-use-last-compatible-archive.patch b/testing/ovos-skill-manager/appstore-use-last-compatible-archive.patch
new file mode 100644
index 00000000000..cc272c1317f
--- /dev/null
+++ b/testing/ovos-skill-manager/appstore-use-last-compatible-archive.patch
@@ -0,0 +1,26 @@
+From aa2734bc78a650aa719431bc346244a3ad314fa6 Mon Sep 17 00:00:00 2001
+From: Sertonix <sertonix@posteo.net>
+Date: Thu, 28 Mar 2024 10:48:39 +0100
+Subject: [PATCH] appstore: use last compatible archive
+
+---
+ ovos_skills_manager/appstores/ovos.py | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/ovos_skills_manager/appstores/ovos.py b/ovos_skills_manager/appstores/ovos.py
+index 4cc8c81..b6b8322 100644
+--- a/ovos_skills_manager/appstores/ovos.py
++++ b/ovos_skills_manager/appstores/ovos.py
+@@ -10,7 +10,8 @@ import json
+ def get_ovos_skills(parse_github:bool=False, skiplist=None):
+ skiplist = skiplist or []
+ path = join(gettempdir(), "ovos")
+- dl_url = "https://github.com/OpenVoiceOS/OVOS-skills-store/archive/main.zip"
++ # Last compatible archive
++ dl_url = "https://github.com/OpenVoiceOS/OVOS-skills-store/archive/fb99f2c7ea3f1a7c9dc691ac5adbdae03dccd35e.zip"
+ download_extract_zip(dl_url, path, join(path, "ovos-appstore.zip"))
+ for root, folders, files in walk(path):
+ files = [f for f in files if f.endswith(".json")]
+--
+2.44.0
+
diff --git a/testing/ovos-skill-manager/fix-github-main-branch-detection.patch b/testing/ovos-skill-manager/fix-github-main-branch-detection.patch
new file mode 100644
index 00000000000..d2b3af86339
--- /dev/null
+++ b/testing/ovos-skill-manager/fix-github-main-branch-detection.patch
@@ -0,0 +1,31 @@
+From 466f081c14bc889c61967bd9f3e66e7a53de3a07 Mon Sep 17 00:00:00 2001
+From: Sertonix <sertonix@posteo.net>
+Date: Thu, 28 Mar 2024 11:00:15 +0100
+Subject: [PATCH] fix github main branch detection
+
+---
+ ovos_skills_manager/github/raw.py | 5 ++---
+ 1 file changed, 2 insertions(+), 3 deletions(-)
+
+diff --git a/ovos_skills_manager/github/raw.py b/ovos_skills_manager/github/raw.py
+index a0a2a42..c7c7805 100644
+--- a/ovos_skills_manager/github/raw.py
++++ b/ovos_skills_manager/github/raw.py
+@@ -46,12 +46,11 @@ def get_main_branch_from_github_url(url: str) -> str:
+ """
+ html = None
+ try:
+- url = normalize_github_url(url)
++ url = normalize_github_url(url) + "/branches"
+ html = requests.get(url).text
+ if "<title>Rate limit &middot; GitHub</title>" in html:
+ raise GithubHTTPRateLimited
+- encoded = html.split("default-branch=\"")[1].split('"')[0]
+- return base64.b64decode(encoded).decode("utf-8")
++ return html.split('id="default"')[1].split('title="')[1].split('"')[0]
+ except Exception as e:
+ LOG.error(f"html={html}")
+ LOG.error(e)
+--
+2.44.0
+
diff --git a/testing/ovos/APKBUILD b/testing/ovos/APKBUILD
new file mode 100644
index 00000000000..73a3227138c
--- /dev/null
+++ b/testing/ovos/APKBUILD
@@ -0,0 +1,28 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=ovos
+pkgver=0.0.1
+pkgrel=0
+pkgdesc="Meta-package for the OpenVoiceOS system"
+url="https://openvoiceos.org/"
+# 32-bit arches blocked by py3-webrtcvad -> ovos-dinkum-listener
+# only x86_64 and aarch64 blocked by vosk-api -> py3-ovos-ww-plugin-vosk
+arch="noarch !x86 !armhf !armv7 !s390x !ppc64le !riscv64"
+license="custom"
+depends="
+ ovos-audio
+ ovos-core
+ ovos-dinkum-listener
+ ovos-gui
+ ovos-messagebus
+ ovos-phal
+ py3-ovos-stt-plugin-server
+ py3-ovos-tts-plugin-mimic3-server
+ py3-ovos-ww-plugin-vosk
+ "
+options="!check" # No tests in a meta-package
+
+package() {
+ mkdir -p "$pkgdir"
+}
+
diff --git a/testing/ovpncc/APKBUILD b/testing/ovpncc/APKBUILD
new file mode 100644
index 00000000000..e25b79e9dfb
--- /dev/null
+++ b/testing/ovpncc/APKBUILD
@@ -0,0 +1,24 @@
+# Maintainer: Ben Fuhrmannek <ben+alpine@sektioneins.de>
+pkgname=ovpncc
+pkgver=0.1_rc1
+pkgrel=0
+pkgdesc="OpenVPN Security Config Checker"
+url="https://github.com/sektioneins/ovpncc"
+arch="noarch"
+license="Apache-2.0"
+depends="tcl tcl-lib"
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/sektioneins/ovpncc/archive/v${pkgver/_/}.tar.gz"
+builddir="$srcdir/$pkgname-${pkgver/_/}"
+options="!check" # No test suite
+
+package() {
+ install -Dvm755 ovpncc -t "$pkgdir"/usr/bin
+ install -Dvm644 ovpncc.tcl -t "$pkgdir"/usr/lib/"$pkgname"
+ install -Dvm755 scframework/scframework.tcl -t "$pkgdir"/usr/lib/"$pkgname"/scframework
+ install -Dvm644 README.md LICENSE.txt -t "$pkgdir"/usr/share/doc/"$pkgname"
+}
+
+sha512sums="
+7a4d461ccddadfdb306225e5c970446369f24f81e482c7dabfdb08fef0025cda8c3fcad051b6781e6ddd5df2d3ac07d48a0ba005ac9310c03eef8fa54a9c4691 ovpncc-0.1_rc1.tar.gz
+"
diff --git a/testing/oxipng/APKBUILD b/testing/oxipng/APKBUILD
deleted file mode 100644
index 938e006ab6f..00000000000
--- a/testing/oxipng/APKBUILD
+++ /dev/null
@@ -1,28 +0,0 @@
-# Contributor: Maxim Karasev <begs@disroot.org>
-# Maintainer: Maxim Karasev <begs@disroot.org>
-pkgname=oxipng
-pkgver=5.0.1
-pkgrel=0
-pkgdesc="Multithreaded PNG optimizer written in Rust"
-url="https://github.com/shssoichiro/oxipng"
-arch="x86_64 aarch64 x86 ppc64le" # limited by rust and libdeflate-sys
-license="MIT"
-makedepends="cargo"
-source="https://github.com/shssoichiro/oxipng/archive/v$pkgver/oxipng-$pkgver.tar.gz"
-
-build() {
- cargo build --release --locked
-}
-
-check() {
- cargo test --release --locked
-}
-
-package() {
- cargo install --locked --path . --root="$pkgdir/usr"
- rm "$pkgdir"/usr/.crates*
-}
-
-sha512sums="
-ec96465ba1aee38c6fa59e0289a41f18247bb0dbb85884d1d90511347271669af5254d0b8f61ad6be9bf98c653835a7f2b2f8de12a5df39caf9935e30342f91d oxipng-5.0.1.tar.gz
-"
diff --git a/testing/p0f/APKBUILD b/testing/p0f/APKBUILD
index f438fdcf2fc..0d34fd54806 100644
--- a/testing/p0f/APKBUILD
+++ b/testing/p0f/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Arch3y <arch3y@riseup.net>
pkgname=p0f
pkgver=3.09b
-pkgrel=1
+pkgrel=2
pkgdesc="Passive traffic fingerprinting tool"
url="https://lcamtuf.coredump.cx/p0f3/"
arch="all"
diff --git a/testing/p910nd/APKBUILD b/testing/p910nd/APKBUILD
index fb38887e517..c54eab0afc1 100644
--- a/testing/p910nd/APKBUILD
+++ b/testing/p910nd/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=p910nd
pkgver=0.97
-pkgrel=1
+pkgrel=2
pkgdesc="Non-spooling printer daemon"
url="https://github.com/kenyapcomau/p910nd"
arch="all"
@@ -30,7 +30,7 @@ package() {
sha512sums="
162cb64ca79bfb1ce76b726e677ebba9f300c90e1e647625a7ee8db1d0c808a3f7b4ef9b139dfa2cfa7c8861082fe6dcdcc18636a0e0233010411b3746c1560c p910nd-0.97.tar.gz
-6c8f0208b4589dec1945fcbc4c649c46936e54abc50e35ad5916de934ead0f34b020ef2f48ca2ca6051ca4a9c09e1ac4ff563fc134d11e39f82115f8661c588f p910nd.initd
-78a2593982ea9cd8df4dc9d6e6a9a37ace3a2eea0919b74448722a5fe877b9834eb5c725e5194081f8c75ab4a032690691bfa76883a73e276aa8fa4681a793bc p910nd.confd
+14064e928e887ac932e3d9ba82167f2bef13ba046e8cf8bda36a0790961cb346ad2258f8b00ff02a025c996061c7d94d2ef3e91a1e29d207784c49fb6aed296c p910nd.initd
+9a35dde6dabbe8131cfc18c47e9cdb54876f9c680f6badd1d6b399db459ae765a5fc388c549c9559088c5a056bf2e9c8417c778344b8bbf30756bde39ba4b021 p910nd.confd
81d528496a528d95fec474cfb569251293af506daae77893c232179f4e6d98cc897cdf574c3241b6c59611ca38b5fc2c86df8a81ef72b522b82c924127efa6cb fix-paths.patch
"
diff --git a/testing/p910nd/p910nd.confd b/testing/p910nd/p910nd.confd
index 2bdf4d9eb38..868c94fec73 100644
--- a/testing/p910nd/p910nd.confd
+++ b/testing/p910nd/p910nd.confd
@@ -1,6 +1,6 @@
# Printer number, default 0 equals to 9100, 1 to 9101, 2 to 9102
P910ND_NUM="0"
# Device
-P910ND_DEV="/dev/lp${P910ND_NUM}"
+P910ND_DEV="/dev/usb/lp${P910ND_NUM}"
# Additional daemon arguments, see man 8 p910nd
P910ND_OPTS="-b -f ${P910ND_DEV}"
diff --git a/testing/p910nd/p910nd.initd b/testing/p910nd/p910nd.initd
index 6378a75f9ea..e22811f03c0 100644
--- a/testing/p910nd/p910nd.initd
+++ b/testing/p910nd/p910nd.initd
@@ -4,7 +4,7 @@
# (c) 2019 Francesco Colista <fcolista@alpinelinux.org>
#
-command="/usr/sbin/p910nd"
+command="/usr/bin/p910nd"
pidfile="/run/p910nd/p910nd.${P910ND_NUM}.pid"
command_args="${P910ND_OPTS} ${P910ND_NUM}"
diff --git a/testing/pacparser/APKBUILD b/testing/pacparser/APKBUILD
index 08a940c593f..0db0eb80e53 100644
--- a/testing/pacparser/APKBUILD
+++ b/testing/pacparser/APKBUILD
@@ -1,21 +1,26 @@
# Contributor: Aaron Hurt <ahurt@ena.com>
-# Maintainer:
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=pacparser
-pkgver=1.3.7
-pkgrel=5
+pkgver=1.4.3
+pkgrel=1
pkgdesc="A library to parse proxy auto-config (PAC) files"
url="https://pacparser.manugarg.com/"
-# x86, armhf: https://github.com/pacparser/pacparser/issues/77
-arch="x86_64"
+arch="all"
license="LGPL-3.0-or-later"
-makedepends="bash python3-dev"
-subpackages="py3-$pkgname:pymod $pkgname-doc $pkgname-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/pacparser/pacparser/archive/$pkgver.tar.gz
- spidermonkey-make.patch"
+makedepends="bash python3-dev py3-setuptools"
+subpackages="py3-$pkgname-pyc:pyc py3-$pkgname:pymod $pkgname-doc $pkgname-dev"
+source="$pkgname-$pkgver.tar.gz::https://github.com/manugarg/pacparser/archive/refs/tags/v$pkgver.tar.gz
+ spidermonkey-make.patch
+ "
+
+# secfixes:
+# 1.4.0-r0:
+# - CVE-2019-25087
prepare() {
- find "$builddir" -name \*.git\* -delete
default_prepare
+
+ echo "VERSION=v$pkgver" > src/version.mk
}
build() {
@@ -25,7 +30,7 @@ build() {
}
package() {
- make -C src DESTDIR="$pkgdir" install
+ make -C src DESTDIR="$pkgdir" install install-pymod
}
pymod() {
@@ -33,9 +38,10 @@ pymod() {
replaces="py-pymod" # Backwards compatibility
provides="py-pymod=$pkgver-r$pkgrel" # Backwards compatibility
- cd "$builddir"
- PYTHON=python3 make -C src DESTDIR="$subpkgdir" install-pymod
+ amove usr/lib/python*
}
-sha512sums="9722dbfb0935824c5bea5f092e7bf82b74a0e59387e2a887d1c4e9234bcdb0af3ba4b58d5041dc6192e10200e46746481568a36bcdeca4860cdf00a921adfd2d pacparser-1.3.7.tar.gz
-6f584acfb1f9f16385bef277f4c6bd30fa5f1e77d137cdd3306d50ce60e4917da34d47cd943ea078a264298dfa4a8c3256b447072dd108349e8deddfa536a60d spidermonkey-make.patch"
+sha512sums="
+cc0d6c0a7b1fd9d55dece6c4ad80711d3d1055a0cde120dbb6e8274508631b325e7d876545b40ca05cefc6dce15aa1476e5b2936527e3183ad86114e4cd661a5 pacparser-1.4.3.tar.gz
+99753cfb450e685d866d80e33c58320584c15ec625a0745d4ea2b9d3a6eadb2308563d1b86bdc656a66d255b58a426a89cd5f14ea3b472d04a70a99ef3c1a2bf spidermonkey-make.patch
+"
diff --git a/testing/pacparser/spidermonkey-make.patch b/testing/pacparser/spidermonkey-make.patch
index 32bdf053408..1f78fa99b2e 100644
--- a/testing/pacparser/spidermonkey-make.patch
+++ b/testing/pacparser/spidermonkey-make.patch
@@ -3,20 +3,22 @@ over eachother without forcing the copy. This patch adds the -f (force)
option to the find copy command. This is not explicitly needed but does
seem to reduce a warning.
+diff --git a/src/spidermonkey/Makefile b/src/spidermonkey/Makefile
+index 99521a2..1641274 100644
--- a/src/spidermonkey/Makefile
+++ b/src/spidermonkey/Makefile
-@@ -30,12 +30,12 @@
-
+@@ -28,12 +28,12 @@ jsapi: js-buildstamp
+
jslib: js-buildstamp
cd js/src
-- find . -name "libjs.a" -exec cp {} .. \;
-+ find . -name "libjs.a" -exec cp -f {} .. \;
-
+- find . -name "libjs.a" -exec cp {} . \;
++ find . -name "libjs.a" -exec cp -f {} . \;
+
js-buildstamp:
mkdir -p js/src/$(OBJDIR)
- CFLAGS="$(SMCFLAGS)" "$(MAKE)" -C js/src -f Makefile.ref libjs.a
+ CFLAGS="$(SMCFLAGS)" $(MAKE) -C js/src -f Makefile.ref libjs.a
- find js/src -name "jsautocfg.h" -exec cp {} js/src \;
+ find js/src -name "jsautocfg.h" -exec cp -f {} js/src \;
touch js-buildstamp
-
+
clean:
diff --git a/testing/paho-mqtt-c/APKBUILD b/testing/paho-mqtt-c/APKBUILD
deleted file mode 100644
index c61e072d5ab..00000000000
--- a/testing/paho-mqtt-c/APKBUILD
+++ /dev/null
@@ -1,42 +0,0 @@
-# Contributor: Díaz Urbaneja Diego <sodomon2@gmail.com>
-# Maintainer: Díaz Urbaneja Diego <sodomon2@gmail.com>
-pkgname=paho-mqtt-c
-pkgver=1.3.9
-pkgrel=0
-pkgdesc="Fully fledged MQTT client written in ANSI standard C"
-url="https://www.eclipse.org/paho/clients/c/"
-arch="all"
-license="EPL-1.0"
-makedepends="cmake openssl-dev"
-options="!check" # make check not implemented
-subpackages="$pkgname-dev $pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/eclipse/paho.mqtt.c/archive/v$pkgver.tar.gz"
-builddir="$srcdir/paho.mqtt.c-$pkgver"
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- -DCMAKE_BUILD_TYPE=None \
- -DPAHO_WITH_SSL=TRUE \
- $CMAKE_CROSSOPTS .
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-
- # install man pages
- for dir in MQTTAsync MQTTClient; do
- install -Dm644 "docs/$dir/man/man3/"*.3 \
- -t "$pkgdir"/usr/share/man/man3/
- done
-}
-
-sha512sums="
-2a2ad34df508d8d97ef5382310ba28bb5280843bec337770a2e20442405dde3283473a6038b23fbc1a79bd60d1dfb72d6b508ae4338e95d88b370c0e5625dae5 paho-mqtt-c-1.3.9.tar.gz
-"
diff --git a/testing/palp/APKBUILD b/testing/palp/APKBUILD
new file mode 100644
index 00000000000..b454cf77a59
--- /dev/null
+++ b/testing/palp/APKBUILD
@@ -0,0 +1,47 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
+pkgname=palp
+pkgver=2.20
+pkgrel=1
+pkgdesc="Package for Analyzing Lattice Polytopes"
+url="http://hep.itp.tuwien.ac.at/~kreuzer/CY/CYpalp.html"
+arch="all"
+license="GPL-3.0-only"
+options="!check" # no test suite
+source="http://hep.itp.tuwien.ac.at/~kreuzer/CY/palp/palp-$pkgver.tar.gz"
+_files="poly class cws nef mori"
+_dimensions="4 5 6 11"
+
+prepare() {
+ default_prepare
+ mkdir -p bin
+ mv Global.h Global.h.template
+}
+
+build() {
+ export CFLAGS="${CFLAGS/-Os/-O3}" # gotta go fast
+
+ # Inspired by https://git.sagemath.org/sage.git/plain/build/pkgs/palp/spkg-install.in
+ local dim file
+ for dim in $_dimensions; do
+ sed "s/^#define[^a-zA-Z]*POLY_Dmax.*/#define POLY_Dmax $dim/" Global.h.template > Global.h
+ make
+ for file in $_files; do
+ mv "$file".x bin/"$file-${dim}d.x"
+ done
+ done
+}
+
+package() {
+ local dim file
+ for file in $_files; do
+ for dim in $_dimensions; do
+ install -Dm755 -t "$pkgdir"/usr/bin bin/"$file-${dim}d.x"
+ done
+ ln -sf "$file"-6d.x "$pkgdir"/usr/bin/"$file.x"
+ done
+}
+
+sha512sums="
+08d9a8543c2253297d6ff9076c7e27b9086dc758599f4a0a0348d391e583b3c9ccd9315cce6f425f62432d546a68e689def55c3a8c1f5a5e17bf7998468d1ee2 palp-2.20.tar.gz
+"
diff --git a/testing/pam_mount/APKBUILD b/testing/pam_mount/APKBUILD
new file mode 100644
index 00000000000..98cbe07bb4a
--- /dev/null
+++ b/testing/pam_mount/APKBUILD
@@ -0,0 +1,57 @@
+# Maintainer:
+pkgname=pam_mount
+pkgver=2.20
+pkgrel=0
+pkgdesc="Pluggable Authentication Module that can mount volumes for a user session"
+url="https://codeberg.org/jengelh/pam_mount"
+arch="all"
+license="LGPL-2.1-or-later"
+makedepends="
+ cryptsetup-dev
+ libhx-dev
+ libxml2-dev
+ linux-pam-dev
+ openssl-dev
+ pcre2-dev
+ perl
+ util-linux-dev
+ "
+subpackages="
+ $pkgname-dev
+ $pkgname-doc
+ libcryptmount
+ "
+source="https://inai.de/files/pam_mount/pam_mount-$pkgver.tar.xz
+ rundir.patch
+ "
+
+build() {
+ ./configure \
+ --prefix=/usr \
+ --host=$CHOST \
+ --build=$CBUILD \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --with-rundir=/run \
+ --disable-dependency-tracking
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+libcryptmount() {
+ pkgdesc="$pkgdesc (libcryptmount library)"
+
+ amove usr/lib/libcryptmount.so.*
+}
+
+sha512sums="
+8661dc5ec134c256825df28e53751d1e0e1e881008c3687a56009f4046b3d17c5b9ddd1b1971dff4e023e5d74e5059f486b08a6cab2861a4bee5ba57fbae3454 pam_mount-2.20.tar.xz
+41275676cec24f050a194c8d375c9f949b9b93125d25df778de711d59b4e458a251978fed9a9b65d9416f7863bb2b631dc1534258075f34cf5dc86be3838b25d rundir.patch
+"
diff --git a/testing/pam_mount/rundir.patch b/testing/pam_mount/rundir.patch
new file mode 100644
index 00000000000..4e767e5b973
--- /dev/null
+++ b/testing/pam_mount/rundir.patch
@@ -0,0 +1,13 @@
+diff --git a/Makefile.in b/Makefile.in
+index be4d0b9..1340490 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -924,7 +924,7 @@ uninstall-am: uninstall-pkgconfigDATA
+ ${pkgconfig_DATA}: ${top_builddir}/config.status
+
+ install-data-hook:
+- ${MKDIR_P} ${DESTDIR}${localstatedir}/run/pam_mount;
++ ${MKDIR_P} ${DESTDIR}/run/pam_mount;
+
+ .PHONY: tarball
+ tarball:
diff --git a/testing/pam_sqlite3/APKBUILD b/testing/pam_sqlite3/APKBUILD
index 18413eecfe9..f028b233f2c 100644
--- a/testing/pam_sqlite3/APKBUILD
+++ b/testing/pam_sqlite3/APKBUILD
@@ -2,17 +2,15 @@
# Maintainer: Benoit Masson <yahoo@perenite.com>
pkgname=pam_sqlite3
pkgver=1.0.2
-pkgrel=0
+pkgrel=1
pkgdesc="pam_sqlite3"
url="https://github.com/HormyAJP/pam_sqlite3"
arch="all"
-license="GPL-3.0"
-depends="linux-pam"
+license="GPL-3.0-only"
makedepends="linux-pam-dev sqlite-dev bsd-compat-headers"
-install=""
-subpackages=""
-source="$pkgname-$pkgver.tar.gz::https://github.com/HormyAJP/pam_sqlite3/archive/v1.0.2.tar.gz"
-builddir="$srcdir/$pkgname-$pkgver"
+source="$pkgname-$pkgver.tar.gz::https://github.com/HormyAJP/pam_sqlite3/archive/v$pkgver.tar.gz
+ broken-makefile.patch
+ "
options="!check"
prepare() {
@@ -21,7 +19,6 @@ prepare() {
}
build() {
- cd "$builddir"
./configure \
--build=$CBUILD \
--host=$CHOST \
@@ -32,10 +29,10 @@ build() {
}
package() {
- cd "$builddir"
- mkdir -p "$pkgdir/lib/security/"
-# make DESTDIR="$pkgdir" install
- install -c -m 755 -o root pam_sqlite3.so $pkgdir/lib/security/
+ install -Dm755 -o root pam_sqlite3.so -t "$pkgdir"/lib/security/
}
-sha512sums="c6925adeae0f22abef20b02404a64144990d604a77fea16d100174b7a68617662ad59eba466aa33d40001e07a24ec1579cc2b59a5fcd5fb5570f658ac1a2be5e pam_sqlite3-1.0.2.tar.gz"
+sha512sums="
+c6925adeae0f22abef20b02404a64144990d604a77fea16d100174b7a68617662ad59eba466aa33d40001e07a24ec1579cc2b59a5fcd5fb5570f658ac1a2be5e pam_sqlite3-1.0.2.tar.gz
+ef61a0905fb77de0cb6f14970886229d4c4f6d6c0854c8fc94b3e00f849e52aabb71a6c8825487918fc8d5d79941823b26cc1e2762423d85bc8ae1d50c7db41b broken-makefile.patch
+"
diff --git a/testing/pam_sqlite3/broken-makefile.patch b/testing/pam_sqlite3/broken-makefile.patch
new file mode 100644
index 00000000000..c3d6d9b6de8
--- /dev/null
+++ b/testing/pam_sqlite3/broken-makefile.patch
@@ -0,0 +1,13 @@
+diff --git a/Makefile.in b/Makefile.in
+index 05e84b6..1e8c363 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -36,7 +36,7 @@ ${DISTDIR}.tar.gz: distfiles
+ dist: ${DISTDIR}.tar.gz
+
+ ${LIBLIB}: ${LIBOBJ}
+- ${CC} ${CFLAGS} ${INCLUDE} -shared -o $@ ${LIBOBJ} ${LDLIBS}
++ ${CC} ${CFLAGS} ${INCLUDE} -shared -o $@ ${LIBOBJ} ${LDLIBS} ${LDFLAGS}
+
+ test: test.c
+ ${CC} ${CFLAGS} -o $@ test.c ${LDLIBS}
diff --git a/testing/pamtester/APKBUILD b/testing/pamtester/APKBUILD
index 1d4411ff62f..1a2eda9a90d 100644
--- a/testing/pamtester/APKBUILD
+++ b/testing/pamtester/APKBUILD
@@ -2,9 +2,9 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=pamtester
pkgver=0.1.2
-pkgrel=2
+pkgrel=3
pkgdesc="Command line tool to test PAM configuration"
-url="http://pamtester.sourceforge.net/"
+url="https://pamtester.sourceforge.net/"
arch="all"
license="BSD-3-Clause"
depends="linux-pam"
diff --git a/testing/pandoc/APKBUILD b/testing/pandoc/APKBUILD
deleted file mode 100644
index f1be3862580..00000000000
--- a/testing/pandoc/APKBUILD
+++ /dev/null
@@ -1,55 +0,0 @@
-# Contributor: Jean-Louis Fuchs <jean-louis.fuchs@adfinis-sygroup.ch>
-# Maintainer: Jean-Louis Fuchs <jean-louis.fuchs@adfinis-sygroup.ch>
-pkgname=pandoc
-pkgver=2.16.2
-pkgrel=0
-pkgdesc="universal markup converter"
-url="https://pandoc.org/"
-# limited by ghc
-arch="x86_64"
-license="GPL-2.0-or-later"
-makedepends="ghc cabal zlib-dev libffi-dev"
-subpackages="$pkgname-doc"
-source="https://hackage.haskell.org/package/pandoc-$pkgver/pandoc-$pkgver.tar.gz
- cabal.project.freeze
- "
-
-# Cabal seems to be built without sandbox, moving the cabal-dir into src
-export CABAL_DIR="$srcdir/cabal"
-
-prepare() {
- default_prepare
- cp "$srcdir/cabal.project.freeze" . # Created using "cabal freeze"
- cabal update
- cabal configure \
- --prefix='/usr' \
- --enable-tests \
- --enable-split-sections \
- --ghc-option="-split-sections" \
- --ghc-option="-j" \
- --ghc-option="-O1" \
- --flags="+embed_data_files -trypandoc +static"
-}
-
-build() {
- cabal install --only-dependencies
- cabal build --jobs=${JOBS:-1}
-}
-
-check() {
- cabal test
-}
-
-package() {
- _bindir="$pkgdir/usr/bin"
- mkdir -p "$_bindir"
- cabal install \
- --installdir="$_bindir" \
- --install-method=copy
- install -Dm644 man/pandoc.1 "$pkgdir"/usr/share/man/man1/pandoc.1
-}
-
-sha512sums="
-0e1026a93ee0dbd0523c4787b9cabec16d0a2e3b29a6914fd73859b9d6d9c0c71421b8949dfaa551c610c6dfa53de05f5d358cbeb43ad1213039b9ea6d63f9a1 pandoc-2.16.2.tar.gz
-457d390a5235196d3c3815a37fe41e678f58797e4ab791f1da16b30f020378292a022f2a3bbd49517213eb2d9676aa634bfa6c1fe37ee13f0b386c0c06cdf63f cabal.project.freeze
-"
diff --git a/testing/pandoc/cabal.project.freeze b/testing/pandoc/cabal.project.freeze
deleted file mode 100644
index c532ee0f644..00000000000
--- a/testing/pandoc/cabal.project.freeze
+++ /dev/null
@@ -1,249 +0,0 @@
-active-repositories: hackage.haskell.org:merge
-constraints: any.Cabal ==3.4.0.0,
- any.Diff ==0.4.0,
- any.Glob ==0.10.2,
- any.HsYAML ==0.2.1.0,
- HsYAML -exe,
- any.JuicyPixels ==3.3.6,
- JuicyPixels -mmap,
- any.OneTuple ==0.3.1,
- any.QuickCheck ==2.14.2,
- QuickCheck -old-random +templatehaskell,
- any.SHA ==1.6.4.4,
- SHA -exe,
- any.StateVar ==1.2.2,
- any.aeson ==2.0.2.0,
- aeson -bytestring-builder -cffi +ordered-keymap,
- any.aeson-pretty ==0.8.9,
- aeson-pretty -lib-only,
- any.ansi-terminal ==0.11.1,
- ansi-terminal -example,
- any.ansi-wl-pprint ==0.6.9,
- ansi-wl-pprint -example,
- any.appar ==0.1.8,
- any.array ==0.5.4.0,
- any.asn1-encoding ==0.9.6,
- any.asn1-parse ==0.9.5,
- any.asn1-types ==0.3.4,
- any.assoc ==1.0.2,
- any.async ==2.2.4,
- async -bench,
- any.attoparsec ==0.14.3,
- attoparsec -developer,
- any.base ==4.15.0.0,
- any.base-compat ==0.12.1,
- any.base-compat-batteries ==0.12.1,
- any.base-orphans ==0.8.6,
- any.base16-bytestring ==1.0.2.0,
- any.base64-bytestring ==1.2.1.0,
- any.basement ==0.0.12,
- any.bifunctors ==5.5.11,
- bifunctors +semigroups +tagged,
- any.binary ==0.8.8.0,
- any.blaze-builder ==0.4.2.2,
- any.blaze-html ==0.9.1.2,
- any.blaze-markup ==0.8.2.8,
- any.byteorder ==1.0.4,
- any.bytestring ==0.10.12.1,
- any.cabal-doctest ==1.0.9,
- any.call-stack ==0.4.0,
- any.case-insensitive ==1.2.1.0,
- any.cereal ==0.5.8.2,
- cereal -bytestring-builder,
- any.citeproc ==0.6,
- citeproc -executable -icu,
- any.clock ==0.8.2,
- clock -llvm,
- any.cmdargs ==0.10.21,
- cmdargs +quotation -testprog,
- any.colour ==2.3.6,
- any.commonmark ==0.2.1.1,
- any.commonmark-extensions ==0.2.2.1,
- any.commonmark-pandoc ==0.2.1.1,
- any.comonad ==5.0.8,
- comonad +containers +distributive +indexed-traversable,
- any.conduit ==1.3.4.2,
- any.conduit-extra ==1.3.5,
- any.connection ==0.3.1,
- any.containers ==0.6.4.1,
- any.contravariant ==1.5.5,
- contravariant +semigroups +statevar +tagged,
- any.cookie ==0.4.5,
- any.cryptonite ==0.29,
- cryptonite -check_alignment +integer-gmp -old_toolchain_inliner +support_aesni +support_deepseq -support_pclmuldq +support_rdrand -support_sse +use_target_attributes,
- any.data-default ==0.7.1.1,
- any.data-default-class ==0.1.2.0,
- any.data-default-instances-containers ==0.0.1,
- any.data-default-instances-dlist ==0.0.1,
- any.data-default-instances-old-locale ==0.0.1,
- any.data-fix ==0.3.2,
- any.deepseq ==1.4.5.0,
- any.digest ==0.0.1.3,
- digest -bytestring-in-base,
- any.directory ==1.3.6.1,
- any.distributive ==0.6.2.1,
- distributive +semigroups +tagged,
- any.dlist ==1.0,
- dlist -werror,
- any.doclayout ==0.3.1.1,
- any.doctemplates ==0.10.0.1,
- any.emojis ==0.1.2,
- any.errors ==2.3.0,
- any.exceptions ==0.10.4,
- any.file-embed ==0.0.15.0,
- any.filepath ==1.4.2.1,
- any.ghc-bignum ==1.0,
- any.ghc-bignum-orphans ==0.1.1,
- any.ghc-boot-th ==9.0.1,
- any.ghc-prim ==0.7.0,
- any.haddock-library ==1.10.0,
- any.happy ==1.20.0,
- any.hashable ==1.4.0.1,
- hashable +containers +integer-gmp -random-initial-seed,
- any.haskell-lexer ==1.1,
- any.hourglass ==0.2.12,
- any.hsc2hs ==0.68.8,
- hsc2hs -in-ghc-tree,
- any.hslua ==2.0.1,
- any.hslua-classes ==2.0.0,
- any.hslua-core ==2.0.0.2,
- any.hslua-marshalling ==2.0.1,
- any.hslua-module-path ==1.0.0,
- any.hslua-module-system ==1.0.0,
- any.hslua-module-text ==1.0.0,
- any.hslua-module-version ==1.0.0,
- any.hslua-objectorientation ==2.0.1,
- any.hslua-packaging ==2.0.0,
- any.http-client ==0.7.9,
- http-client +network-uri,
- any.http-client-tls ==0.3.5.3,
- any.http-types ==0.12.3,
- any.indexed-traversable ==0.1.2,
- any.indexed-traversable-instances ==0.1.1,
- any.integer-gmp ==1.1,
- any.integer-logarithms ==1.0.3.1,
- integer-logarithms -check-bounds +integer-gmp,
- any.iproute ==1.7.12,
- any.ipynb ==0.1.0.2,
- any.jira-wiki-markup ==1.4.0,
- any.libyaml ==0.1.2,
- libyaml -no-unicode -system-libyaml,
- any.lpeg ==1.0.1,
- lpeg -rely-on-shared-lpeg-library,
- any.lua ==2.0.2,
- lua +allow-unsafe-gc -apicheck +export-dynamic +hardcode-reg-keys -lua_32bits -pkg-config -system-lua,
- any.memory ==0.16.0,
- memory +support_basement +support_bytestring +support_deepseq +support_foundation,
- any.mime-types ==0.1.0.9,
- any.mono-traversable ==1.0.15.3,
- any.mtl ==2.2.2,
- any.network ==3.1.2.5,
- network -devel,
- any.network-uri ==2.6.4.1,
- any.old-locale ==1.0.0.7,
- any.optparse-applicative ==0.16.1.0,
- optparse-applicative +process,
- pandoc +embed_data_files -trypandoc,
- any.pandoc-types ==1.22.1,
- any.parsec ==3.1.14.0,
- any.pem ==0.2.4,
- any.pretty ==1.1.3.6,
- any.pretty-show ==1.10,
- any.primitive ==0.7.3.0,
- any.process ==1.6.11.0,
- any.random ==1.2.1,
- any.resourcet ==1.2.4.3,
- any.rts ==1.0,
- any.safe ==0.3.19,
- any.scientific ==0.3.7.0,
- scientific -bytestring-builder -integer-simple,
- any.semialign ==1.2.0.1,
- semialign +semigroupoids,
- any.semigroupoids ==5.3.6,
- semigroupoids +comonad +containers +contravariant +distributive +tagged +unordered-containers,
- any.skylighting ==0.12.1,
- skylighting -executable,
- any.skylighting-core ==0.12.1,
- skylighting-core -executable,
- any.socks ==0.6.1,
- any.split ==0.2.3.4,
- any.splitmix ==0.1.0.4,
- splitmix -optimised-mixer,
- any.stm ==2.5.0.0,
- any.streaming-commons ==0.2.2.3,
- streaming-commons -use-bytestring-builder,
- any.strict ==0.4.0.1,
- strict +assoc,
- any.syb ==0.7.2.1,
- any.tagged ==0.8.6.1,
- tagged +deepseq +transformers,
- any.tagsoup ==0.14.8,
- any.tasty ==1.4.2.1,
- tasty +clock +unix,
- any.tasty-bench ==0.3.1,
- tasty-bench -debug +tasty,
- any.tasty-golden ==2.3.4,
- tasty-golden -build-example,
- any.tasty-hunit ==0.10.0.3,
- any.tasty-lua ==1.0.0,
- any.tasty-quickcheck ==0.10.2,
- any.template-haskell ==2.17.0.0,
- any.temporary ==1.3,
- any.texmath ==0.12.3.2,
- texmath -executable +network-uri,
- any.text ==1.2.4.1,
- any.text-conversions ==0.3.1,
- any.text-short ==0.1.4,
- text-short -asserts,
- any.th-abstraction ==0.4.3.0,
- any.th-compat ==0.1.3,
- any.th-lift ==0.8.2,
- any.th-lift-instances ==0.1.18,
- any.these ==1.1.1.1,
- these +assoc,
- any.time ==1.9.3,
- any.time-compat ==1.9.6.1,
- time-compat -old-locale,
- any.tls ==1.5.5,
- tls +compat -hans +network,
- any.transformers ==0.5.6.2,
- any.transformers-compat ==0.7.1,
- transformers-compat -five +five-three -four +generic-deriving +mtl -three -two,
- any.typed-process ==0.2.8.0,
- any.unbounded-delays ==0.1.1.1,
- any.unicode-collation ==0.1.3.1,
- unicode-collation -doctests -executable,
- any.unicode-data ==0.1.0.1,
- unicode-data -ucd2haskell,
- any.unicode-transforms ==0.3.8,
- unicode-transforms -bench-show -dev -has-icu -has-llvm -use-gauge,
- any.uniplate ==1.6.13,
- any.unix ==2.7.2.2,
- any.unix-compat ==0.5.3,
- unix-compat -old-time,
- any.unliftio-core ==0.2.0.1,
- any.unordered-containers ==0.2.16.0,
- unordered-containers -debug,
- any.utf8-string ==1.0.2,
- any.uuid-types ==1.0.5,
- any.vector ==0.12.3.1,
- vector +boundschecks -internalchecks -unsafechecks -wall,
- any.vector-algorithms ==0.8.0.4,
- vector-algorithms +bench +boundschecks -internalchecks -llvm +properties -unsafechecks,
- any.wcwidth ==0.0.2,
- wcwidth -cli +split-base,
- any.witherable ==0.4.2,
- any.x509 ==1.7.5,
- any.x509-store ==1.6.7,
- any.x509-system ==1.6.6,
- any.x509-validation ==1.6.11,
- any.xml ==1.3.14,
- any.xml-conduit ==1.9.1.1,
- any.xml-types ==0.3.8,
- any.yaml ==0.11.7.0,
- yaml +no-examples +no-exe,
- any.zip-archive ==0.4.1,
- zip-archive -executable,
- any.zlib ==0.6.2.3,
- zlib -bundled-c-zlib -non-blocking-ffi -pkg-config
-index-state: hackage.haskell.org 2021-12-11T21:58:01Z
diff --git a/testing/pantalaimon/APKBUILD b/testing/pantalaimon/APKBUILD
index bf6eb4fc1a8..19fd97d7287 100644
--- a/testing/pantalaimon/APKBUILD
+++ b/testing/pantalaimon/APKBUILD
@@ -1,29 +1,33 @@
# Contributor: Antoine Fontaine <antoine.fontaine@epfl.ch>
# Contributor: Galen Abell <galen@galenabell.com>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=pantalaimon
-pkgver=0.10.3
-pkgrel=1
+pkgver=0.10.5
+pkgrel=4
pkgdesc="E2EE-aware Matrix proxy daemon"
options="!check" # Tests hang
url="https://github.com/matrix-org/pantalaimon"
-# ppc64le: blocked by py3-keyring
-arch="noarch !ppc64le"
+arch="noarch"
license="Apache-2.0"
depends="
- python3
- py3-attrs
py3-aiohttp
- py3-brotlipy
py3-appdirs
+ py3-atomicwrites
+ py3-attrs
+ py3-cachetools
py3-click
+ py3-janus
py3-keyring
py3-logbook
+ py3-matrix-nio
+ py3-olm
py3-peewee
- py3-janus
- py3-cachetools
py3-prompt_toolkit
- py3-matrix-nio
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
"
checkdepends="
py3-aioresponses
@@ -33,42 +37,54 @@ checkdepends="
py3-pytest
py3-pytest-aiohttp
"
-makedepends="py3-wheel py3-setuptools"
-subpackages="$pkgname-ui $pkgname-doc"
-source="
- $pkgname-$pkgver.tar.gz::https://github.com/matrix-org/pantalaimon/archive/$pkgver.tar.gz
+subpackages="
+ $pkgname-ui
+ $pkgname-doc
+ $pkgname-pyc
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/matrix-org/pantalaimon/archive/$pkgver.tar.gz
+ fix-typo.patch
+ fix-media.patch
+ fix-tox.patch
+ fix-presence.patch
"
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- PYTHONPATH="$PWD/build/lib" python3 -m pytest
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" .dist/*.whl
- cd "$srcdir/pantalaimon-$pkgver/docs/man"
- install -Dm 0644 panctl.1 "$pkgdir"/usr/share/man/man1/panctl.1
- install -Dm 0644 pantalaimon.5 "$pkgdir"/usr/share/man/man5/pantalaimon.5
- install -Dm 0644 pantalaimon.8 "$pkgdir"/usr/share/man/man8/pantalaimon.8
+ install -Dm644 docs/man/panctl.1 -t "$pkgdir"/usr/share/man/man1/
+ install -Dm644 docs/man/pantalaimon.5 -t "$pkgdir"/usr/share/man/man5/
+ install -Dm644 docs/man/pantalaimon.8 -t "$pkgdir"/usr/share/man/man8/
}
ui() {
depends="
- $pkgname
+ $pkgname=$pkgver-r$pkgrel
py3-gobject3
py3-dbus
py3-pydbus
py3-notify2
"
- mkdir -p "$subpkgdir"/usr/bin
- mv "$pkgdir"/usr/bin/panctl "$subpkgdir"/usr/bin/
-}
+ amove usr/bin/panctl
+}
sha512sums="
-07c30594a1105956affebae7250db4a80db605f80ce9abc61bd4b8f02605129a73e9375c6d5c09c0268025195bd6a43df1d870974d4d3a5d53d696342a08bcd9 pantalaimon-0.10.3.tar.gz
+8648037b49aeae9cdc10eaa83257412335267e70163d8800979a47b3c4bfa88d03a5a62272bddfdf1a77b8ea781b089512b6edae0f8ec67a36b28c1098f1d36e pantalaimon-0.10.5.tar.gz
+08b8d353ce496cfc893efde3e80ad9847730b6105926f2d2146c1f1e93af451f7ec138d57f1da48711962f6a9687ce061187fe5ec7e9cc6ffdf6a1a711fca924 fix-typo.patch
+8305b04edb607549332d77e54eda88e93e61ba4e209622ba2b55ce3de37d112f3f054b596181c39bdb9f9f0464b87658364ca06bfa69bd8a518c01a07af1a423 fix-media.patch
+6b8b9c87f261dcd78e8b3bf07d417e831d816077eb78f21499ee2847dea05aaef007a5dde77fb18904ceba35d82f02bb2afc89c1c04e3e6a3b76697bbf70da7e fix-tox.patch
+2660521a127059ae53fc962609a5f6df90f024723638ea0c148e434227f8d41fca6d18221fbdc78e990c8aa9192ac85746446cdac8ae6a5243e4864bb2c8a4b2 fix-presence.patch
"
diff --git a/testing/pantalaimon/fix-media.patch b/testing/pantalaimon/fix-media.patch
new file mode 100644
index 00000000000..082f749a021
--- /dev/null
+++ b/testing/pantalaimon/fix-media.patch
@@ -0,0 +1,24 @@
+Patch-Source: https://github.com/matrix-org/pantalaimon/commit/807deb94ee9e39bb570a904960d750e8d0dd5086.patch
+--
+From 807deb94ee9e39bb570a904960d750e8d0dd5086 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Gerber=20L=C3=B3r=C3=A1nt=20Viktor?= <glorantq@gmail.com>
+Date: Fri, 3 Feb 2023 05:45:50 +0100
+Subject: [PATCH] fix media
+
+---
+ pantalaimon/daemon.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/pantalaimon/daemon.py b/pantalaimon/daemon.py
+index 3264cab..c5e4ac4 100755
+--- a/pantalaimon/daemon.py
++++ b/pantalaimon/daemon.py
+@@ -1273,7 +1273,7 @@ async def _load_decrypted_file(self, server_name, media_id, file_name):
+ client = next(iter(self.pan_clients.values()))
+
+ try:
+- response = await client.download(server_name, media_id, file_name)
++ response = await client.download(server_name=server_name, media_id=media_id, filename=file_name)
+ except ClientConnectionError as e:
+ raise e
+
diff --git a/testing/pantalaimon/fix-presence.patch b/testing/pantalaimon/fix-presence.patch
new file mode 100644
index 00000000000..665182b6f5d
--- /dev/null
+++ b/testing/pantalaimon/fix-presence.patch
@@ -0,0 +1,28 @@
+Patch-Source: https://github.com/matrix-org/pantalaimon/commit/3968c69aa846889970df1372ba9aa54c1c5e4290.patch
+--
+From 3968c69aa846889970df1372ba9aa54c1c5e4290 Mon Sep 17 00:00:00 2001
+From: Igor Artemenko <igor@codemonium.com>
+Date: Wed, 5 Apr 2023 16:17:04 +0000
+Subject: [PATCH] Set Pantalaimon presence to offline
+
+Before this change, Pantalaimon users would always appear online because
+that is the default state when the /sync endpoint's set_presence
+parameter is not set. By explicitly setting the parameter to "offline",
+only the user-facing client (which executes its own /sync request)
+affects the presence state.
+---
+ pantalaimon/client.py | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/pantalaimon/client.py b/pantalaimon/client.py
+index be32859..ececee3 100644
+--- a/pantalaimon/client.py
++++ b/pantalaimon/client.py
+@@ -554,6 +554,7 @@ def start_loop(self, loop_sleep_time=100):
+ full_state=True,
+ since=next_batch,
+ loop_sleep_time=loop_sleep_time,
++ set_presence="offline",
+ )
+ )
+ self.task = task
diff --git a/testing/pantalaimon/fix-tox.patch b/testing/pantalaimon/fix-tox.patch
new file mode 100644
index 00000000000..a841e13b221
--- /dev/null
+++ b/testing/pantalaimon/fix-tox.patch
@@ -0,0 +1,24 @@
+Patch-Source: https://github.com/matrix-org/pantalaimon/commit/6638393042654b3f497ac1ea4b5f550b7024b490.patch
+--
+From 6638393042654b3f497ac1ea4b5f550b7024b490 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Damir=20Jeli=C4=87?= <poljar@termina.org.uk>
+Date: Thu, 25 May 2023 19:57:25 +0200
+Subject: [PATCH] Fix tox
+
+---
+ tox.ini | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/tox.ini b/tox.ini
+index c3a2630..d90feda 100644
+--- a/tox.ini
++++ b/tox.ini
+@@ -5,7 +5,7 @@ envlist = coverage
+ deps = -rtest-requirements.txt
+ install_command = pip install {opts} {packages}
+
+-passenv = TOXENV CI
++passenv = TOXENV,CI
+ commands = pytest
+
+ [testenv:coverage]
diff --git a/testing/pantalaimon/fix-typo.patch b/testing/pantalaimon/fix-typo.patch
new file mode 100644
index 00000000000..a2e8d91d104
--- /dev/null
+++ b/testing/pantalaimon/fix-typo.patch
@@ -0,0 +1,24 @@
+Patch-Source: https://github.com/matrix-org/pantalaimon/commit/127373fdcc91c5a4403e25444526822e59083a0d.patch
+--
+From 127373fdcc91c5a4403e25444526822e59083a0d Mon Sep 17 00:00:00 2001
+From: Igor Artemenko <igor@codemonium.com>
+Date: Tue, 6 Dec 2022 12:38:38 +0000
+Subject: [PATCH] Fix typo
+
+---
+ pantalaimon/client.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/pantalaimon/client.py b/pantalaimon/client.py
+index 5b4ce05..be32859 100644
+--- a/pantalaimon/client.py
++++ b/pantalaimon/client.py
+@@ -135,7 +135,7 @@ class InvalidLimit(Exception):
+ class SqliteQStore(SqliteStore):
+ def _create_database(self):
+ return SqliteQueueDatabase(
+- self.database_path, pragmas=(("foregign_keys", 1), ("secure_delete", 1))
++ self.database_path, pragmas=(("foreign_keys", 1), ("secure_delete", 1))
+ )
+
+ def close(self):
diff --git a/testing/paperde/APKBUILD b/testing/paperde/APKBUILD
index 813a1534b87..922a7b79146 100644
--- a/testing/paperde/APKBUILD
+++ b/testing/paperde/APKBUILD
@@ -1,33 +1,51 @@
# Contributor: rahmanshaber <rahmanshaber@yahoo.com>
# Maintainer: rahmanshaber <rahmanshaber@yahoo.com>
pkgname=paperde
-pkgver=0.1.1
-pkgrel=0
+pkgver=0.2.1
+pkgrel=1
pkgdesc="A minimalistic Desktop Environment built on top of Qt/Wayland and Wayfire."
# armhf blocked by extra-cmake-modulese
# riscv64 and s390x blocked by polkit
arch="all !armhf !s390x !riscv64"
url="https://gitlab.com/cubocore"
license="GPL-3.0-or-later"
-depends="qt5-qtbase-dev libcprime-dev libcsys-dev wayfire wayland-protocols libdbusmenu-qt-dev qt5-qttools-dev qt5-qtsvg-dev qt5-qtwayland-dev upower-dev xdg-desktop-portal cmake ninja"
-makedepends="qt5-qtbase-dev extra-cmake-modules"
+depends="
+ wayfire
+ xdg-desktop-portal
+ "
+makedepends="
+ dfl-applications-dev
+ dfl-ipc-dev
+ dfl-login1-dev
+ dfl-sni-dev
+ libcprime-dev
+ libcsys-dev
+ libdbusmenu-qt-dev
+ meson
+ qt5-qtbase-dev
+ qt5-qtsvg-dev
+ qt5-qttools-dev
+ qt5-qtwayland-dev
+ samurai
+ upower-dev
+ wayland-protocols
+ wayqt-dev
+ xdg-desktop-portal-dev
+ "
+subpackages="$pkgname-dev"
source="https://gitlab.com/cubocore/paper/paperde/-/archive/v$pkgver/paperde-v$pkgver.tar.gz"
builddir="$srcdir/$pkgname-v$pkgver"
options="!check" # No test suite
build() {
- cmake -B build \
- -GNinja \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DPKGSHAREDPATH=share/paperde \
- -DCMAKE_BUILD_TYPE=None
- cmake --build build
+ abuild-meson . output
+ meson compile -C output
}
-
package() {
- DESTDIR="$pkgdir" cmake --install build
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
}
-sha512sums="45b1fcd8bc03ae34be7560fe8f369d1bde98da764870298a6f31b8465fd0fc24ace556bf7fadeab756dc4d86115aefc7c8d22eb84602472eeb2c60dc1539b85c paperde-v0.1.1.tar.gz"
+sha512sums="
+e391faec794ccf0d780f7796cadfec3d3a2280e0ee9556b0ba5dfd29db86f5efac168e7b9b6b5f34a54917f0ad8d664723b82910bd2a2b396582d82dd6b0cfce paperde-v0.2.1.tar.gz
+"
diff --git a/testing/paperkey/APKBUILD b/testing/paperkey/APKBUILD
index 37d81a7eb2f..6ad403e8870 100644
--- a/testing/paperkey/APKBUILD
+++ b/testing/paperkey/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Rasmus Thomsen <oss@cogitri.dev>
-# Maintainer: Rasmus Thomsen <oss@cogitri.dev>
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=paperkey
pkgver=1.6
-pkgrel=0
+pkgrel=2
pkgdesc="Archive OpenPGP keys on paper"
url="https://www.jabberwocky.com/software/paperkey/"
arch="all"
diff --git a/testing/paprefs/APKBUILD b/testing/paprefs/APKBUILD
index da0aa337fb9..c3cb4cecfc9 100644
--- a/testing/paprefs/APKBUILD
+++ b/testing/paprefs/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Leo <thinkabit.ukim@gmail.com>
-# Maintainer:
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=paprefs
pkgver=1.2
-pkgrel=0
+pkgrel=1
pkgdesc="Configuration dialog for PulseAudio"
url="https://freedesktop.org/software/pulseaudio/paprefs/"
arch="all"
@@ -15,15 +15,15 @@ makedepends="
pulseaudio-dev
"
subpackages="$pkgname-lang"
-source="http://freedesktop.org/software/pulseaudio/paprefs/paprefs-$pkgver.tar.xz"
+source="https://freedesktop.org/software/pulseaudio/paprefs/paprefs-$pkgver.tar.xz"
build() {
abuild-meson . output
- meson compile ${JOBS:+-j ${JOBS}} -C output
+ meson compile -C output
}
check() {
- meson test --no-rebuild -v -C output
+ meson test --no-rebuild --print-errorlogs -C output
}
package() {
diff --git a/testing/par/APKBUILD b/testing/par/APKBUILD
index ba79701c02d..7b17d291bbb 100644
--- a/testing/par/APKBUILD
+++ b/testing/par/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Milan P. Stanić <mps@arvanta.net>
pkgname=par
pkgver=1.53.0
-pkgrel=0
+pkgrel=1
pkgdesc="paragraph reformatter, vaguely similar to fmt, but better"
url="http://www.nicemice.net/par/"
arch="all"
diff --git a/testing/par2cmdline-turbo/APKBUILD b/testing/par2cmdline-turbo/APKBUILD
new file mode 100644
index 00000000000..b70d648476d
--- /dev/null
+++ b/testing/par2cmdline-turbo/APKBUILD
@@ -0,0 +1,37 @@
+# Contributor: Fabricio Silva <hi@fabricio.dev>
+# Maintainer: Fabricio Silva <hi@fabricio.dev>
+pkgname=par2cmdline-turbo
+pkgver=1.1.1
+pkgrel=0
+pkgdesc="par2cmdline x ParPar: speed focused par2cmdline fork"
+url="https://github.com/animetosho/par2cmdline-turbo"
+arch="x86 x86_64 aarch64 armv7"
+license="GPL-2.0-or-later"
+makedepends="automake autoconf"
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/animetosho/par2cmdline-turbo/archive/v$pkgver.tar.gz"
+
+prepare() {
+ default_prepare
+
+ update_config_sub
+ update_config_guess
+}
+
+build() {
+ ./automake.sh
+ ./configure --prefix=/usr
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+bb919f885134a298ba14551e21cf89a91aee292e437133e6973bef09fb5dee9a9b45e76a59320bfede864438d3ac884699be7ca3f7234896a9da14cb07ffa89d par2cmdline-turbo-1.1.1.tar.gz
+"
diff --git a/testing/paraexec/APKBUILD b/testing/paraexec/APKBUILD
index dad28c5ede9..ca45a0f6ae1 100644
--- a/testing/paraexec/APKBUILD
+++ b/testing/paraexec/APKBUILD
@@ -2,9 +2,9 @@
# Contributor: Will Sinatra <wpsinatra@gmail.com>
pkgname=paraexec
pkgver=1.0
-pkgrel=0
+pkgrel=3
pkgdesc="Asychronous Execution Program"
-url="https://gitlab.com/Durrendal/Paraexec.git"
+url="https://gitlab.com/Durrendal/Paraexec"
arch="x86_64"
license="GPL-3.0-only"
depends="sbcl"
@@ -20,4 +20,6 @@ package() {
install -Dm755 "$builddir"/src/paraexec "$pkgdir"/usr/bin/paraexec
}
-sha512sums="b3d04931dbc3fd8af54b304071f4921cf4089f109f487ad0424c2b015ec2d968a34640e83104018d600a42630271c593191921377a6ab696a3d7a8af17623b6f paraexec.tar.bz2"
+sha512sums="
+b3d04931dbc3fd8af54b304071f4921cf4089f109f487ad0424c2b015ec2d968a34640e83104018d600a42630271c593191921377a6ab696a3d7a8af17623b6f paraexec.tar.bz2
+"
diff --git a/testing/parcellite/APKBUILD b/testing/parcellite/APKBUILD
new file mode 100644
index 00000000000..31fad7d7ad0
--- /dev/null
+++ b/testing/parcellite/APKBUILD
@@ -0,0 +1,27 @@
+# Contributor: RickyRockRat <gpib@rickyrockrat.net>
+# Maintainer: RickyRockRat <gpib@rickyrockrat.net>
+pkgname=parcellite
+pkgver=1.2.4.0
+pkgrel=0
+pkgdesc="A lightweight GTK+ clipboard manager."
+url="http://parcellite.sourceforge.net"
+arch="all"
+options='!check'
+license="GPL-3.0-or-later"
+makedepends="intltool gcc make pkgconf gtk+2.0-dev"
+subpackages="$pkgname-doc $pkgname-lang"
+source="$pkgname-$pkgver.tar.gz::https://github.com/rickyrockrat/parcellite/archive/$pkgver.tar.gz"
+
+build() {
+ make -f Makefile.simple VERSION=$pkgver
+}
+
+package() {
+ make -f Makefile.simple DESTDIR="$pkgdir" install-bin
+ make -f Makefile.simple DESTDIR="$pkgdir" install-doc
+ make -f Makefile.simple DESTDIR="$pkgdir" install-lang
+}
+
+sha512sums="
+f6452b1b41bae0f6af2fea72052ee17c7d47681c921afe2f89b1ed0180bac9b9551b6d5e6b9422ae696a482fb81c57df85d11620bcc77e7fd47f2050ccfd1673 parcellite-1.2.4.0.tar.gz
+"
diff --git a/testing/pari/APKBUILD b/testing/pari/APKBUILD
index 103653d8e85..afe46729518 100755..100644
--- a/testing/pari/APKBUILD
+++ b/testing/pari/APKBUILD
@@ -1,19 +1,21 @@
# Contributor: Alex Yam <alex@alexyam.com>
# Maintainer: Alex Yam <alex@alexyam.com>
pkgname=pari
-pkgver=2.13.3
+pkgver=2.15.4
pkgrel=0
pkgdesc="computer algebra system designed for fast computations in number theory"
url="https://pari.math.u-bordeaux.fr/"
arch="all !x86 !armv7 !armhf" # x86/armv7/armhf failed test matsnf-sta and matsnf-dyn
license="GPL-2.0-or-later"
+depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="gmp-dev readline-dev perl"
checkdepends="diffutils" # BusyBox diff: unrecognized option: c
-subpackages="$pkgname-dev $pkgname-doc"
+subpackages="$pkgname-dev $pkgname-libs:_lib $pkgname-doc"
source="https://pari.math.u-bordeaux.fr/pub/pari/unix/pari-$pkgver.tar.gz"
build() {
- export CFLAGS="$CFLAGS -flto" # reduce speed losses under pthread
+ export CFLAGS="$CFLAGS -O2 -flto=auto"
+ export CPPFLAGS="$CPPFLAGS -O2 -flto=auto"
./Configure \
--prefix=/usr \
--mt=pthread \
@@ -24,13 +26,25 @@ build() {
}
check() {
- make test-all
+ make dobench
}
package() {
make DESTDIR="$pkgdir" install
}
+_lib() {
+ # symlink is backwards so it doesn't move otherwise
+ amove usr/lib/libpari*
+}
+
+doc() {
+ default_doc
+
+ amove usr/share/pari/doc \
+ usr/share/pari/examples
+}
+
sha512sums="
-16cc20e44bc9b408798a86ffc31f8096e5adc01e0b8f7620e3d03201d71ddbe1d1bfecb22ab69c5b03270e9e97657042de29bb2055173b0d4cf169ec4373972b pari-2.13.3.tar.gz
+2b9f0c1fe7198406df8e6ceb3fcdc8bfb75f5c7ebfb963f023a1eebfff0bcc26e3b690941e188d6b9f8dfb6cddf4ce4c00f2cc320ebe47d42ae7596c774ed6cc pari-2.15.4.tar.gz
"
diff --git a/testing/partclone-utils/10-posix-close.patch b/testing/partclone-utils/10-posix-close.patch
deleted file mode 100644
index b10387069ae..00000000000
--- a/testing/partclone-utils/10-posix-close.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-Author: Sean McAvoy
-Summary: Fixes posix_close to posix_closex
-----
-diff --git a/src/sysdep_posix.c b/src/sysdep_posix.c
-index 0d70de0..b390431 100644
---- a/src/sysdep_posix.c
-+++ b/src/sysdep_posix.c
-@@ -79,7 +79,7 @@ posix_open(void *rhp, const char *p, sysdep_open_mode_t omode)
- * error - Otherwise.
- */
- static int
--posix_close(void *rh)
-+posix_closex(void *rh)
- {
- int *fhp = (int *) rh;
- int error = EINVAL;
-@@ -240,6 +240,6 @@ posix_file_size(void *rh, u_int64_t *nbytes)
- }
-
- const sysdep_dispatch_t posix_dispatch =
--{ posix_open, posix_close, posix_seek, posix_read, posix_write, posix_malloc,
-+{ posix_open, posix_closex, posix_seek, posix_read, posix_write, posix_malloc,
- posix_free, posix_file_size };
-
diff --git a/testing/partclone-utils/20-u_int-to-uint.patch b/testing/partclone-utils/20-u_int-to-uint.patch
deleted file mode 100644
index 65964650778..00000000000
--- a/testing/partclone-utils/20-u_int-to-uint.patch
+++ /dev/null
@@ -1,215 +0,0 @@
-Author: Sean McAvoy <seanmcavoy@gmail.com>
-Summary: fixes for musl, use uint instead of u_int
-----
-diff --git a/src/cfdump.c b/src/cfdump.c
-index ff33ad6..993702a 100644
---- a/src/cfdump.c
-+++ b/src/cfdump.c
-@@ -19,18 +19,18 @@ dump_header(char *n, cf_header_t *h) {
- }
-
- static int crcinitdone = 0;
--static u_int32_t xcrc_tab32[CRC_TABLE_LEN];
--static inline u_int32_t
--xcrc32(u_int32_t crc, unsigned char *buf, u_int64_t size)
-+static uint32_t xcrc_tab32[CRC_TABLE_LEN];
-+static inline uint32_t
-+xcrc32(uint32_t crc, unsigned char *buf, uint64_t size)
- {
- int i;
-- u_int64_t s;
-- u_int32_t tmp;
-+ uint64_t s;
-+ uint32_t tmp;
-
- if (!crcinitdone) {
- for (i=0; i<CRC_TABLE_LEN; i++) {
- int j;
-- u_int32_t init_crc = (u_int32_t) i;
-+ uint32_t init_crc = (uint32_t) i;
- for (j=0; j<CRC_UNIT_BITS; j++) {
- init_crc = (init_crc & 0x00000001L) ?
- (init_crc >> 1) ^ 0xEDB88320L :
-@@ -40,20 +40,20 @@ xcrc32(u_int32_t crc, unsigned char *buf, u_int64_t size)
- }
- }
- for (s=0; s<size; s++) {
-- tmp = crc ^ (((u_int32_t) buf[s]) & 0x000000ffL);
-+ tmp = crc ^ (((uint32_t) buf[s]) & 0x000000ffL);
- crc = (crc >> 8) ^ xcrc_tab32[ tmp & 0xff ];
- }
- return(crc);
- }
-
- int
--verify_block(void *cf, u_int64_t offs, u_int64_t index, void *rbuffer,
-- u_int64_t bsize)
-+verify_block(void *cf, uint64_t offs, uint64_t index, void *rbuffer,
-+ uint64_t bsize)
- {
-- u_int64_t nread;
-+ uint64_t nread;
- int error = 1;
- if (!(error = (*sysdep->sys_seek)(cf, offs, SYSDEP_SEEK_ABSOLUTE,
-- (u_int64_t *) NULL))) {
-+ (uint64_t *) NULL))) {
- if (!(error = (*sysdep->sys_read)(cf, rbuffer, bsize, &nread)) &&
- (nread == bsize)) {
- cf_block_trailer_t btrail;
-@@ -76,10 +76,10 @@ verify_block(void *cf, u_int64_t offs, u_int64_t index, void *rbuffer,
- }
-
- void
--dump_blocks(cf_header_t *h, u_int64_t *bm, void *cf) {
-- u_int64_t bi, nread;
-- u_int64_t nfound = 0;
-- u_int64_t bsize = 0;
-+dump_blocks(cf_header_t *h, uint64_t *bm, void *cf) {
-+ uint64_t bi, nread;
-+ uint64_t nfound = 0;
-+ uint64_t bsize = 0;
- void *rbuffer = (void *) NULL;
- int error;
- for (bi=0; bi<h->cf_total_blocks; bi++) {
-@@ -107,10 +107,10 @@ dump_blocks(cf_header_t *h, u_int64_t *bm, void *cf) {
- }
- printf("%s\n", (good) ? "ok" : "INVALID");
- if (bsize && rbuffer) {
-- u_int64_t boff;
-+ uint64_t boff;
- for (boff = 0; boff < bsize; boff += 16) {
-- u_int64_t soff;
-- printf("0x%04x: ", (u_int16_t) boff);
-+ uint64_t soff;
-+ printf("0x%04x: ", (uint16_t) boff);
- for (soff = 0; soff < 16; soff++) {
- printf("%02x ", ((unsigned char *) rbuffer)[boff+soff]);
- }
-@@ -141,16 +141,16 @@ main(int argc, char *argv[])
- for (i=1; i<argc; i++) {
- if ((error = (*sysdep->sys_open)(&cfp, argv[i], SYSDEP_OPEN_RO)) == 0) {
- cf_header_t header;
-- u_int64_t nread;
-+ uint64_t nread;
- (void) (*sysdep->sys_seek)(cfp, 0, SYSDEP_SEEK_ABSOLUTE,
-- (u_int64_t *) NULL);
-+ (uint64_t *) NULL);
- if ((error = (*sysdep->sys_read)(cfp, &header, sizeof(header),
- &nread)) == 0) {
- if ((header.cf_magic == CF_MAGIC_1) &&
- (header.cf_magic2 == CF_MAGIC_2)) {
-- u_int64_t bmsize = header.cf_total_blocks *
-- sizeof(u_int64_t);
-- u_int64_t *blockmap;
-+ uint64_t bmsize = header.cf_total_blocks *
-+ sizeof(uint64_t);
-+ uint64_t *blockmap;
-
- if ((error = (*sysdep->sys_malloc)(&blockmap, bmsize))
- == 0) {
-@@ -158,7 +158,7 @@ main(int argc, char *argv[])
- (void) (*sysdep->sys_seek)(cfp,
- header.cf_blockmap_offset,
- SYSDEP_SEEK_ABSOLUTE,
-- (u_int64_t *) NULL);
-+ (uint64_t *) NULL);
- if ((error = (*sysdep->sys_read)(cfp, blockmap,
- bmsize, &nread))
- == 0) {
-diff --git a/src/changefileint.h b/src/changefileint.h
-index 237b5a8..30ae1d9 100644
---- a/src/changefileint.h
-+++ b/src/changefileint.h
-@@ -25,29 +25,29 @@
- #define CF_VERSION_1 1
- #define CF_HEADER_DIRTY 1
- typedef struct change_file_header {
-- u_int32_t cf_magic; /* 0x00 - magic */
-- u_int16_t cf_version; /* 0x04 - version */
-- u_int16_t cf_flags; /* 0x06 - flags */
-- u_int64_t cf_total_blocks; /* 0x08 - total blocks */
-- u_int64_t cf_used_blocks; /* 0x10 - used blocks */
-- u_int32_t cf_blockmap_offset; /* 0x18 - blockmap offset */
-- u_int32_t cf_magic2; /* 0x1c - magic2 */
-+ uint32_t cf_magic; /* 0x00 - magic */
-+ uint16_t cf_version; /* 0x04 - version */
-+ uint16_t cf_flags; /* 0x06 - flags */
-+ uint64_t cf_total_blocks; /* 0x08 - total blocks */
-+ uint64_t cf_used_blocks; /* 0x10 - used blocks */
-+ uint32_t cf_blockmap_offset; /* 0x18 - blockmap offset */
-+ uint32_t cf_magic2; /* 0x1c - magic2 */
- } cf_header_t; /* 0x20 - total size */
-
- typedef struct change_file_context {
- cf_header_t cfc_header;
- const sysdep_dispatch_t *cfc_sysdep;
- void *cfc_fd;
-- u_int64_t *cfc_blockmap;
-- u_int64_t cfc_blocksize;
-- u_int64_t cfc_blockcount;
-- u_int64_t cfc_curpos;
-- u_int32_t cfc_crc_tab32[CRC_TABLE_LEN];
-+ uint64_t *cfc_blockmap;
-+ uint64_t cfc_blocksize;
-+ uint64_t cfc_blockcount;
-+ uint64_t cfc_curpos;
-+ uint32_t cfc_crc_tab32[CRC_TABLE_LEN];
- } cf_context_t;
-
- typedef struct change_file_block_trailer {
-- u_int64_t cfb_curblock;
-- u_int32_t cfb_crc;
-- u_int32_t cfb_magic;
-+ uint64_t cfb_curblock;
-+ uint32_t cfb_crc;
-+ uint32_t cfb_magic;
- } cf_block_trailer_t;
- #endif /* _CHANGEFILEINT_H_ */
-diff --git a/src/sysdep_int.h b/src/sysdep_int.h
-index f7a037c..0b9fad9 100644
---- a/src/sysdep_int.h
-+++ b/src/sysdep_int.h
-@@ -73,7 +73,7 @@ typedef struct sysdep_dispatch {
- * error - Otherwise.
- */
- int (*sys_seek)(void *rh, int64_t offset, sysdep_whence_t whence,
-- u_int64_t *resoffp);
-+ uint64_t *resoffp);
- /*
- * sys_read - Read data from the current offset.
- *
-@@ -88,7 +88,7 @@ typedef struct sysdep_dispatch {
- * EINVAL - Invalid file handle.
- * error - Otherwise.
- */
-- int (*sys_read)(void *rh, void *buf, u_int64_t len, u_int64_t *nr);
-+ int (*sys_read)(void *rh, void *buf, uint64_t len, uint64_t *nr);
- /*
- * sys_write - Write data at the current offset.
- *
-@@ -103,7 +103,7 @@ typedef struct sysdep_dispatch {
- * EINVAL - Invalid file handle.
- * error - Otherwise.
- */
-- int (*sys_write)(void *rh, void *buf, u_int64_t len, u_int64_t *nw);
-+ int (*sys_write)(void *rh, void *buf, uint64_t len, uint64_t *nw);
- /*
- * sys_malloc - Allocate dynamic memory.
- *
-@@ -116,7 +116,7 @@ typedef struct sysdep_dispatch {
- * EINVAL - Invalid nmpp
- * ENOMEM - No memory available
- */
-- int (*sys_malloc)(void *nmpp, u_int64_t nbytes);
-+ int (*sys_malloc)(void *nmpp, uint64_t nbytes);
- /*
- * sys_free - Free dynamic memory.
- *
-@@ -135,6 +135,6 @@ typedef struct sysdep_dispatch {
- * rh - Open file handle.
- * nbytes - File size.
- */
-- int (*sys_file_size)(void *rh, u_int64_t *nbytes);
-+ int (*sys_file_size)(void *rh, uint64_t *nbytes);
- } sysdep_dispatch_t;
- #endif /* _SYSDEP_INT_H_ */
diff --git a/testing/partclone-utils/APKBUILD b/testing/partclone-utils/APKBUILD
deleted file mode 100644
index 35e1be94365..00000000000
--- a/testing/partclone-utils/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Contributor: Sean McAvoy <seanmcavoy@gmail.com>
-# Maintainer: Sean McAvoy <seanmcavoy@gmail.com>
-pkgname=partclone-utils
-pkgver=0.4.3
-pkgrel=0
-pkgdesc="access and mount images made by partclone, ntfsclone and dd"
-url="https://sourceforge.net/projects/partclone-utils/"
-arch="all"
-license="GPL-2.0-only"
-makedepends="linux-headers automake autoconf"
-subpackages="$pkgname-doc"
-source="https://sourceforge.net/projects/partclone-utils/files/partclone-utils-$pkgver.tar.gz
- 10-posix-close.patch
- 20-u_int-to-uint.patch"
-options="!check"
-
-prepare() {
- default_prepare
- autoreconf -i
-}
-
-build() {
- ./configure \
- --build="$CBUILD" \
- --host="$CHOST" \
- --prefix=/usr
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-
-}
-
-sha512sums="2fd8a0fadc66086ef91be9cf727942ca4c041bd3a638aa97877d800dc950bce413f145084335695840b2976d352b8abeae113f435723f5e06712b0f1c0d0541d partclone-utils-0.4.3.tar.gz
-0ec02352f70d8c2a0080e1e20428cfb5156b62e586efac40f49c4b12c0f924675826eb42fb0e09f599c4609376a30ef62650e7d974dc44e1c5a88aaebe6ac5e1 10-posix-close.patch
-4ca550c635b44573ffa7a8223ae566bdb9cbd736d05583e6ba3f0a6eb9a44705e0dab8418bf789860d47b402b9bbfa13daf825167b8afb8c2ed9a7f4496b4f3e 20-u_int-to-uint.patch"
diff --git a/testing/pash/APKBUILD b/testing/pash/APKBUILD
index befca412494..d52ea9f62fb 100644
--- a/testing/pash/APKBUILD
+++ b/testing/pash/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Alan Diwix <alandiwix@gmail.com>
pkgname=pash
pkgver=2.3.0
-pkgrel=1
+pkgrel=2
pkgdesc="simple password manager"
url="https://github.com/dylanaraps/pash"
arch="noarch"
diff --git a/testing/pass2csv/APKBUILD b/testing/pass2csv/APKBUILD
index b588ed9a1f6..fe32553a758 100644
--- a/testing/pass2csv/APKBUILD
+++ b/testing/pass2csv/APKBUILD
@@ -1,25 +1,29 @@
# Contributor: Michał Polański <michal@polanski.me>
# Maintainer: Michał Polański <michal@polanski.me>
pkgname=pass2csv
-pkgver=0.3.2
-pkgrel=0
+pkgver=1.1.1
+pkgrel=1
pkgdesc="Export pass(1), \"the standard unix password manager\", to CSV"
url="https://github.com/reinefjord/pass2csv"
license="MIT"
arch="noarch"
depends="python3 py3-gnupg"
-makedepends="py3-setuptools"
-source="$pkgname-$pkgver.tar.gz::https://github.com/reinefjord/pass2csv/archive/v$pkgver.tar.gz"
+makedepends="py3-gpep517 py3-installer py3-setuptools py3-wheel"
+subpackages="$pkgname-pyc"
+source="https://github.com/reinefjord/pass2csv/archive/v$pkgver/pass2csv-$pkgver.tar.gz"
options="!check" # no test suite
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --root="$pkgdir" --skip-build
+ python3 -m installer -d "$pkgdir" \
+ .dist/pass2csv-$pkgver-py3-none-any.whl
}
sha512sums="
-a9dc27fa110625b408601532902bf2ed6938205e826bbebdac6794607a24b733941915982db294c104c39a1dd45e31089315c939c70205bfe969948c2c035013 pass2csv-0.3.2.tar.gz
+4982f56e98a3935aeb6ef4981188bfcf2b81df3dadce5abaefdc029b30b48e49fe45b96718913d2c96849cdca1220efc0a699255f39d8f91454ce983d3fc37f9 pass2csv-1.1.1.tar.gz
"
diff --git a/testing/passt/APKBUILD b/testing/passt/APKBUILD
new file mode 100644
index 00000000000..1bc9d9d4d46
--- /dev/null
+++ b/testing/passt/APKBUILD
@@ -0,0 +1,29 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=passt
+pkgver=2024.02.20
+_commit=1e6f92b
+_tag=${pkgver//./_}.$_commit
+pkgrel=0
+pkgdesc="Plug a simple socket transport"
+url="https://passt.top/"
+arch="all"
+license="BSD-3-Clause AND GPL-2.0-or-later"
+makedepends="coreutils-fmt linux-headers"
+subpackages="$pkgname-doc"
+source="https://passt.top/passt/snapshot/passt-$_tag.tar.gz"
+builddir="$srcdir/$pkgname-$_tag"
+# complicated test setup, requires qemu and a lot of VM images
+options="!check"
+
+build() {
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" prefix=/usr install
+ install -Dm644 LICENSES/*.txt -t "$pkgdir"/usr/share/licenses/$pkgname/
+}
+
+sha512sums="
+bd47321cb727a15310b9c02622e8d5f983ca52e996c1e80a58fba0212845beddd4060d7a78585b5e13a2cb02206ef16bf13c9edb325bb2be4b4fafed5a609bd7 passt-2024_02_20.1e6f92b.tar.gz
+"
diff --git a/testing/pastebinc/APKBUILD b/testing/pastebinc/APKBUILD
index de726f5db7a..3291b747ded 100644
--- a/testing/pastebinc/APKBUILD
+++ b/testing/pastebinc/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=pastebinc
pkgver=0.9.1
-pkgrel=1
+pkgrel=2
pkgdesc="utility to pipe data into a paste on pastebin.com or a similar site"
url="https://github.com/jthomerson/pastebinc"
arch="all"
diff --git a/testing/pastel/APKBUILD b/testing/pastel/APKBUILD
index 38b03b6c4aa..e99f83f89c1 100644
--- a/testing/pastel/APKBUILD
+++ b/testing/pastel/APKBUILD
@@ -1,23 +1,25 @@
# Contributor: Joe Searle <joe@jsearle.net>
# Maintainer: Joe Searle <joe@jsearle.net>
pkgname=pastel
-pkgver=0.8.1
-pkgrel=1
+pkgver=0.9.0
+pkgrel=2
pkgdesc="A command-line tool to generate, analyze, convert and manipulate colors"
url="https://github.com/sharkdp/pastel"
arch="all !s390x !riscv64" # rust/cargo
license="Apache-2.0"
-makedepends="rust cargo"
+makedepends="rust cargo cargo-auditable"
source="$pkgname-$pkgver.tar.gz::https://github.com/sharkdp/pastel/archive/v$pkgver.tar.gz"
subpackages="
$pkgname-bash-completion
$pkgname-zsh-completion
$pkgname-fish-completion
"
+options="net" # fetch crates
+
build() {
export SHELL_COMPLETIONS_DIR="$builddir/completions"
- cargo build --release
+ cargo auditable build --release
}
check() {
@@ -32,9 +34,9 @@ package() {
install -Dm644 "$builddir"/completions/_pastel \
"$pkgdir"/usr/share/zsh/site-functions/_pastel
install -Dm644 "$builddir"/completions/pastel.fish \
- "$pkgdir"/usr/share/fish/completions/pastel.fish
+ "$pkgdir"/usr/share/fish/vendor_completions.d/pastel.fish
}
sha512sums="
-a8489ef023f043d0e4153dd151b3f1fb468090570726822f9acf0892e4dd3256d9c2bfe781b3c1260fafb1c05ff9af16cd07c90132c25d6cc29373f660b80160 pastel-0.8.1.tar.gz
+b1dc85062429ca8acda14bec88dcb6057643c1e999582c7e1595ca730312fc8164c558c7459e754cb934a0a1f53ccd8fc542a4ab28dfe05f2f023d223384c464 pastel-0.9.0.tar.gz
"
diff --git a/testing/pathvector/APKBUILD b/testing/pathvector/APKBUILD
new file mode 100644
index 00000000000..2bde84f04ef
--- /dev/null
+++ b/testing/pathvector/APKBUILD
@@ -0,0 +1,32 @@
+# Contributor: Dennis Przytarski <dennis@przytarski.com>
+# Maintainer: Dennis Przytarski <dennis@przytarski.com>
+pkgname=pathvector
+pkgver=6.3.2
+pkgrel=5
+pkgdesc="Declarative edge routing platform"
+url="https://pathvector.io"
+# broken on 32-bit
+arch="all !x86 !armhf !armv7"
+license="MIT"
+depends="bird"
+makedepends="go"
+source="$pkgname-$pkgver.tar.gz::https://github.com/natesales/pathvector/archive/refs/tags/v$pkgver.tar.gz
+ pathvector.yml
+ "
+# require full setup with host routing in place
+options="!check"
+
+build() {
+ sed -i 's/\(version = "\)devel/\1'"$pkgver"'/g' main.go
+ go build -v
+}
+
+package() {
+ install -Dm755 pathvector "$pkgdir"/usr/bin/pathvector
+ install -Dm644 "$srcdir"/pathvector.yml "$pkgdir"/etc/pathvector.yml
+}
+
+sha512sums="
+34cd31b30b4ded02cd01aeee96a6f7eddff0feb372cd9d5eda51dd77b87b50286ecb5585789851838afc0e47cbd6739e1dad9120b06ad4489470a380014757fc pathvector-6.3.2.tar.gz
+8c446535089ecfca6aaaa335dda2567a17224761f5daa6d8bea68981ad0cfb32d7e40a12691953f06d1e24b08bc131bf9ad2468389a8e5058c056202056f94cd pathvector.yml
+"
diff --git a/testing/pathvector/pathvector.yml b/testing/pathvector/pathvector.yml
new file mode 100644
index 00000000000..d9645a0deec
--- /dev/null
+++ b/testing/pathvector/pathvector.yml
@@ -0,0 +1 @@
+bird-socket: /run/bird.ctl
diff --git a/testing/pavucontrol-qt/APKBUILD b/testing/pavucontrol-qt/APKBUILD
deleted file mode 100644
index a238074e5a2..00000000000
--- a/testing/pavucontrol-qt/APKBUILD
+++ /dev/null
@@ -1,34 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=pavucontrol-qt
-pkgver=1.1.0
-pkgrel=0
-pkgdesc="Pulseaudio mixer in Qt (port of pavucontrol)"
-url="https://github.com/lxqt/pavucontrol-qt"
-arch="all !armhf" # blocked by liblxqt-dev
-license="LGPL-2.0-or-later"
-makedepends="
- cmake lxqt-build-tools liblxqt-dev
- qt5-qttools-dev pulseaudio-dev
- "
-options="!check" # No testsuite
-source="https://github.com/lxqt/pavucontrol-qt/releases/download/$pkgver/pavucontrol-qt-$pkgver.tar.xz"
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- $CMAKE_CROSSOPTS .
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --build build --target install
-}
-sha512sums="
-edd6d495429818aeb339df02a4cbf2d28d7dd8d04a520371d89b55e47d85a4087a5c05afa1aff0950b1c43d759a1b56920a6a4ddfe8fe266735f2147588381cd pavucontrol-qt-1.1.0.tar.xz
-"
diff --git a/testing/pc/APKBUILD b/testing/pc/APKBUILD
deleted file mode 100644
index e7dbec04617..00000000000
--- a/testing/pc/APKBUILD
+++ /dev/null
@@ -1,25 +0,0 @@
-# Contributor: psykose <alice@ayaya.dev>
-# Maintainer: psykose <alice@ayaya.dev>
-pkgname=pc
-pkgver=0.2
-pkgrel=0
-pkgdesc="programmer's calculator"
-url="https://git.sr.ht/~ft/pc"
-arch="all"
-license="MIT"
-makedepends="byacc"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://git.sr.ht/~ft/pc/archive/$pkgver.tar.gz"
-options="!check" # no tests
-
-build() {
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" PREFIX=/usr install
-}
-
-sha512sums="
-e0535979fc4f5067a0d11aadc6e53c5a2f3763407346f661a509cd568053f5ac34efbb0495b1743b1a2557c472f83939a79c247073611725611bc4c4370942a1 pc-0.2.tar.gz
-"
diff --git a/testing/pcaudiolib/APKBUILD b/testing/pcaudiolib/APKBUILD
deleted file mode 100644
index d1d00ea978b..00000000000
--- a/testing/pcaudiolib/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Contributor: Dekedro <dekedro@tankers.xyz>
-# Maintainer: Dekedro <dekedro@tankers.xyz>
-pkgname=pcaudiolib
-pkgver=1.2
-pkgrel=0
-pkgdesc="C API to different audio devices"
-url="https://github.com/espeak-ng/pcaudiolib"
-arch="all"
-license="GPL-3.0-or-later"
-makedepends="alsa-lib-dev autoconf automake libtool"
-subpackages="$pkgname-dev"
-options="!check" # no tests
-source="$pkgname-$pkgver.tar.gz::https://github.com/espeak-ng/pcaudiolib/archive/refs/tags/$pkgver.tar.gz"
-
-prepare() {
- default_prepare
- ./autogen.sh
-}
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-0a0fe2a21a8410ad5196272cc579137764d5a4beba16b3c5cf46cd2967132bb48def4c7977a7ae48ff1a0a6d53e454affc6c5add503e73e7805f15aa93231af3 pcaudiolib-1.2.tar.gz
-"
diff --git a/testing/pcem/APKBUILD b/testing/pcem/APKBUILD
index ec79cecb015..f97d6d0b9bc 100644
--- a/testing/pcem/APKBUILD
+++ b/testing/pcem/APKBUILD
@@ -2,22 +2,22 @@
# Maintainer: Vladimir Luzan <vluzan@disroot.org>
pkgname=pcem
pkgver=17
-pkgrel=0
+pkgrel=2
pkgdesc="Retro PC emulator"
url="http://pcem-emulator.co.uk"
# not supported due to pcem specifics
arch="all !aarch64 !armv7 !armhf !ppc64le !s390x !riscv64"
license="GPL-2.0-only"
-makedepends="wxgtk-dev openal-soft-dev sdl2-dev alsa-lib-dev make autoconf automake"
+makedepends="wxwidgets-dev openal-soft-dev sdl2-dev alsa-lib-dev make autoconf automake"
source="http://pcem-emulator.co.uk/files/PCemV${pkgver}Linux.tar.gz"
-
prepare() {
default_prepare
autoreconf
}
build() {
+ CPPFLAGS="$CPPFLAGS -flto=auto" \
./configure \
--build=$CBUILD \
--host=$CHOST \
diff --git a/testing/pcl/APKBUILD b/testing/pcl/APKBUILD
index 151ac1b51a9..e7ba223769f 100644
--- a/testing/pcl/APKBUILD
+++ b/testing/pcl/APKBUILD
@@ -1,75 +1,105 @@
# Contributor: Bradley J Chambers <brad.chambers@gmail.com>
-# Maintainer: Bradley J Chambers <brad.chambers@gmail.com>
+# Maintainer: Daniel Tobon <danieltobonco@gmail.com>
pkgname=pcl
-pkgver=1.8.1
-pkgrel=9
+pkgver=1.13.1
+pkgrel=1
+_gtestver=1.12.1
pkgdesc="Point Cloud Library (PCL)"
-url="https://github.com/PointCloudLibrary/pcl"
+url="https://pointclouds.org"
arch="all !x86 !s390x" # tests fails on x86 and s390x
-arch="" # Fails to build with new boost
license="BSD-3-Clause"
-makedepends="cmake eigen-dev boost-dev flann-dev"
-subpackages="$pkgname-dev"
-_gtestver=1.8.0
-source="$pkgname-$pkgver.tar.gz::https://github.com/PointCloudLibrary/$pkgname/archive/$pkgname-$pkgver.tar.gz
- release-$_gtestver.tar.gz::https://github.com/google/googletest/archive/release-$_gtestver.tar.gz
- gcc8.patch"
-builddir="$srcdir/$pkgname-$pkgname-$pkgver"
+depends_dev="
+ boost-dev
+ eigen-dev
+ flann-dev
+ hdf5-dev
+ libpcap-dev
+ libusb-dev
+ mesa-dev
+ qhull-dev
+ qhull-static
+ qt5-qtbase-dev
+ vtk-dev
+ freeglut-dev
+ "
+makedepends="
+ $depends_dev
+ cmake
+ samurai
+ "
+subpackages="$pkgname-dev $pkgname-libs"
+source="$pkgname-$pkgver.tar.gz::https://github.com/PointCloudLibrary/pcl/releases/download/pcl-$pkgver/source.tar.gz
+ gtest-release-$_gtestver.tar.gz::https://github.com/google/googletest/archive/release-$_gtestver.tar.gz
+ fix-broken-flags.patch
+ "
+builddir="$srcdir/pcl"
build() {
- mkdir build && cd build
-
- local disable_segtests=
case "$CARCH" in
- ppc64le | aarch64) disable_segtests="-DBUILD_tests_segmentation=OFF"
+ ppc64le|aarch64)
+ local disable_segtests="-DBUILD_tests_segmentation=OFF"
+ ;;
esac
# Five tests are disabled below. This is in keeping with PCL's own
# Appveyor configuration
# (https://github.com/PointCloudLibrary/pcl/blob/master/.appveyor.yml),
# and is due to a list of test failures that are documented in issues
# #1702, #1719, #1921, and #2136.
- cmake .. \
+ cmake -B build -G Ninja \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_BUILD_TYPE=None \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DCMAKE_SKIP_INSTALL_RPATH=ON \
-DWITH_CUDA=OFF \
-DWITH_DAVIDSDK=OFF \
-DWITH_DSSDK=OFF \
-DWITH_ENSENSO=OFF \
-DWITH_FZAPI=OFF \
- -DWITH_LIBUSB=OFF \
- -DWITH_OPENGL=OFF \
- -DWITH_OPENNI=OFF \
+ -DWITH_LIBUSB=ON \
+ -DWITH_OPENGL=ON \
-DWITH_OPENNI2=OFF \
- -DWITH_PCAP=OFF \
- -DWITH_PNG=OFF \
- -DWITH_QHULL=OFF \
- -DWITH_QT=OFF \
- -DWITH_VTK=OFF \
- -DBUILD_global_tests=ON \
- -DBUILD_examples=OFF \
- -DBUILD_tools=ON \
+ -DWITH_OPENNI=OFF \
+ -DWITH_PCAP=ON \
+ -DWITH_PNG=ON \
+ -DWITH_QHULL=ON \
+ -DWITH_QT=ON \
+ -DWITH_VTK=ON \
-DBUILD_apps=OFF \
+ -DBUILD_examples=OFF \
+ -DBUILD_global_tests="$(want_check && echo ON || echo OFF)" \
+ -DBUILD_simulation=ON \
-DBUILD_tests_common=OFF \
-DBUILD_tests_features=OFF \
-DBUILD_tests_filters=OFF \
-DBUILD_tests_io=OFF \
- $disable_segtests \
-DBUILD_tests_registration=OFF \
- -DGTEST_SRC_DIR=$srcdir/googletest-release-$_gtestver/googletest \
- -DGTEST_INCLUDE_DIR=$srcdir/googletest-release-$_gtestver/googletest/include
- make
+ -DBUILD_tools=ON \
+ -DGTEST_SRC_DIR="$srcdir"/googletest-release-$_gtestver/googletest \
+ -DGTEST_INCLUDE_DIR="$srcdir"/googletest-release-$_gtestver/googletest/include \
+ -DVTK_RENDERING_BACKEND=OpenGL2 \
+ -DPCL_ENABLE_MARCHNATIVE=OFF \
+ -DPCL_ENABLE_AVX=OFF \
+ -DPCL_ENABLE_SSE=ON \
+ $disable_segtests
+ cmake --build build
+}
+
+dev() {
+ default_dev
+
+ amove usr/share
}
package() {
- cd "$builddir"/build
- make DESTDIR="$pkgdir" install
+ DESTDIR="$pkgdir" cmake --install build
}
check() {
- cd "$builddir"/build
- ctest -E a_octree_test # Fails on drone-ci aarch64
+ cd build
+ ctest --output-on-failure
}
-sha512sums="9e7c87fb750a176712f08d215a906012c9e8174b687bbc8c08fa65de083b4468951bd8017b10409015d5eff0fc343885d2aae5c340346118b1a251af7bdd5cd7 pcl-1.8.1.tar.gz
-1dbece324473e53a83a60601b02c92c089f5d314761351974e097b2cf4d24af4296f9eb8653b6b03b1e363d9c5f793897acae1f0c7ac40149216035c4d395d9d release-1.8.0.tar.gz
-16b3ca34fe31a3a7c9b1eefe818e963eda483b8d18a40e766306aaa653dd5d6072cd5dacb16c49e8905309ba179d0defb90c42aad1a3fb6c2d9fbde9b12e9ebc gcc8.patch"
+sha512sums="
+0259b6c4b63976847e41c45b17a00fcc64d8be53106d1edbaf4c06f7665cd71383f2b9d3676ca45f0ace0aa131feaf760e640a7849c450300048ef274174dd80 pcl-1.13.1.tar.gz
+a9104dc6c53747e36e7dd7bb93dfce51a558bd31b487a9ef08def095518e1296da140e0db263e0644d9055dbd903c0cb69380cb2322941dbfb04780ef247df9c gtest-release-1.12.1.tar.gz
+f866bf3c5eb8cf02b3531dff527f103b2f9c2bb454df6455b66e6d2f425e37d938f86efe7ba534d09a5f10a2830178e01853dc73769775d1faa9d049a5c5cc4b fix-broken-flags.patch
+"
diff --git a/testing/pcl/fix-broken-flags.patch b/testing/pcl/fix-broken-flags.patch
new file mode 100644
index 00000000000..cfea6d81a7f
--- /dev/null
+++ b/testing/pcl/fix-broken-flags.patch
@@ -0,0 +1,30 @@
+if any cxxflags are set it skips all the checks
+--
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 51879ed..b918570 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -101,7 +101,7 @@ endif()
+
+ # check for SSE flags
+ include("${PCL_SOURCE_DIR}/cmake/pcl_find_sse.cmake")
+-if(PCL_ENABLE_SSE AND "${CMAKE_CXX_FLAGS}" STREQUAL "${CMAKE_CXX_FLAGS_DEFAULT}")
++if(PCL_ENABLE_SSE)
+ PCL_CHECK_FOR_SSE()
+ endif()
+
+@@ -113,14 +113,12 @@ endif()
+
+ # ---[ Unix/Darwin/Windows specific flags
+ if(CMAKE_COMPILER_IS_GNUCXX)
+- if("${CMAKE_CXX_FLAGS}" STREQUAL "${CMAKE_CXX_FLAGS_DEFAULT}")
+ if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 7)
+ string(APPEND CMAKE_CXX_FLAGS " -Wabi=11")
+ else()
+ string(APPEND CMAKE_CXX_FLAGS " -Wabi")
+ endif()
+ string(APPEND CMAKE_CXX_FLAGS " -Wall -Wextra -fno-strict-aliasing ${SSE_FLAGS} ${AVX_FLAGS}")
+- endif()
+
+ if(PCL_WARNINGS_ARE_ERRORS)
+ string(APPEND CMAKE_CXX_FLAGS " -Werror -fno-strict-aliasing")
diff --git a/testing/pcl/gcc8.patch b/testing/pcl/gcc8.patch
deleted file mode 100644
index aec883a804c..00000000000
--- a/testing/pcl/gcc8.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From a0b3ce9ca5c69a945695c1c83dab7937a3d99b83 Mon Sep 17 00:00:00 2001
-From: Jochen Sprickerhof <git@jochen.sprickerhof.de>
-Date: Sat, 5 May 2018 23:58:13 +0200
-Subject: [PATCH] Dereference shared_ptr, fix for GCC8
-
----
- segmentation/include/pcl/segmentation/ground_plane_comparator.h | 2 +-
- .../include/pcl/segmentation/plane_coefficient_comparator.h | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/segmentation/include/pcl/segmentation/ground_plane_comparator.h b/segmentation/include/pcl/segmentation/ground_plane_comparator.h
-index e39354d7fd..f96f38bfb5 100644
---- a/segmentation/include/pcl/segmentation/ground_plane_comparator.h
-+++ b/segmentation/include/pcl/segmentation/ground_plane_comparator.h
-@@ -147,7 +147,7 @@ namespace pcl
- const std::vector<float>&
- getPlaneCoeffD () const
- {
-- return (plane_coeff_d_);
-+ return (*plane_coeff_d_);
- }
-
- /** \brief Set the tolerance in radians for difference in normal direction between neighboring points, to be considered part of the same plane.
-diff --git a/segmentation/include/pcl/segmentation/plane_coefficient_comparator.h b/segmentation/include/pcl/segmentation/plane_coefficient_comparator.h
-index 9c94813727..a21725a40c 100644
---- a/segmentation/include/pcl/segmentation/plane_coefficient_comparator.h
-+++ b/segmentation/include/pcl/segmentation/plane_coefficient_comparator.h
-@@ -141,7 +141,7 @@ namespace pcl
- const std::vector<float>&
- getPlaneCoeffD () const
- {
-- return (plane_coeff_d_);
-+ return (*plane_coeff_d_);
- }
-
- /** \brief Set the tolerance in radians for difference in normal direction between neighboring points, to be considered part of the same plane.
diff --git a/testing/pcmanfm-qt/APKBUILD b/testing/pcmanfm-qt/APKBUILD
deleted file mode 100644
index effe5c5a19e..00000000000
--- a/testing/pcmanfm-qt/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=pcmanfm-qt
-pkgver=1.1.0
-pkgrel=0
-pkgdesc="Qt port of pcmanfm"
-url="https://github.com/lxqt/pcmanfm-qt"
-arch="all !s390x !armhf" # s390x blocked by libfm-qt
-license="LGPL-2.0-or-later"
-depends="desktop-file-utils paper-icon-theme lxmenu-data"
-makedepends="
- cmake lxqt-build-tools menu-cache-dev
- qt5-qttools-dev libfm-qt-dev libexif-dev
- "
-subpackages="$pkgname-doc"
-source="https://github.com/lxqt/pcmanfm-qt/releases/download/$pkgver/pcmanfm-qt-$pkgver.tar.xz"
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- $CMAKE_CROSSOPTS .
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --build build --target install
-}
-sha512sums="
-b453b56bd10a94b6c4cbf6e999a470208c7817384f3868ef230a65d39ff3b1e2b2e6db8c08ca894c4e226288efd38dbdddeb1294fa4f8507836cf84594b956ef pcmanfm-qt-1.1.0.tar.xz
-"
diff --git a/testing/pcsc-perl/APKBUILD b/testing/pcsc-perl/APKBUILD
index fa034e5f559..536f2f1a593 100644
--- a/testing/pcsc-perl/APKBUILD
+++ b/testing/pcsc-perl/APKBUILD
@@ -1,18 +1,18 @@
# Contributor: Carlo Landmeter <clandmeter@alpinelinux.org>
-# Maintainer:
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=pcsc-perl
-pkgver=1.4.14
-pkgrel=3
+pkgver=1.4.16
+pkgrel=0
pkgdesc="Perl library allows to communicate with a smart card using PC/SC"
-url="http://ludovic.rousseau.free.fr/softwares/pcsc-perl/"
+url="https://pcsc-perl.apdu.fr/"
arch="all"
license="GPL-2.0"
depends="perl"
makedepends="pcsc-lite-dev perl-dev"
-install=""
subpackages="$pkgname-doc"
-source="http://ludovic.rousseau.free.fr/softwares/pcsc-perl/pcsc-perl-$pkgver.tar.bz2"
+source="$pkgname-$pkgver.tar.gz::https://github.com/LudovicRousseau/pcsc-perl/archive/refs/tags/$pkgver.tar.gz"
builddir="$srcdir/pcsc-perl-$pkgver"
+options="!check" # no tests available
build() {
cd "$builddir"
@@ -26,4 +26,6 @@ package() {
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-sha512sums="202aca1c122c8b91340411a4930f6d0d6f3d439d1783b7ad5e2a727bb015704045d66b5b5ba51f567672a6256606ad26e8390b9f243e329d6ccd05146edc229c pcsc-perl-1.4.14.tar.bz2"
+sha512sums="
+c91a742a220e391ac5d656850751241da1cc26b35680e949ebdc22d83ee7568207567d6af5daffc378052420bbc707cbc9e970250560667630e24fe3d5d34a8a pcsc-perl-1.4.16.tar.gz
+"
diff --git a/testing/pcsc-tools/APKBUILD b/testing/pcsc-tools/APKBUILD
index 7d537a98575..4d67d0b096f 100644
--- a/testing/pcsc-tools/APKBUILD
+++ b/testing/pcsc-tools/APKBUILD
@@ -1,16 +1,16 @@
# Contributor: Carlo Landmeter <clandmeter@alpinelinux.org>
-# Maintainer:
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=pcsc-tools
-pkgver=1.6.0
+pkgver=1.7.1
pkgrel=0
pkgdesc="tools to test a PC/SC driver, card or reader or send commands"
-url="http://ludovic.rousseau.free.fr/softwares/pcsc-tools/"
+url="https://pcsc-tools.apdu.fr/"
arch="all"
license="GPL-2.0-or-later"
depends="pcsc-perl"
makedepends="pcsc-lite-dev"
subpackages="$pkgname-doc"
-source="http://ludovic.rousseau.free.fr/softwares/pcsc-tools/pcsc-tools-$pkgver.tar.bz2"
+source="https://pcsc-tools.apdu.fr/pcsc-tools-$pkgver.tar.bz2"
build() {
./configure \
@@ -32,5 +32,5 @@ package() {
}
sha512sums="
-951014510dcfd011fc08c92a927ed8a39751c15cd9278e9bd61693a2743a82d4b88907e01e013738f6b5afb569cb4d9e9802ee575c731b83da33e92f96eb5d50 pcsc-tools-1.6.0.tar.bz2
+fe60610122d05f97edf3462c9382b82c31ee75f1851db2d88088ebd378ea3f54b3112b1c1f59dd8315806f33b822e40f96d7bc186b8c5999ef339711f91136c0 pcsc-tools-1.7.1.tar.bz2
"
diff --git a/testing/pcsx2/APKBUILD b/testing/pcsx2/APKBUILD
index cde289b2844..ee4938ada66 100644
--- a/testing/pcsx2/APKBUILD
+++ b/testing/pcsx2/APKBUILD
@@ -1,68 +1,89 @@
-# Contributor: psykose <alice@ayaya.dev>
-# Maintainer: psykose <alice@ayaya.dev>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=pcsx2
-pkgver=1.7.2813
-pkgrel=0
-_cubeb=773f16b7ea308392c05be3e290163d1f636e6024
-_glslang=c9706bdda0ac22b9856f1aa8261e5b9e15cd20c5
-_imgui=60bea052a92cbb4a93b221002fdf04f0da3698e1
-_libchdr=5de1a59019815ccdbba0fe07c71b31406d023248
+pkgver=1.7.4819
+pkgrel=4
+_fastfloat=v5.2.0
+_glslang=11.12.0
+_gtest=v1.13.0
+_libchdr=54bfb871ccae31903b95a8feb7f2bf7121f304be
+_rcheevos=v10.7.1
+_patches=8519fdb0b28672cc4fd6ff3cacca5133a8e310bc
pkgdesc="Playstation 2 emulator"
url="https://github.com/PCSX2/pcsx2"
-arch="x86_64" # only x86_64 supported for now
+# upstream limits
+arch="x86_64"
license="GPL-3.0-or-later AND LGPL-3.0-or-later"
makedepends="
alsa-lib-dev
+ clang
cmake
- doxygen
+ curl-dev
eudev-dev
- fmt-dev
- graphviz
+ extra-cmake-modules
+ ffmpeg-dev
+ glslang-dev
libaio-dev
libpcap-dev
- libsamplerate-dev
+ libpng-dev
libzip-dev
- libzip-tools
+ lld
+ llvm
pulseaudio-dev
- rapidyaml
+ qt6-qtbase-dev
+ qt6-qttools-dev
+ rapidyaml-dev
samurai
sdl2-dev
- soundtouch-dev
vulkan-headers
+ vulkan-loader-dev
wayland-dev
- wxgtk3-dev
+ zip
zstd-dev
"
-subpackages="$pkgname-doc"
+checkdepends="perl"
source="https://github.com/PCSX2/pcsx2/archive/refs/tags/v$pkgver/pcsx2-v$pkgver.tar.gz
- cubeb-$_cubeb.tar.gz::https://github.com/mozilla/cubeb/archive/$_cubeb.tar.gz
+ fastfloat-$_fastfloat.tar.gz::https://github.com/fastfloat/fast_float/archive/$_fastfloat.tar.gz
glslang-$_glslang.tar.gz::https://github.com/KhronosGroup/glslang/archive/$_glslang.tar.gz
- imgui-$_imgui.tar.gz::https://github.com/ocornut/imgui/archive/$_imgui.tar.gz
+ gtest-$_gtest.tar.gz::https://github.com/google/googletest/archive/$_gtest.tar.gz
libchdr-$_libchdr.tar.gz::https://github.com/rtissera/libchdr/archive/$_libchdr.tar.gz
- fix-iovec-define.patch
- version.patch
- unbundle-zstd.patch
+ rcheevos-$_rcheevos.tar.gz::https://github.com/RetroAchievements/rcheevos/archive/$_rcheevos.tar.gz
+ pcsx2_patches-$_patches.tar.gz::https://github.com/PCSX2/pcsx2_patches/archive/$_patches.tar.gz
+ fmt-9.1.0.tar.gz::https://github.com/fmtlib/fmt/archive/refs/tags/9.1.0.tar.gz
+ fast-float.patch
+ fix-lfs64.patch
unbundle-vulkan.patch
+ ryml.patch
+ version.patch
+ zstd.patch
+
+ PCSX2.desktop
"
-options="!check" # no point in running emulator tests
prepare() {
default_prepare
- rmdir "$builddir"/3rdparty/cubeb/cubeb
- rmdir "$builddir"/3rdparty/glslang/glslang
- rmdir "$builddir"/3rdparty/imgui/imgui
- rmdir "$builddir"/3rdparty/libchdr/libchdr
+ rmdir 3rdparty/glslang/glslang
+ rmdir 3rdparty/gtest
+ rmdir 3rdparty/libchdr/libchdr
+ rmdir 3rdparty/rcheevos/rcheevos
+ rmdir 3rdparty/fmt/fmt
+
+ rm -r 3rdparty/ffmpeg
- ln -sfv "$srcdir"/cubeb-$_cubeb \
- "$builddir"/3rdparty/cubeb/cubeb
- ln -sfv "$srcdir"/glslang-$_glslang \
+ ln -sfv "$srcdir"/glslang-${_glslang/v/} \
"$builddir"/3rdparty/glslang/glslang
- ln -sfv "$srcdir"/imgui-$_imgui \
- "$builddir"/3rdparty/imgui/imgui
+ ln -sfv "$srcdir"/googletest-${_gtest/v/} \
+ "$builddir"/3rdparty/gtest
ln -sfv "$srcdir"/libchdr-$_libchdr \
"$builddir"/3rdparty/libchdr/libchdr
+ ln -sfv "$srcdir"/rcheevos-${_rcheevos/v/} \
+ "$builddir"/3rdparty/rcheevos/rcheevos
+ ln -sfv "$srcdir"/fast_float-${_fastfloat/v/} \
+ "$builddir"/3rdparty/fast_float
+
+ ln -sfv "$srcdir"/fmt-9.1.0 \
+ "$builddir"/3rdparty/fmt/fmt
sed -i \
-e "s|@@VERSION@@|$pkgver|g" \
-e "s|@@PKGREL@@|$pkgrel|g" \
@@ -70,43 +91,74 @@ prepare() {
}
build() {
- # TODO: wayland is broken with wxgtk 3.0, revisit in 3.1
+ export CC=clang
+ export CXX=clang++
+ export CFLAGS="$CFLAGS -flto=thin"
+ export CXXFLAGS="$CXXFLAGS -flto=thin -Wno-macro-redefined -Wno-deprecated-declarations"
+ export LDFLAGS="$LDFLAGS -fuse-ld=lld -Wl,--icf=safe,--gc-sections"
+
cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=Release \
+ -DCMAKE_DISABLE_PRECOMPILE_HEADERS=ON \
-DCMAKE_INSTALL_PREFIX=/usr \
-DDISABLE_ADVANCE_SIMD=ON \
-DDISABLE_BUILD_DATE=ON \
- -DDISABLE_PCSX2_WRAPPER=ON \
-DENABLE_TESTS="$(want_check && echo ON || echo OFF)" \
-DCUBEB_API=ON \
- -DDISABLE_SETCAP=ON \
- -DLTO_PCSX2_CORE=ON \
- -DNO_TRANSLATION=ON \
- -DPACKAGE_MODE=ON \
- -DSDL2_API=ON \
- -DUSE_NATIVE_TOOLS=ON \
- -DUSE_SYSTEM_FMT=ON \
- -DUSE_SYSTEM_RYML=ON \
+ -DUSE_ACHIEVEMENTS=ON \
+ -DUSE_DISCORD_PRESENCE=OFF \
+ -DUSE_LINKED_FFMPEG=ON \
+ -DUSE_SYSTEM_LIBS=ON \
-DUSE_VTUNE=OFF \
-DUSE_VULKAN=ON \
- -DWAYLAND_API=OFF \
+ -DQT_BUILD=ON \
+ -DWAYLAND_API=ON \
-DX11_API=ON \
- -DXDG_STD=ON
- cmake --build build
+ -DUSE_SYSTEM_FMT=OFF
+
+ cmake --build build --target all "$(want_check && echo unittests)"
+
+ cd "$srcdir"/pcsx2_patches-$_patches/patches/
+ zip -9 "$builddir"/patches.zip ./*.pnach
+}
+
+check() {
+ ctest --test-dir build/tests/ctest --output-on-failure
}
package() {
- DESTDIR="$pkgdir" cmake --install build
+ install -Dm644 bin/resources/icons/AppIconLarge.png \
+ "$pkgdir"/usr/share/icons/hicolor/256x256/apps/PCSX2.png
+ install -Dm644 "$srcdir"/PCSX2.desktop \
+ -t "$pkgdir"/usr/share/applications/
+
+ mkdir -p "$pkgdir"/usr/lib/
+
+ rm -f build/bin/*test*
+ cp -a build/bin "$pkgdir"/usr/lib/PCSX2
+
+ install -Dm644 patches.zip -t "$pkgdir"/usr/lib/PCSX2/resources/
+
+ install -Dm755 /dev/stdin "$pkgdir"/usr/bin/pcsx2 <<-EOF
+ #!/bin/sh
+ exec /usr/lib/PCSX2/pcsx2-qt "\$@"
+ EOF
}
sha512sums="
-f20782241d71839aba65aab2983e6bcd7d77705c955398d985edb511f9f7852a77c7d17c004de55567950f8273211f35b6ba5524583037c1c00307690ad9f793 pcsx2-v1.7.2813.tar.gz
-33abe2bc426b06c3c6cb557fe1be62725f1dc56776d02ec6651ef8710d3a5d302b1f730ceaefe516ff1974775cdabd3753f24436c705af3c6e98fd5dabb6b015 cubeb-773f16b7ea308392c05be3e290163d1f636e6024.tar.gz
-5ff0902e95592525b2671788bf27717c85d0876b31e96374eff5128f9bf7caf93bb636e4d5e1916a5d641715a780172308403bd49305d9a07cf66358d7e6407c glslang-c9706bdda0ac22b9856f1aa8261e5b9e15cd20c5.tar.gz
-690637e619eafb9c15036f45574f8afc25c70a3210fdbb2704d49244a9360fc401807b3cdff6085a4d3a0956f7ff64dcdb8e5142375910a03e74eaa437672bc0 imgui-60bea052a92cbb4a93b221002fdf04f0da3698e1.tar.gz
-4fee3a448c9044aca83fffae4a9c821e37e65ee6b43022c3354b1d782c8a5e6ac675a54fe2248897969aa3fd05dfaccbc8f67f8d6547458c012326b7d5a5c990 libchdr-5de1a59019815ccdbba0fe07c71b31406d023248.tar.gz
-c70a510b197e30fb6a5506c71e0075bbeb79d4b76ba6f5ef285c6f984b6c262cbe4bf5338714a411f5b70fde3b0be6e8ae73642343d18b267d0f67ea0d7503c7 fix-iovec-define.patch
-e6a11952afe010b20074c847ab3c48fafcfe5b0055ecf0b1d2ecd42e620d0913311c03f1019c60acd7bf68b1370e461b5c7c70fdac2c45994e8ca1ac03d63b65 version.patch
-0b7873fff9eb0419b8869cd761b28567e1ff55b4b90df4d0e7cd58cf9bd0f6d4f8f363fb5ecb0e5a4babc8b9eb143c071a66e39528a68c230247fb1969823295 unbundle-zstd.patch
-fbcdcb736b13f988ee9fff9dd11f253e2500984542bc3c913a7dd9b2abcedb206abce1be048547bf1dfc78e37e7145d5001252ec893ced948537ab8e9d0b5c24 unbundle-vulkan.patch
+2aee3f634e866561fa1c4a54e2f209df7fdc98585ba42de9d0e833fd2c261615c354dfae212b46fe99a97b3766362e43fd15ffb33d7f57e428d8e00715e35da3 pcsx2-v1.7.4819.tar.gz
+c703c7cba3c69775317c66a62ce145646fd7d3d063124501e3d6a7deebb8c62c14a2ccdffed18de2d73d9d3a8ba2061ef1d34cc780ee0b6d607935d5f1b1de81 fastfloat-v5.2.0.tar.gz
+fd955f9912551668056dfe52835eef11e5dc0bf0d25b2d961a31f684adbd63bc6380759944c1921cfd63d359a58c7cc3a4a4d5eea69fa1b050f58960e5101271 glslang-11.12.0.tar.gz
+70c0cfb1b4147bdecb467ecb22ae5b5529eec0abc085763213a796b7cdbd81d1761d12b342060539b936fa54f345d33f060601544874d6213fdde79111fa813e gtest-v1.13.0.tar.gz
+ce993e00b78e972bb1c5745594213254966ca1ae43cc11917e22355d95c056e4f6b067f201cbeadce9ba75567063e45d459ed2564acb72fec5db4c0708f751b1 libchdr-54bfb871ccae31903b95a8feb7f2bf7121f304be.tar.gz
+65c1c65328974afb21962ed0a6b73702b0eeefb93d3ca3a1d1d517864cc71f6d154578bd19df153da871791b5bd511e69f7f4db1a2178e14e9bc0df7d25b17e9 rcheevos-v10.7.1.tar.gz
+a31b379639b1db97c08034004fe1f2d1ca66b6bbce3c5688da487b2028303bb6fcbc8229f064e132cf18a711ac6248805b8ce6368305cc302a7956ca70355a38 pcsx2_patches-8519fdb0b28672cc4fd6ff3cacca5133a8e310bc.tar.gz
+a18442042722dd48e20714ec034a12fcc0576c9af7be5188586970e2edf47529825bdc99af366b1d5891630c8dbf6f63bfa9f012e77ab3d3ed80d1a118e3b2be fmt-9.1.0.tar.gz
+20624d3e46b956a5f0339b569891824b7a9321f4395c572393d42f7520d93b30b6e6bb8af90b5d6c52cbcaf2d82eb386bec3943532c5f1d8303c8b50938cd89b fast-float.patch
+e6e7964e36274372c3b9c67acd66a29b8ae7f4be1503959deb8284d427cddb5ea5bb534aad35f53073e8983bcb319d90b1127fe5dd6b8bd6bb1f3f8f306fcf0c fix-lfs64.patch
+461f184cc3b5c76539247db66fb0a364edbddc3d434869ff1641e723c6d962115cfa190be5e95205f31108ed47be0db6abf54c92d9875589ac978e73a29a379c unbundle-vulkan.patch
+151db2f789bd19937b7c78ac883388d672af0f5c38693b187311dd43d699703a8b36d9ace6d8db40e19d6cb8549a9b14a0842c4217c7eddfd547fc61f05c045c ryml.patch
+113f0e80c7975985d65c90acd2b4c9a4487d0c9f240178500feac512808b836d6ae36343895a4ef4f16d91364eeee4f0a3aa4ecc17708facdaf0cb430b5e9a71 version.patch
+8a55a976188f53d8cab18a78cecbc2d34692411801126fb9432874ba26ef0245819d2980355beed4763b8496a2497330902ad5de7c288a3acb8837b305fe4a04 zstd.patch
+bdc23c2773e1b963b06c0a51e3685b0a86db7dfe5cb2dd3e0cad4dd6f72aab2abef7eb421c8fb0f5303fae5c7ffb265eaa3a6e470998943aed54527bbb4d676c PCSX2.desktop
"
diff --git a/testing/pcsx2/PCSX2.desktop b/testing/pcsx2/PCSX2.desktop
new file mode 100644
index 00000000000..46a90e612c9
--- /dev/null
+++ b/testing/pcsx2/PCSX2.desktop
@@ -0,0 +1,15 @@
+[Desktop Entry]
+Version=1.0
+Terminal=false
+Type=Application
+Name=PCSX2
+StartupWMClass=PCSX2
+GenericName=PlayStation 2 Emulator
+GenericName[zh_CN]=PlayStation 2 模拟器
+Comment=Sony PlayStation 2 emulator
+Comment[ru]=ЭмулÑтор Sony PlayStation 2
+Comment[zh_CN]=索尼 PlayStation 2 模拟器
+Exec=pcsx2
+Icon=PCSX2
+Keywords=game;emulator;
+Categories=Game;Emulator;
diff --git a/testing/pcsx2/fast-float.patch b/testing/pcsx2/fast-float.patch
new file mode 100644
index 00000000000..28f1163bead
--- /dev/null
+++ b/testing/pcsx2/fast-float.patch
@@ -0,0 +1,14 @@
+we use system ryml so the checkouts are missing, just pull it directly.
+diff --git a/cmake/SearchForStuff.cmake b/cmake/SearchForStuff.cmake
+index ea84fd6..33b6250 100644
+--- a/cmake/SearchForStuff.cmake
++++ b/cmake/SearchForStuff.cmake
+@@ -177,7 +177,7 @@ add_subdirectory(3rdparty/libchdr EXCLUDE_FROM_ALL)
+ # for now.
+ #add_subdirectory(3rdparty/rapidyaml/rapidyaml/ext/c4core/src/c4/ext/fast_float EXCLUDE_FROM_ALL)
+ add_library(fast_float INTERFACE)
+-target_include_directories(fast_float INTERFACE 3rdparty/rapidyaml/rapidyaml/ext/c4core/src/c4/ext/fast_float/include)
++target_include_directories(fast_float INTERFACE 3rdparty/fast_float/include)
+
+ add_subdirectory(3rdparty/jpgd EXCLUDE_FROM_ALL)
+ add_subdirectory(3rdparty/simpleini EXCLUDE_FROM_ALL)
diff --git a/testing/pcsx2/fix-iovec-define.patch b/testing/pcsx2/fix-iovec-define.patch
deleted file mode 100644
index b9e074ca5bb..00000000000
--- a/testing/pcsx2/fix-iovec-define.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-we don't have a __iovec_defined in alpine
---- a/pcsx2/USB/qemu-usb/iov.h
-+++ b/pcsx2/USB/qemu-usb/iov.h
-@@ -16,7 +16,7 @@
- #ifndef IOV_H
- #define IOV_H
-
--#if !defined(_BITS_UIO_H) && !defined(__iovec_defined) /* /usr/include/bits/uio.h */
-+#if !defined(__DEFINED_struct_iovec)
- struct iovec
- {
- void* iov_base;
diff --git a/testing/pcsx2/fix-lfs64.patch b/testing/pcsx2/fix-lfs64.patch
new file mode 100644
index 00000000000..98270bbe736
--- /dev/null
+++ b/testing/pcsx2/fix-lfs64.patch
@@ -0,0 +1,118 @@
+this also needs -D_FILE_OFFSET_BITS=64,
+but for musl specifically that doesn't matter
+--
+diff --git a/common/FileSystem.cpp b/common/FileSystem.cpp
+index a700e68..c8327b9 100644
+--- a/common/FileSystem.cpp
++++ b/common/FileSystem.cpp
+@@ -1488,17 +1488,10 @@ static u32 RecursiveFindFiles(const char* OriginPath, const char* ParentPath, co
+ FILESYSTEM_FIND_DATA outData;
+ outData.Attributes = 0;
+
+-#if defined(__HAIKU__) || defined(__APPLE__) || defined(__FreeBSD__)
+ struct stat sDir;
+ if (stat(full_path.c_str(), &sDir) < 0)
+ continue;
+
+-#else
+- struct stat64 sDir;
+- if (stat64(full_path.c_str(), &sDir) < 0)
+- continue;
+-#endif
+-
+ if (S_ISDIR(sDir.st_mode))
+ {
+ if (Flags & FILESYSTEM_FIND_RECURSIVE)
+@@ -1601,13 +1594,8 @@ bool FileSystem::StatFile(const char* path, FILESYSTEM_STAT_DATA* sd)
+ return false;
+
+ // stat file
+-#if defined(__HAIKU__) || defined(__APPLE__) || defined(__FreeBSD__)
+ struct stat sysStatData;
+ if (stat(path, &sysStatData) < 0)
+-#else
+- struct stat64 sysStatData;
+- if (stat64(path, &sysStatData) < 0)
+-#endif
+ return false;
+
+ // parse attributes
+@@ -1634,13 +1622,8 @@ bool FileSystem::StatFile(std::FILE* fp, FILESYSTEM_STAT_DATA* sd)
+ return false;
+
+ // stat file
+-#if defined(__HAIKU__) || defined(__APPLE__) || defined(__FreeBSD__)
+ struct stat sysStatData;
+ if (fstat(fd, &sysStatData) < 0)
+-#else
+- struct stat64 sysStatData;
+- if (fstat64(fd, &sysStatData) < 0)
+-#endif
+ return false;
+
+ // parse attributes
+@@ -1667,13 +1650,8 @@ bool FileSystem::FileExists(const char* path)
+ return false;
+
+ // stat file
+-#if defined(__HAIKU__) || defined(__APPLE__) || defined(__FreeBSD__)
+ struct stat sysStatData;
+ if (stat(path, &sysStatData) < 0)
+-#else
+- struct stat64 sysStatData;
+- if (stat64(path, &sysStatData) < 0)
+-#endif
+ return false;
+
+ if (S_ISDIR(sysStatData.st_mode))
+@@ -1689,13 +1667,8 @@ bool FileSystem::DirectoryExists(const char* path)
+ return false;
+
+ // stat file
+-#if defined(__HAIKU__) || defined(__APPLE__) || defined(__FreeBSD__)
+ struct stat sysStatData;
+ if (stat(path, &sysStatData) < 0)
+-#else
+- struct stat64 sysStatData;
+- if (stat64(path, &sysStatData) < 0)
+-#endif
+ return false;
+
+ if (S_ISDIR(sysStatData.st_mode))
+diff --git a/common/Linux/LnxHostSys.cpp b/common/Linux/LnxHostSys.cpp
+index 5b63cda..2ed3d81 100644
+--- a/common/Linux/LnxHostSys.cpp
++++ b/common/Linux/LnxHostSys.cpp
+@@ -243,12 +243,7 @@ void* HostSys::CreateSharedMemory(const char* name, size_t size)
+ // we're not going to be opening this mapping in other processes, so remove the file
+ shm_unlink(name);
+
+- // ensure it's the correct size
+-#if !defined(__APPLE__) && !defined(__FreeBSD__)
+- if (ftruncate64(fd, static_cast<off64_t>(size)) < 0)
+-#else
+ if (ftruncate(fd, static_cast<off_t>(size)) < 0)
+-#endif
+ {
+ std::fprintf(stderr, "ftruncate64(%zu) failed: %d\n", size, errno);
+ return nullptr;
+diff --git a/pcsx2/Linux/LnxFlatFileReader.cpp b/pcsx2/Linux/LnxFlatFileReader.cpp
+index 2ecc9f2..dd1f045 100644
+--- a/pcsx2/Linux/LnxFlatFileReader.cpp
++++ b/pcsx2/Linux/LnxFlatFileReader.cpp
+@@ -100,15 +100,9 @@ void FlatFileReader::Close(void)
+
+ uint FlatFileReader::GetBlockCount(void) const
+ {
+-#if defined(__HAIKU__) || defined(__APPLE__) || defined(__FreeBSD__)
+ struct stat sysStatData;
+ if (fstat(m_fd, &sysStatData) < 0)
+ return 0;
+-#else
+- struct stat64 sysStatData;
+- if (fstat64(m_fd, &sysStatData) < 0)
+- return 0;
+-#endif
+
+ return (int)(sysStatData.st_size / m_blocksize);
+ }
diff --git a/testing/pcsx2/ryml.patch b/testing/pcsx2/ryml.patch
new file mode 100644
index 00000000000..881c545b298
--- /dev/null
+++ b/testing/pcsx2/ryml.patch
@@ -0,0 +1,13 @@
+diff --git a/pcsx2/GameDatabase.cpp b/pcsx2/GameDatabase.cpp
+index ad6a69f..542f95b 100644
+--- a/pcsx2/GameDatabase.cpp
++++ b/pcsx2/GameDatabase.cpp
+@@ -1038,7 +1038,7 @@ static bool parseHashDatabaseEntry(const c4::yml::NodeRef& node)
+ node["serial"] >> entry.serial;
+
+ const u32 index = static_cast<u32>(s_hash_database.size());
+- for (const ryml::NodeRef& n : node["hashes"].children())
++ for (const auto& n : node["hashes"].children())
+ {
+ if (!n.is_map() || !n.has_child("size") || !n.has_child("md5"))
+ {
diff --git a/testing/pcsx2/unbundle-vulkan.patch b/testing/pcsx2/unbundle-vulkan.patch
index da60d0820c5..46b800b9274 100644
--- a/testing/pcsx2/unbundle-vulkan.patch
+++ b/testing/pcsx2/unbundle-vulkan.patch
@@ -1,6 +1,8 @@
+diff --git a/cmake/SearchForStuff.cmake b/cmake/SearchForStuff.cmake
+index 5c81d98..746ed49 100644
--- a/cmake/SearchForStuff.cmake
+++ b/cmake/SearchForStuff.cmake
-@@ -249,7 +249,6 @@ add_subdirectory(3rdparty/imgui EXCLUDE_FROM_ALL)
+@@ -187,7 +187,6 @@ endif()
if(USE_VULKAN)
add_subdirectory(3rdparty/glslang EXCLUDE_FROM_ALL)
@@ -8,14 +10,16 @@
endif()
if(CUBEB_API)
---- a/common/CMakeLists.txt
-+++ b/common/CMakeLists.txt
-@@ -135,7 +135,7 @@ target_sources(common PRIVATE
-
- if(USE_VULKAN)
- target_link_libraries(common PUBLIC
-- Vulkan-Headers glslang
-+ glslang
+diff --git a/pcsx2/CMakeLists.txt b/pcsx2/CMakeLists.txt
+index 2fe9606..9b9fc3f 100644
+--- a/pcsx2/CMakeLists.txt
++++ b/pcsx2/CMakeLists.txt
+@@ -664,7 +664,7 @@ if(USE_VULKAN)
+ GS/Renderers/Vulkan/VKTexture.h
+ GS/Renderers/Vulkan/VKUtil.h
)
- target_sources(common PRIVATE
- Vulkan/ShaderCache.cpp
+- target_link_libraries(PCSX2_FLAGS INTERFACE Vulkan-Headers glslang)
++ target_link_libraries(PCSX2_FLAGS INTERFACE glslang)
+ endif()
+
+ set(pcsx2GSMetalShaders
diff --git a/testing/pcsx2/unbundle-zstd.patch b/testing/pcsx2/unbundle-zstd.patch
deleted file mode 100644
index d79bc0122bb..00000000000
--- a/testing/pcsx2/unbundle-zstd.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/3rdparty/zstd/CMakeLists.txt
-+++ b/3rdparty/zstd/CMakeLists.txt
-@@ -1,3 +1,8 @@
-+find_package(PkgConfig)
-+pkg_check_modules(zstd REQUIRED libzstd IMPORTED_TARGET GLOBAL)
-+add_library(Zstd::Zstd ALIAS PkgConfig::zstd)
-+return()
-+
- enable_language(C ASM)
-
- add_library(pcsx2-zstd
diff --git a/testing/pcsx2/version.patch b/testing/pcsx2/version.patch
index cb43894e006..d131825e7b6 100644
--- a/testing/pcsx2/version.patch
+++ b/testing/pcsx2/version.patch
@@ -1,6 +1,8 @@
+diff --git a/cmake/Pcsx2Utils.cmake b/cmake/Pcsx2Utils.cmake
+index 78a5ba4..eccd6d9 100644
--- a/cmake/Pcsx2Utils.cmake
+++ b/cmake/Pcsx2Utils.cmake
-@@ -36,10 +36,14 @@
+@@ -36,10 +36,14 @@ function(detectOperatingSystem)
endfunction()
function(get_git_version_info)
diff --git a/testing/pcsx2/zstd.patch b/testing/pcsx2/zstd.patch
new file mode 100644
index 00000000000..e4977c7e022
--- /dev/null
+++ b/testing/pcsx2/zstd.patch
@@ -0,0 +1,10 @@
+--- a/cmake/SearchForStuff.cmake
++++ b/cmake/SearchForStuff.cmake
+@@ -114,5 +114,2 @@
+-find_optional_system_library(zstd 3rdparty/zstd 1.4.5)
+-if (${zstd_TYPE} STREQUAL System)
+- alias_library(Zstd::Zstd zstd::libzstd_shared)
+- alias_library(pcsx2-zstd zstd::libzstd_shared)
+-endif()
++pkg_check_modules(zstd REQUIRED IMPORTED_TARGET libzstd)
++alias_library(Zstd::Zstd PkgConfig::zstd)
diff --git a/testing/pcsxr/APKBUILD b/testing/pcsxr/APKBUILD
deleted file mode 100644
index 16a5391bd79..00000000000
--- a/testing/pcsxr/APKBUILD
+++ /dev/null
@@ -1,47 +0,0 @@
-# Contributor: Cág <ca6c@bitmessage.ch>
-# Maintainer
-pkgname=pcsxr
-pkgver=1.9.95
-pkgrel=4
-pkgdesc="Sony PlayStation emulator"
-url="https://pcsxr.codeplex.com/"
-arch="all !ppc64le"
-license="GPL-3.0-or-later"
-depends="libtxc_dxtn"
-makedepends="autoconf automake libtool intltool gtk+3.0-dev sdl2-dev mesa-dev
- libxv-dev libxtst-dev nasm libxxf86vm-dev libcdio-dev"
-subpackages="$pkgname-doc $pkgname-lang"
-source="
- $pkgname-$pkgver.tar.gz::https://github.com/frealgagu/PCSX-Reloaded/archive/$pkgver.tar.gz
- fix-assert-64bit.patch
- fix-undefined-operations.patch
- fix-uncompress2.patch
- fix-musl.patch
- "
-builddir="$srcdir/PCSX-Reloaded-$pkgver/pcsxr"
-
-prepare() {
- default_prepare
- mkdir include
- autoreconf -fi
- intltoolize --force
-}
-
-build() {
- export CFLAGS="$CFLAGS -O2 -fcommon"
- ./configure \
- --prefix=/usr \
- --enable-opengl \
- --enable-libcdio
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="950f5776f1cf11d31c44cb5f47ab2480a4302ee01af5fa6a3bac0a96936ac280649c9456d78ddf75c038a43977114a780b259467cee5da7f84b8802ca1ec86a1 pcsxr-1.9.95.tar.gz
-ddd349a5e7ad5fea809596ccf44e4963992a4a9f96316db4d3c8211bc9d22ef3830115cd7b3b09d1c4c05e6419d21b2e81695d876352ea00128728709f66d58e fix-assert-64bit.patch
-1918231c3411eb2cedc3d3766d48bd766ee7aaaae34b964aec791f1e50851c7b367eb823cf0434e26e7ea8928becb30f7fcc88d27bf990072e9f651637d1f44e fix-undefined-operations.patch
-62593bc0c9422b025fdbcf04bbeff49fa195c8807cc44bc74555ad4d970e07054427299aed65bed0f75487c98e3a68ae78be86eb77822b1cf54ba26ba0e3e5ba fix-uncompress2.patch
-af69e67b12d3398248dab36f79552bff59a8246ea4aecd66f8e0621b7a1c3f5c5f03a16dc9f91b6b520290b5f688cbf7a3d9f3dbd4819f5f89dd1a5c20ccfb78 fix-musl.patch"
diff --git a/testing/pcsxr/fix-assert-64bit.patch b/testing/pcsxr/fix-assert-64bit.patch
deleted file mode 100644
index beb35b598da..00000000000
--- a/testing/pcsxr/fix-assert-64bit.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/pcsxr/libpcsxcore/ix86_64/ix86-64.c b/pcsxr/libpcsxcore/ix86_64/ix86-64.c
-index f48b742e..c69192e0 100644
---- a/libpcsxcore/ix86_64/ix86-64.c
-+++ b/libpcsxcore/ix86_64/ix86-64.c
-@@ -231,7 +231,6 @@ void x86SetJ8( u8* j8 )
-
- if ( jump > 0x7f ) {
- SysPrintf( "j8 greater than 0x7f!!\n" );
-- assert(0);
- }
- *j8 = (u8)jump;
- }
-
diff --git a/testing/pcsxr/fix-musl.patch b/testing/pcsxr/fix-musl.patch
deleted file mode 100644
index cb5a18d7dc5..00000000000
--- a/testing/pcsxr/fix-musl.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-diff --git a/plugins/dfinput/pad.c b/plugins/dfinput/pad.c
-index bd3aef7..2a01910 100644
---- a/plugins/dfinput/pad.c
-+++ b/plugins/dfinput/pad.c
-@@ -16,6 +16,8 @@
- * along with this program; if not, see <http://www.gnu.org/licenses>.
- */
-
-+#include <fcntl.h>
-+
- #include "pad.h"
- #if !SDL_VERSION_ATLEAST(2,0,0) && defined(__linux__)
- #include <linux/input.h>
-
diff --git a/testing/pcsxr/fix-uncompress2.patch b/testing/pcsxr/fix-uncompress2.patch
deleted file mode 100644
index 439f2c5adf0..00000000000
--- a/testing/pcsxr/fix-uncompress2.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-diff --git a/pcsxr/libpcsxcore/cdriso.c b/pcsxr/libpcsxcore/cdriso.c
-index b7eedea2..8ad16d15 100644
---- a/libpcsxcore/cdriso.c
-+++ b/libpcsxcore/cdriso.c
-@@ -1146,7 +1146,7 @@ static int cdread_sub_mixed(FILE *f, unsigned int base, void *dest, int sector)
- return ret;
- }
-
--static int uncompress2(void *out, unsigned long *out_size, void *in, unsigned long in_size)
-+static int uncompress2_internal(void *out, unsigned long *out_size, void *in, unsigned long in_size)
- {
- static z_stream z;
- int ret = 0;
-@@ -1225,7 +1225,7 @@ static int cdread_compressed(FILE *f, unsigned int base, void *dest, int sector)
- if (is_compressed) {
- cdbuffer_size_expect = sizeof(compr_img->buff_raw[0]) << compr_img->block_shift;
- cdbuffer_size = cdbuffer_size_expect;
-- ret = uncompress2(compr_img->buff_raw[0], &cdbuffer_size, compr_img->buff_compressed, size);
-+ ret = uncompress2_internal(compr_img->buff_raw[0], &cdbuffer_size, compr_img->buff_compressed, size);
- if (ret != 0) {
- SysPrintf("uncompress failed with %d for block %d, sector %d\n",
- ret, block, sector);
-
diff --git a/testing/pcsxr/fix-undefined-operations.patch b/testing/pcsxr/fix-undefined-operations.patch
deleted file mode 100644
index cd15906a02d..00000000000
--- a/testing/pcsxr/fix-undefined-operations.patch
+++ /dev/null
@@ -1,194 +0,0 @@
-diff --git a/pcsxr/plugins/peopsxgl/texture.c b/pcsxr/plugins/peopsxgl/texture.c
-index 8d8fb41b..0d313b97 100644
---- a/plugins/peopsxgl/texture.c
-+++ b/plugins/peopsxgl/texture.c
-@@ -1002,7 +1002,10 @@ void LoadStretchPackedWndTexturePage(int pageid, int mode, short cx, short cy)
- if(ldy)
- {ldy--;
- for(TXU=g_x1;TXU<=g_x2;TXU++)
-- *ta++=*(ta-(g_x2-g_x1));
-+ {
-+ *ta=*(ta-(g_x2-g_x1));
-+ ta++;
-+ }
- }
- }
-
-@@ -1079,7 +1082,10 @@ void LoadStretchPackedWndTexturePage(int pageid, int mode, short cx, short cy)
- if(ldy)
- {ldy--;
- for(TXU=g_x1;TXU<=g_x2;TXU++)
-- *ta++=*(ta-(g_x2-g_x1));
-+ {
-+ *ta=*(ta-(g_x2-g_x1));
-+ ta++;
-+ }
- }
-
- }
-@@ -1204,7 +1210,10 @@ void LoadStretchWndTexturePage(int pageid, int mode, short cx, short cy)
- if(ldy)
- {ldy--;
- for(TXU=g_x1;TXU<=g_x2;TXU++)
-- *ta++=*(ta-(g_x2-g_x1));
-+ {
-+ *ta=*(ta-(g_x2-g_x1));
-+ ta++;
-+ }
- }
- }
-
-@@ -1288,7 +1297,10 @@ void LoadStretchWndTexturePage(int pageid, int mode, short cx, short cy)
- if(ldy)
- {ldy--;
- for(TXU=g_x1;TXU<=g_x2;TXU++)
-- *ta++=*(ta-(g_x2-g_x1));
-+ {
-+ *ta=*(ta-(g_x2-g_x1));
-+ ta++;
-+ }
- }
-
- }
-@@ -2247,14 +2259,19 @@ GLuint LoadTextureMovie(void)
- lu=*((uint32_t *)pD);pD+=3;
- *ta++=XMBLUE(lu)|XMGREEN(lu)|XMRED(lu)|1;
- }
-- *ta++=*(ta-1);
-+ *ta=*(ta-1);
-+ ta++;
- }
- if(b_Y)
- {
- dx=xrMovieArea.x1-xrMovieArea.x0+1;
- for(row=xrMovieArea.x0;row<xrMovieArea.x1;row++)
-- *ta++=*(ta-dx);
-- *ta++=*(ta-1);
-+ {
-+ *ta=*(ta-dx);
-+ ta++;
-+ }
-+ *ta=*(ta-1);
-+ ta++;
- }
- }
- else
-@@ -2273,7 +2290,10 @@ GLuint LoadTextureMovie(void)
- {
- dx=xrMovieArea.x1-xrMovieArea.x0;
- for(row=xrMovieArea.x0;row<xrMovieArea.x1;row++)
-- *ta++=*(ta-dx);
-+ {
-+ *ta=*(ta-dx);
-+ ta++;
-+ }
- }
- }
- }
-@@ -2296,14 +2316,19 @@ GLuint LoadTextureMovie(void)
- *ta++=((c&0x1f)<<11)|((c&0x3e0)<<1)|((c&0x7c00)>>9)|1;
- }
-
-- *ta++=*(ta-1);
-+ *ta=*(ta-1);
-+ ta++;
- }
- if(b_Y)
- {
- dx=xrMovieArea.x1-xrMovieArea.x0+1;
- for(row=xrMovieArea.x0;row<xrMovieArea.x1;row++)
-- *ta++=*(ta-dx);
-- *ta++=*(ta-1);
-+ {
-+ *ta=*(ta-dx);
-+ ta++;
-+ }
-+ *ta=*(ta-1);
-+ ta++;
- }
- }
- else
-@@ -2321,7 +2346,10 @@ GLuint LoadTextureMovie(void)
- {
- dx=xrMovieArea.x1-xrMovieArea.x0;
- for(row=xrMovieArea.x0;row<xrMovieArea.x1;row++)
-- *ta++=*(ta-dx);
-+ {
-+ *ta=*(ta-dx);
-+ ta++;
-+ }
- }
- }
- }
-@@ -2347,14 +2375,19 @@ GLuint LoadTextureMovie(void)
- *ta++=*((uint32_t *)pD)|0xff000000;
- pD+=3;
- }
-- *ta++=*(ta-1);
-+ *ta=*(ta-1);
-+ ta++;
- }
- if(b_Y)
- {
- dx=xrMovieArea.x1-xrMovieArea.x0+1;
- for(row=xrMovieArea.x0;row<xrMovieArea.x1;row++)
-- *ta++=*(ta-dx);
-- *ta++=*(ta-1);
-+ {
-+ *ta=*(ta-dx);
-+ ta++;
-+ }
-+ *ta=*(ta-1);
-+ ta++;
- }
- }
- else
-@@ -2373,7 +2406,10 @@ GLuint LoadTextureMovie(void)
- {
- dx=xrMovieArea.x1-xrMovieArea.x0;
- for(row=xrMovieArea.x0;row<xrMovieArea.x1;row++)
-- *ta++=*(ta-dx);
-+ {
-+ *ta=*(ta-dx);
-+ ta++;
-+ }
- }
- }
- }
-@@ -2394,15 +2430,20 @@ GLuint LoadTextureMovie(void)
- startxy=((1024)*column)+xrMovieArea.x0;
- for(row=xrMovieArea.x0;row<xrMovieArea.x1;row++)
- *ta++=LTCOL(psxVuw[startxy++]|0x8000);
-- *ta++=*(ta-1);
-+ *ta=*(ta-1);
-+ ta++;
- }
-
- if(b_Y)
- {
- dx=xrMovieArea.x1-xrMovieArea.x0+1;
- for(row=xrMovieArea.x0;row<xrMovieArea.x1;row++)
-- *ta++=*(ta-dx);
-- *ta++=*(ta-1);
-+ {
-+ *ta=*(ta-dx);
-+ ta++;
-+ }
-+ *ta=*(ta-1);
-+ ta++;
- }
- }
- else
-@@ -2418,7 +2459,10 @@ GLuint LoadTextureMovie(void)
- {
- dx=xrMovieArea.x1-xrMovieArea.x0;
- for(row=xrMovieArea.x0;row<xrMovieArea.x1;row++)
-- *ta++=*(ta-dx);
-+ {
-+ *ta=*(ta-dx);
-+ ta++;
-+ }
- }
- }
- }
-
diff --git a/testing/pdal-python-plugins/APKBUILD b/testing/pdal-python-plugins/APKBUILD
new file mode 100644
index 00000000000..0559605a6e3
--- /dev/null
+++ b/testing/pdal-python-plugins/APKBUILD
@@ -0,0 +1,33 @@
+# Contributor: Brian Vuyk <bvuyk@sama.com>
+# Maintainer: Brian Vuyk <bvuyk@sama.com>
+pkgname=pdal-python-plugins
+pkgver=1.2.1
+pkgrel=3
+pkgdesc="Supports embedding Python in PDAL pipelines with the readers.numpy and filters.python drivers."
+url="https://github.com/PDAL/python-plugins"
+arch="aarch64 armhf armv7 ppc64le riscv64 x86 x86_64" # Exclude s390x due to test failures.
+license="BSD-3-Clause"
+depends="python3 py3-numpy"
+checkdepends="pdal"
+makedepends="cmake pdal-dev py3-numpy-dev python3-dev py3-setuptools py3-packaging py3-scikit-build ninja"
+source="https://files.pythonhosted.org/packages/source/p/pdal-plugins/pdal-plugins-1.2.1.tar.gz"
+builddir="$srcdir/pdal-plugins-$pkgver"
+
+build() {
+ python3 setup.py build -DWITH_TESTS=ON
+}
+
+check() {
+ export PDAL_DRIVER_PATH=$(python3 -c "import os, skbuild; print(os.path.join(skbuild.constants.SKBUILD_DIR(), 'cmake-build'))")
+ pdal --drivers
+ $PDAL_DRIVER_PATH/pdal_filters_python_test
+ $PDAL_DRIVER_PATH/pdal_io_numpy_test
+}
+
+package() {
+ python3 setup.py install --skip-build --root="$pkgdir"
+}
+
+sha512sums="
+328bb1960c823e442f08e3b3f7aca0e98a0755bc4fd655ad57d4efa202ecab4fc034ce85bb8015e7d0f0b13f4556b25cc9fb18d9f1b4281dbf65c23e21b2e577 pdal-plugins-1.2.1.tar.gz
+"
diff --git a/testing/pdf2svg/APKBUILD b/testing/pdf2svg/APKBUILD
index b2586b415cf..cf985862f56 100644
--- a/testing/pdf2svg/APKBUILD
+++ b/testing/pdf2svg/APKBUILD
@@ -2,7 +2,7 @@
# Contributor: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
pkgname=pdf2svg
pkgver=0.2.3
-pkgrel=0
+pkgrel=1
pkgdesc="A simple PDF to SVG converter using Poppler and Cairo"
url="http://www.cityinthesky.co.uk/opensource/pdf2svg/"
arch="all"
diff --git a/testing/pdfarranger/APKBUILD b/testing/pdfarranger/APKBUILD
deleted file mode 100644
index 81350713992..00000000000
--- a/testing/pdfarranger/APKBUILD
+++ /dev/null
@@ -1,27 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=pdfarranger
-pkgver=1.8.2
-pkgrel=0
-pkgdesc="Helps merge or split PDF documents and rotate, crop and rearrange pages"
-url="https://github.com/jeromerobert/pdfarranger"
-arch="noarch"
-license="GPL-3.0-or-later"
-depends="desktop-file-utils ghostscript gsettings-desktop-schemas
- gtk+3.0 poppler-glib py3-atspi py3-cairo py3-dateutil py3-gobject3
- py3-img2pdf>=0.3.4 py3-pikepdf>=1.17.0"
-makedepends="py3-setuptools py3-distutils-extra intltool"
-options="!check" # tests require dogtail package
-subpackages="$pkgname-lang $pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/jeromerobert/pdfarranger/archive/$pkgver.tar.gz"
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --root="$pkgdir" --optimize=1
-}
-
-sha512sums="
-e0b1ed59158681766e6b707a207363a8ccd38bdc76311600d338ef443e0ee79405af6afb65b878a68d7e52d2ea35f6a7aa700d9aaf46b31bcf64fd863c8784f2 pdfarranger-1.8.2.tar.gz
-"
diff --git a/testing/pdfcpu/APKBUILD b/testing/pdfcpu/APKBUILD
new file mode 100644
index 00000000000..7eadda12d22
--- /dev/null
+++ b/testing/pdfcpu/APKBUILD
@@ -0,0 +1,32 @@
+# Contributor: Dmitry Zakharchenko <dmitz@disroot.org>
+# Maintainer: Dmitry Zakharchenko <dmitz@disroot.org>
+pkgname=pdfcpu
+pkgver=0.7.0
+pkgrel=1
+pkgdesc="PDF processor written in Go"
+url="https://pdfcpu.io"
+arch="all"
+license="Apache-2.0"
+makedepends="go"
+options="!check" # test suite fails
+source="$pkgname-$pkgver.tar.gz::https://github.com/pdfcpu/pdfcpu/archive/v$pkgver.tar.gz"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ go build -o bin/pdfcpu ./cmd/...
+}
+
+check() {
+ go test ./...
+}
+
+package() {
+ install -Dm755 bin/pdfcpu "$pkgdir"/usr/bin/pdfcpu
+}
+
+sha512sums="
+fa58580f2ee8ba128083ead7acf3653182df127304d72c15693b0e48af80b229e44a57f51dc48b59a1483a4ad5181bb4870a28a9e39dd9db652ac0c55c2654ec pdfcpu-0.7.0.tar.gz
+"
diff --git a/testing/pdfcrack/APKBUILD b/testing/pdfcrack/APKBUILD
index 3db8ef37973..c5957eba790 100644
--- a/testing/pdfcrack/APKBUILD
+++ b/testing/pdfcrack/APKBUILD
@@ -1,10 +1,10 @@
# Contributor: Francesco Colista <fcolista@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=pdfcrack
-pkgver=0.19
+pkgver=0.20
pkgrel=0
pkgdesc="Command line, password recovery tool for PDF-files."
-url="http://pdfcrack.sourceforge.net/"
+url="https://pdfcrack.sourceforge.net/"
arch="all"
license="GPL-2.0"
options="!check"
@@ -21,4 +21,6 @@ package() {
install -Dm755 $pkgname "$pkgdir"/usr/bin/$pkgname
}
-sha512sums="e58819e7d90db9a66ebf9509c0b8aace7f8e7dbf5f8083edc70c3f2ca28cf16476bbdbaa77f7c563dcf824e440ca0df03e91d6aaf2a0435ec8f349f4e19ee626 pdfcrack-0.19.tar.gz"
+sha512sums="
+50298aeec8a50b929d1440ea644bacb6afad638552948112b3fb2744124188e0cb52f67a804d76b09f747040aea56eadbab88e90481be8fce8e8147ed4c00188 pdfcrack-0.20.tar.gz
+"
diff --git a/testing/pdfjs/APKBUILD b/testing/pdfjs/APKBUILD
deleted file mode 100644
index 59f5d9ca444..00000000000
--- a/testing/pdfjs/APKBUILD
+++ /dev/null
@@ -1,21 +0,0 @@
-# Contributor: Daniel Santana <daniel@santana.tech>
-# Maintainer: Daniel Santana <daniel@santana.tech>
-pkgname=pdfjs
-pkgver=2.6.347
-pkgrel=0
-pkgdesc="General-purpose, web standards-based platform for parsing and rendering PDFs"
-url="https://mozilla.github.io/pdf.js/"
-arch="noarch"
-license="Apache-2.0"
-subpackages="$pkgname-doc"
-source="https://github.com/mozilla/pdf.js/releases/download/v2.6.347/pdfjs-$pkgver-dist.zip"
-options="!check" # No tests
-
-package() {
- mkdir -p "$pkgdir/usr/share/pdf.js" "$pkgdir/usr/share/licenses/pdf.js"
- cp "$srcdir"/LICENSE "$pkgdir/usr/share/licenses/pdf.js"
- cp -R "$srcdir"/build "$pkgdir/usr/share/pdf.js"
- cp -R "$srcdir"/web "$pkgdir/usr/share/pdf.js"
-}
-
-sha512sums="17e5d9b90746db71ab22366e5c1204a4dd1410c0b32822f9ba52d6d5966265792dbdf5050bd2ad072647100f69413fe46fda216b2f7b269d33a3aec570a913cd pdfjs-2.6.347-dist.zip"
diff --git a/testing/pdm/APKBUILD b/testing/pdm/APKBUILD
new file mode 100644
index 00000000000..7edd267f531
--- /dev/null
+++ b/testing/pdm/APKBUILD
@@ -0,0 +1,61 @@
+# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=pdm
+pkgver=2.12.4
+pkgrel=1
+pkgdesc="Modern Python package and dependency manager"
+url="https://pdm.fming.dev/"
+arch="noarch"
+license="MIT"
+depends="
+ py3-blinker
+ py3-cachecontrol
+ py3-certifi
+ py3-dep-logic
+ py3-dotenv
+ py3-findpython
+ py3-installer
+ py3-packaging
+ py3-platformdirs
+ py3-pyproject-hooks
+ py3-requests-toolbelt
+ py3-resolvelib
+ py3-rich
+ py3-shellingham
+ py3-tomlkit
+ py3-truststore
+ py3-unearth
+ py3-virtualenv
+ "
+makedepends="py3-pdm-backend py3-gpep517 py3-installer"
+checkdepends="
+ bash
+ py3-pytest
+ py3-pytest-httpserver
+ py3-pytest-mock
+ py3-pytest-rerunfailures
+ "
+subpackages="$pkgname-pyc"
+source="https://github.com/pdm-project/pdm/archive/$pkgver/pdm-$pkgver.tar.gz"
+
+build() {
+ export PDM_BUILD_SCM_VERSION=$pkgver
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest -k 'not test_use_wrapper_python'
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+3a73baf34adcd8a7d8fbd84340ad06d7759db8378ccbe7a61705f46ae97a31dc72fd3b98c4ae06f70eb6ed02234d46c71bb185f30a3ec8f2a5803583278bafd4 pdm-2.12.4.tar.gz
+"
diff --git a/testing/pebble-le/APKBUILD b/testing/pebble-le/APKBUILD
new file mode 100644
index 00000000000..72806d9339e
--- /dev/null
+++ b/testing/pebble-le/APKBUILD
@@ -0,0 +1,54 @@
+# Maintainer: leso-kn <info@lesosoftware.com>
+pkgname=pebble-le
+pkgver=0.3.0
+pkgrel=0
+_bluez_inc="41bdc1a5d98d929764600c14d0654c9ff5112f86"
+pkgdesc="Library to talk to Pebble Smartwatches via Bluetooth Low Energy (BLE)"
+url="https://github.com/leso-kn/pebble-le"
+arch="all"
+license="MIT"
+makedepends="
+ boost-dev
+ cmake
+ doxygen
+ fmt-dev
+ dbus-dev
+ glib-dev
+ samurai
+ simpleble-dev
+ "
+install="$pkgname.pre-install"
+subpackages="$pkgname-dev $pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/leso-kn/pebble-le/archive/refs/tags/v$pkgver.tar.gz
+ bluez_inc-$_bluez_inc.tar.gz::https://github.com/weliem/bluez_inc/archive/$_bluez_inc.tar.gz
+ simpleble.patch
+ "
+options="!check" # soon pebble-le unit-tests
+
+prepare() {
+ rmdir third_party/binc third_party/SimpleBLE
+
+ mv "$srcdir"/bluez_inc-$_bluez_inc third_party/binc
+ default_prepare
+}
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DCMAKE_INSTALL_INCLUDEDIR=/usr/include \
+ -DCMAKE_INSTALL_SYSCONFDIR=/etc \
+ -DCMAKE_SKIP_INSTALL_RPATH=ON
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+8672d481e0dc94f648149627bdc413d0546750683d994b7b4b67c90216f14877fcaa9eba723ee0fdf9016505b3e49e58d605c3e1cd3e3bc4d4ad01400e68844b pebble-le-0.3.0.tar.gz
+2321fb7cdddbde7208c92185bc5af9083fc313b8ae2433308423b6ce5c1895b19bf27671ca6f352bd10a62b7ed830586d973268bc8ab547943180d64fdc72081 bluez_inc-41bdc1a5d98d929764600c14d0654c9ff5112f86.tar.gz
+77f49061da9dfef1e1765df2dcf5633a0d1ea95ced4e7276a5abee98b98108ec0dc53d4e3e27d58abb1f280afccc53f6724d5957e898d13f69c05470d84a8580 simpleble.patch
+"
diff --git a/testing/pebble-le/pebble-le.pre-install b/testing/pebble-le/pebble-le.pre-install
new file mode 100644
index 00000000000..0dd53b669a9
--- /dev/null
+++ b/testing/pebble-le/pebble-le.pre-install
@@ -0,0 +1,5 @@
+#!/bin/sh
+
+addgroup -S pebble-le 2>/dev/null
+
+exit 0
diff --git a/testing/pebble-le/simpleble.patch b/testing/pebble-le/simpleble.patch
new file mode 100644
index 00000000000..c1bfd9977c5
--- /dev/null
+++ b/testing/pebble-le/simpleble.patch
@@ -0,0 +1,45 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index c7fa1dd..0163b8a 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -21,15 +21,8 @@ set(pebble_le_SOURCES
+ src/util.cpp)
+
+ # Third-Party Dependencies
+-add_subdirectory(third_party/SimpleBLE/simpleble EXCLUDE_FROM_ALL)
+ add_subdirectory(third_party/binc/binc)
+
+-set(SimpleBLE_INCLUDE_DIRS
+- ${CMAKE_SOURCE_DIR}/third_party/SimpleBLE/simpleble/include
+- ${CMAKE_SOURCE_DIR}/third_party/SimpleBLE/simplebluez/include
+- ${CMAKE_SOURCE_DIR}/third_party/SimpleBLE/simpledbus/include
+- ${CMAKE_BINARY_DIR}/third_party/SimpleBLE/simpleble/export)
+-
+ set(Binc_INCLUDE_DIRS
+ ${CMAKE_SOURCE_DIR}/third_party/binc)
+
+@@ -37,6 +30,8 @@ find_package(PkgConfig REQUIRED)
+ pkg_search_module(GLIB REQUIRED glib-2.0)
+ pkg_search_module(GIO REQUIRED gio-2.0)
+ pkg_search_module(DBus1 REQUIRED dbus-1)
++pkg_search_module(SimpleBLE REQUIRED simpleble)
++pkg_search_module(SimpleBLUEZ REQUIRED simplebluez)
+
+ # libpebble-le
+ add_library(pebble-le_o OBJECT ${pebble_le_SOURCES})
+@@ -54,12 +49,13 @@ set_target_properties(pebble-le PROPERTIES
+ set_target_properties(pebble-le_static PROPERTIES
+ OUTPUT_NAME pebble-le)
+
+-target_include_directories(pebble-le_o PRIVATE ${Binc_INCLUDE_DIRS} ${SimpleBLE_INCLUDE_DIRS} ${DBus1_INCLUDE_DIRS} ${GLIB_INCLUDE_DIRS})
++target_include_directories(pebble-le_o PRIVATE ${Binc_INCLUDE_DIRS} ${SimpleBLE_INCLUDE_DIRS} ${SimpleBLUEZ_INCLUDE_DIRS} ${DBus1_INCLUDE_DIRS} ${GLIB_INCLUDE_DIRS})
+ target_include_directories(pebble-le_o PUBLIC include ${CMAKE_BINARY_DIR}/exports)
+
+ target_link_libraries(pebble-le_o PUBLIC
+ Binc
+- simpleble
++ ${SimpleBLE_LIBRARIES}
++ ${SimpleBLUEZ_LIBRARIES}
+ ${DBus1_LIBRARIES}
+ ${GLIB_LIBRARIES}
+ ${GIO_LIBRARIES})
diff --git a/testing/peervpn/APKBUILD b/testing/peervpn/APKBUILD
index 98874eaf42a..1983c028a9a 100644
--- a/testing/peervpn/APKBUILD
+++ b/testing/peervpn/APKBUILD
@@ -2,13 +2,13 @@
# Maintainer: Markus Juenemann <markus@juenemann.net>
pkgname=peervpn
pkgver=0.044
-pkgrel=4
+pkgrel=5
pkgdesc="PeerVPN builds virtual ethernet networks between multiple computers"
options="!check" # No testsuite
url="https://peervpn.net"
arch="all"
license="GPL-3.0-or-later"
-makedepends="openssl-dev zlib-dev linux-headers"
+makedepends="openssl-dev>3 zlib-dev linux-headers"
subpackages="$pkgname-openrc"
source="
http://${pkgname}.net/files/${pkgname}-${pkgver//./-}.tar.gz
diff --git a/testing/peg/APKBUILD b/testing/peg/APKBUILD
index 79e114e72da..4b8e61098ed 100644
--- a/testing/peg/APKBUILD
+++ b/testing/peg/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=peg
pkgver=0.1.18
-pkgrel=0
+pkgrel=1
pkgdesc="Recursive-descent parser generators for C"
url="https://www.piumarta.com/software/peg/"
arch="all"
diff --git a/testing/pegasus-frontend/APKBUILD b/testing/pegasus-frontend/APKBUILD
index 816cb92ac95..9908c58a684 100644
--- a/testing/pegasus-frontend/APKBUILD
+++ b/testing/pegasus-frontend/APKBUILD
@@ -3,9 +3,9 @@
pkgname=pegasus-frontend
pkgver=13_alpha
_realver=alpha13
-pkgrel=0
+pkgrel=2
pkgdesc="A cross platform, customizable graphical frontend for launching emulators and managing your game collection."
-url="http://pegasus-frontend.org"
+url="https://pegasus-frontend.org"
arch="all !armhf"
license="GPL-1.0-or-later"
depends="qt5-qtquickcontrols mesa qt5-qtgraphicaleffects qt5-qtgamepad qt5-qtmultimedia"
@@ -16,7 +16,7 @@ _translations_commit=b9eb734f8583e044b999d8c673dd5da0851ec8f5
_thirdparty_commit=a16b36d64ced67da31a3465ba6a7ad593378a0eb
_theme_commit=ccaf3152574992eacbda81ccf6624731e07e963e
source="$pkgname-$_realver.zip::https://github.com/mmatyas/pegasus-frontend/archive/$_realver.zip
- $pkgname-$_realver-translations.zip::https://github.com/mmatyas/$pkgname-translations/archive/$_translations_commit.zip
+ $pkgname-$_realver-translations.zip::https://github.com/mmatyas/pegasus-frontend-translations/archive/$_translations_commit.zip
$pkgname-$_realver-thirdparty.zip::https://github.com/mmatyas/SortFilterProxyModel/archive/$_thirdparty_commit.zip
$pkgname-$_realver-themes.zip::https://github.com/mmatyas/pegasus-theme-grid/archive/$_theme_commit.zip
qt-5-14-compatibility.patch
diff --git a/testing/pegtl/APKBUILD b/testing/pegtl/APKBUILD
index ea5fb8d7824..eaa8f60c95b 100644
--- a/testing/pegtl/APKBUILD
+++ b/testing/pegtl/APKBUILD
@@ -2,16 +2,15 @@
# Maintainer:
pkgname=pegtl
_pkgname=PEGTL
-pkgver=2.8.3
-pkgrel=1
+pkgver=3.2.7
+pkgrel=0
pkgdesc="Parsing Expression Grammar Template Library"
url="https://github.com/taocpp/PEGTL"
license="MIT"
arch="noarch"
makedepends="cmake"
subpackages="$pkgname-doc"
-source="$_pkgname-$pkgver.tar.gz::https://github.com/taocpp/PEGTL/archive/$pkgver.tar.gz
- ignore-type-limits-error.patch"
+source="$_pkgname-$pkgver.tar.gz::https://github.com/taocpp/PEGTL/archive/$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
build() {
@@ -34,5 +33,6 @@ package() {
DESTDIR="$pkgdir" cmake --build build --target install
}
-sha512sums="9f7644b86741dfe61716bbc43b2ea0a02cfc21eaf229c47cc71a49e2f08bf2c1ff37d2b2242a1bcf518b1893be6b82c27b0e9010a1b47ef8df87ffd90d280f71 PEGTL-2.8.3.tar.gz
-84676550e7b9e3ccb193cbe37843c6c4a5e9164ea1146d8e1cb9301b567dff255271b9ffcfacc60988bb887b13a63ba4e1b0919162da11f91724e8056671b42e ignore-type-limits-error.patch"
+sha512sums="
+e996be569e1c25377b13870c4f3e59f1935bbf24bb7c6edca0edc85b304fbe3d05db52a303839b0bd50c78769b773fc2237814787a703c58de8a79398210ee34 PEGTL-3.2.7.tar.gz
+"
diff --git a/testing/pegtl/ignore-type-limits-error.patch b/testing/pegtl/ignore-type-limits-error.patch
deleted file mode 100644
index 5407c932c59..00000000000
--- a/testing/pegtl/ignore-type-limits-error.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-Reason: Ignore type-limits error
-Upstream: No
-
-This issue is fixed by upstream in https://github.com/taocpp/PEGTL/commit/a3a292c2ba66bf09b4adc4cee8fcdfb1b1386067,
-but the patch does not apply to current codebase (version 2.8.3).
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 0fe7e8e7..a3fedc20 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -7,6 +7,8 @@ set(PEGTL_VERSION "${CMAKE_MATCH_1}")
-
- project(pegtl VERSION ${PEGTL_VERSION} LANGUAGES CXX)
-
-+set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-error=type-limits")
-+
- if(${PROJECT_NAME}_FOUND)
- # Multiple versions of PEGTL can't co-exist
- if(NOT ${PROJECT_NAME}_VERSION STREQUAL ${PROJECT_VERSION})
diff --git a/testing/percona-toolkit/APKBUILD b/testing/percona-toolkit/APKBUILD
index 82969b231e6..d2fc6e1e2a9 100644
--- a/testing/percona-toolkit/APKBUILD
+++ b/testing/percona-toolkit/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Matthieu Monnier <matthieu.monnier@enalean.com>
# Maintainer: Matthieu Monnier <matthieu.monnier@enalean.com>
pkgname=percona-toolkit
-pkgver=3.3.0
+pkgver=3.5.4
pkgrel=0
pkgdesc="Toolkit for MySQL/MariaDB"
url="https://www.percona.com/software/database-tools/percona-toolkit/"
@@ -26,5 +26,5 @@ package() {
}
sha512sums="
-87bb5bcccabf782eafc0e363f3a5d75e9e28d5edd9d4278df5f455c90207296dc9035f85311567bd210109a2796484010d8a11fa4d4a5bee09f228aedb6b3bb2 percona-toolkit-3.3.0.tar.gz
+be94c047ce7507435573afaf0015970117039610fa84c818ded601f98ddd223e71b2304c2cad33d3151381238bab84bf563087aa4f4ccc5929395fda79b25d95 percona-toolkit-3.5.4.tar.gz
"
diff --git a/testing/perl-adapter-async/APKBUILD b/testing/perl-adapter-async/APKBUILD
new file mode 100644
index 00000000000..9a8610e149a
--- /dev/null
+++ b/testing/perl-adapter-async/APKBUILD
@@ -0,0 +1,50 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-adapter-async
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Adapter-Async
+pkgver=0.019
+pkgrel=0
+pkgdesc="Common API for linking data sources and views"
+url="https://metacpan.org/release/Adapter-Async/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="
+ perl perl-check-unitcheck perl-curry perl-future
+ perl-list-binarysearch perl-log-any
+ perl-mixin-event-dispatch perl-variable-disposition
+ "
+checkdepends="perl-test-checkdeps perl-test-fatal"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/T/TE/TEAM/Adapter-Async-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+doc() {
+ local file; find "$pkgdir" -name "*.pod" | while read -r file; do
+ amove "${file#"$pkgdir"}"
+ done
+ default_doc
+}
+
+sha512sums="
+5e002bc73943ddaa1b964a2dcd8c15db367c0acba60b87d22db2c7df7bda017dcd61bbaac6b6c63fe9ebe804ab3116a5475b0c5c791aa1000389894958777a0d Adapter-Async-0.019.tar.gz
+"
diff --git a/testing/perl-algorithm-backoff/APKBUILD b/testing/perl-algorithm-backoff/APKBUILD
new file mode 100644
index 00000000000..a6df240c866
--- /dev/null
+++ b/testing/perl-algorithm-backoff/APKBUILD
@@ -0,0 +1,39 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-algorithm-backoff
+pkgver=0.010
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Algorithm-Backoff
+pkgdesc="Various backoff strategies for retry"
+url="https://metacpan.org/release/Algorithm-Backoff/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl"
+checkdepends="perl-test-exception perl-test-number-delta"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/P/PE/PERLANCAR/Algorithm-Backoff-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+11849a4f27caf6bfc03bafa39b641cfa258804b93a70b607523fce215b3f143322ff7731418727264ab86f63db38844d0b3cf8d0096acda1f3815ac1504066bb Algorithm-Backoff-0.010.tar.gz
+"
diff --git a/testing/perl-algorithm-c3/APKBUILD b/testing/perl-algorithm-c3/APKBUILD
index b3f42e07390..6700c6d03f1 100644
--- a/testing/perl-algorithm-c3/APKBUILD
+++ b/testing/perl-algorithm-c3/APKBUILD
@@ -5,7 +5,7 @@ pkgname=perl-algorithm-c3
#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
_pkgreal=Algorithm-C3
pkgver=0.11
-pkgrel=0
+pkgrel=1
pkgdesc="A module for merging hierarchies using the C3 algorithm"
url="https://metacpan.org/release/Algorithm-C3/"
arch="noarch"
diff --git a/testing/perl-algorithm-cron/APKBUILD b/testing/perl-algorithm-cron/APKBUILD
index 8fc2ffd2761..54781a372f0 100644
--- a/testing/perl-algorithm-cron/APKBUILD
+++ b/testing/perl-algorithm-cron/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-algorithm-cron
_pkgreal=Algorithm-Cron
pkgver=0.10
-pkgrel=3
+pkgrel=4
pkgdesc="abstract implementation of the F<cron(8)> scheduling"
url="https://metacpan.org/release/Algorithm-Cron"
arch="noarch"
diff --git a/testing/perl-aliased/APKBUILD b/testing/perl-aliased/APKBUILD
index 94cf61b04f9..9a3b1535d5c 100644
--- a/testing/perl-aliased/APKBUILD
+++ b/testing/perl-aliased/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-aliased
_pkgreal=aliased
pkgver=0.34
-pkgrel=3
+pkgrel=4
pkgdesc="Use shorter versions of class names."
url="https://metacpan.org/release/aliased"
arch="noarch"
diff --git a/testing/perl-anyevent-dns-etchosts/APKBUILD b/testing/perl-anyevent-dns-etchosts/APKBUILD
index bfd6fb43fa3..841a1b0e760 100644
--- a/testing/perl-anyevent-dns-etchosts/APKBUILD
+++ b/testing/perl-anyevent-dns-etchosts/APKBUILD
@@ -3,14 +3,15 @@
# Maintainer: Timo Teräs <timo.teras@iki.fi>
pkgname=perl-anyevent-dns-etchosts
_pkgreal=AnyEvent-DNS-EtcHosts
-pkgver=0.0103
-pkgrel=3
+pkgver=0.0105
+pkgrel=0
pkgdesc="Use /etc/hosts before DNS"
url="https://metacpan.org/release/AnyEvent-DNS-EtcHosts"
arch="noarch"
license="GPL-1.0-or-later OR Artistic-1.0-Perl"
depends="perl perl-anyevent"
-makedepends="perl-module-build perl-test-deep"
+makedepends="perl-module-build perl-module-cpanfile"
+checkdepends="perl-test-deep"
subpackages="$pkgname-doc"
source="https://cpan.metacpan.org/authors/id/D/DE/DEXTER/$_pkgreal-$pkgver.tar.gz"
builddir="$srcdir/$_pkgreal-$pkgver"
@@ -36,4 +37,6 @@ check() {
./Build test
}
-sha512sums="213795e75cde1acabc73220814b1b1396fca86b964e5701e81181221501c9c5b9e3b0a43d5448bf8d9f19276320c2afab75eee56ebd7b54a64126962f60a50f8 AnyEvent-DNS-EtcHosts-0.0103.tar.gz"
+sha512sums="
+e78d1d89054b0fdc96b2f9809dbe10682b93bd9f7a0bd41c4547bc926d75b09466fe0b17488545059d2fd80b87db73f916189c2d3af2a63f7f6fad3b1c406b67 AnyEvent-DNS-EtcHosts-0.0105.tar.gz
+"
diff --git a/testing/perl-anyevent-future/APKBUILD b/testing/perl-anyevent-future/APKBUILD
new file mode 100644
index 00000000000..468b18c5e41
--- /dev/null
+++ b/testing/perl-anyevent-future/APKBUILD
@@ -0,0 +1,37 @@
+# Automatically generated by apkbuild-cpan, template 3
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-anyevent-future
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=AnyEvent-Future
+pkgver=0.05
+pkgrel=0
+pkgdesc="Use Future with AnyEvent"
+url="https://metacpan.org/release/AnyEvent-Future/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-anyevent perl-future"
+makedepends="perl-module-build"
+checkdepends="perl-test-timer"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/P/PE/PEVANS/AnyEvent-Future-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ perl Build.PL --installdirs=vendor
+ ./Build
+}
+
+check() {
+ ./Build test
+}
+
+package() {
+ ./Build install --destdir="$pkgdir"
+ find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
+}
+
+sha512sums="
+9b34b43d2f1d701aeec080f09b27ece86f23dc98a282a959f1c09c432b02f9124e9916e43a840943e940a3d3b3c19c21a18208ee19c31de9ce989c25e34587d1 AnyEvent-Future-0.05.tar.gz
+"
diff --git a/testing/perl-anyevent-http/APKBUILD b/testing/perl-anyevent-http/APKBUILD
deleted file mode 100644
index 97e796b3a9c..00000000000
--- a/testing/perl-anyevent-http/APKBUILD
+++ /dev/null
@@ -1,34 +0,0 @@
-# Automatically generated by apkbuild-cpan, template 3
-# Contributor: Nick Andrew <nick@nick-andrew.net>
-# Maintainer: Nick Andrew <nick@nick-andrew.net>
-pkgname=perl-anyevent-http
-#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
-_pkgreal=AnyEvent-HTTP
-pkgver=2.25
-pkgrel=2
-pkgdesc="simple but non-blocking HTTP/HTTPS client"
-url="https://metacpan.org/release/AnyEvent-HTTP/"
-arch="noarch"
-license="GPL-1.0-or-later OR Artistic-1.0-Perl"
-depends="perl perl-anyevent perl-common-sense"
-subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/M/ML/MLEHMANN/AnyEvent-HTTP-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgreal-$pkgver"
-
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL INSTALLDIRS=vendor
- make
-}
-
-check() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make test
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
-}
-
-sha512sums="bc189a6a37cb3c3b6f1c36bd965911e110019fec5b8f82bea60dab2e3cf0dda0117a83a5f0608f7865f457b016f94f1ccc78939e22849bceb82a096edc24de9c AnyEvent-HTTP-2.25.tar.gz"
diff --git a/testing/perl-anyevent-mocktcpserver/APKBUILD b/testing/perl-anyevent-mocktcpserver/APKBUILD
new file mode 100644
index 00000000000..ad447a5f9c1
--- /dev/null
+++ b/testing/perl-anyevent-mocktcpserver/APKBUILD
@@ -0,0 +1,38 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-anyevent-mocktcpserver
+pkgver=1.172150
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=AnyEvent-MockTCPServer
+pkgdesc="Mock TCP Server using AnyEvent"
+url="https://metacpan.org/release/AnyEvent-MockTCPServer/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-anyevent perl-sub-name"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/B/BE/BEANZ/AnyEvent-MockTCPServer-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+b4c6e75c8a26502369fbcd6dd749732b668623168c736c795288592a5804eac25f41d36eb84ba4e52089b2ee787a8a5ff02ce96f2a0c85074c37121de893872a AnyEvent-MockTCPServer-1.172150.tar.gz
+"
diff --git a/testing/perl-anyevent-mqtt/APKBUILD b/testing/perl-anyevent-mqtt/APKBUILD
new file mode 100644
index 00000000000..f28bdca3995
--- /dev/null
+++ b/testing/perl-anyevent-mqtt/APKBUILD
@@ -0,0 +1,47 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-anyevent-mqtt
+pkgver=1.212810
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=AnyEvent-MQTT
+pkgdesc="AnyEvent module for an MQTT client"
+url="https://metacpan.org/release/AnyEvent-MQTT/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-anyevent perl-net-mqtt perl-sub-name"
+checkdepends="perl-anyevent-mocktcpserver"
+subpackages="$pkgname-doc $pkgname-monitor"
+source="https://cpan.metacpan.org/authors/id/B/BE/BEANZ/AnyEvent-MQTT-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+monitor() {
+ pkgdesc="$pkgdesc (graphical monitor)"
+ depends="$pkgname=$pkgver-r$pkgrel perl-gtk2"
+ install_if="$pkgname=$pkgver-r$pkgrel perl-gtk2"
+
+ amove usr/bin/anyevent-mqtt-monitor
+}
+
+sha512sums="
+1883fe34200365d810a250714fd78fc2fda341dc1b38c1f54e76927801e25e3fc2f21242348bbc8de30603d403b6af746c7cfc7b858e0ffea682ac90fa36a020 AnyEvent-MQTT-1.212810.tar.gz
+"
diff --git a/testing/perl-anyevent-riperedis/APKBUILD b/testing/perl-anyevent-riperedis/APKBUILD
new file mode 100644
index 00000000000..8fac4427e72
--- /dev/null
+++ b/testing/perl-anyevent-riperedis/APKBUILD
@@ -0,0 +1,42 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-anyevent-riperedis
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=AnyEvent-RipeRedis
+pkgver=0.48
+pkgrel=0
+pkgdesc="Flexible non-blocking Redis client"
+url="https://metacpan.org/release/AnyEvent-RipeRedis/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-anyevent"
+checkdepends="perl-test-fatal perl-test-leaktrace perl-test-tcp redis"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/I/IP/IPH/AnyEvent-RipeRedis-$pkgver.tar.gz
+ test-redisrunner.patch
+ "
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+ff09f050294dbfbf01a1307fe5f94879f178b3b425d2c2eeef254b46f65ed812a4e793bfc40384acb50053db1084acbbaa9b893487754cc6e862c928fea2187d AnyEvent-RipeRedis-0.48.tar.gz
+86de64b21cf134a634cabead4365b394097e7880e60ca3b09ccc2c56c38fb0b28ab0cbce1fdda9eb5a5342f1b7f0f92454a8221adae517274d4c49046fbe6436 test-redisrunner.patch
+"
diff --git a/testing/perl-anyevent-riperedis/test-redisrunner.patch b/testing/perl-anyevent-riperedis/test-redisrunner.patch
new file mode 100644
index 00000000000..b4d002b7326
--- /dev/null
+++ b/testing/perl-anyevent-riperedis/test-redisrunner.patch
@@ -0,0 +1,18 @@
+Patch-Source: https://sources.debian.org/data/main/liba/libanyevent-riperedis-perl/0.48-1/debian/patches/01_testsuite
+
+Reference: https://github.com/iph0/AnyEvent-RipeRedis/issues/3
+--
+
+Index: libanyevent-riperedis-perl-0.48/t/tlib/Test/RedisRunner.pm
+===================================================================
+--- libanyevent-riperedis-perl-0.48.orig/t/tlib/Test/RedisRunner.pm 2021-05-24 23:54:19.000000000 +1000
++++ libanyevent-riperedis-perl-0.48/t/tlib/Test/RedisRunner.pm 2023-04-27 10:49:08.741102460 +1000
+@@ -94,7 +94,7 @@
+
+ # confirmed this message is included from v1.3.6 (older version in
+ # git repo) to current HEAD (2012-07-30)
+- if ( $log =~ /The server is now ready to accept connections/ ) {
++ if ( $log =~ /[rR]eady to accept connections/ ) {
+ $ready = 1;
+ last;
+ }
diff --git a/testing/perl-anyevent-xmpp/APKBUILD b/testing/perl-anyevent-xmpp/APKBUILD
new file mode 100644
index 00000000000..d9dd188f27f
--- /dev/null
+++ b/testing/perl-anyevent-xmpp/APKBUILD
@@ -0,0 +1,46 @@
+# Automatically generated by apkbuild-cpan, template 3
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-anyevent-xmpp
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=AnyEvent-XMPP
+pkgver=0.55
+pkgrel=0
+pkgdesc="AnyEvent implementation of the XMPP Protocol"
+url="https://metacpan.org/release/AnyEvent-XMPP/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="
+ perl perl-anyevent perl-authen-sasl perl-net-libidn perl-net-ssleay
+ perl-object-event perl-xml-parser perl-xml-writer
+ "
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/M/MS/MSTPLBG/AnyEvent-XMPP-$pkgver.tar.gz
+ delivery-receipt-1.patch
+ delivery-receipt-2.patch
+ doc-typo-fix.patch
+ "
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+ find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
+}
+
+sha512sums="
+a4e952e91771bd446c53f26aaf54099a53c475d2f20945f05d00f036388afc323108e9e3bbc4fa56dfde579e538538d845ba308d426d35bdc50054246e9e8d1f AnyEvent-XMPP-0.55.tar.gz
+875f0487b1a07e3a410a9f28e7206e8815f45eca8c82b37dd6d16c28126c7ea33a9c9d3382fecd3cc5f7627196ce41a86ef8546e12d5a0a05d32e6f3e567246e delivery-receipt-1.patch
+67b6c9c44c9e4f30e9351beb22135ca288acd410a6245c824b44fea3d6fad5ae358f86c436f618f3685ec94bf7b103e813329fbb92cec9c4a9d52295acda9615 delivery-receipt-2.patch
+3d4e6bad56a8a0b7e849ded903e5e9d339debcac89524783d3a6ae4a567b91ee1dfad49f97fb45433b4dbc1c7c28a548e938b9ff04503f2e4434fd421b575b32 doc-typo-fix.patch
+"
diff --git a/testing/perl-anyevent-xmpp/delivery-receipt-1.patch b/testing/perl-anyevent-xmpp/delivery-receipt-1.patch
new file mode 100644
index 00000000000..2895890d095
--- /dev/null
+++ b/testing/perl-anyevent-xmpp/delivery-receipt-1.patch
@@ -0,0 +1,45 @@
+Patch-Source: https://github.com/AnyEvent-XMPP/AnyEvent-XMPP/commit/9106dcd0a294dd6329d5e0883da757a1da176c0a.patch
+--
+From 9106dcd0a294dd6329d5e0883da757a1da176c0a Mon Sep 17 00:00:00 2001
+From: jlfranklin <franklin@sentaidigital.com>
+Date: Mon, 9 May 2016 10:28:04 -0400
+Subject: [PATCH] Always send a delivery receipt request, but only re-send the
+ message if we know they support receipts. (#7)
+
+---
+ lib/AnyEvent/XMPP/Ext/Receipts.pm | 15 ++-------------
+ 1 file changed, 2 insertions(+), 13 deletions(-)
+
+diff --git a/lib/AnyEvent/XMPP/Ext/Receipts.pm b/lib/AnyEvent/XMPP/Ext/Receipts.pm
+index 82c2cbe..ebee4fb 100644
+--- a/lib/AnyEvent/XMPP/Ext/Receipts.pm
++++ b/lib/AnyEvent/XMPP/Ext/Receipts.pm
+@@ -168,18 +168,6 @@ sub init {
+ ext_before_send_message_hook => sub {
+ my ($self, $con, $id, $to, $type, $attrs, $create_cb) = @_;
+
+- # We can only handle full jids as per XEP-0184 5.1:
+- # "If the sender knows only the recipient's bare JID, it cannot
+- # cannot determine [...] whether the intended recipient supports
+- # the Message Delivery Receipts protoocl. [...] the sender MUST NOT
+- # depend on receiving an ack message in reply."
+- # If we can’t rely on ack messages, receipts are useless.
+- return if is_bare_jid($to);
+-
+- # If we have already figured out that the recipient does not
+- # support message receipts, sending them (and especially waiting
+- # for acknowledge) is pointless.
+- return if exists($supports_receipts{$to}) && !$supports_receipts{$to};
+
+ # If this is a message receipt (sent by us), do not add a receipt
+ # request, that might lead to an endless loop.
+@@ -200,7 +188,8 @@ sub init {
+ $w->endTag;
+ };
+
+- if ($self->{auto_resend} > 0) {
++ # Only resend when we know they support delivery receipts
++ if (exists($supports_receipts{$to}) && !$supports_receipts{$to} && ($self->{auto_resend} > 0)) {
+ print "(xep0184) expecting reply within " . $self->{auto_resend} . "s\n" if $self->{debug};
+ # This timer will be deleted when the recipient acknowledges the
+ # message. Otherwise, it re-sends the message.
diff --git a/testing/perl-anyevent-xmpp/delivery-receipt-2.patch b/testing/perl-anyevent-xmpp/delivery-receipt-2.patch
new file mode 100644
index 00000000000..da1cca122bf
--- /dev/null
+++ b/testing/perl-anyevent-xmpp/delivery-receipt-2.patch
@@ -0,0 +1,24 @@
+Patch-Source: https://github.com/AnyEvent-XMPP/AnyEvent-XMPP/commit/23648ed086730064776a325055e3ff5fa75ad3b2.patch
+--
+From 23648ed086730064776a325055e3ff5fa75ad3b2 Mon Sep 17 00:00:00 2001
+From: jlfranklin <franklin@sentaidigital.com>
+Date: Mon, 9 May 2016 10:28:25 -0400
+Subject: [PATCH] Generate an event from the XMPP Connection object when a
+ delivery receipt comes in. (#9)
+
+---
+ lib/AnyEvent/XMPP/Ext/Receipts.pm | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/lib/AnyEvent/XMPP/Ext/Receipts.pm b/lib/AnyEvent/XMPP/Ext/Receipts.pm
+index ebee4fb..3fb1c3c 100644
+--- a/lib/AnyEvent/XMPP/Ext/Receipts.pm
++++ b/lib/AnyEvent/XMPP/Ext/Receipts.pm
+@@ -133,6 +133,7 @@ sub init {
+ # supports receipts.
+ $supports_receipts{$node->attr('from')} = 1;
+ $self->stop_event;
++ $con->event (delivery_receipt => $self, $node);
+ }
+
+ # Figure out if this is a message which requests a receipt, such as
diff --git a/testing/perl-anyevent-xmpp/doc-typo-fix.patch b/testing/perl-anyevent-xmpp/doc-typo-fix.patch
new file mode 100644
index 00000000000..74dd8957b35
--- /dev/null
+++ b/testing/perl-anyevent-xmpp/doc-typo-fix.patch
@@ -0,0 +1,24 @@
+Patch-Source: https://github.com/AnyEvent-XMPP/AnyEvent-XMPP/commit/25f2a24da601b798397aea1469486cd55b0ca403.patch
+--
+From 25f2a24da601b798397aea1469486cd55b0ca403 Mon Sep 17 00:00:00 2001
+From: Aleksei Papulovskii <a@c17.nl>
+Date: Fri, 12 Sep 2014 12:47:14 +0200
+Subject: [PATCH] Pubsub unsubscribe doc typo fix
+
+---
+ lib/AnyEvent/XMPP/Ext/Pubsub.pm | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/lib/AnyEvent/XMPP/Ext/Pubsub.pm b/lib/AnyEvent/XMPP/Ext/Pubsub.pm
+index 0c2d8f2..c38a80c 100644
+--- a/lib/AnyEvent/XMPP/Ext/Pubsub.pm
++++ b/lib/AnyEvent/XMPP/Ext/Pubsub.pm
+@@ -170,7 +170,7 @@ sub subscribe_node {
+ );
+ }
+
+-=item B<unsubscribe_node>($con, $uri, $bc)>
++=item B<unsubscribe_node($con, $uri, $cb)>
+ C<$con> is the connection already established,
+ C<$uri> is the name of the node to be created
+ C<$cb> is the callback
diff --git a/testing/perl-archive-cpio/APKBUILD b/testing/perl-archive-cpio/APKBUILD
deleted file mode 100644
index a7e3da7edde..00000000000
--- a/testing/perl-archive-cpio/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Automatically generated by apkbuild-cpan, template 3
-# Contributor: Sean <nantes@albinodrought.com>
-# Maintainer: Sean <nantes@albinodrought.com>
-pkgname=perl-archive-cpio
-#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
-_pkgreal=Archive-Cpio
-pkgver=0.10
-pkgrel=0
-pkgdesc="module for manipulations of cpio archives"
-url="https://metacpan.org/release/Archive-Cpio/"
-arch="noarch"
-license="GPL-1.0-or-later OR Artistic-1.0-Perl"
-depends="perl"
-makedepends="perl-dev"
-subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/P/PI/PIXEL/Archive-Cpio-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgreal-$pkgver"
-
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL INSTALLDIRS=vendor
- make
-}
-
-check() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make test
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
-}
-
-sha512sums="
-c828f6f199de0efd7c7fbe2c3d4c5304df3c714720d91dd9a7d76e2c8d16bab1b92fc93a0b8afe78bd89b043ce7684c31d54b13c4e840f68ee040ca7bff43c3d Archive-Cpio-0.10.tar.gz
-"
diff --git a/testing/perl-archive-extract/APKBUILD b/testing/perl-archive-extract/APKBUILD
index 5ebead72376..84cd9311793 100644
--- a/testing/perl-archive-extract/APKBUILD
+++ b/testing/perl-archive-extract/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-archive-extract
_pkgreal=Archive-Extract
pkgver=0.88
-pkgrel=0
+pkgrel=1
pkgdesc="Generic archive extracting mechanism"
url="https://metacpan.org/release/Archive-Extract"
arch="noarch"
diff --git a/testing/perl-autobox/APKBUILD b/testing/perl-autobox/APKBUILD
index b5c99f9cf33..20a57d9b0e1 100644
--- a/testing/perl-autobox/APKBUILD
+++ b/testing/perl-autobox/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-autobox
_pkgreal=autobox
pkgver=3.0.1
-pkgrel=6
+pkgrel=8
pkgdesc="call methods on native types"
url="https://metacpan.org/release/autobox"
arch="all"
diff --git a/testing/perl-barcode-zbar/APKBUILD b/testing/perl-barcode-zbar/APKBUILD
index f9248280bf8..26fd135808f 100644
--- a/testing/perl-barcode-zbar/APKBUILD
+++ b/testing/perl-barcode-zbar/APKBUILD
@@ -5,7 +5,7 @@ pkgname=perl-barcode-zbar
#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
_pkgreal=Barcode-ZBar
pkgver=0.10
-pkgrel=0
+pkgrel=2
pkgdesc="Perl module for Barcode-ZBar"
url="https://metacpan.org/release/Barcode-ZBar/"
arch="all"
diff --git a/testing/perl-bind-config-parser/APKBUILD b/testing/perl-bind-config-parser/APKBUILD
index 45f28fd13ae..7376b9ddb4c 100644
--- a/testing/perl-bind-config-parser/APKBUILD
+++ b/testing/perl-bind-config-parser/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-bind-config-parser
_pkgreal=BIND-Config-Parser
pkgver=0.01
-pkgrel=4
+pkgrel=5
pkgdesc="Parse BIND Config file"
url="https://metacpan.org/release/BIND-Config-Parser"
arch="noarch"
diff --git a/testing/perl-bsd-resource/APKBUILD b/testing/perl-bsd-resource/APKBUILD
index 05fe1bb7c33..f511eccbcf0 100644
--- a/testing/perl-bsd-resource/APKBUILD
+++ b/testing/perl-bsd-resource/APKBUILD
@@ -1,33 +1,29 @@
-# Automatically generated by apkbuild-cpan, template 1
+# Automatically generated by apkbuild-cpan, template 3
# Contributor: Valery Kartel <valery.kartel@gmail.com>
-# Maintainer: Valery Kartel <valery.kartel@gmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=perl-bsd-resource
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
_pkgreal=BSD-Resource
pkgver=1.2911
-pkgrel=6
+pkgrel=9
pkgdesc="Perl extension implements the BSD process resource limit functions"
-url="https://metacpan.org/release/BSD-Resource"
+url="https://metacpan.org/release/BSD-Resource/"
arch="all"
-license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+license="Artistic-2.0 OR LGPL-2.0"
+depends="perl"
makedepends="perl-dev"
subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/J/JH/JHI/$_pkgreal-$pkgver.tar.gz"
-
+source="https://cpan.metacpan.org/authors/id/J/JH/JHI/BSD-Resource-$pkgver.tar.gz"
builddir="$srcdir/$_pkgreal-$pkgver"
-prepare() {
- default_prepare
-
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
-}
-
build() {
export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL INSTALLDIRS=vendor
make
}
check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
make test
}
@@ -36,4 +32,6 @@ package() {
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-sha512sums="d0032d41c7c0468ed1c6d8f57b885f6cb97a5039d754c8cb60b2067daedaf53bd15fb6561a3d0f828df16dfa5417f663b8065ba65f4fea16dc9262728b3b6b85 BSD-Resource-1.2911.tar.gz"
+sha512sums="
+d0032d41c7c0468ed1c6d8f57b885f6cb97a5039d754c8cb60b2067daedaf53bd15fb6561a3d0f828df16dfa5417f663b8065ba65f4fea16dc9262728b3b6b85 BSD-Resource-1.2911.tar.gz
+"
diff --git a/testing/perl-bytes-random-secure/APKBUILD b/testing/perl-bytes-random-secure/APKBUILD
new file mode 100644
index 00000000000..2ebffba20b2
--- /dev/null
+++ b/testing/perl-bytes-random-secure/APKBUILD
@@ -0,0 +1,38 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-bytes-random-secure
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Bytes-Random-Secure
+pkgver=0.29
+pkgrel=0
+pkgdesc="Perl extension to generate cryptographically-secure random bytes"
+url="https://metacpan.org/release/Bytes-Random-Secure/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-crypt-random-seed perl-math-random-isaac"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/D/DA/DAVIDO/Bytes-Random-Secure-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+72faf9e9fff1cc9641845d47b8dd1efb39861b4015246b169167d4f6050998e91d30b53d6a3e08daf91a838fcf29a05042073064204270de05b2f2ca9990fe64 Bytes-Random-Secure-0.29.tar.gz
+"
diff --git a/testing/perl-cache-lru/APKBUILD b/testing/perl-cache-lru/APKBUILD
new file mode 100644
index 00000000000..c8643528041
--- /dev/null
+++ b/testing/perl-cache-lru/APKBUILD
@@ -0,0 +1,38 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-cache-lru
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Cache-LRU
+pkgver=0.04
+pkgrel=0
+pkgdesc="Simple, fast implementation of LRU cache in pure perl"
+url="https://metacpan.org/release/Cache-LRU/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/K/KA/KAZUHO/Cache-LRU-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+9fd4f56da78e4b8e291c4291ccb2e34bc50f7294fc8ff1d942d21fb116a5613c96f8e55ef9bb95a7ae3e810e791d3edf2f9f15063fd0fb85414a8e8964e88118 Cache-LRU-0.04.tar.gz
+"
diff --git a/testing/perl-cairo-gobject/APKBUILD b/testing/perl-cairo-gobject/APKBUILD
index d148c5a12af..dbaed32f7f6 100644
--- a/testing/perl-cairo-gobject/APKBUILD
+++ b/testing/perl-cairo-gobject/APKBUILD
@@ -5,14 +5,13 @@ pkgname=perl-cairo-gobject
#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
_pkgreal=Cairo-GObject
pkgver=1.005
-pkgrel=1
+pkgrel=3
pkgdesc="Integrate Cairo into the Glib type system"
url="https://metacpan.org/release/Cairo-GObject/"
arch="all"
license="GPL-2.0-or-later"
depends="perl perl-cairo perl-extutils-depends perl-extutils-pkgconfig perl-glib"
-makedepends="perl-dev perl-cairo perl-extutils-pkgconfig perl-glib perl-extutils-depends
- cairo-dev"
+makedepends="perl-dev cairo-dev"
subpackages="$pkgname-doc"
source="https://cpan.metacpan.org/authors/id/X/XA/XAOC/Cairo-GObject-$pkgver.tar.gz"
builddir="$srcdir/$_pkgreal-$pkgver"
diff --git a/testing/perl-cairo/APKBUILD b/testing/perl-cairo/APKBUILD
index c19c15ec8bf..7b47e4728b8 100644
--- a/testing/perl-cairo/APKBUILD
+++ b/testing/perl-cairo/APKBUILD
@@ -5,7 +5,7 @@ pkgname=perl-cairo
#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
_pkgreal=Cairo
pkgver=1.109
-pkgrel=1
+pkgrel=3
pkgdesc="Perl interface to the cairo 2d vector graphics library"
url="https://metacpan.org/release/Cairo/"
arch="all"
diff --git a/testing/perl-cgi-expand/APKBUILD b/testing/perl-cgi-expand/APKBUILD
index c9535c44d1b..3dc4898216a 100644
--- a/testing/perl-cgi-expand/APKBUILD
+++ b/testing/perl-cgi-expand/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-cgi-expand
_pkgreal=CGI-Expand
pkgver=2.05
-pkgrel=3
+pkgrel=4
pkgdesc="convert flat hash to nested data using TT2's dot convention"
url="https://metacpan.org/release/CGI-Expand"
arch="noarch"
diff --git a/testing/perl-check-unitcheck/APKBUILD b/testing/perl-check-unitcheck/APKBUILD
new file mode 100644
index 00000000000..3568c23dceb
--- /dev/null
+++ b/testing/perl-check-unitcheck/APKBUILD
@@ -0,0 +1,42 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-check-unitcheck
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Check-UnitCheck
+pkgver=0.13
+pkgrel=0
+pkgdesc="Use best of CHECK or UNITCHECK"
+url="https://metacpan.org/release/Check-UnitCheck/"
+arch="all"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl"
+makedepends="perl-dev"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/A/AJ/AJGOUGH/Check-UnitCheck-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+
+ cd "$pkgdir"
+ rm -v usr/lib/perl5/vendor_perl/Check/example.pl
+}
+
+sha512sums="
+94a74766276fb37d97459bbecdfd063ab703850ad4759818da804e637f35b44cbdf6c06678ec6aaa9382e321c479d7167c3fd5d7a5e8144185e1d3764473cd6c Check-UnitCheck-0.13.tar.gz
+"
diff --git a/testing/perl-class-accessor-grouped/APKBUILD b/testing/perl-class-accessor-grouped/APKBUILD
index c3e30ad6d93..6ef45aac101 100644
--- a/testing/perl-class-accessor-grouped/APKBUILD
+++ b/testing/perl-class-accessor-grouped/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-class-accessor-grouped
_pkgreal=Class-Accessor-Grouped
pkgver=0.10014
-pkgrel=1
+pkgrel=2
pkgdesc="Lets you build groups of accessors"
url="https://metacpan.org/release/Class-Accessor-Grouped"
arch="noarch"
diff --git a/testing/perl-class-c3-componentised/APKBUILD b/testing/perl-class-c3-componentised/APKBUILD
index c872797977a..487eccec16e 100644
--- a/testing/perl-class-c3-componentised/APKBUILD
+++ b/testing/perl-class-c3-componentised/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-class-c3-componentised
_pkgreal=Class-C3-Componentised
pkgver=1.001002
-pkgrel=1
+pkgrel=2
pkgdesc="Load mix-ins or components to your C3-based class"
url="https://metacpan.org/release/Class-C3-Componentised"
arch="noarch"
diff --git a/testing/perl-class-c3/APKBUILD b/testing/perl-class-c3/APKBUILD
index 097e54cac16..9c25abcacf0 100644
--- a/testing/perl-class-c3/APKBUILD
+++ b/testing/perl-class-c3/APKBUILD
@@ -5,7 +5,7 @@ pkgname=perl-class-c3
#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
_pkgreal=Class-C3
pkgver=0.35
-pkgrel=0
+pkgrel=1
pkgdesc="A pragma to use the C3 method resolution order algorithm"
url="https://metacpan.org/release/Class-C3/"
arch="noarch"
diff --git a/testing/perl-class-inner/APKBUILD b/testing/perl-class-inner/APKBUILD
index a27b6530e60..24a51a49839 100644
--- a/testing/perl-class-inner/APKBUILD
+++ b/testing/perl-class-inner/APKBUILD
@@ -1,29 +1,29 @@
-# Automatically generated by apkbuild-cpan, template 2
+# Automatically generated by apkbuild-cpan, template 3
# Contributor: Valery Kartel <valery.kartel@gmail.com>
-# Maintainer: Valery Kartel <valery.kartel@gmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=perl-class-inner
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
_pkgreal=Class-Inner
pkgver=0.200001
-pkgrel=3
+pkgrel=5
pkgdesc="An implementation of Java like inner classes"
url="https://metacpan.org/release/Class-Inner/"
arch="noarch"
license="GPL-1.0-or-later OR Artistic-1.0-Perl"
depends="perl"
subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/A/AR/ARUNBEAR/$_pkgreal-$pkgver.tar.gz"
+source="https://cpan.metacpan.org/authors/id/A/AR/ARUNBEAR/Class-Inner-$pkgver.tar.gz"
builddir="$srcdir/$_pkgreal-$pkgver"
-prepare() {
- default_prepare
-
+build() {
export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL INSTALLDIRS=vendor
+ make
}
-build() {
+check() {
export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make
+ make test
}
package() {
@@ -31,9 +31,6 @@ package() {
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-check() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make test
-}
-
-sha512sums="308d688577ac9eeea14bd665269d4f32f5f9c4be9ac47460c0d4be4248c3eaabb9eb51e9a840a5e8dab58e35cf10c831b55321fdc5a2c83e04eec88ba2b8f905 Class-Inner-0.200001.tar.gz"
+sha512sums="
+308d688577ac9eeea14bd665269d4f32f5f9c4be9ac47460c0d4be4248c3eaabb9eb51e9a840a5e8dab58e35cf10c831b55321fdc5a2c83e04eec88ba2b8f905 Class-Inner-0.200001.tar.gz
+"
diff --git a/testing/perl-class-xsaccessor/APKBUILD b/testing/perl-class-xsaccessor/APKBUILD
deleted file mode 100644
index f228bbde123..00000000000
--- a/testing/perl-class-xsaccessor/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Automatically generated by apkbuild-cpan, template 1
-# Contributor: Francesco Colista <fcolista@alpinelinux.org>
-# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
-pkgname=perl-class-xsaccessor
-_pkgreal=Class-XSAccessor
-pkgver=1.19
-pkgrel=10
-pkgdesc="Generate fast XS accessors without runtime compilation"
-url="https://metacpan.org/release/Class-XSAccessor"
-arch="all"
-license="GPL-1.0-or-later OR Artistic-1.0-Perl"
-makedepends="perl-dev"
-subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/S/SM/SMUELLER/$_pkgreal-$pkgver.tar.gz"
-
-builddir="$srcdir/$_pkgreal-$pkgver"
-
-prepare() {
- default_prepare
-
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
-}
-
-build() {
- make
-}
-
-check() {
- make test
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
-}
-
-sha512sums="58855bb2108b60cc90ae1d1c4d6a011da7bac2d063c7c953ff8610ae164ba60731a664f0fbddf148e1eabb60042913a17633a9c9a8936a23a59130b381bf63f8 Class-XSAccessor-1.19.tar.gz"
diff --git a/testing/perl-clone-choose/APKBUILD b/testing/perl-clone-choose/APKBUILD
index c6d64b048ac..41d66a8f8fc 100644
--- a/testing/perl-clone-choose/APKBUILD
+++ b/testing/perl-clone-choose/APKBUILD
@@ -3,7 +3,7 @@
pkgname=perl-clone-choose
_pkgreal=Clone-Choose
pkgver=0.010
-pkgrel=3
+pkgrel=4
pkgdesc="Choose appropriate clone utility"
url="https://metacpan.org/release/Clone-Choose"
arch="noarch"
diff --git a/testing/perl-clone-pp/APKBUILD b/testing/perl-clone-pp/APKBUILD
index a10cdc77b25..d1a60c3d6af 100644
--- a/testing/perl-clone-pp/APKBUILD
+++ b/testing/perl-clone-pp/APKBUILD
@@ -5,7 +5,7 @@ pkgname=perl-clone-pp
#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
_pkgreal=Clone-PP
pkgver=1.08
-pkgrel=0
+pkgrel=1
pkgdesc="Perl module for Clone-PP"
url="https://metacpan.org/release/Clone-PP/"
arch="noarch"
diff --git a/testing/perl-color-ansi-util/APKBUILD b/testing/perl-color-ansi-util/APKBUILD
new file mode 100644
index 00000000000..828b67e02e6
--- /dev/null
+++ b/testing/perl-color-ansi-util/APKBUILD
@@ -0,0 +1,38 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-color-ansi-util
+pkgver=0.165
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Color-ANSI-Util
+pkgdesc="Routines for dealing with ANSI colors"
+url="https://metacpan.org/release/Color-ANSI-Util/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-color-rgb-util"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/P/PE/PERLANCAR/Color-ANSI-Util-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+219da41d94882cf2b31e91a4c117d6520832b2410cf96669d0afadb50cbcd85902f7513df1b7908c45cfafa6122e9c75641ba2d58bfc4444da78d1899c8bc62f Color-ANSI-Util-0.165.tar.gz
+"
diff --git a/testing/perl-color-rgb-util/APKBUILD b/testing/perl-color-rgb-util/APKBUILD
new file mode 100644
index 00000000000..2207468d4e4
--- /dev/null
+++ b/testing/perl-color-rgb-util/APKBUILD
@@ -0,0 +1,39 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-color-rgb-util
+pkgver=0.607
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Color-RGB-Util
+pkgdesc="Utilities related to RGB colors"
+url="https://metacpan.org/release/Color-RGB-Util/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl"
+checkdepends="perl-test-exception perl-test-randomresult"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/P/PE/PERLANCAR/Color-RGB-Util-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+1c38fe352918406071b63db389ce986e88619bcaac5c1a25ec061c352db7bd9e00db7951d4031ada1d67ec119b7f4a73d761aa484bbff980c4ed7045987d3aa1 Color-RGB-Util-0.607.tar.gz
+"
diff --git a/testing/perl-conf-libconfig/APKBUILD b/testing/perl-conf-libconfig/APKBUILD
index 2dfdc9349bf..285d2d4884a 100644
--- a/testing/perl-conf-libconfig/APKBUILD
+++ b/testing/perl-conf-libconfig/APKBUILD
@@ -4,8 +4,8 @@
pkgname=perl-conf-libconfig
#_pkgreal is used by apkbuild-(m)cpan to find modules at MetaCpan
_pkgreal=Conf-Libconfig
-pkgver=0.100
-pkgrel=6
+pkgver=1.0.0
+pkgrel=1
pkgdesc="Perl extension for libconfig"
url="https://metacpan.org/release/Conf-Libconfig/"
arch="all"
@@ -33,4 +33,6 @@ package() {
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-sha512sums="52f652bd55131b0357aae6cc8f83811a4ceb5ec005977765ed70e5cb08f828c789d8bcbe247880c1807110b5486915dc90f84d52263b2e7f60adb2ee4654d2a3 Conf-Libconfig-0.100.tar.gz"
+sha512sums="
+3ad7c3fbe82adab7816fa6b1a8445df279f4d7c58ba72e88e5afcf7a85d11fa764cb30d3aa0e6a19ae7c6e96eba2544c8289a6bb06706310e26ae6a41fd1ca84 Conf-Libconfig-1.0.0.tar.gz
+"
diff --git a/testing/perl-config-ini-reader-ordered/APKBUILD b/testing/perl-config-ini-reader-ordered/APKBUILD
deleted file mode 100644
index 5df25eded7d..00000000000
--- a/testing/perl-config-ini-reader-ordered/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Automatically generated by apkbuild-cpan, template 3
-# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer: rubicon <rubicon@mailo.com>
-pkgname=perl-config-ini-reader-ordered
-#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
-_pkgreal=Config-INI-Reader-Ordered
-pkgver=0.021
-pkgrel=0
-pkgdesc="INI-file parser that returns sections in order"
-url="https://metacpan.org/release/Config-INI-Reader-Ordered/"
-arch="noarch"
-license="GPL-1.0-or-later OR Artistic-1.0-Perl"
-depends="perl perl-config-ini"
-makedepends="perl-dev"
-subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/R/RJ/RJBS/Config-INI-Reader-Ordered-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgreal-$pkgver"
-
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL INSTALLDIRS=vendor
- make
-}
-
-check() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make test
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
-}
-
-sha512sums="
-b03fd1c94634b23c1f174c92fb6603bd8e74a9dc4833df44cefa2308c2d7acfed99eb1705ab4098772f797d669c8547719f1b55cd3bd680894e60af7c1d39063 Config-INI-Reader-Ordered-0.021.tar.gz
-"
diff --git a/testing/perl-config-ini/APKBUILD b/testing/perl-config-ini/APKBUILD
deleted file mode 100644
index 2062eb83d04..00000000000
--- a/testing/perl-config-ini/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Automatically generated by apkbuild-cpan, template 3
-# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer: rubicon <rubicon@mailo.com>
-pkgname=perl-config-ini
-#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
-_pkgreal=Config-INI
-pkgver=0.027
-pkgrel=0
-pkgdesc="Simple INI-file format handling"
-url="https://metacpan.org/release/Config-INI/"
-arch="noarch"
-license="GPL-1.0-or-later OR Artistic-1.0-Perl"
-depends="perl perl-mixin-linewise"
-makedepends="perl-dev"
-subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/R/RJ/RJBS/Config-INI-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgreal-$pkgver"
-
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL INSTALLDIRS=vendor
- make
-}
-
-check() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make test
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
-}
-
-sha512sums="
-c0a7d363550cac186b639555e63ac27d613cb2e63d57786aabe63dd65bcb0e2043c3bf80f820bfd975d7111d14567af466e82ed35f9cc2294bfe78ef2a519516 Config-INI-0.027.tar.gz
-"
diff --git a/testing/perl-constant-defer/APKBUILD b/testing/perl-constant-defer/APKBUILD
index c081ed1e042..6d1fc45fac1 100644
--- a/testing/perl-constant-defer/APKBUILD
+++ b/testing/perl-constant-defer/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-constant-defer
_pkgreal=constant-defer
pkgver=6
-pkgrel=3
+pkgrel=5
pkgdesc="Constant subs with deferred value calculation."
url="https://metacpan.org/release/constant-defer"
arch="noarch"
@@ -12,17 +12,16 @@ license="open_source"
depends="perl"
subpackages="$pkgname-doc"
source="https://cpan.metacpan.org/authors/id/K/KR/KRYDE/$_pkgreal-$pkgver.tar.gz"
-
builddir="$srcdir/$_pkgreal-$pkgver"
-prepare() {
+build() {
export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
}
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make && make test
+check() {
+ make test
}
package() {
@@ -30,4 +29,6 @@ package() {
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-sha512sums="902916d32ed11737d34f8764af171ba1731de807ffbfd62e342f83bef05ab0a34ddaeec3f2c9b41814877b0568fc3e09fbf26e7ce2cd4a3dd6eeba75e6755b5f constant-defer-6.tar.gz"
+sha512sums="
+902916d32ed11737d34f8764af171ba1731de807ffbfd62e342f83bef05ab0a34ddaeec3f2c9b41814877b0568fc3e09fbf26e7ce2cd4a3dd6eeba75e6755b5f constant-defer-6.tar.gz
+"
diff --git a/testing/perl-constant-generate/APKBUILD b/testing/perl-constant-generate/APKBUILD
index 2070c46e4a8..eef78c8284c 100644
--- a/testing/perl-constant-generate/APKBUILD
+++ b/testing/perl-constant-generate/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-constant-generate
_pkgreal=Constant-Generate
pkgver=0.17
-pkgrel=3
+pkgrel=5
pkgdesc="Common tasks for symbolic constants"
url="https://metacpan.org/release/Constant-Generate"
arch="noarch"
@@ -12,17 +12,16 @@ license="GPL-1.0-or-later OR Artistic-1.0-Perl"
depends="perl"
subpackages="$pkgname-doc"
source="https://cpan.metacpan.org/authors/id/M/MN/MNUNBERG/$_pkgreal-$pkgver.tar.gz"
-
builddir="$srcdir/$_pkgreal-$pkgver"
-prepare() {
+build() {
export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
}
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make && make test
+check() {
+ make test
}
package() {
@@ -30,4 +29,6 @@ package() {
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-sha512sums="6984d101ec26e7d2c35b45124a6d0240910acd30f47b9947a574e3dcd5d9365bb2d1773daae30c61237b903da929b564272aaf505f446a5e7b24a50970335a21 Constant-Generate-0.17.tar.gz"
+sha512sums="
+6984d101ec26e7d2c35b45124a6d0240910acd30f47b9947a574e3dcd5d9365bb2d1773daae30c61237b903da929b564272aaf505f446a5e7b24a50970335a21 Constant-Generate-0.17.tar.gz
+"
diff --git a/testing/perl-context-preserve/APKBUILD b/testing/perl-context-preserve/APKBUILD
index f8d675f457b..bbf78a323f2 100644
--- a/testing/perl-context-preserve/APKBUILD
+++ b/testing/perl-context-preserve/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-context-preserve
_pkgreal=Context-Preserve
pkgver=0.03
-pkgrel=3
+pkgrel=4
pkgdesc="Run code after a subroutine call, preserving the context"
url="https://metacpan.org/release/Context-Preserve"
arch="noarch"
diff --git a/testing/perl-cpan-changes/APKBUILD b/testing/perl-cpan-changes/APKBUILD
index fa5ef57905a..c1ccc2f0aec 100644
--- a/testing/perl-cpan-changes/APKBUILD
+++ b/testing/perl-cpan-changes/APKBUILD
@@ -1,34 +1,45 @@
-# Automatically generated by apkbuild-cpan, template 1
+# Automatically generated by apkbuild-cpan, template 4
# Contributor: Francesco Colista <fcolista@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=perl-cpan-changes
+pkgver=0.500003
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
_pkgreal=CPAN-Changes
-pkgver=0.400002
-pkgrel=3
-pkgdesc="Read and write Changes files"
-url="https://metacpan.org/release/CPAN-Changes"
+pkgdesc="Parser for CPAN style change logs"
+url="https://metacpan.org/release/CPAN-Changes/"
arch="noarch"
license="GPL-1.0-or-later OR Artistic-1.0-Perl"
-depends="perl"
+depends="perl perl-module-runtime perl-moo perl-sub-quote perl-type-tiny"
subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/H/HA/HAARG/$_pkgreal-$pkgver.tar.gz"
+source="https://cpan.metacpan.org/authors/id/H/HA/HAARG/CPAN-Changes-$pkgver.tar.gz"
builddir="$srcdir/$_pkgreal-$pkgver"
-prepare() {
- default_prepare
-
+build() {
export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
}
-build() {
+check() {
export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make && make test
+ make test
}
package() {
make DESTDIR="$pkgdir" install
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-sha512sums="d359073d9d5ed2126835d4895c1ee5288cc09e72202ba77441bb25cf13e9cd0f16d4040b7e2cf1785efd6e8ccbe7908415fb4fefeebe9c0548d838d2ac850dfb CPAN-Changes-0.400002.tar.gz"
+doc() {
+ local file; find "$pkgdir" -name "*.pod" | while read -r file; do
+ amove "${file#"$pkgdir"}"
+ done
+ default_doc
+}
+
+sha512sums="
+f5a9b088a76579288d69b963e344bf0d3d17d90b2600770bf2b2d74103b960ba71b16a22e0f3279c45474f62f639899611fbd5e25e3d659efa52c7995037b790 CPAN-Changes-0.500003.tar.gz
+"
diff --git a/testing/perl-crypt-argon2/APKBUILD b/testing/perl-crypt-argon2/APKBUILD
deleted file mode 100644
index a5a18dd3471..00000000000
--- a/testing/perl-crypt-argon2/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Automatically generated by apkbuild-cpan, template 3
-# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer: rubicon <rubicon@mailo.com>
-pkgname=perl-crypt-argon2
-#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
-_pkgreal=Crypt-Argon2
-pkgver=0.012
-pkgrel=0
-pkgdesc="Perl interface to the Argon2 key derivation functions"
-url="https://metacpan.org/release/Crypt-Argon2/"
-arch="all"
-license="unrestricted"
-depends="perl"
-makedepends="perl-dev perl-module-build"
-subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/L/LE/LEONT/Crypt-Argon2-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgreal-$pkgver"
-
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- perl Build.PL --installdirs=vendor
- ./Build
-}
-
-check() {
- ./Build test
-}
-
-package() {
- ./Build install --destdir="$pkgdir"
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
-}
-
-sha512sums="
-1a86d6665fd6b78b111c0c0c1c3b3265c16db839605842c0f677f7350f64662770e326698dfda11673287a0b2cd2597b5cc6f8a57236534ce8358ac8aaa4ae1e Crypt-Argon2-0.012.tar.gz
-"
diff --git a/testing/perl-crypt-bcrypt/APKBUILD b/testing/perl-crypt-bcrypt/APKBUILD
deleted file mode 100644
index d99a71a8cd7..00000000000
--- a/testing/perl-crypt-bcrypt/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Automatically generated by apkbuild-cpan, template 3
-# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer: rubicon <rubicon@mailo.com>
-pkgname=perl-crypt-bcrypt
-#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
-_pkgreal=Crypt-Bcrypt
-pkgver=0.007
-pkgrel=0
-pkgdesc="A modern bcrypt implementation"
-url="https://metacpan.org/release/Crypt-Bcrypt/"
-arch="all"
-license="GPL-1.0-or-later OR Artistic-1.0-Perl"
-depends="perl"
-makedepends="perl-dev"
-subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/L/LE/LEONT/Crypt-Bcrypt-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgreal-$pkgver"
-
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL INSTALLDIRS=vendor
- make
-}
-
-check() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make test
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
-}
-
-sha512sums="
-f2f813ff415b7abf04b75f1534af69bfe6165e4e1361c69b20a4c943bea9f0b94bada77dbfcd3c9986674231b6d55d3c48db9fa2db84c27a77ec9979c656d6c4 Crypt-Bcrypt-0.007.tar.gz
-"
diff --git a/testing/perl-crypt-random-seed/APKBUILD b/testing/perl-crypt-random-seed/APKBUILD
new file mode 100644
index 00000000000..0c2ac7b2e8f
--- /dev/null
+++ b/testing/perl-crypt-random-seed/APKBUILD
@@ -0,0 +1,38 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-crypt-random-seed
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Crypt-Random-Seed
+pkgver=0.03
+pkgrel=0
+pkgdesc="Provide strong randomness for seeding"
+url="https://metacpan.org/release/Crypt-Random-Seed/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/D/DA/DANAJ/Crypt-Random-Seed-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+5ee6ea67c325aa9693c96ef650e3888a599d3d7e25316f869808dc6e06b9dd86f1c200c9097939f74511e2ed59e48df1b28cc96e5f7988076d9f7f5d840a894e Crypt-Random-Seed-0.03.tar.gz
+"
diff --git a/testing/perl-crypt-saltedhash/APKBUILD b/testing/perl-crypt-saltedhash/APKBUILD
index 06fbc0279c2..7a5d6af64d7 100644
--- a/testing/perl-crypt-saltedhash/APKBUILD
+++ b/testing/perl-crypt-saltedhash/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-crypt-saltedhash
_pkgreal=Crypt-SaltedHash
pkgver=0.09
-pkgrel=4
+pkgrel=5
pkgdesc="Perl interface to functions that assist in working with salted hashes"
url="https://metacpan.org/release/Crypt-SaltedHash"
arch="noarch"
diff --git a/testing/perl-crypt-urandom/APKBUILD b/testing/perl-crypt-urandom/APKBUILD
deleted file mode 100644
index c5dd70a3dae..00000000000
--- a/testing/perl-crypt-urandom/APKBUILD
+++ /dev/null
@@ -1,39 +0,0 @@
-# Automatically generated by apkbuild-cpan, template 2
-# Contributor: Timo Teräs <timo.teras@iki.fi>
-# Maintainer: Timo Teräs <timo.teras@iki.fi>
-pkgname=perl-crypt-urandom
-_pkgreal=Crypt-URandom
-pkgver=0.36
-pkgrel=3
-pkgdesc="Provide non blocking randomness"
-url="https://metacpan.org/release/Crypt-URandom"
-arch="noarch"
-license="GPL-1.0-or-later OR Artistic-1.0-Perl"
-depends="perl"
-subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/D/DD/DDICK/$_pkgreal-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgreal-$pkgver"
-
-prepare() {
- default_prepare
-
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
-}
-
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
-}
-
-check() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make test
-}
-
-sha512sums="59e6773d808f34f242f2520ed236faeed804d623fbcf4f1b8e7b39ed215ff1cde9f76ce4a9f5f260dfac42b036229a56cdb49a7f6856d5e943ed4d50e3392adc Crypt-URandom-0.36.tar.gz"
diff --git a/testing/perl-css-object/APKBUILD b/testing/perl-css-object/APKBUILD
new file mode 100644
index 00000000000..a2d555614b5
--- /dev/null
+++ b/testing/perl-css-object/APKBUILD
@@ -0,0 +1,38 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-css-object
+pkgver=0.1.6
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=CSS-Object
+pkgdesc="Object-oriented CSS parser and manipulation interface"
+url="https://metacpan.org/release/CSS-Object/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-devel-confess perl-module-generic perl-want"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/J/JD/JDEGUEST/CSS-Object-v$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-v$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+4f7aeb5086d58a1466b4ac21fd931fdd2d8d11114a8e1b218ccb76c454a5df35e427ae64d1383564ce19aee8c933216d9e4b79303d8c0299eefd95014fd43e2e CSS-Object-v0.1.6.tar.gz
+"
diff --git a/testing/perl-curry/APKBUILD b/testing/perl-curry/APKBUILD
new file mode 100644
index 00000000000..d76ea30738f
--- /dev/null
+++ b/testing/perl-curry/APKBUILD
@@ -0,0 +1,38 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-curry
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=curry
+pkgver=2.000001
+pkgrel=0
+pkgdesc="Create automatic curried method call closures for any class or object"
+url="https://metacpan.org/release/curry/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/M/MS/MSTROUT/curry-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+ed86de9dd5af7a3413d0b601975b3efbbcb72fe8c02ca351afcc3af872a59cd78f5a392dea6e545211a97f9994d0655d3f1787973e9f0bf44aa01db97c9afd76 curry-2.000001.tar.gz
+"
diff --git a/testing/perl-daemon-control/APKBUILD b/testing/perl-daemon-control/APKBUILD
index 111f879fc67..24598d277cd 100644
--- a/testing/perl-daemon-control/APKBUILD
+++ b/testing/perl-daemon-control/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-daemon-control
_pkgreal=Daemon-Control
pkgver=0.001010
-pkgrel=1
+pkgrel=2
pkgdesc="Create init scripts in Perl"
url="https://metacpan.org/release/Daemon-Control"
arch="noarch"
diff --git a/testing/perl-dancer-plugin-auth-extensible/APKBUILD b/testing/perl-dancer-plugin-auth-extensible/APKBUILD
index a3b26e51c91..7372ee361ae 100644
--- a/testing/perl-dancer-plugin-auth-extensible/APKBUILD
+++ b/testing/perl-dancer-plugin-auth-extensible/APKBUILD
@@ -4,12 +4,13 @@
pkgname=perl-dancer-plugin-auth-extensible
_pkgreal=Dancer-Plugin-Auth-Extensible
pkgver=1.00
-pkgrel=3
+pkgrel=5
pkgdesc="extensible authentication framework for Dancer apps"
url="https://metacpan.org/release/Dancer-Plugin-Auth-Extensible"
arch="noarch"
license="GPL-1.0-or-later OR Artistic-1.0-Perl"
depends="perl perl-yaml perl-dancer perl-crypt-saltedhash"
+checkdepends="perl-test-longstring"
subpackages="$pkgname-doc"
source="https://cpan.metacpan.org/authors/id/B/BI/BIGPRESH/$_pkgreal-$pkgver.tar.gz"
builddir="$srcdir/$_pkgreal-$pkgver"
@@ -36,4 +37,6 @@ check() {
make test
}
-sha512sums="e9b84ed97328d4efe53d07eb7d84a82b012a56acd5dc05de025849fe7c40875d3af52a7b1e501cd15eba0fc8b930cac32007daebf4fb75a1aa431af4bbfd1418 Dancer-Plugin-Auth-Extensible-1.00.tar.gz"
+sha512sums="
+e9b84ed97328d4efe53d07eb7d84a82b012a56acd5dc05de025849fe7c40875d3af52a7b1e501cd15eba0fc8b930cac32007daebf4fb75a1aa431af4bbfd1418 Dancer-Plugin-Auth-Extensible-1.00.tar.gz
+"
diff --git a/testing/perl-dancer-plugin-dbic/APKBUILD b/testing/perl-dancer-plugin-dbic/APKBUILD
index 37a3bd1c6d6..c17035bb7fe 100644
--- a/testing/perl-dancer-plugin-dbic/APKBUILD
+++ b/testing/perl-dancer-plugin-dbic/APKBUILD
@@ -4,13 +4,13 @@
pkgname=perl-dancer-plugin-dbic
_pkgreal=Dancer-Plugin-DBIC
pkgver=0.2104
-pkgrel=4
+pkgrel=5
pkgdesc="DBIx::Class interface for Dancer applications"
url="https://metacpan.org/release/Dancer-Plugin-DBIC"
arch="noarch !armv7"
license="GPL-1.0-or-later OR Artistic-1.0-Perl"
depends="perl perl-dancer perl-dbicx-sugar"
-checkdepends="perl-dbd-sqlite perl-dbix-class perl-test-exception perl-dbi perl-test-requires"
+checkdepends="perl-dbd-sqlite perl-dbix-class perl-test-exception perl-dbi perl-test-requires perl-test-longstring"
subpackages="$pkgname-doc"
source="https://cpan.metacpan.org/authors/id/I/IR/IRONCAMEL/$_pkgreal-$pkgver.tar.gz"
builddir="$srcdir/$_pkgreal-$pkgver"
@@ -37,4 +37,6 @@ check() {
make test
}
-sha512sums="9a3fea9209aceb018a5d2f804ccfc61b3c073584ea7448a3fe44dba7cdfbbb4136705fc0b27f3db2165357940e92a0fc98c1f959a320fa9fe36326ba70dc1057 Dancer-Plugin-DBIC-0.2104.tar.gz"
+sha512sums="
+9a3fea9209aceb018a5d2f804ccfc61b3c073584ea7448a3fe44dba7cdfbbb4136705fc0b27f3db2165357940e92a0fc98c1f959a320fa9fe36326ba70dc1057 Dancer-Plugin-DBIC-0.2104.tar.gz
+"
diff --git a/testing/perl-dancer-plugin-passphrase/APKBUILD b/testing/perl-dancer-plugin-passphrase/APKBUILD
index 0f28d37656a..10d08f83222 100644
--- a/testing/perl-dancer-plugin-passphrase/APKBUILD
+++ b/testing/perl-dancer-plugin-passphrase/APKBUILD
@@ -4,15 +4,17 @@
pkgname=perl-dancer-plugin-passphrase
_pkgreal=Dancer-Plugin-Passphrase
pkgver=2.0.1
-pkgrel=3
+pkgrel=4
pkgdesc="Passphrases and Passwords as objects for Dancer"
url="https://metacpan.org/release/Dancer-Plugin-Passphrase"
arch="noarch"
license="GPL-1.0-or-later OR Artistic-1.0-Perl"
depends="perl perl-dancer perl-data-entropy perl-digest-bcrypt"
+checkdepends="perl-crypt-bcrypt"
subpackages="$pkgname-doc"
source="https://cpan.metacpan.org/authors/id/J/JA/JAITKEN/$_pkgreal-$pkgver.tar.gz"
builddir="$srcdir/$_pkgreal-$pkgver"
+options="!check" # fail some digit test since haven't been updated in 10 years
prepare() {
default_prepare
@@ -36,4 +38,6 @@ check() {
make test
}
-sha512sums="c9a09748f2d211c26c3ec4fe41f992a8143ffeaef215489762200eafd8576173e3838fb7e510c8dbe7b9d8395b485532e855093c2145eeaf73694d5baa07be1e Dancer-Plugin-Passphrase-2.0.1.tar.gz"
+sha512sums="
+c9a09748f2d211c26c3ec4fe41f992a8143ffeaef215489762200eafd8576173e3838fb7e510c8dbe7b9d8395b485532e855093c2145eeaf73694d5baa07be1e Dancer-Plugin-Passphrase-2.0.1.tar.gz
+"
diff --git a/testing/perl-dancer-session-cookie/APKBUILD b/testing/perl-dancer-session-cookie/APKBUILD
index fbe33cd0799..791479d099a 100644
--- a/testing/perl-dancer-session-cookie/APKBUILD
+++ b/testing/perl-dancer-session-cookie/APKBUILD
@@ -4,11 +4,11 @@
pkgname=perl-dancer-session-cookie
_pkgreal=Dancer-Session-Cookie
pkgver=0.30
-pkgrel=1
+pkgrel=2
pkgdesc="Encrypted cookie-based session backend for Dancer"
options="!check" # redirect-session-dancer fails
url="https://metacpan.org/release/Dancer-Session-Cookie"
-arch="noarch !armhf" # perl-session-storage-secure -> perl-sereal-encoder
+arch="noarch !armv7 !armhf" # perl-session-storage-secure -> perl-sereal-encoder
license="GPL-1.0-or-later OR Artistic-1.0-Perl"
depends="
perl perl-dancer perl-session-storage-secure perl-string-crc32 perl-crypt-rijndael
diff --git a/testing/perl-data-dumper-concise/APKBUILD b/testing/perl-data-dumper-concise/APKBUILD
index ce98737d32b..39248b1c93f 100644
--- a/testing/perl-data-dumper-concise/APKBUILD
+++ b/testing/perl-data-dumper-concise/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-data-dumper-concise
_pkgreal=Data-Dumper-Concise
pkgver=2.023
-pkgrel=3
+pkgrel=4
pkgdesc="Less indentation and newlines plus sub deparsing"
url="https://metacpan.org/release/Data-Dumper-Concise"
arch="noarch"
diff --git a/testing/perl-data-printer/APKBUILD b/testing/perl-data-printer/APKBUILD
deleted file mode 100644
index f6ba8d3fce4..00000000000
--- a/testing/perl-data-printer/APKBUILD
+++ /dev/null
@@ -1,34 +0,0 @@
-# Automatically generated by apkbuild-cpan, template 3
-# Contributor: Timo Teräs <timo.teras@iki.fi>
-# Maintainer: Timo Teräs <timo.teras@iki.fi>
-pkgname=perl-data-printer
-#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
-_pkgreal=Data-Printer
-pkgver=1.000004
-pkgrel=1
-pkgdesc="colored & full-featured pretty print of Perl data structures and objects"
-url="https://metacpan.org/release/Data-Printer/"
-arch="noarch"
-license="GPL-1.0-or-later OR Artistic-1.0-Perl"
-depends="perl"
-subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/G/GA/GARU/Data-Printer-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgreal-$pkgver"
-
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL INSTALLDIRS=vendor
- make
-}
-
-check() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make test
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
-}
-
-sha512sums="a1edce61cef6010aa4bbc90d60b221c0bbb8a88f8808217955b72b5fc51a221c0d10051fd2fb8cbc4b2d5a18c5eea7b81f167b2f85f8ce0e144b5b995a702bb0 Data-Printer-1.000004.tar.gz"
diff --git a/testing/perl-data-validate-domain/APKBUILD b/testing/perl-data-validate-domain/APKBUILD
new file mode 100644
index 00000000000..6bcb004f10f
--- /dev/null
+++ b/testing/perl-data-validate-domain/APKBUILD
@@ -0,0 +1,39 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-data-validate-domain
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Data-Validate-Domain
+pkgver=0.15
+pkgrel=0
+pkgdesc="Domain and host name validation"
+url="https://metacpan.org/release/Data-Validate-Domain/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-net-domain-tld"
+checkdepends="perl-test2-suite"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/Data-Validate-Domain-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+76cfae536841e69f3694f2cf88321718ffbafa0376faec6763f295650c67e550c90c640a444616482acf7175337a646f80938255eeb32204f827a891a91d0195 Data-Validate-Domain-0.15.tar.gz
+"
diff --git a/testing/perl-data-validate-ip/APKBUILD b/testing/perl-data-validate-ip/APKBUILD
index c86a84575c7..455a7d2c58a 100644
--- a/testing/perl-data-validate-ip/APKBUILD
+++ b/testing/perl-data-validate-ip/APKBUILD
@@ -4,8 +4,8 @@
pkgname=perl-data-validate-ip
#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
_pkgreal=Data-Validate-IP
-pkgver=0.30
-pkgrel=0
+pkgver=0.31
+pkgrel=1
pkgdesc="IPv4 and IPv6 validation methods"
url="https://metacpan.org/release/Data-Validate-IP/"
arch="noarch"
@@ -36,4 +36,6 @@ package() {
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-sha512sums="ac556445f1eec0440be17263bcffce46d0c3b719d3c64022bcb3fc6d1191ed9de94c0e4d6b2c3c5c1704dc7945b14a5c87abfcf2b7dc43ec4f10a4cc6629b761 Data-Validate-IP-0.30.tar.gz"
+sha512sums="
+22ea6a8673fa07d405cb2f8645bd019265abf4104057c73d0399951a837549cedb97737f50b2e9e605202679c85ae5a7b7a24dd8d9fd8736624551b0b41fd6d8 Data-Validate-IP-0.31.tar.gz
+"
diff --git a/testing/perl-database-async-engine-postgresql/APKBUILD b/testing/perl-database-async-engine-postgresql/APKBUILD
new file mode 100644
index 00000000000..64eaeaa72c4
--- /dev/null
+++ b/testing/perl-database-async-engine-postgresql/APKBUILD
@@ -0,0 +1,57 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-database-async-engine-postgresql
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Database-Async-Engine-PostgreSQL
+pkgver=1.004
+pkgrel=0
+pkgdesc="PostgreSQL support for Database::Async"
+url="https://metacpan.org/release/Database-Async-Engine-PostgreSQL/"
+arch="noarch !armhf !armv7 !x86" # perl-ryu
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="
+ perl perl-bytes-random-secure perl-config-tiny
+ perl-cryptx perl-curry perl-database-async
+ perl-file-homedir perl-future perl-future-asyncawait
+ perl-indirect perl-io-async-ssl perl-log-any perl-path-tiny
+ perl-protocol-database-postgresql perl-ryu perl-ryu-async
+ perl-syntax-keyword-try perl-template-toolkit
+ perl-unicode-utf8 perl-uri perl-uri-db
+ "
+checkdepends="
+ perl-log-any-adapter-tap perl-test-checkdeps perl-test-deep
+ perl-test-fatal perl-test-mockmodule perl-test-refcount
+ "
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/T/TE/TEAM/Database-Async-Engine-PostgreSQL-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+doc() {
+ local file; find "$pkgdir" -name "*.pod" | while read -r file; do
+ amove "${file#"$pkgdir"}"
+ done
+ default_doc
+}
+
+sha512sums="
+89a0b5a2151349761ca9c517ea12e264fe5c940bd90dad726c90d10d4fc6d61f72755371023155d9758396f0aa378bb144320cb34e673f53acc3e5b83ca243ed Database-Async-Engine-PostgreSQL-1.004.tar.gz
+"
diff --git a/testing/perl-database-async/APKBUILD b/testing/perl-database-async/APKBUILD
new file mode 100644
index 00000000000..921da1f25ee
--- /dev/null
+++ b/testing/perl-database-async/APKBUILD
@@ -0,0 +1,53 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-database-async
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Database-Async
+pkgver=0.019
+pkgrel=0
+pkgdesc="Database abstraction layer for IO::Async"
+url="https://metacpan.org/release/Database-Async/"
+arch="noarch !armhf !armv7 !x86" # perl-ryu
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="
+ perl perl-class-method-modifiers perl-curry
+ perl-future perl-future-asyncawait perl-indirect
+ perl-io-async perl-json-maybeutf8 perl-list-utilsby
+ perl-log-any perl-path-tiny perl-ryu perl-ryu-async
+ perl-syntax-keyword-try perl-template-toolkit
+ perl-uri perl-uri-db perl-yaml-libyaml
+ "
+checkdepends="perl-test-checkdeps perl-test-fatal perl-test-refcount"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/T/TE/TEAM/Database-Async-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+doc() {
+ local file; find "$pkgdir" -name "*.pod" | while read -r file; do
+ amove "${file#"$pkgdir"}"
+ done
+ default_doc
+}
+
+sha512sums="
+16fe6f0a300ef594ad2edd655fe8b48450caa54d37367d11c479aea391c6c03b45aacf41bc94b3ca039019c4b4aee22e588ec4b412a82a7de0963b0e6d65f2c9 Database-Async-0.019.tar.gz
+"
diff --git a/testing/perl-datetime-format-atom/APKBUILD b/testing/perl-datetime-format-atom/APKBUILD
new file mode 100644
index 00000000000..1deecc2f6b6
--- /dev/null
+++ b/testing/perl-datetime-format-atom/APKBUILD
@@ -0,0 +1,39 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-datetime-format-atom
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=DateTime-Format-Atom
+pkgver=1.6.0
+pkgrel=0
+pkgdesc="Parse and format Atom datetime strings"
+url="https://metacpan.org/release/DateTime-Format-Atom/"
+arch="noarch"
+license="CC0-1.0"
+depends="perl perl-datetime-format-rfc3339"
+checkdepends="perl-test-pod"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/I/IK/IKEGAMI/DateTime-Format-Atom-v$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-v$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+96a05bad744eedb5fdae950959b4d8309e4a0f56ca238ba8abf26418da102160f3f5f49813d92fbab92fc0a6971e95f6b23b3b7e4f4abfb74a8ab9669c80eac1 DateTime-Format-Atom-v1.6.0.tar.gz
+"
diff --git a/testing/perl-datetime-format-flexible/APKBUILD b/testing/perl-datetime-format-flexible/APKBUILD
new file mode 100644
index 00000000000..1f9921393d7
--- /dev/null
+++ b/testing/perl-datetime-format-flexible/APKBUILD
@@ -0,0 +1,42 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-datetime-format-flexible
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=DateTime-Format-Flexible
+pkgver=0.34
+pkgrel=0
+pkgdesc="Flexibly parse strings and turn them into DateTime objects"
+url="https://metacpan.org/release/DateTime-Format-Flexible/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="
+ perl perl-datetime perl-datetime-format-builder
+ perl-datetime-timezone perl-list-moreutils
+ "
+checkdepends="perl-test-exception perl-test-mocktime perl-test-nowarnings"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/T/TH/THINC/DateTime-Format-Flexible-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+2b2d730aaa9c8f6152f57493b8a0b2f9600b06dcdf2776bd1cb3fbf26c3b5ab31351a32fccb5072ed7410b558354fb3f9e3e8fa5af99da846fc623ae25e1f763 DateTime-Format-Flexible-0.34.tar.gz
+"
diff --git a/testing/perl-datetime-format-rfc3339/APKBUILD b/testing/perl-datetime-format-rfc3339/APKBUILD
new file mode 100644
index 00000000000..bd6000bc752
--- /dev/null
+++ b/testing/perl-datetime-format-rfc3339/APKBUILD
@@ -0,0 +1,39 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-datetime-format-rfc3339
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=DateTime-Format-RFC3339
+pkgver=1.8.0
+pkgrel=0
+pkgdesc="Parse and format RFC3339 datetime strings"
+url="https://metacpan.org/release/DateTime-Format-RFC3339/"
+arch="noarch"
+license="CC0-1.0"
+depends="perl perl-datetime"
+checkdepends="perl-test-pod"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/I/IK/IKEGAMI/DateTime-Format-RFC3339-v$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-v$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+b86426c8a02fd582c45c8f73c21ac445eb4984df742decb697a8c117f6054374b6870099dc74f37260f635968017950fbd98ce80a0b25064472dd184187204ad DateTime-Format-RFC3339-v1.8.0.tar.gz
+"
diff --git a/testing/perl-datetime-format-sqlite/APKBUILD b/testing/perl-datetime-format-sqlite/APKBUILD
deleted file mode 100644
index f49e7552a8c..00000000000
--- a/testing/perl-datetime-format-sqlite/APKBUILD
+++ /dev/null
@@ -1,39 +0,0 @@
-# Automatically generated by apkbuild-cpan, template 2
-# Contributor: Timo Teräs <timo.teras@iki.fi>
-# Maintainer: Timo Teräs <timo.teras@iki.fi>
-pkgname=perl-datetime-format-sqlite
-_pkgreal=DateTime-Format-SQLite
-pkgver=0.11
-pkgrel=3
-pkgdesc="Parse and format SQLite dates and times"
-url="https://metacpan.org/release/DateTime-Format-SQLite"
-arch="noarch"
-license="GPL-1.0-or-later OR Artistic-1.0-Perl"
-depends="perl perl-datetime-format-builder perl-datetime"
-subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/C/CF/CFAERBER/$_pkgreal-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgreal-$pkgver"
-
-prepare() {
- default_prepare
-
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
-}
-
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
-}
-
-check() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make test
-}
-
-sha512sums="061f831c2a8d653706d315c1cff24ad887e3f8c65afdbd2140066735649c097be921f217e6e2761f8f34604066c618f296d40e9c650c3a1bb085cadbdfa7b7b9 DateTime-Format-SQLite-0.11.tar.gz"
diff --git a/testing/perl-datetime-timezone-alias/APKBUILD b/testing/perl-datetime-timezone-alias/APKBUILD
new file mode 100644
index 00000000000..0818b5a5a13
--- /dev/null
+++ b/testing/perl-datetime-timezone-alias/APKBUILD
@@ -0,0 +1,44 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-datetime-timezone-alias
+pkgver=0.06
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=DateTime-TimeZone-Alias
+pkgdesc="Create aliases for DateTime timezones"
+url="https://metacpan.org/release/DateTime-TimeZone-Alias/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-datetime perl-datetime-timezone"
+makedepends="perl-module-build"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/J/JH/JHOBLITT/DateTime-TimeZone-Alias-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ perl Build.PL \
+ --installdirs=vendor \
+ --create_packlist=0
+ ./Build
+}
+
+check() {
+ TZ=UTC ./Build test
+}
+
+package() {
+ ./Build install --destdir="$pkgdir"
+}
+
+doc() {
+ local file; find "$pkgdir" -name "*.pod" | while read -r file; do
+ amove "${file#"$pkgdir"}"
+ done
+ default_doc
+}
+
+sha512sums="
+eec339b2819e002cce4d52d4dee5a07fcb653bd738d94a359be3182d0c2b846b087057491a8aa5912ebe29cd80a19b42f275869c1ba24236edb47e81ccd9e38c DateTime-TimeZone-Alias-0.06.tar.gz
+"
diff --git a/testing/perl-datetime-timezone-catalog-extend/APKBUILD b/testing/perl-datetime-timezone-catalog-extend/APKBUILD
new file mode 100644
index 00000000000..0f94d65f2ef
--- /dev/null
+++ b/testing/perl-datetime-timezone-catalog-extend/APKBUILD
@@ -0,0 +1,39 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-datetime-timezone-catalog-extend
+pkgver=0.3.1
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=DateTime-TimeZone-Catalog-Extend
+pkgdesc="Extend DateTime::TimeZone catalog"
+url="https://metacpan.org/release/DateTime-TimeZone-Catalog-Extend/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-datetime-timezone-alias perl-nice-try"
+checkdepends="perl-datetime-timezone"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/J/JD/JDEGUEST/DateTime-TimeZone-Catalog-Extend-v$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-v$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make TZ=UTC test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+26a52f76433c311ee91fc928608d533b73431b44a7243d0eb80246c38569f143727b91ac25e71295d2d770bb79be09607aa67027d3f74c1b49e016cd02acc9ca DateTime-TimeZone-Catalog-Extend-v0.3.1.tar.gz
+"
diff --git a/testing/perl-dbicx-sugar/APKBUILD b/testing/perl-dbicx-sugar/APKBUILD
index bd14a587375..830a9324a8f 100644
--- a/testing/perl-dbicx-sugar/APKBUILD
+++ b/testing/perl-dbicx-sugar/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-dbicx-sugar
_pkgreal=DBICx-Sugar
pkgver=0.0200
-pkgrel=4
+pkgrel=5
pkgdesc="Just some syntax sugar for DBIx::Class"
url="https://metacpan.org/release/DBICx-Sugar"
arch="noarch !armv7" # tests fails on armv7
diff --git a/testing/perl-dbix-class-candy/APKBUILD b/testing/perl-dbix-class-candy/APKBUILD
index 1bd76dd18fc..75a5da0d203 100644
--- a/testing/perl-dbix-class-candy/APKBUILD
+++ b/testing/perl-dbix-class-candy/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-dbix-class-candy
_pkgreal=DBIx-Class-Candy
pkgver=0.005003
-pkgrel=4
+pkgrel=5
pkgdesc="Sugar for your favorite ORM, DBIx::Class"
url="https://metacpan.org/release/DBIx-Class-Candy"
arch="noarch !armv7"
diff --git a/testing/perl-dbix-class-helpers/APKBUILD b/testing/perl-dbix-class-helpers/APKBUILD
index f79f0ffabed..1ab965cd6a3 100644
--- a/testing/perl-dbix-class-helpers/APKBUILD
+++ b/testing/perl-dbix-class-helpers/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-dbix-class-helpers
_pkgreal=DBIx-Class-Helpers
pkgver=2.036000
-pkgrel=2
+pkgrel=3
pkgdesc="Simplify the common case stuff for DBIx::Class."
url="https://metacpan.org/release/DBIx-Class-Helpers"
arch="noarch !armv7"
diff --git a/testing/perl-dbix-class/APKBUILD b/testing/perl-dbix-class/APKBUILD
index cc68ecbb937..544c09a8ae3 100644
--- a/testing/perl-dbix-class/APKBUILD
+++ b/testing/perl-dbix-class/APKBUILD
@@ -1,41 +1,58 @@
-# Automatically generated by apkbuild-cpan, template 2
+# Automatically generated by apkbuild-cpan, template 3
# Contributor: Timo Teräs <timo.teras@iki.fi>
# Maintainer: Timo Teräs <timo.teras@iki.fi>
pkgname=perl-dbix-class
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
_pkgreal=DBIx-Class
-pkgver=0.082842
-pkgrel=0
+pkgver=0.082843
+pkgrel=1
pkgdesc="Extensible and flexible object <-> relational mapper."
-url="https://metacpan.org/release/DBIx-Class"
+url="https://metacpan.org/release/DBIx-Class/"
arch="noarch"
license="GPL-1.0-or-later OR Artistic-1.0-Perl"
depends="
- perl perl-path-class perl-namespace-clean perl-context-preserve perl-try-tiny
- perl-devel-globaldestruction perl-mro-compat perl-sql-abstract-classic perl-class-c3-componentised
- perl-sub-name perl-class-inspector perl-config-any perl-module-find perl-dbi
- perl-data-dumper-concise perl-class-accessor-grouped perl-scope-guard perl-moo
- perl-hash-merge perl-data-page
+ perl
+ perl-class-accessor-grouped
+ perl-class-c3-componentised
+ perl-class-inspector
+ perl-config-any
+ perl-context-preserve
+ perl-data-dumper-concise
+ perl-dbi
+ perl-devel-globaldestruction
+ perl-hash-merge
+ perl-module-find
+ perl-moo
+ perl-mro-compat
+ perl-namespace-clean
+ perl-path-class
+ perl-scope-guard
+ perl-sql-abstract-classic
+ perl-sub-name
+ perl-try-tiny
"
makedepends="
- perl-module-install perl-package-stash perl-test-exception perl-test-deep perl-dbd-sqlite
+ perl-dbd-sqlite
+ perl-dev
+ perl-package-stash
+ perl-test-deep
+ perl-test-exception
perl-test-warn
"
checkdepends="perl-clone-choose"
subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/R/RI/RIBASUSHI/$_pkgreal-$pkgver.tar.gz
- "
+source="https://cpan.metacpan.org/authors/id/R/RI/RIBASUSHI/DBIx-Class-$pkgver.tar.gz"
builddir="$srcdir/$_pkgreal-$pkgver"
-prepare() {
- default_prepare
-
+build() {
export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL INSTALLDIRS=vendor
+ make
}
-build() {
+check() {
export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make
+ make test
}
package() {
@@ -43,11 +60,6 @@ package() {
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-check() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make test
-}
-
sha512sums="
-c8d7149536d5c4ebbfc866b0c143454ead37fda5ddb8fa43dfe2d56c2169be0fd8a46ec3b6c7cd22cb1c93504056d5803b5250ac151507ef4205fe53495e8f18 DBIx-Class-0.082842.tar.gz
+395752fd2568580c7a35598c4e2a30210e6ee5dc382dc56338ca6e20effa083e2bb31ebe6c715f2bd421699de10570551b1c4c25772c0f8b071f64787b041d7c DBIx-Class-0.082843.tar.gz
"
diff --git a/testing/perl-dbix-datasource/APKBUILD b/testing/perl-dbix-datasource/APKBUILD
index 1546f6b589f..42ca6fa1ccc 100644
--- a/testing/perl-dbix-datasource/APKBUILD
+++ b/testing/perl-dbix-datasource/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-dbix-datasource
_pkgreal=DBIx-DataSource
pkgver=0.02
-pkgrel=4
+pkgrel=5
pkgdesc="Database-independant create and drop functions"
url="https://metacpan.org/release/DBIx-DataSource"
arch="noarch"
diff --git a/testing/perl-dbix-introspector/APKBUILD b/testing/perl-dbix-introspector/APKBUILD
index 4ddadfd1dfb..1cac480325e 100644
--- a/testing/perl-dbix-introspector/APKBUILD
+++ b/testing/perl-dbix-introspector/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-dbix-introspector
_pkgreal=DBIx-Introspector
pkgver=0.001005
-pkgrel=3
+pkgrel=4
pkgdesc="Detect what database you are connected to"
url="https://metacpan.org/release/DBIx-Introspector"
arch="noarch"
diff --git a/testing/perl-devel-caller/APKBUILD b/testing/perl-devel-caller/APKBUILD
deleted file mode 100644
index 329890557c2..00000000000
--- a/testing/perl-devel-caller/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Automatically generated by apkbuild-cpan, template 3
-# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer: rubicon <rubicon@mailo.com>
-pkgname=perl-devel-caller
-#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
-_pkgreal=Devel-Caller
-pkgver=2.06
-pkgrel=0
-pkgdesc="meatier versions of caller"
-url="https://metacpan.org/release/Devel-Caller/"
-arch="all"
-license="GPL-1.0-or-later OR Artistic-1.0-Perl"
-depends="perl perl-padwalker"
-makedepends="perl-dev"
-subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/R/RC/RCLAMP/Devel-Caller-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgreal-$pkgver"
-
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL INSTALLDIRS=vendor
- make
-}
-
-check() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make test
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
-}
-
-sha512sums="
-f15a59169e191c8526f613d21c415e5d8d51b59eabf309952468fdee15277b2e8f831a2263a9dc006d9f3144a234fbc9c46ad3ab464b6fc055360c6445b209f9 Devel-Caller-2.06.tar.gz
-"
diff --git a/testing/perl-devel-confess/APKBUILD b/testing/perl-devel-confess/APKBUILD
new file mode 100644
index 00000000000..df273224bfe
--- /dev/null
+++ b/testing/perl-devel-confess/APKBUILD
@@ -0,0 +1,39 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-devel-confess
+pkgver=0.009004
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Devel-Confess
+pkgdesc="Include stack traces on all warnings and errors"
+url="https://metacpan.org/release/Devel-Confess/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl"
+checkdepends="perl-universal-can perl-universal-isa"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/H/HA/HAARG/Devel-Confess-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+29f807e378bcb286d111f82f9ad564a610ca9813ba040a137ef149179c6909859f46a4a528eed6aea12162cdb291d8f79c7f7864c64b0ce77a44d16c3d207f25 Devel-Confess-0.009004.tar.gz
+"
diff --git a/testing/perl-devel-leak/APKBUILD b/testing/perl-devel-leak/APKBUILD
index cac5befda59..93ff0abed38 100644
--- a/testing/perl-devel-leak/APKBUILD
+++ b/testing/perl-devel-leak/APKBUILD
@@ -3,7 +3,7 @@
pkgname=perl-devel-leak
_pkgreal=Devel-Leak
pkgver=0.03
-pkgrel=10
+pkgrel=12
pkgdesc="Utility for looking for perl objects that are not reclaimed"
url="https://metacpan.org/release/Devel-Leak"
arch="all"
diff --git a/testing/perl-devel-lexalias/APKBUILD b/testing/perl-devel-lexalias/APKBUILD
deleted file mode 100644
index e666bfaace8..00000000000
--- a/testing/perl-devel-lexalias/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Automatically generated by apkbuild-cpan, template 3
-# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer: rubicon <rubicon@mailo.com>
-pkgname=perl-devel-lexalias
-#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
-_pkgreal=Devel-LexAlias
-pkgver=0.05
-pkgrel=0
-pkgdesc="alias lexical variables"
-url="https://metacpan.org/release/Devel-LexAlias/"
-arch="all"
-license="GPL-1.0-or-later OR Artistic-1.0-Perl"
-depends="perl perl-devel-caller"
-makedepends="perl-dev"
-subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/R/RC/RCLAMP/Devel-LexAlias-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgreal-$pkgver"
-
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL INSTALLDIRS=vendor
- make
-}
-
-check() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make test
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
-}
-
-sha512sums="
-31f4e12d6d756790fba457f2a927d8dbf4c873033b1c83becc5c3668451041cb3ccea8c132529d35b2fd553dd34da34202ab97d25dc1c564024c68f9dd7a7367 Devel-LexAlias-0.05.tar.gz
-"
diff --git a/testing/perl-devel-refcount/APKBUILD b/testing/perl-devel-refcount/APKBUILD
new file mode 100644
index 00000000000..e9dfea4feb5
--- /dev/null
+++ b/testing/perl-devel-refcount/APKBUILD
@@ -0,0 +1,38 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-devel-refcount
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Devel-Refcount
+pkgver=0.10
+pkgrel=0
+pkgdesc="Obtain the REFCNT value of a referent"
+url="https://metacpan.org/release/Devel-Refcount/"
+arch="all"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl"
+makedepends="perl-dev perl-module-build"
+checkdepends="perl-test-fatal"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/P/PE/PEVANS/Devel-Refcount-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ perl Build.PL \
+ --installdirs=vendor \
+ --create_packlist=0
+ ./Build
+}
+
+check() {
+ ./Build test
+}
+
+package() {
+ ./Build install --destdir="$pkgdir"
+}
+
+sha512sums="
+5020df05fa8f49ac98a19b5795ee6caed20c44e6dab2cca80e2a2f6e30a5384f196175b53093d14c78b6a66555d80042540e19461b10c7dce46fa6a8f7190767 Devel-Refcount-0.10.tar.gz
+"
diff --git a/testing/perl-digest-bcrypt/APKBUILD b/testing/perl-digest-bcrypt/APKBUILD
index d78db38e081..59d9eacb750 100644
--- a/testing/perl-digest-bcrypt/APKBUILD
+++ b/testing/perl-digest-bcrypt/APKBUILD
@@ -3,14 +3,14 @@
# Maintainer: Timo Teräs <timo.teras@iki.fi>
pkgname=perl-digest-bcrypt
_pkgreal=Digest-Bcrypt
-pkgver=1.209
-pkgrel=3
+pkgver=1.212
+pkgrel=1
pkgdesc="Perl interface to the bcrypt digest algorithm"
url="https://metacpan.org/release/Digest-Bcrypt"
arch="noarch"
license="GPL-1.0-or-later OR Artistic-1.0-Perl"
depends="perl perl-crypt-eksblowfish"
-checkdepends="perl-try-tiny"
+checkdepends="perl-try-tiny perl-crypt-bcrypt"
subpackages="$pkgname-doc"
source="https://cpan.metacpan.org/authors/id/C/CA/CAPOEIRAB/$_pkgreal-$pkgver.tar.gz"
builddir="$srcdir/$_pkgreal-$pkgver"
@@ -37,4 +37,6 @@ check() {
make test
}
-sha512sums="d7e837c2cbcf7fe8713481cb6156b9ac1b4cd5922df82de2b68f0b087ceba5155c945d05086f859524510c1281e911eb8e26e3b315ec883b0cb7c11c06400eb7 Digest-Bcrypt-1.209.tar.gz"
+sha512sums="
+d2bf23d0eefda35d152c4ec5336032e585897fd69a95766832933dada2d131778d751c65845034b028c8224bef3abbfe0df1a725f0c702d94913c029958edcd1 Digest-Bcrypt-1.212.tar.gz
+"
diff --git a/testing/perl-digest-crc/APKBUILD b/testing/perl-digest-crc/APKBUILD
new file mode 100644
index 00000000000..a4b3357e1d2
--- /dev/null
+++ b/testing/perl-digest-crc/APKBUILD
@@ -0,0 +1,39 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-digest-crc
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Digest-CRC
+pkgver=0.24
+pkgrel=0
+pkgdesc="Perl module for calculating CRC sums"
+url="https://metacpan.org/release/Digest-CRC/"
+arch="all"
+license="Public-Domain"
+depends="perl"
+makedepends="perl-dev"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/O/OL/OLIMAUL/Digest-CRC-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+c536cbcc5c4d336b8ec0e9f7737b5d06fbde8cfacd9b0247320b903ce868fefdf583c2bf4cedb306dc5885b7761bbcc58d385e17e939f6300206907d860110dd Digest-CRC-0.24.tar.gz
+"
diff --git a/testing/perl-dns-unbound/APKBUILD b/testing/perl-dns-unbound/APKBUILD
new file mode 100644
index 00000000000..5551e810f4f
--- /dev/null
+++ b/testing/perl-dns-unbound/APKBUILD
@@ -0,0 +1,108 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-dns-unbound
+pkgver=0.29
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=DNS-Unbound
+pkgdesc="Query DNS recursively via libunbound"
+url="https://metacpan.org/release/DNS-Unbound/"
+arch="all"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="
+ perl
+ perl-class-xsaccessor
+ perl-net-dns
+ perl-promise-es6
+ perl-x-tiny
+ "
+makedepends="
+ !pyc
+ perl-dev
+ perl-extutils-makemaker-cpanfile
+ perl-extutils-pkgconfig
+ unbound-dev
+ "
+checkdepends="
+ perl-anyevent
+ perl-io-async
+ perl-mojolicious
+ perl-promise-xs
+ perl-test-deep
+ perl-test-describeme
+ perl-test-exception
+ perl-test-failwarnings
+ "
+subpackages="
+ $pkgname-doc
+ $pkgname-anyevent::noarch
+ $pkgname-ioasync::noarch
+ $pkgname-mojo::noarch
+ $pkgname-asyncquery-promisexs::noarch
+ "
+source="https://cpan.metacpan.org/authors/id/F/FE/FELIPE/DNS-Unbound-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+prepare() {
+ default_prepare
+
+ # We do not have AnyEvent::XSPromises packaged,
+ # and this file says "This leaks; don't use it".
+ rm -v lib/DNS/Unbound/AsyncQuery/AnyEventXSPromises.pm
+}
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+anyevent() {
+ pkgdesc="$pkgdesc and AnyEvent"
+ depends="$pkgname=$pkgver-r$pkgrel perl-anyevent"
+ install_if="$pkgname=$pkgver-r$pkgrel perl-anyevent"
+
+ amove usr/lib/perl5/vendor_perl/DNS/Unbound/AnyEvent.pm
+}
+
+ioasync() {
+ pkgdesc="$pkgdesc and IO::Async"
+ depends="$pkgname=$pkgver-r$pkgrel perl-io-async"
+ install_if="$pkgname=$pkgver-r$pkgrel perl-io-async"
+
+ amove usr/lib/perl5/vendor_perl/DNS/Unbound/IOAsync.pm
+}
+
+mojo() {
+ pkgdesc="$pkgdesc and Mojolicious"
+ depends="$pkgname=$pkgver-r$pkgrel perl-mojolicious"
+ install_if="$pkgname=$pkgver-r$pkgrel perl-mojolicious"
+
+ amove usr/lib/perl5/vendor_perl/DNS/Unbound/Mojo.pm
+ amove usr/lib/perl5/vendor_perl/DNS/Unbound/AsyncQuery/MojoPromise.pm
+}
+
+promisexs() {
+ pkgdesc="$pkgdesc (Promise::XS engine)"
+ depends="$pkgname=$pkgver-r$pkgrel perl-promise-xs"
+ install_if="$pkgname=$pkgver-r$pkgrel perl-promise-xs"
+
+ amove usr/lib/perl5/vendor_perl/DNS/Unbound/AsyncQuery/PromiseXS.pm
+}
+
+sha512sums="
+722582fa7f4d81dcfcdad56d482988ebe537822739ff2b6eff3d498c2203c96d46e07e603c0acf997321b99220180f1aa305c8aa914445b352513ea10572260f DNS-Unbound-0.29.tar.gz
+"
diff --git a/testing/perl-email-abstract/APKBUILD b/testing/perl-email-abstract/APKBUILD
index 6da1266e9a2..216b83afbf9 100644
--- a/testing/perl-email-abstract/APKBUILD
+++ b/testing/perl-email-abstract/APKBUILD
@@ -3,7 +3,7 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=perl-email-abstract
_pkgreal=Email-Abstract
-pkgver=3.009
+pkgver=3.010
pkgrel=0
pkgdesc="Unified interface to mail representations"
url="https://metacpan.org/release/Email-Abstract"
@@ -16,6 +16,8 @@ source="https://cpan.metacpan.org/authors/id/R/RJ/RJBS/$_pkgreal-$pkgver.tar.gz"
builddir="$srcdir/$_pkgreal-$pkgver"
prepare() {
+ default_prepare
+
export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
}
@@ -35,5 +37,5 @@ package() {
}
sha512sums="
-e2c2a497d942ef56d723ab109f8844f840bc14a4a23ae0febea32f6ce814b943ac0599dfce0a17c24d6631826240d8692592292a1c4f1fcc599c1983b37e0705 Email-Abstract-3.009.tar.gz
+73c7e9083f583d17c20bcda2a17e6ff7187c587e8168415692618be2ec0a10f0bce2ddb1da8d2cc929022af56da4498d44cf0cc062c1c5b83abac2ecb48a9ae6 Email-Abstract-3.010.tar.gz
"
diff --git a/testing/perl-email-mime-attachment-stripper/APKBUILD b/testing/perl-email-mime-attachment-stripper/APKBUILD
index af6dea3c0ac..b16ed26443b 100644
--- a/testing/perl-email-mime-attachment-stripper/APKBUILD
+++ b/testing/perl-email-mime-attachment-stripper/APKBUILD
@@ -4,25 +4,25 @@
pkgname=perl-email-mime-attachment-stripper
_pkgreal=Email-MIME-Attachment-Stripper
pkgver=1.317
-pkgrel=3
+pkgrel=5
pkgdesc="strip the attachments from an email"
url="https://metacpan.org/release/Email-MIME-Attachment-Stripper"
arch="noarch"
license="GPL-1.0-or-later OR Artistic-1.0-Perl"
depends="perl perl-email-mime-contenttype perl-email-mime"
+checkdepends="perl-capture-tiny"
subpackages="$pkgname-doc"
source="https://cpan.metacpan.org/authors/id/R/RJ/RJBS/$_pkgreal-$pkgver.tar.gz"
-
builddir="$srcdir/$_pkgreal-$pkgver"
-prepare() {
+build() {
export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
}
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make && make test
+check() {
+ make test
}
package() {
@@ -30,4 +30,6 @@ package() {
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-sha512sums="bb4dd9aa8cfbbeb1e62cb687f3d8219e0eed87acd95c31291b6ad39e870c5a344d478d7794762205a5d66ebd7ba3cd70151b791a1100d677f3a70a538c0c1063 Email-MIME-Attachment-Stripper-1.317.tar.gz"
+sha512sums="
+bb4dd9aa8cfbbeb1e62cb687f3d8219e0eed87acd95c31291b6ad39e870c5a344d478d7794762205a5d66ebd7ba3cd70151b791a1100d677f3a70a538c0c1063 Email-MIME-Attachment-Stripper-1.317.tar.gz
+"
diff --git a/testing/perl-email-reply/APKBUILD b/testing/perl-email-reply/APKBUILD
index 5f8d9cd9c05..fc1616615d8 100644
--- a/testing/perl-email-reply/APKBUILD
+++ b/testing/perl-email-reply/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-email-reply
_pkgreal=Email-Reply
pkgver=1.204
-pkgrel=3
+pkgrel=5
pkgdesc="Reply to a Message"
url="https://metacpan.org/release/Email-Reply"
arch="noarch"
@@ -12,17 +12,16 @@ license="GPL-1.0-or-later OR Artistic-1.0-Perl"
depends="perl perl-email-abstract perl-email-mime perl-email-address"
subpackages="$pkgname-doc"
source="https://cpan.metacpan.org/authors/id/R/RJ/RJBS/$_pkgreal-$pkgver.tar.gz"
-
builddir="$srcdir/$_pkgreal-$pkgver"
-prepare() {
+build() {
export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
}
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make && make test
+check() {
+ make test
}
package() {
@@ -30,4 +29,6 @@ package() {
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-sha512sums="78353abe415fefbf4c70398433584221bf037eab09f4a6a20bcafec4e0a632a5ee07a880e33f806f61fe3a943b7f55c428d90bbc5ea9d5c551eb78e0ff88ac5a Email-Reply-1.204.tar.gz"
+sha512sums="
+78353abe415fefbf4c70398433584221bf037eab09f4a6a20bcafec4e0a632a5ee07a880e33f806f61fe3a943b7f55c428d90bbc5ea9d5c551eb78e0ff88ac5a Email-Reply-1.204.tar.gz
+"
diff --git a/testing/perl-ev-hiredis/APKBUILD b/testing/perl-ev-hiredis/APKBUILD
new file mode 100644
index 00000000000..9ef6a05e4c9
--- /dev/null
+++ b/testing/perl-ev-hiredis/APKBUILD
@@ -0,0 +1,61 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-ev-hiredis
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=EV-Hiredis
+pkgver=0.07
+pkgrel=0
+pkgdesc="Asynchronous redis client using hiredis and EV"
+url="https://metacpan.org/release/EV-Hiredis/"
+arch="all"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-ev"
+makedepends="
+ hiredis-dev perl-dev perl-file-which
+ perl-module-build perl-module-build-xsutil
+ "
+checkdepends="perl-devel-refcount perl-test-deep perl-test-tcp"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/S/SH/SHOGO/EV-Hiredis-$pkgver.tar.gz
+ use-system-hiredis.patch
+ "
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+# no perl-test-redisserver on 32-bit
+case "$CARCH" in
+armv7|armhf|x86)
+ _test_args="--test_files=t/autoload.t"
+ ;;
+*)
+ checkdepends="$checkdepends perl-test-redisserver"
+ ;;
+esac
+
+prepare() {
+ default_prepare
+
+ # disable a very flaky test
+ rm -v ./t/connect_unix.t
+}
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ perl Build.PL \
+ --installdirs=vendor \
+ --create_packlist=0
+ ./Build
+}
+
+check() {
+ ./Build test $_test_args
+}
+
+package() {
+ ./Build install --destdir="$pkgdir"
+}
+
+sha512sums="
+58d4d6d69589155c0212cbc5169e6cc5552718daddcb713339ef84a5cd803c825ff6b10d6322d3e5c1556d018d9ef75de9261f925d3420a14efee05f0226ea87 EV-Hiredis-0.07.tar.gz
+536157501fe64d127ff2d0084c03a2e8174f0aa4bc052c666624b26c79f68d6fe12493ae05daec469b5e36d96fd9704a66d90c2f40b922ff1a0b15519c794276 use-system-hiredis.patch
+"
diff --git a/testing/perl-ev-hiredis/use-system-hiredis.patch b/testing/perl-ev-hiredis/use-system-hiredis.patch
new file mode 100644
index 00000000000..bc12f8a4596
--- /dev/null
+++ b/testing/perl-ev-hiredis/use-system-hiredis.patch
@@ -0,0 +1,21 @@
+--- a/builder/MyBuilder.pm
++++ b/builder/MyBuilder.pm
+@@ -14,8 +14,8 @@
+ generate_ppport_h => 'src/ppport.h',
+ c_source => 'src',
+ xs_files => { 'src/EV__Hiredis.xs' => 'lib/EV/Hiredis.xs' },
+- include_dirs => ['src', 'deps/hiredis', "${installsitearch}/EV", $installsitearch],
+- extra_linker_flags => ["deps/hiredis/libhiredis$Config{lib_ext}"],
++ include_dirs => ['src', '/usr/include/hiredis', "${installsitearch}/EV", $installsitearch],
++ extra_linker_flags => ["-lhiredis"],
+ );
+
+ my $make;
+@@ -30,7 +30,6 @@
+ $make = $Config{make};
+ }
+
+- $self->do_system($make, '-C', 'deps/hiredis', 'static');
+ return $self;
+ }
+
diff --git a/testing/perl-ev/APKBUILD b/testing/perl-ev/APKBUILD
deleted file mode 100644
index 0717c92778d..00000000000
--- a/testing/perl-ev/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Automatically generated by apkbuild-cpan, template 3
-# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer: rubicon <rubicon@mailo.com>
-pkgname=perl-ev
-#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
-_pkgreal=EV
-pkgver=4.33
-pkgrel=0
-pkgdesc="Perl module for EV"
-url="https://metacpan.org/release/EV/"
-arch="all"
-license="GPL-1.0-or-later OR Artistic-1.0-Perl"
-depends="perl perl-common-sense"
-makedepends="perl-dev perl-canary-stability"
-subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/M/ML/MLEHMANN/EV-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgreal-$pkgver"
-
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL INSTALLDIRS=vendor
- make
-}
-
-check() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make test
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
-}
-
-sha512sums="
-dd90739888ffd793652fc6590cbfd6f3df1ea25b1a6e478dc903ef10f49f9c729e87005b94f47786ca7603cf27b02e1d5d8a2941037bef25ba5a83fe608e89c5 EV-4.33.tar.gz
-"
diff --git a/testing/perl-extutils-makemaker/APKBUILD b/testing/perl-extutils-makemaker/APKBUILD
index ee3329a12f3..8a153c10ec0 100644
--- a/testing/perl-extutils-makemaker/APKBUILD
+++ b/testing/perl-extutils-makemaker/APKBUILD
@@ -4,15 +4,14 @@
pkgname=perl-extutils-makemaker
#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
_pkgreal=ExtUtils-MakeMaker
-pkgver=7.64
-pkgrel=0
+pkgver=7.70
+pkgrel=2
pkgdesc="Create a module Makefile"
url="https://metacpan.org/release/ExtUtils-MakeMaker/"
arch="noarch"
license="GPL-1.0-or-later OR Artistic-1.0-Perl"
depends="perl"
-makedepends="perl-dev"
-subpackages="$pkgname-doc"
+checkdepends="perl-dev"
source="https://cpan.metacpan.org/authors/id/B/BI/BINGOS/ExtUtils-MakeMaker-$pkgver.tar.gz"
builddir="$srcdir/$_pkgreal-$pkgver"
@@ -30,11 +29,11 @@ check() {
package() {
make DESTDIR="$pkgdir" install
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
-}
-
-
+ # man pages are already provided by perl-doc
+ rm -rf "$pkgdir"/usr/share/man
+}
sha512sums="
-8e06de493c71923a3a3720c9211038a06c6ee6ddb16add037e364d44f1cb6354d87ea1137eba0df19ce70e370011e0dc49decfb9e0d4f6332a695f8a7fe393f5 ExtUtils-MakeMaker-7.64.tar.gz
+53eee73c5ce6aa32412e8077ae36d54c7ee10eee56baa4ba06a397c90310e21458bd6719b0f5695bb0de3eb06eddaacf6d635ff82538b0748c8ef362555bc569 ExtUtils-MakeMaker-7.70.tar.gz
"
diff --git a/testing/perl-extutils-xsbuilder/APKBUILD b/testing/perl-extutils-xsbuilder/APKBUILD
index 5b99908efe5..50a11e41b69 100644
--- a/testing/perl-extutils-xsbuilder/APKBUILD
+++ b/testing/perl-extutils-xsbuilder/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-extutils-xsbuilder
_pkgreal=ExtUtils-XSBuilder
pkgver=0.28
-pkgrel=3
+pkgrel=5
pkgdesc="Automatic XS glue code generation"
url="https://metacpan.org/release/ExtUtils-XSBuilder"
arch="noarch"
@@ -12,15 +12,15 @@ license="GPL-1.0-or-later OR Artistic-1.0-Perl"
depends="perl perl-parse-recdescent perl-tie-ixhash"
subpackages="$pkgname-doc"
source="https://cpan.metacpan.org/authors/id/G/GR/GRICHTER/$_pkgreal-$pkgver.tar.gz"
-
builddir="$srcdir/$_pkgreal-$pkgver"
-prepare() {
+build() {
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
}
-build() {
- make && make test
+check() {
+ make test
}
package() {
@@ -28,4 +28,6 @@ package() {
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-sha512sums="777c6362ce1e780f8226b47b5f1a4ee4bbde3e5eda6637dde9d04d230cfb77025a0c7ec79ef40866242950ca2f052865ab0bbfe09f6315a2fda70111f67a47e3 ExtUtils-XSBuilder-0.28.tar.gz"
+sha512sums="
+777c6362ce1e780f8226b47b5f1a4ee4bbde3e5eda6637dde9d04d230cfb77025a0c7ec79ef40866242950ca2f052865ab0bbfe09f6315a2fda70111f67a47e3 ExtUtils-XSBuilder-0.28.tar.gz
+"
diff --git a/testing/perl-feed-find/APKBUILD b/testing/perl-feed-find/APKBUILD
new file mode 100644
index 00000000000..87081989f0b
--- /dev/null
+++ b/testing/perl-feed-find/APKBUILD
@@ -0,0 +1,39 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-feed-find
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Feed-Find
+pkgver=0.13
+pkgrel=0
+pkgdesc="Syndication feed auto-discovery"
+url="https://metacpan.org/release/Feed-Find/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-class-errorhandler perl-html-parser perl-libwww perl-uri"
+checkdepends="perl-test-lwp-useragent"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/D/DA/DAVECROSS/Feed-Find-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+436438c361a7c228af8c5d31200f75b3eab8dded20040d9cd019384df28bd2348ca8c2f8f6cc3ae4b6dee90afba7c8ed911016fd4f8da46cfe8ffccf52eecd18 Feed-Find-0.13.tar.gz
+"
diff --git a/testing/perl-ffi-c/APKBUILD b/testing/perl-ffi-c/APKBUILD
new file mode 100644
index 00000000000..3043d3560fc
--- /dev/null
+++ b/testing/perl-ffi-c/APKBUILD
@@ -0,0 +1,44 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-ffi-c
+pkgver=0.15
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=FFI-C
+pkgdesc="C data types for FFI"
+url="https://metacpan.org/release/FFI-C/"
+# armv7, armhf, x86: ffi_c_ffi.t and ffi_c_util.t tests fail
+arch="noarch !armv7 !armhf !x86"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="
+ perl perl-class-inspector perl-ffi-platypus
+ perl-ffi-platypus-type-enum perl-ref-util
+ perl-sub-identify perl-sub-install
+ "
+checkdepends="perl-capture-tiny perl-path-tiny perl-test2-suite"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/P/PL/PLICEASE/FFI-C-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+4f693a44eb9d4098f877ed9354c59e382a50d91a5a46f16441d4a96a751a87bb08ebdc99a700f5b97d03d7cfc58a50cfa946ee63252fe7b51e681e990ccb40c3 FFI-C-0.15.tar.gz
+"
diff --git a/testing/perl-ffi-platypus-type-enum/APKBUILD b/testing/perl-ffi-platypus-type-enum/APKBUILD
new file mode 100644
index 00000000000..5fda2801991
--- /dev/null
+++ b/testing/perl-ffi-platypus-type-enum/APKBUILD
@@ -0,0 +1,39 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-ffi-platypus-type-enum
+pkgver=0.06
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=FFI-Platypus-Type-Enum
+pkgdesc="Custom platypus type for dealing with C enumerated types"
+url="https://metacpan.org/release/FFI-Platypus-Type-Enum/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-ref-util"
+checkdepends="perl-ffi-platypus perl-test2-suite"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/P/PL/PLICEASE/FFI-Platypus-Type-Enum-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+592b609263cba5cfba578e125ebe91d1cbc2f2a4ff9cba2dad36fc0531f6f661bb13f74900489f924e191dc9e774b8e441d4a57d55f17e688e51b5c6d8ae434c FFI-Platypus-Type-Enum-0.06.tar.gz
+"
diff --git a/testing/perl-ffi-platypus/APKBUILD b/testing/perl-ffi-platypus/APKBUILD
new file mode 100644
index 00000000000..f951498e0d8
--- /dev/null
+++ b/testing/perl-ffi-platypus/APKBUILD
@@ -0,0 +1,48 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-ffi-platypus
+pkgver=2.08
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=FFI-Platypus
+pkgdesc="Write Perl bindings to non-Perl libraries with FFI. No XS required"
+url="https://metacpan.org/release/FFI-Platypus/"
+arch="all"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-capture-tiny perl-ffi-checklib"
+makedepends="libffi-dev perl-dev"
+checkdepends="perl-devel-hide perl-test2-suite"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/P/PL/PLICEASE/FFI-Platypus-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+# 32-bit archs require this additional
+# package to work with 64-bit values
+case "$CARCH" in
+armv7|armhf|x86)
+ depends="$depends perl-math-int64"
+ ;;
+esac
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+3c614c78b91512352c527dfe93bc4318030df0b52d7ecdd8c445d8b074f67b965211b08cbe76b5c427ae1840fec708e2c97b528ca6adc03e6e729b8a8f65288e FFI-Platypus-2.08.tar.gz
+"
diff --git a/testing/perl-file-desktopentry/APKBUILD b/testing/perl-file-desktopentry/APKBUILD
deleted file mode 100644
index f644237fb2a..00000000000
--- a/testing/perl-file-desktopentry/APKBUILD
+++ /dev/null
@@ -1,41 +0,0 @@
-# Automatically generated by apkbuild-cpan, template 3
-# Contributor: psykose <alice@ayaya.dev>
-# Maintainer: psykose <alice@ayaya.dev>
-pkgname=perl-file-desktopentry
-#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
-_pkgreal=File-DesktopEntry
-pkgver=0.22
-pkgrel=0
-pkgdesc="Module to handle .desktop files"
-url="https://metacpan.org/release/File-DesktopEntry/"
-arch="noarch"
-license="GPL-1.0-or-later OR Artistic-1.0-Perl"
-depends="
- perl
- perl-file-basedir
- perl-uri
- "
-makedepends="perl-dev"
-subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/M/MI/MICHIELB/File-DesktopEntry-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgreal-$pkgver"
-
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL INSTALLDIRS=vendor
- make
-}
-
-check() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make test
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
-}
-
-sha512sums="
-f6a0f2a91c66ea3e5ebac1e66f82317c4109d8d3e2211b4e84cd870b9df07320c03ee0d026e89f788338a1c02152c77e36402684da4f5a7093eb3ac21ff584a7 File-DesktopEntry-0.22.tar.gz
-"
diff --git a/testing/perl-file-homedir/APKBUILD b/testing/perl-file-homedir/APKBUILD
deleted file mode 100644
index 03f7a0120af..00000000000
--- a/testing/perl-file-homedir/APKBUILD
+++ /dev/null
@@ -1,34 +0,0 @@
-# Automatically generated by apkbuild-cpan, template 3
-# Contributor: Timo Teräs <timo.teras@iki.fi>
-# Maintainer: Timo Teräs <timo.teras@iki.fi>
-pkgname=perl-file-homedir
-#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
-_pkgreal=File-HomeDir
-pkgver=1.006
-pkgrel=0
-pkgdesc="Find your home and other directories on any platform"
-url="https://metacpan.org/release/File-HomeDir/"
-arch="noarch"
-license="GPL-1.0-or-later OR Artistic-1.0-Perl"
-depends="perl perl-file-which"
-subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/R/RE/REHSACK/File-HomeDir-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgreal-$pkgver"
-
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL INSTALLDIRS=vendor
- make
-}
-
-check() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make test
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
-}
-
-sha512sums="1ea90d68ed059ef5e890f6afb1280673dd5a597956f282c4ae8b4471c1751aa3cb2fcbe9caa6b2976937d11fd7233aa85a2dea611f87c79e0ddd1a501ceb890d File-HomeDir-1.006.tar.gz"
diff --git a/testing/perl-file-mimeinfo/APKBUILD b/testing/perl-file-mimeinfo/APKBUILD
deleted file mode 100644
index e82934925b0..00000000000
--- a/testing/perl-file-mimeinfo/APKBUILD
+++ /dev/null
@@ -1,43 +0,0 @@
-# Automatically generated by apkbuild-cpan, template 3
-# Contributor: psykose <alice@ayaya.dev>
-# Maintainer: psykose <alice@ayaya.dev>
-pkgname=perl-file-mimeinfo
-#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
-_pkgreal=File-MimeInfo
-pkgver=0.32
-pkgrel=0
-pkgdesc="Determine file types"
-url="https://metacpan.org/release/File-MimeInfo/"
-arch="noarch"
-license="GPL-1.0-or-later OR Artistic-1.0-Perl"
-depends="
- perl
- perl-encode-locale
- perl-file-basedir
- perl-file-desktopentry
- shared-mime-info
- "
-makedepends="perl-dev"
-subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/M/MI/MICHIELB/File-MimeInfo-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgreal-$pkgver"
-
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL INSTALLDIRS=vendor
- make
-}
-
-check() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make test
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
-}
-
-sha512sums="
-c8cdad74d732321471188c96a5d03725bc51c10655fee7c0e400da6a7215fee8925be95cb9114e748747fb03c3dd33f5b4d1ca0641bdf050339537a222ea6009 File-MimeInfo-0.32.tar.gz
-"
diff --git a/testing/perl-file-mmagic-xs/APKBUILD b/testing/perl-file-mmagic-xs/APKBUILD
index 57c45e5e988..f6adb12b420 100644
--- a/testing/perl-file-mmagic-xs/APKBUILD
+++ b/testing/perl-file-mmagic-xs/APKBUILD
@@ -5,7 +5,7 @@ pkgname=perl-file-mmagic-xs
#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
_pkgreal=File-MMagic-XS
pkgver=0.09008
-pkgrel=0
+pkgrel=3
pkgdesc="guess File Type With XS (a la mod_mime_magic)"
url="https://metacpan.org/release/File-MMagic-XS/"
arch="all"
@@ -13,7 +13,9 @@ license="GPL-1.0-or-later OR Artistic-1.0-Perl"
depends="perl"
makedepends="perl-dev"
subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/D/DM/DMAKI/File-MMagic-XS-$pkgver.tar.gz"
+source="https://cpan.metacpan.org/authors/id/D/DM/DMAKI/File-MMagic-XS-$pkgver.tar.gz
+ format-security.patch
+ "
builddir="$srcdir/$_pkgreal-$pkgver"
build() {
@@ -34,4 +36,5 @@ package() {
sha512sums="
82c322f413dabaf916b23d3d829c7ca525d454e00d8f6b7165cef06f70cd1874c45515639e913b06b415864cda3631d34e912b0bd8c85109d2950b7212f8ad05 File-MMagic-XS-0.09008.tar.gz
+31e6543989488f283a31424376a278d87aa11ec367cb0665b5d73690d409902e052fe6b6ac110743a1a2f972e6b9554b5b39287644b22b322dd265de45830a49 format-security.patch
"
diff --git a/testing/perl-file-mmagic-xs/format-security.patch b/testing/perl-file-mmagic-xs/format-security.patch
new file mode 100644
index 00000000000..83a35431dba
--- /dev/null
+++ b/testing/perl-file-mmagic-xs/format-security.patch
@@ -0,0 +1,13 @@
+diff --git a/src/perl-mmagic-xs.c b/src/perl-mmagic-xs.c
+index d418d38..03d43a8 100644
+--- a/src/perl-mmagic-xs.c
++++ b/src/perl-mmagic-xs.c
+@@ -1110,7 +1110,7 @@ GetDesc:
+
+ error:
+ FMM_SET_ERROR(state, err);
+- croak(SvPV_nolen(err));
++ croak("%s", SvPV_nolen(err));
+ }
+
+ /* maps to mod_mime_magic::apprentice */
diff --git a/testing/perl-file-rename/APKBUILD b/testing/perl-file-rename/APKBUILD
index c99f3e403ff..dd4f08e3d91 100644
--- a/testing/perl-file-rename/APKBUILD
+++ b/testing/perl-file-rename/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-file-rename
#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
_pkgreal=File-Rename
-pkgver=1.31
+pkgver=2.02
pkgrel=0
pkgdesc="Perl extension for renaming multiple files"
url="https://metacpan.org/pod/File::Rename"
@@ -18,21 +18,23 @@ builddir="$srcdir/$_pkgreal-$pkgver"
build() {
export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- perl Build.PL --installdirs=vendor
- ./Build
+ perl Makefile.PL --installdirs=vendor
+ make
}
check() {
- ./Build test
+ make test
}
package() {
- ./Build install --destdir="$pkgdir"
+ make DESTDIR="$pkgdir" INSTALLDIRS=vendor install
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
+ rm -rf $pkgdir/usr/lib
mv $pkgdir/usr/bin/rename $pkgdir/usr/bin/file-rename
+ mv $pkgdir/usr/share/man/man1/rename.1 $pkgdir/usr/share/man/man1/file-rename.1
chmod 0755 $pkgdir/usr/bin/file-rename
}
sha512sums="
-167e9febe279ab5ee29b748310e321c09c165cec717618c7668b846262fd898ada40c16c5b6b92baea2553ff827a6bd285f4801bd9487245b4715dfcafee9428 File-Rename-1.31.tar.gz
+01eb399659ed34c64ca37eef425c7da56649f83c863747858006f1b86f013fa916ec8e9126ba8186cbf6d21be7d04864161d34ac3b9b57e6333ebe2450d1731a File-Rename-2.02.tar.gz
"
diff --git a/testing/perl-freezethaw/APKBUILD b/testing/perl-freezethaw/APKBUILD
index 94f20578ebc..8fcebfbf66d 100644
--- a/testing/perl-freezethaw/APKBUILD
+++ b/testing/perl-freezethaw/APKBUILD
@@ -3,7 +3,7 @@
pkgname=perl-freezethaw
_pkgreal=FreezeThaw
pkgver=0.5001
-pkgrel=1
+pkgrel=2
pkgdesc="Convert arbitrary objects to/from strings"
url="https://metacpan.org/release/FreezeThaw/"
arch="noarch"
diff --git a/testing/perl-future-asyncawait/APKBUILD b/testing/perl-future-asyncawait/APKBUILD
deleted file mode 100644
index 8912135b8f8..00000000000
--- a/testing/perl-future-asyncawait/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Automatically generated by apkbuild-cpan, template 3
-# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer: rubicon <rubicon@mailo.com>
-pkgname=perl-future-asyncawait
-#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
-_pkgreal=Future-AsyncAwait
-pkgver=0.58
-pkgrel=0
-pkgdesc="deferred subroutine syntax for futures"
-url="https://metacpan.org/release/Future-AsyncAwait/"
-arch="all"
-license="GPL-1.0-or-later OR Artistic-1.0-Perl"
-depends="perl perl-future perl-xs-parse-sublike perl-xs-parse-keyword"
-makedepends="perl-dev perl-xs-parse-keyword perl-module-build perl-xs-parse-sublike perl-module-build"
-checkdepends="perl-test-refcount perl-future perl-test-fatal"
-subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/P/PE/PEVANS/Future-AsyncAwait-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgreal-$pkgver"
-
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- perl Build.PL --installdirs=vendor
- ./Build
-}
-
-check() {
- ./Build test
-}
-
-package() {
- ./Build install --destdir="$pkgdir"
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
-}
-
-sha512sums="
-cc940dcc90e8e08f51567879a6d8ac68222b3b49dc69c8dab9f0c4d3b40c5442a04d25ca6e2e7ddd0bb0a1debab77b6ff58ad7500b5d902453db1bc84ef622ed Future-AsyncAwait-0.58.tar.gz
-"
diff --git a/testing/perl-future-http/APKBUILD b/testing/perl-future-http/APKBUILD
new file mode 100644
index 00000000000..a5953dbf6ba
--- /dev/null
+++ b/testing/perl-future-http/APKBUILD
@@ -0,0 +1,42 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-future-http
+pkgver=0.17
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Future-HTTP
+pkgdesc="Provide the most appropriate HTTP client with a Future API"
+url="https://metacpan.org/release/Future-HTTP/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-future perl-http-message perl-moo"
+checkdepends="
+ perl-anyevent-future perl-anyevent-http perl-future-mojo
+ perl-net-async-http perl-test-http-localserver
+ "
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/C/CO/CORION/Future-HTTP-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+f7f899d7eb846e2e0f69938cf1f3bab480e63ebfc98bee2e8e25a33c007e4e2aaeb40e8af644420a4c28986bf70696d15d9793f86ac52339d5e3e40729121ac7 Future-HTTP-0.17.tar.gz
+"
diff --git a/testing/perl-future-q/APKBUILD b/testing/perl-future-q/APKBUILD
new file mode 100644
index 00000000000..3e62ecee269
--- /dev/null
+++ b/testing/perl-future-q/APKBUILD
@@ -0,0 +1,41 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-future-q
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Future-Q
+pkgver=0.120
+pkgrel=0
+pkgdesc="Future (or Promise or Deferred) with API like JavaScript's Q module"
+url="https://metacpan.org/release/Future-Q/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-devel-globaldestruction perl-future perl-try-tiny"
+makedepends="perl-module-build perl-module-build-prereqs-fromcpanfile"
+checkdepends="
+ perl-sub-identify perl-test-identity perl-test-memory-cycle
+ perl-test-mockmodule
+ "
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/T/TO/TOSHIOITO/Future-Q-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ perl Build.PL \
+ --installdirs=vendor \
+ --create_packlist=0
+ ./Build
+}
+
+check() {
+ ./Build test
+}
+
+package() {
+ ./Build install --destdir="$pkgdir"
+}
+
+sha512sums="
+483951025ec6823472b49aa91540b1d6added4c87a9dc3d2021893a0858620228ae85d98a4fc9c7a6e92f5311f043e452ebb9b56fde36dc583fc7bf864e7a1a2 Future-Q-0.120.tar.gz
+"
diff --git a/testing/perl-future-queue/APKBUILD b/testing/perl-future-queue/APKBUILD
new file mode 100644
index 00000000000..eb0064bbe14
--- /dev/null
+++ b/testing/perl-future-queue/APKBUILD
@@ -0,0 +1,38 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-future-queue
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Future-Queue
+pkgver=0.52
+pkgrel=0
+pkgdesc="FIFO queue of values that uses Futures"
+url="https://metacpan.org/release/Future-Queue/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-future"
+makedepends="perl-module-build"
+checkdepends="perl-test2-suite"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/P/PE/PEVANS/Future-Queue-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ perl Build.PL \
+ --installdirs=vendor \
+ --create_packlist=0
+ ./Build
+}
+
+check() {
+ ./Build test
+}
+
+package() {
+ ./Build install --destdir="$pkgdir"
+}
+
+sha512sums="
+d7b0f41a37367d2afc86044eda9902380ec08d82d6d7bc8cb27260325dd3e7b245207ebd1d13a944af80af595484a727839ad62e5b4cf69346c3e95e4abac859 Future-Queue-0.52.tar.gz
+"
diff --git a/testing/perl-gearman/APKBUILD b/testing/perl-gearman/APKBUILD
index c43670276b6..802d42d33c2 100644
--- a/testing/perl-gearman/APKBUILD
+++ b/testing/perl-gearman/APKBUILD
@@ -1,29 +1,41 @@
-# Automatically generated by apkbuild-cpan, template 2
+# Automatically generated by apkbuild-cpan, template 3
# Contributor: Nick Andrew <nick@nick-andrew.net>
-# Maintainer: Nick Andrew <nick@nick-andrew.net>
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=perl-gearman
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
_pkgreal=Gearman
pkgver=2.004.015
-pkgrel=1
-pkgdesc="Client and worker libraries for gearman job dispatch dispatch. Server is in separate package."
-url="https://metacpan.org/release/Gearman"
+pkgrel=3
+pkgdesc="Client and worker libraries for gearman job dispatch"
+url="https://metacpan.org/release/Gearman/"
arch="noarch"
license="GPL-1.0-or-later OR Artistic-1.0-Perl"
-depends="perl perl-list-moreutils perl-string-crc32 perl-io-socket-ssl"
-makedepends="perl-file-which perl-test-tcp perl-test-timer perl-proc-guard perl-test-exception"
+depends="
+ perl
+ perl-io-socket-ssl
+ perl-list-moreutils
+ perl-string-crc32
+ "
+checkdepends="
+ perl-file-which
+ perl-proc-guard
+ perl-test-exception
+ perl-test-tcp
+ perl-test-timer
+ "
subpackages="$pkgname-doc"
source="https://cpan.metacpan.org/authors/id/P/PA/PALIK/Gearman-$pkgver.tar.gz"
builddir="$srcdir/$_pkgreal-$pkgver"
-prepare() {
- default_prepare
+build() {
export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL INSTALLDIRS=vendor
+ make
}
-build() {
+check() {
export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make
+ make test
}
package() {
@@ -31,9 +43,6 @@ package() {
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-check() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make test
-}
-
-sha512sums="020eb3ca55f8ef33f546f60c6cb8c70d2dbbae21f11e0c165443569805040df7b2a0c89bec9de1d3c7733c3edf25bffa8faf69857c29f8b2371b5e06f5b0fd11 Gearman-2.004.015.tar.gz"
+sha512sums="
+020eb3ca55f8ef33f546f60c6cb8c70d2dbbae21f11e0c165443569805040df7b2a0c89bec9de1d3c7733c3edf25bffa8faf69857c29f8b2371b5e06f5b0fd11 Gearman-2.004.015.tar.gz
+"
diff --git a/testing/perl-getopt-long-descriptive/APKBUILD b/testing/perl-getopt-long-descriptive/APKBUILD
index 78da572d8d1..004b090c1dd 100644
--- a/testing/perl-getopt-long-descriptive/APKBUILD
+++ b/testing/perl-getopt-long-descriptive/APKBUILD
@@ -4,13 +4,13 @@
pkgname=perl-getopt-long-descriptive
#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
_pkgreal=Getopt-Long-Descriptive
-pkgver=0.110
+pkgver=0.114
pkgrel=0
pkgdesc="Getopt::Long, but simpler and more powerful"
url="https://metacpan.org/release/Getopt-Long-Descriptive/"
arch="noarch"
license="GPL-1.0-or-later OR Artistic-1.0-Perl"
-depends="perl perl-sub-exporter perl-params-validate"
+depends="perl perl-sub-exporter perl-params-validate perl-getopt-long>=2.55"
checkdepends="perl-test-warnings perl-cpan-meta-check perl-test-fatal"
subpackages="$pkgname-doc"
@@ -34,5 +34,5 @@ package() {
}
sha512sums="
-2b04427f81367ed650e722253e995899bd7e02475186a919c42b868f429040dfe3cd7df9a107f838f2afa4b97cd30993befc69801f18a5006526a25a32b0f1a7 Getopt-Long-Descriptive-0.110.tar.gz
+f7d640f0ecfc2619036f8df3e5e6a85334a814f05156e7b056cee3add372225898701c7772e7507bcf87174d6c2bf3a699fc3f924e7fdcc8837457598e35ef7a Getopt-Long-Descriptive-0.114.tar.gz
"
diff --git a/testing/perl-getopt-tabular/APKBUILD b/testing/perl-getopt-tabular/APKBUILD
index c3a27d1d1fa..fbc48366226 100644
--- a/testing/perl-getopt-tabular/APKBUILD
+++ b/testing/perl-getopt-tabular/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-getopt-tabular
_pkgreal=Getopt-Tabular
pkgver=0.3
-pkgrel=2
+pkgrel=4
pkgdesc="Table-driven argument parsing for Perl 5"
url="https://metacpan.org/release/Getopt-Tabular"
arch="noarch"
@@ -14,16 +14,14 @@ subpackages="$pkgname-doc"
source="https://cpan.metacpan.org/authors/id/G/GW/GWARD/$_pkgreal-$pkgver.tar.gz"
builddir="$srcdir/$_pkgreal-$pkgver"
-prepare() {
- default_prepare
-
+build() {
export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
}
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make && make test
+check() {
+ make test
}
package() {
@@ -31,4 +29,6 @@ package() {
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-sha512sums="a289d4861538ae542f7549364573cadd740538f73862d89dd49eaf6bed6f787ba2848246add171aed6aef4d7d36411d00bef70b76885aa948ce0e7fc8801652b Getopt-Tabular-0.3.tar.gz"
+sha512sums="
+a289d4861538ae542f7549364573cadd740538f73862d89dd49eaf6bed6f787ba2848246add171aed6aef4d7d36411d00bef70b76885aa948ce0e7fc8801652b Getopt-Tabular-0.3.tar.gz
+"
diff --git a/testing/perl-git-raw/APKBUILD b/testing/perl-git-raw/APKBUILD
new file mode 100644
index 00000000000..640605d4c7e
--- /dev/null
+++ b/testing/perl-git-raw/APKBUILD
@@ -0,0 +1,56 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-git-raw
+pkgver=0.90
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Git-Raw
+pkgdesc="Perl bindings to the Git linkable library (libgit2)"
+url="https://metacpan.org/release/Git-Raw/"
+arch="all"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl"
+makedepends="libgit2-dev perl-dev"
+checkdepends="perl-capture-tiny perl-file-slurp-tiny perl-test-deep"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/J/JA/JACQUESG/Git-Raw-$pkgver.tar.gz
+ libgit2-shared.mk.pl
+ libgit2-version-tests.patch
+ libgit2-1.7.1-tests.patch
+ libgit2-riscv64-tests.patch
+ "
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+prepare() {
+ default_prepare
+
+ cp -v ../libgit2-shared.mk.pl Makefile.PL
+}
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ # setting $HOME may fix the issue on the s390x & x86* package builders
+ make test HOME="$srcdir"
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+845c775d62509c48ecdcaf6a692d03916934575d520a85bab1693f73d78416c646d0b442cb68537de778c4ba5df901e43de378792e287588d3b0e79c05ea5fd9 Git-Raw-0.90.tar.gz
+6f11abebe591a59dcdf3bb692592221af5e7a812c403cf53d68ee55b90eb3da2e4ebce82baddfe703fc6ee960a5925da85aa556016032f859139fd464759bdb0 libgit2-shared.mk.pl
+54334d2758671b62f1852c68b23b2a33ecc76f8127ace636c8cd04c2712c005bc03e075357aa7becbd3a343a342c36ba977a288826c84d69686f5c9e9dd3d341 libgit2-version-tests.patch
+b43710476f3e1ee86f382f29a198635ce0e4715840d4b6e79135f5ce3cedd17ef3a3a95adf9609ee324158e698ffa1eff2f3ad23cef2fd46f22bdb2265edcc84 libgit2-1.7.1-tests.patch
+1a11cddecaf7991fa7a4a4b37754e22c0e39645e27afc775040b6d9b9f79b1be805b08c1e5642ad1d03ce1566e0efb8d0577041a4b127dfb072ed3afa9a2635f libgit2-riscv64-tests.patch
+"
diff --git a/testing/perl-git-raw/libgit2-1.7.1-tests.patch b/testing/perl-git-raw/libgit2-1.7.1-tests.patch
new file mode 100644
index 00000000000..ae019a91912
--- /dev/null
+++ b/testing/perl-git-raw/libgit2-1.7.1-tests.patch
@@ -0,0 +1,47 @@
+Patch-Source: https://sources.debian.org/data/main/libg/libgit-raw-perl/0.90+ds-2/debian/patches/libgit2_1.7.1
+--
+Description: adjust tests to libgit2 1.7.1
+ * t/08-branch.t: relog handling changed, adjust to the new 2 entries
+ * t/19-push.t: the pack_progress callback returns all kind of values
+ (timing issue?), mark as TODO
+Origin: vendor
+Bug-Debian: https://bugs.debian.org/1057318
+Forwarded: not-needed (upstream uses a vendored libgit2)
+Author: gregor herrmann <gregoa@debian.org>
+Last-Update: 2023-12-09
+
+--- a/t/08-branch.t
++++ b/t/08-branch.t
+@@ -51,7 +51,7 @@
+
+ my $reflog = $look -> reflog;
+ my @entries = $reflog -> entries;
+-is scalar(@entries), 1;
++is scalar(@entries), 2;
+
+ ok (!defined (Git::Raw::Branch -> lookup($repo, 'nonexistent_local', 1)));
+ ok (!defined (Git::Raw::Branch -> lookup($repo, 'nonexistent_remote', 0)));
+--- a/t/19-push.t
++++ b/t/19-push.t
+@@ -31,7 +31,10 @@
+ $stage == Git::Raw::Packbuilder->DELTAFICATION);
+ if ($stage == Git::Raw::Packbuilder->ADDING_OBJECTS)
+ {
++ TODO: {
++ local $TODO = 'flaky with libgit2 1.7.1';
+ is $current, 1;
++ }
+ is $total, 0;
+ }
+ else
+@@ -70,7 +73,10 @@
+ ok ($stage == 0 || $stage == 1);
+ if ($stage == 0)
+ {
++ TODO: {
++ local $TODO = 'flaky with libgit2 1.7.1';
+ is $current, 1;
++ }
+ is $total, 0;
+ }
+ else
diff --git a/testing/perl-git-raw/libgit2-riscv64-tests.patch b/testing/perl-git-raw/libgit2-riscv64-tests.patch
new file mode 100644
index 00000000000..0706f047049
--- /dev/null
+++ b/testing/perl-git-raw/libgit2-riscv64-tests.patch
@@ -0,0 +1,19 @@
+--- a/t/27-packbuilder.t
++++ b/t/27-packbuilder.t
+@@ -5,6 +5,7 @@
+ use File::Spec::Functions qw(catfile rel2abs);
+ use File::Path qw(make_path);
+ use Git::Raw;
++use Config;
+
+ my $path = rel2abs(catfile('t', 'test_repo'));
+ my $repo = Git::Raw::Repository -> open($path);
+@@ -55,7 +56,7 @@
+ is $pb -> written, 4;
+ is $pb -> object_count, 4;
+ is $transfer_progress_count, $pb -> written + 1;
+-is $pack_progress_count, 3;
++is $pack_progress_count, 3 if $Config{archname} !~ m/riscv64/;
+
+ is $pb -> hash, '4ec0baa806411548c1051dbd4620bd8447045d9e';
+
diff --git a/testing/perl-git-raw/libgit2-shared.mk.pl b/testing/perl-git-raw/libgit2-shared.mk.pl
new file mode 100644
index 00000000000..328e083e7ef
--- /dev/null
+++ b/testing/perl-git-raw/libgit2-shared.mk.pl
@@ -0,0 +1,213 @@
+use strict;
+use warnings;
+use ExtUtils::MakeMaker 0;
+use ExtUtils::Constant qw (WriteConstants);
+
+my %WriteMakefileArgs = (
+ "ABSTRACT" => "Perl bindings to the Git linkable library (libgit2)",
+ "AUTHOR" => "Jacques Germishuys <jacquesg\@cpan.org>, Alessandro Ghedini <alexbio\@cpan.org>",
+ "CONFIGURE_REQUIRES" => {
+ "ExtUtils::Constant" => "0.23",
+ "ExtUtils::MakeMaker" => "6.63_03",
+ "File::Basename" => "2.74",
+ "Getopt::Long" => "2.35"
+ },
+ "DEFINE" => "-DGIT_SSH",
+ "DISTNAME" => "Git-Raw",
+ "LIBS" => "-lgit2",
+ "LICENSE" => "perl",
+ "MIN_PERL_VERSION" => "5.8.8",
+ "NAME" => "Git::Raw",
+ "OBJECT" => "\$(O_FILES)",
+ "PREREQ_PM" => {
+ "Carp" => 0,
+ "XSLoader" => 0,
+ "overload" => 0,
+ "strict" => 0,
+ "warnings" => 0
+ },
+ "TEST_REQUIRES" => {
+ "Capture::Tiny" => 0,
+ "Cwd" => 0,
+ "File::Basename" => 0,
+ "File::Copy" => 0,
+ "File::Path" => 0,
+ "File::Slurp::Tiny" => "0.001",
+ "File::Spec" => 0,
+ "File::Spec::Functions" => 0,
+ "File::Spec::Unix" => 0,
+ "IO::Handle" => 0,
+ "IPC::Open3" => 0,
+ "Test::Deep" => 0,
+ "Test::More" => 0,
+ "Time::Local" => 0
+ },
+ "VERSION_FROM" => "lib/Git/Raw.pm",
+ "test" => {
+ "TESTS" => "t/*.t"
+ }
+);
+
+my @error_constants = (qw(
+ OK
+ ERROR
+ ENOTFOUND
+ EEXISTS
+ EAMBIGUOUS
+ EBUFS
+ EBAREREPO
+ EUNBORNBRANCH
+ EUNMERGED
+ ENONFASTFORWARD
+ EINVALIDSPEC
+ ECONFLICT
+ ELOCKED
+ EMODIFIED
+ EAUTH
+ ECERTIFICATE
+ EAPPLIED
+ EPEEL
+ EEOF
+ EINVALID
+ EUNCOMMITTED
+ EDIRECTORY
+ EMERGECONFLICT
+ PASSTHROUGH
+
+ ASSERT
+ USAGE
+ RESOLVE
+));
+
+my @category_constants = (qw(
+ NONE
+ NOMEMORY
+ OS
+ INVALID
+ REFERENCE
+ ZLIB
+ REPOSITORY
+ CONFIG
+ REGEX
+ ODB
+ INDEX
+ OBJECT
+ NET
+ TAG
+ TREE
+ INDEXER
+ SSL
+ SUBMODULE
+ THREAD
+ STASH
+ CHECKOUT
+ FETCHHEAD
+ MERGE
+ SSH
+ FILTER
+ REVERT
+ CALLBACK
+ CHERRYPICK
+ DESCRIBE
+ REBASE
+ FILESYSTEM
+
+ INTERNAL
+));
+
+my @packbuilder_constants = (qw(
+ ADDING_OBJECTS
+ DELTAFICATION
+));
+
+my @stash_progress_constants = (qw(
+ NONE
+ LOADING_STASH
+ ANALYZE_INDEX
+ ANALYZE_MODIFIED
+ ANALYZE_UNTRACKED
+ CHECKOUT_UNTRACKED
+ CHECKOUT_MODIFIED
+ DONE
+));
+
+my @rebase_operation_constants = (qw(
+ PICK
+ REWORD
+ EDIT
+ SQUASH
+ FIXUP
+ EXEC
+));
+
+my @object_constants = (qw(
+ ANY
+ BAD
+ COMMIT
+ TREE
+ BLOB
+ TAG
+));
+
+ExtUtils::Constant::WriteConstants(
+ NAME => 'Git::Raw::Error',
+ NAMES => [@error_constants],
+ DEFAULT_TYPE => 'IV',
+ C_FILE => 'const-c-error.inc',
+ XS_FILE => 'const-xs-error.inc',
+ XS_SUBNAME => '_constant',
+ C_SUBNAME => '_error_constant',
+);
+
+ExtUtils::Constant::WriteConstants(
+ NAME => 'Git::Raw::Error::Category',
+ NAMES => [@category_constants],
+ DEFAULT_TYPE => 'IV',
+ C_FILE => 'const-c-category.inc',
+ XS_FILE => 'const-xs-category.inc',
+ XS_SUBNAME => '_constant',
+ C_SUBNAME => '_category_constant',
+);
+
+ExtUtils::Constant::WriteConstants(
+ NAME => 'Git::Raw::Packbuilder',
+ NAMES => [@packbuilder_constants],
+ DEFAULT_TYPE => 'IV',
+ C_FILE => 'const-c-packbuilder.inc',
+ XS_FILE => 'const-xs-packbuilder.inc',
+ XS_SUBNAME => '_constant',
+ C_SUBNAME => '_packbuilder_constant',
+);
+
+ExtUtils::Constant::WriteConstants(
+ NAME => 'Git::Raw::Stash::Progress',
+ NAMES => [@stash_progress_constants],
+ DEFAULT_TYPE => 'IV',
+ C_FILE => 'const-c-stash-progress.inc',
+ XS_FILE => 'const-xs-stash-progress.inc',
+ XS_SUBNAME => '_constant',
+ C_SUBNAME => '_stash_progress_constant',
+);
+
+ExtUtils::Constant::WriteConstants(
+ NAME => 'Git::Raw::Rebase::Operation',
+ NAMES => [@rebase_operation_constants],
+ DEFAULT_TYPE => 'IV',
+ C_FILE => 'const-c-rebase-operation.inc',
+ XS_FILE => 'const-xs-rebase-operation.inc',
+ XS_SUBNAME => '_constant',
+ C_SUBNAME => '_rebase_operation_constant',
+);
+
+ExtUtils::Constant::WriteConstants(
+ NAME => 'Git::Raw::Object',
+ NAMES => [@object_constants],
+ DEFAULT_TYPE => 'IV',
+ C_FILE => 'const-c-object.inc',
+ XS_FILE => 'const-xs-object.inc',
+ XS_SUBNAME => '_constant',
+ C_SUBNAME => '_object_constant',
+);
+
+WriteMakefile(%WriteMakefileArgs);
+exit(0);
diff --git a/testing/perl-git-raw/libgit2-version-tests.patch b/testing/perl-git-raw/libgit2-version-tests.patch
new file mode 100644
index 00000000000..9f778dcf301
--- /dev/null
+++ b/testing/perl-git-raw/libgit2-version-tests.patch
@@ -0,0 +1,64 @@
+Patch-Source: https://sources.debian.org/data/main/libg/libgit-raw-perl/0.90+ds-2/debian/patches/libgit2-version-tests
+--
+Description: fix failing test
+ Patch out the expected libgit2 version from the test,
+ as the system library can have a different version.
+Origin: vendor
+Bug-Debian: https://bugs.debian.org/906482
+Forwarded: not-needed, cf. debian/patches/remove-convenience-libs
+Author: gregor herrmann <gregoa@debian.org>
+Last-Update: 2022-10-29
+
+--- a/t/02-commit.t
++++ b/t/02-commit.t
+@@ -231,6 +231,7 @@
+
+ my $commit2_id = $commit2 -> id;
+ my $patch = "\n".join("\n", grep { $_ !~ /^Date/ } split (/\n/, $commit2 -> as_email))."\n";
++$patch =~ s/(libgit2) [0-9.]+/$1/;
+ my $expected_patch = qq{
+ From $commit2_id Mon Sep 17 00:00:00 2001
+ From: Git::Raw author <git-xs\@example.com>
+@@ -250,7 +251,7 @@
+ +this is a second test
+ \\ No newline at end of file
+ --
+-libgit2 1.5.0
++libgit2
+ };
+
+ is $patch, $expected_patch;
+@@ -261,6 +262,7 @@
+ };
+
+ $patch = "\n".join("\n", grep { $_ !~ /^Date/ } split (/\n/, $commit2 -> as_email($email_opts, {})))."\n";
++$patch =~ s/(libgit2) [0-9.]+/$1/;
+ $expected_patch = qq{
+ From $commit2_id Mon Sep 17 00:00:00 2001
+ From: Git::Raw author <git-xs\@example.com>
+@@ -280,7 +282,7 @@
+ +this is a second test
+ \\ No newline at end of file
+ --
+-libgit2 1.5.0
++libgit2
+ };
+
+ is $patch, $expected_patch;
+@@ -290,6 +292,7 @@
+ };
+
+ $patch = "\n".join("\n", grep { $_ !~ /^Date/ } split (/\n/, $commit2 -> as_email($email_opts)))."\n";
++$patch =~ s/(libgit2) [0-9.]+/$1/;
+ $expected_patch = qq{
+ From $commit2_id Mon Sep 17 00:00:00 2001
+ From: Git::Raw author <git-xs\@example.com>
+@@ -309,7 +312,7 @@
+ +this is a second test
+ \\ No newline at end of file
+ --
+-libgit2 1.5.0
++libgit2
+ };
+
+ is $patch, $expected_patch;
diff --git a/testing/perl-git-repository/APKBUILD b/testing/perl-git-repository/APKBUILD
new file mode 100644
index 00000000000..430fd0ea35c
--- /dev/null
+++ b/testing/perl-git-repository/APKBUILD
@@ -0,0 +1,54 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-git-repository
+pkgver=1.325
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Git-Repository
+pkgdesc="Perl interface to Git repositories"
+url="https://metacpan.org/release/Git-Repository/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="
+ git perl perl-git-version-compare
+ perl-namespace-clean perl-system-command
+ "
+checkdepends="perl-test-requires-git"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/B/BO/BOOK/Git-Repository-$pkgver.tar.gz
+ git-2.38.1-tests.patch
+ git-2.40.0-tests.patch
+ "
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+doc() {
+ local file; find "$pkgdir" -name "*.pod" | while read -r file; do
+ amove "${file#"$pkgdir"}"
+ done
+ default_doc
+}
+
+sha512sums="
+eeaf7b975d6f6f7461ec4dbefb00bcd127badc5b7978910b6bd2493a13ccc4ff818e68ee22c4c23244af9446304122aee16544537bd1170c41dd6aabbba9b56c Git-Repository-1.325.tar.gz
+58516be4cde0b9bc0ceaa18600a316fc78886adf17965ab6aecebcc8949e0e4d92f75b63083634848aaf1a752b2cccf79cc85db4e51b290bab6c2acda95b0468 git-2.38.1-tests.patch
+019d44ef924dd2dc45cc3ad17b9eaf00d8ab84003c7c84d4962bf0654dbc4232373a6d67d2903d70bd4512331e201335286028e0ec63a79d1367695f954b4a60 git-2.40.0-tests.patch
+"
diff --git a/testing/perl-git-repository/git-2.38.1-tests.patch b/testing/perl-git-repository/git-2.38.1-tests.patch
new file mode 100644
index 00000000000..13ffc2f47b2
--- /dev/null
+++ b/testing/perl-git-repository/git-2.38.1-tests.patch
@@ -0,0 +1,33 @@
+Patch-Source: https://sources.debian.org/data/main/libg/libgit-repository-perl/1.325-3/debian/patches/gh-22.patch
+--
+From 4dc8dedb97891f37b9da2220e5740c65685b0906 Mon Sep 17 00:00:00 2001
+From: Jan Pazdziora <jpazdziora@redhat.com>
+Date: Mon, 31 Oct 2022 17:26:00 +0100
+Subject: [PATCH] Workaround change of behaviour in git 2.38.1 for
+ CVE-2022-39253.
+
+By default, protocol.file.allow now defaults to user, preventing
+clones with symlinks.
+
+https://github.blog/2022-10-18-git-security-vulnerabilities-announced/#cve-2022-39253
+
+
+Bug: https://rt.cpan.org/Public/Bug/Display.html?id=144889
+Bug-Debian: https://bugs.debian.org/1023597
+
+---
+ t/21-submodule.t | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/t/21-submodule.t b/t/21-submodule.t
+index 444029c..97374f8 100644
+--- a/t/21-submodule.t
++++ b/t/21-submodule.t
+@@ -44,6 +44,7 @@ $s->run( checkout => 'master', { quiet => 1 } );
+ # now test adding a submodule
+ my $r = test_repository(@init);
+ $r->run(
++ ( Git::Repository->version_ge('2.38.1') ? ('-c', 'protocol.file.allow=always') : ()),
+ submodule => add => $s->work_tree => 'sub',
+ { env => { GIT_WORK_TREE => undef } }
+ );
diff --git a/testing/perl-git-repository/git-2.40.0-tests.patch b/testing/perl-git-repository/git-2.40.0-tests.patch
new file mode 100644
index 00000000000..510c7999e2b
--- /dev/null
+++ b/testing/perl-git-repository/git-2.40.0-tests.patch
@@ -0,0 +1,24 @@
+Patch-Source: https://sources.debian.org/data/main/libg/libgit-repository-perl/1.325-3/debian/patches/git-2.40.0.patch
+--
+Description: Skip subtest when git version >= 2.40.0
+ 'git var GIT_EDITOR' behaviour was changed in git 2.40.0:
+ https://github.com/git/git/commit/2ad150e35e52705a97f18bee08f34e00a6557d6f
+ so skip the test which expect the old error messages if git is new enough.
+Origin: vendor
+Bug: https://github.com/book/Git-Repository/pull/23
+Forwarded: https://github.com/book/Git-Repository/pull/23
+Author: gregor herrmann <gregoa@debian.org>
+Last-Update: 2023-03-22
+
+--- a/t/20-simple.t
++++ b/t/20-simple.t
+@@ -85,6 +85,9 @@
+ skip "this test does not work with msysgit on Win32", 2
+ if $^O eq 'MSWin32';
+
++ skip "'git var GIT_EDITOR' behaviour was changed in git 2.40.0, and we have $version", 2
++ if Git::Repository->version_ge('2.40.0');
++
+ ok( !eval { $r->run( var => 'GIT_EDITOR' ); 1; }, 'git var GIT_EDITOR' );
+ like(
+ $@,
diff --git a/testing/perl-git-version-compare/APKBUILD b/testing/perl-git-version-compare/APKBUILD
new file mode 100644
index 00000000000..c53b5253043
--- /dev/null
+++ b/testing/perl-git-version-compare/APKBUILD
@@ -0,0 +1,39 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-git-version-compare
+pkgver=1.005
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Git-Version-Compare
+pkgdesc="Functions to compare Git versions"
+url="https://metacpan.org/release/Git-Version-Compare/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl"
+checkdepends="perl-test-nowarnings"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/B/BO/BOOK/Git-Version-Compare-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+f58502ec282d4c36411c27143ae7a0f0abc751d508b90329a55a87d9812e43dfdba7dda372c7ae63783faa17ec61bf83ad4c99fa4be2a673fa4bc9489a13e246 Git-Version-Compare-1.005.tar.gz
+"
diff --git a/testing/perl-glib-ex-objectbits/APKBUILD b/testing/perl-glib-ex-objectbits/APKBUILD
index f40c924c3d7..c810081e960 100644
--- a/testing/perl-glib-ex-objectbits/APKBUILD
+++ b/testing/perl-glib-ex-objectbits/APKBUILD
@@ -4,25 +4,26 @@
pkgname=perl-glib-ex-objectbits
_pkgreal=Glib-Ex-ObjectBits
pkgver=16
-pkgrel=3
+pkgrel=5
pkgdesc="Helpers for Glib objects."
url="https://metacpan.org/release/Glib-Ex-ObjectBits"
arch="noarch"
license="GPL-3.0-or-later"
+options="!check" # fixme: Failed test 'store readonly-float, g_log warning'
depends="perl perl-devel-globaldestruction perl-glib"
+checkdepends="perl-test-weaken perl-gtk2 perl-pango"
subpackages="$pkgname-doc"
source="https://cpan.metacpan.org/authors/id/K/KR/KRYDE/$_pkgreal-$pkgver.tar.gz"
-
builddir="$srcdir/$_pkgreal-$pkgver"
-prepare() {
+build() {
export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
}
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make && make test
+check() {
+ make test
}
package() {
@@ -30,4 +31,6 @@ package() {
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-sha512sums="e5820d251512121f4b44cfd67bcf44b1d94dfb756c5e646436684c45ff2d12f12cbfef4d9deb5deaaec0195ae1113448f0427dfe7f175ebd0ed878fb4ddcf671 Glib-Ex-ObjectBits-16.tar.gz"
+sha512sums="
+e5820d251512121f4b44cfd67bcf44b1d94dfb756c5e646436684c45ff2d12f12cbfef4d9deb5deaaec0195ae1113448f0427dfe7f175ebd0ed878fb4ddcf671 Glib-Ex-ObjectBits-16.tar.gz
+"
diff --git a/testing/perl-glib-object-introspection/APKBUILD b/testing/perl-glib-object-introspection/APKBUILD
index 89ad0412c39..c7770dc5d19 100644
--- a/testing/perl-glib-object-introspection/APKBUILD
+++ b/testing/perl-glib-object-introspection/APKBUILD
@@ -4,14 +4,14 @@
pkgname=perl-glib-object-introspection
#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
_pkgreal=Glib-Object-Introspection
-pkgver=0.049
-pkgrel=2
+pkgver=0.051
+pkgrel=0
pkgdesc="Dynamically create Perl language bindings"
url="https://metacpan.org/release/Glib-Object-Introspection/"
arch="all"
license="GPL-2.0-or-later"
depends="perl perl-glib perl-extutils-pkgconfig perl-extutils-depends"
-makedepends="perl-dev perl-extutils-depends perl-extutils-pkgconfig perl-glib gobject-introspection-dev"
+makedepends="perl-dev gobject-introspection-dev"
subpackages="$pkgname-doc"
source="https://cpan.metacpan.org/authors/id/X/XA/XAOC/Glib-Object-Introspection-$pkgver.tar.gz"
builddir="$srcdir/$_pkgreal-$pkgver"
@@ -33,4 +33,6 @@ package() {
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-sha512sums="fa927661dc761bfae9dba87e1e2d519b10c3aac4d6dcea37764972a0413a4f5025a12df640d66928b631c2933d4b0e6d02b559ea2c1eaa38fae6f7a9d98fe322 Glib-Object-Introspection-0.049.tar.gz"
+sha512sums="
+93ebe81b586270cbeca4296bfdd1d337d931b6349ca16a8e50bfc631c89a77d93f4d8076289e91bdcec0fdb732a2900b2a6c5e78e571c0c0fd4c7f5239cc0de5 Glib-Object-Introspection-0.051.tar.gz
+"
diff --git a/testing/perl-graphql-client/APKBUILD b/testing/perl-graphql-client/APKBUILD
new file mode 100644
index 00000000000..229e3f33ce2
--- /dev/null
+++ b/testing/perl-graphql-client/APKBUILD
@@ -0,0 +1,53 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-graphql-client
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=GraphQL-Client
+pkgver=0.605
+pkgrel=0
+pkgdesc="Execute GraphQL queries and mutations"
+url="https://metacpan.org/release/GraphQL-Client/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-http-anyua perl-json-maybexs perl-namespace-clean"
+checkdepends="perl-future perl-test-deep perl-test-exception"
+subpackages="$pkgname-cli $pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/C/CC/CCM/GraphQL-Client-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+cli() {
+ pkgdesc="$pkgdesc (command-line program)"
+ depends="
+ $pkgname=$pkgver-r$pkgrel
+ perl-json-path
+ perl-text-csv
+ perl-text-table-any
+ perl-yaml
+ "
+
+ amove usr/bin/graphql
+ amove usr/share/perl5/vendor_perl/GraphQL/Client/CLI.pm
+}
+
+sha512sums="
+c22b0afe26de013bca679a715359f0a6d3b40bd0e5b21cad95d25c50d785369ab309f380241438639472aa4e23ade45e2306ee507ac6ae2fbb068da9186ceba9 GraphQL-Client-0.605.tar.gz
+"
diff --git a/testing/perl-gtk2-ex-listmodelconcat/APKBUILD b/testing/perl-gtk2-ex-listmodelconcat/APKBUILD
index 69ee3abbfbd..637cd64aeae 100644
--- a/testing/perl-gtk2-ex-listmodelconcat/APKBUILD
+++ b/testing/perl-gtk2-ex-listmodelconcat/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-gtk2-ex-listmodelconcat
_pkgreal=Gtk2-Ex-ListModelConcat
pkgver=11
-pkgrel=2
+pkgrel=4
pkgdesc="Concatenate list models in Gtk2-Perl."
url="https://metacpan.org/release/Gtk2-Ex-ListModelConcat/"
arch="noarch"
@@ -12,25 +12,23 @@ license="open_source"
depends="perl perl-glib perl-gtk2 perl-glib-ex-objectbits perl-gtk2-ex-widgetbits"
subpackages="$pkgname-doc"
source="https://cpan.metacpan.org/authors/id/K/KR/KRYDE/$_pkgreal-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
-_builddir="$srcdir/$_pkgreal-$pkgver"
-
-prepare() {
- cd "$_builddir"
- export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'`
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
}
-build() {
- cd "$_builddir"
- export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'`
- make && make test
+check() {
+ make test
}
package() {
- cd "$_builddir"
- make DESTDIR="$pkgdir" install || return 1
+ make DESTDIR="$pkgdir" install
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-sha512sums="f46fb70aaa69ae2a669b87760dea950402576f81059590ef8d227c270ac2efdacc4959a698def46aa26a3e676349eb31085290ab5fcfea9c1ce6c56f23043cc4 Gtk2-Ex-ListModelConcat-11.tar.gz"
+sha512sums="
+f46fb70aaa69ae2a669b87760dea950402576f81059590ef8d227c270ac2efdacc4959a698def46aa26a3e676349eb31085290ab5fcfea9c1ce6c56f23043cc4 Gtk2-Ex-ListModelConcat-11.tar.gz
+"
diff --git a/testing/perl-gtk2-ex-widgetbits/APKBUILD b/testing/perl-gtk2-ex-widgetbits/APKBUILD
index 239057ffa81..f0389909bf3 100644
--- a/testing/perl-gtk2-ex-widgetbits/APKBUILD
+++ b/testing/perl-gtk2-ex-widgetbits/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-gtk2-ex-widgetbits
_pkgreal=Gtk2-Ex-WidgetBits
pkgver=48
-pkgrel=2
+pkgrel=3
pkgdesc="Helpers for Gtk2 widgets."
url="https://metacpan.org/release/Gtk2-Ex-WidgetBits/"
arch="noarch"
@@ -12,25 +12,23 @@ license="open_source"
depends="perl perl-glib perl-glib-ex-objectbits perl-gtk2 perl-scope-guard perl-pango"
subpackages="$pkgname-doc"
source="https://cpan.metacpan.org/authors/id/K/KR/KRYDE/$_pkgreal-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
-_builddir="$srcdir/$_pkgreal-$pkgver"
-
-prepare() {
- cd "$_builddir"
- export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'`
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
}
-build() {
- cd "$_builddir"
- export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'`
- make && make test
+check() {
+ make test
}
package() {
- cd "$_builddir"
- make DESTDIR="$pkgdir" install || return 1
+ make DESTDIR="$pkgdir" install
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-sha512sums="d67201f574dc5d081962e16b0439a9759a2e77a72f2530b9f7b6f7dfa214f6be39f91a0a11294d3903e490f6bf1abf1f3c1d09e765f3f9ebcc951cf59aacbbe3 Gtk2-Ex-WidgetBits-48.tar.gz"
+sha512sums="
+d67201f574dc5d081962e16b0439a9759a2e77a72f2530b9f7b6f7dfa214f6be39f91a0a11294d3903e490f6bf1abf1f3c1d09e765f3f9ebcc951cf59aacbbe3 Gtk2-Ex-WidgetBits-48.tar.gz
+"
diff --git a/testing/perl-gtk2/APKBUILD b/testing/perl-gtk2/APKBUILD
index d82e0cc6413..84a9f572780 100644
--- a/testing/perl-gtk2/APKBUILD
+++ b/testing/perl-gtk2/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-gtk2
_pkgreal=Gtk2
pkgver=1.24993
-pkgrel=3
+pkgrel=5
pkgdesc="Perl module for Gtk2"
# Failed test 'Don't crash on partial pixmap data'
options="!check"
diff --git a/testing/perl-gtk3/APKBUILD b/testing/perl-gtk3/APKBUILD
index 1defa9a4643..787700bcba8 100644
--- a/testing/perl-gtk3/APKBUILD
+++ b/testing/perl-gtk3/APKBUILD
@@ -5,13 +5,13 @@ pkgname=perl-gtk3
#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
_pkgreal=Gtk3
pkgver=0.038
-pkgrel=0
+pkgrel=1
pkgdesc="Perl interface to the 3.x series of the gtk+ toolkit"
url="https://metacpan.org/release/Gtk3/"
arch="noarch"
license="GPL-2.0-or-later"
depends="perl perl-glib-object-introspection perl-cairo-gobject"
-makedepends="perl-cairo perl-glib-object-introspection perl-cairo-gobject gtk+3.0-dev"
+makedepends="perl-cairo gtk+3.0-dev"
subpackages="$pkgname-doc"
source="https://cpan.metacpan.org/authors/id/X/XA/XAOC/Gtk3-$pkgver.tar.gz"
builddir="$srcdir/$_pkgreal-$pkgver"
diff --git a/testing/perl-guard/APKBUILD b/testing/perl-guard/APKBUILD
index 2f9093e391a..613ae9e5fac 100644
--- a/testing/perl-guard/APKBUILD
+++ b/testing/perl-guard/APKBUILD
@@ -4,45 +4,30 @@
pkgname=perl-guard
_pkgreal=Guard
pkgver=1.023
-pkgrel=5
-pkgdesc="unknown"
+pkgrel=8
+pkgdesc="Perl module to cleanup blocks safely"
url="https://metacpan.org/release/Guard/"
arch="all"
license="GPL PerlArtistic"
-cpandepends=""
-cpanmakedepends=""
-cpancheckdepends=""
-depends="$cpandepends"
-makedepends="perl-dev $cpanmakedepends"
-checkdepends="$cpancheckdepends"
+makedepends="perl-dev"
subpackages="$pkgname-doc"
source="https://cpan.metacpan.org/authors/id/M/ML/MLEHMANN/$_pkgreal-$pkgver.tar.gz"
builddir="$srcdir/$_pkgreal-$pkgver"
-prepare() {
- default_prepare || return 1
-
- cd "$builddir"
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+build() {
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
}
-build() {
- cd "$builddir"
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make
+check() {
+ make test
}
package() {
- cd "$builddir"
- make DESTDIR="$pkgdir" install || return 1
+ make DESTDIR="$pkgdir" install
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-check() {
- cd "$builddir"
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make test
-}
-
-sha512sums="a991d6f9ebfadffbcabaccc45d964c40c46c7212c6de089f0c496040e151236c59cc7dd7076464f0ef96936f2c4cd462fbedf8e729d522f1090682eda976676f Guard-1.023.tar.gz"
+sha512sums="
+a991d6f9ebfadffbcabaccc45d964c40c46c7212c6de089f0c496040e151236c59cc7dd7076464f0ef96936f2c4cd462fbedf8e729d522f1090682eda976676f Guard-1.023.tar.gz
+"
diff --git a/testing/perl-hash-merge/APKBUILD b/testing/perl-hash-merge/APKBUILD
index f20c5e260d5..9ba319b2315 100644
--- a/testing/perl-hash-merge/APKBUILD
+++ b/testing/perl-hash-merge/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-hash-merge
_pkgreal=Hash-Merge
pkgver=0.302
-pkgrel=1
+pkgrel=2
pkgdesc="Merges arbitrarily deep hashes into a single hash"
url="https://metacpan.org/release/Hash-Merge/"
arch="noarch"
@@ -12,7 +12,7 @@ license="GPL PerlArtistic"
depends="perl perl-clone"
checkdepends="perl-clone-choose"
subpackages="$pkgname-doc"
-source=""https://cpan.metacpan.org/authors/id/H/HE/HERMES/Hash-Merge-$pkgver.tar.gz
+source="https://cpan.metacpan.org/authors/id/H/HE/HERMES/Hash-Merge-$pkgver.tar.gz"
builddir="$srcdir/$_pkgreal-$pkgver"
diff --git a/testing/perl-hash-ordered/APKBUILD b/testing/perl-hash-ordered/APKBUILD
new file mode 100644
index 00000000000..3f5df4fa997
--- /dev/null
+++ b/testing/perl-hash-ordered/APKBUILD
@@ -0,0 +1,46 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-hash-ordered
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Hash-Ordered
+pkgver=0.014
+pkgrel=0
+pkgdesc="Fast, pure-Perl ordered hash class"
+url="https://metacpan.org/release/Hash-Ordered/"
+arch="noarch"
+license="Apache-2.0"
+depends="perl"
+checkdepends="perl-test-deep perl-test-failwarnings perl-test-fatal"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN/Hash-Ordered-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+doc() {
+ local file; find "$pkgdir" -name "*.pod" | while read -r file; do
+ amove "${file#"$pkgdir"}"
+ done
+ default_doc
+}
+
+sha512sums="
+077abdd3b536f5b31d913c2c0849e1775f91daa5ca83734671088ab06d9fe11cf80f743e32c5db1bf70a874248337c3bebeafceef1a6e38078f92966474480c3 Hash-Ordered-0.014.tar.gz
+"
diff --git a/testing/perl-hook-lexwrap/APKBUILD b/testing/perl-hook-lexwrap/APKBUILD
deleted file mode 100644
index fe90b3816cd..00000000000
--- a/testing/perl-hook-lexwrap/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Automatically generated by apkbuild-cpan, template 3
-# Contributor: Timothy Legge <timlegge@gmail.com>
-# Maintainer: Timothy Legge <timlegge@gmail.com>
-pkgname=perl-hook-lexwrap
-#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
-_pkgreal=Hook-LexWrap
-pkgver=0.26
-pkgrel=0
-pkgdesc="Lexically scoped subroutine wrappers"
-url="https://metacpan.org/release/Hook-LexWrap/"
-arch="noarch"
-license="GPL-1.0-or-later OR Artistic-1.0-Perl"
-depends="perl"
-checkdepends="perl-test-simple"
-subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/E/ET/ETHER/Hook-LexWrap-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgreal-$pkgver"
-
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL INSTALLDIRS=vendor
- make
-}
-
-check() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make test
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
-}
-
-sha512sums="
-f7771d4fb8379f43fa5b864e345f4526603914c3c486c637ea07fb9e2d41569bf40948a9039fab7d10c683fb85e16a8653876613903d34cc6801fcc9e92aa58b Hook-LexWrap-0.26.tar.gz
-"
diff --git a/testing/perl-html-object/APKBUILD b/testing/perl-html-object/APKBUILD
new file mode 100644
index 00000000000..67fd06c8e9f
--- /dev/null
+++ b/testing/perl-html-object/APKBUILD
@@ -0,0 +1,51 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-html-object
+pkgver=0.3.1
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=HTML-Object
+pkgdesc="HTML parser, modifier and query interface"
+url="https://metacpan.org/release/HTML-Object/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="
+ perl perl-css-object perl-curry perl-data-uuid
+ perl-datetime-format-strptime perl-devel-confess
+ perl-html-parser perl-html-selector-xpath perl-json
+ perl-module-generic perl-promise-me perl-uri perl-want
+ "
+checkdepends="perl-datetime"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/J/JD/JDEGUEST/HTML-Object-v$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-v$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+doc() {
+ local file; find "$pkgdir" -name "*.pod" | while read -r file; do
+ amove "${file#"$pkgdir"}"
+ done
+ default_doc
+}
+
+sha512sums="
+f1a96523f57cf30045b44871536980ca16cf57450c14fa60a64d908d881f3822f348f19998533c1406ddf97a9f7edd3bd14c472fd68536db8b3592ca08207fa9 HTML-Object-v0.3.1.tar.gz
+"
diff --git a/testing/perl-html-selector-xpath/APKBUILD b/testing/perl-html-selector-xpath/APKBUILD
new file mode 100644
index 00000000000..f7bdf22cca7
--- /dev/null
+++ b/testing/perl-html-selector-xpath/APKBUILD
@@ -0,0 +1,39 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-html-selector-xpath
+pkgver=0.28
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=HTML-Selector-XPath
+pkgdesc="CSS Selector to XPath compiler"
+url="https://metacpan.org/release/HTML-Selector-XPath/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl"
+checkdepends="perl-test-base"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/C/CO/CORION/HTML-Selector-XPath-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+325c7aba8ddbf7c02be3ff6fd242ff6b936e79ca52c62c58e05b74c8a3f6e2c89e298d8b8b30751b15b4d5d2bd9dfa5e6dddf774928652641d2a54e59a2b5ac5 HTML-Selector-XPath-0.28.tar.gz
+"
diff --git a/testing/perl-html-tableextract/APKBUILD b/testing/perl-html-tableextract/APKBUILD
index 426afe29874..3c9fb15c588 100644
--- a/testing/perl-html-tableextract/APKBUILD
+++ b/testing/perl-html-tableextract/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-html-tableextract
_pkgreal=HTML-TableExtract
pkgver=2.15
-pkgrel=3
+pkgrel=4
pkgdesc="Perl module for extracting the content contained in tables within an HTML document"
url="https://metacpan.org/release/HTML-TableExtract/"
arch="noarch"
@@ -23,13 +23,13 @@ check() {
prepare() {
cd "$builddir"
default_prepare
- export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'`
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
}
build() {
cd "$builddir"
- export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'`
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
make
}
diff --git a/testing/perl-http-thin/APKBUILD b/testing/perl-http-thin/APKBUILD
new file mode 100644
index 00000000000..9ac3bb386c9
--- /dev/null
+++ b/testing/perl-http-thin/APKBUILD
@@ -0,0 +1,41 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-http-thin
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=HTTP-Thin
+pkgver=0.006
+pkgrel=0
+pkgdesc="Thin Wrapper around HTTP::Tiny to play nice with HTTP::Message"
+url="https://metacpan.org/release/HTTP-Thin/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="
+ perl perl-class-method-modifiers perl-hash-multivalue
+ perl-http-message perl-safe-isa
+ "
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/P/PE/PERIGRIN/HTTP-Thin-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+634205dfc81030c0b264cc82589d50984a7d2710144a5b7fe9134ea49fa8195155e6ec99a462bfb0b37a2c8d4db9af4defa626f06a3287a1548078172b97573e HTTP-Thin-0.006.tar.gz
+"
diff --git a/testing/perl-http-xsheaders/APKBUILD b/testing/perl-http-xsheaders/APKBUILD
new file mode 100644
index 00000000000..5bcbae6c498
--- /dev/null
+++ b/testing/perl-http-xsheaders/APKBUILD
@@ -0,0 +1,42 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-http-xsheaders
+pkgver=0.400005
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=HTTP-XSHeaders
+pkgdesc="Fast XS Header library, replacing HTTP::Headers(::Fast)"
+url="https://metacpan.org/release/HTTP-XSHeaders/"
+arch="all"
+license="MIT"
+depends="perl perl-http-date perl-uri"
+makedepends="perl-dev"
+checkdepends="perl-http-headers-fast perl-http-message perl-test-memorygrowth"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/X/XS/XSAWYERX/HTTP-XSHeaders-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+
+ install -Dvm644 LICENSE -t "$pkgdir"/usr/share/licenses/$pkgname/
+}
+
+sha512sums="
+35b8a169b91d7fb17138435b704d596236079455c409ba6115a74d0bbdec189f16fef6e629f561662c4b56c737e3c169da346bf7ddae23a6f07c07c0ddde57ba HTTP-XSHeaders-0.400005.tar.gz
+"
diff --git a/testing/perl-i18n-langinfo-wide/APKBUILD b/testing/perl-i18n-langinfo-wide/APKBUILD
index 9cdea147412..650f2aa7f14 100644
--- a/testing/perl-i18n-langinfo-wide/APKBUILD
+++ b/testing/perl-i18n-langinfo-wide/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-i18n-langinfo-wide
_pkgreal=I18N-Langinfo-Wide
pkgver=9
-pkgrel=2
+pkgrel=4
pkgdesc="Langinfo and POSIX functions with wide-char strings."
url="https://metacpan.org/release/I18N-Langinfo-Wide/"
arch="noarch"
@@ -13,25 +13,23 @@ depends="perl"
makedepends="perl-devel-stacktrace"
subpackages="$pkgname-doc"
source="https://cpan.metacpan.org/authors/id/K/KR/KRYDE/$_pkgreal-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
-_builddir="$srcdir/$_pkgreal-$pkgver"
-
-prepare() {
- cd "$_builddir"
- export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'`
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
}
-build() {
- cd "$_builddir"
- export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'`
- make #&& make test
+check() {
+ make test
}
package() {
- cd "$_builddir"
- make DESTDIR="$pkgdir" install || return 1
+ make DESTDIR="$pkgdir" install
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-sha512sums="4b3349e4096217e055092651522ee89d0ff949b235c977eede002ce604204ccb057b9a1b3293480bed36e9792e11cdabf5c15eecb280afe7228b5c7030044860 I18N-Langinfo-Wide-9.tar.gz"
+sha512sums="
+4b3349e4096217e055092651522ee89d0ff949b235c977eede002ce604204ccb057b9a1b3293480bed36e9792e11cdabf5c15eecb280afe7228b5c7030044860 I18N-Langinfo-Wide-9.tar.gz
+"
diff --git a/testing/perl-indirect/APKBUILD b/testing/perl-indirect/APKBUILD
new file mode 100644
index 00000000000..2c2eaabb1d0
--- /dev/null
+++ b/testing/perl-indirect/APKBUILD
@@ -0,0 +1,39 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-indirect
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=indirect
+pkgver=0.39
+pkgrel=0
+pkgdesc="Lexically warn about using the indirect method call syntax"
+url="https://metacpan.org/release/indirect/"
+arch="all"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl"
+makedepends="perl-dev"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/V/VP/VPIT/indirect-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+d3275a2cab2eeceef61756e08947d3072c0ce5cea2e8b70870c5fcbd9c63e56cf70568395002b7d02060cad3482f7f56723b1ad85fcf0a4c4ee2568b5035816c indirect-0.39.tar.gz
+"
diff --git a/testing/perl-io-async-resolver-dns/APKBUILD b/testing/perl-io-async-resolver-dns/APKBUILD
new file mode 100644
index 00000000000..8805b98c294
--- /dev/null
+++ b/testing/perl-io-async-resolver-dns/APKBUILD
@@ -0,0 +1,37 @@
+# Automatically generated by apkbuild-cpan, template 3
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-io-async-resolver-dns
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=IO-Async-Resolver-DNS
+pkgver=0.06
+pkgrel=0
+pkgdesc="Resolve DNS queries using IO::Async"
+url="https://metacpan.org/release/IO-Async-Resolver-DNS/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-future perl-io-async perl-list-utilsby perl-net-dns"
+makedepends="perl-module-build"
+checkdepends="perl-net-libresolv"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/P/PE/PEVANS/IO-Async-Resolver-DNS-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ perl Build.PL --installdirs=vendor
+ ./Build
+}
+
+check() {
+ ./Build test
+}
+
+package() {
+ ./Build install --destdir="$pkgdir"
+ find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
+}
+
+sha512sums="
+1b884b3f35badcfc9630b93ea2bb71020f411400a494f39a3264808fc384355ea4c029527b7b784b2440a13ad7b6c9c9fe2275506f66b2065283e9d03ea14c28 IO-Async-Resolver-DNS-0.06.tar.gz
+"
diff --git a/testing/perl-io-lambda/APKBUILD b/testing/perl-io-lambda/APKBUILD
new file mode 100644
index 00000000000..78985c9757a
--- /dev/null
+++ b/testing/perl-io-lambda/APKBUILD
@@ -0,0 +1,38 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-io-lambda
+pkgver=1.33
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=IO-Lambda
+pkgdesc="Non-blocking I/O as lambda calculus"
+url="https://metacpan.org/release/IO-Lambda/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-libwww perl-net-dns perl-sub-name perl-uri"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/K/KA/KARASIK/IO-Lambda-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+12a805368b8750724329e281941a16ba4369e5b29b87a182b14d9f56a5ffa7477e0bd7d62cf20cc114a1b65062949ce8ef6ee83bc4c5d52643e0f4a3d8e18fbe IO-Lambda-1.33.tar.gz
+"
diff --git a/testing/perl-io-sessiondata/APKBUILD b/testing/perl-io-sessiondata/APKBUILD
index c84585f30ef..6df2af68ab6 100644
--- a/testing/perl-io-sessiondata/APKBUILD
+++ b/testing/perl-io-sessiondata/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-io-sessiondata
_pkgreal=IO-SessionData
pkgver=1.03
-pkgrel=2
+pkgrel=3
pkgdesc="supporting module for SOAP::Lite"
url="https://metacpan.org/release/IO-SessionData"
arch="noarch"
diff --git a/testing/perl-io-socket-timeout/APKBUILD b/testing/perl-io-socket-timeout/APKBUILD
deleted file mode 100644
index 636148fe603..00000000000
--- a/testing/perl-io-socket-timeout/APKBUILD
+++ /dev/null
@@ -1,34 +0,0 @@
-# Contributor: Michael Pirogov <vbnet.ru@gmail.com>
-# Maintainer: Michael Pirogov <vbnet.ru@gmail.com>
-
-pkgname=perl-io-socket-timeout
-_pkgreal=IO-Socket-Timeout
-pkgver=0.32
-pkgrel=1
-pkgdesc="IO::Socket with read/write timeout"
-url="https://metacpan.org/release/IO-Socket-Timeout/"
-arch="noarch !armv7 !x86 !armhf" # test failures
-license="GPL-1.0-or-later OR Artistic-1.0-Perl"
-depends="perl perl-perlio-via-timeout perl-test-tcp"
-makedepends="perl-module-build-tiny"
-subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/D/DA/DAMS/IO-Socket-Timeout-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgreal-$pkgver"
-
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL INSTALLDIRS=vendor
- make
-}
-
-check() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make test
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
-}
-
-sha512sums="013ad036c796880ab464b18f642260609095cf40c74f3127abaf3c8a596ba8ee85746129dc84d2d1e6f1bbfc86d75969e99c5a9b67736fa3e5e8bc7f5ddf83a6 IO-Socket-Timeout-0.32.tar.gz"
diff --git a/testing/perl-json-any/APKBUILD b/testing/perl-json-any/APKBUILD
deleted file mode 100644
index a7bf723767b..00000000000
--- a/testing/perl-json-any/APKBUILD
+++ /dev/null
@@ -1,47 +0,0 @@
-# Automatically generated by apkbuild-cpan, template 3
-# Contributor: Duncan Bellamy <dunk@denkimushi.com>
-# Maintainer: Duncan Bellamy <dunk@denkimushi.com>
-pkgname=perl-json-any
-#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
-_pkgreal=JSON-Any
-pkgver=1.39
-pkgrel=0
-pkgdesc="(DEPRECATED) Wrapper Class for the various JSON classes"
-url="https://metacpan.org/release/JSON-Any/"
-arch="noarch"
-license="GPL-1.0-or-later OR Artistic-1.0-Perl"
-depends="perl"
-makedepends="perl-dev"
-checkdepends="
- perl-cpanel-json-xs
- perl-json-maybexs
- perl-json-xs
- perl-test-warnings
- perl-test-without-module
- perl-test-fatal
- perl-test-requires
- perl-yaml-syck
- "
-subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/E/ET/ETHER/JSON-Any-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgreal-$pkgver"
-
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL INSTALLDIRS=vendor
- make
-}
-
-check() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make test
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
-}
-
-sha512sums="
-a4e9494ef650fe6f0144fddad49962e717470390b5783ab7bed6ef1c34fa7aa3d4f8699b9967ec8ca8813f43ee8c1d594e5af4d4962929791aa95b470104cd9b JSON-Any-1.39.tar.gz
-"
diff --git a/testing/perl-json-maybeutf8/APKBUILD b/testing/perl-json-maybeutf8/APKBUILD
new file mode 100644
index 00000000000..f42008a468a
--- /dev/null
+++ b/testing/perl-json-maybeutf8/APKBUILD
@@ -0,0 +1,39 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-json-maybeutf8
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=JSON-MaybeUTF8
+pkgver=2.000
+pkgrel=0
+pkgdesc="Simple wrapper for explicit JSON Unicode text/UTF-8 byte functions"
+url="https://metacpan.org/release/JSON-MaybeUTF8/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-json-maybexs perl-unicode-utf8"
+checkdepends="perl-test-checkdeps perl-test-deep"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/T/TE/TEAM/JSON-MaybeUTF8-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+cef0e04695c1f5f6e7e0ba6ec43766d4a46b7457955f13c218207450836eaa06f88cf2596876090584b908c71a40cbce35a82f8cc471891027d5a42a611f2fe6 JSON-MaybeUTF8-2.000.tar.gz
+"
diff --git a/testing/perl-json-path/APKBUILD b/testing/perl-json-path/APKBUILD
new file mode 100644
index 00000000000..16a1ad84c1b
--- /dev/null
+++ b/testing/perl-json-path/APKBUILD
@@ -0,0 +1,45 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-json-path
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=JSON-Path
+pkgver=1.0.4
+pkgrel=0
+pkgdesc="Search nested hashref/arrayref structures using JSONPath"
+url="https://metacpan.org/release/JSON-Path/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="
+ perl perl-carp-assert perl-exporter-tiny perl-json-maybexs
+ perl-lv perl-readonly perl-try-tiny
+ "
+checkdepends="perl-test2-suite"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/P/PO/POPEFELIX/JSON-Path-$pkgver.tar.gz
+ no-tie-ixhash.patch
+ "
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+89819d9afb8302f1b07d5d8376614f406c6e47017aef42fa0a4064a2d843d21d5aec83451f05ef66e62cd9118ebed12761d601c498efe43fcf1fce60308ff15f JSON-Path-1.0.4.tar.gz
+77471715204552bd6c49b8ce0e7082b4cc4ea94a7d6c23bb9d32a04453a541de76ca7a40df82f3b2325bcb60e3ff05a5f0f79123184706b269bb6cb2f92e8358 no-tie-ixhash.patch
+"
diff --git a/testing/perl-json-path/no-tie-ixhash.patch b/testing/perl-json-path/no-tie-ixhash.patch
new file mode 100644
index 00000000000..f943faeb3af
--- /dev/null
+++ b/testing/perl-json-path/no-tie-ixhash.patch
@@ -0,0 +1,36 @@
+Patch-Source: https://github.com/PopeFelix/p5-json-path/commit/a042749fb2e0103c3fa58fc02b70992fe34be7a9.patch
+--
+From a042749fb2e0103c3fa58fc02b70992fe34be7a9 Mon Sep 17 00:00:00 2001
+From: bernhard <Bernhard.Schmalhofer@gmx.de>
+Date: Mon, 11 Dec 2023 21:03:21 +0100
+Subject: [PATCH] Do not require Tie::IxHash
+
+---
+ cpanfile | 1 -
+ t/evaluator/paths.t | 1 -
+ 2 files changed, 2 deletions(-)
+
+diff --git a/cpanfile b/cpanfile
+index b1e5ff8..85eb5be 100644
+--- a/cpanfile
++++ b/cpanfile
+@@ -6,7 +6,6 @@ requires 'List::Util' => '1.45'; # For uniq.
+ requires 'Readonly';
+ requires 'Try::Tiny';
+ requires 'perl' => '5.010';
+-requires 'Tie::IxHash';
+
+ on test => sub {
+ requires 'Test2::V0';
+diff --git a/t/evaluator/paths.t b/t/evaluator/paths.t
+index 6db78ae..3e301af 100644
+--- a/t/evaluator/paths.t
++++ b/t/evaluator/paths.t
+@@ -2,7 +2,6 @@ use Test2::V0;
+ use JSON::MaybeXS qw/encode_json decode_json/;
+ use JSON::Path::Evaluator;
+ use Storable qw(dclone);
+-use Tie::IxHash;
+
+ my $json = sample_json();
+ my %data = %{ decode_json($json) };
diff --git a/testing/perl-json-validator/APKBUILD b/testing/perl-json-validator/APKBUILD
new file mode 100644
index 00000000000..9dfefdfacb6
--- /dev/null
+++ b/testing/perl-json-validator/APKBUILD
@@ -0,0 +1,51 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-json-validator
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=JSON-Validator
+pkgver=5.14
+pkgrel=0
+pkgdesc="Validate data against a JSON schema"
+url="https://metacpan.org/release/JSON-Validator/"
+arch="noarch"
+license="Artistic-2.0"
+depends="
+ perl perl-data-validate-domain perl-data-validate-ip
+ perl-mojolicious perl-net-idn-encode perl-yaml-libyaml
+ "
+checkdepends="perl-test-deep"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/J/JH/JHTHORSEN/JSON-Validator-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+# no perl-sereal-encoder on 32-bit ARM
+case "$CARCH" in
+armv7|armhf)
+ ;;
+*)
+ depends="$depends perl-sereal-encoder"
+ ;;
+esac
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+411c729c8cb2363a300ba69710545a61565055c1e89f666ee830866131d8c0ad849435f5cbe2fd5e9b083e0efab3e451f51810698acb116a16f5c1c1faea608a JSON-Validator-5.14.tar.gz
+"
diff --git a/testing/perl-libapreq2/APKBUILD b/testing/perl-libapreq2/APKBUILD
index 5baf72702c8..0d79a177d91 100644
--- a/testing/perl-libapreq2/APKBUILD
+++ b/testing/perl-libapreq2/APKBUILD
@@ -2,8 +2,8 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=perl-libapreq2
_pkgreal=libapreq2
-pkgver=2.16
-pkgrel=0
+pkgver=2.17
+pkgrel=1
pkgdesc="Perl module for libapreq2"
url="https://metacpan.org/release/libapreq2/"
arch="all"
@@ -12,7 +12,7 @@ depends="apache2 perl"
subpackages="$pkgname-dev $pkgname-doc"
install="$pkgname.post-install"
makedepends="perl-extutils-xsbuilder perl-dev libtool apache2-dev apache2-mod-perl-dev expat-dev apr-util-dev"
-source="https://cpan.metacpan.org/authors/id/S/SH/SHAY/libapreq2-$pkgver.tar.gz
+source="https://dlcdn.apache.org//httpd/libapreq/libapreq2-$pkgver.tar.gz
libapreq2-2.08-doc.patch
link-in-apr-shared-objects.patch
$pkgname.conf"
@@ -35,7 +35,7 @@ package() {
}
sha512sums="
-aa9e751a3f0d6a9cb587aa1c5408e8d9a073560860d7f653776196fe3739516df16abe943c9cb0460cfb9b68a2d79ad651cfd5e4a30a2ca34d6dc3ced73f628c libapreq2-2.16.tar.gz
+89b139b8673145d9e2d8fd77d36f878c519c1deb7f9b853cda2a15d34cbb619d1c5e784ba21553f23c2ef07803f07c75a83d96cd770f80e1b36283a4cbb88999 libapreq2-2.17.tar.gz
dc889d7890d9059efdb3fcd4d6b1e485929b69c073ff6266b90f82e89efe5bdd633fd4dc09ccd4aac3f8816271c00dca69b39ffe4706baf7d3094404784cd766 libapreq2-2.08-doc.patch
04b41c1e0694f53c5164e92c6cd81236f8030a265d9af4f5160c051425c9fa75c6326728734c31fc3f61baa88ae40924ef78974bd3cd2af719cb3bb9bb9428d3 link-in-apr-shared-objects.patch
e7fa4f3b51cbc6417369ba171ac0fb955ec0cd6d3575e07e7451ef2a8165d24ddbbcc3143a5c8106a757ecd7d4286a11a9ff87e27c1acff8abc48110fcb02e1f perl-libapreq2.conf
diff --git a/testing/perl-libintl-perl/APKBUILD b/testing/perl-libintl-perl/APKBUILD
index a8e88d4575f..5bfa13b8afb 100644
--- a/testing/perl-libintl-perl/APKBUILD
+++ b/testing/perl-libintl-perl/APKBUILD
@@ -1,33 +1,29 @@
-# Automatically generated by apkbuild-cpan, template 1
+# Automatically generated by apkbuild-cpan, template 3
# Contributor: Francesco Colista <fcolista@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=perl-libintl-perl
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
_pkgreal=libintl-perl
-pkgver=1.32
-pkgrel=0
-pkgdesc="unknown"
+pkgver=1.33
+pkgrel=1
+pkgdesc="High-Level Interface to Uniforum Message Translation"
url="https://metacpan.org/release/libintl-perl/"
arch="noarch"
-license="GPL PerlArtistic"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
depends="perl"
+makedepends="perl-dev"
subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/G/GU/GUIDO/$_pkgreal-$pkgver.tar.gz"
-
+source="https://cpan.metacpan.org/authors/id/G/GU/GUIDO/libintl-perl-$pkgver.tar.gz"
builddir="$srcdir/$_pkgreal-$pkgver"
-prepare() {
- default_prepare
-
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
-}
-
build() {
export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL INSTALLDIRS=vendor
make
}
check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
make test
}
@@ -36,4 +32,6 @@ package() {
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-sha512sums="fca6c8863dfd36c7604bc80a401e825eb707bc75016521c09006c34c170a41b009d30ec93d7e2a7f61caa1dbdf0333511c3d515d4fdc0fea32242eca68a7e35d libintl-perl-1.32.tar.gz"
+sha512sums="
+494486d2e2f07fa8ee4c4b9d7b2576973772330aab7736488a692c54a6b250b0b7c06892d8cffc164346b9ebd3549141378fc84da339eaa4b34dc16c4f1a59b6 libintl-perl-1.33.tar.gz
+"
diff --git a/testing/perl-lingua-en-inflect/APKBUILD b/testing/perl-lingua-en-inflect/APKBUILD
deleted file mode 100644
index c332e7e378b..00000000000
--- a/testing/perl-lingua-en-inflect/APKBUILD
+++ /dev/null
@@ -1,34 +0,0 @@
-# Automatically generated by apkbuild-cpan, template 3
-# Contributor: Timo Teräs <timo.teras@iki.fi>
-# Maintainer: Timo Teräs <timo.teras@iki.fi>
-pkgname=perl-lingua-en-inflect
-#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
-_pkgreal=Lingua-EN-Inflect
-pkgver=1.905
-pkgrel=0
-pkgdesc="Convert singular to plural. Select 'a' or 'an'"
-url="https://metacpan.org/release/Lingua-EN-Inflect/"
-arch="noarch"
-license="GPL-1.0-or-later OR Artistic-1.0-Perl"
-depends="perl"
-subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/D/DC/DCONWAY/Lingua-EN-Inflect-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgreal-$pkgver"
-
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL INSTALLDIRS=vendor
- make
-}
-
-check() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make test
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
-}
-
-sha512sums="394671c4a645edd426d3f8d7b3980aac10345b68f9c7d2558f46ec3b7ffadad86138c5f27d3afd64e2c193c6d20a537f179ff01aa40a84cd1cee718e4afde42b Lingua-EN-Inflect-1.905.tar.gz"
diff --git a/testing/perl-linux-pid/APKBUILD b/testing/perl-linux-pid/APKBUILD
index 9e84de72324..bdb98cc1bce 100644
--- a/testing/perl-linux-pid/APKBUILD
+++ b/testing/perl-linux-pid/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-linux-pid
_pkgreal=Linux-Pid
pkgver=0.04
-pkgrel=10
+pkgrel=12
pkgdesc="Get the native PID and the PPID on Linux"
url="https://metacpan.org/release/Linux-Pid/"
arch="all"
@@ -20,13 +20,13 @@ builddir="$srcdir/$_pkgreal-$pkgver"
prepare() {
cd "$builddir"
- export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'`
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
}
build() {
cd "$builddir"
- export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'`
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
make
}
diff --git a/testing/perl-list-binarysearch-xs/APKBUILD b/testing/perl-list-binarysearch-xs/APKBUILD
new file mode 100644
index 00000000000..981800a82fd
--- /dev/null
+++ b/testing/perl-list-binarysearch-xs/APKBUILD
@@ -0,0 +1,39 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-list-binarysearch-xs
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=List-BinarySearch-XS
+pkgver=0.09
+pkgrel=0
+pkgdesc="Binary Search a sorted array with XS routines"
+url="https://metacpan.org/release/List-BinarySearch-XS/"
+arch="all"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl"
+makedepends="perl-dev"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/D/DA/DAVIDO/List-BinarySearch-XS-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+feb4475706e9ae93ab82b8844dab765d93d97715b0687603c0a153ef3305b62cae4d1fb1cc34326eb9ea0f4ea1cdfe0a9e4d049b3a3756b986de83d3a3fe021c List-BinarySearch-XS-0.09.tar.gz
+"
diff --git a/testing/perl-list-binarysearch/APKBUILD b/testing/perl-list-binarysearch/APKBUILD
new file mode 100644
index 00000000000..1cc0c357f90
--- /dev/null
+++ b/testing/perl-list-binarysearch/APKBUILD
@@ -0,0 +1,42 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-list-binarysearch
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=List-BinarySearch
+pkgver=0.25
+pkgrel=0
+pkgdesc="Binary Search within a sorted array"
+url="https://metacpan.org/release/List-BinarySearch/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl"
+makedepends="perl-list-binarysearch-xs"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/D/DA/DAVIDO/List-BinarySearch-$pkgver.tar.gz
+ documentation.patch
+ "
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+cc2b3234fc6f14ce656f2744eb3612afea970b64b46e7288c16047c73db8095ca32aad735660a5152d1cfb8c2ee1202ec2b6a5fe151b81ccf17f4c84ced87596 List-BinarySearch-0.25.tar.gz
+1a25175b0d475830d9531afbf6f61a4fa8d256119dfc64d90d13f6c4c27228d47ea7d5a97919853d0997512697def158d1294cb45e52cb5d52ab00268fd9a20b documentation.patch
+"
diff --git a/testing/perl-list-binarysearch/documentation.patch b/testing/perl-list-binarysearch/documentation.patch
new file mode 100644
index 00000000000..d66a6fce7cb
--- /dev/null
+++ b/testing/perl-list-binarysearch/documentation.patch
@@ -0,0 +1,24 @@
+Patch-Source: https://github.com/daoswald/List-BinarySearch/pull/4.patch
+--
+From 035981013670af1c1503684e410b2f13cd10016d Mon Sep 17 00:00:00 2001
+From: Martin Barth <ufobat@users.noreply.github.com>
+Date: Thu, 21 Sep 2017 09:25:13 +0200
+Subject: [PATCH] Fixed a little mistake in the POD
+
+---
+ lib/List/BinarySearch.pm | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/lib/List/BinarySearch.pm b/lib/List/BinarySearch.pm
+index a51e7f5..362c15c 100644
+--- a/lib/List/BinarySearch.pm
++++ b/lib/List/BinarySearch.pm
+@@ -324,7 +324,7 @@ As an example, consider the following data structure:
+
+ A numeric custom comparator for such a data structure would look like this:
+
+- sub{ $a <=> $b->[0] }
++ sub{ $a->[0] <=> $b->[0] }
+
+ In this regard, the callback is unlike C<sort>, because C<sort> is always
+ comparing to elements, whereas C<binsearch> is comparing a target with an
diff --git a/testing/perl-lockfile-simple/APKBUILD b/testing/perl-lockfile-simple/APKBUILD
deleted file mode 100644
index e0a5e01de2f..00000000000
--- a/testing/perl-lockfile-simple/APKBUILD
+++ /dev/null
@@ -1,39 +0,0 @@
-# Contributor: TBK <tbk@jjtc.eu>
-pkgname=perl-lockfile-simple
-_pkgreal=LockFile-Simple
-__pkgreal=lockfile-simple
-pkgver=0.208
-pkgrel=2
-pkgdesc="Simple file locking scheme"
-url="https://metacpan.org/release/LockFile-Simple/"
-arch="noarch"
-license="GPL PerlArtistic"
-depends="perl"
-subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/S/SC/SCHWIGON/$__pkgreal/$_pkgreal-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgreal-$pkgver"
-
-prepare() {
- cd "$builddir"
- export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'`
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
-}
-
-build() {
- cd "$builddir"
- export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'`
- make
-}
-
-check() {
- cd "$builddir"
- make test
-}
-
-package() {
- cd "$builddir"
- make DESTDIR="$pkgdir" install
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
-}
-
-sha512sums="a1234d11cdb7bb98bd3d6c2504697187f2f7979c7acd7cfb0398f358f390af7b5eb7d834e83c83b0515199ac8d9a306d7fcdc96df04b0513f821887ad49fd67e LockFile-Simple-0.208.tar.gz"
diff --git a/testing/perl-log-fu/APKBUILD b/testing/perl-log-fu/APKBUILD
index a889fd93b93..3132f5feb46 100644
--- a/testing/perl-log-fu/APKBUILD
+++ b/testing/perl-log-fu/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-log-fu
_pkgreal=Log-Fu
pkgver=0.31
-pkgrel=2
+pkgrel=4
pkgdesc="Simplified and developer-friendly screen logging"
url="https://metacpan.org/release/Log-Fu/"
arch="noarch"
@@ -12,25 +12,23 @@ license="GPL PerlArtistic"
depends="perl perl-dir-self perl-constant-generate"
subpackages="$pkgname-doc"
source="https://cpan.metacpan.org/authors/id/M/MN/MNUNBERG/$_pkgreal-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
-_builddir="$srcdir/$_pkgreal-$pkgver"
-
-prepare() {
- cd "$_builddir"
- export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'`
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
}
-build() {
- cd "$_builddir"
- export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'`
- make && make test
+check() {
+ make test
}
package() {
- cd "$_builddir"
- make DESTDIR="$pkgdir" install || return 1
+ make DESTDIR="$pkgdir" install
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-sha512sums="ae32b5231c44eac0e1e23a863b4d7f57a0d3018516c6b121cd19034e52adbf5875e9bbc3468a808b64829d6992e8b7303ff3d62129670befe38bc75d28e03eff Log-Fu-0.31.tar.gz"
+sha512sums="
+ae32b5231c44eac0e1e23a863b4d7f57a0d3018516c6b121cd19034e52adbf5875e9bbc3468a808b64829d6992e8b7303ff3d62129670befe38bc75d28e03eff Log-Fu-0.31.tar.gz
+"
diff --git a/testing/perl-log-message-simple/APKBUILD b/testing/perl-log-message-simple/APKBUILD
index 91bb6c9c635..37bfdca2e8c 100644
--- a/testing/perl-log-message-simple/APKBUILD
+++ b/testing/perl-log-message-simple/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-log-message-simple
_pkgreal=Log-Message-Simple
pkgver=0.10
-pkgrel=2
+pkgrel=3
pkgdesc="Simplified interface to Log::Message"
url="https://metacpan.org/release/Log-Message-Simple/"
arch="noarch"
diff --git a/testing/perl-log-message/APKBUILD b/testing/perl-log-message/APKBUILD
index c31373e113e..e7576047336 100644
--- a/testing/perl-log-message/APKBUILD
+++ b/testing/perl-log-message/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-log-message
_pkgreal=Log-Message
pkgver=0.08
-pkgrel=2
+pkgrel=3
pkgdesc="Powerful and flexible message logging mechanism"
url="https://metacpan.org/release/Log-Message/"
arch="noarch"
diff --git a/testing/perl-lv/APKBUILD b/testing/perl-lv/APKBUILD
new file mode 100644
index 00000000000..d540c51bb79
--- /dev/null
+++ b/testing/perl-lv/APKBUILD
@@ -0,0 +1,59 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-lv
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=LV
+pkgver=0.006
+pkgrel=0
+pkgdesc="Create lvalue subroutines"
+url="https://metacpan.org/release/LV/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-sub-name"
+checkdepends="perl-sentinel perl-variable-magic"
+subpackages="
+ $pkgname-doc
+ $pkgname-backend-magic
+ $pkgname-backend-sentinel
+ "
+source="https://cpan.metacpan.org/authors/id/T/TO/TOBYINK/LV-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+magic() {
+ pkgdesc="$pkgdesc (Variable::Magic backend)"
+ depends="$pkgname=$pkgver-r$pkgrel perl-variable-magic"
+ install_if="$pkgname=$pkgver-r$pkgrel perl-variable-magic"
+
+ amove usr/share/perl5/vendor_perl/LV/Backend/Magic.pm
+}
+
+sentinel() {
+ pkgdesc="$pkgdesc (Sentinel backend)"
+ depends="$pkgname=$pkgver-r$pkgrel perl-sentinel"
+ install_if="$pkgname=$pkgver-r$pkgrel perl-sentinel"
+
+ amove usr/share/perl5/vendor_perl/LV/Backend/Sentinel.pm
+}
+
+sha512sums="
+24d211728845e29e3a7360251c8ef3a9d8666eff9ee08c06bf7d02b66cf599c17ac143dec3439d52256ae608e7c8c382a71270126e4724916c67c75034a44024 LV-0.006.tar.gz
+"
diff --git a/testing/perl-lwp-online/APKBUILD b/testing/perl-lwp-online/APKBUILD
new file mode 100644
index 00000000000..721febfc19e
--- /dev/null
+++ b/testing/perl-lwp-online/APKBUILD
@@ -0,0 +1,38 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-lwp-online
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=LWP-Online
+pkgver=1.08
+pkgrel=0
+pkgdesc="Does your process have access to the web"
+url="https://metacpan.org/release/LWP-Online/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-libwww perl-uri"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/A/AD/ADAMK/LWP-Online-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+2b255f60ee6521757ce3d49cc0720e3985ff17e3db7b7868ced6a9e1c5444dc067c80b7d34dbe7be9679c134f3de1dbe0e9421a1a20ff388c812aacd1d964497 LWP-Online-1.08.tar.gz
+"
diff --git a/testing/perl-lwp-useragent-cached/APKBUILD b/testing/perl-lwp-useragent-cached/APKBUILD
index 0ba82401ec6..01ab264918e 100644
--- a/testing/perl-lwp-useragent-cached/APKBUILD
+++ b/testing/perl-lwp-useragent-cached/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
pkgname=perl-lwp-useragent-cached
pkgver=0.08
-pkgrel=0
+pkgrel=1
pkgdesc="UserAgent with simple caching mechanism"
url="https://metacpan.org/release/LWP-UserAgent-Cache"
arch="noarch"
diff --git a/testing/perl-mastodon-client/APKBUILD b/testing/perl-mastodon-client/APKBUILD
new file mode 100644
index 00000000000..8b4de7f6f59
--- /dev/null
+++ b/testing/perl-mastodon-client/APKBUILD
@@ -0,0 +1,45 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-mastodon-client
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Mastodon-Client
+pkgver=0.017
+pkgrel=0
+pkgdesc="Talk to a Mastodon server"
+url="https://metacpan.org/release/Mastodon-Client/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="
+ perl perl-class-load perl-datetime perl-datetime-format-strptime
+ perl-future perl-http-message perl-http-thin perl-image-info
+ perl-io-async perl-json-maybexs perl-log-any perl-moo
+ perl-net-async-http perl-role-eventemitter perl-try-tiny
+ perl-type-tiny perl-types-path-tiny perl-uri
+ "
+checkdepends="perl-plack perl-test-tcp perl-test2-suite"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/J/JJ/JJATRIA/Mastodon-Client-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+74cd5eaed6d6be1c28e0560e940adf4d18f6da292e49209b36849e65ffd5a6f805944414dc6d31c2169312f784b8b7dc50269840ebb594ce6dec9758813b0eb1 Mastodon-Client-0.017.tar.gz
+"
diff --git a/testing/perl-math-int64/APKBUILD b/testing/perl-math-int64/APKBUILD
index 07fbb4b1c78..ae6443e46c9 100644
--- a/testing/perl-math-int64/APKBUILD
+++ b/testing/perl-math-int64/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-math-int64
#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
_pkgreal=Math-Int64
-pkgver=0.54
+pkgver=0.57
pkgrel=0
pkgdesc="Manipulate 64 bits integers in Perl"
url="https://metacpan.org/release/Math-Int64/"
@@ -33,5 +33,5 @@ package() {
}
sha512sums="
-03677df499ebc3924fabefbc6fb863adc2f765341a9697305b03bb24477b391029e65cc492c831a24e282e26e850082abbd0e52dda198aa041f3f4f41cc4f995 Math-Int64-0.54.tar.gz
+2039822523dd7b960b0015e68b9caa1e3061a7434c2931f0cc49c503ee8dd17178cef5cebf69a6907af82564bc1f09946e9817fc4c4b19757b91fe2ef5423b9e Math-Int64-0.57.tar.gz
"
diff --git a/testing/perl-math-libm/APKBUILD b/testing/perl-math-libm/APKBUILD
index 95090c98b3b..6a1a6acf68e 100644
--- a/testing/perl-math-libm/APKBUILD
+++ b/testing/perl-math-libm/APKBUILD
@@ -4,36 +4,31 @@
pkgname=perl-math-libm
_pkgreal=Math-Libm
pkgver=1.00
-pkgrel=10
-pkgdesc="unknown"
+pkgrel=13
+pkgdesc="Perl extension for the C math library, libm"
url="https://metacpan.org/release/Math-Libm/"
arch="all"
license="GPL PerlArtistic"
-cpandepends=""
-cpanmakedepends=" "
-depends="$cpandepends"
-makedepends="perl-dev $cpanmakedepends"
+makedepends="perl-dev"
subpackages="$pkgname-doc"
source="https://cpan.metacpan.org/authors/id/D/DS/DSLEWART/$_pkgreal-$pkgver.tar.gz"
-_builddir="$srcdir/$_pkgreal-$pkgver"
+builddir="$srcdir/$_pkgreal-$pkgver"
-prepare() {
- cd "$_builddir"
- export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'`
+build() {
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
}
-build() {
- cd "$_builddir"
- export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'`
- make && make test
+check() {
+ make test
}
package() {
- cd "$_builddir"
- make DESTDIR="$pkgdir" install || return 1
+ make DESTDIR="$pkgdir" install
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-sha512sums="17a1f38e32a82ec9a0307033920559dfe554fdae43b9fefffd7dc0ff690b6c5018079bded8554135da8546ccaf8dc0890e7e9b9a1e3845e53d46c993cec11540 Math-Libm-1.00.tar.gz"
+sha512sums="
+17a1f38e32a82ec9a0307033920559dfe554fdae43b9fefffd7dc0ff690b6c5018079bded8554135da8546ccaf8dc0890e7e9b9a1e3845e53d46c993cec11540 Math-Libm-1.00.tar.gz
+"
diff --git a/testing/perl-math-random-isaac-xs/APKBUILD b/testing/perl-math-random-isaac-xs/APKBUILD
index 4f791d025e4..4d27426de17 100644
--- a/testing/perl-math-random-isaac-xs/APKBUILD
+++ b/testing/perl-math-random-isaac-xs/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-math-random-isaac-xs
_pkgreal=Math-Random-ISAAC-XS
pkgver=1.004
-pkgrel=5
+pkgrel=7
pkgdesc="C implementation of the ISAAC PRNG algorithm"
url="https://metacpan.org/release/Math-Random-ISAAC-XS/"
arch="all"
diff --git a/testing/perl-mce/APKBUILD b/testing/perl-mce/APKBUILD
index 5e33e49aaea..66eb27fd0e8 100644
--- a/testing/perl-mce/APKBUILD
+++ b/testing/perl-mce/APKBUILD
@@ -3,8 +3,8 @@
# Maintainer: Timo Teräs <timo.teras@iki.fi>
pkgname=perl-mce
_pkgreal=MCE
-pkgver=1.874
-pkgrel=1
+pkgver=1.889
+pkgrel=0
pkgdesc="Many-Core Engine for Perl providing parallel processing capabilities"
url="https://metacpan.org/release/MCE"
arch="noarch"
@@ -36,4 +36,6 @@ check() {
make test
}
-sha512sums="5d6c4684083f8cda9d69db3f426da42943ecdd33a18a41d8c0138964b338a4f37db63b50f36456e22930519d10990b4a1e300c5e27496d769d332208f6329e87 MCE-1.874.tar.gz"
+sha512sums="
+47790c91cfe21e977a53c1c897802b34dc50d3a39631d991e8b95719593e82fa425c756a317d5e0f93d6a48be590b171eb88d90b7de166e264a5b7dcfadc7ebb MCE-1.889.tar.gz
+"
diff --git a/testing/perl-memory-process/APKBUILD b/testing/perl-memory-process/APKBUILD
new file mode 100644
index 00000000000..9aebe0fb730
--- /dev/null
+++ b/testing/perl-memory-process/APKBUILD
@@ -0,0 +1,36 @@
+# Automatically generated by apkbuild-cpan, template 3
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-memory-process
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Memory-Process
+pkgver=0.06
+pkgrel=3
+pkgdesc="Determine actual memory usage of a Perl program"
+url="https://metacpan.org/release/Memory-Process/"
+arch="noarch"
+license="BSD-2-Clause"
+depends="perl perl-memory-usage perl-readonly"
+makedepends="perl-test-nowarnings perl-capture-tiny"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/S/SK/SKIM/Memory-Process-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+ find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
+}
+
+sha512sums="
+13a52f12965ec0541ad0d52ac182b39de8c1fcf00d7482aa9d860fc20c7011287b48e8146e344e8a89583954d7b584010fe320458c944eeb28eac66072ceac91 Memory-Process-0.06.tar.gz
+"
diff --git a/testing/perl-memory-usage/APKBUILD b/testing/perl-memory-usage/APKBUILD
new file mode 100644
index 00000000000..7e4ce80c18f
--- /dev/null
+++ b/testing/perl-memory-usage/APKBUILD
@@ -0,0 +1,35 @@
+# Automatically generated by apkbuild-cpan, template 3
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-memory-usage
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Memory-Usage
+pkgver=0.201
+pkgrel=3
+pkgdesc="Tools to determine actual memory usage"
+url="https://metacpan.org/release/Memory-Usage/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/D/DO/DONEILL/Memory-Usage-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+ find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
+}
+
+sha512sums="
+4e34869ca1c97c39224c784e3dd6ef945174399678bfaefa5483cfd11ee0dc4b0efbde7a9ed59f146c4515c6db935261a8fb8fd7a4431c110160c28f9a2f9292 Memory-Usage-0.201.tar.gz
+"
diff --git a/testing/perl-minion-backend-redis/APKBUILD b/testing/perl-minion-backend-redis/APKBUILD
new file mode 100644
index 00000000000..d30188f5f8f
--- /dev/null
+++ b/testing/perl-minion-backend-redis/APKBUILD
@@ -0,0 +1,53 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-minion-backend-redis
+pkgver=0.003
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Minion-Backend-Redis
+pkgdesc="Redis backend for Minion job queue"
+url="https://metacpan.org/release/Minion-Backend-Redis/"
+arch="noarch"
+license="Artistic-2.0"
+depends="perl perl-minion perl-mojo-redis perl-sort-versions"
+makedepends="perl-module-build-tiny"
+checkdepends="redis"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/D/DF/DFUG/Minion-Backend-Redis-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ perl Build.PL \
+ --installdirs=vendor \
+ --create_packlist=0
+ ./Build
+}
+
+check() {
+ redis-server \
+ --dir "$builddir" \
+ --loglevel warning \
+ --unixsocket "$builddir"/redis.sock &
+ local _redispid=$!
+
+ # make sure socket is available before we start running tests
+ local _n=100 # wait up to 10 sec
+ while ! [ -e "$builddir"/redis.sock ] && [ $_n -gt 0 ]; do
+ sleep 0.1s
+ # shellcheck disable=SC3039
+ let _n="$_n - 1"
+ done
+
+ ./Build test || (kill $_redispid && false)
+ kill $_redispid
+}
+
+package() {
+ ./Build install --destdir="$pkgdir"
+}
+
+sha512sums="
+8dd7535559c0d9c3a36553719d51d01e58db717a92ff7e4458d2188581dc298186ad18ee7e882e2df97a79d7eabaa056417e15c21f7662a17727973cfa1c41c2 Minion-Backend-Redis-0.003.tar.gz
+"
diff --git a/testing/perl-minion-backend-sqlite/APKBUILD b/testing/perl-minion-backend-sqlite/APKBUILD
new file mode 100644
index 00000000000..6c416ac3744
--- /dev/null
+++ b/testing/perl-minion-backend-sqlite/APKBUILD
@@ -0,0 +1,37 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-minion-backend-sqlite
+pkgver=5.0.7
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Minion-Backend-SQLite
+pkgdesc="SQLite backend for Minion job queue"
+url="https://metacpan.org/release/Minion-Backend-SQLite/"
+arch="noarch"
+license="Artistic-2.0"
+depends="perl perl-minion perl-mojo-sqlite"
+makedepends="perl-module-build-tiny"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/D/DB/DBOOK/Minion-Backend-SQLite-v$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-v$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ perl Build.PL \
+ --installdirs=vendor \
+ --create_packlist=0
+ ./Build
+}
+
+check() {
+ ./Build test
+}
+
+package() {
+ ./Build install --destdir="$pkgdir"
+}
+
+sha512sums="
+2f1b4d575e6b0a144f074dfaedc7fe988d95fc10acdca25fccef34d283da728fad192959d31f0c3de29bdfcefbcf3279ba15d776bb648ffd5b8e95032e52e55a Minion-Backend-SQLite-v5.0.7.tar.gz
+"
diff --git a/testing/perl-minion/APKBUILD b/testing/perl-minion/APKBUILD
new file mode 100644
index 00000000000..bbf9bb41dea
--- /dev/null
+++ b/testing/perl-minion/APKBUILD
@@ -0,0 +1,54 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-minion
+pkgver=10.29
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Minion
+pkgdesc="Job queue for Mojolicious"
+url="https://metacpan.org/release/Minion/"
+arch="noarch"
+license="Artistic-2.0"
+depends="perl perl-mojolicious perl-yaml-libyaml"
+subpackages="$pkgname-doc $pkgname-backend-pg"
+source="https://cpan.metacpan.org/authors/id/S/SR/SRI/Minion-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+doc() {
+ local file; find "$pkgdir" -name "*.pod" | while read -r file; do
+ amove "${file#"$pkgdir"}"
+ done
+ default_doc
+}
+
+pg() {
+ pkgdesc="PostgreSQL backend for Minion job queue"
+ depends="$pkgname=$pkgver-r$pkgrel perl-mojo-pg"
+ install_if="$pkgname=$pkgver-r$pkgrel perl-mojo-pg"
+
+ amove usr/share/perl5/vendor_perl/Minion/Backend/Pg.pm \
+ usr/share/perl5/vendor_perl/Minion/Backend/resources/migrations/pg.sql
+}
+
+sha512sums="
+ff8ef0e2aa788fa71d298fa1c88d39d853c0ceac2f4f8873b819a1578a2e435affa9aa4a66745fbfef4fa37dac6af7c36da6fc4e1ec5ada18da05a72ded08e33 Minion-10.29.tar.gz
+"
diff --git a/testing/perl-mixin-event-dispatch/APKBUILD b/testing/perl-mixin-event-dispatch/APKBUILD
new file mode 100644
index 00000000000..5d328e3de8e
--- /dev/null
+++ b/testing/perl-mixin-event-dispatch/APKBUILD
@@ -0,0 +1,47 @@
+# Automatically generated by apkbuild-cpan, template 3
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-mixin-event-dispatch
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Mixin-Event-Dispatch
+pkgver=2.000
+pkgrel=0
+pkgdesc="Mixin methods for simple event/message dispatch framework"
+url="https://metacpan.org/release/Mixin-Event-Dispatch/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-list-utilsby"
+checkdepends="
+ perl-moo perl-role-tiny perl-test-checkdeps perl-test-fatal
+ perl-test-memory-cycle perl-test-refcount
+ "
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/T/TE/TEAM/Mixin-Event-Dispatch-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+ find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
+}
+
+doc() {
+ local file; find "$pkgdir" -name "*.pod" | while read -r file; do
+ amove "${file#"$pkgdir"}"
+ done
+ default_doc
+}
+
+sha512sums="
+bda967ae51d7560014e60eba37f0e57f982ef6ddf848942981dfa406bb7ef2d33db0f525351ebd2d94138512951e37732c6ab1a32edd5dbae727ba7a27861c3b Mixin-Event-Dispatch-2.000.tar.gz
+"
diff --git a/testing/perl-mixin-linewise/APKBUILD b/testing/perl-mixin-linewise/APKBUILD
deleted file mode 100644
index dafbaf463fc..00000000000
--- a/testing/perl-mixin-linewise/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Automatically generated by apkbuild-cpan, template 3
-# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer: rubicon <rubicon@mailo.com>
-pkgname=perl-mixin-linewise
-#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
-_pkgreal=Mixin-Linewise
-pkgver=0.110
-pkgrel=0
-pkgdesc="Linewise readers and writers for strings and files"
-url="https://metacpan.org/release/Mixin-Linewise/"
-arch="noarch"
-license="GPL-1.0-or-later OR Artistic-1.0-Perl"
-depends="perl perl-sub-exporter perl-perlio-utf8_strict"
-makedepends="perl-dev"
-subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/R/RJ/RJBS/Mixin-Linewise-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgreal-$pkgver"
-
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL INSTALLDIRS=vendor
- make
-}
-
-check() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make test
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
-}
-
-sha512sums="
-b5c7e5ab8b5f971fb5cc0e378108513488ff20525f85b9bb12afa3d855088a6a4040ffd8d5dcac97677905dcc6b4e85ac86cd6d69f37c42fb4ca2fa4eb912abf Mixin-Linewise-0.110.tar.gz
-"
diff --git a/testing/perl-module-build-prereqs-fromcpanfile/APKBUILD b/testing/perl-module-build-prereqs-fromcpanfile/APKBUILD
new file mode 100644
index 00000000000..ec5398e0f7e
--- /dev/null
+++ b/testing/perl-module-build-prereqs-fromcpanfile/APKBUILD
@@ -0,0 +1,36 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-module-build-prereqs-fromcpanfile
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Module-Build-Prereqs-FromCPANfile
+pkgver=0.02
+pkgrel=0
+pkgdesc="Construct prereq parameters of Module::Build from cpanfile"
+url="https://metacpan.org/release/Module-Build-Prereqs-FromCPANfile/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-module-build perl-module-cpanfile"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/T/TO/TOSHIOITO/Module-Build-Prereqs-FromCPANfile-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ perl Build.PL \
+ --installdirs=vendor \
+ --create_packlist=0
+ ./Build
+}
+
+check() {
+ ./Build test
+}
+
+package() {
+ ./Build install --destdir="$pkgdir"
+}
+
+sha512sums="
+29078020fb2638c9032cc28ca37caa12b530a6302be099dce437f89536dc5aae9aaacdecf42c6c7b2d41c40443eb03a8008855068f47ff203c75024e5175c8cd Module-Build-Prereqs-FromCPANfile-0.02.tar.gz
+"
diff --git a/testing/perl-module-find/APKBUILD b/testing/perl-module-find/APKBUILD
deleted file mode 100644
index c49d47405b6..00000000000
--- a/testing/perl-module-find/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Automatically generated by apkbuild-cpan, template 1
-# Contributor: Francesco Colista <fcolista@alpinelinux.org>
-# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
-pkgname=perl-module-find
-_pkgreal=Module-Find
-pkgver=0.15
-pkgrel=1
-pkgdesc="Find and use installed modules in a (sub)category"
-url="https://metacpan.org/release/Module-Find"
-arch="noarch"
-license="GPL-1.0-or-later OR Artistic-1.0-Perl"
-depends="perl"
-subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/C/CR/CRENZ/Module-Find-$pkgver.tar.gz"
-
-builddir="$srcdir/$_pkgreal-$pkgver"
-
-prepare() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
-}
-
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make
-}
-
-check() {
- make test
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
-}
-
-sha512sums="769f1ee8836a127cb3c08edc858240c88e6481243d15b79b348c66d960213a98963bd9c453756645982c730a3c895a7dc35b06a970a0d6300690a605f4487dac Module-Find-0.15.tar.gz"
diff --git a/testing/perl-module-generic/APKBUILD b/testing/perl-module-generic/APKBUILD
new file mode 100644
index 00000000000..c703e2e37c8
--- /dev/null
+++ b/testing/perl-module-generic/APKBUILD
@@ -0,0 +1,56 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-module-generic
+pkgver=0.35.3
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Module-Generic
+pkgdesc="Generic Module to inherit from"
+url="https://metacpan.org/release/Module-Generic/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="
+ perl perl-class-load perl-clone perl-common-sense
+ perl-data-dump perl-data-uuid perl-datetime
+ perl-datetime-format-strptime perl-datetime-timezone
+ perl-datetime-timezone-catalog-extend perl-devel-stacktrace
+ perl-file-mmagic perl-io-stringy perl-json perl-json-xs
+ perl-regexp-common perl-storable-improved perl-uri perl-want
+ "
+checkdepends="perl-file-which perl-test-time perl-test2-suite"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/J/JD/JDEGUEST/Module-Generic-v$pkgver.tar.gz
+ skip-broken-tests.patch
+ "
+builddir="$srcdir/$_pkgreal-v$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ TERM=linux make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+doc() {
+ local file; find "$pkgdir" -name "*.pod" | while read -r file; do
+ amove "${file#"$pkgdir"}"
+ done
+ default_doc
+}
+
+sha512sums="
+0e329640655e9338ed57621aaebbbb0874500b5e6428d2c7fb794d33d32821857572dddfe72ab52f131f776e908f38cdcd7e2f3c1534c226156495198223b134 Module-Generic-v0.35.3.tar.gz
+af467da801c0884a5994a61c205d4c522cf40905eebc4733ea4deaa755b19bab824879f91866e7622440d9ab823eed207fbe02092559da9660081423585504b3 skip-broken-tests.patch
+"
diff --git a/testing/perl-module-generic/skip-broken-tests.patch b/testing/perl-module-generic/skip-broken-tests.patch
new file mode 100644
index 00000000000..d7f26651c18
--- /dev/null
+++ b/testing/perl-module-generic/skip-broken-tests.patch
@@ -0,0 +1,40 @@
+--- a/t/04.colour.t
++++ b/t/04.colour.t
+@@ -15,6 +15,11 @@
+ colour_open => "\{",
+ colour_close => "\}",
+ );
++my $is_tty = $m->_is_tty;
++
++SKIP: {
++skip 'Not a tty', 2 unless $is_tty;
++
+ is(
+ $m->colour_parse( "Hello {style => 'b', color => 'red'}red everyone! This is {style => 'u', color => 'rgb(255250250)'}embedded{/}{/} text..." ),
+ "Hello \e[38;5;224;1m\e[38;2;255;0;0;1mred everyone! This is \e[38;5;250;4m\e[38;2;255;250;250;4membedded\e[m\e[m\e[m\e[m text...",
+@@ -26,6 +31,7 @@
+ "And \e[38;5;224;48;5;255;3;1m\e[38;2;255;0;0;48;2;255;255;255;3;1mlight red on white\e[m\e[m \e[38;5;252;5m\e[38;2;255;255;0;5mand yellow text\e[m\e[m ?",
+ "Inline style: And \e[38;5;224;48;5;255;3;1m\e[38;2;255;0;0;48;2;255;255;255;3;1mlight red on white\e[m\e[m \e[38;5;252;5m\e[38;2;255;255;0;5mand yellow text\e[m\e[m ?",
+ );
++}
+
+ is(
+ $m->coloured( 'bold white on red', "Bold white text on red background" ),
+@@ -33,6 +39,9 @@
+ "Coloured() style: \e[38;5;255;48;5;224;1m\e[38;2;255;255;255;48;2;255;0;0;1mBold white text on red background\e[m\e[m",
+ );
+
++SKIP: {
++skip 'Not a tty', 2 unless $is_tty;
++
+ is(
+ $m->colour_parse( "And {bold light white on red}light white\non red multi line{/} {underline green}underlined green text{/}" ),
+ "And \e[38;5;255;48;5;224;1m\e[38;2;255;255;255;48;2;255;0;0;1m\e[38;5;255;48;5;224;1m\e[38;2;255;255;255;48;2;255;0;0;1mlight white\e[m
+@@ -45,6 +54,7 @@
+ "Some \e[38;5;224;48;5;255;1m\e[38;2;255;0;0;48;2;255;255;255;1mred on white. And \e[38;5;3;4m\e[38;2;0;0;255;4munderlined\e[m\e[m\e[m\e[m text...",
+ "Inline style with rgb: Some \e[38;5;224;48;5;255;1m\e[38;2;255;0;0;48;2;255;255;255;1mred on white. And \e[38;5;3;4m\e[38;2;0;0;255;4munderlined\e[m\e[m\e[m\e[m text...",
+ );
++}
+
+ is(
+ $m->coloured( 'bold rgb(255, 0, 0) on white', "Some red on white text." ),
diff --git a/testing/perl-mojo-pg/APKBUILD b/testing/perl-mojo-pg/APKBUILD
new file mode 100644
index 00000000000..32d8ac7db68
--- /dev/null
+++ b/testing/perl-mojo-pg/APKBUILD
@@ -0,0 +1,38 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-mojo-pg
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Mojo-Pg
+pkgver=4.27
+pkgrel=0
+pkgdesc="Use PostgreSQL with Mojolicious"
+url="https://metacpan.org/release/Mojo-Pg/"
+arch="noarch"
+license="Artistic-2.0"
+depends="perl perl-dbd-pg perl-mojolicious perl-sql-abstract-pg"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/S/SR/SRI/Mojo-Pg-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+bd2ce6fe3e3bb918753e9b165be095a7caca8988b43fb2e99786bbafd61cfedd5380e37a2d8a0f03b25529544de250dbdcaa7f2ecdac2ee34551cd7c572f1ff7 Mojo-Pg-4.27.tar.gz
+"
diff --git a/testing/perl-mojo-reactor-ioasync/APKBUILD b/testing/perl-mojo-reactor-ioasync/APKBUILD
new file mode 100644
index 00000000000..56cb4e25554
--- /dev/null
+++ b/testing/perl-mojo-reactor-ioasync/APKBUILD
@@ -0,0 +1,37 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-mojo-reactor-ioasync
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Mojo-Reactor-IOAsync
+pkgver=1.002
+pkgrel=0
+pkgdesc="IO::Async backend for Mojo::Reactor"
+url="https://metacpan.org/release/Mojo-Reactor-IOAsync/"
+arch="noarch"
+license="Artistic-2.0"
+depends="perl perl-io-async perl-mojolicious"
+makedepends="perl-module-build-tiny"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/D/DB/DBOOK/Mojo-Reactor-IOAsync-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ perl Build.PL \
+ --installdirs=vendor \
+ --create_packlist=0
+ ./Build
+}
+
+check() {
+ ./Build test
+}
+
+package() {
+ ./Build install --destdir="$pkgdir"
+}
+
+sha512sums="
+9a51b4b18b6b7a1a62a4d6340dd07bec970065d43e17d2bd800395b96ef1859a4d59198c9641ffb8b378625fbe65aa250a02feca790e4f0daf8faf21299fdc23 Mojo-Reactor-IOAsync-1.002.tar.gz
+"
diff --git a/testing/perl-mojo-redis/APKBUILD b/testing/perl-mojo-redis/APKBUILD
new file mode 100644
index 00000000000..9784d81ffa5
--- /dev/null
+++ b/testing/perl-mojo-redis/APKBUILD
@@ -0,0 +1,63 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-mojo-redis
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Mojo-Redis
+pkgver=3.29
+pkgrel=0
+pkgdesc="Redis driver based on Mojo::IOLoop"
+url="https://metacpan.org/release/Mojo-Redis/"
+arch="noarch"
+license="Artistic-2.0"
+depends="perl perl-mojolicious perl-protocol-redis-faster"
+checkdepends="perl-test-deep redis"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/J/JH/JHTHORSEN/Mojo-Redis-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+prepare() {
+ default_prepare
+
+ # disable a very flaky test
+ rm -v ./t/pubsub.t
+}
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ export TEST_ONLINE="redis://localhost"
+
+ redis-server \
+ --dir "$builddir" \
+ --loglevel warning \
+ --unixsocket "$builddir"/redis.sock &
+ local _redispid=$!
+
+ # make sure socket is available before we start running tests
+ local _n=100 # wait up to 10 sec
+ while ! [ -e "$builddir"/redis.sock ] && [ $_n -gt 0 ]; do
+ sleep 0.1s
+ # shellcheck disable=SC3039
+ let _n="$_n - 1"
+ done
+
+ make test || (kill $_redispid && false)
+ kill $_redispid
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+115b0ea8708fff9d4a14dc761dad0f991cf78dbfc9aa19a0a30f5c8914f6e8f153026253e8a97bd30282fdd3272a03e7a61a7c9ee1214187fb62693caffa334d Mojo-Redis-3.29.tar.gz
+"
diff --git a/testing/perl-mojo-sqlite/APKBUILD b/testing/perl-mojo-sqlite/APKBUILD
new file mode 100644
index 00000000000..20ad4594593
--- /dev/null
+++ b/testing/perl-mojo-sqlite/APKBUILD
@@ -0,0 +1,40 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-mojo-sqlite
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Mojo-SQLite
+pkgver=3.009
+pkgrel=0
+pkgdesc="Tiny Mojolicious wrapper for SQLite"
+url="https://metacpan.org/release/Mojo-SQLite/"
+arch="noarch"
+license="Artistic-2.0"
+depends="
+ perl perl-dbd-sqlite perl-dbi perl-mojolicious
+ perl-sql-abstract-pg perl-uri perl-uri-db
+ "
+makedepends="perl-module-build-tiny"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/D/DB/DBOOK/Mojo-SQLite-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ perl Build.PL \
+ --installdirs=vendor \
+ --create_packlist=0
+ ./Build
+}
+
+check() {
+ ./Build test
+}
+
+package() {
+ ./Build install --destdir="$pkgdir"
+}
+
+sha512sums="
+acd18cf2f86c448658c7a7e612ba478799327b2a921c2bce6db8155ad0be2f432abdc0625d328f5852970bc39119ef22507a3393a719caeaa011e17aba08e9cf Mojo-SQLite-3.009.tar.gz
+"
diff --git a/testing/perl-mojolicious-plugin-openapi/APKBUILD b/testing/perl-mojolicious-plugin-openapi/APKBUILD
new file mode 100644
index 00000000000..b652965a5f2
--- /dev/null
+++ b/testing/perl-mojolicious-plugin-openapi/APKBUILD
@@ -0,0 +1,46 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-mojolicious-plugin-openapi
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Mojolicious-Plugin-OpenAPI
+pkgver=5.09
+pkgrel=0
+pkgdesc="OpenAPI / Swagger plugin for Mojolicious"
+url="https://metacpan.org/release/Mojolicious-Plugin-OpenAPI/"
+arch="noarch"
+license="Artistic-2.0"
+depends="perl perl-json-validator perl-mojolicious"
+checkdepends="perl-text-markdown"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/J/JH/JHTHORSEN/Mojolicious-Plugin-OpenAPI-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+doc() {
+ local file; find "$pkgdir" -name "*.pod" | while read -r file; do
+ amove "${file#"$pkgdir"}"
+ done
+ default_doc
+}
+
+sha512sums="
+33eee4e23e6a6cac8d9ff6473f3aec9ed82e79ddfa3a66156d9f7423b40a33b823de2991dcd19c4f1f3c1f94588c5e74c5715e3b5234848fbeb7ba99d5468265 Mojolicious-Plugin-OpenAPI-5.09.tar.gz
+"
diff --git a/testing/perl-musicbrainz-discid/APKBUILD b/testing/perl-musicbrainz-discid/APKBUILD
new file mode 100644
index 00000000000..8b7522a1bee
--- /dev/null
+++ b/testing/perl-musicbrainz-discid/APKBUILD
@@ -0,0 +1,30 @@
+# Contributor: Jakob Meier <comcloudway@ccw.icu>
+# Maintainer: Jakob Meier <comcloudway@ccw.icu>
+pkgname=perl-musicbrainz-discid
+pkgver=0.06
+pkgrel=0
+pkgdesc="Perl Module: Perl interface for the MusicBrainz libdiscid library"
+url="https://metacpan.org/release/MusicBrainz-DiscID"
+arch="all"
+license="MIT"
+makedepends="perl-dev libdiscid-dev"
+subpackages="$pkgname-doc"
+source="https://github.com/njh/perl-musicbrainz-discid/archive/$pkgver/perl-musicbrainz-discid-$pkgver.tar.gz"
+
+build() {
+ PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+check() {
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+ find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
+}
+
+sha512sums="
+66d9b7e2e45a0a5f87fdbe0673f6886aa0818d43ba51f46973b02e8f870635a7421b3b0a7bd0fa1d6f862256e9a36340c87af3a43a5e71c2df07dcaa04bcdd87 perl-musicbrainz-discid-0.06.tar.gz
+"
diff --git a/testing/perl-net-address-ip-local/APKBUILD b/testing/perl-net-address-ip-local/APKBUILD
new file mode 100644
index 00000000000..b9c91c1956c
--- /dev/null
+++ b/testing/perl-net-address-ip-local/APKBUILD
@@ -0,0 +1,37 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-net-address-ip-local
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Net-Address-IP-Local
+pkgver=0.1.2
+pkgrel=0
+pkgdesc="Discover the local system's IP address"
+url="https://metacpan.org/release/Net-Address-IP-Local/"
+arch="noarch"
+license="GPL-2.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-error perl-io-socket-inet6"
+makedepends="perl-module-build"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/J/JM/JMEHNLE/net-address-ip-local/Net-Address-IP-Local-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ perl Build.PL \
+ --installdirs=vendor \
+ --create_packlist=0
+ ./Build
+}
+
+check() {
+ ./Build test
+}
+
+package() {
+ ./Build install --destdir="$pkgdir"
+}
+
+sha512sums="
+98f65c05467ce82ab45b6f9ded6a38f5c2ef6c42f94cb59a72f1b8c4660177494b606f8170812fcb37a9b49b0427d31454f6fbd094dab9877b331a24a324fb05 Net-Address-IP-Local-0.1.2.tar.gz
+"
diff --git a/testing/perl-net-amqp-rabbitmq/APKBUILD b/testing/perl-net-amqp-rabbitmq/APKBUILD
index d8928f81686..b1a0eb11d61 100644
--- a/testing/perl-net-amqp-rabbitmq/APKBUILD
+++ b/testing/perl-net-amqp-rabbitmq/APKBUILD
@@ -4,8 +4,8 @@
pkgname=perl-net-amqp-rabbitmq
#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
_pkgreal=Net-AMQP-RabbitMQ
-pkgver=2.40009
-pkgrel=0
+pkgver=2.40010
+pkgrel=2
pkgdesc="interact with RabbitMQ over AMQP using librabbitmq"
url="https://metacpan.org/release/Net-AMQP-RabbitMQ/"
arch="all"
@@ -33,5 +33,5 @@ package() {
}
sha512sums="
-2c0f53d59858e777fbc712c3bd06e3464783559dd9424c58a8fe586747e1d43aa4a607268484ec8bf4f10e979788ed5ea9558208096187c6e0c12a473e465459 Net-AMQP-RabbitMQ-2.40009.tar.gz
+1e0256a3903379031059723ca0d11182ed4ef5a4ae4053d47f57ae1d4c5f42b3a9c48b7fd3dceb057c492c179bc01484651bb063fb5bca4542185fdca7471b06 Net-AMQP-RabbitMQ-2.40010.tar.gz
"
diff --git a/testing/perl-net-async-redis-xs/APKBUILD b/testing/perl-net-async-redis-xs/APKBUILD
new file mode 100644
index 00000000000..e6789d4739b
--- /dev/null
+++ b/testing/perl-net-async-redis-xs/APKBUILD
@@ -0,0 +1,64 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-net-async-redis-xs
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Net-Async-Redis-XS
+pkgver=1.001
+pkgrel=0
+pkgdesc="Faster version of Net::Async::Redis"
+url="https://metacpan.org/release/Net-Async-Redis-XS/"
+arch="all !armhf !armv7 !x86" # perl-net-async-redis
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="
+ perl perl-future-asyncawait perl-io-async
+ perl-net-async-redis perl-object-pad
+ "
+makedepends="perl-dev"
+checkdepends="
+ perl-sub-identify perl-test-checkdeps perl-test-deep
+ perl-test-fatal perl-test-hexstring perl-test-memorygrowth
+ perl-test-mockmodule redis
+ "
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/T/TE/TEAM/Net-Async-Redis-XS-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ export NET_ASYNC_REDIS_HOST="127.0.0.1"
+
+ redis-server \
+ --dir "$builddir" \
+ --loglevel warning \
+ --unixsocket "$builddir"/redis.sock &
+ local _redispid=$!
+
+ # make sure socket is available before we start running tests
+ local _n=100 # wait up to 10 sec
+ while ! [ -e "$builddir"/redis.sock ] && [ $_n -gt 0 ]; do
+ sleep 0.1s
+ # shellcheck disable=SC3039
+ let _n="$_n - 1"
+ done
+
+ make test || (kill $_redispid && false)
+ kill $_redispid
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+79b0b319492564130fa5deeece90d34b305a6024fea16362e2fae1867db3cb941411459ca0e55a234c5a76be11b9d849891cbb3baef624be563f87f2995f61ff Net-Async-Redis-XS-1.001.tar.gz
+"
diff --git a/testing/perl-net-async-redis/APKBUILD b/testing/perl-net-async-redis/APKBUILD
new file mode 100644
index 00000000000..68ad4ad8554
--- /dev/null
+++ b/testing/perl-net-async-redis/APKBUILD
@@ -0,0 +1,77 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-net-async-redis
+pkgver=6.000
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Net-Async-Redis
+pkgdesc="Redis support for IO::Async"
+url="https://metacpan.org/release/Net-Async-Redis/"
+arch="noarch !armhf !armv7 !x86" # perl-ryu
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="
+ perl perl-cache-lru perl-class-method-modifiers perl-curry
+ perl-digest-crc perl-dir-self perl-file-sharedir
+ perl-file-sharedir-install perl-future perl-future-asyncawait
+ perl-future-queue perl-io-async perl-list-binarysearch-xs
+ perl-log-any perl-math-random-secure perl-metrics-any
+ perl-object-pad perl-path-tiny perl-ryu
+ perl-ryu-async perl-syntax-keyword-dynamically
+ perl-syntax-keyword-match perl-syntax-keyword-try
+ perl-uri perl-uri-redis perl-yaml-libyaml
+ "
+checkdepends="
+ perl-sub-identify perl-test-checkdeps perl-test-deep
+ perl-test-fatal perl-test-hexstring perl-test-mockmodule
+ perl-variable-disposition redis
+ "
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/T/TE/TEAM/Net-Async-Redis-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ export NET_ASYNC_REDIS_HOST="127.0.0.1"
+
+ redis-server \
+ --dir "$builddir" \
+ --loglevel warning \
+ --unixsocket "$builddir"/redis.sock &
+ local _redispid=$!
+
+ # make sure socket is available before we start running tests
+ local _n=100 # wait up to 10 sec
+ while ! [ -e "$builddir"/redis.sock ] && [ $_n -gt 0 ]; do
+ sleep 0.1s
+ # shellcheck disable=SC3039
+ let _n="$_n - 1"
+ done
+
+ make test || (kill $_redispid && false)
+ kill $_redispid
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+doc() {
+ local file; find "$pkgdir" -name "*.pod" | while read -r file; do
+ amove "${file#"$pkgdir"}"
+ done
+ default_doc
+}
+
+sha512sums="
+691329551b0be74e5f9034fe9c9aaa5ad8c93306a9e3bf46b574c311631a337ed97242b134395b24a4e774ccf78220bd33420864ae43bde473b20e6693fadf70 Net-Async-Redis-6.000.tar.gz
+"
diff --git a/testing/perl-net-async-xmpp/APKBUILD b/testing/perl-net-async-xmpp/APKBUILD
new file mode 100644
index 00000000000..170fe5bd129
--- /dev/null
+++ b/testing/perl-net-async-xmpp/APKBUILD
@@ -0,0 +1,50 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-net-async-xmpp
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Net-Async-XMPP
+pkgver=0.003
+pkgrel=0
+pkgdesc="Asynchronous support for the XMPP Protocol"
+url="https://metacpan.org/release/Net-Async-XMPP/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="
+ perl perl-curry perl-future perl-io-async
+ perl-io-async-resolver-dns perl-io-async-ssl
+ perl-mixin-event-dispatch perl-protocol-xmpp
+ "
+checkdepends="perl-test-checkdeps perl-test-fatal"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/T/TE/TEAM/Net-Async-XMPP-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+doc() {
+ local file; find "$pkgdir" -name "*.pod" | while read -r file; do
+ amove "${file#"$pkgdir"}"
+ done
+ default_doc
+}
+
+sha512sums="
+6c5b187ae82fcff3ed3e2c976f8957d1b3a882c571fb291dfe0d89b0db296ffc43636d293f86a164f77fb1b43d6184b08714671497c16d8a8c35aa7ab6d4a036 Net-Async-XMPP-0.003.tar.gz
+"
diff --git a/testing/perl-net-curl-promiser/APKBUILD b/testing/perl-net-curl-promiser/APKBUILD
new file mode 100644
index 00000000000..508f7b57d84
--- /dev/null
+++ b/testing/perl-net-curl-promiser/APKBUILD
@@ -0,0 +1,75 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-net-curl-promiser
+pkgver=0.20
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Net-Curl-Promiser
+pkgdesc="Asynchronous libcurl, the easy way"
+url="https://metacpan.org/release/Net-Curl-Promiser/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-net-curl perl-promise-es6"
+checkdepends="
+ perl-anyevent perl-io-async perl-mojolicious
+ perl-test-class-tiny perl-test-deep
+ perl-test-failwarnings perl-test-fatal
+ "
+subpackages="
+ $pkgname-doc
+ $pkgname-anyevent
+ $pkgname-ioasync
+ $pkgname-mojo
+ "
+source="https://cpan.metacpan.org/authors/id/F/FE/FELIPE/Net-Curl-Promiser-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+anyevent() {
+ pkgdesc="$pkgdesc (AnyEvent backend)"
+ depends="$pkgname=$pkgver-r$pkgrel perl-anyevent"
+ install_if="$pkgname=$pkgver-r$pkgrel perl-anyevent"
+
+ amove usr/share/perl5/vendor_perl/Net/Curl/Promiser/AnyEvent.pm
+ amove usr/share/perl5/vendor_perl/Net/Curl/Promiser/Backend/AnyEvent.pm
+}
+
+ioasync() {
+ pkgdesc="$pkgdesc (IO::Async backend)"
+ depends="$pkgname=$pkgver-r$pkgrel perl-io-async"
+ install_if="$pkgname=$pkgver-r$pkgrel perl-io-async"
+
+ amove usr/share/perl5/vendor_perl/Net/Curl/Promiser/IOAsync.pm
+ amove usr/share/perl5/vendor_perl/Net/Curl/Promiser/Backend/IOAsync.pm
+}
+
+mojo() {
+ pkgdesc="$pkgdesc (Mojolicious backend)"
+ depends="$pkgname=$pkgver-r$pkgrel perl-mojolicious"
+ install_if="$pkgname=$pkgver-r$pkgrel perl-mojolicious"
+
+ amove usr/share/perl5/vendor_perl/Net/Curl/Promiser/Mojo.pm
+ amove usr/share/perl5/vendor_perl/Net/Curl/Promiser/Backend/Mojo.pm
+}
+
+sha512sums="
+0fbfbd97037a26384eae5562ec9251e6bbffb6a0d4745e40111e2f1a7b1bbf196785bebb712dafcde02534d46215fbac3ca2abfecb5db1a2559011e173e3b258 Net-Curl-Promiser-0.20.tar.gz
+"
diff --git a/testing/perl-net-curl/APKBUILD b/testing/perl-net-curl/APKBUILD
index d5314f6e49b..a23d6da9885 100644
--- a/testing/perl-net-curl/APKBUILD
+++ b/testing/perl-net-curl/APKBUILD
@@ -1,11 +1,11 @@
-# Automatically generated by apkbuild-cpan, template 3
+# Automatically generated by apkbuild-cpan, template 4
# Contributor: Timothy Legge <timlegge@gmail.com>
# Maintainer: Timothy Legge <timlegge@gmail.com>
pkgname=perl-net-curl
+pkgver=0.56
+pkgrel=0
#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
_pkgreal=Net-Curl
-pkgver=0.50
-pkgrel=0
pkgdesc="Perl interface for libcurl"
url="https://metacpan.org/release/Net-Curl/"
arch="all"
@@ -18,7 +18,10 @@ builddir="$srcdir/$_pkgreal-$pkgver"
build() {
export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL INSTALLDIRS=vendor
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
make
}
@@ -29,9 +32,15 @@ check() {
package() {
make DESTDIR="$pkgdir" install
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
+}
+
+doc() {
+ local file; find "$pkgdir" -name "*.pod" | while read -r file; do
+ amove "${file#"$pkgdir"}"
+ done
+ default_doc
}
sha512sums="
-145fcac9cb6c878c8776aa3b5910d1fb3a5c19ecbb54acd344c8d7661c47e4bbf41204781791aa4baeb70e3561d1fa99d496ded4da13203b71cfa8e0dcc8e862 Net-Curl-0.50.tar.gz
+a9facbed8c381d52c307b556b74660ee3b828f092cfbf58b6b819f6b2819cabab5622856cdbc0d47dc7cb609fa85df9007dd9d380d495d374d5e0edc46add709 Net-Curl-0.56.tar.gz
"
diff --git a/testing/perl-net-idn-encode/APKBUILD b/testing/perl-net-idn-encode/APKBUILD
new file mode 100644
index 00000000000..4ba8ff68560
--- /dev/null
+++ b/testing/perl-net-idn-encode/APKBUILD
@@ -0,0 +1,48 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-net-idn-encode
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Net-IDN-Encode
+pkgver=2.500
+pkgrel=0
+pkgdesc="Internationalizing Domain Names in Applications (IDNA)"
+url="https://metacpan.org/release/Net-IDN-Encode/"
+arch="all"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl"
+makedepends="perl-dev perl-module-build"
+checkdepends="perl-test-nowarnings"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/C/CF/CFAERBER/Net-IDN-Encode-$pkgver.tar.gz
+ perl-5.38-compat.patch
+ "
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ perl Build.PL \
+ --installdirs=vendor \
+ --create_packlist=0
+ ./Build
+}
+
+check() {
+ ./Build test
+}
+
+package() {
+ ./Build install --destdir="$pkgdir"
+}
+
+doc() {
+ local file; find "$pkgdir" -name "*.pod" | while read -r file; do
+ amove "${file#"$pkgdir"}"
+ done
+ default_doc
+}
+
+sha512sums="
+3537309ea391e4f762eb8ce43929bfa024d63ee59c94f8d2ea16179aa6ad66ecef29188551749593302f14dc5b3182dbce18ebaf5176a34b40d6fa5b7e5763fb Net-IDN-Encode-2.500.tar.gz
+485c8373199ade1ee5efb630b602e0f81ced0fdc19fcdd825334fefd12e9bcc83e71dabe2c6b0747203451d012019e2f32b1f44fee9c3479e4753df8371c645c perl-5.38-compat.patch
+"
diff --git a/testing/perl-net-idn-encode/perl-5.38-compat.patch b/testing/perl-net-idn-encode/perl-5.38-compat.patch
new file mode 100644
index 00000000000..15dc298a306
--- /dev/null
+++ b/testing/perl-net-idn-encode/perl-5.38-compat.patch
@@ -0,0 +1,38 @@
+Patch-Source: https://github.com/cfaerber/Net-IDN-Encode/pull/11.patch
+--
+From 3ebe6f2e239b470efcb64a044edc8202798188af Mon Sep 17 00:00:00 2001
+From: Shin Kojima <shin@kojima.org>
+Date: Sun, 23 Jul 2023 13:15:59 +0900
+Subject: [PATCH] use uvchr_to_utf8_flags instead of uvuni_to_utf8_flags (which
+ is removed in perl 5.38.0)
+
+https://perldoc.perl.org/5.36.0/perlintern#uvuni_to_utf8_flags
+Signed-off-by: Shin Kojima <shin@kojima.org>
+---
+ lib/Net/IDN/Punycode.xs | 6 +++++-
+ 1 file changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/lib/Net/IDN/Punycode.xs b/lib/Net/IDN/Punycode.xs
+index 211ef9c..36530dd 100644
+--- a/lib/Net/IDN/Punycode.xs
++++ b/lib/Net/IDN/Punycode.xs
+@@ -24,6 +24,10 @@
+ #define utf8_to_uvchr_buf(in_p,in_e,u8) utf8_to_uvchr(in_p,u8);
+ #endif
+
++#ifndef uvchr_to_utf8_flags
++#define uvchr_to_utf8_flags(d, uv, flags) uvuni_to_utf8_flags(d, uv, flags);
++#endif
++
+ static char enc_digit[BASE] = {
+ 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm',
+ 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z',
+@@ -253,7 +257,7 @@ decode_punycode(input)
+ if(skip_p < re_p) /* move succeeding chars */
+ Move(skip_p, skip_p + u8, re_p - skip_p, char);
+ re_p += u8;
+- uvuni_to_utf8_flags((U8*)skip_p, n, UNICODE_ALLOW_ANY);
++ uvchr_to_utf8_flags((U8*)skip_p, n, UNICODE_ALLOW_ANY);
+ }
+
+ if(!first) SvUTF8_on(RETVAL); /* UTF-8 chars have been inserted */
diff --git a/testing/perl-net-irr/APKBUILD b/testing/perl-net-irr/APKBUILD
index c457308f434..10b5c5f644f 100644
--- a/testing/perl-net-irr/APKBUILD
+++ b/testing/perl-net-irr/APKBUILD
@@ -1,42 +1,39 @@
-# Automatically generated by apkbuild-cpan, template 1
+# Automatically generated by apkbuild-cpan, template 4
# Contributor: Francesco Colista <fcolista@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=perl-net-irr
+pkgver=0.10
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
_pkgreal=Net-IRR
-pkgver=0.08
-pkgrel=3
pkgdesc="Perl interface to the Internet Route Registry daemon"
url="https://metacpan.org/release/Net-IRR/"
arch="noarch"
-license="GPL PerlArtistic"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
depends="perl"
makedepends="cairo-dev"
subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/T/TC/TCAINE/$_pkgreal-$pkgver.tar.gz"
-
+source="https://cpan.metacpan.org/authors/id/T/TC/TCAINE/Net-IRR-$pkgver.tar.gz"
builddir="$srcdir/$_pkgreal-$pkgver"
-prepare() {
- default_prepare
-
- cd "$builddir"
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
-}
-
build() {
- cd "$builddir"
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
make
}
check() {
- cd "$builddir"
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
make test
}
package() {
- cd "$builddir"
make DESTDIR="$pkgdir" install
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-sha512sums="1713451dd65b44c6e87bd8cc29228c898c3790be9d0b7d8adbebbf69b91c1557eb6fef47262fc40bc543f258087ceb87903fc7faf2a3d5059b8735c686fb5823 Net-IRR-0.08.tar.gz"
+sha512sums="
+819630123616034b646772db643642dad5e3c1f8eafd7b0e60e9265de30cb30f8b82df17a0ea58e763b9d2ef7861ad0a16878e669099a1736cb2107c7f369538 Net-IRR-0.10.tar.gz
+"
diff --git a/testing/perl-net-jabber-bot/APKBUILD b/testing/perl-net-jabber-bot/APKBUILD
new file mode 100644
index 00000000000..cd4df41eb44
--- /dev/null
+++ b/testing/perl-net-jabber-bot/APKBUILD
@@ -0,0 +1,42 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-net-jabber-bot
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Net-Jabber-Bot
+pkgver=2.1.7
+pkgrel=0
+pkgdesc="Automated Jabber Bot creation with safeties"
+url="https://metacpan.org/release/Net-Jabber-Bot/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="
+ perl perl-log-log4perl perl-moose perl-moosex-types
+ perl-mozilla-ca perl-net-jabber
+ "
+checkdepends="perl-test-nowarnings"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/T/TO/TODDR/Net-Jabber-Bot-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+9d7d2edc76cbe99da87008dc5e70eb652231ba54988ef848a34ab840582e7b3fb1b23b67898f462ad9fbfce74c4aea6e8ff8f34deb21e2df336dac4dfb6bc09f Net-Jabber-Bot-2.1.7.tar.gz
+"
diff --git a/testing/perl-net-jabber/APKBUILD b/testing/perl-net-jabber/APKBUILD
new file mode 100644
index 00000000000..0b7f9df306d
--- /dev/null
+++ b/testing/perl-net-jabber/APKBUILD
@@ -0,0 +1,50 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-net-jabber
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Net-Jabber
+pkgver=2.0
+pkgrel=0
+pkgdesc="Access the Jabber protocol with Perl"
+url="https://metacpan.org/release/Net-Jabber/"
+arch="noarch"
+license="LGPL-2.0-or-later"
+depends="perl perl-net-xmpp"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/R/RE/REATMON/Net-Jabber-$pkgver.tar.gz
+ builtin-digest-sha.patch
+ hash-randomization.patch
+ "
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+prepare() {
+ default_prepare
+
+ # bundled Test::More causes deprecation warnings
+ mv -v t/lib t/lib.old
+}
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+2ad275fdef8a7ed17dc464f692b974e71bc3a5df5239943cceaec9509e6454945023e220ddfb42763e18813124f6b7f2d6d43faf3059e0680b753486961a1b4c Net-Jabber-2.0.tar.gz
+d418222fbb510329c1e74c934e171f13f8a23bd1c8ee0526f36ea42de3e2eae8814b04bebe0d0ddf99ac351812b16ed593fb860e17191849cb557359d3981df7 builtin-digest-sha.patch
+c9e816e4156b2b3890c8f02ac07e59f3bac0bdd56f0834694ec33afdfd1e02a20242828c2f241ef155353170c745fa2e145ebf953f246e25d62c4ea10db30260 hash-randomization.patch
+"
diff --git a/testing/perl-net-jabber/builtin-digest-sha.patch b/testing/perl-net-jabber/builtin-digest-sha.patch
new file mode 100644
index 00000000000..56aacac613a
--- /dev/null
+++ b/testing/perl-net-jabber/builtin-digest-sha.patch
@@ -0,0 +1,42 @@
+Use Digest::SHA bundled with Perl so we don't need to depend on perl-digest-sha1
+
+--- a/lib/Net/Jabber/Component.pm
++++ b/lib/Net/Jabber/Component.pm
+@@ -219,7 +219,7 @@
+
+ $self->{STREAM}->SetCallBacks(node=>undef);
+
+- $self->Send("<handshake>".Digest::SHA1::sha1_hex($self->{SESSION}->{id}.$args{secret})."</handshake>");
++ $self->Send("<handshake>".Digest::SHA::sha1_hex($self->{SESSION}->{id}.$args{secret})."</handshake>");
+ my $handshake = $self->Process();
+
+ if (!defined($handshake) ||
+--- a/lib/Net/Jabber/Key.pm
++++ b/lib/Net/Jabber/Key.pm
+@@ -103,14 +103,14 @@
+
+ $self->{CACHE} = {};
+
+- if (eval "require Digest::SHA1")
++ if (eval "require Digest::SHA")
+ {
+ $self->{DIGEST} = 1;
+- Digest::SHA1->import(qw(sha1 sha1_hex sha1_base64));
++ Digest::SHA->import(qw(sha1 sha1_hex sha1_base64));
+ }
+ else
+ {
+- print "ERROR: You cannot use Key.pm unless you have Digest::SHA1 installed.\n";
++ print "ERROR: You cannot use Key.pm unless you have Digest::SHA installed.\n";
+ exit(0);
+ }
+
+@@ -131,7 +131,7 @@
+ my $self = shift;
+
+ my $string = $$.time.rand(1000000);
+- $string = Digest::SHA1::sha1_hex($string);
++ $string = Digest::SHA::sha1_hex($string);
+ $self->{DEBUG}->Log1("Generate: key($string)");
+ return $string;
+ }
diff --git a/testing/perl-net-jabber/hash-randomization.patch b/testing/perl-net-jabber/hash-randomization.patch
new file mode 100644
index 00000000000..24ad44a2659
--- /dev/null
+++ b/testing/perl-net-jabber/hash-randomization.patch
@@ -0,0 +1,13 @@
+Fixes t/protocol_rpc.t test expecting keys to be sorted
+
+--- a/lib/Net/Jabber/Protocol.pm
++++ b/lib/Net/Jabber/Protocol.pm
+@@ -2239,7 +2239,7 @@
+ elsif (ref($value) eq "HASH")
+ {
+ my $struct = $obj->AddValue()->AddStruct();
+- foreach my $key (keys(%{$value}))
++ foreach my $key (sort keys(%{$value}))
+ {
+ $self->RPCEncode_Value($struct->AddMember(name=>$key),$value->{$key});
+ }
diff --git a/testing/perl-net-libresolv/APKBUILD b/testing/perl-net-libresolv/APKBUILD
new file mode 100644
index 00000000000..68ce0e14e4f
--- /dev/null
+++ b/testing/perl-net-libresolv/APKBUILD
@@ -0,0 +1,36 @@
+# Automatically generated by apkbuild-cpan, template 3
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-net-libresolv
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Net-LibResolv
+pkgver=0.03
+pkgrel=0
+pkgdesc="Perl wrapper around libresolv"
+url="https://metacpan.org/release/Net-LibResolv/"
+arch="all"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl"
+makedepends="perl-dev perl-extutils-cchecker perl-module-build"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/P/PE/PEVANS/Net-LibResolv-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ perl Build.PL --installdirs=vendor
+ ./Build
+}
+
+check() {
+ ./Build test
+}
+
+package() {
+ ./Build install --destdir="$pkgdir"
+ find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
+}
+
+sha512sums="
+78c447eed6c3222b66627f2930e95a78bd5688d78d242e6de19a7806f94ccd5132a2537e4584a31805d2eaacae91af85ef5d6c64a6116e3a268cafe8a2e2bb2f Net-LibResolv-0.03.tar.gz
+"
diff --git a/testing/perl-net-mpd/APKBUILD b/testing/perl-net-mpd/APKBUILD
deleted file mode 100644
index 22932cd04c2..00000000000
--- a/testing/perl-net-mpd/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Automatically generated by apkbuild-cpan, template 2
-# Contributor: Leo <thinkabit.ukim@gmail.com>
-# Maintainer:
-pkgname=perl-net-mpd
-_pkgreal=Net-MPD
-pkgver=0.07
-pkgrel=1
-pkgdesc="Communicate with an MPD server"
-url="https://metacpan.org/release/Net-MPD/"
-arch="noarch"
-license="MIT"
-depends="perl mpd"
-makedepends="perl-module-build-tiny"
-subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/A/AB/ABERNDT/Net-MPD-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgreal-$pkgver"
-
-build() {
- export PERL_MM_USE_DEFAULT=1 PERL_AUTOINSTALL="--skipdeps" \
- PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \
- PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \
- MODULEBUILDRC=/dev/null CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
-
- perl Build.PL
- ./Build
-}
-
-check() {
- ./Build test
-}
-
-package() {
- ./Build install --destdir="$pkgdir" --prefix=/usr
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
-}
-
-sha512sums="8864cfcfa5fa22ccc32feea73644217611957aeb5fe2f3b35c389f8e8488887d589bc3f2ac794e4374bbe75134e60832d920dba22f31fbe513e688da70fec1e2 Net-MPD-0.07.tar.gz"
diff --git a/testing/perl-net-mqtt-simple/APKBUILD b/testing/perl-net-mqtt-simple/APKBUILD
new file mode 100644
index 00000000000..6b5f9db33a1
--- /dev/null
+++ b/testing/perl-net-mqtt-simple/APKBUILD
@@ -0,0 +1,46 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-net-mqtt-simple
+pkgver=1.29
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Net-MQTT-Simple
+pkgdesc="Minimal MQTT version 3 interface"
+url="https://metacpan.org/release/Net-MQTT-Simple/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl"
+subpackages="$pkgname-doc $pkgname-ssl"
+source="https://cpan.metacpan.org/authors/id/J/JU/JUERD/Net-MQTT-Simple-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+ssl() {
+ pkgdesc="$pkgdesc with SSL support"
+ depends="$pkgname=$pkgver-r$pkgrel perl-io-socket-ssl"
+ install_if="$pkgname=$pkgver-r$pkgrel perl-io-socket-ssl"
+
+ amove usr/share/perl5/vendor_perl/Net/MQTT/Simple/SSL.pm
+}
+
+sha512sums="
+9f0d55ed0e9b158c33f10cbb58d70abdbf02c1c9077ca9a53b9da032409ae21db5fb317c3f54033c86bbee184c736c1ab8c84e9907255d986fab72bd3975d5e0 Net-MQTT-Simple-1.29.tar.gz
+"
diff --git a/testing/perl-net-mqtt/APKBUILD b/testing/perl-net-mqtt/APKBUILD
new file mode 100644
index 00000000000..80e00fdb373
--- /dev/null
+++ b/testing/perl-net-mqtt/APKBUILD
@@ -0,0 +1,53 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-net-mqtt
+pkgver=1.163170
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Net-MQTT
+pkgdesc="Perl modules for the MQTT Protocol"
+url="https://metacpan.org/release/Net-MQTT/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-module-pluggable"
+subpackages="$pkgname-doc $pkgname-trace"
+source="https://cpan.metacpan.org/authors/id/B/BE/BEANZ/Net-MQTT-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+doc() {
+ local file; find "$pkgdir" -name "*.pod" | while read -r file; do
+ amove "${file#"$pkgdir"}"
+ done
+ default_doc
+}
+
+trace() {
+ pkgdesc="$pkgdesc (message decoder for IP packets)"
+ depends="$pkgname=$pkgver-r$pkgrel perl-net-pcap"
+ install_if="$pkgname=$pkgver-r$pkgrel perl-net-pcap"
+
+ amove usr/bin/net-mqtt-trace
+}
+
+sha512sums="
+9b2d412e7098b8e098e27f67ab3f26d9eb277bac7573dcff66a90752f0ffa362763e51d605a2b908fa698fb9800d83af5909b0145d5a9e8fed9a0f8c6355b874 Net-MQTT-1.163170.tar.gz
+"
diff --git a/testing/perl-net-netmask/APKBUILD b/testing/perl-net-netmask/APKBUILD
index abc0f56edd9..cb994023d58 100644
--- a/testing/perl-net-netmask/APKBUILD
+++ b/testing/perl-net-netmask/APKBUILD
@@ -1,11 +1,11 @@
# Automatically generated by apkbuild-cpan, template 3
# Contributor: Fabian Affolter <fabian@affolter-engineering.ch>
-# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=perl-net-netmask
#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
_pkgreal=Net-Netmask
-pkgver=2.0001
-pkgrel=1
+pkgver=2.0002
+pkgrel=2
pkgdesc="Understand and manipulate IP netmasks"
url="https://metacpan.org/release/Net-Netmask/"
arch="noarch"
@@ -13,7 +13,6 @@ license="GPL-1.0-or-later OR Artistic-1.0-Perl"
depends="perl"
makedepends="perl-test-useallmodules"
checkdepends="perl-test-useallmodules perl-test2-suite"
-
subpackages="$pkgname-doc"
source="https://cpan.metacpan.org/authors/id/J/JM/JMASLAK/Net-Netmask-$pkgver.tar.gz"
builddir="$srcdir/$_pkgreal-$pkgver"
@@ -38,4 +37,6 @@ package() {
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-sha512sums="87f4f875dc1f07968a71d558bb02b8443d63601e8414a109ddfdd47c5d8616ed0678ea950426ec646bf3b06035ff1dabf067dafb18cb66291b882b9364c0de0b Net-Netmask-2.0001.tar.gz"
+sha512sums="
+60cd9de1cac95516515428eb7d1c883b5260333768c363b47a87bb404b13bac713746e7512ff1f52bf3e5c8344f0d38889bba44a2c84b8ddf36e969d63ea8373 Net-Netmask-2.0002.tar.gz
+"
diff --git a/testing/perl-net-patricia/APKBUILD b/testing/perl-net-patricia/APKBUILD
index 6b59c3af56a..ea49d88eaf9 100644
--- a/testing/perl-net-patricia/APKBUILD
+++ b/testing/perl-net-patricia/APKBUILD
@@ -4,36 +4,28 @@
pkgname=perl-net-patricia
_pkgreal=Net-Patricia
pkgver=1.22
-pkgrel=8
-pkgdesc="unknown"
+pkgrel=11
+pkgdesc="Patricia Trie perl module for fast IP address lookups"
url="https://metacpan.org/release/Net-Patricia/"
arch="all"
license="GPL PerlArtistic"
-cpandepends="perl-net-cidr-lite perl-socket6"
-cpanmakedepends=" "
-depends="$cpandepends"
-makedepends="perl-dev $cpanmakedepends"
+options="!check" # no testsuite
+makedepends="perl-dev perl-net-cidr-lite perl-socket6"
subpackages="$pkgname-doc"
source="https://cpan.metacpan.org/authors/id/G/GR/GRUBER/$_pkgreal-$pkgver.tar.gz"
-_builddir="$srcdir/$_pkgreal-$pkgver"
-
-prepare() {
- cd "$_builddir"
- export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'`
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
-}
+builddir="$srcdir/$_pkgreal-$pkgver"
build() {
- cd "$_builddir"
- export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'`
+ PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
make
}
package() {
- cd "$_builddir"
- make DESTDIR="$pkgdir" install || return 1
+ make DESTDIR="$pkgdir" install
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-sha512sums="d76702d30784f8448dcf3a5269e052bc7bd6f5fe5a16824b6e3ede1d0182deb139522e45e1fb78749a7527ddbc950c213d843e43f45b5b0ed63b5b985b329861 Net-Patricia-1.22.tar.gz"
+sha512sums="
+d76702d30784f8448dcf3a5269e052bc7bd6f5fe5a16824b6e3ede1d0182deb139522e45e1fb78749a7527ddbc950c213d843e43f45b5b0ed63b5b985b329861 Net-Patricia-1.22.tar.gz
+"
diff --git a/testing/perl-net-pcap/APKBUILD b/testing/perl-net-pcap/APKBUILD
new file mode 100644
index 00000000000..edbd5e3a2b0
--- /dev/null
+++ b/testing/perl-net-pcap/APKBUILD
@@ -0,0 +1,39 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-net-pcap
+pkgver=0.21
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Net-Pcap
+pkgdesc="Interface to the pcap(3) LBL packet capture library"
+url="https://metacpan.org/release/Net-Pcap/"
+arch="all"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl"
+makedepends="libpcap-dev perl-dev"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/C/CO/CORION/Net-Pcap-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+aab50ac82283b976db6a848b54c5026edd2f1608d2119a8bea7478c1b588a6ca8111691e7b4c0d2d24820fb5036727db9780966ea7270ef82a5e85b2bf612461 Net-Pcap-0.21.tar.gz
+"
diff --git a/testing/perl-net-xmpp/APKBUILD b/testing/perl-net-xmpp/APKBUILD
new file mode 100644
index 00000000000..177d3a99f83
--- /dev/null
+++ b/testing/perl-net-xmpp/APKBUILD
@@ -0,0 +1,43 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-net-xmpp
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Net-XMPP
+pkgver=1.05
+pkgrel=0
+pkgdesc="XMPP Support Library"
+url="https://metacpan.org/release/Net-XMPP/"
+arch="noarch"
+license="LGPL-2.1-or-later"
+depends="perl perl-authen-sasl perl-xml-stream"
+makedepends="perl-module-build"
+checkdepends="perl-lwp-online perl-test-memory-cycle perl-yaml-tiny"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/D/DA/DAPATRICK/Net-XMPP-$pkgver.tar.gz
+ loop-var.patch
+ no-gtalk.patch
+ "
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ perl Build.PL \
+ --installdirs=vendor \
+ --create_packlist=0
+ ./Build
+}
+
+check() {
+ ./Build test
+}
+
+package() {
+ ./Build install --destdir="$pkgdir"
+}
+
+sha512sums="
+cdd5474fcbdf7ff6c7d1247f9828f5dfb1828c258af366a831bab8e5faab423b73aa16c34228818526ebcc3180ef0ccc52d6e6cb61e2fe689458b87ec7fab699 Net-XMPP-1.05.tar.gz
+8d815b04233b140881ff105f64d5017dbd937ed03521516a8cd2ba60bb0e07dec7d27903d8a35eb4e23b4ef52ccb4703fa7f0ea698dcca64d1ead3a6a7f2740b loop-var.patch
+678db0127de65198b52094afc94c7d057fead39a3f70dc782c4d661ace8d199cd37f632fe29e0699f9f656ae467cd91c191803f3043e966d2db2a7c475fb48c5 no-gtalk.patch
+"
diff --git a/testing/perl-net-xmpp/loop-var.patch b/testing/perl-net-xmpp/loop-var.patch
new file mode 100644
index 00000000000..eb9312e0080
--- /dev/null
+++ b/testing/perl-net-xmpp/loop-var.patch
@@ -0,0 +1,26 @@
+Patch-Source: https://github.com/dap/Net-XMPP/commit/a0224e2b2c4a46b53a2591c0f369d63ae580d592.patch
+
+Reference: https://rt.cpan.org/Public/Bug/Display.html?id=58949
+--
+From a0224e2b2c4a46b53a2591c0f369d63ae580d592 Mon Sep 17 00:00:00 2001
+From: Darian Anthony Patrick <dap@darianpatrick.com>
+Date: Mon, 22 Dec 2014 15:02:25 -0800
+Subject: [PATCH] RT#58949 User array member alias
+
+---
+ lib/Net/XMPP/Stanza.pm | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/lib/Net/XMPP/Stanza.pm b/lib/Net/XMPP/Stanza.pm
+index 15d6c5b..cb1b7b2 100644
+--- a/lib/Net/XMPP/Stanza.pm
++++ b/lib/Net/XMPP/Stanza.pm
+@@ -1366,7 +1366,7 @@ sub _parse_tree
+ {
+ foreach my $xTree (@xTrees)
+ {
+- if( exists($Net::XMPP::Namespaces::NS{$xTrees[0]->get_attrib("xmlns")}))
++ if( exists($Net::XMPP::Namespaces::NS{$xTree->get_attrib("xmlns")}))
+ {
+ $self->AddChild($xTree);
+ $self->{TREE}->remove_child($xTree);
diff --git a/testing/perl-net-xmpp/no-gtalk.patch b/testing/perl-net-xmpp/no-gtalk.patch
new file mode 100644
index 00000000000..fb7042a0d69
--- /dev/null
+++ b/testing/perl-net-xmpp/no-gtalk.patch
@@ -0,0 +1,11 @@
+--- a/t/gtalk.t
++++ b/t/gtalk.t
+@@ -52,7 +52,7 @@
+ }
+
+ my $repeat = 5;
+-plan tests => 2 + 6 * $repeat;
++plan skip_all => 'Google Talk is no longer available';
+
+ # TODO ask user if it is ok to do network tests!
+ print_size('before loading Net::XMPP');
diff --git a/testing/perl-netaddr-mac/APKBUILD b/testing/perl-netaddr-mac/APKBUILD
index 5bcc65474fc..fed5fc28d70 100644
--- a/testing/perl-netaddr-mac/APKBUILD
+++ b/testing/perl-netaddr-mac/APKBUILD
@@ -1,40 +1,36 @@
-# Automatically generated by apkbuild-cpan, template 2
+# Automatically generated by apkbuild-cpan, template 3
# Contributor: Timo Teräs <timo.teras@iki.fi>
# Maintainer: Timo Teräs <timo.teras@iki.fi>
pkgname=perl-netaddr-mac
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
_pkgreal=NetAddr-MAC
-pkgver=0.97
+pkgver=0.98
pkgrel=1
-pkgdesc="MAC address functions and object"
-url="https://metacpan.org/release/NetAddr-MAC"
+pkgdesc="MAC hardware address functions and object (EUI48 and EUI64)"
+url="https://metacpan.org/release/NetAddr-MAC/"
arch="noarch"
-license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+license="MIT"
depends="perl"
-checkdepends="perl-test-trap"
+makedepends="perl-dev perl-module-build perl-test-trap perl-module-build"
subpackages="$pkgname-doc"
source="https://cpan.metacpan.org/authors/id/D/DJ/DJZORT/NetAddr-MAC-$pkgver.tar.gz"
builddir="$srcdir/$_pkgreal-$pkgver"
-prepare() {
- default_prepare
-
+build() {
export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ perl Build.PL --installdirs=vendor
+ ./Build
}
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make
+check() {
+ ./Build test
}
package() {
- make DESTDIR="$pkgdir" install
+ ./Build install --destdir="$pkgdir"
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-check() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make test
-}
-
-sha512sums="ac89cb5f2d81f3accff5ac240a7a4fda5e50854e2f5921093e4ae1c78aec6c125d1f3949cde6dff61f9196b3107ebb8b6437fe3cb703dcd1de9ef3ce624ac42d NetAddr-MAC-0.97.tar.gz"
+sha512sums="
+88ac3c10f3a5c5c1fbf2b40299c95336c26a726bf0d7d82de512985fbc846edfe009d8a40a3b5ea48b6ad65b122e8b4631588ec1019b98b17260f9b6aea72f2f NetAddr-MAC-0.98.tar.gz
+"
diff --git a/testing/perl-nice-try/APKBUILD b/testing/perl-nice-try/APKBUILD
new file mode 100644
index 00000000000..1be59b66d2b
--- /dev/null
+++ b/testing/perl-nice-try/APKBUILD
@@ -0,0 +1,39 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-nice-try
+pkgver=1.3.10
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Nice-Try
+pkgdesc="Try-Catch block implementation using Perl filter"
+url="https://metacpan.org/release/Nice-Try/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-ppi perl-ppi-xs perl-want"
+checkdepends="perl-test-pod"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/J/JD/JDEGUEST/Nice-Try-v$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-v$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+7f63b08de6d6e07156bbe93d509e19dd7e09e68ef68305f6fceb97ea6202bc63fba321809fda711f61fdf62e77ed4acd1f290fb50e5b13d39429ef3d1257332b Nice-Try-v1.3.10.tar.gz
+"
diff --git a/testing/perl-number-format/APKBUILD b/testing/perl-number-format/APKBUILD
index 5443ea0a562..4826f5cba49 100644
--- a/testing/perl-number-format/APKBUILD
+++ b/testing/perl-number-format/APKBUILD
@@ -3,8 +3,8 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=perl-number-format
_pkgreal=Number-Format
-pkgver=1.75
-pkgrel=2
+pkgver=1.76
+pkgrel=1
pkgdesc="Perl extension for formatting numbers"
url="https://metacpan.org/release/Number-Format/"
arch="noarch"
@@ -12,20 +12,20 @@ license="GPL PerlArtistic"
depends="perl"
makedepends="perl-test-simple"
subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/W/WR/WRW/$_pkgreal-$pkgver.tar.gz"
+source="https://cpan.metacpan.org/authors/id/R/RJ/RJBS/$_pkgreal-$pkgver.tar.gz"
options="!check"
builddir="$srcdir/$_pkgreal-$pkgver"
prepare() {
cd "$builddir"
- export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'`
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
}
build() {
cd "$builddir"
- export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'`
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
make
}
@@ -40,4 +40,6 @@ check() {
make test
}
-sha512sums="fa712a82b33ba062308e6bf29a4d99e73245f95495206e2c4252d8735d1851136553ec719a00683163aea0d3dddaa6bcc1261ef643439b870605df8ab17a40ef Number-Format-1.75.tar.gz"
+sha512sums="
+c7132bbd036522d35082ee18a5ca534ee8820e3d8901293621a7f573a0f44ee6c652a91a7ca9d44c8a9185e1c9306dfbd79757c9b3818dc6de3cca761883790a Number-Format-1.76.tar.gz
+"
diff --git a/testing/perl-number-misc/APKBUILD b/testing/perl-number-misc/APKBUILD
index b1dcee5cbab..7d5d2e34c9d 100644
--- a/testing/perl-number-misc/APKBUILD
+++ b/testing/perl-number-misc/APKBUILD
@@ -1,34 +1,36 @@
+# Automatically generated by apkbuild-cpan, template 3
# Contributor: TBK <tbk@jjtc.eu>
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=perl-number-misc
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
_pkgreal=Number-Misc
pkgver=1.2
-pkgrel=2
+pkgrel=5
pkgdesc="Handy utilities for numbers"
url="https://metacpan.org/release/Number-Misc/"
arch="noarch"
-license="GPL PerlArtistic"
-options="!check"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
depends="perl"
+makedepends="perl-module-build"
subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/M/MI/MIKO/$_pkgreal-$pkgver.tar.gz"
+source="https://cpan.metacpan.org/authors/id/M/MI/MIKO/Number-Misc-$pkgver.tar.gz"
builddir="$srcdir/$_pkgreal-$pkgver"
-prepare() {
- cd "$builddir"
- export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'`
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ perl Build.PL --installdirs=vendor
+ ./Build
}
-build() {
- cd "$builddir"
- export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'`
- make && make test
+check() {
+ ./Build test
}
package() {
- cd "$builddir"
- make DESTDIR="$pkgdir" install || return 1
+ ./Build install --destdir="$pkgdir"
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-sha512sums="f160de841bc895481f6d9422ed639391fd9e9b65239e3c0adf25b63e88902e7608049496ecec864cae39a046e5f1903f3e3ede1cb71018203f62da2ded67b8eb Number-Misc-1.2.tar.gz"
+sha512sums="
+f160de841bc895481f6d9422ed639391fd9e9b65239e3c0adf25b63e88902e7608049496ecec864cae39a046e5f1903f3e3ede1cb71018203f62da2ded67b8eb Number-Misc-1.2.tar.gz
+"
diff --git a/testing/perl-number-tolerant/APKBUILD b/testing/perl-number-tolerant/APKBUILD
index 65d3031ea2f..dd35521bfd2 100644
--- a/testing/perl-number-tolerant/APKBUILD
+++ b/testing/perl-number-tolerant/APKBUILD
@@ -3,8 +3,8 @@
# Maintainer: Timo Teräs <timo.teras@iki.fi>
pkgname=perl-number-tolerant
_pkgreal=Number-Tolerant
-pkgver=1.708
-pkgrel=2
+pkgver=1.710
+pkgrel=0
pkgdesc="tolerance ranges for inexact numbers"
url="https://metacpan.org/release/Number-Tolerant/"
arch="noarch"
@@ -40,4 +40,6 @@ check() {
make test
}
-sha512sums="9a8b878d65e5c6cb9600bd743d5b74a639e4be4c07cca5a954fe0042d5ea749ac656e9b480d8e8a2573259ad85639e110ff531d61259e83ebb66d913fe37374a Number-Tolerant-1.708.tar.gz"
+sha512sums="
+358478a1f699a231d74391219b94bd20f41298e164279bee7f0ca793442c4ab273498daa5ac247486753644c592769239070c46a03e568e435aa626fec12dc9f Number-Tolerant-1.710.tar.gz
+"
diff --git a/testing/perl-object-event/APKBUILD b/testing/perl-object-event/APKBUILD
new file mode 100644
index 00000000000..7b9f48553c6
--- /dev/null
+++ b/testing/perl-object-event/APKBUILD
@@ -0,0 +1,36 @@
+# Automatically generated by apkbuild-cpan, template 3
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-object-event
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Object-Event
+pkgver=1.23
+pkgrel=0
+pkgdesc="Perl event callback interface"
+url="https://metacpan.org/release/Object-Event/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-common-sense perl-anyevent"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/E/EL/ELMEX/Object-Event-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+ find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
+}
+
+sha512sums="
+f2a877e66b00cf095c1b1ea1447b7aedb2c4c24a19b46e870894811bf707616bb2c59edc31b2d9b7157ff430cf2610facd201c9fdd8254bfb945900b70c79918 Object-Event-1.23.tar.gz
+"
diff --git a/testing/perl-object-pad/APKBUILD b/testing/perl-object-pad/APKBUILD
deleted file mode 100644
index de8f06f7be8..00000000000
--- a/testing/perl-object-pad/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Automatically generated by apkbuild-cpan, template 3
-# Contributor: Milan P. Stanić <mps@arvanta.net>
-# Maintainer: Milan P. Stanić <mps@arvanta.net>
-pkgname=perl-object-pad
-#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
-_pkgreal=Object-Pad
-pkgver=0.65
-pkgrel=0
-pkgdesc="a simple syntax for lexical slot-based objects"
-url="https://metacpan.org/release/Object-Pad/"
-arch="all"
-license="GPL-1.0-or-later OR Artistic-1.0-Perl"
-depends="perl perl-xs-parse-sublike perl-xs-parse-keyword"
-makedepends="perl-dev perl-module-build perl-xs-parse-sublike perl-xs-parse-keyword perl-module-build"
-checkdepends="perl-test-refcount perl-data-dump perl-test-fatal"
-subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/P/PE/PEVANS/Object-Pad-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgreal-$pkgver"
-
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- perl Build.PL --installdirs=vendor
- ./Build
-}
-
-check() {
- ./Build test
-}
-
-package() {
- ./Build install --destdir="$pkgdir"
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
-}
-
-sha512sums="
-8d6c195356fa78f0b98e9abb7616d4f70086a2a5c81684bacdffc3340c373d2974893eea1a5ff9d5235b6d021f0983fc6ece653a58ff24fc723a3f43923385b4 Object-Pad-0.65.tar.gz
-"
diff --git a/testing/perl-openapi-client/APKBUILD b/testing/perl-openapi-client/APKBUILD
new file mode 100644
index 00000000000..7ee3bba07fc
--- /dev/null
+++ b/testing/perl-openapi-client/APKBUILD
@@ -0,0 +1,38 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-openapi-client
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=OpenAPI-Client
+pkgver=1.07
+pkgrel=0
+pkgdesc="Client for talking to an Open API powered server"
+url="https://metacpan.org/release/OpenAPI-Client/"
+arch="noarch"
+license="Artistic-2.0"
+depends="perl perl-json-validator perl-mojolicious-plugin-openapi"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/J/JH/JHTHORSEN/OpenAPI-Client-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+18167fcbd239436c401d0d4f2775a4cd5032fbcb2feaf5107c2f76a6b822d8c688431265f2d434bfadca2d74592e57ff1fd5721a2194ef906faad538004b7050 OpenAPI-Client-1.07.tar.gz
+"
diff --git a/testing/perl-opentracing/APKBUILD b/testing/perl-opentracing/APKBUILD
new file mode 100644
index 00000000000..c77b613867d
--- /dev/null
+++ b/testing/perl-opentracing/APKBUILD
@@ -0,0 +1,55 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-opentracing
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=OpenTracing
+pkgver=1.006
+pkgrel=0
+pkgdesc="Application process monitoring, as defined by opentracing.io"
+url="https://metacpan.org/release/OpenTracing/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="
+ perl perl-bytes-random-secure perl-class-method-modifiers
+ perl-indirect perl-json-maybeutf8 perl-json-maybexs
+ perl-log-any perl-module-pluggable perl-net-address-ip-local
+ perl-role-tiny perl-syntax-keyword-try
+ "
+checkdepends="
+ perl-log-any-adapter-tap perl-test-checkdeps
+ perl-test-deep perl-test-fatal perl-test-files
+ perl-test-refcount perl-test-warnings
+ "
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/T/TE/TEAM/OpenTracing-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+doc() {
+ local file; find "$pkgdir" -name "*.pod" | while read -r file; do
+ amove "${file#"$pkgdir"}"
+ done
+ default_doc
+}
+
+sha512sums="
+ad6c5f7488bcb4fba3b5ff669baffe6de0c9d092585322b60c0fa1d9eeb5984c7dd56676efed141ac7fa53ae3df446314153a45f1a794174371d82916c12902b OpenTracing-1.006.tar.gz
+"
diff --git a/testing/perl-pango/APKBUILD b/testing/perl-pango/APKBUILD
index 603783c7c30..ea23fe6f7de 100644
--- a/testing/perl-pango/APKBUILD
+++ b/testing/perl-pango/APKBUILD
@@ -4,36 +4,33 @@
pkgname=perl-pango
_pkgreal=Pango
pkgver=1.227
-pkgrel=7
+pkgrel=10
pkgdesc="Layout and render international text"
url="https://metacpan.org/release/Pango/"
arch="all"
license="GPL PerlArtistic"
-cpandepends="perl-glib perl-extutils-depends perl-cairo perl-extutils-pkgconfig"
-cpanmakedepends=""
-depends="$cpandepends"
-makedepends="perl-dev pango-dev cairo-dev $cpanmakedepends"
+depends="perl-glib perl-extutils-depends perl-cairo perl-extutils-pkgconfig"
+makedepends="perl-dev pango-dev cairo-dev"
subpackages="$pkgname-doc"
source="https://cpan.metacpan.org/authors/id/X/XA/XAOC/$_pkgreal-$pkgver.tar.gz"
-_builddir="$srcdir/$_pkgreal-$pkgver"
+builddir="$srcdir/$_pkgreal-$pkgver"
-prepare() {
- cd "$_builddir"
- export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'`
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
}
-build() {
- cd "$_builddir"
- export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'`
- make && make test
+check() {
+ make test
}
package() {
- cd "$_builddir"
- make DESTDIR="$pkgdir" install || return 1
+ make DESTDIR="$pkgdir" install
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-sha512sums="df44d126d6a9aaa7b7dc2d993ca00fe9eb6abdeb6c7f75ddebc71728b0cfd2d7404c2d27e2dbcbb7acdd73f30888d4abc5c33da9ecbbc7d155f67d083960f29c Pango-1.227.tar.gz"
+sha512sums="
+df44d126d6a9aaa7b7dc2d993ca00fe9eb6abdeb6c7f75ddebc71728b0cfd2d7404c2d27e2dbcbb7acdd73f30888d4abc5c33da9ecbbc7d155f67d083960f29c Pango-1.227.tar.gz
+"
diff --git a/testing/perl-path-iter/APKBUILD b/testing/perl-path-iter/APKBUILD
index 5e942036f18..8d3ee9c944f 100644
--- a/testing/perl-path-iter/APKBUILD
+++ b/testing/perl-path-iter/APKBUILD
@@ -1,31 +1,28 @@
# Contributor: Stuart Cardall <developer@it-offshore.co.uk>
# Maintainer: Stuart Cardall <developer@it-offshore.co.uk>
pkgname=perl-path-iter
-_realname=Path-Iter
+_pkgreal=Path-Iter
pkgver=0.2
-pkgrel=2
+pkgrel=3
pkgdesc="Simple Efficient Path Iteration"
url="http://drmuey.com/cpan_contact.pl"
arch="noarch"
license="PerlArtistic"
depends="perl"
subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/D/DM/DMUEY/$_realname-$pkgver.tar.gz"
-builddir="$srcdir/$_realname-$pkgver"
+source="https://cpan.metacpan.org/authors/id/D/DM/DMUEY/Path-Iter-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
build() {
- cd "$builddir"
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
make
}
check() {
- cd "$builddir"
make test
}
package() {
- cd "$builddir"
make DESTDIR="$pkgdir" install
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
diff --git a/testing/perl-perlio-locale/APKBUILD b/testing/perl-perlio-locale/APKBUILD
index 9894bb431e6..280db5bad67 100644
--- a/testing/perl-perlio-locale/APKBUILD
+++ b/testing/perl-perlio-locale/APKBUILD
@@ -4,36 +4,31 @@
pkgname=perl-perlio-locale
_pkgreal=PerlIO-locale
pkgver=0.10
-pkgrel=8
-pkgdesc="unknown"
+pkgrel=11
+pkgdesc="PerlIO layer to use the encoding of the current locale"
url="https://metacpan.org/release/PerlIO-locale/"
arch="all"
license="GPL PerlArtistic"
-cpandepends=""
-cpanmakedepends=" "
-depends="$cpandepends"
-makedepends="perl-dev $cpanmakedepends"
+makedepends="perl-dev"
subpackages="$pkgname-doc"
source="https://cpan.metacpan.org/authors/id/R/RG/RGARCIA/$_pkgreal-$pkgver.tar.gz"
-_builddir="$srcdir/$_pkgreal-$pkgver"
+builddir="$srcdir/$_pkgreal-$pkgver"
-prepare() {
- cd "$_builddir"
- export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'`
+build() {
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
}
-build() {
- cd "$_builddir"
- export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'`
- make && make test
+check() {
+ make test
}
package() {
- cd "$_builddir"
- make DESTDIR="$pkgdir" install || return 1
+ make DESTDIR="$pkgdir" install
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-sha512sums="d61a9cdf60c89cda9f39335a54878df87a112f5e4caf8d697a5173797726242ecc602a8670d2b058ad5677cc5db3100afc9742bee1498ef922e02362e5281f5c PerlIO-locale-0.10.tar.gz"
+sha512sums="
+d61a9cdf60c89cda9f39335a54878df87a112f5e4caf8d697a5173797726242ecc602a8670d2b058ad5677cc5db3100afc9742bee1498ef922e02362e5281f5c PerlIO-locale-0.10.tar.gz
+"
diff --git a/testing/perl-perlio-via-timeout/APKBUILD b/testing/perl-perlio-via-timeout/APKBUILD
deleted file mode 100644
index 13e0b6b2418..00000000000
--- a/testing/perl-perlio-via-timeout/APKBUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-# Contributor: Michael Pirogov <vbnet.ru@gmail.com>
-# Maintainer: Michael Pirogov <vbnet.ru@gmail.com>
-pkgname=perl-perlio-via-timeout
-_pkgreal=PerlIO-via-Timeout
-pkgver=0.32
-pkgrel=1
-pkgdesc="a PerlIO layer that adds read & write timeout to a handle"
-url="https://metacpan.org/release/PerlIO-via-Timeout/"
-arch="noarch"
-license="GPL-1.0-or-later OR Artistic-1.0-Perl"
-depends="perl"
-makedepends="perl-test-tcp perl-module-build-tiny"
-subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/D/DA/DAMS/PerlIO-via-Timeout-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgreal-$pkgver"
-
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL INSTALLDIRS=vendor
- make
-}
-
-check() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make test
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
-}
-
-sha512sums="52200c0d19da7a19b9b328473b0e7b57a1a3102fd3ace947af8fef8f670aaebe37811daaa2e2b6cf2f6397855a4cfb2424af053322146a8acefd71e1bb30f681 PerlIO-via-Timeout-0.32.tar.gz"
diff --git a/testing/perl-plack-middleware-expires/APKBUILD b/testing/perl-plack-middleware-expires/APKBUILD
index 3295e1e1230..d95d028528b 100644
--- a/testing/perl-plack-middleware-expires/APKBUILD
+++ b/testing/perl-plack-middleware-expires/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-plack-middleware-expires
_pkgreal=Plack-Middleware-Expires
pkgver=0.06
-pkgrel=2
+pkgrel=3
pkgdesc="mod_expires for plack"
url="https://metacpan.org/release/Plack-Middleware-Expires/"
arch="noarch"
diff --git a/testing/perl-plack-middleware-reverseproxy/APKBUILD b/testing/perl-plack-middleware-reverseproxy/APKBUILD
index a59818b6c85..79035a8199e 100644
--- a/testing/perl-plack-middleware-reverseproxy/APKBUILD
+++ b/testing/perl-plack-middleware-reverseproxy/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-plack-middleware-reverseproxy
_pkgreal=Plack-Middleware-ReverseProxy
pkgver=0.16
-pkgrel=1
+pkgrel=2
pkgdesc="Supports app to run as a reverse proxy backend"
url="https://metacpan.org/release/Plack-Middleware-ReverseProxy"
arch="noarch"
diff --git a/testing/perl-pod-cpandoc/APKBUILD b/testing/perl-pod-cpandoc/APKBUILD
index 56a2ce76091..80aac3502ab 100644
--- a/testing/perl-pod-cpandoc/APKBUILD
+++ b/testing/perl-pod-cpandoc/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-pod-cpandoc
_pkgreal=Pod-Cpandoc
pkgver=0.16
-pkgrel=3
+pkgrel=6
pkgdesc="perldoc that works for modules you don't have installed"
url="https://metacpan.org/release/Pod-Cpandoc/"
arch="noarch"
@@ -13,25 +13,23 @@ depends="perl"
makedepends="perl-module-install"
subpackages="$pkgname-doc"
source="https://cpan.metacpan.org/authors/id/S/SA/SARTAK/$_pkgreal-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
-_builddir="$srcdir/$_pkgreal-$pkgver"
-
-prepare() {
- cd "$_builddir"
- export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'`
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
}
-build() {
- cd "$_builddir"
- export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'`
- make && make test
+check() {
+ make test
}
package() {
- cd "$_builddir"
- make DESTDIR="$pkgdir" install || return 1
+ make DESTDIR="$pkgdir" install
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-sha512sums="ac9ffa4f845f213452a69e05f5f39d3cd4cf2db4c97ba2db1e7d1c6e729575b11540715abfa972ee31dad11aa334093820913a62656e2e9bbae77c910bab51bf Pod-Cpandoc-0.16.tar.gz"
+sha512sums="
+ac9ffa4f845f213452a69e05f5f39d3cd4cf2db4c97ba2db1e7d1c6e729575b11540715abfa972ee31dad11aa334093820913a62656e2e9bbae77c910bab51bf Pod-Cpandoc-0.16.tar.gz
+"
diff --git a/testing/perl-pod-tidy/APKBUILD b/testing/perl-pod-tidy/APKBUILD
new file mode 100644
index 00000000000..fd737b391ba
--- /dev/null
+++ b/testing/perl-pod-tidy/APKBUILD
@@ -0,0 +1,37 @@
+# Automatically generated by apkbuild-cpan, template 3
+# Contributor: Duncan Bellamy <dunk@denkimushi.com>
+# Maintainer: Duncan Bellamy <dunk@denkimushi.com>
+pkgname=perl-pod-tidy
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Pod-Tidy
+pkgver=0.10
+pkgrel=1
+pkgdesc="a reformatting Pod Processor"
+url="https://metacpan.org/release/Pod-Tidy/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-encode-newlines perl-io-string perl-pod-parser perl-pod-wrap perl-test-cmd perl-text-glob"
+makedepends="perl-dev perl-module-build"
+checkdepends="perl-test-distribution"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/J/JH/JHOBLITT/Pod-Tidy-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ perl Build.PL --installdirs=vendor
+ ./Build
+}
+
+check() {
+ ./Build test
+}
+
+package() {
+ ./Build install --destdir="$pkgdir"
+ find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
+}
+
+sha512sums="
+b0ee0f03c148362a348a80b54424bb0c33876e24d90b21b921f85f55a20f29417764305ac864ecb06c3d03fe502aec9434d5aeeb97d7ae3506bd3cbf155b0875 Pod-Tidy-0.10.tar.gz
+"
diff --git a/testing/perl-ppi-xs/APKBUILD b/testing/perl-ppi-xs/APKBUILD
new file mode 100644
index 00000000000..2679d669cae
--- /dev/null
+++ b/testing/perl-ppi-xs/APKBUILD
@@ -0,0 +1,39 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-ppi-xs
+pkgver=0.910
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=PPI-XS
+pkgdesc="(Minor) XS acceleration for PPI"
+url="https://metacpan.org/release/PPI-XS/"
+arch="all"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-ppi"
+makedepends="perl-dev"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/E/ET/ETHER/PPI-XS-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+e4eb631cb6272bcb42acefe70ccb7fcf2c2fb34feabf16908de135df98b870ffc4b4d21fd705b5daeee76fe076478508391ccec9db764e9360ff523cfc1a777d PPI-XS-0.910.tar.gz
+"
diff --git a/testing/perl-proc-guard/APKBUILD b/testing/perl-proc-guard/APKBUILD
index 07fa2427bcb..6ec14137da6 100644
--- a/testing/perl-proc-guard/APKBUILD
+++ b/testing/perl-proc-guard/APKBUILD
@@ -1,35 +1,37 @@
-# Automatically generated by apkbuild-cpan, template 2
+# Automatically generated by apkbuild-cpan, template 3
# Contributor: Nick Andrew <nick@nick-andrew.net>
-# Maintainer: Nick Andrew <nick@nick-andrew.net>
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=perl-proc-guard
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
_pkgreal=Proc-Guard
pkgver=0.07
-pkgrel=2
+pkgrel=4
pkgdesc="process runner with RAII pattern"
url="https://metacpan.org/release/Proc-Guard/"
arch="noarch"
license="GPL-1.0-or-later OR Artistic-1.0-Perl"
depends="perl perl-class-accessor-lite"
-makedepends="perl-test-requires perl-module-build"
+makedepends="perl-module-build"
+checkdepends="perl-file-which perl-test-requires perl-test-tcp"
subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/T/TO/TOKUHIROM/$_pkgreal-$pkgver.tar.gz"
+source="https://cpan.metacpan.org/authors/id/T/TO/TOKUHIROM/Proc-Guard-$pkgver.tar.gz"
builddir="$srcdir/$_pkgreal-$pkgver"
-prepare() {
- default_prepare
+build() {
export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- perl Build.PL installdirs=vendor
+ perl Build.PL --installdirs=vendor
+ ./Build
}
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- ./Build && ./Build test
+check() {
+ ./Build test
}
package() {
- ./Build install destdir="$pkgdir"
+ ./Build install --destdir="$pkgdir"
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-
-sha512sums="1f27f7b1ee3116f3136cc4b310751bf0ab5f04a8698ce619cf94341c26e293f8c331126c636c6dd1dcc3b85724b60b22ea553b9c9f85624c59924dc89c2b6ac4 Proc-Guard-0.07.tar.gz"
+sha512sums="
+1f27f7b1ee3116f3136cc4b310751bf0ab5f04a8698ce619cf94341c26e293f8c331126c636c6dd1dcc3b85724b60b22ea553b9c9f85624c59924dc89c2b6ac4 Proc-Guard-0.07.tar.gz
+"
diff --git a/testing/perl-promise-es6/APKBUILD b/testing/perl-promise-es6/APKBUILD
new file mode 100644
index 00000000000..7b475582e9e
--- /dev/null
+++ b/testing/perl-promise-es6/APKBUILD
@@ -0,0 +1,85 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-promise-es6
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Promise-ES6
+pkgver=0.28
+pkgrel=0
+pkgdesc="ES6-style promises in Perl"
+url="https://metacpan.org/release/Promise-ES6/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl"
+makedepends="perl-extutils-makemaker-cpanfile"
+checkdepends="
+ perl-anyevent perl-devel-globaldestruction perl-future-asyncawait
+ perl-test-class perl-test-deep perl-test-failwarnings
+ perl-test-fatal perl-test2-suite
+ "
+subpackages="
+ $pkgname-doc
+ $pkgname-anyevent
+ $pkgname-future
+ $pkgname-io-async
+ $pkgname-mojo-ioloop
+ "
+source="https://cpan.metacpan.org/authors/id/F/FE/FELIPE/Promise-ES6-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+anyevent() {
+ pkgdesc="$pkgdesc (AnyEvent backend)"
+ depends="$pkgname=$pkgver-r$pkgrel perl-anyevent"
+ install_if="$pkgname=$pkgver-r$pkgrel perl-anyevent"
+
+ amove usr/share/perl5/vendor_perl/Promise/ES6/AnyEvent.pm
+ amove usr/share/perl5/vendor_perl/Promise/ES6/Event/AnyEvent.pm
+}
+
+future() {
+ pkgdesc="$pkgdesc (Future interface)"
+ depends="$pkgname=$pkgver-r$pkgrel perl-future"
+ install_if="$pkgname=$pkgver-r$pkgrel perl-future"
+
+ amove usr/share/perl5/vendor_perl/Promise/ES6/Future.pm
+}
+
+async() {
+ pkgdesc="$pkgdesc (IO::Async backend)"
+ depends="$pkgname=$pkgver-r$pkgrel perl-io-async"
+ install_if="$pkgname=$pkgver-r$pkgrel perl-io-async"
+
+ amove usr/share/perl5/vendor_perl/Promise/ES6/IOAsync.pm
+ amove usr/share/perl5/vendor_perl/Promise/ES6/Event/IOAsync.pm
+}
+
+ioloop() {
+ pkgdesc="$pkgdesc (Mojo::IOLoop backend)"
+ depends="$pkgname=$pkgver-r$pkgrel perl-mojolicious"
+ install_if="$pkgname=$pkgver-r$pkgrel perl-mojolicious"
+
+ amove usr/share/perl5/vendor_perl/Promise/ES6/Mojo.pm
+ amove usr/share/perl5/vendor_perl/Promise/ES6/Event/MojoIOLoop.pm
+}
+
+sha512sums="
+6ae5c4d1fe015c78328e778c4495199645371d35484b33a52fca2c9290a4da878d586b5929b84e4e7cb93836e7e00d2271cfcdec7268d301b3d7a20c728240a3 Promise-ES6-0.28.tar.gz
+"
diff --git a/testing/perl-promise-me/APKBUILD b/testing/perl-promise-me/APKBUILD
new file mode 100644
index 00000000000..7b24bd3f06e
--- /dev/null
+++ b/testing/perl-promise-me/APKBUILD
@@ -0,0 +1,42 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-promise-me
+pkgver=0.4.10
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Promise-Me
+pkgdesc="Implementation of Promises using fork for asynchronous tasks"
+url="https://metacpan.org/release/Promise-Me/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="
+ perl perl-clone perl-curry perl-module-generic
+ perl-nice-try perl-ppi perl-storable-improved perl-want
+ "
+checkdepends="perl-test-pod perl-test2-suite"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/J/JD/JDEGUEST/Promise-Me-v$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-v$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+72d05a2df146e81e7eb452ac33ad99e2e399e279d610ca7d78e25875276d5d9e5298420b46024ed01aaaaa63aad98daa602a0d04cfec9ea44693c194ebc03648 Promise-Me-v0.4.10.tar.gz
+"
diff --git a/testing/perl-promise-xs/APKBUILD b/testing/perl-promise-xs/APKBUILD
new file mode 100644
index 00000000000..c48b5ce3588
--- /dev/null
+++ b/testing/perl-promise-xs/APKBUILD
@@ -0,0 +1,43 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-promise-xs
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Promise-XS
+pkgver=0.20
+pkgrel=0
+pkgdesc="Fast promises in Perl"
+url="https://metacpan.org/release/Promise-XS/"
+arch="all"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl"
+makedepends="perl-dev perl-extutils-makemaker-cpanfile"
+checkdepends="
+ perl-anyevent perl-future-asyncawait perl-io-async perl-mojolicious
+ perl-test-deep perl-test-failwarnings perl-test2-suite
+ "
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/F/FE/FELIPE/Promise-XS-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+0fab3c6382e009ba612fffe69c30931380d04af79ddb01eac8a42dd56a5145e25155e956706115f5e85a9b6cb9eab881d7310f5b9bb1f296f3bcfc173fe6f10a Promise-XS-0.20.tar.gz
+"
diff --git a/testing/perl-protocol-database-postgresql/APKBUILD b/testing/perl-protocol-database-postgresql/APKBUILD
new file mode 100644
index 00000000000..a5338a16e53
--- /dev/null
+++ b/testing/perl-protocol-database-postgresql/APKBUILD
@@ -0,0 +1,53 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-protocol-database-postgresql
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Protocol-Database-PostgreSQL
+pkgver=2.001
+pkgrel=0
+pkgdesc="PostgreSQL wire protocol implementation"
+url="https://metacpan.org/release/Protocol-Database-PostgreSQL/"
+arch="noarch !armhf !armv7 !x86" # perl-ryu
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="
+ perl perl-adapter-async perl-check-unitcheck
+ perl-future perl-indirect perl-log-any perl-ryu
+ perl-sub-identify perl-unicode-utf8
+ "
+checkdepends="
+ perl-log-any-adapter-tap perl-test-checkdeps
+ perl-test-fatal perl-test-hexstring perl-test-refcount
+ "
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/T/TE/TEAM/Protocol-Database-PostgreSQL-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+doc() {
+ local file; find "$pkgdir" -name "*.pod" | while read -r file; do
+ amove "${file#"$pkgdir"}"
+ done
+ default_doc
+}
+
+sha512sums="
+6b37a2e6b0632e87e381704f06a800cf1008a59127152f38ec2c245b988337753d922294569bceb36ad8af65b9a5002868188af133cff7403f7808d1118e6a77 Protocol-Database-PostgreSQL-2.001.tar.gz
+"
diff --git a/testing/perl-protocol-redis-faster/APKBUILD b/testing/perl-protocol-redis-faster/APKBUILD
new file mode 100644
index 00000000000..af429e71f7a
--- /dev/null
+++ b/testing/perl-protocol-redis-faster/APKBUILD
@@ -0,0 +1,38 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-protocol-redis-faster
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Protocol-Redis-Faster
+pkgver=0.003
+pkgrel=0
+pkgdesc="Optimized pure-perl Redis protocol parser/encoder"
+url="https://metacpan.org/release/Protocol-Redis-Faster/"
+arch="noarch"
+license="Artistic-2.0"
+depends="perl perl-protocol-redis"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/D/DB/DBOOK/Protocol-Redis-Faster-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+6f67c2ee1f0cf5ba79dec2c1c188d3996fafcfc14003e91eb20cb580553bec266ded814570564bb0fad630f639ceb474d6e50666e99e3c0321ccb5559fc50dfa Protocol-Redis-Faster-0.003.tar.gz
+"
diff --git a/testing/perl-protocol-redis/APKBUILD b/testing/perl-protocol-redis/APKBUILD
new file mode 100644
index 00000000000..5432b610447
--- /dev/null
+++ b/testing/perl-protocol-redis/APKBUILD
@@ -0,0 +1,42 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-protocol-redis
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Protocol-Redis
+pkgver=1.0011
+pkgrel=0
+pkgdesc="Redis protocol parser/encoder with asynchronous capabilities"
+url="https://metacpan.org/release/Protocol-Redis/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/U/UN/UNDEF/Protocol-Redis-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+
+ cd "$pkgdir"
+ # introduces a circular dependency on perl-protocol-redis-faster
+ rm -v usr/share/perl5/vendor_perl/Protocol/benchmark.pl
+}
+
+sha512sums="
+43e4a05698fe0cc0ceff0b4b7fc81dc2320bbab1ca7933c26cad5ea7caa4b930665c135f604406d192bd2d49bb804eb2bd5e2015960e5dea73e1cbcbbc86980a Protocol-Redis-1.0011.tar.gz
+"
diff --git a/testing/perl-protocol-xmpp/APKBUILD b/testing/perl-protocol-xmpp/APKBUILD
new file mode 100644
index 00000000000..dcd183d04aa
--- /dev/null
+++ b/testing/perl-protocol-xmpp/APKBUILD
@@ -0,0 +1,49 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-protocol-xmpp
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Protocol-XMPP
+pkgver=0.006
+pkgrel=0
+pkgdesc="XMPP/Jabber protocol API"
+url="https://metacpan.org/release/Protocol-XMPP/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="
+ perl perl-authen-sasl perl-curry perl-future perl-mixin-event-dispatch
+ perl-xml-libxml-sax-chunkparser perl-xml-sax
+ "
+checkdepends="perl-test-checkdeps perl-test-fatal"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/T/TE/TEAM/Protocol-XMPP-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+doc() {
+ local file; find "$pkgdir" -name "*.pod" | while read -r file; do
+ amove "${file#"$pkgdir"}"
+ done
+ default_doc
+}
+
+sha512sums="
+caea9726918119974bef629485a6fb9c5f0c49a74ed8f0c84414a6a370fa1a1a950297c17c111fdf085512105bc6af39cf4ebe5ce329023659b3f96d0fd1060c Protocol-XMPP-0.006.tar.gz
+"
diff --git a/testing/perl-redis/APKBUILD b/testing/perl-redis/APKBUILD
deleted file mode 100644
index bdcecd92dc3..00000000000
--- a/testing/perl-redis/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Automatically generated by apkbuild-cpan, template 3
-# Contributor: Michael Pirogov <vbnet.ru@gmail.com>
-# Maintainer: Michael Pirogov <vbnet.ru@gmail.com>
-pkgname=perl-redis
-#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
-_pkgreal=Redis
-pkgver=1.998
-pkgrel=0
-pkgdesc="Perl binding for Redis database"
-url="https://metacpan.org/release/Redis/"
-arch="noarch !armv7 !x86 !armhf" # perl-io-socket-timeout missing
-license="Artistic-2.0"
-depends="perl perl-io-socket-timeout perl-try-tiny"
-makedepends="perl-module-build-tiny perl-module-build"
-checkdepends="perl-test-tcp perl-test-deep perl-io-string perl-test-sharedfork perl-test-fatal"
-subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/D/DA/DAMS/Redis-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgreal-$pkgver"
-
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- perl Build.PL --installdirs=vendor
- ./Build
-}
-
-check() {
- ./Build test
-}
-
-package() {
- ./Build install --destdir="$pkgdir"
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
-}
-
-sha512sums="232f0e602f6165da426ff6ee6a531f81eea3491c0312dae2813bdb15ac34469f6621c7683d5bd6b2be0cdcc09edf3f1f19cc03c848d43d41e630fe1306f62268 Redis-1.998.tar.gz"
diff --git a/testing/perl-ref-util-xs/APKBUILD b/testing/perl-ref-util-xs/APKBUILD
index 678ac370df2..9a749490ea9 100644
--- a/testing/perl-ref-util-xs/APKBUILD
+++ b/testing/perl-ref-util-xs/APKBUILD
@@ -3,7 +3,7 @@
pkgname=perl-ref-util-xs
_pkgreal=Ref-Util-XS
pkgver=0.117
-pkgrel=5
+pkgrel=7
pkgdesc="XS implementation for Ref::Util"
url="https://metacpan.org/release/Ref-Util-XS/"
arch="all"
@@ -16,7 +16,7 @@ builddir="$srcdir/$_pkgreal-$pkgver"
build() {
cd "$builddir"
- export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'`
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
make
}
diff --git a/testing/perl-regexp-grammars/APKBUILD b/testing/perl-regexp-grammars/APKBUILD
new file mode 100644
index 00000000000..f670c0fdfeb
--- /dev/null
+++ b/testing/perl-regexp-grammars/APKBUILD
@@ -0,0 +1,38 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-regexp-grammars
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Regexp-Grammars
+pkgver=1.058
+pkgrel=0
+pkgdesc="Add grammatical parsing features to Perl 5.10 regexes"
+url="https://metacpan.org/release/Regexp-Grammars/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl"
+makedepends="perl-module-build"
+checkdepends="perl-moose"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/D/DC/DCONWAY/Regexp-Grammars-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ perl Build.PL \
+ --installdirs=vendor \
+ --create_packlist=0
+ ./Build
+}
+
+check() {
+ ./Build test
+}
+
+package() {
+ ./Build install --destdir="$pkgdir"
+}
+
+sha512sums="
+4a5b69ca1f4ba23720a4aba0cbf69d4be87cdaacfd3cebb23a160a2649083a430d98a32f98e3c35fa0db6d15aeaa8c28c2ee9969e26999125d2ea6163584ca4e Regexp-Grammars-1.058.tar.gz
+"
diff --git a/testing/perl-reply/APKBUILD b/testing/perl-reply/APKBUILD
deleted file mode 100644
index dc942a2cd17..00000000000
--- a/testing/perl-reply/APKBUILD
+++ /dev/null
@@ -1,51 +0,0 @@
-# Automatically generated by apkbuild-cpan, template 3
-# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer: rubicon <rubicon@mailo.com>
-pkgname=perl-reply
-#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
-_pkgreal=Reply
-pkgver=0.42
-pkgrel=0
-pkgdesc="REPL (read, eval, print, loop) for Perl"
-url="https://metacpan.org/release/Reply/"
-arch="noarch"
-license="MIT"
-depends="
- perl
- perl-devel-lexalias
- perl-try-tiny
- perl-module-runtime
- perl-file-homedir
- perl-eval-closure
- perl-package-stash
- perl-padwalker
- perl-term-readline-gnu
- perl-config-ini-reader-ordered
- perl-data-dump
- perl-data-printer
- perl-term-readkey
- "
-makedepends="perl-dev"
-subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/D/DO/DOY/Reply-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgreal-$pkgver"
-
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL INSTALLDIRS=vendor
- make
-}
-
-check() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make test
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
-}
-
-sha512sums="
-d60a584b3cf676be97bbe199d965a488d6a869b1f6cd55d6b405da3f9c717cf63b4380408a72e6f1e06d3d32a90aa5633889a907d94da147e35804b9d0387662 Reply-0.42.tar.gz
-"
diff --git a/testing/perl-role-eventemitter/APKBUILD b/testing/perl-role-eventemitter/APKBUILD
new file mode 100644
index 00000000000..10798aacd61
--- /dev/null
+++ b/testing/perl-role-eventemitter/APKBUILD
@@ -0,0 +1,39 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-role-eventemitter
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Role-EventEmitter
+pkgver=0.003
+pkgrel=0
+pkgdesc="Role::Tiny role for event emitting objects"
+url="https://metacpan.org/release/Role-EventEmitter/"
+arch="noarch"
+license="Artistic-2.0"
+depends="perl perl-role-tiny"
+checkdepends="perl-future perl-test-needs"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/D/DB/DBOOK/Role-EventEmitter-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+592cb5c1586a57923074a4e055c62ec29de405f37485ed0fbe6f741a87ba30860739019576717c6a9a9399631fd1b70005813a1ac8cff975e0ef9a35ad387813 Role-EventEmitter-0.003.tar.gz
+"
diff --git a/testing/perl-rxperl-anyevent/APKBUILD b/testing/perl-rxperl-anyevent/APKBUILD
new file mode 100644
index 00000000000..e1746b2eca5
--- /dev/null
+++ b/testing/perl-rxperl-anyevent/APKBUILD
@@ -0,0 +1,45 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-rxperl-anyevent
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=RxPerl-AnyEvent
+pkgver=6.8.1
+pkgrel=0
+pkgdesc="AnyEvent adapter for RxPerl"
+url="https://metacpan.org/release/RxPerl-AnyEvent/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-anyevent perl-rxperl"
+makedepends="perl-module-build-tiny"
+checkdepends="perl-test2-suite"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/K/KA/KARJALA/RxPerl-AnyEvent-v$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-v$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ perl Build.PL \
+ --installdirs=vendor \
+ --create_packlist=0
+ ./Build
+}
+
+check() {
+ ./Build test
+}
+
+package() {
+ ./Build install --destdir="$pkgdir"
+}
+
+doc() {
+ local file; find "$pkgdir" -name "*.pod" | while read -r file; do
+ amove "${file#"$pkgdir"}"
+ done
+ default_doc
+}
+
+sha512sums="
+9de7ebd142ba07dc9180acbcb7d1436d9b106f324583893c8fb4d7f09af7759006c4cba6bb6112d014fccb5f58beff56e299a8cb481051cbd27a2dbbb2bc03e2 RxPerl-AnyEvent-v6.8.1.tar.gz
+"
diff --git a/testing/perl-rxperl-ioasync/APKBUILD b/testing/perl-rxperl-ioasync/APKBUILD
new file mode 100644
index 00000000000..aa87cc77d43
--- /dev/null
+++ b/testing/perl-rxperl-ioasync/APKBUILD
@@ -0,0 +1,45 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-rxperl-ioasync
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=RxPerl-IOAsync
+pkgver=6.9.1
+pkgrel=0
+pkgdesc="IO::Async adapter for RxPerl"
+url="https://metacpan.org/release/RxPerl-IOAsync/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-io-async perl-rxperl"
+makedepends="perl-module-build-tiny"
+checkdepends="perl-future perl-test2-suite"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/K/KA/KARJALA/RxPerl-IOAsync-v$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-v$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ perl Build.PL \
+ --installdirs=vendor \
+ --create_packlist=0
+ ./Build
+}
+
+check() {
+ ./Build test
+}
+
+package() {
+ ./Build install --destdir="$pkgdir"
+}
+
+doc() {
+ local file; find "$pkgdir" -name "*.pod" | while read -r file; do
+ amove "${file#"$pkgdir"}"
+ done
+ default_doc
+}
+
+sha512sums="
+27ea3a38481fca3901f6aa9f0f19baa3165d6d67aa541a5f0ce506a7244b72dbd0053db4539ecf1cf24e5e1dac7c789987406080713284f8c5791d7a7ec1c758 RxPerl-IOAsync-v6.9.1.tar.gz
+"
diff --git a/testing/perl-rxperl-mojo/APKBUILD b/testing/perl-rxperl-mojo/APKBUILD
new file mode 100644
index 00000000000..0ef6550bb1a
--- /dev/null
+++ b/testing/perl-rxperl-mojo/APKBUILD
@@ -0,0 +1,45 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-rxperl-mojo
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=RxPerl-Mojo
+pkgver=6.8.1
+pkgrel=0
+pkgdesc="Mojo::IOLoop adapter for RxPerl"
+url="https://metacpan.org/release/RxPerl-Mojo/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-mojolicious perl-rxperl"
+makedepends="perl-module-build-tiny"
+checkdepends="perl-test2-suite"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/K/KA/KARJALA/RxPerl-Mojo-v$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-v$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ perl Build.PL \
+ --installdirs=vendor \
+ --create_packlist=0
+ ./Build
+}
+
+check() {
+ ./Build test
+}
+
+package() {
+ ./Build install --destdir="$pkgdir"
+}
+
+doc() {
+ local file; find "$pkgdir" -name "*.pod" | while read -r file; do
+ amove "${file#"$pkgdir"}"
+ done
+ default_doc
+}
+
+sha512sums="
+c482ffd904ee2e85df8a0a5952dbe534b3a2b6458da781cffae0f5e87e92cea978f03ce0308c7de18b1570acf9b74e5f510309d2fccdeb52d6b7ac2e32894cf0 RxPerl-Mojo-v6.8.1.tar.gz
+"
diff --git a/testing/perl-rxperl/APKBUILD b/testing/perl-rxperl/APKBUILD
new file mode 100644
index 00000000000..09cde5b0416
--- /dev/null
+++ b/testing/perl-rxperl/APKBUILD
@@ -0,0 +1,45 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-rxperl
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=RxPerl
+pkgver=6.28.0
+pkgrel=0
+pkgdesc="Implementation of Reactive Extensions / rxjs for Perl"
+url="https://metacpan.org/release/RxPerl/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-hash-ordered"
+makedepends="perl-module-build-tiny"
+checkdepends="perl-promise-es6 perl-test2-suite"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/K/KA/KARJALA/RxPerl-v$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-v$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ perl Build.PL \
+ --installdirs=vendor \
+ --create_packlist=0
+ ./Build
+}
+
+check() {
+ ./Build test
+}
+
+package() {
+ ./Build install --destdir="$pkgdir"
+}
+
+doc() {
+ local file; find "$pkgdir" -name "*.pod" | while read -r file; do
+ amove "${file#"$pkgdir"}"
+ done
+ default_doc
+}
+
+sha512sums="
+ebfe7e6fbc479d09ddc67d4f12d53e30351e48319fca149be37db27726eeeb8e87e2df0e34ddf3d1f7593b928be29850bfe729f7065e471656932ecc0e9f3a2a RxPerl-v6.28.0.tar.gz
+"
diff --git a/testing/perl-ryu-async/APKBUILD b/testing/perl-ryu-async/APKBUILD
new file mode 100644
index 00000000000..db220540642
--- /dev/null
+++ b/testing/perl-ryu-async/APKBUILD
@@ -0,0 +1,54 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-ryu-async
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Ryu-Async
+pkgver=0.020
+pkgrel=0
+pkgdesc="IO::Async support for Ryu stream management"
+url="https://metacpan.org/release/Ryu-Async/"
+arch="noarch !armhf !armv7 !x86" # perl-ryu
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="
+ perl perl-curry perl-future perl-future-asyncawait
+ perl-io-async perl-log-any perl-namespace-clean
+ perl-ryu perl-syntax-keyword-try perl-uri-tcp
+ "
+checkdepends="
+ perl-indirect perl-test-checkdeps perl-test-deep
+ perl-test-fatal perl-test-refcount
+ perl-variable-disposition
+ "
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/T/TE/TEAM/Ryu-Async-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+doc() {
+ local file; find "$pkgdir" -name "*.pod" | while read -r file; do
+ amove "${file#"$pkgdir"}"
+ done
+ default_doc
+}
+
+sha512sums="
+088bdcb3d157832cc550aeff93fbe0b30288ea7f2e74ce10c525dc09820c005572e401adcaa8b938dcecee7d30e7f49d4f88699d01cca4428f903396b246912b Ryu-Async-0.020.tar.gz
+"
diff --git a/testing/perl-ryu/APKBUILD b/testing/perl-ryu/APKBUILD
new file mode 100644
index 00000000000..d5bf597e2a5
--- /dev/null
+++ b/testing/perl-ryu/APKBUILD
@@ -0,0 +1,58 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-ryu
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Ryu
+pkgver=3.005
+pkgrel=0
+pkgdesc="Stream and data flow handling for async code"
+url="https://metacpan.org/release/Ryu/"
+# armhf, armv7, x86: Invalid type 'q' in pack at Buffer.pm line 202
+# According to https://perldoc.perl.org/functions/pack Quads are
+# probably available only if Perl is compiled with -Duse64bitint
+arch="noarch !armhf !armv7 !x86"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="
+ perl perl-curry perl-future perl-future-queue
+ perl-indirect perl-json-maybexs perl-list-utilsby
+ perl-log-any perl-ref-util perl-syntax-keyword-try
+ perl-text-csv
+ "
+checkdepends="
+ perl-log-any-adapter-tap perl-test-checkdeps perl-test-deep
+ perl-test-fatal perl-test-files perl-test-hexstring
+ perl-test-refcount perl-test-warnings perl-variable-disposition
+ "
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/T/TE/TEAM/Ryu-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+doc() {
+ local file; find "$pkgdir" -name "*.pod" | while read -r file; do
+ amove "${file#"$pkgdir"}"
+ done
+ default_doc
+}
+
+sha512sums="
+1886ffea40bf42a228eaa5d43ef1dbcb56a4f70973fa3426a40b819dd708fab26cffc0aefb6242d724c1a323cb70f20541688fc264e777cdc99820088a2eea2f Ryu-3.005.tar.gz
+"
diff --git a/testing/perl-scalar-readonly/APKBUILD b/testing/perl-scalar-readonly/APKBUILD
new file mode 100644
index 00000000000..2302e17a8ce
--- /dev/null
+++ b/testing/perl-scalar-readonly/APKBUILD
@@ -0,0 +1,39 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-scalar-readonly
+pkgver=0.03
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Scalar-Readonly
+pkgdesc="Functions for controlling whether any scalar variable is read-only"
+url="https://metacpan.org/release/Scalar-Readonly/"
+arch="all"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl"
+makedepends="perl-dev"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/G/GO/GOZER/Scalar-Readonly-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+fd56dbef82c298f3bcd295b65bc68b07c8db582a60ce4bddb9d38a47b6290402be8c67cd215319db609c32b28c0bf77d8ff36a42c0377f96cacc47972a7fef5c Scalar-Readonly-0.03.tar.gz
+"
diff --git a/testing/perl-sentinel/APKBUILD b/testing/perl-sentinel/APKBUILD
new file mode 100644
index 00000000000..34cfa9534cc
--- /dev/null
+++ b/testing/perl-sentinel/APKBUILD
@@ -0,0 +1,38 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-sentinel
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Sentinel
+pkgver=0.07
+pkgrel=0
+pkgdesc="Create lightweight SCALARs with get/set callbacks"
+url="https://metacpan.org/release/Sentinel/"
+arch="all"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl"
+makedepends="perl-dev perl-module-build"
+checkdepends="perl-syntax-keyword-dynamically perl-test2-suite"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/P/PE/PEVANS/Sentinel-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ perl Build.PL \
+ --installdirs=vendor \
+ --create_packlist=0
+ ./Build
+}
+
+check() {
+ ./Build test
+}
+
+package() {
+ ./Build install --destdir="$pkgdir"
+}
+
+sha512sums="
+d8393ed6e53ebe5614f45d0ef5ee0d46f4516f9015e08fb53aa85b077ad181ca7f95d957b4be7018eede43b11bbdd98c3ea5268627fb244671626852976eff77 Sentinel-0.07.tar.gz
+"
diff --git a/testing/perl-session-storage-secure/APKBUILD b/testing/perl-session-storage-secure/APKBUILD
index 900420c0996..afaaa68b83c 100644
--- a/testing/perl-session-storage-secure/APKBUILD
+++ b/testing/perl-session-storage-secure/APKBUILD
@@ -5,10 +5,10 @@ pkgname=perl-session-storage-secure
#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
_pkgreal=Session-Storage-Secure
pkgver=1.000
-pkgrel=1
+pkgrel=2
pkgdesc="Encrypted, expiring, compressed, serialized session data with integrity"
url="https://metacpan.org/release/Session-Storage-Secure/"
-arch="noarch !armhf" # perl-sereal-encoder
+arch="noarch !armv7 !armhf" # perl-sereal-encoder
license="Apache-2.0"
depends="
perl perl-moox-types-mooselike perl-crypt-rijndael perl-string-compare-constanttime perl-moo
diff --git a/testing/perl-snmp-info/APKBUILD b/testing/perl-snmp-info/APKBUILD
index 10eddd462f5..ed6179d24ed 100644
--- a/testing/perl-snmp-info/APKBUILD
+++ b/testing/perl-snmp-info/APKBUILD
@@ -1,16 +1,16 @@
-# Automatically generated by apkbuild-cpan, template 3
+# Automatically generated by apkbuild-cpan, template 4
# Contributor: Timo Teräs <timo.teras@iki.fi>
# Maintainer: Timo Teräs <timo.teras@iki.fi>
pkgname=perl-snmp-info
+pkgver=3.970001
+pkgrel=0
#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
_pkgreal=SNMP-Info
-pkgver=3.78
-pkgrel=0
pkgdesc="OO Interface to Network devices and MIBs through SNMP"
url="https://metacpan.org/release/SNMP-Info/"
arch="noarch"
license="BSD-3-Clause"
-depends="perl net-snmp-perl perl-netaddr-ip net-snmp"
+depends="perl net-snmp-perl perl-netaddr-ip net-snmp perl-regexp-common"
makedepends="perl-module-build"
checkdepends="
perl-module-find perl-class-inspector perl-test-mockobject perl-hook-lexwrap
@@ -23,7 +23,9 @@ builddir="$srcdir/$_pkgreal-$pkgver"
build() {
export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- perl Build.PL --installdirs=vendor
+ perl Build.PL \
+ --installdirs=vendor \
+ --create_packlist=0
./Build
}
@@ -33,9 +35,8 @@ check() {
package() {
./Build install --destdir="$pkgdir"
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
sha512sums="
-eca499aba07030a0e5e976c93680a403e6cee7e83814913f4a52287ca7f16d8a4775b5b772625b36253ff604022ee06133754f60a5ef7a5d497b2624033e9a70 SNMP-Info-3.78.tar.gz
+d16a5fabc08a3733a6c9a82d04f8da7f4f5d4a36a60e24e51a4e3c590d42b299a0663bffc0be79659427507c615923fd410c46a300ee56475a17999717028bfb SNMP-Info-3.970001.tar.gz
"
diff --git a/testing/perl-snmp/APKBUILD b/testing/perl-snmp/APKBUILD
index 3fd58e598d7..00484c6a456 100644
--- a/testing/perl-snmp/APKBUILD
+++ b/testing/perl-snmp/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-snmp
_pkgreal=SNMP
pkgver=5.0404
-pkgrel=10
+pkgrel=12
pkgdesc="Perl module for SNMP"
url="https://metacpan.org/release/SNMP"
arch="all"
diff --git a/testing/perl-soap-lite/APKBUILD b/testing/perl-soap-lite/APKBUILD
index fc18038ac62..5fb92b8012a 100644
--- a/testing/perl-soap-lite/APKBUILD
+++ b/testing/perl-soap-lite/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-soap-lite
_pkgreal=SOAP-Lite
pkgver=1.27
-pkgrel=3
+pkgrel=5
pkgdesc="Perl's Web Services Toolkit"
url="https://metacpan.org/release/SOAP-Lite"
arch="noarch"
diff --git a/testing/perl-sort-naturally/APKBUILD b/testing/perl-sort-naturally/APKBUILD
index 0dc798f9858..b3025d27a90 100644
--- a/testing/perl-sort-naturally/APKBUILD
+++ b/testing/perl-sort-naturally/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-sort-naturally
_pkgreal=Sort-Naturally
pkgver=1.03
-pkgrel=3
+pkgrel=4
pkgdesc="sort lexically, but sort numeral parts numerically"
url="https://metacpan.org/release/Sort-Naturally"
arch="noarch"
diff --git a/testing/perl-sort-versions/APKBUILD b/testing/perl-sort-versions/APKBUILD
new file mode 100644
index 00000000000..f45e39d9a91
--- /dev/null
+++ b/testing/perl-sort-versions/APKBUILD
@@ -0,0 +1,38 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-sort-versions
+pkgver=1.62
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Sort-Versions
+pkgdesc="Module for sorting of revision-like numbers"
+url="https://metacpan.org/release/Sort-Versions/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/N/NE/NEILB/Sort-Versions-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+b30dab96a5a31023af3ecee1857ae7bf5abc45b266294b47abb4f03c332b27825c1139d1a56bf0cfbd538487d28b3be167d83f9f5a93f079717b40157abe4d96 Sort-Versions-1.62.tar.gz
+"
diff --git a/testing/perl-sql-abstract-classic/APKBUILD b/testing/perl-sql-abstract-classic/APKBUILD
index b5e6ab487c2..411c09b87aa 100644
--- a/testing/perl-sql-abstract-classic/APKBUILD
+++ b/testing/perl-sql-abstract-classic/APKBUILD
@@ -5,7 +5,7 @@ pkgname=perl-sql-abstract-classic
#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
_pkgreal=SQL-Abstract-Classic
pkgver=1.91
-pkgrel=0
+pkgrel=1
pkgdesc="Generate SQL from Perl data structures"
url="https://metacpan.org/release/SQL-Abstract-Classic/"
arch="noarch"
diff --git a/testing/perl-sql-abstract-pg/APKBUILD b/testing/perl-sql-abstract-pg/APKBUILD
new file mode 100644
index 00000000000..55449f9c4f5
--- /dev/null
+++ b/testing/perl-sql-abstract-pg/APKBUILD
@@ -0,0 +1,38 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-sql-abstract-pg
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=SQL-Abstract-Pg
+pkgver=1.0
+pkgrel=0
+pkgdesc="PostgreSQL features for SQL::Abstract"
+url="https://metacpan.org/release/SQL-Abstract-Pg/"
+arch="noarch"
+license="Artistic-2.0"
+depends="perl perl-sql-abstract"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/S/SR/SRI/SQL-Abstract-Pg-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+544fcc730ffcd3c12bb6401ec566f4183677c7b97c58692129654fac1d8e0ef76603e66236a290c88ec5fb1019626c159398eeee476646f7bb582acce8bedd23 SQL-Abstract-Pg-1.0.tar.gz
+"
diff --git a/testing/perl-sql-abstract/APKBUILD b/testing/perl-sql-abstract/APKBUILD
index 99efe4d9129..6a63295b819 100644
--- a/testing/perl-sql-abstract/APKBUILD
+++ b/testing/perl-sql-abstract/APKBUILD
@@ -5,7 +5,7 @@ pkgname=perl-sql-abstract
#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
_pkgreal=SQL-Abstract
pkgver=2.000001
-pkgrel=1
+pkgrel=2
pkgdesc="Generate SQL from Perl data structures"
url="https://metacpan.org/release/SQL-Abstract/"
arch="noarch"
diff --git a/testing/perl-starman/APKBUILD b/testing/perl-starman/APKBUILD
index e9e3ef412a7..d596203b3d5 100644
--- a/testing/perl-starman/APKBUILD
+++ b/testing/perl-starman/APKBUILD
@@ -3,8 +3,8 @@
# Maintainer: Timo Teräs <timo.teras@iki.fi>
pkgname=perl-starman
_pkgreal=Starman
-pkgver=0.4015
-pkgrel=1
+pkgver=0.4017
+pkgrel=0
pkgdesc="High-performance preforking PSGI/Plack web server"
url="https://metacpan.org/release/Starman"
arch="noarch"
@@ -40,4 +40,6 @@ check() {
./Build test
}
-sha512sums="8e603dfc27ee54b577c24bd521da08ecb56ae2b6992ad2304156a23b917465b3a14d11e1f038ca809ff6359798e03d3ce6d6aa705e55637401d8391ec5086ade Starman-0.4015.tar.gz"
+sha512sums="
+04d40d5f4346cd2425516ffd414dc2eca86d241bdc75e9f6cfd3091dab38f3636aebe8e49cc2b8811d06a2332883330f0d85320668ceddd0f9d15d832d609e07 Starman-0.4017.tar.gz
+"
diff --git a/testing/perl-statistics-descriptive/APKBUILD b/testing/perl-statistics-descriptive/APKBUILD
index 20da1af8595..a7b9531c961 100644
--- a/testing/perl-statistics-descriptive/APKBUILD
+++ b/testing/perl-statistics-descriptive/APKBUILD
@@ -3,7 +3,7 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=perl-statistics-descriptive
_pkgreal=Statistics-Descriptive
-pkgver=3.0800
+pkgver=3.0801
pkgrel=0
pkgdesc="Module of basic descriptive statistical functions."
url="https://metacpan.org/release/Statistics-Descriptive"
@@ -35,5 +35,6 @@ package() {
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-
-sha512sums="691a99aca4214149d14c770d71b5d97eaefa2690698b0234b11ed33d7bdbc21e9b478941bb8fa46886ea3362f432eb744a3a3b3607f3d3fe189c4256884efdec Statistics-Descriptive-3.0800.tar.gz"
+sha512sums="
+e5901ed4f53807a53779113ad9288549dcf06618d2a81009f388edce0ead9f1178ce63eea07c0a427a3f00b6216f6e211cc2ca9b1c5fa91c82e4994343a33f35 Statistics-Descriptive-3.0801.tar.gz
+"
diff --git a/testing/perl-storable-improved/APKBUILD b/testing/perl-storable-improved/APKBUILD
new file mode 100644
index 00000000000..ef37b802d50
--- /dev/null
+++ b/testing/perl-storable-improved/APKBUILD
@@ -0,0 +1,39 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-storable-improved
+pkgver=0.1.3
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Storable-Improved
+pkgdesc="Storable improved with core flaws mitigated"
+url="https://metacpan.org/release/Storable-Improved/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl"
+checkdepends="perl-http-xsheaders perl-test-leaktrace"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/J/JD/JDEGUEST/Storable-Improved-v$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-v$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+10562ac3d7f339daa49220ec61f8b008b76501adb15da703d77e5974fd1a256688fb67e80ce7239032bd18ad8e77a40084243488f5b9f97d88a674bda5270fb8 Storable-Improved-v0.1.3.tar.gz
+"
diff --git a/testing/perl-string-camelcase/APKBUILD b/testing/perl-string-camelcase/APKBUILD
index 2c39d68ca19..61124b6cd17 100644
--- a/testing/perl-string-camelcase/APKBUILD
+++ b/testing/perl-string-camelcase/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-string-camelcase
_pkgreal=String-CamelCase
pkgver=0.04
-pkgrel=1
+pkgrel=2
pkgdesc="camelcase, de-camelcase"
url="https://metacpan.org/release/String-CamelCase"
arch="noarch"
diff --git a/testing/perl-string-compare-constanttime/APKBUILD b/testing/perl-string-compare-constanttime/APKBUILD
index 2ba7e1c9952..e37ef882075 100644
--- a/testing/perl-string-compare-constanttime/APKBUILD
+++ b/testing/perl-string-compare-constanttime/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-string-compare-constanttime
_pkgreal=String-Compare-ConstantTime
pkgver=0.321
-pkgrel=3
+pkgrel=5
pkgdesc="Timing side-channel protected string compare"
url="https://metacpan.org/release/String-Compare-ConstantTime"
arch="all"
diff --git a/testing/perl-string-crc32/APKBUILD b/testing/perl-string-crc32/APKBUILD
index 9f870791857..6604c200eba 100644
--- a/testing/perl-string-crc32/APKBUILD
+++ b/testing/perl-string-crc32/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-string-crc32
_pkgreal=String-CRC32
pkgver=2.100
-pkgrel=1
+pkgrel=3
pkgdesc="Perl interface for cyclic redundancy check generation"
url="https://metacpan.org/release/String-CRC32"
arch="all"
@@ -37,5 +37,4 @@ check() {
make test
}
-
sha512sums="24e5f69aa02b16c888fa412afd28f907756e344662d66d05759ed212d97ce3f0a05fbf5bdd1137bc31ae37e27d0778fe23d75def368e051ab1cbc4b90c96907d String-CRC32-2.100.tar.gz"
diff --git a/testing/perl-string-random/APKBUILD b/testing/perl-string-random/APKBUILD
index a48af92506c..a1936fce21a 100644
--- a/testing/perl-string-random/APKBUILD
+++ b/testing/perl-string-random/APKBUILD
@@ -1,21 +1,24 @@
+# Automatically generated by apkbuild-cpan, template 3
# Contributor: Fabian Affolter <fabian@affolter-engineering.ch>
-# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=perl-string-random
-_realname=String-Random
-pkgver=0.31
-pkgrel=0
-pkgdesc="Perl extension to generate random strings"
-url="https://metacpan.org/release/String-Random"
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=String-Random
+pkgver=0.32
+pkgrel=2
+pkgdesc="Perl module to generate random strings based on a pattern"
+url="https://metacpan.org/release/String-Random/"
arch="noarch"
license="GPL-1.0-or-later OR Artistic-1.0-Perl"
depends="perl"
makedepends="perl-module-build"
subpackages="$pkgname-doc"
source="https://cpan.metacpan.org/authors/id/S/SH/SHLOMIF/String-Random-$pkgver.tar.gz"
-builddir="$srcdir"/$_realname-$pkgver
+builddir="$srcdir/$_pkgreal-$pkgver"
build() {
- perl Build.PL installdirs=vendor
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ perl Build.PL --installdirs=vendor
./Build
}
@@ -24,8 +27,10 @@ check() {
}
package() {
- ./Build install destdir="$pkgdir"
+ ./Build install --destdir="$pkgdir"
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-sha512sums="6430fee321ff92142bd24df02145984979cdae2f6cd21c4570fc2ea498b1f308080b25b576cc62dff5d07a7dcb6c61e2108badbe93d41989d6ea92a13ceae6a2 String-Random-0.31.tar.gz"
+sha512sums="
+1dd0e7e45e03e155b7a0d8394fb3a04324f4827fe9431e9697d07c3a0f3941981e0b3de1e9f843a43936e5423146a3e6d4da075da04297525093ceffc3b1e659 String-Random-0.32.tar.gz
+"
diff --git a/testing/perl-string-util/APKBUILD b/testing/perl-string-util/APKBUILD
deleted file mode 100644
index 7952e13b7a9..00000000000
--- a/testing/perl-string-util/APKBUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-# Automatically generated by apkbuild-cpan, template 3
-# Contributor: TBK <tbk@jjtc.eu>
-pkgname=perl-string-util
-#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
-_pkgreal=String-Util
-pkgver=1.32
-pkgrel=0
-pkgdesc="String processing utility functions"
-url="https://metacpan.org/release/String-Util/"
-arch="noarch"
-license="GPL-1.0-or-later OR Artistic-1.0-Perl"
-depends="perl"
-makedepends="perl-module-build-tiny perl-module-build"
-subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/B/BA/BAKERSCOT/String-Util-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgreal-$pkgver"
-
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- perl Build.PL --installdirs=vendor
- ./Build
-}
-
-check() {
- ./Build test
-}
-
-package() {
- ./Build install --destdir="$pkgdir"
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
-}
-
-sha512sums="be4c5922afed8f5f5cb9b4e8cd5f7ba9d08fd2ee322b09a7f22fba6aa410febf89d4bfe5ba9dbcece61b48b4a62f15734d3c29c55e121cf784d8295063cfe14c String-Util-1.32.tar.gz"
diff --git a/testing/perl-syntax-keyword-defer/APKBUILD b/testing/perl-syntax-keyword-defer/APKBUILD
deleted file mode 100644
index a831b0695d1..00000000000
--- a/testing/perl-syntax-keyword-defer/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Automatically generated by apkbuild-cpan, template 3
-# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer: rubicon <rubicon@mailo.com>
-pkgname=perl-syntax-keyword-defer
-#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
-_pkgreal=Syntax-Keyword-Defer
-pkgver=0.07
-pkgrel=0
-pkgdesc="execute code when leaving a block"
-url="https://metacpan.org/release/Syntax-Keyword-Defer/"
-arch="all"
-license="GPL-1.0-or-later OR Artistic-1.0-Perl"
-depends="perl perl-xs-parse-keyword"
-makedepends="perl-dev perl-xs-parse-keyword perl-module-build perl-module-build"
-subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/P/PE/PEVANS/Syntax-Keyword-Defer-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgreal-$pkgver"
-
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- perl Build.PL --installdirs=vendor
- ./Build
-}
-
-check() {
- ./Build test
-}
-
-package() {
- ./Build install --destdir="$pkgdir"
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
-}
-
-sha512sums="
-7924c1dc6270c6cdc7b6c9b3494ce5793fba2ad2e693aab6c45067d133162e2ac9688bf65f82d065c0bc4cdfad1fae026aedf2c1de2c503d1048b9f139bf4702 Syntax-Keyword-Defer-0.07.tar.gz
-"
diff --git a/testing/perl-syntax-keyword-match/APKBUILD b/testing/perl-syntax-keyword-match/APKBUILD
new file mode 100644
index 00000000000..61f5e9f4525
--- /dev/null
+++ b/testing/perl-syntax-keyword-match/APKBUILD
@@ -0,0 +1,37 @@
+# Automatically generated by apkbuild-cpan, template 3
+# Contributor: Timothy Legge <timlegge@gmail.com>
+# Maintainer: Timothy Legge <timlegge@gmail.com>
+pkgname=perl-syntax-keyword-match
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Syntax-Keyword-Match
+pkgver=0.13
+pkgrel=0
+pkgdesc="a C<match/case> syntax for perl"
+url="https://metacpan.org/release/Syntax-Keyword-Match/"
+arch="all"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-xs-parse-keyword"
+makedepends="perl-dev perl-xs-parse-keyword perl-module-build"
+checkdepends="perl-test2-suite"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/P/PE/PEVANS/Syntax-Keyword-Match-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ perl Build.PL --installdirs=vendor
+ ./Build
+}
+
+check() {
+ ./Build test
+}
+
+package() {
+ ./Build install --destdir="$pkgdir"
+ find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
+}
+
+sha512sums="
+472a0b25b8f19a09f0a7d51963bb76382a6273e505b4141148353f0375610e77d2d458fc7cf6e1cb02aa127f252f882559b186bc35b441af5fa1dad7e3aa4e25 Syntax-Keyword-Match-0.13.tar.gz
+"
diff --git a/testing/perl-syntax-keyword-try/APKBUILD b/testing/perl-syntax-keyword-try/APKBUILD
deleted file mode 100644
index a720ba500fb..00000000000
--- a/testing/perl-syntax-keyword-try/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Automatically generated by apkbuild-cpan, template 3
-# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer: rubicon <rubicon@mailo.com>
-pkgname=perl-syntax-keyword-try
-#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
-_pkgreal=Syntax-Keyword-Try
-pkgver=0.27
-pkgrel=0
-pkgdesc="try/catch/finally syntax for perl"
-url="https://metacpan.org/release/Syntax-Keyword-Try/"
-arch="all"
-license="GPL-1.0-or-later OR Artistic-1.0-Perl"
-depends="perl perl-xs-parse-keyword"
-makedepends="perl-dev perl-xs-parse-keyword perl-module-build perl-module-build"
-subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/P/PE/PEVANS/Syntax-Keyword-Try-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgreal-$pkgver"
-
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- perl Build.PL --installdirs=vendor
- ./Build
-}
-
-check() {
- ./Build test
-}
-
-package() {
- ./Build install --destdir="$pkgdir"
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
-}
-
-sha512sums="
-794a8df77bfa255b83deb7004ca2a70e5f9ec76e6009897101a20c11e8969f4238bed578de5fb510590730be7dfb8b2d1431f8955863f217f7fc5a639e2f2e3b Syntax-Keyword-Try-0.27.tar.gz
-"
diff --git a/testing/perl-sys-syscall/0001-restore-missing-changes-from-0.20.0.22.patch b/testing/perl-sys-syscall/0001-restore-missing-changes-from-0.20.0.22.patch
new file mode 100644
index 00000000000..3c9e4569ba3
--- /dev/null
+++ b/testing/perl-sys-syscall/0001-restore-missing-changes-from-0.20.0.22.patch
@@ -0,0 +1,125 @@
+Patch-Source: https://sources.debian.org/data/main/libs/libsys-syscall-perl/0.25-7/debian/patches/0001-restore-missing-changes-from-0.20.0.22.patch
+
+>From 5fc4d9fd90f3e894bef0f1bdad0a17beaa81f39f Mon Sep 17 00:00:00 2001
+From: Eric Wong <e@80x24.org>
+Date: Wed, 3 Sep 2014 01:24:07 +0000
+Subject: [PATCH] restore missing changes from 0.20..0.22
+
+Somehow the 0.25 release omitted all the following changes from
+the 0.20..0.22 era. This restores the relevant changes based on
+the diff between the following two tarballs:
+
+http://search.cpan.org/CPAN/authors/id/B/BR/BRADFITZ/Sys-Syscall-0.23.tar.gz
+http://search.cpan.org/CPAN/authors/id/B/BR/BRADFITZ/Sys-Syscall-0.25.tar.gz
+
+0.22:
+ - don't modify non-localized $_. whoops. (we don't want to mess
+ with our caller's world)
+
+0.21:
+ - add missing EPOLLRDBAND, from Paul Visscher <paulv@canonical.org>
+
+0.20:
+ - on x86_64 detect 32-bit vs 64-bit process and use right syscall
+ numbers. previously worked only with 64-bit userland.
+---
+ CHANGES | 15 +++++++++++++++
+ lib/Sys/Syscall.pm | 19 +++++++++++++++----
+ 2 files changed, 30 insertions(+), 4 deletions(-)
+
+
+Bug: https://github.com/bradfitz/sys-syscall/issues/5
+Bug-Debian: https://bugs.debian.org/760336
+
+diff --git a/CHANGES b/CHANGES
+index cb97972..7cf0f2f 100644
+--- a/CHANGES
++++ b/CHANGES
+@@ -1,5 +1,20 @@
+ 0.25:
+ - adds ARM support
+
++0.23:
++ - test bug fix https://rt.cpan.org/Public/Bug/Display.html?id=54322
++
++0.22:
++ - don't modify non-localized $_. whoops. (we don't want to mess
++ with our caller's world)
++
++0.21:
++ - add missing EPOLLRDBAND, from Paul Visscher <paulv@canonical.org>
++
++0.20:
++
++ - on x86_64 detect 32-bit vs 64-bit process and use right syscall
++ numbers. previously worked only with 64-bit userland.
++
+ 0.1:
+ - first release. epoll and sendfile only. Linux only.
+diff --git a/lib/Sys/Syscall.pm b/lib/Sys/Syscall.pm
+index 8d7cca2..7821ff7 100644
+--- a/lib/Sys/Syscall.pm
++++ b/lib/Sys/Syscall.pm
+@@ -3,14 +3,18 @@
+ package Sys::Syscall;
+ use strict;
+ use POSIX qw(ENOSYS SEEK_CUR);
++use Config;
+
+ require Exporter;
+ use vars qw(@ISA @EXPORT_OK %EXPORT_TAGS $VERSION);
+
+ $VERSION = "0.25";
+ @ISA = qw(Exporter);
+-@EXPORT_OK = qw(sendfile epoll_ctl epoll_create epoll_wait EPOLLIN EPOLLOUT EPOLLERR EPOLLHUP EPOLL_CTL_ADD EPOLL_CTL_DEL EPOLL_CTL_MOD);
+-%EXPORT_TAGS = (epoll => [qw(epoll_ctl epoll_create epoll_wait EPOLLIN EPOLLOUT EPOLLERR EPOLLHUP
++@EXPORT_OK = qw(sendfile epoll_ctl epoll_create epoll_wait
++ EPOLLIN EPOLLOUT EPOLLERR EPOLLHUP EPOLLRDBAND
++ EPOLL_CTL_ADD EPOLL_CTL_DEL EPOLL_CTL_MOD);
++%EXPORT_TAGS = (epoll => [qw(epoll_ctl epoll_create epoll_wait
++ EPOLLIN EPOLLOUT EPOLLERR EPOLLHUP EPOLLRDBAND
+ EPOLL_CTL_ADD EPOLL_CTL_DEL EPOLL_CTL_MOD)],
+ sendfile => [qw(sendfile)],
+ );
+@@ -19,6 +23,7 @@ use constant EPOLLIN => 1;
+ use constant EPOLLOUT => 4;
+ use constant EPOLLERR => 8;
+ use constant EPOLLHUP => 16;
++use constant EPOLLRDBAND => 128;
+ use constant EPOLL_CTL_ADD => 1;
+ use constant EPOLL_CTL_DEL => 2;
+ use constant EPOLL_CTL_MOD => 3;
+@@ -53,6 +58,12 @@ if ($^O eq "linux") {
+ # boundaries.
+ my $u64_mod_8 = 0;
+
++ # if we're running on an x86_64 kernel, but a 32-bit process,
++ # we need to use the i386 syscall numbers.
++ if ($machine eq "x86_64" && $Config{ptrsize} == 4) {
++ $machine = "i386";
++ }
++
+ if ($machine =~ m/^i[3456]86$/) {
+ $SYS_epoll_create = 254;
+ $SYS_epoll_ctl = 255;
+@@ -222,7 +233,7 @@ sub epoll_wait_mod4 {
+ $epoll_wait_events = "\0" x 12 x $epoll_wait_size;
+ }
+ my $ct = syscall($SYS_epoll_wait, $_[0]+0, $epoll_wait_events, $_[1]+0, $_[2]+0);
+- for ($_ = 0; $_ < $ct; $_++) {
++ for (0..$ct-1) {
+ @{$_[3]->[$_]}[1,0] = unpack("LL", substr($epoll_wait_events, 12*$_, 8));
+ }
+ return $ct;
+@@ -235,7 +246,7 @@ sub epoll_wait_mod8 {
+ $epoll_wait_events = "\0" x 16 x $epoll_wait_size;
+ }
+ my $ct = syscall($SYS_epoll_wait, $_[0]+0, $epoll_wait_events, $_[1]+0, $_[2]+0);
+- for ($_ = 0; $_ < $ct; $_++) {
++ for (0..$ct-1) {
+ # 16 byte epoll_event structs, with format:
+ # 4 byte mask [idx 1]
+ # 4 byte padding (we put it into idx 2, useless)
+--
+EW
+
diff --git a/testing/perl-sys-syscall/APKBUILD b/testing/perl-sys-syscall/APKBUILD
index a79f4bdc138..7e98b083680 100644
--- a/testing/perl-sys-syscall/APKBUILD
+++ b/testing/perl-sys-syscall/APKBUILD
@@ -1,31 +1,34 @@
-# Automatically generated by apkbuild-cpan, template 2
+# Automatically generated by apkbuild-cpan, template 3
# Contributor: Nick Andrew <nick@nick-andrew.net>
-# Maintainer: Nick Andrew <nick@nick-andrew.net>
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=perl-sys-syscall
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
_pkgreal=Sys-Syscall
pkgver=0.25
-pkgrel=7
+pkgrel=9
pkgdesc="Invoke system calls that are otherwise difficult to do from Perl"
-url="https://metacpan.org/release/Sys-Syscall"
-arch="all !aarch64 !s390x"
+url="https://metacpan.org/release/Sys-Syscall/"
+arch="noarch"
license="GPL-1.0-or-later OR Artistic-1.0-Perl"
depends="perl"
subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/B/BR/BRADFITZ/$_pkgreal-$pkgver.tar.gz
- ppc64le_epoll.patch
+source="https://cpan.metacpan.org/authors/id/B/BR/BRADFITZ/Sys-Syscall-$pkgver.tar.gz
+ 0001-restore-missing-changes-from-0.20.0.22.patch
+ aarch64.patch
+ ppc64le.patch
+ s390x.patch
"
builddir="$srcdir/$_pkgreal-$pkgver"
-prepare() {
- default_prepare
-
+build() {
export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL INSTALLDIRS=vendor
+ make
}
-build() {
+check() {
export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make
+ make test
}
package() {
@@ -33,10 +36,10 @@ package() {
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-check() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make test
-}
-
-sha512sums="8b0641c992865cc7a29874a2166a4f0542039958839c6305cd4c33d17cfbdecd4f4ee74dc8110bfb000e42cabd803a84c6ba39037765d61ccb2bdf60522be87f Sys-Syscall-0.25.tar.gz
-b8d9912ae7dba60dab3bbe742ab069b86ea3846454e97d3101e975cb5568a6ca161bd928f5d4b8bd305d99830da2668de496904851fa8569ca946235f54b891f ppc64le_epoll.patch"
+sha512sums="
+8b0641c992865cc7a29874a2166a4f0542039958839c6305cd4c33d17cfbdecd4f4ee74dc8110bfb000e42cabd803a84c6ba39037765d61ccb2bdf60522be87f Sys-Syscall-0.25.tar.gz
+aa40e1b6fe8b559dab6f99825e0a362668048e2c5ef0092a19b9e18a10fc061b1a234ab237040209685cc7f0e796721f4ec2e1c2b14b5d0d164c7353d7ac2822 0001-restore-missing-changes-from-0.20.0.22.patch
+121e46b05020431c7fc76b629d8661991c0503f855d8888de7985d237b244e3766dc69e2bacfdd2af47595aee9737d58dcaa7c42ab0c8de0b4730edfaa4fc84d aarch64.patch
+0a26b35e87063970d1081468b2008064cf3476764670fcd9c9123ba88a35eb22c3fa8c6c5bf44a4b8013147a7c3ddaec108aa71506b573bd8df80cc4731de2ed ppc64le.patch
+2690e438f6a0e663cf640d76d61c24013cb26a6f04a5330b96fbcc311b05315306a9534bbe17f27d86f8df191f7084912f35ce1e7cfbe1c1e92d341c4960b6f2 s390x.patch
+"
diff --git a/testing/perl-sys-syscall/aarch64.patch b/testing/perl-sys-syscall/aarch64.patch
new file mode 100644
index 00000000000..5cea6a2ff8d
--- /dev/null
+++ b/testing/perl-sys-syscall/aarch64.patch
@@ -0,0 +1,72 @@
+Patch-Source: https://sources.debian.org/data/main/libs/libsys-syscall-perl/0.25-7/debian/patches/aarch64.patch
+
+From 6c7c516edfabd2edc835d0aaad39f946164bb25d Mon Sep 17 00:00:00 2001
+From: Yaakov Selkowitz <yselkowi@redhat.com>
+Date: Fri, 4 Dec 2015 02:31:28 -0600
+Subject: [PATCH 3/3] Add aarch64 support
+
+This is a bit complicated because AArch64, as a completely new architecture,
+does not support the deprecated epoll_create and epoll_wait syscalls.
+Instead, these wrap the epoll_create1 and epoll_pwait syscalls, which serve
+the same purpose but with slightly different syntaxes.
+
+Origin: backport, https://github.com/bradfitz/sys-syscall/commit/6c7c516edfabd2edc835d0aaad39f946164bb25d
+Bug-Debian: https://bugs.debian.org/824843
+---
+ lib/Sys/Syscall.pm | 19 +++++++++++++++++--
+ 1 file changed, 17 insertions(+), 2 deletions(-)
+
+diff --git a/lib/Sys/Syscall.pm b/lib/Sys/Syscall.pm
+index 702e835..abd010a 100644
+--- a/lib/Sys/Syscall.pm
++++ b/lib/Sys/Syscall.pm
+@@ -53,6 +53,8 @@ our (
+ $SYS_readahead,
+ );
+
++our $no_deprecated = 0;
++
+ if ($^O eq "linux") {
+ # whether the machine requires 64-bit numbers to be on 8-byte
+ # boundaries.
+@@ -105,6 +107,14 @@ if ($^O eq "linux") {
+ $SYS_epoll_wait = 409;
+ $SYS_readahead = 379;
+ $u64_mod_8 = 1;
++ } elsif ($machine eq "aarch64") {
++ $SYS_epoll_create = 20; # (sys_epoll_create1)
++ $SYS_epoll_ctl = 21;
++ $SYS_epoll_wait = 22; # (sys_epoll_pwait)
++ $SYS_sendfile = 71; # (sys_sendfile64)
++ $SYS_readahead = 213;
++ $u64_mod_8 = 1;
++ $no_deprecated = 1;
+ } elsif ($machine =~ m/arm(v\d+)?.*l/) {
+ # ARM OABI
+ $SYS_epoll_create = 250;
+@@ -207,7 +217,7 @@ sub epoll_defined { return $SYS_epoll_create ? 1 : 0; }
+ # size doesn't even matter (radix tree now, not hash)
+ sub epoll_create {
+ return -1 unless defined $SYS_epoll_create;
+- my $epfd = eval { syscall($SYS_epoll_create, ($_[0]||100)+0) };
++ my $epfd = eval { syscall($SYS_epoll_create, $no_deprecated ? 0 : ($_[0]||100)+0) };
+ return -1 if $@;
+ return $epfd;
+ }
+@@ -245,7 +255,12 @@ sub epoll_wait_mod8 {
+ $epoll_wait_size = $_[1];
+ $epoll_wait_events = "\0" x 16 x $epoll_wait_size;
+ }
+- my $ct = syscall($SYS_epoll_wait, $_[0]+0, $epoll_wait_events, $_[1]+0, $_[2]+0);
++ my $ct;
++ if ($no_deprecated) {
++ $ct = syscall($SYS_epoll_wait, $_[0]+0, $epoll_wait_events, $_[1]+0, $_[2]+0, undef);
++ } else {
++ $ct = syscall($SYS_epoll_wait, $_[0]+0, $epoll_wait_events, $_[1]+0, $_[2]+0);
++ }
+ for (0..$ct-1) {
+ # 16 byte epoll_event structs, with format:
+ # 4 byte mask [idx 1]
+--
+2.8.1
+
diff --git a/testing/perl-sys-syscall/ppc64le.patch b/testing/perl-sys-syscall/ppc64le.patch
new file mode 100644
index 00000000000..980f4973049
--- /dev/null
+++ b/testing/perl-sys-syscall/ppc64le.patch
@@ -0,0 +1,31 @@
+Patch-Source: https://sources.debian.org/data/main/libs/libsys-syscall-perl/0.25-7/debian/patches/ppc64le.patch
+
+From b877ec33b331ba01e8fad8bed0d3cde55e1efa9e Mon Sep 17 00:00:00 2001
+From: Yaakov Selkowitz <yselkowi@redhat.com>
+Date: Fri, 4 Dec 2015 02:26:35 -0600
+Subject: [PATCH 1/3] Add ppc64le support
+
+Little endian uses the same syscalls as the big endian kernel.
+
+Origin: upstream, https://github.com/bradfitz/sys-syscall/commit/b877ec33b331ba01e8fad8bed0d3cde55e1efa9e
+Bug-Debian: https://bugs.debian.org/824843
+---
+ lib/Sys/Syscall.pm | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/lib/Sys/Syscall.pm b/lib/Sys/Syscall.pm
+index 8d7cca2..ece65de 100644
+--- a/lib/Sys/Syscall.pm
++++ b/lib/Sys/Syscall.pm
+@@ -78,7 +78,7 @@ if ($^O eq "linux") {
+ $SYS_epoll_wait = 232;
+ $SYS_sendfile = 40;
+ $SYS_readahead = 187;
+- } elsif ($machine eq "ppc64") {
++ } elsif ($machine =~ m/^ppc64/) {
+ $SYS_epoll_create = 236;
+ $SYS_epoll_ctl = 237;
+ $SYS_epoll_wait = 238;
+--
+2.8.1
+
diff --git a/testing/perl-sys-syscall/ppc64le_epoll.patch b/testing/perl-sys-syscall/ppc64le_epoll.patch
deleted file mode 100644
index 4f2174c8256..00000000000
--- a/testing/perl-sys-syscall/ppc64le_epoll.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/lib/Sys/Syscall.pm
-+++ b/lib/Sys/Syscall.pm
-@@ -65,7 +65,7 @@
- $SYS_epoll_wait = 232;
- $SYS_sendfile = 40;
- $SYS_readahead = 187;
-- } elsif ($machine eq "ppc64") {
-+ } elsif ($machine =~ m/^ppc64/) {
- $SYS_epoll_create = 236;
- $SYS_epoll_ctl = 237;
- $SYS_epoll_wait = 238;
diff --git a/testing/perl-sys-syscall/s390x.patch b/testing/perl-sys-syscall/s390x.patch
new file mode 100644
index 00000000000..6f755cc355f
--- /dev/null
+++ b/testing/perl-sys-syscall/s390x.patch
@@ -0,0 +1,34 @@
+Patch-Source: https://sources.debian.org/data/main/libs/libsys-syscall-perl/0.25-7/debian/patches/s390x.patch
+
+From 5628d9c0e299eea79e87aa8a5ed2d99a2895a4d0 Mon Sep 17 00:00:00 2001
+From: Yaakov Selkowitz <yselkowi@redhat.com>
+Date: Fri, 4 Dec 2015 02:28:00 -0600
+Subject: [PATCH 2/3] Add s390/x support
+
+Origin: upstream, https://github.com/bradfitz/sys-syscall/commit/5628d9c0e299eea79e87aa8a5ed2d99a2895a4d0
+Bug-Debian: https://bugs.debian.org/824843
+---
+ lib/Sys/Syscall.pm | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git a/lib/Sys/Syscall.pm b/lib/Sys/Syscall.pm
+index ece65de..702e835 100644
+--- a/lib/Sys/Syscall.pm
++++ b/lib/Sys/Syscall.pm
+@@ -92,6 +92,13 @@ if ($^O eq "linux") {
+ $SYS_sendfile = 186; # sys_sendfile64=226
+ $SYS_readahead = 191;
+ $u64_mod_8 = 1;
++ } elsif ($machine =~ m/^s390/) {
++ $SYS_epoll_create = 249;
++ $SYS_epoll_ctl = 250;
++ $SYS_epoll_wait = 251;
++ $SYS_sendfile = 187; # sys_sendfile64=223
++ $SYS_readahead = 222;
++ $u64_mod_8 = 1;
+ } elsif ($machine eq "ia64") {
+ $SYS_epoll_create = 1243;
+ $SYS_epoll_ctl = 1244;
+--
+2.8.1
+
diff --git a/testing/perl-sys-virt/APKBUILD b/testing/perl-sys-virt/APKBUILD
index 1bb16b049b6..a21ee1b3e0e 100644
--- a/testing/perl-sys-virt/APKBUILD
+++ b/testing/perl-sys-virt/APKBUILD
@@ -1,30 +1,34 @@
-# Automatically generated by apkbuild-cpan, template 1
+# Automatically generated by apkbuild-cpan, template 4
# Contributor: Francesco Colista <fcolista@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=perl-sys-virt
-_pkgreal=Sys-Virt
-pkgver=8.3.0
+pkgver=10.2.0
pkgrel=0
-pkgdesc="Perl module for Sys-Virt"
-url="https://metacpan.org/release/Sys-Virt"
-arch="all !s390x !riscv64" # libvirt->polkit->mozjs78->rust
-license="GPL-1.0-or-later OR Artistic-1.0-Perl"
-cpanmakedepends="perl-xml-xpath perl-test-pod-coverage
- perl-test-pod perl-cpan-changes perl-module-build"
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Sys-Virt
+pkgdesc="libvirt Perl API"
+url="https://metacpan.org/release/Sys-Virt/"
+arch="all"
+license="GPL-2.0-or-later OR Artistic-1.0-Perl"
depends="perl"
-makedepends="$cpanmakedepends perl-dev libvirt yajl-dev libvirt-dev"
+makedepends="
+ libvirt-dev
+ perl-cpan-changes
+ perl-dev
+ perl-module-build
+ perl-test-pod
+ perl-test-pod-coverage
+ perl-xml-xpath
+ "
subpackages="$pkgname-doc"
source="https://cpan.metacpan.org/authors/id/D/DA/DANBERR/Sys-Virt-v$pkgver.tar.gz"
builddir="$srcdir/$_pkgreal-v$pkgver"
-prepare() {
- default_prepare
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- perl Build.PL --installdirs=vendor
-}
-
build() {
export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ perl Build.PL \
+ --installdirs=vendor \
+ --create_packlist=0
./Build
}
@@ -34,9 +38,8 @@ check() {
package() {
./Build install --destdir="$pkgdir"
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
sha512sums="
-902a1a16fbe64b1146998c57dce35dc32d9c717d3609933a288c9f449c12faeab9a1ef178c53b627869261b8036df50c2f39596df657d3a20cc6ceb9612634a3 Sys-Virt-v8.3.0.tar.gz
+c362e37511aff879b08a67b6337cee6d20c197fea2bb7f6ce023eafa642f53029744d704250533772fd48448ff39ea49027b83563cd9821dcd22d3621b2372ef Sys-Virt-v10.2.0.tar.gz
"
diff --git a/testing/perl-system-command/APKBUILD b/testing/perl-system-command/APKBUILD
new file mode 100644
index 00000000000..9a0df28180d
--- /dev/null
+++ b/testing/perl-system-command/APKBUILD
@@ -0,0 +1,39 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-system-command
+pkgver=1.122
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=System-Command
+pkgdesc="Object for running system commands"
+url="https://metacpan.org/release/System-Command/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl"
+checkdepends="perl-test-command perl-test-output"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/B/BO/BOOK/System-Command-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+7b83909072509b06c580c00ef6e06d83e620fa3da84c308a3f8e301a5cec9c1d3b953d3e9e70d99123f19ac164d7156806d65f65a624f3575851481674d04378 System-Command-1.122.tar.gz
+"
diff --git a/testing/perl-template-plugin-csv/APKBUILD b/testing/perl-template-plugin-csv/APKBUILD
index bb024c31977..bbe1b427dcc 100644
--- a/testing/perl-template-plugin-csv/APKBUILD
+++ b/testing/perl-template-plugin-csv/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-template-plugin-csv
_pkgreal=Template-Plugin-CSV
pkgver=0.04
-pkgrel=2
+pkgrel=3
pkgdesc="Template plugin to generate CSV"
url="https://metacpan.org/release/Template-Plugin-CSV/"
arch="noarch"
diff --git a/testing/perl-template-plugin-number-format/APKBUILD b/testing/perl-template-plugin-number-format/APKBUILD
index f8cdb04f9a8..c9c93999df5 100644
--- a/testing/perl-template-plugin-number-format/APKBUILD
+++ b/testing/perl-template-plugin-number-format/APKBUILD
@@ -4,8 +4,8 @@
pkgname=perl-template-plugin-number-format
_pkgreal=Template-Plugin-Number-Format
pkgver=1.06
-pkgrel=2
-pkgdesc="unknown"
+pkgrel=4
+pkgdesc="Plugin/filter interface to Number::Format"
url="https://metacpan.org/release/Template-Plugin-Number-Format/"
arch="noarch"
license="GPL PerlArtistic"
@@ -14,30 +14,20 @@ subpackages="$pkgname-doc"
source="https://cpan.metacpan.org/authors/id/D/DA/DARREN/$_pkgreal-$pkgver.tar.gz"
builddir="$srcdir/$_pkgreal-$pkgver"
-prepare() {
- default_prepare || return 1
-
- cd "$builddir"
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+build() {
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
}
-build() {
- cd "$builddir"
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make
+check() {
+ make test
}
package() {
- cd "$builddir"
- make DESTDIR="$pkgdir" install || return 1
+ make DESTDIR="$pkgdir" install
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-check() {
- cd "$builddir"
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make test
-}
-
-sha512sums="85ddc46618efc5a11a657f265ea63b09bd8df9f8e99122bcee5a22a23099ac8eb3c930d61382529b1e3c0b4dd663d32e30e77ac33b6d1b305475e740053001cb Template-Plugin-Number-Format-1.06.tar.gz"
+sha512sums="
+85ddc46618efc5a11a657f265ea63b09bd8df9f8e99122bcee5a22a23099ac8eb3c930d61382529b1e3c0b4dd663d32e30e77ac33b6d1b305475e740053001cb Template-Plugin-Number-Format-1.06.tar.gz
+"
diff --git a/testing/perl-term-readline-gnu/APKBUILD b/testing/perl-term-readline-gnu/APKBUILD
deleted file mode 100644
index c30e84b2d57..00000000000
--- a/testing/perl-term-readline-gnu/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Automatically generated by apkbuild-cpan, template 3
-# Contributor: Milan P. Stanić <mps@arvanta.net>
-# Maintainer: Milan P. Stanić <mps@arvanta.net>
-pkgname=perl-term-readline-gnu
-#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
-_pkgreal=Term-ReadLine-Gnu
-pkgver=1.42
-pkgrel=1
-pkgdesc="Perl extension for the GNU Readline/History Library"
-url="https://metacpan.org/release/Term-ReadLine-Gnu/"
-arch="all"
-license="GPL-1.0-or-later OR Artistic-1.0-Perl"
-depends="perl"
-makedepends="perl-dev readline-dev"
-subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/H/HA/HAYASHI/Term-ReadLine-Gnu-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgreal-$pkgver"
-
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL INSTALLDIRS=vendor
- make
-}
-
-check() {
- export TERM=xterm-256color
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make test
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
-}
-
-sha512sums="8f62cb14432f9364b1a3cea708d3d648bc7df2bb7fed2b3ec7af389fa183bfbe1bec3020b184b19a267217d47a3547f52a20d75f17c13ba89684759084f24471 Term-ReadLine-Gnu-1.42.tar.gz"
diff --git a/testing/perl-term-size/APKBUILD b/testing/perl-term-size/APKBUILD
index 26d23788361..eeb05fc9dc6 100644
--- a/testing/perl-term-size/APKBUILD
+++ b/testing/perl-term-size/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-term-size
_pkgreal=Term-Size
pkgver=0.211
-pkgrel=1
+pkgrel=3
pkgdesc="Retrieve terminal size on Unix"
url="https://metacpan.org/release/Term-Size/"
arch="all"
@@ -31,5 +31,4 @@ package() {
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-
sha512sums="0762951a6125dace8c67548667b8ca353b34199412fbd4c05d417a49a6d3f5bb93172736fcef98e049f094f2fdc62efd334e64f9357c7778665f2aa2bb775e0f Term-Size-0.211.tar.gz"
diff --git a/testing/perl-term-ui/APKBUILD b/testing/perl-term-ui/APKBUILD
index 5324eef4b61..fe305c3d16b 100644
--- a/testing/perl-term-ui/APKBUILD
+++ b/testing/perl-term-ui/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-term-ui
_pkgreal=Term-UI
pkgver=0.50
-pkgrel=0
+pkgrel=1
pkgdesc="User interfaces via Term::ReadLine made easy"
url="https://metacpan.org/release/Term-UI"
arch="noarch"
diff --git a/testing/perl-test-api/APKBUILD b/testing/perl-test-api/APKBUILD
index 25d37331914..e044644a897 100644
--- a/testing/perl-test-api/APKBUILD
+++ b/testing/perl-test-api/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-test-api
_pkgreal=Test-API
pkgver=0.010
-pkgrel=1
+pkgrel=2
pkgdesc="Test a list of subroutines provided by a module"
url="https://metacpan.org/release/Test-API"
arch="noarch"
diff --git a/testing/perl-test-checkdeps/APKBUILD b/testing/perl-test-checkdeps/APKBUILD
new file mode 100644
index 00000000000..71df0f6e0fe
--- /dev/null
+++ b/testing/perl-test-checkdeps/APKBUILD
@@ -0,0 +1,36 @@
+# Automatically generated by apkbuild-cpan, template 3
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-test-checkdeps
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Test-CheckDeps
+pkgver=0.010
+pkgrel=0
+pkgdesc="Check for presence of dependencies"
+url="https://metacpan.org/release/Test-CheckDeps/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-cpan-meta-check"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/L/LE/LEONT/Test-CheckDeps-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+ find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
+}
+
+sha512sums="
+9683b81aa6bce358fa1abc9b2337b9b15b274742f08a3fd71e80df0bfd20619406cdded191aafdd103db8d514bdc20d36a0b60aefbd72d3de6cb117c17461697 Test-CheckDeps-0.010.tar.gz
+"
diff --git a/testing/perl-test-class-most/APKBUILD b/testing/perl-test-class-most/APKBUILD
deleted file mode 100644
index 838b2f8bf0c..00000000000
--- a/testing/perl-test-class-most/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Automatically generated by apkbuild-cpan, template 3
-# Contributor: Timothy Legge <timlegge@gmail.com>
-# Maintainer: Timothy Legge <timlegge@gmail.com>
-pkgname=perl-test-class-most
-#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
-_pkgreal=Test-Class-Most
-pkgver=0.08
-pkgrel=0
-pkgdesc="Test Classes the easy way"
-url="https://metacpan.org/release/Test-Class-Most/"
-arch="noarch"
-license="GPL-1.0-or-later OR Artistic-1.0-Perl"
-depends="perl"
-makedepends="perl-module-build perl-test-simple perl-test-class perl-test-most"
-subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/O/OV/OVID/Test-Class-Most-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgreal-$pkgver"
-
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- perl Build.PL --installdirs=vendor
- ./Build
-}
-
-check() {
- ./Build test
-}
-
-package() {
- ./Build install --destdir="$pkgdir"
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
-}
-
-sha512sums="
-30284e5c186727df87688176e3fb8683000796c8fc2f45d243c8a2ad42d4d52e840ca6f0baedf5dc9a7b6a246472ff96c92d0c407dbd65c5152a7cf5a61003c1 Test-Class-Most-0.08.tar.gz
-"
diff --git a/testing/perl-test-class-tiny/APKBUILD b/testing/perl-test-class-tiny/APKBUILD
new file mode 100644
index 00000000000..253d201b0d6
--- /dev/null
+++ b/testing/perl-test-class-tiny/APKBUILD
@@ -0,0 +1,39 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-test-class-tiny
+pkgver=0.03
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Test-Class-Tiny
+pkgdesc="xUnit in Perl, simplified"
+url="https://metacpan.org/release/Test-Class-Tiny/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl"
+checkdepends="perl-test-deep perl-test2-suite"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/F/FE/FELIPE/Test-Class-Tiny-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+7342fcdd8cf1c283926f6e244fa2bfca9369e8fa9a10587c9d46bfba1b204ef5156a21d3a461a952d07cf8f0646995083ce5c1738561fac83c38c04fd8e895de Test-Class-Tiny-0.03.tar.gz
+"
diff --git a/testing/perl-test-describeme/APKBUILD b/testing/perl-test-describeme/APKBUILD
new file mode 100644
index 00000000000..71ba75dfaeb
--- /dev/null
+++ b/testing/perl-test-describeme/APKBUILD
@@ -0,0 +1,38 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-test-describeme
+pkgver=0.004
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Test-DescribeMe
+pkgdesc="Tell test runners what kind of test you are"
+url="https://metacpan.org/release/Test-DescribeMe/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-test-settings"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/W/WO/WOLFSAGE/Test-DescribeMe-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+cfbdf4497393f49139f78699d47f9ebcafbb1021b1c8281633623c8c65bb97a77e8b21d6cb6eb2ea145fd3cfa5a1e1172b1b86f0f40f21b5cec970512347fb37 Test-DescribeMe-0.004.tar.gz
+"
diff --git a/testing/perl-test-distribution/APKBUILD b/testing/perl-test-distribution/APKBUILD
index b0b846f08a9..122d6dbfdf3 100644
--- a/testing/perl-test-distribution/APKBUILD
+++ b/testing/perl-test-distribution/APKBUILD
@@ -5,7 +5,7 @@ pkgname=perl-test-distribution
#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
_pkgreal=Test-Distribution
pkgver=2.00
-pkgrel=0
+pkgrel=1
pkgdesc="perform tests on all modules of a distribution"
url="https://metacpan.org/release/Test-Distribution/"
arch="noarch"
diff --git a/testing/perl-test-expander/APKBUILD b/testing/perl-test-expander/APKBUILD
new file mode 100644
index 00000000000..b88da7b2a55
--- /dev/null
+++ b/testing/perl-test-expander/APKBUILD
@@ -0,0 +1,55 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-test-expander
+pkgver=2.5.0
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Test-Expander
+pkgdesc="Collection of frequently used test functionalities"
+url="https://metacpan.org/release/Test-Expander/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="
+ perl perl-const-fast perl-file-chdir perl-importer
+ perl-padwalker perl-path-tiny perl-scalar-readonly
+ perl-test2-suite perl-test2-tools-explain
+ "
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/J/JS/JSF/Test-Expander-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+prepare() {
+ default_prepare
+
+ rm -v lib/.perlcriticrc
+}
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+doc() {
+ local file; find "$pkgdir" -name "*.pod" | while read -r file; do
+ amove "${file#"$pkgdir"}"
+ done
+ default_doc
+}
+
+sha512sums="
+db46e5110ee0620fd202cb600ef119d7b7769306a51cf9c16aef825c74c504019923608a79025ba612cbcfb1996ff637fc966e4f1422dcf825d5ab9971f7a164 Test-Expander-2.5.0.tar.gz
+"
diff --git a/testing/perl-test-file/APKBUILD b/testing/perl-test-file/APKBUILD
index 85727b4cec3..d38356070e0 100644
--- a/testing/perl-test-file/APKBUILD
+++ b/testing/perl-test-file/APKBUILD
@@ -1,9 +1,9 @@
# Contributor: Stuart Cardall <developer@it-offshore.co.uk>
# Maintainer: Stuart Cardall <developer@it-offshore.co.uk>
pkgname=perl-test-file
-_realname=Test-File
-pkgver=1.448
-pkgrel=0
+_pkgreal=Test-File
+pkgver=1.993
+pkgrel=1
pkgdesc="test file attributes"
url="https://github.com/briandfoy/test-file"
arch="noarch"
@@ -11,8 +11,8 @@ license="Artistic-2.0"
depends="perl"
checkdepends="perl-test-utf8"
subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/B/BD/BDFOY/$_realname-$pkgver.tar.gz"
-builddir="$srcdir/$_realname-$pkgver"
+source="https://cpan.metacpan.org/authors/id/B/BD/BDFOY/Test-File-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
build() {
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
@@ -28,8 +28,6 @@ package() {
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-
-
-
-
-sha512sums="fea5082cedb03de62dd9b4ee1db891439a14367f746f1fdec4056ac251a607cc281d22708517de4e3e64484b47fb6cc5898c30983a6af9db03412c469b4e9009 Test-File-1.448.tar.gz"
+sha512sums="
+0e14580a11afc2f3115d5594be226237803ad8e462c314a2b775ca96bf491cfeea84bd90ae92a70c58d3d8fc7c0f21d38b54a58d29dd01a2c082c0cbfecb0aaf Test-File-1.993.tar.gz
+"
diff --git a/testing/perl-test-files/APKBUILD b/testing/perl-test-files/APKBUILD
new file mode 100644
index 00000000000..b2cd82d57da
--- /dev/null
+++ b/testing/perl-test-files/APKBUILD
@@ -0,0 +1,57 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-test-files
+pkgver=0.26
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Test-Files
+pkgdesc="Test::Builder based module to ease testing with files and dirs"
+url="https://metacpan.org/release/Test-Files/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="
+ perl perl-class-xsaccessor perl-const-fast perl-data-compare
+ perl-file-chdir perl-padwalker perl-path-tiny perl-text-diff
+ "
+checkdepends="
+ perl-archive-zip perl-file-copy-recursive perl-test-expander
+ "
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/J/JS/JSF/Test-Files-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+prepare() {
+ default_prepare
+
+ rm -v lib/.perlcriticrc
+}
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+doc() {
+ local file; find "$pkgdir" -name "*.pod" | while read -r file; do
+ amove "${file#"$pkgdir"}"
+ done
+ default_doc
+}
+
+sha512sums="
+72bdac0290230993b5364ee674d5b8289feef5f98abb0a9595574e49642be1183fd0dace03693e63ca001ea9131d2f1e8f7625843fb00e9fcce321d5e5149aec Test-Files-0.26.tar.gz
+"
diff --git a/testing/perl-test-lwp-useragent/APKBUILD b/testing/perl-test-lwp-useragent/APKBUILD
new file mode 100644
index 00000000000..93e62a64dda
--- /dev/null
+++ b/testing/perl-test-lwp-useragent/APKBUILD
@@ -0,0 +1,46 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-test-lwp-useragent
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Test-LWP-UserAgent
+pkgver=0.036
+pkgrel=0
+pkgdesc="LWP::UserAgent subclass for simulating and testing network calls"
+url="https://metacpan.org/release/Test-LWP-UserAgent/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="
+ perl perl-http-date perl-http-message perl-libwww
+ perl-namespace-clean perl-safe-isa perl-try-tiny perl-uri
+ "
+checkdepends="
+ perl-json-maybexs perl-moose perl-path-tiny perl-plack
+ perl-test-deep perl-test-fatal perl-test-needs
+ perl-test-requiresinternet perl-test-warnings
+ "
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/E/ET/ETHER/Test-LWP-UserAgent-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+6cf34dbd9c6fee3ab25ee31a97694f24499c7f41cd3d08e915176235148e69729f9434d58da78645e306d966031d2807f333f9847ddcc53b33474e6e6bea9e8e Test-LWP-UserAgent-0.036.tar.gz
+"
diff --git a/testing/perl-test-memorygrowth/APKBUILD b/testing/perl-test-memorygrowth/APKBUILD
new file mode 100644
index 00000000000..40293310d75
--- /dev/null
+++ b/testing/perl-test-memorygrowth/APKBUILD
@@ -0,0 +1,37 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-test-memorygrowth
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Test-MemoryGrowth
+pkgver=0.04
+pkgrel=0
+pkgdesc="Assert that code does not cause growth in memory usage"
+url="https://metacpan.org/release/Test-MemoryGrowth/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl"
+makedepends="perl-module-build"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/P/PE/PEVANS/Test-MemoryGrowth-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ perl Build.PL \
+ --installdirs=vendor \
+ --create_packlist=0
+ ./Build
+}
+
+check() {
+ ./Build test
+}
+
+package() {
+ ./Build install --destdir="$pkgdir"
+}
+
+sha512sums="
+538cd6646be941e2fe67640eccad5b5b5eb29ee403837e33f9b7c703209a78a699c89a03906bb85461207c99aea3b87a9f48c869ed07979a84d083fa71e5b7f5 Test-MemoryGrowth-0.04.tar.gz
+"
diff --git a/testing/perl-test-modern/APKBUILD b/testing/perl-test-modern/APKBUILD
index d506f1b4899..8672e2b80fa 100644
--- a/testing/perl-test-modern/APKBUILD
+++ b/testing/perl-test-modern/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-test-modern
_pkgreal=Test-Modern
pkgver=0.013
-pkgrel=2
+pkgrel=3
pkgdesc="precision testing for modern perl"
url="https://metacpan.org/release/Test-Modern/"
arch="noarch"
diff --git a/testing/perl-test-randomresult/APKBUILD b/testing/perl-test-randomresult/APKBUILD
new file mode 100644
index 00000000000..0580ed8a5ec
--- /dev/null
+++ b/testing/perl-test-randomresult/APKBUILD
@@ -0,0 +1,38 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-test-randomresult
+pkgver=0.001
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Test-RandomResult
+pkgdesc="Test that results of a running code look random"
+url="https://metacpan.org/release/Test-RandomResult/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/P/PE/PERLANCAR/Test-RandomResult-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+ce85acf051686186c44e9972e610117c821018c2d32900ce56ef6c96fbca6afb58f729bfe18a1651a27359d9fbf8f855a2b2b7969ef154befaf20adabbc6767b Test-RandomResult-0.001.tar.gz
+"
diff --git a/testing/perl-test-redisserver/APKBUILD b/testing/perl-test-redisserver/APKBUILD
new file mode 100644
index 00000000000..43077e0eddc
--- /dev/null
+++ b/testing/perl-test-redisserver/APKBUILD
@@ -0,0 +1,38 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-test-redisserver
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Test-RedisServer
+pkgver=0.23
+pkgrel=0
+pkgdesc="redis-server runner for tests"
+url="https://metacpan.org/release/Test-RedisServer/"
+arch="noarch !armv7 !x86 !armhf" # perl-redis not available
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-mouse perl-redis redis"
+makedepends="perl-module-build-tiny"
+checkdepends="perl-test-tcp"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/S/SO/SONGMU/Test-RedisServer-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ perl Build.PL \
+ --installdirs=vendor \
+ --create_packlist=0
+ ./Build
+}
+
+check() {
+ ./Build test
+}
+
+package() {
+ ./Build install --destdir="$pkgdir"
+}
+
+sha512sums="
+57616c36d505a2ff1c933c82b698924a0cfdbf10ae62d98836a93cf7ac093c2595c498a5a039a2b65929cec889f6f3b85cd581f1080e5a28c6d46b0e85f4aacd Test-RedisServer-0.23.tar.gz
+"
diff --git a/testing/perl-test-requires-git/APKBUILD b/testing/perl-test-requires-git/APKBUILD
new file mode 100644
index 00000000000..c86ce26ce02
--- /dev/null
+++ b/testing/perl-test-requires-git/APKBUILD
@@ -0,0 +1,38 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-test-requires-git
+pkgver=1.008
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Test-Requires-Git
+pkgdesc="Check your test requirements against the available version of Git"
+url="https://metacpan.org/release/Test-Requires-Git/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-git-version-compare"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/B/BO/BOOK/Test-Requires-Git-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+bc6d6cf8f371c8b20a139a468a57117c8d49fe1a83150a7597a1bb09c634d5ede2b4617209045ea0e2d707f7ab4aa7e16c9652d604b8ecfc3e9785457c2cb504 Test-Requires-Git-1.008.tar.gz
+"
diff --git a/testing/perl-test-roo/APKBUILD b/testing/perl-test-roo/APKBUILD
index a618c5026b3..696d4360007 100644
--- a/testing/perl-test-roo/APKBUILD
+++ b/testing/perl-test-roo/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-test-roo
_pkgreal=Test-Roo
pkgver=1.004
-pkgrel=2
+pkgrel=3
pkgdesc="Composable, reusable tests with roles and Moo"
url="https://metacpan.org/release/Test-Roo/"
arch="noarch"
diff --git a/testing/perl-test-settings/APKBUILD b/testing/perl-test-settings/APKBUILD
new file mode 100644
index 00000000000..8aca7a2c749
--- /dev/null
+++ b/testing/perl-test-settings/APKBUILD
@@ -0,0 +1,38 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-test-settings
+pkgver=0.003
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Test-Settings
+pkgdesc="Ask or tell when certain types of tests should be run"
+url="https://metacpan.org/release/Test-Settings/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/W/WO/WOLFSAGE/Test-Settings-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+8839e6cd16c1527157e79bacb34fc6b95d09286a1974e7503b68f06cf17536d798c084d546b19c5f0720823d1486658918e93922737c949513e875a0bc76a6c2 Test-Settings-0.003.tar.gz
+"
diff --git a/testing/perl-test-timer/APKBUILD b/testing/perl-test-timer/APKBUILD
index e0fbc66857e..b0ec02f8926 100644
--- a/testing/perl-test-timer/APKBUILD
+++ b/testing/perl-test-timer/APKBUILD
@@ -1,30 +1,25 @@
-# Automatically generated by apkbuild-cpan, template 2
+# Automatically generated by apkbuild-cpan, template 3
# Contributor: Nick Andrew <nick@nick-andrew.net>
-# Maintainer: Nick Andrew <nick@nick-andrew.net>
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=perl-test-timer
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
_pkgreal=Test-Timer
-pkgver=2.11
-pkgrel=1
+pkgver=2.12
+pkgrel=2
pkgdesc="test module to test/assert response times"
-url="https://metacpan.org/release/Test-Timer"
+url="https://metacpan.org/release/Test-Timer/"
arch="noarch"
license="Artistic-2.0"
depends="perl perl-error"
makedepends="perl-module-build"
-checkdepends="perl-test-fatal perl-test-simple"
+checkdepends="perl-test-fatal"
subpackages="$pkgname-doc"
source="https://cpan.metacpan.org/authors/id/J/JO/JONASBN/Test-Timer-$pkgver.tar.gz"
builddir="$srcdir/$_pkgreal-$pkgver"
-prepare() {
- default_prepare
-
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- perl Build.PL installdirs=vendor
-}
-
build() {
export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ perl Build.PL --installdirs=vendor
./Build
}
@@ -33,9 +28,10 @@ check() {
}
package() {
- ./Build install destdir="$pkgdir"
+ ./Build install --destdir="$pkgdir"
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-
-sha512sums="cd276ee115c31fb24f5f518fcca0e09189e2da8bc009bf6e99b28799117edb93d95492e61c6b60ef1cce9be2fe040eed242bbe3acb8ef8f40778970e24444c9b Test-Timer-2.11.tar.gz"
+sha512sums="
+1a97676fccca9f8daae550942ab5dcd28bf121d781518b41bfc846ed5e63723e64608a24a001ff8462e7f9e6019e727ed4bf88ddb13e0e3428093abe42eb71ee Test-Timer-2.12.tar.gz
+"
diff --git a/testing/perl-test-toolbox/APKBUILD b/testing/perl-test-toolbox/APKBUILD
index 3d42d43156e..b09164ad930 100644
--- a/testing/perl-test-toolbox/APKBUILD
+++ b/testing/perl-test-toolbox/APKBUILD
@@ -1,34 +1,36 @@
+# Automatically generated by apkbuild-cpan, template 3
# Contributor: TBK <tbk@jjtc.eu>
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=perl-test-toolbox
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
_pkgreal=Test-Toolbox
pkgver=0.4
-pkgrel=3
+pkgrel=5
pkgdesc="Tools for testing"
-url="https://metacpan.org/release/Test-Toolbox"
+url="https://metacpan.org/release/Test-Toolbox/"
arch="noarch"
license="GPL-1.0-or-later OR Artistic-1.0-Perl"
depends="perl"
+makedepends="perl-module-build"
subpackages="$pkgname-doc"
source="https://cpan.metacpan.org/authors/id/M/MI/MIKO/Test-Toolbox-$pkgver.tar.gz"
builddir="$srcdir/$_pkgreal-$pkgver"
-prepare() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
-}
-
build() {
export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make
+ perl Build.PL --installdirs=vendor
+ ./Build
}
check() {
- make test
+ ./Build test
}
package() {
- make DESTDIR="$pkgdir" install
+ ./Build install --destdir="$pkgdir"
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-sha512sums="99d711a7cce4ac3a4fd37f4b7fc91cf75c5d4978ff83cd084599ed6c1818d22b30a3210a14b03da4646b53cc939b224937da3bea1c49bb13324c5583ee44bf81 Test-Toolbox-0.4.tar.gz"
+sha512sums="
+99d711a7cce4ac3a4fd37f4b7fc91cf75c5d4978ff83cd084599ed6c1818d22b30a3210a14b03da4646b53cc939b224937da3bea1c49bb13324c5583ee44bf81 Test-Toolbox-0.4.tar.gz
+"
diff --git a/testing/perl-test-trap/APKBUILD b/testing/perl-test-trap/APKBUILD
index 45b89d313e8..dcf900a4e24 100644
--- a/testing/perl-test-trap/APKBUILD
+++ b/testing/perl-test-trap/APKBUILD
@@ -3,7 +3,7 @@
# Maintainer: Timo Teräs <timo.teras@iki.fi>
pkgname=perl-test-trap
_pkgreal=Test-Trap
-pkgver=0.3.4
+pkgver=0.3.5
pkgrel=1
pkgdesc="Trap exit codes, exceptions, output, etc."
url="https://metacpan.org/release/Test-Trap"
@@ -36,4 +36,6 @@ check() {
./Build test
}
-sha512sums="cac4412a55511c820a1813a277afa802769a64219bf306190d83fea775c53bcd1d7faa275cb7f1b435e5ae274b6c1f78dd862525a6426040e51fdaf537e720ff Test-Trap-v0.3.4.tar.gz"
+sha512sums="
+02836ed9c91448cb5aa84246c17d72d119844e072289656529d87e944ad1c26fa7e18e7b45290cdffdabaff7abdad4547233156331194ce375da0b902811313e Test-Trap-v0.3.5.tar.gz
+"
diff --git a/testing/perl-test-unit/20_fix-defined-array-warnings.patch b/testing/perl-test-unit/20_fix-defined-array-warnings.patch
new file mode 100644
index 00000000000..a6401ee6987
--- /dev/null
+++ b/testing/perl-test-unit/20_fix-defined-array-warnings.patch
@@ -0,0 +1,20 @@
+Patch-Source: https://sources.debian.org/data/main/libt/libtest-unit-perl/0.25-7/debian/patches/20_fix-defined-array-warnings.patch
+
+Description: Fix defined(@array) deprecation warning
+ Also fixes test suite failures where STDERR was checked
+Author: Axel Beckert <abe@debian.org>
+Bug: https://rt.cpan.org/Public/Bug/Display.html?id=102732
+
+Index: libtest-unit-perl/lib/Test/Unit/TestCase.pm
+===================================================================
+--- libtest-unit-perl.orig/lib/Test/Unit/TestCase.pm 2013-12-25 21:59:45.182407866 +0100
++++ libtest-unit-perl/lib/Test/Unit/TestCase.pm 2013-12-25 22:08:27.777044278 +0100
+@@ -103,7 +103,7 @@
+ my $class = ref($_[0]) || $_[0];
+ my @tests = ();
+ no strict 'refs';
+- if (defined(@{"$class\::TESTS"})) {
++ if (@{"$class\::TESTS"}) {
+ push @tests, @{"$class\::TESTS"};
+ }
+ else {
diff --git a/testing/perl-test-unit/30_fix-xism-test-suite-failures.patch b/testing/perl-test-unit/30_fix-xism-test-suite-failures.patch
new file mode 100644
index 00000000000..bce2e41c087
--- /dev/null
+++ b/testing/perl-test-unit/30_fix-xism-test-suite-failures.patch
@@ -0,0 +1,29 @@
+Patch-Source: https://sources.debian.org/data/main/libt/libtest-unit-perl/0.25-7/debian/patches/30_fix-xism-test-suite-failures.patch
+
+Description: Fix test-suite failures due to ?-xism vs ?^
+ ?^ was introduced with Perl 5.14 as abbreviation for ?d-imsx
+Author: Axel Beckert <abe@debian.org>
+Bug: https://rt.cpan.org/Public/Bug/Display.html?id=62771
+
+Index: libtest-unit-perl/t/tlib/AssertTest.pm
+===================================================================
+--- libtest-unit-perl.orig/t/tlib/AssertTest.pm 2013-12-26 01:17:02.338121179 +0100
++++ libtest-unit-perl/t/tlib/AssertTest.pm 2013-12-26 01:17:50.658363830 +0100
+@@ -70,7 +70,7 @@
+
+ 'bang' => [ __LINE__, sub { shift->assert(0, 'bang') } ],
+ 'bang' => [ __LINE__, sub { shift->assert('', 'bang') } ],
+- "'qux' did not match /(?-xism:foo)/"
++ "'qux' did not match /(?^:foo)/"
+ => [ __LINE__, sub { shift->assert(qr/foo/, 'qux') } ],
+ 'bang' => [ __LINE__, sub { shift->assert(qr/foo/, 'qux', 'bang') } ],
+ 'a ne b'=> [ __LINE__, sub { shift->assert($coderef, 'a', 'b') } ],
+@@ -253,7 +253,7 @@
+ q{expected '', got 'foo'} => [ 'foo', '' ],
+ q{expected 'foo', got ''} => [ '', 'foo' ],
+ q{expected 5, got 4} => [ $adder, 5 ],
+- q{'foo' did not match /(?-xism:x)/} => [ 'foo', qr/x/ ],
++ q{'foo' did not match /(?^:x)/} => [ 'foo', qr/x/ ],
+ );
+ my @tests = ();
+ while (@checks) {
diff --git a/testing/perl-test-unit/40_make-deep-test-less-fragile.patch b/testing/perl-test-unit/40_make-deep-test-less-fragile.patch
new file mode 100644
index 00000000000..298c35b530e
--- /dev/null
+++ b/testing/perl-test-unit/40_make-deep-test-less-fragile.patch
@@ -0,0 +1,23 @@
+Patch-Source: https://sources.debian.org/data/main/libt/libtest-unit-perl/0.25-7/debian/patches/40_make-deep-test-less-fragile.patch
+
+Description: Add more variants to fragile test
+ This test was already marked by upstream as "may be fragile due to
+ recursion ordering" and it indeed is fragile. Fixes occasional test
+ suite failures due to hash randomization.
+Author: Axel Beckert <abe@debian.org>
+Bug: https://rt.cpan.org/Public/Bug/Display.html?id=87017
+
+Index: libtest-unit-perl/t/tlib/AssertTest.pm
+===================================================================
+--- libtest-unit-perl.orig/t/tlib/AssertTest.pm 2013-12-26 02:08:38.782689704 +0100
++++ libtest-unit-perl/t/tlib/AssertTest.pm 2013-12-26 02:13:11.136010021 +0100
+@@ -479,7 +479,8 @@
+ },
+ }
+ ],
+- $differ->( 'HASH', 'not exist') => [$families{orig}, $families{bad_copy}], # test may be fragile due to recursion ordering?
++ # test is fragile due to hash randomization
++ $differ->( 'HASH|John\sDoe', 'not\sexist|Baby\sDoll') => [$families{orig}, $families{bad_copy}],
+ $differ->("'3'", "'5'") => [ [ \$H, 3 ], [ \$H2, 5 ] ],
+ $differ->("'hello'", "'goodbye'") => [ { world => \$H }, { world => \$G } ],
+ $differ->("'hello'", "'goodbye'") => [ [ \$H, "world" ], [ \$G, "world" ] ],
diff --git a/testing/perl-test-unit/APKBUILD b/testing/perl-test-unit/APKBUILD
index afbb3051a8a..6310fc1eecf 100644
--- a/testing/perl-test-unit/APKBUILD
+++ b/testing/perl-test-unit/APKBUILD
@@ -1,31 +1,33 @@
-# Automatically generated by apkbuild-cpan, template 2
+# Automatically generated by apkbuild-cpan, template 3
# Contributor: Valery Kartel <valery.kartel@gmail.com>
-# Maintainer: Valery Kartel <valery.kartel@gmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=perl-test-unit
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
_pkgreal=Test-Unit
pkgver=0.25
-pkgrel=2
+pkgrel=4
pkgdesc="A unit testing framework"
-url="https://metacpan.org/release/Test-Unit"
+url="https://metacpan.org/release/Test-Unit/"
arch="noarch"
license="GPL-1.0-or-later OR Artistic-1.0-Perl"
-options="!check"
-depends="perl perl-class-inner perl-error perl-devel-symdump"
+depends="perl perl-class-inner perl-devel-symdump perl-error"
subpackages="$pkgname-doc"
source="https://cpan.metacpan.org/authors/id/M/MC/MCAST/Test-Unit-$pkgver.tar.gz
- testcase.patch"
+ 20_fix-defined-array-warnings.patch
+ 30_fix-xism-test-suite-failures.patch
+ 40_make-deep-test-less-fragile.patch
+ "
builddir="$srcdir/$_pkgreal-$pkgver"
-prepare() {
- default_prepare
-
+build() {
export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL INSTALLDIRS=vendor
+ make
}
-build() {
+check() {
export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make
+ make test
}
package() {
@@ -33,10 +35,9 @@ package() {
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-check() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make test
-}
-
-sha512sums="8f76583c7480eec825080eb6cd94d1b1a1c7c3bc7f297607414c95777e9a9f880b5a0d927a41521389ae50c2ba1b9ec3d76149da47d5997add739970df6b154d Test-Unit-0.25.tar.gz
-d7e874a687f93347cb03b403b55a9a765caa38aed1f24c437c6e4a43d287084366aff5a97b4990487f00979288146a29d36989059c8e83b702824348c0f86bc5 testcase.patch"
+sha512sums="
+8f76583c7480eec825080eb6cd94d1b1a1c7c3bc7f297607414c95777e9a9f880b5a0d927a41521389ae50c2ba1b9ec3d76149da47d5997add739970df6b154d Test-Unit-0.25.tar.gz
+47415704a1cd0f18cd95be4f231adb69093af08735f0af81cc78a8178ebd25283311f38c41e1d155e3806ed3b545de0d3c0feedbb8fd4192c04a0b6c516d4e73 20_fix-defined-array-warnings.patch
+417b738b22cf0f31d7393528610cb3362dab93341623dd7526a3cb8abebdc26f766efa162a4960e81ecce7ad77f139f7cf212a5e97ea7d07c17c768d1530ae35 30_fix-xism-test-suite-failures.patch
+40789912e9ff8ed3abbd0bd2d59cd1c0b090277d123aea720a247d0f86debd68756b1be06ae23e22526b80730239520509fc0274f129b19ae220ea84d511d2db 40_make-deep-test-less-fragile.patch
+"
diff --git a/testing/perl-test-unit/testcase.patch b/testing/perl-test-unit/testcase.patch
deleted file mode 100644
index 9f287555915..00000000000
--- a/testing/perl-test-unit/testcase.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/lib/Test/Unit/TestCase.pm
-+++ b/lib/Test/Unit/TestCase.pm
-@@ -103,7 +103,7 @@
- my $class = ref($_[0]) || $_[0];
- my @tests = ();
- no strict 'refs';
-- if (defined(@{"$class\::TESTS"})) {
-+ if (@{"$class\::TESTS"}) {
- push @tests, @{"$class\::TESTS"};
- }
- else {
diff --git a/testing/perl-test-useallmodules/APKBUILD b/testing/perl-test-useallmodules/APKBUILD
index 948867930a1..d83b2fc64cb 100644
--- a/testing/perl-test-useallmodules/APKBUILD
+++ b/testing/perl-test-useallmodules/APKBUILD
@@ -5,7 +5,7 @@ pkgname=perl-test-useallmodules
#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
_pkgreal=Test-UseAllModules
pkgver=0.17
-pkgrel=0
+pkgrel=1
pkgdesc="do use_ok() for all the MANIFESTed modules"
url="https://metacpan.org/release/Test-UseAllModules/"
arch="noarch"
diff --git a/testing/perl-test-utf8/APKBUILD b/testing/perl-test-utf8/APKBUILD
index f0741806244..de55a80e43d 100644
--- a/testing/perl-test-utf8/APKBUILD
+++ b/testing/perl-test-utf8/APKBUILD
@@ -1,9 +1,9 @@
# Contributor: Stuart Cardall <developer@it-offshore.co.uk>
# Maintainer: Stuart Cardall <developer@it-offshore.co.uk>
pkgname=perl-test-utf8
-_realname=Test-utf8
+_pkgreal=Test-utf8
pkgver=1.02
-pkgrel=1
+pkgrel=2
pkgdesc="A collection of tests useful for dealing with utf8 strings"
url="https://github.com/2shortplanks/Test-utf8"
arch="noarch"
@@ -11,8 +11,8 @@ license="GPL-1.0-or-later OR Artistic-1.0-Perl"
depends="perl"
makedepends="perl-module-install"
subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/M/MA/MARKF/$_realname-$pkgver.tar.gz"
-builddir="$srcdir/$_realname-$pkgver"
+source="https://cpan.metacpan.org/authors/id/M/MA/MARKF/Test-utf8-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
build() {
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
diff --git a/testing/perl-test2-tools-explain/APKBUILD b/testing/perl-test2-tools-explain/APKBUILD
new file mode 100644
index 00000000000..93213a5b109
--- /dev/null
+++ b/testing/perl-test2-tools-explain/APKBUILD
@@ -0,0 +1,38 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-test2-tools-explain
+pkgver=0.02
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Test2-Tools-Explain
+pkgdesc="Explain tools for Perl's Test2 framework"
+url="https://metacpan.org/release/Test2-Tools-Explain/"
+arch="noarch"
+license="Artistic-2.0"
+depends="perl perl-test2-suite"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/P/PE/PETDANCE/Test2-Tools-Explain-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+4359db90fede4aa2e6d8e0ee1e006131e372636ba8ab28c12ff1ef5c30e6f7a23fcf4b63d0ad64d54b881a2b344bbcf279cc7d7777982178065c89c3fceabf04 Test2-Tools-Explain-0.02.tar.gz
+"
diff --git a/testing/perl-text-brew/APKBUILD b/testing/perl-text-brew/APKBUILD
index 0bab7819509..e83631b5e70 100644
--- a/testing/perl-text-brew/APKBUILD
+++ b/testing/perl-text-brew/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-text-brew
_pkgreal=Text-Brew
pkgver=0.02
-pkgrel=4
+pkgrel=5
pkgdesc="An implementation of the Brew edit distance"
url="https://metacpan.org/release/Text-Brew"
arch="noarch"
diff --git a/testing/perl-text-markdown-hoedown/APKBUILD b/testing/perl-text-markdown-hoedown/APKBUILD
deleted file mode 100644
index 07ffa3707f6..00000000000
--- a/testing/perl-text-markdown-hoedown/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Automatically generated by apkbuild-cpan, template 3
-# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer: rubicon <rubicon@mailo.com>
-pkgname=perl-text-markdown-hoedown
-#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
-_pkgreal=Text-Markdown-Hoedown
-pkgver=1.03
-pkgrel=0
-pkgdesc="hoedown for Perl5"
-url="https://metacpan.org/release/Text-Markdown-Hoedown/"
-arch="all"
-license="GPL-1.0-or-later OR Artistic-1.0-Perl"
-depends="perl"
-makedepends="perl-dev perl-module-build perl-file-pushd perl-module-build"
-subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/T/TO/TOKUHIROM/Text-Markdown-Hoedown-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgreal-$pkgver"
-
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- perl Build.PL --installdirs=vendor
- ./Build
-}
-
-check() {
- ./Build test
-}
-
-package() {
- ./Build install --destdir="$pkgdir"
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
-}
-
-sha512sums="
-a5ed4e325cddcab61093f3c96bea7bf56739b083bb59b611ee80155ed35f31c0b4c0c3fdbd1bc1c4aa70b31e9ddfde556c4825339bbdac9b4be83a1880b19a60 Text-Markdown-Hoedown-1.03.tar.gz
-"
diff --git a/testing/perl-text-table-any/APKBUILD b/testing/perl-text-table-any/APKBUILD
new file mode 100644
index 00000000000..872c954093b
--- /dev/null
+++ b/testing/perl-text-table-any/APKBUILD
@@ -0,0 +1,39 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-text-table-any
+pkgver=0.117
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Text-Table-Any
+pkgdesc="Generate text table using one of several backends"
+url="https://metacpan.org/release/Text-Table-Any/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-text-table-sprintf"
+checkdepends="perl-test-exception"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/P/PE/PERLANCAR/Text-Table-Any-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+ee0e0b9a4150fc289c49cedc6da49f8757e681aa0d862cad5e67dbb43df73a9a11f98127efbde086335cb4f616943e398f79991aa42d919dd2c85d13a9b8c7d2 Text-Table-Any-0.117.tar.gz
+"
diff --git a/testing/perl-text-table-sprintf/APKBUILD b/testing/perl-text-table-sprintf/APKBUILD
new file mode 100644
index 00000000000..6bc48c20225
--- /dev/null
+++ b/testing/perl-text-table-sprintf/APKBUILD
@@ -0,0 +1,38 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-text-table-sprintf
+pkgver=0.008
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Text-Table-Sprintf
+pkgdesc="Generate simple text tables from 2D arrays using sprintf()"
+url="https://metacpan.org/release/Text-Table-Sprintf/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/P/PE/PERLANCAR/Text-Table-Sprintf-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+e4006c6b139f81441ffd5659da265889674a9c2a8aae1ea354d2e1d8fb61c7abe608eb9771760f4d9effb29d6aa38cab090ae0ad3e9b919bac28e188515b2bfa Text-Table-Sprintf-0.008.tar.gz
+"
diff --git a/testing/perl-throwable/APKBUILD b/testing/perl-throwable/APKBUILD
index 6529605b84f..1ea991d4133 100644
--- a/testing/perl-throwable/APKBUILD
+++ b/testing/perl-throwable/APKBUILD
@@ -3,8 +3,8 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=perl-throwable
_pkgreal=Throwable
-pkgver=1.000
-pkgrel=0
+pkgver=1.001
+pkgrel=1
pkgdesc="A role for classes that can be thrown"
url="https://metacpan.org/release/Throwable"
arch="noarch"
@@ -37,5 +37,5 @@ package() {
}
sha512sums="
-d81d2e3eff78ad396e6e61ad09ecf3c1eaaf33ae24c8b74c8336b568dceb1b62aa03f9e8417df2edc55b0c6806599c7e88ccc43f2b45c11262fd8139706a9bc3 Throwable-1.000.tar.gz
+b0b8d906c1cf7d4f5ea985b91bb2eca191056cd41b12c37560504c825bf57fe4a0cf4423ad53da04a9cd43edeba52321d407f03e556033156071b0c3ef97001a Throwable-1.001.tar.gz
"
diff --git a/testing/perl-tickit-widget-choice/APKBUILD b/testing/perl-tickit-widget-choice/APKBUILD
new file mode 100644
index 00000000000..497b2143c5c
--- /dev/null
+++ b/testing/perl-tickit-widget-choice/APKBUILD
@@ -0,0 +1,37 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-tickit-widget-choice
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Tickit-Widget-Choice
+pkgver=0.07
+pkgrel=0
+pkgdesc="Widget giving a choice from a list"
+url="https://metacpan.org/release/Tickit-Widget-Choice/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-object-pad perl-tickit-widget-menu"
+makedepends="perl-module-build"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/P/PE/PEVANS/Tickit-Widget-Choice-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ perl Build.PL \
+ --installdirs=vendor \
+ --create_packlist=0
+ ./Build
+}
+
+check() {
+ ./Build test
+}
+
+package() {
+ ./Build install --destdir="$pkgdir"
+}
+
+sha512sums="
+4ba3418c35580a297ad993de993e6cdef375405282c58d3868e08a84513d34545b0e853b9f2fa14215d99a8b206c500bdcaf85d5515311cdb0673976968e4afa Tickit-Widget-Choice-0.07.tar.gz
+"
diff --git a/testing/perl-tickit-widget-entry-plugin-completion/APKBUILD b/testing/perl-tickit-widget-entry-plugin-completion/APKBUILD
new file mode 100644
index 00000000000..0a8e3f99436
--- /dev/null
+++ b/testing/perl-tickit-widget-entry-plugin-completion/APKBUILD
@@ -0,0 +1,37 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-tickit-widget-entry-plugin-completion
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Tickit-Widget-Entry-Plugin-Completion
+pkgver=0.02
+pkgrel=0
+pkgdesc="Add word-completion logic to a Tickit::Widget::Entry"
+url="https://metacpan.org/release/Tickit-Widget-Entry-Plugin-Completion/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-object-pad perl-tickit-widgets"
+makedepends="perl-module-build"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/P/PE/PEVANS/Tickit-Widget-Entry-Plugin-Completion-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ perl Build.PL \
+ --installdirs=vendor \
+ --create_packlist=0
+ ./Build
+}
+
+check() {
+ ./Build test
+}
+
+package() {
+ ./Build install --destdir="$pkgdir"
+}
+
+sha512sums="
+296e822b8fd1b916be9e4794527132bcb5f685280668ba50ca1add31d8fa6d3cefae9b0fb070d805c47c1e5cd527656f8f6d5fbea8ef6d5494e6d9d9be8ae382 Tickit-Widget-Entry-Plugin-Completion-0.02.tar.gz
+"
diff --git a/testing/perl-tickit-widget-floatbox/APKBUILD b/testing/perl-tickit-widget-floatbox/APKBUILD
new file mode 100644
index 00000000000..77a85f892f5
--- /dev/null
+++ b/testing/perl-tickit-widget-floatbox/APKBUILD
@@ -0,0 +1,38 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-tickit-widget-floatbox
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Tickit-Widget-FloatBox
+pkgver=0.11
+pkgrel=0
+pkgdesc="Manage a collection of floating widgets"
+url="https://metacpan.org/release/Tickit-Widget-FloatBox/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-object-pad perl-tickit-widgets"
+makedepends="perl-module-build"
+checkdepends="perl-test-identity"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/P/PE/PEVANS/Tickit-Widget-FloatBox-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ perl Build.PL \
+ --installdirs=vendor \
+ --create_packlist=0
+ ./Build
+}
+
+check() {
+ ./Build test
+}
+
+package() {
+ ./Build install --destdir="$pkgdir"
+}
+
+sha512sums="
+42d7f84a03ebae3583734de2ce0d6b08566461a9c25952c1d802f6cbdfe7dc814a2515fb84db46fa664ec686e35a89ae7cf3853e5e41a4393596f2428953d6c8 Tickit-Widget-FloatBox-0.11.tar.gz
+"
diff --git a/testing/perl-tickit-widget-menu/APKBUILD b/testing/perl-tickit-widget-menu/APKBUILD
new file mode 100644
index 00000000000..a0b0685b5ab
--- /dev/null
+++ b/testing/perl-tickit-widget-menu/APKBUILD
@@ -0,0 +1,37 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-tickit-widget-menu
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Tickit-Widget-Menu
+pkgver=0.16
+pkgrel=0
+pkgdesc="Display a menu of choices"
+url="https://metacpan.org/release/Tickit-Widget-Menu/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-object-pad perl-tickit-widgets"
+makedepends="perl-module-build"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/P/PE/PEVANS/Tickit-Widget-Menu-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ perl Build.PL \
+ --installdirs=vendor \
+ --create_packlist=0
+ ./Build
+}
+
+check() {
+ ./Build test
+}
+
+package() {
+ ./Build install --destdir="$pkgdir"
+}
+
+sha512sums="
+ca99764ba51c6cd79c7efc010c2d1296bd57fcb86cf3a4fa059f741831228235ec9b311292027fb260435030d2328a0cf6faee5fb3115f2bb35fb53d7f4c3c86 Tickit-Widget-Menu-0.16.tar.gz
+"
diff --git a/testing/perl-tickit-widget-scrollbox/APKBUILD b/testing/perl-tickit-widget-scrollbox/APKBUILD
new file mode 100644
index 00000000000..dd91c6d3961
--- /dev/null
+++ b/testing/perl-tickit-widget-scrollbox/APKBUILD
@@ -0,0 +1,38 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-tickit-widget-scrollbox
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Tickit-Widget-ScrollBox
+pkgver=0.12
+pkgrel=0
+pkgdesc="Allow a single child widget to be scrolled"
+url="https://metacpan.org/release/Tickit-Widget-ScrollBox/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-object-pad perl-tickit-widgets"
+makedepends="perl-module-build"
+checkdepends="perl-test-refcount"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/P/PE/PEVANS/Tickit-Widget-ScrollBox-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ perl Build.PL \
+ --installdirs=vendor \
+ --create_packlist=0
+ ./Build
+}
+
+check() {
+ ./Build test
+}
+
+package() {
+ ./Build install --destdir="$pkgdir"
+}
+
+sha512sums="
+88715d421196b787bbfcf4c1dea90fa5a86845aa5ce67e4dd9be754099c4ae8f38720a2325d38d20f123ae0cf0953fb53a4aeaeffe999d2c338112160c7d7cc0 Tickit-Widget-ScrollBox-0.12.tar.gz
+"
diff --git a/testing/perl-tie-ixhash/APKBUILD b/testing/perl-tie-ixhash/APKBUILD
deleted file mode 100644
index bf1d8984394..00000000000
--- a/testing/perl-tie-ixhash/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Automatically generated by apkbuild-cpan, template 1
-# Contributor: Francesco Colista <fcolista@alpinelinux.org>
-# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
-pkgname=perl-tie-ixhash
-_pkgreal=Tie-IxHash
-pkgver=1.23
-pkgrel=3
-pkgdesc="ordered associative arrays for Perl"
-url="https://metacpan.org/release/Tie-IxHash"
-arch="noarch"
-license="GPL-1.0-or-later OR Artistic-1.0-Perl"
-depends="perl"
-makedepends="perl-module-build"
-subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/C/CH/CHORNY/$_pkgreal-$pkgver.tar.gz"
-
-builddir="$srcdir/$_pkgreal-$pkgver"
-
-prepare() {
- perl Build.PL installdirs=vendor
-}
-
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- ./Build
-}
-
-check() {
- ./Build test
-}
-
-package() {
- ./Build install destdir="$pkgdir"
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
-}
-
-sha512sums="13e5015cf4e11e3ba828279a5090704b8e4bed26a04e1f486a9d3a63c41eaf38d54d233b20ef5d1886b56e857208c229fd145c4c676b681e3e9c1ed3c252f195 Tie-IxHash-1.23.tar.gz"
diff --git a/testing/perl-time-timegm/APKBUILD b/testing/perl-time-timegm/APKBUILD
index 74dcb69a9d3..e733f6a8874 100644
--- a/testing/perl-time-timegm/APKBUILD
+++ b/testing/perl-time-timegm/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-time-timegm
_pkgreal=Time-timegm
pkgver=0.01
-pkgrel=6
+pkgrel=8
pkgdesc="a UTC version of C<mktime()>"
url="https://metacpan.org/release/Time-timegm"
arch="all"
diff --git a/testing/perl-types-path-tiny/APKBUILD b/testing/perl-types-path-tiny/APKBUILD
new file mode 100644
index 00000000000..d07ca9747d0
--- /dev/null
+++ b/testing/perl-types-path-tiny/APKBUILD
@@ -0,0 +1,39 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-types-path-tiny
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Types-Path-Tiny
+pkgver=0.006
+pkgrel=0
+pkgdesc="Path::Tiny types and coercions for Moose and Moo"
+url="https://metacpan.org/release/Types-Path-Tiny/"
+arch="noarch"
+license="Apache-2.0"
+depends="perl perl-path-tiny perl-type-tiny"
+checkdepends="perl-file-pushd"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN/Types-Path-Tiny-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+9820b5e23bd916895d64573273dd0ffcf8fdc1f0cf6af2db02400bcbbc3611628f03e2ca83f9297dae3b28784279689ba40256f94f0e7ef841bd08e026941b0a Types-Path-Tiny-0.006.tar.gz
+"
diff --git a/testing/perl-unicode-utf8/080_super.t-32bit.patch b/testing/perl-unicode-utf8/080_super.t-32bit.patch
deleted file mode 100644
index 4ed9bff9070..00000000000
--- a/testing/perl-unicode-utf8/080_super.t-32bit.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-Taken from https://rt.cpan.org/Public/Bug/Display.html?id=127007
-
---- a/t/080_super.t
-+++ b/t/080_super.t
-@@ -1,10 +1,12 @@
- #!perl
-
-+use Config; ### Inclusion of the Config module
-+
- use strict;
- use warnings;
- use lib 't';
-
--use Test::More tests => 1537;
-+use Test::More tests => 1537 - ($Config{ptrsize} == 8 ? 0 : 512);
- use Util qw[throws_ok];
-
- BEGIN {
-@@ -16,9 +18,15 @@
- for (my $i = 0x0011_0000; $i < 0x7FFF_FFFF; $i += 0x200000) {
- push @SUPER, $i;
- }
-+
-+ ###
-+ ### 64-bit ptrsize validation against the Config module
-+ ###
-+ if ($Config{ptrsize} == 8) {
- for (my $i = 0x8000_0000; $i < 0xFFFF_FFFF; $i += 0x400000) {
- push @SUPER, $i;
- }
-+ }
- }
-
- foreach my $cp (@SUPER) {
diff --git a/testing/perl-unicode-utf8/APKBUILD b/testing/perl-unicode-utf8/APKBUILD
deleted file mode 100644
index 53e01d1338d..00000000000
--- a/testing/perl-unicode-utf8/APKBUILD
+++ /dev/null
@@ -1,40 +0,0 @@
-# Automatically generated by apkbuild-cpan, template 3
-# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer: rubicon <rubicon@mailo.com>
-pkgname=perl-unicode-utf8
-#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
-_pkgreal=Unicode-UTF8
-pkgver=0.62
-pkgrel=0
-pkgdesc="Encoding and decoding of UTF-8 encoding form"
-url="https://metacpan.org/release/Unicode-UTF8/"
-arch="all"
-license="GPL-1.0-or-later OR Artistic-1.0-Perl"
-depends="perl"
-makedepends="perl-dev perl-test-fatal"
-subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/C/CH/CHANSEN/Unicode-UTF8-$pkgver.tar.gz
- 080_super.t-32bit.patch
- "
-builddir="$srcdir/$_pkgreal-$pkgver"
-
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL INSTALLDIRS=vendor
- make
-}
-
-check() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make test
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
-}
-
-sha512sums="
-056026ac2ee4c101de5ea6017db59f875121dba8fd23ab5c2ae525effb8cf864e8a1c24588bb2a027792e27568742fc75bd5765694027b110afef867a4b982e0 Unicode-UTF8-0.62.tar.gz
-52989081d89565e8dac1143b0670cab23b275f8b42383e0b6a0e7ee8dc1d60f9485ab8c9b725ae8771a400287a7e357ff2caf27cccaee4889cdff7ba8058476e 080_super.t-32bit.patch
-"
diff --git a/testing/perl-uri-db/APKBUILD b/testing/perl-uri-db/APKBUILD
new file mode 100644
index 00000000000..69f0099432e
--- /dev/null
+++ b/testing/perl-uri-db/APKBUILD
@@ -0,0 +1,37 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-uri-db
+pkgver=0.22
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=URI-db
+pkgdesc="Database URIs"
+url="https://metacpan.org/release/URI-db/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-uri perl-uri-nested"
+makedepends="perl-module-build"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/D/DW/DWHEELER/URI-db-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ perl Build.PL \
+ --installdirs=vendor \
+ --create_packlist=0
+ ./Build
+}
+
+check() {
+ ./Build test
+}
+
+package() {
+ ./Build install --destdir="$pkgdir"
+}
+
+sha512sums="
+0812e692218641040e65defb1775519278eb7c21d7848e888c5202ee2ffd6ecbd2060031dd40329f2e067ebdde4a8f4da6bf5cd473fc02744a4a4847e2f1e3dc URI-db-0.22.tar.gz
+"
diff --git a/testing/perl-uri-encode-xs/APKBUILD b/testing/perl-uri-encode-xs/APKBUILD
deleted file mode 100644
index c1f67fd7214..00000000000
--- a/testing/perl-uri-encode-xs/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Automatically generated by apkbuild-cpan, template 1
-# Contributor: Nick Andrew <nick@nick-andrew.net>
-# Maintainer: Nick Andrew <nick@nick-andrew.net>
-pkgname=perl-uri-encode-xs
-_pkgreal=URI-Encode-XS
-pkgver=0.11
-pkgrel=6
-pkgdesc="A Perl URI encoder/decoder using C"
-url="https://metacpan.org/release/URI-Encode-XS"
-arch="all"
-license="BSD-2-Clause"
-makedepends="perl-dev"
-subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/D/DF/DFARRELL/$_pkgreal-$pkgver.tar.gz"
-
-builddir="$srcdir/$_pkgreal-$pkgver"
-
-prepare() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
-}
-
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- make
-}
-
-check() {
- make test
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
-}
-
-sha512sums="2035723d68e67f3dceadc6f92c95558f7d30531bd559f4de07f7f3240e4512ae35b5452213be41fa1ee3be65b1803ccbd7299587373fc2c339fdab8a42479d93 URI-Encode-XS-0.11.tar.gz"
diff --git a/testing/perl-uri-fetch/APKBUILD b/testing/perl-uri-fetch/APKBUILD
new file mode 100644
index 00000000000..6edd7f3ab22
--- /dev/null
+++ b/testing/perl-uri-fetch/APKBUILD
@@ -0,0 +1,39 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-uri-fetch
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=URI-Fetch
+pkgver=0.15
+pkgrel=0
+pkgdesc="Smart URI fetching/caching"
+url="https://metacpan.org/release/URI-Fetch/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-class-errorhandler perl-libwww perl-uri"
+checkdepends="perl-test-requiresinternet"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/N/NE/NEILB/URI-Fetch-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+eb630a628920cdee005a7a4be5c82da635050905a6cbb12b06721a11921f54b72d0c307306a413b95e43def7859eb5ac4e0d9d9400c4fe86750cc71210db7203 URI-Fetch-0.15.tar.gz
+"
diff --git a/testing/perl-uri-nested/APKBUILD b/testing/perl-uri-nested/APKBUILD
new file mode 100644
index 00000000000..eec01862112
--- /dev/null
+++ b/testing/perl-uri-nested/APKBUILD
@@ -0,0 +1,37 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-uri-nested
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=URI-Nested
+pkgver=0.10
+pkgrel=0
+pkgdesc="Nested URIs"
+url="https://metacpan.org/release/URI-Nested/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-uri"
+makedepends="perl-module-build"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/D/DW/DWHEELER/URI-Nested-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ perl Build.PL \
+ --installdirs=vendor \
+ --create_packlist=0
+ ./Build
+}
+
+check() {
+ ./Build test
+}
+
+package() {
+ ./Build install --destdir="$pkgdir"
+}
+
+sha512sums="
+00f6bc5ac77e629b7bd82ba593f839dc2da394c5e8fafc03db2d816fffc149557ece6a50e0b82867c4e458d1dff108535bb3ec4768401a30450f51e5a827b9e4 URI-Nested-0.10.tar.gz
+"
diff --git a/testing/perl-uri-redis/APKBUILD b/testing/perl-uri-redis/APKBUILD
new file mode 100644
index 00000000000..a6c7db48b7e
--- /dev/null
+++ b/testing/perl-uri-redis/APKBUILD
@@ -0,0 +1,39 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-uri-redis
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=URI-redis
+pkgver=0.02
+pkgrel=0
+pkgdesc="URI for Redis connection info"
+url="https://metacpan.org/release/URI-redis/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-uri"
+makedepends="perl-test-most"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/M/ME/MENDEL/URI-redis-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+7f9f62c8b6b3e00e02c45d5237fb3a4c33542be12a4f7cb31ae74711be66e7031d2daa5a18b2fe1c84554dcfee7db7901f8a9fcac4ba609e24dee33ab6253d9c URI-redis-0.02.tar.gz
+"
diff --git a/testing/perl-uri-tcp/APKBUILD b/testing/perl-uri-tcp/APKBUILD
new file mode 100644
index 00000000000..8ba3101be24
--- /dev/null
+++ b/testing/perl-uri-tcp/APKBUILD
@@ -0,0 +1,37 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-uri-tcp
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=URI-tcp
+pkgver=2.0.0
+pkgrel=0
+pkgdesc="TCP connection string"
+url="https://metacpan.org/release/URI-tcp/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-uri"
+makedepends="perl-module-build-tiny"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/J/JA/JASEI/URI-tcp-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ perl Build.PL \
+ --installdirs=vendor \
+ --create_packlist=0
+ ./Build
+}
+
+check() {
+ ./Build test
+}
+
+package() {
+ ./Build install --destdir="$pkgdir"
+}
+
+sha512sums="
+9efbd6f60984474bbb62a1519abbe10aa357bb4107626fbbe21f39987f11ffd800803f0d91cebfb58b1f51174a69b871d96da66481ab2d122158bea63079bb50 URI-tcp-2.0.0.tar.gz
+"
diff --git a/testing/perl-url-encode/APKBUILD b/testing/perl-url-encode/APKBUILD
index a393f1c91aa..f78b6189a52 100644
--- a/testing/perl-url-encode/APKBUILD
+++ b/testing/perl-url-encode/APKBUILD
@@ -4,7 +4,7 @@
pkgname=perl-url-encode
_pkgreal=URL-Encode
pkgver=0.03
-pkgrel=3
+pkgrel=4
pkgdesc="Encoding and decoding of C<application/x-www-form-urlencoded> encoding."
url="https://metacpan.org/release/URL-Encode"
arch="noarch"
diff --git a/testing/perl-variable-disposition/APKBUILD b/testing/perl-variable-disposition/APKBUILD
new file mode 100644
index 00000000000..649fd4f48e8
--- /dev/null
+++ b/testing/perl-variable-disposition/APKBUILD
@@ -0,0 +1,46 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-variable-disposition
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=Variable-Disposition
+pkgver=0.005
+pkgrel=0
+pkgdesc="Dispose of variables"
+url="https://metacpan.org/release/Variable-Disposition/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-future"
+checkdepends="perl-test-checkdeps perl-test-fatal perl-test-refcount"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/T/TE/TEAM/Variable-Disposition-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+doc() {
+ local file; find "$pkgdir" -name "*.pod" | while read -r file; do
+ amove "${file#"$pkgdir"}"
+ done
+ default_doc
+}
+
+sha512sums="
+4ed05d35658867cfd45c08b7b894d9efcdcf4c5465ec551fdd0ae2b497251f0e5d805de9243505a096757965b59f4d5b2d82c80ec6aeac7887d01dbf704b583a Variable-Disposition-0.005.tar.gz
+"
diff --git a/testing/perl-x-tiny/APKBUILD b/testing/perl-x-tiny/APKBUILD
new file mode 100644
index 00000000000..c0cb2ae6eea
--- /dev/null
+++ b/testing/perl-x-tiny/APKBUILD
@@ -0,0 +1,39 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-x-tiny
+pkgver=0.22
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=X-Tiny
+pkgdesc="Super-lightweight exception framework"
+url="https://metacpan.org/release/X-Tiny/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-module-runtime"
+checkdepends="perl-test-failwarnings"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/F/FE/FELIPE/X-Tiny-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+86378f802c74e48ec5ed615429983b7b25d58758d95fa6dfe97aca4f27be8cf361f3218316d5057ec7f54d1e2b7aa32fad8c4046b7b862e83338215503220827 X-Tiny-0.22.tar.gz
+"
diff --git a/testing/perl-xml-atom/APKBUILD b/testing/perl-xml-atom/APKBUILD
new file mode 100644
index 00000000000..ee6a3f21c75
--- /dev/null
+++ b/testing/perl-xml-atom/APKBUILD
@@ -0,0 +1,42 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-xml-atom
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=XML-Atom
+pkgver=0.43
+pkgrel=0
+pkgdesc="Atom feed and API implementation"
+url="https://metacpan.org/release/XML-Atom/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="
+ perl perl-class-data-inheritable perl-datetime
+ perl-datetime-format-atom perl-datetime-timezone
+ perl-html-parser perl-libwww perl-uri
+ perl-xml-libxml perl-xml-xpath
+ "
+makedepends="perl-module-build-tiny"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/M/MI/MIYAGAWA/XML-Atom-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ perl Build.PL \
+ --installdirs=vendor \
+ --create_packlist=0
+ ./Build
+}
+
+check() {
+ ./Build test
+}
+
+package() {
+ ./Build install --destdir="$pkgdir"
+}
+
+sha512sums="
+408d0753d651da7ab4cc50d79b654e9f3680f17830a3fa36e0d1869a4e7aabb17aaf5132a91ff20f1144af09290f109fe7812baa61b23b5b89de384228649fd9 XML-Atom-0.43.tar.gz
+"
diff --git a/testing/perl-xml-bare/APKBUILD b/testing/perl-xml-bare/APKBUILD
index d57e9498eff..e4f7fdb49b8 100644
--- a/testing/perl-xml-bare/APKBUILD
+++ b/testing/perl-xml-bare/APKBUILD
@@ -1,33 +1,28 @@
-# Automatically generated by apkbuild-cpan, template 1
-# Contributor:
-# Maintainer:
+# Automatically generated by apkbuild-cpan, template 3
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=perl-xml-bare
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
_pkgreal=XML-Bare
pkgver=0.53
-pkgrel=9
-pkgdesc="A minimal XML parser / schema checker / pretty-printer using C internally."
-url="https://metacpan.org/release/XML-Bare"
+pkgrel=12
+pkgdesc="Minimal XML parser / schema checker / pretty-printer using C internally"
+url="https://metacpan.org/release/XML-Bare/"
arch="all"
-license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+license="GPL-2.0-or-later OR Artistic-1.0-Perl"
+depends="perl"
makedepends="perl-dev"
subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/C/CO/CODECHILD/$_pkgreal-$pkgver.tar.gz"
-
+source="https://cpan.metacpan.org/authors/id/C/CO/CODECHILD/XML-Bare-$pkgver.tar.gz"
builddir="$srcdir/$_pkgreal-$pkgver"
-prepare() {
- default_prepare
-
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
-}
-
build() {
export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL INSTALLDIRS=vendor
make
}
check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
make test
}
@@ -36,4 +31,6 @@ package() {
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-sha512sums="e765206e5c98ed3a0c29be3a323e25beaa712489d0461e2e7269f5f3383fa805ba3829a9ed4d31cd86f35400c321f8cf519162cc41f52f8ba6992c7016f63520 XML-Bare-0.53.tar.gz"
+sha512sums="
+e765206e5c98ed3a0c29be3a323e25beaa712489d0461e2e7269f5f3383fa805ba3829a9ed4d31cd86f35400c321f8cf519162cc41f52f8ba6992c7016f63520 XML-Bare-0.53.tar.gz
+"
diff --git a/testing/perl-xml-feed/APKBUILD b/testing/perl-xml-feed/APKBUILD
new file mode 100644
index 00000000000..823df7e6948
--- /dev/null
+++ b/testing/perl-xml-feed/APKBUILD
@@ -0,0 +1,45 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-xml-feed
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=XML-Feed
+pkgver=0.63
+pkgrel=0
+pkgdesc="XML Syndication Feed Support"
+url="https://metacpan.org/release/XML-Feed/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="
+ perl perl-class-errorhandler perl-datetime
+ perl-datetime-format-flexible perl-datetime-format-iso8601
+ perl-datetime-format-mail perl-datetime-format-natural
+ perl-datetime-format-w3cdtf perl-feed-find perl-html-parser
+ perl-libwww perl-module-pluggable perl-uri-fetch
+ perl-xml-atom perl-xml-libxml perl-xml-rss
+ "
+makedepends="perl-module-build"
+checkdepends="perl-uri perl-xml-xpath"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/D/DA/DAVECROSS/XML-Feed-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ perl Build.PL \
+ --installdirs=vendor \
+ --create_packlist=0
+ ./Build
+}
+
+check() {
+ ./Build test
+}
+
+package() {
+ ./Build install --destdir="$pkgdir"
+}
+
+sha512sums="
+3c624e71194ef263f0e1105407dc9a9bf5946a6e4964eb4b6ce96427a088db22a4f4821add5beb4602353a8d49883d1f6560ea50256354f3f8e2c1593b45e010 XML-Feed-0.63.tar.gz
+"
diff --git a/testing/perl-xml-libxml-sax-chunkparser/APKBUILD b/testing/perl-xml-libxml-sax-chunkparser/APKBUILD
new file mode 100644
index 00000000000..bed39eb26b1
--- /dev/null
+++ b/testing/perl-xml-libxml-sax-chunkparser/APKBUILD
@@ -0,0 +1,40 @@
+# Automatically generated by apkbuild-cpan, template 3
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-xml-libxml-sax-chunkparser
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=XML-LibXML-SAX-ChunkParser
+pkgver=0.00008
+pkgrel=0
+pkgdesc="Parse XML Chunks Via LibXML SAX"
+url="https://metacpan.org/release/XML-LibXML-SAX-ChunkParser/"
+arch="noarch"
+license="GPL-1.0-or-later OR Artistic-1.0-Perl"
+depends="perl perl-xml-sax perl-xml-libxml"
+makedepends="perl-module-build"
+checkdepends="perl-test-fatal"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/D/DM/DMAKI/XML-LibXML-SAX-ChunkParser-$pkgver.tar.gz
+ fix-tests.patch
+ "
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ perl Build.PL --installdirs=vendor
+ ./Build
+}
+
+check() {
+ ./Build test
+}
+
+package() {
+ ./Build install --destdir="$pkgdir"
+ find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
+}
+
+sha512sums="
+1e6b3702982f8431868e9b8e0e27a86da17b01de297caad187c7d05c64bdd60350be3acb66d49044a456ad4e24b9de4a4a243c64e546e6d4839a65735bf4b9c6 XML-LibXML-SAX-ChunkParser-0.00008.tar.gz
+342e3219e93b5bb915de7bd356137ab26986f8c314eff8893a7ee36c9d91dcc0d3ffc2be8522ca68822057455686300ebccde7faacc03301c6624e2cf400dece fix-tests.patch
+"
diff --git a/testing/perl-xml-libxml-sax-chunkparser/fix-tests.patch b/testing/perl-xml-libxml-sax-chunkparser/fix-tests.patch
new file mode 100644
index 00000000000..83a777bc35d
--- /dev/null
+++ b/testing/perl-xml-libxml-sax-chunkparser/fix-tests.patch
@@ -0,0 +1,52 @@
+Patch-Source: https://github.com/lestrrat-p5/XML-LibXML-SAX-ChunkParser/pull/4
+
+Reference: https://github.com/lestrrat-p5/XML-LibXML-SAX-ChunkParser/issues/3
+--
+From a9423bb8536070e14f85fe9cee6d1dc84d7a7874 Mon Sep 17 00:00:00 2001
+From: Slaven Rezic <slaven@rezic.de>
+Date: Fri, 30 Mar 2018 09:42:46 +0200
+Subject: [PATCH] handle set_document_locator event (#3)
+
+---
+ t/01_basic.t | 12 ++++++++++--
+ 1 file changed, 10 insertions(+), 2 deletions(-)
+
+diff --git a/t/01_basic.t b/t/01_basic.t
+index 546014c..99c2bbc 100644
+--- a/t/01_basic.t
++++ b/t/01_basic.t
+@@ -3,8 +3,14 @@ use strict;
+ our $AUTOLOAD;
+ use Data::Dumper;
+ use Test::More;
++use XML::LibXML;
+
+ my @EVENTS = (
++ ($XML::LibXML::VERSION >= 2.0129 ?
++ {
++ Event => 'set_document_locator'
++ }
++ : ()),
+ {
+ Event => 'start_document'
+ },
+@@ -108,9 +114,11 @@ sub AUTOLOAD {
+
+ package main;
+ use strict;
+-use Test::More( tests => 23 );
++use Test::More;
+ use XML::SAX;
+
++plan tests => $XML::LibXML::VERSION >= 2.0129 ? 25 : 23;
++
+ XML::SAX->add_parser( q{XML::LibXML::SAX::ChunkParser} );
+
+ {
+@@ -140,4 +148,4 @@ XML::SAX->add_parser( q{XML::LibXML::SAX::ChunkParser} );
+ diag("parsing chunk '$chunk'");
+ $parser->parse_chunk($chunk);
+ }
+-}
+\ No newline at end of file
++}
diff --git a/testing/perl-xml-rpc/APKBUILD b/testing/perl-xml-rpc/APKBUILD
index 989e1bf2c96..4d73d695eff 100644
--- a/testing/perl-xml-rpc/APKBUILD
+++ b/testing/perl-xml-rpc/APKBUILD
@@ -5,7 +5,7 @@ pkgname=perl-xml-rpc
_pkgreal=XML-RPC
pkgver=2.0
_pkgver=${pkgver%\.0}
-pkgrel=0
+pkgrel=1
pkgdesc="Pure Perl implementation for an XML-RPC client and server"
url="https://metacpan.org/release/XML-RPC"
arch="noarch"
diff --git a/testing/perl-xml-stream/APKBUILD b/testing/perl-xml-stream/APKBUILD
new file mode 100644
index 00000000000..8fdf4ce7d12
--- /dev/null
+++ b/testing/perl-xml-stream/APKBUILD
@@ -0,0 +1,39 @@
+# Automatically generated by apkbuild-cpan, template 3
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=perl-xml-stream
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=XML-Stream
+pkgver=1.24
+pkgrel=0
+pkgdesc="XML stream support library for XMPP-like protocols"
+url="https://metacpan.org/release/XML-Stream/"
+arch="noarch"
+license="LGPL-2.1-or-later"
+depends="perl perl-authen-sasl perl-io-socket-ssl"
+makedepends="perl-module-build"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/D/DA/DAPATRICK/XML-Stream-$pkgver.tar.gz
+ improvements.patch
+ "
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ perl Build.PL --installdirs=vendor
+ ./Build
+}
+
+check() {
+ ./Build test
+}
+
+package() {
+ ./Build install --destdir="$pkgdir"
+ find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
+}
+
+sha512sums="
+f762e09197fa7f36cee8484e30a6ce972e407d92cbe55bdf96bcc0073187aff34630c5d9dd2555a14cd297e506875dc2ff153b09001c971b020c37340886025d XML-Stream-1.24.tar.gz
+e7b165c381f80e1db2639a71fa13620b8bcdcb6098d9cb414d5a382d06ee2b28dc8834af07e0d587152ab0bed1aceb4c57b332de933262731bb0e9ec1e658180 improvements.patch
+"
diff --git a/testing/perl-xml-stream/improvements.patch b/testing/perl-xml-stream/improvements.patch
new file mode 100644
index 00000000000..0c11b449d3f
--- /dev/null
+++ b/testing/perl-xml-stream/improvements.patch
@@ -0,0 +1,34 @@
+https://github.com/dap/XML-Stream/pull/26
+https://github.com/dap/XML-Stream/issues/19
+https://github.com/dap/XML-Stream/issues/14
+
+--- a/lib/XML/Stream.pm
++++ b/lib/XML/Stream.pm
+@@ -205,8 +205,7 @@
+ XML::Stream::Tools::setup_debug($self, %args);
+
+ my $hostname = hostname();
+- my $address = gethostbyname($hostname) ||
+- die("Cannot resolve $hostname: $!");
++ my $address = gethostbyname($hostname) || "";
+ my $fullname = gethostbyaddr($address,AF_INET) || $hostname;
+
+ $self->debug(1,"new: hostname = ($fullname)");
+@@ -220,7 +219,7 @@
+ $self->{SIDS}->{default}->{ssl} = 0;
+ $self->{SIDS}->{default}->{_tls} = 0;
+ $self->{SIDS}->{default}->{ssl_verify} = 0x01; # verify peer by default
+- $self->{SIDS}->{default}->{ssl_ca_path} = '';
++ $self->{SIDS}->{default}->{ssl_ca_path} = '/etc/ssl/certs';
+ $self->{SIDS}->{default}->{namespace} = "";
+ $self->{SIDS}->{default}->{myhostname} = $fullname;
+ $self->{SIDS}->{default}->{derivedhostname} = $fullname;
+@@ -2164,7 +2163,7 @@
+ $response = $self->{SIDS}->{$sid}->{sasl}->{client}->client_step($challenge);
+ }
+
+- my $response64 = MIME::Base64::encode_base64($response,"");
++ my $response64 = defined($response) ? MIME::Base64::encode_base64($response,"") : "";
+ $self->SASLResponse($sid,$response64);
+ }
+
diff --git a/testing/perl-xs-parse-keyword/APKBUILD b/testing/perl-xs-parse-keyword/APKBUILD
deleted file mode 100644
index 9f84861fcbf..00000000000
--- a/testing/perl-xs-parse-keyword/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Automatically generated by apkbuild-cpan, template 3
-# Contributor: Milan P. Stanić <mps@arvanta.net>
-# Maintainer: Milan P. Stanić <mps@arvanta.net>
-pkgname=perl-xs-parse-keyword
-#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
-_pkgreal=XS-Parse-Keyword
-pkgver=0.23
-pkgrel=0
-pkgdesc="XS functions to assist in parsing keyword syntax"
-url="https://metacpan.org/release/XS-Parse-Keyword/"
-arch="all"
-license="GPL-1.0-or-later OR Artistic-1.0-Perl"
-depends="perl"
-makedepends="perl-dev perl-module-build perl-extutils-cchecker perl-module-build"
-subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/P/PE/PEVANS/XS-Parse-Keyword-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgreal-$pkgver"
-
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- perl Build.PL --installdirs=vendor
- ./Build
-}
-
-check() {
- ./Build test
-}
-
-package() {
- ./Build install --destdir="$pkgdir"
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
-}
-
-sha512sums="
-58edd9990a9b187bb94a6b33cd30ee16961a8140b6c2c836ba8f7883d04f9bf5fe350b471a88c8f7facd4eadcd072f6440d075dfd8736e55cd8b37caf2182557 XS-Parse-Keyword-0.23.tar.gz
-"
diff --git a/testing/perl-xs-parse-sublike/APKBUILD b/testing/perl-xs-parse-sublike/APKBUILD
deleted file mode 100644
index 0d66b9c296c..00000000000
--- a/testing/perl-xs-parse-sublike/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Automatically generated by apkbuild-cpan, template 3
-# Contributor: Milan P. Stanić <mps@arvanta.net>
-# Maintainer: Milan P. Stanić <mps@arvanta.net>
-pkgname=perl-xs-parse-sublike
-#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
-_pkgreal=XS-Parse-Sublike
-pkgver=0.16
-pkgrel=0
-pkgdesc="XS functions to assist in parsing C<sub>-like syntax"
-url="https://metacpan.org/release/XS-Parse-Sublike/"
-arch="all"
-license="GPL-1.0-or-later OR Artistic-1.0-Perl"
-depends="perl"
-makedepends="perl-dev perl-module-build"
-checkdepends="perl-test-fatal"
-subpackages="$pkgname-doc"
-source="https://cpan.metacpan.org/authors/id/P/PE/PEVANS/XS-Parse-Sublike-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgreal-$pkgver"
-
-build() {
- export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
- perl Build.PL --installdirs=vendor
- ./Build
-}
-
-check() {
- ./Build test
-}
-
-package() {
- ./Build install --destdir="$pkgdir"
- find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
-}
-
-sha512sums="
-66615f291b498e132fc3513a18ae7723ad19e7daa5ff1e455d467235d7078d9d546281af38f5aa55a757b1cc8835fbf1e52944f0e580e7f135a574d625ef6613 XS-Parse-Sublike-0.16.tar.gz
-"
diff --git a/testing/persistent-cache-cpp/0001-src-core-Add-library-versioning.patch b/testing/persistent-cache-cpp/0001-src-core-Add-library-versioning.patch
new file mode 100644
index 00000000000..053e13232c4
--- /dev/null
+++ b/testing/persistent-cache-cpp/0001-src-core-Add-library-versioning.patch
@@ -0,0 +1,74 @@
+From 31fb33ab9cfed42cf28ec012049b178109cfa9fe Mon Sep 17 00:00:00 2001
+From: OPNA2608 <opna2608@protonmail.com>
+Date: Wed, 31 Jan 2024 12:01:27 +0100
+Subject: [PATCH] src/core: Add library versioning
+
+---
+ CMakeLists.txt | 9 ++-------
+ data/libpersistent-cache-cpp.pc.in | 2 +-
+ src/core/CMakeLists.txt | 8 ++++++++
+ 3 files changed, 11 insertions(+), 8 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 98b6bec..ea76225 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -1,11 +1,11 @@
+-cmake_minimum_required(VERSION 2.8.11)
++cmake_minimum_required(VERSION 3.0)
+
+ # Default install location. Must be set here, before setting the project.
+ if (NOT DEFINED CMAKE_INSTALL_PREFIX)
+ set(CMAKE_INSTALL_PREFIX ${CMAKE_BINARY_DIR}/install CACHE PATH "" FORCE)
+ endif()
+
+-project(persistent-cache-cpp C CXX)
++project(persistent-cache-cpp VERSION 1.0.7 LANGUAGES C CXX)
+
+ option(BUILD_SHARED_LIBS "Build library as shared" OFF)
+
+@@ -13,11 +13,6 @@ set(CMAKE_INCLUDE_CURRENT_DIR ON)
+
+ set(LIBNAME persistent-cache-cpp)
+
+-set(VERSION_MAJOR 1)
+-set(VERSION_MINOR 0)
+-set(VERSION_MICRO 7)
+-set(LIBVERSION "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_MICRO}")
+-
+ string(TOLOWER "${CMAKE_BUILD_TYPE}" cmake_build_type_lower) # Build types should always be lower case
+
+ set(ACCEPTED_BUILD_TYPES "" none release debug relwithdebinfo coverage)
+diff --git a/data/libpersistent-cache-cpp.pc.in b/data/libpersistent-cache-cpp.pc.in
+index 565a209..fbe8445 100644
+--- a/data/libpersistent-cache-cpp.pc.in
++++ b/data/libpersistent-cache-cpp.pc.in
+@@ -4,6 +4,6 @@ libdir=${prefix}/@CMAKE_INSTALL_LIBDIR@
+
+ Name: lib@LIBNAME@
+ Description: Cache of key-value pairs with persistent storage for C++
+-Version: @LIBVERSION@
++Version: @PROJECT_VERSION@
+ Libs: -L${libdir} -l@LIBNAME@ @PROPAGATED_LINK_FLAGS@
+ Cflags: -I${includedir}
+diff --git a/src/core/CMakeLists.txt b/src/core/CMakeLists.txt
+index 62b4b7a..e1fc94c 100644
+--- a/src/core/CMakeLists.txt
++++ b/src/core/CMakeLists.txt
+@@ -11,5 +11,13 @@ set(CACHE_SRC
+ add_library(${LIBNAME} ${CACHE_SRC})
+ target_link_libraries(${LIBNAME} ${LEVELDB})
+
++set_target_properties(
++ ${LIBNAME}
++
++ PROPERTIES
++ VERSION "${PROJECT_VERSION}"
++ SOVERSION "${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}"
++)
++
+ install(TARGETS ${LIBNAME}
+ DESTINATION lib/${CMAKE_LIBRARY_ARCHITECTURE})
+--
+2.43.0
+
diff --git a/testing/persistent-cache-cpp/APKBUILD b/testing/persistent-cache-cpp/APKBUILD
new file mode 100644
index 00000000000..e9d6205666f
--- /dev/null
+++ b/testing/persistent-cache-cpp/APKBUILD
@@ -0,0 +1,55 @@
+# Maintainer: Luca Weiss <luca@z3ntu.xyz>
+# Contributor: Brandon Boese <brandonboese@protonmail.com>
+pkgname=persistent-cache-cpp
+pkgver=1.0.7
+pkgrel=0
+pkgdesc="Cache of key-value pairs with persistent storage for C++ 11"
+url="https://gitlab.com/ubports/development/core/lib-cpp/persistent-cache-cpp"
+arch="all"
+license="LGPL-3.0-only"
+depends="
+ dconf
+ "
+depends_dev="
+ boost-dev
+ leveldb-dev
+ "
+makedepends="
+ $depends_dev
+ cmake
+ cmake-extras
+ gtest-dev
+ samurai
+ "
+checkdepends="
+ xvfb-run
+ "
+subpackages="$pkgname-dev $pkgname-doc"
+source="https://gitlab.com/ubports/development/core/lib-cpp/persistent-cache-cpp/-/archive/$pkgver/persistent-cache-cpp-$pkgver.tar.gz
+ 0001-src-core-Add-library-versioning.patch
+ remove-docs-html-from-makefile.patch
+ "
+options="!check" # 91% tests passed, 1 tests failed out of 11
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=None
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+752c758155510c2168c2a4982938867e133b8d8b2bbf3882bce8a2d83fd1547bbcee07dcd239b1732d1dda68b645f5e5fb1c02d1b316218fbb82fb8463ef8afb persistent-cache-cpp-1.0.7.tar.gz
+0bdfcdf80548fe827850f8813bf084e11cddd6bf596093d8d005528ecaa86fc0b752d07432fa588e1e95e292cc0c0df6c16e4f957aa016de7a844d20b7f65a9c 0001-src-core-Add-library-versioning.patch
+36ff4a45f203df026c595b0bdc39dd1a40a8fd43dbc30d06184bbfa9a34d26a469e2faca8574b7a18bfbdcd6da36a1f1dd7f486a01f59db4d7d1264506916f30 remove-docs-html-from-makefile.patch
+"
diff --git a/testing/persistent-cache-cpp/remove-docs-html-from-makefile.patch b/testing/persistent-cache-cpp/remove-docs-html-from-makefile.patch
new file mode 100644
index 00000000000..f5d44564ca7
--- /dev/null
+++ b/testing/persistent-cache-cpp/remove-docs-html-from-makefile.patch
@@ -0,0 +1,22 @@
+From 3c00fe8ce7eb6e7e0fbe79457e0f424da0dd01dd Mon Sep 17 00:00:00 2001
+From: Brandon Boese <brandonboese@protonmail.com>
+Date: Thu, 26 Oct 2023 02:45:23 -0400
+Subject: [PATCH] remove docs/html from makefile
+
+---
+ CMakeLists.txt | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 0f0d04f..7e8b0e8 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -126,5 +126,3 @@ add_doxygen(
+ *::Priv
+ ALL
+ )
+-install(DIRECTORY ${CMAKE_BINARY_DIR}/doc/html
+- DESTINATION share/doc/${LIBNAME})
+--
+2.42.0
+
diff --git a/testing/pest-language-server/APKBUILD b/testing/pest-language-server/APKBUILD
new file mode 100644
index 00000000000..d4eb01ccb26
--- /dev/null
+++ b/testing/pest-language-server/APKBUILD
@@ -0,0 +1,38 @@
+# Contributor: lauren n. liberda <lauren@selfisekai.rocks>
+# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
+pkgname=pest-language-server
+pkgver=0.3.9
+pkgrel=0
+pkgdesc="Language Server for Pest"
+url="https://github.com/pest-parser/pest-ide-tools"
+arch="all"
+license="Apache-2.0"
+makedepends="cargo cargo-auditable openssl-dev"
+source="
+ https://github.com/pest-parser/pest-ide-tools/archive/refs/tags/v$pkgver/pest-ls-$pkgver.tar.gz
+ use-openssl.patch
+ "
+builddir="$srcdir/pest-ide-tools-$pkgver"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --locked --target="$CBUILD"
+}
+
+build() {
+ cargo auditable build -p pest-language-server --frozen --release
+}
+
+check() {
+ cargo test -p pest-language-server --frozen
+}
+
+package() {
+ install -Dm755 target/release/pest-language-server "$pkgdir"/usr/bin/pest-language-server
+}
+
+sha512sums="
+cb9eaaf7798395680af2c00415f4a8cd2a3b875c44c3304b1a605308dccf9756adc991285c26f67c73ad0f4775d1ef724e5349eecce1bd4f461c9171674d2b9d pest-ls-0.3.9.tar.gz
+37b106a44b32ba80e867d51f33499d148c3ffceb17c57482006e64b199575799dc42effcf325f7042dd3bf17ebddc59f4aaa40282663fd96b3dddc21534eb92d use-openssl.patch
+"
diff --git a/testing/pest-language-server/use-openssl.patch b/testing/pest-language-server/use-openssl.patch
new file mode 100644
index 00000000000..ddfce320b79
--- /dev/null
+++ b/testing/pest-language-server/use-openssl.patch
@@ -0,0 +1,531 @@
+--- ./language-server/Cargo.toml.orig
++++ ./language-server/Cargo.toml
+@@ -17,7 +17,7 @@
+ pest_meta = "2.7.8"
+ reqwest = { version = "0.12.2", features = [
+ "json",
+- "rustls-tls",
++ "native-tls",
+ ], default-features = false }
+ serde = { version = "1.0.197", features = ["derive"] }
+ serde_json = "1.0.115"
+--- ./Cargo.lock.orig
++++ ./Cargo.lock
+@@ -130,6 +130,12 @@
+ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
+
+ [[package]]
++name = "bitflags"
++version = "2.5.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1"
++
++[[package]]
+ name = "block-buffer"
+ version = "0.10.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+@@ -228,6 +234,22 @@
+ checksum = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7"
+
+ [[package]]
++name = "core-foundation"
++version = "0.9.4"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f"
++dependencies = [
++ "core-foundation-sys",
++ "libc",
++]
++
++[[package]]
++name = "core-foundation-sys"
++version = "0.8.6"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f"
++
++[[package]]
+ name = "cpufeatures"
+ version = "0.2.12"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+@@ -305,12 +327,43 @@
+ ]
+
+ [[package]]
++name = "errno"
++version = "0.3.8"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245"
++dependencies = [
++ "libc",
++ "windows-sys 0.52.0",
++]
++
++[[package]]
++name = "fastrand"
++version = "2.0.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "658bd65b1cf4c852a3cc96f18a8ce7b5640f6b703f905c7d74532294c2a63984"
++
++[[package]]
+ name = "fnv"
+ version = "1.0.7"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
+
+ [[package]]
++name = "foreign-types"
++version = "0.3.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
++dependencies = [
++ "foreign-types-shared",
++]
++
++[[package]]
++name = "foreign-types-shared"
++version = "0.1.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
++
++[[package]]
+ name = "form_urlencoded"
+ version = "1.2.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+@@ -422,17 +475,6 @@
+ ]
+
+ [[package]]
+-name = "getrandom"
+-version = "0.2.12"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "190092ea657667030ac6a35e305e62fc4dd69fd98ac98631e5d3a2b1575a12b5"
+-dependencies = [
+- "cfg-if",
+- "libc",
+- "wasi",
+-]
+-
+-[[package]]
+ name = "gimli"
+ version = "0.28.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+@@ -535,19 +577,18 @@
+ ]
+
+ [[package]]
+-name = "hyper-rustls"
+-version = "0.26.0"
++name = "hyper-tls"
++version = "0.6.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "a0bea761b46ae2b24eb4aef630d8d1c398157b6fc29e6350ecf090a0b70c952c"
++checksum = "70206fc6890eaca9fde8a0bf71caa2ddfc9fe045ac9e5c70df101a7dbde866e0"
+ dependencies = [
+- "futures-util",
+- "http",
++ "bytes",
++ "http-body-util",
+ "hyper",
+ "hyper-util",
+- "rustls",
+- "rustls-pki-types",
++ "native-tls",
+ "tokio",
+- "tokio-rustls",
++ "tokio-native-tls",
+ "tower-service",
+ ]
+
+@@ -629,12 +670,24 @@
+ ]
+
+ [[package]]
++name = "lazy_static"
++version = "1.4.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
++
++[[package]]
+ name = "libc"
+ version = "0.2.153"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd"
+
+ [[package]]
++name = "linux-raw-sys"
++version = "0.4.13"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c"
++
++[[package]]
+ name = "lock_api"
+ version = "0.4.11"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+@@ -656,7 +709,7 @@
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "c66bfd44a06ae10647fe3f8214762e9369fd4248df1350924b4ef9e770a85ea1"
+ dependencies = [
+- "bitflags",
++ "bitflags 1.3.2",
+ "serde",
+ "serde_json",
+ "serde_repr",
+@@ -696,6 +749,24 @@
+ ]
+
+ [[package]]
++name = "native-tls"
++version = "0.2.11"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "07226173c32f2926027b63cce4bcd8076c3552846cbe7925f3aaffeac0a3b92e"
++dependencies = [
++ "lazy_static",
++ "libc",
++ "log",
++ "openssl",
++ "openssl-probe",
++ "openssl-sys",
++ "schannel",
++ "security-framework",
++ "security-framework-sys",
++ "tempfile",
++]
++
++[[package]]
+ name = "nias"
+ version = "0.5.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+@@ -727,6 +798,50 @@
+ checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92"
+
+ [[package]]
++name = "openssl"
++version = "0.10.64"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "95a0481286a310808298130d22dd1fef0fa571e05a8f44ec801801e84b216b1f"
++dependencies = [
++ "bitflags 2.5.0",
++ "cfg-if",
++ "foreign-types",
++ "libc",
++ "once_cell",
++ "openssl-macros",
++ "openssl-sys",
++]
++
++[[package]]
++name = "openssl-macros"
++version = "0.1.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
++dependencies = [
++ "proc-macro2",
++ "quote",
++ "syn",
++]
++
++[[package]]
++name = "openssl-probe"
++version = "0.1.5"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf"
++
++[[package]]
++name = "openssl-sys"
++version = "0.9.101"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "dda2b0f344e78efc2facf7d195d098df0dd72151b26ab98da807afc26c198dff"
++dependencies = [
++ "cc",
++ "libc",
++ "pkg-config",
++ "vcpkg",
++]
++
++[[package]]
+ name = "parking_lot"
+ version = "0.12.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+@@ -864,6 +979,12 @@
+ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
+
+ [[package]]
++name = "pkg-config"
++version = "0.3.30"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec"
++
++[[package]]
+ name = "proc-macro2"
+ version = "1.0.79"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+@@ -887,7 +1008,7 @@
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa"
+ dependencies = [
+- "bitflags",
++ "bitflags 1.3.2",
+ ]
+
+ [[package]]
+@@ -921,66 +1042,48 @@
+ "http-body",
+ "http-body-util",
+ "hyper",
+- "hyper-rustls",
++ "hyper-tls",
+ "hyper-util",
+ "ipnet",
+ "js-sys",
+ "log",
+ "mime",
++ "native-tls",
+ "once_cell",
+ "percent-encoding",
+ "pin-project-lite",
+- "rustls",
+ "rustls-pemfile",
+- "rustls-pki-types",
+ "serde",
+ "serde_json",
+ "serde_urlencoded",
+ "sync_wrapper",
+ "tokio",
+- "tokio-rustls",
++ "tokio-native-tls",
+ "tower-service",
+ "url",
+ "wasm-bindgen",
+ "wasm-bindgen-futures",
+ "web-sys",
+- "webpki-roots",
+ "winreg",
+ ]
+
+ [[package]]
+-name = "ring"
+-version = "0.17.8"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d"
+-dependencies = [
+- "cc",
+- "cfg-if",
+- "getrandom",
+- "libc",
+- "spin",
+- "untrusted",
+- "windows-sys 0.52.0",
+-]
+-
+-[[package]]
+ name = "rustc-demangle"
+ version = "0.1.23"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76"
+
+ [[package]]
+-name = "rustls"
+-version = "0.22.3"
++name = "rustix"
++version = "0.38.32"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "99008d7ad0bbbea527ec27bddbc0e432c5b87d8175178cee68d2eec9c4a1813c"
++checksum = "65e04861e65f21776e67888bfbea442b3642beaa0138fdb1dd7a84a52dffdb89"
+ dependencies = [
+- "log",
+- "ring",
+- "rustls-pki-types",
+- "rustls-webpki",
+- "subtle",
+- "zeroize",
++ "bitflags 2.5.0",
++ "errno",
++ "libc",
++ "linux-raw-sys",
++ "windows-sys 0.52.0",
+ ]
+
+ [[package]]
+@@ -993,23 +1096,6 @@
+ ]
+
+ [[package]]
+-name = "rustls-pki-types"
+-version = "1.4.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "868e20fada228fefaf6b652e00cc73623d54f8171e7352c18bb281571f2d92da"
+-
+-[[package]]
+-name = "rustls-webpki"
+-version = "0.102.2"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "faaa0a62740bedb9b2ef5afa303da42764c012f743917351dc9a237ea1663610"
+-dependencies = [
+- "ring",
+- "rustls-pki-types",
+- "untrusted",
+-]
+-
+-[[package]]
+ name = "rusty-hook"
+ version = "0.11.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+@@ -1037,12 +1123,44 @@
+ ]
+
+ [[package]]
++name = "schannel"
++version = "0.1.23"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "fbc91545643bcf3a0bbb6569265615222618bdf33ce4ffbbd13c4bbd4c093534"
++dependencies = [
++ "windows-sys 0.52.0",
++]
++
++[[package]]
+ name = "scopeguard"
+ version = "1.2.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
+
+ [[package]]
++name = "security-framework"
++version = "2.9.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "05b64fb303737d99b81884b2c63433e9ae28abebe5eb5045dcdd175dc2ecf4de"
++dependencies = [
++ "bitflags 1.3.2",
++ "core-foundation",
++ "core-foundation-sys",
++ "libc",
++ "security-framework-sys",
++]
++
++[[package]]
++name = "security-framework-sys"
++version = "2.9.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e932934257d3b408ed8f30db49d85ea163bfe74961f017f405b025af298f0c7a"
++dependencies = [
++ "core-foundation-sys",
++ "libc",
++]
++
++[[package]]
+ name = "serde"
+ version = "1.0.197"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+@@ -1142,24 +1260,12 @@
+ ]
+
+ [[package]]
+-name = "spin"
+-version = "0.9.8"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67"
+-
+-[[package]]
+ name = "strsim"
+ version = "0.11.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "5ee073c9e4cd00e28217186dbe12796d692868f432bf2e97ee73bed0c56dfa01"
+
+ [[package]]
+-name = "subtle"
+-version = "2.5.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc"
+-
+-[[package]]
+ name = "syn"
+ version = "2.0.53"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+@@ -1177,6 +1283,18 @@
+ checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160"
+
+ [[package]]
++name = "tempfile"
++version = "3.10.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1"
++dependencies = [
++ "cfg-if",
++ "fastrand",
++ "rustix",
++ "windows-sys 0.52.0",
++]
++
++[[package]]
+ name = "text-utils"
+ version = "0.2.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+@@ -1261,13 +1379,12 @@
+ ]
+
+ [[package]]
+-name = "tokio-rustls"
+-version = "0.25.0"
++name = "tokio-native-tls"
++version = "0.3.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "775e0c0f0adb3a2f22a00c4745d728b479985fc15ee7ca6a2608388c5569860f"
++checksum = "bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2"
+ dependencies = [
+- "rustls",
+- "rustls-pki-types",
++ "native-tls",
+ "tokio",
+ ]
+
+@@ -1440,12 +1557,6 @@
+ checksum = "e51733f11c9c4f72aa0c160008246859e340b00807569a0da0e7a1079b27ba85"
+
+ [[package]]
+-name = "untrusted"
+-version = "0.9.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1"
+-
+-[[package]]
+ name = "url"
+ version = "2.5.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+@@ -1464,6 +1575,12 @@
+ checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a"
+
+ [[package]]
++name = "vcpkg"
++version = "0.2.15"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426"
++
++[[package]]
+ name = "version_check"
+ version = "0.9.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+@@ -1571,15 +1688,6 @@
+ ]
+
+ [[package]]
+-name = "webpki-roots"
+-version = "0.26.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "b3de34ae270483955a94f4b21bdaaeb83d508bb84a01435f393818edb0012009"
+-dependencies = [
+- "rustls-pki-types",
+-]
+-
+-[[package]]
+ name = "winapi"
+ version = "0.3.9"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+@@ -1751,9 +1859,3 @@
+ "cfg-if",
+ "windows-sys 0.48.0",
+ ]
+-
+-[[package]]
+-name = "zeroize"
+-version = "1.7.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d"
diff --git a/testing/pfetch/APKBUILD b/testing/pfetch/APKBUILD
index d10ddccb77f..92799f786f3 100644
--- a/testing/pfetch/APKBUILD
+++ b/testing/pfetch/APKBUILD
@@ -2,13 +2,13 @@
# Maintainer: Johannes Heimansberg <git@jhe.dedyn.io>
pkgname=pfetch
pkgver=0.6.0
-pkgrel=0
+pkgrel=1
pkgdesc="System information tool written in POSIX sh"
url="https://github.com/dylanaraps/pfetch"
arch="noarch"
license="MIT"
options="!check" # There is no test suite
-source="$pkgname-$pkgver.tar.gz::$url/archive/$pkgver.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/dylanaraps/pfetch/archive/$pkgver.tar.gz"
package() {
install -Dm755 pfetch "$pkgdir"/usr/bin/pfetch
diff --git a/testing/pfqueue/APKBUILD b/testing/pfqueue/APKBUILD
index b4e0596a3f4..fb31a03e436 100644
--- a/testing/pfqueue/APKBUILD
+++ b/testing/pfqueue/APKBUILD
@@ -2,9 +2,9 @@
# Maintainer: Milan P. Stanić <mps@arvanta.net>
pkgname=pfqueue
pkgver=0.5.6
-pkgrel=0
+pkgrel=1
pkgdesc="queue scanner for postfix"
-url="http://pfqueue.sourceforge.net/"
+url="https://pfqueue.sourceforge.net/"
arch="all"
license="GPL-2.0-or-later"
makedepends="autoconf automake libtool ncurses-dev"
diff --git a/testing/pg_activity/APKBUILD b/testing/pg_activity/APKBUILD
deleted file mode 100644
index 31d17868ee0..00000000000
--- a/testing/pg_activity/APKBUILD
+++ /dev/null
@@ -1,28 +0,0 @@
-# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
-pkgname=pg_activity
-pkgver=2.1.5
-pkgrel=1
-pkgdesc="A top like application for PostgreSQL server activity monitoring"
-url="https://github.com/dalibo/pg_activity"
-arch="noarch"
-license="PostgreSQL"
-depends="python3 py3-attrs py3-blessed py3-humanize py3-psutil py3-psycopg2"
-checkdepends="py3-pytest"
-makedepends="py3-setuptools"
-source="https://github.com/dalibo/pg_activity/archive/v$pkgver/pg_activity-$pkgver.tar.gz"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- # FIXME: test_ui fails, probably missing dependency?
- pytest --ignore=tests/test_ui.txt
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="78d6560ec15b435eeeeaa132851337f04822d42e4288425d85a78842f321ad2c426041cb953fabc8f3f406b9d68e4001a3df5ba2c9223bc0facc2a65619979e0 pg_activity-2.1.5.tar.gz"
diff --git a/testing/phonon-backend-vlc/APKBUILD b/testing/phonon-backend-vlc/APKBUILD
new file mode 100644
index 00000000000..220572f0c05
--- /dev/null
+++ b/testing/phonon-backend-vlc/APKBUILD
@@ -0,0 +1,56 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: team/kde <bribbers@disroot.org>
+
+# The group tag is just to easily find this APKBUILD by some scripts for automation
+# group=kde-other
+pkgname=phonon-backend-vlc
+pkgver=0.12.0
+pkgrel=0
+pkgdesc="Phonon VLC backend"
+url="https://userbase.kde.org/Phonon"
+# armhf blocked by extra-cmake-modules
+# s390x blocked by vlc
+arch="all !armhf !s390x"
+license="LGPL-2.1-or-later"
+makedepends="
+ extra-cmake-modules
+ phonon-dev
+ qt5-qtbase-dev
+ qt5-qttools-dev
+ qt6-qtbase-dev
+ qt6-qttools-dev
+ samurai
+ vlc-dev
+ "
+subpackages="$pkgname-lang $pkgname-qt5 $pkgname-qt6"
+_repo_url="https://invent.kde.org/libraries/phonon-vlc.git"
+source="https://download.kde.org/stable/phonon/phonon-backend-vlc/$pkgver/phonon-backend-vlc-$pkgver.tar.xz"
+options="!check" # No tests available
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=RelWithDebInfo \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+qt5() {
+ amove usr/lib/qt5/plugins/phonon4qt5_backend
+}
+
+qt6() {
+ amove usr/lib/qt5/plugins/phonon4qt6_backend
+}
+
+sha512sums="
+78f5ead829d5025c7cb9e01b33819514d795651d1d932c03bd8cc2ad5d427e5aaaeeb6016820d5a7bb9907f6df1142a0fbc097830d7c63b01f77d2167a0c9264 phonon-backend-vlc-0.12.0.tar.xz
+"
diff --git a/testing/phoronix-test-suite/APKBUILD b/testing/phoronix-test-suite/APKBUILD
index d48b50eac65..1f86d16b1ce 100644
--- a/testing/phoronix-test-suite/APKBUILD
+++ b/testing/phoronix-test-suite/APKBUILD
@@ -1,16 +1,23 @@
# Contributor: Lucas Ramage <ramage.lucas@protonmail.com>
# Maintainer: Dominika Liberda <ja@sdomi.pl>
pkgname=phoronix-test-suite
-pkgver=10.8.3
-pkgrel=0
+pkgver=10.8.4
+pkgrel=2
pkgdesc="The most comprehensive testing and benchmarking platform available for Linux"
url="https://www.phoronix-test-suite.com/"
arch="noarch"
license="GPL-3.0-or-later"
-depends="php8 php8-dom php8-zip php8-simplexml php8-pcntl php8-curl"
+_php=php82
+depends="$_php $_php-dom $_php-zip $_php-simplexml $_php-pcntl $_php-curl"
subpackages="$pkgname-doc $pkgname-bash-completion"
-provides="phoromatic-server phoromatic-client"
-source="$pkgname-$pkgver.tar.gz::https://github.com/phoronix-test-suite/phoronix-test-suite/archive/v$pkgver.tar.gz"
+provides="phoromatic-server=$pkgver-r$pkgrel phoromatic-client=$pkgver-r$pkgrel"
+source="$pkgname-$pkgver.tar.gz::https://github.com/phoronix-test-suite/phoronix-test-suite/archive/v$pkgver.tar.gz
+ php82-1.patch::https://github.com/phoronix-test-suite/phoronix-test-suite/commit/f9f5ed8606299f73ef2adc7173cc52089cede6c8.diff
+ php82-2.patch::https://github.com/phoronix-test-suite/phoronix-test-suite/commit/cd59f0a38a036b969e862cd47e1dbfa1cbb484d2.diff
+ php82-3.patch::https://github.com/phoronix-test-suite/phoronix-test-suite/commit/d44c65a62ec8be2f25fb936e39d531ea28878576.diff
+ appdata.patch
+ php-discovery.patch
+ "
options="!check" # no tests
package() {
@@ -22,5 +29,10 @@ package() {
}
sha512sums="
-4b6edb88c91bea6121cb1ce27d017ee223096659a5dc760afb96dd5da4c56680d21870b3f0d124524bc0ad5b233699adebb0e16ddb31a38fde9e70302ce42533 phoronix-test-suite-10.8.3.tar.gz
+ca79369fd7752164dc5315c16c2e8dce615f4c9cf352674193ac10ad9025de5d1171dc307f2bab486da3a945bf828aa124e9896f929a0854272cee7847f3d578 phoronix-test-suite-10.8.4.tar.gz
+7b761fec331ff9a2cc95dff382c4e99df6d65433de0a6057d034ff8a1940821b292fc0f462ad0d8c23f69163a195705b34dd82708d9fd789f2113397daffc98b php82-1.patch
+effb085163a837665813d99d4be689ba4182aa43cf3f7874a34e5195e5bdd70869c8a3bb7072459f309a34864ae13ac9da4829c840bb57da3fce7368107830e0 php82-2.patch
+fb7294989654c34880365c48932725b533a726f37d00f720869265683384c24cee4a9c6fb4e629ee0521f04a017b13f1160da0cfb129aac423d02d567f92f050 php82-3.patch
+03419864bce834bf8762117a481aa79af8ab7d5a1272c085d9b8b58bfc965b00e2f479f29962b9f1fa5f5240805203cdfb652f76e477163d4eb15f35547a3176 appdata.patch
+0005e338d214f46a845a2607205f027827a3420005a2ef6ffc253fb621f22f9283ce4e4a16b6889dc72af73e868f06557acd03b2dc9a8a76b08deb42c8e8751c php-discovery.patch
"
diff --git a/testing/phoronix-test-suite/appdata.patch b/testing/phoronix-test-suite/appdata.patch
new file mode 100644
index 00000000000..9e13a127df2
--- /dev/null
+++ b/testing/phoronix-test-suite/appdata.patch
@@ -0,0 +1,22 @@
+diff --git a/install-sh b/install-sh
+index f6228cd..c7bd0e8 100755
+--- a/install-sh
++++ b/install-sh
+@@ -50,7 +50,7 @@ rm -rf $DESTDIR$INSTALL_PREFIX/share/phoronix-test-suite/
+ rm -rf $DESTDIR$INSTALL_PREFIX/share/doc/phoronix-test-suite/
+
+ mkdir -p $DESTDIR$INSTALL_PREFIX/bin/
+-mkdir -p $DESTDIR$INSTALL_PREFIX/share/appdata/
++mkdir -p $DESTDIR$INSTALL_PREFIX/share/metainfo/
+ mkdir -p $DESTDIR$INSTALL_PREFIX/share/applications/
+ mkdir -p $DESTDIR$INSTALL_PREFIX/share/icons/hicolor/48x48/apps/
+ mkdir -p $DESTDIR$INSTALL_PREFIX/share/man/man1/
+@@ -74,7 +74,7 @@ cp pts-core/static/bash_completion $DESTDIR$INSTALL_PREFIX/../etc/bash_completio
+ cp pts-core/static/images/phoronix-test-suite.png $DESTDIR$INSTALL_PREFIX/share/icons/hicolor/48x48/apps/phoronix-test-suite.png
+ cp pts-core/static/phoronix-test-suite.desktop $DESTDIR$INSTALL_PREFIX/share/applications/
+ cp pts-core/static/phoronix-test-suite-launcher.desktop $DESTDIR$INSTALL_PREFIX/share/applications/
+-cp pts-core/static/phoronix-test-suite.appdata.xml $DESTDIR$INSTALL_PREFIX/share/appdata/
++cp pts-core/static/phoronix-test-suite.appdata.xml $DESTDIR$INSTALL_PREFIX/share/metainfo/
+
+ mkdir -p $DESTDIR$INSTALL_PREFIX/../usr/lib/systemd/system/
+ cp deploy/*-systemd/*.service $DESTDIR$INSTALL_PREFIX/../usr/lib/systemd/system/
diff --git a/testing/phoronix-test-suite/php-discovery.patch b/testing/phoronix-test-suite/php-discovery.patch
new file mode 100644
index 00000000000..9d1975ac33e
--- /dev/null
+++ b/testing/phoronix-test-suite/php-discovery.patch
@@ -0,0 +1,14 @@
+--- a/phoronix-test-suite
++++ b/phoronix-test-suite
+@@ -67,9 +67,9 @@
+ if [ ! "X$PHP_BIN" = "X" ] && [ -x $PHP_BIN ]
+ then
+ export PHP_BIN=$PHP_BIN
+-elif [ -x /usr/bin/php8 ] || [ -x /usr/local/bin/php8 ] || [ -x /usr/pkg/bin/php8 ]
++elif [ -x /usr/bin/php82 ] || [ -x /usr/local/bin/php8 ] || [ -x /usr/pkg/bin/php8 ]
+ then
+- export PHP_BIN="php8"
++ export PHP_BIN="php82"
+ elif [ -x /usr/bin/php7 ] || [ -x /usr/local/bin/php7 ] || [ -x /usr/pkg/bin/php7 ]
+ then
+ export PHP_BIN="php7"
diff --git a/testing/php7-brotli/APKBUILD b/testing/php7-brotli/APKBUILD
deleted file mode 100644
index 815016caa33..00000000000
--- a/testing/php7-brotli/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Contributor: TBK <alpine@jjtc.eu>
-# Maintainer: TBK <alpine@jjtc.eu>
-pkgname=php7-brotli
-_pkgreal=brotli
-pkgver=0.11.1
-pkgrel=0
-pkgdesc="Brotli Extension for PHP"
-url="https://github.com/kjdev/php-ext-brotli"
-arch="all"
-license="MIT"
-depends="php7-common"
-makedepends="brotli-dev php7-dev"
-checkdepends="php7-cgi"
-source="$pkgname-$pkgver.tar.gz::https://github.com/kjdev/php-ext-brotli/archive/$pkgver.tar.gz"
-builddir="$srcdir/php-ext-brotli-$pkgver"
-
-build() {
- phpize7
- ./configure \
- --prefix=/usr \
- --with-php-config=php-config7 \
- --with-libbrotli # Use system lib
- make
-}
-
-check() {
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 SKIP_ONLINE_TESTS=1 test \
- TEST_PHP_CGI_EXECUTABLE=/usr/bin/php-cgi7 TESTS=--show-diff
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir"/ install
- install -d "$pkgdir"/etc/php7/conf.d
- echo "extension=$_pkgreal.so" > "$pkgdir"/etc/php7/conf.d/50_$_pkgreal.ini
-}
-
-sha512sums="4d73ea67311399c08334c71c6b908d37739ca7e78670506180ff6d8288dc235fbc750b95197a993adf2c1f413a7f734681a283f6c57b6069cf145d9dfd890d4a php7-brotli-0.11.1.tar.gz"
diff --git a/testing/php7-diseval/APKBUILD b/testing/php7-diseval/APKBUILD
deleted file mode 100644
index fc022bf3102..00000000000
--- a/testing/php7-diseval/APKBUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-# Contributor: Stuart Cardall <developer@it-offshore.co.uk>
-# Maintainer: Stuart Cardall <developer@it-offshore.co.uk>
-pkgname=php7-diseval
-_pkgreal=diseval
-pkgver=0.1
-pkgrel=3
-pkgdesc="Disable eval in php7 (suhosin is not stable yet for php7)"
-url="https://github.com/mk-j/PHP_diseval_extension"
-arch="all"
-license="MIT"
-depends="php7-common"
-makedepends="php7-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/mk-j/PHP_diseval_extension/archive/$pkgver.tar.gz"
-builddir="$srcdir/PHP_diseval_extension-$pkgver/source"
-
-build() {
- phpize7
- ./configure --prefix=/usr --with-php-config=php-config7
- make
-}
-
-check() {
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- install -d "$pkgdir"/etc/php7/conf.d
- echo "extension=$_pkgreal.so" > "$pkgdir"/etc/php7/conf.d/$_pkgreal.ini
-}
-
-sha512sums="14cddbebe1cb1bd114dd6f1ea122b262340ed5894178d7332f4168753c07670925fbbf9bae444a726b8d1e1cf28fc8f2e45d511e0523ac30ab37a1fb9f758c8e php7-diseval-0.1.tar.gz"
diff --git a/testing/php7-gearman/APKBUILD b/testing/php7-gearman/APKBUILD
deleted file mode 100644
index cb4996ab684..00000000000
--- a/testing/php7-gearman/APKBUILD
+++ /dev/null
@@ -1,38 +0,0 @@
-# Contributor: Valery Kartel <valery.kartel@gmail.com>
-# Maintainer: Valery Kartel <valery.kartel@gmail.com>
-pkgname=php7-gearman
-_extname=gearman
-pkgver=2.1.0
-pkgrel=0
-pkgdesc="PHP 7 wrapper to libgearman - PECL"
-url="https://pecl.php.net/package/gearman/"
-arch="all"
-license="PHP-3.01"
-depends="php7-pcntl"
-makedepends="gearman-dev php7-dev"
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir/$_extname-$pkgver"
-provides="php7-pecl-gearman=$pkgver-r$pkgrel" # for forward compatibility
-
-build() {
- phpize7
- ./configure \
- --prefix=/usr \
- --with-php-config=/usr/bin/php-config7
- make
-}
-
-check() {
- php7 -dextension=modules/$_extname.so --ri $_extname
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test \
- TESTS=--show-diff SKIP_ONLINE_TESTS=1
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php7/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/$_extname.ini
-}
-
-sha512sums="78a3877ba2212777a1c8387ce14c0e2210f3141b9a6bb87507547f6e3f02dfc03387111e6ac84729dba8b1b9c0483ef1ba3c458480bc0f2e9d68dd49bd073ba6 php-pecl-gearman-2.1.0.tgz"
diff --git a/testing/php7-libvirt-php/APKBUILD b/testing/php7-libvirt-php/APKBUILD
deleted file mode 100644
index 6bfb7c00644..00000000000
--- a/testing/php7-libvirt-php/APKBUILD
+++ /dev/null
@@ -1,42 +0,0 @@
-# Contributor: Fernando Casas Schossow <casasfernando@outlook.com>
-# Maintainer: Fernando Casas Schossow <casasfernando@outlook.com>
-pkgname=php7-libvirt-php
-pkgver=0.5.5
-pkgrel=1
-pkgdesc="PHP language bindings for Libvirt API. For more details see: http://www.libvirt.org/php/"
-url="https://libvirt.org/php/"
-arch="all !x86 !armhf !armv7 !s390x !riscv64" # segfault on x86, armhf and armv7
-license="LGPL-2.1-only"
-makedepends="autoconf libvirt-dev libxml2-dev libxml2-utils libxslt php7-dev php7-pecl-imagick libtool linux-headers"
-subpackages="$pkgname-doc"
-source="https://libvirt.org/sources/php/libvirt-php-$pkgver.tar.gz
- offline-tests.patch
- musl-idn.patch
- musl-fixes.patch"
-builddir="$srcdir/libvirt-php-$pkgver"
-
-prepare() {
- default_prepare
- autoconf
-}
-
-build() {
- ./configure --prefix=/usr
- make
-}
-
-check() {
- make check
- php7 --define extension=src/.libs/libvirt-php.so --ri libvirt
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- install -D -m644 COPYING "$pkgdir/usr/share/licenses/$pkgname/COPYING"
- rm "$pkgdir/usr/lib/php7/modules/libvirt-php.la"
-}
-
-sha512sums="2ea263561a0bf5d155314e06dcf3c3b5c278640bc5edfa674cdd777cb6d0810bda0492c6cf77a02bc88fb6aa99b0ff1f0cbaeea87ff2e45bff9b5774a2507684 libvirt-php-0.5.5.tar.gz
-a212746438428537422716f5883f6941704137cd2cdceafb965fec8306c81c3bc4a4ce1caf65efc2a033823e8eb6f5afa1b452f9a191c50cd07d4c979e10d5fd offline-tests.patch
-cae4423b361c7735052ae1c1ec4e24090486020d4f3aaf87c16991b9fb90960d90cd8bc392bb017449525fc4567de1080e3d29337b2d756f46edac672b2bd81b musl-idn.patch
-732f22ca206187b7a0ea41fe2d63808c8afc0994f941fbbb933dbde219f597d108aa3ed10b67e074fe90ac6ab571ee0dc70ef725ce8ed746d8f6e4689e972291 musl-fixes.patch"
diff --git a/testing/php7-libvirt-php/musl-fixes.patch b/testing/php7-libvirt-php/musl-fixes.patch
deleted file mode 100644
index 92388095b40..00000000000
--- a/testing/php7-libvirt-php/musl-fixes.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-diff --git a/tools/generate-api-docs.c b/tools/generate-api-docs.c
-index 3b88f16..12c0283 100644
---- a/tools/generate-api-docs.c
-+++ b/tools/generate-api-docs.c
-@@ -129,7 +129,9 @@ void free_functions(int function_number)
- free(functions[i].args[j]);
- free(functions[i].name);
- free(functions[i].desc);
-- free(functions[i].returns);
-+ //Commenting the line below as when compiled with musl libc it is creating a SIGSEGV
-+ //Moreover this program is only used to create libvirt-php html documentation at compile time
-+ //free(functions[i].returns);
- }
- free(functions);
- }
-
diff --git a/testing/php7-libvirt-php/musl-idn.patch b/testing/php7-libvirt-php/musl-idn.patch
deleted file mode 100644
index 323a5f56f1c..00000000000
--- a/testing/php7-libvirt-php/musl-idn.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/src/libvirt-php.c
-+++ b/src/libvirt-php.c
-@@ -1168,7 +1168,7 @@
-
- /* need to get FQDN of the local name */
- memset(&hints, 0, sizeof(hints));
-- hints.ai_flags = AI_CANONNAME|AI_CANONIDN;
-+ hints.ai_flags = AI_CANONNAME;
- hints.ai_family = AF_UNSPEC;
-
- /* could not get FQDN or got localhost, use whatever gethostname gave us */
diff --git a/testing/php7-libvirt-php/offline-tests.patch b/testing/php7-libvirt-php/offline-tests.patch
deleted file mode 100644
index 90826023f00..00000000000
--- a/testing/php7-libvirt-php/offline-tests.patch
+++ /dev/null
@@ -1,30 +0,0 @@
---- a/tests/runtests.sh
-+++ b/tests/runtests.sh
-@@ -8,7 +8,7 @@
- "test-domain-define-undefine"
- "test-domain-define-create-destroy"
- "test-domain-create" "test-domain-create-and-get-xpath" "test-domain-create-and-coredump"
-- "test-install" "test-get-models" "test-get-models-unsupported-hw" "test-domain-create-get-metadata"
-+ "test-install" "test-get-models-unsupported-hw" "test-domain-create-get-metadata"
- )
-
- run_test()
-@@ -41,12 +41,12 @@
- fi
- done
-
--qemu-img create -f qcow2 /tmp/example-test.qcow2 1M > /dev/null
--run_test "test-domain-snapshot" $nf; ret="$?"
--if [ "x$ret" == "x1" ]; then
-- error=1
--fi
--rm -f /tmp/example-test.qcow2
-+#qemu-img create -f qcow2 /tmp/example-test.qcow2 1M > /dev/null
-+#run_test "test-domain-snapshot" $nf; ret="$?"
-+#if [ "x$ret" == "x1" ]; then
-+# error=1
-+#fi
-+#rm -f /tmp/example-test.qcow2
-
- if [ "x$error" == "x0" ]; then
- echo "All tests passed successfully"
diff --git a/testing/php7-pdlib/APKBUILD b/testing/php7-pdlib/APKBUILD
deleted file mode 100644
index 5fa8bd59184..00000000000
--- a/testing/php7-pdlib/APKBUILD
+++ /dev/null
@@ -1,43 +0,0 @@
-# Contributor: goodspb <goodspb.luo@gmail.com>
-# Maintainer: Adriaan Groenenboom <agboom@pm.me>
-pkgname=php7-pdlib
-_extname=pdlib
-pkgver=1.0.2
-pkgrel=1
-pkgdesc="PHP 7 extension for Dlib"
-url="https://github.com/goodspb/pdlib"
-arch="all !ppc64le" # build fails https://github.com/goodspb/pdlib/issues/19
-license="MIT"
-depends="php7-common dlib"
-makedepends="php7-dev pkgconf php7-bz2"
-source="php-$_extname-$pkgver.tar.gz::https://github.com/goodspb/$_extname/archive/v$pkgver.tar.gz"
-builddir="$srcdir/$_extname-$pkgver"
-
-#disable check on s390x as Frontal face detection failling
-[ "$CARCH" = "s390x" ] && options="!check"
-
-build() {
- phpize7
- ./configure --prefix=/usr --with-php-config=php-config7
- make
-}
-
-check() {
- # Tests require bz2 extension which is not bundled
- local _modules=/usr/lib/php7/modules
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test \
- TESTS=--show-diff SKIP_ONLINE_TESTS=1 \
- PHP_TEST_SHARED_EXTENSIONS=" \
- -d extension=$_modules/bz2.so \
- -d extension=modules/$_extname.so"
- php7 -dextension=modules/$_extname.so --ri $_extname
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php7/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/$_extname.ini
-}
-
-sha512sums="7222eeaedad8bfe8d0deb327c4d1deaea172994cfb2f2d43fb10f6b862ccc56e05bb459e0d2c94ed79f222eed8eb7c1974c15f862549bf563b132b531acf1cd3 php-pdlib-1.0.2.tar.gz"
diff --git a/testing/php7-pecl-amqp/APKBUILD b/testing/php7-pecl-amqp/APKBUILD
deleted file mode 100644
index c9d8b5919a3..00000000000
--- a/testing/php7-pecl-amqp/APKBUILD
+++ /dev/null
@@ -1,38 +0,0 @@
-# Contributor: Fabio Ribeiro <fabiorphp@gmail.com>
-# Maintainer: Fabio Ribeiro <fabiorphp@gmail.com>
-pkgname=php7-pecl-amqp
-_extname=amqp
-pkgver=1.11.0
-pkgrel=0
-pkgdesc="PHP 7 extension to communicate with any AMQP spec 0-9-1 compatible server - PECL"
-url="https://pecl.php.net/package/amqp"
-arch="all"
-license="PHP-3.01"
-depends="php7-common"
-makedepends="php7-dev rabbitmq-c-dev"
-source="$pkgname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir/$_extname-$pkgver"
-provides="php7-amqp=$pkgver-r$pkgrel" # for backward compatibility
-replaces="php7-amqp" # for backward compatibility
-
-build() {
- phpize7
- ./configure --prefix=/usr --with-php-config=php-config7
- make
-}
-
-check() {
- # Tests require running AMQP server, so basic check
- php7 -d extension="$builddir"/modules/$_extname.so --ri $_extname
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php7/conf.d
- mkdir -p $_confdir
- echo "extension=$_extname" > $_confdir/40_$_extname.ini
-}
-
-sha512sums="
-0f0220fc2f1f9109640e096ab38a4bb06b2569a336b83f527d18dae2b8c21efaf383dade807ee5bb3dbf4447bc3548c15f38ac18155762fe7920ef8939bc0321 php7-pecl-amqp-1.11.0.tgz
-"
diff --git a/testing/php7-pecl-apcu/APKBUILD b/testing/php7-pecl-apcu/APKBUILD
deleted file mode 100644
index fb40721a3a0..00000000000
--- a/testing/php7-pecl-apcu/APKBUILD
+++ /dev/null
@@ -1,44 +0,0 @@
-# Contributor: Carlo Landmeter <clandmeter@alpinelinux.org>
-# Maintainer: Carlo Landmeter <clandmeter@alpinelinux.org>
-pkgname=php7-pecl-apcu
-_extname=apcu
-pkgver=5.1.21
-pkgrel=0
-pkgdesc="PHP 7 extension APC User Cache - PECL"
-url="https://pecl.php.net/package/apcu"
-arch="all"
-license="PHP-3.01"
-depends="php7-common"
-makedepends="php7-dev"
-checkdepends="php7-pcntl php7-session"
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir/$_extname-$pkgver"
-provides="php7-apcu=$pkgver-r$pkgrel" # for backward compatibility
-replaces="php7-apcu" # for backward compatibility
-
-build() {
- phpize7
- ./configure --prefix=/usr --with-php-config=php-config7
- make
-}
-
-check() {
- local _modules="/usr/lib/php7/modules"
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test \
- PHP_TEST_SHARED_EXTENSIONS=" \
- -d extension=$_modules/pcntl.so \
- -d extension=modules/$_extname.so" TESTS=--show-diff
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir"/ install
- install -D -m644 apc.php "$pkgdir"/usr/share/php7/apcu/apc.php
-
- local _confdir="$pkgdir"/etc/php7/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/$_extname.ini
-}
-
-sha512sums="
-a6ffe8349760d27cde0d86017a59a68e9639bf385e606622d807094f4e5fb305bb25b9ce00077d0856f4d223d44329f7a6314c229b62c78d8e2b085593c92bb3 php-pecl-apcu-5.1.21.tgz
-"
diff --git a/testing/php7-pecl-ast/APKBUILD b/testing/php7-pecl-ast/APKBUILD
deleted file mode 100644
index 31cbe00119c..00000000000
--- a/testing/php7-pecl-ast/APKBUILD
+++ /dev/null
@@ -1,38 +0,0 @@
-# Contributor: Andy Blyler <andy@blyler.cc>
-# Maintainer: Fabio Ribeiro <fabiorphp@gmail.com>
-pkgname=php7-pecl-ast
-_extname=ast
-pkgver=1.0.16
-pkgrel=0
-pkgdesc="PHP extension exposing PHP 7 abstract syntax tree - PECL"
-url="https://pecl.php.net/package/ast"
-arch="all"
-license="BSD-3-Clause"
-depends="php7-common"
-makedepends="php7-dev"
-source="php-pecl-$_extname-$pkgver.tar.gz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir"/$_extname-$pkgver
-provides="php7-ast=$pkgver-r$pkgrel" # for backward compatibility
-replaces="php7-ast" # for backward compatibility
-
-build() {
- phpize7
- ./configure --prefix=/usr \
- --with-php-config=/usr/bin/php-config7
- make
-}
-
-check() {
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php7/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/$_extname.ini
-}
-
-sha512sums="
-44b7bb5f752161831f5342283a491eff76e05e96f6679ff63ef20ef9192380290863d8689e4b5949af2eaf010f226c7f4b72a36625715a5a7e29867c1c78e121 php-pecl-ast-1.0.16.tar.gz
-"
diff --git a/testing/php7-pecl-couchbase/APKBUILD b/testing/php7-pecl-couchbase/APKBUILD
deleted file mode 100644
index 5cadbafbc01..00000000000
--- a/testing/php7-pecl-couchbase/APKBUILD
+++ /dev/null
@@ -1,46 +0,0 @@
-# Contributor: Nathan Johnson <nathan@nathanjohnson.info>
-# Maintainer: Nathan Johnson <nathan@nathanjohnson.info>
-pkgname=php7-pecl-couchbase
-_extname=couchbase
-pkgver=4.0.0
-pkgrel=0
-pkgdesc="PHP 7 extension for Couchbase - PECL"
-url="https://pecl.php.net/package/couchbase"
-arch="all !riscv64" # ftbfs
-license="Apache-2.0"
-depends="php7-json php7-pecl-igbinary"
-makedepends="php7-dev openssl-dev linux-headers chrpath cmake"
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz
- cmake-build-type.patch
- cmake-fix-cache.patch
- "
-builddir="$srcdir/$_extname-$pkgver"
-provides="php7-couchbase=$pkgver-r$pkgrel" # for backward compatibility
-replaces="php7-couchbase" # for backward compatibility
-
-build() {
- phpize7
- ./configure --prefix=/usr --with-php-config=php-config7
- make
-}
-
-check() {
- # require couchbase and phpunit
- php7 -d extension="$builddir"/modules/$_extname.so --ri $_extname
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- chrpath -d "$pkgdir"/usr/lib/php7/modules/$_extname.so
- chrpath -d "$pkgdir"/usr/lib/php7/modules/libcouchbase_php_core.so
-
- local _confdir="$pkgdir"/etc/php7/conf.d
- mkdir -p $_confdir
- echo "extension=$_extname" > $_confdir/$_extname.ini
-}
-
-sha512sums="
-5a2571c18f4d0fd46239eed10b77271260352bda38ad5695db65dc7a47f14bab00cfa4a98c646544f7e2865939ae5f981edbc6f63216a0ee537a5a9666198f1e php-pecl-couchbase-4.0.0.tgz
-e61589d1a17968a4980e41a79351d5fa26dc6ecfca8430f87304bd309e1d738eb026b0206694069acce6cf8992a3701f9d0ebe372050a178087c5bee04166e13 cmake-build-type.patch
-56c0ea44a55aa5622adbd3e5de435c30696897474f102a62882a54bbb75b8bbf3e9b055766fc8db68623bc7e2561e9b180bbd7de3b8e4cf8aad0853dce3f7b3a cmake-fix-cache.patch
-"
diff --git a/testing/php7-pecl-couchbase/cmake-build-type.patch b/testing/php7-pecl-couchbase/cmake-build-type.patch
deleted file mode 100644
index fbc63b29527..00000000000
--- a/testing/php7-pecl-couchbase/cmake-build-type.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/config.m4
-+++ b/config.m4
-@@ -50,7 +50,7 @@
- COUCHBASE_PHP_LIBDIR : ${phplibdir}
- "
- ${CMAKE} -S ${COUCHBASE_CMAKE_SOURCE_DIRECTORY} -B${COUCHBASE_CMAKE_BUILD_DIRECTORY} \
-- -DCMAKE_BUILD_TYPE=RelWithDebInfo \
-+ -DCMAKE_BUILD_TYPE=MinSizeRel \
- -DCMAKE_C_COMPILER="${CC}" \
- -DCMAKE_CXX_COMPILER="${CXX}" \
- -DCMAKE_C_FLAGS="${CFLAGS}" \
diff --git a/testing/php7-pecl-couchbase/cmake-fix-cache.patch b/testing/php7-pecl-couchbase/cmake-fix-cache.patch
deleted file mode 100644
index da05e0671b2..00000000000
--- a/testing/php7-pecl-couchbase/cmake-fix-cache.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/src/deps/couchbase-cxx-transactions/CMakeLists.txt
-+++ b/src/deps/couchbase-cxx-transactions/CMakeLists.txt
-@@ -80,7 +80,7 @@
- if (APPLE AND NOT DEFINED OPENSSL_ROOT_DIR)
- # look in typical brew location - missed by the openssl finder
- message(STATUS "no OPENSSL_ROOT_DIR specified, using MacOS, so defaulting to homebrew location")
-- set(OPENSSL_ROOT_DIR "/usr/local/opt/openssl@1.1", CACHE INTERNAL "")
-+ set(OPENSSL_ROOT_DIR "/usr/local/opt/openssl@1.1" CACHE INTERNAL "")
- endif()
- message(STATUS "APPLE: '${APPLE}', SSL: '${OPENSSL_ROOT_DIR}'")
- find_package(OpenSSL REQUIRED)
diff --git a/testing/php7-pecl-decimal/APKBUILD b/testing/php7-pecl-decimal/APKBUILD
deleted file mode 100644
index 25daefe27e9..00000000000
--- a/testing/php7-pecl-decimal/APKBUILD
+++ /dev/null
@@ -1,47 +0,0 @@
-# Maintainer: Andy Postnikov <apostnikov@gmail.com>
-pkgname=php7-pecl-decimal
-_pkgreal=decimal
-pkgver=2.0.0
-pkgrel=2
-pkgdesc="Correctly-rounded arbitrary precision decimal floating-point arithmetic in PHP."
-# Some tests fail until 2.0.0 is released
-# https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/17821#note_140064
-options="!check"
-url="https://pecl.php.net/package/decimal"
-arch="all"
-license="MIT"
-depends="php7-json"
-makedepends="php7-dev mpdecimal-dev"
-source="https://pecl.php.net/get/$_pkgreal-$pkgver.tgz
- fix-build.patch
- fix-test.patch
- fix-tests.patch"
-builddir="$srcdir/$_pkgreal-$pkgver"
-provides="php7-decimal=$pkgver-r$pkgrel" # for backward compatibility
-replaces="php7-decimal" # for backward compatibility
-
-build() {
- phpize7
- ./configure --prefix=/usr --with-php-config=php-config7
- make
-}
-
-check() {
- # waiting upstream release
- rm -f tests/Decimal/operators.phpt tests/Number/operators.phpt tests/Rational/operators.phpt
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 TESTS="--show-diff" \
- test PHP_TEST_SHARED_EXTENSIONS=" \
- -d extension=/usr/lib/php7/modules/json.so \
- -d extension=modules/$_pkgreal.so"
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir"/ install
- install -d "$pkgdir"/etc/php7/conf.d
- echo "extension=$_pkgreal.so" > "$pkgdir"/etc/php7/conf.d/$_pkgreal.ini
-}
-
-sha512sums="765a2871af38338d1020730936d70c7d493e07c4d0fe6da5b07bf1b5f6bd7ae45239351f9202ced8f579ad1e1c909fbfede1350cc1ec85e0f4cb5f1ef8617cfe decimal-2.0.0.tgz
-8db95e40c19806d2fbb88e8132a3f679f5856ce73548d0b72bb1c806fdb59bfadad0260dd89962f4ac4c41b388d98e8ec988b5bd989e582c9cffc521e832b6d7 fix-build.patch
-36d24c2c2fd310d64f6c326ac5241c4732d323608d6dfc7e76d906cd30282e94bdbc5851f1de3e4e2056f005761af52c22afc7a7b672dc4a718f46a74bb75714 fix-test.patch
-f972d727fba7bbdf827c2b5ba0cf7588b7e9234f3e5989f06dc92c1a8c34516fdca3e1089e98e3a8c092328a04f524d7d6a0a017869188e219f4bcc1e869a261 fix-tests.patch"
diff --git a/testing/php7-pecl-decimal/fix-build.patch b/testing/php7-pecl-decimal/fix-build.patch
deleted file mode 100644
index dc6b75ec02b..00000000000
--- a/testing/php7-pecl-decimal/fix-build.patch
+++ /dev/null
@@ -1,61 +0,0 @@
-From d983b8f76f59996339a434c40d1f57703fadbd42 Mon Sep 17 00:00:00 2001
-From: Remi Collet <remi@remirepo.net>
-Date: Tue, 4 Feb 2020 08:25:35 +0100
-Subject: [PATCH] fix #33 remomve unused function
-
----
- src/convert.c | 15 +--------------
- src/convert.h | 2 --
- 2 files changed, 1 insertion(+), 16 deletions(-)
-
-diff --git a/src/convert.c b/src/convert.c
-index 4136a35..77581e3 100644
---- a/src/convert.c
-+++ b/src/convert.c
-@@ -444,19 +444,6 @@ zend_string *php_decimal_rational_to_sci(const php_rational_t *obj, zend_long pr
- return str;
- }
-
--zend_string *php_decimal_rational_to_eng(const php_rational_t *obj, zend_long prec)
--{
-- zend_string *str;
--
-- PHP_DECIMAL_TEMP_MPD(tmp);
-- php_decimal_rational_evaluate(&tmp, obj, prec);
--
-- str = php_decimal_mpd_to_eng(&tmp);
-- mpd_del(&tmp);
--
-- return str;
--}
--
- zend_string *php_decimal_rational_to_fixed(const php_rational_t *obj, zend_long places, zend_bool commas, php_decimal_rounding_t mode)
- {
- PHP_DECIMAL_TEMP_MPD(tmp);
-@@ -597,4 +584,4 @@ void php_decimal_number_to_num_den(mpd_t *num, mpd_t *den, const zval *obj)
-
- assert(status == 0);
- zval_ptr_dtor(&result);
--}
-\ No newline at end of file
-+}
-diff --git a/src/convert.h b/src/convert.h
-index cb5e031..a3924e3 100644
---- a/src/convert.h
-+++ b/src/convert.h
-@@ -56,7 +56,6 @@ php_decimal_success_t php_decimal_mpd_set_string(mpd_t *mpd, const zend_string *
- php_decimal_success_t php_decimal_mpd_set_charptr(mpd_t *mpd, const char *str);
-
- zend_string *php_decimal_mpd_to_serialized(const mpd_t *mpd);
--zend_string *php_decimal_mpd_to_eng(const mpd_t *mpd);
- zend_string *php_decimal_mpd_to_sci(const mpd_t *mpd);
- zend_string *php_decimal_mpd_to_string(const mpd_t *mpd);
- zend_string *php_decimal_mpd_to_fixed(const mpd_t *mpd, zend_long places, zend_bool commas, php_decimal_rounding_t mode);
-@@ -69,7 +68,6 @@ void php_decimal_rational_set_nan(php_rational_t *obj);
- void php_decimal_rational_set_zero(php_rational_t *obj);
-
- zend_string *php_decimal_rational_to_sci(const php_rational_t *obj, zend_long prec);
--zend_string *php_decimal_rational_to_eng(const php_rational_t *obj, zend_long prec);
- zend_string *php_decimal_rational_to_string(const php_rational_t *obj);
- zend_string *php_decimal_rational_to_fixed(const php_rational_t *obj, zend_long places, zend_bool commas, php_decimal_rounding_t mode);
- zend_long php_decimal_rational_to_long(const php_rational_t *obj);
diff --git a/testing/php7-pecl-decimal/fix-test.patch b/testing/php7-pecl-decimal/fix-test.patch
deleted file mode 100644
index 8ed7831e51f..00000000000
--- a/testing/php7-pecl-decimal/fix-test.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From e71f1488b666e30e4f0121a10fee3eeab22bd327 Mon Sep 17 00:00:00 2001
-From: Remi Collet <remi@remirepo.net>
-Date: Tue, 4 Feb 2020 08:23:05 +0100
-Subject: [PATCH] fix harcoded path in test
-
----
- tests/Number/methods/pow.phpt | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/tests/Number/methods/pow.phpt b/tests/Number/methods/pow.phpt
-index 5ce6582..2c78f16 100644
---- a/tests/Number/methods/pow.phpt
-+++ b/tests/Number/methods/pow.phpt
-@@ -87,7 +87,7 @@ Number Object
- )
- Number::pow
-
--Warning: Decimal arithmetic operand truncated to integer in /Users/rtheunissen/dev/decimal/ext-decimal/tests/Number/helpers/Number.php on line 63
-+Warning: Decimal arithmetic operand truncated to integer in %sNumber.php on line 63
- Number Object
- (
- [value:protected] => Decimal\Rational Object
-@@ -99,7 +99,7 @@ Number Object
- )
- Number::pow
-
--Warning: Decimal arithmetic operand truncated to integer in /Users/rtheunissen/dev/decimal/ext-decimal/tests/Number/helpers/Number.php on line 63
-+Warning: Decimal arithmetic operand truncated to integer in %sNumber.php on line 63
- Number Object
- (
- [value:protected] => Decimal\Rational Object
-@@ -123,7 +123,7 @@ Decimal\Decimal Object
- )
- Number::toRational
-
--Warning: Decimal arithmetic operand truncated to integer in /Users/rtheunissen/dev/decimal/ext-decimal/tests/Number/methods/pow.php on line 38
-+Warning: Decimal arithmetic operand truncated to integer in %spow.php on line 38
- Decimal\Rational Object
- (
- [num] => 16
-@@ -131,7 +131,7 @@ Decimal\Rational Object
- )
- Number::toRational
-
--Warning: Decimal arithmetic operand truncated to integer in /Users/rtheunissen/dev/decimal/ext-decimal/tests/Number/methods/pow.php on line 41
-+Warning: Decimal arithmetic operand truncated to integer in %spow.php on line 41
- Decimal\Rational Object
- (
- [num] => 16
diff --git a/testing/php7-pecl-decimal/fix-tests.patch b/testing/php7-pecl-decimal/fix-tests.patch
deleted file mode 100644
index efbf27bba7b..00000000000
--- a/testing/php7-pecl-decimal/fix-tests.patch
+++ /dev/null
@@ -1,138 +0,0 @@
-diff --git a/tests/Number/helpers/Number.php b/tests/Number/helpers/Number.php
-new file mode 100644
-index 0000000..07ca222
---- /dev/null
-+++ b/tests/Number/helpers/Number.php
-@@ -0,0 +1,132 @@
-+<?php
-+
-+/**
-+ *
-+ */
-+class Number extends \Decimal\Number
-+{
-+ protected $value;
-+
-+ private static function parse($number)
-+ {
-+ $value = $number instanceof self ? $number->value : $number;
-+
-+ if ($value === "INF") $value = INF;
-+ else if ($value === "-INF") $value = -INF;
-+ else if ($value === "NAN") $value = NAN;
-+
-+ return $value;
-+ }
-+
-+ protected function __construct($value)
-+ {
-+ $this->value = self::parse($value);
-+ }
-+
-+ public static function valueOf($value): \Decimal\Number
-+ {
-+ return new static($value);
-+ }
-+
-+ public function add($other): \Decimal\Number
-+ {
-+ printf("%s\n", __METHOD__);
-+
-+ return new static($this->value + $this->parse($other));
-+ }
-+
-+ public function sub($other): \Decimal\Number
-+ {
-+ printf("%s\n", __METHOD__);
-+
-+ return new static($this->value - $this->parse($other));
-+ }
-+
-+ public function mul($other): \Decimal\Number
-+ {
-+ printf("%s\n", __METHOD__);
-+
-+ return new static($this->value * $this->parse($other));
-+ }
-+
-+ public function div($other): \Decimal\Number
-+ {
-+ printf("%s\n", __METHOD__);
-+
-+ return new static($this->value / $this->parse($other));
-+ }
-+
-+ public function pow($other): \Decimal\Number
-+ {
-+ printf("%s\n", __METHOD__);
-+
-+ return new static($this->value ** $this->parse($other));
-+ }
-+
-+ public function mod($other): \Decimal\Number
-+ {
-+ printf("%s\n", __METHOD__);
-+
-+ return new static($this->value % $this->parse($other));
-+ }
-+
-+ public function shiftl($places): \Decimal\Number
-+ {
-+ printf("%s\n", __METHOD__);
-+
-+ return new static($this->value * (10 ** $places));
-+ }
-+
-+ public function shiftr($places): \Decimal\Number
-+ {
-+ printf("%s\n", __METHOD__);
-+
-+ return new static($this->value / (10 ** $places));
-+ }
-+
-+ public function round(int $places = NULL, int $mode = NULL): \Decimal\Number
-+ {
-+ return new static($this->toDecimal(\Decimal\Decimal::MAX_PRECISION)->round($places, $mode)->toString());
-+ }
-+
-+ public function toFixed(int $places = NULL, bool $commas = NULL, int $mode = NULL): string
-+ {
-+ return new static($this->toDecimal(\Decimal\Decimal::MAX_PRECISION)->toFixed($places, $commas, $mode));
-+ }
-+
-+ public function toDecimal(int $precision): \Decimal\Decimal
-+ {
-+ printf("%s\n", __METHOD__);
-+
-+ return parent::toDecimal($precision);
-+ }
-+
-+ public function toRational(): \Decimal\Rational
-+ {
-+ printf("%s\n", __METHOD__);
-+
-+ return parent::toRational();
-+ }
-+
-+ public function toString(): string
-+ {
-+ return (string) $this->value;
-+ }
-+
-+ public function toInt(): int
-+ {
-+ return (int) $this->value;
-+ }
-+
-+ public function toFloat(): float
-+ {
-+ return (float) $this->value;
-+ }
-+
-+ public function compareTo($other): int
-+ {
-+ printf("%s\n", __METHOD__);
-+
-+ return $this->value <=> self::parse($other);
-+ }
-+}
diff --git a/testing/php7-pecl-event/APKBUILD b/testing/php7-pecl-event/APKBUILD
deleted file mode 100644
index 26f4c6653c5..00000000000
--- a/testing/php7-pecl-event/APKBUILD
+++ /dev/null
@@ -1,42 +0,0 @@
-# Contributor: Andy Postnikov <apostnikov@gmail.com>
-# Maintainer: Andy Postnikov <apostnikov@gmail.com>
-pkgname=php7-pecl-event
-_extname=event
-pkgver=3.0.6
-pkgrel=0
-pkgdesc="PHP 7 extension that provides interface to libevent library - PECL"
-url="https://pecl.php.net/package/event"
-arch="all"
-license="PHP-3.01"
-depends="php7-sockets"
-makedepends="php7-dev libevent-dev openssl1.1-compat-dev pkgconf"
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir/$_extname-$pkgver"
-provides="php7-event=$pkgver-r$pkgrel" # for backward compatibility
-replaces="php7-event" # for backward compatibility
-
-build() {
- phpize7
- ./configure --prefix=/usr --with-php-config=php-config7
- make
-}
-
-check() {
- # Tests require sockets extension which is not bundled
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 SKIP_ONLINE_TESTS=1 test \
- TESTS=--show-diff \
- PHP_TEST_SHARED_EXTENSIONS=" \
- -d extension=/usr/lib/php7/modules/sockets.so \
- -d extension=modules/$_extname.so"
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php7/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/$_extname.ini
-}
-
-sha512sums="
-a7c7b062e44409d8d7525b3bb5ec80916dfcb5cdc53088a486ae940fa3a0a7944ec30727cd96d4e125187b8fa2e3a0fce6fc8981f803ad416a2cc040b78f93eb php-pecl-event-3.0.6.tgz
-"
diff --git a/testing/php7-pecl-gmagick/APKBUILD b/testing/php7-pecl-gmagick/APKBUILD
deleted file mode 100644
index 913a43dfbe0..00000000000
--- a/testing/php7-pecl-gmagick/APKBUILD
+++ /dev/null
@@ -1,46 +0,0 @@
-# Contributor: Valery Kartel <valery.kartel@gmail.com>
-# Maintainer: Valery Kartel <valery.kartel@gmail.com>
-pkgname=php7-pecl-gmagick
-_pkgreal=gmagick
-pkgver=2.0.6_rc1
-_pkgver=${pkgver/_rc/RC}
-pkgrel=1
-pkgdesc="PHP 7 bindings to the GraphicsMagick library - PECL"
-url="https://pecl.php.net/package/gmagick"
-arch="all"
-license="PHP-3.01"
-depends="php7-common ghostscript-fonts"
-makedepends="graphicsmagick-dev libtool php7-dev"
-source="php-pecl-$_pkgreal-$_pkgver.tgz::https://pecl.php.net/get/$_pkgreal-$_pkgver.tgz"
-builddir="$srcdir/$_pkgreal-$_pkgver"
-provides="php7-gmagick=$pkgver-r$pkgrel" # for backward compatibility
-replaces="php7-gmagick" # for backward compatibility
-
-build() {
- phpize7
- ./configure \
- --prefix=/usr \
- --with-php-config=/usr/bin/php-config7
- make
-}
-
-check() {
- if [ "$CARCH" = "x86" ]; then
- # https://gitlab.alpinelinux.org/alpine/aports/issues/11011
- rm -f \
- tests/gmagick-107_setimagevirtualpixelmethod.phpt \
- tests/gmagick-116_waveImage_basic.phpt
- fi
- # https://github.com/vitoc/gmagick/issues/53
- rm -f tests/gmagick-056-set_getsamplingfactors.phpt
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php7/conf.d
- install -d $_confdir
- echo "extension=$_pkgreal" > $_confdir/$_pkgreal.ini
-}
-
-sha512sums="c09ad751815d06964f16ab95025badc0711ceaaac0cf79035307aa75f2730b021b070d0e45e549ddd5447de68581ec666a817ec5c05a2a4557d4c1548216714f php-pecl-gmagick-2.0.6RC1.tgz"
diff --git a/testing/php7-pecl-grpc/APKBUILD b/testing/php7-pecl-grpc/APKBUILD
deleted file mode 100644
index 91a7cad880d..00000000000
--- a/testing/php7-pecl-grpc/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Maintainer: Andy Postnikov <apostnikov@gmail.com>
-pkgname=php7-pecl-grpc
-_extname=grpc
-pkgver=1.46.3
-pkgrel=0
-pkgdesc="PHP 7 extension provide a concrete implementation of the gRPC protocol, layered over HTTP/2."
-url="https://pecl.php.net/package/grpc"
-arch="all !s390x !ppc64le !riscv64" # build failures
-license="Apache-2.0"
-depends="php7-common"
-makedepends="php7-dev openssl-dev linux-headers"
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir"/$_extname-$pkgver
-
-build() {
- phpize7
- ./configure --prefix=/usr --with-php-config=php-config7
- make
-}
-
-check() {
- # Test suite is not a part of pecl release.
- php7 -d extension=modules/$_extname.so --ri $_extname
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php7/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/50_$_extname.ini
-}
-
-sha512sums="
-5b6c06b806df3132bf48b5bd032c794493b4e2a846d79d18f9f481a52e2792c397c4b367f4d9bbbe72aaa63747d05e845015239acfa8329346f077a65c216e38 php-pecl-grpc-1.46.3.tgz
-"
diff --git a/testing/php7-pecl-igbinary/APKBUILD b/testing/php7-pecl-igbinary/APKBUILD
deleted file mode 100644
index 274bc691843..00000000000
--- a/testing/php7-pecl-igbinary/APKBUILD
+++ /dev/null
@@ -1,49 +0,0 @@
-# Contributor: Andy Postnikov <apostnikov@gmail.com>
-# Maintainer: Andy Postnikov <apostnikov@gmail.com>
-
-pkgname=php7-pecl-igbinary
-_extname=igbinary
-pkgver=3.2.7
-pkgrel=0
-pkgdesc="Igbinary is a drop in replacement for the standard PHP 7 serializer - PECL"
-url="https://pecl.php.net/package/igbinary"
-arch="all"
-license="BSD-3-Clause"
-provides="php7-igbinary=$pkgver-r$pkgrel" # for backward compatibility
-replaces="php7-igbinary" # for backward compatibility
-depends="php7-common"
-makedepends="php7-dev php7-pecl-apcu"
-checkdepends="php7-json php7-session" # sessions needs work https://github.com/igbinary/igbinary/issues/116
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir/$_extname-$pkgver"
-
-build() {
- phpize7
- ./configure \
- --prefix=/usr \
- --with-php-config=/usr/bin/php-config7
- make
-}
-
-check() {
- local modules="/usr/lib/php7/modules"
- # Tests require extra extensions which are not bundled
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test \
- TESTS=--show-diff \
- PHP_TEST_SHARED_EXTENSIONS="
- -d extension=$modules/apcu.so \
- -d extension=$modules/json.so \
- -d extension=$modules/session.so \
- -d extension=modules/$_extname.so"
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php7/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/10_$_extname.ini
-}
-
-sha512sums="
-b168e9b7aecaa9ae7760d813f2225381333b8f9a0611cc9701307202da5fefc8239dff5a4ed65faf5f165f11db79aba14e6ff942fe07191dec98cfd7eb65b21a php-pecl-igbinary-3.2.7.tgz
-"
diff --git a/testing/php7-pecl-imagick/APKBUILD b/testing/php7-pecl-imagick/APKBUILD
deleted file mode 100644
index a3228fa011c..00000000000
--- a/testing/php7-pecl-imagick/APKBUILD
+++ /dev/null
@@ -1,45 +0,0 @@
-# Contributor: Valery Kartel <valery.kartel@gmail.com>
-# Maintainer: Valery Kartel <valery.kartel@gmail.com>
-pkgname=php7-pecl-imagick
-_extname=imagick
-pkgver=3.7.0
-pkgrel=0
-pkgdesc="PHP 7 extension provides a wrapper to the ImageMagick library - PECL"
-url="https://pecl.php.net/package/imagick"
-arch="all !x86" # https://gitlab.alpinelinux.org/alpine/aports/-/issues/12537
-license="PHP-3.01"
-depends="php7-common imagemagick"
-checkdepends="ghostscript-fonts"
-makedepends="php7-dev imagemagick-dev"
-subpackages="$pkgname-dev"
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir/$_extname-$pkgver"
-provides="php7-imagick=$pkgver-r$pkgrel" # for backward compatibility
-replaces="php7-imagick" # for backward compatibility
-
-# secfixes:
-# 3.4.4-r0:
-# - CVE-2019-11037
-
-build() {
- phpize7
- ./configure --prefix=/usr --with-php-config=php-config7
- make
-}
-
-check() {
- rm tests/009_properties.phpt # fails on s390x
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
-
- local _confdir="$pkgdir"/etc/php7/conf.d
- mkdir -p $_confdir
- echo "extension=$_extname" > $_confdir/$_extname.ini
-}
-
-sha512sums="
-c84408e4e4a0c46d979240e06d58d264c6bb21f3b95e3d434c8a21cd808f6c495fd453ef9c07b5c44dac81c6f205b6697f8ecaf1a65a86ce4e9052328a389ebe php-pecl-imagick-3.7.0.tgz
-"
diff --git a/testing/php7-pecl-inotify/APKBUILD b/testing/php7-pecl-inotify/APKBUILD
deleted file mode 100644
index 545812f7ece..00000000000
--- a/testing/php7-pecl-inotify/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Contributor: Fabio Ribeiro <fabiorphp@gmail.com>
-# Maintainer: Fabio Ribeiro <fabiorphp@gmail.com>
-pkgname=php7-pecl-inotify
-_extname=inotify
-pkgver=3.0.0
-pkgrel=1
-pkgdesc="Inotify bindings for PHP"
-url="https://pecl.php.net/package/inotify"
-arch="all"
-license="PHP-3.01"
-depends="php7-common"
-makedepends="php7-dev"
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir"/$_extname-$pkgver
-provides="php7-inotify=$pkgver-r$pkgrel" # for backward compatibility
-replaces="php7-inotify" # for backward compatibility
-
-build() {
- phpize7
- ./configure --prefix=/usr --with-php-config=php-config7
- make
-}
-
-check() {
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php7/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/70_$_extname.ini
-}
-
-sha512sums="f8b29f8611f16b92136ab8de89181c254bba1abee1e61cac2344440567a3155aae4b9b54b10fdb1b0254fd7a96da8c14b7dc5c9f7f08a03db30ab1645aca1eee php-pecl-inotify-3.0.0.tgz"
diff --git a/testing/php7-pecl-jsmin/APKBUILD b/testing/php7-pecl-jsmin/APKBUILD
deleted file mode 100644
index af10fed3dcc..00000000000
--- a/testing/php7-pecl-jsmin/APKBUILD
+++ /dev/null
@@ -1,44 +0,0 @@
-# Maintainer: Andy Postnikov <apostnikov@gmail.com>
-pkgname=php7-pecl-jsmin
-_extname=jsmin
-pkgver=3.0.0
-pkgrel=0
-_jqver=2.1.3
-pkgdesc="PHP 8 extension for minifying JavaScript - PECL"
-url="https://pecl.php.net/package/jsmin"
-arch="all !ppc64le" # test fails on builder
-license="PHP-3.01"
-depends="php7-common"
-makedepends="php7-dev"
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz
- jquery-$_jqver.js::https://github.com/sqmk/pecl-jsmin/raw/v$pkgver/tests/data/jquery-$_jqver.js
- fix-tests.patch
- "
-builddir="$srcdir/$_extname-$pkgver"
-
-build() {
- phpize7
- ./configure --prefix=/usr --with-php-config=/usr/bin/php-config7
- make
-}
-
-check() {
- mkdir -p tests/data
- cp "$srcdir"/jquery-$_jqver.js tests/data/
-
- php7 -dextension=modules/$_extname.so --ri $_extname
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS='--show-diff '
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php7/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/$_extname.ini
-}
-
-sha512sums="
-a465ae024a49bb8ac20463efc6b2546021806c2c43053f42c7ebfea4924b9b647b6e7c0c673102e12ecd8b693666441dc07203edef216eee958fa62f73056ea6 php-pecl-jsmin-3.0.0.tgz
-b8eb1a740c63feaab8ac24d87f39f4cfe263694c972f4978b9f0e3092f912a722596fd094dd637d22f03816617e13210bf11fad9a545dbb0423dc821c827081e jquery-2.1.3.js
-e44a2615d98d786e0188d3880b41f267dab2fa215fb17cd37b17f8cc499bee7dd9e4fe1def4707dbd6769fa40ba2dbf7895ba3544db427a7d851f69a515fa83c fix-tests.patch
-"
diff --git a/testing/php7-pecl-lzf/APKBUILD b/testing/php7-pecl-lzf/APKBUILD
deleted file mode 100644
index ab537f06933..00000000000
--- a/testing/php7-pecl-lzf/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Contributor: Fabio Ribeiro <fabiorphp@gmail.com>
-# Maintainer: Fabio Ribeiro <fabiorphp@gmail.com>
-pkgname=php7-pecl-lzf
-_pkgreal=LZF
-_pkgextname=lzf
-pkgver=1.7.0
-pkgrel=0
-pkgdesc="PHP extension handles LZF de/compression - PECL"
-url="https://pecl.php.net/package/LZF"
-arch="all"
-license="PHP-3.01"
-depends="php7-common"
-makedepends="php7-dev autoconf re2c"
-source="https://pecl.php.net/get/$_pkgreal-$pkgver.tgz"
-builddir="$srcdir"/$_pkgreal-$pkgver
-provides="php7-lzf=$pkgver-r$pkgrel" # for backward compatibility
-replaces="php7-lzf" # for backward compatibility
-
-build() {
- phpize7
- ./configure --prefix=/usr --with-php-config=php-config7
- make
-}
-
-check() {
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir"/ install
- install -d "$pkgdir"/etc/php7/conf.d
- echo "extension=$_pkgextname" > "$pkgdir"/etc/php7/conf.d/50_$_pkgreal.ini
-}
-
-sha512sums="
-76a2bce7aa44f9aae40345f37c9294626d453879c7f98099ad6c31ae32abc638233934bf22ddd9bc0d4a6d285b25aa06dedc175ad5bb1544884a272e6b031ced LZF-1.7.0.tgz
-"
diff --git a/testing/php7-pecl-mailparse/APKBUILD b/testing/php7-pecl-mailparse/APKBUILD
deleted file mode 100644
index 9a9448dbcf3..00000000000
--- a/testing/php7-pecl-mailparse/APKBUILD
+++ /dev/null
@@ -1,40 +0,0 @@
-# Contributor: Fabio Ribeiro <fabiorphp@gmail.com>
-# Maintainer: Fabio Ribeiro <fabiorphp@gmail.com>
-pkgname=php7-pecl-mailparse
-_extname=mailparse
-pkgver=3.1.3
-pkgrel=0
-pkgdesc="PHP 7 extension for parsing and working with email messages - PECL"
-url="https://pecl.php.net/package/mailparse"
-arch="all"
-license="PHP-3.01"
-depends="php7-mbstring"
-makedepends="php7-dev"
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir/$_extname-$pkgver"
-provides="php7-mailparse=$pkgver-r$pkgrel" # for backward compatibility
-replaces="php7-mailparse" # for backward compatibility
-
-build() {
- phpize7
- ./configure --prefix=/usr --with-php-config=php-config7
- make
-}
-
-check() {
- # Tests require mbstring extension which is not bundled
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test PHP_TEST_SHARED_EXTENSIONS=" \
- -d extension=/usr/lib/php7/modules/mbstring.so \
- -d extension=modules/$_extname.so" TESTS=--show-diff
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php7/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/60_$_extname.ini
-}
-
-sha512sums="
-93659e479d8ab61ae473f6dc002b7198903eebdcfb4aa515e76952f5050fd1a815baccfcb57bd32fb9be6108dfed6dc73172067a58c9e6098058999bb3802000 php-pecl-mailparse-3.1.3.tgz
-"
diff --git a/testing/php7-pecl-maxminddb/APKBUILD b/testing/php7-pecl-maxminddb/APKBUILD
deleted file mode 100644
index a378113d21e..00000000000
--- a/testing/php7-pecl-maxminddb/APKBUILD
+++ /dev/null
@@ -1,39 +0,0 @@
-# Contributor: TBK <alpine@jjtc.eu>
-# Maintainer: TBK <alpine@jjtc.eu>
-pkgname=php7-pecl-maxminddb
-_extname=maxminddb
-pkgver=1.11.0
-pkgrel=0
-pkgdesc="PHP 7.4 MaxMind DB Reader extension - PECL"
-url="https://pecl.php.net/package/maxminddb"
-arch="all"
-license="Apache-2.0"
-depends="php7-bcmath"
-makedepends="libmaxminddb-dev php7-dev"
-source="php-pecl-$_extname-$pkgver.tar.gz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir/$_extname-$pkgver/ext"
-provides="php7-maxminddb=$pkgver-r$pkgrel" # for backward compatibility
-replaces="php7-maxminddb" # for backward compatibility
-
-build() {
- phpize7
- ./configure --prefix=/usr \
- --with-php-config=/usr/bin/php-config7
- make
-}
-
-check() {
- make test NO_INTERACTION=1 REPORT_EXIT_STATUS=1
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
-
- local confdir="$pkgdir"/etc/php7/conf.d
- install -d $confdir
- echo "extension=maxminddb" > $confdir/maxminddb.ini
-}
-
-sha512sums="
-9ae2b168519d67803026862a035cf7ab392f4276a662fb674b4f3b9c2c6e28616b609b9121e0af46a599e16895f59282c4ff4db47ac22134bd5bbdec4aec950f php-pecl-maxminddb-1.11.0.tar.gz
-"
diff --git a/testing/php7-pecl-mcrypt/APKBUILD b/testing/php7-pecl-mcrypt/APKBUILD
deleted file mode 100644
index 7ec4dafbde3..00000000000
--- a/testing/php7-pecl-mcrypt/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Contributor: Andy Postnikov <apostnikov@gmail.com>
-# Maintainer: TBK <alpine@jjtc.eu>
-pkgname=php7-pecl-mcrypt
-_extname=mcrypt
-pkgver=1.0.5
-pkgrel=0
-pkgdesc="Provides PHP 7 bindings for the unmaintained libmcrypt - PECL"
-url="https://pecl.php.net/package/mcrypt"
-arch="all"
-license="PHP-3.01"
-depends="php7-common"
-makedepends="php7-dev libmcrypt-dev"
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir/$_extname-$pkgver"
-provides="php7-mcrypt=$pkgver-r$pkgrel" # for backward compatibility
-replaces="php7-mcrypt" # for backward compatibility
-
-build() {
- phpize7
- ./configure --prefix=/usr --with-php-config=php-config7
- make
-}
-
-check() {
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php7/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/$_extname.ini
-}
-
-sha512sums="
-fe9afd0987ddbcbb0a9fc5e8313c08c65ac6afd606cce586fe30600ab149b4f4add917bb0319f803942833a88f520f65e2e94bbcc6c58e2075e829509e7dfac5 php-pecl-mcrypt-1.0.5.tgz
-"
diff --git a/testing/php7-pecl-memcache/APKBUILD b/testing/php7-pecl-memcache/APKBUILD
deleted file mode 100644
index 00c5814a995..00000000000
--- a/testing/php7-pecl-memcache/APKBUILD
+++ /dev/null
@@ -1,34 +0,0 @@
-# Maintainer: Andy Postnikov <apostnikov@gmail.com>
-pkgname=php7-pecl-memcache
-_pkgreal=memcache
-pkgver=4.0.5.2
-pkgrel=1
-pkgdesc="PECL memcache extension, provides handy OO and procedural interfaces, can be used as session handler."
-url="https://pecl.php.net/package/memcache"
-arch="all"
-license="PHP-3.01"
-depends="php7-session"
-makedepends="php7-dev autoconf re2c"
-source="https://pecl.php.net/get/$_pkgreal-$pkgver.tgz"
-builddir="$srcdir/$_pkgreal-$pkgver"
-provides="php7-memcache=$pkgver-r$pkgrel" # for backward compatibility
-replaces="php7-memcache" # for backward compatibility
-
-build() {
- phpize7
- ./configure --prefix=/usr --with-php-config=php-config7
- make
-}
-
-check() {
- # Tests require memcached server, basic check, see tests/memcache.sh
- php7 -d extension="$builddir"/modules/$_pkgreal.so --ri $_pkgreal
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir"/ install
- install -d "$pkgdir"/etc/php7/conf.d
- echo "extension=$_pkgreal.so" > "$pkgdir"/etc/php7/conf.d/$_pkgreal.ini
-}
-
-sha512sums="93e163acf3a6c28f16b5f0982105f6f558cceeb314b3f09ad71655d8a5adf64d23959f1a2f3589eb7e7a7e18c88ba8132014e13f697a737cd570cf9405137384 memcache-4.0.5.2.tgz"
diff --git a/testing/php7-pecl-memcached/APKBUILD b/testing/php7-pecl-memcached/APKBUILD
deleted file mode 100644
index 728dafb94ae..00000000000
--- a/testing/php7-pecl-memcached/APKBUILD
+++ /dev/null
@@ -1,44 +0,0 @@
-# Contributor: Fabio Ribeiro <fabiorphp@gmail.com>
-# Maintainer: Fabio Ribeiro <fabiorphp@gmail.com>
-pkgname=php7-pecl-memcached
-_pkgreal=memcached
-pkgver=3.2.0
-pkgrel=0
-pkgdesc="PHP 7 extension for interfacing with memcached via libmemcached library - PECL"
-url="https://pecl.php.net/package/memcached"
-arch="all"
-license="PHP-3.01"
-depends="php7-session php7-pecl-igbinary"
-makedepends="php7-dev zlib-dev libmemcached-dev cyrus-sasl-dev"
-source="php-pecl-$_pkgreal-$pkgver.tgz::https://pecl.php.net/get/$_pkgreal-$pkgver.tgz"
-builddir="$srcdir/$_pkgreal-$pkgver"
-provides="php7-memcached=$pkgver-r$pkgrel" # for backward compatibility
-replaces="php7-memcached" # for backward compatibility
-
-build() {
- phpize7
- ./configure \
- --prefix=/usr \
- --with-php-config=php-config7 \
- --enable-memcached-igbinary \
- --disable-memcached-sasl
- make
-}
-
-check() {
- # Tests require memcached server, basic check
- php7 -d extension="$builddir"/modules/$_pkgreal.so --ri $_pkgreal
-}
-
-package() {
- local confdir="$pkgdir/etc/php7/conf.d"
-
- make INSTALL_ROOT="$pkgdir" install
-
- mkdir -p "$confdir"
- echo "extension=$_pkgreal.so" > "$confdir"/20_$_pkgreal.ini
-}
-
-sha512sums="
-ece5759a9d6d52afd46beb0821811e5d4830e75ad8564af395e2107fd349e271c6e6cf20eeacd9ad15ee2e99ccf0118ccc83c5810e2f3fa7c61f1984b0b26514 php-pecl-memcached-3.2.0.tgz
-"
diff --git a/testing/php7-pecl-mongodb/APKBUILD b/testing/php7-pecl-mongodb/APKBUILD
deleted file mode 100644
index 097fa2f5a02..00000000000
--- a/testing/php7-pecl-mongodb/APKBUILD
+++ /dev/null
@@ -1,40 +0,0 @@
-# Contributor: Fabio Ribeiro <fabiorphp@gmail.com>
-# Maintainer: Fabio Ribeiro <fabiorphp@gmail.com>
-pkgname=php7-pecl-mongodb
-_extname=mongodb
-pkgver=1.13.0
-pkgrel=1
-pkgdesc="PHP 7 MongoDB driver - PECL"
-url="https://pecl.php.net/package/mongodb"
-arch="all"
-license="Apache-2.0"
-depends="php7-json"
-makedepends="cyrus-sasl-dev icu-dev openssl1.1-compat-dev php7-dev snappy-dev"
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir"/$_extname-$pkgver
-provides="php7-mongodb=$pkgver-r$pkgrel" # for backward compatibility
-replaces="php7-mongodb" # for backward compatibility
-
-build() {
- phpize7
- ./configure --prefix=/usr \
- --with-php-config=/usr/bin/php-config7
- make
-}
-
-check() {
- # tests requires additional dependencies (vagrant)
- php7 -d extension=modules/$_extname.so --ri $_extname
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
-
- local _confdir="$pkgdir"/etc/php7/conf.d
- install -d $_confdir
- echo "extension=$_extname.so" > $_confdir/$_extname.ini
-}
-
-sha512sums="
-54fa903d5afb49f7ab1e39174325e351c902142dafe3603c1331cfd8c73f2b0d4a29e382084685ef96e54e0a8f9d53bd08c2bea42e3bf5093a96a36faf4c6083 php-pecl-mongodb-1.13.0.tgz
-"
diff --git a/testing/php7-pecl-msgpack/APKBUILD b/testing/php7-pecl-msgpack/APKBUILD
deleted file mode 100644
index f1d33394fda..00000000000
--- a/testing/php7-pecl-msgpack/APKBUILD
+++ /dev/null
@@ -1,45 +0,0 @@
-# Contributor: Fabio Ribeiro <fabiorphp@gmail.com>
-# Maintainer: Fabio Ribeiro <fabiorphp@gmail.com>
-pkgname=php7-pecl-msgpack
-_extname=msgpack
-pkgver=2.2.0_rc1
-_pkgver=${pkgver/_rc/RC}
-pkgrel=0
-pkgdesc="PHP 7 extension provides API for communicating with MessagePack serialization - PECL"
-url="https://pecl.php.net/package/msgpack"
-arch="all"
-license="BSD-3-Clause"
-depends="php7-session php7-sockets"
-makedepends="php7-dev"
-source="php-pecl-$_extname-$_pkgver.tgz::https://pecl.php.net/get/$_extname-$_pkgver.tgz"
-builddir="$srcdir"/$_extname-$_pkgver
-provides="php7-msgpack=$pkgver-r$pkgrel" # for backward compatibility
-replaces="php7-msgpack" # for backward compatibility
-
-build() {
- phpize7
- ./configure --prefix=/usr --with-php-config=php-config7
- make
-}
-
-check() {
- rm -f tests/034.phpt # XFAIL https://github.com/msgpack/msgpack-php/issues/136
- rm -f tests/035.phpt # fails on ppc64le as of slow environment https://github.com/msgpack/msgpack-php/issues/123
- # Tests require session and sockets extensions which are not bundled
- local _depsdir=/usr/lib/php7/modules
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test PHP_TEST_SHARED_EXTENSIONS="
- -d extension=$_depsdir/session.so \
- -d extension=$_depsdir/sockets.so \
- -d extension=modules/$_extname.so" TESTS=--show-diff
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php7/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/50_$_extname.ini
-}
-
-sha512sums="
-4ddb9b6e9f4d9255d49c10e03a9ad4b37cf869f30b5e3c333518314bdbdfa8d4d20996a24954da19cba6352e76e02488b813fe6aa107c8fe390d6ca85d625096 php-pecl-msgpack-2.2.0RC1.tgz
-"
diff --git a/testing/php7-pecl-mustache/APKBUILD b/testing/php7-pecl-mustache/APKBUILD
deleted file mode 100644
index 23e5e242f5e..00000000000
--- a/testing/php7-pecl-mustache/APKBUILD
+++ /dev/null
@@ -1,39 +0,0 @@
-# Maintainer: Renoir Boulanger <hello@renoirboulanger.com>
-pkgname=php7-pecl-mustache
-_extname=mustache
-pkgver=0.9.2
-pkgrel=0
-pkgdesc="PHP 7 PECL extension: C++ implementation of Mustache"
-url="https://pecl.php.net/package/mustache"
-arch="all"
-license="MIT"
-depends="php7-common"
-makedepends="php7-dev libmustache"
-source="https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir"/$_extname-$pkgver
-provides="php7-mustache=$pkgver-r$pkgrel" # for backward compatibility
-replaces="php7-mustache" # for backward compatibility
-
-build() {
- phpize7
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --with-php-config=php-config7 \
- --enable-mustache
- make
-}
-
-check() {
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php7/conf.d
- install -d $_confdir
- echo "extension=$_extname.so" > $_confdir/70_$_extname.ini
-}
-
-sha512sums="7a5a1a084f18cf1c45ac042bf9f2fa1f882975a5d361862034a333e5200f2df87ed34f957a31fa0994e6e53854b7529c5fffe61b13a1406847bd2475cad52ab6 mustache-0.9.2.tgz"
diff --git a/testing/php7-pecl-oauth/APKBUILD b/testing/php7-pecl-oauth/APKBUILD
deleted file mode 100644
index 4e614440a14..00000000000
--- a/testing/php7-pecl-oauth/APKBUILD
+++ /dev/null
@@ -1,44 +0,0 @@
-# Contributor: Fabio Ribeiro <fabiorphp@gmail.com>
-# Maintainer: Fabio Ribeiro <fabiorphp@gmail.com>
-pkgname=php7-pecl-oauth
-_extname=oauth
-pkgver=2.0.7
-pkgrel=1
-pkgdesc="PHP 7 extension, OAuth is an authorization protocol built on top of HTTP - PECL"
-url="https://pecl.php.net/package/oauth"
-arch="all"
-license="BSD-3-Clause"
-depends="php7-common"
-makedepends="php7-dev curl-dev"
-checkdepends="php7-openssl php7-pcntl php7-posix"
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz
- pcre.patch"
-builddir="$srcdir"/$_extname-$pkgver
-provides="php7-oauth=$pkgver-r$pkgrel" # for backward compatibility
-replaces="php7-oauth" # for backward compatibility
-
-build() {
- phpize7
- ./configure --prefix=/usr --with-php-config=php-config7
- make
-}
-
-check() {
- local _modules="/usr/lib/php7/modules"
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test \
- PHP_TEST_SHARED_EXTENSIONS=" \
- -d extension=$_modules/openssl.so \
- -d extension=$_modules/pcntl.so \
- -d extension=$_modules/posix.so \
- -d extension=modules/$_extname.so" TESTS==--show-diff
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php7/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/60_$_extname.ini
-}
-
-sha512sums="261bbe6d1c4299f44ce40030b3959e26f2535c70d01b7a4e870d14c84b0a01e68484e61907554d720667fa08a2ec00b7d43cf2f523800c832f02b093e7b6534a php-pecl-oauth-2.0.7.tgz
-68d636032d2f3cb2822ea3121a80256b87a04cc5998c4775174366c6a3392dfe3abc00c84cc50aca5745a32ddd2246af129fe5aa17cc415652c52214a84feef9 pcre.patch"
diff --git a/testing/php7-pecl-oauth/pcre.patch b/testing/php7-pecl-oauth/pcre.patch
deleted file mode 100644
index 7a47b989d37..00000000000
--- a/testing/php7-pecl-oauth/pcre.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/config.m4 b/config.m4
-index e05ed68..48e2608 100644
---- a/config.m4
-+++ b/config.m4
-@@ -14,8 +14,6 @@ if test "$PHP_OAUTH" != "no"; then
- PHP_NEW_EXTENSION(oauth, oauth.c provider.c, $ext_shared)
- CFLAGS="$CFLAGS -Wall -g"
-
-- AC_CHECK_HEADER(pcre.h, , [AC_MSG_ERROR([Couldn't find pcre.h, try installing the libpcre development/headers package])])
--
- AS_IF([test "x$with_curl" != "xno"],
- [
- AC_MSG_CHECKING(for cURL in default path)
diff --git a/testing/php7-pecl-pcov/APKBUILD b/testing/php7-pecl-pcov/APKBUILD
deleted file mode 100644
index 996d50437d2..00000000000
--- a/testing/php7-pecl-pcov/APKBUILD
+++ /dev/null
@@ -1,38 +0,0 @@
-# Contributor: Andy Postnikov <apostnikov@gmail.com>
-# Maintainer: Andy Postnikov <apostnikov@gmail.com>
-
-pkgname=php7-pecl-pcov
-_extname=pcov
-pkgver=1.0.11
-pkgrel=0
-pkgdesc="Code coverage driver for PHP 7 - PECL"
-url="https://pecl.php.net/package/pcov"
-arch="all"
-license="PHP-3.01"
-depends="php7-common"
-makedepends="php7-dev"
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir"/$_extname-$pkgver
-
-build() {
- phpize7
- ./configure --prefix=/usr --with-php-config=php-config7
- make
-}
-
-check() {
- php7 -dextension=modules/$_extname.so --ri $_extname
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
-
- local _confdir="$pkgdir"/etc/php7/conf.d
- mkdir -p $_confdir
- echo "extension=$_extname" > $_confdir/$_extname.ini
-}
-
-sha512sums="
-9d196d92ddfdcd22a69d94543202d861e8d54355991d528e7a5f5bb5423943d6bc04b1b9a117294b7337093765595e5be0ac95ab1619149ec6dc9d6a4a330d69 php-pecl-pcov-1.0.11.tgz
-"
diff --git a/testing/php7-pecl-protobuf/APKBUILD b/testing/php7-pecl-protobuf/APKBUILD
deleted file mode 100644
index abd67195fc9..00000000000
--- a/testing/php7-pecl-protobuf/APKBUILD
+++ /dev/null
@@ -1,38 +0,0 @@
-# Contributor: TBK <alpine@jjtc.eu>
-# Maintainer: TBK <alpine@jjtc.eu>
-pkgname=php7-pecl-protobuf
-_extname=protobuf
-pkgver=3.21.1
-pkgrel=0
-pkgdesc="PHP 7 extension: Google's language-neutral, platform-neutral, extensible mechanism for serializing structured data."
-url="https://pecl.php.net/package/protobuf"
-arch="all"
-license="BSD-3-Clause"
-depends="php7-common"
-makedepends="php7-dev"
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir/$_extname-$pkgver"
-provides="php7-protobuf=$pkgver-r$pkgrel" # for backward compatibility
-replaces="php7-protobuf" # for backward compatibility
-
-build() {
- phpize7
- ./configure --prefix=/usr --with-php-config=php-config7
- make
-}
-
-check() {
- # Test suite is not a part of pecl release.
- php7 -d extension=modules/$_extname.so --ri $_extname
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php7/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/$_extname.ini
-}
-
-sha512sums="
-ebc1f0ed219ebdeeb110b16656c232fb04ac9dd7e3a6a6585d7be88437b1e127853086d18bab4a39a16a42557aef3b9c1e4a6a19e5e1fa0389c9c3a8cb9ab59a php-pecl-protobuf-3.21.1.tgz
-"
diff --git a/testing/php7-pecl-psr/APKBUILD b/testing/php7-pecl-psr/APKBUILD
deleted file mode 100644
index 8a0aeb85923..00000000000
--- a/testing/php7-pecl-psr/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Maintainer: Andy Postnikov <apostnikov@gmail.com>
-pkgname=php7-pecl-psr
-_extname=psr
-pkgver=1.2.0
-pkgrel=0
-pkgdesc="PHP 7 extension provides the accepted PSR interfaces, so they can be used in an extension - PECL"
-url="https://pecl.php.net/package/psr"
-arch="all"
-license="BSD-2-Clause"
-depends="php7-common"
-makedepends="php7-dev"
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir/$_extname-$pkgver"
-provides="php7-psr=$pkgver-r$pkgrel" # for backward compatibility
-replaces="php7-psr" # for backward compatibility
-
-build() {
- phpize7
- ./configure --prefix=/usr --with-php-config=php-config7
- make
-}
-
-check() {
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php7/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/$_extname.ini
-}
-
-sha512sums="
-90d4bc1cd2364a15775024806ec5bc1b8f60ed44569162016a0a78fca89f4ad0f0e0b1f9f09ebdcfe6a803e888bddd1d8ce73100eec52ecc21c2e505a35ee5dd php-pecl-psr-1.2.0.tgz
-"
diff --git a/testing/php7-pecl-rdkafka/APKBUILD b/testing/php7-pecl-rdkafka/APKBUILD
deleted file mode 100644
index 4991594d3e6..00000000000
--- a/testing/php7-pecl-rdkafka/APKBUILD
+++ /dev/null
@@ -1,38 +0,0 @@
-# Contributor: Gennady Feldman <gena01@gmail.com>
-# Maintainer: Gennady Feldman <gena01@gmail.com>
-pkgname=php7-pecl-rdkafka
-_extname=rdkafka
-pkgver=6.0.1
-pkgrel=0
-pkgdesc="A librdkafka bindings for PHP 7 providing a working client for Kafka - PECL"
-url="https://pecl.php.net/package/rdkafka"
-arch="all"
-license="MIT"
-depends="php7-common"
-makedepends="php7-dev file librdkafka-dev"
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir/$_extname-$pkgver"
-
-provides="php7-rdkafka=$pkgver-r$pkgrel" # for backward compatibility
-replaces="php7-rdkafka" # for backward compatibility
-
-build() {
- phpize7
- ./configure --prefix=/usr --with-php-config=/usr/bin/php-config7
- make
-}
-
-check() {
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php7/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/$_extname.ini
-}
-
-sha512sums="
-792bceb3537213a1d0249d2e176c2eae737f6a86b3e5e312773e6f9993e7fb28ba513c1238717b4e274a176ecd90977107b4c82384c02e4fc39b6bd0b018d902 php-pecl-rdkafka-6.0.1.tgz
-"
diff --git a/testing/php7-pecl-redis/APKBUILD b/testing/php7-pecl-redis/APKBUILD
deleted file mode 100644
index a2c050d6400..00000000000
--- a/testing/php7-pecl-redis/APKBUILD
+++ /dev/null
@@ -1,44 +0,0 @@
-# Contributor: Fabio Ribeiro <fabiorphp@gmail.com>
-# Maintainer: Fabio Ribeiro <fabiorphp@gmail.com>
-pkgname=php7-pecl-redis
-_extname=redis
-pkgver=5.3.7
-_pkgver=${pkgver/_rc/RC}
-pkgrel=0
-pkgdesc="PHP 7 extension for interfacing with Redis - PECL"
-url="https://pecl.php.net/package/redis"
-arch="all"
-license="PHP-3.01"
-depends="php7-common php7-pecl-igbinary php7-session php7-json"
-makedepends="php7-dev lz4-dev zstd-dev"
-source="php-pecl-$_extname-$_pkgver.tgz::https://pecl.php.net/get/$_extname-$_pkgver.tgz"
-builddir="$srcdir/$_extname-$_pkgver"
-provides="php7-redis=$pkgver-r$pkgrel" # for backward compatibility
-replaces="php7-redis" # for backward compatibility
-
-build() {
- phpize7
- ./configure --prefix=/usr --with-php-config=php-config7 \
- --enable-redis-igbinary \
- --enable-redis-lz4 --with-liblz4 \
- --enable-redis-lzf \
- --enable-redis-zstd
- make
-}
-
-check() {
- # Need running redis server
- php7 -d extension=modules/$_extname.so --ri $_extname
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
-
- local _confdir="$pkgdir"/etc/php7/conf.d
- mkdir -p $_confdir
- echo "extension=$_extname" > $_confdir/20_$_extname.ini
-}
-
-sha512sums="
-b945d5aa86d3f58e75094369b0f324e987202f104aca7d7b46ba23cfaed54d186bb66931e200dd16d2dbeea11732dd0311da4e3d7485c3b725027f7924652832 php-pecl-redis-5.3.7.tgz
-"
diff --git a/testing/php7-pecl-rrd/APKBUILD b/testing/php7-pecl-rrd/APKBUILD
deleted file mode 100644
index 857dc9054bc..00000000000
--- a/testing/php7-pecl-rrd/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Contributor: Pascal Hofmann <mail@pascalhofmann.de>
-# Contributor: Mickaël Remars <github@remars.com>
-# Maintainer: Mickaël Remars <github@remars.com>
-_pkgreal=rrd
-pkgname=php7-pecl-rrd
-pkgver=2.0.3
-pkgrel=0
-pkgdesc="PHP7 bindings to rrd tool system"
-url="https://pecl.php.net/package/rrd"
-arch="all"
-license="BSD-2-Clause" # just one word difference: "owner" in php-rrd's license, "holder" in bsd-2-clause
-depends="php7-common"
-makedepends="php7-dev re2c rrdtool-dev"
-checkdepends="rrdtool"
-source="$pkgname-$pkgver.tgz::http://pecl.php.net/get/$_pkgreal-$pkgver.tgz"
-builddir="$srcdir/$_pkgreal-$pkgver"
-
-build() {
- phpize7
- ./configure --prefix=/usr --with-php-config=php-config7
- make
-}
-
-check() {
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test
-}
-
-package() {
- local confdir="$pkgdir/etc/php7/conf.d"
-
- make INSTALL_ROOT="$pkgdir" install
-
- mkdir -p "$confdir"
- echo "extension=$_pkgreal.so" > "$confdir"/20_$_pkgreal.ini
-}
-
-sha512sums="28679ccead54806d1e92accc6f5ebab582a41db802f95797ddb43e3e15690889be3437f22e2a14939d217422ac2700ef90ae0a9b36244ddead3856343b3e09b4 php7-pecl-rrd-2.0.3.tgz"
diff --git a/testing/php7-pecl-seaslog/APKBUILD b/testing/php7-pecl-seaslog/APKBUILD
deleted file mode 100644
index c0772dc55a3..00000000000
--- a/testing/php7-pecl-seaslog/APKBUILD
+++ /dev/null
@@ -1,39 +0,0 @@
-# Contributor: viest <dev@service.viest.me>
-# Maintainer: Chitao.Gao <neeke@php.net>
-pkgname=php7-pecl-seaslog
-_extname=seaslog
-pkgver=2.2.0
-pkgrel=0
-pkgdesc="An effective, fast, stable log extension for PHP 7."
-url="https://pecl.php.net/package/SeasLog"
-arch="all"
-license="PHP-3.01"
-depends="php7-json"
-makedepends="php7-dev re2c"
-source="php-pecl-$_extname-$pkgver.tar.gz::https://pecl.php.net/get/SeasLog-$pkgver.tgz"
-builddir="$srcdir"/SeasLog-$pkgver
-
-build() {
- phpize7
- ./configure \
- --prefix=/usr \
- --with-php-config=/usr/bin/php-config7
- make
-}
-
-check() {
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test \
- PHP_TEST_SHARED_EXTENSIONS=" \
- -d extension=/usr/lib/php7/modules/json.so \
- -d extension=modules/$_extname.so"
- php7 -dextension=modules/$_extname.so --ri $_extname
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php7/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/$_extname.ini
-}
-
-sha512sums="5c1d7dd6641bd8b8f3bf2c52f4b427103643fa1b7407a89769de7f450e882f9a1484b5b8b1aecf13c8060966b3bbcb52cbaf1536b93a8bceca5104bfda547629 php-pecl-seaslog-2.2.0.tar.gz"
diff --git a/testing/php7-pecl-simple-kafka-client/APKBUILD b/testing/php7-pecl-simple-kafka-client/APKBUILD
deleted file mode 100644
index cfff1afca4f..00000000000
--- a/testing/php7-pecl-simple-kafka-client/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Maintainer: Nick Chiu <coding.nikazu@gmail.com>
-pkgname=php7-pecl-simple-kafka-client
-_extname=simple_kafka_client
-pkgver=0.1.4
-pkgrel=0
-pkgdesc="PHP 7 extension for Kafka based on librdkafka - PECL"
-url="https://pecl.php.net/package/simple_kafka_client"
-arch="all"
-license="BSD-3-Clause"
-depends="php7-common"
-makedepends="php7-dev file librdkafka-dev"
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir/$_extname-$pkgver"
-
-provides="php7-simple-kafka-client=$pkgver-r$pkgrel" # for backward compatibility
-replaces="php7-simple-kafka-client" # for backward compatibility
-
-build() {
- phpize7
- ./configure --prefix=/usr --with-php-config=/usr/bin/php-config7
- make
-}
-
-check() {
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php7/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/$_extname.ini
-}
-
-sha512sums="
-450055cfe1b5a4b966a4cfdffffc89a3d1ac737a9d0b24aa66126f925cdbb5d7b5287a8c7e9bea5fe859cd360ba4683564837f8abd93567b54e6284687c3f4fb php-pecl-simple_kafka_client-0.1.4.tgz
-"
diff --git a/testing/php7-pecl-smbclient/APKBUILD b/testing/php7-pecl-smbclient/APKBUILD
deleted file mode 100644
index bd67ab3fe97..00000000000
--- a/testing/php7-pecl-smbclient/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Contributor: Andy Postnikov <apostnikov@gmail.com>
-# Maintainer: Andy Postnikov <apostnikov@gmail.com>
-
-pkgname=php7-pecl-smbclient
-_extname=smbclient
-pkgver=1.0.6
-pkgrel=0
-pkgdesc="PHP 7 extension that uses Samba's libsmbclient library to provide Samba related functions and 'smb' streams to PHP programs."
-url="https://pecl.php.net/package/smbclient"
-arch="all"
-license="BSD-2-Clause"
-depends="php7-common"
-makedepends="php7-dev samba-dev"
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir"/$_extname-$pkgver
-
-build() {
- phpize7
- ./configure --prefix=/usr --with-php-config=php-config7
- make
-}
-
-check() {
- # Test suite require phpunit to run.
- php7 -d extension=modules/$_extname.so --ri smbclient
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php7/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/$_extname.ini
-}
-
-sha512sums="381051dbe6347ce3b0be9d1ed44ee80be846ce1cd4255689127220a48e3c157853e98ae463435a12342f6370b4e96c162069d8d00574aaf88675c5b9ad0810e8 php-pecl-smbclient-1.0.6.tgz"
diff --git a/testing/php7-pecl-solr/APKBUILD b/testing/php7-pecl-solr/APKBUILD
deleted file mode 100644
index 010e422e5f6..00000000000
--- a/testing/php7-pecl-solr/APKBUILD
+++ /dev/null
@@ -1,42 +0,0 @@
-# Contributor: Fabio Ribeiro <fabiorphp@gmail.com>
-# Maintainer: Fabio Ribeiro <fabiorphp@gmail.com>
-pkgname=php7-pecl-solr
-_pkgreal=solr
-pkgver=2.5.1
-pkgrel=0
-pkgdesc="Apache SOLR extension for PHP"
-url="https://pecl.php.net/package/solr"
-arch="all"
-license="PHP-3.01"
-depends="php7-json"
-makedepends="php7-dev curl-dev libxml2-dev"
-source="$pkgname-$pkgver.tgz::https://pecl.php.net/get/$_pkgreal-$pkgver.tgz
- fix-tests.patch"
-builddir="$srcdir"/$_pkgreal-$pkgver
-provides="php7-solr=$pkgver-r$pkgrel" # for backward compatibility
-replaces="php7-solr" # for backward compatibility
-
-build() {
- phpize7
- ./configure --prefix=/usr --with-php-config=php-config7
- make
-}
-
-check() {
- php7 -d extension=modules/$_pkgreal.so --ri $_pkgreal
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 SKIP_ONLINE_TESTS=1 test \
- TESTS='--show-diff' \
- PHP_TEST_SHARED_EXTENSIONS=" \
- -d extension=/usr/lib/php7/modules/json.so \
- -d extension=modules/$_pkgreal.so"
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir"/ install
- local _confdir=/etc/php7/conf.d
- install -d "$pkgdir"$_confdir
- echo "extension=$_pkgreal.so" > "$pkgdir"$_confdir/40_$_pkgreal.ini
-}
-
-sha512sums="b02711989455f3839e65835808dae66fdce6abfd85fe2cb3d46c4177deb2170b5993ee0c94177c880d3defac2d2c502b43d768b590b7180b5c38ab063f55bdf3 php7-pecl-solr-2.5.1.tgz
-553503d194c8c8c4db065a4c21136e51d4ba8bb9a74327d312a6506e12d91b4d2b72c5082741e961df7f3852fecf2374333c8f00a173ca2e6e7e6f1049ecf6cb fix-tests.patch"
diff --git a/testing/php7-pecl-solr/fix-tests.patch b/testing/php7-pecl-solr/fix-tests.patch
deleted file mode 100644
index 58dd72ce456..00000000000
--- a/testing/php7-pecl-solr/fix-tests.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-Summary: skip tests which require solr server
---- a/tests/test.config.inc
-+++ b/tests/test.config.inc
-@@ -1,6 +1,6 @@
- <?php
-
--define('SOLR_SERVER_CONFIGURED', true);
-+define('SOLR_SERVER_CONFIGURED', false);
-
- define('ROOT_DIRECTORY', dirname(__FILE__));
-
diff --git a/testing/php7-pecl-ssh2/APKBUILD b/testing/php7-pecl-ssh2/APKBUILD
deleted file mode 100644
index 5154b4bd3b6..00000000000
--- a/testing/php7-pecl-ssh2/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Contributor: Andy Postnikov <apostnikov@gmail.com>
-# Maintainer: Andy Postnikov <apostnikov@gmail.com>
-pkgname=php7-pecl-ssh2
-_extname=ssh2
-pkgver=1.3.1
-pkgrel=0
-pkgdesc="PHP 7 extension provide bindings for the libssh2 library - PECL"
-url="https://pecl.php.net/package/ssh2"
-arch="all"
-license="PHP-3.01"
-depends="php7-common"
-makedepends="php7-dev libssh2-dev"
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir/$_extname-$pkgver"
-provides="php7-ssh2=$pkgver-r$pkgrel" # for backward compatibility
-replaces="php7-ssh2" # for backward compatibility
-
-build() {
- phpize7
- ./configure --prefix=/usr --with-php-config=php-config7
- make
-}
-
-check() {
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test
- # Check extension loading, testsuite skips tests if extension broken
- php7 -d extension=modules/$_extname.so --ri $_extname
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php7/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/$_extname.ini
-}
-
-sha512sums="c74d4f699853148b53cdca0eaf8837bfdbdd21d185761606acadf2442e84dbefdb00cde207e0ce4794ae1e4f8692a38ed903b6d11fdc57bca7b54a4250da9a76 php-pecl-ssh2-1.3.1.tgz"
diff --git a/testing/php7-pecl-stats/APKBUILD b/testing/php7-pecl-stats/APKBUILD
deleted file mode 100644
index 9445a1a2f0c..00000000000
--- a/testing/php7-pecl-stats/APKBUILD
+++ /dev/null
@@ -1,43 +0,0 @@
-# Contributor: Fabio Ribeiro <fabiorphp@gmail.com>
-# Maintainer: Fabio Ribeiro <fabiorphp@gmail.com>
-pkgname=php7-pecl-stats
-_extname=stats
-pkgver=2.0.4
-pkgrel=0
-pkgdesc="PHP 7 extension that provides few dozens routines for statistical computation."
-url="https://pecl.php.net/package/stats"
-arch="all !s390x" # too many tests fails on s390x
-license="PHP-3.01"
-depends="php7-common"
-makedepends="php7-dev"
-_commit="fac78cf926bb00c9974379c7131c58b7545e5b15"
-source="php-pecl-$_extname-$_commit.tar.gz::https://github.com/php/pecl-math-stats/archive/$_commit.tar.gz"
-builddir="$srcdir"/pecl-math-stats-$_commit
-#source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-#builddir="$srcdir"/$_pkgreal-$pkgver
-provides="php7-stats=$pkgver-r$pkgrel" # for backward compatibility
-replaces="php7-stats" # for backward compatibility
-
-build() {
- phpize7
- ./configure --prefix=/usr --with-php-config=php-config7
- make
-}
-
-check() {
- php7 -dextension=modules/$_extname.so --ri $_extname
- case "$CARCH" in
- # Remove test fail https://bugs.php.net/bug.php?id=76163
- aarch64 | ppc64le) rm tests/stats_stat_correlation.phpt
- esac
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php7/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/60_$_extname.ini
-}
-
-sha512sums="0f359761512aa3c11bad1aa4c812e9a6a35d8e659b9aab4a38e5218dab5d7a33ebe349d9a6f25c9bfa361989281c68988f22988d3d4a357a610700c99897881c php-pecl-stats-fac78cf926bb00c9974379c7131c58b7545e5b15.tar.gz"
diff --git a/testing/php7-pecl-swoole/APKBUILD b/testing/php7-pecl-swoole/APKBUILD
deleted file mode 100644
index 3f4ca91e0cf..00000000000
--- a/testing/php7-pecl-swoole/APKBUILD
+++ /dev/null
@@ -1,52 +0,0 @@
-# Maintainer: Andy Postnikov <apostnikov@gmail.com>
-pkgname=php7-pecl-swoole
-_extname=swoole
-pkgver=4.8.9
-pkgrel=0
-pkgdesc="Event-driven asynchronous and concurrent networking engine with high performance for PHP 7.4 - PECL"
-url="https://pecl.php.net/package/swoole"
-arch="all"
-license="Apache-2.0"
-depends="php7-curl php7-json php7-mysqlnd php7-openssl php7-sockets"
-makedepends="php7-dev openssl1.1-compat-dev nghttp2-dev c-ares-dev curl-dev"
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir"/$_extname-$pkgver
-subpackages="$pkgname-dev"
-replaces="php7-pecl-openswoole"
-
-case "$CARCH" in
- ppc64le|s390x) makedepends="$makedepends libucontext-dev" ;;
-esac
-
-build() {
- case "$CARCH" in
- ppc64le|s390x) export LDFLAGS="$LDFLAGS -lucontext" ;;
- esac
- phpize7
- ./configure --prefix=/usr \
- --with-php-config=php-config7 \
- --enable-mysqlnd \
- --enable-openssl --with-openssl-dir=/usr \
- --enable-sockets \
- --enable-swoole-curl \
- --enable-swoole-json \
- --enable-cares \
- --enable-http2
- make
-}
-
-check() {
- # needs extra services to test all suite
- php7 -d extension=modules/swoole.so --ri swoole
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php7/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/50_$_extname.ini
-}
-
-sha512sums="
-4531fb87b9b3bf5bbd05b07f9f10a04ad1530ffd610ca899dd6731c557e82b235c70c2f3c2edc6c1b6ba0484a1594e0375ef6054291578a324fb3b61d0bca232 php-pecl-swoole-4.8.9.tgz
-"
diff --git a/testing/php7-pecl-timezonedb/APKBUILD b/testing/php7-pecl-timezonedb/APKBUILD
deleted file mode 100644
index be59c589929..00000000000
--- a/testing/php7-pecl-timezonedb/APKBUILD
+++ /dev/null
@@ -1,38 +0,0 @@
-# Contributor: Fabio Ribeiro <fabiorphp@gmail.com>
-# Maintainer: Fabio Ribeiro <fabiorphp@gmail.com>
-pkgname=php7-pecl-timezonedb
-_extname=timezonedb
-pkgver=2021.5
-pkgrel=0
-pkgdesc="Timezone Database to be used with PHP's date and time functions."
-url="https://pecl.php.net/package/timezonedb"
-arch="all"
-license="PHP-3.01"
-depends="php7-common"
-makedepends="php7-dev"
-source="https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir/$_extname-$pkgver"
-provides="php7-timezonedb=$pkgver-r$pkgrel" # for backward compatibility
-replaces="php7-timezonedb" # for backward compatibility
-
-build() {
- phpize7
- ./configure --prefix=/usr --with-php-config=php-config7
- make
-}
-
-check() {
- # Test suite is not a part of pecl release.
- php7 -d extension=modules/$_extname.so --ri $_extname
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php7/conf.d
- install -d $_confdir
- echo "extension=$_extname.so" > $_confdir/40_$_extname.ini
-}
-
-sha512sums="
-ac295df0dbc833e1b6d452df2fa0a316cc8df95abf6aaf809a87401256c891b9ba0e663dc300e5a0fdf1c0e3566b9eea580eff12ed4d2bcc4355b13eb5893d9e timezonedb-2021.5.tgz
-"
diff --git a/testing/php7-pecl-uploadprogress/APKBUILD b/testing/php7-pecl-uploadprogress/APKBUILD
deleted file mode 100644
index 726394af4f1..00000000000
--- a/testing/php7-pecl-uploadprogress/APKBUILD
+++ /dev/null
@@ -1,45 +0,0 @@
-# Contributor: Andy Postnikov <apostnikov@gmail.com>
-# Maintainer: Andy Postnikov <apostnikov@gmail.com>
-
-pkgname=php7-pecl-uploadprogress
-_extname=uploadprogress
-pkgver=2.0.2
-pkgrel=0
-pkgdesc="An extension to track progress of a file upload for PHP 7.4 - PECL"
-url="https://pecl.php.net/package/uploadprogress"
-arch="all"
-license="PHP-3.01"
-depends="php7-common"
-makedepends="php7-dev"
-subpackages="$pkgname-doc::noarch"
-source="php-pecl-$_extname-$pkgver.tar.gz::https://pecl.php.net/get/uploadprogress-$pkgver.tgz"
-builddir="$srcdir/$_extname-$pkgver"
-provides="php7-uploadprogress=$pkgver-r$pkgrel" # for backward compatibility
-replaces="php7-uploadprogress" # for backward compatibility
-
-build() {
- phpize7
- ./configure --prefix=/usr --with-php-config=php-config7
- make
-}
-
-check() {
- php7 -d extension="$builddir"/modules/$_extname.so --ri $_extname
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS='--show-diff '
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
-
- local confdir="$pkgdir/etc/php7/conf.d"
- mkdir -p "$confdir"
- echo "extension=$_extname" > "$confdir"/$_extname.ini
-
- local docdir="$pkgdir"/usr/share/doc/$pkgname
- install -Dm644 -t $docdir README.md
- cp -r examples/. $docdir/examples
-}
-
-sha512sums="
-b9ee5a09c3de78d58abd34da2d25d7b0cad38416309a9a69192f07e0c3fe2259de261bb3dee571e64e042753f861738ebcd67fa7fafeb595ec32ed3034c773cd php-pecl-uploadprogress-2.0.2.tar.gz
-"
diff --git a/testing/php7-pecl-uuid/APKBUILD b/testing/php7-pecl-uuid/APKBUILD
deleted file mode 100644
index ee140da4009..00000000000
--- a/testing/php7-pecl-uuid/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Contributor: Fabio Ribeiro <fabiorphp@gmail.com>
-# Maintainer: Fabio Ribeiro <fabiorphp@gmail.com>
-pkgname=php7-pecl-uuid
-_extname=uuid
-pkgver=1.2.0
-pkgrel=0
-pkgdesc="A wrapper around libuuid from the ext2utils project."
-url="https://pecl.php.net/package/uuid"
-arch="all"
-license="LGPL-2.1-or-later"
-depends="php7-common"
-makedepends="php7-dev util-linux-dev"
-source="$pkgname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir/$_extname-$pkgver"
-provides="php7-uuid=$pkgver-r$pkgrel" # for backward compatibility
-replaces="php7-uuid" # for backward compatibility
-
-build() {
- phpize7
- ./configure --prefix=/usr --with-php-config=php-config7
- make
-}
-
-check() {
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php7/conf.d
- install -d $_confdir
- echo "extension=$_extname.so" > $_confdir/50_$_extname.ini
-}
-
-sha512sums="bd557823a8c2b78f74675a2554445eafc69193c6fe5af1f9435cdd90a8efdec0d3974ae8af759fe7d30b2f805876fc2ef55058dea245c9d89a792f634fdb0a10 php7-pecl-uuid-1.2.0.tgz"
diff --git a/testing/php7-pecl-varnish/APKBUILD b/testing/php7-pecl-varnish/APKBUILD
deleted file mode 100644
index 237ef3409a0..00000000000
--- a/testing/php7-pecl-varnish/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Contributor: Andy Postnikov <apostnikov@gmail.com>
-# Maintainer: Andy Postnikov <apostnikov@gmail.com>
-pkgname=php7-pecl-varnish
-_extname=varnish
-pkgver=1.2.6
-pkgrel=1
-pkgdesc="PHP 7 extension: makes it possible to interact with a running varnish instance through TCP socket or shared memory."
-url="https://pecl.php.net/package/varnish"
-arch="all"
-license="BSD-3-Clause"
-depends="php7-common"
-makedepends="php7-dev autoconf libtool varnish-dev"
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir/$_extname-$pkgver"
-provides="php7-varnish=$pkgver-r$pkgrel" # for backward compatibility
-replaces="php7-varnish" # for backward compatibility
-
-build() {
- phpize7
- ./configure --prefix=/usr --with-php-config=php-config7
- make
-}
-
-check() {
- php7 -dextension=modules/$_extname.so --ri $_extname
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php7/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/$_extname.ini
-}
-
-sha512sums="d17e285a134d2541ddea2bfc8627bc4926b3dbeeee1e9c729cd49c17608030764435662148b0dc43dc0eb1eab5d5dc8fd88c86aca40178afaf1ec85fa3e63aae php-pecl-varnish-1.2.6.tgz"
diff --git a/testing/php7-pecl-vips/APKBUILD b/testing/php7-pecl-vips/APKBUILD
deleted file mode 100644
index 74e154bddc2..00000000000
--- a/testing/php7-pecl-vips/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Contributor: TBK <alpine@jjtc.eu>
-# Maintainer: TBK <alpine@jjtc.eu>
-pkgname=php7-pecl-vips
-_pkgname=vips
-pkgver=1.0.13
-pkgrel=0
-pkgdesc="PHP extension for interfacing with vips - PECL"
-url="https://pecl.php.net/package/vips"
-arch="all !ppc64le" # Limited by vips aport
-license="MIT"
-depends="php7-common"
-makedepends="php7-dev autoconf vips-dev"
-source="$pkgname-$pkgver.tgz::https://pecl.php.net/get/$_pkgname-$pkgver.tgz"
-builddir="$srcdir/$_pkgname-$pkgver"
-
-build() {
- phpize7
- ./configure --prefix=/usr --with-php-config=php-config7
- make
-}
-
-check() {
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 SKIP_ONLINE_TESTS=1 test
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
-
- install -d "$pkgdir"/etc/php7/conf.d
- echo "extension=$_pkgname.so" > "$pkgdir"/etc/php7/conf.d/$_pkgname.ini
-}
-
-sha512sums="
-005660e3adb834e38a57b559411f4d33ec3efc5b2bc2e9afe182826618a7670530635ca684e73af2eb2c30ac4d3360653ba53fcfbcb835c712341bd6ed98bea3 php7-pecl-vips-1.0.13.tgz
-"
diff --git a/testing/php7-pecl-xdebug/APKBUILD b/testing/php7-pecl-xdebug/APKBUILD
deleted file mode 100644
index 1243fe2dcac..00000000000
--- a/testing/php7-pecl-xdebug/APKBUILD
+++ /dev/null
@@ -1,49 +0,0 @@
-# Contributor: Andy Postnikov <apostnikov@gmail.com>
-# Contributor: Valery Kartel <valery.kartel@gmail.com>
-# Contributor: Fabio Ribeiro <fabiorphp@gmail.com>
-# Maintainer: Andy Postnikov <apostnikov@gmail.com>
-pkgname=php7-pecl-xdebug
-_extname=xdebug
-pkgver=3.1.4
-pkgrel=0
-pkgdesc="PHP extension that provides functions for function traces and profiling - PECL"
-url="https://pecl.php.net/package/xdebug"
-arch="all"
-license="PHP-3.0"
-depends="php7-common"
-makedepends="php7-dev"
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir/$_extname-$pkgver"
-provides="php7-xdebug=$pkgver-r$pkgrel" # for backward compatibility
-replaces="php7-xdebug" # for backward compatibility
-
-build() {
- phpize7
- ./configure --prefix=/usr --with-php-config=php-config7
- make
-}
-
-check() {
- # PECL package has no test suite.
- php7 -d zend_extension="$builddir"/modules/xdebug.so -r 'xdebug_info();'
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
-
- local _confdir="$pkgdir"/etc/php7/conf.d
- mkdir -p $_confdir
- # should go after opcache
- cat > $_confdir/50_$_extname.ini <<-EOF
- ; Uncomment and configure mode https://xdebug.org/docs/all_settings#xdebug.mode
- ;zend_extension=$_extname.so
- ;xdebug.mode=off
- EOF
-
- install -D -m644 -t "$pkgdir"/usr/share/php8/xdebug/ contrib/tracefile-analyser.php
- install -D -m644 -t "$pkgdir"/usr/share/vim/vimfiles/syntax/ contrib/xt.vim
-}
-
-sha512sums="
-5eb41fed8b470d53dfcae8896d1de2ab5dacc069f3c49a2b189f237d2247dc227d61691539dce3d782c18887beb7204467a97ee6245a547a33408134d8e01800 php-pecl-xdebug-3.1.4.tgz
-"
diff --git a/testing/php7-pecl-xhprof/APKBUILD b/testing/php7-pecl-xhprof/APKBUILD
deleted file mode 100644
index 7450049833c..00000000000
--- a/testing/php7-pecl-xhprof/APKBUILD
+++ /dev/null
@@ -1,56 +0,0 @@
-# Contributor: Andy Postnikov <apostnikov@gmail.com>
-# Maintainer: Andy Postnikov <apostnikov@gmail.com>
-
-pkgname=php7-pecl-xhprof
-_extname=xhprof
-pkgver=2.3.5
-pkgrel=0
-pkgdesc="A Hierarchical Profiler for PHP 7 - PECL"
-url="https://pecl.php.net/package/xhprof"
-arch="all"
-license="Apache-2.0"
-depends="php7-common"
-makedepends="php7-dev"
-_assetsdepends="php7-ctype graphviz ghostscript-fonts"
-subpackages="$pkgname-assets::noarch"
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir/$_extname-$pkgver/extension"
-provides="php7-xhprof=$pkgver-r$pkgrel" # for backward compatibility
-replaces="php7-xhprof" # for backward compatibility
-
-build() {
- phpize7
- ./configure --with-php-config=php-config7
- make
-}
-
-check() {
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php7/conf.d
- install -d $_confdir
- cat > $_confdir/$_extname.ini <<-EOF
- extension=$_extname
- xhprof.output_dir=/tmp
- EOF
-}
-
-assets() {
- pkgdesc="A Hierarchical Profiler for PHP (UI assets)"
- depends="$_assetsdepends"
- provides="php7-xhprof-assets=$pkgver-r$pkgrel" # for backward compatibility
- replaces="php7-xhprof-assets" # for backward compatibility
-
- local _assetsdir="$subpkgdir"/usr/share/php7/xhprof
- install -d $_assetsdir
- cp -R "$builddir"/../xhprof_lib $_assetsdir
- cp -R "$builddir"/../xhprof_html $_assetsdir
- cp -R "$builddir"/../examples $_assetsdir
-}
-
-sha512sums="
-50ae6fb8d63ac8354b7887daecd1882f33e616cd1ef165b54d51f26fa93d2827f621e89d0d583979c453af5d66a83ddcbf0eb2d462df74ebb422294e601268f4 php-pecl-xhprof-2.3.5.tgz
-"
diff --git a/testing/php7-pecl-xlswriter/APKBUILD b/testing/php7-pecl-xlswriter/APKBUILD
deleted file mode 100644
index aba60e48518..00000000000
--- a/testing/php7-pecl-xlswriter/APKBUILD
+++ /dev/null
@@ -1,38 +0,0 @@
-# Contributor: viest <dev@service.viest.me>
-# Maintainer: viest <dev@service.viest.me>
-pkgname=php7-pecl-xlswriter
-_extname=xlswriter
-pkgver=1.5.2
-pkgrel=0
-pkgdesc="A PHP 7 Extension for creating and reader XLSX files. "
-url="https://pecl.php.net/package/xlswriter"
-arch="all"
-license="BSD-2-Clause"
-depends="php7-common"
-makedepends="php7-dev zlib-dev"
-source="php-pecl-$_extname-$pkgver.tar.gz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir"/$_extname-$pkgver
-
-build() {
- phpize7
- ./configure \
- --enable-reader \
- --prefix=/usr \
- --with-php-config=/usr/bin/php-config7
- make
-}
-
-check() {
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php7/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/$_extname.ini
-}
-
-sha512sums="
-cd218341c8247fff9823056f197dd0d5273a14c4ff66e0ebda4a77d5a7458389cd3eaf11ad9664732fb2636f57f948848cf5cb31daa35f97d9650db1d010e73d php-pecl-xlswriter-1.5.2.tar.gz
-"
diff --git a/testing/php7-pecl-yaml/APKBUILD b/testing/php7-pecl-yaml/APKBUILD
deleted file mode 100644
index c27ee71098a..00000000000
--- a/testing/php7-pecl-yaml/APKBUILD
+++ /dev/null
@@ -1,39 +0,0 @@
-# Maintainer: Renoir Boulanger <hello@renoirboulanger.com>
-pkgname=php7-pecl-yaml
-_extname=yaml
-pkgver=2.2.2
-pkgrel=0
-pkgdesc="YAML syntax bindings for PHP 7 - PECL"
-url="https://pecl.php.net/package/yaml"
-arch="all"
-license="MIT"
-depends="php7-common"
-makedepends="php7-dev yaml-dev"
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir/$_extname-$pkgver"
-provides="php7-yaml=$pkgver-r$pkgrel" # for backward compatibility
-replaces="php7-yaml" # for backward compatibility
-
-build() {
- phpize7
- ./configure \
- --prefix=/usr \
- --with-php-config=php-config7
- make
-}
-
-# Thanks to @TBK for https://github.com/php/pecl-file_formats-yaml/pull/29
-check() {
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php7/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/70_$_extname.ini
-}
-
-sha512sums="
-4c1d3012623154b8d74908fb319a637d7bff178d02d0732d1a3d19d24df2c612d62948eb7dcd9ead9fd31f2da7af0cec54657b8cce128968a04079dd0002117d php-pecl-yaml-2.2.2.tgz
-"
diff --git a/testing/php7-pecl-zmq/APKBUILD b/testing/php7-pecl-zmq/APKBUILD
deleted file mode 100644
index 181a62085ca..00000000000
--- a/testing/php7-pecl-zmq/APKBUILD
+++ /dev/null
@@ -1,40 +0,0 @@
-# Contributor: Fabio Ribeiro <fabiorphp@gmail.com>
-# Maintainer: Fabio Ribeiro <fabiorphp@gmail.com>
-pkgname=php7-pecl-zmq
-_pkgreal=zmq
-pkgver=1.1.3
-pkgrel=8
-pkgdesc="PHP extension for ZeroMQ - PECL"
-url="https://pecl.php.net/package/zmq"
-arch="all"
-license="PHP-3.01"
-depends="php7-common"
-makedepends="php7-dev zeromq-dev"
-source="$pkgname-$pkgver.tgz::https://pecl.php.net/get/$_pkgreal-$pkgver.tgz
- fix-php-7.3-compile.patch
- fix-php-7.4-compile.patch"
-builddir="$srcdir/$_pkgreal-$pkgver"
-provides="php7-zmq=$pkgver-r$pkgrel" # for backward compatibility
-replaces="php7-zmq" # for backward compatibility
-
-build() {
- phpize7
- ./configure --prefix=/usr --with-php-config=php-config7
- make
-}
-
-check() {
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
-
- local confdir="$pkgdir/etc/php7/conf.d"
- mkdir -p "$confdir"
- echo "extension=$_pkgreal.so" > "$confdir"/50_$_pkgreal.ini
-}
-
-sha512sums="0f03016e315a6c6a1e1d6eca1e20564834d2a924cef06af1b38693933f1e5a094c37e9c432705a64f61d95e82655f61358fc7783e7a6f06c7dd9ad84fc6f7bbc php7-pecl-zmq-1.1.3.tgz
-3fda312b76106a1b78e35ffce3199bf52d040008e5fc9c134dd0b3f4a41ceef8857e8cae10b208dfd9b7394dfea652533a258f523da9b5f870d381bddd780797 fix-php-7.3-compile.patch
-58288af1fd1441491c7f5cc7be967ba8e806a8d80141d4c3699af9a977ede57f3f464922bc218f3aabdce965699fea5a016954ca538f98559553625d33ff2d4f fix-php-7.4-compile.patch"
diff --git a/testing/php7-pecl-zmq/fix-php-7.3-compile.patch b/testing/php7-pecl-zmq/fix-php-7.3-compile.patch
deleted file mode 100644
index dcf899bba7f..00000000000
--- a/testing/php7-pecl-zmq/fix-php-7.3-compile.patch
+++ /dev/null
@@ -1,266 +0,0 @@
-From af02bde61c2a5af1ae64cac09ffe2b25237aa58e Mon Sep 17 00:00:00 2001
-Patch-Origin: https://github.com/mkoppanen/php-zmq/commit/af02bde61c2a5af1ae64cac09ffe2b25237aa58e
-From: Alex/AT <alex@alex-at.net>
-Date: Mon, 10 Dec 2018 06:02:27 +0300
-Subject: [PATCH] PHP 7.3 compatibility and bugfixes
-
-- Define new GC_ADDREF/DELREF/SET_REFCOUNT macros for older PHP versions and use them instead of direct GC reference counter access
-
-- Fixup all necessary 'long' type parameters to 'zend_long', PHP 7.3 makes it mandatory, also fixup some direct function implementations to accept the same
-
-- In php_zmq_recv(), zend_string_init() was wrongly called with third parameter as '1', marking new string with IS_STR_PERSISTENT, this caused heap corruption and/or segfaults with PHP 7.3 and could possibly cause other sorts of bugs under any 7.x version
- With ZVAL_STRINGL macro, this last '1' parameter meant to copy the string and was seemingly erroneously moved to zend_string_init(). zend_string_init() copies string by default, and last parameter has totally different meaning here
-
-- In poll(), flag ZVAL separation on passed arrays (PHP 7.3 makes it mandatory)
-
-- Test 19 (exception on connect callback with forced reference parameter): skip on PHP 7.1 and higher, PHP >= 7.1 started to fallback to passing argument by value instead of failing
-
-- Test 21 (warning generation from callback): it is ok, but PHP 7.3 uses 'int' instead of 'integer' for constants, so allow any word in place of the word 'integer'
----
- php_zmq.h | 6 ++++
- tests/019-callbackinvalidsignature.phpt | 3 +-
- tests/021-callbackwarning.phpt | 2 +-
- zmq.c | 40 ++++++++++++-------------
- zmq_sockopt.c | 4 +--
- 5 files changed, 30 insertions(+), 25 deletions(-)
-
-diff --git a/php_zmq.h b/php_zmq.h
-index ef50bfb..3833967 100644
---- a/php_zmq.h
-+++ b/php_zmq.h
-@@ -44,6 +44,12 @@
-
- #include "php.h"
-
-+#if PHP_VERSION_ID < 70300
-+#define GC_ADDREF(p) ++GC_REFCOUNT(p)
-+#define GC_DELREF(p) --GC_REFCOUNT(p)
-+#define GC_SET_REFCOUNT(p, rc) GC_REFCOUNT(p) = rc
-+#endif
-+
- extern zend_module_entry zmq_module_entry;
- #define phpext_zmq_ptr &zmq_module_entry
-
-diff --git a/tests/019-callbackinvalidsignature.phpt b/tests/019-callbackinvalidsignature.phpt
-index 753de31..b5bb20c 100644
---- a/tests/019-callbackinvalidsignature.phpt
-+++ b/tests/019-callbackinvalidsignature.phpt
-@@ -1,7 +1,8 @@
- --TEST--
- Test callback edge-cases
- --SKIPIF--
--<?php require_once(dirname(__FILE__) . '/skipif.inc'); ?>
-+<?php require_once(dirname(__FILE__) . '/skipif.inc');
-+if (PHP_VERSION_ID >= 70100) die("skip PHP 7.1 and higher fallback to passing argument by value even when forced to reference"); ?>
- --FILE--
- <?php
-
-diff --git a/tests/021-callbackwarning.phpt b/tests/021-callbackwarning.phpt
-index 435743e..eba2ecf 100644
---- a/tests/021-callbackwarning.phpt
-+++ b/tests/021-callbackwarning.phpt
-@@ -13,5 +13,5 @@ function generate_warning($a, $b)
- $socket = new ZMQSocket(new ZMQContext(), ZMQ::SOCKET_REQ, 'persistent_socket', 'generate_warning');
-
- --EXPECTF--
--Warning: in_array() expects parameter 2 to be array, integer given in %s on line %d
-+Warning: in_array() expects parameter 2 to be array, %s given in %s on line %d
-
-diff --git a/zmq.c b/zmq.c
-index 942e69b..57ebd11 100644
---- a/zmq.c
-+++ b/zmq.c
-@@ -235,7 +235,7 @@ php_zmq_context *php_zmq_context_get(zend_long io_threads, zend_bool is_persiste
- le.type = php_zmq_context_list_entry();
- le.ptr = context;
-
-- GC_REFCOUNT(&le) = 1;
-+ GC_SET_REFCOUNT(&le, 1);
-
- /* plist_key is not a persistent allocated key, thus we use str_update here */
- if (zend_hash_str_update_mem(&EG(persistent_list), plist_key->val, plist_key->len, &le, sizeof(le)) == NULL) {
-@@ -369,7 +369,7 @@ PHP_METHOD(zmq, curvekeypair)
- PHP_METHOD(zmqcontext, __construct)
- {
- php_zmq_context_object *intern;
-- long io_threads = 1;
-+ zend_long io_threads = 1;
- zend_bool is_persistent = 1;
-
- if (zend_parse_parameters(ZEND_NUM_ARGS(), "|lb", &io_threads, &is_persistent) == FAILURE) {
-@@ -495,7 +495,7 @@ PHP_METHOD(zmqcontext, getOpt)
- Create a new zmq socket
- */
- static
--php_zmq_socket *php_zmq_socket_new(php_zmq_context *context, int type, zend_bool is_persistent)
-+php_zmq_socket *php_zmq_socket_new(php_zmq_context *context, zend_long type, zend_bool is_persistent)
- {
- php_zmq_socket *zmq_sock;
-
-@@ -503,7 +503,7 @@ php_zmq_socket *php_zmq_socket_new(php_zmq_context *context, int type, zend_bool
- zmq_sock->z_socket = zmq_socket(context->z_ctx, type);
- zmq_sock->pid = getpid();
- zmq_sock->ctx = context;
-- zmq_sock->socket_type = type;
-+ zmq_sock->socket_type = type;
-
- if (!zmq_sock->z_socket) {
- pefree(zmq_sock, is_persistent);
-@@ -535,7 +535,7 @@ void php_zmq_socket_store(php_zmq_socket *zmq_sock_p, zend_long type, zend_strin
- le.type = php_zmq_socket_list_entry();
- le.ptr = zmq_sock_p;
-
-- GC_REFCOUNT(&le) = 1;
-+ GC_SET_REFCOUNT(&le, 1);
-
- plist_key = php_zmq_socket_plist_key(type, persistent_id, use_shared_ctx);
-
-@@ -796,7 +796,7 @@ PHP_METHOD(zmqsocket, __construct)
-
- /* {{{ static zend_bool php_zmq_send(php_zmq_socket_object *intern, char *message_param, long flags)
- */
--static zend_bool php_zmq_send(php_zmq_socket_object *intern, zend_string *message_param, long flags)
-+static zend_bool php_zmq_send(php_zmq_socket_object *intern, zend_string *message_param, zend_long flags)
- {
- int rc, errno_;
- zmq_msg_t message;
-@@ -828,7 +828,7 @@ static void php_zmq_sendmsg_impl(INTERNAL_FUNCTION_PARAMETERS)
- {
- php_zmq_socket_object *intern;
- zend_string *message_param;
-- long flags = 0;
-+ zend_long flags = 0;
- zend_bool ret;
-
- if (zend_parse_parameters(ZEND_NUM_ARGS(), "S|l", &message_param, &flags) == FAILURE) {
-@@ -890,7 +890,7 @@ PHP_METHOD(zmqsocket, sendmulti)
- zval *messages;
- php_zmq_socket_object *intern;
- int to_send, ret = 0;
-- long flags = 0;
-+ zend_long flags = 0;
-
- if (zend_parse_parameters(ZEND_NUM_ARGS(), "a|l", &messages, &flags) == FAILURE) {
- return;
-@@ -910,7 +910,7 @@ PHP_METHOD(zmqsocket, sendmulti)
- /* {{{ static zend_bool php_zmq_recv(php_zmq_socket_object *intern, long flags, zval *return_value)
- */
- static
--zend_string *php_zmq_recv(php_zmq_socket_object *intern, long flags)
-+zend_string *php_zmq_recv(php_zmq_socket_object *intern, zend_long flags)
- {
- int rc, errno_;
- zmq_msg_t message;
-@@ -933,7 +933,7 @@ zend_string *php_zmq_recv(php_zmq_socket_object *intern, long flags)
- return NULL;
- }
-
-- str = zend_string_init(zmq_msg_data(&message), zmq_msg_size(&message), 1);
-+ str = zend_string_init(zmq_msg_data(&message), zmq_msg_size(&message), 0);
- zmq_msg_close(&message);
- return str;
- }
-@@ -943,7 +943,7 @@ static void php_zmq_recvmsg_impl(INTERNAL_FUNCTION_PARAMETERS)
- {
- zend_string *str = NULL;
- php_zmq_socket_object *intern;
-- long flags = 0;
-+ zend_long flags = 0;
-
- if (zend_parse_parameters(ZEND_NUM_ARGS(), "|l", &flags) == FAILURE) {
- return;
-@@ -974,7 +974,7 @@ PHP_METHOD(zmqsocket, recvmulti)
- {
- php_zmq_socket_object *intern;
- size_t value_len;
-- long flags = 0;
-+ zend_long flags = 0;
- #if ZMQ_VERSION_MAJOR < 3
- int64_t value;
- #else
-@@ -1303,7 +1303,7 @@ PHP_METHOD(zmqpoll, add)
- {
- php_zmq_poll_object *intern;
- zval *object;
-- long events;
-+ zend_long events;
- int error;
- zend_string *key;
-
-@@ -1423,10 +1423,10 @@ PHP_METHOD(zmqpoll, poll)
- php_zmq_poll_object *intern;
- zval *r_array, *w_array;
-
-- long timeout = -1;
-+ zend_long timeout = -1;
- int rc;
-
-- if (zend_parse_parameters(ZEND_NUM_ARGS(), "a!a!|l", &r_array, &w_array, &timeout) == FAILURE) {
-+ if (zend_parse_parameters(ZEND_NUM_ARGS(), "a!/a!/|l", &r_array, &w_array, &timeout) == FAILURE) {
- return;
- }
-
-@@ -1592,7 +1592,7 @@ void s_clear_device_callback (php_zmq_device_cb_t *cb)
- }
-
- static
--void s_init_device_callback (php_zmq_device_cb_t *cb, zend_fcall_info *fci, zend_fcall_info_cache *fci_cache, long timeout, zval *user_data)
-+void s_init_device_callback (php_zmq_device_cb_t *cb, zend_fcall_info *fci, zend_fcall_info_cache *fci_cache, zend_long timeout, zval *user_data)
- {
- memcpy (&cb->fci, fci, sizeof (zend_fcall_info));
- memcpy (&cb->fci_cache, fci_cache, sizeof (zend_fcall_info_cache));
-@@ -1615,7 +1615,7 @@ void s_init_device_callback (php_zmq_device_cb_t *cb, zend_fcall_info *fci, zend
- PHP_METHOD(zmqdevice, setidletimeout)
- {
- php_zmq_device_object *intern;
-- long timeout;
-+ zend_long timeout;
-
- if (zend_parse_parameters(ZEND_NUM_ARGS(), "l", &timeout) == FAILURE) {
- return;
-@@ -1644,7 +1644,7 @@ PHP_METHOD(zmqdevice, getidletimeout)
- PHP_METHOD(zmqdevice, settimertimeout)
- {
- php_zmq_device_object *intern;
-- long timeout;
-+ zend_long timeout;
-
- if (zend_parse_parameters(ZEND_NUM_ARGS(), "l", &timeout) == FAILURE) {
- return;
-@@ -1676,7 +1676,7 @@ PHP_METHOD(zmqdevice, setidlecallback)
- zval *user_data = NULL;
- zend_fcall_info fci;
- zend_fcall_info_cache fci_cache;
-- long timeout = 0;
-+ zend_long timeout = 0;
-
- if (ZEND_NUM_ARGS() == 2) {
- php_error_docref(NULL, E_DEPRECATED, "The signature for setIdleCallback has changed, please update your code");
-@@ -1718,7 +1718,7 @@ PHP_METHOD(zmqdevice, settimercallback)
- zval *user_data = NULL;
- zend_fcall_info fci;
- zend_fcall_info_cache fci_cache;
-- long timeout;
-+ zend_long timeout;
-
- if (zend_parse_parameters(ZEND_NUM_ARGS(), "fl|z!", &fci, &fci_cache, &timeout, &user_data) == FAILURE) {
- return;
-diff --git a/zmq_sockopt.c b/zmq_sockopt.c
-index 1357032..3a00421 100644
---- a/zmq_sockopt.c
-+++ b/zmq_sockopt.c
-@@ -1,5 +1,3 @@
--
--
- /*
- +-----------------------------------------------------------------------------------+
- | ZMQ extension for PHP |
-@@ -2033,7 +2031,7 @@ PHP_METHOD(zmqsocket, getsockopt)
- PHP_METHOD(zmqsocket, setsockopt)
- {
- php_zmq_socket_object *intern;
-- long key;
-+ zend_long key;
- zval *zv;
-
- if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "lz/", &key, &zv) == FAILURE) {
diff --git a/testing/php7-pecl-zmq/fix-php-7.4-compile.patch b/testing/php7-pecl-zmq/fix-php-7.4-compile.patch
deleted file mode 100644
index 965f32a7a72..00000000000
--- a/testing/php7-pecl-zmq/fix-php-7.4-compile.patch
+++ /dev/null
@@ -1,261 +0,0 @@
-From 4ad1b33e095924bd4ccf79295999dd54edaaac37 Mon Sep 17 00:00:00 2001
-From: Luca Boccassi <luca.boccassi@gmail.com>
-Date: Thu, 5 Mar 2020 22:51:22 +0000
-Subject: [PATCH] updates for php7.4 and php8.0 (#212)
-
-* travisci: enabled php7.4 and php8.0
-
-* updates for php7.4 and php8.0
-
-- travisci enabled php7.4 and php8.0
-- removed now unused references to TSRMLS_*
- These flags were mostly already removed from the
- php7 codebase but some instances were still present.
- With php8 these produce compile errors.
-- fix tests for php8 and php7.4
- New TypeErrors now get handled correctly in the test cases.
-- fix memory corruption in zmq.c
- The conflicting line causes memory leaks on other php
- version and causes a segfault on php8 and php7.4
- The error was provocable with test case
- 021-callbackwarning.phpt. After removing of the line
- valgrind showed no memory leak, so this line was probably
- redundant. Also if you compare with zmqsocket constructor
- this line is also not present.
----
- .travis.yml | 6 +++---
- options/sockopts_set.gsl | 2 +-
- php_zmq_private.h | 4 ++--
- tests/016-callbackinvalidargs.phpt | 4 ++++
- tests/021-callbackwarning.phpt | 22 +++++++++++++++++-----
- tests/022-highwatermark.phpt | 6 +++---
- tests/055-socks-proxy.phpt | 2 +-
- tests/bug_gh_43.phpt | 25 +++++++++++++++++--------
- zmq.c | 1 -
- zmq_device.c | 14 +++++++-------
- zmq_sockopt.c | 2 +-
- 11 files changed, 56 insertions(+), 32 deletions(-)
-
-diff --git a/php_zmq_private.h b/php_zmq_private.h
-index 49630e9..2e5cd3b 100644
---- a/php_zmq_private.h
-+++ b/php_zmq_private.h
-@@ -156,9 +156,9 @@ typedef struct _php_zmq_device_object {
-
- #define PHP_ZMQ_ERROR_HANDLING_INIT() zend_error_handling error_handling;
-
--#define PHP_ZMQ_ERROR_HANDLING_THROW() zend_replace_error_handling(EH_THROW, php_zmq_socket_exception_sc_entry, &error_handling TSRMLS_CC);
-+#define PHP_ZMQ_ERROR_HANDLING_THROW() zend_replace_error_handling(EH_THROW, php_zmq_socket_exception_sc_entry, &error_handling);
-
--#define PHP_ZMQ_ERROR_HANDLING_RESTORE() zend_restore_error_handling(&error_handling TSRMLS_CC);
-+#define PHP_ZMQ_ERROR_HANDLING_RESTORE() zend_restore_error_handling(&error_handling);
-
- /* Compatibility macros between zeromq 2.x and 3.x */
- #ifndef ZMQ_DONTWAIT
-diff --git a/tests/016-callbackinvalidargs.phpt b/tests/016-callbackinvalidargs.phpt
-index a940e41..6bd0e75 100644
---- a/tests/016-callbackinvalidargs.phpt
-+++ b/tests/016-callbackinvalidargs.phpt
-@@ -10,6 +10,8 @@ try {
- echo "Fail\n";
- } catch (ZMQSocketException $e) {
- echo "OK\n";
-+} catch (TypeError $e) {
-+ echo "OK\n"; // on PHP8
- }
-
- try {
-@@ -18,6 +20,8 @@ try {
- echo "Fail\n";
- } catch (ZMQSocketException $e) {
- echo "OK\n";
-+} catch (TypeError $e) {
-+ echo "OK\n"; // on PHP8
- }
-
- --EXPECT--
-diff --git a/tests/021-callbackwarning.phpt b/tests/021-callbackwarning.phpt
-index eba2ecf..9e1689f 100644
---- a/tests/021-callbackwarning.phpt
-+++ b/tests/021-callbackwarning.phpt
-@@ -5,13 +5,25 @@ Test warning in callback
- --FILE--
- <?php
-
-+error_reporting(0);
-+
- function generate_warning($a, $b)
- {
- in_array(1, 1);
- }
-
--$socket = new ZMQSocket(new ZMQContext(), ZMQ::SOCKET_REQ, 'persistent_socket', 'generate_warning');
--
----EXPECTF--
--Warning: in_array() expects parameter 2 to be array, %s given in %s on line %d
--
-+try {
-+ $socket = new ZMQSocket(new ZMQContext(), ZMQ::SOCKET_REQ, 'persistent_socket', 'generate_warning');
-+ // on PHP7 and lower
-+ $lastError = error_get_last();
-+ if(strpos($lastError['message'], 'in_array() expects parameter 2 to be array') !== false)
-+ echo "OK\n";
-+ else{
-+ echo "FAIL\n";
-+ print_r($lastError);
-+ }
-+}catch(TypeError $e){
-+ echo "OK\n"; // on PHP8
-+}
-+--EXPECT--
-+OK
-diff --git a/tests/022-highwatermark.phpt b/tests/022-highwatermark.phpt
-index 84be509..c1ff703 100644
---- a/tests/022-highwatermark.phpt
-+++ b/tests/022-highwatermark.phpt
-@@ -1,11 +1,11 @@
- --TEST--
- Test that high-watermark works
- --SKIPIF--
--<?php require_once(dirname(__FILE__) . '/skipif.inc'); ?>
--
-+<?php
-+require_once(dirname(__FILE__) . '/skipif.inc');
- if (!defined('ZMQ::SOCKOPT_LINGER'))
- die ("Skip Not compiled against new enough version");
--
-+?>
- --FILE--
- <?php
-
-diff --git a/tests/bug_gh_43.phpt b/tests/bug_gh_43.phpt
-index bdc274a..923d074 100644
---- a/tests/bug_gh_43.phpt
-+++ b/tests/bug_gh_43.phpt
-@@ -7,16 +7,25 @@ Test for Github issue #43
- --FILE--
- <?php
-
-+error_reporting(0);
-+
- $context = new ZMQContext (1, false);
-
- $sock1 = new ZMQSocket ($context, ZMQ::SOCKET_PUB);
- $sock2 = new ZMQSocket ($context, ZMQ::SOCKET_SUB);
-
--$device = new ZMQDevice ($sock1, $sock1, $sock1, $sock1);
--
--echo "OK";
--?>
--
----EXPECTF--
--Warning: ZMQDevice::__construct() expects at most 3 parameters, 4 given in %s/bug_gh_43.php on line %d
--OK
-\ No newline at end of file
-+try {
-+ $device = new ZMQDevice ($sock1, $sock1, $sock1, $sock1);
-+ // on PHP7 and lower
-+ $lastError = error_get_last();
-+ if(strpos($lastError['message'], 'ZMQDevice::__construct() expects at most 3 parameters, 4 given') !== false)
-+ echo "OK\n";
-+ else{
-+ echo "FAIL\n";
-+ print_r($lastError);
-+ }
-+}catch(TypeError $e){
-+ echo "OK\n"; // on PHP8
-+}
-+--EXPECT--
-+OK
-diff --git a/zmq.c b/zmq.c
-index 57ebd11..db9c8f2 100644
---- a/zmq.c
-+++ b/zmq.c
-@@ -687,7 +687,6 @@ PHP_METHOD(zmqcontext, getsocket)
- if (!php_zmq_connect_callback(return_value, &fci, &fci_cache, persistent_id)) {
- php_zmq_socket_destroy(socket);
- interns->socket = NULL;
-- zval_dtor(return_value);
- return;
- }
- }
-diff --git a/zmq_device.c b/zmq_device.c
-index c7415c1..534f966 100644
---- a/zmq_device.c
-+++ b/zmq_device.c
-@@ -41,7 +41,7 @@
- ZEND_EXTERN_MODULE_GLOBALS(php_zmq)
-
- static
--zend_bool s_invoke_device_cb (php_zmq_device_cb_t *cb, uint64_t current_ts TSRMLS_DC)
-+zend_bool s_invoke_device_cb (php_zmq_device_cb_t *cb, uint64_t current_ts)
- {
- zend_bool retval = 0;
- zval params[1];
-@@ -59,7 +59,7 @@ zend_bool s_invoke_device_cb (php_zmq_device_cb_t *cb, uint64_t current_ts TSRML
- if (zend_call_function(&(cb->fci), &(cb->fci_cache)) == FAILURE) {
- if (!EG(exception)) {
- char *func_name = php_zmq_printable_func(&cb->fci, &cb->fci_cache);
-- zend_throw_exception_ex(php_zmq_device_exception_sc_entry_get (), 0 TSRMLS_CC, "Failed to invoke device callback %s()", func_name);
-+ zend_throw_exception_ex(php_zmq_device_exception_sc_entry_get (), 0, "Failed to invoke device callback %s()", func_name);
- zval_ptr_dtor(&params[0]);
- efree(func_name);
- }
-@@ -94,7 +94,7 @@ int s_capture_message (void *socket, zmq_msg_t *msg, int more)
- }
-
- static
--int s_calculate_timeout (php_zmq_device_object *intern TSRMLS_DC)
-+int s_calculate_timeout (php_zmq_device_object *intern)
- {
- int timeout = -1;
- uint64_t current = php_zmq_clock (ZMQ_G (clock_ctx));
-@@ -131,7 +131,7 @@ int s_calculate_timeout (php_zmq_device_object *intern TSRMLS_DC)
- }
-
-
--zend_bool php_zmq_device (php_zmq_device_object *intern TSRMLS_DC)
-+zend_bool php_zmq_device (php_zmq_device_object *intern)
- {
- int errno_;
- uint64_t last_message_received;
-@@ -186,7 +186,7 @@ zend_bool php_zmq_device (php_zmq_device_object *intern TSRMLS_DC)
- uint64_t current_ts = 0;
-
- /* Calculate poll_timeout based on idle / timer cb */
-- int timeout = s_calculate_timeout (intern TSRMLS_CC);
-+ int timeout = s_calculate_timeout (intern);
-
- rc = zmq_poll(&items [0], 2, timeout);
- if (rc < 0) {
-@@ -205,7 +205,7 @@ zend_bool php_zmq_device (php_zmq_device_object *intern TSRMLS_DC)
- if (intern->timer_cb.initialized && intern->timer_cb.timeout > 0) {
- /* Is it timer to call the timer ? */
- if (intern->timer_cb.scheduled_at <= current_ts) {
-- if (!s_invoke_device_cb (&intern->timer_cb, current_ts TSRMLS_CC)) {
-+ if (!s_invoke_device_cb (&intern->timer_cb, current_ts)) {
- zmq_msg_close (&msg);
- return 1;
- }
-@@ -217,7 +217,7 @@ zend_bool php_zmq_device (php_zmq_device_object *intern TSRMLS_DC)
- /* Is it timer to call the idle callback ? */
- if ((current_ts - last_message_received) >= intern->idle_cb.timeout &&
- intern->idle_cb.scheduled_at <= current_ts) {
-- if (!s_invoke_device_cb (&intern->idle_cb, current_ts TSRMLS_CC)) {
-+ if (!s_invoke_device_cb (&intern->idle_cb, current_ts)) {
- zmq_msg_close (&msg);
- return 1;
- }
-diff --git a/zmq_sockopt.c b/zmq_sockopt.c
-index 02cd76d..b0f18cd 100644
---- a/zmq_sockopt.c
-+++ b/zmq_sockopt.c
-@@ -1476,7 +1476,7 @@ PHP_METHOD(zmqsocket, setsockopt)
- zend_long key;
- zval *zv;
-
-- if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "lz/", &key, &zv) == FAILURE) {
-+ if (zend_parse_parameters(ZEND_NUM_ARGS(), "lz/", &key, &zv) == FAILURE) {
- return;
- }
-
diff --git a/testing/php7-pecl-zstd/APKBUILD b/testing/php7-pecl-zstd/APKBUILD
deleted file mode 100644
index faad0967b24..00000000000
--- a/testing/php7-pecl-zstd/APKBUILD
+++ /dev/null
@@ -1,41 +0,0 @@
-# Maintainer: Andy Postnikov <apostnikov@gmail.com>
-pkgname=php7-pecl-zstd
-_extname=zstd
-pkgver=0.11.0
-pkgrel=0
-pkgdesc="PHP 7 Zstandard extension - PECL"
-url="https://pecl.php.net/package/zstd"
-arch="all !armhf" # tests fails on armhf
-license="MIT"
-depends="php7-common"
-makedepends="php7-dev php7-pecl-apcu zstd-dev"
-checkdepends="php7-openssl"
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir/$_extname-$pkgver"
-provides="php7-zstd=$pkgver-r$pkgrel" # for backward compatibility
-replaces="php7-zstd" # for backward compatibility
-
-build() {
- phpize7
- ./configure --prefix=/usr --with-php-config=php-config7 --with-libzstd
- make
-}
-
-check() {
- local _modules=/usr/lib/php7/modules
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test PHP_TEST_SHARED_EXTENSIONS=" \
- -d extension=$_modules/apcu.so \
- -d extension=$_modules/openssl.so \
- -d extension=modules/$_extname.so" TESTS=--show-diff
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php7/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/$_extname.ini
-}
-
-sha512sums="
-faf1ea07a7b9c4f8a4ee732b7f17fc104670ebc6a2babe83d297dc59b945f843f671ad03e668290a282485e746bd9b9381daec38c0e5e5749ca93cba5eb594ae php-pecl-zstd-0.11.0.tgz
-"
diff --git a/testing/php7-phalcon/APKBUILD b/testing/php7-phalcon/APKBUILD
deleted file mode 100644
index 33895c71448..00000000000
--- a/testing/php7-phalcon/APKBUILD
+++ /dev/null
@@ -1,44 +0,0 @@
-# Contributor: Valery Kartel <valery.kartel@gmail.com>
-# Maintainer: Valery Kartel <valery.kartel@gmail.com>
-pkgname=php7-phalcon
-_pkgext=phalcon
-_pkgreal=cphalcon
-pkgver=4.1.2
-_pkgver=${pkgver/_rc/RC}
-pkgrel=0
-pkgdesc="High performance, full-stack PHP 7 framework delivered as a C extension"
-url="https://phalcon.io/"
-arch="all"
-license="BSD-3-Clause"
-depends="php7-curl php7-fileinfo php7-gettext php7-json php7-mbstring php7-openssl php7-pdo php7-session php7-pecl-psr"
-makedepends="php7-dev gd-dev libexecinfo-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/phalcon/$_pkgreal/archive/v$_pkgver.tar.gz"
-builddir="$srcdir/$_pkgreal-$_pkgver/build/${pkgname%%-*}/safe"
-
-build() {
- phpize7
- ./configure --prefix=/usr --with-php-config=/usr/bin/php-config7
- make
-}
-
-check() {
- # It needs some external services to run checks
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test \
- TESTS="../../../tests/syntax" \
- PHP_TEST_SHARED_EXTENSIONS=" \
- -d extension=/usr/lib/php7/modules/json.so \
- -d extension=/usr/lib/php7/modules/pdo.so \
- -d extension=/usr/lib/php7/modules/psr.so \
- -d extension=/usr/lib/php7/modules/session.so \
- -d extension=modules/phalcon.so"
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- rm -fr "$pkgdir/usr/include"
- local _confdir="$pkgdir"/etc/php7/conf.d
- install -d $_confdir
- echo "extension=$_pkgext" > $_confdir/$_pkgext.ini
-}
-
-sha512sums="5609f2687fea0e5e056c70f58aa25bc9146dfb8cd05048d75edce39bde14380fa54ce69103d0f14f58fd2170aea4e5fb6d2fb507dda42e870cb09a9f1bb0e871 php7-phalcon-4.1.2.tar.gz"
diff --git a/testing/php7-snappy/APKBUILD b/testing/php7-snappy/APKBUILD
deleted file mode 100644
index a1924858dc4..00000000000
--- a/testing/php7-snappy/APKBUILD
+++ /dev/null
@@ -1,41 +0,0 @@
-# Contributor: Andy Postnikov <apostnikov@gmail.com>
-# Maintainer: Andy Postnikov <apostnikov@gmail.com>
-pkgname=php7-snappy
-_extname=snappy
-pkgver=0.2.1
-pkgrel=0
-pkgdesc="Snappy Extension for PHP"
-url="https://github.com/kjdev/php-ext-snappy"
-arch="all"
-license="PHP-3.01"
-depends="php7-common"
-makedepends="php7-dev php7-pecl-apcu snappy-dev"
-source="php-$_extname-$pkgver.tar.gz::https://github.com/kjdev/php-ext-snappy/archive/$pkgver.tar.gz"
-builddir="$srcdir/php-ext-snappy-$pkgver"
-
-build() {
- phpize7
- ./configure \
- --prefix=/usr \
- --with-php-config=php-config7 \
- --with-snappy-includedir
- make
-}
-
-check() {
- local _modules=/usr/lib/php7/modules
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test \
- SKIP_ONLINE_TESTS=1 PHP_TEST_SHARED_EXTENSIONS=" \
- -d extension=$_modules/apcu.so \
- -d extension=modules/$_extname.so" TESTS=--show-diff
- php7 -d extension=modules/$_extname.so --ri $_extname
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir"/ install
- local confdir="$pkgdir"/etc/php7/conf.d
- install -d $confdir
- echo "extension=$_extname" > $confdir/50_$_extname.ini
-}
-
-sha512sums="51cdfe7c5d020cb954cbf555038aca8398867584a587eb838f07089612d3978a182d0bc04015608a2aaf71bf9a5b5896e5d92b56f3b2d5fe9e1116f9509acb1e php-snappy-0.2.1.tar.gz"
diff --git a/testing/php7-snuffleupagus/APKBUILD b/testing/php7-snuffleupagus/APKBUILD
deleted file mode 100644
index 8d2105e4318..00000000000
--- a/testing/php7-snuffleupagus/APKBUILD
+++ /dev/null
@@ -1,45 +0,0 @@
-# Maintainer: Julien (jvoisin) Voisin <julien.voisin+snuffleupagus@dustri.org>
-
-pkgname=php7-snuffleupagus
-_extname=snuffleupagus
-pkgver=0.7.1
-pkgrel=0
-pkgdesc="Security module for PHP 7"
-url="https://snuffleupagus.readthedocs.io"
-arch="all"
-license="LGPL-3.0-only"
-depends="php7-common"
-builddir="$srcdir/$_extname-$pkgver/src"
-makedepends="php7-dev php7-cgi"
-source="php-$_extname-$pkgver.tar.gz::https://github.com/jvoisin/snuffleupagus/archive/v$pkgver.tar.gz"
-
-build() {
- phpize7
- ./configure \
- --prefix=/usr \
- --enable-snuffleupagus \
- --with-php-config=php-config7
- make
-}
-
-check() {
- TEST_PHP_ARGS='-q' REPORT_EXIT_STATUS=1 make test TESTS="tests/cookies_encryption tests/deny_writable"
- TEST_PHP_ARGS='-q' REPORT_EXIT_STATUS=1 make test TESTS="tests/global_strict"
- TEST_PHP_ARGS='-q' REPORT_EXIT_STATUS=1 make test TESTS="tests/harden_rand tests/sloppy_comparison tests/unserialize"
-
- # TODO re-enable these tests
- #TEST_PHP_ARGS='-q' REPORT_EXIT_STATUS=1 make test TESTS="tests/disable_function"
- #TEST_PHP_ARGS='-q' REPORT_EXIT_STATUS=1 make test TESTS="tests/xxe"
- #TEST_PHP_ARGS='-q' REPORT_EXIT_STATUS=1 make test TESTS="tests/eval_blacklist"
- #TEST_PHP_ARGS='-q' REPORT_EXIT_STATUS=1 make test TESTS="tests/dump_request"
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php7/conf.d
- install -d $_confdir
- install -m644 ../config/$_extname.ini $_confdir/$pkgname.ini
- install -m644 ../config/default.rules $_confdir/$_extname.rules
-}
-
-sha512sums="21510e214f94dd50a4aa05226188c9433a6a261c0bd3d58973ed4536754b3e12356e3f625480c370b66c570482694c25d336a771fbbbeb27e1d524b1f82c7869 php-snuffleupagus-0.7.1.tar.gz"
diff --git a/testing/php7-spx/APKBUILD b/testing/php7-spx/APKBUILD
deleted file mode 100644
index 3c36af74364..00000000000
--- a/testing/php7-spx/APKBUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-# Maintainer: Andy Postnikov <apostnikov@gmail.com>
-pkgname=php7-spx
-_extname=spx
-pkgver=0.4.10
-pkgrel=1
-pkgdesc="A simple & straight-to-the-point PHP 7 profiling extension with its built-in web UI"
-url="https://github.com/NoiseByNorthwest/php-spx"
-arch="x86_64"
-license="GPL-3.0-or-later"
-depends="php7-common"
-makedepends="php7-dev zlib-dev"
-source="php-$_extname-$pkgver.tar.gz::https://github.com/NoiseByNorthwest/php-spx/archive/v$pkgver.tar.gz"
-builddir="$srcdir/php-$_extname-$pkgver"
-
-build() {
- phpize7
- ./configure --prefix=/usr --with-php-config=php-config7
- make
-}
-
-check() {
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
- php7 -d extension=modules/$_extname.so --ri $_extname
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php7/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/$_extname.ini
-}
-
-sha512sums="f89effb851bc9f63e5846b4f8ab998027dfaf214b9111e185fa49dd36377c4ef3d8c98de2f51a7fffca51de7033143f77c5db22a50eb252e1b65d5ebf77a8b16 php-spx-0.4.10.tar.gz"
diff --git a/testing/php7-tideways_xhprof/APKBUILD b/testing/php7-tideways_xhprof/APKBUILD
deleted file mode 100644
index 1fd661acecf..00000000000
--- a/testing/php7-tideways_xhprof/APKBUILD
+++ /dev/null
@@ -1,34 +0,0 @@
-# Contributor: Andy Postnikov <apostnikov@gmail.com>
-# Maintainer: Andy Postnikov <apostnikov@gmail.com>
-pkgname=php7-tideways_xhprof
-_extname=tideways_xhprof
-pkgver=5.0.4
-pkgrel=1
-pkgdesc="Modern XHProf compatible Profiler for PHP 7"
-url="https://tideways.com"
-arch="all !s390x" # fails to build https://github.com/tideways/php-xhprof-extension/issues/72
-license="Apache-2.0"
-depends="php7-common"
-makedepends="php7-dev"
-source="php-$_extname-$pkgver.tar.gz::https://github.com/tideways/php-xhprof-extension/archive/v$pkgver.tar.gz"
-builddir="$srcdir/php-xhprof-extension-$pkgver"
-
-build() {
- phpize7
- ./configure --prefix=/usr --with-php-config=/usr/bin/php-config7
- make
-}
-
-check() {
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
-
- local _confdir="$pkgdir"/etc/php7/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/$_extname.ini
-}
-
-sha512sums="bc7689060e33100ed43ed4ec0a251f6b4d9b7fcd3420e3c1208f400fc68d302a2fced90641016e55b8ee434e4d0de91703a2253c2515f16200fc0e330e4f60c2 php-tideways_xhprof-5.0.4.tar.gz"
diff --git a/testing/php7/APKBUILD b/testing/php7/APKBUILD
deleted file mode 100644
index e26eb0d2dda..00000000000
--- a/testing/php7/APKBUILD
+++ /dev/null
@@ -1,704 +0,0 @@
-# Contributor: Valery Kartel <valery.kartel@gmail.com>
-# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer: Valery Kartel <valery.kartel@gmail.com>
-
-# Bundled libraries
-#
-# Name | License | Location | State
-# ----------+---------------------+------------------------+---------
-# bcmath | LGPL-2.1-or-later | ext/bcmath/libbcmath | used
-# date | MIT | ext/date/lib | used
-# fileinfo | BSD-2-Clause | ext/fileinfo/libmagic | used
-# gd | BSD | ext/gd/libgd | used
-# hash | CC0-1.0 | ext/hash/sha3 | used
-# libmbfl | LGPL-2.1-only | ext/mbstring/libmbfl | used
-# pcre | BSD-3-Clause | ext/pcre/pcrelib | not used
-# sqlite3 | Public | ext/sqlite3/libsqlite | not used
-# libXMLRPC | BSD-3-Clause | ext/xmlrpc/libxmlrpc | used
-# libzip | BSD-3-Clause | ext/zip/lib | not used
-
-# Static extensions
-#
-# Name | Reason
-# ----------+--------------------------------------------
-# zlib | https://bugs.alpinelinux.org/issues/8299
-
-pkgname=php7
-_pkgreal=php
-pkgver=7.4.29
-pkgrel=2
-_apiver=20190902
-_suffix=${pkgname#php}
-# Is this package the default (latest) PHP version?
-_default_php="no"
-pkgdesc="The PHP$_suffix language runtime engine"
-url="https://www.php.net/"
-arch="all"
-license="PHP-3.01 BSD-3-Clause LGPL-2.0-or-later MIT Zend-2.0"
-depends="$pkgname-common"
-depends_dev="$pkgname=$pkgver-r$pkgrel autoconf pcre2-dev re2c"
-# Most dependencies between extensions is auto-discovered (see _extension()).
-_depends_mysqlnd="$pkgname-openssl"
-_depends_pdo_mysql="$pkgname-pdo $pkgname-mysqlnd"
-_depends_phar="$pkgname"
-# openssl is actually transitive dependency here, but we need to because of
-# load index based on number of dependencies.
-_depends_mysqli="$pkgname-mysqlnd $pkgname-openssl"
-makedepends="
- $depends_dev
- apache2-dev
- argon2-dev
- aspell-dev
- bison
- bzip2-dev
- curl-dev
- enchant2-dev
- freetds-dev
- freetype-dev
- gdbm-dev
- gettext-dev
- gmp-dev
- icu-dev
- imap-dev
- krb5-dev
- libedit-dev
- libical-dev
- libjpeg-turbo-dev
- libpng-dev
- libpq-dev
- lmdb-dev
- oniguruma-dev
- libsodium-dev
- libwebp-dev
- libxml2-dev
- libxpm-dev
- libxslt-dev
- libzip-dev
- net-snmp-dev
- openldap-dev
- sqlite-dev
- tidyhtml-dev
- unixodbc-dev
- zlib-dev
- "
-checkdepends="icu-data-full"
-subpackages="$pkgname-dbg $pkgname-dev $pkgname-doc
- $pkgname-phpdbg $pkgname-apache2
- $pkgname-embed $pkgname-cgi $pkgname-fpm
- $pkgname-pear::noarch
- "
-source="https://php.net/distributions/$_pkgreal-$pkgver.tar.xz
- $pkgname-fpm.initd
- $pkgname-fpm.logrotate
- $pkgname-module.conf
- disabled-tests.list
- install-pear.patch
- includedir.patch
- sharedir.patch
- php7-fpm-version-suffix.patch
- fix-tests-devserver.patch
- enchant-2.patch
- xfail-openssl-1.1-test.patch
- atomic-lsapi.patch
- fix-curl-7.83-test.patch
- "
-builddir="$srcdir/$_pkgreal-$pkgver"
-
-_libdir="/usr/lib/$pkgname"
-_extension_dir="$_libdir/modules"
-_extension_confd="/etc/$pkgname/conf.d"
-
-_extensions="
- bcmath
- bz2
- calendar
- ctype
- curl
- dba
- dom
- enchant
- exif
- ffi
- fileinfo
- ftp
- gd
- gettext
- gmp
- iconv
- imap
- intl
- json
- ldap
- mbstring
- mysqli
- mysqlnd
- odbc
- opcache
- openssl
- pcntl
- pdo
- pdo_dblib
- pdo_mysql
- pdo_odbc
- pdo_pgsql
- pdo_sqlite
- pgsql
- phar
- posix
- pspell
- session
- shmop
- simplexml
- snmp
- soap
- sodium
- sockets
- sqlite3
- sysvmsg
- sysvsem
- sysvshm
- tidy
- tokenizer
- xml
- xmlreader
- xmlrpc
- xmlwriter
- xsl
- zip
- "
-for _ext in $_extensions; do
- case "$_ext" in
- phar) subpackages="$subpackages $pkgname-$_ext:$_ext";;
- *) subpackages="$subpackages $pkgname-$_ext:_extension";;
- esac
-done
-subpackages="$subpackages $pkgname-common::noarch"
-
-subpackages="$subpackages $pkgname-litespeed"
-
-# secfixes:
-# 7.4.28-r0:
-# - CVE-2021-21708
-# 7.4.26-r0:
-# - CVE-2021-21707
-# 7.4.25-r0:
-# - CVE-2021-21703
-# 7.4.24-r0:
-# - CVE-2021-21706
-# 7.4.21-r0:
-# - CVE-2021-21705
-# 7.4.15-r0:
-# - CVE-2021-21702
-# 7.4.14-r0:
-# - CVE-2020-7071
-# 7.4.11-r0:
-# - CVE-2020-7069
-# - CVE-2020-7070
-# 7.3.18-r0:
-# - CVE-2019-11048
-# 7.3.17-r0:
-# - CVE-2020-7067
-# 7.3.16-r0:
-# - CVE-2020-7064
-# - CVE-2020-7065
-# - CVE-2020-7066
-# 7.3.15-r0:
-# - CVE-2020-7061
-# - CVE-2020-7062
-# - CVE-2020-7063
-# 7.3.14-r0:
-# - CVE-2020-7059
-# - CVE-2020-7060
-# 7.3.13-r0:
-# - CVE-2019-11045
-# - CVE-2019-11047
-# - CVE-2019-11050
-# 7.3.11-r0:
-# - CVE-2019-11043
-# 7.3.9-r0:
-# - CVE-2019-13224
-# 7.3.8-r0:
-# - CVE-2019-11041
-# - CVE-2019-11042
-# 7.2.19-r0:
-# - CVE-2019-11039
-# - CVE-2019-11040
-# 7.2.18-r0:
-# - CVE-2019-11036
-# 7.2.17-r0:
-# - CVE-2019-11034
-# - CVE-2019-11035
-# 7.2.16-r0:
-# - CVE-2019-9641
-# - CVE-2019-9640
-# - CVE-2019-9639
-# - CVE-2019-9638
-# - CVE-2019-9637
-# 7.2.14-r0:
-# - CVE-2019-9024
-# - CVE-2019-9023
-# - CVE-2019-9022
-# - CVE-2019-9021
-# - CVE-2019-9020
-# 7.2.13-r0:
-# - CVE-2018-20783
-# 7.2.8-r0:
-# - CVE-2015-9253
-# - CVE-2018-12882
-# - CVE-2018-12883
-# - CVE-2018-14851
-# 7.2.5-r0:
-# - CVE-2018-5712
-# - CVE-2018-10546
-# - CVE-2018-10547
-# - CVE-2018-10548
-# - CVE-2018-10549
-
-prepare() {
- default_prepare
-
- local vapi=$(sed -n '/#define PHP_API_VERSION/{s/.* //;p}' main/php.h)
- if [ "$vapi" != "$_apiver" ]; then
- error "Upstream API version is now $vapi. Expecting $_apiver"
- error "After updating _apiver, all 3rd-party extensions must be rebuilt."
- return 1
- fi
-
- # https://bugs.php.net/63362 - Not needed but installed headers.
- # Drop some Windows specific headers to avoid installation,
- # before build to ensure they are really not needed.
- rm -f TSRM/tsrm_win32.h \
- TSRM/tsrm_config.w32.h \
- Zend/zend_config.w32.h \
- ext/mysqlnd/config-win.h \
- ext/standard/winver.h
-
- # Fix some bogus permissions.
- find . -name '*.[ch]' -exec chmod 644 {} \;
-
- # XXX: Delete failing tests.
- sed -n '/^[^#]/p' "$srcdir"/disabled-tests.list | while read -r item; do
- rm -r $item # do it in this way to apply globbing...
- done
-
- autoconf
-}
-
-# Notes:
-# * gd-jis-conv breaks any non-latin font rendering (vakartel).
-# * libxml cannot be build as shared.
-# * -D_LARGEFILE_SOURCE and -D_FILE_OFFSET_BITS=64 (https://www.php.net/manual/en/intro.filesystem.php andypost)
-# * -O2 optimize for apps usage (andypost)
-_build() {
- local common_flags="-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"
- export CFLAGS="${CFLAGS/-Os/-O2} $common_flags"
- export CXXFLAGS="${CXXFLAGS/-Os/-O2} $common_flags"
-
- local without_pcre_jit
- [ "$CARCH" = "s390x" ] && without_pcre_jit="--without-pcre-jit"
-
- EXTENSION_DIR=$_extension_dir ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --program-suffix=$_suffix \
- --libdir=$_libdir \
- --datadir=/usr/share/$pkgname \
- --sysconfdir=/etc/$pkgname \
- --localstatedir=/var \
- --with-layout=GNU \
- --with-pic \
- --with-config-file-path=/etc/$pkgname \
- --with-config-file-scan-dir=$_extension_confd \
- --disable-short-tags \
- \
- --enable-bcmath=shared \
- --with-bz2=shared \
- --enable-calendar=shared \
- --enable-ctype=shared \
- --with-curl=shared \
- --enable-dba=shared \
- --with-dbmaker=shared \
- --with-gdbm \
- --with-lmdb \
- --enable-dom=shared \
- --with-enchant=shared \
- --enable-exif=shared \
- --with-ffi=shared \
- --enable-fileinfo=shared \
- --enable-ftp=shared \
- --enable-gd=shared \
- --with-freetype \
- --with-jpeg \
- --with-webp \
- --with-xpm \
- --disable-gd-jis-conv \
- --with-gettext=shared \
- --with-gmp=shared \
- --with-iconv=shared \
- --with-imap=shared \
- --with-imap-ssl \
- --enable-intl=shared \
- --enable-json=shared \
- --with-ldap=shared \
- --with-ldap-sasl \
- --with-libedit \
- --with-libxml \
- --enable-mbstring=shared \
- --with-mysqli=shared,mysqlnd \
- --with-mysql-sock=/run/mysqld/mysqld.sock \
- --enable-mysqlnd=shared \
- --enable-opcache=shared \
- --with-openssl=shared \
- --with-kerberos \
- --with-system-ciphers \
- --with-password-argon2 \
- --enable-pcntl=shared \
- --with-external-pcre \
- $without_pcre_jit \
- --enable-pdo=shared \
- --with-pdo-dblib=shared \
- --with-pdo-mysql=shared,mysqlnd \
- --with-pdo-odbc=shared,unixODBC,/usr \
- --with-pdo-pgsql=shared \
- --with-pdo-sqlite=shared \
- --with-pgsql=shared \
- --enable-phar=shared \
- --enable-posix=shared \
- --with-pspell=shared \
- --without-readline \
- --enable-session=shared \
- --enable-shmop=shared \
- --enable-simplexml=shared \
- --with-snmp=shared \
- --enable-soap=shared \
- --with-sodium=shared \
- --enable-sockets=shared \
- --with-sqlite3=shared \
- --enable-sysvmsg=shared \
- --enable-sysvsem=shared \
- --enable-sysvshm=shared \
- --with-tidy=shared \
- --enable-tokenizer=shared \
- --with-unixODBC=shared,/usr \
- --enable-xml=shared \
- --enable-xmlreader=shared \
- --with-xmlrpc=shared \
- --enable-xmlwriter=shared \
- --with-xsl=shared \
- --with-zip=shared \
- --with-zlib \
- "$@"
- make
-}
-
-build() {
- # apache2 SAPIs because not fixed https://bugs.php.net/bug.php?id=52419
- _build --disable-phpdbg \
- --disable-cli \
- --with-apxs2
- mv libs/libphp$_suffix.so sapi/apache2handler/mod_php$_suffix.so
-
- local enable_litespeed
- [ -z ${subpackages##*-litespeed*} ] && enable_litespeed=--enable-litespeed
- # cgi, cli, fpm, embed, pear, litespeed
- _build --enable-phpdbg \
- --enable-phpdbg-webhelper \
- --with-pear=/usr/share/$pkgname \
- --enable-fpm \
- $enable_litespeed \
- --enable-embed
-}
-
-check() {
- # PHP is so stupid that it's not able to resolve dependencies
- # between extensions and load them in correct order, so we must
- # help it...
- # opcache is Zend extension, it's handled specially in Makefile
- local php_modules=$(_extensions_by_load_order \
- | grep -vx opcache \
- | xargs -n 1 printf "'$builddir/modules/%s.la' ")
- sed -i "/^PHP_TEST_SHARED_EXTENSIONS/,/extension=/ \
- s|in \$(PHP_MODULES)\"*|in $php_modules|" Makefile
-
- # XXX: Few tests fail on the named platforms.
- # Ignore it for now and continue build even on test failures.
- local allow_fail='no'
- case "$CARCH" in
- x86 | s390x) allow_fail='yes'
- esac
-
- TESTS="${TESTS:- --show-diff}" NO_INTERACTION=1 REPORT_EXIT_STATUS=1 \
- SKIP_SLOW_TESTS=1 SKIP_ONLINE_TESTS=1 TEST_TIMEOUT=10 \
- TZ='' LANG='' LC_ALL='' \
- TRAVIS=true SKIP_IO_CAPTURE_TESTS=1 \
- make test || [ "$allow_fail" = yes ]
-
- echo 'NOTE: We have skipped quite a lot tests, see disabled-tests.list.'
-}
-
-package() {
- make -j1 INSTALL_ROOT="$pkgdir" install
-
- install -Dm644 php.ini-production "$pkgdir"/etc/$pkgname/php.ini
-
- local file; for file in pear peardev pecl; do
- sed -i -e "s|/usr/bin/php|/usr/bin/php$_suffix|g" \
- -e "s|PHP=php|PHP=php$_suffix|" \
- "$pkgdir"/usr/bin/$file
- done
-
- find "$pkgdir" -name '.*' -print0 | xargs -0 rm -rf
- rmdir "$pkgdir"/var/run
-
- if [ "$_default_php" = yes ]; then
- ln -s php$_suffix "$pkgdir"/usr/bin/php
- fi
-}
-
-dev() {
- default_dev
- replaces="php-dev"
-
- cd "$pkgdir"
-
- _mv usr/bin/php-config$_suffix \
- usr/bin/phpize$_suffix \
- "$subpkgdir"/usr/bin/
-
- _mv ./$_libdir/build "$subpkgdir"/$_libdir/
-
- if [ "$_default_php" = yes ]; then
- ln -s phpize$_suffix "$subpkgdir"/usr/bin/phpize
- ln -s php-config$_suffix "$subpkgdir"/usr/bin/php-config
- fi
-}
-
-doc() {
- default_doc
-
- cd "$builddir"
-
- mkdir -p "$subpkgdir"/usr/share/doc/$pkgname
- cp CODING_STANDARDS.md EXTENSIONS LICENSE NEWS \
- README* UPGRADING* \
- "$subpkgdir"/usr/share/doc/$pkgname/
-}
-
-apache2() {
- pkgdesc="PHP$_suffix Module for Apache2"
- depends="$depends apache2"
- provides="php-apache2"
-
- install -D -m 755 "$builddir"/sapi/apache2handler/mod_php$_suffix.so \
- "$subpkgdir"/usr/lib/apache2/mod_php$_suffix.so
-
- install -D -m 644 "$srcdir"/php$_suffix-module.conf \
- "$subpkgdir"/etc/apache2/conf.d/php$_suffix-module.conf
-}
-
-phpdbg() {
- pkgdesc="Interactive PHP$_suffix debugger"
- provides="php-phpdbg"
-
- amove usr/bin/phpdbg$_suffix
-
- if [ "$_default_php" = yes ]; then
- ln -s phpdbg$_suffix "$subpkgdir"/usr/bin/phpdbg
- fi
-}
-
-embed() {
- pkgdesc="PHP$_suffix Embedded Library"
- provides="php-embed"
-
- _mv "$pkgdir"/usr/lib/libphp*.so "$subpkgdir"/usr/lib/
-}
-
-litespeed() {
- pkgdesc="PHP$_suffix LiteSpeed SAPI"
- provides="php-lightspeed"
-
- mkdir -p "$subpkgdir"/usr/bin
- mv "$pkgdir"/usr/bin/lsphp$_suffix "$subpkgdir"/usr/bin
-
- if [ "$_default_php" = yes ]; then
- ln -s lsphp$_suffix "$subpkgdir"/usr/bin/lsphp
- fi
-}
-
-cgi() {
- pkgdesc="PHP$_suffix Common Gateway Interface"
- provides="php-cgi"
-
- _mv "$pkgdir"/usr/bin/php-cgi$_suffix "$subpkgdir"/usr/bin/
-
- if [ "$_default_php" = yes ]; then
- ln -s php-cgi$_suffix "$subpkgdir"/usr/bin/php-cgi
- fi
-}
-
-fpm() {
- pkgdesc="PHP$_suffix FastCGI Process Manager"
- provides="php-fpm"
-
- cd "$pkgdir"
-
- _mv var "$subpkgdir"/
- _mv usr/share/$pkgname/fpm "$subpkgdir"/var/lib/$pkgname/
- _mv usr/sbin "$subpkgdir"/usr/
- _mv etc/$pkgname/php-fpm* "$subpkgdir"/etc/$pkgname/
-
- local file; for file in php-fpm.conf php-fpm.d/www.conf; do
- mv "$subpkgdir"/etc/$pkgname/$file.default \
- "$subpkgdir"/etc/$pkgname/$file
- done
-
- install -D -m 755 "$srcdir"/$pkgname-fpm.initd \
- "$subpkgdir"/etc/init.d/php-fpm$_suffix
-
- install -D -m 644 "$srcdir"/$pkgname-fpm.logrotate \
- "$subpkgdir"/etc/logrotate.d/php-fpm$_suffix
-
- mkdir -p "$subpkgdir"/var/log/$pkgname
-}
-
-pear() {
- pkgdesc="PHP$_suffix Extension and Application Repository"
- depends="$pkgname $pkgname-xml"
- provides="php-pear"
-
- cd "$pkgdir"
-
- mkdir -p "$subpkgdir"/usr/bin
- local file; for file in pecl pear peardev; do
- mv usr/bin/$file "$subpkgdir"/usr/bin/$file$_suffix
- if [ "$_default_php" = yes ]; then
- ln -s $file$_suffix "$subpkgdir"/usr/bin/$file
- fi
- done
-
- _mv etc/$pkgname/pear.conf "$subpkgdir"/etc/$pkgname/
- _mv usr/share "$subpkgdir"/usr/
-}
-
-common() {
- pkgdesc="$pkgdesc (common config)"
- provides="php-common $pkgname-zlib php-zlib" # for backward compatibility
- depends=""
-
- cd "$pkgdir"
-
- _mv usr/lib "$subpkgdir"/usr/
- _mv etc "$subpkgdir"/
- mkdir -p "$subpkgdir"/$_extension_confd
-}
-
-phar() {
- _extension
-
- cd "$pkgdir"
-
- mkdir -p "$subpkgdir"/usr/bin
- rm usr/bin/phar$_suffix
- mv usr/bin/phar$_suffix.phar "$subpkgdir"/usr/bin/phar$_suffix.phar
- ln -s phar$_suffix.phar "$subpkgdir"/usr/bin/phar$_suffix
- ln -s phar$_suffix.phar "$subpkgdir"/usr/bin/phar.phar$_suffix
-
- if [ "$_default_php" = yes ]; then
- ln -s phar$_suffix.phar "$subpkgdir"/usr/bin/phar.phar
- ln -s phar$_suffix.phar "$subpkgdir"/usr/bin/phar
- fi
-}
-
-_extension() {
- local extname="${subpkgname#$pkgname-}"
- local extdepends="$(eval "echo \$_depends_$extname")"
- local extdesc="$(head -n1 "$builddir"/ext/$extname/CREDITS 2>/dev/null ||:)"
- pkgdesc="PHP$_suffix extension: ${extdesc:-$extname}"
- provides="php-$extname"
-
- : ${extdepends:=$(_resolve_extension_deps "$extname")}
- depends="$depends $extdepends"
-
- local load_order=$(_extension_load_order "$extname")
-
- # extension prefix
- local prefix=
- [ "$extname" != "opcache" ] || prefix="zend_"
-
- _mv "$pkgdir"/$_extension_dir/$extname.so \
- "$subpkgdir"/$_extension_dir/
-
- mkdir -p "$subpkgdir"/$_extension_confd
- echo "${prefix}extension=$extname.so" \
- > "$subpkgdir"/$_extension_confd/"$(printf %02d $load_order)"_$extname.ini
-}
-
-# Resolves dependencies of the given extension name (without $pkgname- prefix)
-# on other extensions in $_extensions and prints them with $pkgname- prefix.
-_resolve_extension_deps() {
- local name="$1"
-
- # We use config.w32 just because it's more accurate than config.m4.
- local config="$builddir/ext/$name/config.w32"
- [ -f "$config" ] || return 0
-
- cat "$config" \
- | sed -En "s/.*ADD_EXTENSION_DEP\('$name', ([^)]+)\).*/\1/p" \
- | tr -d "'," | tr ' ' '\n' \
- | sort -u \
- | while read -r dep; do
- if echo "$_extensions" | grep -qw "$dep"; then
- echo "$pkgname-$dep"
- fi
- done
-}
-
-# Prints a load order (0-based integer) for the given extension name. Extension
-# with lower load order should be loaded before exts with higher load order.
-# It's based on number of dependencies of the extension (with exception for
-# "imap"), which is flawed, but simple and good enough for now.
-_extension_load_order() {
- local name="$1"
- local deps=$(eval "echo \$_depends_$name")
-
- case "$name" in
- # XXX: This must be loaded after recode, even though it does
- # not depend on it. So we must use this hack...
- *) echo "${deps:=$(_resolve_extension_deps $name)}" | wc -w;;
- esac
-}
-
-# Prints $_extensions sorted by load order and name.
-_extensions_by_load_order() {
- local deps list name
-
- for name in $_extensions; do
- list="$list $(_extension_load_order $name);$name"
- done
- printf '%s\n' $list | sort -t ';' -k 1 | sed -E 's/\d+;//'
-}
-
-_mv() {
- local dest; for dest; do true; done # get last argument
- mkdir -p "$dest"
- mv "$@"
-}
-
-sha512sums="
-cdec93b3d10b80da4a16757e60ecf8b35e78adfc57edd40917f53c4d20ce2847363ac99954cc92492cd84b81c01c4af667b16c8f4fe54aa98b9181ef5b1951ba php-7.4.29.tar.xz
-1c708de82d1086f272f484faf6cf6d087af7c31750cc2550b0b94ed723961b363f28a947b015b2dfc0765caea185a75f5d2c2f2b099c948b65c290924f606e4f php7-fpm.initd
-cacce7bf789467ff40647b7319e3760c6c587218720538516e8d400baa75651f72165c4e28056cd0c1dc89efecb4d00d0d7823bed80b29136262c825ce816691 php7-fpm.logrotate
-274bd7b0b2b7002fa84c779640af37b59258bb37b05cb7dd5c89452977d71807f628d91b523b5039608376d1f760f3425d165242ca75ee5129b2730e71c4e198 php7-module.conf
-ee221c1cf94783ef15780007eab8a9d5e38a8f939f9e25168687438c558e673a4c3b321d96017571cbe569756585003f750382981d0f02cf0a634d951b850f98 disabled-tests.list
-a4130d29c7fee2b8cb561b116baf603bdc3a7b5b4985ec3c9918f253d1851197539dfad72c6b36d9f7008f85982904731184c79e4cee4415c1a1b88016639225 install-pear.patch
-ebf571c5e595221b9944d7e840807ebb68c1be38bf117186e19a3bd1070310ece5918bcaa5f941679f3371a2108ad57bf179c3f90e612a5a2b982db941172859 includedir.patch
-965b52893affb666af64e00d09e0208dcd41b17ce2864cf05616c6d05a05c0121694c0b209d403b8c0c55d18e6f1528c4aba1a4fcdce7b282a13304d12cd0f9d sharedir.patch
-16399fbf6a966f9beffe00f659f9551ef8e52285bca116da5bd5b15ec99a2b0bd5fa03be0faa6c893802aa44c100d634083343a9ac0cd2467812865df66dd572 php7-fpm-version-suffix.patch
-3bfeea79f9acfaa7be5bab85cd3d02713abb569e54024a22bb2c747c06d97f83ac2c63dcd75c7c409426ac03f8bc2ccc01bcd66bc39a767930d32542349123f9 fix-tests-devserver.patch
-7c8c3cac9efce81d525cb5a70e1402e393881b83ef4c7b5d39d3565803d21cd283daf3d74e9a8b059ecac66cf339756acc63608ffcb83d960dba86583bd45108 enchant-2.patch
-996b9a542858b0385a300265194afc57eddb72b9d7e4dcdf63b4f1ba7d3588e67309030acc73f00af1717168becd50b1d3582fcb88605e9892fd683a33cae023 xfail-openssl-1.1-test.patch
-465b38c089d938a4a072b2eff3edaf928455bf873f5eeb65ff3bee9614f5f45c70f285abb50809c2e2d9d259395acae38bd649860ca3b8d65e43447082a51552 atomic-lsapi.patch
-be6a57063414bd255def54d5f6e42cbdc3baec55c8eaf9c8ca6e96d0cb3fec942ebb1868806850859d34c5c45d03a2abfec3fecd1aef04524da8eda01d9041ed fix-curl-7.83-test.patch
-"
diff --git a/testing/php7/atomic-lsapi.patch b/testing/php7/atomic-lsapi.patch
deleted file mode 100644
index 39cf1823f0b..00000000000
--- a/testing/php7/atomic-lsapi.patch
+++ /dev/null
@@ -1,82 +0,0 @@
-Patch-Source: https://github.com/php/php-src/pull/7997
-
-diff --git a/sapi/litespeed/lsapilib.c b/sapi/litespeed/lsapilib.c
-index 2208bbd47b..42dd320356 100644
---- a/sapi/litespeed/lsapilib.c
-+++ b/sapi/litespeed/lsapilib.c
-@@ -443,7 +443,7 @@ static void lsapi_close_connection(LSAPI_Request *pReq)
- if (s_busy_workers)
- __sync_fetch_and_sub(s_busy_workers, 1);
- if (s_worker_status)
-- __sync_lock_test_and_set(&s_worker_status->m_state, LSAPI_STATE_IDLE);
-+ __atomic_test_and_set(&s_worker_status->m_state, LSAPI_STATE_IDLE);
- }
-
-
-@@ -1587,7 +1587,7 @@ int LSAPI_Accept_r( LSAPI_Request * pReq )
- else
- {
- if (s_worker_status)
-- __sync_lock_test_and_set(&s_worker_status->m_state,
-+ __atomic_test_and_set(&s_worker_status->m_state,
- LSAPI_STATE_CONNECTED);
- if (s_busy_workers)
- __sync_fetch_and_add(s_busy_workers, 1);
-@@ -3315,7 +3315,7 @@ static int lsapi_prefork_server_accept( lsapi_prefork_server * pServer,
- if (pthread_atfork_func)
- (*pthread_atfork_func)(NULL, NULL, set_skip_write);
-
-- __sync_lock_test_and_set(&s_worker_status->m_state,
-+ __atomic_test_and_set(&s_worker_status->m_state,
- LSAPI_STATE_CONNECTED);
- if (s_busy_workers)
- __sync_add_and_fetch(s_busy_workers, 1);
-@@ -3402,7 +3402,7 @@ int LSAPI_Postfork_Child(LSAPI_Request * pReq)
- if (pthread_atfork_func)
- (*pthread_atfork_func)(NULL, NULL, set_skip_write);
-
-- __sync_lock_test_and_set(&s_worker_status->m_state,
-+ __atomic_test_and_set(&s_worker_status->m_state,
- LSAPI_STATE_CONNECTED);
- if (s_busy_workers)
- __sync_add_and_fetch(s_busy_workers, 1);
-@@ -3651,7 +3651,7 @@ int LSAPI_Prefork_Accept_r( LSAPI_Request * pReq )
- if (fd == pReq->m_fdListen)
- {
- if (s_worker_status)
-- __sync_lock_test_and_set(&s_worker_status->m_state,
-+ __atomic_test_and_set(&s_worker_status->m_state,
- LSAPI_STATE_ACCEPTING);
- if (s_accepting_workers)
- __sync_fetch_and_add(s_accepting_workers, 1);
-@@ -3662,7 +3662,7 @@ int LSAPI_Prefork_Accept_r( LSAPI_Request * pReq )
- if (s_accepting_workers)
- __sync_fetch_and_sub(s_accepting_workers, 1);
- if (s_worker_status)
-- __sync_lock_test_and_set(&s_worker_status->m_state,
-+ __atomic_test_and_set(&s_worker_status->m_state,
- LSAPI_STATE_IDLE);
- }
-
-@@ -3711,7 +3711,7 @@ int LSAPI_Prefork_Accept_r( LSAPI_Request * pReq )
- if ( pReq->m_fd != -1 )
- {
- if (s_worker_status)
-- __sync_lock_test_and_set(&s_worker_status->m_state,
-+ __atomic_test_and_set(&s_worker_status->m_state,
- LSAPI_STATE_CONNECTED);
- if (s_busy_workers)
- __sync_fetch_and_add(s_busy_workers, 1);
-diff --git a/sapi/litespeed/lsapilib.c b/sapi/litespeed/lsapilib.c
-index 42dd320356..0932ebaaa8 100644
---- a/sapi/litespeed/lsapilib.c
-+++ b/sapi/litespeed/lsapilib.c
-@@ -3390,7 +3390,7 @@ int LSAPI_Postfork_Child(LSAPI_Request * pReq)
- {
- int max_children = g_prefork_server->m_iMaxChildren;
- s_pid = getpid();
-- __sync_lock_test_and_set(&pReq->child_status->m_pid, s_pid);
-+ __atomic_test_and_set(&pReq->child_status->m_pid, s_pid);
- s_worker_status = pReq->child_status;
-
- setsid();
diff --git a/testing/php7/disabled-tests.list b/testing/php7/disabled-tests.list
deleted file mode 100644
index cbfd896ac21..00000000000
--- a/testing/php7/disabled-tests.list
+++ /dev/null
@@ -1,219 +0,0 @@
-#
-# Tests that we don't need to run
-#
-
-# These are mostly unit or regression tests, we care about integration tests.
-tests/classes/*
-Zend/tests/*
-
-# Windows tests
-ext/standard/tests/file/windows_mb_path/*
-ext/standard/tests/file/*win32*.phpt
-ext/standard/tests/dir/*win32*.phpt
-
-# Require database or slow as dblib
-ext/mysqli/tests/*
-ext/odbc/tests/*
-ext/pdo/tests/*.phpt
-ext/pdo_dblib/tests/*
-ext/pdo_mysql/tests/*
-ext/pdo_odbc/tests/*
-ext/pdo_pgsql/tests/*
-ext/pgsql/tests/*
-
-#
-# Tests that fail and probably should not...
-#
-
-# Too many tests fail! Some of them bogus, some not.
-# THIS SHOULD BE REALLY FIXED!
-ext/openssl/tests/bug46127.phpt
-ext/openssl/tests/bug48182.phpt
-ext/openssl/tests/bug54992.phpt
-ext/openssl/tests/bug65538_001.phpt
-ext/openssl/tests/bug65538_003.phpt
-ext/openssl/tests/bug65729.phpt
-ext/openssl/tests/bug68265.phpt
-ext/openssl/tests/bug68879.phpt
-ext/openssl/tests/bug68920.phpt
-ext/openssl/tests/bug69215.phpt
-ext/openssl/tests/bug72333.phpt
-ext/openssl/tests/bug74159.phpt
-ext/openssl/tests/bug76705.phpt
-ext/openssl/tests/bug77390.phpt
-ext/openssl/tests/capture_peer_cert_001.phpt
-ext/openssl/tests/openssl_peer_fingerprint_basic.phpt
-ext/openssl/tests/peer_verification.phpt
-ext/openssl/tests/san_peer_matching.phpt
-ext/openssl/tests/session_meta_capture.phpt
-ext/openssl/tests/session_meta_capture_tlsv13.phpt
-ext/openssl/tests/sni_server.phpt
-ext/openssl/tests/sni_server_key_cert.phpt
-ext/openssl/tests/stream_crypto_flags_001.phpt
-ext/openssl/tests/stream_crypto_flags_002.phpt
-ext/openssl/tests/stream_crypto_flags_003.phpt
-ext/openssl/tests/stream_crypto_flags_004.phpt
-ext/openssl/tests/stream_security_level.phpt
-ext/openssl/tests/stream_verify_peer_name_001.phpt
-ext/openssl/tests/stream_verify_peer_name_002.phpt
-ext/openssl/tests/stream_verify_peer_name_003.phpt
-ext/openssl/tests/streams_crypto_method.phpt
-ext/openssl/tests/tls_min_v1.0_max_v1.1_wrapper.phpt
-ext/openssl/tests/tls_wrapper.phpt
-ext/openssl/tests/tls_wrapper_with_tls_v1.3.phpt
-ext/openssl/tests/tlsv1.0_wrapper.phpt
-ext/openssl/tests/tlsv1.1_wrapper.phpt
-ext/openssl/tests/tlsv1.2_wrapper.phpt
-ext/openssl/tests/tlsv1.3_wrapper.phpt
-
-# Needs to open tls socket
-ext/openssl/tests/bug62890.phpt
-
-# Broken tests, missing config.
-sapi/fpm/tests/socket-ipv4-fallback.phpt
-
-# Fails in chroot (on Travis).
-sapi/cli/tests/cli_process_title_unix.phpt
-
-# Error messages in different order.
-sapi/cgi/tests/005.phpt
-
-# Fails on ppc64le.
-sapi/phpdbg/tests/watch_006.phpt
-
-# Missing timezone in date.
-ext/date/tests/bug27780.phpt
-ext/date/tests/bug32555.phpt
-ext/date/tests/bug33532.phpt
-
-# Number overflow!?
-ext/date/tests/bug53437_var5.phpt
-ext/date/tests/bug53437_var6.phpt
-# fails on 32 bits
-ext/date/tests/bug53437_var3.phpt
-
-# Incompatible version of enchant library?
-ext/enchant/tests/broker_list_dicts.phpt
-ext/enchant/tests/bug13181.phpt
-# no warning but expected
-ext/enchant/tests/bug53070.phpt
-
-# Wrong charset, conversion from `UTF-8' to `ASCII//TRANSLIT' is not allowed.
-ext/iconv/tests/iconv_basic_001.phpt
-
-# Wrong charset, conversion from `UTF-8' to `UTF-8//IGNORE' is not allowed.
-ext/iconv/tests/bug48147.phpt
-
-# stream_filter_append(): unable to create or locate filter "convert.iconv.ucs-2/utf-8//IGNORE"
-ext/iconv/tests/bug76249.phpt
-
-# for ICU <= 57.1
-ext/intl/tests/spoofchecker_001.phpt
-ext/intl/tests/timezone_IDforWindowsID_basic.phpt
-ext/intl/tests/timezone_windowsID_basic.phpt
-
-# Class 'Phar' not found.
-ext/opcache/tests/issue0115.phpt
-ext/opcache/tests/issue0149.phpt
-
-# Fails in CI - Insufficient privileges. https://gitlab.alpinelinux.org/alpine/aports/-/issues/12692#note_169663
-ext/pcntl/tests/pcntl_unshare_01.phpt
-ext/pcntl/tests/pcntl_unshare_02.phpt
-
-# Randomly fails.
-ext/pcntl/tests/002.phpt
-# Randomly fails on arm7
-ext/standard/tests/file/bug60120.phpt
-
-# Call to undefined function session_start().
-ext/session/tests/session_regenerate_id_cookie.phpt
-
-# Class 'SoapServer' not found.
-ext/soap/tests/bug73037.phpt
-
-# Incorrect results.
-ext/soap/tests/server009.phpt
-
-# Incorrect results.
-ext/standard/tests/crypt/bcrypt_invalid_algorithm.phpt
-ext/standard/tests/crypt/bcrypt_invalid_cost.phpt
-ext/standard/tests/crypt/des_fallback_invalid_salt.phpt
-ext/standard/tests/strings/crypt_blowfish.phpt
-ext/standard/tests/strings/crypt_blowfish_variation1.phpt
-ext/standard/tests/strings/crypt_blowfish_variation2.phpt
-
-# Incorrect results.
-ext/standard/tests/strings/bug51059.phpt
-ext/standard/tests/strings/bug79986.phpt
-
-# Failing tests related to locale and/or iconv.
-ext/date/tests/009.phpt
-ext/iconv/tests/bug52211.phpt
-ext/intl/tests/bug67052.phpt
-ext/json/tests/bug41403.phpt
-ext/pcre/tests/ctype_back_to_c.phpt
-ext/pcre/tests/locales.phpt
-ext/soap/tests/bugs/bug39815.phpt
-ext/standard/tests/array/locale_sort.phpt
-ext/standard/tests/strings/htmlentities02.phpt
-ext/standard/tests/strings/htmlentities03.phpt
-ext/standard/tests/strings/moneyformat.phpt
-ext/standard/tests/strings/setlocale_basic1.phpt
-ext/standard/tests/strings/setlocale_basic2.phpt
-ext/standard/tests/strings/setlocale_basic3.phpt
-ext/standard/tests/strings/setlocale_error.phpt
-ext/standard/tests/strings/setlocale_variation1.phpt
-ext/standard/tests/strings/setlocale_variation2.phpt
-ext/standard/tests/strings/setlocale_variation3.phpt
-ext/standard/tests/strings/setlocale_variation4.phpt
-ext/standard/tests/strings/setlocale_variation5.phpt
-ext/standard/tests/strings/sprintf_f_3.phpt
-ext/standard/tests/strings/strtoupper.phpt
-ext/standard/tests/time/strptime_basic.phpt
-ext/standard/tests/time/strptime_parts.phpt
-tests/lang/034.phpt
-tests/lang/bug30638.phpt
-
-# setlocale() does not affect result of nl_langinfo(CODESET) always returns UTF-8
-ext/fileinfo/tests/bug74170.phpt
-
-# no xml header displayed
-ext/tidy/tests/020.phpt
-
-#
-# Tests that fail for known reason and/or we don't need to worry about them
-#
-
-# Fails due to unsupported JP charsets.
-ext/iconv/tests/eucjp2iso2022jp.phpt
-ext/iconv/tests/iconv_mime_encode.phpt
-ext/standard/tests/strings/htmlentities04.phpt
-ext/standard/tests/strings/htmlentities15.phpt
-
-# Requires running SNMP server.
-ext/snmp/tests/*
-
-# Different wording of socket error messages (due to different libc).
-ext/sockets/tests/socket_strerror.phpt
-
-# Expects permissions on /etc to be 40755
-ext/standard/tests/file/006_error.phpt
-
-# Fails probably due to differencies in musl.
-ext/standard/tests/file/popen_pclose_error.phpt
-
-# Fails probably due to differencies in musl.
-ext/sockets/tests/socket_create_pair-wrongparams.phpt
-
-# Fail due to libxml2 upgrade to 2.9.12
-# See: https://gitlab.alpinelinux.org/alpine/aports/-/issues/12692
-ext/dom/tests/DOMDocument_loadXML_error1.phpt
-ext/dom/tests/DOMDocument_load_error1.phpt
-ext/dom/tests/bug43364.phpt
-ext/dom/tests/bug80268.phpt
-ext/libxml/tests/bug61367-read.phpt
-ext/libxml/tests/libxml_disable_entity_loader.phpt
-sapi/fpm/tests/bug68391-conf-include-order.phpt
-
-# compilation failed https://gitlab.alpinelinux.org/alpine/aports/-/issues/13116
-ext/pcre/tests/bug70345.phpt
diff --git a/testing/php7/enchant-2.patch b/testing/php7/enchant-2.patch
deleted file mode 100644
index 9d421c3bf08..00000000000
--- a/testing/php7/enchant-2.patch
+++ /dev/null
@@ -1,76 +0,0 @@
---- php-7.4.4/ext/enchant/config.m4 2020-03-17 10:40:22.000000000 +0000
-+++ php-7.4.4/ext/enchant/config.m4 2020-03-27 21:25:27.754470703 +0000
-@@ -4,21 +4,21 @@ PHP_ARG_WITH([enchant],
- [Include Enchant support])])
-
- if test "$PHP_ENCHANT" != "no"; then
-- PKG_CHECK_MODULES([ENCHANT], [enchant])
-+ PKG_CHECK_MODULES([ENCHANT], [enchant-2])
-
- PHP_EVAL_INCLINE($ENCHANT_CFLAGS)
- PHP_EVAL_LIBLINE($ENCHANT_LIBS, ENCHANT_SHARED_LIBADD)
-
- AC_DEFINE(HAVE_ENCHANT, 1, [ ])
-
-- PHP_CHECK_LIBRARY(enchant, enchant_get_version,
-+ PHP_CHECK_LIBRARY(enchant-2, enchant_get_version,
- [
- AC_DEFINE(HAVE_ENCHANT_GET_VERSION, 1, [ ])
- ], [ ], [
- $ENCHANT_LIBS
- ])
-
-- PHP_CHECK_LIBRARY(enchant, enchant_broker_set_param,
-+ PHP_CHECK_LIBRARY(enchant-2, enchant_broker_set_param,
- [
- AC_DEFINE(HAVE_ENCHANT_BROKER_SET_PARAM, 1, [ ])
- ], [ ], [
---- a/ext/enchant/enchant.c.orig
-+++ b/ext/enchant/enchant.c
-@@ -738,7 +738,7 @@
- for (i = 0; i < n_sugg; i++) {
- add_next_index_string(sugg, suggs[i]);
- }
-- enchant_dict_free_suggestions(pdict->pdict, suggs);
-+ enchant_dict_free_string_list(pdict->pdict, suggs);
- }
-
-
-@@ -793,7 +793,7 @@
- add_next_index_string(return_value, suggs[i]);
- }
-
-- enchant_dict_free_suggestions(pdict->pdict, suggs);
-+ enchant_dict_free_string_list(pdict->pdict, suggs);
- }
- }
- /* }}} */
-@@ -813,7 +813,7 @@
-
- PHP_ENCHANT_GET_DICT;
-
-- enchant_dict_add_to_personal(pdict->pdict, word, wordlen);
-+ enchant_dict_add(pdict->pdict, word, wordlen);
- }
- /* }}} */
-
-@@ -851,7 +851,7 @@
-
- PHP_ENCHANT_GET_DICT;
-
-- RETURN_BOOL(enchant_dict_is_in_session(pdict->pdict, word, wordlen));
-+ RETURN_BOOL(enchant_dict_is_added(pdict->pdict, word, wordlen));
- }
- /* }}} */
-
---- php-7.4.4/build/php.m4 2020-03-17 06:40:21.000000000 -0400
-+++ php-7.4.4/build/php.m4 2020-04-05 09:27:14.634620646 -0400
-@@ -1541,7 +1541,7 @@ AC_DEFUN([PHP_CHECK_LIBRARY], [
- ],[
- LDFLAGS=$save_old_LDFLAGS
- ext_shared=$save_ext_shared
-- unset ac_cv_lib_$1[]_$2
-+ unset ac_cv_lib_[]translit($1, -, _)_$2
- $4
- ])dnl
- ])
diff --git a/testing/php7/fix-curl-7.83-test.patch b/testing/php7/fix-curl-7.83-test.patch
deleted file mode 100644
index b087acfb28a..00000000000
--- a/testing/php7/fix-curl-7.83-test.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From a4179e4c92b6365d39e09cb9cd63c476848013af Mon Sep 17 00:00:00 2001
-From: "Christoph M. Becker" <cmbecker69@gmx.de>
-Date: Wed, 27 Apr 2022 12:37:39 +0200
-Subject: [PATCH] Fix test for curl 7.83.0
-Patch-Source: https://github.com/php/php-src/commit/a4179e4c92b6365d39e09cb9cd63c476848013af
-
-libcurl 7.83.0 removed some trailing exclamation marks from error
-messages[1]; we have to cater to that.
-
-[1] <https://github.com/curl/curl/commit/6968fb9d54dc3a1aaa1b16088f038eaf5dd8b2d7>
----
- ext/curl/tests/curl_basic_007.phpt | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/ext/curl/tests/curl_basic_007.phpt b/ext/curl/tests/curl_basic_007.phpt
-index 3b53658d6a7e..3834e4674f82 100644
---- a/ext/curl/tests/curl_basic_007.phpt
-+++ b/ext/curl/tests/curl_basic_007.phpt
-@@ -20,5 +20,5 @@ curl_close($ch);
-
- ?>
- --EXPECTF--
--string(%d) "No URL set!%w"
-+string(%d) "No URL set%A"
- int(3)
diff --git a/testing/php7/php7-fpm-version-suffix.patch b/testing/php7/php7-fpm-version-suffix.patch
deleted file mode 100644
index d480f7a0c9a..00000000000
--- a/testing/php7/php7-fpm-version-suffix.patch
+++ /dev/null
@@ -1,79 +0,0 @@
---- a/sapi/fpm/fpm/fpm_conf.c
-+++ b/sapi/fpm/fpm/fpm_conf.c
-@@ -1212,7 +1212,7 @@
- }
-
- if (!fpm_global_config.error_log) {
-- fpm_global_config.error_log = strdup("log/php-fpm.log");
-+ fpm_global_config.error_log = strdup("log/php7/error.log");
- }
-
- #ifdef HAVE_SYSTEMD
-@@ -1223,7 +1223,7 @@
-
- #ifdef HAVE_SYSLOG_H
- if (!fpm_global_config.syslog_ident) {
-- fpm_global_config.syslog_ident = strdup("php-fpm");
-+ fpm_global_config.syslog_ident = strdup("php-fpm7");
- }
-
- if (fpm_global_config.syslog_facility < 0) {
-@@ -1722,7 +1722,7 @@
- if (fpm_globals.prefix == NULL) {
- spprintf(&tmp, 0, "%s/php-fpm.conf", PHP_SYSCONFDIR);
- } else {
-- spprintf(&tmp, 0, "%s/etc/php-fpm.conf", fpm_globals.prefix);
-+ spprintf(&tmp, 0, "%s/etc/php7/php-fpm.conf", fpm_globals.prefix);
- }
-
- if (!tmp) {
-
---- a/sapi/fpm/php-fpm.conf.in
-+++ b/sapi/fpm/php-fpm.conf.in
-@@ -16,3 +16,3 @@
- ; Default Value: none
--;pid = run/php-fpm.pid
-+;pid = run/php-fpm7.pid
-
-@@ -22,4 +22,4 @@
- ; Note: the default prefix is @EXPANDED_LOCALSTATEDIR@
--; Default Value: log/php-fpm.log
--;error_log = log/php-fpm.log
-+; Default Value: log/php7/error.log
-+;error_log = log/php7/error.log
-
-@@ -35,4 +35,4 @@
- ; which must suit common needs.
--; Default Value: php-fpm
--;syslog.ident = php-fpm
-+; Default Value: php-fpm7
-+;syslog.ident = php-fpm7
-
---- a/sapi/fpm/www.conf.in
-+++ b/sapi/fpm/www.conf.in
-@@ -257,7 +257,7 @@
-
- ; The access log file
- ; Default: not set
--;access.log = log/$pool.access.log
-+;access.log = log/php7/$pool.access.log
-
- ; The access log format.
- ; The following syntax is allowed
-@@ -321,7 +321,7 @@
- ; The log file for slow requests
- ; Default Value: not set
- ; Note: slowlog is mandatory if request_slowlog_timeout is set
--;slowlog = log/$pool.log.slow
-+;slowlog = log/php7/$pool.slow.log
-
- ; The timeout for serving a single request after which a PHP backtrace will be
- ; dumped to the 'slowlog' file. A value of '0s' means 'off'.
-@@ -434,6 +434,6 @@
- ; specified at startup with the -d argument
- ;php_admin_value[sendmail_path] = /usr/sbin/sendmail -t -i -f www@my.domain.com
- ;php_flag[display_errors] = off
--;php_admin_value[error_log] = /var/log/fpm-php.www.log
-+;php_admin_value[error_log] = /var/log/php7/$pool.error.log
- ;php_admin_flag[log_errors] = on
- ;php_admin_value[memory_limit] = 32M
diff --git a/testing/php7/php7-fpm.initd b/testing/php7/php7-fpm.initd
deleted file mode 100644
index f56fdb52342..00000000000
--- a/testing/php7/php7-fpm.initd
+++ /dev/null
@@ -1,93 +0,0 @@
-#!/sbin/openrc-run
-
-# If you want to run separate master process per pool, then create a symlink
-# to this runscript for each pool. In that mode, the php-fpm daemon is started
-# as nobody by default. You can override the user (and group) by declaring
-# variable "user" and optionally "group" in conf.d file, or in the $fpm_config
-# file (the former has precedence).
-
-: ${name:="PHP FastCGI Process Manager"}
-
-command="/usr/sbin/php-fpm7"
-command_background="yes"
-start_stop_daemon_args="--quiet"
-pidfile="/run/$RC_SVCNAME/php-fpm.pid"
-retry="SIGTERM/20"
-
-# configtest is here only for backward compatibility
-extra_commands="checkconfig configtest"
-extra_started_commands="reload reopen"
-description_checkconfig="Run php-fpm config check"
-description_reload="Gracefully reload workers and config"
-description_reopen="Reopen log files"
-
-required_files="$fpm_config"
-
-depend() {
- need net
- use apache2 lighttpd nginx
-}
-
-init_vars() {
- # Defaults for single master process with multiple pools
- if [ "$RC_SVCNAME" = "php-fpm7" ]; then
- : ${fpm_config:="/etc/php7/php-fpm.conf"}
- : ${user:="root"}
- # Defaults for master process per pool
- else
- : ${fpm_config="/etc/php7/php-fpm.d/${RC_SVCNAME#php-fpm7.}.conf"}
- : ${user:="$(conf_get user)"}
- : ${user:="nobody"}
- : ${group:="$(conf_get group)"}
- fi
- command_args="--nodaemonize --fpm-config $fpm_config"
- start_stop_daemon_args="$start_stop_daemon_args
- --user $user ${group:+"--group $group"}"
-}
-
-start_pre() {
- checkconfig || return 1
-
- # If unix socket is used (instead of TCP/IP), then ensure that the
- # directory exists and has correct privileges.
- local listen="$(conf_get listen)"
- if [ "${listen:0:1}" = "/" ]; then
- checkpath -d -o $user:$group "$(dirname "$listen")"
- fi
-
- checkpath -d "$(dirname "$pidfile")"
-}
-
-reload() {
- ebegin "Reloading $name"
- start-stop-daemon --signal USR2 --pidfile "$pidfile"
- eend $?
-}
-
-reopen() {
- ebegin "Reopening $name log files"
- start-stop-daemon --signal USR1 --pidfile "$pidfile"
- eend $?
-}
-
-checkconfig() {
- init_vars
- ebegin "Checking $fpm_config"
-
- local out
- out="$(su -s /bin/sh -c "$command --test --fpm-config $fpm_config" $user 2>&1)" || {
- printf "%s\n" "$out"
- eend 1 "failed, please correct errors above"
- return 1
- }
-}
-
-configtest() {
- ewarn "configtest is deprecated, use checkconfig instead"
- checkconfig
-}
-
-conf_get() {
- local key="$1"
- sed -nE "s/^${key}\s*=\s*\"?([^\";]+).*/\1/p" "$fpm_config" | head -n 1
-}
diff --git a/testing/php7/php7-fpm.logrotate b/testing/php7/php7-fpm.logrotate
deleted file mode 100644
index 10e53e46832..00000000000
--- a/testing/php7/php7-fpm.logrotate
+++ /dev/null
@@ -1,13 +0,0 @@
-/var/log/php7/*.log {
- rotate 7
- daily
- missingok
- notifempty
- delaycompress
- compress
- dateext
- sharedscripts
- postrotate
- /etc/init.d/php-fpm7 --ifstarted --quiet reopen
- endscript
-}
diff --git a/testing/php7/php7-module.conf b/testing/php7/php7-module.conf
deleted file mode 100644
index 4c26b8f1cac..00000000000
--- a/testing/php7/php7-module.conf
+++ /dev/null
@@ -1,13 +0,0 @@
-LoadModule php7_module modules/mod_php7.so
-
-DirectoryIndex index.php index.html
-
-<FilesMatch \.php$>
- SetHandler application/x-httpd-php
-</FilesMatch>
-
-# Uncomment the following to allow .phps files to be handled by the php source filter,
-# and displayed as syntax-highlighted source code
-#<FilesMatch "\.phps$">
-# SetHandler application/x-httpd-php-source
-#</FilesMatch>
diff --git a/testing/php7/sharedir.patch b/testing/php7/sharedir.patch
deleted file mode 100644
index 2963e89da37..00000000000
--- a/testing/php7/sharedir.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/php.ini-production 2018-07-28 18:05:51.737130931 +0300
-+++ b/php.ini-production 2018-07-28 18:06:45.177774666 +0300
-@@ -733,7 +733,7 @@
- ;;;;;;;;;;;;;;;;;;;;;;;;;
-
- ; UNIX: "/path1:/path2"
--;include_path = ".:/php/includes"
-+include_path = ".:/usr/share/php7"
- ;
- ; Windows: "\path1;\path2"
- ;include_path = ".;c:\php\includes"
diff --git a/testing/php7/xfail-openssl-1.1-test.patch b/testing/php7/xfail-openssl-1.1-test.patch
deleted file mode 100644
index f607cc143c6..00000000000
--- a/testing/php7/xfail-openssl-1.1-test.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/ext/openssl/tests/openssl_error_string_basic.phpt b/ext/openssl/tests/openssl_error_string_basic.phpt
-index e4ea264b3b..fd1f7ef9d3 100644
---- a/ext/openssl/tests/openssl_error_string_basic.phpt
-+++ b/ext/openssl/tests/openssl_error_string_basic.phpt
-@@ -2,6 +2,8 @@
- openssl_error_string() tests
- --SKIPIF--
- <?php if (!extension_loaded("openssl")) print "skip"; ?>
-+--XFAIL--
-+Somehow unstable
- --FILE--
- <?php
- // helper function to check openssl errors
diff --git a/testing/php8-pdlib/APKBUILD b/testing/php8-pdlib/APKBUILD
deleted file mode 100644
index 15e670fc98f..00000000000
--- a/testing/php8-pdlib/APKBUILD
+++ /dev/null
@@ -1,45 +0,0 @@
-# Contributor: goodspb <goodspb.luo@gmail.com>
-# Maintainer: Adriaan Groenenboom <agboom@pm.me>
-pkgname=php8-pdlib
-_extname=pdlib
-pkgver=1.0.2
-pkgrel=1
-pkgdesc="PHP 8 extension for Dlib"
-url="https://github.com/goodspb/pdlib"
-arch="all !ppc64le" # build fails https://github.com/goodspb/pdlib/issues/19
-license="MIT"
-depends="php8-common dlib"
-makedepends="php8-dev php8-bz2"
-source="php-$_extname-$pkgver.tar.gz::https://github.com/goodspb/$_extname/archive/v$pkgver.tar.gz
- https://github.com/goodspb/pdlib/commit/a31d3bc709321b784ecd93c983b476a0a298bfa0.patch"
-builddir="$srcdir/$_extname-$pkgver"
-
-#disable check on s390x as Frontal face detection failling
-[ "$CARCH" = "s390x" ] && options="!check"
-
-build() {
- phpize8
- ./configure --prefix=/usr --with-php-config=php-config8
- make
-}
-
-check() {
- # Tests require bz2 extension which is not bundled
- local _modules=/usr/lib/php8/modules
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test \
- TESTS=--show-diff SKIP_ONLINE_TESTS=1 \
- PHP_TEST_SHARED_EXTENSIONS=" \
- -d extension=$_modules/bz2.so \
- -d extension=modules/$_extname.so"
- php8 -dextension=modules/$_extname.so --ri $_extname
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php8/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/$_extname.ini
-}
-
-sha512sums="7222eeaedad8bfe8d0deb327c4d1deaea172994cfb2f2d43fb10f6b862ccc56e05bb459e0d2c94ed79f222eed8eb7c1974c15f862549bf563b132b531acf1cd3 php-pdlib-1.0.2.tar.gz
-5a910e9fbdd79da1f46f008cacc32494f781ae46c857ea1ef06b98fcc81537e12e773b0948fbd8b7fb15c2cbd2fadd13bcc752344fdcba412fa6f8351162f5b4 a31d3bc709321b784ecd93c983b476a0a298bfa0.patch"
diff --git a/testing/php8-pecl-csv/APKBUILD b/testing/php8-pecl-csv/APKBUILD
deleted file mode 100644
index ba09082509a..00000000000
--- a/testing/php8-pecl-csv/APKBUILD
+++ /dev/null
@@ -1,34 +0,0 @@
-# Contributor: Andy Postnikov <apostnikov@gmail.com>
-# Maintainer: Andy Postnikov <apostnikov@gmail.com>
-pkgname=php8-pecl-csv
-_extname=CSV
-pkgver=0.4.0
-pkgrel=1
-pkgdesc="CSV PHP 8 extension - PECL"
-url="https://pecl.php.net/package/CSV"
-arch="all"
-license="PHP-3.01"
-depends="php8-common"
-makedepends="php8-dev"
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir"/$_extname-$pkgver
-
-build() {
- phpize8
- ./configure --prefix=/usr --with-php-config=php-config8
- make
-}
-
-check() {
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
- php8 -dextension=modules/csv.so --ri csv
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php8/conf.d
- install -d $_confdir
- echo "extension=csv" > $_confdir/csv.ini
-}
-
-sha512sums="6ffe135f8a64ba070d59474047ca981513a6e6bfd12e44540e69b8fa4a39f67657a90a3243c9213ce4e49d6864f7a82195e6c1a1e0e38cc55265fdefba3736aa php-pecl-CSV-0.4.0.tgz"
diff --git a/testing/php8-pecl-datadog_trace/APKBUILD b/testing/php8-pecl-datadog_trace/APKBUILD
deleted file mode 100644
index d0cd055acde..00000000000
--- a/testing/php8-pecl-datadog_trace/APKBUILD
+++ /dev/null
@@ -1,45 +0,0 @@
-# Maintainer: Andy Postnikov <apostnikov@gmail.com>
-pkgname=php8-pecl-datadog_trace
-_extname=datadog_trace
-_realname=ddtrace
-pkgver=0.62.1
-pkgrel=0
-pkgdesc="APM and distributed tracing for PHP 8 - PECL"
-url="https://pecl.php.net/package/datadog_trace"
-arch="all !x86 !armv7 !armhf" # 64 bits only
-license="BSD-3-Clause"
-depends="php8-common"
-makedepends="php8-dev curl-dev"
-checkdepends="php8-cgi php8-curl php8-session"
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz
- fix-cgi-test.patch"
-builddir="$srcdir/$_extname-$pkgver"
-
-build() {
- phpize8
- ./configure --prefix=/usr --with-php-config=php-config8
- make
-}
-
-check() {
- local _modules=/usr/lib/php8/modules
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test \
- PHP_TEST_SHARED_EXTENSIONS=" \
- -d extension=$_modules/curl.so \
- -d extension=$_modules/session.so \
- -d extension=modules/$_realname.so" \
- TEST_PHP_CGI_EXECUTABLE=/usr/bin/php-cgi8 \
- TESTS='--show-diff'
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php8/conf.d
- install -d $_confdir
- echo "extension=$_realname" > $_confdir/$_extname.ini
-}
-
-sha512sums="
-f1cbf97c390781682b95779c0fc08791ad1f0e6019fa3faee27a79db834e6a3838a88b9508082f7481419996e574b3fc947cb1fb9d944e28cbf77515a91bee3c php-pecl-datadog_trace-0.62.1.tgz
-4a17d92ae1c495b0acc1f16d1732e33dd82f7b182adae83f7278b710c2c5f1c8e56471b2d2b4545992c01cc57e3eae19bbfd09dae3d389fb9d7efcdd9b3ab8cc fix-cgi-test.patch
-"
diff --git a/testing/php8-pecl-datadog_trace/fix-cgi-test.patch b/testing/php8-pecl-datadog_trace/fix-cgi-test.patch
deleted file mode 100644
index a2a125da8a1..00000000000
--- a/testing/php8-pecl-datadog_trace/fix-cgi-test.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/tests/ext/startup_logging_disabled.phpt
-+++ b/tests/ext/startup_logging_disabled.phpt
-@@ -13,7 +13,7 @@
- var_dump($logs);
- ?>
- --EXPECTF--
--%s/php-cgi %s
-+%s/php-cgi8 %s
- No JSON found: (%s)
- array(0) {
- }
diff --git a/testing/php8-pecl-decimal/APKBUILD b/testing/php8-pecl-decimal/APKBUILD
deleted file mode 100644
index 4f4b8870e2b..00000000000
--- a/testing/php8-pecl-decimal/APKBUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-# Maintainer: Andy Postnikov <apostnikov@gmail.com>
-pkgname=php8-pecl-decimal
-_extname=decimal
-pkgver=1.4.0
-pkgrel=0
-pkgdesc="Correctly-rounded arbitrary precision decimal floating-point arithmetic in PHP 8 - PECL"
-url="https://pecl.php.net/package/decimal"
-arch="all"
-license="MIT"
-depends="php8-common"
-makedepends="php8-dev mpdecimal-dev"
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir/$_extname-$pkgver"
-
-build() {
- phpize8
- ./configure --prefix=/usr --with-php-config=php-config8
- make
-}
-
-check() {
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php8/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/$_extname.ini
-}
-
-sha512sums="39c7044a6e2f31cd2ca006fb2fe27b547ea717312a7ad1aee7a656aa60d99cc1198e6e9dcf0b90157f3514e110645f6b0fd47ccae0411d6c837dea3b6de1c521 php-pecl-decimal-1.4.0.tgz"
diff --git a/testing/php8-pecl-ev/APKBUILD b/testing/php8-pecl-ev/APKBUILD
deleted file mode 100644
index 6dd563a61f9..00000000000
--- a/testing/php8-pecl-ev/APKBUILD
+++ /dev/null
@@ -1,44 +0,0 @@
-# Maintainer: Andy Postnikov <apostnikov@gmail.com>
-pkgname=php8-pecl-ev
-_extname=ev
-pkgver=1.1.6_rc1
-_pkgver=${pkgver/_rc/RC}
-pkgrel=0
-pkgdesc="PHP 8.0 PECL interface to libev library - high performance full-featured event loop written in C."
-url="https://pecl.php.net/package/ev"
-arch="all"
-license="PHP-3.01"
-depends="php8-sockets"
-makedepends="libev-dev php8-dev"
-checkdepends="php8-pcntl php8-posix"
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$_pkgver.tgz"
-builddir="$srcdir/$_extname-$_pkgver"
-
-build() {
- phpize8
- ./configure --prefix=/usr --with-php-config=/usr/bin/php-config8
- make
-}
-
-check() {
- php8 -dextension=modules/$_extname.so --ri $_extname
- local _modules=/usr/lib/php8/modules
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test \
- TESTS=--show-diff \
- PHP_TEST_SHARED_EXTENSIONS=" \
- -d extension=$_modules/pcntl.so \
- -d extension=$_modules/posix.so \
- -d extension=$_modules/sockets.so \
- -d extension=modules/$_extname.so"
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php8/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/$_extname.ini
-}
-
-sha512sums="
-2712d00b23a1844c89dee84893032850845033d68a201f4edc704f3bf63c9ce6abb39d940eab62c3a7a4fbee6b7d9c893a7117bd6f0fed9a6953c622ad34bfdc php-pecl-ev-1.1.6_rc1.tgz
-"
diff --git a/testing/php8-pecl-gearman/APKBUILD b/testing/php8-pecl-gearman/APKBUILD
deleted file mode 100644
index 3c30a2d3301..00000000000
--- a/testing/php8-pecl-gearman/APKBUILD
+++ /dev/null
@@ -1,43 +0,0 @@
-# Contributor: Valery Kartel <valery.kartel@gmail.com>
-# Maintainer: Andy Postnikov <apostnikov@gmail.com>
-pkgname=php8-pecl-gearman
-_extname=gearman
-pkgver=2.1.0
-pkgrel=0
-pkgdesc="PHP 8 wrapper to libgearman - PECL"
-url="https://github.com/php/pecl-networking-gearman"
-arch="all"
-license="PHP-3.01"
-depends="php8-pcntl"
-makedepends="gearman-dev php8-dev"
-#checkdepends="gearmand"
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir/$_extname-$pkgver"
-
-build() {
- phpize8
- ./configure \
- --prefix=/usr \
- --with-php-config=/usr/bin/php-config8
- make
-}
-
-check() {
- php8 -dextension=modules/$_extname.so --ri $_extname
- # Requires server running so REPORT_EXIT_STATUS=0
- local _modules=/usr/lib/php8/modules
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test \
- TESTS=--show-diff SKIP_ONLINE_TESTS=1 \
- PHP_TEST_SHARED_EXTENSIONS=" \
- -d extension=$_modules/pcntl.so \
- -d extension=modules/$_extname.so"
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php8/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/$_extname.ini
-}
-
-sha512sums="78a3877ba2212777a1c8387ce14c0e2210f3141b9a6bb87507547f6e3f02dfc03387111e6ac84729dba8b1b9c0483ef1ba3c458480bc0f2e9d68dd49bd073ba6 php-pecl-gearman-2.1.0.tgz"
diff --git a/testing/php8-pecl-gmagick/APKBUILD b/testing/php8-pecl-gmagick/APKBUILD
deleted file mode 100644
index 71e8743a4f6..00000000000
--- a/testing/php8-pecl-gmagick/APKBUILD
+++ /dev/null
@@ -1,44 +0,0 @@
-# Contributor: Valery Kartel <valery.kartel@gmail.com>
-# Maintainer: Andy Postnikov <apostnikov@gmail.com>
-pkgname=php8-pecl-gmagick
-_pkgreal=gmagick
-pkgver=2.0.6_rc1
-_pkgver=${pkgver/_rc/RC}
-pkgrel=1
-pkgdesc="PHP 8 bindings to the GraphicsMagick library - PECL"
-url="https://pecl.php.net/package/gmagick"
-arch="all"
-license="PHP-3.01"
-depends="php8-common ghostscript-fonts"
-makedepends="graphicsmagick-dev libtool php8-dev"
-source="php-pecl-$_pkgreal-$_pkgver.tgz::https://pecl.php.net/get/$_pkgreal-$_pkgver.tgz"
-builddir="$srcdir/$_pkgreal-$_pkgver"
-
-build() {
- phpize8
- ./configure \
- --prefix=/usr \
- --with-php-config=/usr/bin/php-config8
- make
-}
-
-check() {
- if [ "$CARCH" = "x86" ]; then
- # https://gitlab.alpinelinux.org/alpine/aports/issues/11011
- rm -f \
- tests/gmagick-107_setimagevirtualpixelmethod.phpt \
- tests/gmagick-116_waveImage_basic.phpt
- fi
- # https://github.com/vitoc/gmagick/issues/53
- rm -f tests/gmagick-056-set_getsamplingfactors.phpt
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php8/conf.d
- install -d $_confdir
- echo "extension=$_pkgreal" > $_confdir/$_pkgreal.ini
-}
-
-sha512sums="c09ad751815d06964f16ab95025badc0711ceaaac0cf79035307aa75f2730b021b070d0e45e549ddd5447de68581ec666a817ec5c05a2a4557d4c1548216714f php-pecl-gmagick-2.0.6RC1.tgz"
diff --git a/testing/php8-pecl-grpc/APKBUILD b/testing/php8-pecl-grpc/APKBUILD
deleted file mode 100644
index 9a989299cf0..00000000000
--- a/testing/php8-pecl-grpc/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Maintainer: Andy Postnikov <apostnikov@gmail.com>
-pkgname=php8-pecl-grpc
-_extname=grpc
-pkgver=1.46.3
-pkgrel=0
-pkgdesc="PHP 8.0 extension provide a concrete implementation of the gRPC protocol, layered over HTTP/2."
-url="https://pecl.php.net/package/grpc"
-arch="all !s390x !ppc64le !riscv64" # build failures
-license="Apache-2.0"
-depends="php8-common"
-makedepends="php8-dev openssl-dev linux-headers"
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir"/$_extname-$pkgver
-
-build() {
- phpize8
- ./configure --prefix=/usr --with-php-config=php-config8
- make
-}
-
-check() {
- # Test suite is not a part of pecl release.
- php8 -d extension=modules/$_extname.so --ri $_extname
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php8/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/50_$_extname.ini
-}
-
-sha512sums="
-5b6c06b806df3132bf48b5bd032c794493b4e2a846d79d18f9f481a52e2792c397c4b367f4d9bbbe72aaa63747d05e845015239acfa8329346f077a65c216e38 php-pecl-grpc-1.46.3.tgz
-"
diff --git a/testing/php8-pecl-inotify/APKBUILD b/testing/php8-pecl-inotify/APKBUILD
deleted file mode 100644
index 286690f1045..00000000000
--- a/testing/php8-pecl-inotify/APKBUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-# Contributor: Fabio Ribeiro <fabiorphp@gmail.com>
-# Maintainer: Andy Postnikov <apostnikov@gmail.com>
-pkgname=php8-pecl-inotify
-_extname=inotify
-pkgver=3.0.0
-pkgrel=0
-pkgdesc="Inotify bindings for PHP 8"
-url="https://pecl.php.net/package/inotify"
-arch="all"
-license="PHP-3.01"
-depends="php8-common"
-makedepends="php8-dev"
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir"/$_extname-$pkgver
-
-build() {
- phpize8
- ./configure --prefix=/usr --with-php-config=php-config8
- make
-}
-
-check() {
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php8/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/70_$_extname.ini
-}
-
-sha512sums="f8b29f8611f16b92136ab8de89181c254bba1abee1e61cac2344440567a3155aae4b9b54b10fdb1b0254fd7a96da8c14b7dc5c9f7f08a03db30ab1645aca1eee php-pecl-inotify-3.0.0.tgz"
diff --git a/testing/php8-pecl-jsmin/APKBUILD b/testing/php8-pecl-jsmin/APKBUILD
deleted file mode 100644
index cae24254b36..00000000000
--- a/testing/php8-pecl-jsmin/APKBUILD
+++ /dev/null
@@ -1,46 +0,0 @@
-# Maintainer: Andy Postnikov <apostnikov@gmail.com>
-pkgname=php8-pecl-jsmin
-_extname=jsmin
-pkgver=3.0.0
-pkgrel=0
-_jqver=2.1.3
-pkgdesc="PHP 8 extension for minifying JavaScript - PECL"
-url="https://pecl.php.net/package/jsmin"
-arch="all !ppc64le" # test fails on builder
-license="PHP-3.01"
-depends="php8-common"
-makedepends="php8-dev"
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz
- jquery-$_jqver.js::https://github.com/sqmk/pecl-jsmin/raw/v$pkgver/tests/data/jquery-$_jqver.js
- fix-php8.patch
- fix-tests.patch
- "
-builddir="$srcdir/$_extname-$pkgver"
-
-build() {
- phpize8
- ./configure --prefix=/usr --with-php-config=/usr/bin/php-config8
- make
-}
-
-check() {
- mkdir -p tests/data
- cp "$srcdir"/jquery-$_jqver.js tests/data/
-
- php8 -dextension=modules/$_extname.so --ri $_extname
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS='--show-diff '
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php8/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/$_extname.ini
-}
-
-sha512sums="
-a465ae024a49bb8ac20463efc6b2546021806c2c43053f42c7ebfea4924b9b647b6e7c0c673102e12ecd8b693666441dc07203edef216eee958fa62f73056ea6 php-pecl-jsmin-3.0.0.tgz
-b8eb1a740c63feaab8ac24d87f39f4cfe263694c972f4978b9f0e3092f912a722596fd094dd637d22f03816617e13210bf11fad9a545dbb0423dc821c827081e jquery-2.1.3.js
-72f4ea4aad457d1a557e05ff8457a689ea75419e414b0893c2bdf5d7216d70b7c26a4993e3c9fa97de3409d080b3cf2a5bd2f0c4b050854c02f08ac592da1f85 fix-php8.patch
-e44a2615d98d786e0188d3880b41f267dab2fa215fb17cd37b17f8cc499bee7dd9e4fe1def4707dbd6769fa40ba2dbf7895ba3544db427a7d851f69a515fa83c fix-tests.patch
-"
diff --git a/testing/php8-pecl-memprof/APKBUILD b/testing/php8-pecl-memprof/APKBUILD
deleted file mode 100644
index 58c1207dedc..00000000000
--- a/testing/php8-pecl-memprof/APKBUILD
+++ /dev/null
@@ -1,39 +0,0 @@
-# Maintainer: Andy Postnikov <apostnikov@gmail.com>
-pkgname=php8-pecl-memprof
-_extname=memprof
-pkgver=3.0.2
-pkgrel=0
-pkgdesc="fast and accurate memory profiler that can be used to find the cause of memory leaks in PHP 8.0 applications - PECL"
-url="https://pecl.php.net/package/memprof"
-arch="all !x86 !armv7 !armhf" # tests fail
-license="MIT"
-depends="php8-common"
-makedepends="php8-dev judy-dev bsd-compat-headers"
-checkdepends="php8-pecl-xdebug php8-cgi"
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir/$_extname-$pkgver"
-
-build() {
- phpize8
- ./configure --prefix=/usr --with-php-config=php-config8
- make
-}
-
-check() {
- # Tests require xdebug extension
- local _depsdir=/usr/lib/php8/modules
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test PHP_TEST_SHARED_EXTENSIONS="
- -d zend_extension=$_depsdir/xdebug.so \
- -d extension=modules/$_extname.so" TESTS=--show-diff
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php8/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/$_extname.ini
-}
-
-sha512sums="
-2d951f2fd54cf074a392e5bffb22cec0d769147951986b26e6e96efc4d7e52b199bfc7964a663b8d94bd530bad566973a56d86395dfe23a7c3aeb086db12783c php-pecl-memprof-3.0.2.tgz
-"
diff --git a/testing/php8-pecl-mustache/APKBUILD b/testing/php8-pecl-mustache/APKBUILD
deleted file mode 100644
index 055495bfc5e..00000000000
--- a/testing/php8-pecl-mustache/APKBUILD
+++ /dev/null
@@ -1,38 +0,0 @@
-# Contributor: Renoir Boulanger <hello@renoirboulanger.com>
-# Maintainer: Andy Postnikov <apostnikov@gmail.com>
-pkgname=php8-pecl-mustache
-_extname=mustache
-pkgver=0.9.2
-pkgrel=0
-pkgdesc="PHP 8 extension: C++ implementation of Mustache - PECL"
-url="https://pecl.php.net/package/mustache"
-arch="all"
-license="MIT"
-depends="php8-common"
-makedepends="php8-dev libmustache"
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir"/$_extname-$pkgver
-
-build() {
- phpize8
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --with-php-config=php-config8 \
- --enable-mustache
- make
-}
-
-check() {
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php8/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/70_$_extname.ini
-}
-
-sha512sums="7a5a1a084f18cf1c45ac042bf9f2fa1f882975a5d361862034a333e5200f2df87ed34f957a31fa0994e6e53854b7529c5fffe61b13a1406847bd2475cad52ab6 php-pecl-mustache-0.9.2.tgz"
diff --git a/testing/php8-pecl-pcov/APKBUILD b/testing/php8-pecl-pcov/APKBUILD
deleted file mode 100644
index 0e79ba966e3..00000000000
--- a/testing/php8-pecl-pcov/APKBUILD
+++ /dev/null
@@ -1,38 +0,0 @@
-# Contributor: Andy Postnikov <apostnikov@gmail.com>
-# Maintainer: Andy Postnikov <apostnikov@gmail.com>
-
-pkgname=php8-pecl-pcov
-_extname=pcov
-pkgver=1.0.11
-pkgrel=0
-pkgdesc="Code coverage driver for PHP 8.0 - PECL"
-url="https://pecl.php.net/package/pcov"
-arch="all"
-license="PHP-3.01"
-depends="php8-common"
-makedepends="php8-dev"
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir"/$_extname-$pkgver
-
-build() {
- phpize8
- ./configure --prefix=/usr --with-php-config=php-config8
- make
-}
-
-check() {
- php8 -dextension=modules/$_extname.so --ri $_extname
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
-
- local _confdir="$pkgdir"/etc/php8/conf.d
- mkdir -p $_confdir
- echo "extension=$_extname" > $_confdir/$_extname.ini
-}
-
-sha512sums="
-9d196d92ddfdcd22a69d94543202d861e8d54355991d528e7a5f5bb5423943d6bc04b1b9a117294b7337093765595e5be0ac95ab1619149ec6dc9d6a4a330d69 php-pecl-pcov-1.0.11.tgz
-"
diff --git a/testing/php8-pecl-rrd/APKBUILD b/testing/php8-pecl-rrd/APKBUILD
deleted file mode 100644
index 0ab761e2072..00000000000
--- a/testing/php8-pecl-rrd/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Contributor: Pascal Hofmann <mail@pascalhofmann.de>
-# Contributor: Mickaël Remars <github@remars.com>
-# Maintainer: Mickaël Remars <github@remars.com>
-_extname=rrd
-pkgname=php8-pecl-rrd
-pkgver=2.0.3
-pkgrel=0
-pkgdesc="PHP 8 bindings to rrd tool system - PECL"
-url="https://pecl.php.net/package/rrd"
-arch="all"
-license="BSD-2-Clause" # just one word difference: "owner" in php-rrd's license, "holder" in bsd-2-clause
-depends="php8-common"
-makedepends="php8-dev rrdtool-dev"
-checkdepends="rrdtool"
-source="php-pecl-$_extname-$pkgver.tgz::http://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir/$_extname-$pkgver"
-
-build() {
- phpize8
- ./configure --prefix=/usr --with-php-config=php-config8
- make
-}
-
-check() {
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
-
- local _confdir="$pkgdir"/etc/php8/conf.d
- mkdir -p $_confdir
- echo "extension=$_extname" > $_confdir/20_$_extname.ini
-}
-
-sha512sums="28679ccead54806d1e92accc6f5ebab582a41db802f95797ddb43e3e15690889be3437f22e2a14939d217422ac2700ef90ae0a9b36244ddead3856343b3e09b4 php-pecl-rrd-2.0.3.tgz"
diff --git a/testing/php8-pecl-runkit7/APKBUILD b/testing/php8-pecl-runkit7/APKBUILD
deleted file mode 100644
index b07cf8a78ab..00000000000
--- a/testing/php8-pecl-runkit7/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Maintainer: Andy Postnikov <apostnikov@gmail.com>
-pkgname=php8-pecl-runkit7
-_extname=runkit7
-pkgver=4.0.0a3
-pkgrel=0
-pkgdesc="PHP 8 extension for replace, rename, and remove user defined functions, methods, and constants - PECL"
-url="https://pecl.php.net/package/runkit7"
-arch="all"
-license="BSD-3-Clause"
-depends="php8-common"
-makedepends="php8-dev"
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir/$_extname-$pkgver"
-
-build() {
- phpize8
- ./configure --prefix=/usr --with-php-config=/usr/bin/php-config8
- make
-}
-
-check() {
- php8 -dextension=modules/$_extname.so --ri $_extname
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php8/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/$_extname.ini
-}
-
-sha512sums="
-a4559ed86ca76af94d4793cb6c4c9dcf367f217b81e5cf978745a6dba9c00ee981a46a753075ff249cbc0f8f13aba18f0f302d619f246271445577222b578d3f php-pecl-runkit7-4.0.0a3.tgz
-"
diff --git a/testing/php8-pecl-seaslog/APKBUILD b/testing/php8-pecl-seaslog/APKBUILD
deleted file mode 100644
index cb5efc1f4dd..00000000000
--- a/testing/php8-pecl-seaslog/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Contributor: viest <dev@service.viest.me>
-# Maintainer: Chitao.Gao <neeke@php.net>
-pkgname=php8-pecl-seaslog
-_extname=seaslog
-pkgver=2.2.0
-pkgrel=0
-pkgdesc="An effective, fast, stable log extension for PHP 9."
-url="https://pecl.php.net/package/SeasLog"
-arch="all"
-license="PHP-3.01"
-depends="php8-common"
-makedepends="php8-dev"
-source="php-pecl-$_extname-$pkgver.tar.gz::https://pecl.php.net/get/SeasLog-$pkgver.tgz"
-builddir="$srcdir"/SeasLog-$pkgver
-
-build() {
- phpize8
- ./configure \
- --prefix=/usr \
- --with-php-config=/usr/bin/php-config8
- make
-}
-
-check() {
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test \
- TESTS=--show-diff
- php8 -dextension=modules/$_extname.so --ri $_extname
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php8/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/$_extname.ini
-}
-
-sha512sums="5c1d7dd6641bd8b8f3bf2c52f4b427103643fa1b7407a89769de7f450e882f9a1484b5b8b1aecf13c8060966b3bbcb52cbaf1536b93a8bceca5104bfda547629 php-pecl-seaslog-2.2.0.tar.gz"
diff --git a/testing/php8-pecl-simple-kafka-client/APKBUILD b/testing/php8-pecl-simple-kafka-client/APKBUILD
deleted file mode 100644
index 37461760655..00000000000
--- a/testing/php8-pecl-simple-kafka-client/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Maintainer: Nick Chiu <coding.nikazu@gmail.com>
-pkgname=php8-pecl-simple-kafka-client
-_extname=simple_kafka_client
-pkgver=0.1.4
-pkgrel=0
-pkgdesc="PHP 8 extension for Kafka based on librdkafka - PECL"
-url="https://pecl.php.net/package/simple_kafka_client"
-arch="all"
-license="BSD-3-Clause"
-depends="php8-common"
-makedepends="php8-dev file librdkafka-dev"
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir/$_extname-$pkgver"
-
-build() {
- phpize8
- ./configure --prefix=/usr --with-php-config=/usr/bin/php-config8
- make
-}
-
-check() {
- php8 -dextension=modules/$_extname.so --ri $_extname
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php8/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/$_extname.ini
-}
-
-sha512sums="
-450055cfe1b5a4b966a4cfdffffc89a3d1ac737a9d0b24aa66126f925cdbb5d7b5287a8c7e9bea5fe859cd360ba4683564837f8abd93567b54e6284687c3f4fb php-pecl-simple_kafka_client-0.1.4.tgz
-"
diff --git a/testing/php8-pecl-smbclient/APKBUILD b/testing/php8-pecl-smbclient/APKBUILD
deleted file mode 100644
index 9d380850dd8..00000000000
--- a/testing/php8-pecl-smbclient/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Contributor: Andy Postnikov <apostnikov@gmail.com>
-# Maintainer: Andy Postnikov <apostnikov@gmail.com>
-
-pkgname=php8-pecl-smbclient
-_extname=smbclient
-pkgver=1.0.6
-pkgrel=0
-pkgdesc="PHP 8 extension that uses Samba's libsmbclient library to provide Samba related functions and 'smb' streams to PHP programs."
-url="https://pecl.php.net/package/smbclient"
-arch="all"
-license="BSD-2-Clause"
-depends="php8-common"
-makedepends="php8-dev samba-dev"
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir"/$_extname-$pkgver
-
-build() {
- phpize8
- ./configure --prefix=/usr --with-php-config=php-config8
- make
-}
-
-check() {
- # Test suite require phpunit to run.
- php8 -d extension=modules/$_extname.so --ri smbclient
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php8/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/$_extname.ini
-}
-
-sha512sums="381051dbe6347ce3b0be9d1ed44ee80be846ce1cd4255689127220a48e3c157853e98ae463435a12342f6370b4e96c162069d8d00574aaf88675c5b9ad0810e8 php-pecl-smbclient-1.0.6.tgz"
diff --git a/testing/php8-pecl-solr/APKBUILD b/testing/php8-pecl-solr/APKBUILD
deleted file mode 100644
index 2f3a0bd687e..00000000000
--- a/testing/php8-pecl-solr/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Contributor: Fabio Ribeiro <fabiorphp@gmail.com>
-# Maintainer: Andy Postnikov <apostnikov@gmail.com>
-pkgname=php8-pecl-solr
-_extname=solr
-pkgver=2.5.1
-pkgrel=0
-pkgdesc="Apache SOLR extension for PHP 8 - PECL"
-url="https://pecl.php.net/package/solr"
-arch="all"
-license="PHP-3.01"
-depends="php8-common"
-makedepends="php8-dev curl-dev libxml2-dev"
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz
- fix-tests.patch"
-builddir="$srcdir"/$_extname-$pkgver
-
-build() {
- phpize8
- ./configure --prefix=/usr --with-php-config=php-config8
- make
-}
-
-check() {
- php8 -d extension=modules/$_extname.so --ri $_extname
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 SKIP_ONLINE_TESTS=1 test \
- TESTS='--show-diff'
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php8/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/40_$_extname.ini
-}
-
-sha512sums="b02711989455f3839e65835808dae66fdce6abfd85fe2cb3d46c4177deb2170b5993ee0c94177c880d3defac2d2c502b43d768b590b7180b5c38ab063f55bdf3 php-pecl-solr-2.5.1.tgz
-553503d194c8c8c4db065a4c21136e51d4ba8bb9a74327d312a6506e12d91b4d2b72c5082741e961df7f3852fecf2374333c8f00a173ca2e6e7e6f1049ecf6cb fix-tests.patch"
diff --git a/testing/php8-pecl-solr/fix-tests.patch b/testing/php8-pecl-solr/fix-tests.patch
deleted file mode 100644
index 58dd72ce456..00000000000
--- a/testing/php8-pecl-solr/fix-tests.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-Summary: skip tests which require solr server
---- a/tests/test.config.inc
-+++ b/tests/test.config.inc
-@@ -1,6 +1,6 @@
- <?php
-
--define('SOLR_SERVER_CONFIGURED', true);
-+define('SOLR_SERVER_CONFIGURED', false);
-
- define('ROOT_DIRECTORY', dirname(__FILE__));
-
diff --git a/testing/php8-pecl-stats/APKBUILD b/testing/php8-pecl-stats/APKBUILD
deleted file mode 100644
index b8f11ac4d5a..00000000000
--- a/testing/php8-pecl-stats/APKBUILD
+++ /dev/null
@@ -1,41 +0,0 @@
-# Contributor: Fabio Ribeiro <fabiorphp@gmail.com>
-# Maintainer: Fabio Ribeiro <fabiorphp@gmail.com>
-pkgname=php8-pecl-stats
-_extname=stats
-pkgver=2.0.4
-pkgrel=0
-pkgdesc="PHP 8 extension that provides few dozens routines for statistical computation."
-url="https://pecl.php.net/package/stats"
-arch="all !s390x" # too many tests fails on s390x
-license="PHP-3.01"
-depends="php8-common"
-makedepends="php8-dev"
-_commit="fac78cf926bb00c9974379c7131c58b7545e5b15"
-source="php-pecl-$_extname-$_commit.tar.gz::https://github.com/php/pecl-math-stats/archive/$_commit.tar.gz"
-builddir="$srcdir"/pecl-math-stats-$_commit
-#source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-#builddir="$srcdir"/$_pkgreal-$pkgver
-
-build() {
- phpize8
- ./configure --prefix=/usr --with-php-config=php-config8
- make
-}
-
-check() {
- php8 -dextension=modules/$_extname.so --ri $_extname
- case "$CARCH" in
- # Remove test fail https://bugs.php.net/bug.php?id=76163
- aarch64 | ppc64le) rm tests/stats_stat_correlation.phpt
- esac
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php8/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/60_$_extname.ini
-}
-
-sha512sums="0f359761512aa3c11bad1aa4c812e9a6a35d8e659b9aab4a38e5218dab5d7a33ebe349d9a6f25c9bfa361989281c68988f22988d3d4a357a610700c99897881c php-pecl-stats-fac78cf926bb00c9974379c7131c58b7545e5b15.tar.gz"
diff --git a/testing/php8-pecl-varnish/APKBUILD b/testing/php8-pecl-varnish/APKBUILD
deleted file mode 100644
index cec0153f2d7..00000000000
--- a/testing/php8-pecl-varnish/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Contributor: Andy Postnikov <apostnikov@gmail.com>
-# Maintainer: Andy Postnikov <apostnikov@gmail.com>
-pkgname=php8-pecl-varnish
-_extname=varnish
-pkgver=1.2.6
-pkgrel=1
-pkgdesc="PHP 8 extension: makes it possible to interact with a running varnish instance through TCP socket or shared memory."
-url="https://pecl.php.net/package/varnish"
-arch="all"
-license="BSD-3-Clause"
-depends="php8-common"
-makedepends="php8-dev varnish-dev"
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir/$_extname-$pkgver"
-provides="php7-varnish=$pkgver-r$pkgrel" # for backward compatibility
-replaces="php7-varnish" # for backward compatibility
-
-build() {
- phpize8
- ./configure --prefix=/usr --with-php-config=php-config8
- make
-}
-
-check() {
- php8 -dextension=modules/$_extname.so --ri $_extname
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php8/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/$_extname.ini
-}
-
-sha512sums="d17e285a134d2541ddea2bfc8627bc4926b3dbeeee1e9c729cd49c17608030764435662148b0dc43dc0eb1eab5d5dc8fd88c86aca40178afaf1ec85fa3e63aae php-pecl-varnish-1.2.6.tgz"
diff --git a/testing/php8-pecl-xlswriter/APKBUILD b/testing/php8-pecl-xlswriter/APKBUILD
deleted file mode 100644
index de72503a93b..00000000000
--- a/testing/php8-pecl-xlswriter/APKBUILD
+++ /dev/null
@@ -1,38 +0,0 @@
-# Contributor: viest <dev@service.viest.me>
-# Maintainer: viest <dev@service.viest.me>
-pkgname=php8-pecl-xlswriter
-_extname=xlswriter
-pkgver=1.5.2
-pkgrel=0
-pkgdesc="PHP 8.0 extension for creating and reader XLSX files - PECL"
-url="https://pecl.php.net/package/xlswriter"
-arch="all"
-license="BSD-2-Clause"
-depends="php8-common"
-makedepends="php8-dev zlib-dev"
-source="php-pecl-$_extname-$pkgver.tar.gz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-builddir="$srcdir"/$_extname-$pkgver
-
-build() {
- phpize8
- ./configure \
- --enable-reader \
- --prefix=/usr \
- --with-php-config=/usr/bin/php-config8
- make
-}
-
-check() {
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php8/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/$_extname.ini
-}
-
-sha512sums="
-cd218341c8247fff9823056f197dd0d5273a14c4ff66e0ebda4a77d5a7458389cd3eaf11ad9664732fb2636f57f948848cf5cb31daa35f97d9650db1d010e73d php-pecl-xlswriter-1.5.2.tar.gz
-"
diff --git a/testing/php8-pecl-xmlrpc/APKBUILD b/testing/php8-pecl-xmlrpc/APKBUILD
deleted file mode 100644
index d60697ece26..00000000000
--- a/testing/php8-pecl-xmlrpc/APKBUILD
+++ /dev/null
@@ -1,39 +0,0 @@
-# Maintainer: Andy Postnikov <apostnikov@gmail.com>
-pkgname=php8-pecl-xmlrpc
-_extname=xmlrpc
-pkgver=1.0.0_rc3
-_pkgver=${pkgver/_rc/RC}
-pkgrel=0
-pkgdesc="PHP 8 extension to write XML-RPC servers and clients - PECL"
-url="https://pecl.php.net/package/xmlrpc"
-arch="all"
-license="PHP-3.01"
-depends="php8-xml"
-makedepends="php8-dev libxml2-dev"
-source="php-pecl-$_extname-$pkgver.tar.gz::https://pecl.php.net/get/$_extname-$_pkgver.tgz"
-builddir="$srcdir"/$_extname-$_pkgver
-
-build() {
- phpize8
- ./configure --prefix=/usr --with-php-config=/usr/bin/php-config8
- make
-}
-
-check() {
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff \
- PHP_TEST_SHARED_EXTENSIONS=" \
- -d extension=/usr/lib/php8/modules/xml.so \
- -d extension=modules/$_extname.so"
- php8 -d extension=modules/$_extname.so --ri $_extname
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php8/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/$_extname.ini
-}
-
-sha512sums="
-aa8e24d5a732b175adb9870357991d48ead046faed89e579eb63afe06c7ef20af9de29e2d70e71e54e5a15ee37265f69a7d52b39ef2465ced93ba818c1f7e9c1 php-pecl-xmlrpc-1.0.0_rc3.tar.gz
-"
diff --git a/testing/php8-pecl-zmq/APKBUILD b/testing/php8-pecl-zmq/APKBUILD
deleted file mode 100644
index 66688cc5a4e..00000000000
--- a/testing/php8-pecl-zmq/APKBUILD
+++ /dev/null
@@ -1,38 +0,0 @@
-# Contributor: Fabio Ribeiro <fabiorphp@gmail.com>
-# Maintainer: Fabio Ribeiro <fabiorphp@gmail.com>
-pkgname=php8-pecl-zmq
-_extname=zmq
-pkgver=1.1.4
-pkgrel=0
-pkgdesc="PHP 8 extension for ZeroMQ - PECL"
-url="https://pecl.php.net/package/zmq"
-arch="all"
-license="PHP-3.01"
-depends="php8-common"
-makedepends="php8-dev zeromq-dev"
-_commit=43464c42a6a47efdf8b7cab03c62f1622fb5d3c6
-source="php-pecl-$_extname-$_commit.tar.gz::https://github.com/zeromq/php-zmq/archive/$_commit.tar.gz"
-builddir="$srcdir/php-$_extname-$_commit"
-#source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
-#builddir="$srcdir/$_extname-$pkgver"
-
-build() {
- phpize8
- ./configure --prefix=/usr --with-php-config=php-config8
- make
-}
-
-check() {
- php8 -dextension=modules/$_extname.so --ri $_extname
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
-
- local _confdir="$pkgdir"/etc/php8/conf.d
- mkdir -p $_confdir
- echo "extension=$_extname" > $_confdir/50_$_extname.ini
-}
-
-sha512sums="ece4f52b6717749d56280e2e988a5d291fe967c40489f1e7b7ac0a17688a5a92b2a9fa720978dbad0969830034371ea54e937dd7cce7a6d983162977afd290c7 php-pecl-zmq-43464c42a6a47efdf8b7cab03c62f1622fb5d3c6.tar.gz"
diff --git a/testing/php8-phalcon/APKBUILD b/testing/php8-phalcon/APKBUILD
deleted file mode 100644
index 4f3e66d6782..00000000000
--- a/testing/php8-phalcon/APKBUILD
+++ /dev/null
@@ -1,47 +0,0 @@
-# Contributor: Valery Kartel <valery.kartel@gmail.com>
-# Maintainer: Andy Postnikov <apostnikov@gmail.com>
-pkgname=php8-phalcon
-_extname=phalcon
-pkgver=5.0.0_beta3
-_pkgver=${pkgver/_beta/beta}
-pkgrel=0
-pkgdesc="High performance, full-stack PHP 8.0 framework delivered as a C extension"
-url="https://phalcon.io/"
-arch="all"
-license="BSD-3-Clause"
-depends="
- php8-curl
- php8-fileinfo
- php8-gettext
- php8-mbstring
- php8-openssl
- php8-pdo
- php8-session
- php8-pecl-psr
- "
-makedepends="php8-dev"
-source="php-$_extname-$_pkgver.tgz::https://pecl.php.net/get/$_extname-$_pkgver.tgz"
-builddir="$srcdir/$_extname-$_pkgver"
-
-build() {
- phpize8
- ./configure --prefix=/usr --with-php-config=/usr/bin/php-config8
- make
-}
-
-check() {
- # no tests provided
- php8 -d extension=modules/$_extname.so --ri $_extname
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
-
- local _confdir="$pkgdir"/etc/php8/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/$_extname.ini
-}
-
-sha512sums="
-8a2168ba2a4d0a95a44c91900483930f71a99b9f80ee9ae1b77d7b466af3d55a40e9f39c122964195156f89c374a05b04424112585337b0ec32767db39e66974 php-phalcon-5.0.0beta3.tgz
-"
diff --git a/testing/php8-snappy/APKBUILD b/testing/php8-snappy/APKBUILD
deleted file mode 100644
index 75b549a3f4f..00000000000
--- a/testing/php8-snappy/APKBUILD
+++ /dev/null
@@ -1,41 +0,0 @@
-# Contributor: Andy Postnikov <apostnikov@gmail.com>
-# Maintainer: Andy Postnikov <apostnikov@gmail.com>
-pkgname=php8-snappy
-_extname=snappy
-pkgver=0.2.1
-pkgrel=0
-pkgdesc="Snappy extension for PHP 8"
-url="https://github.com/kjdev/php-ext-snappy"
-arch="all"
-license="PHP-3.01"
-depends="php8-common"
-makedepends="php8-dev php8-pecl-apcu snappy-dev"
-source="php-$_extname-$pkgver.tar.gz::https://github.com/kjdev/php-ext-snappy/archive/$pkgver.tar.gz"
-builddir="$srcdir/php-ext-snappy-$pkgver"
-
-build() {
- phpize8
- ./configure \
- --prefix=/usr \
- --with-php-config=php-config8 \
- --with-snappy-includedir
- make
-}
-
-check() {
- local _modules=/usr/lib/php8/modules
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test \
- SKIP_ONLINE_TESTS=1 PHP_TEST_SHARED_EXTENSIONS=" \
- -d extension=$_modules/apcu.so \
- -d extension=modules/$_extname.so" TESTS=--show-diff
- php8 -d extension=modules/$_extname.so --ri $_extname
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir"/ install
- local confdir="$pkgdir"/etc/php8/conf.d
- install -d $confdir
- echo "extension=$_extname" > $confdir/50_$_extname.ini
-}
-
-sha512sums="51cdfe7c5d020cb954cbf555038aca8398867584a587eb838f07089612d3978a182d0bc04015608a2aaf71bf9a5b5896e5d92b56f3b2d5fe9e1116f9509acb1e php-snappy-0.2.1.tar.gz"
diff --git a/testing/php8-spx/APKBUILD b/testing/php8-spx/APKBUILD
deleted file mode 100644
index 70be793291b..00000000000
--- a/testing/php8-spx/APKBUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-# Maintainer: Andy Postnikov <apostnikov@gmail.com>
-pkgname=php8-spx
-_extname=spx
-pkgver=0.4.10
-pkgrel=0
-pkgdesc="A simple & straight-to-the-point PHP 8 profiling extension with its built-in web UI"
-url="https://github.com/NoiseByNorthwest/php-spx"
-arch="x86_64"
-license="GPL-3.0-or-later"
-depends="php8-common"
-makedepends="php8-dev zlib-dev"
-source="php-$_extname-$pkgver.tar.gz::https://github.com/NoiseByNorthwest/php-spx/archive/v$pkgver.tar.gz"
-builddir="$srcdir/php-$_extname-$pkgver"
-
-build() {
- phpize8
- ./configure --prefix=/usr --with-php-config=php-config8
- make
-}
-
-check() {
- make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
- php8 -d extension=modules/$_extname.so --ri $_extname
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php8/conf.d
- install -d $_confdir
- echo "extension=$_extname" > $_confdir/$_extname.ini
-}
-
-sha512sums="f89effb851bc9f63e5846b4f8ab998027dfaf214b9111e185fa49dd36377c4ef3d8c98de2f51a7fffca51de7033143f77c5db22a50eb252e1b65d5ebf77a8b16 php-spx-0.4.10.tar.gz"
diff --git a/testing/php81-pecl-amqp/APKBUILD b/testing/php81-pecl-amqp/APKBUILD
new file mode 100644
index 00000000000..f53975c4e62
--- /dev/null
+++ b/testing/php81-pecl-amqp/APKBUILD
@@ -0,0 +1,40 @@
+# Contributor: Fabio Ribeiro <fabiorphp@gmail.com>
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php81-pecl-amqp
+_extname=amqp
+pkgver=2.1.2
+pkgrel=0
+pkgdesc="PHP 8.1 extension to communicate with any AMQP spec 0-9-1 compatible server - PECL"
+url="https://pecl.php.net/package/amqp"
+arch="all"
+license="PHP-3.01"
+_phpv=81
+_php=php$_phpv
+depends="$_php-common"
+makedepends="$_php-dev rabbitmq-c-dev"
+source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
+builddir="$srcdir/$_extname-$pkgver"
+
+install_if="php-$_extname php$_phpv"
+
+build() {
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=php-config$_phpv
+ make
+}
+
+check() {
+ # Tests require running AMQP server, so basic check
+ $_php -d extension="$builddir"/modules/$_extname.so --ri $_extname
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+ local _confdir="$pkgdir"/etc/$_php/conf.d
+ mkdir -p $_confdir
+ echo "extension=$_extname" > $_confdir/40_$_extname.ini
+}
+
+sha512sums="
+27ccbf27e04d4008dfcabcf576e44ee6bfa88e6cf0161fe4dccc1af594d2d8ec01e7c1b16e39f6f1ce2fddbc29ccc19113f2f56182d78cf727b4bb2767fefb54 php-pecl-amqp-2.1.2.tgz
+"
diff --git a/testing/php81-pecl-apcu/APKBUILD b/testing/php81-pecl-apcu/APKBUILD
new file mode 100644
index 00000000000..f47ccc929fb
--- /dev/null
+++ b/testing/php81-pecl-apcu/APKBUILD
@@ -0,0 +1,49 @@
+# Contributor: Carlo Landmeter <clandmeter@alpinelinux.org>
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php81-pecl-apcu
+_extname=apcu
+pkgver=5.1.23
+pkgrel=0
+pkgdesc="PHP 8.1 extension APC User Cache - PECL"
+url="https://pecl.php.net/package/apcu"
+arch="all"
+license="PHP-3.01"
+_phpv=81
+_php=php$_phpv
+depends="$_php-common"
+makedepends="$_php-dev"
+checkdepends="$_php-pcntl"
+source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
+builddir="$srcdir/$_extname-$pkgver"
+provides="$_php-apcu=$pkgver-r$pkgrel" # for backward compatibility
+replaces="$_php-apcu" # for backward compatibility
+
+install_if="php-$_extname php$_phpv"
+
+build() {
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=php-config$_phpv
+ make
+}
+
+check() {
+ local _modules=/usr/lib/$_php/modules
+ make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test \
+ PHP_TEST_SHARED_EXTENSIONS=" \
+ -d extension=$_modules/pcntl.so \
+ -d extension=modules/$_extname.so" TESTS=--show-diff
+ $_php -d extension="$builddir"/modules/$_extname.so --ri $_extname
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+ install -D -m644 apc.php "$pkgdir"/usr/share/$_php/apcu/apc.php
+
+ local _confdir="$pkgdir"/etc/$_php/conf.d
+ install -d $_confdir
+ echo "extension=$_extname" > $_confdir/$_extname.ini
+}
+
+sha512sums="
+89e9f10f5d8d1a9503132e80140680be2a10d96f957f69b2f77cc1c496d15cc26dfe4c0368ebe46c72c68d1b4a794d3ddc95942b02d3ba5e8c971b09969058d8 php-pecl-apcu-5.1.23.tgz
+"
diff --git a/testing/php81-pecl-ast/APKBUILD b/testing/php81-pecl-ast/APKBUILD
new file mode 100644
index 00000000000..d2803ecdf3e
--- /dev/null
+++ b/testing/php81-pecl-ast/APKBUILD
@@ -0,0 +1,38 @@
+# Contributor: Andy Blyler <andy@blyler.cc>
+# Contributor: Fabio Ribeiro <fabiorphp@gmail.com>
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php81-pecl-ast
+_extname=ast
+pkgver=1.1.1
+pkgrel=0
+pkgdesc="PHP extension exposing PHP 8.1 abstract syntax tree - PECL"
+url="https://pecl.php.net/package/ast"
+arch="all"
+license="BSD-3-Clause"
+_phpv=81
+_php=php$_phpv
+depends="$_php-common"
+makedepends="$_php-dev"
+source="php-pecl-$_extname-$pkgver.tar.gz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
+builddir="$srcdir"/$_extname-$pkgver
+
+build() {
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=/usr/bin/php-config$_phpv
+ make
+}
+
+check() {
+ make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+ local _confdir="$pkgdir"/etc/$_php/conf.d
+ install -d $_confdir
+ echo "extension=$_extname" > $_confdir/$_extname.ini
+}
+
+sha512sums="
+a5ae79b4ad4976f2447b94ebc5d3e2d6044ade36c73695ab7f3324963c175a3288d75361e930133232191e8141009d6c0ca8cabfafa143c5dd2282102834eeab php-pecl-ast-1.1.1.tar.gz
+"
diff --git a/testing/php81-pecl-brotli/APKBUILD b/testing/php81-pecl-brotli/APKBUILD
new file mode 100644
index 00000000000..9b504fa6ae3
--- /dev/null
+++ b/testing/php81-pecl-brotli/APKBUILD
@@ -0,0 +1,50 @@
+# Contributor: TBK <alpine@jjtc.eu>
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php81-pecl-brotli
+_extname=brotli
+pkgver=0.15.0
+pkgrel=0
+pkgdesc="Brotli Extension for PHP 8.1"
+url="https://github.com/kjdev/php-ext-brotli"
+arch="all"
+license="MIT"
+_phpv=81
+_php=php$_phpv
+depends="$_php-common"
+makedepends="$_php-dev $_php-pecl-apcu brotli-dev"
+checkdepends="$_php-cgi"
+source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
+builddir="$srcdir/$_extname-$pkgver"
+
+provides="$_php-brotli=$pkgver-r$pkgrel" # for backward compatibility
+replaces="$_php-brotli" # for backward compatibility
+install_if="php-$_extname $_php"
+
+build() {
+ phpize$_phpv
+ ./configure \
+ --prefix=/usr \
+ --with-php-config=php-config$_phpv \
+ --with-libbrotli # Use system lib
+ make
+}
+
+check() {
+ local _modules=/usr/lib/$_php/modules
+ make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 SKIP_ONLINE_TESTS=1 test \
+ TEST_PHP_CGI_EXECUTABLE=/usr/bin/php-cgi$_phpv \
+ PHP_TEST_SHARED_EXTENSIONS=" \
+ -d extension=$_modules/apcu.so \
+ -d extension=modules/$_extname.so" TESTS=--show-diff
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+ local _confdir="$pkgdir"/etc/$_php/conf.d
+ install -d $_confdir
+ echo "extension=$_extname" > $_confdir/50_$_extname.ini
+}
+
+sha512sums="
+0e3be424eace7ed50f67dac780fa55c0fa6da1265676cea12588d8713ec6636936379a543bde48f7b30054aeda038200a3f650259e2da589f642447125b32e6a php-pecl-brotli-0.15.0.tgz
+"
diff --git a/testing/php81-pecl-couchbase/APKBUILD b/testing/php81-pecl-couchbase/APKBUILD
new file mode 100644
index 00000000000..6ef77aebff0
--- /dev/null
+++ b/testing/php81-pecl-couchbase/APKBUILD
@@ -0,0 +1,39 @@
+# Contributor: Nathan Johnson <nathan@nathanjohnson.info>
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php81-pecl-couchbase
+_extname=couchbase
+pkgver=4.2.0
+pkgrel=0
+pkgdesc="PHP 8.1 extension for Couchbase - PECL"
+url="https://pecl.php.net/package/couchbase"
+arch="all !riscv64 !ppc64le !s390x" # ftbfs
+license="Apache-2.0"
+_phpv=81
+_php=php$_phpv
+depends="$_php-pecl-igbinary"
+makedepends="$_php-dev openssl-dev>3 linux-headers cmake"
+source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
+builddir="$srcdir/$_extname-$pkgver"
+
+build() {
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=php-config$_phpv
+ make
+}
+
+check() {
+ # no tests shipped via PECL
+ $_php -d extension="$builddir"/modules/$_extname.so --ri $_extname
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+
+ local _confdir="$pkgdir"/etc/$_php/conf.d
+ mkdir -p $_confdir
+ echo "extension=$_extname" > $_confdir/$_extname.ini
+}
+
+sha512sums="
+4e5f26d5181aad5df3162b172bda9776b2c564d5f3c0dd8aaa087091eaf3c3ebcff9044e0ccb122f34d55265f94923eb0fb37efe6a7e66c752e47ead6bde23b3 php-pecl-couchbase-4.2.0.tgz
+"
diff --git a/testing/php81-pecl-csv/APKBUILD b/testing/php81-pecl-csv/APKBUILD
new file mode 100644
index 00000000000..5fe7a6e8b7e
--- /dev/null
+++ b/testing/php81-pecl-csv/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: Andy Postnikov <apostnikov@gmail.com>
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php81-pecl-csv
+_extname=CSV
+pkgver=0.4.2
+pkgrel=0
+pkgdesc="CSV PHP 8.1 extension - PECL"
+url="https://pecl.php.net/package/CSV"
+arch="all"
+license="PHP-3.01"
+depends="php81-common"
+makedepends="php81-dev"
+source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
+builddir="$srcdir"/$_extname-$pkgver
+
+build() {
+ phpize81
+ ./configure --prefix=/usr --with-php-config=php-config81
+ make
+}
+
+check() {
+ make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
+ php81 -dextension=modules/csv.so --ri csv
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+ local _confdir="$pkgdir"/etc/php81/conf.d
+ install -d $_confdir
+ echo "extension=csv" > $_confdir/csv.ini
+}
+
+sha512sums="
+43213f2df4b074631b1dcb175b5103d652d06708d1b198e3775ad9a0ac588baa27963d5ff218e67b663f8afc4dbd40574933373af44219a74278905af942d5bb php-pecl-CSV-0.4.2.tgz
+"
diff --git a/testing/php81-pecl-decimal/APKBUILD b/testing/php81-pecl-decimal/APKBUILD
index c531705b6b0..83f06f702cd 100644
--- a/testing/php81-pecl-decimal/APKBUILD
+++ b/testing/php81-pecl-decimal/APKBUILD
@@ -1,21 +1,24 @@
# Maintainer: Andy Postnikov <apostnikov@gmail.com>
pkgname=php81-pecl-decimal
_extname=decimal
-pkgver=1.4.0
-pkgrel=0
+pkgver=1.5.0
+pkgrel=1
pkgdesc="Correctly-rounded arbitrary precision decimal floating-point arithmetic in PHP 8.1 - PECL"
url="https://pecl.php.net/package/decimal"
arch="all"
license="MIT"
-depends="php81-common"
-makedepends="php81-dev mpdecimal-dev"
-source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz
- fix-test.patch"
+_phpv=81
+_php=php$_phpv
+depends="$_php-common"
+makedepends="$_php-dev mpdecimal-dev"
+source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
builddir="$srcdir/$_extname-$pkgver"
+install_if="php-$_extname php$_phpv"
+
build() {
- phpize81
- ./configure --prefix=/usr --with-php-config=php-config81
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=php-config$_phpv
make
}
@@ -25,12 +28,11 @@ check() {
package() {
make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php81/conf.d
+ local _confdir="$pkgdir"/etc/$_php/conf.d
install -d $_confdir
echo "extension=$_extname" > $_confdir/$_extname.ini
}
sha512sums="
-39c7044a6e2f31cd2ca006fb2fe27b547ea717312a7ad1aee7a656aa60d99cc1198e6e9dcf0b90157f3514e110645f6b0fd47ccae0411d6c837dea3b6de1c521 php-pecl-decimal-1.4.0.tgz
-7dc3ba2b75238f14cabe0125a25903c0a48ca5aed823156fe15250a012bab7684174af8138b418431e8c818eb5de519db208c6a90e0238da12046cbf29296e2d fix-test.patch
+06806cb9c5ebae3abed1d41d021be63bb6ab44878e3034c4661a13d22ffab12b9804bc9196c10bdc9416d2559719b31a7fef73e3948c1ea94d3447c6a4b6c086 php-pecl-decimal-1.5.0.tgz
"
diff --git a/testing/php81-pecl-decimal/fix-test.patch b/testing/php81-pecl-decimal/fix-test.patch
deleted file mode 100644
index ce80d8b58b9..00000000000
--- a/testing/php81-pecl-decimal/fix-test.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/tests/php8/methods/__construct.phpt
-+++ b/tests/php8/methods/__construct.phpt
-@@ -136,6 +136,8 @@
- C Decimal\Decimal::__construct() expected parameter 1 to be a string, integer, or decimal, float given
- D Decimal\Decimal::__construct() expected parameter 1 to be a string, integer, or decimal, null given
- E Decimal\Decimal::__construct(): Argument #2 ($precision) must be of type int, string given
-+
-+Deprecated: Decimal\Decimal::__construct(): Passing null to parameter #2 ($precision) of type int is deprecated in %s on line %d
- F Decimal precision out of range
- G Decimal precision out of range
- H Decimal precision out of range
diff --git a/testing/php81-pecl-ds/APKBUILD b/testing/php81-pecl-ds/APKBUILD
new file mode 100644
index 00000000000..a86a8562309
--- /dev/null
+++ b/testing/php81-pecl-ds/APKBUILD
@@ -0,0 +1,52 @@
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php81-pecl-ds
+_extname=ds
+pkgver=1.5.0
+pkgrel=0
+pkgdesc="PHP 8.1 extension for efficient Data Structures - PECL"
+url="https://pecl.php.net/package/ds"
+arch="all"
+license="MIT"
+_phpv=81
+_php=php$_phpv
+depends="$_php-common"
+makedepends="$_php-dev"
+checkdepends="composer
+ $_php-curl $_php-iconv $_php-mbstring $_php-openssl $_php-phar
+ $_php-dom $_php-opcache $_php-tokenizer $_php-xml $_php-xmlwriter
+ "
+source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz
+ php-pecl-$_extname-$pkgver-composer.json::https://github.com/php-ds/ext-ds/raw/v$pkgver/composer.json
+ php-pecl-$_extname-$pkgver-phpunit.xml::https://github.com/php-ds/ext-ds/raw/v$pkgver/phpunit.xml
+ "
+builddir="$srcdir/$_extname-$pkgver"
+
+build() {
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=php-config$_phpv
+ make
+}
+
+check() {
+ local _testphp="$_php -d extension=$builddir/modules/$_extname.so"
+ $_testphp --ri $_extname
+ mkdir -p tests
+ cd tests
+ cp "$srcdir"/php-pecl-$_extname-$pkgver-composer.json composer.json
+ cp "$srcdir"/php-pecl-$_extname-$pkgver-phpunit.xml phpunit.xml
+ $_testphp /usr/bin/composer.phar install --prefer-dist --no-interaction
+ $_testphp vendor/bin/phpunit
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+ local _confdir="$pkgdir"/etc/$_php/conf.d
+ mkdir -p $_confdir
+ echo "extension=$_extname" > $_confdir/$_extname.ini
+}
+
+sha512sums="
+12c8d617c0a41df68c157a3f9304763464ab2d8d1f8ada668de53a879f78dabd08c22caa35cd893ee64a267c7bda578d6202846c3dfc237916ee326ab6f02747 php-pecl-ds-1.5.0.tgz
+eb7f2071b6b99586ecaec33f5338d730835bd152d10a56b686a092b320035506d60c0752b23e8793205822a2d1bb559f7d6fedb0de9666404dcd68818a520d17 php-pecl-ds-1.5.0-composer.json
+32fed119d6fbe0541468987cd73c6104f848e2c1616cd71b068c6d0d480a476edff24f031153d6695c4b3c0d63352c652cf61d902031e1d761a120ad8525afd0 php-pecl-ds-1.5.0-phpunit.xml
+"
diff --git a/testing/php81-pecl-event/APKBUILD b/testing/php81-pecl-event/APKBUILD
new file mode 100644
index 00000000000..a68d4f81195
--- /dev/null
+++ b/testing/php81-pecl-event/APKBUILD
@@ -0,0 +1,43 @@
+# Contributor: Andy Postnikov <apostnikov@gmail.com>
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php81-pecl-event
+_php=81
+_extname=event
+pkgver=3.1.3
+pkgrel=0
+pkgdesc="PHP 8.1 extension that provides interface to libevent library - PECL"
+url="https://pecl.php.net/package/event"
+arch="all"
+license="PHP-3.01"
+depends="php$_php-sockets"
+makedepends="php$_php-dev libevent-dev openssl-dev>3"
+source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
+builddir="$srcdir/$_extname-$pkgver"
+
+build() {
+ phpize$_php
+ ./configure --prefix=/usr --with-php-config=php-config$_php
+ make
+}
+
+check() {
+ local _ext="-d extension=modules/$_extname.so"
+ php$_php $_ext --ri $_extname
+ # Tests require sockets extension which is not bundled
+ make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 SKIP_ONLINE_TESTS=1 test \
+ PHP_TEST_SHARED_EXTENSIONS=" \
+ -d extension=/usr/lib/php$_php/modules/sockets.so \
+ $_ext" \
+ TESTS="--show-diff tests"
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+ local _confdir="$pkgdir"/etc/php$_php/conf.d
+ install -d $_confdir
+ echo "extension=$_extname" > $_confdir/$_extname.ini
+}
+
+sha512sums="
+d234ccaa113f6138c137adabcedf39744bf07a47e4e4f59d868a8c6e687a62120e6a0ae7760dcc494587351cca196a5810898bea426ef47ca8c999dad2bf33eb php-pecl-event-3.1.3.tgz
+"
diff --git a/testing/php81-pecl-grpc/APKBUILD b/testing/php81-pecl-grpc/APKBUILD
index f48c1e7a390..f7f095dd533 100644
--- a/testing/php81-pecl-grpc/APKBUILD
+++ b/testing/php81-pecl-grpc/APKBUILD
@@ -1,35 +1,37 @@
# Maintainer: Andy Postnikov <apostnikov@gmail.com>
pkgname=php81-pecl-grpc
_extname=grpc
-pkgver=1.46.3
+pkgver=1.62.0
pkgrel=0
pkgdesc="PHP 8.1 extension provide a concrete implementation of the gRPC protocol, layered over HTTP/2."
url="https://pecl.php.net/package/grpc"
arch="all !s390x !ppc64le !riscv64" # build failures
license="Apache-2.0"
-depends="php81-common"
-makedepends="php81-dev openssl-dev linux-headers"
+_phpv=81
+_php=php$_phpv
+depends="$_php-common"
+makedepends="$_php-dev openssl-dev>3 linux-headers"
source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
builddir="$srcdir"/$_extname-$pkgver
build() {
- phpize81
- ./configure --prefix=/usr --with-php-config=php-config81
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=php-config$_phpv
make
}
check() {
# Test suite is not a part of pecl release.
- php81 -d extension=modules/$_extname.so --ri $_extname
+ $_php -d extension=modules/$_extname.so --ri $_extname
}
package() {
make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php81/conf.d
+ local _confdir="$pkgdir"/etc/$_php/conf.d
install -d $_confdir
echo "extension=$_extname" > $_confdir/50_$_extname.ini
}
sha512sums="
-5b6c06b806df3132bf48b5bd032c794493b4e2a846d79d18f9f481a52e2792c397c4b367f4d9bbbe72aaa63747d05e845015239acfa8329346f077a65c216e38 php-pecl-grpc-1.46.3.tgz
+f6dc7ae7829bce9d2650afcaa1e609090bc59d9878a7922fbfc41ec56d8cfef6d3bc14560b9f02fa4fc150a2dd6e1b493671078a6a18c0bcec57325dbd3c4c64 php-pecl-grpc-1.62.0.tgz
"
diff --git a/testing/php81-pecl-igbinary/APKBUILD b/testing/php81-pecl-igbinary/APKBUILD
new file mode 100644
index 00000000000..5d2f77c8e6b
--- /dev/null
+++ b/testing/php81-pecl-igbinary/APKBUILD
@@ -0,0 +1,49 @@
+# Contributor: Andy Postnikov <apostnikov@gmail.com>
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+
+pkgname=php81-pecl-igbinary
+_extname=igbinary
+pkgver=3.2.15
+pkgrel=0
+pkgdesc="Igbinary is a drop in replacement for the standard PHP 8.1 serializer - PECL"
+url="https://pecl.php.net/package/igbinary"
+arch="all"
+license="BSD-3-Clause"
+_phpv=81
+_php=php$_phpv
+depends="$_php-common"
+makedepends="$_php-dev $_php-pecl-apcu"
+checkdepends="$_php-session" # sessions needs work https://github.com/igbinary/igbinary/issues/116
+source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
+builddir="$srcdir/$_extname-$pkgver"
+
+install_if="php-$_extname php$_phpv"
+
+build() {
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=php-config$_phpv
+ make
+}
+
+check() {
+ local _modules="/usr/lib/$_php/modules"
+ # Tests require extra extensions which are not bundled
+ make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test \
+ TESTS=--show-diff \
+ PHP_TEST_SHARED_EXTENSIONS=" \
+ -d extension=$_modules/apcu.so \
+ -d extension=$_modules/session.so \
+ -d extension=modules/$_extname.so"
+ $_php -d extension="$builddir"/modules/$_extname.so --ri $_extname
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+ local _confdir="$pkgdir"/etc/$_php/conf.d
+ install -d $_confdir
+ echo "extension=$_extname" > $_confdir/10_$_extname.ini
+}
+
+sha512sums="
+1901765d302624ec0e8356fde6feabb8406122357e8ba178af6e9863e78a30f779c711785b981b8871d6c59f17bccfafe1d257a05a449935013ad8b62f7121c5 php-pecl-igbinary-3.2.15.tgz
+"
diff --git a/testing/php81-pecl-imagick/APKBUILD b/testing/php81-pecl-imagick/APKBUILD
new file mode 100644
index 00000000000..295d679015b
--- /dev/null
+++ b/testing/php81-pecl-imagick/APKBUILD
@@ -0,0 +1,48 @@
+# Contributor: Valery Kartel <valery.kartel@gmail.com>
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php81-pecl-imagick
+_extname=imagick
+pkgver=3.7.0
+pkgrel=5
+pkgdesc="PHP 8.1 extension provides a wrapper to the ImageMagick library - PECL"
+url="https://pecl.php.net/package/imagick"
+arch="all !x86" # https://gitlab.alpinelinux.org/alpine/aports/-/issues/12537
+license="PHP-3.01"
+depends="php81-common imagemagick"
+checkdepends="ghostscript-fonts
+ imagemagick-jpeg
+ imagemagick-svg
+ "
+makedepends="php81-dev imagemagick-dev"
+subpackages="$pkgname-dev"
+source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
+builddir="$srcdir/$_extname-$pkgver"
+
+install_if="php-$_extname php$_phpv"
+
+build() {
+ phpize81
+ ./configure --prefix=/usr --with-php-config=php-config81
+ make
+}
+
+check() {
+ php81 -dextension=modules/$_extname.so --ri $_extname
+
+ rm -f tests/316_Imagick_getImageKurtosis.phpt
+ # see https://gitlab.alpinelinux.org/alpine/aports/-/issues/12537
+ [ "$CARCH" = x86 ] && rm -f tests/166_Imagick_waveImage_basic.phpt
+ make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+
+ local _confdir="$pkgdir"/etc/php81/conf.d
+ mkdir -p $_confdir
+ echo "extension=$_extname" > $_confdir/$_extname.ini
+}
+
+sha512sums="
+c84408e4e4a0c46d979240e06d58d264c6bb21f3b95e3d434c8a21cd808f6c495fd453ef9c07b5c44dac81c6f205b6697f8ecaf1a65a86ce4e9052328a389ebe php-pecl-imagick-3.7.0.tgz
+"
diff --git a/testing/php81-pecl-immutable_cache/APKBUILD b/testing/php81-pecl-immutable_cache/APKBUILD
new file mode 100644
index 00000000000..f884055b782
--- /dev/null
+++ b/testing/php81-pecl-immutable_cache/APKBUILD
@@ -0,0 +1,39 @@
+# Contributor: Andy Postnikov <apostnikov@gmail.com>
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+
+pkgname=php81-pecl-immutable_cache
+_extname=immutable_cache
+pkgver=6.1.0
+pkgrel=0
+pkgdesc="PHP 8.1 extension shared memory cache of immutable values - PECL"
+url="https://pecl.php.net/package/immutable_cache"
+arch="all"
+license="PHP-3.01"
+_phpv=81
+_php=php$_phpv
+depends="$_php-common"
+makedepends="$_php-dev"
+source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
+builddir="$srcdir"/$_extname-$pkgver
+
+build() {
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=php-config$_phpv
+ make
+}
+
+check() {
+ make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
+ $_php -dextension=modules/$_extname.so --ri $_extname
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+ local _confdir="$pkgdir"/etc/$_php/conf.d
+ install -d $_confdir
+ echo "extension=$_extname" > $_confdir/$_extname.ini
+}
+
+sha512sums="
+7e3c8cc0bd5f7bbb94adf676d598cc0258d2f105cb56aeb355cb94c955d10d74520f6444f8123d9a7c579663e6e3510f0260b3450fa83d283a30972cce119aff php-pecl-immutable_cache-6.1.0.tgz
+"
diff --git a/testing/php81-pecl-jsmin/APKBUILD b/testing/php81-pecl-jsmin/APKBUILD
new file mode 100644
index 00000000000..060afad227b
--- /dev/null
+++ b/testing/php81-pecl-jsmin/APKBUILD
@@ -0,0 +1,51 @@
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php81-pecl-jsmin
+_extname=jsmin
+pkgver=3.0.0
+pkgrel=0
+_jqver=2.1.3
+pkgdesc="PHP 8.1 extension for minifying JavaScript - PECL"
+url="https://pecl.php.net/package/jsmin"
+arch="all !ppc64le" # test fails on builder
+license="PHP-3.01"
+_phpv=81
+_php=php$_phpv
+depends="$_php-common"
+makedepends="$_php-dev"
+source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz
+ jquery-$_jqver.js::https://github.com/sqmk/pecl-jsmin/raw/v$pkgver/tests/data/jquery-$_jqver.js
+ fix-php8.patch
+ fix-tests.patch
+ "
+builddir="$srcdir/$_extname-$pkgver"
+
+build() {
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=/usr/bin/php-config$_phpv
+ make
+}
+
+check() {
+ mkdir -p tests/data
+ cp "$srcdir"/jquery-$_jqver.js tests/data/
+
+ case "$CARCH" in
+ aarch64|x86_64) rm tests/call-multiple-times.phpt ;;
+ esac
+ $_php -dextension=modules/$_extname.so --ri $_extname
+ make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS='--show-diff '
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+ local _confdir="$pkgdir"/etc/$_php/conf.d
+ install -d $_confdir
+ echo "extension=$_extname" > $_confdir/$_extname.ini
+}
+
+sha512sums="
+a465ae024a49bb8ac20463efc6b2546021806c2c43053f42c7ebfea4924b9b647b6e7c0c673102e12ecd8b693666441dc07203edef216eee958fa62f73056ea6 php-pecl-jsmin-3.0.0.tgz
+b8eb1a740c63feaab8ac24d87f39f4cfe263694c972f4978b9f0e3092f912a722596fd094dd637d22f03816617e13210bf11fad9a545dbb0423dc821c827081e jquery-2.1.3.js
+72f4ea4aad457d1a557e05ff8457a689ea75419e414b0893c2bdf5d7216d70b7c26a4993e3c9fa97de3409d080b3cf2a5bd2f0c4b050854c02f08ac592da1f85 fix-php8.patch
+e44a2615d98d786e0188d3880b41f267dab2fa215fb17cd37b17f8cc499bee7dd9e4fe1def4707dbd6769fa40ba2dbf7895ba3544db427a7d851f69a515fa83c fix-tests.patch
+"
diff --git a/testing/php8-pecl-jsmin/fix-php8.patch b/testing/php81-pecl-jsmin/fix-php8.patch
index c8be3069563..c8be3069563 100644
--- a/testing/php8-pecl-jsmin/fix-php8.patch
+++ b/testing/php81-pecl-jsmin/fix-php8.patch
diff --git a/testing/php7-pecl-jsmin/fix-tests.patch b/testing/php81-pecl-jsmin/fix-tests.patch
index d7b9c636af6..d7b9c636af6 100644
--- a/testing/php7-pecl-jsmin/fix-tests.patch
+++ b/testing/php81-pecl-jsmin/fix-tests.patch
diff --git a/testing/php81-pecl-luasandbox/APKBUILD b/testing/php81-pecl-luasandbox/APKBUILD
new file mode 100644
index 00000000000..a259f496131
--- /dev/null
+++ b/testing/php81-pecl-luasandbox/APKBUILD
@@ -0,0 +1,41 @@
+# Contributor: Andy Postnikov <apostnikov@gmail.com>
+# Contributor: MPThLee <mpthlee@gmail.com>
+# Maintainer: MPThLee <mpthlee@gmail.com>
+
+pkgname=php81-pecl-luasandbox
+_extname=LuaSandbox
+pkgver=4.1.2
+pkgrel=0
+pkgdesc="LuaSandbox PHP 8.1 extension - PECL"
+url="https://pecl.php.net/package/LuaSandbox"
+arch="all"
+license="MIT"
+_phpv=81
+_php=php$_phpv
+_luaver="5.1"
+depends="$_php-common"
+makedepends="$_php-dev lua$_luaver-dev"
+source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
+builddir="$srcdir"/$_extname-$pkgver
+
+build() {
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=php-config$_phpv
+ make
+}
+
+check() {
+ make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
+ $_php -dextension=modules/luasandbox.so --ri luasandbox
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+ local _confdir="$pkgdir"/etc/$_php/conf.d
+ install -d $_confdir
+ echo "extension=luasandbox" > $_confdir/luasandbox.ini
+}
+
+sha512sums="
+c1ae280d4fdb97f0bb50b3fad464d9178494f54065be901f6b0a5de5bfe7742c6ef054c94cbcec77a1d153b07bbb88fa0ed6d07b0279df45bcd5d6457fdc470d php-pecl-LuaSandbox-4.1.2.tgz
+"
diff --git a/testing/php81-pecl-lzf/APKBUILD b/testing/php81-pecl-lzf/APKBUILD
new file mode 100644
index 00000000000..fa2c45cc863
--- /dev/null
+++ b/testing/php81-pecl-lzf/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: Fabio Ribeiro <fabiorphp@gmail.com>
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php81-pecl-lzf
+_pkgreal=LZF
+_extname=lzf
+pkgver=1.7.0
+pkgrel=0
+pkgdesc="PHP 8.1 extension handles LZF de/compression - PECL"
+url="https://pecl.php.net/package/LZF"
+arch="all"
+license="PHP-3.01"
+depends="php81-common"
+makedepends="php81-dev"
+source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_pkgreal-$pkgver.tgz"
+builddir="$srcdir"/$_pkgreal-$pkgver
+
+build() {
+ phpize81
+ ./configure --prefix=/usr --with-php-config=php-config81
+ make
+}
+
+check() {
+ make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir"/ install
+ local _confdir="$pkgdir"/etc/php81/conf.d
+ install -d $_confdir
+ echo "extension=$_extname" > $_confdir/50_$_pkgreal.ini
+}
+
+sha512sums="
+76a2bce7aa44f9aae40345f37c9294626d453879c7f98099ad6c31ae32abc638233934bf22ddd9bc0d4a6d285b25aa06dedc175ad5bb1544884a272e6b031ced php-pecl-lzf-1.7.0.tgz
+"
diff --git a/testing/php81-pecl-mailparse/APKBUILD b/testing/php81-pecl-mailparse/APKBUILD
new file mode 100644
index 00000000000..d977747a1bf
--- /dev/null
+++ b/testing/php81-pecl-mailparse/APKBUILD
@@ -0,0 +1,38 @@
+# Contributor: Fabio Ribeiro <fabiorphp@gmail.com>
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php81-pecl-mailparse
+_extname=mailparse
+pkgver=3.1.6
+pkgrel=0
+pkgdesc="PHP 8.1 extension for parsing and working with email messages - PECL"
+url="https://pecl.php.net/package/mailparse"
+arch="all"
+license="PHP-3.01"
+depends="php81-mbstring"
+makedepends="php81-dev"
+source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
+builddir="$srcdir/$_extname-$pkgver"
+
+build() {
+ phpize81
+ ./configure --prefix=/usr --with-php-config=php-config81
+ make
+}
+
+check() {
+ # Tests require mbstring extension which is not bundled
+ make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test PHP_TEST_SHARED_EXTENSIONS=" \
+ -d extension=/usr/lib/php81/modules/mbstring.so \
+ -d extension=modules/$_extname.so" TESTS=--show-diff
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+ local _confdir="$pkgdir"/etc/php81/conf.d
+ install -d $_confdir
+ echo "extension=$_extname" > $_confdir/60_$_extname.ini
+}
+
+sha512sums="
+4bb629c2fc2aa7e9ab74f004222b6cfca13a7f0c3cb5152b67423bea4fff8dca5b4442ac2ddfea1127dfc893141eedae3e22b3f05f1b2368c4a4d0267a090388 php-pecl-mailparse-3.1.6.tgz
+"
diff --git a/testing/php81-pecl-maxminddb/APKBUILD b/testing/php81-pecl-maxminddb/APKBUILD
new file mode 100644
index 00000000000..91f9952f645
--- /dev/null
+++ b/testing/php81-pecl-maxminddb/APKBUILD
@@ -0,0 +1,38 @@
+# Contributor: TBK <alpine@jjtc.eu>
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php81-pecl-maxminddb
+_extname=maxminddb
+pkgver=1.11.1
+pkgrel=0
+pkgdesc="PHP 8.1 MaxMind DB Reader extension - PECL"
+url="https://pecl.php.net/package/maxminddb"
+arch="all"
+license="Apache-2.0"
+_phpv=81
+_php=php$_phpv
+depends="$_php-bcmath"
+makedepends="$_php-dev libmaxminddb-dev"
+source="php-pecl-$_extname-$pkgver.tar.gz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
+builddir="$srcdir/$_extname-$pkgver/ext"
+
+build() {
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=/usr/bin/php-config$_phpv
+ make
+}
+
+check() {
+ make test NO_INTERACTION=1 REPORT_EXIT_STATUS=1
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+
+ local confdir="$pkgdir"/etc/$_php/conf.d
+ install -d $confdir
+ echo "extension=maxminddb" > $confdir/maxminddb.ini
+}
+
+sha512sums="
+12193a30928308e07d8abe352e5d823ee73029179cd20ee8552ea89ca597107319f6fff38169d870b54d40ec984dcfd619aeef4e2db3091b6d2706f4d7930912 php-pecl-maxminddb-1.11.1.tar.gz
+"
diff --git a/testing/php81-pecl-mcrypt/APKBUILD b/testing/php81-pecl-mcrypt/APKBUILD
index b1b1eaa97a6..6c8d070252a 100644
--- a/testing/php81-pecl-mcrypt/APKBUILD
+++ b/testing/php81-pecl-mcrypt/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Andy Postnikov <apostnikov@gmail.com>
pkgname=php81-pecl-mcrypt
_extname=mcrypt
-pkgver=1.0.4
+pkgver=1.0.7
pkgrel=0
pkgdesc="Provides PHP 8.1 bindings for the unmaintained libmcrypt - PECL"
url="https://pecl.php.net/package/mcrypt"
@@ -20,7 +20,7 @@ build() {
}
check() {
- rm -f tests/mcrypt_rijndael128_128BitKey.phpt # fails
+# rm -f tests/mcrypt_rijndael128_128BitKey.phpt # fails
make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test
}
@@ -31,4 +31,6 @@ package() {
echo "extension=$_extname" > $_confdir/$_extname.ini
}
-sha512sums="6a8244761035640366041a5f26057ab14bb85eaaa973ddf604e152b786ef750ec775ae91d7582044700d6fdef902425f3a9d6839113a52e0a9f957bf9d0c189a php-pecl-mcrypt-1.0.4.tgz"
+sha512sums="
+1b579af868a2db073520437ad6a93513c2591bc865d982dc7926591e712614995148d13bacc1b4b207ddecda4bad219b67010a39ea17e1ec6e180d4fd69182ff php-pecl-mcrypt-1.0.7.tgz
+"
diff --git a/testing/php81-pecl-memcache/APKBUILD b/testing/php81-pecl-memcache/APKBUILD
new file mode 100644
index 00000000000..8e585f5d4c6
--- /dev/null
+++ b/testing/php81-pecl-memcache/APKBUILD
@@ -0,0 +1,39 @@
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php81-pecl-memcache
+_extname=memcache
+pkgver=8.2
+pkgrel=1
+pkgdesc="PHP 8.1 memcache extension, provides handy OO and procedural interfaces, can be used as session handler - PECL"
+url="https://pecl.php.net/package/memcache"
+arch="all"
+license="PHP-3.0"
+_phpv=81
+_php=php$_phpv
+depends="$_php-session"
+makedepends="$_php-dev"
+source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
+builddir="$srcdir/$_extname-$pkgver"
+
+install_if="php-$_extname php$_phpv"
+
+build() {
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=php-config$_phpv
+ make
+}
+
+check() {
+ # Tests require 3 memcached servers, basic check, see tests/memcache.sh
+ $_php -dextension=modules/$_extname.so --ri $_extname
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+ local _confdir="$pkgdir"/etc/$_php/conf.d
+ install -d $_confdir
+ echo "extension=$_extname" > $_confdir/$_extname.ini
+}
+
+sha512sums="
+937f6bf33cd9202751585a2817c658bb2d361b0cef013cb6ac17ee147e07a1ca7860dc73902a607a147cd7ecfaf50cc0f3cb6758338afd29e688bc85ca59a2ba php-pecl-memcache-8.2.tgz
+"
diff --git a/testing/php81-pecl-memcached/APKBUILD b/testing/php81-pecl-memcached/APKBUILD
new file mode 100644
index 00000000000..32ccc4c8ca5
--- /dev/null
+++ b/testing/php81-pecl-memcached/APKBUILD
@@ -0,0 +1,48 @@
+# Contributor: Fabio Ribeiro <fabiorphp@gmail.com>
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php81-pecl-memcached
+_extname=memcached
+pkgver=3.2.0
+pkgrel=3
+pkgdesc="PHP 8.1 extension for interfacing with memcached via libmemcached library - PECL"
+url="https://pecl.php.net/package/memcached"
+arch="all !x86" # php81-pecl-msgpack
+license="PHP-3.01"
+_phpv=81
+_php=php$_phpv
+depends="$_php-session $_php-pecl-igbinary $_php-pecl-msgpack"
+makedepends="$_php-dev zlib-dev libmemcached-dev cyrus-sasl-dev libevent-dev"
+source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
+builddir="$srcdir/$_extname-$pkgver"
+
+install_if="php-$_extname php$_phpv"
+
+build() {
+ phpize$_phpv
+ ./configure \
+ --prefix=/usr \
+ --with-php-config=php-config$_phpv \
+ --enable-memcached-json \
+ --enable-memcached-igbinary \
+ --enable-memcached-msgpack \
+ --enable-memcached-protocol \
+ --enable-memcached-sasl
+ make
+}
+
+check() {
+ # Tests require memcached server, basic check
+ $_php -d extension="$builddir"/modules/$_extname.so --ri $_extname
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+
+ local _confdir="$pkgdir"/etc/$_php/conf.d
+ mkdir -p $_confdir
+ echo "extension=$_extname" > $_confdir/20_$_extname.ini
+}
+
+sha512sums="
+ece5759a9d6d52afd46beb0821811e5d4830e75ad8564af395e2107fd349e271c6e6cf20eeacd9ad15ee2e99ccf0118ccc83c5810e2f3fa7c61f1984b0b26514 php-pecl-memcached-3.2.0.tgz
+"
diff --git a/testing/php81-pecl-mongodb/APKBUILD b/testing/php81-pecl-mongodb/APKBUILD
new file mode 100644
index 00000000000..a4cb09478c6
--- /dev/null
+++ b/testing/php81-pecl-mongodb/APKBUILD
@@ -0,0 +1,40 @@
+# Contributor: Fabio Ribeiro <fabiorphp@gmail.com>
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php81-pecl-mongodb
+_extname=mongodb
+pkgver=1.18.1
+pkgrel=0
+pkgdesc="PHP 8.1 MongoDB driver - PECL"
+url="https://pecl.php.net/package/mongodb"
+arch="all"
+license="Apache-2.0"
+depends="php81-common"
+makedepends="cyrus-sasl-dev icu-dev openssl-dev>3 php81-dev snappy-dev zstd-dev"
+source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
+builddir="$srcdir"/$_extname-$pkgver
+provides="php81-mongodb=$pkgver-r$pkgrel" # for backward compatibility
+replaces="php81-mongodb" # for backward compatibility
+
+build() {
+ phpize81
+ ./configure --prefix=/usr \
+ --with-php-config=/usr/bin/php-config81
+ make
+}
+
+check() {
+ # tests requires additional dependencies (vagrant)
+ php81 -d extension=modules/$_extname.so --ri $_extname
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+
+ local _confdir="$pkgdir"/etc/php81/conf.d
+ install -d $_confdir
+ echo "extension=$_extname" > $_confdir/$_extname.ini
+}
+
+sha512sums="
+3224ea4efac1063bea58c55c2defbb149982b88387917a1301e08b65c2bbb070d962a17bc84d187abeed8950a52e5e5d24e5517524d8bf0892ecd3f6c9f815f0 php-pecl-mongodb-1.18.1.tgz
+"
diff --git a/testing/php81-pecl-msgpack/APKBUILD b/testing/php81-pecl-msgpack/APKBUILD
new file mode 100644
index 00000000000..6002c26a24f
--- /dev/null
+++ b/testing/php81-pecl-msgpack/APKBUILD
@@ -0,0 +1,50 @@
+# Contributor: Fabio Ribeiro <fabiorphp@gmail.com>
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php81-pecl-msgpack
+_extname=msgpack
+pkgver=2.2.0
+pkgrel=0
+pkgdesc="PHP 8.1 extension provides API for communicating with MessagePack serialization - PECL"
+url="https://pecl.php.net/package/msgpack"
+arch="all !x86"
+license="BSD-3-Clause"
+_phpv=81
+_php=php$_phpv
+depends="$_php-session $_php-sockets"
+makedepends="$_php-dev"
+checkdepends="$_php-pecl-apcu"
+source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
+builddir="$srcdir"/$_extname-$pkgver
+provides="php-msgpack=$pkgver-r$pkgrel" # for backward compatibility
+replaces="php-msgpack" # for backward compatibility
+
+install_if="php-$_extname php$_phpv"
+
+build() {
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=php-config$_phpv
+ make
+}
+
+check() {
+ rm -f tests/034.phpt # XFAIL https://github.com/msgpack/msgpack-php/issues/136
+ rm -f tests/035.phpt # fails on ppc64le as of slow environment https://github.com/msgpack/msgpack-php/issues/123
+ # Tests require session and sockets extensions which are not bundled
+ local _depsdir=/usr/lib/$_php/modules
+ make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test PHP_TEST_SHARED_EXTENSIONS="
+ -d extension=$_depsdir/apcu.so \
+ -d extension=$_depsdir/session.so \
+ -d extension=$_depsdir/sockets.so \
+ -d extension=modules/$_extname.so" TESTS=--show-diff
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+ local _confdir="$pkgdir"/etc/$_php/conf.d
+ install -d $_confdir
+ echo "extension=$_extname" > $_confdir/10_$_extname.ini
+}
+
+sha512sums="
+91cb45e79b78624938ddabce39327a093d668a875fad6e2ce55058e54a742a3a35ea58069446399425816613ebdf5fc503222555b9296a22879d2b7eb475b8c9 php-pecl-msgpack-2.2.0.tgz
+"
diff --git a/testing/php81-pecl-opentelemetry/APKBUILD b/testing/php81-pecl-opentelemetry/APKBUILD
new file mode 100644
index 00000000000..d244c94d7fc
--- /dev/null
+++ b/testing/php81-pecl-opentelemetry/APKBUILD
@@ -0,0 +1,38 @@
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php81-pecl-opentelemetry
+_extname=opentelemetry
+pkgver=1.0.2
+_pkgver=${pkgver/_/}
+pkgrel=0
+pkgdesc="PHP 8.1 extension for OpenTelemetry auto-instrumentation support - PECL"
+url="https://pecl.php.net/package/opentelemetry"
+arch="all"
+license="Apache-2.0"
+_phpv=81
+_php=php$_phpv
+depends="$_php-common"
+makedepends="$_php-dev"
+source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$_pkgver.tgz"
+builddir="$srcdir/$_extname-$_pkgver"
+
+build() {
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=php-config$_phpv
+ make
+}
+
+check() {
+ $_php -d extension="$builddir"/modules/$_extname.so --ri $_extname
+ make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+ local _confdir="$pkgdir"/etc/$_php/conf.d
+ mkdir -p $_confdir
+ echo "extension=$_extname" > $_confdir/$_extname.ini
+}
+
+sha512sums="
+98f3b9ccd8296bcab79af3f1554abc6e60d89aa9fac80775496a09e7a85eae7c8be44bcfa9a35a91157675b58c02dbd1fbdfc55ab96b05852d33232b8aa44e81 php-pecl-opentelemetry-1.0.2.tgz
+"
diff --git a/testing/php81-pecl-protobuf/APKBUILD b/testing/php81-pecl-protobuf/APKBUILD
new file mode 100644
index 00000000000..0438ecebaa2
--- /dev/null
+++ b/testing/php81-pecl-protobuf/APKBUILD
@@ -0,0 +1,38 @@
+# Contributor: TBK <alpine@jjtc.eu>
+# Maintainer: TBK <alpine@jjtc.eu>
+pkgname=php81-pecl-protobuf
+_extname=protobuf
+pkgver=4.26.0
+pkgrel=0
+pkgdesc="PHP 8.1 extension: Google's language-neutral, platform-neutral, extensible mechanism for serializing structured data - PECL"
+url="https://pecl.php.net/package/protobuf"
+arch="all"
+license="BSD-3-Clause"
+_phpv=81
+_php=php$_phpv
+depends="$_php-common"
+makedepends="$_php-dev"
+source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
+builddir="$srcdir/$_extname-$pkgver"
+
+build() {
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=php-config$_phpv
+ make
+}
+
+check() {
+ # Test suite is not a part of pecl release.
+ $_php -d extension=modules/$_extname.so --ri $_extname
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+ local _confdir="$pkgdir"/etc/$_php/conf.d
+ install -d $_confdir
+ echo "extension=$_extname" > $_confdir/$_extname.ini
+}
+
+sha512sums="
+7e5cff2b6d2c50b0ca4fe7282bf19fbba3b66071b1e8565798cd8f024ca04f1e5174a1764db7dee07c65838551464ff9c6fa74178d4b2eda7fc66c2529540ec8 php-pecl-protobuf-4.26.0.tgz
+"
diff --git a/testing/php81-pecl-psr/APKBUILD b/testing/php81-pecl-psr/APKBUILD
new file mode 100644
index 00000000000..fb8efb68634
--- /dev/null
+++ b/testing/php81-pecl-psr/APKBUILD
@@ -0,0 +1,34 @@
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php81-pecl-psr
+_extname=psr
+pkgver=1.2.0
+pkgrel=0
+pkgdesc="PHP 8.1 extension provides the accepted PSR interfaces, so they can be used in an extension - PECL"
+url="https://pecl.php.net/package/psr"
+arch="all"
+license="BSD-2-Clause"
+depends="php81-common"
+makedepends="php81-dev"
+source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
+builddir="$srcdir/$_extname-$pkgver"
+
+build() {
+ phpize81
+ ./configure --prefix=/usr --with-php-config=php-config81
+ make
+}
+
+check() {
+ make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+ local _confdir="$pkgdir"/etc/php81/conf.d
+ install -d $_confdir
+ echo "extension=$_extname" > $_confdir/$_extname.ini
+}
+
+sha512sums="
+90d4bc1cd2364a15775024806ec5bc1b8f60ed44569162016a0a78fca89f4ad0f0e0b1f9f09ebdcfe6a803e888bddd1d8ce73100eec52ecc21c2e505a35ee5dd php-pecl-psr-1.2.0.tgz
+"
diff --git a/testing/php81-pecl-rdkafka/APKBUILD b/testing/php81-pecl-rdkafka/APKBUILD
new file mode 100644
index 00000000000..ed7a31e9b3a
--- /dev/null
+++ b/testing/php81-pecl-rdkafka/APKBUILD
@@ -0,0 +1,38 @@
+# Contributor: Gennady Feldman <gena01@gmail.com>
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php81-pecl-rdkafka
+_extname=rdkafka
+pkgver=6.0.3
+pkgrel=2
+pkgdesc="A librdkafka bindings for PHP 8.1 providing a working client for Kafka - PECL"
+url="https://pecl.php.net/package/rdkafka"
+arch="all"
+license="MIT"
+depends="php81-common"
+makedepends="php81-dev file librdkafka-dev"
+source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
+builddir="$srcdir/$_extname-$pkgver"
+
+install_if="php-$_extname php$_phpv"
+
+build() {
+ phpize81
+ ./configure --prefix=/usr --with-php-config=/usr/bin/php-config81
+ make
+}
+
+check() {
+ php81 -dextension=modules/$_extname.so --ri $_extname
+ make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+ local _confdir="$pkgdir"/etc/php81/conf.d
+ install -d $_confdir
+ echo "extension=$_extname" > $_confdir/$_extname.ini
+}
+
+sha512sums="
+0a40cd24e68360f98c2ad941acae2ced55c13ebe6398274c7c127df18fa0181acb73be32d8eba4b0af3016ab7aead3cda516171ac388b10cd5d70fa3b22ed90d php-pecl-rdkafka-6.0.3.tgz
+"
diff --git a/testing/php81-pecl-redis/APKBUILD b/testing/php81-pecl-redis/APKBUILD
new file mode 100644
index 00000000000..452c511cc38
--- /dev/null
+++ b/testing/php81-pecl-redis/APKBUILD
@@ -0,0 +1,49 @@
+# Contributor: Fabio Ribeiro <fabiorphp@gmail.com>
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php81-pecl-redis
+_extname=redis
+pkgver=6.0.2
+_pkgver=${pkgver/_rc/RC}
+pkgrel=0
+pkgdesc="PHP 8.1 extension for interfacing with Redis - PECL"
+url="https://pecl.php.net/package/redis"
+arch="all !x86" # php81-pecl-msgpack
+license="PHP-3.01"
+_phpv=81
+_php=php$_phpv
+depends="$_php-pecl-igbinary $_php-pecl-msgpack $_php-session"
+makedepends="$_php-dev lz4-dev zstd-dev"
+source="php-pecl-$_extname-$_pkgver.tgz::https://pecl.php.net/get/$_extname-$_pkgver.tgz"
+builddir="$srcdir/$_extname-$_pkgver"
+provides="$_php-redis=$pkgver-r$pkgrel" # for backward compatibility
+replaces="$_php-redis" # for backward compatibility
+
+install_if="php-$_extname php$_phpv"
+
+build() {
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=php-config$_phpv \
+ --enable-redis-igbinary \
+ --enable-redis-lz4 --with-liblz4 \
+ --enable-redis-lzf \
+ --enable-redis-msgpack \
+ --enable-redis-zstd
+ make
+}
+
+check() {
+ # Need running redis server
+ $_php -d extension=modules/$_extname.so --ri $_extname
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+
+ local _confdir="$pkgdir"/etc/$_php/conf.d
+ mkdir -p $_confdir
+ echo "extension=$_extname" > $_confdir/20_$_extname.ini
+}
+
+sha512sums="
+1918d15433d1b4d782a9fb0364f6dfeed8d9e6c2ae70c34e235be5f890992c73a40ef19842e0aabb181da86dd2cde28b9aebab8698b387738321298a2ab94aa6 php-pecl-redis-6.0.2.tgz
+"
diff --git a/testing/php81-pecl-smbclient/APKBUILD b/testing/php81-pecl-smbclient/APKBUILD
index 11053bcb7ae..dfe3155a51c 100644
--- a/testing/php81-pecl-smbclient/APKBUILD
+++ b/testing/php81-pecl-smbclient/APKBUILD
@@ -3,35 +3,37 @@
pkgname=php81-pecl-smbclient
_extname=smbclient
-pkgver=1.0.6
-pkgrel=0
+pkgver=1.1.1
+pkgrel=1
pkgdesc="PHP 8.1 extension that uses Samba's libsmbclient library to provide Samba related functions and 'smb' streams to PHP programs."
url="https://pecl.php.net/package/smbclient"
arch="all"
license="BSD-2-Clause"
-depends="php81-common"
-makedepends="php81-dev samba-dev"
+_phpv=81
+_php=php$_phpv
+depends="$_php-common"
+makedepends="$_php-dev samba-dev"
source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
builddir="$srcdir"/$_extname-$pkgver
build() {
- phpize81
- ./configure --prefix=/usr --with-php-config=php-config81
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=php-config$_phpv
make
}
check() {
- # Test suite require phpunit to run.
- php81 -d extension=modules/$_extname.so --ri smbclient
+ # Test suite require smb to run.
+ $_php -d extension=modules/$_extname.so --ri smbclient
}
package() {
make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php81/conf.d
+ local _confdir="$pkgdir"/etc/$_php/conf.d
install -d $_confdir
echo "extension=$_extname" > $_confdir/$_extname.ini
}
sha512sums="
-381051dbe6347ce3b0be9d1ed44ee80be846ce1cd4255689127220a48e3c157853e98ae463435a12342f6370b4e96c162069d8d00574aaf88675c5b9ad0810e8 php-pecl-smbclient-1.0.6.tgz
+17df088cacb80c378dec38fd6c6b8e83e1f6d8787e96e5eccac72792f8125cadda205568466fccd21900d1854bdaf3f042992d44e1c5ef458ade61aeec483513 php-pecl-smbclient-1.1.1.tgz
"
diff --git a/testing/php81-pecl-ssh2/APKBUILD b/testing/php81-pecl-ssh2/APKBUILD
new file mode 100644
index 00000000000..a19612ec5db
--- /dev/null
+++ b/testing/php81-pecl-ssh2/APKBUILD
@@ -0,0 +1,41 @@
+# Contributor: Andy Postnikov <apostnikov@gmail.com>
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php81-pecl-ssh2
+_extname=ssh2
+pkgver=1.4.1
+pkgrel=0
+pkgdesc="PHP 8.1 extension provide bindings for the libssh2 library - PECL"
+url="https://pecl.php.net/package/ssh2"
+arch="all"
+license="PHP-3.01"
+_phpv=81
+_php=php$_phpv
+depends="$_php-common"
+makedepends="$_php-dev libssh2-dev"
+source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
+builddir="$srcdir/$_extname-$pkgver"
+
+install_if="php-$_extname php$_phpv"
+
+build() {
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=php-config$_phpv
+ make
+}
+
+check() {
+ make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test
+ # Check extension loading, testsuite skips tests if extension broken
+ $_php -d extension=modules/$_extname.so --ri $_extname
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+ local _confdir="$pkgdir"/etc/$_php/conf.d
+ install -d $_confdir
+ echo "extension=$_extname" > $_confdir/$_extname.ini
+}
+
+sha512sums="
+9ff90b95b8fabfa2a75cf8a62a55e93df19d3e952f79234fc1d7ef3a030089f8b3703412bf6e22d85c7bf5825cf8493a4d97ad51a1600185d3d16f81c72e155c php-pecl-ssh2-1.4.1.tgz
+"
diff --git a/testing/php81-pecl-swoole/APKBUILD b/testing/php81-pecl-swoole/APKBUILD
new file mode 100644
index 00000000000..fb88fcf5298
--- /dev/null
+++ b/testing/php81-pecl-swoole/APKBUILD
@@ -0,0 +1,63 @@
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php81-pecl-swoole
+_extname=swoole
+pkgver=5.1.1
+pkgrel=0
+pkgdesc="Event-driven asynchronous and concurrent networking engine with high performance for PHP 8.1 - PECL"
+url="https://pecl.php.net/package/swoole"
+arch="all !x86 !armv7 !armhf" # no 32-bit support
+license="Apache-2.0"
+_phpv=81
+_php=php$_phpv
+depends="$_php-curl $_php-mysqlnd $_php-openssl $_php-pdo $_php-sockets"
+makedepends="$_php-dev
+ c-ares-dev
+ curl-dev
+ libpq-dev
+ nghttp2-dev
+ openssl-dev>3
+ sqlite-dev
+ "
+source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
+builddir="$srcdir"/$_extname-$pkgver
+subpackages="$pkgname-dev"
+replaces="php81-pecl-openswoole"
+
+case "$CARCH" in
+ ppc64le|s390x) makedepends="$makedepends libucontext-dev" ;;
+esac
+
+build() {
+ case "$CARCH" in
+ ppc64le|s390x) export LDFLAGS="$LDFLAGS -lucontext" ;;
+ esac
+ phpize$_phpv
+ ./configure --prefix=/usr \
+ --with-php-config=php-config$_phpv \
+ --with-nghttp2_dir=/usr \
+ --enable-mysqlnd \
+ --enable-openssl --with-openssl-dir=/usr \
+ --enable-sockets \
+ --enable-swoole-curl \
+ --enable-swoole-pgsql \
+ --enable-swoole-sqlite \
+ --enable-brotli --with-brotli-dir=/usr \
+ --enable-cares
+ make
+}
+
+check() {
+ # needs extra services to test all suite
+ $_php -d extension=modules/swoole.so --ri swoole
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+ local _confdir="$pkgdir"/etc/$_php/conf.d
+ install -d $_confdir
+ echo "extension=$_extname" > $_confdir/50_$_extname.ini
+}
+
+sha512sums="
+ac5f6a737a42123417de33219f56c1ce95b7217d1e66d5021cb6f0126c9fead7917aa38f577330e3391e7780e3a2117b53dff72069680c1c3d0780b52d8d1f61 php-pecl-swoole-5.1.1.tgz
+"
diff --git a/testing/php81-pecl-timezonedb/APKBUILD b/testing/php81-pecl-timezonedb/APKBUILD
index 5e328dc9040..5409b3a746c 100644
--- a/testing/php81-pecl-timezonedb/APKBUILD
+++ b/testing/php81-pecl-timezonedb/APKBUILD
@@ -2,35 +2,37 @@
# Maintainer: Andy Postnikov <apostnikov@gmail.com>
pkgname=php81-pecl-timezonedb
_extname=timezonedb
-pkgver=2021.5
+pkgver=2024.1
pkgrel=0
pkgdesc="Timezone Database to be used with PHP's date and time functions."
url="https://pecl.php.net/package/timezonedb"
arch="all"
license="PHP-3.01"
-depends="php81-common"
-makedepends="php81-dev"
+_phpv=81
+_php=php$_phpv
+depends="$_php-common"
+makedepends="$_php-dev"
source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
builddir="$srcdir/$_extname-$pkgver"
build() {
- phpize81
- ./configure --prefix=/usr --with-php-config=php-config81
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=php-config$_phpv
make
}
check() {
# Test suite is not a part of pecl release.
- php81 -dextension=modules/$_extname.so --ri $_extname
+ $_php -dextension=modules/$_extname.so --ri $_extname
}
package() {
make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php81/conf.d
+ local _confdir="$pkgdir"/etc/$_php/conf.d
install -d $_confdir
echo "extension=$_extname" > $_confdir/40_$_extname.ini
}
sha512sums="
-ac295df0dbc833e1b6d452df2fa0a316cc8df95abf6aaf809a87401256c891b9ba0e663dc300e5a0fdf1c0e3566b9eea580eff12ed4d2bcc4355b13eb5893d9e php-pecl-timezonedb-2021.5.tgz
+09772cdb0d94f8bcf937f075dbcc385b3c5c23657c4442b2ea741bb5dcd8b9898bd23019a2e2319178ffcb62aedd11cbc222ed9d603fba608e0e185a9d5282bc php-pecl-timezonedb-2024.1.tgz
"
diff --git a/testing/php81-pecl-uploadprogress/APKBUILD b/testing/php81-pecl-uploadprogress/APKBUILD
new file mode 100644
index 00000000000..d376d848e90
--- /dev/null
+++ b/testing/php81-pecl-uploadprogress/APKBUILD
@@ -0,0 +1,47 @@
+# Contributor: Andy Postnikov <apostnikov@gmail.com>
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+
+pkgname=php81-pecl-uploadprogress
+_extname=uploadprogress
+pkgver=2.0.2
+pkgrel=1
+pkgdesc="PHP 8.1 extension to track progress of a file upload - PECL"
+url="https://pecl.php.net/package/uploadprogress"
+arch="all"
+license="PHP-3.01"
+_phpv=81
+_php=php$_phpv
+depends="$_php-common"
+makedepends="$_php-dev"
+subpackages="$pkgname-doc::noarch"
+source="php-pecl-$_extname-$pkgver.tar.gz::https://pecl.php.net/get/uploadprogress-$pkgver.tgz"
+builddir="$srcdir/$_extname-$pkgver"
+
+install_if="php-$_extname php$_phpv"
+
+build() {
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=php-config$_phpv
+ make
+}
+
+check() {
+ make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS='--show-diff '
+ $_php -d extension=modules/$_extname.so --ri $_extname
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+
+ local confdir="$pkgdir/etc/$_php/conf.d"
+ mkdir -p "$confdir"
+ echo "extension=$_extname" > "$confdir"/$_extname.ini
+
+ local docdir="$pkgdir"/usr/share/doc/$pkgname
+ install -Dm644 -t $docdir README.md
+ cp -r examples/. $docdir/examples
+}
+
+sha512sums="
+b9ee5a09c3de78d58abd34da2d25d7b0cad38416309a9a69192f07e0c3fe2259de261bb3dee571e64e042753f861738ebcd67fa7fafeb595ec32ed3034c773cd php-pecl-uploadprogress-2.0.2.tar.gz
+"
diff --git a/testing/php81-pecl-uuid/APKBUILD b/testing/php81-pecl-uuid/APKBUILD
new file mode 100644
index 00000000000..4074ebe3303
--- /dev/null
+++ b/testing/php81-pecl-uuid/APKBUILD
@@ -0,0 +1,35 @@
+# Contributor: Fabio Ribeiro <fabiorphp@gmail.com>
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php81-pecl-uuid
+_extname=uuid
+pkgver=1.2.0
+pkgrel=0
+pkgdesc="PHP 8.1 wrapper around libuuid from the ext2utils project - PECL"
+url="https://pecl.php.net/package/uuid"
+arch="all"
+license="LGPL-2.1-or-later"
+depends="php81-common"
+makedepends="php81-dev util-linux-dev"
+source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
+builddir="$srcdir/$_extname-$pkgver"
+
+build() {
+ phpize81
+ ./configure --prefix=/usr --with-php-config=php-config81
+ make
+}
+
+check() {
+ make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+ local _confdir="$pkgdir"/etc/php81/conf.d
+ install -d $_confdir
+ echo "extension=$_extname" > $_confdir/50_$_extname.ini
+}
+
+sha512sums="
+bd557823a8c2b78f74675a2554445eafc69193c6fe5af1f9435cdd90a8efdec0d3974ae8af759fe7d30b2f805876fc2ef55058dea245c9d89a792f634fdb0a10 php-pecl-uuid-1.2.0.tgz
+"
diff --git a/testing/php81-pecl-vips/APKBUILD b/testing/php81-pecl-vips/APKBUILD
new file mode 100644
index 00000000000..15027ca1a66
--- /dev/null
+++ b/testing/php81-pecl-vips/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: TBK <alpine@jjtc.eu>
+# Maintainer: TBK <alpine@jjtc.eu>
+pkgname=php81-pecl-vips
+_extname=vips
+pkgver=1.0.13
+pkgrel=0
+pkgdesc="PHP 8.1 extension for interfacing with vips - PECL"
+url="https://pecl.php.net/package/vips"
+arch="all !x86 !aarch64 !armv7 !armhf" # threads https://gitlab.alpinelinux.org/alpine/aports/-/issues/15972
+license="MIT"
+depends="php81-common"
+makedepends="php81-dev vips-dev"
+source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
+builddir="$srcdir/$_extname-$pkgver"
+
+build() {
+ phpize81
+ ./configure --prefix=/usr --with-php-config=php-config81
+ make
+}
+
+check() {
+ php81 -dextension=modules/$_extname.so --ri $_extname
+ make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 SKIP_ONLINE_TESTS=1 test TESTS=--show-diff
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+ local _confdir="$pkgdir"/etc/php81/conf.d
+ install -d $_confdir
+ echo "extension=$_extname" > $_confdir/$_extname.ini
+}
+
+sha512sums="
+005660e3adb834e38a57b559411f4d33ec3efc5b2bc2e9afe182826618a7670530635ca684e73af2eb2c30ac4d3360653ba53fcfbcb835c712341bd6ed98bea3 php-pecl-vips-1.0.13.tgz
+"
diff --git a/testing/php81-pecl-xdebug/APKBUILD b/testing/php81-pecl-xdebug/APKBUILD
new file mode 100644
index 00000000000..ea5986532ca
--- /dev/null
+++ b/testing/php81-pecl-xdebug/APKBUILD
@@ -0,0 +1,53 @@
+# Contributor: Andy Postnikov <apostnikov@gmail.com>
+# Contributor: Valery Kartel <valery.kartel@gmail.com>
+# Contributor: Fabio Ribeiro <fabiorphp@gmail.com>
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php81-pecl-xdebug
+_extname=xdebug
+pkgver=3.3.2
+pkgrel=0
+pkgdesc="PHP 8.1 extension that provides functions for function traces and profiling - PECL"
+url="https://pecl.php.net/package/xdebug"
+arch="all"
+license="PHP-3.0"
+_phpv=81
+_php=php$_phpv
+depends="$_php-common"
+makedepends="$_php-dev linux-headers"
+source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
+builddir="$srcdir/$_extname-$pkgver"
+provides="$_php-xdebug=$pkgver-r$pkgrel" # for backward compatibility
+replaces="$_php-xdebug" # for backward compatibility
+
+install_if="php-$_extname php$_phpv"
+
+build() {
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=php-config$_phpv
+ make
+}
+
+check() {
+ # PECL package has no test suite.
+ $_php -d zend_extension="$builddir"/modules/xdebug.so -r 'xdebug_info();'
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+
+ local _confdir="$pkgdir"/etc/$_php/conf.d
+ mkdir -p $_confdir
+ # should go after opcache
+ cat > $_confdir/50_$_extname.ini <<-EOF
+ ; Uncomment and configure mode https://xdebug.org/docs/all_settings#xdebug.mode
+ ;zend_extension=$_extname.so
+ ;xdebug.mode=off
+ EOF
+
+ install -D -m644 -t "$pkgdir"/usr/share/$_php/xdebug/ contrib/tracefile-analyser.php
+ install -D -m644 -t "$pkgdir"/usr/share/vim/vimfiles/syntax/ contrib/xt.vim
+}
+
+sha512sums="
+06096e7a8899e586af8a9a763889546274ef0b520c1b84a1153c704cfdd2f6ff5491c30510da34c0b41169c94fe1f08f27b81535f98162edbb14f1569bd55846 php-pecl-xdebug-3.3.2.tgz
+"
diff --git a/testing/php81-pecl-xhprof/APKBUILD b/testing/php81-pecl-xhprof/APKBUILD
new file mode 100644
index 00000000000..9f494e9a110
--- /dev/null
+++ b/testing/php81-pecl-xhprof/APKBUILD
@@ -0,0 +1,62 @@
+# Contributor: Andy Postnikov <apostnikov@gmail.com>
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+
+pkgname=php81-pecl-xhprof
+_extname=xhprof
+pkgver=2.3.9
+pkgrel=1
+pkgdesc="A Hierarchical Profiler for PHP 8.1 - PECL"
+url="https://pecl.php.net/package/xhprof"
+arch="all"
+license="Apache-2.0"
+_phpv=81
+_php=php$_phpv
+depends="$_php-common"
+makedepends="$_php-dev"
+_assetsdepends="$_php-ctype graphviz ghostscript-fonts"
+subpackages="$pkgname-assets::noarch"
+source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
+builddir="$srcdir/$_extname-$pkgver/extension"
+provides="$_php-xhprof=$pkgver-r$pkgrel" # for backward compatibility
+replaces="$_php-xhprof" # for backward compatibility
+
+install_if="php-$_extname php$_phpv"
+
+build() {
+ phpize$_phpv
+ ./configure --with-php-config=php-config$_phpv
+ make
+}
+
+check() {
+ [ $CARCH = s390x ] && rm -fr tests/xhprof_005.phpt # sleeping longer in CI
+ make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 TESTS=--show-diff test
+ $_php -d extension=modules/$_extname.so --ri $_extname
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+ local _confdir="$pkgdir"/etc/$_php/conf.d
+ install -d $_confdir
+ cat > $_confdir/$_extname.ini <<-EOF
+ extension=$_extname
+ xhprof.output_dir=/tmp
+ EOF
+}
+
+assets() {
+ pkgdesc="A Hierarchical Profiler for PHP (UI assets)"
+ depends="$_assetsdepends"
+ provides="$_php-xhprof-assets=$pkgver-r$pkgrel" # for backward compatibility
+ replaces="$_php-xhprof-assets" # for backward compatibility
+
+ local _assetsdir="$subpkgdir"/usr/share/$_php/xhprof
+ install -d $_assetsdir
+ cp -R "$builddir"/../xhprof_lib $_assetsdir
+ cp -R "$builddir"/../xhprof_html $_assetsdir
+ cp -R "$builddir"/../examples $_assetsdir
+}
+
+sha512sums="
+38a2609d961d908c6a4b5d1ff2085ffdad4a5f7d277705c826ae19e215660802528d606c5ee052f2e65255a7a85b2a9cb9038f4785c730ec468fc76dc7bcf5de php-pecl-xhprof-2.3.9.tgz
+"
diff --git a/testing/php81-pecl-xlswriter/APKBUILD b/testing/php81-pecl-xlswriter/APKBUILD
index ec0598d2810..d2cf48fb567 100644
--- a/testing/php81-pecl-xlswriter/APKBUILD
+++ b/testing/php81-pecl-xlswriter/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: viest <dev@service.viest.me>
# Maintainer: viest <dev@service.viest.me>
-pkgname=php8-pecl-xlswriter
+pkgname=php81-pecl-xlswriter
_extname=xlswriter
-pkgver=1.5.2
+pkgver=1.5.5
pkgrel=0
pkgdesc="PHP 8.1 extension for creating and reader XLSX files - PECL"
url="https://pecl.php.net/package/xlswriter"
@@ -34,5 +34,5 @@ package() {
}
sha512sums="
-cd218341c8247fff9823056f197dd0d5273a14c4ff66e0ebda4a77d5a7458389cd3eaf11ad9664732fb2636f57f948848cf5cb31daa35f97d9650db1d010e73d php-pecl-xlswriter-1.5.2.tar.gz
+11b9799fb54ec916b2e2ffc78ec49ba7828d9486680a3c68391768b2df0623f92065a29377dea273ba55a29841e26c4618c9312dcf20ff08747b2c95ba956429 php-pecl-xlswriter-1.5.5.tar.gz
"
diff --git a/testing/php81-pecl-xmlrpc/APKBUILD b/testing/php81-pecl-xmlrpc/APKBUILD
index f330face728..2d6c6b09fbb 100644
--- a/testing/php81-pecl-xmlrpc/APKBUILD
+++ b/testing/php81-pecl-xmlrpc/APKBUILD
@@ -3,7 +3,7 @@ pkgname=php81-pecl-xmlrpc
_extname=xmlrpc
pkgver=1.0.0_rc3
_pkgver=${pkgver/_rc/RC}
-pkgrel=0
+pkgrel=1
pkgdesc="PHP 8.1 extension to write XML-RPC servers and clients - PECL"
url="https://pecl.php.net/package/xmlrpc"
arch="all"
diff --git a/testing/php81-pecl-yaml/APKBUILD b/testing/php81-pecl-yaml/APKBUILD
new file mode 100644
index 00000000000..9321eb7f580
--- /dev/null
+++ b/testing/php81-pecl-yaml/APKBUILD
@@ -0,0 +1,40 @@
+# Contributor: Renoir Boulanger <hello@renoirboulanger.com>
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php81-pecl-yaml
+_extname=yaml
+pkgver=2.2.3
+pkgrel=1
+pkgdesc="YAML syntax bindings for PHP 8.1 - PECL"
+url="https://pecl.php.net/package/yaml"
+arch="all"
+license="MIT"
+_phpv=81
+_php=php$_phpv
+depends="$_php-common"
+makedepends="$_php-dev yaml-dev"
+source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
+builddir="$srcdir/$_extname-$pkgver"
+
+install_if="php-$_extname php$_phpv"
+
+build() {
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=php-config$_phpv
+ make
+}
+
+check() {
+ make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
+ $_php -d extension=modules/$_extname.so --ri $_extname
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+ local _confdir="$pkgdir"/etc/$_php/conf.d
+ install -d $_confdir
+ echo "extension=$_extname" > $_confdir/70_$_extname.ini
+}
+
+sha512sums="
+99d63d430dd2fa9767ecb3f70599d2ebd4c53b27770df72c00c4723816de422c581cea05e96c3cba5aaecbdc57cc482fad0f1fa300bdcf887daa7c2c034e6f4b php-pecl-yaml-2.2.3.tgz
+"
diff --git a/testing/php81-pecl-zephir_parser/APKBUILD b/testing/php81-pecl-zephir_parser/APKBUILD
index 7884729c0bb..a52192685e9 100644
--- a/testing/php81-pecl-zephir_parser/APKBUILD
+++ b/testing/php81-pecl-zephir_parser/APKBUILD
@@ -1,22 +1,22 @@
# Maintainer: Andy Postnikov <apostnikov@gmail.com>
pkgname=php81-pecl-zephir_parser
_extname=zephir_parser
-pkgver=1.4.1
+pkgver=1.6.0
pkgrel=0
pkgdesc="Zephir Parser is a code parser, delivered as a C extension for the PHP 8.1 language - PECL"
url="https://pecl.php.net/package/zephir_parser"
arch="all"
license="MIT"
-depends="php81-common"
-makedepends="php81-dev"
-source="php-pecl-$_extname-$pkgver.tar.gz::https://pecl.php.net/get/$_extname-$pkgver.tgz
- failed-tests.patch
- "
+_phpv=81
+_php=php$_phpv
+depends="$_php-common"
+makedepends="$_php-dev"
+source="php-pecl-$_extname-$pkgver.tar.gz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
builddir="$srcdir"/$_extname-$pkgver
build() {
- phpize81
- ./configure --prefix=/usr --with-php-config=/usr/bin/php-config81
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=/usr/bin/php-config$_phpv
make
}
@@ -27,12 +27,11 @@ check() {
package() {
make INSTALL_ROOT="$pkgdir" install
- local _confdir="$pkgdir"/etc/php81/conf.d
+ local _confdir="$pkgdir"/etc/$_php/conf.d
install -d $_confdir
echo "extension=$_extname" > $_confdir/$_extname.ini
}
sha512sums="
-0e55cec4e0af153953b4c1b6c98fe2fc242188f1eb274d31fd4f922343cdc95e7032d09551c206c40d5bcf0c10b06720e0d2dc8f30d39e2d2c5f44ee0bfc8243 php-pecl-zephir_parser-1.4.1.tar.gz
-a82a7086fdb5d771e40abc1ecd571ef99ed113d702938821a6bde3959ab2f85074b20af9b02b0fd7270a8f63be788e75852555c9310c5b565b3ece7163fcb8b2 failed-tests.patch
+84195c5702a12b1c6f9f027d2d0651bc7fb762cf71f4c7b4c9bc36b35fb92db54b994f5d2b0502d21b1dd8bb03710a72e4f0790b621edd2c1c69a10043b5d2ad php-pecl-zephir_parser-1.6.0.tar.gz
"
diff --git a/testing/php81-pecl-zephir_parser/failed-tests.patch b/testing/php81-pecl-zephir_parser/failed-tests.patch
deleted file mode 100644
index ef373216815..00000000000
--- a/testing/php81-pecl-zephir_parser/failed-tests.patch
+++ /dev/null
@@ -1,33 +0,0 @@
---- a/tests/base/cblocks.phpt
-+++ b/tests/base/cblocks.phpt
-@@ -3,6 +3,8 @@
- --SKIPIF--
- <?php include(__DIR__ . '/../skipif.inc'); ?>
- <?php include(__DIR__ . '/../skipifwin32.inc'); ?>
-+--XFAIL--
-+To be fixed
- --FILE--
- <?php
-
---- a/tests/comments/comments_before.phpt
-+++ b/tests/comments/comments_before.phpt
-@@ -3,6 +3,8 @@
- --SKIPIF--
- <?php include(__DIR__ . '/../skipif.inc'); ?>
- <?php include(__DIR__ . '/../skipifwin32.inc'); ?>
-+--XFAIL--
-+To be fixed
- --FILE--
- <?php
-
---- a/tests/errors/bug30.phpt
-+++ b/tests/errors/bug30.phpt
-@@ -3,6 +3,8 @@
- --SKIPIF--
- <?php include(__DIR__ . '/../skipif.inc'); ?>
- <?php include(__DIR__ . '/../skipifwin32.inc'); ?>
-+--XFAIL--
-+To be fixed
- --FILE--
- <?php
-
diff --git a/testing/php81-pecl-zstd/APKBUILD b/testing/php81-pecl-zstd/APKBUILD
new file mode 100644
index 00000000000..3c4d1e0bf7d
--- /dev/null
+++ b/testing/php81-pecl-zstd/APKBUILD
@@ -0,0 +1,39 @@
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php81-pecl-zstd
+_extname=zstd
+pkgver=0.13.3
+pkgrel=0
+pkgdesc="PHP 8.1 Zstandard extension - PECL"
+url="https://pecl.php.net/package/zstd"
+arch="all"
+license="MIT"
+depends="php81-common"
+makedepends="php81-dev php81-pecl-apcu zstd-dev"
+checkdepends="php81-openssl"
+source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
+builddir="$srcdir/$_extname-$pkgver"
+
+build() {
+ phpize81
+ ./configure --prefix=/usr --with-php-config=php-config81 --with-libzstd
+ make
+}
+
+check() {
+ local _modules=/usr/lib/php81/modules
+ make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test PHP_TEST_SHARED_EXTENSIONS=" \
+ -d extension=$_modules/apcu.so \
+ -d extension=$_modules/openssl.so \
+ -d extension=modules/$_extname.so" TESTS=--show-diff
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+ local _confdir="$pkgdir"/etc/php81/conf.d
+ install -d $_confdir
+ echo "extension=$_extname" > $_confdir/$_extname.ini
+}
+
+sha512sums="
+c6bcffcd71a1145e60bc3c1b25fec724cf406d1eb111a892b3603566e1a31e41fbf946d5f61746cd8db733e86ae3758b174a74c17c00b2f60e23dd61e0987198 php-pecl-zstd-0.13.3.tgz
+"
diff --git a/testing/php81-spx/APKBUILD b/testing/php81-spx/APKBUILD
new file mode 100644
index 00000000000..d2f181b4194
--- /dev/null
+++ b/testing/php81-spx/APKBUILD
@@ -0,0 +1,39 @@
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php81-spx
+_extname=spx
+pkgver=0.4.15
+pkgrel=0
+pkgdesc="A simple & straight-to-the-point PHP 8.1 profiling extension with its built-in web UI"
+url="https://github.com/NoiseByNorthwest/php-spx"
+arch="x86_64 aarch64"
+license="GPL-3.0-or-later"
+_phpv=81
+_php=php$_phpv
+depends="$_php-common"
+makedepends="$_php-dev zlib-dev"
+checkdepends="$_php-cgi"
+source="php-$_extname-$pkgver.tar.gz::https://github.com/NoiseByNorthwest/php-spx/archive/v$pkgver.tar.gz"
+builddir="$srcdir/php-$_extname-$pkgver"
+
+build() {
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=php-config$_phpv
+ make
+}
+
+check() {
+ TEST_PHP_CGI_EXECUTABLE=/usr/bin/php-cgi$_phpv \
+ make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
+ $_php -d extension=modules/$_extname.so --ri $_extname
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+ local _confdir="$pkgdir"/etc/$_php/conf.d
+ install -d $_confdir
+ echo "extension=$_extname" > $_confdir/$_extname.ini
+}
+
+sha512sums="
+c12c934012e6eee2fc7d42312b61e6d61482e2277b530ab86c81427a74731157ff48ae425b17dcd4f891cb4099aaa853bc38f7b285d6eb0f07934aa831e6c21a php-spx-0.4.15.tar.gz
+"
diff --git a/testing/php81/APKBUILD b/testing/php81/APKBUILD
new file mode 100644
index 00000000000..6c6a83dafc1
--- /dev/null
+++ b/testing/php81/APKBUILD
@@ -0,0 +1,671 @@
+# Contributor: Valery Kartel <valery.kartel@gmail.com>
+# Contributor: Jakub Jirutka <jakub@jirutka.cz>
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+
+# Bundled libraries
+#
+# Name | License | Location | State
+# ----------+---------------------+------------------------+---------
+# bcmath | LGPL-2.1-or-later | ext/bcmath/libbcmath | used
+# date | MIT | ext/date/lib | used
+# fileinfo | BSD-2-Clause | ext/fileinfo/libmagic | used
+# gd | BSD | ext/gd/libgd | used
+# hash | CC0-1.0 | ext/hash/sha3 | used
+# xxHash | BSD-2-Clause | ext/hash/xxhash | used
+# libmbfl | LGPL-2.1-only | ext/mbstring/libmbfl | used
+# pcre | BSD-3-Clause | ext/pcre/pcrelib | not used
+# sqlite3 | Public | ext/sqlite3/libsqlite | not used
+# libzip | BSD-3-Clause | ext/zip/lib | not used
+
+# Static extensions
+#
+# Name | Reason
+# ----------+--------------------------------------------
+# zlib | https://bugs.alpinelinux.org/issues/8299
+# json | https://wiki.php.net/rfc/always_enable_json
+
+pkgname=php81
+_pkgreal=php
+pkgver=8.1.28
+pkgrel=0
+_apiver=20210902
+_suffix=${pkgname#php}
+# Is this package the default (latest) PHP version?
+_default_php="no"
+provides="$pkgname-cli php-cli php" # for backward compatibility
+# priority of community/php82 is 100
+provider_priority=50
+pkgdesc="The PHP$_suffix language runtime engine"
+url="https://www.php.net/"
+arch="all"
+license="PHP-3.01 BSD-3-Clause LGPL-2.0-or-later MIT Zend-2.0"
+depends="$pkgname-common"
+depends_dev="$pkgname=$pkgver-r$pkgrel autoconf pcre2-dev re2c"
+# Most dependencies between extensions is auto-discovered (see _extension()).
+_depends_mysqlnd="$pkgname-openssl"
+_depends_pdo_mysql="$pkgname-pdo $pkgname-mysqlnd"
+_depends_phar="$pkgname"
+# openssl is actually transitive dependency here, but we need to because of
+# load index based on number of dependencies.
+_depends_mysqli="$pkgname-mysqlnd $pkgname-openssl"
+makedepends="
+ $depends_dev
+ acl-dev
+ apache2-dev
+ argon2-dev
+ aspell-dev
+ bison
+ bzip2-dev
+ clang
+ curl-dev
+ enchant2-dev
+ freetds-dev
+ freetype-dev
+ gdbm-dev
+ gettext-dev
+ gmp-dev
+ icu-dev
+ imap-dev
+ krb5-dev
+ libavif-dev
+ libedit-dev
+ libical-dev
+ libjpeg-turbo-dev
+ libpng-dev
+ libpq-dev
+ lmdb-dev
+ oniguruma-dev
+ libsodium-dev
+ libwebp-dev
+ libxml2-dev
+ libxpm-dev
+ libxslt-dev
+ libzip-dev
+ net-snmp-dev
+ openldap-dev
+ openssl-dev>3
+ patchelf
+ sqlite-dev
+ tidyhtml-dev
+ unixodbc-dev
+ zlib-dev
+ "
+checkdepends="icu-data-full"
+subpackages="$pkgname-dev $pkgname-doc
+ $pkgname-phpdbg $pkgname-apache2
+ $pkgname-embed $pkgname-cgi $pkgname-fpm
+ $pkgname-pear::noarch
+ "
+# sources for RC available at
+# - https://downloads.php.net/~patrickallaert/php-${pkgver}RC1.tar.xz
+# - https://downloads.php.net/~ramsey/php-${pkgver}RC1.tar.xz
+source="$_pkgreal-$pkgver.tar.xz::https://php.net/distributions/$_pkgreal-$pkgver.tar.xz
+ $pkgname-fpm.initd
+ $pkgname-fpm.logrotate
+ $pkgname-module.conf
+ disabled-tests.list
+ disabled-tests.ppc64le.list
+ disabled-tests.riscv64.list
+ disabled-tests.s390x.list
+ disabled-tests.x86.list
+ install-pear.patch
+ includedir.patch
+ sharedir.patch
+ $pkgname-fpm-version-suffix.patch
+ fix-tests-devserver.patch
+ fix-lfs64.patch
+ fix-s390x-test.patch
+ fix-icu74.patch
+ fix-curl.patch
+ fix-libxml-1.patch
+ fix-libxml-2.patch
+ "
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+_libdir="/usr/lib/$pkgname"
+_extension_dir="$_libdir/modules"
+_extension_confd="/etc/$pkgname/conf.d"
+
+_extensions="
+ bcmath
+ bz2
+ calendar
+ ctype
+ curl
+ dba
+ dom
+ enchant
+ exif
+ ffi
+ fileinfo
+ ftp
+ gd
+ gettext
+ gmp
+ iconv
+ imap
+ intl
+ ldap
+ mbstring
+ mysqli
+ mysqlnd
+ odbc
+ opcache
+ openssl
+ pcntl
+ pdo
+ pdo_dblib
+ pdo_mysql
+ pdo_odbc
+ pdo_pgsql
+ pdo_sqlite
+ pgsql
+ phar
+ posix
+ pspell
+ session
+ shmop
+ simplexml
+ snmp
+ soap
+ sodium
+ sockets
+ sqlite3
+ sysvmsg
+ sysvsem
+ sysvshm
+ tidy
+ tokenizer
+ xml
+ xmlreader
+ xmlwriter
+ xsl
+ zip
+ "
+for _ext in $_extensions; do
+ case "$_ext" in
+ phar) subpackages="$subpackages $pkgname-$_ext:$_ext";;
+ *) subpackages="$subpackages $pkgname-$_ext:_extension";;
+ esac
+done
+subpackages="$subpackages $pkgname-common::noarch"
+subpackages="$subpackages $pkgname-litespeed"
+
+# secfixes:
+# 8.1.28-r0:
+# - CVE-2024-1874
+# - CVE-2024-2756
+# - CVE-2024-3096
+# 8.1.16-r0:
+# - CVE-2023-0567
+# - CVE-2023-0568
+# - CVE-2023-0662
+# 8.1.14-r0:
+# - CVE-2022-31631
+# 8.1.12-r0:
+# - CVE-2022-31630
+# - CVE-2022-37454
+# 8.1.11-r0:
+# - CVE-2022-31628
+# - CVE-2022-31629
+# 8.1.6-r2:
+# - CVE-2022-31625
+# - CVE-2022-31626
+# 8.1.0-r0:
+# - CVE-2021-21707
+# 8.1.0_rc5-r0:
+# - CVE-2021-21703
+# 8.1.0_rc3-r0:
+# - CVE-2021-21706
+
+prepare() {
+ default_prepare
+
+ local vapi=$(sed -n '/#define PHP_API_VERSION/{s/.* //;p}' main/php.h)
+ if [ "$vapi" != "$_apiver" ]; then
+ error "Upstream API version is now $vapi. Expecting $_apiver"
+ error "After updating _apiver, all 3rd-party extensions must be rebuilt."
+ return 1
+ fi
+
+ # https://bugs.php.net/63362 - Not needed but installed headers.
+ # Drop some Windows specific headers to avoid installation,
+ # before build to ensure they are really not needed.
+ rm -f TSRM/tsrm_win32.h \
+ TSRM/tsrm_config.w32.h \
+ Zend/zend_config.w32.h \
+ ext/mysqlnd/config-win.h \
+ ext/standard/winver.h
+
+ # Fix some bogus permissions.
+ find . -name '*.[ch]' -exec chmod 644 {} \;
+
+ # Remove failing tests includng arch specific ones.
+ local tests="disabled-tests.list disabled-tests.$CARCH.list"
+ local file; for file in $tests; do [ -f "$srcdir"/$file ] && \
+ sed -n '/^[^#]/p' "$srcdir"/$file | while read -r item; do
+ rm -r $item # do it in this way to apply globbing...
+ done
+ done
+
+ autoconf
+}
+
+# Notes:
+# * gd-jis-conv breaks any non-latin font rendering (vakartel).
+# * libxml cannot be build as shared.
+# * -D_LARGEFILE_SOURCE and -D_FILE_OFFSET_BITS=64 (https://www.php.net/manual/en/intro.filesystem.php andypost)
+# * -O2 optimize for apps usage (andypost)
+_build() {
+ local _extra='-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'
+ export CFLAGS="${CFLAGS/-Os/-O2} $_extra"
+ export CXXFLAGS="${CXXFLAGS/-Os/-O2} $_extra"
+
+ local without_pcre_jit
+ [ "$CARCH" = "s390x" ] && without_pcre_jit="--without-pcre-jit"
+
+ case "$CARCH" in
+ arm*|aarch64|riscv64)
+ export CFLAGS="${CFLAGS/-fstack-clash-protection}"
+ export CXXFLAGS="${CXXFLAGS/-fstack-clash-protection}"
+ ;;
+ esac
+
+ export CC=clang
+ export CXX=clang++
+ EXTENSION_DIR=$_extension_dir ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --program-suffix=$_suffix \
+ --libdir=$_libdir \
+ --datadir=/usr/share/$pkgname \
+ --sysconfdir=/etc/$pkgname \
+ --localstatedir=/var \
+ --with-layout=GNU \
+ --with-pic \
+ --with-config-file-path=/etc/$pkgname \
+ --with-config-file-scan-dir=$_extension_confd \
+ --disable-rpath \
+ --disable-short-tags \
+ \
+ --enable-bcmath=shared \
+ --with-bz2=shared \
+ --enable-calendar=shared \
+ --enable-ctype=shared \
+ --with-curl=shared \
+ --enable-dba=shared \
+ --with-dbmaker=shared \
+ --with-gdbm \
+ --with-lmdb \
+ --enable-dom=shared \
+ --with-enchant=shared \
+ --enable-exif=shared \
+ --with-ffi=shared \
+ --enable-fileinfo=shared \
+ --enable-ftp=shared \
+ --enable-gd=shared \
+ --with-avif \
+ --with-freetype \
+ --with-jpeg \
+ --with-webp \
+ --with-xpm \
+ --disable-gd-jis-conv \
+ --with-gettext=shared \
+ --with-gmp=shared \
+ --with-iconv=shared \
+ --with-imap=shared \
+ --with-imap-ssl \
+ --enable-intl=shared \
+ --with-ldap=shared \
+ --with-ldap-sasl \
+ --with-libedit \
+ --with-libxml \
+ --enable-mbstring=shared \
+ --with-mysqli=shared,mysqlnd \
+ --with-mysql-sock=/run/mysqld/mysqld.sock \
+ --enable-mysqlnd=shared \
+ --enable-opcache=shared \
+ --with-openssl=shared \
+ --with-kerberos \
+ --with-system-ciphers \
+ --with-password-argon2 \
+ --enable-pcntl=shared \
+ --with-external-pcre \
+ $without_pcre_jit \
+ --enable-pdo=shared \
+ --with-pdo-dblib=shared,/usr \
+ --with-pdo-mysql=shared,mysqlnd \
+ --with-pdo-odbc=shared,unixODBC,/usr \
+ --with-pdo-pgsql=shared \
+ --with-pdo-sqlite=shared \
+ --with-pgsql=shared \
+ --enable-phar=shared \
+ --enable-posix=shared \
+ --with-pspell=shared \
+ --without-readline \
+ --enable-session=shared \
+ --enable-shmop=shared \
+ --enable-simplexml=shared \
+ --with-snmp=shared \
+ --enable-soap=shared \
+ --with-sodium=shared \
+ --enable-sockets=shared \
+ --with-sqlite3=shared \
+ --enable-sysvmsg=shared \
+ --enable-sysvsem=shared \
+ --enable-sysvshm=shared \
+ --with-tidy=shared \
+ --enable-tokenizer=shared \
+ --with-unixODBC=shared,/usr \
+ --enable-xml=shared \
+ --enable-xmlreader=shared \
+ --enable-xmlwriter=shared \
+ --with-xsl=shared \
+ --with-zip=shared \
+ --with-zlib \
+ --enable-zend-test=shared \
+ "$@"
+ rm -f modules/* # clean-up possible previous build
+ make
+}
+
+build() {
+ # build phpcgi and apache2 SAPIs first
+ # because not fixed https://bugs.php.net/bug.php?id=52419
+ # apache2 module
+ _build --disable-phpdbg \
+ --disable-cli \
+ --with-apxs2
+ mv libs/libphp.so sapi/apache2handler/mod_php$_suffix.so
+
+ local enable_litespeed
+ [ -z ${subpackages##*-litespeed*} ] && enable_litespeed=--enable-litespeed
+ # cgi, cli, fpm, embed, phpdbg, pear/pecl, litespeed
+ _build --enable-phpdbg \
+ --with-pear=/usr/share/$pkgname \
+ --enable-fpm \
+ --with-fpm-acl \
+ $enable_litespeed \
+ --enable-embed
+}
+
+check() {
+ # PHP is so stupid that it's not able to resolve dependencies
+ # between extensions and load them in correct order, so we must
+ # help it...
+ # opcache is Zend extension, it's handled specially in Makefile
+ local php_modules=$(_extensions_by_load_order \
+ | grep -vx opcache \
+ | xargs -n 1 printf "'$builddir/modules/%s.la' ")
+ sed -i "/^PHP_TEST_SHARED_EXTENSIONS/,/extension=/ \
+ s|in \$(PHP_MODULES)\"*|in $php_modules|" Makefile
+
+ # XXX: Few tests fail on the named platforms.
+ # Ignore it for now and continue build even on test failures.
+ local allow_fail='no'
+ case "$CARCH" in
+ no ) allow_fail='yes'
+ esac
+
+ TESTS="${TESTS:- --show-diff }" NO_INTERACTION=1 REPORT_EXIT_STATUS=1 \
+ SKIP_SLOW_TESTS=1 SKIP_ONLINE_TESTS=1 TEST_TIMEOUT=10 \
+ SKIP_PERF_SENSITIVE=1 \
+ TZ='' LANG='' LC_ALL='' TEST_FPM_EXTENSION_DIR=modules \
+ TRAVIS=true SKIP_IO_CAPTURE_TESTS=1 \
+ make test || [ "$allow_fail" = yes ]
+
+ echo 'NOTE: We have skipped quite a lot tests, see disabled-tests.list.'
+}
+
+package() {
+ make -j1 INSTALL_ROOT="$pkgdir" install
+ rm "$pkgdir"/usr/lib/php$_suffix/modules/zend_test.so
+
+ install -Dm644 php.ini-production "$pkgdir"/etc/$pkgname/php.ini
+
+ local file; for file in pear peardev pecl; do
+ sed -i -e "s|/usr/bin/php|/usr/bin/php$_suffix|g" \
+ -e "s|PHP=php|PHP=php$_suffix|" \
+ "$pkgdir"/usr/bin/$file
+ done
+
+ find "$pkgdir" -name '.*' -print0 | xargs -0 rm -rf
+ rmdir "$pkgdir"/var/run
+
+ if [ "$_default_php" = yes ]; then
+ ln -s php$_suffix "$pkgdir"/usr/bin/php
+ fi
+}
+
+dev() {
+ default_dev
+ replaces="php-dev"
+
+ amove \
+ usr/bin/php-config$_suffix \
+ usr/bin/phpize$_suffix \
+ $_libdir/build
+
+ if [ "$_default_php" = yes ]; then
+ ln -s phpize$_suffix "$subpkgdir"/usr/bin/phpize
+ ln -s php-config$_suffix "$subpkgdir"/usr/bin/php-config
+ fi
+}
+
+doc() {
+ default_doc
+
+ cd "$builddir"
+
+ mkdir -p "$subpkgdir"/usr/share/doc/$pkgname
+ cp CODING_STANDARDS.md EXTENSIONS LICENSE NEWS \
+ README* UPGRADING* \
+ "$subpkgdir"/usr/share/doc/$pkgname/
+}
+
+apache2() {
+ pkgdesc="PHP$_suffix Module for Apache2"
+ depends="$depends apache2"
+ provides="php-apache2"
+
+ install -D -m 755 "$builddir"/sapi/apache2handler/mod_php$_suffix.so \
+ "$subpkgdir"/usr/lib/apache2/mod_php$_suffix.so
+
+ install -D -m 644 "$srcdir"/php$_suffix-module.conf \
+ "$subpkgdir"/etc/apache2/conf.d/php$_suffix-module.conf
+}
+
+phpdbg() {
+ pkgdesc="Interactive PHP$_suffix debugger"
+ provides="php-phpdbg"
+
+ amove usr/bin/phpdbg$_suffix
+
+ if [ "$_default_php" = yes ]; then
+ ln -s phpdbg$_suffix "$subpkgdir"/usr/bin/phpdbg
+ fi
+}
+
+embed() {
+ pkgdesc="PHP$_suffix Embedded Library"
+ provides="php-embed"
+
+ mkdir -p "$subpkgdir"/usr/lib
+ mv "$pkgdir"/usr/lib/libphp.so "$subpkgdir"/usr/lib/libphp$_suffix.so
+ # we do this so it matches the name, otherwise SONAME libphp.so conflicts
+ patchelf --set-soname libphp$_suffix.so "$subpkgdir"/usr/lib/libphp$_suffix.so
+}
+
+litespeed() {
+ pkgdesc="PHP$_suffix LiteSpeed SAPI"
+ provides="php-lightspeed"
+
+ amove usr/bin/lsphp$_suffix
+
+ if [ "$_default_php" = yes ]; then
+ ln -s lsphp$_suffix "$subpkgdir"/usr/bin/lsphp
+ fi
+}
+
+cgi() {
+ pkgdesc="PHP$_suffix Common Gateway Interface"
+ provides="php-cgi"
+
+ amove usr/bin/php-cgi$_suffix
+
+ if [ "$_default_php" = yes ]; then
+ ln -s php-cgi$_suffix "$subpkgdir"/usr/bin/php-cgi
+ fi
+}
+
+fpm() {
+ pkgdesc="PHP$_suffix FastCGI Process Manager"
+ provides="php-fpm"
+
+ amove etc/$pkgname/php-fpm* usr/sbin var
+ amove usr/share/$pkgname/fpm
+
+ local file; for file in php-fpm.conf php-fpm.d/www.conf; do
+ mv "$subpkgdir"/etc/$pkgname/$file.default \
+ "$subpkgdir"/etc/$pkgname/$file
+ done
+
+ install -D -m 755 "$srcdir"/$pkgname-fpm.initd \
+ "$subpkgdir"/etc/init.d/php-fpm$_suffix
+
+ install -D -m 644 "$srcdir"/$pkgname-fpm.logrotate \
+ "$subpkgdir"/etc/logrotate.d/php-fpm$_suffix
+
+ mkdir -p "$subpkgdir"/var/log/$pkgname
+}
+
+pear() {
+ pkgdesc="PHP$_suffix Extension and Application Repository"
+ depends="$pkgname $pkgname-xml"
+ provides="php-pear"
+
+ mkdir -p "$subpkgdir"/usr/bin
+ local file; for file in pecl pear peardev; do
+ mv "$pkgdir"/usr/bin/$file "$subpkgdir"/usr/bin/$file$_suffix
+ if [ "$_default_php" = yes ]; then
+ ln -s $file$_suffix "$subpkgdir"/usr/bin/$file
+ fi
+ done
+
+ amove etc/$pkgname/pear.conf usr/share
+}
+
+common() {
+ pkgdesc="$pkgdesc (common config)"
+ provides="php-common $pkgname-zlib php-zlib $pkgname-json php-json" # for backward compatibility
+ depends=""
+
+ amove etc
+ mkdir -p "$subpkgdir"/$_extension_confd "$subpkgdir"/$_extension_dir
+}
+
+phar() {
+ _extension
+
+ mkdir -p "$subpkgdir"/usr/bin
+ mv "$pkgdir"/usr/bin/phar$_suffix.phar "$subpkgdir"/usr/bin/phar.phar$_suffix
+
+ rm "$pkgdir"/usr/bin/phar$_suffix
+ ln -s phar.phar$_suffix "$subpkgdir"/usr/bin/phar$_suffix
+
+ if [ "$_default_php" = yes ]; then
+ ln -s phar.phar$_suffix "$subpkgdir"/usr/bin/phar.phar
+ ln -s phar.phar$_suffix "$subpkgdir"/usr/bin/phar
+ fi
+}
+
+_extension() {
+ local extname="${subpkgname#"$pkgname"-}"
+ local extdepends="$(eval "echo \$_depends_$extname")"
+ local extdesc="$(head -n1 "$builddir"/ext/$extname/CREDITS 2>/dev/null ||:)"
+ pkgdesc="PHP$_suffix extension: ${extdesc:-$extname}"
+ provides="php-$extname"
+
+ : "${extdepends:=$(_resolve_extension_deps "$extname")}"
+ depends="$depends $extdepends"
+
+ local load_order=$(_extension_load_order "$extname")
+
+ # extension prefix
+ local prefix=
+ [ "$extname" != "opcache" ] || prefix="zend_"
+
+ amove $_extension_dir/$extname.so
+
+ mkdir -p "$subpkgdir"/$_extension_confd
+ echo "${prefix}extension=$extname" \
+ > "$subpkgdir"/$_extension_confd/"$(printf %02d $load_order)"_$extname.ini
+}
+
+# Resolves dependencies of the given extension name (without $pkgname- prefix)
+# on other extensions in $_extensions and prints them with $pkgname- prefix.
+_resolve_extension_deps() {
+ local name="$1"
+
+ # We use config.w32 just because it's more accurate than config.m4.
+ local config="$builddir/ext/$name/config.w32"
+ [ -f "$config" ] || return 0
+
+ sed -En "s/.*ADD_EXTENSION_DEP\('$name', ([^)]+)\).*/\1/p" "$config" \
+ | tr -d "'," | tr ' ' '\n' \
+ | sort -u \
+ | while read -r dep; do
+ if echo "$_extensions" | grep -qw "$dep"; then
+ echo "$pkgname-$dep"
+ fi
+ done
+}
+
+# Prints a load order (0-based integer) for the given extension name. Extension
+# with lower load order should be loaded before exts with higher load order.
+# It's based on number of dependencies of the extension (with exception for
+# "imap"), which is flawed, but simple and good enough for now.
+_extension_load_order() {
+ local name="$1"
+ local deps=$(eval "echo \$_depends_$name")
+
+ case "$name" in
+ # XXX: This must be loaded after recode, even though it does
+ # not depend on it. So we must use this hack...
+ *) echo "${deps:=$(_resolve_extension_deps $name)}" | wc -w;;
+ esac
+}
+
+# Prints $_extensions sorted by load order and name.
+_extensions_by_load_order() {
+ local deps list name
+
+ for name in $_extensions; do
+ list="$list $(_extension_load_order $name);$name"
+ done
+ printf '%s\n' $list | sort -t ';' -k 1 | sed -E 's/\d+;//'
+}
+
+sha512sums="
+d56ecac164e00e9514cd3c6c8c453598b323118dc7d7ae7cc14ba0847d50a2e455b2391f52e0d81af325b02d8f73a7d2ed66bf66d068dac4a496d777c83a398f php-8.1.28.tar.xz
+7dc9f55b12998355a6a6b5cf277285058e66928215f8d0109448d06fb696a74c674f83d18a81bf03f4f0bee06e77979e9a4ee5c81c7fdebff91447f8e697cc69 php81-fpm.initd
+98bb27864f1ece80fef18cb286885c8c18de8f9d1076507b6a24df07e33aa400623b90401375e7ebe55d9ff802069d281642ec7d3a58ef8727121aabe7643241 php81-fpm.logrotate
+2e3b22b4adbc81c6120757095c89e56642f3e8bf7724af2926f2667759ef082cdcff416334aad87f704a61fcb5b2c11830f17759ac771a3dd4e47d9bc5c7cf72 php81-module.conf
+20e5cd0cfd76265f168240891f2b774181947d623467ed729199e7750fe1613592a152eeb452cab8e8822e79ed0a1c3ec686e21e74fd8097af69b89db53e2f44 disabled-tests.list
+65676dea36ff8823dd1e8d7165e48c2719133ca8cf5287d6051f35f70e4bc57f1c93fe9b0196c9307c072187deb08409731f1eef281387ae4367655472f882d3 disabled-tests.ppc64le.list
+378db19d08cec29c4e56f2c82ee0a99b31e5ec3eaac56c40597de442da36a4d7efcc7551577e37a6ca22649d612d42714c93e16e3f7579aeb85a44090bde80fc disabled-tests.riscv64.list
+54930246f22034e6a73020aa95915d14b2a2fcfe121df57eb17fdc663aceeb94c5c4b1800347149a8fb4eaa0edda4224a11133bdb7e0cd34a2065a2de121db0d disabled-tests.s390x.list
+6d3bc15982e13ec4c065b6445e07818d589f2cc677147a57929d1739b3e6b119cc9be6a07d3a99bb5e989e47a62fa6047f967c3c962253845d4bab224b378db3 disabled-tests.x86.list
+ec206639d076ddac6c2d1db697a5428ed3be979157db39417af7fbe6ab837e8dc00315ae0e55aea4f92f45ca5827c88cc4933099fad9c962f029ca81bef779d7 install-pear.patch
+e88ad17895742b74019912ad45c90af74817d75d7e1f71bd3d4a180b5f710a25d3c73c7410394f415eee0f428a8c5a0ea3702009ef9d2bffdebdd5da748f8b9b includedir.patch
+8db38c523a8e0ed64298661d328372ea33ba0a56d23c023299ad94ee43a6db8c49393efcb679e74bbb936383dcacebdfb440bbacdf74068d78d071dd3f795101 sharedir.patch
+f43ab399c3b4a2b9a3a329acd32d9cbc690cad697dd0a0e87f3d654028b88af7dd1cd80cbf970c6fe95a44d9b24646640bb4cc9eba15f36afc171504f1060066 php81-fpm-version-suffix.patch
+1b64a7cef9e81387f955cb60ffa4e3d2277b4f6072e9328d779c0d447c202c8ee9dff0d8d8c34abc82c150311f51c4e9316a3b72a383ca6c9a6e683bc5b349a0 fix-tests-devserver.patch
+73ad23e675c336b7607ff99fc3a3ffdb381779411c5503ef5a353ad43607070d889e441800abc54080d6be42032e94c3884d05d3bfbc46e5dda93b5e10fc40f7 fix-lfs64.patch
+10c8da2e2ff24903c012b4df4f1fd7ed739429d0630260c398ed255cb45589ee170c29af09f5f57202a5fe37d4e82669196c813a5b916b7f2be2d46e9bfd1d85 fix-s390x-test.patch
+16d283ac2373442f2fbbca4968df92e0114454c7645a797f1f04af27e546293f3312d45aef049357057facd4fb62339ebfe7f59e65d4278910c4195d873955d1 fix-icu74.patch
+9154ea68ec28b83aaa25d2be9012fde5802872b0d97b6141fcddbf93ee86fddd2d1f0e14fe64942c2a5bc51089041659e8b09cce94c634cb1898f25cdf86ed61 fix-curl.patch
+6413bcd3542248974b737ecd0f01e28609b35cbc2fdb6b94b702035cb840b27d062a387c99e50abec66196beb908cacd1aa2b97feb0224266436a50dd0905d61 fix-libxml-1.patch
+d1722ee0429f9218886351f08fe728be3e2e0e65b9b886dd7bee2d7f0e08ffba97e0ba3d14f851c1c839d726916c45316681731891577f781129da0d05c75eea fix-libxml-2.patch
+"
diff --git a/testing/php81/disabled-tests.list b/testing/php81/disabled-tests.list
new file mode 100644
index 00000000000..26914cf0bb4
--- /dev/null
+++ b/testing/php81/disabled-tests.list
@@ -0,0 +1,190 @@
+#
+# Tests that we don't need to run
+#
+
+# Windows tests
+ext/standard/tests/file/windows_mb_path/*
+ext/standard/tests/file/*win32*.phpt
+ext/standard/tests/dir/*win32*.phpt
+ext/standard/tests/general_functions/*win32*.phpt
+ext/standard/tests/mail/*win32.phpt
+ext/standard/tests/streams/*win32.phpt
+ext/standard/tests/strings/*win32.phpt
+ext/phar/tests/*win32.phpt
+ext/readline/tests/*win32.phpt
+ext/sockets/tests/*win32.phpt
+
+# Require database or slow as dblib
+ext/mysqli/tests/*
+ext/odbc/tests/*
+ext/pdo/tests/*.phpt
+ext/pdo_dblib/tests/*
+ext/pdo_mysql/tests/*
+ext/pdo_odbc/tests/*
+ext/pdo_pgsql/tests/*
+ext/pgsql/tests/*
+
+#
+# Tests that fail and probably should not...
+#
+
+# Too many tests fail! Some of them bogus, some not.
+# THIS SHOULD BE REALLY FIXED!
+ext/openssl/tests/bug46127.phpt
+ext/openssl/tests/bug48182.phpt
+ext/openssl/tests/bug54992.phpt
+ext/openssl/tests/bug65538_001.phpt
+ext/openssl/tests/bug65538_003.phpt
+ext/openssl/tests/bug65729.phpt
+ext/openssl/tests/bug68265.phpt
+ext/openssl/tests/bug68879.phpt
+ext/openssl/tests/bug68920.phpt
+ext/openssl/tests/bug69215.phpt
+ext/openssl/tests/bug72333.phpt
+ext/openssl/tests/bug73072.phpt
+ext/openssl/tests/bug74159.phpt
+ext/openssl/tests/bug76705.phpt
+ext/openssl/tests/bug77390.phpt
+ext/openssl/tests/capture_peer_cert_001.phpt
+ext/openssl/tests/openssl_peer_fingerprint_basic.phpt
+ext/openssl/tests/peer_verification.phpt
+ext/openssl/tests/san_peer_matching.phpt
+ext/openssl/tests/session_meta_capture.phpt
+ext/openssl/tests/session_meta_capture_tlsv13.phpt
+ext/openssl/tests/sni_server.phpt
+ext/openssl/tests/sni_server_key_cert.phpt
+ext/openssl/tests/stream_crypto_flags_001.phpt
+ext/openssl/tests/stream_crypto_flags_002.phpt
+ext/openssl/tests/stream_crypto_flags_003.phpt
+ext/openssl/tests/stream_crypto_flags_004.phpt
+ext/openssl/tests/stream_security_level.phpt
+ext/openssl/tests/stream_verify_peer_name_001.phpt
+ext/openssl/tests/stream_verify_peer_name_002.phpt
+ext/openssl/tests/stream_verify_peer_name_003.phpt
+ext/openssl/tests/streams_crypto_method.phpt
+ext/openssl/tests/tls_min_v1.0_max_v1.1_wrapper.phpt
+ext/openssl/tests/tls_wrapper.phpt
+ext/openssl/tests/tls_wrapper_with_tls_v1.3.phpt
+ext/openssl/tests/tlsv1.0_wrapper.phpt
+ext/openssl/tests/tlsv1.1_wrapper.phpt
+ext/openssl/tests/tlsv1.2_wrapper.phpt
+ext/openssl/tests/tlsv1.3_wrapper.phpt
+
+# Needs to open tls socket
+ext/openssl/tests/bug62890.phpt
+ext/openssl/tests/san_ipv6_peer_matching.phpt
+
+# Broken tests, missing config.
+sapi/fpm/tests/socket-ipv4-fallback.phpt
+
+# Error messages in different order.
+sapi/cgi/tests/005.phpt
+
+# Not stable enchant-2 library support - 15/29
+ext/enchant/tests/broker_dict_exists.phpt
+ext/enchant/tests/broker_free_02.phpt
+ext/enchant/tests/broker_free_dict.phpt
+ext/enchant/tests/broker_request_dict.phpt
+ext/enchant/tests/broker_request_dict_01.phpt
+ext/enchant/tests/broker_set_ordering.phpt
+ext/enchant/tests/dict_add_to_personal.phpt
+ext/enchant/tests/dict_add_to_session.phpt
+ext/enchant/tests/dict_check.phpt
+ext/enchant/tests/dict_describe.phpt
+ext/enchant/tests/dict_get_error.phpt
+ext/enchant/tests/dict_is_in_session.phpt
+ext/enchant/tests/dict_quick_check_01.phpt
+ext/enchant/tests/dict_store_replacement.phpt
+ext/enchant/tests/dict_suggest.phpt
+
+# Wrong charset, conversion from `UTF-8' to `ASCII//TRANSLIT' is not allowed.
+ext/iconv/tests/iconv_basic_001.phpt
+
+# Wrong charset, conversion from `UTF-8' to `UTF-8//IGNORE' is not allowed.
+ext/iconv/tests/bug48147.phpt
+
+# stream_filter_append(): unable to create or locate filter "convert.iconv.ucs-2/utf-8//IGNORE"
+ext/iconv/tests/bug76249.phpt
+
+# Class 'Phar' not found.
+ext/opcache/tests/issue0115.phpt
+ext/opcache/tests/issue0149.phpt
+
+# Fails in CI - Insufficient privileges. https://gitlab.alpinelinux.org/alpine/aports/-/issues/12692#note_169663
+ext/pcntl/tests/pcntl_unshare_01.phpt
+ext/pcntl/tests/pcntl_unshare_02.phpt
+ext/pcntl/tests/pcntl_unshare_03.phpt
+ext/pcntl/tests/pcntl_unshare_04.phpt
+
+# Randomly fails.
+ext/pcntl/tests/002.phpt
+# Randomly fails on arm7
+ext/standard/tests/file/bug60120.phpt
+
+# Call to undefined function session_start().
+ext/session/tests/session_regenerate_id_cookie.phpt
+
+# Class 'SoapServer' not found.
+ext/soap/tests/bug73037.phpt
+
+# Incorrect results.
+ext/soap/tests/server009.phpt
+
+# Failing tests related to locale and/or iconv.
+ext/date/tests/009.phpt
+ext/iconv/tests/bug52211.phpt
+ext/intl/tests/bug67052.phpt
+ext/json/tests/bug41403.phpt
+ext/pcre/tests/ctype_back_to_c.phpt
+ext/pcre/tests/locales.phpt
+ext/soap/tests/bugs/bug39815.phpt
+ext/standard/tests/array/locale_sort.phpt
+ext/standard/tests/strings/setlocale_basic1.phpt
+ext/standard/tests/strings/setlocale_basic2.phpt
+ext/standard/tests/strings/setlocale_basic3.phpt
+ext/standard/tests/strings/setlocale_error.phpt
+ext/standard/tests/strings/setlocale_variation1.phpt
+ext/standard/tests/strings/setlocale_variation2.phpt
+ext/standard/tests/strings/setlocale_variation3.phpt
+ext/standard/tests/strings/setlocale_variation4.phpt
+ext/standard/tests/strings/setlocale_variation5.phpt
+ext/standard/tests/strings/sprintf_f_3.phpt
+ext/standard/tests/strings/strtoupper.phpt
+ext/standard/tests/strings/locale_independent_float_to_string.phpt
+tests/basic/consistent_float_string_casts.phpt
+tests/lang/bug30638.phpt
+Zend/tests/lc_ctype_inheritance.phpt
+
+# setlocale() does not affect result of nl_langinfo(CODESET) always returns UTF-8
+ext/fileinfo/tests/bug74170.phpt
+ext/standard/tests/strings/bug79986.phpt
+
+# float formatting
+ext/standard/tests/strings/printf_h_H.phpt
+
+
+#
+# Tests that fail for known reason and/or we don't need to worry about them
+#
+
+# Fails due to unsupported JP charsets.
+ext/iconv/tests/eucjp2iso2022jp.phpt
+ext/iconv/tests/iconv_mime_encode.phpt
+
+# Requires running SNMP server.
+ext/snmp/tests/*
+
+# Expects permissions on /etc to be 40755 (armhf)
+ext/standard/tests/file/006_error.phpt
+
+# Fails on armhf CI
+ext/hash/tests/hash-clone.phpt
+ext/hash/tests/hash_copy_001.phpt
+
+# openssl 1 and unstable
+ext/openssl/tests/openssl_error_string_basic.phpt
+
+# openssl 3.2.1
+ext/openssl/tests/openssl_error_string_basic_openssl3.phpt
+ext/openssl/tests/openssl_private_decrypt_basic.phpt
+ext/openssl/tests/openssl_x509_parse_basic.phpt
diff --git a/testing/php81/disabled-tests.ppc64le.list b/testing/php81/disabled-tests.ppc64le.list
new file mode 100644
index 00000000000..e2f4f874569
--- /dev/null
+++ b/testing/php81/disabled-tests.ppc64le.list
@@ -0,0 +1,3 @@
+Zend/tests/fibers/no-switch-force-close-finally.phpt
+Zend/tests/fibers/suspend-in-force-close-fiber-after-shutdown.phpt
+Zend/tests/fibers/throw-in-multiple-destroyed-fibers-after-shutdown.phpt
diff --git a/testing/php81/disabled-tests.riscv64.list b/testing/php81/disabled-tests.riscv64.list
new file mode 100644
index 00000000000..6648fa91f32
--- /dev/null
+++ b/testing/php81/disabled-tests.riscv64.list
@@ -0,0 +1,7 @@
+ext/dba/tests/bug78808.phpt
+ext/dba/tests/dba_lmdb.phpt
+ext/sockets/tests/bug63000.phpt
+ext/sockets/tests/socket_getopt.phpt
+ext/sockets/tests/mcast_ipv4_send.phpt
+ext/sockets/tests/mcast_ipv4_send_error.phpt
+ext/sockets/tests/mcast_ipv6_send.phpt
diff --git a/testing/php81/disabled-tests.s390x.list b/testing/php81/disabled-tests.s390x.list
new file mode 100644
index 00000000000..1d5deb0bbaa
--- /dev/null
+++ b/testing/php81/disabled-tests.s390x.list
@@ -0,0 +1,2 @@
+# https://gitlab.alpinelinux.org/alpine/aports/-/issues/15319
+ext/gd/tests/avif_decode_encode.phpt
diff --git a/testing/php81/disabled-tests.x86.list b/testing/php81/disabled-tests.x86.list
new file mode 100644
index 00000000000..703bd1953bb
--- /dev/null
+++ b/testing/php81/disabled-tests.x86.list
@@ -0,0 +1,8 @@
+ext/standard/tests/math/cos_basic.phpt
+ext/standard/tests/math/cos_variation.phpt
+ext/standard/tests/math/sin_basic.phpt
+ext/standard/tests/math/sin_variation.phpt
+ext/standard/tests/math/tan_variation.phpt
+
+# https://github.com/php/php-src/issues/12076
+ext/sqlite3/tests/sqlite3_bind_bug68849.phpt
diff --git a/testing/php81/fix-curl.patch b/testing/php81/fix-curl.patch
new file mode 100644
index 00000000000..c12313a3d10
--- /dev/null
+++ b/testing/php81/fix-curl.patch
@@ -0,0 +1,28 @@
+Patch-Source: https://github.com/php/php-src/commit/404803577db5e53209a5ae881c39c9092b7deacb
+From 404803577db5e53209a5ae881c39c9092b7deacb Mon Sep 17 00:00:00 2001
+From: Ayesh Karunaratne <ayesh@aye.sh>
+Date: Thu, 1 Feb 2024 02:03:55 +0700
+Subject: [PATCH] ext/curl: Fix failing tests due to string changes in libcurl
+ 8.6.0
+
+Upstream libcurl 8.6.0 contains a change[^1] that caused a test failure.
+This fixes it by updating the test's `EXPECTF` to use a regex to account for both string patterns.
+
+[^1]: https://github.com/curl/curl/commit/45cf4755e71f#diff-a8a54563608f8155973318f4ddb61d7328dab512b8ff2b5cc48cc76979d4204cL1683
+
+Closes GH-13293.
+---
+ NEWS | 2 ++
+ ext/curl/tests/bug77946.phpt | 2 +-
+ 2 files changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/ext/curl/tests/bug77946.phpt b/ext/curl/tests/bug77946.phpt
+index 8b1e70675554f..7b836187d6bfb 100644
+--- a/ext/curl/tests/bug77946.phpt
++++ b/ext/curl/tests/bug77946.phpt
+@@ -34,4 +34,4 @@ curl_multi_close($mh);
+ --EXPECTF--
+ int(1)
+ int(1)
+-string(%d) "Protocol %Sunknown%S not supported or disabled in libcurl"
++string(%d) "Protocol %Sunknown%S %rnot supported( or disabled in libcurl)?%r"
diff --git a/testing/php81/fix-icu74.patch b/testing/php81/fix-icu74.patch
new file mode 100644
index 00000000000..077aa0b9735
--- /dev/null
+++ b/testing/php81/fix-icu74.patch
@@ -0,0 +1,13 @@
+https://github.com/php/php-src/issues/12635
+
+diff --git a/ext/intl/tests/bug69398.phpt b/ext/intl/tests/bug69398.phpt
+index 02c4b7daef..d7633d54bb 100644
+--- a/ext/intl/tests/bug69398.phpt
++++ b/ext/intl/tests/bug69398.phpt
+@@ -13,5 +13,5 @@
+ echo IntlDateFormatter::formatObject ($date, array(IntlDateFormatter::SHORT, IntlDateFormatter::NONE), 'ko_KR'), "\n";
+ ?>
+ --EXPECT--
+-04/04/2015
++4/4/15
+ 15. 4. 4.
diff --git a/testing/php81/fix-lfs64.patch b/testing/php81/fix-lfs64.patch
new file mode 100644
index 00000000000..e50904ac8c9
--- /dev/null
+++ b/testing/php81/fix-lfs64.patch
@@ -0,0 +1,30 @@
+Patch-Source: https://github.com/php/php-src/issues/11678
+
+diff --git a/main/streams/cast.c b/main/streams/cast.c
+index 3bad65fbac..05cab34658 100644
+--- a/main/streams/cast.c
++++ b/main/streams/cast.c
+@@ -102,8 +102,7 @@ static ssize_t stream_cookie_writer(void *cookie, const char *buffer, size_t siz
+ return php_stream_write(((php_stream *)cookie), (char *)buffer, size);
+ }
+
+-# ifdef COOKIE_SEEKER_USES_OFF64_T
+-static int stream_cookie_seeker(void *cookie, off64_t *position, int whence)
++static int stream_cookie_seeker(void *cookie, off_t *position, int whence)
+ {
+
+ *position = php_stream_seek((php_stream *)cookie, (zend_off_t)*position, whence);
+@@ -113,13 +112,6 @@ static int stream_cookie_seeker(void *cookie, off64_t *position, int whence)
+ }
+ return 0;
+ }
+-# else
+-static int stream_cookie_seeker(void *cookie, zend_off_t position, int whence)
+-{
+-
+- return php_stream_seek((php_stream *)cookie, position, whence);
+-}
+-# endif
+
+ static int stream_cookie_closer(void *cookie)
+ {
diff --git a/testing/php81/fix-libxml-1.patch b/testing/php81/fix-libxml-1.patch
new file mode 100644
index 00000000000..e6b113e2887
--- /dev/null
+++ b/testing/php81/fix-libxml-1.patch
@@ -0,0 +1,67 @@
+Patch-Source: https://github.com/php/php-src/commit/0a39890c967aa57225bb6bdf4821aff7a3a3c082
+From 0a39890c967aa57225bb6bdf4821aff7a3a3c082 Mon Sep 17 00:00:00 2001
+From: Niels Dossche <7771979+nielsdos@users.noreply.github.com>
+Date: Fri, 1 Dec 2023 18:03:35 +0100
+Subject: [PATCH] Fix libxml2 2.12 build due to API breaks
+
+See https://github.com/php/php-src/actions/runs/7062192818/job/19225478601
+---
+ ext/libxml/libxml.c | 14 ++++++++++----
+ ext/soap/php_sdl.c | 2 +-
+ 2 files changed, 11 insertions(+), 5 deletions(-)
+
+diff --git a/ext/libxml/libxml.c b/ext/libxml/libxml.c
+index 22eb1901b8909..1de693892b7aa 100644
+--- a/ext/libxml/libxml.c
++++ b/ext/libxml/libxml.c
+@@ -472,7 +472,11 @@ static void _php_libxml_free_error(void *ptr)
+ xmlResetError((xmlErrorPtr) ptr);
+ }
+
+-static void _php_list_set_error_structure(xmlErrorPtr error, const char *msg)
++#if LIBXML_VERSION >= 21200
++static void _php_list_set_error_structure(const xmlError *error, const char *msg)
++#else
++static void _php_list_set_error_structure(xmlError *error, const char *msg)
++#endif
+ {
+ xmlError error_copy;
+ int ret;
+@@ -725,7 +729,11 @@ PHP_LIBXML_API void php_libxml_ctx_warning(void *ctx, const char *msg, ...)
+ va_end(args);
+ }
+
++#if LIBXML_VERSION >= 21200
++PHP_LIBXML_API void php_libxml_structured_error_handler(void *userData, const xmlError *error)
++#else
+ PHP_LIBXML_API void php_libxml_structured_error_handler(void *userData, xmlErrorPtr error)
++#endif
+ {
+ _php_list_set_error_structure(error, NULL);
+
+@@ -957,11 +965,9 @@ PHP_FUNCTION(libxml_use_internal_errors)
+ /* {{{ Retrieve last error from libxml */
+ PHP_FUNCTION(libxml_get_last_error)
+ {
+- xmlErrorPtr error;
+-
+ ZEND_PARSE_PARAMETERS_NONE();
+
+- error = xmlGetLastError();
++ const xmlError *error = xmlGetLastError();
+
+ if (error) {
+ object_init_ex(return_value, libxmlerror_class_entry);
+diff --git a/ext/soap/php_sdl.c b/ext/soap/php_sdl.c
+index 749f5a5685ec2..b731114775ad7 100644
+--- a/ext/soap/php_sdl.c
++++ b/ext/soap/php_sdl.c
+@@ -332,7 +332,7 @@ static void load_wsdl_ex(zval *this_ptr, char *struri, sdlCtx *ctx, int include)
+ sdl_restore_uri_credentials(ctx);
+
+ if (!wsdl) {
+- xmlErrorPtr xmlErrorPtr = xmlGetLastError();
++ const xmlError *xmlErrorPtr = xmlGetLastError();
+
+ if (xmlErrorPtr) {
+ soap_error2(E_ERROR, "Parsing WSDL: Couldn't load from '%s' : %s", struri, xmlErrorPtr->message);
diff --git a/testing/php81/fix-libxml-2.patch b/testing/php81/fix-libxml-2.patch
new file mode 100644
index 00000000000..ace186391f6
--- /dev/null
+++ b/testing/php81/fix-libxml-2.patch
@@ -0,0 +1,244 @@
+Patch-Source: https://github.com/php/php-src/commit/061058a9b1bbd90d27d97d79aebcf2b5029767b0
+From 061058a9b1bbd90d27d97d79aebcf2b5029767b0 Mon Sep 17 00:00:00 2001
+From: Niels Dossche <7771979+nielsdos@users.noreply.github.com>
+Date: Wed, 29 Nov 2023 20:49:29 +0100
+Subject: [PATCH] Test fixes for libxml2 2.12.0
+
+---
+ NEWS | 1 +
+ ext/dom/tests/DOMDocument_loadXML_error1.phpt | 4 +++
+ .../DOMDocument_loadXML_error1_gte2_12.phpt | 26 ++++++++++++++++
+ .../DOMDocument_loadXML_error2_gte2_11.phpt | 2 +-
+ .../DOMDocument_loadXML_error2_gte2_12.phpt | 30 +++++++++++++++++++
+ ext/dom/tests/DOMDocument_load_error1.phpt | 4 +++
+ .../DOMDocument_load_error1_gte2_12.phpt | 26 ++++++++++++++++
+ .../DOMDocument_load_error2_gte2_11.phpt | 2 +-
+ .../DOMDocument_load_error2_gte2_12.phpt | 30 +++++++++++++++++++
+ ext/xml/tests/bug81351.phpt | 4 +--
+ ext/xml/tests/xml_error_string_basic.phpt | 6 ++--
+ 11 files changed, 128 insertions(+), 7 deletions(-)
+ create mode 100644 ext/dom/tests/DOMDocument_loadXML_error1_gte2_12.phpt
+ create mode 100644 ext/dom/tests/DOMDocument_loadXML_error2_gte2_12.phpt
+ create mode 100644 ext/dom/tests/DOMDocument_load_error1_gte2_12.phpt
+ create mode 100644 ext/dom/tests/DOMDocument_load_error2_gte2_12.phpt
+
+diff --git a/ext/dom/tests/DOMDocument_loadXML_error1.phpt b/ext/dom/tests/DOMDocument_loadXML_error1.phpt
+index 14d99e4ed9ad9..2af3217bd6c6a 100644
+--- a/ext/dom/tests/DOMDocument_loadXML_error1.phpt
++++ b/ext/dom/tests/DOMDocument_loadXML_error1.phpt
+@@ -1,5 +1,9 @@
+ --TEST--
+ Test DOMDocument::loadXML() detects not-well formed XML
++--SKIPIF--
++<?php
++if (LIBXML_VERSION >= 21200) die('skip libxml2 test variant for version < 2.12');
++?>
+ --DESCRIPTION--
+ This test verifies the method detects an opening and ending tag mismatch
+ Environment variables used in the test:
+diff --git a/ext/dom/tests/DOMDocument_loadXML_error1_gte2_12.phpt b/ext/dom/tests/DOMDocument_loadXML_error1_gte2_12.phpt
+new file mode 100644
+index 0000000000000..e1ded0ffadd7f
+--- /dev/null
++++ b/ext/dom/tests/DOMDocument_loadXML_error1_gte2_12.phpt
+@@ -0,0 +1,26 @@
++--TEST--
++Test DOMDocument::loadXML() detects not-well formed XML
++--SKIPIF--
++<?php
++if (LIBXML_VERSION < 21200) die('skip libxml2 test variant for version >= 2.12');
++?>
++--DESCRIPTION--
++This test verifies the method detects an opening and ending tag mismatch
++Environment variables used in the test:
++- XML_FILE: the xml file to load
++- LOAD_OPTIONS: the second parameter to pass to the method
++- EXPECTED_RESULT: the expected result
++--CREDITS--
++Antonio Diaz Ruiz <dejalatele@gmail.com>
++--EXTENSIONS--
++dom
++--ENV--
++XML_FILE=/not_well_formed.xml
++LOAD_OPTIONS=0
++EXPECTED_RESULT=0
++--FILE_EXTERNAL--
++domdocumentloadxml_test_method.inc
++--EXPECTF--
++Warning: DOMDocument::load%r(XML){0,1}%r(): Opening and ending tag mismatch: title line 5 and book %s
++
++Warning: DOMDocument::load%r(XML){0,1}%r(): %rexpected '>'|Opening and ending tag mismatch: book line (4|5) and books%r %s
+diff --git a/ext/dom/tests/DOMDocument_loadXML_error2_gte2_11.phpt b/ext/dom/tests/DOMDocument_loadXML_error2_gte2_11.phpt
+index ff5ceb3fbed53..f52d3348138c5 100644
+--- a/ext/dom/tests/DOMDocument_loadXML_error2_gte2_11.phpt
++++ b/ext/dom/tests/DOMDocument_loadXML_error2_gte2_11.phpt
+@@ -2,7 +2,7 @@
+ Test DOMDocument::loadXML() detects not-well formed XML
+ --SKIPIF--
+ <?php
+-if (LIBXML_VERSION < 21100) die('skip libxml2 test variant for version >= 2.11');
++if (LIBXML_VERSION < 21100 || LIBXML_VERSION >= 21200) die('skip libxml2 test variant for version >= 2.11 && <= 2.12');
+ ?>
+ --DESCRIPTION--
+ This test verifies the method detects attributes values not closed between " or '
+diff --git a/ext/dom/tests/DOMDocument_loadXML_error2_gte2_12.phpt b/ext/dom/tests/DOMDocument_loadXML_error2_gte2_12.phpt
+new file mode 100644
+index 0000000000000..6a3ff5841f565
+--- /dev/null
++++ b/ext/dom/tests/DOMDocument_loadXML_error2_gte2_12.phpt
+@@ -0,0 +1,30 @@
++--TEST--
++Test DOMDocument::loadXML() detects not-well formed XML
++--SKIPIF--
++<?php
++if (LIBXML_VERSION < 21200) die('skip libxml2 test variant for version >= 2.12');
++?>
++--DESCRIPTION--
++This test verifies the method detects attributes values not closed between " or '
++Environment variables used in the test:
++- XML_FILE: the xml file to load
++- LOAD_OPTIONS: the second parameter to pass to the method
++- EXPECTED_RESULT: the expected result
++--CREDITS--
++Antonio Diaz Ruiz <dejalatele@gmail.com>
++--EXTENSIONS--
++dom
++--ENV--
++XML_FILE=/not_well_formed2.xml
++LOAD_OPTIONS=0
++EXPECTED_RESULT=0
++--FILE_EXTERNAL--
++domdocumentloadxml_test_method.inc
++--EXPECTF--
++Warning: DOMDocument::loadXML(): AttValue: " or ' expected in Entity, line: 4 in %s on line %d
++
++Warning: DOMDocument::loadXML(): internal error: xmlParseStartTag: problem parsing attributes in Entity, line: 4 in %s on line %d
++
++Warning: DOMDocument::loadXML(): Couldn't find end of Start Tag book line 4 in Entity, line: 4 in %s on line %d
++
++Warning: DOMDocument::loadXML(): Opening and ending tag mismatch: books line 3 and book in Entity, line: 7 in %s on line %d
+diff --git a/ext/dom/tests/DOMDocument_load_error1.phpt b/ext/dom/tests/DOMDocument_load_error1.phpt
+index f736b0a0e81c6..2da8c0cd18b4e 100644
+--- a/ext/dom/tests/DOMDocument_load_error1.phpt
++++ b/ext/dom/tests/DOMDocument_load_error1.phpt
+@@ -1,5 +1,9 @@
+ --TEST--
+ Test DOMDocument::load() detects not-well formed XML
++--SKIPIF--
++<?php
++if (LIBXML_VERSION >= 21200) die('skip libxml2 test variant for version < 2.12');
++?>
+ --DESCRIPTION--
+ This test verifies the method detects an opening and ending tag mismatch
+ Environment variables used in the test:
+diff --git a/ext/dom/tests/DOMDocument_load_error1_gte2_12.phpt b/ext/dom/tests/DOMDocument_load_error1_gte2_12.phpt
+new file mode 100644
+index 0000000000000..183c8406fdfc8
+--- /dev/null
++++ b/ext/dom/tests/DOMDocument_load_error1_gte2_12.phpt
+@@ -0,0 +1,26 @@
++--TEST--
++Test DOMDocument::load() detects not-well formed XML
++--SKIPIF--
++<?php
++if (LIBXML_VERSION < 21200) die('skip libxml2 test variant for version >= 2.12');
++?>
++--DESCRIPTION--
++This test verifies the method detects an opening and ending tag mismatch
++Environment variables used in the test:
++- XML_FILE: the xml file to load
++- LOAD_OPTIONS: the second parameter to pass to the method
++- EXPECTED_RESULT: the expected result
++--CREDITS--
++Antonio Diaz Ruiz <dejalatele@gmail.com>
++--EXTENSIONS--
++dom
++--ENV--
++XML_FILE=/not_well_formed.xml
++LOAD_OPTIONS=0
++EXPECTED_RESULT=0
++--FILE_EXTERNAL--
++domdocumentload_test_method.inc
++--EXPECTF--
++Warning: DOMDocument::load%r(XML){0,1}%r(): Opening and ending tag mismatch: title line 5 and book %s
++
++Warning: DOMDocument::load%r(XML){0,1}%r(): %rexpected '>'|Opening and ending tag mismatch: book line (4|5) and books%r %s
+diff --git a/ext/dom/tests/DOMDocument_load_error2_gte2_11.phpt b/ext/dom/tests/DOMDocument_load_error2_gte2_11.phpt
+index 32b6bf161142e..4d9f992b3bafd 100644
+--- a/ext/dom/tests/DOMDocument_load_error2_gte2_11.phpt
++++ b/ext/dom/tests/DOMDocument_load_error2_gte2_11.phpt
+@@ -2,7 +2,7 @@
+ Test DOMDocument::load() detects not-well formed
+ --SKIPIF--
+ <?php
+-if (LIBXML_VERSION < 21100) die('skip libxml2 test variant for version >= 2.11');
++if (LIBXML_VERSION < 21100 || LIBXML_VERSION >= 21200) die('skip libxml2 test variant for version >= 2.11 && <= 2.12');
+ ?>
+ --DESCRIPTION--
+ This test verifies the method detects attributes values not closed between " or '
+diff --git a/ext/dom/tests/DOMDocument_load_error2_gte2_12.phpt b/ext/dom/tests/DOMDocument_load_error2_gte2_12.phpt
+new file mode 100644
+index 0000000000000..4fadf41736124
+--- /dev/null
++++ b/ext/dom/tests/DOMDocument_load_error2_gte2_12.phpt
+@@ -0,0 +1,30 @@
++--TEST--
++Test DOMDocument::load() detects not-well formed
++--SKIPIF--
++<?php
++if (LIBXML_VERSION < 21200) die('skip libxml2 test variant for version >= 2.12');
++?>
++--DESCRIPTION--
++This test verifies the method detects attributes values not closed between " or '
++Environment variables used in the test:
++- XML_FILE: the xml file to load
++- LOAD_OPTIONS: the second parameter to pass to the method
++- EXPECTED_RESULT: the expected result
++--CREDITS--
++Antonio Diaz Ruiz <dejalatele@gmail.com>
++--EXTENSIONS--
++dom
++--ENV--
++XML_FILE=/not_well_formed2.xml
++LOAD_OPTIONS=0
++EXPECTED_RESULT=0
++--FILE_EXTERNAL--
++domdocumentload_test_method.inc
++--EXPECTF--
++Warning: DOMDocument::load(): AttValue: " or ' expected in %s on line %d
++
++Warning: DOMDocument::load(): internal error: xmlParseStartTag: problem parsing attributes in %s on line %d
++
++Warning: DOMDocument::load(): Couldn't find end of Start Tag book line 4 in %s on line %d
++
++Warning: DOMDocument::load(): Opening and ending tag mismatch: books line 3 and book in %s on line %d
+diff --git a/ext/xml/tests/bug81351.phpt b/ext/xml/tests/bug81351.phpt
+index 78aea041046f7..7380a9a937008 100644
+--- a/ext/xml/tests/bug81351.phpt
++++ b/ext/xml/tests/bug81351.phpt
+@@ -21,6 +21,6 @@ $code = xml_get_error_code($parser);
+ $error = xml_error_string($code);
+ echo "xml_parse returned $success, xml_get_error_code = $code, xml_error_string = $error\r\n";
+ ?>
+---EXPECT--
++--EXPECTF--
+ xml_parse returned 1, xml_get_error_code = 0, xml_error_string = No error
+-xml_parse returned 0, xml_get_error_code = 5, xml_error_string = Invalid document end
++%rxml_parse returned 0, xml_get_error_code = 5, xml_error_string = Invalid document end|xml_parse returned 0, xml_get_error_code = 77, xml_error_string = Tag not finished%r
+diff --git a/ext/xml/tests/xml_error_string_basic.phpt b/ext/xml/tests/xml_error_string_basic.phpt
+index 86dede1730f7e..a23ec8741d592 100644
+--- a/ext/xml/tests/xml_error_string_basic.phpt
++++ b/ext/xml/tests/xml_error_string_basic.phpt
+@@ -21,9 +21,9 @@ foreach ($xmls as $xml) {
+ xml_parser_free($xml_parser);
+ }
+ ?>
+---EXPECT--
+-int(5)
+-string(20) "Invalid document end"
++--EXPECTF--
++int(%r5|77%r)
++string(%d) %r"Invalid document end"|"Tag not finished"%r
+ int(47)
+ string(35) "Processing Instruction not finished"
+ int(57)
diff --git a/testing/php81/fix-s390x-test.patch b/testing/php81/fix-s390x-test.patch
new file mode 100644
index 00000000000..dc4b55a95d7
--- /dev/null
+++ b/testing/php81/fix-s390x-test.patch
@@ -0,0 +1,42 @@
+Patch-Source: https://github.com/php/php-src/commit/962c082a5b7b94f7a3779378e8ab83bedb4445ad
+From 962c082a5b7b94f7a3779378e8ab83bedb4445ad Mon Sep 17 00:00:00 2001
+From: Anatol Belski <ab@php.net>
+Date: Sun, 2 Oct 2022 19:54:34 +0200
+Subject: [PATCH] fileinfo: Fix expected values for test on s390x
+
+The peak memory usage increased by the blanket 1mb on s390 only.
+This is good to note but otherwise seems acceptable, so just
+adjusting the test is fine.
+
+Signed-off-by: Anatol Belski <ab@php.net>
+---
+ ext/fileinfo/tests/bug78987.phpt | 16 ++++++++--------
+ 1 file changed, 8 insertions(+), 8 deletions(-)
+
+diff --git a/ext/fileinfo/tests/bug78987.phpt b/ext/fileinfo/tests/bug78987.phpt
+index 617d8ca4412d..423ecb1b8517 100644
+--- a/ext/fileinfo/tests/bug78987.phpt
++++ b/ext/fileinfo/tests/bug78987.phpt
+@@ -11,14 +11,14 @@ $minSize = 128 * 1024;
+ $maxSize = 16 * 1024 * 1024;
+
+ $map = array(
+- 131072 => 9113600,
+- 262144 => 9113600,
+- 524288 => 10850304,
+- 1048576 => 11210752,
+- 2097152 => 13312000,
+- 4194304 => 17510400,
+- 8388608 => 23801856,
+- 16777216 => 36384768,
++ 131072 => 10055680,
++ 262144 => 10055680,
++ 524288 => 11898880,
++ 1048576 => 12152832,
++ 2097152 => 14254080,
++ 4194304 => 18452480,
++ 8388608 => 24743936,
++ 16777216 => 37326848,
+ );
+ for($size = $minSize; $size <= $maxSize; $size *= 2) {
+ $content = str_repeat('0', $size);
diff --git a/testing/php7/fix-tests-devserver.patch b/testing/php81/fix-tests-devserver.patch
index 44e4d43c972..5447980b98a 100644
--- a/testing/php7/fix-tests-devserver.patch
+++ b/testing/php81/fix-tests-devserver.patch
@@ -11,7 +11,7 @@ happens here...
--- a/run-tests.php
+++ b/run-tests.php
-@@ -2503,6 +2503,9 @@
+@@ -2563,6 +2563,9 @@
// Does the output match what is expected?
$output = preg_replace("/\r\n/", "\n", trim($out));
@@ -19,5 +19,5 @@ happens here...
+ $output = preg_replace("/^PHP [0-9.]+ Development Server started at .*\n\n?/m", "", $output);
+
/* when using CGI, strip the headers from the output */
- $headers = array();
+ $headers = [];
diff --git a/testing/php7/includedir.patch b/testing/php81/includedir.patch
index c8874df69c2..7c172a0b27a 100644
--- a/testing/php7/includedir.patch
+++ b/testing/php81/includedir.patch
@@ -5,7 +5,7 @@
#
-phpincludedir = $(includedir)/php
-+phpincludedir = $(includedir)/php7
++phpincludedir = $(includedir)/php81
phpbuilddir = $(libdir)/build
BUILD_FILES = \
@@ -13,7 +13,7 @@
+++ b/ext/pdo/Makefile.frag
@@ -1,4 +1,4 @@
-phpincludedir=$(prefix)/include/php
-+phpincludedir=$(prefix)/include/php7
++phpincludedir=$(prefix)/include/php81
PDO_HEADER_FILES= \
php_pdo.h \
@@ -24,7 +24,7 @@
version="@PHP_VERSION@"
vernum="@PHP_VERSION_ID@"
-include_dir="@includedir@/php"
-+include_dir="@includedir@/php7"
++include_dir="@includedir@/php81"
includes="-I$include_dir -I$include_dir/main -I$include_dir/TSRM -I$include_dir/Zend -I$include_dir/ext -I$include_dir/ext/date/lib"
ldflags="@PHP_LDFLAGS@"
libs="@EXTRA_LIBS@"
@@ -35,7 +35,7 @@
exec_prefix="`eval echo @exec_prefix@`"
phpdir="`eval echo @libdir@`/build"
-includedir="`eval echo @includedir@`/php"
-+includedir="`eval echo @includedir@`/php7"
++includedir="`eval echo @includedir@`/php81"
builddir="`pwd`"
SED="@SED@"
diff --git a/testing/php7/install-pear.patch b/testing/php81/install-pear.patch
index 831f60ab0c4..1c9f07f89d4 100644
--- a/testing/php7/install-pear.patch
+++ b/testing/php81/install-pear.patch
@@ -4,7 +4,7 @@
peardir=$(PEAR_INSTALLDIR)
+# help the built php to find xml extension so we can install pear
-+PEAR_INSTALL_XML_FLAGS = -d extension_dir="$(top_builddir)/modules" -d extension=xml.so
++PEAR_INSTALL_XML_FLAGS = -d extension="$(top_builddir)/modules/xml.so" -d extension="$(top_builddir)/modules/phar.so"
+
# Skip all php.ini files altogether
-PEAR_INSTALL_FLAGS = -n -dshort_open_tag=0 -dopen_basedir= -derror_reporting=1803 -dmemory_limit=-1 -ddetect_unicode=0
diff --git a/testing/php81/php81-fpm-version-suffix.patch b/testing/php81/php81-fpm-version-suffix.patch
new file mode 100644
index 00000000000..b73459dc707
--- /dev/null
+++ b/testing/php81/php81-fpm-version-suffix.patch
@@ -0,0 +1,79 @@
+--- a/sapi/fpm/fpm/fpm_conf.c
++++ b/sapi/fpm/fpm/fpm_conf.c
+@@ -1262,7 +1262,7 @@
+ }
+
+ if (!fpm_global_config.error_log) {
+- fpm_global_config.error_log = strdup("log/php-fpm.log");
++ fpm_global_config.error_log = strdup("log/php81/error.log");
+ }
+
+ #ifdef HAVE_SYSTEMD
+@@ -1273,7 +1273,7 @@
+
+ #ifdef HAVE_SYSLOG_H
+ if (!fpm_global_config.syslog_ident) {
+- fpm_global_config.syslog_ident = strdup("php-fpm");
++ fpm_global_config.syslog_ident = strdup("php-fpm81");
+ }
+
+ if (fpm_global_config.syslog_facility < 0) {
+@@ -1777,7 +1777,7 @@
+ if (fpm_globals.prefix == NULL) {
+ spprintf(&tmp, 0, "%s/php-fpm.conf", PHP_SYSCONFDIR);
+ } else {
+- spprintf(&tmp, 0, "%s/etc/php-fpm.conf", fpm_globals.prefix);
++ spprintf(&tmp, 0, "%s/etc/php81/php-fpm.conf", fpm_globals.prefix);
+ }
+
+ if (!tmp) {
+
+--- a/sapi/fpm/php-fpm.conf.in
++++ b/sapi/fpm/php-fpm.conf.in
+@@ -16,3 +16,3 @@
+ ; Default Value: none
+-;pid = run/php-fpm.pid
++;pid = run/php-fpm81.pid
+
+@@ -22,4 +22,4 @@
+ ; Note: the default prefix is @EXPANDED_LOCALSTATEDIR@
+-; Default Value: log/php-fpm.log
+-;error_log = log/php-fpm.log
++; Default Value: log/php81/error.log
++;error_log = log/php81/error.log
+
+@@ -35,4 +35,4 @@
+ ; which must suit common needs.
+-; Default Value: php-fpm
+-;syslog.ident = php-fpm
++; Default Value: php-fpm81
++;syslog.ident = php-fpm81
+
+--- a/sapi/fpm/www.conf.in
++++ b/sapi/fpm/www.conf.in
+@@ -273,7 +273,7 @@
+
+ ; The access log file
+ ; Default: not set
+-;access.log = log/$pool.access.log
++;access.log = log/php81/$pool.access.log
+
+ ; The access log format.
+ ; The following syntax is allowed
+@@ -337,7 +337,7 @@
+ ; The log file for slow requests
+ ; Default Value: not set
+ ; Note: slowlog is mandatory if request_slowlog_timeout is set
+-;slowlog = log/$pool.log.slow
++;slowlog = log/php81/$pool.slow.log
+
+ ; The timeout for serving a single request after which a PHP backtrace will be
+ ; dumped to the 'slowlog' file. A value of '0s' means 'off'.
+@@ -450,6 +450,6 @@
+ ; specified at startup with the -d argument
+ ;php_admin_value[sendmail_path] = /usr/sbin/sendmail -t -i -f www@my.domain.com
+ ;php_flag[display_errors] = off
+-;php_admin_value[error_log] = /var/log/fpm-php.www.log
++;php_admin_value[error_log] = /var/log/php81/$pool.error.log
+ ;php_admin_flag[log_errors] = on
+ ;php_admin_value[memory_limit] = 32M
diff --git a/testing/php81/php81-fpm.initd b/testing/php81/php81-fpm.initd
new file mode 100644
index 00000000000..87a54b27f6f
--- /dev/null
+++ b/testing/php81/php81-fpm.initd
@@ -0,0 +1,93 @@
+#!/sbin/openrc-run
+
+# If you want to run separate master process per pool, then create a symlink
+# to this runscript for each pool. In that mode, the php-fpm daemon is started
+# as nobody by default. You can override the user (and group) by declaring
+# variable "user" and optionally "group" in conf.d file, or in the $fpm_config
+# file (the former has precedence).
+
+: ${name:="PHP FastCGI Process Manager"}
+
+command="/usr/sbin/php-fpm81"
+command_background="yes"
+start_stop_daemon_args="--quiet"
+pidfile="/run/$RC_SVCNAME/php-fpm.pid"
+retry="SIGTERM/20"
+
+# configtest is here only for backward compatibility
+extra_commands="checkconfig configtest"
+extra_started_commands="reload reopen"
+description_checkconfig="Run php-fpm config check"
+description_reload="Gracefully reload workers and config"
+description_reopen="Reopen log files"
+
+required_files="$fpm_config"
+
+depend() {
+ need net
+ use apache2 lighttpd nginx
+}
+
+init_vars() {
+ # Defaults for single master process with multiple pools
+ if [ "$RC_SVCNAME" = "php-fpm81" ]; then
+ : ${fpm_config:="/etc/php81/php-fpm.conf"}
+ : ${user:="root"}
+ # Defaults for master process per pool
+ else
+ : ${fpm_config="/etc/php81/php-fpm.d/${RC_SVCNAME#php-fpm81.}.conf"}
+ : ${user:="$(conf_get user)"}
+ : ${user:="nobody"}
+ : ${group:="$(conf_get group)"}
+ fi
+ command_args="--nodaemonize --fpm-config $fpm_config"
+ start_stop_daemon_args="$start_stop_daemon_args
+ --user $user ${group:+"--group $group"}"
+}
+
+start_pre() {
+ checkconfig || return 1
+
+ # If unix socket is used (instead of TCP/IP), then ensure that the
+ # directory exists and has correct privileges.
+ local listen="$(conf_get listen)"
+ if [ "${listen:0:1}" = "/" ]; then
+ checkpath -d -o $user:$group "$(dirname "$listen")"
+ fi
+
+ checkpath -d "$(dirname "$pidfile")"
+}
+
+reload() {
+ ebegin "Reloading $name"
+ start-stop-daemon --signal USR2 --pidfile "$pidfile"
+ eend $?
+}
+
+reopen() {
+ ebegin "Reopening $name log files"
+ start-stop-daemon --signal USR1 --pidfile "$pidfile"
+ eend $?
+}
+
+checkconfig() {
+ init_vars
+ ebegin "Checking $fpm_config"
+
+ local out
+ out="$(su -s /bin/sh -c "$command --test --fpm-config $fpm_config" $user 2>&1)" || {
+ printf "%s\n" "$out"
+ eend 1 "failed, please correct errors above"
+ return 1
+ }
+}
+
+configtest() {
+ ewarn "configtest is deprecated, use checkconfig instead"
+ checkconfig
+}
+
+conf_get() {
+ local key="$1"
+ sed -nE "s/^${key}\s*=\s*\"?([^\";]+).*/\1/p" "$fpm_config" | head -n 1
+}
diff --git a/testing/php81/php81-fpm.logrotate b/testing/php81/php81-fpm.logrotate
new file mode 100644
index 00000000000..29f2a7d594b
--- /dev/null
+++ b/testing/php81/php81-fpm.logrotate
@@ -0,0 +1,13 @@
+/var/log/php81/*.log {
+ rotate 7
+ daily
+ missingok
+ notifempty
+ delaycompress
+ compress
+ dateext
+ sharedscripts
+ postrotate
+ /etc/init.d/php-fpm81 --ifstarted --quiet reopen
+ endscript
+}
diff --git a/testing/php81/php81-module.conf b/testing/php81/php81-module.conf
new file mode 100644
index 00000000000..b8b782b254e
--- /dev/null
+++ b/testing/php81/php81-module.conf
@@ -0,0 +1,13 @@
+LoadModule php_module modules/mod_php81.so
+
+DirectoryIndex index.php index.html
+
+<FilesMatch \.php$>
+ SetHandler application/x-httpd-php
+</FilesMatch>
+
+# Uncomment the following to allow .phps files to be handled by the php source filter,
+# and displayed as syntax-highlighted source code
+#<FilesMatch "\.phps$">
+# SetHandler application/x-httpd-php-source
+#</FilesMatch>
diff --git a/testing/php81/sharedir.patch b/testing/php81/sharedir.patch
new file mode 100644
index 00000000000..e780ccab000
--- /dev/null
+++ b/testing/php81/sharedir.patch
@@ -0,0 +1,11 @@
+--- a/php.ini-production
++++ b/php.ini-production
+@@ -742,7 +742,7 @@
+ ;;;;;;;;;;;;;;;;;;;;;;;;;
+
+ ; UNIX: "/path1:/path2"
+-;include_path = ".:/php/includes"
++include_path = ".:/usr/share/php81"
+ ;
+ ; Windows: "\path1;\path2"
+ ;include_path = ".;c:\php\includes"
diff --git a/testing/php82-pdlib/APKBUILD b/testing/php82-pdlib/APKBUILD
new file mode 100644
index 00000000000..62502bb7b09
--- /dev/null
+++ b/testing/php82-pdlib/APKBUILD
@@ -0,0 +1,47 @@
+# Contributor: goodspb <goodspb.luo@gmail.com>
+# Contributor: Adriaan Groenenboom <agboom@pm.me>
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php82-pdlib
+_extname=pdlib
+pkgver=1.1.0
+pkgrel=1
+pkgdesc="PHP 8.2 extension for Dlib"
+url="https://github.com/goodspb/pdlib"
+# x86, s390x: check fails
+# ppc64le: fails to build https://github.com/goodspb/pdlib/issues/19
+arch="all !x86 !s390x !ppc64le"
+license="MIT"
+_phpv=82
+_php=php$_phpv
+depends="$_php-common dlib"
+makedepends="dlib-dev $_php-dev $_php-bz2"
+source="php-$_extname-$pkgver.tar.gz::https://github.com/goodspb/$_extname/archive/v$pkgver.tar.gz"
+builddir="$srcdir/$_extname-$pkgver"
+
+build() {
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=php-config$_phpv
+ make
+}
+
+check() {
+ # Tests require bz2 extension which is not bundled
+ local _modules=/usr/lib/$_php/modules
+ make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test \
+ TESTS=--show-diff SKIP_ONLINE_TESTS=1 \
+ PHP_TEST_SHARED_EXTENSIONS=" \
+ -d extension=$_modules/bz2.so \
+ -d extension=modules/$_extname.so"
+ $_php -dextension=modules/$_extname.so --ri $_extname
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+ local _confdir="$pkgdir"/etc/$_php/conf.d
+ install -d $_confdir
+ echo "extension=$_extname" > $_confdir/$_extname.ini
+}
+
+sha512sums="
+a87316495c04e5ca9b8b6980f859b1e9b4cfccc9b9ad0ab5f83320f2e9bc2f92a006fe0fe9621b21a9755efdf719e533519dfc2319d437a5475e067d5e633661 php-pdlib-1.1.0.tar.gz
+"
diff --git a/testing/php82-pecl-apfd/APKBUILD b/testing/php82-pecl-apfd/APKBUILD
new file mode 100644
index 00000000000..6bc29e80f99
--- /dev/null
+++ b/testing/php82-pecl-apfd/APKBUILD
@@ -0,0 +1,38 @@
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php82-pecl-apfd
+_extname=apfd
+pkgver=1.0.3
+pkgrel=0
+pkgdesc="PHP 8.2 extension for always populate form data - PECL"
+url="https://pecl.php.net/package/apfd"
+arch="all"
+license="BSD-2-Clause"
+_phpv=82
+_php=php$_phpv
+depends="$_php-common"
+makedepends="$_php-dev"
+checkdepends="$_php-cgi"
+source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
+builddir="$srcdir/$_extname-$pkgver"
+
+build() {
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=php-config$_phpv
+ make
+}
+
+check() {
+ $_php -d extension="$builddir"/modules/$_extname.so --ri $_extname
+ make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+ local _confdir="$pkgdir"/etc/$_php/conf.d
+ mkdir -p $_confdir
+ echo "extension=$_extname" > $_confdir/$_extname.ini
+}
+
+sha512sums="
+1290594de5d2992cb2d46308ee5c3f44d30dc478afc60ce38f1bc3215c56fa3f396e6a8a90ed9288d4c5c61e8f8bdf77c682bfa0d83494647c61e0920048ea59 php-pecl-apfd-1.0.3.tgz
+"
diff --git a/testing/php82-pecl-excimer/APKBUILD b/testing/php82-pecl-excimer/APKBUILD
new file mode 100644
index 00000000000..1657b60af61
--- /dev/null
+++ b/testing/php82-pecl-excimer/APKBUILD
@@ -0,0 +1,37 @@
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php82-pecl-excimer
+_extname=excimer
+pkgver=1.2.1
+pkgrel=0
+pkgdesc="Interrupting timer and low-overhead sampling profiler PHP 8.2 - PECL"
+url="https://pecl.php.net/package/excimer"
+arch="all"
+license="Apache-2.0"
+_phpv=82
+_php=php$_phpv
+depends="$_php-common"
+makedepends="$_php-dev"
+source="php-pecl-$_extname-$pkgver.tar.gz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
+builddir="$srcdir"/$_extname-$pkgver
+
+build() {
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=/usr/bin/php-config$_phpv
+ make
+}
+
+check() {
+ make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
+ $_php -d extension=modules/$_extname.so --ri $_extname
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+ local _confdir="$pkgdir"/etc/$_php/conf.d
+ install -d $_confdir
+ echo "extension=$_extname" > $_confdir/$_extname.ini
+}
+
+sha512sums="
+a5616fd1897342c0dc59cf8551ed498b88520e66b9c2a2e031df670c447c42243946ed1c2f0b1171bcb2be9777a8796d4caa4fb7c636f5d6fad03a62509ce3fd php-pecl-excimer-1.2.1.tar.gz
+"
diff --git a/testing/php82-pecl-immutable_cache/APKBUILD b/testing/php82-pecl-immutable_cache/APKBUILD
new file mode 100644
index 00000000000..11f85f5bfce
--- /dev/null
+++ b/testing/php82-pecl-immutable_cache/APKBUILD
@@ -0,0 +1,39 @@
+# Contributor: Andy Postnikov <apostnikov@gmail.com>
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+
+pkgname=php82-pecl-immutable_cache
+_extname=immutable_cache
+pkgver=6.1.0
+pkgrel=0
+pkgdesc="PHP 8.2 extension shared memory cache of immutable values - PECL"
+url="https://pecl.php.net/package/immutable_cache"
+arch="all"
+license="PHP-3.01"
+_phpv=82
+_php=php$_phpv
+depends="$_php-common"
+makedepends="$_php-dev"
+source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
+builddir="$srcdir"/$_extname-$pkgver
+
+build() {
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=php-config$_phpv
+ make
+}
+
+check() {
+ make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
+ $_php -dextension=modules/$_extname.so --ri $_extname
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+ local _confdir="$pkgdir"/etc/$_php/conf.d
+ install -d $_confdir
+ echo "extension=$_extname" > $_confdir/$_extname.ini
+}
+
+sha512sums="
+7e3c8cc0bd5f7bbb94adf676d598cc0258d2f105cb56aeb355cb94c955d10d74520f6444f8123d9a7c579663e6e3510f0260b3450fa83d283a30972cce119aff php-pecl-immutable_cache-6.1.0.tgz
+"
diff --git a/testing/php82-pecl-jsmin/APKBUILD b/testing/php82-pecl-jsmin/APKBUILD
new file mode 100644
index 00000000000..1097cb17546
--- /dev/null
+++ b/testing/php82-pecl-jsmin/APKBUILD
@@ -0,0 +1,51 @@
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php82-pecl-jsmin
+_extname=jsmin
+pkgver=3.0.0
+pkgrel=0
+_jqver=2.1.3
+pkgdesc="PHP 8.2 extension for minifying JavaScript - PECL"
+url="https://pecl.php.net/package/jsmin"
+arch="all !ppc64le" # test fails on builder
+license="PHP-3.01"
+_phpv=82
+_php=php$_phpv
+depends="$_php-common"
+makedepends="$_php-dev"
+source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz
+ jquery-$_jqver.js::https://github.com/sqmk/pecl-jsmin/raw/v$pkgver/tests/data/jquery-$_jqver.js
+ fix-php8.patch
+ fix-tests.patch
+ "
+builddir="$srcdir/$_extname-$pkgver"
+
+build() {
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=/usr/bin/php-config$_phpv
+ make
+}
+
+check() {
+ mkdir -p tests/data
+ cp "$srcdir"/jquery-$_jqver.js tests/data/
+
+ case "$CARCH" in
+ aarch64|x86_64) rm tests/call-multiple-times.phpt ;;
+ esac
+ $_php -dextension=modules/$_extname.so --ri $_extname
+ make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS='--show-diff '
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+ local _confdir="$pkgdir"/etc/$_php/conf.d
+ install -d $_confdir
+ echo "extension=$_extname" > $_confdir/$_extname.ini
+}
+
+sha512sums="
+a465ae024a49bb8ac20463efc6b2546021806c2c43053f42c7ebfea4924b9b647b6e7c0c673102e12ecd8b693666441dc07203edef216eee958fa62f73056ea6 php-pecl-jsmin-3.0.0.tgz
+b8eb1a740c63feaab8ac24d87f39f4cfe263694c972f4978b9f0e3092f912a722596fd094dd637d22f03816617e13210bf11fad9a545dbb0423dc821c827081e jquery-2.1.3.js
+72f4ea4aad457d1a557e05ff8457a689ea75419e414b0893c2bdf5d7216d70b7c26a4993e3c9fa97de3409d080b3cf2a5bd2f0c4b050854c02f08ac592da1f85 fix-php8.patch
+e44a2615d98d786e0188d3880b41f267dab2fa215fb17cd37b17f8cc499bee7dd9e4fe1def4707dbd6769fa40ba2dbf7895ba3544db427a7d851f69a515fa83c fix-tests.patch
+"
diff --git a/testing/php82-pecl-jsmin/fix-php8.patch b/testing/php82-pecl-jsmin/fix-php8.patch
new file mode 100644
index 00000000000..c8be3069563
--- /dev/null
+++ b/testing/php82-pecl-jsmin/fix-php8.patch
@@ -0,0 +1,87 @@
+From 3e49feb8362f14d6f13d79c9533edd900bbf1d21 Mon Sep 17 00:00:00 2001
+From: Qiangjun Ran <ranqiangjun@gmail.com>
+Date: Tue, 8 Jun 2021 14:43:34 +0800
+Subject: [PATCH] PHP 8 support
+
+Patch-Source: https://github.com/sqmk/pecl-jsmin/pull/59
+---
+ jsmin.c | 8 ++++----
+ jsmin.h | 4 ++--
+ php_jsmin.c | 6 +++---
+ 3 files changed, 9 insertions(+), 9 deletions(-)
+
+diff --git a/jsmin.c b/jsmin.c
+index 2744aef..773dc09 100644
+--- a/jsmin.c
++++ b/jsmin.c
+@@ -34,7 +34,7 @@ SOFTWARE.
+ */
+
+ static jsmin_obj*
+-new_jsmin_obj(char *javascript TSRMLS_DC)
++new_jsmin_obj(char *javascript)
+ {
+ jsmin_obj *jmo = ecalloc(1, sizeof(jsmin_obj));
+ jmo->javascript = javascript;
+@@ -48,7 +48,7 @@ new_jsmin_obj(char *javascript TSRMLS_DC)
+ /* free_jsmin_obj -- frees up memory on struct
+ */
+ void
+-free_jsmin_obj(jsmin_obj *jmo TSRMLS_DC)
++free_jsmin_obj(jsmin_obj *jmo)
+ {
+ smart_string_free(&jmo->buffer);
+ efree(jmo);
+@@ -250,9 +250,9 @@ jsmin_action(int d, jsmin_obj *jmo)
+ */
+
+ jsmin_obj*
+-jsmin(char *javascript TSRMLS_DC)
++jsmin(char *javascript)
+ {
+- jsmin_obj *jmo = new_jsmin_obj(javascript TSRMLS_CC);
++ jsmin_obj *jmo = new_jsmin_obj(javascript);
+
+ jsmin_action(3, jmo);
+ while (jmo->theA != 0) {
+diff --git a/jsmin.h b/jsmin.h
+index 317b90b..0bda630 100644
+--- a/jsmin.h
++++ b/jsmin.h
+@@ -25,7 +25,7 @@ enum error_codes {
+ PHP_JSMIN_ERROR_UNTERMINATED_REGEX
+ };
+
+-extern jsmin_obj* jsmin(char *javascript TSRMLS_DC);
+-extern void free_jsmin_obj(jsmin_obj *jmo TSRMLS_DC);
++extern jsmin_obj* jsmin(char *javascript);
++extern void free_jsmin_obj(jsmin_obj *jmo);
+
+ #endif
+diff --git a/php_jsmin.c b/php_jsmin.c
+index a9783d4..6cc034a 100644
+--- a/php_jsmin.c
++++ b/php_jsmin.c
+@@ -105,11 +105,11 @@ PHP_FUNCTION(jsmin)
+
+ zval *ret_code = NULL;
+
+- if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s|z/", &javascript, &javascript_len, &ret_code) == FAILURE) {
++ if (zend_parse_parameters(ZEND_NUM_ARGS(), "s|z/", &javascript, &javascript_len, &ret_code) == FAILURE) {
+ RETURN_FALSE;
+ }
+
+- jmo = jsmin(javascript TSRMLS_CC);
++ jmo = jsmin(javascript);
+ if (ret_code) {
+ zval_dtor(ret_code);
+ ZVAL_LONG(ret_code, jmo->errorCode);
+@@ -121,7 +121,7 @@ PHP_FUNCTION(jsmin)
+ } else {
+ ZVAL_STRINGL(return_value, jmo->buffer.c, jmo->buffer.len);
+ }
+- free_jsmin_obj(jmo TSRMLS_CC);
++ free_jsmin_obj(jmo);
+ }
+ /* }}} */
+
diff --git a/testing/php8-pecl-jsmin/fix-tests.patch b/testing/php82-pecl-jsmin/fix-tests.patch
index d7b9c636af6..d7b9c636af6 100644
--- a/testing/php8-pecl-jsmin/fix-tests.patch
+++ b/testing/php82-pecl-jsmin/fix-tests.patch
diff --git a/testing/php82-pecl-oauth/APKBUILD b/testing/php82-pecl-oauth/APKBUILD
new file mode 100644
index 00000000000..03b7835d108
--- /dev/null
+++ b/testing/php82-pecl-oauth/APKBUILD
@@ -0,0 +1,51 @@
+# Contributor: Fabio Ribeiro <fabiorphp@gmail.com>
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php82-pecl-oauth
+_extname=oauth
+pkgver=2.0.8
+pkgrel=0
+pkgdesc="PHP 8.2 extension, OAuth is an authorization protocol built on top of HTTP - PECL"
+url="https://pecl.php.net/package/oauth"
+arch="all"
+license="BSD-3-Clause"
+_phpv=82
+_php=php$_phpv
+depends="$_php-common"
+makedepends="$_php-dev curl-dev"
+checkdepends="$_php-openssl $_php-pcntl $_php-posix"
+#source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz
+source="php-$_extname-$pkgver.tgz::https://github.com/php/pecl-web_services-oauth/archive/refs/tags/$pkgver.tar.gz
+ fix-php-8-2.patch::https://github.com/php/pecl-web_services-oauth/commit/36a08239bf62c6fbc39ce38cf95ed42e098c022d.patch
+ fix-tests.patch
+ "
+builddir="$srcdir/pecl-web_services-$_extname-$pkgver"
+
+build() {
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=php-config$_phpv
+ make
+}
+
+check() {
+ local _modules="/usr/lib/$_php/modules"
+ make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test \
+ PHP_TEST_SHARED_EXTENSIONS=" \
+ -d extension=$_modules/openssl.so \
+ -d extension=$_modules/pcntl.so \
+ -d extension=$_modules/posix.so \
+ -d extension=modules/$_extname.so" TESTS=--show-diff
+ $_php -dextension=modules/$_extname.so --ri $_extname
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+ local _confdir="$pkgdir"/etc/$_php/conf.d
+ install -d $_confdir
+ echo "extension=$_extname" > $_confdir/60_$_extname.ini
+}
+
+sha512sums="
+93ca722f70760db95c53fcf19cbc3175920785186c89bd50a7d30e952d5cc9dc4ce6758324b770a60a759a748cf44c3c9caae52e629e6f5578b4c2c1a07ee950 php-oauth-2.0.8.tgz
+db69d0e8a2e5471c5d38aec8050796913c363908d21a00d373348e88990683e63d90bdc2a0150733d7c568e077f52922f65ff62a2099d9f2285388d441494b47 fix-php-8-2.patch
+8944170fbc9e2e42a76fe9444e94cf28485ef3c2bac5e755a66eca93531f0c526acc23a30dcb5a273a598ccb377ce367cb6b673948c46f1e0e2478e71ebc5e38 fix-tests.patch
+"
diff --git a/testing/php82-pecl-oauth/fix-tests.patch b/testing/php82-pecl-oauth/fix-tests.patch
new file mode 100644
index 00000000000..ad8eb4a8c7e
--- /dev/null
+++ b/testing/php82-pecl-oauth/fix-tests.patch
@@ -0,0 +1,85 @@
+From 66e8e9cf9805c96dd9aa6a7c08ec0da5c2c6b656 Mon Sep 17 00:00:00 2001
+From: Remi Collet <remi@php.net>
+Date: Fri, 9 Sep 2022 14:03:57 +0200
+Subject: [PATCH] fix for php 8.2: declare used properties
+
+---
+ oauth.c | 1 +
+ provider.c | 13 +++++++++++++
+ tests/oauthprovider_001.phpt | 12 ++++++++----
+ 3 files changed, 22 insertions(+), 4 deletions(-)
+
+diff --git a/oauth.c b/oauth.c
+index f845893..46eccda 100644
+--- a/oauth.c
++++ b/oauth.c
+@@ -2781,6 +2781,7 @@ PHP_MINIT_FUNCTION(oauth)
+ soo_exception_ce = zend_register_internal_class_ex(&soo_ex_ce, zend_exception_get_default());
+ zend_declare_property_null(soo_exception_ce, "lastResponse", sizeof("lastResponse")-1, ZEND_ACC_PUBLIC);
+ zend_declare_property_null(soo_exception_ce, "debugInfo", sizeof("debugInfo")-1, ZEND_ACC_PUBLIC);
++ zend_declare_property_null(soo_exception_ce, "additionalInfo", sizeof("additionalInfo")-1, ZEND_ACC_PUBLIC);
+
+ REGISTER_STRING_CONSTANT("OAUTH_SIG_METHOD_HMACSHA1", OAUTH_SIG_METHOD_HMACSHA1, CONST_CS | CONST_PERSISTENT);
+ REGISTER_STRING_CONSTANT("OAUTH_SIG_METHOD_HMACSHA256", OAUTH_SIG_METHOD_HMACSHA256, CONST_CS | CONST_PERSISTENT);
+diff --git a/provider.c b/provider.c
+index 45880fb..43f2bc0 100644
+--- a/provider.c
++++ b/provider.c
+@@ -1184,6 +1184,19 @@ extern int oauth_provider_register_class(void) /* {{{ */
+ osce.create_object = oauth_provider_new;
+ oauthprovider = zend_register_internal_class(&osce);
+
++ zend_declare_property_null(oauthprovider, OAUTH_PROVIDER_CONSUMER_KEY, sizeof(OAUTH_PROVIDER_CONSUMER_KEY)-1, ZEND_ACC_PUBLIC);
++ zend_declare_property_null(oauthprovider, OAUTH_PROVIDER_CONSUMER_SECRET, sizeof(OAUTH_PROVIDER_CONSUMER_SECRET)-1, ZEND_ACC_PUBLIC);
++ zend_declare_property_null(oauthprovider, OAUTH_PROVIDER_SIGNATURE, sizeof(OAUTH_PROVIDER_SIGNATURE)-1, ZEND_ACC_PUBLIC);
++ zend_declare_property_null(oauthprovider, OAUTH_PROVIDER_SIGNATURE_METHOD, sizeof(OAUTH_PROVIDER_SIGNATURE_METHOD)-1, ZEND_ACC_PUBLIC);
++ zend_declare_property_null(oauthprovider, OAUTH_PROVIDER_TOKEN, sizeof(OAUTH_PROVIDER_TOKEN)-1, ZEND_ACC_PUBLIC);
++ zend_declare_property_null(oauthprovider, OAUTH_PROVIDER_TOKEN_SECRET, sizeof(OAUTH_PROVIDER_TOKEN_SECRET)-1, ZEND_ACC_PUBLIC);
++ zend_declare_property_null(oauthprovider, OAUTH_PROVIDER_NONCE, sizeof(OAUTH_PROVIDER_NONCE)-1, ZEND_ACC_PUBLIC);
++ zend_declare_property_null(oauthprovider, OAUTH_PROVIDER_TIMESTAMP, sizeof(OAUTH_PROVIDER_TIMESTAMP)-1, ZEND_ACC_PUBLIC);
++ zend_declare_property_null(oauthprovider, OAUTH_PROVIDER_VERSION, sizeof(OAUTH_PROVIDER_VERSION)-1, ZEND_ACC_PUBLIC);
++ zend_declare_property_null(oauthprovider, OAUTH_PROVIDER_CALLBACK, sizeof(OAUTH_PROVIDER_CALLBACK)-1, ZEND_ACC_PUBLIC);
++ zend_declare_property_null(oauthprovider, OAUTH_PROVIDER_VERIFIER, sizeof(OAUTH_PROVIDER_VERIFIER)-1, ZEND_ACC_PUBLIC);
++ zend_declare_property_null(oauthprovider, "request_token_endpoint", sizeof("request_token_endpoint")-1, ZEND_ACC_PUBLIC);
++
+ memcpy(&oauth_provider_obj_hndlrs, zend_get_std_object_handlers(), sizeof(zend_object_handlers));
+ oauth_provider_obj_hndlrs.offset = XtOffsetOf(php_oauth_provider, zo);
+ oauth_provider_obj_hndlrs.free_obj = oauth_provider_free_storage;
+diff --git a/tests/oauthprovider_001.phpt b/tests/oauthprovider_001.phpt
+index e93af65..ab005c4 100644
+--- a/tests/oauthprovider_001.phpt
++++ b/tests/oauthprovider_001.phpt
+@@ -6,25 +6,29 @@ $provider = new OAuthProvider(['foo' => 'bar']);
+ var_dump($provider);
+
+ --EXPECT--
+-object(OAuthProvider)#1 (10) {
++object(OAuthProvider)#1 (12) {
+ ["consumer_key"]=>
+ NULL
+ ["consumer_secret"]=>
+ NULL
+- ["nonce"]=>
++ ["signature"]=>
++ NULL
++ ["signature_method"]=>
+ NULL
+ ["token"]=>
+ NULL
+ ["token_secret"]=>
+ NULL
++ ["nonce"]=>
++ NULL
+ ["timestamp"]=>
+ NULL
+ ["version"]=>
+ NULL
+- ["signature_method"]=>
+- NULL
+ ["callback"]=>
+ NULL
++ ["verifier"]=>
++ NULL
+ ["request_token_endpoint"]=>
+ bool(false)
+ }
diff --git a/testing/php82-pecl-phalcon/APKBUILD b/testing/php82-pecl-phalcon/APKBUILD
new file mode 100644
index 00000000000..2e96c17f167
--- /dev/null
+++ b/testing/php82-pecl-phalcon/APKBUILD
@@ -0,0 +1,48 @@
+# Contributor: Valery Kartel <valery.kartel@gmail.com>
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php82-pecl-phalcon
+_extname=phalcon
+pkgver=5.6.2
+pkgrel=0
+pkgdesc="High performance, full-stack PHP 8.2 framework delivered as a C extension"
+url="https://phalcon.io/"
+arch="all"
+license="BSD-3-Clause"
+_phpv=82
+_php=php$_phpv
+depends="
+ $_php-curl
+ $_php-fileinfo
+ $_php-gettext
+ $_php-mbstring
+ $_php-openssl
+ $_php-pdo
+ $_php-session
+ $_php-pecl-psr
+ "
+makedepends="$_php-dev"
+source="php-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
+builddir="$srcdir/$_extname-$pkgver"
+
+build() {
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=/usr/bin/php-config$_phpv
+ make
+}
+
+check() {
+ # no tests provided
+ $_php -d extension=modules/$_extname.so --ri $_extname
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+
+ local _confdir="$pkgdir"/etc/$_php/conf.d
+ install -d $_confdir
+ echo "extension=$_extname" > $_confdir/$_extname.ini
+}
+
+sha512sums="
+27fb1ba24ea6444abba142acf9fa717a9d69fbfb719335358a29d2f74e8ad6c4e76c310a7144cfb34628cd228e239de1bdca6c3365111a4fe588966ab195c7e0 php-phalcon-5.6.2.tgz
+"
diff --git a/testing/php82-pecl-runkit7/APKBUILD b/testing/php82-pecl-runkit7/APKBUILD
new file mode 100644
index 00000000000..26608f9ed5c
--- /dev/null
+++ b/testing/php82-pecl-runkit7/APKBUILD
@@ -0,0 +1,37 @@
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php82-pecl-runkit7
+_extname=runkit7
+pkgver=4.0.0_alpha6
+pkgrel=1
+pkgdesc="PHP 8.2 extension for replace, rename, and remove user defined functions, methods, and constants - PECL"
+url="https://pecl.php.net/package/runkit7"
+arch="all"
+license="BSD-3-Clause"
+_phpv=82
+_php=php$_phpv
+depends="$_php-common"
+makedepends="$_php-dev"
+source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-${pkgver//_alpha/a}.tgz"
+builddir="$srcdir/$_extname-${pkgver//_alpha/a}"
+
+build() {
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=/usr/bin/php-config$_phpv
+ make
+}
+
+check() {
+ $_php -dextension=modules/$_extname.so --ri $_extname
+ make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+ local _confdir="$pkgdir"/etc/$_php/conf.d
+ install -d $_confdir
+ echo "extension=$_extname" > $_confdir/$_extname.ini
+}
+
+sha512sums="
+fd54b395ab07806035d18ba4efa4337304c345d8800063755c94b0b776b254b41ed7932ca0a9e366fe8f0a8e4e184355ed2e1b3452fbe3c45e6fa28750aa956e php-pecl-runkit7-4.0.0_alpha6.tgz
+"
diff --git a/testing/php82-pecl-teds/APKBUILD b/testing/php82-pecl-teds/APKBUILD
new file mode 100644
index 00000000000..e3a37114e77
--- /dev/null
+++ b/testing/php82-pecl-teds/APKBUILD
@@ -0,0 +1,36 @@
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php82-pecl-teds
+_extname=teds
+pkgver=1.3.0
+pkgrel=0
+pkgdesc="PHP 8.2 extra data structures and iterable/array functionality - PECL"
+url="https://pecl.php.net/package/teds"
+arch="all"
+license="BSD-3-Clause"
+_phpv=82
+_php=php$_phpv
+depends="$_php-common"
+makedepends="$_php-dev"
+source="php-pecl-$_extname-$pkgver.tar.gz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
+builddir="$srcdir"/$_extname-$pkgver
+
+build() {
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=/usr/bin/php-config$_phpv
+ make
+}
+
+check() {
+ make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+ local _confdir="$pkgdir"/etc/$_php/conf.d
+ install -d $_confdir
+ echo "extension=$_extname" > $_confdir/$_extname.ini
+}
+
+sha512sums="
+24950e4a2f6b346fb83eb639ba7333d3408e549ef8b9e25a8dbd210474c5adaa35dcaf373ed96c361a09d72ae7c1fdf58c24d9a373df099b50877a41b311fe28 php-pecl-teds-1.3.0.tar.gz
+"
diff --git a/testing/php82-pecl-vld/APKBUILD b/testing/php82-pecl-vld/APKBUILD
new file mode 100644
index 00000000000..836a973671e
--- /dev/null
+++ b/testing/php82-pecl-vld/APKBUILD
@@ -0,0 +1,37 @@
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php82-pecl-vld
+_extname=vld
+pkgver=0.18.0
+pkgrel=0
+pkgdesc="PHP extension to dump the internal representation of PHP 8.2 scripts - PECL"
+url="https://pecl.php.net/package/vld"
+arch="all"
+license="BSD-3-Clause"
+_phpv=82
+_php=php$_phpv
+depends="$_php-common"
+makedepends="$_php-dev"
+source="php-pecl-$_extname-$pkgver.tar.gz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
+builddir="$srcdir"/$_extname-$pkgver
+
+build() {
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=/usr/bin/php-config$_phpv
+ make
+}
+
+check() {
+ make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
+ $_php -d extension=modules/$_extname.so --ri $_extname
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+ local _confdir="$pkgdir"/etc/$_php/conf.d
+ install -d $_confdir
+ echo "extension=$_extname" > $_confdir/$_extname.ini
+}
+
+sha512sums="
+da4a675fc29f9d296c7d444cf6d2408e747326fb89e6c4752e4829997fd89ea40433cb183c0af49c69ded0c2a22954c951a765662243ffe0cba70684ab0a4f18 php-pecl-vld-0.18.0.tar.gz
+"
diff --git a/testing/php82-pecl-zephir_parser/APKBUILD b/testing/php82-pecl-zephir_parser/APKBUILD
new file mode 100644
index 00000000000..d42ef62d729
--- /dev/null
+++ b/testing/php82-pecl-zephir_parser/APKBUILD
@@ -0,0 +1,37 @@
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php82-pecl-zephir_parser
+_extname=zephir_parser
+pkgver=1.6.0
+pkgrel=0
+pkgdesc="Zephir Parser is a code parser, delivered as a C extension for the PHP 8.2 language - PECL"
+url="https://pecl.php.net/package/zephir_parser"
+arch="all"
+license="MIT"
+_phpv=82
+_php=php$_phpv
+depends="$_php-common"
+makedepends="$_php-dev"
+source="php-pecl-$_extname-$pkgver.tar.gz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
+builddir="$srcdir"/$_extname-$pkgver
+
+build() {
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=/usr/bin/php-config$_phpv
+ make
+}
+
+check() {
+ echo "$pkgver" > VERSION
+ make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS="${TESTS:- --show-diff }"
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+ local _confdir="$pkgdir"/etc/$_php/conf.d
+ install -d $_confdir
+ echo "extension=$_extname" > $_confdir/$_extname.ini
+}
+
+sha512sums="
+84195c5702a12b1c6f9f027d2d0651bc7fb762cf71f4c7b4c9bc36b35fb92db54b994f5d2b0502d21b1dd8bb03710a72e4f0790b621edd2c1c69a10043b5d2ad php-pecl-zephir_parser-1.6.0.tar.gz
+"
diff --git a/testing/php82-snappy/APKBUILD b/testing/php82-snappy/APKBUILD
new file mode 100644
index 00000000000..a491e364ff2
--- /dev/null
+++ b/testing/php82-snappy/APKBUILD
@@ -0,0 +1,48 @@
+# Contributor: Andy Postnikov <apostnikov@gmail.com>
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php82-snappy
+_extname=snappy
+pkgver=0.2.1
+pkgrel=1
+pkgdesc="Snappy extension for PHP 8.2"
+url="https://github.com/kjdev/php-ext-snappy"
+arch="all"
+license="PHP-3.01"
+_phpv=82
+_php=php$_phpv
+depends="$_php-common"
+makedepends="$_php-dev $_php-pecl-apcu snappy-dev"
+source="php-$_extname-$pkgver.tar.gz::https://github.com/kjdev/php-ext-snappy/archive/$pkgver.tar.gz
+ https://github.com/kjdev/php-ext-snappy/commit/c27f830dcfe6c41eb2619a374de10fd0597f4939.patch
+ "
+builddir="$srcdir/php-ext-snappy-$pkgver"
+
+build() {
+ phpize$_phpv
+ ./configure \
+ --prefix=/usr \
+ --with-php-config=php-config$_phpv \
+ --with-snappy-includedir
+ make
+}
+
+check() {
+ local _modules=/usr/lib/$_php/modules
+ make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test \
+ SKIP_ONLINE_TESTS=1 PHP_TEST_SHARED_EXTENSIONS=" \
+ -d extension=$_modules/apcu.so \
+ -d extension=modules/$_extname.so" TESTS=--show-diff
+ $_php -d extension=modules/$_extname.so --ri $_extname
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir"/ install
+ local confdir="$pkgdir"/etc/$_php/conf.d
+ install -d $confdir
+ echo "extension=$_extname" > $confdir/50_$_extname.ini
+}
+
+sha512sums="
+51cdfe7c5d020cb954cbf555038aca8398867584a587eb838f07089612d3978a182d0bc04015608a2aaf71bf9a5b5896e5d92b56f3b2d5fe9e1116f9509acb1e php-snappy-0.2.1.tar.gz
+4f45438e6f5b8784bff45c5791628af905c70a4b1adf1f3b7248f52d7b41648b07e10e833f3f3ae60f24d421ad302a8a1ab4e464697df9bc36b8fc7a3f0cb3cc c27f830dcfe6c41eb2619a374de10fd0597f4939.patch
+"
diff --git a/testing/php83-pecl-apfd/APKBUILD b/testing/php83-pecl-apfd/APKBUILD
new file mode 100644
index 00000000000..23e79b4fa62
--- /dev/null
+++ b/testing/php83-pecl-apfd/APKBUILD
@@ -0,0 +1,38 @@
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php83-pecl-apfd
+_extname=apfd
+pkgver=1.0.3
+pkgrel=0
+pkgdesc="PHP 8.3 extension for always populate form data - PECL"
+url="https://pecl.php.net/package/apfd"
+arch="all"
+license="BSD-2-Clause"
+_phpv=83
+_php=php$_phpv
+depends="$_php-common"
+makedepends="$_php-dev"
+checkdepends="$_php-cgi"
+source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
+builddir="$srcdir/$_extname-$pkgver"
+
+build() {
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=php-config$_phpv
+ make
+}
+
+check() {
+ $_php -d extension="$builddir"/modules/$_extname.so --ri $_extname
+ make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+ local _confdir="$pkgdir"/etc/$_php/conf.d
+ mkdir -p $_confdir
+ echo "extension=$_extname" > $_confdir/$_extname.ini
+}
+
+sha512sums="
+1290594de5d2992cb2d46308ee5c3f44d30dc478afc60ce38f1bc3215c56fa3f396e6a8a90ed9288d4c5c61e8f8bdf77c682bfa0d83494647c61e0920048ea59 php-pecl-apfd-1.0.3.tgz
+"
diff --git a/testing/php83-pecl-eio/APKBUILD b/testing/php83-pecl-eio/APKBUILD
new file mode 100644
index 00000000000..8c3a3921562
--- /dev/null
+++ b/testing/php83-pecl-eio/APKBUILD
@@ -0,0 +1,43 @@
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php83-pecl-eio
+_extname=eio
+pkgver=3.1.3
+pkgrel=0
+pkgdesc="Interface to the libeio library PHP 8.3 - PECL"
+url="https://pecl.php.net/package/eio"
+arch="all"
+license="Apache-2.0"
+_phpv=83
+_php=php$_phpv
+depends="$_php-pcntl $_php-posix $_php-sockets"
+makedepends="$_php-dev"
+source="php-pecl-$_extname-$pkgver.tar.gz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
+builddir="$srcdir"/$_extname-$pkgver
+
+build() {
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=/usr/bin/php-config$_phpv
+ make
+}
+
+check() {
+ $_php -d extension=modules/$_extname.so --ri $_extname
+ local _modules="/usr/lib/$_php/modules"
+ make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test \
+ PHP_TEST_SHARED_EXTENSIONS=" \
+ -d extension=$_modules/pcntl.so \
+ -d extension=$_modules/posix.so \
+ -d extension=$_modules/sockets.so \
+ -d extension=modules/$_extname.so" TESTS=--show-diff
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+ local _confdir="$pkgdir"/etc/$_php/conf.d
+ install -d $_confdir
+ echo "extension=$_extname" > $_confdir/$_extname.ini
+}
+
+sha512sums="
+ce81a5b60f6374d291c2d09106d8a51192b21d7d122c3b93777eefd0f8e34c0929b5f3c0e25670f1c478970f6a5e14acb92d14fcb6a4914fdef91a40e273622e php-pecl-eio-3.1.3.tar.gz
+"
diff --git a/testing/php83-pecl-excimer/APKBUILD b/testing/php83-pecl-excimer/APKBUILD
new file mode 100644
index 00000000000..5378f92d681
--- /dev/null
+++ b/testing/php83-pecl-excimer/APKBUILD
@@ -0,0 +1,37 @@
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php83-pecl-excimer
+_extname=excimer
+pkgver=1.2.1
+pkgrel=0
+pkgdesc="Interrupting timer and low-overhead sampling profiler PHP 8.3 - PECL"
+url="https://pecl.php.net/package/excimer"
+arch="all"
+license="Apache-2.0"
+_phpv=83
+_php=php$_phpv
+depends="$_php-common"
+makedepends="$_php-dev"
+source="php-pecl-$_extname-$pkgver.tar.gz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
+builddir="$srcdir"/$_extname-$pkgver
+
+build() {
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=/usr/bin/php-config$_phpv
+ make
+}
+
+check() {
+ make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
+ $_php -d extension=modules/$_extname.so --ri $_extname
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+ local _confdir="$pkgdir"/etc/$_php/conf.d
+ install -d $_confdir
+ echo "extension=$_extname" > $_confdir/$_extname.ini
+}
+
+sha512sums="
+a5616fd1897342c0dc59cf8551ed498b88520e66b9c2a2e031df670c447c42243946ed1c2f0b1171bcb2be9777a8796d4caa4fb7c636f5d6fad03a62509ce3fd php-pecl-excimer-1.2.1.tar.gz
+"
diff --git a/testing/php83-pecl-jsmin/APKBUILD b/testing/php83-pecl-jsmin/APKBUILD
new file mode 100644
index 00000000000..b53eaf86bdd
--- /dev/null
+++ b/testing/php83-pecl-jsmin/APKBUILD
@@ -0,0 +1,51 @@
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php83-pecl-jsmin
+_extname=jsmin
+pkgver=3.0.0
+pkgrel=0
+_jqver=2.1.3
+pkgdesc="PHP 8.3 extension for minifying JavaScript - PECL"
+url="https://pecl.php.net/package/jsmin"
+arch="all !ppc64le" # test fails on builder
+license="PHP-3.01"
+_phpv=83
+_php=php$_phpv
+depends="$_php-common"
+makedepends="$_php-dev"
+source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz
+ jquery-$_jqver.js::https://github.com/sqmk/pecl-jsmin/raw/v$pkgver/tests/data/jquery-$_jqver.js
+ fix-php8.patch
+ fix-tests.patch
+ "
+builddir="$srcdir/$_extname-$pkgver"
+
+build() {
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=/usr/bin/php-config$_phpv
+ make
+}
+
+check() {
+ mkdir -p tests/data
+ cp "$srcdir"/jquery-$_jqver.js tests/data/
+
+ case "$CARCH" in
+ armv7|armhf|x86) rm tests/call-multiple-times.phpt ;;
+ esac
+ $_php -dextension=modules/$_extname.so --ri $_extname
+ make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS='--show-diff '
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+ local _confdir="$pkgdir"/etc/$_php/conf.d
+ install -d $_confdir
+ echo "extension=$_extname" > $_confdir/$_extname.ini
+}
+
+sha512sums="
+a465ae024a49bb8ac20463efc6b2546021806c2c43053f42c7ebfea4924b9b647b6e7c0c673102e12ecd8b693666441dc07203edef216eee958fa62f73056ea6 php-pecl-jsmin-3.0.0.tgz
+b8eb1a740c63feaab8ac24d87f39f4cfe263694c972f4978b9f0e3092f912a722596fd094dd637d22f03816617e13210bf11fad9a545dbb0423dc821c827081e jquery-2.1.3.js
+72f4ea4aad457d1a557e05ff8457a689ea75419e414b0893c2bdf5d7216d70b7c26a4993e3c9fa97de3409d080b3cf2a5bd2f0c4b050854c02f08ac592da1f85 fix-php8.patch
+e44a2615d98d786e0188d3880b41f267dab2fa215fb17cd37b17f8cc499bee7dd9e4fe1def4707dbd6769fa40ba2dbf7895ba3544db427a7d851f69a515fa83c fix-tests.patch
+"
diff --git a/testing/php83-pecl-jsmin/fix-php8.patch b/testing/php83-pecl-jsmin/fix-php8.patch
new file mode 100644
index 00000000000..c8be3069563
--- /dev/null
+++ b/testing/php83-pecl-jsmin/fix-php8.patch
@@ -0,0 +1,87 @@
+From 3e49feb8362f14d6f13d79c9533edd900bbf1d21 Mon Sep 17 00:00:00 2001
+From: Qiangjun Ran <ranqiangjun@gmail.com>
+Date: Tue, 8 Jun 2021 14:43:34 +0800
+Subject: [PATCH] PHP 8 support
+
+Patch-Source: https://github.com/sqmk/pecl-jsmin/pull/59
+---
+ jsmin.c | 8 ++++----
+ jsmin.h | 4 ++--
+ php_jsmin.c | 6 +++---
+ 3 files changed, 9 insertions(+), 9 deletions(-)
+
+diff --git a/jsmin.c b/jsmin.c
+index 2744aef..773dc09 100644
+--- a/jsmin.c
++++ b/jsmin.c
+@@ -34,7 +34,7 @@ SOFTWARE.
+ */
+
+ static jsmin_obj*
+-new_jsmin_obj(char *javascript TSRMLS_DC)
++new_jsmin_obj(char *javascript)
+ {
+ jsmin_obj *jmo = ecalloc(1, sizeof(jsmin_obj));
+ jmo->javascript = javascript;
+@@ -48,7 +48,7 @@ new_jsmin_obj(char *javascript TSRMLS_DC)
+ /* free_jsmin_obj -- frees up memory on struct
+ */
+ void
+-free_jsmin_obj(jsmin_obj *jmo TSRMLS_DC)
++free_jsmin_obj(jsmin_obj *jmo)
+ {
+ smart_string_free(&jmo->buffer);
+ efree(jmo);
+@@ -250,9 +250,9 @@ jsmin_action(int d, jsmin_obj *jmo)
+ */
+
+ jsmin_obj*
+-jsmin(char *javascript TSRMLS_DC)
++jsmin(char *javascript)
+ {
+- jsmin_obj *jmo = new_jsmin_obj(javascript TSRMLS_CC);
++ jsmin_obj *jmo = new_jsmin_obj(javascript);
+
+ jsmin_action(3, jmo);
+ while (jmo->theA != 0) {
+diff --git a/jsmin.h b/jsmin.h
+index 317b90b..0bda630 100644
+--- a/jsmin.h
++++ b/jsmin.h
+@@ -25,7 +25,7 @@ enum error_codes {
+ PHP_JSMIN_ERROR_UNTERMINATED_REGEX
+ };
+
+-extern jsmin_obj* jsmin(char *javascript TSRMLS_DC);
+-extern void free_jsmin_obj(jsmin_obj *jmo TSRMLS_DC);
++extern jsmin_obj* jsmin(char *javascript);
++extern void free_jsmin_obj(jsmin_obj *jmo);
+
+ #endif
+diff --git a/php_jsmin.c b/php_jsmin.c
+index a9783d4..6cc034a 100644
+--- a/php_jsmin.c
++++ b/php_jsmin.c
+@@ -105,11 +105,11 @@ PHP_FUNCTION(jsmin)
+
+ zval *ret_code = NULL;
+
+- if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s|z/", &javascript, &javascript_len, &ret_code) == FAILURE) {
++ if (zend_parse_parameters(ZEND_NUM_ARGS(), "s|z/", &javascript, &javascript_len, &ret_code) == FAILURE) {
+ RETURN_FALSE;
+ }
+
+- jmo = jsmin(javascript TSRMLS_CC);
++ jmo = jsmin(javascript);
+ if (ret_code) {
+ zval_dtor(ret_code);
+ ZVAL_LONG(ret_code, jmo->errorCode);
+@@ -121,7 +121,7 @@ PHP_FUNCTION(jsmin)
+ } else {
+ ZVAL_STRINGL(return_value, jmo->buffer.c, jmo->buffer.len);
+ }
+- free_jsmin_obj(jmo TSRMLS_CC);
++ free_jsmin_obj(jmo);
+ }
+ /* }}} */
+
diff --git a/testing/php83-pecl-jsmin/fix-tests.patch b/testing/php83-pecl-jsmin/fix-tests.patch
new file mode 100644
index 00000000000..d7b9c636af6
--- /dev/null
+++ b/testing/php83-pecl-jsmin/fix-tests.patch
@@ -0,0 +1,39 @@
+Patch-Source: https://github.com/sqmk/pecl-jsmin/pull/60
+
+diff --git a/tests/missing-argument.phpt b/tests/missing-argument.phpt
+index 57d0925..826038b 100644
+--- a/tests/missing-argument.phpt
++++ b/tests/missing-argument.phpt
+@@ -1,5 +1,9 @@
+ --TEST--
+ Missing argument throws warning
++--SKIPIF--
++<?php
++if (PHP_VERSION_ID >= 80000) die('skip Only for PHP < 8.0');
++?>
+ --FILE--
+ <?php
+
+diff --git a/tests/missing-argument8.phpt b/tests/missing-argument8.phpt
+new file mode 100644
+index 0000000..4638dc2
+--- /dev/null
++++ b/tests/missing-argument8.phpt
+@@ -0,0 +1,17 @@
++--TEST--
++Missing argument throws fatal error
++--SKIPIF--
++<?php
++if (PHP_VERSION_ID < 80000) die('skip Only for PHP >= 8.0');
++?>
++--FILE--
++<?php
++
++echo jsmin();
++
++--EXPECTF--
++Fatal error: Uncaught ArgumentCountError: jsmin() expects at least 1 argument, 0 given in %s
++Stack trace:
++#0 %s(3): jsmin()
++#1 {main}
++ thrown in %s on line 3
diff --git a/testing/php83-pecl-phalcon/APKBUILD b/testing/php83-pecl-phalcon/APKBUILD
new file mode 100644
index 00000000000..2a196bc7cc4
--- /dev/null
+++ b/testing/php83-pecl-phalcon/APKBUILD
@@ -0,0 +1,48 @@
+# Contributor: Valery Kartel <valery.kartel@gmail.com>
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php83-pecl-phalcon
+_extname=phalcon
+pkgver=5.6.2
+pkgrel=0
+pkgdesc="High performance, full-stack PHP 8.3 framework delivered as a C extension"
+url="https://phalcon.io/"
+arch="all"
+license="BSD-3-Clause"
+_phpv=83
+_php=php$_phpv
+depends="
+ $_php-curl
+ $_php-fileinfo
+ $_php-gettext
+ $_php-mbstring
+ $_php-openssl
+ $_php-pdo
+ $_php-session
+ $_php-pecl-psr
+ "
+makedepends="$_php-dev"
+source="php-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
+builddir="$srcdir/$_extname-$pkgver"
+
+build() {
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=/usr/bin/php-config$_phpv
+ make
+}
+
+check() {
+ # no tests provided
+ $_php -d extension=modules/$_extname.so --ri $_extname
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+
+ local _confdir="$pkgdir"/etc/$_php/conf.d
+ install -d $_confdir
+ echo "extension=$_extname" > $_confdir/$_extname.ini
+}
+
+sha512sums="
+27fb1ba24ea6444abba142acf9fa717a9d69fbfb719335358a29d2f74e8ad6c4e76c310a7144cfb34628cd228e239de1bdca6c3365111a4fe588966ab195c7e0 php-phalcon-5.6.2.tgz
+"
diff --git a/testing/php83-pecl-vld/APKBUILD b/testing/php83-pecl-vld/APKBUILD
new file mode 100644
index 00000000000..68aa787b67d
--- /dev/null
+++ b/testing/php83-pecl-vld/APKBUILD
@@ -0,0 +1,37 @@
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=php83-pecl-vld
+_extname=vld
+pkgver=0.18.0
+pkgrel=1
+pkgdesc="Dumps the internal representation of PHP 8.3 scripts - PECL"
+url="https://pecl.php.net/package/vld"
+arch="all"
+license="BSD-2-Clause"
+_phpv=83
+_php=php$_phpv
+depends="$_php-common"
+makedepends="$_php-dev"
+source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
+builddir="$srcdir/$_extname-$pkgver"
+
+build() {
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=php-config$_phpv
+ make
+}
+
+check() {
+ $_php -dextension=modules/$_extname.so --ri $_extname
+ make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+ local _confdir="$pkgdir"/etc/$_php/conf.d
+ install -d $_confdir
+ echo "extension=$_extname" > $_confdir/$_extname.ini
+}
+
+sha512sums="
+da4a675fc29f9d296c7d444cf6d2408e747326fb89e6c4752e4829997fd89ea40433cb183c0af49c69ded0c2a22954c951a765662243ffe0cba70684ab0a4f18 php-pecl-vld-0.18.0.tgz
+"
diff --git a/testing/php83-pecl-zmq/APKBUILD b/testing/php83-pecl-zmq/APKBUILD
new file mode 100644
index 00000000000..df5fc45dcb2
--- /dev/null
+++ b/testing/php83-pecl-zmq/APKBUILD
@@ -0,0 +1,42 @@
+# Contributor: Fabio Ribeiro <fabiorphp@gmail.com>
+# Maintainer: Fabio Ribeiro <fabiorphp@gmail.com>
+pkgname=php83-pecl-zmq
+_extname=zmq
+pkgver=1.1.4
+pkgrel=0
+pkgdesc="PHP 8.3 extension for ZeroMQ - PECL"
+url="https://pecl.php.net/package/zmq"
+arch="all"
+license="PHP-3.01"
+_phpv=83
+_php=php$_phpv
+depends="$_php-common"
+makedepends="$_php-dev zeromq-dev"
+_commit=84f072064dd8aedaf1ff883c602c5e34f3876897
+source="php-pecl-$_extname-$_commit.tar.gz::https://github.com/zeromq/php-zmq/archive/$_commit.tar.gz"
+builddir="$srcdir/php-$_extname-$_commit"
+#source="php-pecl-$_extname-$pkgver.tgz::https://pecl.php.net/get/$_extname-$pkgver.tgz"
+#builddir="$srcdir/$_extname-$pkgver"
+
+build() {
+ phpize$_phpv
+ ./configure --prefix=/usr --with-php-config=php-config$_phpv
+ make
+}
+
+check() {
+ $_php -dextension=modules/$_extname.so --ri $_extname
+ make NO_INTERACTION=1 REPORT_EXIT_STATUS=1 test TESTS=--show-diff
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+
+ local _confdir="$pkgdir"/etc/$_php/conf.d
+ mkdir -p $_confdir
+ echo "extension=$_extname" > $_confdir/50_$_extname.ini
+}
+
+sha512sums="
+49b0d19e2884f29fb474906bbc0d3d58b518779b3ce4561805d3387a3eaa97e039dc57d941df630f6d86b1517e5f7fb3435677d5f31c275602186bb2c45cf31b php-pecl-zmq-84f072064dd8aedaf1ff883c602c5e34f3876897.tar.gz
+"
diff --git a/testing/phpspy/APKBUILD b/testing/phpspy/APKBUILD
deleted file mode 100644
index 3761c4b1a12..00000000000
--- a/testing/phpspy/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
-# Maintainer: Andy Postnikov <apostnikov@gmail.com>
-pkgname=phpspy
-pkgver=0.5.0
-pkgrel=1
-pkgdesc="Low-overhead sampling profiler for PHP 7 "
-url="https://github.com/adsr/phpspy"
-arch="all"
-license="MIT"
-depends="perl"
-makedepends="linux-headers termbox-dev"
-checkdepends="ncurses bash grep php7 procps"
-options="!check" # require ptrace capability and checkroot is not enough
-source="$pkgname-$pkgver.tar.gz::https://github.com/adsr/phpspy/archive/v$pkgver.tar.gz
- libpthread.patch
- remove-termbox-check.patch
- fix-install.patch
- "
-
-build() {
- make phpspy_dynamic
-}
-
-package() {
- make prefix="/usr" DESTDIR="$pkgdir" install
- install -D -v -m 755 stackcollapse-phpspy.pl \
- "$pkgdir"/usr/bin/stackcollapse-phpspy
- install -D -v -m 755 vendor/flamegraph.pl \
- "$pkgdir"/usr/bin/flamegraph-phpspy
-}
-
-sha512sums="7163a9f0a44a7dc94e9b722b403218154a27992ba4bfcdae936bdc197b8bc732f70f506318540f356467acdbfec1b0ebc868409010d367a51c056790ab81be1f phpspy-0.5.0.tar.gz
-e3a6a0d3943c588570406e13155671fc9e16141e202aada9178681ea2afdc98698f54120a499aab85b82f5de1d25a30afe5cea1209fc2cc7f3da6cf4486dd3b5 libpthread.patch
-c07a0e9df74dc16fc51445ddc9321314d131049ac0acc3ab7aab76907f05ab78cd3e8fd55e5db14a43e66568ca19f7006369d3f9bf8c09e122a57a58513d071c remove-termbox-check.patch
-0d7a53a77fc6b8d191eb873af29771e520b8119357ceda0a81ad710a6d365812be3d4e87c3863d34ee14059a355626ba5dce507607ec7434aed4198bafb33ac3 fix-install.patch"
diff --git a/testing/phpspy/fix-install.patch b/testing/phpspy/fix-install.patch
deleted file mode 100644
index f559b83958e..00000000000
--- a/testing/phpspy/fix-install.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-We don't want a static binary, make sure the install target respects that.
-
-diff -upr phpspy-0.5.0.orig/Makefile phpspy-0.5.0/Makefile
---- phpspy-0.5.0.orig/Makefile 2020-05-31 18:37:11.787907276 +0200
-+++ phpspy-0.5.0/Makefile 2020-05-31 18:37:18.961241194 +0200
-@@ -55,7 +55,7 @@ test: phpspy_static $(phpspy_tests)
- printf "Passed %d out of %d tests\n" $$pass $$total ; \
- [ $$pass -eq $$total ] || exit 1
-
--install: phpspy_static
-+install: phpspy_dynamic
- install -D -v -m 755 phpspy $(DESTDIR)$(prefix)/bin/phpspy
-
- clean:
diff --git a/testing/phpspy/libpthread.patch b/testing/phpspy/libpthread.patch
deleted file mode 100644
index 35366646d1e..00000000000
--- a/testing/phpspy/libpthread.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/Makefile.bak
-+++ b/Makefile
-@@ -19,7 +19,7 @@
- has_termbox := $(shell $(LD) $(phpspy_ldflags) -ltermbox -o/dev/null >/dev/null 2>&1 && echo :)
- has_phpconf := $(shell command -v php-config >/dev/null 2>&1 && echo :)
-
--$(or $(has_pthread), $(error Need libpthread))
-+#$(or $(has_pthread), $(error Need libpthread))
-
- ifdef USE_ZEND
- $(or $(has_phpconf), $(error Need php-config))
diff --git a/testing/phpspy/remove-termbox-check.patch b/testing/phpspy/remove-termbox-check.patch
deleted file mode 100644
index c94fb32dae6..00000000000
--- a/testing/phpspy/remove-termbox-check.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-Check fails with:
-
- ld: unrecognized option '-Wl,--as-needed'
- ld: use the --help option for usage information
-
-diff -upr phpspy-0.5.0.orig/Makefile phpspy-0.5.0/Makefile
---- phpspy-0.5.0.orig/Makefile 2020-05-31 18:34:19.931393581 +0200
-+++ phpspy-0.5.0/Makefile 2020-05-31 18:34:23.341389992 +0200
-@@ -33,7 +33,6 @@ phpspy_static: $(wildcard *.c *.h) vendo
- $(CC) $(phpspy_cflags) $(phpspy_includes) $(termbox_inlcudes) $(phpspy_defines) $(phpspy_sources) -o phpspy $(phpspy_ldflags) $(phpspy_libs) $(termbox_libs)
-
- phpspy_dynamic: $(wildcard *.c *.h)
-- @$(or $(has_termbox), $(error Need libtermbox. Hint: try `make phpspy_static`))
- $(CC) $(phpspy_cflags) $(phpspy_includes) $(phpspy_defines) $(phpspy_sources) -o phpspy $(phpspy_ldflags) $(phpspy_libs) -ltermbox
-
- vendor/termbox/build/src/libtermbox.a: vendor/termbox/waf
diff --git a/testing/picat/APKBUILD b/testing/picat/APKBUILD
deleted file mode 100644
index 6590ec14c05..00000000000
--- a/testing/picat/APKBUILD
+++ /dev/null
@@ -1,40 +0,0 @@
-# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer: rubicon <rubicon@mailo.com>
-pkgname=picat
-pkgver=3.2.0
-_pkgver="${pkgver//./}"
-pkgrel=0
-pkgdesc="Logic-based multi-paradigm programming language"
-url="http://picat-lang.org/"
-arch="all"
-license="MPL-2.0"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::http://picat-lang.org/download/picat${_pkgver}_src.tar.gz
- fix-fileno-usage.patch
- "
-builddir="$srcdir"/Picat/emu
-
-build() {
- make -f Makefile.linux64
-}
-
-check() {
- ./picat --version
-}
-
-package() {
- local extdir="$srcdir"/Picat
- install -Dv picat -t "$pkgdir"/usr/bin/
- install -Dvm644 "$extdir"/lib/* \
- -t "$pkgdir"/usr/lib/"$pkgname"
- install -Dvm644 "$extdir"/README \
- "$extdir"/LICENSE "$extdir"/doc/* \
- -t "$pkgdir"/usr/share/doc/"$pkgname"
- mv -v "$extdir"/exs \
- "$pkgdir"/usr/share/doc/"$pkgname"/examples
-}
-
-sha512sums="
-6a54a18293c42b6e02ce0855a030e8c470817b41a006ca030a423abae2225642e412348f23b62d463ad1e3a97feddccf6c43f4ba81b7a7d0f320bd2c5a414bf3 picat-3.2.0.tar.gz
-82c43ff6625dccce2919c5e1b26eb4dc047d95ee9bc0a2cd5b42053f2b0a2dd54457c650d59c8eccdb4ce0e7500950e43b97a05f900c459267e4132eda691789 fix-fileno-usage.patch
-"
diff --git a/testing/picat/fix-fileno-usage.patch b/testing/picat/fix-fileno-usage.patch
deleted file mode 100644
index 2e361ab70e1..00000000000
--- a/testing/picat/fix-fileno-usage.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/file.c
-+++ b/file.c
-@@ -1900,7 +1900,7 @@
- #ifdef ANDROID
- return(file_table[index].fdes->_file);
- #else
-- return(file_table[index].fdes->_fileno);
-+ return(fileno(file_table[index].fdes));
- #endif
- #endif
- #endif
diff --git a/testing/pick/APKBUILD b/testing/pick/APKBUILD
new file mode 100644
index 00000000000..1e0fa6ad188
--- /dev/null
+++ b/testing/pick/APKBUILD
@@ -0,0 +1,29 @@
+# Contributor: Sergiy Stupar <owner@sestolab.pp.ua>
+# Maintainer: Sergiy Stupar <owner@sestolab.pp.ua>
+pkgname=pick
+pkgver=4.0.0
+pkgrel=0
+pkgdesc="Fuzzy search tool for the command-line"
+url="https://github.com/mptre/pick"
+arch="all"
+license="MIT"
+makedepends="ncurses-dev"
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/mptre/pick/archive/v$pkgver.tar.gz"
+
+build() {
+ PREFIX=/usr MANDIR=/usr/share/man ./configure
+ make
+}
+
+check() {
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+041f6aa13673678b9171a16debfdab11a4ce2d67b03a25677b457148aa642720803028aa6c77d56df9f022ca24f0e25d0c9a40d275ac7c93d03ed13036709fc8 pick-4.0.0.tar.gz
+"
diff --git a/testing/picolibc/APKBUILD b/testing/picolibc/APKBUILD
deleted file mode 100644
index 5ee7fb8ba8e..00000000000
--- a/testing/picolibc/APKBUILD
+++ /dev/null
@@ -1,74 +0,0 @@
-# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
-
-_targets="
- arm-none-eabi
- riscv-none-elf
- "
-pkgname=picolibc
-pkgver=1.7.7
-pkgrel=0
-pkgdesc="A C standard library based on newlib with focus on compact size"
-url="https://github.com/picolibc/picolibc"
-makedepends="meson"
-# s390x blocked by gcc-cross-embedded
-arch="all !s390x"
-license="GPL-2.0-only AND LGPL-2.1-only AND 0BSD AND BSD-3-Clause AND GPL-3.0-only AND LGPL-3.0-only"
-source="$pkgname-$pkgver.tar.xz::https://github.com/picolibc/picolibc/releases/download/$pkgver/picolibc-$pkgver.tar.xz"
-options="!check"
-
-for target in $_targets; do
- targetnorm="${target//-/_}"
- subpackages="picolibc-$target:$targetnorm $subpackages"
- makedepends="binutils-$target gcc-$target newlib-$target $makedepends"
-done
-
-prepare() {
- default_prepare
-
- # Handle mismatch of target triples
- mv "$builddir/scripts/cross-riscv64-unknown-elf.txt" \
- "$builddir/scripts/cross-riscv-none-elf.txt"
- sed -e 's/riscv64-unknown-elf/riscv-none-elf/g' \
- -i "$builddir/scripts/cross-riscv-none-elf.txt"
-}
-
-build() {
- for target in $_targets; do
- # cannot use abuild-meson here, as target != host
- meson \
- --prefix=/usr/ \
- --buildtype=plain \
- --cross-file=scripts/cross-$target.txt \
- -Dincludedir=picolibc/$target/include \
- -Dlibdir=picolibc/$target/lib \
- . build-$target
- meson compile -C build-$target
- done
-}
-
-package() {
- for target in $_targets; do
- depends="$depends picolibc-$target"
- done
- mkdir -p "$pkgdir"
-}
-
-_install_subpkg() {
- target="${subpkgname#picolibc-}"
- pkgdesc="A C standard library based on newlib with focus on compact size for $target"
- depends="binutils-$target gcc-$target $depends"
-
- DESTDIR="$subpkgdir" meson install -C "$builddir/build-$target"
-}
-
-arm_none_eabi() {
- _install_subpkg
-}
-
-riscv_none_elf() {
- _install_subpkg
-}
-
-sha512sums="
-afb8bd40601a0ecc46fffa15e23078d3a87b241212a48298f4d604ca482cba59dd3f0f7a7d4c7d69520d2b4261bb364da8fc4c46946c601c2423ab00920c08d9 picolibc-1.7.7.tar.xz
-"
diff --git a/testing/picolisp/APKBUILD b/testing/picolisp/APKBUILD
deleted file mode 100644
index fdb253cf3c1..00000000000
--- a/testing/picolisp/APKBUILD
+++ /dev/null
@@ -1,68 +0,0 @@
-# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer: rubicon <rubicon@mailo.com>
-pkgname=picolisp
-_pkgname=picoLisp
-pkgver=22.3
-pkgrel=0
-pkgdesc="Fast, lightweight Lisp interpreter and application server framework"
-url="https://picolisp.com/"
-# x86, armv7, armhf: 64-bits only
-# riscv64: ftbfs
-arch="all !x86 !armv7 !armhf !riscv64"
-license="MIT"
-depends_doc="w3m"
-makedepends="
- pkgconf clang llvm readline-dev
- libffi-dev openssl1.1-compat-dev
- "
-subpackages="$pkgname-doc $pkgname-bash-completion"
-source="https://software-lab.de/$_pkgname-$pkgver.tgz
- fix-shebang-lines.patch
- "
-builddir="$srcdir"/pil21
-
-build() {
- make -C src
-}
-
-check() {
- ./pil test/lib.l -bye +
-}
-
-package() {
- mkdir -vp "$pkgdir"/usr/bin "$pkgdir"/usr/share
- ln -sv ../lib/"$pkgname"/bin/picolisp \
- ../lib/"$pkgname"/bin/pil \
- "$pkgdir"/usr/bin/
- ln -sv ../lib/"$pkgname" \
- "$pkgdir"/usr/share/"$pkgname"
-
- # add bash completion
- mkdir -vp "$pkgdir"/usr/share/bash-completion/completions
- mv -v lib/bash_completion \
- "$pkgdir"/usr/share/bash-completion/completions/pil
-
- # move documentation
- mkdir -vp "$pkgdir"/usr/share/doc
- chmod -f 644 doc/*.html doc/*/*.html loc/*
- mv -v doc "$pkgdir"/usr/share/doc/"$pkgname"
- mv -v COPYING INSTALL README "$pkgdir"/usr/share/doc/"$pkgname"/
- rm -vf man/man1/pil.1
- ln -sv picolisp.1 man/man1/pil.1
- mv -v man "$pkgdir"/usr/share/
-
- mkdir -vp "$pkgdir"/usr/lib
- rm -vf pil vip
- mv -v "$builddir" "$pkgdir"/usr/lib/"$pkgname"
-}
-
-doc() {
- default_doc
- mkdir -vp "$subpkgdir"/usr/lib/"$pkgname"
- ln -sv ../../share/doc/"$pkgname" "$subpkgdir"/usr/lib/"$pkgname"/doc
-}
-
-sha512sums="
-f7c9ce2804e7a1ccdf975bf1b519eda9aefe1d1be3e2f7e47e08cef7b67a3f8b6be3457ffa9abb6e277a477e612d302e68214abc3bad6c8b18bbd010a648a7e2 picoLisp-22.3.tgz
-5d73fe9cea3a1e4e85360fd07689c3234c98a24f3d070b06c3dcafbe3469f4e72c2f07aa5146619d9432cf77a1ce2c00a2f8b36a2b0ee4041b0a897f8b661557 fix-shebang-lines.patch
-"
diff --git a/testing/picolisp/fix-shebang-lines.patch b/testing/picolisp/fix-shebang-lines.patch
deleted file mode 100644
index 3eea3fe9e13..00000000000
--- a/testing/picolisp/fix-shebang-lines.patch
+++ /dev/null
@@ -1,32 +0,0 @@
---- a/bin/psh
-+++ b/bin/psh
-@@ -1,4 +1,4 @@
--#!bin/picolisp lib.l
-+#!/usr/bin/picolisp /usr/lib/picolisp/lib.l
- # 29sep20 Software Lab. Alexander Burger
-
- (load "@lib/net.l" "@lib/misc.l" "@lib/http.l")
---- a/bin/pty
-+++ b/bin/pty
-@@ -1,4 +1,4 @@
--#!/data/data/com.termux/files/home/pil21/pil
-+#!/usr/bin/pil
- # 10jan22abu
- # Pseudo Terminal (PilBox)
-
---- a/bin/watchdog
-+++ b/bin/watchdog
-@@ -1,4 +1,4 @@
--#!bin/picolisp lib.l
-+#!/usr/bin/picolisp /usr/lib/picolisp/lib.l
- # 10oct20 Software Lab. Alexander Burger
- # Use: bin/watchdog <host> <port> <from> <to1> <to2> ..
-
---- a/misc/bigtest
-+++ b/misc/bigtest
-@@ -1,4 +1,4 @@
--#!bin/picolisp lib.l
-+#!/usr/bin/picolisp /usr/lib/picolisp/lib.l
- # 18may16abu
- # misc/bigtest <seed>
-
diff --git a/testing/picotts/APKBUILD b/testing/picotts/APKBUILD
deleted file mode 100644
index 06faa84cb04..00000000000
--- a/testing/picotts/APKBUILD
+++ /dev/null
@@ -1,40 +0,0 @@
-# Contributor: Eric Trombly <etrombly@yahoo.com>
-# Maintainer:
-pkgname=picotts
-pkgver=0.1
-pkgrel=0
-pkgdesc="Pico TTS: text to speech voice synthesizer from SVox"
-url="https://github.com/naggety/picotts"
-arch="all"
-license="Apache-2.0"
-makedepends="popt-dev autoconf automake libtool"
-subpackages="$pkgname-dev $pkgname-libs"
-source="https://github.com/naggety/picotts/archive/e3ba46009ee868911fa0b53db672a55f9cc13b1c.zip"
-builddir="$srcdir/picotts-e3ba46009ee868911fa0b53db672a55f9cc13b1c/pico"
-
-prepare() {
- default_prepare
- ./autogen.sh
-}
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var \
- --disable-static
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="e65b46aaeb65cf151e94b8740d6ac9a691613de973cb7d10e1a39b71ef7dead53525602209c99dfefbcb5abed3520321f45e9f324efae7b28af72a10e3f06ba5 e3ba46009ee868911fa0b53db672a55f9cc13b1c.zip"
diff --git a/testing/pict-rs/APKBUILD b/testing/pict-rs/APKBUILD
new file mode 100644
index 00000000000..4779dc16338
--- /dev/null
+++ b/testing/pict-rs/APKBUILD
@@ -0,0 +1,48 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=pict-rs
+pkgver=0.5.13
+pkgrel=0
+pkgdesc="Simple image hosting service written in Rust"
+url="https://git.asonix.dog/asonix/pict-rs"
+# riscv64: tests fail
+arch="all !riscv64"
+license="AGPL-3.0-or-later"
+depends="exiftool ffmpeg imagemagick"
+makedepends="cargo cargo-auditable"
+install="$pkgname.pre-install"
+pkgusers="pict-rs"
+pkggroups="pict-rs"
+subpackages="$pkgname-openrc"
+source="$pkgname-$pkgver.tar.gz::https://git.asonix.dog/asonix/pict-rs/archive/v$pkgver.tar.gz
+ config-file.patch
+ pict-rs.initd
+ "
+builddir="$srcdir/pict-rs"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm755 target/release/pict-rs -t "$pkgdir"/usr/bin
+
+ install -Dm640 -g pict-rs pict-rs.toml -t "$pkgdir"/etc/pict-rs
+ install -Dm755 "$srcdir"/pict-rs.initd "$pkgdir"/etc/init.d/pict-rs
+}
+
+sha512sums="
+5ca1092b9c1a7f086b8884f3fd05fe11d431c509f72150fd115c21c04d3c8da71299067f1eae872f0bffaa26d7632270f583a5f1de0106b2d0a1ffefc4b1aa79 pict-rs-0.5.13.tar.gz
+6abcd4907bfbf8857031af947cec088841e2a249a31a530678870c0da77667f05fdaa8c301bc12bf05b91a9054aea32f25cdb41be6d52f8140dc4340743d1d4c config-file.patch
+6a9d40fc5c57d35a6601118eff551b4353f0e544045b953cc2728135bdea1e1f8945ffac889d805b988af8403e0114338cde31d8d977491a63270ce97b8cae73 pict-rs.initd
+"
diff --git a/testing/pict-rs/config-file.patch b/testing/pict-rs/config-file.patch
new file mode 100644
index 00000000000..74ecb6a58a9
--- /dev/null
+++ b/testing/pict-rs/config-file.patch
@@ -0,0 +1,247 @@
+--- a/pict-rs.toml
++++ b/pict-rs.toml
+@@ -3,7 +3,7 @@
+ ## Optional: pict-rs binding address
+ # environment variable: PICTRS__SERVER__ADDRESS
+ # default: 0.0.0.0:8080
+-address = '0.0.0.0:8080'
++address = '127.0.0.1:8080'
+
+ ## Optional: whether to reject any operations that would change the state of pict-rs.
+ # environment variable: PICTRS__SERVER__READ_ONLY
+@@ -42,14 +42,14 @@
+ # default: empty
+ #
+ # Note that both certificate and private_key must be set to enable TLS
+-certificate = "/path/to/server.crt"
++#certificate = "/path/to/server.crt"
+
+ ## Optional: path to server key to enable TLS
+ # environment variable: PICTRS__SERVER__PRIVATE_KEY
+ # default: empty
+ #
+ # Note that both private_key and certificate must be set to enable TLS
+-private_key = "/path/to/server.key"
++#private_key = "/path/to/server.key"
+
+ ## Client configuration
+ [client]
+@@ -95,7 +95,7 @@
+
+
+ ## Console configuration
+-[tracing.console]
++#[tracing.console]
+ ## Optional: console address
+ # environment variable: PICTRS__TRACING__CONSOLE__ADDRESS
+ # default: empty
+@@ -124,7 +124,7 @@
+ # ```
+ # $ tokio-console http://localhost:6669
+ # ```
+-address = '0.0.0.0:6669'
++#address = '0.0.0.0:6669'
+
+ ## Optional: console buffer capacity
+ # environment variable: PICTRS__TRACING__CONSOLE__BUFFER_CAPACITY
+@@ -132,11 +132,11 @@
+ #
+ # This is the number of _events_ to buffer, not the number of bytes. In reality, the amount of
+ # RAM used will be significatnly larger (in bytes) than the buffer capacity (in events)
+-buffer_capacity = 102400
++#buffer_capacity = 102400
+
+
+ ## OpenTelemetry configuration
+-[tracing.opentelemetry]
++#[tracing.opentelemetry]
+ ## Optional: url for exporting otlp traces
+ # environment variable: PICTRS__TRACING__OPENTELEMETRY__URL
+ # default: empty
+@@ -145,36 +145,36 @@
+ # When set, pict-rs will export OpenTelemetry traces to the provided URL. If the URL is
+ # inaccessible, this can cause performance degredation in pict-rs, so it is best left unset unless
+ # you have an OpenTelemetry collector
+-url = 'http://localhost:4317/'
++#url = 'http://localhost:4317/'
+
+ ## Optional: name to relate OpenTelemetry traces
+ # environment variable: PICTRS__TRACING__OPENTELEMETRY__SERVICE_NAME
+ # default: pict-rs
+-service_name = 'pict-rs'
++#service_name = 'pict-rs'
+
+ ## Optional: trace level to export
+ # environment variable: PICTRS__TRACING__OPENTELEMETRY__TARGETS
+ # default: info
+ #
+ # Follows the same format as RUST_LOG
+-targets = 'info'
++#targets = 'info'
+
+-[metrics]
++#[metrics]
+ ## Optional: enable a prometheus scrape endpoint for pict-rs
+ # environment variable: PICTRS__METRICS__PROMETHEUS_ADDRESS
+ # default: empty
+ #
+ # Setting this value enables pointing prometheus at pict-rs to receive metrics. It can also be
+ # queried with curl.
+-prometheus_address = "0.0.0.0:9000"
++#prometheus_address = "0.0.0.0:9000"
+
+
+ ## Configuration for migrating from pict-rs 0.4
+-[old_repo]
++#[old_repo]
+ ## Optional: path to sled repository
+ # environment variable: PICTRS__OLD_REPO__PATH
+ # default: /mnt/sled-repo
+-path = '/mnt/sled-repo'
++#path = '/mnt/sled-repo'
+
+
+ ## Media Processing Configuration
+@@ -613,7 +613,7 @@
+ ## Optional: path to sled repository
+ # environment variable: PICTRS__REPO__PATH
+ # default: /mnt/sled-repo
+-path = '/mnt/sled-repo'
++path = '/var/lib/pict-rs/sled-repo'
+
+ ## Optional: in-memory cache capacity for sled data (in bytes)
+ # environment variable: PICTRS__REPO__CACHE_CAPACITY
+@@ -626,32 +626,32 @@
+ #
+ # Used in combination with the /internal/export endpoint to dump the current sled database into a
+ # new file. This can be helpful for backing up a running pict-rs server.
+-export_path = "/mnt/exports"
++export_path = "/var/lib/pict-rs/exports"
+
+
+ ## Postgres repo configuration example
+-[repo]
++#[repo]
+ ## Optional: database backend to use
+ # environment variable: PICTRS__REPO__TYPE
+ # default: sled
+ #
+ # available options: sled, postgres
+-type = 'postgres'
++#type = 'postgres'
+
+ ## Required: URL to postgres database
+ # environment variable: PICTRS__REPO__URL
+ # default: empty
+-url = 'postgres://user:password@host:5432/db'
++#url = 'postgres://user:password@host:5432/db'
+
+ ## Optional: Whether to use TLS when connecting to postgres
+ # environment variable: PICTRS__REPO__USE_TLS
+ # default: false
+-use_tls = false
++#use_tls = false
+
+ ## Optional: The CA Certificate used to verify the postgres TLS certificate
+ # environment variable: PICTRS__REPO__CERTIFICATE_FILE
+ # default: empty
+-certificate_file = '/etc/ca-certificate.crt'
++#certificate_file = '/etc/ca-certificate.crt'
+
+
+ ### Media storage configuration
+@@ -668,17 +668,17 @@
+ ## Optional: path to uploaded media
+ # environment variable: PICTRS__STORE__PATH
+ # default: /mnt/files
+-path = '/mnt/files'
++path = '/var/lib/pict-rs/files'
+
+
+ ## Object media storage example
+-[store]
++#[store]
+ ## Optional: type of media storage to use
+ # environment variable: PICTRS__STORE__TYPE
+ # default: filesystem
+ #
+ # available options: filesystem, object_storage
+-type = 'object_storage'
++#type = 'object_storage'
+
+ ## Required: endpoint at which the object storage exists
+ # environment variable: PICTRS__STORE__ENDPOINT
+@@ -687,7 +687,7 @@
+ # examples:
+ # - `http://localhost:9000` # minio
+ # - `https://s3.dualstack.eu-west-1.amazonaws.com` # s3
+-endpoint = 'http://minio:9000'
++#endpoint = 'http://minio:9000'
+
+ ## Optional: How to format object storage requests
+ # environment variable: PICTRS__STORE__USE_PATH_STYLE
+@@ -697,34 +697,34 @@
+ # When false, objects will be fetched from http{s}://{bucket_name}.{endpoint}:{port}/{object}
+ #
+ # Set to true when using minio
+-use_path_style = false
++#use_path_style = false
+
+ ## Required: object storage bucket name
+ # environment variable: PICTRS__STORE__BUCKET_NAME
+ # default: empty
+-bucket_name = 'pict-rs'
++#bucket_name = 'pict-rs'
+
+ ## Required: object storage region
+ # environment variable: PICTRS__STORE__REGION
+ # default: empty
+ #
+ # When using minio, this can be set to `minio`
+-region = 'minio'
++#region = 'minio'
+
+ ## Required: object storage access key
+ # environment variable: PICTRS__STORE__ACCESS_KEY
+ # default: empty
+-access_key = 'ACCESS_KEY'
++#access_key = 'ACCESS_KEY'
+
+ ## Required: object storage secret key
+ # environment variable: PICTRS__STORE__SECRET_KEY
+ # default: empty
+-secret_key = 'SECRET_KEY'
++#secret_key = 'SECRET_KEY'
+
+ ## Optional: object storage session token
+ # environment variable: PICTRS__STORE__SESSION_TOKEN
+ # default: empty
+-session_token = 'SESSION_TOKEN'
++#session_token = 'SESSION_TOKEN'
+
+ ## Optional: set how long object storage signatures are valid for (in seconds)
+ # environment variable: PICTRS__STORE__SIGNATURE_EXPIRATION
+@@ -732,7 +732,7 @@
+ #
+ # This can be useful if your object storage might take a while to process requests. It should not be
+ # increased more than needed to prevent replay attacks.
+-signature_expiration = 15
++#signature_expiration = 15
+
+ ## Optional: set how long pict-rs will wait (in seconds) for a response from object storage
+ # environment variable: PICTRS__STORE__CLIENT_TIMEOUT
+@@ -740,7 +740,7 @@
+ #
+ # This value is the total wait time, and not additional wait time on top of the
+ # signature_expiration.
+-client_timeout = 30
++#client_timeout = 30
+
+ ## Optional: URL to a CDN at which pict-rs files are available for web consumption
+ # environment variable: PICTRS__STORE__PUBLIC_ENDPOINT
+@@ -753,4 +753,4 @@
+ # Note that in order for clients to fetch media from this URL directly, any server between the
+ # client and pict-rs must not be configured to follow redirects, or else that server will fetch from
+ # this public URL and serve the file itself.
+-public_endpoint = "https://pict-rs.some.cdn.example.com/subpath/"
++#public_endpoint = "https://pict-rs.some.cdn.example.com/subpath/"
diff --git a/testing/pict-rs/pict-rs.initd b/testing/pict-rs/pict-rs.initd
new file mode 100644
index 00000000000..55ee7b02642
--- /dev/null
+++ b/testing/pict-rs/pict-rs.initd
@@ -0,0 +1,28 @@
+#!/sbin/openrc-run
+
+name=pict-rs
+description="pict-rs image hosting service"
+
+: ${cfgfile:="/etc/pict-rs/pict-rs.toml"}
+
+command="/usr/bin/pict-rs"
+command_args="-c $cfgfile run"
+command_background=true
+command_user="pict-rs:pict-rs"
+pidfile="/run/${RC_SVCNAME}.pid"
+directory="/var/lib/pict-rs"
+output_log="/var/log/pict-rs.log"
+error_log="/var/log/pict-rs.err"
+
+required_files="$cfgfile"
+
+depend() {
+ need localmount net
+ after firewall
+}
+
+start_pre() {
+ checkpath -f -m 0640 -o "root:pict-rs" "$cfgfile"
+ checkpath -f -m 0640 -o "$command_user" "$output_log" "$error_log"
+ checkpath -d -m 0750 -o "$command_user" "$directory"
+}
diff --git a/testing/pict-rs/pict-rs.pre-install b/testing/pict-rs/pict-rs.pre-install
new file mode 100644
index 00000000000..84d5da221ab
--- /dev/null
+++ b/testing/pict-rs/pict-rs.pre-install
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+addgroup -S pict-rs 2>/dev/null
+adduser -S -D \
+ -h /var/lib/pict-rs \
+ -s /sbin/nologin \
+ -G pict-rs \
+ -g "Pict-rs image hosting service" \
+ pict-rs 2>/dev/null
+
+exit 0
diff --git a/testing/pidif/APKBUILD b/testing/pidif/APKBUILD
new file mode 100644
index 00000000000..420f5238c4a
--- /dev/null
+++ b/testing/pidif/APKBUILD
@@ -0,0 +1,39 @@
+# Maintainer: Yo'av Moshe <alpine@yoavmoshe.com>
+pkgname=pidif
+pkgver=0.1
+pkgrel=1
+pkgdesc="Simple PDF Reader"
+url="https://github.com/bjesus/pidif"
+arch="all !s390x !riscv64" # rust
+license="GPL-3.0-or-later"
+makedepends="
+ cairo-dev
+ cargo
+ cargo-auditable
+ gtk4.0-dev
+ poppler-dev
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/bjesus/pidif/archive/refs/tags/$pkgver.tar.gz"
+
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm755 "target/release/pidif" "$pkgdir/usr/bin/pidif"
+}
+
+sha512sums="
+ba067c8c98cc5db6c3412dd7793ba901863f9ca6fa2cf828d28597c87614c3ba7f57e74d7ba85267e28c569d30e3ab12424eae96e963092d5bfb6fd720d40ca9 pidif-0.1.tar.gz
+"
diff --git a/testing/pigpio/APKBUILD b/testing/pigpio/APKBUILD
index 682ca48af58..47141d569e4 100644
--- a/testing/pigpio/APKBUILD
+++ b/testing/pigpio/APKBUILD
@@ -2,17 +2,17 @@
# Maintainer: knuxify <knuxify@gmail.com>
pkgname=pigpio
pkgver=79
-pkgrel=0
+pkgrel=3
pkgdesc="C library for the Raspberry Pi which allows control of the GPIO"
url="https://abyz.me.uk/rpi/pigpio/"
arch="armhf armv7 aarch64" # only runs on the Raspberry Pi
license="Unlicense"
-makedepends="cmake py3-setuptools"
+makedepends="cmake py3-gpep517 py3-setuptools py3-wheel samurai"
subpackages="
$pkgname-dev
$pkgname-doc
$pkgname-openrc
- $pkgname-python:_python:noarch
+ py3-$pkgname:_python:noarch
"
install="$pkgname.post-install"
source="https://github.com/joan2937/pigpio/archive/refs/tags/v$pkgver/pigpio-$pkgver.tar.gz
@@ -23,12 +23,15 @@ build() {
if [ "$CBUILD" != "$CHOST" ]; then
CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
fi
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_INSTALL_PREFIX=/usr \
-DBUILD_SHARED_LIBS=True \
-DCMAKE_BUILD_TYPE=Release \
$CMAKE_CROSSOPTS .
cmake --build build
+
+ gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2
+
}
package() {
@@ -39,14 +42,19 @@ package() {
mkdir -p "$pkgdir"/etc/init.d
install -Dm755 "$srcdir"/pigpiod.initd "$pkgdir"/etc/init.d/pigpiod
+
+ python3 -m installer -d "$pkgdir" .dist/*.whl
}
_python() {
pkgdesc="$pkgdesc (python bindings)"
depends="python3"
- cd "$builddir"
- python3 setup.py install --prefix=/usr --root="$subpkgdir"
+ # rename
+ provides="$pkgname-python=$pkgver-r$pkgrel"
+ replaces="$pkgname-python"
+
+ amove usr/lib/python3*
}
sha512sums="
diff --git a/testing/pijul/APKBUILD b/testing/pijul/APKBUILD
deleted file mode 100644
index 957280db7db..00000000000
--- a/testing/pijul/APKBUILD
+++ /dev/null
@@ -1,41 +0,0 @@
-# Contributor: TBK <alpine@jjtc.eu>
-# Maintainer: TBK <alpine@jjtc.eu>
-pkgname=pijul
-pkgver=0.12.2
-pkgrel=1
-pkgdesc="Patch-based distributed version control system"
-url="https://pijul.org/"
-arch="all !s390x !riscv64" # Limited by cargo
-license="GPL-2.0-or-later"
-makedepends="cargo clang libsodium-dev nettle-dev openssl-dev"
-subpackages="
- $pkgname-bash-completion
- $pkgname-fish-completion
- $pkgname-zsh-completion
- "
-source="$pkgname-$pkgver.tar.gz::https://crates.io/api/v1/crates/pijul/$pkgver/download"
-
-build() {
- cargo build --release
-}
-
-check() {
- cargo test --release
-}
-
-package() {
- cd target/release/
- install -Dm755 pijul -t "$pkgdir"/usr/bin/
-
- # Generate completion scripts
- for s in bash fish zsh
- do
- ./pijul generate-completions --$s > $pkgname.$s
- done
-
- install -Dm644 $pkgname.bash "$pkgdir"/usr/share/bash-completion/completions/$pkgname
- install -Dm644 $pkgname.fish "$pkgdir"/usr/share/fish/completions/$pkgname.fish
- install -Dm644 $pkgname.zsh "$pkgdir"/usr/share/zsh/site-functions/_$pkgname
-}
-
-sha512sums="b6f6b6ba631f02b2b5bc49ed712581244a03b5062fc06cce8127ab7683e20a3736d2b94c77eef47c4552b430dca848f3ebdbb6117bee07c41e89710829738921 pijul-0.12.2.tar.gz"
diff --git a/testing/pike/APKBUILD b/testing/pike/APKBUILD
deleted file mode 100644
index b67edd91d4e..00000000000
--- a/testing/pike/APKBUILD
+++ /dev/null
@@ -1,183 +0,0 @@
-# Maintainer: Paweł Tomak <pawel@tomak.eu>
-pkgname=pike
-_pkgname=Pike
-pkgver=8.0.1116
-pkgrel=0
-pkgdesc="Pike Programing language"
-url="https://pike.lysator.liu.se"
-arch="x86_64"
-license="GPL-2.0-or-later"
-options="!check" # there are no tests for those packages
-depends="readline"
-makedepends="gmp-dev
- bzip2-dev
- freeglut-dev
- gdbm-dev
- giflib-dev
- giflib-utils
- gtk+2.0-dev
- libsm-dev
- mesa-gl
- nettle
- nettle-dev
- nettle-utils
- pcre-dev
- sdl12-compat-dev
- sdl_mixer-dev
- sqlite-dev
- sqlite-libs
- zlib-dev
- librsvg-dev"
-subpackages="$pkgname-doc $pkgname-full::noarch"
-source="http://pike.lysator.liu.se/pub/pike/all/$pkgver/$_pkgname-v$pkgver.tar.gz"
-builddir="$srcdir/$_pkgname-v$pkgver"
-
-_full_deps="$pkgname=$pkgver-r$pkgrel $pkgname-doc=$pkgver-r$pkgrel"
-for _name in bzip2 gdbm gl gtk image pcre sdl svg sqlite
-do
- subpackages="$subpackages $pkgname-$_name"
- _full_deps="$_full_deps $pkgname-$_name=$pkgver-r$pkgrel"
-done
-
-build() {
- make CONFIGUREARGS=" \
- --prefix=/usr \
- --disable-make_conf \
- --disable-noopty-retry \
- --without-cdebug \
- --without-bundles \
- --without-ssleay \
- --with-gmp \
- --with-crypt \
- --with-bignums \
- --without-rtldebug \
- --with-Bz2 \
- --without-fftw \
- --without-_Ffmpeg \
- --with-gdbm \
- --without-GTK1 \
- --with-GTK2 \
- --with-jpeglib \
- --without-Kerberos \
- --without-msql \
- --without-mysql \
- --without-Odbc \
- --without-oracle \
- --with-GL \
- --with-GLUT \
- --with-_Regexp_PCRE \
- --without-libpdf \
- --without-sass \
- --with-sane \
- --with-SDL \
- --with-SDL_Mixer \
- --with-svg \
- --with-tifflib \
- --without-freetype \
- --without-vcdiff \
- --with-_Image_WebP \
- --with-zlib"
- PATH="$builddir/bin:$PATH" make doc
-}
-
-package() {
- make INSTALLARGS="--traditional" buildroot="$pkgdir" install
-}
-
-_install() {
- local _arg
- for _arg; do
- [ -e "$_arg" ] || continue
- local bn=$(basename "$_arg")
- local dn=$(dirname "$_arg")
- mkdir -p "$subpkgdir/$dn"
- mv "$_arg" "$subpkgdir/$dn/$bn"
- done
-}
-
-bzip2() {
- cd "$pkgdir"
- pkgdesc="$pkgname support"
- depends="pike"
- _install usr/lib/pike/modules/*Bz2.*
-}
-
-gdbm() {
- cd "$pkgdir"
- pkgdesc="$pkgname GDBM support"
- depends="pike"
- _install usr/lib/pike/modules/*Gdbm.*
-}
-
-gl() {
- cd "$pkgdir"
- pkgdesc="$pkgname OpenGL/GLUT support"
- depends="pike freeglut libsm"
- _install usr/lib/pike/modules/*GL*
-}
-
-gtk() {
- cd "$pkgdir"
- pkgdesc="$pkgname GTK2 support"
- depends="pike-image"
- _install usr/lib/pike/modules/*GTK2*
- _install usr/lib/pike/modules/Tools.pmod/PV.pike
-}
-
-image() {
- cd "$pkgdir"
- pkgdesc="$pkgname image handling modules"
- depends="pike libjpeg tiff libwebp"
- _install usr/lib/pike/?.?/modules/Image.pmod
- _install usr/lib/pike/modules/Image.so
- _install usr/lib/pike/modules/*Image_[!S]*.so
- _install usr/lib/pike/modules/*Image*.pmod
- _install usr/lib/pike/modules/Graphics.pmod
- _install usr/lib/pike/modules/Colors.pmod
- _install usr/lib/pike/modules/Protocols.pmod/X.pmod/XImage.pmod
-}
-
-pcre() {
- cd "$pkgdir"
- pkgdesc="$pkgname PCRE support"
- depends="pike"
- _install usr/lib/pike/modules/*Regexp_PCRE.*
-}
-
-sdl() {
- cd "$pkgdir"
- pkgdesc="$pkgname SDL support"
- depends="pike-image"
- _install usr/lib/pike/modules/*SDL.*
-}
-
-svg() {
- cd "$pkgdir"
- pkgdesc="$pkgname SVG support"
- depends="pike"
- _install usr/lib/pike/modules/_Image_SVG.so
-}
-
-sqlite() {
- cd "$pkgdir"
- pkgdesc="$pkgname SQLite support"
- depends="pike"
- _install usr/lib/pike/modules/*SQLite.*
- _install usr/lib/pike/modules/Sql.pmod/sqlite*
-}
-
-doc() {
- cd "$pkgdir"
- mkdir -p usr/share/doc/
- mv "$builddir/refdoc/traditional_manual/" usr/share/doc/pike/
- rm -rf usr/doc/
- default_doc
-}
-
-full() {
- depends="$_full_deps"
- pkgdesc="Meta package for Pike Programing Language"
- mkdir -p "$subpkgdir"
-}
-
-sha512sums="7a03d2d68ba7516947c176e469ac6fd86608a348211a06b0f13b29f9c1b1d23526fa7faca5d7c1bfe2b8d8fea6b178e1aabe1374685ecc67309ab55545e7eb48 Pike-v8.0.1116.tar.gz"
diff --git a/testing/piler/0001-utf8_encode_char.patch b/testing/piler/0001-utf8_encode_char.patch
new file mode 100644
index 00000000000..c6b52188ee5
--- /dev/null
+++ b/testing/piler/0001-utf8_encode_char.patch
@@ -0,0 +1,10 @@
+diff -ruN a/src/decoder.h b/src/decoder.h
+--- a/src/decoder.h 2021-02-23 07:26:47.000000000 +0100
++++ b/src/decoder.h 2022-03-28 18:35:10.706474194 +0200
+@@ -11,5 +11,6 @@
+ void decodeHTML(char *p, int utf8);
+ void decodeURL(char *p);
+ int utf8_encode(char *inbuf, int inbuflen, char *outbuf, int outbuflen, char *encoding);
++void utf8_encode_char(unsigned char c, unsigned char *buf, int buflen, int *len);
+
+ #endif /* _DECODER_H */
diff --git a/testing/piler/0002-manticore-conf.patch b/testing/piler/0002-manticore-conf.patch
new file mode 100644
index 00000000000..8721644ffcb
--- /dev/null
+++ b/testing/piler/0002-manticore-conf.patch
@@ -0,0 +1,17 @@
+diff -ruN a/etc/manticore.conf.in b/etc/manticore.conf.in
+--- a/etc/manticore.conf.in 2024-03-13 09:38:42.847170715 +0100
++++ b/etc/manticore.conf.in 2024-03-13 09:41:24.847111111 +0100
+@@ -248,11 +248,11 @@
+ {
+ listen = 127.0.0.1:9312
+ listen = 127.0.0.1:9306:mysql41
+- log = /var/piler/manticore/manticore.log
++ log = /var/log/piler/manticore.log
+ binlog_max_log_size = 256M
+ binlog_path = /var/piler/manticore
+ binlog_flush = 2
+- query_log = /var/piler/manticore/query.log
++ query_log = /var/log/piler/query.log
+ network_timeout = 5
+ pid_file = /var/run/piler/searchd.pid
+ seamless_rotate = 1
diff --git a/testing/piler/0003-fix_pilerpurge_for_rt_index.patch b/testing/piler/0003-fix_pilerpurge_for_rt_index.patch
new file mode 100644
index 00000000000..66dd1912157
--- /dev/null
+++ b/testing/piler/0003-fix_pilerpurge_for_rt_index.patch
@@ -0,0 +1,91 @@
+From e2f6a718272585dd99737087b9c63fa7a734461c Mon Sep 17 00:00:00 2001
+From: Janos SUTO <sj@acts.hu>
+Date: Wed, 1 Nov 2023 08:25:56 +0100
+Subject: [PATCH] Updated pilerpurge to remove data from manticore in case of
+ RT index
+
+Signed-off-by: Janos SUTO <sj@acts.hu>
+---
+ util/pilerpurge.py | 26 ++++++++++++++++++++++----
+ 1 file changed, 22 insertions(+), 4 deletions(-)
+
+diff --git a/util/pilerpurge.py b/util/pilerpurge.py
+index e2e2d61f..dc87916e 100755
+--- a/util/pilerpurge.py
++++ b/util/pilerpurge.py
+@@ -9,7 +9,7 @@ import sys
+ import syslog
+ import time
+
+-SQL_PURGE_SELECT_QUERY = "SELECT piler_id, size FROM " +\
++SQL_PURGE_SELECT_QUERY = "SELECT id, piler_id, size FROM " +\
+ "metadata WHERE deleted=0 AND retained < UNIX_TIMESTAMP(NOW()) " +\
+ "AND id NOT IN (SELECT id FROM rcpt WHERE `to` IN " +\
+ "(SELECT email FROM legal_hold)) AND id NOT IN (SELECT " +\
+@@ -33,7 +33,9 @@ def read_options(filename="", opts={}):
+ opts['password'] = config.get('piler', 'mysqlpwd')
+ opts['database'] = config.get('piler', 'mysqldb')
+ opts['storedir'] = config.get('piler', 'queuedir')
+-
++ opts['rtindex'] = config.getint('piler', 'rtindex', fallback=0)
++ opts['sphxhost'] = config.get('piler', 'sphxhost', fallback='127.0.0.1')
++ opts['sphxport'] = config.getint('piler', 'sphxport', fallback=9306)
+ opts['server_id'] = "%02x" % config.getint('piler', 'server_id')
+
+
+@@ -184,6 +186,17 @@ def get_attachment_file_path(piler_id='', attachment_id=0, opts={}):
+ str(attachment_id)])
+
+
++def purge_index_data(ids=[], opts={}):
++ '''
++ Delete from index data in case of RT index
++ '''
++
++ if opts['rtindex'] == 1 and opts['dry_run'] is False:
++ cursor = opts['sphx'].cursor()
++ a = "," . join([str(x) for x in ids])
++ cursor.execute("DELETE FROM piler WHERE id IN (%s)" % (a))
++
++
+ def main():
+ parser = argparse.ArgumentParser()
+ parser.add_argument("-c", "--config", type=str, help="piler.conf path",
+@@ -203,6 +216,7 @@ def main():
+ opts['dry_run'] = args.dry_run
+ opts['verbose'] = args.verbose
+ opts['db'] = None
++ opts['sphx'] = None
+ opts['messages'] = 0
+ opts['files'] = 0
+ opts['size'] = 0
+@@ -217,6 +231,8 @@ def main():
+ opts['db'] = dbapi.connect(opts['dbhost'], opts['username'],
+ opts['password'], opts['database'])
+
++ opts['sphx'] = dbapi.connect(host=opts['sphxhost'], port=opts['sphxport'])
++
+ if is_purge_enabled(opts) is False:
+ syslog.syslog("Purging emails is disabled")
+ sys.exit(1)
+@@ -229,13 +245,15 @@ def main():
+ if rows == ():
+ break
+
+- piler_id = [x[0] for x in rows]
+- size = [x[1] for x in rows]
++ id = [x[0] for x in rows]
++ piler_id = [x[1] for x in rows]
++ size = [x[2] for x in rows]
+
+ opts['purged_size'] = opts['purged_size'] + sum(size)
+
+ purge_m_files(piler_id, opts)
+ purge_attachments_by_piler_id(piler_id, opts)
++ purge_index_data(id, opts)
+
+ # It's possible that there's attachment duplication, thus
+ # refcount > 0, even though after deleting the duplicates
+--
+2.42.0
+
diff --git a/testing/piler/APKBUILD b/testing/piler/APKBUILD
new file mode 100644
index 00000000000..62b95da727d
--- /dev/null
+++ b/testing/piler/APKBUILD
@@ -0,0 +1,114 @@
+# Contributor: Noel Kuntze <noel.kuntze@thermi.consulting>
+# Maintainer: Noel Kuntze <noel.kuntze@thermi.consulting>
+pkgname=piler
+pkgver=1.4.4
+pkgrel=0
+pkgdesc="Open source email archiving solution with all the necessary features for your enterprise"
+url="https://www.mailpiler.org/"
+arch="all !ppc64le !s390x !x86 !armhf !armv7" # exclusions because manticore is not built for these architectures
+license="GPL-3.0-only"
+depends="
+ bash
+ catdoc
+ coreutils
+ findutils
+ libzip
+ manticore
+ memcached
+ poppler-utils
+ python3
+ py3-mysqlclient
+ sysstat
+ tnef
+ tre
+ unrtf
+ xlhtml
+ "
+#optional = poppler: for reading attachments
+# catdoc: for reading attachments
+# tnef: for reading attachments
+# bash is required to execute the cron maintenance scripts
+makedepends="$depends mariadb-dev php82-dev openssl-dev tre-dev libzip-dev"
+install="$pkgname.pre-install"
+options="!check"
+subpackages="$pkgname-openrc"
+pkgusers="piler"
+pkggroups="piler"
+source="https://bitbucket.org/jsuto/piler/downloads/piler-$pkgver.tar.gz
+ 0001-utf8_encode_char.patch
+ 0002-manticore-conf.patch
+ 0003-fix_pilerpurge_for_rt_index.patch
+
+ piler.initd
+ piler-smtp.initd
+ searchd.initd
+ searchd.confd
+"
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --sbindir=/usr/bin \
+ --localstatedir=/var \
+ --libexecdir=/usr/lib \
+ --with-database=mysql \
+ --with-piler-user=root \
+ --enable-memcached
+
+ #Attention! The makefile is not formulated correctly for multithreading! We need to use one thread or it breaks.
+ make -j1
+}
+
+package() {
+
+ make installdirs DESTDIR="$pkgdir"
+ make install DESTDIR="$pkgdir"
+
+ # service files
+ rm -rf "$pkgdir"/etc/init.d
+ install -Dm755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
+ install -Dm755 "$srcdir"/$pkgname-smtp.initd "$pkgdir"/etc/init.d/$pkgname-smtp
+ install -Dm755 "$srcdir"/searchd.initd "$pkgdir"/etc/init.d/searchd
+ install -Dm644 "$srcdir"/searchd.confd "$pkgdir"/etc/conf.d/searchd
+
+ # crontab
+ install -Dm600 "$pkgdir"/usr/share/piler/piler.cron "$pkgdir"/etc/crontabs/piler
+
+ # configuration
+ install -Dm655 "$builddir"/contrib/webserver/piler-nginx.conf "$pkgdir"/etc/piler/piler-nginx.conf
+ install -Dm644 "$builddir"/etc/example.conf "$pkgdir"/etc/piler/piler.conf
+ install -Dm644 "$builddir"/etc/smtp.acl.example "$pkgdir"/etc/piler/smtp.acl.example
+ install -Dm644 "$builddir"/util/db-upgrade.sql "$pkgdir"/usr/share/piler/db-upgrade.sql
+ mv "$pkgdir"/etc/piler/manticore.conf.dist "$pkgdir"/etc/piler/manticore.conf
+ mv "$pkgdir"/etc/piler/config-site.dist.php "$pkgdir"/etc/piler/config-site.php
+ rm -f "$pkgdir"/etc/piler/sphinx.conf.dist
+ touch "$pkgdir"/etc/piler/MANTICORE
+
+ # license
+ install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+
+ # Fix directory permissions
+ chmod -R a-s "$pkgdir"/usr/bin
+ chmod 644 "$pkgdir"/etc/piler/*
+ chmod 770 "$pkgdir"/var/piler/www/tmp "$pkgdir"/var/piler/www/images
+ chown piler:www-data "$pkgdir"/var/piler/www/tmp
+
+ install -d "$pkgdir"/var/log/$pkgname
+
+ # remove unnecessary files
+ rm -f "$pkgdir"/usr/lib/piler/*.service "$pkgdir"/usr/lib/piler/postinstall.sh
+}
+
+sha512sums="
+bd53fa14d01fe50c7fa6ccded4404d4ceb6b19ff4484cc2c4f8fde05cc9a66937c701a4378535afc939707d4c27955ec3f31337674506488b10672fc41ba7b4b piler-1.4.4.tar.gz
+017f3c6241a0368efb6d1b1b734c38b52af67753f5245dad42e265f44961c90bd218d947824a02e7ff02aa11edd642a2947aeff64033f4757670948f88478f4a 0001-utf8_encode_char.patch
+6bbf4c70dd51413b6568f2866a28524eb2986fee35fc4921166baa702fbf466ded7c3357ef7987403c3ad694bbd62aad9abfc90ac8313613e31b7b65784c9b08 0002-manticore-conf.patch
+aefef3ff8101c62524f3cd866e3243d4e0cfb2acfd98627db29d9e2d8c12647962bf1b7b62dbd8d0f8b8b20f7719da134dde5d903b4adcf589f5494576ee3e58 0003-fix_pilerpurge_for_rt_index.patch
+f3895913350ffb252455c50bb276cc9fff0603804507d2a3f6ab6167a1b8b357ca8039ccb8725849ffa99fe04673d510dfcdc09f099631a8f0dd148494def615 piler.initd
+3aa8e661c1c806311abecdc76dcbd12a167e64de11785d2a3c63416cd1e5a445eb021ff4882de5fe1a145fc78483b3691262a07fc0168bbfc03b88812cc1ad17 piler-smtp.initd
+c4ad4742c3bd899d8f8004f16252b4862e19683cba6d3d4a7c86d9ed90942c7b3878fc713915aa299b28852f798fedee5ae73e28844d653383d6c7a07698fde4 searchd.initd
+d6a57f4f972786898d39e94666daa36ba6265dbb577d97e4a9586d4e7b2f3f7b4e69537b316529123186df30f530dc54c03af10c88c8e205192d2b8568571bb3 searchd.confd
+"
diff --git a/testing/piler/piler-smtp.initd b/testing/piler/piler-smtp.initd
new file mode 100644
index 00000000000..8070d2d35f7
--- /dev/null
+++ b/testing/piler/piler-smtp.initd
@@ -0,0 +1,12 @@
+#!/sbin/openrc-run
+
+description="Piler SMTP server"
+
+command="/usr/bin/$SVCNAME"
+command_background=yes
+
+depend() {
+ need net
+ after firewall
+}
+
diff --git a/testing/piler/piler.initd b/testing/piler/piler.initd
new file mode 100644
index 00000000000..3e69b9272b3
--- /dev/null
+++ b/testing/piler/piler.initd
@@ -0,0 +1,16 @@
+#!/sbin/openrc-run
+
+description="Piler daemon"
+
+command="/usr/bin/$SVCNAME"
+command_background=yes
+
+depend() {
+ need net
+ after firewall mariadb
+}
+
+start_pre() {
+ checkpath -d -m 750 -o piler:piler /run/piler
+}
+
diff --git a/testing/piler/piler.pre-install b/testing/piler/piler.pre-install
new file mode 100644
index 00000000000..e798611b7fd
--- /dev/null
+++ b/testing/piler/piler.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S piler 2>/dev/null
+adduser -S -D -h /var/piler -s /bin/bash -G piler -g piler piler 2>/dev/null
+
+exit 0
diff --git a/testing/piler/searchd.confd b/testing/piler/searchd.confd
new file mode 100644
index 00000000000..e3c05669a0e
--- /dev/null
+++ b/testing/piler/searchd.confd
@@ -0,0 +1,8 @@
+# Configuration for /etc/init.d/searchd
+
+# Path of the configuration file
+#cfgfile="/etc/piler/manticore.conf"
+
+# Additional options to pass to the searchd command
+#command_args=""
+
diff --git a/testing/piler/searchd.initd b/testing/piler/searchd.initd
new file mode 100644
index 00000000000..dd7c0e013f0
--- /dev/null
+++ b/testing/piler/searchd.initd
@@ -0,0 +1,21 @@
+#!/sbin/openrc-run
+
+: ${cfgfile:="/etc/piler/manticore.conf"}
+
+Description="Searchd for piler daemon"
+command="/usr/bin/searchd"
+command_args="--config $cfgfile $command_args"
+command_user="piler:piler"
+
+piddir=${piddir:-"/run/piler"}
+pidfile="${piddir}/${SVCNAME}.pid"
+
+depend() {
+ need net
+ after firewall mariadb
+}
+
+start_pre() {
+ checkpath --directory --owner "piler:piler" "$piddir"
+}
+
diff --git a/testing/pimd-dense/APKBUILD b/testing/pimd-dense/APKBUILD
new file mode 100644
index 00000000000..056db1faa7f
--- /dev/null
+++ b/testing/pimd-dense/APKBUILD
@@ -0,0 +1,49 @@
+# Contributor: Nico de Haer <nico.dehaer@gmail.com>
+# Maintainer: Nico de Haer <nico.dehaer@gmail.com>
+pkgname=pimd-dense
+pkgver=2.1.0
+pkgrel=0
+pkgdesc="PIM-DENSE Multicast Routing for UNIX"
+url="https://github.com/troglobit/pimd-dense"
+arch="all"
+license="custom"
+makedepends="linux-headers"
+subpackages="$pkgname-doc $pkgname-openrc"
+options="!spdx !check" # requires intricate setup with tshark/unshare
+source="
+ https://github.com/troglobit/pimd-dense/releases/download/$pkgver/pimd-dense-$pkgver.tar.gz
+ pimd-dense.initd
+ pimd-dense.confd
+ "
+
+build() {
+ ./configure \
+ --host=$CHOST \
+ --build=$CBUILD \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --localstatedir=/var
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+ install -m755 -D "$srcdir"/$pkgname.initd \
+ "$pkgdir"/etc/init.d/$pkgname
+ install -m644 -D "$srcdir"/$pkgname.confd \
+ "$pkgdir"/etc/conf.d/$pkgname
+ install -m644 -D "$builddir"/pimdd.conf \
+ "$pkgdir"/etc/pimdd.conf
+ install -Dm644 LICENSE \
+ "$pkgdir"/usr/share/licenses/"$pkgname"/COPYING
+ install -Dm644 doc/LICENSE.mrouted \
+ "$pkgdir"/usr/share/licenses/"$pkgname"/LICENSE.mrouted
+ install -Dm644 doc/LICENSE.pimd \
+ "$pkgdir"/usr/share/licenses/"$pkgname"/LICENSE.pimd
+}
+
+sha512sums="
+1963c88f49e766b456aeb1d649c65f5209bbb901ed4fb8293ec8a347882c754d2742a6147023c3592d835df88cbedee20593ca1c52a1d350b71d69d21d5d74ec pimd-dense-2.1.0.tar.gz
+9d77336c50062dfdd553ee474a16d40ffe2a07d6141a48ef3725c0afe2b974f430adcdb9cbe2723f8a67f0b16747264094b537327acd47cc6dbaa7acdf7fff92 pimd-dense.initd
+078b78e46379c0225791a081534622493561a2ed07388d0a93c7517d5166e33c0594ebb7bf75a600aecb36635b33984fadd81c85cb06d7bd0862772131d82367 pimd-dense.confd
+"
diff --git a/testing/pimd-dense/pimd-dense.confd b/testing/pimd-dense/pimd-dense.confd
new file mode 100644
index 00000000000..6e8e4496723
--- /dev/null
+++ b/testing/pimd-dense/pimd-dense.confd
@@ -0,0 +1 @@
+pimdd_opts="-f /etc/pimdd.conf -l notice"
diff --git a/testing/pimd-dense/pimd-dense.initd b/testing/pimd-dense/pimd-dense.initd
new file mode 100644
index 00000000000..af45297f368
--- /dev/null
+++ b/testing/pimd-dense/pimd-dense.initd
@@ -0,0 +1,13 @@
+#!/sbin/openrc-run
+
+name=pimdd
+command="/usr/sbin/$name"
+command_args="$pimdd_opts -n"
+command_background="yes"
+
+pidfile="/run/$name.pid"
+
+depend() {
+ need net
+ after firewall
+}
diff --git a/testing/pinentry-bemenu/APKBUILD b/testing/pinentry-bemenu/APKBUILD
index 5235c28e094..a9325cbced5 100644
--- a/testing/pinentry-bemenu/APKBUILD
+++ b/testing/pinentry-bemenu/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=pinentry-bemenu
-pkgver=0.9.0
+pkgver=0.13.1
pkgrel=0
pkgdesc="Pinentry based on bemenu"
url="https://github.com/t-8ch/pinentry-bemenu"
@@ -22,11 +22,11 @@ source="https://github.com/t-8ch/pinentry-bemenu/archive/v$pkgver/pinentry-bemen
build() {
echo "$pkgver" > VERSION
abuild-meson . output
- meson compile ${JOBS:+-j ${JOBS}} -C output
+ meson compile -j ${JOBS:-0} -C output
}
check() {
- meson test --no-rebuild -v -C output
+ meson test --no-rebuild --print-errorlogs -C output
}
package() {
@@ -34,6 +34,6 @@ package() {
}
sha512sums="
-d69388c1734eee3bd3f97145f8c80d695f8ab18b6728cd675360bbddd55ec493f02e089187e0b88005ddb4cf628599d56ef5f055db456d5e5d3ec5760b807ae5 pinentry-bemenu-0.9.0.tar.gz
-32847aaba84ebc8eb6cedb36911113ef2ce5d3ee460aea4e0f5e11e30a46ea68b3379b60622c5ef746463b0fe7d563d39f89e4b9876f021440087bc9ea941d4f meson-ungit.patch
+9cdb4a3876c96900dc5ae31ad8520e0f5bc337a7e97e30c35fc0898c5f25dea322b9f41afa191a75eb3502455a96f2cb03f3699802ac38dcd1af67445fb8a3b2 pinentry-bemenu-0.13.1.tar.gz
+45e542b6feef5d8b61b84a93572f04bb3ec8d972eb820b9fef5f04a67e0e44adb252eeb6cbcd53b3942006f3bb2179d894050b1640f6cf4607cd912c26c934dc meson-ungit.patch
"
diff --git a/testing/pinentry-bemenu/meson-ungit.patch b/testing/pinentry-bemenu/meson-ungit.patch
index 10a50caf4b9..477860cc8b4 100644
--- a/testing/pinentry-bemenu/meson-ungit.patch
+++ b/testing/pinentry-bemenu/meson-ungit.patch
@@ -1,19 +1,15 @@
--- a/meson.build
+++ b/meson.build
-@@ -1,12 +1,12 @@
- project('pinentry-bemenu', 'c',
-+ version : files('VERSION'),
- default_options : ['warning_level=3', 'c_std=c11'])
+@@ -4,10 +4,10 @@
+ )
-version_h = vcs_tag(
+version_h = configure_file(
+ configuration : { 'VCS_TAG': meson.project_version() },
input : 'version.h.in',
-- output : 'version.h',
+ output : 'version.h',
- command : ['git', 'describe', '--tag', '--dirty', '--broken'],
--)
-+ output : 'version.h')
+ )
compiler = meson.get_compiler('c')
-
diff --git a/testing/pinephone-compass/APKBUILD b/testing/pinephone-compass/APKBUILD
index c378831d23a..a2e6ff56726 100644
--- a/testing/pinephone-compass/APKBUILD
+++ b/testing/pinephone-compass/APKBUILD
@@ -1,21 +1,37 @@
# Contributor: Mike Banon <mikebdp2@gmail.com>
# Maintainer: Mike Banon <mikebdp2@gmail.com>
pkgname=pinephone-compass
-pkgver=0.3.1
-pkgrel=0
+pkgver=0.4.0
+pkgrel=1
pkgdesc="GTK3 compass app for the Pine64 Pinephone, supports LIS3MDL and AF8133J magnetometers"
url="https://gitlab.com/lgtrombetta/pinephone-compass"
license="GPL-3.0-or-later"
arch="aarch64"
-depends="python3 py3-matplotlib py3-numpy py3-pandas py3-xdg"
-makedepends="meson gettext glib-dev"
-source="https://gitlab.com/lgtrombetta/pinephone-compass/-/archive/v$pkgver/pinephone-compass-v$pkgver.tar.gz"
+depends="
+ gtk+3.0
+ libhandy1
+ librsvg
+ py3-gobject3
+ py3-matplotlib
+ py3-numpy
+ py3-pandas
+ py3-xdg
+ python3
+ "
+makedepends="
+ gettext
+ glib-dev
+ meson
+ "
+source="https://gitlab.com/lgtrombetta/pinephone-compass/-/archive/v$pkgver/compass-v$pkgver.tar.gz
+ correct_udev_rules_path.patch
+"
options="!check" # no test suite
-builddir="$srcdir/$pkgname-v$pkgver"
+builddir="$srcdir/compass-v$pkgver"
build() {
abuild-meson . output
- meson compile ${JOBS:+-j ${JOBS}} -C output
+ meson compile -C output
}
package() {
@@ -23,5 +39,6 @@ package() {
}
sha512sums="
-faaac974727060d5bacdd13b3d59621da7f5dd47b70a11a36e6250041cc37f93146c8b6163b20231b402cce7d42662ef3862d77897c0c74af79b61cb89daa043 pinephone-compass-v0.3.1.tar.gz
+34cdc6abea979e363a088c53af14679c600e270002f28166d3348544ad28ca28c06328b6299ea2a074def0d1291a600ff6c2e7244487077187d029c687726aa1 compass-v0.4.0.tar.gz
+807355165b7d732bba183cfd19d89caf5fdb0041f4e30a965d19d6e39542da5cbf2bcb458519499ad052048522180585dd7317d78cdfae972da121bb3a45b11b correct_udev_rules_path.patch
"
diff --git a/testing/pinephone-compass/correct_udev_rules_path.patch b/testing/pinephone-compass/correct_udev_rules_path.patch
new file mode 100644
index 00000000000..36be538d9e4
--- /dev/null
+++ b/testing/pinephone-compass/correct_udev_rules_path.patch
@@ -0,0 +1,13 @@
+diff --git a/data/meson.build b/data/meson.build
+index f35d456..15c54ae 100644
+--- a/data/meson.build
++++ b/data/meson.build
+@@ -33,7 +33,7 @@ install_data('com.gitlab.lgtrombetta.Compass.gschema.xml',
+ install_dir: join_paths(get_option('datadir'), 'glib-2.0/schemas')
+ )
+
+-install_data('90-magn.rules', install_dir: '/lib/udev/rules.d')
++install_data('90-magn.rules', install_dir: '/usr/lib/udev/rules.d/')
+
+ compile_schemas = find_program('glib-compile-schemas', required: false)
+ if compile_schemas.found()
diff --git a/testing/pingus/00-fix-python-typos.patch b/testing/pingus/00-fix-python-typos.patch
deleted file mode 100644
index 4388ce37669..00000000000
--- a/testing/pingus/00-fix-python-typos.patch
+++ /dev/null
@@ -1,19 +0,0 @@
---- a/SConscript
-+++ b/SConscript
-@@ -126,12 +126,12 @@
- def configure_end(self):
- self.env = self.conf.Finish()
-
-- print "Reports:"
-- print self.reports
-+ print("Reports:")
-+ print(self.reports)
-
- if not self.fatal_error == "":
-- print "Fatal Errors:"
-- print self.fatal_error
-+ print("Fatal Errors:")
-+ print(self.fatal_error)
- Exit(1)
-
- def configure_gxx(self):
diff --git a/testing/pingus/01-pingus-1.76-boost-1.69.patch b/testing/pingus/01-pingus-1.76-boost-1.69.patch
deleted file mode 100644
index b27620b6398..00000000000
--- a/testing/pingus/01-pingus-1.76-boost-1.69.patch
+++ /dev/null
@@ -1,382 +0,0 @@
---- a/SConscript
-+++ b/SConscript
-@@ -187,9 +187,8 @@ class Project:
- 'src/engine/input/xinput/xinput_device.cpp'])
-
- def configure_boost(self):
-- if not self.conf.CheckLibWithHeader('boost_signals', 'boost/signals.hpp', 'c++'):
-- if not self.conf.CheckLibWithHeader('boost_signals-mt', 'boost/signals.hpp', 'c++'):
-- self.fatal_error += " * library 'boost_signals' not found\n"
-+ if not self.conf.CheckHeader('boost/signals2.hpp', '<>', 'c++'):
-+ self.fatal_error += " * library 'boost_signals2' not found\n"
-
- def configure_png(self):
- if self.conf.CheckMyProgram('pkg-config'):
-
-
-
-
---- a/src/editor/button.hpp
-+++ b/src/editor/button.hpp
-@@ -17,7 +17,7 @@
- #ifndef HEADER_PINGUS_EDITOR_BUTTON_HPP
- #define HEADER_PINGUS_EDITOR_BUTTON_HPP
-
--#include <boost/signal.hpp>
-+#include <boost/signals2.hpp>
-
- #include "engine/gui/rect_component.hpp"
-
-@@ -48,7 +48,7 @@ public:
- void enable() { enabled = true; }
- void disable() { enabled = false; }
-
-- boost::signal<void()> on_click;
-+ boost::signals2::signal<void()> on_click;
-
- private:
- Button (const Button&);
-
-
-
-
---- a/src/editor/checkbox.hpp
-+++ b/src/editor/checkbox.hpp
-@@ -17,7 +17,7 @@
- #ifndef HEADER_PINGUS_EDITOR_CHECKBOX_HPP
- #define HEADER_PINGUS_EDITOR_CHECKBOX_HPP
-
--#include <boost/signal.hpp>
-+#include <boost/signals2.hpp>
-
- #include "engine/gui/rect_component.hpp"
-
-@@ -40,7 +40,7 @@ public:
- bool is_checked() const { return checked; }
- void on_primary_button_press(int x, int y);
-
-- boost::signal<void (bool)> on_change;
-+ boost::signals2::signal<void (bool)> on_change;
-
- private:
- Checkbox (const Checkbox&);
-
-
-
-
---- a/src/editor/combobox.hpp
-+++ b/src/editor/combobox.hpp
-@@ -18,7 +18,7 @@
- #ifndef HEADER_PINGUS_EDITOR_COMBOBOX_HPP
- #define HEADER_PINGUS_EDITOR_COMBOBOX_HPP
-
--#include <boost/signal.hpp>
-+#include <boost/signals2.hpp>
-
- #include "engine/display/sprite.hpp"
- #include "engine/gui/rect_component.hpp"
-@@ -88,7 +88,7 @@ public:
-
- void update_layout() {}
-
-- boost::signal<void (const ComboItem&)> on_select;
-+ boost::signals2::signal<void (const ComboItem&)> on_select;
-
- private:
- Combobox();
-
-
-
-
---- a/src/editor/file_list.hpp
-+++ b/src/editor/file_list.hpp
-@@ -17,7 +17,7 @@
- #ifndef HEADER_PINGUS_EDITOR_FILE_LIST_HPP
- #define HEADER_PINGUS_EDITOR_FILE_LIST_HPP
-
--#include <boost/signal.hpp>
-+#include <boost/signals2.hpp>
-
- #include "engine/display/sprite.hpp"
- #include "engine/gui/rect_component.hpp"
-@@ -61,7 +61,7 @@ public:
- bool has_more_next_pages();
- bool has_more_prev_pages();
-
-- boost::signal<void (const System::DirectoryEntry&)> on_click;
-+ boost::signals2::signal<void (const System::DirectoryEntry&)> on_click;
-
- private:
- int items_per_page();
-
-
-
-
---- a/src/editor/inputbox.hpp
-+++ b/src/editor/inputbox.hpp
-@@ -17,7 +17,7 @@
- #ifndef HEADER_PINGUS_EDITOR_INPUTBOX_HPP
- #define HEADER_PINGUS_EDITOR_INPUTBOX_HPP
-
--#include <boost/signal.hpp>
-+#include <boost/signals2.hpp>
-
- #include "engine/gui/rect_component.hpp"
-
-@@ -40,8 +40,8 @@ public:
-
- void update_layout() {}
-
-- boost::signal<void (const std::string&)> on_change;
-- boost::signal<void (const std::string&)> on_enter;
-+ boost::signals2::signal<void (const std::string&)> on_change;
-+ boost::signals2::signal<void (const std::string&)> on_enter;
-
- private:
- Inputbox (const Inputbox&);
-
-
-
-
---- a/src/editor/message_box.hpp
-+++ b/src/editor/message_box.hpp
-@@ -45,7 +45,7 @@ public:
- void on_cancel_button();
-
- public:
-- boost::signal<void()> on_ok;
-+ boost::signals2::signal<void()> on_ok;
-
- private:
- MessageBox(const MessageBox&);
-
-
-
-
---- a/src/editor/object_selector.cpp
-+++ b/src/editor/object_selector.cpp
-@@ -16,7 +16,7 @@
-
- #include "editor/object_selector.hpp"
-
--#include <boost/signal.hpp>
-+#include <boost/signals2.hpp>
-
- #include "editor/generic_level_obj.hpp"
- #include "editor/gui_style.hpp"
-@@ -47,7 +47,7 @@ private:
- std::string tooltip;
-
- public:
-- boost::signal<void()> on_click;
-+ boost::signals2::signal<void()> on_click;
-
- public:
- ObjectSelectorButton(ObjectSelectorList* object_list_,
-
-
-
-
---- a/src/editor/viewport.hpp
-+++ b/src/editor/viewport.hpp
-@@ -18,7 +18,7 @@
- #ifndef HEADER_PINGUS_EDITOR_VIEWPORT_HPP
- #define HEADER_PINGUS_EDITOR_VIEWPORT_HPP
-
--#include <boost/signal.hpp>
-+#include <boost/signals2.hpp>
- #include <set>
-
- #include "editor/selection.hpp"
-@@ -148,7 +148,7 @@ public:
-
- void clear_selection();
-
-- boost::signal<void (const Selection&)> selection_changed;
-+ boost::signals2::signal<void (const Selection&)> selection_changed;
- private:
- Viewport();
- Viewport (const Viewport&);
-
-
-
-
---- a/src/pingus/components/check_box.hpp
-+++ b/src/pingus/components/check_box.hpp
-@@ -17,7 +17,7 @@
- #ifndef HEADER_PINGUS_PINGUS_COMPONENTS_CHECK_BOX_HPP
- #define HEADER_PINGUS_PINGUS_COMPONENTS_CHECK_BOX_HPP
-
--#include <boost/signal.hpp>
-+#include <boost/signals2.hpp>
-
- #include "engine/display/sprite.hpp"
- #include "engine/gui/rect_component.hpp"
-@@ -39,7 +39,7 @@ public:
-
- void set_state(bool v, bool send_signal);
-
-- boost::signal<void (bool)> on_change;
-+ boost::signals2::signal<void (bool)> on_change;
-
- private:
- CheckBox (const CheckBox&);
-
-
-
-
---- a/src/pingus/components/choice_box.hpp
-+++ b/src/pingus/components/choice_box.hpp
-@@ -17,7 +17,7 @@
- #ifndef HEADER_PINGUS_PINGUS_COMPONENTS_CHOICE_BOX_HPP
- #define HEADER_PINGUS_PINGUS_COMPONENTS_CHOICE_BOX_HPP
-
--#include <boost/signal.hpp>
-+#include <boost/signals2.hpp>
-
- #include "engine/gui/rect_component.hpp"
-
-@@ -36,7 +36,7 @@ public:
- void add_choice(const std::string& str);
- void set_current_choice(int choice);
-
-- boost::signal<void (std::string)> on_change;
-+ boost::signals2::signal<void (std::string)> on_change;
-
- private:
- ChoiceBox (const ChoiceBox&);
-
-
-
-
---- a/src/pingus/components/slider_box.hpp
-+++ b/src/pingus/components/slider_box.hpp
-@@ -17,7 +17,7 @@
- #ifndef HEADER_PINGUS_PINGUS_COMPONENTS_SLIDER_BOX_HPP
- #define HEADER_PINGUS_PINGUS_COMPONENTS_SLIDER_BOX_HPP
-
--#include <boost/signal.hpp>
-+#include <boost/signals2.hpp>
-
- #include "engine/gui/rect_component.hpp"
-
-@@ -39,7 +39,7 @@ public:
-
- void set_value(int v);
-
-- boost::signal<void (int)> on_change;
-+ boost::signals2::signal<void (int)> on_change;
-
- private:
- SliderBox (const SliderBox&);
-
-
-
-
---- a/src/pingus/config_manager.hpp
-+++ b/src/pingus/config_manager.hpp
-@@ -17,7 +17,7 @@
- #ifndef HEADER_PINGUS_PINGUS_CONFIG_MANAGER_HPP
- #define HEADER_PINGUS_PINGUS_CONFIG_MANAGER_HPP
-
--#include <boost/signal.hpp>
-+#include <boost/signals2.hpp>
-
- #include "math/size.hpp"
- #include "pingus/options.hpp"
-@@ -39,55 +39,55 @@ public:
-
- void set_master_volume(int);
- int get_master_volume() const;
-- boost::signal<void(int)> on_master_volume_change;
-+ boost::signals2::signal<void(int)> on_master_volume_change;
-
- void set_sound_volume(int);
- int get_sound_volume() const;
-- boost::signal<void(int)> on_sound_volume_change;
-+ boost::signals2::signal<void(int)> on_sound_volume_change;
-
- void set_music_volume(int);
- int get_music_volume() const;
-- boost::signal<void(int)> on_music_volume_change;
-+ boost::signals2::signal<void(int)> on_music_volume_change;
-
- void set_fullscreen_resolution(const Size& size);
- Size get_fullscreen_resolution() const;
-- boost::signal<void(Size)> on_fullscreen_resolution_change;
-+ boost::signals2::signal<void(Size)> on_fullscreen_resolution_change;
-
- void set_fullscreen(bool);
- bool get_fullscreen() const;
-- boost::signal<void(bool)> on_fullscreen_change;
-+ boost::signals2::signal<void(bool)> on_fullscreen_change;
-
- void set_renderer(FramebufferType type);
- FramebufferType get_renderer() const;
-- boost::signal<void(FramebufferType)> on_renderer_change;
-+ boost::signals2::signal<void(FramebufferType)> on_renderer_change;
-
- void set_resizable(bool);
- bool get_resizable() const;
-- boost::signal<void(bool)> on_resizable_change;
-+ boost::signals2::signal<void(bool)> on_resizable_change;
-
- void set_mouse_grab(bool);
- bool get_mouse_grab() const;
-- boost::signal<void(bool)> on_mouse_grab_change;
-+ boost::signals2::signal<void(bool)> on_mouse_grab_change;
-
- void set_print_fps(bool);
- bool get_print_fps() const;
-- boost::signal<void(bool)> on_print_fps_change;
-+ boost::signals2::signal<void(bool)> on_print_fps_change;
-
- void set_language(const tinygettext::Language&);
- tinygettext::Language get_language() const;
-- boost::signal<void(const tinygettext::Language&)> on_language_change;
-+ boost::signals2::signal<void(const tinygettext::Language&)> on_language_change;
-
- void set_software_cursor(bool);
- bool get_software_cursor() const;
-- boost::signal<void(bool)> on_software_cursor_change;
-+ boost::signals2::signal<void(bool)> on_software_cursor_change;
-
- void set_auto_scrolling(bool);
- bool get_auto_scrolling() const;
-- boost::signal<void(bool)> on_auto_scrolling_change;
-+ boost::signals2::signal<void(bool)> on_auto_scrolling_change;
-
- void set_drag_drop_scrolling(bool);
- bool get_drag_drop_scrolling() const;
-- boost::signal<void(bool)> on_drag_drop_scrolling_change;
-+ boost::signals2::signal<void(bool)> on_drag_drop_scrolling_change;
-
- private:
- ConfigManager (const ConfigManager&);
-
-
-
-
---- a/src/pingus/screens/option_menu.hpp
-+++ b/src/pingus/screens/option_menu.hpp
-@@ -17,7 +17,7 @@
- #ifndef HEADER_PINGUS_PINGUS_SCREENS_OPTION_MENU_HPP
- #define HEADER_PINGUS_PINGUS_SCREENS_OPTION_MENU_HPP
-
--#include <boost/signals.hpp>
-+#include <boost/signals2.hpp>
- #include <map>
- #include <vector>
-
-@@ -66,7 +66,7 @@ private:
- //Label* defaults_label;
- //CheckBox* defaults_box;
-
-- typedef std::vector<boost::signals::connection> Connections;
-+ typedef std::vector<boost::signals2::connection> Connections;
- Connections connections;
-
- tinygettext::Language m_language;
---
-2.18.1
-
diff --git a/testing/pingus/02-missing-header.patch b/testing/pingus/02-missing-header.patch
deleted file mode 100644
index a6d7dded4c1..00000000000
--- a/testing/pingus/02-missing-header.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/src/pingus/screens/demo_session.cpp
-+++ b/src/pingus/screens/demo_session.cpp
-@@ -18,6 +18,7 @@
-
- #include <algorithm>
- #include <iostream>
-+#include <functional>
-
- #include "engine/gui/gui_manager.hpp"
- #include "engine/gui/surface_button.hpp"
-
diff --git a/testing/pingus/03-pingus-0.7.6-gcc470-udl.patch b/testing/pingus/03-pingus-0.7.6-gcc470-udl.patch
deleted file mode 100644
index 8c05149feb2..00000000000
--- a/testing/pingus/03-pingus-0.7.6-gcc470-udl.patch
+++ /dev/null
@@ -1,22 +0,0 @@
---- a/src/pingus/pingus_main.cpp~ 2011-12-24 15:46:47.000000000 -0600
-+++ b/src/pingus/pingus_main.cpp 2012-01-03 13:13:03.034195720 -0600
-@@ -465,7 +465,7 @@
- void
- PingusMain::print_greeting_message()
- {
-- std::string greeting = "Welcome to Pingus "VERSION;
-+ std::string greeting = "Welcome to Pingus " VERSION;
- greeting += "!";
- std::cout << greeting << std::endl;
- for (unsigned int i = 0; i < greeting.length(); ++i)
---- a/src/pingus/screens/pingus_menu.cpp~ 2011-12-24 15:46:47.000000000 -0600
-+++ b/src/pingus/screens/pingus_menu.cpp 2012-01-03 13:30:28.967700554 -0600
-@@ -153,7 +153,7 @@
- gc.get_height()/2 - 280));
-
- gc.print_left(Fonts::pingus_small, Vector2i(gc.get_width()/2 - 400 + 25, gc.get_height()-140),
-- "Pingus "VERSION" - Copyright (C) 1998-2011 Ingo Ruhnke <grumbel@gmail.com>\n"
-+ "Pingus " VERSION " - Copyright (C) 1998-2011 Ingo Ruhnke <grumbel@gmail.com>\n"
- "See the file AUTHORS for a complete list of contributors.\n"
- "Pingus comes with ABSOLUTELY NO WARRANTY. This is free software, and you are\n"
- "welcome to redistribute it under certain conditions; see the file COPYING for details.\n");
diff --git a/testing/pingus/APKBUILD b/testing/pingus/APKBUILD
deleted file mode 100644
index 1b7aa5b7586..00000000000
--- a/testing/pingus/APKBUILD
+++ /dev/null
@@ -1,41 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=pingus
-pkgver=0.7.6
-pkgrel=6
-pkgdesc="Free Lemmings(TM) clone"
-url="https://pingus.seul.org/"
-arch="all"
-license="GPL-2.0-only"
-depends="$pkgname-data libmikmod"
-makedepends="freeglut-dev sdl12-compat-dev sdl_image-dev sdl_mixer-dev libpng-dev boost-dev scons"
-options="!check" # No testsuite
-source="https://gitlab.com/pingus/downloads/-/raw/master/pingus-$pkgver.tar.bz2
- 00-fix-python-typos.patch
- 01-pingus-1.76-boost-1.69.patch
- 02-missing-header.patch
- 03-pingus-0.7.6-gcc470-udl.patch
- pingus.desktop
- "
-subpackages="$pkgname-doc $pkgname-data::noarch"
-
-build() {
- scons prefix=/usr DESTDIR="$pkgdir"
-}
-
-package() {
- make PREFIX=/usr DESTDIR="$pkgdir" install
- install -Dm644 "$srcdir"/pingus.desktop \
- "$pkgdir"/usr/share/applications/pingus.desktop
-}
-
-data() {
- pkgdesc="$pkgdesc (data files)"
- amove /usr/share/pingus
-}
-
-sha512sums="6c8c2ace1a9229b4e3b506aee76aa94c0dd906a64fa2c817902c2cd3854df390cf675c8c6ddd3ba1926a467348b2103818bd44bc095378cc7bf3f2ff7af27188 pingus-0.7.6.tar.bz2
-674620c2b56df129f297a41bb4fc61af18063a17a9cd3022418cfa28b12f422a37db3e04b04d2a28f450a3250ac6a7dc58fe44fefda60577a0af6cb5b0c10739 00-fix-python-typos.patch
-d6dff30f61ebf57d2f8768f5e5f9721b4ff675ca1c9e3af99c96f9d79b06acf8aeb838a9b93d3b7eb6280c6af886809f0ef272ec5016fca75be00b755efc9c34 01-pingus-1.76-boost-1.69.patch
-b872ad5f1ba988c2c29f1ac84dc8af72b891a57b657e3894158d020857876c8a5859b48dc18d126c0ddfc102183c77a1977b03f296bd5969ec8ff23b154d29d9 02-missing-header.patch
-6b5ced7f03911694a219e42ca69953625cfe1f8059c788d5261640407286e90c7792c587df881656cce6730bf003de3ee12083c329c7520d0cebdf59ad797a0d 03-pingus-0.7.6-gcc470-udl.patch
-6c2a8da1bcb250217c47d70ad223c02cf12879bab201433e76bf98f5693886ab0d96da295a795bfefe1723596011d41ff615c2262a277414234b88c8e35c64c8 pingus.desktop"
diff --git a/testing/pingus/pingus.desktop b/testing/pingus/pingus.desktop
deleted file mode 100644
index 276db36a444..00000000000
--- a/testing/pingus/pingus.desktop
+++ /dev/null
@@ -1,9 +0,0 @@
-[Desktop Entry]
-Encoding=UTF-8
-Name=Pingus
-Comment=A free Lemmings[tm] clone
-Exec=pingus
-Terminal=false
-Type=Application
-Categories=Application;Game;LogicGame
-Icon=/usr/share/pingus/images/core/editor/actions.png
diff --git a/testing/pipe-viewer/APKBUILD b/testing/pipe-viewer/APKBUILD
deleted file mode 100644
index 14c09458670..00000000000
--- a/testing/pipe-viewer/APKBUILD
+++ /dev/null
@@ -1,46 +0,0 @@
-# Contributor: Dmitry Zakharchenko <dmitz@disroot.org>
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=pipe-viewer
-pkgver=0.2.1
-pkgrel=0
-pkgdesc="Lightweight YouTube client that does not require an YouTube API key"
-url="https://github.com/trizen/pipe-viewer"
-arch="noarch"
-license="Artistic-2.0"
-makedepends="perl-module-build"
-depends="
- perl-data-dump
- perl-json
- perl-libwww
- perl-lwp-protocol-https
- perl-term-readline-gnu
- perl-unicode-linebreak
- "
-checkdepends="perl-test-pod"
-subpackages="$pkgname-doc $pkgname-gtk"
-source="$pkgname-$pkgver.tar.gz::$url/archive/$pkgver.tar.gz"
-
-build() {
- perl Build.PL --gtk3
-}
-
-check() {
- ./Build test
-}
-
-package() {
- ./Build install --destdir "$pkgdir" --installdirs vendor
-}
-
-gtk() {
- depends="$pkgname perl-gtk3 perl-file-sharedir"
- pkgdesc="$pkgdesc (GTK interface)"
-
- amove usr/bin/gtk-pipe-viewer
- amove "usr/share/perl5/vendor_perl/auto/share/dist/WWW-PipeViewer/gtk-*"
- amove usr/share/perl5/vendor_perl/auto/share/dist/WWW-PipeViewer/icons
-}
-
-sha512sums="
-ef4a7de3257dc31b64a0a5908bc385887b094e805e13a255399af90ac10114eee6f5a4659215476b51367cd9bfae38495b85a564639ab8b32c0bcede09cb67e5 pipe-viewer-0.2.1.tar.gz
-"
diff --git a/testing/pipectl/APKBUILD b/testing/pipectl/APKBUILD
index c46242d606a..1ec06bae5fc 100644
--- a/testing/pipectl/APKBUILD
+++ b/testing/pipectl/APKBUILD
@@ -1,19 +1,21 @@
-# Maintainer: Stacy Harper <contact@stacyharper.net>
+# Maintainer: Willow Barraco <contact@willowbarraco.fr>
pkgname=pipectl
-pkgver=0.3.0
-pkgrel=0
+pkgver=0.4.1
+pkgrel=1
pkgdesc="A simple named pipe management utility"
url="https://github.com/Ferdi265/pipectl"
license="GPL-3.0-or-later"
arch="all"
-makedepends="cmake samurai"
+makedepends="cmake samurai scdoc"
+subpackages="$pkgname-doc"
source="https://github.com/Ferdi265/pipectl/archive/v$pkgver/pipectl-$pkgver.tar.gz"
options="!check" # no test suite
build() {
cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=MinSizeRel \
- -DCMAKE_INSTALL_PREFIX=/usr
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DINSTALL_DOCUMENTATION=ON
cmake --build build
}
@@ -22,5 +24,5 @@ package() {
}
sha512sums="
-fc54c68e828d6664b7c9fc6700dc89722613fa87572ad0f36ed5e4e5604decaa40918ff856a9d541adb4bcf4e7c54e65b5f7211ea8ae9366de345b9fc6f5c748 pipectl-0.3.0.tar.gz
+812993da6a274dc4965d1aec93ff557a421881159be1b457621488dcc74b673a6cddfa39cd2c0f22723036d71289341f3702771de6ff47b28f02a4721dd99260 pipectl-0.4.1.tar.gz
"
diff --git a/testing/pipeline/APKBUILD b/testing/pipeline/APKBUILD
new file mode 100644
index 00000000000..130798d722b
--- /dev/null
+++ b/testing/pipeline/APKBUILD
@@ -0,0 +1,47 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=pipeline
+pkgver=1.14.5
+pkgrel=0
+pkgdesc="Watch YouTube and PeerTube videos in one place"
+url="https://gitlab.com/schmiddi-on-mobile/pipeline"
+arch="all"
+license="GPL-3.0-or-later"
+makedepends="
+ appstream-glib
+ cargo
+ cargo-auditable
+ desktop-file-utils
+ gtk4.0-dev
+ libadwaita-dev
+ meson
+ openssl-dev
+"
+subpackages="$pkgname-doc $pkgname-lang"
+source="
+ $pkgname-$pkgver.tar.gz::https://gitlab.com/schmiddi-on-mobile/pipeline/-/archive/v$pkgver/pipeline-v$pkgver.tar.gz
+"
+options="net !check" # no tests
+builddir="$srcdir/$pkgname-v$pkgver"
+
+prepare() {
+ default_prepare
+
+ meson setup build --prefix /usr
+ sed -i "s/cargo build/cargo auditable build --frozen/" build/build.ninja
+ CARGO_HOME="$builddir"/build/cargo-home cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ meson compile -C build
+}
+
+package() {
+ meson install -C build --no-rebuild --destdir "$pkgdir"
+
+ install -Dm 644 LICENSE "$pkgdir"/usr/share/licenses/"$pkgname"/LICENSE
+}
+
+sha512sums="
+92d32d91c8e8acd3f93c71d5c7b0c13028c9e6667023a68d1b06d01e9fe576418ebdf5b2378c117d942d73f5f36be605138f02e04d587f2d801fd7b69af5c3f2 pipeline-1.14.5.tar.gz
+"
diff --git a/testing/piper-phonemize/APKBUILD b/testing/piper-phonemize/APKBUILD
new file mode 100644
index 00000000000..0292235936b
--- /dev/null
+++ b/testing/piper-phonemize/APKBUILD
@@ -0,0 +1,61 @@
+# Maintainer: leso-kn <info@lesosoftware.com>
+pkgname=piper-phonemize
+_pkgver=2023.11.14-4
+pkgver=${_pkgver/-/.}
+pkgrel=1
+pkgdesc="C++ library for converting text to phonemes for piper-tts"
+url="https://github.com/rhasspy/piper-phonemize"
+# x86, s390x: not supported by onnxruntime
+arch="all !x86 !s390x"
+license="MIT AND GPL-3.0-only"
+depends_dev="$pkgname-libs"
+makedepends="
+ cmake
+ espeak-ng-dev
+ onnxruntime-dev
+ samurai
+ "
+subpackages="
+ $pkgname-dev
+ $pkgname-libs:_libs
+ "
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/rhasspy/piper-phonemize/archive/refs/tags/$_pkgver.tar.gz
+ no-rpath.patch
+ use-system-espeak-ng.patch
+ use-system-onnxruntime.patch
+ add-pkgconfig-support.patch
+ "
+builddir="$srcdir"/piper-phonemize-$_pkgver
+
+case "$CARCH" in
+ riscv64) options="!check";;
+esac
+
+build() {
+ CXXFLAGS="$CXXFLAGS -flto=auto" \
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCMAKE_INSTALL_PREFIX=/usr
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+_libs() {
+ amove usr/lib
+}
+
+sha512sums="
+0a5e07c98da91fd887a9082d42b7b884277fcb02af3116c71fe0900457528dd432abe2634c837f8fe8b47c718ff9dbc4003ce36d502d6a58c7ecc61fab015776 piper-phonemize-2023.11.14.4.tar.gz
+793c4e6b2666bce8840474cc1c927d459ac9e0b8d752777aa4dd17e5b9a6aaa242ef44a9b88d18bc96886f58be4dcb3c8d885dfc26c92d9d0d1fc08626d6da77 no-rpath.patch
+7afc438cb3c2af3c1b502a5d9f2360efe26636c8ae346432bc749c20ada3d29e57cafaa92c0779ce3954353f70e9f82bf03e7010019b940f7c17695c5c0e5ed1 use-system-espeak-ng.patch
+7288e01ec021d5c14fb39769ca8f219f95d5781301504ce7cd6b0bc4cfa590f60ebfb9293a741972768ac5a6e066d462ea49ba1f141aad98276ff1a31e07ab8c use-system-onnxruntime.patch
+1cb5e8c0f6bdfc53e6de7422c89b0561586e28fd9c0692d87578e47d1f903b25387c887f23a81621f128a2cd0306a9ef2b5f9cf9d57b25d6a9402ef09e62d5ab add-pkgconfig-support.patch
+"
diff --git a/testing/piper-phonemize/add-pkgconfig-support.patch b/testing/piper-phonemize/add-pkgconfig-support.patch
new file mode 100644
index 00000000000..f7a5cfb228c
--- /dev/null
+++ b/testing/piper-phonemize/add-pkgconfig-support.patch
@@ -0,0 +1,50 @@
+commit 6f9df58efef9fd8262e37c717d25f37839f4cdc0
+Author: Shaun Ren <shaun.ren@linux.com>
+Date: Fri Sep 29 22:56:36 2023 -0400
+
+ Add piper_phonemize.pc
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index a7b30a6..b7fd68c 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -166,6 +166,9 @@ endif()
+
+ target_compile_features(piper_phonemize PUBLIC cxx_std_17)
+
++set(pc_requires_private "espeak-ng libonnxruntime")
++configure_file(piper_phonemize.pc.in piper_phonemize.pc @ONLY)
++
+ # ---- Declare executable ----
+
+ add_executable(piper_phonemize_exe src/main.cpp src/phoneme_ids.cpp)
+@@ -249,6 +252,10 @@ install(
+ PATTERN "*.h"
+ PATTERN "*.hpp")
+
++install(
++ FILES ${CMAKE_CURRENT_BINARY_DIR}/piper_phonemize.pc
++ DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
++
+ install(
+ TARGETS piper_phonemize_exe
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_BINDIR})
+diff --git a/piper_phonemize.pc.in b/piper_phonemize.pc.in
+new file mode 100644
+index 0000000..57d32db
+--- /dev/null
++++ b/piper_phonemize.pc.in
+@@ -0,0 +1,13 @@
++prefix="@CMAKE_INSTALL_PREFIX@"
++exec_prefix="${prefix}"
++libdir="${prefix}/@CMAKE_INSTALL_LIBDIR@"
++includedir="${prefix}/include"
++
++Name: @PROJECT_NAME@
++Description: @CMAKE_PROJECT_DESCRIPTION@
++URL: @CMAKE_PROJECT_HOMEPAGE_URL@
++Version: @PROJECT_VERSION@
++
++Requires.private: @pc_requires_private@
++Cflags: -I"${includedir}"
++Libs: -L"${libdir}" -l@PROJECT_NAME@
diff --git a/testing/piper-phonemize/no-rpath.patch b/testing/piper-phonemize/no-rpath.patch
new file mode 100644
index 00000000000..43266a301e1
--- /dev/null
+++ b/testing/piper-phonemize/no-rpath.patch
@@ -0,0 +1,13 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index b1562a1..afb0c03 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -17,7 +17,7 @@ if(MSVC)
+
+ elseif(NOT APPLE)
+ # Linux flags
+- string(APPEND CMAKE_CXX_FLAGS " -Wall -Wextra -Wl,-rpath,'$ORIGIN'")
++ string(APPEND CMAKE_CXX_FLAGS " -Wall -Wextra")
+ string(APPEND CMAKE_C_FLAGS " -Wall -Wextra")
+ endif()
+
diff --git a/testing/piper-phonemize/use-system-espeak-ng.patch b/testing/piper-phonemize/use-system-espeak-ng.patch
new file mode 100644
index 00000000000..16e790dd0c1
--- /dev/null
+++ b/testing/piper-phonemize/use-system-espeak-ng.patch
@@ -0,0 +1,110 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index b1562a1..4de504c 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -97,7 +97,10 @@ endif()
+
+ # ---- espeak-ng ---
+
+-if(NOT DEFINED ESPEAK_NG_DIR)
++find_package(PkgConfig)
++pkg_check_modules(ESPEAK_NG REQUIRED espeak-ng<2)
++
++if(FALSE)
+ set(ESPEAK_NG_DIR "${CMAKE_CURRENT_BINARY_DIR}/ei")
+
+ include(ExternalProject)
+@@ -125,13 +128,11 @@ endif()
+ target_include_directories(
+ piper_phonemize PUBLIC
+ "$<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}/src>"
+- ${ESPEAK_NG_DIR}/include
+ ${ONNXRUNTIME_DIR}/include
+ )
+
+ target_link_directories(
+ piper_phonemize PUBLIC
+- ${ESPEAK_NG_DIR}/lib
+ ${ONNXRUNTIME_DIR}/lib
+ )
+
+@@ -221,16 +221,3 @@ install(
+ install(
+ FILES ${CMAKE_SOURCE_DIR}/etc/libtashkeel_model.ort
+ TYPE DATA)
+-
+-# Dependencies
+-install(
+- DIRECTORY ${ESPEAK_NG_DIR}/
+- DESTINATION ${CMAKE_INSTALL_PREFIX})
+-
+-install(
+- DIRECTORY ${ONNXRUNTIME_DIR}/include/
+- DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
+-
+-install(
+- DIRECTORY ${ONNXRUNTIME_DIR}/lib/
+- DESTINATION ${CMAKE_INSTALL_LIBDIR})
+diff --git a/src/phonemize.cpp b/src/phonemize.cpp
+index 28b01e4..a5b748a 100644
+--- a/src/phonemize.cpp
++++ b/src/phonemize.cpp
+@@ -35,14 +35,21 @@ void phonemize_eSpeak(std::string text, eSpeakPhonemeConfig &config,
+
+ std::vector<Phoneme> *sentencePhonemes = nullptr;
+ const char *inputTextPointer = textCopy.c_str();
+- int terminator = 0;
+
+ while (inputTextPointer != NULL) {
+- // Modified espeak-ng API to get access to clause terminator
+- std::string clausePhonemes(espeak_TextToPhonemesWithTerminator(
++ int terminator = 0;
++ std::string clausePhonemes(espeak_TextToPhonemes(
+ (const void **)&inputTextPointer,
+ /*textmode*/ espeakCHARS_AUTO,
+- /*phonememode = IPA*/ 0x02, &terminator));
++ /*phonememode = IPA*/ 0x02));
++
++ const char *remainingTextPointer = inputTextPointer ? inputTextPointer : textCopy.c_str()+textCopy.length()+1;
++ for (size_t i = -2; remainingTextPointer+i > textCopy.c_str(); i--) {
++ if ((remainingTextPointer[i]) != ' ') {
++ terminator = remainingTextPointer[i];
++ break;
++ }
++ }
+
+ // Decompose, e.g. "ç" -> "c" + "̧"
+ auto phonemesNorm = una::norm::to_nfd_utf8(clausePhonemes);
+@@ -105,25 +112,24 @@ void phonemize_eSpeak(std::string text, eSpeakPhonemeConfig &config,
+ }
+
+ // Add appropriate punctuation depending on terminator type
+- int punctuation = terminator & 0x000FFFFF;
+- if (punctuation == CLAUSE_PERIOD) {
++ if (terminator == '.') {
+ sentencePhonemes->push_back(config.period);
+- } else if (punctuation == CLAUSE_QUESTION) {
++ } else if (terminator == '?') {
+ sentencePhonemes->push_back(config.question);
+- } else if (punctuation == CLAUSE_EXCLAMATION) {
++ } else if (terminator == '!') {
+ sentencePhonemes->push_back(config.exclamation);
+- } else if (punctuation == CLAUSE_COMMA) {
++ } else if (terminator == ',') {
+ sentencePhonemes->push_back(config.comma);
+ sentencePhonemes->push_back(config.space);
+- } else if (punctuation == CLAUSE_COLON) {
++ } else if (terminator == ':') {
+ sentencePhonemes->push_back(config.colon);
+ sentencePhonemes->push_back(config.space);
+- } else if (punctuation == CLAUSE_SEMICOLON) {
++ } else if (terminator == ';') {
+ sentencePhonemes->push_back(config.semicolon);
+ sentencePhonemes->push_back(config.space);
+ }
+
+- if ((terminator & CLAUSE_TYPE_SENTENCE) == CLAUSE_TYPE_SENTENCE) {
++ if (terminator == '.' || terminator == '?' || terminator == '!') {
+ // End of sentence
+ sentencePhonemes = nullptr;
+ }
diff --git a/testing/piper-phonemize/use-system-onnxruntime.patch b/testing/piper-phonemize/use-system-onnxruntime.patch
new file mode 100644
index 00000000000..96140176985
--- /dev/null
+++ b/testing/piper-phonemize/use-system-onnxruntime.patch
@@ -0,0 +1,36 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index d23aa2f..edc9c09 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -37,7 +37,7 @@ set_target_properties(piper_phonemize PROPERTIES
+ # ---- onnxruntime ---
+
+ # Look for onnxruntime files in <root>/lib
+-if(NOT DEFINED ONNXRUNTIME_DIR)
++if(FALSE)
+ if(NOT DEFINED ONNXRUNTIME_VERSION)
+ set(ONNXRUNTIME_VERSION "1.14.1")
+ endif()
+@@ -99,6 +99,7 @@ endif()
+
+ find_package(PkgConfig)
+ pkg_check_modules(ESPEAK_NG REQUIRED espeak-ng<2)
++pkg_check_modules(ONNXRUNTIME REQUIRED libonnxruntime)
+
+ if(FALSE)
+ set(ESPEAK_NG_DIR "${CMAKE_CURRENT_BINARY_DIR}/ei")
+@@ -128,12 +129,12 @@ endif()
+ target_include_directories(
+ piper_phonemize PUBLIC
+ "$<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}/src>"
+- ${ONNXRUNTIME_DIR}/include
++ ${ONNXRUNTIME_INCLUDE_DIRS}
+ )
+
+ target_link_directories(
+ piper_phonemize PUBLIC
+- ${ONNXRUNTIME_DIR}/lib
++ ${ONNXRUNTIME_LIBRARY_DIRS}
+ )
+
+ target_link_libraries(
diff --git a/testing/piper-tts/APKBUILD b/testing/piper-tts/APKBUILD
new file mode 100644
index 00000000000..965abc240fb
--- /dev/null
+++ b/testing/piper-tts/APKBUILD
@@ -0,0 +1,54 @@
+# Maintainer: leso-kn <info@lesosoftware.com>
+pkgname=piper-tts
+_pkgver=2023.11.14-2
+pkgver=${_pkgver/-/.}
+pkgrel=3
+pkgdesc="Fast, local neural text to speech system"
+url="https://github.com/rhasspy/piper"
+provides="larynx2=$pkgver-r$pkgrel"
+replaces=larynx2
+# x86, s390x: not supported by onnxruntime
+arch="all !x86 !s390x"
+license="MIT"
+depends_dev="
+ espeak-ng-dev
+ onnxruntime-dev
+ piper-phonemize-dev
+ "
+makedepends="
+ $depends_dev
+ cmake
+ pcaudiolib-dev
+ samurai
+ spdlog-dev
+ "
+subpackages="$pkgname-dev"
+source="$pkgname-$pkgver.tar.gz::https://github.com/rhasspy/piper/archive/refs/tags/$_pkgver.tar.gz
+ no-rpath.patch
+ use-system-libs.patch
+ "
+builddir="$srcdir"/piper-$_pkgver
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=None
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ install -Dm755 build/piper \
+ -t "$pkgdir"/usr/bin/
+
+ mkdir -p "$pkgdir"/usr/include/piper
+ cp -a src/cpp/*.h src/cpp/*.hpp src/cpp/utf8/ "$pkgdir"/usr/include/piper/
+}
+
+sha512sums="
+2156c8d384aafc977a41eea181855b5e3fddab1eca353528d919d421958e4c10dbcf6526d03433e4246ac847a2fe4a7c43a57d2cb5666993ad0f28ed9fb68fe6 piper-tts-2023.11.14.2.tar.gz
+60c3233dd281c7a73077bca2c191c095ac7447cda34018c085fb08f5866d785d13bf5099a25d3803fa78215c2e3e73b6671349a0446286a6ec808335dcaa8808 no-rpath.patch
+7d0a2df1139edea6c46d49b7440b5be76c52a1b46835c7647fcc0a400351829dc0a6e77cf9c3f77aaeea6e4ec616317e707b2ab2e94c7b9de9533d147a8155d9 use-system-libs.patch
+"
diff --git a/testing/piper-tts/no-rpath.patch b/testing/piper-tts/no-rpath.patch
new file mode 100644
index 00000000000..5f8d093ea2f
--- /dev/null
+++ b/testing/piper-tts/no-rpath.patch
@@ -0,0 +1,12 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index f96ec44..df05cc2 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -13,7 +13,7 @@ if(MSVC)
+ add_compile_options("$<$<CXX_COMPILER_ID:MSVC>:/utf-8>")
+ elseif(NOT APPLE)
+ # Linux flags
+- string(APPEND CMAKE_CXX_FLAGS " -Wall -Wextra -Wl,-rpath,'$ORIGIN'")
++ string(APPEND CMAKE_CXX_FLAGS " -Wall -Wextra")
+ string(APPEND CMAKE_C_FLAGS " -Wall -Wextra")
+ endif()
diff --git a/testing/piper-tts/use-system-libs.patch b/testing/piper-tts/use-system-libs.patch
new file mode 100644
index 00000000000..44e180d2c8a
--- /dev/null
+++ b/testing/piper-tts/use-system-libs.patch
@@ -0,0 +1,130 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index f96ec44..05a8a6d 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -25,7 +25,7 @@ add_executable(test_piper src/cpp/test.cpp src/cpp/piper.cpp)
+
+ # ---- fmt ---
+
+-if(NOT DEFINED FMT_DIR)
++if(FALSE)
+ set(FMT_VERSION "10.0.0")
+ set(FMT_DIR "${CMAKE_CURRENT_BINARY_DIR}/fi")
+
+@@ -43,7 +43,7 @@ endif()
+
+ # ---- spdlog ---
+
+-if(NOT DEFINED SPDLOG_DIR)
++if(FALSE)
+ set(SPDLOG_DIR "${CMAKE_CURRENT_BINARY_DIR}/si")
+ set(SPDLOG_VERSION "1.12.0")
+ ExternalProject_Add(
+@@ -58,7 +58,13 @@ endif()
+
+ # ---- piper-phonemize ---
+
+-if(NOT DEFINED PIPER_PHONEMIZE_DIR)
++find_package(PkgConfig)
++pkg_check_modules(FMT REQUIRED fmt)
++pkg_check_modules(ONNXRUNTIME REQUIRED libonnxruntime)
++pkg_check_modules(PIPER_PHONEMIZE REQUIRED piper_phonemize)
++pkg_check_modules(SPDLOG REQUIRED spdlog)
++
++if(FALSE)
+ set(PIPER_PHONEMIZE_DIR "${CMAKE_CURRENT_BINARY_DIR}/pi")
+ ExternalProject_Add(
+ piper_phonemize_external
+@@ -74,9 +80,8 @@ endif()
+
+ if((NOT MSVC) AND (NOT APPLE))
+ # Linux flags
+- string(APPEND CMAKE_CXX_FLAGS " -Wall -Wextra -Wl,-rpath,'$ORIGIN'")
++ string(APPEND CMAKE_CXX_FLAGS " -Wall -Wextra")
+ string(APPEND CMAKE_C_FLAGS " -Wall -Wextra")
+- target_link_libraries(piper -static-libgcc -static-libstdc++)
+
+ set(PIPER_EXTRA_LIBRARIES "pthread")
+ endif()
+@@ -91,18 +96,18 @@ target_link_libraries(piper
+ )
+
+ target_link_directories(piper PUBLIC
+- ${FMT_DIR}/lib
+- ${SPDLOG_DIR}/lib
+- ${PIPER_PHONEMIZE_DIR}/lib
++ ${FMT_LIBRARY_DIRS}
++ ${SPDLOG_LIBRARY_DIRS}
++ ${ONNXRUNTIME_LIBRARY_DIRS}
+ )
+
+ target_include_directories(piper PUBLIC
+- ${FMT_DIR}/include
+- ${SPDLOG_DIR}/include
+- ${PIPER_PHONEMIZE_DIR}/include
++ ${FMT_INCLUDE_DIRS}
++ ${SPDLOG_INCLUDE_DIRS}
++ ${ONNXRUNTIME_INCLUDE_DIRS}
+ )
+
+-target_compile_definitions(piper PUBLIC _PIPER_VERSION=${piper_version})
++target_compile_definitions(piper PUBLIC _PIPER_VERSION="${piper_version}")
+
+ # ---- Declare test ----
+ include(CTest)
+@@ -116,16 +121,16 @@ target_compile_features(test_piper PUBLIC cxx_std_17)
+
+ target_include_directories(
+ test_piper PUBLIC
+- ${FMT_DIR}/include
+- ${SPDLOG_DIR}/include
+- ${PIPER_PHONEMIZE_DIR}/include
++ ${FMT_INCLUDE_DIRS}
++ ${SPDLOG_INCLUDE_DIRS}
++ ${ONNXRUNTIME_INCLUDE_DIRS}
+ )
+
+ target_link_directories(
+ test_piper PUBLIC
+- ${FMT_DIR}/lib
+- ${SPDLOG_DIR}/lib
+- ${PIPER_PHONEMIZE_DIR}/lib
++ ${FMT_LIBRARY_DIRS}
++ ${SPDLOG_LIBRARY_DIRS}
++ ${ONNXRUNTIME_LIBRARY_DIRS}
+ )
+
+ target_link_libraries(test_piper PUBLIC
+@@ -141,32 +146,3 @@ target_link_libraries(test_piper PUBLIC
+ install(
+ TARGETS piper
+ DESTINATION ${CMAKE_INSTALL_PREFIX})
+-
+-# Dependencies
+-install(
+- DIRECTORY ${PIPER_PHONEMIZE_DIR}/bin/
+- DESTINATION ${CMAKE_INSTALL_PREFIX}
+- USE_SOURCE_PERMISSIONS # keep +x
+- FILES_MATCHING
+- PATTERN "piper_phonemize"
+- PATTERN "espeak-ng"
+- PATTERN "*.dll"
+-)
+-
+-install(
+- DIRECTORY ${PIPER_PHONEMIZE_DIR}/lib/
+- DESTINATION ${CMAKE_INSTALL_PREFIX}
+- FILES_MATCHING
+- PATTERN "*.dll"
+- PATTERN "*.so*"
+-)
+-
+-install(
+- DIRECTORY ${PIPER_PHONEMIZE_DIR}/share/espeak-ng-data
+- DESTINATION ${CMAKE_INSTALL_PREFIX}
+-)
+-
+-install(
+- FILES ${PIPER_PHONEMIZE_DIR}/share/libtashkeel_model.ort
+- DESTINATION ${CMAKE_INSTALL_PREFIX}
+-)
diff --git a/testing/pipexec/APKBUILD b/testing/pipexec/APKBUILD
deleted file mode 100644
index 9e2fac6ec66..00000000000
--- a/testing/pipexec/APKBUILD
+++ /dev/null
@@ -1,52 +0,0 @@
-# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
-pkgname=pipexec
-pkgver=2.5.5
-pkgrel=2
-pkgdesc="Handling pipe of commands like a single command"
-url="https://github.com/flonatel/pipexec"
-arch="all"
-license="GPL-2.0"
-subpackages="$pkgname-doc"
-source="https://github.com/flonatel/pipexec/releases/download/$pkgver/$pkgname-$pkgver.tar.xz
- dont-require-bash.patch"
-builddir="$srcdir/$pkgname-$pkgver"
-
-prepare() {
- default_prepare
- update_config_sub
-}
-
-build() {
- cd "$builddir"
-
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --mandir=/usr/share/man
- make
-}
-
-# Note: make check actually does not run any tests.
-check() {
- local out
-
- out=$("$builddir"/bin/pipexec -- \
- [A /bin/echo 'Hello, world!' ] [B /bin/grep -o world ] '{A:1>B:0}')
- [ "$out" = world ]
-}
-
-package() {
- cd "$builddir"
-
- make DESTDIR="$pkgdir" install
-
- rm "$pkgdir"/usr/bin/ptest
-
- mkdir -p "$pkgdir"/usr/share/man/man1
- cp doc/man/*.1 "$pkgdir"/usr/share/man/man1/
-}
-
-sha512sums="5f33f42ffec1e16090491895fb7403de6c0fcdf99e0fef7a49db19684b261a355ab0e0364891d1dfdaf47ff32671f2725d5e236df29e3f3feb5484cd8ffca0ca pipexec-2.5.5.tar.xz
-9838e8c45f6ded0e3207be4f225e751cec892ff110e8d18daaae514ea88b0f7a96381b31d425c1178c78f87ee86da4ddf18483fccd5308b9d7daa85c287df3ea dont-require-bash.patch"
diff --git a/testing/pipexec/dont-require-bash.patch b/testing/pipexec/dont-require-bash.patch
deleted file mode 100644
index ce8eb8f773d..00000000000
--- a/testing/pipexec/dont-require-bash.patch
+++ /dev/null
@@ -1,67 +0,0 @@
-From 5aa236515f385befc3062b61d098082ab43e6f5a Mon Sep 17 00:00:00 2001
-From: Jakub Jirutka <jakub@jirutka.cz>
-Date: Fri, 1 Dec 2017 01:50:44 +0100
-Subject: [PATCH] Replace /bin/bash with /bin/sh
-
-1. Not every system provides bash by default.
-2. Many systems don't install bash into /bin (but /usr/bin,
- /usr/local/bin, ...)
-3. Your shell scripts are already POSIX-sh compatible, so it's not
- needed to require one particular shell implementation.
-
-Upstream-Issue: https://github.com/flonatel/pipexec/pull/14
-
-diff --git a/build/create_tar.sh b/build/create_tar.sh
-index 7bf286f..4223014 100644
---- a/build/create_tar.sh
-+++ b/build/create_tar.sh
-@@ -1,4 +1,4 @@
--#!/bin/bash
-+#!/bin/sh
- #
- # Create release tarball
- #
-diff --git a/build/init_autotools.sh b/build/init_autotools.sh
-index 1ad160d..3a42399 100755
---- a/build/init_autotools.sh
-+++ b/build/init_autotools.sh
-@@ -1,4 +1,4 @@
--#!/bin/bash
-+#!/bin/sh
- #
- # This must be called from within the top source dir.
- #
-diff --git a/src/Makefile.inc b/src/Makefile.inc
-index 7792bd7..bc3614d 100644
---- a/src/Makefile.inc
-+++ b/src/Makefile.inc
-@@ -2,7 +2,7 @@
- if !USE_VERSION_FILE
- .FORCE: src/app_version.c
- src/app_version.c:
-- bash $(top_srcdir)/build/version-gen.sh ${top_srcdir}
-+ /bin/sh $(top_srcdir)/build/version-gen.sh ${top_srcdir}
- endif
-
- # pipexec itself
-diff --git a/version.sh b/version.sh
-index 9f5ae2a..1150c91 100755
---- a/version.sh
-+++ b/version.sh
-@@ -1,4 +1,4 @@
--#!/bin/bash
-+#!/bin/sh
- set -e
-
- TOPSRCDIR=""
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -1354,7 +1354,7 @@
-
- @USE_VERSION_FILE_FALSE@.FORCE: src/app_version.c
- @USE_VERSION_FILE_FALSE@src/app_version.c:
--@USE_VERSION_FILE_FALSE@ bash $(top_srcdir)/build/version-gen.sh ${top_srcdir}
-+@USE_VERSION_FILE_FALSE@ /bin/sh $(top_srcdir)/build/version-gen.sh ${top_srcdir}
-
- # Local Variables:
- # mode: makefile
diff --git a/testing/piping-server/APKBUILD b/testing/piping-server/APKBUILD
index fa8c95fd686..d91533c5800 100644
--- a/testing/piping-server/APKBUILD
+++ b/testing/piping-server/APKBUILD
@@ -1,22 +1,28 @@
# Contributor: Michał Polański <michal@polanski.me>
# Maintainer: Michał Polański <michal@polanski.me>
pkgname=piping-server
-pkgver=0.12.1
+pkgver=0.17.0
pkgrel=0
pkgdesc="Infinitely transfer data between devices over HTTP"
url="https://github.com/nwtgck/piping-server-rust"
license="MIT"
arch="all !s390x !riscv64" # limited by cargo
arch="$arch !ppc64le" # FTBFS
-makedepends="cargo"
+makedepends="cargo cargo-auditable"
subpackages="$pkgname-openrc"
source="https://github.com/nwtgck/piping-server-rust/archive/v$pkgver/piping-server-rust-$pkgver.tar.gz
piping-server.initd
"
builddir="$srcdir/piping-server-rust-$pkgver"
+options="net" # fetch dependencies
+
+prepare() {
+ default_prepare
+ cargo fetch --target="$CTARGET" --locked
+}
build() {
- cargo build --release --locked
+ cargo auditable build --release --frozen
}
check() {
@@ -29,6 +35,6 @@ package() {
}
sha512sums="
-f19296e17dd2a6b6816bd2ec64624845488808c9991f38f0823fa9e7ec0dbc17361a5ff5881ba72b7e1381fbadf4fdb1c7f592d35789f24039326c300d0bdbfc piping-server-rust-0.12.1.tar.gz
+c68a7e14a6eaadeaec3f72864a0cd1d605b7e65d09ee2f17bd424d955028a6cc616085da04fef0766ddc4a383d0c74b50267c9f967b6a02038ca9726862eff51 piping-server-rust-0.17.0.tar.gz
88fe822b7d98f9d1d63a24e30c11a39504641b664bd26eb5ff3a834ad343bbc46140762dfcc63131d1dc6938c9e4d82131ebc7249283ac3f288cc8aebd6dbe4c piping-server.initd
"
diff --git a/testing/pithos/0001-Do-not-fail-if-locale-attributes-are-not-present.patch b/testing/pithos/0001-Do-not-fail-if-locale-attributes-are-not-present.patch
deleted file mode 100644
index f71df782b62..00000000000
--- a/testing/pithos/0001-Do-not-fail-if-locale-attributes-are-not-present.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-Patch-Source: https://github.com/pithos/pithos/pull/666
-
-From fd1b3647014c7ffc81ba75d9c17361b62984d4f2 Mon Sep 17 00:00:00 2001
-From: Adam Plumb <adamplumb@gmail.com>
-Date: Fri, 7 Jan 2022 20:02:32 -0500
-Subject: [PATCH] Do not fail if locale attributes are not present
-
----
- bin/pithos.in | 8 ++++++--
- 1 file changed, 6 insertions(+), 2 deletions(-)
-
-diff --git a/bin/pithos.in b/bin/pithos.in
-index 77e8134..48287ca 100755
---- a/bin/pithos.in
-+++ b/bin/pithos.in
-@@ -33,8 +33,12 @@ if builddir:
- theme.append_search_path(os.path.join(pkgdatadir, 'icons'))
-
- sys.path.insert(1, srcdir)
--locale.bindtextdomain('pithos', localedir)
--locale.textdomain('pithos')
-+try:
-+ locale.bindtextdomain('pithos', localedir)
-+ locale.textdomain('pithos')
-+except AttributeError:
-+ print("Could not bind to locale translation domain. Some translations won't work")
-+ pass
- gettext.install('pithos', localedir)
-
- resource = Gio.resource_load(os.path.join(pkgdatadir, 'pithos.gresource'))
---
-2.34.1
-
diff --git a/testing/pithos/0001-ui-Make-fit-on-small-mobile-screens.patch b/testing/pithos/0001-ui-Make-fit-on-small-mobile-screens.patch
deleted file mode 100644
index db6564fc3ec..00000000000
--- a/testing/pithos/0001-ui-Make-fit-on-small-mobile-screens.patch
+++ /dev/null
@@ -1,383 +0,0 @@
-Patch-Source: https://github.com/pithos/pithos/commit/f1b8a57036ab6fa94a1f59c8171a2d768eef18d6
-
-From f1b8a57036ab6fa94a1f59c8171a2d768eef18d6 Mon Sep 17 00:00:00 2001
-From: Christopher Davis <brainblasted@disroot.org>
-Date: Fri, 30 Oct 2020 19:31:31 -0700
-Subject: [PATCH] ui: Make fit on small (mobile) screens
-
-Adjust width requests and widgets to fit on mobile screens.
-Removes the toolbar in favor of a GtkBox, as the toolbar
-prevented proper sizing and is removed in GTK4.
----
- data/ui/PithosWindow.ui | 240 +++++++++++++----------------
- data/ui/PreferencesPithosDialog.ui | 2 +-
- data/ui/SearchDialog.ui | 5 +-
- data/ui/StationsDialog.ui | 3 +-
- 4 files changed, 114 insertions(+), 136 deletions(-)
-
-diff --git a/data/ui/PithosWindow.ui b/data/ui/PithosWindow.ui
-index 234a348..4df303e 100644
---- a/data/ui/PithosWindow.ui
-+++ b/data/ui/PithosWindow.ui
-@@ -53,184 +53,164 @@
- <property name="visible">1</property>
- <property name="orientation">vertical</property>
- <child>
-- <object class="GtkToolbar">
-+ <object class="GtkBox">
- <property name="visible">1</property>
-- <property name="show_arrow">0</property>
-- <property name="icon_size">2</property>
-+ <property name="can_focus">False</property>
-+ <property name="spacing">6</property>
-+ <property name="margin_start">6</property>
-+ <property name="margin_end">6</property>
-+ <property name="margin_top">6</property>
-+ <property name="margin_bottom">6</property>
- <child>
-- <object class="GtkToolItem">
-+ <object class="GtkBox" id="playcontrol_box">
- <property name="visible">1</property>
-+ <property name="homogeneous">1</property>
-+ <child internal-child="accessible">
-+ <object class="AtkObject" id="playcontrol_box-atkobject">
-+ <property name="AtkObject::accessible-description" translatable="yes">playback controls</property>
-+ </object>
-+ </child>
- <child>
-- <object class="GtkBox" id="playcontrol_box">
-+ <object class="GtkButton" id="playpause_button">
- <property name="visible">1</property>
-- <property name="homogeneous">1</property>
-+ <property name="can_focus">1</property>
-+ <property name="action_name">win.playpause</property>
- <child internal-child="accessible">
-- <object class="AtkObject" id="playcontrol_box-atkobject">
-- <property name="AtkObject::accessible-description" translatable="yes">playback controls</property>
-+ <object class="AtkObject" id="playpause_button-atkobject">
-+ <property name="AtkObject::accessible-description" translatable="yes">play/pause</property>
- </object>
- </child>
- <child>
-- <object class="GtkButton" id="playpause_button">
-+ <object class="GtkImage" id="playpause_image">
- <property name="visible">1</property>
-- <property name="can_focus">1</property>
-- <property name="action_name">win.playpause</property>
-- <child internal-child="accessible">
-- <object class="AtkObject" id="playpause_button-atkobject">
-- <property name="AtkObject::accessible-description" translatable="yes">play/pause</property>
-- </object>
-- </child>
-- <child>
-- <object class="GtkImage" id="playpause_image">
-- <property name="visible">1</property>
-- <property name="icon_name">media-playback-start-symbolic</property>
-- <property name="icon_size">2</property>
-- </object>
-- </child>
-+ <property name="icon_name">media-playback-start-symbolic</property>
-+ <property name="icon_size">2</property>
- </object>
- </child>
-- <child>
-- <object class="GtkButton">
-- <property name="visible">1</property>
-- <property name="can_focus">1</property>
-- <property name="action_name">win.skip</property>
-- <child internal-child="accessible">
-- <object class="AtkObject" id="skip_button-atkobject">
-- <property name="AtkObject::accessible-description" translatable="yes">skip</property>
-- </object>
-- </child>
-- <child>
-- <object class="GtkImage" id="skip_image">
-- <property name="visible">1</property>
-- <property name="icon_name">media-skip-forward-symbolic</property>
-- <property name="icon_size">2</property>
-- </object>
-- </child>
-+ </object>
-+ </child>
-+ <child>
-+ <object class="GtkButton">
-+ <property name="visible">1</property>
-+ <property name="can_focus">1</property>
-+ <property name="action_name">win.skip</property>
-+ <child internal-child="accessible">
-+ <object class="AtkObject" id="skip_button-atkobject">
-+ <property name="AtkObject::accessible-description" translatable="yes">skip</property>
- </object>
-- <packing>
-- <property name="position">1</property>
-- </packing>
- </child>
- <child>
-- <object class="GtkVolumeButton" id="volume">
-+ <object class="GtkImage" id="skip_image">
- <property name="visible">1</property>
-- <property name="can_focus">1</property>
-- <property name="relief">none</property>
-- <property name="focus_on_click">0</property>
-- <property name="orientation">vertical</property>
-- <signal name="value-changed" handler="on_volume_change_event" swapped="no"/>
-- <child internal-child="accessible">
-- <object class="AtkObject" id="volume-atkobject">
-- <property name="AtkObject::accessible-description" translatable="yes">volume</property>
-- </object>
-- </child>
-- <child internal-child="plus_button">
-- <object class="GtkButton">
-- <property name="can_focus">1</property>
-- <property name="receives_default">1</property>
-- <property name="halign">center</property>
-- <property name="valign">center</property>
-- <property name="relief">none</property>
-- </object>
-- </child>
-- <child internal-child="minus_button">
-- <object class="GtkButton">
-- <property name="can_focus">1</property>
-- <property name="receives_default">1</property>
-- <property name="halign">center</property>
-- <property name="valign">center</property>
-- <property name="relief">none</property>
-- </object>
-- </child>
-+ <property name="icon_name">media-skip-forward-symbolic</property>
-+ <property name="icon_size">2</property>
- </object>
-- <packing>
-- <property name="position">2</property>
-- </packing>
- </child>
-- <style>
-- <class name="linked"/>
-- </style>
- </object>
-+ <packing>
-+ <property name="position">1</property>
-+ </packing>
- </child>
-- </object>
-- </child>
-- <child>
-- <object class="GtkSeparatorToolItem">
-- <property name="visible">1</property>
-- <property name="draw">0</property>
-- </object>
-- <packing>
-- <property name="expand">1</property>
-- </packing>
-- </child>
-- <child>
-- <object class="GtkToolItem">
-- <property name="visible">1</property>
-- <property name="width-request">300</property>
- <child>
-- <object class="GtkMenuButton" id="stations_button">
-+ <object class="GtkVolumeButton" id="volume">
- <property name="visible">1</property>
- <property name="can_focus">1</property>
-- <property name="halign">end</property>
-+ <property name="relief">none</property>
-+ <property name="focus_on_click">0</property>
-+ <property name="orientation">vertical</property>
-+ <signal name="value-changed" handler="on_volume_change_event" swapped="no"/>
- <child internal-child="accessible">
-- <object class="AtkObject" id="stations_button-atkobject">
-- <property name="AtkObject::accessible-description" translatable="yes">stations</property>
-+ <object class="AtkObject" id="volume-atkobject">
-+ <property name="AtkObject::accessible-description" translatable="yes">volume</property>
- </object>
- </child>
-- <child>
-- <object class="GtkBox">
-- <property name="visible">1</property>
-- <property name="spacing">5</property>
-- <child>
-- <object class="GtkLabel" id="stations_label">
-- <property name="visible">1</property>
-- <property name="single_line_mode">1</property>
-- <property name="ellipsize">end</property>
-- </object>
-- </child>
-- <child>
-- <object class="GtkImage">
-- <property name="visible">1</property>
-- <property name="halign">end</property>
-- <property name="valign">center</property>
-- <property name="icon_name">pan-down-symbolic</property>
-- <property name="icon_size">1</property>
-- </object>
-- <packing>
-- <property name="position">1</property>
-- </packing>
-- </child>
-+ <child internal-child="plus_button">
-+ <object class="GtkButton">
-+ <property name="can_focus">1</property>
-+ <property name="receives_default">1</property>
-+ <property name="halign">center</property>
-+ <property name="valign">center</property>
-+ <property name="relief">none</property>
-+ </object>
-+ </child>
-+ <child internal-child="minus_button">
-+ <object class="GtkButton">
-+ <property name="can_focus">1</property>
-+ <property name="receives_default">1</property>
-+ <property name="halign">center</property>
-+ <property name="valign">center</property>
-+ <property name="relief">none</property>
- </object>
- </child>
- </object>
-+ <packing>
-+ <property name="position">2</property>
-+ </packing>
- </child>
-+ <style>
-+ <class name="linked"/>
-+ </style>
- </object>
- </child>
- <child>
-- <object class="GtkToolItem">
-+ <object class="GtkMenuButton" id="stations_button">
- <property name="visible">1</property>
-+ <property name="can_focus">1</property>
-+ <property name="halign">end</property>
-+ <property name="hexpand">True</property>
-+ <child internal-child="accessible">
-+ <object class="AtkObject" id="stations_button-atkobject">
-+ <property name="AtkObject::accessible-description" translatable="yes">stations</property>
-+ </object>
-+ </child>
- <child>
-- <object class="GtkMenuButton">
-+ <object class="GtkBox">
- <property name="visible">1</property>
-- <property name="can_focus">1</property>
-- <property name="use-popover">TRUE</property>
-- <property name="menu-model">app-menu</property>
-- <property name="halign">end</property>
-- <child internal-child="accessible">
-- <object class="AtkObject">
-- <property name="AtkObject::accessible-description" translatable="yes">menu</property>
-+ <property name="spacing">5</property>
-+ <child>
-+ <object class="GtkLabel" id="stations_label">
-+ <property name="visible">1</property>
-+ <property name="single_line_mode">1</property>
-+ <property name="ellipsize">end</property>
- </object>
- </child>
- <child>
- <object class="GtkImage">
- <property name="visible">1</property>
-- <property name="icon_name">open-menu-symbolic</property>
-+ <property name="halign">end</property>
-+ <property name="valign">center</property>
-+ <property name="icon_name">pan-down-symbolic</property>
- <property name="icon_size">1</property>
- </object>
-+ <packing>
-+ <property name="position">1</property>
-+ </packing>
- </child>
- </object>
- </child>
- </object>
- </child>
-+ <child>
-+ <object class="GtkMenuButton">
-+ <property name="visible">1</property>
-+ <property name="can_focus">1</property>
-+ <property name="use-popover">TRUE</property>
-+ <property name="menu-model">app-menu</property>
-+ <property name="halign">end</property>
-+ <child internal-child="accessible">
-+ <object class="AtkObject">
-+ <property name="AtkObject::accessible-description" translatable="yes">menu</property>
-+ </object>
-+ </child>
-+ <child>
-+ <object class="GtkImage">
-+ <property name="visible">1</property>
-+ <property name="icon_name">open-menu-symbolic</property>
-+ <property name="icon_size">1</property>
-+ </object>
-+ </child>
-+ </object>
-+ </child>
- </object>
- </child>
- <child>
-diff --git a/data/ui/PreferencesPithosDialog.ui b/data/ui/PreferencesPithosDialog.ui
-index 414fe29..4a0ffdb 100644
---- a/data/ui/PreferencesPithosDialog.ui
-+++ b/data/ui/PreferencesPithosDialog.ui
-@@ -3,7 +3,6 @@
- <interface>
- <requires lib="gtk+" version="3.14"/>
- <template class="PreferencesPithosDialog" parent="GtkDialog">
-- <property name="width_request">400</property>
- <property name="title" translatable="yes">Preferences</property>
- <property name="resizable">False</property>
- <property name="modal">1</property>
-@@ -24,6 +23,7 @@
- </child>
- <child internal-child="vbox">
- <object class="GtkBox" id="dialog-vbox1">
-+ <property name="width_request">360</property>
- <property name="visible">1</property>
- <child>
- <object class="GtkNotebook" id="notebook1">
-diff --git a/data/ui/SearchDialog.ui b/data/ui/SearchDialog.ui
-index 3751b1f..105380e 100644
---- a/data/ui/SearchDialog.ui
-+++ b/data/ui/SearchDialog.ui
-@@ -3,9 +3,6 @@
- <interface>
- <requires lib="gtk+" version="3.14"/>
- <template class="SearchDialog" parent="GtkDialog">
-- <property name="width_request">380</property>
-- <property name="height_request">350</property>
-- <property name="resizable">0</property>
- <property name="border_width">2</property>
- <property name="modal">1</property>
- <property name="title" translatable="yes">Search</property>
-@@ -25,6 +22,8 @@
- <object class="GtkBox" id="dialog-vbox1">
- <property name="visible">1</property>
- <property name="spacing">2</property>
-+ <!-- 360 - 4 due to border-width == 2-->
-+ <property name="width_request">356</property>
- <child>
- <object class="GtkVBox" id="vbox1">
- <property name="visible">1</property>
-diff --git a/data/ui/StationsDialog.ui b/data/ui/StationsDialog.ui
-index 5c3139e..9d65a63 100644
---- a/data/ui/StationsDialog.ui
-+++ b/data/ui/StationsDialog.ui
-@@ -3,8 +3,6 @@
- <interface>
- <requires lib="gtk+" version="3.14"/>
- <template class="StationsDialog" parent="GtkDialog">
-- <property name="width_request">480</property>
-- <property name="height_request">420</property>
- <property name="modal">1</property>
- <signal name="delete-event" handler="on_close" swapped="no"/>
- <child internal-child="vbox">
-@@ -33,6 +31,7 @@
- <property name="visible">1</property>
- <property name="title" translatable="yes">Manage Stations</property>
- <property name="show_close_button">1</property>
-+ <property name="width_request">360</property>
- <child>
- <object class="GtkButton" id="button1">
- <property name="visible">1</property>
---
-2.34.1
-
diff --git a/testing/pithos/APKBUILD b/testing/pithos/APKBUILD
index e56ea9ed3e0..bd9615b2527 100644
--- a/testing/pithos/APKBUILD
+++ b/testing/pithos/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Adam Plumb <adamplumb@gmail.com>
# Maintainer: Adam Plumb <adamplumb@gmail.com>
pkgname=pithos
-pkgver=1.5.1
+pkgver=1.6.1
pkgrel=0
pkgdesc="GTK+ player for pandora web radio"
url="https://pithos.github.io/"
@@ -18,23 +18,30 @@ depends="
py3-gobject3
"
makedepends="meson glib-dev help2man py3-sphinx"
-subpackages="$pkgname-doc"
+subpackages="$pkgname-doc $pkgname-pyc"
source="https://github.com/pithos/pithos/releases/download/$pkgver/pithos-$pkgver.tar.xz
- 0001-Do-not-fail-if-locale-attributes-are-not-present.patch
- 0001-ui-Make-fit-on-small-mobile-screens.patch
+ no-optimise.patch
"
build() {
abuild-meson . output
- meson compile ${JOBS:+-j ${JOBS}} -C output
+ meson compile -C output
}
package() {
DESTDIR="$pkgdir" meson install -C output
}
+pyc() {
+ pkgdesc="Precompiled Python bytecode for ${subpkgname%-pyc}"
+ install_if="${subpkgname%-pyc}=$pkgver-r$pkgrel pyc"
+
+ cd "$pkgdir" || return 0
+ local IFS=$'\n'
+ amove $(find usr/share* -type d -name __pycache__)
+}
+
sha512sums="
-9791badb2fcb05aaa7a81f0e221a4800b5c9c8f7f37d1642db441a473d10d4b49a4aa44a0b8530c9e8508b393b8769aa335918d2d7de6c30b87c108d1cfde564 pithos-1.5.1.tar.xz
-093390c35dc12ae05e75f1e168bd8bd2fd08d046d647978875df0e2ae0e14d2540b60875f303a0b6dd88527a820164a0e04342c9d928265b1d05d2818f147489 0001-Do-not-fail-if-locale-attributes-are-not-present.patch
-dac08931d54fdd861b59e7cf20306b6e3ba7486e333afa6c0d34e417ce5aeebe6bdec5a20c7e97393272e36c4b7a0ddd350d911fa0433e6a690957be13b6cf0b 0001-ui-Make-fit-on-small-mobile-screens.patch
+e1a13d2c789e40bf135ed551d06dfe44bf948bfe84a8bbb3f4afcab70bbcdc4f1d3f82d25f5e8d930888dd6fa04795fa2d9d47515d4199647be854c9c4a84591 pithos-1.6.1.tar.xz
+d80de0beb0e856d5020f7d4a275abb00404bbd5875f1639a324a8f21f58208594a0962b73e7b0bda765ef74649db5e10e8a2a02e57f18d7d55212be51655c436 no-optimise.patch
"
diff --git a/testing/pithos/no-optimise.patch b/testing/pithos/no-optimise.patch
new file mode 100644
index 00000000000..7a6c54bd837
--- /dev/null
+++ b/testing/pithos/no-optimise.patch
@@ -0,0 +1,10 @@
+diff --git a/meson_post_install.py b/meson_post_install.py
+index 17b4f2a..caf1c33 100644
+--- a/meson_post_install.py
++++ b/meson_post_install.py
+@@ -18,4 +18,4 @@ if not destdir:
+ call(['glib-compile-schemas', path.join(datadir, 'glib-2.0', 'schemas')])
+
+ print('Compiling python bytecode...')
+-compile_dir(destdir + path.join(datadir, 'pithos', 'pithos'), optimize=2)
++compile_dir(destdir + path.join(datadir, 'pithos', 'pithos'))
diff --git a/testing/pitivi/APKBUILD b/testing/pitivi/APKBUILD
index bf7a5b63721..3b8410de127 100644
--- a/testing/pitivi/APKBUILD
+++ b/testing/pitivi/APKBUILD
@@ -1,22 +1,40 @@
# Maintainer: Pellegrino Prevete <pellegrinoprevete@gmail.com>
pkgname=pitivi
-pkgver=2021.05
+pkgver=2023.03
pkgrel=1
pkgdesc="Editor for audio/video projects using the GStreamer framework"
url="https://pitivi.org"
arch="all !s390x !riscv64" # missing gst-editing-services
license="LGPL-2.1-or-later"
-depends="gsound gst-editing-services gst-libav gst-plugins-good-gtk
- gst-plugins-bad gst-plugins-good py3-gst libnotify libpeas
- py3-cairo py3-gobject3 py3-matplotlib py3-numpy"
-makedepends="cmake gstreamer-dev py3-cairo-dev python3-dev intltool
- itstool meson"
+depends="
+ gsound
+ gst-editing-services
+ gst-libav
+ gst-plugins-bad
+ gst-plugins-good
+ gst-plugins-good-gtk
+ gtk+3.0
+ libnotify
+ libpeas
+ py3-cairo
+ py3-gobject3
+ py3-gst
+ py3-matplotlib
+ py3-numpy
+ "
+makedepends="
+ gstreamer-dev
+ itstool
+ meson
+ py3-cairo-dev
+ python3-dev
+ "
checkdepends="appstream-glib"
+subpackages="$pkgname-lang $pkgname-pyc"
source="https://download.gnome.org/sources/pitivi/${pkgver%.*}/pitivi-$pkgver.tar.xz"
-builddir="$srcdir/"
build() {
- abuild-meson $pkgname-$pkgver build
+ abuild-meson . build
meson compile -C build
}
@@ -27,6 +45,17 @@ check() {
package() {
DESTDIR="$pkgdir" meson install -C build
}
+
+pyc() {
+ pkgdesc="Precompiled Python bytecode for ${subpkgname%-pyc}"
+ install_if="${subpkgname%-pyc}=$pkgver-r$pkgrel pyc"
+
+ cd "$pkgdir" || return 0
+ local IFS='
+'
+ amove $(find usr/lib -type d -name __pycache__)
+}
+
sha512sums="
-3ecb571d501b634ca3a369d4020954cc0b2bc101ceb12bee74d6b38c9ca8f2bf15fe94030421c43503870128d8218548feca7d32cf25b4afcf610365784ca9bb pitivi-2021.05.tar.xz
+505c011bb375fcce250a46c958ef06d050f83e73fa41a66f8ba3be6a41332a4a05838b8245233f481146edae9af924b618901b7ed0600f642ebe550c151f52b0 pitivi-2023.03.tar.xz
"
diff --git a/testing/pixi/APKBUILD b/testing/pixi/APKBUILD
new file mode 100644
index 00000000000..104282e9bab
--- /dev/null
+++ b/testing/pixi/APKBUILD
@@ -0,0 +1,53 @@
+# Contributor: Orhun Parmaksız <orhunparmaksiz@gmail.com>
+# Maintainer: Orhun Parmaksız <orhunparmaksiz@gmail.com>
+pkgname=pixi
+pkgver=0.19.1
+pkgrel=0
+pkgdesc="A package management and workflow tool"
+url="https://github.com/prefix-dev/pixi"
+# !s390x: nix crate fails to build
+# !armhf: openssl fails to build
+arch="all !s390x !armhf"
+license="BSD-3-Clause"
+makedepends="
+ cargo
+ cargo-auditable
+ openssl-dev
+ perl
+ "
+subpackages="
+ $pkgname-doc
+ $pkgname-bash-completion
+ $pkgname-zsh-completion
+ $pkgname-fish-completion
+ "
+# https://github.com/prefix-dev/pixi/issues/821
+options="net !check"
+source="$pkgname-$pkgver.tar.gz::https://github.com/prefix-dev/pixi/archive/v$pkgver.tar.gz"
+
+prepare() {
+ default_prepare
+ cargo fetch --target="$CTARGET" --locked
+ mkdir -p completions/
+}
+
+build() {
+ cargo auditable build --frozen --release
+ local _completion="target/release/$pkgname completion"
+ $_completion --shell bash > "completions/$pkgname"
+ $_completion --shell fish > "completions/$pkgname.fish"
+ $_completion --shell zsh > "completions/_$pkgname"
+}
+
+package() {
+ install -Dm 755 "target/release/$pkgname" -t "$pkgdir/usr/bin"
+ install -Dm 644 README.md -t "$pkgdir/usr/share/doc/$pkgname"
+ install -Dm 644 LICENSE -t "$pkgdir/usr/share/licenses/$pkgname"
+ install -Dm 664 "completions/$pkgname" -t "$pkgdir/usr/share/bash-completion/completions/"
+ install -Dm 664 "completions/$pkgname.fish" -t "$pkgdir/usr/share/fish/vendor_completions.d/"
+ install -Dm 664 "completions/_$pkgname" -t "$pkgdir/usr/share/zsh/site-functions/"
+}
+
+sha512sums="
+dcb5b23e1395bea6424a831f190eab1368bdb29ffd2ad6f4c4a3398260eb851021a955e8d7d19b4ecbbd3f57ccd0f46186e9ff80de7807e1cb83df4bd3de87c6 pixi-0.19.1.tar.gz
+"
diff --git a/testing/pixiewps/APKBUILD b/testing/pixiewps/APKBUILD
index e0158ebc634..9e88cdbbb91 100644
--- a/testing/pixiewps/APKBUILD
+++ b/testing/pixiewps/APKBUILD
@@ -2,15 +2,15 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=pixiewps
pkgver=1.4.2
-pkgrel=0
+pkgrel=1
pkgdesc="An offline WPS bruteforce utility"
-url="https://github.com/wiire/pixiewps"
+url="https://github.com/wiire-a/pixiewps"
arch="all"
# upstream does not provide check
options="!check"
license="GPL-3.0"
subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/wiire/$pkgname/archive/v$pkgver.tar.gz
+source="$pkgname-$pkgver.tar.gz::https://github.com/wiire-a/pixiewps/archive/v$pkgver.tar.gz
make-bindir.patch"
builddir="$srcdir/$pkgname-$pkgver"
diff --git a/testing/pixz/APKBUILD b/testing/pixz/APKBUILD
deleted file mode 100644
index a79e67c6765..00000000000
--- a/testing/pixz/APKBUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-# Contributor: Carlo Landmeter <clandmeter@alpinelinux.org>
-# Maintainer:
-pkgname=pixz
-pkgver=1.0.7
-pkgrel=0
-pkgdesc="Parallel, indexed xz compressor"
-url="https://github.com/vasi/pixz"
-arch="all"
-license="BSD-2-Clause"
-checkdepends="xz"
-makedepends="libarchive-dev xz-dev"
-source="https://github.com/vasi/pixz/releases/download/v$pkgver/pixz-$pkgver.tar.xz"
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="7f343cb74958b9582b60a2e916243e72421fad1ebecc5867c9e046c881e8a318da9bb885edd71da8fe6953fd5d5c2f5119133cd0bbbf4d0f9b35f8aecd61120d pixz-1.0.7.tar.xz"
diff --git a/testing/planarity/APKBUILD b/testing/planarity/APKBUILD
new file mode 100644
index 00000000000..17d045cb811
--- /dev/null
+++ b/testing/planarity/APKBUILD
@@ -0,0 +1,42 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
+pkgname=planarity
+pkgver=3.0.2.0
+pkgrel=2
+pkgdesc="Library for the edge addition planar graph embedding algorithm and related algorithms"
+url="https://github.com/graph-algorithms/edge-addition-planarity-suite"
+arch="all"
+license="BSD-3-Clause"
+makedepends="autoconf automake libtool"
+source="https://github.com/graph-algorithms/edge-addition-planarity-suite/archive/Version_$pkgver/planarity-$pkgver.tar.gz"
+subpackages="$pkgname-dev $pkgname-libs $pkgname-doc"
+builddir="$srcdir/edge-addition-planarity-suite-Version_$pkgver"
+
+prepare() {
+ default_prepare
+ autoreconf -fi
+}
+
+build() {
+ export CFLAGS="${CFLAGS/-Os/-O3}" # gotta go fast
+
+ ./configure \
+ --target="$CTARGET" \
+ --build="$CBUILD" \
+ --host="$CHOST" \
+ --prefix=/usr \
+ --disable-static
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+26d003196b5300d49b126fe159f4ed219ee3cb3396ad939ceacaa53bcfa5049ea891f3e7f323e810fe43a20aeaa68fefbe43828e9e75b10792f4cf8bbf9594f3 planarity-3.0.2.0.tar.gz
+"
diff --git a/testing/planner/APKBUILD b/testing/planner/APKBUILD
index e56134a502c..fd28b432bfc 100644
--- a/testing/planner/APKBUILD
+++ b/testing/planner/APKBUILD
@@ -1,34 +1,28 @@
# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
pkgname=planner
-pkgver=0.14.6_git20211001
+pkgver=0.14.92
pkgrel=0
-_commit="fd4ff710a0b3552218665bda784def56b817103e"
pkgdesc="Project management application"
url="https://wiki.gnome.org/Apps/Planner"
arch="all"
license="GPL-2.0-or-later"
makedepends="meson cmake glib-dev gtk+3.0-dev libxslt-dev"
subpackages="$pkgname-lang $pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://gitlab.gnome.org/World/planner/-/archive/$_commit.tar.gz"
-builddir="$srcdir/$pkgname-$_commit"
+source="https://download.gnome.org/sources/planner/${pkgver%.*}/planner-$pkgver.tar.xz"
build() {
- abuild-meson . build
+ abuild-meson -Db_lto=true . build
meson compile -C build
}
check() {
- meson test --no-rebuild -v -C build
+ meson test --no-rebuild --print-errorlogs -C build
}
package() {
DESTDIR="$pkgdir" meson install --no-rebuild -C build
-
- # Remove conflicting files
- cd "$pkgdir"/usr/share/mime
- find . -maxdepth 1 -type f -exec rm "{}" \;
}
sha512sums="
-23de2707093e7f6488166ed34230fb293d8999c80d8dbb2d86bfde6202106a95532e5327ac057ab48a87a95d022f5a9d8e423885b312fdaeb82e8bc91e30a2c6 planner-0.14.6_git20211001.tar.gz
+35f0ea6bb04937c164c42082db717962eba6e0353a4750d3213cb7a0e93b8649c99c52060c95c4c6037b6c7019f90161b3c531d5e75eabe453d0fad50c887f27 planner-0.14.92.tar.xz
"
diff --git a/testing/platformio-core/APKBUILD b/testing/platformio-core/APKBUILD
index c8851723288..6df80f2f11a 100644
--- a/testing/platformio-core/APKBUILD
+++ b/testing/platformio-core/APKBUILD
@@ -1,26 +1,43 @@
# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
-# Maintainer:
+# Contributor: Marten Ringwelski <git+alpine@maringuu.de>
+# Maintainer: Marten Ringwelski <git+alpine@maringuu.de>
pkgname=platformio-core
-pkgver=4.0.0
-pkgrel=5
+pkgver=6.1.7
+pkgrel=1
pkgdesc="An open source ecosystem for IoT development"
url="https://platformio.org"
-arch="noarch"
+arch="noarch !armhf !ppc64le" # limited by py3-starlette
license="Apache-2.0"
-depends="py3-bottle py3-click py3-colorama py3-lockfile py3-requests
- py3-semantic-version py3-pyserial"
+depends="
+ py3-aiofiles
+ py3-ajsonrpc
+ py3-bottle
+ py3-click
+ py3-colorama
+ py3-marshmallow
+ py3-elftools
+ py3-pyserial
+ py3-requests
+ py3-semantic-version
+ py3-starlette
+ py3-tabulate
+ py3-wsproto
+ py3-zeroconf
+ uvicorn
+ "
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/platformio/platformio-core/archive/v$pkgver.tar.gz"
build() {
python3 setup.py build
cd "$builddir"/scripts
- 2to3 -w *.py
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="e483850e7e1bd73522931da17b934116f44e730868ff424faa7bbb3b7853d0435ebb3fa3e6f8eab2bd57ada1d05140302b827b4724fe7981025cdc7660baff4c platformio-core-4.0.0.tar.gz"
+sha512sums="
+de38560e3bafc0ce97836a722122800e9cd31a4c8b6e97cfc9d490ee4d6c5112f87a45d81ec9b191eb4f678c330de4a797be5e176564f6e36fcb9432b47f52d8 platformio-core-6.1.7.tar.gz
+"
diff --git a/testing/please-build/APKBUILD b/testing/please-build/APKBUILD
new file mode 100644
index 00000000000..f5b57742917
--- /dev/null
+++ b/testing/please-build/APKBUILD
@@ -0,0 +1,80 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=please-build
+pkgver=17.8.0
+pkgrel=2
+pkgdesc="High-performance, extensible build system for reproducible multi-language builds"
+url="https://please.build/"
+# The only architectures supported upstream
+arch="x86_64 aarch64"
+license="Apache-2.0"
+makedepends="go bash"
+subpackages="
+ $pkgname-tools
+ $pkgname-bash-completion
+ $pkgname-zsh-completion
+ "
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/thought-machine/please/archive/refs/tags/v$pkgver.tar.gz
+ fix-test.patch
+ go-1.22.patch
+ "
+builddir="$srcdir/please-$pkgver"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ local _buildargs="--plain_output --noupdate --profile=alpine"
+ go run src/please.go build $_buildargs //src:please
+
+ ./plz-out/bin/src/please build $_buildargs \
+ //tools/sandbox:please_sandbox \
+ //tools/please_shim:please_shim \
+ //tools/build_langserver:build_langserver
+
+ ./plz-out/bin/src/please --completion_script > plz.bash
+}
+
+check() {
+ # The test has an input only for x86_64 target.
+ rm -r test/config_rules
+
+ # python3: vendored 'please_pex' binary doesn't run on musl.
+ # Also, it can't be built from source due to dependency cycling.
+ # clang:
+ # - 16: hardcode -fmodules-ts in cc-rules plugin
+ # - 15: undefined reference to 'initializer for module q1'
+ ./plz-out/bin/src/please test \
+ --plain_output --noupdate --profile=alpine \
+ --exclude=python3 --exclude=clang --exclude=e2e
+}
+
+package() {
+ install -Dm755 plz-out/bin/src/please "$pkgdir"/usr/bin/plz
+
+ install -Dm755 -t "$pkgdir"/usr/bin/ \
+ plz-out/bin/tools/build_langserver/build_langserver \
+ plz-out/bin/tools/sandbox/please_sandbox \
+ plz-out/bin/tools/please_shim/please_shim
+
+ install -Dm644 plz.bash \
+ "$pkgdir"/usr/share/bash-completion/completions/plz
+ install -Dm644 plz.bash \
+ "$pkgdir"/usr/share/zsh/site-functions/_plz
+}
+
+tools() {
+ pkgdesc="External utilities for Please build system"
+
+ amove \
+ usr/bin/build_langserver \
+ usr/bin/please_sandbox \
+ usr/bin/please_shim
+}
+
+sha512sums="
+862b9791989e6dc742b3dcab12a70a596ae149802206bdc44e0845fb41ba6655a89b2019e966082373e06b31cf5ab83f2f39935e2e2edd4fb7c87f1e3e2914ff please-build-17.8.0.tar.gz
+e628c001a45daacfa19eacb99b79b51bc2d8ba4957a1fa56da6d524c553bfef9422fe54c0551403b675c761367627312579cafdaf0944c7122d3b2ba9edc3719 fix-test.patch
+9610694cd38a93b01e9fbb2b1dde3af300bef02f47f38dbd74bd6f25b98c92019bc2c9b6d78248a4d2a4e748c6ebf592d8340f3974b7d9916a615aa8c78eb7cf go-1.22.patch
+"
diff --git a/testing/please-build/fix-test.patch b/testing/please-build/fix-test.patch
new file mode 100644
index 00000000000..a563fcb925f
--- /dev/null
+++ b/testing/please-build/fix-test.patch
@@ -0,0 +1,38 @@
+* The Complete() function fails to re-execute the current please process, so the
+ 'completions' result is always empty.
+* Remove the hardcoded emulation mode elf_$XARCH
+
+diff --git a/src/core/build_label_test.go b/src/core/build_label_test.go
+index 8ee242f..819f904 100644
+--- a/src/core/build_label_test.go
++++ b/src/core/build_label_test.go
+@@ -92,16 +92,6 @@ func TestLooksLikeABuildLabel(t *testing.T) {
+ assert.True(t, LooksLikeABuildLabel("///test_x86"))
+ }
+
+-func TestComplete(t *testing.T) {
+- label := BuildLabel{}
+- completions := label.Complete("//src/c")
+- assert.Equal(t, 4, len(completions))
+- assert.Equal(t, "//src/cache", completions[0].Item)
+- assert.Equal(t, "//src/clean", completions[1].Item)
+- assert.Equal(t, "//src/cli", completions[2].Item)
+- assert.Equal(t, "//src/core", completions[3].Item)
+-}
+-
+ func TestCompleteError(t *testing.T) {
+ label := BuildLabel{}
+ completions := label.Complete("nope")
+diff --git a/test/build_defs/cc_embed_binary.build_defs b/test/build_defs/cc_embed_binary.build_defs
+index d17aac9..cc8a4fc 100644
+--- a/test/build_defs/cc_embed_binary.build_defs
++++ b/test/build_defs/cc_embed_binary.build_defs
+@@ -64,7 +64,7 @@ def cc_embed_binary(name:str, src:str, deps:list=[], visibility:list=None,
+ ])
+ tools['asm'] = [CONFIG.ASM_TOOL]
+ else:
+- cmd = '$TOOLS_LD -r --format binary -z noexecstack -m elf_$XARCH %s -o "${OUTS/.a/.o}" $SRC && $TOOLS_ARCAT ar --srcs "${OUTS/.a/.o}" && $TOOLS_AR s "$OUTS"' % CONFIG.DEFAULT_LDFLAGS
++ cmd = '$TOOLS_LD -r --format binary -z noexecstack %s -o "${OUTS/.a/.o}" $SRC && $TOOLS_ARCAT ar --srcs "${OUTS/.a/.o}" && $TOOLS_AR s "$OUTS"' % CONFIG.DEFAULT_LDFLAGS
+ tools['ld'] = [CONFIG.LD_TOOL]
+
+ lib_rule = build_rule(
diff --git a/testing/please-build/go-1.22.patch b/testing/please-build/go-1.22.patch
new file mode 100644
index 00000000000..396e3eb48a8
--- /dev/null
+++ b/testing/please-build/go-1.22.patch
@@ -0,0 +1,564 @@
+From 744bb45cb0af9476cd1477bfa2be8be46daa21ca Mon Sep 17 00:00:00 2001
+From: Peter Ebden <peter.ebden@gmail.com>
+Date: Mon, 12 Feb 2024 11:40:15 +0000
+Subject: [PATCH] Update to Go 1.22.0 (#3070)
+
+* Update images to Go 1.22
+
+* update toolchain
+
+* update go.mod
+
+* bump this for my sanity
+
+* update plugin
+
+* revert this
+
+* update image; the base used for the old one appears to incorrectly have been an x86 image (pretty sure this must be an upstream bug)
+
+* Update test repos too
+
+* update
+
+* migrate this bastard to go_repo
+
+* Use a tagged release
+
+* Update moar
+
+* Fine, disable this for now
+
+* fine i'll do the docs thing
+---
+ .circleci/config.yml | 14 +-
+ docs/BUILD | 2 +-
+ plugins/BUILD | 2 +-
+ test/plugins/test_repo/plugins/BUILD_FILE | 2 +-
+ test/plz_exec/test_repo/plugins/BUILD_FILE | 3 +-
+ test/proto_plugin/BUILD | 1 +
+ test/proto_plugin/test_repo/.plzconfig | 6 +-
+ .../proto_plugin/test_repo/plugins/BUILD_FILE | 4 +-
+ .../test_repo/third_party/go/BUILD_FILE | 181 ++----------------
+ third_party/go/BUILD | 16 +-
+ tools/images/alpine/Dockerfile | 2 +-
+ tools/images/ubuntu/Dockerfile | 2 +-
+ tools/images/ubuntu_alt/Dockerfile | 2 +-
+ 13 files changed, 47 insertions(+), 190 deletions(-)
+
+diff --git a/.circleci/config.yml b/.circleci/config.yml
+index b751280998..c928a6e121 100644
+--- a/.circleci/config.yml
++++ b/.circleci/config.yml
+@@ -3,7 +3,7 @@ jobs:
+ build-alpine:
+ working_directory: ~/please
+ docker:
+- - image: thoughtmachine/please_alpine:20240111
++ - image: thoughtmachine/please_alpine:20240209
+ resource_class: large
+ environment:
+ PLZ_ARGS: "-p --profile ci --profile alpine --exclude no-musl"
+@@ -43,7 +43,7 @@ jobs:
+ build-linux:
+ working_directory: ~/please
+ docker:
+- - image: thoughtmachine/please_ubuntu:20240103
++ - image: thoughtmachine/please_ubuntu:20240207
+ resource_class: large
+ environment:
+ PLZ_ARGS: "-p --profile ci"
+@@ -91,7 +91,7 @@ jobs:
+ build-linux-alt:
+ working_directory: ~/please
+ docker:
+- - image: thoughtmachine/please_ubuntu_alt:20240103
++ - image: thoughtmachine/please_ubuntu_alt:20240207
+ resource_class: large
+ environment:
+ PLZ_ARGS: "-p -c cover --profile ci-alt"
+@@ -176,7 +176,7 @@ jobs:
+ build-linux-arm64:
+ working_directory: ~/please
+ docker:
+- - image: thoughtmachine/please_ubuntu:20240103
++ - image: thoughtmachine/please_ubuntu:20240207
+ resource_class: large
+ steps:
+ - checkout
+@@ -245,7 +245,7 @@ jobs:
+ test-rex:
+ working_directory: ~/please
+ docker:
+- - image: thoughtmachine/please_ubuntu:20240103
++ - image: thoughtmachine/please_ubuntu:20240207
+ resource_class: xlarge
+ steps:
+ - checkout
+@@ -262,7 +262,7 @@ jobs:
+ test-http-cache:
+ working_directory: ~/please
+ docker:
+- - image: thoughtmachine/please_ubuntu:20240103
++ - image: thoughtmachine/please_ubuntu:20240207
+ resource_class: large
+ steps:
+ - checkout
+@@ -305,7 +305,7 @@ jobs:
+ # Runs a benchmarking test and records some performance results.
+ perf-test:
+ docker:
+- - image: thoughtmachine/please_ubuntu:20240103
++ - image: thoughtmachine/please_ubuntu:20240207
+ resource_class: xlarge # Want to run these tests with a significant amount of parallelism
+ steps:
+ - checkout
+diff --git a/docs/BUILD b/docs/BUILD
+index bcc3e12b92..2c15da331d 100644
+--- a/docs/BUILD
++++ b/docs/BUILD
+@@ -59,7 +59,7 @@ genrule(
+ plugins = {
+ "python": "v1.5.0",
+ "java": "v0.4.0",
+- "go": "v1.16.3",
++ "go": "v1.16.5",
+ "cc": "v0.4.0",
+ "shell": "v0.2.0",
+ "go-proto": "v0.3.0",
+diff --git a/plugins/BUILD b/plugins/BUILD
+index 13348ef2e0..a0338de522 100644
+--- a/plugins/BUILD
++++ b/plugins/BUILD
+@@ -1,7 +1,7 @@
+ plugin_repo(
+ name = "go",
+ plugin = "go-rules",
+- revision = "v1.16.3",
++ revision = "v1.16.5",
+ )
+
+ plugin_repo(
+diff --git a/test/plugins/test_repo/plugins/BUILD_FILE b/test/plugins/test_repo/plugins/BUILD_FILE
+index c4ceaa968f..f3f451a3ab 100644
+--- a/test/plugins/test_repo/plugins/BUILD_FILE
++++ b/test/plugins/test_repo/plugins/BUILD_FILE
+@@ -5,5 +5,5 @@ plugin_repo(
+
+ plugin_repo(
+ name = "go",
+- revision = "v1.2.1",
++ revision = "v1.16.5",
+ )
+\ No newline at end of file
+diff --git a/test/plz_exec/test_repo/plugins/BUILD_FILE b/test/plz_exec/test_repo/plugins/BUILD_FILE
+index 08f8bf9927..8b6aa87432 100644
+--- a/test/plz_exec/test_repo/plugins/BUILD_FILE
++++ b/test/plz_exec/test_repo/plugins/BUILD_FILE
+@@ -3,8 +3,7 @@ plugin_repo(
+ revision = "v0.1.1",
+ )
+
+-
+ plugin_repo(
+ name = "go",
+- revision = "v1.2.0",
++ revision = "v1.16.5",
+ )
+diff --git a/test/proto_plugin/BUILD b/test/proto_plugin/BUILD
+index 08f4ad4581..c1ee32d020 100644
+--- a/test/proto_plugin/BUILD
++++ b/test/proto_plugin/BUILD
+@@ -6,6 +6,7 @@ please_repo_e2e_test(
+ labels = [
+ "no_cirrus",
+ "no-musl",
++ "manual",
+ ],
+ plz_command = "plz -o plugin.go.gotool:$TOOLS_GO test",
+ repo = "test_repo",
+diff --git a/test/proto_plugin/test_repo/.plzconfig b/test/proto_plugin/test_repo/.plzconfig
+index b2cb9b90f9..883d4272cd 100644
+--- a/test/proto_plugin/test_repo/.plzconfig
++++ b/test/proto_plugin/test_repo/.plzconfig
+@@ -6,7 +6,7 @@ ImportPath = github.com/thought-machine/please/test/proto_plugin
+
+ [Plugin "proto"]
+ Target = //plugins:proto
+-LanguageDef = ///go_proto//build_defs:go
++LanguageDef = ///go_proto//build_defs:go_proto
+ ProtocTool = ///proto//third_party/proto:protoc
+
+ [Plugin "go"]
+@@ -15,5 +15,5 @@ ImportPath = github.com/thought-machine/please/test/proto_plugin
+
+ [Plugin "go_proto"]
+ Target = //plugins:go-proto
+-GrpcPlugin = //third_party/go:protoc-gen-go-grpc
+-ProtoPlugin = //third_party/go:protoc-gen-go
++GrpcPlugin = ///third_party/go/google.golang.org_grpc_cmd_protoc-gen-go-grpc//:protoc-gen-go-grpc
++ProtoPlugin = ///third_party/go/google.golang.org_protobuf//cmd/protoc-gen-go
+diff --git a/test/proto_plugin/test_repo/plugins/BUILD_FILE b/test/proto_plugin/test_repo/plugins/BUILD_FILE
+index 00be4f8494..793049b4b9 100644
+--- a/test/proto_plugin/test_repo/plugins/BUILD_FILE
++++ b/test/proto_plugin/test_repo/plugins/BUILD_FILE
+@@ -5,10 +5,10 @@ plugin_repo(
+
+ plugin_repo(
+ name = "go",
+- revision = "v1.4.1",
++ revision = "v1.16.5",
+ )
+
+ plugin_repo(
+ name = "go-proto",
+- revision = "v0.2.0",
++ revision = "v0.3.0",
+ )
+diff --git a/test/proto_plugin/test_repo/third_party/go/BUILD_FILE b/test/proto_plugin/test_repo/third_party/go/BUILD_FILE
+index 4fa9134750..c9d1def735 100644
+--- a/test/proto_plugin/test_repo/third_party/go/BUILD_FILE
++++ b/test/proto_plugin/test_repo/third_party/go/BUILD_FILE
+@@ -1,6 +1,6 @@
+ subinclude("///go//build_defs:go")
+
+-go_module(
++go_repo(
+ name = "go-spew",
+ install = ["spew"],
+ module = "github.com/davecgh/go-spew",
+@@ -8,7 +8,7 @@ go_module(
+ visibility = ["PUBLIC"],
+ )
+
+-go_module(
++go_repo(
+ name = "go-difflib",
+ install = ["difflib"],
+ module = "github.com/pmezard/go-difflib",
+@@ -16,229 +16,86 @@ go_module(
+ visibility = ["PUBLIC"],
+ )
+
+-go_module(
++go_repo(
+ name = "yaml.v3",
+ module = "gopkg.in/yaml.v3",
+ version = "v3.0.0-20200313102051-9f266ea9e77c",
+ visibility = ["PUBLIC"],
+ )
+
+-go_module(
++go_repo(
+ name = "testify",
+- install = [
+- ".",
+- "assert",
+- "http",
+- "mock",
+- "require",
+- "suite",
+- ],
+ module = "github.com/stretchr/testify",
+ version = "v1.7.0",
+ visibility = ["PUBLIC"],
+- deps = [
+- ":go-difflib",
+- ":go-spew",
+- ":objx",
+- ":yaml.v3",
+- ],
+ )
+
+-go_module(
++go_repo(
+ name = "objx",
+ module = "github.com/stretchr/objx",
+ version = "v0.1.0",
+ visibility = ["PUBLIC"],
+ )
+
+-go_module(
++go_repo(
+ name = "text",
+- install = [
+- "secure/bidirule",
+- "transform",
+- "unicode/bidi",
+- "unicode/norm",
+- ],
+ module = "golang.org/x/text",
+ version = "v0.3.0",
+ visibility = ["PUBLIC"],
+ )
+
+-go_module(
++go_repo(
+ name = "protobuf",
+- exported_deps = [":google.golang.org.protobuf"],
+- install = [
+- "proto",
+- "ptypes",
+- "ptypes/any",
+- "ptypes/duration",
+- "ptypes/timestamp",
+- ],
+ module = "github.com/golang/protobuf",
+ version = "v1.4.3",
+ visibility = ["PUBLIC"],
+ )
+
+-go_module(
++go_repo(
+ name = "grpc",
+- install = [
+- ".",
+- "attributes",
+- "backoff",
+- "balancer",
+- "balancer/base",
+- "balancer/grpclb/state",
+- "balancer/roundrobin",
+- "binarylog/grpc_binarylog_v1",
+- "codes",
+- "connectivity",
+- "credentials",
+- "encoding",
+- "encoding/proto",
+- "grpclog",
+- "internal",
+- "internal/backoff",
+- "internal/balancerload",
+- "internal/binarylog",
+- "internal/buffer",
+- "internal/channelz",
+- "internal/credentials",
+- "internal/envconfig",
+- "internal/grpclog",
+- "internal/grpcrand",
+- "internal/grpcsync",
+- "internal/grpcutil",
+- "internal/metadata",
+- "internal/resolver",
+- "internal/resolver/dns",
+- "internal/resolver/passthrough",
+- "internal/resolver/unix",
+- "internal/serviceconfig",
+- "internal/status",
+- "internal/syscall",
+- "internal/transport",
+- "internal/transport/networktype",
+- "internal/xds/env",
+- "keepalive",
+- "metadata",
+- "peer",
+- "resolver",
+- "serviceconfig",
+- "stats",
+- "status",
+- "tap",
+- ],
+ module = "google.golang.org/grpc",
+ version = "v1.42.0",
+ visibility = ["PUBLIC"],
+- deps = [
+- ":genproto",
+- ":google.golang.org.protobuf",
+- ":net",
+- ":protobuf",
+- ":sys",
+- ],
+ )
+
+-go_mod_download(
+- name = "protobuf_dl",
+- module = "google.golang.org/protobuf",
+- version = "v1.27.1",
+-)
+-
+-go_module(
+- name = "google.golang.org.protobuf",
+- download = ":protobuf_dl",
+- install = [
+- "cmd/protoc-gen-go/internal_gengo",
+- "compiler/protogen",
+- "encoding/prototext",
+- "encoding/protowire",
+- "internal/...",
+- "proto",
+- "reflect/protodesc",
+- "reflect/protoreflect",
+- "reflect/protoregistry",
+- "runtime/protoiface",
+- "runtime/protoimpl",
+- "types/descriptorpb",
+- "types/known/anypb",
+- "types/known/durationpb",
+- "types/known/timestamppb",
+- "types/pluginpb",
+- ],
+- module = "google.golang.org/protobuf",
+-)
+-
+-go_module(
++go_repo(
+ name = "protoc-gen-go-grpc",
+- binary = True,
+ module = "google.golang.org/grpc/cmd/protoc-gen-go-grpc",
+- version = "v1.1.0",
++ version = "v1.3.0",
+ visibility = ["PUBLIC"],
+- deps = [":google.golang.org.protobuf"],
+ )
+
+-go_module(
+- name = "protoc-gen-go",
+- binary = True,
+- download = ":protobuf_dl",
+- install = ["cmd/protoc-gen-go"],
++go_repo(
++ name = "google.golang.org.protobuf",
+ module = "google.golang.org/protobuf",
++ version = "v1.27.1",
+ visibility = ["PUBLIC"],
+- deps = [":google.golang.org.protobuf"],
+ )
+
+-go_module(
++go_repo(
+ name = "net",
+- install = [
+- "http/httpguts",
+- "http2",
+- "http2/hpack",
+- "idna",
+- "internal/timeseries",
+- "trace",
+- ],
+ module = "golang.org/x/net",
+- version = "v0.0.0-20200822124328-c89045814202",
++ version = "v0.21.0",
+ visibility = ["PUBLIC"],
+ deps = [":text"],
+ )
+
+-go_module(
++go_repo(
+ name = "sys",
+- install = ["unix"],
+ module = "golang.org/x/sys",
+- version = "v0.0.0-20220315194320-039c03cc5b86",
++ version = "v0.17.0",
+ visibility = ["PUBLIC"],
+ )
+
+-go_module(
++go_repo(
+ name = "genproto",
+- install = ["googleapis/rpc/status"],
+ module = "google.golang.org/genproto",
+ version = "v0.0.0-20200526211855-cb27e3aa2013",
+ visibility = ["PUBLIC"],
+- deps = [
+- ":google.golang.org.protobuf",
+- ":protobuf",
+- ],
+ )
+
+-go_module(
++go_repo(
+ name = "go-cmp",
+- install = [
+- "cmp",
+- "cmp/cmpopts",
+- "cmp/internal/diff",
+- "cmp/internal/flags",
+- "cmp/internal/function",
+- "cmp/internal/testprotos",
+- "cmp/internal/teststructs",
+- "cmp/internal/teststructs/foo1",
+- "cmp/internal/teststructs/foo2",
+- "cmp/internal/value",
+- ],
+ module = "github.com/google/go-cmp",
+ version = "v0.5.6",
+ visibility = ["PUBLIC"],
+diff --git a/third_party/go/BUILD b/third_party/go/BUILD
+index 6ba84d0441..28a754d342 100644
+--- a/third_party/go/BUILD
++++ b/third_party/go/BUILD
+@@ -5,14 +5,14 @@ package(default_visibility = ["PUBLIC"])
+ go_toolchain(
+ name = "toolchain",
+ hashes = [
+- "27014fc69e301d7588a169ca239b3cc609f0aa1abf38528bf0d20d3b259211eb", # darwin-amd64
+- "65302a7a9f7a4834932b3a7a14cb8be51beddda757b567a2f9e0cbd0d7b5a6ab", # darwin-arm64
+- "6e74f65f586e93d1f3947894766f69e9b2ebda488592a09df61f36f06bfe58a8", # freebsd-amd64
+- "1241381b2843fae5a9707eec1f8fb2ef94d827990582c7c7c32f5bdfbfd420c8", # linux-amd64
+- "fc90fa48ae97ba6368eecb914343590bbb61b388089510d0c56c2dde52987ef3", # linux-arm64
++ "ebca81df938d2d1047cc992be6c6c759543cf309d401b86af38a6aed3d4090f4", # darwin-amd64
++ "bf8e388b09134164717cd52d3285a4ab3b68691b80515212da0e9f56f518fb1e", # darwin-arm64
++ "50f421c7f217083ac94aab1e09400cb9c2fea7d337679ec11f1638a11460da30", # freebsd-amd64
++ "f6c8a87aa03b92c4b0bf3d558e28ea03006eb29db78917daec5cfb6ec1046265", # linux-amd64
++ "6a63fef0e050146f275bf02a0896badfe77c11b6f05499bb647e7bd613a45a10", # linux-arm64
+ ],
+ install_std = True,
+- version = "1.21.3",
++ version = "1.22.0",
+ )
+
+ go_stdlib(
+@@ -352,7 +352,7 @@ go_repo(
+
+ go_repo(
+ module = "golang.org/x/sys",
+- version = "v0.0.0-20220315194320-039c03cc5b86",
++ version = "v0.17.0",
+ )
+
+ go_repo(
+@@ -387,7 +387,7 @@ go_repo(
+
+ go_repo(
+ module = "github.com/cespare/xxhash/v2",
+- version = "v2.1.2",
++ version = "v2.2.0",
+ )
+
+ go_repo(
+diff --git a/tools/images/alpine/Dockerfile b/tools/images/alpine/Dockerfile
+index 74ad14b32b..48b84506ef 100644
+--- a/tools/images/alpine/Dockerfile
++++ b/tools/images/alpine/Dockerfile
+@@ -1,4 +1,4 @@
+-FROM golang:1.21-alpine
++FROM golang:1.22-alpine
+ MAINTAINER peter.ebden@gmail.com
+
+ RUN apk update && apk add --no-cache git patch gcc g++ libc-dev bash libgcc xz protoc protobuf-dev perl-utils
+diff --git a/tools/images/ubuntu/Dockerfile b/tools/images/ubuntu/Dockerfile
+index a37cafb84a..9da3df1c0e 100644
+--- a/tools/images/ubuntu/Dockerfile
++++ b/tools/images/ubuntu/Dockerfile
+@@ -15,7 +15,7 @@ RUN truncate -s0 /tmp/preseed.cfg; \
+ apt-get clean
+
+ # Go - we want a specific package version here.
+-RUN curl -fsSL https://dl.google.com/go/go1.21.5.linux-amd64.tar.gz | tar -xzC /usr/local
++RUN curl -fsSL https://dl.google.com/go/go1.22.0.linux-amd64.tar.gz | tar -xzC /usr/local
+ RUN ln -s /usr/local/go/bin/go /usr/local/bin/go && ln -s /usr/local/go/bin/gofmt /usr/local/bin/gofmt
+
+ # Locale
+diff --git a/tools/images/ubuntu_alt/Dockerfile b/tools/images/ubuntu_alt/Dockerfile
+index 15d4ae8207..7d80e363a1 100644
+--- a/tools/images/ubuntu_alt/Dockerfile
++++ b/tools/images/ubuntu_alt/Dockerfile
+@@ -10,7 +10,7 @@ RUN apt-get update && \
+ apt-get clean
+
+ # Go
+-RUN curl -fsSL https://dl.google.com/go/go1.21.5.linux-amd64.tar.gz | tar -xzC /usr/local
++RUN curl -fsSL https://dl.google.com/go/go1.21.7.linux-amd64.tar.gz | tar -xzC /usr/local
+ RUN ln -s /usr/local/go/bin/go /usr/local/bin/go && ln -s /usr/local/go/bin/gofmt /usr/local/bin/gofmt
+
+ # Locale
diff --git a/testing/please/APKBUILD b/testing/please/APKBUILD
index 5a20cb0b5d0..6641b2e19ad 100644
--- a/testing/please/APKBUILD
+++ b/testing/please/APKBUILD
@@ -2,12 +2,12 @@
# Maintainer: Ed Neville <ed@s5h.net>
pkgname=please
pkgver=0.4.2
-pkgrel=0
+pkgrel=2
pkgdesc="sudo alternative with regex support"
url="https://gitlab.com/edneville/please"
arch="all !s390x !riscv64" # limited by rust/cargo
license="GPL-3.0-or-later"
-makedepends="cargo linux-pam-dev chrpath"
+makedepends="cargo linux-pam-dev chrpath cargo-auditable"
source="https://gitlab.com/edneville/please/-/archive/v$pkgver/please-v$pkgver.tar.gz
please.pam
"
@@ -15,8 +15,9 @@ options="suid" # Required to call setuid with target uids
builddir="$srcdir/$pkgname-v$pkgver"
subpackages="$pkgname-doc"
+
build() {
- cargo build --release --locked
+ cargo auditable build --release --locked
}
check() {
diff --git a/testing/plfit/APKBUILD b/testing/plfit/APKBUILD
new file mode 100644
index 00000000000..85e101a2a9d
--- /dev/null
+++ b/testing/plfit/APKBUILD
@@ -0,0 +1,38 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
+pkgname=plfit
+pkgver=0.9.4
+pkgrel=2
+pkgdesc="Tool for fitting power-law distributions to empirical data"
+url="https://github.com/ntamas/plfit"
+arch="all"
+license="GPL-2.0-only"
+makedepends="cmake samurai"
+subpackages="$pkgname-static $pkgname-libs $pkgname-dev"
+source="https://github.com/ntamas/plfit/archive/$pkgver/plfit-$pkgver.tar.gz"
+
+build() {
+ cmake -B builddir -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DBUILD_SHARED_LIBS=ON
+ cmake -B builddir-static -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=Release
+ cmake --build builddir
+ cmake --build builddir-static
+}
+
+check() {
+ ctest --output-on-failure --test-dir builddir
+}
+
+package() {
+ # Install static build first because we want the utilities to be linked dynamically.
+ DESTDIR="$pkgdir" cmake --install builddir-static
+ DESTDIR="$pkgdir" cmake --install builddir
+}
+
+sha512sums="
+39cb644de20645b35b8ce6f95bb074276314f5fdc755e0d7eba8e69d1f0d65b784cd755b7a4481e933f8863c30f6b2957e7dba45fc9a695cef14ad4fef729885 plfit-0.9.4.tar.gz
+"
diff --git a/testing/plib/APKBUILD b/testing/plib/APKBUILD
index 741bbb83eb1..55f22c2abe4 100644
--- a/testing/plib/APKBUILD
+++ b/testing/plib/APKBUILD
@@ -1,14 +1,14 @@
# Contributor: Leonardo Arena <rnalrd@alpinelinux.org>
-# Maintainer:
+# Maintainer: Thomas Kienlen <kommander@laposte.net>
pkgname=plib
pkgver=1.8.5
-pkgrel=1
+pkgrel=3
pkgdesc="Portable Game Library"
-url="http://plib.sourceforge.net"
+url="https://plib.sourceforge.net/"
arch="all"
license="LGPL-2.0-or-later"
makedepends="$depends_dev libxi-dev libxmu-dev mesa-dev"
-source="http://plib.sourceforge.net/dist/plib-$pkgver.tar.gz
+source="https://plib.sourceforge.net/dist/plib-$pkgver.tar.gz
includes-fix.patch
CVE-2011-4620.patch
CVE-2012-4552.patch
diff --git a/testing/plocate/APKBUILD b/testing/plocate/APKBUILD
deleted file mode 100644
index a5870d5c408..00000000000
--- a/testing/plocate/APKBUILD
+++ /dev/null
@@ -1,56 +0,0 @@
-# Contributor: psykose <alice@ayaya.dev>
-# Maintainer: psykose <alice@ayaya.dev>
-pkgname=plocate
-pkgver=1.1.15
-pkgrel=0
-pkgdesc="posting-list based locate(1) for finding files"
-url="https://plocate.sesse.net/"
-arch="all"
-license="GPL-2.0-or-later"
-pkggroups="locate"
-depends="!mlocate"
-install="$pkgname.pre-install"
-makedepends="
- liburing-dev
- linux-headers
- meson
- musl-legacy-error
- zstd-dev
- "
-subpackages="$pkgname-doc"
-source="https://plocate.sesse.net/download/plocate-$pkgver.tar.gz
- include-statx.patch
- plocate.cron
- updatedb.conf
- "
-# no tests
-# plocate is g+s
-options="suid !check"
-
-[ "$CARCH" = "riscv64" ] && options="$options textrels"
-
-build() {
- abuild-meson \
- -Dlocategroup=locate \
- -Dinstall_cron=false \
- -Dinstall_systemd=false \
- . output
- meson compile -C output
-}
-
-package() {
- DESTDIR="$pkgdir" meson install --no-rebuild -C output
- install -Dm755 "$srcdir"/plocate.cron \
- -t "$pkgdir"/etc/periodic/daily
- install -Dm644 "$srcdir"/updatedb.conf \
- -t "$pkgdir"/etc
- chmod -R g+w "$pkgdir"/var/lib/plocate
- chgrp -R locate "$pkgdir"/var/lib/plocate
-}
-
-sha512sums="
-772f82af38fd7b61fa51ac31f71d4a855542cfa617867da54b5ad8202f49f9e1861064a01e9b8f0937c3da902d84f19a50c1d0e4f037a491a9a6819b2413cfa1 plocate-1.1.15.tar.gz
-a88eb3cd4300256600aa245a67a71854220b9ffc89328e9f5664612092ca7d468c6729e823821b66109c75cebe046354503e5d6697de21c5086b26ffa4243edb include-statx.patch
-fdf72ed18ca06e65f929f88391012e5c5c95d50f411ea52be5915b54267b424d36fd27e0fdae6e8e439b63636dc951ae7d1a97fa812728f8a6c86db798a5004c plocate.cron
-863d8687bc1c520cc262ade3a7ce8a02b6930d7cbbc588c36d23f81a4a4c5432f4d9234a5498632b767a352e3996cf4da1c9e98d1b699b9d973cd9a9313d9557 updatedb.conf
-"
diff --git a/testing/plocate/include-statx.patch b/testing/plocate/include-statx.patch
deleted file mode 100644
index db2670507e7..00000000000
--- a/testing/plocate/include-statx.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/io_uring_engine.h
-+++ b/io_uring_engine.h
-@@ -7,6 +7,7 @@
- #include <string_view>
- #include <sys/socket.h>
- #include <sys/types.h>
-+#include <linux/stat.h>
-
- struct io_uring_sqe;
- #ifndef WITHOUT_URING
diff --git a/testing/plocate/plocate.cron b/testing/plocate/plocate.cron
deleted file mode 100644
index 5d5486bdf1e..00000000000
--- a/testing/plocate/plocate.cron
+++ /dev/null
@@ -1,5 +0,0 @@
-#!/bin/sh
-set -e
-
-ulimit -n 100000
-exec updatedb
diff --git a/testing/plocate/plocate.pre-install b/testing/plocate/plocate.pre-install
deleted file mode 100644
index 8ae6bbd5508..00000000000
--- a/testing/plocate/plocate.pre-install
+++ /dev/null
@@ -1,5 +0,0 @@
-#!/bin/sh
-
-addgroup -S locate 2>/dev/null
-
-exit 0
diff --git a/testing/plocate/updatedb.conf b/testing/plocate/updatedb.conf
deleted file mode 100644
index cd0686a5da6..00000000000
--- a/testing/plocate/updatedb.conf
+++ /dev/null
@@ -1,5 +0,0 @@
-# see updatedb.conf(5) for what these mean
-PRUNE_BIND_MOUNTS = "yes"
-PRUNEFS = "9p afs anon_inodefs auto autofs bdev binfmt_misc cgroup cifs coda configfs cpuset cramfs debugfs devpts devtmpfs ecryptfs exofs ftpfs fuse fuse.encfs fuse.sshfs fusectl gfs gfs2 hugetlbfs inotifyfs iso9660 jffs2 lustre mqueue ncpfs nfs nfs4 nfsd pipefs proc ramfs rootfs rpc_pipefs securityfs selinuxfs sfs shfs smbfs sockfs sshfs sysfs tmpfs ubifs udf usbfs vboxsf"
-PRUNENAMES = ".git .hg .svn"
-PRUNEPATHS = "/afs /media /mnt /net /sfs /tmp /udev /var/cache /var/lock /var/run /var/spool /var/tmp"
diff --git a/testing/plots/APKBUILD b/testing/plots/APKBUILD
new file mode 100644
index 00000000000..dcdd43cbf72
--- /dev/null
+++ b/testing/plots/APKBUILD
@@ -0,0 +1,43 @@
+# Maintainer: Thomas Aldrian <aldrian.thom@proton.me>
+pkgname=plots
+pkgver=0.7.0
+pkgrel=0
+pkgdesc="A graph plotting app for GNOME"
+url="https://github.com/alexhuntley/Plots"
+arch="noarch"
+license="GPL-3.0-or-later"
+# >=0.8.0 requires adwaita & gtk4 instead of libhandy & gtk3
+depends="
+ freeglut
+ gtk+3.0
+ libhandy1
+ py3-freetype-py
+ py3-gobject3
+ py3-jinja2
+ py3-lark-parser
+ py3-numpy
+ py3-opengl
+ py3-pyglm
+ "
+makedepends="py3-setuptools"
+checkdepends="py3-pytest mesa-osmesa"
+source="$pkgname-$pkgver.tar.gz::https://github.com/alexhuntley/Plots/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/Plots-$pkgver"
+
+build() {
+ python3 setup.py build
+}
+
+check() {
+ # Required for headless
+ export PYOPENGL_PLATFORM="osmesa"
+ pytest
+}
+
+package() {
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+sha512sums="
+d72576873b728ab4d02375462912c970f1c52524e80bd0690d79c04b117af7d9d60f150dc29f70ac198074aa338e21eef94cf8d28e9062540401564de3a4b88b plots-0.7.0.tar.gz
+"
diff --git a/testing/plplot/APKBUILD b/testing/plplot/APKBUILD
index 4240b376c2c..232b5c06a9b 100644
--- a/testing/plplot/APKBUILD
+++ b/testing/plplot/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: River Dillon <oss@outerpassage.net>
pkgname=plplot
pkgver=5.15.0
-pkgrel=1
+pkgrel=2
pkgdesc="scientific graphics plotting library"
url="http://plplot.org/"
license="LGPL-2.0-or-later"
diff --git a/testing/plzip/APKBUILD b/testing/plzip/APKBUILD
index bd77f44fc95..a7f6ed391ce 100644
--- a/testing/plzip/APKBUILD
+++ b/testing/plzip/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Klemens Nanni <kl3@posteo.org>
-# Maintainer: Klemens Nanni <kl3@posteo.org>
+# Maintainer:
pkgname=plzip
-pkgver=1.10
+pkgver=1.11
pkgrel=0
pkgdesc="Massively parallel lossless data compressor"
url="http://www.nongnu.org/lzip/plzip.html"
@@ -27,5 +27,5 @@ package() {
}
sha512sums="
-7fd7ec288800950deaec9337b3112db72cde059721a0143a091650fc20ba2a3d9d7eebbd7a312e5bbb1a61ca6c902d2450e6c3c7172dccf9c0c8b86db7c2a944 plzip-1.10.tar.gz
+3a0f0443e68a6b776d85b69ed24d21e03d7bad1b788d6e8f741cc0ebb2537aebde2d68aa6765bcb4d61df6521779af27d176f5ef348014fa3088aa219d5ec691 plzip-1.11.tar.gz
"
diff --git a/testing/pmccabe/APKBUILD b/testing/pmccabe/APKBUILD
index 80749add5f9..f80fa0e36f3 100644
--- a/testing/pmccabe/APKBUILD
+++ b/testing/pmccabe/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Olliver Schinagl <oliver@schinagl.nl>
pkgname="pmccabe"
pkgver="2.8"
-pkgrel=0
+pkgrel=1
pkgdesc="McCabe-style complexity and line counting for C and C++"
url="https://gitlab.com/pmccabe/pmccabe"
arch="all"
diff --git a/testing/pmdk/10-include.patch b/testing/pmdk/10-include.patch
deleted file mode 100644
index ddbec12e8af..00000000000
--- a/testing/pmdk/10-include.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-Fix includes for alpine
-
---- a/src/test/tools/ctrld/ctrld.c
-+++ b/src/test/tools/ctrld/ctrld.c
-@@ -17,6 +17,7 @@
- #include <signal.h>
- #include <limits.h>
- #include <queue.h>
-+#include <fcntl.h>
- #include <sys/types.h>
- #include <sys/file.h>
- #include <sys/types.h>
diff --git a/testing/pmdk/20-doc.patch b/testing/pmdk/20-doc.patch
deleted file mode 100644
index bf51ca4e585..00000000000
--- a/testing/pmdk/20-doc.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-docs are included in check and install even if skipped
-
---- a/Makefile
-+++ b/Makefile
-@@ -107,8 +107,7 @@
- @utils/check_license/check-headers.sh $(TOP) BSD-3-Clause
- @echo Done.
-
--check-doc: doc
-- BUILD_RPMEM="$(BUILD_RPMEM)" utils/check-manpages
-+check-doc:
-
- sparse:
- $(MAKE) -C src sparse
---- a/doc/Makefile
-+++ b/doc/Makefile
-@@ -287,15 +287,7 @@
- $(RM) -r $(MANPAGES_WEBDIR_LINUX) \
- $(MANPAGES_WEBDIR_WINDOWS)
-
--install: compress
-- install -d -v $(MANPAGES_DESTDIR_7)
-- install -p -m 0644 $(GZFILES_7) $(MANPAGES_DESTDIR_7)
-- install -d -v $(MANPAGES_DESTDIR_5)
-- install -p -m 0644 $(GZFILES_5) $(MANPAGES_DESTDIR_5)
-- install -d -v $(MANPAGES_DESTDIR_3)
-- install -p -m 0644 $(GZFILES_3) $(GZFILES_3_DUMMY) $(MANPAGES_DESTDIR_3)
-- install -d -v $(MANPAGES_DESTDIR_1)
-- install -p -m 0644 $(GZFILES_1) $(MANPAGES_DESTDIR_1)
-+install:
-
- uninstall:
- $(foreach f, $(notdir $(GZFILES_7)), $(RM) $(MANPAGES_DESTDIR_7)/$(f))
diff --git a/testing/pmdk/30-etc.patch b/testing/pmdk/30-etc.patch
deleted file mode 100644
index 0673b32aa91..00000000000
--- a/testing/pmdk/30-etc.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/src/common.inc
-+++ b/src/common.inc
-@@ -200,7 +200,7 @@
-
- export prefix = /usr/local
- export exec_prefix := $(prefix)
--export sysconfdir := $(prefix)/etc
-+export sysconfdir := /etc
- export datarootdir := $(prefix)/share
- export mandir := $(datarootdir)/man
- export docdir := $(datarootdir)/doc
diff --git a/testing/pmdk/APKBUILD b/testing/pmdk/APKBUILD
deleted file mode 100644
index 3a99e744248..00000000000
--- a/testing/pmdk/APKBUILD
+++ /dev/null
@@ -1,59 +0,0 @@
-# Contributor: Duncan Bellamy <dunk@denkimushi.com>
-# Maintainer: Duncan Bellamy <dunk@denkimushi.com>
-pkgname=pmdk
-pkgver=1.12.0
-pkgrel=0
-pkgdesc="Persistent Memory Development Kit"
-url="https://pmem.io/"
-# others not supported
-arch="aarch64 ppc64le riscv64 x86_64"
-license="BSD-3-Clause"
-# needs patching for -Wall and __off_t
-options="!check"
-makedepends="bash cmake fts-dev libexecinfo-dev libunwind-dev linux-headers ndctl-dev perl"
-subpackages="$pkgname-dev $pkgname-debug $pkgname-bash-completion:bash_completion"
-source="$pkgname-$pkgver.tar.gz::https://github.com/pmem/pmdk/archive/$pkgver.tar.gz
- 10-include.patch
- 20-doc.patch
- 30-etc.patch
- "
-
-prepare() {
- default_prepare
- touch .skip-doc
-}
-
-build() {
- export CFLAGS="$CFLAGS"
- export LIBS="$LIBS -ldaxctl -lexecinfo -lfts -lndctl -lunwind"
- export LDFLAGS="$LDFLAGS $LIBS"
- NORPATH=1 BUILD_EXAMPLES=n make
-}
-
-package() {
- make install prefix=/usr DESTDIR="$pkgdir"
-}
-
-debug() {
- amove usr/lib/pmdk_debug/*.so.*
-}
-
-dev() {
- default_dev
- amove usr/lib/pmdk_debug/*.so
-}
-
-bash_completion() {
- pkgdesc="Bash completions for pmdk"
- depends=
-
- install_if="pmdk=$pkgver-r$pkgrel bash-completion"
- amove etc/bash_completion.d/*
-}
-
-sha512sums="
-f89dc7d9f93854fef287ba4298faf82c27c9f359d9b90bc20bb60919ea2ad50b70c5b62892c511ef3f5059cee77f2edd8a3a818895d2426c4ce7533f867f1e23 pmdk-1.12.0.tar.gz
-36b0ac1aa2ed266a5350502bd402e334775f565976f2af881e9bcf830d27e3aeb5be49a7c2b32530bbbd526aa358bc6523064566abdba915240044b989f895b8 10-include.patch
-dac444c41a1720a1d5ffae88fdf57277eac65bf0fe774a950cb32330975ed7b6dc765764acd9f54ed101a9871f1db39672c855dbc2ee71bf83053455d9a90ee4 20-doc.patch
-b017b8dfbf0a99f329d755daa2b50960c5b1281f9d13e3b77a71bcc2c330d2561097f6d3782e5ad3bc7a456069bb9a86599b771e2b442121a120c53ee6f679bd 30-etc.patch
-"
diff --git a/testing/pnmixer/APKBUILD b/testing/pnmixer/APKBUILD
index 300a3ea3219..b137220fb98 100644
--- a/testing/pnmixer/APKBUILD
+++ b/testing/pnmixer/APKBUILD
@@ -1,11 +1,11 @@
# Maintainer: Taner Tas <taner76@gmail.com>
pkgname=pnmixer
pkgver=0.7.2
-pkgrel=1
+pkgrel=3
pkgdesc="PNMixer is a simple mixer application designed to run in system tray."
url="https://github.com/nicklan/pnmixer"
arch="all"
-license="GPL"
+license="GPL-3.0-only"
makedepends="cmake gettext gtk+2.0-dev alsa-lib-dev libnotify-dev"
install=""
subpackages="$pkgname-doc $pkgname-lang"
diff --git a/testing/pnpm/APKBUILD b/testing/pnpm/APKBUILD
new file mode 100644
index 00000000000..757cfe4e1c4
--- /dev/null
+++ b/testing/pnpm/APKBUILD
@@ -0,0 +1,49 @@
+# Contributor: Hygna <hygna@proton.me>
+# Contributor: Fabricio Silva <hi@fabricio.dev>
+# Maintainer: Fabricio Silva <hi@fabricio.dev>
+pkgname=pnpm
+pkgver=9.0.1
+pkgrel=0
+pkgdesc="Fast, disk space efficient package manager"
+url="https://pnpm.io"
+arch="noarch"
+license="MIT"
+depends="nodejs"
+source="https://registry.npmjs.org/pnpm/-/pnpm-$pkgver.tgz"
+options="!check" # not implemented
+builddir="$srcdir/package"
+
+prepare() {
+ default_prepare
+
+ # remove node-gyp
+ rm -rf dist/node-gyp-bin dist/node_modules/node-gyp
+ # remove windows files
+ rm -rf dist/vendor/*.exe
+
+ # remove other unnecessary files
+ find . -type f \( \
+ -name '.*' -o \
+ -name '*.cmd' -o \
+ -name '*.bat' -o \
+ -name '*.map' -o \
+ -name '*.md' -o \
+ -name '*.darwin*' -o \
+ -name '*.win*' -o \
+ -iname 'README*' \) -delete
+}
+
+package() {
+ local destdir="$pkgdir"/usr/share/node_modules/pnpm
+
+ mkdir -p "$destdir"
+ cp -R "$builddir"/* "$destdir"/
+
+ mkdir -p "$pkgdir"/usr/bin
+ ln -sf ../share/node_modules/pnpm/bin/pnpm.cjs "$pkgdir"/usr/bin/pnpm
+ ln -sf ../share/node_modules/pnpm/bin/pnpx.cjs "$pkgdir"/usr/bin/pnpx
+}
+
+sha512sums="
+f904b133d699415b0d997ee3f05a269affbdb02cf6b227fa03d85483a8f3dfced0b9160a7d477dc051ab67af8be44705b9fdf15f2ae33bc83b76886529fb4b1d pnpm-9.0.1.tgz
+"
diff --git a/testing/podman-compose/APKBUILD b/testing/podman-compose/APKBUILD
deleted file mode 100644
index 1ea94871ef3..00000000000
--- a/testing/podman-compose/APKBUILD
+++ /dev/null
@@ -1,25 +0,0 @@
-# Contributor: TBK <alpine@jjtc.eu>
-# Maintainer: TBK <alpine@jjtc.eu>
-pkgname=podman-compose
-pkgver=1.0.3
-pkgrel=0
-pkgdesc="Script to run docker-compose.yml using podman"
-url="https://github.com/containers/podman-compose"
-arch="noarch !s390x !riscv64" # podman
-license="GPL-2.0-or-later"
-options="!check" # Requires running docker env
-depends="podman python3 py3-yaml py3-dotenv"
-makedepends="py3-setuptools"
-source="$pkgname-$pkgver.tar.gz::https://github.com/containers/podman-compose/archive/v$pkgver.tar.gz"
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-54ee61e6f9cd946b54eed07285e13bec88bc3d718e55915422b563a4d9e79e4e087cd8040adb16aa2fc4546f536cc5b7e31b3e87295cb7c8281c9db61e6fbc71 podman-compose-1.0.3.tar.gz
-"
diff --git a/testing/podman-tui/APKBUILD b/testing/podman-tui/APKBUILD
deleted file mode 100644
index 393316e130d..00000000000
--- a/testing/podman-tui/APKBUILD
+++ /dev/null
@@ -1,28 +0,0 @@
-# Contributor: omni <omni+alpine@hack.org>
-# Maintainer: omni <omni+alpine@hack.org>
-pkgname=podman-tui
-pkgver=0.3.1
-pkgrel=0
-pkgdesc="Terminal user interface for Podman v4"
-url="https://github.com/containers/podman-tui"
-license="Apache-2.0"
-arch="all !riscv64 !s390x" # podman (netavark & aardvark-dns -> rust/cargo)
-makedepends="go gpgme-dev linux-headers btrfs-progs-dev lvm2-dev"
-depends="podman"
-options="!check"
-source="$pkgname-$pkgver.tar.gz::https://github.com/containers/podman-tui/archive/v$pkgver.tar.gz"
-
-export GOPATH="$srcdir"
-export GOFLAGS="$GOFLAGS -trimpath -mod=readonly -modcacherw"
-
-build() {
- go build -v .
-}
-
-package() {
- install -Dm0755 "$pkgname" -t "$pkgdir"/usr/bin
-}
-
-sha512sums="
-e7095be80a664ccf9b951ca9998b68846dab10fab084c247fdc181055a867ef3d430df82be8aac7c4a522abbdc7417df3711028e8d78436a1df4c7a4755d6e5e podman-tui-0.3.1.tar.gz
-"
diff --git a/testing/poke/APKBUILD b/testing/poke/APKBUILD
index 0d43657ee3c..26a6b7fe189 100644
--- a/testing/poke/APKBUILD
+++ b/testing/poke/APKBUILD
@@ -1,12 +1,12 @@
# Contributor: Milan P. Stanić <mps@arvanta.net>
# Maintainer: Milan P. Stanić <mps@arvanta.net>
pkgname=poke
-pkgver=2.3
+pkgver=3.3
pkgrel=0
pkgdesc="extensible editor for binary data"
-url=http://www.jemarch.net/poke.html
+url="https://www.jemarch.net/poke.html"
arch="all"
-license="GPL-3-or-later"
+license="GPL-3.0-or-later"
makedepends="automake autoconf help2man gc-dev readline-dev gettext-dev json-c-dev dejagnu-dev"
checkdepends="dejagnu"
subpackages="$pkgname-doc"
@@ -32,5 +32,5 @@ package() {
}
sha512sums="
-101ef0009676c02f72ffb4889a02c9a161f29f412685249c7166f69077b0cd1b19d940567ebb86894bacf2278a2e138354fd49456f12b05a4c1957f437ff1d86 poke-2.3.tar.gz
+b00dca38d27bddee6ea131d45988aaead1d11d29b757c048f3b2be8013575cedc591844d4d99870f90964fd4f517d500cbb42aae5aff57e9fe07aac8273aa236 poke-3.3.tar.gz
"
diff --git a/testing/pokoy/APKBUILD b/testing/pokoy/APKBUILD
new file mode 100644
index 00000000000..1dff8b359f5
--- /dev/null
+++ b/testing/pokoy/APKBUILD
@@ -0,0 +1,28 @@
+# Contributor: Sergiy Stupar <owner@sestolab.pp.ua>
+# Maintainer: Sergiy Stupar <owner@sestolab.pp.ua>
+pkgname=pokoy
+pkgver=0.2.5
+pkgrel=0
+pkgdesc="Lightweight daemon that helps prevent RSI and other computer related stress"
+url="https://github.com/ttygde/pokoy"
+arch="all"
+license="GPL-2.0-only"
+makedepends="libxcb-dev xcb-util-wm-dev xcb-util-keysyms-dev"
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/ttygde/pokoy/archive/v$pkgver.tar.gz
+ broken-makefile.patch
+ "
+options="!check" # No tests
+
+build() {
+ make PREFIX=/usr STRIP=
+}
+
+package() {
+ make PREFIX=/usr DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+cd7505f0fc88c51f9a74e19aae3aed0e20a408b70ead93f04043a886c448099b4d56443c8a0404746b3b4ee4ba6b4c7d442793a7f24b93b1f3b06d8c149692ca pokoy-0.2.5.tar.gz
+c0973a7300fb77b45b597272bec9d182573a3b8a3eb16f1b4e70c838a1b59bbdc7041a10742bfee03d6191f068dd7bc16fbc046d94b7cce2e62c9736f760d039 broken-makefile.patch
+"
diff --git a/testing/pokoy/broken-makefile.patch b/testing/pokoy/broken-makefile.patch
new file mode 100644
index 00000000000..8eade4450cf
--- /dev/null
+++ b/testing/pokoy/broken-makefile.patch
@@ -0,0 +1,15 @@
+diff --git a/Makefile b/Makefile
+index 60f6519..b0c0793 100644
+--- a/Makefile
++++ b/Makefile
+@@ -1,8 +1,8 @@
+ VERSION = 0.2.5
+ CC ?= gcc
+ STRIP ?= strip
+-CFLAGS = -std=c99 -D_DEFAULT_SOURCE -O2
+-LDFLAGS = -lxcb -lxcb-keysyms -lxcb-icccm -lxcb-screensaver
++CFLAGS := -std=c99 -D_DEFAULT_SOURCE -O2 $(CFLAGS)
++LDFLAGS := -lxcb -lxcb-keysyms -lxcb-icccm -lxcb-screensaver $(LDFLAGS)
+
+ SRCR = pokoy.c
+ OBJS = ${SRCR:.c=.o}
diff --git a/testing/policycoreutils/0003-fix-pam-rules.patch b/testing/policycoreutils/0003-fix-pam-rules.patch
new file mode 100644
index 00000000000..d2d69d09f6b
--- /dev/null
+++ b/testing/policycoreutils/0003-fix-pam-rules.patch
@@ -0,0 +1,34 @@
+diff --git a/newrole/newrole.pamd b/newrole/newrole.pamd
+index 683c544..dc947b7 100644
+--- a/newrole/newrole.pamd
++++ b/newrole/newrole.pamd
+@@ -1,8 +1,8 @@
+ #%PAM-1.0
+ # Uncomment the next line if you do not want to enter your passwd every time
+ # auth sufficient pam_rootok.so
+-auth include system-auth
+-account include system-auth
+-password include system-auth
+-session include system-auth
++auth include base-auth
++account include base-account
++password include base-password
++session include base-session
+ session optional pam_xauth.so
+diff --git a/run_init/run_init.pamd b/run_init/run_init.pamd
+index ef46013..74cb988 100644
+--- a/run_init/run_init.pamd
++++ b/run_init/run_init.pamd
+@@ -1,8 +1,8 @@
+ #%PAM-1.0
+ # Uncomment the next line if you do not want to enter your passwd every time
+ #auth sufficient pam_rootok.so
+-auth include system-auth
+-account include system-auth
+-password include system-auth
+-session include system-auth
++auth include base-auth
++account include base-account
++password include base-password
++session include base-session
+ session optional pam_xauth.so
diff --git a/testing/policycoreutils/APKBUILD b/testing/policycoreutils/APKBUILD
index e0f1f9594e5..0d11a36c88b 100644
--- a/testing/policycoreutils/APKBUILD
+++ b/testing/policycoreutils/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Nicolas Lorin <androw95220@gmail.com>
# Maintainer: Tycho Andersen <tycho@docker.com>
pkgname=policycoreutils
-pkgver=3.3
-pkgrel=1
+pkgver=3.6
+pkgrel=0
pkgdesc="SELinux policy core utilities"
url="https://selinuxproject.org/"
arch="all"
@@ -12,7 +12,7 @@ makedepends="
libsepol-dev
libselinux-dev
libsemanage-dev
- fts-dev
+ musl-fts-dev
linux-pam-dev
libcap-ng-dev
audit-dev
@@ -21,6 +21,7 @@ makedepends="
subpackages="$pkgname-doc $pkgname-lang $pkgname-bash-completion"
source="https://github.com/SELinuxProject/selinux/releases/download/$pkgver/policycoreutils-$pkgver.tar.gz
0002-hack-around-GLOB-BRACE-TILDE.patch
+ 0003-fix-pam-rules.patch
busybox-install-compat.patch
"
options="suid"
@@ -34,7 +35,8 @@ package() {
}
sha512sums="
-db658990355f99a8e43f53d20cc67bf9e557b0a7837d1927c80f325b7f93ad47876382278a980b818484d6e31712a9b03e279f947ebc88c4be60a9f395607f98 policycoreutils-3.3.tar.gz
+e1f32e6e0310b879a5aadab157b103314a61bf3b8fd59c1212d701fbf39900e3b9a0b727338988103d784a7e505355a871ba519dd91520b135a3b9dae40bf1b0 policycoreutils-3.6.tar.gz
d611ca3107439fbdb9618a72f55cb66e299fa71392821b223343aa314c65af3e67d6e79ff40e93eca9a20dd0e90c660393c604a18048fcf293374cf2bc61e918 0002-hack-around-GLOB-BRACE-TILDE.patch
+e3d1a658c76b80e694188049bde153a525a227c5e94cfc008537c15a7a7758ddf23b3cf64dd8c5aaa6d32ddeb5b468c6f95c17a82131fe8d8779695e96b56704 0003-fix-pam-rules.patch
4f6ccc3ce6d88a85c5550d55fb6b8bb3ca601bb3996b68964e31b790273a3a27f33e1ae420c4bd64964270a6cf97501344a27c3d5f0210c825e88378be07bd49 busybox-install-compat.patch
"
diff --git a/testing/polyglot/APKBUILD b/testing/polyglot/APKBUILD
new file mode 100644
index 00000000000..1a08f577e77
--- /dev/null
+++ b/testing/polyglot/APKBUILD
@@ -0,0 +1,29 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
+pkgname=polyglot
+pkgver=2.0.4
+pkgrel=1
+pkgdesc="Protocol adapter to run UCI chess engines under XBoard"
+url="https://www.chessprogramming.org/PolyGlot"
+arch="all"
+license="GPL-2.0-or-later"
+options="!check" # no test suite
+source="http://hgm.nubati.net/releases/polyglot-$pkgver.tar.gz"
+subpackages="$pkgname-doc"
+
+build() {
+ ./configure \
+ --target="$CTARGET" \
+ --build="$CBUILD" \
+ --host="$CHOST" \
+ --prefix=/usr
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+e0ab6b5d7f01b7a877808e7411b510acd6b85f307c86f317bb0f8a11059f40234e75853d0524c08518b0dc4e4a17e0fa483c464c246950a6af8e4cc1a22c35d7 polyglot-2.0.4.tar.gz
+"
diff --git a/testing/polymc/APKBUILD b/testing/polymc/APKBUILD
deleted file mode 100644
index aabda5e9bdd..00000000000
--- a/testing/polymc/APKBUILD
+++ /dev/null
@@ -1,64 +0,0 @@
-# Contributor: Bart Ribbers <bribbers@disroot.org>
-# Maintainer: Bart Ribbers <bribbers@disroot.org>
-pkgname=polymc
-pkgver=1.2.2
-pkgrel=0
-_commit_libnbtplusplus="dc72a20b7efd304d12af2025223fad07b4b78464"
-_commit_quazip="6117161af08e366c37499895b00ef62f93adc345"
-pkgdesc="A custom launcher for Minecraft that allows you to easily manage multiple installations of Minecraft at once"
-url="https://polymc.org/"
-# blocked on riscv64 by openjdk
-# armhf and armv7 unsupported upstream
-arch="all !riscv64 !armhf !armv7"
-license="GPL-3.0-only AND Apache-2.0"
-depends="
- openjdk8-jre
- "
-case "$CARCH" in
- x86) ;;
- *) depends="$depends openjdk17-jre" ;;
-esac
-
-makedepends="
- cmake
- qt5-qtbase-dev
- openjdk8
- "
-source="https://github.com/PolyMC/PolyMC/archive/$pkgver/polymc-$pkgver.tar.gz
- https://github.com/MultiMC/libnbtplusplus/archive/$_commit_libnbtplusplus/libnbtplusplus-$_commit_libnbtplusplus.tar.gz
- https://github.com/stachenov/quazip/archive/$_commit_quazip/quazip-$_commit_quazip.tar.gz
- "
-subpackages="$pkgname-doc"
-builddir="$srcdir/PolyMC-$pkgver"
-
-prepare() {
- default_prepare
-
- rmdir \
- libraries/libnbtplusplus \
- libraries/quazip
- mv "$srcdir"/libnbtplusplus-$_commit_libnbtplusplus libraries/libnbtplusplus
- mv "$srcdir"/quazip-$_commit_quazip libraries/quazip
-}
-
-build() {
- JAVA_HOME=/usr/lib/jvm/java-1.8-openjdk cmake -B build \
- -DCMAKE_BUILD_TYPE=MinSizeRel \
- -DCMAKE_INSTALL_PREFIX=/usr
- cmake --build build
-}
-
-check() {
- cd build
- CTEST_OUTPUT_ON_FAILURE=TRUE ctest
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-
-sha512sums="
-cfa966971e5bb689ff4ecee0d0eefd9bc885001c3a17f964f6d4cdde4bb1b995faa89c2dc2ea0f24fb837fe6a03f42df3ec15723e364cd3cc69536ed45441d97 polymc-1.2.2.tar.gz
-c629dd10b2dca8482017d8d627763fab679e2f0822c03b766e84f8cac04bbb1cf6d57c64c6271350c25f8b9a0bdc72076e64d4efcf5a80eeefec323528cbc04f libnbtplusplus-dc72a20b7efd304d12af2025223fad07b4b78464.tar.gz
-943bfb6d2d2a30078c2cca3feb53e22340c9069638ec2a19a450389dbcf1dcaed63c6958b96206c136a577d7550630b56603dc5d3c2cf1b6d40e0961c054fcee quazip-6117161af08e366c37499895b00ef62f93adc345.tar.gz
-"
diff --git a/testing/polyml/APKBUILD b/testing/polyml/APKBUILD
deleted file mode 100644
index e92ba147b97..00000000000
--- a/testing/polyml/APKBUILD
+++ /dev/null
@@ -1,46 +0,0 @@
-# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
-# Maintainer:
-pkgname=polyml
-pkgver=5.9
-pkgrel=0
-pkgdesc="ML97 compatible Standard ML implementation"
-url="https://www.polyml.org/"
-arch="all !aarch64 !ppc64le !s390x !riscv64"
-license="LGPL-2.1-only"
-makedepends="gmp-dev libffi-dev"
-subpackages="$pkgname-dev $pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/polyml/polyml/archive/v$pkgver.tar.gz
- "
-
-# FIXME: https://github.com/polyml/polyml/issues/110
-case "$CARCH" in
- armhf|armv7) options="!check" ;;
-esac
-
-build() {
- # Compiling poly as a dynamically linked position independent
- # executable causes it to segfault. Since Alpine's GCC enables
- # PIE by default we need to explicitly disable it.
- CFLAGS="$CFLAGS -no-pie" ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var \
- --with-system-libffi \
- --with-gmp
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-e996cbe820216e854a50ba214f2a2a0291ee3279eb35be4126b6558bc1582732a236156fb8d0f548b31fca4a496db62ece83d902b6f5e72de64507fdef602e45 polyml-5.9.tar.gz
-"
diff --git a/testing/pomo/APKBUILD b/testing/pomo/APKBUILD
new file mode 100644
index 00000000000..b7376a9ff62
--- /dev/null
+++ b/testing/pomo/APKBUILD
@@ -0,0 +1,37 @@
+# Contributor: Michał Polański <michal@polanski.me>
+# Maintainer: Michał Polański <michal@polanski.me>
+pkgname=pomo
+pkgver=0.8.1
+pkgrel=15
+pkgdesc="Pomodoro CLI"
+url="https://kevinschoon.github.io/pomo/"
+license="MIT"
+arch="all"
+makedepends="go scdoc sqlite-dev"
+subpackages="$pkgname-doc"
+source="https://github.com/kevinschoon/pomo/archive/$pkgver/pomo-$pkgver.tar.gz"
+
+export GOFLAGS="$GOFLAGS -trimpath -mod=readonly -modcacherw -tags=libsqlite3"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ go build \
+ -ldflags "-X github.com/kevinschoon/pomo/pkg/internal.Version=$pkgver" \
+ ./cmd/pomo
+ scdoc <man/pomo.1.scd >pomo.1
+}
+
+check() {
+ go test ./...
+}
+
+package() {
+ install -Dm755 pomo -t "$pkgdir"/usr/bin/
+ install -Dm644 pomo.1 -t "$pkgdir"/usr/share/man/man1/
+}
+
+sha512sums="
+53b9608efce6a0820fc9fa3bfb9af406c23f1457bba2113c83b2fe714bff6e6e4d956533691ba7de8ada4db38a37527bed47692524128d275be3ec9a8b9bf758 pomo-0.8.1.tar.gz
+"
diff --git a/testing/pongoos-loader/APKBUILD b/testing/pongoos-loader/APKBUILD
index cc9b08b1129..a5c28cdc405 100644
--- a/testing/pongoos-loader/APKBUILD
+++ b/testing/pongoos-loader/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Jonas Heinrich <onny@project-insanity.org>
pkgname=pongoos-loader
pkgver=0_git20210704
-pkgrel=0
+pkgrel=1
pkgdesc="Loader for Android on iPhone"
url="https://github.com/checkra1n/pongoOS"
arch="all"
diff --git a/testing/popeye/APKBUILD b/testing/popeye/APKBUILD
index 428d26916f8..7ff54a325ce 100644
--- a/testing/popeye/APKBUILD
+++ b/testing/popeye/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Hoang Nguyen <folliekazetani@protonmail.com>
# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
pkgname=popeye
-pkgver=0.10.0
-pkgrel=0
+pkgver=0.20.4
+pkgrel=2
pkgdesc="Kubernetes cluster resource sanitizer"
url="https://popeyecli.io/"
arch="all"
@@ -10,13 +10,17 @@ license="Apache-2.0"
makedepends="go"
source="$pkgname-$pkgver.tar.gz::https://github.com/derailed/popeye/archive/refs/tags/v$pkgver.tar.gz"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
build() {
GOLDFLAGS="
-X github.com/derailed/popeye/cmd.version=v$pkgver
-X github.com/derailed/popeye/cmd.commit=AlpineLinux
-X github.com/derailed/popeye/cmd.date=$(date +%FT%T%Z)
"
- go build -v -tags netgo -o bin/$pkgname -ldflags "$GOLDFLAGS"
+ go build -v -tags netgo -o $pkgname -ldflags "$GOLDFLAGS"
}
check() {
@@ -24,9 +28,9 @@ check() {
}
package() {
- install -Dm755 bin/$pkgname "$pkgdir"/usr/bin/$pkgname
+ install -Dm755 $pkgname -t "$pkgdir"/usr/bin/
}
sha512sums="
-bfe9aca79645a82efd4912741d3d46ce6e54b96c8fce0029ed45f15352652308ca2327a8a9aae9cd72f93bf1d41010806fb5c560b4b5c39447e7eb219753882b popeye-0.10.0.tar.gz
+3f5ba8875dd2b7e005472ade518ae8f14550c6f292619550fbd0b2065ef635586d75910517a9a6efb066232297756a0fa239e6ca163532a9d413458833f2cbd8 popeye-0.20.4.tar.gz
"
diff --git a/testing/portsmf/APKBUILD b/testing/portsmf/APKBUILD
index fa26ad61a4c..51b6d0e7d41 100644
--- a/testing/portsmf/APKBUILD
+++ b/testing/portsmf/APKBUILD
@@ -2,15 +2,16 @@
# Maintainer: Sol Fisher Romanoff <sol@solfisher.com>
pkgname=portsmf
pkgver=239
-pkgrel=0
+pkgrel=1
pkgdesc="C++ library for reading and writing Standard MIDI Files"
-url="https://github.com/tenacityteam/portsmf"
+url="https://codeberg.org/tenacityteam/portsmf"
arch="all"
license="MIT"
makedepends="cmake"
subpackages="$pkgname-dev"
options="!check" # No testsuite
-source="$pkgname-$pkgver.tar.gz::https://github.com/tenacityteam/portsmf/archive/refs/tags/$pkgver.tar.gz"
+source="$pkgname-$pkgver-1.tar.gz::https://codeberg.org/tenacityteam/portsmf/archive/$pkgver.tar.gz"
+builddir="$srcdir/$pkgname"
build() {
cmake \
@@ -26,5 +27,5 @@ package() {
}
sha512sums="
-5908ef79043b44f90da8286d639a0693334f160454d206f4a212fe958a7a2e19cbc18e4240e191c1678690f34976c5e0d34dcb030d7bab007ee528fbb5e19486 portsmf-239.tar.gz
+522ef6e92de6497c66d6b9adf2b6b4e419024d26fac421096718b024ea0e183d322d3f0cd9fc357e0ba983371cf313d7a0b93b8b24aff5c9cb1ab61c915725ff portsmf-239-1.tar.gz
"
diff --git a/testing/postgresql-citus/APKBUILD b/testing/postgresql-citus/APKBUILD
deleted file mode 100644
index d8ffd2911e8..00000000000
--- a/testing/postgresql-citus/APKBUILD
+++ /dev/null
@@ -1,38 +0,0 @@
-# Contributor: Michael Pirogov <vbnet.ru@gmail.com>
-# Maintainer: Michael Pirogov <vbnet.ru@gmail.com>
-pkgname=postgresql-citus
-_projname=citus
-pkgver=10.2.5
-pkgrel=1
-pkgdesc="Scalable PostgreSQL for multi-tenant and real-time analytics workloads"
-url="https://github.com/citusdata/citus"
-arch="all"
-license="AGPL-3.0-only"
-makedepends="autoconf postgresql-dev icu-dev lz4-dev zstd-dev"
-install="$pkgname.post-install"
-source="https://github.com/citusdata/citus/archive/v$pkgver/$_projname-$pkgver.tar.gz"
-builddir="$srcdir/$_projname-$pkgver"
-options="!check" # tests requires running postgresql cluster
-
-prepare() {
- default_prepare
- autoreconf -fi
-}
-
-build() {
- ./configure \
- --prefix=/usr \
- --without-libcurl
- make
-}
-
-package() {
- depends="postgresql$(pg_config --major-version)"
-
- make DESTDIR="$pkgdir" install
- install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
-}
-
-sha512sums="
-95ee1225c850bc986025f6960cb5784b02f2ac5af8f312f5dd4a270c4ebf46dd60388ba604a9cd4cf2e22f8b7a855bd18654cbe9f701ba7cd35c1576414d185f citus-10.2.5.tar.gz
-"
diff --git a/testing/postgresql-citus/postgresql-citus.post-install b/testing/postgresql-citus/postgresql-citus.post-install
deleted file mode 100644
index 9b6974a6a9f..00000000000
--- a/testing/postgresql-citus/postgresql-citus.post-install
+++ /dev/null
@@ -1,10 +0,0 @@
-#!/bin/sh
-
-cat >&2 <<EOF
-*
-* Add the following line to postgresql.conf and restart PostgreSQL:
-* shared_preload_libraries = 'citus'
-*
-EOF
-
-exit 0
diff --git a/testing/postgresql-hll/APKBUILD b/testing/postgresql-hll/APKBUILD
new file mode 100644
index 00000000000..f2a6bccc806
--- /dev/null
+++ b/testing/postgresql-hll/APKBUILD
@@ -0,0 +1,34 @@
+# Contributor: Jakub Jirutka <jakub@jirutka.cz>
+# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
+pkgname=postgresql-hll
+pkgver=2.18
+pkgrel=0
+pkgdesc="PostgreSQL extension adding HyperLogLog data structures as a native data type"
+url="https://github.com/citusdata/postgresql-hll"
+# armhf,armv7,x86: 32-bit is not supported (error=format)
+arch="all !armhf !armv7 !x86"
+license="Apache-2.0"
+makedepends="postgresql-dev"
+subpackages="$pkgname-bitcode"
+source="https://github.com/citusdata/postgresql-hll/archive/v$pkgver/postgresql-hll-$pkgver.tar.gz"
+options="!check" # requires running PostgreSQL
+
+build() {
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+bitcode() {
+ pkgdesc="$pkgdesc (bitcode for JIT)"
+ depends="$pkgname=$pkgver-r$pkgrel"
+ install_if="postgresql$(pg_config --major-version)-jit $pkgname=$pkgver-r$pkgrel"
+
+ amove usr/lib/postgresql*/bitcode
+}
+
+sha512sums="
+0c9aa39ab3abe2e8eba77d2fe190689858d2c49d9b87b25b763c864892a4f1fecab8758ea72616c4bb7446e477850cd95c06e8e8bb5c3a346fa009d26a7f3d44 postgresql-hll-2.18.tar.gz
+"
diff --git a/testing/postgresql-login_hook/APKBUILD b/testing/postgresql-login_hook/APKBUILD
deleted file mode 100644
index 4f692a128e4..00000000000
--- a/testing/postgresql-login_hook/APKBUILD
+++ /dev/null
@@ -1,29 +0,0 @@
-# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
-pkgname=postgresql-login_hook
-_projname=login_hook
-# No versions tagged, see https://github.com/splendiddata/login_hook/issues/9
-pkgver=1.1
-pkgrel=1
-pkgdesc="PostgreSQL database extension to mimic a logon trigger"
-url="https://github.com/splendiddata/login_hook"
-arch="all"
-license="GPL-3.0-or-later"
-makedepends="postgresql-dev"
-subpackages="$pkgname-doc"
-install="$pkgname.post-install"
-source="https://github.com/splendiddata/login_hook/archive/version_$pkgver/$pkgname-$pkgver.tar.gz"
-builddir="$srcdir/$_projname-version_$pkgver"
-options="!check" # XXX: tests require running PostgreSQL
-
-build() {
- make
-}
-
-package() {
- depends="postgresql$(pg_config --major-version)"
-
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="ac3d02ee9c90f2512d3055a12bd20e1df9e41be16acc330f8e4d54bd0b3a8b12e2c1624c7593b3667b17d3d9a798a65fbd577830bd49162b17303d205113f29b postgresql-login_hook-1.1.tar.gz"
diff --git a/testing/postgresql-login_hook/postgresql-login_hook.post-install b/testing/postgresql-login_hook/postgresql-login_hook.post-install
deleted file mode 100644
index 01b8b0ec69b..00000000000
--- a/testing/postgresql-login_hook/postgresql-login_hook.post-install
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/bin/sh
-
-cat >&2 <<EOF
-*
-* To use login_hook, you have to add the following line to postgresql.conf:
-* session_preload_libraries = 'login_hook'
-*
-EOF
diff --git a/testing/postgresql-pg_graphql/APKBUILD b/testing/postgresql-pg_graphql/APKBUILD
new file mode 100644
index 00000000000..5882f4fbfc8
--- /dev/null
+++ b/testing/postgresql-pg_graphql/APKBUILD
@@ -0,0 +1,71 @@
+# Contributor: Jakub Jirutka <jakub@jirutka.cz>
+# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
+pkgname=postgresql-pg_graphql
+_projname=pg_graphql
+pkgver=1.4.2
+pkgrel=0
+pkgdesc="GraphQL support for PostgreSQL"
+url="https://supabase.github.io/pg_graphql/"
+# ppc64le,riscv64,s390x: fails to build due to ring crate (https://github.com/pgcentralfoundation/pgrx/pull/1442)
+arch="all !ppc64le !riscv64 !s390x"
+license="Apache-2.0"
+makedepends="
+ cargo
+ chrpath
+ jq
+ openssl-dev
+ postgresql
+ postgresql-dev
+ rustfmt
+ "
+source="https://github.com/supabase/pg_graphql/archive/v$pkgver/$_projname-$pkgver.tar.gz
+ remove-regex.patch
+ "
+builddir="$srcdir/$_projname-$pkgver"
+# check: tests tries to write to /usr/lib/...
+# net: fetches crates in build phase
+options="!check net"
+
+export PGRX_HOME="$srcdir/.pgrx"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ local pgver="$(pg_config --major-version)"
+
+ # We must install it this way because cargo-pgrx and pgrx dependency
+ # versions in the project must be identical. :(
+ local pgrx_ver; pgrx_ver="$(cargo metadata --locked --format-version 1 \
+ | jq -r '.packages[] | select(.name == "pgrx") | .version')"
+ # Use dev profile to speed-up compilation.
+ cargo install --locked --profile dev --bins --root target/tools "cargo-pgrx@$pgrx_ver"
+
+ export PATH="$PWD/target/tools/bin:$PATH"
+
+ cargo pgrx init --pg$pgver="$(which pg_config)"
+
+ # TODO: Remove after >0.11.2 is released (https://github.com/pgcentralfoundation/pgrx/pull/1441).
+ [ -n "$RUSTFLAGS" ] && export RUSTFLAGS="$(echo $RUSTFLAGS)" || unset RUSTFLAGS
+
+ cargo pgrx package --verbose --out-dir="target/release/dist"
+
+ # Remove RPATH.
+ # NOTE: CARGO_PROFILE_RELEASE_RPATH=false doesn't work here.
+ chrpath -d target/release/dist/usr/lib/postgresql*/*.so
+}
+
+package() {
+ depends="postgresql$(pg_config --major-version)"
+
+ mkdir -p "$pkgdir"
+ cp -r target/release/dist/* "$pkgdir"/
+}
+
+sha512sums="
+d1d0612b39916062b85b855975948376aae47066028532c118ee404808c245fc7617fd0a39a410397572601194f38f7a04a69a99b8aa71f43a79cc8710223cb4 pg_graphql-1.4.2.tar.gz
+dc517bfb9813a1c807c01146d7f81dbfc14b004fb5be915794092bf7a2cdfa84edcdfe221094f8e196cf169980c02cdfcf339d80fd16114c040a03a3d765b416 remove-regex.patch
+"
diff --git a/testing/postgresql-pg_graphql/remove-regex.patch b/testing/postgresql-pg_graphql/remove-regex.patch
new file mode 100644
index 00000000000..4662f4be780
--- /dev/null
+++ b/testing/postgresql-pg_graphql/remove-regex.patch
@@ -0,0 +1,66 @@
+Patch-Source: https://github.com/supabase/pg_graphql/pull/473
+--
+From bd6d3c4af27e7961e0c3d4632289d155336e399e Mon Sep 17 00:00:00 2001
+From: Jakub Jirutka <jakub@jirutka.cz>
+Date: Mon, 18 Dec 2023 19:20:43 +0100
+Subject: [PATCH] replace regex with std alternative
+
+regex is a big dependency (adds over 1 MiB to the binary size) and it's
+unnecessary for such a simple check.
+---
+ Cargo.lock | 1 -
+ Cargo.toml | 1 -
+ src/graphql.rs | 10 +++-------
+ 3 files changed, 3 insertions(+), 9 deletions(-)
+
+diff --git a/Cargo.lock b/Cargo.lock
+index bcd2ab8d..16ef67c8 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -1105,7 +1105,6 @@ dependencies = [
+ "pgrx",
+ "pgrx-tests",
+ "rand",
+- "regex",
+ "serde",
+ "serde_json",
+ "uuid",
+diff --git a/Cargo.toml b/Cargo.toml
+index 88d0995d..610767b3 100644
+--- a/Cargo.toml
++++ b/Cargo.toml
+@@ -22,7 +22,6 @@ itertools = "0.10.3"
+ cached = "0.34.0"
+ rand = "0.8"
+ uuid = "1"
+-regex = "1"
+ base64 = "0.13"
+ lazy_static = "1"
+ bimap = { version = "0.6.3", features = ["serde"] }
+diff --git a/src/graphql.rs b/src/graphql.rs
+index 602153b3..f2a4e394 100644
+--- a/src/graphql.rs
++++ b/src/graphql.rs
+@@ -2,19 +2,15 @@ use crate::sql_types::*;
+ use cached::proc_macro::cached;
+ use cached::SizedCache;
+ use itertools::Itertools;
+-use lazy_static::lazy_static;
+-use regex::Regex;
+ use serde::Serialize;
+ use std::collections::{HashMap, HashSet};
+ use std::ops::Deref;
+ use std::sync::Arc;
+
+-lazy_static! {
+- static ref GRAPHQL_NAME_RE: Regex = Regex::new("^[_A-Za-z][_0-9A-Za-z]*$").unwrap();
+-}
+-
+ fn is_valid_graphql_name(name: &str) -> bool {
+- GRAPHQL_NAME_RE.is_match(name)
++ !name.is_empty()
++ && name.starts_with(|c: char| c == '_' || c.is_ascii_alphabetic())
++ && name.chars().all(|c| c == '_' || c.is_ascii_alphanumeric())
+ }
+
+ fn to_base_type_name(name: &str, name_override: &Option<String>, inflect_names: bool) -> String {
diff --git a/testing/postgresql-pg_later/APKBUILD b/testing/postgresql-pg_later/APKBUILD
new file mode 100644
index 00000000000..bc6773ff21e
--- /dev/null
+++ b/testing/postgresql-pg_later/APKBUILD
@@ -0,0 +1,71 @@
+# Contributor: Jakub Jirutka <jakub@jirutka.cz>
+# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
+pkgname=postgresql-pg_later
+_projname=pg_later
+pkgver=0.0.14
+pkgrel=0
+pkgdesc="PostgreSQL extension to execute SQL now and get the results later"
+url="https://github.com/tembo-io/pg_later"
+# s390x: fails to build nix crate
+arch="all !s390x"
+license="PostgreSQL"
+makedepends="
+ cargo
+ chrpath
+ jq
+ openssl-dev
+ postgresql
+ postgresql-dev
+ rustfmt
+ "
+source="https://github.com/tembo-io/pg_later/archive/v$pkgver/postgresql-pg_later-$pkgver.tar.gz
+ remove-tls.patch
+ "
+builddir="$srcdir/$_projname-$pkgver"
+# check: tests tries to write to /usr/lib/...
+# net: fetches crates in build phase
+options="!check net"
+
+export PGRX_HOME="$srcdir/.pgrx"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ local pgver="$(pg_config --major-version)"
+
+ # We must install it this way because cargo-pgrx and pgrx dependency
+ # versions in the project must be identical. :(
+ local pgrx_ver; pgrx_ver="$(cargo metadata --locked --format-version 1 \
+ | jq -r '.packages[] | select(.name == "pgrx") | .version')"
+ # Use dev profile to speed-up compilation.
+ cargo install --locked --profile dev --bins --root target/tools "cargo-pgrx@$pgrx_ver"
+
+ export PATH="$PWD/target/tools/bin:$PATH"
+
+ cargo pgrx init --pg$pgver="$(which pg_config)"
+
+ # TODO: Remove after >0.11.2 is released (https://github.com/pgcentralfoundation/pgrx/pull/1441).
+ [ -n "$RUSTFLAGS" ] && export RUSTFLAGS="$(echo $RUSTFLAGS)" || unset RUSTFLAGS
+
+ cargo pgrx package --verbose --out-dir="target/release/dist"
+
+ # Remove RPATH.
+ # NOTE: CARGO_PROFILE_RELEASE_RPATH=false doesn't work here.
+ chrpath -d target/release/dist/usr/lib/postgresql*/*.so
+}
+
+package() {
+ depends="postgresql$(pg_config --major-version)"
+
+ mkdir -p "$pkgdir"
+ cp -r target/release/dist/* "$pkgdir"/
+}
+
+sha512sums="
+6685d49411e2c441d53994f7b98e2a0bab84d9d9f047a7d75ee7ff1b2c266f44e4b89ec8b2b4553877e72eceee448fd4dadd37ad8cd15f6e924864aa8b8c9606 postgresql-pg_later-0.0.14.tar.gz
+94b8e7e944bb6233d74084b44e5f7c7a2024782a16f5be52718b2ec11cb47b66363d9abf1321879b3cd0c7652ccbfcae83014c34bfb31c77977097b561f7c49c remove-tls.patch
+"
diff --git a/testing/postgresql-pg_later/remove-tls.patch b/testing/postgresql-pg_later/remove-tls.patch
new file mode 100644
index 00000000000..409a10e4f45
--- /dev/null
+++ b/testing/postgresql-pg_later/remove-tls.patch
@@ -0,0 +1,646 @@
+Patch-Source: https://github.com/tembo-io/pg_later/pull/45
+--
+From 202519fbee9d740661480bc4b190dd3a4f63d575 Mon Sep 17 00:00:00 2001
+From: Jakub Jirutka <jakub@jirutka.cz>
+Date: Tue, 30 Jan 2024 04:21:11 +0100
+Subject: [PATCH] Bump dependencies and remove sqlx runtime-tokio-native-tls
+ feature (#45)
+
+* Bump pgrx from 0.11.2 to 0.11.3
+
+* Bump pgmq-core from 0.8.2 to 0.8.4
+
+* Bump pgmq from 0.25.0 to 0.26.0
+
+* Bump sqlx from 0.7.2 to 0.7.3
+
+* Remove sqlx feature runtime-tokio-native-tls
+
+pg_later doesn't connect to a remote PostgreSQL, so TLS is unnecessary.
+This change will reduce the number of dependencies and the binary size.
+---
+ Cargo.lock | 260 ++++++++++++++++++++---------------------------------
+ Cargo.toml | 11 ++-
+ 2 files changed, 100 insertions(+), 171 deletions(-)
+
+diff --git a/Cargo.lock b/Cargo.lock
+index a0241f7..f538486 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -19,14 +19,15 @@ checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
+
+ [[package]]
+ name = "ahash"
+-version = "0.8.3"
++version = "0.8.7"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "2c99f64d1e06488f620f932677e24bc6e2897582980441ae90a671415bd7ec2f"
++checksum = "77c3a9648d43b9cd48db467b3f87fdd6e146bcc88ab0180006cef2179fe11d01"
+ dependencies = [
+ "cfg-if",
+ "getrandom",
+ "once_cell",
+ "version_check",
++ "zerocopy",
+ ]
+
+ [[package]]
+@@ -79,7 +80,7 @@ checksum = "cc6dde6e4ed435a4c1ee4e73592f5ba9da2151af10076cc04858746af9352d09"
+ dependencies = [
+ "proc-macro2",
+ "quote",
+- "syn 2.0.28",
++ "syn 2.0.43",
+ ]
+
+ [[package]]
+@@ -110,6 +111,16 @@ dependencies = [
+ "rustc_version 0.3.3",
+ ]
+
++[[package]]
++name = "atomic-write-file"
++version = "0.1.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "edcdbedc2236483ab103a53415653d6b4442ea6141baf1ffa85df29635e88436"
++dependencies = [
++ "nix",
++ "rand",
++]
++
+ [[package]]
+ name = "autocfg"
+ version = "1.1.0"
+@@ -145,9 +156,9 @@ checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b"
+
+ [[package]]
+ name = "bindgen"
+-version = "0.68.1"
++version = "0.69.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "726e4313eb6ec35d2730258ad4e15b547ee75d6afaa1361a922e78e59b7d8078"
++checksum = "a4c69fae65a523209d34240b60abe0c42d33d1045d445c0839d8a4894a736e2d"
+ dependencies = [
+ "bitflags 2.4.0",
+ "cexpr",
+@@ -160,7 +171,7 @@ dependencies = [
+ "regex",
+ "rustc-hash",
+ "shlex",
+- "syn 2.0.28",
++ "syn 2.0.43",
+ ]
+
+ [[package]]
+@@ -333,7 +344,7 @@ dependencies = [
+ "heck",
+ "proc-macro2",
+ "quote",
+- "syn 2.0.28",
++ "syn 2.0.43",
+ ]
+
+ [[package]]
+@@ -357,16 +368,6 @@ dependencies = [
+ "unicode-segmentation",
+ ]
+
+-[[package]]
+-name = "core-foundation"
+-version = "0.9.3"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146"
+-dependencies = [
+- "core-foundation-sys",
+- "libc",
+-]
+-
+ [[package]]
+ name = "core-foundation-sys"
+ version = "0.8.4"
+@@ -548,7 +549,7 @@ checksum = "f282cfdfe92516eb26c2af8589c274c7c17681f5ecc03c18255fe741c6aa64eb"
+ dependencies = [
+ "proc-macro2",
+ "quote",
+- "syn 2.0.28",
++ "syn 2.0.43",
+ ]
+
+ [[package]]
+@@ -640,21 +641,6 @@ version = "1.0.7"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
+
+-[[package]]
+-name = "foreign-types"
+-version = "0.3.2"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
+-dependencies = [
+- "foreign-types-shared",
+-]
+-
+-[[package]]
+-name = "foreign-types-shared"
+-version = "0.1.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
+-
+ [[package]]
+ name = "form_urlencoded"
+ version = "1.2.1"
+@@ -722,7 +708,7 @@ checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72"
+ dependencies = [
+ "proc-macro2",
+ "quote",
+- "syn 2.0.28",
++ "syn 2.0.43",
+ ]
+
+ [[package]]
+@@ -994,9 +980,9 @@ checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058"
+
+ [[package]]
+ name = "libsqlite3-sys"
+-version = "0.26.0"
++version = "0.27.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "afc22eff61b133b115c6e8c74e818c628d6d5e7a502afea6f64dee076dd94326"
++checksum = "cf4e226dcd58b4be396f7bd3c20da8fdee2911400705297ba7d2d7cc2c30f716"
+ dependencies = [
+ "cc",
+ "pkg-config",
+@@ -1076,21 +1062,14 @@ dependencies = [
+ ]
+
+ [[package]]
+-name = "native-tls"
+-version = "0.2.11"
++name = "nix"
++version = "0.27.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "07226173c32f2926027b63cce4bcd8076c3552846cbe7925f3aaffeac0a3b92e"
++checksum = "2eb04e9c688eff1c89d72b407f168cf79bb9e867a9d3323ed6c01519eb9cc053"
+ dependencies = [
+- "lazy_static",
++ "bitflags 2.4.0",
++ "cfg-if",
+ "libc",
+- "log",
+- "openssl",
+- "openssl-probe",
+- "openssl-sys",
+- "schannel",
+- "security-framework",
+- "security-framework-sys",
+- "tempfile",
+ ]
+
+ [[package]]
+@@ -1185,50 +1164,6 @@ version = "1.18.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d"
+
+-[[package]]
+-name = "openssl"
+-version = "0.10.56"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "729b745ad4a5575dd06a3e1af1414bd330ee561c01b3899eb584baeaa8def17e"
+-dependencies = [
+- "bitflags 1.3.2",
+- "cfg-if",
+- "foreign-types",
+- "libc",
+- "once_cell",
+- "openssl-macros",
+- "openssl-sys",
+-]
+-
+-[[package]]
+-name = "openssl-macros"
+-version = "0.1.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
+-dependencies = [
+- "proc-macro2",
+- "quote",
+- "syn 2.0.28",
+-]
+-
+-[[package]]
+-name = "openssl-probe"
+-version = "0.1.5"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf"
+-
+-[[package]]
+-name = "openssl-sys"
+-version = "0.9.91"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "866b5f16f90776b9bb8dc1e1802ac6f0513de3a7a7465867bfbc563dc737faac"
+-dependencies = [
+- "cc",
+- "libc",
+- "pkg-config",
+- "vcpkg",
+-]
+-
+ [[package]]
+ name = "option-ext"
+ version = "0.2.0"
+@@ -1344,9 +1279,9 @@ dependencies = [
+
+ [[package]]
+ name = "pgmq"
+-version = "0.25.0"
++version = "0.26.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "c78e66be0f79f0b4232c5cd704a1c7b5a141c214a6cf35544bf5837a149f3606"
++checksum = "1c0159d414341a3badb16cc9b7282cad40ee8c461d30c1a1a32f3be17d4039d6"
+ dependencies = [
+ "chrono",
+ "log",
+@@ -1361,9 +1296,9 @@ dependencies = [
+
+ [[package]]
+ name = "pgmq-core"
+-version = "0.8.2"
++version = "0.8.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "6feb214f7d3489151fc4baef4a565ec31437f280dd7e22eb8a5be6eb282a37a9"
++checksum = "cd282003c4cbcfdf5190e259f940231f91a8b04fbda4588e45d51b7f1bf8177d"
+ dependencies = [
+ "chrono",
+ "log",
+@@ -1377,9 +1312,9 @@ dependencies = [
+
+ [[package]]
+ name = "pgrx"
+-version = "0.11.2"
++version = "0.11.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "cb44171122605250e719ca2ae49afb357bdb2fce4b3c876fcf2225165237328a"
++checksum = "2102faa5ef4a7bf096fefcf67692b293583efd18f9236340ad3169807dfc2b73"
+ dependencies = [
+ "atomic-traits",
+ "bitflags 2.4.0",
+@@ -1402,9 +1337,9 @@ dependencies = [
+
+ [[package]]
+ name = "pgrx-macros"
+-version = "0.11.2"
++version = "0.11.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "a18ac8628b7de2f29a93d0abdbdcaee95a0e0ef4b59fd4de99cc117e166e843b"
++checksum = "c26810d09910ec987a6708d48d243efb5f879331e01c6fec0893714d0eb12bae"
+ dependencies = [
+ "pgrx-sql-entity-graph",
+ "proc-macro2",
+@@ -1414,9 +1349,9 @@ dependencies = [
+
+ [[package]]
+ name = "pgrx-pg-config"
+-version = "0.11.2"
++version = "0.11.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "acd45ac6eb1142c5690df63c4e0bdfb74f27c9f93a7af84f064dc2c0a2c2d6f7"
++checksum = "0b0099ba4b635dfe1e34afc8bca8be43e9577c5d726aaf1dc7dd23a78f6c8a60"
+ dependencies = [
+ "cargo_toml",
+ "dirs",
+@@ -1432,9 +1367,9 @@ dependencies = [
+
+ [[package]]
+ name = "pgrx-pg-sys"
+-version = "0.11.2"
++version = "0.11.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "81c6207939582934fc26fceb651cb5338e363c06ddc6b2d50ca71867f7c70ffe"
++checksum = "3f40315259c41fede51eb23b791b48d0a112b0f47d0dcb6862b798d1fa1db6ea"
+ dependencies = [
+ "bindgen",
+ "clang-sys",
+@@ -1456,9 +1391,9 @@ dependencies = [
+
+ [[package]]
+ name = "pgrx-sql-entity-graph"
+-version = "0.11.2"
++version = "0.11.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "a50083de83b1fac2484e8f2c2a7da5fed0193904e2578fa6c4ce02262c455c2b"
++checksum = "7d47a4e991c8c66162c5d6b0fc2bd382e43a58fc893ce05a6a15ddcb1bf7eee4"
+ dependencies = [
+ "convert_case",
+ "eyre",
+@@ -1471,9 +1406,9 @@ dependencies = [
+
+ [[package]]
+ name = "pgrx-tests"
+-version = "0.11.2"
++version = "0.11.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "6ba0115cd80d9e3ca1d5d2a8ab8b7320d6ed614a53d025b86152696a8b3caa75"
++checksum = "ab3abc01e2bb930b072bd660d04c8eaa69a29d4727d5b2a641f946c603c1605e"
+ dependencies = [
+ "clap-cargo",
+ "eyre",
+@@ -1858,15 +1793,6 @@ dependencies = [
+ "winapi-util",
+ ]
+
+-[[package]]
+-name = "schannel"
+-version = "0.1.22"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "0c3733bf4cf7ea0880754e19cb5a462007c4a8c1914bff372ccc95b464f1df88"
+-dependencies = [
+- "windows-sys",
+-]
+-
+ [[package]]
+ name = "scopeguard"
+ version = "1.2.0"
+@@ -1879,29 +1805,6 @@ version = "4.1.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "1c107b6f4780854c8b126e228ea8869f4d7b71260f962fefb57b996b8959ba6b"
+
+-[[package]]
+-name = "security-framework"
+-version = "2.9.2"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "05b64fb303737d99b81884b2c63433e9ae28abebe5eb5045dcdd175dc2ecf4de"
+-dependencies = [
+- "bitflags 1.3.2",
+- "core-foundation",
+- "core-foundation-sys",
+- "libc",
+- "security-framework-sys",
+-]
+-
+-[[package]]
+-name = "security-framework-sys"
+-version = "2.9.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "e932934257d3b408ed8f30db49d85ea163bfe74961f017f405b025af298f0c7a"
+-dependencies = [
+- "core-foundation-sys",
+- "libc",
+-]
+-
+ [[package]]
+ name = "semver"
+ version = "0.11.0"
+@@ -1959,7 +1862,7 @@ checksum = "aafe972d60b0b9bee71a91b92fee2d4fb3c9d7e8f6b179aa99f27203d99a4816"
+ dependencies = [
+ "proc-macro2",
+ "quote",
+- "syn 2.0.28",
++ "syn 2.0.43",
+ ]
+
+ [[package]]
+@@ -2006,9 +1909,9 @@ dependencies = [
+
+ [[package]]
+ name = "shlex"
+-version = "1.2.0"
++version = "1.3.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "a7cee0529a6d40f580e7a5e6c495c8fbfe21b7b52795ed4bb5e62cdf92bc6380"
++checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64"
+
+ [[package]]
+ name = "signature"
+@@ -2095,9 +1998,9 @@ dependencies = [
+
+ [[package]]
+ name = "sqlx"
+-version = "0.7.2"
++version = "0.7.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "0e50c216e3624ec8e7ecd14c6a6a6370aad6ee5d8cfc3ab30b5162eeeef2ed33"
++checksum = "dba03c279da73694ef99763320dea58b51095dfe87d001b1d4b5fe78ba8763cf"
+ dependencies = [
+ "sqlx-core",
+ "sqlx-macros",
+@@ -2108,9 +2011,9 @@ dependencies = [
+
+ [[package]]
+ name = "sqlx-core"
+-version = "0.7.2"
++version = "0.7.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "8d6753e460c998bbd4cd8c6f0ed9a64346fcca0723d6e75e52fdc351c5d2169d"
++checksum = "d84b0a3c3739e220d94b3239fd69fb1f74bc36e16643423bd99de3b43c21bfbd"
+ dependencies = [
+ "ahash",
+ "atoi",
+@@ -2132,7 +2035,6 @@ dependencies = [
+ "indexmap",
+ "log",
+ "memchr",
+- "native-tls",
+ "once_cell",
+ "paste",
+ "percent-encoding",
+@@ -2150,9 +2052,9 @@ dependencies = [
+
+ [[package]]
+ name = "sqlx-macros"
+-version = "0.7.2"
++version = "0.7.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "9a793bb3ba331ec8359c1853bd39eed32cdd7baaf22c35ccf5c92a7e8d1189ec"
++checksum = "89961c00dc4d7dffb7aee214964b065072bff69e36ddb9e2c107541f75e4f2a5"
+ dependencies = [
+ "proc-macro2",
+ "quote",
+@@ -2163,10 +2065,11 @@ dependencies = [
+
+ [[package]]
+ name = "sqlx-macros-core"
+-version = "0.7.2"
++version = "0.7.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "0a4ee1e104e00dedb6aa5ffdd1343107b0a4702e862a84320ee7cc74782d96fc"
++checksum = "d0bd4519486723648186a08785143599760f7cc81c52334a55d6a83ea1e20841"
+ dependencies = [
++ "atomic-write-file",
+ "dotenvy",
+ "either",
+ "heck",
+@@ -2189,9 +2092,9 @@ dependencies = [
+
+ [[package]]
+ name = "sqlx-mysql"
+-version = "0.7.2"
++version = "0.7.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "864b869fdf56263f4c95c45483191ea0af340f9f3e3e7b4d57a61c7c87a970db"
++checksum = "e37195395df71fd068f6e2082247891bc11e3289624bbc776a0cdfa1ca7f1ea4"
+ dependencies = [
+ "atoi",
+ "base64",
+@@ -2232,9 +2135,9 @@ dependencies = [
+
+ [[package]]
+ name = "sqlx-postgres"
+-version = "0.7.2"
++version = "0.7.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "eb7ae0e6a97fb3ba33b23ac2671a5ce6e3cabe003f451abd5a56e7951d975624"
++checksum = "d6ac0ac3b7ccd10cc96c7ab29791a7dd236bd94021f31eec7ba3d46a74aa1c24"
+ dependencies = [
+ "atoi",
+ "base64",
+@@ -2272,9 +2175,9 @@ dependencies = [
+
+ [[package]]
+ name = "sqlx-sqlite"
+-version = "0.7.2"
++version = "0.7.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "d59dc83cf45d89c555a577694534fcd1b55c545a816c816ce51f20bbe56a4f3f"
++checksum = "210976b7d948c7ba9fced8ca835b11cbb2d677c59c79de41ac0d397e14547490"
+ dependencies = [
+ "atoi",
+ "chrono",
+@@ -2291,6 +2194,7 @@ dependencies = [
+ "sqlx-core",
+ "tracing",
+ "url",
++ "urlencoding",
+ ]
+
+ [[package]]
+@@ -2328,9 +2232,9 @@ dependencies = [
+
+ [[package]]
+ name = "syn"
+-version = "2.0.28"
++version = "2.0.43"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "04361975b3f5e348b2189d8dc55bc942f278b2d482a6a0365de5bdd62d351567"
++checksum = "ee659fb5f3d355364e1f3e5bc10fb82068efbf824a1e9d1c9504244a6469ad53"
+ dependencies = [
+ "proc-macro2",
+ "quote",
+@@ -2388,7 +2292,7 @@ checksum = "090198534930841fab3a5d1bb637cde49e339654e606195f8d9c76eeb081dc96"
+ dependencies = [
+ "proc-macro2",
+ "quote",
+- "syn 2.0.28",
++ "syn 2.0.43",
+ ]
+
+ [[package]]
+@@ -2441,7 +2345,7 @@ checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e"
+ dependencies = [
+ "proc-macro2",
+ "quote",
+- "syn 2.0.28",
++ "syn 2.0.43",
+ ]
+
+ [[package]]
+@@ -2550,7 +2454,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7"
+ dependencies = [
+ "proc-macro2",
+ "quote",
+- "syn 2.0.28",
++ "syn 2.0.43",
+ ]
+
+ [[package]]
+@@ -2630,6 +2534,12 @@ dependencies = [
+ "percent-encoding",
+ ]
+
++[[package]]
++name = "urlencoding"
++version = "2.1.3"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "daf8dba3b7eb870caf1ddeed7bc9d2a049f3cfdfae7cb521b087cc33ae4c49da"
++
+ [[package]]
+ name = "uuid"
+ version = "1.4.1"
+@@ -2703,7 +2613,7 @@ dependencies = [
+ "once_cell",
+ "proc-macro2",
+ "quote",
+- "syn 2.0.28",
++ "syn 2.0.43",
+ "wasm-bindgen-shared",
+ ]
+
+@@ -2725,7 +2635,7 @@ checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b"
+ dependencies = [
+ "proc-macro2",
+ "quote",
+- "syn 2.0.28",
++ "syn 2.0.43",
+ "wasm-bindgen-backend",
+ "wasm-bindgen-shared",
+ ]
+@@ -2880,6 +2790,26 @@ dependencies = [
+ "tap",
+ ]
+
++[[package]]
++name = "zerocopy"
++version = "0.7.32"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "74d4d3961e53fa4c9a25a8637fc2bfaf2595b3d3ae34875568a5cf64787716be"
++dependencies = [
++ "zerocopy-derive",
++]
++
++[[package]]
++name = "zerocopy-derive"
++version = "0.7.32"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6"
++dependencies = [
++ "proc-macro2",
++ "quote",
++ "syn 2.0.43",
++]
++
+ [[package]]
+ name = "zeroize"
+ version = "1.6.0"
+diff --git a/Cargo.toml b/Cargo.toml
+index 8df9cf8..1d13b44 100644
+--- a/Cargo.toml
++++ b/Cargo.toml
+@@ -19,12 +19,11 @@ pg_test = []
+ anyhow = "1.0.72"
+ chrono = {version = "0.4.26", features = ["serde"] }
+ log = "0.4.19"
+-pgmq = "0.25.0"
+-pgrx = "0.11.2"
++pgmq = "0.26.0"
++pgrx = "0.11.3"
+ serde = "1.0.164"
+ serde_json = "1.0.99"
+-sqlx = { version = "0.7.2", features = [
+- "runtime-tokio-native-tls",
++sqlx = { version = "0.7.3", features = [
+ "postgres",
+ "chrono",
+ "postgres",
+@@ -36,11 +35,11 @@ postgres-types = "0.2.5"
+
+
+ [dev-dependencies]
+-pgrx-tests = "0.11.2"
++pgrx-tests = "0.11.3"
+ rand = "0.8.5"
+ tokio = { version = "1", features = ["macros"] }
+ whoami = "1.4.0"
+-pgmq-core = "0.8.2"
++pgmq-core = "0.8.4"
+
+ [profile.dev]
+ panic = "unwind"
diff --git a/testing/postgresql-pg_partman/APKBUILD b/testing/postgresql-pg_partman/APKBUILD
new file mode 100644
index 00000000000..63099326aae
--- /dev/null
+++ b/testing/postgresql-pg_partman/APKBUILD
@@ -0,0 +1,58 @@
+# Contributor: Jakub Jirutka <jakub@jirutka.cz>
+# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
+pkgname=postgresql-pg_partman
+_projname=pg_partman
+pkgver=5.0.0
+pkgrel=0
+pkgdesc="Partition management extension for PostgreSQL"
+url="https://github.com/pgpartman/pg_partman"
+arch="all"
+license="PostgreSQL"
+_depends_scripts="
+ py3-psycopg2
+ python3
+ "
+makedepends="
+ $_depends_scripts
+ postgresql-dev
+ "
+subpackages="
+ $pkgname-scripts:_scripts:noarch
+ $pkgname-bitcode
+ $pkgname-doc
+ "
+source="https://github.com/pgpartman/pg_partman/archive/v$pkgver/$_projname-$pkgver.tar.gz
+ fix-python-shebang.patch
+ "
+builddir="$srcdir/$_projname-$pkgver"
+options="!check" # tests require running PostgreSQL
+
+build() {
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+_scripts() {
+ pkgdesc="$pkgdesc - Python scripts"
+ depends="$pkgname=$pkgver-r$pkgrel $_depends_scripts"
+ # Declare it as a "soft dependency", so the user can opt-out from installing.
+ install_if="$pkgname=$pkgver-r$pkgrel"
+
+ amove usr/libexec/postgresql*/*.py
+}
+
+bitcode() {
+ pkgdesc="$pkgdesc (bitcode for JIT)"
+ depends="$pkgname=$pkgver-r$pkgrel"
+ install_if="postgresql$(pg_config --major-version)-jit $pkgname=$pkgver-r$pkgrel"
+
+ amove usr/lib/postgresql*/bitcode
+}
+
+sha512sums="
+7a1b41732eb063a94cee7a589a252055e3a33ccf0ddfe5cddba22978ffd306cf263312b172355c930d355aea0f5f5530fd2344520791df9cb05a38614c521f9f pg_partman-5.0.0.tar.gz
+e3cdd19267b6fc73173c05b0bcc33038f9c7dc8d53ec348ec2a641de03695c247522a503867cd93a750964c05b4fa17d6dc5f4f21e9673925d0656a90a4afb79 fix-python-shebang.patch
+"
diff --git a/testing/postgresql-pg_partman/fix-python-shebang.patch b/testing/postgresql-pg_partman/fix-python-shebang.patch
new file mode 100644
index 00000000000..5f18ffda57a
--- /dev/null
+++ b/testing/postgresql-pg_partman/fix-python-shebang.patch
@@ -0,0 +1,24 @@
+--- a/bin/common/check_unique_constraint.py
++++ b/bin/common/check_unique_constraint.py
+@@ -1,4 +1,4 @@
+-#!/usr/bin/env python
++#!/usr/bin/python3
+
+ import argparse, collections, psycopg2, sys, tempfile
+
+--- a/bin/common/dump_partition.py
++++ b/bin/common/dump_partition.py
+@@ -1,4 +1,4 @@
+-#!/usr/bin/env python
++#!/usr/bin/python3
+
+ import argparse, hashlib, os, os.path, psycopg2, subprocess, sys
+
+--- a/bin/common/vacuum_maintenance.py
++++ b/bin/common/vacuum_maintenance.py
+@@ -1,4 +1,4 @@
+-#!/usr/bin/env python
++#!/usr/bin/python3
+
+ import argparse, psycopg2, sys
+
diff --git a/testing/postgresql-pg_variables/APKBUILD b/testing/postgresql-pg_variables/APKBUILD
new file mode 100644
index 00000000000..cb9d80d651c
--- /dev/null
+++ b/testing/postgresql-pg_variables/APKBUILD
@@ -0,0 +1,39 @@
+# Contributor: Jakub Jirutka <jakub@jirutka.cz>
+# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
+pkgname=postgresql-pg_variables
+pkgver=1.2.4_git20220909
+_gitrev=9f9466c2b9193133446851b1f4b2b5b192d8f0e0
+pkgrel=2
+pkgdesc="Session wide variables for PostgreSQL"
+url="https://github.com/postgrespro/pg_variables"
+arch="all"
+license="PostgreSQL"
+makedepends="postgresql-dev"
+subpackages="$pkgname-bitcode"
+source="https://github.com/postgrespro/pg_variables/archive/$_gitrev/$pkgname-$_gitrev.tar.gz"
+builddir="$srcdir/pg_variables-$_gitrev"
+options="!check" # tests require running PostgreSQL
+
+build() {
+ make USE_PGXS=1
+}
+
+package() {
+ _pgver=$(pg_config --major-version)
+ depends="postgresql$_pgver"
+
+ make USE_PGXS=1 DESTDIR="$pkgdir" install
+}
+
+bitcode() {
+ _pgver=$(pg_config --major-version)
+ pkgdesc="$pkgdesc (bitcode for JIT)"
+ depends="$pkgname=$pkgver-r$pkgrel"
+ install_if="postgresql$_pgver-jit $pkgname=$pkgver-r$pkgrel"
+
+ amove usr/lib/postgresql*/bitcode
+}
+
+sha512sums="
+277d76665e0be5dffd99cee8290ccf2be72246e7756ae456674633bbbd2ebfe79bf3d5f0a67b69dede460cdfb3fb43c000b6ca472ef5176138877628070e7539 postgresql-pg_variables-9f9466c2b9193133446851b1f4b2b5b192d8f0e0.tar.gz
+"
diff --git a/testing/postgresql-pgmq/APKBUILD b/testing/postgresql-pgmq/APKBUILD
new file mode 100644
index 00000000000..765f12aa8b6
--- /dev/null
+++ b/testing/postgresql-pgmq/APKBUILD
@@ -0,0 +1,68 @@
+# Contributor: Jakub Jirutka <jakub@jirutka.cz>
+# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
+pkgname=postgresql-pgmq
+pkgver=1.1.1
+pkgrel=0
+pkgdesc="A lightweight message queue, like AWS SQS and RSMQ, but on PostgreSQL"
+url="https://github.com/tembo-io/pgmq"
+arch="all"
+license="PostgreSQL"
+makedepends="
+ cargo
+ chrpath
+ jq
+ openssl-dev
+ postgresql
+ postgresql-dev
+ rustfmt
+ "
+source="https://github.com/tembo-io/pgmq/archive/v$pkgver/postgresql-pgmq-$pkgver.tar.gz
+ bump-pgrx.patch
+ "
+builddir="$srcdir/pgmq-$pkgver"
+# check: tests tries to write to /usr/lib/...
+# net: fetches crates in build phase
+options="!check net"
+
+export PGRX_HOME="$srcdir/.pgrx"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ local pgver="$(pg_config --major-version)"
+
+ # We must install it this way because cargo-pgrx and pgrx dependency
+ # versions in the project must be identical. :(
+ local pgrx_ver; pgrx_ver="$(cargo metadata --locked --format-version 1 \
+ | jq -r '.packages[] | select(.name == "pgrx") | .version')"
+ # Use dev profile to speed-up compilation.
+ cargo install --locked --profile dev --bins --root target/tools "cargo-pgrx@$pgrx_ver"
+
+ export PATH="$PWD/target/tools/bin:$PATH"
+
+ cargo pgrx init --pg$pgver="$(which pg_config)"
+
+ # TODO: Remove after https://github.com/pgcentralfoundation/pgrx/issues/1455 is resolved.
+ [ -n "$RUSTFLAGS" ] && export RUSTFLAGS="$(echo $RUSTFLAGS)" || unset RUSTFLAGS
+ cargo pgrx package --verbose --out-dir="target/release/dist"
+
+ # Remove RPATH.
+ # NOTE: CARGO_PROFILE_RELEASE_RPATH=false doesn't work here.
+ chrpath -d target/release/dist/usr/lib/postgresql*/*.so
+}
+
+package() {
+ depends="postgresql$(pg_config --major-version)"
+
+ mkdir -p "$pkgdir"
+ cp -r target/release/dist/* "$pkgdir"/
+}
+
+sha512sums="
+75e9472f0b5ef3d3b29f0ff04571acae9fa00a1210e49b3cd36710099607f9b4827d34764424f42cbb169351b88bb4d04afba53993e8c8862e83755d1ab1d304 postgresql-pgmq-1.1.1.tar.gz
+ce5161c08645cad6f5ef2623786654e7916eb14190b453affeb10c940aff7b98178a1b4d7ac99b2cff22fe589ced108f3261acc0fe8a9da160f18a7128b20775 bump-pgrx.patch
+"
diff --git a/testing/postgresql-pgmq/bump-pgrx.patch b/testing/postgresql-pgmq/bump-pgrx.patch
new file mode 100644
index 00000000000..8e8cef3627d
--- /dev/null
+++ b/testing/postgresql-pgmq/bump-pgrx.patch
@@ -0,0 +1,168 @@
+Patch-Source: https://github.com/tembo-io/pgmq/pull/188
+--
+From 0d7197eed345259336ff60fde9006533d8534c65 Mon Sep 17 00:00:00 2001
+From: Jakub Jirutka <jakub@jirutka.cz>
+Date: Sat, 27 Jan 2024 23:25:26 +0100
+Subject: [PATCH] Bump pgrx from 0.11.0 to 0.11.3
+
+---
+ Cargo.lock | 62 ++++++++++++++++++++++++++++++++++++++++--------------
+ 1 file changed, 46 insertions(+), 16 deletions(-)
+
+diff --git a/Cargo.lock b/Cargo.lock
+index bc00ead..7839bd4 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -145,9 +145,9 @@ checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b"
+
+ [[package]]
+ name = "bindgen"
+-version = "0.68.1"
++version = "0.69.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "726e4313eb6ec35d2730258ad4e15b547ee75d6afaa1361a922e78e59b7d8078"
++checksum = "a4c69fae65a523209d34240b60abe0c42d33d1045d445c0839d8a4894a736e2d"
+ dependencies = [
+ "bitflags 2.4.0",
+ "cexpr",
+@@ -1354,9 +1354,9 @@ dependencies = [
+
+ [[package]]
+ name = "pgrx"
+-version = "0.11.0"
++version = "0.11.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "bd3c4b36fbe84329b86c83bfd33b9514a50606f00074f47085f99062a7dd8c9c"
++checksum = "2102faa5ef4a7bf096fefcf67692b293583efd18f9236340ad3169807dfc2b73"
+ dependencies = [
+ "atomic-traits",
+ "bitflags 2.4.0",
+@@ -1379,9 +1379,9 @@ dependencies = [
+
+ [[package]]
+ name = "pgrx-macros"
+-version = "0.11.0"
++version = "0.11.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "9c6a41e021321a814fac1aa27bd4266208b4507709ecbc28fc99693adfbd0c41"
++checksum = "c26810d09910ec987a6708d48d243efb5f879331e01c6fec0893714d0eb12bae"
+ dependencies = [
+ "pgrx-sql-entity-graph",
+ "proc-macro2",
+@@ -1391,9 +1391,9 @@ dependencies = [
+
+ [[package]]
+ name = "pgrx-pg-config"
+-version = "0.11.0"
++version = "0.11.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "17da1e26800e747d501b8d8bb8aeee4530a07d93a39c3fb2c4229a8feff213b2"
++checksum = "0b0099ba4b635dfe1e34afc8bca8be43e9577c5d726aaf1dc7dd23a78f6c8a60"
+ dependencies = [
+ "cargo_toml",
+ "dirs",
+@@ -1409,11 +1409,12 @@ dependencies = [
+
+ [[package]]
+ name = "pgrx-pg-sys"
+-version = "0.11.0"
++version = "0.11.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "f9032b517525ec71579cc68e92905b5f5f63e892c094834202313c42f2f1a669"
++checksum = "3f40315259c41fede51eb23b791b48d0a112b0f47d0dcb6862b798d1fa1db6ea"
+ dependencies = [
+ "bindgen",
++ "clang-sys",
+ "eyre",
+ "libc",
+ "memoffset",
+@@ -1427,13 +1428,14 @@ dependencies = [
+ "shlex",
+ "sptr",
+ "syn 1.0.109",
++ "walkdir",
+ ]
+
+ [[package]]
+ name = "pgrx-sql-entity-graph"
+-version = "0.11.0"
++version = "0.11.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "2e4a88203974b887bca8bfdea17ab9936411fb7e84957763dc0124df78d07907"
++checksum = "7d47a4e991c8c66162c5d6b0fc2bd382e43a58fc893ce05a6a15ddcb1bf7eee4"
+ dependencies = [
+ "convert_case",
+ "eyre",
+@@ -1446,9 +1448,9 @@ dependencies = [
+
+ [[package]]
+ name = "pgrx-tests"
+-version = "0.11.0"
++version = "0.11.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "c80deb4310538e6ef14f4cbb30b56eb24b6d7aae66bfd4e516f153987159e65e"
++checksum = "ab3abc01e2bb930b072bd660d04c8eaa69a29d4727d5b2a641f946c603c1605e"
+ dependencies = [
+ "clap-cargo",
+ "eyre",
+@@ -1832,6 +1834,15 @@ version = "1.0.15"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741"
+
++[[package]]
++name = "same-file"
++version = "1.0.6"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502"
++dependencies = [
++ "winapi-util",
++]
++
+ [[package]]
+ name = "schannel"
+ version = "0.1.22"
+@@ -1980,9 +1991,9 @@ dependencies = [
+
+ [[package]]
+ name = "shlex"
+-version = "1.2.0"
++version = "1.3.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "a7cee0529a6d40f580e7a5e6c495c8fbfe21b7b52795ed4bb5e62cdf92bc6380"
++checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64"
+
+ [[package]]
+ name = "signature"
+@@ -2645,6 +2656,16 @@ dependencies = [
+ "libc",
+ ]
+
++[[package]]
++name = "walkdir"
++version = "2.4.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "d71d857dc86794ca4c280d616f7da00d2dbfd8cd788846559a6813e6aa4b54ee"
++dependencies = [
++ "same-file",
++ "winapi-util",
++]
++
+ [[package]]
+ name = "wasi"
+ version = "0.10.0+wasi-snapshot-preview1"
+@@ -2747,6 +2768,15 @@ version = "0.4.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
+
++[[package]]
++name = "winapi-util"
++version = "0.1.6"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f29e6f9198ba0d26b4c9f07dbe6f9ed633e1f3d5b8b414090084349e46a52596"
++dependencies = [
++ "winapi",
++]
++
+ [[package]]
+ name = "winapi-x86_64-pc-windows-gnu"
+ version = "0.4.0"
diff --git a/testing/postprocessd/APKBUILD b/testing/postprocessd/APKBUILD
deleted file mode 100644
index 04650cf9295..00000000000
--- a/testing/postprocessd/APKBUILD
+++ /dev/null
@@ -1,27 +0,0 @@
-# Contributor: Martijn Braam <martijn@brixit.nl>
-# Maintainer: Martijn Braam <martijn@brixit.nl>
-pkgname=postprocessd
-pkgver=0.1.2
-pkgrel=0
-pkgdesc="Queueing megapixels post-processor"
-url="https://git.sr.ht/~martijnbraam/postprocessd"
-arch="all !ppc64le !s390x" # No opencv
-license="GPL-3.0-only"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://git.sr.ht/~martijnbraam/postprocessd/archive/$pkgver.tar.gz"
-makedepends="meson libexif-dev libjpeg-turbo-dev tiff-dev opencv-dev libraw-dev scdoc"
-options="!check" # no testsuite
-
-build() {
- abuild-meson . output
- meson compile ${JOBS:+-j ${JOBS}} -C output
-}
-
-package() {
- DESTDIR="$pkgdir" meson install --no-rebuild -C output
-}
-
-
-sha512sums="
-96f3bbea2602dadc79c59a6b679e2c9fde54073fdcc67175fd9f83f7a192d891730dcf469dfa2cfea4d7195fbb117c60e55db7c7c259b3aa088f5bed47cd3e8e postprocessd-0.1.2.tar.gz
-"
diff --git a/testing/pounce/APKBUILD b/testing/pounce/APKBUILD
index 1c0b95a2cb8..76069dc5e4e 100644
--- a/testing/pounce/APKBUILD
+++ b/testing/pounce/APKBUILD
@@ -1,16 +1,23 @@
+# Contributor: ayushnix <ayush@ayushnix.com>
# Contributor: TBK <alpine@jjtc.eu>
# Maintainer: TBK <alpine@jjtc.eu>
pkgname=pounce
-pkgver=3.0
-pkgrel=2
+pkgver=3.1
+pkgrel=3
pkgdesc="Multi-client, TLS-only IRC bouncer"
arch="all"
url="https://git.causal.agency/pounce/"
license="GPL-3.0-or-later"
options="!check" # No test suite
makedepends="libretls-dev"
-subpackages="$pkgname-doc"
-source="https://git.causal.agency/pounce/snapshot/pounce-$pkgver.tar.gz"
+install="$pkgname.pre-install"
+subpackages="$pkgname-doc $pkgname-openrc"
+source="https://git.causal.agency/pounce/snapshot/pounce-$pkgver.tar.gz
+ pounce.confd
+ pounce.initd
+ calico.confd
+ calico.initd
+ pounce.pre-install"
build() {
./configure \
@@ -21,8 +28,17 @@ build() {
package() {
make DESTDIR="$pkgdir" install
+ install -Dm644 "$srcdir"/pounce.confd "$pkgdir"/etc/conf.d/pounce
+ install -Dm644 "$srcdir"/calico.confd "$pkgdir"/etc/conf.d/calico
+ install -Dm755 "$srcdir"/pounce.initd "$pkgdir"/etc/init.d/pounce
+ install -Dm755 "$srcdir"/calico.initd "$pkgdir"/etc/init.d/calico
}
sha512sums="
-76fce4820c877202720505a96d45394027d88f9755fe9a96fb69e305699022d61f8dba7db524b0bc5058b5f999bcd02b82904525d3284b34a29ffbe64c1c3bc0 pounce-3.0.tar.gz
+b2c2481e152368080e6ce9b3be2d7920eb4cac630dabb994e31170fb44977e2235c0ff30a7f08e826a329da69371a3ff2dae33831cb93b18655f98fc6569da7d pounce-3.1.tar.gz
+9f265d407b492a8cbc21455382ad0437605a2008a896f22a39c1d7606f437b5cc06b42a25f0115dc4142a1f43012a573a943ae120a124783b8f570967a7ae748 pounce.confd
+c341fd11cb59766f6a41bfdc0ce69d9c771ad26291ccdd6bace5225e2ced092fc9ecf9e1f533fe7901ab3be84edd8356a523c4736beb088325f99f7105ca9ba0 pounce.initd
+388f3a064705eb1e4d978e4e75e43c65342c6e3fdbc872cea0da120ea5d443598a2e5c5b574a17a2214056fdf00b3c3d103212650a958156db263d0c2830408f calico.confd
+9ad4d2b314e7ec33f353636cc57de0d609b472870cf500ddd6e222e458cbc3b93b221cc805df04b51ec41f80576e19c30b296671cea3eeab388af9a8ae6e5c5d calico.initd
+c4082bd08ee0124a10ddce240de62b8ef6e5ae85e939e856af7758ac43ef8edca3fd6e219823d6259848b59589f3db51de6d73735e4d5fcadf8c7be05d49a7bf pounce.pre-install
"
diff --git a/testing/pounce/calico.confd b/testing/pounce/calico.confd
new file mode 100644
index 00000000000..0c25fcfd1c2
--- /dev/null
+++ b/testing/pounce/calico.confd
@@ -0,0 +1,22 @@
+calico_user=pounce
+calico_group=pounce
+
+# the $calico_dir directory should be accessible to the $calico_user and the
+# $pounce_user in the respective pounce config file in /etc/conf.d/
+# the value of this variable should be equal to the value of the 'local-path'
+# configuration option in pounce configuration file(s)
+calico_dir=/run/pounce
+
+# the '-H' argument for calico
+# the hostname on which calico will listen on
+# calico_hostname=hostname.example.org
+
+# the '-P' argument for calico
+# read calico(1) for more details
+# calico_port=
+
+# the '-t' argument for calico
+# read calico(1) for more details
+# calico_timeout=
+
+supervisor=supervise-daemon
diff --git a/testing/pounce/calico.initd b/testing/pounce/calico.initd
new file mode 100644
index 00000000000..c2728cdc7fd
--- /dev/null
+++ b/testing/pounce/calico.initd
@@ -0,0 +1,21 @@
+#!/sbin/openrc-run
+
+: "${calico_user:=pounce}"
+: "${calico_group:=pounce}"
+: "${calico_hostname:=localhost}"
+: "${calico_dir:=/run/$calico_user}"
+
+name="calico"
+description="dispatch incoming TLS connections to pounce by SNI"
+command=/usr/bin/calico
+command_args="-H $calico_hostname $calico_dir"
+[ -n "$calico_port" ] && command_args="$command_args -P $calico_port"
+[ -n "$calico_timeout" ] && command_args="$command_args -t $calico_timeout"
+command_background=true
+command_user="${calico_user}:${calico_group}"
+pidfile="/run/${RC_SVCNAME}.pid"
+
+depend() {
+ need localmount net
+ use dns
+}
diff --git a/testing/pounce/pounce.confd b/testing/pounce/pounce.confd
new file mode 100644
index 00000000000..cdb61e01ad4
--- /dev/null
+++ b/testing/pounce/pounce.confd
@@ -0,0 +1,13 @@
+pounce_user=pounce
+pounce_group=pounce
+pounce_verbose=true
+
+# specify the location of the configuration file for an IRC network
+# pounce_config="/var/lib/pounce/.config/pounce/libera.conf"
+
+# if an initscript called pounce.libera is symlinked to the pounce initscript,
+# the default log file will be /var/log/pounce.libera.log
+# output_log=/var/log/pounce.log"
+# error_log=/var/log/pounce.log"
+
+supervisor=supervise-daemon
diff --git a/testing/pounce/pounce.initd b/testing/pounce/pounce.initd
new file mode 100644
index 00000000000..ca87a621f82
--- /dev/null
+++ b/testing/pounce/pounce.initd
@@ -0,0 +1,41 @@
+#!/sbin/openrc-run
+
+description="A multi-client, TLS-only IRC bouncer"
+
+: "${pounce_user:=pounce}"
+: "${pounce_group:=pounce}"
+: "${pounce_verbose:=false}"
+: "${output_log:=/var/log/${RC_SVCNAME}.log}"
+: "${error_log:=/var/log/${RC_SVCNAME}.log}"
+
+instance_name="${RC_SVCNAME#*.}"
+[ "$instance_name" != "pounce" ] \
+ && name="pounce ($instance_name)" \
+ || name="pounce"
+
+command=/usr/bin/pounce
+command_background="true"
+pidfile="/run/${RC_SVCNAME}.pid"
+command_user="${pounce_user}:${pounce_group}"
+
+if yesno "${pounce_verbose}"; then
+ command_args="-v $pounce_config"
+else
+ command_args="$pounce_config"
+fi
+
+depend() {
+ need localmount net
+ use dns
+}
+
+start_pre() {
+ [ -n "$output_log" ] && checkpath -q -f -m 0640 \
+ -o "$command_user" "$output_log"
+
+ [ -n "$error_log" ] && checkpath -q -f -m 0640 \
+ -o "$command_user" "$error_log"
+
+ [ -n "$pounce_config" ] && checkpath -q -f -m 0640 \
+ -o "$command_user" "$pounce_config"
+}
diff --git a/testing/pounce/pounce.pre-install b/testing/pounce/pounce.pre-install
new file mode 100644
index 00000000000..99dfa6c47a4
--- /dev/null
+++ b/testing/pounce/pounce.pre-install
@@ -0,0 +1,5 @@
+#!/bin/sh
+
+addgroup -S pounce 2> /dev/null
+adduser -S -D -H -h /var/lib/pounce -s /sbin/nologin -G pounce -g 'pounce irc bouncer' pounce 2> /dev/null
+exit 0
diff --git a/testing/powder-toy/APKBUILD b/testing/powder-toy/APKBUILD
index f69a0cd5a1b..5ded4fd3f74 100644
--- a/testing/powder-toy/APKBUILD
+++ b/testing/powder-toy/APKBUILD
@@ -1,22 +1,25 @@
# Contributor: Alex Denes <caskd@redxen.eu>
# Maintainer: Alex Denes <caskd@redxen.eu>
pkgname=powder-toy
-pkgver=96.2.350
+pkgver=97.0.352
pkgrel=0
pkgdesc="Desktop version of the classic falling sand physics sandbox, simulates air pressure, velocity & heat!"
url="http://powdertoy.co.uk/"
-arch="all !riscv64" # textrels
+# riscv64: textrels
+# ppc64le: luajit
+arch="all !ppc64le !riscv64"
license="GPL-3.0-only"
-_feature_http="true"
makedepends="
+ bzip2-dev
+ curl-dev
+ fftw-dev
+ jsoncpp-dev
+ libpng-dev
+ luajit-dev
meson
- cmake
sdl2-dev
- fftw-dev
- bzip2-dev
zlib-dev
"
-[ "$_feature_http" = "true" ] && makedepends="$makedepends curl-dev"
source="
$pkgname-$pkgver.tar.gz::https://github.com/The-Powder-Toy/The-Powder-Toy/archive/refs/tags/v$pkgver.tar.gz
"
@@ -25,11 +28,9 @@ builddir="$srcdir/The-Powder-Toy-$pkgver"
build() {
abuild-meson \
- -Dstatic=system \
- -Dhttp="$_feature_http" \
- -Dlua=none \
- build
- meson compile ${JOBS:+-j ${JOBS}} -C build
+ -Db_lto=true \
+ . build
+ meson compile -v -C build
}
package() {
@@ -38,5 +39,5 @@ package() {
}
sha512sums="
-566def511fc77531ddf202c7660a9f78bd1371f5d361aadbc68c664b2d6425865a30ef611785db22472378905acf47c168a2692f3d79f864534d17a2667ec425 powder-toy-96.2.350.tar.gz
+001905b659efc4b4563f1918a3ae83ccc6f3727b26156a189191573e78548b8b7966b73423cf98f0fc8ddf5e77b32364bddc6566196b7bf7e9f88f2189947ed4 powder-toy-97.0.352.tar.gz
"
diff --git a/testing/power-profiles-daemon/0001-dbus-no-systemd.patch b/testing/power-profiles-daemon/0001-dbus-no-systemd.patch
new file mode 100644
index 00000000000..6e63d4b54f3
--- /dev/null
+++ b/testing/power-profiles-daemon/0001-dbus-no-systemd.patch
@@ -0,0 +1,13 @@
+diff --git a/data/power-profiles-daemon.dbus.service.in b/data/power-profiles-daemon.dbus.service.in
+index 5baefa1..9d0043d 100644
+--- a/data/power-profiles-daemon.dbus.service.in
++++ b/data/power-profiles-daemon.dbus.service.in
+@@ -6,6 +6,6 @@
+
+ [D-BUS Service]
+ Name=@dbus_name@
+-Exec=/bin/false
++Exec=/usr/libexec/power-profiles-daemon
+ User=root
+ SystemdService=power-profiles-daemon.service
+
diff --git a/testing/power-profiles-daemon/APKBUILD b/testing/power-profiles-daemon/APKBUILD
new file mode 100644
index 00000000000..88a2a6f4a7b
--- /dev/null
+++ b/testing/power-profiles-daemon/APKBUILD
@@ -0,0 +1,48 @@
+# Maintainer: Cedric Bellegarde <cedric.bellegarde@adishatz.org>
+pkgname=power-profiles-daemon
+pkgver=0.20
+pkgrel=1
+pkgdesc="Makes power profiles handling available over D-Bus"
+url="https://gitlab.freedesktop.org/upower/power-profiles-daemon"
+arch="all"
+license="GPL-3.0-or-later"
+depends="
+ glib
+ py3-gobject3
+ "
+makedepends="
+ glib-dev
+ libgudev-dev
+ meson
+ polkit-dev
+ upower-dev
+ "
+checkdepends="
+ py3-dbusmock
+ umockdev
+ "
+source="https://gitlab.freedesktop.org/upower/power-profiles-daemon/-/archive/$pkgver/power-profiles-daemon-$pkgver.tar.gz
+ 0001-dbus-no-systemd.patch
+ "
+
+build() {
+ abuild-meson \
+ -Db_lto=true \
+ -Dsystemdsystemunitdir="" \
+ -Dtests="$(want_check && echo true || echo false)" \
+ . output
+ meson compile -C output
+}
+
+check() {
+ meson test --no-rebuild --print-errorlogs -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+sha512sums="
+b3e7f91aa68feec3c38b32b301401a9c9afe46badaf83e59cc73fe5d2aa5ea87a66d4584977b1f0de94b0283381183a6b755096be2156169c6b4a09149295d68 power-profiles-daemon-0.20.tar.gz
+62dcec5d54b9014d16ec74448782beee656d4736c24e69c6a2111c92f895ee6869311e4f7e72a679226485374db14274d6e2ad54e62103b29c3301d6840d8891 0001-dbus-no-systemd.patch
+"
diff --git a/testing/powerctl/APKBUILD b/testing/powerctl/APKBUILD
new file mode 100644
index 00000000000..2a27e9aa7db
--- /dev/null
+++ b/testing/powerctl/APKBUILD
@@ -0,0 +1,32 @@
+# Maintainer: Pedro Lucas Porcellis <porcellis@eletrotupi.com>
+pkgname=powerctl
+pkgver=1.1
+pkgrel=5
+pkgdesc="CLI tool to manage Linux power management states"
+url="https://sr.ht/~sircmpwn/powerctl/"
+arch="x86_64 aarch64 riscv64" # Hare
+license="GPL-3.0-only"
+makedepends="hare scdoc"
+subpackages="$pkgname-doc"
+source="
+ $pkgname-$pkgver.tar.gz::https://git.sr.ht/~sircmpwn/powerctl/archive/$pkgver.tar.gz
+ new-hare-strings.patch
+ getopts-fs-flags.patch
+"
+install="$pkgname.post-install"
+# Hare does not support PIE
+options="$options !check suid"
+
+build() {
+ make -j1 PREFIX=/usr
+}
+
+package() {
+ make DESTDIR="$pkgdir" PREFIX=/usr install
+}
+
+sha512sums="
+02fec6e8bab802cbb7436cb1ea378cba2ddf84ac1dc129f10ccb5ccad91f5d44d56373871ff14b23cc81eddf22abfdc2f92c87baece94fbba7aaf91f1654dc1a powerctl-1.1.tar.gz
+123c185190a1b8cd96d4d4edb6d3e5101f4884cbf2f83fc00bc3218bccc101733c1068e77579c942f5acb3e5573071257b76d38b1594d066def3c1c2febb9b2d new-hare-strings.patch
+db6c2331256aca10908cc43cc08f17ca45c3a6f4966315a95ba99652ff09d8d62f632312e8c3b985fd95eb96509efbce45e89fe10a8f9f279bde509c4d9bc31d getopts-fs-flags.patch
+"
diff --git a/testing/powerctl/getopts-fs-flags.patch b/testing/powerctl/getopts-fs-flags.patch
new file mode 100644
index 00000000000..847c39314cd
--- /dev/null
+++ b/testing/powerctl/getopts-fs-flags.patch
@@ -0,0 +1,79 @@
+From: Pedro Lucas Porcellis <porcellis@eletrotupi.com>
+Subject: [PATCH] Fix getopts and fs::flag to match latest Hare changes
+Date: Fri, 15 Sep 2023 15:36:19 -0300
+MIME-Version: 1.0
+Content-Transfer-Encoding: 8bit
+
+---
+It would be nice if you could release a new version containing
+these fixes, so I could package downstream.
+
+ main.ha | 10 +++++-----
+ sysfs.ha | 2 +-
+ 2 files changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/main.ha b/main.ha
+index 9e80e9a..0a59752 100644
+--- a/main.ha
++++ b/main.ha
+@@ -44,7 +44,7 @@ export fn main() void = {
+
+ if (op == operation::QUERY) {
+ if (len(cmd.args) != 0) {
+- getopt::printhelp(os::stderr, "powerctl", help...);
++ getopt::printhelp(os::stderr, "powerctl", help...)!;
+ os::exit(1);
+ };
+
+@@ -64,7 +64,7 @@ export fn main() void = {
+ };
+
+ if (len(cmd.args) != 1) {
+- getopt::printhelp(os::stderr, "powerctl", help...);
++ getopt::printhelp(os::stderr, "powerctl", help...)!;
+ os::exit(1);
+ };
+
+@@ -76,7 +76,7 @@ export fn main() void = {
+ case let state: disk_state =>
+ yield state;
+ case errors::invalid =>
+- getopt::printhelp(os::stderr, "powerctl", help...);
++ getopt::printhelp(os::stderr, "powerctl", help...)!;
+ os::exit(1);
+ };
+ const result = set_disk_state(state);
+@@ -95,7 +95,7 @@ export fn main() void = {
+ case let state: mem_state =>
+ yield state;
+ case errors::invalid =>
+- getopt::printhelp(os::stderr, "powerctl", help...);
++ getopt::printhelp(os::stderr, "powerctl", help...)!;
+ os::exit(1);
+ };
+ const result = set_mem_state(state);
+@@ -105,7 +105,7 @@ export fn main() void = {
+ case let state: sleep_state =>
+ yield state;
+ case errors::invalid =>
+- getopt::printhelp(os::stderr, "powerctl", help...);
++ getopt::printhelp(os::stderr, "powerctl", help...)!;
+ os::exit(1);
+ };
+ const result = set_sleep_state(state);
+diff --git a/sysfs.ha b/sysfs.ha
+index 3473086..df7f373 100644
+--- a/sysfs.ha
++++ b/sysfs.ha
+@@ -46,7 +46,7 @@ fn read_states(path: str) (strings::tokenizer | fs::error | io::error) = {
+ };
+
+ fn write_sysfs_file(path: str, content: str) (void | fs::error | io::error) = {
+- const file = os::open(path, fs::flags::WRONLY | fs::flags::TRUNC)?;
++ const file = os::open(path, fs::flag::WRONLY | fs::flag::TRUNC)?;
+ defer io::close(file)!;
+ io::write(file, strings::toutf8(content))?;
+ };
+--
+2.42.0
+
diff --git a/testing/powerctl/new-hare-strings.patch b/testing/powerctl/new-hare-strings.patch
new file mode 100644
index 00000000000..9fdcb4dd919
--- /dev/null
+++ b/testing/powerctl/new-hare-strings.patch
@@ -0,0 +1,37 @@
+Patch-Source: https://git.sr.ht/~sircmpwn/powerctl/commit/1c30fc759f5999718e810e69e7d05658030c1373
+--
+From 1c30fc759f5999718e810e69e7d05658030c1373 Mon Sep 17 00:00:00 2001
+From: Carlos Une <une@fastmail.fm>
+Date: Sun, 16 Oct 2022 00:12:02 -0300
+Subject: [PATCH] Fix build with Hare ^HEAD
+
+Signed-off-by: Carlos Une <une@fastmail.fm>
+---
+ sysfs.ha | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/sysfs.ha b/sysfs.ha
+index 5cf9591..3473086 100644
+--- a/sysfs.ha
++++ b/sysfs.ha
+@@ -41,7 +41,7 @@ fn read_states(path: str) (strings::tokenizer | fs::error | io::error) = {
+ case =>
+ abort("Unexpected EOF from sysfs");
+ };
+- const string = strings::rtrim(strings::fromutf8(buf[..z]), '\n');
++ const string = strings::rtrim(strings::fromutf8(buf[..z])!, '\n');
+ return strings::tokenize(string, " ");
+ };
+
+@@ -255,7 +255,7 @@ fn read_image_size() (size | fs::error | io::error) = {
+ abort("Unexpected EOF from /sys/power/image_size");
+ };
+
+- const val = strings::rtrim(strings::fromutf8(buf[..z]), '\n');
++ const val = strings::rtrim(strings::fromutf8(buf[..z])!, '\n');
+ match (strconv::stoz(val)) {
+ case let z: size =>
+ return z;
+--
+2.38.4
+
diff --git a/testing/powerctl/powerctl.post-install b/testing/powerctl/powerctl.post-install
new file mode 100644
index 00000000000..81f75c5d6a8
--- /dev/null
+++ b/testing/powerctl/powerctl.post-install
@@ -0,0 +1,2 @@
+#!/bin/sh
+addgroup -S power || true
diff --git a/testing/powermanga/APKBUILD b/testing/powermanga/APKBUILD
deleted file mode 100644
index 7fc39d9f9cc..00000000000
--- a/testing/powermanga/APKBUILD
+++ /dev/null
@@ -1,44 +0,0 @@
-# Contributor: David Demelier <markand@malikania.fr>
-# Maintainer: David Demelier <markand@malikania.fr>
-pkgname=powermanga
-pkgver=0.93.1
-pkgrel=0
-pkgdesc="arcade 2D shoot-them-up game"
-url="http://linux.tlk.fr/games/Powermanga"
-arch="all !x86" # Does not build.
-license="GPL-3.0-only"
-depends="libmikmod"
-makedepends="autoconf automake libpng-dev libtool sdl_mixer-dev"
-subpackages="$pkgname-doc"
-source="http://linux.tlk.fr/games/Powermanga/download/powermanga-$pkgver.tgz"
-options="suid" # For game save files.
-
-prepare() {
- default_prepare
- autoreconf -vif
-}
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- mv "$pkgdir"/usr/games "$pkgdir"/usr/bin
-
- install -Dm644 images_for_menu_entry/powermanga_48x48.png "$pkgdir"/usr/share/pixmaps/$pkgname.png
- install -Dm644 $pkgname.desktop "$pkgdir"/usr/share/applications/$pkgname.desktop
-}
-
-sha512sums="852c0b4550db6c9e4ecd380077d390327f6649b6e8ab4cad246f23e7335e8622008f9fc753e2f474bf9cf7a5654b071e3f117f6a2b5be72ea53709912f4a0f41 powermanga-0.93.1.tgz"
diff --git a/testing/powerstat/0001-strlcpy-no-static.patch b/testing/powerstat/0001-strlcpy-no-static.patch
deleted file mode 100644
index e3377933c31..00000000000
--- a/testing/powerstat/0001-strlcpy-no-static.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-Author: ptrcnull <git@ptrcnull.me>
-Date: Sun Feb 6 08:51:27 2022 +0100
-
- Remove "static" from strlcpy
-
- powerstat.c:339:15: error: static declaration of 'strlcpy' follows non-static declaration
-
-diff --git a/powerstat.c b/powerstat.c
-index cf5fc6e..7d03f66 100644
---- a/powerstat.c
-+++ b/powerstat.c
-@@ -336,7 +336,7 @@ static const int signals[] = {
- * strlcpy()
- * BSD strlcpy
- */
--static size_t strlcpy(char *dst, const char *src, size_t len)
-+size_t strlcpy(char *dst, const char *src, size_t len)
- {
- char *d = dst;
- const char *s = src;
diff --git a/testing/powerstat/APKBUILD b/testing/powerstat/APKBUILD
index fea019b34d4..a8c4e6d4bbc 100644
--- a/testing/powerstat/APKBUILD
+++ b/testing/powerstat/APKBUILD
@@ -1,17 +1,15 @@
# Contributor: Niklas Cathor <niklas.cathor@gmx.de>
# Maintainer: Niklas Cathor <niklas.cathor@gmx.de>
pkgname=powerstat
-pkgver=0.02.27
+pkgver=0.04.01
pkgrel=0
-pkgdesc="tool to measure power consumption"
+pkgdesc="Measures power consumption via ACPI battery data"
url="https://github.com/ColinIanKing/powerstat"
arch="all"
license="GPL-2.0-only"
depends="linux-headers"
subpackages="$pkgname-doc $pkgname-bash-completion"
-source="https://github.com/ColinIanKing/powerstat/archive/V$pkgver/powerstat-$pkgver.tar.gz
- 0001-strlcpy-no-static.patch
- "
+source="https://github.com/ColinIanKing/powerstat/archive/V$pkgver/powerstat-$pkgver.tar.gz"
options="!check" # no tests
build() {
@@ -21,7 +19,7 @@ build() {
package() {
make install DESTDIR="$pkgdir"
}
+
sha512sums="
-3bbab9ed88000b277d75f94d9d3e180944d6c8619cf5e7e8b783c9d303fadde47fe9347e93ac7f54c52687afb456bc26c590712486f589602f93058cd144922f powerstat-0.02.27.tar.gz
-38b61eaf84d6551f8f88541b6be011eec473b1c10634a6b9c67aeb38484bb6379a44ded595272d2879ff0eb8b5da72724b6677a4390821ddc66f5e6897c74213 0001-strlcpy-no-static.patch
+83d6381fc311968466a02bf578c279e48796bf53120c2583dfcbed2f3ee3deef21771a1d0ecfcc6774b7cc068a9657d624bc5f23ba2eaf7dbfd539b1c60cf201 powerstat-0.04.01.tar.gz
"
diff --git a/testing/powersupply/APKBUILD b/testing/powersupply/APKBUILD
new file mode 100644
index 00000000000..0707d54f41b
--- /dev/null
+++ b/testing/powersupply/APKBUILD
@@ -0,0 +1,33 @@
+# Maintainer: Martijn Braam <martijn@brixit.nl>
+pkgname=powersupply
+pkgver=0.9.0
+pkgrel=0
+pkgdesc="GTK3 app to display power status of phones"
+url="https://gitlab.com/MartijnBraam/powersupply"
+arch="noarch"
+license="MIT"
+source="https://gitlab.com/MartijnBraam/powersupply/-/archive/$pkgver/powersupply-$pkgver.tar.gz"
+depends="
+ gtk+3.0
+ libhandy1
+ py3-gobject3
+ python3
+ "
+makedepends="
+ libhandy1-dev
+ meson
+ "
+options="!check" # There's no testsuite
+
+build() {
+ abuild-meson . output
+ meson compile -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+sha512sums="
+0fc4d71a8d3be0208b6a9e08472bf154ab1ef7d832f7e4ffb093ad20744f2cf1fcdf06c26a627618867839d67480d21254df216229fc8eca65845b415bac85ec powersupply-0.9.0.tar.gz
+"
diff --git a/testing/ppl/APKBUILD b/testing/ppl/APKBUILD
new file mode 100644
index 00000000000..ad6ea7c4a1f
--- /dev/null
+++ b/testing/ppl/APKBUILD
@@ -0,0 +1,57 @@
+# Maintainer: Cormac Stephenson <c7s@kasku.net>
+pkgname=ppl
+pkgver=1.2
+pkgrel=1
+pkgdesc="Parma Polyhedra Library"
+url="https://www.bugseng.com/ppl"
+# ppc64le: fails tests
+arch="all !ppc64le"
+license="GPL-3.0-or-later"
+subpackages="
+ $pkgname-dev
+ $pkgname-doc
+ libppl
+ libppl_c
+ "
+makedepends="gmp-dev m4"
+source="https://bugseng.com/products/ppl/download/ftp/releases/$pkgver/ppl-$pkgver.tar.xz
+ gcc13.patch
+ "
+
+build() {
+ CFLAGS="$CFLAGS -O2" \
+ CXXFLAGS="$CXXFLAGS -O2" \
+ ./configure \
+ --build="$CBUILD" \
+ --host="$CHOST" \
+ --prefix=/usr \
+ --disable-static \
+ --enable-interfaces="c,cxx"
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+libppl() {
+ amove usr/lib/libppl.so.*
+}
+
+libppl_c() {
+ amove usr/lib/libppl_c.so.*
+}
+
+doc() {
+ default_doc
+ license="GFDL-1.2-only"
+}
+
+sha512sums="
+b509ed85fa6aedd40119bd4c980b17f33072c56c2acd923da3445b6bc80d48051cfa4c04cce96f6974711f5279c24b31cb3869f87b2eb6a2a1b30a058c809350 ppl-1.2.tar.xz
+e9ca1b4217257c58e7a23055ffbd683ff5572112f551fedf6f81104469aedb67198c5fe03fe50f01ec9a30d737effe07e034c46282677fd824c02fb3b88c4206 gcc13.patch
+"
diff --git a/testing/ppl/gcc13.patch b/testing/ppl/gcc13.patch
new file mode 100644
index 00000000000..6309124477d
--- /dev/null
+++ b/testing/ppl/gcc13.patch
@@ -0,0 +1,12 @@
+diff --git a/src/ppl-config.cc.in b/src/ppl-config.cc.in
+index ffaf352..954a5fe 100644
+--- a/src/ppl-config.cc.in
++++ b/src/ppl-config.cc.in
+@@ -33,6 +33,7 @@ namespace PPL = Parma_Polyhedra_Library;
+ #error "PPL version 0.8 or following is required"
+ #endif
+
++#include <cassert>
+ #include <cstdarg>
+ #include <cstring>
+ #include <cctype>
diff --git a/testing/ppsspp/APKBUILD b/testing/ppsspp/APKBUILD
deleted file mode 100644
index 3186d3dd4c9..00000000000
--- a/testing/ppsspp/APKBUILD
+++ /dev/null
@@ -1,83 +0,0 @@
-# Contributor: Díaz Urbaneja Diego <sodomon2@gmail.com>
-# Maintainer: Díaz Urbaneja Diego <sodomon2@gmail.com>
-pkgname=ppsspp
-pkgver=1.12.3
-pkgrel=1
-pkgdesc="PPSSPP - a fast and portable PSP emulator"
-url="https://www.ppsspp.org/"
-arch="x86 x86_64 ppc64le" # other arches fail to build
-_armips_commit="7885552b208493a6a0f21663770c446c3ba65576"
-_discord_commit="3d3ae7129d17643bc706da0a2eea85aafd10ab3a"
-_glslang_commit="dc11adde23c455a24e13dd54de9b4ede8bdd7db8"
-_spirv_cross_commit="9acb9ec31f5a8ef80ea6b994bb77be787b08d3d1"
-_rapidjson_commit="73063f5002612c6bf64fe24f851cd5cc0d83eef9"
-_miniupnp_commit="3a87be33e797ba947b2b2a5f8d087f6c3ff4d93e"
-license="GPL-2.0-only"
-makedepends="
- cmake
- ffmpeg4-dev
- glew-dev
- libzip-dev
- mesa-dev
- python3
- qt5-qtbase-dev
- qt5-qtmultimedia-dev
- samurai
- sdl2-dev
- snappy-dev
- zlib-dev
- zstd-dev
- "
-source="ppsspp-$pkgver.tar.gz::https://github.com/hrydgard/ppsspp/archive/v$pkgver.tar.gz
- ppsspp-$pkgver-armips.tar.gz::https://github.com/Kingcom/armips/archive/$_armips_commit.tar.gz
- ppsspp-$pkgver-discord-rpc.tar.gz::https://github.com/discordapp/discord-rpc/archive/$_discord_commit.tar.gz
- ppsspp-$pkgver-glslang.tar.gz::https://github.com/hrydgard/glslang/archive/$_glslang_commit.tar.gz
- ppsspp-$pkgver-SPIRV-Cross.tar.gz::https://github.com/KhronosGroup/SPIRV-Cross/archive/$_spirv_cross_commit.tar.gz
- ppsspp-$pkgver-rapidjson.tar.gz::https://github.com/Tencent/rapidjson/archive/$_rapidjson_commit.tar.gz
- ppsspp-$pkgver-miniupnp.tar.gz::https://github.com/hrydgard/miniupnp/archive/$_miniupnp_commit.tar.gz
- ppsspp-version.patch
- system-zstd.patch
- "
-options="!check" # make check not implemented
-
-prepare() {
- default_prepare
- # adding submodules needed by ppsspp
- mv "$srcdir/"armips-$_armips_commit/* "$builddir"/ext/armips/
- mv "$srcdir/"discord-rpc-$_discord_commit/* "$builddir"/ext/discord-rpc/
- mv "$srcdir/"glslang-$_glslang_commit/* "$builddir"/ext/glslang/
- mv "$srcdir/"rapidjson-$_rapidjson_commit/* "$builddir"/ext/rapidjson/
- mv "$srcdir/"SPIRV-Cross-$_spirv_cross_commit/* "$builddir"/ext/SPIRV-Cross/
- mv "$srcdir/"miniupnp-$_miniupnp_commit/* "$builddir"/ext/miniupnp/
-}
-
-build() {
- cmake -B build-qt -G Ninja \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_BUILD_TYPE=Release \
- -DUSE_SYSTEM_FFMPEG=ON \
- -DUSE_SYSTEM_LIBPNG=ON \
- -DUSE_SYSTEM_LIBSDL2=ON \
- -DUSE_SYSTEM_LIBZIP=ON \
- -DUSE_SYSTEM_SNAPPY=ON \
- -DUSE_SYSTEM_ZSTD=ON \
- -DUSING_QT_UI=ON
- cmake --build build-qt
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build-qt
-}
-
-
-sha512sums="
-fe5f5b150cc06ecca68c592fa19396d9a6e573c67da9be0ba98a3db975b0efcb6de694ac224543beaea2a3eb4952d45459e850d6c2f0fe6668536325dd449d38 ppsspp-1.12.3.tar.gz
-2a94e2c7b7280c00a39c8fc92d81ed15fc4b3270a124ef882e3cd8878db6ec827aefa06b0e646a60916636a95e4ebfa886e9878ba70c6bcfcd048def457368be ppsspp-1.12.3-armips.tar.gz
-17fb5de5d5afea9b7e0cdc116d5e3611b147eb2cde3a295a1a4ceb688bceb93d54feb2e479d511ce39d53a1380462a75dcdf6be9ddc2cece9d44b7f8ff7504af ppsspp-1.12.3-discord-rpc.tar.gz
-39b7fd1332dc2f6e29c920961e2a48a33cb7fb36753a0ee5ea8897cb2ad11cec67808ec671cd1bdecbb03eb17f4e83a711013bb20a8cc0831879eb9fbe432bcd ppsspp-1.12.3-glslang.tar.gz
-be77131814691dfbe65de3a2d3ea65de98c7169824997056637bbce39485327ff0f64e7eed8588237615948824e1f9dff1d083472b8cbccd3748a52379411e4e ppsspp-1.12.3-SPIRV-Cross.tar.gz
-3472e129e710bf5343b8b27a61581a1480c8096493e466440b62702d8b5353745d561931f72b5405a736ad92525be3843ea1cf4b5ea5839721cc6d6b358f19bc ppsspp-1.12.3-rapidjson.tar.gz
-f86f558699e75e7f8a58bbb5e94c2a32d703432cef05ffeac0da129113a1fe485cc5ad43b1fcfda11ee1ee398fa434511eccc37633eb5d3dfe8af864097669de ppsspp-1.12.3-miniupnp.tar.gz
-8603418a1003f29b6bf35bf74da08939ff5fab71fa18d94aadb254ac3ceee793f16ee5c815d1cea018bb522281d102c78318046baefeee18ff595da509267970 ppsspp-version.patch
-db35533cc5700905b597a5fea9add06608e4f393ea52ab3eac68be48254d299f43aa881e3767c253ba21bd3f043826aab7ff0495a67ef7587b300aa387a03f37 system-zstd.patch
-"
diff --git a/testing/ppsspp/ppsspp-version.patch b/testing/ppsspp/ppsspp-version.patch
deleted file mode 100644
index c67bb1a6920..00000000000
--- a/testing/ppsspp/ppsspp-version.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-I add the current version to ppsspp as the default is unknown
-
---- a/git-version.cmake
-+++ b/git-version.cmake
-@@ -1,5 +1,5 @@
- set(GIT_VERSION_FILE "${SOURCE_DIR}/git-version.cpp")
--set(GIT_VERSION "unknown")
-+set(GIT_VERSION "v1.12.3")
- set(GIT_VERSION_UPDATE "1")
-
- find_package(Git)
diff --git a/testing/ppsspp/system-zstd.patch b/testing/ppsspp/system-zstd.patch
deleted file mode 100644
index 176370be6b6..00000000000
--- a/testing/ppsspp/system-zstd.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-Patch-Source: https://github.com/archlinux/svntogit-community/blob/300f36460d1b94f4378d7676dc420dfe7d78959f/trunk/ppsspp-system-zstd.patch
-diff '--color=auto' -rupN libretro-ppsspp.orig/CMakeLists.txt libretro-ppsspp/CMakeLists.txt
---- libretro-ppsspp.orig/CMakeLists.txt 2021-10-01 17:28:30.046655852 +0200
-+++ libretro-ppsspp/CMakeLists.txt 2021-10-01 17:30:38.698699237 +0200
-@@ -151,6 +151,7 @@ option(USE_MINIUPNPC "Build with miniUPn
- option(USE_SYSTEM_SNAPPY "Dynamically link against system snappy" ${USE_SYSTEM_SNAPPY})
- option(USE_SYSTEM_FFMPEG "Dynamically link against system FFMPEG" ${USE_SYSTEM_FFMPEG})
- option(USE_SYSTEM_LIBZIP "Dynamically link against system libzip" ${USE_SYSTEM_LIBZIP})
-+option(USE_SYSTEM_ZSTD "Dynamically link against system zstd" ${USE_SYSTEM_ZSTD})
- option(USE_SYSTEM_LIBSDL2 "Dynamically link against system SDL2" ON)
- option(USE_SYSTEM_LIBPNG "Dynamically link against system libpng" ON)
- option(USE_ASAN "Use address sanitizer" OFF)
-@@ -1976,8 +1977,20 @@ if(ANDROID)
- endif()
- endif()
-
--set(CoreExtraLibs ${CoreExtraLibs} armips libzstd_static)
--include_directories(ext/zstd/lib)
-+set(CoreExtraLibs ${CoreExtraLibs} armips)
-+
-+find_package(PkgConfig)
-+if(PKG_CONFIG_FOUND)
-+ pkg_check_modules(ZSTD libzstd)
-+endif()
-+if(ZSTD_FOUND AND USE_SYSTEM_ZSTD)
-+ include_directories(${ZSTD_INCLUDE_DIRS})
-+ target_link_libraries(${CoreLibName} ${ZSTD_LIBRARIES})
-+else()
-+ add_subdirectory(ext/zstd/build/cmake EXCLUDE_FROM_ALL)
-+ include_directories(ext/zstd/lib)
-+ set(CoreExtraLibs ${CoreExtraLibs} libzstd_static)
-+endif()
-
- # needed for VK_USE_PLATFORM_XCB_KHR only
- #if(VULKAN AND NOT WIN32)
-diff '--color=auto' -rupN libretro-ppsspp.orig/ext/CMakeLists.txt libretro-ppsspp/ext/CMakeLists.txt
---- libretro-ppsspp.orig/ext/CMakeLists.txt 2021-10-01 17:28:30.136664237 +0200
-+++ libretro-ppsspp/ext/CMakeLists.txt 2021-10-01 17:30:45.282654341 +0200
-@@ -22,4 +22,3 @@ add_subdirectory(SPIRV-Cross-build)
- if(USE_DISCORD AND NOT IOS AND NOT LIBRETRO)
- add_subdirectory(discord-rpc-build)
- endif()
--add_subdirectory(zstd/build/cmake EXCLUDE_FROM_ALL)
diff --git a/testing/pptpclient/APKBUILD b/testing/pptpclient/APKBUILD
index b63e6825ce2..c39b38e2a1f 100644
--- a/testing/pptpclient/APKBUILD
+++ b/testing/pptpclient/APKBUILD
@@ -2,9 +2,9 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=pptpclient
pkgver=1.10.0
-pkgrel=2
+pkgrel=4
pkgdesc="Client for the proprietary Microsoft Point-to-Point Tunneling Protocol, PPTP."
-url="http://pptpclient.sourceforge.net/"
+url="https://pptpclient.sourceforge.net/"
arch="all"
license="GPL-2.0-or-later"
depends="ppp-daemon iproute2"
diff --git a/testing/pqiv/APKBUILD b/testing/pqiv/APKBUILD
index 7ac12bce168..caeda49a44c 100644
--- a/testing/pqiv/APKBUILD
+++ b/testing/pqiv/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Sascha Paunovic <azarus@posteo.net>
pkgname=pqiv
pkgver=2.12
-pkgrel=0
+pkgrel=1
pkgdesc="powerful image viewer with minimal UI"
url="http://www.pberndt.com/Programme/Linux/pqiv/index.html"
arch="all"
diff --git a/testing/pre-commit/APKBUILD b/testing/pre-commit/APKBUILD
deleted file mode 100644
index d8387a5ab5b..00000000000
--- a/testing/pre-commit/APKBUILD
+++ /dev/null
@@ -1,71 +0,0 @@
-# Contributor: Galen Abell <galen@galenabell.com>
-# Maintainer: Galen Abell <galen@galenabell.com>
-pkgname=pre-commit
-pkgver=2.19.0
-pkgrel=0
-pkgdesc="framework for managing and maintaining multi-language pre-commit hooks"
-url="https://pre-commit.com"
-arch="noarch"
-license="MIT"
-depends="
- python3
- py3-cfgv
- py3-identify
- py3-nodeenv
- py3-yaml
- py3-toml
- py3-virtualenv
- py3-platformdirs
- "
-makedepends="py3-setuptools"
-checkdepends="
- py3-pytest
- py3-pytest-env
- py3-re-assert
- py3-distlib
- ruby
- npm
- git
- "
-options="net"
-source="$pkgname-$pkgver.tar.gz::https://github.com/pre-commit/pre-commit/archive/refs/tags/v$pkgver.tar.gz
- fix-importlib-metadata.patch
- "
-
-prepare() {
- default_prepare
- sed -i "s|%%PKGVER%%|'$pkgver'|g" pre_commit/constants.py
-}
-
-build() {
- python3 setup.py build
-}
-
-check() {
- export PYTHONPATH="."
-
- # setup for some of the integration tests
- git init
- git config user.email "test@alpinelinux.org"
- git config user.name "Alpine Linux"
- export GIT_AUTHOR_NAME="Alpine Linux"
- export GIT_COMMITTER_NAME="Alpine Linux"
- export GIT_AUTHOR_EMAIL="test@alpinelinux.org"
- export GIT_COMMITTER_EMAIL="test@alpinelinux.org"
- export PRE_COMMIT_NO_CONCURRENCY=1
-
- # skip some of the tests since they depend on non-packaged tools
- PYTHONPATH="$PWD"/build/lib pytest -v \
- --ignore tests/repository_test.py \
- --deselect tests/languages/ruby_test.py::test_install_ruby_with_version \
- --deselect tests/commands/install_uninstall_test.py::test_installed_from_venv
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-9cc28c5e9ce4be87e09e7be01138c35bbe954efb6c1400e92b1a6b5f50e426b59d74651802359015840d5ec4a5583bf8f579bf7f08eb778d5950c8c8dfe4c80c pre-commit-2.19.0.tar.gz
-6c4ef9d9dff0a6b0edbba254d026112a3e269930f145399d29bb48c18a4e1fcca8c7e9125541c1bb9cfc7e5fc8c484c0de4b143f4ab8b29b1098ecc3197602da fix-importlib-metadata.patch
-"
diff --git a/testing/pre-commit/fix-importlib-metadata.patch b/testing/pre-commit/fix-importlib-metadata.patch
deleted file mode 100644
index 14af5c3a3b6..00000000000
--- a/testing/pre-commit/fix-importlib-metadata.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-diff --git i/pre_commit/constants.py w/pre_commit/constants.py
-index d2f9363..694384f 100644
---- i/pre_commit/constants.py
-+++ w/pre_commit/constants.py
-@@ -1,10 +1,5 @@
- import sys
-
--if sys.version_info >= (3, 8): # pragma: >=3.8 cover
-- import importlib.metadata as importlib_metadata
--else: # pragma: <3.8 cover
-- import importlib_metadata
--
- CONFIG_FILE = '.pre-commit-config.yaml'
- MANIFEST_FILE = '.pre-commit-hooks.yaml'
-
-@@ -13,7 +8,7 @@ INSTALLED_STATE_VERSION = '1'
- # Bump when modifying `empty_template`
- LOCAL_REPO_VERSION = '1'
-
--VERSION = importlib_metadata.version('pre_commit')
-+VERSION = %%PKGVER%%
-
- # `manual` is not invoked by any installed git hook. See #719
- STAGES = (
diff --git a/testing/premake/0001-Change-Test-FindLibrary-to-libc.patch b/testing/premake/0001-Change-Test-FindLibrary-to-libc.patch
deleted file mode 100644
index ada0da62543..00000000000
--- a/testing/premake/0001-Change-Test-FindLibrary-to-libc.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 8b0d26300acb9b304259214fb4cb7c3a49fedb59 Mon Sep 17 00:00:00 2001
-From: Ralf Rachinger <git@ralfrachinger.de>
-Date: Thu, 28 Apr 2022 01:04:43 +0200
-Subject: [PATCH] Change Test FindLibrary to libc
-
----
- tests/base/test_os.lua | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/tests/base/test_os.lua b/tests/base/test_os.lua
-index c4d9a4a0..5f1e5d12 100644
---- a/tests/base/test_os.lua
-+++ b/tests/base/test_os.lua
-@@ -31,7 +31,7 @@
- elseif os.istarget("haiku") then
- test.istrue(os.findlib("root"))
- else
-- test.istrue(os.findlib("m"))
-+ test.istrue(os.findlib("libc"))
- end
- end
-
---
-2.36.0
-
diff --git a/testing/premake/APKBUILD b/testing/premake/APKBUILD
deleted file mode 100644
index 77b4c1f3976..00000000000
--- a/testing/premake/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Contributor: Ralf Rachinger <alpine@ralfrachinger.de>
-# Maintainer: Ralf Rachinger <alpine@ralfrachinger.de>
-# *Inspired* by https://github.com/archlinux/svntogit-community/blob/794c98925b4cc2684d067b7142710ae84bd80d21/trunk/PKGBUILD
-pkgname=premake
-pkgver=5.0.0_beta1
-_ver=5.0.0-beta1
-pkgrel=0
-pkgdesc="Simple build configuration and project generation tool"
-url="https://premake.github.io"
-arch="all"
-license="BSD-3-Clause"
-source="
- https://github.com/premake/premake-core/releases/download/v$_ver/premake-$_ver-src.zip
- 0001-Change-Test-FindLibrary-to-libc.patch
-"
-builddir="$srcdir/premake-$_ver-src"
-
-
-build() {
- make -C "$builddir/build/gmake2.unix" config=release
-}
-
-check() {
- bin/release/premake5 test
-}
-
-package() {
- install -Dm755 bin/release/premake5 "$pkgdir"/usr/bin/premake5
- install -Dm644 LICENSE.txt "$pkgdir/usr/share/licenses/$pkgname"/LICENSE
-}
-
-sha512sums="
-4745cfa796f3f7616b96c2541bca54ba91ef53310cd3a8b9891fcb22170b1b68ebe245471aa63d82fbd94a50643ddf468b66c85e32c1ce214cf5c65b5da27e62 premake-5.0.0-beta1-src.zip
-3b86dd81311c42da7637fd268f445f90c52695c9e7dac428e658e5df64d77ba0683aec0214676182993e6b5dbcb3ea33385e9a672bcd6569efd1c2ea434566a7 0001-Change-Test-FindLibrary-to-libc.patch
-"
diff --git a/testing/prettier/APKBUILD b/testing/prettier/APKBUILD
index 311fc39ef49..8956f59cd91 100644
--- a/testing/prettier/APKBUILD
+++ b/testing/prettier/APKBUILD
@@ -1,21 +1,19 @@
# Contributor: Michał Polański <michal@polanski.me>
# Maintainer: Michał Polański <michal@polanski.me>
pkgname=prettier
-pkgver=2.6.2
+pkgver=3.2.5
pkgrel=0
pkgdesc="Opinionated code formatter"
url="https://prettier.io/"
license="MIT"
-# riscv64: blocked by nodejs
-# armhf, armv7, x86: fails to build on 32-bit arches
-arch="noarch !armhf !armv7 !riscv64 !x86"
+# armhf, armv7, x86, riscv64: fails to build
+# s390x: hangs at yarn "fetch step"
+arch="noarch !armhf !armv7 !x86 !riscv64 !s390x"
depends="nodejs"
makedepends="yarn"
checkdepends="npm"
subpackages="$pkgname-doc"
-source="https://github.com/prettier/prettier/archive/$pkgver/prettier-$pkgver.tar.gz
- timeout.patch
- "
+source="https://github.com/prettier/prettier/archive/$pkgver/prettier-$pkgver.tar.gz"
build() {
yarn install --frozen-lockfile
@@ -35,15 +33,13 @@ package() {
"$pkgdir"/usr/share/licenses/prettier
cp -r dist/* "$pkgdir"/$destdir
- ln -s $destdir/bin-prettier.js "$pkgdir"/usr/bin/prettier
+ ln -s $destdir/bin/prettier.cjs "$pkgdir"/usr/bin/prettier
cd "$pkgdir"/$destdir
- rm -r esm # remove ES modules: not needed for command-line usage
rm README.md # more links to various badges than actual content
mv LICENSE "$pkgdir"/usr/share/licenses/prettier/LICENSE
}
sha512sums="
-a4a874392b7f6e587b77e183f6242f0089634bff7e86b3a5c133dc049e79686a1a3e4e6d632f382b03e563b6693f840db86c49e2996c9650addbe4d06882c935 prettier-2.6.2.tar.gz
-06968fc076d2cd68360601c84c49b82a1f872a1b54d5ec9738de7ac63793f96cd609817bbb0a0f1902b7ba004232d1276b3577557dc60dd2a7d71fad5e440099 timeout.patch
+b74a06131f5d531096180224ccece2eed2c3eef79cc51c9c826325775c82c4c2aa9082b14e07beffcfda7fcb6213f3058c2c543be8a82af4b3ed298189e9399c prettier-3.2.5.tar.gz
"
diff --git a/testing/prettier/timeout.patch b/testing/prettier/timeout.patch
deleted file mode 100644
index 028775bd9e5..00000000000
--- a/testing/prettier/timeout.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-increase default timeout to prevent test failures
-
---- a/tests/config/setup.js
-+++ b/tests/config/setup.js
-@@ -5,3 +5,6 @@ Object.defineProperty(global, "run_spec", {
- return require("./format-test.js");
- },
- });
-+
-+// increase default timeout of 5000 ms
-+jest.setTimeout(30000);
diff --git a/testing/primecount/APKBUILD b/testing/primecount/APKBUILD
index 9884ad54888..128c1c30c9c 100644
--- a/testing/primecount/APKBUILD
+++ b/testing/primecount/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Hoang Nguyen <folliekazetani@protonmail.com>
# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
pkgname=primecount
-pkgver=7.3
+pkgver=7.11
pkgrel=0
pkgdesc="Fast prime counting C/C++ library"
url="https://github.com/kimwalisch/primecount"
@@ -37,5 +37,5 @@ package() {
}
sha512sums="
-56dcae60460c88368214e01f8e3618e6b61b13f2730bfd1f281721ef71d6136308ba6832e4bd25a1885e2c6142009c5772d6102f82c65e8522e990cb62c55e71 primecount-7.3.tar.gz
+2e58bc7214b0ff506086ab36b8840fbcd2a1f27e61dc134787bb5ce084d3f81e2c5190f69b47ad8ee970bb364fdc30354826b70db6c418f533d0bd521515717c primecount-7.11.tar.gz
"
diff --git a/testing/primesieve/APKBUILD b/testing/primesieve/APKBUILD
index bd80289a53b..432dc9255d6 100644
--- a/testing/primesieve/APKBUILD
+++ b/testing/primesieve/APKBUILD
@@ -1,16 +1,13 @@
# Contributor: Curt Tilmes <Curt.Tilmes@nasa.gov>
# Maintainer: Curt Tilmes <Curt.Tilmes@nasa.gov>
pkgname=primesieve
-pkgver=7.9
-pkgrel=1
+pkgver=12.1
+pkgrel=0
pkgdesc="Program and library for generating prime numbers"
url="http://primesieve.org"
arch="all"
license="BSD-2-Clause"
-makedepends="
- cmake
- samurai
- "
+makedepends="cmake samurai"
subpackages="$pkgname-dev $pkgname-doc $pkgname-libs"
source="$pkgname-$pkgver.tar.gz::https://github.com/kimwalisch/primesieve/archive/v$pkgver.tar.gz"
@@ -33,5 +30,5 @@ package() {
}
sha512sums="
-fcfc3445e5becd555b66743f6d73dd4a0cbb48b1d4a3d0d22043261f1861e0631bdeb8702b1f942110f8b327a01173b231accd1f7595600308709832bbbafc06 primesieve-7.9.tar.gz
+8a78b0db6750a2f00b78aa2e525d3061f2e287514469c14b3e2232874cc120242272ebc33070b91d74ce7fc98273bf08a192b38cf5078c8c9f95981a1187a1b3 primesieve-12.1.tar.gz
"
diff --git a/testing/prjtrellis-db/APKBUILD b/testing/prjtrellis-db/APKBUILD
new file mode 100644
index 00000000000..eb2f7b2c816
--- /dev/null
+++ b/testing/prjtrellis-db/APKBUILD
@@ -0,0 +1,66 @@
+# Maintainer: Marian Buschsieweke <marian.buschsieweke@posteo.net>
+pkgname=prjtrellis-db
+pkgver=0_git20230929
+_commit=4dda149b9e4f1753ebc8b011ece2fe794be1281a
+pkgrel=0
+pkgdesc="Project Trellis database"
+url="https://github.com/YosysHQ/prjtrellis-db"
+arch="noarch"
+license="CC0-1.0"
+source="
+ $pkgname-$_commit.tar.gz::https://github.com/YosysHQ/prjtrellis-db/archive/$_commit.tar.gz
+ "
+subpackages="
+ $pkgname-ecp5
+ $pkgname-machxo
+ $pkgname-machxo2
+ $pkgname-machxo3
+ $pkgname-machxo3d
+ "
+options="!check" # no unit tests provided
+builddir="$srcdir/prjtrellis-db-$_commit"
+
+package() {
+ local _destdir="$pkgdir"/usr/share/trellis/database
+ install -dm 755 "$_destdir"
+ cp -r \
+ devices.json \
+ ECP5 \
+ MachXO \
+ MachXO2 \
+ MachXO3 \
+ MachXO3D \
+ "$_destdir"
+}
+
+_subpkg() {
+ local _platform="$1"
+ pkgdesc="Project Trellis database for $_platform"
+ depends="$pkgname"
+ amove usr/share/trellis/database/"$_platform"
+
+}
+
+ecp5() {
+ _subpkg ECP5
+}
+
+machxo() {
+ _subpkg MachXO
+}
+
+machxo2() {
+ _subpkg MachXO2
+}
+
+machxo3() {
+ _subpkg MachXO3
+}
+
+machxo3d() {
+ _subpkg MachXO3D
+}
+
+sha512sums="
+e2e6d37ad93c082f97033288299c045138aebe3bb0ab0169545c0a7ee64a8b408007475ebb94b756378b1e51c3621c89f94b857d2bb9eec0d77bfea5ac7ebe4c prjtrellis-db-4dda149b9e4f1753ebc8b011ece2fe794be1281a.tar.gz
+"
diff --git a/testing/prjtrellis/0001-library-install-path.patch b/testing/prjtrellis/0001-library-install-path.patch
new file mode 100644
index 00000000000..47df3d1305c
--- /dev/null
+++ b/testing/prjtrellis/0001-library-install-path.patch
@@ -0,0 +1,86 @@
+Install libraries to /usr/lib, not to /usr/lib/trellis/.
+
+This fixes tracing dependencies:
+
+ >>> prjtrellis*: Tracing dependencies...
+ >>> ERROR: prjtrellis*: libtrellis.so: path not found
+ so:libboost_filesystem.so.1.82.0
+ so:libboost_program_options.so.1.82.0
+ so:libboost_thread.so.1.82.0
+ so:libc.musl-x86_64.so.1
+ so:libgcc_s.so.1
+ so:libpython3.11.so.1.0
+ so:libstdc++.so.6
+
+--- a/libtrellis/CMakeLists.txt 2023-05-08 09:55:05.000000000 +0200
++++ b/libtrellis/CMakeLists.txt 2024-01-10 10:31:42.455914809 +0100
+@@ -100,20 +100,6 @@ include(GNUInstallDirs)
+ file(RELATIVE_PATH TRELLIS_RPATH_LIBDIR /${CMAKE_INSTALL_BINDIR} /${CMAKE_INSTALL_LIBDIR})
+ file(RELATIVE_PATH TRELLIS_RPATH_DATADIR /${CMAKE_INSTALL_BINDIR} /${CMAKE_INSTALL_DATADIR})
+
+-function(setup_rpath name)
+- if(APPLE)
+- set_target_properties(${name} PROPERTIES
+- BUILD_WITH_INSTALL_RPATH ON
+- INSTALL_RPATH "@loader_path/${TRELLIS_RPATH_LIBDIR}/${PROGRAM_PREFIX}trellis"
+- INSTALL_NAME_DIR "@rpath")
+- elseif(UNIX)
+- set_target_properties(${name} PROPERTIES
+- BUILD_WITH_INSTALL_RPATH ON
+- INSTALL_RPATH "\$ORIGIN/${TRELLIS_RPATH_LIBDIR}/${PROGRAM_PREFIX}trellis")
+- endif()
+-endfunction()
+-
+-
+ # Avoid perturbing build if git version hasn't changed
+ file(MAKE_DIRECTORY "${CMAKE_BINARY_DIR}/generated")
+ set(LAST_GIT_VERSION "")
+@@ -137,7 +123,6 @@ if (BUILD_ECPBRAM)
+ target_include_directories(${PROGRAM_PREFIX}ecpbram PRIVATE tools)
+ target_compile_definitions(${PROGRAM_PREFIX}ecpbram PRIVATE TRELLIS_RPATH_DATADIR="${TRELLIS_RPATH_DATADIR}" TRELLIS_PREFIX="${CMAKE_INSTALL_PREFIX}" TRELLIS_PROGRAM_PREFIX="${PROGRAM_PREFIX}")
+ target_link_libraries(${PROGRAM_PREFIX}ecpbram trellis ${Boost_LIBRARIES} ${CMAKE_DL_LIBS} ${link_param})
+- setup_rpath(${PROGRAM_PREFIX}ecpbram)
+ if (WASI)
+ set_property(TARGET ${PROGRAM_PREFIX}ecpbram PROPERTY SUFFIX ".wasm")
+ endif()
+@@ -149,7 +134,6 @@ if (BUILD_ECPPACK)
+ target_include_directories(${PROGRAM_PREFIX}ecppack PRIVATE tools)
+ target_compile_definitions(${PROGRAM_PREFIX}ecppack PRIVATE TRELLIS_RPATH_DATADIR="${TRELLIS_RPATH_DATADIR}" TRELLIS_PREFIX="${CMAKE_INSTALL_PREFIX}" TRELLIS_PROGRAM_PREFIX="${PROGRAM_PREFIX}")
+ target_link_libraries(${PROGRAM_PREFIX}ecppack trellis ${Boost_LIBRARIES} ${CMAKE_DL_LIBS} ${link_param})
+- setup_rpath(${PROGRAM_PREFIX}ecppack)
+ if (WASI)
+ set_property(TARGET ${PROGRAM_PREFIX}ecppack PROPERTY SUFFIX ".wasm")
+ endif()
+@@ -161,7 +145,6 @@ if (BUILD_ECPUNPACK)
+ target_include_directories(${PROGRAM_PREFIX}ecpunpack PRIVATE tools)
+ target_compile_definitions(${PROGRAM_PREFIX}ecpunpack PRIVATE TRELLIS_RPATH_DATADIR="${TRELLIS_RPATH_DATADIR}" TRELLIS_PREFIX="${CMAKE_INSTALL_PREFIX}" TRELLIS_PROGRAM_PREFIX="${PROGRAM_PREFIX}")
+ target_link_libraries(${PROGRAM_PREFIX}ecpunpack trellis ${Boost_LIBRARIES} ${CMAKE_DL_LIBS} ${link_param})
+- setup_rpath(${PROGRAM_PREFIX}ecpunpack)
+ if (WASI)
+ set_property(TARGET ${PROGRAM_PREFIX}ecpunpack PROPERTY SUFFIX ".wasm")
+ endif()
+@@ -173,7 +156,6 @@ if (BUILD_ECPPLL)
+ target_include_directories(${PROGRAM_PREFIX}ecppll PRIVATE tools)
+ target_compile_definitions(${PROGRAM_PREFIX}ecppll PRIVATE TRELLIS_RPATH_DATADIR="${TRELLIS_RPATH_DATADIR}" TRELLIS_PREFIX="${CMAKE_INSTALL_PREFIX}" TRELLIS_PROGRAM_PREFIX="${PROGRAM_PREFIX}")
+ target_link_libraries(${PROGRAM_PREFIX}ecppll trellis ${Boost_LIBRARIES} ${CMAKE_DL_LIBS} ${link_param})
+- setup_rpath(${PROGRAM_PREFIX}ecppll)
+ if (WASI)
+ set_property(TARGET ${PROGRAM_PREFIX}ecppll PROPERTY SUFFIX ".wasm")
+ endif()
+@@ -185,7 +167,6 @@ if (BUILD_ECPMULTI)
+ target_include_directories(${PROGRAM_PREFIX}ecpmulti PRIVATE tools)
+ target_compile_definitions(${PROGRAM_PREFIX}ecpmulti PRIVATE TRELLIS_RPATH_DATADIR="${TRELLIS_RPATH_DATADIR}" TRELLIS_PREFIX="${CMAKE_INSTALL_PREFIX}" TRELLIS_PROGRAM_PREFIX="${PROGRAM_PREFIX}")
+ target_link_libraries(${PROGRAM_PREFIX}ecpmulti trellis ${Boost_LIBRARIES} ${CMAKE_DL_LIBS} ${link_param})
+- setup_rpath(${PROGRAM_PREFIX}ecpmulti)
+ if (WASI)
+ set_property(TARGET ${PROGRAM_PREFIX}ecpmulti PROPERTY SUFFIX ".wasm")
+ endif()
+@@ -194,7 +175,7 @@ endif()
+
+
+ if (BUILD_SHARED)
+- install(TARGETS trellis ${PythonInstallTarget} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/${PROGRAM_PREFIX}trellis)
++ install(TARGETS trellis ${PythonInstallTarget} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
+ endif()
+
+ install(DIRECTORY ../database DESTINATION ${CMAKE_INSTALL_DATADIR}/${PROGRAM_PREFIX}trellis PATTERN ".git" EXCLUDE)
diff --git a/testing/prjtrellis/APKBUILD b/testing/prjtrellis/APKBUILD
new file mode 100644
index 00000000000..d62685cc7d5
--- /dev/null
+++ b/testing/prjtrellis/APKBUILD
@@ -0,0 +1,41 @@
+# Maintainer: Marian Buschsieweke <marian.buschsieweke@posteo.net>
+pkgname=prjtrellis
+pkgver=1.4
+pkgrel=1
+pkgdesc="Documentation of the Lattice ECP5 bit-stream format"
+url="https://github.com/YosysHQ/prjtrellis"
+arch="all"
+license="ISC AND MIT"
+makedepends="
+ cmake
+ ninja
+ python3
+ python3-dev
+ boost-dev
+ "
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/YosysHQ/prjtrellis/archive/refs/tags/$pkgver.tar.gz
+
+ 0001-library-install-path.patch
+ "
+options="!check" # no unit tests provided
+
+build() {
+ cmake -B build -G Ninja -S libtrellis \
+ -DBUILD_SHARED_LIBS=True \
+ -DCMAKE_BUILD_TYPE=MinSizeRel \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DCURRENT_GIT_VERSION=$pkgver \
+ #
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+3fd8bf533da98f3cdf6a0fe92ee4b2cb5d58fcc568e3365a1927fae392a4aaeec80b1f53e26ccd6c7afd7efb17b749cd8bac6d3ec2d17f9ad2c33da592a213d9 prjtrellis-1.4.tar.gz
+f6cee3e14a05a5ad8845f11ad3b6102cdbacb43b906eaa3f3892b7418193a4652bf3ff1a3ce42496a39adeecea5fe55bf32a470cf7b3a23b653e052b22c68a3f 0001-library-install-path.patch
+"
diff --git a/testing/profanity/APKBUILD b/testing/profanity/APKBUILD
deleted file mode 100644
index 93421746b4e..00000000000
--- a/testing/profanity/APKBUILD
+++ /dev/null
@@ -1,63 +0,0 @@
-# Contributor: Galen Abell <galen@galenabell.com>
-# Maintainer: Galen Abell <galen@galenabell.com>
-pkgname=profanity
-pkgver=0.12.1
-pkgrel=1
-pkgdesc="Ncurses based XMPP client"
-url="https://github.com/profanity-im/profanity"
-arch="all"
-license="GPL-3.0-or-later"
-makedepends="
- autoconf
- autoconf-archive
- automake
- libtool
- pkgconf
- libmesode-dev
- ncurses-dev
- glib-dev
- curl-dev
- readline-dev
- libotr-dev
- libsignal-protocol-c-dev
- libgcrypt-dev
- libstrophe-dev
- cmocka-dev
- sqlite-dev
-"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/profanity-im/profanity/archive/$pkgver.tar.gz
- "
-
-prepare() {
- default_prepare
- ./bootstrap.sh
-}
-
-build() {
- # GPG is "suboptimal" for chat, since it doesn't provide forward secrecy, deniability, ...
- # Its usage/support is currently discouraged in XMPP.
- # Users are encouraged to use OTR, or even better, OMEMO.
- ./configure \
- --disable-plugins \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var \
- --enable-pgp=no
- make
-}
-
-check() {
- LANG=en_US.UTF-8 make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-399105dfe49e3bc711426e77d45f92b347cca6ba47059e33e0ffb3997adf7c223b2959096bbb2419891f061eb2cf63da3b90d2d2b13dcd5a0d06046e851b5c69 profanity-0.12.1.tar.gz
-"
diff --git a/testing/progress/APKBUILD b/testing/progress/APKBUILD
deleted file mode 100644
index d1d14d8b767..00000000000
--- a/testing/progress/APKBUILD
+++ /dev/null
@@ -1,25 +0,0 @@
-# Contributor: Ralf Rachinger <alpine@ralfrachinger.de>
-# Maintainer: Ralf Rachinger <alpine@ralfrachinger.de>
-pkgname=progress
-pkgver=0.16
-pkgrel=0
-pkgdesc="Coreutils Progress Viewer"
-url="https://github.com/Xfennec/progress"
-arch="all"
-license="GPL-3.0-only"
-makedepends="ncurses-dev linux-headers"
-source="https://github.com/Xfennec/progress/archive/v$pkgver/progress-$pkgver.tar.gz"
-subpackages="$pkgname-doc"
-options="!check"
-
-build() {
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" PREFIX="/usr" install
-}
-
-sha512sums="
-11fef1b973e899f4b605513f341cfc412c7c62b138d2b87cfb8b57fe7c46449cdac1e1b5c1cdc77d7cd905a26e5cf85c4ff88d892c58c8c839e95cab07596eb3 progress-0.16.tar.gz
-"
diff --git a/testing/projectm/APKBUILD b/testing/projectm/APKBUILD
index e549fe410e3..5a780da4eb2 100644
--- a/testing/projectm/APKBUILD
+++ b/testing/projectm/APKBUILD
@@ -2,12 +2,12 @@
# Maintainer: knuxify <knuxify@gmail.com>
pkgname=projectm
pkgver=3.1.12
-pkgrel=0
+pkgrel=1
pkgdesc="Music visualizer which uses 3D accelerated iterative image based rendering"
url="https://github.com/projectM-visualizer/projectm"
arch="all"
license="LGPL-2.1-or-later"
-makedepends="mesa-gl glm-dev mesa-dev fts-dev qt5-qtbase-dev sdl2-dev pulseaudio-dev"
+makedepends="mesa-gl glm-dev mesa-dev musl-fts-dev qt5-qtbase-dev sdl2-dev pulseaudio-dev"
subpackages="$pkgname-dev $pkgname-presets $pkgname-sdl $pkgname-pulseaudio
$pkgname-pulseaudio-doc:pulseaudio_doc"
source="https://github.com/projectM-visualizer/projectm/releases/download/v$pkgver/projectM-$pkgver.tar.gz
@@ -94,7 +94,6 @@ pulseaudio_doc() {
default_doc
}
-
sha512sums="
13aafc2ebd5eb4aa59b54d7c1d2933ed9a5c014899560a241079b725ffaed2e37f9ac451bb74a7fce235184ac795c55cb54c1d0f0c9e8c571e5cbda9cd3c4058 projectM-3.1.12.tar.gz
8250250f5b409b4806869da1a5692d441c6928bf0ababdcce8072df74d8f93b314bbfe2c60a4d2c25a6a4d0d8722e3bf62106c63694933a05022970a3cbf02d1 fix-missing-gl-symbols-on-arm.patch
diff --git a/testing/projectsandcastle-loader/APKBUILD b/testing/projectsandcastle-loader/APKBUILD
index a0f7c529425..c1f88b56848 100644
--- a/testing/projectsandcastle-loader/APKBUILD
+++ b/testing/projectsandcastle-loader/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Jonas Heinrich <onny@project-insanity.org>
pkgname=projectsandcastle-loader
pkgver=0_git20200307
-pkgrel=0
+pkgrel=1
pkgdesc="Loader for Android on iPhone"
url="https://github.com/corellium/projectsandcastle"
arch="all"
diff --git a/testing/prometheus-bind-exporter/APKBUILD b/testing/prometheus-bind-exporter/APKBUILD
new file mode 100644
index 00000000000..f992cd6ffe2
--- /dev/null
+++ b/testing/prometheus-bind-exporter/APKBUILD
@@ -0,0 +1,50 @@
+# Maintainer: Mike Crute <mike@crute.us>
+# Contributor: Mike Crute <mike@crute.us>
+pkgname=prometheus-bind-exporter
+_pkgname=bind_exporter
+pkgver=0.7.0
+pkgrel=3
+pkgdesc="Prometheus Bind Exporter"
+url="https://github.com/prometheus-community/bind_exporter"
+license="Apache-2.0"
+arch="all"
+install="$pkgname.pre-install"
+makedepends="go promu"
+provides="bind_exporter=$pkgver-r$pkgrel"
+replaces="bind_exporter"
+source="
+ $_pkgname-$pkgver.tar.gz::https://github.com/prometheus-community/bind_exporter/archive/v$pkgver.tar.gz
+ bind-exporter.confd
+ bind-exporter.initd
+"
+builddir="$srcdir/$_pkgname-$pkgver"
+subpackages="$pkgname-openrc"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ make PROMU=/usr/bin/promu build
+}
+
+check() {
+ go test ./...
+}
+
+package() {
+ install -dm755 "$pkgdir"/etc/prometheus
+
+ install -Dm755 bind_exporter \
+ "$pkgdir"/usr/bin/bind_exporter
+ install -Dm755 "$srcdir"/bind-exporter.initd \
+ "$pkgdir"/etc/init.d/bind-exporter
+ install -Dm644 "$srcdir"/bind-exporter.confd \
+ "$pkgdir"/etc/conf.d/bind-exporter
+}
+
+sha512sums="
+98e9bdd78605ded8ebc38351700c082c7e018e9ad06ccfce07d8b1116986f44bda10cb9f85c13faeee34449205a16f44e397604251cbbc835eca0e1ad93840ab bind_exporter-0.7.0.tar.gz
+b9c08a14f318c6127d44f9f1055cbd228acbe2fae043dbd719a6654128680e2dd7811611e48114154753e70d66f49d6e5fee590c37792d23b9189ee62b6fbb7f bind-exporter.confd
+a29b23cbc391c5703f78085ae23ef24a341e0f6e02818d36dca481fbcb217f55ea1e43ed6307a18386e1d3247d899319f6cc7bdb766272a4dd89cbf52d30c0cf bind-exporter.initd
+"
diff --git a/testing/prometheus-bind-exporter/bind-exporter.confd b/testing/prometheus-bind-exporter/bind-exporter.confd
new file mode 100644
index 00000000000..af78f8dba4c
--- /dev/null
+++ b/testing/prometheus-bind-exporter/bind-exporter.confd
@@ -0,0 +1,4 @@
+bind_exporter_args=
+
+output_log=/var/log/bind_exporter.log
+error_log=/var/log/bind_exporter.log
diff --git a/testing/prometheus-bind-exporter/bind-exporter.initd b/testing/prometheus-bind-exporter/bind-exporter.initd
new file mode 100644
index 00000000000..7f4235bcc03
--- /dev/null
+++ b/testing/prometheus-bind-exporter/bind-exporter.initd
@@ -0,0 +1,15 @@
+#!/sbin/openrc-run
+
+name="bind_exporter"
+description="bind exporter for the prometheus monitoring system"
+supervisor=supervise-daemon
+command=/usr/bin/bind_exporter
+command_args="$bind_exporter_args"
+command_user="prometheus:prometheus"
+
+start_pre() {
+ [ -n "$output_log" ] && checkpath -f "$output_log" \
+ -m 644 -o prometheus:prometheus
+ [ -n "$error_log" ] && checkpath -f "$error_log" \
+ -m 644 -o prometheus:prometheus
+}
diff --git a/testing/blackbox_exporter/blackbox_exporter.pre-install b/testing/prometheus-bind-exporter/prometheus-bind-exporter.pre-install
index 1dd28103b83..1dd28103b83 100644
--- a/testing/blackbox_exporter/blackbox_exporter.pre-install
+++ b/testing/prometheus-bind-exporter/prometheus-bind-exporter.pre-install
diff --git a/testing/prometheus-ceph-exporter/APKBUILD b/testing/prometheus-ceph-exporter/APKBUILD
new file mode 100644
index 00000000000..d2efde862da
--- /dev/null
+++ b/testing/prometheus-ceph-exporter/APKBUILD
@@ -0,0 +1,48 @@
+# Contributor: Alex Denes <caskd@redxen.eu>
+# Maintainer: Alex Denes <caskd@redxen.eu>
+pkgname=prometheus-ceph-exporter
+pkgver=4.2.3
+pkgrel=1
+pkgdesc="Prometheus exporter that scrapes meta information about a ceph cluster"
+url="https://github.com/digitalocean/ceph_exporter"
+license="Apache-2.0"
+# riscv64, 32bit: doesn't build
+arch="all !x86 !armhf !armv7"
+makedepends="
+ ceph-dev
+ linux-headers
+ go
+ "
+install="$pkgname.pre-install $pkgname.pre-upgrade"
+subpackages="$pkgname-openrc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/digitalocean/ceph_exporter/archive/refs/tags/$pkgver.tar.gz
+ ceph-exporter.initd
+ ceph-exporter.confd
+ "
+builddir="$srcdir/ceph_exporter-$pkgver"
+options="net"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ go build -o ceph-exporter -tags "quincy reef" # support ceph 16 and 18
+}
+
+check() {
+ go test -tags "quincy reef" ./...
+}
+
+package() {
+ install -Dm755 ceph-exporter -t "$pkgdir"/usr/bin/
+
+ install -Dm755 "$srcdir"/ceph-exporter.initd "$pkgdir"/etc/init.d/ceph-exporter
+ install -Dm644 "$srcdir"/ceph-exporter.confd "$pkgdir"/etc/conf.d/ceph-exporter
+}
+
+sha512sums="
+2106cb2bcc99b5108dc20a60013075be7718b5f156be6f917210d77659d2b4a5d2e49d810fc8275e33a5ddd2afb6e86ec007132ef3851efa8f72afd907143733 prometheus-ceph-exporter-4.2.3.tar.gz
+392448b600c3dab44718ccf3133fdc349ebc840f9fe4f8445be10bcc3c4c65cd7db96babe52ae9cec8cbf22d72865bd6794da1b4ee990c279d586b08c8dd8b3e ceph-exporter.initd
+2278273061c1f8e216193f1b0a00dbe0d791c460b803ff14408f1519bf2ee7daf402162741057a648747be9647510215d262f1e1672cd1cab0224a7e9175af53 ceph-exporter.confd
+"
diff --git a/testing/prometheus-ceph-exporter/ceph-exporter.confd b/testing/prometheus-ceph-exporter/ceph-exporter.confd
new file mode 100644
index 00000000000..ab4744400d5
--- /dev/null
+++ b/testing/prometheus-ceph-exporter/ceph-exporter.confd
@@ -0,0 +1,3 @@
+command_args=""
+
+supervisor=supervise-daemon
diff --git a/testing/prometheus-ceph-exporter/ceph-exporter.initd b/testing/prometheus-ceph-exporter/ceph-exporter.initd
new file mode 100755
index 00000000000..ea5427394e7
--- /dev/null
+++ b/testing/prometheus-ceph-exporter/ceph-exporter.initd
@@ -0,0 +1,18 @@
+#!/sbin/openrc-run
+command="/usr/bin/ceph_exporter"
+command_background=true
+command_user="prometheus:prometheus"
+
+logdir="/var/log/prometheus"
+error_log="$logdir/${SVCNAME}.log"
+pidfile="/run/${SVCNAME}.pid"
+
+depend() {
+ need net
+ after firewall
+}
+
+start_pre() {
+ checkpath -d -o $command_user -m755 $logdir
+ checkpath -f -o $command_user -m644 $error_log
+}
diff --git a/testing/prometheus-json-exporter/prometheus-json-exporter.pre-install b/testing/prometheus-ceph-exporter/prometheus-ceph-exporter.pre-install
index 120995cf353..120995cf353 100755
--- a/testing/prometheus-json-exporter/prometheus-json-exporter.pre-install
+++ b/testing/prometheus-ceph-exporter/prometheus-ceph-exporter.pre-install
diff --git a/testing/prometheus-ceph-exporter/prometheus-ceph-exporter.pre-upgrade b/testing/prometheus-ceph-exporter/prometheus-ceph-exporter.pre-upgrade
new file mode 120000
index 00000000000..6374c299e7f
--- /dev/null
+++ b/testing/prometheus-ceph-exporter/prometheus-ceph-exporter.pre-upgrade
@@ -0,0 +1 @@
+prometheus-ceph-exporter.pre-install \ No newline at end of file
diff --git a/testing/prometheus-json-exporter/0001-disable-go-race-detector.patch b/testing/prometheus-json-exporter/0001-disable-go-race-detector.patch
deleted file mode 100644
index 9ba76a31000..00000000000
--- a/testing/prometheus-json-exporter/0001-disable-go-race-detector.patch
+++ /dev/null
@@ -1,16 +0,0 @@
---- a/Makefile.common
-+++ b/Makefile.common
-@@ -111,13 +111,6 @@
- PUBLISH_DOCKER_ARCHS = $(addprefix common-docker-publish-,$(DOCKER_ARCHS))
- TAG_DOCKER_ARCHS = $(addprefix common-docker-tag-latest-,$(DOCKER_ARCHS))
-
--ifeq ($(GOHOSTARCH),amd64)
-- ifeq ($(GOHOSTOS),$(filter $(GOHOSTOS),linux freebsd darwin windows))
-- # Only supported on amd64
-- test-flags := -race
-- endif
--endif
--
- # This rule is used to forward a target like "build" to "common-build". This
- # allows a new "build" target to be defined in a Makefile which includes this
- # one and override "common-build" without override warnings.
diff --git a/testing/prometheus-json-exporter/APKBUILD b/testing/prometheus-json-exporter/APKBUILD
deleted file mode 100644
index e85d445a0fc..00000000000
--- a/testing/prometheus-json-exporter/APKBUILD
+++ /dev/null
@@ -1,42 +0,0 @@
-# Contributor: Alex Denes <caskd@redxen.eu>
-# Maintainer: Alex Denes <caskd@redxen.eu>
-pkgname=prometheus-json-exporter
-_pkgname=json_exporter
-pkgver=0.4.0
-pkgrel=3
-pkgdesc="Prometheus exporter which scrapes remote JSON by JSONPath"
-url="https://github.com/prometheus-community/json_exporter"
-license="Apache-2.0"
-arch="all !riscv64" # nonexistent riscv64 dependency downloaded at build time
-makedepends="go>=1.14 bash sed"
-install="$pkgname.pre-install $pkgname.pre-upgrade"
-subpackages="$pkgname-openrc"
-source="$_pkgname-$pkgver.tar.gz::$url/archive/v$pkgver.tar.gz
- json-exporter.initd
- json-exporter.confd
- 0001-disable-go-race-detector.patch
- "
-builddir="$srcdir/$_pkgname-$pkgver"
-export GOFLAGS="$GOFLAGS -modcacherw"
-
-build() {
- make build
-}
-
-check() {
- make test
-}
-
-package() {
- install -Dm755 json_exporter "$pkgdir"/usr/bin/json_exporter
-
- install -Dm755 "$srcdir"/json-exporter.initd "$pkgdir"/etc/init.d/json-exporter
- install -Dm644 "$srcdir"/json-exporter.confd "$pkgdir"/etc/conf.d/json-exporter
-}
-
-sha512sums="
-43d4a141fc0771ca4105502b7e5c37acd599287145e958206b1e5c853df87b22a828a4bb63c9056350da3e06c448a05f136896ae536239d6715325c54426d71d json_exporter-0.4.0.tar.gz
-ebed56a4b890d8c4407414befb75ec1ce12ea9af495a90e6a92e8f51ed2c5682c04bf264c0ef8e43dd4375f3418bd72f4d86a9bbfa546405acdcbe4def9c87cf json-exporter.initd
-2fecc0fdf9da9179ad24c14651efec341fccf3747d4570fe0ca5e1f5db1eb7ec49ce84add28d2804c03c95acd9762a660dfe5577fe26265ef35a82fa9c455aad json-exporter.confd
-0e916a9216fbf21865a3672a1159836993048de1112dc8ddbd4e8283264d7fe12c5a5e2b08adeced2db6d4d35feb799c59eae7e55d010d045e825b4a524ae5e2 0001-disable-go-race-detector.patch
-"
diff --git a/testing/prometheus-json-exporter/json-exporter.confd b/testing/prometheus-json-exporter/json-exporter.confd
deleted file mode 100644
index a7b394a3443..00000000000
--- a/testing/prometheus-json-exporter/json-exporter.confd
+++ /dev/null
@@ -1,7 +0,0 @@
-# /etc/conf.d/unbound-exporter
-
-# Custom arguments can be specified like:
-#
-# ARGS="--web.listen-address=':9100'"
-
-ARGS=""
diff --git a/testing/prometheus-json-exporter/json-exporter.initd b/testing/prometheus-json-exporter/json-exporter.initd
deleted file mode 100755
index 21c3fb15402..00000000000
--- a/testing/prometheus-json-exporter/json-exporter.initd
+++ /dev/null
@@ -1,21 +0,0 @@
-#!/sbin/openrc-run
-supervisor=supervise-daemon
-
-command="/usr/bin/json_exporter"
-command_args="$ARGS"
-command_background="yes"
-command_user="prometheus:prometheus"
-
-logdir="/var/log/prometheus"
-error_log="$logdir/${SVCNAME}.log"
-pidfile="/var/run/${SVCNAME}.pid"
-
-depend() {
- need net
- after firewall
-}
-
-start_pre() {
- checkpath -d -o $command_user -m755 $logdir
- checkpath -f -o $command_user -m644 $error_log
-}
diff --git a/testing/prometheus-json-exporter/prometheus-json-exporter.pre-upgrade b/testing/prometheus-json-exporter/prometheus-json-exporter.pre-upgrade
deleted file mode 120000
index aadcac81db2..00000000000
--- a/testing/prometheus-json-exporter/prometheus-json-exporter.pre-upgrade
+++ /dev/null
@@ -1 +0,0 @@
-prometheus-json-exporter.pre-install \ No newline at end of file
diff --git a/testing/prometheus-postgres-exporter/APKBUILD b/testing/prometheus-postgres-exporter/APKBUILD
deleted file mode 100644
index 1887dbede7e..00000000000
--- a/testing/prometheus-postgres-exporter/APKBUILD
+++ /dev/null
@@ -1,41 +0,0 @@
-# Contributor: Alex Denes <caskd@redxen.eu>
-# Maintainer: Alex Denes <caskd@redxen.eu>
-pkgname=prometheus-postgres-exporter
-_pkgname=postgres_exporter
-pkgver=0.10.1
-pkgrel=3
-pkgdesc="Prometheus exporter for PostgreSQL database"
-url="https://github.com/prometheus-community/postgres_exporter"
-license="Apache-2.0"
-arch="all !riscv64" # nonexistent riscv64 dependency downloaded at build time
-makedepends="go>=1.14 bash sed"
-install="$pkgname.pre-install $pkgname.pre-upgrade"
-subpackages="$pkgname-openrc"
-source="$_pkgname-$pkgver.tar.gz::https://github.com/prometheus-community/postgres_exporter/archive/v$pkgver.tar.gz
- postgres-exporter.initd
- postgres-exporter.confd
- disable-go-race-detector.patch"
-builddir="$srcdir/$_pkgname-$pkgver"
-export GOFLAGS="$GOFLAGS -modcacherw"
-
-build() {
- make build
-}
-
-check() {
- make test
-}
-
-package() {
- install -Dm755 postgres_exporter "$pkgdir"/usr/bin/postgres_exporter
-
- install -Dm755 "$srcdir"/postgres-exporter.initd "$pkgdir"/etc/init.d/postgres-exporter
- install -Dm644 "$srcdir"/postgres-exporter.confd "$pkgdir"/etc/conf.d/postgres-exporter
-}
-
-sha512sums="
-75ba08354174980d55fb1deed1035323d89f3331f0c366165a0262b4081b99d083f14dbcdd7539836399d0d69a75a296cb978a42d94ff0b1c0bcb8f3933fcabc postgres_exporter-0.10.1.tar.gz
-aaac144cdf65d1106d91f02f0daad965a935d134885f706f872fef6e1e554c29c79bb17714727e6bad5df432b72bb38a23225b9d133dc379199dbd3a15b66aa2 postgres-exporter.initd
-0aa9bec3601c9f23cb0af8e6837c2614a98936af6d74645f8a097667bbd8ed2cf646678188eeb1759a76e9a74aea808478ac7f2f5755c988de727b0bd02f7772 postgres-exporter.confd
-0e916a9216fbf21865a3672a1159836993048de1112dc8ddbd4e8283264d7fe12c5a5e2b08adeced2db6d4d35feb799c59eae7e55d010d045e825b4a524ae5e2 disable-go-race-detector.patch
-"
diff --git a/testing/prometheus-postgres-exporter/disable-go-race-detector.patch b/testing/prometheus-postgres-exporter/disable-go-race-detector.patch
deleted file mode 100644
index 9ba76a31000..00000000000
--- a/testing/prometheus-postgres-exporter/disable-go-race-detector.patch
+++ /dev/null
@@ -1,16 +0,0 @@
---- a/Makefile.common
-+++ b/Makefile.common
-@@ -111,13 +111,6 @@
- PUBLISH_DOCKER_ARCHS = $(addprefix common-docker-publish-,$(DOCKER_ARCHS))
- TAG_DOCKER_ARCHS = $(addprefix common-docker-tag-latest-,$(DOCKER_ARCHS))
-
--ifeq ($(GOHOSTARCH),amd64)
-- ifeq ($(GOHOSTOS),$(filter $(GOHOSTOS),linux freebsd darwin windows))
-- # Only supported on amd64
-- test-flags := -race
-- endif
--endif
--
- # This rule is used to forward a target like "build" to "common-build". This
- # allows a new "build" target to be defined in a Makefile which includes this
- # one and override "common-build" without override warnings.
diff --git a/testing/prometheus-postgres-exporter/postgres-exporter.confd b/testing/prometheus-postgres-exporter/postgres-exporter.confd
deleted file mode 100644
index a88c31b4e16..00000000000
--- a/testing/prometheus-postgres-exporter/postgres-exporter.confd
+++ /dev/null
@@ -1,7 +0,0 @@
-# /etc/conf.d/postgres-exporter
-
-# Custom arguments can be specified like:
-#
-# ARGS="--web.listen-address=':9100'"
-
-ARGS=""
diff --git a/testing/prometheus-postgres-exporter/postgres-exporter.initd b/testing/prometheus-postgres-exporter/postgres-exporter.initd
deleted file mode 100755
index fc7591d5e87..00000000000
--- a/testing/prometheus-postgres-exporter/postgres-exporter.initd
+++ /dev/null
@@ -1,21 +0,0 @@
-#!/sbin/openrc-run
-supervisor=supervise-daemon
-
-command="/usr/bin/postgres_exporter"
-command_args="$ARGS"
-command_background="yes"
-command_user="prometheus:prometheus"
-
-logdir="/var/log/prometheus"
-error_log="$logdir/${SVCNAME}.log"
-pidfile="/var/run/${SVCNAME}.pid"
-
-depend() {
- need net
- after firewall
-}
-
-start_pre() {
- checkpath -d -o $user:$group -m755 $logdir
- checkpath -f -o $user:$group -m644 $error_log
-}
diff --git a/testing/prometheus-postgres-exporter/prometheus-postgres-exporter.pre-upgrade b/testing/prometheus-postgres-exporter/prometheus-postgres-exporter.pre-upgrade
deleted file mode 120000
index 4bb179f511f..00000000000
--- a/testing/prometheus-postgres-exporter/prometheus-postgres-exporter.pre-upgrade
+++ /dev/null
@@ -1 +0,0 @@
-prometheus-postgres-exporter.pre-install \ No newline at end of file
diff --git a/testing/prometheus-rethinkdb-exporter/APKBUILD b/testing/prometheus-rethinkdb-exporter/APKBUILD
index aa1905f69d4..8887ad10dff 100644
--- a/testing/prometheus-rethinkdb-exporter/APKBUILD
+++ b/testing/prometheus-rethinkdb-exporter/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: TBK <alpine@jjtc.eu>
pkgname=prometheus-rethinkdb-exporter
pkgver=1.0.1
-pkgrel=5
+pkgrel=20
pkgdesc="Prometheus exporter for RethinkDB"
url="https://github.com/rethinkdb/prometheus-exporter"
license="Apache-2.0"
@@ -15,6 +15,10 @@ source="$pkgname-$pkgver.tar.gz::https://github.com/rethinkdb/prometheus-exporte
"
builddir="$srcdir/prometheus-exporter-$pkgver"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
build() {
make
}
diff --git a/testing/prometheus-smartctl-exporter/APKBUILD b/testing/prometheus-smartctl-exporter/APKBUILD
new file mode 100644
index 00000000000..5004566f1bc
--- /dev/null
+++ b/testing/prometheus-smartctl-exporter/APKBUILD
@@ -0,0 +1,44 @@
+# Contributor: Guy Godfroy <guy.godfroy@gugod.fr>
+# Maintainer: Guy Godfroy <guy.godfroy@gugod.fr>
+pkgname=prometheus-smartctl-exporter
+_pkgname=smartctl_exporter
+pkgver=0.12.0
+pkgrel=2
+pkgdesc="Prometheus smartctl exporter"
+url="https://github.com/prometheus-community/smartctl_exporter"
+arch="all"
+license="LGPL-3.0-or-later"
+depends="smartmontools jq"
+makedepends="go"
+install="$pkgname.pre-install"
+subpackages="$pkgname-openrc"
+source="$_pkgname-$pkgver.tar.gz::$url/archive/v$pkgver.tar.gz
+ smartctl-exporter.initd
+ smartctl-exporter.confd
+ "
+builddir="$srcdir/$_pkgname-$pkgver"
+options="net"
+
+build() {
+ GOLDFLAGS="-X main.Version=$pkgver"
+ go build \
+ -tags netgo \
+ -ldflags "$GOLDFLAGS" \
+ -o smartctl-exporter
+}
+
+check() {
+ go test -cover ./...
+}
+
+package() {
+ install -Dm755 smartctl-exporter "$pkgdir"/usr/bin/smartctl-exporter
+ install -Dm755 "$srcdir"/smartctl-exporter.initd "$pkgdir"/etc/init.d/smartctl-exporter
+ install -Dm644 "$srcdir"/smartctl-exporter.confd "$pkgdir"/etc/conf.d/smartctl-exporter
+}
+
+sha512sums="
+8f2cc973fd967c9ab737dcaa7456f019cb574ac3297bd5d15559167cde51f8076bcb48c7befb7efb869e056c1c5e404f4bb2774e8fe020736354ede4ae3e77f3 smartctl_exporter-0.12.0.tar.gz
+605e753b3f90bf20c035798af9702f60d7f39d600e96a5d5b6cc8909334c2e6adb8fae6f6f3a7cfb4b097e2ceeb90257d9041d41aefa891e25aabf7cc2cac9e2 smartctl-exporter.initd
+cd46f20e8b479331e4e831da1dd36fcd93990904560555b5ba67d2344dc50405d8d8e4a3b03c32b1aaf969fed0a2a176c5248e671495604112fafb6dc325b999 smartctl-exporter.confd
+"
diff --git a/testing/prometheus-smartctl-exporter/prometheus-smartctl-exporter.pre-install b/testing/prometheus-smartctl-exporter/prometheus-smartctl-exporter.pre-install
new file mode 100644
index 00000000000..17964b0cd38
--- /dev/null
+++ b/testing/prometheus-smartctl-exporter/prometheus-smartctl-exporter.pre-install
@@ -0,0 +1,8 @@
+#!/bin/sh
+
+addgroup -S prometheus 2>/dev/null
+adduser -S -D -h /var/lib/prometheus \
+ -s /sbin/nologin -G prometheus -g prometheus prometheus prometheus 2>/dev/null
+adduser prometheus disk
+
+exit 0
diff --git a/testing/prometheus-smartctl-exporter/smartctl-exporter.confd b/testing/prometheus-smartctl-exporter/smartctl-exporter.confd
new file mode 100644
index 00000000000..0044540675d
--- /dev/null
+++ b/testing/prometheus-smartctl-exporter/smartctl-exporter.confd
@@ -0,0 +1,10 @@
+# /etc/conf.d/nextcloud-exporter
+
+# Custom arguments can be specified like:
+#
+# ARGS="--web.listen-address=:9633"
+
+ARGS=""
+
+# comment out to use traditional service management
+supervisor="supervise-daemon"
diff --git a/testing/prometheus-smartctl-exporter/smartctl-exporter.initd b/testing/prometheus-smartctl-exporter/smartctl-exporter.initd
new file mode 100755
index 00000000000..a90a0671ce6
--- /dev/null
+++ b/testing/prometheus-smartctl-exporter/smartctl-exporter.initd
@@ -0,0 +1,7 @@
+#!/sbin/openrc-run
+name="prometheus-smartctl-exporter"
+command="/usr/bin/smartctl-exporter"
+command_args="$ARGS"
+command_background="yes"
+command_user="prometheus:prometheus"
+pidfile="/run/${RC_SVCNAME}.pid"
diff --git a/testing/prometheus-smokeping-prober/APKBUILD b/testing/prometheus-smokeping-prober/APKBUILD
new file mode 100644
index 00000000000..b9c50c6c096
--- /dev/null
+++ b/testing/prometheus-smokeping-prober/APKBUILD
@@ -0,0 +1,44 @@
+# Contributor: Mike Crute <mike@crute.us>
+# Maintainer: Mike Crute <mike@crute.us>
+pkgname=prometheus-smokeping-prober
+_pkgname=smokeping_prober
+pkgver=0.7.1
+pkgrel=4
+pkgdesc="Prometheus style smokeping prober"
+url="https://github.com/SuperQ/smokeping_prober"
+license="Apache-2.0"
+arch="all"
+options="!check" # no testsuite
+makedepends="go"
+pkgusers="prometheus"
+pkggroups="prometheus"
+install="$pkgname.pre-install $pkgname.pre-upgrade"
+subpackages="$pkgname-openrc"
+source="$_pkgname-$pkgver.tar.gz::https://github.com/SuperQ/smokeping_prober/archive/v$pkgver.tar.gz
+ smokeping-prober.initd
+ smokeping-prober.confd
+ "
+builddir="$srcdir/$_pkgname-$pkgver"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ go build \
+ -ldflags "-X github.com/prometheus/common/version.Version=$pkgver" \
+ -v -o smokeping_prober
+}
+
+package() {
+ install -Dm755 smokeping_prober "$pkgdir"/usr/bin/smokeping_prober
+
+ install -Dm755 "$srcdir"/smokeping-prober.initd "$pkgdir"/etc/init.d/smokeping-prober
+ install -Dm644 "$srcdir"/smokeping-prober.confd "$pkgdir"/etc/conf.d/smokeping-prober
+}
+
+sha512sums="
+074a38e29b93687498e6a796257e625b0b15ec6fa2181eec0a82b9d5e4c9efc78a5de567525c8b78dec6d1adde0b34b2bd6e96b450eeb05e3d68d8fc1c6c5716 smokeping_prober-0.7.1.tar.gz
+6a551247df6dfa2b5bfbb9a36e181ea685679208dc44401eb24cf3904dac7f7974c974d45878c3ee88e1b9e562f6355d942d28b1ec8513439e603e06f7f07352 smokeping-prober.initd
+a29cb9e49fc3a0be67368b9f8764a88563f600a29ebc5ee40629d1da96ca28034e73af18d9d1f0c9c77b9c75fa67c3d2dd5af3d233ee0dc9e9bfd89bcf60b60a smokeping-prober.confd
+"
diff --git a/testing/prometheus-postgres-exporter/prometheus-postgres-exporter.pre-install b/testing/prometheus-smokeping-prober/prometheus-smokeping-prober.pre-install
index 120995cf353..120995cf353 100755
--- a/testing/prometheus-postgres-exporter/prometheus-postgres-exporter.pre-install
+++ b/testing/prometheus-smokeping-prober/prometheus-smokeping-prober.pre-install
diff --git a/testing/prometheus-smokeping-prober/prometheus-smokeping-prober.pre-upgrade b/testing/prometheus-smokeping-prober/prometheus-smokeping-prober.pre-upgrade
new file mode 120000
index 00000000000..4b1792b9864
--- /dev/null
+++ b/testing/prometheus-smokeping-prober/prometheus-smokeping-prober.pre-upgrade
@@ -0,0 +1 @@
+prometheus-smokeping-prober.pre-install \ No newline at end of file
diff --git a/testing/prometheus-smokeping-prober/smokeping-prober.confd b/testing/prometheus-smokeping-prober/smokeping-prober.confd
new file mode 100644
index 00000000000..37c310bfbec
--- /dev/null
+++ b/testing/prometheus-smokeping-prober/smokeping-prober.confd
@@ -0,0 +1,7 @@
+# /etc/conf.d/prometheus-smokeping-prober
+
+# Custom arguments can be specified like:
+#
+# ARGS="--web.listen-address=':9100'"
+
+ARGS=""
diff --git a/testing/prometheus-smokeping-prober/smokeping-prober.initd b/testing/prometheus-smokeping-prober/smokeping-prober.initd
new file mode 100755
index 00000000000..418ef0732d3
--- /dev/null
+++ b/testing/prometheus-smokeping-prober/smokeping-prober.initd
@@ -0,0 +1,24 @@
+#!/sbin/openrc-run
+supervisor=supervise-daemon
+
+command="/usr/bin/smokeping_prober"
+command_args="$ARGS"
+command_background="yes"
+group="prometheus"
+user="prometheus"
+
+logdir="/var/log/prometheus"
+logfile="$logdir/${SVCNAME}.log"
+pidfile="/var/run/${SVCNAME}.pid"
+start_stop_daemon_args="--stderr $logfile --user $user --group $group"
+capabilities="^cap_net_raw"
+
+depend() {
+ need net
+ after firewall
+}
+
+start_pre() {
+ checkpath -d -o $user:$group -m755 $logdir
+ checkpath -f -o $user:$group -m644 $logfile
+}
diff --git a/testing/prometheus-unbound-exporter/APKBUILD b/testing/prometheus-unbound-exporter/APKBUILD
index 738ee981a1b..65a05d01f97 100644
--- a/testing/prometheus-unbound-exporter/APKBUILD
+++ b/testing/prometheus-unbound-exporter/APKBUILD
@@ -2,8 +2,8 @@
# Maintainer: Alex Denes <caskd@redxen.eu>
pkgname=prometheus-unbound-exporter
_pkgname=unbound_exporter
-pkgver=0.3
-pkgrel=3
+pkgver=0.4.1
+pkgrel=5
pkgdesc="Prometheus exporter for Unbound statistics"
url="https://github.com/letsencrypt/unbound_exporter"
license="Apache-2.0"
@@ -17,12 +17,16 @@ source="$_pkgname-$pkgver.tar.gz::https://github.com/letsencrypt/unbound_exporte
0001-dont-authenticate-by-default.patch
"
builddir="$srcdir/$_pkgname-$pkgver"
-export GOFLAGS="$GOFLAGS -modcacherw"
options="!check" # no test suite available
+export GOFLAGS="$GOFLAGS -modcacherw"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
build() {
go build \
- -ldflags "-s -w -X github.com/prometheus/common/version.Version=$pkgver" \
+ -ldflags "-X github.com/prometheus/common/version.Version=$pkgver" \
-v -o unbound_exporter
}
@@ -34,7 +38,7 @@ package() {
}
sha512sums="
-ab64dc2a894b07145e030f2cc6f21fe394ef4d3f328164342b9a779c197e9d630c0a881a66d93b316a5dd982463002f4b374de2c140e166e996fb170fa72ae64 unbound_exporter-0.3.tar.gz
+752a3d4903dc19c91484bad535df951ad8c8ab38ca3741493afe32472b9e873d6255039616974b36eae43b886f02b947b3418129af20eea01edb7f9ab05a7be9 unbound_exporter-0.4.1.tar.gz
99acbb1af5ea1d0f37ec282f8c5dfb884e1d184baa7d5cd0132e63da88defd170fb0db44c762b02a169d93677333231bfb1f7740a401b4e0d64217e8d38927a4 unbound-exporter.initd
2fecc0fdf9da9179ad24c14651efec341fccf3747d4570fe0ca5e1f5db1eb7ec49ce84add28d2804c03c95acd9762a660dfe5577fe26265ef35a82fa9c455aad unbound-exporter.confd
7f806a9a19da38e790c978c411f9f37e1ddda7e74b37b3c691111fe86c79957d9704f1b4ee15d25da54b749e2c7322c6833087618455d05be7768452f4522d50 0001-dont-authenticate-by-default.patch
diff --git a/testing/proot/APKBUILD b/testing/proot/APKBUILD
index e235d99eba9..11a52e1ad80 100644
--- a/testing/proot/APKBUILD
+++ b/testing/proot/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Daniel Santana <daniel@santana.tech>
# Maintainer: Daniel Santana <daniel@santana.tech>
pkgname=proot
-pkgver=5.3.1
+pkgver=5.4.0
pkgrel=0
pkgdesc="User-space implementation of chroot, mount --bind, and binfmt_misc"
url="https://proot-me.github.io"
@@ -51,6 +51,6 @@ static() {
}
sha512sums="
-fdeaa55bda71e4444c8f88160d89b91577b531d37b9e0f9317a983dfefabe154a4f2dc34f389e9fd89da53fe0789e93b156b3e01f75919bcd6e5ca9006b7a288 proot-5.3.1.tar.gz
+c4d7b7428758c0d8f6a89ecaa01d1d7d5d9663a84b7e730e8160bc2a2385a7e278589f5dd86f5cd4f8e0736f09b3097b9efea7814096fd2d28e6032435b9ee63 proot-5.4.0.tar.gz
d09de6d776072e9991abd04e294e6d36bd1634b9e972294a112526ebf3f63e919d01755de1ecd7253d614b41b07fe6882df8787c638b8576bcf2555abcafa466 tests-musl-compat.patch
"
diff --git a/testing/protoc-gen-go/APKBUILD b/testing/protoc-gen-go/APKBUILD
new file mode 100644
index 00000000000..bc728f74b75
--- /dev/null
+++ b/testing/protoc-gen-go/APKBUILD
@@ -0,0 +1,34 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=protoc-gen-go
+pkgver=1.32.0
+pkgrel=2
+pkgdesc="Protocol Buffers Go generator"
+url="https://github.com/protocolbuffers/protobuf-go"
+arch="all"
+license="BSD-3-Clause"
+depends="protoc"
+makedepends="go"
+source="$pkgname-$pkgver.tar.gz::https://github.com/protocolbuffers/protobuf-go/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/protobuf-go-$pkgver"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ go build -v \
+ -ldflags "-X google.golang.org/protobuf/internal/version.PreRelease=" \
+ ./cmd/protoc-gen-go/
+}
+
+check() {
+ go test ./...
+}
+
+package() {
+ install -Dm755 protoc-gen-go -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+dffb159952282db426af8759346441003b461c6c1dde3a84671f644892a8bce6d0a57bfd6f19ad9d48852bdd4bf52544aae3f8cce66d498eb15be0a3acb276ae protoc-gen-go-1.32.0.tar.gz
+"
diff --git a/testing/protoc-gen-js/APKBUILD b/testing/protoc-gen-js/APKBUILD
new file mode 100644
index 00000000000..c4c930e01a0
--- /dev/null
+++ b/testing/protoc-gen-js/APKBUILD
@@ -0,0 +1,30 @@
+# Maintainer:
+pkgname=protoc-gen-js
+pkgver=3.21.2
+pkgrel=1
+pkgdesc="protoc-gen-js javascript protobuf generator"
+url="https://github.com/protocolbuffers/protobuf-javascript"
+# bazel
+arch="x86_64"
+license="BSD-3-Clause AND Apache-2.0"
+depends="protoc"
+makedepends="bazel"
+source="$pkgname-$pkgver.tar.gz::https://github.com/protocolbuffers/protobuf-javascript/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/protobuf-javascript-$pkgver"
+# bazel stuff, no tests
+options="net !check"
+
+build() {
+ # prevent broken ccache use
+ JAVA_HOME=/usr/lib/jvm/java-11-openjdk \
+ PATH=/bin:/usr/bin \
+ bazel build plugin_files
+}
+
+package() {
+ install -Dm755 bazel-bin/generator/protoc-gen-js -t "$pkgdir"/usr/bin
+}
+
+sha512sums="
+afe5b16d1161a6a5e981976bfbdeaacdfcf6909126e55ee35f2513c3267c27870bde9fcd34fbd6aec22c79c41c975b643e26e24ce00b46c1814dfff24f542d48 protoc-gen-js-3.21.2.tar.gz
+"
diff --git a/testing/protoconf/APKBUILD b/testing/protoconf/APKBUILD
new file mode 100644
index 00000000000..6589ffe7175
--- /dev/null
+++ b/testing/protoconf/APKBUILD
@@ -0,0 +1,37 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=protoconf
+pkgver=0.1.7
+pkgrel=5
+pkgdesc="Configuration as Code framework based on protobuf and Starlark"
+url="https://docs.protoconf.sh/"
+arch="all"
+license="MIT"
+makedepends="go"
+source="$pkgname-$pkgver.tar.gz::https://github.com/protoconf/protoconf/archive/refs/tags/v$pkgver.tar.gz"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ go build -v \
+ -ldflags "-X github.com/protoconf/protoconf/consts.Version=$pkgver" \
+ ./cmd/protoconf/
+}
+
+check() {
+ # /importers/golang_importer: failed to load packages: err: chdir src/html/template
+ # /importers/terraform_importer: flaky network call to https://releases.hashicorp.com/terraform-provider-tfe
+ go test $(go list ./... | grep -v \
+ -e '/importers/golang_importer$' \
+ -e '/importers/terraform_importer$' \
+ )
+}
+
+package() {
+ install -Dm755 $pkgname -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+0652958a9a93b27959626da4a9b0feadbb97737a1d97f5dd2165609627626108af5c87304e3d5b5169a3008daf7cf644c1fdccce15406281766615bc4d17c35d protoconf-0.1.7.tar.gz
+"
diff --git a/testing/prowlarr/0001-disable-restart.patch b/testing/prowlarr/0001-disable-restart.patch
new file mode 100644
index 00000000000..8dc5aebe628
--- /dev/null
+++ b/testing/prowlarr/0001-disable-restart.patch
@@ -0,0 +1,20 @@
+Disable the restart functionality so the daemon can manage it.
+
+---
+ src/NzbDrone.Core/Lifecycle/LifecycleService.cs | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/src/NzbDrone.Core/Lifecycle/LifecycleService.cs b/src/NzbDrone.Core/Lifecycle/LifecycleService.cs
+index 9ed36a42e..565641284 100644
+--- a/src/NzbDrone.Core/Lifecycle/LifecycleService.cs
++++ b/src/NzbDrone.Core/Lifecycle/LifecycleService.cs
+@@ -46,8 +46,7 @@ public void Shutdown()
+ public void Restart()
+ {
+ _logger.Info("Restart requested.");
+-
+- _eventAggregator.PublishEvent(new ApplicationShutdownRequested(true));
++ _eventAggregator.PublishEvent(new ApplicationShutdownRequested());
+
+ if (_runtimeInfo.IsWindowsService)
+ {
diff --git a/testing/prowlarr/APKBUILD b/testing/prowlarr/APKBUILD
new file mode 100644
index 00000000000..132372132bc
--- /dev/null
+++ b/testing/prowlarr/APKBUILD
@@ -0,0 +1,98 @@
+# Contributor: Fabricio Silva <hi@fabricio.dev>
+# Maintainer: Fabricio Silva <hi@fabricio.dev>
+pkgname=prowlarr
+pkgver=1.15.0.4361
+pkgrel=0
+pkgdesc="Aggregator for usenet index and torrent tracker"
+url="https://github.com/Prowlarr/Prowlarr"
+arch="x86_64 aarch64 armv7"
+license="GPL-3.0-only"
+options="net !check" # no tests
+depends="
+ aspnetcore6-runtime
+ sqlite-libs
+ "
+makedepends="
+ dotnet6-sdk
+ yarn
+ "
+subpackages="$pkgname-openrc"
+install="$pkgname.pre-install"
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/Prowlarr/Prowlarr/archive/refs/tags/v$pkgver.tar.gz
+ 0001-disable-restart.patch
+ prowlarr.initd
+ prowlarr.confd
+ package_info
+ "
+builddir="$srcdir/Prowlarr-$pkgver"
+pkgusers="prowlarr"
+pkggroups="prowlarr"
+
+# map arch to dotnet
+case $CARCH in
+ x86_64) _dotnet_arch="x64" ;;
+ aarch64) _dotnet_arch="arm64" ;;
+ armv7) _dotnet_arch="arm" ;;
+ *) _dotnet_arch="$CARCH" ;;
+esac
+
+# custom variables
+_runtime="linux-musl-$_dotnet_arch"
+_framework="net6.0"
+_output="_output"
+_artifacts="$_output/$_framework/$_runtime/publish"
+
+prepare() {
+ default_prepare
+
+ # increase max opened files
+ ulimit -n 4096
+
+ # replace version info
+ local buildprops=src/Directory.Build.props
+ sed -i "/<AssemblyVersion>/s/>.*<\//>$pkgver<\//" "$buildprops"
+ sed -i "/<AssemblyConfiguration>/s/>.*<\//>master<\//" "$buildprops"
+
+ export BROWSERSLIST_IGNORE_OLD_DATA=true
+ yarn install --frozen-lockfile --network-timeout 120000
+}
+
+build() {
+ dotnet build src \
+ -p:RuntimeIdentifiers="$_runtime" \
+ -p:Configuration=Release \
+ -p:SelfContained=false \
+ -t:PublishAllRids
+ yarn build --env production --no-stats
+
+ # cleanup
+ find "$_artifacts" \( \
+ -name "ServiceUninstall.*" -o \
+ -name "ServiceInstall.*" -o \
+ -name "Prowlarr.Windows.*" \) -delete
+
+ mv "$_output"/UI "$_artifacts"
+}
+
+package() {
+ local DESTDIR="$pkgdir"/usr/lib/prowlarr
+
+ # use package_info to disable update feature
+ install -Dm644 "$srcdir"/package_info "$DESTDIR"/package_info
+ echo "PackageVersion=$pkgver-r$pkgrel" >>"$DESTDIR"/package_info
+
+ cp -af "$_artifacts" "$DESTDIR"/bin
+ chown -R "$pkgusers:$pkggroups" "$DESTDIR"
+
+ install -Dm755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
+ install -Dm644 "$srcdir"/$pkgname.confd "$pkgdir"/etc/conf.d/$pkgname
+}
+
+sha512sums="
+f82144968d778b2935b09ddef0246c9211909350a10d538745ae6fc08c2af0567f0992653937d1afdb8c13075ece8a65921459c51bd0a8e728a1aedfb64e74a3 prowlarr-1.15.0.4361.tar.gz
+753520379a6c5f2899b4ddfd820d5573598a32cb105f74c6fd978a3f2c98895cf709ef2d9afe2bae8c4856da86cb6a1364f5713ea7ef6a36bb21b5a5840c1471 0001-disable-restart.patch
+33de66749dc613a430ce00abcff070b646c80f158de2bf70c7078e5526f93348f24bb5d45ff55e3e06123aa4c849a8eebfebf941c8f9c54db87fa614bda679c7 prowlarr.initd
+1f073dd820a890e7d24d84e18763b04f07abd86a0370f56f7319c3e7c9da9d3e2be484e0cef2fb5fc4050be1cbb1e0445080d702d217393633256ed3758fc593 prowlarr.confd
+67c4dd1cf8259296d994c350dfd3962d23333071889ce0b4ef6b2f4cbb4349490c5dbe4dcc202c99bab7a5c4b7611be56d7c8835b2b13924526c45311db1c3fb package_info
+"
diff --git a/testing/prowlarr/package_info b/testing/prowlarr/package_info
new file mode 100644
index 00000000000..c2e444817cd
--- /dev/null
+++ b/testing/prowlarr/package_info
@@ -0,0 +1,4 @@
+# PackageVersion is added by APKBUILD
+PackageAuthor=[alpine](https://pkgs.alpinelinux.org/packages)
+UpdateMethod=External
+Branch=master
diff --git a/testing/prowlarr/prowlarr.confd b/testing/prowlarr/prowlarr.confd
new file mode 100644
index 00000000000..387687d5c99
--- /dev/null
+++ b/testing/prowlarr/prowlarr.confd
@@ -0,0 +1,9 @@
+# Prowlarr configuration options
+
+command_user="prowlarr:prowlarr" # user:group
+directory="/var/lib/prowlarr"
+supervisor="supervise-daemon"
+
+#logdir="/var/log/prowlarr"
+#error_log="$logdir/error.log"
+#output_log="$logdir/output.log"
diff --git a/testing/prowlarr/prowlarr.initd b/testing/prowlarr/prowlarr.initd
new file mode 100644
index 00000000000..14e5f07c67d
--- /dev/null
+++ b/testing/prowlarr/prowlarr.initd
@@ -0,0 +1,33 @@
+#!/sbin/openrc-run
+
+# fallback values for /etc/conf.d/prowlarr
+: ${command_user:=prowlarr:prowlarr}
+: ${directory:=/var/lib/prowlarr}
+
+name=prowlarr
+description="Prowlarr daemon"
+command="/usr/lib/prowlarr/bin/Prowlarr"
+command_args="-nobrowser -data=$directory"
+command_background=true
+pidfile="/run/$name.pid"
+
+depend() {
+ need net
+ use dns logger netmount
+}
+
+start_pre() {
+ checkpath -d -o "$command_user" "$directory"
+
+ if [ -n "$logdir" ]; then
+ checkpath -d -o "$command_user" "$logdir"
+ fi
+
+ if [ -n "$output_log" ]; then
+ checkpath -f -o "$command_user" "$output_log"
+ fi
+
+ if [ -n "$error_log" ]; then
+ checkpath -f -o "$command_user" "$error_log"
+ fi
+}
diff --git a/testing/prowlarr/prowlarr.pre-install b/testing/prowlarr/prowlarr.pre-install
new file mode 100644
index 00000000000..79d527ee989
--- /dev/null
+++ b/testing/prowlarr/prowlarr.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S prowlarr 2>/dev/null
+adduser -S -D -h /var/lib/prowlarr -s /sbin/nologin -G prowlarr -g prowlarr prowlarr 2>/dev/null
+
+exit 0
diff --git a/testing/psi-notify/APKBUILD b/testing/psi-notify/APKBUILD
index b6650a2f547..7545f48756d 100644
--- a/testing/psi-notify/APKBUILD
+++ b/testing/psi-notify/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Michał Polański <michal@polanski.me>
# Maintainer: Michał Polański <michal@polanski.me>
pkgname=psi-notify
-pkgver=1.2.1
+pkgver=1.3.1
pkgrel=0
pkgdesc="Notifier for system-wide resource pressure using PSI"
url="https://github.com/cdown/psi-notify"
@@ -27,5 +27,5 @@ package() {
}
sha512sums="
-47fc8d7dff0af1771d6095641b3ee89954aec49b647246c4384b420aeeb46867cfbf800e22ba9351e3f0c039970f8d011897050ddc3a59cef439d8dedbf04f9a psi-notify-1.2.1.tar.gz
+bfc61e212097af53e6afdb916996418c7d05550a6bdf799f461da8d44bd2215e4a6a8d91b421b9c24326cf0d64e3a9e00fb8de87fb3aed4d1aa6018f289f62e8 psi-notify-1.3.1.tar.gz
"
diff --git a/testing/psi-plus/APKBUILD b/testing/psi-plus/APKBUILD
new file mode 100644
index 00000000000..e1eae3171a7
--- /dev/null
+++ b/testing/psi-plus/APKBUILD
@@ -0,0 +1,59 @@
+# Maintainer: Cowington Post <cowingotnpost@gmail.com>
+pkgname=psi-plus
+pkgver=1.5.1653
+pkgrel=0
+pkgdesc="Powerful XMPP (Jabber) client (Qt, C++) designed for power users"
+url="https://psi-plus.com/"
+# ppc64le, s390x, riscv64: qt5-qtwebengine missing
+arch="all !ppc64le !s390x !riscv64"
+license="GPL-2.0"
+makedepends="
+ cmake
+ hunspell-dev
+ libidn-dev
+ libotr-dev
+ libsignal-protocol-c-dev
+ libusrsctp-dev
+ qca-dev
+ qt5-qtbase-dev
+ qt5-qtmultimedia-dev
+ qt5-qtsvg-dev
+ qt5-qtwebengine-dev
+ qt5-qtx11extras-dev
+ samurai
+ tidyhtml-dev
+ "
+subpackages="$pkgname-plugins"
+source="https://github.com/psi-plus/psi-plus-snapshots/archive/$pkgver/psi-plus-$pkgver.tar.gz"
+builddir="$srcdir/psi-plus-snapshots-$pkgver"
+options="!check" # no tests
+
+build() {
+ if [ "$CBUILD" != "$CHOST" ]; then
+ local crossopts="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCHAT_TYPE=webengine\
+ -DUSE_XSS=0 \
+ -DPSI_PLUS=1 \
+ -DENABLE_PLUGINS=ON \
+ -DBUILD_DEV_PLUGINS=ON \
+ $crossopts
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+plugins() {
+ amove usr/lib/psi-plus/plugins
+}
+
+sha512sums="
+c86f6701717ea2208c8ed95fd1b558d4848880fd479e18d09f97ab05e14c9854972369dfcd8d28ef20b5fb02d12fa812a0a5acd54281a80b2f5c3134e54ab8c5 psi-plus-1.5.1653.tar.gz
+"
diff --git a/testing/pspp/APKBUILD b/testing/pspp/APKBUILD
index d7d1d28f99d..98c0eecb9b9 100644
--- a/testing/pspp/APKBUILD
+++ b/testing/pspp/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
pkgname=pspp
pkgver=1.4.1
-pkgrel=1
+pkgrel=3
pkgdesc="GNU PSPP is a program for statistical analysis of sampled data"
url="https://www.gnu.org/software/pspp/"
arch="all"
diff --git a/testing/ptpd/APKBUILD b/testing/ptpd/APKBUILD
index eafd866f41e..3429949671f 100644
--- a/testing/ptpd/APKBUILD
+++ b/testing/ptpd/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Denis Tolstov <tolstov_den@mail.ru>
pkgname=ptpd
pkgver=2.3.1
-pkgrel=0
+pkgrel=1
pkgdesc="Precision Time Protocol daemon"
options="!check" # No testsuite
url="https://github.com/ptpd/ptpd"
diff --git a/testing/ptylie/APKBUILD b/testing/ptylie/APKBUILD
index 878cd14d64a..26dcb175d10 100644
--- a/testing/ptylie/APKBUILD
+++ b/testing/ptylie/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=ptylie
pkgver=0.2
-pkgrel=0
+pkgrel=1
pkgdesc="Record a terminal session with automatic keyboard entry"
url="https://github.com/p-gen/ptylie"
arch="all"
diff --git a/testing/pulsar-client-cpp/0001-boost-lib-python-310.patch b/testing/pulsar-client-cpp/0001-boost-lib-python-310.patch
deleted file mode 100644
index afd44177b10..00000000000
--- a/testing/pulsar-client-cpp/0001-boost-lib-python-310.patch
+++ /dev/null
@@ -1,24 +0,0 @@
---- a/python/CMakeLists.txt
-+++ b/python/CMakeLists.txt
-@@ -60,6 +60,11 @@
- set(Boost_PYTHON39-MT_LIBRARY ${Boost_PYTHON39_LIBRARY})
- endif()
-
-+if (NOT DEFINED ${Boost_PYTHON310-MT_LIBRARY})
-+ set(Boost_PYTHON310-MT_LIBRARY ${Boost_PYTHON310_LIBRARY})
-+endif()
-+
-+
- # Try all possible boost-python variable namings
- set(PYTHON_WRAPPER_LIBS ${Boost_PYTHON_LIBRARY}
- ${Boost_PYTHON3_LIBRARY}
-@@ -69,7 +74,8 @@
- ${Boost_PYTHON35_LIBRARY}
- ${Boost_PYTHON36_LIBRARY}
- ${Boost_PYTHON38_LIBRARY}
-- ${Boost_PYTHON39_LIBRARY})
-+ ${Boost_PYTHON39_LIBRARY}
-+ ${Boost_PYTHON310_LIBRARY})
-
- if (APPLE)
- set(PYTHON_WRAPPER_LIBS ${PYTHON_WRAPPER_LIBS}
diff --git a/testing/pulsar-client-cpp/APKBUILD b/testing/pulsar-client-cpp/APKBUILD
index af5fd5c86c1..eaa7cb62958 100644
--- a/testing/pulsar-client-cpp/APKBUILD
+++ b/testing/pulsar-client-cpp/APKBUILD
@@ -1,34 +1,32 @@
# Contributor: Alex Yam <alex@alexyam.com>
# Maintainer: Alex Yam <alex@alexyam.com>
pkgname=pulsar-client-cpp
-pkgver=2.9.2
-pkgrel=1
+pkgver=3.1.2
+pkgrel=3
pkgdesc="Apache Pulsar C++ client"
-url="https://pulsar.apache.org/docs/en/client-libraries-cpp/"
+url="https://github.com/apache/pulsar-client-cpp"
arch="all"
# Apache-2.0 : pulsar
# BSD-2-Clause : pulsar-client-cpp/lib/lz4/lz4.{h,c}
# Zlib : pulsar-client-cpp/lib/checksum/crc32c_sw.cc
license="Apache-2.0 AND BSD-2-Clause AND Zlib"
-subpackages="$pkgname-static $pkgname-dev py3-pulsar-client-cpp:_py3"
+subpackages="$pkgname-dev"
options="!check" # test requires docker/java/pulsar-server
-depends_dev="$pkgname"
+depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="
boost-dev
cmake
curl-dev
- openssl-dev
+ openssl-dev>3
protobuf-dev
- py3-setuptools
- python3-dev
samurai
snappy-dev
zstd-dev
"
-source="apache-pulsar-$pkgver-src.tar.gz::https://www.apache.org/dyn/mirrors/mirrors.cgi?action=download&filename=pulsar/pulsar-$pkgver/apache-pulsar-$pkgver-src.tar.gz
- 0001-boost-lib-python-310.patch
+source="$pkgname-$pkgver.tar.gz::https://github.com/apache/pulsar-client-cpp/archive/refs/tags/v$pkgver.tar.gz
+ cxx17.patch
+ no-werror.patch
"
-builddir="$srcdir/apache-pulsar-$pkgver-src/pulsar-client-cpp"
build() {
if [ "$CBUILD" != "$CHOST" ]; then
@@ -36,15 +34,14 @@ build() {
fi
cmake -B build -G Ninja \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
+ -DBUILD_SHARED_LIBS=ON \
-DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_SKIP_BUILD_RPATH=true \
+ -DCMAKE_SKIP_BUILD_RPATH=ON \
-DBUILD_DYNAMIC_LIB=ON \
-DBUILD_PERF_TOOLS=OFF \
- -DBUILD_PYTHON_WRAPPER=ON \
- -DBUILD_STATIC_LIB=ON \
+ -DBUILD_STATIC_LIB=OFF \
-DBUILD_TESTS=OFF \
+ -DLIBRARY_VERSION=$pkgver \
$CMAKE_CROSSOPTS .
cmake --build build
}
@@ -53,15 +50,8 @@ package() {
DESTDIR="$pkgdir" cmake --install build
}
-_py3() {
- pkgdesc="Python bindings for Apache Pulsar C++ client"
- depends="python3"
- cd "$builddir"/python
- mv ../build/python/_pulsar.so .
- python3 setup.py install --prefix=/usr --root="$subpkgdir"
-}
-
sha512sums="
-c06f8a778e772aedb360268e4858bf6e6f544f05a753daf9f63a672ad6902056d1a7c3ec22ecd73d6dacbfe6c0adffcc69206e19b688bf2e275206439b428eed apache-pulsar-2.9.2-src.tar.gz
-3990e76ac499ff42d6f416142d6e50464294acf3bcb9be6240a470ab34027867015681db07a03d5b3b37f4f083f14694e14b0f72745c3bebd9fcdb3123835e9c 0001-boost-lib-python-310.patch
+9339eab337ab08a7ba3c52d96e017bc11fbfd604e65a9820d78348ed4adba285d3380738a063311b0cb542d17299b2770936f8a2be6d5cb8fa85b0e339bd6f0b pulsar-client-cpp-3.1.2.tar.gz
+20591a050403d9e49a75c52cba1555a3568d7ec85212d051808ac6e308d8adcc846df25e2f0d14dda0a75ccadace346e9b95a13508b31c31be661a96cbf9e2f4 cxx17.patch
+6a757a63ae380de1d9b068a8567aad34a90cf8caa01dee48091d1cfa6c5584cd619392896c4bbfa4695e3def5934e87b5cdcf363217a0020f1784e36a976f08d no-werror.patch
"
diff --git a/testing/pulsar-client-cpp/cxx17.patch b/testing/pulsar-client-cpp/cxx17.patch
new file mode 100644
index 00000000000..d1c07ec727c
--- /dev/null
+++ b/testing/pulsar-client-cpp/cxx17.patch
@@ -0,0 +1,13 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 0e346e5..ed267a9 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -88,7 +88,7 @@ find_package(Threads REQUIRED)
+ MESSAGE(STATUS "Threads library: " ${CMAKE_THREAD_LIBS_INIT})
+
+ set(Boost_NO_BOOST_CMAKE ON)
+-set(CMAKE_CXX_STANDARD 11)
++set(CMAKE_CXX_STANDARD 17)
+ set(CMAKE_C_STANDARD 11)
+
+ # Compiler specific configuration:
diff --git a/testing/pulsar-client-cpp/no-werror.patch b/testing/pulsar-client-cpp/no-werror.patch
new file mode 100644
index 00000000000..c7b7c8836c9
--- /dev/null
+++ b/testing/pulsar-client-cpp/no-werror.patch
@@ -0,0 +1,13 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 7db05c4..0e346e5 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -100,7 +100,7 @@ elseif (CMAKE_CXX_COMPILER_ID STREQUAL "Intel")
+ # ?? Don't have this to test with
+ else() # GCC or Clang are mostly compatible:
+ # Turn on warnings and enable warnings-as-errors:
+- add_compile_options(-Wall -Wformat-security -Wvla -Werror)
++ add_compile_options(-Wall -Wformat-security -Wvla)
+ # Turn off certain warnings that are too much pain for too little gain:
+ add_compile_options(-Wno-sign-compare -Wno-deprecated-declarations -Wno-error=cpp)
+ if (CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64" OR APPLE)
diff --git a/testing/pulseaudio-modules-bt/APKBUILD b/testing/pulseaudio-modules-bt/APKBUILD
deleted file mode 100644
index 2ff073a0581..00000000000
--- a/testing/pulseaudio-modules-bt/APKBUILD
+++ /dev/null
@@ -1,56 +0,0 @@
-# Contributor: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
-# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
-# This APKBUILD is looking for a new maintainer
-pkgname=pulseaudio-modules-bt
-pkgver=1.4
-pkgrel=3
-# TODO: Package libldacBT, so that this also provides LDAC support
-pkgdesc="Pulseaudio bluetooth with support for APTX, APTX-HD, AAC"
-url="https://github.com/EHfive/pulseaudio-modules-bt"
-arch="all"
-license="GPL-3.0-only"
-_pulseaudio_ver=15.0
-makedepends="
- bluez-dev
- cmake
- dbus-dev
- ffmpeg4-dev
- libtool
- pulseaudio-dev
- samurai
- sbc-dev
- fdk-aac-dev
- "
-source="
- $pkgname.tar.gz::https://github.com/EHfive/pulseaudio-modules-bt/archive/v$pkgver.tar.gz
- https://freedesktop.org/software/pulseaudio/releases/pulseaudio-$_pulseaudio_ver.tar.xz
- "
-provides="pulseaudio-bluez=$_pulseaudio_ver"
-options="!check" # no unit tests provided
-
-prepare() {
- default_prepare
-
- # As this provides a pulseaudio module, the internal pulseaudio API is used.
- # This API is not provided by pulseaudio-dev, so we make the headers
- # available directly from source.
- rm -rf pa
- ln -sf ../pulseaudio-$_pulseaudio_ver pa
-}
-
-build() {
- cmake -G Ninja -B build \
- -DCMAKE_BUILD_TYPE=MinSizeRel \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --build build --target install
-}
-
-sha512sums="
-390b6ad0931b464a546c6624bec38cc5b6da7084e4defe2045f4164b0c910a9dd6d4327466eb0e53fcfbc78c995cf2e3634a75b67ee2a14f38ed18e31b5d2bce pulseaudio-modules-bt.tar.gz
-352ef20384c76c631c0faa73b08e2318902a433712e0c086a5ac7a0ae58873c8d4be8f35879bdec71a93b19ae8e2ba073cacac4d56215bcf58375a0cd9d88833 pulseaudio-15.0.tar.xz
-"
diff --git a/testing/pulseview/APKBUILD b/testing/pulseview/APKBUILD
index 63e4f63377d..9c11617d3ae 100644
--- a/testing/pulseview/APKBUILD
+++ b/testing/pulseview/APKBUILD
@@ -1,11 +1,21 @@
# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
pkgname=pulseview
pkgver=0.4.2
-pkgrel=3
+pkgrel=7
pkgdesc="QT-based GUI frontend for sigrok"
url="https://sigrok.org/wiki/PulseView"
-makedepends="libserialport-dev libsigrok-dev libsigrokdecode-dev glibmm-dev
- qt5-qtbase-dev qt5-qtsvg-dev boost-dev cmake qt5-qttools-dev"
+makedepends="
+ boost-dev
+ cmake
+ glibmm-dev
+ libserialport-dev
+ libsigrok-dev
+ libsigrokdecode-dev
+ qt5-qtbase-dev
+ qt5-qtsvg-dev
+ qt5-qttools-dev
+ samurai
+ "
# Without qt5-qtsvg some icons in the GUI are missing
depends="qt5-qtsvg"
arch="all !riscv64" # fails to build on riscv64
@@ -18,7 +28,8 @@ source="http://sigrok.org/download/source/pulseview/pulseview-$pkgver.tar.gz
subpackages="$pkgname-doc"
build() {
- cmake . -DCMAKE_INSTALL_PREFIX=/usr \
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_BINDIR=/usr/bin \
-DCMAKE_INSTALL_SBINDIR=/usr/sbin \
-DCMAKE_INSTALL_SYSCONFDIR=/etc/hiawatha \
@@ -26,15 +37,15 @@ build() {
-DCMAKE_INSTALL_MANDIR=/usr/share/man \
-DENABLE_TESTS=y \
-DENABLE_DECODE=y
- make
+ cmake --build build
}
check() {
- ctest --output-on-failure
+ ctest --output-on-failure --test-dir build
}
package() {
- make DESTDIR="$pkgdir" install
+ DESTDIR="$pkgdir" cmake --install build
}
sha512sums="
diff --git a/testing/pulumi-watch/APKBUILD b/testing/pulumi-watch/APKBUILD
new file mode 100644
index 00000000000..8729efed3fc
--- /dev/null
+++ b/testing/pulumi-watch/APKBUILD
@@ -0,0 +1,35 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=pulumi-watch
+pkgver=0.1.5
+pkgrel=2
+pkgdesc="Helper utility for pulumi watch command"
+url="https://github.com/pulumi/watchutil-rs"
+# blocked by pulumi
+arch="x86_64 aarch64"
+license="Apache-2.0"
+makedepends="cargo cargo-auditable"
+depends="pulumi"
+source="$pkgname-$pkgver.tar.gz::https://github.com/pulumi/watchutil-rs/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/watchutil-rs-$pkgver"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm755 target/release/pulumi-watch -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+61ddd07f533811badc269332e97f3e9f6337bb3c22e4c5d237bec03596791ca900b408edc7cd57b4474ac7256a283865936d99ad70d4690667e4f481aa62865b pulumi-watch-0.1.5.tar.gz
+"
diff --git a/testing/pulumi/10-install1.patch b/testing/pulumi/10-install1.patch
deleted file mode 100644
index 685f493b179..00000000000
--- a/testing/pulumi/10-install1.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-Workaround some issues with the pulumi build pipeline.
-Currently the build system doesn't quite provide a way to build
-just the native components we need to apk package.
-
-diff --git a/Makefile b/Makefile
-index 0b81a9de2..26a2f8e8a 100644
---- a/Makefile
-+++ b/Makefile
-@@ -53,6 +56,8 @@ install:: generate
-
- install_all:: install
-
-+install_plugin_all:: install
-+
- dist:: build
- cd pkg && go install -ldflags "-X github.com/pulumi/pulumi/pkg/v2/version.Version=${VERSION}" ${PROJECT}
-
-diff --git a/build/common.mk b/build/common.mk
-index 20690ac23..c49c5fbd3 100644
---- a/build/common.mk
-+++ b/build/common.mk
-@@ -128,6 +128,7 @@ only_test_fast:: $(SUB_PROJECTS:%=%_only_test_fast)
- default:: $(SUB_PROJECTS:%=%_default)
- all:: $(SUB_PROJECTS:%=%_all)
- install_all:: $(SUB_PROJECTS:%=%_install_all)
-+install_plugin_all:: $(SUB_PROJECTS:%=%_install_plugin_all)
- test_all:: $(SUB_PROJECTS:%=%_test_all)
- ensure:: $(SUB_PROJECTS:%=%_ensure)
- dist:: $(SUB_PROJECTS:%=%_dist)
-@@ -212,6 +213,8 @@ $(SUB_PROJECTS:%=%_build):
- @$(MAKE) -C ./$(@:%_build=%) build
- $(SUB_PROJECTS:%=%_install_all):
- @$(MAKE) -C ./$(@:%_install_all=%) install
-+$(SUB_PROJECTS:%=%_install_plugin_all):
-+ @$(MAKE) -C ./$(@:%_install_plugin_all=%) install_plugin
- $(SUB_PROJECTS:%=%_lint):
- @$(MAKE) -C ./$(@:%_lint=%) lint
- $(SUB_PROJECTS:%=%_test_fast):
-diff --git a/sdk/nodejs/Makefile b/sdk/nodejs/Makefile
-index 3c5769223..04d92bcfb 100644
---- a/sdk/nodejs/Makefile
-+++ b/sdk/nodejs/Makefile
-@@ -32,11 +32,11 @@ build_plugin::
-
- build:: build_package build_plugin
-
--install_package:: build
-+install_package:: build_package
- cp dist/pulumi-resource-pulumi-nodejs "$(PULUMI_BIN)"
- cp dist/pulumi-analyzer-policy "$(PULUMI_BIN)"
-
--install_plugin:: build
-+install_plugin:: build_plugin
- GOBIN=$(PULUMI_BIN) go install -ldflags "-X github.com/pulumi/pulumi/sdk/v2/go/common/version.Version=${VERSION}" ${LANGUAGE_HOST}
-
- install:: install_package install_plugin
diff --git a/testing/pulumi/APKBUILD b/testing/pulumi/APKBUILD
deleted file mode 100644
index 5e032cbacf9..00000000000
--- a/testing/pulumi/APKBUILD
+++ /dev/null
@@ -1,41 +0,0 @@
-# Contributor: Fraser Waters <frassle@gmail.com>
-# Maintainer: Fraser Waters <frassle@gmail.com>
-pkgname=pulumi
-pkgver=2.20.0
-pkgrel=7
-pkgdesc="Pulumi's Infrastructure as Code SDK"
-url="https://github.com/pulumi/pulumi"
-# x86_64 is the only supported architecture by pulumi
-arch="x86_64"
-license="Apache-2.0"
-depends="ca-certificates"
-makedepends="go bash"
-source="$pkgname-$pkgver.tar.gz::https://github.com/pulumi/pulumi/archive/v$pkgver.tar.gz
- 10-install1.patch
- "
-builddir="$srcdir/github.com/pulumi/$pkgname"
-
-prepare() {
- mkdir -p ${builddir%/*}
- mv $srcdir/$pkgname-$pkgver "$builddir"/
- mkdir -p "$srcdir"/opt
- default_prepare
-}
-
-build() {
- export GOFLAGS="$GOFLAGS -modcacherw"
- PULUMI_VERSION="v$pkgver" PULUMI_ROOT="$srcdir"/opt GOPATH="$srcdir" make install_plugin_all
-}
-
-check() {
- # It would be good to at least run the fast tests but this hits OOM on the alpine pipelines
- # PULUMI_ROOT="$srcdir"/opt GOPATH="$srcdir" make test_fast
- [ "$("$srcdir"/opt/bin/"$pkgname" version)" == "v$pkgver" ]
-}
-
-package() {
- install -Dm755 -t "$pkgdir"/usr/bin "$srcdir"/opt/bin/*
-}
-
-sha512sums="7b756336fd0259027a1e22ecf8fb26efaaa3653943e4d3c653d9c35a9fa1312a886d2fb18efdf82fe7f1a9c4ade1d690d8e85ec811f8b606d76e5efde38796f7 pulumi-2.20.0.tar.gz
-96783665ebb3993ef767d1e35781901ef115508c527e868c5816e37850b2e28372b11f1878c5c18c3cd276041cb85761ee50a1d838cf95dc21f19befb895bfca 10-install1.patch"
diff --git a/testing/pure-data/APKBUILD b/testing/pure-data/APKBUILD
new file mode 100644
index 00000000000..67784a4a16f
--- /dev/null
+++ b/testing/pure-data/APKBUILD
@@ -0,0 +1,80 @@
+# Maintainer:
+pkgname=pure-data
+pkgver=0.54.1
+_pkgver=0.54-1
+_icon=9e4f117ade0bc1da951981128998ad82fff83b0c
+pkgrel=0
+pkgdesc="Pure Data real-time music and multimedia environment"
+url="https://puredata.info"
+arch="aarch64 x86_64"
+license="BSD-3-Clause"
+makedepends="
+ alsa-lib-dev
+ autoconf
+ automake
+ fftw-dev
+ jack-dev
+ libtool
+ portaudio-dev
+ portmidi-dev
+ tk-dev
+ "
+subpackages="$pkgname-doc $pkgname-libs $pkgname-dev"
+source="https://msp.puredata.info/Software/pd-$_pkgver.src.tar.gz
+ pd-$_icon.svg::https://raw.githubusercontent.com/pure-data/pd-icon/$_icon/masters/icon.svg
+ system-portmidi.patch
+ implicit.patch
+ "
+builddir="$srcdir/pd-$_pkgver"
+options="!check" # no tests
+
+prepare() {
+ default_prepare
+
+ NOCONFIGURE=1 ./autogen.sh
+}
+
+build() {
+ CFLAGS="$CFLAGS -O2 -flto=auto" \
+ EXTERNAL_LDFLAGS="$LDFLAGS" \
+ ./configure \
+ --prefix=/usr \
+ --host=$CHOST \
+ --build=$CBUILD \
+ --enable-fftw \
+ --enable-alsa \
+ --enable-jack \
+ --enable-libpd \
+ --enable-libpd-utils \
+ --enable-libpd-instance \
+ --enable-libpd-extras \
+ --disable-oss \
+ --disable-static \
+ --without-local-portaudio \
+ --without-local-portmidi
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+
+ ln -sfv ../../../bin/pd "$pkgdir"/usr/lib/pd/bin/pd
+
+ install -Dm644 "$srcdir"/pd-$_icon.svg \
+ "$pkgdir"/usr/share/icons/hicolor/scalable/apps/pd.svg
+
+ rm -r "$pkgdir"/usr/share/pixmaps
+}
+
+doc() {
+ default_doc
+
+ amove usr/lib/pd/doc
+}
+
+sha512sums="
+619a4bb9ddb13fdc278e868c98c8715e1251936f34d5d43da275cf4c9fdd18aa4a140c7def7e6201b6aa0ea3193afc65afe85efd44139a4534b332187b675a55 pd-0.54-1.src.tar.gz
+8d8b274e159bd4cc6a83d5d9d5019b106a74fa61943b36e2a56336b9c3c2c1b1092ce7f79f5264eb69ca43a9360404b800df338b2ad738ca3c237a8ae3c9c41d pd-9e4f117ade0bc1da951981128998ad82fff83b0c.svg
+8a346e9ecfe31de92639ca546bbdf7f9c55d3123bf71dcaeea77b55fdf0b9ec5850b23c2b25396b9b7bec46c0b0bdcae9eaf4c5d35d0425a4ae5f592401ceccf system-portmidi.patch
+ac563547cc677cda793badb7994548867e7f55c1a59167de7e92f871f711b6f1fa188e9fa30413a27e8d76adbd01e7a795a577bfc3599f91a60b055ea25d21a0 implicit.patch
+"
diff --git a/testing/pure-data/implicit.patch b/testing/pure-data/implicit.patch
new file mode 100644
index 00000000000..999a4d5ced0
--- /dev/null
+++ b/testing/pure-data/implicit.patch
@@ -0,0 +1,12 @@
+diff --git a/src/d_fft_fftw.c b/src/d_fft_fftw.c
+index 10d1ce4..200eaf5 100644
+--- a/src/d_fft_fftw.c
++++ b/src/d_fft_fftw.c
+@@ -7,6 +7,7 @@
+ /* changes and additions for FFTW3 by Thomas Grill */
+
+ #include "m_pd.h"
++#include "m_imp.h"
+ #include <fftw3.h>
+
+ int ilog2(int n);
diff --git a/testing/pure-data/system-portmidi.patch b/testing/pure-data/system-portmidi.patch
new file mode 100644
index 00000000000..7e6322ff7d6
--- /dev/null
+++ b/testing/pure-data/system-portmidi.patch
@@ -0,0 +1,28 @@
+Patch-Source: https://github.com/archlinux/svntogit-community/blob/9d9b3d8f2b48a61848634ef48812a72b574ddd2c/trunk/pd-0.52.1-system_portmidi.patch
+--
+diff -ruN a/configure.ac b/configure.ac
+--- a/configure.ac 2021-12-20 00:21:34.000000000 +0100
++++ b/configure.ac 2021-12-20 18:37:26.445665793 +0100
+@@ -422,9 +422,7 @@
+ portmidi=no])
+ AS_IF([test x$portmidi = xyes],[
+ AS_IF([test x$local_portmidi = xno],[
+- # fall back to local portmidi if not foud
+- AC_CHECK_LIB([portmidi], [Pm_Initialize],
+- [AC_MSG_NOTICE([Using system PortMidi])], [local_portmidi=yes])
++ PKG_CHECK_MODULES([LIBPORTMIDI], [portmidi])
+ ])
+ AS_IF([test x$local_portmidi = xyes],[
+ AS_IF([test -d "$srcdir/portmidi"],[
+diff -ruN a/src/Makefile.am b/src/Makefile.am
+--- a/src/Makefile.am 2021-12-20 00:21:34.000000000 +0100
++++ b/src/Makefile.am 2021-12-20 18:37:51.975761871 +0100
+@@ -292,7 +292,7 @@
+ pd_LDADD_standalone += $(top_builddir)/portmidi/libportmidi.a
+ else
+ # link the system's portmidi
+-pd_LDADD_standalone += -lportmidi
++pd_LDADD_standalone += @LIBPORTMIDI_LIBS@
+ endif
+
+ # need Carbon framework for PM on Mac
diff --git a/testing/pw-volume/APKBUILD b/testing/pw-volume/APKBUILD
index 088d2c4ae6f..864217211a6 100644
--- a/testing/pw-volume/APKBUILD
+++ b/testing/pw-volume/APKBUILD
@@ -1,30 +1,31 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=pw-volume
-pkgver=0.2.0
-pkgrel=0
+pkgver=0.5.0
+pkgrel=1
pkgdesc="Basic interface to PipeWire volume controls"
url="https://github.com/smasher164/pw-volume"
-arch="aarch64 armhf armv7 ppc64le x86 x86_64" # limited by rust/cargo
+arch="all !s390x" # blocked by pipewire -> libcamera -> libcamera-ipa
license="MIT"
depends="cmd:pw-cli cmd:pw-dump"
-makedepends="cargo"
-source="https://github.com/smasher164/pw-volume/archive/v$pkgver/pw-volume-$pkgver.tar.gz"
-options="!check" # no tests provided
+makedepends="cargo cargo-auditable"
+source="https://github.com/smasher164/pw-volume/archive/v$pkgver/pw-volume-$pkgver.tar.gz
+ update-lockfile.patch
+ "
+# !check: no tests provided
+# net: fetch dependencies
+options="!check net"
-export CARGO_PROFILE_RELEASE_CODEGEN_UNITS=1
-export CARGO_PROFILE_RELEASE_LTO="true"
export CARGO_PROFILE_RELEASE_OPT_LEVEL="z"
-export CARGO_PROFILE_RELEASE_PANIC="abort"
prepare() {
default_prepare
- cargo fetch --locked
+ cargo fetch --target="$CTARGET" --locked
}
build() {
- cargo build --frozen --release
+ cargo auditable build --frozen --release
}
check() {
@@ -36,5 +37,6 @@ package() {
}
sha512sums="
-0b78fb73937ff3bf4511c9be1db3e69f3f8984f89301a128a396443980f719c0cbb5df80d6268611042df743f197a6780af9c00d3a2bd9d8798dbd5ac2b093bb pw-volume-0.2.0.tar.gz
+05de82e615dee4e599a786d7b384534462042547b3a26b910b475e7d2c77fa4926325a0e21cd78610aa37e11d523aac996a351a2127b74f15ac0469144a1e337 pw-volume-0.5.0.tar.gz
+4cedcb45535611376e75439a279d9f17dff4e15d62864c630c00ea36df4b939d1f2e8b15200181f3c83500ef8197367777558f4e0c5c7d3d48888dfa812b73ce update-lockfile.patch
"
diff --git a/testing/pw-volume/update-lockfile.patch b/testing/pw-volume/update-lockfile.patch
new file mode 100644
index 00000000000..ff43687bffb
--- /dev/null
+++ b/testing/pw-volume/update-lockfile.patch
@@ -0,0 +1,180 @@
+diff --git a/Cargo.lock b/Cargo.lock
+index d9447ab..a57dfca 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -4,18 +4,18 @@ version = 3
+
+ [[package]]
+ name = "ansi_term"
+-version = "0.11.0"
++version = "0.12.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b"
++checksum = "d52a9bb7ec0cf484c551830a7ce27bd20d67eac647e1befb56b0be4ee39a55d2"
+ dependencies = [
+ "winapi",
+ ]
+
+ [[package]]
+ name = "anyhow"
+-version = "1.0.56"
++version = "1.0.69"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "4361135be9122e0870de935d7c439aef945b9f9ddd4199a553b5270b49c82a27"
++checksum = "224afbd727c3d6e4b90103ece64b8d1b67fbb1973b1046c2281eed3f3803f800"
+
+ [[package]]
+ name = "atty"
+@@ -42,9 +42,9 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
+
+ [[package]]
+ name = "clap"
+-version = "2.33.3"
++version = "2.34.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "37e58ac78573c40708d45522f0d80fa2f01cc4f9b4e2bf749807255454312002"
++checksum = "a0610544180c38b88101fecf2dd634b174a62eef6946f84dfc6a7127512b381c"
+ dependencies = [
+ "ansi_term",
+ "atty",
+@@ -72,9 +72,9 @@ checksum = "fad582f4b9e86b6caa621cabeb0963332d92eea04729ab12892c2533951e6440"
+
+ [[package]]
+ name = "libc"
+-version = "0.2.107"
++version = "0.2.139"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "fbe5e23404da5b4f555ef85ebed98fb4083e55a00c317800bc2a50ede9f3d219"
++checksum = "201de327520df007757c1f0adce6e827fe8562fbc28bfd9c15571c66ca1f5f79"
+
+ [[package]]
+ name = "proc-macro-error"
+@@ -102,11 +102,11 @@ dependencies = [
+
+ [[package]]
+ name = "proc-macro2"
+-version = "1.0.32"
++version = "1.0.51"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "ba508cc11742c0dc5c1659771673afbab7a0efab23aa17e854cbab0837ed0b43"
++checksum = "5d727cae5b39d21da60fa540906919ad737832fe0b1c165da3a34d6548c849d6"
+ dependencies = [
+- "unicode-xid",
++ "unicode-ident",
+ ]
+
+ [[package]]
+@@ -122,33 +122,33 @@ dependencies = [
+
+ [[package]]
+ name = "quote"
+-version = "1.0.10"
++version = "1.0.23"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "38bc8cc6a5f2e3655e0899c1b848643b2562f853f114bfec7be120678e3ace05"
++checksum = "8856d8364d252a14d474036ea1358d63c9e6965c8e5c1885c18f73d70bff9c7b"
+ dependencies = [
+ "proc-macro2",
+ ]
+
+ [[package]]
+ name = "ryu"
+-version = "1.0.5"
++version = "1.0.12"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "71d301d4193d031abdd79ff7e3dd721168a9572ef3fe51a1517aba235bd8f86e"
++checksum = "7b4b9743ed687d4b4bcedf9ff5eaa7398495ae14e61cba0a295704edbc7decde"
+
+ [[package]]
+ name = "serde"
+-version = "1.0.130"
++version = "1.0.152"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "f12d06de37cf59146fbdecab66aa99f9fe4f78722e3607577a5375d66bd0c913"
++checksum = "bb7d1f0d3021d347a83e556fc4683dea2ea09d87bccdf88ff5c12545d89d5efb"
+ dependencies = [
+ "serde_derive",
+ ]
+
+ [[package]]
+ name = "serde_derive"
+-version = "1.0.130"
++version = "1.0.152"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "d7bc1a1ab1961464eae040d96713baa5a724a8152c1222492465b54322ec508b"
++checksum = "af487d118eecd09402d70a5d72551860e788df87b464af30e5ea6a38c75c541e"
+ dependencies = [
+ "proc-macro2",
+ "quote",
+@@ -157,9 +157,9 @@ dependencies = [
+
+ [[package]]
+ name = "serde_json"
+-version = "1.0.92"
++version = "1.0.93"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "7434af0dc1cbd59268aa98b4c22c131c0584d2232f6fb166efb993e2832e896a"
++checksum = "cad406b69c91885b5107daf2c29572f6c8cdb3c66826821e286c533490c0bc76"
+ dependencies = [
+ "itoa",
+ "ryu",
+@@ -174,29 +174,29 @@ checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
+
+ [[package]]
+ name = "syn"
+-version = "1.0.81"
++version = "1.0.107"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "f2afee18b8beb5a596ecb4a2dce128c719b4ba399d34126b9e4396e3f9860966"
++checksum = "1f4064b5b16e03ae50984a5a8ed5d4f8803e6bc1fd170a3cda91a1be4b18e3f5"
+ dependencies = [
+ "proc-macro2",
+ "quote",
+- "unicode-xid",
++ "unicode-ident",
+ ]
+
+ [[package]]
+ name = "test-case"
+-version = "2.1.0"
++version = "2.2.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "196e8a70562e252cc51eaaaee3ecddc39803d9b7fd4a772b7c7dae7cdf42a859"
++checksum = "21d6cf5a7dffb3f9dceec8e6b8ca528d9bd71d36c9f074defb548ce161f598c0"
+ dependencies = [
+ "test-case-macros",
+ ]
+
+ [[package]]
+ name = "test-case-macros"
+-version = "2.1.0"
++version = "2.2.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "8dd461f47ade621665c9f4e44b20449341769911c253275dc5cb03726cbb852c"
++checksum = "e45b7bf6e19353ddd832745c8fcf77a17a93171df7151187f26623f2b75b5b26"
+ dependencies = [
+ "cfg-if",
+ "proc-macro-error",
+@@ -215,16 +215,16 @@ dependencies = [
+ ]
+
+ [[package]]
+-name = "unicode-width"
+-version = "0.1.9"
++name = "unicode-ident"
++version = "1.0.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "3ed742d4ea2bd1176e236172c8429aaf54486e7ac098db29ffe6529e0ce50973"
++checksum = "84a22b9f218b40614adcb3f4ff08b703773ad44fa9423e4e0d346d5db86e4ebc"
+
+ [[package]]
+-name = "unicode-xid"
+-version = "0.2.2"
++name = "unicode-width"
++version = "0.1.10"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "8ccb82d61f80a663efe1f787a51b16b5a51e3314d6ac365b08639f52387b33f3"
++checksum = "c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b"
+
+ [[package]]
+ name = "vec_map"
diff --git a/testing/pwauth/APKBUILD b/testing/pwauth/APKBUILD
index 3789422566a..55242a9a341 100644
--- a/testing/pwauth/APKBUILD
+++ b/testing/pwauth/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Nathan Rennie-Waldock <nathan.renniewaldock@gmail.com>
pkgname=pwauth
pkgver=2.3.11
-pkgrel=1
+pkgrel=2
pkgdesc="Authenticator for mod_authnz_external and Apache"
url="https://github.com/phokz/pwauth"
arch="all"
diff --git a/testing/pwru/APKBUILD b/testing/pwru/APKBUILD
new file mode 100644
index 00000000000..160e3086b7c
--- /dev/null
+++ b/testing/pwru/APKBUILD
@@ -0,0 +1,35 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=pwru
+pkgver=1.0.5
+pkgrel=2
+pkgdesc="eBPF-based Linux kernel networking debugger"
+url="https://github.com/cilium/pwru"
+arch="x86_64 aarch64" # the only platforms supported upstream
+license="GPL-2.0-or-later"
+makedepends="go clang llvm libpcap-dev"
+source="$pkgname-$pkgver.tar.gz::https://github.com/cilium/pwru/archive/refs/tags/v$pkgver.tar.gz"
+
+export CGO_ENABLED=1
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ export CGO_CFLAGS="$CFLAGS"
+ export CGO_LDFLAGS="$LDFLAGS -L/usr/lib -lpcap"
+
+ TARGET_GOARCH=$(go env GOARCH) go generate
+ go build -v -ldflags "-X github.com/cilium/pwru/internal/pwru.Version=v$pkgver"
+}
+
+check() {
+ go test ./...
+}
+
+package() {
+ install -Dm755 $pkgname -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+17ea7f106498735804947feeac94458551a847a2b8b409421c68c9d7035b13124a0382812f7b6ff5e8f0567fb013d4b68b9924613c0a3c60577a8cacb05f3de1 pwru-1.0.5.tar.gz
+"
diff --git a/testing/pxalarm/APKBUILD b/testing/pxalarm/APKBUILD
new file mode 100644
index 00000000000..5bcfae1c68d
--- /dev/null
+++ b/testing/pxalarm/APKBUILD
@@ -0,0 +1,19 @@
+# Contributor: Sam Nystrom <sam@samnystrom.dev>
+# Maintainer: Sam Nystrom <sam@samnystrom.dev>
+pkgname=pxalarm
+pkgver=2.0.0a
+pkgrel=0
+pkgdesc="POSIX sh simple alarm"
+url="https://github.com/iruzo/pxalarm"
+arch="noarch"
+license="MIT"
+source="$pkgname-$pkgver.tar.gz::https://github.com/iruzo/pxalarm/archive/refs/tags/$pkgver.tar.gz"
+options="!check" # no tests
+
+package() {
+ install -Dm755 "$builddir"/pxalarm "$pkgdir"/usr/bin/pxalarm
+}
+
+sha512sums="
+bbdabb3a71371703b0d92281727997e2889f90437b2d7a4d59b4da263f6d7dca1e8e0f0ce0c2cf080f4a7558a34fd760e4b2d2c631ae053bc3ed6b6397ec330b pxalarm-2.0.0a.tar.gz
+"
diff --git a/testing/pxmenu/APKBUILD b/testing/pxmenu/APKBUILD
new file mode 100644
index 00000000000..1f6cbaeca5b
--- /dev/null
+++ b/testing/pxmenu/APKBUILD
@@ -0,0 +1,20 @@
+# Contributor: Sam Nystrom <sam@samnystrom.dev>
+# Maintainer: Sam Nystrom <sam@samnystrom.dev>
+pkgname=pxmenu
+pkgver=1.0.0
+pkgrel=1
+pkgdesc="POSIX sh simple menu"
+url="https://github.com/iruzo/pxmenu"
+arch="noarch"
+license="MIT"
+depends="ncurses"
+source="$pkgname-$pkgver.tar.gz::https://github.com/iruzo/pxmenu/archive/refs/tags/$pkgver.tar.gz"
+options="!check" # no tests
+
+package() {
+ install -Dm755 ./pxmenu "$pkgdir"/usr/bin/pxmenu
+}
+
+sha512sums="
+8126cbf96204a010e8bf8da241a52f11fe902856df4c3c9969ad1a59b392d922cc563166fe7799980a9abe75c65c368e591ee1ae4ed0dc4ff380b581ded1e61a pxmenu-1.0.0.tar.gz
+"
diff --git a/testing/py-spy/APKBUILD b/testing/py-spy/APKBUILD
index 6be21eb6e38..d0ace8e67b4 100644
--- a/testing/py-spy/APKBUILD
+++ b/testing/py-spy/APKBUILD
@@ -1,13 +1,13 @@
# Contributor: messense <messense@icloud.com>
# Maintainer: messense <messense@icloud.com>
pkgname=py-spy
-pkgver=0.3.11
-pkgrel=0
+pkgver=0.3.14
+pkgrel=3
pkgdesc="Sampling profiler for Python programs"
url="https://github.com/benfred/py-spy"
-arch="aarch64 armv7 armhf x86_64 ppc64le" # limited by rust
+arch="aarch64 x86_64 ppc64le" # limited by rust
license="MIT"
-makedepends="cargo zlib-dev libunwind-dev xz-dev"
+makedepends="cargo zlib-dev libunwind-dev xz-dev cargo-auditable"
checkdepends="python3 bash"
subpackages="
$pkgname-doc
@@ -15,10 +15,18 @@ subpackages="
$pkgname-fish-completion
$pkgname-zsh-completion
"
-source="$pkgname-$pkgver.tar.gz::https://github.com/benfred/py-spy/archive/v$pkgver.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/benfred/py-spy/archive/v$pkgver.tar.gz
+ $pkgname-fix-check.patch::https://github.com/benfred/py-spy/commit/e6053b5f6f7440451ed0c7607ec1431fa17d972a.diff
+ "
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
build() {
- cargo build --release --locked
+ cargo auditable build --release --frozen
./target/release/py-spy completions bash > $pkgname.bash
./target/release/py-spy completions fish > $pkgname.fish
@@ -26,13 +34,8 @@ build() {
}
check() {
- # enable interpreter "python" hack
- mkdir "$builddir"/pythonbindir
- ln -s /usr/bin/python3 "$builddir"/pythonbindir/python
- export PATH="$PATH:$builddir/pythonbindir"
-
# Some tests need additional privileges
- cargo test --release --locked -- \
+ cargo test --frozen -- \
--skip test_busy_loop \
--skip test_delayed_subprocess \
--skip test_local_vars \
@@ -51,8 +54,11 @@ package() {
install -Dm0644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
install -Dm644 $pkgname.bash "$pkgdir"/usr/share/bash-completion/completions/$pkgname
- install -Dm644 $pkgname.fish "$pkgdir"/usr/share/fish/completions/$pkgname.fish
+ install -Dm644 $pkgname.fish "$pkgdir"/usr/share/fish/vendor_completions.d/$pkgname.fish
install -Dm644 $pkgname.zsh "$pkgdir"/usr/share/zsh/site-functions/_$pkgname
}
-sha512sums="ff6a9cf84da7e821b9245868597fc813217f3c1a4637f70e3d70425a61b466033463609ce48795f4983c50519f6a20470641d3b64fee916e4732d4e12ec99fd7 py-spy-0.3.11.tar.gz"
+sha512sums="
+f079b002248a033eac3b93723fd267e6cbdb415ac3172ace0d14eb9cd87a1e4adf471eeec641f9644abe8a4fab43b48db7440b4b1242ea18e02bcc574104d303 py-spy-0.3.14.tar.gz
+2b927080cd953facc47994b665bfa3d1c47552b549673b11b047db21bc773a53d10faffd26482c3f9825fae8f0f87d387cb9e602898288cf88b7d5a0a8589eb3 py-spy-fix-check.patch
+"
diff --git a/testing/py2-setuptools/APKBUILD b/testing/py2-setuptools/APKBUILD
deleted file mode 100644
index 6e82df39f9e..00000000000
--- a/testing/py2-setuptools/APKBUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-# Contributor: Andrew Manison <amanison@anselsystems.com>
-# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
-pkgname=py2-setuptools
-_pkgname=${pkgname#py2-}
-pkgver=44.0.0
-pkgrel=0
-pkgdesc="Collection of enhancements to the Python2 distutils"
-url="https://pypi.python.org/pypi/setuptools"
-arch="noarch"
-license="MIT"
-depends="python2"
-options="!check" #no testsuite
-source="$_pkgname-$pkgver.tar.gz::https://github.com/pypa/$_pkgname/archive/v$pkgver.tar.gz"
-builddir="$srcdir/$_pkgname-$pkgver"
-
-prepare() {
- default_prepare
-
- python2 bootstrap.py
-}
-
-build() {
- python2 setup.py build
-}
-
-package() {
- python2 setup.py install --prefix=/usr --root="$pkgdir"
- # we don't provide a non-suffixed easy_install
- rm -f "$pkgdir"/usr/bin/easy_install
-}
-
-sha512sums="48febee840612a56c7f4cb0bc3983bf61a6a08c53dfcb95403f6631061481ba391fc0472d608ea6c0078fda8bcc7bb9f6dd8b73d473f5e4349d6eaeb2ab0050b setuptools-44.0.0.tar.gz"
diff --git a/testing/py3-actdiag/APKBUILD b/testing/py3-actdiag/APKBUILD
index 952edaede23..32a72715060 100644
--- a/testing/py3-actdiag/APKBUILD
+++ b/testing/py3-actdiag/APKBUILD
@@ -2,26 +2,32 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-actdiag
_pkgname=actdiag
-pkgver=2.0.0
-pkgrel=2
+pkgver=3.0.0
+pkgrel=3
pkgdesc="Generate activity-diagram image file from spec-text file"
-url="https://pypi.python.org/pypi/actdiag"
+url="https://pypi.org/project/actdiag"
arch="noarch"
license="Apache-2.0"
-depends="py3-funcparserlib py3-blockdiag py3-pillow"
+depends="py3-funcparserlib py3-blockdiag python3"
makedepends="py3-setuptools"
+checkdepends="py3-docutils py3-nose py3-blockdiag-tests"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-actdiag" # for backwards compatibility
-provides="py-actdiag=$pkgver-r$pkgrel" # for backwards compatibility
-
build() {
python3 setup.py build
}
+check() {
+ nosetests
+}
+
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
+ rm -r "$pkgdir"/usr/lib/python3*/site-packages/actdiag/tests/
}
-sha512sums="e955b9b919e137f10ff128d5d8817b2da660b121937cab3386a866a0bff08218b6e777e302a9130616228af6c357c463ceeb12cb95b8734928001d8ad6a90250 actdiag-2.0.0.tar.gz"
+sha512sums="
+240a687fd0c9f8ee10e66fed9ce8ca3359f3336c1623a05b1394f1444e518c1c325922eb5cd2d6d1a867876ff820b2b1b6f5eb518a6af5d688bd8116b97c9dca actdiag-3.0.0.tar.gz
+"
diff --git a/testing/py3-aesedb/APKBUILD b/testing/py3-aesedb/APKBUILD
new file mode 100644
index 00000000000..6e18a91d638
--- /dev/null
+++ b/testing/py3-aesedb/APKBUILD
@@ -0,0 +1,50 @@
+# Contributor: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
+# Maintainer: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
+pkgname=py3-aesedb
+_pyname=aesedb
+pkgver=0.1.6
+pkgrel=2
+pkgdesc="NTDS parser toolkit"
+url="https://github.com/skelsec/aesedb"
+arch="noarch"
+license="Apache-1.1"
+depends="
+ py3-aiowinreg
+ py3-colorama
+ py3-tqdm
+ py3-unicrypto
+ python3
+ "
+makedepends="
+ py3-gpep517
+ py3-wheel
+ py3-setuptools
+ "
+checkdepends="
+ py3-pytest
+ py3-pytest-asyncio
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/skelsec/aesedb/archive/refs/tags/$pkgver.tar.gz"
+builddir="$srcdir/$_pyname-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" .dist/*.whl
+ rm -rf "$pkgdir"/usr/lib/python3.*/site-packages/tests/ # remove tests
+}
+
+sha512sums="
+73513510909da98ab27f21d4a4b630294212132ba6d583dba99578764c20c887cf56b6456709b1c161c2b46958bd4318abccddade80f3b3d98478114d3a98520 py3-aesedb-0.1.6.tar.gz
+"
diff --git a/testing/py3-agithub/APKBUILD b/testing/py3-agithub/APKBUILD
index ab014fef9fa..0cbad2cfac2 100644
--- a/testing/py3-agithub/APKBUILD
+++ b/testing/py3-agithub/APKBUILD
@@ -1,13 +1,14 @@
# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
pkgname=py3-agithub
pkgver=2.2.2
-pkgrel=2
+pkgrel=5
pkgdesc="The Agnostic GitHub API"
url="https://github.com/mozilla/agithub"
arch="noarch"
license="MIT"
depends="python3"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://github.com/mozilla/agithub/archive/v$pkgver/mautrix-python-v$pkgver.tar.gz"
options="!check" # No tests
builddir="$srcdir/agithub-$pkgver"
@@ -17,7 +18,7 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="8b9761bd31f30965bf9904a017dac3f97a7539987b6aa76a287dab16a698a98972b44e4781f67e312bb1ca4e77d4d15d575e567f08ac791789bd7114e8f430a0 mautrix-python-v2.2.2.tar.gz"
diff --git a/testing/py3-aiodocker/APKBUILD b/testing/py3-aiodocker/APKBUILD
new file mode 100644
index 00000000000..99720571e55
--- /dev/null
+++ b/testing/py3-aiodocker/APKBUILD
@@ -0,0 +1,40 @@
+# Automatically generated by apkbuild-pypi, template 4
+# Contributor: Niklas Meyer <derlinkman@gmail.com>
+# Maintainer: Niklas Meyer <derlinkman@gmail.com>
+pkgname=py3-aiodocker
+#_pkgreal is used by apkbuild-pypi to find modules at PyPI
+_pkgreal=aiodocker
+pkgver=0.21.0
+pkgrel=1
+pkgdesc="Docker API client for asyncio"
+url="https://pypi.org/project/aiodocker/"
+arch="noarch"
+license="Apache-2.0"
+depends="py3-aiohttp py3-typing-extensions"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/a/aiodocker/aiodocker-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+options="!check" #check needs docker
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+55fc5015edea5ffe17798aa5a3e1b85b68f7ee011ac7fd94adbecf659a55f537b75f5c5d768e70d364c1337e4bcbe5cabed4dd5cdb3f35ff140d641411038562 aiodocker-0.21.0.tar.gz
+"
diff --git a/testing/py3-aiohttp-debugtoolbar/APKBUILD b/testing/py3-aiohttp-debugtoolbar/APKBUILD
index 743923ccdc4..503ee642069 100644
--- a/testing/py3-aiohttp-debugtoolbar/APKBUILD
+++ b/testing/py3-aiohttp-debugtoolbar/APKBUILD
@@ -2,24 +2,36 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-aiohttp-debugtoolbar
_pkgname=aiohttp-debugtoolbar
-pkgver=0.6.0
-pkgrel=2
-pkgdesc="A ibrary for debugtoolbar support for aiohttp"
-options="!check" # Requires unpackaged pytest-aiohttp
+pkgver=0.6.1
+pkgrel=1
+pkgdesc="A library for debugtoolbar support for aiohttp"
url="https://github.com/aio-libs/aiohttp-debugtoolbar"
arch="noarch"
license="Apache-2.0"
-depends="py3-aiohttp py3-aiohttp-jinja2"
+depends="py3-aiohttp py3-aiohttp-jinja2 python3"
makedepends="py3-setuptools"
+checkdepends="
+ py3-pytest
+ py3-pytest-aiohttp
+ py3-pytest-asyncio
+ "
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/aio-libs/aiohttp-debugtoolbar/archive/v$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
+options="!check" # deprecation warnings
build() {
python3 setup.py build
}
+check() {
+ PYTHONPATH=build/lib pytest
+}
+
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="a842fedfbb6bd5bae9baab8ab6c36fe352075f9312c4836a4c33c87909143c62e389a529128096e0e27b23d595eae7eb80a1f0becdf0d71d122378457b144267 py3-aiohttp-debugtoolbar-0.6.0.tar.gz"
+sha512sums="
+0c46fbe35f8d7d49130ca6f7e2378fc486a821fd08b99c71c37dbc70d83b0c891cedaa7a6022726a74e02be398b669f8b50896d0a868b0915a4384648d03e8eb py3-aiohttp-debugtoolbar-0.6.1.tar.gz
+"
diff --git a/testing/py3-aiohttp-jinja2/APKBUILD b/testing/py3-aiohttp-jinja2/APKBUILD
index 009df32778c..00d22a6c7e8 100644
--- a/testing/py3-aiohttp-jinja2/APKBUILD
+++ b/testing/py3-aiohttp-jinja2/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-aiohttp-jinja2
_pkgname=aiohttp_jinja2
-pkgver=1.4.2
+pkgver=1.6
pkgrel=2
pkgdesc="Jinja2 template renderer for aiohttp"
options="!check" # Requires unpackaged pytest-aiohttp
@@ -10,16 +10,22 @@ url="https://github.com/aio-libs/aiohttp-jinja2"
arch="noarch"
license="Apache-2.0"
depends="py3-aiohttp py3-jinja2"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="$_pkgname-$pkgver.tar.gz::https://github.com/aio-libs/aiohttp-jinja2/archive/v$pkgver.tar.gz"
builddir="$srcdir"/aiohttp-jinja2-$pkgver
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
-sha512sums="09356f5f010504b5d1449196006162e6daeeeee8671e261d2b4fa66d5ba0ede386a2782fa84cd46647f4f6077bf3539217546850543ebbdb0bd4b70a8c698d17 aiohttp_jinja2-1.4.2.tar.gz"
+sha512sums="
+a434443580b050ac849f80ec3fc1815bce7b682febadb827e473e6b8b88d79017335cf2cd93bfc37d8ab79552afedaf5a67cb961341407d768bce0c15fa20b3c aiohttp_jinja2-1.6.tar.gz
+"
diff --git a/testing/py3-aiohttp-remotes/APKBUILD b/testing/py3-aiohttp-remotes/APKBUILD
new file mode 100644
index 00000000000..6767f45e17d
--- /dev/null
+++ b/testing/py3-aiohttp-remotes/APKBUILD
@@ -0,0 +1,54 @@
+# Contributor: Henrik Riomar <henrik.riomar@gmail.com>
+# Maintainer: Henrik Riomar <henrik.riomar@gmail.com>
+pkgname=py3-aiohttp-remotes
+_pkgname=aiohttp-remotes
+pkgver=1.2.0
+pkgrel=3
+pkgdesc="A set of useful tools for aiohttp.web server"
+url="https://github.com/aio-libs/aiohttp-remotes"
+arch="noarch"
+license="MIT"
+checkdepends="
+ py3-pytest
+ py3-pytest-aiohttp
+ py3-pytest-asyncio
+ py3-pytest-cov
+ py3-trustme
+ "
+makedepends="
+ py3-flit
+ py3-installer
+ py3-setuptools
+ "
+depends="
+ py3-aiohttp
+ py3-yarl
+ python3
+ "
+subpackages="$pkgname-pyc"
+source="
+ https://github.com/aio-libs/aiohttp-remotes/archive/v$pkgver/$_pkgname-$pkgver.tar.gz
+ "
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ flit build --format wheel
+}
+
+check() {
+ # do test installation
+ python3 -m installer -d "$builddir"/test_install dist/aiohttp_remotes-$pkgver-py3-none-any.whl
+ PYTHONPATH="$(echo "$builddir"/test_install/usr/lib/python3*/site-packages)"
+ export PYTHONPATH
+
+ # run tests (skip async tests for now)
+ pytest-3 tests/test_utils.py
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" dist/aiohttp_remotes-$pkgver-py3-none-any.whl
+}
+
+sha512sums="
+b625b136a071c67a7a8e28ce63f56cc84712cce9193d2573a6dd58ef89ae30b0d817217ce9e5eb6531285449108c3b282c0dbf6c4f1a049ee027f0fb59dbc1ec aiohttp-remotes-1.2.0.tar.gz
+"
diff --git a/testing/py3-aiohttp-session/APKBUILD b/testing/py3-aiohttp-session/APKBUILD
index 7fe2bdbd1e7..1a111df28eb 100644
--- a/testing/py3-aiohttp-session/APKBUILD
+++ b/testing/py3-aiohttp-session/APKBUILD
@@ -2,8 +2,8 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-aiohttp-session
_pkgname=aiohttp_session
-pkgver=2.9.0
-pkgrel=2
+pkgver=2.12.0
+pkgrel=3
pkgdesc="Sessions support for aiohttp"
url="https://aiohttp-session.readthedocs.io/"
arch="noarch"
@@ -12,6 +12,7 @@ license="Apache-2.0"
options="!check"
depends="py3-aiohttp"
makedepends="python3-dev py3-setuptools"
+subpackages="$pkgname-pyc"
source="aiohttp-session-$pkgver.tar.gz::https://github.com/aio-libs/aiohttp-session/archive/v$pkgver.tar.gz"
builddir="$srcdir"/aiohttp-session-$pkgver
@@ -24,7 +25,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="27c1c1553bfb65e8d277ada226917835ea92dd0593c28988a8800a275fd7ec7c304f10ebb18320fe582e92440ac6b2621ca5eb2f3a3cd5ef1b068fe41ae178fa aiohttp-session-2.9.0.tar.gz"
+sha512sums="
+42bd608abda7aa09351c30b683310940a01d4f4c0bec20db162720680a608715820c27961cb0814f1e5078965695befaa06136440b2a009eae951a1ab3f339e0 aiohttp-session-2.12.0.tar.gz
+"
diff --git a/testing/py3-aioopenssl/APKBUILD b/testing/py3-aioopenssl/APKBUILD
new file mode 100644
index 00000000000..3ad7a73dac4
--- /dev/null
+++ b/testing/py3-aioopenssl/APKBUILD
@@ -0,0 +1,30 @@
+# Contributor: Sam Whited <sam@samwhited.com>
+# Maintainer: Sam Whited <sam@samwhited.com>
+pkgname=py3-aioopenssl
+_pkgname=aioopenssl
+pkgver=0.6.0
+pkgrel=3
+pkgdesc="An asyncio Transport which uses PyOpenSSL instead of the built-in ssl module."
+url="https://pypi.org/project/aioopenssl/"
+arch="all"
+license="Apache-2.0"
+depends="python3 py3-openssl"
+makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+options="!check" # tests not included in source package.
+
+build() {
+ python3 setup.py build
+}
+
+package() {
+ python3 setup.py install --skip-build --root="$pkgdir"
+ install -Dm644 COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING
+ install -Dm644 README.rst "$pkgdir"/usr/share/licenses/$pkgname/README.rst
+}
+
+sha512sums="
+fee9fa34dd79a40b06bdbfa87dd7feba100c7a9e906f06e46fde63faa1e73fbe0f3085c5b05bd308cf73f73155eb1db07f3250f159c9fb0b9142a26a1ce747b3 aioopenssl-0.6.0.tar.gz
+"
diff --git a/testing/py3-aiosasl/APKBUILD b/testing/py3-aiosasl/APKBUILD
new file mode 100644
index 00000000000..d7ccb6499df
--- /dev/null
+++ b/testing/py3-aiosasl/APKBUILD
@@ -0,0 +1,30 @@
+# Contributor: Sam Whited <sam@samwhited.com>
+# Maintainer: Sam Whited <sam@samwhited.com>
+pkgname=py3-aiosasl
+_pkgname=aiosasl
+pkgver=0.5.0
+pkgrel=3
+pkgdesc="A generic asyncio-based SASL authentication library."
+url="https://pypi.org/project/aiosasl/"
+arch="all"
+license="LGPL-3.0-only"
+depends="python3"
+makedepends="py3-setuptools"
+subpackages="$pkgname-doc $pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+options="!check" # tests not included in source package.
+
+build() {
+ python3 setup.py build
+}
+
+package() {
+ python3 setup.py install --skip-build --root="$pkgdir"
+ install -Dm644 COPYING.LESSER COPYING.gpl3 LICENSES README.rst \
+ -t "$pkgdir"/usr/share/licenses/$pkgname
+}
+
+sha512sums="
+bde4bf6ac82a385be60593305ac83927aa44312393850c8f6489e885392d033e90ab6cdbd3ccadec1ca45aa3bd9907f7f586293d54e8180c71706e3b53c36ed8 aiosasl-0.5.0.tar.gz
+"
diff --git a/testing/py3-aiosmb/APKBUILD b/testing/py3-aiosmb/APKBUILD
new file mode 100644
index 00000000000..57ab7833292
--- /dev/null
+++ b/testing/py3-aiosmb/APKBUILD
@@ -0,0 +1,48 @@
+# Contributor: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
+# Maintainer: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
+pkgname=py3-aiosmb
+_pyname=aiosmb
+pkgver=0.4.10
+pkgrel=1
+pkgdesc="Asynchronous SMB protocol implementation"
+url="https://github.com/skelsec/aiosmb"
+arch="noarch"
+license="MIT"
+depends="
+ py3-asn1crypto
+ py3-asyauth
+ py3-asysocks
+ py3-colorama
+ py3-minikerberos
+ py3-prompt_toolkit
+ py3-six
+ py3-tqdm
+ py3-unicrypto
+ py3-wcwidth
+ py3-winacl
+ python3
+ "
+makedepends="
+ py3-gpep517
+ py3-wheel
+ py3-setuptools
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/skelsec/aiosmb/archive/refs/tags/$pkgver.tar.gz"
+builddir="$srcdir/$_pyname-$pkgver"
+options="!check" # no tests provided
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" .dist/*.whl
+ rm -rf "$pkgdir"/usr/lib/python3.*/site-packages/tests/ # remove tests
+}
+
+sha512sums="
+ca0db6eab06ee452841ac4767ece5ab15607912ceb221fde6d77d8d01bcd8db84e62ed4331f943cb8b718a5c33a2ecdd7fc399d92fadc9c5b7bc5e938f5d7d6a py3-aiosmb-0.4.10.tar.gz
+"
diff --git a/testing/py3-aiowinreg/APKBUILD b/testing/py3-aiowinreg/APKBUILD
new file mode 100644
index 00000000000..2cabdce6829
--- /dev/null
+++ b/testing/py3-aiowinreg/APKBUILD
@@ -0,0 +1,48 @@
+# Contributor: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
+# Maintainer: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
+pkgname=py3-aiowinreg
+_pyname=aiowinreg
+pkgver=0.0.10
+pkgrel=1
+pkgdesc="Windows registry file reader"
+url="https://github.com/skelsec/aiowinreg"
+arch="noarch"
+license="MIT"
+depends="
+ py3-prompt_toolkit
+ py3-winacl
+ python3
+ "
+makedepends="
+ py3-gpep517
+ py3-wheel
+ py3-setuptools
+ "
+checkdepends="
+ py3-pytest
+ py3-pytest-asyncio
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/skelsec/aiowinreg/archive/refs/tags/$pkgver.tar.gz"
+builddir="$srcdir/$_pyname-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" .dist/*.whl
+ rm -rf "$pkgdir"/usr/lib/python3.*/site-packages/tests/ # remove tests
+}
+
+sha512sums="
+7842812dbe7455b8c560e8062bd4371cf89e9600f037caadf7a65c049be38f4263c5bf5923f57c49cdb19ea34f394d203ee9db029ac6d6b6d114a45ba7c93ea2 py3-aiowinreg-0.0.10.tar.gz
+"
diff --git a/testing/py3-aioxmpp/APKBUILD b/testing/py3-aioxmpp/APKBUILD
new file mode 100644
index 00000000000..cdde72431aa
--- /dev/null
+++ b/testing/py3-aioxmpp/APKBUILD
@@ -0,0 +1,44 @@
+# Contributor: Sam Whited <sam@samwhited.com>
+# Maintainer: Sam Whited <sam@samwhited.com>
+pkgname=py3-aioxmpp
+_pkgname=aioxmpp
+pkgver=0.13.3
+pkgrel=2
+pkgdesc="An XMPP library in pure Python and using asyncio."
+url="https://pypi.org/project/aioxmpp/"
+arch="noarch"
+license="LGPL-3.0-only"
+depends="
+py3-aioopenssl
+py3-aiosasl
+py3-asn1
+py3-asn1-modules
+py3-babel
+py3-dnspython
+py3-lxml
+py3-multidict
+py3-openssl
+py3-sortedcollections
+py3-sortedcontainers
+py3-tzlocal
+python3
+"
+makedepends="py3-setuptools"
+source="https://files.pythonhosted.org/packages/source/a/aioxmpp/aioxmpp-$pkgver.tar.gz"
+subpackages="$pkgname-doc $pkgname-pyc"
+builddir="$srcdir/$_pkgname-$pkgver"
+options="!check" # tests not included in source package.
+
+build() {
+ python3 setup.py build
+}
+
+package() {
+ python3 setup.py install --skip-build --root="$pkgdir"
+ install -Dm644 COPYING.LESSER COPYING.gpl3 LICENSES README.rst \
+ -t "$pkgdir"/usr/share/licenses/$pkgname
+}
+
+sha512sums="
+1f3b9b086c083b6c613f71e56e85e35d844c5917c24de952233e65521dc4863da770e6b5b0cf2af4132971e78fa9c847c55b657f7f7d9c7eb15f0dad1285d85f aioxmpp-0.13.3.tar.gz
+"
diff --git a/testing/py3-ajsonrpc/APKBUILD b/testing/py3-ajsonrpc/APKBUILD
new file mode 100644
index 00000000000..05caf58f471
--- /dev/null
+++ b/testing/py3-ajsonrpc/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: Marten Ringwelski <git+alpine@maringuu.de>
+# Maintainer: Marten Ringwelski <git+alpine@maringuu.de>
+pkgname=py3-ajsonrpc
+pkgver=1.2.0
+pkgrel=3
+pkgdesc="Lightweight JSON-RPC 2.0 protocol implementation and asynchronous server powered by asyncio"
+url="https://github.com/pavlov99/ajsonrpc"
+arch="noarch"
+license="MIT"
+depends="python3"
+makedepends="py3-setuptools"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/pavlov99/ajsonrpc/archive/refs/tags/$pkgver.tar.gz
+ no-test-install.patch
+ "
+builddir="$srcdir/ajsonrpc-$pkgver"
+
+build() {
+ # See ajsonrpcs github actions
+ echo "__version__ = \"$pkgver\"" >> ajsonrpc/__init__.py
+ python3 setup.py build
+}
+
+check() {
+ pytest
+}
+
+package() {
+ python3 setup.py install --skip-build --root="$pkgdir"
+}
+
+sha512sums="
+af307f13c4e3a2b3004dc03629a3d0216c9c72014d290e66ad73b60925548fb3c1cf18d6b7ef6b270fca98b3b8efe9cc2741796f9b6f360267ab2df0a7eee9d3 py3-ajsonrpc-1.2.0.tar.gz
+414a0b53b5c6eb1a5b0927d818c9223d76c75bc5f00f30a88b26166b50f47784c8e30e0605bf48a277ff25b914e25d4fa15bfe1083610778b2c2db39eb0be0eb no-test-install.patch
+"
diff --git a/testing/py3-ajsonrpc/no-test-install.patch b/testing/py3-ajsonrpc/no-test-install.patch
new file mode 100644
index 00000000000..586a47bf666
--- /dev/null
+++ b/testing/py3-ajsonrpc/no-test-install.patch
@@ -0,0 +1,8 @@
+--- a/MANIFEST.in
++++ b/MANIFEST.in
+@@ -3,3 +3,5 @@
+ graft ajsonrpc
+
+ global-exclude *.py[co]
++
++prune ajsonrpc/tests/
diff --git a/testing/py3-allfiles/APKBUILD b/testing/py3-allfiles/APKBUILD
index 03ab1397042..f5956b87a01 100644
--- a/testing/py3-allfiles/APKBUILD
+++ b/testing/py3-allfiles/APKBUILD
@@ -3,26 +3,28 @@
pkgname=py3-allfiles
_pkgname=allfiles
pkgver=1.0
-pkgrel=3
+pkgrel=8
pkgdesc="Iterator for matching files in directory trees"
-url="https://pypi.python.org/pypi/allfiles"
+url="https://pypi.org/project/allfiles"
arch="noarch"
license="MIT"
-replaces="py-allfiles" # for backwards compatibility
+replaces="py-allfiles" # for backwards compatibility
provides="py-allfiles=$pkgver-r$pkgrel" # for backwards compatibility
depends="python3"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.zip"
builddir="$srcdir"/$_pkgname-$pkgver
build() {
- cd "$builddir"
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- cd "$builddir"
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="698f1131950eba7cc12af727e2c27c5018c1d81ab1cca7f94f308061220003b5b412ef4720ba1bbebc50e7fee4f5549c43868d2cfe81e99df1f78e6bf7c38d0f allfiles-1.0.zip"
diff --git a/testing/py3-altgraph/APKBUILD b/testing/py3-altgraph/APKBUILD
new file mode 100644
index 00000000000..1723f78a36f
--- /dev/null
+++ b/testing/py3-altgraph/APKBUILD
@@ -0,0 +1,39 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-altgraph
+pkgver=0.17.4
+pkgrel=1
+pkgdesc="Python graph (network) package"
+url="https://github.com/ronaldoussoren/altgraph"
+arch="noarch"
+license="MIT"
+depends="python3"
+makedepends="
+ py3-gpep517
+ py3-installer
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="https://pypi.python.org/packages/source/a/altgraph/altgraph-$pkgver.tar.gz"
+builddir="$srcdir/altgraph-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+c931e8c185269a036c7f0665ac92ad79ecbd1e93682880618502a52cec6bdd745cc664afd4b8b5f2b656119dcfcc6b5c11c3e82d903d7f5f6d362974e0a93259 altgraph-0.17.4.tar.gz
+"
diff --git a/testing/py3-amqp/APKBUILD b/testing/py3-amqp/APKBUILD
deleted file mode 100644
index fdc75cc10bc..00000000000
--- a/testing/py3-amqp/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Maintainer: Drew DeVault <sir@cmpwn.com>
-pkgname=py3-amqp
-pkgver=2.6.1
-pkgrel=2
-pkgdesc="an AMQP implementation"
-url="https://pypi.python.org/pypi/amqp/"
-arch="noarch"
-license="BSD-3-Clause"
-depends="py3-vine python3"
-makedepends="py3-setuptools"
-checkdepends="py3-vine py3-case py3-nose py2py3-mock"
-source="https://files.pythonhosted.org/packages/source/a/amqp/amqp-$pkgver.tar.gz"
-options="!check" # requires a running rabbitmq sever
-builddir="$srcdir"/amqp-$pkgver
-
-replaces="py-amqp" # Backwards compatibility
-provides="py-amqp=$pkgver-r$pkgrel" # Backwards compatibility
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 setup.py test
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="e2c628cfe8075a3014a9fe991ae3e6f49198db2ecd46dd48f980730da692e4d25d9f055b1ccd4743917fc38a8afa69a5902a64275f8f45ef68113c6756f3a17b amqp-2.6.1.tar.gz"
diff --git a/testing/py3-ansi2html/APKBUILD b/testing/py3-ansi2html/APKBUILD
index 5993bfee045..81ce7eb5359 100644
--- a/testing/py3-ansi2html/APKBUILD
+++ b/testing/py3-ansi2html/APKBUILD
@@ -2,35 +2,46 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-ansi2html
_pkgname=ansi2html
-pkgver=1.6.0
-pkgrel=2
+pkgver=1.9.1
+pkgrel=1
pkgdesc="Convert text with ANSI color codes to HTML"
-url="https://github.com/ralphbean/ansi2html"
+url="https://github.com/pycontribs/ansi2html"
arch="noarch"
license="LGPL-3.0-or-later"
-depends="python3 py3-six py3-setuptools"
-makedepends="python3-dev"
+depends="python3"
+makedepends="
+ py3-gpep517
+ py3-installer
+ py3-setuptools_scm
+ py3-wheel
+ "
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
replaces="py-ansi2html" # for backwards compatibility
provides="py-ansi2html=$pkgver-r$pkgrel" # for backwards compatibility
-prepare() {
- default_prepare
+export SETUPTOOLS_SCM_PRETEND_VERSION=$pkgver
- sed -e '/setuptools_scm/d' \
- -e "s/use_scm_version=.*/version='$pkgver',/" \
- -i setup.py
- sed -e '/setuptools_scm/d' -i setup.cfg
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
-build() {
- python3 setup.py build
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/ansi2html-$pkgver-py3-none-any.whl
+ PATH="$PATH:$PWD/.testenv/bin" .testenv/bin/python3 -m pytest
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer --destdir "$pkgdir" \
+ .dist/ansi2html-$pkgver-py3-none-any.whl
}
-sha512sums="35e5fb6cee96fe41a658c005734a58b08bc05e8ad5903ad18684c316bdad351a70c534b4162416225bc2ca774d01b4ac1bb8a8dad3170d0738aa7b3daf46b3c0 ansi2html-1.6.0.tar.gz"
+sha512sums="
+1ffeffdd4f861b809c424b5b9e7d07212aaf1b5ef483a2820f128f815002628c823b5701652b0770ed182f0585052f040b55fca5db31e4690be86c49553105b3 ansi2html-1.9.1.tar.gz
+"
diff --git a/testing/py3-anyascii/APKBUILD b/testing/py3-anyascii/APKBUILD
new file mode 100644
index 00000000000..965fc2d08bd
--- /dev/null
+++ b/testing/py3-anyascii/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: Galen Abell <galen@galenabell.com>
+# Maintainer: Galen Abell <galen@galenabell.com>
+pkgname=py3-anyascii
+_pyname=anyascii
+pkgver=0.3.2
+pkgrel=1
+pkgdesc="Unicode to ASCII transliteration"
+url="https://anyascii.com"
+arch="noarch"
+license="ISC"
+makedepends="py3-gpep517 py3-flit-core"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="$_pyname-$pkgver.tar.gz::https://github.com/anyascii/anyascii/archive/refs/tags/$pkgver.tar.gz"
+builddir="$srcdir/$_pyname-$pkgver/impl/python"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+2d1231822a051943cc2c958f94c62d2bebe4314d73a598d92cc1c20e8cacd548f7eb2283633ca44359c44d2d2a0d62fad11e2adf1a066f2e100e83294b2e9617 anyascii-0.3.2.tar.gz
+"
diff --git a/testing/py3-anyio/APKBUILD b/testing/py3-anyio/APKBUILD
deleted file mode 100644
index 1f667e48495..00000000000
--- a/testing/py3-anyio/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Contributor: Michał Polański <michal@polanski.me>
-# Maintainer: Michał Polański <michal@polanski.me>
-pkgname=py3-anyio
-pkgver=3.6.1
-pkgrel=0
-pkgdesc="High level compatibility layer for multiple asynchronous event loop implementations"
-url="https://github.com/agronholm/anyio"
-license="MIT"
-arch="noarch !armhf !ppc64le" # limited by py3-uvloop
-depends="python3 py3-idna py3-sniffio"
-makedepends="py3-setuptools py3-setuptools_scm"
-checkdepends="py3-pytest py3-pytest-mock py3-hypothesis py3-trustme py3-trio py3-uvloop"
-source="https://github.com/agronholm/anyio/archive/$pkgver/py3-anyio-$pkgver.tar.gz"
-builddir="$srcdir/anyio-$pkgver"
-
-export SETUPTOOLS_SCM_PRETEND_VERSION=$pkgver
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 setup.py install --root="$PWD/test_install" --skip-build
-
- # Behavior of getaddrinfo differs between event loop implementations
- # on musl-based systems
- PYTHONPATH="$(echo $PWD/test_install/usr/lib/python3*/site-packages)" pytest \
- --deselect tests/test_sockets.py::test_getaddrinfo_ipv6addr
-}
-
-package() {
- python3 setup.py install --root="$pkgdir" --skip-build
-}
-
-sha512sums="
-e40bcda795226f5ab49e9450c6945637e65489d2d1a577a630aa22e3eb166da5aac3def75028a1f392f216fb3c901e73fe967c7b01ea2609f17647606725f4e0 py3-anyio-3.6.1.tar.gz
-"
diff --git a/testing/py3-anyjson/APKBUILD b/testing/py3-anyjson/APKBUILD
deleted file mode 100644
index ad1324e00cf..00000000000
--- a/testing/py3-anyjson/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Contributor: Fabian Affolter <fabian@affolter-engineering.ch>
-# Contributor: Stefan Wagner <stw@bit-strickerei.de>
-# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
-pkgname=py3-anyjson
-_pkgname=anyjson
-pkgver=0.3.3
-pkgrel=7
-pkgdesc="Wraps the best available JSON implementation available in a common interface"
-url="https://bitbucket.org/runeh/anyjson/"
-arch="noarch"
-license="BSD-3-Clause"
-depends="python3"
-makedepends="py3-setuptools"
-checkdepends="py3-future py3-nose"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz
- python3.patch"
-builddir="$srcdir"/$_pkgname-$pkgver
-
-replaces="py-anyjson" # Backwards compatibility
-provides="py-anyjson=$pkgver-r$pkgrel" # Backwards compatibility
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 setup.py test
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="9e70df3cb8bfe2348fdb0eb03cf3c33ca5a1171aca6467787fc28c161354b5ebe89b2f73badfa00708774d6825799860493ddcac7f5da8cc9c251b92b5a343bc anyjson-0.3.3.tar.gz
-d8e70ed13971e78a6f225df7fec74813a3c565446c1c538ac35f91a1e752a4381d895c87994d848c3661c736811b05b70084e3b8c5e3d6531e8424979b48cfb6 python3.patch"
diff --git a/testing/py3-anyjson/python3.patch b/testing/py3-anyjson/python3.patch
deleted file mode 100644
index ce84c05eed3..00000000000
--- a/testing/py3-anyjson/python3.patch
+++ /dev/null
@@ -1,58 +0,0 @@
-diff -ur a/anyjson/__init__.py b/anyjson/__init__.py
---- a/anyjson/__init__.py 2018-11-03 12:48:31.808085115 +0100
-+++ b/anyjson/__init__.py 2018-11-03 12:48:39.784931829 +0100
-@@ -1,7 +1,10 @@
- """Wraps the best available JSON implementation available in a common
- interface"""
-
-+from __future__ import print_function
- import sys
-+from future.utils import raise_with_traceback
-+from past.builtins import basestring
-
- VERSION = (0, 3, 3)
- __version__ = ".".join(map(str, VERSION[0:3])) + "".join(VERSION[3:])
-@@ -85,8 +88,8 @@
- TypeError if the object could not be serialized."""
- try:
- return self._encode(data)
-- except self._encode_error, exc:
-- raise TypeError, TypeError(*exc.args), sys.exc_info()[2]
-+ except self._encode_error as exc:
-+ raise_with_traceback(TypeError(*exc.args))
- serialize = dumps
-
- def loads(self, s):
-@@ -97,8 +100,8 @@
- if self._filedecode and not isinstance(s, basestring):
- return self._filedecode(StringIO(s))
- return self._decode(s)
-- except self._decode_error, exc:
-- raise ValueError, ValueError(*exc.args), sys.exc_info()[2]
-+ except self._decode_error as exc:
-+ raise_with_traceback(ValueError(*exc.args))
- deserialize = loads
-
-
-@@ -117,7 +120,7 @@
- # We do NOT try to load a compatible module because that may throw an
- # exception, which renders the package uninstallable with easy_install
- # (It trys to execfile the script when installing, to make sure it works)
-- print "Running anyjson as a stand alone script is not supported"
-+ print("Running anyjson as a stand alone script is not supported")
- sys.exit(1)
- else:
- for modspec in _modules:
-diff -ur a/setup.py b/setup.py
---- a/setup.py 2018-11-03 12:48:31.808085115 +0100
-+++ b/setup.py 2018-11-03 12:48:47.935115786 +0100
-@@ -87,6 +87,9 @@
- 'Programming Language :: Python :: 2.7',
- 'Programming Language :: Python :: 3',
- 'Programming Language :: Python :: 3.1',
-+ 'Programming Language :: Python :: 3.4',
-+ 'Programming Language :: Python :: 3.5',
-+ 'Programming Language :: Python :: 3.6',
- 'Programming Language :: Python :: Implementation :: CPython',
- 'Programming Language :: Python :: Implementation :: PyPy',
- 'Programming Language :: Python :: Implementation :: Jython',
diff --git a/testing/py3-apicula/APKBUILD b/testing/py3-apicula/APKBUILD
new file mode 100644
index 00000000000..c4281901ee2
--- /dev/null
+++ b/testing/py3-apicula/APKBUILD
@@ -0,0 +1,47 @@
+# Maintainer: Marian Buschsieweke <marian.buschsieweke@posteo.net>
+pkgname=py3-apicula
+_pkgname=Apycula
+pkgver=0.11.1
+pkgrel=1
+pkgdesc="Project Apicula: bitstream documentation for Gowin FPGAs"
+url="https://github.com/YosysHQ/apicula"
+arch="noarch"
+license="MIT"
+depends="
+ py3-crcmod
+ py3-numpy
+ py3-openpyxl
+ py3-pandas
+ py3-pillow
+ python3
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+subpackages="$pkgname-pyc"
+# Note: The GitHub repo contains only the source of the tools used to extract
+# the bitstream info from the binary only Gowin tools via fuzzing. The
+# source package form pypi also contains the extracted databases. Since
+# the fuzzing takes ages and only works on x86_64 glibc systems (the
+# binary only Gowin tools are built for that), we really want to use
+# the pypi source.
+source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+options="!check" # no unit tests provided
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+e3a86adf1ba571d155c0f151595ea303f5d19f24d2eacd882a4967ad1f5ae3eff77e000ac1f88748624ee37a6839f6c806e403cd443912abb7b48f31f37c6be5 Apycula-0.11.1.tar.gz
+"
diff --git a/testing/py3-apsw/APKBUILD b/testing/py3-apsw/APKBUILD
index 3ae8b0b9d33..1259ba3d7e9 100644
--- a/testing/py3-apsw/APKBUILD
+++ b/testing/py3-apsw/APKBUILD
@@ -2,33 +2,45 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=py3-apsw
_pkgname=apsw
-pkgver=3.38.1
-_pkgrel=r1
-pkgrel=0
+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-setuptools sqlite-dev"
-source="$pkgname-$pkgver-$_pkgrel.tar.gz::https://github.com/rogerbinns/apsw/archive/$pkgver-$_pkgrel.tar.gz"
-builddir="$srcdir/$_pkgname-$pkgver-$_pkgrel"
+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
+ "
-replaces=py-apsw # Backwards compatibility
-provides=py-apsw=$pkgver-r$pkgrel # Backwards compatibility
+builddir="$srcdir/$_pkgname-$pkgver"
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- python3 setup.py 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 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
-4d161641d7bf7f933507e7d7e71d437d9db95f7327e29cf34848d9b741e2711dafbefbf19cb34d78d83b4e69115acad855f924fdf80de1cea4c9d61fe0f2b670 py3-apsw-3.38.1-r1.tar.gz
+0260f6479d5f1188ad172dfc0dd7e4a03c9d809d2f80c2296e587a19286681bb2ce759b0bd19ec6957e2902f18729b7e79410e4db79dff9918089f57dd510828 py3-apsw-3.45.2.0.zip
+8f3957bd6fecb5660a7cab367043e4ccdacd87d8963bbe41cc3d525265de28f08aa207099658d785be29c5c90b818c1418f766995cd780d02b8e36252a389758 detect-sqlite-config.patch
"
diff --git a/testing/py3-apsw/detect-sqlite-config.patch b/testing/py3-apsw/detect-sqlite-config.patch
new file mode 100644
index 00000000000..4750250a09e
--- /dev/null
+++ b/testing/py3-apsw/detect-sqlite-config.patch
@@ -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
diff --git a/testing/py3-arcus/APKBUILD b/testing/py3-arcus/APKBUILD
new file mode 100644
index 00000000000..de241556aa8
--- /dev/null
+++ b/testing/py3-arcus/APKBUILD
@@ -0,0 +1,42 @@
+# Contributor: Aiden Grossman <agrossman154@yahoo.com>
+# Maintainer: Aiden Grossman <agrossman154@yahoo.com>
+pkgname=py3-arcus
+# Needs to be upgraded in sync with libarcus
+pkgver=5.2.2
+pkgrel=4
+pkgdesc="Python bindings for libarcus"
+url="https://github.com/Ultimaker/pyArcus"
+arch="all"
+license="LGPL-3.0-only"
+makedepends="
+ cmake
+ libarcus-dev
+ protobuf-dev
+ py3-sip
+ python3-dev
+ samurai
+ "
+options="!check" # package doesn't provide any tests
+source="$pkgname-$pkgver.tar.gz::https://github.com/Ultimaker/pyArcus/archive/refs/tags/$pkgver.tar.gz
+ cmake.patch
+ cmake-helpers.patch
+ pyproject.patch"
+builddir="$srcdir/pyArcus-$pkgver"
+
+build() {
+ cmake -G Ninja -B build \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=Release
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+b24cbb9a5d7aa917b1b21e46f935b1293645e731d4e475a5abe364237f35708e8e96a1c6f06fe78e2e0e381737f4a27a6db87e42a5f4de9d48091d9de096f9b0 py3-arcus-5.2.2.tar.gz
+f14e55cd31c13051981f26364e34da8c94e8eb5227b1cfd6fe44b9f97b5a4dcf6142a1751fa62eb0514a47583e6ec2d51dc253f23cf72c3fe6a1cb5dca136f21 cmake.patch
+de75b985607feae0a9c511742915814e9c3d4bc467183f010ccc334ce4d0d952b6ff86020360b78558c4738cc03cf62c386b44ed76bcec12075c4a93dd03eeb7 cmake-helpers.patch
+ef593230d5c78da8ba0fc6ea83225c4543857de1837d3151c45e59ffd7c98063b8f97f25d01c15b6a8f90c26c919206f9f7fa26c9650117f4ce7be49ebca876f pyproject.patch
+"
diff --git a/testing/py3-arcus/cmake-helpers.patch b/testing/py3-arcus/cmake-helpers.patch
new file mode 100644
index 00000000000..c556985b9ff
--- /dev/null
+++ b/testing/py3-arcus/cmake-helpers.patch
@@ -0,0 +1,254 @@
+--- /dev/null
++++ ./cmake/CMakeBuilder.py
+@@ -0,0 +1,13 @@
++from sipbuild import SetuptoolsBuilder
++
++
++class CMakeBuilder(SetuptoolsBuilder):
++ def __init__(self, project, **kwargs):
++ print("Using the CMake builder")
++ super().__init__(project, **kwargs)
++
++ def build(self):
++ """ Only Generate the source files """
++ print("Generating the source files")
++ self._generate_bindings()
++ self._generate_scripts()
+--- /dev/null
++++ ./cmake/FindSIP.cmake
+@@ -0,0 +1,65 @@
++# Find SIP
++# ~~~~~~~~
++#
++# SIP website: http://www.riverbankcomputing.co.uk/sip/index.php
++#
++# Find the installed version of SIP. FindSIP should be called after Python
++# has been found.
++#
++# This file defines the following variables:
++#
++# SIP_VERSION - The version of SIP found expressed as a 6 digit hex number
++# suitable for comparison as a string.
++#
++# SIP_VERSION_STR - The version of SIP found as a human readable string.
++#
++# SIP_BINARY_PATH - Path and filename of the SIP command line executable.
++#
++# SIP_INCLUDE_DIR - Directory holding the SIP C++ header file.
++#
++# SIP_DEFAULT_SIP_DIR - Default directory where .sip files should be installed
++# into.
++
++# Copyright (c) 2007, Simon Edwards <simon@simonzone.com>
++# Redistribution and use is allowed according to the terms of the BSD license.
++# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
++
++
++
++IF(SIP_VERSION OR SIP_BUILD_EXECUTABLE)
++ # Already in cache, be silent
++ SET(SIP_FOUND TRUE)
++ELSE()
++
++ FIND_FILE(_find_sip_py FindSIP.py PATHS ${CMAKE_MODULE_PATH} NO_CMAKE_FIND_ROOT_PATH)
++
++ EXECUTE_PROCESS(COMMAND ${Python_EXECUTABLE} ${_find_sip_py} OUTPUT_VARIABLE sip_config)
++ IF(sip_config)
++ STRING(REGEX REPLACE "^sip_version:([^\n]+).*$" "\\1" SIP_VERSION ${sip_config})
++ STRING(REGEX REPLACE ".*\nsip_version_num:([^\n]+).*$" "\\1" SIP_VERSION_NUM ${sip_config})
++ STRING(REGEX REPLACE ".*\nsip_version_str:([^\n]+).*$" "\\1" SIP_VERSION_STR ${sip_config})
++ STRING(REGEX REPLACE ".*\ndefault_sip_dir:([^\n]+).*$" "\\1" SIP_DEFAULT_SIP_DIR ${sip_config})
++ IF(${SIP_VERSION_STR} VERSION_LESS 5)
++ STRING(REGEX REPLACE ".*\nsip_bin:([^\n]+).*$" "\\1" SIP_BINARY_PATH ${sip_config})
++ STRING(REGEX REPLACE ".*\nsip_inc_dir:([^\n]+).*$" "\\1" SIP_INCLUDE_DIR ${sip_config})
++ STRING(REGEX REPLACE ".*\nsip_module_dir:([^\n]+).*$" "\\1" SIP_MODULE_DIR ${sip_config})
++ ELSE(${SIP_VERSION_STR} VERSION_LESS 5)
++ FIND_PROGRAM(SIP_BUILD_EXECUTABLE sip-build)
++ ENDIF(${SIP_VERSION_STR} VERSION_LESS 5)
++ SET(SIP_FOUND TRUE)
++ ENDIF(sip_config)
++
++ IF(SIP_FOUND)
++ IF(NOT SIP_FIND_QUIETLY)
++ MESSAGE(STATUS "Found SIP version: ${SIP_VERSION_STR}")
++ ENDIF(NOT SIP_FIND_QUIETLY)
++ ELSE(SIP_FOUND)
++ IF(SIP_FIND_REQUIRED)
++ MESSAGE(FATAL_ERROR "Could not find SIP")
++ ENDIF(SIP_FIND_REQUIRED)
++ ENDIF(SIP_FOUND)
++
++ENDIF()
++
++include(${CMAKE_SOURCE_DIR}/cmake/SIPMacros.cmake)
++ADD_DEFINITIONS(-DSIP_VERSION=0x${SIP_VERSION})
+--- /dev/null
++++ ./cmake/FindSIP.py
+@@ -0,0 +1,57 @@
++# -*- coding: utf-8 -*-
++#
++# Copyright (c) 2007, Simon Edwards <simon@simonzone.com>
++# All rights reserved.
++#
++# Redistribution and use in source and binary forms, with or without
++# modification, are permitted provided that the following conditions are met:
++# * Redistributions of source code must retain the above copyright
++# notice, this list of conditions and the following disclaimer.
++# * Redistributions in binary form must reproduce the above copyright
++# notice, this list of conditions and the following disclaimer in the
++# documentation and/or other materials provided with the distribution.
++# * Neither the name of the Simon Edwards <simon@simonzone.com> nor the
++# names of its contributors may be used to endorse or promote products
++# derived from this software without specific prior written permission.
++#
++# THIS SOFTWARE IS PROVIDED BY Simon Edwards <simon@simonzone.com> ''AS IS'' AND ANY
++# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
++# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
++# DISCLAIMED. IN NO EVENT SHALL Simon Edwards <simon@simonzone.com> BE LIABLE FOR ANY
++# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
++# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
++# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
++# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
++# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
++# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
++#
++# FindSIP.py
++# Copyright (c) 2007, Simon Edwards <simon@simonzone.com>
++# Redistribution and use is allowed according to the terms of the BSD license.
++# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
++
++try:
++ import sipbuild
++
++ print("sip_version:%06.0x" % sipbuild.version.SIP_VERSION)
++ print("sip_version_num:%d" % sipbuild.version.SIP_VERSION)
++ print("sip_version_str:%s" % sipbuild.version.SIP_VERSION_STR)
++
++ from distutils.sysconfig import get_python_lib
++ python_modules_dir = get_python_lib(plat_specific=1)
++ print("default_sip_dir:%s" % python_modules_dir)
++except ImportError: # Code for SIP v4
++ import sipconfig
++
++ sipcfg = sipconfig.Configuration()
++ print("sip_version:%06.0x" % sipcfg.sip_version)
++ print("sip_version_num:%d" % sipcfg.sip_version)
++ print("sip_version_str:%s" % sipcfg.sip_version_str)
++ print("sip_bin:%s" % sipcfg.sip_bin)
++ print("default_sip_dir:%s" % sipcfg.default_sip_dir)
++ print("sip_inc_dir:%s" % sipcfg.sip_inc_dir)
++ # SIP 4.19.10+ has new sipcfg.sip_module_dir
++ if hasattr(sipcfg, "sip_module_dir"):
++ print("sip_module_dir:%s" % sipcfg.sip_module_dir)
++ else:
++ print("sip_module_dir:%s" % sipcfg.sip_mod_dir)
+--- /dev/null
++++ ./cmake/SIPMacros.cmake
+@@ -0,0 +1,107 @@
++
++
++# Macros for SIP
++# ~~~~~~~~~~~~~~
++
++set(SIP_ARGS --pep484-pyi --no-protected-is-public)
++
++function(add_sip_module MODULE_TARGET)
++ if(NOT SIP_BUILD_EXECUTABLE)
++ set(SIP_BUILD_EXECUTABLE ${CMAKE_PREFIX_PATH}/Scripts/sip-build)
++ endif()
++
++ message(STATUS "SIP: Generating pyproject.toml")
++ configure_file(${CMAKE_SOURCE_DIR}/pyproject.toml.in ${CMAKE_CURRENT_BINARY_DIR}/pyproject.toml)
++ configure_file(${CMAKE_SOURCE_DIR}/cmake/CMakeBuilder.py ${CMAKE_CURRENT_BINARY_DIR}/CMakeBuilder.py)
++ if(WIN32)
++ set(ext .pyd)
++ set(env_path_sep ";")
++ else()
++ set(ext .so)
++ set(env_path_sep ":")
++ endif()
++
++ message(STATUS "SIP: Generating source files")
++ execute_process(
++ COMMAND ${CMAKE_COMMAND} -E env "PYTHONPATH=${PYTHONPATH}${env_path_sep}$ENV{PYTHONPATH}${env_path_sep}${CMAKE_CURRENT_BINARY_DIR}" ${SIP_BUILD_EXECUTABLE} ${SIP_ARGS}
++ COMMAND_ECHO STDOUT
++ WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/
++ )
++ # This will generate the source-files during the configuration step in CMake. Needed to obtain the sources
++
++ # Touch the generated files (8 in total) to make them dirty and force them to rebuild
++ message(STATUS "SIP: Touching the source files")
++ set(_sip_output_files)
++ list(LENGTH SIP_FILES _no_outputfiles)
++ foreach(_concat_file_nr RANGE 0 ${_no_outputfiles})
++ if(${_concat_file_nr} LESS 8)
++ list(APPEND _sip_output_files "${CMAKE_CURRENT_BINARY_DIR}/${MODULE_TARGET}/${MODULE_TARGET}/sip${MODULE_TARGET}part${_concat_file_nr}.cpp")
++ endif()
++ endforeach()
++
++ # Find the generated source files
++ message(STATUS "SIP: Collecting the generated source files")
++ file(GLOB sip_c "${CMAKE_CURRENT_BINARY_DIR}/${MODULE_TARGET}/${MODULE_TARGET}/*.c")
++ file(GLOB sip_cpp "${CMAKE_CURRENT_BINARY_DIR}/${MODULE_TARGET}/${MODULE_TARGET}/*.cpp")
++ file(GLOB sip_hdr "${CMAKE_CURRENT_BINARY_DIR}/${MODULE_TARGET}/${MODULE_TARGET}/*.h")
++
++ # Add the user specified source files
++ message(STATUS "SIP: Collecting the user specified source files")
++ get_target_property(usr_src ${MODULE_TARGET} SOURCES)
++
++ # create the target library and link all the files (generated and user specified
++ message(STATUS "SIP: Linking the interface target against the shared library")
++ set(sip_sources "${sip_c}" "${sip_cpp}" "${usr_src}")
++
++ if (BUILD_SHARED_LIBS)
++ add_library("sip_${MODULE_TARGET}" SHARED ${sip_sources})
++ else()
++ add_library("sip_${MODULE_TARGET}" STATIC ${sip_sources})
++ endif()
++
++ # Make sure that the library name of the target is the same as the MODULE_TARGET with the appropriate extension
++ target_link_libraries("sip_${MODULE_TARGET}" PRIVATE "${MODULE_TARGET}")
++ set_target_properties("sip_${MODULE_TARGET}" PROPERTIES PREFIX "")
++ set_target_properties("sip_${MODULE_TARGET}" PROPERTIES SUFFIX ${ext})
++ set_target_properties("sip_${MODULE_TARGET}" PROPERTIES OUTPUT_NAME "${MODULE_TARGET}")
++
++ # Add the custom command to (re-)generate the files and mark them as dirty. This allows the user to actually work
++ # on the sip definition files without having to reconfigure the complete project.
++ if (NOT DEFINED PYTHONPATH)
++ set(PYTHONPATH "")
++ endif ()
++ add_custom_command(
++ TARGET "sip_${MODULE_TARGET}"
++ COMMAND ${CMAKE_COMMAND} -E env "PYTHONPATH=${PYTHONPATH}${env_path_sep}$ENV{PYTHONPATH}${env_path_sep}${CMAKE_CURRENT_BINARY_DIR}" ${SIP_BUILD_EXECUTABLE} ${SIP_ARGS}
++ COMMAND ${CMAKE_COMMAND} -E touch ${_sip_output_files}
++ WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/
++ MAIN_DEPENDENCY ${MODULE_SIP}
++ DEPENDS ${sip_sources}
++ VERBATIM
++ )
++
++ set_target_properties("sip_${MODULE_TARGET}"
++ PROPERTIES
++ RESOURCE "${CMAKE_CURRENT_BINARY_DIR}/${MODULE_TARGET}/${MODULE_TARGET}/${MODULE_TARGET}.pyi")
++endfunction()
++
++function(install_sip_module MODULE_TARGET)
++ if(DEFINED ARGV1)
++ set(_install_path ${ARGV1})
++ else()
++ if(DEFINED Python_SITEARCH)
++ set(_install_path ${Python_SITEARCH})
++ elseif(DEFINED Python_SITELIB)
++ set(_install_path ${Python_SITELIB})
++ else()
++ message(FATAL_ERROR "SIP: Specify the site-packages location")
++ endif()
++ endif()
++ message(STATUS "SIP: Installing Python module and PEP 484 file in ${_install_path}")
++ install(TARGETS "sip_${MODULE_TARGET}"
++ ARCHIVE DESTINATION ${_install_path}
++ LIBRARY DESTINATION ${_install_path}
++ RUNTIME DESTINATION ${_install_path}
++ RESOURCE DESTINATION ${_install_path}
++ )
++endfunction()
diff --git a/testing/py3-arcus/cmake.patch b/testing/py3-arcus/cmake.patch
new file mode 100644
index 00000000000..e7390e0fe00
--- /dev/null
+++ b/testing/py3-arcus/cmake.patch
@@ -0,0 +1,32 @@
+--- ./CMakeLists.txt.orig
++++ ./CMakeLists.txt
+@@ -2,22 +2,22 @@
+ project(pyarcus)
+ cmake_minimum_required(VERSION 3.20)
+
+-find_package(protobuf REQUIRED)
+-find_package(cpython REQUIRED)
+-find_package(arcus REQUIRED)
++list(APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake)
+
+-find_package(standardprojectsettings REQUIRED)
+-find_package(sipbuildtool REQUIRED)
++find_package(Protobuf REQUIRED)
++find_package(Python REQUIRED COMPONENTS Interpreter Development)
++find_package(Arcus REQUIRED)
+
++find_package(SIP 6.5.0 REQUIRED)
++
+ add_library(pyArcus INTERFACE src/PythonMessage.cpp)
+-use_threads(pyArcus)
+
+ target_include_directories(pyArcus
+ INTERFACE
+ $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
+ $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include/>
+ )
+-target_link_libraries(pyArcus INTERFACE arcus::arcus protobuf::libprotobuf cpython::cpython)
++target_link_libraries(pyArcus INTERFACE Arcus protobuf::libprotobuf Python::Python)
+ add_sip_module(pyArcus)
+ install_sip_module(pyArcus)
+
diff --git a/testing/py3-arcus/pyproject.patch b/testing/py3-arcus/pyproject.patch
new file mode 100644
index 00000000000..3dd7f3a6e7b
--- /dev/null
+++ b/testing/py3-arcus/pyproject.patch
@@ -0,0 +1,20 @@
+--- /dev/null
++++ ./pyproject.toml.in
+@@ -0,0 +1,17 @@
++[build-system]
++requires = ["sip >=6, <7"]
++build-backend = "sipbuild.api"
++
++[tool.sip.metadata]
++name = "pyArcus"
++
++[tool.sip.project]
++builder-factory = "CMakeBuilder"
++sip-files-dir = "${CMAKE_CURRENT_SOURCE_DIR}/python/"
++sip-include-dirs = ["CMAKE_CURRENT_SOURCE_DIR/python/"]
++build-dir = "${CMAKE_CURRENT_BINARY_DIR}/pyArcus/"
++
++[tool.sip.bindings.pyArcus]
++exceptions = true
++release-gil = true
++concatenate = 8
diff --git a/testing/py3-argcomplete/APKBUILD b/testing/py3-argcomplete/APKBUILD
deleted file mode 100644
index dc5b485874d..00000000000
--- a/testing/py3-argcomplete/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
-# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
-pkgname=py3-argcomplete
-_pyname=argcomplete
-pkgver=2.0.0
-pkgrel=0
-pkgdesc="Easy, extensible command line tab completion of arguments for your Python script"
-options="!check" # Tests are py2 dependent
-url="https://github.com/kislyuk/argcomplete"
-arch="noarch"
-license="Apache-2.0"
-depends="python3"
-makedepends="py3-setuptools"
-checkdepends="py3-coverage py3-flake8 py3-pexpect bash"
-source="$pkgname-$pkgver.tar.gz::https://github.com/kislyuk/$_pyname/archive/v$pkgver.tar.gz
- "
-builddir="$srcdir/$_pyname-$pkgver"
-
-replaces="py-argcomplete" # Backwards compatibility
-provides="py-argcomplete=$pkgver-r$pkgrel" # Backwards compatibility
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 setup.py test
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir" --optimize=1
-}
-
-sha512sums="
-3253b8d08875959b4d55ef20d9b31fd598ce54ad583b91758d662d883818348ebb1d3185c4c2364c453e3c6a79c202e087adde1c75d1c15f1c50b47723a3d226 py3-argcomplete-2.0.0.tar.gz
-"
diff --git a/testing/py3-arpeggio/APKBUILD b/testing/py3-arpeggio/APKBUILD
index 5bf3a3c5c40..df811b77cf5 100644
--- a/testing/py3-arpeggio/APKBUILD
+++ b/testing/py3-arpeggio/APKBUILD
@@ -1,27 +1,19 @@
# Contributor: Michał Polański <michal@polanski.me>
# Maintainer: Michał Polański <michal@polanski.me>
pkgname=py3-arpeggio
-pkgver=2.0.0
-pkgrel=0
+pkgver=2.0.2
+pkgrel=1
pkgdesc="Recursive descent parser based on PEG grammars"
url="https://github.com/textX/Arpeggio"
license="MIT"
arch="noarch"
depends="python3"
-makedepends="
- py3-pytest-runner
- py3-setuptools
- "
+makedepends="py3-setuptools"
checkdepends="py3-pytest"
-source="https://github.com/textX/Arpeggio/archive/$pkgver/Arpeggio-$pkgver.tar.gz"
+subpackages="$pkgname-pyc"
+source="https://github.com/textX/Arpeggio/archive/$pkgver/py3-arpeggio-$pkgver.tar.gz"
builddir="$srcdir/Arpeggio-$pkgver"
-prepare() {
- default_prepare
-
- sed -e "/wheel/d" -i setup.cfg
-}
-
build() {
python3 setup.py build
}
@@ -31,11 +23,11 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir" --skip-build
+ python3 setup.py install --skip-build --root="$pkgdir"
rm -r "$pkgdir"/usr/lib/python3.*/site-packages/arpeggio/tests
}
sha512sums="
-b5a75eea515b7dd0ad7dc261703300bd5b3e5a70f0946845f8828dbf7c76613aef926fed9538fe0f9a71c1666edc9f8cff31afddd551bea1d7b1b9ad7a9cc405 Arpeggio-2.0.0.tar.gz
+53628b94c5181a5768be686d7c27178f77823065164dcaa421125aa3c5f2fedf2bf9e54761b92a73832dd9ae667a23eaa4ca3b00155d1acd800c00acf0f449a4 py3-arpeggio-2.0.2.tar.gz
"
diff --git a/testing/py3-asif/APKBUILD b/testing/py3-asif/APKBUILD
index 41d9d60aa49..79142ba4d45 100644
--- a/testing/py3-asif/APKBUILD
+++ b/testing/py3-asif/APKBUILD
@@ -1,15 +1,16 @@
# Maintainer: Pedro Lucas Porcellis <porcellis@eletrotupi.com>
pkgname=py3-asif
_pkgname=asif
-pkgver=0.3.1
-pkgrel=0
+pkgver=0.3.2
+pkgrel=2
pkgdesc="asyncio-powered IRC bot framework"
url="https://github.com/minus7/asif"
arch="noarch"
license="MIT"
depends="python3"
makedepends="py3-setuptools"
-source="$pkgname-$pkgver.tar.gz::https://github.com/minus7/asif/archive/$pkgver.tar.gz"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/minus7/asif/archive/v$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
options="!check" # no testsuite
@@ -18,9 +19,9 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
-422c9219640c6a2704ea5925d9cb2d6c7ce1195223102109b729dca516d4371d94ee8b8d2e0b5f0ffaca4cceffabfb6b23bfef84a494bf34723799f02c1089f2 py3-asif-0.3.1.tar.gz
+7bc8a1a3ed2992a0e30e6f2595564706335139513ef25ec4e632afe246f446029dbb0ff3abfa942b65b0adb91e6c1d7089f36157003fd41a84cf52ae8cc72928 py3-asif-0.3.2.tar.gz
"
diff --git a/testing/py3-ask/APKBUILD b/testing/py3-ask/APKBUILD
index a61ad7b2613..0cc7e1c1842 100644
--- a/testing/py3-ask/APKBUILD
+++ b/testing/py3-ask/APKBUILD
@@ -3,26 +3,30 @@
pkgname=py3-ask
_pkgname=ask
pkgver=0.0.8
-pkgrel=4
+pkgrel=8
pkgdesc="An easy input validation for Python"
options="!check" # No testsuite
url="https://github.com/chive/ask"
arch="noarch"
license="MIT"
depends="python3"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
-replaces="py-ask" # Backwards compatibility
+replaces="py-ask" # Backwards compatibility
provides="py-ask=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="8258349066a4f57d1a5e7a136cca8330e662e135ac366b905327e9c3535ec1a949865cf20e1332d9f8a22d06c76474f86cdbd11e52bf7c002e87a3f3654ded60 ask-0.0.8.tar.gz"
diff --git a/testing/py3-ast-monitor/APKBUILD b/testing/py3-ast-monitor/APKBUILD
deleted file mode 100644
index 3be414faa36..00000000000
--- a/testing/py3-ast-monitor/APKBUILD
+++ /dev/null
@@ -1,39 +0,0 @@
-# Contributor: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-# Maintainer: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-pkgname=py3-ast-monitor
-_pkgorig=ast_monitor
-pkgver=0.1.3
-pkgrel=0
-pkgdesc="A wearable Raspberry Pi computer for cyclists"
-url="https://github.com/firefly-cpp/AST-Monitor"
-arch="noarch !s390x !riscv64 !armhf" # py3-sport-activities-features # py3-pyqt-feedback-flow
-license="MIT"
-depends="
- python3
- py3-geopy
- py3-matplotlib
- py3-pyqt-feedback-flow
- py3-qt5
- py3-sport-activities-features
- py3-tcxreader
- "
-checkdepends="python3-dev py3-pytest"
-makedepends="py3-setuptools"
-source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/a/ast-monitor/ast_monitor-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgorig-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 -m pytest
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-d882da6b006624e8f39af7738debb0239ad8a11287240a45c7a8d829d22f2ff6a44035bab76c503778c9a3c12e82ced16afb7dae363346050ac2ee4dcc1dc004 py3-ast-monitor-0.1.3.tar.gz
-"
diff --git a/testing/py3-astral/APKBUILD b/testing/py3-astral/APKBUILD
index 60699844077..44c3a5ab39b 100644
--- a/testing/py3-astral/APKBUILD
+++ b/testing/py3-astral/APKBUILD
@@ -2,15 +2,16 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-astral
_pkgname=astral
-pkgver=2.2
-pkgrel=2
+pkgver=3.2
+pkgrel=3
pkgdesc="Calculations for the position of the sun and moon"
-url="https://pypi.python.org/pypi/astral"
+url="https://pypi.org/project/astral"
arch="noarch"
license="Apache-2.0"
-depends="py3-requests py3-tz python3"
-makedepends="py3-setuptools"
+depends="python3 tzdata"
+makedepends="py3-poetry-core py3-gpep517 py3-installer"
checkdepends="py3-pytest py3-freezegun"
+subpackages="$pkgname-pyc"
source="$_pkgname-$pkgver.tar.gz::https://github.com/sffjunkie/astral/archive/$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -18,16 +19,21 @@ replaces=py-astral # Backwards compatibility
provides=py-astral=$pkgver-r$pkgrel # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
# skip the webtest since we lack an API key
- PYTHONPATH="$PWD/build/lib" py.test-3 -v -m "not webtest"
+ pytest -v -m "not webtest"
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/astral-*.whl
}
-sha512sums="2b2f2c6f6f5960f747542e6410800bfab1125aa6ebe2d77d9fb4ef9e99458e808449c96855ef4d1cb8eac07f8e400e2cdbe71420391f6ee81efab31ce7693b90 astral-2.2.tar.gz"
+sha512sums="
+f463d58ecd2d251a5c9bbcc18a65d7234e596a6c4f8fdd29574049e5d6942cc3881da8e3851a052050b1e40db5db55fdd4967468b5f6bea2fa8ea597b0d65251 astral-3.2.tar.gz
+"
diff --git a/testing/py3-asyauth/APKBUILD b/testing/py3-asyauth/APKBUILD
new file mode 100644
index 00000000000..702bc9a62dc
--- /dev/null
+++ b/testing/py3-asyauth/APKBUILD
@@ -0,0 +1,39 @@
+# Contributor: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
+# Maintainer: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
+pkgname=py3-asyauth
+_pyname=asyauth
+pkgver=0.0.20
+pkgrel=1
+pkgdesc="Unified authentication library"
+url="https://github.com/skelsec/asyauth"
+arch="noarch"
+license="MIT"
+depends="
+ py3-asn1crypto
+ py3-asysocks
+ py3-minikerberos
+ py3-unicrypto
+ "
+makedepends="
+ py3-gpep517
+ py3-wheel
+ py3-setuptools
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/skelsec/asyauth/archive/refs/tags/$pkgver.tar.gz"
+builddir="$srcdir/$_pyname-$pkgver"
+options="!check" # no tests provided
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" .dist/*.whl
+}
+
+sha512sums="
+1d34ea4114f7df70f3b180ab5effc00db9d48ef8450173fc7ea8b0e7129f7e1b95569b1db8e3c5fd196acf3db0046a6dbf75c0480ac3ff9bbeb9f4770994d432 py3-asyauth-0.0.20.tar.gz
+"
diff --git a/testing/py3-async-lru/APKBUILD b/testing/py3-async-lru/APKBUILD
new file mode 100644
index 00000000000..fb9e5e189ac
--- /dev/null
+++ b/testing/py3-async-lru/APKBUILD
@@ -0,0 +1,38 @@
+# Automatically generated by apkbuild-pypi, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=py3-async-lru
+#_pkgreal is used by apkbuild-pypi to find modules at PyPI
+_pkgreal=async-lru
+pkgver=2.0.4
+pkgrel=1
+pkgdesc="Simple LRU cache for asyncio"
+url="https://pypi.org/project/async-lru/"
+arch="noarch"
+license="MIT"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+checkdepends="py3-pytest-asyncio py3-pytest-cov py3-pytest-timeout"
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/a/async-lru/async-lru-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+f659fe8fdcec310f0070ffee5eabbc92c50b9d987d0b221e119a6cc67710f4c704ba3447518170e408f32b598abcf8e94fcaec9c9111120947126f26d5f021c6 async-lru-2.0.4.tar.gz
+"
diff --git a/testing/py3-asyncmock/APKBUILD b/testing/py3-asyncmock/APKBUILD
deleted file mode 100644
index d70c8579842..00000000000
--- a/testing/py3-asyncmock/APKBUILD
+++ /dev/null
@@ -1,27 +0,0 @@
-# Contributor: Duncan Bellamy <dunk@denkimushi.com>
-# Maintainer: Duncan Bellamy <dunk@denkimushi.com>
-pkgname=py3-asyncmock
-pkgver=0.4.2
-pkgrel=1
-pkgdesc="Extension to the standard mock framework to support support async"
-url="https://github.com/timsavage/asyncmock"
-arch="noarch"
-license="BSD-3-Clause"
-# PyPi tarball has no tests
-options="!check"
-depends="python3 py3-mock"
-makedepends="py3-setuptools py3-pytest-runner"
-source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/a/asyncmock/asyncmock-$pkgver.tar.gz"
-builddir="$srcdir/asyncmock-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-b421849eda8edddd9e5d12b90ed3544ae164b890deff4052d5be252d65b9ad11ee32a45250de1e103fc84d5de06bf05d76aacaa4b907b1b784ccc18135674959 py3-asyncmock-0.4.2.tar.gz
-"
diff --git a/testing/py3-asysocks/APKBUILD b/testing/py3-asysocks/APKBUILD
new file mode 100644
index 00000000000..4b420bd2a59
--- /dev/null
+++ b/testing/py3-asysocks/APKBUILD
@@ -0,0 +1,38 @@
+# Contributor: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
+# Maintainer: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
+pkgname=py3-asysocks
+_pyname="asysocks"
+pkgver=0.2.12
+pkgrel=1
+pkgdesc="Socks5 / Socks4 client and server library"
+url="https://github.com/skelsec/asysocks"
+arch="noarch"
+license="MIT"
+depends="
+ py3-asn1crypto
+ py3-cryptography
+ py3-h11
+ "
+makedepends="
+ py3-gpep517
+ py3-wheel
+ py3-setuptools
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/skelsec/asysocks/archive/refs/tags/$pkgver.tar.gz"
+builddir="$srcdir/$_pyname-$pkgver"
+options="!check" # no tests provided
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" .dist/*.whl
+}
+
+sha512sums="
+9aa67b2d8548737e0bddecd54a0d01bbfe2dedac40f90dc3be08d26b259a8994b8f4f1ab1bacf783e7a87271d8c568fc71eeb46bcbced829cc7ae0b1b4f7e53f py3-asysocks-0.2.12.tar.gz
+"
diff --git a/testing/py3-audioread/APKBUILD b/testing/py3-audioread/APKBUILD
deleted file mode 100644
index 2b75273a739..00000000000
--- a/testing/py3-audioread/APKBUILD
+++ /dev/null
@@ -1,28 +0,0 @@
-# Contributor: Carlo Landmeter <clandmeter@alpinelinux.org>
-# Maintainer:
-pkgname=py3-audioread
-_pkgname=audioread
-pkgver=2.1.9
-pkgrel=2
-pkgdesc="Multi-library, cross-platform audio decoding"
-url="https://github.com/sampsyo/audioread"
-arch="noarch"
-license="MIT"
-depends="python3"
-makedepends="py3-setuptools"
-options="!check" # upstream provides no testsuite
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgname-$pkgver"
-
-replaces="py-audioread" # Backwards compatibility
-provides="py-audioread=$pkgver-r$pkgrel" # Backwards compatibility
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="ad2260b6931cfeebb815d48221366a2a5d8095965ff18e94c5eb0809d9a1b02e650a62ad5e895b7f1e003771fa3babf56f59ce4538aca78b678566fd28327290 audioread-2.1.9.tar.gz"
diff --git a/testing/py3-authres/APKBUILD b/testing/py3-authres/APKBUILD
new file mode 100644
index 00000000000..a413a79e6b7
--- /dev/null
+++ b/testing/py3-authres/APKBUILD
@@ -0,0 +1,29 @@
+# Contributor: knuxify <knuxify@gmail.com>
+# Maintainer: knuxify <knuxify@gmail.com>
+pkgname=py3-authres
+pkgver=1.2.0
+pkgrel=1
+pkgdesc="RFC 5451/7001/7601 Authentication-Results Headers generation and parsing for Python"
+url="https://launchpad.net/authentication-results-python"
+arch="noarch"
+license="Apache-2.0"
+depends="python3"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+subpackages="$pkgname-pyc"
+source="https://launchpad.net/authentication-results-python/1.2/$pkgver/+download/authres-$pkgver.tar.gz"
+builddir="$srcdir/authres-$pkgver"
+options="!check" # no test suite
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" .dist/*.whl
+}
+
+sha512sums="
+b801b24127f90608c4e7870a3a15bfb6e350f7d8bbe7b7cd9e1c6d541fd360afb9bdd15f35e864f01f8ff2d33d65650e712c932c9402ab2affb86bc7536b63e1 authres-1.2.0.tar.gz
+"
diff --git a/testing/py3-avro/APKBUILD b/testing/py3-avro/APKBUILD
index 07e25a5c48d..ba4e252600c 100644
--- a/testing/py3-avro/APKBUILD
+++ b/testing/py3-avro/APKBUILD
@@ -2,27 +2,41 @@
# Contributor: Gennady Feldman <gena01@gmail.com>
pkgname=py3-avro
_pkgname=avro
-pkgver=1.10.2
+pkgver=1.11.3
pkgrel=1
pkgdesc="Serialization and RPC framework"
url="https://avro.apache.org/"
arch="noarch"
license="Apache-2.0"
-depends="py3-six"
-makedepends="py3-setuptools py3-pycodestyle py3-isort"
+depends="python3"
+makedepends="
+ py3-gpep517
+ py3-isort
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/apache/$_pkgname/archive/release-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgname-release-$pkgver/lang/py3"
+builddir="$srcdir/$_pkgname-release-$pkgver/lang/py"
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- python3 setup.py test
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
-sha512sums="7a136dde14e20329c4b2163f3707eff2b352405e56f7b48e56af78e58ef55b992397a7d4bf319b3be86edbc0e5f7aed6af014a10d73452a261ab8ed3d7e25e93 py3-avro-1.10.2.tar.gz"
+sha512sums="
+728609f562460e1115366663ede2c5d4acbdd6950c1ee3e434ffc65d28b72e3a43c3ebce93d0a8459f0c4f6c492ebb9444e2127a0385f38eb7cdf74b28f0c3ed py3-avro-1.11.3.tar.gz
+"
diff --git a/testing/py3-axolotl-curve25519/APKBUILD b/testing/py3-axolotl-curve25519/APKBUILD
deleted file mode 100644
index a7a518939af..00000000000
--- a/testing/py3-axolotl-curve25519/APKBUILD
+++ /dev/null
@@ -1,27 +0,0 @@
-# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
-pkgname=py3-axolotl-curve25519
-_pkgname="python-${pkgname#py3-}"
-pkgver=0.4.1b
-_pkgver=0.4.1-2
-pkgrel=5
-pkgdesc="A python wrapper for curve25519 library with ed25519 signatures"
-options="!check" # No testsuite
-url="https://github.com/tgalal/python-axolotl-curve25519"
-arch="all"
-license="GPL-3.0-only"
-makedepends="py3-setuptools python3-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/tgalal/$_pkgname/archive/$_pkgver.tar.gz"
-builddir="$srcdir"/$_pkgname-$_pkgver
-
-replaces="py-axolotl-cuve25519" # Backwards compatibility
-provides="py-axolotl-cuve25519=$pkgver-r$pkgrel" # Backwards compatibility
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="cbc7c6caa47a9a811640c247a1be727d7b1b68bcdb4c5336e02b4d1eaf9fd2c57b7438b0da466a379a1c0f3f146756b9b7eea3c9b7945ce88478d4bf0b8a1e0d py3-axolotl-curve25519-0.4.1b.tar.gz"
diff --git a/testing/py3-axolotl/APKBUILD b/testing/py3-axolotl/APKBUILD
deleted file mode 100644
index b499633a978..00000000000
--- a/testing/py3-axolotl/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
-pkgname=py3-axolotl
-_pkgname="python-${pkgname#py3-}"
-pkgver=0.2.3
-pkgrel=3
-pkgdesc="Python3 port of libsignal-protocol-java"
-url="https://github.com/tgalal/python-axolotl"
-arch="noarch"
-license="GPL-3.0-only"
-depends="py3-cryptography py3-protobuf py3-axolotl-curve25519"
-makedepends="py3-setuptools"
-checkdepends="py3-cparser"
-source="$pkgname-$pkgver.tar.gz::https://github.com/tgalal/$_pkgname/archive/$pkgver.tar.gz"
-builddir="$srcdir"/$_pkgname-$pkgver
-
-replaces="py-axolotl" # Backwards compatibility
-provides="py-axolotl=$pkgver-r$pkgrel" # Backwards compatibility
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 setup.py test
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="1a10dc9df2f95d19b49909d4d136b5266aae19e24ac84f8b263ae7d4de18f77353c737616ac0648b600e05699a90d348f95c6c1659849986becefb4a0277fc80 py3-axolotl-0.2.3.tar.gz"
diff --git a/testing/py3-babelfish/APKBUILD b/testing/py3-babelfish/APKBUILD
deleted file mode 100644
index 4f207047a5f..00000000000
--- a/testing/py3-babelfish/APKBUILD
+++ /dev/null
@@ -1,30 +0,0 @@
-# Contributor: Philipp Glaum <p@pglaum.de>
-# Maintainer: Philipp Glaum <p@pglaum.de>
-pkgname=py3-babelfish
-_pkgname=babelfish
-pkgver=0.6.0
-pkgrel=0
-pkgdesc="Work with countries and languages"
-url="https://pypi.org/project/babelfish/"
-arch="noarch"
-license="BSD-3-Clause"
-depends="python3 py3-sphinx"
-makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgname-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 setup.py test
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-f5b6c1394ba3106773ceafd63f65e0a4df94ff7860069cdba1d4bbe91bccf528be4ad0eb1acdd00ce336afcd61f29e71910baab511a1fc26ded6aac7e10fe9cf babelfish-0.6.0.tar.gz
-"
diff --git a/testing/py3-banal/APKBUILD b/testing/py3-banal/APKBUILD
new file mode 100644
index 00000000000..07a0e3e446b
--- /dev/null
+++ b/testing/py3-banal/APKBUILD
@@ -0,0 +1,27 @@
+# Maintainer: Daniele Parisi <danieleparisi@mailfence.com>
+pkgname=py3-banal
+_pkgname=banal
+pkgver=1.0.6
+pkgrel=3
+pkgdesc="Commons of banal micro-functions for Python."
+url="https://pypi.org/project/banal/"
+arch="noarch"
+license="MIT"
+depends="python3"
+makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+options="!check" # no test suite available
+
+build() {
+ python3 setup.py build
+}
+
+package() {
+ python3 setup.py install --skip-build --root="$pkgdir"
+}
+
+sha512sums="
+da35a9e5f6e9d905b9b3244a8bc398f1106116e4d5842a90e052bbdb95a17e51a08d2771f4438067d69cfc8834febe4718555d3c00e4e24f8b6e6d6a282682cb banal-1.0.6.tar.gz
+"
diff --git a/testing/py3-bandwidth-sdk/APKBUILD b/testing/py3-bandwidth-sdk/APKBUILD
index 40c64ea1a50..384987772e0 100644
--- a/testing/py3-bandwidth-sdk/APKBUILD
+++ b/testing/py3-bandwidth-sdk/APKBUILD
@@ -1,13 +1,14 @@
# Maintainer:
pkgname=py3-bandwidth-sdk
pkgver=3.1.0
-pkgrel=3
+pkgrel=7
pkgdesc="python helpers for using bandwidth.com API"
-url="https://pypi.python.org/pypi/bandwidth-sdk/"
+url="https://pypi.org/project/bandwidth-sdk/"
arch="noarch"
license="MIT"
depends="py3-requests py3-dateutil py3-lxml py3-six"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="bandwidth-sdk-$pkgver.tar.gz::https://github.com/Bandwidth/python-bandwidth/archive/v$pkgver.tar.gz"
builddir="$srcdir/python-bandwidth-$pkgver"
@@ -20,7 +21,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="31c09c709b4f61741f9eabf5a4ec56d3577996b5b3933c51264442cac1bbf95da5f3e5d9e98b914eb06d8897e273ea0863406fb6bf9c65af0ac1cd71f2f06ac1 bandwidth-sdk-3.1.0.tar.gz"
diff --git a/testing/py3-banknumber/APKBUILD b/testing/py3-banknumber/APKBUILD
deleted file mode 100644
index f7df6001e7c..00000000000
--- a/testing/py3-banknumber/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Contributor: Fabian Affolter <fabian@affolter-engineering.ch>
-# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
-pkgname=py3-banknumber
-_pkgname=banknumber
-pkgver=2.0
-pkgrel=6
-pkgdesc="Python3 module to validate Bank codes"
-url="https://bitbucket.org/zikzakmedia/python-banknumber"
-arch="noarch"
-license="GPL-3.0-or-later"
-depends="python3"
-makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
-builddir="$srcdir"/$_pkgname-$pkgver
-
-replaces="py-banknumber" # Backwards compatibility
-provides="py-banknumber=$pkgver-r$pkgrel" # Backwards compatibility
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 setup.py test
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="78eb4911483a2cf54f5f2c5dd0b023483b9b14fc630c1a93238145491f79de31d3213dbee2838dd36643f4adca89136bda1a104b89710a7292aa497f511bb25d banknumber-2.0.tar.gz"
diff --git a/testing/py3-barcodenumber/APKBUILD b/testing/py3-barcodenumber/APKBUILD
index bf85a0427b7..3b8354daaa3 100644
--- a/testing/py3-barcodenumber/APKBUILD
+++ b/testing/py3-barcodenumber/APKBUILD
@@ -3,25 +3,29 @@
pkgname=py3-barcodenumber
_pkgname=barcodenumber
pkgver=0.2.1
-pkgrel=6
+pkgrel=10
pkgdesc="A Python module to validate product codes"
url="https://bitbucket.org/zikzakmedia/python-barcodenumber"
arch="noarch"
license="GPL-3.0-or-later"
depends="python3"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces=py-barcodenumber # Backwards compatibility
+replaces=py-barcodenumber # Backwards compatibility
provides=py-barcodenumber=$pkgver-r$pkgrel # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="5a2f517cf3ea4d0ff9cbcf7b6b81e44cd4cd3a2ac38bc5b2a087a5e84f0917daa560f6bd7eeb33b3a3695f833fcc321b8fee114f28b89eed7bdb4efaf7de4412 barcodenumber-0.2.1.tar.gz"
diff --git a/testing/py3-base58/APKBUILD b/testing/py3-base58/APKBUILD
new file mode 100644
index 00000000000..055f9dd1397
--- /dev/null
+++ b/testing/py3-base58/APKBUILD
@@ -0,0 +1,30 @@
+# Contributor: Eloi Torrents <eloitor@duck.com>
+# Maintainer: Eloi Torrents <eloitor@duck.com>
+pkgname=py3-base58
+pkgver=2.1.1
+pkgrel=1
+pkgdesc="Bitcoin-compatible Base58 and Base58Check implementation"
+url="https://github.com/keis/base58"
+arch="all"
+license="MIT"
+depends="python3"
+makedepends="py3-setuptools"
+checkdepends="py3-pytest py3-pyhamcrest py3-pytest-benchmark"
+source="$pkgname-$pkgver.tar.gz::https://github.com/keis/base58/archive/v$pkgver.tar.gz"
+builddir="$srcdir/${pkgname/py3-/}-$pkgver"
+
+build() {
+ python3 setup.py build
+}
+
+check() {
+ pytest
+}
+
+package() {
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+sha512sums="
+e39131ffbcc4f2d64d576fc6a6e7052b4f0ac0e9895819cc3086fec686c276bdfc031e8a3756197a18da576cf165b6d8c8d5e72bed9820e7e4dd4053aa9b8068 py3-base58-2.1.1.tar.gz
+"
diff --git a/testing/py3-batalgorithm/APKBUILD b/testing/py3-batalgorithm/APKBUILD
deleted file mode 100644
index 039d7aa588e..00000000000
--- a/testing/py3-batalgorithm/APKBUILD
+++ /dev/null
@@ -1,28 +0,0 @@
-# Contributor: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-# Maintainer: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-pkgname=py3-batalgorithm
-_pkgorig=BatAlgorithm
-pkgver=0.3.1
-pkgrel=0
-pkgdesc="Implementation of Bat Algorithm in Python"
-options="!check" # no tests
-url="https://github.com/buma/BatAlgorithm"
-arch="noarch"
-license="MIT"
-depends="python3"
-makedepends="py3-setuptools"
-source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/B/BatAlgorithm/BatAlgorithm-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgorig-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-
-sha512sums="
-bef691a55df0cfa99d09162c4ef669fe71714bb2d76f4adabad97d95a5222419a14e36b824d1d2be28c31857a2b84c655aa8583afc8d90d23eb3e9e57414baaf py3-batalgorithm-0.3.1.tar.gz
-"
diff --git a/testing/py3-beartype/APKBUILD b/testing/py3-beartype/APKBUILD
new file mode 100644
index 00000000000..91ab9162505
--- /dev/null
+++ b/testing/py3-beartype/APKBUILD
@@ -0,0 +1,44 @@
+# Contributor: Galen Abell <galen@galenabell.com>
+# Maintainer: Galen Abell <galen@galenabell.com>
+pkgname=py3-beartype
+_pyname=beartype
+pkgver=0.18.3
+pkgrel=0
+pkgdesc="Fast, pure-Python type checker"
+url="https://github.com/beartype/beartype"
+arch="noarch"
+license="MIT"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+checkdepends="py3-pytest py3-numpy py3-mypy py3-docutils py3-sphinx"
+subpackages="$pkgname-pyc"
+source="
+ $_pyname-$pkgver.tar.gz::https://github.com/beartype/beartype/archive/refs/tags/v$pkgver.tar.gz
+ "
+builddir="$srcdir/$_pyname-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ # nuitka isn't packaged for alpine yet
+ # pyright isn't packaged anymore
+ # long type-check test fails on some architectures
+ python3 -m venv --clear --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest \
+ --deselect beartype_test/a90_func/z90_lib/a90_nuitka/test_nuitka.py \
+ --deselect beartype_test/a90_func/pep/test_pep561_static.py::test_pep561_pyright \
+ --deselect beartype_test/a00_unit/a70_decor/test_decorwrapper.py::test_wrapper_fail_obj_large
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+f9cf06e9f986890383528aa451becb4a006a7333279e3e4ec8a82b00dbc570f02182f1faf51e89dbb556b0c93d6ac7a3808cef1c92ad6d314e79bf66487511f8 beartype-0.18.3.tar.gz
+"
diff --git a/testing/py3-bencode/APKBUILD b/testing/py3-bencode/APKBUILD
new file mode 100644
index 00000000000..afa1e8c0b10
--- /dev/null
+++ b/testing/py3-bencode/APKBUILD
@@ -0,0 +1,42 @@
+# Contributor: Fabricio Silva <hi@fabricio.dev>
+# Maintainer: Fabricio Silva <hi@fabricio.dev>
+pkgname=py3-bencode
+_pkgname=bencode.py
+pkgver=4.0.0
+pkgrel=1
+pkgdesc="Simple bencode parser"
+url="https://github.com/fuzeman/bencode.py"
+arch="noarch"
+license="BitTorrent-1.1"
+makedepends="
+ py3-setuptools
+ py3-pbr
+ py3-gpep517
+ py3-wheel
+ "
+checkdepends="py3-pytest"
+source="$pkgname-$pkgver.tar.gz::https://github.com/fuzeman/bencode.py/archive/$pkgver.tar.gz"
+subpackages="$pkgname-pyc"
+builddir="$srcdir"/$_pkgname-$pkgver
+
+build() {
+ export PBR_VERSION=$pkgver
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+30d6e9c61fbe91d274b10e9a8bd01cee77111e164a41975433a3a6d9d225a3148887fbb46153c6800f1a0846c8dd1e9852d4d4bed67a1964aac7bdb6837e6072 py3-bencode-4.0.0.tar.gz
+"
diff --git a/testing/py3-bidict/APKBUILD b/testing/py3-bidict/APKBUILD
new file mode 100644
index 00000000000..b54b9cd920e
--- /dev/null
+++ b/testing/py3-bidict/APKBUILD
@@ -0,0 +1,48 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-bidict
+pkgver=0.23.1
+pkgrel=1
+pkgdesc="The bidirectional mapping library for Python"
+url="https://bidict.readthedocs.io/"
+arch="noarch"
+license="MPL-2.0"
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="
+ py3-hypothesis
+ py3-pytest
+ py3-pytest-benchmark
+ py3-pytest-xdist
+ py3-sortedcollections
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/jab/bidict/archive/refs/tags/v$pkgver.tar.gz
+ no-typing-ext.patch
+ "
+builddir="$srcdir/bidict-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+795e29b61c1717dd34807c60ce598fc6a142decebd0545378bdc728f397e2050f52cf11212075ba60e22553031e9727fcbaae26891f531219075f6f58e457d05 py3-bidict-0.23.1.tar.gz
+eaef2f16cdf89e4f206d8595167286da672054c68715686eb412f3d5e1be4b55537c300248034c2679cda5c1d12fba961f23917648e8fe805949cb5cad70e10b no-typing-ext.patch
+"
diff --git a/testing/py3-bidict/no-typing-ext.patch b/testing/py3-bidict/no-typing-ext.patch
new file mode 100644
index 00000000000..05ad5905704
--- /dev/null
+++ b/testing/py3-bidict/no-typing-ext.patch
@@ -0,0 +1,9 @@
+diff --git a/tests/test_bidict.py b/tests/test_bidict.py
+index 461d08b..d48ffe8 100644
+--- a/tests/test_bidict.py
++++ b/tests/test_bidict.py
+@@ -59,3 +59,3 @@ from hypothesis.strategies import sampled_from
+ from hypothesis.strategies import tuples
+-from typing_extensions import assert_type
++from typing import assert_type
+
diff --git a/testing/py3-billiard/APKBUILD b/testing/py3-billiard/APKBUILD
deleted file mode 100644
index ee33cfeeb86..00000000000
--- a/testing/py3-billiard/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Maintainer: Drew DeVault <sir@cmpwn.com>
-pkgname=py3-billiard
-pkgver=3.6.4.0
-pkgrel=1
-pkgdesc="a message queue abstraction layer"
-url="https://pypi.python.org/pypi/billiard/"
-arch="noarch"
-license="BSD-3-Clause"
-makedepends="py3-setuptools"
-checkdepends="py3-psutil py3-pytest py3-nose py3-case"
-source="https://files.pythonhosted.org/packages/source/b/billiard/billiard-$pkgver.tar.gz"
-builddir="$srcdir/billiard-$pkgver"
-
-replaces="py-billiard" # Backwards compatibility
-provides="py-billiard=$pkgver-r$pkgrel" # Backwards compatibility
-
-build() {
- python3 setup.py build
-}
-
-check() {
- # Uses wrong name for 'queue' module.
- # Uses internal 'test' and 'test.support' modules.
- rm -f t/integration/tests/test_multiprocessing.py
-
- # Windows only
- rm -f t/unit/test_win32.py
-
- py.test-3
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="9f2a44024e45c4e7667472a0a3ade7caae755ec7c163929433f818e4b87165218b9cc9545bdee2254e7159c206e525306e383d38906b00fd5428bd1616c39b8f billiard-3.6.4.0.tar.gz"
diff --git a/testing/py3-biopython/APKBUILD b/testing/py3-biopython/APKBUILD
deleted file mode 100644
index 774fb7c01cf..00000000000
--- a/testing/py3-biopython/APKBUILD
+++ /dev/null
@@ -1,30 +0,0 @@
-# Contributor: Charles Pritchard <chuck@jumis.com>
-# Maintainer: Charles Pritchard <chuck@jumis.com>
-pkgname=py3-biopython
-pkgver=1.79
-pkgrel=1
-pkgdesc="Python tools for computational molecular biology."
-options="!check" # test_NCBI_qblast hangs
-url="https://biopython.org/"
-arch="all"
-license="BSD-3-Clause"
-depends="py3-numpy python3"
-makedepends="py3-setuptools py3-numpy-dev python3-dev"
-source="https://files.pythonhosted.org/packages/source/b/biopython/biopython-$pkgver.tar.gz"
-builddir="$srcdir/biopython-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 setup.py test
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-81e2718f4015bb038637b4d1181e6bea48018fec1e769c5f0ab75442a769336899191f1222e82e1b9569c1fac470500d7582420e5cbe9bce0056b41751adeaaa biopython-1.79.tar.gz
-"
diff --git a/testing/py3-bite-parser/APKBUILD b/testing/py3-bite-parser/APKBUILD
new file mode 100644
index 00000000000..e717ee03a7f
--- /dev/null
+++ b/testing/py3-bite-parser/APKBUILD
@@ -0,0 +1,43 @@
+# Maintainer: Guy Godfroy <guy.godfroy@gugod.fr>
+pkgname=py3-bite-parser
+pkgver=0.2.4
+pkgrel=1
+pkgdesc="Asynchronous parser taking incremental bites out of your byte input stream"
+url="https://github.com/jgosmann/bite-parser"
+arch="noarch"
+license="MIT"
+makedepends="
+ py3-gpep517
+ py3-poetry-core
+ py3-wheel
+ "
+checkdepends="
+ py3-pytest-asyncio
+ py3-pytest-forked
+ py3-pytest-xdist
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/jgosmann/bite-parser/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/bite-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 -m pytest -n auto --forked
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+ rm -r "$pkgdir"/usr/lib/python*/site-packages/bite/tests
+}
+
+sha512sums="
+57edf56b27c07e3b113481b63d7db95053822c28c03111950e86eaeb15efd7be98e11652019e81a24d928d7dd7fe1781cedaa43d844c3a618377c1c8beb82e1a py3-bite-parser-0.2.4.tar.gz
+"
diff --git a/testing/py3-bitstruct/APKBUILD b/testing/py3-bitstruct/APKBUILD
new file mode 100644
index 00000000000..d3d4f661938
--- /dev/null
+++ b/testing/py3-bitstruct/APKBUILD
@@ -0,0 +1,42 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-bitstruct
+pkgver=8.19.0
+pkgrel=1
+pkgdesc="Python bit pack/unpack package"
+url="https://github.com/eerimoq/bitstruct"
+arch="all"
+license="MIT"
+depends="py3-codespell"
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ python3-dev
+ "
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/eerimoq/bitstruct/archive/refs/tags/$pkgver.tar.gz"
+options="!check" # Fails to import bitstruct.c
+builddir="$srcdir/bitstruct-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+9a3f7068664d70b86db1da4df4d3e650b774e89d69d71d9e6d73cc26ff98d5e606618301fa817ca5021d77a16b75c7b4c4f5d386a6b346104786de50ce9b02aa py3-bitstruct-8.19.0.tar.gz
+"
diff --git a/testing/py3-bleach-allowlist/APKBUILD b/testing/py3-bleach-allowlist/APKBUILD
deleted file mode 100644
index aa911e46c64..00000000000
--- a/testing/py3-bleach-allowlist/APKBUILD
+++ /dev/null
@@ -1,26 +0,0 @@
-# Contributor: Bart Ribbers <bribbers@disroot.org>
-# Maintainer: Bart Ribbers <bribbers@disroot.org>
-pkgname=py3-bleach-allowlist
-pkgver=1.0.3
-pkgrel=1
-pkgdesc="Curated list of tags and attributes for sanitizing html"
-url="https://github.com/yourcelf/bleach-allowlist"
-arch="noarch"
-license="BSD-2-Clause"
-depends="python3"
-makedepends="py3-setuptools"
-source="https://pypi.python.org/packages/source/b/bleach-allowlist/bleach-allowlist-$pkgver.tar.gz"
-options="!check" # No tests
-builddir="$srcdir/bleach-allowlist-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-a9ee0b746e082af5e8e0a09501f34050c3395d83b3e9b89c2c7980c6f55f6d305c490992fecac09a3146f924024235bff09255accb96d3da36bfeb32f8739da4 bleach-allowlist-1.0.3.tar.gz
-"
diff --git a/testing/py3-blinkstick/0001-python3-env.patch b/testing/py3-blinkstick/0001-python3-env.patch
deleted file mode 100644
index 469445b0611..00000000000
--- a/testing/py3-blinkstick/0001-python3-env.patch
+++ /dev/null
@@ -1,10 +0,0 @@
-diff --git a/bin/blinkstick b/bin/blinkstick
-index 1b776db..01ffa58 100755
---- a/bin/blinkstick
-+++ b/bin/blinkstick
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
-
- from optparse import OptionParser, IndentedHelpFormatter, OptionGroup
- from blinkstick import blinkstick
diff --git a/testing/py3-blinkstick/0002-Changed-dependency-on-pyusb-to-accept-anything-higher-than-1.0.0.patch b/testing/py3-blinkstick/0002-Changed-dependency-on-pyusb-to-accept-anything-higher-than-1.0.0.patch
deleted file mode 100644
index 36fd228d159..00000000000
--- a/testing/py3-blinkstick/0002-Changed-dependency-on-pyusb-to-accept-anything-higher-than-1.0.0.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 3377fe12b628b0f5c571fe3bfb8f9cf34d0a8fc4 Mon Sep 17 00:00:00 2001
-From: Bart Ribbers <bart@iconica.nl>
-Date: Tue, 10 May 2022 11:37:52 +0200
-Subject: [PATCH] Changed dependency on pyusb to accept anything higher than
- 1.0.0
-
-It can't be expected that everybody will use 1.0.0 only, e.g.
-distribution packaging. I've already confirmed it works fine with pyusb
-1.2.0 as well, so let's just accept anything higher than 1.0.0
----
- setup.py | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/setup.py b/setup.py
-index 6166e89..910f22b 100644
---- a/setup.py
-+++ b/setup.py
-@@ -31,7 +31,7 @@ def read(fname):
- ]
- else:
- os_requires = [
-- "pyusb==1.0.0"
-+ "pyusb>=1.0.0"
- ]
-
- setup(
diff --git a/testing/py3-blinkstick/85-blinkstick.rules b/testing/py3-blinkstick/85-blinkstick.rules
deleted file mode 100644
index d64078d6261..00000000000
--- a/testing/py3-blinkstick/85-blinkstick.rules
+++ /dev/null
@@ -1 +0,0 @@
-SUBSYSTEM=="usb", ATTR{idVendor}=="20a0", ATTR{idProduct}=="41e5", MODE:="0666"
diff --git a/testing/py3-blinkstick/APKBUILD b/testing/py3-blinkstick/APKBUILD
deleted file mode 100644
index 31da276d34e..00000000000
--- a/testing/py3-blinkstick/APKBUILD
+++ /dev/null
@@ -1,47 +0,0 @@
-# Contributor: Bart Ribbers <bribbers@disroot.org>
-# Maintainer: Bart Ribbers <bribbers@disroot.org>
-pkgname=py3-blinkstick
-pkgver=1.2.0
-pkgrel=1
-_commit="60bd10528fe6ecabfdaef4c5343864e98de19263" # Git repo isn't tagged, but this is equivalent to 1.2.0 on PyPi
-pkgdesc="Python interface to control BlinkStick devices connected to the computer"
-url="https://www.blinkstick.com/"
-arch="noarch"
-license="BSD-3-Clause"
-depends="
- py3-usb
- python3
- "
-makedepends="py3-setuptools"
-subpackages="blinkstick"
-# https://pypi.python.org/packages/source/B/BlinkStick/BlinkStick-$pkgver.tar.gz
-source="https://github.com/arvydas/blinkstick-python/archive/$_commit/blinkstick-python-$_commit.tar.gz
- 0001-python3-env.patch
- 0002-Changed-dependency-on-pyusb-to-accept-anything-higher-than-1.0.0.patch
- 85-blinkstick.rules
- "
-options="!check" # No tests
-builddir="$srcdir/blinkstick-python-$_commit"
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-
- install -Dm644 "$srcdir"/85-blinkstick.rules -t "$pkgdir"/usr/share/udev/rules.d
-}
-
-blinkstick() {
- depends="$pkgname"
-
- amove usr/bin
-}
-
-sha512sums="
-422f5fd640f7a6d5672f78b495b6798818e74f8828588a6c3ca3586ba17c57c7862a5481d4d5f7052761b3c50865c40894cdb2c771c62e849c9cb2c921b5ce32 blinkstick-python-60bd10528fe6ecabfdaef4c5343864e98de19263.tar.gz
-01c9c9236db85158eeaea66aad760feb4d2b478625929ce484e42da377f81c3de9dc481e6cd586a2e3cb774c18d2513cd11263063353a6cc6500a53a2e55f977 0001-python3-env.patch
-930c68107e1d97746a483b4b525dee9d0201da7dbf8176f0defd7c3bda7d8dd05f7ea6b8a80e9393d877fa7a926b37594876d492d926991f3f4ac53c1c6ba219 0002-Changed-dependency-on-pyusb-to-accept-anything-higher-than-1.0.0.patch
-e63b007e8e6baa2f20c9adde1471a7e0e09f075178347d913858667fd58ec4af51c42120c142f8fe76f12c3207375e437a788e23fd576f17eb01f691b63ebc1c 85-blinkstick.rules
-"
diff --git a/testing/py3-blis/APKBUILD b/testing/py3-blis/APKBUILD
deleted file mode 100644
index defae3863f1..00000000000
--- a/testing/py3-blis/APKBUILD
+++ /dev/null
@@ -1,48 +0,0 @@
-# Contributor: Oleg Titov <oleg.titov@gmail.com>
-# Maintainer: Oleg Titov <oleg.titov@gmail.com>
-pkgname=py3-blis
-pkgver=0.9.0
-pkgrel=0
-pkgdesc="Fast matrix-multiplication as a self-contained Python library"
-url="https://github.com/explosion/cython-blis"
-arch="x86_64 x86"
-license="MIT"
-depends="python3 py3-numpy"
-makedepends="python3-dev py3-setuptools cython py3-numpy-dev"
-checkdepends="py3-pytest py3-hypothesis"
-subpackages="$pkgname-doc"
-source="blis-$pkgver.tar.gz::https://github.com/explosion/cython-blis/archive/v$pkgver.tar.gz"
-#options="!check" # Disable checks as py3-hypothesis 5.x is not supported
-builddir="$srcdir/cython-blis-$pkgver"
-
-prepare() {
- default_prepare
- case "$CARCH" in
- x86_64) BLIS_ARCH=x86_64 ;;
- x86) BLIS_ARCH=generic ;;
- aarch64) BLIS_ARCH=cortexa53 ;;
- esac
- export BLIS_ARCH
-}
-
-build() {
- python3 setup.py build_ext --inplace
-}
-
-check() {
- python3 setup.py install --root="$PWD/tmp_install"
-
- cd tmp_install/$(python3 -c "import site; print(site.getsitepackages()[0])")
-
- PYTHONPATH="$PWD/build/lib" pytest-3 blis
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-
- install -Dm644 README.md "$pkgdir/usr/share/doc/$pkgname/README.md"
-}
-
-sha512sums="
-521a7c6492d8d23142bd7bca0ccdb6ab5a40393fde20c04131dc1ddf9cf4418e648337fe42de035abbd13aed3110a15aa8c2824524720e990e9f0ec9a2d88b26 blis-0.9.0.tar.gz
-"
diff --git a/testing/py3-blockchain/APKBUILD b/testing/py3-blockchain/APKBUILD
index 1478befa096..8ec3947a0a5 100644
--- a/testing/py3-blockchain/APKBUILD
+++ b/testing/py3-blockchain/APKBUILD
@@ -3,13 +3,14 @@
pkgname=py3-blockchain
_pkgname=blockchain
pkgver=1.4.4
-pkgrel=3
+pkgrel=6
pkgdesc="Blockchain API library (v1)"
url="https://github.com/blockchain/api-v1-client-python"
arch="noarch"
license="MIT"
depends="py3-future"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -25,7 +26,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="46e9d83f3a8220aef67f90a5b1d0f29df709f48c69392eef3fa38eb22c5b346296e3f15cf61dcc612c57d0f94a838af6d74ae906c8ffffefec86e471bc036a8f blockchain-1.4.4.tar.gz"
diff --git a/testing/py3-blockdiag/APKBUILD b/testing/py3-blockdiag/APKBUILD
index e667ed9e5fa..cb3e6bb52cc 100644
--- a/testing/py3-blockdiag/APKBUILD
+++ b/testing/py3-blockdiag/APKBUILD
@@ -2,26 +2,36 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-blockdiag
_pkgname=blockdiag
-pkgver=2.0.1
-pkgrel=2
+pkgver=3.0.0
+pkgrel=4
pkgdesc="Generate block-diagram image file from spec-text file"
url="http://blockdiag.com"
arch="noarch"
license="Apache-2.0"
depends="py3-funcparserlib py3-pillow py3-webcolors"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-tests $pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-blockdiag" # for backwards compatibility
+replaces="py-blockdiag" # for backwards compatibility
provides="py-blockdiag=$pkgver-r$pkgrel" # for backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
-sha512sums="07690882b05d4cf7be04245e183a7c54d9cd4acab3bb4b5e170b7b0f9229d6ea42eba4dc9fab47604c1572d3c4b09de96cffb610c0c31882b9c0b150f0e76d89 blockdiag-2.0.1.tar.gz"
+tests() {
+ amove usr/lib/python3*/site-packages/blockdiag/tests
+}
+
+sha512sums="
+e0e588941c5212a924068cc0b3953b670089e33c385ea8ce52fc54f5ca79414fb12217eba1052c5384c9f2fd81e79304639c9604cdc4a6464f7c221bb67ef267 blockdiag-3.0.0.tar.gz
+"
diff --git a/testing/py3-bookkeeper/APKBUILD b/testing/py3-bookkeeper/APKBUILD
index d982b04f6d3..c419c120be0 100644
--- a/testing/py3-bookkeeper/APKBUILD
+++ b/testing/py3-bookkeeper/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Alex Yam <alex@alexyam.com>
# Maintainer: Alex Yam <alex@alexyam.com>
pkgname=py3-bookkeeper
-pkgver=4.14.3
-pkgrel=0
+pkgver=4.16.2
+pkgrel=1
pkgdesc="Python client for Apache Bookkeeper"
url="https://github.com/apache/bookkeeper"
arch="noarch"
@@ -10,6 +10,7 @@ license="Apache-2.0"
depends="python3"
makedepends="py3-setuptools"
options="!check" # test requires bookkeeper server
+subpackages="$pkgname-pyc"
source="bookkeeper-release-$pkgver.tar.gz::https://github.com/apache/bookkeeper/archive/refs/tags/release-$pkgver.tar.gz"
builddir="$srcdir/bookkeeper-release-$pkgver/stream/clients/python"
@@ -22,5 +23,5 @@ package() {
}
sha512sums="
-47e1ce97a804a972ebab93844f800756a60f136e9087ad94b8faa6943fb064b372cfbd543ee0e337f302d8a48966d5bc3e53ead699e3010d9e2346e79c12a392 bookkeeper-release-4.14.3.tar.gz
+2826cbd9c8769a8d6f9d0c6102999684bccf9f667ca693e5f6fabb1e4c99ce096a9f99b51d87e5eae311bd5a8f3b8557e93edaaa8a00fd0e21be68aad44811eb bookkeeper-release-4.16.2.tar.gz
"
diff --git a/testing/py3-bottle-api/APKBUILD b/testing/py3-bottle-api/APKBUILD
index d9aca96d36c..da1ad3586af 100644
--- a/testing/py3-bottle-api/APKBUILD
+++ b/testing/py3-bottle-api/APKBUILD
@@ -3,27 +3,31 @@
pkgname=py3-bottle-api
_pkgname=bottle-api
pkgver=0.0.4
-pkgrel=3
+pkgrel=7
pkgdesc="Bottle JSON Web API"
options="!check" # tests not present in pypi tarballs, only github which has no tags
url="https://github.com/tomotaka/bottle-api"
arch="noarch"
license="MIT"
depends="python3 py3-bottle"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
-replaces="py-bottle-api" # Backwards compat
+replaces="py-bottle-api" # Backwards compat
provides="py-bottle-api=$pkgver-r$pkgrel" # Backwards compat
builddir="$srcdir"/$_pkgname-$pkgver
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="538f0a12941a333fcae5694edba3930d449ed5464f05e760fb174481acf2bb95c413f1fa3cf67b09f7fd647c60bcbbad05a51f020d64dc41b39b25b7744308c6 bottle-api-0.0.4.tar.gz"
diff --git a/testing/py3-bottle-pgsql/APKBUILD b/testing/py3-bottle-pgsql/APKBUILD
index 8ef4a8f8c10..09b34294b07 100644
--- a/testing/py3-bottle-pgsql/APKBUILD
+++ b/testing/py3-bottle-pgsql/APKBUILD
@@ -3,26 +3,29 @@
pkgname=py3-bottle-pgsql
_pkgname=bottle-pgsql
pkgver=0.2
-pkgrel=2
+pkgrel=5
pkgdesc="Bottle PgSQL integration plugin"
options="!check" # No testsuite
url="https://github.com/raisoblast/bottle-pgsql"
arch="noarch"
license="MIT"
depends="python3 py3-bottle"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-bottle-pgsql" # Backwards compatibility
+replaces="py-bottle-pgsql" # Backwards compatibility
provides="py-bottle-pgsql=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="d45624d5b330be4624cac45a2a631f403679b1fa3799efd2db282ebc89cbc7f89b12c3c128a8be860d700904e420f6a2327a2bb3a18f4b0d490d423c131ef2a3 bottle-pgsql-0.2.tar.gz"
diff --git a/testing/py3-bottle-redis/APKBUILD b/testing/py3-bottle-redis/APKBUILD
index d45a5230ff4..2ad116e8ef3 100644
--- a/testing/py3-bottle-redis/APKBUILD
+++ b/testing/py3-bottle-redis/APKBUILD
@@ -3,26 +3,30 @@
pkgname=py3-bottle-redis
_pkgname=bottle-redis
pkgver=0.2.3
-pkgrel=2
+pkgrel=6
pkgdesc="Bottle redis plugin"
options="!check" # No testsuite
url="https://github.com/bottlepy/bottle-redis"
arch="noarch"
license="MIT"
depends="python3 py3-bottle py3-redis"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-bottle-redis" # Backwards compatibility
+replaces="py-bottle-redis" # Backwards compatibility
provides="py-bottle-redis=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="7cfff9f20379be42186ed88c5de854302fb67bbb306a3ff81d41f4332e29a335e7b3ca69b89f6785d54cd9c2a0d312f3e3ac9537b1c28d70afad032ab4746008 bottle-redis-0.2.3.tar.gz"
diff --git a/testing/py3-bottle-renderer/APKBUILD b/testing/py3-bottle-renderer/APKBUILD
index bb791f788db..e390f483eb0 100644
--- a/testing/py3-bottle-renderer/APKBUILD
+++ b/testing/py3-bottle-renderer/APKBUILD
@@ -3,27 +3,31 @@
pkgname=py3-bottle-renderer
_pkgname=bottle-renderer
pkgver=0.1.1
-pkgrel=4
+pkgrel=9
pkgdesc="Bottle renderer plugin"
options="!check" # No testsuite upstream
-url="https://pypi.python.org/pypi/bottle-renderer"
+url="https://pypi.org/project/bottle-renderer"
arch="noarch"
license="MIT"
depends="python3 py3-bottle"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
-replaces="py-bottle-renderer" # Backwards compat
+replaces="py-bottle-renderer" # Backwards compat
provides="py-bottle-renderer=$pkgver-r$pkgrel" # Backwards compat
builddir="$srcdir"/$_pkgname-$pkgver
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="1bbf5750de425afa201b525d4207d542512288fa2506053b460db9d6ffd2d5040cefe29ed663abb85e337b66025cd594d401c25181bdcdfbbe4c0cbd709f8311 bottle-renderer-0.1.1.tar.gz"
diff --git a/testing/py3-bottle-request/APKBUILD b/testing/py3-bottle-request/APKBUILD
index 100d14e471e..00116f00917 100644
--- a/testing/py3-bottle-request/APKBUILD
+++ b/testing/py3-bottle-request/APKBUILD
@@ -3,26 +3,30 @@
pkgname=py3-bottle-request
_pkgname=bottle-request
pkgver=0.2.0
-pkgrel=5
+pkgrel=9
pkgdesc="Bottle 'stateless' request object plugin"
options="!check" # No testsuite
url="https://github.com/turtlebender/bottle-request/"
arch="noarch"
license="MIT"
depends="python3 py3-bottle"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-bottle-request" # Backwards compatibility
+replaces="py-bottle-request" # Backwards compatibility
provides="py-bottle-request=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="bd12268d703996e200dea5817f939ecf80e572e97d3686bcaf988ec048cda4e3b950122588b91ce78a06712a321e155e2e365bc75bbd2a720228a65441a67e21 bottle-request-0.2.0.tar.gz"
diff --git a/testing/py3-bottle-rest/APKBUILD b/testing/py3-bottle-rest/APKBUILD
index aad64c2b231..ea48ab96bf0 100644
--- a/testing/py3-bottle-rest/APKBUILD
+++ b/testing/py3-bottle-rest/APKBUILD
@@ -2,16 +2,17 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-bottle-rest
_pkgname=bottle-rest
-pkgver=0.5.2
-pkgrel=2
+pkgver=0.6.0
+pkgrel=1
pkgdesc="A decorator for REST in Bottle"
-options="!check" # Has no github tarballs with tests
-url="https://pypi.python.org/pypi/bottle-rest/"
+url="https://pypi.org/project/bottle-rest/"
arch="noarch"
license="MIT"
depends="python3 py3-bottle"
-makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
+makedepends="py3-gpep517 py3-setuptools py3-wheel py3-installer"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/Bystroushaak/bottle-rest/archive/refs/tags/$pkgver.tar.gz"
replaces="py-bottle-rest" # Backwards compat
provides="py-bottle-rest=$pkgver-r$pkgrel" # Backwards compat
@@ -19,11 +20,22 @@ provides="py-bottle-rest=$pkgver-r$pkgrel" # Backwards compat
builddir="$srcdir"/$_pkgname-$pkgver
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
-sha512sums="2071a9b6e74e9cbed6bc07d55e9f64c3752e03a5fb24640a94bf0624be27675a01e525f3830119778d29b76b57fda1a7cb34895adc1332b038d0840ce27d11cb bottle-rest-0.5.2.tar.gz"
+sha512sums="
+abc34f287866188e84d3636df5d279061bbe9bc2dbc56bf1a6bafb39b255b5b04ae03fc0a2357e3d9a63ef100dfd3e630a408f84c05f8cbfe685e68a87a2ea93 py3-bottle-rest-0.6.0.tar.gz
+"
diff --git a/testing/py3-bottle-session/APKBUILD b/testing/py3-bottle-session/APKBUILD
index 11cdc64a38a..e1807e23717 100644
--- a/testing/py3-bottle-session/APKBUILD
+++ b/testing/py3-bottle-session/APKBUILD
@@ -3,27 +3,31 @@
pkgname=py3-bottle-session
_pkgname=bottle-session
pkgver=1.0
-pkgrel=2
+pkgrel=6
pkgdesc="Bottle session plugin"
options="!check" # No testsuite on tarball
url="https://bitbucket.org/devries/bottle-session"
arch="noarch"
license="Artistic-2.0"
depends="python3 py3-bottle py3-redis"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
-replaces="py-bottle-session" # Backwards compat
+replaces="py-bottle-session" # Backwards compat
provides="py-bottle-session=$pkgver-r$pkgrel" # Backwards compat
builddir="$srcdir"/$_pkgname-$pkgver
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="fe1888d26d20e1a759f31276737b5091f5ba7fc324b07ab778fc3e5b9083b5956bc215824c8fa297ebac7730de22cc6b034efa5b2eafdbfab9bf4019b696c7f2 bottle-session-1.0.tar.gz"
diff --git a/testing/py3-bottle-sqlalchemy/APKBUILD b/testing/py3-bottle-sqlalchemy/APKBUILD
index 7ccde4cd9c7..229ede394b3 100644
--- a/testing/py3-bottle-sqlalchemy/APKBUILD
+++ b/testing/py3-bottle-sqlalchemy/APKBUILD
@@ -3,27 +3,31 @@
pkgname=py3-bottle-sqlalchemy
_pkgname=bottle-sqlalchemy
pkgver=0.4.3
-pkgrel=3
+pkgrel=8
pkgdesc="Bottle SQLAlchemy integration plugin"
options="!check" # No testsuite in tarballs or usable github tarballs
-url="http://www.github.com/iurisilvio/bottle-sqlalchemy"
+url="https://github.com/iurisilvio/bottle-sqlalchemy"
arch="noarch"
license="MIT"
depends="python3 py3-bottle py3-sqlalchemy"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
-replaces="py-bottle-sqlalchemy" # Backwards compat
+replaces="py-bottle-sqlalchemy" # Backwards compat
provides="py-bottle-sqlalchemy=$pkgver-r$pkgrel" # Backwards compat
builddir="$srcdir"/$_pkgname-$pkgver
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="3b7eeafa1d8dcd5864b2a132ccf68eb0dfa738c090101615d0cef68f5b0f1efc2cecd66d34be59ac46aaa14c939e2bf7eeb0b6a8932921fa2bd11dc2dcf3a3aa bottle-sqlalchemy-0.4.3.tar.gz"
diff --git a/testing/py3-bottle-sqlite/APKBUILD b/testing/py3-bottle-sqlite/APKBUILD
index c1a88bd845a..608314f0492 100644
--- a/testing/py3-bottle-sqlite/APKBUILD
+++ b/testing/py3-bottle-sqlite/APKBUILD
@@ -3,26 +3,30 @@
pkgname=py3-bottle-sqlite
_pkgname=bottle-sqlite
pkgver=0.2.0
-pkgrel=2
+pkgrel=7
pkgdesc="Bottle sqlite plugin"
options="!check" # No testsuite
-url="https://pypi.python.org/pypi/bottle-sqlite"
+url="https://pypi.org/project/bottle-sqlite"
arch="noarch"
license="MIT"
depends="python3 py3-bottle"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
-replaces="py-bottle-sqlite" # Backwards compatibility
+replaces="py-bottle-sqlite" # Backwards compatibility
provides="py-bottle-sqlite=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="5110adc5b1e7196aec28f96495db805bb16cace3ec2b4e4ccd40ad10f5cf8bea811568c3a8c876507ee76d146da0b576c7d0e7d34ca8d7f28ee64d858cedf3e4 bottle-sqlite-0.2.0.tar.gz"
diff --git a/testing/py3-bottle-websocket/APKBUILD b/testing/py3-bottle-websocket/APKBUILD
index c3a9e28093a..30230bbab26 100644
--- a/testing/py3-bottle-websocket/APKBUILD
+++ b/testing/py3-bottle-websocket/APKBUILD
@@ -3,27 +3,31 @@
pkgname=py3-bottle-websocket
_pkgname=bottle-websocket
pkgver=0.2.9
-pkgrel=3
+pkgrel=8
pkgdesc="Bottle websocket plugin"
options="!check" # No upstream testsuite
-url="https://pypi.python.org/pypi/bottle-websocket"
+url="https://pypi.org/project/bottle-websocket"
arch="noarch"
license="MIT"
depends="python3 py3-bottle py3-gevent-websocket"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/zeekay/bottle-websocket/archive/v$pkgver.tar.gz"
-replaces="py-bottle-websocket" # Backwards compat
+replaces="py-bottle-websocket" # Backwards compat
provides="py-bottle-websocket=$pkgver-r$pkgrel" # Backwards compat
builddir="$srcdir"/$_pkgname-$pkgver
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="e57ffcee8d1bf0f75ebe9e5c4679ebe63d4ab3da31556f217e3849084ae3a69fb5bc05a978484dee7dd8d6822c0d4cff2c68b494d7ad7b075bd0accde2aa4c1a py3-bottle-websocket-0.2.9.tar.gz"
diff --git a/testing/py3-bottle-werkzeug/APKBUILD b/testing/py3-bottle-werkzeug/APKBUILD
index 79b7b0bce46..b15200c3e5e 100644
--- a/testing/py3-bottle-werkzeug/APKBUILD
+++ b/testing/py3-bottle-werkzeug/APKBUILD
@@ -3,26 +3,30 @@
pkgname=py3-bottle-werkzeug
_pkgname=bottle-werkzeug
pkgver=0.1.1
-pkgrel=4
+pkgrel=9
pkgdesc="Bottle werkzeug plugin"
-url="https://pypi.python.org/pypi/bottle-werkzeug"
+url="https://pypi.org/project/bottle-werkzeug"
arch="noarch"
license="MIT"
depends="python3 py3-bottle py3-werkzeug"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
options="!check"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
-replaces="py-bottle-werkzeug" # Backwards compatibility
+replaces="py-bottle-werkzeug" # Backwards compatibility
provides="py-bottle-werkzeug=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="13fce3be73caa42c8cbdf437799c1fdb32a6e1ea513055ce9cd53788cea318a6d990b0975b39bcbad3b6fb2994d17d29651603687f59604e81508e61b3b0319a bottle-werkzeug-0.1.1.tar.gz"
diff --git a/testing/py3-bson/APKBUILD b/testing/py3-bson/APKBUILD
index c99d30475dd..d57dc3c4169 100644
--- a/testing/py3-bson/APKBUILD
+++ b/testing/py3-bson/APKBUILD
@@ -3,7 +3,7 @@
pkgname=py3-bson
_pkgname=bson
pkgver=0.5.10
-pkgrel=2
+pkgrel=5
pkgdesc="Independent BSON codec for Python that doesn’t depend on MongoDB"
options="!check" # No testsuite
url="https://github.com/py-bson/bson"
@@ -11,6 +11,7 @@ arch="noarch"
license="BSD-3-Clause"
depends="py3-dateutil py3-six"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/${_pkgname/-/_}-$pkgver
@@ -19,7 +20,7 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
check() {
diff --git a/testing/py3-bump2version/APKBUILD b/testing/py3-bump2version/APKBUILD
deleted file mode 100644
index b6b77d7a550..00000000000
--- a/testing/py3-bump2version/APKBUILD
+++ /dev/null
@@ -1,28 +0,0 @@
-# Contributor:
-# Maintainer: Charles Wimmer <charles@wimmer.net>
-pkgname=py3-bump2version
-_pkgname=bump2version
-pkgver=1.0.1
-pkgrel=2
-pkgdesc="Version-bump your software with a single command!"
-url="https://github.com/c4urself/bump2version"
-arch="noarch"
-license="MIT"
-depends="python3"
-makedepends="py3-setuptools"
-checkdepends="py3-tox py3-pytest py3-testfixtures"
-source="$pkgname-$pkgver.tar.gz::https://github.com/c4urself/$_pkgname/archive/v$pkgver.tar.gz"
-builddir="$srcdir"/$_pkgname-$pkgver
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 setup.py check
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-sha512sums="aceb3770b2537e93a996795dba521d1b862d61fe07d6f4e086ba1d2b8e478690394a82dba9e40b32ea969b19b049750635508c1ecd45646e24d4e45ad2d47795 py3-bump2version-1.0.1.tar.gz"
diff --git a/testing/py3-businesstime/APKBUILD b/testing/py3-businesstime/APKBUILD
index 233bb157a83..8df46741200 100644
--- a/testing/py3-businesstime/APKBUILD
+++ b/testing/py3-businesstime/APKBUILD
@@ -3,26 +3,28 @@
pkgname=py3-businesstime
_pkgname=businesstime
pkgver=0.3.0
-pkgrel=5
+pkgrel=9
pkgdesc="Python utility for calculating business time between two datetimes"
url="https://github.com/seatgeek/businesstime"
arch="noarch"
license="BSD-2-Clause"
-replaces="py-businesstime" # for backwards compatibility
+replaces="py-businesstime" # for backwards compatibility
provides="py-businesstime=$pkgver-r$pkgrel" # for backwards compatibility
depends="python3"
-makedepends="python3-dev py3-setuptools"
+makedepends="python3-dev py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
build() {
- cd "$builddir"
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- cd "$builddir"
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="20e44a0057c66c15cf79452f2a602c8e1719f866c608bfffe25ec14fb5c3ec06fcd6f7ac93e2328ee38ea862464c128d8b3a66a544f13fd0f989fc3d6a3d10a7 businesstime-0.3.0.tar.gz"
diff --git a/testing/py3-c3d/APKBUILD b/testing/py3-c3d/APKBUILD
new file mode 100644
index 00000000000..b4f723dcf94
--- /dev/null
+++ b/testing/py3-c3d/APKBUILD
@@ -0,0 +1,30 @@
+# Contributor: Sam Nystrom <sam@samnystrom.dev>
+# Maintainer: Sam Nystrom <sam@samnystrom.dev>
+pkgname=py3-c3d
+pkgver=0.5.2
+pkgrel=1
+pkgdesc="Read and write C3D mocap files"
+url="https://github.com/EmbodiedCognition/py-c3d"
+arch="noarch"
+license="MIT"
+depends="py3-numpy"
+makedepends="py3-gpep517 py3-setuptools py3-wheel py3-poetry-core"
+options="!check" # downloads many, large C3D files for tests
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/EmbodiedCognition/py-c3d/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/py-c3d-$pkgver"
+
+build() {
+ # poetry build
+ gpep517 build-wheel \
+ --wheel-dir dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" dist/*.whl
+}
+
+sha512sums="
+acdf48098257a29e9dc7a29efc328af81df00d93baf4f36f3f3364fbb19b91caf74c6aed6c05343304d34d1d159b79d685366ca126b8cb56fbefc518ec1879c9 py3-c3d-0.5.2.tar.gz
+"
diff --git a/testing/py3-caldav/APKBUILD b/testing/py3-caldav/APKBUILD
index 3792f86c9fc..78addb19d5c 100644
--- a/testing/py3-caldav/APKBUILD
+++ b/testing/py3-caldav/APKBUILD
@@ -1,39 +1,44 @@
# Contributor: Galen Abell <galen@galenabell.com>
# Maintainer: Galen Abell <galen@galenabell.com>
pkgname=py3-caldav
-pkgver=0.9.0
-pkgrel=0
+pkgver=1.3.9
+pkgrel=1
pkgdesc="caldav client library for Python"
url="https://github.com/python-caldav/caldav"
arch="noarch"
license="GPL-3.0-only AND Apache-2.0"
depends="
- python3
py3-icalendar
py3-lxml
+ py3-recurring-ical-events
py3-requests
- py3-six
py3-tz
py3-tzlocal
py3-vobject
"
-makedepends="py3-setuptools"
-checkdepends="py3-nose py3-coverage"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/python-caldav/caldav/archive/v$pkgver.tar.gz"
builddir="$srcdir/caldav-$pkgver"
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- PYTHONPATH="." nosetests
+ python3 -m venv --clear --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
-a357dc32f2fd6f1fd97ad309031054bf28dd901240b23967fd29741b10020be3edf080518a3f017060efbe4fb3faa896841ad7f892435e652e370b709b0faf6e py3-caldav-0.9.0.tar.gz
+f1912b26ce989ef8c7bd6278de20e26f265a5e9477fc168dc63c152b50a38faacf031cfb06f1d5f5e2333908c31cb75804c29d952227f5d58cd02a775956af77 py3-caldav-1.3.9.tar.gz
"
diff --git a/testing/py3-case/APKBUILD b/testing/py3-case/APKBUILD
deleted file mode 100644
index 35794f14cfa..00000000000
--- a/testing/py3-case/APKBUILD
+++ /dev/null
@@ -1,30 +0,0 @@
-# Maintainer: Drew DeVault <sir@cmpwn.com>
-pkgname=py3-case
-_pyname=case
-pkgver=1.5.3
-pkgrel=3
-pkgdesc="Python unittest utilities"
-url="https://github.com/celery/case/"
-arch="noarch"
-license="BSD-3-Clause"
-makedepends="py3-setuptools"
-checkdepends="py3-coverage py3-mock py3-nose"
-_pypiprefix="${_pyname%${_pyname#?}}"
-source="https://files.pythonhosted.org/packages/source/$_pypiprefix/$_pyname/$_pyname-$pkgver.tar.gz"
-builddir="$srcdir/$_pyname-$pkgver"
-
-replaces="py-case" # Backwards compatibility
-provides="py-case=$pkgver-r$pkgrel" # Backwards compatibility
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 setup.py test
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-sha512sums="ae98a571c282f80c685c42ab1dc578847fe88cf8cd07faff505a8df8e3282a602908a8780ab88b36851e3ee6f3c178405e5c50776fd0f49fcc990087575f2958 case-1.5.3.tar.gz"
diff --git a/testing/py3-cassandra-driver/APKBUILD b/testing/py3-cassandra-driver/APKBUILD
index 05eb96a50c1..3be35f01b78 100644
--- a/testing/py3-cassandra-driver/APKBUILD
+++ b/testing/py3-cassandra-driver/APKBUILD
@@ -1,23 +1,35 @@
-# Maintainer: Austin Page <jaustinpage@gmail.com>
# Contributor: Austin Page <jaustinpage@gmail.com>
+# Maintainer: Austin Page <jaustinpage@gmail.com>
pkgname=py3-cassandra-driver
_pkgname="${pkgname/py3-/}"
-pkgver=3.20.2
-pkgrel=2
+pkgver=3.29.1
+pkgrel=0
pkgdesc="Python driver for Apache Cassandra"
url="https://github.com/datastax/python-driver"
-arch="all"
+arch="noarch"
license="Apache-2.0"
-makedepends="cython libev-dev py3-setuptools python3-dev"
+makedepends="libev-dev py3-gpep517 py3-setuptools py3-wheel"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
+options="!check" # requires cython>=0.20,<0.30
build() {
- python3 setup.py build
+ gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" .dist/*.whl
+
}
-sha512sums="f04359887af276682e996f3262b5cb7f91255fc538b9d2bfd34a7a2f451d43ea663d61f35328f43e0f6b5410f3a8ef9f466a5827c2b91b2505c07246307a8af3 cassandra-driver-3.20.2.tar.gz"
+sha512sums="
+8a1be4490a7ee22a446d2ae3aef2bab9071934d2499bf2f43e63c0efea923eacede217814ab947879eb4c92eaf1375cd26f39fa879dfc5c9532f7c1d9a58cf0b cassandra-driver-3.29.1.tar.gz
+"
diff --git a/testing/py3-catalogue/APKBUILD b/testing/py3-catalogue/APKBUILD
deleted file mode 100644
index 7a3aa1b9a5e..00000000000
--- a/testing/py3-catalogue/APKBUILD
+++ /dev/null
@@ -1,34 +0,0 @@
-# Contributor: Oleg Titov <oleg.titov@gmail.com>
-# Maintainer: Oleg Titov <oleg.titov@gmail.com>
-pkgname=py3-catalogue
-pkgver=2.0.6
-pkgrel=0
-pkgdesc="Super lightweight function registries for your library"
-url="https://github.com/explosion/catalogue"
-arch="noarch"
-license="MIT"
-depends="python3"
-makedepends="py3-setuptools"
-checkdepends="py3-pytest"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/explosion/catalogue/archive/v$pkgver.tar.gz"
-
-builddir=$srcdir/catalogue-$pkgver
-
-build() {
- python3 setup.py build
-}
-
-check() {
- pytest-3 catalogue/tests/test_catalogue.py
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-
- install -Dm644 README.md "$pkgdir/usr/share/doc/$pkgname/README.md"
-}
-
-sha512sums="
-65df37550a4fddf8f17d0a46326c57237757eb0874c1a19f323c7c84da0d150cb3d0b4b6c010614a7ff1fcd3486ca039dc8800e09328579310637a79c53795fd py3-catalogue-2.0.6.tar.gz
-"
diff --git a/testing/py3-catkin-pkg/APKBUILD b/testing/py3-catkin-pkg/APKBUILD
index 53d44e7e8b5..1456eee9f0a 100644
--- a/testing/py3-catkin-pkg/APKBUILD
+++ b/testing/py3-catkin-pkg/APKBUILD
@@ -2,26 +2,40 @@
# Maintainer: Russ Webber <russ@rw.id.au>
pkgname=py3-catkin-pkg
_pkgname=catkin_pkg
-pkgver=0.4.23
-pkgrel=2
+pkgver=0.5.2
+pkgrel=3
pkgdesc="Standalone Python library for the catkin build system."
url="http://wiki.ros.org/catkin_pkg"
arch="noarch"
license="BSD-3-Clause"
-options="!check" # python deps not packaged: # flake8-class-newline flake8-comprehensions flake8-deprecated flake8-docstrings
depends="python3 py3-docutils py3-dateutil py3-parsing"
makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
+checkdepends="py3-pytest py3-mock"
+subpackages="$pkgname-pyc"
+source="https://github.com/ros-infrastructure/catkin_pkg/archive/refs/tags/$pkgver/catkin-pkg-$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
replaces="py3-catkin-pkg-modules" # module was renamed in pypi
provides="py3-catkin-pkg-modules=$pkgver-r$pkgrel"
+prepare() {
+ default_prepare
+ # skip lint checks
+ rm test/test_flake8.py
+}
+
build() {
python3 setup.py build
}
+check() {
+ PYTHONPATH=build/lib python3 -m unittest test/test_*.py
+}
+
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="6f0bec590ad85a74781a445bf5d5923acb8f45fd446decfa69eec5d6136dd90c3e95f1fef89bb6e1ed5613e04ced132d7bc3d48e072cd83ca07ec745ec9ed369 catkin_pkg-0.4.23.tar.gz"
+
+sha512sums="
+40e7e3839017ad430ee36dccf87a90727e5efd92e6c605cdba3e9f8850b71a6a80da79bd8760d94e356dadebdd842c8a3f8b530782fb75503d3e620add79be4a catkin-pkg-0.5.2.tar.gz
+"
diff --git a/testing/py3-cbor2/APKBUILD b/testing/py3-cbor2/APKBUILD
new file mode 100644
index 00000000000..6ad2f3fb299
--- /dev/null
+++ b/testing/py3-cbor2/APKBUILD
@@ -0,0 +1,49 @@
+# Contributor: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
+# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
+pkgname=py3-cbor2
+pkgver=5.6.1
+pkgrel=1
+pkgdesc="encoding and decoding for CBOR (RFC 8949)"
+url="https://github.com/agronholm/cbor2"
+arch="all"
+license="MIT"
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-setuptools_scm
+ py3-wheel
+ python3-dev
+ "
+checkdepends="
+ py3-hypothesis
+ py3-pytest
+ py3-pytest-cov
+ py3-tomli
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/c/cbor2/cbor2-$pkgver.tar.gz
+ fix-32bit-tests.patch
+ "
+builddir="$srcdir/cbor2-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+9ddf2c3690780816ff50ff4ed371435ca45b597b706254c37c9f01d1f1a699892e2c945a72e69b5506a803c41692f399b58b4e32d9409a0197c677e537e656b2 py3-cbor2-5.6.1.tar.gz
+ba8a19a73fe2dc747846b77fde6cd621ccb500a514ba61192dfa28c875720003666165ad12c767260b31148b0dd25454e36e4f43dd8bb1d11928944c6a5b61dd fix-32bit-tests.patch
+"
diff --git a/testing/py3-cbor2/fix-32bit-tests.patch b/testing/py3-cbor2/fix-32bit-tests.patch
new file mode 100644
index 00000000000..de8fdbb0823
--- /dev/null
+++ b/testing/py3-cbor2/fix-32bit-tests.patch
@@ -0,0 +1,29 @@
+Patch-Source: https://github.com/agronholm/cbor2/commit/75279162a019d20db3bff8d64d41c7e97b555b53
+From 75279162a019d20db3bff8d64d41c7e97b555b53 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Alex=20Gr=C3=B6nholm?= <alex.gronholm@nextday.fi>
+Date: Tue, 6 Feb 2024 15:43:23 +0200
+Subject: [PATCH] Fixed test_oversized_read failing on 32-bit platforms
+
+Fixes #215.
+---
+ tests/test_decoder.py | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/tests/test_decoder.py b/tests/test_decoder.py
+index cd0b45a..d11be6e 100644
+--- a/tests/test_decoder.py
++++ b/tests/test_decoder.py
+@@ -939,11 +939,11 @@ def test_decimal_payload_unpacking(impl, data, expected):
+ "payload",
+ [
+ pytest.param(
+- unhexlify("5b7fffffffffffff00"),
++ unhexlify("41"),
+ id="bytestring",
+ ),
+ pytest.param(
+- unhexlify("7b7fffffffffffff00"),
++ unhexlify("61"),
+ id="unicode",
+ ),
+ ],
diff --git a/testing/py3-cchardet/APKBUILD b/testing/py3-cchardet/APKBUILD
index 75b92201e35..7546b3fd7e1 100644
--- a/testing/py3-cchardet/APKBUILD
+++ b/testing/py3-cchardet/APKBUILD
@@ -1,12 +1,13 @@
# Maintainer: Michał Adamski <michal@ert.pl>
pkgname=py3-cchardet
pkgver=2.1.7
-pkgrel=1
+pkgrel=4
pkgdesc="High speed universal character encoding detector"
url="https://github.com/PyYoshi/cChardet"
arch="all"
license="MPL-1.1"
-makedepends="py3-setuptools python3-dev"
+makedepends="cython py3-setuptools python3-dev"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/c/cchardet/cchardet-$pkgver.tar.gz"
builddir="$srcdir/cchardet-$pkgver"
@@ -19,7 +20,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
43e663e30ec079b2a954862de5e8136a2e40f69e300d65eb4ce9d7ffa5d8c496dc7c0937b3306b4096cfad12a1d0617628f8f0115534ab6faf9eb39d2b3935a2 cchardet-2.1.7.tar.gz
diff --git a/testing/py3-cdio/APKBUILD b/testing/py3-cdio/APKBUILD
index e8277447dee..bf3ad7308d7 100644
--- a/testing/py3-cdio/APKBUILD
+++ b/testing/py3-cdio/APKBUILD
@@ -3,14 +3,17 @@
pkgname=py3-cdio
_pyname=pycdio
pkgver=2.1.1
-pkgrel=1
+pkgrel=4
pkgdesc="python interface to libcdio"
url="https://www.gnu.org/software/libcdio"
arch="all"
license="GPL-3.0-only"
depends="python3"
makedepends="python3-dev py3-setuptools libcdio-dev swig py3-nose"
-source="https://files.pythonhosted.org/packages/source/${_pyname%${_pyname#?}}/$_pyname/$_pyname-$pkgver.tar.gz"
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/${_pyname%${_pyname#?}}/$_pyname/$_pyname-$pkgver.tar.gz
+ assertEquals.patch
+ "
builddir="$srcdir/$_pyname-$pkgver"
build() {
@@ -22,8 +25,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
4c756b1c2f39332add86e01af129ccb608178306be42c9719c163b6bad0ba4de3916ac477c6866450890e094b14a2689a24e7d19bcf13846330555c2bb1feaa7 pycdio-2.1.1.tar.gz
+8e64bbe0df39f42fa026423b113e3d26067d7c8a2169fafbb3e0d8fff1933cfb073ece116b243a39ed6b900ee0dcab5c44b257d9c464ce485f562c33c58beb14 assertEquals.patch
"
diff --git a/testing/py3-cdio/assertEquals.patch b/testing/py3-cdio/assertEquals.patch
new file mode 100644
index 00000000000..611d2d01917
--- /dev/null
+++ b/testing/py3-cdio/assertEquals.patch
@@ -0,0 +1,23 @@
+diff --git a/test/test-cdtext.py b/test/test-cdtext.py
+index d635c7c..424f9c3 100644
+--- a/test/test-cdtext.py
++++ b/test/test-cdtext.py
+@@ -31,3 +31,3 @@ class CDTextTests(unittest.TestCase):
+ """Test keywords"""
+- self.assertEquals(
++ self.assertEqual(
+ pycdio.cdtext_field2str(pycdio.CDTEXT_FIELD_PERFORMER), "PERFORMER"
+@@ -41,8 +41,8 @@ class CDTextTests(unittest.TestCase):
+ text = device.get_cdtext()
+- self.assertEquals(text.get(pycdio.CDTEXT_FIELD_PERFORMER, 0), "Performer")
+- self.assertEquals(text.get(pycdio.CDTEXT_FIELD_TITLE, 0), "CD Title")
+- self.assertEquals(text.get(pycdio.CDTEXT_FIELD_DISCID, 0), "XY12345")
++ self.assertEqual(text.get(pycdio.CDTEXT_FIELD_PERFORMER, 0), "Performer")
++ self.assertEqual(text.get(pycdio.CDTEXT_FIELD_TITLE, 0), "CD Title")
++ self.assertEqual(text.get(pycdio.CDTEXT_FIELD_DISCID, 0), "XY12345")
+
+- self.assertEquals(text.get(pycdio.CDTEXT_FIELD_PERFORMER, 1), "Performer")
+- self.assertEquals(text.get(pycdio.CDTEXT_FIELD_TITLE, 1), "Track Title")
++ self.assertEqual(text.get(pycdio.CDTEXT_FIELD_PERFORMER, 1), "Performer")
++ self.assertEqual(text.get(pycdio.CDTEXT_FIELD_TITLE, 1), "Track Title")
+
diff --git a/testing/py3-cdsapi/APKBUILD b/testing/py3-cdsapi/APKBUILD
deleted file mode 100644
index 52631cdc70a..00000000000
--- a/testing/py3-cdsapi/APKBUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-# Contributor: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-# Maintainer: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-pkgname=py3-cdsapi
-_pkgorig=cdsapi
-pkgver=0.5.1
-pkgrel=0
-pkgdesc="Python API to access the Copernicus Climate Data Store"
-url="https://github.com/ecmwf/cdsapi"
-arch="noarch"
-license="Apache-2.0 license"
-depends="python3 py3-requests py3-tqdm"
-makedepends="py3-setuptools"
-checkdepends="py3-pytest py3-pytest-runner"
-source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/c/cdsapi/cdsapi-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgorig-$pkgver"
-options="!check" # we need API key for test
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 -m pytest
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-5f1c12c39e1f5162ff6f8bf1dd170817adc37c66935395d46ca1914a312474502a35e759a04b83997f92999c76336f5141a7f16c7a137aa3831c1d5c78578809 py3-cdsapi-0.5.1.tar.gz
-"
diff --git a/testing/py3-cerberus/APKBUILD b/testing/py3-cerberus/APKBUILD
deleted file mode 100644
index d69243dcd91..00000000000
--- a/testing/py3-cerberus/APKBUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-# Contributor: Noel Kuntze <noel.kuntze@thermi.consulting>
-# Maintainer: Noel Kuntze <noel.kuntze@thermi.consulting>
-pkgname=py3-cerberus
-pkgver=1.3.4
-pkgrel=1
-pkgdesc="Lightweight, extensible data validation library for Python"
-url="http://python-cerberus.org/"
-license="ISC"
-arch="noarch"
-depends="python3"
-makedepends="py3-setuptools"
-checkdepends="py3-pytest"
-source="$pkgname-$pkgver.tar.gz::https://github.com/pyeve/cerberus/archive/refs/tags/$pkgver.tar.gz"
-builddir="$srcdir/cerberus-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- py.test-3 -v cerberus/tests
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir" --skip-build
- # Don't package the tests or benchmarks
- rm -rf "$pkgdir"/usr/lib/python3*/site-packages/cerberus/tests
- rm -rf "$pkgdir"/usr/lib/python3*/site-packages/cerberus/benchmarks
-}
-
-sha512sums="
-c816b426ed1b32367d1e8f1c26d6ddd4b49c6578540e688baf693e3094a05800f645cfe879be6378c1e9be9899cad7bc2ad1ed9844d6762d2ef6e0cc54a7476a py3-cerberus-1.3.4.tar.gz
-"
diff --git a/testing/py3-certauth/APKBUILD b/testing/py3-certauth/APKBUILD
new file mode 100644
index 00000000000..21e55b93548
--- /dev/null
+++ b/testing/py3-certauth/APKBUILD
@@ -0,0 +1,39 @@
+# Contributor: Oleg Titov <oleg.titov@gmail.com>
+# Maintainer: Oleg Titov <oleg.titov@gmail.com>
+pkgname=py3-certauth
+pkgver=1.3.0
+pkgrel=0
+pkgdesc="Simple CertificateAuthority and host certificate creation, useful for man-in-the-middle HTTPS proxy"
+url="https://github.com/ikreymer/certauth"
+arch="noarch"
+license="MIT"
+depends="python3 py3-openssl py3-tldextract"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+checkdepends="py3-pytest py3-pytest-cov"
+subpackages="$pkgname-pyc"
+source="py3-certauth-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/c/certauth/certauth-$pkgver.tar.gz"
+builddir="$srcdir/certauth-$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
+
+ # testfile is good on github, but has unnesesary '\n' on pypi.org
+ .testenv/bin/python3 -m pytest --cov certauth -v test/ \
+ -k 'not test_file_ipv6_wildcard_ignore'
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+03a483461c90ae4b91ca60e0240a67f5b9ea50642c589d83c762b168095b137a0d9726ce24e0c1fe4eb91d7dd064e42755107b5fdf60be1addaa4b7e166dc01e py3-certauth-1.3.0.tar.gz
+"
diff --git a/testing/py3-cfgv/APKBUILD b/testing/py3-cfgv/APKBUILD
deleted file mode 100644
index c6cf1e388f2..00000000000
--- a/testing/py3-cfgv/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Contributor: Galen Abell <galen@galenabell.com>
-# Maintainer: Galen Abell <galen@galenabell.com>
-pkgname=py3-cfgv
-_pyname=cfgv
-pkgver=3.3.1
-pkgrel=1
-pkgdesc="Validate configuration and produce human readable error messages"
-url="https://github.com/asottile/cfgv"
-arch="noarch"
-license="MIT"
-depends="python3"
-makedepends="py3-setuptools"
-checkdepends="py3-pytest"
-source="$_pyname-$pkgver.tar.gz::https://github.com/asottile/cfgv/archive/refs/tags/v$pkgver.tar.gz"
-builddir="$srcdir/$_pyname-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- pytest
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-59c358bab9f2b32a1ac6eb72bba67b76e8368e0cf78c32228a6add200a0205f698aa80d9bd1b1e8701fb699b9599c88a240f76e2c91a602a0c292a67693e6857 cfgv-3.3.1.tar.gz
-"
diff --git a/testing/py3-chameleon/APKBUILD b/testing/py3-chameleon/APKBUILD
index 8291dff863e..4bcfa58f158 100644
--- a/testing/py3-chameleon/APKBUILD
+++ b/testing/py3-chameleon/APKBUILD
@@ -1,14 +1,19 @@
# Contributor: Fabian Affolter <fabian@affolter-engineering.ch>
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-chameleon
-pkgver=3.9.1
-pkgrel=1
+pkgver=4.5.4
+pkgrel=0
pkgdesc="Fast Python HTML/XML Template Compiler"
url="https://chameleon.readthedocs.org"
arch="noarch"
license="BSD-3-Clause AND BSD-4-Clause AND Python-2.0 AND ZPL-2.1"
-depends="python3"
-makedepends="py3-setuptools"
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/malthe/chameleon/archive/$pkgver.tar.gz"
builddir="$srcdir"/chameleon-$pkgver
@@ -16,17 +21,24 @@ replaces="py-chameleon" # Backwards compatibility
provides="py-chameleon=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- python3 setup.py test
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+
+ rm -r "$pkgdir"/usr/lib/python3*/site-packages/chameleon/tests
}
sha512sums="
-53b0aeeef89df7cacc299dad20e05023c638e708604876ce5269f22bab00e5001b640123920aef0ef9a0f554bbd37d151bedfdfe55ec161defe6b6f3781d841e py3-chameleon-3.9.1.tar.gz
+2820282d54a7a727a8765c2d8fe29281faa86ff2ef3c55ce0f2f107d03abc900588abe9884a371e15f00f24a3d97cd010bd9448264a28acdc627338f1a86096e py3-chameleon-4.5.4.tar.gz
"
diff --git a/testing/py3-ciso8601/APKBUILD b/testing/py3-ciso8601/APKBUILD
index 1b844b8ae7e..28a4055c209 100644
--- a/testing/py3-ciso8601/APKBUILD
+++ b/testing/py3-ciso8601/APKBUILD
@@ -1,30 +1,34 @@
# Contributor: Michał Polański <michal@polanski.me>
# Maintainer: Michał Polański <michal@polanski.me>
pkgname=py3-ciso8601
-pkgver=2.2.0
-pkgrel=0
+pkgver=2.3.1
+pkgrel=1
pkgdesc="Fast ISO8601 date time parser for Python written in C"
url="https://github.com/closeio/ciso8601"
license="MIT"
arch="all"
-depends="python3"
-makedepends="python3-dev py3-setuptools"
-checkdepends="py3-tz"
+makedepends="python3-dev py3-gpep517 py3-setuptools py3-wheel"
+checkdepends="py3-pytest py3-tz"
source="https://github.com/closeio/ciso8601/archive/v$pkgver/py3-ciso8601-$pkgver.tar.gz"
builddir="$srcdir/ciso8601-$pkgver"
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- python3 setup.py test
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
}
package() {
- python3 setup.py install --root="$pkgdir" --skip-build
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
-a78a26bd60a64d31b896cf04650f0bbf3f38324f70572c8357f5d9146e12a9c0f150961f9df640665ee13521a265b49636a532e0b61ab4f394f08f8baafa211d py3-ciso8601-2.2.0.tar.gz
+cf01355ffb197d8fe10c336d78e370bdf508f9a58cf2b9e912ae4d7da80910387eaf8809e3c6ccf12891b915708111bb155a0e2bb3de8a7e95f74284be9256a8 py3-ciso8601-2.3.1.tar.gz
"
diff --git a/testing/py3-cjkwrap/APKBUILD b/testing/py3-cjkwrap/APKBUILD
index e159bbb84fc..e5a0a7aa6ba 100644
--- a/testing/py3-cjkwrap/APKBUILD
+++ b/testing/py3-cjkwrap/APKBUILD
@@ -3,7 +3,7 @@
pkgname=py3-cjkwrap
_pkgname=cjkwrap
pkgver=2.2
-pkgrel=0
+pkgrel=3
pkgdesc="Library for wrapping and filling UTF-8 CJK text"
url="https://gitlab.com/fgallaire/cjkwrap"
arch="noarch"
@@ -11,6 +11,7 @@ license="LGPL-3.0-or-later"
depends="python3"
makedepends="py3-setuptools"
options="!check" # no test suite
+subpackages="$pkgname-pyc"
source="https://gitlab.com/fgallaire/cjkwrap/-/archive/v$pkgver/cjkwrap-v$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-v$pkgver"
@@ -19,7 +20,7 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
diff --git a/testing/py3-class-doc/APKBUILD b/testing/py3-class-doc/APKBUILD
new file mode 100644
index 00000000000..9a0fa4f0a83
--- /dev/null
+++ b/testing/py3-class-doc/APKBUILD
@@ -0,0 +1,39 @@
+# Contributor: Lauren N. Liberda <lauren@selfisekai.rocks>
+# Maintainer: Lauren N. Liberda <lauren@selfisekai.rocks>
+pkgname=py3-class-doc
+pkgver=1.25
+pkgrel=1
+pkgdesc="Extract attributes docstrings defined in various ways"
+url="https://github.com/danields761/class-doc"
+arch="noarch"
+license="MIT"
+depends="py3-more-itertools"
+makedepends="py3-gpep517 py3-poetry-core"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="https://github.com/danields761/class-doc/archive/refs/tags/$pkgver/class-doc-$pkgver.tar.gz
+ masonry.patch
+ "
+builddir="$srcdir/class-doc-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages testenv
+ testenv/bin/python3 -m installer .dist/*.whl
+ testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+ee90100b8be199873c411ecb97915bc835c744d30e539eb661193224a200e66d66189857dc5043bd32f2f01c9ea852b9624d3b01d4236e2e3f93fe278d0da26a class-doc-1.25.tar.gz
+f063b339531531a47a9a72f84a49374f6e8178d8901c207bcb7713a19c49ed72f54260937b5d5d106bc48c8d54e43eeef818c0d6a6a32f4edc06ce9f71962050 masonry.patch
+"
diff --git a/testing/py3-class-doc/masonry.patch b/testing/py3-class-doc/masonry.patch
new file mode 100644
index 00000000000..749e4c10b7f
--- /dev/null
+++ b/testing/py3-class-doc/masonry.patch
@@ -0,0 +1,11 @@
+--- ./pyproject.toml.orig
++++ ./pyproject.toml
+@@ -31,7 +31,7 @@
+
+ [build-system]
+ requires = ["poetry>=0.12"]
+-build-backend = "poetry.masonry.api"
++build-backend = "poetry.core.masonry.api"
+
+ [tool.black]
+ skip_string_normalization = true
diff --git a/testing/py3-click-completion/APKBUILD b/testing/py3-click-completion/APKBUILD
new file mode 100644
index 00000000000..bf7cae6a93a
--- /dev/null
+++ b/testing/py3-click-completion/APKBUILD
@@ -0,0 +1,33 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-click-completion
+pkgver=0.5.2
+pkgrel=1
+pkgdesc="Fish, Bash, Zsh and PowerShell completion for Click"
+url="https://github.com/click-contrib/click-completion"
+arch="noarch"
+license="MIT"
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/click-contrib/click-completion/archive/refs/tags/v$pkgver.tar.gz"
+options="!check" # No tests
+builddir="$srcdir/click-completion-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+e3298cd69b4486f0626fe286cff3b31ac62381a205f04248150e543a87f1eaebb6d650a7579fd8e9fd3be6adbdc39eb829cbccf0113650f58146757f781f1f50 py3-click-completion-0.5.2.tar.gz
+"
diff --git a/testing/py3-click-default-group/APKBUILD b/testing/py3-click-default-group/APKBUILD
new file mode 100644
index 00000000000..19d29efc2f7
--- /dev/null
+++ b/testing/py3-click-default-group/APKBUILD
@@ -0,0 +1,40 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-click-default-group
+pkgver=1.2.4
+pkgrel=1
+pkgdesc="Extends click.Group to invoke a command without explicit subcommand name"
+url="https://github.com/click-contrib/click-default-group"
+arch="noarch"
+license="BSD-3-Clause"
+depends="py3-click"
+makedepends="
+ py3-flit-core
+ py3-gpep517
+ py3-wheel
+ "
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/click-contrib/click-default-group/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/click-default-group-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest -k 'not test_default_command_with_arguments'
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+0239e703421e693399e8e54e4a6bdc4a74e6f16307f008ee742788ce3e8040f633de2b1bf12997a5c448b70cb55f77ccd4f42c5b4abe3b6a05df18908daf61da py3-click-default-group-1.2.4.tar.gz
+"
diff --git a/testing/py3-click-log/APKBUILD b/testing/py3-click-log/APKBUILD
deleted file mode 100644
index 133fa5420c3..00000000000
--- a/testing/py3-click-log/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Contributor: Galen Abell <galen@galenabell.com>
-# Maintainer: Galen Abell <galen@galenabell.com>
-pkgname=py3-click-log
-_pyname=click-log
-pkgver=0.4.0
-pkgrel=0
-pkgdesc="Integrates logging with click"
-url="https://github.com/click-contrib/click-log"
-arch="noarch"
-license="MIT"
-depends="python3 py3-click"
-makedepends="py3-setuptools"
-checkdepends="py3-pytest"
-source="https://files.pythonhosted.org/packages/source/c/$_pyname/$_pyname-$pkgver.tar.gz"
-builddir="$srcdir/$_pyname-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- PYTHONPATH="$PWD/build/lib" pytest -v
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-95d3cb2fa9821e4f58b25072f39d34f21fe4a7600923f59f4b57b92dbcd9fa2584d710de1d4a1aa2a757c048398342aabbb1b5ab32cf4128ccecee10f9f15a5a click-log-0.4.0.tar.gz
-"
diff --git a/testing/py3-click-threading/APKBUILD b/testing/py3-click-threading/APKBUILD
index 488aafe9253..cf88e3276b7 100644
--- a/testing/py3-click-threading/APKBUILD
+++ b/testing/py3-click-threading/APKBUILD
@@ -3,7 +3,7 @@
pkgname=py3-click-threading
_pyname=click-threading
pkgver=0.5.0
-pkgrel=1
+pkgrel=4
pkgdesc="Utilities for multithreading in click"
url="https://github.com/click-contrib/click-threading"
arch="noarch"
@@ -11,6 +11,7 @@ license="MIT"
depends="python3 py3-click"
makedepends="py3-setuptools"
checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pyname%${_pyname#?}}/$_pyname/$_pyname-$pkgver.tar.gz"
builddir="$srcdir/$_pyname-$pkgver"
@@ -23,7 +24,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
diff --git a/testing/py3-clickclick/APKBUILD b/testing/py3-clickclick/APKBUILD
new file mode 100644
index 00000000000..a6c58812bec
--- /dev/null
+++ b/testing/py3-clickclick/APKBUILD
@@ -0,0 +1,50 @@
+# Contributor: Henrik Riomar <henrik.riomar@gmail.com>
+# Maintainer: Henrik Riomar <henrik.riomar@gmail.com>
+pkgname=py3-clickclick
+_pkgname=python-clickclick
+pkgver=20.10.2
+pkgrel=2
+pkgdesc="Click command line utilities"
+url="https://codeberg.org/hjacobs/python-clickclick"
+arch="noarch"
+license="Apache-2.0"
+#options="!check" # one failing test
+checkdepends="
+ py3-pytest
+ py3-pytest-cov
+ py3-toml
+ "
+makedepends="
+ py3-flake8
+ py3-setuptools
+ "
+depends="
+ py3-click
+ py3-yaml
+ python3
+ "
+subpackages="$pkgname-pyc"
+source="
+ $pkgname-$pkgver.tar.gz::https://codeberg.org/hjacobs/$_pkgname/archive/$pkgver.tar.gz
+ Remove-unused-six-from-setup_requires-1.patch
+ fix-quoting-style-in-assert.patch
+ "
+builddir="$srcdir/$_pkgname"
+
+build() {
+ python3 setup.py build
+}
+
+check() {
+ python3 setup.py test
+}
+
+package() {
+ python3 setup.py install --skip-build --root="$pkgdir"
+}
+
+sha512sums="
+d8954d231bff6945ac0e8350be05775a8a0b852dd0284e3446b3f9c8bc5861870ed1bc058e132c144fe8d543aee87d7a7a54894abdb4006664e5994c8cfb507f py3-clickclick-20.10.2.tar.gz
+b2a6c1517f0fe8c35d89c886340afb20f18f107328fd34271b1d56743fd194b0d2fce277036b689498173e65b13b51620d9ed8809d41c8b98004440af8c8fd73 Remove-unused-six-from-setup_requires-1.patch
+977a63eb6210b3d9d65eabe11c0ef7ed68947147e4704909027547efda512472240affcc1ce0ebb381433bcecfbb325af91903093ca7add0496a9a63f9592f82 fix-quoting-style-in-assert.patch
+"
diff --git a/testing/py3-clickclick/Remove-unused-six-from-setup_requires-1.patch b/testing/py3-clickclick/Remove-unused-six-from-setup_requires-1.patch
new file mode 100644
index 00000000000..fb2088ca4f8
--- /dev/null
+++ b/testing/py3-clickclick/Remove-unused-six-from-setup_requires-1.patch
@@ -0,0 +1,30 @@
+From 119b22ada558837a567cdf7dee8d85100429bdf8 Mon Sep 17 00:00:00 2001
+From: felixonmars <felixonmars@archlinux.org>
+Date: Mon, 7 Feb 2022 10:14:46 +0100
+Subject: [PATCH] Remove unused 'six' from setup_requires (#1)
+
+Signed-off-by: felixonmars <felixonmars@noreply.codeberg.org>
+Co-authored-by: felixonmars <felixonmars@noreply.codeberg.org>
+Reviewed-on: https://codeberg.org/hjacobs/python-clickclick/pulls/1
+Co-authored-by: felixonmars <felixonmars@archlinux.org>
+Co-committed-by: felixonmars <felixonmars@archlinux.org>
+---
+ setup.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/setup.py b/setup.py
+index 803852f..46fb595 100755
+--- a/setup.py
++++ b/setup.py
+@@ -145,7 +145,7 @@ def setup_package():
+ packages=setuptools.find_packages(exclude=['tests', 'tests.*']),
+ package_data={MAIN_PACKAGE: ["*.json"]},
+ install_requires=install_reqs,
+- setup_requires=['six', 'flake8'],
++ setup_requires=['flake8'],
+ cmdclass=cmdclass,
+ tests_require=['pytest-cov', 'pytest'],
+ command_options=command_options,
+--
+2.38.0
+
diff --git a/testing/py3-clickclick/fix-quoting-style-in-assert.patch b/testing/py3-clickclick/fix-quoting-style-in-assert.patch
new file mode 100644
index 00000000000..efe557f2521
--- /dev/null
+++ b/testing/py3-clickclick/fix-quoting-style-in-assert.patch
@@ -0,0 +1,25 @@
+From 78992219065dc4762987883c39e75dbb2921e187 Mon Sep 17 00:00:00 2001
+From: Henrik Riomar <henrik.riomar@gmail.com>
+Date: Thu, 6 Oct 2022 12:11:49 +0200
+Subject: [PATCH] fix quoting style in assert
+
+---
+ tests/test_console.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/tests/test_console.py b/tests/test_console.py
+index 782fb83..62d16ae 100644
+--- a/tests/test_console.py
++++ b/tests/test_console.py
+@@ -204,7 +204,7 @@ def test_cli(monkeypatch):
+
+ runner = CliRunner()
+ result = runner.invoke(cli, ['notexists'])
+- assert 'Error: No such command "notexists"' in result.output
++ assert 'Error: No such command \'notexists\'' in result.output
+
+
+ def test_choice_default(monkeypatch):
+--
+2.38.0
+
diff --git a/testing/py3-cmd2/APKBUILD b/testing/py3-cmd2/APKBUILD
index f8362a6e5f8..9f58062ee59 100644
--- a/testing/py3-cmd2/APKBUILD
+++ b/testing/py3-cmd2/APKBUILD
@@ -1,38 +1,34 @@
# Contributor: prspkt <prspkt@protonmail.com>
# Maintainer: prspkt <prspkt@protonmail.com>
pkgname=py3-cmd2
-pkgver=2.3.3
-pkgrel=1
+pkgver=2.4.3
+pkgrel=2
pkgdesc="Tool for building interactive command line applications in Python"
url="https://github.com/python-cmd2/cmd2"
arch="noarch"
license="MIT"
depends="python3 py3-attrs py3-pyperclip py3-wcwidth"
-makedepends="py3-setuptools"
+makedepends="py3-gpep517 py3-setuptools py3-setuptools_scm py3-wheel"
checkdepends="py3-pytest py3-pytest-mock py3-pytest-xdist py3-pytest-cov"
-source="https://files.pythonhosted.org/packages/source/c/cmd2/cmd2-$pkgver.tar.gz
- remove-setuptools_scm.patch
- "
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/c/cmd2/cmd2-$pkgver.tar.gz"
builddir="$srcdir/cmd2-$pkgver"
-prepare() {
- default_prepare
- sed -i "s/%VERSION%/$pkgver/" setup.py
-}
-
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- pytest
+ pytest -k 'not test_send_to_paste_buffer'
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/cmd2*.whl
}
sha512sums="
-30d7a82a1c3d23431a40a7e99f10a4c23227e9ab073ab1d7fd83e516f54e9c90bda10e6072b50c0a2ca435498c1060e06b32a550409721899e28d2662995a8b8 cmd2-2.3.3.tar.gz
-8a6499b22d0a00f9b450313035510db7f0241a72cec49644ed3e7e88c34a94e1d43ae57dfe9107a47d7b48475651485283888ea07db2da128737670ffbeacd81 remove-setuptools_scm.patch
+1d440752262f38a742069e636373884edcc49c17ba17b21b24015cfe559b4df36b45ac9489f2f643897fbd38f54b8e6120daf07ef25d2f209af8a4ac8e4c0085 cmd2-2.4.3.tar.gz
"
diff --git a/testing/py3-cmd2/remove-setuptools_scm.patch b/testing/py3-cmd2/remove-setuptools_scm.patch
deleted file mode 100644
index 91fbeb87eae..00000000000
--- a/testing/py3-cmd2/remove-setuptools_scm.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- a/setup.py
-+++ b/setup.py
-@@ -40,7 +40,7 @@
- )
- ) # noqa: E128
-
--SETUP_REQUIRES = ['setuptools >= 34.4', 'setuptools_scm >= 3.0']
-+SETUP_REQUIRES = ['setuptools >= 34.4']
-
- INSTALL_REQUIRES = [
- 'attrs >= 16.3.0',
-@@ -91,8 +91,8 @@
- }
-
- setup(
-+ version="%VERSION%",
- name="cmd2",
-- use_scm_version={'git_describe_command': 'git describe --dirty --tags --long --exclude plugin-*'},
- description=DESCRIPTION,
- long_description=LONG_DESCRIPTION,
- long_description_content_type='text/markdown',
diff --git a/testing/py3-cobs/APKBUILD b/testing/py3-cobs/APKBUILD
index 4dcacf06f20..9ab39843295 100644
--- a/testing/py3-cobs/APKBUILD
+++ b/testing/py3-cobs/APKBUILD
@@ -1,8 +1,8 @@
# Maintainer: Martijn Braam <martijn@brixit.nl>
pkgname=py3-cobs
_pyname=cobs
-pkgver=1.1.4
-pkgrel=2
+pkgver=1.2.0
+pkgrel=3
pkgdesc="Consistent Overhead Byte Stuffing"
options="!check" # Testsuite runs 0 tests
url="https://pypi.org/project/cobs/"
@@ -11,6 +11,7 @@ license="MIT"
depends="python3"
makedepends="py3-setuptools python3-dev"
_pypiprefix="${_pyname%${_pyname#?}}"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/$_pypiprefix/$_pyname/$_pyname-$pkgver.tar.gz"
builddir=$srcdir/$_pyname-$pkgver
@@ -19,6 +20,8 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="0cd6a6e68eaeaf45f3e8d5a0e1bcd20ca8c390fcebfb9b14a47d84a6c04de39d04b0e2411a8c6842a65331331ade318e292aac82b29c7761bf0307b64ae81673 cobs-1.1.4.tar.gz"
+sha512sums="
+92a3324fd07dd75ce84049f412bd3f1e9cfc42864672eea09f2d106a942dc0dab8bef1812a1288b92a70897f73171919d4b4b917d9155eb193606f8159d34405 cobs-1.2.0.tar.gz
+"
diff --git a/testing/py3-codecov/APKBUILD b/testing/py3-codecov/APKBUILD
index 5ca29949532..5c391d850f1 100644
--- a/testing/py3-codecov/APKBUILD
+++ b/testing/py3-codecov/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Leonardo Arena <rnalrd@alpinelinux.org>
-# Maintainer: Justin Berthault <justin.berthault@zaclys.net>
+# Maintainer: Will Sinatra <wpsinatra@gmail.com>
pkgname=py3-codecov
-pkgver=2.1.12
-pkgrel=1
+pkgver=2.1.13
+pkgrel=2
pkgdesc="Report uploader for Codecov"
options="!check" # Requires unpackaged 'ddt'
url="https://github.com/codecov/codecov-python"
@@ -11,6 +11,7 @@ license="Apache-2.0"
depends="python3 py3-coverage py3-requests"
makedepends="py3-setuptools"
checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/codecov/codecov-python/archive/v$pkgver.tar.gz"
builddir="$srcdir"/codecov-python-$pkgver
@@ -26,7 +27,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
local file; for file in "$pkgdir"/usr/bin/*; do
mv $file $file-3
@@ -35,5 +36,5 @@ package() {
}
sha512sums="
-fac34179ace4d4813ed71a5745e6ef8120d052fd7d7bef5548f80f7009f7b3242ec3aeb948f2125980ea932f130a2e81f742f47a3bd4f984726eaba16e1a7133 py3-codecov-2.1.12.tar.gz
+beddc2d19c6d2b535340e10084fc197ba4a86878d0c1c3da50d93ee4e7ed90cfa1f5456e1e8b6d1bee781c653b296e291b2257761f9b0339408a9f3d7844646e py3-codecov-2.1.13.tar.gz
"
diff --git a/testing/py3-codespell/APKBUILD b/testing/py3-codespell/APKBUILD
deleted file mode 100644
index 670f46bef07..00000000000
--- a/testing/py3-codespell/APKBUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-# Contributor: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
-# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
-pkgname=py3-codespell
-_pkgname=${pkgname#py3-}
-pkgver=2.1.0
-pkgrel=1
-pkgdesc="Fix common misspellings in text files, primarily source code"
-options="!check" # No testsuite
-url="https://github.com/codespell-project/codespell/"
-arch="noarch"
-license="GPL-2.0-only"
-makedepends="py3-setuptools"
-checkdepends="py3-pytest"
-depends="py3-chardet"
-source="$pkgname-$pkgver.tar.gz::https://github.com/codespell-project/codespell/archive/refs/tags/v$pkgver.tar.gz"
-builddir="$srcdir"/$_pkgname-$pkgver
-
-check() {
- python3 setup.py test
-}
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-16d9a4239ae18fad6a06825a2afae6adc903d50eb90b759cdc61b1e1d145458bbfb1385837c4465b0a9858da100be074c597343c4816ca0260bbf6710d9c84e8 py3-codespell-2.1.0.tar.gz
-"
diff --git a/testing/py3-colander/APKBUILD b/testing/py3-colander/APKBUILD
index 53f3887fb7a..08a70377bfd 100644
--- a/testing/py3-colander/APKBUILD
+++ b/testing/py3-colander/APKBUILD
@@ -2,15 +2,16 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-colander
_pkgname=colander
-pkgver=1.8.3
-pkgrel=2
+pkgver=2.0
+pkgrel=1
pkgdesc="simple schema-based Python serialization and deserialization library"
-url="http://docs.pylonsproject.org/projects/colander/en/latest/"
+url="https://docs.pylonsproject.org/projects/colander/en/latest/"
arch="noarch"
license="ZPL-2.1"
-depends="python3 py3-iso8601 py3-translationstring"
+depends="python3 py3-iso8601 py3-translationstring py3-babel"
checkdepends="py3-nose py3-coverage"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -24,7 +25,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="463cb4ab7538a7b8991f8eff3652f003366b96c8456df8f7ed0faa64aacf7e068e6af9e13dc81fd233253bd1454de0d3dfe6191ba2465ec8d8b41b9c06cdc5f8 colander-1.8.3.tar.gz"
+sha512sums="
+16e9f55442899bef03f15802dd87b051aa3932d88273a141fcc1300f7e7f5457de263ec6d1ed8b8025660e0d99aefa8390eb2349b6ccd5339faaafce1321de56 colander-2.0.tar.gz
+"
diff --git a/testing/py3-colored/APKBUILD b/testing/py3-colored/APKBUILD
new file mode 100644
index 00000000000..d11a5541e37
--- /dev/null
+++ b/testing/py3-colored/APKBUILD
@@ -0,0 +1,28 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=py3-colored
+_pyname=${pkgname/py3-/}
+pkgver=1.4.4
+pkgrel=2
+pkgdesc="Simple Python library for color and formatting in terminal"
+url="https://gitlab.com/dslackw/colored"
+arch="noarch"
+license="MIT"
+depends="python3"
+makedepends="py3-setuptools"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="https://gitlab.com/dslackw/colored/-/archive/$pkgver/colored-$pkgver.tar.gz"
+builddir="$srcdir/$_pyname-$pkgver"
+options="!check" # No testsuite
+
+build() {
+ python3 setup.py build
+}
+
+package() {
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+sha512sums="
+d49075f97bcc220802a8a64780b4c3910acd420e7e0e82ee71659132e7a294a638b098e4e46ae54f531739f8a43cd35979e521c02bb359205a13d96e37cfe8ed colored-1.4.4.tar.gz
+"
diff --git a/testing/py3-colorthief/APKBUILD b/testing/py3-colorthief/APKBUILD
new file mode 100644
index 00000000000..0e3c0250346
--- /dev/null
+++ b/testing/py3-colorthief/APKBUILD
@@ -0,0 +1,34 @@
+# Contributor: Jakob Meier <comcloudway@ccw.icu>
+# Maintainer: Jakob Meier <comcloudway@ccw.icu>
+pkgname=py3-colorthief
+pkgver=0.2.1
+pkgrel=1
+pkgdesc="Grabs the dominant color or a representative color palette from an image."
+url="http://lokeshdhakar.com/projects/color-thief/"
+arch="noarch"
+license="BSD-3-Clause"
+subpackages="$pkgname-pyc"
+depends="py3-pillow"
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+source="https://github.com/fengsp/color-thief-py/archive/$pkgver/color-thief-py-$pkgver.tar.gz"
+builddir="$srcdir/color-thief-py-$pkgver"
+options="!check"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+406c2eaf5e405ff7878444908161ca47628aef592c8e7c473a606f0eeb87957cf3ba6c146f7ba66a6fcd39cf6cd716ff7544be3832bbe0060b7abe8970b0c2d2 color-thief-py-0.2.1.tar.gz
+"
diff --git a/testing/py3-columnize/APKBUILD b/testing/py3-columnize/APKBUILD
index ed1e49425fd..edc07d8bd63 100644
--- a/testing/py3-columnize/APKBUILD
+++ b/testing/py3-columnize/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Fabian Affolter <fabian@affolter-engineering.ch>
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-columnize
-pkgver=0.3.10
-pkgrel=2
+pkgver=0.3.11
+pkgrel=3
pkgdesc="Python module to align in columns a simple list"
url="https://github.com/rocky/pycolumnize"
arch="noarch"
@@ -12,6 +12,7 @@ provides="py-columnize=$pkgver-r$pkgrel" # for backwards compatibility
depends="python3"
makedepends="py3-setuptools py3-nose"
checkdepends="py3-pytest py3-mock py3-pytest-mock"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/c/columnize/columnize-$pkgver.tar.gz"
builddir="$srcdir"/columnize-$pkgver
@@ -20,11 +21,13 @@ build() {
}
check() {
- python3 setup.py test
+ PYTHONPATH=build/lib pytest
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="684799077601eee5c92ce6f696d56eda79cdf081b880f8d5086b5229876aeeb2c322fdceecfe0bb151e1cb2d1cbb835056b5a53ef7bf63c35ebd0a32aa93c1a6 columnize-0.3.10.tar.gz"
+sha512sums="
+aba1b911c57ac6f237460889d3da6dcfbedac3d42165dd99dc1798f3e2e767a3b895c4266fe82e5b35dfe43af7bff8e778f85bf9c71b10e8b13417e015779432 columnize-0.3.11.tar.gz
+"
diff --git a/testing/py3-compdb/APKBUILD b/testing/py3-compdb/APKBUILD
index ba4d2eaf21d..5ab993f1ee7 100644
--- a/testing/py3-compdb/APKBUILD
+++ b/testing/py3-compdb/APKBUILD
@@ -4,14 +4,14 @@
pkgname=py3-compdb
_pkgname=${pkgname#py3-*}
pkgver=0.2.0
-pkgrel=4
+pkgrel=7
pkgdesc="The compilation database Swiss army knife"
url="https://github.com/Sarcasm/compdb"
arch="noarch"
license="MIT"
depends="python3"
makedepends="py3-setuptools"
-subpackages="$pkgname-doc"
+subpackages="$pkgname-doc $pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/Sarcasm/$_pkgname/archive/v$pkgver.tar.gz"
builddir="$srcdir/"$_pkgname-$pkgver
replaces="py-compdb" # Backwards compat
@@ -25,7 +25,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
install -d "$pkgdir"/usr/share/doc/$_pkgname/
install -t "$pkgdir"/usr/share/doc/$_pkgname/ README.rst
}
diff --git a/testing/py3-confluent-kafka/APKBUILD b/testing/py3-confluent-kafka/APKBUILD
index bd33ee0863a..8250513ed02 100644
--- a/testing/py3-confluent-kafka/APKBUILD
+++ b/testing/py3-confluent-kafka/APKBUILD
@@ -3,7 +3,7 @@
pkgname=py3-confluent-kafka
_pkgname=confluent-kafka-python
pkgver=1.8.2
-pkgrel=0
+pkgrel=4
pkgdesc="Confluent's Apache Kafka Python clien"
url="https://github.com/confluentinc/confluent-kafka-python"
arch="all !x86" # Restricted by py3-fastavro
@@ -12,6 +12,7 @@ depends="py3-avro py3-fastavro py3-jsonschema py3-protobuf py3-requests"
makedepends="py3-setuptools python3-dev librdkafka-dev>=1.0.1"
checkdepends="py3-pytest py3-trivup"
options="!check" # missing deps
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/confluentinc/confluent-kafka-python/archive/v$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
@@ -24,7 +25,7 @@ check() {
PYTHONPATH=. python3 -m pytest -v tests
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
rm "$pkgdir"/usr/LICENSE.txt
}
diff --git a/testing/py3-cookiecutter/APKBUILD b/testing/py3-cookiecutter/APKBUILD
new file mode 100644
index 00000000000..44274f3317a
--- /dev/null
+++ b/testing/py3-cookiecutter/APKBUILD
@@ -0,0 +1,53 @@
+# Contributor: Oleg Titov <oleg.titov@gmail.com>
+# Maintainer: Oleg Titov <oleg.titov@gmail.com>
+pkgname=py3-cookiecutter
+pkgver=2.6.0
+pkgrel=1
+pkgdesc="A command-line utility that creates projects from project templates"
+url="https://github.com/cookiecutter/cookiecutter"
+arch="noarch"
+license="BSD-3-Clause"
+depends="
+ bash
+ py3-arrow
+ py3-binaryornot
+ py3-click
+ py3-freezegun
+ py3-jinja2
+ py3-pyaml
+ py3-requests
+ py3-rich
+ py3-slugify
+ "
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+checkdepends="
+ py3-pytest
+ py3-pytest-cov
+ py3-pytest-mock
+ "
+subpackages="$pkgname-doc $pkgname-pyc"
+source="py3-cookiecutter-$pkgver.tar.gz::https://github.com/cookiecutter/cookiecutter/archive/refs/tags/$pkgver.tar.gz"
+builddir="$srcdir/cookiecutter-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+
+ install -Dm 644 README.md -t "$pkgdir"/usr/share/doc/"$pkgname"
+}
+
+sha512sums="
+619be103bb831cbe9c50c4fa5114d6151a462a29a233f8999305403dda449f90a5900940a2b9d98433a8cdd3dbad421afe6feded42f4bcb6ee83523570ed2c1e py3-cookiecutter-2.6.0.tar.gz
+"
diff --git a/testing/py3-cookies/APKBUILD b/testing/py3-cookies/APKBUILD
deleted file mode 100644
index 58f1ef04004..00000000000
--- a/testing/py3-cookies/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Maintainer:
-pkgname=py3-cookies
-pkgver=2.2.1
-pkgrel=5
-pkgdesc="generate and validate cookies check digits"
-options="!check" # test_encoding_assumptions fails
-url="https://pypi.python.org/pypi/cookies/"
-arch="noarch"
-license="BSD-3-Clause"
-depends="py3-amqp"
-makedepends="py3-setuptools"
-checkdepends="py3-pytest"
-source="https://files.pythonhosted.org/packages/source/c/cookies/cookies-$pkgver.tar.gz"
-builddir="$srcdir/cookies-$pkgver"
-
-replaces="py-cookies" # Backwards compatibility
-provides="py-cookies=$pkgver-r$pkgrel" # Backwards compatibility
-
-build() {
- python3 setup.py build
-}
-
-check() {
- pytest-3
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="76f362a9a1d74b87c90c5b91ad806d872612d31f487e4067a627409316f6099602c9e5a429f85ce20adcb0a7b63dd131b9e1ecc5c0c6444d1569367432a719de cookies-2.2.1.tar.gz"
diff --git a/testing/py3-coreapi/APKBUILD b/testing/py3-coreapi/APKBUILD
index 3acbf214195..d1afe2e66e8 100644
--- a/testing/py3-coreapi/APKBUILD
+++ b/testing/py3-coreapi/APKBUILD
@@ -3,14 +3,14 @@
pkgname=py3-coreapi
_pkgname=python-client
pkgver=2.3.3
-pkgrel=4
+pkgrel=8
pkgdesc="client library for Core API"
url="https://github.com/core-api/python-client"
arch="noarch"
license="BSD-3-Clause"
-depends="py3-coreschema py3-requests py3-itypes py3-uritemplate"
-makedepends="py3-setuptools"
+depends="py3-coreschema py3-requests py3-itypes py3-uritemplate py3-setuptools"
checkdepends="py3-pytest py3-coverage"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/core-api/python-client/archive/$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
@@ -23,7 +23,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="aeae3ace84c0ce61552236b83db28e47492f5ac17a0e216e1a8eeddaf67270b94127f7a40f8a37cc5051abe097555adfd690a7e6c8801524ca77c916bd451ab8 py3-coreapi-2.3.3.tar.gz"
diff --git a/testing/py3-crc16/APKBUILD b/testing/py3-crc16/APKBUILD
index 610bb243d20..e7d65953671 100644
--- a/testing/py3-crc16/APKBUILD
+++ b/testing/py3-crc16/APKBUILD
@@ -3,24 +3,28 @@
pkgname=py3-crc16
_pkgname=crc16
pkgver=0.1.1
-pkgrel=6
+pkgrel=10
pkgdesc="Python library for calculating CRC16"
url="https://github.com/gtrafimenkov/pycrc16"
arch="all"
license="LGPL-3.0-or-later"
-replaces="py-crc16" # for backwards compatibility
+replaces="py-crc16" # for backwards compatibility
provides="py-crc16=$pkgver-r$pkgrel" # for backwards compatibility
depends="python3"
-makedepends="python3-dev py3-setuptools"
+makedepends="python3-dev py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="45d5e8e13b1ac5f885b40516872a9233514f09aa8990915904b214eec2ef6084016f8f0c15bb411aaa1ffc32e8207020916f723e48eee726a7e6989901c9e65d crc16-0.1.1.tar.gz"
diff --git a/testing/py3-cro/APKBUILD b/testing/py3-cro/APKBUILD
deleted file mode 100644
index bfda6a75603..00000000000
--- a/testing/py3-cro/APKBUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-# Contributor: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-# Maintainer: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-pkgname=py3-cro
-_pkgorig=coral-reef-optimization-algorithm
-_commit=25804fc43b735df707821008558e9410dfe4a835
-pkgver=0.0.5.1
-pkgrel=0
-pkgdesc="Implementation of Coral Reef Optimization (CRO) Algorithm"
-url="https://github.com/VictorPelaez/coral-reef-optimization-algorithm"
-arch="noarch !s390x !riscv64" # py3-scikit-learn, py3-matplotlib
-license="MIT"
-depends="python3 py3-matplotlib py3-scipy py3-numpy py3-scikit-learn py3-pandas"
-checkdepends="python3-dev py3-pytest"
-makedepends="py3-setuptools"
-source="$pkgname-$pkgver.tar.gz::https://github.com/VictorPelaez/$_pkgorig/archive/$_commit/$_pkgorig-$_commit.tar.gz"
-builddir="$srcdir/$_pkgorig-$_commit"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 -m pytest
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-1d6fd639fbd7e138535323e5b27a4da66f6dcf46ee1603eaf39eea4fe9d4fcf638df6419fa07941b9500accda1134d6a84e53b3031892c2047c5ef286958de11 py3-cro-0.0.5.1.tar.gz
-"
diff --git a/testing/py3-cssutils/APKBUILD b/testing/py3-cssutils/APKBUILD
index 3198c2d39b8..3f8e0fe3dd7 100644
--- a/testing/py3-cssutils/APKBUILD
+++ b/testing/py3-cssutils/APKBUILD
@@ -2,32 +2,38 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-cssutils
_pkgname=cssutils
-pkgver=2.3.0
-pkgrel=1
+pkgver=2.9.0
+pkgrel=0
pkgdesc="CSS Cascading Style Sheets library for Python"
url="http://cthedot.de/cssutils/"
arch="noarch"
license="LGPL-3.0-or-later"
-depends="python3"
-makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/c/cssutils/cssutils-$pkgver.tar.gz
- remove-setuptools_scm.patch"
+makedepends="py3-gpep517 py3-setuptools py3-setuptools_scm py3-wheel"
+checkdepends="py3-pytest py3-jaraco.test"
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/c/cssutils/cssutils-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-prepare() {
- default_prepare
- sed -i "s/%VERSION%/$pkgver/" setup.cfg
+build() {
+ export SETUPTOOLS_SCM_PRETEND_VERSION=$pkgver
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
-build() {
- python3 setup.py build
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest cssutils/tests
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/cssutils*.whl
+
+ rm -r "$pkgdir"/usr/lib/python3*/site-packages/cssutils/tests
}
sha512sums="
-9919224a61222e860a99ec80e6375a472b89c52af72272c1de7bcd5fd31cf8570a04da7762c62a17a85bef2c41b1c67447583087df4c86c1f8969ad4875a76d2 cssutils-2.3.0.tar.gz
-28ba0759d4cba7ca959b6262bf387b6861e49578351d0b82713ba515c0d7705fa3c134ddad2a2b2c5ca2cc4405c76b0fb370c0145162bb7abf263c0afd8d0651 remove-setuptools_scm.patch
+d13d53b3e4f133afb5b72faba1e41a95cf2b146efb075dd3b328fc424eccd371194e1e14fd9e607b207b5c7d473e64f1e4c63975173d8491fa8036a16dc94d38 cssutils-2.9.0.tar.gz
"
diff --git a/testing/py3-cssutils/remove-setuptools_scm.patch b/testing/py3-cssutils/remove-setuptools_scm.patch
deleted file mode 100644
index 96136895ad2..00000000000
--- a/testing/py3-cssutils/remove-setuptools_scm.patch
+++ /dev/null
@@ -1,18 +0,0 @@
---- a/setup.cfg
-+++ b/setup.cfg
-@@ -2,6 +2,7 @@
- license_files =
- COPYING
- COPYING.LESSER
-+version = %VERSION%
- name = cssutils
- author = Christof Hoeke
- author_email = c@cthedot.de
-@@ -27,7 +28,6 @@
- python_requires = >=3.6
- install_requires =
- importlib_metadata; python_version < "3.8"
--setup_requires = setuptools_scm[toml] >= 3.4.1
-
- [options.packages.find]
- exclude =
diff --git a/testing/py3-cstruct/APKBUILD b/testing/py3-cstruct/APKBUILD
new file mode 100644
index 00000000000..960cf56f598
--- /dev/null
+++ b/testing/py3-cstruct/APKBUILD
@@ -0,0 +1,32 @@
+# Maintainer: Michał Polański <michal@polanski.me>
+pkgname=py3-cstruct
+pkgver=5.3
+pkgrel=1
+pkgdesc="C-style structs for Python"
+url="https://github.com/andreax79/python-cstruct"
+license="MIT"
+arch="noarch !s390x" # test_union_unpack test fails on s390x
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="https://github.com/andreax79/python-cstruct/archive/v$pkgver/py3-cstruct-$pkgver.tar.gz"
+builddir="$srcdir/python-cstruct-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/cstruct-$pkgver-py2.py3-none-any.whl
+}
+
+sha512sums="
+71ad411c6733676c165c9724554a7c1b5f56921ac925020817d812b53b1dfcc9a30d794e8aa8da75bae144e3d659a7426034b5cced4262a699e4626e287b3790 py3-cstruct-5.3.tar.gz
+"
diff --git a/testing/py3-cucumber-tag-expressions/APKBUILD b/testing/py3-cucumber-tag-expressions/APKBUILD
new file mode 100644
index 00000000000..4d71d0a74f6
--- /dev/null
+++ b/testing/py3-cucumber-tag-expressions/APKBUILD
@@ -0,0 +1,43 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-cucumber-tag-expressions
+pkgver=6.0.0
+pkgrel=1
+pkgdesc="Cucumber tag expression parser"
+url="https://github.com/cucumber/tag-expressions"
+arch="noarch"
+license="MIT"
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="
+ py3-pytest
+ py3-pytest-html
+ py3-yaml
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/cucumber/tag-expressions/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/tag-expressions-$pkgver/python"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+9b976cab730420921cd7344c764ae5af0b594099e49b25416632d8e97a9ff551d9e3f042f99d47335807fe2fa3713e32ebfbf14a03b110bedc1b520db2e4fe2f py3-cucumber-tag-expressions-6.0.0.tar.gz
+"
diff --git a/testing/py3-cvxpy/APKBUILD b/testing/py3-cvxpy/APKBUILD
index 9cbdd900108..27405ee8c75 100644
--- a/testing/py3-cvxpy/APKBUILD
+++ b/testing/py3-cvxpy/APKBUILD
@@ -2,14 +2,15 @@
# Maintainer: Anjandev Momi <anjan@momi.ca>
pkgname=py3-cvxpy
pkgver=1.2.1
-pkgrel=0
+pkgrel=4
pkgdesc="a Python-embedded modeling language for convex optimization problems"
url="https://github.com/cvxpy/cvxpy"
arch="all"
license="Apache-2.0"
depends="python3 py3-numpy py3-scipy py3-toolz py3-ecos py3-scs"
-makedepends="py3-setuptools py3-numpy-dev"
+makedepends="py3-setuptools py3-numpy-dev python3-dev"
checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
source="cvxpy-$pkgver.tar.gz::https://github.com/cvxpy/cvxpy/archive/refs/tags/v$pkgver.tar.gz"
builddir="$srcdir/cvxpy-$pkgver"
options="!check"
@@ -28,7 +29,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
diff --git a/testing/py3-cymem/APKBUILD b/testing/py3-cymem/APKBUILD
deleted file mode 100644
index 190d7d2ff09..00000000000
--- a/testing/py3-cymem/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Contributor: Oleg Titov <oleg.titov@gmail.com>
-# Maintainer: Oleg Titov <oleg.titov@gmail.com>
-pkgname=py3-cymem
-pkgver=2.0.5
-pkgrel=2
-pkgdesc="Cython memory pool for RAll-style memory management"
-url="https://github.com/explosion/cymem"
-arch="all"
-license="MIT"
-depends="python3"
-makedepends="python3-dev py3-setuptools cython"
-checkdepends="py3-pytest"
-subpackages="$pkgname-doc"
-source="cymem-$pkgver.tar.gz::https://github.com/explosion/cymem/archive/v$pkgver.tar.gz"
-builddir="$srcdir/cymem-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- PYTHONPATH="$(echo $PWD/build/lib.*)" pytest-3
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-
- install -Dm644 README.md "$pkgdir/usr/share/doc/$pkgname/README.md"
-}
-
-sha512sums="3bb1fa6a8dee6ffb60a244682a3d869b057bbe44b49c03e3ef79703a1076c50f9850f6e06c232ff317afcf213f77c7fb4561004a10056f806d5795b44c626ffe cymem-2.0.5.tar.gz"
diff --git a/testing/py3-daemon/APKBUILD b/testing/py3-daemon/APKBUILD
index 999f289e24a..194bf31f278 100644
--- a/testing/py3-daemon/APKBUILD
+++ b/testing/py3-daemon/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Noel Kuntze <noel.kuntze@thermi.consulting>
# Maintainer: Noel Kuntze <noel.kuntze@thermi.consulting>
pkgname=py3-daemon
-pkgver=2.3.0
-pkgrel=1
+pkgver=2.3.2
+pkgrel=3
pkgdesc="Library to implement a well-behaved Unix daemon process"
url="https://pagure.io/python-daemon"
options="!check" # Has lots of dependencies
@@ -10,6 +10,7 @@ arch="noarch"
license="Apache-2.0 AND GPL-3.0-or-later"
depends="py3-setuptools py3-lockfile"
makedepends="py3-docutils"
+subpackages="$pkgname-pyc"
source="https://pypi.io/packages/source/p/python-daemon/python-daemon-$pkgver.tar.gz"
builddir="$srcdir/python-daemon-$pkgver"
@@ -31,5 +32,5 @@ package() {
}
sha512sums="
-30bb70821aae720d09032c8c666524fa9a1a486314ffff73eb161231a1f2b954914295b4ad41f9c8529bc045fb6d0f89256bc59f8979a4f8a6698e9bd4d7441a python-daemon-2.3.0.tar.gz
+d9f6e6c376a496fae96bd9efed0a56d00a137617a3d1d5ef74802ef176bc813bb1d49bbb9164cdbec03213529f944b32b257bcc64283abfa4a3522ff00826bfd python-daemon-2.3.2.tar.gz
"
diff --git a/testing/py3-daiquiri/APKBUILD b/testing/py3-daiquiri/APKBUILD
index 18f6c130b49..4283fc38cdf 100644
--- a/testing/py3-daiquiri/APKBUILD
+++ b/testing/py3-daiquiri/APKBUILD
@@ -1,30 +1,44 @@
# Contributor: Justin Berthault <justin.berthault@zaclys.net>
-# Maintainer: Justin Berthault <justin.berthault@zaclys.net>
+# Maintainer: Will Sinatra <wpsinatra@gmail.com>
pkgname=py3-daiquiri
-pkgver=3.0.1
+pkgver=3.2.5.1
pkgrel=1
pkgdesc="Library to configure Python logging easily"
-url="https://github.com/jd/daiquiri"
+url="https://github.com/Mergifyio/daiquiri"
arch="noarch"
license="Apache-2.0"
depends="py3-json-logger"
-makedepends="py3-setuptools_scm"
+makedepends="
+ py3-gpep517
+ py3-installer
+ py3-setuptools
+ py3-setuptools_scm
+ py3-wheel
+ "
checkdepends="py3-mock py3-pytest"
-source="https://files.pythonhosted.org/packages/source/d/daiquiri/daiquiri-$pkgver.tar.gz"
-builddir="$srcdir/"daiquiri-$pkgver
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/Mergifyio/daiquiri/archive/refs/tags/$pkgver.tar.gz"
+builddir="$srcdir/daiquiri-$pkgver"
build() {
- python3 setup.py build
+ export SETUPTOOLS_SCM_PRETEND_VERSION="$pkgver"
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- py.test-3
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+ rm -rf "$pkgdir"/usr/lib/python3*/site-packages/daiquiri/tests
}
sha512sums="
-4c786a744a8ed89147bb77c8825d8733ca88bf1d1877058c87257c92a7ae3b343a0820e9d83f4ac8a2a1b9b74d33f72bb5b306703b3bd57b51cf7931041c5d6c daiquiri-3.0.1.tar.gz
+7cb085ed5a27a8e13878413a2ec99e93a5cb984be2e702cf1516276f6418c15c62868ddf1bd8c1e634836f6377abc5ad9f775e268b72e0309f5ed52ad0001f56 py3-daiquiri-3.2.5.1.tar.gz
"
diff --git a/testing/py3-dataclasses-json/APKBUILD b/testing/py3-dataclasses-json/APKBUILD
index 3594c7f4341..59e5b533f7f 100644
--- a/testing/py3-dataclasses-json/APKBUILD
+++ b/testing/py3-dataclasses-json/APKBUILD
@@ -2,30 +2,37 @@
# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=py3-dataclasses-json
_pkgname=dataclasses-json
-pkgver=0.5.7
-pkgrel=0
+pkgver=0.6.4
+pkgrel=1
pkgdesc="Provides a simple API for encoding and decoding dataclasses to and from JSON."
url="https://github.com/lidatong/dataclasses-json"
arch="all"
license="MIT"
depends="python3 py3-marshmallow py3-marshmallow-enum py3-typing_inspect py3-stringcase"
-makedepends="py3-setuptools"
+makedepends="py3-gpep517 py3-poetry-core py3-installer py3-poetry-dynamic-versioning"
checkdepends="py3-pytest py3-hypothesis py3-mypy"
+subpackages="$pkgname-pyc"
source="dataclasses-json-$pkgver.tar.gz::https://github.com/lidatong/dataclasses-json/archive/v$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
build() {
- python3 setup.py build
+ export POETRY_DYNAMIC_VERSIONING_BYPASS="$pkgver"
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- python3 setup.py test
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
-2dad73f55e0f33d1f9557e1ed3d41cf237204631c044027c41d37cd2e968da003f77e80c9a06db651e689413cbfd7f85eec1b70b02acf0a32f8337c4abb75f7b dataclasses-json-0.5.7.tar.gz
+78c94055e55703266de19fe0f712ca4945443f124cc75469e7b68b32cd13d0e1effcc5450f7539d9cde42698b38f4e749a912ef7bf39af4c13981a36b4234746 dataclasses-json-0.6.4.tar.gz
"
diff --git a/testing/py3-dataclasses-serialization/APKBUILD b/testing/py3-dataclasses-serialization/APKBUILD
new file mode 100644
index 00000000000..4d4ee4ac1ae
--- /dev/null
+++ b/testing/py3-dataclasses-serialization/APKBUILD
@@ -0,0 +1,61 @@
+# Maintainer: Guy Godfroy <guy.godfroy@gugod.fr>
+pkgname=py3-dataclasses-serialization
+pkgver=1.3.1
+pkgrel=3
+pkgdesc="Serialize/deserialize Python dataclasses"
+url="https://github.com/madman-bob/python-dataclasses-serialization"
+arch="noarch"
+license="MIT"
+depends="
+ py3-more-properties
+ py3-toolz
+ py3-toposort
+ py3-typing_inspect
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="
+ py3-pytest-forked
+ py3-pytest-xdist
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/madman-bob/python-dataclasses-serialization/archive/refs/tags/$pkgver.tar.gz
+ $pkgname-fix-deserialize.patch::https://github.com/madman-bob/python-dataclasses-serialization/commit/00fbd280034abeff277523a6579f14d10e8427a2.diff
+ root.patch
+ "
+builddir="$srcdir/python-dataclasses-serialization-$pkgver/"
+
+prepare() {
+ default_prepare
+
+ # fixup location
+ mv pypi_upload/setup.py .
+}
+
+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
+ # https://github.com/madman-bob/python-dataclasses-serialization/issues/16
+ .testenv/bin/python3 -m pytest -n auto --forked \
+ -k 'not test_json_serialization_types'
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+5dc3569675749c82aaf1d9a8e2507fa9a2ee2bb14d6cb082fde15a108e4651afbdb0b1d6c8ca60dca839206abfca2c10b0fc9efe4867e521c1522a7a68b8a7c1 py3-dataclasses-serialization-1.3.1.tar.gz
+4febeff6f08f12267fdceb1243449099c16002c3731cdde80a841a3d63fcb27333ae871fd8d05f45ee8881eccc77b69e8bc6b737ccb49d3c55cb008b49e32762 py3-dataclasses-serialization-fix-deserialize.patch
+78c1714b7373586fcf67adc5dd3ec39b42f9f4cd03cad705d568cbc45de10f506e04a76d112b5cc6ea9b3e0e110f32dd4b9163a3eddeecc1fc94237887b4ed45 root.patch
+"
diff --git a/testing/py3-dataclasses-serialization/root.patch b/testing/py3-dataclasses-serialization/root.patch
new file mode 100644
index 00000000000..19200dbd54e
--- /dev/null
+++ b/testing/py3-dataclasses-serialization/root.patch
@@ -0,0 +1,15 @@
+diff --git a/pypi_upload/setup.py b/pypi_upload/setup.py
+index cd56011..427bcc9 100644
+--- a/pypi_upload/setup.py
++++ b/pypi_upload/setup.py
+@@ -6,8 +6,8 @@ from pathlib import Path
+ from setuptools import find_packages, setup
+ from setuptools.command.install import install
+
+-project_root = Path(__file__).parents[1]
+-
++import pathlib
++project_root = pathlib.Path().resolve()
+
+ class VerifyCommand(install):
+ """Custom command to verify module integrity"""
diff --git a/testing/py3-dateparser/APKBUILD b/testing/py3-dateparser/APKBUILD
new file mode 100644
index 00000000000..6a342fb24f3
--- /dev/null
+++ b/testing/py3-dateparser/APKBUILD
@@ -0,0 +1,68 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=py3-dateparser
+_pyname=${pkgname#py3-}
+pkgver=1.2.0
+pkgrel=1
+pkgdesc="Python parser for human readable dates"
+url="https://github.com/scrapinghub/dateparser"
+arch="noarch"
+license="BSD-3-Clause"
+depends="
+ python3
+ py3-dateutil
+ py3-regex
+ py3-tz
+ py3-tzlocal
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="
+ py3-fasttext
+ py3-gitpython
+ py3-langdetect
+ py3-parameterized
+ py3-parsel
+ py3-pytest
+ py3-requests
+ py3-ruamel.yaml
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/scrapinghub/dateparser/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/$_pyname-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ _test_filter='not test_parsing_date_should_fail_using_datetime_strptime_if_locale_is_non_english'
+ # test_custom_language_detect_fast_text fails due to wrong file format
+ case "$CARCH" in
+ s390x)
+ _test_filter="$_test_filter and not test_custom_language_detect_fast_text"
+ ;;
+ esac
+
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+
+ # test_hijri.py: needs hijri_converter, test_jalali.py: convertdate
+ .testenv/bin/python3 -m pytest tests \
+ -k "$_test_filter" \
+ --ignore tests/test_hijri.py \
+ --ignore tests/test_jalali.py
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+2d37115f25c2076c4521b77b89ef1cff3cd0a5233c45beb00d78a5c9b1a384dcd993ff7cdd1f77db95a53ce566cf7d709d46ffa2e63eb468ac954fda178a5b6e py3-dateparser-1.2.0.tar.gz
+"
diff --git a/testing/py3-daterangestr/APKBUILD b/testing/py3-daterangestr/APKBUILD
index e3dce455837..7594fbaa423 100644
--- a/testing/py3-daterangestr/APKBUILD
+++ b/testing/py3-daterangestr/APKBUILD
@@ -3,24 +3,28 @@
pkgname=py3-daterangestr
_pkgname=daterangestr
pkgver=0.0.3
-pkgrel=4
+pkgrel=8
pkgdesc="Utility to convert strings to start and end datetime tuples"
url="https://github.com/marians/py-daterangestr"
arch="noarch"
license="MIT"
-depends="python3"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-daterangestr" # for backwards compatibility
+replaces="py-daterangestr" # for backwards compatibility
provides="py-daterangestr=$pkgver-r$pkgrel" # for backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="eeba3792cb7e9ad4e308821866d4f555829267a7790d6bedc8ad95b2dbcf6235f4181947a63d55d052dcdfac1f1c0e550e8f4e41ec5a851d75b47040246c05a6 daterangestr-0.0.3.tar.gz"
diff --git a/testing/py3-ddt/APKBUILD b/testing/py3-ddt/APKBUILD
deleted file mode 100644
index e679f041f81..00000000000
--- a/testing/py3-ddt/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Maintainer: prspkt <prspkt@protonmail.com>
-# Contributor: prspkt <prspkt@protonmail.com>
-pkgname=py3-ddt
-pkgver=1.4.4
-pkgrel=1
-pkgdesc="Python library to multiply test cases"
-url="https://github.com/txels/ddt"
-arch="noarch"
-license="MIT"
-depends="python3"
-makedepends="py3-setuptools"
-checkdepends="
- py3-mock
- py3-nose
- py3-pytest
- py3-yaml
- "
-source="https://files.pythonhosted.org/packages/source/d/ddt/ddt-$pkgver.tar.gz"
-builddir="$srcdir/ddt-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 setup.py test
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-506f5d9f1c11a57dc1a93a16f026fb0735654400259e297a96b4163348c3ef1ce66b6f82a46effe507cc66e07819415ffee028e3c96baf5fbbd9d26b14b96abc ddt-1.4.4.tar.gz
-"
diff --git a/testing/py3-deepdiff/APKBUILD b/testing/py3-deepdiff/APKBUILD
deleted file mode 100644
index 6e566ba6c44..00000000000
--- a/testing/py3-deepdiff/APKBUILD
+++ /dev/null
@@ -1,27 +0,0 @@
-# Contributor: Alex McGrath <amk@amk.ie>
-# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
-pkgname=py3-deepdiff
-_pkgname=deepdiff
-pkgver=5.8.2
-pkgrel=0
-pkgdesc="Deep Difference and Search of any Python object/data"
-url="https://github.com/seperman/deepdiff"
-arch="noarch"
-license="MIT"
-depends="python3 py3-ordered-set"
-makedepends="py3-setuptools"
-options="!check" # tests fail
-source="https://github.com/seperman/deepdiff/archive/refs/tags/v$pkgver/deepdiff-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgname-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-20b812708a5d900cec9ad16c661b0b5ada755e607b258f73a4f9757d06d9e9ea2fa3988a54a5cc071ae2de6585e48fefd1cdd5896edca0100a4a81ca13d5452c deepdiff-5.8.2.tar.gz
-"
diff --git a/testing/py3-dep-logic/APKBUILD b/testing/py3-dep-logic/APKBUILD
new file mode 100644
index 00000000000..5e283fd71bd
--- /dev/null
+++ b/testing/py3-dep-logic/APKBUILD
@@ -0,0 +1,37 @@
+# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=py3-dep-logic
+pkgver=0.2.0
+pkgrel=1
+pkgdesc="Python dependency specifications supporting logical operations"
+url="https://github.com/pdm-project/dep-logic"
+arch="noarch"
+license="Apache-2.0"
+depends="py3-packaging"
+makedepends="py3-gpep517 py3-pdm-backend py3-wheel"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="https://github.com/pdm-project/dep-logic/archive/$pkgver/py3-dep-logic-$pkgver.tar.gz"
+builddir="$srcdir/dep-logic-$pkgver"
+
+build() {
+ export PDM_BUILD_SCM_VERSION=$pkgver
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+a58cd7b6a08de8e56fcb03aad13ac4ce864a650066de802268b1bb6f1c97835d3197feed982666cbc6113104a6b5aa0782adc8bd6fed9ed8723eb040206442f9 py3-dep-logic-0.2.0.tar.gz
+"
diff --git a/testing/py3-dexml/APKBUILD b/testing/py3-dexml/APKBUILD
index 784389f2d44..127f8f7fca7 100644
--- a/testing/py3-dexml/APKBUILD
+++ b/testing/py3-dexml/APKBUILD
@@ -3,26 +3,33 @@
pkgname=py3-dexml
_pkgname=dexml
pkgver=0.5.1
-pkgrel=5
+pkgrel=9
pkgdesc="A simple Object-XML mapper for Python"
url="https://pypi.org/project/dexml"
arch="noarch"
license="MIT"
-replaces="py-dexml" # for backwards compatibility
+replaces="py-dexml" # for backwards compatibility
provides="py-dexml=$pkgver-r$pkgrel" # for backwards compatibility
depends="python3"
-makedepends="python3-dev py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
+makedepends="python3-dev py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz
+ py3.patch
+ "
builddir="$srcdir"/$_pkgname-$pkgver
build() {
- cd "$builddir"
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- cd "$builddir"
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
-sha512sums="b8ac2b9f875ac7cf699eb9ee17adb8678ed8d4a796130bbb60f05431207adb68f490b7a7a41600acbc16a3cc08d55f22d91a13e53fe3d835a322709ee3446c9f dexml-0.5.1.tar.gz"
+sha512sums="
+b8ac2b9f875ac7cf699eb9ee17adb8678ed8d4a796130bbb60f05431207adb68f490b7a7a41600acbc16a3cc08d55f22d91a13e53fe3d835a322709ee3446c9f dexml-0.5.1.tar.gz
+de2ea4ce179d64c0bb3bf66a40739b4f1b01504b43e74666f60882d86da83d22edbe4606bd24c9605947ac677cc69169e5270df8574b8c9737830959bb16300f py3.patch
+"
diff --git a/testing/py3-dexml/py3.patch b/testing/py3-dexml/py3.patch
new file mode 100644
index 00000000000..bc7394c01d0
--- /dev/null
+++ b/testing/py3-dexml/py3.patch
@@ -0,0 +1,13 @@
+diff --git a/setup.py b/setup.py
+index 285a258..2521bb6 100644
+--- a/setup.py
++++ b/setup.py
+@@ -20,8 +20,6 @@ except ImportError:
+ from distutils.core import setup
+ else:
+ setup_kwds["test_suite"] = "dexml.test"
+- if sys.version_info > (3,):
+- setup_kwds["use_2to3"] = True
+
+
+ # Extract the docstring and version declaration from the module.
diff --git a/testing/py3-dict2xml/APKBUILD b/testing/py3-dict2xml/APKBUILD
index 21d70d5d8ec..df7e66e5fe5 100644
--- a/testing/py3-dict2xml/APKBUILD
+++ b/testing/py3-dict2xml/APKBUILD
@@ -1,27 +1,34 @@
-# Maintainer: Drew DeVault <sir@cmpwn.com>
+# Maintainer: Will Sinatra <wpsinatra@gmail.com>
pkgname=py3-dict2xml
_pyname=dict2xml
-pkgver=1.7.1
-pkgrel=0
+pkgver=1.7.5
+pkgrel=2
pkgdesc="Small utility to convert a python dictionary into an XML string"
-options="!check" # Requires unpackaged 'NoseOfYeti'
url="https://github.com/delfick/python-dict2xml"
arch="noarch"
license="MIT"
depends="python3"
-makedepends="py3-setuptools"
-_pypiprefix="${_pyname%${_pyname#?}}"
-source="https://files.pythonhosted.org/packages/source/$_pypiprefix/$_pyname/$_pyname-$pkgver.tar.gz"
+makedepends="py3-hatchling py3-gpep517 py3-installer"
+checkdepends="py3-pytest py3-nose-of-yeti"
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/d/dict2xml/dict2xml-$pkgver.tar.gz"
builddir="$srcdir/$_pyname-$pkgver"
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ pytest
}
package() {
- python3 setup.py install --root="$pkgdir" --optimize=1
+ python3 -m installer -d "$pkgdir" \
+ .dist/dict2xml*.whl
}
sha512sums="
-37dfbd2b2f1732dfd09bab910f6a8dbe5a644545aa9d4fa82d5dadba3754a04aa39e25de777ec1a2174729ae214eb4b27b5d4c1a2b5e760abd7d7b76308b1a25 dict2xml-1.7.1.tar.gz
+88a77fcdc2ec320ba1668b27da4aacfcfc817090aebabc01fce76bff51b316166a0cc1f053884e8012a28e7118449f901465703869245dc662f29cee9665157e dict2xml-1.7.5.tar.gz
"
diff --git a/testing/py3-dill/APKBUILD b/testing/py3-dill/APKBUILD
deleted file mode 100644
index ca6ceae6891..00000000000
--- a/testing/py3-dill/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Maintainer: Drew DeVault <sir@cmpwn.com>
-pkgname=py3-dill
-_pyname=dill
-pkgver=0.3.4
-pkgrel=1
-pkgdesc="Python serializer supporting a broader range of types than pickle"
-url="https://pypi.org/project/dill/"
-arch="noarch !s390x" # broken on big-endian
-license="BSD-3-Clause"
-makedepends="python3 py3-setuptools"
-_pypiprefix="${_pyname%${_pyname#?}}"
-source="https://files.pythonhosted.org/packages/source/$_pypiprefix/$_pyname/$_pyname-$pkgver.zip"
-builddir=$srcdir/$_pyname-$pkgver
-
-build() {
- python3 setup.py build
-}
-
-check() {
- export PYTHONPATH="$(pwd):$PYTHONPATH"
- for t in tests/test*.py
- do
- echo "$t"
- python3 "$t"
- done
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
- rm -rf "$pkgdir"/usr/lib/python3*/site-packages/dill/tests
-}
-
-sha512sums="
-25f1683d725e5ed2d6ce61fcd82d679c0504ef506ad7cb501be6dfce3b80f1fdacbb39991eea8899259f9803248c75cb1bc3bd4b28a43be5902dd724946c68f6 dill-0.3.4.zip
-"
diff --git a/testing/py3-discid/APKBUILD b/testing/py3-discid/APKBUILD
index 0e0ca146750..90cd8f86ee2 100644
--- a/testing/py3-discid/APKBUILD
+++ b/testing/py3-discid/APKBUILD
@@ -3,13 +3,14 @@
pkgname=py3-discid
_pyname=discid
pkgver=1.2.0
-pkgrel=2
+pkgrel=5
pkgdesc="python bindings for libdiscid"
url="https://python-discid.readthedocs.io/en/latest/"
arch="noarch"
license="LGPL-3.0-or-later"
depends="python3 libdiscid"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pyname%${_pyname#?}}/$_pyname/$_pyname-$pkgver.tar.gz"
builddir="$srcdir/$_pyname-$pkgver"
@@ -22,6 +23,6 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="d004b7e4b5416310c8fb21bb9e686b5e5f5651366fb78785e299dcd17aaa99e7c2e115cc1c5175d8fbf853d3f7b8813555be32bf387d7ce82271b5e57bdff0dd discid-1.2.0.tar.gz"
diff --git a/testing/py3-discogs-client/APKBUILD b/testing/py3-discogs-client/APKBUILD
index 1c91243a9f2..488d3d40218 100644
--- a/testing/py3-discogs-client/APKBUILD
+++ b/testing/py3-discogs-client/APKBUILD
@@ -1,15 +1,16 @@
# Contributor: Carlo Landmeter <clandmeter@alpinelinux.org>
-# Maintainer: Justin Berthault <justin.berthault@zaclys.net>
+# Maintainer: Will Sinatra <wpsinatra@gmail.com>
pkgname=py3-discogs-client
_pyname=python3-discogs-client
-pkgver=2.3.12
-pkgrel=1
+pkgver=2.7
+pkgrel=2
pkgdesc="Joalla Python Discogs API Client"
url="https://github.com/joalla/discogs_client"
arch="noarch"
license="BSD-2-Clause"
-depends="py3-oauthlib py3-requests py3-six"
+depends="py3-oauthlib py3-requests python3 py3-dateutil"
makedepends="py3-dateutil py3-setuptools py3-yaml"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/p/python3-discogs-client/python3-discogs-client-$pkgver.tar.gz"
builddir="$srcdir/$_pyname-$pkgver"
@@ -25,9 +26,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
-c14ea953e92f2d77909a7af8f840ee5a1df2416e16f6de0b7f0e988f6ef56a07fc04c75b247508dc0d1b5f7033faf6cce80196b610d1169a23350d3e816e2925 python3-discogs-client-2.3.12.tar.gz
+7bb43429d6ceb3bbf892b6a65d4d93f0a9ec1bb3535b62169d7e1e4ff0e5032963b2ad5753e381745559efd21ed9e875bfbe3f5260e26f7df5f4a344bedded4a python3-discogs-client-2.7.tar.gz
"
diff --git a/testing/py3-diskcache/APKBUILD b/testing/py3-diskcache/APKBUILD
index be1d19b11a0..489341364a3 100644
--- a/testing/py3-diskcache/APKBUILD
+++ b/testing/py3-diskcache/APKBUILD
@@ -1,16 +1,17 @@
# Contributor:
# Maintainer:
pkgname=py3-diskcache
-pkgver=5.3.0
+pkgver=5.6.3
pkgrel=1
pkgdesc="disk caching implementation"
options="!check" # test_incr_update_keyerror fails
-url="http://www.grantjenks.com/docs/diskcache/"
+url="https://grantjenks.com/docs/diskcache/"
arch="noarch"
license="MIT"
depends="python3"
makedepends="py3-setuptools"
checkdepends="py3-pytest py3-pytest-xdist py3-mock py3-django"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/grantjenks/python-diskcache/archive/v$pkgver.tar.gz"
builddir="$srcdir"/python-diskcache-$pkgver
@@ -26,9 +27,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
-106c8eb8320153e42e076927d51fa75d30b92156e17a75756e0392028cb6b5054af9af66b93aa69b7a7105012f0b92fe942ee447a75e53e005b56eb0b067dc38 py3-diskcache-5.3.0.tar.gz
+476d677d88212aa3f9a6e8d12c3e7076cc6a06973d703ed0b2c550b4b4e916b24fb7d8f33c7174854015886fab26e2707b134328d2bc3e144aef5510e7bc0f7c py3-diskcache-5.6.3.tar.gz
"
diff --git a/testing/py3-distorm3/APKBUILD b/testing/py3-distorm3/APKBUILD
index 47cce912916..8712395a4e5 100644
--- a/testing/py3-distorm3/APKBUILD
+++ b/testing/py3-distorm3/APKBUILD
@@ -3,13 +3,14 @@
pkgname=py3-distorm3
_pkgname=distorm3
pkgver=3.5.2
-pkgrel=1
+pkgrel=5
pkgdesc="Disassembler Library For x86/AMD64"
-url="https://pypi.python.org/pypi/distorm3"
+url="https://pypi.org/project/distorm3"
arch="all"
license="BSD-3-Clause"
depends="python3"
makedepends="py3-setuptools python3-dev"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/d/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
diff --git a/testing/py3-django-auth-ldap/APKBUILD b/testing/py3-django-auth-ldap/APKBUILD
new file mode 100644
index 00000000000..f3c10d9e0d5
--- /dev/null
+++ b/testing/py3-django-auth-ldap/APKBUILD
@@ -0,0 +1,49 @@
+# Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
+# Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>
+pkgname=py3-django-auth-ldap
+#_pkgreal is used by apkbuild-pypi to find modules at PyPI
+_pkgreal=django-auth-ldap
+pkgver=4.8.0
+pkgrel=1
+pkgdesc="Django LDAP authentication backend"
+url="https://pypi.python.org/project/django-auth-ldap"
+# s390x | riscv64: test failure
+arch="noarch !s390x !riscv64"
+license="BSD"
+depends="py3-django py3-ldap"
+checkdepends="
+ py3-pytest
+ py3-pytest-django
+ py3-pytest-black
+ py3-isort
+ py3-flake8
+ openldap
+ openldap-back-mdb
+ openldap-clients
+ openldap-overlay-syncprov
+ "
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+source="$pkgname-$pkgver.tar.gz::https://github.com/django-auth-ldap/django-auth-ldap/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 -Wa -b -m django test --settings tests.settings
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+559d6c0a556ccab2a0440866db9e1260b236e0bd4de92d07082660118b99886e7d362824cf0453de1f1d87ce1d5b5ab23d5181b8c970086d3a100ae32a29c482 py3-django-auth-ldap-4.8.0.tar.gz
+"
diff --git a/testing/py3-django-compress-staticfiles/APKBUILD b/testing/py3-django-compress-staticfiles/APKBUILD
index 3c622d06ccc..92e9c84d5d0 100644
--- a/testing/py3-django-compress-staticfiles/APKBUILD
+++ b/testing/py3-django-compress-staticfiles/APKBUILD
@@ -2,8 +2,8 @@
# Maintainer: Alex Denes <caskd@redxen.eu>
_pkgname=django-compress-staticfiles
pkgname="py3-$_pkgname"
-pkgver=1.0.1b0
-pkgrel=0
+pkgver=1.0.1_beta0
+pkgrel=4
pkgdesc="Django static files storage backend inheriting from ManifestFilesMixin and StaticFilesStorage"
url="https://github.com/armandtvz/django-compress-staticfiles"
arch="noarch"
@@ -15,8 +15,9 @@ depends="
"
makedepends="py3-setuptools_scm"
checkdepends="py3-django-utils-six"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgname-$pkgver"
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-${pkgver//_beta/b}.tar.gz"
+builddir="$srcdir/$_pkgname-${pkgver//_beta/b}"
options="!check" # requires py3-django-utils-six
build() {
@@ -29,6 +30,8 @@ check() {
package() {
python3 setup.py install --root "$pkgdir"
+
+ rm -rf "$pkgdir"/usr/lib/python3*/site-packages/tests
}
sha512sums="
diff --git a/testing/py3-django-debug-toolbar/APKBUILD b/testing/py3-django-debug-toolbar/APKBUILD
index bb9cddbf8df..b0974d344e1 100644
--- a/testing/py3-django-debug-toolbar/APKBUILD
+++ b/testing/py3-django-debug-toolbar/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Leonardo Arena <rnalrd@alpinelinux.org>
-# Maintainer:
+# Maintainer: Will Sinatra <wpsinatra@gmail.com>
pkgname=py3-django-debug-toolbar
_pkgname=django-debug-toolbar
-pkgver=3.2.1
+pkgver=4.3
pkgrel=1
pkgdesc="Configurable set of panels that display various debug information about the current request/response"
options="!check" # Requires unpackaged Selenium python3 module
@@ -10,8 +10,12 @@ url="https://github.com/jazzband/django-debug-toolbar"
arch="noarch"
license="BSD-3-Clause"
depends="py3-django py3-sqlparse"
-makedepends="py3-setuptools"
+makedepends="
+ py3-gpep517
+ py3-hatchling
+ "
# options="!check" #no testsuite
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/jazzband/$_pkgname/archive/$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -19,13 +23,16 @@ replaces="py-django-debug-toolbar" # Backwards compatibility
provides="py-django-debug-toolbar=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py --quiet build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py --quiet install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
-d28e13cc2e3bbb27e9c728037229adac444180e3831b88c9ac1aa0e139bd1e85f9190c7a324afe3292bde4ad0c919bd17fbde4998be266f81314b9b22c4a28e6 py3-django-debug-toolbar-3.2.1.tar.gz
+caa8563d38e8c96305828b7a07006ce2ee0afae099d70d75d332f2196fc3ffcf7f3848440ea22c00f2b918029477672a172e30714f6f73a630404175aef3b925 py3-django-debug-toolbar-4.3.tar.gz
"
diff --git a/testing/py3-django-js-asset/APKBUILD b/testing/py3-django-js-asset/APKBUILD
index 0aa257a6103..bf98b4809ef 100644
--- a/testing/py3-django-js-asset/APKBUILD
+++ b/testing/py3-django-js-asset/APKBUILD
@@ -1,35 +1,45 @@
# Contributor: Leonardo Arena <rnalrd@alpinelinux.org>
-# Maintainer:
+# Maintainer: Will Sinatra <wpsinatra@gmail.com>
pkgname=py3-django-js-asset
_pkgname=django-js-asset
-pkgver=1.2.2
-pkgrel=3
+pkgver=2.2
+pkgrel=2
pkgdesc="script tag with additional attributes for django.forms.Media"
url="https://github.com/matthiask/django-js-asset"
arch="noarch"
license="BSD-3-Clause"
depends="py3-django"
-makedepends="py3-setuptools"
-checkdepends="py3-coverage"
-source="$pkgname-$pkgver.tar.gz::https://github.com/matthiask/$_pkgname/archive/$pkgver.tar.gz
- Adapt-the-test-suite-to-changes-in-Django.patch
+makedepends="
+ py3-gpep517
+ py3-hatchling
+ py3-wheel
"
+checkdepends="py3-pytest py3-coverage"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/matthiask/$_pkgname/archive/$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
+options="!check" # need more setup
replaces="py-django-js-asset" # Backwards compatibility
provides="py-django-js-asset=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py --quiet build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- python3 tests/manage.py test -v 2 testapp
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
}
package() {
- python3 setup.py --quiet install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
-sha512sums="ad2c51399da9b5d75305c0fa257cc75496df3f6704a827a0d297a4d762712039c3ebd921afbe6e10672626f1badd8637728292dd700ba41c4192c95ec73095a9 py3-django-js-asset-1.2.2.tar.gz
-2319e16762981fa0b5e6fa09be470ef3d2f7e5b39e383945574859b6ca1e216a5b3f45d9624f595717d9e501b79e9be0985cafc10328f84d1fed7a590de7a893 Adapt-the-test-suite-to-changes-in-Django.patch"
+sha512sums="
+d35f8f1b83726826e9092e7d33dc22d5b53df9f6c1a6a141d7928dfa9eaada3d13a5879b2ee65825b73a2b048e4d21528d462c6449a87d4c0b599501811a40fe py3-django-js-asset-2.2.tar.gz
+"
diff --git a/testing/py3-django-js-asset/Adapt-the-test-suite-to-changes-in-Django.patch b/testing/py3-django-js-asset/Adapt-the-test-suite-to-changes-in-Django.patch
deleted file mode 100644
index 7306575d87a..00000000000
--- a/testing/py3-django-js-asset/Adapt-the-test-suite-to-changes-in-Django.patch
+++ /dev/null
@@ -1,88 +0,0 @@
-From 232536ba50a2e1a0cffc6046dbcdfdec22cb0d9e Mon Sep 17 00:00:00 2001
-From: Matthias Kestenholz <mk@feinheit.ch>
-Date: Fri, 15 May 2020 08:51:33 +0200
-Subject: [PATCH] Adapt the test suite to changes in Django
-
----
- tests/testapp/test_js_asset.py | 16 ++++++++++++----
- tox.ini | 14 ++++++++++++++
- 2 files changed, 26 insertions(+), 4 deletions(-)
-
-diff --git a/tests/testapp/test_js_asset.py b/tests/testapp/test_js_asset.py
-index 902e2a1..3762da6 100644
---- a/tests/testapp/test_js_asset.py
-+++ b/tests/testapp/test_js_asset.py
-@@ -1,11 +1,15 @@
- from __future__ import unicode_literals
-
-+import django
- from django.forms import Media
- from django.test import TestCase
-
- from js_asset.js import JS
-
-
-+JS_TYPE = ' type="text/javascript"' if django.VERSION < (3, 1) else ""
-+
-+
- class AssetTest(TestCase):
- def test_asset(self):
- media = Media(
-@@ -25,15 +29,17 @@ def test_asset(self):
- html,
- )
- self.assertInHTML(
-- '<script type="text/javascript" src="/static/app/test.js"></script>', # noqa
-+ '<script{} src="/static/app/test.js"></script>'.format(JS_TYPE), # noqa
- html,
- )
- self.assertInHTML(
-- '<script type="text/javascript" src="/static/app/asset.js" data-the-answer="42" id="asset-script"></script>', # noqa
-+ '<script{} src="/static/app/asset.js" data-the-answer="42" id="asset-script"></script>'.format( # noqa
-+ JS_TYPE
-+ ),
- html,
- )
- self.assertInHTML(
-- '<script type="text/javascript" src="/static/app/asset-without.js"></script>', # noqa
-+ '<script{} src="/static/app/asset-without.js"></script>'.format(JS_TYPE),
- html,
- )
-
-@@ -42,7 +48,9 @@ def test_absolute(self):
- html = "%s" % media
-
- self.assertInHTML(
-- '<script type="text/javascript" src="https://cdn.example.org/script.js"></script>', # noqa
-+ '<script{} src="https://cdn.example.org/script.js"></script>'.format(
-+ JS_TYPE
-+ ),
- html,
- )
-
-diff --git a/tox.ini b/tox.ini
-index 3ddafc6..5ee9d33 100644
---- a/tox.ini
-+++ b/tox.ini
-@@ -1,3 +1,6 @@
-+[tox]
-+envlist = style,tests,tests-old,tests-master
-+
- [testenv]
- basepython = python3
-
-@@ -37,3 +40,14 @@ changedir = {toxinidir}
- skip_install = true
- commands =
- python tests/manage.py test -v 2 testapp
-+
-+
-+[testenv:tests-master]
-+deps =
-+ https://github.com/django/django/archive/master.zip
-+ coverage
-+changedir = {toxinidir}
-+skip_install = true
-+commands =
-+ coverage run tests/manage.py test -v 2 testapp
-+ coverage html
diff --git a/testing/py3-django-mptt/APKBUILD b/testing/py3-django-mptt/APKBUILD
index c28a7c954d9..ed15b7a845c 100644
--- a/testing/py3-django-mptt/APKBUILD
+++ b/testing/py3-django-mptt/APKBUILD
@@ -1,16 +1,17 @@
# Contributor: Leonardo Arena <rnalrd@alpinelinux.org>
-# Maintainer:
+# Maintainer: Will Sinatra <wpsinatra@gmail.com>
pkgname=py3-django-mptt
_pkgname=django-mptt
-pkgver=0.12.0
-pkgrel=1
+pkgver=0.16
+pkgrel=2
pkgdesc="Utilities for implementing a modified pre-order traversal tree in django"
options="!check" # Requires running django instance
url="https://github.com/django-mptt/django-mptt"
arch="noarch"
license="MIT"
depends="py3-django py3-django-js-asset"
-makedepends="py3-setuptools"
+makedepends="py3-hatchling py3-gpep517"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/django-mptt/$_pkgname/archive/$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -18,13 +19,16 @@ replaces="py-django-mptt" # Backwards compatibiity
provides="py-django-mptt=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py --quiet build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py --quiet install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
-fae2991aaa0b300d725242c94401818a5d0620a1180b86f0fc503c5943ec4012b129dfa25999f1393d678fc2588fd03152a361cb6e0a271c82f8c45411e9a09e py3-django-mptt-0.12.0.tar.gz
+98f40f2b51e8d48f6b872d6775968282d135ca60d13e9a36a811ef54506f957fa5abe3098e1f68476709d80966558db69809f3d2ff5f5a4a1a69c43931e4c141 py3-django-mptt-0.16.tar.gz
"
diff --git a/testing/py3-django-suit/APKBUILD b/testing/py3-django-suit/APKBUILD
index 3ea27365549..74ea59a82a9 100644
--- a/testing/py3-django-suit/APKBUILD
+++ b/testing/py3-django-suit/APKBUILD
@@ -3,7 +3,7 @@
pkgname=py3-django-suit
_realname=django-suit
pkgver=0.2.28
-pkgrel=4
+pkgrel=7
pkgdesc="Modern theme for Django admin interface"
options="!check" # No testsuite
url="https://djangosuit.com/"
@@ -11,6 +11,7 @@ arch="noarch"
license="CC-BY-NC-3.0"
depends="python3"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/d/$_realname/$_realname-$pkgver.tar.gz"
builddir="$srcdir"/$_realname-$pkgver
@@ -22,7 +23,7 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="5ed7c6fdc0c3a14c4b525338b9f0c6e2bc296bd06f20cc5b262dcef23711212a5d84d9f3bee610895ca31ac7b547c793177871023a254f0ccbb8ec3bca22b933 django-suit-0.2.28.tar.gz"
diff --git a/testing/py3-django-taggit-serializer/APKBUILD b/testing/py3-django-taggit-serializer/APKBUILD
index 4c151d29289..81ba6cc5a43 100644
--- a/testing/py3-django-taggit-serializer/APKBUILD
+++ b/testing/py3-django-taggit-serializer/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer:
pkgname=py3-django-taggit-serializer
pkgver=0.1.7
-pkgrel=5
+pkgrel=8
pkgdesc="The Django Taggit Serializer Created for the Django REST Framework"
options="!check" # Missing py-django-nose
url="https://github.com/glemmaPaul/django-taggit-serializer"
@@ -11,6 +11,7 @@ license="BSD-3-Clause"
depends="py3-django"
makedepends="py3-setuptools"
checkdepends="py3-django-rest-framework py3-django-taggit py3-nose py3-django-nose"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/glemmaPaul/django-taggit-serializer/archive/$pkgver.tar.gz"
builddir="$srcdir"/django-taggit-serializer-$pkgver
@@ -23,8 +24,7 @@ check() {
}
package() {
- python3 setup.py --quiet install --prefix=/usr --root="$pkgdir"
+ python3 setup.py --quiet install --skip-build --root="$pkgdir"
}
-
sha512sums="e4f2dcabac8e4afa9b6969bbb8718e2e5047ec97dab80f800ad73c3f59da438b8e9becbcce1af0c986a4a903a9846ca85db58d2135658d7103caee69431b59a5 py3-django-taggit-serializer-0.1.7.tar.gz"
diff --git a/testing/py3-django-taggit/APKBUILD b/testing/py3-django-taggit/APKBUILD
deleted file mode 100644
index 8f38046b978..00000000000
--- a/testing/py3-django-taggit/APKBUILD
+++ /dev/null
@@ -1,30 +0,0 @@
-# Contributor: Leonardo Arena <rnalrd@alpinelinux.org>
-# Maintainer: Justin Berthault <justin.berthault@zaclys.net>
-pkgname=py3-django-taggit
-pkgver=1.5.1
-pkgrel=1
-pkgdesc="Simple tagging for django"
-options="!check" # Testsuite for coverage and flake8
-url="https://github.com/alex/django-taggit"
-arch="noarch"
-license="BSD-3-Clause"
-depends="py3-django"
-makedepends="py3-setuptools"
-source="$pkgname-$pkgver.tar.gz::https://github.com/alex/django-taggit/archive/$pkgver.tar.gz"
-builddir="$srcdir"/django-taggit-$pkgver
-
-replaces="py-djanog-taggit" # Backwards compatibility
-provides="py-djanog-taggit=$pkgver-r$pkgrel" # Backwards compatibility
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py --quiet install --prefix=/usr --root="$pkgdir"
-}
-
-
-sha512sums="
-7ebddc4a08629b4382a0f3d73446375860e38f9b42921d4f86668d96c34dd589a5c06f75e5d1c31999a3430b3f6d99339b766eb2cee2930f2222d8cb2871ee1d py3-django-taggit-1.5.1.tar.gz
-"
diff --git a/testing/py3-django-timezone-field/APKBUILD b/testing/py3-django-timezone-field/APKBUILD
index 48b2e36e868..3b29ace2a2b 100644
--- a/testing/py3-django-timezone-field/APKBUILD
+++ b/testing/py3-django-timezone-field/APKBUILD
@@ -1,35 +1,50 @@
# Contributor: Leonardo Arena <rnalrd@alpinelinux.org>
-# Maintainer:
+# Maintainer: Will Sinatra <wpsinatra@gmail.com>
pkgname=py3-django-timezone-field
_pkgname=django-timezone-field
-pkgver=4.2.1
-pkgrel=1
+pkgver=6.1.0
+pkgrel=2
pkgdesc="Django app providing database and form fields for pytz timezone objects"
-options="!check" # Testsuite is only coverage and flake8 tests
-url="https://pypi.python.org/pypi/django-timezone-field"
+url="https://pypi.org/project/django-timezone-field"
arch="noarch"
license="BSD-2-Clause"
-depends="py3-django py3-tz"
-makedepends="py3-setuptools"
+depends="py3-django"
+makedepends="
+ py3-gpep517
+ py3-poetry-core
+ "
+checkdepends="
+ py3-django-rest-framework
+ py3-pytest
+ py3-pytest-django
+ py3-tz
+ tzdata
+ "
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/mfogel/$_pkgname/archive/$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
+options="!check" #fails with funcargs error, likely lazy_fixture incompatibility in test suite
replaces="py-django-timezone-field" # Backwards compatibility
provides="py-django-timezone-field=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
-
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- python3 tests.py
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
}
package() {
- python3 setup.py --quiet install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
-4c2da420c3aaffa23d8cdb66dbbe4b2ea8638de5a45d9e381bf9af980e52eba77fc03a2b8fee8497662199cdc9436d56543c0f6316e74ae5da68187a305c34a2 py3-django-timezone-field-4.2.1.tar.gz
+b070e55a2a5196de1fcae4bd19979caf9d84c234a4e379d82dab843541cf99a0acced9a6996e35afe6b40d1bf737d522d34b91df10596e7365f85cfbe0597015 py3-django-timezone-field-6.1.0.tar.gz
"
diff --git a/testing/py3-dkimpy/APKBUILD b/testing/py3-dkimpy/APKBUILD
new file mode 100644
index 00000000000..e608b626590
--- /dev/null
+++ b/testing/py3-dkimpy/APKBUILD
@@ -0,0 +1,32 @@
+# Contributor: knuxify <knuxify@gmail.com>
+# Maintainer: knuxify <knuxify@gmail.com>
+pkgname=py3-dkimpy
+pkgver=1.1.5
+pkgrel=1
+pkgdesc="DKIM, ARC, and TLSRPT email signing and verification"
+url="https://launchpad.net/dkimpy/"
+arch="noarch"
+license="Zlib"
+depends="python3 py3-aiodns py3-dnspython py3-authres py3-pynacl"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+subpackages="$pkgname-pyc $pkgname-doc"
+source="https://launchpad.net/dkimpy/1.1/$pkgver/+download/dkimpy-$pkgver.tar.gz"
+builddir="$srcdir/dkimpy-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m unittest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" .dist/*.whl
+}
+
+sha512sums="
+650476a54cb39d72fefe05a6fdd8167694cd6f1cf521efb7807713ccfa868dd5458732ee8501c4edea203f9726689c9632a92473698ee31889208d19891b7a13 dkimpy-1.1.5.tar.gz
+"
diff --git a/testing/py3-dnslib/APKBUILD b/testing/py3-dnslib/APKBUILD
index d6e4d9a57e9..e4d86d7e7bf 100644
--- a/testing/py3-dnslib/APKBUILD
+++ b/testing/py3-dnslib/APKBUILD
@@ -1,17 +1,16 @@
# Contributor: Fabian Affolter <fabian@affolter-engineering.ch>
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-dnslib
-_pkgname=dnslib
-pkgver=0.9.19
-pkgrel=0
+pkgver=0.9.24
+pkgrel=1
pkgdesc="simple library to encode/decode DNS wire-format packets"
url="https://github.com/paulc/dnslib"
arch="noarch"
license="BSD-2-Clause"
-depends="python3"
-makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
-builddir="$srcdir"/$_pkgname-$pkgver
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/d/dnslib/dnslib-$pkgver.tar.gz"
+builddir="$srcdir/dnslib-$pkgver"
replaces=py-dnslib # Backwards compatibility
provides=py-dnslib=$pkgver-r$pkgrel # Backwards compatibility
@@ -21,17 +20,22 @@ provides=py-dnslib=$pkgver-r$pkgrel # Backwards compatibility
# - CVE-2022-22846
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- PYTHONPATH="$PWD/build/lib" python3 dnslib/test_decode.py
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 dnslib/test_decode.py
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
-3b49bfc9e566ecbd648899fe9bb367b7463a1ba4a2b4487ebdf342918dd0bf9e6281fc62e18568164490c0a22f842bedaeffcb61bbeeea0ef75db9d529e6fb46 dnslib-0.9.19.tar.gz
+95163676394f417b7d41f572c9a933728061b430ffbe670cdd44486a6447615273d2ac2805daf839721c247d902713e70ad183c580c8515f4e5e3d740986e633 dnslib-0.9.24.tar.gz
"
diff --git a/testing/py3-docformatter/APKBUILD b/testing/py3-docformatter/APKBUILD
new file mode 100644
index 00000000000..4007d641a8f
--- /dev/null
+++ b/testing/py3-docformatter/APKBUILD
@@ -0,0 +1,56 @@
+# Maintainer: Will Sinatra <wpsinatra@gmail.com>
+pkgname=py3-docformatter
+pkgver=1.7.5
+pkgrel=3
+pkgdesc="Formats docstrings to follow PEP 257"
+url="https://github.com/PyCQA/docformatter"
+arch="noarch"
+license="MIT"
+depends="
+ py3-charset-normalizer
+ py3-untokenize
+ "
+makedepends="
+ py3-gpep517
+ py3-poetry-core
+ "
+checkdepends="
+ black
+ py3-mock
+ py3-pytest-forked
+ py3-pytest-xdist
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/PyCQA/docformatter/archive/refs/tags/v$pkgver.tar.gz
+ fix-tests.patch
+ "
+builddir="$srcdir/docformatter-$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
+ (
+ # shellcheck disable=1091
+ . .testenv/bin/activate
+ # dumb checks that seems to fail to add a space or whatever
+ .testenv/bin/python3 -m pytest -n auto --forked \
+ --deselect=tests/test_docformatter.py \
+ --deselect=tests/test_configuration_functions.py
+ )
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+bb3e7674845632be7b75151a874987582f7cba2682905b0527a1bb8cda37156931ade35cb712ffba91d510e89a45474d5df8f41bea6979cc933f7ec999cf01f4 py3-docformatter-1.7.5.tar.gz
+a9f9a970b74c8a353df99ba3b005197562f4a320a5f38913cfafb1d13c2f45a6ce1aa5899ed219e72cc52a5c3ca3b690cee029a7b13f13768952c239ca2a0d87 fix-tests.patch
+"
diff --git a/testing/py3-docformatter/fix-tests.patch b/testing/py3-docformatter/fix-tests.patch
new file mode 100644
index 00000000000..100a04d4ea0
--- /dev/null
+++ b/testing/py3-docformatter/fix-tests.patch
@@ -0,0 +1,19 @@
+diff --git a/tests/_data/string_files/do_format_code.toml b/tests/_data/string_files/do_format_code.toml
+index 5d886f3..794431e 100644
+--- a/tests/_data/string_files/do_format_code.toml
++++ b/tests/_data/string_files/do_format_code.toml
+@@ -43,3 +43,3 @@ outstring='''
+ """docstring for CONST."""
+-'''
++ '''
+
+@@ -60,3 +60,3 @@ outstring='''
+ """
+-'''
++ '''
+
+@@ -86,3 +86,3 @@ outstring='''
+ """This is a second class variable docstring."""
+-'''
++ '''
+
diff --git a/testing/py3-docstring-to-markdown/APKBUILD b/testing/py3-docstring-to-markdown/APKBUILD
deleted file mode 100644
index 5317c12a571..00000000000
--- a/testing/py3-docstring-to-markdown/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Contributor: Galen Abell <galen@galenabell.com>
-# Maintainer: Galen Abell <galen@galenabell.com>
-pkgname=py3-docstring-to-markdown
-_pyname=docstring-to-markdown
-pkgver=0.10
-pkgrel=1
-pkgdesc="On the fly conversion of Python docstrings to markdown"
-url="https://github.com/krassowski/docstring-to-markdown"
-arch="noarch"
-license="LGPL-2.1-only"
-depends="python3"
-makedepends="py3-setuptools"
-checkdepends="py3-pytest"
-source="$_pyname-$pkgver.tar.gz::https://github.com/krassowski/docstring-to-markdown/archive/v$pkgver.tar.gz"
-builddir="$srcdir/$_pyname-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- PYTHONPATH="." pytest -c /dev/null tests
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-cb716fbaa8311bd563f9275eb64bb67d2870803a6c6c6ffce7b15b672260b46359008dc9ff80a99fee3033f3105fdfd77d7a248e7d8a22df695af820eba8e319 docstring-to-markdown-0.10.tar.gz
-"
diff --git a/testing/py3-dogpile.cache/APKBUILD b/testing/py3-dogpile.cache/APKBUILD
index 7cf1bc3aa9d..dc159859934 100644
--- a/testing/py3-dogpile.cache/APKBUILD
+++ b/testing/py3-dogpile.cache/APKBUILD
@@ -2,8 +2,8 @@
# Maintainer: Dmitry Zakharchenko <dmitz@disroot.org>
pkgname=py3-dogpile.cache
_pkgname=dogpile.cache
-pkgver=1.1.5
-pkgrel=0
+pkgver=1.2.2
+pkgrel=1
pkgdesc="Caching front-end based on the Dogpile lock"
url="https://github.com/sqlalchemy/dogpile.cache"
arch="noarch"
@@ -11,6 +11,7 @@ license="BSD-3-Clause"
depends="python3 py3-decorator"
makedepends="py3-setuptools"
checkdepends="py3-pytest py3-pbr py3-mako py3-redis py3-stevedore"
+subpackages="$pkgname-pyc"
source="https://pypi.io/packages/source/d/dogpile.cache/dogpile.cache-$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
@@ -23,9 +24,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
-b6d453121ef8e58da60478e2e1e2db57804dfa3b17cceeace930ba75d159629dfba4b5d63c50fbbc2eafeadbfcd6e1e4cbe22c8da1f54c90473f8ee677d764f8 dogpile.cache-1.1.5.tar.gz
+23b078b79e4b1f87c8d397d35b772f0b5fee66a0e452de06e7644ecb1ef577ae1629307a0e32fa62f49d536f95fb62fe70ededeb43647fa0c2e0baf896261931 dogpile.cache-1.2.2.tar.gz
"
diff --git a/testing/py3-doit/APKBUILD b/testing/py3-doit/APKBUILD
index 3a3239693b4..bdaff8f2498 100644
--- a/testing/py3-doit/APKBUILD
+++ b/testing/py3-doit/APKBUILD
@@ -2,15 +2,15 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-doit
_pkgname=doit
-pkgver=0.33.1
-pkgrel=2
+pkgver=0.36.0
+pkgrel=4
pkgdesc="A Python Automation Tool"
url="https://pydoit.org/"
-# aarch64: Fails to find py3-inotify
-arch="noarch !aarch64"
+arch="noarch"
license="MIT"
-depends="py3-cloudpickle py3-inotify py3-six"
+depends="py3-importlib-metadata py3-cloudpickle python3"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -21,8 +21,14 @@ build() {
python3 setup.py build
}
+check() {
+ PYTHONPATH=build/lib python3 -m doit --version
+}
+
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="852efa3b770ec5de7def1fad1167b8cdce1de7435b2ba5e4af43a84c84df0cbf960d8d5c4c9f526f303d19c7536f745c2c7700daaced984ec86fb4202f894170 doit-0.33.1.tar.gz"
+sha512sums="
+d4caa31701755c7f59213dde0f89fd3616c0c01b7f06245cbfd9f1a315d503e62f3556c3b86685cd0ebfcffcc9cae0987ca150f037aa7b3cd960439a1191be42 doit-0.36.0.tar.gz
+"
diff --git a/testing/py3-dominate/APKBUILD b/testing/py3-dominate/APKBUILD
index b54d0f4f138..55c11929134 100644
--- a/testing/py3-dominate/APKBUILD
+++ b/testing/py3-dominate/APKBUILD
@@ -1,28 +1,36 @@
# Contributor: Leo <thinkabit.ukim@gmail.com>
-# Maintainer:
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=py3-dominate
-pkgver=2.6.0
-pkgrel=2
+pkgver=2.9.1
+pkgrel=1
pkgdesc="Library for creating and manipulating HTML documents using an elegant DOM API"
url="https://github.com/Knio/dominate/"
arch="noarch"
license="LGPL-3.0-only"
depends="python3"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-installer py3-wheel"
checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/Knio/dominate/archive/$pkgver.tar.gz"
builddir="$srcdir/dominate-$pkgver"
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- py.test-3
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
-sha512sums="ce32146ab105b5f53e5b1281d3da1166d5704c6972ff294cdb8ecfa69bc88ec49c62998e9e3e58f303389cb6002ae6042e956037a521b118de2d6de35ea712af py3-dominate-2.6.0.tar.gz"
+sha512sums="
+d13b3fcc22176b2ad0c393887b6b3fa896252f9c4126a017eb696a973c05090cbbf0b0437495761987e1f08b76d0e2901d06c61b02b6b20a4aac652ec2867297 py3-dominate-2.9.1.tar.gz
+"
diff --git a/testing/py3-dotty-dict/APKBUILD b/testing/py3-dotty-dict/APKBUILD
index c6f26ce04d8..7e3f260af12 100644
--- a/testing/py3-dotty-dict/APKBUILD
+++ b/testing/py3-dotty-dict/APKBUILD
@@ -1,15 +1,16 @@
# Contributor: Galen Abell <galen@galenabell.com>
# Maintainer: Galen Abell <galen@galenabell.com>
pkgname=py3-dotty-dict
-pkgver=1.3.0
-pkgrel=2
+pkgver=1.3.1
+pkgrel=3
pkgdesc="Dictionary wrapper for quick access to deeply nested keys"
url="https://github.com/pawelzny/dotty_dict"
arch="noarch"
license="MIT"
depends="python3"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-setuptools_scm"
checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/pawelzny/dotty_dict/archive/v$pkgver.tar.gz"
builddir="$srcdir/dotty_dict-$pkgver"
@@ -24,7 +25,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="97c99813335c0312528e4779dc60c882cdb5daa257e88241a9d7d6708c5056f553251a47238fd17baa62169a9f6d5cd659c9f610b9ea0f9bb35fdad48a4ddd89 py3-dotty-dict-1.3.0.tar.gz"
+sha512sums="
+a70cc8a7d8d60c918dc735d7ae2675f20f9558be75c7ae2b124597e35eac1dad47f3733774ce782854bc98665f515d5d8d1e0b26d8f0ba4e4a107ab95933d59f py3-dotty-dict-1.3.1.tar.gz
+"
diff --git a/testing/py3-dpath/APKBUILD b/testing/py3-dpath/APKBUILD
index ea7060d28d0..2cc9ce281dd 100644
--- a/testing/py3-dpath/APKBUILD
+++ b/testing/py3-dpath/APKBUILD
@@ -2,17 +2,18 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-dpath
_pkgname=dpath
-pkgver=2.0.6
-pkgrel=0
+pkgver=2.1.6
+pkgrel=1
pkgdesc="Filesystem-like pathing and searching for dictionaries"
-url="https://www.github.com/akesterson/dpath-python"
+url="https://github.com/dpath-maintainers/dpath-python"
arch="noarch"
license="MIT"
replaces="py-dpath" # for backwards compatibility
provides="py-dpath=$pkgver-r$pkgrel" # for backwards compatibility
depends="python3"
makedepends="py3-setuptools"
-checkdepends="py3-hypothesis py3-mock py3-nose py3-pytest"
+checkdepends="py3-hypothesis py3-mock py3-nose2 py3-pytest"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
@@ -26,9 +27,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
-6a008d6d12fadf9a45677b89b8a803f33ba9a83e54aec67c155d4e749bff4e60a5411a65a9361f3b70fa319b82ad2580735af407478bf7be022b81fc0b4a2434 dpath-2.0.6.tar.gz
+2f2dac39b6e1ad2effd8d61ac4acf6619205423389ecebc54061aa10ec11ce3236ea666b632a7dca349e9b7a6579815c97e01c930eaa1a99d965e37b9825b82c dpath-2.1.6.tar.gz
"
diff --git a/testing/py3-drf-yasg/APKBUILD b/testing/py3-drf-yasg/APKBUILD
index 1a89d12397b..67d2e2e438a 100644
--- a/testing/py3-drf-yasg/APKBUILD
+++ b/testing/py3-drf-yasg/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Leonardo Arena <rnalrd@alpinelinux.org>
# Maintainer:
pkgname=py3-drf-yasg
-pkgver=1.20.0
+pkgver=1.21.7
pkgrel=1
pkgdesc="Automated generation of real Swagger/OpenAPI 2.0 schemas from Django Rest Framework code"
options="!check" # Missing dependencies
@@ -9,10 +9,11 @@ url="https://pypi.org/project/drf-yasg/"
arch="noarch"
license="BSD-3-Clause"
depends="py3-django py3-coreschema py3-ruamel.yaml py3-inflection
- py3-six py3-uritemplate py3-coreapi"
+ py3-uritemplate"
makedepends="py3-setuptools py3-setuptools_scm py3-pbr"
# Requires unpackaged datadiff pytest-pythonpath pytest-django
checkdepends="py3-pytest py3-pytest-cov py3-pytest-xdist"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/axnsan12/drf-yasg/archive/$pkgver.tar.gz"
builddir="$srcdir"/drf-yasg-$pkgver
@@ -25,10 +26,9 @@ build() {
}
package() {
- python3 setup.py --quiet install --prefix=/usr --root="$pkgdir"
+ python3 setup.py --quiet install --skip-build --root="$pkgdir"
}
-
sha512sums="
-ad16d90b4640cd419cdc9698bdf898161d49b6910b23920237cf77c52baa8e3e7ac21193c6e03cc3dec7f9e4d1651a1fe070d6680c5c4c5df44bdd103ddb32c3 py3-drf-yasg-1.20.0.tar.gz
+4db6daea8e5c0b3179c1a0146f65ad16feb82d5bbd4220108f1cf6256d160a65e0a4a6831d88aba6991fa4558bea62c7f1cd911cf51ca1f91a940e4fe5202727 py3-drf-yasg-1.21.7.tar.gz
"
diff --git a/testing/py3-dt-schema/APKBUILD b/testing/py3-dt-schema/APKBUILD
index b4880cef68b..eb9d144c300 100644
--- a/testing/py3-dt-schema/APKBUILD
+++ b/testing/py3-dt-schema/APKBUILD
@@ -1,29 +1,61 @@
-# Contributor: Iskren Chernev <iskren.chernev@gmail.com>
-# Maintainer: Iskren Chernev <iskren.chernev@gmail.com>
+# Contributor: Iskren Chernev <me@iskren.info>
+# Maintainer: Iskren Chernev <me@iskren.info>
pkgname=py3-dt-schema
-pkgver=2021.12
-pkgrel=0
+pkgver=2024.02
+pkgrel=1
pkgdesc="Devicetree schema tools"
url="https://github.com/devicetree-org/dt-schema"
arch="noarch"
license="BSD-2-Clause"
-depends="python3 py3-ruamel.yaml py3-jsonschema py3-rfc3987"
-makedepends="py3-setuptools py3-setuptools_scm"
+depends="python3 py3-ruamel.yaml py3-jsonschema417 py3-rfc3987 py3-libfdt"
+makedepends="py3-setuptools py3-setuptools_scm py3-wheel py3-gpep517 py3-installer"
+checkdepends="dtc"
+subpackages="$pkgname-pyc"
source="dt-schema-$pkgver.tar.gz::https://github.com/devicetree-org/dt-schema/archive/v$pkgver.tar.gz"
builddir="$srcdir/dt-schema-$pkgver"
+options="net"
-build() {
- SETUPTOOLS_SCM_PRETEND_VERSION="$pkgver" python3 setup.py build
+prepare() {
+ default_prepare
+ {
+ find dtschema -name '*.py'
+ find test -name '*.py'
+ find tools -type f
+ } | while read -r file; do
+ sed -i \
+ -e 's/import jsonschema$/import jsonschema417 as jsonschema/' \
+ -e 's/from jsonschema/from jsonschema417/' \
+ "$file"
+ done
+ sed -i 's/jsonschema/jsonschema417/' pyproject.toml
+ # The project uses setuptools_scm, which handles adding the schema
+ # files to the package, but there is no SCM here..
+ {
+ echo '[tools.setuptools.package.find]'
+ echo 'where=["."]'
+ } >> pyproject.toml
+ echo "recursive-include dtschema/*schemas *.yaml" > MANIFEST.in
}
-package() {
- SETUPTOOLS_SCM_PRETEND_VERSION="$pkgver" python3 setup.py install --prefix=/usr --root="$pkgdir"
+build() {
+ SETUPTOOLS_SCM_PRETEND_VERSION="$pkgver" \
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- PYTHONPATH=. python3 test/test-dt-validate.py
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 test/test-dt-validate.py
+}
+
+package() {
+ SETUPTOOLS_SCM_PRETEND_VERSION="$pkgver" \
+ python3 -m installer -d "$pkgdir" \
+ .dist/dtschema-*-py3-none-any.whl
}
sha512sums="
-1eb6997a660aefefe07fe40f6966adbcb92853c71504e02fef63cfc5eee4fb6abb1257bf4d1fc798b4874da94bc029997abcf7bc338aedc881b152449b88646c dt-schema-2021.12.tar.gz
+9d1bb062541ea422e6551fed7fa2d5a7e80e7af2cad4ac66ea0f3b3f6bd4e15fbc7b27052556a61b32c35044fde6339b01a7b6679a314f9b17cc29a7a6f02cab dt-schema-2024.02.tar.gz
"
diff --git a/testing/py3-dunamai/APKBUILD b/testing/py3-dunamai/APKBUILD
new file mode 100644
index 00000000000..6ecc5942e75
--- /dev/null
+++ b/testing/py3-dunamai/APKBUILD
@@ -0,0 +1,36 @@
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=py3-dunamai
+pkgver=1.20.0
+pkgrel=0
+pkgdesc="Dynamic versioning library and CLI"
+url="https://github.com/mtkennerly/dunamai"
+arch="noarch"
+license="MIT"
+depends="py3-packaging"
+makedepends="py3-gpep517 py3-poetry-core py3-wheel py3-installer"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="https://github.com/mtkennerly/dunamai/releases/download/v$pkgver/dunamai-$pkgver.tar.gz"
+builddir="$srcdir/dunamai-$pkgver"
+options="!check" # tests require a git repo
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+ec29e737203034178387a8b11cb82f331cf5094d43e3d5934cef8551b8a979df7774613271312d2a8db6a721e37b004d493aa466aa414748e5fd0a1dd71e733b dunamai-1.20.0.tar.gz
+"
diff --git a/testing/py3-duniterpy/APKBUILD b/testing/py3-duniterpy/APKBUILD
new file mode 100644
index 00000000000..ee61634bd9a
--- /dev/null
+++ b/testing/py3-duniterpy/APKBUILD
@@ -0,0 +1,48 @@
+# Contributor: Eloi Torrents <eloitor@duck.com>
+# Maintainer: Eloi Torrents <eloitor@duck.com>
+pkgname=py3-duniterpy
+_pkgname=duniterpy
+pkgver=1.1.1
+pkgrel=3
+pkgdesc="Python APIs library to implement Duniter clients software"
+url="https://git.duniter.org/clients/python/duniterpy"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="
+ attr
+ python3
+ py3-aiohttp
+ py3-attrs
+ py3-base58
+ py3-jsonschema
+ py3-libnacl
+ py3-pyaes
+ py3-pypeg2
+ py3-scrypt
+ py3-websocket-client
+ "
+makedepends="py3-build py3-wheel py3-installer poetry libsodium-dev"
+checkdepends="py3-pytest"
+source="https://git.duniter.org/clients/python/$_pkgname/-/archive/$pkgver/$_pkgname-$pkgver.tar.gz
+ Remove_empty_homepage_field_from_pyproject.patch
+ Support_py3-libnacl_1.9.0.patch
+ "
+builddir="$srcdir/"$_pkgname-$pkgver
+
+build() {
+ python -m build --wheel --no-isolation
+}
+
+check() {
+ pytest
+}
+
+package() {
+ python3 -m installer --destdir="$pkgdir" dist/*.whl
+}
+
+sha512sums="
+4fd702f37d65c83ce907c90dde8fe2d55a47c9b19624f9f48a5bb988bf11c62cf56092a0fd61cae91225b42afb7784739ab2a9c14577e0fa275b97c21f312608 duniterpy-1.1.1.tar.gz
+b85743c269fff452d71016059c287a4b12f6442d29c06481ac5c9604b20a88887d5d7806058fc99c6471bc57dc866102ee8d5319e7aa89bd24fe2ada873cc0f2 Remove_empty_homepage_field_from_pyproject.patch
+b0b71d291898be989e6a74ea0ec75942fdea5e089c022b42f7a6751de2911699998cc84fc48bca80ce5829caae9dc137266e43f19be573e239fa3ce7d7dc8066 Support_py3-libnacl_1.9.0.patch
+"
diff --git a/testing/py3-duniterpy/Remove_empty_homepage_field_from_pyproject.patch b/testing/py3-duniterpy/Remove_empty_homepage_field_from_pyproject.patch
new file mode 100644
index 00000000000..a89205ec332
--- /dev/null
+++ b/testing/py3-duniterpy/Remove_empty_homepage_field_from_pyproject.patch
@@ -0,0 +1,12 @@
+diff --git a/pyproject.toml b/pyproject.toml
+index c2a9b4d190c7c92caba8784d3fa5975646e7260e..5b2d3789f76e857846455cdcf64518d067d913a0 100644
+--- a/pyproject.toml
++++ b/pyproject.toml
+@@ -7,7 +7,6 @@ authors = ["inso <insomniak.fr@gmail.com>", "canercandan", "s_b"]
+ maintainers = ["vit <vit@free.fr>", "Moul <moul@moul.re>"]
+ readme = "README.md"
+ license = "GPL-3.0-or-later"
+-homepage = ""
+ repository = "https://git.duniter.org/clients/python/duniterpy"
+ documentation = "https://clients.pages.duniter.org/python/duniterpy/index.html"
+ urls = { Changelog = "https://git.duniter.org/clients/python/duniterpy/-/blob/main/CHANGELOG.md" }
diff --git a/testing/py3-duniterpy/Support_py3-libnacl_1.9.0.patch b/testing/py3-duniterpy/Support_py3-libnacl_1.9.0.patch
new file mode 100644
index 00000000000..c2a9b8841d4
--- /dev/null
+++ b/testing/py3-duniterpy/Support_py3-libnacl_1.9.0.patch
@@ -0,0 +1,25 @@
+diff --git a/duniterpy/key/ascii_armor.py b/duniterpy/key/ascii_armor.py
+index 9ab3efe47b0224179926f04bc3c2be03674fbccd..84b8c68335d83dad70d8e61a7b013d6a830c6047 100644
+--- a/duniterpy/key/ascii_armor.py
++++ b/duniterpy/key/ascii_armor.py
+@@ -14,11 +14,11 @@
+ # along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+ import base64
++import importlib.metadata
+ import re
+ from typing import Any, Dict, List, Optional
+
+ import libnacl
+-from libnacl.version import version as libnacl_version
+
+ from .encryption_key import PublicKey
+ from .signing_key import SigningKey
+@@ -33,6 +33,7 @@ HEADER_PREFIX = "-----"
+ DASH_ESCAPE_PREFIX = "\x2D\x20"
+
+ # Version field value
++libnacl_version = importlib.metadata.version("libnacl")
+ VERSION_FIELD_VALUE = f"Python Libnacl {libnacl_version}"
+
+ # Parser cursor status
diff --git a/testing/py3-duviz/APKBUILD b/testing/py3-duviz/APKBUILD
deleted file mode 100644
index 9a7b003275b..00000000000
--- a/testing/py3-duviz/APKBUILD
+++ /dev/null
@@ -1,27 +0,0 @@
-# Maintainer: Andy Postnikov <apostnikov@gmail.com>
-pkgname=py3-duviz
-pkgver=3.1.0
-pkgrel=2
-pkgdesc="A command-line tool to visualize disk space usage."
-url="https://github.com/soxofaan/duviz"
-arch="noarch"
-license="MIT"
-depends="python3"
-makedepends="py3-setuptools"
-checkdepends="py3-pytest"
-source="$pkgname-$pkgver.tar.gz::https://github.com/soxofaan/duviz/archive/v$pkgver.tar.gz"
-builddir="$srcdir/duviz-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 -m pytest -v
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="58b2256154640658de6dd1c12ebd77c46adc1cc62cc397412d416171dd71c98123b39c801edfd53a01b492a0542acf23037005cf764bd71d7811a40a0175992f py3-duviz-3.1.0.tar.gz"
diff --git a/testing/py3-dweepy/APKBUILD b/testing/py3-dweepy/APKBUILD
index f9d33bdcda1..a6dc125ce22 100644
--- a/testing/py3-dweepy/APKBUILD
+++ b/testing/py3-dweepy/APKBUILD
@@ -3,25 +3,29 @@
pkgname=py3-dweepy
_pkgname=dweepy
pkgver=0.3.0
-pkgrel=3
+pkgrel=7
pkgdesc="A Python client for Dweet.io"
url="https://github.com/paddycarey/dweepy"
arch="noarch"
license="MIT"
depends="py3-requests"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-dweepy" # Backwards compatibility
+replaces="py-dweepy" # Backwards compatibility
provides="py-dweepy=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="f190c40bbcfdbaa516fff3d2f91dc58bf8ed71096385a74476c2e1c13cfafc32c0c24645801b3fdb5116a80807b0150a4a4b0976ebf499b4fa51ebf9a5ac797e dweepy-0.3.0.tar.gz"
diff --git a/testing/py3-ecos/APKBUILD b/testing/py3-ecos/APKBUILD
index ddf557d3512..b99ad2306aa 100644
--- a/testing/py3-ecos/APKBUILD
+++ b/testing/py3-ecos/APKBUILD
@@ -1,15 +1,16 @@
# Contributor: Anjandev Momi <anjan@momi.ca>
# Maintainer: Anjandev Momi <anjan@momi.ca>
pkgname=py3-ecos
-pkgver=2.0.10
-pkgrel=0
+pkgver=2.0.11
+pkgrel=3
pkgdesc="python interface for ECOS"
url="https://github.com/embotech/ecos-python"
arch="all"
license="GPL-3.0-only"
depends="py3-numpy py3-scipy ecos"
-makedepends="py3-setuptools ecos-dev py3-numpy-dev"
+makedepends="py3-setuptools ecos-dev py3-numpy-dev python3-dev"
checkdepends="py3-nose"
+subpackages="$pkgname-pyc"
source="ecos-python-$pkgver.tar.gz::https://github.com/embotech/ecos-python/archive/refs/tags/v$pkgver.tar.gz
use_external_ecos.patch
"
@@ -27,10 +28,10 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
-2818c1b2de2d843c2ce1b1d88ce84832dd0aa229ca6b599bb055f80d10223451ffca84a1a145112d269bc9985203d617b1234d59419091b6588309662f28be77 ecos-python-2.0.10.tar.gz
+30ee09ca02f8b2c4b308917f766bd82df62e78737f3a4f7490c89add45473606c1aad431073445d47e488553a8f34642e680c5c98b034c56df15033d3a298180 ecos-python-2.0.11.tar.gz
671bea0c1eadf6fe67a632af6598bc1bc48fbe2ddbdc4439f6bcc52636a9a5b43e7f1c5b7a384a737088a16f69ca3835048b562eeb4c6894a52f381d759ec6c9 use_external_ecos.patch
"
diff --git a/testing/py3-editdistance-s/APKBUILD b/testing/py3-editdistance-s/APKBUILD
index 8a43a3276d5..1296732ca68 100644
--- a/testing/py3-editdistance-s/APKBUILD
+++ b/testing/py3-editdistance-s/APKBUILD
@@ -3,15 +3,16 @@
pkgname=py3-editdistance-s
_pyname=editdistance-s
pkgver=1.0.0
-pkgrel=1
+pkgrel=5
pkgdesc="Fast implementation of the edit distance"
-url="https://github.com/asottile/editdistance-s"
+url="https://github.com/asottile-archive/editdistance-s"
arch="all"
license="MIT"
depends="python3 py3-cffi"
makedepends="py3-setuptools python3-dev"
checkdepends="py3-pytest"
-source="$_pyname-$pkgver.tar.gz::https://github.com/asottile/editdistance-s/archive/refs/tags/v$pkgver.tar.gz"
+subpackages="$pkgname-pyc"
+source="$_pyname-$pkgver.tar.gz::https://github.com/asottile-archive/editdistance-s/archive/refs/tags/v$pkgver.tar.gz"
builddir="$srcdir/$_pyname-$pkgver"
build() {
@@ -23,7 +24,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
diff --git a/testing/py3-empy/APKBUILD b/testing/py3-empy/APKBUILD
index f6faaac333b..95ffded5fd5 100644
--- a/testing/py3-empy/APKBUILD
+++ b/testing/py3-empy/APKBUILD
@@ -3,12 +3,14 @@
pkgname=py3-empy
_pkgname=empy
pkgver=3.3.4
-pkgrel=3
+pkgrel=6
pkgdesc="A powerful and robust templating system for Python."
url="http://www.alcyone.com/software/empy/"
arch="noarch"
license="LGPL-2.1-or-later"
depends="python3"
+makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="http://www.alcyone.com/software/empy/empy-$pkgver.tar.gz
10-fix-test-case.patch
20-fix-setuppy.patch
@@ -24,7 +26,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="5de8de26484468d180a2575bfc8302cb3d32004ed4d70768310b7564a9ed1bb880b8c1d862f419588b2b5baa8c3da8bc707eac41f3921e6136cc5bc3f47f1a3d empy-3.3.4.tar.gz
diff --git a/testing/py3-enzyme/APKBUILD b/testing/py3-enzyme/APKBUILD
index 408f518292c..a19ddcfc65b 100644
--- a/testing/py3-enzyme/APKBUILD
+++ b/testing/py3-enzyme/APKBUILD
@@ -3,15 +3,15 @@
pkgname=py3-enzyme
_pkgname=enzyme
pkgver=0.4.1
-pkgrel=0
+pkgrel=4
pkgdesc="Python module to parse video metadata"
url="https://github.com/Diaoul/enzyme"
arch="noarch"
license="Apache-2.0"
-depends="python3"
-makedepends="py3-setuptools"
+depends="py3-setuptools"
checkdepends="py3-pytest py3-requests py3-yaml"
-source="$pkgname-$pkgver.tar.gz::$url/archive/$pkgver.tar.gz"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/Diaoul/enzyme/archive/$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
build() {
@@ -23,7 +23,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
456f3ee8b9f0b218451dc455acba7365c0ab12ae0e43df72cb4f748a29ac8fe12c14a48913681e29de355d297ec219bc9288d09acdec228fee9bbab85b5e048b py3-enzyme-0.4.1.tar.gz
diff --git a/testing/py3-eradicate/APKBUILD b/testing/py3-eradicate/APKBUILD
index 18e071001d2..3003a9ed866 100644
--- a/testing/py3-eradicate/APKBUILD
+++ b/testing/py3-eradicate/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Rejah Rehim <rejah@beaglesecurity.com>
pkgname=py3-eradicate
_pkgname=eradicate
-pkgver=2.0.0
+pkgver=2.3.0
pkgrel=1
pkgdesc="Removes commented-out code"
options="!check" # no test suite
@@ -11,7 +11,7 @@ arch="noarch"
license="MIT"
depends="python3"
makedepends="py3-setuptools"
-subpackages="$pkgname-doc"
+subpackages="$pkgname-doc $pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/e/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -20,10 +20,10 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
install -Dm644 README.rst -t "$pkgdir"/usr/share/doc/"$pkgname"
}
sha512sums="
-ca786e128dc7a27d0070a8e4e888aaa79a989fd8c0de2d7fb528ab1e6f5d127a1778c6decf7a6d96be030d15065a021b23b1d51505fcdaf776af9bf4876d8028 eradicate-2.0.0.tar.gz
+3b2498277e8aa6e36f1dbab0731b28d22034b95564c300e067151fe5a6c8f124661f169e43290a57950588fcd8c8f27b990755bdba7e28afcc0fee6b82c1c07f eradicate-2.3.0.tar.gz
"
diff --git a/testing/py3-euclid3/APKBUILD b/testing/py3-euclid3/APKBUILD
index e6c0da0b84a..2fe23088eb5 100644
--- a/testing/py3-euclid3/APKBUILD
+++ b/testing/py3-euclid3/APKBUILD
@@ -1,7 +1,8 @@
# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
+# Contributor: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
pkgname=py3-euclid3
pkgver=0.01
-pkgrel=3
+pkgrel=7
pkgdesc="Vector, matrix, quaternion and some geometry in 2D and 3D for Python 3"
url="https://github.com/euclid3/euclid3"
arch="noarch"
@@ -10,11 +11,10 @@ depends="python3"
makedepends="
py3-setuptools
"
-_pyname="euclid3"
-_pypiprefix="${_pyname%${_pyname#?}}"
-source="https://files.pythonhosted.org/packages/source/$_pypiprefix/$_pyname/$_pyname-$pkgver.tar.gz"
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/e/euclid3/euclid3-$pkgver.tar.gz"
builddir="$srcdir/euclid3-$pkgver"
-options="!check" # Version 0.01 contains no tests :-/
+options="!check" # no tests
build() {
python3 setup.py build
@@ -25,6 +25,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="c4e5e2770ab4ede08904fc3b76e50d6812944ed226c9db52f2da8d100370e20ea6031ca554ae44d72d53e96727d163bd3cc8da7bf175539de10749da77877b0b euclid3-0.01.tar.gz"
+
+sha512sums="
+c4e5e2770ab4ede08904fc3b76e50d6812944ed226c9db52f2da8d100370e20ea6031ca554ae44d72d53e96727d163bd3cc8da7bf175539de10749da77877b0b euclid3-0.01.tar.gz
+"
diff --git a/testing/py3-eventlet/APKBUILD b/testing/py3-eventlet/APKBUILD
index a311b0eb19e..f12f4a5f38c 100644
--- a/testing/py3-eventlet/APKBUILD
+++ b/testing/py3-eventlet/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Elizabeth Jennifer Myers <elizabeth@sporksirc.net>
-# Maintainer: psykose <alice@ayaya.dev>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=py3-eventlet
-pkgver=0.33.1
+pkgver=0.36.1
pkgrel=0
pkgdesc="Python library for seamless coroutine-based concurrency"
url="https://eventlet.net/"
@@ -16,11 +16,11 @@ depends="
py3-six
python3
"
-makedepends="py3-setuptools"
-checkdepends="py3-tox py3-nose"
-source="https://files.pythonhosted.org/packages/source/e/eventlet/eventlet-$pkgver.tar.gz
- skip-broken-tests.patch
- "
+makedepends="py3-hatchling py3-gpep517 py3-wheel py3-hatch-vcs"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/e/eventlet/eventlet-$pkgver.tar.gz"
+
builddir="$srcdir"/eventlet-$pkgver
# secfixes:
@@ -28,18 +28,23 @@ builddir="$srcdir"/eventlet-$pkgver
# - CVE-2021-21419
build() {
- python3 setup.py build
+ export SETUPTOOLS_SCM_PRETEND_VERSION=$pkgver
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- nosetests -sv tests
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ gpep517 install-wheel --destdir .testenv --prefix '' .dist/*.whl
+ .testenv/bin/python3 -m pytest
}
package() {
- python3 setup.py install --root "$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
-c8ece6a26039631b13ecc188f480f348a42551267fb6135551899dec7a23d0cfd032c14728e114901e4d256bf580203bfbdb1795881abdd71e49a53f8ed58964 eventlet-0.33.1.tar.gz
-c01f0d89c9d681f30b68a78c9a980788637d42d450e89fab7f1ac83313e9f07fdcc94ca6fab0ae613445e8147b1e9a9389ab5b61cb0930ab643786ec61193681 skip-broken-tests.patch
+a13565588c570b8d57b7a8dc3c496e9d95fb3c5a8ce2c60560e532370522b852297cc5bfc7cb3ed80de7a6dca39f15effaf6b1b5498bd910ef278788cb7bc7bd eventlet-0.36.1.tar.gz
"
diff --git a/testing/py3-eventlet/skip-broken-tests.patch b/testing/py3-eventlet/skip-broken-tests.patch
deleted file mode 100644
index 17b017f6824..00000000000
--- a/testing/py3-eventlet/skip-broken-tests.patch
+++ /dev/null
@@ -1,55 +0,0 @@
---- a/tests/wsgi_test.py
-+++ b/tests/wsgi_test.py
-@@ -10,6 +10,8 @@
- import tempfile
- import traceback
-
-+from nose.tools import nottest
-+
- import eventlet
- from eventlet import debug
- from eventlet import event
-@@ -556,6 +558,7 @@
- self.assertEqual(1, len(
- [l for l in header_lines if l.lower().startswith(b'content-length')]))
-
-+ @nottest
- @tests.skip_if_no_ssl
- def test_017_ssl_zeroreturnerror(self):
-
-@@ -608,6 +608,7 @@
- self.assertEqual('keep-alive', result2.headers_lower['connection'])
- sock.close()
-
-+ @nottest
- def test_018b_http_10_keepalive_framing(self):
- # verify that if an http/1.0 client sends connection: keep-alive
- # that we don't mangle the request framing if the app doesn't read the request
---- a/tests/patcher_test.py
-+++ b/tests/patcher_test.py
-@@ -6,7 +6,9 @@
- import six
- import tests
-
-+from nose.tools import nottest
-
-+
- base_module_contents = """
- import socket
- import urllib
-@@ -476,6 +478,7 @@
- tests.run_isolated('patcher_existing_locks_late.py')
-
-
-+@nottest
- def test_patcher_existing_locks_locked():
- tests.run_isolated('patcher_existing_locks_locked.py')
-
-@@ -517,6 +518,7 @@
- tests.run_isolated('patcher_threadpoolexecutor.py')
-
-
-+@nottest
- def test_fork_after_monkey_patch():
- tests.run_isolated('patcher_fork_after_monkey_patch.py')
-
diff --git a/testing/py3-evohome-client/APKBUILD b/testing/py3-evohome-client/APKBUILD
index 83f3a2dac10..8ad1762efff 100644
--- a/testing/py3-evohome-client/APKBUILD
+++ b/testing/py3-evohome-client/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Carlo Landmeter <clandmeter@alpinelinux.org>
# Maintainer:
pkgname=py3-evohome-client
-pkgver=0.3.3
+pkgver=0.3.7
pkgrel=3
pkgdesc="Python client to access the Evohome web service"
url="https://github.com/watchforstock/evohome-client"
@@ -10,6 +10,7 @@ license="Apache-2.0"
depends="python3 py3-requests"
makedepends="py3-setuptools"
checkdepends="py3-nose py3-requests-mock"
+subpackages="$pkgname-pyc"
source="evohome-client-$pkgver.tar.gz::https://github.com/watchforstock/evohome-client/archive/$pkgver.tar.gz"
builddir="$srcdir"/evohome-client-$pkgver
@@ -26,7 +27,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="2f140f52c5b1236aeaecd27b16c0f490e0bbb361a07ef1e9e4ca14e856f840aa62f110c14f65bacf6f7eecb9282506aabf2c88378810c0db32557effe291e66c evohome-client-0.3.3.tar.gz"
+sha512sums="
+0ba4ea1c952425f453b8189759be6037be91af73bd2b8da91bb532745fc73a43b93fb2237ac8b39b86da9c2d196c0d9567f857aecb9984327d67e1b9f62d923e evohome-client-0.3.7.tar.gz
+"
diff --git a/testing/py3-ewmh/APKBUILD b/testing/py3-ewmh/APKBUILD
deleted file mode 100644
index 206ab458374..00000000000
--- a/testing/py3-ewmh/APKBUILD
+++ /dev/null
@@ -1,27 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-# Contributor: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=py3-ewmh
-pkgver=0.1.6
-pkgrel=2
-pkgdesc="Python implementation of Extended Window Manager Hints, based on Xlib"
-url="https://github.com/parkouss/pyewmh"
-arch="noarch"
-license="LGPL-3.0-or-later"
-depends="py3-xlib"
-makedepends="py3-setuptools"
-options="!check" # No testsuite
-source="$pkgname-$pkgver.tar.gz::https://github.com/parkouss/pyewmh/archive/v$pkgver.tar.gz"
-builddir="$srcdir/pyewmh-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install \
- --prefix=/usr \
- --root="$pkgdir" \
- --optimize=1
-}
-
-sha512sums="257d59c0927cec3cd75a6084cd484f1dcf9fa882719707078398d2a65e95e975ad9f6225ed1fd8ec1a29badbdc492c84eb4e04640cc6b480b31bc5ae8ab3f7c8 py3-ewmh-0.1.6.tar.gz"
diff --git a/testing/py3-fastapi/APKBUILD b/testing/py3-fastapi/APKBUILD
new file mode 100644
index 00000000000..e7f882347e0
--- /dev/null
+++ b/testing/py3-fastapi/APKBUILD
@@ -0,0 +1,66 @@
+# Contributor: Steven Guikal <void@fluix.one>
+# Maintainer: Steven Guikal <void@fluix.one>
+pkgname=py3-fastapi
+pkgver=0.108.0
+pkgrel=0
+pkgdesc="Modern, high-performance, web framework for building APIs based on standard Python type hints"
+url="https://github.com/tiangolo/fastapi"
+arch="noarch !armhf !ppc64le" # limited by py3-starlette
+license="MIT"
+depends="
+ py3-pydantic
+ py3-starlette
+ "
+makedepends="
+ py3-gpep517
+ py3-hatchling
+ py3-installer
+ "
+checkdepends="
+ py3-dirty-equals
+ py3-email-validator
+ py3-flask
+ py3-httpx
+ py3-orjson
+ py3-passlib
+ py3-peewee
+ py3-pytest
+ py3-pytest-xdist
+ py3-python-jose
+ py3-python-multipart
+ py3-sqlalchemy
+ py3-trio
+ py3-ujson
+ py3-yaml
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/tiangolo/fastapi/archive/refs/tags/$pkgver.tar.gz
+ pytest-markers.patch
+ "
+builddir="$srcdir/fastapi-$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
+ # Depends on older SQLAlchemy and slated for removal:
+ # https://github.com/tiangolo/fastapi/blob/dd4e78ca7b09abdf0d4646fe4697316c021a8b2e/requirements-tests.txt#L9
+ .testenv/bin/python3 -m pytest -p no:warnings \
+ --ignore-glob "tests/test_tutorial/*sql_databases" \
+ --ignore tests/test_dependency_normal_exceptions.py
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+c7f1b265c680e75e2654623e14c94d06fa880e219346d577c70bb070dbf15f424ebd4fa4450ce0e364dc4d794ba496dee8e24f20ff292ef6ee7f0eed2aee05a4 py3-fastapi-0.108.0.tar.gz
+854946e3e52460edfd84cd44e254659354171e88245f4134c7f943a07bf3b08455ad81c54f4c58c50f639aa7288e25d81711f3d7867bbe2d6c83844e2fdd9921 pytest-markers.patch
+"
diff --git a/testing/py3-fastapi/pytest-markers.patch b/testing/py3-fastapi/pytest-markers.patch
new file mode 100644
index 00000000000..58792ca7c8d
--- /dev/null
+++ b/testing/py3-fastapi/pytest-markers.patch
@@ -0,0 +1,12 @@
+--- a/pyproject.toml
++++ b/pyproject.toml
+@@ -90,6 +90,9 @@
+ "--strict-markers",
+ "--ignore=docs_src",
+ ]
++markers = [
++ "filterwarnings",
++]
+ xfail_strict = true
+ junit_family = "xunit2"
+ filterwarnings = [
diff --git a/testing/py3-fastavro/APKBUILD b/testing/py3-fastavro/APKBUILD
index af720001d88..b9b0c4f3da1 100644
--- a/testing/py3-fastavro/APKBUILD
+++ b/testing/py3-fastavro/APKBUILD
@@ -1,8 +1,9 @@
-# Maintainer: Gennady Feldman <gena01@gmail.com>
+# Maintainer: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
# Contributor: Gennady Feldman <gena01@gmail.com>
+# Contributor: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
pkgname=py3-fastavro
_pkgname=fastavro
-pkgver=1.4.4
+pkgver=1.9.4
pkgrel=1
pkgdesc="Fast Avro for Python"
# Tests for optional zstd and snappy codecs require
@@ -11,14 +12,18 @@ options="!check"
url="https://github.com/fastavro/fastavro"
arch="all !x86" # _tz_ tests fail
license="MIT"
-depends="py3-six"
-makedepends="py3-setuptools python3-dev cython"
-checkdepends="py3-pytest py3-numpy"
+depends="python3"
+makedepends="py3-gpep517 py3-setuptools python3-dev cython py3-wheel"
+checkdepends="py3-pytest-xdist py3-numpy"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/fastavro/fastavro/archive/$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
build() {
- FASTAVRO_USE_CYTHON=1 python3 setup.py build
+ FASTAVRO_USE_CYTHON=1 \
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
@@ -26,9 +31,10 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
-352fc032156c9bd5b062843a10836d46a601876d87302c83230b040c47e8c66738500231aa94553e1bec097156c6ef2d43bc8f5ba4456c7c9b058f6f8eae54e3 py3-fastavro-1.4.4.tar.gz
+88a9d7dbf4c8870dda4c7c8265649c6c4e405d6cf5e10b39029e4ec1cd762237daae6d5b9a317886f21b71625fd73c401c7518168282b1f2d7b9c02fbb825931 py3-fastavro-1.9.4.tar.gz
"
diff --git a/testing/py3-fastdiff/APKBUILD b/testing/py3-fastdiff/APKBUILD
index 1061b3aec22..1a3135b84df 100644
--- a/testing/py3-fastdiff/APKBUILD
+++ b/testing/py3-fastdiff/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Bart Ribbers <bribbers@disroot.org>
pkgname=py3-fastdiff
pkgver=0.3.0
-pkgrel=1
+pkgrel=4
pkgdesc="A fast native implementation of diff algorithm with a pure Python fallback"
url="https://github.com/syrusakbary/fastdiff"
arch="noarch"
@@ -13,6 +13,7 @@ makedepends="
py3-setuptools
"
checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
source="https://pypi.python.org/packages/source/f/fastdiff/fastdiff-$pkgver.tar.gz"
options="!check" # Requires unpackaged native modules
builddir="$srcdir/fastdiff-$pkgver"
@@ -26,7 +27,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
diff --git a/testing/py3-feedgen/APKBUILD b/testing/py3-feedgen/APKBUILD
new file mode 100644
index 00000000000..4b2e8b9af93
--- /dev/null
+++ b/testing/py3-feedgen/APKBUILD
@@ -0,0 +1,42 @@
+# Maintainer: Thomas Faughnan <thomas@faughnan.net>
+pkgname=py3-feedgen
+pkgver=1.0.0
+pkgrel=1
+pkgdesc="Python module to generate ATOM feeds, RSS feeds and Podcasts"
+url="https://github.com/lkiesow/python-feedgen"
+arch="noarch"
+license="BSD-2-Clause AND LGPL-3.0-or-later"
+depends="
+ py3-dateutil
+ py3-lxml
+ python3
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+subpackages="$pkgname-pyc"
+source="https://github.com/lkiesow/python-feedgen/archive/v$pkgver/python-feedgen-$pkgver.tar.gz"
+builddir="$srcdir/python-feedgen-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m unittest discover tests
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+f21704f7f4714e51c9b7b1d98f71db041426e01039f4d85439ee0623b77575293f3efd6fdb7b6609f67e0a868863b15169f91cef3a3c16542182ecf9409eb524 python-feedgen-1.0.0.tar.gz
+"
diff --git a/testing/py3-feedgenerator/APKBUILD b/testing/py3-feedgenerator/APKBUILD
index 6bc7d2c6860..193885b59e8 100644
--- a/testing/py3-feedgenerator/APKBUILD
+++ b/testing/py3-feedgenerator/APKBUILD
@@ -2,14 +2,16 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-feedgenerator
_pkgname=feedgenerator
-pkgver=1.9.2
+pkgver=2.1.0
pkgrel=1
pkgdesc="A Python feed generator"
url="https://github.com/getpelican/feedgenerator"
arch="noarch"
license="BSD-3-Clause"
-depends="py3-six py3-tz"
+depends="python3 py3-tz"
makedepends="py3-setuptools"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -25,9 +27,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
-3f9799a8008cf456635bacce87699c3fa00ac990ed675a92dbdccf898fd189c8908109a27bb393e9f25bda7f880c66c40fc3d1179d09e579be8125c70bf1b7a9 feedgenerator-1.9.2.tar.gz
+b8b41f5b256130166c8dba34dd950782f9acb506e3e37a2fe13b5e1f9d33f7d39b7f862e446f4f6f2f480973617feb70303f78a4fb6741f110166e61b92f0075 feedgenerator-2.1.0.tar.gz
"
diff --git a/testing/py3-ffmpeg/APKBUILD b/testing/py3-ffmpeg/APKBUILD
new file mode 100644
index 00000000000..d83a41b975f
--- /dev/null
+++ b/testing/py3-ffmpeg/APKBUILD
@@ -0,0 +1,33 @@
+# Contributor: Dmitry Zakharchenko <dmitz@disroot.org>
+# Maintainer: Dmitry Zakharchenko <dmitz@disroot.org>
+pkgname=py3-ffmpeg
+_pkgname=ffmpeg-python
+pkgver=0.2.0
+pkgrel=3
+pkgdesc="Python bindings for FFmpeg"
+url="https://github.com/kkroening/ffmpeg-python"
+arch="noarch"
+license="Apache-2.0"
+depends="ffmpeg py3-future"
+makedepends="py3-setuptools"
+options="!check" # test fails
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/kkroening/ffmpeg-python/archive/$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+prepare() {
+ default_prepare
+ sed -e '/pytest-runner/d' -i setup.py
+}
+
+build() {
+ python3 setup.py build
+}
+
+package() {
+ python3 setup.py install --skip-build --root="$pkgdir"
+}
+
+sha512sums="
+933ed958d61536bbbc0e0b08e19521c4b1f7df1cfe97de0b3d149a2748c5bd74915a3134861e8ecb1f92d5860315228b76aefcd087fcf07e188a56c651f5e301 py3-ffmpeg-0.2.0.tar.gz
+"
diff --git a/testing/py3-findpython/APKBUILD b/testing/py3-findpython/APKBUILD
new file mode 100644
index 00000000000..d941dbda3a2
--- /dev/null
+++ b/testing/py3-findpython/APKBUILD
@@ -0,0 +1,37 @@
+# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=py3-findpython
+pkgver=0.6.0
+pkgrel=1
+pkgdesc="Utility to find python versions on your system"
+url="https://github.com/frostming/findpython"
+arch="noarch"
+license="MIT"
+depends="py3-packaging"
+makedepends="py3-gpep517 py3-installer py3-pdm-backend"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="https://github.com/frostming/findpython/archive/$pkgver/py3-findpython-$pkgver.tar.gz"
+builddir="$srcdir/findpython-$pkgver"
+
+build() {
+ export PDM_BUILD_SCM_VERSION=$pkgver
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+e6651fe040042ca1f7b75fd8fed899be91fa5d3e51b898ff6e9cb59a0d0155a9cdc2af26321681d51326b7f7900c1048bc813aad7ad201269b8bb5a2775427c2 py3-findpython-0.6.0.tar.gz
+"
diff --git a/testing/py3-fiona/APKBUILD b/testing/py3-fiona/APKBUILD
deleted file mode 100644
index 2be22eca010..00000000000
--- a/testing/py3-fiona/APKBUILD
+++ /dev/null
@@ -1,49 +0,0 @@
-# Contributor: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-# Maintainer: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-pkgname=py3-fiona
-_pkgorig=Fiona
-pkgver=1.8.21
-pkgrel=1
-pkgdesc="Fiona reads and writes geographical data files"
-url="https://github.com/Toblerity/Fiona"
-arch="all"
-license="BSD"
-depends="
- cython
- gdal
- gdal-dev
- python3
- python3-dev
- py3-attrs
- py3-click-plugins
- py3-cligj
- py3-certifi
- py3-munch
- py3-six
- py3-tz
- "
-checkdepends="py3-pytest py3-pytest-cov py3-boto3"
-makedepends="py3-setuptools"
-source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/F/Fiona/Fiona-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgorig-$pkgver"
-options="!check" # several tests are failing
-
-build() {
- python3 setup.py build
-}
-
-check() {
- mv fiona backup
- # inspired by Arch package
- local python_version=$(python3 -c 'import sys; print(".".join(map(str, sys.version_info[:2])))')
- PYTHONPATH="$PWD"/build/lib.linux-$CARCH-$python_version/ pytest -vv --color=yes -m "not wheel"
- mv backup fiona
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir" --skip-build
-}
-
-sha512sums="
-a28f8ef99942d285a6091505dde9e93f2107a1e41dc6d854b5643dd4f8791dacafde31dc9d2450897d126bf9f136f5c1f3fddde8399d634c745a5844f0afa345 py3-fiona-1.8.21.tar.gz
-"
diff --git a/testing/py3-fireflyalgorithm/APKBUILD b/testing/py3-fireflyalgorithm/APKBUILD
deleted file mode 100644
index a08b5c61b0c..00000000000
--- a/testing/py3-fireflyalgorithm/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Contributor: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-# Maintainer: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-pkgname=py3-fireflyalgorithm
-_pkgorig=FireflyAlgorithm
-pkgver=0.3
-pkgrel=0
-pkgdesc="Implementation of Firefly Algorithm for optimization in Python"
-url="https://github.com/firefly-cpp/FireflyAlgorithm"
-arch="noarch"
-license="MIT"
-depends="python3 py3-numpy"
-makedepends="py3-setuptools"
-checkdepends="py3-pytest"
-source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/f/fireflyalgorithm/FireflyAlgorithm-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgorig-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- pytest
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-5485c28a39f70b5bba3450f5ad418a2bb91f777183fa7e6ec131820397592192567fe691858b1dce7fb7228939ee2b1c86ec1a247cbbbf4a3ac29754703fdb9c py3-fireflyalgorithm-0.3.tar.gz
-"
diff --git a/testing/py3-firmata/APKBUILD b/testing/py3-firmata/APKBUILD
index fdd5b55bf6b..4f6f265de38 100644
--- a/testing/py3-firmata/APKBUILD
+++ b/testing/py3-firmata/APKBUILD
@@ -3,14 +3,17 @@
pkgname=py3-firmata
_pkgname=pyFirmata
pkgver=1.0.3
-pkgrel=6
+pkgrel=9
pkgdesc="Python interface for the Firmata procotol"
url="https://github.com/tino/pyFirmata"
arch="noarch"
license="MIT"
depends="python3 py3-pyserial"
makedepends="py3-setuptools"
-source="$_pkgname-$pkgver.tar.gz::https://github.com/tino/pyFirmata/archive/$pkgver.tar.gz"
+subpackages="$pkgname-pyc"
+source="$_pkgname-$pkgver.tar.gz::https://github.com/tino/pyFirmata/archive/$pkgver.tar.gz
+ py311.patch
+ "
builddir="$srcdir/$_pkgname-$pkgver"
replaces=py-firmata # Backwards compatibility
@@ -25,7 +28,10 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="626da09ea543dd722129dd7156bb1ba185d40480689d3b0108d89a1a2c9361105822c57e50c39413d1a6ded08f20211b4606b2cb18f5a578c399fda6b00e6abb pyFirmata-1.0.3.tar.gz"
+sha512sums="
+626da09ea543dd722129dd7156bb1ba185d40480689d3b0108d89a1a2c9361105822c57e50c39413d1a6ded08f20211b4606b2cb18f5a578c399fda6b00e6abb pyFirmata-1.0.3.tar.gz
+95d990613c3338d1e7e81d846bd0a1343fbaae58b02fd641f8cc05ac25f0fac25a232ca18e8abda075f99ff83564174c09347f83aec0f14338f58b2feb0de6de py311.patch
+"
diff --git a/testing/py3-firmata/py311.patch b/testing/py3-firmata/py311.patch
new file mode 100644
index 00000000000..eba213aacbd
--- /dev/null
+++ b/testing/py3-firmata/py311.patch
@@ -0,0 +1,13 @@
+diff --git a/pyfirmata/pyfirmata.py b/pyfirmata/pyfirmata.py
+index 045efc4..06b0c9d 100755
+--- a/pyfirmata/pyfirmata.py
++++ b/pyfirmata/pyfirmata.py
+@@ -182,7 +182,7 @@ class Board(object):
+
+ def add_cmd_handler(self, cmd, func):
+ """Adds a command handler for a command."""
+- len_args = len(inspect.getargspec(func)[0])
++ len_args = len(inspect.getfullargspec(func)[0])
+
+ def add_meta(f):
+ def decorator(*args, **kwargs):
diff --git a/testing/py3-flake8-blind-except/APKBUILD b/testing/py3-flake8-blind-except/APKBUILD
index de92c4e53af..9f4b4e3962b 100644
--- a/testing/py3-flake8-blind-except/APKBUILD
+++ b/testing/py3-flake8-blind-except/APKBUILD
@@ -2,26 +2,33 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-flake8-blind-except
_pkgname=flake8-blind-except
-pkgver=0.1.1
-pkgrel=3
+pkgver=0.2.1
+pkgrel=4
pkgdesc="Extension for flake8 which checks for blind except: statements"
options="!check" # No testsuite
url="https://github.com/elijahandrews/flake8-blind-except"
arch="noarch"
license="MIT"
depends="py3-flake8 py3-setuptools"
+makedepends="py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-flake8-blind-except" # Backwards compatibility
+replaces="py-flake8-blind-except" # Backwards compatibility
provides="py-flake8-blind-except=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
-sha512sums="3a74e626b87e570a079dd54ac4abbdabf2daa0b5bc64b8205f54747ddb8ce8dd4ded9dd3222307f879dcda8fc9aa47dcfacf401da27d7717888cd3d9691a0513 flake8-blind-except-0.1.1.tar.gz"
+sha512sums="
+0917df4610c6c25319f6382b92f8a2a67519b2a6266f43ae23ea2e44f0416f93cacdd7cc39bb69c817f608becf726839c81c93425ecf66ffb95b49eeb2e0145b flake8-blind-except-0.2.1.tar.gz
+"
diff --git a/testing/py3-flake8-builtins/APKBUILD b/testing/py3-flake8-builtins/APKBUILD
index a84b9ee45d4..f9a5e0bc0d4 100644
--- a/testing/py3-flake8-builtins/APKBUILD
+++ b/testing/py3-flake8-builtins/APKBUILD
@@ -1,27 +1,33 @@
# Contributor: Fabian Affolter <fabian@affolter-engineering.ch>
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-flake8-builtins
-pkgver=1.5.3
-pkgrel=2
+pkgver=2.1.0
+pkgrel=3
pkgdesc="Extension for flake8 to check for builtins"
options="!check" # No testsuite
url="https://github.com/gforcada/flake8-builtins"
arch="noarch"
license="MIT"
depends="py3-flake8"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/f/flake8-builtins/flake8-builtins-$pkgver.tar.gz"
builddir="$srcdir"/flake8-builtins-$pkgver
-replaces="py-flake8-builtins" # Backwards compatibility
+replaces="py-flake8-builtins" # Backwards compatibility
provides="py-flake8-builtins=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
-sha512sums="78f71bac92c8090e54b682684649a98101de6bfdb7d07717fb26c827cead7417ef27f23ed39afc086a19e9f587a0d7c6e86d95f0686d528af5c6594e863c111a flake8-builtins-1.5.3.tar.gz"
+sha512sums="
+66fc3c0740642a02a5b0e8cc4d65eb0e7469a66ccdd725a7f593de10f45f503f336e346fdaa6e8a557340724f5b8f47f18f5a381bd20d65cbadbbe4934a625a2 flake8-builtins-2.1.0.tar.gz
+"
diff --git a/testing/py3-flake8-commas/APKBUILD b/testing/py3-flake8-commas/APKBUILD
deleted file mode 100644
index f7b83804899..00000000000
--- a/testing/py3-flake8-commas/APKBUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-# Contributor: Fabian Affolter <fabian@affolter-engineering.ch>
-# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
-pkgname=py3-flake8-commas
-_pkgname=flake8-commas
-pkgver=2.0.0
-pkgrel=3
-pkgdesc="Extension for flake8 to enforce trailing commas"
-options="!check" # Uses flake8 not flake8-3 to run tests
-url="https://github.com/trevorcreech/flake8-commas"
-arch="noarch"
-license="MIT"
-depends="py3-flake8"
-makedepends="py3-setuptools"
-checkdepends="py3-pytest"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
-builddir="$srcdir"/$_pkgname-$pkgver
-
-replaces="py-flake8-commas" # Bacwards compatibility
-provides="py-flake8-commas=$pkgver-r$pkgrel" # Backwards compatibility
-
-build() {
- python3 setup.py build
-}
-
-check() {
- PYTHONPATH="${PWD}/build/lib" py.test-3
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="454190df8b8068731a8310db69a3b01944600a95d456b133d3746a7d9712cccd4c599b88ccd9b24d74f46843a14752b44c60084f6195e800c5b89891073823d7 flake8-commas-2.0.0.tar.gz"
diff --git a/testing/py3-flake8-copyright/APKBUILD b/testing/py3-flake8-copyright/APKBUILD
index 5436f2ac3e8..73c3bbcba2d 100644
--- a/testing/py3-flake8-copyright/APKBUILD
+++ b/testing/py3-flake8-copyright/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-flake8-copyright
_pkgname=flake8-copyright
-pkgver=0.2.2
+pkgver=0.2.4
pkgrel=3
pkgdesc="Extension for flake8 which checks for copyrights"
options="!check" # No testsuite
@@ -10,18 +10,25 @@ url="https://github.com/savoirfairelinux/flake8-copyright"
arch="noarch"
license="MIT"
depends="py3-flake8 py3-setuptools"
+makedepends="py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-flake8-copyright" # Backwards compatibility
+replaces="py-flake8-copyright" # Backwards compatibility
provides="py-flake8-copyright=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
-sha512sums="8ade49f386e67d14e4b826946b947454cf2502ff249a9ab1d359f61fa42ebc2b17dd465708894cf82ffd153f0be1bed746464220d40d9d4dc1b07940ec280f28 flake8-copyright-0.2.2.tar.gz"
+sha512sums="
+a6ab47e1bb715618f075c51f398e18180404871b3b0faf1c2d30701d5203db6bc23771bf22ffb5bafcd8ee856b9b64237b316bd503ae7dceed6ca284ccd5a74d flake8-copyright-0.2.4.tar.gz
+"
diff --git a/testing/py3-flake8-debugger/APKBUILD b/testing/py3-flake8-debugger/APKBUILD
index 3e9b1e217bb..99f37252913 100644
--- a/testing/py3-flake8-debugger/APKBUILD
+++ b/testing/py3-flake8-debugger/APKBUILD
@@ -2,27 +2,38 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-flake8-debugger
_pkgname=flake8-debugger
-pkgver=3.2.1
-pkgrel=3
+pkgver=4.1.2
+pkgrel=4
pkgdesc="Extension for flake8 which lint for ipdb/pdb statements"
options="!check" # No tests on PyPi, GitHub uses pyproject.toml
url="https://github.com/jbkahn/flake8-debugger"
arch="noarch"
license="MIT"
depends="py3-flake8"
-makedepends="py3-setuptools py3-pytest-runner"
+makedepends="py3-poetry-core py3-pytest-runner py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/f/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-flake8-debugger" # Backwards compatibility
+replaces="py-flake8-debugger" # Backwards compatibility
provides="py-flake8-debugger=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
+
+ # https://github.com/JBKahn/flake8-debugger/issues/30
+ rm -rf "$pkgdir"/usr/lib/python3*/site-packages/pyproject.toml \
+ "$pkgdir"/usr/lib/python3*/site-packages/test_linter.py \
+ "$pkgdir"/usr/lib/python3*/site-packages/__pycache__/test_linter*
}
-sha512sums="0c67007e05f5ec7177bb27869ac4f05def04ecb4c5763b2d6860358f796333e833a5c87a5b6dc357000c9216850be9929de5f1d56297088b8e41039bb4ece18d flake8-debugger-3.2.1.tar.gz"
+sha512sums="
+2f65ebe2c97d144e2104142f5739998e7b09937c27c1710e4a5e26c1837895b834293543f574ac4872229533213d26436cc8598afabf283ede8b4fdc6fdbb1ed flake8-debugger-4.1.2.tar.gz
+"
diff --git a/testing/py3-flake8-import-order/APKBUILD b/testing/py3-flake8-import-order/APKBUILD
index 97243540005..647aa2498ed 100644
--- a/testing/py3-flake8-import-order/APKBUILD
+++ b/testing/py3-flake8-import-order/APKBUILD
@@ -2,27 +2,33 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-flake8-import-order
_pkgname=flake8-import-order
-pkgver=0.18.1
-pkgrel=3
+pkgver=0.18.2
+pkgrel=4
pkgdesc="Extension for flake8 which checks for the ordering of import statements"
options="!check" # Requires unpackaged pylama
-url="https://github.com/public/flake8-import-order"
+url="https://github.com/PyCQA/flake8-import-order"
arch="noarch"
license="MIT"
-depends="py3-flake8"
-makedepends="py3-setuptools"
+depends="py3-flake8 py3-setuptools"
+makedepends="py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-flake8-import-order" # Backwards compatibility
+replaces="py-flake8-import-order" # Backwards compatibility
provides="py-flake8-import-order=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
-sha512sums="f7c6e53d1033214f774b6b169deff2872e6eb36a3656cdd723449561611ad90c0be5fbbd822e1bba9e93f64f83f40fa3823aa5a21c22b9df0b3426f8182239f2 flake8-import-order-0.18.1.tar.gz"
+sha512sums="
+a0367a5ae834fc0d0ee8d65bfec4eb4bdf1039806a69e0be2fc9e9d37b6b413ecc81275f8ecf6bb33b42e31603b02ff0c3c7baefe812dd5c443df54d8fc0d1cd flake8-import-order-0.18.2.tar.gz
+"
diff --git a/testing/py3-flake8-isort/APKBUILD b/testing/py3-flake8-isort/APKBUILD
index 39f4fd7f9c3..aff17ae7197 100644
--- a/testing/py3-flake8-isort/APKBUILD
+++ b/testing/py3-flake8-isort/APKBUILD
@@ -1,28 +1,38 @@
# Contributor: Fabian Affolter <fabian@affolter-engineering.ch>
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-flake8-isort
-_pyname=flake8-isort
-pkgver=4.0.0
-pkgrel=2
+pkgver=6.1.1
+pkgrel=1
pkgdesc="Extension for flake8 which integrates isort"
-options="!check" # No testsuite
url="https://github.com/gforcada/flake8-isort"
arch="noarch"
license="GPL-2.0-only"
depends="py3-flake8 py3-isort"
-makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/f/flake8-isort/flake8-isort-$pkgver.tar.gz"
-builddir="$srcdir"/flake8-isort-$pkgver
+makedepends="py3-gpep517 py3-hatchling"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/f/flake8-isort/flake8_isort-$pkgver.tar.gz"
+builddir="$srcdir/flake8_isort-$pkgver"
replaces="py-flake8-isort" # Backwards compatibility
provides="py-flake8-isort=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py 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 run_tests
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" .dist/*.whl
}
-sha512sums="894899a767c27deb9882d0d885a525613b89598542bceaeb61bb85a45daa836322824f8d4684e14da5f819bdce2e26cc908c9fed744b32d2367bacb5374409bb flake8-isort-4.0.0.tar.gz"
+sha512sums="
+72840b133396524a4a4b514cc72a4ce96007144d3f1950671d7cbfedb27be1bb0d03bebe1281addc3acd70bb08ea269cea1626f17f174fa937d37ebd8e07cfc3 flake8_isort-6.1.1.tar.gz
+"
diff --git a/testing/py3-flake8-polyfill/APKBUILD b/testing/py3-flake8-polyfill/APKBUILD
index 1ec27b1846b..f3066a8500a 100644
--- a/testing/py3-flake8-polyfill/APKBUILD
+++ b/testing/py3-flake8-polyfill/APKBUILD
@@ -1,13 +1,14 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=py3-flake8-polyfill
pkgver=1.0.2
-pkgrel=1
+pkgrel=4
pkgdesc="compatibility helpers for Flake8 plugins that intend to support Flake8 2.x and 3.x simultaneously"
url="https://gitlab.com/pycqa/flake8-polyfill"
arch="all"
license="MIT"
depends="py3-flake8"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/f/flake8-polyfill/flake8-polyfill-$pkgver.tar.gz"
builddir="$srcdir/flake8-polyfill-$pkgver"
@@ -20,7 +21,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="767a599aacbe87328b3e36bd85e0841870760ed9bd95dd3a4a9084edc6f0ae89f8203d565c2b075f16f1db21b647c17b2aa59b08e4702109d7e5f79f36d9f3fa flake8-polyfill-1.0.2.tar.gz"
diff --git a/testing/py3-flake8-print/APKBUILD b/testing/py3-flake8-print/APKBUILD
index ced8e01d0bc..303d08ecc45 100644
--- a/testing/py3-flake8-print/APKBUILD
+++ b/testing/py3-flake8-print/APKBUILD
@@ -2,26 +2,32 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-flake8-print
_pkgname=flake8-print
-pkgver=3.1.0
-pkgrel=3
+pkgver=5.0.0
+pkgrel=5
pkgdesc="Extension for flake8 which lint for print statements"
url="https://github.com/jbkahn/flake8-print"
arch="noarch"
license="MIT"
-depends="py3-flake8 py3-six"
-makedepends="py3-setuptools py3-pytest-runner"
+depends="py3-flake8 python3"
+makedepends="py3-poetry-core py3-pytest-runner py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-flake8-print" # Backwards compatiblity
+replaces="py-flake8-print" # Backwards compatiblity
provides="py-flake8-print=$pkgver-r$pkgrel" # Backwards compatiblity
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
-sha512sums="9d8ea7017eebedf365a45cc3f1bcca2aec73c5257a935cd5d5bc927d5d1f06866b7e072f70e2a8a13e61c3416af6afbaa1fa6225dad087bbdc796656f0eda1f0 flake8-print-3.1.0.tar.gz"
+sha512sums="
+69fd20fa92b795c8efa5971f9e17e6ac579fb642b3c07fafc4143b4d01acc2c577dbba6fd818c8ad92ad60709986777da59b804f2fec768f210a64b88252a987 flake8-print-5.0.0.tar.gz
+"
diff --git a/testing/py3-flake8-quotes/APKBUILD b/testing/py3-flake8-quotes/APKBUILD
deleted file mode 100644
index d8db27d73f3..00000000000
--- a/testing/py3-flake8-quotes/APKBUILD
+++ /dev/null
@@ -1,30 +0,0 @@
-# Contributor: Fabian Affolter <fabian@affolter-engineering.ch>
-# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
-pkgname=py3-flake8-quotes
-pkgver=3.2.0
-pkgrel=3
-pkgdesc="Extension for flake8 which lint for double quotes"
-url="https://github.com/zheller/flake8-quotes/"
-arch="noarch"
-license="MIT"
-depends="py3-flake8"
-makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/f/flake8-quotes/flake8-quotes-$pkgver.tar.gz"
-builddir="$srcdir"/flake8-quotes-$pkgver
-
-replaces="py-flake8-quotes" # Backwards compatiblity
-provides="py-flake8-quotes=$pkgver-r$pkgrel" # Backwards compatiblity
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 setup.py test
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="29e3d73ab8710ae39c5dd610cef60dabcc72312b23a6ae44ff2969426fde8cf3f35b0b5d1445688374fc1236c9eef73a394cf987b7738835a877e6a78d86fdb8 flake8-quotes-3.2.0.tar.gz"
diff --git a/testing/py3-flake8-snippets/APKBUILD b/testing/py3-flake8-snippets/APKBUILD
index 99b9dfe55e9..c667f7c6e65 100644
--- a/testing/py3-flake8-snippets/APKBUILD
+++ b/testing/py3-flake8-snippets/APKBUILD
@@ -3,25 +3,29 @@
pkgname=py3-flake8-snippets
_pkgname=flake8-snippets
pkgver=0.2
-pkgrel=3
+pkgrel=8
pkgdesc="Extension for flake8 which lint for code snippets"
-url="https://github.com/bitmazk/flake8-snippets"
+url="https://github.com/bitlabstudio/flake8-snippets"
arch="noarch"
license="MIT"
depends="py3-flake8"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-flake8-snippets" # Backwards compatibility
+replaces="py-flake8-snippets" # Backwards compatibility
provides="py-flake8-snippets=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="b7a3a335770912da9c162cb002550c299034e08c40b9b64d352b048650d1fe772508b1a226b873e65b8f6fea856fd2a2099e6bb84bc1e121730d19d32eae5e21 flake8-snippets-0.2.tar.gz"
diff --git a/testing/py3-flake8-todo/APKBUILD b/testing/py3-flake8-todo/APKBUILD
index a95e8a06aca..d6a1034237c 100644
--- a/testing/py3-flake8-todo/APKBUILD
+++ b/testing/py3-flake8-todo/APKBUILD
@@ -3,25 +3,29 @@
pkgname=py3-flake8-todo
_pkgname=flake8-todo
pkgver=0.7
-pkgrel=3
+pkgrel=7
pkgdesc="TODO notes checker plugin for flake8"
url="https://github.com/schlamar/flake8-todo"
arch="noarch"
license="MIT"
depends="py3-flake8"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-flake8-todo" # Backwards compatibility
+replaces="py-flake8-todo" # Backwards compatibility
provides="py-flake8-todo=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="d7a2259b531627c8866f1d7c29664f61dcd01a523f55efc851052f8ed5e1bc13108d7011093a1aedda2c343e1b127999aa91f65a5f29b218efc2bfc7064fdd96 flake8-todo-0.7.tar.gz"
diff --git a/testing/py3-flask-accept/APKBUILD b/testing/py3-flask-accept/APKBUILD
new file mode 100644
index 00000000000..b25de7bd78e
--- /dev/null
+++ b/testing/py3-flask-accept/APKBUILD
@@ -0,0 +1,46 @@
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
+pkgname=py3-flask-accept
+_pkgname=flask_accept
+pkgver=0.0.6
+pkgrel=1
+pkgdesc="Custom Accept header routing support for Flask"
+url="https://github.com/di/flask-accept"
+arch="noarch"
+license="MIT"
+depends="
+ py3-flask
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="
+ py3-flake8
+ "
+options="!check"
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/f/flask_accept/flask_accept-$pkgver.tar.gz"
+
+builddir="$srcdir"/$_pkgname-$pkgver
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest -W ignore::DeprecationWarning
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+1f3eff090ee847e27323b62c0c9fffc34c74fc120c4828550caa93403d0462227554a470b565e6d9be045d923682995df1faa342a3df6cc1defdaafaf52b9af0 flask_accept-0.0.6.tar.gz
+"
diff --git a/testing/py3-flask-admin/APKBUILD b/testing/py3-flask-admin/APKBUILD
index 7a00335c0da..a00c403c501 100644
--- a/testing/py3-flask-admin/APKBUILD
+++ b/testing/py3-flask-admin/APKBUILD
@@ -1,10 +1,10 @@
# Contributor: Fabian Affolter <fabian@affolter-engineering.ch>
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-flask-admin
-pkgver=1.5.8
-pkgrel=1
+pkgver=1.6.1
+pkgrel=3
pkgdesc="Flask admin interface"
-url="https://pypi.python.org/pypi/Flask-Admin"
+url="https://pypi.org/project/Flask-Admin"
arch="noarch"
license="BSD-3-Clause"
depends="
@@ -12,21 +12,25 @@ depends="
py3-flask
py3-wtforms
"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/F/Flask-Admin/Flask-Admin-$pkgver.tar.gz"
builddir="$srcdir"/Flask-Admin-$pkgver
-replaces="py-flask-admin" # Backwards compatibility
+replaces="py-flask-admin" # Backwards compatibility
provides="py-flask-admin=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
-53e14ba6992b358280e69580fa9911539fb34069d08f43f658ef54387c6e2b700d3fb6d8e90a9ee3f8f3592eb936b76234b7afd93baa28d683683472e1d01283 Flask-Admin-1.5.8.tar.gz
+3defe8eecaf96a775b93de761ffc51c80950f3dc71d005830aabfb24e019d9c4fc3fe9a69805b7b227b13693708f3aa381206cf1240b9fe5efb28c1bee44503d Flask-Admin-1.6.1.tar.gz
"
diff --git a/testing/py3-flask-autorouter/APKBUILD b/testing/py3-flask-autorouter/APKBUILD
index c0a8b42504c..0571025ccfa 100644
--- a/testing/py3-flask-autorouter/APKBUILD
+++ b/testing/py3-flask-autorouter/APKBUILD
@@ -1,27 +1,32 @@
# Contributor: Fabian Affolter <fabian@affolter-engineering.ch>
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-flask-autorouter
-_pkgname=flask-autorouter
-pkgver=0.2.1
-pkgrel=4
+pkgver=0.2.2
+pkgrel=3
pkgdesc="Flask generating URL routing"
-url="https://pypi.python.org/pypi/flask-autorouter"
+url="https://pypi.org/project/flask-autorouter"
arch="noarch"
license="MIT"
depends="python3 py3-flask"
-makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgname-$pkgver"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/dpep/flask_autorouter/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/flask_autorouter-$pkgver"
-replaces="py-flask-autorouter" # Backwards compatibility
+replaces="py-flask-autorouter" # Backwards compatibility
provides="py-flask-autorouter=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
-sha512sums="d588377c2dafee3e478de2a03b7e5819df4f63e976d12b758e5da52fdeda4ec662538c174a7c0411195f0abaf9e3e7a942d1f571360344fcc296b8e18a682ead flask-autorouter-0.2.1.tar.gz"
+sha512sums="
+b16441cfcd1f25df9f365fbd4db8f57fcc40e16932ba8e27f95b054ed535afbc238685831e5a7086c94a2c2a0c51ee9d996277bf1384089921ebf6d71e32bd3f py3-flask-autorouter-0.2.2.tar.gz
+"
diff --git a/testing/py3-flask-basicauth/APKBUILD b/testing/py3-flask-basicauth/APKBUILD
index 4d64ea795b1..a939ce12048 100644
--- a/testing/py3-flask-basicauth/APKBUILD
+++ b/testing/py3-flask-basicauth/APKBUILD
@@ -3,26 +3,30 @@
pkgname=py3-flask-basicauth
_pkgname=Flask-BasicAuth
pkgver=0.2.0
-pkgrel=4
+pkgrel=9
pkgdesc="Flask HTTP basic access authentication"
options="!check" # Broken testsuite
-url="https://pypi.python.org/pypi/Flask-BasicAuth"
+url="https://pypi.org/project/Flask-BasicAuth"
arch="noarch"
license="BSD-3-Clause"
depends="python3 py3-flask"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-flask-basicauth" # Backwards compatibility
+replaces="py-flask-basicauth" # Backwards compatibility
provides="py-flask-basicauth=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="921b05e273e9a4b06f00cb68b68ddca20328f1a3afd1dd779d973792f1382a2bf2c6a8f70719e097dfa3d00d8e511fc35fba218de3fbb8ed6197ddbaa8027f93 Flask-BasicAuth-0.2.0.tar.gz"
diff --git a/testing/py3-flask-bcrypt/APKBUILD b/testing/py3-flask-bcrypt/APKBUILD
index 7b6d661b7a8..797d9e10b75 100644
--- a/testing/py3-flask-bcrypt/APKBUILD
+++ b/testing/py3-flask-bcrypt/APKBUILD
@@ -2,26 +2,32 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-flask-bcrypt
_pkgname=Flask-Bcrypt
-pkgver=0.7.1
-pkgrel=3
+pkgver=1.0.1
+pkgrel=5
pkgdesc="Flask Bcrypt hashing extension"
-url="https://pypi.python.org/pypi/Flask-Bcrypt"
+url="https://pypi.org/project/Flask-Bcrypt"
arch="noarch"
license="BSD-3-Clause"
depends="python3 py3-flask py3-bcrypt"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-flask-bcrypt" # Backwards compatibility
+replaces="py-flask-bcrypt" # Backwards compatibility
provides="py-flask-bcrypt=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
-sha512sums="05184a6a29f0a45943c435bf025f3f9522a357e88fcf7949f72083f0696b4ca16cb2c8cdb54e7cb266068bb04b1b41b44456ae97641bda930e00d20f3a60e5f3 Flask-Bcrypt-0.7.1.tar.gz"
+sha512sums="
+e7df01d5e2e193e80e12c8cf07fe01a487ab1b3a2f9175533e653636c2a4aa7a4175cbfc456b3251b7c536ab72f9b88c6d407163741807c9965c2b6d842c8203 Flask-Bcrypt-1.0.1.tar.gz
+"
diff --git a/testing/py3-flask-bootstrap/APKBUILD b/testing/py3-flask-bootstrap/APKBUILD
index 45f2fd3358a..b5129a1361b 100644
--- a/testing/py3-flask-bootstrap/APKBUILD
+++ b/testing/py3-flask-bootstrap/APKBUILD
@@ -3,25 +3,29 @@
pkgname=py3-flask-bootstrap
_pkgname=Flask-Bootstrap
pkgver=3.3.7.1
-pkgrel=3
+pkgrel=8
pkgdesc="Flask bootstrap extension"
-url="https://pypi.python.org/pypi/Flask-Bootstrap"
+url="https://pypi.org/project/Flask-Bootstrap"
arch="noarch"
license="BSD-3-Clause and Apache-2.0"
depends="python3 py3-flask py3-dominate py3-visitor"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-flask-bootstrap" # Backwards compatibility
+replaces="py-flask-bootstrap" # Backwards compatibility
provides="py-flask-bootstrap=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="23500d9575de5c52fcfd8a41bb7d5680440a0f1bae25e7a089b7f0e3885304a4c7d5b916f98adbfe80b98c8d107feef0c5c282e7a4bec7038310e778da4ca2e7 Flask-Bootstrap-3.3.7.1.tar.gz"
diff --git a/testing/py3-flask-cache/APKBUILD b/testing/py3-flask-cache/APKBUILD
index 386d7fa3b57..3a8c355b4b8 100644
--- a/testing/py3-flask-cache/APKBUILD
+++ b/testing/py3-flask-cache/APKBUILD
@@ -3,26 +3,30 @@
pkgname=py3-flask-cache
_pkgname=Flask-Cache
pkgver=0.13.1
-pkgrel=4
+pkgrel=9
pkgdesc="Flask cache support"
options="!check" # Testsuite broken
-url="https://pypi.python.org/pypi/Flask-Cache"
+url="https://pypi.org/project/Flask-Cache"
arch="noarch"
license="BSD-3-Clause"
depends="python3 py3-flask"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-flask-cache" # Backwards compatibility
+replaces="py-flask-cache" # Backwards compatibility
provides="py-flask-cache=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="1ef8e1ad7cef40cd75579c17c106cc30f32d3a0f442b11b2aaf350e6045c4483fd885e65d79040f871eaeb9bf6b1a6fc320245172d7199ae0bbfd2f0343d4f56 Flask-Cache-0.13.1.tar.gz"
diff --git a/testing/py3-flask-cdn/APKBUILD b/testing/py3-flask-cdn/APKBUILD
index cfcca19fb1d..d0a7154fc5e 100644
--- a/testing/py3-flask-cdn/APKBUILD
+++ b/testing/py3-flask-cdn/APKBUILD
@@ -3,14 +3,17 @@
pkgname=py3-flask-cdn
_pkgname=Flask-CDN
pkgver=1.5.3
-pkgrel=3
+pkgrel=7
pkgdesc="Flask CDN static files extension"
-url="https://pypi.python.org/pypi/Flask-CDN"
+url="https://pypi.org/project/Flask-CDN"
arch="noarch"
license="MIT"
depends="python3 py3-flask"
makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz
+ assertEquals.patch
+ "
builddir="$srcdir"/$_pkgname-$pkgver
replaces="py-flask-cdn" # Backwards compatibility
@@ -25,7 +28,10 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="dbec6798506876ea098f11236f960c7b557a0174a38330845e7fe8312cd359b104c025aabfc2b8d1d22a095106c9f7c1af6b4cd55a83039b94ed177f1045e3e4 Flask-CDN-1.5.3.tar.gz"
+sha512sums="
+dbec6798506876ea098f11236f960c7b557a0174a38330845e7fe8312cd359b104c025aabfc2b8d1d22a095106c9f7c1af6b4cd55a83039b94ed177f1045e3e4 Flask-CDN-1.5.3.tar.gz
+8afbf6584f0fd64f0c242d112d3e6c97496278c33c5bd70fe722983032957cf5471783a54fea2fedb7674aaf1f843d4e7eb9ca5aff95b90c3122950826e23172 assertEquals.patch
+"
diff --git a/testing/py3-flask-cdn/assertEquals.patch b/testing/py3-flask-cdn/assertEquals.patch
new file mode 100644
index 00000000000..22d0a74598b
--- /dev/null
+++ b/testing/py3-flask-cdn/assertEquals.patch
@@ -0,0 +1,96 @@
+diff --git a/tests/test_flask_cdn.py b/tests/test_flask_cdn.py
+index adc72c5..5640852 100644
+--- a/tests/test_flask_cdn.py
++++ b/tests/test_flask_cdn.py
+@@ -19,3 +19,3 @@ class DefaultsTest(unittest.TestCase):
+ """ Tests CDN_DEBUG default value is correctly set. """
+- self.assertEquals(self.app.config['CDN_DEBUG'], False)
++ self.assertEqual(self.app.config['CDN_DEBUG'], False)
+
+@@ -23,3 +23,3 @@ class DefaultsTest(unittest.TestCase):
+ """ Tests CDN_DOMAIN default value is correctly set. """
+- self.assertEquals(self.app.config['CDN_DOMAIN'], None)
++ self.assertEqual(self.app.config['CDN_DOMAIN'], None)
+
+@@ -27,3 +27,3 @@ class DefaultsTest(unittest.TestCase):
+ """ Tests CDN_HTTPS default value is correctly set. """
+- self.assertEquals(self.app.config['CDN_HTTPS'], None)
++ self.assertEqual(self.app.config['CDN_HTTPS'], None)
+
+@@ -31,3 +31,3 @@ class DefaultsTest(unittest.TestCase):
+ """ Tests CDN_TIMESTAMP default value is correctly set. """
+- self.assertEquals(self.app.config['CDN_TIMESTAMP'], True)
++ self.assertEqual(self.app.config['CDN_TIMESTAMP'], True)
+
+@@ -61,3 +61,3 @@ class UrlTests(unittest.TestCase):
+ # non static endpoint url_for in template
+- self.assertEquals(self.client_get('').get_data(True), '/')
++ self.assertEqual(self.client_get('').get_data(True), '/')
+
+@@ -66,3 +66,3 @@ class UrlTests(unittest.TestCase):
+ exp = 'http://mycdnname.cloudfront.net/static/bah.js'
+- self.assertEquals(self.client_get(ufs).get_data(True), exp)
++ self.assertEqual(self.client_get(ufs).get_data(True), exp)
+
+@@ -74,3 +74,3 @@ class UrlTests(unittest.TestCase):
+ exp = '/static/bah.js'
+- self.assertEquals(self.client_get(ufs).get_data(True), exp)
++ self.assertEqual(self.client_get(ufs).get_data(True), exp)
+
+@@ -84,15 +84,15 @@ class UrlTests(unittest.TestCase):
+ self.app.config['CDN_HTTPS'] = True
+- self.assertEquals(self.client_get(ufs, secure=True).get_data(True),
++ self.assertEqual(self.client_get(ufs, secure=True).get_data(True),
+ https_exp)
+- self.assertEquals(self.client_get(ufs).get_data(True), https_exp)
++ self.assertEqual(self.client_get(ufs).get_data(True), https_exp)
+
+ self.app.config['CDN_HTTPS'] = False
+- self.assertEquals(self.client_get(ufs, secure=True).get_data(True),
++ self.assertEqual(self.client_get(ufs, secure=True).get_data(True),
+ http_exp)
+- self.assertEquals(self.client_get(ufs).get_data(True), http_exp)
++ self.assertEqual(self.client_get(ufs).get_data(True), http_exp)
+
+ self.app.config['CDN_HTTPS'] = None
+- self.assertEquals(self.client_get(ufs, secure=True).get_data(True),
++ self.assertEqual(self.client_get(ufs, secure=True).get_data(True),
+ https_exp)
+- self.assertEquals(self.client_get(ufs).get_data(True), http_exp)
++ self.assertEqual(self.client_get(ufs).get_data(True), http_exp)
+
+@@ -106,3 +106,3 @@ class UrlTests(unittest.TestCase):
+ exp = 'http://mycdnname.cloudfront.net/static/bah.js?t={0}'.format(ts)
+- self.assertEquals(self.client_get(ufs).get_data(True), exp)
++ self.assertEqual(self.client_get(ufs).get_data(True), exp)
+
+@@ -110,3 +110,3 @@ class UrlTests(unittest.TestCase):
+ exp = 'http://mycdnname.cloudfront.net/static/bah.js'
+- self.assertEquals(self.client_get(ufs).get_data(True), exp)
++ self.assertEqual(self.client_get(ufs).get_data(True), exp)
+
+@@ -117,3 +117,3 @@ class UrlTests(unittest.TestCase):
+ exp = 'https://mycdnname.cloudfront.net/static/bah.js'
+- self.assertEquals(self.client_get(ufs, secure=False).get_data(True),
++ self.assertEqual(self.client_get(ufs, secure=False).get_data(True),
+ exp)
+@@ -123,3 +123,3 @@ class UrlTests(unittest.TestCase):
+ exp = 'http://mycdnname.cloudfront.net/static/bah.js'
+- self.assertEquals(self.client_get(ufs, secure=True).get_data(True),
++ self.assertEqual(self.client_get(ufs, secure=True).get_data(True),
+ exp)
+@@ -129,3 +129,3 @@ class UrlTests(unittest.TestCase):
+ exp = '//mycdnname.cloudfront.net/static/bah.js'
+- self.assertEquals(self.client_get(ufs, secure=True).get_data(True),
++ self.assertEqual(self.client_get(ufs, secure=True).get_data(True),
+ exp)
+@@ -161,3 +161,3 @@ class BlueprintTest(unittest.TestCase):
+ exp = 'http://mycdnname.cloudfront.net/static/bah.js?t={0}'.format(ts)
+- self.assertEquals(response.get_data(True), exp)
++ self.assertEqual(response.get_data(True), exp)
+
+@@ -171,3 +171,3 @@ class BlueprintTest(unittest.TestCase):
+ exp = 'http://mycdnname.cloudfront.net/static/bah_bp.js?t={0}'.format(ts)
+- self.assertEquals(response.get_data(True), exp)
++ self.assertEqual(response.get_data(True), exp)
+
diff --git a/testing/py3-flask-components/APKBUILD b/testing/py3-flask-components/APKBUILD
index 533d23c6504..3f67bb35ed2 100644
--- a/testing/py3-flask-components/APKBUILD
+++ b/testing/py3-flask-components/APKBUILD
@@ -3,25 +3,35 @@
pkgname=py3-flask-components
_pkgname=Flask-Components
pkgver=0.1.1
-pkgrel=4
+pkgrel=9
pkgdesc="Flask files discovery extension"
-url="https://pypi.python.org/pypi/Flask-Components"
+url="https://pypi.org/project/Flask-Components"
arch="noarch"
license="MIT"
depends="python3 py3-flask"
-makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz
+ importlib.patch
+ "
builddir="$srcdir"/$_pkgname-$pkgver
+options="!check"
-replaces="py-flask-components" # Backwards compatibility
+replaces="py-flask-components" # Backwards compatibility
provides="py-flask-components=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
-sha512sums="ba93d8080939c9e754c801e9860940b029a853a2f591772be497e6884d9fb443c67b945cf452f530a74e1b3cc7123e7d18432df7002bf60284d58a0f9d036657 Flask-Components-0.1.1.tar.gz"
+sha512sums="
+ba93d8080939c9e754c801e9860940b029a853a2f591772be497e6884d9fb443c67b945cf452f530a74e1b3cc7123e7d18432df7002bf60284d58a0f9d036657 Flask-Components-0.1.1.tar.gz
+67e9958191c8528a5d9294619bafa0366804f0515901dc9167b685bc892bca48b9aa05fa680d1b142e19169212206c0aa2ed0ecd771d7371132fd769a672169b importlib.patch
+"
diff --git a/testing/py3-flask-components/importlib.patch b/testing/py3-flask-components/importlib.patch
new file mode 100644
index 00000000000..f2bb0d8e683
--- /dev/null
+++ b/testing/py3-flask-components/importlib.patch
@@ -0,0 +1,15 @@
+diff --git a/setup.py b/setup.py
+index 051e9f6..0421483 100644
+--- a/setup.py
++++ b/setup.py
+@@ -3,4 +3,3 @@
+ from setuptools import setup, find_packages
+-from imp import load_source
+-
++from importlib.machinery import SourceFileLoader
+
+@@ -8,3 +7,3 @@ setup(
+ name='Flask-Components',
+- version=load_source('', 'src/flask_components/_version.py').__version__,
++ version=SourceFileLoader('', 'src/flask_components/_version.py').load_module().__version__,
+ description='A simple flask extension to discover files in a declared '
diff --git a/testing/py3-flask-compress/APKBUILD b/testing/py3-flask-compress/APKBUILD
deleted file mode 100644
index 5fdb9bb33c2..00000000000
--- a/testing/py3-flask-compress/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Contributor: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-# Maintainer: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-pkgname=py3-flask-compress
-_pkgorig=Flask-Compress
-pkgver=1.12
-pkgrel=0
-pkgdesc="Compress responses of your Flask application"
-url="https://github.com/colour-science/flask-compress"
-arch="noarch"
-license="MIT"
-depends="python3 py3-brotli py3-flask"
-makedepends="py3-setuptools py3-setuptools_scm py3-build py3-installer py3-wheel"
-checkdepends="py3-pytest"
-source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/F/Flask-Compress/Flask-Compress-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgorig-$pkgver"
-
-build() {
- python3 -m build --wheel --no-isolation
-}
-
-check() {
- python3 -m pytest
-}
-
-package() {
- python3 -m installer --destdir="$pkgdir" dist/*.whl
-}
-
-sha512sums="
-5712aff44aaaa379656e03f7b63fdef727721245cb9329e698a2e25aefca21a77202f5eb0c5f5828395647c694a5b417778a7b5db9eb592753a979d3994603a5 py3-flask-compress-1.12.tar.gz
-"
diff --git a/testing/py3-flask-dbconfig/APKBUILD b/testing/py3-flask-dbconfig/APKBUILD
index 5252810e938..500a0284797 100644
--- a/testing/py3-flask-dbconfig/APKBUILD
+++ b/testing/py3-flask-dbconfig/APKBUILD
@@ -3,26 +3,30 @@
pkgname=py3-flask-dbconfig
_pkgname=Flask-DBConfig
pkgver=0.3.12
-pkgrel=4
+pkgrel=8
pkgdesc="Flask local DB extension"
options="!check" # No testsuite
url="https://github.com/tedw4rd/flask-db-configuration/"
arch="noarch"
license="MIT"
depends="python3 py3-flask"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-flask-dbconfig" # Backwards compatibility
+replaces="py-flask-dbconfig" # Backwards compatibility
provides="py-flask-dbconfig=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="3fd006e4dde523fc12a446aa8c42fb0e69e22d43b303ecd0556433cf6ddbcbbefdbac9a0f2a87236901baab14b42df9a146ee4d44c0ae7014ad24d7b8722b6f4 Flask-DBConfig-0.3.12.tar.gz"
diff --git a/testing/py3-flask-flatpages/APKBUILD b/testing/py3-flask-flatpages/APKBUILD
index 032fc4cb474..c0fded4cbe1 100644
--- a/testing/py3-flask-flatpages/APKBUILD
+++ b/testing/py3-flask-flatpages/APKBUILD
@@ -1,29 +1,33 @@
# Contributor: Fabian Affolter <fabian@affolter-engineering.ch>
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-flask-flatpages
-pkgver=0.7.3
-pkgrel=1
+pkgver=0.8.2
+pkgrel=2
pkgdesc="Flask static pages extension"
-url="https://pypi.python.org/pypi/Flask-FlatPages"
+url="https://pypi.org/project/Flask-FlatPages"
arch="noarch"
license="BSD-3-Clause"
depends="python3 py3-flask py3-jinja2 py3-markdown py3-yaml"
-makedepends="py3-setuptools py3-pytest-runner"
+makedepends="py3-setuptools py3-pytest-runner py3-gpep517 py3-wheel"
checkdepends="py3-pygments"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/F/Flask-FlatPages/Flask-FlatPages-$pkgver.tar.gz"
builddir="$srcdir"/Flask-FlatPages-$pkgver
-replaces="py-flask-flatpages" # Backwards compatibility
+replaces="py-flask-flatpages" # Backwards compatibility
provides="py-flask-flatpages=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
-9d75ba2ed2273aaff26beee203271e1b6e3fe41d7b319ee69d2337e8151582be85d95288bcfff7e7b4907b7824f9aa4bb2019f8050b137195e9ad5fae8291efa Flask-FlatPages-0.7.3.tar.gz
+b46d32df54b08a91a5f0a8f9c311bb1d86a6f88270125f251c6b22d2c5c59ecf72c2cb52e9257d9ed2a3f64c324d087b7d2f93154ced832ff28837bc6c22a919 Flask-FlatPages-0.8.2.tar.gz
"
diff --git a/testing/py3-flask-gzip/APKBUILD b/testing/py3-flask-gzip/APKBUILD
index 089a85f1d2c..f2b0c76a52d 100644
--- a/testing/py3-flask-gzip/APKBUILD
+++ b/testing/py3-flask-gzip/APKBUILD
@@ -3,22 +3,26 @@
pkgname=py3-flask-gzip
_pkgname=Flask-gzip
pkgver=0.2
-pkgrel=3
+pkgrel=8
pkgdesc="Compress responses in your Flask app with gzip"
-url="https://pypi.python.org/pypi/Flask-gzip"
+url="https://pypi.org/project/Flask-gzip"
arch="noarch"
license="BSD-3-Clause"
depends="py3-flask"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="0625fcab11c607209a8b95455621e347bd71d5be47ae1af09f11f284d495f29d0e23b7f228eeca9bed1615fffa48f036eddfdf2abab78b81b0d693a9b0b94fd8 Flask-gzip-0.2.tar.gz"
diff --git a/testing/py3-flask-headers/APKBUILD b/testing/py3-flask-headers/APKBUILD
index 4f9d0608ba8..e85f50fb931 100644
--- a/testing/py3-flask-headers/APKBUILD
+++ b/testing/py3-flask-headers/APKBUILD
@@ -3,26 +3,30 @@
pkgname=py3-flask-headers
_pkgname=Flask-Headers
pkgver=1.0
-pkgrel=4
+pkgrel=9
pkgdesc="Flask headers extension"
options="!check" # No testsuite on PYPI, no GitHub tarballs
-url="https://pypi.python.org/pypi/Flask-Headers"
+url="https://pypi.org/project/Flask-Headers"
arch="noarch"
license="MIT"
depends="python3 py3-flask"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-flask-headers" # Backwards compatibility
+replaces="py-flask-headers" # Backwards compatibility
provides="py-flask-headers=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="aae3088745970575464dc93bb0198a461ac218f4b9d2396a9ff7b950610f191453341f6d434ba7636d44f54a6d8fd0b3e000dba36c272d80c3d85242e029a48b Flask-Headers-1.0.tar.gz"
diff --git a/testing/py3-flask-htmlmin/APKBUILD b/testing/py3-flask-htmlmin/APKBUILD
deleted file mode 100644
index bda6cc3cba6..00000000000
--- a/testing/py3-flask-htmlmin/APKBUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-# Contributor: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-# Maintainer: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-pkgname=py3-flask-htmlmin
-_pkgorig=Flask-HTMLmin
-pkgver=2.2.0
-pkgrel=0
-pkgdesc="Minify flask text/html mime type responses"
-url="https://github.com/hamidfzm/Flask-HTMLmin"
-arch="noarch"
-license="BSD-3-Clause"
-depends="python3 cssmin htmlmin py3-flask"
-makedepends="py3-setuptools py3-pytest py3-pytest-runner"
-# temporarily moved to makedepends for riscv64
-#checkdepends="py3-pytest py3-pytest-runner"
-source="$pkgname-$pkgver.tar.gz::https://github.com/hamidfzm/Flask-HTMLmin/archive/refs/tags/v$pkgver.tar.gz"
-builddir="$srcdir/$_pkgorig-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- pytest
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-24287ef93e99a16e7dde35ba6b7b8fefa06f11ce30fb47969313c3e0e1135ac8a2685aac06bc430d3253162f4f2bc7e8eed90ddda2092bbad092d4e0d09cb4fc py3-flask-htmlmin-2.2.0.tar.gz
-"
diff --git a/testing/py3-flask-httpauth/APKBUILD b/testing/py3-flask-httpauth/APKBUILD
index 97311b032c8..c7dc061fd8f 100644
--- a/testing/py3-flask-httpauth/APKBUILD
+++ b/testing/py3-flask-httpauth/APKBUILD
@@ -1,14 +1,16 @@
# Contributor: Fabian Affolter <fabian@affolter-engineering.ch>
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-flask-httpauth
-pkgver=4.4.0
-pkgrel=1
+pkgver=4.8.0
+pkgrel=2
pkgdesc="Basic and Digest HTTP authentication for Flask routes"
-url="https://pypi.python.org/pypi/Flask-HTTPAuth"
+url="https://pypi.org/project/Flask-HTTPAuth"
arch="noarch"
license="MIT"
depends="py3-flask python3"
-makedepends="py3-setuptools"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+checkdepends="py3-pytest py3-pytest-asyncio py3-asgiref"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/F/Flask-HTTPAuth/Flask-HTTPAuth-$pkgver.tar.gz"
builddir="$srcdir"/Flask-HTTPAuth-$pkgver
@@ -16,17 +18,22 @@ replaces="py-flask-httpauth" # Backwards compatibility
provides="py-flask-httpauth=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- python3 setup.py test
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/Flask_HTTPAuth*.whl
}
sha512sums="
-de5d13f81b8fcabafaaf62756ff03b30ed01b873d5a9fc850c42d30059aa5f2e489c4ebc46fd11e625eaf8b59a84f5a8a84156167e4ccd5f9f5f8c8281bbb4e8 Flask-HTTPAuth-4.4.0.tar.gz
+15878f45faf6bdde43d7b588539b044d621ba1ba590880e3d0a3bccf4e9bd04b898b3372775e99577b7e7955c4b6d2d7cc80df19ba30415c6b7c1d3183b7e5f4 Flask-HTTPAuth-4.8.0.tar.gz
"
diff --git a/testing/py3-flask-json-schema/APKBUILD b/testing/py3-flask-json-schema/APKBUILD
index adbaf68a446..92ce2df61c5 100644
--- a/testing/py3-flask-json-schema/APKBUILD
+++ b/testing/py3-flask-json-schema/APKBUILD
@@ -2,23 +2,27 @@
# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=py3-flask-json-schema
pkgver=0.0.5
-pkgrel=0
+pkgrel=4
pkgdesc="Flask extension to validate JSON requests"
url="https://pypi.org/project/flask-json-schema/"
-arch="all"
+arch="noarch"
license="MIT"
-depends="python3 py3-flask py3-jsonschema"
-makedepends="py3-setuptools py3-wheel"
+depends="py3-flask py3-jsonschema"
+makedepends="py3-setuptools py3-wheel py3-gpep517"
+subpackages="$pkgname-pyc"
source="https://pypi.org/packages/source/f/flask-json-schema/Flask-json-schema-$pkgver.tar.gz"
builddir="$srcdir/Flask-json-schema-$pkgver"
options="!check" # no tests provided
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
diff --git a/testing/py3-flask-limiter/APKBUILD b/testing/py3-flask-limiter/APKBUILD
new file mode 100644
index 00000000000..491f4cfba09
--- /dev/null
+++ b/testing/py3-flask-limiter/APKBUILD
@@ -0,0 +1,50 @@
+# Contributor: lauren n. liberda <lauren@selfisekai.rocks>
+# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
+pkgname=py3-flask-limiter
+pkgver=3.5.0
+pkgrel=1
+pkgdesc="Rate Limiting extension for Flask"
+url="https://github.com/alisaifee/flask-limiter"
+arch="noarch"
+license="MIT"
+depends="
+ py3-flask
+ py3-limits
+ py3-ordered-set
+ py3-rich
+ python3
+ "
+makedepends="py3-setuptools"
+checkdepends="
+ py3-flask-restful
+ py3-flask-restx
+ py3-limits-mongodb
+ py3-limits-redis
+ py3-pytest
+ py3-pytest-cov
+ "
+options="!check" # tests depend on unpackaged modules
+subpackages="$pkgname-pyc"
+source="
+ https://github.com/alisaifee/flask-limiter/archive/refs/tags/$pkgver/flask-limiter-$pkgver.tar.gz
+
+ our-std-is-good-enough.patch
+ "
+builddir="$srcdir/flask-limiter-$pkgver"
+
+build() {
+ python3 setup.py build
+}
+
+check() {
+ pytest
+}
+
+package() {
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+sha512sums="
+f97fd830fd0bbb2186c82451643413420be93872ed17d71d20c830a76ec3aee999bcda3a07b9d27d4602ef5fcd33f78888dc5d75c220eae5cb83ef02853151e6 flask-limiter-3.5.0.tar.gz
+1b90e9134076cda249695d5ea741db9d205a2ae452c7d6edfe01eb37a221ce6f64b0e8ddcdbbee9b0e0fb16a28e5eabf14f1c1e41e965c7e3b93ea4f42caf553 our-std-is-good-enough.patch
+"
diff --git a/testing/py3-flask-limiter/our-std-is-good-enough.patch b/testing/py3-flask-limiter/our-std-is-good-enough.patch
new file mode 100644
index 00000000000..664143fae57
--- /dev/null
+++ b/testing/py3-flask-limiter/our-std-is-good-enough.patch
@@ -0,0 +1,22 @@
+--- ./flask_limiter/typing.py.orig
++++ ./flask_limiter/typing.py
+@@ -11,7 +11,7 @@
+ cast,
+ )
+
+-from typing_extensions import ParamSpec
++from typing import ParamSpec
+
+ R = TypeVar("R")
+ P = ParamSpec("P")
+--- ./flask_limiter/commands.py.orig
++++ ./flask_limiter/commands.py
+@@ -14,7 +14,7 @@
+ from rich.table import Table
+ from rich.theme import Theme
+ from rich.tree import Tree
+-from typing_extensions import TypedDict
++from typing import TypedDict
+ from werkzeug.exceptions import MethodNotAllowed, NotFound
+ from werkzeug.routing import Rule
+
diff --git a/testing/py3-flask-loopback/APKBUILD b/testing/py3-flask-loopback/APKBUILD
index 864bca470a4..5848d8795a4 100644
--- a/testing/py3-flask-loopback/APKBUILD
+++ b/testing/py3-flask-loopback/APKBUILD
@@ -3,25 +3,29 @@
pkgname=py3-flask-loopback
_pkgname=Flask-Loopback
pkgver=1.4.7
-pkgrel=2
+pkgrel=7
pkgdesc="A library to create requests without network connection"
-url="https://pypi.python.org/pypi/Flask-Loopback"
+url="https://pypi.org/project/Flask-Loopback"
arch="noarch"
license="BSD-3-Clause"
depends="python3 py3-flask py3-requests py3-urlobject"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-flask-loopback" # Backwards compatibility
+replaces="py-flask-loopback" # Backwards compatibility
provides="py-flask-loopback=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="556f6182fabeabff3b173ee030f1986c4a791760e388ae5352b883a3ad79e3495ae9a3a7e3ee3826de149665609ba01f25fb993cebe4ea8d63ef5c14c18f57df Flask-Loopback-1.4.7.tar.gz"
diff --git a/testing/py3-flask-mailman/APKBUILD b/testing/py3-flask-mailman/APKBUILD
new file mode 100644
index 00000000000..c064333081b
--- /dev/null
+++ b/testing/py3-flask-mailman/APKBUILD
@@ -0,0 +1,35 @@
+# Maintainer: Cowington Post <cowingtonpost@gmail.com>
+pkgname=py3-flask-mailman
+pkgver=1.0.0
+pkgrel=1
+pkgdesc="Porting Django's email implementation to your Flask applications"
+url="https://waynerv.github.io/flask-mailman/"
+arch="noarch"
+license="BSD-3-Clause"
+depends="py3-flask"
+makedepends="py3-gpep517 py3-poetry-core py3-wheel"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="https://github.com/waynerv/flask-mailman/archive/v$pkgver/py3-flask-mailman-$pkgver.tar.gz"
+builddir="$srcdir/flask-mailman-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+4ce9e4d6075c90d9e9dca19942c829bcaf74079f866d62799e659a3f593152412f7c8c847aafb6d09a7c1e9f1ab290a77878bcecd75e8e6270037dd60c1c76f5 py3-flask-mailman-1.0.0.tar.gz
+"
diff --git a/testing/py3-flask-markdown/APKBUILD b/testing/py3-flask-markdown/APKBUILD
index 16555bb98a1..8c8ee78d854 100644
--- a/testing/py3-flask-markdown/APKBUILD
+++ b/testing/py3-flask-markdown/APKBUILD
@@ -3,25 +3,29 @@
pkgname=py3-flask-markdown
_pkgname=Flask-Markdown
pkgver=0.3
-pkgrel=3
+pkgrel=8
pkgdesc="Flask markdown extension"
-url="https://pypi.python.org/pypi/Flask-Markdown"
+url="https://pypi.org/project/Flask-Markdown"
arch="noarch"
license="BSD-3-Clause"
depends="python3 py3-flask py3-markdown"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-flask-markdown" # Backwards compatibility
+replaces="py-flask-markdown" # Backwards compatibility
provides="py-flask-markdown=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="0d95217bbbf34aca2027b51cbf5114fbd6a5a695fd7caaf4427ea9244ddd188b5a509bf86cfb98479068691fcc04d0b5747a2b2ac7059b13d868237a168f398a Flask-Markdown-0.3.tar.gz"
diff --git a/testing/py3-flask-migrate/APKBUILD b/testing/py3-flask-migrate/APKBUILD
index 705445e9e65..50bae4cc8dc 100644
--- a/testing/py3-flask-migrate/APKBUILD
+++ b/testing/py3-flask-migrate/APKBUILD
@@ -1,30 +1,46 @@
-# Contributor:
+# Contributor: Steven Guikal <void@fluix.one>
# Maintainer: Philipp Glaum <p@pglaum.de>
pkgname=py3-flask-migrate
_pkgname=Flask-Migrate
-pkgver=3.0.1
+pkgver=4.0.5
pkgrel=1
pkgdesc="SQLAlchemy database migrations for Flask applications using Alembic"
url="https://pypi.org/project/Flask-Migrate/"
arch="noarch"
license="MIT"
-depends="python3 py3-flask py3-flask-sqlalchemy py3-alembic"
-makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
+depends="
+ py3-alembic
+ py3-flask
+ py3-flask-sqlalchemy
+ python3
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="$_pkgname-$pkgver.tar.gz::https://github.com/miguelgrinberg/Flask-Migrate/archive/refs/tags/v$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- python3 setup.py test
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ PYTHONPATH="$PWD/src" .testenv/bin/python3 -m pytest
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
-cefad924e471730778dfca16da665b499733ff236ad2d499e27094b1caf73da5d6c8d667fe51bb5fc353ec9954e6952a22bb85c223ce9a4009d5a6e831284421 Flask-Migrate-3.0.1.tar.gz
+cdc02e3f567119604e56e9cafed3e7b40e7335d4c3f42cffb26515a4cec12ff34c16f8d5ae036d841cf846985973980d820cdc5d87a99ebf634b3b17becaeb69 Flask-Migrate-4.0.5.tar.gz
"
diff --git a/testing/py3-flask-paginate/APKBUILD b/testing/py3-flask-paginate/APKBUILD
index e6b40226d3a..5f2a692fbbf 100644
--- a/testing/py3-flask-paginate/APKBUILD
+++ b/testing/py3-flask-paginate/APKBUILD
@@ -2,25 +2,29 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-flask-paginate
pkgver=0.8.1
-pkgrel=1
+pkgrel=6
pkgdesc="Simple paginate support for Flask"
-url="https://pypi.python.org/pypi/Flask-paginate"
+url="https://pypi.org/project/Flask-paginate"
arch="noarch"
license="BSD-3-Clause"
depends="python3 py3-flask"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/lixxu/flask-paginate/archive/$pkgver.tar.gz"
builddir="$srcdir"/flask-paginate-$pkgver
-replaces="py-flask-paginate" # Backwards compatibility
+replaces="py-flask-paginate" # Backwards compatibility
provides="py-flask-paginate=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
diff --git a/testing/py3-flask-peewee/APKBUILD b/testing/py3-flask-peewee/APKBUILD
index e1d2d91ce23..cd2fccefb3a 100644
--- a/testing/py3-flask-peewee/APKBUILD
+++ b/testing/py3-flask-peewee/APKBUILD
@@ -3,24 +3,28 @@
pkgname=py3-flask-peewee
_pkgname=flask-peewee
pkgver=3.0.4
-pkgrel=1
+pkgrel=6
pkgdesc="Flask integration for peewee"
-url="http://pypi.python.org/pypi/flask-peewee"
+url="https://pypi.org/project/flask-peewee"
arch="noarch"
license="MIT"
depends="py3-flask py3-jinja2 py3-peewee py3-werkzeug py3-wtf-peewee
py3-wtforms"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
diff --git a/testing/py3-flask-principal/APKBUILD b/testing/py3-flask-principal/APKBUILD
index 10d72bd84f1..bd64616063d 100644
--- a/testing/py3-flask-principal/APKBUILD
+++ b/testing/py3-flask-principal/APKBUILD
@@ -3,30 +3,36 @@
pkgname=py3-flask-principal
_pkgname=flask-principal
pkgver=0.4.0
-pkgrel=4
+pkgrel=8
pkgdesc="Flask Identity management"
url="https://pythonhosted.org/Flask-Principal/"
arch="noarch"
license="MIT"
depends="python3 py3-blinker py3-flask"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
checkdepends="py3-nose"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/mattupstate/flask-principal/archive/$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-flask-principal" # Backwards compatibility
+replaces="py-flask-principal" # Backwards compatibility
provides="py-flask-principal=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- nosetests
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ gpep517 install-wheel --destdir .testenv --prefix '' .dist/*.whl
+ .testenv/bin/python3 -m nose
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="ed8cb28c4e8d936de96db0bf9f7cb45b253dc204c4b8f8dd8022ef1552592ff6324b4a33d3ee862794a6e20eb8c32a0365e7b9397d427da5022c5ded3dfa308a py3-flask-principal-0.4.0.tar.gz"
diff --git a/testing/py3-flask-qrcode/APKBUILD b/testing/py3-flask-qrcode/APKBUILD
index 6a9bd0ff2de..14fe6e39087 100644
--- a/testing/py3-flask-qrcode/APKBUILD
+++ b/testing/py3-flask-qrcode/APKBUILD
@@ -2,29 +2,35 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-flask-qrcode
_pkgname=Flask-QRcode
-pkgver=3.0.0
-pkgrel=1
+pkgver=3.1.0
+pkgrel=4
pkgdesc="Simple flask extension to render QR codes on template"
url="https://github.com/marcoagner/Flask-QRcode"
arch="noarch"
license="GPL-3.0-or-later"
depends="py3-flask py3-qrcode"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-flask-qrcode" # Backwards compatibility
+replaces="py-flask-qrcode" # Backwards compatibility
provides="py-flask-qrcode=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
+
+ rm -rf "$pkgdir"/usr/lib/python3*/site-packages/tests
}
sha512sums="
-25bddd05a2a5d11642c4777864215bc968270b4ee7a25d93f6760b22f7689f89316dc1e5c16be6a4545919a0318bc76f0e91b8d37e2c225f8854be6f6b4495e3 Flask-QRcode-3.0.0.tar.gz
+399555827132ff08911691cafaf33feb4ed4c66eba1d880f56b1a91d4ffbcdbe5f7ed0abe4a4c7972eff8103d410455bb333232ac596f6bc25cd51df0c0d7a79 Flask-QRcode-3.1.0.tar.gz
"
diff --git a/testing/py3-flask-restaction/APKBUILD b/testing/py3-flask-restaction/APKBUILD
index 5fdf992822d..9cf60085f99 100644
--- a/testing/py3-flask-restaction/APKBUILD
+++ b/testing/py3-flask-restaction/APKBUILD
@@ -3,26 +3,30 @@
pkgname=py3-flask-restaction
_pkgname=flask-restaction
pkgver=0.25.3
-pkgrel=3
+pkgrel=8
pkgdesc="Flask RESTful API extension"
-url="https://pypi.python.org/pypi/flask-restaction"
+url="https://pypi.org/project/flask-restaction"
arch="noarch"
license="MIT"
# Has missing dependencies
depends="python3 py3-flask"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-flask-restaction" # Backwards compatibility
+replaces="py-flask-restaction" # Backwards compatibility
provides="py-flask-restaction=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="ac49d7547b036be9d0f40a632afce4df8718e2cb2cd205f93fd8ee6f560b894f8bc07fa00907ac92824d97001c4d8b9c99f92414ba69f4dbfe6a4e5955251c4e flask-restaction-0.25.3.tar.gz"
diff --git a/testing/py3-flask-restful/APKBUILD b/testing/py3-flask-restful/APKBUILD
deleted file mode 100644
index 724b039baed..00000000000
--- a/testing/py3-flask-restful/APKBUILD
+++ /dev/null
@@ -1,29 +0,0 @@
-# Contributor: Fabian Affolter <fabian@affolter-engineering.ch>
-# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
-pkgname=py3-flask-restful
-_pkgname=Flask-RESTful
-pkgver=0.3.9
-pkgrel=1
-pkgdesc="Flask RESTful API extension"
-url="https://pypi.python.org/pypi/Flask-RESTful"
-arch="noarch"
-license="BSD-3-Clause"
-depends="python3 py3-flask"
-makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
-builddir="$srcdir"/$_pkgname-$pkgver
-
-replaces="py-flask-restful" # Backwards compatibility
-provides="py-flask-restful=$pkgver-r$pkgrel" # Backwards compatibility
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-b3cab1ca9451c4fddaa30dc5fda6dc4c36d01ec4ee684f433f76935e66fad71b870880a4f197cdc7af8f5786ae630e014f2571635a7e20a13a50ee8b270dd734 Flask-RESTful-0.3.9.tar.gz
-"
diff --git a/testing/py3-flask-restless/APKBUILD b/testing/py3-flask-restless/APKBUILD
index 39e74d8782b..b37b23d04c1 100644
--- a/testing/py3-flask-restless/APKBUILD
+++ b/testing/py3-flask-restless/APKBUILD
@@ -3,25 +3,29 @@
pkgname=py3-flask-restless
_pkgname=Flask-Restless
pkgver=0.17.0
-pkgrel=4
+pkgrel=9
pkgdesc="Flask ReSTful API generation extension"
-url="https://pypi.python.org/pypi/Flask-Restless"
+url="https://pypi.org/project/Flask-Restless"
arch="noarch"
license="AGPL-3.0-or-later OR BSD-3-Clause"
depends="python3 py3-flask"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-flask-restless" # Backwards compatibility
+replaces="py-flask-restless" # Backwards compatibility
provides="py-flask-restless=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="c7fc7ee0626f010af528fce02dcfb896673c5ba81e9815acc50f5060a826a95a7f5c5af966a3bc6f222416d161dad70cad25acb43e9575621d036f0315d526d3 Flask-Restless-0.17.0.tar.gz"
diff --git a/testing/py3-flask-security/APKBUILD b/testing/py3-flask-security/APKBUILD
new file mode 100644
index 00000000000..0c75cb9c8f0
--- /dev/null
+++ b/testing/py3-flask-security/APKBUILD
@@ -0,0 +1,61 @@
+# Maintainer: Cowington Post <cowingtonpost@gmail.com>
+pkgname=py3-flask-security
+pkgver=5.4.3
+pkgrel=1
+pkgdesc="Quick and simple security for Flask applications"
+url="https://github.com/Flask-Middleware/flask-security"
+arch="noarch"
+license="MIT"
+depends="
+ py3-email-validator
+ py3-flask
+ py3-flask-babel
+ py3-flask-login
+ py3-flask-mailman
+ py3-flask-principal
+ py3-flask-sqlalchemy
+ py3-flask-wtf
+ py3-itsdangerous
+ py3-passlib
+ py3-phonenumbers
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="
+ py3-dateutil
+ py3-pytest
+ py3-pytest-xdist
+ "
+subpackages="$pkgname-pyc"
+source="https://github.com/Flask-Middleware/flask-security/archive/$pkgver/py3-flask-security-$pkgver.tar.gz
+ nowarnings.patch
+ remove_importlib_resources.patch
+ "
+builddir="$srcdir/flask-security-$pkgver"
+options="!check" # tests broken
+
+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 -n auto
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+9fdce3dfbfd622ae417166da383bb8bf744648b92026b4f28640e6658d355d25f7267382636bc1a5cc47969a7c0ebdd43d66b29aaafdd0cf7a6cafb248aff7a6 py3-flask-security-5.4.3.tar.gz
+5d0367c29f69362b1df536f26a7f399c25a351c46572cc37ffc5526c124a860a8fc0a0b01b19483daded64990247a0e48761c25e6b2a9316fbd293088315d016 nowarnings.patch
+1d77cf6d7a57100a072a788cd1e4b362f3ff8fe6e4cce8fdf777f1891ce365d9d7958e956f8c7b6ff9c1079234e21b095a6cb99ed687cd907ad8cc86030da36d remove_importlib_resources.patch
+"
diff --git a/testing/py3-flask-security/nowarnings.patch b/testing/py3-flask-security/nowarnings.patch
new file mode 100644
index 00000000000..36d0daae88a
--- /dev/null
+++ b/testing/py3-flask-security/nowarnings.patch
@@ -0,0 +1,12 @@
+diff --git a/pytest.ini b/pytest.ini
+index 6272c1f..3511a1d 100644
+--- a/pytest.ini
++++ b/pytest.ini
+@@ -16,7 +16,6 @@ markers =
+ webauthn
+
+ filterwarnings =
+- error
+ ignore::DeprecationWarning:mongoengine:
+ ignore::DeprecationWarning:flask_login:0
+ ignore::DeprecationWarning:pydantic_core:0
diff --git a/testing/py3-flask-security/remove_importlib_resources.patch b/testing/py3-flask-security/remove_importlib_resources.patch
new file mode 100644
index 00000000000..f563d8f8b32
--- /dev/null
+++ b/testing/py3-flask-security/remove_importlib_resources.patch
@@ -0,0 +1,13 @@
+diff --git a/flask_security/babel.py b/flask_security/babel.py
+index 44c6d2f..c4a29bf 100644
+--- a/flask_security/babel.py
++++ b/flask_security/babel.py
+@@ -18,7 +18,7 @@
+ from collections.abc import Iterable
+ import atexit
+ from contextlib import ExitStack
+-from importlib_resources import files, as_file
++from importlib.resources import files, as_file
+
+ import typing as t
+
diff --git a/testing/py3-flask-sqlalchemy/APKBUILD b/testing/py3-flask-sqlalchemy/APKBUILD
deleted file mode 100644
index 218fcc8ca21..00000000000
--- a/testing/py3-flask-sqlalchemy/APKBUILD
+++ /dev/null
@@ -1,30 +0,0 @@
-# Contributor:
-# Maintainer: Philipp Glaum <p@pglaum.de>
-pkgname=py3-flask-sqlalchemy
-_pkgname=Flask-SQLAlchemy
-pkgver=2.5.1
-pkgrel=2
-pkgdesc="Adds SQLAlchemy support to your Flask application."
-url="https://pypi.org/project/Flask-SQLAlchemy/"
-arch="noarch"
-license="BSD-3-Clause"
-depends="python3 py3-flask py3-greenlet py3-sqlalchemy"
-makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgname-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 setup.py test
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-5d483418204030837e62769d45c16af88c5be6dbafc7c340cc4e67ef1736ea5102f506156119864cd7673cf382b0d3f27050bda64273b93ef4805fce9e1a0f6f Flask-SQLAlchemy-2.5.1.tar.gz
-"
diff --git a/testing/py3-flask-themer/APKBUILD b/testing/py3-flask-themer/APKBUILD
index b3ae65d3abd..d8664fee0e2 100644
--- a/testing/py3-flask-themer/APKBUILD
+++ b/testing/py3-flask-themer/APKBUILD
@@ -2,10 +2,10 @@
# Maintainer: Éloi Rivard <eloi.rivard@aquilenet.fr>
pkgname=py3-flask-themer
_pyname=flask-themer
-pkgver=1.4.3
+pkgver=2.0.0
pkgrel=1
pkgdesc="Simple theme mechanism for Flask"
-url="http://packages.python.org/pypi/flask-themer"
+url="https://pypi.org/project/flask-themer"
arch="noarch"
license="MIT"
depends="py3-flask"
@@ -14,6 +14,7 @@ checkdepends="
py3-pytest-cov
"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/TkTech/flask-themer/archive/refs/tags/v$pkgver.tar.gz"
builddir="$srcdir/flask-themer-$pkgver"
@@ -26,9 +27,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
-21287b19e907423e656d16fcdebdca00589d8915714d88fcd054408db2ae820a1e8d25cffc819f5b710ec6ad6265598ef831b22dbd6d81ac2a5111742214101e py3-flask-themer-1.4.3.tar.gz
+334f72e5f8fb888c1cf1067e5b29b587e9c67708845d1efb00a8c4dbe30f3e7c684734b584d4c64b3516b75fdebd92b7c14355a3aa0d68f7c60fd7a983c29a14 py3-flask-themer-2.0.0.tar.gz
"
diff --git a/testing/py3-forbiddenfruit/APKBUILD b/testing/py3-forbiddenfruit/APKBUILD
index 48fd381badb..976ec243c05 100644
--- a/testing/py3-forbiddenfruit/APKBUILD
+++ b/testing/py3-forbiddenfruit/APKBUILD
@@ -2,8 +2,8 @@
# Maintainer: Dmitry Romanenko <dmitry@romanenko.in>
pkgname=py3-forbiddenfruit
_pkgname=forbiddenfruit
-pkgver=0.1.3
-pkgrel=3
+pkgver=0.1.4
+pkgrel=2
pkgdesc="Patch built-in python objects"
url="https://github.com/clarete/forbiddenfruit"
arch="all"
@@ -11,8 +11,10 @@ license="GPL-3.0-or-later OR MIT"
depends="python3"
checkdepends="py3-nose py3-coverage"
makedepends="python3-dev py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/f/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
+options="!check" # fail with 3.11
build() {
python3 setup.py build
@@ -24,7 +26,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="abd3e95a03f60bbe2c522cc77487fcbafce1325e1537bcfdaaa347db0eb283adf3c97c08b5cb05e37a3ee10f5bff160bc8c96e61f1b5aa64a55f58dd1563d25b forbiddenfruit-0.1.3.tar.gz"
+sha512sums="
+88f8751a9ca1d475eb74114787a7aeda02973e9bc2c4bbb08de8a4d6fe05c6fb82db093aace8f718caaaeb8b06c89112e5f418b8ee4d903cc6183ddfa2cdb087 forbiddenfruit-0.1.4.tar.gz
+"
diff --git a/testing/py3-fpdf/APKBUILD b/testing/py3-fpdf/APKBUILD
index 87bcaed94b0..98e6a039fa3 100644
--- a/testing/py3-fpdf/APKBUILD
+++ b/testing/py3-fpdf/APKBUILD
@@ -1,13 +1,14 @@
# Maintainer: Michał Adamski <michal@ert.pl>
pkgname=py3-fpdf
pkgver=1.7.2
-pkgrel=2
+pkgrel=5
pkgdesc="Simple PDF generation for Python"
url="https://pyfpdf.readthedocs.io/en/latest/"
arch="noarch"
license="LGPL-3.0-or-later"
depends="python3"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/f/fpdf/fpdf-$pkgver.tar.gz"
builddir="$srcdir/fpdf-$pkgver"
@@ -20,6 +21,6 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="3a4b4f363f36f821b5626b656b0ad199379aca171c7dd2a019e94f3bc39570b5624111d9fb3f8e0a7662e8f31184158e67263a475101378e84c200ebbbbcdd63 fpdf-1.7.2.tar.gz"
diff --git a/testing/py3-freetype-py/APKBUILD b/testing/py3-freetype-py/APKBUILD
new file mode 100644
index 00000000000..f62d4957823
--- /dev/null
+++ b/testing/py3-freetype-py/APKBUILD
@@ -0,0 +1,41 @@
+# Maintainer: Thomas Aldrian <aldrian.thom@proton.me>
+pkgname=py3-freetype-py
+pkgver=2.4.0
+pkgrel=1
+pkgdesc="FreeType Python bindings"
+url="https://github.com/rougier/freetype-py"
+arch="all"
+license="BSD-3-Clause"
+depends="freetype"
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-setuptools_scm
+ py3-wheel
+ "
+checkdepends="py3-pytest"
+source="$pkgname-$pkgver.tar.gz::https://github.com/rougier/freetype-py/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/freetype-py-$pkgver/"
+
+build() {
+ export SETUPTOOLS_SCM_PRETEND_VERSION=$pkgver
+
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest tests
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+82cdb06cfae90bb94b5a2c91235ebc39e03ed85da92db139f6edddc09e219b07a9b6983b0990998fb0baaab2e92c628cf08d9b90a635a91636e17d2b228109e7 py3-freetype-py-2.4.0.tar.gz
+"
diff --git a/testing/py3-funcparserlib/APKBUILD b/testing/py3-funcparserlib/APKBUILD
index 8a5f576b871..b724d32627a 100644
--- a/testing/py3-funcparserlib/APKBUILD
+++ b/testing/py3-funcparserlib/APKBUILD
@@ -2,28 +2,32 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-funcparserlib
_pkgname=funcparserlib
-pkgver=1.0.0
-pkgrel=0
+pkgver=1.0.1
+pkgrel=4
pkgdesc="Recursive descent parsing library based on functional combinators"
url="https://github.com/vlasovskikh/funcparserlib"
arch="noarch"
license="MIT"
depends="python3"
-makedepends="py3-setuptools"
+makedepends="py3-poetry-core py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-funcparserlib" # for backwards compatibility
+replaces="py-funcparserlib" # for backwards compatibility
provides="py-funcparserlib=$pkgver-r$pkgrel" # for backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
-df8add867f559b129743e962352c776af4a053fc9a026884125b315b9c17928b8c9bb132a8239960513381ac0f03748c58e56e4e47821a0ae36378af19577048 funcparserlib-1.0.0.tar.gz
+721673b7d79c19cd3cbad8387297644790581057d077139fe6efbaa14bc5ad28dc9074b34728bdd9ea1c00c56c402ce329d9f53728e59030408fd87059339f79 funcparserlib-1.0.1.tar.gz
"
diff --git a/testing/py3-furl/APKBUILD b/testing/py3-furl/APKBUILD
index c267753c259..828c12059e4 100644
--- a/testing/py3-furl/APKBUILD
+++ b/testing/py3-furl/APKBUILD
@@ -2,8 +2,8 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-furl
_pkgname=furl
-pkgver=2.1.2
-pkgrel=1
+pkgver=2.1.3
+pkgrel=2
pkgdesc="Python3 URL manipulator"
url="https://github.com/gruns/furl"
arch="noarch"
@@ -11,6 +11,7 @@ license="Unlicense"
depends="py3-orderedmultidict py3-six"
makedepends="py3-setuptools"
checkdepends="py3-pytest py3-flake8 py3-pycodestyle py3-pyflakes"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/f/furl/furl-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -23,9 +24,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
-d788344d129b511d00debe2cd4ee7c555453a0bf5e81444cededf48fe3b51fa2b45cdead6ddffb42837cb8684d085a3b5773b65a82cef87f6b16f60f1fcbc778 furl-2.1.2.tar.gz
+ce7455bd1a352243efd9715e80e9f9979631cc058927edcd8c52ccb85d27fd8f32079611bb29c487d2add2d1d941d56e4db75520339dc371b1539811ccefda02 furl-2.1.3.tar.gz
"
diff --git a/testing/py3-fuzzywuzzy/APKBUILD b/testing/py3-fuzzywuzzy/APKBUILD
index 39b68df43af..ad0fce208a4 100644
--- a/testing/py3-fuzzywuzzy/APKBUILD
+++ b/testing/py3-fuzzywuzzy/APKBUILD
@@ -3,14 +3,15 @@
pkgname=py3-fuzzywuzzy
_pyname=fuzzywuzzy
pkgver=0.18.0
-pkgrel=2
+pkgrel=6
pkgdesc="Fuzzy string matching in python"
url="https://github.com/seatgeek/fuzzywuzzy"
arch="noarch"
license="GPL-2.0-only"
-depends="python3"
+depends="python3 py3-levenshtein"
makedepends="py3-setuptools"
-checkdepends="py3-pytest py3-pycodestyle py3-hypothesis py3-levenshtein"
+checkdepends="py3-pytest py3-pycodestyle py3-hypothesis"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pyname%${_pyname#?}}/$_pyname/$_pyname-$pkgver.tar.gz"
builddir="$srcdir/$_pyname-$pkgver"
@@ -23,7 +24,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="4a21ea67278fa525842d48fed8db666d00eae6d13254e8844d11f63b47c3a305b3cac760f28c24c6347aebcf73e96180e0a7cfba29c75f01ece2f7751e0398c5 fuzzywuzzy-0.18.0.tar.gz"
+sha512sums="
+4a21ea67278fa525842d48fed8db666d00eae6d13254e8844d11f63b47c3a305b3cac760f28c24c6347aebcf73e96180e0a7cfba29c75f01ece2f7751e0398c5 fuzzywuzzy-0.18.0.tar.gz
+"
diff --git a/testing/py3-geographiclib/APKBUILD b/testing/py3-geographiclib/APKBUILD
deleted file mode 100644
index 7a981f90445..00000000000
--- a/testing/py3-geographiclib/APKBUILD
+++ /dev/null
@@ -1,30 +0,0 @@
-# Contributor: Alex Denes <caskd@redxen.eu>
-# Maintainer: Alex Denes <caskd@redxen.eu>
-_pkgname=geographiclib
-pkgname="py3-$_pkgname"
-pkgver=1.52
-pkgrel=0
-pkgdesc="Geodesic routines from GeographicLib"
-url="https://geographiclib.sourceforge.io/"
-arch="noarch"
-license="MIT"
-depends="python3"
-makedepends="py3-setuptools_scm"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgname-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 setup.py test
-}
-
-package() {
- python3 setup.py install --root "$pkgdir"
-}
-
-sha512sums="
-c6c41a6c571f2028c24c0905155d0ea443e0c250963a89ae62237664d02df8b22977c2b6b230553ecbad01b61075a2f4874a6dcd86a041fd871eea3e9801d533 geographiclib-1.52.tar.gz
-"
diff --git a/testing/py3-geoip/APKBUILD b/testing/py3-geoip/APKBUILD
index 8758211a517..18e136b703f 100644
--- a/testing/py3-geoip/APKBUILD
+++ b/testing/py3-geoip/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Weilu Jia <optix2000@gmail.com>
pkgname=py3-geoip
pkgver=1.3.2
-pkgrel=0
+pkgrel=3
pkgdesc="MaxMind GeoIP Legacy Database - Python API"
url="https://github.com/maxmind/geoip-api-python"
arch="all"
@@ -23,7 +23,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
diff --git a/testing/py3-geopy/APKBUILD b/testing/py3-geopy/APKBUILD
deleted file mode 100644
index 966bf5f6755..00000000000
--- a/testing/py3-geopy/APKBUILD
+++ /dev/null
@@ -1,38 +0,0 @@
-# Contributor: Alex Denes <caskd@redxen.eu>
-# Maintainer: Alex Denes <caskd@redxen.eu>
-_pkgname=geopy
-pkgname="py3-$_pkgname"
-pkgver=2.2.0
-pkgrel=0
-pkgdesc="Geocoding library"
-url="https://geopy.readthedocs.io/"
-arch="noarch"
-license="MIT"
-depends="
- py3-geographiclib
-"
-makedepends="py3-setuptools_scm"
-checkdepends="
- py3-async_generator
- py3-pytest
- py3-pytest-aiohttp
- py3-sphinx
-"
-source="https://files.pythonhosted.org/packages/source/g/geopy/geopy-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgname-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 setup.py test
-}
-
-package() {
- python3 setup.py install --root "$pkgdir"
-}
-
-sha512sums="
-26f33680d23445aecfa9cb1546007c74332adbf6d7510575941ef948391b8530c45eba28088d9ae781a8af63de8fa57f6f20e46be9d87a9621a242df83a51ff9 geopy-2.2.0.tar.gz
-"
diff --git a/testing/py3-geotiler/APKBUILD b/testing/py3-geotiler/APKBUILD
deleted file mode 100644
index 4dde4f3a815..00000000000
--- a/testing/py3-geotiler/APKBUILD
+++ /dev/null
@@ -1,47 +0,0 @@
-# Contributor: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-# Maintainer: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-pkgname=py3-geotiler
-_pkgorig=geotiler
-pkgver=0.14.6
-pkgrel=0
-pkgdesc="GeoTiler is a library to create map using tiles from a map provider"
-url="https://github.com/wrobell/geotiler"
-arch="noarch"
-license="GPL-3.0-or-later"
-depends="
- python3
- py3-aiohttp
- py3-cytoolz
- py3-pillow
- "
-checkdepends="
- python3-dev
- py3-numpy
- py3-pytest
- py3-pytest-cov
- "
-makedepends="
- py3-build
- py3-installer
- py3-setuptools
- py3-setuptools-git
- py3-wheel
- "
-source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/g/geotiler/geotiler-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgorig-$pkgver"
-
-build() {
- python3 -m build --wheel --no-isolation
-}
-
-check() {
- python3 -m pytest
-}
-
-package() {
- python3 -m installer --destdir="$pkgdir" dist/*.whl
-}
-
-sha512sums="
-744bfe66a8d1070d66708f0eb5f7d88e95ab572f7b71f542fd8ca2736a09d87bc097c0a04aab9406c8a2bdabeb66c45b922e0be6d86f37c8c110ff8960fdc68b py3-geotiler-0.14.6.tar.gz
-"
diff --git a/testing/py3-gevent-websocket/APKBUILD b/testing/py3-gevent-websocket/APKBUILD
index 370629a58be..26cfadf5f23 100644
--- a/testing/py3-gevent-websocket/APKBUILD
+++ b/testing/py3-gevent-websocket/APKBUILD
@@ -3,14 +3,15 @@
pkgname=py3-gevent-websocket
_realname=gevent-websocket
pkgver=0.10.1
-pkgrel=3
+pkgrel=7
pkgdesc="gevent websockets library"
options="!check" # Requires unpackaged autobahntestsuite
-url="https://pypi.python.org/pypi/gevent-websocket/"
+url="https://pypi.org/project/gevent-websocket/"
arch="noarch"
license="Apache-2.0"
depends="python3 py3-gevent"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/g/$_realname/$_realname-$pkgver.tar.gz"
replaces="py-geventwebsocket" # Backwards compat
@@ -23,7 +24,7 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="4f25ec1646c223b89ddbb7cf4decae72cc4baa6e872443dc05994987f509068a806c8b5e135c433d631e35b3902227f0e4c89d8071aa74e24c06b0e543e8df93 gevent-websocket-0.10.1.tar.gz"
diff --git a/testing/py3-ghp-import/APKBUILD b/testing/py3-ghp-import/APKBUILD
deleted file mode 100644
index 5e1e6c78a59..00000000000
--- a/testing/py3-ghp-import/APKBUILD
+++ /dev/null
@@ -1,26 +0,0 @@
-# Contributor: David Demelier <markand@malikania.fr>
-# Maintainer: David Demelier <markand@malikania.fr>
-pkgname=py3-ghp-import
-pkgver=2.0.1
-pkgrel=1
-pkgdesc="copy your docs directly to the gh-pages branch"
-url="https://github.com/c-w/ghp-import"
-arch="noarch"
-license="Apache-2.0"
-depends="python3 py3-dateutil"
-makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/g/ghp-import/ghp-import-$pkgver.tar.gz"
-builddir="$srcdir/ghp-import-$pkgver"
-options="!check" # No tests.
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-8e53b1a516a8d9780159d57b3973ebe02bbc4f60788470ec823c99608c2b026f5c43a12796506adf039420f06964a11d9e7e318cf9ea10df167faddd8b6f9707 ghp-import-2.0.1.tar.gz
-"
diff --git a/testing/py3-git-versioner/APKBUILD b/testing/py3-git-versioner/APKBUILD
new file mode 100644
index 00000000000..398c12b2d8d
--- /dev/null
+++ b/testing/py3-git-versioner/APKBUILD
@@ -0,0 +1,50 @@
+# Maintainer: Frank Oltmanns <alpine@oltmanns.dev>
+pkgname=py3-git-versioner
+pkgver=7.1
+pkgrel=1
+pkgdesc="Manage current / next version for project"
+url="https://gitlab.com/alelec/__version__"
+arch="noarch"
+license="MIT"
+depends="py3-setuptools"
+makedepends="
+ py3-wheel
+ py3-gpep517"
+source="https://gitlab.com/alelec/__version__/-/archive/v$pkgver/__version__-v$pkgver.tar.gz"
+subpackages="$pkgname-pyc"
+builddir="$srcdir/__version__-v$pkgver"
+
+prepare() {
+ default_prepare
+
+ # The wheel needs to be built twice for bootstrapping.
+ # The first build creates a wheel with version number 0.0.0
+ msg "Bootstrapping ..."
+ GIT_VERSIONER_VERSION_PY=$pkgver \
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+ # Remove the first build
+ rm -r .dist
+}
+
+build() {
+ # Now build again to build the wheel with the correct version number
+ GIT_VERSIONER_VERSION_PY=$pkgver \
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python test.py
+}
+
+package() {
+ gpep517 install-wheel --destdir "$pkgdir" .dist/*.whl
+ install -Dm644 LICENSE -t "$pkgdir"/usr/share/licenses/"$pkgname"
+}
+
+sha512sums="
+34b6fb4ad5bcec3c3ba78451c6c9716b330aca11e4752daa8ddaad6c1fbd1ddc9f263e24263bb02e96e28df656cf9c04f31cc67ac6edd8d025f82a7a77b54f46 __version__-v7.1.tar.gz
+"
diff --git a/testing/py3-github3/APKBUILD b/testing/py3-github3/APKBUILD
index 1b251be46b7..c9e68679b1c 100644
--- a/testing/py3-github3/APKBUILD
+++ b/testing/py3-github3/APKBUILD
@@ -2,26 +2,53 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-github3
_pkgname=github3.py
-pkgver=1.3.0
-pkgrel=4
+pkgver=4.0.1
+pkgrel=1
pkgdesc="Python wrapper for the GitHub API"
url="https://github3py.readthedocs.org/"
arch="noarch"
license="BSD-3-Clause"
-depends="py3-dateutil py3-jwcrypto py3-requests py3-uritemplate py3-six"
-makedepends="py3-setuptools"
+depends="
+ py3-cryptography
+ py3-dateutil
+ py3-jwt
+ py3-requests
+ py3-uritemplate
+ python3
+ "
+makedepends="
+ py3-gpep517
+ py3-hatchling
+ "
+checkdepends="
+ py3-betamax
+ py3-betamax_matchers
+ py3-pytest-xdist
+ "
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
-builddir="$srcdir"/$_pkgname-$pkgver
+builddir="$srcdir/github3.py-$pkgver"
replaces="py-github3" # Backwards compatibility
provides="py-github3=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py 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 -n auto -k 'not test_delete_key'
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
-sha512sums="b57526f9ac2ce70569abbe8e8efcdc77376885b8f81a48d10ed255c9cdb530d0b9e544612781ffeadbedef08e04fe63cec3dbe029b6d86d15aeff143ce620366 github3.py-1.3.0.tar.gz"
+sha512sums="
+a79f7e4c48405318bd61d03c7a8b2dc3629f6e2d8e954e316fba319115dd12c6e5e2fd69a00743e86078367b083841dbc494704e66ffda8582fb48c614ecf5b2 github3.py-4.0.1.tar.gz
+"
diff --git a/testing/py3-gitlab/APKBUILD b/testing/py3-gitlab/APKBUILD
new file mode 100644
index 00000000000..28fac140ffc
--- /dev/null
+++ b/testing/py3-gitlab/APKBUILD
@@ -0,0 +1,49 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=py3-gitlab
+_pyname=${pkgname/py3/python}
+pkgver=4.4.0
+pkgrel=1
+pkgdesc="Python wrapper for Gitlab's API"
+url="https://github.com/python-gitlab/python-gitlab"
+arch="noarch"
+license="LGPL-3.0-or-later"
+depends="python3 py3-requests py3-requests-toolbelt"
+makedepends="
+ py3-setuptools
+ py3-gpep517
+ py3-installer
+ py3-wheel
+ py3-sphinx
+ py3-sphinxcontrib-autoprogram
+ py3-myst-parser
+ "
+checkdepends="py3-pytest py3-responses py3-build"
+subpackages="$pkgname-doc $pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/python-gitlab/python-gitlab/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/$_pyname-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+ sphinx-build -W -b man docs/ man/
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest --ignore=tests/functional/ \
+ --deselect tests/smoke/test_dists.py::test_sdist_includes_correct_files
+# FAILED tests/smoke/test_dists.py::test_sdist_includes_correct_files - FileNot...
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+ install -Dm644 man/$_pyname.1 \
+ "$pkgdir"/usr/share/man/man1/$_pyname.1
+}
+
+sha512sums="
+cb572d169d948dcd74b1d85fb4e8fc2b2593ad167dd708f38bcaf5cccacc8a8b32231b2231d9cb69909e63ba0ce2c6f1cf522f21df56659343314ea2c0d39645 py3-gitlab-4.4.0.tar.gz
+"
diff --git a/testing/py3-glob2/APKBUILD b/testing/py3-glob2/APKBUILD
index f16ce698b59..8b29fc9de58 100644
--- a/testing/py3-glob2/APKBUILD
+++ b/testing/py3-glob2/APKBUILD
@@ -3,7 +3,7 @@
pkgname=py3-glob2
_pkgname=glob2
pkgver=0.7
-pkgrel=3
+pkgrel=5
pkgdesc="Version of the glob module that supports recursion via **, and can capture patterns"
url="https://github.com/miracle2k/python-glob2"
arch="noarch"
@@ -11,6 +11,7 @@ license="BSD-2-Clause"
depends="python3"
makedepends="py3-setuptools"
checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
@@ -23,7 +24,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="6707c33782373cd71b1794ef3a143f6c0ceb5733bec944d16596eb4662df4c788328078b621bdda6096da95ec2f267256fca620dd7691eb02bf0ce940dd4150e glob2-0.7.tar.gz"
diff --git a/testing/py3-gls/APKBUILD b/testing/py3-gls/APKBUILD
index 9b11f73e3f5..ec7e8f6644c 100644
--- a/testing/py3-gls/APKBUILD
+++ b/testing/py3-gls/APKBUILD
@@ -1,30 +1,37 @@
# Contributor: Galen Abell <galen@galenabell.com>
# Maintainer: Galen Abell <galen@galenabell.com>
pkgname=py3-gls
-pkgver=0.11.3
-pkgrel=0
+pkgver=1.3.1
+pkgrel=1
pkgdesc="pythonic generic language server"
url="https://github.com/openlawlibrary/pygls"
arch="noarch"
license="Apache-2.0"
-depends="python3 py3-pydantic py3-typeguard"
-makedepends="py3-setuptools py3-setuptools_scm py3-toml py3-wheel"
-checkdepends="py3-pytest py3-pytest-asyncio py3-mock"
-source="$pkgname-$pkgver.tar.gz::https://pypi.python.org/packages/source/p/pygls/pygls-$pkgver.tar.gz"
+depends="py3-lsprotocol py3-cattrs"
+makedepends="py3-gpep517 py3-wheel py3-poetry-core"
+checkdepends="py3-pytest py3-pytest-asyncio"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/openlawlibrary/pygls/archive/refs/tags/v$pkgver.tar.gz
+ "
builddir="$srcdir/pygls-$pkgver"
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- PYTHONPATH="." pytest
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
-2209fa3f8cfd82de4edfe832f4e01ee8f805bbc145dca7f5f35d99919b2aace4a9c25fb61539d065509e163dc3db51cf8ec17b163ffd7ed4a25f33ac0c520a11 py3-gls-0.11.3.tar.gz
+ef5d516d2da7e747fafd0a333157a964efcc7bcb424b2171451eb4f4084ada40ea2294cfa2322201b052a10f2958cbf2ea05748fbf7890bc4fbf6d82e154f9d4 py3-gls-1.3.1.tar.gz
"
diff --git a/testing/py3-gnupg/APKBUILD b/testing/py3-gnupg/APKBUILD
deleted file mode 100644
index 3c9da75e9eb..00000000000
--- a/testing/py3-gnupg/APKBUILD
+++ /dev/null
@@ -1,30 +0,0 @@
-# Contributor: Rasmus Thomsen <oss@cogitri.dev>
-# Maintainer: Rasmus Thomsen <oss@cogitri.dev>
-pkgname=py3-gnupg
-pkgver=0.4.8
-pkgrel=1
-pkgdesc="Python3 wrapper for the Gnu Privacy Guard (GPG or GnuPG)"
-url="https://gnupg.readthedocs.io/en/latest/"
-arch="noarch"
-license="BSD-3-Clause"
-depends="python3 gnupg"
-makedepends="py3-setuptools"
-checkdepends="py3-pytest"
-source="https://pypi.io/packages/source/p/python-gnupg/python-gnupg-$pkgver.tar.gz"
-builddir="$srcdir/python-gnupg-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- NO_EXTERNAL_TESTS=no pytest -v
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-fcaa121a356595328a26e8184280f859dfc2771b9692dcf28db2d9b0fdddc77d4c1238665a8e419758ec17320616e7741aacd3638e37d449b86fe5555beef1f6 python-gnupg-0.4.8.tar.gz
-"
diff --git a/testing/py3-google-trans-new/APKBUILD b/testing/py3-google-trans-new/APKBUILD
new file mode 100644
index 00000000000..09b4980e984
--- /dev/null
+++ b/testing/py3-google-trans-new/APKBUILD
@@ -0,0 +1,36 @@
+# Maintainer:
+pkgname=py3-google-trans-new
+pkgver=1.1.9
+pkgrel=2
+pkgdesc="Free and unlimited python API for google translate"
+url="https://github.com/lushan88a/google_trans_new"
+arch="noarch"
+license="MIT"
+depends="
+ py3-requests
+ py3-urllib3
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/g/google_trans_new/google_trans_new-$pkgver.tar.gz"
+builddir="$srcdir/google_trans_new-$pkgver"
+options="!check" # no tests
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+c9d00b62b5ae3169d11b5f07aed0f0a71950e67fb875eaa32ecb5a1bd26388ac954abb7c124e01b278850bef887e507e468d39d2df891a6018abf436d2850278 google_trans_new-1.1.9.tar.gz
+"
diff --git a/testing/py3-googletrans/APKBUILD b/testing/py3-googletrans/APKBUILD
index e0a00e9a5ea..7c78a51683f 100644
--- a/testing/py3-googletrans/APKBUILD
+++ b/testing/py3-googletrans/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Eloi Torrents <eloitor@disroot.org>
pkgname=py3-googletrans
pkgver=3.0.0
-pkgrel=1
+pkgrel=4
pkgdesc="Free Google Translate API for Python"
url="https://py-googletrans.readthedocs.io/en/latest/"
arch="noarch !armhf !ppc64le" # missing py3-httpx
@@ -13,6 +13,7 @@ depends="
"
makedepends="py3-setuptools"
checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
source="
https://pypi.io/packages/source/g/googletrans/googletrans-$pkgver.tar.gz
client.patch
@@ -24,7 +25,7 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
diff --git a/testing/py3-gpep517/APKBUILD b/testing/py3-gpep517/APKBUILD
deleted file mode 100644
index 0ea1329d6ec..00000000000
--- a/testing/py3-gpep517/APKBUILD
+++ /dev/null
@@ -1,25 +0,0 @@
-# Contributor: psykose <alice@ayaya.dev>
-# Maintainer: psykose <alice@ayaya.dev>
-pkgname=py3-gpep517
-_pkgname=gpep517
-pkgver=6
-pkgrel=0
-pkgdesc="Minimal backend script to aid installing Python packages through PEP 517-compliant build systems"
-url="https://github.com/mgorny/gpep517/"
-arch="noarch"
-license="MIT"
-# python 3.11: remove py3-tomli
-depends="py3-installer py3-tomli python3"
-source="https://github.com/mgorny/gpep517/archive/v$pkgver/gpep517-v$pkgver.tar.gz"
-builddir="$srcdir/$_pkgname-$pkgver"
-options="!check" # skip check since intended to be a low-level bootstrap package
-
-package() {
- local sitedir="$(python3 -c 'import site;print(site.getsitepackages()[0])')"
- mkdir -p "$pkgdir/$sitedir"
- cp -a gpep517 "$pkgdir/$sitedir"
-}
-
-sha512sums="
-681108dab418d0d2d5b017f19bf8802479655f22eb6b72e9d78c6bbd2d08583751a465377c2006c507f0ea258d2d46bf9300865896af4458a763b56a86abe329 gpep517-v6.tar.gz
-"
diff --git a/testing/py3-grequests/APKBUILD b/testing/py3-grequests/APKBUILD
index 95abfb93330..7a3f27cf1d5 100644
--- a/testing/py3-grequests/APKBUILD
+++ b/testing/py3-grequests/APKBUILD
@@ -2,8 +2,8 @@
# Maintainer: Dmitry Zakharchenko <dmitz@disroot.org>
pkgname=py3-grequests
_pkgname=grequests
-pkgver=0.6.0
-pkgrel=0
+pkgver=0.7.0
+pkgrel=1
pkgdesc="Asynchronus HTTP requests with gevent"
url="https://github.com/spyoungtech/grequests"
arch="noarch"
@@ -11,8 +11,10 @@ license="BSD-2-Clause"
depends="python3 py3-gevent py3-requests"
makedepends="py3-setuptools"
checkdepends="py3-nose"
+subpackages="$pkgname-pyc"
source="$_pkgname-$pkgver.tar.gz::https://github.com/spyoungtech/grequests/archive/v$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
+options="!check" # need net to httpbin and timeout quickly
build() {
python3 setup.py build
@@ -23,9 +25,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
-0c635dfc21a9c8d276a7428fd8c01079292a59c6755aa10b76722fafe38e01f622b02a44692335ecc0914ab17b6b3b6806b87092b4293ee9e324536fee55a8ad grequests-0.6.0.tar.gz
+ff3e57c7ed8ea643ad0b7a1987216e98de77d650807037a3c953f8fdb8e9a0090d79debb54205a13934c10043e4d3693336b9d9c1b5342fef383221bfefd5330 grequests-0.7.0.tar.gz
"
diff --git a/testing/py3-guessit/APKBUILD b/testing/py3-guessit/APKBUILD
deleted file mode 100644
index 1bf6e43ed92..00000000000
--- a/testing/py3-guessit/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Contributor: Philipp Glaum <p@pglaum.de>
-# Maintainer: Philipp Glaum <p@pglaum.de>
-pkgname=py3-guessit
-pkgver=3.3.1
-pkgrel=1
-pkgdesc="Library for guessing information from video filenames"
-url="https://pypi.org/project/guessit/"
-arch="noarch"
-license="LGPL-3.0-only"
-depends="python3 py3-rebulk py3-babelfish py3-dateutil py3-six py3-setuptools"
-makedepends="py3-wheel py3-pytest-runner"
-checkdepends="py3-pytest py3-pytest-benchmark py3-yaml"
-source="https://files.pythonhosted.org/packages/source/g/guessit/guessit-$pkgver.tar.gz"
-builddir="$srcdir/guessit-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- pytest
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
- rm -rf "$pkgdir"/usr/lib/python3*/site-packages/guessit/test
-}
-
-sha512sums="
-42c87525ea2d9c808e30b50db674862f5362f26b95ba5e6bc163df03a261d9b24daf4b4d525677d3e6d53e8e7f637c3d9e0ba3f25f4397e0658b618f50a3248b guessit-3.3.1.tar.gz
-"
diff --git a/testing/py3-halo/APKBUILD b/testing/py3-halo/APKBUILD
index 0474b88e88a..2ce74e0d31a 100644
--- a/testing/py3-halo/APKBUILD
+++ b/testing/py3-halo/APKBUILD
@@ -3,7 +3,7 @@
pkgname=py3-halo
_pyname=halo
pkgver=0.0.31
-pkgrel=1
+pkgrel=4
pkgdesc="Python library for terminal spinners"
url="https://github.com/manrajgrover/halo"
arch="noarch"
@@ -11,6 +11,7 @@ license="MIT"
depends="python3 py3-log-symbols py3-spinners py3-termcolor py3-colorama py3-six"
makedepends="py3-setuptools"
options="!check" # no tests
+subpackages="$pkgname-pyc"
source="$_pyname-$pkgver.tar.gz::https://pypi.python.org/packages/source/h/halo/halo-$pkgver.tar.gz"
builddir="$srcdir/$_pyname-$pkgver"
@@ -19,7 +20,7 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
diff --git a/testing/py3-hatch-openzim-bootstrap/APKBUILD b/testing/py3-hatch-openzim-bootstrap/APKBUILD
new file mode 100644
index 00000000000..363cf9c4aff
--- /dev/null
+++ b/testing/py3-hatch-openzim-bootstrap/APKBUILD
@@ -0,0 +1,41 @@
+# Contributor: Oleg Titov <oleg.titov@gmail.com>
+# Maintainer: Oleg Titov <oleg.titov@gmail.com>
+pkgname=py3-hatch-openzim-bootstrap
+pkgver=0.1.0
+pkgrel=0
+pkgdesc="Bootstrap for py3-hatch-plugin"
+url="https://github.com/openzim/hatch-openzim/"
+arch="noarch"
+license="GPL-3.0-or-later"
+makedepends="py3-gpep517 py3-hatchling py3-setuptools py3-wheel"
+checkdepends="py3-pytest py3-pytest-cov"
+subpackages="$pkgname-pyc"
+source="py3-hatch-openzim-$pkgver.tar.gz::https://github.com/openzim/hatch-openzim/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/hatch-openzim-$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
+
+ # it is expected that test_metadata_nominal will fail
+ # (git tarball in use),
+ # reported upstream:
+ # https://github.com/openzim/hatch-openzim/issues/13
+ .testenv/bin/python3 -m pytest \
+ -k "not test_metadata_nominal"
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+5d7a0c75de7517c2e1f9649fd04d43577373f28dfcaa12dc15788e045226ef93f1cb7346a806169c5131749970fbe45a582006189c47daa60d9769cb2fab15db py3-hatch-openzim-0.1.0.tar.gz
+"
diff --git a/testing/py3-hatch-openzim/APKBUILD b/testing/py3-hatch-openzim/APKBUILD
new file mode 100644
index 00000000000..f753a39fd6e
--- /dev/null
+++ b/testing/py3-hatch-openzim/APKBUILD
@@ -0,0 +1,41 @@
+# Contributor: Oleg Titov <oleg.titov@gmail.com>
+# Maintainer: Oleg Titov <oleg.titov@gmail.com>
+pkgname=py3-hatch-openzim
+pkgver=0.2.0
+pkgrel=0
+pkgdesc="Hhatch(ling) plugin for generic openZIM operations"
+url="https://github.com/openzim/hatch-openzim/"
+arch="noarch"
+license="GPL-3.0-or-later"
+makedepends="
+ py3-gpep517
+ py3-hatch-openzim-bootstrap
+ py3-hatchling
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="py3-pytest py3-pytest-cov"
+subpackages="$pkgname-pyc"
+source="py3-hatch-openzim-$pkgver.tar.gz::https://github.com/openzim/hatch-openzim/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/hatch-openzim-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+f14dc236a482495b9d96f9c2a8d9b56c3c39d019caec37304129fab118bdaf7a5f2fa0ed545e874c44515345715049c1ba981abfebb6b57dae995c4d840fdc20 py3-hatch-openzim-0.2.0.tar.gz
+"
diff --git a/testing/py3-hbmqtt/APKBUILD b/testing/py3-hbmqtt/APKBUILD
deleted file mode 100644
index baadbf12cee..00000000000
--- a/testing/py3-hbmqtt/APKBUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-# Contributor: Fabian Affolter <fabian@affolter-engineering.ch>
-# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
-pkgname=py3-hbmqtt
-_pkgname=hbmqtt
-pkgver=0.9.6
-pkgrel=2
-pkgdesc="MQTT client/broker using Python asynchronous I/O"
-url="https://hbmqtt.readthedocs.io/"
-arch="noarch"
-license="MIT"
-depends="py3-passlib py3-websockets py3-transitions py3-docopt py3-yaml"
-makedepends="python3-dev py3-setuptools"
-source="$_pkgname-$pkgver.tar.gz::https://github.com/beerfactory/hbmqtt/archive/$pkgver.tar.gz"
-builddir="$srcdir"/$_pkgname-$pkgver
-options="!check" # FIXME: disable tests to unblock builders
-
-build() {
- cd "$builddir"
- python3 setup.py build
-}
-
-check() {
- cd "$builddir"
- python3 setup.py test
-}
-
-package() {
- cd "$builddir"
- python3 setup.py install --root="$pkgdir" --optimize=1
-}
-
-sha512sums="dbbdd328296cb9545f4ea8843fdc951c72c53b54f87a6c589c8d19fa34d2f48a2fb902a918f34196009740b4b6574dc8aabd5c408dcea2905cbb7094238be834 hbmqtt-0.9.6.tar.gz"
diff --git a/testing/py3-helper/APKBUILD b/testing/py3-helper/APKBUILD
index 402d948ecc6..754e77723e8 100644
--- a/testing/py3-helper/APKBUILD
+++ b/testing/py3-helper/APKBUILD
@@ -3,7 +3,7 @@
pkgname=py3-helper
_pkgname=helper
pkgver=2.5.0
-pkgrel=1
+pkgrel=4
pkgdesc="A Python library for quickly writing configurable applications and daemons"
url="https://helper.readthedocs.org/"
arch="noarch"
@@ -12,6 +12,7 @@ replaces="py-helper" # for backwards compatibility
provides="py-helper=$pkgver-r$pkgrel" # for backwards compatibility
depends="python3 py3-yaml"
makedepends="python3-dev py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -20,7 +21,7 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
diff --git a/testing/py3-hg-git/APKBUILD b/testing/py3-hg-git/APKBUILD
index 183a8f8cdfe..14937fd2496 100644
--- a/testing/py3-hg-git/APKBUILD
+++ b/testing/py3-hg-git/APKBUILD
@@ -2,26 +2,36 @@
# Maintainer: David Demelier <markand@malikania.fr>
pkgname=py3-hg-git
_pkgname="hg-git"
-pkgver=0.10.2
+pkgver=1.1.1
pkgrel=1
pkgdesc="Mercurial plugin to pull and push from Git"
url="https://hg-git.github.io"
arch="noarch"
license="GPL-2.0-only"
depends="py3-dulwich"
-makedepends="py3-setuptools"
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-setuptools_scm
+ py3-wheel
+ "
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
options="!check" # No tests.
build() {
- python3 setup.py build
+ SETUPTOOLS_SCM_PRETEND_VERSION=$pkgver \
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
-aab8f6d6d7fe9c40a742890c046c8c945e9b53a97218cf8927692b745a641843f58ea8ce30d74957df5036901d6a07cf4907c1fcf4653cc2ae7fc1389a2aa899 hg-git-0.10.2.tar.gz
+eeee47258ac4e9ef8a2dbaa75a660f4d9732adf37d701e8f13e60cca699705a7a1a9aa1ab50b48132ddfd2239f379a8501a8ecd2a85659f14690d713cc7d28c3 hg-git-1.1.1.tar.gz
"
diff --git a/testing/py3-hiplot/APKBUILD b/testing/py3-hiplot/APKBUILD
new file mode 100644
index 00000000000..34b3d22dac8
--- /dev/null
+++ b/testing/py3-hiplot/APKBUILD
@@ -0,0 +1,52 @@
+# Contributor: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
+# Maintainer: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
+pkgname=py3-hiplot
+pkgver=0.1.33
+pkgrel=1
+pkgdesc="HiPlot makes understanding high dimensional data easy"
+url="https://github.com/facebookresearch/hiplot"
+arch="noarch"
+license="MIT"
+depends="
+ python3
+ ipython
+ py3-beautifulsoup4
+ py3-flask
+ py3-flask-compress
+ py3-pandas
+ "
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+checkdepends="py3-pytest-xdist py3-pytest-cov py3-ipykernel py3-optuna"
+subpackages="$pkgname-pyc"
+source="https://github.com/facebookresearch/hiplot/archive/$pkgver/hiplot-$pkgver.tar.gz"
+builddir="$srcdir/hiplot-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+
+ # assertion errors or missing dependencies
+ local _skipped_tests="
+ test_to_filename
+ and not test_to_html
+ and not test_demos_streamlit
+ and not test_demos_ipython
+ "
+
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest -n auto -k "not $(echo $_skipped_tests)"
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+a21d564333e52797956cf17a0eb12827272718e2f98e9a793867f7b5a556f8f3edd38a724968b99894a299e05f90b350a1b65ca14061508f21395165081ec60a hiplot-0.1.33.tar.gz
+"
diff --git a/testing/py3-html2markdown/APKBUILD b/testing/py3-html2markdown/APKBUILD
deleted file mode 100644
index 83e50618a19..00000000000
--- a/testing/py3-html2markdown/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Contributor: Bart Ribbers <bribbers@disroot.org>
-# Maintainer: Bart Ribbers <bribbers@disroot.org>
-pkgname=py3-html2markdown
-pkgver=0.1.7
-pkgrel=1
-pkgdesc="Conservatively convert html to markdown"
-url="https://github.com/dlon/html2markdown"
-arch="noarch"
-license="MIT"
-depends="
- py3-beautifulsoup4
- python3
- "
-makedepends="py3-setuptools"
-checkdepends="
- py3-markdown
- py3-pytest
- "
-#source="https://pypi.python.org/packages/source/h/html2markdown/html2markdown-$pkgver.tar.gz"
-source="https://github.com/dlon/html2markdown/archive/v$pkgver/html2markdown-v$pkgver.tar.gz"
-builddir="$srcdir/html2markdown-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- pytest tests.py -k 'not test_inline_tag_content'
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-cd6a9fe266e9579e52dc85e8dfe09e817a36ed7b4c038f1a237d54f229aa3f70b961f923b2e1a90f649412a4a746df651853fc19178c82935fd3ccbc87297977 html2markdown-v0.1.7.tar.gz
-"
diff --git a/testing/py3-html5-parser/APKBUILD b/testing/py3-html5-parser/APKBUILD
new file mode 100644
index 00000000000..45e141599ba
--- /dev/null
+++ b/testing/py3-html5-parser/APKBUILD
@@ -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
+"
diff --git a/testing/py3-httpcore/APKBUILD b/testing/py3-httpcore/APKBUILD
deleted file mode 100644
index 086d1d38cd9..00000000000
--- a/testing/py3-httpcore/APKBUILD
+++ /dev/null
@@ -1,48 +0,0 @@
-# Contributor: Michał Polański <michal@polanski.me>
-# Maintainer: Michał Polański <michal@polanski.me>
-pkgname=py3-httpcore
-pkgver=0.14.7
-pkgrel=0
-pkgdesc="Minimal HTTP client"
-url="https://www.encode.io/httpcore/"
-license="BSD-3-Clause"
-arch="noarch !armhf !ppc64le" # limited by py3-anyio
-depends="
- python3
- py3-anyio
- py3-certifi
- py3-h11
- py3-sniffio
- "
-makedepends="py3-setuptools"
-checkdepends="
- py3-h2
- py3-hpack
- py3-hyperframe
- py3-pytest
- py3-pytest-asyncio
- py3-pytest-httpbin
- py3-pytest-trio
- py3-socksio
- "
-subpackages="$pkgname-doc"
-source="https://github.com/encode/httpcore/archive/$pkgver/py3-httpcore-$pkgver.tar.gz"
-builddir="$srcdir/httpcore-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- PYTHONPATH="$PWD/build/lib" pytest
-}
-
-package() {
- python3 setup.py install --root="$pkgdir" --skip-build
-
- install -Dm644 LICENSE.md "$pkgdir"/usr/share/licenses/$pkgname/LICENSE.md
-}
-
-sha512sums="
-6865e97f9b84846bb4e9304ea358b0a28d66fd2d1e244e8a2a439ee446a294ecbc68ac07d5a718fd1c3eceaa44a391d7a8f7f2ca659f1674eb17a90f39987d48 py3-httpcore-0.14.7.tar.gz
-"
diff --git a/testing/py3-httptools/APKBUILD b/testing/py3-httptools/APKBUILD
deleted file mode 100644
index f9e3eaf7a67..00000000000
--- a/testing/py3-httptools/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Contributor: Michał Polański <michal@polanski.me>
-# Maintainer: Michał Polański <michal@polanski.me>
-pkgname=py3-httptools
-pkgver=0.4.0
-pkgrel=0
-pkgdesc="Fast HTTP parser"
-url="https://github.com/MagicStack/httptools"
-license="MIT"
-arch="all !riscv64" # llhttp
-depends="python3"
-makedepends="py3-setuptools python3-dev cython http-parser-dev llhttp-dev"
-checkdepends="py3-pytest py3-aiohttp py3-openssl py3-psutil"
-source="$pkgname-$pkgver.tar.gz::https://github.com/MagicStack/httptools/archive/v$pkgver/py3-httptools-$pkgver.tar.gz"
-builddir="$srcdir/httptools-$pkgver"
-
-build() {
- python3 setup.py build build_ext --inplace \
- --use-system-http-parser --use-system-llhttp
-}
-
-check() {
- PYTHONPATH="$(echo "$PWD"/build/lib.linux-*)" pytest
-}
-
-package() {
- python3 setup.py install --root="$pkgdir" --skip-build
-}
-
-sha512sums="
-b1e374f0b924bb0ff699d106038603f126da9065a63bc53080efc630392e0c666b1b87f8ca410fe23ee0fd07c77e89b590bf4154c4c07ad59982977630605961 py3-httptools-0.4.0.tar.gz
-"
diff --git a/testing/py3-httpx/APKBUILD b/testing/py3-httpx/APKBUILD
deleted file mode 100644
index 340bf50a5f5..00000000000
--- a/testing/py3-httpx/APKBUILD
+++ /dev/null
@@ -1,45 +0,0 @@
-# Contributor: Michał Polański <michal@polanski.me>
-# Maintainer: Michał Polański <michal@polanski.me>
-pkgname=py3-httpx
-pkgver=0.22.0
-pkgrel=0
-pkgdesc="Next generation HTTP client for Python"
-url="https://www.python-httpx.org/"
-license="BSD-3-Clause"
-arch="noarch !armhf !ppc64le" # limited by py3-httpcore
-depends="
- python3
- py3-certifi
- py3-charset-normalizer
- py3-httpcore
- py3-idna
- py3-rfc3986
- py3-sniffio
- "
-makedepends="py3-setuptools"
-checkdepends="py3-pytest py3-pytest-asyncio py3-pytest-trio py3-socksio py3-trustme uvicorn"
-subpackages="$pkgname-doc"
-source="https://github.com/encode/httpx/archive/$pkgver/py3-httpx-$pkgver.tar.gz
- relax-dependencies.patch
- "
-builddir="$srcdir/httpx-$pkgver"
-options="!check" # cyclic dependency on uvicorn
-
-build() {
- python3 setup.py build
-}
-
-check() {
- PYTHONPATH="$PWD/build/lib" pytest
-}
-
-package() {
- python3 setup.py install --root="$pkgdir" --skip-build
-
- install -Dm644 LICENSE.md "$pkgdir"/usr/share/licenses/$pkgname/LICENSE.md
-}
-
-sha512sums="
-a7360f5355f75f07425b42d49697e480319f3fe606d4601bb6d64b870c8a8fce6fad8bd857ef422fc48e6141201307ee94876d5bc54a68557c7dc32ce8f1451b py3-httpx-0.22.0.tar.gz
-1d3f92df4886dfa970eb3b99d54ce1a646231419830fabb814cdde79844560123b9fe3f368283611b51e9656be267cda6a2b06c3ad79d0fb3d23b790086c7b94 relax-dependencies.patch
-"
diff --git a/testing/py3-httpx/relax-dependencies.patch b/testing/py3-httpx/relax-dependencies.patch
deleted file mode 100644
index 816463ab316..00000000000
--- a/testing/py3-httpx/relax-dependencies.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Relax dependencies
-
---- a/setup.py
-+++ b/setup.py
-@@ -59,7 +59,7 @@ setup(
- "certifi",
- "charset_normalizer",
- "sniffio",
-- "rfc3986[idna2008]>=1.3,<2",
-+ "rfc3986[idna2008]",
- "httpcore>=0.14.5,<0.15.0",
- "async_generator; python_version < '3.7'"
- ],
diff --git a/testing/py3-hurry.filesize/APKBUILD b/testing/py3-hurry.filesize/APKBUILD
index 8f14d52928a..f6e26129025 100644
--- a/testing/py3-hurry.filesize/APKBUILD
+++ b/testing/py3-hurry.filesize/APKBUILD
@@ -3,13 +3,14 @@
pkgname=py3-hurry.filesize
_pkgname=hurry.filesize
pkgver=0.9
-pkgrel=3
+pkgrel=7
pkgdesc="A Python library for human readable file sizes"
-url="https://pypi.python.org/pypi/hurry.filesize"
+url="https://pypi.org/project/hurry.filesize"
arch="noarch"
license="ZPL-2.1"
depends="python3"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -18,7 +19,7 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="24b7ebf5a6e833cec01d1904e5202ab5bde238fbeabb92d893866118e152c0f861f853e11bb71c58d84060bffaf0b7bc88221e37aaacc0b07751febf8a2b1606 hurry.filesize-0.9.tar.gz"
diff --git a/testing/py3-i18naddress/APKBUILD b/testing/py3-i18naddress/APKBUILD
index 9a70e06b2a3..8b9ce680505 100644
--- a/testing/py3-i18naddress/APKBUILD
+++ b/testing/py3-i18naddress/APKBUILD
@@ -1,32 +1,38 @@
# Contributor: Leo <thinkabit.ukim@gmail.com>
-# Maintainer: Drew DeVault <sir@cmpwn.com>
+# Maintainer: Will Sinatra <wpsinatra@gmail.com>
pkgname=py3-i18naddress
_pyname=google-i18n-address
-pkgver=2.4.0
+pkgver=3.1.0
pkgrel=2
pkgdesc="Address validation helpers for Google's i18n address database"
url="https://github.com/mirumee/google-i18n-address"
arch="noarch"
license="BSD-3-Clause"
depends="python3 py3-requests"
-makedepends="py3-setuptools"
+makedepends="py3-gpep517 py3-hatchling py3-installer py3-wheel"
checkdepends="py3-pytest"
-_pypiprefix="${_pyname%${_pyname#?}}"
-source="https://files.pythonhosted.org/packages/source/$_pypiprefix/$_pyname/$_pyname-$pkgver.tar.gz
- python-3.9.patch"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/mirumee/google-i18n-address/archive/refs/tags/$pkgver.tar.gz"
builddir="$srcdir/$_pyname-$pkgver"
build() {
- python3 setup.py build
+ export SETUPTOOLS_SCM_PRETEND_VERSION=$pkgver
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- py.test-3
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
}
package() {
- python3 setup.py install --root="$pkgdir" --optimize=1
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
-sha512sums="a64e598b838f9d83b70b4f6acb3dc6c8930239e44b726f39a8f973334e2927d0394d1f323ca53acd43f4d9abede2a7ee48427f48a90427cbae7aada4cd8f08a5 google-i18n-address-2.4.0.tar.gz
-b4538f0acdcd8fced7c2d6372428dda4fbcb61eed2d8acc1b9e77a1147ba8d7ee8e4f6b0b63c16d50533c8cbea933157aed8a09b14b5664170303f602d0b25ad python-3.9.patch"
+sha512sums="
+b47b5eeaf214a04614ed0976055d25fbce2d298c45db4bfe31b369cd27dc1e097b14d4fae62b5f8dd95be5693d2fda12d0b618029dc1f3ed2784e28b60c43ef9 py3-i18naddress-3.1.0.tar.gz
+"
diff --git a/testing/py3-i18naddress/python-3.9.patch b/testing/py3-i18naddress/python-3.9.patch
deleted file mode 100644
index 8dade13161b..00000000000
--- a/testing/py3-i18naddress/python-3.9.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From b1d63d980e8b1a666e312e1c05c9037e2920685b Mon Sep 17 00:00:00 2001
-From: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
-Date: Fri, 29 Jan 2021 18:10:32 -0500
-Subject: [PATCH] Drop encoding parameter from json.load
-
-Apparently this is no longer an accepted keyword for json.load(), as
-of python 3.9.
-
-This was uncovered in https://bugs.debian.org/973175 where the
-google-i18n-address tests failed. But i haven't been able to find a
-reference for the change in python upstream. Perhaps the encoding
-parameter never did anything, but 3.9 became more strict about
-unhandled keywords.
-
-It looks like python's json module does bytestream encoding
-autodetection anyway so this should be safe to do:
-https://bugs.python.org/issue17909
----
- tests/test_downloader.py | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/tests/test_downloader.py b/tests/test_downloader.py
-index f9be4ac..856e739 100644
---- a/tests/test_downloader.py
-+++ b/tests/test_downloader.py
-@@ -45,7 +45,7 @@ def test_downloader_country(tmpdir, country, file_names, data):
- for file_name in file_names:
- assert data_dir.join(file_name).exists()
- assert json.load(
-- data_dir.join(file_name), encoding='utf-8') == data[file_name]
-+ data_dir.join(file_name)) == data[file_name]
-
-
- def test_downloader_invalid_country():
diff --git a/testing/py3-i3ipc/APKBUILD b/testing/py3-i3ipc/APKBUILD
deleted file mode 100644
index 4b1d35e035b..00000000000
--- a/testing/py3-i3ipc/APKBUILD
+++ /dev/null
@@ -1,28 +0,0 @@
-# Contributor: Leo <thinkabit.ukim@gmail.com>
-# Maintainer:
-pkgname=py3-i3ipc
-pkgver=2.2.1
-pkgrel=2
-pkgdesc="An improved Python library to control i3wm and sway"
-options="!check" # Requires unpackaged 'asyncio'
-url="https://github.com/altdesktop/i3ipc-python"
-arch="noarch"
-license="BSD-3-Clause"
-depends="python3 py3-xlib"
-makedepends="py3-setuptools"
-source="$pkgname-$pkgver.tar.gz::https://github.com/altdesktop/i3ipc-python/archive/v$pkgver.tar.gz"
-builddir="$srcdir/i3ipc-python-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 setup.py test
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="edbcec3cd0da53815dba22d696a17ddf909c39db771cf234befaa3130f8b56003ccc70eb28a07b286ab31c2cbb9d5893caf42b01ed20d61efdcd6359afbecc18 py3-i3ipc-2.2.1.tar.gz"
diff --git a/testing/py3-icalendar/APKBUILD b/testing/py3-icalendar/APKBUILD
deleted file mode 100644
index a5aa5301b1c..00000000000
--- a/testing/py3-icalendar/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Contributor: Galen Abell <galen@galenabell.com>
-# Maintainer: Galen Abell <galen@galenabell.com>
-pkgname=py3-icalendar
-_pyname=icalendar
-pkgver=4.0.9
-pkgrel=1
-pkgdesc="icalendar parser library for Python"
-url="https://github.com/collective/icalendar"
-arch="noarch"
-license="BSD-2-Clause"
-depends="python3 py3-dateutil py3-tz"
-makedepends="py3-setuptools"
-checkdepends="py3-pytest py3-hypothesis"
-source="https://files.pythonhosted.org/packages/source/${_pyname%${_pyname#?}}/$_pyname/$_pyname-$pkgver.tar.gz"
-builddir="$srcdir/$_pyname-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- PYTHONPATH="build:$PYTHONPATH" pytest -v "src/$_pyname/tests"
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-2eeb69da89207fe91661dfa6e9c2a623eb3be2fb5a48e999e87a881d7fecc1f339764124601b0610a14ce809f238c6731f30f2071bb4706206de10181365d1dd icalendar-4.0.9.tar.gz
-"
diff --git a/testing/py3-identify/APKBUILD b/testing/py3-identify/APKBUILD
deleted file mode 100644
index 0d1e0039657..00000000000
--- a/testing/py3-identify/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Contributor: Galen Abell <galen@galenabell.com>
-# Maintainer: Galen Abell <galen@galenabell.com>
-pkgname=py3-identify
-_pyname=identify
-pkgver=2.5.1
-pkgrel=0
-pkgdesc="File identification library for Python"
-url="https://github.com/pre-commit/identify"
-arch="noarch"
-license="MIT"
-depends="python3 py3-ukkonen"
-makedepends="py3-setuptools"
-checkdepends="py3-pytest"
-source="$_pyname-$pkgver.tar.gz::https://github.com/pre-commit/identify/archive/refs/tags/v$pkgver.tar.gz"
-builddir="$srcdir/$_pyname-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- pytest
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-8b61dd03bcdb8908a1a7f3b13d66121bb4f4bb3aab57672bff55a84232dcff310214ed0a90cfcf79846da9abc111bff08761ec9dd40c8b9b183bfbbf365efac4 identify-2.5.1.tar.gz
-"
diff --git a/testing/py3-igraph/APKBUILD b/testing/py3-igraph/APKBUILD
new file mode 100644
index 00000000000..9683d3e2424
--- /dev/null
+++ b/testing/py3-igraph/APKBUILD
@@ -0,0 +1,49 @@
+# Contributor: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
+# Maintainer: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
+pkgname=py3-igraph
+_pyname=python-igraph
+pkgver=0.11.4
+pkgrel=1
+pkgdesc="Python interface for igraph"
+url="https://github.com/igraph/python-igraph"
+# s390x: libigraph-dev
+arch="all !s390x"
+license="GPL-2.0-only"
+depends="py3-texttable"
+depends_dev="$pkgname=$pkgver-r$pkgrel"
+makedepends="
+ libigraph-dev
+ py3-gpep517
+ py3-wheel
+ py3-setuptools
+ python3-dev
+ "
+checkdepends="
+ py3-pillow
+ py3-pytest
+ "
+subpackages="$pkgname-dev $pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/igraph/python-igraph/archive/refs/tags/$pkgver.tar.gz"
+builddir="$srcdir/$_pyname-$pkgver"
+
+build() {
+ IGRAPH_USE_PKG_CONFIG=yes \
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+aca2482967fd440da52299c82a949961ccfed20a347d08b74a19eb223a516ed76aaca47f587960ec42a15828038ce180d810d83d48367a08a858879f54d072ab py3-igraph-0.11.4.tar.gz
+"
diff --git a/testing/py3-imageio-ffmpeg/APKBUILD b/testing/py3-imageio-ffmpeg/APKBUILD
index 220a5f3788a..9546859a525 100644
--- a/testing/py3-imageio-ffmpeg/APKBUILD
+++ b/testing/py3-imageio-ffmpeg/APKBUILD
@@ -1,28 +1,44 @@
# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
pkgname=py3-imageio-ffmpeg
-pkgver=0.4.5
-pkgrel=1
+pkgver=0.4.9
+pkgrel=0
pkgdesc="FFMPEG wrapper for Python"
url="https://github.com/imageio/imageio-ffmpeg"
arch="noarch"
license="BSD-2-Clause"
-depends="ffmpeg python3"
-makedepends="py3-setuptools"
-options="!check" # No test suite
-source="$pkgname-$pkgver.tar.gz::https://github.com/imageio/imageio-ffmpeg/archive/v$pkgver.tar.gz
- pip-requirement.patch
- "
+depends="ffmpeg python3 py3-setuptools"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+checkdepends="py3-psutil py3-pytest"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/imageio/imageio-ffmpeg/archive/v$pkgver.tar.gz"
builddir="$srcdir/imageio-ffmpeg-$pkgver"
build() {
- python3 setup.py 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
+
+ # ppc64le fails test_write_pix_fmt_in with assert error
+ case "$CARCH" in
+ ppc64le)
+ .testenv/bin/python3 -m pytest \
+ --deselect tests/test_io.py::test_write_pix_fmt_in
+ ;;
+ *)
+ .testenv/bin/python3 -m pytest
+ ;;
+ esac
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir" --optimize=1
+ python3 -m installer -d "$pkgdir" .dist/*.whl
}
sha512sums="
-c4180903f7194cac880c3851b08e4563c6e12cb6336e321ca35a7baf92ec1de5a49880fd05db9c7c266327642d75830cac4060371cbdc76448fb0a2c21ab0c1c py3-imageio-ffmpeg-0.4.5.tar.gz
-4a4fd212fc6ac1a7720b65a36ad15927e25c73f84c5f1d970801b122e70e3e63475fc093be7a1009d8ca9f9d629200ffd7b6bc6a8f8bb46c1836100896d1872b pip-requirement.patch
+ebf63b9ac9c733d4c12d3aa4c6a9e81dd0128795a040e65df03bfae00e3562a3976eaa2f4058562bbddc3f8d63d6bf2a38133de4d2ddb0d2dc62ffab2449e143 py3-imageio-ffmpeg-0.4.9.tar.gz
"
diff --git a/testing/py3-imageio-ffmpeg/pip-requirement.patch b/testing/py3-imageio-ffmpeg/pip-requirement.patch
deleted file mode 100644
index ad2aaf6617d..00000000000
--- a/testing/py3-imageio-ffmpeg/pip-requirement.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --unified --recursive --text imageio-ffmpeg-0.4.3.orig/setup.py imageio-ffmpeg-0.4.3.new/setup.py
---- a/setup.py 2021-01-04 17:18:12.000000000 +0100
-+++ b/setup.py 2021-02-13 09:51:58.744209490 +0100
-@@ -57,7 +57,7 @@
- platforms="any",
- provides=["imageio_ffmpeg"],
- python_requires=">=3.4",
-- setup_requires=["pip>19"],
-+ setup_requires=[],
- install_requires=[],
- packages=["imageio_ffmpeg"],
- package_dir={"imageio_ffmpeg": "imageio_ffmpeg"},
diff --git a/testing/py3-imageio/APKBUILD b/testing/py3-imageio/APKBUILD
index 8be5d734752..e8629a361ac 100644
--- a/testing/py3-imageio/APKBUILD
+++ b/testing/py3-imageio/APKBUILD
@@ -1,33 +1,41 @@
# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
pkgname=py3-imageio
-pkgver=2.10.3
+pkgver=2.34.0
pkgrel=1
pkgdesc="Python library that provides an easy interface to read and write a wide range of image data"
url="https://github.com/imageio/imageio"
license="BSD-2-Clause"
# ppc64le: test failures
-arch="noarch !ppc64le"
-depends="python3 py3-numpy py3-pillow freeimage"
-makedepends="py3-setuptools"
-checkdepends="py3-pytest py3-psutil py3-imageio-ffmpeg"
+# s390x: freeimage
+arch="noarch !ppc64le !s390x"
+depends="py3-numpy py3-pillow freeimage"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+checkdepends="py3-pytest py3-psutil py3-imageio-ffmpeg py3-fsspec"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/i/imageio/imageio-$pkgver.tar.gz"
builddir="$srcdir/imageio-$pkgver"
+options="!check" # intentionally fail without internet(?), todo
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- PYTHONPATH="$PWD"/build/lib IMAGEIO_NO_INTERNET=1 pytest -v
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ IMAGEIO_NO_INTERNET=1 .testenv/bin/python3 -m pytest -v
}
package() {
- python3 setup.py install --root="$pkgdir" --optimize=1
+ python3 -m installer -d "$pkgdir" .dist/*.whl
# remove unneeded binaries
+ # shellcheck disable=2115
rm -r "$pkgdir"/usr/bin
}
sha512sums="
-56bc2cbd0544b4ad6c3d4c85fcc2f6656605d9216dd640c649a977fbe46347b8053aad92ac3168716c461f0ec4647623ab93cc65816c7caccc19282e2fadcec8 py3-imageio-2.10.3.tar.gz
+ecbe0a85cf8ade6555aa49132678a13cdc44053884580f7bd8e6b7a8858473e8d0822e84c59e07546a8dde202d2f699e1c5a057b2dadc325b0517816730744a4 py3-imageio-2.34.0.tar.gz
"
diff --git a/testing/py3-imdbpy/APKBUILD b/testing/py3-imdbpy/APKBUILD
index 458a24762fa..915051a603a 100644
--- a/testing/py3-imdbpy/APKBUILD
+++ b/testing/py3-imdbpy/APKBUILD
@@ -1,13 +1,14 @@
# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
pkgname=py3-imdbpy
pkgver=2021.4.18
-pkgrel=1
+pkgrel=4
pkgdesc="Python bindings for the Internet Movie Database (IMDb)"
url="https://imdbpy.sourceforge.io/"
arch="noarch"
license="GPL-2.0-or-later"
depends="py3-lxml py3-sqlalchemy"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/I/IMDbPY/IMDbPY-$pkgver.tar.gz"
options="!check" # Disable tests for now: https://github.com/alberanid/imdbpy/issues/240
builddir="$srcdir/IMDbPY-$pkgver"
@@ -17,7 +18,7 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
diff --git a/testing/py3-incoming/APKBUILD b/testing/py3-incoming/APKBUILD
index 018c7bcc673..3df471d6bae 100644
--- a/testing/py3-incoming/APKBUILD
+++ b/testing/py3-incoming/APKBUILD
@@ -3,7 +3,7 @@
pkgname=py3-incoming
_pkgname=incoming
pkgver=0.3.1
-pkgrel=3
+pkgrel=7
pkgdesc="A Python JSON validation framework"
url="https://github.com/vaidik/incoming"
arch="noarch"
@@ -11,7 +11,10 @@ license="MIT"
depends="python3"
makedepends="py3-setuptools"
checkdepends="py3-pytest"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz
+ assertEquals.patch
+ "
builddir="$srcdir"/$_pkgname-$pkgver
replaces="py-incoming" # Backwards compatibility
@@ -26,7 +29,10 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="5018e919485450fd8e361d8d505ead8c5fd0c99e0349feecf372697e866eb53f6dca6186a49244b20b61ddb65f754d58b6c0e11aa0ae95e8c98f35983a691cb8 incoming-0.3.1.tar.gz"
+sha512sums="
+5018e919485450fd8e361d8d505ead8c5fd0c99e0349feecf372697e866eb53f6dca6186a49244b20b61ddb65f754d58b6c0e11aa0ae95e8c98f35983a691cb8 incoming-0.3.1.tar.gz
+7adbe0a1830818ad4bf5d3a424595b8dedeb33be80c40e8e957760fa293054ed6f655780d1cec418d1d393633a088a5fc2afab51e59775e63d0319d2e8106170 assertEquals.patch
+"
diff --git a/testing/py3-incoming/assertEquals.patch b/testing/py3-incoming/assertEquals.patch
new file mode 100644
index 00000000000..a05977d7321
--- /dev/null
+++ b/testing/py3-incoming/assertEquals.patch
@@ -0,0 +1,31 @@
+diff --git a/incoming/tests/test_datatypes.py b/incoming/tests/test_datatypes.py
+index c1e7586..6d8a6dc 100644
+--- a/incoming/tests/test_datatypes.py
++++ b/incoming/tests/test_datatypes.py
+@@ -136,3 +136,3 @@ class TestJSON(TestCase):
+ validator = datatypes.JSON(CustomJSONValidator)
+- self.assertEquals(
++ self.assertEqual(
+ validator.cls.inner.cls.__name__,
+diff --git a/incoming/tests/test_incoming.py b/incoming/tests/test_incoming.py
+index 7f0321b..1ac82e7 100644
+--- a/incoming/tests/test_incoming.py
++++ b/incoming/tests/test_incoming.py
+@@ -70,3 +70,3 @@ class TestPayloadValidator(TestCase):
+ self.assertTrue(result[0])
+- self.assertEquals(result[1], None)
++ self.assertEqual(result[1], None)
+
+@@ -205,5 +205,5 @@ class TestPayloadValidator(TestCase):
+ self.assertItemsEqual(errors.keys(), ['missing1', 'missing2'])
+- self.assertEquals(errors['missing1'][0],
++ self.assertEqual(errors['missing1'][0],
+ AnotherDummyValidator.strict_error)
+- self.assertEquals(errors['missing2'][0],
++ self.assertEqual(errors['missing2'][0],
+ AnotherDummyValidator.strict_error)
+@@ -222,3 +222,3 @@ class TestPayloadValidator(TestCase):
+ self.assertTrue(result)
+- self.assertEquals(errors, None)
++ self.assertEqual(errors, None)
+
diff --git a/testing/py3-infinity/APKBUILD b/testing/py3-infinity/APKBUILD
index 64a23c16e73..7331ac65efc 100644
--- a/testing/py3-infinity/APKBUILD
+++ b/testing/py3-infinity/APKBUILD
@@ -3,14 +3,15 @@
pkgname=py3-infinity
_pkgname=infinity
pkgver=1.5
-pkgrel=2
+pkgrel=5
pkgdesc="All-in-one infinity value for Python"
url="https://github.com/kvesteri/infinity"
arch="noarch"
license="BSD-3-Clause"
depends="python3"
makedepends="py3-setuptools"
-checkdepends="py3-pytest"
+checkdepends="py3-pytest py3-six"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -26,7 +27,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="d61c16fe08749dab050ffb17f8cb392b22ef0c409d736625820419859a0533e067d04a3244e937cf968b40eb02d6bcecb0f80525797dc372eba7205836bad9cb infinity-1.5.tar.gz"
+sha512sums="
+d61c16fe08749dab050ffb17f8cb392b22ef0c409d736625820419859a0533e067d04a3244e937cf968b40eb02d6bcecb0f80525797dc372eba7205836bad9cb infinity-1.5.tar.gz
+"
diff --git a/testing/py3-iniparse/APKBUILD b/testing/py3-iniparse/APKBUILD
index febb8d9a809..b09ac85a984 100644
--- a/testing/py3-iniparse/APKBUILD
+++ b/testing/py3-iniparse/APKBUILD
@@ -3,14 +3,14 @@
pkgname=py3-iniparse
_pkgname=iniparse
pkgver=0.5
-pkgrel=3
+pkgrel=6
pkgdesc="INI parser library for Python"
options="!check" # Testsuite loader broken
url="https://github.com/candlepin/python-iniparse"
arch="noarch"
license="MIT"
makedepends="py3-setuptools"
-subpackages="$pkgname-doc"
+subpackages="$pkgname-doc $pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -22,7 +22,7 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="b3f10d1b36497c3c5c71cb0a1ac73d74d8944f4ad3b7acc4a4b0246c2f1a20c184d9af20bbb3cb8ec4f57fddfb5e103b92688847debb4200ef0583353d7f9556 iniparse-0.5.tar.gz"
diff --git a/testing/py3-intervals/APKBUILD b/testing/py3-intervals/APKBUILD
index b2b3a7f6c00..6321ad2cc60 100644
--- a/testing/py3-intervals/APKBUILD
+++ b/testing/py3-intervals/APKBUILD
@@ -3,7 +3,7 @@
pkgname=py3-intervals
_pkgname=intervals
pkgver=0.9.2
-pkgrel=1
+pkgrel=4
pkgdesc="Python module for handling intervals (ranges of comparable objects)"
url="https://github.com/kvesteri/intervals"
arch="noarch"
@@ -11,6 +11,7 @@ license="BSD-3-Clause"
depends="py3-infinity"
makedepends="py3-setuptools"
checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz
pytest5.patch"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -27,7 +28,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
diff --git a/testing/py3-invoke/APKBUILD b/testing/py3-invoke/APKBUILD
index 2ca960dec01..f48abf397f5 100644
--- a/testing/py3-invoke/APKBUILD
+++ b/testing/py3-invoke/APKBUILD
@@ -1,25 +1,34 @@
# Contributor: Leo <thinkabit.ukim@gmail.com>
-# Maintainer:
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=py3-invoke
-_pkgname=invoke
-pkgver=1.5.0
-pkgrel=3
+pkgver=2.2.0
+pkgrel=2
pkgdesc="Pythonic task execution"
options="!check" # Can't find invoke.vendor.six
-url="http://docs.pyinvoke.org/en/1.3/"
+url="https://www.pyinvoke.org/"
arch="noarch"
license="BSD-2-Clause"
-depends="python3 py3-yaml"
-makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgname-$pkgver"
+depends="py3-yaml"
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/pyinvoke/invoke/archive/refs/tags/$pkgver.tar.gz"
+builddir="$srcdir/invoke-$pkgver"
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
-sha512sums="ac6b1939907ba34930836f567454aeea63373aa510644964eb18e1e684f30d4053c75a73506d0e947a38ca206daf847ce927ec2df15e73932278c2c73c3e20bd invoke-1.5.0.tar.gz"
+sha512sums="
+3d0adabec4825fb45524d3ab4f2a790d31245a89e038c08c770fc9f33c81ed182769e8f17d3d6f33a913b431cba475b975826ddfd533a945d481b52deba759a2 py3-invoke-2.2.0.tar.gz
+"
diff --git a/testing/py3-ioflo/APKBUILD b/testing/py3-ioflo/APKBUILD
deleted file mode 100644
index acaea7994b4..00000000000
--- a/testing/py3-ioflo/APKBUILD
+++ /dev/null
@@ -1,38 +0,0 @@
-# Contributor: Fabian Affolter <fabian@affolter-engineering.ch>
-# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
-pkgname=py3-ioflo
-_pkgname=ioflo
-pkgver=2.0.2
-pkgrel=1
-pkgdesc="Automated Reasoning Engine and Flow Based Programming Framework"
-url="https://github.com/ioflo/ioflo"
-arch="noarch"
-license="MIT"
-depends="python3"
-makedepends="py3-setuptools-git py3-setuptools"
-checkdepends="py3-pytest"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz
- python-3.9.patch
- "
-builddir="$srcdir"/$_pkgname-$pkgver
-
-replaces="py-ioflo" # Backwards compatibility
-provides="py-ioflo=$pkgver-r$pkgrel" # Backwards compatibility
-
-build() {
- python3 setup.py build
-}
-
-check() {
- py.test-3
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-
- # keep ioflo and remove ioflo3
- rm -f "$pkgdir"/usr/bin/ioflo3
-}
-
-sha512sums="7f704ccd5680b612d63990915259999e967d87dadd25608143dbc6ecf7a7679eb33f1c11c2d490a358845946add668e6014b80705db8701127b5d05ac436cc4b ioflo-2.0.2.tar.gz
-f951ce837fbe501535b6baab8e4f998af14660c0ec375e01b2526fd848c8d24ceae822263a256befea75163fade36ab059c775b53d5e96fe514097516d9d5726 python-3.9.patch"
diff --git a/testing/py3-ioflo/python-3.9.patch b/testing/py3-ioflo/python-3.9.patch
deleted file mode 100644
index 4ae368cd642..00000000000
--- a/testing/py3-ioflo/python-3.9.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-From 2961d846dd250334b8fc52c2ef4c00ebc36ed510 Mon Sep 17 00:00:00 2001
-From: Felix Yan <felixonmars@archlinux.org>
-Date: Fri, 20 Nov 2020 04:42:02 +0800
-Subject: [PATCH] Fix compatibility with Python 3.9
-
-json.loads() removed encoding parameter
-(https://bugs.python.org/issue39377)
-It was a no-op since 3.1.
----
- ioflo/aio/http/clienting.py | 4 ++--
- ioflo/aio/http/httping.py | 3 +--
- 2 files changed, 3 insertions(+), 4 deletions(-)
-
-diff --git a/ioflo/aio/http/clienting.py b/ioflo/aio/http/clienting.py
-index 11132e3..967570e 100644
---- a/ioflo/aio/http/clienting.py
-+++ b/ioflo/aio/http/clienting.py
-@@ -268,13 +268,13 @@ def build(self):
- '\r\n{2}'.format(boundary, key, val))
- formParts.append('\r\n--{0}--'.format(boundary))
- form = "".join(formParts)
-- body = form.encode(encoding='utf-8')
-+ body = form.encode('utf-8')
- self.headers[u'content-type'] = u'multipart/form-data; boundary={0}'.format(boundary)
- else:
- formParts = [u"{0}={1}".format(key, val) for key, val in self.fargs.items()]
- form = u'&'.join(formParts)
- form = quote_plus(form, '&=')
-- body = form.encode(encoding='utf-8')
-+ body = form.encode('utf-8')
- self.headers[u'content-type'] = u'application/x-www-form-urlencoded; charset=utf-8'
- else: # body last in precendence
- body = self.body
-diff --git a/ioflo/aio/http/httping.py b/ioflo/aio/http/httping.py
-index ba604e7..a22cc84 100644
---- a/ioflo/aio/http/httping.py
-+++ b/ioflo/aio/http/httping.py
-@@ -746,7 +746,7 @@ def parseEvents(self):
- if edata: # data so dispatch event by appending to .events
- if self.dictable:
- try:
-- ejson = json.loads(edata, encoding='utf-8', object_pairs_hook=odict)
-+ ejson = json.loads(edata, object_pairs_hook=odict)
- except ValueError as ex:
- ejson = None
- else: # valid json set edata to ejson
-@@ -1058,7 +1058,6 @@ def dictify(self):
- if self.jsoned or self.dictable: # attempt to deserialize json
- try:
- self.data = json.loads(self.body.decode('utf-8'),
-- encoding='utf-8',
- object_pairs_hook=odict)
- except ValueError as ex:
- self.data = None
diff --git a/testing/py3-iso639-lang/APKBUILD b/testing/py3-iso639-lang/APKBUILD
new file mode 100644
index 00000000000..f01efd82b13
--- /dev/null
+++ b/testing/py3-iso639-lang/APKBUILD
@@ -0,0 +1,35 @@
+# Contributor: Oleg Titov <oleg.titov@gmail.com>
+# Maintainer: Oleg Titov <oleg.titov@gmail.com>
+pkgname=py3-iso639-lang
+pkgver=2.2.3
+pkgrel=0
+pkgdesc="Easy-to-use library for the ISO 639 language representation standards"
+url="https://github.com/LBeaudoux/iso639"
+arch="noarch"
+license="MIT"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="py3-iso639-lang-$pkgver.tar.gz::https://github.com/LBeaudoux/iso639/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/iso639-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest test.py
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+4846c73b9a8f7e6e5d258c7408f6c4a7eb64ed0b64733f813cbf4e4945acaac55075a5030541629dafce0bc20c98eb1a7fac82c39f96c12309d096e9ef42e629 py3-iso639-lang-2.2.3.tar.gz
+"
diff --git a/testing/py3-itemadapter/APKBUILD b/testing/py3-itemadapter/APKBUILD
index 7881ee457f8..7570362f92c 100644
--- a/testing/py3-itemadapter/APKBUILD
+++ b/testing/py3-itemadapter/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: prspkt <prspkt@protonmail.com>
# Maintainer: prspkt <prspkt@protonmail.com>
pkgname=py3-itemadapter
-pkgver=0.2.0
+pkgver=0.8.0
pkgrel=2
pkgdesc="Common interface for data container classes"
options="!check" # Introduces circular dependency with py3-scrapy
@@ -11,6 +11,7 @@ license="BSD-3-Clause"
depends="python3"
makedepends="py3-setuptools"
checkdepends="py3-pytest py3-scrapy"
+subpackages="$pkgname-pyc"
source="https://github.com/scrapy/itemadapter/archive/v$pkgver/itemadapter-$pkgver.tar.gz"
builddir="$srcdir/itemadapter-$pkgver"
@@ -23,7 +24,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="317e42ebe7f161e114719c942fb7261b3b06e38fe81f609ccdacebfb051a5eaea90286bfef79c8bcf56d041d26e087dbbc9a74270c7a61bdd73841596a01f174 itemadapter-0.2.0.tar.gz"
+sha512sums="
+86c688bef2d0add3f5ea2bd119689b076c5bc9f92edefb6f5d8faaf88023355e7d2ba5d683ce8f6acd24a2954c5a798902b30d0a70ca31dc32eb5245ad57953f itemadapter-0.8.0.tar.gz
+"
diff --git a/testing/py3-itemloaders/APKBUILD b/testing/py3-itemloaders/APKBUILD
new file mode 100644
index 00000000000..8bdc888bbdc
--- /dev/null
+++ b/testing/py3-itemloaders/APKBUILD
@@ -0,0 +1,40 @@
+# Maintainer:
+pkgname=py3-itemloaders
+pkgver=1.1.0
+pkgrel=2
+pkgdesc="Library to populate items using XPath and CSS with a convenient API"
+url="https://github.com/scrapy/itemloaders"
+arch="noarch"
+license="BSD-3-Clause"
+depends="
+ py3-itemadapter
+ py3-jmespath
+ py3-parsel
+ py3-w3lib
+ python3
+ "
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/scrapy/itemloaders/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/itemloaders-$pkgver"
+
+build() {
+ gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest \
+ --ignore tests/test_utils_python.py
+ # https://github.com/scrapy/itemloaders/issues/76
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" .dist/*.whl
+}
+
+sha512sums="
+4a52e75405409124a3c1f7e7079fedf36e34a76877b04d754006743a2f403602de9b463e1f338bead3a68a0c1cf32f2a50b4cbe4cc57a10539ec529a93b81607 py3-itemloaders-1.1.0.tar.gz
+"
diff --git a/testing/py3-itunespy/APKBUILD b/testing/py3-itunespy/APKBUILD
new file mode 100644
index 00000000000..eb3a503a632
--- /dev/null
+++ b/testing/py3-itunespy/APKBUILD
@@ -0,0 +1,28 @@
+# Contributor: Dmitry Zakharchenko <dmitz@disroot.org>
+# Maintainer: Dmitry Zakharchenko <dmitz@disroot.org>
+pkgname=py3-itunespy
+_pkgname=itunespy
+pkgver=1.6
+pkgrel=3
+pkgdesc="Library to fetch data from the iTunes Store API"
+url="https://github.com/sleepyfran/itunespy"
+arch="noarch"
+license="MIT"
+depends="py3-requests py3-pycountry"
+makedepends="py3-setuptools"
+options="!check" # no test suite
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/sleepyfran/itunespy/archive/$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ python3 setup.py build
+}
+
+package() {
+ python3 setup.py install --skip-build --root="$pkgdir"
+}
+
+sha512sums="
+d91428e23a71bdbc62e6b8126b379aa48f06a365056147cf30eb4fa6132243d35c8a8d6dc536174a53f206bf7bcb4dcebb5a3697fac0fd88cbcb38205202ad81 py3-itunespy-1.6.tar.gz
+"
diff --git a/testing/py3-janus/APKBUILD b/testing/py3-janus/APKBUILD
index f8e198ce2aa..bc7bfa2ca60 100644
--- a/testing/py3-janus/APKBUILD
+++ b/testing/py3-janus/APKBUILD
@@ -1,28 +1,38 @@
# Contributor: Antoine Fontaine <antoine.fontaine@epfl.ch>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=py3-janus
-pkgver=0.6.1
-pkgrel=2
+pkgver=1.0.0
+pkgrel=3
pkgdesc="Mixed sync-async queue to interoperate between asyncio tasks and classic threads"
url="https://github.com/aio-libs/janus/"
arch="noarch"
license="Apache-2.0"
-depends="python3"
-makedepends="py3-setuptools"
-checkdepends="py3-pytest py3-pytest-asyncio py3-pytest-regtest"
-source="https://files.pythonhosted.org/packages/source/j/janus/janus-$pkgver.tar.gz"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+checkdepends="py3-pytest py3-pytest-asyncio"
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/j/janus/janus-$pkgver.tar.gz
+ no-typing-extensions.patch
+ "
builddir="$srcdir/janus-$pkgver"
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- python3 setup.py test
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
-sha512sums="7b54c0a1f9b457dd8bfe5de69d2d3e22a8b8b26570b6956fcfd943bf94f060b4b4a59cfac5e522af25fd037333d19e07e5b9ceb23b0116006bde930815ee9f63 janus-0.6.1.tar.gz"
+sha512sums="
+d66899adad12cc1100a20cb75d8e146321ef947bde996a07490158a5f34c39421bb1a5b08ac87679264a6bee1d3dc9f425fa29d52199626d322fe4462ed8f1f3 janus-1.0.0.tar.gz
+53723d86b73fe8dc135aa5e462fb00c1824ce0dbeacef449a38891860e5fb2058bbe31f5d7f1c1534b51fe6d08498d418a549e30508fffa0418be78c6910e547 no-typing-extensions.patch
+"
diff --git a/testing/py3-janus/no-typing-extensions.patch b/testing/py3-janus/no-typing-extensions.patch
new file mode 100644
index 00000000000..948039cf501
--- /dev/null
+++ b/testing/py3-janus/no-typing-extensions.patch
@@ -0,0 +1,42 @@
+Patch-Source: https://github.com/aio-libs/janus/pull/504
+From 78632be4f75181432dc2ccffe912e063a8258a65 Mon Sep 17 00:00:00 2001
+From: ptrcnull <git@ptrcnull.me>
+Date: Sun, 12 Feb 2023 22:33:15 +0100
+Subject: [PATCH] Use typing_extensions only on Python 3.7 and lower
+
+Protocol was added with PEP 544 to Python 3.8+
+---
+ janus/__init__.py | 6 +++++-
+ setup.cfg | 2 +-
+ 2 files changed, 6 insertions(+), 2 deletions(-)
+
+diff --git a/janus/__init__.py b/janus/__init__.py
+index a2887aa..8b2a9fe 100644
+--- a/janus/__init__.py
++++ b/janus/__init__.py
+@@ -9,7 +9,11 @@ from queue import Empty as SyncQueueEmpty
+ from queue import Full as SyncQueueFull
+ from typing import Any, Callable, Deque, Generic, List, Optional, Set, TypeVar
+
+-from typing_extensions import Protocol
++try:
++ # Python 3.8+
++ from typing import Protocol
++except ImportError:
++ from typing_extensions import Protocol
+
+ __version__ = "1.0.0"
+ __all__ = (
+diff --git a/setup.cfg b/setup.cfg
+index e0032f3..44a6efe 100644
+--- a/setup.cfg
++++ b/setup.cfg
+@@ -44,7 +44,7 @@ packages = find:
+ zip_safe = True
+ include_package_data = True
+ install_requires =
+- typing-extensions>=3.7.4.3
++ typing-extensions>=3.7.4.3;python_version<"3.8"
+
+ [flake8]
+ exclude = .git,.env,__pycache__,.eggs
diff --git a/testing/py3-jaraco.packaging/APKBUILD b/testing/py3-jaraco.packaging/APKBUILD
deleted file mode 100644
index 0c5a0a3d52d..00000000000
--- a/testing/py3-jaraco.packaging/APKBUILD
+++ /dev/null
@@ -1,27 +0,0 @@
-# Contributor: Duncan Bellamy <dunk@denkimushi.com>
-# Maintainer: Duncan Bellamy <dunk@denkimushi.com>
-pkgname=py3-jaraco.packaging
-pkgver=9.0.0
-pkgrel=0
-pkgdesc="tools to supplement packaging Python releases"
-url="https://github.com/jaraco/jaraco.packaging"
-arch="noarch"
-license="MIT"
-# archive has no tests
-options="!check"
-depends="python3 py3-setuptools"
-makedepends="py3-build py3-pip py3-setuptools_scm py3-wheel"
-source="https://files.pythonhosted.org/packages/source/j/jaraco.packaging/jaraco.packaging-$pkgver.tar.gz"
-builddir="$srcdir/jaraco.packaging-$pkgver"
-
-build() {
- python3 -m build --skip-dependency-check --no-isolation --wheel .
-}
-
-package() {
- pip3 install --no-warn-script-location --ignore-installed --no-deps --root="$pkgdir" dist/jaraco.packaging-$pkgver-py3-none-any.whl
-}
-
-sha512sums="
-5968418251eeb7fa0f5657e8b8b4ead40f7f2b28fbaa8dc331a3bb0518d32b45646b85521e941e7c483ef8861d9a9cd47c45126cfdf2da708bd8f3b3514b47da jaraco.packaging-9.0.0.tar.gz
-"
diff --git a/testing/py3-json-logger/APKBUILD b/testing/py3-json-logger/APKBUILD
deleted file mode 100644
index 9b5e1987cef..00000000000
--- a/testing/py3-json-logger/APKBUILD
+++ /dev/null
@@ -1,26 +0,0 @@
-# Contributor: Justin Berthault <justin.berthault@zaclys.net>
-# Maintainer: Justin Berthault <justin.berthault@zaclys.net>
-pkgname=py3-json-logger
-pkgver=0.1.11
-pkgrel=2
-pkgdesc="A python library adding a json log formatter"
-url="https://github.com/madzak/python-json-logger"
-arch="noarch"
-license="BSD-2-Clause"
-depends="py3-setuptools"
-source="$pkgname-v$pkgver.tar.gz::https://github.com/madzak/python-json-logger/archive/v$pkgver.tar.gz"
-builddir="$srcdir/"python-json-logger-$pkgver
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 setup.py test
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="de0e66fd99d5b763c1fe2574e0e2cfc8c1053b88adbbc9b7bf8a48027c1c14c141c1389a303f9dcc43a18671085abaef8650150ecd4a7c281a2a966de5f0f136 py3-json-logger-v0.1.11.tar.gz"
diff --git a/testing/py3-jsonpickle/APKBUILD b/testing/py3-jsonpickle/APKBUILD
deleted file mode 100644
index 8c590839936..00000000000
--- a/testing/py3-jsonpickle/APKBUILD
+++ /dev/null
@@ -1,41 +0,0 @@
-# Maintainer:
-pkgname=py3-jsonpickle
-pkgver=2.0.0
-pkgrel=2
-pkgdesc="Serializing any arbitrary object graph into JSON"
-url="https://pypi.python.org/pypi/jsonpickle/"
-arch="noarch"
-license="BSD-3-Clause"
-depends="python3 py3-numpy py3-pandas"
-makedepends="py3-setuptools py3-setuptools_scm"
-checkdepends="py3-pytest"
-source="https://files.pythonhosted.org/packages/source/j/jsonpickle/jsonpickle-$pkgver.tar.gz
- tests.patch
- "
-builddir="$srcdir/jsonpickle-$pkgver"
-
-replaces="py-jsonpickle" # Backwards compatibility
-provides="py-jsonpickle=$pkgver-r$pkgrel" # Backwards compatibility
-
-prepare() {
- default_prepare
-
- sed -e '/setuptools_scm/d' \
- -e "/^\[metadata\]/a verison = $pkgver" \
- -i setup.cfg
-}
-
-build() {
- python3 setup.py build
-}
-
-check() {
- PYTHONPATH=$PWD/build/lib pytest-3 -c /dev/null
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="acba11e5dfce116b27edfe0fdccdd74755e299aa43f873dd1ce547d947b58f14c1059c21d04007b5be0857f7ce69fe5355fb2edc47a99cc2217fe00297ca78d3 jsonpickle-2.0.0.tar.gz
-8df533695556bc7b329211dfbb5ad667fbd8f9b569721a054f9dead9402ac365666f50ff4343feda536e679a58f1244708ab10fa2f6f8b33b2469dfdc57c576c tests.patch"
diff --git a/testing/py3-jsonpickle/tests.patch b/testing/py3-jsonpickle/tests.patch
deleted file mode 100644
index 99d78af9620..00000000000
--- a/testing/py3-jsonpickle/tests.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-diff --git a/jsonpickle/pickler.py b/jsonpickle/pickler.py
-index ce64592..62ba575 100644
---- a/jsonpickle/pickler.py
-+++ b/jsonpickle/pickler.py
-@@ -462,6 +462,9 @@ class Pickler(object):
- if has_getinitargs:
- data[tags.INITARGS] = self._flatten(obj.__getinitargs__())
-
-+ if type(obj).__name__ == 'TextIOWrapper':
-+ return None
-+
- if has_getstate:
- try:
- state = obj.__getstate__()
-
diff --git a/testing/py3-jsonschema417/APKBUILD b/testing/py3-jsonschema417/APKBUILD
new file mode 100644
index 00000000000..86980990210
--- /dev/null
+++ b/testing/py3-jsonschema417/APKBUILD
@@ -0,0 +1,67 @@
+# Contributor: Iskren Chernev <me@iskren.info>
+# Contributor: Francesco Colista <fcolista@alpinelinux.org>
+# Maintainer: Iskren Chernev <me@iskren.info>
+pkgname=py3-jsonschema417
+pkgver=4.17.3
+pkgrel=1
+pkgdesc="An implementation of JSON Schema validation for Python"
+url="https://github.com/python-jsonschema/jsonschema"
+arch="noarch"
+license="MIT"
+depends="python3 py3-pyrsistent py3-attrs"
+makedepends="
+ py3-gpep517
+ py3-hatch-fancy-pypi-readme
+ py3-hatch-vcs
+ py3-hatchling
+ py3-installer
+ py3-setuptools_scm
+ py3-wheel
+ "
+checkdepends="py3-twisted py3-pytest"
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/j/jsonschema/jsonschema-$pkgver.tar.gz
+ "
+builddir="$srcdir/jsonschema-$pkgver"
+
+prepare() {
+ default_prepare
+ find . -name '*.py' -exec \
+ sed -i \
+ -e 's/import jsonschema$/import jsonschema417 as jsonschema/' \
+ -e 's/import jsonschema[.]/import jsonschema417./' \
+ -e 's/from jsonschema/from jsonschema417/' '{}' \;
+ mv jsonschema jsonschema417
+ sed -i 's/name = "jsonschema"/name = "jsonschema417"/' pyproject.toml
+ # cli doesn't work as of now, it's also deprecated
+ rm jsonschema417/tests/test_cli.py
+ rm jsonschema417/tests/test_deprecations.py
+}
+
+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 twisted.trial jsonschema417
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/jsonschema417-$pkgver-py3-none-any.whl
+
+ # Add version suffix to executable files.
+ local path; for path in "$pkgdir"/usr/bin/*; do
+ mv "$path" "$path"-3
+ done
+
+ ln -s $pkgname-3 "$pkgdir"/usr/bin/jsonschema
+}
+
+sha512sums="
+626fc913c37d2e49e4b47c9e058aab4a96c1dc50c35d8def0b2ea0ca464dc25e3318d4fde4927c11ca38068743cd81779d5189464b821407ac1de1788bad30e2 jsonschema-4.17.3.tar.gz
+"
diff --git a/testing/py3-junit-xml/APKBUILD b/testing/py3-junit-xml/APKBUILD
index 453fad26b07..4136d13b9de 100644
--- a/testing/py3-junit-xml/APKBUILD
+++ b/testing/py3-junit-xml/APKBUILD
@@ -1,16 +1,17 @@
# Maintainer: Leonardo Arena <rnalrd@alpinelinx.org>
pkgname=py3-junit-xml
_pkgname=junit-xml
-pkgver=1.8
-pkgrel=6
+pkgver=1.9
+pkgrel=2
pkgdesc="Creates JUnit XML test result documents that can be read by tools such as Jenkins"
options="!check" # 1 test fail
-url="https://pypi.python.org/pypi/junit-xml"
+url="https://pypi.org/project/junit-xml"
arch="noarch"
license="MIT"
depends="py3-six"
makedepends="py3-setuptools"
checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -23,7 +24,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="8fcef94ea73a77ad597bb3280578f0fea86573b779eb4aea1e458e55f1866637a7b43aa04502a65ecb1f2a7403cc61a76ccd35feb4b69eeb6fdc8352914d61a4 junit-xml-1.8.tar.gz"
+sha512sums="
+2a8135255f649cf1ffe0fb580ea80cec1f00e6276ebb0cbc28feda64a8c788102f5b4b65a555b451b0e9b137118baaccb014ab86be0fa30fb6829d0734226619 junit-xml-1.9.tar.gz
+"
diff --git a/testing/py3-jwcrypto/APKBUILD b/testing/py3-jwcrypto/APKBUILD
deleted file mode 100644
index dbf3181b910..00000000000
--- a/testing/py3-jwcrypto/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Contributor: prspkt <prspkt@protonmail.com>
-# Maintainer: prspkt <prspkt@protonmail.com>
-pkgname=py3-jwcrypto
-_pkgname=jwcrypto
-pkgver=0.8
-pkgrel=2
-pkgdesc="Python module implementing JOSE Web standards"
-url="https://github.com/latchset/jwcrypto"
-arch="noarch"
-license="LGPL-3.0-only"
-depends="py3-cryptography"
-makedepends="py3-setuptools"
-checkdepends="py3-pytest"
-subpackages="$pkgname-doc"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
-builddir="$srcdir"/$_pkgname-$pkgver
-
-build() {
- python3 setup.py build
-}
-
-check() {
- cd "$builddir"/$_pkgname
- py.test-3
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="e8dc62d6159e5722a572e049c41edc8e31fe0d022aa47987ab6720c7057cbac2f98cec5d35af1ea02f6bc6efde769810fde4b868e019956b138cfac529cc027d jwcrypto-0.8.tar.gz"
diff --git a/testing/py3-kaitaistruct/APKBUILD b/testing/py3-kaitaistruct/APKBUILD
deleted file mode 100644
index 7c2e2c7caf0..00000000000
--- a/testing/py3-kaitaistruct/APKBUILD
+++ /dev/null
@@ -1,25 +0,0 @@
-# Contributor: Michał Polański <michal@polanski.me>
-# Maintainer: Michał Polański <michal@polanski.me>
-pkgname=py3-kaitaistruct
-_pkgname=kaitai_struct_python_runtime
-pkgver=0.9
-pkgrel=2
-pkgdesc="Kaitai Struct API for Python"
-url="https://kaitai.io/"
-license="MIT"
-arch="noarch"
-options="!check" # no test suite
-depends="python3"
-makedepends="py3-setuptools"
-source="$_pkgname-$pkgver.tar.gz::https://github.com/kaitai-io/kaitai_struct_python_runtime/archive/$pkgver.tar.gz"
-builddir="$srcdir/$_pkgname-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir" --skip-build
-}
-
-sha512sums="e99d4aa0df046b346f73c8ee7b3d737bc62bea2891b5948be3d8814b575d44e59146e318b6dd9966d937e327103f9348b26048885dbdf5a44080601795d49b05 kaitai_struct_python_runtime-0.9.tar.gz"
diff --git a/testing/py3-kazoo/APKBUILD b/testing/py3-kazoo/APKBUILD
index 74274b3d3b3..eecdfaa344d 100644
--- a/testing/py3-kazoo/APKBUILD
+++ b/testing/py3-kazoo/APKBUILD
@@ -3,7 +3,7 @@
pkgname=py3-kazoo
pkgver=0_git20211202
_gitrev=f585d605eea0a37a08aae95a8cc259b80da2ecf0 # tag/rel is 16 months behind
-pkgrel=0
+pkgrel=3
pkgdesc="Python library for Apache Zookeeper"
url="https://github.com/python-zk/kazoo"
arch="noarch"
@@ -11,6 +11,7 @@ license="Apache-2.0"
depends="python3"
makedepends="py3-setuptools"
options="!check" # test requires zookeeper server
+subpackages="$pkgname-pyc"
source="$pkgname-$_gitrev.tar.gz::https://github.com/python-zk/kazoo/archive/$_gitrev.tar.gz"
builddir="$srcdir/kazoo-$_gitrev"
diff --git a/testing/py3-keepalive/APKBUILD b/testing/py3-keepalive/APKBUILD
index 428ebd4c382..63c8ebc2599 100644
--- a/testing/py3-keepalive/APKBUILD
+++ b/testing/py3-keepalive/APKBUILD
@@ -3,29 +3,44 @@
pkgname=py3-keepalive
pkgver=0.5
_pkgname=keepalive
-pkgrel=1
+pkgrel=5
pkgdesc="urllib keepalive support for python"
-options="!check" # no test suite
url="https://github.com/wikier/keepalive"
arch="noarch"
license="LGPL-2.1-or-later"
depends="python3"
-makedepends="py3-setuptools"
-subpackages="$pkgname-doc"
+makedepends="py3-setuptools py3-gpep517 py3-wheel py3-installer"
+subpackages="$pkgname-doc $pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/k/$_pkgname/$_pkgname-$pkgver.tar.gz
-https://raw.githubusercontent.com/wikier/$_pkgname/master/README.md"
+https://raw.githubusercontent.com/wikier/$_pkgname/master/README.md
+ py3.patch
+ fix-import.patch
+ "
builddir="$srcdir/$_pkgname-$pkgver"
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ # no proper testsuite
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -c 'from keepalive import HTTPHandler'
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+
install -Dm0644 "$srcdir"/README.md -t "$pkgdir"/usr/share/doc/"$pkgname"
}
sha512sums="
f5a7a2113d87aafda42fbbefe0ca6af27986dbac59cdd76f6f66b858b8a66c7b792d93324e3c77009fac80b10996f74bad631935118617a49703e111db3e68a8 keepalive-0.5.tar.gz
1cc046e36aa7697a5a96755bdd5f55916f0a3b97508ce51105affc694e3935910bfb88d6065808e3bc489b0aae01d77c6f7c60f193b551fe760949dd3bb78582 README.md
+174795226911e8a7b55c02c0d5aa608ff4d6fac83a6a1632d69c252f280be26c205ddb03ec37c5f9cc55fa38ae536a54812f4d61bbabaa9a1be1314ac1d8c299 py3.patch
+25d0cd481908ac39cdfe699bf1ba1a920b51ef620ebbb47b9dabb8fb4a6d446c7028edd26494c4067590fac4464b6e92aac0b92be4a3c0c7fb227b99768d0a3b fix-import.patch
"
diff --git a/testing/py3-keepalive/fix-import.patch b/testing/py3-keepalive/fix-import.patch
new file mode 100644
index 00000000000..1b439511c15
--- /dev/null
+++ b/testing/py3-keepalive/fix-import.patch
@@ -0,0 +1,18 @@
+From: Patrycja Rosa <alpine@ptrcnull.me>
+Date: Wed, 06 Sep 2023 23:09:21 +0200
+Subject: [PATCH] make import relative
+
+otherwise, the package wants to import itself and imports nothing
+
+diff --git a/keepalive/__init__.py b/keepalive/__init__.py
+index 65dd57b..e04f96a 100644
+--- a/keepalive/__init__.py
++++ b/keepalive/__init__.py
+@@ -20,6 +20,6 @@
+ # Copyright 2002-2004 Michael D. Stenner, Ryan Tomayko
+ # Copyright 2015 Sergio Fernández
+
+-from keepalive import *
++from .keepalive import *
+
+ __version__ = "0.5"
diff --git a/testing/py3-keepalive/py3.patch b/testing/py3-keepalive/py3.patch
new file mode 100644
index 00000000000..3042af31b01
--- /dev/null
+++ b/testing/py3-keepalive/py3.patch
@@ -0,0 +1,553 @@
+Patch-Source: https://github.com/wikier/keepalive/pull/11
+From 64393f6c5bf9c69d946b584fd664dd4df72604e6 Mon Sep 17 00:00:00 2001
+From: Theodore Ni <3806110+tjni@users.noreply.github.com>
+Date: Tue, 6 Jun 2023 21:51:59 -0700
+Subject: [PATCH] Convert to Python 3 and drop support for Python 2.
+
+---
+ README.md | 2 +-
+ keepalive/keepalive.py | 226 +++++++++++++++++------------------------
+ setup.py | 28 ++---
+ 3 files changed, 103 insertions(+), 153 deletions(-)
+
+diff --git a/keepalive/keepalive.py b/keepalive/keepalive.py
+index c07ef81..43787c7 100644
+--- a/keepalive/keepalive.py
++++ b/keepalive/keepalive.py
+@@ -20,15 +20,15 @@
+ # Copyright 2002-2004 Michael D. Stenner, Ryan Tomayko
+ # Copyright 2015 Sergio Fernández
+
+-"""An HTTP handler for urllib2 that supports HTTP 1.1 and keepalive.
++"""An HTTP handler for urllib that supports HTTP 1.1 and keepalive.
+
+->>> import urllib2
++>>> import urllib.request
+ >>> from keepalive import HTTPHandler
+ >>> keepalive_handler = HTTPHandler()
+->>> opener = urllib2.build_opener(keepalive_handler)
+->>> urllib2.install_opener(opener)
++>>> opener = urllib.request.build_opener(keepalive_handler)
++>>> urllib.request.install_opener(opener)
+ >>>
+->>> fo = urllib2.urlopen('http://www.python.org')
++>>> fo = urllib.request.urlopen('http://www.python.org')
+
+ If a connection to a given host is requested, and all of the existing
+ connections are still in use, another connection will be opened. If
+@@ -58,7 +58,7 @@
+
+ Upon a status of 200, the object returned has a few additional
+ attributes and methods, which should not be used if you want to
+- remain consistent with the normal urllib2-returned objects:
++ remain consistent with the normal urllib-returned objects:
+
+ close_connection() - close the connection to the host
+ readlines() - you know, readlines()
+@@ -73,55 +73,30 @@
+
+ Unfortunately, these are ONLY there if status == 200, so it's not
+ easy to distinguish between non-200 responses. The reason is that
+- urllib2 tries to do clever things with error codes 301, 302, 401,
++ urllib tries to do clever things with error codes 301, 302, 401,
+ and 407, and it wraps the object upon return.
+
+- For python versions earlier than 2.4, you can avoid this fancy error
+- handling by setting the module-level global HANDLE_ERRORS to zero.
+- You see, prior to 2.4, it's the HTTP Handler's job to determine what
+- to handle specially, and what to just pass up. HANDLE_ERRORS == 0
+- means "pass everything up". In python 2.4, however, this job no
+- longer belongs to the HTTP Handler and is now done by a NEW handler,
+- HTTPErrorProcessor. Here's the bottom line:
+-
+- python version < 2.4
+- HANDLE_ERRORS == 1 (default) pass up 200, treat the rest as
+- errors
+- HANDLE_ERRORS == 0 pass everything up, error processing is
+- left to the calling code
+- python version >= 2.4
+- HANDLE_ERRORS == 1 pass up 200, treat the rest as errors
+- HANDLE_ERRORS == 0 (default) pass everything up, let the
+- other handlers (specifically,
+- HTTPErrorProcessor) decide what to do
+-
+- In practice, setting the variable either way makes little difference
+- in python 2.4, so for the most consistent behavior across versions,
+- you probably just want to use the defaults, which will give you
+- exceptions on errors.
+-
+ """
+
+ # $Id: keepalive.py,v 1.17 2006/12/08 00:14:16 mstenner Exp $
+
+-import urllib2
+-import httplib
++import urllib.error
++import urllib.request
++import http.client
+ import socket
+-import thread
++import _thread
+
+ DEBUG = None
+
+ import sys
+-if sys.version_info < (2, 4): HANDLE_ERRORS = 1
+-else: HANDLE_ERRORS = 0
+-
++
+ class ConnectionManager:
+ """
+ The connection manager must be able to:
+ * keep track of all existing
+ """
+ def __init__(self):
+- self._lock = thread.allocate_lock()
++ self._lock = _thread.allocate_lock()
+ self._hostmap = {} # map hosts to a list of connections
+ self._connmap = {} # map connections to host
+ self._readymap = {} # map connection to ready state
+@@ -129,7 +104,7 @@ def __init__(self):
+ def add(self, host, connection, ready):
+ self._lock.acquire()
+ try:
+- if not self._hostmap.has_key(host): self._hostmap[host] = []
++ if host not in self._hostmap: self._hostmap[host] = []
+ self._hostmap[host].append(connection)
+ self._connmap[connection] = host
+ self._readymap[connection] = ready
+@@ -159,7 +134,7 @@ def get_ready_conn(self, host):
+ conn = None
+ self._lock.acquire()
+ try:
+- if self._hostmap.has_key(host):
++ if host in self._hostmap:
+ for c in self._hostmap[host]:
+ if self._readymap[c]:
+ self._readymap[c] = 0
+@@ -183,7 +158,7 @@ def __init__(self):
+ def open_connections(self):
+ """return a list of connected hosts and the number of connections
+ to each. [('foo.com:80', 2), ('bar.org', 1)]"""
+- return [(host, len(li)) for (host, li) in self._cm.get_all().items()]
++ return [(host, len(li)) for (host, li) in list(self._cm.get_all().items())]
+
+ def close_connection(self, host):
+ """close connection(s) to <host>
+@@ -195,7 +170,7 @@ def close_connection(self, host):
+
+ def close_all(self):
+ """close all open connections"""
+- for host, conns in self._cm.get_all().items():
++ for host, conns in list(self._cm.get_all().items()):
+ for h in conns:
+ self._cm.remove(h)
+ h.close()
+@@ -213,7 +188,7 @@ def _remove_connection(self, host, connection, close=0):
+ def do_open(self, req):
+ host = req.host
+ if not host:
+- raise urllib2.URLError('no host given')
++ raise urllib.error.URLError('no host given')
+
+ try:
+ h = self._cm.get_ready_conn(host)
+@@ -237,8 +212,8 @@ def do_open(self, req):
+ self._cm.add(host, h, 0)
+ self._start_transaction(h, req)
+ r = h.getresponse()
+- except (socket.error, httplib.HTTPException), err:
+- raise urllib2.URLError(err)
++ except (socket.error, http.client.HTTPException) as err:
++ raise urllib.error.URLError(err)
+
+ if DEBUG: DEBUG.info("STATUS: %s, %s", r.status, r.reason)
+
+@@ -255,11 +230,7 @@ def do_open(self, req):
+ r.headers = r.msg
+ r.msg = r.reason
+
+- if r.status == 200 or not HANDLE_ERRORS:
+- return r
+- else:
+- return self.parent.error('http', req, r,
+- r.status, r.msg, r.headers)
++ return r
+
+ def _reuse_connection(self, h, req, host):
+ """start the transaction with a re-used connection
+@@ -273,7 +244,7 @@ def _reuse_connection(self, h, req, host):
+ r = h.getresponse()
+ # note: just because we got something back doesn't mean it
+ # worked. We'll check the version below, too.
+- except (socket.error, httplib.HTTPException):
++ except (socket.error, http.client.HTTPException):
+ r = None
+ except:
+ # adding this block just in case we've missed
+@@ -292,7 +263,7 @@ def _reuse_connection(self, h, req, host):
+ raise
+
+ if r is None or r.version == 9:
+- # httplib falls back to assuming HTTP 0.9 if it gets a
++ # http.client falls back to assuming HTTP 0.9 if it gets a
+ # bad header back. This is most likely to happen if
+ # the socket has been closed by the server since we
+ # last used the connection.
+@@ -312,22 +283,22 @@ def _start_transaction(self, h, req):
+ h.putrequest('POST', req.selector)
+ else:
+ h.putrequest('POST', req.get_selector())
+- if not req.headers.has_key('Content-type'):
++ if 'Content-type' not in req.headers:
+ h.putheader('Content-type',
+ 'application/x-www-form-urlencoded')
+- if not req.headers.has_key('Content-length'):
++ if 'Content-length' not in req.headers:
+ h.putheader('Content-length', '%d' % len(data))
+ else:
+ if hasattr(req, 'selector'):
+ h.putrequest('GET', req.selector)
+ else:
+ h.putrequest('GET', req.get_selector())
+- except (socket.error, httplib.HTTPException), err:
+- raise urllib2.URLError(err)
++ except (socket.error, http.client.HTTPException) as err:
++ raise urllib.error.URLError(err)
+
+ for args in self.parent.addheaders:
+ h.putheader(*args)
+- for k, v in req.headers.items():
++ for k, v in list(req.headers.items()):
+ h.putheader(k, v)
+ h.endheaders()
+ if req.data:
+@@ -336,7 +307,7 @@ def _start_transaction(self, h, req):
+ def _get_connection(self, host):
+ return NotImplementedError
+
+-class HTTPHandler(KeepAliveHandler, urllib2.HTTPHandler):
++class HTTPHandler(KeepAliveHandler, urllib.request.HTTPHandler):
+ def __init__(self):
+ KeepAliveHandler.__init__(self)
+
+@@ -346,7 +317,7 @@ def http_open(self, req):
+ def _get_connection(self, host):
+ return HTTPConnection(host)
+
+-class HTTPSHandler(KeepAliveHandler, urllib2.HTTPSHandler):
++class HTTPSHandler(KeepAliveHandler, urllib.request.HTTPSHandler):
+ def __init__(self, ssl_factory=None):
+ KeepAliveHandler.__init__(self)
+ if not ssl_factory:
+@@ -364,7 +335,7 @@ def _get_connection(self, host):
+ try: return self._ssl_factory.get_https_connection(host)
+ except AttributeError: return HTTPSConnection(host)
+
+-class HTTPResponse(httplib.HTTPResponse):
++class HTTPResponse(http.client.HTTPResponse):
+ # we need to subclass HTTPResponse in order to
+ # 1) add readline() and readlines() methods
+ # 2) add close_connection() methods
+@@ -385,10 +356,7 @@ class HTTPResponse(httplib.HTTPResponse):
+
+
+ def __init__(self, sock, debuglevel=0, strict=0, method=None):
+- if method: # the httplib in python 2.3 uses the method arg
+- httplib.HTTPResponse.__init__(self, sock, debuglevel, method)
+- else: # 2.2 doesn't
+- httplib.HTTPResponse.__init__(self, sock, debuglevel)
++ http.client.HTTPResponse.__init__(self, sock, debuglevel, method)
+ self.fileno = sock.fileno
+ self.code = None
+ self._rbuf = b""
+@@ -398,7 +366,7 @@ def __init__(self, sock, debuglevel=0, strict=0, method=None):
+ self._url = None # (same)
+ self._connection = None # (same)
+
+- _raw_read = httplib.HTTPResponse.read
++ _raw_read = http.client.HTTPResponse.read
+
+ def close(self):
+ if self.fp:
+@@ -462,11 +430,11 @@ def readlines(self, sizehint = 0):
+ return list
+
+
+-class HTTPConnection(httplib.HTTPConnection):
++class HTTPConnection(http.client.HTTPConnection):
+ # use the modified response class
+ response_class = HTTPResponse
+
+-class HTTPSConnection(httplib.HTTPSConnection):
++class HTTPSConnection(http.client.HTTPSConnection):
+ response_class = HTTPResponse
+
+ #########################################################################
+@@ -474,81 +442,77 @@ class HTTPSConnection(httplib.HTTPSConnection):
+ #########################################################################
+
+ def error_handler(url):
+- global HANDLE_ERRORS
+- orig = HANDLE_ERRORS
+ keepalive_handler = HTTPHandler()
+- opener = urllib2.build_opener(keepalive_handler)
+- urllib2.install_opener(opener)
+- pos = {0: 'off', 1: 'on'}
+- for i in (0, 1):
+- print " fancy error handling %s (HANDLE_ERRORS = %i)" % (pos[i], i)
+- HANDLE_ERRORS = i
+- try:
+- fo = urllib2.urlopen(url)
+- foo = fo.read()
+- fo.close()
+- try: status, reason = fo.status, fo.reason
+- except AttributeError: status, reason = None, None
+- except IOError, e:
+- print " EXCEPTION: %s" % e
+- raise
+- else:
+- print " status = %s, reason = %s" % (status, reason)
+- HANDLE_ERRORS = orig
++ opener = urllib.request.build_opener(keepalive_handler)
++ urllib.request.install_opener(opener)
++ try:
++ fo = urllib.request.urlopen(url)
++ foo = fo.read()
++ fo.close()
++ try: status, reason = fo.status, fo.reason
++ except AttributeError: status, reason = None, None
++ except IOError as e:
++ print(" EXCEPTION: %s" % e)
++ raise
++ else:
++ print(" status = %s, reason = %s" % (status, reason))
+ hosts = keepalive_handler.open_connections()
+- print "open connections:", hosts
++ print("open connections:", hosts)
+ keepalive_handler.close_all()
+
+ def continuity(url):
+- import md5
++ import hashlib
+ format = '%25s: %s'
+
+ # first fetch the file with the normal http handler
+- opener = urllib2.build_opener()
+- urllib2.install_opener(opener)
+- fo = urllib2.urlopen(url)
++ opener = urllib.request.build_opener()
++ urllib.request.install_opener(opener)
++ fo = urllib.request.urlopen(url)
+ foo = fo.read()
+ fo.close()
+- m = md5.new(foo)
+- print format % ('normal urllib', m.hexdigest())
++ m = hashlib.md5()
++ m.update(foo)
++ print(format % ('normal urllib', m.hexdigest()))
+
+ # now install the keepalive handler and try again
+- opener = urllib2.build_opener(HTTPHandler())
+- urllib2.install_opener(opener)
++ opener = urllib.request.build_opener(HTTPHandler())
++ urllib.request.install_opener(opener)
+
+- fo = urllib2.urlopen(url)
++ fo = urllib.request.urlopen(url)
+ foo = fo.read()
+ fo.close()
+- m = md5.new(foo)
+- print format % ('keepalive read', m.hexdigest())
++ m = hashlib.md5()
++ m.update(foo)
++ print(format % ('keepalive read', m.hexdigest()))
+
+- fo = urllib2.urlopen(url)
+- foo = ''
++ fo = urllib.request.urlopen(url)
++ foo = b''
+ while 1:
+ f = fo.readline()
+ if f: foo = foo + f
+ else: break
+ fo.close()
+- m = md5.new(foo)
+- print format % ('keepalive readline', m.hexdigest())
++ m = hashlib.md5()
++ m.update(foo)
++ print(format % ('keepalive readline', m.hexdigest()))
+
+ def comp(N, url):
+- print ' making %i connections to:\n %s' % (N, url)
++ print(' making %i connections to:\n %s' % (N, url))
+
+ sys.stdout.write(' first using the normal urllib handlers')
+ # first use normal opener
+- opener = urllib2.build_opener()
+- urllib2.install_opener(opener)
++ opener = urllib.request.build_opener()
++ urllib.request.install_opener(opener)
+ t1 = fetch(N, url)
+- print ' TIME: %.3f s' % t1
++ print(' TIME: %.3f s' % t1)
+
+ sys.stdout.write(' now using the keepalive handler ')
+ # now install the keepalive handler and try again
+- opener = urllib2.build_opener(HTTPHandler())
+- urllib2.install_opener(opener)
++ opener = urllib.request.build_opener(HTTPHandler())
++ urllib.request.install_opener(opener)
+ t2 = fetch(N, url)
+- print ' TIME: %.3f s' % t2
+- print ' improvement factor: %.2f' % (t1/t2, )
++ print(' TIME: %.3f s' % t2)
++ print(' improvement factor: %.2f' % (t1/t2, ))
+
+ def fetch(N, url, delay=0):
+ import time
+@@ -556,7 +520,7 @@ def fetch(N, url, delay=0):
+ starttime = time.time()
+ for i in range(N):
+ if delay and i > 0: time.sleep(delay)
+- fo = urllib2.urlopen(url)
++ fo = urllib.request.urlopen(url)
+ foo = fo.read()
+ fo.close()
+ lens.append(len(foo))
+@@ -566,7 +530,7 @@ def fetch(N, url, delay=0):
+ for i in lens[1:]:
+ j = j + 1
+ if not i == lens[0]:
+- print "WARNING: inconsistent length on read %i: %i" % (j, i)
++ print("WARNING: inconsistent length on read %i: %i" % (j, i))
+
+ return diff
+
+@@ -574,16 +538,16 @@ def test_timeout(url):
+ global DEBUG
+ dbbackup = DEBUG
+ class FakeLogger:
+- def debug(self, msg, *args): print msg % args
++ def debug(self, msg, *args): print(msg % args)
+ info = warning = error = debug
+ DEBUG = FakeLogger()
+- print " fetching the file to establish a connection"
+- fo = urllib2.urlopen(url)
++ print(" fetching the file to establish a connection")
++ fo = urllib.request.urlopen(url)
+ data1 = fo.read()
+ fo.close()
+
+ i = 20
+- print " waiting %i seconds for the server to close the connection" % i
++ print(" waiting %i seconds for the server to close the connection" % i)
+ while i > 0:
+ sys.stdout.write('\r %2i' % i)
+ sys.stdout.flush()
+@@ -591,33 +555,33 @@ def debug(self, msg, *args): print msg % args
+ i -= 1
+ sys.stderr.write('\r')
+
+- print " fetching the file a second time"
+- fo = urllib2.urlopen(url)
++ print(" fetching the file a second time")
++ fo = urllib.request.urlopen(url)
+ data2 = fo.read()
+ fo.close()
+
+ if data1 == data2:
+- print ' data are identical'
++ print(' data are identical')
+ else:
+- print ' ERROR: DATA DIFFER'
++ print(' ERROR: DATA DIFFER')
+
+ DEBUG = dbbackup
+
+
+ def test(url, N=10):
+- print "checking error hander (do this on a non-200)"
++ print("checking error hander (do this on a non-200)")
+ try: error_handler(url)
+- except IOError, e:
+- print "exiting - exception will prevent further tests"
++ except IOError as e:
++ print("exiting - exception will prevent further tests")
+ sys.exit()
+- print
+- print "performing continuity test (making sure stuff isn't corrupted)"
++ print()
++ print("performing continuity test (making sure stuff isn't corrupted)")
+ continuity(url)
+- print
+- print "performing speed comparison"
++ print()
++ print("performing speed comparison")
+ comp(N, url)
+- print
+- print "performing dropped-connection check"
++ print()
++ print("performing dropped-connection check")
+ test_timeout(url)
+
+ if __name__ == '__main__':
+@@ -627,7 +591,7 @@ def test(url, N=10):
+ N = int(sys.argv[1])
+ url = sys.argv[2]
+ except:
+- print "%s <integer> <url>" % sys.argv[0]
++ print("%s <integer> <url>" % sys.argv[0])
+ else:
+ test(url, N)
+
+diff --git a/setup.py b/setup.py
+index 4f06360..0f963c1 100644
+--- a/setup.py
++++ b/setup.py
+@@ -23,23 +23,13 @@
+ from setuptools import setup
+ import sys
+
+-try:
+- import six
+- py3 = six.PY3
+-except:
+- py3 = sys.version_info[0] >= 3
+-
+ # metadata
+-if py3:
+- import re
+- _version_re = re.compile(r'__version__\s*=\s*"(.*)"')
+- for line in open('keepalive/__init__.py', encoding='utf-8'):
+- version_match = _version_re.match(line)
+- if version_match:
+- _version = version_match.group(1)
+-else:
+- import keepalive
+- _version = keepalive.__version__
++import re
++_version_re = re.compile(r'__version__\s*=\s*"(.*)"')
++for line in open('keepalive/__init__.py', encoding='utf-8'):
++ version_match = _version_re.match(line)
++ if version_match:
++ _version = version_match.group(1)
+
+ setup(
+ name = 'keepalive',
+@@ -62,14 +52,10 @@
+ 'Topic :: Software Development :: Libraries :: Python Modules',
+ 'License :: OSI Approved :: GNU Lesser General Public License v2 or later (LGPLv2+)',
+ 'Operating System :: OS Independent',
+- 'Programming Language :: Python :: 2',
+- 'Programming Language :: Python :: 2.6',
+- 'Programming Language :: Python :: 2.7',
+ 'Programming Language :: Python :: 3',
+ 'Programming Language :: Python :: 3.3',
+ 'Programming Language :: Python :: 3.4',
+ 'Programming Language :: Python :: 3.5',
+ ],
+- keywords = 'python http urllib keepalive',
+- use_2to3 = True
++ keywords = 'python http urllib keepalive'
+ )
diff --git a/testing/py3-kerberos/APKBUILD b/testing/py3-kerberos/APKBUILD
index 21cad75b1b7..4993ada1bf1 100644
--- a/testing/py3-kerberos/APKBUILD
+++ b/testing/py3-kerberos/APKBUILD
@@ -3,9 +3,9 @@
pkgname=py3-kerberos
_pkgname=kerberos
pkgver=1.3.1
-pkgrel=2
+pkgrel=4
pkgdesc="Python Kerberos high-level interface"
-url="https://pypi.python.org/pypi/kerberos"
+url="https://pypi.org/project/kerberos"
arch="all"
license="Apache-2.0"
depends="python3"
@@ -25,7 +25,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="63608c6ee94bcade567de19bea5e139039b336e181a319184666a0d1a11b1b6cd10cebf7bab52adc67502788c1632ff36a2534de37b4d01a5a32d9003aa74c6e kerberos-1.3.1.tar.gz"
diff --git a/testing/py3-kikit/APKBUILD b/testing/py3-kikit/APKBUILD
index 514cbff8abb..d7330d690ca 100644
--- a/testing/py3-kikit/APKBUILD
+++ b/testing/py3-kikit/APKBUILD
@@ -1,38 +1,63 @@
# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
pkgname=py3-kikit
-pkgver=1.0.2
+pkgver=1.5.1
pkgrel=0
pkgdesc="Python library and CLI tool to automate several tasks in KiCAD"
url="https://github.com/yaqwsx/KiKit"
# riscv64: py3-shapely
# aarch64, armv7, armhf, mips64: py3-solidpython
-arch="noarch !riscv64 !aarch64 !armv7 !armhf"
+# s390x: kicad
+arch="noarch !riscv64 !aarch64 !armv7 !armhf !s390x"
license="MIT"
depends="
- python3
+ kicad
py3-click
+ py3-commentjson
py3-markdown2
+ py3-pcbnewtransition
py3-pybars3
py3-shapely
py3-solidpython
+ python3
+ "
+makedepends="
+ py3-gpep517
py3-python-versioneer
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/yaqwsx/KiKit/archive/v$pkgver.tar.gz
"
-makedepends="py3-setuptools"
-source="$pkgname-$pkgver.tar.gz::https://github.com/yaqwsx/KiKit/archive/v$pkgver.tar.gz"
builddir="$srcdir/KiKit-$pkgver"
-options="!check" # Not all dependencies packaged for check
+
+prepare() {
+ default_prepare
+
+ # unvendor old versioneer
+ rm -f versioneer.py
+}
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- python3 setup.py test
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ cd test/units
+ ../../.testenv/bin/python3 -m pytest
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
+
sha512sums="
-404fecf3e89d7398159a1c63f4996fd8f8175ca55c7509994948a7e09d398e1836b5ad453c67cac0fcf7f10f0c1ad43cfccbb6c487d6b2732bbae2ed15910061 py3-kikit-1.0.2.tar.gz
+1090211f1840ebb6f2f0533b3f588405b5eb007cca6d391183e0450361f55631912891c2e25768431dc4ae0e79025313752d72e00fd049ee9e48b10cf470fcac py3-kikit-1.5.1.tar.gz
"
diff --git a/testing/py3-kombu/APKBUILD b/testing/py3-kombu/APKBUILD
deleted file mode 100644
index 35633a77062..00000000000
--- a/testing/py3-kombu/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Contributor: Stefan Wagner <stw@bit-strickerei.de>
-# Maintainer: Drew DeVault <sir@cmpwn.com>
-pkgname=py3-kombu
-pkgver=4.6.11
-pkgrel=2
-pkgdesc="a message queue abstraction layer"
-options="!check" # 3 Redis tests fail
-url="https://pypi.python.org/pypi/kombu/"
-arch="noarch !s390x" # Limited by py3-dill
-license="BSD-3-Clause"
-depends="py3-amqp py3-vine"
-makedepends="py3-setuptools"
-checkdepends="py3-pyro4 py3-case py3-nose py3-mock py3-tz py3-pytest py3-sqlalchemy py3-fakeredis"
-source="https://files.pythonhosted.org/packages/source/k/kombu/kombu-$pkgver.tar.gz"
-builddir="$srcdir/kombu-$pkgver"
-
-replaces="py-kombu" # Backwards compatibility
-provides="py-kombu=$pkgver-r$pkgrel" # Backwards compatibility
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 setup.py test
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-sha512sums="a69d380238da08a446b1d49facd16ab881ecf3b24bdca686e656b8a8974544e99e718e21cccd7ebb890764d6d6db3a58924917492b5a43189782ebaf482b039f kombu-4.6.11.tar.gz"
diff --git a/testing/py3-landlock/APKBUILD b/testing/py3-landlock/APKBUILD
new file mode 100644
index 00000000000..c82d3a7b632
--- /dev/null
+++ b/testing/py3-landlock/APKBUILD
@@ -0,0 +1,43 @@
+# Maintainer:
+pkgname=py3-landlock
+pkgver=1.0.0_pre4
+_pkgver="${pkgver//_pre/.dev}"
+pkgrel=2
+pkgdesc="Python interface to the Landlock Linux Security Module"
+url="https://github.com/Edward-Knight/landlock"
+arch="all"
+license="MIT"
+makedepends="
+ py3-flit-core
+ py3-gpep517
+ "
+checkdepends="
+ py3-pytest
+ py3-pytest-cov
+ py3-pytest-forked
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$_pkgver.tar.gz::https://github.com/Edward-Knight/landlock/archive/refs/tags/v$_pkgver.tar.gz"
+builddir="$srcdir/landlock-$_pkgver"
+options="!check" # needs landlock LSM loaded by kernel
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+40254d8c4bdac02daa7883705a55705087b9171ad2ed269bb29de8082ef7288755ac3a7f4f6a184b76b0c2786903057d08dc06244b0d126ee0bf57f9d90c0795 py3-landlock-1.0.0.dev4.tar.gz
+"
diff --git a/testing/py3-langcodes/APKBUILD b/testing/py3-langcodes/APKBUILD
new file mode 100644
index 00000000000..3569fcce1f2
--- /dev/null
+++ b/testing/py3-langcodes/APKBUILD
@@ -0,0 +1,40 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-langcodes
+pkgver=3.3.0
+pkgrel=2
+pkgdesc="Tools for labeling human languages with IETF language tags"
+url="https://github.com/rspeer/langcodes"
+arch="noarch"
+license="MIT"
+depends="py3-language-data py3-setuptools"
+makedepends="
+ py3-gpep517
+ py3-poetry-core
+ py3-wheel
+ "
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="https://pypi.python.org/packages/source/l/langcodes/langcodes-$pkgver.tar.gz"
+builddir="$srcdir/langcodes-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+b728d951dda28cdbc20e1bb7d3ad55281c04dee09f4451ea2820d3d5ad29eb4957c7fc5b0ad5e2a6828f28284d6a4785c780931396230401c2960bbf8d7f444a langcodes-3.3.0.tar.gz
+"
diff --git a/testing/py3-language-data/APKBUILD b/testing/py3-language-data/APKBUILD
new file mode 100644
index 00000000000..910a7978726
--- /dev/null
+++ b/testing/py3-language-data/APKBUILD
@@ -0,0 +1,37 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-language-data
+pkgver=1.1
+pkgrel=1
+pkgdesc="Supplementary data about languages used by the langcodes module"
+url="https://github.com/rspeer/language_data"
+arch="noarch"
+license="MIT"
+depends="
+ py3-marisa-trie
+ py3-setuptools
+ "
+makedepends="
+ py3-gpep517
+ py3-poetry-core
+ py3-wheel
+ "
+subpackages="$pkgname-pyc"
+source="https://pypi.python.org/packages/source/l/language_data/language_data-$pkgver.tar.gz"
+options="!check" # No tests
+builddir="$srcdir/language_data-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+4c9fcbf98a06bc5eb9eb3b004e6254d56cba6eaf3c8ae45f7b30d6d9ac13480344bd03ff234edc2086fea36267644d59aaa4b0db4920c04c83f831db9fc05cf3 language_data-1.1.tar.gz
+"
diff --git a/testing/py3-latex2mathml/APKBUILD b/testing/py3-latex2mathml/APKBUILD
new file mode 100644
index 00000000000..0f8750cd9be
--- /dev/null
+++ b/testing/py3-latex2mathml/APKBUILD
@@ -0,0 +1,33 @@
+# Contributor: Jakob Meier <comcloudway@ccw.icu>
+# Maintainer: Jakob Meier <comcloudway@ccw.icu>
+pkgname=py3-latex2mathml
+pkgver=3.77.0
+pkgrel=1
+pkgdesc="Pure Python library for LaTeX to MathML conversion"
+url="https://pypi.org/project/latex2mathml/"
+arch="noarch"
+license="MIT"
+depends="python3"
+makedepends="
+ py3-gpep517
+ py3-poetry-core
+ "
+subpackages="$pkgname-pyc"
+source="https://github.com/roniemartinez/latex2mathml/archive/$pkgver/latex2mathml-$pkgver.tar.gz"
+builddir="$srcdir/latex2mathml-$pkgver"
+options="!check"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ dist/*.whl
+}
+
+sha512sums="
+1f7b7f383e75017720d07518b665ffba0b9a6803f771ece64245b6cc12803f0b2ec5aa9a79c030a1735aa09225825edd14a522d90e65bc52c28c8bd4b7066e31 latex2mathml-3.77.0.tar.gz
+"
diff --git a/testing/py3-levenshtein/APKBUILD b/testing/py3-levenshtein/APKBUILD
index 1589bfebd6c..c14686726f6 100644
--- a/testing/py3-levenshtein/APKBUILD
+++ b/testing/py3-levenshtein/APKBUILD
@@ -1,25 +1,45 @@
# Contributor: Galen Abell <galen@galenabell.com>
# Maintainer: Galen Abell <galen@galenabell.com>
pkgname=py3-levenshtein
-_pyname=python-Levenshtein
-pkgver=0.12.2
+pkgver=0.25.1
pkgrel=2
pkgdesc="Python extension for computing string edit distances and similarities"
-url="https://github.com/ztane/python-Levenshtein"
+url="https://github.com/maxbachmann/Levenshtein"
arch="all"
license="GPL-2.0-only"
-options="!check" # no tests
-depends="python3"
-makedepends="py3-setuptools python3-dev"
-source="https://files.pythonhosted.org/packages/source/${_pyname%${_pyname#?}}/$_pyname/$_pyname-$pkgver.tar.gz"
-builddir="$srcdir/$_pyname-$pkgver"
+depends="py3-rapidfuzz"
+makedepends="
+ cmake
+ cython
+ py3-gpep517
+ py3-scikit-build
+ python3-dev
+ rapidfuzz
+ samurai
+ "
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/maxbachmann/Levenshtein/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/Levenshtein-$pkgver"
build() {
- python3 setup.py 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/Levenshtein*.whl
+ .testenv/bin/python3 -m pytest
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/Levenshtein*.whl
}
-sha512sums="97eac9d19121758af7620ad3963846e48434ceabb5376a83f28452015adf1a620620bfb53edb1c4f60b0fc8ec2b0faf35a105d7e2a0fc5df7a45fce81ba0dcdb python-Levenshtein-0.12.2.tar.gz"
+sha512sums="
+936dab36b15df6f2ee5425efb1fdb1490fb8f618ba453f464a6dd615bcc427e55ceee7474f06b34392871d9f38470b853602a11d8f9776eee66ec34156511ca4 py3-levenshtein-0.25.1.tar.gz
+"
diff --git a/testing/py3-lib_users/APKBUILD b/testing/py3-lib_users/APKBUILD
index c3caa11eea9..5cc2e422133 100644
--- a/testing/py3-lib_users/APKBUILD
+++ b/testing/py3-lib_users/APKBUILD
@@ -3,7 +3,7 @@
pkgname=py3-lib_users
_pkgname=lib_users
pkgver=0.15
-pkgrel=0
+pkgrel=3
pkgdesc="Checks /proc for libraries being mapped but marked as deleted"
url="https://github.com/klausman/lib_users"
arch="noarch"
@@ -11,6 +11,7 @@ license="GPL-2.0-or-later"
depends="python3"
makedepends="py3-setuptools"
options="!check" # https://bugs.python.org/issue29130
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/klausman/lib_users/archive/v$pkgver.tar.gz
setuptools.patch"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -24,7 +25,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
diff --git a/testing/py3-libacl/APKBUILD b/testing/py3-libacl/APKBUILD
index d908dd48948..37fd6fd97a5 100644
--- a/testing/py3-libacl/APKBUILD
+++ b/testing/py3-libacl/APKBUILD
@@ -2,8 +2,8 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-libacl
_pkgname=pylibacl
-pkgver=0.5.3
-pkgrel=5
+pkgver=0.7.0
+pkgrel=1
pkgdesc="A python module for manipulating ACLs"
url="https://pylibacl.k1024.org/"
arch="all"
@@ -27,4 +27,6 @@ package() {
python3 setup.py install --root="$pkgdir"
}
-sha512sums="7d58a3a64e939a8891333a0fb8aa6e12dcbbf09e4e829f86fd1bb41693dd4f734a4ab907770e8e341476594aa495b5308a26d495ebf251dcda308ee46e5392ad pylibacl-0.5.3.tar.gz"
+sha512sums="
+077515a00c7a048faf7792acd9c3e768d35674c0b3f4ec72fdf37561c90ed12bb392582a4fb9a23b7916db3375278c2636f2844f362a8335e7ad68e1e9b9c3bd pylibacl-0.7.0.tar.gz
+"
diff --git a/testing/py3-liblarch/APKBUILD b/testing/py3-liblarch/APKBUILD
index be1b645f23a..8827ce2b664 100644
--- a/testing/py3-liblarch/APKBUILD
+++ b/testing/py3-liblarch/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Rasmus Thomsen <oss@cogitri.dev>
-# Maintainer: Rasmus Thomsen <oss@cogitri.dev>
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=py3-liblarch
-pkgver=3.1.0
-pkgrel=1
+pkgver=3.2.0
+pkgrel=4
pkgdesc="A Python library to easily handle complex data structures, with a GTK binding"
url="https://wiki.gnome.org/Projects/liblarch"
arch="noarch"
@@ -10,6 +10,7 @@ license="LGPL-3.0-or-later"
depends="python3 py3-gobject3 gtk+3.0"
makedepends="py3-setuptools"
checkdepends="py3-nose py3-pyflakes xvfb-run"
+subpackages="$pkgname-pyc"
source="https://github.com/getting-things-gnome/liblarch/archive/v$pkgver/liblarch-$pkgver.tar.gz"
builddir="$srcdir/liblarch-$pkgver"
@@ -22,7 +23,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="042a763dd12612d6630c064b5af84011f1fb908626f17f866e103743cdaabb4983f922290287b0138938488a7c9bff33680ef8157f8bbcbc166e4f4f2d008951 liblarch-3.1.0.tar.gz"
+sha512sums="
+d356535f2e60885249be009f7e671fcb1ee02b7d32b7abecc3805c5f6b6e231fc34be0d7a73cd9f9a68dfaae0b1cf0a5bdc54ed3075901a149d58ad6577d92ab liblarch-3.2.0.tar.gz
+"
diff --git a/testing/py3-libmdbx/APKBUILD b/testing/py3-libmdbx/APKBUILD
index a0b0a1595b4..194fd298a00 100644
--- a/testing/py3-libmdbx/APKBUILD
+++ b/testing/py3-libmdbx/APKBUILD
@@ -1,14 +1,15 @@
# Maintainer: Noel Kuntze <noel.kuntze@contauro.com>
pkgname=py3-libmdbx
pkgver=0.10.2
-pkgrel=3
+pkgrel=6
pkgdesc="Python bindings for libmdbx"
url="https://gitlab.com/thermi/py3-libmdbx/"
arch="noarch !ppc64le" # test case segfaults in ppc64le
license="OLDAP-2.8"
depends="libmdbx"
-makedepends="py3-setuptools libmdbx"
-checkdepends="py3-pytest libmdbx"
+makedepends="py3-setuptools"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
source="py3-libmdbx-$pkgver.tar.gz::https://gitlab.com/Thermi/py3-libmdbx/-/archive/v$pkgver/py3-libmdbx-v$pkgver.tar.gz"
builddir="$srcdir/$pkgname-v$pkgver"
@@ -22,8 +23,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-
sha512sums="3014aa59b7b00c53442b9d2ad2a4ca55f61381c754ea8df1d38d6e26b5ab9109564026efc533a13f4d15fe7a45dbe507a75928a6b47932c89fe7a1d977dc38c4 py3-libmdbx-0.10.2.tar.gz"
diff --git a/testing/py3-libnacl/APKBUILD b/testing/py3-libnacl/APKBUILD
index 704a189c419..09f7740fabb 100644
--- a/testing/py3-libnacl/APKBUILD
+++ b/testing/py3-libnacl/APKBUILD
@@ -1,30 +1,43 @@
# Contributor: Fabian Affolter <fabian@affolter-engineering.ch>
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-libnacl
-_pkgname=libnacl
-pkgver=1.7.2
-pkgrel=2
+pkgver=2.1.0
+pkgrel=1
pkgdesc="Python bindings for libsodium/tweetnacl"
url="https://libnacl.readthedocs.org/"
-arch="noarch !armhf !armv7 !x86" # Tests fail on the builder but pass on CI
+arch="noarch"
license="Apache-2.0"
-makedepends="py3-setuptools libsodium-dev"
-source="$_pkgname-$pkgver.tar.gz::https://github.com/saltstack/libnacl/archive/v$pkgver.tar.gz"
-builddir="$srcdir"/$_pkgname-$pkgver
+depends="libsodium"
+makedepends="
+ libsodium-dev
+ py3-gpep517
+ py3-poetry-core
+ "
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/saltstack/libnacl/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir"/libnacl-$pkgver
replaces="py-libnacl" # Backwards compatibility
provides="py-libnacl=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- python3 -m unittest discover --start-directory tests -v
+ 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 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
-sha512sums="a4efbf73f73d9493ac365efa5a5bd6481f85ce4c880ad236bbf7478090bdea857e78e33e445c4e467d2a2032040863b835f32f9a942d2f1e467015bd76b0d469 libnacl-1.7.2.tar.gz"
+sha512sums="
+717aec5fcc9ffbb7fef5f265861f86a087cc1ad1a122d752b1d8447bf495b98106056f19ff2ad1001ca81b84085ae6167ec96db2c2f3823f0f9a72a2a54788df py3-libnacl-2.1.0.tar.gz
+"
diff --git a/testing/py3-librelingo-audios/APKBUILD b/testing/py3-librelingo-audios/APKBUILD
deleted file mode 100644
index 0a0e5575314..00000000000
--- a/testing/py3-librelingo-audios/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Contributor: Bart Ribbers <bribbers@disroot.org>
-# Maintainer: Bart Ribbers <bribbers@disroot.org>
-pkgname=py3-librelingo-audios
-pkgver=1.3.0
-pkgrel=1
-pkgdesc="Tools to help getting audios for LibreLingo courses"
-url="https://github.com/kantord/LibreLingo"
-arch="noarch"
-license="AGPL-3.0-only"
-depends="
- py3-librelingo-utils
- py3-librelingo-yaml-loader
- python3
- "
-makedepends="py3-setuptools"
-checkdepends="py3-pytest"
-source="https://pypi.python.org/packages/source/l/librelingo_audios/librelingo_audios-$pkgver.tar.gz"
-options="!check" # No tests in the PyPi package
-builddir="$srcdir/librelingo_audios-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- pytest
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-28acf157e4788a2c8216f79176e58eca1269e505fe536950a634a843d7c612d31058cb976c4c2961db3a36c2ad2fdb891ded62d32519c407ab8c7a17c50b1ced librelingo_audios-1.3.0.tar.gz
-"
diff --git a/testing/py3-librelingo-types/APKBUILD b/testing/py3-librelingo-types/APKBUILD
deleted file mode 100644
index 52464097127..00000000000
--- a/testing/py3-librelingo-types/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Contributor: Bart Ribbers <bribbers@disroot.org>
-# Maintainer: Bart Ribbers <bribbers@disroot.org>
-pkgname=py3-librelingo-types
-pkgver=3.2.0
-pkgrel=1
-pkgdesc="Data types to be used in Python packages for LibreLingo"
-url="https://github.com/kantord/LibreLingo"
-arch="noarch"
-license="AGPL-3.0-only"
-depends="python3"
-makedepends="py3-setuptools"
-checkdepends="py3-pytest"
-source="https://pypi.python.org/packages/source/l/librelingo_types/librelingo_types-$pkgver.tar.gz"
-options="!check" # No tests in the PyPi package
-builddir="$srcdir/librelingo_types-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- pytest
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-1889eaa4c7b9a6912f78f340f97f1009312d6fcb43bacc3e8cb7f3a0c785fa2ef73b4813e325381a36bff7e9c0c9c70ec3bf15e48fb8da0aaa672a08c32c7366 librelingo_types-3.2.0.tar.gz
-"
diff --git a/testing/py3-librelingo-utils/APKBUILD b/testing/py3-librelingo-utils/APKBUILD
deleted file mode 100644
index 95e21ef22ce..00000000000
--- a/testing/py3-librelingo-utils/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Contributor: Bart Ribbers <bribbers@disroot.org>
-# Maintainer: Bart Ribbers <bribbers@disroot.org>
-pkgname=py3-librelingo-utils
-pkgver=2.6.1
-pkgrel=1
-pkgdesc="Utilities to be used in LibreLingo-related-packages"
-url="https://github.com/kantord/LibreLingo"
-arch="noarch"
-license="AGPL-3.0-only"
-depends="
- py3-librelingo-types
- py3-regex
- python3
- "
-makedepends="py3-setuptools"
-checkdepends="py3-pytest"
-source="https://pypi.python.org/packages/source/l/librelingo_utils/librelingo_utils-$pkgver.tar.gz"
-options="!check" # No tests in the PyPi package
-builddir="$srcdir/librelingo_utils-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- pytest
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-56268c17d537212a22701bfd185784ecad6d25e662237039cde6d408757d7fadf92e121cef362aa797bb22278b9b1501d7a124b6d5d0c8610eb676022d44bbb9 librelingo_utils-2.6.1.tar.gz
-"
diff --git a/testing/py3-librelingo-yaml-loader/APKBUILD b/testing/py3-librelingo-yaml-loader/APKBUILD
deleted file mode 100644
index 11ce92804f9..00000000000
--- a/testing/py3-librelingo-yaml-loader/APKBUILD
+++ /dev/null
@@ -1,45 +0,0 @@
-# Contributor: Bart Ribbers <bribbers@disroot.org>
-# Maintainer: Bart Ribbers <bribbers@disroot.org>
-pkgname=py3-librelingo-yaml-loader
-pkgver=1.8.0
-pkgrel=1
-pkgdesc="Load YAML-based LibreLingo courses in your Python project"
-url="https://github.com/kantord/LibreLingo"
-arch="noarch"
-license="AGPL-3.0-only"
-depends="
- py3-bleach
- py3-bleach-allowlist
- py3-click
- py3-html2markdown
- py3-librelingo-types
- py3-markdown
- py3-pyfakefs
- py3-slugify
- py3-yaml
- python3
- "
-makedepends="py3-setuptools"
-checkdepends="
- py3-pytest
- py3-snapshottest
- "
-source="https://pypi.python.org/packages/source/l/librelingo_yaml_loader/librelingo_yaml_loader-$pkgver.tar.gz"
-options="!check" # No tests in the PyPi package
-builddir="$srcdir/librelingo_yaml_loader-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- pytest
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-e3331b0d50b360c7aa447c7bdc9937e578bfde9f398b916e951d6a1aa5d17c78a1591b9274021b31cc6a76df4415006d42cec0a13b7e3136f855fb24b858a605 librelingo_yaml_loader-1.8.0.tar.gz
-"
diff --git a/testing/py3-librtmp/APKBUILD b/testing/py3-librtmp/APKBUILD
index 64fa40d4b7f..d41fa5cb8ee 100644
--- a/testing/py3-librtmp/APKBUILD
+++ b/testing/py3-librtmp/APKBUILD
@@ -3,7 +3,7 @@
pkgname=py3-librtmp
_pkgname=python-librtmp
pkgver=0.3.0
-pkgrel=3
+pkgrel=6
pkgdesc="Python bindings for librtmp, built with cffi"
url="https://github.com/chrippa/python-librtmp"
arch="all"
@@ -11,6 +11,7 @@ license="BSD-2-Clause"
depends="py3-cffi"
makedepends="python3-dev py3-setuptools rtmpdump-dev"
checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -26,7 +27,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="1fa529f5c68341f225849061cbcf6883f80e48a492fae8319336ea1e17c22070d5bd204f768b2561b0ef8dfdf29b38789673fab3d3386290143eb94d2b51b8fe python-librtmp-0.3.0.tar.gz"
diff --git a/testing/py3-limits/APKBUILD b/testing/py3-limits/APKBUILD
new file mode 100644
index 00000000000..89bcddf8bc5
--- /dev/null
+++ b/testing/py3-limits/APKBUILD
@@ -0,0 +1,50 @@
+# Contributor: lauren n. liberda <lauren@selfisekai.rocks>
+# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
+pkgname=py3-limits
+pkgver=3.10.1
+pkgrel=1
+pkgdesc="Rate limiting using various strategies and storage backends such as redis & memcached"
+url="https://github.com/alisaifee/limits"
+arch="noarch"
+license="MIT"
+depends="
+ py3-deprecated
+ python3
+ "
+makedepends="py3-setuptools"
+checkdepends="
+ py3-flaky
+ py3-mongo
+ py3-pytest
+ py3-pytest-asyncio
+ py3-pytest-benchmark
+ py3-pytest-cov
+ py3-redis
+ "
+subpackages="$pkgname-pyc"
+options="!check" # most tests are integration with db connections, assume all connectors installed
+source="
+ https://github.com/alisaifee/limits/archive/refs/tags/$pkgver/limits-$pkgver.tar.gz
+
+ our-std-is-good-enough.patch
+ "
+builddir="$srcdir/limits-$pkgver"
+
+build() {
+ python3 setup.py build
+}
+
+check() {
+ pytest \
+ -m 'not benchmark and not etcd and not integration and not memcached' \
+ -k 'not aio and not Storage and not strategy' -v
+}
+
+package() {
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+sha512sums="
+5daa23a2a53dc56ba8e24fe72000bd69bfade9956a159c02731ef3a240682f467c4ae1f58878139fd9d0f67806bf115f6f97999160a2f66f34c64fdad1503d70 limits-3.10.1.tar.gz
+8db0d96f860a07bbc554504a6e94b61546a6be22c0b9736c6b5aca628db9b618efc30609fce3702ee8e3812e1e34329c04d2f34bd69fdaecaa7c7fa0a2bde8a7 our-std-is-good-enough.patch
+"
diff --git a/testing/py3-limits/our-std-is-good-enough.patch b/testing/py3-limits/our-std-is-good-enough.patch
new file mode 100644
index 00000000000..f2247e70e6e
--- /dev/null
+++ b/testing/py3-limits/our-std-is-good-enough.patch
@@ -0,0 +1,22 @@
+--- ./limits/util.py.orig
++++ ./limits/util.py
+@@ -8,7 +8,7 @@
+ from types import ModuleType
+ from typing import TYPE_CHECKING, cast
+
+-import importlib_resources
++from importlib import resources as importlib_resources
+ from packaging.version import Version
+
+ from limits.typing import Dict, List, NamedTuple, Optional, Tuple, Type, Union
+--- ./limits/typing.py.orig
++++ ./limits/typing.py
+@@ -11,7 +11,7 @@
+ Union,
+ )
+
+-from typing_extensions import ClassVar, Counter, ParamSpec, Protocol
++from typing import ClassVar, Counter, ParamSpec, Protocol
+
+ Serializable = Union[int, str, float]
+
diff --git a/testing/py3-lingua-franca/APKBUILD b/testing/py3-lingua-franca/APKBUILD
new file mode 100644
index 00000000000..c918237f30c
--- /dev/null
+++ b/testing/py3-lingua-franca/APKBUILD
@@ -0,0 +1,46 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-lingua-franca
+pkgver=0.4.8_alpha3
+pkgrel=1
+pkgdesc="Mycroft's multilingual text parsing and formatting library"
+url="https://github.com/OpenVoiceOS/ovos-lingua-franca"
+arch="noarch"
+license="Apache-2.0"
+depends="
+ py3-colour
+ py3-dateutil
+ py3-quebra-frases
+ py3-rapidfuzz
+ py3-webcolors
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/OpenVoiceOS/ovos-lingua-franca/archive/refs/tags/V${pkgver//_alpha/a}.tar.gz"
+builddir="$srcdir/ovos-lingua-franca-${pkgver//_alpha/a}"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+fce6e1aa17215110cc18c8d8a620aab63549492813dfdbe263ba7bc60748108476af7fb28d9b65dfcea46e009c469bb1410ffe752651649966fc3d4909d15d46 py3-lingua-franca-0.4.8_alpha3.tar.gz
+"
diff --git a/testing/py3-linkify-it-py/APKBUILD b/testing/py3-linkify-it-py/APKBUILD
new file mode 100644
index 00000000000..c9a6931b5b3
--- /dev/null
+++ b/testing/py3-linkify-it-py/APKBUILD
@@ -0,0 +1,35 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=py3-linkify-it-py
+pkgver=2.0.3
+pkgrel=1
+pkgdesc="Links recognition library with full unicode support"
+url="https://github.com/tsutsu3/linkify-it-py"
+arch="noarch"
+license="MIT"
+depends="python3 py3-uc-micro-py"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/tsutsu3/linkify-it-py/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/linkify-it-py-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+6621533246a42f3b13fb7dd9f1366cadb0e3c291bcb92fd899bc6389cb9f7904ababf4b5dbae51a561a4f50f8a20597badf03c82653ae8db75d9a5a484bc1229 py3-linkify-it-py-2.0.3.tar.gz
+"
diff --git a/testing/py3-litex-hub-modules/0001-fix-pythondata_software_compiler_rt-python3.patch b/testing/py3-litex-hub-modules/0001-fix-pythondata_software_compiler_rt-python3.patch
new file mode 100644
index 00000000000..9f17f2853d1
--- /dev/null
+++ b/testing/py3-litex-hub-modules/0001-fix-pythondata_software_compiler_rt-python3.patch
@@ -0,0 +1,405 @@
+Ran 2to3 to run python code on python3
+diff --color -rupN a/pythondata-software-compiler_rt-2020.04/pythondata_software_compiler_rt/data/lib/asan/scripts/asan_symbolize.py b/pythondata-software-compiler_rt-2020.04/pythondata_software_compiler_rt/data/lib/asan/scripts/asan_symbolize.py
+--- a/pythondata-software-compiler_rt-2020.04/pythondata_software_compiler_rt/data/lib/asan/scripts/asan_symbolize.py 2020-04-09 07:33:54.000000000 +0200
++++ b/pythondata-software-compiler_rt-2020.04/pythondata_software_compiler_rt/data/lib/asan/scripts/asan_symbolize.py 2024-01-11 13:21:54.089653123 +0100
+@@ -84,7 +84,7 @@ class LLVMSymbolizer(Symbolizer):
+ for hint in self.dsym_hints:
+ cmd.append('--dsym-hint=%s' % hint)
+ if DEBUG:
+- print ' '.join(cmd)
++ print(' '.join(cmd))
+ try:
+ result = subprocess.Popen(cmd, stdin=subprocess.PIPE,
+ stdout=subprocess.PIPE)
+@@ -100,8 +100,8 @@ class LLVMSymbolizer(Symbolizer):
+ try:
+ symbolizer_input = '"%s" %s' % (binary, offset)
+ if DEBUG:
+- print symbolizer_input
+- print >> self.pipe.stdin, symbolizer_input
++ print(symbolizer_input)
++ print(symbolizer_input, file=self.pipe.stdin)
+ while True:
+ function_name = self.pipe.stdout.readline().rstrip()
+ if not function_name:
+@@ -146,7 +146,7 @@ class Addr2LineSymbolizer(Symbolizer):
+ cmd += ['--demangle']
+ cmd += ['-e', self.binary]
+ if DEBUG:
+- print ' '.join(cmd)
++ print(' '.join(cmd))
+ return subprocess.Popen(cmd,
+ stdin=subprocess.PIPE, stdout=subprocess.PIPE)
+
+@@ -156,8 +156,8 @@ class Addr2LineSymbolizer(Symbolizer):
+ return None
+ lines = []
+ try:
+- print >> self.pipe.stdin, offset
+- print >> self.pipe.stdin, self.output_terminator
++ print(offset, file=self.pipe.stdin)
++ print(self.output_terminator, file=self.pipe.stdin)
+ is_first_frame = True
+ while True:
+ function_name = self.pipe.stdout.readline().rstrip()
+@@ -214,7 +214,7 @@ class DarwinSymbolizer(Symbolizer):
+
+ def open_atos(self):
+ if DEBUG:
+- print 'atos -o %s -arch %s' % (self.binary, self.arch)
++ print('atos -o %s -arch %s' % (self.binary, self.arch))
+ cmdline = ['atos', '-o', self.binary, '-arch', self.arch]
+ self.atos = UnbufferedLineConverter(cmdline, close_stderr=True)
+
+@@ -229,7 +229,7 @@ class DarwinSymbolizer(Symbolizer):
+ # foo(type1, type2) (in object.name) (filename.cc:80)
+ match = re.match('^(.*) \(in (.*)\) \((.*:\d*)\)$', atos_line)
+ if DEBUG:
+- print 'atos_line: ', atos_line
++ print('atos_line: ', atos_line)
+ if match:
+ function_name = match.group(1)
+ function_name = re.sub('\(.*?\)', '', function_name)
+@@ -304,7 +304,7 @@ class BreakpadSymbolizer(Symbolizer):
+ pass
+ elif fragments[0] == 'FUNC':
+ cur_function_addr = int(fragments[1], 16)
+- if not cur_function_addr in self.symbols.keys():
++ if not cur_function_addr in list(self.symbols.keys()):
+ self.symbols[cur_function_addr] = ' '.join(fragments[4:])
+ else:
+ # Line starting with an address.
+@@ -319,7 +319,7 @@ class BreakpadSymbolizer(Symbolizer):
+
+ def get_sym_file_line(self, addr):
+ key = None
+- if addr in self.addresses.keys():
++ if addr in list(self.addresses.keys()):
+ key = addr
+ else:
+ index = bisect.bisect_left(self.address_list, addr)
+@@ -343,7 +343,7 @@ class BreakpadSymbolizer(Symbolizer):
+ function_name, file_name, line_no = res
+ result = ['%s in %s %s:%d' % (
+ addr, function_name, file_name, line_no)]
+- print result
++ print(result)
+ return result
+ else:
+ return None
+@@ -425,7 +425,7 @@ class SymbolizationLoop(object):
+ self.frame_no = 0
+ for line in logfile:
+ processed = self.process_line(line)
+- print '\n'.join(processed)
++ print('\n'.join(processed))
+
+ def process_line_echo(self, line):
+ return [line.rstrip()]
+@@ -439,7 +439,7 @@ class SymbolizationLoop(object):
+ if not match:
+ return [self.current_line]
+ if DEBUG:
+- print line
++ print(line)
+ _, frameno_str, addr, binary, offset = match.groups()
+ if frameno_str == '0':
+ # Assume that frame #0 is the first frame of new stack trace.
+diff --color -rupN a/pythondata-software-compiler_rt-2020.04/pythondata_software_compiler_rt/data/lib/dfsan/scripts/build-libc-list.py b/pythondata-software-compiler_rt-2020.04/pythondata_software_compiler_rt/data/lib/dfsan/scripts/build-libc-list.py
+--- a/pythondata-software-compiler_rt-2020.04/pythondata_software_compiler_rt/data/lib/dfsan/scripts/build-libc-list.py 2020-04-09 07:33:54.000000000 +0200
++++ b/pythondata-software-compiler_rt-2020.04/pythondata_software_compiler_rt/data/lib/dfsan/scripts/build-libc-list.py 2024-01-11 13:21:54.209651423 +0100
+@@ -87,10 +87,10 @@ for l in libs:
+ if os.path.exists(l):
+ functions += defined_function_list(l)
+ else:
+- print >> sys.stderr, 'warning: library %s not found' % l
++ print('warning: library %s not found' % l, file=sys.stderr)
+
+ functions = list(set(functions))
+ functions.sort()
+
+ for f in functions:
+- print 'fun:%s=uninstrumented' % f
++ print('fun:%s=uninstrumented' % f)
+diff --color -rupN a/pythondata-software-compiler_rt-2020.04/pythondata_software_compiler_rt/data/lib/sanitizer_common/scripts/cpplint.py b/pythondata-software-compiler_rt-2020.04/pythondata_software_compiler_rt/data/lib/sanitizer_common/scripts/cpplint.py
+--- a/pythondata-software-compiler_rt-2020.04/pythondata_software_compiler_rt/data/lib/sanitizer_common/scripts/cpplint.py 2020-04-09 07:33:54.000000000 +0200
++++ b/pythondata-software-compiler_rt-2020.04/pythondata_software_compiler_rt/data/lib/sanitizer_common/scripts/cpplint.py 2024-01-11 13:21:54.762976917 +0100
+@@ -321,7 +321,7 @@ _ALT_TOKEN_REPLACEMENT = {
+ # and multi-line strings (http://go/beujw ), but those have always been
+ # troublesome for cpplint.
+ _ALT_TOKEN_REPLACEMENT_PATTERN = re.compile(
+- r'[ =()](' + ('|'.join(_ALT_TOKEN_REPLACEMENT.keys())) + r')(?=[ (]|$)')
++ r'[ =()](' + ('|'.join(list(_ALT_TOKEN_REPLACEMENT.keys()))) + r')(?=[ (]|$)')
+
+
+ # These constants define types of headers for use with
+@@ -620,7 +620,7 @@ class _CppLintState(object):
+
+ def PrintErrorCounts(self):
+ """Print a summary of errors by category, and the total."""
+- for category, count in self.errors_by_category.iteritems():
++ for category, count in self.errors_by_category.items():
+ sys.stderr.write('Category \'%s\' errors found: %d\n' %
+ (category, count))
+ sys.stderr.write('Total errors found: %d\n' % self.error_count)
+@@ -1041,7 +1041,7 @@ def FindEndOfExpressionInLine(line, star
+ Returns:
+ Index just after endchar.
+ """
+- for i in xrange(startpos, len(line)):
++ for i in range(startpos, len(line)):
+ if line[i] == startchar:
+ depth += 1
+ elif line[i] == endchar:
+@@ -1100,7 +1100,7 @@ def CheckForCopyright(filename, lines, e
+
+ # We'll say it should occur by line 10. Don't forget there's a
+ # dummy line at the front.
+- for line in xrange(1, min(len(lines), 11)):
++ for line in range(1, min(len(lines), 11)):
+ if re.search(r'Copyright', lines[line], re.I): break
+ else: # means no copyright line was found
+ error(filename, 0, 'legal/copyright', 5,
+@@ -1221,7 +1221,7 @@ def CheckForUnicodeReplacementCharacters
+ error: The function to call with any errors found.
+ """
+ for linenum, line in enumerate(lines):
+- if u'\ufffd' in line:
++ if '\ufffd' in line:
+ error(filename, linenum, 'readability/utf8', 5,
+ 'Line contains invalid UTF-8 (or Unicode replacement character).')
+
+@@ -1978,7 +1978,7 @@ def CheckForFunctionLengths(filename, cl
+
+ if starting_func:
+ body_found = False
+- for start_linenum in xrange(linenum, clean_lines.NumLines()):
++ for start_linenum in range(linenum, clean_lines.NumLines()):
+ start_line = lines[start_linenum]
+ joined_line += ' ' + start_line.lstrip()
+ if Search(r'(;|})', start_line): # Declarations and trivial functions
+@@ -2777,7 +2777,7 @@ def GetLineWidth(line):
+ The width of the line in column positions, accounting for Unicode
+ combining characters and wide characters.
+ """
+- if isinstance(line, unicode):
++ if isinstance(line, str):
+ width = 0
+ for uc in unicodedata.normalize('NFC', line):
+ if unicodedata.east_asian_width(uc) in ('W', 'F'):
+@@ -3109,7 +3109,7 @@ def _GetTextInside(text, start_pattern):
+
+ # Give opening punctuations to get the matching close-punctuations.
+ matching_punctuation = {'(': ')', '{': '}', '[': ']'}
+- closing_punctuation = set(matching_punctuation.itervalues())
++ closing_punctuation = set(matching_punctuation.values())
+
+ # Find the position to start extracting text.
+ match = re.search(start_pattern, text, re.M)
+@@ -3675,7 +3675,7 @@ def CheckForIncludeWhatYouUse(filename,
+ required = {} # A map of header name to linenumber and the template entity.
+ # Example of required: { '<functional>': (1219, 'less<>') }
+
+- for linenum in xrange(clean_lines.NumLines()):
++ for linenum in range(clean_lines.NumLines()):
+ line = clean_lines.elided[linenum]
+ if not line or line[0] == '#':
+ continue
+@@ -3723,7 +3723,7 @@ def CheckForIncludeWhatYouUse(filename,
+
+ # include_state is modified during iteration, so we iterate over a copy of
+ # the keys.
+- header_keys = include_state.keys()
++ header_keys = list(include_state.keys())
+ for header in header_keys:
+ (same_module, common_path) = FilesBelongToSameModule(abs_filename, header)
+ fullpath = common_path + header
+@@ -3842,7 +3842,7 @@ def ProcessFileData(filename, file_exten
+
+ RemoveMultiLineComments(filename, lines, error)
+ clean_lines = CleansedLines(lines)
+- for line in xrange(clean_lines.NumLines()):
++ for line in range(clean_lines.NumLines()):
+ ProcessLine(filename, file_extension, clean_lines, line,
+ include_state, function_state, nesting_state, error,
+ extra_check_functions)
+diff --color -rupN a/pythondata-software-compiler_rt-2020.04/pythondata_software_compiler_rt/data/lib/sanitizer_common/scripts/gen_dynamic_list.py b/pythondata-software-compiler_rt-2020.04/pythondata_software_compiler_rt/data/lib/sanitizer_common/scripts/gen_dynamic_list.py
+--- a/pythondata-software-compiler_rt-2020.04/pythondata_software_compiler_rt/data/lib/sanitizer_common/scripts/gen_dynamic_list.py 2020-04-09 07:33:54.000000000 +0200
++++ b/pythondata-software-compiler_rt-2020.04/pythondata_software_compiler_rt/data/lib/sanitizer_common/scripts/gen_dynamic_list.py 2024-01-11 13:21:54.896308362 +0100
+@@ -100,7 +100,7 @@ def main(argv):
+ print('global:')
+ result.sort()
+ for f in result:
+- print(u' %s;' % f)
++ print((' %s;' % f))
+ if args.version_list:
+ print('local:')
+ print(' *;')
+diff --color -rupN a/pythondata-software-compiler_rt-2020.04/pythondata_software_compiler_rt/data/lib/sanitizer_common/scripts/sancov.py b/pythondata-software-compiler_rt-2020.04/pythondata_software_compiler_rt/data/lib/sanitizer_common/scripts/sancov.py
+--- a/pythondata-software-compiler_rt-2020.04/pythondata_software_compiler_rt/data/lib/sanitizer_common/scripts/sancov.py 2020-04-09 07:33:54.000000000 +0200
++++ b/pythondata-software-compiler_rt-2020.04/pythondata_software_compiler_rt/data/lib/sanitizer_common/scripts/sancov.py 2024-01-11 13:21:55.032973093 +0100
+@@ -14,12 +14,12 @@ import sys
+ prog_name = ""
+
+ def Usage():
+- print >> sys.stderr, "Usage: \n" + \
++ print("Usage: \n" + \
+ " " + prog_name + " merge FILE [FILE...] > OUTPUT\n" \
+ " " + prog_name + " print FILE [FILE...]\n" \
+ " " + prog_name + " unpack FILE [FILE...]\n" \
+ " " + prog_name + " rawunpack FILE [FILE ...]\n" \
+- " " + prog_name + " missing BINARY < LIST_OF_PCS\n"
++ " " + prog_name + " missing BINARY < LIST_OF_PCS\n", file=sys.stderr)
+ exit(1)
+
+ def CheckBits(bits):
+@@ -65,15 +65,15 @@ def ReadOneFile(path):
+ bits = ReadMagicAndReturnBitness(f, path)
+ size -= 8
+ s = array.array(TypeCodeForBits(bits), f.read(size))
+- print >>sys.stderr, "%s: read %d %d-bit PCs from %s" % (prog_name, size * 8 / bits, bits, path)
++ print("%s: read %d %d-bit PCs from %s" % (prog_name, size * 8 / bits, bits, path), file=sys.stderr)
+ return s
+
+ def Merge(files):
+ s = set()
+ for f in files:
+ s = s.union(set(ReadOneFile(f)))
+- print >> sys.stderr, "%s: %d files merged; %d PCs total" % \
+- (prog_name, len(files), len(s))
++ print("%s: %d files merged; %d PCs total" % \
++ (prog_name, len(files), len(s)), file=sys.stderr)
+ return sorted(s)
+
+ def PrintFiles(files):
+@@ -81,10 +81,10 @@ def PrintFiles(files):
+ s = Merge(files)
+ else: # If there is just on file, print the PCs in order.
+ s = ReadOneFile(files[0])
+- print >> sys.stderr, "%s: 1 file merged; %d PCs total" % \
+- (prog_name, len(s))
++ print("%s: 1 file merged; %d PCs total" % \
++ (prog_name, len(s)), file=sys.stderr)
+ for i in s:
+- print "0x%x" % i
++ print("0x%x" % i)
+
+ def MergeAndPrint(files):
+ if sys.stdout.isatty():
+@@ -100,7 +100,7 @@ def MergeAndPrint(files):
+
+ def UnpackOneFile(path):
+ with open(path, mode="rb") as f:
+- print >> sys.stderr, "%s: unpacking %s" % (prog_name, path)
++ print("%s: unpacking %s" % (prog_name, path), file=sys.stderr)
+ while True:
+ header = f.read(12)
+ if not header: return
+@@ -112,8 +112,8 @@ def UnpackOneFile(path):
+ assert(len(module) == module_length)
+ assert(len(blob) == blob_size)
+ extracted_file = "%s.%d.sancov" % (module, pid)
+- print >> sys.stderr, "%s: extracting %s" % \
+- (prog_name, extracted_file)
++ print("%s: extracting %s" % \
++ (prog_name, extracted_file), file=sys.stderr)
+ # The packed file may contain multiple blobs for the same pid/module
+ # pair. Append to the end of the file instead of overwriting.
+ with open(extracted_file, 'ab') as f2:
+@@ -129,7 +129,7 @@ def Unpack(files):
+ def UnpackOneRawFile(path, map_path):
+ mem_map = []
+ with open(map_path, mode="rt") as f_map:
+- print >> sys.stderr, "%s: reading map %s" % (prog_name, map_path)
++ print("%s: reading map %s" % (prog_name, map_path), file=sys.stderr)
+ bits = int(f_map.readline())
+ if bits != 32 and bits != 64:
+ raise Exception('Wrong bits size in the map')
+@@ -143,7 +143,7 @@ def UnpackOneRawFile(path, map_path):
+ mem_map_keys = [m[0] for m in mem_map]
+
+ with open(path, mode="rb") as f:
+- print >> sys.stderr, "%s: unpacking %s" % (prog_name, path)
++ print("%s: unpacking %s" % (prog_name, path), file=sys.stderr)
+
+ f.seek(0, 2)
+ size = f.tell()
+@@ -157,7 +157,7 @@ def UnpackOneRawFile(path, map_path):
+ (start, end, base, module_path) = mem_map[map_idx]
+ assert pc >= start
+ if pc >= end:
+- print >> sys.stderr, "warning: %s: pc %x outside of any known mapping" % (prog_name, pc)
++ print("warning: %s: pc %x outside of any known mapping" % (prog_name, pc), file=sys.stderr)
+ continue
+ mem_map_pcs[map_idx].append(pc - base)
+
+@@ -165,7 +165,7 @@ def UnpackOneRawFile(path, map_path):
+ if len(pc_list) == 0: continue
+ assert path.endswith('.sancov.raw')
+ dst_path = module_path + '.' + os.path.basename(path)[:-4]
+- print >> sys.stderr, "%s: writing %d PCs to %s" % (prog_name, len(pc_list), dst_path)
++ print("%s: writing %d PCs to %s" % (prog_name, len(pc_list), dst_path), file=sys.stderr)
+ arr = array.array(TypeCodeForBits(bits))
+ arr.fromlist(sorted(pc_list))
+ with open(dst_path, 'ab') as f2:
+@@ -199,18 +199,17 @@ def PrintMissing(binary):
+ if not os.path.isfile(binary):
+ raise Exception('File not found: %s' % binary)
+ instrumented = GetInstrumentedPCs(binary)
+- print >> sys.stderr, "%s: found %d instrumented PCs in %s" % (prog_name,
++ print("%s: found %d instrumented PCs in %s" % (prog_name,
+ len(instrumented),
+- binary)
++ binary), file=sys.stderr)
+ covered = set(int(line, 16) for line in sys.stdin)
+- print >> sys.stderr, "%s: read %d PCs from stdin" % (prog_name, len(covered))
++ print("%s: read %d PCs from stdin" % (prog_name, len(covered)), file=sys.stderr)
+ missing = instrumented - covered
+- print >> sys.stderr, "%s: %d PCs missing from coverage" % (prog_name, len(missing))
++ print("%s: %d PCs missing from coverage" % (prog_name, len(missing)), file=sys.stderr)
+ if (len(missing) > len(instrumented) - len(covered)):
+- print >> sys.stderr, \
+- "%s: WARNING: stdin contains PCs not found in binary" % prog_name
++ print("%s: WARNING: stdin contains PCs not found in binary" % prog_name, file=sys.stderr)
+ for pc in sorted(missing):
+- print "0x%x" % pc
++ print("0x%x" % pc)
+
+ if __name__ == '__main__':
+ prog_name = sys.argv[0]
+diff --color -rupN a/pythondata-software-compiler_rt-2020.04/pythondata_software_compiler_rt/data/test/asan/android_commands/android_common.py b/pythondata-software-compiler_rt-2020.04/pythondata_software_compiler_rt/data/test/asan/android_commands/android_common.py
+--- a/pythondata-software-compiler_rt-2020.04/pythondata_software_compiler_rt/data/test/asan/android_commands/android_common.py 2020-04-09 07:33:54.000000000 +0200
++++ b/pythondata-software-compiler_rt-2020.04/pythondata_software_compiler_rt/data/test/asan/android_commands/android_common.py 2024-01-11 13:21:55.146304820 +0100
+@@ -10,7 +10,7 @@ if os.environ.get('ANDROID_RUN_VERBOSE')
+
+ def adb(args):
+ if verbose:
+- print args
++ print(args)
+ devnull = open(os.devnull, 'w')
+ return subprocess.call([ADB] + args, stdout=devnull, stderr=subprocess.STDOUT)
+
+diff --color -rupN a/pythondata-software-compiler_rt-2020.04/pythondata_software_compiler_rt/data/test/asan/android_commands/android_compile.py b/pythondata-software-compiler_rt-2020.04/pythondata_software_compiler_rt/data/test/asan/android_commands/android_compile.py
+--- a/pythondata-software-compiler_rt-2020.04/pythondata_software_compiler_rt/data/test/asan/android_commands/android_compile.py 2020-04-09 07:33:54.000000000 +0200
++++ b/pythondata-software-compiler_rt-2020.04/pythondata_software_compiler_rt/data/test/asan/android_commands/android_compile.py 2024-01-11 13:21:55.259636548 +0100
+@@ -21,7 +21,7 @@ while args:
+ output = args.pop(0)
+
+ if output == None:
+- print "No output file name!"
++ print("No output file name!")
+ sys.exit(1)
+
+ ret = subprocess.call(sys.argv[1:])
+diff --color -rupN a/pythondata-software-compiler_rt-2020.04/pythondata_software_compiler_rt/data/test/asan/android_commands/android_run.py b/pythondata-software-compiler_rt-2020.04/pythondata_software_compiler_rt/data/test/asan/android_commands/android_run.py
+--- a/pythondata-software-compiler_rt-2020.04/pythondata_software_compiler_rt/data/test/asan/android_commands/android_run.py 2020-04-09 07:33:54.000000000 +0200
++++ b/pythondata-software-compiler_rt-2020.04/pythondata_software_compiler_rt/data/test/asan/android_commands/android_run.py 2024-01-11 13:21:55.372968276 +0100
+@@ -13,7 +13,7 @@ def build_env():
+ # Android linker ignores RPATH. Set LD_LIBRARY_PATH to Output dir.
+ args.append('LD_LIBRARY_PATH=%s:%s' %
+ (ANDROID_TMPDIR, os.environ.get('LD_LIBRARY_PATH', '')))
+- for (key, value) in os.environ.items():
++ for (key, value) in list(os.environ.items()):
+ if key in ['ASAN_OPTIONS', 'ASAN_ACTIVATION_OPTIONS']:
+ args.append('%s="%s"' % (key, value))
+ return ' '.join(args)
diff --git a/testing/py3-litex-hub-modules/0002-fix-pythondata-cpu-blackparrot-python3.patch b/testing/py3-litex-hub-modules/0002-fix-pythondata-cpu-blackparrot-python3.patch
new file mode 100644
index 00000000000..38a3b827092
--- /dev/null
+++ b/testing/py3-litex-hub-modules/0002-fix-pythondata-cpu-blackparrot-python3.patch
@@ -0,0 +1,2824 @@
+Ran 2to3 to run python code on python3
+--- a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/bp_me/software/py/checker.py 2021-09-26 19:02:04.000000000 +0200
++++ b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/bp_me/software/py/checker.py 2024-01-11 13:10:59.751756535 +0100
+@@ -16,5 +16,5 @@ for root, dirs, files in os.walk(os.path
+ for line in fread:
+ l = line.strip()
+ if len(l) > args.len:
+- print "{0}: {1}".format(i, l)
++ print("{0}: {1}".format(i, l))
+ i = i+1
+diff --color -rupN a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/bp_me/software/py/trace_gen.py b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/bp_me/software/py/trace_gen.py
+--- a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/bp_me/software/py/trace_gen.py 2021-09-26 19:02:04.000000000 +0200
++++ b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/bp_me/software/py/trace_gen.py 2024-01-11 13:10:59.638424702 +0100
+@@ -19,7 +19,7 @@ class TraceGen:
+ # print header
+ def print_header(self):
+ print("#### generated by trace_gen.py ####")
+- print("#### packet_len = " + str(self.packet_len) + " ####")
++ print(("#### packet_len = " + str(self.packet_len) + " ####"))
+
+ # send load
+ # signed: sign extend or not
+@@ -88,20 +88,20 @@ class TraceGen:
+ # wait for a number of cycles
+ # num_cycles: number of cycles to wait.
+ def wait(self, num_cycles):
+- print("0110_" + format(num_cycles, "0" + str(self.packet_len-4) + "b"))
+- print("0101_" + (self.packet_len-4)*"0")
++ print(("0110_" + format(num_cycles, "0" + str(self.packet_len-4) + "b")))
++ print(("0101_" + (self.packet_len-4)*"0"))
+
+ # finish trace
+ def test_finish(self):
+ print("#### FINISH ####")
+ self.wait(8)
+- print("0100_" + (self.packet_len-4)*"0")
++ print(("0100_" + (self.packet_len-4)*"0"))
+
+ def test_done(self):
+ print("#### DONE ####")
+ self.wait(8)
+- print("0011_" + (self.packet_len-4)*"0")
++ print(("0011_" + (self.packet_len-4)*"0"))
+
+ # wait for a single cycle
+ def nop(self):
+- print("0000_" + "0"*(self.packet_len-4))
++ print(("0000_" + "0"*(self.packet_len-4)))
+diff --color -rupN a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/bp_top/software/py/ptgen.py b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/bp_top/software/py/ptgen.py
+--- a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/bp_top/software/py/ptgen.py 2021-09-26 19:02:04.000000000 +0200
++++ b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/bp_top/software/py/ptgen.py 2024-01-11 13:11:00.115085056 +0100
+@@ -3,14 +3,14 @@ import sys
+ import math
+
+ def help():
+- print "Usage: ptgen.py <outfile> <root table address> <data sections roots> <data sections size(in pages)>"
+- print "Example: python ptgen.py pt.S 0x80008000 0x80000000,0x8fffc000 4,1"
++ print("Usage: ptgen.py <outfile> <root table address> <data sections roots> <data sections size(in pages)>")
++ print("Example: python ptgen.py pt.S 0x80008000 0x80000000,0x8fffc000 4,1")
+
+ def int2hex(num, width):
+ return "{0:#0{1}x}".format(num,width/4 + 2)
+
+ def checkAddr(vpn, as_start_vpn, as_size, page_pte_num, level, pt_depth):
+- for i in xrange(len(as_start_vpn)):
++ for i in range(len(as_start_vpn)):
+ as_start = as_start_vpn[i]
+ as_end = as_start_vpn[i] + as_size[i] - 1
+
+@@ -26,7 +26,7 @@ try:
+ fileName = str(sys.argv[1])
+ root_table_addr = sys.argv[2]
+ as_start = sys.argv[3].split(',')
+- as_size = map(int, sys.argv[4].split(','))
++ as_size = list(map(int, sys.argv[4].split(',')))
+ except:
+ help()
+ quit()
+@@ -45,7 +45,7 @@ page_size = 2**page_offset_width
+ root_table_ppn = int(root_table_addr, 16)/page_size
+
+ as_start_vpn = [0]*len(as_start)
+-for i in xrange(len(as_start)):
++for i in range(len(as_start)):
+ as_start_vpn[i] = int(as_start[i], 16)/page_size
+
+ vpn_width = vaddr_width - page_offset_width
+@@ -65,10 +65,10 @@ page_table = []
+
+ pt_table_num[0] = 1
+ table_vpns = [[0], [], []]
+-for level in xrange(1, pt_depth):
++for level in range(1, pt_depth):
+ last_vpn = -1
+ #print "#######"
+- for j in xrange(len(as_start_vpn)):
++ for j in range(len(as_start_vpn)):
+ masked_vpn = as_start_vpn[j] >> ((pt_depth-level)*lg_page_pte_num)
+ masked_vpn = masked_vpn << ((pt_depth-level)*lg_page_pte_num)
+ if(last_vpn != masked_vpn):
+@@ -78,9 +78,9 @@ for level in xrange(1, pt_depth):
+ pt_table_num[level] += 1
+
+ last_ppn = root_table_ppn
+-for level in xrange(pt_depth):
++for level in range(pt_depth):
+ pt_roots.append([])
+- for tableNum in xrange(pt_table_num[level]):
++ for tableNum in range(pt_table_num[level]):
+ pt_roots[level].append(last_ppn)
+ last_ppn += 1
+
+@@ -88,13 +88,13 @@ for level in xrange(pt_depth):
+ #print pt_roots
+ #print table_vpns
+
+-for level in xrange(pt_depth):
++for level in range(pt_depth):
+ page_table.append([])
+ #print "---------"
+- for tableNum in xrange(pt_table_num[level]):
++ for tableNum in range(pt_table_num[level]):
+ page_table[level].append([])
+ target_tableNum = 0
+- for offset in xrange(page_pte_num):
++ for offset in range(page_pte_num):
+
+ vpn = table_vpns[level][tableNum] + (offset << ((pt_depth-level-1)*lg_page_pte_num))
+
+@@ -134,8 +134,8 @@ outfile.write("/* address space size in
+ outfile.write(".section \".data.pt\"\n")
+ outfile.write(".globl _pt\n\n")
+ outfile.write("_pt:\n")
+-for i in xrange(len(page_table)):
+- for j in xrange(len(page_table[i])):
+- for k in xrange(len(page_table[i][j])):
++for i in range(len(page_table)):
++ for j in range(len(page_table[i])):
++ for k in range(len(page_table[i][j])):
+ outfile.write(" .dword " + int2hex(page_table[i][j][k], 64) + "\n")
+ outfile.close()
+diff --color -rupN a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/bsg_dataflow/bsg_scatter_gather.py b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/bsg_dataflow/bsg_scatter_gather.py
+--- a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/bsg_dataflow/bsg_scatter_gather.py 2021-09-26 19:02:04.000000000 +0200
++++ b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/bsg_dataflow/bsg_scatter_gather.py 2024-01-11 13:11:00.898408014 +0100
+@@ -39,13 +39,13 @@ def bits_to_rep(x) :
+ return len(bin(x-1))-2;
+
+ def print_case_line(a,result,var_name,result_x):
+- print " ",str(len(a))+"'b",
++ print(" ",str(len(a))+"'b", end=' ')
+ print_bit_list(a)
+- print ": "+var_name+" = ",str(bits_to_rep(len(a))*len(a))+"'b",
++ print(": "+var_name+" = ",str(bits_to_rep(len(a))*len(a))+"'b", end=' ')
+ for x in reversed(result) :
+ print_bit_list(int_to_bit_list(x,bits_to_rep(len(a))));
+ #sys.stdout.write("_")
+- print "; // ", ' '.join([str(y) for y in reversed(result_x)]);
++ print("; // ", ' '.join([str(y) for y in reversed(result_x)]));
+
+ def gen_vec(channels, fn) :
+
+@@ -55,7 +55,7 @@ def gen_vec(channels, fn) :
+ for j in range(0,2**channels) :
+ q = fn(int_to_bit_list(j,channels))
+
+- print (" default: "+q+"= 'X;");
++ print((" default: "+q+"= 'X;"));
+ print (" endcase");
+
+ def gen_fwd_vec_line_helper(a,dpath) :
+@@ -134,23 +134,23 @@ def gen_back_vec_line(a) :
+
+ def generate_code_for_channel(chan) :
+
+- print "\nif (vec_size_lp == "+str(chan)+")"
+- print " begin"
++ print("\nif (vec_size_lp == "+str(chan)+")")
++ print(" begin")
+
+- print " // backward vec";
++ print(" // backward vec");
+
+ gen_vec(chan,gen_back_vec_line)
+
+- print "\n // backward vec datapath";
++ print("\n // backward vec datapath");
+
+ gen_vec(chan,gen_back_vec_line_dpath)
+
+
+- print "\n // fwd vec";
++ print("\n // fwd vec");
+
+ gen_vec(chan,gen_fwd_vec_line)
+
+- print "\n // fwd datapath vec";
++ print("\n // fwd datapath vec");
+
+ gen_vec(chan,gen_fwd_vec_line_dpath)
+
+@@ -161,7 +161,7 @@ def generate_code_for_channel(chan) :
+
+
+
+-print """
++print("""
+ // MBT 8-18-2014
+ // bsg_scatter_gather
+ // generated by bsg_scatter_gather.py;
+@@ -196,19 +196,19 @@ module bsg_scatter_gather #(`BSG_INV_PAR
+ ,output reg [vec_size_lp*`BSG_SAFE_CLOG2(vec_size_lp)-1:0] bk_o
+ ,output reg [vec_size_lp*`BSG_SAFE_CLOG2(vec_size_lp)-1:0] bk_datapath_o
+ );
+-"""
++""")
+
+
+ for x in channels :
+ generate_code_for_channel(x)
+
+-print "// synopsys translate_off";
+-print "initial assert (vec_size_lp < ",max_channel,") else $error(\"bsg_scatter_gather: vec_size_lp too large %d\", vec_size_lp);";
+-print "// synopsys translate_on";
++print("// synopsys translate_off");
++print("initial assert (vec_size_lp < ",max_channel,") else $error(\"bsg_scatter_gather: vec_size_lp too large %d\", vec_size_lp);");
++print("// synopsys translate_on");
+
+-print "endmodule";
++print("endmodule");
+
+-print "`BSG_ABSTRACT_MODULE(bsg_scatter_gather)"
++print("`BSG_ABSTRACT_MODULE(bsg_scatter_gather)")
+
+ #for i in range(1,10) :
+ # print i,bits_to_rep(i)
+diff --color -rupN a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/bsg_mem/bsg_ascii_to_rom.py b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/bsg_mem/bsg_ascii_to_rom.py
+--- a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/bsg_mem/bsg_ascii_to_rom.py 2021-09-26 19:02:04.000000000 +0200
++++ b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/bsg_mem/bsg_ascii_to_rom.py 2024-01-11 13:11:01.358401921 +0100
+@@ -27,37 +27,37 @@ if ((len(sys.argv)==4) and sys.argv[3]==
+ zero = 1;
+
+ if ((len(sys.argv)!=3) and (len(sys.argv)!=4)) :
+- print "Usage ascii_to_rom.py <filename> <modulename>";
++ print("Usage ascii_to_rom.py <filename> <modulename>");
+ exit -1
+
+ myFile = open(sys.argv[1],"r");
+
+ i = 0;
+-print "// auto-generated by bsg_ascii_to_rom.py from " + os.path.abspath(sys.argv[1]) + "; do not modify";
+-print "module " + sys.argv[2] + " #(`BSG_INV_PARAM(width_p), `BSG_INV_PARAM(addr_width_p))";
+-print "(input [addr_width_p-1:0] addr_i";
+-print ",output logic [width_p-1:0] data_o";
+-print ");";
+-print "always_comb case(addr_i)"
++print("// auto-generated by bsg_ascii_to_rom.py from " + os.path.abspath(sys.argv[1]) + "; do not modify");
++print("module " + sys.argv[2] + " #(`BSG_INV_PARAM(width_p), `BSG_INV_PARAM(addr_width_p))");
++print("(input [addr_width_p-1:0] addr_i");
++print(",output logic [width_p-1:0] data_o");
++print(");");
++print("always_comb case(addr_i)")
+ all_zero = set("0_");
+ for line in myFile.readlines() :
+ line = line.strip();
+ if (len(line)!=0):
+ if (line[0] != "#") :
+ if (not zero or not (set(line) <= all_zero)) :
+- digits_only = filter(lambda m:m.isdigit(), str(line));
++ digits_only = [m for m in str(line) if m.isdigit()];
+
+ # http://stackoverflow.com/questions/2072351/python-conversion-from-binary-string-to-hexadecimal
+ hstr = '%0*X' % ((len(digits_only) + 3) // 4, int(digits_only, 2))
+
+- print str(i).rjust(10)+": data_o = width_p ' (" + str(len(digits_only))+ "'b"+line+");"+" // 0x"+hstr;
++ print(str(i).rjust(10)+": data_o = width_p ' (" + str(len(digits_only))+ "'b"+line+");"+" // 0x"+hstr);
+ i = i + 1;
+ else :
+- print " // " + line;
++ print(" // " + line);
+ if (zero) :
+- print "default".rjust(10) + ": data_o = { width_p { 1'b0 } };"
++ print("default".rjust(10) + ": data_o = { width_p { 1'b0 } };")
+ else :
+- print "default".rjust(10) + ": data_o = 'X;"
+-print "endcase"
+-print "endmodule"
+-print "`BSG_ABSTRACT_MODULE(" + sys.argv[2] + ")"
++ print("default".rjust(10) + ": data_o = 'X;")
++print("endcase")
++print("endmodule")
++print("`BSG_ABSTRACT_MODULE(" + sys.argv[2] + ")")
+diff --color -rupN a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/bsg_misc/bsg_round_robin_arb.py b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/bsg_misc/bsg_round_robin_arb.py
+--- a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/bsg_misc/bsg_round_robin_arb.py 2021-09-26 19:02:04.000000000 +0200
++++ b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/bsg_misc/bsg_round_robin_arb.py 2024-01-11 13:10:59.991753356 +0100
+@@ -46,31 +46,31 @@ def print_hold_on_logic(last_w, reqs_w):
+ """
+ Print the logic of the hold on logic
+ """
+- print """
+-if ( hold_on_sr_p ) begin """
+- print """
++ print("""
++if ( hold_on_sr_p ) begin """)
++ print("""
+ always_comb begin
+- unique casez( last_r )"""
++ unique casez( last_r )""")
+ for last_r in range(reqs_w ):
+ last_r_str = bin(last_r)[2:].zfill(last_w);
+ req_str = get_single_request_str(last_r, reqs_w)
+ #Full cases
+ if( (last_r == ( (1<< last_w) -1 ) ) & (last_r == (reqs_w-1) ) ):
+- print """ default: hold_on_sr = ( reqs_i == %d'b%s );"""%( reqs_w, req_str)
++ print(""" default: hold_on_sr = ( reqs_i == %d'b%s );"""%( reqs_w, req_str))
+ #Not Full cases
+ else :
+- print """ %d'b%s : hold_on_sr = ( reqs_i == %d'b%s );"""%( last_w, last_r_str, reqs_w, req_str)
++ print(""" %d'b%s : hold_on_sr = ( reqs_i == %d'b%s );"""%( last_w, last_r_str, reqs_w, req_str))
+
+ #Not full cases
+ if( (1<< last_w ) != reqs_w ):
+- print """ default : hold_on_sr = 1'b0;"""
++ print(""" default : hold_on_sr = 1'b0;""")
+
+- print """ endcase
++ print(""" endcase
+ end //end of always_comb
+
+ end else begin:not_hold_on_sr_p
+ assign hold_on_sr = '0;
+-end //end of hold_on_sr_p """
++end //end of hold_on_sr_p """)
+
+ ################################################################################
+ # Logic for priority reset logic
+@@ -83,28 +83,28 @@ def print_reset_on_logic(reqs_w):
+
+ req_str= get_single_request_str(0, reqs_w)
+
+- print """
++ print("""
+ if ( reset_on_sr_p ) begin:reset_on_%d
+- assign reset_on_sr = ( reqs_i == %d'b%s ) """%( reqs_w,reqs_w, req_str)
++ assign reset_on_sr = ( reqs_i == %d'b%s ) """%( reqs_w,reqs_w, req_str))
+
+ for curr_r in range(1, reqs_w):
+ req_str= get_single_request_str(curr_r, reqs_w)
+- print """ | ( reqs_i == %d'b%s ) """ %(reqs_w, req_str )
++ print(""" | ( reqs_i == %d'b%s ) """ %(reqs_w, req_str ))
+
+- print " ;"
+- print """
++ print(" ;")
++ print("""
+ end else begin:not_reset_on_sr_p
+ assign reset_on_sr = '0;
+-end //end of reset_on_sr_p """
++end //end of reset_on_sr_p """)
+ max_reqs = 0 # no. of inputs
+ try:
+ assert len(sys.argv) == 2
+ max_reqs = int(sys.argv[1])
+ except:
+- print "UsageError: bsg_round_robin_arb.py <max no. of channels>"
++ print("UsageError: bsg_round_robin_arb.py <max no. of channels>")
+ sys.exit()
+
+-print """// Round robin arbitration unit
++print("""// Round robin arbitration unit
+
+ // Automatically generated using bsg_round_robin_arb.py
+ // NOTE: generally prefer https://github.com/bespoke-silicon-group/basejump_stl/blob/master/bsg_misc/bsg_arb_round_robin.v to this module
+@@ -122,9 +122,9 @@ print """// Round robin arbitration unit
+
+ `include "bsg_defines.v"
+
+-"""
++""")
+
+-print """module bsg_round_robin_arb #(`BSG_INV_PARAM(inputs_p)
++print("""module bsg_round_robin_arb #(`BSG_INV_PARAM(inputs_p)
+ ,lg_inputs_p =`BSG_SAFE_CLOG2(inputs_p)
+ ,reset_on_sr_p = 1'b0
+ ,hold_on_sr_p = 1'b0
+@@ -135,9 +135,9 @@ print """module bsg_round_robin_arb #(`B
+ // with bsg_parallel_in_serial_out_passthrough. This policy
+ // has a slight throughput degradation but effectively
+ // arbitrates based on age, so minimizes worst case latency.
+- ,hold_on_valid_p = 1'b0)""" % '''-1'''
++ ,hold_on_valid_p = 1'b0)""" % '''-1''')
+
+-print """ (input clk_i
++print(""" (input clk_i
+ , input reset_i
+ , input grants_en_i // whether to suppress grants_o
+
+@@ -158,10 +158,10 @@ print """ (input clk_i
+ logic [lg_inputs_p-1:0] last, last_n, last_r;
+ logic hold_on_sr, reset_on_sr;
+
+-"""
++""")
+
+ for reqs_w in range(1, max_reqs+1):
+- print """
++ print("""
+ if(inputs_p == %d)
+ begin: inputs_%d
+
+@@ -169,15 +169,15 @@ logic [%d-1: 0 ] sel_one_hot_n;
+
+ always_comb
+ begin
+- unique casez({last_r, reqs_i})""" % (reqs_w, reqs_w, reqs_w)
++ unique casez({last_r, reqs_i})""" % (reqs_w, reqs_w, reqs_w))
+
+ last_w = int(math.ceil(math.log(reqs_w)/math.log(2))) if (reqs_w!=1) else 1
+ # print " %d'b"%(1+last_w+reqs_w) + "0" + "_" + "?"*last_w + "_" + "?"*reqs_w + ":"\
+ # , "begin sel_one_hot_n="\
+ # , "%d'b"%reqs_w + "0"*reqs_w + "; tag_o = (lg_inputs_p) ' (0); end // X"
+- print " %d'b"%(last_w+reqs_w) + "?"*last_w + "_" + "0"*reqs_w + ":"\
++ print(" %d'b"%(last_w+reqs_w) + "?"*last_w + "_" + "0"*reqs_w + ":"\
+ , "begin sel_one_hot_n ="\
+- , "%d'b"%reqs_w + "0"*reqs_w + "; tag_o = (lg_inputs_p) ' (0); end // X"
++ , "%d'b"%reqs_w + "0"*reqs_w + "; tag_o = (lg_inputs_p) ' (0); end // X")
+
+ grants = {}
+ for i in range(reqs_w):
+@@ -185,29 +185,29 @@ begin
+
+ for key in grants:
+ for req in grants[key]:
+- print " %d'b"%(last_w+reqs_w) + bin(key)[2:].zfill(last_w)\
++ print(" %d'b"%(last_w+reqs_w) + bin(key)[2:].zfill(last_w)\
+ + "_" + req[0] + ":"\
+ , "begin sel_one_hot_n="\
+- , "%d'b"%reqs_w + req[1] + "; tag_o = (lg_inputs_p) ' ("+str(req[1][::-1].index('1'))+"); end"
++ , "%d'b"%reqs_w + req[1] + "; tag_o = (lg_inputs_p) ' ("+str(req[1][::-1].index('1'))+"); end")
+
+- print """ default: begin sel_one_hot_n= {%d{1'bx}}; tag_o = (lg_inputs_p) ' (0); end // X
++ print(""" default: begin sel_one_hot_n= {%d{1'bx}}; tag_o = (lg_inputs_p) ' (0); end // X
+ endcase
+-end """% (reqs_w)
++end """% (reqs_w))
+
+- print """
++ print("""
+ assign sel_one_hot_o = sel_one_hot_n;
+ assign grants_o = sel_one_hot_n & {%d{grants_en_i}} ;
+- """% (reqs_w)
++ """% (reqs_w))
+
+ print_hold_on_logic(last_w, reqs_w)
+
+ print_reset_on_logic(reqs_w)
+
+
+- print """
+-end: inputs_%d""" % (reqs_w)
++ print("""
++end: inputs_%d""" % (reqs_w))
+
+-print """
++print("""
+
+ assign v_o = | reqs_i ;
+
+@@ -238,4 +238,4 @@ endmodule
+
+ `BSG_ABSTRACT_MODULE(bsg_round_robin_arb)
+
+-"""
++""")
+diff --color -rupN a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/bsg_noc/bsg_mesh_to_ring_stitch.py b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/bsg_noc/bsg_mesh_to_ring_stitch.py
+--- a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/bsg_noc/bsg_mesh_to_ring_stitch.py 2021-09-26 19:02:04.000000000 +0200
++++ b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/bsg_noc/bsg_mesh_to_ring_stitch.py 2024-01-11 13:11:01.135071546 +0100
+@@ -16,22 +16,22 @@
+ topX = 8
+ topY = 8
+
+-print "// AUTOGENERATED FILE; DO NOT MODIFY."
+-print "// run with topX=",topX," and topY=",topY
+-print "// ";
+-print '`include "bsg_defines.v"'
+-
+-print "module bsg_mesh_to_ring_stitch #(`BSG_INV_PARAM(y_max_p)"
+-print " ,`BSG_INV_PARAM(x_max_p)"
+-print " ,`BSG_INV_PARAM(width_back_p)"
+-print " ,`BSG_INV_PARAM(width_fwd_p)"
+-print " ,parameter b_lp = $clog2(x_max_p*y_max_p)"
+-print " ) (output [x_max_p-1:0][y_max_p-1:0][b_lp-1:0] id_o"
+-print " ,output [x_max_p-1:0][y_max_p-1:0][width_back_p-1:0] back_data_in_o"
+-print " ,input [x_max_p-1:0][y_max_p-1:0][width_back_p-1:0] back_data_out_i"
+-print " ,output [x_max_p-1:0][y_max_p-1:0][width_fwd_p-1:0] fwd_data_in_o"
+-print " ,input [x_max_p-1:0][y_max_p-1:0][width_fwd_p-1:0] fwd_data_out_i"
+-print " );\n\n"
++print("// AUTOGENERATED FILE; DO NOT MODIFY.")
++print("// run with topX=",topX," and topY=",topY)
++print("// ");
++print('`include "bsg_defines.v"')
++
++print("module bsg_mesh_to_ring_stitch #(`BSG_INV_PARAM(y_max_p)")
++print(" ,`BSG_INV_PARAM(x_max_p)")
++print(" ,`BSG_INV_PARAM(width_back_p)")
++print(" ,`BSG_INV_PARAM(width_fwd_p)")
++print(" ,parameter b_lp = $clog2(x_max_p*y_max_p)")
++print(" ) (output [x_max_p-1:0][y_max_p-1:0][b_lp-1:0] id_o")
++print(" ,output [x_max_p-1:0][y_max_p-1:0][width_back_p-1:0] back_data_in_o")
++print(" ,input [x_max_p-1:0][y_max_p-1:0][width_back_p-1:0] back_data_out_i")
++print(" ,output [x_max_p-1:0][y_max_p-1:0][width_fwd_p-1:0] fwd_data_in_o")
++print(" ,input [x_max_p-1:0][y_max_p-1:0][width_fwd_p-1:0] fwd_data_out_i")
++print(" );\n\n")
+
+
+ def print_config (maxX,maxY,order) :
+@@ -41,7 +41,7 @@ def print_config (maxX,maxY,order) :
+ my_dict[position] = (x,y);
+ matrix[x][y] = position;
+
+- print "if (x_max_p ==",maxX," && y_max_p ==",maxY,")\nbegin\n"
++ print("if (x_max_p ==",maxX," && y_max_p ==",maxY,")\nbegin\n")
+ for y in range(maxY-1,-1,-1) :
+ for x in range(maxX-1,-1,-1) :
+ position=matrix[x][y];
+@@ -49,25 +49,25 @@ def print_config (maxX,maxY,order) :
+ above = 0 if ((position + 1) == maxX*maxY) else position + 1;
+ (below_x,below_y)=my_dict[below];
+ (above_x,above_y)=my_dict[above];
+- print "assign back_data_in_o[",below_x,"][",below_y,"] = back_data_out_i[",x,"][",y,"]; // ",below,"<-",position
+- print "assign fwd_data_in_o [",above_x,"][",above_y,"] = fwd_data_out_i [",x,"][",y,"]; // ",position,"->",above
+- print "\n"
+- print " assign id_o = \n {"
+- print "// y = ",
++ print("assign back_data_in_o[",below_x,"][",below_y,"] = back_data_out_i[",x,"][",y,"]; // ",below,"<-",position)
++ print("assign fwd_data_in_o [",above_x,"][",above_y,"] = fwd_data_out_i [",x,"][",y,"]; // ",position,"->",above)
++ print("\n")
++ print(" assign id_o = \n {")
++ print("// y = ", end=' ')
+ for y in range(0,maxY) :
+- print str(y)+", ",
+- print "";
++ print(str(y)+", ", end=' ')
++ print("");
+ for x in range(0,maxX) :
+- print " {",
++ print(" {", end=' ')
+ for y in range(0,maxY) :
+ if (y != 0) :
+- print ",",
+- print "b_lp ' (" + str(matrix[x][y]) +")",
++ print(",", end=' ')
++ print("b_lp ' (" + str(matrix[x][y]) +")", end=' ')
+ if (x != maxX-1) :
+- print " }, // x = ",x
++ print(" }, // x = ",x)
+ else:
+- print " } // x = ",x
+- print " };\nend\n"
++ print(" } // x = ",x)
++ print(" };\nend\n")
+
+ # even X, odd/even Y
+ for maxX in range(2,topX+1,2) :
+@@ -103,9 +103,9 @@ for maxX in range(3,topX+1,2) :
+ print_config(1,2,[(0,0), (0,1)]);
+ print_config(2,1,[(0,0), (1,0)]);
+
+-print "initial assert ((x_max_p <= " + str(topX) + ") && (y_max_p <= " + str(topY) +")) else begin $error(\"%m x_max_p %d or y_max_p %d too large; rerun generator with larger size than %d/%d\",x_max_p,y_max_p,"+str(topX)+","+str(topY)+"); $finish(); end "
++print("initial assert ((x_max_p <= " + str(topX) + ") && (y_max_p <= " + str(topY) +")) else begin $error(\"%m x_max_p %d or y_max_p %d too large; rerun generator with larger size than %d/%d\",x_max_p,y_max_p,"+str(topX)+","+str(topY)+"); $finish(); end ")
+
+
+-print "endmodule"
++print("endmodule")
+
+-print "`BSG_ABSTRACT_MODULE(bsg_mesh_to_ring_stitch)"
++print("`BSG_ABSTRACT_MODULE(bsg_mesh_to_ring_stitch)")
+diff --color -rupN a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/bsg_tag/legacy/config_net/sim/generate_tb.py b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/bsg_tag/legacy/config_net/sim/generate_tb.py
+--- a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/bsg_tag/legacy/config_net/sim/generate_tb.py 2021-09-26 19:02:04.000000000 +0200
++++ b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/bsg_tag/legacy/config_net/sim/generate_tb.py 2024-01-11 13:11:02.871715210 +0100
+@@ -53,7 +53,7 @@ sim_time = 500 # time units
+
+ # ========== Functions ==========
+ def readme():
+- print " \n\
++ print(" \n\
+ Name:\n\
+ generate_tb.py - python script to generate testbench for chained config_node instances\n\
+ \n\
+@@ -77,7 +77,7 @@ def readme():
+ \n\
+ You can extend the generated testfile to contain your specific test cases;\n\
+ then use command ./generate_tb.py -r <testfile> -o <tb file name> to read the\n\
+- modified file, and create testbench accordingly."
++ modified file, and create testbench accordingly.")
+
+ def dec2bin(dec, n): # Only works on non-negative number
+ bin = ""
+@@ -186,7 +186,7 @@ argparser.add_argument("--create-probe-f
+
+ try:
+ args = argparser.parse_args()
+-except IOError, msg:
++except IOError as msg:
+ argparser.error(str(msg))
+
+ # ========== ==========
+@@ -201,8 +201,8 @@ for line in spec_file:
+ if (l_words[0] == 'r'): # type 'r' indicates a relay node
+ relay_id = int(l_words[1]) # l_words[1] must be consecutive integers starting from 0
+ if (relay_id != relay_nodes):
+- print "ERROR spec file format: relay_id must be consecutive integers starting from 0!"
+- print ">>> " + line
++ print("ERROR spec file format: relay_id must be consecutive integers starting from 0!")
++ print(">>> " + line)
+ sys.exit(1)
+ else: # relay_nodes != 0
+ if (l_words[1] != '0'): # no need to process relay node 0
+@@ -210,7 +210,7 @@ for line in spec_file:
+ branch_id = random.randint(0, relay_nodes - 1) # to which the new relay node is connected
+ else:
+ branch_id = int(l_words[2]) # l_words[2] must be an integer if not an 'x'
+- if d_relay_tree.has_key(branch_id):
++ if branch_id in d_relay_tree:
+ d_relay_tree[branch_id].append(relay_id)
+ else:
+ d_relay_tree[branch_id] = [relay_id]
+@@ -222,8 +222,8 @@ for line in spec_file:
+ d_inst_data_bits[inst_id] = int(l_words[4])
+ d_inst_default[inst_id] = l_words[5]
+ else:
+- print "ERROR spec file format: type " + l_words[0] + " is not recognized!"
+- print ">>> " + line
++ print("ERROR spec file format: type " + l_words[0] + " is not recognized!")
++ print(">>> " + line)
+ sys.exit(1)
+
+ # randomize d_relay_tree if relay_nodes are not provided in spec file
+@@ -232,7 +232,7 @@ if (relay_nodes == 0):
+ for relay_id in range(1, relay_nodes): # relay_id 0 is the root
+ # because relay node id are consecutive integers, randint(0, relay_id - 1) makes all nodes are connected
+ branch_id = random.randint(0, relay_id - 1) # to which the new relay is connected
+- if d_relay_tree.has_key(branch_id):
++ if branch_id in d_relay_tree:
+ d_relay_tree[branch_id].append(relay_id)
+ else:
+ d_relay_tree[branch_id] = [relay_id]
+@@ -249,8 +249,8 @@ for line in spec_file:
+ if (l_words[2] == 'x'): # position 'x' indicates a random branch
+ d_inst_pos[inst_id] = random.randint(0, relay_nodes - 1) # inclusive of 0 and (relay_nodes - 1)
+ elif (int(l_words[2]) >= relay_nodes): # l_words[2] must be an integer if not an 'x'
+- print "ERROR spec file format: config node branch id doesn't exist, " + l_words[2] + " >= number of relay nodes = " + str(relay_nodes) + "!"
+- print ">>> " + line
++ print("ERROR spec file format: config node branch id doesn't exist, " + l_words[2] + " >= number of relay nodes = " + str(relay_nodes) + "!")
++ print(">>> " + line)
+ sys.exit(1)
+ else:
+ d_inst_pos[inst_id] = int(l_words[2])
+@@ -281,8 +281,8 @@ if (args.generate_tests != None):
+ test_file.write(str(l_test_id[test]) + "\t\t" + l_test_data[test] + "\n")
+ test_file.close()
+ os.system("cat " + test_file.name)
+- print " "
+- print str(number_of_tests) + " sets of random test id and data are generated and written into " + test_file.name
++ print(" ")
++ print(str(number_of_tests) + " sets of random test id and data are generated and written into " + test_file.name)
+ sys.exit(0) # exit after making the test file
+ elif (args.read_tests != None):
+ # read existing test file and parse
+@@ -327,7 +327,7 @@ for inst_id in l_inst_id: # initialize d
+ test_idx = 0
+ for test_id in l_test_id:
+ test_data = l_test_data[test_idx]
+- if d_reference.has_key(test_id): # extend an existing test sequence for a node having test_id
++ if test_id in d_reference: # extend an existing test sequence for a node having test_id
+ last_index = len(d_reference[test_id]) - 1
+ # if a new data item for an id is the same as its previous one, the new data is not appended.
+ if(d_reference[test_id][last_index] != test_data):
+diff --color -rupN a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/gf_14/bsg_mem/bsg_rf_gen.py b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/gf_14/bsg_mem/bsg_rf_gen.py
+--- a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/gf_14/bsg_mem/bsg_rf_gen.py 2021-09-26 19:02:04.000000000 +0200
++++ b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/gf_14/bsg_mem/bsg_rf_gen.py 2024-01-11 13:11:01.505066645 +0100
+@@ -18,27 +18,27 @@
+ import sys;
+
+ def emit_module_header (name, input_args, output_args) :
+- print "module " + name + " (",
++ print("module " + name + " (", end=' ')
+ my_list = []
+ for x in input_args :
+ my_list.append("input "+x+"\n");
+ for x in output_args :
+ my_list.append("output "+x+"\n");
+- print (" "*(len(name)+8)+",").join(my_list);
++ print((" "*(len(name)+8)+",").join(my_list));
+
+- print ");";
++ print(");");
+
+ def emit_module_footer( ) :
+- print "endmodule";
++ print("endmodule");
+
+ def emit_wire_definition (name) :
+- print "wire " + name + "; "
++ print("wire " + name + "; ")
+
+ def emit_wire_definition_nocr (name) :
+- print "wire " + name + "; ",
++ print("wire " + name + "; ", end=' ')
+
+ def emit_gate_instance (gate_str, arg_list ) :
+- print gate_instance(gate_str,arg_list);
++ print(gate_instance(gate_str,arg_list));
+
+ def queue_gate_instance (out_dict, gate_str, arg_list, order) :
+ the_string = gate_instance(gate_str,arg_list)
+@@ -69,13 +69,13 @@ def ident_name_bit (name,bit) :
+
+
+ def emit_rp_group_begin (name) :
+- print "// synopsys rp_group (" + name + ")"
++ print("// synopsys rp_group (" + name + ")")
+
+ def emit_rp_group_end (name) :
+- print "// synopsys rp_endgroup (" + name +")"
++ print("// synopsys rp_endgroup (" + name +")")
+
+ def emit_rp_fill (params):
+- print "// synopsys rp_fill (" + params +")"
++ print("// synopsys rp_fill (" + params +")")
+
+
+
+@@ -134,7 +134,7 @@ def generate_2_word_1r1w_array ( words,
+ emit_rp_fill(str(column) + " 0 UX");
+ column=column+1;
+
+- print "wire " + ",".join([ident_name_word_bit("q",w,b) for b in range(0,bits)]) + ";";
++ print("wire " + ",".join([ident_name_word_bit("q",w,b) for b in range(0,bits)]) + ";");
+ for b in range (0,bits) :
+
+ emit_gate_instance(dffe
+@@ -148,7 +148,7 @@ def generate_2_word_1r1w_array ( words,
+ emit_rp_fill(str(column) + " 0 UX");
+ column=column+1;
+
+- print "wire " + ",".join([ident_name_bit_port("qaoi",b,0) for b in range(0,bits)]) + ";";
++ print("wire " + ",".join([ident_name_bit_port("qaoi",b,0) for b in range(0,bits)]) + ";");
+
+ for b in range(0,bits) :
+ emit_gate_instance(aoi22,
+@@ -197,7 +197,7 @@ def generate_4_word_1r1w_array ( words,
+ emit_rp_fill(str(column) + " 0 UX");
+ column=column+1;
+
+- print "wire " + ",".join([ident_name_word_bit("q",w,b) for b in range(0,bits)]) + ";";
++ print("wire " + ",".join([ident_name_word_bit("q",w,b) for b in range(0,bits)]) + ";");
+ for b in range (0,bits) :
+
+ emit_gate_instance(dffe
+@@ -211,7 +211,7 @@ def generate_4_word_1r1w_array ( words,
+ emit_rp_fill(str(column) + " 0 UX");
+ column=column+1;
+
+- print "wire " + ",".join([ident_name_word_bit("qaoi",bank,b) for b in range(0,bits)]) + ";";
++ print("wire " + ",".join([ident_name_word_bit("qaoi",bank,b) for b in range(0,bits)]) + ";");
+
+ for b in range(0,bits) :
+ emit_gate_instance(aoi22,
+@@ -271,7 +271,7 @@ def generate_Nr1w_array ( words, bits, r
+ emit_wire_definition(ident_name_bit("data_i_inv",b));
+ emit_rp_fill(str(column) +" 0 UX")
+ # we generate the state first
+- print "wire " + ",".join([ident_name_word_bit("q",w,b) for w in range(words)]) + ";";
++ print("wire " + ",".join([ident_name_word_bit("q",w,b) for w in range(words)]) + ";");
+ for w in range (0,words) :
+ emit_gate_instance(dffe
+ ,[ ident_name_word_bit("reg",w,b)
+@@ -301,7 +301,7 @@ def generate_Nr1w_array ( words, bits, r
+ # AOI22 every pair of words
+
+ # we generate the state first
+- print "wire " + ",".join([ident_name_word_bit_port("qaoi",w,b,p) for w in range(0,words,2)]) + ";";
++ print("wire " + ",".join([ident_name_word_bit_port("qaoi",w,b,p) for w in range(0,words,2)]) + ";");
+
+ for w in range (0,words,2) :
+ queue_gate_instance(gate_dict, aoi22
+@@ -357,7 +357,7 @@ def generate_Nr1w_array ( words, bits, r
+ , w+(15 if (words > 16) else 13)
+ );
+
+- print "\n";
++ print("\n");
+ # add inverters to data in, and data out.
+ # these are on opposite sides of the array
+ # we may potentially pay in delay, but we get
+@@ -381,9 +381,9 @@ def generate_Nr1w_array ( words, bits, r
+ # since we are using rp_fill commands
+ # but it makes things more readable
+
+- for x in sorted(gate_dict.items(), key=lambda x: x[1]) :
++ for x in sorted(list(gate_dict.items()), key=lambda x: x[1]) :
+ emit_rp_fill( str(column) +" "+str(x[1])+" UX")
+- print x[0], "// ",x[1];
++ print(x[0], "// ",x[1]);
+ column=column+1
+
+
+@@ -393,5 +393,5 @@ def generate_Nr1w_array ( words, bits, r
+ if len(sys.argv) == 4 :
+ generate_Nr1w_array (int(sys.argv[1]), int(sys.argv[2]), int(sys.argv[3]));
+ else :
+- print "Usage: " + sys.argv[0] + " words bits readports";
++ print("Usage: " + sys.argv[0] + " words bits readports");
+
+diff --color -rupN a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/gf_14/bsg_misc/bsg_dff_gen.py b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/gf_14/bsg_misc/bsg_dff_gen.py
+--- a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/gf_14/bsg_misc/bsg_dff_gen.py 2021-09-26 19:02:04.000000000 +0200
++++ b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/gf_14/bsg_misc/bsg_dff_gen.py 2024-01-11 13:11:02.081725673 +0100
+@@ -6,27 +6,27 @@
+ import sys;
+
+ def emit_module_header (name, input_args, output_args) :
+- print "module " + name + "(",
++ print("module " + name + "(", end=' ')
+ my_list = []
+ for x in input_args :
+ my_list.append("input "+x+"\n");
+ for x in output_args :
+ my_list.append("output "+x+"\n");
+- print (" "*(len(name)+8)+",").join(my_list);
++ print((" "*(len(name)+8)+",").join(my_list));
+
+- print ");";
++ print(");");
+
+ def emit_module_footer( ) :
+- print "endmodule";
++ print("endmodule");
+
+ def emit_wire_definition (name) :
+- print "wire " + name + "; "
++ print("wire " + name + "; ")
+
+ def emit_wire_definition_nocr (name) :
+- print "wire " + name + "; ",
++ print("wire " + name + "; ", end=' ')
+
+ def emit_gate_instance (gate_str, arg_list ) :
+- print gate_instance(gate_str,arg_list);
++ print(gate_instance(gate_str,arg_list));
+
+ def queue_gate_instance (out_dict, gate_str, arg_list, order) :
+ the_string = gate_instance(gate_str,arg_list)
+@@ -57,16 +57,16 @@ def ident_name_bit (name,bit) :
+
+
+ def emit_rp_group_begin (name) :
+- print "// synopsys rp_group (" + name + ")"
++ print("// synopsys rp_group (" + name + ")")
+
+ def emit_rp_group_end (name) :
+- print "// synopsys rp_endgroup (" + name +")"
++ print("// synopsys rp_endgroup (" + name +")")
+
+ def rp_fill_string (params) :
+ return "// synopsys rp_fill (" + params + ")"
+
+ def emit_rp_fill (params):
+- print "// synopsys rp_fill (" + params +")"
++ print("// synopsys rp_fill (" + params +")")
+
+
+
+@@ -166,6 +166,6 @@ else :
+ for b in range (1,int(sys.argv[2])+1) :
+ generate_dff_nreset_en( sys.argv[1], b, sys.argv[3] );
+ else:
+- print "Usage: " + sys.argv[0] + " type " + " bits " + " strength";
+- print "Usage: " + sys.argv[0] + " type " + " bits " + " strength " + "SWEEP (to go from 1..bits)";
++ print("Usage: " + sys.argv[0] + " type " + " bits " + " strength");
++ print("Usage: " + sys.argv[0] + " type " + " bits " + " strength " + "SWEEP (to go from 1..bits)");
+
+diff --color -rupN a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/gf_14/bsg_misc/bsg_gate_stack_gen.py b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/gf_14/bsg_misc/bsg_gate_stack_gen.py
+--- a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/gf_14/bsg_misc/bsg_gate_stack_gen.py 2021-09-26 19:02:04.000000000 +0200
++++ b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/gf_14/bsg_misc/bsg_gate_stack_gen.py 2024-01-11 13:11:01.848395430 +0100
+@@ -16,27 +16,27 @@ import sys;
+ fab = "gf_14"
+
+ def emit_module_header (name, input_args, output_args) :
+- print "module " + name + " (",
++ print("module " + name + " (", end=' ')
+ my_list = []
+ for x in input_args :
+ my_list.append("input "+x+"\n");
+ for x in output_args :
+ my_list.append("output "+x+"\n");
+- print (" "*(len(name)+8)+",").join(my_list);
++ print((" "*(len(name)+8)+",").join(my_list));
+
+- print ");";
++ print(");");
+
+ def emit_module_footer( ) :
+- print "endmodule";
++ print("endmodule");
+
+ def emit_wire_definition (name) :
+- print "wire " + name + "; "
++ print("wire " + name + "; ")
+
+ def emit_wire_definition_nocr (name) :
+- print "wire " + name + "; ",
++ print("wire " + name + "; ", end=' ')
+
+ def emit_gate_instance (gate_str, arg_list ) :
+- print gate_instance(gate_str,arg_list);
++ print(gate_instance(gate_str,arg_list));
+
+ def queue_gate_instance (out_dict, gate_str, arg_list, order) :
+ the_string = gate_instance(gate_str,arg_list)
+@@ -87,13 +87,13 @@ def ident_name_bit (name,bit) :
+
+
+ def emit_rp_group_begin (name) :
+- print "// synopsys rp_group (" + name + ")"
++ print("// synopsys rp_group (" + name + ")")
+
+ def emit_rp_group_end (name) :
+- print "// synopsys rp_endgroup (" + name +")"
++ print("// synopsys rp_endgroup (" + name +")")
+
+ def emit_rp_fill (params):
+- print "// synopsys rp_fill (" + params +")"
++ print("// synopsys rp_fill (" + params +")")
+
+ def generate_gate_stack ( gatename, rows,signature, vert) :
+ if (vert) :
+@@ -135,38 +135,38 @@ def generate_gate_stack ( gatename, rows
+ if len(sys.argv) == 4 :
+ if sys.argv[2].isdigit() :
+ for x in range(1,int(sys.argv[2])+1) :
+- print "\n// ****************************************************** \n"
++ print("\n// ****************************************************** \n")
+ generate_gate_stack(sys.argv[1],x,sys.argv[3],1);
+ elif (sys.argv[2][0]=="-") :
+ for x in range(1,-(int(sys.argv[2]))+1) :
+- print "\n// ****************************************************** \n"
++ print("\n// ****************************************************** \n")
+ generate_gate_stack(sys.argv[1],x,sys.argv[3],0);
+
+ elif len(sys.argv) == 5 :
+ signature=sys.argv[3]
+ num_inputs = signature.count('#') - 2;
+ input_params = ["input [width_p-1:0] i"+str(x) for x in range(0,num_inputs)]
+- print '''
++ print('''
+
+ module bsg_'''+sys.argv[4],'''#(width_p="inv",harden_p=1)
+ ('''+"\n ,".join(input_params)+'''
+ , output [width_p-1:0] o
+ );
+-'''
++''')
+
+ for x in range(1,int(sys.argv[2])+1) :
+- print ''' if (harden_p && (width_p=='''+str(x)+'''))
++ print(''' if (harden_p && (width_p=='''+str(x)+'''))
+ begin:macro
+ bsg_rp_gf_14_'''+sys.argv[1]+'''_b'''+str(x)+''' gate(.*);
+ end
+- else ''';
+- print '''
++ else ''');
++ print('''
+ begin: notmacro
+ initial assert(0!=1) else $error("%m unsupported gatestack size",width_p);
+ end
+
+ endmodule
+-'''
++''')
+ else :
+- print "Usage: bsg_gate_stack_gen.py AND2X1 32 > bsg_and_stacks.v # generate each individual netlist of each size"
+- print " bsg_gate_stack_gen.py AND2X1 32 and > bsg_and.v # generate the verilog function that thunks to the right netlist"
++ print("Usage: bsg_gate_stack_gen.py AND2X1 32 > bsg_and_stacks.v # generate each individual netlist of each size")
++ print(" bsg_gate_stack_gen.py AND2X1 32 and > bsg_and.v # generate the verilog function that thunks to the right netlist")
+diff --color -rupN a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/gf_14/bsg_misc/bsg_mux_gen.py b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/gf_14/bsg_misc/bsg_mux_gen.py
+--- a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/gf_14/bsg_misc/bsg_mux_gen.py 2021-09-26 19:02:04.000000000 +0200
++++ b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/gf_14/bsg_misc/bsg_mux_gen.py 2024-01-11 13:11:02.315055915 +0100
+@@ -23,27 +23,27 @@
+ import sys;
+
+ def emit_module_header (name, input_args, output_args) :
+- print "module " + name + "(",
++ print("module " + name + "(", end=' ')
+ my_list = []
+ for x in input_args :
+ my_list.append("input "+x+"\n");
+ for x in output_args :
+ my_list.append("output "+x+"\n");
+- print (" "*(len(name)+8)+",").join(my_list);
++ print((" "*(len(name)+8)+",").join(my_list));
+
+- print ");";
++ print(");");
+
+ def emit_module_footer( ) :
+- print "endmodule";
++ print("endmodule");
+
+ def emit_wire_definition (name) :
+- print "wire " + name + "; "
++ print("wire " + name + "; ")
+
+ def emit_wire_definition_nocr (name) :
+- print "wire " + name + "; ",
++ print("wire " + name + "; ", end=' ')
+
+ def emit_gate_instance (gate_str, arg_list ) :
+- print gate_instance(gate_str,arg_list);
++ print(gate_instance(gate_str,arg_list));
+
+ def queue_gate_instance (out_dict, gate_str, arg_list, order) :
+ the_string = gate_instance(gate_str,arg_list)
+@@ -74,13 +74,13 @@ def ident_name_bit (name,bit) :
+
+
+ def emit_rp_group_begin (name) :
+- print "// synopsys rp_group (" + name + ")"
++ print("// synopsys rp_group (" + name + ")")
+
+ def emit_rp_group_end (name) :
+- print "// synopsys rp_endgroup (" + name +")"
++ print("// synopsys rp_endgroup (" + name +")")
+
+ def emit_rp_fill (params):
+- print "// synopsys rp_fill (" + params +")"
++ print("// synopsys rp_fill (" + params +")")
+
+
+
+@@ -131,7 +131,7 @@ def generate_mux_shift ( inputs, bits):
+ emit_rp_fill(str(column) + " 0 UX");
+ column=column+1;
+
+- print "wire " + ",".join([ident_name_word_bit("a2",g,b) for b in range(0,bits)]) + ";";
++ print("wire " + ",".join([ident_name_word_bit("a2",g,b) for b in range(0,bits)]) + ";");
+
+ for b in range (0,bits) :
+
+@@ -149,7 +149,7 @@ def generate_mux_shift ( inputs, bits):
+ column=column+1;
+
+ for g in range(left,left+right) :
+- print "wire " + ",".join([ident_name_word_bit("a2",g,b) for b in range(0,bits)]) + ";";
++ print("wire " + ",".join([ident_name_word_bit("a2",g,b) for b in range(0,bits)]) + ";");
+
+ for b in range(0,bits) :
+ emit_gate_instance(joiner
+@@ -184,5 +184,5 @@ def generate_mux_shift ( inputs, bits):
+ if len(sys.argv) == 3 :
+ generate_mux_shift (int(sys.argv[1]), int(sys.argv[2]));
+ else :
+- print "Usage: " + sys.argv[0] + " inputs bits";
++ print("Usage: " + sys.argv[0] + " inputs bits");
+
+diff --color -rupN a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/gf_14/bsg_misc/bsg_reduce_gen.py b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/gf_14/bsg_misc/bsg_reduce_gen.py
+--- a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/gf_14/bsg_misc/bsg_reduce_gen.py 2021-09-26 19:02:04.000000000 +0200
++++ b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/gf_14/bsg_misc/bsg_reduce_gen.py 2024-01-11 13:11:01.725063730 +0100
+@@ -2,7 +2,7 @@
+
+ import sys;
+
+-print '''
++print('''
+
+ module bsg_rp_gf_14_reduce_and_b4 (input [3:0] i, output o);
+ wire [1:0] lo;
+@@ -91,4 +91,4 @@ SC7P5T_ND4X2_SSC14SL bCDEF (.A(i[12]),
+ endmodule
+
+
+-''';
++''');
+diff --color -rupN a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_dataflow/bsg_fifo_shift_gen.py b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_dataflow/bsg_fifo_shift_gen.py
+--- a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_dataflow/bsg_fifo_shift_gen.py 2021-09-26 19:02:04.000000000 +0200
++++ b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_dataflow/bsg_fifo_shift_gen.py 2024-01-11 13:11:02.441720904 +0100
+@@ -24,27 +24,27 @@
+ import sys;
+
+ def emit_module_header (name, input_args, output_args) :
+- print "module " + name + "(",
++ print("module " + name + "(", end=' ')
+ my_list = []
+ for x in input_args :
+ my_list.append("input "+x+"\n");
+ for x in output_args :
+ my_list.append("output "+x+"\n");
+- print (" "*(len(name)+8)+",").join(my_list);
++ print((" "*(len(name)+8)+",").join(my_list));
+
+- print ");";
++ print(");");
+
+ def emit_module_footer( ) :
+- print "endmodule";
++ print("endmodule");
+
+ def emit_wire_definition (name) :
+- print "wire " + name + "; "
++ print("wire " + name + "; ")
+
+ def emit_wire_definition_nocr (name) :
+- print "wire " + name + "; ",
++ print("wire " + name + "; ", end=' ')
+
+ def emit_gate_instance (gate_str, arg_list ) :
+- print gate_instance(gate_str,arg_list);
++ print(gate_instance(gate_str,arg_list));
+
+ def queue_gate_instance (out_dict, gate_str, arg_list, order) :
+ the_string = gate_instance(gate_str,arg_list)
+@@ -75,13 +75,13 @@ def ident_name_bit (name,bit) :
+
+
+ def emit_rp_group_begin (name) :
+- print "// synopsys rp_group (" + name + ")"
++ print("// synopsys rp_group (" + name + ")")
+
+ def emit_rp_group_end (name) :
+- print "// synopsys rp_endgroup (" + name +")"
++ print("// synopsys rp_endgroup (" + name +")")
+
+ def emit_rp_fill (params):
+- print "// synopsys rp_fill (" + params +")"
++ print("// synopsys rp_fill (" + params +")")
+
+
+
+@@ -113,19 +113,19 @@ def generate_fifo_shift_array ( words, b
+ emit_rp_group_begin("fifo_shift")
+
+ for w in range (0,words+1) :
+- print "wire " + ",".join([ident_name_word_bit("reg",w,b) for b in range(0,bits)]) + ";";
++ print("wire " + ",".join([ident_name_word_bit("reg",w,b) for b in range(0,bits)]) + ";");
+
+ for b in range(0,bits) :
+- print "assign " + access_bit("data_o",b)+ " = ", ident_name_word_bit("reg",0,b) + ";";
++ print("assign " + access_bit("data_o",b)+ " = ", ident_name_word_bit("reg",0,b) + ";");
+
+- for w in reversed(range (0,words)) :
++ for w in reversed(list(range(0,words))) :
+
+ for g in [1, 2, 0] :
+ if (g != 1 or w < words-1) :
+ emit_rp_fill(str(column) + " 0 UX");
+ column=column+1;
+
+- print "wire " + ",".join([ident_name_word_bit_port("a2",w,b,g) for b in range(0,bits)]) + ";";
++ print("wire " + ",".join([ident_name_word_bit_port("a2",w,b,g) for b in range(0,bits)]) + ";");
+
+ for b in range (0,bits) :
+ # we put the selects first on these gates because
+@@ -160,7 +160,7 @@ def generate_fifo_shift_array ( words, b
+ emit_rp_fill(str(column) + " 0 UX");
+ column=column+1;
+
+- print "wire " + ",".join([ident_name_word_bit("a3",w,b) for b in range(0,bits)]) + ";";
++ print("wire " + ",".join([ident_name_word_bit("a3",w,b) for b in range(0,bits)]) + ";");
+ for b in range (0,bits) :
+ if (w < words - 1) :
+ emit_gate_instance(nand3
+@@ -201,5 +201,5 @@ def generate_fifo_shift_array ( words, b
+ if len(sys.argv) == 3 :
+ generate_fifo_shift_array (int(sys.argv[1]), int(sys.argv[2]));
+ else :
+- print "Usage: " + sys.argv[0] + " words bits";
++ print("Usage: " + sys.argv[0] + " words bits");
+
+diff --color -rupN a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_mem/bsg_rf_gen.py b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_mem/bsg_rf_gen.py
+--- a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_mem/bsg_rf_gen.py 2021-09-26 19:02:04.000000000 +0200
++++ b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_mem/bsg_rf_gen.py 2024-01-11 13:11:03.415041346 +0100
+@@ -17,27 +17,27 @@
+ import sys;
+
+ def emit_module_header (name, input_args, output_args) :
+- print "module " + name + " (",
++ print("module " + name + " (", end=' ')
+ my_list = []
+ for x in input_args :
+ my_list.append("input "+x+"\n");
+ for x in output_args :
+ my_list.append("output "+x+"\n");
+- print (" "*(len(name)+8)+",").join(my_list);
++ print((" "*(len(name)+8)+",").join(my_list));
+
+- print ");";
++ print(");");
+
+ def emit_module_footer( ) :
+- print "endmodule";
++ print("endmodule");
+
+ def emit_wire_definition (name) :
+- print "wire " + name + "; "
++ print("wire " + name + "; ")
+
+ def emit_wire_definition_nocr (name) :
+- print "wire " + name + "; ",
++ print("wire " + name + "; ", end=' ')
+
+ def emit_gate_instance (gate_str, arg_list ) :
+- print gate_instance(gate_str,arg_list);
++ print(gate_instance(gate_str,arg_list));
+
+ def queue_gate_instance (out_dict, gate_str, arg_list, order) :
+ the_string = gate_instance(gate_str,arg_list)
+@@ -68,13 +68,13 @@ def ident_name_bit (name,bit) :
+
+
+ def emit_rp_group_begin (name) :
+- print "// synopsys rp_group (" + name + ")"
++ print("// synopsys rp_group (" + name + ")")
+
+ def emit_rp_group_end (name) :
+- print "// synopsys rp_endgroup (" + name +")"
++ print("// synopsys rp_endgroup (" + name +")")
+
+ def emit_rp_fill (params):
+- print "// synopsys rp_fill (" + params +")"
++ print("// synopsys rp_fill (" + params +")")
+
+
+
+@@ -125,7 +125,7 @@ def generate_2_word_1r1w_array ( words,
+ emit_rp_fill(str(column) + " 0 UX");
+ column=column+1;
+
+- print "wire " + ",".join([ident_name_word_bit("q",w,b) for b in range(0,bits)]) + ";";
++ print("wire " + ",".join([ident_name_word_bit("q",w,b) for b in range(0,bits)]) + ";");
+ for b in range (0,bits) :
+
+ emit_gate_instance(dffe
+@@ -139,7 +139,7 @@ def generate_2_word_1r1w_array ( words,
+ emit_rp_fill(str(column) + " 0 UX");
+ column=column+1;
+
+- print "wire " + ",".join([ident_name_bit_port("qaoi",b,0) for b in range(0,bits)]) + ";";
++ print("wire " + ",".join([ident_name_bit_port("qaoi",b,0) for b in range(0,bits)]) + ";");
+
+ for b in range(0,bits) :
+ emit_gate_instance(aoi22,
+@@ -188,7 +188,7 @@ def generate_4_word_1r1w_array ( words,
+ emit_rp_fill(str(column) + " 0 UX");
+ column=column+1;
+
+- print "wire " + ",".join([ident_name_word_bit("q",w,b) for b in range(0,bits)]) + ";";
++ print("wire " + ",".join([ident_name_word_bit("q",w,b) for b in range(0,bits)]) + ";");
+ for b in range (0,bits) :
+
+ emit_gate_instance(dffe
+@@ -202,7 +202,7 @@ def generate_4_word_1r1w_array ( words,
+ emit_rp_fill(str(column) + " 0 UX");
+ column=column+1;
+
+- print "wire " + ",".join([ident_name_word_bit("qaoi",bank,b) for b in range(0,bits)]) + ";";
++ print("wire " + ",".join([ident_name_word_bit("qaoi",bank,b) for b in range(0,bits)]) + ";");
+
+ for b in range(0,bits) :
+ emit_gate_instance(aoi22,
+@@ -262,7 +262,7 @@ def generate_Nr1w_array ( words, bits, r
+ emit_wire_definition(ident_name_bit("data_i_inv",b));
+ emit_rp_fill(str(column) +" 0 UX")
+ # we generate the state first
+- print "wire " + ",".join([ident_name_word_bit("q",w,b) for w in range(words)]) + ";";
++ print("wire " + ",".join([ident_name_word_bit("q",w,b) for w in range(words)]) + ";");
+ for w in range (0,words) :
+ emit_gate_instance(dffe
+ ,[ ident_name_word_bit("reg",w,b)
+@@ -292,7 +292,7 @@ def generate_Nr1w_array ( words, bits, r
+ # AOI22 every pair of words
+
+ # we generate the state first
+- print "wire " + ",".join([ident_name_word_bit_port("qaoi",w,b,p) for w in range(0,words,2)]) + ";";
++ print("wire " + ",".join([ident_name_word_bit_port("qaoi",w,b,p) for w in range(0,words,2)]) + ";");
+
+ for w in range (0,words,2) :
+ queue_gate_instance(gate_dict, aoi22
+@@ -348,7 +348,7 @@ def generate_Nr1w_array ( words, bits, r
+ , w+(15 if (words > 16) else 13)
+ );
+
+- print "\n";
++ print("\n");
+ # add inverters to data in, and data out.
+ # these are on opposite sides of the array
+ # we may potentially pay in delay, but we get
+@@ -372,9 +372,9 @@ def generate_Nr1w_array ( words, bits, r
+ # since we are using rp_fill commands
+ # but it makes things more readable
+
+- for x in sorted(gate_dict.items(), key=lambda x: x[1]) :
++ for x in sorted(list(gate_dict.items()), key=lambda x: x[1]) :
+ emit_rp_fill( str(column) +" "+str(x[1])+" UX")
+- print x[0], "// ",x[1];
++ print(x[0], "// ",x[1]);
+ column=column+1
+
+
+@@ -384,5 +384,5 @@ def generate_Nr1w_array ( words, bits, r
+ if len(sys.argv) == 4 :
+ generate_Nr1w_array (int(sys.argv[1]), int(sys.argv[2]), int(sys.argv[3]));
+ else :
+- print "Usage: " + sys.argv[0] + " words bits readports";
++ print("Usage: " + sys.argv[0] + " words bits readports");
+
+diff --color -rupN a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_misc/bsg_dff_gen.py b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_misc/bsg_dff_gen.py
+--- a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_misc/bsg_dff_gen.py 2021-09-26 19:02:04.000000000 +0200
++++ b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_misc/bsg_dff_gen.py 2024-01-11 13:11:04.155031544 +0100
+@@ -6,27 +6,27 @@
+ import sys;
+
+ def emit_module_header (name, input_args, output_args) :
+- print "module " + name + "(",
++ print("module " + name + "(", end=' ')
+ my_list = []
+ for x in input_args :
+ my_list.append("input "+x+"\n");
+ for x in output_args :
+ my_list.append("output "+x+"\n");
+- print (" "*(len(name)+8)+",").join(my_list);
++ print((" "*(len(name)+8)+",").join(my_list));
+
+- print ");";
++ print(");");
+
+ def emit_module_footer( ) :
+- print "endmodule";
++ print("endmodule");
+
+ def emit_wire_definition (name) :
+- print "wire " + name + "; "
++ print("wire " + name + "; ")
+
+ def emit_wire_definition_nocr (name) :
+- print "wire " + name + "; ",
++ print("wire " + name + "; ", end=' ')
+
+ def emit_gate_instance (gate_str, arg_list ) :
+- print gate_instance(gate_str,arg_list);
++ print(gate_instance(gate_str,arg_list));
+
+ def queue_gate_instance (out_dict, gate_str, arg_list, order) :
+ the_string = gate_instance(gate_str,arg_list)
+@@ -57,16 +57,16 @@ def ident_name_bit (name,bit) :
+
+
+ def emit_rp_group_begin (name) :
+- print "// synopsys rp_group (" + name + ")"
++ print("// synopsys rp_group (" + name + ")")
+
+ def emit_rp_group_end (name) :
+- print "// synopsys rp_endgroup (" + name +")"
++ print("// synopsys rp_endgroup (" + name +")")
+
+ def rp_fill_string (params) :
+ return "// synopsys rp_fill (" + params + ")"
+
+ def emit_rp_fill (params):
+- print "// synopsys rp_fill (" + params +")"
++ print("// synopsys rp_fill (" + params +")")
+
+
+
+@@ -153,6 +153,6 @@ else :
+ for b in range (1,int(sys.argv[2])+1) :
+ generate_dff_nreset_en( sys.argv[1], b, sys.argv[3] );
+ else:
+- print "Usage: " + sys.argv[0] + " type " + " bits " + " strength";
+- print "Usage: " + sys.argv[0] + " type " + " bits " + " strength " + "SWEEP (to go from 1..bits)";
++ print("Usage: " + sys.argv[0] + " type " + " bits " + " strength");
++ print("Usage: " + sys.argv[0] + " type " + " bits " + " strength " + "SWEEP (to go from 1..bits)");
+
+diff --color -rupN a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_misc/bsg_gate_stack_gen.py b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_misc/bsg_gate_stack_gen.py
+--- a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_misc/bsg_gate_stack_gen.py 2021-09-26 19:02:04.000000000 +0200
++++ b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_misc/bsg_gate_stack_gen.py 2024-01-11 13:11:04.521693353 +0100
+@@ -16,27 +16,27 @@ import sys;
+ fab = "tsmc_250"
+
+ def emit_module_header (name, input_args, output_args) :
+- print "module " + name + " (",
++ print("module " + name + " (", end=' ')
+ my_list = []
+ for x in input_args :
+ my_list.append("input "+x+"\n");
+ for x in output_args :
+ my_list.append("output "+x+"\n");
+- print (" "*(len(name)+8)+",").join(my_list);
++ print((" "*(len(name)+8)+",").join(my_list));
+
+- print ");";
++ print(");");
+
+ def emit_module_footer( ) :
+- print "endmodule";
++ print("endmodule");
+
+ def emit_wire_definition (name) :
+- print "wire " + name + "; "
++ print("wire " + name + "; ")
+
+ def emit_wire_definition_nocr (name) :
+- print "wire " + name + "; ",
++ print("wire " + name + "; ", end=' ')
+
+ def emit_gate_instance (gate_str, arg_list ) :
+- print gate_instance(gate_str,arg_list);
++ print(gate_instance(gate_str,arg_list));
+
+ def queue_gate_instance (out_dict, gate_str, arg_list, order) :
+ the_string = gate_instance(gate_str,arg_list)
+@@ -87,13 +87,13 @@ def ident_name_bit (name,bit) :
+
+
+ def emit_rp_group_begin (name) :
+- print "// synopsys rp_group (" + name + ")"
++ print("// synopsys rp_group (" + name + ")")
+
+ def emit_rp_group_end (name) :
+- print "// synopsys rp_endgroup (" + name +")"
++ print("// synopsys rp_endgroup (" + name +")")
+
+ def emit_rp_fill (params):
+- print "// synopsys rp_fill (" + params +")"
++ print("// synopsys rp_fill (" + params +")")
+
+ def generate_gate_stack ( gatename, rows,signature, vert) :
+ if (vert) :
+@@ -135,38 +135,38 @@ def generate_gate_stack ( gatename, rows
+ if len(sys.argv) == 4 :
+ if sys.argv[2].isdigit() :
+ for x in range(1,int(sys.argv[2])+1) :
+- print "\n// ****************************************************** \n"
++ print("\n// ****************************************************** \n")
+ generate_gate_stack(sys.argv[1],x,sys.argv[3],1);
+ elif (sys.argv[2][0]=="-") :
+ for x in range(1,-(int(sys.argv[2]))+1) :
+- print "\n// ****************************************************** \n"
++ print("\n// ****************************************************** \n")
+ generate_gate_stack(sys.argv[1],x,sys.argv[3],0);
+
+ elif len(sys.argv) == 5 :
+ signature=sys.argv[3]
+ num_inputs = signature.count('#') - 2;
+ input_params = ["input [width_p-1:0] i"+str(x) for x in range(0,num_inputs)]
+- print '''
++ print('''
+
+ module bsg_'''+sys.argv[4],'''#(width_p="inv",harden_p=1)
+ ('''+"\n ,".join(input_params)+'''
+ , output [width_p-1:0] o
+ );
+-'''
++''')
+
+ for x in range(1,int(sys.argv[2])+1) :
+- print ''' if (harden_p && (width_p=='''+str(x)+'''))
++ print(''' if (harden_p && (width_p=='''+str(x)+'''))
+ begin:macro
+ bsg_rp_tsmc_250_'''+sys.argv[1]+'''_b'''+str(x)+''' gate(.*);
+ end
+- else ''';
+- print '''
++ else ''');
++ print('''
+ begin: notmacro
+ initial assert(0!=1) else $error("%m unsupported gatestack size",width_p);
+ end
+
+ endmodule
+-'''
++''')
+ else :
+- print "Usage: bsg_gate_stack_gen.py AND2X1 32 > bsg_and_stacks.v # generate each individual netlist of each size"
+- print " bsg_gate_stack_gen.py AND2X1 32 and > bsg_and.v # generate the verilog function that thunks to the right netlist"
++ print("Usage: bsg_gate_stack_gen.py AND2X1 32 > bsg_and_stacks.v # generate each individual netlist of each size")
++ print(" bsg_gate_stack_gen.py AND2X1 32 and > bsg_and.v # generate the verilog function that thunks to the right netlist")
+diff --color -rupN a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_misc/bsg_mul/bsg_and_csa_gen.py b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_misc/bsg_mul/bsg_and_csa_gen.py
+--- a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_misc/bsg_mul/bsg_and_csa_gen.py 2021-09-26 19:02:04.000000000 +0200
++++ b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_misc/bsg_mul/bsg_and_csa_gen.py 2024-01-11 13:11:04.645025053 +0100
+@@ -14,27 +14,27 @@
+ import sys;
+
+ def emit_module_header (name, input_args, output_args) :
+- print "module " + name + " (",
++ print("module " + name + " (", end=' ')
+ my_list = []
+ for x in input_args :
+ my_list.append("input "+x+"\n");
+ for x in output_args :
+ my_list.append("output "+x+"\n");
+- print (" "*(len(name)+8)+",").join(my_list);
++ print((" "*(len(name)+8)+",").join(my_list));
+
+- print ");";
++ print(");");
+
+ def emit_module_footer( ) :
+- print "endmodule";
++ print("endmodule");
+
+ def emit_wire_definition (name) :
+- print "wire " + name + "; "
++ print("wire " + name + "; ")
+
+ def emit_wire_definition_nocr (name) :
+- print "wire " + name + "; ",
++ print("wire " + name + "; ", end=' ')
+
+ def emit_gate_instance (gate_str, arg_list ) :
+- print gate_instance(gate_str,arg_list);
++ print(gate_instance(gate_str,arg_list));
+
+ def queue_gate_instance (out_dict, gate_str, arg_list, order) :
+ the_string = gate_instance(gate_str,arg_list)
+@@ -86,13 +86,13 @@ def ident_name_bit (name,bit) :
+
+
+ def emit_rp_group_begin (name) :
+- print "// synopsys rp_group (" + name + ")"
++ print("// synopsys rp_group (" + name + ")")
+
+ def emit_rp_group_end (name) :
+- print "// synopsys rp_endgroup (" + name +")"
++ print("// synopsys rp_endgroup (" + name +")")
+
+ def emit_rp_fill (params):
+- print "// synopsys rp_fill (" + params +")"
++ print("// synopsys rp_fill (" + params +")")
+
+
+
+@@ -129,7 +129,7 @@ def generate_and_csa_block ( rows ) :
+ for pos in range (0,rows) :
+
+ emit_rp_fill("0 " + str(pos*2) + " UX");
+- print "wire " + ident_name_bit("and_int",pos) + ";";
++ print("wire " + ident_name_bit("and_int",pos) + ";");
+
+ emit_gate_instance(addf
+ , [ ident_name_word_bit("csa", pos, 0)
+@@ -155,5 +155,5 @@ def generate_and_csa_block ( rows ) :
+ if len(sys.argv) == 2 :
+ generate_and_csa_block(int(sys.argv[1]));
+ else :
+- print "Usage: " + sys.argv[0] + " rows";
++ print("Usage: " + sys.argv[0] + " rows");
+
+diff --color -rupN a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_misc/bsg_mul/bsg_booth_4_block_gen.py b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_misc/bsg_mul/bsg_booth_4_block_gen.py
+--- a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_misc/bsg_mul/bsg_booth_4_block_gen.py 2021-09-26 19:02:04.000000000 +0200
++++ b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_misc/bsg_mul/bsg_booth_4_block_gen.py 2024-01-11 13:11:05.051686334 +0100
+@@ -14,27 +14,27 @@
+ import sys;
+
+ def emit_module_header (name, input_args, output_args) :
+- print "module " + name + " (",
++ print("module " + name + " (", end=' ')
+ my_list = []
+ for x in input_args :
+ my_list.append("input "+x+"\n");
+ for x in output_args :
+ my_list.append("output "+x+"\n");
+- print (" "*(len(name)+8)+",").join(my_list);
++ print((" "*(len(name)+8)+",").join(my_list));
+
+- print ");";
++ print(");");
+
+ def emit_module_footer( ) :
+- print "endmodule";
++ print("endmodule");
+
+ def emit_wire_definition (name) :
+- print "wire " + name + "; "
++ print("wire " + name + "; ")
+
+ def emit_wire_definition_nocr (name) :
+- print "wire " + name + "; ",
++ print("wire " + name + "; ", end=' ')
+
+ def emit_gate_instance (gate_str, arg_list ) :
+- print gate_instance(gate_str,arg_list);
++ print(gate_instance(gate_str,arg_list));
+
+ def queue_gate_instance (out_dict, gate_str, arg_list, order) :
+ the_string = gate_instance(gate_str,arg_list)
+@@ -86,13 +86,13 @@ def ident_name_bit (name,bit) :
+
+
+ def emit_rp_group_begin (name) :
+- print "// synopsys rp_group (" + name + ")"
++ print("// synopsys rp_group (" + name + ")")
+
+ def emit_rp_group_end (name) :
+- print "// synopsys rp_endgroup (" + name +")"
++ print("// synopsys rp_endgroup (" + name +")")
+
+ def emit_rp_fill (params):
+- print "// synopsys rp_fill (" + params +")"
++ print("// synopsys rp_fill (" + params +")")
+
+
+ # NOTE: for symmetric pins, assume that earlier ones are always faster.
+@@ -130,11 +130,11 @@ def generate_booth_4_block ( rows ) :
+ emit_rp_group_begin("b4b")
+
+ for pos in range (0,rows) :
+- print ""
+- print "wire " + ",".join([ident_name_word_bit("pp",pos,b) for b in range(0,4)])+";"
+- print "wire " + ",".join([ident_name_word_bit("aoi",pos,b) for b in range(0,4)])+";"
+- print "wire " + ",".join([ident_name_word_bit("cl",pos,b) for b in range(0,1)])+";"
+- print "wire " + ",".join([ident_name_word_bit("s0",pos,b) for b in range(0,1)])+";"
++ print("")
++ print("wire " + ",".join([ident_name_word_bit("pp",pos,b) for b in range(0,4)])+";")
++ print("wire " + ",".join([ident_name_word_bit("aoi",pos,b) for b in range(0,4)])+";")
++ print("wire " + ",".join([ident_name_word_bit("cl",pos,b) for b in range(0,1)])+";")
++ print("wire " + ",".join([ident_name_word_bit("s0",pos,b) for b in range(0,1)])+";")
+
+ emit_rp_fill("0 " + str(pos*2) + " RX");
+
+@@ -242,5 +242,5 @@ def generate_booth_4_block ( rows ) :
+ if len(sys.argv) == 2 :
+ generate_booth_4_block (int(sys.argv[1]));
+ else :
+- print "Usage: " + sys.argv[0] + " rows";
++ print("Usage: " + sys.argv[0] + " rows");
+
+diff --color -rupN a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_misc/bsg_mul/bsg_booth_4_block_gen_cornice.py b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_misc/bsg_mul/bsg_booth_4_block_gen_cornice.py
+--- a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_misc/bsg_mul/bsg_booth_4_block_gen_cornice.py 2021-09-26 19:02:04.000000000 +0200
++++ b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_misc/bsg_mul/bsg_booth_4_block_gen_cornice.py 2024-01-11 13:11:04.778356621 +0100
+@@ -14,27 +14,27 @@
+ import sys;
+
+ def emit_module_header (name, input_args, output_args) :
+- print "module " + name + " (",
++ print("module " + name + " (", end=' ')
+ my_list = []
+ for x in input_args :
+ my_list.append("input "+x+"\n");
+ for x in output_args :
+ my_list.append("output "+x+"\n");
+- print (" "*(len(name)+8)+",").join(my_list);
++ print((" "*(len(name)+8)+",").join(my_list));
+
+- print ");";
++ print(");");
+
+ def emit_module_footer( ) :
+- print "endmodule";
++ print("endmodule");
+
+ def emit_wire_definition (name) :
+- print "wire " + name + "; "
++ print("wire " + name + "; ")
+
+ def emit_wire_definition_nocr (name) :
+- print "wire " + name + "; ",
++ print("wire " + name + "; ", end=' ')
+
+ def emit_gate_instance (gate_str, arg_list ) :
+- print gate_instance(gate_str,arg_list);
++ print(gate_instance(gate_str,arg_list));
+
+ def queue_gate_instance (out_dict, gate_str, arg_list, order) :
+ the_string = gate_instance(gate_str,arg_list)
+@@ -86,13 +86,13 @@ def ident_name_bit (name,bit) :
+
+
+ def emit_rp_group_begin (name) :
+- print "// synopsys rp_group (" + name + ")"
++ print("// synopsys rp_group (" + name + ")")
+
+ def emit_rp_group_end (name) :
+- print "// synopsys rp_endgroup (" + name +")"
++ print("// synopsys rp_endgroup (" + name +")")
+
+ def emit_rp_fill (params):
+- print "// synopsys rp_fill (" + params +")"
++ print("// synopsys rp_fill (" + params +")")
+
+
+
+@@ -138,11 +138,11 @@ def generate_booth_4_block ( rows ) :
+ for pos in range (0,rows) :
+ adj_pos = start_row + pos;
+
+- print ""
+- print "wire " + ",".join([ident_name_word_bit("pp",pos,b) for b in range(0,4)])+";"
+- print "wire " + ",".join([ident_name_word_bit("aoi",pos,b) for b in range(0,4)])+";"
+- print "wire " + ",".join([ident_name_word_bit("cl",pos,b) for b in range(0,1)])+";"
+- print "wire " + ",".join([ident_name_word_bit("s0",pos,b) for b in range(0,1)])+";"
++ print("")
++ print("wire " + ",".join([ident_name_word_bit("pp",pos,b) for b in range(0,4)])+";")
++ print("wire " + ",".join([ident_name_word_bit("aoi",pos,b) for b in range(0,4)])+";")
++ print("wire " + ",".join([ident_name_word_bit("cl",pos,b) for b in range(0,1)])+";")
++ print("wire " + ",".join([ident_name_word_bit("s0",pos,b) for b in range(0,1)])+";")
+
+
+ # irritatingly, we need to place at least one cell at X position 0 for it to shift everything over.
+@@ -242,13 +242,13 @@ def generate_booth_4_block ( rows ) :
+
+
+ if (adj_pos == 0) :
+- print "assign s_o[0] = SDN_i[0]; /* SDN_i[0][0] */ assign c_o[0] = 1'b0;"
++ print("assign s_o[0] = SDN_i[0]; /* SDN_i[0][0] */ assign c_o[0] = 1'b0;")
+
+ if (adj_pos == 1) :
+- print "assign s_o[1] = 1'b0; assign c_o[1] = 1'b0;"
++ print("assign s_o[1] = 1'b0; assign c_o[1] = 1'b0;")
+
+ if (adj_pos == 3) :
+- print "assign s_o[" + str(pos) + "] = pp_w" + str(pos) + "_b0; assign c_o[" + str(pos) + "] = 1'b0;"
++ print("assign s_o[" + str(pos) + "] = pp_w" + str(pos) + "_b0; assign c_o[" + str(pos) + "] = 1'b0;")
+
+
+ emit_rp_group_end("b4b")
+@@ -257,5 +257,5 @@ def generate_booth_4_block ( rows ) :
+ if len(sys.argv) == 2 :
+ generate_booth_4_block (int(sys.argv[1]));
+ else :
+- print "Usage: " + sys.argv[0]
++ print("Usage: " + sys.argv[0])
+
+diff --color -rupN a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_misc/bsg_mul/bsg_booth_4_block_gen_end_cornice.py b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_misc/bsg_mul/bsg_booth_4_block_gen_end_cornice.py
+--- a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_misc/bsg_mul/bsg_booth_4_block_gen_end_cornice.py 2021-09-26 19:02:04.000000000 +0200
++++ b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_misc/bsg_mul/bsg_booth_4_block_gen_end_cornice.py 2024-01-11 13:11:04.915021478 +0100
+@@ -14,27 +14,27 @@
+ import sys;
+
+ def emit_module_header (name, input_args, output_args) :
+- print "module " + name + " (",
++ print("module " + name + " (", end=' ')
+ my_list = []
+ for x in input_args :
+ my_list.append("input "+x+"\n");
+ for x in output_args :
+ my_list.append("output "+x+"\n");
+- print (" "*(len(name)+8)+",").join(my_list);
++ print((" "*(len(name)+8)+",").join(my_list));
+
+- print ");";
++ print(");");
+
+ def emit_module_footer( ) :
+- print "endmodule";
++ print("endmodule");
+
+ def emit_wire_definition (name) :
+- print "wire " + name + "; "
++ print("wire " + name + "; ")
+
+ def emit_wire_definition_nocr (name) :
+- print "wire " + name + "; ",
++ print("wire " + name + "; ", end=' ')
+
+ def emit_gate_instance (gate_str, arg_list ) :
+- print gate_instance(gate_str,arg_list);
++ print(gate_instance(gate_str,arg_list));
+
+ def queue_gate_instance (out_dict, gate_str, arg_list, order) :
+ the_string = gate_instance(gate_str,arg_list)
+@@ -86,13 +86,13 @@ def ident_name_bit (name,bit) :
+
+
+ def emit_rp_group_begin (name) :
+- print "// synopsys rp_group (" + name + ")"
++ print("// synopsys rp_group (" + name + ")")
+
+ def emit_rp_group_end (name) :
+- print "// synopsys rp_endgroup (" + name +")"
++ print("// synopsys rp_endgroup (" + name +")")
+
+ def emit_rp_fill (params):
+- print "// synopsys rp_fill (" + params +")"
++ print("// synopsys rp_fill (" + params +")")
+
+
+
+@@ -138,24 +138,24 @@ def generate_booth_4_block ( rows ) :
+
+ for pos in range (0,rows) :
+
+- print ""
+- print "wire " + ",".join([ident_name_word_bit("pp",pos,b) for b in range(0,4)])+";"
+- print "wire " + ",".join([ident_name_word_bit("aoi",pos,b) for b in range(0,4)])+";"
+- print "wire " + ",".join([ident_name_word_bit("cl",pos,b) for b in range(0,1)])+";"
+- print "wire " + ",".join([ident_name_word_bit("s0",pos,b) for b in range(0,1)])+";"
++ print("")
++ print("wire " + ",".join([ident_name_word_bit("pp",pos,b) for b in range(0,4)])+";")
++ print("wire " + ",".join([ident_name_word_bit("aoi",pos,b) for b in range(0,4)])+";")
++ print("wire " + ",".join([ident_name_word_bit("cl",pos,b) for b in range(0,1)])+";")
++ print("wire " + ",".join([ident_name_word_bit("s0",pos,b) for b in range(0,1)])+";")
+
+
+ emit_rp_fill("0 " + str(pos*2) + " RX");
+
+ if (pos == 0) :
+- print "assign cl_o = 1'b0;"
++ print("assign cl_o = 1'b0;")
+
+ if (pos == 7) :
+- print "assign c_o[" + str(pos) + "] = 1'b0;"
+- print "assign s_o[" + str(pos) + "] = 1'b1;"
++ print("assign c_o[" + str(pos) + "] = 1'b0;")
++ print("assign s_o[" + str(pos) + "] = 1'b1;")
+
+ if (pos == 6) :
+- print "assign c_o[" + str(pos) + "] = 1'b0;"
++ print("assign c_o[" + str(pos) + "] = 1'b0;")
+
+ #3
+ if (pos < 7) :
+@@ -267,5 +267,5 @@ def generate_booth_4_block ( rows ) :
+ if len(sys.argv) == 2 :
+ generate_booth_4_block (int(sys.argv[1]));
+ else :
+- print "Usage: " + sys.argv[0]
++ print("Usage: " + sys.argv[0])
+
+diff --color -rupN a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_misc/bsg_mul/bsg_comp42_gen.py b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_misc/bsg_mul/bsg_comp42_gen.py
+--- a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_misc/bsg_mul/bsg_comp42_gen.py 2021-09-26 19:02:04.000000000 +0200
++++ b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_misc/bsg_mul/bsg_comp42_gen.py 2024-01-11 13:11:05.175018033 +0100
+@@ -14,27 +14,27 @@
+ import sys;
+
+ def emit_module_header (name, input_args, output_args) :
+- print "module " + name + " (",
++ print("module " + name + " (", end=' ')
+ my_list = []
+ for x in input_args :
+ my_list.append("input "+x+"\n");
+ for x in output_args :
+ my_list.append("output "+x+"\n");
+- print (" "*(len(name)+8)+",").join(my_list);
++ print((" "*(len(name)+8)+",").join(my_list));
+
+- print ");";
++ print(");");
+
+ def emit_module_footer( ) :
+- print "endmodule";
++ print("endmodule");
+
+ def emit_wire_definition (name) :
+- print "wire " + name + "; "
++ print("wire " + name + "; ")
+
+ def emit_wire_definition_nocr (name) :
+- print "wire " + name + "; ",
++ print("wire " + name + "; ", end=' ')
+
+ def emit_gate_instance (gate_str, arg_list ) :
+- print gate_instance(gate_str,arg_list);
++ print(gate_instance(gate_str,arg_list));
+
+ def queue_gate_instance (out_dict, gate_str, arg_list, order) :
+ the_string = gate_instance(gate_str,arg_list)
+@@ -86,13 +86,13 @@ def ident_name_bit (name,bit) :
+
+
+ def emit_rp_group_begin (name) :
+- print "// synopsys rp_group (" + name + ")"
++ print("// synopsys rp_group (" + name + ")")
+
+ def emit_rp_group_end (name) :
+- print "// synopsys rp_endgroup (" + name +")"
++ print("// synopsys rp_endgroup (" + name +")")
+
+ def emit_rp_fill (params):
+- print "// synopsys rp_fill (" + params +")"
++ print("// synopsys rp_fill (" + params +")")
+
+
+
+@@ -126,9 +126,9 @@ def generate_c42_block ( rows ) :
+ emit_rp_group_begin("c42")
+
+ for pos in range (0,rows) :
+- print ""
+- print "wire " + ident_name_bit("s_int",pos) +";";
+- print "wire " + ident_name_bit("cl_int",pos)+";";
++ print("")
++ print("wire " + ident_name_bit("s_int",pos) +";");
++ print("wire " + ident_name_bit("cl_int",pos)+";");
+
+ emit_rp_fill("0 " + str(pos*2) + " UX");
+
+@@ -157,5 +157,5 @@ def generate_c42_block ( rows ) :
+ if len(sys.argv) == 2 :
+ generate_c42_block (int(sys.argv[1]));
+ else :
+- print "Usage: " + sys.argv[0] + " rows";
++ print("Usage: " + sys.argv[0] + " rows");
+
+diff --color -rupN a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_misc/bsg_mux_gen.py b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_misc/bsg_mux_gen.py
+--- a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_misc/bsg_mux_gen.py 2021-09-26 19:02:04.000000000 +0200
++++ b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_misc/bsg_mux_gen.py 2024-01-11 13:11:04.278363243 +0100
+@@ -23,27 +23,27 @@
+ import sys;
+
+ def emit_module_header (name, input_args, output_args) :
+- print "module " + name + "(",
++ print("module " + name + "(", end=' ')
+ my_list = []
+ for x in input_args :
+ my_list.append("input "+x+"\n");
+ for x in output_args :
+ my_list.append("output "+x+"\n");
+- print (" "*(len(name)+8)+",").join(my_list);
++ print((" "*(len(name)+8)+",").join(my_list));
+
+- print ");";
++ print(");");
+
+ def emit_module_footer( ) :
+- print "endmodule";
++ print("endmodule");
+
+ def emit_wire_definition (name) :
+- print "wire " + name + "; "
++ print("wire " + name + "; ")
+
+ def emit_wire_definition_nocr (name) :
+- print "wire " + name + "; ",
++ print("wire " + name + "; ", end=' ')
+
+ def emit_gate_instance (gate_str, arg_list ) :
+- print gate_instance(gate_str,arg_list);
++ print(gate_instance(gate_str,arg_list));
+
+ def queue_gate_instance (out_dict, gate_str, arg_list, order) :
+ the_string = gate_instance(gate_str,arg_list)
+@@ -74,13 +74,13 @@ def ident_name_bit (name,bit) :
+
+
+ def emit_rp_group_begin (name) :
+- print "// synopsys rp_group (" + name + ")"
++ print("// synopsys rp_group (" + name + ")")
+
+ def emit_rp_group_end (name) :
+- print "// synopsys rp_endgroup (" + name +")"
++ print("// synopsys rp_endgroup (" + name +")")
+
+ def emit_rp_fill (params):
+- print "// synopsys rp_fill (" + params +")"
++ print("// synopsys rp_fill (" + params +")")
+
+
+
+@@ -127,7 +127,7 @@ def generate_mux_shift ( inputs, bits):
+ emit_rp_fill(str(column) + " 0 UX");
+ column=column+1;
+
+- print "wire " + ",".join([ident_name_word_bit("a2",g,b) for b in range(0,bits)]) + ";";
++ print("wire " + ",".join([ident_name_word_bit("a2",g,b) for b in range(0,bits)]) + ";");
+
+ for b in range (0,bits) :
+
+@@ -145,7 +145,7 @@ def generate_mux_shift ( inputs, bits):
+ column=column+1;
+
+ for g in range(left,left+right) :
+- print "wire " + ",".join([ident_name_word_bit("a2",g,b) for b in range(0,bits)]) + ";";
++ print("wire " + ",".join([ident_name_word_bit("a2",g,b) for b in range(0,bits)]) + ";");
+
+ for b in range(0,bits) :
+ emit_gate_instance(joiner
+@@ -180,5 +180,5 @@ def generate_mux_shift ( inputs, bits):
+ if len(sys.argv) == 3 :
+ generate_mux_shift (int(sys.argv[1]), int(sys.argv[2]));
+ else :
+- print "Usage: " + sys.argv[0] + " inputs bits";
++ print("Usage: " + sys.argv[0] + " inputs bits");
+
+diff --color -rupN a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_misc/bsg_reduce_gen.py b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_misc/bsg_reduce_gen.py
+--- a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_misc/bsg_reduce_gen.py 2021-09-26 19:02:04.000000000 +0200
++++ b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_180_250/bsg_misc/bsg_reduce_gen.py 2024-01-11 13:11:04.391695076 +0100
+@@ -2,7 +2,7 @@
+
+ import sys;
+
+-print '''
++print('''
+
+ module bsg_rp_tsmc_250_reduce_and_b4 (input [3:0] i, output o);
+ wire [1:0] lo;
+@@ -91,4 +91,4 @@ NAND4X2 bCDEF (.A(i[12]),.B(i[13]),.C(
+ endmodule
+
+
+-''';
++''');
+diff --color -rupN a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_40/bsg_mem/bsg_rf_gen.py b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_40/bsg_mem/bsg_rf_gen.py
+--- a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_40/bsg_mem/bsg_rf_gen.py 2021-09-26 19:02:04.000000000 +0200
++++ b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_40/bsg_mem/bsg_rf_gen.py 2024-01-11 13:11:02.715050617 +0100
+@@ -17,27 +17,27 @@
+ import sys;
+
+ def emit_module_header (name, input_args, output_args) :
+- print "module " + name + " (",
++ print("module " + name + " (", end=' ')
+ my_list = []
+ for x in input_args :
+ my_list.append("input "+x+"\n");
+ for x in output_args :
+ my_list.append("output "+x+"\n");
+- print (" "*(len(name)+8)+",").join(my_list);
++ print((" "*(len(name)+8)+",").join(my_list));
+
+- print ");";
++ print(");");
+
+ def emit_module_footer( ) :
+- print "endmodule";
++ print("endmodule");
+
+ def emit_wire_definition (name) :
+- print "wire " + name + "; "
++ print("wire " + name + "; ")
+
+ def emit_wire_definition_nocr (name) :
+- print "wire " + name + "; ",
++ print("wire " + name + "; ", end=' ')
+
+ def emit_gate_instance (gate_str, arg_list ) :
+- print gate_instance(gate_str,arg_list);
++ print(gate_instance(gate_str,arg_list));
+
+ def queue_gate_instance (out_dict, gate_str, arg_list, order) :
+ the_string = gate_instance(gate_str,arg_list)
+@@ -68,13 +68,13 @@ def ident_name_bit (name,bit) :
+
+
+ def emit_rp_group_begin (name) :
+- print "// synopsys rp_group (" + name + ")"
++ print("// synopsys rp_group (" + name + ")")
+
+ def emit_rp_group_end (name) :
+- print "// synopsys rp_endgroup (" + name +")"
++ print("// synopsys rp_endgroup (" + name +")")
+
+ def emit_rp_fill (params):
+- print "// synopsys rp_fill (" + params +")"
++ print("// synopsys rp_fill (" + params +")")
+
+
+
+@@ -132,7 +132,7 @@ def generate_2_word_1r1w_array ( words,
+ emit_rp_fill(str(column) + " 0 UX");
+ column=column+1;
+
+- print "wire " + ",".join([ident_name_word_bit("q",w,b) for b in range(0,bits)]) + ";";
++ print("wire " + ",".join([ident_name_word_bit("q",w,b) for b in range(0,bits)]) + ";");
+ for b in range (0,bits) :
+
+ emit_gate_instance(dffe
+@@ -146,7 +146,7 @@ def generate_2_word_1r1w_array ( words,
+ emit_rp_fill(str(column) + " 0 UX");
+ column=column+1;
+
+- print "wire " + ",".join([ident_name_bit_port("qaoi",b,0) for b in range(0,bits)]) + ";";
++ print("wire " + ",".join([ident_name_bit_port("qaoi",b,0) for b in range(0,bits)]) + ";");
+
+ for b in range(0,bits) :
+ emit_gate_instance(aoi22,
+@@ -195,7 +195,7 @@ def generate_4_word_1r1w_array ( words,
+ emit_rp_fill(str(column) + " 0 UX");
+ column=column+1;
+
+- print "wire " + ",".join([ident_name_word_bit("q",w,b) for b in range(0,bits)]) + ";";
++ print("wire " + ",".join([ident_name_word_bit("q",w,b) for b in range(0,bits)]) + ";");
+ for b in range (0,bits) :
+
+ emit_gate_instance(dffe
+@@ -209,7 +209,7 @@ def generate_4_word_1r1w_array ( words,
+ emit_rp_fill(str(column) + " 0 UX");
+ column=column+1;
+
+- print "wire " + ",".join([ident_name_word_bit("qaoi",bank,b) for b in range(0,bits)]) + ";";
++ print("wire " + ",".join([ident_name_word_bit("qaoi",bank,b) for b in range(0,bits)]) + ";");
+
+ for b in range(0,bits) :
+ emit_gate_instance(aoi22,
+@@ -269,7 +269,7 @@ def generate_Nr1w_array ( words, bits, r
+ emit_wire_definition(ident_name_bit("data_i_inv",b));
+ emit_rp_fill(str(column) +" 0 UX")
+ # we generate the state first
+- print "wire " + ",".join([ident_name_word_bit("q",w,b) for w in range(words)]) + ";";
++ print("wire " + ",".join([ident_name_word_bit("q",w,b) for w in range(words)]) + ";");
+ for w in range (0,words) :
+ emit_gate_instance(dffe
+ ,[ ident_name_word_bit("reg",w,b)
+@@ -299,7 +299,7 @@ def generate_Nr1w_array ( words, bits, r
+ # AOI22 every pair of words
+
+ # we generate the state first
+- print "wire " + ",".join([ident_name_word_bit_port("qaoi",w,b,p) for w in range(0,words,2)]) + ";";
++ print("wire " + ",".join([ident_name_word_bit_port("qaoi",w,b,p) for w in range(0,words,2)]) + ";");
+
+ for w in range (0,words,2) :
+ queue_gate_instance(gate_dict, aoi22
+@@ -355,7 +355,7 @@ def generate_Nr1w_array ( words, bits, r
+ , w+(15 if (words > 16) else 13)
+ );
+
+- print "\n";
++ print("\n");
+ # add inverters to data in, and data out.
+ # these are on opposite sides of the array
+ # we may potentially pay in delay, but we get
+@@ -379,9 +379,9 @@ def generate_Nr1w_array ( words, bits, r
+ # since we are using rp_fill commands
+ # but it makes things more readable
+
+- for x in sorted(gate_dict.items(), key=lambda x: x[1]) :
++ for x in sorted(list(gate_dict.items()), key=lambda x: x[1]) :
+ emit_rp_fill( str(column) +" "+str(x[1])+" UX")
+- print x[0], "// ",x[1];
++ print(x[0], "// ",x[1]);
+ column=column+1
+
+
+@@ -391,5 +391,5 @@ def generate_Nr1w_array ( words, bits, r
+ if len(sys.argv) == 4 :
+ generate_Nr1w_array (int(sys.argv[1]), int(sys.argv[2]), int(sys.argv[3]));
+ else :
+- print "Usage: " + sys.argv[0] + " words bits readports";
++ print("Usage: " + sys.argv[0] + " words bits readports");
+
+diff --color -rupN a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_40/bsg_misc/bsg_dff_gen.py b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_40/bsg_misc/bsg_dff_gen.py
+--- a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_40/bsg_misc/bsg_dff_gen.py 2021-09-26 19:02:04.000000000 +0200
++++ b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_40/bsg_misc/bsg_dff_gen.py 2024-01-11 13:11:03.925034590 +0100
+@@ -6,27 +6,27 @@
+ import sys;
+
+ def emit_module_header (name, input_args, output_args) :
+- print "module " + name + "(",
++ print("module " + name + "(", end=' ')
+ my_list = []
+ for x in input_args :
+ my_list.append("input "+x+"\n");
+ for x in output_args :
+ my_list.append("output "+x+"\n");
+- print (" "*(len(name)+8)+",").join(my_list);
++ print((" "*(len(name)+8)+",").join(my_list));
+
+- print ");";
++ print(");");
+
+ def emit_module_footer( ) :
+- print "endmodule";
++ print("endmodule");
+
+ def emit_wire_definition (name) :
+- print "wire " + name + "; "
++ print("wire " + name + "; ")
+
+ def emit_wire_definition_nocr (name) :
+- print "wire " + name + "; ",
++ print("wire " + name + "; ", end=' ')
+
+ def emit_gate_instance (gate_str, arg_list ) :
+- print gate_instance(gate_str,arg_list);
++ print(gate_instance(gate_str,arg_list));
+
+ def queue_gate_instance (out_dict, gate_str, arg_list, order) :
+ the_string = gate_instance(gate_str,arg_list)
+@@ -57,16 +57,16 @@ def ident_name_bit (name,bit) :
+
+
+ def emit_rp_group_begin (name) :
+- print "// synopsys rp_group (" + name + ")"
++ print("// synopsys rp_group (" + name + ")")
+
+ def emit_rp_group_end (name) :
+- print "// synopsys rp_endgroup (" + name +")"
++ print("// synopsys rp_endgroup (" + name +")")
+
+ def rp_fill_string (params) :
+ return "// synopsys rp_fill (" + params + ")"
+
+ def emit_rp_fill (params):
+- print "// synopsys rp_fill (" + params +")"
++ print("// synopsys rp_fill (" + params +")")
+
+
+
+@@ -161,6 +161,6 @@ else :
+ for b in range (1,int(sys.argv[2])+1) :
+ generate_dff_nreset_en( sys.argv[1], b, sys.argv[3] );
+ else:
+- print "Usage: " + sys.argv[0] + " type " + " bits " + " strength";
+- print "Usage: " + sys.argv[0] + " type " + " bits " + " strength " + "SWEEP (to go from 1..bits)";
++ print("Usage: " + sys.argv[0] + " type " + " bits " + " strength");
++ print("Usage: " + sys.argv[0] + " type " + " bits " + " strength " + "SWEEP (to go from 1..bits)");
+
+diff --color -rupN a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_40/bsg_misc/bsg_gate_stack_gen.py b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_40/bsg_misc/bsg_gate_stack_gen.py
+--- a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_40/bsg_misc/bsg_gate_stack_gen.py 2021-09-26 19:02:04.000000000 +0200
++++ b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_40/bsg_misc/bsg_gate_stack_gen.py 2024-01-11 13:11:02.568385894 +0100
+@@ -16,27 +16,27 @@ import sys;
+ fab = "tsmc_40"
+
+ def emit_module_header (name, input_args, output_args) :
+- print "module " + name + " (",
++ print("module " + name + " (", end=' ')
+ my_list = []
+ for x in input_args :
+ my_list.append("input "+x+"\n");
+ for x in output_args :
+ my_list.append("output "+x+"\n");
+- print (" "*(len(name)+8)+",").join(my_list);
++ print((" "*(len(name)+8)+",").join(my_list));
+
+- print ");";
++ print(");");
+
+ def emit_module_footer( ) :
+- print "endmodule";
++ print("endmodule");
+
+ def emit_wire_definition (name) :
+- print "wire " + name + "; "
++ print("wire " + name + "; ")
+
+ def emit_wire_definition_nocr (name) :
+- print "wire " + name + "; ",
++ print("wire " + name + "; ", end=' ')
+
+ def emit_gate_instance (gate_str, arg_list ) :
+- print gate_instance(gate_str,arg_list);
++ print(gate_instance(gate_str,arg_list));
+
+ def queue_gate_instance (out_dict, gate_str, arg_list, order) :
+ the_string = gate_instance(gate_str,arg_list)
+@@ -87,13 +87,13 @@ def ident_name_bit (name,bit) :
+
+
+ def emit_rp_group_begin (name) :
+- print "// synopsys rp_group (" + name + ")"
++ print("// synopsys rp_group (" + name + ")")
+
+ def emit_rp_group_end (name) :
+- print "// synopsys rp_endgroup (" + name +")"
++ print("// synopsys rp_endgroup (" + name +")")
+
+ def emit_rp_fill (params):
+- print "// synopsys rp_fill (" + params +")"
++ print("// synopsys rp_fill (" + params +")")
+
+ def generate_gate_stack ( gatename, rows,signature, vert) :
+ if (vert) :
+@@ -135,38 +135,38 @@ def generate_gate_stack ( gatename, rows
+ if len(sys.argv) == 4 :
+ if sys.argv[2].isdigit() :
+ for x in range(1,int(sys.argv[2])+1) :
+- print "\n// ****************************************************** \n"
++ print("\n// ****************************************************** \n")
+ generate_gate_stack(sys.argv[1],x,sys.argv[3],1);
+ elif (sys.argv[2][0]=="-") :
+ for x in range(1,-(int(sys.argv[2]))+1) :
+- print "\n// ****************************************************** \n"
++ print("\n// ****************************************************** \n")
+ generate_gate_stack(sys.argv[1],x,sys.argv[3],0);
+
+ elif len(sys.argv) == 5 :
+ signature=sys.argv[3]
+ num_inputs = signature.count('#') - 2;
+ input_params = ["input [width_p-1:0] i"+str(x) for x in range(0,num_inputs)]
+- print '''
++ print('''
+
+ module bsg_'''+sys.argv[4],'''#(width_p="inv",harden_p=1)
+ ('''+"\n ,".join(input_params)+'''
+ , output [width_p-1:0] o
+ );
+-'''
++''')
+
+ for x in range(1,int(sys.argv[2])+1) :
+- print ''' if (harden_p && (width_p=='''+str(x)+'''))
++ print(''' if (harden_p && (width_p=='''+str(x)+'''))
+ begin:macro
+ bsg_rp_tsmc_40_'''+sys.argv[1]+'''_b'''+str(x)+''' gate(.*);
+ end
+- else ''';
+- print '''
++ else ''');
++ print('''
+ begin: notmacro
+ initial assert(0!=1) else $error("%m unsupported gatestack size",width_p);
+ end
+
+ endmodule
+-'''
++''')
+ else :
+- print "Usage: bsg_gate_stack_gen.py AND2X1 32 > bsg_and_stacks.v # generate each individual netlist of each size"
+- print " bsg_gate_stack_gen.py AND2X1 32 and > bsg_and.v # generate the verilog function that thunks to the right netlist"
++ print("Usage: bsg_gate_stack_gen.py AND2X1 32 > bsg_and_stacks.v # generate each individual netlist of each size")
++ print(" bsg_gate_stack_gen.py AND2X1 32 and > bsg_and.v # generate the verilog function that thunks to the right netlist")
+diff --color -rupN a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_40/bsg_misc/bsg_mul/bsg_and_csa_gen.py b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_40/bsg_misc/bsg_mul/bsg_and_csa_gen.py
+--- a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_40/bsg_misc/bsg_mul/bsg_and_csa_gen.py 2021-09-26 19:02:04.000000000 +0200
++++ b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_40/bsg_misc/bsg_mul/bsg_and_csa_gen.py 2024-01-11 13:11:03.801702891 +0100
+@@ -14,27 +14,27 @@
+ import sys;
+
+ def emit_module_header (name, input_args, output_args) :
+- print "module " + name + " (",
++ print("module " + name + " (", end=' ')
+ my_list = []
+ for x in input_args :
+ my_list.append("input "+x+"\n");
+ for x in output_args :
+ my_list.append("output "+x+"\n");
+- print (" "*(len(name)+8)+",").join(my_list);
++ print((" "*(len(name)+8)+",").join(my_list));
+
+- print ");";
++ print(");");
+
+ def emit_module_footer( ) :
+- print "endmodule";
++ print("endmodule");
+
+ def emit_wire_definition (name) :
+- print "wire " + name + "; "
++ print("wire " + name + "; ")
+
+ def emit_wire_definition_nocr (name) :
+- print "wire " + name + "; ",
++ print("wire " + name + "; ", end=' ')
+
+ def emit_gate_instance (gate_str, arg_list ) :
+- print gate_instance(gate_str,arg_list);
++ print(gate_instance(gate_str,arg_list));
+
+ def queue_gate_instance (out_dict, gate_str, arg_list, order) :
+ the_string = gate_instance(gate_str,arg_list)
+@@ -86,13 +86,13 @@ def ident_name_bit (name,bit) :
+
+
+ def emit_rp_group_begin (name) :
+- print "// synopsys rp_group (" + name + ")"
++ print("// synopsys rp_group (" + name + ")")
+
+ def emit_rp_group_end (name) :
+- print "// synopsys rp_endgroup (" + name +")"
++ print("// synopsys rp_endgroup (" + name +")")
+
+ def emit_rp_fill (params):
+- print "// synopsys rp_fill (" + params +")"
++ print("// synopsys rp_fill (" + params +")")
+
+
+
+@@ -129,7 +129,7 @@ def generate_and_csa_block ( rows ) :
+ for pos in range (0,rows) :
+
+ emit_rp_fill("0 " + str(pos*2) + " UX");
+- print "wire " + ident_name_bit("and_int",pos) + ";";
++ print("wire " + ident_name_bit("and_int",pos) + ";");
+
+ emit_gate_instance(addf
+ , [ ident_name_word_bit("csa", pos, 0)
+@@ -155,5 +155,5 @@ def generate_and_csa_block ( rows ) :
+ if len(sys.argv) == 2 :
+ generate_and_csa_block(int(sys.argv[1]));
+ else :
+- print "Usage: " + sys.argv[0] + " rows";
++ print("Usage: " + sys.argv[0] + " rows");
+
+diff --color -rupN a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_40/bsg_misc/bsg_mul/bsg_booth_4_block_gen.py b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_40/bsg_misc/bsg_mul/bsg_booth_4_block_gen.py
+--- a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_40/bsg_misc/bsg_mul/bsg_booth_4_block_gen.py 2021-09-26 19:02:04.000000000 +0200
++++ b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_40/bsg_misc/bsg_mul/bsg_booth_4_block_gen.py 2024-01-11 13:11:03.268376621 +0100
+@@ -14,27 +14,27 @@
+ import sys;
+
+ def emit_module_header (name, input_args, output_args) :
+- print "module " + name + " (",
++ print("module " + name + " (", end=' ')
+ my_list = []
+ for x in input_args :
+ my_list.append("input "+x+"\n");
+ for x in output_args :
+ my_list.append("output "+x+"\n");
+- print (" "*(len(name)+8)+",").join(my_list);
++ print((" "*(len(name)+8)+",").join(my_list));
+
+- print ");";
++ print(");");
+
+ def emit_module_footer( ) :
+- print "endmodule";
++ print("endmodule");
+
+ def emit_wire_definition (name) :
+- print "wire " + name + "; "
++ print("wire " + name + "; ")
+
+ def emit_wire_definition_nocr (name) :
+- print "wire " + name + "; ",
++ print("wire " + name + "; ", end=' ')
+
+ def emit_gate_instance (gate_str, arg_list ) :
+- print gate_instance(gate_str,arg_list);
++ print(gate_instance(gate_str,arg_list));
+
+ def queue_gate_instance (out_dict, gate_str, arg_list, order) :
+ the_string = gate_instance(gate_str,arg_list)
+@@ -86,13 +86,13 @@ def ident_name_bit (name,bit) :
+
+
+ def emit_rp_group_begin (name) :
+- print "// synopsys rp_group (" + name + ")"
++ print("// synopsys rp_group (" + name + ")")
+
+ def emit_rp_group_end (name) :
+- print "// synopsys rp_endgroup (" + name +")"
++ print("// synopsys rp_endgroup (" + name +")")
+
+ def emit_rp_fill (params):
+- print "// synopsys rp_fill (" + params +")"
++ print("// synopsys rp_fill (" + params +")")
+
+
+ # NOTE: for symmetric pins, assume that earlier ones are always faster.
+@@ -130,11 +130,11 @@ def generate_booth_4_block ( rows ) :
+ emit_rp_group_begin("b4b")
+
+ for pos in range (0,rows) :
+- print ""
+- print "wire " + ",".join([ident_name_word_bit("pp",pos,b) for b in range(0,4)])+";"
+- print "wire " + ",".join([ident_name_word_bit("aoi",pos,b) for b in range(0,4)])+";"
+- print "wire " + ",".join([ident_name_word_bit("cl",pos,b) for b in range(0,1)])+";"
+- print "wire " + ",".join([ident_name_word_bit("s0",pos,b) for b in range(0,1)])+";"
++ print("")
++ print("wire " + ",".join([ident_name_word_bit("pp",pos,b) for b in range(0,4)])+";")
++ print("wire " + ",".join([ident_name_word_bit("aoi",pos,b) for b in range(0,4)])+";")
++ print("wire " + ",".join([ident_name_word_bit("cl",pos,b) for b in range(0,1)])+";")
++ print("wire " + ",".join([ident_name_word_bit("s0",pos,b) for b in range(0,1)])+";")
+
+ emit_rp_fill("0 " + str(pos*2) + " RX");
+
+@@ -242,5 +242,5 @@ def generate_booth_4_block ( rows ) :
+ if len(sys.argv) == 2 :
+ generate_booth_4_block (int(sys.argv[1]));
+ else :
+- print "Usage: " + sys.argv[0] + " rows";
++ print("Usage: " + sys.argv[0] + " rows");
+
+diff --color -rupN a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_40/bsg_misc/bsg_mul/bsg_booth_4_block_gen_cornice.py b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_40/bsg_misc/bsg_mul/bsg_booth_4_block_gen_cornice.py
+--- a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_40/bsg_misc/bsg_mul/bsg_booth_4_block_gen_cornice.py 2021-09-26 19:02:04.000000000 +0200
++++ b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_40/bsg_misc/bsg_mul/bsg_booth_4_block_gen_cornice.py 2024-01-11 13:11:03.135045055 +0100
+@@ -14,27 +14,27 @@
+ import sys;
+
+ def emit_module_header (name, input_args, output_args) :
+- print "module " + name + " (",
++ print("module " + name + " (", end=' ')
+ my_list = []
+ for x in input_args :
+ my_list.append("input "+x+"\n");
+ for x in output_args :
+ my_list.append("output "+x+"\n");
+- print (" "*(len(name)+8)+",").join(my_list);
++ print((" "*(len(name)+8)+",").join(my_list));
+
+- print ");";
++ print(");");
+
+ def emit_module_footer( ) :
+- print "endmodule";
++ print("endmodule");
+
+ def emit_wire_definition (name) :
+- print "wire " + name + "; "
++ print("wire " + name + "; ")
+
+ def emit_wire_definition_nocr (name) :
+- print "wire " + name + "; ",
++ print("wire " + name + "; ", end=' ')
+
+ def emit_gate_instance (gate_str, arg_list ) :
+- print gate_instance(gate_str,arg_list);
++ print(gate_instance(gate_str,arg_list));
+
+ def queue_gate_instance (out_dict, gate_str, arg_list, order) :
+ the_string = gate_instance(gate_str,arg_list)
+@@ -86,13 +86,13 @@ def ident_name_bit (name,bit) :
+
+
+ def emit_rp_group_begin (name) :
+- print "// synopsys rp_group (" + name + ")"
++ print("// synopsys rp_group (" + name + ")")
+
+ def emit_rp_group_end (name) :
+- print "// synopsys rp_endgroup (" + name +")"
++ print("// synopsys rp_endgroup (" + name +")")
+
+ def emit_rp_fill (params):
+- print "// synopsys rp_fill (" + params +")"
++ print("// synopsys rp_fill (" + params +")")
+
+
+
+@@ -138,11 +138,11 @@ def generate_booth_4_block ( rows ) :
+ for pos in range (0,rows) :
+ adj_pos = start_row + pos;
+
+- print ""
+- print "wire " + ",".join([ident_name_word_bit("pp",pos,b) for b in range(0,4)])+";"
+- print "wire " + ",".join([ident_name_word_bit("aoi",pos,b) for b in range(0,4)])+";"
+- print "wire " + ",".join([ident_name_word_bit("cl",pos,b) for b in range(0,1)])+";"
+- print "wire " + ",".join([ident_name_word_bit("s0",pos,b) for b in range(0,1)])+";"
++ print("")
++ print("wire " + ",".join([ident_name_word_bit("pp",pos,b) for b in range(0,4)])+";")
++ print("wire " + ",".join([ident_name_word_bit("aoi",pos,b) for b in range(0,4)])+";")
++ print("wire " + ",".join([ident_name_word_bit("cl",pos,b) for b in range(0,1)])+";")
++ print("wire " + ",".join([ident_name_word_bit("s0",pos,b) for b in range(0,1)])+";")
+
+
+ # irritatingly, we need to place at least one cell at X position 0 for it to shift everything over.
+@@ -242,13 +242,13 @@ def generate_booth_4_block ( rows ) :
+
+
+ if (adj_pos == 0) :
+- print "assign s_o[0] = SDN_i[0]; /* SDN_i[0][0] */ assign c_o[0] = 1'b0;"
++ print("assign s_o[0] = SDN_i[0]; /* SDN_i[0][0] */ assign c_o[0] = 1'b0;")
+
+ if (adj_pos == 1) :
+- print "assign s_o[1] = 1'b0; assign c_o[1] = 1'b0;"
++ print("assign s_o[1] = 1'b0; assign c_o[1] = 1'b0;")
+
+ if (adj_pos == 3) :
+- print "assign s_o[" + str(pos) + "] = pp_w" + str(pos) + "_b0; assign c_o[" + str(pos) + "] = 1'b0;"
++ print("assign s_o[" + str(pos) + "] = pp_w" + str(pos) + "_b0; assign c_o[" + str(pos) + "] = 1'b0;")
+
+
+ emit_rp_group_end("b4b")
+@@ -257,5 +257,5 @@ def generate_booth_4_block ( rows ) :
+ if len(sys.argv) == 2 :
+ generate_booth_4_block (int(sys.argv[1]));
+ else :
+- print "Usage: " + sys.argv[0]
++ print("Usage: " + sys.argv[0])
+
+diff --color -rupN a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_40/bsg_misc/bsg_mul/bsg_booth_4_block_gen_end_cornice.py b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_40/bsg_misc/bsg_mul/bsg_booth_4_block_gen_end_cornice.py
+--- a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_40/bsg_misc/bsg_mul/bsg_booth_4_block_gen_end_cornice.py 2021-09-26 19:02:04.000000000 +0200
++++ b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_40/bsg_misc/bsg_mul/bsg_booth_4_block_gen_end_cornice.py 2024-01-11 13:11:03.551706202 +0100
+@@ -14,27 +14,27 @@
+ import sys;
+
+ def emit_module_header (name, input_args, output_args) :
+- print "module " + name + " (",
++ print("module " + name + " (", end=' ')
+ my_list = []
+ for x in input_args :
+ my_list.append("input "+x+"\n");
+ for x in output_args :
+ my_list.append("output "+x+"\n");
+- print (" "*(len(name)+8)+",").join(my_list);
++ print((" "*(len(name)+8)+",").join(my_list));
+
+- print ");";
++ print(");");
+
+ def emit_module_footer( ) :
+- print "endmodule";
++ print("endmodule");
+
+ def emit_wire_definition (name) :
+- print "wire " + name + "; "
++ print("wire " + name + "; ")
+
+ def emit_wire_definition_nocr (name) :
+- print "wire " + name + "; ",
++ print("wire " + name + "; ", end=' ')
+
+ def emit_gate_instance (gate_str, arg_list ) :
+- print gate_instance(gate_str,arg_list);
++ print(gate_instance(gate_str,arg_list));
+
+ def queue_gate_instance (out_dict, gate_str, arg_list, order) :
+ the_string = gate_instance(gate_str,arg_list)
+@@ -86,13 +86,13 @@ def ident_name_bit (name,bit) :
+
+
+ def emit_rp_group_begin (name) :
+- print "// synopsys rp_group (" + name + ")"
++ print("// synopsys rp_group (" + name + ")")
+
+ def emit_rp_group_end (name) :
+- print "// synopsys rp_endgroup (" + name +")"
++ print("// synopsys rp_endgroup (" + name +")")
+
+ def emit_rp_fill (params):
+- print "// synopsys rp_fill (" + params +")"
++ print("// synopsys rp_fill (" + params +")")
+
+
+
+@@ -138,24 +138,24 @@ def generate_booth_4_block ( rows ) :
+
+ for pos in range (0,rows) :
+
+- print ""
+- print "wire " + ",".join([ident_name_word_bit("pp",pos,b) for b in range(0,4)])+";"
+- print "wire " + ",".join([ident_name_word_bit("aoi",pos,b) for b in range(0,4)])+";"
+- print "wire " + ",".join([ident_name_word_bit("cl",pos,b) for b in range(0,1)])+";"
+- print "wire " + ",".join([ident_name_word_bit("s0",pos,b) for b in range(0,1)])+";"
++ print("")
++ print("wire " + ",".join([ident_name_word_bit("pp",pos,b) for b in range(0,4)])+";")
++ print("wire " + ",".join([ident_name_word_bit("aoi",pos,b) for b in range(0,4)])+";")
++ print("wire " + ",".join([ident_name_word_bit("cl",pos,b) for b in range(0,1)])+";")
++ print("wire " + ",".join([ident_name_word_bit("s0",pos,b) for b in range(0,1)])+";")
+
+
+ emit_rp_fill("0 " + str(pos*2) + " RX");
+
+ if (pos == 0) :
+- print "assign cl_o = 1'b0;"
++ print("assign cl_o = 1'b0;")
+
+ if (pos == 7) :
+- print "assign c_o[" + str(pos) + "] = 1'b0;"
+- print "assign s_o[" + str(pos) + "] = 1'b1;"
++ print("assign c_o[" + str(pos) + "] = 1'b0;")
++ print("assign s_o[" + str(pos) + "] = 1'b1;")
+
+ if (pos == 6) :
+- print "assign c_o[" + str(pos) + "] = 1'b0;"
++ print("assign c_o[" + str(pos) + "] = 1'b0;")
+
+ #3
+ if (pos < 7) :
+@@ -267,5 +267,5 @@ def generate_booth_4_block ( rows ) :
+ if len(sys.argv) == 2 :
+ generate_booth_4_block (int(sys.argv[1]));
+ else :
+- print "Usage: " + sys.argv[0]
++ print("Usage: " + sys.argv[0])
+
+diff --color -rupN a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_40/bsg_misc/bsg_mul/bsg_comp42_gen.py b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_40/bsg_misc/bsg_mul/bsg_comp42_gen.py
+--- a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_40/bsg_misc/bsg_mul/bsg_comp42_gen.py 2021-09-26 19:02:04.000000000 +0200
++++ b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_40/bsg_misc/bsg_mul/bsg_comp42_gen.py 2024-01-11 13:11:03.678371190 +0100
+@@ -14,27 +14,27 @@
+ import sys;
+
+ def emit_module_header (name, input_args, output_args) :
+- print "module " + name + " (",
++ print("module " + name + " (", end=' ')
+ my_list = []
+ for x in input_args :
+ my_list.append("input "+x+"\n");
+ for x in output_args :
+ my_list.append("output "+x+"\n");
+- print (" "*(len(name)+8)+",").join(my_list);
++ print((" "*(len(name)+8)+",").join(my_list));
+
+- print ");";
++ print(");");
+
+ def emit_module_footer( ) :
+- print "endmodule";
++ print("endmodule");
+
+ def emit_wire_definition (name) :
+- print "wire " + name + "; "
++ print("wire " + name + "; ")
+
+ def emit_wire_definition_nocr (name) :
+- print "wire " + name + "; ",
++ print("wire " + name + "; ", end=' ')
+
+ def emit_gate_instance (gate_str, arg_list ) :
+- print gate_instance(gate_str,arg_list);
++ print(gate_instance(gate_str,arg_list));
+
+ def queue_gate_instance (out_dict, gate_str, arg_list, order) :
+ the_string = gate_instance(gate_str,arg_list)
+@@ -86,13 +86,13 @@ def ident_name_bit (name,bit) :
+
+
+ def emit_rp_group_begin (name) :
+- print "// synopsys rp_group (" + name + ")"
++ print("// synopsys rp_group (" + name + ")")
+
+ def emit_rp_group_end (name) :
+- print "// synopsys rp_endgroup (" + name +")"
++ print("// synopsys rp_endgroup (" + name +")")
+
+ def emit_rp_fill (params):
+- print "// synopsys rp_fill (" + params +")"
++ print("// synopsys rp_fill (" + params +")")
+
+
+
+@@ -126,9 +126,9 @@ def generate_c42_block ( rows ) :
+ emit_rp_group_begin("c42")
+
+ for pos in range (0,rows) :
+- print ""
+- print "wire " + ident_name_bit("s_int",pos) +";";
+- print "wire " + ident_name_bit("cl_int",pos)+";";
++ print("")
++ print("wire " + ident_name_bit("s_int",pos) +";");
++ print("wire " + ident_name_bit("cl_int",pos)+";");
+
+ emit_rp_fill("0 " + str(pos*2) + " UX");
+
+@@ -157,5 +157,5 @@ def generate_c42_block ( rows ) :
+ if len(sys.argv) == 2 :
+ generate_c42_block (int(sys.argv[1]));
+ else :
+- print "Usage: " + sys.argv[0] + " rows";
++ print("Usage: " + sys.argv[0] + " rows");
+
+diff --color -rupN a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_40/bsg_misc/bsg_mux_gen.py b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_40/bsg_misc/bsg_mux_gen.py
+--- a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_40/bsg_misc/bsg_mux_gen.py 2021-09-26 19:02:04.000000000 +0200
++++ b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_40/bsg_misc/bsg_mux_gen.py 2024-01-11 13:11:02.998380198 +0100
+@@ -23,27 +23,27 @@
+ import sys;
+
+ def emit_module_header (name, input_args, output_args) :
+- print "module " + name + "(",
++ print("module " + name + "(", end=' ')
+ my_list = []
+ for x in input_args :
+ my_list.append("input "+x+"\n");
+ for x in output_args :
+ my_list.append("output "+x+"\n");
+- print (" "*(len(name)+8)+",").join(my_list);
++ print((" "*(len(name)+8)+",").join(my_list));
+
+- print ");";
++ print(");");
+
+ def emit_module_footer( ) :
+- print "endmodule";
++ print("endmodule");
+
+ def emit_wire_definition (name) :
+- print "wire " + name + "; "
++ print("wire " + name + "; ")
+
+ def emit_wire_definition_nocr (name) :
+- print "wire " + name + "; ",
++ print("wire " + name + "; ", end=' ')
+
+ def emit_gate_instance (gate_str, arg_list ) :
+- print gate_instance(gate_str,arg_list);
++ print(gate_instance(gate_str,arg_list));
+
+ def queue_gate_instance (out_dict, gate_str, arg_list, order) :
+ the_string = gate_instance(gate_str,arg_list)
+@@ -74,13 +74,13 @@ def ident_name_bit (name,bit) :
+
+
+ def emit_rp_group_begin (name) :
+- print "// synopsys rp_group (" + name + ")"
++ print("// synopsys rp_group (" + name + ")")
+
+ def emit_rp_group_end (name) :
+- print "// synopsys rp_endgroup (" + name +")"
++ print("// synopsys rp_endgroup (" + name +")")
+
+ def emit_rp_fill (params):
+- print "// synopsys rp_fill (" + params +")"
++ print("// synopsys rp_fill (" + params +")")
+
+
+
+@@ -130,7 +130,7 @@ def generate_mux_shift ( inputs, bits):
+ emit_rp_fill(str(column) + " 0 UX");
+ column=column+1;
+
+- print "wire " + ",".join([ident_name_word_bit("a2",g,b) for b in range(0,bits)]) + ";";
++ print("wire " + ",".join([ident_name_word_bit("a2",g,b) for b in range(0,bits)]) + ";");
+
+ for b in range (0,bits) :
+
+@@ -148,7 +148,7 @@ def generate_mux_shift ( inputs, bits):
+ column=column+1;
+
+ for g in range(left,left+right) :
+- print "wire " + ",".join([ident_name_word_bit("a2",g,b) for b in range(0,bits)]) + ";";
++ print("wire " + ",".join([ident_name_word_bit("a2",g,b) for b in range(0,bits)]) + ";");
+
+ for b in range(0,bits) :
+ emit_gate_instance(joiner
+@@ -183,5 +183,5 @@ def generate_mux_shift ( inputs, bits):
+ if len(sys.argv) == 3 :
+ generate_mux_shift (int(sys.argv[1]), int(sys.argv[2]));
+ else :
+- print "Usage: " + sys.argv[0] + " inputs bits";
++ print("Usage: " + sys.argv[0] + " inputs bits");
+
+diff --color -rupN a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_40/bsg_misc/bsg_reduce_gen.py b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_40/bsg_misc/bsg_reduce_gen.py
+--- a/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_40/bsg_misc/bsg_reduce_gen.py 2021-09-26 19:02:04.000000000 +0200
++++ b/pythondata-cpu-blackparrot-2023.12/pythondata_cpu_blackparrot/system_verilog/black-parrot/external/basejump_stl/hard/tsmc_40/bsg_misc/bsg_reduce_gen.py 2024-01-11 13:11:02.191724216 +0100
+@@ -2,7 +2,7 @@
+
+ import sys;
+
+-print '''
++print('''
+
+ module bsg_rp_tsmc_40_reduce_and_b4 (input [3:0] i, output o);
+ wire [1:0] lo;
+@@ -91,4 +91,4 @@ ND4D2BWP bCDEF (.A1(i[12]),.A2(i[13]),
+ endmodule
+
+
+-''';
++''');
diff --git a/testing/py3-litex-hub-modules/APKBUILD b/testing/py3-litex-hub-modules/APKBUILD
new file mode 100644
index 00000000000..337820c242d
--- /dev/null
+++ b/testing/py3-litex-hub-modules/APKBUILD
@@ -0,0 +1,235 @@
+# Contributor: Marian Buschsieweke <marian.buschsieweke@posteo.net>
+# Maintainer: Marian Buschsieweke <marian.buschsieweke@posteo.net>
+pkgname=py3-litex-hub-modules
+_pkgname=litex
+pkgver=2023.12
+pkgrel=4
+pkgdesc="Python modules containing verilog and/or data files for use with LiteX"
+url="https://github.com/litex-hub"
+license="BSD-2-Clause"
+arch="all"
+# match this commit against https://github.com/litex-hub/pythondata-software-picolibc/tree/master/pythondata_software_picolibc
+_picolibc_commit="f165dc22f1f67e3e8bdc8edf750ff7dc596de2ff"
+_fpnew_commit="855bb82b6e85772fc290fa8b9c14fdd8f1b16be7"
+_riscv_dbg_commit="6d38d957b036231db668666255e938c91b7ce424"
+_trace_debugger_commit="0aafa398e208ad79826407e3805642987287cfae"
+_common_cells_commit="790f2385c01c83022474eede55809666209216e3"
+_fpu_div_sqrt_mvp_commit="83a601f97934ed5e06d737b9c80d98b08867c5fa"
+_modules="
+ pythondata-cpu-blackparrot:2023.12:BSD-3-Clause
+ pythondata-cpu-cv32e40p:2023.12:Apache-2.0
+ pythondata-cpu-cv32e41p:2023.12:Apache-2.0
+ pythondata-cpu-cva5:2023.12:Apache-2.0
+ pythondata-cpu-cva6:2023.12:Apache-2.0
+ pythondata-cpu-ibex:2023.12:Apache-2.0
+ pythondata-cpu-lm32:2020.04:EPL-1.0
+ pythondata-cpu-marocchino:2023.12:MPL-2.0
+ pythondata-cpu-microwatt:2023.12:CC-BY-SA-4.0
+ pythondata-cpu-minerva:2023.12:BSD-2-Clause
+ pythondata-cpu-mor1kx:2020.04:MPL-2.0
+ pythondata-cpu-naxriscv:2023.12:MIT
+ pythondata-cpu-picorv32:2020.04:ISC
+ pythondata-cpu-rocket:2020.04:Apache-2.0
+ pythondata-cpu-serv:2020.04:ISC
+ pythondata-cpu-vexriscv:2020.04:MIT
+ pythondata-cpu-vexriscv_smp:2023.12:MIT
+ pythondata-misc-tapcfg:2020.04:LGPL-2.1-only
+ pythondata-software-compiler_rt:2020.04:Apache-2.0
+ pythondata-software-picolibc:2023.12:BSD-3-Clause
+ valentyusb:2023.12:BSD-3-Clause
+ "
+depends="
+ python3
+ "
+makedepends="
+ py3-setuptools
+ py3-gpep517
+ py3-wheel
+ py3-installer
+ "
+subpackages="$pkgname-pyc"
+source="
+ picolibc-$_picolibc_commit.tar.gz::https://github.com/picolibc/picolibc/archive/$_picolibc_commit.tar.gz
+ fpnew-$_fpnew_commit.tar.gz::https://github.com/antmicro/fpnew/archive/$_fpnew_commit.tar.gz
+ riscv-dbg-$_riscv_dbg_commit.tar.gz::https://github.com/antmicro/riscv-dbg/archive/$_riscv_dbg_commit.tar.gz
+ trace_debugger-$_trace_debugger_commit.tar.gz::https://github.com/antmicro/trace_debugger/archive/$_trace_debugger_commit.tar.gz
+ common_cells-$_common_cells_commit.tar.gz::https://github.com/pulp-platform/common_cells/archive/$_common_cells_commit.tar.gz
+ fpu_div_sqrt_mvp-$_fpu_div_sqrt_mvp_commit.tar.gz::https://github.com/pulp-platform/fpu_div_sqrt_mvp/archive/$_fpu_div_sqrt_mvp_commit.tar.gz
+
+ 0001-fix-pythondata_software_compiler_rt-python3.patch
+ 0002-fix-pythondata-cpu-blackparrot-python3.patch
+ "
+builddir="$srcdir"
+# most LiteX-Hub repos contain no unit tests. The basically wrap upstream
+# repos in a fashion suitable for use with LiteX, so they can rely on unit
+# tests of the upstream repos. Those LiteX-Hub repos that do have tests
+# depend on LiteX to be installed, but LiteX depends on these for its unit
+# tests (circular dependency). The unit tests in LiteX are more important, so
+# we disable tests here.
+options="!check"
+
+# The data contains ELF files intended for the softcore CPUs, which cannot
+# be stripped with the native toolchain due to mismatching target architecture.
+options="$options !strip"
+
+_repo_name() {
+ echo ${1%%:*}
+}
+
+_pkgver() {
+ a=${1%:*}
+ echo ${a#*:}
+}
+
+_version_by_name() {
+ for _name_ver_license in $_modules; do
+ if [ "$1" = "$(_repo_name "$_name_ver_license")" ]; then
+ _pkgver "$_name_ver_license"
+ fi
+ done
+}
+
+_supply_git_submodule() {
+ rmdir "$1" || rm "$1"
+ ln -s "$2" "$1"
+}
+
+_license() {
+ echo $1 | cut -d : -f 3
+}
+
+for _name_ver_license in $_modules; do
+ _name="$(_repo_name "$_name_ver_license")"
+ _ver="$(_pkgver "$_name_ver_license")"
+ source="$source $_name-$_ver.tar.gz::https://github.com/litex-hub/$_name/archive/refs/tags/$_ver.tar.gz"
+ subpackages="$subpackages py3-litex-hub-$_name:_subpkg"
+done
+
+prepare() {
+ local _name
+ local _ver
+ default_prepare
+
+ # remove drivers for OSX, Solaris and Windows as well as tools for mingw.
+ # We don't need them and they cause lots of warnings
+ rm -rf "$srcdir"/pythondata-misc-tapcfg-2020.04/pythondata_misc_tapcfg/data/drivers
+ rm -rf "$srcdir"/pythondata-misc-tapcfg-2020.04/pythondata_misc_tapcfg/data/scons-tools
+
+ # setuptools.find_packages() doesn't work here and many instance of
+ # Warning: Package '<data_pkg_name>' is absent from the packages configuration.
+ # are triggered. Using setuptools.find_namespace_packages() instead does
+ # the trick.
+ find "$srcdir" -maxdepth 2 -name setup.py -exec \
+ sed \
+ -e 's/packages=setuptools\.find_packages/packages=setuptools\.find_namespace_packages/g' \
+ -i {} \;
+
+ # manually supply pythondata-software-picolibc git submodule from downloaded source
+ _name=pythondata-software-picolibc
+ _ver="$(_version_by_name "$_name")"
+ _supply_git_submodule \
+ "$srcdir/$_name-$_ver/pythondata_software_picolibc/data" \
+ "$srcdir/picolibc-$_picolibc_commit"
+
+ # manually supply pythondata-cpu-cv32e40p git submodule from downloaded source
+ _name=pythondata-cpu-cv32e40p
+ _ver="$(_version_by_name "$_name")"
+ _supply_git_submodule \
+ "$srcdir/$_name-$_ver/pythondata_cpu_cv32e40p/system_verilog/rtl/fpnew" \
+ "$srcdir/fpnew-$_fpnew_commit"
+ _supply_git_submodule \
+ "$srcdir/$_name-$_ver/pythondata_cpu_cv32e40p/system_verilog/rtl/riscv-dbg" \
+ "$srcdir/riscv-dbg-$_riscv_dbg_commit"
+ _supply_git_submodule \
+ "$srcdir/$_name-$_ver/pythondata_cpu_cv32e40p/system_verilog/rtl/trace_debugger" \
+ "$srcdir/trace_debugger-$_trace_debugger_commit"
+
+ # manually supply git submodules for fpnew
+ _supply_git_submodule \
+ "$srcdir/fpnew-$_fpnew_commit/src/common_cells" \
+ "$srcdir/common_cells-$_common_cells_commit"
+ _supply_git_submodule \
+ "$srcdir/fpnew-$_fpnew_commit/src/fpu_div_sqrt_mvp" \
+ "$srcdir/fpu_div_sqrt_mvp-$_fpu_div_sqrt_mvp_commit"
+}
+
+build() {
+ local _name
+ local _version
+ for _name_ver_license in $_modules; do
+ _name="$(_repo_name "$_name_ver_license")"
+ _version="$(_pkgver "$_name_ver_license")"
+ echo "--> Building LiteX Hub module $_name"
+
+ cd "$srcdir/$_name-$_version"
+ gpep517 build-wheel \
+ --wheel-dir "$srcdir/.dist" \
+ --output-fd 3 3>&1 >&2
+ done
+}
+
+package() {
+ # This package will be empty after all the subpackage split functions are
+ # executed. We use it as a meta-package to pull in all the subpackage for
+ # anyone interested in a full LiteX installation.
+ for _name_ver_license in $_modules; do
+ _name="$(_repo_name "$_name_ver_license")"
+ depends="$depends py3-litex-hub-$_name=$pkgver-r$pkgrel"
+ done
+
+ local wheel
+ mkdir -p "$pkgdir"
+
+ for wheel in "$srcdir/.dist"/*.whl; do
+ python3 -m installer -d "$pkgdir" \
+ "$wheel"
+ done
+}
+
+_subpkg() {
+ local _name
+ local _pyname
+ _name="${subpkgname#py3-litex-hub-}"
+ _pyname="${_name//-/_}"
+ amove usr/lib/python3*/site-packages/"$_pyname"
+ amove usr/lib/python3*/site-packages/"$_pyname"-*.dist-info
+
+ for _name_ver_license in $_modules; do
+ if [ "$_name" = "$(_repo_name "$_name_ver_license")" ]; then
+ license="$(_license "$_name_ver_license")"
+ pkgdesc="Python module containing verilog/data files \"$_name\" for use with LiteX"
+ fi
+ done
+}
+
+sha512sums="
+795a9983d1bc0f851d8f1116e0c580a893aefa82d2034796d14868a1ec14f2ec6d2a4f5bf649b073b8e59f903bd65642766580c52573c7064ba3fb6b972e6e07 picolibc-f165dc22f1f67e3e8bdc8edf750ff7dc596de2ff.tar.gz
+66b088bda0a629af97ad109ba06a7d0f9da7f2fb515c6de9752862c9ff77db9c23e520c5bffbb98c3ecc6fb2f800ea266f8b8359d3ad3c3ea2c970490877d2e1 fpnew-855bb82b6e85772fc290fa8b9c14fdd8f1b16be7.tar.gz
+534a1c2358c85ed7464971b6cd2f06d949ec1db918ed531a75e0b5fe6da9a1b86f9cb675f1fb400cec9c5d607ef40bc0320a6e38b71650f1d0f4111d1c41dd02 riscv-dbg-6d38d957b036231db668666255e938c91b7ce424.tar.gz
+3979457f51be8d1b079feaa07e04b02b3db425e1e02a52ae46c1fd4d304c2b513cf49d180c6018fe01e85908523712ce069de2893f3d180019264de42f6c619d trace_debugger-0aafa398e208ad79826407e3805642987287cfae.tar.gz
+926856d4ba701a14c29bf4fe7d9cec774b95fe8778bb0029e1aa361e144a99f328cf4f0d5806a7dee21a2e152a662b9aa7e9bb45b84c816280e0b6ac943979fc common_cells-790f2385c01c83022474eede55809666209216e3.tar.gz
+d7bf78ddbb00239a37e6410994bfc75c07a295f44aa0ecf968949448433a05282c7279f5d46b77a12faa77bba2cac92251cb56f972a95b22443c6045feba49db fpu_div_sqrt_mvp-83a601f97934ed5e06d737b9c80d98b08867c5fa.tar.gz
+3e1f7e96fc144b1f819ffad5262d669e3abf214c89d547344f66b325a6c60b523f03b19a68ea2166fe98733cb310255a36ef7c843b30a3227517a46ac37d7c33 0001-fix-pythondata_software_compiler_rt-python3.patch
+1df7abd5c382d8b42292c1cb6ebb09213a2fc82e408ccdcff0207d32dc99257d553ffac95b918b028a79c08a7fa7fc7bfbc396f7aa9a0b2b770abc3a93f19ed5 0002-fix-pythondata-cpu-blackparrot-python3.patch
+19e48ff191e6755eca198486b516195128b26317146fbd2e854c0f513e49341c014a8d06284a2fda31e04e03946afe135059beb7d3fa358d123e397578336851 pythondata-cpu-blackparrot-2023.12.tar.gz
+a8bc38152811f62511389e77b131cb3aa2c6b9c518bfe40406e682682489d91964099dbc50bcff546d530bafed5c8f74130c70428d4db5d1b80ee7494d8b6863 pythondata-cpu-cv32e40p-2023.12.tar.gz
+7514804727aabb8a68a3dc9950e0893ccdadeed8d49a7f2b315b737ebcac74bee594b2c1eec06256f70db980f08de930ed0bd4c4c04e030dc64e3141e2399125 pythondata-cpu-cv32e41p-2023.12.tar.gz
+b594c60b6ff761f716878eb8652db35e54bee0b2c49424fd06fd0df029a2b3a51f544b4508252b2ac3f7f0e8b10e12f6d270e8d77529f3667d3988305bc94f51 pythondata-cpu-cva5-2023.12.tar.gz
+fdc11249059857edd72a321c274a167e8b70848916c8ba54d271a564eb8af507671cee1dd37aa25534c437cbf09c41c5667c82f9440cc74c3a193dea987fe7ed pythondata-cpu-cva6-2023.12.tar.gz
+90254ba5506663d37d18fb099cbd9de91703be7db4972346c39bd828ede109b745904d748a47717a022a2d5a86b71400b0741d9acd7d30dc569736b3976833c7 pythondata-cpu-ibex-2023.12.tar.gz
+e37da7c510485160f9686867a301ea182145ce1d6c3f53c4b69fa47ccf040c8bf6696012672d1237a469280010f1f11d73eb5dbe1d6a0adf6318d6c98fc93e69 pythondata-cpu-lm32-2020.04.tar.gz
+61b4576f0de33c2a86ff7ade4e10d7c2e2b65771148468710448206d2f022ea3a89a467e99dfd467843fb15d577b0e2e792c4557120d41a9a71e3f1e313b54f3 pythondata-cpu-marocchino-2023.12.tar.gz
+c576b9582d9f51de90f398a0ec9011e9423524f401ddad3c54a658adc0b1f19899187586ca6d77c17a62cfbb5cb632a3ff41b8f5ce89868e19b9f17740d6a368 pythondata-cpu-microwatt-2023.12.tar.gz
+b19fd16fc2d24579d08b854b9d4a9dbadf5fcee7725f5ba4cc705bbf1ddc8b2951ee6dc2b041cb4550a9ab1618198f2a6e29b932543d380a281aa9faf3c93477 pythondata-cpu-minerva-2023.12.tar.gz
+fc7e4fdba394831bd1dce9a47a33cf91f051b04108af9dca8dc57f1a9221d53c16692ef4117a7cca485fdc9684848e31ca9311be73088b8c1108e25fed6e9df4 pythondata-cpu-mor1kx-2020.04.tar.gz
+0595dcb4d66ba5f7b865643660cd128efc12b966d4cc336e879239ae73096542063c0886982fcd6afc3df7d0ac6cf9e9bf0b51dae848abe0544093a086ca5157 pythondata-cpu-naxriscv-2023.12.tar.gz
+2087236196f9797d4b5746a30634e5d4a535b065c780b85102d7d97b858e30d615d5c2868b61ac8fbb71e671bf2b414eabf2ad6b8a39b34f64f4bde0c907cfb1 pythondata-cpu-picorv32-2020.04.tar.gz
+7ae6d8b2cb42f0c5c0093dbb35e8f1eb863b1fd49a4cdaa6ed3ff1b1a2e3ae1ac14a8fe13ed6826f9ada72740b2151075a14eb40df4756c2dd6f02712de91e23 pythondata-cpu-rocket-2020.04.tar.gz
+187a78c150a63399131ac4815d2670773917ca8e1de6adec9c7fdbdbb2d78900cc72bd1a103349ed318b1fb7ee17a9e6580db31dc03acd31d68e0aa5e56f378b pythondata-cpu-serv-2020.04.tar.gz
+9f4a0ca2cabfe7cefd5b1be1e40b6f02f2fb5edb9d70099d6d95530f5e4476574a3901340dcac606f7a1a31a2ac29764227f01b93f3e912b299718751746078b pythondata-cpu-vexriscv-2020.04.tar.gz
+e01d0593e4d515f6b38a4373f57f03290bcbd70e8e9117b995055461869db03a277d0ad4faffef0f7775acff48e7ee40666968d6aabf2d926cdeff3a190b5a29 pythondata-cpu-vexriscv_smp-2023.12.tar.gz
+66ff1bd80665c6beaf2b8b069698461cf836317a3de1fd06f5959b660e9b2ffefe057c86813c9ca2749ff381ab50a6519f9717eece117b569fb29b84d07163ff pythondata-misc-tapcfg-2020.04.tar.gz
+3e70d5e5941654588a353b866224b4e8b14324d4e771c2d43918ed4749e9c14d1e9229d6fa2f62fb7b58b2964f5d3f5d2f0fee6b14fd3862cfa211a3b93b89bb pythondata-software-compiler_rt-2020.04.tar.gz
+953968a0ba0df4207c04bec43de3ad4b599b0d63182c8ae8da4f254768aacf4a8a8e0a935cdc2aebc23c99494e1d3736b78f1d7413c1f94da3b016036a7f4b0a pythondata-software-picolibc-2023.12.tar.gz
+b9cb43acd169e8e05560ee5d90326a95426e26f8f837c21d3965770f8ed5fdb4352729d4f8320d8070e57fe36e3276d3b04df90498e874d6a6c3fab61fa85829 valentyusb-2023.12.tar.gz
+"
diff --git a/testing/py3-litex/0001-litedram-phy-lpddr-fix-use-of-invalid-escape-sequenc.patch b/testing/py3-litex/0001-litedram-phy-lpddr-fix-use-of-invalid-escape-sequenc.patch
new file mode 100644
index 00000000000..aeba3b5e9b9
--- /dev/null
+++ b/testing/py3-litex/0001-litedram-phy-lpddr-fix-use-of-invalid-escape-sequenc.patch
@@ -0,0 +1,105 @@
+From 37e1f346e5a47dff74c0535c3b3cacd8f7b144dd Mon Sep 17 00:00:00 2001
+From: Marian Buschsieweke <marian.buschsieweke@posteo.net>
+Date: Thu, 11 Jan 2024 09:46:43 +0100
+Subject: [PATCH] litedram/phy/lpddr*: fix use of invalid escape sequence
+
+This fixes multiple instances of:
+
+litedram/phy/lpddr4/commands.py:209
+ litedram-2023.12/litedram/phy/lpddr4/commands.py:209: DeprecationWarning: invalid escape sequence '\d'
+ "BA(\d+)": lambda i: self.dfi.bank[i],
+---
+ litedram/phy/lpddr4/commands.py | 24 ++++++++++----------
+ litedram/phy/lpddr5/commands.py | 40 ++++++++++++++++-----------------
+ 2 files changed, 32 insertions(+), 32 deletions(-)
+
+diff --git a/litedram/phy/lpddr4/commands.py b/litedram/phy/lpddr4/commands.py
+index 737e318..90ade80 100644
+--- a/litedram-2023.12/litedram/phy/lpddr4/commands.py
++++ b/litedram-2023.12/litedram/phy/lpddr4/commands.py
+@@ -199,18 +199,18 @@ class Command(Module):
+ assert len(self.dfi.address) >= 17, "At least 17 DFI addressbits needed for row address"
+ mr_address = self.dfi.bank if is_mrw else self.dfi.address
+ rules = {
+- "H": lambda: 1, # high
+- "L": lambda: 0, # low
+- "V": lambda: 0, # defined logic
+- "X": lambda: 0, # don't care
+- "BL": lambda: 0, # on-the-fly burst length, not using
+- "AP": lambda: self.dfi.address[10], # auto precharge
+- "AB": lambda: self.dfi.address[10], # all banks
+- "BA(\d+)": lambda i: self.dfi.bank[i],
+- "R(\d+)": lambda i: self.dfi.address[i], # row
+- "C(\d+)": lambda i: self.dfi.address[i], # column
+- "MA(\d+)": lambda i: mr_address[i], # mode register address
+- "OP(\d+)": lambda i: self.dfi.address[i], # mode register value, or operand for MPC
++ "H": lambda: 1, # high
++ "L": lambda: 0, # low
++ "V": lambda: 0, # defined logic
++ "X": lambda: 0, # don't care
++ "BL": lambda: 0, # on-the-fly burst length, not using
++ "AP": lambda: self.dfi.address[10], # auto precharge
++ "AB": lambda: self.dfi.address[10], # all banks
++ "BA(\\d+)": lambda i: self.dfi.bank[i],
++ "R(\\d+)": lambda i: self.dfi.address[i], # row
++ "C(\\d+)": lambda i: self.dfi.address[i], # column
++ "MA(\\d+)": lambda i: mr_address[i], # mode register address
++ "OP(\\d+)": lambda i: self.dfi.address[i], # mode register value, or operand for MPC
+ }
+ for pattern, value in rules.items():
+ m = re.match(pattern, bit)
+diff --git a/litedram/phy/lpddr5/commands.py b/litedram/phy/lpddr5/commands.py
+index 9fd13ee..52733ec 100644
+--- a/litedram-2023.12/litedram/phy/lpddr5/commands.py
++++ b/litedram-2023.12/litedram/phy/lpddr5/commands.py
+@@ -275,27 +275,27 @@ class Command(Module):
+ op = mpc_op if is_mpc else self.dfi.address
+
+ rules = {
+- "H": lambda: 1, # high
+- "L": lambda: 0, # low
+- "V": lambda: 0, # defined logic
+- "X": lambda: 0, # don't care
+- "AB": lambda: self.dfi.address[10], # all banks
+- "AP": lambda: self.dfi.address[10], # auto precharge
+- "RFM": lambda: 0, # TODO: 1=RFM, 0=REF (Refresh Managemenent, only if r/o MR[27][0]=1, else always REF)
+- "SB(\d+)": lambda i: 0, # sub-bank selection related to RFM
+- "WS_WR": lambda: self.wck_sync == WCKSyncType.WR, # Write WCK2CK SYNC
+- "WS_RD": lambda: self.wck_sync == WCKSyncType.RD, # Read WCK2CK SYNC
+- "WS_FS": lambda: self.wck_sync == WCKSyncType.FS, # FAST SYNC
+- "DC(\d+)": lambda i: 0, # Data Copy, unimplemented
+- "WRX": lambda: 0, # Write X function, unimplemented
+- "WXSA": lambda: 0, # Write X function, unimplemented
+- "WXSB": lambda: 0, # Write X function, unimplemented
+- "BA(\d+)": lambda i: self.dfi.bank[i], # only BA0-2 is used, in BG/B16 modes we always refresh banks (x, x+8)
+- "R(\d+)": lambda i: self.dfi.address[i], # row
++ "H": lambda: 1, # high
++ "L": lambda: 0, # low
++ "V": lambda: 0, # defined logic
++ "X": lambda: 0, # don't care
++ "AB": lambda: self.dfi.address[10], # all banks
++ "AP": lambda: self.dfi.address[10], # auto precharge
++ "RFM": lambda: 0, # TODO: 1=RFM, 0=REF (Refresh Managemenent, only if r/o MR[27][0]=1, else always REF)
++ "SB(\\d+)": lambda i: 0, # sub-bank selection related to RFM
++ "WS_WR": lambda: self.wck_sync == WCKSyncType.WR, # Write WCK2CK SYNC
++ "WS_RD": lambda: self.wck_sync == WCKSyncType.RD, # Read WCK2CK SYNC
++ "WS_FS": lambda: self.wck_sync == WCKSyncType.FS, # FAST SYNC
++ "DC(\\d+)": lambda i: 0, # Data Copy, unimplemented
++ "WRX": lambda: 0, # Write X function, unimplemented
++ "WXSA": lambda: 0, # Write X function, unimplemented
++ "WXSB": lambda: 0, # Write X function, unimplemented
++ "BA(\\d+)": lambda i: self.dfi.bank[i], # only BA0-2 is used, in BG/B16 modes we always refresh banks (x, x+8)
++ "R(\\d+)": lambda i: self.dfi.address[i], # row
+ # LPDDR5 specs split the regular column address into C[5:0] "column address" and B[3:0] "burst address"
+- "C(\d+)": lambda i: self.dfi.address[i + 4],
+- "MA(\d+)": lambda i: mr_address[i], # mode register address
+- "OP(\d+)": lambda i: op[i], # mode register value, or operand for MPC
++ "C(\\d+)": lambda i: self.dfi.address[i + 4],
++ "MA(\\d+)": lambda i: mr_address[i], # mode register address
++ "OP(\\d+)": lambda i: op[i], # mode register value, or operand for MPC
+ }
+
+ for pattern, value in rules.items():
+--
+2.43.0
+
diff --git a/testing/py3-litex/0002-litex-fix-invalid-escape-sequence.patch b/testing/py3-litex/0002-litex-fix-invalid-escape-sequence.patch
new file mode 100644
index 00000000000..aa6c4f7121b
--- /dev/null
+++ b/testing/py3-litex/0002-litex-fix-invalid-escape-sequence.patch
@@ -0,0 +1,16 @@
+This fixes:
+
+ test/test_cpu.py:15
+ /home/maribu/Repos/software/aports/testing/py3-litex/src/litex-2023.12/test/test_cpu.py:15: DeprecationWarning: invalid escape sequence '\['
+ litex_prompt = [b'\033\[[0-9;]+mlitex\033\[[0-9;]+m>']
+--- a/litex-2023.12/test/test_cpu.py 2024-01-11 15:12:24.107360027 +0100
++++ b/litex-2023.12/test/test_cpu.py 2024-01-11 15:13:21.403348076 +0100
+@@ -12,7 +12,7 @@ import os
+ class TestCPU(unittest.TestCase):
+ def boot_test(self, cpu_type, jobs, cpu_variant="standard"):
+ cmd = f'litex_sim --cpu-type={cpu_type} --cpu-variant={cpu_variant} --opt-level=O0 --jobs {jobs}'
+- litex_prompt = [b'\033\[[0-9;]+mlitex\033\[[0-9;]+m>']
++ litex_prompt = [b'\033\\[[0-9;]+mlitex\033\\[[0-9;]+m>']
+ is_success = True
+ with open("/tmp/test_boot_log", "wb") as result_file:
+ p = pexpect.spawn(cmd, timeout=None, logfile=result_file)
diff --git a/testing/py3-litex/0003-litepcie-fix-package-absent-from-packages-configuration.patch b/testing/py3-litex/0003-litepcie-fix-package-absent-from-packages-configuration.patch
new file mode 100644
index 00000000000..ea889c69412
--- /dev/null
+++ b/testing/py3-litex/0003-litepcie-fix-package-absent-from-packages-configuration.patch
@@ -0,0 +1,23 @@
+This fixes multiple instances of:
+
+ _Warning: Package '<data_pkg_name>' is absent from the packages configuration.
+--- a/litepcie-2023.12/setup.py 2024-04-16 22:43:46.834348505 +0200
++++ b/litepcie-2023.12/setup.py 2024-04-16 22:44:09.857501663 +0200
+@@ -1,7 +1,7 @@
+ #!/usr/bin/env python3
+
+ from setuptools import setup
+-from setuptools import find_packages
++from setuptools import find_namespace_packages
+
+
+ with open("README.md", "r", encoding="utf-8") as fp:
+@@ -30,7 +30,7 @@ setup(
+ "requests"
+ ]
+ },
+- packages = find_packages(exclude=("test*", "sim*", "doc*", "examples*")),
++ packages = find_namespace_packages(exclude=("test*", "sim*", "doc*", "examples*")),
+ include_package_data = True,
+ keywords = "HDL ASIC FPGA hardware design",
+ classifiers = [
diff --git a/testing/py3-litex/APKBUILD b/testing/py3-litex/APKBUILD
new file mode 100644
index 00000000000..fab2cce1e38
--- /dev/null
+++ b/testing/py3-litex/APKBUILD
@@ -0,0 +1,249 @@
+# Contributor: Marian Buschsieweke <marian.buschsieweke@posteo.net>
+# Maintainer: Marian Buschsieweke <marian.buschsieweke@posteo.net>
+pkgname=py3-litex
+_pkgname=litex
+pkgver=2023.12
+pkgrel=1
+pkgdesc="infrastructure to create FPGA Cores/SoCs and full FPGA based systems"
+url="https://github.com/enjoy-digital/litex"
+license="BSD-2-Clause"
+# ppc64le: verilator verilator-dev
+# s390x: verilator verilator-dev, picolibc-riscv-none-elf
+# armv7: verilator verilator-dev, picolibc-riscv-none-elf
+# armhf: verilator verilator-dev, picolibc-riscv-none-elf
+# riscv64: verilator verilator-dev, picolibc-riscv-none-elf
+# aarch64: verilator verilator-dev
+# x86: unit test failures
+arch="all !ppc64le !s390x !armv7 !armhf !riscv64 !aarch64 !x86"
+depends="
+ py3-migen
+ py3-packaging
+ py3-pyserial
+ py3-requests
+ py3-yaml
+ python3
+ "
+makedepends="
+ py3-setuptools
+ py3-gpep517
+ py3-wheel
+ py3-installer
+ "
+checkdepends="
+ bash
+ json-c-dev
+ libevent-dev
+ linux-headers
+ meson
+ picolibc-riscv-none-elf
+ py3-litex-hub-modules
+ py3-pexpect
+ py3-pytest
+ verilator
+ verilator-dev
+ zlib-dev
+ "
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/enjoy-digital/litex/archive/refs/tags/$pkgver.tar.gz
+ litescope-$pkgver.tar.gz::https://github.com/enjoy-digital/litescope/archive/refs/tags/$pkgver.tar.gz
+ litex-boards-$pkgver.tar.gz::https://github.com/litex-hub/litex-boards/archive/refs/tags/$pkgver.tar.gz
+
+ 0001-litedram-phy-lpddr-fix-use-of-invalid-escape-sequenc.patch
+ 0002-litex-fix-invalid-escape-sequence.patch
+ 0003-litepcie-fix-package-absent-from-packages-configuration.patch
+ "
+builddir="$srcdir"
+subpackages="
+ $pkgname-pyc
+ $pkgname-full
+ py3-litescope
+ py3-litex-boards
+ "
+
+_cores_enjoy_digital="
+ dram:DRAM
+ eth:Ethernet
+ iclink:Inter-Chip-Communication
+ jesd204b:JESD204B
+ pcie:PCIe
+ sata:SATA
+ sdcard:SDCard
+ "
+_cores_litex_hub="
+ spi:SPI
+ "
+_cores="$_cores_enjoy_digital $_cores_litex_hub"
+
+for _core_name in $_cores_enjoy_digital; do
+ _core=${_core_name%:*}
+ subpackages="$subpackages py3-lite$_core:_subpkg_core"
+ source="$source py3-lite$_core-$pkgver.tar.gz::https://github.com/enjoy-digital/lite$_core/archive/refs/tags/$pkgver.tar.gz"
+done
+
+for _core_name in $_cores_litex_hub; do
+ _core=${_core_name%:*}
+ subpackages="$subpackages py3-lite$_core:_subpkg_core"
+ source="$source py3-lite$_core-$pkgver.tar.gz::https://github.com/litex-hub/lite$_core/archive/refs/tags/$pkgver.tar.gz"
+done
+
+prepare() {
+ default_prepare
+
+ # remove and rebuild x86_64 glibc binaries used in litesata test
+ cd "$srcdir/litesata-$pkgver/test/model"
+ rm crc scrambler
+ gcc -Os -o scrambler scrambler.c
+ gcc -Os -o crc crc.c
+}
+
+build() {
+ echo "--> Building LiteX"
+ cd "$srcdir/litex-$pkgver"
+ gpep517 build-wheel \
+ --wheel-dir dist \
+ --output-fd 3 3>&1 >&2
+
+ echo "--> Building LiteX-Boards"
+ cd "$srcdir/litex-boards-$pkgver"
+ gpep517 build-wheel \
+ --wheel-dir dist \
+ --output-fd 3 3>&1 >&2
+
+ echo "--> Building LiteScope"
+ cd "$srcdir/litescope-$pkgver"
+ gpep517 build-wheel \
+ --wheel-dir dist \
+ --output-fd 3 3>&1 >&2
+
+ for _core_name in $_cores; do
+ _core=$(echo "$_core_name" | cut -d : -f 1)
+ _name=$(echo "$_core_name" | cut -d : -f 2)
+ echo "--> Building LiteX core $_name"
+
+ cd "$srcdir/lite$_core-$pkgver"
+ gpep517 build-wheel \
+ --wheel-dir dist \
+ --output-fd 3 3>&1 >&2
+ done
+}
+
+check() {
+ cd "$srcdir/litex-$pkgver"
+ python3 -m venv --clear --without-pip --system-site-packages "$srcdir"/testenv
+ "$srcdir"/testenv/bin/python3 -m installer dist/*.whl
+ "$srcdir"/testenv/bin/python3 -m installer "$srcdir/litex-boards-$pkgver"/dist/*.whl
+ "$srcdir"/testenv/bin/python3 -m installer "$srcdir/litescope-$pkgver"/dist/*.whl
+
+ for _core_name in $_cores; do
+ _core=$(echo "$_core_name" | cut -d : -f 1)
+ "$srcdir"/testenv/bin/python3 -m installer "$srcdir/lite$_core-$pkgver"/dist/*.whl
+ done
+
+ echo "--> Testing LiteX"
+ # CPU test fails with "%Error: Verilator internal fault, sorry. Suggest trying --debug --gdbbt"
+ env PATH="$srcdir/testenv/bin:$PATH" "$srcdir"/testenv/bin/python3 -m pytest -v \
+ --deselect test/test_cpu.py::TestCPU::test_cpu
+
+ for _core_name in $_cores; do
+ _core=$(echo "$_core_name" | cut -d : -f 1)
+ _name=$(echo "$_core_name" | cut -d : -f 2)
+ echo "--> Testing LiteX core $_name"
+ cd "$srcdir/lite$_core-$pkgver"
+
+ # running tests now, but deselecting two of the slowest tests
+ # (when unlucky, the run for longer than the 12 minute timeout and
+ # fail on the builder).
+ env PATH="$srcdir/testenv/bin:$PATH" "$srcdir/testenv/bin/python3" -m pytest -v \
+ --deselect test/test_lpddr4.py::VerilatorLPDDR4Tests::test_lpddr4_sim_fast \
+ --deselect test/test_lpddr4.py::VerilatorLPDDR4Tests::test_lpddr4_sim_x2rate_no_cache \
+ #
+
+ done
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ "$srcdir/litex-$pkgver"/dist/*.whl
+
+ for _core_name in $_cores; do
+ _core=$(echo "$_core_name" | cut -d : -f 1)
+ python3 -m installer -d "$pkgdir" \
+ "$srcdir/lite$_core-$pkgver"/dist/*.whl
+ done
+
+ python3 -m installer -d "$pkgdir" \
+ "$srcdir/litescope-$pkgver"/dist/*.whl
+
+ python3 -m installer -d "$pkgdir" \
+ "$srcdir/litex-boards-$pkgver"/dist/*.whl
+}
+
+_subpkg_core() {
+ _core="${subpkgname#py3-lite}"
+ for _core_name in $_cores; do
+ if [ "$_core" = "$(echo "$_core_name" | cut -d : -f 1)" ]; then
+ _name=$(echo "$_core_name" | cut -d : -f 2)
+ fi
+ done
+ pkgdesc="Small footprint and configurable $_name core"
+ depends="$depends py3-litex"
+
+ amove usr/lib/python3*/site-packages/"lite$_core"
+ amove usr/lib/python3*/site-packages/"lite$_core"-*.dist-info
+}
+
+litescope() {
+ pkgdesc="Small footprint and configurable embedded FPGA logic analyzer"
+ depends="$depends py3-litex"
+ amove usr/lib/python3*/site-packages/litescope
+ amove usr/lib/python3*/site-packages/litescope-*.dist-info
+}
+
+boards() {
+ pkgdesc="LiteX boards files"
+ depends="$depends py3-litex"
+ amove usr/lib/python3*/site-packages/litex_boards
+ amove usr/lib/python3*/site-packages/litex_boards-*.dist-info
+}
+
+full() {
+ pkgdesc="Meta package to install full LiteX framework"
+ depends="
+ bash
+ json-c-dev
+ libevent-dev
+ linux-headers
+ meson
+ picolibc-riscv-none-elf
+ py3-litescope
+ py3-litex
+ py3-litex-boards
+ py3-litex-hub-modules
+ verilator
+ verilator-dev
+ zlib-dev
+ "
+ for _core_name in $_cores; do
+ _core=$(echo "$_core_name" | cut -d : -f 1)
+ depends="$depends py3-lite$_core"
+ done
+
+ mkdir -p "$subpkgdir"
+}
+
+sha512sums="
+6fa3888d6f80214ef8a2e1af439ac652794deba8a0da97cc7d7bc0f6fd5e45898966be22c117629d91e8df6ad7dbd383d7a3ae50567f0eeb7f1cc98d36b31e08 py3-litex-2023.12.tar.gz
+4aaa452fc6dbb2edbc9c61c7a9c66d70763dd2a6a3b12eac1a9185b117f31e94d6d532462971cb2082002dc8f4d95c6f4bb1f07d6e692fa967ebdfa3aaf1a1d3 litescope-2023.12.tar.gz
+f41ac30e1b76bc06341827c1600c1e072ce457c03b9170fe34d4d1c5b9c2e7c8851615139b9d0f4107b33aee26bb20b3918ec8111115b35b0d451757e11234b4 litex-boards-2023.12.tar.gz
+b975f8d3e38f4b64e775dd026e173002007f789d9ec959442b3ed9fc00d37ba3a4891af15c219e806deda272edda37e05aa4a241e7db0fe8c36297dafa55b64e 0001-litedram-phy-lpddr-fix-use-of-invalid-escape-sequenc.patch
+faae763691fa50db3f9358b5abd64e23bc2e8974b125b2df82c58aca778900253bbab20673412c57174bf7767368fa1e706fde5b54c281ff212d821859e6a076 0002-litex-fix-invalid-escape-sequence.patch
+63ccc3ad64702325060a91e6df620a68d76b418d03dce7d357607fa479651ff1bc70b0219f8c61185ebf91102bb2b3a7eac110bd260b76a07a093f3dbfd15f87 0003-litepcie-fix-package-absent-from-packages-configuration.patch
+5137b7db6db5c33223c0cf0c51dd3eb724f83a7050dfba8e68d4aeb9514095ac1afd0105645a9381b2f68751d17e95276ffe464cf01e1fa44e078a7092e2ea07 py3-litedram-2023.12.tar.gz
+454b51651ffe863f6f81b8a010805550c197845f719ad5d7e67454c4ce9a42b290adb92c9aab355dbdbc53484bf436baf2a9d5921c3d7053ac6cbe0ce8c56161 py3-liteeth-2023.12.tar.gz
+fc019f3def7790aa9822762c63d5578555af30a731da56976e7ec1b91591d833dadca91f9cc4ffd3a457ad76484b13a0e4f67b9f66a90d78b6f3106b34617720 py3-liteiclink-2023.12.tar.gz
+f6e4bf357e24b898e08079a119912ff58b48e754544313611914dba1e13dd921e5ee919a5559c4b8f77c9768203b396fbc49ac5019a488a797ebcedc24754409 py3-litejesd204b-2023.12.tar.gz
+8155a87e320345741b4a7f187651c15a704d65ed0c4e95fe5994c913632b20ae56ab8f36968a606658e361c9a8968447e31b3c00ff34f2bd66bd89dc2001c09f py3-litepcie-2023.12.tar.gz
+ab62eb5c183e4559ea352c561b4c9b985ffc917c686f6dac121ec64558a873a5225e591c44daf473cbb56fab719703e89bbcd8710ae94b9e5522f7500a495ee1 py3-litesata-2023.12.tar.gz
+755f253a0c0e720c16970f515c1b4aa82f3f4401f9cf2301803a514942cf1b4211c43aa602910beb7181bb53f435cb9c41cb96d54423e110e3914f4512b559c1 py3-litesdcard-2023.12.tar.gz
+19946e9e4a8f8085f5644e8b51fb588332598fdede7e5f9acb30160a794fa8768f4b9a4ba0cc4532e995debbe3059e32f72029722ce9624ee3531bd65543e58b py3-litespi-2023.12.tar.gz
+"
diff --git a/testing/py3-livestream/APKBUILD b/testing/py3-livestream/APKBUILD
index 3efda078a81..2347c103842 100644
--- a/testing/py3-livestream/APKBUILD
+++ b/testing/py3-livestream/APKBUILD
@@ -2,31 +2,34 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=py3-livestream
_pkgname=PyLivestream
-pkgver=1.5.1
-pkgrel=4
+pkgver=2.0.0
+pkgrel=2
pkgdesc="Simple cross-platform FFmpeg-based live streaming to YouTube, Periscope, Facebook Live and more"
url="https://github.com/scivision/PyLivestream"
arch="noarch"
license="AGPL-3.0-or-later"
-depends="ffmpeg"
-makedepends="python3-dev py3-setuptools"
+depends="ffmpeg ffplay"
+makedepends="python3-dev py3-gpep517 py3-installer py3-setuptools py3-wheel"
+checkdepends="py3-pytest py3-pytest-timeout xvfb-run"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/scivision/$_pkgname/archive/v$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
build() {
- cd "$builddir"
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 1
}
check() {
- cd "$builddir"
- python3 setup.py check
+ PYTHONPATH=src xvfb-run -a python3 -m pytest
}
package() {
- cd "$builddir"
- python3 setup.py install --prefix=/usr --root="$pkgdir"
- install -D -m0644 stream.ini "$pkgdir"/etc/$_pkgname/stream.ini
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
-sha512sums="e31f3e66f233935a4843ccaf3569d6b0439f5be21b4e9ddf94b5e87315503ce6b00d64739dd3fa86a8e8bcb011f1523e62ac0aec2ac9dc8628502f14c09e39db py3-livestream-1.5.1.tar.gz"
+sha512sums="
+98d6343b41354625d618b9e3c91da180c72c44526e1c62e8eb30f3a7cfa902849f33f7eca3d80ccb9f8eca7f1675e5397fefa4239310100c5f21b933e80a0825 py3-livestream-2.0.0.tar.gz
+"
diff --git a/testing/py3-llfuse/APKBUILD b/testing/py3-llfuse/APKBUILD
deleted file mode 100644
index 0546e7338b3..00000000000
--- a/testing/py3-llfuse/APKBUILD
+++ /dev/null
@@ -1,27 +0,0 @@
-# Contributor: Sean McAvoy <seanmcavoy@gmail.com>
-# Maintainer: Sean McAvoy <seanmcavoy@gmail.com>
-pkgname=py3-llfuse
-pkgver=1.4.1
-pkgrel=1
-pkgdesc="Python-LLFUSE is a set of Python bindings for the low level FUSE API"
-url="https://github.com/python-llfuse/python-llfuse/"
-arch="all"
-license="GPL-2.0-or-later"
-depends="python3"
-makedepends="python3-dev py3-setuptools fuse-dev"
-options="!check" # checks are dependent on self
-source="https://files.pythonhosted.org/packages/b1/d4/44443fbaac6d5b878da99e7c0948ee93c7934fa3b00e48c5363823b583d0/llfuse-$pkgver.tar.gz
- "
-builddir="$srcdir/llfuse-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-e94045018e9d78b7b16355dd499a27694a77a70d61102d05938223b99686e4b9d90b5e14745d92a187ac8e34aa593a12d99bff1baccb19d4236d54eb66ec3e4f llfuse-1.4.1.tar.gz
-"
diff --git a/testing/py3-log-symbols/APKBUILD b/testing/py3-log-symbols/APKBUILD
index 5a5ec93a892..4e254002550 100644
--- a/testing/py3-log-symbols/APKBUILD
+++ b/testing/py3-log-symbols/APKBUILD
@@ -3,7 +3,7 @@
pkgname=py3-log-symbols
_pyname=log_symbols
pkgver=0.0.14
-pkgrel=1
+pkgrel=4
pkgdesc="Colored symbols for Python log levels"
url="https://github.com/manrajgrover/py-log-symbols"
arch="noarch"
@@ -11,6 +11,7 @@ license="MIT"
depends="python3 py3-colorama"
makedepends="py3-setuptools"
options="!check" # no tests
+subpackages="$pkgname-pyc"
source="$_pyname-$pkgver.tar.gz::https://pypi.python.org/packages/source/l/log-symbols/log_symbols-$pkgver.tar.gz"
builddir="$srcdir/$_pyname-$pkgver"
@@ -19,7 +20,7 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
diff --git a/testing/py3-logutils/APKBUILD b/testing/py3-logutils/APKBUILD
deleted file mode 100644
index 5be29fe8b6e..00000000000
--- a/testing/py3-logutils/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Contributor: Duncan Bellamy <dunk@denkimushi.com>
-# Maintainer: Duncan Bellamy <dunk@denkimushi.com>
-pkgname=py3-logutils
-pkgver=0.3.5
-pkgrel=0
-pkgdesc="Logging utilities"
-url="https://bitbucket.org/vinay.sajip/logutils/src/master/"
-arch="noarch"
-license="BSD-3-Clause"
-depends="python3 "
-makedepends="py3-setuptools"
-checkdepends="py3-pytest py3-redis redis"
-source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/l/logutils/logutils-$pkgver.tar.gz"
-builddir="$srcdir/logutils-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-# deselect test that is written for older python versions
-check() {
- python3 -m pytest --deselect=tests/test_adapter.py
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-0194bf4f01e7a29d4211495dc5fead9d4bd5bc1b791d25ff38ad28960a229a9bcdbaa7e6d3b5a4105eef6c9aa159459d6529c2615df113e7ec1ae93aac5cce6c py3-logutils-0.3.5.tar.gz
-"
diff --git a/testing/py3-lsp-black/APKBUILD b/testing/py3-lsp-black/APKBUILD
new file mode 100644
index 00000000000..a77e9af3dfb
--- /dev/null
+++ b/testing/py3-lsp-black/APKBUILD
@@ -0,0 +1,37 @@
+# Maintainer: Hugo Osvaldo Barrera <hugo@whynothugo.nl>
+pkgname=py3-lsp-black
+_pypi_name=python-lsp-black
+pkgver=2.0.0
+pkgrel=1
+pkgdesc="Plugin for black support in py3-lsp-server"
+url="https://github.com/python-lsp/python-lsp-black"
+arch="noarch !armhf !s390x" # armhf, s390x: no py3-lsp-server
+license="MIT"
+depends="py3-lsp-server black"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/${_pypi_name:0:1}/$_pypi_name/$_pypi_name-$pkgver.tar.gz"
+builddir="$srcdir"/$_pypi_name-$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
+ # See: https://github.com/python-lsp/python-lsp-black/issues/55
+ .testenv/bin/python3 -m pytest -k "not (test_pylsp_format or syntax_error or test_load_config_defaults or test_load_config_with_skip_options)"
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+595ccb0e5b99a827c3961d63f0c9ee511e5c156372d19760b048f0e1f3af45e889724397109722174a75ef46f71a1b200a8849b6939c517ec2003aaab87f032f python-lsp-black-2.0.0.tar.gz
+"
diff --git a/testing/py3-lsp-mypy/APKBUILD b/testing/py3-lsp-mypy/APKBUILD
new file mode 100644
index 00000000000..84e73cf58b0
--- /dev/null
+++ b/testing/py3-lsp-mypy/APKBUILD
@@ -0,0 +1,44 @@
+# Maintainer: Hugo Osvaldo Barrera <hugo@whynothugo.nl>
+pkgname=py3-lsp-mypy
+_pypi_name=pylsp-mypy
+pkgver=0.6.8
+pkgrel=1
+pkgdesc="MyPy plugin for the Python LSP Server"
+url="https://github.com/python-lsp/pylsp-mypy"
+# armhf, s390x: no py3-lsp-server
+arch="noarch !armhf !s390x"
+license="MIT"
+depends="
+ py3-lsp-server
+ py3-mypy
+ "
+makedepends="
+ py3-gpep517
+ py3-installer
+ py3-wheel
+ "
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/${_pypi_name:0:1}/$_pypi_name/$_pypi_name-$pkgver.tar.gz"
+builddir="$srcdir"/$_pypi_name-$pkgver
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+c270ff6871c5e5d5dfb2d0b3e0f3ee22133ff0ef90c0668f2585cecdfc83664eb47b08c6169e0e05ea7f38e61de895fad6c06d435d9bd0323b4a3ea74dd5bc7c pylsp-mypy-0.6.8.tar.gz
+"
diff --git a/testing/py3-lsprotocol/APKBUILD b/testing/py3-lsprotocol/APKBUILD
new file mode 100644
index 00000000000..65b9c22051b
--- /dev/null
+++ b/testing/py3-lsprotocol/APKBUILD
@@ -0,0 +1,44 @@
+# Maintainer:
+pkgname=py3-lsprotocol
+pkgver=2023.0.1
+pkgrel=1
+pkgdesc="Python implementation of the Language Server Protocol"
+url="https://github.com/microsoft/lsprotocol"
+arch="noarch"
+license="MIT"
+depends="
+ py3-attrs
+ py3-cattrs
+ "
+makedepends="
+ py3-flit-core
+ py3-gpep517
+ "
+checkdepends="
+ py3-jsonschema
+ py3-pyhamcrest
+ py3-pytest
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/microsoft/lsprotocol/archive/refs/tags/$pkgver.tar.gz"
+builddir="$srcdir/lsprotocol-$pkgver"
+
+build() {
+ cd packages/python
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ pytest tests/python
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ packages/python/.dist/*.whl
+}
+
+sha512sums="
+e929125f259240feb757c55a62ca4ee021e9727884dc5b7465894aa5d5a3cf13235f9b863af862ae1f1c04f1eaa3de6356cf7abecc6efa1979facaecbfb45e64 py3-lsprotocol-2023.0.1.tar.gz
+"
diff --git a/testing/py3-luhn/APKBUILD b/testing/py3-luhn/APKBUILD
index 22e1095a3db..c1aa3837cf5 100644
--- a/testing/py3-luhn/APKBUILD
+++ b/testing/py3-luhn/APKBUILD
@@ -3,7 +3,7 @@
pkgname=py3-luhn
_pkgname=luhn
pkgver=0.2.0
-pkgrel=5
+pkgrel=8
pkgdesc="Generate and verify Luhn check digits"
url="https://github.com/mmcloughlin/luhn"
arch="noarch"
@@ -11,6 +11,7 @@ license="MIT"
depends="py3-amqp"
makedepends="py3-setuptools"
checkdepends="py3-nose"
+subpackages="$pkgname-pyc"
source="$_pkgname-$pkgver.tar.gz::https://github.com/mmcloughlin/luhn/archive/$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
@@ -26,7 +27,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="43732155358352fa25ca4c25e59a40efd98250e4296f75cdd1d2050a79a1ac26110f024a585159a626784dbfd4b6def3c85b2594c6ecf4e8b74a9cd165870c78 luhn-0.2.0.tar.gz"
diff --git a/testing/py3-lunr/APKBUILD b/testing/py3-lunr/APKBUILD
index 218dff64e0e..3a7fdf85c34 100644
--- a/testing/py3-lunr/APKBUILD
+++ b/testing/py3-lunr/APKBUILD
@@ -1,15 +1,16 @@
# Contributor: David Demelier <markand@malikania.fr>
# Maintainer: David Demelier <markand@malikania.fr>
pkgname=py3-lunr
-pkgver=0.6.0
-pkgrel=1
+pkgver=0.6.2
+pkgrel=3
pkgdesc="python implementation of Lunr.js"
url="https://github.com/yeraydiazdiaz/lunr.py"
arch="noarch"
license="MIT"
-depends="python3 py3-future py3-six"
+depends="python3 py3-future"
makedepends="py3-setuptools"
checkdepends="py3-coverage py3-mock py3-pytest py3-pytest-timeout py3-tox"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/l/lunr/lunr-$pkgver.tar.gz"
builddir="$srcdir/lunr-$pkgver"
options="!check" # No tests yet.
@@ -19,7 +20,9 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="035f1ba81e4a7323b88eb0e5fb2482814808dfe7c5781f4a2767e7003d66fe97f8f2957f3506f406399d4a293c4105a98ff282d377d42a03b3ce9e41101db34c lunr-0.6.0.tar.gz"
+sha512sums="
+6b7c29d30a8a64b71246ff884e473cceeef5e00e382ad54474e7855dcafcf3817dcc14c29c1bb2eb3371f1cb5ab1485a7840dbe41d345a4503294052aa9cd644 lunr-0.6.2.tar.gz
+"
diff --git a/testing/py3-ly/APKBUILD b/testing/py3-ly/APKBUILD
new file mode 100644
index 00000000000..08f3f7cb48b
--- /dev/null
+++ b/testing/py3-ly/APKBUILD
@@ -0,0 +1,36 @@
+# Maintainer: Krystian Chachuła <krystian@krystianch.com>
+pkgname=py3-ly
+_pkgname=python-ly
+pkgver=0.9.8
+pkgrel=1
+pkgdesc="Tool and library for manipulating LilyPond files"
+url="https://github.com/frescobaldi/python-ly"
+arch="noarch"
+license="GPL-2.0-or-later"
+makedepends="py3-gpep517 py3-setuptools py3-wheel py3-sphinx"
+subpackages="$pkgname-pyc $pkgname-doc"
+source="$_pkgname-$pkgver.tar.gz::https://github.com/frescobaldi/python-ly/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+options="!check" # tests are broken
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir dist \
+ --output-fd 3 3>&1 >&2
+
+ sphinx-build -b man doc doc/build/man/
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ dist/*.whl
+
+ mkdir -p "$pkgdir"/usr/share/man/man1/
+
+ install -m 644 doc/build/man/ly-server.1 doc/build/man/ly.1 \
+ "$pkgdir"/usr/share/man/man1/
+}
+
+sha512sums="
+28cf9a828a79ad473cb0429c3dd186d9028036bb6ab750aaf1d1299d1e4ac476262a4fcbcce0846fa4c851966d0e2dc9f263a7667613a5a2841ce0dd4c5b729a python-ly-0.9.8.tar.gz
+"
diff --git a/testing/py3-lzo/APKBUILD b/testing/py3-lzo/APKBUILD
index 417d7715a9c..1f2f4cdd5ef 100644
--- a/testing/py3-lzo/APKBUILD
+++ b/testing/py3-lzo/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=py3-lzo
-pkgver=1.14
+pkgver=1.16
pkgrel=1
pkgdesc="Python bindings for the LZO data compression library"
url="https://github.com/jd-boyd/python-lzo"
@@ -10,28 +10,33 @@ license="GPL-2.0-or-later"
depends="python3"
makedepends="
lzo-dev
- py3-build
+ py3-gpep517
py3-installer
py3-setuptools
py3-wheel
python3-dev
"
-checkdepends="py3-nose"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
source="https://github.com/jd-boyd/python-lzo/archive/v$pkgver/py3-lzo-$pkgver.tar.gz"
builddir="$srcdir/python-lzo-$pkgver"
build() {
- python3 -m build --skip-dependency-check --no-isolation --wheel .
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- python3 -m nose
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
}
package() {
- python3 -m installer -d "$pkgdir" dist/python_lzo-$pkgver-*.whl
+ python3 -m installer -d "$pkgdir" .dist/python_lzo-$pkgver-*.whl
}
sha512sums="
-0a541c247fe86007662ca107889e7d84da0c33881d74078bab0c178c2de0d72d27bc8bc1907ac750efd61fa3fd0a09f05188b5fe1c17f5dacc3428a24379da46 py3-lzo-1.14.tar.gz
+19a96a3b545d7f7addc549e1b928f39df57ec63acc35bedb2d625bd513fcaf4e1efebcaefc3e9ce45b56ee8ecd481027ceee38b4515532e6800ccf45e74e8faf py3-lzo-1.16.tar.gz
"
diff --git a/testing/py3-m2crypto/APKBUILD b/testing/py3-m2crypto/APKBUILD
index 6172e42cc72..5c5ec204cb5 100644
--- a/testing/py3-m2crypto/APKBUILD
+++ b/testing/py3-m2crypto/APKBUILD
@@ -2,15 +2,16 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-m2crypto
_pyname=M2Crypto
-pkgver=0.36.0
-pkgrel=2
+pkgver=0.41.0
+pkgrel=1
pkgdesc="A crypto and SSL toolkit for Python3"
options="!check" # test_public_encrypt and test_server_simple_timeouts fail
-url="https://pypi.python.org/pypi/M2Crypto/"
+url="https://pypi.org/project/M2Crypto/"
arch="all"
license="MIT"
depends="python3"
makedepends="python3-dev py3-setuptools openssl-dev swig"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pyname:0:1}/$_pyname/$_pyname-$pkgver.tar.gz"
builddir="$srcdir/$_pyname-$pkgver"
@@ -26,7 +27,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="5b7d6d10c943ff0e09e0e9748d5578e7e0f7659a73de4ba49481152bca05871aef2bfbb869e1636a7cebcf2dd8b9f67fb0d299a833d1d4ebd538031c35d7bca1 M2Crypto-0.36.0.tar.gz"
+sha512sums="
+50ca5e32ae999b9ecdc7f3bbd35221b4a7523ef29e54eb4bc266457723117718955f99b9e7ac42a4cb982f0e22a94e5c852d6886d7dfb157d040ad86c17660fb M2Crypto-0.41.0.tar.gz
+"
diff --git a/testing/py3-managesieve/APKBUILD b/testing/py3-managesieve/APKBUILD
deleted file mode 100644
index 1c3845b880f..00000000000
--- a/testing/py3-managesieve/APKBUILD
+++ /dev/null
@@ -1,34 +0,0 @@
-# Contributor: omni <omni+alpine@hack.org>
-# Maintainer: omni <omni+alpine@hack.org>
-pkgname=py3-managesieve
-_pkgname=managesieve
-pkgver=0.6
-pkgrel=3
-pkgdesc="ManageSieve client library, including user application sieveshell"
-url="https://managesieve.readthedocs.io/"
-arch="noarch"
-license="PSF-2.0 AND GPL-3.0-or-later"
-depends="python3"
-makedepends="py3-setuptools"
-checkdepends="py3-pytest py3-pytest-runner"
-source="https://gitlab.com/htgoebel/managesieve/-/archive/v$pkgver/managesieve-v$pkgver.tar.gz
- dont-depend-on-pytest-runner.patch
- "
-builddir="$srcdir/$_pkgname-v$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 setup.py test
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-00eb96c29b25888bab94cf72c7150e5c3f5c651ab7963099ac9f25c73b3eef31ebfde1723ab81811c33e922e91c43f452f2fd0c4206ba9b964db95ebb3a2325e managesieve-v0.6.tar.gz
-aa91457aa9fc224f2a0baf3acc8b3350984beaae14056b0183be640fdf4ffc2febafbb987a3b0f547176e13238399ddd434ab285a51e107c6723c5f9de982ed4 dont-depend-on-pytest-runner.patch
-"
diff --git a/testing/py3-managesieve/dont-depend-on-pytest-runner.patch b/testing/py3-managesieve/dont-depend-on-pytest-runner.patch
deleted file mode 100644
index 133ff3a5b1e..00000000000
--- a/testing/py3-managesieve/dont-depend-on-pytest-runner.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-We should not depend on pytest-runner unconditionally, there are situations where we don't run tests like when bootstrapping new arches
-
-diff --git a/setup.py b/setup.py
-index 1ba1dcd..38cb78a 100644
---- a/setup.py
-+++ b/setup.py
-@@ -17,7 +17,6 @@ with io.open(path.join(this_directory, 'README.txt'), encoding='utf-8') as f:
- setup (name = "managesieve",
- version='0.6',
- python_requires='>=2.7',
-- setup_requires=["pytest-runner"],
- tests_require=["pytest"],
- description = description,
- long_description = long_description,
diff --git a/testing/py3-mando/APKBUILD b/testing/py3-mando/APKBUILD
index 005e8ecf35c..4007eedb7ab 100644
--- a/testing/py3-mando/APKBUILD
+++ b/testing/py3-mando/APKBUILD
@@ -2,8 +2,8 @@
# Maintainer: Rejah Rehim <rejah@beaglesecurity.com>
pkgname=py3-mando
_pkgname=mando
-pkgver=0.7.0
-pkgrel=1
+pkgver=0.7.1
+pkgrel=2
pkgdesc="Python CLI apps with little to no effort at all!"
options="!check" # no test suite
url="https://mando.readthedocs.org/"
@@ -11,7 +11,7 @@ arch="noarch"
license="MIT"
depends="python3 py3-six"
makedepends="py3-setuptools"
-subpackages="$pkgname-doc"
+subpackages="$pkgname-doc $pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/m/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -20,7 +20,7 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
install -Dm644 README.rst -t "$pkgdir"/usr/share/doc/"$pkgname"
install -Dm644 LICENSE -t "$pkgdir"/usr/share/licenses/"$pkgname"
@@ -28,5 +28,5 @@ package() {
}
sha512sums="
-99f4dbf81cff848d5620648693032dc3217bfc9ac686b08eb486718a632fb8c7a2e60bd9993df88e19c5592a946e4e4aa8966bf2d6282c9762bf0b880565151d mando-0.7.0.tar.gz
+469ff797d70a2426042ac0a289bbdb04d53ad8f18c6ea58bf361d4aa13611beb77f845fe73f67b459717e1c886fde627f5f039488826b1ca75ca71665fc55772 mando-0.7.1.tar.gz
"
diff --git a/testing/py3-manuel/APKBUILD b/testing/py3-manuel/APKBUILD
index 690c1e79adb..60075d12b1f 100644
--- a/testing/py3-manuel/APKBUILD
+++ b/testing/py3-manuel/APKBUILD
@@ -1,17 +1,19 @@
# Contributor: Natanael Copa <ncopa@alpinelinux.org>
# Maintainer:
pkgname=py3-manuel
-pkgver=1.10.1
-pkgrel=1
+pkgver=1.12.4
+pkgrel=2
pkgdesc="mix and match traditional doctests with custom test syntax"
url="https://github.com/benji-york/manuel"
arch="noarch"
license="Apache-2.0"
-depends="python3"
+depends="python3 py3-six"
makedepends="py3-setuptools"
checkdepends="py3-zope-testing"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/benji-york/manuel/archive/refs/tags/$pkgver.tar.gz"
builddir="$srcdir/manuel-$pkgver"
+options="!check" # fail matching exact string against newer dep versions
build() {
python3 setup.py build
@@ -22,7 +24,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="7109852a80097a12237a363c91ac433dd2662e238ab4f20757b4d4b93019d0ada19069fd45a13a66128adf4dbc32f162d12a90879db2f2eb4748635118d75072 py3-manuel-1.10.1.tar.gz"
+sha512sums="
+e39c93a6be92b2a5c09c461e2341690f670919b9bcb7665771cba0a0a4f6d695e4ad1ae53641f73f8e54b5ad8b4485831b480874936dc2ad17cbc88abfe2935c py3-manuel-1.12.4.tar.gz
+"
diff --git a/testing/py3-mapbox-earcut/APKBUILD b/testing/py3-mapbox-earcut/APKBUILD
new file mode 100644
index 00000000000..99db5b5f731
--- /dev/null
+++ b/testing/py3-mapbox-earcut/APKBUILD
@@ -0,0 +1,32 @@
+# Contributor: Aiden Grossman <agrossman154@yahoo.com>
+# Maintainer: Aiden Grossman <agrossman154@yahoo.com>
+pkgname=py3-mapbox-earcut
+pkgver=1.0.1
+pkgrel=0
+pkgdesc="Python bindings for the mapbox earcut c++ library"
+url="https://github.com/skogler/mapbox_earcut_python"
+arch="all"
+license="ISC"
+depends="py3-numpy"
+makedepends="py3-setuptools py3-pybind11-dev python3-dev"
+checkdepends="pytest"
+source="$pkgname-$pkgver.tar.gz::https://github.com/skogler/mapbox_earcut_python/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/mapbox_earcut_python-$pkgver"
+
+build() {
+ python3 setup.py build
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages test-env
+ test-env/bin/python3 setup.py install
+ test-env/bin/python3 -m pytest
+}
+
+package() {
+ python3 setup.py install --skip-build --root="$pkgdir"
+}
+
+sha512sums="
+cdb32585cbaf74c15e59af0ae70d983dd2f9bc9cfe1b59b3eadc4d442f7d962241854b589a035deae67cacd9334833b911d0981f0d417fe587348fc7d24f0c0a py3-mapbox-earcut-1.0.1.tar.gz
+"
diff --git a/testing/py3-marisa-trie/APKBUILD b/testing/py3-marisa-trie/APKBUILD
new file mode 100644
index 00000000000..a594c5a0356
--- /dev/null
+++ b/testing/py3-marisa-trie/APKBUILD
@@ -0,0 +1,52 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-marisa-trie
+pkgver=1.1.0
+pkgrel=0
+pkgdesc="Static memory-efficient and fast Trie-like structures for Python"
+url="https://github.com/kmike/marisa-trie"
+arch="all"
+license="MIT"
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ python3-dev
+ "
+checkdepends="
+ py3-hypothesis
+ py3-pytest
+ py3-readme_renderer
+ "
+source="https://pypi.python.org/packages/source/m/marisa-trie/marisa-trie-$pkgver.tar.gz"
+builddir="$srcdir/marisa-trie-$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
+ case "$CARCH" in
+ arm*)
+ .testenv/bin/python3 -m pytest \
+ --ignore tests/test_trie.py
+ # https://github.com/pytries/marisa-trie/issues/96
+ ;;
+ *)
+ .testenv/bin/python3 -m pytest
+ ;;
+ esac
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+a49759bc3b1148766c80f99dd450b48cbc4cf8d954de7d3a3caf6fd7d9b6536896aca185ae085fc8d534da182a846ef69adb8ef4bd1c12709efeb853ea607800 marisa-trie-1.1.0.tar.gz
+"
diff --git a/testing/py3-markdown2/APKBUILD b/testing/py3-markdown2/APKBUILD
index ac944bb39b0..7a75ead81ff 100644
--- a/testing/py3-markdown2/APKBUILD
+++ b/testing/py3-markdown2/APKBUILD
@@ -1,6 +1,6 @@
# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
pkgname=py3-markdown2
-pkgver=2.4.1
+pkgver=2.4.13
pkgrel=1
pkgdesc="fast and complete implementation of Markdown in Python"
url="https://github.com/trentm/python-markdown2"
@@ -10,24 +10,34 @@ depends="
python3
"
makedepends="
+ py3-gpep517
py3-setuptools
+ py3-wheel
"
-_pyname="markdown2"
-_pypiprefix="${_pyname%${_pyname#?}}"
-source="https://files.pythonhosted.org/packages/source/$_pypiprefix/$_pyname/$_pyname-$pkgver.tar.gz"
-builddir="$srcdir/$_pyname-$pkgver"
+checkdepends="
+ py3-pytest
+ "
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/m/markdown2/markdown2-$pkgver.tar.gz"
+builddir="$srcdir/markdown2-$pkgver"
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- python3 setup.py test
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
+
sha512sums="
-fa62640a135bb01b2dc82f658089c5880a3183c3b6e498ce76a27075d3045d70d7e00b9d497180a63c00cbd9ece83ebabaa8cd31ee326160d891fb422f43528e markdown2-2.4.1.tar.gz
+df015b53a87138b55fb6ab28c5b4cc8b1a36867a9a1b0fab962399c467e9847b249bff6a8ad920d56c4b72a02b46ffc536e61fa3168794403602926e65091748 markdown2-2.4.13.tar.gz
"
diff --git a/testing/py3-marshmallow-enum/APKBUILD b/testing/py3-marshmallow-enum/APKBUILD
index cb085684308..4e28559acc6 100644
--- a/testing/py3-marshmallow-enum/APKBUILD
+++ b/testing/py3-marshmallow-enum/APKBUILD
@@ -3,26 +3,29 @@
pkgname=py3-marshmallow-enum
_pkgname=marshmallow_enum
pkgver=1.5.1
-pkgrel=3
+pkgrel=7
pkgdesc="Enum field for use with Marshmallow."
url="https://github.com/justanr/marshmallow_enum"
-arch="all"
+arch="noarch"
license="MIT"
-depends="python3 py3-marshmallow"
-makedepends="py3-setuptools"
+depends="py3-marshmallow"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="marshmallow-enum-$pkgver.tar.gz::https://github.com/justanr/marshmallow_enum/archive/v1.5.1.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
+options="!check" # no tests
build() {
- python3 setup.py build
-}
-
-check() {
- python3 setup.py test
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
-sha512sums="989fe58613dc28f242b1990a727a87c453809ad2de9355595e53e2c569de6434c76c150522c31189282edca74740dc0aabfafa57e2f78397644adae1b6d99f7d marshmallow-enum-1.5.1.tar.gz"
+sha512sums="
+989fe58613dc28f242b1990a727a87c453809ad2de9355595e53e2c569de6434c76c150522c31189282edca74740dc0aabfafa57e2f78397644adae1b6d99f7d marshmallow-enum-1.5.1.tar.gz
+"
diff --git a/testing/py3-marshmallow/APKBUILD b/testing/py3-marshmallow/APKBUILD
index ec9c115d68b..5dc185bec5d 100644
--- a/testing/py3-marshmallow/APKBUILD
+++ b/testing/py3-marshmallow/APKBUILD
@@ -2,30 +2,35 @@
# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=py3-marshmallow
_pkgname=marshmallow
-pkgver=3.15.0
-pkgrel=0
+pkgver=3.21.1
+pkgrel=1
pkgdesc="A lightweight library for converting complex objects to and from simple Python datatypes"
url="https://github.com/marshmallow-code/marshmallow"
-arch="all"
+arch="noarch"
license="MIT"
-depends="python3"
-makedepends="py3-setuptools"
+makedepends="py3-flit-core py3-gpep517 py3-wheel"
checkdepends="py3-pytest py3-tz py3-simplejson"
+subpackages="$pkgname-pyc"
source="py3-marshmallow-$pkgver.tar.gz::https://github.com/marshmallow-code/marshmallow/archive/$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- python3 setup.py test
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ gpep517 install-wheel --destdir .testenv --prefix '' .dist/*.whl
+ .testenv/bin/python3 -m pytest -k 'not test_unknown_parameter_value_is_validated'
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
-a74711c26daa9d63a4e6e9e5e5b57bd5c6ea12d2676a7deacd293b5c0cc197d8153107a2e83a88d0f746ad3c9539ffc060b27932cf8cd6dd73d89e34a29a0fa9 py3-marshmallow-3.15.0.tar.gz
+6de06ced6a58ef0c312ee4c1edfbe011401bba08c27fcf2dd2c3e44cb072cded1cf5f16a4d4945344d56f0d26b5eb165f6d031b50c215f122c7cc6fe25389318 py3-marshmallow-3.21.1.tar.gz
"
diff --git a/testing/py3-matplotlib-venn/APKBUILD b/testing/py3-matplotlib-venn/APKBUILD
deleted file mode 100644
index a36d57ec598..00000000000
--- a/testing/py3-matplotlib-venn/APKBUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-# Contributor: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-# Maintainer: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-pkgname=py3-matplotlib-venn
-_pkgorig=matplotlib-venn
-pkgver=0.11.7
-pkgrel=0
-pkgdesc="Functions for plotting area-proportional two- and three-way Venn diagrams in matplotlib"
-url="https://github.com/konstantint/matplotlib-venn"
-arch="noarch !riscv64" # py3-matplotlib
-license="MIT"
-depends="python3 py3-matplotlib py3-scipy py3-numpy"
-checkdepends="python3-dev py3-pytest"
-makedepends="py3-setuptools"
-source="$pkgname-$pkgver.tar.gz::https://github.com/konstantint/$_pkgorig/archive/$pkgver/$_pkgorig-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgorig-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 -m pytest
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-
-sha512sums="
-860c4f46dc4ea9e94ad60294c9fa49ad0c92d85b8e560734be2d75ef3d2994f6aaf907bacb1296fff4d72517700268331a72c63f80f4740d9437fb79e1b7cfa7 py3-matplotlib-venn-0.11.7.tar.gz
-"
diff --git a/testing/py3-mbedtls/APKBUILD b/testing/py3-mbedtls/APKBUILD
new file mode 100644
index 00000000000..def90e568d2
--- /dev/null
+++ b/testing/py3-mbedtls/APKBUILD
@@ -0,0 +1,52 @@
+# Contributor: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
+# Maintainer: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
+pkgname=py3-mbedtls
+_pyname=python-mbedtls
+pkgver=2.9.2
+pkgrel=1
+pkgdesc="hash, hmac, RSA, ECC, X.509, TLS, DTLS, handshakes, and secrets with an mbed TLS back end"
+url="https://github.com/Synss/python-mbedtls"
+arch="all"
+license="MIT"
+depends="
+ mbedtls2
+ py3-certifi
+ py3-typing-extensions
+ "
+makedepends="
+ cython
+ mbedtls2-dev
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ python3-dev
+ "
+checkdepends="
+ py3-pytest-repeat
+ py3-pytest-timeout
+ py3-readme_renderer
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/Synss/python-mbedtls/archive/refs/tags/$pkgver.tar.gz"
+builddir="$srcdir/$_pyname-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" .dist/*.whl
+ rm -rf "$pkgdir"/usr/lib/python3.*/site-packages/tests/ # remove tests
+}
+
+sha512sums="
+3b71f3e2c898d9fec01bf5b2a3e97bc2fa3688efc80e096bd57b902bf8e34ea5ba0cb221ea46c0fa844d01610918da61bf6ac118b5262b4c11f22bef80a5ce04 py3-mbedtls-2.9.2.tar.gz
+"
diff --git a/testing/py3-memory-profiler/APKBUILD b/testing/py3-memory-profiler/APKBUILD
new file mode 100644
index 00000000000..df9b2980827
--- /dev/null
+++ b/testing/py3-memory-profiler/APKBUILD
@@ -0,0 +1,60 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-memory-profiler
+pkgver=0.61
+pkgrel=1
+pkgdesc="A module for monitoring memory usage of a python program"
+url="https://github.com/pythonprofilers/memory_profiler"
+arch="noarch"
+license="Apache-2.0"
+depends="py3-psutil"
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="
+ py3-pytest
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/pythonprofilers/memory_profiler/archive/refs/tags/v$pkgver.tar.gz
+ assertRaisesRegexp.patch
+ "
+builddir="$srcdir/memory_profiler-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m memory_profiler test/test_func.py
+ .testenv/bin/python3 -m memory_profiler test/test_loop.py
+ .testenv/bin/python3 -m memory_profiler test/test_mprofile.py
+ .testenv/bin/python3 -m memory_profiler test/test_as.py
+ .testenv/bin/python3 -m memory_profiler test/test_global.py
+ .testenv/bin/python3 -m memory_profiler test/test_precision_command_line.py
+ .testenv/bin/python3 -m memory_profiler test/test_gen.py
+ .testenv/bin/python3 -m memory_profiler test/test_unicode.py
+ .testenv/bin/python3 test/test_tracemalloc.py
+ .testenv/bin/python3 test/test_import.py
+ .testenv/bin/python3 test/test_memory_usage.py
+ .testenv/bin/python3 test/test_precision_import.py
+ .testenv/bin/python3 test/test_exception.py
+ .testenv/bin/python3 test/test_exit_code.py
+ .testenv/bin/python3 test/test_mprof.py
+ .testenv/bin/python3 test/test_async.py
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+02c70a049107ad4df635e20e22eaaa91fd4e4fd29690b0a7c314e08ed6e076bbb81f85dd97924ed35f7f0133cfd3c7e55b35400449489733beb172debe592c4e py3-memory-profiler-0.61.tar.gz
+a15ff3b422fd0c7c32376e845612d163b587542fed292fe6fc931b1010785574bf255f724feac64911b1d89e4ddf04c5515084da908eb94674ae2490c290989d assertRaisesRegexp.patch
+"
diff --git a/testing/py3-memory-profiler/assertRaisesRegexp.patch b/testing/py3-memory-profiler/assertRaisesRegexp.patch
new file mode 100644
index 00000000000..df0da779ae4
--- /dev/null
+++ b/testing/py3-memory-profiler/assertRaisesRegexp.patch
@@ -0,0 +1,14 @@
+diff --git a/test/test_exit_code.py b/test/test_exit_code.py
+index bae2be9..3a37063 100644
+--- a/test/test_exit_code.py
++++ b/test/test_exit_code.py
+@@ -20,3 +20,3 @@ class TestExitCode(unittest.TestCase):
+ sys.argv = ['<ignored>', '--exit-code', tmpfile.name]
+- self.assertRaisesRegexp(SystemExit, '0', self.run_action)
++ self.assertRaisesRegex(SystemExit, '0', self.run_action)
+
+@@ -29,3 +29,3 @@ class TestExitCode(unittest.TestCase):
+ sys.argv = ['<ignored>', '--exit-code', tmpfile.name]
+- self.assertRaisesRegexp(SystemExit, '1', self.run_action)
++ self.assertRaisesRegex(SystemExit, '1', self.run_action)
+
diff --git a/testing/py3-mergedeep/APKBUILD b/testing/py3-mergedeep/APKBUILD
deleted file mode 100644
index 8ff97c32e8d..00000000000
--- a/testing/py3-mergedeep/APKBUILD
+++ /dev/null
@@ -1,26 +0,0 @@
-# Contributor: David Demelier <markand@malikania.fr>
-# Maintainer: David Demelier <markand@malikania.fr>
-pkgname=py3-mergedeep
-pkgver=1.3.4
-pkgrel=1
-pkgdesc="a deep merge function for python"
-url="https://github.com/clarketm/mergedeep"
-arch="noarch"
-license="MIT"
-depends="python3"
-makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/m/mergedeep/mergedeep-$pkgver.tar.gz"
-builddir="$srcdir/mergedeep-$pkgver"
-options="!check" # No tests.
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-4b7d56a3338d23def1c3f101ce568e1b6ae0384ca67975489de296f01fd5f98c35d26a305c073b1de22b2a4dba4e8a3a374b1f191d6224c3493fac7d05ea37b5 mergedeep-1.3.4.tar.gz
-"
diff --git a/testing/py3-migen/0001-fix-get_var_name.patch b/testing/py3-migen/0001-fix-get_var_name.patch
new file mode 100644
index 00000000000..7a241d7fb61
--- /dev/null
+++ b/testing/py3-migen/0001-fix-get_var_name.patch
@@ -0,0 +1,113 @@
+Take get_var_name() from amaranth with minor impedance matching. This
+fixes:
+
+ test/test_phy_utils.py:54: in serializer_test
+ dut = Serializer(clk=clk, clkdiv=clkdiv, i_dw=data_width, o_dw=1)
+ litedram/phy/utils.py:240: in __init__
+ if i is None: i = Signal(i_dw)
+ /usr/lib/python3.11/site-packages/migen/fhdl/structure.py:395: in __init__
+ self.backtrace = _tracer.trace_back(name)
+ /usr/lib/python3.11/site-packages/migen/fhdl/tracer.py:111: in trace_back
+ varname = get_var_name(frame)
+
+See https://github.com/amaranth-lang/amaranth/blob/main/amaranth/tracer.py for
+original source.
+
+See https://github.com/m-labs/migen/pull/283 for an effort to upstream the fix.
+--- a/migen/fhdl/tracer.py 2024-01-11 10:35:38.211748883 +0100
++++ b/migen/fhdl/tracer.py 2024-01-11 10:36:04.864735268 +0100
+@@ -1,56 +1,55 @@
+ import inspect
++import sys
+ from sys import version_info
+ from opcode import opname
+ from collections import defaultdict
+
+-# All opcodes are 2 bytes in length in Python 3.6
+-def _bytecode_length_version_guard(old_len):
+- return old_len if version_info[1] < 6 else 2
+-
+-_call_opcodes = {
+- "CALL_FUNCTION" : _bytecode_length_version_guard(3),
+- "CALL_FUNCTION_KW" : _bytecode_length_version_guard(3),
+-}
+-
+-if version_info[1] < 6:
+- _call_opcodes["CALL_FUNCTION_VAR"] = 3
+- _call_opcodes["CALL_FUNCTION_VAR_KW"] = 3
+-elif version_info[1] < 7:
+- _call_opcodes["CALL_FUNCTION_EX"] = 2
+-else:
+- _call_opcodes["CALL_FUNCTION_EX"] = 2
+- _call_opcodes["CALL_METHOD"] = 2
+-
+-_load_build_opcodes = {
+- "LOAD_GLOBAL" : _bytecode_length_version_guard(3),
+- "LOAD_ATTR" : _bytecode_length_version_guard(3),
+- "LOAD_FAST" : _bytecode_length_version_guard(3),
+- "LOAD_DEREF" : _bytecode_length_version_guard(3),
+- "DUP_TOP" : _bytecode_length_version_guard(1),
+- "BUILD_LIST" : _bytecode_length_version_guard(3),
+-}
+-
+
+ def get_var_name(frame):
+ code = frame.f_code
+ call_index = frame.f_lasti
+- call_opc = opname[code.co_code[call_index]]
+- if call_opc not in _call_opcodes:
++ while call_index > 0 and opname[code.co_code[call_index]] == "CACHE":
++ call_index -= 2
++ while True:
++ call_opc = opname[code.co_code[call_index]]
++ if call_opc in ("EXTENDED_ARG",):
++ call_index += 2
++ else:
++ break
++ if call_opc not in ("CALL_FUNCTION", "CALL_FUNCTION_KW", "CALL_FUNCTION_EX",
++ "CALL_METHOD", "CALL", "CALL_KW"):
+ return None
+- index = call_index+_call_opcodes[call_opc]
++
++ index = call_index + 2
++ imm = 0
+ while True:
+ opc = opname[code.co_code[index]]
+- if opc == "STORE_NAME" or opc == "STORE_ATTR":
+- name_index = int(code.co_code[index+1])
+- return code.co_names[name_index]
++ if opc == 'EXTENDED_ARG':
++ imm |= int(code.co_code[index + 1])
++ imm <<= 8
++ index += 2
++ elif opc in ("STORE_NAME", "STORE_ATTR"):
++ imm |= int(code.co_code[index + 1])
++ return code.co_names[imm]
+ elif opc == "STORE_FAST":
+- name_index = int(code.co_code[index+1])
+- return code.co_varnames[name_index]
++ imm |= int(code.co_code[index + 1])
++ if sys.version_info >= (3, 11):
++ return code._varname_from_oparg(imm)
++ else:
++ return code.co_varnames[imm]
+ elif opc == "STORE_DEREF":
+- name_index = int(code.co_code[index+1])
+- return code.co_cellvars[name_index]
+- elif opc in _load_build_opcodes:
+- index += _load_build_opcodes[opc]
++ imm |= int(code.co_code[index + 1])
++ if sys.version_info >= (3, 11):
++ return code._varname_from_oparg(imm)
++ else:
++ if imm < len(code.co_cellvars):
++ return code.co_cellvars[imm]
++ else:
++ return code.co_freevars[imm - len(code.co_cellvars)]
++ elif opc in ("LOAD_GLOBAL", "LOAD_NAME", "LOAD_ATTR", "LOAD_FAST", "LOAD_DEREF",
++ "DUP_TOP", "BUILD_LIST", "CACHE", "COPY"):
++ imm = 0
++ index += 2
+ else:
+ return None
+
diff --git a/testing/py3-migen/0002-fix-incorrect-use-of-is.patch b/testing/py3-migen/0002-fix-incorrect-use-of-is.patch
new file mode 100644
index 00000000000..08f106fd0d4
--- /dev/null
+++ b/testing/py3-migen/0002-fix-incorrect-use-of-is.patch
@@ -0,0 +1,29 @@
+Fix:
+
+ migen/fhdl/visit.py:86
+ /builds/maribu/aports/testing/py3-migen/src/migen-0.9.2/migen/fhdl/visit.py:86: SyntaxWarning: "is" with a literal. Did you mean "=="?
+ key=lambda x: -1 if x[0] is "default" else x[0].duid):
+ migen/fhdl/visit.py:191
+ /builds/maribu/aports/testing/py3-migen/src/migen-0.9.2/migen/fhdl/visit.py:191: SyntaxWarning: "is" with a literal. Did you mean "=="?
+ key=lambda x: -1 if x[0] is "default" else x[0].duid)}
+ migen/test/test_platform.py:47
+--- a/migen/fhdl/visit.py 2024-01-11 16:52:08.195971473 +0100
++++ b/migen/fhdl/visit.py 2024-01-11 16:52:44.862281145 +0100
+@@ -83,7 +83,7 @@ class NodeVisitor:
+ def visit_Case(self, node):
+ self.visit(node.test)
+ for v, statements in sorted(node.cases.items(),
+- key=lambda x: -1 if x[0] is "default" else x[0].duid):
++ key=lambda x: -1 if isinstance(x[0], str) and x[0] == "default" else x[0].duid):
+ self.visit(statements)
+
+ def visit_Fragment(self, node):
+@@ -188,7 +188,7 @@ class NodeTransformer:
+ def visit_Case(self, node):
+ cases = {v: self.visit(statements)
+ for v, statements in sorted(node.cases.items(),
+- key=lambda x: -1 if x[0] is "default" else x[0].duid)}
++ key=lambda x: -1 if isinstance(x[0], str) and x[0] == "default" else x[0].duid)}
+ r = Case(self.visit(node.test), cases)
+ return r
+
diff --git a/testing/py3-migen/APKBUILD b/testing/py3-migen/APKBUILD
new file mode 100644
index 00000000000..7d9581ee831
--- /dev/null
+++ b/testing/py3-migen/APKBUILD
@@ -0,0 +1,51 @@
+# Contributor: Marian Buschsieweke <marian.buschsieweke@posteo.net>
+# Maintainer: Marian Buschsieweke <marian.buschsieweke@posteo.net>
+pkgname=py3-migen
+_pkgname=migen
+pkgver=0.9.2
+pkgrel=2
+pkgdesc="Python-based tool that aims at automating further the VLSI design process"
+url="https://m-labs.hk/gateware/migen/"
+license="BSD-2-Clause"
+arch="noarch"
+depends="python3"
+makedepends="
+ py3-setuptools
+ py3-gpep517
+ py3-wheel
+ py3-installer
+ "
+checkdepends="
+ py3-pytest
+ "
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/m-labs/migen/archive/refs/tags/$pkgver.tar.gz
+
+ 0001-fix-get_var_name.patch
+ 0002-fix-incorrect-use-of-is.patch
+ "
+builddir="$srcdir"/$_pkgname-$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="
+9ff39f9f9b7e99b7d933e39091eb7e98c413ec3e60b98722d813df30fe95484470a1a027ac08bdf065bf688f4bb53af2c4618d3bbc0f1086adab33e149dca98f py3-migen-0.9.2.tar.gz
+6287fc34278e84b942a5aaefafa86d1078f393a60f34393c39a4f8226c4ee7913b4f156a517d7deb26a92f90331fed84ac529bbb4dd36ca2d052492e72cf6402 0001-fix-get_var_name.patch
+9ad29c4d5f95c31073d34b08dcd7de243330a5eb90f001f73fc4c7a2af17ebbb9855c431ae243ce4df0908f92155e38b60282779670c79e8b04dd44e110d75b9 0002-fix-incorrect-use-of-is.patch
+"
diff --git a/testing/py3-milc/APKBUILD b/testing/py3-milc/APKBUILD
index a411b905a32..e7bf769f0f4 100644
--- a/testing/py3-milc/APKBUILD
+++ b/testing/py3-milc/APKBUILD
@@ -1,30 +1,36 @@
# Contributor: Galen Abell <galen@galenabell.com>
# Maintainer: Galen Abell <galen@galenabell.com>
pkgname=py3-milc
-pkgver=1.6.6
-pkgrel=0
+pkgver=1.8.0
+pkgrel=1
pkgdesc="Opinionated Batteries-Included Python 3 CLI Framework"
url="https://milc.clueboard.co"
arch="noarch"
license="MIT"
depends="python3 py3-appdirs py3-argcomplete py3-colorama py3-halo"
-makedepends="py3-setuptools"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
checkdepends="py3-pytest py3-semver"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/clueboard/milc/archive/$pkgver.tar.gz"
builddir="$srcdir/milc-$pkgver"
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- PYTHONPATH="." pytest
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
-070f3402c2e4268c49957b5d6dd958959d7611a21651e3e2b0a0a69a957bfbf934705bb6ecfd7275deefe6bcae62d3a1bda8f5ae9e52541b9a2a26d0eac38bf0 py3-milc-1.6.6.tar.gz
+2789b7f8f4c639fb53ec223bac935de6da5d6c4ac8fda6a070fe1a9546d138323041d53b37d6a1478b0883d9945b9ec62386825109cd9816ec5d7371cc52c64b py3-milc-1.8.0.tar.gz
"
diff --git a/testing/py3-minidb/APKBUILD b/testing/py3-minidb/APKBUILD
index 9d772513a6e..c773a7f2263 100644
--- a/testing/py3-minidb/APKBUILD
+++ b/testing/py3-minidb/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Thiago Perrotta <tbperrotta@gmail.com>
# Maintainer: Thiago Perrotta <tbperrotta@gmail.com>
pkgname=py3-minidb
-pkgver=2.0.5
-pkgrel=0
+pkgver=2.0.7
+pkgrel=3
pkgdesc="Simple SQLite3 store for Python objects"
url="https://thp.io/2010/minidb"
arch="noarch"
@@ -10,7 +10,7 @@ license="ISC"
depends="python3"
makedepends="py3-setuptools"
checkdepends="py3-pytest"
-subpackages="$pkgname-doc"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/m/minidb/minidb-$pkgver.tar.gz"
builddir="$srcdir/minidb-$pkgver/"
@@ -23,12 +23,9 @@ check() {
}
package() {
- python3 setup.py install --root="$pkgdir" --optimize=1 --skip-build
-
- install -d "$pkgdir/usr/share/licenses/$pkgname"
- sed -n '/# Copyright/,/OF THIS SOFTWARE./p' minidb.py > "$pkgdir/usr/share/licenses/$pkgname/COPYING"
+ python3 setup.py install --root="$pkgdir" --skip-build
}
sha512sums="
-889e678a99c7a5dff5ae7ae2c3540e978f09616384450934f2f16797a3a06c9d863b57eced4b2cde0a4bdfa4923b754e473bde0905c86d948d3bdb81a8e6dbad minidb-2.0.5.tar.gz
+dc04d2d51fdc4ecf30e234cb25e17bf0cd5c320dfca6bdd306b61eced89fe8f1fb5df93111ec0c04f1b258ecde467203a968e61b913feee87301dec7e93d9412 minidb-2.0.7.tar.gz
"
diff --git a/testing/py3-minidump/APKBUILD b/testing/py3-minidump/APKBUILD
new file mode 100644
index 00000000000..164c3a73605
--- /dev/null
+++ b/testing/py3-minidump/APKBUILD
@@ -0,0 +1,34 @@
+# Contributor: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
+# Maintainer: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
+pkgname=py3-minidump
+_pyname=minidump
+pkgver=0.0.23
+pkgrel=1
+pkgdesc="Python library to parse and read Microsoft minidump file format"
+url="https://github.com/skelsec/minidump"
+arch="noarch"
+license="MIT"
+depends="python3"
+makedepends="
+ py3-gpep517
+ py3-wheel
+ py3-setuptools
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/skelsec/minidump/archive/refs/tags/$pkgver.tar.gz"
+builddir="$srcdir/$_pyname-$pkgver"
+options="!check" # no tests provided
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" .dist/*.whl
+}
+
+sha512sums="
+df938d85196726db78f5c5a3809963fef8a1a473a4afb0869c271226166edf2e8c6329d1b0946fe297a2d7e01d4e1da55baa4b3ce59a74429b17434521bf4d6d py3-minidump-0.0.23.tar.gz
+"
diff --git a/testing/py3-minikerberos/APKBUILD b/testing/py3-minikerberos/APKBUILD
new file mode 100644
index 00000000000..07f1a845853
--- /dev/null
+++ b/testing/py3-minikerberos/APKBUILD
@@ -0,0 +1,44 @@
+# Contributor: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
+# Maintainer: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
+pkgname=py3-minikerberos
+_pyname=minikerberos
+pkgver=0.4.4
+pkgrel=1
+pkgdesc="Kerberos manipulation library in pure Python"
+url="https://github.com/skelsec/minikerberos"
+arch="noarch"
+license="MIT"
+depends="
+ py3-asn1crypto
+ py3-asysocks
+ py3-oscrypto
+ py3-six
+ py3-tqdm
+ py3-unicrypto
+ python3
+ "
+makedepends="
+ py3-gpep517
+ py3-wheel
+ py3-setuptools
+ "
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/skelsec/minikerberos/archive/refs/tags/$pkgver.tar.gz"
+builddir="$srcdir/$_pyname-$pkgver"
+options="!check" # test suite requires connection to a KDC service (see /tests/config.py)
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" .dist/*.whl
+ rm -rf "$pkgdir"/usr/lib/python3.*/site-packages/tests/ # remove tests
+}
+
+sha512sums="
+3e7e5e464eaf2c0b94e11ead13a1d2fd56e45a36fb9592aaa5d6de4beeecb8960df523ab647b1e9ab0e8104cec557803bd3dbfa1ae1dbf3333f4ecbd4d6fa198 py3-minikerberos-0.4.4.tar.gz
+"
diff --git a/testing/py3-minio/APKBUILD b/testing/py3-minio/APKBUILD
new file mode 100644
index 00000000000..6080669f60d
--- /dev/null
+++ b/testing/py3-minio/APKBUILD
@@ -0,0 +1,38 @@
+# Maintainer: Cowington Post <cowingtonpost@gmail.com>
+pkgname=py3-minio
+pkgver=7.2.0
+pkgrel=1
+pkgdesc="MinIO client SDK for Python"
+url="https://docs.min.io/docs/python-client-quickstart-guide.html"
+arch="noarch"
+license="Apache-2.0"
+depends="py3-certifi py3-urllib3 py3-argon2-cffi py3-pycryptodome"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="https://github.com/minio/minio-py/archive/$pkgver/py3-minio-$pkgver.tar.gz
+ assertEquals.patch
+ "
+builddir="$srcdir/minio-py-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+13d6771043538a5eb4108e693e8135ecaae0aea23492fab735b0de921ac575528a72520356281da0bbaf0b56cfef0026d7d51b64ad30881d8cdb67f9723be424 py3-minio-7.2.0.tar.gz
+31b52c6250fa31347aeae234e62978312163f8c5a7b407521000c966a908260b3578108473f26170238b8fd0d88690df7ed861012933dc96f0948d9d16899298 assertEquals.patch
+"
diff --git a/testing/py3-minio/assertEquals.patch b/testing/py3-minio/assertEquals.patch
new file mode 100644
index 00000000000..ab1abf1e678
--- /dev/null
+++ b/testing/py3-minio/assertEquals.patch
@@ -0,0 +1,9 @@
+diff --git a/tests/unit/crypto_test.py b/tests/unit/crypto_test.py
+index 367399a..ae7846c 100644
+--- a/tests/unit/crypto_test.py
++++ b/tests/unit/crypto_test.py
+@@ -27,3 +27,3 @@ class CryptoTest(TestCase):
+ decrypted = decrypt(encrypted, secret).decode()
+- self.assertEquals(plaintext, decrypted)
++ self.assertEqual(plaintext, decrypted)
+
diff --git a/testing/py3-mistletoe/APKBUILD b/testing/py3-mistletoe/APKBUILD
new file mode 100644
index 00000000000..337f38d6e19
--- /dev/null
+++ b/testing/py3-mistletoe/APKBUILD
@@ -0,0 +1,32 @@
+# Contributor: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
+# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
+pkgname=py3-mistletoe
+_pkgname="${pkgname#py3-}"
+pkgver=1.2.1
+pkgrel=1
+pkgdesc="markdown parser in pure Python, designed to be fast, spec-compliant and fully customizable"
+url="https://github.com/miyuchina/mistletoe"
+arch="noarch"
+license="MIT"
+depends="py3-pygments"
+makedepends="py3-setuptools"
+checkdepends="py3-pytest py3-requests py3-yaml py3-parameterized"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/miyuchina/mistletoe/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ python3 setup.py build
+}
+
+check() {
+ pytest
+}
+
+package() {
+ python3 setup.py install --skip-build --root="$pkgdir"
+}
+
+sha512sums="
+a6dc5dc021d001a0b34a4d6cb5007ef55958b93d143937ecde07602aaf25e3a9c3116be2ed8f8cd90353524cf8d4058239f4018b726bec007b13d917e6deefac py3-mistletoe-1.2.1.tar.gz
+"
diff --git a/testing/py3-mitmproxy-rs/APKBUILD b/testing/py3-mitmproxy-rs/APKBUILD
new file mode 100644
index 00000000000..5d80b743efa
--- /dev/null
+++ b/testing/py3-mitmproxy-rs/APKBUILD
@@ -0,0 +1,46 @@
+# Maintainer: Michał Polański <michal@polanski.me>
+pkgname=py3-mitmproxy-rs
+pkgver=0.5.1
+pkgrel=0
+pkgdesc="mitmproxy modules written in Rust"
+url="https://github.com/mitmproxy/mitmproxy_rs"
+license="MIT"
+arch="all !ppc64le !riscv64 !s390x" # fails to build ring crate
+makedepends="
+ cargo
+ py3-gpep517
+ py3-installer
+ py3-maturin
+ py3-setuptools
+ py3-wheel
+ "
+subpackages="$pkgname-pyc"
+source="https://github.com/mitmproxy/mitmproxy_rs/archive/$pkgver/py3-mitmproxy-rs-$pkgver.tar.gz"
+builddir="$srcdir/mitmproxy_rs-$pkgver"
+options="net" # cargo
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cd mitmproxy-rs
+ gpep517 build-wheel \
+ --wheel-dir "$builddir"/.dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+e08f632f7acbff0c99cbac479ff2a6fee5f1343c3fe8f1ed0d749d13f159385eee1cdd28bb182e6ef9145957dbc66cd74ae8535c1551917062881aff22676969 py3-mitmproxy-rs-0.5.1.tar.gz
+"
diff --git a/testing/py3-mmh3/APKBUILD b/testing/py3-mmh3/APKBUILD
deleted file mode 100644
index 80022d6c0ab..00000000000
--- a/testing/py3-mmh3/APKBUILD
+++ /dev/null
@@ -1,34 +0,0 @@
-# Contributor: Oleg Titov <oleg.titov@gmail.com>
-# Maintainer: Oleg Titov <oleg.titov@gmail.com>
-pkgname=py3-mmh3
-pkgver=3.0.0
-pkgrel=1
-pkgdesc="Python wrapper for MurmurHash (MurmurHash3), a set of fast and robust hash functions"
-url="https://github.com/hajimes/mmh3"
-arch="all"
-license="CC0-1.0"
-depends="python3"
-makedepends="python3-dev py3-setuptools"
-checkdepends="py3-numpy"
-subpackages="$pkgname-doc"
-source="mmh3-$pkgver.tar.gz::https://github.com/hajimes/mmh3/archive/v$pkgver.tar.gz"
-builddir="$srcdir/mmh3-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- PYTHONPATH="$(echo $PWD/build/lib.*)" python3 test_mmh3.py
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-
- install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
- install -Dm644 README.md "$pkgdir/usr/share/doc/$pkgname/README.md"
-}
-
-sha512sums="
-40ef0a477b18544a4353c45cd5444039e2f79a3a047a6f5ba9c9595e45211429f94ba23402cd206a5edace618780b051d37c787fd1a9253df874015161011422 mmh3-3.0.0.tar.gz
-"
diff --git a/testing/py3-modbus-tk/APKBUILD b/testing/py3-modbus-tk/APKBUILD
index d07a6df8f76..1d8408dfec1 100644
--- a/testing/py3-modbus-tk/APKBUILD
+++ b/testing/py3-modbus-tk/APKBUILD
@@ -3,13 +3,14 @@
pkgname=py3-modbus-tk
_pkgname="${pkgname#py3-}"
pkgver=1.1.1
-pkgrel=0
+pkgrel=3
pkgdesc="Create Modbus app easily with Python"
url="https://github.com/ljean/modbus-tk"
arch="noarch"
license="LGPL-2.1-or-later"
depends="python3 py3-pyserial"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="$_pkgname-$pkgver.tar.gz::https://github.com/ljean/modbus-tk/archive/refs/tags/$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
@@ -22,7 +23,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
9868a6720434a86da2f87dc53719bbd21595e0c2e20fe1acb5baf7dca18c7da2afd83a6f02d15947725967755f6f43eb60fa66deef7e3c907dfbfd6e22a48f84 modbus-tk-1.1.1.tar.gz
diff --git a/testing/py3-mongo/APKBUILD b/testing/py3-mongo/APKBUILD
deleted file mode 100644
index e817733045b..00000000000
--- a/testing/py3-mongo/APKBUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-# Contributor: Danilo Falcão <danilo@falcao.org>
-# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
-pkgname=py3-mongo
-_pkgname=pymongo
-pkgver=3.12.1
-pkgrel=1
-pkgdesc="Python3 driver for MongoDB"
-url="https://github.com/mongodb/mongo-python-driver"
-arch="all"
-license="Apache-2.0"
-makedepends="python3-dev py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
-builddir="$srcdir"/$_pkgname-$pkgver
-
-replaces="py-mongo" # Backwards compatibility
-provides="py-mongo=$pkgver-r$pkgrel" # Backwards compatibility
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 setup.py test
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-36294f9437c91e5ea744452e0dc1049be65706dced61a296dfae09d32e31aae0276da2bb059a5548569e6cde62f66b935f2a422f297a3eabf0b928cfee07d060 pymongo-3.12.1.tar.gz
-"
diff --git a/testing/py3-mopidy-jellyfin/APKBUILD b/testing/py3-mopidy-jellyfin/APKBUILD
new file mode 100644
index 00000000000..5a48f9fa6e8
--- /dev/null
+++ b/testing/py3-mopidy-jellyfin/APKBUILD
@@ -0,0 +1,35 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=py3-mopidy-jellyfin
+_pyname=${pkgname#py3-}
+pkgver=1.0.4
+pkgrel=3
+pkgdesc="Mopidy extension for Jellyfin"
+url="https://github.com/jellyfin/mopidy-jellyfin"
+arch="noarch"
+license="Apache-2.0"
+depends="
+ python3
+ mopidy
+ py3-pykka
+ py3-requests
+ py3-unidecode
+ py3-websocket-client
+ "
+makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
+source="$_pyname-$pkgver.tar.gz::https://github.com/jellyfin/mopidy-jellyfin/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/$_pyname-$pkgver"
+# AttributeError: <class 'mopidy_jellyfin.remote.JellyfinHandler'> does not have the attribute '_get_token'
+options="!check"
+
+build() {
+ python3 setup.py build
+}
+
+package() {
+ python3 setup.py install --skip-build --root="$pkgdir"
+}
+
+sha512sums="
+e78d61ab1c4029fcc472a55c30eb4f75d18427d5ca5759ea03bb1dcb6bf9626570c5e2a84f7727ec59be07dd5ce78c63228c08524e703042950f087ae3878823 mopidy-jellyfin-1.0.4.tar.gz
+"
diff --git a/testing/py3-mopidy-local/APKBUILD b/testing/py3-mopidy-local/APKBUILD
new file mode 100644
index 00000000000..dd380d6b5cc
--- /dev/null
+++ b/testing/py3-mopidy-local/APKBUILD
@@ -0,0 +1,37 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=py3-mopidy-local
+_pyname=${pkgname#py3-}
+pkgver=3.2.1
+pkgrel=3
+pkgdesc="Mopidy extension for playing music from local music archive"
+url="https://github.com/mopidy/mopidy-local"
+arch="noarch"
+license="Apache-2.0"
+depends="
+ mopidy
+ python3
+ py3-pykka
+ py3-uritools
+ "
+makedepends="py3-setuptools"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="$_pyname-$pkgver.tar.gz::https://github.com/mopidy/mopidy-local/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/$_pyname-$pkgver"
+options="!check" # tests fail on CI
+
+build() {
+ python3 setup.py build
+}
+
+check() {
+ python3 -m pytest
+}
+
+package() {
+ python3 setup.py install --skip-build --root="$pkgdir"
+}
+
+sha512sums="
+2a34018306f9ca7b94e55c40f41e728329d10d6c530c58a7c5f58f6783b280069db27a1249e1d021126cda35be5f7cb1bc02affdd7b3eb7c77a4627fe588005f mopidy-local-3.2.1.tar.gz
+"
diff --git a/testing/py3-mopidy-mpd/APKBUILD b/testing/py3-mopidy-mpd/APKBUILD
index d2b8e9325a8..c7efe1c3922 100644
--- a/testing/py3-mopidy-mpd/APKBUILD
+++ b/testing/py3-mopidy-mpd/APKBUILD
@@ -2,30 +2,37 @@
# Maintainer: Galen Abell <galen@galenabell.com>
pkgname=py3-mopidy-mpd
_pyname=Mopidy-MPD
-pkgver=3.2.0
-pkgrel=1
+pkgver=3.3.0
+pkgrel=4
pkgdesc="Mopidy extension for controlling playback from MPD clients"
url="https://github.com/mopidy/mopidy-mpd"
arch="noarch"
license="Apache-2.0"
depends="python3 mopidy py3-pykka"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel py3-installer"
checkdepends="py3-pytest"
-source="https://files.pythonhosted.org/packages/source/${_pyname%${_pyname#?}}/$_pyname/$_pyname-$pkgver.tar.gz"
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/${_pyname%"${_pyname#?}"}/$_pyname/$_pyname-$pkgver.tar.gz"
builddir="$srcdir/$_pyname-$pkgver"
+options="!check" # response verification fails
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- python3 setup.py test
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
-6d399491ec8c5e9e44a4ccc0054ee8aae01cdaad646de3ff58b02f30cce94fc55aa382d6e5c4cde59e78902c1ea76e827bf355fb091a5d647b3721e39f20f675 Mopidy-MPD-3.2.0.tar.gz
+a8d59e3c8908390603a275af6d8b6e5bd48fcb2dd35e97d3313d0384bb31f97e832513432a95b1dec8bafba67c7a54170c55caef5f3db8fc5256d0814fda3121 Mopidy-MPD-3.3.0.tar.gz
"
diff --git a/testing/py3-mopidy-spotify/APKBUILD b/testing/py3-mopidy-spotify/APKBUILD
new file mode 100644
index 00000000000..43fd8dac5d9
--- /dev/null
+++ b/testing/py3-mopidy-spotify/APKBUILD
@@ -0,0 +1,45 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-mopidy-spotify
+pkgver=5.0.0_alpha2
+pkgrel=0
+pkgdesc="Mopidy extension for playing music from Spotify"
+url="https://mopidy.com/ext/spotify/"
+# armhf armv7 ppc64le riscv64 s390x x86 blocked by gst-plugins-rs
+arch="noarch !armhf !armv7 !ppc64le !riscv64 !s390x !x86"
+license="Apache-2.0"
+depends="
+ gst-plugins-rs
+ mopidy
+ py3-responses
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/mopidy/mopidy-spotify/archive/refs/tags/v${pkgver//_alpha/a}.tar.gz"
+builddir="$srcdir/mopidy-spotify-${pkgver//_alpha/a}"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+6321a908bb5b5b8d4c7938cdcaa9110fef7b2f42e295f93788640fdca238448adc8aacdd4a8a926e5387f91b8b2b9f1de4d7b0ca4482e7fd87811fbb5a72e5b5 py3-mopidy-spotify-5.0.0_alpha2.tar.gz
+"
diff --git a/testing/py3-mopidy-tidal/APKBUILD b/testing/py3-mopidy-tidal/APKBUILD
index 87c2d502bbc..adb71bf4d29 100644
--- a/testing/py3-mopidy-tidal/APKBUILD
+++ b/testing/py3-mopidy-tidal/APKBUILD
@@ -1,15 +1,24 @@
-# Maintainer: Stacy Harper <contact@stacyharper.net>
+# Maintainer: Willow Barraco <contact@willowbarraco.fr>
pkgname=py3-mopidy-tidal
_pyname=Mopidy-Tidal
-pkgver=0.2.7
-pkgrel=0
+pkgver=0.3.2
+pkgrel=5
pkgdesc="Mopidy extension for Tidal music service integration"
url="https://github.com/tehkillerbee/mopidy-tidal"
arch="noarch"
license="Apache-2.0"
-depends="python3 mopidy gst-plugins-bad py3-tidalapi"
+depends="
+ gst-plugins-bad
+ mopidy
+ py3-pykka
+ py3-requests
+ py3-tidalapi
+ py3-typing-extensions
+ python3
+ "
makedepends="py3-setuptools py3-wheel"
-checkdepends="py3-pytest"
+checkdepends="py3-pytest py3-pytest-mock py3-dateutil"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pyname%${_pyname#?}}/$_pyname/$_pyname-$pkgver.tar.gz"
builddir="$srcdir/$_pyname-$pkgver"
@@ -18,13 +27,13 @@ build() {
}
check() {
- python3 setup.py test
+ pytest tests
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
-8a53328294f4018e2161c783a9a7502bbc8fb2a5a792ea6fad1881ae7d2019ce22005016686785cc48d4791bb5673042e22fa4e667635b430cebacfcdfed57e9 Mopidy-Tidal-0.2.7.tar.gz
+8ef77615cb33889c3743ef024a383466c64e7e8e88924c5a31e93918e1fe599e72bb409e6c1aa4a1f8b35342e3ca7a73aab32deb8a25a0ec8790348ccc7ccb23 Mopidy-Tidal-0.3.2.tar.gz
"
diff --git a/testing/py3-more-properties/APKBUILD b/testing/py3-more-properties/APKBUILD
new file mode 100644
index 00000000000..852d80564c7
--- /dev/null
+++ b/testing/py3-more-properties/APKBUILD
@@ -0,0 +1,52 @@
+# Contributor: Guy Godfroy <guy.godfroy@gugod.fr>
+# Maintainer: Guy Godfroy <guy.godfroy@gugod.fr>
+pkgname=py3-more-properties
+pkgver=1.1.1
+pkgrel=3
+pkgdesc="Collection of property variants"
+url="https://github.com/madman-bob/python-more-properties"
+arch="noarch"
+license="MIT"
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="
+ py3-pytest-forked
+ py3-pytest-xdist
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/madman-bob/python-more-properties/archive/refs/tags/$pkgver.tar.gz
+ root.patch
+ "
+builddir="$srcdir/python-more-properties-$pkgver/"
+
+prepare() {
+ default_prepare
+
+ # fixup location
+ mv pypi_upload/setup.py .
+}
+
+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 -n auto --forked
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+fed395bccc4aacb38c976e6a7d15079e37850d134d8e1864d625aa120c857ace71deaf159b4a2c6d559121fcbff7e9d8be905de0dfa93425bc547f8cd8349fc6 py3-more-properties-1.1.1.tar.gz
+99ca365084b2c0f1e0e1bf8b2fea1b8b4a3f86263112b0acc37abb15cefef4c23cd98fb6f13c33fcad603dc9c90c5a04ac8f467eba3b74572d742f15508d2d88 root.patch
+"
diff --git a/testing/py3-more-properties/root.patch b/testing/py3-more-properties/root.patch
new file mode 100644
index 00000000000..a9993d8825e
--- /dev/null
+++ b/testing/py3-more-properties/root.patch
@@ -0,0 +1,15 @@
+diff --git a/pypi_upload/setup.py b/pypi_upload/setup.py
+index 9de24a4..44b8064 100644
+--- a/pypi_upload/setup.py
++++ b/pypi_upload/setup.py
+@@ -6,8 +6,8 @@ from pathlib import Path
+ from setuptools import find_packages, setup
+ from setuptools.command.install import install
+
+-project_root = Path(__file__).parents[1]
+-
++import pathlib
++project_root = pathlib.Path().resolve()
+
+ class VerifyCommand(install):
+ """Custom command to verify module integrity"""
diff --git a/testing/py3-moviepy/APKBUILD b/testing/py3-moviepy/APKBUILD
index 846f80328f4..b54a1f3b326 100644
--- a/testing/py3-moviepy/APKBUILD
+++ b/testing/py3-moviepy/APKBUILD
@@ -1,14 +1,16 @@
# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
pkgname=py3-moviepy
pkgver=1.0.3
-pkgrel=1
+pkgrel=4
pkgdesc="Video editing with Python"
url="https://zulko.github.io/moviepy/"
-arch="noarch !ppc64le" # blocked by py3-imageio
+arch="noarch !s390x !ppc64le" # blocked by py3-imageio
license="MIT"
-depends="ffmpeg py3-proglog py3-imageio py3-decorator py3-numpy py3-pillow"
+depends="py3-requests py3-proglog py3-imageio py3-imageio-ffmpeg py3-decorator py3-tqdm"
makedepends="py3-setuptools"
-source="$pkgname-$pkgver.tar.gz::https://github.com/Zulko/moviepy/archive/v$pkgver.tar.gz"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/Zulko/moviepy/archive/v$pkgver.tar.gz
+ decorators.patch"
builddir="$srcdir/moviepy-$pkgver"
options="!check" # No tests, require network connection
@@ -19,7 +21,10 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="24490b41fde6aacc202256254032e9993ef35cb2a5d09844509107ed31959bfed6105285a6c21196cdd63a3270d6f538d32305c1525dc769d07504a8178f66f9 py3-moviepy-1.0.3.tar.gz"
+sha512sums="
+24490b41fde6aacc202256254032e9993ef35cb2a5d09844509107ed31959bfed6105285a6c21196cdd63a3270d6f538d32305c1525dc769d07504a8178f66f9 py3-moviepy-1.0.3.tar.gz
+d79b0a461e47d29af319b53601493466e82321121d30a951ad31d8d0431499e360b5ad33a903908555ad75dce3734a4cef9c2aed64c5769b484302d50bbd886e decorators.patch
+"
diff --git a/testing/py3-moviepy/decorators.patch b/testing/py3-moviepy/decorators.patch
new file mode 100644
index 00000000000..80732fe8ef5
--- /dev/null
+++ b/testing/py3-moviepy/decorators.patch
@@ -0,0 +1,47 @@
+commit 2ea1de64553d610a2fdd1abe54dba6797a49a5e4
+Author: Daniel Mizyrycki <mzdaniel@glidelink.net>
+Date: Sat Sep 24 16:33:28 2022 -0700
+
+ Update code introspection logic in decorators
+
+diff --git a/moviepy/decorators.py b/moviepy/decorators.py
+index 277276c..3bce1ac 100644
+--- a/moviepy/decorators.py
++++ b/moviepy/decorators.py
+@@ -2,6 +2,7 @@
+ all decorators used in moviepy go there
+ """
+
++import inspect
+ import decorator
+
+ from moviepy.tools import cvsecs
+@@ -76,12 +77,7 @@ def preprocess_args(fun,varnames):
+ """ Applies fun to variables in varnames before launching the function """
+
+ def wrapper(f, *a, **kw):
+- if hasattr(f, "func_code"):
+- func_code = f.func_code # Python 2
+- else:
+- func_code = f.__code__ # Python 3
+-
+- names = func_code.co_varnames
++ names = inspect.getfullargspec(f).args
+ new_a = [fun(arg) if (name in varnames) else arg
+ for (arg, name) in zip(a, names)]
+ new_kw = {k: fun(v) if k in varnames else v
+@@ -120,12 +116,7 @@ def use_clip_fps_by_default(f, clip, *a, **k):
+ " the clip's fps with `clip.fps=24`" % f.__name__)
+
+
+- if hasattr(f, "func_code"):
+- func_code = f.func_code # Python 2
+- else:
+- func_code = f.__code__ # Python 3
+-
+- names = func_code.co_varnames[1:]
++ names = inspect.getfullargspec(f).args[1:]
+
+ new_a = [fun(arg) if (name=='fps') else arg
+ for (arg, name) in zip(a, names)]
+
diff --git a/testing/py3-mpd2/APKBUILD b/testing/py3-mpd2/APKBUILD
index 27bddc717b9..1e88c4e31f3 100644
--- a/testing/py3-mpd2/APKBUILD
+++ b/testing/py3-mpd2/APKBUILD
@@ -2,8 +2,8 @@
# Maintainer: Galen Abell <galen@galenabell.com>
pkgname=py3-mpd2
_pyname=python-mpd2
-pkgver=3.0.5
-pkgrel=0
+pkgver=3.1.1
+pkgrel=1
pkgdesc="python client interface for MPD"
url="https://github.com/Mic92/python-mpd2"
arch="noarch"
@@ -11,6 +11,7 @@ license="LGPL-3.0-only"
depends="python3"
makedepends="py3-setuptools"
checkdepends="py3-mock py3-twisted"
+subpackages="$pkgname-pyc"
source="$_pyname-$pkgver.tar.gz::https://github.com/Mic92/python-mpd2/archive/v$pkgver.tar.gz"
builddir="$srcdir/$_pyname-$pkgver"
@@ -23,9 +24,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
-521345b905113eaa56e6ec983e4d968d77dca30f839ab52a00e146f311269828ed383bce460ba1daf61b7f98c63ae3b7a3cbcb55cf917b1c5a5a11cf62b6a7d5 python-mpd2-3.0.5.tar.gz
+abd882bc0652ed4a8ee2f4abf0a039e7c62e77b35d278c5fc99bb032c220caac831cc483445516044964f2ea078d2134af61c64d55cb20770b4d32a5aa1ce5e2 python-mpd2-3.1.1.tar.gz
"
diff --git a/testing/py3-msldap/APKBUILD b/testing/py3-msldap/APKBUILD
new file mode 100644
index 00000000000..77367ddefc4
--- /dev/null
+++ b/testing/py3-msldap/APKBUILD
@@ -0,0 +1,45 @@
+# Contributor: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
+# Maintainer: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
+pkgname=py3-msldap
+_pyname=msldap
+pkgver=0.5.10
+pkgrel=1
+pkgdesc="Python library to play with MS LDAP"
+url="https://github.com/skelsec/msldap"
+arch="noarch"
+license="MIT"
+depends="
+ py3-asn1crypto
+ py3-asyauth
+ py3-asysocks
+ py3-minikerberos
+ py3-prompt_toolkit
+ py3-tqdm
+ py3-unicrypto
+ py3-wcwidth
+ py3-winacl
+ python3
+ "
+makedepends="
+ py3-gpep517
+ py3-wheel
+ py3-setuptools
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/skelsec/msldap/archive/refs/tags/$pkgver.tar.gz"
+builddir="$srcdir/$_pyname-$pkgver"
+options="!check" # no tests provided
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" .dist/*.whl
+}
+
+sha512sums="
+8b96a46d2b685dc30078c476bab75bcb925668784a2e7bf8980d174d7b0bffb0ff5bd7044bccd5f0b1f4a621d33d6f0cf41027f49979f4f13b466ba2012b82e5 py3-msldap-0.5.10.tar.gz
+"
diff --git a/testing/py3-murmurhash/APKBUILD b/testing/py3-murmurhash/APKBUILD
deleted file mode 100644
index 943d34c8b42..00000000000
--- a/testing/py3-murmurhash/APKBUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-# Contributor: Oleg Titov <oleg.titov@gmail.com>
-# Maintainer: Oleg Titov <oleg.titov@gmail.com>
-pkgname=py3-murmurhash
-pkgver=1.0.5
-pkgrel=2
-pkgdesc="Cython bindings for MurmurHash2"
-options="!check" # Requires older version of pytest
-url="https://github.com/explosion/murmurhash"
-arch="all"
-license="MIT"
-depends="python3"
-makedepends="python3-dev py3-setuptools cython"
-checkdepends="py3-pytest py3-mmh3"
-subpackages="$pkgname-doc"
-source="murmurhash-$pkgver.tar.gz::https://github.com/explosion/murmurhash/archive/v$pkgver.tar.gz"
-builddir="$srcdir/murmurhash-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- PYTHONPATH="$(echo $PWD/build/lib.*)" pytest-3 murmurhash
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-
- install -Dm644 README.md -t "$pkgdir"/usr/share/doc/$pkgname
-}
-
-sha512sums="08cd5ee332d93238b64a8fcb0017c9ba8dcc45821c77b4650cb5ea55d7534b33fcb044404cb4b9be2e2dc6dcb19d6efaf0aee1d523b635188bd1124a761675ad murmurhash-1.0.5.tar.gz"
diff --git a/testing/py3-nanoid/APKBUILD b/testing/py3-nanoid/APKBUILD
new file mode 100644
index 00000000000..b4aa4e19618
--- /dev/null
+++ b/testing/py3-nanoid/APKBUILD
@@ -0,0 +1,28 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=py3-nanoid
+_pyname=${pkgname/py3-/}
+pkgver=2.0.0
+pkgrel=2
+pkgdesc="Tiny, secure, URL-friendly, unique string ID generator for Python"
+url="https://github.com/puyuan/py-nanoid"
+arch="noarch"
+license="MIT"
+depends="python3"
+makedepends="py3-setuptools"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="$_pyname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/n/nanoid/nanoid-$pkgver.tar.gz"
+builddir="$srcdir/$_pyname-$pkgver"
+options="!check" # No test included in the source tarball
+
+build() {
+ python3 setup.py build
+}
+
+package() {
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+sha512sums="
+7db65075357feb19c4747be9abca1a19a2b8583f82cdcae87f06846141d798a725128ee784ce33cd3b14b272c0beb2dcac0faf4536e8d5183eaa06eab79fff87 nanoid-2.0.0.tar.gz
+"
diff --git a/testing/py3-natpmp/APKBUILD b/testing/py3-natpmp/APKBUILD
new file mode 100644
index 00000000000..2623abab977
--- /dev/null
+++ b/testing/py3-natpmp/APKBUILD
@@ -0,0 +1,35 @@
+# Contributor: Fabricio Silva <hi@fabricio.dev>
+# Maintainer: Fabricio Silva <hi@fabricio.dev>
+pkgname=py3-natpmp
+pkgver=1.3.2
+pkgrel=1
+pkgdesc="NAT-PMP client library for Python"
+url="https://github.com/jaraco/nat-pmp"
+arch="noarch"
+license="MIT"
+depends="py3-netifaces"
+makedepends="
+ py3-gpep517
+ py3-setuptools_scm
+ py3-wheel
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/jaraco/nat-pmp/archive/v$pkgver.tar.gz"
+builddir="$srcdir"/nat-pmp-$pkgver
+options="!check" # no tests
+
+build() {
+ export SETUPTOOLS_SCM_PRETEND_VERSION=$pkgver
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+92e211038042c0d8ea07b4d69c4e9c40abdcd7bcb3b21d14ba6cb98104d13606acf14a227af1754d4378791a22e6651e2333f97036bab41c36f688ce7935a8af py3-natpmp-1.3.2.tar.gz
+"
diff --git a/testing/py3-ncclient/APKBUILD b/testing/py3-ncclient/APKBUILD
index eb0e7c85976..134e942a444 100644
--- a/testing/py3-ncclient/APKBUILD
+++ b/testing/py3-ncclient/APKBUILD
@@ -1,20 +1,29 @@
# Contributor: Leonardo Arena <rnalrd@alpinelinux.org>
# Maintainer:
pkgname=py3-ncclient
-pkgver=0.6.12
-pkgrel=1
+pkgver=0.6.13
+pkgrel=4
pkgdesc="Library for NETCONF clients"
url="https://github.com/ncclient/ncclient"
arch="noarch"
license="Apache-2.0"
depends="py3-lxml py3-paramiko py3-six py3-setuptools"
+makedepends="py3-python-versioneer"
checkdepends="py3-mock py3-nose"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/ncclient/ncclient/archive/v$pkgver.tar.gz"
builddir="$srcdir"/ncclient-$pkgver
replaces="py-ncclient" # Backwards compatibility
provides="py-ncclient=$pkgver-r$pkgrel" # Backwards compatibility
+prepare() {
+ default_prepare
+
+ # unvendor
+ rm versioneer.py
+}
+
build() {
python3 setup.py build
}
@@ -24,9 +33,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
-ba1547579c830733f2f450ecafaf146a364b3a123f4cb0a3395e0ed19ad31025823b928d06acb537a531203a5ac65fc757b6fb34fefdde0f1e357e5f57bf73d0 py3-ncclient-0.6.12.tar.gz
+650d07477d48cd209ef758ebd1716e48c4021c3d681f0ce2e9065ca5f34ace82079f5577884d26fc99e552c6f4cd7b59a9bf8866008e7b2985f1d8b23cc8d61f py3-ncclient-0.6.13.tar.gz
"
diff --git a/testing/py3-netdisco/APKBUILD b/testing/py3-netdisco/APKBUILD
deleted file mode 100644
index 1f88832a2d5..00000000000
--- a/testing/py3-netdisco/APKBUILD
+++ /dev/null
@@ -1,29 +0,0 @@
-# Contributor: Leo <thinkabit.ukim@gmail.com>
-# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
-pkgname=py3-netdisco
-_pkgname=netdisco
-pkgver=2.8.2
-pkgrel=2
-pkgdesc="Python library to scan local network for services and devices"
-url="https://github.com/home-assistant/netdisco/"
-arch="noarch"
-license="Apache-2.0"
-depends="py3-zeroconf py3-requests python3"
-checkdepends="py3-pytest"
-makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
-builddir="$srcdir"/$_pkgname-$pkgver
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 setup.py test
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="668d3549ff26a5dff20546bdb7bb084f5660b7190d7e0c177319c43f79e5bfa57a259ba5a11c6970ba251c76f4be46d6307996c341d7d0bcdebb9ccad53173db netdisco-2.8.2.tar.gz"
diff --git a/testing/py3-netifaces2/APKBUILD b/testing/py3-netifaces2/APKBUILD
new file mode 100644
index 00000000000..610b1a80f3a
--- /dev/null
+++ b/testing/py3-netifaces2/APKBUILD
@@ -0,0 +1,52 @@
+# Contributor: lauren n. liberda <lauren@selfisekai.rocks>
+# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
+pkgname=py3-netifaces2
+pkgver=0.0.22
+pkgrel=0
+pkgdesc="network interface information 2: oxidized"
+url="https://github.com/SamuelYvon/netifaces-2"
+arch="all"
+license="MIT"
+makedepends="
+ cargo
+ py3-gpep517
+ py3-maturin
+ py3-wheel
+ "
+checkdepends="py3-pytest"
+options="net"
+subpackages="$pkgname-pyc"
+source="
+ https://github.com/SamuelYvon/netifaces-2/archive/V$pkgver/py3-netifaces2-V$pkgver.tar.gz
+ "
+builddir="$srcdir/netifaces-2-$pkgver"
+provides="py3-netifaces"
+replaces="py3-netifaces"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --locked
+}
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --config-json '{"build-args": "--frozen"}' \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+eb188ef1ac16a59ca05b8c94aee380a6e55d2dc78271967a29db5b3528b55057ce4d19ed2ac64dba9a731a64ddaebb627654773012105bcf7a9e5440936aefea py3-netifaces2-V0.0.22.tar.gz
+"
diff --git a/testing/py3-netmiko/APKBUILD b/testing/py3-netmiko/APKBUILD
index 7451affbcad..7b938873710 100644
--- a/testing/py3-netmiko/APKBUILD
+++ b/testing/py3-netmiko/APKBUILD
@@ -2,32 +2,31 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=py3-netmiko
_pkgname=netmiko
-pkgver=4.1.0
-pkgrel=0
+pkgver=4.3.0
+pkgrel=1
pkgdesc="Multi-vendor library to simplify Paramiko SSH connections to network devices"
url="https://github.com/ktbyers/netmiko"
arch="noarch"
license="MIT"
depends="openssh-client py3-yaml py3-paramiko py3-scp python3"
-makedepends="py3-setuptools"
-source="$pkgname-$pkgver.tar.gz::https://github.com/ktbyers/$_pkgname/archive/v$pkgver.tar.gz"
+options="!check" # no textfsm package available
+makedepends="py3-gpep517 py3-setuptools py3-wheel poetry"
+checkdepends="py3-pytest py3-pyserial"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/ktbyers/netmiko/archive/refs/tags/v$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-netmiko" # Backwawrds compatibility
-provides="py-netmiko=$pkgver-r$pkgrel" # Backwards compatibility
-
-check() {
- python3 setup.py check
-}
-
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
-8b280a6be9b8ccc7adb4a197005fa4ade834e8bb1119e6885189a167ae5884735145c4d2f5ce19f54ff1750d6f1bbe69291ede724dca2471e7ab129798efdb7e py3-netmiko-4.1.0.tar.gz
+e3f1ad4cee212687247687ac17e413f4f738a20eac34cfe0ca538ec3c8152d0dbc27441dd0fbb7325eb61cef56ab44ffeb2e4604475464758690b0909ee1d3b8 py3-netmiko-4.3.0.tar.gz
"
diff --git a/testing/py3-networkmanager/APKBUILD b/testing/py3-networkmanager/APKBUILD
deleted file mode 100644
index c6d6b2ec395..00000000000
--- a/testing/py3-networkmanager/APKBUILD
+++ /dev/null
@@ -1,39 +0,0 @@
-# Contributor: knuxify <knuxify@gmail.com>
-# Maintainer: knuxify <knuxify@gmail.com>
-pkgname=py3-networkmanager
-pkgver=2.2
-pkgrel=0
-pkgdesc="Easy communication with NetworkManager"
-url="https://github.com/seveas/python-networkmanager"
-arch="noarch"
-license="Zlib"
-depends="py3-dbus py3-six"
-makedepends="python3 py3-setuptools"
-checkdepends="dbus networkmanager"
-source="https://github.com/seveas/python-networkmanager/archive/refs/tags/$pkgver/python-networkmanager-$pkgver.tar.gz
- allow-no-mainloop.patch
- handle-routing-rules.patch
- fix-nm-1-34-compatibility.patch"
-builddir="$srcdir/python-networkmanager-$pkgver"
-# test suite is fairly invasive and seems to fail, upstream CI doesn't use it
-options="!check"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- export NM_TESTS=1
- PYTHONPATH="$builddir" python3 -m unittest discover
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-44a33aee5962a2d2a9a13aacb02e684020b3b7d3a6174ace2d29dde4106cd852dca1421493a64af6884ce240080d9984feae009d183439cf2f11b1710e11dc3a python-networkmanager-2.2.tar.gz
-f8b30d8705e7ce4034b4dab81f8f9cd23f86275a14f799124dc2399c2abbe5510c372cbc32294497bd965b819df4e2e72775597e22f7a6c56a5aacece2611536 allow-no-mainloop.patch
-6b3b06dde26069ae4b9f5ca240cf4e138df4e67556527621492658156d182635ef97fdee4fc67a6de8670e56a443155d6130be23485a70e390ff4cc7cc49e787 handle-routing-rules.patch
-5e68233f09048df735e7131486604c243eb1ad86d4e90b3b20bfb483d9af8a497a40ba81653e430a2da9aaf917104cf017788a82e2d444eb66fc0701b7a9c47b fix-nm-1-34-compatibility.patch
-"
diff --git a/testing/py3-networkmanager/allow-no-mainloop.patch b/testing/py3-networkmanager/allow-no-mainloop.patch
deleted file mode 100644
index 96f40526db7..00000000000
--- a/testing/py3-networkmanager/allow-no-mainloop.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-From 5842142a3777acdeab1740623b07e7152eba6706 Mon Sep 17 00:00:00 2001
-From: Anders Blomdell <anders.blomdell@control.lth.se>
-Date: Tue, 15 Jun 2021 16:13:29 +0200
-Subject: [PATCH] Restore possibility to run without mainloop
-
-https://github.com/seveas/python-networkmanager/pull/85
----
- NetworkManager.py | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/NetworkManager.py b/NetworkManager.py
-index e66beba..4c9e995 100644
---- a/NetworkManager.py
-+++ b/NetworkManager.py
-@@ -258,7 +258,8 @@ def __eq__(self, other):
- @property
- def proxy(self):
- if not self._proxy:
-- self._proxy = dbus.SystemBus().get_object(self.dbus_service, self.object_path, follow_name_owner_changes=True)
-+ self._proxy = dbus.SystemBus().get_object(self.dbus_service, self.object_path,
-+ follow_name_owner_changes=dbus.get_default_main_loop() != None)
- self._proxy.created = time.time()
- elif self._proxy.created < self.last_disconnect:
- if self.is_transient:
diff --git a/testing/py3-networkmanager/fix-nm-1-34-compatibility.patch b/testing/py3-networkmanager/fix-nm-1-34-compatibility.patch
deleted file mode 100644
index cc1d21e2007..00000000000
--- a/testing/py3-networkmanager/fix-nm-1-34-compatibility.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-From 9b0c9107dfac08750bb883312cc8eaf9c59a822b Mon Sep 17 00:00:00 2001
-From: Michael Schaller <misch@google.com>
-Date: Tue, 15 Mar 2022 09:19:04 +0100
-Subject: [PATCH] Don't assume that the `dns` field is present in the
- `GetSettings` D-Bus reply.
-
-This has changed for Network Manager >= 1.34 with commit https://github.com/NetworkManager/NetworkManager/commit/d652e0f53487cf3f5b1f64038d9ff4a2f5947213.
-
-While we're at it also don't assume that any of the other fields are present.
-
-Fixes #93.
-
-https://github.com/seveas/python-networkmanager/pull/94
----
- NetworkManager.py | 18 ++++++++++++------
- 1 file changed, 12 insertions(+), 6 deletions(-)
-
-diff --git a/NetworkManager.py b/NetworkManager.py
-index e66beba..558e8ef 100644
---- a/NetworkManager.py
-+++ b/NetworkManager.py
-@@ -614,13 +614,19 @@ def to_python(klass, method, arg, val, signature):
- if 'bssid' in val_:
- val_['bssid'] = fixups.mac_to_python(val_['bssid'])
- if 'ipv4' in val:
-- val['ipv4']['addresses'] = [fixups.addrconf_to_python(addr,socket.AF_INET) for addr in val['ipv4']['addresses']]
-- val['ipv4']['routes'] = [fixups.route_to_python(route,socket.AF_INET) for route in val['ipv4']['routes']]
-- val['ipv4']['dns'] = [fixups.addr_to_python(addr,socket.AF_INET) for addr in val['ipv4']['dns']]
-+ if 'addresses' in val['ipv4']:
-+ val['ipv4']['addresses'] = [fixups.addrconf_to_python(addr,socket.AF_INET) for addr in val['ipv4']['addresses']]
-+ if 'routes' in val['ipv4']:
-+ val['ipv4']['routes'] = [fixups.route_to_python(route,socket.AF_INET) for route in val['ipv4']['routes']]
-+ if 'dns' in val['ipv4']:
-+ val['ipv4']['dns'] = [fixups.addr_to_python(addr,socket.AF_INET) for addr in val['ipv4']['dns']]
- if 'ipv6' in val:
-- val['ipv6']['addresses'] = [fixups.addrconf_to_python(addr,socket.AF_INET6) for addr in val['ipv6']['addresses']]
-- val['ipv6']['routes'] = [fixups.route_to_python(route,socket.AF_INET6) for route in val['ipv6']['routes']]
-- val['ipv6']['dns'] = [fixups.addr_to_python(addr,socket.AF_INET6) for addr in val['ipv6']['dns']]
-+ if 'addresses' in val['ipv6']:
-+ val['ipv6']['addresses'] = [fixups.addrconf_to_python(addr,socket.AF_INET6) for addr in val['ipv6']['addresses']]
-+ if 'routes' in val['ipv6']:
-+ val['ipv6']['routes'] = [fixups.route_to_python(route,socket.AF_INET6) for route in val['ipv6']['routes']]
-+ if 'dns' in val['ipv6']:
-+ val['ipv6']['dns'] = [fixups.addr_to_python(addr,socket.AF_INET6) for addr in val['ipv6']['dns']]
- return val
- if method == 'PropertiesChanged':
- for prop in val:
diff --git a/testing/py3-networkmanager/handle-routing-rules.patch b/testing/py3-networkmanager/handle-routing-rules.patch
deleted file mode 100644
index 32d51e196a1..00000000000
--- a/testing/py3-networkmanager/handle-routing-rules.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 468beb0e2a124ed74bc31cdff71d214c89ae4cc6 Mon Sep 17 00:00:00 2001
-From: Olivier Dautricourt <olivier.dautricourt@orolia.com>
-Date: Thu, 13 Jan 2022 15:01:39 +0100
-Subject: [PATCH] fixups: handle routing-rules
-
-https://github.com/seveas/python-networkmanager/pull/92
----
- NetworkManager.py | 9 +++++++++
- 1 file changed, 9 insertions(+)
-
-diff --git a/NetworkManager.py b/NetworkManager.py
-index e66beba..b42d0d3 100644
---- a/NetworkManager.py
-+++ b/NetworkManager.py
-@@ -505,6 +505,15 @@ def to_dbus(klass, method, arg, val, signature):
- for cert in ['ca-cert', 'client-cert', 'phase2-ca-cert', 'phase2-client-cert', 'private-key']:
- if cert in settings[key]:
- settings[key][cert] = fixups.cert_to_dbus(settings[key][cert])
-+ if 'routing-rules' in settings[key]:
-+ for rule in settings[key]['routing-rules']:
-+ for p in rule:
-+ if p == 'family':
-+ rule[p] = dbus.Int32(rule[p])
-+ else:
-+ rule[p] = dbus.UInt32(rule[p])
-+ settings[key]['routing-rules'] = dbus.Array(
-+ settings[key]['routing-rules'], signature=dbus.Signature('a{sv}'))
- if 'ssid' in settings.get('802-11-wireless', {}):
- settings['802-11-wireless']['ssid'] = fixups.ssid_to_dbus(settings['802-11-wireless']['ssid'])
- if 'ipv4' in settings:
diff --git a/testing/py3-niaarm/APKBUILD b/testing/py3-niaarm/APKBUILD
deleted file mode 100644
index c952b9a6e53..00000000000
--- a/testing/py3-niaarm/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Contributor: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-# Maintainer: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-pkgname=py3-niaarm
-_pkgorig=niaarm
-pkgver=0.1.6
-pkgrel=0
-pkgdesc="A minimalistic framework for numerical association rule mining"
-url="https://github.com/firefly-cpp/NiaARM"
-arch="noarch !riscv64" # py3-niapy
-license="MIT"
-depends="python3 py3-numpy py3-pandas py3-niapy"
-checkdepends="python3-dev py3-pytest"
-makedepends="py3-setuptools"
-source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/n/niaarm/niaarm-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgorig-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 -m pytest
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-2c43be49a2b11c7909fa662cf8d94485c08655ac65d0f6d9784f4fda1c4778010e30c1c966e6187e0f01214f2492e1583acb17b19c3678d047b74a551feffc38 py3-niaarm-0.1.6.tar.gz
-"
diff --git a/testing/py3-niaclass/APKBUILD b/testing/py3-niaclass/APKBUILD
deleted file mode 100644
index a6a050a2699..00000000000
--- a/testing/py3-niaclass/APKBUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-# Contributor: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-# Maintainer: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-pkgname=py3-niaclass
-_pkgorig=niaclass
-pkgver=0.1.2
-pkgrel=1
-pkgdesc="Framework for solving classification tasks using nature-inspired algorithms."
-url="https://github.com/lukapecnik/NiaClass"
-arch="noarch !s390x !riscv64" # py3-scikit-learn, py3-niapy
-license="MIT"
-depends="python3 py3-numpy py3-pandas py3-niapy py3-scikit-learn"
-checkdepends="python3-dev py3-pytest"
-makedepends="py3-setuptools"
-source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/n/niaclass/niaclass-$pkgver.tar.gz
-do-not-package-tests.patch"
-builddir="$srcdir/$_pkgorig-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 -m pytest
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-6ffdc11e2a26dc6729ba1a955b9d720c7505b08e80839d7a144483e320c1539770955c7e9b319009101e79e02dc9e7d351bb98d0487079f8571c0298262b55f6 py3-niaclass-0.1.2.tar.gz
-309cb6f91c67b449baf2b95f15cadf0a169b01d2d37993f7095dbf600a0011d3b89fe4cd1893bdcb2b02a9359b5fa1fa9849bdae4dc953e15dfe40add1b4c664 do-not-package-tests.patch
-"
diff --git a/testing/py3-niaclass/do-not-package-tests.patch b/testing/py3-niaclass/do-not-package-tests.patch
deleted file mode 100644
index fe9d02a707b..00000000000
--- a/testing/py3-niaclass/do-not-package-tests.patch
+++ /dev/null
@@ -1,23 +0,0 @@
---- a/setup.py
-+++ b/setup.py
-@@ -2,11 +2,8 @@
- from setuptools import setup
-
- packages = \
--['niaclass', 'niaclass.tests']
-+['niaclass']
-
--package_data = \
--{'': ['*'], 'niaclass.tests': ['test_files/*']}
--
- install_requires = \
- ['NiaPy>=2.0.0rc17,<3.0.0',
- 'numpy>=1.20.0,<2.0.0',
-@@ -24,7 +21,6 @@
- 'maintainer_email': None,
- 'url': 'https://github.com/lukapecnik/NiaClass',
- 'packages': packages,
-- 'package_data': package_data,
- 'install_requires': install_requires,
- 'python_requires': '>=3.7.1,<4.0.0',
- }
diff --git a/testing/py3-nikola/APKBUILD b/testing/py3-nikola/APKBUILD
index e942302d8c3..3d35c003db3 100644
--- a/testing/py3-nikola/APKBUILD
+++ b/testing/py3-nikola/APKBUILD
@@ -2,40 +2,44 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-nikola
_pyname=Nikola
-pkgver=8.2.2
-pkgrel=0
+pkgver=8.3.0
+pkgrel=2
pkgdesc="Modular, fast, simple, static python website generator"
options="!check" # Tests require more packages
url="https://getnikola.com"
# armv7, armhf, s390x, x86: py3-piexif
-# aarch64: py3-inotify
-arch="noarch !armv7 !armhf !s390x !x86 !aarch64"
+arch="noarch !armv7 !armhf !s390x !x86"
license="MIT"
depends="py3-babel py3-blinker py3-doit py3-dateutil py3-docutils py3-logbook
py3-lxml py3-mako py3-markdown py3-natsort py3-piexif py3-pillow
py3-pygments py3-pyphen py3-pyrss2gen py3-requests py3-unidecode py3-yapsy
"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
source="https://files.pythonhosted.org/packages/source/N/$_pyname/$_pyname-$pkgver.tar.gz"
builddir="$srcdir"/$_pyname-$pkgver
-replaces="py-nikola" # Backwards compatibility
+replaces="py-nikola" # Backwards compatibility
provides="py-nikola=$pkgver-r$pkgrel" # Backwards compatibility
-subpackages="$pkgname-doc"
+subpackages="$pkgname-doc $pkgname-pyc"
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- py.test-3 -c /dev/null
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ gpep517 install-wheel --destdir .testenv --prefix '' .dist/*.whl
+ .testenv/bin/python3 -m pytest
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
rm -rf "$pkgdir"/usr/lib/python3*/site-packages/tests
}
sha512sums="
-f2bf38c81c2e01f6d6cb6a24d9b9ea95f047e9bd9987437df61cf1cb10c39c5f9259e8baa4c64dc24e4f69dc3b3e35e3553dced7d42c840645e024d6c21eb9ae Nikola-8.2.2.tar.gz
+9b25eb90fa560b45e8cd0b03f24523859548353f2a4d2ac91b23b05bfb614d20456bb71f1aaa5702b6d6ab7980696aeb2f5ccc3c00ebc648cfcad49619481247 Nikola-8.3.0.tar.gz
"
diff --git a/testing/py3-nmap/APKBUILD b/testing/py3-nmap/APKBUILD
index db8602e93f3..eee0a019203 100644
--- a/testing/py3-nmap/APKBUILD
+++ b/testing/py3-nmap/APKBUILD
@@ -3,7 +3,7 @@
pkgname=py3-nmap
_pkgname=nmap
pkgver=0.7.1
-pkgrel=0
+pkgrel=3
pkgdesc="Python3 class to use nmap and access scan results"
options="!check" # tests prompt for doas password (wtf)
url="http://xael.org/pages/python-nmap-en.html"
@@ -12,6 +12,7 @@ license="GPL-3.0-or-later"
depends="nmap"
makedepends="py3-setuptools"
checkdepends="py3-nose"
+subpackages="$pkgname-pyc"
source="http://xael.org/pages/python-$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/python-$_pkgname-$pkgver
@@ -27,7 +28,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
diff --git a/testing/py3-nose-of-yeti/APKBUILD b/testing/py3-nose-of-yeti/APKBUILD
new file mode 100644
index 00000000000..17d95747933
--- /dev/null
+++ b/testing/py3-nose-of-yeti/APKBUILD
@@ -0,0 +1,39 @@
+# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=py3-nose-of-yeti
+pkgver=2.4.8
+pkgrel=1
+pkgdesc="Nose plugin that provides an RSpec inspired dsl for python"
+url="https://noseofyeti.readthedocs.io/"
+arch="noarch"
+license="MIT"
+depends="python3"
+makedepends="py3-gpep517 py3-hatchling py3-installer"
+checkdepends="py3-pytest py3-pytest-helpers-namespace py3-pytest-asyncio"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/delfick/nose-of-yeti/archive/refs/tags/release-$pkgver.tar.gz
+ use-pytest-asyncio.patch
+ "
+builddir="$srcdir/nose-of-yeti-release-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages test-env
+ test-env/bin/python3 -m installer .dist/*.whl
+ test-env/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+b0fd267e90ec73713f4f3ce9482b93e1cc4f36dfae3bbce12dac4e9fb2851b620f8d996f0567327f1517bc4cbe5a3c634edc2341ac6ba73e785e89aa94c43dde py3-nose-of-yeti-2.4.8.tar.gz
+8c834594f02b5a98645c717b4de21ccd33f7f9d70be7f38b1745a405c2078ebc168cc72309698457811631e72f96e1e8a6ebd063d7e697390bfbed6cb850e55c use-pytest-asyncio.patch
+"
diff --git a/testing/py3-nose-of-yeti/use-pytest-asyncio.patch b/testing/py3-nose-of-yeti/use-pytest-asyncio.patch
new file mode 100644
index 00000000000..739a20e26ad
--- /dev/null
+++ b/testing/py3-nose-of-yeti/use-pytest-asyncio.patch
@@ -0,0 +1,20 @@
+diff --git a/tests/for_pytest_plugin/test_two.py b/tests/for_pytest_plugin/test_two.py
+index 4f24a43..acd1668 100644
+--- a/tests/for_pytest_plugin/test_two.py
++++ b/tests/for_pytest_plugin/test_two.py
+@@ -27,6 +27,7 @@ describe "one":
+ def collector(self):
+ return 3
+
++ @pytest.mark.asyncio
+ async it "seven", register, collector:
+ assert register == 2
+ assert collector == 3
+@@ -37,6 +38,7 @@ describe "one":
+ def collector(self):
+ return 4
+
++ @pytest.mark.asyncio
+ async it "nine", register, collector:
+ assert register == 2
+ assert collector == 4
diff --git a/testing/py3-nose-timer/APKBUILD b/testing/py3-nose-timer/APKBUILD
index 638f0d09c2a..39828cbbc3b 100644
--- a/testing/py3-nose-timer/APKBUILD
+++ b/testing/py3-nose-timer/APKBUILD
@@ -3,15 +3,18 @@
pkgname=py3-nose-timer
_pkgname=nose-timer
pkgver=1.0.1
-pkgrel=2
+pkgrel=5
pkgdesc="timer plugin for nosetests that answers the question: how much time does every test take?"
url="https://github.com/mahmoudimus/nose-timer/"
arch="noarch"
license="MIT"
depends="py3-nose"
makedepends="py3-setuptools"
-checkdepends="py3-coverage py3-mock py3-parameterized py3-termcolor"
-source="$pkgname-$pkgver.tar.gz::https://github.com/mahmoudimus/nose-timer/archive/v$pkgver.tar.gz"
+checkdepends="py3-coverage py3-mock py3-parameterized py3-termcolor py3-colorama"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/mahmoudimus/nose-timer/archive/v$pkgver.tar.gz
+ assertEquals.patch
+ "
builddir="$srcdir/"$_pkgname-$pkgver
build() {
@@ -19,11 +22,14 @@ build() {
}
check() {
- python3 setup.py test
+ FORCE_COLOR=1 python3 setup.py test
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="ee6b6378998db06892959056916750b094546cc2fbef32cfbdad9dd7b941c21d20eb31eab3f4a32de29b66ba5a33312dd97423778057eee24c861488c110afc7 py3-nose-timer-1.0.1.tar.gz"
+sha512sums="
+ee6b6378998db06892959056916750b094546cc2fbef32cfbdad9dd7b941c21d20eb31eab3f4a32de29b66ba5a33312dd97423778057eee24c861488c110afc7 py3-nose-timer-1.0.1.tar.gz
+822f06d74be76170980076a2fca0336dea76b5988acc55528f688a1587f2fc454018bc7ae39098fd9f7da7348f69d91274d84c7d6e48235c171b50787b081bb4 assertEquals.patch
+"
diff --git a/testing/py3-nose-timer/assertEquals.patch b/testing/py3-nose-timer/assertEquals.patch
new file mode 100644
index 00000000000..35fb93ab0f8
--- /dev/null
+++ b/testing/py3-nose-timer/assertEquals.patch
@@ -0,0 +1,9 @@
+diff --git a/tests/test_plugin.py b/tests/test_plugin.py
+index 20cbcf2..da82e01 100644
+--- a/tests/test_plugin.py
++++ b/tests/test_plugin.py
+@@ -105,3 +105,3 @@ class TestTimerPlugin(unittest.TestCase):
+ self.assertTrue(hasattr(self.plugin, '_timer'))
+- self.assertNotEquals(self.plugin._time_taken(), 0.0)
++ self.assertNotEqual(self.plugin._time_taken(), 0.0)
+
diff --git a/testing/py3-notifymail/APKBUILD b/testing/py3-notifymail/APKBUILD
index 1cbd3f622c6..1da42226907 100644
--- a/testing/py3-notifymail/APKBUILD
+++ b/testing/py3-notifymail/APKBUILD
@@ -3,7 +3,7 @@
pkgname=py3-notifymail
_pkgname=notifymail
pkgver=1.1
-pkgrel=4
+pkgrel=7
pkgdesc="A Python module to send emails"
url="https://github.com/davidfstr/notifymail/"
arch="noarch"
@@ -12,6 +12,7 @@ replaces="py-notifymail" # for backwards compatibility
provides="py-notifymail=$pkgver-r$pkgrel" # for backwards compatibility
depends="python3"
makedepends="python3-dev py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -22,7 +23,7 @@ build() {
package() {
cd "$builddir"
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="f06bf000c0855c852bc4fccfb5da5c625bbabe334640dc6557e6518a5657b61ec2fd546cb92ef63cb66b64c6ce469cfb94da21f844e1c6934cc1339a08fe3f1a notifymail-1.1.tar.gz"
diff --git a/testing/py3-nox/APKBUILD b/testing/py3-nox/APKBUILD
deleted file mode 100644
index 6bf25b35e99..00000000000
--- a/testing/py3-nox/APKBUILD
+++ /dev/null
@@ -1,44 +0,0 @@
-# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
-# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
-pkgname=py3-nox
-pkgver=2022.1.7
-pkgrel=1
-pkgdesc="Flexible test automation for Python"
-url="https://nox.thea.codes/"
-arch="noarch"
-license="Apache-2.0"
-depends="
- py3-argcomplete
- py3-colorlog
- py3-packaging
- py3-py
- py3-setuptools
- py3-virtualenv
- py3-wheel
- python3
- "
-makedepends="py3-build py3-installer"
-checkdepends="py3-pytest py3-tox"
-source="https://github.com/theacodes/nox/archive/$pkgver/py3-nox-$pkgver.tar.gz"
-builddir="$srcdir/nox-$pkgver"
-
-build() {
- python3 -m build --skip-dependency-check --no-isolation --wheel .
-}
-
-check() {
- python3 -m venv --system-site-packages test-env
- test-env/bin/python3 -m pip install --no-deps \
- "$builddir"/dist/nox-$pkgver-py3-none-any.whl
- # all tox_to_nox tests have python2.7 hardcoded
- test-env/bin/python3 -m pytest --ignore=tests/test_tox_to_nox.py
-}
-
-package() {
- python3 -m installer -d "$pkgdir" --compile-bytecode 0 \
- dist/nox-$pkgver-py3-none-any.whl
-}
-
-sha512sums="
-f71ab36b76a655fff9f2bc41fbb7b469f00de3891491882c71da2c170c2f457830c37e43cc57c14db6618034f926d99c8e346efe613ad30202b3d0386ec735a9 py3-nox-2022.1.7.tar.gz
-"
diff --git a/testing/py3-nptyping/APKBUILD b/testing/py3-nptyping/APKBUILD
new file mode 100644
index 00000000000..cd484758d90
--- /dev/null
+++ b/testing/py3-nptyping/APKBUILD
@@ -0,0 +1,44 @@
+# Contributor: Galen Abell <galen@galenabell.com>
+# Maintainer: Galen Abell <galen@galenabell.com>
+pkgname=py3-nptyping
+_pyname=nptyping
+pkgver=2.5.0
+pkgrel=2
+pkgdesc="Type hints for Numpy"
+url="https://github.com/ramonhagenaars/nptyping"
+arch="noarch"
+license="MIT"
+depends="python3 py3-numpy"
+makedepends="py3-setuptools"
+checkdepends="py3-pytest py3-typeguard py3-beartype py3-mypy py3-wheel py3-pandas"
+subpackages="$pkgname-pyc"
+source="$_pyname-$pkgver.tar.gz::https://github.com/ramonhagenaars/nptyping/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/$_pyname-$pkgver"
+options="!check" # FIXME! also look into the ignored tests below
+
+build() {
+ python3 setup.py build
+}
+
+check() {
+ # disable tests which require network or pyright (python wrapper for the type
+ # checker implemented in js, which just downloads it using npx)
+ #
+ # mypy tests are currently broken as pandas doesn't package type hints
+ pytest \
+ --ignore tests/test_wheel.py \
+ --ignore tests/test_package_info.py \
+ --ignore tests/test_pyright.py \
+ --ignore tests/pandas_/test_fork_sync.py \
+ --ignore tests/test_mypy.py \
+ --ignore tests/pandas_/test_mypy_dataframe.py \
+ --ignore tests/test_beartype.py
+
+}
+
+package() {
+ python3 setup.py install --skip-build --root="$pkgdir"
+}
+sha512sums="
+2cde9c5f7694d4f916b85c93b86df7f72709a70b2ffa91b7bbc98c5884236f5b36bb545a89c37e8c02a9b460065c97151d77c64f8d93b92fd93bcff406f039d9 nptyping-2.5.0.tar.gz
+"
diff --git a/testing/py3-ntplib/APKBUILD b/testing/py3-ntplib/APKBUILD
index 2ef88f0cd8c..55581b71675 100644
--- a/testing/py3-ntplib/APKBUILD
+++ b/testing/py3-ntplib/APKBUILD
@@ -2,17 +2,18 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-ntplib
_pkgname=ntplib
-pkgver=0.3.4
-pkgrel=2
+pkgver=0.4.0
+pkgrel=4
pkgdesc="Python module that offers a simple interface to query NTP servers"
options="net" # Requires connecting to pool.ntp.org
-url="https://pypi.python.org/pypi/ntplib"
+url="https://pypi.org/project/ntplib"
arch="noarch"
license="MIT"
replaces="py-ntplib" # for backwards compatibility
provides="py-ntplib=$pkgver-r$pkgrel" # for backwards compatibility
depends="python3"
makedepends="python3-dev py3-setuptools"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/cf-natali/ntplib/archive/$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -25,7 +26,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="368852f3fcc9e9a1c90340656bcf8e9b1143d62f616a1f177567eed419125466d572e57bac9a25465c775499cfb6b5ce1b1ee9a93c54e93667d751285757709e py3-ntplib-0.3.4.tar.gz"
+sha512sums="
+ad735b1bccc4dc149622423b2877dc1d4b461f245dd0bd5b0cf963918ea63806772783e03eb8a66c75934746981fbd28789f19efa339c87b2f83e8218ee4a4c3 py3-ntplib-0.4.0.tar.gz
+"
diff --git a/testing/py3-numpy-stl/APKBUILD b/testing/py3-numpy-stl/APKBUILD
new file mode 100644
index 00000000000..6ef430bd527
--- /dev/null
+++ b/testing/py3-numpy-stl/APKBUILD
@@ -0,0 +1,34 @@
+# Contributor: Aiden Grossman <agrossman154@yahoo.com>
+# Maintainer: Aiden Grossman <agrossman154@yahoo.com>
+pkgname=py3-numpy-stl
+pkgver=3.0.1
+pkgrel=2
+pkgdesc="Library for working with STLs"
+url="https://github.com/WoLpH/numpy-stl"
+# s390x: no py3-utils
+arch="noarch !s390x"
+license="BSD-3-Clause"
+depends="python3 py3-utils py3-numpy"
+makedepends="py3-setuptools"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/wolph/numpy-stl/releases/download/v$pkgver/numpy-stl-$pkgver.tar.gz"
+builddir="$srcdir/numpy-stl-$pkgver"
+
+build() {
+ python3 setup.py build
+}
+
+check() {
+ # deselected test needs xvfb-run and fails
+ pytest \
+ --deselect tests/test_ascii.py::test_use_with_qt_with_custom_locale_decimal_delimeter
+}
+
+package() {
+ python3 setup.py install --skip-build --root="$pkgdir"
+}
+
+sha512sums="
+d01abb8f54738600ce36c8c44e1392957061030e7accbbfa0352aea4a904323a96712099146b311ce9518f243317c25c47cfb30930469602c0ad439de9f43c5f py3-numpy-stl-3.0.1.tar.gz
+"
diff --git a/testing/py3-nwdiag/APKBUILD b/testing/py3-nwdiag/APKBUILD
index 58c6de04c41..d70f968885c 100644
--- a/testing/py3-nwdiag/APKBUILD
+++ b/testing/py3-nwdiag/APKBUILD
@@ -2,14 +2,15 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-nwdiag
_pkgname=nwdiag
-pkgver=2.0.0
+pkgver=3.0.0
pkgrel=2
pkgdesc="Generate network-diagram image file from spec-text file"
-url="https://pypi.python.org/pypi/nwdiag"
+url="https://pypi.org/project/nwdiag"
arch="noarch"
license="Apache-2.0"
depends="py3-funcparserlib py3-blockdiag py3-pillow"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -21,7 +22,10 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
+ rm -rf "$pkgdir"/usr/lib/python3*/site-packages/rackdiag/tests
}
-sha512sums="b9064c56955c68074e6c9e262f90fadde5b0c9412d86e6fe3c7f76745638fb02a62ab720b515d3b81d1b896cac18df55622893d73380dfe003a4004b0b8b50e5 nwdiag-2.0.0.tar.gz"
+sha512sums="
+3443d2599c91c2e1a267172fe1c35ead18f733d4eebb7313597fdae3b8cac9cd8e0c2700750aef5b2a332851cc3e6a1942d3ffe165f55cdd68dc54430f0dd86f nwdiag-3.0.0.tar.gz
+"
diff --git a/testing/py3-onelogin/APKBUILD b/testing/py3-onelogin/APKBUILD
new file mode 100644
index 00000000000..db6bdbab51f
--- /dev/null
+++ b/testing/py3-onelogin/APKBUILD
@@ -0,0 +1,53 @@
+# Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
+# Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>
+pkgname=py3-onelogin
+_pkgname=onelogin-python-sdk
+pkgver=3.1.6
+pkgrel=1
+pkgdesc="OpenAPI Specification for OneLogin"
+url="https://github.com/onelogin/onelogin-python-sdk"
+license="MIT"
+arch="noarch"
+depends="
+ py3-dateutil
+ py3-urllib3
+ py3-frozendict
+ py3-typing-extensions
+ py3-certifi
+ "
+makedepends="
+ py3-setuptools
+ py3-gpep517
+ py3-wheel
+ "
+checkdepends="
+ py3-pytest
+ py3-pytest-cov
+ py3-pytest-randomly
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/onelogin/onelogin-python-sdk/archive/$pkgver.tar.gz"
+builddir="$srcdir"/$_pkgname-$pkgver
+subpackages="$pkgname-pyc"
+options="!check" # Failure due to factory-boy issues
+
+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
+ .testenv/bin/python3 -m pytest --cov=onelogin -v
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+44fccb05e82c55db82617c33cc0e2287699969d9a7f12a4992c0cd35c28b2215c66bef37849e45b5506df11524d1b143a2ab3ae16f001af51f0135c92d0801a4 py3-onelogin-3.1.6.tar.gz
+"
+
diff --git a/testing/py3-openapi-codec/APKBUILD b/testing/py3-openapi-codec/APKBUILD
index 438787ecbd1..2fb77ee4b43 100644
--- a/testing/py3-openapi-codec/APKBUILD
+++ b/testing/py3-openapi-codec/APKBUILD
@@ -3,7 +3,7 @@
pkgname=py3-openapi-codec
_pkgname=python-openapi-codec
pkgver=1.3.2
-pkgrel=6
+pkgrel=9
pkgdesc="OpenAPI codec for Core API"
url="https://github.com/core-api/python-openapi-codec"
arch="noarch"
@@ -11,8 +11,10 @@ license="BSD-2-Clause"
depends="py3-core-api"
makedepends="py3-setuptools"
checkdepends="py3-coverage py3-pytest py3-jinja2 py3-pycodestyle py3-pyflakes"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/core-api/$_pkgname/archive/$pkgver.tar.gz
disable-flake8-tests-that-requires-pyflake15.patch
+ assertEquals.patch
"
replaces="py-openapi-codec" # Backwards compatibility
@@ -25,12 +27,15 @@ build() {
}
package() {
- python3 setup.py --quiet install --prefix=/usr --root="$pkgdir"
+ python3 setup.py --quiet install --skip-build --root="$pkgdir"
}
check() {
python3 runtests
}
-sha512sums="566c82643bd6ad3e9bc444ceb9a518cb8bdddc9239f43e8bcce69d3b425a9d62b5d56d56cbe685fb0d054c1c3e33a19b010d5f8b4469d1c98fd092742b17bb22 py3-openapi-codec-1.3.2.tar.gz
-6807f1d48f17bcec58642037e262246b818fb0e5d522606c46fbe343fd2c7d5388a40d29e6d361ad34d92611a1eb24e29cc78377472bd608503a71c8e8017363 disable-flake8-tests-that-requires-pyflake15.patch"
+sha512sums="
+566c82643bd6ad3e9bc444ceb9a518cb8bdddc9239f43e8bcce69d3b425a9d62b5d56d56cbe685fb0d054c1c3e33a19b010d5f8b4469d1c98fd092742b17bb22 py3-openapi-codec-1.3.2.tar.gz
+6807f1d48f17bcec58642037e262246b818fb0e5d522606c46fbe343fd2c7d5388a40d29e6d361ad34d92611a1eb24e29cc78377472bd608503a71c8e8017363 disable-flake8-tests-that-requires-pyflake15.patch
+187935b5c43b30089da2c467c5e0cf17a717f02ec78b9cea05ac5b0369086233ed6dc125d3eb4bf4011b9baa069e276a9bc77e965712f72e7884e995cdc00c8e assertEquals.patch
+"
diff --git a/testing/py3-openapi-codec/assertEquals.patch b/testing/py3-openapi-codec/assertEquals.patch
new file mode 100644
index 00000000000..3caba7c0518
--- /dev/null
+++ b/testing/py3-openapi-codec/assertEquals.patch
@@ -0,0 +1,43 @@
+diff --git a/tests/test_encode.py b/tests/test_encode.py
+index 429a9f0..b6ecf2a 100644
+--- a/tests/test_encode.py
++++ b/tests/test_encode.py
+@@ -22,3 +22,3 @@ class TestBasicInfo(TestCase):
+ }
+- self.assertEquals(self.swagger['info'], expected)
++ self.assertEqual(self.swagger['info'], expected)
+
+@@ -27,3 +27,3 @@ class TestBasicInfo(TestCase):
+ expected = '2.0'
+- self.assertEquals(self.swagger['swagger'], expected)
++ self.assertEqual(self.swagger['swagger'], expected)
+
+@@ -32,3 +32,3 @@ class TestBasicInfo(TestCase):
+ expected = 'www.example.com'
+- self.assertEquals(self.swagger['host'], expected)
++ self.assertEqual(self.swagger['host'], expected)
+
+@@ -37,3 +37,3 @@ class TestBasicInfo(TestCase):
+ expected = ['https']
+- self.assertEquals(self.swagger['schemes'], expected)
++ self.assertEqual(self.swagger['schemes'], expected)
+
+@@ -74,3 +74,3 @@ class TestPaths(TestCase):
+ }
+- self.assertEquals(self.swagger['paths'][self.path]['get'], expected)
++ self.assertEqual(self.swagger['paths'][self.path]['get'], expected)
+ expected = {
+@@ -85,3 +85,3 @@ class TestPaths(TestCase):
+ }
+- self.assertEquals(self.swagger['paths'][self.path]['post'], expected)
++ self.assertEqual(self.swagger['paths'][self.path]['post'], expected)
+
+@@ -99,3 +99,3 @@ class TestParameters(TestCase):
+ def test_expected_fields(self):
+- self.assertEquals(len(self.swagger), 1)
++ self.assertEqual(len(self.swagger), 1)
+ expected = {
+@@ -107,2 +107,2 @@ class TestParameters(TestCase):
+ }
+- self.assertEquals(self.swagger[0], expected)
++ self.assertEqual(self.swagger[0], expected)
diff --git a/testing/py3-openssh-wrapper/APKBUILD b/testing/py3-openssh-wrapper/APKBUILD
index 18c1a3dd125..81a767f3471 100644
--- a/testing/py3-openssh-wrapper/APKBUILD
+++ b/testing/py3-openssh-wrapper/APKBUILD
@@ -3,22 +3,26 @@
pkgname=py3-openssh-wrapper
pkgver=0.5_git20130425
_commit=bbae8f9085ee341ea9f34231c8b716aa0d9b3a49
-pkgrel=0
+pkgrel=4
pkgdesc="Python wrapper around OpenSSH client"
url="https://github.com/NetAngels/openssh-wrapper"
arch="noarch"
license="BSD"
-depends="python3"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://github.com/NetAngels/openssh-wrapper/archive/$_commit/py3-openssh-wrapper-$pkgver.tar.gz"
builddir="$srcdir/openssh-wrapper-$_commit"
options="!check" # requires ssh daemon on localhost
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
diff --git a/testing/py3-openwisp-utils/APKBUILD b/testing/py3-openwisp-utils/APKBUILD
index 312f53c5ce2..8e992c52431 100644
--- a/testing/py3-openwisp-utils/APKBUILD
+++ b/testing/py3-openwisp-utils/APKBUILD
@@ -2,8 +2,8 @@
# Maintainer: Alex Denes <caskd@redxen.eu>
_pkgname=openwisp-utils
pkgname="py3-$_pkgname"
-pkgver=1.0.0
-pkgrel=0
+pkgver=1.0.4
+pkgrel=2
pkgdesc="Python and Django utilities shared between different openwisp modules"
url="https://github.com/openwisp/openwisp-utils"
arch="noarch"
@@ -21,6 +21,7 @@ checkdepends="
py3-openwisp-controller
"
makedepends="py3-setuptools_scm"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/openwisp/openwisp-utils/archive/refs/tags/$pkgver.tar.gz"
options="!check" # circular dependency caused by testing suite (controller <=> utils)
builddir="$srcdir/$_pkgname-$pkgver"
@@ -38,5 +39,5 @@ package() {
}
sha512sums="
-74931eab223688e47888f260614a43d29235bb26503ed54da62d2dc50b8276bc9bc31325bd3ca0c6c618e8902cc7314d63f824195c67b4303e42d1abdf5f1bc3 py3-openwisp-utils-1.0.0.tar.gz
+3ea32fc87f789a94221154ab17893b04d59f58cc542b6315117895195c019356a8a41495a77f28c382425e246c536c78ad2e5196fd01ed3b5e4d6923879be1ab py3-openwisp-utils-1.0.4.tar.gz
"
diff --git a/testing/py3-optuna/APKBUILD b/testing/py3-optuna/APKBUILD
new file mode 100644
index 00000000000..69c05fd357f
--- /dev/null
+++ b/testing/py3-optuna/APKBUILD
@@ -0,0 +1,52 @@
+# Contributor: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
+# Maintainer: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
+pkgname=py3-optuna
+_pkgorig=optuna
+pkgver=3.6.1
+pkgrel=1
+pkgdesc="Hyperparameter optimization framework"
+url="https://optuna.org"
+arch="noarch"
+license="MIT"
+depends="
+ python3
+ py3-alembic
+ py3-colorlog
+ py3-cmaes
+ py3-numpy
+ py3-packaging
+ py3-scipy
+ py3-sqlalchemy
+ py3-tqdm
+ py3-yaml
+ "
+checkdepends="
+ python3-dev
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+subpackages="$pkgname-pyc"
+source="https://github.com/optuna/optuna/archive/v$pkgver/$_pkgorig-$pkgver.tar.gz"
+builddir="$srcdir/optuna-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+# several test dependencies are missing | use smoke tests now
+check() {
+ PYTHONPATH=build/lib python3 -c "import optuna"
+}
+
+package() {
+ python3 -m installer --destdir="$pkgdir" .dist/*.whl
+}
+
+sha512sums="
+f8c04157c9dd8a82ecd2034ef818ead99580724c3c06c16e93bf996441432051a6fecd31ca11de9e75586f81fe566892dcbc32148b57e2801b02c9fa28c79bf7 optuna-3.6.1.tar.gz
+"
diff --git a/testing/py3-orderedmultidict/APKBUILD b/testing/py3-orderedmultidict/APKBUILD
index 6ee5e438fcd..30d47964db8 100644
--- a/testing/py3-orderedmultidict/APKBUILD
+++ b/testing/py3-orderedmultidict/APKBUILD
@@ -3,7 +3,7 @@
pkgname=py3-orderedmultidict
_pkgname=orderedmultidict
pkgver=1.0.1
-pkgrel=3
+pkgrel=6
pkgdesc="Ordered Multivalue Dictionary"
url="https://github.com/gruns/orderedmultidict"
arch="noarch"
@@ -11,6 +11,7 @@ license="Unlicense"
depends="py3-six"
makedepends="py3-setuptools"
checkdepends="py3-pycodestyle py3-flake8"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir/"$_pkgname-$pkgver
@@ -23,7 +24,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="5a826bb46dfe9d7e6e2159bf545612a35dd0f1bb5817c1fd78e0f3f4019f9144b36be94af08f87e881a310f593091df09702d001624c377f559a30f64b219c24 orderedmultidict-1.0.1.tar.gz"
diff --git a/testing/py3-osqp/APKBUILD b/testing/py3-osqp/APKBUILD
index 93a8cb0c5b8..b383039a5d1 100644
--- a/testing/py3-osqp/APKBUILD
+++ b/testing/py3-osqp/APKBUILD
@@ -2,15 +2,15 @@
# Maintainer: Anjandev Momi <anjan@momi.ca>
pkgname=py3-osqp
pkgver=0.6.2
-pkgrel=1
+pkgrel=5
pkgdesc="python interface for OSQP"
url="https://osqp.org/"
arch="all !x86 !armv7 !armhf" # py3-qdldl doesnt compile on these arches
license="Apache-2.0"
depends="python3 py3-qdldl"
-makedepends="py3-setuptools py3-wheel cmake py3-numpy-dev"
+makedepends="py3-setuptools py3-wheel cmake py3-numpy-dev python3-dev"
checkdepends="py3-pytest"
-subpackages="$pkgname-dev"
+subpackages="$pkgname-dev $pkgname-pyc"
source="osqp-python-$pkgver.tar.gz::https://github.com/osqp/osqp-python/archive/refs/tags/v$pkgver.post0.tar.gz
osqp-$pkgver.tar.gz::https://github.com/osqp/osqp/releases/download/v$pkgver/complete_sources.tar.gz"
builddir="$srcdir/osqp-python-$pkgver.post0"
@@ -31,7 +31,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
diff --git a/testing/py3-overpy/APKBUILD b/testing/py3-overpy/APKBUILD
deleted file mode 100644
index 5643878dd27..00000000000
--- a/testing/py3-overpy/APKBUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-# Contributor: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-# Maintainer: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-pkgname=py3-overpy
-_pkgorig=overpy
-pkgver=0.6
-pkgrel=0
-pkgdesc="Python Wrapper to access the Overpass API "
-url="https://github.com/DinoTools/python-overpy"
-arch="noarch"
-license="MIT"
-depends="python3"
-# hotpatch for riscv to have all depends
-# checkdepends="python3-dev py3-pytest py3-pytest-runner"
-makedepends="python3-dev py3-pytest py3-pytest-runner py3-setuptools"
-source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/o/overpy/overpy-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgorig-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 -m pytest
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-
-sha512sums="
-b077c9f14473ea9ca8a8b10cad2108e62716a1e42f9072aecd83ae362aba41fcb781483f50b4a953824800b7bec5fa08fe362a1076924216d55979419bade1ff py3-overpy-0.6.tar.gz
-"
diff --git a/testing/py3-ovos-backend-client/APKBUILD b/testing/py3-ovos-backend-client/APKBUILD
new file mode 100644
index 00000000000..6d329352f1f
--- /dev/null
+++ b/testing/py3-ovos-backend-client/APKBUILD
@@ -0,0 +1,48 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-ovos-backend-client
+pkgver=0.1.0_alpha13
+pkgrel=1
+pkgdesc="Unofficial python api for interaction with https://api.mycroft.ai"
+url="https://github.com/OpenVoiceOS/ovos-backend-client"
+# s390x blocked by py3-speechrecognition
+arch="noarch !s390x"
+license="Apache-2.0"
+depends="
+ py3-json-database
+ py3-ovos-bus-client
+ py3-ovos-plugin-manager
+ py3-ovos-utils
+ py3-speechrecognition
+ py3-timezonefinder
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="https://github.com/OpenVoiceOS/ovos-backend-client/archive/V${pkgver//_alpha/a}/ovos-backend-client-${pkgver//_alpha/a}.tar.gz"
+builddir="$srcdir/ovos-backend-client-${pkgver//_alpha/a}"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+8da8176974b3341bbaa49e3149061dfede0e0748151e7194b75a64070251de1d453b5d010325aaa544e6ae2808aaed54308b626e8df213939348d5b5e4473196 ovos-backend-client-0.1.0a13.tar.gz
+"
diff --git a/testing/py3-ovos-bus-client/APKBUILD b/testing/py3-ovos-bus-client/APKBUILD
new file mode 100644
index 00000000000..da241940c27
--- /dev/null
+++ b/testing/py3-ovos-bus-client/APKBUILD
@@ -0,0 +1,47 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-ovos-bus-client
+pkgver=0.0.5
+pkgrel=1
+pkgdesc="A simple interface for the mycroft messagebus and can be used to connect to ovos"
+url="https://github.com/OpenVoiceOS/ovos-bus-client"
+arch="noarch"
+license="Apache-2.0"
+depends="
+ py3-ovos-config
+ py3-ovos-utils
+ py3-pyee
+ py3-websocket-client
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/OpenVoiceOS/ovos-bus-client/archive/refs/tags/V$pkgver.tar.gz"
+builddir="$srcdir/ovos-bus-client-$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
+ # Disabled tests have broken imports
+ .testenv/bin/python3 -m pytest -k 'not test_class_patching and not test_inheritance' \
+ --ignore test/unittests/test_compat.py
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+5e61190fb8774174ba8594ceb2db170a0ca29afb0b941c6081f8ebc3ae3ca5813f325155016d2255d0d674b6ccc7ff02d74f9a458aca716b98dafeaa647cd62b py3-ovos-bus-client-0.0.5.tar.gz
+"
diff --git a/testing/py3-ovos-classifiers/APKBUILD b/testing/py3-ovos-classifiers/APKBUILD
new file mode 100644
index 00000000000..5c046a1f1a5
--- /dev/null
+++ b/testing/py3-ovos-classifiers/APKBUILD
@@ -0,0 +1,53 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-ovos-classifiers
+pkgver=0.0.0_alpha37
+pkgrel=1
+pkgdesc="Open during construction"
+url="https://github.com/OpenVoiceOS/ovos-classifiers"
+arch="noarch"
+license="Apache-2.0"
+depends="
+ py3-dateutil
+ py3-joblib
+ py3-nltk
+ py3-ovos-utils
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="
+ py3-ovos-plugin-manager
+ py3-pytest
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/OpenVoiceOS/ovos-classifiers/archive/refs/tags/V${pkgver//_alpha/a}.tar.gz
+ assertEquals.patch
+ "
+builddir="$srcdir/ovos-classifiers-${pkgver//_alpha/a}"
+
+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
+ # test/unittests/test_opm.py is broken
+ .testenv/bin/python3 -m pytest \
+ --ignore test/unittests/test_opm.py
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+f81a49f0711cb1f033300beefea7c211b147e095b8a0d00b18b4ea54a6e7cf2dcc586414a3b3e737189f058d72218f354e5e618f7af2e0539ab5f4fdf4fe84b5 py3-ovos-classifiers-0.0.0_alpha37.tar.gz
+6ed6be4095a9bcf07196c5ee867fcb6c53114dc7f5c4a58eac52371ab63e629e39b3f9cf15f80e2bf74be7f5439072c02beedcecd3e4f2e8db839eead0a308bb assertEquals.patch
+"
diff --git a/testing/py3-ovos-classifiers/assertEquals.patch b/testing/py3-ovos-classifiers/assertEquals.patch
new file mode 100644
index 00000000000..0c7769cbe0f
--- /dev/null
+++ b/testing/py3-ovos-classifiers/assertEquals.patch
@@ -0,0 +1,18 @@
+diff --git a/test/unittests/test_numeric.py b/test/unittests/test_numeric.py
+index a32fe5e..cd1e781 100644
+--- a/test/unittests/test_numeric.py
++++ b/test/unittests/test_numeric.py
+@@ -11,9 +11,9 @@ class TestEnglish(unittest.TestCase):
+
+- self.assertEquals(parser.convert_words_to_numbers("this is test number two"),
++ self.assertEqual(parser.convert_words_to_numbers("this is test number two"),
+ "this is test number 2")
+- self.assertEquals(parser.convert_words_to_numbers("this is test number two and a half"),
++ self.assertEqual(parser.convert_words_to_numbers("this is test number two and a half"),
+ "this is test number 2.5")
+- self.assertEquals(parser.convert_words_to_numbers("this is the first test"),
++ self.assertEqual(parser.convert_words_to_numbers("this is the first test"),
+ "this is the first test")
+- self.assertEquals(parser.convert_words_to_numbers("this is the first test", ordinals=True),
++ self.assertEqual(parser.convert_words_to_numbers("this is the first test", ordinals=True),
+ "this is the 1 test")
diff --git a/testing/py3-ovos-config/APKBUILD b/testing/py3-ovos-config/APKBUILD
new file mode 100644
index 00000000000..79a6596e564
--- /dev/null
+++ b/testing/py3-ovos-config/APKBUILD
@@ -0,0 +1,48 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-ovos-config
+pkgver=0.0.11
+pkgrel=1
+pkgdesc="OVOS configuration manager library"
+url="https://github.com/OpenVoiceOS/ovos-config"
+arch="noarch"
+license="Apache-2.0"
+depends="
+ py3-combo-lock
+ py3-dateutil
+ py3-ovos-utils
+ py3-ovos-utils
+ py3-rich-click
+ py3-watchdog
+ py3-yaml
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="https://github.com/OpenVoiceOS/ovos-config/archive/V$pkgver/ovos-config-$pkgver.tar.gz"
+builddir="$srcdir/ovos-config-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+a82e9d70c1776331c8531e16a5941f2a975a0fc89f1c17e7ca2de094ff38b848adfde522e2310b65ccda8d74900f3031445cdcb5650e50adaf240bb6fd7a7e26 ovos-config-0.0.11.tar.gz
+"
diff --git a/testing/py3-ovos-media-plugin-simple/APKBUILD b/testing/py3-ovos-media-plugin-simple/APKBUILD
new file mode 100644
index 00000000000..263c178ef0b
--- /dev/null
+++ b/testing/py3-ovos-media-plugin-simple/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-ovos-media-plugin-simple
+pkgver=0.0.1
+pkgrel=1
+pkgdesc="OVOS simple audio plugin"
+url="https://github.com/OpenVoiceOS/ovos-media-plugin-simple"
+arch="noarch"
+license="Apache-2.0"
+depends="py3-ovos-plugin-manager"
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/OpenVoiceOS/ovos-media-plugin-simple/archive/refs/tags/V$pkgver.tar.gz"
+options="!check" # No tests
+builddir="$srcdir/ovos-media-plugin-simple-$pkgver"
+
+replaces="py3-ovos-audio-plugin-simple"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+7b4ab41f1d549a18bdb8e3b0395bd6b849a53daf63c111ac9cdb538c7969a93689bf12c5f40c1a14497e69d5f9b137a6020b27f454870d50758ff95ce75e654e py3-ovos-media-plugin-simple-0.0.1.tar.gz
+"
diff --git a/testing/py3-ovos-microphone-plugin-alsa/APKBUILD b/testing/py3-ovos-microphone-plugin-alsa/APKBUILD
new file mode 100644
index 00000000000..9cf57f24162
--- /dev/null
+++ b/testing/py3-ovos-microphone-plugin-alsa/APKBUILD
@@ -0,0 +1,37 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-ovos-microphone-plugin-alsa
+pkgver=0.0.0
+pkgrel=1
+pkgdesc="OpenVoiceOS Microphone plugin"
+url="https://github.com/OpenVoiceOS/ovos-microphone-plugin-alsa"
+arch="noarch"
+license="Apache-2.0"
+depends="
+ py3-ovos-plugin-manager
+ py3-pyalsaaudio
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/OpenVoiceOS/ovos-microphone-plugin-alsa/archive/refs/tags/V$pkgver.tar.gz"
+options="!check" # No tests
+builddir="$srcdir/ovos-microphone-plugin-alsa-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+a70124794bdf16b6aae84a47e7c454c7670f01679e48d58bb3796434de3f2c07222ce69880de21c3ede691c886a9aa1b7403580fa42bced263b5bcafd45ed3c3 py3-ovos-microphone-plugin-alsa-0.0.0.tar.gz
+"
diff --git a/testing/py3-ovos-ocp-audio-plugin/APKBUILD b/testing/py3-ovos-ocp-audio-plugin/APKBUILD
new file mode 100644
index 00000000000..295e876391c
--- /dev/null
+++ b/testing/py3-ovos-ocp-audio-plugin/APKBUILD
@@ -0,0 +1,61 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-ovos-ocp-audio-plugin
+pkgver=0.0.6_alpha2
+pkgrel=2
+pkgdesc="A full-fledged voice media player packaged as a Mycroft audio plugin"
+url="https://github.com/OpenVoiceOS/ovos-ocp-audio-plugin"
+# s390x blocked by py3-speechrecognition -> py3-ovos-backend-client
+arch="noarch !s390x"
+license="Apache-2.0"
+depends="
+ py3-dbus-next
+ py3-lingua-franca
+ py3-ovos-media-plugin-simple
+ py3-ovos-backend-client
+ py3-ovos-bus-client
+ py3-ovos-ocp-files-plugin
+ py3-ovos-plugin-manager
+ py3-ovos-workshop
+ py3-padacioso
+ "
+makedepends="
+ py3-setuptools
+ py3-gpep517
+ py3-wheel
+ "
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/OpenVoiceOS/ovos-ocp-audio-plugin/archive/refs/tags/V${pkgver//_alpha/a}.tar.gz"
+# Hangs on collecting tests
+options="!check"
+builddir="$srcdir/ovos-ocp-audio-plugin-${pkgver//_alpha/a}"
+
+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
+
+ # test/unittests/test_media_intents.py is failing
+ # Ignored test have a dependency on mycroft (provided by ovos-core), causing a circular dependency
+ .testenv/bin/python3 -m pytest \
+ --ignore test/unittests/test_audio_backends.py \
+ --ignore test/unittests/test_external_ocp.py \
+ --ignore test/unittests/test_mycroft.py \
+ --ignore test/unittests/test_mycroft_bus_api.py \
+ --ignore test/unittests/test_media_intents.py
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+90eb290c4c16cd471e12fc3431ea5229e4a0db909b782cc855cca223e47a3ba44ca90e0a86cc03f3b978803b3b3546bb370bdb9667ab91b5e3e5bc82f6b11998 py3-ovos-ocp-audio-plugin-0.0.6_alpha2.tar.gz
+"
diff --git a/testing/py3-ovos-ocp-files-plugin/APKBUILD b/testing/py3-ovos-ocp-files-plugin/APKBUILD
new file mode 100644
index 00000000000..4c032f8a11e
--- /dev/null
+++ b/testing/py3-ovos-ocp-files-plugin/APKBUILD
@@ -0,0 +1,51 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-ovos-ocp-files-plugin
+pkgver=0.13.0
+pkgrel=1
+pkgdesc="A library for reading and, in the future, writing audio metadata"
+url="https://github.com/OpenVoiceOS/ovos-ocp-files-plugin"
+arch="noarch"
+license="MIT"
+depends="
+ py3-attrs
+ py3-bidict
+ py3-bitstruct
+ py3-more-itertools
+ py3-pprintpp
+ py3-wrapt
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="
+ py3-pytest
+ py3-ward
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/OpenVoiceOS/ovos-ocp-files-plugin/archive/refs/tags/V$pkgver.tar.gz"
+options="!check" # Pytest fails to find fixture "description"
+builddir="$srcdir/ovos-ocp-files-plugin-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+737c8e319e86f58e6523597ceba2b142ef7adb956c169c2c68194b1bea5ebcd5ce22221ca158c6db97b3fc0c54afe968356268e25b84cac68b10133d98f152ed py3-ovos-ocp-files-plugin-0.13.0.tar.gz
+"
diff --git a/testing/py3-ovos-ocp-m3u-plugin/APKBUILD b/testing/py3-ovos-ocp-m3u-plugin/APKBUILD
new file mode 100644
index 00000000000..51321838fe9
--- /dev/null
+++ b/testing/py3-ovos-ocp-m3u-plugin/APKBUILD
@@ -0,0 +1,34 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-ovos-ocp-m3u-plugin
+pkgver=0.0.2_alpha1
+pkgrel=1
+pkgdesc="ovos-core m3u plugin"
+url="https://github.com/OpenVoiceOS/ovos-ocp-m3u-plugin"
+arch="noarch !s390x" # blocked by py3-ovos-ocp-audio-plugin
+license="Apache-2.0"
+depends="py3-ovos-ocp-audio-plugin"
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/OpenVoiceOS/ovos-ocp-m3u-plugin/archive/refs/tags/V${pkgver//_alpha/a}.tar.gz"
+options="!check" # No tests
+builddir="$srcdir/ovos-ocp-m3u-plugin-${pkgver//_alpha/a}"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+abb92e3cf319a22eb803d8789277b317d65492419993ab6e2486abbd91587404b8d5230c4125dd0554730644a3e5be1be49de127b7fc57b3ca8cd9833ea274fa py3-ovos-ocp-m3u-plugin-0.0.2_alpha1.tar.gz
+"
diff --git a/testing/py3-ovos-ocp-news-plugin/APKBUILD b/testing/py3-ovos-ocp-news-plugin/APKBUILD
new file mode 100644
index 00000000000..b19d0bcda93
--- /dev/null
+++ b/testing/py3-ovos-ocp-news-plugin/APKBUILD
@@ -0,0 +1,46 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-ovos-ocp-news-plugin
+pkgver=0.0.3
+pkgrel=1
+pkgdesc="ovos-core news plugin"
+url="https://github.com/OpenVoiceOS/ovos-ocp-news-plugin"
+arch="noarch !s390x" # blocked by py3-ovos-ocp-audio-plugin
+license="Apache-2.0"
+depends="
+ py3-beautifulsoup4
+ py3-ovos-ocp-audio-plugin
+ py3-ovos-ocp-m3u-plugin
+ py3-ovos-ocp-rss-plugin
+ py3-tz
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/OpenVoiceOS/ovos-ocp-news-plugin/archive/refs/tags/V$pkgver.tar.gz"
+builddir="$srcdir/ovos-ocp-news-plugin-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+36f0c6fa081e6aec492e324032f0f3fb372e556c074c4241dd4c36a8acd133641f9f33d44f54ad12fb5e595c749989969cc129ccbffd81690a69e6319e026fbe py3-ovos-ocp-news-plugin-0.0.3.tar.gz
+"
diff --git a/testing/py3-ovos-ocp-rss-plugin/APKBUILD b/testing/py3-ovos-ocp-rss-plugin/APKBUILD
new file mode 100644
index 00000000000..a7e79c69c17
--- /dev/null
+++ b/testing/py3-ovos-ocp-rss-plugin/APKBUILD
@@ -0,0 +1,37 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-ovos-ocp-rss-plugin
+pkgver=0.0.2
+pkgrel=1
+pkgdesc="ovos-core rss plugin"
+url="https://github.com/OpenVoiceOS/ovos-ocp-rss-plugin"
+arch="noarch !s390x" # blocked by py3-ovos-ocp-audio-plugin
+license="Apache-2.0"
+depends="
+ py3-feedparser
+ py3-ovos-ocp-audio-plugin
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/OpenVoiceOS/ovos-ocp-rss-plugin/archive/refs/tags/V$pkgver.tar.gz"
+options="!check" # No tests
+builddir="$srcdir/ovos-ocp-rss-plugin-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+ee05a725efab1b75a746033f57583a5608d38133102a9c651c882a5042bb721a11ddeda476a19487ffada193ec9b7890bd6d348b33422ab19f0ceeb818150e39 py3-ovos-ocp-rss-plugin-0.0.2.tar.gz
+"
diff --git a/testing/py3-ovos-phal-plugin-connectivity-events/APKBUILD b/testing/py3-ovos-phal-plugin-connectivity-events/APKBUILD
new file mode 100644
index 00000000000..09f2a81df64
--- /dev/null
+++ b/testing/py3-ovos-phal-plugin-connectivity-events/APKBUILD
@@ -0,0 +1,45 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-ovos-phal-plugin-connectivity-events
+pkgver=0.0.3
+pkgrel=1
+pkgdesc="Monitors network state and exposes it via messagebus"
+url="https://github.com/OpenVoiceOS/ovos-PHAL-plugin-connectivity-events"
+arch="noarch"
+license="Apache-2.0"
+depends="
+ py3-ovos-bus-client
+ py3-ovos-plugin-manager
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="
+ py3-pytest
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/OpenVoiceOS/ovos-PHAL-plugin-connectivity-events/archive/refs/tags/$pkgver.tar.gz"
+builddir="$srcdir/ovos-PHAL-plugin-connectivity-events-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+7ba4a960fcc8b48cc793d266b64cb326d9a7a310d45056c4fb777df34e0473aa3bab375bef268d399d83278dc31ab96fd1a3f3b20a80febf3a6e94d97c0362ef py3-ovos-phal-plugin-connectivity-events-0.0.3.tar.gz
+"
diff --git a/testing/py3-ovos-phal-plugin-ipgeo/APKBUILD b/testing/py3-ovos-phal-plugin-ipgeo/APKBUILD
new file mode 100644
index 00000000000..cf1de2cd16f
--- /dev/null
+++ b/testing/py3-ovos-phal-plugin-ipgeo/APKBUILD
@@ -0,0 +1,38 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-ovos-phal-plugin-ipgeo
+pkgver=0.0.2
+pkgrel=1
+pkgdesc="Provides geolocation information via the OVOS Messagebus"
+url="https://github.com/OpenVoiceOS/ovos-PHAL-plugin-ipgeo"
+arch="noarch"
+license="Apache-2.0"
+depends="
+ py3-ovos-config
+ py3-ovos-plugin-manager
+ py3-requests
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/OpenVoiceOS/ovos-PHAL-plugin-ipgeo/archive/refs/tags/$pkgver.tar.gz"
+options="!check" # No tests
+builddir="$srcdir/ovos-PHAL-plugin-ipgeo-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+6ba8c42e4bbcc33f66cf80d7ce6eee5d36f83f8d130cc406625786734a9a0f5c296b3b3ec1ca56cfafd8a3f2fa066d179814706fb9830ddc6e67701488e72d23 py3-ovos-phal-plugin-ipgeo-0.0.2.tar.gz
+"
diff --git a/testing/py3-ovos-phal-plugin-network-manager/APKBUILD b/testing/py3-ovos-phal-plugin-network-manager/APKBUILD
new file mode 100644
index 00000000000..a16a277cd17
--- /dev/null
+++ b/testing/py3-ovos-phal-plugin-network-manager/APKBUILD
@@ -0,0 +1,40 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-ovos-phal-plugin-network-manager
+pkgver=1.1.0
+pkgrel=1
+pkgdesc="NetworkManager plugin for PHAL"
+url="https://github.com/OpenVoiceOS/ovos-PHAL-plugin-network-manager"
+arch="noarch"
+license="Apache-2.0"
+depends="
+ networkmanager-cli
+ py3-dbus-next
+ py3-ovos-bus-client
+ py3-ovos-plugin-manager
+ py3-ovos-utils
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/OpenVoiceOS/ovos-PHAL-plugin-network-manager/archive/refs/tags/$pkgver.tar.gz"
+options="!check" # No tests
+builddir="$srcdir/ovos-PHAL-plugin-network-manager-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+b2e19a740749c91d617a007de8000bab89197260e6ffc1d649bc182dc79f989eef8c9eb5fb1dccc4e5d31c6420f85ee3280f9707e70ada637fbfeea83efe77da py3-ovos-phal-plugin-network-manager-1.1.0.tar.gz
+"
diff --git a/testing/py3-ovos-phal-plugin-oauth/APKBUILD b/testing/py3-ovos-phal-plugin-oauth/APKBUILD
new file mode 100644
index 00000000000..bfe23a3597d
--- /dev/null
+++ b/testing/py3-ovos-phal-plugin-oauth/APKBUILD
@@ -0,0 +1,43 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-ovos-phal-plugin-oauth
+pkgver=0.0.2
+pkgrel=1
+pkgdesc="OAuth plugin for OVOS"
+url="https://github.com/OpenVoiceOS/ovos-PHAL-plugin-oauth"
+# s390x blocked by py3-speechrecognition -> py3-ovos-backend-client
+arch="noarch !s390x"
+license="Apache-2.0"
+depends="
+ py3-flask
+ py3-oauthlib
+ py3-ovos-backend-client
+ py3-ovos-bus-client
+ py3-ovos-utils
+ py3-pillow
+ py3-qrcode
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/OpenVoiceOS/ovos-PHAL-plugin-oauth/archive/refs/tags/$pkgver.tar.gz"
+options="!check" # No tests
+builddir="$srcdir/ovos-PHAL-plugin-oauth-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+b1f374a6df7446897efce7960c1cea6b0ff22a5076c766fb116daf2d52c6e63677df9aba702ae33e2bc0cdbf827c212d181291ddaacf303be30ca9e8462f6528 py3-ovos-phal-plugin-oauth-0.0.2.tar.gz
+"
diff --git a/testing/py3-ovos-phal-plugin-system/APKBUILD b/testing/py3-ovos-phal-plugin-system/APKBUILD
new file mode 100644
index 00000000000..ac027ef404a
--- /dev/null
+++ b/testing/py3-ovos-phal-plugin-system/APKBUILD
@@ -0,0 +1,33 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-ovos-phal-plugin-system
+pkgver=0.0.4
+pkgrel=1
+pkgdesc="handle bus events to interact with the OS"
+url="https://github.com/OpenVoiceOS/ovos-PHAL-plugin-system"
+arch="noarch"
+license="Apache-2.0"
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/OpenVoiceOS/ovos-PHAL-plugin-system/archive/refs/tags/$pkgver.tar.gz"
+options="!check" # No tests
+builddir="$srcdir/ovos-PHAL-plugin-system-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+6d0d689be51add4cb97e421159be26dd23fa9f67abce7a39a66da0bdc9f36e56f32fa025aff2e1cd1ed22988a4b2d4d9ce51d44f76ac97ffc19ce9145507ceeb py3-ovos-phal-plugin-system-0.0.4.tar.gz
+"
diff --git a/testing/py3-ovos-plugin-manager/APKBUILD b/testing/py3-ovos-plugin-manager/APKBUILD
new file mode 100644
index 00000000000..9753b5c897f
--- /dev/null
+++ b/testing/py3-ovos-plugin-manager/APKBUILD
@@ -0,0 +1,41 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-ovos-plugin-manager
+pkgver=0.0.24
+pkgrel=1
+pkgdesc="Plugin manager for OpenVoiceOS, STT/TTS/Wakewords that can be used anywhere"
+url="https://github.com/OpenVoiceOS/OVOS-plugin-manager"
+arch="noarch"
+license="Apache-2.0"
+depends="
+ py3-combo-lock
+ py3-langcodes
+ py3-ovos-bus-client
+ py3-ovos-utils
+ py3-quebra-frases
+ py3-requests
+ "
+makedepends="
+ py3-setuptools
+ py3-gpep517
+ py3-wheel
+ "
+subpackages="$pkgname-pyc"
+source="https://github.com/OpenVoiceOS/OVOS-plugin-manager/archive/V$pkgver/ovos-plugin-manager-V$pkgver.tar.gz"
+options="!check" # No tests
+builddir="$srcdir/ovos-plugin-manager-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+e8c5605311cb42fa964b1e1024926f079aa09c9da56d313f5e63044db065e426b1f7b4b447f0ffeefad83b301fa78f1e0c036bb651dcfec0d14816884d8a887a ovos-plugin-manager-V0.0.24.tar.gz
+"
diff --git a/testing/py3-ovos-stt-plugin-server/APKBUILD b/testing/py3-ovos-stt-plugin-server/APKBUILD
new file mode 100644
index 00000000000..2af47c77058
--- /dev/null
+++ b/testing/py3-ovos-stt-plugin-server/APKBUILD
@@ -0,0 +1,34 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-ovos-stt-plugin-server
+pkgver=0.0.4_alpha4
+pkgrel=1
+pkgdesc="OpenVoiceOS companion plugin for OpenVoiceOS STT Server"
+url="https://github.com/OpenVoiceOS/ovos-stt-plugin-server"
+arch="noarch"
+license="Apache-2.0"
+depends="py3-ovos-plugin-manager"
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/OpenVoiceOS/ovos-stt-plugin-server/archive/refs/tags/V${pkgver//_alpha/a}.tar.gz"
+options="!check" # No tests
+builddir="$srcdir/ovos-stt-plugin-server-${pkgver//_alpha/a}"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+92794b6dc46f651dea89f67379609f6e1f793e13c6aa08ac50318b3c6d40f8a17a4d1c0eb584c71811aef5bacb9d7449c25043faf9d03cd27b1afdfd280eb8b2 py3-ovos-stt-plugin-server-0.0.4_alpha4.tar.gz
+"
diff --git a/testing/py3-ovos-tts-plugin-mimic3-server/APKBUILD b/testing/py3-ovos-tts-plugin-mimic3-server/APKBUILD
new file mode 100644
index 00000000000..5e48b259f21
--- /dev/null
+++ b/testing/py3-ovos-tts-plugin-mimic3-server/APKBUILD
@@ -0,0 +1,38 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-ovos-tts-plugin-mimic3-server
+pkgver=0.0.2_alpha4
+pkgrel=1
+pkgdesc="OVOS Server TTS plugin for Mimic3"
+url="https://github.com/OpenVoiceOS/ovos-tts-plugin-mimic3-server"
+arch="noarch"
+license="Apache-2.0"
+depends="
+ py3-ovos-plugin-manager
+ py3-ovos-utils
+ py3-requests
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/OpenVoiceOS/ovos-tts-plugin-mimic3-server/archive/refs/tags/V${pkgver//_alpha/a}.tar.gz"
+options="!check" # No tests
+builddir="$srcdir/ovos-tts-plugin-mimic3-server-${pkgver//_alpha/a}"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+d6f3b3606f438c1b9b438e1b252bf2e61de751cf8d39192554c2cbfa6d77672d718e54746d2d04265045a084cb0a7718623e78cae07cd0b93492e1c80aaac3c7 py3-ovos-tts-plugin-mimic3-server-0.0.2_alpha4.tar.gz
+"
diff --git a/testing/py3-ovos-utils/APKBUILD b/testing/py3-ovos-utils/APKBUILD
new file mode 100644
index 00000000000..bd1f3117047
--- /dev/null
+++ b/testing/py3-ovos-utils/APKBUILD
@@ -0,0 +1,57 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-ovos-utils
+pkgver=0.0.36
+pkgrel=1
+pkgdesc="Collection of simple utilities for use across the MyCroft ecosystem"
+url="https://github.com/OpenVoiceOS/ovos_utils"
+arch="noarch"
+license="Apache-2.0"
+depends="
+ py3-json-database
+ py3-kthread
+ py3-pexpect
+ py3-pyee
+ py3-rapidfuzz
+ py3-requests
+ py3-watchdog
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="
+ py3-dateutil
+ py3-pytest
+ "
+subpackages="$pkgname-pyc"
+source="https://github.com/OpenVoiceOS/ovos_utils/archive/V$pkgver/ovos_utils-V$pkgver.tar.gz"
+builddir="$srcdir/ovos-utils-$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
+ # Ignored tests cause circular dependencies on py3-ovos-config and ovos-messagebus
+ .testenv/bin/python3 -m pytest -k 'not test_event_scheduler_interface and not test_get_source_message' \
+ --ignore test/unittests/test_gui.py \
+ --ignore test/unittests/test_skills.py \
+ --ignore test/unittests/test_time.py \
+ --ignore test/unittests/test_events.py \
+ --deselect test/unittests/test_audio_utils.py::TestPlaySounds
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+90adcd7c548b97d53859d638fb566a836ed394e229b190491e72f2844d830c30ac29510c4e06dfbf8dda951a3e61416b754db0a19347960d0d136909a4a78080 ovos_utils-V0.0.36.tar.gz
+"
diff --git a/testing/py3-ovos-vad-plugin-webrtcvad/APKBUILD b/testing/py3-ovos-vad-plugin-webrtcvad/APKBUILD
new file mode 100644
index 00000000000..bb4f581644e
--- /dev/null
+++ b/testing/py3-ovos-vad-plugin-webrtcvad/APKBUILD
@@ -0,0 +1,39 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-ovos-vad-plugin-webrtcvad
+pkgver=0.0.1
+pkgrel=0
+pkgdesc="ovos plugin for voice activity detection using webrtcvad"
+url="https://github.com/OpenVoiceOS/ovos-vad-plugin-webrtcvad"
+# 32-bit arches blocked by py3-webrtcvad
+# s390x, ppc64le and riscv64 blocked by py3-webrtcvad
+arch="noarch !x86 !armhf !armv7 !s390x !ppc64le !riscv64"
+license="Apache-2.0"
+depends="
+ py3-webrtcvad
+ py3-ovos-plugin-manager
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/OpenVoiceOS/ovos-vad-plugin-webrtcvad/archive/refs/tags/V$pkgver.tar.gz"
+options="!check" # No tests
+builddir="$srcdir/ovos-vad-plugin-webrtcvad-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+516d565498d65fdb1dec1cc22be242fd401943164e85dc3c01861348640a6aa40a0175d7e6bc3a913750a91ef9ae804fe71e185a9efd2c25112e9ee698150f1e py3-ovos-vad-plugin-webrtcvad-0.0.1.tar.gz
+"
diff --git a/testing/py3-ovos-workshop/APKBUILD b/testing/py3-ovos-workshop/APKBUILD
new file mode 100644
index 00000000000..b7f9dcef8c4
--- /dev/null
+++ b/testing/py3-ovos-workshop/APKBUILD
@@ -0,0 +1,53 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-ovos-workshop
+pkgver=0.0.13_alpha17
+pkgrel=1
+pkgdesc="Frameworks, templates and patches for the mycroft universe "
+url="https://github.com/OpenVoiceOS/OVOS-workshop"
+# s390x blocked by py3-speechrecognition -> py3-ovos-backend-client
+arch="noarch !s390x"
+license="Apache-2.0"
+depends="
+ py3-lingua-franca
+ py3-ovos-backend-client
+ py3-ovos-config
+ py3-ovos-config
+ py3-ovos-utils
+ py3-rapidfuzz
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="
+ py3-adapt-parser
+ py3-lingua-franca
+ py3-pytest
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/OpenVoiceOS/ovos-workshop/archive/refs/tags/${pkgver//_alpha/a}.tar.gz"
+options="!check" # OVOS-utils
+builddir="$srcdir/OVOS-workshop-${pkgver//_alpha/a}"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+692c65a6d4b7d7a110949bbd5d76f3403d7c17179faabce922d4af4126e9fc0494a2bb80de397351089f31dc9ec66949ceee0276ef30abf9385d2e8dd6882ad1 py3-ovos-workshop-0.0.13_alpha17.tar.gz
+"
diff --git a/testing/py3-ovos-ww-plugin-vosk/APKBUILD b/testing/py3-ovos-ww-plugin-vosk/APKBUILD
new file mode 100644
index 00000000000..14192c8c64d
--- /dev/null
+++ b/testing/py3-ovos-ww-plugin-vosk/APKBUILD
@@ -0,0 +1,42 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-ovos-ww-plugin-vosk
+pkgver=0.1.1
+pkgrel=0
+pkgdesc="Vosk wake word plugin for OVOS"
+url="https://github.com/OpenVoiceOS/ovos-ww-plugin-vosk"
+# only x86_64 and aarch64 supported by vosk-api
+arch="noarch !x86 !armhf !armv7 !s390x !ppc64le !riscv64"
+license="Apache-2.0"
+depends="
+ ovos-skill-installer
+ py3-numpy
+ py3-ovos-plugin-manager
+ py3-ovos-utils
+ py3-speechrecognition
+ py3-vosk-api
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/OpenVoiceOS/ovos-ww-plugin-vosk/archive/refs/tags/V$pkgver.tar.gz"
+options="!check" # No tests
+builddir="$srcdir/ovos-ww-plugin-vosk-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+47b8e6ab431b8d9137f79a7941a4f74bd0ca59bbe362ca25f16bd6db63c8f7c652f43d9ef798b48582238b6170bb21c66009992f2bfc9ada23adde6812815621 py3-ovos-ww-plugin-vosk-0.1.1.tar.gz
+"
diff --git a/testing/py3-owslib/APKBUILD b/testing/py3-owslib/APKBUILD
new file mode 100644
index 00000000000..e5af59275bf
--- /dev/null
+++ b/testing/py3-owslib/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: Holger Jaekel <holger.jaekel@gmx.de>
+# Maintainer: Holger Jaekel <holger.jaekel@gmx.de>
+pkgname=py3-owslib
+#_pkgreal is used by apkbuild-pypi to find modules at PyPI
+_pkgreal=OWSLib
+pkgver=0.29.3
+pkgrel=1
+pkgdesc="OGC Web Service utility library"
+url="http://packages.python.org/pypi/OWSLib"
+arch="noarch"
+license="BSD-3-Clause"
+depends="python3 py3-dateutil py3-tz py3-requests py3-lxml"
+checkdepends="python3-dev py3-pytest py3-tox py3-lxml"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/O/OWSLib/OWSLib-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ tox --sitepackages
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+fc503be2b2e7d7f539283c7602831097bda680a74133debacb0a51116a25c261b972e3497e69ccea27329672183b447e6e299e7e8cc3853be1341db2cef427e2 OWSLib-0.29.3.tar.gz
+"
diff --git a/testing/py3-padacioso/APKBUILD b/testing/py3-padacioso/APKBUILD
new file mode 100644
index 00000000000..966abf9e254
--- /dev/null
+++ b/testing/py3-padacioso/APKBUILD
@@ -0,0 +1,40 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-padacioso
+pkgver=0.2.0
+pkgrel=1
+pkgdesc="Dead simple regex based intent parser"
+url="https://github.com/OpenJarbas/padacioso"
+arch="noarch"
+license="Apache-2.0"
+depends="py3-simplematch"
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/OpenJarbas/padacioso/archive/refs/tags/V$pkgver.tar.gz"
+builddir="$srcdir/padacioso-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+bfb8758a1835c19e6d625d98f140bde2beacab4c5098d3ec5946d66f950582f2ab3fff90d4953bd0b13dd5f53fa12857b020b9da033f45b15cf6d59c256f5149 py3-padacioso-0.2.0.tar.gz
+"
diff --git a/testing/py3-pam/APKBUILD b/testing/py3-pam/APKBUILD
index a882789e907..848e549e245 100644
--- a/testing/py3-pam/APKBUILD
+++ b/testing/py3-pam/APKBUILD
@@ -2,14 +2,16 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=py3-pam
_pkgname=python-pam
-pkgver=1.8.4
-pkgrel=4
+pkgver=2.0.2
+pkgrel=2
pkgdesc="A Python interface to the PAM library"
url="https://github.com/FirefighterBlu3/python-pam"
arch="noarch"
license="MIT"
-depends="linux-pam python3"
-makedepends="py3-setuptools"
+depends="linux-pam python3 py3-six"
+makedepends="py3-setuptools py3-wheel py3-gpep517 py3-installer"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/FirefighterBlu3/python-pam/archive/v$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -17,15 +19,40 @@ replaces="py-pam" # Backwards compatibility
provides="py-pam=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- python3 setup.py check
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ case "$CARCH" in
+ aarch64)
+ .testenv/bin/python3 -m pytest \
+ --deselect tests/test_internals.py::test_PamAuthenticator__normal_success \
+ --deselect tests/test_internals.py::test_PamAuthenticator__unset_DISPLAY \
+ --deselect tests/test_internals.py::test_PamAuthenticator__env_set \
+ --deselect tests/test_internals.py::test_PamAuthenticator__open_session_unauthenticated \
+ --deselect tests/test_internals.py::test_PamAuthenticator__close_session_unauthenticated
+ ;;
+# FAILED tests/test_internals.py::test_PamAuthenticator__normal_success - asser...
+# FAILED tests/test_internals.py::test_PamAuthenticator__unset_DISPLAY - assert...
+# FAILED tests/test_internals.py::test_PamAuthenticator__env_set - assert True ...
+# FAILED tests/test_internals.py::test_PamAuthenticator__close_session_unauthenticated
+ *)
+ .testenv/bin/python3 -m pytest \
+ --deselect tests/test_internals.py::test_PamAuthenticator__open_session_unauthenticated
+ ;;
+#FAILED tests/test_internals.py::test_PamAuthenticator__open_session_unauthenticated - assert 14 == 10
+ esac
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
-sha512sums="8228df0136df890746579f66ff181fd4fd269536db3ecf3d5e0410501e8d67a906ac5cedb0ed29b6cde5eb824727d644e60be20b22b0a8ba6da0523854f023d7 py3-pam-1.8.4.tar.gz"
+sha512sums="
+eafeb753b22ffccc1c5729516ea1ae26799d3749140fe91849ddb804066cabd4b5493e9b059172977dd5b3c5d48c8b5ced6c5c944931fcf23225dda09db026f6 py3-pam-2.0.2.tar.gz
+"
diff --git a/testing/py3-parse/APKBUILD b/testing/py3-parse/APKBUILD
new file mode 100644
index 00000000000..1ac233b8a4e
--- /dev/null
+++ b/testing/py3-parse/APKBUILD
@@ -0,0 +1,35 @@
+# Contributor: Ado <ado@expedio.it>
+# Maintainer: Ado <ado@expedio.it>
+pkgname=py3-parse
+_pkgname=parse
+pkgver=1.20.0
+pkgrel=1
+pkgdesc="Parse strings using a specification based on the Python format() syntax"
+url="https://github.com/r1chardj0n3s/parse"
+arch="noarch"
+license="MIT"
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+subpackages="$pkgname-pyc"
+source="$_pkgname-$pkgver.tar.gz::https://github.com/r1chardj0n3s/parse/archive/refs/tags/$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+options="!check" # todo
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/$_pkgname-$pkgver-*.whl
+}
+
+
+sha512sums="
+690152d1c459cb52860a948094b2d3f0e5f7a391162ed8fabb8fba032ef5a0741cd04d13090d791299b970497a7a2e8578f483d3c286a6a74d03940b9b6e9fba parse-1.20.0.tar.gz
+"
diff --git a/testing/py3-parsel/APKBUILD b/testing/py3-parsel/APKBUILD
deleted file mode 100644
index 2b18160def9..00000000000
--- a/testing/py3-parsel/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Contributor: prspkt <prspkt@protonmail.com>
-# Maintainer: prspkt <prspkt@protonmail.com>
-pkgname=py3-parsel
-_pkgname=parsel
-pkgver=1.6.0
-pkgrel=2
-pkgdesc="Library to extract data from HTML and XML using XPath and CSS selectors"
-url="https://github.com/scrapy/parsel"
-arch="noarch"
-license="BSD-3-Clause"
-makedepends="py3-setuptools py3-pytest-runner"
-depends="py3-cssselect py3-lxml py3-six py3-w3lib"
-checkdepends="py3-pytest py3-sybil"
-source="$_pkgname-$pkgver.tar.gz::https://github.com/scrapy/parsel/archive/v$pkgver.tar.gz"
-builddir="$srcdir"/$_pkgname-$pkgver
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 setup.py test
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-d3161522e1102cceeb1f29ab020b33019d4ac7f096cfab8fbe40f54073e49afc24f02aa54206d86f56c8f92e3db2d0d2f8a3dbdfa6417492cf299201f2ae6604 parsel-1.6.0.tar.gz
-"
diff --git a/testing/py3-parver/APKBUILD b/testing/py3-parver/APKBUILD
index f30daa5b866..640256dd7e2 100644
--- a/testing/py3-parver/APKBUILD
+++ b/testing/py3-parver/APKBUILD
@@ -1,21 +1,23 @@
# Contributor: Michał Polański <michal@polanski.me>
# Maintainer: Michał Polański <michal@polanski.me>
pkgname=py3-parver
-_pkgname=parver
-pkgver=0.3.1
-pkgrel=2
+pkgver=0.5
+pkgrel=1
pkgdesc="Parse and manipulate PEP 440 version numbers"
url="https://github.com/RazerM/parver"
license="MIT"
arch="noarch"
-depends="python3 py3-arpeggio"
-makedepends="py3-setuptools"
+depends="py3-arpeggio py3-attrs"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
checkdepends="py3-pytest py3-hypothesis py3-pretend"
-source="$_pkgname-$pkgver.tar.gz::https://github.com/RazerM/parver/archive/$pkgver.tar.gz"
-builddir="$srcdir/$_pkgname-$pkgver"
+subpackages="$pkgname-pyc"
+source="https://github.com/RazerM/parver/archive/$pkgver/py3-parver-$pkgver.tar.gz"
+builddir="$srcdir/parver-$pkgver"
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
@@ -23,7 +25,10 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir" --skip-build
+ python3 -m installer -d "$pkgdir" \
+ .dist/parver-$pkgver-py3-none-any.whl
}
-sha512sums="2ea7eb7be0c58657f5261d7b4729da6caaf2fac67db3fc3f36d29627bdbeba45f6ecb0e4bb251575b621908eb1ff5fa5ede5fc2ef0e041156dcc00548fd34360 parver-0.3.1.tar.gz"
+sha512sums="
+55fd52cb229c8358e89053f4c44d8cdb4bfbc8fd79ec40f4b7c6f18f2c848fb025e2be4e907b5cfbeb598e535fed67be4e10cea71d529a21e6d0712679c665d3 py3-parver-0.5.tar.gz
+"
diff --git a/testing/py3-patatt/APKBUILD b/testing/py3-patatt/APKBUILD
new file mode 100644
index 00000000000..6583a2e3975
--- /dev/null
+++ b/testing/py3-patatt/APKBUILD
@@ -0,0 +1,29 @@
+# Contributor: knuxify <knuxify@gmail.com>
+# Maintainer: knuxify <knuxify@gmail.com>
+pkgname=py3-patatt
+pkgver=0.6.3
+pkgrel=1
+pkgdesc="A simple library to add cryptographic attestation to patches sent via email"
+url="https://git.kernel.org/pub/scm/utils/patatt/patatt.git/about/"
+arch="noarch"
+license="MIT-0"
+depends="py3-pynacl"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+subpackages="$pkgname-pyc $pkgname-doc"
+source="https://git.kernel.org/pub/scm/utils/patatt/patatt.git/snapshot/patatt-$pkgver.tar.gz"
+builddir="$srcdir/patatt-$pkgver"
+options="!check" # no test suite
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" .dist/*.whl
+}
+
+sha512sums="
+bbbf38fcf62b3f811b141147df2a167d4cfcf7f3f0484a5380c80213edb00aad20f578ae27c560c1266cbce48878072176a0460f09b7bcc5142b9009d8e99e17 patatt-0.6.3.tar.gz
+"
diff --git a/testing/py3-pathvalidate/APKBUILD b/testing/py3-pathvalidate/APKBUILD
new file mode 100644
index 00000000000..6ea6d42884b
--- /dev/null
+++ b/testing/py3-pathvalidate/APKBUILD
@@ -0,0 +1,35 @@
+# Contributor: lauren n. liberda <lauren@selfisekai.rocks>
+# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
+pkgname=py3-pathvalidate
+pkgver=3.2.0
+pkgrel=1
+pkgdesc="Python library to sanitize/validate a string such as filenames/file-paths/etc"
+url="https://github.com/thombashi/pathvalidate"
+arch="noarch"
+license="MIT"
+depends="python3"
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="py3-pytest py3-click py3-faker"
+options="!check" # tests require unpackaged unmaintained dependencies
+subpackages="$pkgname-pyc"
+source="https://github.com/thombashi/pathvalidate/archive/refs/tags/v$pkgver/pathvalidate-$pkgver.tar.gz"
+builddir="$srcdir/pathvalidate-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+d1b0e49028bc5497558d9a0c15b4e3c301cacb439bebccffc467fc23001854877dbc81a214cc6eb34c5a905a88c4f9394f5865a4de42f354b2450a3bfe10bb9e pathvalidate-3.2.0.tar.gz
+"
diff --git a/testing/py3-pbkdf2/APKBUILD b/testing/py3-pbkdf2/APKBUILD
index 1e82eb5db8c..fd46e6ac429 100644
--- a/testing/py3-pbkdf2/APKBUILD
+++ b/testing/py3-pbkdf2/APKBUILD
@@ -3,13 +3,14 @@
pkgname=py3-pbkdf2
_pkgname=python-pbkdf2
pkgver=1.3
-pkgrel=3
+pkgrel=6
pkgdesc="Password-based key derivation function"
url="http://www.dlitz.net/software/python-pbkdf2"
arch="noarch"
license="MIT"
depends="python3"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/dlitz/$_pkgname/archive/v$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -22,6 +23,6 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="642372615a2ffc9cf352805789f836c42763c49cbf113d64524a55c6ff8a09f0fda36c92713387f27c2f6a2950ce89ae04dc9f92495cba904400685b148f947e py3-pbkdf2-1.3.tar.gz"
diff --git a/testing/py3-pcbnewtransition/APKBUILD b/testing/py3-pcbnewtransition/APKBUILD
new file mode 100644
index 00000000000..f9d39cd603f
--- /dev/null
+++ b/testing/py3-pcbnewtransition/APKBUILD
@@ -0,0 +1,47 @@
+# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
+pkgname=py3-pcbnewtransition
+pkgver=0.4.1
+pkgrel=0
+pkgdesc="Easily support KiCAD 7, 6 and 5 in your KiCAD plugins by monkeypatching older versions to KiCAD 7 API"
+url="https://github.com/yaqwsx/pcbnewTransition"
+# riscv64: py3-shapely
+# aarch64, armv7, armhf, mips64: py3-solidpython
+# s390x: kicad
+arch="noarch !riscv64 !aarch64 !armv7 !armhf !s390x"
+license="MIT"
+depends="
+ kicad
+ python3
+ "
+makedepends="
+ py3-gpep517
+ py3-python-versioneer
+ py3-setuptools
+ py3-wheel
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/yaqwsx/pcbnewTransition/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/pcbnewTransition-$pkgver"
+options="!check" # no tests in the repo
+
+prepare() {
+ default_prepare
+
+ # unvendor old versioneer
+ rm -f versioneer.py
+}
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+5e3d68279d7626b1cb7bc6a2f265c1b3ee2fd283a55cbf7d765931553ad6fae95ae3365d1543d4711124a53a170dd884f612c6dc09d4a4e56856837b2bf73351 py3-pcbnewtransition-0.4.1.tar.gz
+"
diff --git a/testing/py3-pdal/APKBUILD b/testing/py3-pdal/APKBUILD
index c7a307bec46..62c15dc83ab 100644
--- a/testing/py3-pdal/APKBUILD
+++ b/testing/py3-pdal/APKBUILD
@@ -1,16 +1,17 @@
# Contributor: Bradley J Chambers <brad.chambers@gmail.com>
# Maintainer: Bradley J Chambers <brad.chambers@gmail.com>
pkgname=py3-pdal
-pkgver=2.2.2
-pkgrel=5
+pkgver=3.2.3
+pkgrel=4
pkgdesc="PDAL Python bindings"
-options="!check" # 1 test fail
+options="!check" # disabled - failing test with circular import
url="https://github.com/pdal/python"
arch="all"
license="BSD-3-Clause"
depends="python3 py3-numpy"
-makedepends="cython python3-dev py3-setuptools py3-packaging pdal-dev>=1.7.2-r1
- py3-numpy-dev libxml2-dev"
+checkdepends="pdal py3-pytest"
+makedepends="python3-dev pdal-dev py3-scikit-build py3-numpy-dev cmake ninja py3-pybind11-dev"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/PDAL/python/archive/$pkgver.tar.gz"
builddir="$srcdir/python-$pkgver"
@@ -18,17 +19,18 @@ replaces="py-pdal" # Backwards compatibility
provides="py-pdal=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ python3 setup.py build -DWITH_TESTS=ON
}
check() {
- python3 setup.py test
+ export PYTHONPATH=$PYTHONPATH:$(python -c "import os, skbuild; print(os.path.join('plugins', skbuild.constants.SKBUILD_DIR(), 'cmake-build'))")
+ py.test -v test/
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
-120cd86d773eea9c621a58efd81ebaee8323ea4dc2f51513a7f02eaa38ae363ba689a5e83737d199a033eece8503007abd5536bec2bf7c9d0ada5f8890f831e9 py3-pdal-2.2.2.tar.gz
+363c3ffe25f4f5498ceddf9b2dc93793e70ecbf787d8c393a55be68ae3432119557be3b28122476030a81009a1f8882079dd10deb9087fcbe1eaec1c8dc44808 py3-pdal-3.2.3.tar.gz
"
diff --git a/testing/py3-pebble/APKBUILD b/testing/py3-pebble/APKBUILD
new file mode 100644
index 00000000000..1c357939adc
--- /dev/null
+++ b/testing/py3-pebble/APKBUILD
@@ -0,0 +1,41 @@
+# Maintainer: Will Sinatra <wpsinatra@gmail.com>
+pkgname=py3-pebble
+pkgver=5.0.7
+pkgrel=1
+pkgdesc="Multi threading and processing eye-candy"
+url="https://github.com/noxdafox/pebble"
+arch="noarch"
+license="LGPL-3.0-or-later"
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="
+ py3-pytest-forked
+ py3-pytest-xdist
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/noxdafox/pebble/archive/refs/tags/$pkgver.tar.gz"
+builddir="$srcdir/pebble-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest -n auto --forked
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+5044ba70e174cb67c965e409c9f2bc6f718a36de86d4510e3e8eb40e334ed46ba8ac9edf5c04a4af5e3ad2abed01bd518cdd4726bfaf46b2a6253fbcbe323cd7 py3-pebble-5.0.7.tar.gz
+"
diff --git a/testing/py3-pecan/APKBUILD b/testing/py3-pecan/APKBUILD
deleted file mode 100644
index d32811296a9..00000000000
--- a/testing/py3-pecan/APKBUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-# Contributor: Duncan Bellamy <dunk@denkimushi.com>
-# Maintainer: Duncan Bellamy <dunk@denkimushi.com>
-pkgname=py3-pecan
-pkgver=1.4.1
-pkgrel=0
-pkgdesc="A WSGI object-dispatching web framework, designed to be lean and fast, with few dependencies"
-url="https://github.com/pecan/pecan"
-arch="noarch"
-license="BSD-3-Clause"
-depends="python3 py3-logutils py3-mako py3-six py3-webob py3-webtest"
-makedepends="py3-setuptools"
-checkdepends="py3-pytest"
-source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/p/pecan/pecan-$pkgver.tar.gz"
-builddir="$srcdir/pecan-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-# deselect test which looks like it should pass
-check() {
- rm pecan/tests/__init__.py
- python3 -m pytest --deselect=pecan/tests/test_base.py::TestAppRoot::test_controller_lookup_by_string_path
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-bd5ba47935e2d97677bcdc25ad4678ec63293e0000750fa3b39a2447be326dc7e1fd4cf77ac0519e1b7c6ecc7ba7c3e66d98443e78e647fba92383f048775c83 py3-pecan-1.4.1.tar.gz
-"
diff --git a/testing/py3-pefile/APKBUILD b/testing/py3-pefile/APKBUILD
deleted file mode 100644
index d1015a540e9..00000000000
--- a/testing/py3-pefile/APKBUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-# Contributor: Francesco Colista <fcolista@alpinelinux.org>
-# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
-pkgname=py3-pefile
-_pkgname=pefile
-pkgver=2021.9.3
-pkgrel=1
-pkgdesc="Python PE parsing module"
-url="https://github.com/erocarrera/pefile"
-arch="noarch"
-license="MIT"
-depends="py3-future python3"
-makedepends="py3-setuptools"
-source="$_pkgname-$pkgver.tar.gz::https://github.com/erocarrera/$_pkgname/archive/v$pkgver.tar.gz"
-builddir="$srcdir/$_pkgname-$pkgver"
-
-replaces=py-pefile # Backwards compatibility
-provides=py-pefile=$pkgver-r$pkgrel # Backwards compatibility
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 setup.py check
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-57a1e0b8923443c121756ce9303a834d93d7b823cdd6e11be1ea2dd14645f9e473695561787d28c1ab7daef7d5a592cfd530e0246db9c810b8951fd849b0e5e5 pefile-2021.9.3.tar.gz
-"
diff --git a/testing/py3-pelican/APKBUILD b/testing/py3-pelican/APKBUILD
index 4f07c5025e6..b6fd0c97e7a 100644
--- a/testing/py3-pelican/APKBUILD
+++ b/testing/py3-pelican/APKBUILD
@@ -2,55 +2,65 @@
# Maintainer: Danilo Falcão <danilo@falcao.org>
pkgname=py3-pelican
_pkgname=pelican
-pkgver=4.7.2
-pkgrel=0
+pkgver=4.9.1
+pkgrel=2
pkgdesc="Static site generator written in Python"
-options="!check" # Tests require locale support
-url="https://getpelican.com"
+url="https://getpelican.com/"
arch="noarch"
license="AGPL-3.0-only"
depends="
- python3
+ py3-blinker
+ py3-docutils
py3-feedgenerator
py3-jinja2
+ py3-ordered-set
py3-pygments
- py3-docutils
- py3-tz
- py3-blinker
- py3-unidecode
py3-dateutil
- py3-markdown
py3-rich
+ py3-unidecode
+ py3-watchfiles
+ py3-markdown
"
-makedepends="py3-setuptools"
-checkdepends="py3-django"
-source="https://files.pythonhosted.org/packages/source/p/$_pkgname/$_pkgname-$pkgver.tar.gz"
-builddir="$srcdir"/$_pkgname-$pkgver
-
-prepare() {
- default_prepare
-
- # remove shebang from python files
- sed -i '1d' \
- pelican/tools/*.py \
- pelican/tools/templates/*.py.jinja2
-}
+makedepends="
+ py3-gpep517
+ py3-pdm-backend
+ py3-wheel
+ "
+checkdepends="
+ py3-pytest
+ py3-typogrify
+ tzdata
+ "
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/p/$_pkgname/$_pkgname-$pkgver.tar.gz
+ no-locales-for-tests.patch
+ remove-shebang.patch
+ "
+builddir="$srcdir/$_pkgname-$pkgver"
replaces="pelican" # Backwards compatibility
provides="pelican=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- python3 setup.py test
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest -p no:warnings \
+ -k 'not test_datetime and not test_blinker_is_ordered'
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" .dist/*.whl
+ rm -r "$pkgdir"/usr/lib/python*/site-packages/pelican/tests
}
sha512sums="
-0fcb77159a99ff1da28e16925c27d5a700b56b25f8ade20682864fc02381e8ec27bec13c0bc1c614b9f0e7473006fe8fd890f84d4286d3abd39e4fbb8902e684 pelican-4.7.2.tar.gz
+3c5ece93864a29aa296e353e044022864c1c551b7a805adeb0914df9021bdf7a3d3977c91ddeba6c542c8879ff5fe7ca23e0163e17aaa93ed36747f35895937b pelican-4.9.1.tar.gz
+5d4c9a8b19d1614ebbf02850891aaf936652b360d961b6f2a849e66184b26f459dc3c7c2f7931429db750d7bd9dfcebfdc223af5b8cba2ebfe79050ede8ec553 no-locales-for-tests.patch
+2bd01659c4cc958b1deb8a9d20cd7585d84228e127050d81c4df424c8e7e4f832fd78f2e42dbc55793788cd8d0ef80cc8bbabb366173ebbfb3bc0a332b308ff6 remove-shebang.patch
"
diff --git a/testing/py3-pelican/no-locales-for-tests.patch b/testing/py3-pelican/no-locales-for-tests.patch
new file mode 100644
index 00000000000..8793ec611fb
--- /dev/null
+++ b/testing/py3-pelican/no-locales-for-tests.patch
@@ -0,0 +1,19 @@
+--- a/pelican/tests/support.py
++++ b/pelican/tests/support.py
+@@ -150,15 +150,7 @@
+
+
+ def locale_available(locale_):
+- old_locale = locale.setlocale(locale.LC_TIME)
+-
+- try:
+- locale.setlocale(locale.LC_TIME, str(locale_))
+- except locale.Error:
+- return False
+- else:
+- locale.setlocale(locale.LC_TIME, old_locale)
+- return True
++ return False
+
+
+ def can_symlink():
diff --git a/testing/py3-pelican/remove-shebang.patch b/testing/py3-pelican/remove-shebang.patch
new file mode 100644
index 00000000000..91633d37870
--- /dev/null
+++ b/testing/py3-pelican/remove-shebang.patch
@@ -0,0 +1,21 @@
+--- a/pelican/tools/pelican_import.py
++++ b/pelican/tools/pelican_import.py
+@@ -1,4 +1,3 @@
+-#!/usr/bin/env python
+
+ import argparse
+ import datetime
+--- a/pelican/tools/pelican_quickstart.py
++++ b/pelican/tools/pelican_quickstart.py
+@@ -1,4 +1,3 @@
+-#!/usr/bin/env python
+
+ import argparse
+ import locale
+--- a/pelican/tools/pelican_themes.py
++++ b/pelican/tools/pelican_themes.py
+@@ -1,4 +1,3 @@
+-#!/usr/bin/env python
+
+ import argparse
+ import os
diff --git a/testing/py3-pep8-naming/APKBUILD b/testing/py3-pep8-naming/APKBUILD
index 37d3fe0c8a9..d7feae3291c 100644
--- a/testing/py3-pep8-naming/APKBUILD
+++ b/testing/py3-pep8-naming/APKBUILD
@@ -1,22 +1,16 @@
# Contributor: Fabian Affolter <fabian@affolter-engineering.ch>
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-pep8-naming
-pkgver=0.12.1
-pkgrel=0
+pkgver=0.13.3
+pkgrel=2
pkgdesc="Check PEP-8 naming conventions plugin for flake8"
-url="https://github.com/flintwork/pep8-naming"
+url="https://github.com/PyCQA/pep8-naming"
arch="noarch"
license="MIT"
-depends="python3 py3-flake8 py3-flake8-polyfill"
+depends="python3 py3-flake8"
makedepends="py3-setuptools"
-checkdepends="
- py3-six
- py3-tox
- py3-virtualenv
- "
-source="https://files.pythonhosted.org/packages/source/p/pep8-naming/pep8-naming-$pkgver.tar.gz
- fix-missing-option.patch
- "
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/p/pep8-naming/pep8-naming-$pkgver.tar.gz"
builddir="$srcdir/pep8-naming-$pkgver"
replaces="py-pep8-naming" # Backwards compatibility
@@ -31,10 +25,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
-52f3b15455976f48cbe31940764585249d34fcebb6a735820aee5d24daa201d4df2fd2f3fdf807a04ebfd685b04cc42cfc42c238ef84df57af5adca101f26e90 pep8-naming-0.12.1.tar.gz
-a2492ec44ca56e77ef6eda1016368ce9ff035aa125ef758cd080352b9342e3e390432effde1673ce55fa99cde58887446552660907c1a4f0425a856420e07da2 fix-missing-option.patch
+67953b0908833fe6fb9fb1e78ffe315c076814dd5be7d813b2357c977acf5c7355961af76e2a2bb700a5da4030b65ee8e146be5227ec141c4f6ed329de8455d4 pep8-naming-0.13.3.tar.gz
"
diff --git a/testing/py3-pep8-naming/fix-missing-option.patch b/testing/py3-pep8-naming/fix-missing-option.patch
deleted file mode 100644
index 50f6d3ba7ed..00000000000
--- a/testing/py3-pep8-naming/fix-missing-option.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-Patch-Source: https://github.com/PyCQA/pep8-naming/pull/181
-From 03b8f36f6a8bb8bc79dfa5a71ad9be2a0bf8bbf5 Mon Sep 17 00:00:00 2001
-From: Ian Stapleton Cordasco <graffatcolmingov@gmail.com>
-Date: Wed, 20 Oct 2021 07:58:49 -0500
-Subject: [PATCH] Add missing option to get passing tests
-
-Related to https://github.com/PyCQA/pep8-naming/pull/180
----
- run_tests.py | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/run_tests.py b/run_tests.py
-index 64d80b5..660fede 100644
---- a/run_tests.py
-+++ b/run_tests.py
-@@ -86,6 +86,7 @@ def parse_options(checker, options):
- options_manager = OptionsManager('flake8')
- options_manager.add_option('--select', default=[])
- options_manager.add_option('--extended-default-select', default=['N'])
-+ options_manager.add_option('--extend-select', default=[])
- options_manager.add_option('--ignore', default=[])
- options_manager.add_option('--extend-ignore', default=[])
- options_manager.add_option('--enable-extensions', default=[])
diff --git a/testing/py3-pg_activity/APKBUILD b/testing/py3-pg_activity/APKBUILD
deleted file mode 100644
index f1439ec09aa..00000000000
--- a/testing/py3-pg_activity/APKBUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-# Contributor: Francesco Colista <fcolista@alpinelinux.org>
-# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
-pkgname=py3-pg_activity
-pkgver=2.3.1
-pkgrel=0
-pkgdesc="A top like application for PostgreSQL server activity monitoring."
-url="https://github.com/julmon/pg_activity"
-arch="noarch"
-license="PostgreSQL"
-depends="py3-psycopg2 py3-psutil"
-makedepends="py3-setuptools"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/dalibo/pg_activity/archive/v$pkgver.tar.gz"
-builddir="$srcdir/${pkgname/py3-//}-$pkgver"
-
-replaces=py-pg_activity # Backwards compatibility
-provides=py-pg_activity=$pkgver-r$pkgrel # Backwards compatibility
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 setup.py check
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-26c29ec1701cd2eead8314d2a4df247557164231c53323fb3bed12fbf346e14247addfa508af94cee685a2f0084a26c26118896c4c3395e41fb0eee4a4da2d27 py3-pg_activity-2.3.1.tar.gz
-"
diff --git a/testing/py3-phpserialize/APKBUILD b/testing/py3-phpserialize/APKBUILD
index 15446bc91f4..0e6353e6d84 100644
--- a/testing/py3-phpserialize/APKBUILD
+++ b/testing/py3-phpserialize/APKBUILD
@@ -3,7 +3,7 @@
pkgname=py3-phpserialize
_pkgname=phpserialize
pkgver=1.3
-pkgrel=4
+pkgrel=7
pkgdesc="A PHP serializer implementation for Python"
options="!check" # failures=1
url="https://github.com/mitsuhiko/phpserialize"
@@ -11,6 +11,7 @@ arch="noarch"
license="BSD-3-Clause"
depends="python3"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/mitsuhiko/phpserialize/archive/$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -26,7 +27,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="d96e3aa87d2f03fef6c7cee234e90b373989a9c8e3a07a8e2147a2e7487d3448ea0ef646263e517d6b307bf66f9ba1a4e8def04f919767532cede802cc7db144 py3-phpserialize-1.3.tar.gz"
diff --git a/testing/py3-piccata/APKBUILD b/testing/py3-piccata/APKBUILD
new file mode 100644
index 00000000000..502037f8c07
--- /dev/null
+++ b/testing/py3-piccata/APKBUILD
@@ -0,0 +1,46 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-piccata
+pkgver=2.0.3
+pkgrel=1
+pkgdesc="Python CoAP Toolkit"
+url="https://github.com/NordicSemiconductor/piccata"
+arch="noarch"
+license="MIT"
+depends="python3"
+makedepends="
+ py3-gpep517
+ py3-installer
+ py3-setuptools
+ py3-wheel
+ "
+subpackages="$pkgname-pyc"
+source="piccata-$pkgver.tar.gz::https://github.com/NordicSemiconductor/piccata/archive/refs/tags/$pkgver.tar.gz"
+builddir="$srcdir/piccata-$pkgver"
+options="!check" # no test ran
+
+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
+
+ # test_decode is broken
+ case "$CARCH" in
+ ppc64le) .testenv/bin/python3 -m unittest discover -k 'not test_decode and not test_client_server_communication' ;;
+ *) .testenv/bin/python3 -m unittest discover -k 'not test_decode' ;;
+ esac
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+0ca0a94e8eff860ddf8a2c41c4047e0838543490e12f651859d176bf70fd892618f92bc7da47cc6612bd2885f6a122b6ba9349d3536ce2abfcee1db81caf6624 piccata-2.0.3.tar.gz
+"
diff --git a/testing/py3-pickle-secure/APKBUILD b/testing/py3-pickle-secure/APKBUILD
new file mode 100644
index 00000000000..2b7eb6edf3d
--- /dev/null
+++ b/testing/py3-pickle-secure/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=py3-pickle-secure
+pkgver=0.99.9
+pkgrel=1
+pkgdesc="Easily create encrypted pickle files"
+url="https://pypi.org/project/pickle-secure/"
+arch="noarch"
+license="LGPL-3.0-or-later"
+depends="py3-cryptography"
+makedepends="py3-gpep517 py3-poetry-core"
+checkdepends="py3-pytest-cov"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/spapanik/pickle-secure/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/pickle-secure-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+b4594d50def34c0470b547dacb71d445227183e5cd78ac28aced37cc0b1007296988d82aefe4265b06adf61f0a57d29dd008a1517216034aa84b4eed5a10236f py3-pickle-secure-0.99.9.tar.gz
+"
diff --git a/testing/py3-piexif/APKBUILD b/testing/py3-piexif/APKBUILD
deleted file mode 100644
index 543121e05f4..00000000000
--- a/testing/py3-piexif/APKBUILD
+++ /dev/null
@@ -1,30 +0,0 @@
-# Contributor: prspkt <prspkt@protonmail.com>
-# Maintainer: prspkt <prspkt@protonmail.com>
-pkgname=py3-piexif
-_pyname=piexif
-pkgver=1.1.3
-pkgrel=3
-pkgdesc="EXIF manipulations with Python"
-url="https://github.com/hMatoba/Piexif"
-arch="noarch !armhf !armv7 !s390x !x86" # Test failures
-license="MIT"
-depends="python3"
-makedepends="py3-setuptools"
-checkdepends="py3-pillow"
-options="!check" # tests are broken https://github.com/hMatoba/Piexif/issues/108
-source="https://files.pythonhosted.org/packages/source/${_pyname:0:1}/$_pyname/$_pyname-$pkgver.zip"
-builddir="$srcdir"/$_pyname-$pkgver
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 setup.py test
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="df5f7793c39911af58bbae76cf998e2a7bc820b84dcf9808ee8f6a38f766f824fef28392ef88387e18b10c270c4b27881be310f0368076b6fb65379a11a93270 piexif-1.1.3.zip"
diff --git a/testing/py3-pika/APKBUILD b/testing/py3-pika/APKBUILD
index 7af9cadc0ce..a5d67d891ce 100644
--- a/testing/py3-pika/APKBUILD
+++ b/testing/py3-pika/APKBUILD
@@ -2,21 +2,22 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-pika
_pkgname=pika
-pkgver=1.2.0
+pkgver=1.3.2
pkgrel=1
pkgdesc="Python3 AMQP client library"
options="!check" # failures=1
-url="https://pika.readthedocs.org"
+url="https://pika.readthedocs.org/"
arch="noarch"
license="BSD-3-Clause"
depends="python3 py3-tornado py3-twisted"
-makedepends="py3-setuptools"
+makedepends="py3-gpep517 py3-installer py3-setuptools py3-wheel"
checkdepends="
py3-coverage
py3-codecov
py3-mock
py3-nose
"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/pika/pika/archive/$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -24,7 +25,9 @@ replaces="py-pika" # Backwards compatibility
provides="py-pika=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 1
}
check() {
@@ -32,9 +35,10 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
-0b5db7e09e589b35b42221970dc16c1fe26a7a7be35ab64a23574ae8d2eff72d700f6c95b457f8a4558f6835f3a80f464479e1db75826382776e74819412014b py3-pika-1.2.0.tar.gz
+86c1c33db808274052cbe18af68bef685fafa260f692d16dcd3ce6259107c343ebdd3482713a7948583566581defa6037f3344d03b11c50458432d044d8b2057 py3-pika-1.3.2.tar.gz
"
diff --git a/testing/py3-pip-system-certs/APKBUILD b/testing/py3-pip-system-certs/APKBUILD
new file mode 100644
index 00000000000..7e218d23ecc
--- /dev/null
+++ b/testing/py3-pip-system-certs/APKBUILD
@@ -0,0 +1,33 @@
+# Maintainer: Frank Oltmanns <alpine@oltmanns.dev>
+pkgname=py3-pip-system-certs
+pkgver=4.0
+pkgrel=1
+pkgdesc="Patches pip and requests at runtime to use certificates from the default system store"
+url="https://pypi.org/project/pip-system-certs/"
+arch="noarch"
+license="BSD-2-Clause"
+depends="py3-wrapt"
+makedepends="
+ py3-git-versioner
+ py3-gpep517
+ py3-wheel
+ "
+subpackages="$pkgname-pyc"
+source="https://gitlab.com/alelec/pip-system-certs/-/archive/v$pkgver/pip-system-certs-v$pkgver.tar.gz"
+builddir="$srcdir/pip-system-certs-v$pkgver"
+options="!check" # test suite installs/uninstalls using pip. Skip that.
+
+build() {
+ GIT_VERSIONER_VERSION_PY=$pkgver \
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ gpep517 install-wheel --destdir "$pkgdir" .dist/*.whl
+}
+
+sha512sums="
+6c583e0f8b61a774a78e0f561aa95717ed3e5735268bdd6a2767f0803697a3f7a64d132c9d1d5947a2bf06c220b9da4a10d4c31e8e523605422c4cbb7935a294 pip-system-certs-v4.0.tar.gz
+"
diff --git a/testing/py3-pivy/APKBUILD b/testing/py3-pivy/APKBUILD
index 1aa40afbeaf..86d311220a2 100644
--- a/testing/py3-pivy/APKBUILD
+++ b/testing/py3-pivy/APKBUILD
@@ -1,34 +1,29 @@
# Contributor: Aiden Grossman <agrossman154@yahoo.com>
# Maintainer: Aiden Grossman <agrossman154@yahoo.com>
pkgname=py3-pivy
-_pkgname=pivy
-pkgver=0.6.7
+pkgver=0.6.9_alpha0
pkgrel=0
pkgdesc="Python3 bindings for coin"
url="https://github.com/coin3d/pivy"
-# riscv64 blocked by qt5-qtwebengine via py3-pyside2
-# py3-pyside2 is not available on armhf
-arch="all !armhf !riscv64"
+# riscv64 blocked by py3-pyside6
+arch="all !riscv64"
license="ISC"
-depends="py3-pyside2"
-makedepends="swig soqt-dev qt5-qtbase-dev python3-dev glu-dev cmake"
+depends="py3-pyside6"
+makedepends="swig soqt-dev qt6-qtbase-dev python3-dev glu-dev cmake samurai"
checkdepends="py3-pytest"
options="!check" # test suite is interactive and requires full installation
-source="$pkgname-$pkgver.tar.gz::https://github.com/coin3d/pivy/archive/refs/tags/$pkgver.tar.gz
- qt5.patch
- "
-builddir="$srcdir/$_pkgname-$pkgver"
+source="$pkgname-$pkgver.tar.gz::https://github.com/coin3d/pivy/archive/refs/tags/${pkgver//_alpha/.a}.tar.gz"
+builddir="$srcdir/pivy-${pkgver//_alpha/.a}"
build() {
if [ "$CBUILD" != "$CHOST" ]; then
CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
fi
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_INSTALL_PREFIX=/usr \
-DBUILD_SHARED_LIBS=True \
-DCMAKE_BUILD_TYPE=None \
- -DCMAKE_CXX_FLAGS="$CXXFLAGS" \
- $CMAKE_CROSSOPTS .
+ $CMAKE_CROSSOPTS
cmake --build build
}
@@ -37,6 +32,5 @@ package() {
}
sha512sums="
-606eac3527b5906ad6884c25775b5625bfd2a1b1c78f75017b05e662d622c75d30e70fd5785ec2145902f5a02d99098b52cc776aee12fab02f0319762ee104b0 py3-pivy-0.6.7.tar.gz
-7750ded3eb09da510ba5f84e7957c2ae1f92be0df280901fd9c9eba4164758a8f2d436e2d6ae7634a91aed12609f4eefd181922e6caed0b4906c6bc9dbd7b562 qt5.patch
+1bfefd58d2921c8be170a97efa30cad53b01f636ea0cf236acca242be4f691669a4c310cd61c64d3e0c55e55e8be96d36945cd244380ddc0b3a06170d0f8b691 py3-pivy-0.6.9_alpha0.tar.gz
"
diff --git a/testing/py3-pivy/qt5.patch b/testing/py3-pivy/qt5.patch
deleted file mode 100644
index 7dfdc97658a..00000000000
--- a/testing/py3-pivy/qt5.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- ./qtinfo.py
-+++ ./qtinfo.py
-@@ -7,7 +7,7 @@
- if qmake_command:
- self._qmake_command = qmake_command
- else:
-- self._qmake_command = [find_executable("qmake"),]
-+ self._qmake_command = [find_executable("qmake-qt5"),]
- self._dict = {}
- # bind all variables early at __init__ time.
- for thing in self.__class__.__dict__:
diff --git a/testing/py3-plac/APKBUILD b/testing/py3-plac/APKBUILD
deleted file mode 100644
index 2addaf39c35..00000000000
--- a/testing/py3-plac/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Contributor: Oleg Titov <oleg.titov@gmail.com>
-# Maintainer: Oleg Titov <oleg.titov@gmail.com>
-pkgname=py3-plac
-pkgver=1.3.3
-pkgrel=2
-pkgdesc="Parsing the command line the easy way"
-url="https://github.com/micheles/plac"
-arch="noarch"
-license="BSD-2-Clause"
-depends="python3"
-makedepends="py3-setuptools"
-checkdepends="py3-pytest"
-source="https://files.pythonhosted.org/packages/source/p/plac/plac-$pkgver.tar.gz
- index.rst" # replicate index.rst for tests to pass
-builddir="$srcdir/plac-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- cp "$srcdir/index.rst" "$builddir/doc/index.rst"
- PYTHONPATH="$PWD/build/lib" pytest-3 -v -k "not test_expected_help"
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="304cd2ca23adf45b150adb395d83c3653228177c0a14db207150b7f9cd5a992421959c6e3c1204dd80f5cb09f7e601bd689034fa158a500e9214d4357f68a2e8 plac-1.3.3.tar.gz
-763e0838200a4dc25c4d4a74a9dc5b8ff8c32f5e67d00207a9f43274ad42eff1e0c6f08d04dc7123967d9426231d1ba3b0f0e8c0fcc688a528389e22f5b4c477 index.rst"
diff --git a/testing/py3-plac/index.rst b/testing/py3-plac/index.rst
deleted file mode 100644
index 74d4fecad20..00000000000
--- a/testing/py3-plac/index.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-.. include:: plac_core.rst
-.. include:: plac_adv.rst
diff --git a/testing/py3-playsound/APKBUILD b/testing/py3-playsound/APKBUILD
index 182ed6faf05..6ba8f1def02 100644
--- a/testing/py3-playsound/APKBUILD
+++ b/testing/py3-playsound/APKBUILD
@@ -1,24 +1,30 @@
# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
pkgname=py3-playsound
-pkgver=1.2.2
+pkgver=1.3.0
pkgrel=1
-_commit=907f1fe73375a2156f7e0900c4b42c0a60fa1d00
pkgdesc="Pure Python, cross platform, single function module for playing sounds"
-options="!check" # No testsuite
url="https://github.com/TaylorSMarks/playsound"
arch="noarch"
license="MIT"
-depends="python3"
+depends="python3 py3-gobject3 py3-gst"
makedepends="py3-setuptools"
-source="$pkgname-$pkgver.tar.gz::https://github.com/TaylorSMarks/playsound/archive/$_commit.tar.gz"
-builddir="$srcdir/playsound-$_commit"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/TaylorSMarks/playsound/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/playsound-$pkgver"
+options="!check" # tests hang
build() {
python3 setup.py build
}
+check() {
+ python3 test.py
+}
+
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="decd84ac3e7105adaecdd817cd2ff65eea5e507934278b058e5d183b384b9dd9dbd73236313e2eaed2b38f39ebbeb73f18bdefddde92b5963266e7773cbecc77 py3-playsound-1.2.2.tar.gz"
+sha512sums="
+a64d34ae843bc648a26a5c146e87f7a4da0a99edae5c9b50a522527a20cc464ddc80d85572efece4518c43e5a54a7ffdf756ebc3adad96d552314fa40e491148 py3-playsound-1.3.0.tar.gz
+"
diff --git a/testing/py3-plexapi/APKBUILD b/testing/py3-plexapi/APKBUILD
new file mode 100644
index 00000000000..0629a98d1c1
--- /dev/null
+++ b/testing/py3-plexapi/APKBUILD
@@ -0,0 +1,44 @@
+# Contributor: Fabricio Silva <hi@fabricio.dev>
+# Maintainer: Fabricio Silva <hi@fabricio.dev>
+pkgname=py3-plexapi
+_pkgname=python-plexapi
+pkgver=4.15.11
+pkgrel=1
+pkgdesc="Python bindings for the Plex API"
+url="https://github.com/pkkid/python-plexapi"
+arch="noarch"
+license="BSD-3-Clause"
+# tests requires an instance of plex running
+# net for sphinx
+options="net !check"
+depends="
+ python3
+ py3-requests
+ "
+makedepends="
+ py3-gpep517
+ py3-recommonmark
+ py3-setuptools
+ py3-sphinx_rtd_theme
+ py3-wheel
+ "
+subpackages="$pkgname-doc $pkgname-pyc"
+source="https://github.com/pkkid/python-plexapi/archive/$pkgver/py3-plexapi-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+ sphinx-build -W -b man docs man
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+ install -Dm644 man/pythonplexapi.1 -t "$pkgdir"/usr/share/man/man1
+}
+
+sha512sums="
+c68b414aa9262c3505dc2490c38e8d5dd896970f4df7fe8d382a0c5f2276ecc9833767e243b596c4f0f625e6d8984f5f89790fe7a71e9b6cab1c439f26b9cde1 py3-plexapi-4.15.11.tar.gz
+"
diff --git a/testing/py3-pockethernet/APKBUILD b/testing/py3-pockethernet/APKBUILD
index 940acfdd330..4829d8af4be 100644
--- a/testing/py3-pockethernet/APKBUILD
+++ b/testing/py3-pockethernet/APKBUILD
@@ -3,7 +3,7 @@
pkgname=py3-pockethernet
_pyname=pockethernet
pkgver=0.7.0
-pkgrel=0
+pkgrel=3
pkgdesc="Library for controlling the Pockethernet"
url="https://gitlab.com/MartijnBraam/pockethernet-protocol"
arch="noarch"
@@ -11,6 +11,7 @@ license="MIT"
depends="python3 py3-cobs py3-crc16"
makedepends="py3-setuptools"
_pypiprefix="${_pyname%${_pyname#?}}"
+subpackages="$pkgname-pyc"
source="https://gitlab.com/MartijnBraam/pockethernet-protocol/-/archive/$pkgver/pockethernet-protocol-$pkgver.tar.gz"
builddir=$srcdir/pockethernet-protocol-$pkgver
@@ -23,7 +24,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
e312f712b8ca914d307a9d2a4a82d5c954f210c1fb7936442e0c5608a8bab92a5b2e100a8e5be24a249f9ca15e6de2086c50bebd48ba6dcf69f70bf50e7b2c4d pockethernet-protocol-0.7.0.tar.gz
diff --git a/testing/py3-podman/APKBUILD b/testing/py3-podman/APKBUILD
deleted file mode 100644
index d90ecf07ec3..00000000000
--- a/testing/py3-podman/APKBUILD
+++ /dev/null
@@ -1,30 +0,0 @@
-# Contributor: Michał Polański <michal@polanski.me>
-# Maintainer: Michał Polański <michal@polanski.me>
-pkgname=py3-podman
-pkgver=4.0.0
-pkgrel=0
-pkgdesc="Python bindings for Podman's RESTful API"
-url="https://github.com/containers/podman-py"
-license="Apache-2.0"
-arch="noarch"
-depends="python3 py3-requests py3-toml py3-xdg"
-makedepends="py3-setuptools"
-checkdepends="py3-pytest py3-requests-mock py3-fixtures py3-testtools"
-source="https://github.com/containers/podman-py/archive/v$pkgver/py3-podman-$pkgver.tar.gz"
-builddir="$srcdir/podman-py-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- pytest podman/tests/unit
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir" --skip-build
-}
-
-sha512sums="
-e1dd48c931871206aae11fbcc31a711eecda89e9c60f62d5616dc3219e073d3ba74d38f63a05d4688e97fb678d2e03f8cd883456f7e75f2d7e313aa859ca3e8f py3-podman-4.0.0.tar.gz
-"
diff --git a/testing/py3-poetry-dynamic-versioning/APKBUILD b/testing/py3-poetry-dynamic-versioning/APKBUILD
new file mode 100644
index 00000000000..450d4b34ab2
--- /dev/null
+++ b/testing/py3-poetry-dynamic-versioning/APKBUILD
@@ -0,0 +1,37 @@
+# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=py3-poetry-dynamic-versioning
+pkgver=1.2.0
+pkgrel=1
+pkgdesc="Plugin for Poetry to enable dynamic versioning based on VCS tags"
+url="https://github.com/mtkennerly/poetry-dynamic-versioning"
+arch="noarch"
+license="MIT"
+depends="py3-dunamai py3-tomlkit py3-jinja2 py3-poetry-core"
+makedepends="py3-gpep517 py3-poetry-core py3-wheel py3-installer"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="https://github.com/mtkennerly/poetry-dynamic-versioning/archive/v$pkgver/py3-poetry-dynamic-versioning-$pkgver.tar.gz"
+builddir="$srcdir/poetry-dynamic-versioning-$pkgver"
+options="!check" # tests require a git repo
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+7e12745045dfa8b8bc7c140165cb39eef0e0231e23903ed7f58761e109dc28254906bc9609fd4b830559a8c462bd3cf80ac7a0bb71f6ba91ae9ef3a2d70cd811 py3-poetry-dynamic-versioning-1.2.0.tar.gz
+"
diff --git a/testing/py3-poppler-qt5/APKBUILD b/testing/py3-poppler-qt5/APKBUILD
new file mode 100644
index 00000000000..e58354b9616
--- /dev/null
+++ b/testing/py3-poppler-qt5/APKBUILD
@@ -0,0 +1,37 @@
+# Maintainer: Krystian Chachuła <krystian@krystianch.com>
+pkgname=py3-poppler-qt5
+_pkgname=python-poppler-qt5
+pkgver=21.3.0
+pkgrel=1
+pkgdesc="Python binding to Poppler-Qt5"
+url="https://github.com/frescobaldi/python-poppler-qt5"
+arch="all"
+license="LGPL-2.1-or-later"
+depends="py3-qt5 poppler-qt5"
+makedepends="
+ py3-gpep517
+ py3-wheel
+ py3-sip
+ python3-dev
+ py3-pyqt-builder
+ qt5-qtbase-dev
+ poppler-qt5-dev
+"
+source="$_pkgname-$pkgver.tar.gz::https://github.com/frescobaldi/python-poppler-qt5/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+options="!check" # no tests
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ dist/*.whl
+}
+
+sha512sums="
+cc942a860c2c999ff04fb0468b1556b0e23e7aa19a0185a39c5e903e717dca64bcbd51b8fe34b6885bd789cbf5cc1080c2ca1dcee30b3e69fa1721618e8db278 python-poppler-qt5-21.3.0.tar.gz
+"
diff --git a/testing/py3-pprintpp/APKBUILD b/testing/py3-pprintpp/APKBUILD
new file mode 100644
index 00000000000..2a90eeca843
--- /dev/null
+++ b/testing/py3-pprintpp/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-pprintpp
+pkgver=0.4.0
+pkgrel=1
+pkgdesc="A drop-in replacement for pprint that's actually pretty"
+url="https://github.com/wolever/pprintpp"
+arch="noarch"
+license="BSD-2-Clause"
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+subpackages="$pkgname-pyc"
+source="https://pypi.python.org/packages/source/p/pprintpp/pprintpp-$pkgver.tar.gz
+ $pkgname-0001-remove-u.patch::https://github.com/wolever/pprintpp/commit/deec5e5efad562fc2f9084abfe249ed0c7dd65fa.patch
+ "
+options="!check" # No tests
+builddir="$srcdir/pprintpp-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+c59d759744499ec74bbbbcf440a45b4bb5a1ed0586cd76d444da764eb3e3c02ef5e883c00c0501f1138baa84b04f5e89ce3f8c9ed7a9cbe65c93d42deb573010 pprintpp-0.4.0.tar.gz
+5fc1e52ff7e64fa6dad3e19f160d948dfcef24c6afa493878395cdfbe701fce20c85a8dee46be9ef86d6a56f7c1bdc02d4c735c9186bfc10b00d8e9f0166cc85 py3-pprintpp-0001-remove-u.patch
+"
diff --git a/testing/py3-preggy/APKBUILD b/testing/py3-preggy/APKBUILD
index 8c3149a382e..14a49191ccd 100644
--- a/testing/py3-preggy/APKBUILD
+++ b/testing/py3-preggy/APKBUILD
@@ -3,7 +3,7 @@
pkgname=py3-preggy
_pkgname=preggy
pkgver=1.4.4
-pkgrel=1
+pkgrel=4
pkgdesc="assertion library for Python"
options="!check" # no test suite
url="http://heynemann.github.io/preggy"
@@ -11,7 +11,7 @@ arch="noarch"
license="MIT"
depends="python3 py3-six py3-unidecode"
makedepends="py3-setuptools"
-subpackages="$pkgname-doc"
+subpackages="$pkgname-doc $pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/p/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -20,11 +20,10 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
install -Dm644 README.md "$pkgdir"/usr/share/licenses/$pkgname/README.md
}
-
sha512sums="
6eb6073eb28ba8684f2795c1d9aa93c2a24e50063359a769f7f7d84da2928e25a0ca86d4ac268dce0c2462bbe1a73e76f496325b6175a1218025e15fb7ce4f4c preggy-1.4.4.tar.gz
"
diff --git a/testing/py3-preshed/APKBUILD b/testing/py3-preshed/APKBUILD
deleted file mode 100644
index 6180bcb8b67..00000000000
--- a/testing/py3-preshed/APKBUILD
+++ /dev/null
@@ -1,39 +0,0 @@
-# Contributor: Oleg Titov <oleg.titov@gmail.com>
-# Maintainer: Oleg Titov <oleg.titov@gmail.com>
-pkgname=py3-preshed
-pkgver=3.0.6
-pkgrel=0
-pkgdesc="Cython hash tables that assume keys are pre-hashed"
-url="https://github.com/explosion/preshed"
-arch="all"
-license="MIT"
-depends="python3 py3-cymem py3-murmurhash"
-makedepends="python3-dev py3-setuptools cython"
-checkdepends="py3-pytest"
-subpackages="$pkgname-doc"
-source="preshed-$pkgver.tar.gz::https://github.com/explosion/preshed/archive/v$pkgver.tar.gz"
-builddir="$srcdir/preshed-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 setup.py install --root="$PWD/tmp_install"
-
- cd tmp_install/$(python3 -c "import site; print(site.getsitepackages()[0])")
-
-
- PYTHONPATH="$PWD/usr/lib" \
- pytest-3 preshed
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-
- install -Dm644 README.md "$pkgdir/usr/share/doc/$pkgname/README.md"
-}
-
-sha512sums="
-5b9ba00dc57c2dfbdcadd3269cf7ba1df8f9a00215f5e6304a2a2c721e3458f2d9e3d8450d500a8c0f65e2f03fcb05ccc2b4e6d579faf74054644e82a87114a4 preshed-3.0.6.tar.gz
-"
diff --git a/testing/py3-proglog/APKBUILD b/testing/py3-proglog/APKBUILD
index ee5f7dd53df..e9e685ffed1 100644
--- a/testing/py3-proglog/APKBUILD
+++ b/testing/py3-proglog/APKBUILD
@@ -1,23 +1,42 @@
# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
pkgname=py3-proglog
-pkgver=0.1.9
-pkgrel=1
+pkgver=0.1.10
+pkgrel=2
pkgdesc="Log and progress bar manager for console, notebooks, web"
url="https://github.com/Edinburgh-Genome-Foundry/Proglog"
arch="noarch"
license="MIT"
-depends="python3"
-makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/fe/ab/4cb19b578e1364c0b2d6efd6521a8b4b4e5c4ae6528041d31a2a951dd991/proglog-$pkgver.tar.gz"
-options="!check" # No testsuite
-builddir="$srcdir/proglog-$pkgver"
+depends="
+ py3-tqdm
+ python3
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/Edinburgh-Genome-Foundry/Proglog/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/Proglog-$pkgver"
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
}
package() {
- python3 setup.py install --root="$pkgdir" --optimize=1
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
-sha512sums="9491bee1d1e15e047df19091e764dce02f5d7c698706766e5e8dc9494fd628af5a973751170b713641c8df5882f3964fcfdc8c6db66fb1d20e601cdcbf4bc019 proglog-0.1.9.tar.gz"
+sha512sums="
+5613643430d9842efa4b4061a1afcefdbbf7b7367a7ccd61b35080c7b514b384bec40457e18cf21dd637885249efe827b9604751a3c7980dce48a5a28a0eb07b py3-proglog-0.1.10.tar.gz
+"
diff --git a/testing/py3-progressbar/APKBUILD b/testing/py3-progressbar/APKBUILD
deleted file mode 100644
index 0e4933e9716..00000000000
--- a/testing/py3-progressbar/APKBUILD
+++ /dev/null
@@ -1,29 +0,0 @@
-# Contributor: Fabian Affolter <fabian@affolter-engineering.ch>
-# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
-pkgname=py3-progressbar
-_pkgname=progressbar
-pkgver=2.5
-pkgrel=5
-pkgdesc="Text progress bar library for Python"
-url="https://github.com/niltonvolpato/python-progressbar"
-arch="noarch"
-license="BSD-3-Clause LGPL-2.1-or-later"
-replaces="py-progressbar" # for backwards compatibility
-provides="py-progressbar=$pkgver-r$pkgrel" # for backwards compatibility
-depends="python3"
-makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
-
-builddir="$srcdir/$_pkgname-$pkgver"
-
-build() {
- cd "$builddir"
- python3 setup.py build
-}
-
-package() {
- cd "$builddir"
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="86a56a573b903b947baac98b26f88e40072603007fdf5cda3e4a7e797fe4c4c42fd1a4b1ddb1c9ca9a062659d3647c428e33949e2df9e20b0f56a9a4099de51b progressbar-2.5.tar.gz"
diff --git a/testing/py3-progressbar2/APKBUILD b/testing/py3-progressbar2/APKBUILD
new file mode 100644
index 00000000000..67e742a7e62
--- /dev/null
+++ b/testing/py3-progressbar2/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
+# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
+pkgname=py3-progressbar2
+_pkgname=progressbar2
+pkgver=4.2.0
+pkgrel=2
+pkgdesc="Text progress bar library for Python"
+url="https://github.com/WoLpH/python-progressbar"
+arch="noarch !s390x" # py3-utils
+license="BSD-3-Clause"
+replaces="py-progressbar" # for backwards compatibility
+provides="py-progressbar=$pkgver-r$pkgrel" # for backwards compatibility
+depends="python3 py3-utils py3-freezegun"
+makedepends="py3-setuptools"
+checkdepends="py3-pytest py3-pytest-cov"
+
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
+
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ python3 setup.py build
+}
+
+check() {
+ PYTHONPATH="$PWD" pytest
+}
+
+package() {
+ python3 setup.py install --skip-build --root="$pkgdir"
+}
+
+sha512sums="
+d49c154e48bd730c2a7916ed53272ff20cb6fac8c9752734cf645d4701ffcdf25309bf493d03fdc5b6072a85b5f758332fa7448f307d4acc001ad4ab36303a68 progressbar2-4.2.0.tar.gz
+"
diff --git a/testing/py3-proplot/APKBUILD b/testing/py3-proplot/APKBUILD
new file mode 100644
index 00000000000..47d232f2cb0
--- /dev/null
+++ b/testing/py3-proplot/APKBUILD
@@ -0,0 +1,40 @@
+# Contributor: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
+# Maintainer: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
+pkgname=py3-proplot
+pkgver=0.9.7
+pkgrel=2
+pkgdesc="Succinct matplotlib wrapper for making beautiful, publication-quality graphics"
+url="https://github.com/proplot-dev/proplot"
+arch="noarch"
+license="MIT"
+depends="py3-matplotlib py3-numpy"
+makedepends="
+ py3-gpep517
+ py3-setuptools_scm
+ py3-wheel
+ "
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="https://github.com/proplot-dev/proplot/archive/v$pkgver/proplot-$pkgver.tar.gz"
+builddir="$srcdir/proplot-$pkgver"
+options="!check" # issues during the collection | will be fixed before moving to community
+
+build() {
+ export SETUPTOOLS_SCM_PRETEND_VERSION=$pkgver
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+3fce95d8bad6ed3e691251dfe4fdb6434bbce13d8bce28e8cb2696d390a29687fa033eabd0791b462ea23ca670244d82ac66a0b6e0361a39fb0ba3dadf736b0e proplot-0.9.7.tar.gz
+"
diff --git a/testing/py3-protego/APKBUILD b/testing/py3-protego/APKBUILD
index 8cee32876b2..eca7d348f83 100644
--- a/testing/py3-protego/APKBUILD
+++ b/testing/py3-protego/APKBUILD
@@ -1,15 +1,16 @@
# Contributor: prspkt <prspkt@protonmail.com>
# Maintainer: prspkt <prspkt@protonmail.com>
pkgname=py3-protego
-pkgver=0.1.16
-pkgrel=2
+pkgver=0.3.0
+pkgrel=1
pkgdesc="Pure-Python robots.txt parser with support for modern conventions"
url="https://github.com/scrapy/protego"
arch="noarch"
license="BSD-3-Clause"
-depends="python3 py3-six"
+depends="python3"
makedepends="py3-setuptools"
checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/P/Protego/Protego-$pkgver.tar.gz"
builddir="$srcdir/Protego-$pkgver"
@@ -22,7 +23,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="437a52eb05d77db0d084a572a528e92ff71702ea46df794b081f8ca0338d92a89035bd4f02891ae636b8662ecd4c4e129c4e54d4267b1ea36d40df6dd616b9a0 Protego-0.1.16.tar.gz"
+sha512sums="
+cb1209f93ed5dd6dc91d517107837c780e2138efa7766a9f6d00bd22d7b1904a5db5edb08db83bde34571735245d702db3a5c67970103dc77859bb4c9024e863 Protego-0.3.0.tar.gz
+"
diff --git a/testing/py3-proxmoxer/APKBUILD b/testing/py3-proxmoxer/APKBUILD
index 24348ff4322..0c4dcc9015e 100644
--- a/testing/py3-proxmoxer/APKBUILD
+++ b/testing/py3-proxmoxer/APKBUILD
@@ -1,38 +1,43 @@
# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=py3-proxmoxer
-pkgver=1.3.1
-pkgrel=0
+pkgver=2.0.1
+pkgrel=3
pkgdesc="Python wrapper for Proxmox API v2"
url="https://github.com/proxmoxer/proxmoxer"
arch="noarch"
license="MIT"
-depends="python3"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
checkdepends="
py3-mock
- py3-nose
py3-openssh-wrapper
py3-paramiko
+ py3-pytest
py3-requests-toolbelt
+ py3-responses
py3-testfixtures
"
+subpackages="$pkgname-pyc"
source="https://github.com/proxmoxer/proxmoxer/archive/$pkgver/proxmoxer-$pkgver.tar.gz"
builddir="$srcdir/proxmoxer-$pkgver"
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- # current https tests require an ancient version of py3-requests
- nosetests -e "https_tests"
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ gpep517 install-wheel --destdir .testenv --prefix '' .dist/*.whl
+ .testenv/bin/python3 -m pytest
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
-c2fe9fcf3f17e4c181fcc040878f08b6c4d64b0b048ed6a03990fd23a2dbde5bd6c2d63e62f0d38d76b93eb5f588bb2fc2bd2eeba4643bf3c1c9b043660009a5 proxmoxer-1.3.1.tar.gz
+74bdf599d85aaf16cf2802a728b83c18d572ea0df46c743e221ba0019c3fb9163f5acc0288cfd0d613d3c1b5691866e77b9e6448591dfc5faacc4226eab8344e proxmoxer-2.0.1.tar.gz
"
diff --git a/testing/py3-publicsuffix2/APKBUILD b/testing/py3-publicsuffix2/APKBUILD
index 47bdceae74e..d4eb1fad52c 100644
--- a/testing/py3-publicsuffix2/APKBUILD
+++ b/testing/py3-publicsuffix2/APKBUILD
@@ -4,7 +4,7 @@ pkgname=py3-publicsuffix2
_pkgname=python-publicsuffix2
_pkgver=2.2019-12-21
pkgver=${_pkgver//-}
-pkgrel=2
+pkgrel=5
pkgdesc="Python library to deal with publicsuffix data"
url="https://github.com/nexB/python-publicsuffix2"
license="MIT AND MPL-2.0"
@@ -12,6 +12,7 @@ arch="noarch"
depends="python3 py3-requests"
makedepends="py3-setuptools"
checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
source="$_pkgname-release-$_pkgver.tar.gz::https://github.com/nexB/python-publicsuffix2/archive/release-$_pkgver.tar.gz"
builddir="$srcdir/$_pkgname-release-$_pkgver"
@@ -24,7 +25,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir" --skip-build
+ python3 setup.py install --skip-build --root="$pkgdir"
# remove stray license file; SPDX identifier is sufficient in Alpine
rm "$pkgdir"/usr/lib/python3.*/site-packages/publicsuffix2/mpl-2.0.LICENSE
diff --git a/testing/py3-pure_protobuf/APKBUILD b/testing/py3-pure_protobuf/APKBUILD
new file mode 100644
index 00000000000..e65f028583c
--- /dev/null
+++ b/testing/py3-pure_protobuf/APKBUILD
@@ -0,0 +1,41 @@
+# Contributor: Jakob Meier <comcloudway@ccw.icu>
+# Maintainer: Jakob Meier <comcloudway@ccw.icu>
+pkgname=py3-pure_protobuf
+# Also needs to be updated in the use_fixed_version.patch
+pkgver=3.0.1
+pkgrel=2
+pkgdesc="Python implementation of Protocol Buffers with dataclass-based schemaʼs "
+url="https://pypi.org/project/pure-protobuf/"
+arch="noarch"
+license="MIT"
+depends="py3-typing-extensions"
+makedepends="
+py3-gpep517
+py3-hatchling
+py3-poetry-core
+py3-wheel
+py3-setuptools
+"
+subpackages="$pkgname-pyc"
+source="
+ https://github.com/eigenein/protobuf/archive/$pkgver/protobuf-$pkgver.tar.gz
+ use_fixed_version.patch
+"
+builddir="$srcdir/protobuf-$pkgver"
+options="!check"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ dist/*.whl
+}
+
+sha512sums="
+d710a242e6e9cadc86dcaae2f28174477f76053bda501c077868fdd09597568eb52dbce02e4b463ef8cb3c9e2401d6754e333bec55614cfca1c7dc1cd7c211dd protobuf-3.0.1.tar.gz
+7a2151c8116e1b6551cd5cbf0174958f1a692b6c4e3aba2f8c9ec9fdd6ebe2bacd3fb29812c85b5b041271575c4d467e7b2a0cb541b288e001537f5dc6aed1a9 use_fixed_version.patch
+"
diff --git a/testing/py3-pure_protobuf/use_fixed_version.patch b/testing/py3-pure_protobuf/use_fixed_version.patch
new file mode 100644
index 00000000000..c2f5249176c
--- /dev/null
+++ b/testing/py3-pure_protobuf/use_fixed_version.patch
@@ -0,0 +1,23 @@
+diff --git a/pyproject.toml b/pyproject.toml
+index c0a325364fc..17be46fca96 100644
+--- a/pyproject.toml
++++ b/pyproject.toml
+@@ -13,7 +13,7 @@ license = "MIT"
+ name = "pure-protobuf"
+ readme = "README.md"
+ repository = "https://github.com/eigenein/protobuf"
+-version = "0.0.0"
++version = "3.0.1"
+ classifiers = [
+ "Development Status :: 5 - Production/Stable",
+ "Intended Audience :: Developers",
+@@ -30,8 +30,7 @@ classifiers = [
+ ]
+
+ [build-system]
+-requires = ["poetry-core", "poetry-dynamic-versioning"]
+-build-backend = "poetry_dynamic_versioning.backend"
++requires = ["poetry-core"]
+
+ [tool.poetry.dependencies]
+ get-annotations = { version = "^0.1.2", python = "<3.10" }
diff --git a/testing/py3-puremagic/APKBUILD b/testing/py3-puremagic/APKBUILD
new file mode 100644
index 00000000000..9a6a959ab50
--- /dev/null
+++ b/testing/py3-puremagic/APKBUILD
@@ -0,0 +1,34 @@
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=py3-puremagic
+pkgver=1.21
+pkgrel=1
+pkgdesc="Pure python implementation of identifying files based off their magic numbers"
+url="https://github.com/cdgriffith/puremagic"
+arch="noarch"
+license="MIT"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+checkdepends="py3-pytest py3-pytest-cov"
+subpackages="$pkgname-pyc"
+source="https://github.com/cdgriffith/puremagic/archive/refs/tags/$pkgver/puremagic-$pkgver.tar.gz"
+builddir="$srcdir/puremagic-$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
+ gpep517 install-wheel --destdir .testenv --prefix '' .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+cc2c76a2ddcfacdfce778e565b07692dcd247723aa85c562ba4d8c70992f79a8f13a7bc33f1468ee37298c266d35d76febe2e6164fdc145077d68b05cfa2e1c4 puremagic-1.21.tar.gz
+"
diff --git a/testing/py3-py-radix/APKBUILD b/testing/py3-py-radix/APKBUILD
index ebc2a520927..f6ec91b5bc9 100644
--- a/testing/py3-py-radix/APKBUILD
+++ b/testing/py3-py-radix/APKBUILD
@@ -1,9 +1,8 @@
-# Contributor:
# Maintainer: Kristóf Jakab <jakab.kristof@balasys.hu>
pkgname=py3-py-radix
_pkgname=py-radix
pkgver=0.10.0
-pkgrel=5
+pkgrel=9
pkgdesc="An implementation of a radix tree for Python"
url="https://github.com/mjschultz/py-radix"
arch="all"
@@ -11,8 +10,10 @@ license="BSD-4-Clause AND ISC"
depends="python3"
makedepends="py3-setuptools python3-dev"
checkdepends="py3-coverage py3-nose"
+subpackages="$pkgname-pyc"
source="$_pkgname-$pkgver.tar.gz::https://github.com/mjschultz/py-radix/archive/v$pkgver.tar.gz
python3.10-support.patch
+ assertEquals.patch
"
builddir="$srcdir/$_pkgname-$pkgver"
@@ -28,10 +29,11 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
b4b6a35aad76c19c2eaa5bff828cbec5182cc4074397d4b9e5c39ac76bd9045c86600ed52ac06632abac8a9e70d6e82aa9e741ab3eb92970453bb14acdba72ea py-radix-0.10.0.tar.gz
56808e892ebcc951f76bfb21647687ccf8c2d3e605c64c650ca95e54a766e8f110bfa087fdc1921e9ba68109dbbf8220885a9c12dcb6ef69bf7695d7722a75b0 python3.10-support.patch
+cb7abba0dd5f0ea24c953d5c7a5c2d8dcdaf86b5ce30aa49d633de2572967afef2475019c88eaeddc2397633b08eef5c5607ac34bedf7afc4d1410108c61f0f7 assertEquals.patch
"
diff --git a/testing/py3-py-radix/assertEquals.patch b/testing/py3-py-radix/assertEquals.patch
new file mode 100644
index 00000000000..e68e608153e
--- /dev/null
+++ b/testing/py3-py-radix/assertEquals.patch
@@ -0,0 +1,181 @@
+diff --git a/tests/test_compat.py b/tests/test_compat.py
+index 7ebe71b..2765351 100644
+--- a/tests/test_compat.py
++++ b/tests/test_compat.py
+@@ -32,3 +32,3 @@ class LoadRadixPickle(TestCase):
+ tree = load(f)
+- self.assertEquals(len(tree.nodes()), 3)
++ self.assertEqual(len(tree.nodes()), 3)
+ nodes = ['10.0.1.0/24', '10.0.2.0/24', '10.0.3.0/24']
+diff --git a/tests/test_regression.py b/tests/test_regression.py
+index 2b173e3..4861ec9 100644
+--- a/tests/test_regression.py
++++ b/tests/test_regression.py
+@@ -191,3 +191,3 @@ class TestRadix(unittest.TestCase):
+ del tree
+- self.assertEquals(node1.prefix, "10.0.0.0/8")
++ self.assertEqual(node1.prefix, "10.0.0.0/8")
+
+@@ -207,3 +207,3 @@ class TestRadix(unittest.TestCase):
+ self.assertTrue(node1 is node3)
+- self.assertEquals(node1.prefix, "10.255.255.240/28")
++ self.assertEqual(node1.prefix, "10.255.255.240/28")
+
+@@ -216,3 +216,3 @@ class TestRadix(unittest.TestCase):
+ self.assertTrue(node1 is node3)
+- self.assertEquals(node1.prefix, "dead:beef::/32")
++ self.assertEqual(node1.prefix, "dead:beef::/32")
+
+@@ -222,5 +222,5 @@ class TestRadix(unittest.TestCase):
+ node = tree.add(packed=p, masklen=26)
+- self.assertEquals(node.family, socket.AF_INET)
+- self.assertEquals(node.prefix, "224.20.11.64/26")
+- self.assertEquals(node.packed, p)
++ self.assertEqual(node.family, socket.AF_INET)
++ self.assertEqual(node.prefix, "224.20.11.64/26")
++ self.assertEqual(node.packed, p)
+
+@@ -233,7 +233,7 @@ class TestRadix(unittest.TestCase):
+ node = tree.add(packed=p, masklen=108)
+- self.assertEquals(node.family, socket.AF_INET6)
+- self.assertEquals(
++ self.assertEqual(node.family, socket.AF_INET6)
++ self.assertEqual(
+ node.prefix,
+ "dead:beef:1234:5678:9abc:def0::/108")
+- self.assertEquals(node.packed, p)
++ self.assertEqual(node.packed, p)
+
+@@ -248,3 +248,3 @@ class TestRadix(unittest.TestCase):
+ self.assertRaises(ValueError, tree.add, "::", 256)
+- self.assertEquals(len(tree.nodes()), 0)
++ self.assertEqual(len(tree.nodes()), 0)
+
+@@ -258,5 +258,5 @@ class TestRadix(unittest.TestCase):
+ self.assertTrue(node2 is node2_o)
+- self.assertNotEquals(node1.prefix, node2.prefix)
+- self.assertNotEquals(node1.network, node2.network)
+- self.assertNotEquals(node1.family, node2.family)
++ self.assertNotEqual(node1.prefix, node2.prefix)
++ self.assertNotEqual(node1.network, node2.network)
++ self.assertNotEqual(node1.family, node2.family)
+
+@@ -323,7 +323,7 @@ class TestRadix(unittest.TestCase):
+ prefix = "1.%d.%d.0/%d" % (i, j, k)
+- self.assertEquals(node.prefix, prefix)
++ self.assertEqual(node.prefix, prefix)
+ num_nodes_out += 1
+
+- self.assertEquals(num_nodes_in - num_nodes_del, num_nodes_out)
+- self.assertEquals(
++ self.assertEqual(num_nodes_in - num_nodes_del, num_nodes_out)
++ self.assertEqual(
+ num_nodes_in - num_nodes_del,
+@@ -334,3 +334,3 @@ class TestRadix(unittest.TestCase):
+ node = tree.add("255.255.255.255/15")
+- self.assertEquals(node.prefix, "255.254.0.0/15")
++ self.assertEqual(node.prefix, "255.254.0.0/15")
+
+@@ -355,7 +355,7 @@ class TestRadix(unittest.TestCase):
+ node = tree2.search_exact(addr, k)
+- self.assertNotEquals(node, None)
+- self.assertEquals(node.data["i"], i)
+- self.assertEquals(node.data["j"], j)
++ self.assertNotEqual(node, None)
++ self.assertEqual(node.data["i"], i)
++ self.assertEqual(node.data["j"], j)
+ node.data["j"] = j
+- self.assertEquals(len(tree2.nodes()), num_nodes_in)
++ self.assertEqual(len(tree2.nodes()), num_nodes_in)
+
+@@ -382,7 +382,7 @@ class TestRadix(unittest.TestCase):
+ node = tree2.search_exact(addr, k)
+- self.assertNotEquals(node, None)
+- self.assertEquals(node.data["i"], i)
+- self.assertEquals(node.data["j"], j)
++ self.assertNotEqual(node, None)
++ self.assertEqual(node.data["i"], i)
++ self.assertEqual(node.data["j"], j)
+ node.data["j"] = j
+- self.assertEquals(len(tree2.nodes()), num_nodes_in)
++ self.assertEqual(len(tree2.nodes()), num_nodes_in)
+
+@@ -393,3 +393,3 @@ class TestRadix(unittest.TestCase):
+ tree.add('10.0.0.0/16')
+- self.assertEquals(
++ self.assertEqual(
+ tree.search_best('10.0.0.0/15').prefix,
+@@ -411,6 +411,6 @@ class TestRadix(unittest.TestCase):
+ tree.add('10.0.0.0/16')
+- self.assertEquals(
++ self.assertEqual(
+ tree.search_worst('10.0.0.0/15').prefix,
+ '10.0.0.0/8')
+- self.assertEquals(
++ self.assertEqual(
+ tree.search_worst('100.0.0.0/15'),
+@@ -423,3 +423,3 @@ class TestRadix(unittest.TestCase):
+ tree.add('0.0.0.0/0')
+- self.assertEquals(
++ self.assertEqual(
+ tree.search_best('10.10.10.10').prefix,
+@@ -436,24 +436,24 @@ class TestRadix(unittest.TestCase):
+ tree.add('0.0.0.0/0')
+- self.assertEquals(
++ self.assertEqual(
+ [n.prefix for n in tree.search_covered('11.0.0.0/8')],
+ ['11.0.0.0/16'])
+- self.assertEquals(
++ self.assertEqual(
+ sorted([n.prefix for n in tree.search_covered('10.0.0.0/9')]),
+ ['10.0.0.0/13', '10.0.0.0/31', '10.30.2.0/25', '10.30.2.1/32'])
+- self.assertEquals(
++ self.assertEqual(
+ sorted([n.prefix for n in tree.search_covered('10.0.0.0/8')]),
+ ['10.0.0.0/13', '10.0.0.0/31', '10.0.0.0/8', '10.30.2.0/25', '10.30.2.1/32'])
+- self.assertEquals(
++ self.assertEqual(
+ [n.prefix for n in tree.search_covered('11.0.0.0/8')],
+ ['11.0.0.0/16'])
+- self.assertEquals(
++ self.assertEqual(
+ [n.prefix for n in tree.search_covered('10.30.2.64/32')],
+ [])
+- self.assertEquals(
++ self.assertEqual(
+ [n.prefix for n in tree.search_covered('21.0.0.0/8')],
+ [])
+- self.assertEquals(
++ self.assertEqual(
+ [n.prefix for n in tree.search_covered('10.0.0.1')],
+ [])
+- self.assertEquals(
++ self.assertEqual(
+ sorted([n.prefix for n in tree.search_covered('0.0.0.0/0')]),
+@@ -467,3 +467,3 @@ class TestRadix(unittest.TestCase):
+
+- self.assertEquals(
++ self.assertEqual(
+ [n.prefix for n in tree.search_covered('193.178.152.0/21')],
+@@ -477,3 +477,3 @@ class TestRadix(unittest.TestCase):
+
+- self.assertEquals(
++ self.assertEqual(
+ [n.prefix for n in tree.search_covered('31.3.104.0/21')],
+@@ -490,12 +490,12 @@ class TestRadix(unittest.TestCase):
+
+- self.assertEquals([n.prefix for n in
++ self.assertEqual([n.prefix for n in
+ tree.search_covering('8.9.0.1/32')],
+ ['8.9.0.1/32', '8.9.0.0/16', '0.0.0.0/2'])
+- self.assertEquals([n.prefix for n in
++ self.assertEqual([n.prefix for n in
+ tree.search_covering('5.5.5.0/24')],
+ ['0.0.0.0/2'])
+- self.assertEquals([n.prefix for n in
++ self.assertEqual([n.prefix for n in
+ tree.search_covering('3.178.152.0/21')],
+ ['0.0.0.0/2'])
+- self.assertEquals([n.prefix for n in
++ self.assertEqual([n.prefix for n in
+ tree.search_covering('205.0.1.0/24')],
diff --git a/testing/py3-pyatem/APKBUILD b/testing/py3-pyatem/APKBUILD
index 9214c70ebe8..93c6cffbcfc 100644
--- a/testing/py3-pyatem/APKBUILD
+++ b/testing/py3-pyatem/APKBUILD
@@ -2,11 +2,10 @@
# Contributor: Martijn Braam <martijn@brixit.nl>
pkgname=py3-pyatem
pkgver=0.5.0
-pkgrel=0
+pkgrel=3
pkgdesc="Python library for controlling Blackmagic Design ATEM hardware"
url="https://git.sr.ht/~martijnbraam/pyatem"
-# s390x and riscv64 blocked by libhandy1
-arch="all !s390x !riscv64"
+arch="all"
license="LGPL-3.0-only"
source="$pkgname-$pkgver.tar.gz::https://git.sr.ht/~martijnbraam/pyatem/archive/$pkgver.tar.gz
openswitcher-proxy.confd
@@ -16,7 +15,7 @@ depends="python3 py3-usb py3-zeroconf"
makedepends="py3-setuptools python3-dev glib-dev libhandy1-dev meson"
checkdepends="py3-pytest"
builddir="$srcdir/pyatem-$pkgver"
-subpackages="openswitcher openswitcher-proxy:proxy openswitcher-proxy-openrc"
+subpackages="openswitcher openswitcher-proxy:proxy openswitcher-proxy-openrc $pkgname-pyc"
build() {
# Build the python library
@@ -27,11 +26,11 @@ build() {
# Build the GTK app
abuild-meson -Dwith_proxy=False . output_gtk
- meson compile ${JOBS:+-j ${JOBS}} -C output_gtk
+ meson compile -C output_gtk
# Build the proxy daemon
abuild-meson -Dwith_gtk_app=False . output_proxy
- meson compile ${JOBS:+-j ${JOBS}} -C output_proxy
+ meson compile -C output_proxy
}
check() {
@@ -39,7 +38,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
install -D -m644 "$builddir"/100-blackmagicdesign.rules \
"$pkgdir"/lib/udev/rules.d/100-blackmagicdesign.rules
diff --git a/testing/py3-pyautogui/APKBUILD b/testing/py3-pyautogui/APKBUILD
index b651e99368b..a63b7cc2321 100644
--- a/testing/py3-pyautogui/APKBUILD
+++ b/testing/py3-pyautogui/APKBUILD
@@ -3,31 +3,45 @@
pkgname=py3-pyautogui
_pkgname=PyAutoGUI
# upstream does not tag releases https://github.com/asweigart/pyautogui/issues/270
-_commit=57a98be5fc1c33f077ca499f7836741faf31d463
-pkgver=0.9.50
-pkgrel=3
+_commit=9de7b3ebf8817a846b03caec0775ecbf4596452b
+pkgver=0.9.53
+pkgrel=4
pkgdesc="A cross-platform Python module for GUI automation for human beings"
url="https://pyautogui.readthedocs.io/"
arch="noarch"
license="BSD-3-Clause"
-depends="py3-xlib py3-pillow"
-makedepends="py3-setuptools xvfb-run"
+depends="
+ py3-pillow
+ py3-pymsgbox
+ py3-pyscreeze
+ py3-pytweening
+ py3-xlib
+ python3
+ "
+makedepends="py3-setuptools"
+checkdepends="xvfb-run"
+subpackages="$pkgname-pyc"
source="$_pkgname-$_commit.tar.gz::https://github.com/asweigart/pyautogui/archive/$_commit.tar.gz"
builddir="$srcdir/pyautogui-$_commit"
+options="!check" # hang forever
replaces="py-pyautogui" # Backwards compatibility
provides="py-pyautogui=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- xvfb-run python3 setup.py build
+ python3 setup.py build
}
check() {
- python3 setup.py check
+ PYTHONPATH="$PWD" \
+ xvfb-run -a \
+ python3 tests/test_pyautogui.py
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="5d5bb8c9e3ee5759ac6cfd7872cf62621bcbb3093df11d785928d9159dd0902527fb8a02add57bb223d28b0f1ee0b574180178e99e2018aa24f5a279ce01e40e PyAutoGUI-57a98be5fc1c33f077ca499f7836741faf31d463.tar.gz"
+sha512sums="
+afa4d3fde6a79d6946c520c536d64d5f76ae7982eb7a5ed4dd0c86bececc232a0e08e25705dc8cd184876ae24b8630fb0721042ee9653533798617344b0bf945 PyAutoGUI-9de7b3ebf8817a846b03caec0775ecbf4596452b.tar.gz
+"
diff --git a/testing/py3-pybars3/APKBUILD b/testing/py3-pybars3/APKBUILD
index 23956b140df..27933d06e14 100644
--- a/testing/py3-pybars3/APKBUILD
+++ b/testing/py3-pybars3/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
pkgname=py3-pybars3
pkgver=0.9.7
-pkgrel=2
+pkgrel=5
pkgdesc="implementation of the handlebars.js template language for Python 3"
url="https://github.com/wbond/pybars3"
arch="noarch"
@@ -13,6 +13,7 @@ depends="
makedepends="
py3-setuptools
"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/p/pybars3/pybars3-$pkgver.tar.gz"
builddir="$srcdir/pybars3-$pkgver"
@@ -25,7 +26,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
7aff86c0703e3827909f3603d7f35026ee39ce74d9c5ff1beb18a71b0a839c3aa407402f8d9c1aca9eb69af33750db0477881826e72135fc26a7274b0f1f538b pybars3-0.9.7.tar.gz
diff --git a/testing/py3-pycaption/APKBUILD b/testing/py3-pycaption/APKBUILD
new file mode 100644
index 00000000000..e44e2cda347
--- /dev/null
+++ b/testing/py3-pycaption/APKBUILD
@@ -0,0 +1,37 @@
+# Contributor: lauren n. liberda <lauren@selfisekai.rocks>
+# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
+pkgname=py3-pycaption
+pkgver=2.2.4
+pkgrel=0
+pkgdesc="Python module to read/write popular video caption formats"
+url="https://github.com/pbs/pycaption"
+arch="noarch"
+license="Apache-2.0"
+depends="
+ python3
+ py3-beautifulsoup4
+ py3-cssutils
+ py3-lxml
+ py3-nltk
+ "
+makedepends="py3-setuptools"
+checkdepends="py3-pytest"
+source="https://github.com/pbs/pycaption/archive/refs/tags/$pkgver/pycaption-$pkgver.tar.gz"
+builddir="$srcdir/pycaption-$pkgver"
+
+build() {
+ python3 setup.py build
+}
+
+check() {
+ pytest
+}
+
+package() {
+ python3 setup.py install --skip-build --root="$pkgdir"
+ rm -rf "$pkgdir"/usr/lib/python3*/site-packages/tests
+}
+
+sha512sums="
+6082cf098b2e8b97e84729538f842405c667a5eda50d5bec094b372f9e9b0ac79a64bb807fc2b75b0ee3c79d934f6e15f595cdf4882277086067207fb7637976 pycaption-2.2.4.tar.gz
+"
diff --git a/testing/py3-pycolorterm/APKBUILD b/testing/py3-pycolorterm/APKBUILD
index 570905cabf2..9311edbce0f 100644
--- a/testing/py3-pycolorterm/APKBUILD
+++ b/testing/py3-pycolorterm/APKBUILD
@@ -3,7 +3,7 @@
pkgname=py3-pycolorterm
_pkgname=pycolorterm
pkgver=0.2.1
-pkgrel=4
+pkgrel=5
pkgdesc="A Python module to work with color and style formatting"
url="https://github.com/dnmellen/pycolorterm"
arch="noarch"
@@ -22,7 +22,7 @@ build() {
package() {
cd "$builddir"
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="c90cb9a0fde94bbd856ba555bb5137004a3a936e028830938bdadf25be94a6f13a0597afb5439681c89d483806375708106be585c236109e83c3e493973e7d4a pycolorterm-0.2.1.tar.gz"
diff --git a/testing/py3-pycosat/APKBUILD b/testing/py3-pycosat/APKBUILD
index 8d172fe4f97..7716bcd9038 100644
--- a/testing/py3-pycosat/APKBUILD
+++ b/testing/py3-pycosat/APKBUILD
@@ -2,14 +2,14 @@
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=py3-pycosat
_pkgname=pycosat
-pkgver=0.6.3
-pkgrel=3
+pkgver=0.6.6
+pkgrel=1
pkgdesc="Python bindings to picosat (a SAT solver)"
-url="https://github.com/ContinuumIO/pycosat"
+url="https://github.com/conda/pycosat"
arch="all"
license="MIT"
-makedepends="python3-dev"
-source="https://github.com/ContinuumIO/pycosat/archive/$pkgver/$_pkgname-$pkgver.tar.gz
+makedepends="python3-dev py3-setuptools"
+source="https://github.com/conda/pycosat/archive/$pkgver/$_pkgname-$pkgver.tar.gz
musl-compat.patch
"
builddir="$srcdir/$_pkgname-$pkgver"
@@ -19,13 +19,15 @@ build() {
}
check() {
- PYTHONPATH="$(dirname ./build/lib.linux-*-3.*/*.so)" \
+ PYTHONPATH="$(echo build/lib.linux*)" \
python3 test_pycosat.py
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="6163f9879d4ed98486f36990f0134db0a9b6096a8507312a1013d707b0dcb7e963845a5959c601f672a53a5db8c80b63d3184a0ef906b2ec563ca1a4c63850fa pycosat-0.6.3.tar.gz
-57fae28c1d9f9e5fd2c8800ec664e0c43b04935f540ab2576fd660cb902e62edcc727aab3f7dacd33db1e775d49ebdffc24fbe4a4136ec5e3ea54cc5c37b2cef musl-compat.patch"
+sha512sums="
+a831bee95746c19133463b903429aaf7619407733d49128fdb0afe368e62bcdffc1406b4bbfdbbf67b1a96953bfba2f23a7e2dc151979d61efb29facb8609dc4 pycosat-0.6.6.tar.gz
+57fae28c1d9f9e5fd2c8800ec664e0c43b04935f540ab2576fd660cb902e62edcc727aab3f7dacd33db1e775d49ebdffc24fbe4a4136ec5e3ea54cc5c37b2cef musl-compat.patch
+"
diff --git a/testing/py3-pydes/APKBUILD b/testing/py3-pydes/APKBUILD
index f05f23efea5..579451b5cfa 100644
--- a/testing/py3-pydes/APKBUILD
+++ b/testing/py3-pydes/APKBUILD
@@ -3,7 +3,7 @@
pkgname=py3-pydes
pkgver=2.0.1
_pkgname=pyDes
-pkgrel=1
+pkgrel=4
pkgdesc="Python implementation of DES and TRIPLE DES encryption algorithm"
options="!check" # no test suite
url="http://twhiteman.netfirms.com/des.html"
@@ -11,7 +11,7 @@ arch="noarch"
license="CC-PDDC"
depends="python3"
makedepends="py3-setuptools"
-subpackages="$pkgname-doc"
+subpackages="$pkgname-doc $pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/p/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
@@ -20,7 +20,7 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
install -Dm0644 README.txt -t "$pkgdir"/usr/share/doc/"$pkgname"
}
diff --git a/testing/py3-pygame/APKBUILD b/testing/py3-pygame/APKBUILD
deleted file mode 100644
index 3673ac064a1..00000000000
--- a/testing/py3-pygame/APKBUILD
+++ /dev/null
@@ -1,69 +0,0 @@
-# Contributor: knuxify <knuxify@gmail.com>
-# Maintainer: knuxify <knuxify@gmail.com>
-pkgname=py3-pygame
-pkgver=2.1.2
-pkgrel=0
-pkgdesc="Python library for making applications and games based on SDL"
-url="https://pygame.org"
-arch="all"
-license="LGPL-2.1-or-later"
-depends="python3 py3-numpy"
-depends_dev="
- freetype-dev
- libjpeg-turbo-dev
- libpng-dev
- portmidi-dev
- python3-dev
- sdl2-dev
- sdl2_gfx-dev
- sdl2_image-dev
- sdl2_mixer-dev
- sdl2_ttf-dev
-"
-makedepends="py3-setuptools py3-sphinx $depends_dev"
-checkdepends="libvorbis libwebp mpg123 tiff ttf-dejavu udev"
-subpackages="$pkgname-doc $pkgname-dev $pkgname-examples:examples:noarch"
-source="https://github.com/pygame/pygame/archive/refs/tags/$pkgver/pygame-$pkgver.tar.gz"
-builddir="$srcdir/pygame-$pkgver"
-
-case $CARCH in
- s390x|ppc64le) options="!check";; # blending is broken, making tests fail. todo
-esac
-
-build() {
- python3 setup.py build
- python3 setup.py docs
-}
-
-check() {
- # Do a temporary install with all of the test files intact
- python3 setup.py install --prefix=/usr --root="$srcdir"/pygame-build
-
- libpath="$(echo $srcdir/pygame-build/usr/lib/python3.*/site-packages)"
-
- export SDL_VIDEODRIVER=dummy
- export SDL_AUDIODRIVER=disk
- PYTHONPATH="$libpath" python3 "$builddir"/test \
- -v \
- --exclude=opengl,timing \
- --time_out=300
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
- rm -r "$pkgdir"/usr/lib/python3.*/site-packages/pygame/tests
-}
-
-doc() {
- default_doc
- amove /usr/lib/python3.*/site-packages/pygame/docs
-}
-
-examples() {
- pkgdesc="$pkgdesc (examples)"
- amove /usr/lib/python3.*/site-packages/pygame/examples
-}
-
-sha512sums="
-531cb0371853def7a3ddb8eb0110fbd58acaf1b2351d7518402c9a960baca705bb34da879015e7a6cd5f2f8af98c57e7bc732021a8f62ed9f90cacf068c9c2d6 pygame-2.1.2.tar.gz
-"
diff --git a/testing/py3-pygdbmi/APKBUILD b/testing/py3-pygdbmi/APKBUILD
deleted file mode 100644
index ed634c6fba6..00000000000
--- a/testing/py3-pygdbmi/APKBUILD
+++ /dev/null
@@ -1,28 +0,0 @@
-# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
-_pkgname=pygdbmi
-pkgname=py3-$_pkgname
-pkgver=0.10.0.0
-pkgrel=2
-pkgdesc="Get Structured Output from GDB's Machine Interface"
-options="!check" # No testsuite
-url="https://github.com/cs01/pygdbmi"
-arch="noarch"
-license="MIT"
-depends="python3"
-makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
-builddir="$srcdir"/$_pkgname-$pkgver
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-check() {
- python3 setup.py check
-}
-
-sha512sums="ab848ca0a37a39ac6ba911782dba035c1be561deff5ed5d0e755052662ae7c2500c3e419575ca7fe810b5bf9f4f4a1bf67770ad26b140b0946a29babf067e377 pygdbmi-0.10.0.0.tar.gz"
diff --git a/testing/py3-pygelbooru/APKBUILD b/testing/py3-pygelbooru/APKBUILD
new file mode 100644
index 00000000000..2cfca6735bf
--- /dev/null
+++ b/testing/py3-pygelbooru/APKBUILD
@@ -0,0 +1,34 @@
+# Contributor: Haelwenn (lanodan) Monnier <contact+alpine@hacktivis.me>
+# Maintainer: Haelwenn (lanodan) Monnier <contact+alpine@hacktivis.me>
+pkgname=py3-pygelbooru
+_pkgreal=pygelbooru
+pkgver=0.5.0
+pkgrel=2
+pkgdesc="unofficial and lightweight asynchronous library for Gelbooru compatible API"
+url="https://github.com/MakotoAme/pygelbooru"
+arch="noarch"
+license="GPL-3"
+depends="python3 py3-aiohttp py3-furl py3-xmltodict"
+makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/${_pkgreal:0:1}/$_pkgreal/$_pkgreal-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ python3 setup.py build
+}
+
+check() {
+ python3 setup.py test
+}
+
+package() {
+ python3 setup.py install \
+ --prefix=/usr \
+ --root="$pkgdir" \
+ --single-version-externally-managed
+}
+
+sha512sums="
+4301aa8c07bac9d70adbe13a8283869c48944cbaadeb5f28b6649d0d349861a09f21b057d26815e1a826f085ac8d54d135be466d543856ed00fc47d38734e204 pygelbooru-0.5.0.tar.gz
+"
diff --git a/testing/py3-pygfm/APKBUILD b/testing/py3-pygfm/APKBUILD
index ad58a6bdd43..4f4422a7e6b 100644
--- a/testing/py3-pygfm/APKBUILD
+++ b/testing/py3-pygfm/APKBUILD
@@ -3,8 +3,8 @@
# Maintainer: Stefan Wagner <stw@bit-strickerei.de>
pkgname=py3-pygfm
_pkgname=py-gfm
-pkgver=1.0.0
-pkgrel=3
+pkgver=2.0.0
+pkgrel=1
pkgdesc="Github-Flavored Markdown for Python-Markdown"
options="!check"
url="https://github.com/zopieux/py-gfm"
@@ -13,6 +13,7 @@ license="BSD-3-Clause"
depends="python3 py3-markdown"
makedepends="py3-setuptools"
checkdepends="py3-codecov py3-coverage py3-coveralls"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/Zopieux/py-gfm/archive/$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -28,8 +29,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
- rm "$pkgdir"/usr/LICENSE
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="eb1b190d4b8ebdf229141965cad57531bdb7b2c834acf9ef62a06955f5c61fdc16e85a0871121f99d2bdb0d07482ed9bc84c52e85e6a446f49e869780c463b89 py3-pygfm-1.0.0.tar.gz"
+sha512sums="
+45d62280465bdc0cc51fc3e74486d0923c71fce7497ca29d68ba7bce232bf423d209b7ee54170d2ae283374c4e5979766d95e13ce9285bff303e7a5a83e1e12b py3-pygfm-2.0.0.tar.gz
+"
diff --git a/testing/py3-pyglm/APKBUILD b/testing/py3-pyglm/APKBUILD
new file mode 100644
index 00000000000..3288f9ae741
--- /dev/null
+++ b/testing/py3-pyglm/APKBUILD
@@ -0,0 +1,51 @@
+# Maintainer: Thomas Aldrian <aldrian.thom@proton.me>
+pkgname=py3-pyglm
+pkgver=2.7.1
+pkgrel=0
+pkgdesc="OpenGL Mathematics library for Python"
+url="https://github.com/Zuzu-Typ/PyGLM"
+arch="all"
+license="Zlib"
+depends="python3"
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ python3-dev
+ "
+checkdepends="py3-pytest"
+# Keep in sync with project's submodules.
+_glm_gitrev=fcda03b54596adda543bcdccc6c1879e380c86a7
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/Zuzu-Typ/PyGLM/archive/refs/tags/$pkgver.tar.gz
+ https://github.com/Zuzu-Typ/glm/archive/$_glm_gitrev/glm-$_glm_gitrev.tar.gz
+"
+builddir="$srcdir/PyGLM-$pkgver/"
+
+prepare() {
+ default_prepare
+
+ rm -r glm
+ ln -s "$srcdir/glm-$_glm_gitrev" glm
+}
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" .dist/*.whl
+}
+
+sha512sums="
+1b7cc0f7986fbb8bd17963675997762b1dbbf7769c2659bfe6c2e110da0d30e93b36e998aad4946abdeebf38555e85a31dfb819c2b9c3d64a6dc3326a8c8bc5a py3-pyglm-2.7.1.tar.gz
+ae9f6cb040700f98be6cbadc6f4bec1ac22e1fe704c7e36781aaa1db155e70fa9bd280e8ddd14bf941a02d0ed7587965a7607f3ad6699655a15131d440141f41 glm-fcda03b54596adda543bcdccc6c1879e380c86a7.tar.gz
+"
diff --git a/testing/py3-pygpgme/APKBUILD b/testing/py3-pygpgme/APKBUILD
index 046b768cbad..45a009f0a6d 100644
--- a/testing/py3-pygpgme/APKBUILD
+++ b/testing/py3-pygpgme/APKBUILD
@@ -3,14 +3,17 @@
pkgname=py3-pygpgme
_pkgname=pygpgme
pkgver=0.3.1
-pkgrel=5
+pkgrel=8
pkgdesc="PyGPGME is a Python module that lets you sign, verify, encrypt and decrypt messages using the OpenPGP format."
url="https://github.com/rshk/pygpgme/"
arch="all"
license="LGPL-2.1-or-later"
depends="python3"
-makedepends="gpgme-dev python3-dev"
-source="$_pkgname-$pkgver.tar.gz::https://github.com/rshk/pygpgme/archive/v$pkgver.tar.gz"
+makedepends="gpgme-dev python3-dev py3-setuptools"
+subpackages="$pkgname-pyc"
+source="$_pkgname-$pkgver.tar.gz::https://github.com/rshk/pygpgme/archive/v$pkgver.tar.gz
+ py3.11.patch
+ "
builddir="$srcdir"/$_pkgname-$pkgver
build() {
@@ -18,7 +21,10 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="f3c9de92956917f5e55c3a8d49be354d845e4f99b3a5173601841afcdd7b9ad270be0dea50468425c517328ceba46f1252685587bcf011287d1ed3a07b7ba8ab pygpgme-0.3.1.tar.gz"
+sha512sums="
+f3c9de92956917f5e55c3a8d49be354d845e4f99b3a5173601841afcdd7b9ad270be0dea50468425c517328ceba46f1252685587bcf011287d1ed3a07b7ba8ab pygpgme-0.3.1.tar.gz
+6e34c4b3001348cc0763f1ad2174244518f36a209bcb7ecdfbf271b9ee9b64014ad1726ce7467ec650f17f05f45730c88241e7a838dd080fc3c8f99209201b06 py3.11.patch
+"
diff --git a/testing/py3-pygpgme/py3.11.patch b/testing/py3-pygpgme/py3.11.patch
new file mode 100644
index 00000000000..3471d050109
--- /dev/null
+++ b/testing/py3-pygpgme/py3.11.patch
@@ -0,0 +1,13 @@
+diff --git a/src/gpgme.c b/src/gpgme.c
+index 7b80c95..8bfe3e9 100644
+--- a/src/gpgme.c
++++ b/src/gpgme.c
+@@ -46,7 +46,7 @@ create_module(void)
+
+ #define INIT_TYPE(type) \
+ if (!Py_TYPE(&type)) \
+- Py_TYPE(&type) = &PyType_Type; \
++ Py_SET_TYPE(&type, &PyType_Type); \
+ if (!type.tp_alloc) \
+ type.tp_alloc = PyType_GenericAlloc; \
+ if (!type.tp_new) \
diff --git a/testing/py3-pygtail/APKBUILD b/testing/py3-pygtail/APKBUILD
index c5f472f92b2..61f7de9f0c0 100644
--- a/testing/py3-pygtail/APKBUILD
+++ b/testing/py3-pygtail/APKBUILD
@@ -2,23 +2,29 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-pygtail
_pkgname=pygtail
-pkgver=0.11.1
+pkgver=0.14.0
pkgrel=3
pkgdesc="Reads log file lines that have not been read"
url="https://github.com/bgreenlee/pygtail"
arch="noarch"
license="GPL-2.0-or-later"
depends="python3"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
-sha512sums="93954e1aa08ba4e889666bd6cf648e944436266a5b97a8ae63c0f1eab36f64c2cd360e20a799f2c314c723b44df5271bd62d17258be87fffd550d595616b6364 pygtail-0.11.1.tar.gz"
+sha512sums="
+7446c622ec17a5051a0d3caa9cb00c37a261ef735f434c52b6088ed22b7add4e58c94d4b7006549468067f8c032046b79406e2d5899de85e314e90b23ce739c2 pygtail-0.14.0.tar.gz
+"
diff --git a/testing/py3-pyinstrument/APKBUILD b/testing/py3-pyinstrument/APKBUILD
new file mode 100644
index 00000000000..50f4f80c1ab
--- /dev/null
+++ b/testing/py3-pyinstrument/APKBUILD
@@ -0,0 +1,35 @@
+# Contributor: Aiden Grossman <agrossman154@yahoo.com>
+# Maintainer: Aiden Grossman <agrossman154@yahoo.com>
+pkgname=py3-pyinstrument
+pkgver=4.6.2
+pkgrel=1
+pkgdesc="Call stack profiler for Python"
+url="https://github.com/joerick/pyinstrument"
+arch="all"
+license="BSD-3-Clause"
+makedepends="py3-gpep517 py3-setuptools py3-wheel python3-dev"
+checkdepends="py3-pytest py3-flaky py3-trio py3-greenlet"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/joerick/pyinstrument/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/pyinstrument-$pkgver"
+options="!check" # currently not working
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" .dist/*.whl
+}
+
+sha512sums="
+da23988e6c68876cb8920ce284326f349425303ae36718c5c479b72b5f5ca5d48ced1674bcab71851f60e81a0985bb668bfa89a8b96cc20a1faa0dd7e623ec50 py3-pyinstrument-4.6.2.tar.gz
+"
diff --git a/testing/py3-pyisbn/APKBUILD b/testing/py3-pyisbn/APKBUILD
index a2123e2e63f..897e03ddd8b 100644
--- a/testing/py3-pyisbn/APKBUILD
+++ b/testing/py3-pyisbn/APKBUILD
@@ -2,14 +2,15 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-pyisbn
_pkgname=pyisbn
-pkgver=1.2.1
-pkgrel=3
+pkgver=1.3.1
+pkgrel=2
pkgdesc="A module for working with 10- and 13-digit ISBNs"
url="https://github.com/JNRowe/pyisbn"
arch="noarch"
license="GPL-3.0-or-later"
depends="python3"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -21,7 +22,9 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="4ba93722350803cde1bf969421864e27f4aaf562021e7a4400b182aa4c503ce4e33e5e328aabaef48071704d9533fc42cb95d69e4a5e817ea864149affe6ec85 pyisbn-1.2.1.tar.gz"
+sha512sums="
+3abb14ebcd6d1feaf892fcfdd6da19a3010b1d80c898e5a3ff871e759e7833b09a988ff1b7a9f46cbfdd2eb44172c7ddd0a499b9e40eea4fed89df3d467bf0c1 pyisbn-1.3.1.tar.gz
+"
diff --git a/testing/py3-pylru/APKBUILD b/testing/py3-pylru/APKBUILD
new file mode 100644
index 00000000000..9f36bf32927
--- /dev/null
+++ b/testing/py3-pylru/APKBUILD
@@ -0,0 +1,35 @@
+# Contributor: Lauren N. Liberda <lauren@selfisekai.rocks>
+# Maintainer: Lauren N. Liberda <lauren@selfisekai.rocks>
+pkgname=py3-pylru
+pkgver=1.2.1
+pkgrel=1
+pkgdesc="Least recently used (LRU) cache for Python"
+url="https://github.com/jlhutch/pylru"
+arch="noarch"
+license="GPL-2.0-or-later"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+subpackages="$pkgname-pyc"
+source="https://github.com/jlhutch/pylru/archive/refs/tags/v$pkgver/pylru-$pkgver.tar.gz"
+builddir="$srcdir/pylru-$pkgver"
+options="!check" # no tests
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages testenv
+ testenv/bin/python3 -m installer .dist/*.whl
+ testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+930a017431229cd02967e0aeb2ca8f456900e0bc90063b873e4d880fd52d4216d64da60220a5863984d3f9a8f6a6fcd6bad575fb2a0df45071e839cffcb0a5ba pylru-1.2.1.tar.gz
+"
diff --git a/testing/py3-pymaging-png/APKBUILD b/testing/py3-pymaging-png/APKBUILD
index 4f57c9f9d31..6be22de819d 100644
--- a/testing/py3-pymaging-png/APKBUILD
+++ b/testing/py3-pymaging-png/APKBUILD
@@ -3,13 +3,14 @@ pkgname=py3-pymaging-png
_pkgname=pymaging-png
_commit=83d85c44e4b2342818e6c068065e031a9f81bb9f
pkgver=0.0.20130727
-pkgrel=6
+pkgrel=9
pkgdesc="PNG format support for pymaging"
url="https://github.com/ojii/pymaging-png"
arch="noarch"
license="MIT"
depends="python3 py3-pymaging"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/ojii/$_pkgname/archive/$_commit.tar.gz"
builddir="$srcdir"/$_pkgname-$_commit
@@ -25,7 +26,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="b0860355c66d30d026443f1a360ca639bfd953da2bf00cc2b25902294d23eb07c3dd94a6c08a588fab816a7b92395bf4b65bf7a78c397a4c4811224035f1cb92 py3-pymaging-png-0.0.20130727.tar.gz"
diff --git a/testing/py3-pymaging/APKBUILD b/testing/py3-pymaging/APKBUILD
index fce065c0395..7a634c14b83 100644
--- a/testing/py3-pymaging/APKBUILD
+++ b/testing/py3-pymaging/APKBUILD
@@ -3,13 +3,14 @@ pkgname=py3-pymaging
_pkgname=pymaging
_commit=596a08fce5664e58d6e8c96847393fbe987783f2
pkgver=0.0.20130908
-pkgrel=6
+pkgrel=9
pkgdesc="Pure Python imaging library"
url="https://github.com/ojii/pymaging"
arch="noarch"
license="BSD-3-Clause AND MIT"
depends="python3"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/ojii/$_pkgname/archive/$_commit.tar.gz"
builddir="$srcdir"/$_pkgname-$_commit
@@ -25,7 +26,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="757431eb53ee839ae8f341c5021b96a704a78434bb81f843de36c0b8274ca8de603ca5f04bf6e38a5dae39d42be2da05f03119235fe5ca5d34bd10fa30faa813 py3-pymaging-0.0.20130908.tar.gz"
diff --git a/testing/py3-pymata/APKBUILD b/testing/py3-pymata/APKBUILD
new file mode 100644
index 00000000000..34327d4331f
--- /dev/null
+++ b/testing/py3-pymata/APKBUILD
@@ -0,0 +1,27 @@
+# Contributor: David Demelier <markand@malikania.fr>
+# Maintainer: David Demelier <markand@malikania.fr>
+pkgname=py3-pymata
+pkgver=2.20
+pkgrel=3
+pkgdesc="A Python client class library for Interaction with Standard Firmata"
+url="https://github.com/MrYsLab/PyMata"
+arch="noarch"
+license="AGPL-3.0-or-later"
+depends="python3 py3-pyserial"
+makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/P/PyMata/PyMata-$pkgver.tar.gz"
+builddir="$srcdir/PyMata-$pkgver"
+options="!check" # No tests.
+
+build() {
+ python3 setup.py build
+}
+
+package() {
+ python3 setup.py install --skip-build --root="$pkgdir"
+}
+
+sha512sums="
+22ccfa550cebcfd61246af07c131cc70ea478e8cf1b98371bba79b2239af598b3d966e09edf2c511f3afe4aeb83b7ce72d427758f09e42b926a2273661fa043f PyMata-2.20.tar.gz
+"
diff --git a/testing/py3-pymata4/APKBUILD b/testing/py3-pymata4/APKBUILD
new file mode 100644
index 00000000000..0d1c1ae0e0c
--- /dev/null
+++ b/testing/py3-pymata4/APKBUILD
@@ -0,0 +1,27 @@
+# Contributor: David Demelier <markand@malikania.fr>
+# Maintainer: David Demelier <markand@malikania.fr>
+pkgname=py3-pymata4
+pkgver=1.15
+pkgrel=3
+pkgdesc="a Python Protocol Abstraction Library For Arduino Firmata"
+url="https://github.com/MrYsLab/pymata4"
+arch="noarch"
+license="AGPL-3.0-or-later"
+depends="python3 py3-pyserial"
+makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/p/pymata4/pymata4-$pkgver.tar.gz"
+builddir="$srcdir/pymata4-$pkgver"
+options="!check" # No tests.
+
+build() {
+ python3 setup.py build
+}
+
+package() {
+ python3 setup.py install --skip-build --root="$pkgdir"
+}
+
+sha512sums="
+f4e6d93abe0557f9275527dcf1e548f9bc4940f5ceec6acdd3127e137b48a94a865d8f1ba6afd51b3e0d8fdcb56eef6e43f5a4f1931d7d8422fee3e9192d7bc1 pymata4-1.15.tar.gz
+"
diff --git a/testing/py3-pymdown-extensions/APKBUILD b/testing/py3-pymdown-extensions/APKBUILD
deleted file mode 100644
index 669038dce02..00000000000
--- a/testing/py3-pymdown-extensions/APKBUILD
+++ /dev/null
@@ -1,27 +0,0 @@
-# Contributor: David Demelier <markand@malikania.fr>
-# Maintainer: David Demelier <markand@malikania.fr>
-pkgname=py3-pymdown-extensions
-pkgver=8.2
-pkgrel=1
-pkgdesc="extension pack for Python Markdown"
-url="https://github.com/facelessuser/pymdown-extensions"
-arch="noarch"
-license="MIT"
-depends="python3 py3-markdown"
-makedepends="py3-setuptools"
-checkdepends="py3-pytest"
-source="https://files.pythonhosted.org/packages/source/p/pymdown-extensions/pymdown-extensions-$pkgver.tar.gz"
-builddir="$srcdir/pymdown-extensions-$pkgver"
-options="!check" # Some tests fail.
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-9a0ed59783fdd071017daaa4bbc29b4e71e7078c06948b841cd9986cdbe3dde9379aea5459cc5a860b476935936c53c273fd13a6fc99d3d5719cf633f642d69f pymdown-extensions-8.2.tar.gz
-"
diff --git a/testing/py3-pymeta3/APKBUILD b/testing/py3-pymeta3/APKBUILD
index 1ac4579e25a..f7f5ace3ccb 100644
--- a/testing/py3-pymeta3/APKBUILD
+++ b/testing/py3-pymeta3/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
pkgname=py3-pymeta3
pkgver=0.5.1
-pkgrel=2
+pkgrel=5
pkgdesc="general object-oriented pattern matcher for Python 3"
url="https://github.com/wbond/pymeta3"
arch="noarch"
@@ -12,6 +12,7 @@ makedepends="
"
_pyname="PyMeta3"
_pypiprefix="${_pyname%${_pyname#?}}"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/$_pypiprefix/$_pyname/$_pyname-$pkgver.tar.gz"
builddir="$srcdir/$_pyname-$pkgver"
options="!check" # No tests provided
@@ -21,6 +22,6 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="3a44661ae550cbb56fb0397af835e3a12ac81243d4a2f1ac3d9d713a3955cb276441e112e7cd75beb7ebd0c4bfa03014ec8b625750dffeec891b5b7802b72575 PyMeta3-0.5.1.tar.gz"
diff --git a/testing/py3-pymsgbox/APKBUILD b/testing/py3-pymsgbox/APKBUILD
new file mode 100644
index 00000000000..9206e134bdd
--- /dev/null
+++ b/testing/py3-pymsgbox/APKBUILD
@@ -0,0 +1,35 @@
+# Maintainer:
+pkgname=py3-pymsgbox
+pkgver=1.0.9
+# no actual tags
+_gitrev=ad76bd85a9cd2506a5417b82408c82ed60585421
+pkgrel=4
+pkgdesc="Simple, cross-platform, pure Python module to display message boxes, and just message boxes"
+url="https://github.com/asweigart/PyMsgBox"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="python3"
+makedepends="py3-setuptools"
+checkdepends="xvfb-run"
+subpackages="$pkgname-pyc"
+source="$pkgname-$_gitrev.tar.gz::https://github.com/asweigart/PyMsgBox/archive/$_gitrev.tar.gz"
+builddir="$srcdir/PyMsgBox-$_gitrev"
+options="!check" # circular with pyautogui
+
+build() {
+ python3 setup.py build
+}
+
+check() {
+ PYTHONPATH="$PWD/src" \
+ xvfb-run -a \
+ python3 tests/test_pymsgbox.py
+}
+
+package() {
+ python3 setup.py install --skip-build --root="$pkgdir"
+}
+
+sha512sums="
+c2cc71d098f9498d434648aad70bbe1c718868d778decd3666092e8c4f9f1384f4d22bc1e222639a37be8fd7b802de38fec2832714fd50b3f24a7107232637fd py3-pymsgbox-ad76bd85a9cd2506a5417b82408c82ed60585421.tar.gz
+"
diff --git a/testing/py3-pymsteams/APKBUILD b/testing/py3-pymsteams/APKBUILD
index 7b4306bf3dc..770b1afa288 100644
--- a/testing/py3-pymsteams/APKBUILD
+++ b/testing/py3-pymsteams/APKBUILD
@@ -1,16 +1,19 @@
# Contributor: Francesco Colista <fcolista@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=py3-pymsteams
-pkgver=0.2.1
-pkgrel=0
+pkgver=0.2.2
+pkgrel=3
pkgdesc="Format messages and post to Microsoft Teams."
url="https://github.com/rveachkc/pymsteams"
arch="noarch"
license="Apache-2.0"
makedepends="py3-setuptools"
checkdepends="py3-pytest py3-requests py3-py py3-pluggy"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/rveachkc/pymsteams/archive/refs/tags/$pkgver.tar.gz"
builddir="$srcdir"/${pkgname/py3-/}-$pkgver
+# httpstat.us is down
+options="!check"
build() {
python3 setup.py build
@@ -22,9 +25,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
-1b77a394d7f186ba572a53afa189151aee3fe8c78eeac9f4fc7a7b76f9ab4b2bfabe9b3efde9049dda4e48841598d96f81b445ba8705a4e8a2cd9092513d122e py3-pymsteams-0.2.1.tar.gz
+a15ae179f81214c27a279e728b7e716261017b9d27417efcb7d83fe64f21e56aca03b34ba31b1ebcaac2a1dac623065706ac69c679c28472f90ed7dae05b1b98 py3-pymsteams-0.2.2.tar.gz
"
diff --git a/testing/py3-pynest2d/APKBUILD b/testing/py3-pynest2d/APKBUILD
index b1507688f12..4c046dc1d07 100644
--- a/testing/py3-pynest2d/APKBUILD
+++ b/testing/py3-pynest2d/APKBUILD
@@ -1,15 +1,24 @@
# Contributor: Anjandev Momi <anjan@momi.ca>
# Maintainer: Anjandev Momi <anjan@momi.ca>
pkgname=py3-pynest2d
-pkgver=4.12.0
-pkgrel=1
+pkgver=5.2.2
+pkgrel=3
pkgdesc="Python bindings for libnest2d"
url="https://github.com/Ultimaker/pynest2d"
arch="all"
license="LGPL-3.0-or-later"
-makedepends="samurai cmake libnest2d-dev clipper-dev py3-sip4-dev nlopt-dev boost-dev python3-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/Ultimaker/pynest2d/archive/refs/tags/$pkgver.tar.gz"
+makedepends="samurai cmake libnest2d-dev clipper-dev py3-sip nlopt-dev boost-dev python3-dev"
+source="$pkgname-$pkgver.tar.gz::https://github.com/Ultimaker/pynest2d/archive/refs/tags/$pkgver.tar.gz
+ cmake.patch
+ cmake-helpers.patch
+ pyproject.patch"
builddir="$srcdir/pynest2d-$pkgver"
+options="!check" # doesn't seem like tests are packaged anymore
+
+prepare() {
+ mv ./python ./src
+ default_prepare
+}
build() {
if [ "$CBUILD" != "$CHOST" ]; then
@@ -17,10 +26,9 @@ build() {
fi
cmake -B build -G Ninja \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
-DBUILD_SHARED_LIBS=True \
- -DCMAKE_BUILD_TYPE=minsizerel \
- $CMAKE_CROSSOPTS .
+ -DCMAKE_BUILD_TYPE=Release \
+ $CMAKE_CROSSOPTS
cmake --build build
}
@@ -34,5 +42,8 @@ package() {
}
sha512sums="
-67451e3817aa308827683153c9f1fae670d95d393fad3b9b10831f7e255469df3be73fa2f90101c6dbf4034c06b51c4b3d9a4aa242f36325bb943003b0ce1842 py3-pynest2d-4.12.0.tar.gz
+f5d701e431c81f8d2da7b14ca5677d3303064cf7910e80d289d7ff8fe99117fb9c470242f25f21fa8e1f064c63accf5349f4956981e316b09b14342223f79b61 py3-pynest2d-5.2.2.tar.gz
+c8133d221a2fd8ed5fb32933a69f992dab2e83cdb9db30dcb715ebdfe6d403be3e94df393a921f506b63ef9d8b30a107f26b57cd39810faa9bee461afe5e1afd cmake.patch
+dbf6609a21e39ae87fa89f2faf9c98a011f287cb383c5b74f92f41e3a350b487e69643c94110f7fcc25e9e25921a698cc20d9ee021d36ff908d03c0d5ca88a46 cmake-helpers.patch
+f1b710509d97b5a2a4d021747e73884d27ae00fd93a04c90be01f123cdcc59be4757b4a73dff9c9921b7794551e531cf6729e4211144c60294d107b92a928b51 pyproject.patch
"
diff --git a/testing/py3-pynest2d/cmake-helpers.patch b/testing/py3-pynest2d/cmake-helpers.patch
new file mode 100644
index 00000000000..288df071fb4
--- /dev/null
+++ b/testing/py3-pynest2d/cmake-helpers.patch
@@ -0,0 +1,253 @@
+--- /dev/null
++++ ./cmake/CMakeBuilder.py
+@@ -0,0 +1,13 @@
++from sipbuild import SetuptoolsBuilder
++
++
++class CMakeBuilder(SetuptoolsBuilder):
++ def __init__(self, project, **kwargs):
++ print("Using the CMake builder")
++ super().__init__(project, **kwargs)
++
++ def build(self):
++ """ Only Generate the source files """
++ print("Generating the source files")
++ self._generate_bindings()
++ self._generate_scripts()
+\ No newline at end of file
+--- /dev/null
++++ ./cmake/FindSIP.py
+@@ -0,0 +1,57 @@
++# -*- coding: utf-8 -*-
++#
++# Copyright (c) 2007, Simon Edwards <simon@simonzone.com>
++# All rights reserved.
++#
++# Redistribution and use in source and binary forms, with or without
++# modification, are permitted provided that the following conditions are met:
++# * Redistributions of source code must retain the above copyright
++# notice, this list of conditions and the following disclaimer.
++# * Redistributions in binary form must reproduce the above copyright
++# notice, this list of conditions and the following disclaimer in the
++# documentation and/or other materials provided with the distribution.
++# * Neither the name of the Simon Edwards <simon@simonzone.com> nor the
++# names of its contributors may be used to endorse or promote products
++# derived from this software without specific prior written permission.
++#
++# THIS SOFTWARE IS PROVIDED BY Simon Edwards <simon@simonzone.com> ''AS IS'' AND ANY
++# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
++# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
++# DISCLAIMED. IN NO EVENT SHALL Simon Edwards <simon@simonzone.com> BE LIABLE FOR ANY
++# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
++# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
++# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
++# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
++# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
++# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
++#
++# FindSIP.py
++# Copyright (c) 2007, Simon Edwards <simon@simonzone.com>
++# Redistribution and use is allowed according to the terms of the BSD license.
++# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
++
++try:
++ import sipbuild
++
++ print("sip_version:%06.0x" % sipbuild.version.SIP_VERSION)
++ print("sip_version_num:%d" % sipbuild.version.SIP_VERSION)
++ print("sip_version_str:%s" % sipbuild.version.SIP_VERSION_STR)
++
++ from distutils.sysconfig import get_python_lib
++ python_modules_dir = get_python_lib(plat_specific=1)
++ print("default_sip_dir:%s" % python_modules_dir)
++except ImportError: # Code for SIP v4
++ import sipconfig
++
++ sipcfg = sipconfig.Configuration()
++ print("sip_version:%06.0x" % sipcfg.sip_version)
++ print("sip_version_num:%d" % sipcfg.sip_version)
++ print("sip_version_str:%s" % sipcfg.sip_version_str)
++ print("sip_bin:%s" % sipcfg.sip_bin)
++ print("default_sip_dir:%s" % sipcfg.default_sip_dir)
++ print("sip_inc_dir:%s" % sipcfg.sip_inc_dir)
++ # SIP 4.19.10+ has new sipcfg.sip_module_dir
++ if hasattr(sipcfg, "sip_module_dir"):
++ print("sip_module_dir:%s" % sipcfg.sip_module_dir)
++ else:
++ print("sip_module_dir:%s" % sipcfg.sip_mod_dir)
+--- /dev/null
++++ ./cmake/FindSIP.cmake
+@@ -0,0 +1,65 @@
++# Find SIP
++# ~~~~~~~~
++#
++# SIP website: http://www.riverbankcomputing.co.uk/sip/index.php
++#
++# Find the installed version of SIP. FindSIP should be called after Python
++# has been found.
++#
++# This file defines the following variables:
++#
++# SIP_VERSION - The version of SIP found expressed as a 6 digit hex number
++# suitable for comparison as a string.
++#
++# SIP_VERSION_STR - The version of SIP found as a human readable string.
++#
++# SIP_BINARY_PATH - Path and filename of the SIP command line executable.
++#
++# SIP_INCLUDE_DIR - Directory holding the SIP C++ header file.
++#
++# SIP_DEFAULT_SIP_DIR - Default directory where .sip files should be installed
++# into.
++
++# Copyright (c) 2007, Simon Edwards <simon@simonzone.com>
++# Redistribution and use is allowed according to the terms of the BSD license.
++# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
++
++
++
++IF(SIP_VERSION OR SIP_BUILD_EXECUTABLE)
++ # Already in cache, be silent
++ SET(SIP_FOUND TRUE)
++ELSE()
++
++ FIND_FILE(_find_sip_py FindSIP.py PATHS ${CMAKE_MODULE_PATH} NO_CMAKE_FIND_ROOT_PATH)
++
++ EXECUTE_PROCESS(COMMAND ${Python_EXECUTABLE} ${_find_sip_py} OUTPUT_VARIABLE sip_config)
++ IF(sip_config)
++ STRING(REGEX REPLACE "^sip_version:([^\n]+).*$" "\\1" SIP_VERSION ${sip_config})
++ STRING(REGEX REPLACE ".*\nsip_version_num:([^\n]+).*$" "\\1" SIP_VERSION_NUM ${sip_config})
++ STRING(REGEX REPLACE ".*\nsip_version_str:([^\n]+).*$" "\\1" SIP_VERSION_STR ${sip_config})
++ STRING(REGEX REPLACE ".*\ndefault_sip_dir:([^\n]+).*$" "\\1" SIP_DEFAULT_SIP_DIR ${sip_config})
++ IF(${SIP_VERSION_STR} VERSION_LESS 5)
++ STRING(REGEX REPLACE ".*\nsip_bin:([^\n]+).*$" "\\1" SIP_BINARY_PATH ${sip_config})
++ STRING(REGEX REPLACE ".*\nsip_inc_dir:([^\n]+).*$" "\\1" SIP_INCLUDE_DIR ${sip_config})
++ STRING(REGEX REPLACE ".*\nsip_module_dir:([^\n]+).*$" "\\1" SIP_MODULE_DIR ${sip_config})
++ ELSE(${SIP_VERSION_STR} VERSION_LESS 5)
++ FIND_PROGRAM(SIP_BUILD_EXECUTABLE sip-build)
++ ENDIF(${SIP_VERSION_STR} VERSION_LESS 5)
++ SET(SIP_FOUND TRUE)
++ ENDIF(sip_config)
++
++ IF(SIP_FOUND)
++ IF(NOT SIP_FIND_QUIETLY)
++ MESSAGE(STATUS "Found SIP version: ${SIP_VERSION_STR}")
++ ENDIF(NOT SIP_FIND_QUIETLY)
++ ELSE(SIP_FOUND)
++ IF(SIP_FIND_REQUIRED)
++ MESSAGE(FATAL_ERROR "Could not find SIP")
++ ENDIF(SIP_FIND_REQUIRED)
++ ENDIF(SIP_FOUND)
++
++ENDIF()
++
++include(${CMAKE_SOURCE_DIR}/cmake/SIPMacros.cmake)
++ADD_DEFINITIONS(-DSIP_VERSION=0x${SIP_VERSION})
+--- /dev/null
++++ ./cmake/SIPMacros.cmake
+@@ -0,0 +1,105 @@
++# Macros for SIP
++# ~~~~~~~~~~~~~~
++
++set(SIP_ARGS --pep484-pyi --no-protected-is-public)
++
++function(add_sip_module MODULE_TARGET)
++ if(NOT SIP_BUILD_EXECUTABLE)
++ set(SIP_BUILD_EXECUTABLE ${CMAKE_PREFIX_PATH}/Scripts/sip-build)
++ endif()
++
++ message(STATUS "SIP: Generating pyproject.toml")
++ configure_file(${CMAKE_SOURCE_DIR}/pyproject.toml.in ${CMAKE_CURRENT_BINARY_DIR}/pyproject.toml)
++ configure_file(${CMAKE_SOURCE_DIR}/cmake/CMakeBuilder.py ${CMAKE_CURRENT_BINARY_DIR}/CMakeBuilder.py)
++ if(WIN32)
++ set(ext .pyd)
++ set(env_path_sep ";")
++ else()
++ set(ext .so)
++ set(env_path_sep ":")
++ endif()
++
++ message(STATUS "SIP: Generating source files")
++ execute_process(
++ COMMAND ${CMAKE_COMMAND} -E env "PYTHONPATH=${PYTHONPATH}${env_path_sep}$ENV{PYTHONPATH}${env_path_sep}${CMAKE_CURRENT_BINARY_DIR}" ${SIP_BUILD_EXECUTABLE} ${SIP_ARGS}
++ COMMAND_ECHO STDOUT
++ WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/
++ )
++ # This will generate the source-files during the configuration step in CMake. Needed to obtain the sources
++
++ # Touch the generated files (8 in total) to make them dirty and force them to rebuild
++ message(STATUS "SIP: Touching the source files")
++ set(_sip_output_files)
++ list(LENGTH SIP_FILES _no_outputfiles)
++ foreach(_concat_file_nr RANGE 0 ${_no_outputfiles})
++ if(${_concat_file_nr} LESS 8)
++ list(APPEND _sip_output_files "${CMAKE_CURRENT_BINARY_DIR}/${MODULE_TARGET}/${MODULE_TARGET}/sip${MODULE_TARGET}part${_concat_file_nr}.cpp")
++ endif()
++ endforeach()
++
++ # Find the generated source files
++ message(STATUS "SIP: Collecting the generated source files")
++ file(GLOB sip_c "${CMAKE_CURRENT_BINARY_DIR}/${MODULE_TARGET}/${MODULE_TARGET}/*.c")
++ file(GLOB sip_cpp "${CMAKE_CURRENT_BINARY_DIR}/${MODULE_TARGET}/${MODULE_TARGET}/*.cpp")
++ file(GLOB sip_hdr "${CMAKE_CURRENT_BINARY_DIR}/${MODULE_TARGET}/${MODULE_TARGET}/*.h")
++
++ # Add the user specified source files
++ message(STATUS "SIP: Collecting the user specified source files")
++ get_target_property(usr_src ${MODULE_TARGET} SOURCES)
++
++ # create the target library and link all the files (generated and user specified
++ message(STATUS "SIP: Linking the interface target against the shared library")
++ set(sip_sources "${sip_c}" "${sip_cpp}")
++ if(${usr_src})
++ list(APPEND sip_sources "${usr_src}")
++ endif()
++
++ if (BUILD_SHARED_LIBS)
++ add_library("sip_${MODULE_TARGET}" SHARED ${sip_sources})
++ else()
++ add_library("sip_${MODULE_TARGET}" STATIC ${sip_sources})
++ endif()
++
++ # Make sure that the library name of the target is the same as the MODULE_TARGET with the appropriate extension
++ target_link_libraries("sip_${MODULE_TARGET}" PRIVATE "${MODULE_TARGET}")
++ set_target_properties("sip_${MODULE_TARGET}" PROPERTIES PREFIX "")
++ set_target_properties("sip_${MODULE_TARGET}" PROPERTIES SUFFIX ${ext})
++ set_target_properties("sip_${MODULE_TARGET}" PROPERTIES OUTPUT_NAME "${MODULE_TARGET}")
++
++ # Add the custom command to (re-)generate the files and mark them as dirty. This allows the user to actually work
++ # on the sip definition files without having to reconfigure the complete project.
++ add_custom_command(
++ TARGET "sip_${MODULE_TARGET}"
++ COMMAND ${CMAKE_COMMAND} -E env "PYTHONPATH=${PYTHONPATH}${env_path_sep}$ENV{PYTHONPATH}${env_path_sep}${CMAKE_CURRENT_BINARY_DIR}" ${SIP_BUILD_EXECUTABLE} ${SIP_ARGS}
++ COMMAND ${CMAKE_COMMAND} -E touch ${_sip_output_files}
++ WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/
++ MAIN_DEPENDENCY ${MODULE_SIP}
++ DEPENDS ${sip_sources}
++ VERBATIM
++ )
++
++ set_target_properties("sip_${MODULE_TARGET}"
++ PROPERTIES
++ RESOURCE "${CMAKE_CURRENT_BINARY_DIR}/${MODULE_TARGET}/${MODULE_TARGET}/${MODULE_TARGET}.pyi")
++endfunction()
++
++function(install_sip_module MODULE_TARGET)
++ if(DEFINED ARGV1)
++ set(_install_path ${ARGV1})
++ else()
++ if(DEFINED Python_SITEARCH)
++ set(_install_path ${Python_SITEARCH})
++ elseif(DEFINED Python_SITELIB)
++ set(_install_path ${Python_SITELIB})
++ else()
++ message(FATAL_ERROR "SIP: Specify the site-packages location")
++ endif()
++ endif()
++ message(STATUS "SIP: Installing Python module and PEP 484 file in ${_install_path}")
++ install(TARGETS "sip_${MODULE_TARGET}"
++ ARCHIVE DESTINATION ${_install_path}
++ LIBRARY DESTINATION ${_install_path}
++ RUNTIME DESTINATION ${_install_path}
++ RESOURCE DESTINATION ${_install_path}
++ )
++endfunction()
diff --git a/testing/py3-pynest2d/cmake.patch b/testing/py3-pynest2d/cmake.patch
new file mode 100644
index 00000000000..c2ac24e9d50
--- /dev/null
+++ b/testing/py3-pynest2d/cmake.patch
@@ -0,0 +1,34 @@
+--- ./CMakeLists.txt.orig
++++ ./CMakeLists.txt
+@@ -2,16 +2,25 @@
+ project(pynest2d)
+ cmake_minimum_required(VERSION 3.20)
+
+-find_package(nest2d REQUIRED)
+-find_package(cpython REQUIRED)
++list(APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake)
+
+-find_package(standardprojectsettings REQUIRED)
+-find_package(sipbuildtool REQUIRED)
++find_package(Libnest2D REQUIRED)
+
++find_package(Python REQUIRED COMPONENTS Interpreter Development)
++find_package(SIP REQUIRED 6.5.0)
++
+ add_library(pynest2d INTERFACE)
+-use_threads(pynest2d)
+
+-target_link_libraries(pynest2d INTERFACE nest2d::nest2d cpython::cpython)
++target_include_directories(pynest2d
++ INTERFACE
++ $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
++ $<BUILD_INTERFACE:${CMAKE_SOURCE_DIR}/python/>
++ )
++
++find_package(Threads REQUIRED)
++find_package(Boost REQUIRED)
++target_link_libraries(pynest2d INTERFACE Libnest2D::libnest2d Python::Python Threads::Threads Boost::boost)
++
+ add_sip_module(pynest2d)
+ install_sip_module(pynest2d)
+
diff --git a/testing/py3-pynest2d/pyproject.patch b/testing/py3-pynest2d/pyproject.patch
new file mode 100644
index 00000000000..3c743898c6e
--- /dev/null
+++ b/testing/py3-pynest2d/pyproject.patch
@@ -0,0 +1,21 @@
+--- /dev/null
++++ ./pyproject.toml.in
+@@ -0,0 +1,17 @@
++[build-system]
++requires = ["sip >=6, <7"]
++build-backend = "sipbuild.api"
++
++[tool.sip.metadata]
++name = "pynest2d"
++
++[tool.sip.project]
++builder-factory = "CMakeBuilder"
++sip-files-dir = "${CMAKE_CURRENT_SOURCE_DIR}/src/"
++sip-include-dirs = ["CMAKE_CURRENT_SOURCE_DIR/src/"]
++build-dir = "${CMAKE_CURRENT_BINARY_DIR}/pynest2d/"
++
++[tool.sip.bindings.pynest2d]
++exceptions = true
++release-gil = true
++concatenate = 8
+\ No newline at end of file
diff --git a/testing/py3-pypandoc/APKBUILD b/testing/py3-pypandoc/APKBUILD
index 83e0f1dde04..b246a90867e 100644
--- a/testing/py3-pypandoc/APKBUILD
+++ b/testing/py3-pypandoc/APKBUILD
@@ -1,20 +1,23 @@
# Contributor: Rasmus Thomsen <oss@cogitri.dev>
-# Maintainer: Rasmus Thomsen <oss@cogitri.dev>
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=py3-pypandoc
-pkgver=1.5
-pkgrel=2
+pkgver=1.12
+pkgrel=3
pkgdesc="Thin wrapper for pandoc"
-url="https://github.com/bebraw/pypandoc"
-arch="x86_64" # pandoc
+url="https://github.com/NicklasTegner/pypandoc"
+arch="aarch64 x86_64" # pandoc
license="MIT"
depends="python3 pandoc"
-makedepends="py3-setuptools"
+makedepends="py3-gpep517 py3-poetry-core"
options="!check" # missing pandoc-citeproc
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/p/pypandoc/pypandoc-$pkgver.tar.gz"
builddir="$srcdir/pypandoc-$pkgver"
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
@@ -22,7 +25,10 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/pypandoc-*.whl
}
-sha512sums="511f5f5f7bff8de686c3f74d3756d27a3ae245803e2e9b45abc957acf112b306eff057ce87e8f3b335de00b97d4753de31e9681830d9aa776247ca707683ed13 pypandoc-1.5.tar.gz"
+sha512sums="
+9b6e3e8402928e5ff43a014135a3eeca25034e5519bdf1a1e17e46812115544a63373337b204bb5ce05cded407b76181599657e582b9042a3a0b8eaf02064c2d pypandoc-1.12.tar.gz
+"
diff --git a/testing/py3-pyparted/APKBUILD b/testing/py3-pyparted/APKBUILD
index c38fe20599d..f1591305ca1 100644
--- a/testing/py3-pyparted/APKBUILD
+++ b/testing/py3-pyparted/APKBUILD
@@ -2,28 +2,50 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=py3-pyparted
_pkgname=pyparted
-pkgver=3.12.0
-pkgrel=0
+pkgver=3.13.0
+pkgrel=1
pkgdesc="Python bindings for GNU parted (libparted)"
url="https://github.com/dcantrell/pyparted"
arch="all"
license="GPL-2.0-or-later"
-depends="python3"
-makedepends="python3-dev py3-setuptools parted-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/dcantrell/pyparted/archive/v$pkgver.tar.gz"
+makedepends="
+ parted-dev
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ python3-dev
+ "
+checkdepends="
+ e2fsprogs
+ "
+subpackages="$pkgname-pyc"
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/dcantrell/pyparted/archive/v$pkgver.tar.gz
+ archlabels-armv8l.patch
+ "
builddir="$srcdir/$_pkgname-$pkgver"
replaces=py-pyparted # Backwards compatibility
provides=py-pyparted=$pkgver-r$pkgrel # Backwards compatibility
build() {
- python3 setup.py 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 unittest discover
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
-c1779c16868799bbff0905ea908db668823d1c238b9a06bcd62b24f9681fdd1e9378e904a91eb5e426a6e264cf1f2feee984a514e9098bf10147643bf58aa918 py3-pyparted-3.12.0.tar.gz
+26819e28d73420937874f52fda03eb50ab1b136574ea9867a69d46ae4976d38c4f26a2697fa70597eed90dd78a5ea209bafcc3227a17a7a5d63cff6d107c2b11 py3-pyparted-3.13.0.tar.gz
+1b2e92b83df51e4c2fe44f67b3ea21839614ab4613d4c32b5875f9fbf364fd6c9c85fa2400b55b84d4f64435f98f8e22f93c1db9d882ed9658379b20fe76e0d8 archlabels-armv8l.patch
"
diff --git a/testing/py3-pyparted/archlabels-armv8l.patch b/testing/py3-pyparted/archlabels-armv8l.patch
new file mode 100644
index 00000000000..2bb6f178d87
--- /dev/null
+++ b/testing/py3-pyparted/archlabels-armv8l.patch
@@ -0,0 +1,20 @@
+builders are armv8l (aarch64 32-bits)
+diff --git a/src/parted/__init__.py b/src/parted/__init__.py
+index 594e092..00be6f6 100644
+--- a/src/parted/__init__.py
++++ b/src/parted/__init__.py
+@@ -479,12 +479,12 @@ __archLabels = (
+ ("dasd", "s390x?$"),
+ (
+ "gpt",
+- "i[3-6]86$|x86_64$|ia64$|ppc(64|64le)?$|aarch64$|armv7l$|riscv(32|64)$|loongarch(32|64)$",
++ "i[3-6]86$|x86_64$|ia64$|ppc(64|64le)?$|aarch64$|armv7l$|armv8l$|riscv(32|64)$|loongarch(32|64)$",
+ ),
+ ("mac", "ppc(64)?$"),
+ (
+ "msdos",
+- "i[3-6]86$|x86_64$|s390x?$|alpha$|ia64$|ppc(64|64le)?$|aarch64$|mips64$|armv7l$|riscv(32|64)$|loongarch(32|64)$",
++ "i[3-6]86$|x86_64$|s390x?$|alpha$|ia64$|ppc(64|64le)?$|aarch64$|mips64$|armv7l$|armv8l$|riscv(32|64)$|loongarch(32|64)$",
+ ),
+ ("sun", "sparc(64)?$"),
+ )
diff --git a/testing/py3-pypng/APKBUILD b/testing/py3-pypng/APKBUILD
deleted file mode 100644
index ea34684ee18..00000000000
--- a/testing/py3-pypng/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
-pkgname=py3-pypng
-pkgver=0.0.20
-pkgrel=2
-pkgdesc="Pure Python PNG image encoder/decoder"
-url="https://github.com/drj11/pypng"
-arch="noarch"
-license="MIT"
-depends="python3"
-makedepends="
- py3-setuptools
- "
-_pyname="pypng"
-_pypiprefix="${_pyname%${_pyname#?}}"
-source="https://files.pythonhosted.org/packages/source/$_pypiprefix/$_pyname/$_pyname-$pkgver.tar.gz
- python-3.9.patch"
-builddir="$srcdir/$_pyname-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 code/test_png.py
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-sha512sums="4f84e9b9cc68c0ad7e4558f0f46c54b0f091561f1a3679ac0679d8a1f1ab9a06493d71bf9df4db5deb6bedbdfa53bb1775ee51204133309eba962077102fdcdd pypng-0.0.20.tar.gz
-48c74a646b6e01b354b252b7d2c25e744c324c753978a56608b308744ff7fd0e556595259816c1221bdfbdf5cb73ee5c146076205fbae5e21a51a838a4f694fb python-3.9.patch"
diff --git a/testing/py3-pypng/python-3.9.patch b/testing/py3-pypng/python-3.9.patch
deleted file mode 100644
index cbb4bde50c5..00000000000
--- a/testing/py3-pypng/python-3.9.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From fe9c973c5e92f24746dfa1be8796c14a2befec4f Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
-Date: Wed, 15 Jul 2020 07:54:53 +0200
-Subject: [PATCH] test_png: Use array.tobytes to fix py3.9 compatibility
-
-The deprecated array.tostring() method has been removed in Python 3.9.
-Use .tobytes() instead.
----
- code/test_png.py | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/code/test_png.py b/code/test_png.py
-index c858d18..447c314 100644
---- a/code/test_png.py
-+++ b/code/test_png.py
-@@ -448,13 +448,13 @@ def test_write_packed(self):
- def test_interlaced_array(self):
- """Reading an interlaced PNG yields each row as an array."""
- r = png.Reader(bytes=pngsuite.basi0g08)
-- list(r.read()[2])[0].tostring
-+ list(r.read()[2])[0].tobytes
-
- def test_trns_array(self):
- """A type 2 PNG with tRNS chunk yields each row
- as an array (using asDirect)."""
- r = png.Reader(bytes=pngsuite.tbrn2c08)
-- list(r.asDirect()[2])[0].tostring
-+ list(r.asDirect()[2])[0].tobytes
-
- def test_flat(self):
- """Test read_flat."""
diff --git a/testing/py3-pyproj/APKBUILD b/testing/py3-pyproj/APKBUILD
deleted file mode 100644
index f57f562a346..00000000000
--- a/testing/py3-pyproj/APKBUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-# Contributor: Russ Webber <russ@rw.id.au>
-# Maintainer: Russ Webber <russ@rw.id.au>
-pkgname=py3-pyproj
-_pkgname=pyproj
-pkgver=2.6.0
-pkgrel=2
-pkgdesc="Python interface to PROJ (cartographic projections and coordinate transformations library)."
-url="https://pyproj4.github.io/pyproj"
-# broken with proj 7.1.0
-# arch="all"
-license="MIT"
-depends="python3"
-makedepends="python3-dev py3-setuptools proj-dev proj-util cython"
-checkdepends="py3-pytest py3-numpy py3-mock"
-
-source="https://github.com/pyproj4/pyproj/archive/v${pkgver}rel.tar.gz"
-builddir="$srcdir/$_pkgname-${pkgver}rel"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- modulebuilddir=$(python3 -c 'import sys,sysconfig; print("build/lib.{}-{}.{}".format(sysconfig.get_platform(), *sys.version_info[:2]))')
- PYTHONPATH="$builddir/$modulebuilddir" make test
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="9f49e60ed927a73bb48f6776464f30a03419c5b27e0262091ab7db3b4eeb8e435a73b6c07c4e055f56ea43fbc2d8ddc13514a42c8e2d24569be4fbc5337ba7b4 v2.6.0rel.tar.gz"
diff --git a/testing/py3-pyqt-feedback-flow/APKBUILD b/testing/py3-pyqt-feedback-flow/APKBUILD
deleted file mode 100644
index 0851c4a4f42..00000000000
--- a/testing/py3-pyqt-feedback-flow/APKBUILD
+++ /dev/null
@@ -1,27 +0,0 @@
-# Contributor: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-# Maintainer: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-pkgname=py3-pyqt-feedback-flow
-_pkgorig=pyqt-feedback-flow
-pkgver=0.1.6
-pkgrel=0
-pkgdesc="Show feedback in toast-like notifications"
-options="!check" # no tests
-url="https://github.com/firefly-cpp/pyqt-feedback-flow"
-arch="noarch !armhf" # failed build - missing dep
-license="MIT"
-depends="python3 py3-emoji py3-qt5"
-makedepends="py3-setuptools"
-source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/p/pyqt-feedback-flow/pyqt-feedback-flow-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgorig-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-8c195ae5c669f82b7f68322d1bb37c236b7eb8722d38c300b6f0d180c753bc8d0bc487402c3796f4ba32a19ace926e77cc28798b13011d72a7db815db6477932 py3-pyqt-feedback-flow-0.1.6.tar.gz
-"
diff --git a/testing/py3-pyrebase/APKBUILD b/testing/py3-pyrebase/APKBUILD
index 06de4ce3d0a..1aa0d1d8779 100644
--- a/testing/py3-pyrebase/APKBUILD
+++ b/testing/py3-pyrebase/APKBUILD
@@ -3,7 +3,7 @@
pkgname=py3-pyrebase
_pkgname=Pyrebase
pkgver=3.0.27
-pkgrel=1
+pkgrel=4
pkgdesc="simple python wrapper for the Firebase API"
options="!check" # no test suite
url="https://github.com/thisbejim/Pyrebase"
@@ -12,6 +12,7 @@ license="MIT"
depends="python3 py3-pycryptodome py3-requests py3-six py3-oauth2client
py3-parsing py3-requests-toolbelt py3-python-jwt"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/P/$_pkgname/$_pkgname-$pkgver.tar.gz
drop-requirements.patch
"
@@ -22,10 +23,9 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-
sha512sums="
49368b656e49eb74d2e690f916eb3a80f0670f5dfcbca0d9972fd7be993df2901a1fe03c70ef738a721a90ea23a49c5361c4fefe80d6f012af609da104506805 Pyrebase-3.0.27.tar.gz
36fe10f58564995b09d8eced1a2e1b6db7e6c6ad24f3d8f34bbe31edeb331166b1ea11daf93d61c25886f7d5997cf3d4759502e989915aa5b5dceb010e1edd4c drop-requirements.patch
diff --git a/testing/py3-pyro4/APKBUILD b/testing/py3-pyro4/APKBUILD
deleted file mode 100644
index 3e7cb6da7f6..00000000000
--- a/testing/py3-pyro4/APKBUILD
+++ /dev/null
@@ -1,34 +0,0 @@
-# Maintainer: Drew DeVault <sir@cmpwn.com>
-pkgname=py3-pyro4
-_pyname=Pyro4
-pkgver=4.82
-pkgrel=0
-pkgdesc="Python remote objects"
-url="http://pyro4.readthedocs.io/"
-arch="noarch !s390x" # Limited by py3-dill
-license="MIT"
-depends="py3-serpent"
-makedepends="python3 py3-setuptools"
-checkdepends="py3-msgpack py3-dill py3-cloudpickle"
-_pypiprefix="${_pyname%"${_pyname#?}"}"
-source="https://files.pythonhosted.org/packages/source/$_pypiprefix/$_pyname/$_pyname-$pkgver.tar.gz"
-builddir=$srcdir/$_pyname-$pkgver
-
-replaces="py-pyro4" # Backwards compatibility
-provides="py-pyro4=$pkgver-r$pkgrel" # Backwards compatibility
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 setup.py test
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-f5916ce37ec52d8cd23bece79325480140621ac8412febb4877a32b1ce54502ef17d20bf591dc30eb20e9619741548b30a78165937d5e69e8d1911d95a23b1e1 Pyro4-4.82.tar.gz
-"
diff --git a/testing/py3-pyroma/APKBUILD b/testing/py3-pyroma/APKBUILD
index 23b1d002381..7246b67e854 100644
--- a/testing/py3-pyroma/APKBUILD
+++ b/testing/py3-pyroma/APKBUILD
@@ -1,27 +1,39 @@
# Maintainer: Hristiyan Ivanov <hristiyan.d.ivanov@gmail.com>
pkgname=py3-pyroma
_pkgname=pyroma
-pkgver=2.6
-pkgrel=2
-pkgdesc="Python project assessment tool."
+pkgver=4.2
+pkgrel=0
+pkgdesc="Rate your Python packages package friendliness"
url="https://pypi.org/project/pyroma/"
arch="noarch"
license="MIT"
-depends="py3-pygments py3-setuptools py3-docutils"
-makedepends="python3-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/regebro/$_pkgname/archive/$pkgver.tar.gz"
+depends="py3-build
+ py3-docutils
+ py3-pygments
+ py3-requests
+ py3-setuptools
+ py3-trove-classifiers
+ "
+makedepends="py3-gpep517 py3-wheel"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/regebro/pyroma/archive/refs/tags/$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
build() {
- python3 setup.py build
+ gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2
}
check() {
- python3 setup.py test
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" .dist/*.whl
}
-sha512sums="9cbaf4bafc78c8b70948b0ee4233c8c254cd0e2eba2df247a7ecb50595896464cffef67b97208d7196d521bb4219ae9056f8da33c7776f354ea6cbada32363be py3-pyroma-2.6.tar.gz"
+sha512sums="
+6b1830d171674409cc16894233768db065ad8d1c8ebe1edeb49575dc9df37f99b6d82096a19b9c5d6aaf23df94e62f5df86919a78acca4fe718926db73670e26 py3-pyroma-4.2.tar.gz
+"
diff --git a/testing/py3-pyrss2gen/APKBUILD b/testing/py3-pyrss2gen/APKBUILD
deleted file mode 100644
index db8bc3fa00c..00000000000
--- a/testing/py3-pyrss2gen/APKBUILD
+++ /dev/null
@@ -1,27 +0,0 @@
-# Contributor: Fabian Affolter <fabian@affolter-engineering.ch>
-# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
-pkgname=py3-pyrss2gen
-_pkgname=PyRSS2Gen
-pkgver=1.1
-pkgrel=5
-pkgdesc="RSS2 generator"
-url="http://dalkescientific.com/Python/PyRSS2Gen.html"
-arch="noarch"
-license="BSD-2-Clause"
-depends="python3"
-makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
-builddir="$srcdir"/$_pkgname-$pkgver
-
-replaces="py-pyrss2gen" # Backwards compatibility
-provides="py-pyrss2gen=$pkgver-r$pkgrel" # Backwards compatibility
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="23079bdd6a54c0c5f27f0ade81b8ac1a28031779b9952e2d2f16d5100fa0f58c1f6b0a3f02a5e2c7d2d0e309c369a5f518ebcafb77f17c3d2f639b997d13fbd4 PyRSS2Gen-1.1.tar.gz"
diff --git a/testing/py3-pyscreeze/APKBUILD b/testing/py3-pyscreeze/APKBUILD
new file mode 100644
index 00000000000..a0de05f9ca3
--- /dev/null
+++ b/testing/py3-pyscreeze/APKBUILD
@@ -0,0 +1,34 @@
+# Maintainer:
+pkgname=py3-pyscreeze
+pkgver=0.1.29
+# no actual tags
+_gitrev=2cf06466855260fb20982a813957e9452ce45c11
+pkgrel=2
+pkgdesc="Simple, cross-platform screenshot module for Python 2 and 3"
+url="https://github.com/asweigart/pyscreeze"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="python3 py3-pillow py3-xlib scrot"
+makedepends="py3-setuptools"
+checkdepends="xvfb-run"
+subpackages="$pkgname-pyc"
+source="$pkgname-$_gitrev.tar.gz::https://github.com/asweigart/pyscreeze/archive/$_gitrev.tar.gz"
+builddir="$srcdir/pyscreeze-$_gitrev"
+
+build() {
+ python3 setup.py build
+}
+
+check() {
+ PYTHONPATH="$PWD" \
+ xvfb-run -a \
+ python3 tests/test_pyscreeze.py
+}
+
+package() {
+ python3 setup.py install --skip-build --root="$pkgdir"
+}
+
+sha512sums="
+cedf02941a0c3ba7018bb732de3c11206a0a88badd0531e78d0a636abf53df8bea15497205954ed2ef9d66eeff15ea263b6d7e34f4f103fe6542010de931fa32 py3-pyscreeze-2cf06466855260fb20982a813957e9452ce45c11.tar.gz
+"
diff --git a/testing/py3-pysequoia/APKBUILD b/testing/py3-pysequoia/APKBUILD
new file mode 100644
index 00000000000..1de71e09aef
--- /dev/null
+++ b/testing/py3-pysequoia/APKBUILD
@@ -0,0 +1,54 @@
+# Maintainer:
+pkgname=py3-pysequoia
+pkgver=0.1.20
+pkgrel=2
+pkgdesc="Pythong bindings for the Sequoia PGP library"
+url="https://codeberg.org/wiktor/pysequoia"
+# rust-ring
+arch="all !s390x !ppc64le !riscv64"
+license="Apache-2.0"
+makedepends="
+ bzip2-dev
+ cargo
+ clang-libclang
+ gmp-dev
+ nettle-dev
+ openssl-dev
+ pcsc-lite-dev
+ py3-gpep517
+ py3-maturin
+ py3-wheel
+ "
+checkdepends="
+ py3-pytest
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://codeberg.org/wiktor/pysequoia/archive/v$pkgver.tar.gz"
+builddir="$srcdir/pysequoia"
+options="net" # cargo
+
+prepare() {
+ default_prepare
+
+ cargo fetch --locked
+}
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --config-json '{"build-args": "--frozen"}' \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ cargo test
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+1db48aa093420cc9733b122a96b813923e4e7ef040ddc8d79df1a1d0a2c6d26ffd33e9c56c4873df17720e374a377a4f294c0e8d0a134625b8daefc3bd74a9e2 py3-pysequoia-0.1.20.tar.gz
+"
diff --git a/testing/py3-pysimplesoap/APKBUILD b/testing/py3-pysimplesoap/APKBUILD
index ceed28c43aa..b5ef46bbd8f 100644
--- a/testing/py3-pysimplesoap/APKBUILD
+++ b/testing/py3-pysimplesoap/APKBUILD
@@ -3,7 +3,7 @@
pkgname=py3-pysimplesoap
_pkgname=PySimpleSOAP
pkgver=1.16.2
-pkgrel=3
+pkgrel=6
pkgdesc="Simple SOAP library"
options="!check" # Tests only work on python2
url="https://github.com/pysimplesoap/pysimplesoap"
@@ -11,6 +11,7 @@ arch="noarch"
license="LGPL-3.0-or-later"
depends="python3"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
@@ -19,7 +20,7 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="179387328d81a08413820cd0ce6cb92fedc13cd8be4451c38bd70b7a4408555acd80ca25cdf2ddc5d5295bcd9346d646c65f93b36368a35f81399dd07eba0643 PySimpleSOAP-1.16.2.tar.gz"
diff --git a/testing/py3-pysonic/APKBUILD b/testing/py3-pysonic/APKBUILD
index 0cd72613ae9..9b64bff2c25 100644
--- a/testing/py3-pysonic/APKBUILD
+++ b/testing/py3-pysonic/APKBUILD
@@ -2,24 +2,29 @@
# Maintainer: Galen Abell <galen@galenabell.com>
pkgname=py3-pysonic
_pyname=py-sonic
-pkgver=0.7.9
-pkgrel=2
+pkgver=1.0.1
+pkgrel=1
pkgdesc="Python library to wrap the Subsonic REST API"
url="https://github.com/crustymonkey/py-sonic"
arch="noarch"
license="GPL-3.0-only"
options="!check" # no tests
-depends="python3"
-makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/${_pyname%${_pyname#?}}/$_pyname/$_pyname-$pkgver.tar.gz"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/p/$_pyname/$_pyname-$pkgver.tar.gz"
builddir="$srcdir/$_pyname-$pkgver"
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ dist/*.whl
}
-sha512sums="4a89537f12cb2f0cdecbdf48a9f8593e734dbfb181855bdbb6306e26e7b62a3acbb66dec7beb13f08b0c92c75fbd6a1ba766ce898445b360f6616fe7fbc327d3 py-sonic-0.7.9.tar.gz"
+sha512sums="
+10fd65abea96fcadbfd73527c8d9d31cdf0e60ac6a22de64cea7987b22d8de6b54cb3e9cb2683370a1382965667c4bea49b375e774a5195e00344881d363a456 py-sonic-1.0.1.tar.gz
+"
diff --git a/testing/py3-pyspinel/APKBUILD b/testing/py3-pyspinel/APKBUILD
new file mode 100644
index 00000000000..8802090b529
--- /dev/null
+++ b/testing/py3-pyspinel/APKBUILD
@@ -0,0 +1,44 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-pyspinel
+pkgver=1.0.3
+pkgrel=1
+pkgdesc="A Python interface to the OpenThread Network Co-Processor (NCP)"
+url="https://github.com/openthread/openthread"
+arch="noarch"
+license="Apache-2.0"
+depends="
+ py3-pyserial
+ python3
+ "
+makedepends="
+ py3-gpep517
+ py3-installer
+ py3-setuptools
+ py3-wheel
+ "
+subpackages="$pkgname-pyc"
+source="https://pypi.python.org/packages/source/p/pyspinel/pyspinel-$pkgver.tar.gz"
+options="!check" # Broken
+builddir="$srcdir/pyspinel-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m unittest discover
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+e5b128680b846263924bd306d419917f3e3dc6b2052adfdf6931dd18f6d1ddb18be033880874b4404d79fa0910b64ece7d9fdbda5c7ab4aed759ef1fc9f0f1a7 pyspinel-1.0.3.tar.gz
+"
diff --git a/testing/py3-pysrt/APKBUILD b/testing/py3-pysrt/APKBUILD
index e8ffe65b8a1..dc738ac7d47 100644
--- a/testing/py3-pysrt/APKBUILD
+++ b/testing/py3-pysrt/APKBUILD
@@ -3,7 +3,7 @@
pkgname=py3-pysrt
_pkgname=pysrt
pkgver=1.1.2
-pkgrel=0
+pkgrel=3
pkgdesc="Python parser for SubRip (srt) files"
url="https://github.com/byroot/pysrt"
arch="noarch"
@@ -11,7 +11,10 @@ license="GPL-3.0-only"
depends="python3 py3-chardet"
makedepends="py3-setuptools"
checkdepends="py3-nose"
-source="$pkgname-$pkgver.tar.gz::$url/archive/v$pkgver.tar.gz"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/byroot/pysrt/archive/v$pkgver.tar.gz
+ assertEquals.patch
+ "
builddir="$srcdir/$_pkgname-$pkgver"
build() {
@@ -23,9 +26,10 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
0d6b3a7ce4c8733221bfb5c3e434233d1b221fedda3c145fafe124093f1f9090b99c175e79de386717ec5f8b564c62719f377651db95a8d3c382e2bf8dccb0a8 py3-pysrt-1.1.2.tar.gz
+0a1f74486e70488b236a5cfe4008c375adede8c8383016c39c660337e61c589ca5970e7a93e4514e43ed2162f2f1964171d706aa8c4b8854b0a1f90538f21673 assertEquals.patch
"
diff --git a/testing/py3-pysrt/assertEquals.patch b/testing/py3-pysrt/assertEquals.patch
new file mode 100644
index 00000000000..16a7abfab96
--- /dev/null
+++ b/testing/py3-pysrt/assertEquals.patch
@@ -0,0 +1,49 @@
+diff --git a/tests/test_srtfile.py b/tests/test_srtfile.py
+index 819aa4d..b24e8ac 100644
+--- a/tests/test_srtfile.py
++++ b/tests/test_srtfile.py
+@@ -119,4 +119,4 @@ class TestSlice(unittest.TestCase):
+ def test_at(self):
+- self.assertEquals(len(self.file.at((0, 0, 31, 0))), 1)
+- self.assertEquals(len(self.file.at(seconds=31)), 1)
++ self.assertEqual(len(self.file.at((0, 0, 31, 0))), 1)
++ self.assertEqual(len(self.file.at(seconds=31)), 1)
+
+@@ -139,3 +139,3 @@ class TestText(unittest.TestCase):
+ ])
+- self.assertEquals(srt_file.text, 'Hello')
++ self.assertEqual(srt_file.text, 'Hello')
+
+@@ -146,3 +146,3 @@ class TestText(unittest.TestCase):
+ ])
+- self.assertEquals(srt_file.text, 'Hello\nWorld !')
++ self.assertEqual(srt_file.text, 'Hello\nWorld !')
+
+@@ -253,3 +253,3 @@ class TestIntegration(unittest.TestCase):
+ items = pysrt.open(os.path.join(self.base_path, 'no-indexes.srt'))
+- self.assertEquals(len(items), 7)
++ self.assertEqual(len(items), 7)
+
+diff --git a/tests/test_srtitem.py b/tests/test_srtitem.py
+index f4a6f2f..9d29538 100644
+--- a/tests/test_srtitem.py
++++ b/tests/test_srtitem.py
+@@ -199,4 +199,4 @@ class TestSerialAndParsing(unittest.TestCase):
+ item = SubRipItem.from_string(self.string_index)
+- self.assertEquals(item.index, 'foo')
+- self.assertEquals(item.text, 'Hello !')
++ self.assertEqual(item.index, 'foo')
++ self.assertEqual(item.text, 'Hello !')
+
+@@ -204,4 +204,4 @@ class TestSerialAndParsing(unittest.TestCase):
+ item = SubRipItem.from_string(self.no_index)
+- self.assertEquals(item.index, None)
+- self.assertEquals(item.text, 'Hello world !')
++ self.assertEqual(item.index, None)
++ self.assertEqual(item.text, 'Hello world !')
+
+@@ -209,3 +209,3 @@ class TestSerialAndParsing(unittest.TestCase):
+ item = SubRipItem.from_string(self.junk_after_timestamp)
+- self.assertEquals(item, self.item)
++ self.assertEqual(item, self.item)
+
diff --git a/testing/py3-pystache/APKBUILD b/testing/py3-pystache/APKBUILD
index 7cd9a070def..b0355da87b4 100644
--- a/testing/py3-pystache/APKBUILD
+++ b/testing/py3-pystache/APKBUILD
@@ -4,35 +4,39 @@
# Maintainer: Paul Kilar <pkilar@gmail.com>
pkgname=py3-pystache
_realname=pystache
-pkgver=0.5.4
-pkgrel=6
+pkgver=0.6.5
+pkgrel=1
pkgdesc="Pystache is a Python implementation of Mustache"
-url="https://pypi.python.org/pypi/pystache"
+url="https://pypi.org/project/pystache"
arch="noarch"
license="MIT"
replaces="py-pystache" # For backwards compatibility
provides="py-pystache=$pkgver-r$pkgrel" # For backwards compatibility
depends="python3"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-installer py3-wheel py3-setuptools_scm"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_realname:0:1}/$_realname/$_realname-$pkgver.tar.gz"
builddir="$srcdir"/$_realname-$pkgver
build() {
- python3 setup.py build
+ export SETUPTOOLS_SCM_PRETEND_VERSION="$pkgver"
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- # This package uses 2to3 to convert itself to Python 3 on the fly
- # So we need to jump through some hoops here
- local _py3ver=$(python3 -c 'import sys; print("{}.{}".format(sys.version_info.major, sys.version_info.minor))')
- mkdir -p test_dir
- python3 setup.py install --root=test_dir
- PYTHONPATH=test_dir/usr/lib/python$_py3ver/site-packages test_dir/usr/bin/pystache-test
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
-
-sha512sums="4ac325e1431f58f740218c9ec309821db82d89989ef4ca7fc3536dea0ef1c90e8e85ebaa7df27f33129ca02252b84bcbd7429a1ed999b496f62f174dd66502cb pystache-0.5.4.tar.gz"
+sha512sums="
+56b6e5ce6bc95aa2d5d77172d75d3fa2a37cf0927259f9136d77d9a73ce26384d72b3dd158577d247e1cbbe887916d7bc7982b6d8df2d1c0411dc33c93be6e1c pystache-0.6.5.tar.gz
+"
diff --git a/testing/py3-pytaglib/APKBUILD b/testing/py3-pytaglib/APKBUILD
index aa9ab76565b..e109c66b9b0 100644
--- a/testing/py3-pytaglib/APKBUILD
+++ b/testing/py3-pytaglib/APKBUILD
@@ -2,18 +2,20 @@
# Maintainer: prspkt <prspkt@protonmail.com>
pkgname=py3-pytaglib
pkgver=1.5.0
-pkgrel=0
+pkgrel=3
pkgdesc="Python bindigs for the TagLib audio metadata library"
url="https://taglib.org"
arch="all"
license="GPL-3.0-or-later"
depends="python3"
-makedepends="py3-setuptools python3-dev taglib-dev"
+makedepends="cython py3-setuptools python3-dev taglib-dev"
checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/p/pytaglib/pytaglib-$pkgver.tar.gz"
builddir="$srcdir/pytaglib-$pkgver"
build() {
+ PYTAGLIB_CYTHONIZE=1 \
python3 setup.py build
}
@@ -23,7 +25,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
diff --git a/testing/py3-pyte/APKBUILD b/testing/py3-pyte/APKBUILD
index ee00c3c4515..ff6f1505437 100644
--- a/testing/py3-pyte/APKBUILD
+++ b/testing/py3-pyte/APKBUILD
@@ -2,14 +2,15 @@
# Maintainer: Simon Frankenberger <simon-alpine@fraho.eu>
pkgname=py3-pyte
_pkgname=pyte
-pkgver=0.8.0
-pkgrel=3
+pkgver=0.8.2
+pkgrel=1
pkgdesc="Pyte is an in memory VTXXX-compatible terminal emulator"
url="https://github.com/selectel/pyte"
arch="noarch"
license="LGPL"
depends="py3-wcwidth"
makedepends="py3-setuptools py3-pytest-runner"
+subpackages="$pkgname-pyc"
source="pyte-$pkgver.tar.gz::https://github.com/selectel/pyte/archive/$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -22,8 +23,9 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-
-sha512sums="c488fd0a61c1dc34b27e12ed9ba1109bb2c331626c982da06e7540bdd168008cb5106a17c71e60e38c493f2dd9f21ba3cf05118928744dfa192d62e511b4c4e8 pyte-0.8.0.tar.gz"
+sha512sums="
+e9e79babb81b32eedbb4f0585ef07f8978e8592171834d9ce43a09f8a1d3156c00abb535e887ba9c83909bf1010210009b9a00ccbec7c2e430e5147120949743 pyte-0.8.2.tar.gz
+"
diff --git a/testing/py3-pytest-env/APKBUILD b/testing/py3-pytest-env/APKBUILD
deleted file mode 100644
index 241c40d3695..00000000000
--- a/testing/py3-pytest-env/APKBUILD
+++ /dev/null
@@ -1,27 +0,0 @@
-# Contributor: Galen Abell <galen@galenabell.com>
-# Maintainer: Galen Abell <galen@galenabell.com>
-pkgname=py3-pytest-env
-_pyname=pytest-env
-pkgver=0.6.2
-pkgrel=1
-pkgdesc="Pytest plugin for adding environment variables"
-url="https://github.com/MobileDynasty/pytest-env"
-arch="noarch"
-license="MIT"
-depends="python3 py3-pytest"
-makedepends="py3-setuptools"
-options="!check" # no tests
-source="$_pyname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/${_pyname%${_pyname#?}}/$_pyname/$_pyname-$pkgver.tar.gz"
-builddir="$srcdir/$_pyname-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-0b3bb21fc881023c102b584593c6e28840400ce8190810f33f9a421df4141e17dcfad2943c4159aaab82376b7b47b07b45f97c9cb232a7d17c4d35b55966596d pytest-env-0.6.2.tar.gz
-"
diff --git a/testing/py3-pytest-expect/APKBUILD b/testing/py3-pytest-expect/APKBUILD
index 63cf74c9890..817954cecf3 100644
--- a/testing/py3-pytest-expect/APKBUILD
+++ b/testing/py3-pytest-expect/APKBUILD
@@ -3,7 +3,7 @@
pkgname=py3-pytest-expect
_pkgname=pytest-expect
pkgver=1.1.0
-pkgrel=6
+pkgrel=9
pkgdesc="A pytest plugin that stores test expectations"
options="!check" # no test suite
url="https://github.com/gsnedders/pytest-expect"
@@ -11,6 +11,7 @@ arch="noarch"
license="MIT"
depends="py3-pytest py3-u-msgpack"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="$_pkgname-$pkgver.tar.gz::https://github.com/gsnedders/pytest-expect/archive/$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
@@ -19,7 +20,7 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="dbef3c394e974663179e91ca3cd6f096fdb055693b3e540dd0f27d6bf59a5c7298144598eb069f8f0acddd82ecce0bdce14ccd25728eb6a024d41895403e5144 pytest-expect-1.1.0.tar.gz"
diff --git a/testing/py3-pytest-helpers-namespace/APKBUILD b/testing/py3-pytest-helpers-namespace/APKBUILD
new file mode 100644
index 00000000000..eca89de8db5
--- /dev/null
+++ b/testing/py3-pytest-helpers-namespace/APKBUILD
@@ -0,0 +1,42 @@
+# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=py3-pytest-helpers-namespace
+pkgver=2021.12.29
+pkgrel=3
+pkgdesc="Pytest Helpers Namespace Plugin"
+url="https://pytest-helpers-namespace.readthedocs.io/"
+arch="noarch"
+license="Apache-2.0"
+depends="py3-pytest"
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-setuptools-declarative-requirements
+ py3-setuptools_scm
+ py3-wheel
+ "
+subpackages="$pkgname-pyc"
+source="https://github.com/saltstack/pytest-helpers-namespace/archive/refs/tags/v$pkgver/py3-pytest-helpers-namespace-$pkgver.tar.gz"
+builddir="$srcdir/pytest-helpers-namespace-$pkgver"
+
+build() {
+ export SETUPTOOLS_SCM_PRETEND_VERSION=$pkgver
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ gpep517 install-wheel --destdir .testenv --prefix '' .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+82c231ff11a36fce7b16a0ceea51c9306f7e05ca3f9e8cc7cc1c77ac9822f974d1ac893d2bf9b7154bf9593a529193daa041ccaaced6fdd9e38ba4f794f161b0 py3-pytest-helpers-namespace-2021.12.29.tar.gz
+"
diff --git a/testing/py3-pytest-html/APKBUILD b/testing/py3-pytest-html/APKBUILD
new file mode 100644
index 00000000000..afdbef226e5
--- /dev/null
+++ b/testing/py3-pytest-html/APKBUILD
@@ -0,0 +1,49 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-pytest-html
+pkgver=4.1.1
+pkgrel=1
+pkgdesc="pytest plugin for generating HTML reports"
+url="https://github.com/pytest-dev/pytest-html"
+arch="noarch"
+license="MPL-2.0"
+depends="
+ py3-jinja2
+ py3-pytest
+ py3-pytest-metadata
+ "
+makedepends="
+ npm
+ py3-gpep517
+ py3-hatch-vcs
+ py3-hatchling
+ py3-wheel
+ "
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/pytest-dev/pytest-html/archive/refs/tags/$pkgver.tar.gz"
+options="!check" # Requires non-packaged dependencies
+builddir="$srcdir/pytest-html-$pkgver"
+
+export SETUPTOOLS_SCM_PRETEND_VERSION="$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+c0cbb342d67ed222130907e43f9ab5ea792865598304d8de9b9da6d1d021a39c78468e79a7806b6a847384c555f060eb0236a905db29a92075e6b8682f12c838 py3-pytest-html-4.1.1.tar.gz
+"
diff --git a/testing/py3-pytest-instafail/APKBUILD b/testing/py3-pytest-instafail/APKBUILD
deleted file mode 100644
index 4cf6c07d5ac..00000000000
--- a/testing/py3-pytest-instafail/APKBUILD
+++ /dev/null
@@ -1,29 +0,0 @@
-# Contributor: Duncan Bellamy <dunk@denkimushi.com>
-# Maintainer: Duncan Bellamy <dunk@denkimushi.com>
-pkgname=py3-pytest-instafail
-pkgver=0.4.2
-pkgrel=1
-pkgdesc="pytest plugin to show failures instantly"
-url="https://github.com/pytest-dev/pytest-instafail"
-arch="noarch"
-license="BSD-3-Clause"
-depends="python3 py3-pytest"
-makedepends="py3-setuptools"
-source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/p/pytest-instafail/pytest-instafail-$pkgver.tar.gz"
-builddir="$srcdir/pytest-instafail-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- pytest
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-19191d2e0c003ff06e5ef98d5696d9085971c86f13759d9a464315ca78f35f65f75ac66a1f03886db4a3c118e72673f4cad3067a23e2a4fddcdd85ac164e31ae py3-pytest-instafail-0.4.2.tar.gz
-"
diff --git a/testing/py3-pytest-metadata/APKBUILD b/testing/py3-pytest-metadata/APKBUILD
new file mode 100644
index 00000000000..d39d0ddc197
--- /dev/null
+++ b/testing/py3-pytest-metadata/APKBUILD
@@ -0,0 +1,40 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-pytest-metadata
+pkgver=3.1.1
+pkgrel=0
+pkgdesc="pytest plugin for test session metadata"
+url="https://github.com/pytest-dev/pytest-metadata"
+arch="noarch"
+license="MPL-2.0"
+depends="py3-pytest"
+makedepends="
+ py3-gpep517
+ py3-hatch-vcs
+ py3-hatchling
+ py3-wheel
+ "
+subpackages="$pkgname-pyc"
+source="https://pypi.python.org/packages/source/p/pytest_metadata/pytest_metadata-$pkgver.tar.gz"
+builddir="$srcdir/pytest_metadata-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+20c880cd797534dee9206ef99755643fccc9d62521f1b50dbcc7f2ac0a8ab6adccc4158510c00e20308bed93ada180448ac9f06277cc1af3ba94a1b903da4b09 pytest_metadata-3.1.1.tar.gz
+"
diff --git a/testing/py3-pytest-mypy/APKBUILD b/testing/py3-pytest-mypy/APKBUILD
new file mode 100644
index 00000000000..3bfbbc6f45e
--- /dev/null
+++ b/testing/py3-pytest-mypy/APKBUILD
@@ -0,0 +1,48 @@
+# Maintainer:
+pkgname=py3-pytest-mypy
+pkgver=0.10.3
+pkgrel=2
+pkgdesc="Pytest plugin for mypy"
+url="https://github.com/realpython/pytest-mypy"
+arch="noarch"
+license="MIT"
+depends="
+ py3-attrs
+ py3-filelock
+ py3-mypy
+ py3-pytest
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools_scm
+ py3-wheel
+ "
+checkdepends="
+ py3-pexpect
+ py3-pytest-xdist
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/realpython/pytest-mypy/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/pytest-mypy-$pkgver"
+
+build() {
+ SETUPTOOLS_SCM_PRETEND_VERSION=$pkgver \
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest -n auto
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+74e0a6759cedd745ea57c0025698b09fe1297fc9fa344b72130a04f43ee06b7f4ceedf8473948429086f15fbb69efed51f5c934a83343cf7b4c92a5b400e6795 py3-pytest-mypy-0.10.3.tar.gz
+"
diff --git a/testing/py3-pytest-regtest/APKBUILD b/testing/py3-pytest-regtest/APKBUILD
index b9c9e13c3b1..c07182c1a96 100644
--- a/testing/py3-pytest-regtest/APKBUILD
+++ b/testing/py3-pytest-regtest/APKBUILD
@@ -1,31 +1,49 @@
# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
pkgname=py3-pytest-regtest
-_pyname=pytest-regtest
-pkgver=1.4.5
-pkgrel=2
+_pyname=pytest_regtest
+pkgver=2.1.1
+pkgrel=1
pkgdesc="pytest-regtest is a pytest-plugin for implementing regression tests"
url="https://gitlab.com/uweschmitt/pytest-regtest"
arch="noarch"
license="MIT"
-depends="py3-pytest"
-makedepends="py3-setuptools"
-checkdepends="py3-pexpect py3-tox"
-source="https://files.pythonhosted.org/packages/source/p/$_pyname/$_pyname-$pkgver.tar.gz"
+depends="
+ py3-pytest
+ "
+makedepends="
+ py3-gpep517
+ py3-hatchling
+ py3-setuptools
+ py3-wheel
+ twine
+ "
+checkdepends="
+ py3-pexpect
+ py3-tox
+ "
+subpackages="$pkgname-pyc"
+source="
+ https://files.pythonhosted.org/packages/source/p/$_pyname/$_pyname-$pkgver.tar.gz
+ "
builddir="$srcdir/$_pyname-$pkgver"
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- python3 setup.py test
+ python3 -m venv --clear --without-pip --system-site-packages test-env
+ test-env/bin/python3 -m installer .dist/*.whl
+ test-env/bin/python3 -m pytest tests/test_plugin.py
}
package() {
- python3 setup.py install \
- --prefix=/usr \
- --root="$pkgdir"
-
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
-sha512sums="f10faf6f6bbbe1e08f6aaa6e67ef8b47da48d081f041e0977ebed348c1e49432fc9f00e8567a996fd0bd6f103ca8335b3fb5e5796baaf6cdaa18293da9d82064 pytest-regtest-1.4.5.tar.gz"
+sha512sums="
+31f5da09d1bfae682caba6eb716cf75f80de8ef0f30893b760d6eee60717b9453b0b3c72a5e706f8b3c84d85ac7a856d4c03632f851c40741a4893a1ca8002fb pytest_regtest-2.1.1.tar.gz
+"
diff --git a/testing/py3-pytest-rerunfailures/APKBUILD b/testing/py3-pytest-rerunfailures/APKBUILD
deleted file mode 100644
index fb9a8ea9642..00000000000
--- a/testing/py3-pytest-rerunfailures/APKBUILD
+++ /dev/null
@@ -1,29 +0,0 @@
-# Contributor: Philipp Glaum <p@pglaum.de>
-# Maintainer: Philipp Glaum <p@pglaum.de>
-pkgname=py3-pytest-rerunfailures
-_pkgname=pytest-rerunfailures
-pkgver=9.1.1
-pkgrel=2
-pkgdesc="Pytest plugin to re-run tests to eliminate flaky failures"
-url="https://pypi.org/project/pytest-rerunfailures/"
-arch="noarch"
-license="MPL-2.0"
-depends="python3 py3-pytest"
-makedepends="py3-setuptools"
-checkdepends="py3-mock"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgname-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- py.test-3
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="875591306ab010494ccbb865ea6445ab37422fce9105260d9495215af44057210564aca4fed3b4765b5a30c1cbef120de716d15d10a6db91dcb7d9f5b4f3b102 pytest-rerunfailures-9.1.1.tar.gz"
diff --git a/testing/py3-pytest-subprocess/APKBUILD b/testing/py3-pytest-subprocess/APKBUILD
new file mode 100644
index 00000000000..e8581b5aa01
--- /dev/null
+++ b/testing/py3-pytest-subprocess/APKBUILD
@@ -0,0 +1,40 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=py3-pytest-subprocess
+_pyname=${pkgname#py3-}
+pkgver=1.5.0
+pkgrel=2
+pkgdesc="Pytest plugin to fake subprocess"
+url="https://github.com/aklajnert/pytest-subprocess"
+arch="noarch"
+license="MIT"
+depends="python3 py3-pytest"
+makedepends="py3-setuptools"
+checkdepends="
+ py3-anyio
+ py3-docutils
+ py3-pygments
+ py3-pytest-asyncio
+ py3-pytest-rerunfailures
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/aklajnert/pytest-subprocess/archive/refs/tags/$pkgver.tar.gz"
+builddir="$srcdir/$_pyname-$pkgver"
+
+build() {
+ python3 setup.py build
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages test-env
+ test-env/bin/python3 setup.py install
+ test-env/bin/python3 -m pytest \
+ -W "ignore:There is no current event loop:DeprecationWarning"
+}
+
+package() {
+ python3 setup.py install --skip-build --root="$pkgdir"
+}
+
+sha512sums="
+8489993cc396d41d127927ab46a43120528dbcb9641e7be03777689af127df29fe618eee3a815e96a0353cc02117dc1af22800d748476c4fe2b76c2246229f08 py3-pytest-subprocess-1.5.0.tar.gz
+"
diff --git a/testing/py3-python-archive/APKBUILD b/testing/py3-python-archive/APKBUILD
index 5d6a82e0ddd..af37c899dfa 100644
--- a/testing/py3-python-archive/APKBUILD
+++ b/testing/py3-python-archive/APKBUILD
@@ -3,25 +3,25 @@
pkgname=py3-python-archive
_pkgname=python-archive
pkgver=0.2
-pkgrel=3
+pkgrel=6
pkgdesc="Library for extracting zip and tar archives"
url="https://github.com/gdub/python-archive"
arch="noarch"
license="MIT"
replaces="py-archive" # for backwards compatibility
provides="py-archive=$pkgver-r$pkgrel" # for backwards compatibility
-depends="python3"
+makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
+options="!check" # no tests
build() {
- cd "$builddir"
python3 setup.py build
}
package() {
- cd "$builddir"
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="5f02fe522f44989c1b61db48239cdbda5536ff685174ba93af028591eba276dcefd7655aad3a458d92140f163724d87bbe25711c78a82e06dfb382b6ae9f5683 python-archive-0.2.tar.gz"
diff --git a/testing/py3-python-iptables/APKBUILD b/testing/py3-python-iptables/APKBUILD
new file mode 100644
index 00000000000..500ababc2fa
--- /dev/null
+++ b/testing/py3-python-iptables/APKBUILD
@@ -0,0 +1,40 @@
+# Automatically generated by apkbuild-pypi, template 4
+# Contributor: Niklas Meyer <derlinkman@gmail.com>
+# Maintainer: Niklas Meyer <derlinkman@gmail.com>
+pkgname=py3-python-iptables
+#_pkgreal is used by apkbuild-pypi to find modules at PyPI
+_pkgreal=python-iptables
+pkgver=1.0.1
+pkgrel=1
+pkgdesc="Python bindings for iptables"
+url="https://pypi.org/project/python-iptables/"
+arch="all"
+license="Apache-2.0"
+depends="iptables"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/p/python-iptables/python-iptables-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+options="!check" #needs iptables for check
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+85e251b58b71d8428d061861d924454fcda1fbacc429a0347223ce7eee6f7543894ab6231ea64346bb87dd1248580d5cdf851f12e1e5ed98e68f93a895a4c055 python-iptables-1.0.1.tar.gz
+"
diff --git a/testing/py3-python-jose/APKBUILD b/testing/py3-python-jose/APKBUILD
new file mode 100644
index 00000000000..e59a5161c87
--- /dev/null
+++ b/testing/py3-python-jose/APKBUILD
@@ -0,0 +1,37 @@
+# Contributor: Oleg Titov <oleg.titov@gmail.com>
+# Maintainer: Oleg Titov <oleg.titov@gmail.com>
+pkgname=py3-python-jose
+pkgver=3.3.0
+pkgrel=2
+pkgdesc="A JOSE implementation in Python"
+url="https://github.com/mpdavis/python-jose/"
+arch="noarch"
+license="MIT"
+depends="python3"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+checkdepends="py3-cryptography py3-pycryptodome py3-pytest-runner"
+subpackages="$pkgname-doc $pkgname-pyc"
+source="python-jose-$pkgver.tar.gz::https://github.com/mpdavis/python-jose/archive/refs/tags/$pkgver.tar.gz"
+builddir="$srcdir/python-jose-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python -m installer -d "$pkgdir" .dist/*.whl
+
+ install -vDm644 README.rst -t "$pkgdir/usr/share/doc/$pkgname/"
+}
+
+sha512sums="
+de7147cc6e12406d6e459c32829acae46395acba727c53e65bc05f4794ee3050eecd355e3ae2e87f4ebdbd871f53822eea08a10f25d7ca6088fc6128dc7d9637 python-jose-3.3.0.tar.gz
+"
diff --git a/testing/py3-python-jwt/APKBUILD b/testing/py3-python-jwt/APKBUILD
deleted file mode 100644
index 324118d2796..00000000000
--- a/testing/py3-python-jwt/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Contributor: Rejah Rehim <rejah@beaglesecurity.com>
-# Maintainer: Rejah Rehim <rejah@beaglesecurity.com>
-pkgname=py3-python-jwt
-_pkgname=python_jwt
-pkgver=3.3.0
-pkgrel=1
-pkgdesc="Module for generating and verifying JSON Web Tokens"
-options="!check" # no test suite
-url="https://github.com/davedoesdev/python-jwt"
-arch="noarch"
-license="MIT"
-depends="python3 py3-jwcrypto"
-makedepends="py3-setuptools"
-subpackages="$pkgname-doc"
-source="https://files.pythonhosted.org/packages/source/p/$_pkgname/$_pkgname-$pkgver.tar.gz"
-builddir="$srcdir"/$_pkgname-$pkgver
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
- install -Dm644 LICENCE "$pkgdir"/usr/share/licenses/$pkgname/LICENCE
- install -Dm644 README.md "$pkgdir"/usr/share/licenses/$pkgname/README.md
-}
-
-
-sha512sums="
-dfc5963eb3d374d44711ac42bb983c4cc44ad2e2231792991207d2ef15192bb8b686f0b76e3a324e19e1669f4c4bc06f27871e5072a22046169c54f6916e6fc1 python_jwt-3.3.0.tar.gz
-"
diff --git a/testing/py3-python-logstash/APKBUILD b/testing/py3-python-logstash/APKBUILD
index 35cd5344bbb..33aa634462b 100644
--- a/testing/py3-python-logstash/APKBUILD
+++ b/testing/py3-python-logstash/APKBUILD
@@ -2,8 +2,8 @@
# Maintainer: Rejah Rehim <rejah@beaglesecurity.com>
pkgname=py3-python-logstash
_pkgname=python-logstash
-pkgver=0.4.6
-pkgrel=1
+pkgver=0.4.8
+pkgrel=3
pkgdesc="Python logging handler for Logstash"
options="!check" # no test suite
url="https://github.com/vklochan/python-logstash"
@@ -11,7 +11,7 @@ arch="noarch"
license="MIT"
depends="python3"
makedepends="py3-setuptools"
-subpackages="$pkgname-doc"
+subpackages="$pkgname-doc $pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/p/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
@@ -20,10 +20,10 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
}
sha512sums="
-b8cff0e6f8efb97f6450c98f36f7339b63daafb34c415eebc18d8d4ac17aeb2e2e0ba934a841317e9cc9f424e664d3b57d73ac74e30d98c3dd273db2c886f2b7 python-logstash-0.4.6.tar.gz
+0ddc7e142f54aa27b0678fa903357ac877b755fb0ce3d8596472e843ca67c11d727289cebb5a0b4b4b613a768e8afde0ab4c0366305b7d9d5743fde8f1060e7a python-logstash-0.4.8.tar.gz
"
diff --git a/testing/py3-python-mystrom/APKBUILD b/testing/py3-python-mystrom/APKBUILD
deleted file mode 100644
index 365570e4523..00000000000
--- a/testing/py3-python-mystrom/APKBUILD
+++ /dev/null
@@ -1,27 +0,0 @@
-# Contributor: Fabian Affolter <fabian@affolter-engineering.ch>
-# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
-pkgname=py3-python-mystrom
-_pkgname=python-mystrom
-pkgver=0.5.0
-pkgrel=3
-pkgdesc="Python API for controlling myStrom switches/plugs"
-url="https://github.com/fabaff/python-mystrom"
-arch="noarch"
-license="MIT"
-depends="py3-click py3-requests"
-makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
-builddir="$srcdir"/$_pkgname-$pkgver
-
-replaces=py-mystrom # Backwards compatibility
-provides=py-mystrom=$pkgver-r$pkgrel # Backwards compatibility
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="db330bbc0e304224b586caa9d2ea646cb25beff165268d68b52e6d470cd5fa2db71bfe7d21628f74679cd8480c7f0269c42ea3a3fc76636bec3ff184bf9a80d9 python-mystrom-0.5.0.tar.gz"
diff --git a/testing/py3-python-stdnum/APKBUILD b/testing/py3-python-stdnum/APKBUILD
index c1c275d78be..9af59f27d9f 100644
--- a/testing/py3-python-stdnum/APKBUILD
+++ b/testing/py3-python-stdnum/APKBUILD
@@ -2,8 +2,8 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-python-stdnum
_pkgname=python-stdnum
-pkgver=1.17
-pkgrel=0
+pkgver=1.19
+pkgrel=1
pkgdesc="Python module to handle standardized numbers and codes"
url="https://arthurdejong.org/python-stdnum"
arch="noarch"
@@ -11,9 +11,8 @@ license="LGPL-2.0-or-later"
depends="python3"
makedepends="py3-setuptools"
checkdepends="py3-coverage py3-nose"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz
- lower-coverage.patch
- "
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
replaces="py-stdnum" # Backwards compatibility
@@ -28,10 +27,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
-9ddec525ea153e3066f205ee70602a59821e793f9ffde66a4b01511daf9a559a3a42082a99bddf69c1159a27b2d9e64d91f8a65ee283a2d7da473d766ce0e711 python-stdnum-1.17.tar.gz
-adbdbc93de54af2145e37d790e550e42532dd4b06302ab09047892ffd133cd21c0a3f77522f9ab400db1b5330b676479a01977cedd0e23fe00eb59a325e8dc8e lower-coverage.patch
+02c56aea710a9a02e14160840fbd45751cd00f1a49b1d046124945ba92e2dd3377006f44a146030522d09b92f809ceb4d1e3589ef3d9c9302f7674a79602ef07 python-stdnum-1.19.tar.gz
"
diff --git a/testing/py3-python-stdnum/lower-coverage.patch b/testing/py3-python-stdnum/lower-coverage.patch
deleted file mode 100644
index 41838653adb..00000000000
--- a/testing/py3-python-stdnum/lower-coverage.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-coverage is not relevant for us
---- a/setup.cfg
-+++ b/setup.cfg
-@@ -19,7 +19,7 @@
- cover-erase = true
- cover-html = true
- cover-html-dir = coverage
--cover-min-percentage = 100
-+cover-min-percentage = 95
-
- [coverage:report]
- fail_under = 100
diff --git a/testing/py3-pytube/APKBUILD b/testing/py3-pytube/APKBUILD
new file mode 100644
index 00000000000..6d27b69d04e
--- /dev/null
+++ b/testing/py3-pytube/APKBUILD
@@ -0,0 +1,42 @@
+# Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
+# Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>
+pkgname=py3-pytube
+#_pkgreal is used by apkbuild-pypi to find modules at PyPI
+_pkgreal=pytube
+pkgver=15.0.0
+pkgrel=1
+pkgdesc="Python 3 library for downloading YouTube Videos."
+url="https://pypi.python.org/project/pytube"
+arch="noarch"
+license="Unlicense"
+checkdepends="py3-pytest"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+source="$pkgname-$pkgver.tar.gz::https://github.com/pytube/pytube/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+subpackages="$pkgname-pyc"
+# 7/131 units failing due to:
+# AttributeError: 'NoneType' object has no attribute 'register_on_progress_callback'
+# AttributeError: 'YouTube' object has no attribute 'stream_monostate'
+# StopIteration
+options="!check"
+
+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
+ .testenv/bin/python3 -m pytest -v
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+fc28d87c56bae9da3def68224a03687cc521c26e6f38dd41abe81e84f91bb2cab73dc8c7dbbc388787cf066f7d7304c78162cc60c544b99e75187b760c64b4a3 py3-pytube-15.0.0.tar.gz
+"
diff --git a/testing/py3-pytweening/APKBUILD b/testing/py3-pytweening/APKBUILD
new file mode 100644
index 00000000000..f35fdddfcda
--- /dev/null
+++ b/testing/py3-pytweening/APKBUILD
@@ -0,0 +1,37 @@
+# Maintainer: Will Sinatra <wpsinatra@gmail.com>
+pkgname=py3-pytweening
+pkgver=1.2.0
+pkgrel=2
+pkgdesc="Set of tweening / easing functions implemented in Python"
+url="https://github.com/asweigart/pytweening"
+arch="noarch"
+license="GPL-3.0-or-later"
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/p/pytweening/pytweening-$pkgver.tar.gz"
+builddir="$srcdir/pytweening-$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 tests/basicTests.py
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+2a06ab1ba3dfd8cb2446b53470613c05eb3133d071da84984c4512c7f9905be2b353918a2ca6ea58eb44cd1af50a55df2c4a6792be39d79f305ef6cbf43f742d pytweening-1.2.0.tar.gz
+"
diff --git a/testing/py3-pyvcd/APKBUILD b/testing/py3-pyvcd/APKBUILD
new file mode 100644
index 00000000000..b558eb26a6d
--- /dev/null
+++ b/testing/py3-pyvcd/APKBUILD
@@ -0,0 +1,36 @@
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=py3-pyvcd
+pkgver=0.4.0
+pkgrel=1
+pkgdesc="Python package for writing Value Change Dump (VCD) files"
+url="https://github.com/westerndigitalcorporation/pyvcd"
+arch="noarch"
+license="MIT"
+depends="python3"
+makedepends="py3-setuptools py3-gpep517 py3-installer py3-setuptools_scm py3-wheel"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="https://github.com/westerndigitalcorporation/pyvcd/archive/refs/tags/$pkgver/py3-pyvcd-$pkgver.tar.gz"
+builddir="$srcdir/pyvcd-$pkgver"
+
+build() {
+ export SETUPTOOLS_SCM_PRETEND_VERSION=$pkgver
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages test-env
+ test-env/bin/python3 -m installer .dist/*.whl
+ test-env/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+245eeb440ca31ef2eda202d46dee002703bfec06e14ba3ff5d03a5cd19991133915221c94fbcffb672f6ac105296b03834f1fe9c2cf449550d6054de6b964e5e py3-pyvcd-0.4.0.tar.gz
+"
diff --git a/testing/py3-pyvmomi/APKBUILD b/testing/py3-pyvmomi/APKBUILD
deleted file mode 100644
index f6bc7e06d2a..00000000000
--- a/testing/py3-pyvmomi/APKBUILD
+++ /dev/null
@@ -1,30 +0,0 @@
-# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
-# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
-pkgname=py3-pyvmomi
-pkgver=7.0.3
-pkgrel=0
-pkgdesc="VMware vSphere Python SDK"
-url="https://github.com/vmware/pyvmomi"
-arch="noarch"
-license="Apache-2.0"
-depends="python3 py3-requests"
-makedepends="py3-setuptools"
-checkdepends="py3-pytest py3-vcrpy"
-source="https://github.com/vmware/pyvmomi/archive/v$pkgver/py3-pyvmomi-$pkgver.tar.gz"
-builddir="$srcdir/pyvmomi-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- pytest
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-f3277cd1289bf66e549e342aa4e2f252e3926692af0cb613136bd683c9b75db8204571a7522f255afbe9c202399eadcb875ae0070f670579cb4622c203d9e00d py3-pyvmomi-7.0.3.tar.gz
-"
diff --git a/testing/py3-pyvows/APKBUILD b/testing/py3-pyvows/APKBUILD
index 41fdc487203..da67c9aa481 100644
--- a/testing/py3-pyvows/APKBUILD
+++ b/testing/py3-pyvows/APKBUILD
@@ -3,7 +3,7 @@
pkgname=py3-pyvows
_pkgname=pyVows
pkgver=3.0.0
-pkgrel=1
+pkgrel=4
pkgdesc="BDD test engine based on Vows.js"
url="https://github.com/heynemann/pyvows"
arch="noarch"
@@ -11,7 +11,7 @@ license="MIT"
depends="python3 py3-gevent py3-preggy"
makedepends="py3-setuptools"
checkdepends="py3-pytest py3-colorama py3-coverage"
-subpackages="$pkgname-doc"
+subpackages="$pkgname-doc $pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/p/$_pkgname/$_pkgname-$pkgver.tar.gz
drop-requirements.patch"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -24,7 +24,7 @@ check() {
python3 setup.py test
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
install -Dm644 README.md "$pkgdir"/usr/share/licenses/$pkgname/README.md
}
diff --git a/testing/py3-pyyaml-env-tag/APKBUILD b/testing/py3-pyyaml-env-tag/APKBUILD
deleted file mode 100644
index 8cb3cb904f2..00000000000
--- a/testing/py3-pyyaml-env-tag/APKBUILD
+++ /dev/null
@@ -1,30 +0,0 @@
-# Contributor: David Demelier <markand@malikania.fr>
-# Maintainer: David Demelier <markand@malikania.fr>
-pkgname=py3-pyyaml-env-tag
-pkgver=0.1
-pkgrel=1
-pkgdesc="a custom YAML tag for referencing environment variables in YAML files"
-url="https://github.com/waylan/pyyaml-env-tag"
-arch="noarch"
-license="MIT"
-depends="python3 py3-yaml"
-makedepends="py3-setuptools"
-checkdepends="py3-pytest"
-source="https://files.pythonhosted.org/packages/source/p/pyyaml_env_tag/pyyaml_env_tag-$pkgver.tar.gz"
-builddir="$srcdir/pyyaml_env_tag-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- pytest
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-7d3dbc08fb338b3de5bbe657fa8a98a330d7ac7962ac2ea6513ade362b36deaaad8d9e82eb018454d73fd26d90003861a3ffee9abc2e9ac51dea4ba315b5c1f9 pyyaml_env_tag-0.1.tar.gz
-"
diff --git a/testing/py3-pyzor/APKBUILD b/testing/py3-pyzor/APKBUILD
index de009f55120..557621ece14 100644
--- a/testing/py3-pyzor/APKBUILD
+++ b/testing/py3-pyzor/APKBUILD
@@ -3,13 +3,14 @@
pkgname=py3-pyzor
_pkgname=pyzor
pkgver=1.0.0
-pkgrel=6
+pkgrel=10
pkgdesc="Python implementation of a spam-blocking networked system that use spam signatures to identify them."
-url="https://pypi.python.org/pypi/pyzor/"
+url="https://pypi.org/project/pyzor/"
arch="noarch"
license="GPL-2.0-only"
depends="python3"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/p/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -21,6 +22,6 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="5ce22d23dac02f3b14b7e87f1049cdcd06b8b02a0214898bf9946d966e3d5e1e5788d82cdf7883641d0291dcf949483a926989482cdd344460d9f6a8e7182cc5 pyzor-1.0.0.tar.gz"
diff --git a/testing/py3-qasync/APKBUILD b/testing/py3-qasync/APKBUILD
new file mode 100644
index 00000000000..decf5a071e9
--- /dev/null
+++ b/testing/py3-qasync/APKBUILD
@@ -0,0 +1,28 @@
+# Contributor: guddaff <alpine@guddaff.de>
+# Maintainer: guddaff <alpine@guddaff.de>
+pkgname=py3-qasync
+_pkgname=qasync
+pkgver=0.19.0
+pkgrel=1
+pkgdesc="asyncio in Qt-based applications"
+url="https://github.com/CabbageDevelopment/qasync"
+arch="noarch"
+license="BSD-2-Clause"
+depends="python3"
+makedepends="py3-setuptools py3-qt5"
+checkdepends="py3-pytest"
+options=!check #test segfaults
+source="$pkgname-$pkgver.tar.gz::https://github.com/CabbageDevelopment/$_pkgname/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ python3 setup.py build
+}
+
+package() {
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+sha512sums="
+a46f5b335b12592c134c7e2e1bf42a4599aa130f8f98071e51af299c8687d588480e3c76bc12bcc918e488fbe0c86b2b45c785eed4ba0cb68a8c3f8962d7141e py3-qasync-0.19.0.tar.gz
+"
diff --git a/testing/py3-qbittorrent-api/APKBUILD b/testing/py3-qbittorrent-api/APKBUILD
new file mode 100644
index 00000000000..1acc1157e67
--- /dev/null
+++ b/testing/py3-qbittorrent-api/APKBUILD
@@ -0,0 +1,46 @@
+# Contributor: Fabricio Silva <hi@fabricio.dev>
+# Maintainer: Fabricio Silva <hi@fabricio.dev>
+pkgname=py3-qbittorrent-api
+pkgver=2024.3.60
+pkgrel=0
+pkgdesc="Python client implementation for qBittorrent's Web API"
+url="https://github.com/rmartin16/qbittorrent-api"
+arch="noarch"
+license="MIT"
+depends="
+ py3-requests
+ py3-setuptools
+ "
+makedepends="
+ py3-gpep517
+ py3-wheel
+ py3-setuptools_scm
+ py3-sphinx-copybutton
+ py3-sphinx-autodoc-typehints
+ "
+subpackages="$pkgname-doc $pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/rmartin16/qbittorrent-api/archive/v$pkgver.tar.gz"
+builddir="$srcdir/qbittorrent-api-$pkgver"
+# tests requires an instance of qbittorrent running
+# net for sphinx
+options="net !check"
+
+build() {
+ export SETUPTOOLS_SCM_PRETEND_VERSION=$pkgver
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+ sphinx-build -W -b man docs/source docs/build
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+ install -Dm644 docs/build/qbittorrent-api.1 -t "$pkgdir"/usr/share/man/man1
+
+ rm -rf "$pkgdir"/usr/lib/python3*/site-packages/tests
+}
+
+sha512sums="
+716b2f8eadd0556a57bfcaec6f03227c67e7412f78cbb350f7a608897bf23075a5d85986993235305be8d056926401e8438fdc4dd2e0a65183a4bd1f79fbf148 py3-qbittorrent-api-2024.3.60.tar.gz
+"
diff --git a/testing/py3-qdldl/APKBUILD b/testing/py3-qdldl/APKBUILD
index 127a745e733..f27859b126f 100644
--- a/testing/py3-qdldl/APKBUILD
+++ b/testing/py3-qdldl/APKBUILD
@@ -2,13 +2,13 @@
# Maintainer: Anjandev Momi <anjan@momi.ca>
pkgname=py3-qdldl
pkgver=0.1.5
-pkgrel=0
+pkgrel=3
pkgdesc="Python interface to the QDLDL free LDL factorization routine for quasi-definite linear systems: Ax = b"
url="https://github.com/osqp/qdldl-python"
arch="all !armhf !armv7 !x86" # error: cannot convert 'QDLDL_int*' {aka 'int*'} to 'const long long int*'
license="Apache-2.0"
depends="python3 py3-numpy py3-scipy"
-makedepends="py3-setuptools py3-pybind11-dev cmake"
+makedepends="py3-setuptools py3-pybind11-dev python3-dev cmake"
source="qdldl-python-$pkgver.tar.gz::https://github.com/osqp/qdldl-python/archive/refs/tags/v$pkgver.post0.tar.gz
qdldl-$pkgver.tar.gz::https://github.com/osqp/qdldl/archive/refs/tags/v$pkgver.tar.gz"
builddir="$srcdir/qdldl-python-$pkgver.post0"
@@ -25,7 +25,7 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
diff --git a/testing/py3-qpageview/APKBUILD b/testing/py3-qpageview/APKBUILD
new file mode 100644
index 00000000000..64b1028b8d9
--- /dev/null
+++ b/testing/py3-qpageview/APKBUILD
@@ -0,0 +1,35 @@
+# Maintainer: Krystian Chachuła <krystian@krystianch.com>
+pkgname=py3-qpageview
+_pkgname=qpageview
+pkgver=0.6.2
+pkgrel=1
+pkgdesc="Page-based viewer widget for PyQt5"
+url="https://qpageview.org"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="py3-qt5"
+makedepends="py3-gpep517 py3-setuptools py3-wheel py3-sphinx"
+subpackages="$pkgname-pyc $pkgname-doc"
+source="$_pkgname-$pkgver.tar.gz::https://github.com/frescobaldi/qpageview/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+options="!check" # no tests
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir dist \
+ --output-fd 3 3>&1 >&2
+
+ sphinx-build -b man docs/source/ docs/build/man/
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ dist/*.whl
+
+ install -m 644 -D docs/build/man/qpageview.1 \
+ "$pkgdir"/usr/share/man/man1/qpageview.1
+}
+
+sha512sums="
+80b1d6d4419594bcac195450ab030ab0b4fe3fe92dc9a6db598d1dd2282670f0d0b9d957b3c37313d7002f8f7dbc1bdd101edca81e5edca19c6e33ec4f6e4ffe qpageview-0.6.2.tar.gz
+"
diff --git a/testing/py3-qt.py/APKBUILD b/testing/py3-qt.py/APKBUILD
index f03f54d25f1..e122cfe5a1a 100644
--- a/testing/py3-qt.py/APKBUILD
+++ b/testing/py3-qt.py/APKBUILD
@@ -1,15 +1,18 @@
# Contributor: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
pkgname=py3-qt.py
-pkgver=1.3.2
-pkgrel=2
+pkgver=1.3.10
+pkgrel=0
pkgdesc="Minimal Python 2 & 3 shim around all Qt bindings"
url="https://github.com/mottosso/Qt.py"
arch="noarch !armhf" # no py3-qt5 on armhf
license="MIT"
depends="python3 py3-qt5 py3-setuptools"
-checkdepends="py3-nose"
-source="$pkgname-$pkgver.tar.gz::https://github.com/mottosso/Qt.py/archive/$pkgver.tar.gz"
+checkdepends="py3-nose py3-six"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/mottosso/Qt.py/archive/$pkgver.tar.gz
+ importlib.patch
+ "
builddir="$srcdir/Qt.py-$pkgver"
build() {
@@ -21,8 +24,10 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
- rm "$pkgdir"/usr/LICENSE
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="fd1394ebff8d73406765a8369c4ec20618b6a9fbad7f4ac80d4ef87c03d5577e192fd543794d73daf57875b8cb6ded9057534eb7366430741b780e6503465223 py3-qt.py-1.3.2.tar.gz"
+sha512sums="
+a8cf1de389881b453dafa53d6bfd9e9bbe263effef03c9eefbc87b33798463d5117996006545687f91329b976a2e94b0b27a1bf8969728685c1a432c7c31a7b6 py3-qt.py-1.3.10.tar.gz
+0ac7faa921bde9ff487c0f7c1443c2f1390cbd888055cfe174f5a8ab3b1429f695b264b371b8d5f6d0ac07136a5e064bcc534edbd8cbf8bfe65f70dd141a02c4 importlib.patch
+"
diff --git a/testing/py3-qt.py/importlib.patch b/testing/py3-qt.py/importlib.patch
new file mode 100644
index 00000000000..48a6eaf5fa1
--- /dev/null
+++ b/testing/py3-qt.py/importlib.patch
@@ -0,0 +1,20 @@
+diff --git a/tests.py b/tests.py
+index 833fcc6..3c1c937 100644
+--- a/tests.py
++++ b/tests.py
+@@ -5,3 +5,3 @@ import os
+ import sys
+-import imp
++import importlib
+ import shutil
+@@ -310,6 +310,6 @@ def test_environment():
+ # PySide is not available for Python > 3.4
+- imp.find_module("PySide")
+- imp.find_module("PySide2")
+- imp.find_module("PyQt4")
+- imp.find_module("PyQt5")
++ importlib.util.find_spec("PySide")
++ importlib.util.find_spec("PySide2")
++ importlib.util.find_spec("PyQt4")
++ importlib.util.find_spec("PyQt5")
+
diff --git a/testing/py3-qtgraph/APKBUILD b/testing/py3-qtgraph/APKBUILD
deleted file mode 100644
index 6bf1b1ff684..00000000000
--- a/testing/py3-qtgraph/APKBUILD
+++ /dev/null
@@ -1,28 +0,0 @@
-# Contributor: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
-# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
-pkgname=py3-qtgraph
-pkgver=0.11.0
-pkgrel=2
-pkgdesc="Scientific Graphics and GUI Library for Python"
-url="http://www.pyqtgraph.org/"
- # armhf blocked by py3-qt5
-arch="noarch !armhf"
-license="MIT"
-depends="python3 py3-qt5 py3-numpy py3-scipy py3-opengl"
-checkdepends="py3-pytest xvfb-run"
-source="$pkgname-$pkgver.tar.gz::https://github.com/pyqtgraph/pyqtgraph/archive/pyqtgraph-$pkgver.tar.gz"
-builddir="$srcdir/pyqtgraph-pyqtgraph-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- xvfb-run python3 test.py
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="1ef7c3c28359a25861424cf7670dcfe471ba62786ebb0288af72a3f626af49ca51a87ac85fccacb7cadce49b6318efb895a7682fb93aa84ff9e2171134d8071b py3-qtgraph-0.11.0.tar.gz"
diff --git a/testing/py3-quebra-frases/APKBUILD b/testing/py3-quebra-frases/APKBUILD
new file mode 100644
index 00000000000..9a284ee96e1
--- /dev/null
+++ b/testing/py3-quebra-frases/APKBUILD
@@ -0,0 +1,39 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-quebra-frases
+pkgver=0.3.7
+pkgrel=1
+pkgdesc="Chunks strings into byte sized pieces"
+url="https://github.com/OpenJarbas/quebra_frases"
+arch="noarch"
+license="Apache-2.0"
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="https://pypi.python.org/packages/source/q/quebra_frases/quebra_frases-$pkgver.tar.gz"
+builddir="$srcdir/quebra_frases-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+608be3ef5090fb4001913a39f593a98f8da49c0d7c238d62680d0cd03bca0985af08b2bdc78ebc279f4ad5c8de40129dc5e18c75d78d263f21d8cd99c80fa400 quebra_frases-0.3.7.tar.gz
+"
diff --git a/testing/py3-queuelib/APKBUILD b/testing/py3-queuelib/APKBUILD
index 197bdf86b22..7c15f3ed876 100644
--- a/testing/py3-queuelib/APKBUILD
+++ b/testing/py3-queuelib/APKBUILD
@@ -3,29 +3,35 @@
pkgname=py3-queuelib
_pkgname=queuelib
pkgver=1.6.2
-pkgrel=0
+pkgrel=4
pkgdesc="A collection of persistent (disk-based) queues"
url="https://github.com/scrapy/queuelib"
arch="noarch"
license="BSD-3-Clause"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-queuelib" # Backwards compatibility
+replaces="py-queuelib" # Backwards compatibility
provides="py-queuelib=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- python3 setup.py test
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ gpep517 install-wheel --destdir .testenv --prefix '' .dist/*.whl
+ .testenv/bin/python3 -m pytest
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
diff --git a/testing/py3-rabbit/APKBUILD b/testing/py3-rabbit/APKBUILD
index fa62cefd804..01e2130e1a8 100644
--- a/testing/py3-rabbit/APKBUILD
+++ b/testing/py3-rabbit/APKBUILD
@@ -3,7 +3,7 @@
pkgname=py3-rabbit
_pkgname=pyrabbit
pkgver=1.1.0
-pkgrel=4
+pkgrel=7
pkgdesc="Pythonic interface to the RabbitMQ Management HTTP API"
options="!check" # No testsuite in PYPI tarball
url="https://github.com/bkjones/pyrabbit"
@@ -11,6 +11,7 @@ arch="noarch"
license="MIT"
depends="python3 py3-httplib2"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -22,7 +23,7 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="aa18c3ad232840da9b4978e275c05a82ea75212f3c4ee2df68075ac93295d9448a2376656953e7d1d9c9bc6a7e759eef020a8aaef98491a12959a416c31187ad pyrabbit-1.1.0.tar.gz"
diff --git a/testing/py3-radon/APKBUILD b/testing/py3-radon/APKBUILD
index 3299474b223..0b80ecd8d69 100644
--- a/testing/py3-radon/APKBUILD
+++ b/testing/py3-radon/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Rejah Rehim <rejah@beaglesecurity.com>
pkgname=py3-radon
_pkgname=radon
-pkgver=5.1.0
+pkgver=6.0.1
pkgrel=1
pkgdesc="Code Metrics in Python"
options="!check" # no test suite
@@ -11,7 +11,7 @@ arch="noarch"
license="MIT"
depends="python3 py3-colorama py3-future py3-mando"
makedepends="py3-setuptools"
-subpackages="$pkgname-doc"
+subpackages="$pkgname-doc $pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/r/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -20,12 +20,12 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
rm -rf "$pkgdir"/usr/lib/python3*/site-packages/radon/tests
install -Dm644 README.rst -t "$pkgdir"/usr/share/doc/"$pkgname"
install -Dm644 LICENSE -t "$pkgdir"/usr/share/licenses/"$pkgname"
}
sha512sums="
-98e1c3dbf419ff0a791f01ea5376177c5be47c9cf1afdd9ae53014e8869dd10c7a7661a69bace48adb880173a8a176d4a13534711fcf53408b3f495f4579f7c5 radon-5.1.0.tar.gz
+91bd091610568dacb95491ba314b68dfb33ee397b043ae96badc7c134a841122d90394a36b1d665c9cabf273c0e6128217ebfc459c36020c12dcab647dd5df53 radon-6.0.1.tar.gz
"
diff --git a/testing/py3-raet/APKBUILD b/testing/py3-raet/APKBUILD
deleted file mode 100644
index 96f180445ba..00000000000
--- a/testing/py3-raet/APKBUILD
+++ /dev/null
@@ -1,28 +0,0 @@
-# Contributor: Fabian Affolter <fabian@affolter-engineering.ch>
-# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
-pkgname=py3-raet
-_pkgname=raet
-pkgver=0.6.8
-pkgrel=3
-pkgdesc="Reliable Asynchronous Event Transport Protocol"
-url="https://github.com/RaetProtocol/raet"
-arch="noarch !armhf !armv7 !x86" # Limited by py3-libnacl
-license="Apache-2.0"
-replaces="py-raet" # for backwards compatibility
-provides="py-raet=$pkgver-r$pkgrel" # for backwards compatibility
-depends="py3-ioflo py3-libnacl py3-six python3"
-makedepends="py3-setuptools py3-setuptools-git"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
-builddir="$srcdir"/$_pkgname-$pkgver
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-01279e7414ec3edc9f2bc0641cb9e0606ebf5700b5ce37a05fd5919f3274b3b43aad64110baf4c4b1fda3843cb1a87b6be4ab592a8f62e82b3a716a86ae61b20 raet-0.6.8.tar.gz
-"
diff --git a/testing/py3-rapidjson/APKBUILD b/testing/py3-rapidjson/APKBUILD
new file mode 100644
index 00000000000..1418ad71e07
--- /dev/null
+++ b/testing/py3-rapidjson/APKBUILD
@@ -0,0 +1,56 @@
+# Contributor: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
+# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
+pkgname=py3-rapidjson
+pkgver=1.12
+pkgrel=1
+pkgdesc="Python3 wrapper around RapidJSON"
+url="https://github.com/python-rapidjson/python-rapidjson"
+arch="all"
+license="MIT"
+depends="
+ python3
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ python3-dev
+ rapidjson-dev
+ "
+checkdepends="
+ py3-pytest
+ py3-tz
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/python-rapidjson/python-rapidjson/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/"python-rapidjson-$pkgver
+
+prepare() {
+ default_prepare
+
+ # workaround setup.py complaining about "sources not found"
+ mkdir -v rapidjson/include
+}
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ PYTHONPATH="$(echo "$PWD"/build/lib.linux*)" pytest \
+ --ignore benchmarks \
+ --deselect tests/test_base_types.py::test_base_values \
+ --deselect tests/test_unicode.py::test_unicode_decode_error \
+ --deselect tests/test_validator.py::test_additional_and_pattern_properties_valid \
+ #
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+15d021491c64db53352830d8f3f62c8b48476fcb001f97c174bcbb9053d973eb135ceb92f14290a58f6ad6c5dfb24d02f6385c8cad70f4a74f5a5726aa0728e7 py3-rapidjson-1.12.tar.gz
+"
diff --git a/testing/py3-re-assert/APKBUILD b/testing/py3-re-assert/APKBUILD
deleted file mode 100644
index d282e93f7ea..00000000000
--- a/testing/py3-re-assert/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Contributor: Galen Abell <galen@galenabell.com>
-# Maintainer: Galen Abell <galen@galenabell.com>
-pkgname=py3-re-assert
-_pyname=re-assert
-pkgver=1.1.0
-pkgrel=1
-pkgdesc="Easy assertions of regexes"
-url="https://github.com/asottile/re-assert"
-arch="noarch"
-license="MIT"
-depends="python3 py3-regex"
-makedepends="py3-setuptools"
-checkdepends="py3-pytest"
-source="$_pyname-$pkgver.tar.gz::https://github.com/asottile/re-assert/archive/refs/tags/v$pkgver.tar.gz"
-builddir="$srcdir/$_pyname-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- pytest
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-fc14267cc68a12ff7350982f0bf54c77107809c9f0379ab3aa73fa1b7cf5ccabb130fcd35ab75bdf183e69c802a041deac707e1f0bab1c3815d4146b4e320c07 re-assert-1.1.0.tar.gz
-"
diff --git a/testing/py3-rebulk/APKBUILD b/testing/py3-rebulk/APKBUILD
deleted file mode 100644
index 91bf99e3065..00000000000
--- a/testing/py3-rebulk/APKBUILD
+++ /dev/null
@@ -1,30 +0,0 @@
-# Contributor: Philipp Glaum <p@pglaum.de>
-# Maintainer: Philipp Glaum <p@pglaum.de>
-pkgname=py3-rebulk
-_pkgname=rebulk
-pkgver=3.0.1
-pkgrel=3
-pkgdesc="Define simple search patterns in bulk to perform advanced matching on any string"
-url="https://pypi.org/project/rebulk/"
-arch="noarch"
-license="MIT"
-depends="python3 py3-six py3-regex"
-makedepends="py3-setuptools py3-pytest-runner"
-checkdepends="py3-pytest"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgname-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- py.test
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
- rm -rf "$pkgdir"/usr/lib/python3*/site-packages/rebulk/test
-}
-
-sha512sums="a1e3ed157b262a2bbe214a01a0959372989eb354dae8ac185b2142564f7ec41e20e2e6e380f85aef14679b42d2d6a54a37076c0ebe47da2444ac2f71bcded9db rebulk-3.0.1.tar.gz"
diff --git a/testing/py3-recommonmark/APKBUILD b/testing/py3-recommonmark/APKBUILD
index 5692a03648b..a5749ad10ba 100644
--- a/testing/py3-recommonmark/APKBUILD
+++ b/testing/py3-recommonmark/APKBUILD
@@ -2,8 +2,8 @@
# Maintainer: Robert Sacks <robert@sacks.email>
pkgname=py3-recommonmark
_pyname=recommonmark
-pkgver=0.6.0
-pkgrel=2
+pkgver=0.7.1
+pkgrel=3
pkgdesc="A docutils-compatibility bridge to CommonMark"
url="https://github.com/readthedocs/recommonmark"
arch="noarch"
@@ -11,6 +11,7 @@ license="MIT"
depends="python3 py3-commonmark>=0.8.1 py3-docutils py3-sphinx"
makedepends="py3-setuptools"
checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
source="$_pyname-$pkgver.tar.gz::https://github.com/readthedocs/$_pyname/archive/$pkgver.tar.gz"
builddir="$srcdir/$_pyname-$pkgver"
@@ -24,7 +25,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="44005b3fd0052cd8d4fce8a64f9d66a1ac75dc3041a28c115e922254956b2143296cbfbc0a2396b9f95691145645c4242e3be68e695b2c62ae37964014511679 recommonmark-0.6.0.tar.gz"
+sha512sums="
+3e03440d606ea6247df9bd122a6fa2dccf01c0c315eeace046d5cd336657e26bbd1c6b7ad4ba46f344215905128b72508c036cc57bbe4b5e27df50c55371fe01 recommonmark-0.7.1.tar.gz
+"
diff --git a/testing/py3-recurring-ical-events/APKBUILD b/testing/py3-recurring-ical-events/APKBUILD
new file mode 100644
index 00000000000..f7b0a55e372
--- /dev/null
+++ b/testing/py3-recurring-ical-events/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: Galen Abell <galen@galenabell.com>
+# Maintainer: Galen Abell <galen@galenabell.com>
+pkgname=py3-recurring-ical-events
+pkgver=2.2.1
+pkgrel=1
+pkgdesc="Python library for recurrence of ical events based on icalendar"
+url="https://github.com/niccokunzmann/python-recurring-ical-events"
+arch="noarch"
+license="LGPL-3.0-or-later"
+depends="python3 py3-icalendar py3-tz py3-tzdata py3-x-wr-timezone"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/niccokunzmann/python-recurring-ical-events/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/python-recurring-ical-events-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ # Disable unnecessary test that adds another dependency.
+ pytest -v \
+ --ignore test/test_readme.py
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+1bd6337b5b8670b2c587d54eae26291c381adba76c38e21a937db8a16480d9b4c6eaddda6660fd0c345f67e38ed4f7cfe9e528ecce3686bce9659f4ef30d278c py3-recurring-ical-events-2.2.1.tar.gz
+"
diff --git a/testing/py3-redmine/APKBUILD b/testing/py3-redmine/APKBUILD
index 9f6c1a950b4..92aa1cabcce 100644
--- a/testing/py3-redmine/APKBUILD
+++ b/testing/py3-redmine/APKBUILD
@@ -2,16 +2,19 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-redmine
_pkgname=python-redmine
-pkgver=2.3.0
-pkgrel=0
+pkgver=2.4.0
+pkgrel=3
pkgdesc="A simple library for communicating with redmine"
url="https://github.com/maxtepkeev/python-redmine"
arch="noarch"
license="Apache-2.0"
depends="python3 py3-requests"
makedepends="py3-setuptools"
-checkdepends="py3-nose"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
+checkdepends="py3-pytest py3-pytest-cov"
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz
+ assertEquals.patch
+ "
builddir="$srcdir"/$_pkgname-$pkgver
replaces="py-redmine" # Backwards compatibility
@@ -22,13 +25,14 @@ build() {
}
check() {
- nosetests
+ pytest
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
-a317743a561cde65c17356a317d3aed082149d648aaa7487858c8533ceb286d08b6610d742321f6593fef8b61b1a4526963ddffc4ab180a83795d66773154b70 python-redmine-2.3.0.tar.gz
+afb03ca8a3bdacace3c12b7295ba08953ab2040971b57988deb9955df24e5ac1782a9b3fbf0f5070eb22c640e88f489cda12cdec38449f9e3bcf7189dc422642 python-redmine-2.4.0.tar.gz
+7da14671b170863796bf5f9f44b1e7e104d53e7f97d3e251f47bf3de13d6a0ec2e9baa37693230d0ffa2bb8f595dfc97099ffdbf8b0635b4f8dc8852b9684d6e assertEquals.patch
"
diff --git a/testing/py3-redmine/assertEquals.patch b/testing/py3-redmine/assertEquals.patch
new file mode 100644
index 00000000000..a1b6c96c79d
--- /dev/null
+++ b/testing/py3-redmine/assertEquals.patch
@@ -0,0 +1,23 @@
+diff --git a/tests/test_managers.py b/tests/test_managers.py
+index 37728b6..e435e1b 100644
+--- a/tests/test_managers.py
++++ b/tests/test_managers.py
+@@ -127,3 +127,3 @@ class ResourceManagerTestCase(BaseRedmineTestCase):
+ issue = self.redmine.issue.create(project_id=1, subject='Foo', uploads=[{'path': stream}])
+- self.assertEquals(len(w), 1)
++ self.assertEqual(len(w), 1)
+ self.assertIs(w[0].category, exceptions.PerformanceWarning)
+@@ -168,3 +168,3 @@ class ResourceManagerTestCase(BaseRedmineTestCase):
+ self.assertEqual(self.redmine.issue.update(1, subject='Bar', uploads=[{'path': stream}]), True)
+- self.assertEquals(len(w), 1)
++ self.assertEqual(len(w), 1)
+ self.assertIs(w[0].category, exceptions.PerformanceWarning)
+diff --git a/tests/test_redmine.py b/tests/test_redmine.py
+index 22d9600..f39098c 100644
+--- a/tests/test_redmine.py
++++ b/tests/test_redmine.py
+@@ -79,3 +79,3 @@ class RedmineTestCase(BaseRedmineTestCase):
+ self.assertEqual(self.redmine.upload(StringIO(b'\xcf\x86oo'.decode('utf-8')))['token'], '456789')
+- self.assertEquals(len(w), 1)
++ self.assertEqual(len(w), 1)
+ self.assertIs(w[0].category, exceptions.PerformanceWarning)
diff --git a/testing/py3-reedsolo/APKBUILD b/testing/py3-reedsolo/APKBUILD
deleted file mode 100644
index 048880be228..00000000000
--- a/testing/py3-reedsolo/APKBUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-# Contributor: Michał Polański <michal@polanski.me>
-# Maintainer: Michał Polański <michal@polanski.me>
-pkgname=py3-reedsolo
-pkgver=1.5.4
-pkgrel=1
-pkgdesc="Pure-Python implementation of a Reed–Solomon codec"
-url="https://pypi.org/project/reedsolo/"
-license="MIT"
-arch="all"
-depends="python3"
-makedepends="python3-dev cython py3-setuptools"
-checkdepends="py3-pytest"
-source="https://github.com/tomerfiliba/reedsolomon/archive/v$pkgver/py3-reedsolo-$pkgver.tar.gz
- python3.10.patch"
-builddir="$srcdir/reedsolomon-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- PYTHONPATH="$(echo $PWD/build/lib*)" pytest
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir" --skip-build
-}
-
-sha512sums="
-c738f817c8f536ee86e5bcd3de73a4cf6a3e606ba196a359b6c09e7372dba31316ddb8b134d7c335100e4c2ff0158ff07caa35fee9bc20768bde23cd803e274a py3-reedsolo-1.5.4.tar.gz
-297e3da4a5ac2073ff589305adf4f70e0027d36c54914e7772e148f90002c5ae1d39c1a2cadb0a099c22d170b07e65ffb1cd5063de408f16863dd7530f20e673 python3.10.patch
-"
diff --git a/testing/py3-reedsolo/python3.10.patch b/testing/py3-reedsolo/python3.10.patch
deleted file mode 100644
index d4924663c61..00000000000
--- a/testing/py3-reedsolo/python3.10.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-Patch-Source: https://github.com/tomerfiliba/reedsolomon/pull/38
-
-From 63e5bd9fc3ca503990c212eb2c77c10589e6d6c3 Mon Sep 17 00:00:00 2001
-From: Marco Rossi <developer@marco-rossi.com>
-Date: Tue, 23 Nov 2021 20:31:50 +0100
-Subject: [PATCH] Force cythonize of *.pyx file
-
-If not set the also exisiting and *.c file is used
----
- setup.py | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/setup.py b/setup.py
-index 63d4264..ca08d02 100644
---- a/setup.py
-+++ b/setup.py
-@@ -31,7 +31,7 @@
- # If Cython is installed, transpile the optimized Cython module to C and compile as a .pyd to be distributed
- from Cython.Build import cythonize
- print("Cython is installed, building creedsolo module")
-- extensions = cythonize([ Extension('creedsolo', ['creedsolo.pyx']) ])
-+ extensions = cythonize([ Extension('creedsolo', ['creedsolo.pyx']) ], force=True)
- except ImportError:
- # Else Cython is not installed (or user explicitly wanted to skip)
- if '--native-compile' in sys.argv:
diff --git a/testing/py3-remind/APKBUILD b/testing/py3-remind/APKBUILD
index 61af8a4a7fb..be402312b7c 100644
--- a/testing/py3-remind/APKBUILD
+++ b/testing/py3-remind/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Galen Abell <galen@galenabell.com>
pkgname=py3-remind
pkgver=0.18.0
-pkgrel=0
+pkgrel=3
pkgdesc="Python library to convert between Remind and iCalendar"
url="https://github.com/jspricke/python-remind"
arch="noarch"
@@ -14,6 +14,7 @@ makedepends="
py3-setuptools
py3-wheel
"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/jspricke/python-remind/archive/v$pkgver.tar.gz"
options="!check"
builddir="$srcdir/python-remind-$pkgver"
@@ -27,7 +28,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
diff --git a/testing/py3-remoto/APKBUILD b/testing/py3-remoto/APKBUILD
deleted file mode 100644
index b6b2fc81b13..00000000000
--- a/testing/py3-remoto/APKBUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-# Contributor: Duncan Bellamy <dunk@denkimushi.com>
-# Maintainer: Duncan Bellamy <dunk@denkimushi.com>
-pkgname=py3-remoto
-_pkgname=remoto
-pkgver=1.2.1
-pkgrel=1
-pkgdesc="Execute remote commands or processes"
-url="https://github.com/alfredodeza/remoto"
-arch="noarch"
-license="MIT"
-depends="py3-execnet"
-makedepends="py3-setuptools"
-checkdepends="py3-mock py3-pytest"
-source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/r/remoto/remoto-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgname-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- pytest
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-
- # Remove installed-tests
- rm -rf "$pkgdir"/usr/lib/python3*/site-packages/remoto/tests
-}
-
-sha512sums="c2593d93bd53f5aada39318f575dc27ddbbd1cb86dae75db6111b49eff0708d7f242072ee173c57aad466a4e5dc2c4f6d173cbc85c3764c7060205afc4583e53 py3-remoto-1.2.1.tar.gz"
diff --git a/testing/py3-requests-kerberos/APKBUILD b/testing/py3-requests-kerberos/APKBUILD
new file mode 100644
index 00000000000..6c794a754fc
--- /dev/null
+++ b/testing/py3-requests-kerberos/APKBUILD
@@ -0,0 +1,37 @@
+# Contributor: Noel Kuntze <noel.kuntze@thermi.consulting>
+# Maintainer: Noel Kuntze <noel.kuntze@thermi.consulting>
+pkgname=py3-requests-kerberos
+_pkgname=requests-kerberos
+pkgver=0.14.0
+pkgrel=4
+pkgdesc="Kerberos authentication handler for using with Python Requests"
+url="https://github.com/requests/requests-kerberos"
+arch="noarch"
+license="Apache-2.0"
+depends="python3 py3-requests py3-spnego py3-cryptography"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+checkdepends="py3-pytest py3-pytest-mock"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/requests/requests-kerberos/archive/v$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+9dd6eed0d6afe4b852ba96f621be3af2965e9011bf372c5dce77e0bca18191255ea407ba313904271615d722d60029807db2d6815b24437b021b02b026eb60d6 py3-requests-kerberos-0.14.0.tar.gz
+"
diff --git a/testing/py3-requests-wsgi-adapter/APKBUILD b/testing/py3-requests-wsgi-adapter/APKBUILD
new file mode 100644
index 00000000000..b23f7a1624d
--- /dev/null
+++ b/testing/py3-requests-wsgi-adapter/APKBUILD
@@ -0,0 +1,36 @@
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=py3-requests-wsgi-adapter
+pkgver=0.4.1
+pkgrel=1
+# upstream does not tag releases on git:
+# https://github.com/seanbrant/requests-wsgi-adapter/issues/20
+_gitrev=5b771effb5414096089375a3a36a3e7af1522ae0
+pkgdesc="WSGI Transport Adapter for Requests"
+url="https://pypi.org/project/requests-wsgi-adapter/"
+arch="noarch"
+license="BSD-3-Clause"
+depends="py3-requests"
+checkdepends="py3-pytest"
+makedepends="py3-gpep517 py3-installer py3-setuptools py3-wheel"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/seanbrant/requests-wsgi-adapter/archive/$_gitrev.tar.gz"
+builddir="$srcdir/requests-wsgi-adapter-$_gitrev"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 runtests.py
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+f5f3572586f3a4cba98bcebfec2a77382e101fb799998007ad37f804ec721533ccb84bb7cc4f7ee8cf2fe9e61e75440b75003e88d384c44a6484acc65bfa3626 py3-requests-wsgi-adapter-0.4.1.tar.gz
+"
diff --git a/testing/py3-rfc-bibtex/APKBUILD b/testing/py3-rfc-bibtex/APKBUILD
index da2be0c81a7..750852094e5 100644
--- a/testing/py3-rfc-bibtex/APKBUILD
+++ b/testing/py3-rfc-bibtex/APKBUILD
@@ -3,13 +3,14 @@
pkgname=py3-rfc-bibtex
_pkgname=${pkgname#py3-}
pkgver=0.3.2
-pkgrel=2
+pkgrel=6
pkgdesc="Command line tool that creates BibTex entries for IETF RFCs and Internet Drafts"
url="https://github.com/iluxonchik/rfc-bibtex/"
arch="noarch"
license="MIT"
makedepends="py3-setuptools"
-depends="py3-idna py3-multidict py3-yaml py3-six py3-vcrpy py3-wrapt py3-yarl"
+depends="py3-idna py3-multidict py3-yaml py3-vcrpy py3-wrapt py3-yarl"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/iluxonchik/rfc-bibtex/archive/refs/tags/$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -22,7 +23,7 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="be67bf6e05df333333375e002344d2ca5fda133efbdcc400541ccc9c50b0452f1f52a1f65ec8f157930070fb44e05e0c1d26f220212112af0b0133f641156296 py3-rfc-bibtex-0.3.2.tar.gz"
diff --git a/testing/py3-rfc3987/APKBUILD b/testing/py3-rfc3987/APKBUILD
index bf99c3cd5b6..27aabba4d7c 100644
--- a/testing/py3-rfc3987/APKBUILD
+++ b/testing/py3-rfc3987/APKBUILD
@@ -2,13 +2,14 @@
# Maintainer: Iskren Chernev <iskren.chernev@gmail.com>
pkgname=py3-rfc3987
pkgver=1.3.8
-pkgrel=2
+pkgrel=5
pkgdesc="Parsing and validation of URIs (RFC 3896) and IRIs (RFC 3987)"
url="https://github.com/dgerber/rfc3987"
arch="noarch"
license="GPL-3.0-or-later"
depends="python3"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://pypi.io/packages/source/r/rfc3987/rfc3987-$pkgver.tar.gz"
builddir="$srcdir/rfc3987-$pkgver"
@@ -19,6 +20,6 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="0e81b8dbc8c410f08b1efa7ee1c90174ed6e70bf7622d3748f598d383583b439908e1b5da1e1a1eb22af4f214ae08680a29f00b253f37808034bae8a1808c32c py3-rfc3987-1.3.8.tar.gz"
diff --git a/testing/py3-rich-click/APKBUILD b/testing/py3-rich-click/APKBUILD
new file mode 100644
index 00000000000..e731844a2a6
--- /dev/null
+++ b/testing/py3-rich-click/APKBUILD
@@ -0,0 +1,44 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-rich-click
+pkgver=1.7.3
+pkgrel=1
+pkgdesc="Format click help output nicely with rich"
+url="https://github.com/ewels/rich-click"
+arch="noarch"
+license="MIT"
+depends="
+ py3-click
+ py3-rich
+ py3-typing-extensions
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/ewels/rich-click/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/rich-click-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+f3e967142fcf5ba042265b4bd4a1f3f90df38f07996dd981f537bb226d144aa7c74c1bdbcb945d3048c5cdae02a06a1aaffce1633bbcfd568bc3ea466b08767d py3-rich-click-1.7.3.tar.gz
+"
diff --git a/testing/py3-riotctrl/APKBUILD b/testing/py3-riotctrl/APKBUILD
new file mode 100644
index 00000000000..2ffa9d082a2
--- /dev/null
+++ b/testing/py3-riotctrl/APKBUILD
@@ -0,0 +1,46 @@
+# Contributor: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
+# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
+pkgname=py3-riotctrl
+pkgver=0.5.0
+pkgrel=3
+pkgdesc="python object abstraction of a RIOT device"
+url="https://github.com/RIOT-OS/riotctrl"
+arch="noarch"
+license="MIT"
+depends="
+ py3-pexpect
+ py3-psutil
+ py3-rapidjson
+ python3
+ "
+makedepends="
+ py3-setuptools
+ "
+checkdepends="
+ py3-pytest
+ py3-pytest-cov
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/RIOT-OS/riotctrl/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/"riotctrl-$pkgver
+
+build() {
+ python3 setup.py build
+}
+
+check() {
+ pytest \
+ --deselect riotctrl/tests/ctrl_test.py::test_riotctrl_application_dir \
+ --deselect riotctrl/tests/ctrl_test.py::test_riotctrl_curdir \
+ --deselect riotctrl/tests/shell_json_test.py::test_rapid_json_shell_interaction_parser_wo_rapidjson \
+ #
+}
+
+package() {
+ python3 setup.py install --skip-build --root="$pkgdir"
+ rm -r "$pkgdir"/usr/lib/python3*/site-packages/riotctrl/tests
+}
+
+sha512sums="
+95caf93c8594fc56f0b9bfa8eccd4bdbccaa223d963961c11ae54eeb842690ae9c7b88c4ef6892ddfdc0fa7e23804c41c460073b5e608c978c80ae48c9d5eafd py3-riotctrl-0.5.0.tar.gz
+"
diff --git a/testing/py3-rosdistro/APKBUILD b/testing/py3-rosdistro/APKBUILD
index 1abc19056c6..759e313a604 100644
--- a/testing/py3-rosdistro/APKBUILD
+++ b/testing/py3-rosdistro/APKBUILD
@@ -2,8 +2,8 @@
# Maintainer: Russ Webber <russ@rw.id.au>
pkgname=py3-rosdistro
_pkgname=rosdistro
-pkgver=0.8.3
-pkgrel=2
+pkgver=0.9.0
+pkgrel=3
pkgdesc="Tools to work with catkinized rosdistro files"
url="https://github.com/ros-infrastructure/rosdistro"
arch="noarch"
@@ -12,6 +12,7 @@ depends="python3 py3-yaml py3-catkin-pkg"
makedepends="py3-setuptools"
checkdepends="py3-nose py3-mock"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/ros-infrastructure/rosdistro/archive/$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
@@ -24,9 +25,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
-19e248497b4001c522a84a52d768bc9f20a08020c88574d1a8345cf2173dc2aadd8a1480d4fddf2285ac579ee69dd0b6d4b930333cd6a9cbe32708efed2e5747 py3-rosdistro-0.8.3.tar.gz
+f3212c8dbceb2862ad8680da537cfdddb347fc302929afa0b0a8601dfa56fd328406eeb9a0d44aba2afa3c1c53fa934dc7721fc3fb2b2c9b0d3f2b9444e78174 py3-rosdistro-0.9.0.tar.gz
"
diff --git a/testing/py3-rospkg/APKBUILD b/testing/py3-rospkg/APKBUILD
index fd5e83d1dbf..b4cac94cf10 100644
--- a/testing/py3-rospkg/APKBUILD
+++ b/testing/py3-rospkg/APKBUILD
@@ -3,7 +3,7 @@
pkgname=py3-rospkg
_pkgname=rospkg
pkgver=1.2.9
-pkgrel=2
+pkgrel=5
pkgdesc="Standalone Python library for the ROS package system"
url="http://wiki.ros.org/rospkg"
arch="noarch"
@@ -13,6 +13,7 @@ depends="python3 py3-yaml py3-catkin-pkg py3-distro"
makedepends="py3-setuptools"
checkdepends="py3-nose py3-mock"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/ros-infrastructure/rospkg/archive/$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
@@ -25,7 +26,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="e2e97b2454919a35b5a2ab938a3ab519a125457857c34badb9354f8322b1de704d429753589828500b46814ddad5ad6a7573149ab0a58a925bf7347eadf93746 py3-rospkg-1.2.9.tar.gz"
diff --git a/testing/py3-rpio/APKBUILD b/testing/py3-rpio/APKBUILD
index 4cd80f97c47..02262c9b6a2 100644
--- a/testing/py3-rpio/APKBUILD
+++ b/testing/py3-rpio/APKBUILD
@@ -3,13 +3,14 @@
pkgname=py3-rpio
_pkgname=RPIO
pkgver=0.10.1
-pkgrel=4
+pkgrel=7
pkgdesc="GPIO toolbox for the Raspberry Pi"
options="!check" # No testsuite
url="https://github.com/metachris/RPIO"
arch="all"
license="LGPL-3.0-or-later"
makedepends="py3-setuptools python3-dev"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/metachris/RPIO/archive/v$pkgver.tar.gz
missing-typesh.patch"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -22,7 +23,7 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="47243abb5fa05a019e5de851035cf4d3e2d00b7ebb58fee86e3d89dc5ab4f4938c387d1824a721887a59706d0b401742c709ae53730f09cd021a224eddcd09c4 py3-rpio-0.10.1.tar.gz
diff --git a/testing/py3-rst.linker/APKBUILD b/testing/py3-rst.linker/APKBUILD
index 90a9d96cb71..27a866c6665 100644
--- a/testing/py3-rst.linker/APKBUILD
+++ b/testing/py3-rst.linker/APKBUILD
@@ -1,30 +1,36 @@
# Contributor: Duncan Bellamy <dunk@denkimushi.com>
# Maintainer: Duncan Bellamy <dunk@denkimushi.com>
pkgname=py3-rst.linker
-pkgver=2.3.0
-pkgrel=0
+pkgver=2.4.0
+pkgrel=2
pkgdesc="Tools for adding metadata and hyperlinks to reStructuredText"
url="https://github.com/jaraco/rst.linker"
arch="noarch"
license="MIT"
depends="py3-dateutil py3-sphinx"
-makedepends="py3-build py3-installer py3-setuptools_scm py3-wheel"
+makedepends="py3-gpep517 py3-installer py3-setuptools_scm py3-wheel"
checkdepends="py3-path py3-pytest"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/r/rst.linker/rst.linker-$pkgver.tar.gz"
builddir="$srcdir/rst.linker-$pkgver"
build() {
- python3 -m build --skip-dependency-check --no-isolation --wheel
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- pytest
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
}
package() {
- python3 -m installer -d "$pkgdir" --compile-bytecode 0 dist/rst.linker-$pkgver-py3-none-any.whl
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
-a4190c3349c85ee52d17498c99c7879be3f0a98cfc0b5966cc2f6161f9b374d52a64be7035691256d96d4c2ebb2272d5d10802e5e716efedf78859e418e561e0 rst.linker-2.3.0.tar.gz
+31e3427ecf35b433cc9650138ee36090e99003b72c69b60b530835eb624d7eb13aae4cf81cc0044b36750798a4b8aa676e53e3b9eb335430076593640a243940 rst.linker-2.4.0.tar.gz
"
diff --git a/testing/py3-rst/APKBUILD b/testing/py3-rst/APKBUILD
index cd4cd27b2f7..e7de876cf0f 100644
--- a/testing/py3-rst/APKBUILD
+++ b/testing/py3-rst/APKBUILD
@@ -3,7 +3,7 @@
pkgname=py3-rst
_pkgname=rst
pkgver=0.1
-pkgrel=5
+pkgrel=8
pkgdesc="A Python module to create reStructuredText documents"
url="https://github.com/kushaldas/rst"
arch="noarch"
@@ -11,6 +11,7 @@ license="MIT"
depends="python3 py3-six"
makedepends="py3-setuptools"
checkdepends="py3-mock"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -26,7 +27,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="77cf2500c79c702881ffaad23819c792575634046d30c3bc9ee3aef237c39bf2a20d85bd98c7d1ec175826beb4486b7c990c2750b4e045cb79fdfa51eb3220c6 rst-0.1.tar.gz"
diff --git a/testing/py3-rstr/APKBUILD b/testing/py3-rstr/APKBUILD
index 41971085dc1..21d22a6b5e6 100644
--- a/testing/py3-rstr/APKBUILD
+++ b/testing/py3-rstr/APKBUILD
@@ -1,31 +1,36 @@
# Contributor: Leo <thinkabit.ukim@gmail.com>
-# Maintainer: psykose <alice@ayaya.dev>
+# Maintainer: Will Sinatra <wpsinatra@gmail.com>
pkgname=py3-rstr
-pkgver=3.2.0
-pkgrel=0
+pkgver=3.2.2
+pkgrel=3
pkgdesc="Random string generator"
url="https://github.com/leapfrogonline/rstr"
arch="noarch"
license="BSD-3-Clause"
-depends="python3"
-makedepends="py3-build py3-installer py3-setuptools py3-wheel"
+makedepends="py3-gpep517 py3-setuptools py3-setuptools_scm py3-wheel"
checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/r/rstr/rstr-$pkgver.tar.gz"
builddir="$srcdir/rstr-$pkgver"
build() {
- python3 -m build --no-isolation --wheel
+ export SETUPTOOLS_SCM_PRETEND_VERSION="$pkgver"
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- python3 -m pytest
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
}
package() {
python3 -m installer -d "$pkgdir" \
- dist/rstr-$pkgver-py3-none-any.whl
+ .dist/*.whl
}
sha512sums="
-4e6613c68572c12755f3284baa97477843f39668f0753114a92b9d32c45cb7492fec299818ae4f7ea9bdf511ab715ef1dc0ef7d15af50bcb32fd9208f0e1af6e rstr-3.2.0.tar.gz
+a7fe59cac3382a7ce4dea97b97aae607f6820a0aabf445426e0bedb127a053ed70990ac5137c52a78c2356089e0b474eac05c3cc794f705dc30a1f4ffa6c35ac rstr-3.2.2.tar.gz
"
diff --git a/testing/py3-rtree/APKBUILD b/testing/py3-rtree/APKBUILD
index 660138aee99..52acba3565e 100644
--- a/testing/py3-rtree/APKBUILD
+++ b/testing/py3-rtree/APKBUILD
@@ -2,8 +2,8 @@
# Maintainer: Alex Yam <alex@alexyam.com>
pkgname=py3-rtree
_pkgname=rtree
-pkgver=0.9.7
-pkgrel=2
+pkgver=1.1.0
+pkgrel=1
pkgdesc="Python3 library for r-tree spatial index (wrapper for libspatialindex)"
url="https://pypi.org/project/Rtree/"
# s390x: Test failed: IndexSerialization::test_interleaving - AssertionError
@@ -13,6 +13,7 @@ license="MIT"
depends="python3 libspatialindex-dev"
makedepends="py3-setuptools py3-wheel"
checkdepends="py3-pytest py3-numpy"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/Toblerity/rtree/archive/$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -25,7 +26,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="f3add9440ddbc3b40366a3826c4206d03d46aa4e0e5cf90e5838347def7f9b52662458cb964a5f27cfd589637b2b1616dca62cbd89e6095601cf0f1881e2090b py3-rtree-0.9.7.tar.gz"
+sha512sums="
+97a87027e49520f12cb86444ee8a9795fabeec6d8f0e3e869f2714df8f7c649ced1374385852af0ce7d7eb91e5a2cb464a4330807be15d538dc0a4d8de7b7ca2 py3-rtree-1.1.0.tar.gz
+"
diff --git a/testing/py3-sabctools/APKBUILD b/testing/py3-sabctools/APKBUILD
new file mode 100644
index 00000000000..1d92df7b4dd
--- /dev/null
+++ b/testing/py3-sabctools/APKBUILD
@@ -0,0 +1,47 @@
+# Contributor: Fabricio Silva <hi@fabricio.dev>
+# Maintainer: Fabricio Silva <hi@fabricio.dev>
+pkgname=py3-sabctools
+_pkgname=sabctools
+pkgver=8.1.0
+pkgrel=1
+pkgdesc="C implementations of functions for use within SABnzbd"
+url="https://github.com/sabnzbd/sabctools"
+arch="all"
+license="GPL-2.0-or-later AND Apache-2.0 AND CC0-1.0"
+makedepends="
+ linux-headers
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ python3-dev
+ "
+checkdepends="
+ py3-chardet
+ py3-jaraco.functools
+ py3-portend
+ py3-pytest
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/sabnzbd/sabctools/archive/v$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+862c39f2e386622b528f120a431f214e1e2e92b7c5a751e47d0768f40ce06ad2736d867f7ac2e1810d676e980312bbfedd29951cbadeddefe75246cdcf53fcc6 py3-sabctools-8.1.0.tar.gz
+"
diff --git a/testing/py3-sarge/APKBUILD b/testing/py3-sarge/APKBUILD
new file mode 100644
index 00000000000..4036da557a9
--- /dev/null
+++ b/testing/py3-sarge/APKBUILD
@@ -0,0 +1,35 @@
+# Contributor: Lauren N. Liberda <lauren@selfisekai.rocks>
+# Maintainer: Lauren N. Liberda <lauren@selfisekai.rocks>
+pkgname=py3-sarge
+pkgver=0.1.7
+pkgrel=1
+pkgdesc="Subprocess Allegedly Rewards Good Encapsulation"
+url="https://github.com/vsajip/sarge"
+arch="noarch"
+license="BSD-3-Clause" # effectively BSD-3-clause but not exact text
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="https://github.com/vsajip/sarge/archive/refs/tags/$pkgver/sarge-$pkgver.tar.gz"
+builddir="$srcdir/sarge-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages testenv
+ testenv/bin/python3 -m installer .dist/*.whl
+ testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+f2017fdab137e1aebfcd60a125ea7ff057158c6bf6a277d3084db73ed62a07cfd3464deba883284980c9f6ea3f56810effb551e8e8523ab750a086895ad0297a sarge-0.1.7.tar.gz
+"
diff --git a/testing/py3-schema/APKBUILD b/testing/py3-schema/APKBUILD
index b7b048ca5ac..9a059b8a036 100644
--- a/testing/py3-schema/APKBUILD
+++ b/testing/py3-schema/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Sasha Gerrand <alpine-pkgs@sgerrand.com>
# Maintainer: Sasha Gerrand <alpine-pkgs@sgerrand.com>
pkgname=py3-schema
-pkgver=0.7.3
-pkgrel=2
+pkgver=0.7.5
+pkgrel=3
pkgdesc="Schema is a library for validating Python data structures"
url="https://github.com/keleshev/schema"
arch="noarch"
@@ -10,6 +10,7 @@ license="MIT"
depends="python3"
checkdepends="py3-pytest py3-mock"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/keleshev/schema/archive/v$pkgver.tar.gz"
builddir="$srcdir/schema-$pkgver"
@@ -22,7 +23,9 @@ check() {
}
package() {
- PYTHONPATH="$PWD" python3 setup.py install --prefix=/usr --root="$pkgdir"
+ PYTHONPATH="$PWD" python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="a64e88a21eb4a5978db5d582ed8494844e563cfc22ae012b8533f2eab57323e0d08eb1b4ce078478a53ad20cc9cc682ce29787258460123fa9a58d119bb07102 py3-schema-0.7.3.tar.gz"
+sha512sums="
+360669128595104ece7295769d29e57218cc49342e3744289389a3e62bfa66b2f086a52cafb1d6fb8ce1d8744d205045a384d7da3814f92ee7dfdf8acd5617d5 py3-schema-0.7.5.tar.gz
+"
diff --git a/testing/py3-scikit-uplift/APKBUILD b/testing/py3-scikit-uplift/APKBUILD
deleted file mode 100644
index 846899267bb..00000000000
--- a/testing/py3-scikit-uplift/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Contributor: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-# Maintainer: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-pkgname=py3-scikit-uplift
-_pkgorig=scikit-uplift
-pkgver=0.4.0
-pkgrel=0
-pkgdesc="Classic approaches of Uplift modelling in scikit-learn style in python"
-url="https://www.uplift-modeling.com"
-arch="noarch !s390x !riscv64 !x86 !armhf !armv7" # py3-scikit-learn, py3-matplotlib, memory errors
-license="MIT"
-depends="python3 py3-scikit-learn py3-numpy py3-pandas py3-matplotlib py3-requests py3-tqdm"
-checkdepends="python3-dev py3-pytest"
-makedepends="py3-setuptools"
-source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/s/scikit-uplift/scikit-uplift-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgorig-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 -m pytest
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-c951d677e8592464a702727d106b1af170cab70d20b66b059a5f7aab9255577d0751b002a4f5aebfe49a67f07ca0710c93886b99a3b04772a8d29aceab8b551d py3-scikit-uplift-0.4.0.tar.gz
-"
diff --git a/testing/py3-scour/APKBUILD b/testing/py3-scour/APKBUILD
new file mode 100644
index 00000000000..bda8cd418fa
--- /dev/null
+++ b/testing/py3-scour/APKBUILD
@@ -0,0 +1,35 @@
+# Contributor: Sertonix <sertonix@posteo.net>
+# Maintainer: Sertonix <sertonix@posteo.net>
+pkgname=py3-scour
+pkgver=0.38.2
+pkgrel=1
+pkgdesc="SVG Optimizer / Cleaner"
+url="https://github.com/scour-project/scour"
+arch="noarch"
+license="Apache-2.0"
+depends="py3-six"
+makedepends="py3-gpep517 py3-setuptools py3-wheel py3-pytest"
+subpackages="$pkgname-pyc"
+source="https://github.com/scour-project/scour/archive/v$pkgver/py3-scour-$pkgver.tar.gz"
+builddir="$srcdir/scour-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+a2c418e25283af399be032322b3af0c336c2392ba361681d4b133b64ebc441ac5beeed2b920f42316cef376c971b230681e306687786a875162d33b659d3fdeb py3-scour-0.38.2.tar.gz
+"
diff --git a/testing/py3-scrapy/APKBUILD b/testing/py3-scrapy/APKBUILD
index 683b02db8a4..2efec5d4bb1 100644
--- a/testing/py3-scrapy/APKBUILD
+++ b/testing/py3-scrapy/APKBUILD
@@ -1,16 +1,17 @@
# Contributor: Orion <systmkor@gmail.com>
# Maintainer: Orion <systmkor@gmail.com>
pkgname=py3-scrapy
-pkgver=2.6.1
-pkgrel=0
+pkgver=2.11.1
+pkgrel=1
pkgdesc="Fast high-level scraping and web crawling framework"
url="https://scrapy.org/"
arch="noarch"
license="BSD-3-Clause"
depends="
- python3
+ py3-cryptography
py3-cssselect
py3-itemadapter
+ py3-itemloaders
py3-lxml
py3-openssl
py3-parsel
@@ -18,13 +19,27 @@ depends="
py3-pydispatcher
py3-queuelib
py3-service_identity
- py3-six
+ py3-tldextract
py3-twisted
py3-w3lib
+ py3-zope-interface
+ python3
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
"
-makedepends="py3-setuptools"
+checkdepends="
+ py3-pyftpdlib
+ py3-pytest
+ py3-sybil
+ py3-testfixtures
+ "
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/S/Scrapy/Scrapy-$pkgver.tar.gz"
builddir="$srcdir"/Scrapy-$pkgver
+options="!check" # take forever
# secfixes:
# 2.6.1-r0:
@@ -35,13 +50,19 @@ replaces="py-scrapy" # Backwards compatibility
provides="py-scrapy=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ pytest tests
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" .dist/*.whl
}
sha512sums="
-3ba0ac59fceb3c536be5dbc9f8101751b3dba8bc3e64f11657d6d0d2624ac546866dd87b5e8a73d40d044f4927c98abfba5acd30c866fa0640c31f63c6c6ce11 Scrapy-2.6.1.tar.gz
+c33bf8fe45c96865483398920e823bd169d7d7e5d67dcfd5e57e4546f1016cfdcb404ebcbf67a6710a4597d5970f55481226fee25c27291dfaedfc00322327d9 Scrapy-2.11.1.tar.gz
"
diff --git a/testing/py3-scs/APKBUILD b/testing/py3-scs/APKBUILD
index 9eb67fecd16..dee85f502a3 100644
--- a/testing/py3-scs/APKBUILD
+++ b/testing/py3-scs/APKBUILD
@@ -1,33 +1,32 @@
# Contributor: Anjandev Momi <anjan@momi.ca>
# Maintainer: Anjandev Momi <anjan@momi.ca>
pkgname=py3-scs
-pkgver=3.2.0
-pkgrel=0
+pkgver=3.2.3
+pkgrel=3
pkgdesc="C package that solves convex cone problems via operator splitting"
url="https://github.com/cvxgrp/scs"
arch="all"
license="MIT"
depends="python3 py3-numpy py3-scipy"
-makedepends="py3-setuptools py3-numpy-dev"
+makedepends="py3-setuptools py3-numpy-dev python3-dev"
checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
source="scs-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/s/scs/scs-$pkgver.tar.gz"
builddir="$srcdir/scs-$pkgver"
-options="!check" # upstream tests broken
+options="!check" # Cannot solve SDPs without linked blas+lapack libraries
build() {
python3 setup.py build
}
check() {
- python3 setup.py build_ext --inplace
- cp src/__init__.py scs
- PYTHONPATH=. pytest
+ PYTHONPATH=$(echo build/lib*) pytest
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
-5cb6b69952479e1ba1593539bacc10ef4d97591c668bda0d9922c1dfcfcc7e62fa43a81b7c70bbb3ed0201db9be5594a3d40d91dab3ff3d6510d404917408491 scs-3.2.0.tar.gz
+9b3bef40f34fc9350444e2bd56602def10d2fedd6efd0c78eceacfba2f8276bfd16cd7e8a479cd9431c55f5efe65f6869d2d9ecb5dc6450801dd371f802ff3a9 scs-3.2.3.tar.gz
"
diff --git a/testing/py3-seaborn/APKBUILD b/testing/py3-seaborn/APKBUILD
deleted file mode 100644
index b64d6d036c2..00000000000
--- a/testing/py3-seaborn/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Contributor: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-# Maintainer: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-pkgname=py3-seaborn
-_pkgorig=seaborn
-pkgver=0.11.2
-pkgrel=0
-pkgdesc="Statistical data visualization in Python"
-url="https://github.com/mwaskom/seaborn"
-arch="noarch !riscv64" # py3-matplotlib
-license="BSD-3-Clause"
-depends="python3 py3-numpy py3-pandas py3-matplotlib py3-scipy" # statsmodels is also in extras
-makedepends="py3-setuptools"
-checkdepends="py3-pytest"
-source="$pkgname-$pkgver.tar.gz::https://github.com/mwaskom/seaborn/archive/refs/tags/v$pkgver.tar.gz"
-builddir="$srcdir/$_pkgorig-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- pytest -k 'not test_categorical and not test_distributions' # a minor portion of tests is failing (e.g. assertionErrors)
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-f0670f20201cb72c5407cf1cda9543568c98162e5ed8af4f2d3f5bbb10de58d2ab466245c5be07a11f647d934fa3ed6bd162df857377f82b0336118d4f4b4917 py3-seaborn-0.11.2.tar.gz
-"
diff --git a/testing/py3-seqdiag/APKBUILD b/testing/py3-seqdiag/APKBUILD
index e744a908c07..4a5a03138d0 100644
--- a/testing/py3-seqdiag/APKBUILD
+++ b/testing/py3-seqdiag/APKBUILD
@@ -3,25 +3,29 @@
pkgname=py3-seqdiag
_pkgname=seqdiag
pkgver=3.0.0
-pkgrel=0
+pkgrel=5
pkgdesc="Generate sequence-diagram image file from spec-text file"
-url="https://pypi.python.org/pypi/seqdiag"
+url="https://pypi.org/project/seqdiag"
arch="noarch"
license="Apache-2.0"
depends="py3-funcparserlib py3-blockdiag py3-pillow"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-seqdiag" # for backwards compatibility
+replaces="py-seqdiag" # for backwards compatibility
provides="py-seqdiag=$pkgver-r$pkgrel" # for backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
diff --git a/testing/py3-serpent/APKBUILD b/testing/py3-serpent/APKBUILD
deleted file mode 100644
index 6d22131a91e..00000000000
--- a/testing/py3-serpent/APKBUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-# Maintainer: Drew DeVault <sir@cmpwn.com>
-pkgname=py3-serpent
-_pyname=serpent
-pkgver=1.40
-pkgrel=1
-pkgdesc="Serialization based on ast.literal_eval for Python"
-url="https://pypi.org/project/serpent/"
-arch="noarch"
-license="MIT"
-depends="python3"
-makedepends="py3-setuptools"
-checkdepends="py3-attrs py3-tz"
-source="https://files.pythonhosted.org/packages/source/${_pyname:0:1}/$_pyname/$_pyname-$pkgver.tar.gz"
-builddir="$srcdir/$_pyname-$pkgver"
-
-replaces="py-serpent" # Backwards compatiblity
-provides="py-serpent=$pkgname-r$pkgrel" # Backwards compatiblity
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 setup.py test
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-9f8edebcd6e37de7442a00157f64b1dec6742cd198f45ab475be7f38aff4e090345739f7500181f0b0a4dbdc9241b2f11bca5ada7a89aa577d94646269d7ab28 serpent-1.40.tar.gz
-"
diff --git a/testing/py3-setuptools-declarative-requirements/APKBUILD b/testing/py3-setuptools-declarative-requirements/APKBUILD
new file mode 100644
index 00000000000..f1cae441167
--- /dev/null
+++ b/testing/py3-setuptools-declarative-requirements/APKBUILD
@@ -0,0 +1,38 @@
+# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=py3-setuptools-declarative-requirements
+pkgver=1.3.0
+pkgrel=3
+pkgdesc="Requirements Support For Setuptools Declarative setup.cfg"
+url="https://github.com/s0undt3ch/setuptools-declarative-requirements"
+arch="noarch"
+license="Apache-2.0"
+depends="py3-setuptools"
+makedepends="py3-setuptools_scm py3-gpep517 py3-wheel"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="https://github.com/s0undt3ch/setuptools-declarative-requirements/archive/refs/tags/$pkgver/py3-setuptools-declarative-requirements-$pkgver.tar.gz"
+builddir="$srcdir/setuptools-declarative-requirements-$pkgver"
+options="!check" # circular dependency with py3-pytest-shell-utilities
+
+build() {
+ export SETUPTOOLS_SCM_PRETEND_VERSION=$pkgver
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ gpep517 install-wheel --destdir .testenv --prefix '' .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+eb20016ab0b8029a38ff4632d19d63cd4b6396c9d101efce577ac862feb3fc485ac4a644035d3267cd05caf679f9b2259e1d1340f8cd902ea7c7451e099c71cc py3-setuptools-declarative-requirements-1.3.0.tar.gz
+"
diff --git a/testing/py3-setuptools-git/APKBUILD b/testing/py3-setuptools-git/APKBUILD
deleted file mode 100644
index 820c88ef48b..00000000000
--- a/testing/py3-setuptools-git/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Contributor: Fabian Affolter <fabian@affolter-engineering.ch>
-# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
-pkgname=py3-setuptools-git
-_pkgname=setuptools-git
-pkgver=1.2
-pkgrel=4
-pkgdesc="Setuptools plugin for Git"
-url="https://github.com/wichert/setuptools-git"
-arch="noarch"
-license="BSD-3-Clause"
-replaces="py-setuptools-git" # for backwards compatibility
-provides="py-setuptools-git=$pkgver-r$pkgrel" # for backwards compatibility
-depends="python3 git"
-makedepends="python3-dev py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
-
-builddir="$srcdir/$_pkgname-$pkgver"
-
-build() {
- cd "$builddir"
- python3 setup.py build
-}
-
-check() {
- cd "$builddir"
- export EMAIL="Test User <user@example.com>"
- python3 setup.py test
-}
-
-package() {
- cd "$builddir"
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="c070911618b6b92c862fb0bd40f1daeaf79e2ba10389fa1e69e4c50cfdd39c8e57a612082cbc7d932f8cea12a769e13451e35e1c8fe34f170d4817fd0d44f156 setuptools-git-1.2.tar.gz"
diff --git a/testing/py3-setuptools-lint/APKBUILD b/testing/py3-setuptools-lint/APKBUILD
index 1eeb07ab9c8..2c6b82cd42a 100644
--- a/testing/py3-setuptools-lint/APKBUILD
+++ b/testing/py3-setuptools-lint/APKBUILD
@@ -2,25 +2,31 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-setuptools-lint
pkgver=0.6.0
-pkgrel=3
-pkgdesc="Setuptools plugin for Git"
+pkgrel=9
+pkgdesc="Expose pylint as a lint command into setup.py"
url="https://github.com/johnnoone/setuptools-pylint"
arch="noarch"
license="BSD"
-depends="python3"
-makedepends="py3-setuptools"
+depends="py3-setuptools"
+makedepends="py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/s/setuptools-lint/setuptools-lint-$pkgver.tar.gz"
builddir="$srcdir"/setuptools-lint-$pkgver
-replaces="py-setuptools-lint" # Backwards compatibility
+replaces="py-setuptools-lint" # Backwards compatibility
provides="py-setuptools-lint=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
-sha512sums="d36c10bab45672b3c7d92391c8f1ae297a483500654e8b31a312587c9d9355a74beddb466ea952fa4cc8bc035c4f631536eeefd61ae159f807767f61fabc72d4 setuptools-lint-0.6.0.tar.gz"
+sha512sums="
+d36c10bab45672b3c7d92391c8f1ae297a483500654e8b31a312587c9d9355a74beddb466ea952fa4cc8bc035c4f631536eeefd61ae159f807767f61fabc72d4 setuptools-lint-0.6.0.tar.gz
+"
diff --git a/testing/py3-setuptools-rust/APKBUILD b/testing/py3-setuptools-rust/APKBUILD
deleted file mode 100644
index 60417cd8845..00000000000
--- a/testing/py3-setuptools-rust/APKBUILD
+++ /dev/null
@@ -1,34 +0,0 @@
-# Contributor: Aiden Grossman <agrossman154@yahoo.com>
-# Maintainer: Aiden Grossman <agrossman154@yahoo.com>
-pkgname=py3-setuptools-rust
-pkgver=1.3.0
-pkgrel=0
-pkgdesc="Setuptools plugin for rust support"
-url="https://github.com/PyO3/setuptools-rust"
-# s390x, riscv64 blocked by rust
-arch="noarch !s390x !riscv64"
-license="MIT"
-depends="py3-semantic-version rust cargo"
-makedepends="py3-setuptools py3-wheel py3-setuptools_scm"
-checkdepends="py3-pytest py3-nox python3-dev libffi-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/PyO3/setuptools-rust/archive/refs/tags/v$pkgver.tar.gz"
-builddir="$srcdir/setuptools-rust-$pkgver"
-options="net" # check needs network access, no easy patch
-
-export SETUPTOOLS_SCM_PRETEND_VERSION=$pkgver
-
-build() {
- python3 setup.py build
-}
-
-check() {
- nox -s test-examples
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-e9259befb38ee22d355c9dcebc4cb5dd0d23b7a00ac9be16ce61f8c11bd0cee3a2afd2099f8882e9224475d084a61c1721cfee48200d7b061bffa631380d73b4 py3-setuptools-rust-1.3.0.tar.gz
-"
diff --git a/testing/py3-sh/APKBUILD b/testing/py3-sh/APKBUILD
index 0a830f7106d..6edfd555b39 100644
--- a/testing/py3-sh/APKBUILD
+++ b/testing/py3-sh/APKBUILD
@@ -2,32 +2,36 @@
# Maintainer: Michał Polański <michal@polanski.me>
pkgname=py3-sh
_pyname=sh
-pkgver=1.14.2
+pkgver=2.0.6
pkgrel=1
pkgdesc="Python subprocess replacement"
-url="https://amoffat.github.io/sh/"
+url="https://sh.readthedocs.io/"
license="MIT"
-arch="noarch !x86 !armv7" # test_custom_timeout_signal fails on x86 and armv7
-options="!check" # tests fail on the builders
+arch="noarch"
depends="python3"
-makedepends="py3-setuptools"
+makedepends="py3-gpep517 py3-poetry-core"
checkdepends="py3-pytest lsof coreutils"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://pypi.io/packages/source/s/sh/sh-$pkgver.tar.gz"
builddir="$srcdir/$_pyname-$pkgver"
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- PYTHONPATH="$PWD"/build/lib pytest test.py \
- --deselect test.py::MiscTests::test_no_fd_leak # skip unreliable test
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir" --skip-build
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
-b7917504ae85606e1986b681274077777ad3011639bfe933d4133c3ed16f930842e03b572caa396ca4d58f41fd5594bef776cc16c4b0fbd1242e57c6aad19e62 py3-sh-1.14.2.tar.gz
+717dae58ebd08b3a86e0d30ba2a6f3055592844d064265280b97a1d29bd7d0422c9e5500b6eb999cc1a97c1c2af04cf8ed214670bc08cb2bc45e418f69560c1d py3-sh-2.0.6.tar.gz
"
diff --git a/testing/py3-shodan/APKBUILD b/testing/py3-shodan/APKBUILD
index 67a8f0cf717..9676ed0506b 100644
--- a/testing/py3-shodan/APKBUILD
+++ b/testing/py3-shodan/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=py3-shodan
-pkgver=1.27.0
-pkgrel=0
+pkgver=1.31.0
+pkgrel=1
pkgdesc="The official Python library for Shodan"
url="https://developer.shodan.io/"
arch="noarch"
@@ -13,26 +13,36 @@ depends="
py3-click-plugins
py3-colorama
py3-requests
+ py3-setuptools
py3-xlsxwriter
+ py3-tldextract
+ "
+makedepends="
+ py3-gpep517
+ py3-sphinx
+ py3-wheel
"
-makedepends="py3-setuptools py3-sphinx"
checkdepends="py3-pytest"
-subpackages="$pkgname-doc"
-source="https://github.com/achillean/shodan-python/archive/$pkgver/py3-shodan-$pkgver.tar.gz"
-builddir="$srcdir/shodan-python-$pkgver"
+subpackages="$pkgname-doc $pkgname-pyc"
+source="https://pypi.python.org/packages/source/s/shodan/shodan-$pkgver.tar.gz"
+builddir="$srcdir/shodan-$pkgver"
options="!check" # tests require a working api key
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+
make -C docs man
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" .dist/*.whl
- install -Dm644 docs/_build/man/shodan-python.1 -t "$pkgdir"/usr/share/man/man1
+ install -Dm644 docs/_build/man/shodan-python.1 \
+ -t "$pkgdir"/usr/share/man/man1
}
sha512sums="
-b9813f945b69db7c414665a8fb1d41c046ce8a8b8bbfd40bd7888840a88b80b248755f1fb8f54c3647d599e673e7a637be76c8f704c64299d72e8c406a33c346 py3-shodan-1.27.0.tar.gz
+fe66fdd4ae1088d165a2acd67f85a54a9fcbed8130ee5e2a5764d318fa0c50fb472fd5a76ce72f84fcfdb4c74c29ae2e14881f86468fb177ddc3191cb95d3b67 shodan-1.31.0.tar.gz
"
diff --git a/testing/py3-shortuuid/APKBUILD b/testing/py3-shortuuid/APKBUILD
index f703f2835ed..4fd011cf015 100644
--- a/testing/py3-shortuuid/APKBUILD
+++ b/testing/py3-shortuuid/APKBUILD
@@ -1,14 +1,16 @@
# Maintainer:
pkgname=py3-shortuuid
_pkgname=shortuuid
-pkgver=1.0.2
-pkgrel=1
+pkgver=1.0.11
+pkgrel=3
pkgdesc="Python library that generates short, pretty, unambiguous unique IDs"
-url="https://pypi.python.org/pypi/shortuuid/"
+url="https://pypi.org/project/shortuuid/"
arch="noarch"
license="BSD-3-Clause"
depends="python3"
makedepends="py3-setuptools"
+checkdepends="py3-django"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir/shortuuid-$pkgver"
@@ -24,9 +26,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
-c8ee7a88dc5f369990995dc106f03d052b58bdc6f97b93701a24ec4865ca474a67bfd2991c62149950c36c519f00ed356a011babc783ec6d1df9b54d51772aa4 shortuuid-1.0.2.tar.gz
+3aec978713a9a95aa3cb269c0772fd1c4849587041d81765aac816004cad05eea29cad7cc90e31dc85b1f4886ea08c643b4495f7920f93c2a73358bdfce6edb8 shortuuid-1.0.11.tar.gz
"
diff --git a/testing/py3-shtab/APKBUILD b/testing/py3-shtab/APKBUILD
index f6c7a49ba78..21b7f95f538 100644
--- a/testing/py3-shtab/APKBUILD
+++ b/testing/py3-shtab/APKBUILD
@@ -1,28 +1,34 @@
# Maintainer: Keith Toh <ktprograms@gmail.com>
pkgname=py3-shtab
-pkgver=1.5.4
-pkgrel=0
+pkgver=1.6.4
+pkgrel=1
pkgdesc="Automagic shell tab completion for Python CLI applications"
url="https://docs.iterative.ai/shtab/"
arch="noarch"
license="Apache-2.0"
depends="python3"
-makedepends="py3-setuptools py3-setuptools_scm py3-wheel"
+makedepends="py3-setuptools py3-setuptools_scm py3-wheel py3-gpep517 py3-installer"
checkdepends="py3-pytest py3-pytest-cov py3-pytest-timeout bash"
-subpackages="$pkgname-doc"
+subpackages="$pkgname-doc $pkgname-pyc"
source="https://github.com/iterative/shtab/releases/download/v$pkgver/shtab-$pkgver.tar.gz"
builddir="$srcdir/shtab-$pkgver"
build() {
- python3 setup.py build
+ export SETUPTOOLS_SCM_PRETEND_VERSION=$pkgver
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- pytest
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
doc() {
@@ -34,5 +40,5 @@ doc() {
}
sha512sums="
-6c9877971fdcb5d7adb684aa873503a51b51db7a84368a58f36d5c86cef31260267d5219173cf250542773188aac46b31000c402d61a6cd33c25fd82b21b7b35 shtab-1.5.4.tar.gz
+35db209e2dcb2342c944f8cf37dafa3191e01e304037cb46dec6742b4a29724e30912f23986e989f7d159f253f4b61cff5f02262716efb1aab030ecd9511b984 shtab-1.6.4.tar.gz
"
diff --git a/testing/py3-simber/APKBUILD b/testing/py3-simber/APKBUILD
new file mode 100644
index 00000000000..901918aa583
--- /dev/null
+++ b/testing/py3-simber/APKBUILD
@@ -0,0 +1,32 @@
+# Contributor: Dmitry Zakharchenko <dmitz@disroot.org>
+# Maintainer: Dmitry Zakharchenko <dmitz@disroot.org>
+pkgname=py3-simber
+_pkgname=simber
+pkgver=0.2.6
+pkgrel=3
+pkgdesc="Simple, minimal and powerful logging library for Python"
+url="https://github.com/deepjyoti30/simber"
+arch="noarch"
+license="MIT"
+depends="py3-colorama"
+makedepends="py3-setuptools"
+checkdepends="py3-pytest $depends"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/deepjyoti30/simber/archive/$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ python3 setup.py build
+}
+
+check() {
+ python3 -m pytest
+}
+
+package() {
+ python3 setup.py install --skip-build --root="$pkgdir"
+}
+
+sha512sums="
+805f5c4aa08e1a6af803528648d3359d745fafba5e44ac416a8bdfc1e9c4ec80e9436aecd82e5b8efb16ec8b346074dc5b1300026ae21e4211777a0eb1642986 py3-simber-0.2.6.tar.gz
+"
diff --git a/testing/py3-simframe/APKBUILD b/testing/py3-simframe/APKBUILD
deleted file mode 100644
index fef99d9cb8e..00000000000
--- a/testing/py3-simframe/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Contributor: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-# Maintainer: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-pkgname=py3-simframe
-_pkgorig=simframe
-pkgver=1.0.2
-pkgrel=0
-pkgdesc="Python framework for setting up and running scientific simulations"
-url="https://github.com/stammler/simframe/"
-arch="noarch !riscv64 !s390x !armhf !armv7 !x86" #py3-matplotlib #py3-dill
-license="BSD"
-depends="python3 py3-dill py3-h5py py3-matplotlib py3-scipy py3-numpy"
-checkdepends="python3-dev py3-pytest"
-makedepends="py3-setuptools"
-source="$pkgname-$pkgver.tar.gz::https://github.com/stammler/$_pkgorig/archive/$pkgver/$_pkgorig-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgorig-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 -m pytest
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-3ca6e63aa212999a0f139ceb0ae470ba37fed148523e322229400a4aeb18aca7eb64759151c076097b976ff0b01f2598251fbf15d90f6b6957f4198a7c9e2fee py3-simframe-1.0.2.tar.gz
-"
diff --git a/testing/py3-simplematch/APKBUILD b/testing/py3-simplematch/APKBUILD
new file mode 100644
index 00000000000..52504cd69c3
--- /dev/null
+++ b/testing/py3-simplematch/APKBUILD
@@ -0,0 +1,39 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-simplematch
+pkgver=1.4
+pkgrel=1
+pkgdesc="Minimal, super readable string pattern matching"
+url="https://github.com/tfeldmann/simplematch"
+arch="noarch"
+license="MIT"
+makedepends="
+ py3-gpep517
+ py3-poetry-core
+ py3-wheel
+ "
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/tfeldmann/simplematch/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/simplematch-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+fe11eed63cd5ec916cafbd61da77bda5049a4f5ed0dece36e21e2350625fa9fc77f2ecbfffe04d2414cc3d0b553a635543af6ed56eb1fbfc871ab33499995f00 py3-simplematch-1.4.tar.gz
+"
diff --git a/testing/py3-simplesoapy/APKBUILD b/testing/py3-simplesoapy/APKBUILD
index 733fd1fbf49..6d183f58e94 100644
--- a/testing/py3-simplesoapy/APKBUILD
+++ b/testing/py3-simplesoapy/APKBUILD
@@ -2,13 +2,14 @@
# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
pkgname=py3-simplesoapy
pkgver=1.5.1
-pkgrel=3
+pkgrel=6
pkgdesc="Simple pythonic wrapper for SoapySDR library"
url="https://github.com/xmikos/simplesoapy"
arch="noarch"
license="MIT"
depends="python3 py3-numpy py3-soapy-sdr"
makedepends="py3-setuptools soapy-sdr-dev"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/xmikos/simplesoapy/archive/v$pkgver.tar.gz"
builddir="$srcdir/simplesoapy-$pkgver"
options="!check" # no unit tests provided
@@ -18,7 +19,7 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
diff --git a/testing/py3-simplespectral/APKBUILD b/testing/py3-simplespectral/APKBUILD
index 666dcd89edf..01a1c149f79 100644
--- a/testing/py3-simplespectral/APKBUILD
+++ b/testing/py3-simplespectral/APKBUILD
@@ -2,12 +2,13 @@
# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
pkgname=py3-simplespectral
pkgver=1.0.0
-pkgrel=1
+pkgrel=4
pkgdesc="Heavily simplified scipy.signal.spectral module"
url="https://github.com/xmikos/simplespectral"
arch="noarch"
license="MIT"
depends="python3 py3-numpy py3-scipy py3-setuptools"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/xmikos/simplespectral/archive/v$pkgver.tar.gz"
builddir="$srcdir/simplespectral-$pkgver"
options="!check" # no checks provided
@@ -23,7 +24,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="16da3cb19cd7c567b64709a26ed5def7eb3047b08e2cb48db6962036a6c3e34c122dadf71821b6a22df55ebcf3c2ff95e3af3898efc8b4a6d5902e48de8e050c py3-simplespectral-1.0.0.tar.gz"
diff --git a/testing/py3-sklearn-nature-inspired-algorithms/APKBUILD b/testing/py3-sklearn-nature-inspired-algorithms/APKBUILD
deleted file mode 100644
index ac576dbd1d2..00000000000
--- a/testing/py3-sklearn-nature-inspired-algorithms/APKBUILD
+++ /dev/null
@@ -1,41 +0,0 @@
-# Contributor: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-# Maintainer: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-pkgname=py3-sklearn-nature-inspired-algorithms
-_pkgorig=Sklearn-Nature-Inspired-Algorithms
-pkgver=0.9.0
-pkgrel=0
-pkgdesc="Nature-inspired algorithms for hyper-parameter tuning of Scikit-Learn models"
-url="https://github.com/timzatko/Sklearn-Nature-Inspired-Algorithms"
-arch="noarch !riscv64 !s390x !armv7" # py3-matplotlib, py3-scikit-learn, assertion errors
-license="MIT"
-depends="
- py3-matplotlib
- py3-niapy
- py3-numpy
- py3-pandas
- py3-scikit-learn
- py3-seaborn
- py3-toml
- python3
- "
-makedepends="py3-setuptools poetry py3-platformdirs py3-threadpoolctl py3-installer"
-checkdepends="py3-pytest"
-source="https://github.com/timzatko/Sklearn-Nature-Inspired-Algorithms/archive/v$pkgver/$_pkgorig-$pkgver.tar.gz"
-builddir="$srcdir/Sklearn-Nature-Inspired-Algorithms-$pkgver"
-
-build() {
- GIT_DIR="$builddir" poetry build -f wheel
-}
-
-check() {
- python3 -m unittest tests
-}
-
-package() {
- python3 -m installer -d "$pkgdir" \
- dist/sklearn_nature_inspired_algorithms-$pkgver-py3-none-any.whl
-}
-
-sha512sums="
-669a3e6f38bbd6b57c663d659745ac28ee3019d96e443164a7362662523476c8c63587de30e52c380e619a4a7e9c0131d627ea554761b4848950bdfe0ba67ab5 Sklearn-Nature-Inspired-Algorithms-0.9.0.tar.gz
-"
diff --git a/testing/py3-slidge-style-parser/APKBUILD b/testing/py3-slidge-style-parser/APKBUILD
new file mode 100644
index 00000000000..7d0f8662eff
--- /dev/null
+++ b/testing/py3-slidge-style-parser/APKBUILD
@@ -0,0 +1,45 @@
+# Automatically generated by apkbuild-pypi, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=py3-slidge-style-parser
+#_pkgreal is used by apkbuild-pypi to find modules at PyPI
+_pkgreal=slidge-style-parser
+pkgver=0.1.6
+pkgrel=1
+pkgdesc="Style parser for Slidge"
+url="https://pypi.org/project/slidge-style-parser/"
+arch="all"
+license="AGPL-3.0-or-later"
+makedepends="cargo py3-gpep517 py3-maturin"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/s/slidge-style-parser/slidge_style_parser-$pkgver.tar.gz"
+builddir="$srcdir/slidge_style_parser-$pkgver"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --locked
+}
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --config-json '{"build-args": "--frozen"}' \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+e006e455f5139e58b88e515b42b31b9d35a2c981a5b1e3284cb1661c04d7ffaa0781bab7faffb77d4ba40ee5efee285468ec41b296e6f130418a16a12b3e2086 slidge_style_parser-0.1.6.tar.gz
+"
diff --git a/testing/py3-slixmpp/APKBUILD b/testing/py3-slixmpp/APKBUILD
new file mode 100644
index 00000000000..71bfb074106
--- /dev/null
+++ b/testing/py3-slixmpp/APKBUILD
@@ -0,0 +1,63 @@
+# Contributor: Sam Whited <sam@samwhited.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=py3-slixmpp
+_pkgname=slixmpp
+pkgver=1.8.5
+pkgrel=2
+pkgdesc="Fork of the SleekXMPP XMPP library for async IO and Python 3.7+"
+url="https://slixmpp.readthedocs.io/en/latest/"
+arch="all"
+license="MIT"
+depends="
+ py3-aiodns
+ py3-aiohttp
+ py3-cryptography
+ py3-defusedxml
+ py3-emoji
+ "
+makedepends="
+ cython
+ libidn-dev
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ python3-dev
+ "
+checkdepends="
+ cmd:gpg
+ py3-pytest
+ "
+subpackages="
+ $pkgname-doc
+ $pkgname-pyc
+ "
+source="https://files.pythonhosted.org/packages/source/s/slixmpp/slixmpp-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+# secfixes:
+# 1.8.3-r0:
+# - CVE-2022-45197
+
+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 \
+ --ignore tests/live_test.py
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" .dist/*.whl
+
+ install -Dm644 LICENSE -t "$pkgdir"/usr/share/licenses/$pkgname/
+ install -Dm644 README.rst -t "$pkgdir"/usr/share/doc/$pkgname/
+}
+
+sha512sums="
+f2e123bd462097d0b7dc28cd960f723419f4fa2af59c8f5b7d30a05135c2f9fc6982e6d2855ea10b22936bdd4a96faeae73f87a495e2d1f10e6c63cdcb412665 slixmpp-1.8.5.tar.gz
+"
diff --git a/testing/py3-snapshottest/APKBUILD b/testing/py3-snapshottest/APKBUILD
index 287734f81a5..994327719b5 100644
--- a/testing/py3-snapshottest/APKBUILD
+++ b/testing/py3-snapshottest/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Bart Ribbers <bribbers@disroot.org>
pkgname=py3-snapshottest
pkgver=0.6.0
-pkgrel=1
+pkgrel=3
pkgdesc="Snapshot testing for pytest, unittest, Django, and Nose"
url="https://github.com/syrusakbary/snapshottest"
arch="noarch"
@@ -18,7 +18,9 @@ checkdepends="
py3-nose
py3-pytest
py3-pytest-cov
+ py3-six
"
+subpackages="$pkgname-pyc"
source="https://pypi.python.org/packages/source/s/snapshottest/snapshottest-$pkgver.tar.gz"
builddir="$srcdir/snapshottest-$pkgver"
@@ -31,7 +33,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
diff --git a/testing/py3-soappy/APKBUILD b/testing/py3-soappy/APKBUILD
index 30f37b38990..0b54d805cb7 100644
--- a/testing/py3-soappy/APKBUILD
+++ b/testing/py3-soappy/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Noel Kuntze <noel.kuntze@thermi.consulting>
# Maintainer: Noel Kuntze <noel.kuntze@thermi.consulting>
pkgname=py3-soappy
-pkgver=0.52.25
+pkgver=0.52.28
pkgrel=2
pkgdesc="Simple to use SOAP library for Python"
url="https://github.com/Synerty/SOAPpy-py3"
@@ -10,6 +10,7 @@ arch="noarch"
license="BSD-3-Clause-Attribution"
depends="py3-defusedxml py3-wstools py3-m2crypto"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://pypi.io/packages/source/S/SOAPpy-py3/SOAPpy-py3-$pkgver.tar.gz"
builddir="$srcdir/SOAPpy-py3-$pkgver"
@@ -18,7 +19,9 @@ build() {
}
package() {
- python3 setup.py install --root="$pkgdir" --optimize=1
+ python3 setup.py install --root="$pkgdir"
}
-sha512sums="5a81f863f3ba61c507767bdbef3fd7830f0a435280cf0ccc2ff0d74f98cf6b917294e96fb5a5bf3c132545cb28c2203e00707ea9c31a5bb2b0be1f37863b821f SOAPpy-py3-0.52.25.tar.gz"
+sha512sums="
+fcfee577ccf142900215c52567c7393b8df268feca1ceccb4978b207733bce33cd2b17f4e4064e87c42d38d749e305f698615fde29531c027b661c388ba33771 SOAPpy-py3-0.52.28.tar.gz
+"
diff --git a/testing/py3-soapy_power/APKBUILD b/testing/py3-soapy_power/APKBUILD
index b3504b1fdd3..a407013d5ad 100644
--- a/testing/py3-soapy_power/APKBUILD
+++ b/testing/py3-soapy_power/APKBUILD
@@ -2,13 +2,14 @@
# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
pkgname=py3-soapy_power
pkgver=1.6.1
-pkgrel=1
+pkgrel=4
pkgdesc="Obtain power spectrum from SoapySDR devices"
url="https://github.com/xmikos/soapy_power"
arch="noarch"
license="MIT"
depends="python3 py3-numpy py3-simplesoapy py3-simplespectral py3-setuptools"
checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/xmikos/soapy_power/archive/v$pkgver.tar.gz"
builddir="$srcdir/soapy_power-$pkgver"
@@ -21,7 +22,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="19aa0e80a7b67cb29d842343c09b8ca2e3068583c8117a8151c5b47f1a34369f0ec833f038595323712986c9348b14a43dc1fdc6516adb40de6b42a281d782e1 py3-soapy_power-1.6.1.tar.gz"
diff --git a/testing/py3-socksio/APKBUILD b/testing/py3-socksio/APKBUILD
deleted file mode 100644
index 03e5f5845ea..00000000000
--- a/testing/py3-socksio/APKBUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-# Contributor: Michał Polański <michal@polanski.me>
-# Maintainer: Michał Polański <michal@polanski.me>
-pkgname=py3-socksio
-pkgver=1.0.0
-pkgrel=0
-pkgdesc="Sans-I/O implementation of SOCKS4, SOCKS4A, and SOCKS5"
-url="https://pypi.org/project/socksio/"
-license="MIT"
-arch="noarch"
-depends="python3"
-makedepends="py3-setuptools"
-checkdepends="py3-pytest py3-pytest-cov"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/s/socksio/socksio-$pkgver.tar.gz"
-builddir="$srcdir/socksio-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- PYTHONPATH="$PWD/build/lib" pytest
-}
-
-package() {
- python3 setup.py install --root="$pkgdir" --skip-build
-
- install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
-}
-
-sha512sums="
-89bce7294555e2623df68e99352c27b83af38a4fcc4e3b86c8826c9c4bf545eeaf0a6328b000cfe1d286fa442c756c4579b4887cff03bc9e559cd66414a7ac6f py3-socksio-1.0.0.tar.gz
-"
diff --git a/testing/py3-solidpython/APKBUILD b/testing/py3-solidpython/APKBUILD
index 6cddc32e6a5..bee98aec33e 100644
--- a/testing/py3-solidpython/APKBUILD
+++ b/testing/py3-solidpython/APKBUILD
@@ -1,44 +1,61 @@
# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
pkgname=py3-solidpython
-pkgver=1.0.2
-pkgrel=3
+pkgver=1.1.2
+pkgrel=2
pkgdesc="Python library to generated OpenSCAD code"
url="https://github.com/SolidCode/SolidPython"
arch="noarch !aarch64 !armv7 !armhf" # openscad
license="LGPL-2.1-or-later"
depends="
openscad
+ py3-astroid
py3-euclid3<0.2.0
+ py3-mccabe
+ py3-platformdirs
+ py3-ply
py3-prettytable
py3-pypng
py3-regex
+ py3-setuptools
+ py3-tomlkit
python3
"
makedepends="
- py3-setuptools
+ py3-gpep517
+ py3-poetry-core
"
_pyname="solidpython"
-_pypiprefix="${_pyname%${_pyname#?}}"
+_pypiprefix="${_pyname%"${_pyname#?}"}"
+subpackages="$pkgname-pyc"
source="
https://files.pythonhosted.org/packages/source/$_pypiprefix/$_pyname/$_pyname-$pkgver.tar.gz
- fix-versions.patch
+ poetry-core.patch
"
builddir="$srcdir/$_pyname-$pkgver"
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- # Run the loop ourselves instead of relying on bash
- local i; for i in solid/test/test_*.py; do
- echo "$i"
- PYTHONPATH="$PWD/build/lib" python3 "$i"
- done
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m unittest discover solid/test
+ # local i; for i in solid/test/test_*.py; do
+ # echo "$i"
+ # python3 "$i"
+ # done
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+ rm -r "$pkgdir"/usr/lib/python3*/site-packages/solid/test
}
-sha512sums="eeb7c68e54055fcfd5b53cf9c2745ea4dac602dbce158c8c7559dde21372c87cacbcac9c203cf0b577bd292a59304d48e8a4c7afcf9afdd9cc6c6cf0286e1d09 solidpython-1.0.2.tar.gz
-41e71d68ba0381ea44ab206a95549558991e923a218d4a8d7730a8baa21922762d0d3555a61e5d81bfb39d1918627deb1f17fa2347d279a3cf9b14cbf8270ae4 fix-versions.patch"
+
+sha512sums="
+b66b530fc1abc9c8c3044ad0bb74f7dab2932c77e6374a1e46573f934c2d59af9c24dae86e54201dec7ebae4d3e0dbfa2c2733fa18394a9ce87d5fd562544dc0 solidpython-1.1.2.tar.gz
+df25c55af2d6dc6744b344deab129b5128c60d3c768f92018cbf7ceeca06f414fe427c231045ca8f0586a6f2bfbd598f8c2964492bf5def620f4a38ba5d84c96 poetry-core.patch
+"
diff --git a/testing/py3-solidpython/fix-versions.patch b/testing/py3-solidpython/fix-versions.patch
deleted file mode 100644
index 43da9ba87a7..00000000000
--- a/testing/py3-solidpython/fix-versions.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-Upstream: No
-Reason: allow more liberal versions to be used
-
---- solidpython-1.0.2.orig/PKG-INFO
-+++ solidpython-1.0.2/PKG-INFO
-@@ -21,8 +21,8 @@
- Classifier: Topic :: Scientific/Engineering :: Mathematics
- Classifier: Topic :: Software Development :: Libraries :: Python Modules
- Requires-Dist: PrettyTable (==0.7.2)
--Requires-Dist: euclid3 (>=0.1.0,<0.2.0)
--Requires-Dist: pypng (>=0.0.19,<0.0.20)
--Requires-Dist: regex (>=2019.4,<2020.0)
-+Requires-Dist: euclid3 (>=0.1.0)
-+Requires-Dist: pypng (>=0.0.19)
-+Requires-Dist: regex (>=2019.4)
- Project-URL: Documentation, https://solidpython.readthedocs.io/en/latest/
- Project-URL: Repository, https://github.com/SolidCode/SolidPython
---- solidpython-1.0.2.orig/setup.py
-+++ solidpython-1.0.2/setup.py
-@@ -13,9 +13,9 @@
-
- install_requires = \
- ['PrettyTable==0.7.2',
-- 'euclid3>=0.1.0,<0.2.0',
-- 'pypng>=0.0.19,<0.0.20',
-- 'regex>=2019.4,<2020.0']
-+ 'euclid3>=0.1.0',
-+ 'pypng>=0.0.19',
-+ 'regex>=2019.4']
-
- setup_kwargs = {
- 'name': 'solidpython',
diff --git a/testing/py3-solidpython/poetry-core.patch b/testing/py3-solidpython/poetry-core.patch
new file mode 100644
index 00000000000..bfb6010ead8
--- /dev/null
+++ b/testing/py3-solidpython/poetry-core.patch
@@ -0,0 +1,11 @@
+diff --git a/pyproject.toml b/pyproject.toml
+index e29373a..3ce3993 100644
+--- a/pyproject.toml
++++ b/pyproject.toml
+@@ -56,5 +56,5 @@ requires = [
+
+ ]
+
+-build-backend = "poetry.masonry.api"
++build-backend = "poetry.core.masonry.api"
+
diff --git a/testing/py3-sortedcollections/APKBUILD b/testing/py3-sortedcollections/APKBUILD
new file mode 100644
index 00000000000..8c18ef9f0b0
--- /dev/null
+++ b/testing/py3-sortedcollections/APKBUILD
@@ -0,0 +1,29 @@
+# Contributor: Sam Whited <sam@samwhited.com>
+# Maintainer: Sam Whited <sam@samwhited.com>
+pkgname=py3-sortedcollections
+_pkgname=sortedcollections
+pkgver=2.1.0
+pkgrel=4
+pkgdesc="A Python library containing various sorted collections."
+url="https://pypi.org/project/sortedcollections/"
+arch="all"
+license="Apache-2.0"
+depends="python3"
+makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+options="!check" # tests not included in source package.
+
+build() {
+ python3 setup.py build
+}
+
+package() {
+ python3 setup.py install --skip-build --root="$pkgdir"
+ install -Dm644 LICENSE README.rst -t "$pkgdir"/usr/share/licenses/$pkgname
+}
+
+sha512sums="
+e0ea72c24300c156bd9f9d40c42c92ad4a6391f7fa17675cf956a02617b9614aa329c24e3c7a9abd6662d45cf4f12f6d04296d69b287bae11b5f320481fd5748 sortedcollections-2.1.0.tar.gz
+"
diff --git a/testing/py3-spacy/APKBUILD b/testing/py3-spacy/APKBUILD
deleted file mode 100644
index f78a565a4aa..00000000000
--- a/testing/py3-spacy/APKBUILD
+++ /dev/null
@@ -1,44 +0,0 @@
-# Contributor: Oleg Titov <oleg.titov@gmail.com>
-# Maintainer: Oleg Titov <oleg.titov@gmail.com>
-pkgname=py3-spacy
-pkgver=2.3.2
-pkgrel=1
-pkgdesc="Industrial-strength Natural Language Processing (NLP)"
-url="https://spacy.io/"
-arch="x86_64" # limited by py3-blis as it has highly optimized routines for x86_64 only
- # and py3-srsly as it does not pass tests for x86 and aarch64, reported upstream
-arch="" # Requires 'wheel' for some reason
-license="MIT"
-depends="
- python3
- py3-numpy
- py3-jsonschema
- py3-thinc
- py3-srsly
- py3-tqdm
- py3-wasabi
- py3-pyrsistent
- py3-plac
- py3-catalogue
- "
-makedepends="python3-dev py3-setuptools cython py3-requests"
-checkdepends="py3-pytest py3-pytest-timeout py3-mock py3-flake8"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/explosion/spaCy/archive/v$pkgver.tar.gz"
-builddir=$srcdir/spaCy-$pkgver
-
-build() {
- python3 setup.py build_ext --inplace
-}
-
-check() {
- pytest-3 spacy
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-
- install -Dm644 README.md "$pkgdir/usr/share/doc/$pkgname/README.md"
-}
-
-sha512sums="48ad852a68c5f348f08bd1406936722ad45b850b61c33b8e6647c861856ffef387d85fbda978f4b3a1205774926a60c02cb4250bb2e38f74959f932201324abd py3-spacy-2.3.2.tar.gz"
diff --git a/testing/py3-sphinx-argparse/APKBUILD b/testing/py3-sphinx-argparse/APKBUILD
index 88442167553..b87294adf32 100644
--- a/testing/py3-sphinx-argparse/APKBUILD
+++ b/testing/py3-sphinx-argparse/APKBUILD
@@ -1,21 +1,23 @@
-# Maintainer: Keith Toh <ktprograms@gmail.com>
+# Contributor: Keith Toh <ktprograms@gmail.com>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=py3-sphinx-argparse
-pkgver=0.3.1
-pkgrel=1
+pkgver=0.4.0
+pkgrel=3
pkgdesc="Sphinx extension that automatically documents argparse commands and options"
url="https://sphinx-argparse.readthedocs.io/en/latest/"
arch="noarch"
license="MIT"
depends="python3 py3-sphinx"
-makedepends="py3-build py3-installer py3-poetry-core py3-wheel"
+makedepends="py3-gpep517 py3-installer py3-poetry-core py3-wheel"
checkdepends="py3-pytest"
-source="sphinx-argparse-$pkgver.tar.gz::https://github.com/ashb/sphinx-argparse/archive/refs/tags/$pkgver.tar.gz
- fix-python3.10-tests.patch"
+subpackages="$pkgname-pyc"
+source="sphinx-argparse-$pkgver.tar.gz::https://github.com/ashb/sphinx-argparse/archive/refs/tags/v$pkgver.tar.gz"
builddir="$srcdir/sphinx-argparse-$pkgver"
build() {
- # XXX: hack for poetry to not ignore files
- GIT_DIR=. python3 -m build --no-isolation --wheel
+ gpep517 build-wheel \
+ --output-fd 3 3>&1 >&2 \
+ --wheel-dir .dist
}
check() {
@@ -24,11 +26,10 @@ check() {
package() {
python3 -m installer -d "$pkgdir" \
- dist/sphinx_argparse-$pkgver-py2.py3-none-any.whl
+ .dist/sphinx_argparse-$pkgver-py3-none-any.whl
install -Dm644 LICENSE -t "$pkgdir"/usr/share/licenses/$pkgname/
}
sha512sums="
-3d289c90165eb6a3d7a94dff8e6a429a49eb404ce373e80e007a0cd9abaae1e1236f5393df2fbf11701c349dade9d199640dc398064da4fd50a58a90eb3f8f12 sphinx-argparse-0.3.1.tar.gz
-790aef1651fcb5160058e8359b13368fbbbb01dafe8d792187e942a542f5cce9b84d1c44b85f75782f373b9ce3dca976ed703fb496f6f8fe52dd6708038edc29 fix-python3.10-tests.patch
+be08ca4eed2786f28dc2288024250577bc767fa9c596946202dc882653ee2d4f3f23230827f802b262c2a4889e6c8b85d01dceb5c494759e6551c8b471d1631f sphinx-argparse-0.4.0.tar.gz
"
diff --git a/testing/py3-sphinx-argparse/fix-python3.10-tests.patch b/testing/py3-sphinx-argparse/fix-python3.10-tests.patch
deleted file mode 100644
index ce74aa307fa..00000000000
--- a/testing/py3-sphinx-argparse/fix-python3.10-tests.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-Fix tests failing because of a change in Python 3.10 argparse
-
-Modified from https://github.com/ashb/sphinx-argparse/commit/a7b186aa60cf256dd91268ca3c18e78ef6644223
-Removed the changes to CI matrix since it doesn't exist in the PyPI tarball
-
-diff --git a/sphinxarg/parser.py b/sphinxarg/parser.py
-index 9a6f76a..89583c6 100644
---- a/sphinxarg/parser.py
-+++ b/sphinxarg/parser.py
-@@ -154,7 +154,9 @@ def parse_parser(parser, data=None, **kwargs):
- continue
-
- # Upper case "Positional Arguments" and "Optional Arguments" titles
-- if action_group.title == 'optional arguments':
-+ # Since python-3.10 'optional arguments' changed to 'options'
-+ # more info: https://github.com/python/cpython/pull/23858
-+ if action_group.title == 'optional arguments' or action_group.title == 'options':
- action_group.title = 'Named Arguments'
- if action_group.title == 'positional arguments':
- action_group.title = 'Positional Arguments'
diff --git a/testing/py3-sphinx-autoapi/APKBUILD b/testing/py3-sphinx-autoapi/APKBUILD
index fa71d527ae9..68de3a84ead 100644
--- a/testing/py3-sphinx-autoapi/APKBUILD
+++ b/testing/py3-sphinx-autoapi/APKBUILD
@@ -2,30 +2,38 @@
# Maintainer: Galen Abell <galen@galenabell.com>
pkgname=py3-sphinx-autoapi
_pyname=sphinx-autoapi
-pkgver=1.8.3
+pkgver=3.0.0
pkgrel=1
pkgdesc="Automatic API documentation for Sphinx"
url="https://sphinx-autoapi.readthedocs.io"
-arch="noarch !x86" # build breaks on x86
+arch="noarch !x86" # build breaks on x86
license="MIT"
-depends="python3 py3-astroid py3-jinja2 py3-sphinx py3-unidecode py3-yaml"
-makedepends="py3-setuptools"
-checkdepends="py3-mock py3-pytest"
-source="https://files.pythonhosted.org/packages/source/${_pyname%${_pyname#?}}/$_pyname/$_pyname-$pkgver.tar.gz"
+depends="python3 py3-astroid py3-jinja2 py3-sphinx py3-anyascii py3-yaml"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+checkdepends="py3-mock py3-pytest py3-beautifulsoup4"
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/s/$_pyname/$_pyname-$pkgver.tar.gz"
builddir="$srcdir/$_pyname-$pkgver"
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- PYTHONPATH="build:$PYTHONPATH" pytest -v
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ # Test requires network access
+ .testenv/bin/python3 -m pytest \
+ --deselect tests/python/test_pyintegration.py::TestPipeUnionModule::test_integration
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
-af6f1daa82cdb2795a0e1a12029d84906e365bd50968c44ded78c806026176f22ef1c2138332dde60a5343a0455d141c3046d75b65e7b9862aed816bb78066ec sphinx-autoapi-1.8.3.tar.gz
+f59fb203e1b867f02d5757fb3f58dcaf52b936eff67f4837ae75d9cbff24989d19bb254830bf0e2f90bae1760204e8900ea2e30573da654ad0b5223b9c39750d sphinx-autoapi-3.0.0.tar.gz
"
diff --git a/testing/py3-sphinx-autodoc-typehints/APKBUILD b/testing/py3-sphinx-autodoc-typehints/APKBUILD
index 43d58daebca..e9f87d36419 100644
--- a/testing/py3-sphinx-autodoc-typehints/APKBUILD
+++ b/testing/py3-sphinx-autodoc-typehints/APKBUILD
@@ -1,32 +1,39 @@
# Contributor: Galen Abell <galen@galenabell.com>
# Maintainer: Galen Abell <galen@galenabell.com>
pkgname=py3-sphinx-autodoc-typehints
-_pyname=sphinx_autodoc_typehints
-pkgver=1.15.3
+_pyname=sphinx-autodoc-typehints
+pkgver=2.0.1
pkgrel=0
pkgdesc="Type hints support for the Sphinx autodoc extension"
-url="https://github.com/agronholm/sphinx-autodoc-typehints"
+url="https://github.com/tox-dev/sphinx-autodoc-typehints"
arch="noarch"
license="MIT"
options="net"
depends="python3 py3-sphinx py3-typing-extensions"
-makedepends="py3-setuptools py3-setuptools_scm"
-checkdepends="py3-pytest py3-sphobjinv"
-source="https://files.pythonhosted.org/packages/source/s/$_pyname/$_pyname-$pkgver.tar.gz"
+makedepends="py3-gpep517 py3-installer py3-hatchling py3-hatch-vcs"
+checkdepends="py3-pytest py3-sphobjinv py3-nptyping"
+subpackages="$pkgname-pyc"
+source="$_pyname-$pkgver.tar.gz::https://github.com/tox-dev/sphinx-autodoc-typehints/archive/refs/tags/$pkgver.tar.gz"
builddir="$srcdir/$_pyname-$pkgver"
build() {
- python3 setup.py build
+ export SETUPTOOLS_SCM_PRETEND_VERSION=$pkgver
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- PYTHONPATH="build/lib" pytest
+ python3 -m venv --clear --without-pip --system-site-packages test-env
+ test-env/bin/python3 -m installer .dist/sphinx_autodoc_typehints*.whl
+ test-env/bin/python3 -m pytest
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/sphinx_autodoc_typehints*.whl
}
sha512sums="
-eb732471846b0aad8cd1b8ae9810f237c3d2e3f97d637af6fababf8a9620dd468deb0e037b6b27a31ecb1b559ab0186051c69f5fa294a6d45a970e6d6f6ec9b5 sphinx_autodoc_typehints-1.15.3.tar.gz
+0bda871f30f523b3e87a94a164668632c7045a5b9b7ac5b3e6d8ce39bc6e462132aaba713e6514e38fdd0507805e2475f694933c3395e2526b335ee36ecdd8f7 sphinx-autodoc-typehints-2.0.1.tar.gz
"
diff --git a/testing/py3-sphinx-autorun/APKBUILD b/testing/py3-sphinx-autorun/APKBUILD
deleted file mode 100644
index d19ac7cce35..00000000000
--- a/testing/py3-sphinx-autorun/APKBUILD
+++ /dev/null
@@ -1,27 +0,0 @@
-# Contributor: Dhruvin Gandhi <contact@dhruvin.dev>
-# Maintainer: Dhruvin Gandhi <contact@dhruvin.dev>
-pkgname=py3-sphinx-autorun
-_pyname=sphinx-autorun
-pkgver=1.1.1
-pkgrel=0
-pkgdesc="Sphinx extension to attach the output of runblock directive to the document"
-url="https://github.com/WhyNotHugo/sphinx-autorun"
-arch="noarch"
-license="BSD-2-Clause"
-depends="python3 py3-sphinx"
-makedepends="py3-setuptools py3-setuptools_scm"
-options="!check" # no tests
-source="https://files.pythonhosted.org/packages/source/${_pyname:0:1}/$_pyname/$_pyname-$pkgver.tar.gz"
-builddir="$srcdir/$_pyname-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-cfe99a9cd249d142fa52986964bca7fa392d15036e69f504b3ea0fdabd37a7c43329101df7cb5d02ff614b9da9cbef15a39f519bf416daa0589829fb7b21a482 sphinx-autorun-1.1.1.tar.gz
-"
diff --git a/testing/py3-sphinx-click/APKBUILD b/testing/py3-sphinx-click/APKBUILD
deleted file mode 100644
index 2632b995fff..00000000000
--- a/testing/py3-sphinx-click/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Contributor: Dhruvin Gandhi <contact@dhruvin.dev>
-# Maintainer: Dhruvin Gandhi <contact@dhruvin.dev>
-pkgname=py3-sphinx-click
-_pyname=sphinx-click
-pkgver=3.0.2
-pkgrel=0
-pkgdesc="Sphinx plugin to extract documentation from click-based applications"
-url="https://github.com/click-contrib/sphinx-click"
-arch="noarch"
-license="MIT"
-depends="python3 py3-sphinx py3-click py3-docutils"
-makedepends="py3-setuptools py3-pbr"
-checkdepends="py3-pytest py3-click py3-coverage"
-source="https://files.pythonhosted.org/packages/source/${_pyname:0:1}/$_pyname/$_pyname-$pkgver.tar.gz"
-builddir="$srcdir/$_pyname-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- pytest
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-dcf60ca31dcc7c1f45157ed88a5d723d8b531f01b617fb0cc4ada8f09c709b23b55a86bcf8bbe66bf4c2f5ef77329123d271724887022a43b86747087e87ed7c sphinx-click-3.0.2.tar.gz
-"
diff --git a/testing/py3-sphinx-theme-better/APKBUILD b/testing/py3-sphinx-theme-better/APKBUILD
index bb3c53c4832..e2bc81c0be0 100644
--- a/testing/py3-sphinx-theme-better/APKBUILD
+++ b/testing/py3-sphinx-theme-better/APKBUILD
@@ -3,13 +3,14 @@
pkgname=py3-sphinx-theme-better
_pkgname=sphinx-better-theme
pkgver=0.1.5
-pkgrel=3
+pkgrel=6
pkgdesc="The Better Sphinx theme"
url="https://github.com/irskep/sphinx-better-theme"
arch="noarch"
license="BSD-2-Clause"
depends="py3-sphinx"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/irskep/sphinx-better-theme/archive/refs/tags/v$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -22,7 +23,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="057c0f0c57fa7a9637997f22ba9931844020ba537f5eafaf9504352fe6ae70fc2d10c0dc6fb06f8ab31c45d7cf4760e9e3047aaaa105060af4ead04de31c8af1 py3-sphinx-theme-better-0.1.5.tar.gz"
diff --git a/testing/py3-sphinx-theme-bootstrap/APKBUILD b/testing/py3-sphinx-theme-bootstrap/APKBUILD
index 19e178a76e1..f7ab98e6c63 100644
--- a/testing/py3-sphinx-theme-bootstrap/APKBUILD
+++ b/testing/py3-sphinx-theme-bootstrap/APKBUILD
@@ -2,18 +2,18 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-sphinx-theme-bootstrap
_pkgname=sphinx-bootstrap-theme
-pkgver=0.8.0
-pkgrel=1
+pkgver=0.8.1
+pkgrel=3
pkgdesc="The Bootstrap Sphinx theme"
url="http://ryan-roemer.github.com/sphinx-bootstrap-theme"
arch="noarch"
license="MIT"
depends="python3 py3-sphinx"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="$_pkgname-$pkgver.tar.gz::https://github.com/ryan-roemer/sphinx-bootstrap-theme/archive/refs/tags/v$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-sphinx-theme-bootstrap" # Backwards compatibility
replaces="py-sphinx-theme-bootstrap=$pkgver-r$pkgrel" # Backwards compatibility
build() {
@@ -21,9 +21,9 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
-471519ecf46c359a9c036b1ba15245b4a5d499263560dde7a7217a1a17a62e8f559359fd66de9c1f35c150314a68d62e3b9bcff8ff018bff909ece9284bb948f sphinx-bootstrap-theme-0.8.0.tar.gz
+de56b56bbb729c9d4f98697a1d312555ddb22c05588fb00e0417075f8b500a6cb09c8918276f4a59900ceec1374f1355cd4919b012505a37481de970f0172399 sphinx-bootstrap-theme-0.8.1.tar.gz
"
diff --git a/testing/py3-sphinx-theme-bw/APKBUILD b/testing/py3-sphinx-theme-bw/APKBUILD
index a61fc06517d..eb7085127aa 100644
--- a/testing/py3-sphinx-theme-bw/APKBUILD
+++ b/testing/py3-sphinx-theme-bw/APKBUILD
@@ -3,22 +3,26 @@
pkgname=py3-sphinx-theme-bw
_pkgname=bw_sphinxtheme
pkgver=0.1.8
-pkgrel=3
+pkgrel=7
pkgdesc="A black and white Sphinx theme"
url="https://pypi.org/project/bw_sphinxtheme"
arch="noarch"
license="BSD-3-Clause"
depends="py3-sphinx"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="a89d9892d431ddf916d6ad4eebe43c2fa7ce2a079c926f9f8e12ea54e3a0c2a76cc933e9365ea811c72cd19a7737c6972b9cc52009ee1d4bfda81bd7a948b50e bw_sphinxtheme-0.1.8.tar.gz"
diff --git a/testing/py3-sphinx-theme-cloud/APKBUILD b/testing/py3-sphinx-theme-cloud/APKBUILD
index 39ea051d89e..10ae66edbc8 100644
--- a/testing/py3-sphinx-theme-cloud/APKBUILD
+++ b/testing/py3-sphinx-theme-cloud/APKBUILD
@@ -2,26 +2,50 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-sphinx-theme-cloud
_pkgname=cloud_sptheme
-pkgver=1.9.4
-pkgrel=3
+pkgver=1.10.0
+pkgrel=2
pkgdesc="The Cloud Sphinx theme"
url="https://bitbucket.org/ecollins/cloud_sptheme"
arch="noarch"
license="BSD-3-Clause"
-depends="python3 py3-sphinx"
-makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
+depends="
+ py3-sphinx
+ python3
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="py3-mock"
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz
+ markup.patch
+ "
builddir="$srcdir"/$_pkgname-$pkgver
+options="!check" # mock fails
replaces="py-sphinx-theme-cloud" # Backwards compatibility
provides="py-sphinx-theme-cloud=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages test-env
+ test-env/bin/python3 -m installer .dist/*.whl
+ test-env/bin/python3 -m unittest discover
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
-sha512sums="83293e81c4430b457be25b9374b8e20d0c267acf6dae493766525cf5364f49996900cde0c64987ccf8ec65fde69d9aa1f47a56aa80d2325bd2346d356c503b7a cloud_sptheme-1.9.4.tar.gz"
+sha512sums="
+296a7db1e30b5012ebaf4117db1ed72cf109ff7bb4dc08c9cce5c7822ca68a5a8f53c8dd84df2780aabcce0509d1cfc48ab459ba3879d8721bbf8ca730307dda cloud_sptheme-1.10.0.tar.gz
+b1af0a7fc60837511ed2be170e1db6649873f3803be4b127d39c76326507af0e7c64b810e84a6046f11078392b1b4fb1dbd4bc0b02670676011b72f5100c6c35 markup.patch
+"
diff --git a/testing/py3-sphinx-theme-cloud/markup.patch b/testing/py3-sphinx-theme-cloud/markup.patch
new file mode 100644
index 00000000000..606a7dfa788
--- /dev/null
+++ b/testing/py3-sphinx-theme-cloud/markup.patch
@@ -0,0 +1,13 @@
+diff --git a/cloud_sptheme/ext/index_styling.py b/cloud_sptheme/ext/index_styling.py
+index 8fd8e6d..64a0958 100644
+--- a/cloud_sptheme/ext/index_styling.py
++++ b/cloud_sptheme/ext/index_styling.py
+@@ -1,7 +1,7 @@
+ """cloud_sptheme.ext.index_styling - improves css styling for genindex"""
+ import logging; log = logging.getLogger(__name__)
+ import re
+-from jinja2 import Markup as literal, escape
++from markupsafe import Markup as literal, escape
+ from cloud_sptheme import __version__
+
+ prefix = r"^(?P<name>.*)\("
diff --git a/testing/py3-sphinx-theme-epfl/APKBUILD b/testing/py3-sphinx-theme-epfl/APKBUILD
index 9030ea3a5cc..ceaae71d9a0 100644
--- a/testing/py3-sphinx-theme-epfl/APKBUILD
+++ b/testing/py3-sphinx-theme-epfl/APKBUILD
@@ -3,25 +3,29 @@
pkgname=py3-sphinx-theme-epfl
_pkgname=epfl-sphinx-theme
pkgver=1.1.1
-pkgrel=5
+pkgrel=9
pkgdesc="The EPFL Sphinx theme"
url="https://pypi.org/project/epfl-sphinx-theme/"
arch="noarch"
license="GPL-3.0-only"
depends="python3 py3-sphinx"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-sphinx-theme-epfl" # Backwards compatibility
+replaces="py-sphinx-theme-epfl" # Backwards compatibility
provides="py-sphinx-theme-epfl=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="af36469cbd33c5f8d1a4ebef201838a26dc52c04b1432b6cc49b46bfb74c585aad83da11cc9ebb675ad166573af41b00bed3e4ec770dcd60330599a732196ea0 epfl-sphinx-theme-1.1.1.tar.gz"
diff --git a/testing/py3-sphinx-theme-guzzle/APKBUILD b/testing/py3-sphinx-theme-guzzle/APKBUILD
index 6d19c457cea..1b322eb2ddc 100644
--- a/testing/py3-sphinx-theme-guzzle/APKBUILD
+++ b/testing/py3-sphinx-theme-guzzle/APKBUILD
@@ -3,13 +3,14 @@
pkgname=py3-sphinx-theme-guzzle
_pkgname=guzzle_sphinx_theme
pkgver=0.7.11
-pkgrel=3
+pkgrel=6
pkgdesc="The Guzzle Sphinx theme"
url="https://github.com/guzzle/guzzle_sphinx_theme"
arch="noarch"
license="MIT"
depends="py3-sphinx"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -18,7 +19,7 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="9aecdd4cf8ae286c9dd59a453790d957e96a57a9c9acd3aa38ff8fe64969cde4619c4154cd7304dd1c5bd0ea58fe71f556701b7a9b12f58fe3f5c1bdd2681da5 guzzle_sphinx_theme-0.7.11.tar.gz"
diff --git a/testing/py3-sphinx-theme-quark/APKBUILD b/testing/py3-sphinx-theme-quark/APKBUILD
index 6b66ee91aa2..389d31c4bca 100644
--- a/testing/py3-sphinx-theme-quark/APKBUILD
+++ b/testing/py3-sphinx-theme-quark/APKBUILD
@@ -2,17 +2,19 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=py3-sphinx-theme-quark
_pkgname=quark-sphinx-theme
-pkgver=0.5.1
-pkgrel=4
+pkgver=0.6.0
+pkgrel=2
pkgdesc="A Sphinx theme for Qt toolkit’s QTextBrowser"
url="https://gitlab.com/fkrull/quark-sphinx-theme"
arch="noarch"
license="BSD-2-Clause"
-depends="py3-sphinx"
+depends="py3-sphinx python3"
makedepends="py3-setuptools"
-checkdepends="py3-tinycss2 py3-html5lib"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.bz2
- tinycss.patch"
+checkdepends="py3-html5lib"
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/q/quark-sphinx-theme/quark-sphinx-theme-$pkgver.tar.gz
+ tinycss.patch
+ "
builddir="$srcdir"/$_pkgname-$pkgver
build() {
@@ -24,8 +26,10 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="505c285f661c50567f79af644ba577eb636c1502ff265a612693d514120a0e572540ff277c08b9d1de0a38d48f6d3f804996a8dd1cbf928faf5dcfcb8dc875a5 quark-sphinx-theme-0.5.1.tar.bz2
-cbc1fe4dd924a75333b74985d4fb22a49badec93d8e8312181f988ac8c4a1d286bf682ece54e0e37b4adfbc42554f41eb1fb5533c3de2dbf391e612151cf9e65 tinycss.patch"
+sha512sums="
+7750459947e83f067ff165af632e5ac59db3487d622c367384e9e47a08e5a01c0ea34dd578f0deb70e9924cb45bda15fde5ecebcbc99a0611565f5c926392ea9 quark-sphinx-theme-0.6.0.tar.gz
+5d820b06f6a3d2fe713a3f6d66849ae3c9735a13cd9cd8169020e4468f1b58ec8c4238407a8de33a0660cc82a950c6e2bd13363d41f3a56f1775fc790779d8ca tinycss.patch
+"
diff --git a/testing/py3-sphinx-theme-quark/tinycss.patch b/testing/py3-sphinx-theme-quark/tinycss.patch
index d910c2599a9..2dbe4c0f76b 100644
--- a/testing/py3-sphinx-theme-quark/tinycss.patch
+++ b/testing/py3-sphinx-theme-quark/tinycss.patch
@@ -1,13 +1,112 @@
+we don't package tinycss (and it's *very* deprecated),
+so it's easier to just skip these tests
+
diff --git a/setup.py b/setup.py
-index 6bf1104..732809f 100644
+index 0f63a21..b713398 100644
--- a/setup.py
+++ b/setup.py
-@@ -14,7 +14,7 @@ sys.path.insert(0, os.path.join(dist_dir, 'src', 'quark_sphinx_theme'))
- from __version__ import __version__ # noqa
- del sys.path[0]
+@@ -15,7 +15,7 @@ install_requires = \
+ ['sphinx >= 1.8']
--tests_require = ['html5lib', 'tinycss']
-+tests_require = ['html5lib', 'tinycss2']
- if sys.version_info[:2] < (3, 3):
- tests_require.append('mock')
+ extras_require = \
+-{'test': ['html5lib', 'tinycss']}
++{'test': ['html5lib']}
+ entry_points = \
+ {'sphinx.html_themes': ['quark = quark_sphinx_theme']}
+diff --git a/test/test_theme.py b/test/test_theme.py
+index aa9543d..6910aae 100644
+--- a/test/test_theme.py
++++ b/test/test_theme.py
+@@ -23,9 +23,6 @@ class TestThemeEntrypoint(SphinxBuildFixture, unittest.TestCase):
+ class TestThemeDefaults(SphinxBuildFixture, unittest.TestCase):
+ source_dir = testdoc_theme
+
+- def test_quark_css(self):
+- self.assertSphinxCSSValid('quark.css')
+-
+ def _nav_elems(self, doc):
+ self.assertHasElement(doc, './/table[@class="nav-sidebar"]')
+ self.assertHasElement(doc, './/table[@class="navbar navbar-top"]')
+@@ -63,9 +60,6 @@ class TestThemeExtraCss(SphinxBuildFixture, unittest.TestCase):
+ '_static/extra2.css'
+ }
+
+- def test_quark_css(self):
+- self.assertSphinxCSSValid('quark.css')
+-
+ @with_document('contents')
+ def test_contents_css_files(self, doc):
+ extra_css = {
+@@ -83,9 +77,6 @@ class TestThemeNoSidebar(SphinxBuildFixture, unittest.TestCase):
+ 'html_theme_options.nosidebar': True,
+ }
+
+- def test_quark_css(self):
+- self.assertSphinxCSSValid('quark.css')
+-
+ def _nav_elems(self, doc):
+ self.assertNotElement(doc, './/table[@class="nav-sidebar"]')
+ self.assertHasElement(doc, './/table[@class="navbar navbar-top"]')
+@@ -151,9 +142,6 @@ class TestThemeAllSettingsUnset(SphinxBuildFixture, unittest.TestCase):
+ ]
+ config = {'html_theme_options.%s' % s: '' for s in _SETTINGS}
+
+- def test_quark_css(self):
+- self.assertSphinxCSSValid('quark.css')
+-
+
+ if __name__ == '__main__':
+ unittest.main()
+diff --git a/test/util.py b/test/util.py
+index 86b3d43..b59d474 100644
+--- a/test/util.py
++++ b/test/util.py
+@@ -6,7 +6,6 @@ import sys
+ import tempfile
+
+ import html5lib
+-import tinycss
+ from sphinx.cmd.build import main
+
+
+@@ -31,24 +30,6 @@ def capture_output():
+ yield stdout
+
+
+-def get_css_errors(filename_or_fobj, encoding=None):
+- if hasattr(filename_or_fobj, 'read'):
+- source = filename_or_fobj.read()
+- else:
+- with open(filename_or_fobj, 'r', encoding=encoding) as fobj:
+- source = fobj.read()
+- parser = tinycss.make_parser()
+- css = parser.parse_stylesheet(source)
+- lines = source.split('\n')
+- errors = []
+- for err in css.errors:
+- try:
+- errors.append(' %s [%s]\n' % (err, lines[err.line - 1]))
+- except IndexError:
+- errors.append(' %s\n' % err)
+- return errors
+-
+-
+ def run_sphinx(source_dir, build_dir, builder='html', extra_config={}, tags=[]):
+ args = ['-b', builder, '-N']
+ for k, v in extra_config.items():
+@@ -104,14 +85,6 @@ class SphinxBuildFixture:
+ def assertNotElement(self, doc, path):
+ self.assertHasElement(doc, path, 0)
+
+- def assertCSSValid(self, filename_or_fobj, encoding=None):
+- errors = get_css_errors(filename_or_fobj, encoding)
+- self.assertEqual(len(errors), 0, 'CSS errors:\n' + ''.join(errors))
+-
+- def assertSphinxCSSValid(self, basename, encoding='utf-8'):
+- self.assertCSSValid(os.path.join(self.build_dir, '_static', basename),
+- encoding=encoding)
+-
+
+ def with_document(docname):
+ def wrap1(func):
diff --git a/testing/py3-sphinx-theme-readable/APKBUILD b/testing/py3-sphinx-theme-readable/APKBUILD
index 856e2bc8124..f4a0dcce4ba 100644
--- a/testing/py3-sphinx-theme-readable/APKBUILD
+++ b/testing/py3-sphinx-theme-readable/APKBUILD
@@ -3,25 +3,29 @@
pkgname=py3-sphinx-theme-readable
_pkgname=sphinx-readable-theme
pkgver=1.3.0
-pkgrel=4
+pkgrel=9
pkgdesc="The Readable Sphinx theme"
url="https://github.com/ignacysokolowski/sphinx-readable-theme"
arch="noarch"
-license="BSD"
+license="MIT"
depends="python3 py3-sphinx"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-sphinx-theme-readable" # Backwards compatibility
+replaces="py-sphinx-theme-readable" # Backwards compatibility
provides="py-sphinx-theme-readable=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="e0810973fe77434efd7ca442c26784f5d894322832555953ff0c900835707bd797b5ce8308510590f31fe2a5f61e0ed465b3316cd8a3fa2f5ca9b1c5f432feaf sphinx-readable-theme-1.3.0.tar.gz"
diff --git a/testing/py3-sphinxcontrib-actdiag/APKBUILD b/testing/py3-sphinxcontrib-actdiag/APKBUILD
index 0e84a1d4e0f..33524841565 100644
--- a/testing/py3-sphinxcontrib-actdiag/APKBUILD
+++ b/testing/py3-sphinxcontrib-actdiag/APKBUILD
@@ -2,26 +2,31 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-sphinxcontrib-actdiag
_pkgname=sphinxcontrib-actdiag
-pkgver=2.0.0
+pkgver=3.0.0
pkgrel=2
pkgdesc="Sphinx actdiag extension"
-url="https://pypi.python.org/pypi/sphinxcontrib-actdiag"
+url="https://github.com/blockdiag/sphinxcontrib-actdiag"
arch="noarch"
license="BSD-2-Clause"
-depends="py3-actdiag py3-sphinx"
+depends="py3-actdiag py3-blockdiag py3-sphinx python3"
makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/blockdiag/sphinxcontrib-actdiag/archive/refs/tags/$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-
-replaces="py-sphinxcontrib-actdiag" # for backwards compatibility
-provides="py-sphinxcontrib-actdiag=$pkgver-r$pkgrel" # for backwards compatibility
+options="!check" # sphinx-testing
build() {
python3 setup.py build
}
+check() {
+ python3 -m unittest discover
+}
+
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="8faeb97b6be7c1a3603d34d34331ed4144a0b4a1ea537d8826682252213268a288f180ee0218d1266e199c41eba5e85caabf0a0f734024c358019fe806dd38de sphinxcontrib-actdiag-2.0.0.tar.gz"
+sha512sums="
+caef6c9e8e968e9053150a28aede2a07be1396ba2426745cd35cbb4a2093d93c1056336c49d1f7a901e22845e547b7e46b6caecc9f7cfea7ce7f7bd46c2ff49e py3-sphinxcontrib-actdiag-3.0.0.tar.gz
+"
diff --git a/testing/py3-sphinxcontrib-adadomain/APKBUILD b/testing/py3-sphinxcontrib-adadomain/APKBUILD
index 756b5b7e2cc..22394e25369 100644
--- a/testing/py3-sphinxcontrib-adadomain/APKBUILD
+++ b/testing/py3-sphinxcontrib-adadomain/APKBUILD
@@ -3,26 +3,30 @@
pkgname=py3-sphinxcontrib-adadomain
_pkgname=sphinxcontrib-adadomain
pkgver=0.2
-pkgrel=4
+pkgrel=9
pkgdesc="Sphinx adadomain extension"
-url="https://pypi.python.org/pypi/sphinxcontrib-adadomain"
+url="https://pypi.org/project/sphinxcontrib-adadomain"
arch="noarch"
license="BSD-2-Clause"
depends="py3-sphinx"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz
fix-imports.patch"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-sphinxcontrib-adadomain" # for backwards compatibility
+replaces="py-sphinxcontrib-adadomain" # for backwards compatibility
provides="py-sphinxcontrib-adadomain=$pkgver-r$pkgrel" # for backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="99d2b8b2dcb16e76c33c4a7965140c44ec3b4a166b69e930a68f27a1ddbb0871d77bc6b05fce79d161063561d21ebf5205218a05aebf9ff073e9ab2a3ba4e9a7 sphinxcontrib-adadomain-0.2.tar.gz
diff --git a/testing/py3-sphinxcontrib-apidoc/APKBUILD b/testing/py3-sphinxcontrib-apidoc/APKBUILD
deleted file mode 100644
index ba6b8118586..00000000000
--- a/testing/py3-sphinxcontrib-apidoc/APKBUILD
+++ /dev/null
@@ -1,28 +0,0 @@
-# Contributor: Duncan Bellamy <dunk@denkimushi.com>
-# Maintainer: Duncan Bellamy <dunk@denkimushi.com>
-pkgname=py3-sphinxcontrib-apidoc
-pkgver=0.3.0
-pkgrel=1
-pkgdesc="A Sphinx extension for running sphinx-apidoc on each build"
-url="https://github.com/sphinx-contrib/apidoc"
-arch="noarch"
-license="BSD-2-Clause"
-depends="py3-sphinx"
-makedepends="py3-pbr py3-setuptools"
-checkdepends="py3-pytest"
-source="https://files.pythonhosted.org/packages/source/s/sphinxcontrib-apidoc/sphinxcontrib-apidoc-$pkgver.tar.gz"
-builddir="$srcdir/sphinxcontrib-apidoc-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 -m pytest
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="043f9b36eaff7b3f6d23c834dd3947e2b029c66010b3862f1658f03e0fb6c4aac3304f49465dd515a30107a685dc704a0e319675c9d7b27897445a2c315d07a1 sphinxcontrib-apidoc-0.3.0.tar.gz"
diff --git a/testing/py3-sphinxcontrib-autoprogram/APKBUILD b/testing/py3-sphinxcontrib-autoprogram/APKBUILD
new file mode 100644
index 00000000000..9a1f6f8c5fa
--- /dev/null
+++ b/testing/py3-sphinxcontrib-autoprogram/APKBUILD
@@ -0,0 +1,41 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=py3-sphinxcontrib-autoprogram
+pkgver=0.1.8
+pkgrel=2
+pkgdesc="Sphinx extension to document CLI programs"
+url="https://github.com/sphinx-contrib/autoprogram"
+arch="noarch"
+license="BSD-2-Clause"
+depends="python3 py3-six py3-sphinx"
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+subpackages="$pkgname-pyc"
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/sphinx-contrib/autoprogram/archive/refs/tags/$pkgver.tar.gz
+ "
+builddir="$srcdir/autoprogram-$pkgver"
+options="!check" # no tests
+
+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 unittest discover
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+bc07f25c34884f8e3130bbe5d2d6fb645f45aca5794c6b11a772f0351d680380d3e63cfe4b60aabf05ad8c6f44bae72e592500454598d31cc3c98dcbc8dbf899 py3-sphinxcontrib-autoprogram-0.1.8.tar.gz
+"
diff --git a/testing/py3-sphinxcontrib-bitbucket/APKBUILD b/testing/py3-sphinxcontrib-bitbucket/APKBUILD
index 9d88b853d3d..4e379b6b161 100644
--- a/testing/py3-sphinxcontrib-bitbucket/APKBUILD
+++ b/testing/py3-sphinxcontrib-bitbucket/APKBUILD
@@ -3,26 +3,30 @@
pkgname=py3-sphinxcontrib-bitbucket
_pkgname=sphinxcontrib-bitbucket
pkgver=1.0
-pkgrel=3
+pkgrel=8
pkgdesc="Sphinx BitBucket extension"
-url="https://pypi.python.org/pypi/sphinxcontrib-bitbucket"
+url="https://pypi.org/project/sphinxcontrib-bitbucket"
arch="noarch"
license="BSD-2-Clause"
depends="py3-sphinx"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz
fix-python3.patch"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-sphinxcontrib-bitbucket" # Backwards compatibility
+replaces="py-sphinxcontrib-bitbucket" # Backwards compatibility
provides="py-sphinxcontrib-bitbucket=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="e018fceecc24b7a9656d57a9855c824665948f877394b7ca6b0f22473bf83492d4155a9c9960cf18e9b10268f2928d0762a4ad48ffee2ebb819275d563751e18 sphinxcontrib-bitbucket-1.0.tar.gz
diff --git a/testing/py3-sphinxcontrib-blockdiag/APKBUILD b/testing/py3-sphinxcontrib-blockdiag/APKBUILD
index c52deab5217..a2fe675de2e 100644
--- a/testing/py3-sphinxcontrib-blockdiag/APKBUILD
+++ b/testing/py3-sphinxcontrib-blockdiag/APKBUILD
@@ -2,27 +2,32 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-sphinxcontrib-blockdiag
_pkgname=sphinxcontrib-blockdiag
-pkgver=2.0.0
-pkgrel=2
+pkgver=3.0.0
+pkgrel=4
pkgdesc="Sphinx blockdiag extension"
-url="https://pypi.python.org/pypi/sphinxcontrib-blockdiag"
+url="https://pypi.org/project/sphinxcontrib-blockdiag"
arch="noarch"
license="BSD-2-Clause"
depends="py3-blockdiag py3-sphinx"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-sphinxcontrib-blockdiag" # for backwards compatibility
+replaces="py-sphinxcontrib-blockdiag" # for backwards compatibility
provides="py-sphinxcontrib-blockdiag=$pkgver-r$pkgrel" # for backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
-
-sha512sums="3968b75396129fa9337ccb7f5139944071fa81a247841142dd97a4ee6696c2b16dfcd1d944043e807a72e0b371e8a0b5ea85f42adfbc037842917cf78f38d2de sphinxcontrib-blockdiag-2.0.0.tar.gz"
+sha512sums="
+e173b4149368b8c13d08da6cd423ebba218ff0265b629242b6076f3781cc1ffe0fa007556cd0019f40bd5e5ed1c0f7953f7713f3dc56eceac3e53cc22b892238 sphinxcontrib-blockdiag-3.0.0.tar.gz
+"
diff --git a/testing/py3-sphinxcontrib-cacoo/APKBUILD b/testing/py3-sphinxcontrib-cacoo/APKBUILD
index 7e98bc384d5..285f39d404c 100644
--- a/testing/py3-sphinxcontrib-cacoo/APKBUILD
+++ b/testing/py3-sphinxcontrib-cacoo/APKBUILD
@@ -3,25 +3,29 @@
pkgname=py3-sphinxcontrib-cacoo
_pkgname=sphinxcontrib-cacoo
pkgver=2.0.0
-pkgrel=3
+pkgrel=7
pkgdesc="Sphinx cacoo extension"
url="https://github.com/tk0miya/sphinxcontrib-cacoo"
arch="noarch"
license="BSD-2-Clause"
depends="py3-sphinx"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-sphinxcontrib-cacoo" # Backwards compatibility
+replaces="py-sphinxcontrib-cacoo" # Backwards compatibility
provides="py-sphinxcontrib-cacoo=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="180d34e3d77870c3d6385b62c59094c15ba7af64b1821f0bbdcbbc04ca901396fe3e78e72f0a504286afd9583e86af590fcfc6867ab2c959c6a5164b009fe032 sphinxcontrib-cacoo-2.0.0.tar.gz"
diff --git a/testing/py3-sphinxcontrib-cartouche/APKBUILD b/testing/py3-sphinxcontrib-cartouche/APKBUILD
index dc4233a5e09..02c336bacec 100644
--- a/testing/py3-sphinxcontrib-cartouche/APKBUILD
+++ b/testing/py3-sphinxcontrib-cartouche/APKBUILD
@@ -3,25 +3,29 @@
pkgname=py3-sphinxcontrib-cartouche
_pkgname=cartouche
pkgver=1.1.2
-pkgrel=3
+pkgrel=7
pkgdesc="Sphinx cartouche extension"
url="https://github.com/rob-smallshire/cartouche"
arch="noarch"
license="BSD-3-Clause"
depends="python3 py3-sphinx"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-sphinxcontrib-cartouche" # Backwards compatibility
+replaces="py-sphinxcontrib-cartouche" # Backwards compatibility
provides="py-sphinxcontrib-cartouche=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="cbfc11d9ff545b9d891e218804627a9524af513c1c2eff461c41813b99f7db1336bd14ed95dbf6b5cfcce19f91ac817bb42cd660057b9bf6427daccb4b375462 cartouche-1.1.2.tar.gz"
diff --git a/testing/py3-sphinxcontrib-doxylink/APKBUILD b/testing/py3-sphinxcontrib-doxylink/APKBUILD
index a1ab57f6a87..6eb101cbc7e 100644
--- a/testing/py3-sphinxcontrib-doxylink/APKBUILD
+++ b/testing/py3-sphinxcontrib-doxylink/APKBUILD
@@ -2,26 +2,41 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-sphinxcontrib-doxylink
_pkgname=sphinxcontrib-doxylink
-pkgver=1.6.1
-pkgrel=3
+pkgver=1.12.2
+pkgrel=2
pkgdesc="Sphinx Doxygen linking extension"
url="https://github.com/sphinx-contrib/doxylink"
arch="noarch"
license="BSD-2-Clause"
-depends="py3-parsing py3-sphinx"
-makedepends="py3-setuptools"
+depends="
+ py3-dateutil
+ py3-parsing
+ py3-sphinx
+ python3
+ "
+makedepends="
+ py3-gpep517
+ py3-poetry-core
+ "
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
+options="!check" # no tarball tests
replaces="py-sphinxcontrib-doxylink" # for backwards compatibility
provides="py-sphinxcontrib-doxylink=$pkgver-r$pkgrel" # for backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
-sha512sums="c27983cbd54d6ff2c4110b0269d630cd81b8aff6bf7f6b1b006dbb18fc3643d59a25ecff0ec9c92785c697e38861e755fb44a95382314b8b2888da9e8e191637 sphinxcontrib-doxylink-1.6.1.tar.gz"
+sha512sums="
+dd07053a7f3c01697fa4c488c1bcd55de7d5cf41cd8a33c64dfcfcc26c5b63b079055626a6617c1afc6350796e30d4db5209364a146f814bd81227afd561614b sphinxcontrib-doxylink-1.12.2.tar.gz
+"
diff --git a/testing/py3-sphinxcontrib-fulltoc/APKBUILD b/testing/py3-sphinxcontrib-fulltoc/APKBUILD
index abf15a43e48..4984d3ce1cd 100644
--- a/testing/py3-sphinxcontrib-fulltoc/APKBUILD
+++ b/testing/py3-sphinxcontrib-fulltoc/APKBUILD
@@ -3,25 +3,29 @@
pkgname=py3-sphinxcontrib-fulltoc
_pkgname=sphinxcontrib-fulltoc
pkgver=1.2.0
-pkgrel=3
+pkgrel=8
pkgdesc="Sphinx fulltoc extension"
-url="https://pypi.python.org/pypi/sphinxcontrib-fulltoc"
+url="https://pypi.org/project/sphinxcontrib-fulltoc"
arch="noarch"
license="Apache-2.0"
depends="py3-sphinx"
-makedepends="py3-pbr py3-setuptools"
+makedepends="py3-pbr py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-sphinxcontrib-fulltoc" # Backwards compatibility
+replaces="py-sphinxcontrib-fulltoc" # Backwards compatibility
provides="py-sphinxcontrib-fulltoc=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="9f806ed3717db65c9d67f9b35a676586484bbd81347216ee25309c3d74427b283e7efe5af48be588fd72d814158250e2ffa85c6c1f3f0358534f8f64fe45d904 sphinxcontrib-fulltoc-1.2.0.tar.gz"
diff --git a/testing/py3-sphinxcontrib-gist/APKBUILD b/testing/py3-sphinxcontrib-gist/APKBUILD
index c791c8738f3..6f1ee7bde96 100644
--- a/testing/py3-sphinxcontrib-gist/APKBUILD
+++ b/testing/py3-sphinxcontrib-gist/APKBUILD
@@ -3,25 +3,34 @@
pkgname=py3-sphinxcontrib-gist
_pkgname=sphinxcontrib.gist
pkgver=0.1.0
-pkgrel=4
+pkgrel=9
pkgdesc="Sphinx gist extension"
-url="https://pypi.python.org/pypi/sphinxcontrib-gist"
+url="https://pypi.org/project/sphinxcontrib-gist"
arch="noarch"
license="LGPL-3.0-only"
depends="python3 py3-sphinx"
-makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz
+ fix-build.patch
+ "
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-sphinxcontrib-gist" # Backwards compatibility
+replaces="py-sphinxcontrib-gist" # Backwards compatibility
provides="py-sphinxcontrib-gist=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
-sha512sums="a6bc8bae2bf64c5201452134c075c6336ab1928c534bb6d274c3fdda555609ad58e02d11d4c9d78528be39578c759394016c58ef6f0bad1ffc38328e3cf3ca00 sphinxcontrib.gist-0.1.0.tar.gz"
+sha512sums="
+a6bc8bae2bf64c5201452134c075c6336ab1928c534bb6d274c3fdda555609ad58e02d11d4c9d78528be39578c759394016c58ef6f0bad1ffc38328e3cf3ca00 sphinxcontrib.gist-0.1.0.tar.gz
+e1bbfac6dc5d6b9dd4b8c2a3ec1d4b790cafb89e69640ca7a9da041d27d20388d973ba8529bafd098dce9b2f5029ad7b219af5414a59bd557744964eeac050e1 fix-build.patch
+"
diff --git a/testing/py3-sphinxcontrib-gist/fix-build.patch b/testing/py3-sphinxcontrib-gist/fix-build.patch
new file mode 100644
index 00000000000..44735804e9a
--- /dev/null
+++ b/testing/py3-sphinxcontrib-gist/fix-build.patch
@@ -0,0 +1,19 @@
+a bit of an ugly hack to import the module properly
+
+`from sphinxcontrib ...` doesn't work, because sphinxcontrib is defined by
+all the other py3-sphinxcontrib-* packages that use (now depreacated) declare_namespace
+as a namespace residing in sitedir, thus python doesn't see the local directory
+
+diff --git a/setup.py b/setup.py
+index b0bf058..e43693e 100644
+--- a/setup.py
++++ b/setup.py
+@@ -1,5 +1,8 @@
+ #-*- coding:utf-8 -*-
+
++import sys
++del sys.modules['sphinxcontrib']
++
+ import setuptools
+ from sphinxcontrib import gist as pkg
+
diff --git a/testing/py3-sphinxcontrib-git/APKBUILD b/testing/py3-sphinxcontrib-git/APKBUILD
index 9be34519b18..fd411fd9982 100644
--- a/testing/py3-sphinxcontrib-git/APKBUILD
+++ b/testing/py3-sphinxcontrib-git/APKBUILD
@@ -3,25 +3,29 @@
pkgname=py3-sphinxcontrib-git
_pkgname=sphinx-git
pkgver=11.0.0
-pkgrel=3
+pkgrel=7
pkgdesc="Sphinx git changelog extension"
url="https://github.com/OddBloke/sphinx-git"
arch="noarch"
license="GPL-3.0-or-later"
depends="python3 py3-sphinx py3-six py3-gitpython"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-sphinxcontrib-git" # Backwards compatibility
+replaces="py-sphinxcontrib-git" # Backwards compatibility
provides="py-sphinxcontrib-git=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="2d795a791d0b626ec88df9cf835508a3ef9be8a502cb977613813334a671e8676e3c9af8b478870db817a7f29aa24497d665a6b619ea3ccf15353398a8d28e4b sphinx-git-11.0.0.tar.gz"
diff --git a/testing/py3-sphinxcontrib-gravatar/APKBUILD b/testing/py3-sphinxcontrib-gravatar/APKBUILD
index 8bcbc2403eb..58d4cc6e97f 100644
--- a/testing/py3-sphinxcontrib-gravatar/APKBUILD
+++ b/testing/py3-sphinxcontrib-gravatar/APKBUILD
@@ -3,15 +3,16 @@
pkgname=py3-sphinxcontrib-gravatar
_pkgname=sphinxcontrib-gravatar
pkgver=0.1.2
-pkgrel=3
+pkgrel=7
pkgdesc="Sphinx gravatar extension"
options="!check" # Most tests fail
-url="https://pypi.python.org/pypi/sphinxcontrib-gravatar"
+url="https://pypi.org/project/sphinxcontrib-gravatar"
arch="noarch"
license="BSD-2-Clause"
depends="python3 py3-sphinx"
makedepends="py3-setuptools"
checkdepends="py3-pytest py3-pytest-cov py3-mock"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -27,7 +28,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="18f68ab2259a85fe33bf76c9c6c98eed2b196b33a5a3fe04bb481f4df37b653473aeca1bf58871164dc60cf82d7225b62bade9993d825356f6450bca9d8f2980 sphinxcontrib-gravatar-0.1.2.tar.gz"
diff --git a/testing/py3-sphinxcontrib-htsql/APKBUILD b/testing/py3-sphinxcontrib-htsql/APKBUILD
index a2fca86d74c..e9ae9132afe 100644
--- a/testing/py3-sphinxcontrib-htsql/APKBUILD
+++ b/testing/py3-sphinxcontrib-htsql/APKBUILD
@@ -3,25 +3,29 @@
pkgname=py3-sphinxcontrib-htsql
_pkgname=sphinxcontrib-htsql
pkgver=0.1.5
-pkgrel=3
+pkgrel=8
pkgdesc="Sphinx htsql extension"
-url="https://pypi.python.org/pypi/sphinxcontrib-htsql"
+url="https://pypi.org/project/sphinxcontrib-htsql"
arch="noarch"
license="BSD-2-Clause"
depends="python3 py3-sphinx"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-sphinxcontrib-htsql" # Backwards compatibility
+replaces="py-sphinxcontrib-htsql" # Backwards compatibility
provides="py-sphinxcontrib-htsql=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="778114bd18f3f0d3f08465ccb477949d7934eca2223d346cc130cbb9256572d769082b86436ce60211b030965155792c6ab6d02074fd47d3838a26c906092de6 sphinxcontrib-htsql-0.1.5.tar.gz"
diff --git a/testing/py3-sphinxcontrib-httpdomain/APKBUILD b/testing/py3-sphinxcontrib-httpdomain/APKBUILD
index 9dc4f1503c9..e19f352e6c5 100644
--- a/testing/py3-sphinxcontrib-httpdomain/APKBUILD
+++ b/testing/py3-sphinxcontrib-httpdomain/APKBUILD
@@ -2,14 +2,19 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-sphinxcontrib-httpdomain
_pkgname=sphinxcontrib-httpdomain
-pkgver=1.7.0
+pkgver=1.8.1
pkgrel=3
pkgdesc="Sphinx httpdomain extension"
-url="https://pypi.python.org/pypi/sphinxcontrib-httpdomain"
+url="https://pypi.org/project/sphinxcontrib-httpdomain"
arch="noarch"
license="BSD-2-Clause"
-depends="py3-sphinx"
-makedepends="py3-setuptools"
+depends="py3-sphinx py3-six"
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+subpackages="$pkgname-lang $pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -17,11 +22,23 @@ replaces="py-sphinxcontrib-httpdomain" # for backwards compatibility
provides="py-sphinxcontrib-httpdomain=$pkgver-r$pkgrel" # for backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
-sha512sums="132803f60af263a4948108145ac27635da50254eb79dad2c461c4f364b04eb6b28d4917449fae31b792fc8773ce948f1fd20b06b22e167bfb4584dad756c8f17 sphinxcontrib-httpdomain-1.7.0.tar.gz"
+lang() {
+ pkgdesc="translations for $pkgname"
+ install_if="$pkgname=$pkgver-r$pkgrel lang"
+
+ amove usr/lib/python3*/site-packages/sphinxcontrib/locale/
+}
+
+sha512sums="
+197c44fd9bdc146f49c6a0aa365a5bd49b76f712ae89082be3761aa21c99683279090fc274308ca199fb7efae5a2d713be4531b90747f504860f36a01ee4c52b sphinxcontrib-httpdomain-1.8.1.tar.gz
+"
diff --git a/testing/py3-sphinxcontrib-hydomain/APKBUILD b/testing/py3-sphinxcontrib-hydomain/APKBUILD
index 101fca1b9c0..5448189ec81 100644
--- a/testing/py3-sphinxcontrib-hydomain/APKBUILD
+++ b/testing/py3-sphinxcontrib-hydomain/APKBUILD
@@ -1,15 +1,16 @@
# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
# Maintainer: Sören Tempel <soeren+alpine@soeren-tempel.net>
pkgname=py3-sphinxcontrib-hydomain
-pkgver=0.1.0_git20220111
-_commit="457c755a776b17bbb331ad29f9848e247ee3aab3"
-pkgrel=0
+pkgver=0.1.0_git20230930
+_commit="5919f40522b5a8a3787daa7a9bca3df737436d5b"
+pkgrel=1
pkgdesc="Sphinx hydomain extension"
url="https://github.com/hylang/sphinxcontrib-hydomain"
arch="noarch"
license="BSD-3-Clause"
depends="py3-sphinx"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
options="!check" # no test suite
source="$pkgname-$pkgver.tar.gz::https://github.com/hylang/sphinxcontrib-hydomain/archive/$_commit.tar.gz"
builddir="$srcdir/sphinxcontrib-hydomain-$_commit"
@@ -18,13 +19,15 @@ replaces="py-sphinxcontrib-hydomain" # for backwards compatibility
provides="py-sphinxcontrib-hydomain=$pkgver-r$pkgrel" # for backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" .dist/*.whl
}
sha512sums="
-b2b9a3504293ef65e12d366e402f6cf3ea9a80d172232e46f08637ed89cf811ddda3b83c664e6b9aa6d61873d60cf225fbe1b93fd092a0a0349127b402d67b9c py3-sphinxcontrib-hydomain-0.1.0_git20220111.tar.gz
+5e429b1ac8b2deb67a3ae716976a4f8e4ee85d1bfa6ef7236f26b6992ce4f97a5a53fac650d4026c4cd2f812ad556604824482edf4ac166aab15a8dfb29aa2e8 py3-sphinxcontrib-hydomain-0.1.0_git20230930.tar.gz
"
diff --git a/testing/py3-sphinxcontrib-inheritance/APKBUILD b/testing/py3-sphinxcontrib-inheritance/APKBUILD
index a8eedfd552d..8891a0fce4b 100644
--- a/testing/py3-sphinxcontrib-inheritance/APKBUILD
+++ b/testing/py3-sphinxcontrib-inheritance/APKBUILD
@@ -3,25 +3,29 @@
pkgname=py3-sphinxcontrib-inheritance
_pkgname=sphinxcontrib-inheritance
pkgver=0.9.0
-pkgrel=4
+pkgrel=9
pkgdesc="Sphinx inheritance functionality"
-url="https://pypi.python.org/pypi/sphinxcontrib-inheritance"
+url="https://pypi.org/project/sphinxcontrib-inheritance"
arch="noarch"
license="BSD-2-Clause"
depends="python3 py3-sphinx py3-path"
-makedepends="python3-dev py3-setuptools"
+makedepends="python3-dev py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-sphinxcontrib-inheritance" # Backwards compatibility
+replaces="py-sphinxcontrib-inheritance" # Backwards compatibility
provides="py-sphinxcontrib-inheritance=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="979a8ed286616c2b2981e5581492e0de5b4cee1d6117ed93d098591872fc5c46b813b72042da9d40169086dda503a97ef320884fb601d18ba20d079a2886d412 sphinxcontrib-inheritance-0.9.0.tar.gz"
diff --git a/testing/py3-sphinxcontrib-issuetracker/APKBUILD b/testing/py3-sphinxcontrib-issuetracker/APKBUILD
index ba9c16718d0..00fce85cdd7 100644
--- a/testing/py3-sphinxcontrib-issuetracker/APKBUILD
+++ b/testing/py3-sphinxcontrib-issuetracker/APKBUILD
@@ -3,25 +3,29 @@
pkgname=py3-sphinxcontrib-issuetracker
_pkgname=sphinxcontrib-issuetracker
pkgver=0.11
-pkgrel=3
+pkgrel=7
pkgdesc="Sphinx issuetracker extension"
url="https://github.com/ignatenkobrain/sphinxcontrib-issuetracker"
arch="noarch"
license="BSD-2-Clause"
depends="py3-sphinx"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-sphinxcontrib-issuetracker" # for backwards compatibility
+replaces="py-sphinxcontrib-issuetracker" # for backwards compatibility
provides="py-sphinxcontrib-issuetracker=$pkgver-r$pkgrel" # for backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="fb4a977bea22451a3d90b16821fc2a38ed53b17913666ca250e9aab8bb1726bbdb52fb2b6dbb2ae512a0ca6cc3d33dcddeba758c02c77b099180443d67e147c9 sphinxcontrib-issuetracker-0.11.tar.gz"
diff --git a/testing/py3-sphinxcontrib-lassodomain/APKBUILD b/testing/py3-sphinxcontrib-lassodomain/APKBUILD
index 0e8f05c0c02..da388b98dd8 100644
--- a/testing/py3-sphinxcontrib-lassodomain/APKBUILD
+++ b/testing/py3-sphinxcontrib-lassodomain/APKBUILD
@@ -3,26 +3,30 @@
pkgname=py3-sphinxcontrib-lassodomain
_pkgname=sphinxcontrib-lassodomain
pkgver=0.4
-pkgrel=3
+pkgrel=8
pkgdesc="Sphinx lassodomain extension"
-url="https://pypi.python.org/pypi/sphinxcontrib-lassodomain"
+url="https://pypi.org/project/sphinxcontrib-lassodomain"
arch="noarch"
license="BSD-2-Clause"
depends="py3-sphinx"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz
fix-python3.patch"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-sphinxcontrib-lassodomain" # Backwards compatibility
+replaces="py-sphinxcontrib-lassodomain" # Backwards compatibility
provides="py-sphinxcontrib-lassodomain=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="527511a8342175e1f157705d76eb4c03e409d62024cb95dad98067765fb9321c4a93eea1a23d75b18d19eaf48c5dde496bcbe2789809eb11408c018e1972b7cf sphinxcontrib-lassodomain-0.4.tar.gz
diff --git a/testing/py3-sphinxcontrib-manpage/APKBUILD b/testing/py3-sphinxcontrib-manpage/APKBUILD
index a27696291ca..bf542fc2f45 100644
--- a/testing/py3-sphinxcontrib-manpage/APKBUILD
+++ b/testing/py3-sphinxcontrib-manpage/APKBUILD
@@ -3,25 +3,29 @@
pkgname=py3-sphinxcontrib-manpage
_pkgname=sphinxcontrib-manpage
pkgver=0.6
-pkgrel=3
+pkgrel=8
pkgdesc="Sphinx manpage extension"
-url="https://pypi.python.org/pypi/sphinxcontrib-manpage"
+url="https://pypi.org/project/sphinxcontrib-manpage"
arch="noarch"
license="Apache-2.0"
depends="python3 py3-sphinx py3-nwdiag"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-sphinxcontrib-manpage" # Backwards compatibility
+replaces="py-sphinxcontrib-manpage" # Backwards compatibility
provides="py-sphinxcontrib-manpage=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="312215626275cade4595db044b9b1f90eeb816d4cd5277e1f628f164faa67d7c912d5ea295b68ed436e39276448fe27ae0f0aea6062af2fbf48e957bd9dc2d36 sphinxcontrib-manpage-0.6.tar.gz"
diff --git a/testing/py3-sphinxcontrib-newsfeed/APKBUILD b/testing/py3-sphinxcontrib-newsfeed/APKBUILD
deleted file mode 100644
index 6504d9afdcc..00000000000
--- a/testing/py3-sphinxcontrib-newsfeed/APKBUILD
+++ /dev/null
@@ -1,25 +0,0 @@
-# Contributor: Galen Abell <galen@galenabell.com>
-# Maintainer: Galen Abell <galen@galenabell.com>
-pkgname=py3-sphinxcontrib-newsfeed
-_pyname=sphinxcontrib-newsfeed
-pkgver=0.1.4
-pkgrel=2
-pkgdesc="News Feed extension for Sphinx"
-url="https://github.com/prometheusresearch/sphinxcontrib-newsfeed"
-arch="noarch"
-license="BSD-2-Clause"
-options="!check" # no tests
-depends="python3 py3-sphinx"
-makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/${_pyname%${_pyname#?}}/$_pyname/$_pyname-$pkgver.tar.gz"
-builddir="$srcdir/$_pyname-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="96d9d0c15fca8b62f945bafc8f0eafa62df9c471f7510e2f153e47b66534e5f3041e5c01df772e6c35a9f09baa70064642f7f0fa43ccfd33dd64c2604494f2fc sphinxcontrib-newsfeed-0.1.4.tar.gz"
diff --git a/testing/py3-sphinxcontrib-nwdiag/APKBUILD b/testing/py3-sphinxcontrib-nwdiag/APKBUILD
index 5a64885eeef..8a716f9af9d 100644
--- a/testing/py3-sphinxcontrib-nwdiag/APKBUILD
+++ b/testing/py3-sphinxcontrib-nwdiag/APKBUILD
@@ -3,26 +3,29 @@
pkgname=py3-sphinxcontrib-nwdiag
_pkgname=sphinxcontrib-nwdiag
pkgver=2.0.0
-pkgrel=2
+pkgrel=7
pkgdesc="Sphinx nwdiag extension"
-url="https://pypi.python.org/pypi/sphinxcontrib-nwdiag"
+url="https://pypi.org/project/sphinxcontrib-nwdiag"
arch="noarch"
license="BSD-2-Clause"
depends="py3-nwdiag py3-sphinx"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-sphinxcontrib-nwdiag" # for backwards compatibility
+replaces="py-sphinxcontrib-nwdiag" # for backwards compatibility
provides="py-sphinxcontrib-nwdiag=$pkgver-r$pkgrel" # for backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
-
sha512sums="a77d8259a4c1f238dec20ef0c260e6e0ad4665ab13e0124a5cdd3dc135969b44c218131746cc9f955a3dd088bf3b17e23354f8edc0409a239ca2e02d38ec645a sphinxcontrib-nwdiag-2.0.0.tar.gz"
diff --git a/testing/py3-sphinxcontrib-phpdomain/APKBUILD b/testing/py3-sphinxcontrib-phpdomain/APKBUILD
index 2674671ee7e..d5a58add1d8 100644
--- a/testing/py3-sphinxcontrib-phpdomain/APKBUILD
+++ b/testing/py3-sphinxcontrib-phpdomain/APKBUILD
@@ -1,29 +1,36 @@
# Contributor: Fabian Affolter <fabian@affolter-engineering.ch>
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-sphinxcontrib-phpdomain
-_pkgname=sphinxcontrib-phpdomain
-pkgver=0.7.3
+pkgver=0.11.2
pkgrel=1
pkgdesc="Sphinx phpdomain extension"
-url="https://pypi.python.org/pypi/sphinxcontrib-phpdomain"
+url="https://pypi.org/project/sphinxcontrib-phpdomain"
arch="noarch"
license="BSD-2-Clause"
depends="py3-sphinx"
-makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
-builddir="$srcdir"/$_pkgname-$pkgver
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/markstory/sphinxcontrib-phpdomain/archive/refs/tags/$pkgver.tar.gz"
+builddir="$srcdir"/sphinxcontrib-phpdomain-$pkgver
replaces="py-sphinxcontrib-phpdomain" # for backwards compatibility
provides="py-sphinxcontrib-phpdomain=$pkgver-r$pkgrel" # for backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
-d02a9a11ab23c6c272ab16760cd9cc808adbf31be963cb99fd5da5e3d34e160c5fceacefb2c6ce052c58c294ddc65992fa983dad559fbb09eddf95b4cf4c7a46 sphinxcontrib-phpdomain-0.7.3.tar.gz
+00b806a601b1921a2e5b1dbde466f9eb47c69ff7bee12cd65725e8e83edab4430778a9963500417e116cc4c9f0281eab9fb63bfeb8f4c7ac31cf3de5fcdbcd83 py3-sphinxcontrib-phpdomain-0.11.2.tar.gz
"
diff --git a/testing/py3-sphinxcontrib-programoutput/APKBUILD b/testing/py3-sphinxcontrib-programoutput/APKBUILD
index b94a6b29da8..503b2a38872 100644
--- a/testing/py3-sphinxcontrib-programoutput/APKBUILD
+++ b/testing/py3-sphinxcontrib-programoutput/APKBUILD
@@ -3,13 +3,14 @@
pkgname=py3-sphinxcontrib-programoutput
_pkgname=sphinxcontrib-programoutput
pkgver=0.17
-pkgrel=1
+pkgrel=4
pkgdesc="Sphinx programoutput extension"
url="https://sphinxcontrib-programoutput.readthedocs.io/en/latest/"
arch="noarch"
license="BSD-2-Clause"
depends="python3 py3-sphinx"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/NextThought/$_pkgname/archive/$pkgver.tar.gz"
replaces="py-sphinxcontrib-programoutput" # Backwards compatibility
@@ -26,7 +27,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
diff --git a/testing/py3-sphinxcontrib-restbuilder/APKBUILD b/testing/py3-sphinxcontrib-restbuilder/APKBUILD
index 250b3d16831..a8c1278a64a 100644
--- a/testing/py3-sphinxcontrib-restbuilder/APKBUILD
+++ b/testing/py3-sphinxcontrib-restbuilder/APKBUILD
@@ -3,25 +3,29 @@
pkgname=py3-sphinxcontrib-restbuilder
_pkgname=sphinxcontrib-restbuilder
pkgver=0.3
-pkgrel=1
+pkgrel=6
pkgdesc="Sphinx restbuilder extension"
-url="https://pypi.python.org/pypi/sphinxcontrib-restbuilder"
+url="https://pypi.org/project/sphinxcontrib-restbuilder"
arch="noarch"
license="BSD-2-Clause"
depends="python3 py3-sphinx"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-sphinxcontrib-restbuilder" # Backwards compatibility
+replaces="py-sphinxcontrib-restbuilder" # Backwards compatibility
provides="py-sphinxcontrib-restbuilder=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
diff --git a/testing/py3-sphinxcontrib-seqdiag/APKBUILD b/testing/py3-sphinxcontrib-seqdiag/APKBUILD
index 1df97786360..af3f7219a1c 100644
--- a/testing/py3-sphinxcontrib-seqdiag/APKBUILD
+++ b/testing/py3-sphinxcontrib-seqdiag/APKBUILD
@@ -2,26 +2,32 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-sphinxcontrib-seqdiag
_pkgname=sphinxcontrib-seqdiag
-pkgver=2.0.0
-pkgrel=2
+pkgver=3.0.0
+pkgrel=5
pkgdesc="Sphinx seqdiag extension"
-url="https://pypi.python.org/pypi/sphinxcontrib-seqdiag"
+url="https://pypi.org/project/sphinxcontrib-seqdiag"
arch="noarch"
license="BSD-2-Clause"
depends="py3-seqdiag py3-sphinx"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-sphinxcontrib-seqdiag" # for backwards compatibility
+replaces="py-sphinxcontrib-seqdiag" # for backwards compatibility
provides="py-sphinxcontrib-seqdiag=$pkgver-r$pkgrel" # for backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
-sha512sums="6136bf53af5f69b1dfd08bca65a8f9831ec7a5dbef23ce452e99296ead721aebf21a9fdbba01e402108830916109a17ba0e84f76fba6a67685b70d07932b39ba sphinxcontrib-seqdiag-2.0.0.tar.gz"
+sha512sums="
+fd1bcbda3f73eec56314b4ad3054725e9c1b946c6fe3b8b950b5fc3a97ad4d12aa695e5741946cf86bbc8f62f77873400d09afbc568ad593c04fad1810c3e4fe sphinxcontrib-seqdiag-3.0.0.tar.gz
+"
diff --git a/testing/py3-sphinxcontrib-slide/APKBUILD b/testing/py3-sphinxcontrib-slide/APKBUILD
index 415d2d34be0..cb62b124b2c 100644
--- a/testing/py3-sphinxcontrib-slide/APKBUILD
+++ b/testing/py3-sphinxcontrib-slide/APKBUILD
@@ -2,13 +2,15 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-sphinxcontrib-slide
_pkgname=sphinxcontrib-slide
-pkgver=0.3.0
-pkgrel=4
+pkgver=1.0.0
+pkgrel=3
pkgdesc="Sphinx FindAnything extension"
-url="https://pypi.python.org/pypi/sphinxcontrib-slide"
+url="https://pypi.org/project/sphinxcontrib-slide"
arch="noarch"
license="BSD" # No LICENSE file
depends="python3 py3-sphinx py3-setuptools"
+makedepends="py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -16,11 +18,16 @@ replaces="py-sphinxcontrib-slide" # Backwards compatibility
provides="py-sphinxcontrib-slide=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
-sha512sums="5c0cc13c6fa317aeec499cd918b4eb08fd1fed82ecc2d4f6fe2d1fc54dce9a48f99c8d373ea858756314eb432afceb73658d8cc3e17d0f0e66f7df20be0b7e75 sphinxcontrib-slide-0.3.0.tar.gz"
+sha512sums="
+67bbcbf11668fed8ad7ea185b32590921ba4f37ae2c4fb3243fda8a1f377c0f3169056c6b3e6c32c4af7b8a74172f050abdc2c72062b009dba72069d6a19ab65 sphinxcontrib-slide-1.0.0.tar.gz
+"
diff --git a/testing/py3-sphinxcontrib-spelling/APKBUILD b/testing/py3-sphinxcontrib-spelling/APKBUILD
index b72d62f6469..0afeeea0a9a 100644
--- a/testing/py3-sphinxcontrib-spelling/APKBUILD
+++ b/testing/py3-sphinxcontrib-spelling/APKBUILD
@@ -2,14 +2,20 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-sphinxcontrib-spelling
_pkgname=sphinxcontrib-spelling
-pkgver=7.2.1
-pkgrel=1
+pkgver=8.0.0
+pkgrel=3
pkgdesc="Sphinx spelling extension"
-url="https://pypi.python.org/pypi/sphinxcontrib-spelling"
+url="https://pypi.org/project/sphinxcontrib-spelling"
arch="noarch"
license="BSD-2-Clause"
depends="python3 py3-sphinx py3-enchant"
-makedepends="py3-setuptools py3-pbr"
+makedepends="
+ py3-gpep517
+ py3-setuptools_scm
+ py3-wheel
+ "
+checkdepends="py3-pytest enchant2-aspell aspell-en"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -17,13 +23,23 @@ replaces="py-sphinxcontrib-spelling" # Backwards compatibility
provides="py-sphinxcontrib-spelling=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ SETUPTOOLS_SCM_PRETEND_VERSION="$pkgver" \
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
-e9b9709b627545e1191d64753c97c0cf65e100d5379e7cc1da46faf9c5d5ea0eeb6c7aafe99331f9518488fb0801c245e0c1fa9853360bb6cf373515a4fed2ed sphinxcontrib-spelling-7.2.1.tar.gz
+0d8c21ea660516238c43fabb505666dfee15abb39f538c40c6b61f91e20c246b16aa170cd444263507dd51913a27fc7719cddb28f30eab26825b565f70dd3ab6 sphinxcontrib-spelling-8.0.0.tar.gz
"
diff --git a/testing/py3-sphinxcontrib-sqltable/APKBUILD b/testing/py3-sphinxcontrib-sqltable/APKBUILD
index b73e37dbc84..d812736410a 100644
--- a/testing/py3-sphinxcontrib-sqltable/APKBUILD
+++ b/testing/py3-sphinxcontrib-sqltable/APKBUILD
@@ -3,25 +3,29 @@
pkgname=py3-sphinxcontrib-sqltable
_pkgname=sphinxcontrib.sqltable
pkgver=2.0.0
-pkgrel=3
+pkgrel=8
pkgdesc="Sphinx sqltable extension"
-url="https://pypi.python.org/pypi/sphinxcontrib-sqltable"
+url="https://pypi.org/project/sphinxcontrib-sqltable"
arch="noarch"
license="BSD-2-Clause"
depends="python3 py3-sphinx py3-sqlalchemy"
-makedepends="py3-setuptools py3-pbr"
+makedepends="py3-setuptools py3-pbr py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-sphinxcontrib-sqltable" # Backwards compatibility
+replaces="py-sphinxcontrib-sqltable" # Backwards compatibility
provides="py-sphinxcontrib-sqltable=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="1f56e779857fd0578db5bf194b2867b0b1bcca4a89397a0764c005baef984ef4311ba23b56f87b1d7a17edadd53ec90a58a1cca619286547993ca5e6efb50e7b sphinxcontrib.sqltable-2.0.0.tar.gz"
diff --git a/testing/py3-sphinxcontrib-tabs/APKBUILD b/testing/py3-sphinxcontrib-tabs/APKBUILD
deleted file mode 100644
index e609c2d6045..00000000000
--- a/testing/py3-sphinxcontrib-tabs/APKBUILD
+++ /dev/null
@@ -1,27 +0,0 @@
-# Contributor: Duncan Bellamy <dunk@denkimushi.com>
-# Maintainer: Duncan Bellamy <dunk@denkimushi.com>
-pkgname=py3-sphinxcontrib-tabs
-pkgver=3.3.1
-pkgrel=0
-pkgdesc="Create tabbed content in Sphinx documentation when building HTML"
-url="https://github.com/executablebooks/sphinx-tabs"
-arch="noarch"
-license="MIT"
-#test files are not included in pypi archive
-options="!check"
-depends="python3"
-makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/s/sphinx-tabs/sphinx-tabs-$pkgver.tar.gz"
-builddir="$srcdir/sphinx-tabs-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-db9620738759c65b5c7211bdc92dcc43980b843bae22397982f340a2de6b7284696abf741d50261e326eaff6da4a1c952e75bb8ec3b861e52018be7b748a1455 sphinx-tabs-3.3.1.tar.gz
-"
diff --git a/testing/py3-sphinxcontrib-textstyle/APKBUILD b/testing/py3-sphinxcontrib-textstyle/APKBUILD
index 1f646dfaea1..8507bf50bee 100644
--- a/testing/py3-sphinxcontrib-textstyle/APKBUILD
+++ b/testing/py3-sphinxcontrib-textstyle/APKBUILD
@@ -3,24 +3,29 @@
pkgname=py3-sphinxcontrib-textstyle
_pkgname=sphinxcontrib-textstyle
pkgver=0.2.3
-pkgrel=3
+pkgrel=8
pkgdesc="Sphinx textstyle extension"
-url="https://pypi.python.org/pypi/sphinxcontrib-textstyle"
+url="https://pypi.org/project/sphinxcontrib-textstyle"
arch="noarch"
license="BSD-2-Clause"
depends="python3 py3-sphinx py3-setuptools"
+makedepends="py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-sphinxcontrib-textstyle" # Backwards compatibility
+replaces="py-sphinxcontrib-textstyle" # Backwards compatibility
provides="py-sphinxcontrib-textstyle=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="0b6ba8d50a97439e2ab57de336157f942876ee9c8203e8ff5be415fdc340bacab15fb461579457209e616c7fa1eec2c42720d5b0e3726c83a123e700b096fb4d sphinxcontrib-textstyle-0.2.3.tar.gz"
diff --git a/testing/py3-sphobjinv/APKBUILD b/testing/py3-sphobjinv/APKBUILD
index 391d464caef..dcb38babd47 100644
--- a/testing/py3-sphobjinv/APKBUILD
+++ b/testing/py3-sphobjinv/APKBUILD
@@ -2,8 +2,8 @@
# Maintainer: Galen Abell <galen@galenabell.com>
pkgname=py3-sphobjinv
_pyname=sphobjinv
-pkgver=2.2.2
-pkgrel=0
+pkgver=2.3.1
+pkgrel=2
pkgdesc="Sphinx objects.inv Inspection/Manipulation Tool"
url="https://github.com/bskinn/sphobjinv"
arch="noarch"
@@ -12,6 +12,7 @@ options="!check" # no tests
depends="python3 py3-attrs py3-certifi py3-jsonschema py3-fuzzywuzzy"
makedepends="py3-setuptools"
checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
source="$_pyname-$pkgver.tar.gz::https://github.com/bskinn/sphobjinv/archive/refs/tags/v$pkgver.tar.gz"
builddir="$srcdir/$_pyname-$pkgver"
@@ -20,9 +21,9 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
-36e7667b071f30d4ca066422b21d298c5691321d813ba6ad9eb7a69cd4107ceb18365ee2f95865fad64ab872428b035661a3f513df2e4aab1124b48f49c7280b sphobjinv-2.2.2.tar.gz
+7253b8b21e2027ce22013edf76a6cd397dcebf652e235a8af8b82349fb19a2f7df15d33f9f032f195a4b471f5bb5321c7de0fb195a5c0c2ce3847be23da35862 sphobjinv-2.3.1.tar.gz
"
diff --git a/testing/py3-spidev/APKBUILD b/testing/py3-spidev/APKBUILD
new file mode 100644
index 00000000000..09f0b02675f
--- /dev/null
+++ b/testing/py3-spidev/APKBUILD
@@ -0,0 +1,30 @@
+# Contributor: Edd Salkield <edd@salkield.uk>
+# Maintainer: Edd Salkield <edd@salkield.uk>
+pkgname=py3-spidev
+pkgver=3.6
+pkgrel=0
+pkgdesc="python module for interfacing with SPI devices from user space"
+url="https://github.com/doceme/py-spidev"
+arch="all"
+license="MIT"
+depends="python3"
+makedepends="linux-headers python3-dev py3-setuptools py3-gpep517 py3-installer py3-wheel"
+source="https://github.com/doceme/py-spidev/archive/v$pkgver/py-spidev-v$pkgver.tar.gz"
+builddir="$srcdir/py-spidev-$pkgver/"
+options="!check" # no upstream tests
+
+build() {
+ gpep517 build-wheel \
+ --backend setuptools.build_meta \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/spidev*.whl
+}
+
+sha512sums="
+0d69f8058ffaf8ec6867db78248c398cce5f7349908940ad68297289e7fa0dbb532af4607ad0e0d783e96d0e9fa65f2cb40b442d34c5fba94741e32e0466e61e py-spidev-v3.6.tar.gz
+"
diff --git a/testing/py3-spin/APKBUILD b/testing/py3-spin/APKBUILD
new file mode 100644
index 00000000000..793c2f9ce69
--- /dev/null
+++ b/testing/py3-spin/APKBUILD
@@ -0,0 +1,35 @@
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=py3-spin
+_pkgname=spin
+pkgver=0.8
+pkgrel=0
+pkgdesc="Developer tool for scientific Python libraries"
+url="https://pypi.org/project/spin/"
+arch="noarch"
+license="BSD-3-Clause"
+depends="python3"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+checkdepends="py3-pytest py3-click"
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" .dist/*.whl
+}
+
+sha512sums="
+b8755f692b484b66b445d8e1405946182137c5f176f402a99fffb12883896cce90cd0aed7504dc014b705861b96ca523c0ce87585d16707ba5e49cdd00b40284 spin-0.8.tar.gz
+"
diff --git a/testing/py3-spinners/APKBUILD b/testing/py3-spinners/APKBUILD
index a92561f71a1..b858ccc27f5 100644
--- a/testing/py3-spinners/APKBUILD
+++ b/testing/py3-spinners/APKBUILD
@@ -3,7 +3,7 @@
pkgname=py3-spinners
_pyname=spinners
pkgver=0.0.24
-pkgrel=1
+pkgrel=4
pkgdesc="Terminal spinners for Python"
url="https://github.com/manrajgrover/py-spinners"
arch="noarch"
@@ -11,6 +11,7 @@ license="MIT"
depends="python3"
makedepends="py3-setuptools"
options="!check" # no tests
+subpackages="$pkgname-pyc"
source="$_pyname-$pkgver.tar.gz::https://pypi.python.org/packages/source/s/spinners/spinners-$pkgver.tar.gz"
builddir="$srcdir/$_pyname-$pkgver"
@@ -19,7 +20,7 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
diff --git a/testing/py3-spnego/APKBUILD b/testing/py3-spnego/APKBUILD
new file mode 100644
index 00000000000..a72d957116d
--- /dev/null
+++ b/testing/py3-spnego/APKBUILD
@@ -0,0 +1,51 @@
+# Contributor: Noel Kuntze <noel.kuntze@thermi.consulting>
+# Maintainer: Noel Kuntze <noel.kuntze@thermi.consulting>
+pkgname=py3-spnego
+_pkgname=pyspnego
+pkgver=0.10.2
+pkgrel=1
+pkgdesc="SPNEGO Authentication library"
+url="https://github.com/jborean93/pyspnego"
+arch="noarch"
+license="MIT"
+depends="python3 py3-cryptography"
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ python3-dev
+ "
+checkdepends="
+ cython
+ py3-krb5
+ py3-pytest
+ py3-pytest-cov
+ py3-pytest-mock
+ py3-pytest-xdist
+ py3-python-gssapi
+ py3-ruamel.yaml
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/jborean93/pyspnego/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest -n auto
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+4795c08f541fce3c6c52323bf9182ed7bffdd567986881ad0ff7e039b875e1f7410b6fb83817b0771d45bc5afbefca56a94136c0154553eb7aa5b0a142b71489 py3-spnego-0.10.2.tar.gz
+"
diff --git a/testing/py3-sport-activities-features/APKBUILD b/testing/py3-sport-activities-features/APKBUILD
deleted file mode 100644
index cd22d699e2c..00000000000
--- a/testing/py3-sport-activities-features/APKBUILD
+++ /dev/null
@@ -1,42 +0,0 @@
-# Contributor: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-# Maintainer: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-pkgname=py3-sport-activities-features
-_pkgorig=sport-activities-features
-pkgver=0.2.15
-pkgrel=0
-pkgdesc="A minimalistic toolbox for extracting features from sport activity files"
-url="https://github.com/firefly-cpp/sport-activities-features"
-arch="noarch !s390x !riscv64" # py3-niaaml
-license="MIT"
-depends="
- python3
- py3-dotmap
- py3-geopy
- py3-geotiler
- py3-gpxpy
- py3-matplotlib
- py3-niaaml
- py3-overpy
- py3-requests
- py3-tcxreader
- "
-checkdepends="python3-dev py3-pytest"
-makedepends="py3-setuptools"
-source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/s/sport-activities-features/sport-activities-features-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgorig-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 -m pytest -k 'not test_weather and not test_overpy and not test_data_analysis'
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-539961c59f629573e11ed9cbf2456903490e6950181cc5ebe4b05e5c1509e52697fadc6cec4af1d24c0333a04b211a3e77a5010138080c98557b00c8a81713d2 py3-sport-activities-features-0.2.15.tar.gz
-"
diff --git a/testing/py3-sportydatagen/APKBUILD b/testing/py3-sportydatagen/APKBUILD
new file mode 100644
index 00000000000..7dd26123e0d
--- /dev/null
+++ b/testing/py3-sportydatagen/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
+# Maintainer: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
+pkgname=py3-sportydatagen
+pkgver=0.2.2
+pkgrel=3
+pkgdesc="Generator of Endurance Sports Activity Collections (datasets)"
+url="https://gitlab.com/firefly-cpp/sportydatagen"
+arch="noarch !ppc64le !s390x !riscv64" # py3-sport-activities-features
+license="MIT"
+depends="python3 py3-niapy py3-numpy py3-pandas py3-scikit-learn py3-sport-activities-features"
+makedepends="py3-poetry-core py3-gpep517"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://gitlab.com/firefly-cpp/sportydatagen/-/archive/$pkgver/sportydatagen-$pkgver.tar.gz"
+builddir="$srcdir/sportydatagen-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+# problems with test collection | missing deps; use smoke tests now
+check() {
+ PYTHONPATH=build/lib python3 -c "from sportydatagen import *"
+}
+
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/sportydatagen-$pkgver-py3-none-any.whl
+}
+
+sha512sums="
+8ae9801bbcec2cab63b1e8600f28c0da74008cedbb38b98ba8d59b636265b0f93ab13514ffd778cd15abec71731e1aa9fd30aa88f5be3e513c8c4059a691291d py3-sportydatagen-0.2.2.tar.gz
+"
diff --git a/testing/py3-spotipy/APKBUILD b/testing/py3-spotipy/APKBUILD
new file mode 100644
index 00000000000..2d6940e99e9
--- /dev/null
+++ b/testing/py3-spotipy/APKBUILD
@@ -0,0 +1,28 @@
+# Contributor: Dmitry Zakharchenko <dmitz@disroot.org>
+# Maintainer: Dmitry Zakharchenko <dmitz@disroot.org>
+pkgname=py3-spotipy
+_pkgname=spotipy
+pkgver=2.23.0
+pkgrel=2
+pkgdesc="Light weight Python library for the Spotify Web API"
+url="https://github.com/spotipy-dev/spotipy"
+arch="noarch"
+license="MIT"
+depends="py3-requests py3-six py3-urllib3 py3-redis"
+makedepends="py3-setuptools"
+options="!check" # requires Spotify API Key
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/spotipy-dev/spotipy/archive/$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ python3 setup.py build
+}
+
+package() {
+ python3 setup.py install --skip-build --root="$pkgdir"
+}
+
+sha512sums="
+52955fa3365d5153f19f60874ce8e96910ac8db783499e0e2ef2ab31127277844e24a045115dc522dd7b7535f7907de56da87e02a63b94ee7506b75c1e108e9b py3-spotipy-2.23.0.tar.gz
+"
diff --git a/testing/py3-sqlalchemy-utils/APKBUILD b/testing/py3-sqlalchemy-utils/APKBUILD
deleted file mode 100644
index b4af9dc9891..00000000000
--- a/testing/py3-sqlalchemy-utils/APKBUILD
+++ /dev/null
@@ -1,28 +0,0 @@
-# Contributor: Fabian Affolter <fabian@affolter-engineering.ch>
-# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
-pkgname=py3-sqlalchemy-utils
-_pkgname=SQLAlchemy-Utils
-pkgver=0.38.2
-pkgrel=0
-pkgdesc="Various utility functions and custom data types for SQLAlchemy"
-url="https://sqlalchemy-utils.readthedocs.io/"
-arch="noarch"
-license="BSD-3-Clause"
-depends="py3-anyjson py3-arrow py3-babel py3-colour py3-cryptography
- py3-dateutil py3-furl py3-intervals py3-passlib py3-phonenumbers
- py3-sqlalchemy"
-makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
-builddir="$srcdir"/$_pkgname-$pkgver
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-2dc98549501e3b8fc3ad77aa14f31940e9aa73999d699bb1a2d4be424eb3bff38a3fc8cacf8774e42f816c1b31cc1ccc4e9955cf1dae2fd3a2b9e4e0f0b18cc7 SQLAlchemy-Utils-0.38.2.tar.gz
-"
diff --git a/testing/py3-srsly/APKBUILD b/testing/py3-srsly/APKBUILD
deleted file mode 100644
index 550a042d344..00000000000
--- a/testing/py3-srsly/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Contributor: Oleg Titov <oleg.titov@gmail.com>
-# Maintainer: Oleg Titov <oleg.titov@gmail.com>
-pkgname=py3-srsly
-pkgver=2.0.1
-pkgrel=2
-pkgdesc="Modern high-performance serialization utilities for Python"
-url="https://github.com/explosion/srsly"
-arch="all"
-license="MIT"
-depends="python3 py3-numpy py3-tz"
-makedepends="python3-dev py3-setuptools cython py3-wheel"
-checkdepends="py3-pytest py3-pytest-timeout py3-mock"
-subpackages="$pkgname-doc"
-source="srsly-$pkgver.tar.gz::https://github.com/explosion/srsly/archive/v$pkgver.tar.gz"
-builddir="$srcdir/srsly-$pkgver"
-
-build() {
- python3 setup.py build_ext --inplace
-}
-
-check() {
- PYTHONPATH="$(echo $PWD/build/lib.*)" pytest-3
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-
- install -Dm644 README.md "$pkgdir/usr/share/doc/$pkgname/README.md"
-}
-
-sha512sums="25557e5bd2869b4fcd3a801af6e19461eaf5fab920a252ce24229b637fcdec96ce706eb6b92158e9537c9cf9890b2ac5635c5a4f08641d30f8801fb18cff5128 srsly-2.0.1.tar.gz"
diff --git a/testing/py3-srt/APKBUILD b/testing/py3-srt/APKBUILD
new file mode 100644
index 00000000000..7d0493974c2
--- /dev/null
+++ b/testing/py3-srt/APKBUILD
@@ -0,0 +1,43 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-srt
+pkgver=3.5.3
+pkgrel=1
+pkgdesc="A tiny library for parsing, modifying, and composing SRT files"
+url="https://github.com/cdown/srt"
+arch="noarch"
+license="MIT"
+depends="python3"
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="
+ py3-hypothesis
+ py3-pytest
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/cdown/srt/archive/refs/tags/$pkgver.tar.gz"
+builddir="$srcdir/srt-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+df4968715a557ec594b68ade57ef3fa86599338f693fc339acf91a5036cb50c066e900927001ae92ad71b66e16de3cfe4cfbbf9946372428f7a5cbe179c6de8a py3-srt-3.5.3.tar.gz
+"
diff --git a/testing/py3-sstash/APKBUILD b/testing/py3-sstash/APKBUILD
index 1ea9cda0a3f..2957b062e8b 100644
--- a/testing/py3-sstash/APKBUILD
+++ b/testing/py3-sstash/APKBUILD
@@ -3,7 +3,7 @@
pkgname=py3-sstash
_pkgname=sstash
pkgver=0.17
-pkgrel=5
+pkgrel=8
pkgdesc="A python based on-disk secure stash"
url="https://github.com/realcr/sstash"
arch="noarch"
@@ -11,6 +11,7 @@ license="MIT"
depends="python3 py3-pynacl py3-click py3-jsonschema"
makedepends="py3-setuptools py3-pytest py3-pytest-runner"
options="!check" # PYPI tarball has no tests, GitHub has no releases
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
@@ -19,7 +20,7 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="133b67875b002ac59c17fa8b21c3889108317083c32a6fb4858c3a6c970dc0c97ddfa1fa45d262bbc5d1f5c8210780083cbeb8c740c5f41b5862711eaf3867d5 sstash-0.17.tar.gz"
diff --git a/testing/py3-stem/APKBUILD b/testing/py3-stem/APKBUILD
deleted file mode 100644
index e40b826cd08..00000000000
--- a/testing/py3-stem/APKBUILD
+++ /dev/null
@@ -1,28 +0,0 @@
-# Maintainer: Donoban <donoban@riseup.net>
-pkgname=py3-stem
-pkgver=1.8.0
-pkgrel=1
-pkgdesc="Python controller library that allows applications to interact with Tor"
-url="https://stem.torproject.org/"
-arch="noarch"
-license="LGPL-3.0-or-later"
-depends="python3"
-makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/s/stem/stem-$pkgver.tar.gz"
-builddir="$srcdir"/stem-"$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 setup.py check
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-aa2033567b79aef960f8321e4c6cbc28105c59d6513ff49a9f12509d8f97b1a2e8a3b04dc28abb07fad59b0f6ba66443b92bbefa0d08b26038bbaf24f7f2846d stem-1.8.0.tar.gz
-"
diff --git a/testing/py3-stevedore/APKBUILD b/testing/py3-stevedore/APKBUILD
deleted file mode 100644
index 8e40b8ddab5..00000000000
--- a/testing/py3-stevedore/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Contributor: Dmitry Zakharchenko <dmitz@disroot.org>
-# Maintainer: Dmitry Zakharchenko <dmitz@disroot.org>
-pkgname=py3-stevedore
-_pkgname=stevedore
-pkgver=3.5.0
-pkgrel=1
-pkgdesc="Manage dynamic plugins for Python applications"
-url="https://github.com/openstack/stevedore"
-arch="noarch"
-license="Apache-2.0"
-depends="python3"
-makedepends="py3-setuptools py3-pbr"
-checkdepends="py3-pytest py3-testtools py3-docutils py3-sphinx"
-source="https://pypi.org/packages/source/s/$_pkgname/$_pkgname-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgname-$pkgver"
-
-prepare() {
- default_prepare
- # Remove dependency on pbr; it's not a runtime dependency
- sed -i '/pbr/d' requirements.txt
-}
-
-build() {
- python3 setup.py build
-}
-
-check() {
- pytest
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-be0f82230d7d4d3cf18dd913e11093ad90744e32a3021d9f88f0be244f56d0e3606af0adef67674c569c41d885837be3f0fc4d58009e036151cc67963a4f2ab3 stevedore-3.5.0.tar.gz
-"
diff --git a/testing/py3-stochastic/APKBUILD b/testing/py3-stochastic/APKBUILD
deleted file mode 100644
index 0ca81758f2d..00000000000
--- a/testing/py3-stochastic/APKBUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-# Contributor: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-# Maintainer: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-pkgname=py3-stochastic
-_pkgorig=stochastic
-pkgver=0.6.0
-pkgrel=0
-pkgdesc="Generate realizations of stochastic processes in python"
-url="https://github.com/crflynn/stochastic"
-arch="noarch"
-license="MIT"
-depends="python3 py3-numpy py3-scipy"
-makedepends="py3-build py3-setuptools poetry py3-installer"
-checkdepends="py3-pytest py3-pytest-xdist py3-codecov py3-pytest-cov"
-source="https://github.com/crflynn/stochastic/archive/$pkgver/$_pkgorig-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgorig-$pkgver"
-
-build() {
- GIT_DIR=. python3 -m build --wheel --no-isolation --skip-dependency-check
-}
-
-check() {
- python3 -m pytest
-}
-
-package() {
- python3 -m installer -d "$pkgdir" \
- dist/stochastic-$pkgver-py3-none-any.whl
-}
-
-sha512sums="
-f9eaeedb5e9caa1c623f3e50fbcbbbd094a124864e2461fa4ad05a8289128a1586a954bee3e7ed382c17c8617a11f2c4a96e60aa3629e8560462282025aea6fa stochastic-0.6.0.tar.gz
-"
diff --git a/testing/py3-stringcase/APKBUILD b/testing/py3-stringcase/APKBUILD
index 4232318498b..d307586065a 100644
--- a/testing/py3-stringcase/APKBUILD
+++ b/testing/py3-stringcase/APKBUILD
@@ -3,23 +3,28 @@
pkgname=py3-stringcase
_pkgname=stringcase
pkgver=1.2.0
-pkgrel=3
+pkgrel=8
pkgdesc="Convert string cases between camel case, pascal case, snake case etc..."
url="https://pypi.org/project/stringcase"
-arch="all"
+arch="noarch"
license="MIT"
-depends="python3"
-makedepends="py3-setuptools"
-options="!check" # no tests
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="stringcase-$pkgver.tar.gz::https://pypi.io/packages/source/s/stringcase/stringcase-$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
+options="!check" # no tests
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
-sha512sums="c987f9aa42d22bcfaa6559791bf9292e4300af00d2cf2165838cacd6203b913da197852d49285c30188ca529fd529513cce73a1984f5555cfb81e704977786d3 stringcase-1.2.0.tar.gz"
+sha512sums="
+c987f9aa42d22bcfaa6559791bf9292e4300af00d2cf2165838cacd6203b913da197852d49285c30188ca529fd529513cce73a1984f5555cfb81e704977786d3 stringcase-1.2.0.tar.gz
+"
diff --git a/testing/py3-striprtf/APKBUILD b/testing/py3-striprtf/APKBUILD
deleted file mode 100644
index d8ecf130871..00000000000
--- a/testing/py3-striprtf/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Contributor: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-# Maintainer: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-pkgname=py3-striprtf
-_pkgorig=striprtf
-pkgver=0.0.15
-pkgrel=0
-pkgdesc="Stripping rtf to plain old text"
-url="https://github.com/joshy/striprtf"
-arch="noarch"
-license="BSD-3"
-depends="python3"
-checkdepends="python3-dev py3-pytest"
-makedepends="py3-setuptools"
-source="$pkgname-$pkgver.tar.gz::https://github.com/joshy/$_pkgorig/archive/v$pkgver/$_pkgorig-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgorig-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 -m pytest
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-148d5137cde14aa16673cb6dfb7e513cb07c6d3a377f2df9229388e6f7da8b0a60818a5d4459fe56068101ec171a40391502939660cb09331c4bdaee8d5e1c10 py3-striprtf-0.0.15.tar.gz
-"
diff --git a/testing/py3-subtesthack/APKBUILD b/testing/py3-subtesthack/APKBUILD
deleted file mode 100644
index 41bcd1c0b5e..00000000000
--- a/testing/py3-subtesthack/APKBUILD
+++ /dev/null
@@ -1,25 +0,0 @@
-# Contributor: Galen Abell <galen@galenabell.com>
-# Maintainer: Galen Abell <galen@galenabell.com>
-pkgname=py3-subtesthack
-_pyname=pytest-subtesthack
-pkgver=0.1.2
-pkgrel=2
-pkgdesc="Explicitly set up and tear down fixtures"
-url="https://github.com/untitaker/pytest-subtesthack"
-arch="noarch"
-license="Unlicense"
-options="!check" # no tests
-depends="python3 py3-pytest"
-makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/${_pyname%${_pyname#?}}/$_pyname/$_pyname-$pkgver.tar.gz"
-builddir="$srcdir/$_pyname-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="2d57b30de711692da90318d07c8d0ed1fc3cb9638780ff4499c49fbbc2c7e4bf79dd5355b34114cdf7332730c23820b18e68c50dcdda0eff061e5965d2fc7755 pytest-subtesthack-0.1.2.tar.gz"
diff --git a/testing/py3-svgpath/105_use-better-than-nothing-font.patch b/testing/py3-svgpath/105_use-better-than-nothing-font.patch
new file mode 100644
index 00000000000..7e3d18d1fc5
--- /dev/null
+++ b/testing/py3-svgpath/105_use-better-than-nothing-font.patch
@@ -0,0 +1,300 @@
+From a17ed35e490a99a7dfab9833f6f3be86f004f699 Mon Sep 17 00:00:00 2001
+From: Benjamin Drung <benjamin.drung@canonical.com>
+Date: Fri, 15 Dec 2023 15:32:16 +0100
+Subject: [PATCH] tests: Use better than nothing font
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Pillow 10.1.0 uses a version of Aileron Regular instead of the previous
+“better than nothing†default font (in case FreeType support is
+available). This font change changes the resulting bitmap.
+
+Use the "better than nothing" font to keep the expected result
+identical. The proper solution is either to use one specific font in
+svg.path or make pillow support loading the “better than nothingâ€
+default font.
+
+Bug-Debian: https://bugs.debian.org/1055159
+---
+ tests/font.py | 145 ++++++++++++++++++++++++++++++++
+ tests/test_boundingbox_image.py | 18 ++--
+ tests/test_image.py | 18 +++-
+ 3 files changed, 170 insertions(+), 11 deletions(-)
+ create mode 100644 tests/font.py
+
+diff --git a/tests/font.py b/tests/font.py
+new file mode 100644
+index 0000000..d375f49
+--- /dev/null
++++ b/tests/font.py
+@@ -0,0 +1,145 @@
++# Code taken from https://github.com/python-pillow/Pillow/blob/main/src/PIL/ImageFont.py
++#
++# License: the open source HPND License
++# Copyright (c) 1997-2003 by Secret Labs AB
++# Copyright (c) 1996-2003 by Fredrik Lundh
++
++from PIL import Image, ImageFont
++from io import BytesIO
++import base64
++
++
++def get_better_than_nothing_font():
++ font = ImageFont.ImageFont()
++ font._load_pilfont_data(
++ # courB08
++ BytesIO(
++ base64.b64decode(
++ b"""
++UElMZm9udAo7Ozs7OzsxMDsKREFUQQoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
++AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
++AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
++AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
++AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
++AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
++AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
++AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
++AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
++AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
++AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
++AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYAAAAA//8AAQAAAAAAAAABAAEA
++BgAAAAH/+gADAAAAAQAAAAMABgAGAAAAAf/6AAT//QADAAAABgADAAYAAAAA//kABQABAAYAAAAL
++AAgABgAAAAD/+AAFAAEACwAAABAACQAGAAAAAP/5AAUAAAAQAAAAFQAHAAYAAP////oABQAAABUA
++AAAbAAYABgAAAAH/+QAE//wAGwAAAB4AAwAGAAAAAf/5AAQAAQAeAAAAIQAIAAYAAAAB//kABAAB
++ACEAAAAkAAgABgAAAAD/+QAE//0AJAAAACgABAAGAAAAAP/6AAX//wAoAAAALQAFAAYAAAAB//8A
++BAACAC0AAAAwAAMABgAAAAD//AAF//0AMAAAADUAAQAGAAAAAf//AAMAAAA1AAAANwABAAYAAAAB
++//kABQABADcAAAA7AAgABgAAAAD/+QAFAAAAOwAAAEAABwAGAAAAAP/5AAYAAABAAAAARgAHAAYA
++AAAA//kABQAAAEYAAABLAAcABgAAAAD/+QAFAAAASwAAAFAABwAGAAAAAP/5AAYAAABQAAAAVgAH
++AAYAAAAA//kABQAAAFYAAABbAAcABgAAAAD/+QAFAAAAWwAAAGAABwAGAAAAAP/5AAUAAABgAAAA
++ZQAHAAYAAAAA//kABQAAAGUAAABqAAcABgAAAAD/+QAFAAAAagAAAG8ABwAGAAAAAf/8AAMAAABv
++AAAAcQAEAAYAAAAA//wAAwACAHEAAAB0AAYABgAAAAD/+gAE//8AdAAAAHgABQAGAAAAAP/7AAT/
++/gB4AAAAfAADAAYAAAAB//oABf//AHwAAACAAAUABgAAAAD/+gAFAAAAgAAAAIUABgAGAAAAAP/5
++AAYAAQCFAAAAiwAIAAYAAP////oABgAAAIsAAACSAAYABgAA////+gAFAAAAkgAAAJgABgAGAAAA
++AP/6AAUAAACYAAAAnQAGAAYAAP////oABQAAAJ0AAACjAAYABgAA////+gAFAAAAowAAAKkABgAG
++AAD////6AAUAAACpAAAArwAGAAYAAAAA//oABQAAAK8AAAC0AAYABgAA////+gAGAAAAtAAAALsA
++BgAGAAAAAP/6AAQAAAC7AAAAvwAGAAYAAP////oABQAAAL8AAADFAAYABgAA////+gAGAAAAxQAA
++AMwABgAGAAD////6AAUAAADMAAAA0gAGAAYAAP////oABQAAANIAAADYAAYABgAA////+gAGAAAA
++2AAAAN8ABgAGAAAAAP/6AAUAAADfAAAA5AAGAAYAAP////oABQAAAOQAAADqAAYABgAAAAD/+gAF
++AAEA6gAAAO8ABwAGAAD////6AAYAAADvAAAA9gAGAAYAAAAA//oABQAAAPYAAAD7AAYABgAA////
+++gAFAAAA+wAAAQEABgAGAAD////6AAYAAAEBAAABCAAGAAYAAP////oABgAAAQgAAAEPAAYABgAA
++////+gAGAAABDwAAARYABgAGAAAAAP/6AAYAAAEWAAABHAAGAAYAAP////oABgAAARwAAAEjAAYA
++BgAAAAD/+gAFAAABIwAAASgABgAGAAAAAf/5AAQAAQEoAAABKwAIAAYAAAAA//kABAABASsAAAEv
++AAgABgAAAAH/+QAEAAEBLwAAATIACAAGAAAAAP/5AAX//AEyAAABNwADAAYAAAAAAAEABgACATcA
++AAE9AAEABgAAAAH/+QAE//wBPQAAAUAAAwAGAAAAAP/7AAYAAAFAAAABRgAFAAYAAP////kABQAA
++AUYAAAFMAAcABgAAAAD/+wAFAAABTAAAAVEABQAGAAAAAP/5AAYAAAFRAAABVwAHAAYAAAAA//sA
++BQAAAVcAAAFcAAUABgAAAAD/+QAFAAABXAAAAWEABwAGAAAAAP/7AAYAAgFhAAABZwAHAAYAAP//
++//kABQAAAWcAAAFtAAcABgAAAAD/+QAGAAABbQAAAXMABwAGAAAAAP/5AAQAAgFzAAABdwAJAAYA
++AP////kABgAAAXcAAAF+AAcABgAAAAD/+QAGAAABfgAAAYQABwAGAAD////7AAUAAAGEAAABigAF
++AAYAAP////sABQAAAYoAAAGQAAUABgAAAAD/+wAFAAABkAAAAZUABQAGAAD////7AAUAAgGVAAAB
++mwAHAAYAAAAA//sABgACAZsAAAGhAAcABgAAAAD/+wAGAAABoQAAAacABQAGAAAAAP/7AAYAAAGn
++AAABrQAFAAYAAAAA//kABgAAAa0AAAGzAAcABgAA////+wAGAAABswAAAboABQAGAAD////7AAUA
++AAG6AAABwAAFAAYAAP////sABgAAAcAAAAHHAAUABgAAAAD/+wAGAAABxwAAAc0ABQAGAAD////7
++AAYAAgHNAAAB1AAHAAYAAAAA//sABQAAAdQAAAHZAAUABgAAAAH/+QAFAAEB2QAAAd0ACAAGAAAA
++Av/6AAMAAQHdAAAB3gAHAAYAAAAA//kABAABAd4AAAHiAAgABgAAAAD/+wAF//0B4gAAAecAAgAA
++AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
++AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
++AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
++AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
++AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
++AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
++AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
++AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
++AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
++AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
++AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
++AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYAAAAB
++//sAAwACAecAAAHpAAcABgAAAAD/+QAFAAEB6QAAAe4ACAAGAAAAAP/5AAYAAAHuAAAB9AAHAAYA
++AAAA//oABf//AfQAAAH5AAUABgAAAAD/+QAGAAAB+QAAAf8ABwAGAAAAAv/5AAMAAgH/AAACAAAJ
++AAYAAAAA//kABQABAgAAAAIFAAgABgAAAAH/+gAE//sCBQAAAggAAQAGAAAAAP/5AAYAAAIIAAAC
++DgAHAAYAAAAB//kABf/+Ag4AAAISAAUABgAA////+wAGAAACEgAAAhkABQAGAAAAAP/7AAX//gIZ
++AAACHgADAAYAAAAA//wABf/9Ah4AAAIjAAEABgAAAAD/+QAHAAACIwAAAioABwAGAAAAAP/6AAT/
+++wIqAAACLgABAAYAAAAA//kABP/8Ai4AAAIyAAMABgAAAAD/+gAFAAACMgAAAjcABgAGAAAAAf/5
++AAT//QI3AAACOgAEAAYAAAAB//kABP/9AjoAAAI9AAQABgAAAAL/+QAE//sCPQAAAj8AAgAGAAD/
++///7AAYAAgI/AAACRgAHAAYAAAAA//kABgABAkYAAAJMAAgABgAAAAH//AAD//0CTAAAAk4AAQAG
++AAAAAf//AAQAAgJOAAACUQADAAYAAAAB//kABP/9AlEAAAJUAAQABgAAAAH/+QAF//4CVAAAAlgA
++BQAGAAD////7AAYAAAJYAAACXwAFAAYAAP////kABgAAAl8AAAJmAAcABgAA////+QAGAAACZgAA
++Am0ABwAGAAD////5AAYAAAJtAAACdAAHAAYAAAAA//sABQACAnQAAAJ5AAcABgAA////9wAGAAAC
++eQAAAoAACQAGAAD////3AAYAAAKAAAAChwAJAAYAAP////cABgAAAocAAAKOAAkABgAA////9wAG
++AAACjgAAApUACQAGAAD////4AAYAAAKVAAACnAAIAAYAAP////cABgAAApwAAAKjAAkABgAA////
+++gAGAAACowAAAqoABgAGAAAAAP/6AAUAAgKqAAACrwAIAAYAAP////cABQAAAq8AAAK1AAkABgAA
++////9wAFAAACtQAAArsACQAGAAD////3AAUAAAK7AAACwQAJAAYAAP////gABQAAAsEAAALHAAgA
++BgAAAAD/9wAEAAACxwAAAssACQAGAAAAAP/3AAQAAALLAAACzwAJAAYAAAAA//cABAAAAs8AAALT
++AAkABgAAAAD/+AAEAAAC0wAAAtcACAAGAAD////6AAUAAALXAAAC3QAGAAYAAP////cABgAAAt0A
++AALkAAkABgAAAAD/9wAFAAAC5AAAAukACQAGAAAAAP/3AAUAAALpAAAC7gAJAAYAAAAA//cABQAA
++Au4AAALzAAkABgAAAAD/9wAFAAAC8wAAAvgACQAGAAAAAP/4AAUAAAL4AAAC/QAIAAYAAAAA//oA
++Bf//Av0AAAMCAAUABgAA////+gAGAAADAgAAAwkABgAGAAD////3AAYAAAMJAAADEAAJAAYAAP//
++//cABgAAAxAAAAMXAAkABgAA////9wAGAAADFwAAAx4ACQAGAAD////4AAYAAAAAAAoABwASAAYA
++AP////cABgAAAAcACgAOABMABgAA////+gAFAAAADgAKABQAEAAGAAD////6AAYAAAAUAAoAGwAQ
++AAYAAAAA//gABgAAABsACgAhABIABgAAAAD/+AAGAAAAIQAKACcAEgAGAAAAAP/4AAYAAAAnAAoA
++LQASAAYAAAAA//gABgAAAC0ACgAzABIABgAAAAD/+QAGAAAAMwAKADkAEQAGAAAAAP/3AAYAAAA5
++AAoAPwATAAYAAP////sABQAAAD8ACgBFAA8ABgAAAAD/+wAFAAIARQAKAEoAEQAGAAAAAP/4AAUA
++AABKAAoATwASAAYAAAAA//gABQAAAE8ACgBUABIABgAAAAD/+AAFAAAAVAAKAFkAEgAGAAAAAP/5
++AAUAAABZAAoAXgARAAYAAAAA//gABgAAAF4ACgBkABIABgAAAAD/+AAGAAAAZAAKAGoAEgAGAAAA
++AP/4AAYAAABqAAoAcAASAAYAAAAA//kABgAAAHAACgB2ABEABgAAAAD/+AAFAAAAdgAKAHsAEgAG
++AAD////4AAYAAAB7AAoAggASAAYAAAAA//gABQAAAIIACgCHABIABgAAAAD/+AAFAAAAhwAKAIwA
++EgAGAAAAAP/4AAUAAACMAAoAkQASAAYAAAAA//gABQAAAJEACgCWABIABgAAAAD/+QAFAAAAlgAK
++AJsAEQAGAAAAAP/6AAX//wCbAAoAoAAPAAYAAAAA//oABQABAKAACgClABEABgAA////+AAGAAAA
++pQAKAKwAEgAGAAD////4AAYAAACsAAoAswASAAYAAP////gABgAAALMACgC6ABIABgAA////+QAG
++AAAAugAKAMEAEQAGAAD////4AAYAAgDBAAoAyAAUAAYAAP////kABQACAMgACgDOABMABgAA////
+++QAGAAIAzgAKANUAEw==
++"""
++ )
++ ),
++ Image.open(
++ BytesIO(
++ base64.b64decode(
++ b"""
++iVBORw0KGgoAAAANSUhEUgAAAx4AAAAUAQAAAAArMtZoAAAEwElEQVR4nABlAJr/AHVE4czCI/4u
++Mc4b7vuds/xzjz5/3/7u/n9vMe7vnfH/9++vPn/xyf5zhxzjt8GHw8+2d83u8x27199/nxuQ6Od9
++M43/5z2I+9n9ZtmDBwMQECDRQw/eQIQohJXxpBCNVE6QCCAAAAD//wBlAJr/AgALyj1t/wINwq0g
++LeNZUworuN1cjTPIzrTX6ofHWeo3v336qPzfEwRmBnHTtf95/fglZK5N0PDgfRTslpGBvz7LFc4F
++IUXBWQGjQ5MGCx34EDFPwXiY4YbYxavpnhHFrk14CDAAAAD//wBlAJr/AgKqRooH2gAgPeggvUAA
++Bu2WfgPoAwzRAABAAAAAAACQgLz/3Uv4Gv+gX7BJgDeeGP6AAAD1NMDzKHD7ANWr3loYbxsAD791
++NAADfcoIDyP44K/jv4Y63/Z+t98Ovt+ub4T48LAAAAD//wBlAJr/AuplMlADJAAAAGuAphWpqhMx
++in0A/fRvAYBABPgBwBUgABBQ/sYAyv9g0bCHgOLoGAAAAAAAREAAwI7nr0ArYpow7aX8//9LaP/9
++SjdavWA8ePHeBIKB//81/83ndznOaXx379wAAAD//wBlAJr/AqDxW+D3AABAAbUh/QMnbQag/gAY
++AYDAAACgtgD/gOqAAAB5IA/8AAAk+n9w0AAA8AAAmFRJuPo27ciC0cD5oeW4E7KA/wD3ECMAn2tt
++y8PgwH8AfAxFzC0JzeAMtratAsC/ffwAAAD//wBlAJr/BGKAyCAA4AAAAvgeYTAwHd1kmQF5chkG
++ABoMIHcL5xVpTfQbUqzlAAAErwAQBgAAEOClA5D9il08AEh/tUzdCBsXkbgACED+woQg8Si9VeqY
++lODCn7lmF6NhnAEYgAAA/NMIAAAAAAD//2JgjLZgVGBg5Pv/Tvpc8hwGBjYGJADjHDrAwPzAjv/H
++/Wf3PzCwtzcwHmBgYGcwbZz8wHaCAQMDOwMDQ8MCBgYOC3W7mp+f0w+wHOYxO3OG+e376hsMZjk3
++AAAAAP//YmCMY2A4wMAIN5e5gQETPD6AZisDAwMDgzSDAAPjByiHcQMDAwMDg1nOze1lByRu5/47
++c4859311AYNZzg0AAAAA//9iYGDBYihOIIMuwIjGL39/fwffA8b//xv/P2BPtzzHwCBjUQAAAAD/
++/yLFBrIBAAAA//9i1HhcwdhizX7u8NZNzyLbvT97bfrMf/QHI8evOwcSqGUJAAAA//9iYBB81iSw
++pEE170Qrg5MIYydHqwdDQRMrAwcVrQAAAAD//2J4x7j9AAMDn8Q/BgYLBoaiAwwMjPdvMDBYM1Tv
++oJodAAAAAP//Yqo/83+dxePWlxl3npsel9lvLfPcqlE9725C+acfVLMEAAAA//9i+s9gwCoaaGMR
++evta/58PTEWzr21hufPjA8N+qlnBwAAAAAD//2JiWLci5v1+HmFXDqcnULE/MxgYGBj+f6CaJQAA
++AAD//2Ji2FrkY3iYpYC5qDeGgeEMAwPDvwQBBoYvcTwOVLMEAAAA//9isDBgkP///0EOg9z35v//
++Gc/eeW7BwPj5+QGZhANUswMAAAD//2JgqGBgYGBgqEMXlvhMPUsAAAAA//8iYDd1AAAAAP//AwDR
++w7IkEbzhVQAAAABJRU5ErkJggg==
++"""
++ )
++ )
++ ),
++ )
++ return font
+diff --git a/tests/test_boundingbox_image.py b/tests/test_boundingbox_image.py
+index 21f19a7..414f0b1 100644
+--- a/tests/test_boundingbox_image.py
++++ b/tests/test_boundingbox_image.py
+@@ -5,6 +5,7 @@
+
+ from PIL import Image, ImageDraw, ImageColor, ImageChops
+ from svg.path.path import CubicBezier, QuadraticBezier, Line, Arc
++from .font import get_better_than_nothing_font
+
+
+ RED = ImageColor.getcolor("red", mode="RGB")
+@@ -57,17 +58,15 @@ def draw_boundingbox(self, path):
+ sys.platform != "linux", reason="Different platforms have different fonts"
+ )
+ def test_image(self):
+- self.draw.text((10, 10), "This is an SVG line:")
+- self.draw.text(
+- (10, 100),
+- "The red line is a bounding box.",
+- )
++ font = get_better_than_nothing_font()
++ self.draw.text((10, 10), "This is an SVG line:", font=font)
++ self.draw.text((10, 100), "The red line is a bounding box.", font=font)
+
+ line1 = Line(40 + 60j, 200 + 80j)
+ self.draw_path(line1)
+ self.draw_boundingbox(line1)
+
+- self.draw.text((10, 140), "These are Arc segments:")
++ self.draw.text((10, 140), "These are Arc segments:", font=font)
+ arc1 = Arc(260 + 320j, 100 + 100j, 0, 1, 1, 260 + 319j)
+ self.draw_path(arc1)
+ self.draw_boundingbox(arc1)
+@@ -83,6 +82,7 @@ def test_image(self):
+ self.draw.text(
+ (10, 500),
+ "Next we have a quadratic bezier curve, with one tangent:",
++ font=font,
+ )
+ start = 30 + 600j
+ control = 400 + 540j
+@@ -95,12 +95,16 @@ def test_image(self):
+ self.draw.text(
+ (10, 670),
+ "The white dot is the control point, and the cyan lines are ",
++ font=font,
++ )
++ self.draw.text(
++ (10, 690), "illustrating the how the control point works.", font=font
+ )
+- self.draw.text((10, 690), "illustrating the how the control point works.")
+
+ self.draw.text(
+ (10, 730),
+ "Lastly is a cubic bezier, with 2 tangents, and 2 control points:",
++ font=font,
+ )
+
+ start = 200 + 800j
+diff --git a/tests/test_image.py b/tests/test_image.py
+index 49967ea..ae3a357 100644
+--- a/tests/test_image.py
++++ b/tests/test_image.py
+@@ -4,6 +4,7 @@
+ from math import sqrt
+
+ from svg.path.path import CubicBezier, QuadraticBezier, Line, Arc
++from .font import get_better_than_nothing_font
+
+
+ RED = ImageColor.getcolor("red", mode="RGB")
+@@ -57,25 +58,30 @@ def draw_tangents(self, path, count):
+ self.draw.line([c2t(p), c2t(tt + p)], fill=YELLOW, width=1)
+
+ def test_image(self):
+- self.draw.text((10, 10), "This is an SVG line:")
++ font = get_better_than_nothing_font()
++ self.draw.text((10, 10), "This is an SVG line:", font=font)
+ self.draw.text(
+ (10, 100),
+ "The red line is a tangent, and the yellow is 90 degrees from that.",
++ font=font,
+ )
+
+ line1 = Line(40 + 60j, 200 + 80j)
+ self.draw_path(line1)
+ self.draw_tangents(line1, 1)
+
+- self.draw.text((10, 140), "This is an Arc segment, almost a whole circle:")
++ self.draw.text(
++ (10, 140), "This is an Arc segment, almost a whole circle:", font=font
++ )
+ arc1 = Arc(260 + 320j, 100 + 100j, 0, 1, 1, 260 + 319j)
+ self.draw_path(arc1)
+ self.draw_tangents(arc1, 5)
+- self.draw.text((10, 460), "With five tangents.")
++ self.draw.text((10, 460), "With five tangents.", font=font)
+
+ self.draw.text(
+ (10, 500),
+ "Next we have a quadratic bezier curve, with one tangent:",
++ font=font,
+ )
+ start = 30 + 600j
+ control = 400 + 540j
+@@ -88,12 +94,16 @@ def test_image(self):
+ self.draw.text(
+ (10, 670),
+ "The white dot is the control point, and the cyan lines are ",
++ font=font,
++ )
++ self.draw.text(
++ (10, 690), "illustrating the how the control point works.", font=font
+ )
+- self.draw.text((10, 690), "illustrating the how the control point works.")
+
+ self.draw.text(
+ (10, 730),
+ "Lastly is a cubic bezier, with 2 tangents, and 2 control points:",
++ font=font,
+ )
+
+ start = 30 + 800j
diff --git a/testing/py3-svgpath/APKBUILD b/testing/py3-svgpath/APKBUILD
new file mode 100644
index 00000000000..12901b96a2f
--- /dev/null
+++ b/testing/py3-svgpath/APKBUILD
@@ -0,0 +1,37 @@
+# Contributor: Aiden Grossman <agrossman154@yahoo.com>
+# Maintainer: Aiden Grossman <agrossman154@yahoo.com>
+pkgname=py3-svgpath
+pkgver=6.3
+pkgrel=2
+pkgdesc="SVG path and object parser"
+url="https://github.com/regebro/svg.path"
+arch="noarch"
+license="MIT"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+checkdepends="py3-pytest py3-pillow"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/regebro/svg.path/archive/refs/tags/$pkgver.tar.gz
+ 105_use-better-than-nothing-font.patch
+ no-install-tests.patch"
+builddir="$srcdir/svg.path-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ PYTHONPATH=build/lib pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+fd9dd9e1e603be5e212e3eb247c9f3778203f5285397a4cdde4c038c3f31f7bc2b8904491c208256996e2fbd39b4e5f7ea58d964bd5d22bc09c57e4bc2c70317 py3-svgpath-6.3.tar.gz
+d12d32b0f6b075ee8602a7eee5dd1ddaa8f097fe3d471f2941fac0bba335641111eb2c0e2819dffea822f895833ffafa35baac80085cf759ca1ed8f7a6b92773 105_use-better-than-nothing-font.patch
+62ab1e0980c7fb797f74b81c937a68b6af1112fff293e6ddec6389a8e490a08e181c37217408b58ce3a2ae2afda7813bb3bbe57d5414cfc18e4e53e6d2f2ea5a no-install-tests.patch
+"
diff --git a/testing/py3-svgpath/no-install-tests.patch b/testing/py3-svgpath/no-install-tests.patch
new file mode 100644
index 00000000000..994ce3ce7bd
--- /dev/null
+++ b/testing/py3-svgpath/no-install-tests.patch
@@ -0,0 +1,15 @@
+--- ./setup.py.orig
++++ ./setup.py
+@@ -1,3 +1,3 @@
+-from setuptools import setup
++from setuptools import setup, find_packages
+
+-setup()
++setup(packages=find_packages("src", exclude=["*tests"]))
+--- ./MANIFEST.in.orig
++++ ./MANIFEST.in
+@@ -3,3 +3,4 @@
+
+ recursive-include src *.png
+
++global-exclude tests/*
diff --git a/testing/py3-swagger-ui-bundle/APKBUILD b/testing/py3-swagger-ui-bundle/APKBUILD
new file mode 100644
index 00000000000..1ead641bb98
--- /dev/null
+++ b/testing/py3-swagger-ui-bundle/APKBUILD
@@ -0,0 +1,49 @@
+# Contributor: Henrik Riomar <henrik.riomar@gmail.com>
+# Maintainer: Henrik Riomar <henrik.riomar@gmail.com>
+pkgname=py3-swagger-ui-bundle
+_pkgname=swagger_ui_bundle
+pkgver=1.1.0
+pkgrel=1
+pkgdesc="bundled swagger-ui package"
+url="https://github.com/dtkav/swagger-ui-bundle"
+arch="noarch !riscv64" # missing checkdep
+license="Apache-2.0"
+checkdepends="
+ py3-pytest
+ py3-pytest-runner
+ "
+makedepends="
+ py3-flake8
+ py3-gpep517
+ py3-poetry-core
+ py3-setuptools
+ py3-wheel
+ "
+depends="
+ python3
+ py3-jinja2
+ "
+subpackages="$pkgname-pyc"
+source="https://github.com/dtkav/swagger-ui-bundle/archive/$pkgver/$_pkgname-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+a32f7119698e1303ddab3708b307ab4a83e74804800124bedc78228e0f389ca3442aaff900ac374209813f0f1b01713c65292bda862ec04212593405cbb659fe swagger_ui_bundle-1.1.0.tar.gz
+"
diff --git a/testing/py3-syrupy/APKBUILD b/testing/py3-syrupy/APKBUILD
new file mode 100644
index 00000000000..ab914fc103a
--- /dev/null
+++ b/testing/py3-syrupy/APKBUILD
@@ -0,0 +1,36 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=py3-syrupy
+_pyname=${pkgname/py3-/}
+pkgver=4.6.1
+pkgrel=1
+pkgdesc="The sweeter pytest snapshot plugin"
+url="https://tophat.github.io/syrupy"
+arch="noarch"
+license="Apache-2.0"
+depends="python3 py3-pytest py3-colored"
+makedepends="py3-poetry-core py3-gpep517"
+checkdepends="py3-invoke py3-pytest-benchmark"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/tophat/syrupy/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/$_pyname-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest --snapshot-update
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/$_pyname-$pkgver-py3-none-any.whl
+}
+
+sha512sums="
+579787b788567d7e22e322cbccf1105666ad6d72d2eb0c0dad90a78714626f925d31d4e6187b9761c82576d47d34e56fda4b6bf39df3e83b2b43a37d1bbc7f0d py3-syrupy-4.6.1.tar.gz
+"
diff --git a/testing/py3-tailer/APKBUILD b/testing/py3-tailer/APKBUILD
index f0928c6903b..df30c3b17ec 100644
--- a/testing/py3-tailer/APKBUILD
+++ b/testing/py3-tailer/APKBUILD
@@ -1,23 +1,29 @@
# Contributor: Fabian Affolter <fabian@affolter-engineering.ch>
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-tailer
-_pkgname=tailer
pkgver=0.4.1
-pkgrel=3
+pkgrel=7
pkgdesc="Python tail is a simple implementation of GNU tail and head"
url="https://github.com/six8/pytailer"
arch="noarch"
license="MIT"
-depends="python3"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
+makedepends="py3-gpep517 py3-wheel py3-setuptools"
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/t/tailer/tailer-$pkgver.tar.gz"
+builddir="$srcdir/tailer-$pkgver"
+options="!check" # no tests provided
-builddir="$srcdir"/$_pkgname-$pkgver
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
-sha512sums="c1f0f4cf9356c58366e3d86087bc922378a5d5d9833385e8b0f9acd16211a7ff486c4ea3be13208b85a9766b3fa163071216de54c7170395c18ba6da61650da3 tailer-0.4.1.tar.gz"
+sha512sums="
+c1f0f4cf9356c58366e3d86087bc922378a5d5d9833385e8b0f9acd16211a7ff486c4ea3be13208b85a9766b3fa163071216de54c7170395c18ba6da61650da3 tailer-0.4.1.tar.gz
+"
diff --git a/testing/py3-tasklib/APKBUILD b/testing/py3-tasklib/APKBUILD
index f44c1f9e84f..c5d406fac0d 100644
--- a/testing/py3-tasklib/APKBUILD
+++ b/testing/py3-tasklib/APKBUILD
@@ -1,14 +1,15 @@
# Contributor: Edd Salkield <edd@salkield.uk>
# Maintainer: Edd Salkield <edd@salkield.uk>
pkgname=py3-tasklib
-pkgver=2.4.3
-pkgrel=1
+pkgver=2.5.1
+pkgrel=2
pkgdesc="A Python library for interacting with taskwarrior databases"
url="https://github.com/GothenburgBitFactory/tasklib"
arch="noarch"
license="BSD-3-Clause"
depends="python3 task py3-tz py3-tzlocal"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/GothenburgBitFactory/tasklib/archive/refs/tags/$pkgver.tar.gz"
builddir="$srcdir/tasklib-$pkgver"
options="!check" # no upstream tests
@@ -20,5 +21,5 @@ package() {
--single-version-externally-managed
}
sha512sums="
-438211da96dcb5a80115b0375f6a425f4629de3e49379bb9d98f9e10342c66d2bb35b92cbd794d1fe78741fc58d89a5edc16b10ab7eb22275c9f9f0a4a87e295 py3-tasklib-2.4.3.tar.gz
+b52a94e487eb90776a5edec63bfef9a4eaa5a87065be3a5386bd0d8b277b88fb35663ea5789e573a088e54fb9aa835c27d787fced4ed5198badff995dcc2e7e0 py3-tasklib-2.5.1.tar.gz
"
diff --git a/testing/py3-tcxparser/APKBUILD b/testing/py3-tcxparser/APKBUILD
deleted file mode 100644
index 378f1344da4..00000000000
--- a/testing/py3-tcxparser/APKBUILD
+++ /dev/null
@@ -1,30 +0,0 @@
-# Contributor: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-# Maintainer: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-pkgname=py3-tcxparser
-_pkgorig=python-tcxparser
-pkgver=2.2.0
-pkgrel=0
-pkgdesc="Simple parser for Garmin TCX files"
-url="https://github.com/vkurup/python-tcxparser"
-arch="noarch"
-license="BSD"
-depends="python3 py3-lxml py3-dateutil"
-makedepends="py3-setuptools"
-source="https://github.com/vkurup/python-tcxparser/archive/$pkgver/$_pkgorig-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgorig-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 setup.py test
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-55de171e4eb22cb059697dd0a7c6587a2ae0bc3b1117423c5d90bac84de283e64dae49c9c19f5ed70c2a6f9f79016b16d3d1fb1fec02df5d9da1fcd99327e7b7 python-tcxparser-2.2.0.tar.gz
-"
diff --git a/testing/py3-telegram-bot/APKBUILD b/testing/py3-telegram-bot/APKBUILD
index 7ba6b3508dc..a591d6d772f 100644
--- a/testing/py3-telegram-bot/APKBUILD
+++ b/testing/py3-telegram-bot/APKBUILD
@@ -2,8 +2,8 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=py3-telegram-bot
_pkgname=python-telegram-bot
-pkgver=13.11
-pkgrel=0
+pkgver=20.8
+pkgrel=1
pkgdesc="A Python wrapper around the Telegram Bot API"
url="https://github.com/python-telegram-bot/python-telegram-bot"
arch="noarch"
@@ -12,6 +12,7 @@ depends="py3-future py3-certifi py3-tornado py3-cryptography py3-decorator"
#checkdepends="pytest py-cffi py-cryptography py-future py-pathlib2"
options="!check" # few requirements-dev.txt packages missing in alpine
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/python-telegram-bot/python-telegram-bot/archive/v$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -27,9 +28,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
-8ccae24ad577da18aba9428e006406627d018004fea7f52217e805a49c73a74ba22cd4785c38b34a2cd6df899e1ceed89cccbc2f9fd8a7af5292a89032d4da3a py3-telegram-bot-13.11.tar.gz
+835a62bca5c14f06b3db682e3e5af732ab17c32ff89df1020d6cf30217c7db86f800a05f55e977dbd59cb9d46b26e03bc262ace48cd3f5b2ff1c63eb109b81c7 py3-telegram-bot-20.8.tar.gz
"
diff --git a/testing/py3-telegram-text/APKBUILD b/testing/py3-telegram-text/APKBUILD
new file mode 100644
index 00000000000..b91fd43a68a
--- /dev/null
+++ b/testing/py3-telegram-text/APKBUILD
@@ -0,0 +1,33 @@
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=py3-telegram-text
+pkgver=0.2.0
+pkgrel=1
+pkgdesc="Python markup module for Telegram messenger"
+url="https://telegram-text.alinsky.tech/"
+arch="noarch"
+license="MIT"
+depends="python3"
+makedepends="py3-gpep517 py3-poetry-core py3-installer"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/SKY-ALIN/telegram-text/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/telegram-text-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/telegram_text*.whl
+}
+
+sha512sums="
+aeab4e87fb4f07f0c335ecd2cddc42b754699285b59eec5bc8433dbf817b576dd36ade4c75cbad79642127f0c7e2f7c1f6bd2b220c2755bb9550ffed82a5cb14 py3-telegram-text-0.2.0.tar.gz
+"
diff --git a/testing/py3-telegram/0001-Use-system-tdlib.patch b/testing/py3-telegram/0001-Use-system-tdlib.patch
deleted file mode 100644
index a5f9340cc6d..00000000000
--- a/testing/py3-telegram/0001-Use-system-tdlib.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-diff --git a/telegram/tdjson.py b/telegram/tdjson.py
-index 091145e..21c0361 100644
---- a/telegram/tdjson.py
-+++ b/telegram/tdjson.py
-@@ -2,6 +2,7 @@ import json
- import logging
- import platform
- from ctypes import CDLL, CFUNCTYPE, c_int, c_char_p, c_double, c_void_p, c_longlong
-+from ctypes.util import find_library
- from typing import Any, Dict, Optional, Union
-
- import pkg_resources
-@@ -10,13 +11,7 @@ logger = logging.getLogger(__name__)
-
-
- def _get_tdjson_lib_path() -> str:
-- if platform.system().lower() == 'darwin':
-- lib_name = 'darwin/libtdjson.dylib'
-- else:
-- lib_name = 'linux/libtdjson.so'
--
-- return pkg_resources.resource_filename('telegram', f'lib/{lib_name}')
--
-+ return find_library("tdjson")
-
- class TDJson:
- def __init__(self, library_path: Optional[str] = None, verbosity: int = 2) -> None:
diff --git a/testing/py3-telegram/0002-Remove-binarys.patch b/testing/py3-telegram/0002-Remove-binarys.patch
index 72b1744dfb5..0e090063534 100644
--- a/testing/py3-telegram/0002-Remove-binarys.patch
+++ b/testing/py3-telegram/0002-Remove-binarys.patch
@@ -1,8 +1,8 @@
diff --git a/setup.py b/setup.py
-index a1ac7b0..aecc107 100644
+index 36d7905..5e7df4b 100644
--- a/setup.py
+++ b/setup.py
-@@ -25,10 +25,4 @@ setup(
+@@ -28,12 +28,6 @@ setup(
packages=[
'telegram',
],
@@ -12,4 +12,6 @@ index a1ac7b0..aecc107 100644
- 'lib/linux/*',
- ],
- },
- )
+ install_requires=[
+ 'telegram-text~=0.1',
+ ],
diff --git a/testing/py3-telegram/APKBUILD b/testing/py3-telegram/APKBUILD
index 07a3cffda60..0a0c22e2689 100644
--- a/testing/py3-telegram/APKBUILD
+++ b/testing/py3-telegram/APKBUILD
@@ -2,19 +2,18 @@
# Maintainer: j.r <j.r@jugendhacker.de>
pkgname=py3-telegram
_pyname=python-telegram
-pkgver=0.15.0
+pkgver=0.18.0
pkgrel=2
pkgdesc="Python client for the Telegram's tdlib"
url="https://github.com/alexander-akhmetov/python-telegram"
arch="noarch !s390x"
license="MIT"
-depends="python3 telegram-tdlib>=1.7.9"
+depends="python3 telegram-tdlib py3-telegram-text"
makedepends="py3-setuptools"
-subpackages="$pkgname-doc"
-source="https://files.pythonhosted.org/packages/source/${_pyname%"${_pyname#?}"}/$_pyname/$_pyname-$pkgver.tar.gz
- https://raw.githubusercontent.com/alexander-akhmetov/python-telegram/$pkgver/LICENSE
- 0001-Use-system-tdlib.patch
- 0002-Remove-binarys.patch"
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/p/python-telegram/python-telegram-$pkgver.tar.gz
+ 0002-Remove-binarys.patch
+ "
builddir="$srcdir/$_pyname-$pkgver/"
options="!check"
@@ -23,14 +22,10 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-
- install -Dm644 $srcdir/LICENSE "$pkgdir"/usr/share/licenses/$pkgname/COPYING
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
-43b58439ac414f69787262eff3656227e89dec4eedfbb13c1fce56555605d9b747d20cb1e2b5850b8649615873a8f1d9ebdcb8d5a1a2f12adeeada5757b2bb5b python-telegram-0.15.0.tar.gz
-b038c7b0c6138ff6f215a45d0da25ac8e3b52e3849087e90f68d3ebe246fbcd17c1f78f2ee3c020bfc759334d35709a1ac28b71c74091912dbf165785a3f5895 LICENSE
-7521f123e0d3719eb8db2a6c2b120377f1ee9dbd235ad92cc91ab5b5e4ce0884692721a4fc478c8058038d24b8cae8dd8a0e5eed8d568bc769bdc80b8f2e3327 0001-Use-system-tdlib.patch
-8c24db516797f8ffa8695b31be6364087ed9e6cfb9fc49bc8f68fdcb259b88dcf786afa71d30848bad50c4a201ea8d09f28fb5b86da023404f7ef6c4d17d3447 0002-Remove-binarys.patch
+3137695894f8d88d71619231739601219acb3d8f4c00ab4cc6ecf79fd6aa5a36c6c025e9287d5dce03d53f75a065330d47a7a829bf6e25e29568bb9caf297d67 python-telegram-0.18.0.tar.gz
+7931b19b34806fe84361d3e15fc39330e0b93f4945e7bb892b7b0c78a717a484040b5ad60d9c77063bb452badab2ada314032bfe2064918999e9e7a6863cb5c1 0002-Remove-binarys.patch
"
diff --git a/testing/py3-telemetrix/APKBUILD b/testing/py3-telemetrix/APKBUILD
new file mode 100644
index 00000000000..a7d8b316001
--- /dev/null
+++ b/testing/py3-telemetrix/APKBUILD
@@ -0,0 +1,27 @@
+# Contributor: David Demelier <markand@malikania.fr>
+# Maintainer: David Demelier <markand@malikania.fr>
+pkgname=py3-telemetrix
+pkgver=1.20
+pkgrel=2
+pkgdesc="Remotely Control And Monitor Arduino-Core devices"
+url="https://mryslab.github.io/telemetrix"
+arch="noarch"
+license="AGPL-3.0-or-later"
+depends="python3 py3-pyserial"
+makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/t/telemetrix/telemetrix-$pkgver.tar.gz"
+builddir="$srcdir/telemetrix-$pkgver"
+options="!check" # No tests.
+
+build() {
+ python3 setup.py build
+}
+
+package() {
+ python3 setup.py install --skip-build --root="$pkgdir"
+}
+
+sha512sums="
+0ee02a885b05d5925f476e236f581dbb318338e51031660ea7d4f9a4f2c4ad350c4df40dab51f0b8039bed8e069da5fd32230ca0f49f752a51e83c8a74588197 telemetrix-1.20.tar.gz
+"
diff --git a/testing/py3-teletype/APKBUILD b/testing/py3-teletype/APKBUILD
index ebac1ef595d..334714bd902 100644
--- a/testing/py3-teletype/APKBUILD
+++ b/testing/py3-teletype/APKBUILD
@@ -2,24 +2,30 @@
# Maintainer: Philipp Glaum <p@pglaum.de>
pkgname=py3-teletype
_pkgname=teletype
-pkgver=1.1.0
-pkgrel=2
+pkgver=1.3.4
+pkgrel=3
pkgdesc="high-level cross platform tty library"
options="!check" # No testsuite
url="https://pypi.org/project/teletype/"
arch="noarch"
license="MIT"
depends="python3"
-makedepends="py3-setuptools"
+makedepends="py3-gpep517 py3-installer py3-wheel py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/teletype*.whl
}
-sha512sums="440cd00b46abb58daec4c9f2dbbd25dd8b566cf071c668d636f622ecbde080ced2436c9f5fc21b70771ccc2b6f4278720e585673dc2bc215dfcad9b3cc8f958f teletype-1.1.0.tar.gz"
+sha512sums="
+4580aed4be710dc49d9bff7cbbd8c678067bd4f61266f97ced19555860bd6b634939d66a2484469f03454878def981278168a542b3faf83ef038874cbf4e2133 teletype-1.3.4.tar.gz
+"
diff --git a/testing/py3-terminaltables/APKBUILD b/testing/py3-terminaltables/APKBUILD
deleted file mode 100644
index 801ff9f27ae..00000000000
--- a/testing/py3-terminaltables/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Contributor: Thomas Boerger <thomas@webhippie.de>
-# Maintainer: Thomas Boerger <thomas@webhippie.de>
-pkgname=py3-terminaltables
-_pkgname=terminaltables
-pkgver=3.1.0
-pkgrel=6
-pkgdesc="Generate simple tables in terminals from a nested list of strings"
-url="https://pypi.python.org/pypi/terminaltables"
-arch="noarch"
-license="MIT"
-depends="python3"
-makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgname-$pkgver"
-
-replaces=py-terminaltables # Backwards compatibility
-provides=py-terminaltables=$pkgver-r$pkgrel # Backwards compatibility
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 setup.py check
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="f30620f57c4d40b4ee5736d2886e744f7ed34aae702252b2ecf90844d314c4ccce7a7bc9146637504e6996c148567ba16247136f081f086a2b264f2f4920ecd8 terminaltables-3.1.0.tar.gz"
diff --git a/testing/py3-testresources/APKBUILD b/testing/py3-testresources/APKBUILD
index 22a4a848877..eff36f96ef4 100644
--- a/testing/py3-testresources/APKBUILD
+++ b/testing/py3-testresources/APKBUILD
@@ -3,7 +3,7 @@
pkgname=py3-testresources
_pyname=testresources
pkgver=2.0.1
-pkgrel=3
+pkgrel=5
pkgdesc="A pyunit extension for managing expensive test resources"
url="https://launchpad.net/testresources"
arch="noarch"
@@ -11,6 +11,7 @@ license="Apache-2.0 OR BSD-3-Clause"
depends="python3"
makedepends="py3-setuptools py3-pbr"
checkdepends="py3-testtools"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pyname%${_pyname#?}}/$_pyname/$_pyname-$pkgver.tar.gz"
builddir="$srcdir/$_pyname-$pkgver"
@@ -23,7 +24,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
rm -rf "$pkgdir"/usr/lib/python3*/site-packages/testresources/tests/
}
diff --git a/testing/py3-textual/APKBUILD b/testing/py3-textual/APKBUILD
new file mode 100644
index 00000000000..ba2a549357e
--- /dev/null
+++ b/testing/py3-textual/APKBUILD
@@ -0,0 +1,61 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=py3-textual
+_pyname=${pkgname#py3-}
+pkgver=0.47.1
+pkgrel=1
+pkgdesc="TUI framework for Python inspired by modern web development"
+url="https://github.com/Textualize/textual"
+arch="noarch"
+license="MIT"
+depends="
+ python3
+ py3-importlib-metadata
+ py3-linkify-it-py
+ py3-markdown-it-py
+ py3-rich
+ py3-typing-extensions
+ "
+makedepends="py3-gpep517 py3-poetry-core"
+checkdepends="
+ py3-aiohttp
+ py3-click
+ py3-jinja2
+ py3-msgpack
+ py3-nanoid
+ py3-pytest
+ py3-pytest-aiohttp
+ py3-pytest-asyncio
+ py3-syrupy
+ py3-time-machine
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/Textualize/textual/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/$_pyname-$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
+
+ # test_snapshots.py requires pytest-textual-snapshot, which depends on py3-textual itself, for snap_compare fixture
+ # test_languages.py requires optional tree_sitter_languages Python package
+ # test_features.py is broken
+ .testenv/bin/python3 -m pytest \
+ --ignore=tests/snapshot_tests/test_snapshots.py \
+ --ignore=tests/text_area/test_languages.py \
+ --ignore=tests/test_features.py
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+f17684f8e822423164a6b549c261f5662b6997e9934e1c76f159610d1ed682e26d34e39ae22c3b8fe47e84c8b4a87cc6bd70e0121806b498ddda5ddb9f575bd1 py3-textual-0.47.1.tar.gz
+"
diff --git a/testing/py3-tg/0001-Allow-newer-python-telegram.patch b/testing/py3-tg/0001-Allow-newer-python-telegram.patch
new file mode 100644
index 00000000000..d3e8085eeb5
--- /dev/null
+++ b/testing/py3-tg/0001-Allow-newer-python-telegram.patch
@@ -0,0 +1,23 @@
+From 21bd3e168d33ae7d11aad4ed0c6c23eef027e3c3 Mon Sep 17 00:00:00 2001
+From: "j.r" <j.r@jugendhacker.de>
+Date: Sun, 4 Sep 2022 23:45:12 +0200
+Subject: [PATCH] Allow newer python-telegram
+
+---
+ setup.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/setup.py b/setup.py
+index f6b2e37..5be5d12 100644
+--- a/setup.py
++++ b/setup.py
+@@ -23,5 +23,5 @@ setup(
+ packages=["tg"],
+ entry_points={"console_scripts": ["tg = tg.__main__:main"]},
+ python_requires=">=3.8",
+- install_requires=["python-telegram==0.15.0"],
++ install_requires=["python-telegram>=0.15.0"],
+ )
+--
+2.37.3
+
diff --git a/testing/py3-tg/0001-Change-setup.py-to-accept-new-python-telegram-ver.patch b/testing/py3-tg/0001-Change-setup.py-to-accept-new-python-telegram-ver.patch
deleted file mode 100644
index ca6006a6572..00000000000
--- a/testing/py3-tg/0001-Change-setup.py-to-accept-new-python-telegram-ver.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-From ac8b551d16feb2fd9dbc5b1bfac4057ce6e9ef87 Mon Sep 17 00:00:00 2001
-From: "j.r" <j.r@jugendhacker.de>
-Date: Tue, 29 Dec 2020 14:44:26 +0100
-Subject: [PATCH] Change setup.py to accept new python-telegram ver
-
----
- setup.py | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/setup.py b/setup.py
-index 2455e78..011eed7 100644
---- a/setup.py
-+++ b/setup.py
-@@ -22,5 +22,5 @@ setup(
- packages=["tg"],
- entry_points={"console_scripts": ["tg = tg.__main__:main"]},
- python_requires=">=3.8",
-- install_requires=["python-telegram==0.14.0"],
-+ install_requires=["python-telegram==0.15.0"],
- )
---
-2.34.1
-
diff --git a/testing/py3-tg/APKBUILD b/testing/py3-tg/APKBUILD
index e280c34b32c..e2c5ddcc5f1 100644
--- a/testing/py3-tg/APKBUILD
+++ b/testing/py3-tg/APKBUILD
@@ -2,15 +2,18 @@
# Maintainer: j.r <j.r@jugendhacker.de>
pkgname=py3-tg
_pyname=tg
-pkgver=0.17.0
-pkgrel=2
+pkgver=0.19.0
+pkgrel=4
pkgdesc="Terminal telegram client that really works"
url="https://github.com/paul-nameless/tg"
arch="noarch !s390x"
license="Unlicense"
depends="python3 py3-telegram py3-setuptools"
-source="$pkgname-$pkgver.tar.gz::https://github.com/paul-nameless/tg/archive/refs/tags/v$pkgver.tar.gz
- 0001-Change-setup.py-to-accept-new-python-telegram-ver.patch"
+subpackages="$pkgname-pyc"
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/paul-nameless/tg/archive/refs/tags/v$pkgver.tar.gz
+ 0001-Allow-newer-python-telegram.patch
+ "
builddir="$srcdir/$_pyname-$pkgver"
options="!check"
@@ -19,10 +22,10 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
-8e72317baad9117f542188d62fc599cccb02212311bd75a8acf1221da960ad0b67d58408d458828633a8baa8e3b62e6f3ceb5ec9800b5cb291497c016f444afd py3-tg-0.17.0.tar.gz
-a9549ce7749235e8310cf1b79408ecfab3cabcbbc4c4189f396cd35eb957dd96bd66f7b076a2b2ea37d77fbc78c64bff55b791f0e6cb5ae6a86f70566d2b74c1 0001-Change-setup.py-to-accept-new-python-telegram-ver.patch
+ccaba3614d72d7fc115d8f6e1cb51c52a5e7be3b588a8135c9435226df98c55a4f3184c1e280e26913e982c65cc393f09981ed2612adbdd718bfc70d4ad28ffe py3-tg-0.19.0.tar.gz
+3a9c5e546f388842aa6f270bbf86cc45f98f29779fed02d2c381d7e35f2435f883bfea43bf6448e9c9cbace8be51494a97ecbc8aebe9c23b412aec059bfa757e 0001-Allow-newer-python-telegram.patch
"
diff --git a/testing/py3-thefuzz/APKBUILD b/testing/py3-thefuzz/APKBUILD
new file mode 100644
index 00000000000..0eb21bea579
--- /dev/null
+++ b/testing/py3-thefuzz/APKBUILD
@@ -0,0 +1,35 @@
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=py3-thefuzz
+pkgver=0.22.1
+pkgrel=1
+pkgdesc="Fuzzy String Matching in Python"
+url="https://github.com/seatgeek/thefuzz"
+arch="noarch"
+license="MIT"
+depends="py3-levenshtein"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+checkdepends="py3-pytest py3-hypothesis py3-pycodestyle"
+subpackages="$pkgname-pyc"
+source="https://github.com/seatgeek/thefuzz/archive/refs/tags/$pkgver/py3-thefuzz-$pkgver.tar.gz"
+builddir="$srcdir/thefuzz-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+6a49feaba32a9966699b9b82a5e47a11b4915624e9e09c1b67fe3d1dcb5e7f5538e7f43a0573b6ef8f0cedf9d7360957c952d6a530fcb3b4d65934111a39a3db py3-thefuzz-0.22.1.tar.gz
+"
diff --git a/testing/py3-thinc/APKBUILD b/testing/py3-thinc/APKBUILD
deleted file mode 100644
index e709b590088..00000000000
--- a/testing/py3-thinc/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Contributor: Oleg Titov <oleg.titov@gmail.com>
-# Maintainer: Oleg Titov <oleg.titov@gmail.com>
-pkgname=py3-thinc
-pkgver=7.4.1
-pkgrel=1
-pkgdesc="Practical Machine Learning for NLP"
-url="https://github.com/explosion/thinc"
-arch="x86_64 x86"
-license="MIT"
-depends="python3 py3-cymem py3-preshed py3-murmurhash py3-blis py3-plac py3-srsly
- py3-wasabi py3-catalogue"
-makedepends="python3-dev py3-setuptools cython"
-checkdepends="py3-pytest py3-numpy py3-mock py3-tqdm py3-hypothesis"
-subpackages="$pkgname-doc"
-source="thinc-$pkgver.tar.gz::https://github.com/explosion/thinc/archive/v$pkgver.tar.gz"
-builddir="$srcdir/thinc-$pkgver"
-
-build() {
- python3 setup.py build_ext --inplace
-}
-
-check() {
- # disable some tests due to use of py3-hypothesis >= 5.0.0
- pytest-3 thinc \
- --ignore=thinc/tests/integration/test_batch_norm.py \
- --ignore=thinc/tests/unit/test_affine.py \
- --ignore=thinc/tests/unit/test_ops.py
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-
- install -Dm644 README.md "$pkgdir/usr/share/doc/$pkgname/README.md"
-}
-
-sha512sums="ff4f86c78f1cd6ebb48d15f6f944c56d40fd7f264a14e055a5b1b24b3b95121b8cb789a152fa408220606e4b6022fc3ce3233f7effa86890db28b60533764d79 thinc-7.4.1.tar.gz"
diff --git a/testing/py3-ticket-auth/APKBUILD b/testing/py3-ticket-auth/APKBUILD
index dcbcfbb248b..eb0a49b1643 100644
--- a/testing/py3-ticket-auth/APKBUILD
+++ b/testing/py3-ticket-auth/APKBUILD
@@ -3,12 +3,13 @@
pkgname=py3-ticket-auth
_pkgname=ticket_auth
pkgver=0.1.4
-pkgrel=5
+pkgrel=8
pkgdesc="Ticket authentication system"
url="https://github.com/gnarlychicken/ticket_auth"
arch="noarch"
license="MIT"
makedepends="python3-dev py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -19,7 +20,7 @@ build() {
package() {
cd "$builddir"
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="67af674a5061d72350bc683a8614151815a91b4bdb2b641ade4d171a631fe71e574f48b3535285ace18ac5ae101e32434efaba5ec72bed30a6f0fbe88124708b ticket_auth-0.1.4.tar.gz"
diff --git a/testing/py3-tidalapi/APKBUILD b/testing/py3-tidalapi/APKBUILD
index 47cca1492ff..bcd88679940 100644
--- a/testing/py3-tidalapi/APKBUILD
+++ b/testing/py3-tidalapi/APKBUILD
@@ -1,29 +1,36 @@
-# Maintainer: Stacy Harper <contact@stacyharper.net>
+# Maintainer: Willow Barraco <contact@willowbarraco.fr>
pkgname=py3-tidalapi
-_pkgname=tidalapi
-pkgver=0.6.10
-pkgrel=0
+pkgver=0.7.4
+pkgrel=1
pkgdesc="Unofficial Python API for TIDAL music streaming service"
url="https://pypi.org/project/tidalapi/"
arch="noarch"
license="LGPL-3.0-or-later"
-depends="python3"
-makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgname-$pkgver"
+depends="python3 py3-requests py3-dateutil"
+makedepends="py3-gpep517 py3-wheel py3-installer py3-poetry-core"
+checkdepends="py3-pytest py3-keyring py3-ffmpeg py3-pillow"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/tamland/python-tidal/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/python-tidal-$pkgver"
+options="!check" # Visit https://link.tidal.com/... to log in
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- python3 setup.py check
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
-778fedf8edaf161da54ba0fd95bf1300e210217baa1a12200f68adc854b6cdde445938453c2331d6b0a28e10043340fab4462306cf33ea33b4bb7ad7e7a8e9bc tidalapi-0.6.10.tar.gz
+eb95a3c371bfda1e570e1e8751e80891833c8cece81770f5d77a27913a39c21bf010ced03b2372c70f00f729d98cd8378328a3fae7d466d721352273f3d80f0c py3-tidalapi-0.7.4.tar.gz
"
diff --git a/testing/py3-tls_parser/APKBUILD b/testing/py3-tls_parser/APKBUILD
index f29c23f58e9..964b6e68d83 100644
--- a/testing/py3-tls_parser/APKBUILD
+++ b/testing/py3-tls_parser/APKBUILD
@@ -2,14 +2,15 @@
# Maintainer: Simon Frankenberger <simon-alpine@fraho.eu>
pkgname=py3-tls_parser
_pkgname=tls_parser
-pkgver=1.2.2
-pkgrel=2
+pkgver=2.0.1
+pkgrel=1
pkgdesc="Python library to parse TLS records."
url="https://pypi.org/project/tls-parser/"
arch="noarch"
license="MIT"
depends="python3"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
@@ -25,7 +26,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="234a5c4a3037374d3b90741b835786e2bb6b57818f24802462fd1d338a37090ab4a18585f32293c45d85cd95b69cd9d27f17126c4c29eea61b525f8b83fba42c tls_parser-1.2.2.tar.gz"
+sha512sums="
+693d18f0f3baaa8bf122f0166a9041cfe816772930dcfb73cfc1e16b0cedef2cfd19623d91a6d9e745bfcc1d2cbfb001a031d8c0d6fe1dd46319c3469ba60812 tls_parser-2.0.1.tar.gz
+"
diff --git a/testing/py3-tlslite-ng/APKBUILD b/testing/py3-tlslite-ng/APKBUILD
index 5dff6fe5d2b..d13b6da7ae1 100644
--- a/testing/py3-tlslite-ng/APKBUILD
+++ b/testing/py3-tlslite-ng/APKBUILD
@@ -2,15 +2,16 @@
# Maintainer: Noel Kuntze <noel.kuntze@thermi.consulting>
pkgname=py3-tlslite-ng
pkgver=0.7.6
-pkgrel=2
+pkgrel=7
pkgdesc="Pure python implementation of SSL and TLS"
-url="https://github.com/tomato42/tlslite-ng"
+url="https://github.com/tlsfuzzer/tlslite-ng"
arch="noarch"
license="LGPL-2.1-only"
depends="py3-ecdsa"
makedepends="py3-setuptools"
options="!check" # requires client/server
-source="$pkgname-$pkgver.tar.gz::https://github.com/tomato42/tlslite-ng/archive/v$pkgver.tar.gz"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/tlsfuzzer/tlslite-ng/archive/v$pkgver.tar.gz"
builddir="$srcdir/tlslite-ng-$pkgver"
# secfixes:
@@ -22,7 +23,9 @@ build() {
}
package() {
- python3 setup.py install --root="$pkgdir" --optimize=1
+ python3 setup.py install --root="$pkgdir"
}
-sha512sums="c4fcdfaf45b40cd85fee26657956651b781d41f9c9f35a8a927d00c9f13cdcfae1b4f7a594d0d07d08d477b19480af152988c6075dc9f564215761bcf9857119 py3-tlslite-ng-0.7.6.tar.gz"
+sha512sums="
+c4fcdfaf45b40cd85fee26657956651b781d41f9c9f35a8a927d00c9f13cdcfae1b4f7a594d0d07d08d477b19480af152988c6075dc9f564215761bcf9857119 py3-tlslite-ng-0.7.6.tar.gz
+"
diff --git a/testing/py3-tokenizers/APKBUILD b/testing/py3-tokenizers/APKBUILD
new file mode 100644
index 00000000000..dd280b99f85
--- /dev/null
+++ b/testing/py3-tokenizers/APKBUILD
@@ -0,0 +1,38 @@
+# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=py3-tokenizers
+pkgver=0.15.2
+pkgrel=1
+pkgdesc="Fast State-of-the-Art Tokenizers optimized for Research and Production"
+url="https://github.com/huggingface/tokenizers"
+arch="all !s390x !riscv64" # blocked by rust
+license="Apache-2.0"
+depends="python3"
+makedepends="
+ bzip2-dev
+ cargo
+ openssl-dev>3
+ py3-gpep517
+ py3-maturin
+ py3-wheel
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/huggingface/tokenizers/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/tokenizers-$pkgver/bindings/python"
+options="net !check" # requires pulling test data
+
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/tokenizers*.whl
+}
+
+sha512sums="
+0635d074d98a74d171a5f113c1b6f8b8c80c9f36b2d3b82c18d90d3fc1f1daaec55b7e98f2d771d5b22593b888ab4561e8f3e3152170c22605e034ee84d6a10a py3-tokenizers-0.15.2.tar.gz
+"
diff --git a/testing/py3-toposort/APKBUILD b/testing/py3-toposort/APKBUILD
new file mode 100644
index 00000000000..5d30d855326
--- /dev/null
+++ b/testing/py3-toposort/APKBUILD
@@ -0,0 +1,37 @@
+# Maintainer: Will Sinatra <wpsinatra@gmail.com>
+pkgname=py3-toposort
+pkgver=1.10
+pkgrel=3
+pkgdesc="Topological sorting for python"
+url="https://gitlab.com/ericvsmith/toposort"
+arch="noarch"
+license="Apache-2.0"
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+subpackages="$pkgname-pyc"
+source="https://gitlab.com/ericvsmith/toposort/-/archive/$pkgver/toposort-$pkgver.tar.bz2"
+builddir="$srcdir/toposort-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m test.test_toposort
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+a1bf41e7324b56eaf914e6b89f0ec5e18c6661d8d31b429e169086c71d1060b6aa0e29cc048fe971455b5b43e500a1d74fea0168c4c869cdab09206ba3f9c50f toposort-1.10.tar.bz2
+"
diff --git a/testing/py3-tpm2-pytss/APKBUILD b/testing/py3-tpm2-pytss/APKBUILD
new file mode 100644
index 00000000000..0a514a49fac
--- /dev/null
+++ b/testing/py3-tpm2-pytss/APKBUILD
@@ -0,0 +1,64 @@
+# Contributor: Henrik Riomar <henrik.riomar@gmail.com>
+# Maintainer: Henrik Riomar <henrik.riomar@gmail.com>
+pkgname=py3-tpm2-pytss
+_pkgname=tpm2-pytss
+pkgver=2.2.1
+pkgrel=0
+pkgdesc="Python bindings for TSS"
+url="https://github.com/tpm2-software/tpm2-pytss"
+arch="all !armhf !armv7 !riscv64 !x86" # limited by failing check()
+license="BSD-2-Clause"
+checkdepends="
+ py3-pytest-forked
+ py3-pytest-xdist
+ swtpm
+ "
+makedepends="
+ py3-gpep517
+ py3-pkgconfig
+ py3-setuptools
+ py3-setuptools_scm
+ py3-wheel
+ python3-dev
+ tpm2-tss-dev
+ "
+depends="
+ py3-asn1crypto
+ py3-cparser
+ py3-cryptography
+ py3-yaml
+ python3
+ "
+subpackages="$pkgname-pyc"
+source="https://github.com/tpm2-software/tpm2-pytss/archive/$pkgver/$_pkgname-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+case "$CARCH" in
+ armv7|ppc64le|s390x) options="!check";; # no swtpm package
+ *) ;;
+esac
+
+build() {
+ export SETUPTOOLS_SCM_PRETEND_VERSION=$pkgver
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ PYTHONPATH="$(echo .testenv/lib/python3*/site-packages/):$PWD" \
+ .testenv/bin/python3 -m pytest test \
+ -n"$(nproc)"
+}
+
+package() {
+ export SETUPTOOLS_SCM_PRETEND_VERSION=$pkgver
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+b55c8f0ba03204e803e33da115961893a1a7e08bcac29399a728d9f984be2d538076fa7dd289e96beedb6d6125a53f5b5841dd216f89d55833db9eb9197ba747 tpm2-pytss-2.2.1.tar.gz
+"
diff --git a/testing/py3-transitions/APKBUILD b/testing/py3-transitions/APKBUILD
index c740ba99d63..5107de4dcff 100644
--- a/testing/py3-transitions/APKBUILD
+++ b/testing/py3-transitions/APKBUILD
@@ -2,17 +2,19 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-transitions
_pyname=transitions
-pkgver=0.8.11
-pkgrel=0
+pkgver=0.9.0
+pkgrel=3
pkgdesc="A lightweight, object-oriented Python state machine implementation"
-url="https://github.com/tyarkoni/transitions"
+url="https://github.com/pytransitions/transitions"
arch="noarch"
license="MIT"
depends="py3-six"
makedepends="py3-setuptools"
checkdepends="py3-pytest py3-pycodestyle py3-graphviz"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pyname:0:1}/$_pyname/$_pyname-$pkgver.tar.gz"
builddir="$srcdir"/$_pyname-$pkgver
+options="!check" # fail with py311
replaces=py-transitions # Backwards compatibility
provides=py-transitions=$pkgver-r$pkgrel # Backwards compatibility
@@ -27,13 +29,13 @@ build() {
}
check() {
- py.test-3
+ pytest
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
-0546d5e5cb44d9e368a20cbe80d69b54e60b1ed9b5317548be9a779b7d1c8dc703432ae2dfa6cb336936414f3a279ee8662cebaf747322dbe48de2f3267f4f3a transitions-0.8.11.tar.gz
+d324a57e1f2d20d9e8dc7d1f7854a6e81c3a09afda927de38dc23936c8c585b87303d5a47256487ba0cd03f63bb1a2ff69304c634896e488a7217591404f0a3c transitions-0.9.0.tar.gz
"
diff --git a/testing/py3-translationstring/APKBUILD b/testing/py3-translationstring/APKBUILD
index 8b7e4f41080..4289d6b389e 100644
--- a/testing/py3-translationstring/APKBUILD
+++ b/testing/py3-translationstring/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-translationstring
_pkgname=translationstring
-pkgver=1.3
+pkgver=1.4
pkgrel=3
pkgdesc="A Python utility library for i18n"
url="https://pypi.org/project/translationstring/" # actual homepage doesn't exist anymore
@@ -10,6 +10,7 @@ arch="noarch"
license="ZPL-2.1"
depends="python3"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -25,10 +26,12 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
# Reduce size by removing installed-tests
rm -rf "$pkgdir"/usr/lib/python3*/site-packages/translationstring/tests
}
-sha512sums="deba5b460d9ea640087cff8b5d7b9256708abd4340a54556f1f0542e2e4f9f0ae0a3482b66a176712fcd6925c470da621adbc5e4c4173c0ef29b9cca5fba1102 translationstring-1.3.tar.gz"
+sha512sums="
+2f06af782421fcf9ba907a8bc6419cd2c8f5352eee44d051ca1647b418f634e24220727b0eec748c9ead6aeb3c57ea1740356b65d6e2017fa0a395e1823ac81a translationstring-1.4.tar.gz
+"
diff --git a/testing/py3-trimesh/APKBUILD b/testing/py3-trimesh/APKBUILD
new file mode 100644
index 00000000000..bab0b96ca9b
--- /dev/null
+++ b/testing/py3-trimesh/APKBUILD
@@ -0,0 +1,65 @@
+# Contributor: Aiden Grossman <agrossman154@yahoo.com>
+# Maintainer: Aiden Grossman <agrossman154@yahoo.com>
+pkgname=py3-trimesh
+pkgver=3.22.1
+pkgrel=1
+pkgdesc="Python library for working with triangular meshes"
+url="https://github.com/mikedh/trimesh"
+# x86, armhf, armv7 Tests fail on int64 to int32 casts on these arches
+# s390x, no py3-rtree
+# riscv64, no py3-shapely
+arch="noarch !x86 !armhf !armv7 !s390x !riscv64"
+# TODO: investigate why checks stall
+options="!check"
+license="MIT"
+depends="
+ py3-colorlog
+ py3-jsonschema
+ py3-lxml
+ py3-mapbox-earcut
+ py3-msgpack
+ py3-networkx
+ py3-numpy
+ py3-pillow
+ py3-requests
+ py3-rtree
+ py3-scipy
+ py3-shapely
+ py3-svgpath
+ python3
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="py3-pytest py3-pytest-xdist py3-pyinstrument"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/mikedh/trimesh/archive/refs/tags/$pkgver.tar.gz"
+builddir="$srcdir/trimesh-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ # test_obj.py: no format zae, probably needs more investigation
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest -n auto \
+ --deselect tests/test_dae.py::DAETest::test_material_round \
+ --deselect tests/test_dae.py::DAETest::test_obj_roundtrip \
+ --deselect tests/test_light.py::LightTests::test_scene \
+ --deselect tests/test_obj.py::OBJTest::test_multi_nodupe
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+27952e0d29ccd110d4087b4144e0923706bed3cd0734e7a17d7f55738c6322849c5dad04ab4ecfe0638bc16d65d1e647d08905a396dd6ebd1f78c833a8b95636 py3-trimesh-3.22.1.tar.gz
+"
diff --git a/testing/py3-trivup/APKBUILD b/testing/py3-trivup/APKBUILD
index 56ef3a6db7d..57d64c0c857 100644
--- a/testing/py3-trivup/APKBUILD
+++ b/testing/py3-trivup/APKBUILD
@@ -1,14 +1,15 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
_pyname=trivup
pkgname=py3-$_pyname
-pkgver=0.9.0
+pkgver=0.12.2
pkgrel=1
pkgdesc="Trivially Up a cluster of programs, such as a Kafka cluster"
url="https://github.com/edenhill/trivup"
arch="noarch"
license="BSD-2-Clause"
-depends="python3 py3-requests"
+depends="python3 py3-jwcrypto py3-python-jwt py3-requests"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/t/trivup/trivup-$pkgver.tar.gz"
builddir="$srcdir/$_pyname-$pkgver"
@@ -21,7 +22,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="0a799c20e8b4873af74b6d78477eccd2586710c21c94eff87947cc82b30b3a517dcddf57b80bac0cee0d7b1c9a571f6427e5b772f84fcb9bb68dfd44cb200062 trivup-0.9.0.tar.gz"
+sha512sums="
+258f0305053f2a14dfe9f9ceeef9b75534bf3fb31c34ab2b9528013eccbaf783386cfe56a81102c965e4cda4f1adf3a24ec7bfe096ee5809df9f507dddc1ab2b trivup-0.12.2.tar.gz
+"
diff --git a/testing/py3-truststore/APKBUILD b/testing/py3-truststore/APKBUILD
new file mode 100644
index 00000000000..23bba5bff6e
--- /dev/null
+++ b/testing/py3-truststore/APKBUILD
@@ -0,0 +1,45 @@
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=py3-truststore
+pkgver=0.8.0
+pkgrel=1
+pkgdesc="Verify certificates using OS trust stores"
+url="https://github.com/sethmlarson/truststore"
+arch="noarch"
+license="MIT"
+makedepends="py3-gpep517 py3-installer py3-flit-core"
+checkdepends="
+ py3-aiohttp
+ py3-flaky
+ py3-httpx
+ py3-openssl
+ py3-pytest
+ py3-pytest-asyncio
+ py3-pytest-httpserver
+ py3-requests
+ py3-trustme
+ py3-urllib3
+"
+subpackages="$pkgname-pyc"
+source="https://github.com/sethmlarson/truststore/archive/v$pkgver/py3-truststore-$pkgver.tar.gz"
+builddir="$srcdir/truststore-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+9492874b2c0eb5ba011c0d4af6fc4e2d1664686458775344c928e25248b0d54f776d9400138330b225146402345ab8d5ccb9f73b5db51e566342855a8b4ac579 py3-truststore-0.8.0.tar.gz
+"
diff --git a/testing/py3-twiggy/APKBUILD b/testing/py3-twiggy/APKBUILD
index f108147fbdd..fd7b8afd740 100644
--- a/testing/py3-twiggy/APKBUILD
+++ b/testing/py3-twiggy/APKBUILD
@@ -2,14 +2,15 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-twiggy
_pkgname=Twiggy
-pkgver=0.5.0
-pkgrel=2
+pkgver=0.5.1
+pkgrel=3
pkgdesc="A Pythonic logger"
url="https://github.com/wearpants/twiggy"
arch="noarch"
license="BSD-3-Clause"
depends="python3 py3-six"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
@@ -21,7 +22,9 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="29eb8e642e437e09aeeff66e6659d74df72892395a9b0a082e241200c8e46c29db6377f5698d7f422e62101a3f851b1fe9b3d60a7309a67636afd09e6a464249 Twiggy-0.5.0.tar.gz"
+sha512sums="
+71557175e8b4629bffe78ce81b1e6487fff30162fb123794a19b8f7e117b756cdb890dc21c8673a554931c1b33e47871d51876e65470808b57ad3f1d3df4b4fa Twiggy-0.5.1.tar.gz
+"
diff --git a/testing/py3-typing_inspect/APKBUILD b/testing/py3-typing_inspect/APKBUILD
index 22365f3c269..7ac713c1743 100644
--- a/testing/py3-typing_inspect/APKBUILD
+++ b/testing/py3-typing_inspect/APKBUILD
@@ -2,32 +2,38 @@
# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=py3-typing_inspect
_pkgname=typing_inspect
-pkgver=0.7.1
+pkgver=0.9.0
pkgrel=2
pkgdesc="Defines an API for runtime inspection of types defined in the Python standard typing module"
url="https://github.com/ilevkivskyi/typing_inspect"
-arch="all"
+arch="noarch"
license="MIT"
-depends="python3 py3-mypy-extensions py3-typing-extensions"
-makedepends="py3-setuptools"
+depends="py3-mypy-extensions py3-typing-extensions"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
source="typing_inspect-$pkgver.tar.gz::https://github.com/ilevkivskyi/typing_inspect/archive/$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- python3 -m pytest \
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ gpep517 install-wheel --destdir .testenv --prefix '' .dist/*.whl
+ .testenv/bin/python3 -m pytest \
--deselect test_typing_inspect.py::GetUtilityTestCase::test_typed_dict_typing_extension
# https://github.com/ilevkivskyi/typing_inspect/issues/84
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
-f934d2c4a131a11e61c0fd4a2b095015f29f5cba6edf2240cc2fca81c1d8b2fc26ccf4f5ef7342d093f924f08a68c1c2490780200d843f35a90e5c461ac3304b typing_inspect-0.7.1.tar.gz
+106597b100c3abda89cc15e0f0cd1fbcc771cb04e15e1d85da2134b9937d1a9b8d1fb396aa94fc350d8e21eeaa7f96f4c98c08923360f7eb1fb5b7b7d1a32df5 typing_inspect-0.9.0.tar.gz
"
diff --git a/testing/py3-tzlocal/APKBUILD b/testing/py3-tzlocal/APKBUILD
deleted file mode 100644
index 7eae6f3cfad..00000000000
--- a/testing/py3-tzlocal/APKBUILD
+++ /dev/null
@@ -1,25 +0,0 @@
-# Maintainer: prspkt <prspkt@protonmail.com>
-pkgname=py3-tzlocal
-pkgver=2.1
-pkgrel=3
-pkgdesc="Python tzinfo object for the local timezone"
-url="https://github.com/regebro/tzlocal"
-arch="noarch"
-license="MIT"
-replaces="py-tzlocal" # for backwards compatibility
-provides="py-tzlocal=$pkgver-r$pkgrel" # for backwards compatibility
-depends="python3 py3-tz"
-makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/t/tzlocal/tzlocal-$pkgver.tar.gz"
-builddir="$srcdir/tzlocal-$pkgver"
-options="!check" # the package requires a configured timezone
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="5419f3316dfcbf0355cc6f0790454fe6cecfa8b1ae17bfa7bf8aff89b0af3e63c94ffe9c22b11f612e53826a33e7179ff71bc2a86f6a358cdff36c7ae34e2453 tzlocal-2.1.tar.gz"
diff --git a/testing/py3-u-msgpack/APKBUILD b/testing/py3-u-msgpack/APKBUILD
index c2b03911adc..edc77a28a40 100644
--- a/testing/py3-u-msgpack/APKBUILD
+++ b/testing/py3-u-msgpack/APKBUILD
@@ -2,14 +2,15 @@
# Maintainer: Stefan Wagner <stw@bit-strickerei.de>
pkgname=py3-u-msgpack
_pyname=u-msgpack-python
-pkgver=2.7.1
-pkgrel=2
+pkgver=2.8.0
+pkgrel=1
pkgdesc="portable, lightweight MessagePack serializer and deserializer written in pure Python."
url="https://github.com/vsergeev/u-msgpack-python"
arch="noarch"
license="MIT"
checkdepends="py3-pytest"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/vsergeev/$_pyname/archive/v$pkgver.tar.gz"
builddir="$srcdir/$_pyname-$pkgver"
@@ -25,7 +26,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="d2036ce2c203235d8e01b0e19c82f15807b46ff50803319560dec13f9461a1445ef4849a522c0e61c0cc0bbfa337be755d6bc6750344ac6239623860d17c3c15 py3-u-msgpack-2.7.1.tar.gz"
+sha512sums="
+1b1e3e4b649676571ad32a757a0b4033d049d847fee70ceb0a9fc390d6162f2777cce9560845faa949343d7a4fafbf175ce306d71c66744c13a5c3c20e8260ee py3-u-msgpack-2.8.0.tar.gz
+"
diff --git a/testing/py3-uc-micro-py/APKBUILD b/testing/py3-uc-micro-py/APKBUILD
new file mode 100644
index 00000000000..627c8341e90
--- /dev/null
+++ b/testing/py3-uc-micro-py/APKBUILD
@@ -0,0 +1,34 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=py3-uc-micro-py
+pkgver=1.0.2
+pkgrel=1
+pkgdesc="Micro subset of unicode data files used by py3-linkify-it-py"
+url="https://github.com/tsutsu3/uc.micro-py"
+arch="noarch"
+license="MIT"
+depends="python3"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+checkdepends="py3-pytest"
+source="$pkgname-$pkgver.tar.gz::https://github.com/tsutsu3/uc.micro-py/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/uc.micro-py-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+772487db5f46424576c92e61076f9b0a55de8b36cfdc9ca5274e91855b749f793f0b6e6efa79287cd2862f65cceb1e10c7e2c28439a867681a8d1ac67a2f0e33 py3-uc-micro-py-1.0.2.tar.gz
+"
diff --git a/testing/py3-ufonormalizer/APKBUILD b/testing/py3-ufonormalizer/APKBUILD
index 0368cdfeae4..11a73d1a3b7 100644
--- a/testing/py3-ufonormalizer/APKBUILD
+++ b/testing/py3-ufonormalizer/APKBUILD
@@ -2,18 +2,20 @@
# Maintainer: Sascha Brawer <sascha@brawer.ch>
pkgname=py3-ufonormalizer
_pyname=ufonormalizer
-pkgver=0.4.2
+pkgver=0.6.1
pkgrel=2
pkgdesc="Normalize the XML and other data inside UFO font design sources"
url="https://github.com/unified-font-object/ufoNormalizer"
arch="noarch"
license="BSD-3-Clause"
depends="python3"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-setuptools_scm"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/u/$_pyname/$_pyname-$pkgver.zip"
builddir="$srcdir/$_pyname-$pkgver"
build() {
+ export SETUPTOOLS_SCM_PRETEND_VERSION=$pkgver
python3 setup.py build
}
@@ -22,10 +24,11 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
# Make files world-readable so others than root can run the installed script.
chmod -R a+r "$pkgdir"/usr/lib/python3*/site-packages
}
-
-sha512sums="023e52fc6bf3bebdd75b81efc61f8ab3e4c6a62dfb3f6e63efb5a9f4998fcd471be37caab6d8f59733d6f68b1486dfd3f675fb2835f693f5705c7e93a3f07429 ufonormalizer-0.4.2.zip"
+sha512sums="
+301bef368a7d42333d885437322991d075e5ebb7169e3397e1d2a486ae18d4efba4db625bad1f9452f512e0a452ec8a9fd0b5c716c8571eb45f9d4d2718f37a7 ufonormalizer-0.6.1.zip
+"
diff --git a/testing/py3-ukkonen/01-fix-musl-build.patch b/testing/py3-ukkonen/01-fix-musl-build.patch
deleted file mode 100644
index dc0db985317..00000000000
--- a/testing/py3-ukkonen/01-fix-musl-build.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-# Fixes musl builds: https://github.com/asottile/ukkonen/pull/7
-diff --git a/_ukkonen.cpp b/_ukkonen.cpp
-index 0acf39a..5060887 100644
---- a/_ukkonen.cpp
-+++ b/_ukkonen.cpp
-@@ -1,4 +1,5 @@
- #include <algorithm>
-+#include <cstdint>
- #include <vector>
-
- template <typename T> int64_t edit_distance_k_impl(
diff --git a/testing/py3-ukkonen/APKBUILD b/testing/py3-ukkonen/APKBUILD
deleted file mode 100644
index 09aae57e1a9..00000000000
--- a/testing/py3-ukkonen/APKBUILD
+++ /dev/null
@@ -1,34 +0,0 @@
-# Contributor: Galen Abell <galen@galenabell.com>
-# Maintainer: Galen Abell <galen@galenabell.com>
-pkgname=py3-ukkonen
-_pyname=ukkonen
-pkgver=1.0.1
-pkgrel=1
-pkgdesc="Implementation of bounded Levenshtein distance"
-url="https://github.com/asottile/ukkonen"
-arch="all"
-license="MIT"
-depends="python3 py3-cffi"
-makedepends="python3-dev py3-setuptools"
-checkdepends="py3-pytest"
-source="
- $_pyname-$pkgver.tar.gz::https://github.com/asottile/ukkonen/archive/refs/tags/v$pkgver.tar.gz
- 01-fix-musl-build.patch"
-builddir="$srcdir/$_pyname-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- PYTHONPATH="$(echo $PWD/build/lib.*)" pytest
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-23978b8e22454155e7d8a0d2dbb963f4aa5a6be6cdd75a74e8ec5e06fe32a96b6fc14f0f6d03089726bf761ad6d833dc68ea3fb6cad1ad2ee5b259043072875a ukkonen-1.0.1.tar.gz
-d11f03b3acc8ec06ccafe533c4265688851e3a17fe57b5d969bf9345aee7d6dcd342da9600d0d44421d0a8301242fa82771ea74aec83e402b4447017282bba0b 01-fix-musl-build.patch
-"
diff --git a/testing/py3-unearth/APKBUILD b/testing/py3-unearth/APKBUILD
new file mode 100644
index 00000000000..802a9ee9f20
--- /dev/null
+++ b/testing/py3-unearth/APKBUILD
@@ -0,0 +1,42 @@
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=py3-unearth
+pkgver=0.15.1
+pkgrel=1
+pkgdesc="Utility to fetch and download python packages"
+url="https://github.com/frostming/unearth"
+arch="noarch"
+license="MIT"
+depends="py3-packaging py3-requests py3-httpx"
+makedepends="py3-pdm-backend py3-gpep517 py3-installer py3-trustme"
+checkdepends="
+ py3-pytest
+ py3-flask
+ py3-requests-wsgi-adapter
+ py3-pytest-httpserver
+ py3-pytest-mock
+"
+subpackages="$pkgname-pyc"
+source="https://github.com/frostming/unearth/archive/$pkgver/py3-unearth-$pkgver.tar.gz"
+builddir="$srcdir/unearth-$pkgver"
+
+build() {
+ export PDM_BUILD_SCM_VERSION=$pkgver
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+d4c4bd15c29ab7a172ded4db04dbc56187b5f3d5cf9c47433958240b5c475ee6708c16f7c606ae9998e0fe10e6570e02a57238d38a7cd83e6fc8e24b1aaa8180 py3-unearth-0.15.1.tar.gz
+"
diff --git a/testing/py3-unicorn-hat/APKBUILD b/testing/py3-unicorn-hat/APKBUILD
index 0cb5cccbec4..97df501a464 100644
--- a/testing/py3-unicorn-hat/APKBUILD
+++ b/testing/py3-unicorn-hat/APKBUILD
@@ -3,7 +3,7 @@
pkgname=py3-unicorn-hat
_pkgname=unicorn-hat-unicornhat
pkgver=2.1.2
-pkgrel=3
+pkgrel=5
pkgdesc="Python wrapper for driving ws2812 pixels from the Raspberry Pi"
url="http://shop.pimoroni.com/products/unicorn-hat"
arch="armhf armv7 aarch64"
@@ -21,6 +21,9 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="dee24ec570b8624792899fbf98fafea6565b939581ecce0adcf78c389cc0f2ec274466be31bf3e09c861a30a074f491f1366b0ac4a55529c259bfb3869d96bef py3-unicorn-hat-2.1.2.tar.gz"
+
+sha512sums="
+dee24ec570b8624792899fbf98fafea6565b939581ecce0adcf78c389cc0f2ec274466be31bf3e09c861a30a074f491f1366b0ac4a55529c259bfb3869d96bef py3-unicorn-hat-2.1.2.tar.gz
+"
diff --git a/testing/py3-unicrypto/APKBUILD b/testing/py3-unicrypto/APKBUILD
new file mode 100644
index 00000000000..c4f3d449860
--- /dev/null
+++ b/testing/py3-unicrypto/APKBUILD
@@ -0,0 +1,47 @@
+# Contributor: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
+# Maintainer: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
+pkgname=py3-unicrypto
+_pyname=unicrypto
+pkgver=0.0.10
+pkgrel=2
+pkgdesc="Unified interface for cryptographic libraries"
+url="https://github.com/skelsec/unicrypto"
+arch="noarch"
+license="MIT"
+depends="
+ py3-cryptography
+ py3-mbedtls
+ py3-pycryptodome
+ py3-pycryptodomex
+ python3
+ "
+makedepends="
+ py3-gpep517
+ py3-wheel
+ py3-setuptools
+ "
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/skelsec/unicrypto/archive/refs/tags/$pkgver.tar.gz"
+builddir="$srcdir/$_pyname-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" .dist/*.whl
+ rm -rf "$pkgdir"/usr/lib/python3.*/site-packages/tests/ # remove tests
+}
+
+sha512sums="
+fda2a0031e608dbba7721c5251e2b1663d492c6982640e472b7049893e567e7b088756f1be514ed08a2785603985852e711d7cec70cbb7833b79e5406f9ec59a py3-unicrypto-0.0.10.tar.gz
+"
diff --git a/testing/py3-unidiff/APKBUILD b/testing/py3-unidiff/APKBUILD
deleted file mode 100644
index 796be54c3b1..00000000000
--- a/testing/py3-unidiff/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
-# Maintainer:
-pkgname=py3-unidiff
-pkgver=0.7.3
-pkgrel=0
-pkgdesc="Unified diff python parsing/metadata extraction library"
-url="https://github.com/matiasb/python-unidiff"
-arch="noarch"
-license="MIT"
-depends="python3"
-makedepends="py3-setuptools"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/matiasb/python-unidiff/archive/refs/tags/v$pkgver.tar.gz
- fix-test-script.patch"
-builddir="$srcdir/python-unidiff-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- sh run_tests.sh
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-
- mkdir -p "$pkgdir"/usr/share/doc/$pkgname
- install -m644 README.rst HISTORY AUTHORS \
- "$pkgdir"/usr/share/doc/$pkgname
-}
-
-sha512sums="
-b0705211d984078e189b99a09a2fdc2f9ace875e05ec893f65084e0d0717aacd8f25e7323aee3fbaba05e407100d6c2dc50587f4696962e27fe996ddc5c4be07 py3-unidiff-0.7.3.tar.gz
-3c42b36da7a549d59647a2a489cb85f45d5d51c839b206893e39f2bc5fc14917719e1aa5cd1042758c55bc7a218c63f1df3bb76c28c57724cc6a890ecafa64bc fix-test-script.patch
-"
diff --git a/testing/py3-unidiff/fix-test-script.patch b/testing/py3-unidiff/fix-test-script.patch
deleted file mode 100644
index 45a6901a882..00000000000
--- a/testing/py3-unidiff/fix-test-script.patch
+++ /dev/null
@@ -1,8 +0,0 @@
-diff -upr python-unidiff-0.7.0.orig/run_tests.sh python-unidiff-0.7.0/run_tests.sh
---- python-unidiff-0.7.0.orig/run_tests.sh 2021-11-25 19:06:30.063860770 +0100
-+++ python-unidiff-0.7.0/run_tests.sh 2021-11-25 19:06:39.597243030 +0100
-@@ -1,2 +1,2 @@
--#! /bin/bash
--PYTHONPATH=unidiff python -m unittest discover -s tests/
-+#!/bin/sh
-+PYTHONPATH=unidiff python3 -m unittest discover -s tests/
diff --git a/testing/py3-unidns/APKBUILD b/testing/py3-unidns/APKBUILD
new file mode 100644
index 00000000000..3c7b24b3dba
--- /dev/null
+++ b/testing/py3-unidns/APKBUILD
@@ -0,0 +1,45 @@
+# Contributor: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
+# Maintainer: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
+pkgname=py3-unidns
+_pyname="unidns"
+pkgver=0.0.1
+pkgrel=2
+pkgdesc="Rudimentary async DNS client in Python"
+url="https://github.com/skelsec/unidns"
+arch="noarch"
+license="MIT"
+depends="
+ py3-asysocks
+ python3
+ "
+makedepends="
+ py3-gpep517
+ py3-wheel
+ py3-setuptools
+ "
+subpackages="$pkgname-pyc $pkgname-examples"
+source="$pkgname-$pkgver.tar.gz::https://github.com/skelsec/unidns/archive/refs/tags/$pkgver.tar.gz"
+builddir="$srcdir/$_pyname-$pkgver"
+options="!check" # no tests provided
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+examples() {
+ pkgdesc="$pkgdesc (example client)"
+ depends="$pkgname=$pkgver-r$pkgrel"
+ amove usr/lib/python*/site-packages/unidns/examples
+ amove usr/bin
+}
+
+sha512sums="
+5251f740dcb34d78cd8dea2cfd87e1c5ffa5776745ca2d8e080f8a002c3441a96806ec1b244b81cc0e38d5b152a36614da9a3161eeeebf01c28c2c99de046d4c py3-unidns-0.0.1.tar.gz
+"
diff --git a/testing/py3-unoconv/APKBUILD b/testing/py3-unoconv/APKBUILD
index c24936118c9..42c2d0d2e42 100644
--- a/testing/py3-unoconv/APKBUILD
+++ b/testing/py3-unoconv/APKBUILD
@@ -1,7 +1,8 @@
# Contributor: TBK <tbk@jjtc.eu>
+# Maintainer:
pkgname=py3-unoconv
-pkgver=0.8.2
-pkgrel=3
+pkgver=0.9.0
+pkgrel=0
pkgdesc="Tool to convert between any document format supported by LibreOffice"
url="http://dag.wieers.com/home-made/unoconv/"
arch="noarch !armhf !s390x !ppc64le !riscv64" # blocked by libreoffice
@@ -28,9 +29,11 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="cd6a4d06559895c0aebb5fda51ca86928474dd0ca0aa908e81762643186c29cf8436c889eedbb18bc74ed6016414d1aa831cd034614244d5aae677a6b4cdd4c9 unoconv-0.8.2.tar.gz
+sha512sums="
+37d63ada32675fd0ebd089a74db453fdb7332a24e62cbf3e060d6d15cc503c76ede9ccc5e09467f4a38833a8358c09fde23cc8780a77c343268f20e0c37f2469 unoconv-0.9.0.tar.gz
b4fa76011fb96ba9521bb09d1a5c43dbd457c50bb2c6d66a5bc65928cde1e1d8174e43ad86f8f53755f222127cc5b0084b4564c248ce1fca56f9acfb4c03d86d setup.py
-ab3a9aad6c14190083364c7430a4a0ed3eaad54225ae88ea72b7ee940b80767298152f5fad4a0e17a506c7dbc85733a9910d2ed1a48c4c95bd078f139ec8f54c CVE-2019-17400.patch"
+ea4c2f734fec724596052b0ece570755500a368ed36e951eee1f81c4e62419d4e86d1064b38defc474da44c584848cfe2b8d8b03c6bdf5828e78969180b9d214 CVE-2019-17400.patch
+"
diff --git a/testing/py3-unoconv/CVE-2019-17400.patch b/testing/py3-unoconv/CVE-2019-17400.patch
index ba1f8287b32..1575088c90b 100644
--- a/testing/py3-unoconv/CVE-2019-17400.patch
+++ b/testing/py3-unoconv/CVE-2019-17400.patch
@@ -9,33 +9,13 @@ Subject: [PATCH] change default updateDocMode behavior and add new option to
1 file changed, 30 insertions(+), 21 deletions(-)
diff --git a/unoconv b/unoconv
-index f844d0f..762dc85 100755
+index 6aa1bfa..27acfcf 100755
--- a/unoconv
+++ b/unoconv
-@@ -543,6 +543,8 @@ class Options:
- self.template = None
- self.timeout = 6
- self.verbose = 0
-+ self.userProfile = None
-+ self.updateDocMode = NO_UPDATE
-
- self.setprinter = False
- self.paperformat = None
-@@ -555,8 +557,8 @@ class Options:
- ['connection=', 'debug', 'doctype=', 'export=', 'field=', 'format=',
- 'help', 'import=', 'import-filter-name=', 'listener', 'meta=', 'no-launch',
- 'output=', 'outputpath', 'password=', 'pipe=', 'port=', 'preserve',
-- 'server=', 'timeout=', 'show', 'stdin', 'stdout', 'template', 'printer=',
-- 'verbose', 'version'] )
-+ 'server=', 'timeout=', 'user-profile=', 'show', 'stdin',
-+ 'stdout', 'template', 'printer=', 'unsafe-quiet-update', 'verbose', 'version'] )
- except getopt.error as exc:
- print('unoconv: %s, try unoconv -h for a list of all the options' % str(exc))
- sys.exit(255)
-@@ -646,6 +648,10 @@ class Options:
- self.template = arg
- elif opt in ['-T', '--timeout']:
- self.timeout = int(arg)
+@@ -682,6 +682,10 @@ class Options:
+ # ref https://www.openoffice.org/api/docs/common/ref/com/sun/star/document/UpdateDocMode.html
+ print('Warning: Do not use the option --unsafe-quiet-update with untrusted input.')
+ self.updateDocMode = QUIET_UPDATE
+ elif opt in ['--unsafe-quiet-update']:
+ # ref https://www.openoffice.org/api/docs/common/ref/com/sun/star/document/UpdateDocMode.html
+ print('Warning: Do not use the option --unsafe-quiet-update with untrusted input.')
@@ -43,75 +23,3 @@ index f844d0f..762dc85 100755
elif opt in ['-v', '--verbose']:
self.verbose = self.verbose + 1
elif opt in ['-V', '--version']:
-@@ -760,6 +766,7 @@ unoconv options:
- --stdout write output to stdout
- -t, --template=file import the styles from template (.ott)
- -T, --timeout=secs timeout after secs if connection to listener fails
-+ --unsafe-quiet-update allow rendered document to fetch external resources (Warning: this is unsafe with untrusted input)
- -v, --verbose be more and more verbose (-vvv for debugging)
- --version display version number of unoconv, OOo/LO and platform details
- -P, --printer printer options
-@@ -930,7 +937,7 @@ class Convertor:
- phase = "import"
-
- ### Load inputfile
-- inputprops = UnoProps(Hidden=True, ReadOnly=True, UpdateDocMode=QUIET_UPDATE)
-+ inputprops = UnoProps(Hidden=True, ReadOnly=True, UpdateDocMode=op.updateDocMode)
-
- if op.password:
- inputprops += UnoProps(Password=op.password)
-@@ -983,23 +990,25 @@ class Convertor:
- # except AttributeError:
- # pass
-
-- ### Update document links
-- phase = "update-links"
-- try:
-- document.updateLinks()
-- # Found that when converting HTML files with external images, OO would only load five or six of
-- # the images in the file. In the resulting document, the rest of the images did not appear. Cycling
-- # through all the image references in the document seems to force OO to actually load them. Found
-- # some helpful guidance in this thread:
-- # https://forum.openoffice.org/en/forum/viewtopic.php?f=30&t=23909
-- # Ideally we would like to have the option to embed the images into the document, but I have not been
-- # able to figure out how to do this yet.
-- graphObjs = document.GraphicObjects
-- for i in range(0, graphObjs.getCount()):
-- graphObj = graphObjs.getByIndex(i)
-- except AttributeError:
-- # the document doesn't implement the XLinkUpdate interface
-- pass
-+ ### Update document links if appropriate
-+ if op.updateDocMode != NO_UPDATE:
-+ phase = "update-links"
-+ try:
-+ document.updateLinks()
-+ # Found that when converting HTML files with external images, OO would only load five or six of
-+ # the images in the file. In the resulting document, the rest of the images did not appear. Cycling
-+ # through all the image references in the document seems to force OO to actually load them. Found
-+ # some helpful guidance in this thread:
-+ # https://forum.openoffice.org/en/forum/viewtopic.php?f=30&t=23909
-+ # Ideally we would like to have the option to embed the images into the document, but I have not been
-+ # able to figure out how to do this yet.
-+ if op.updatehtmllinks:
-+ graphObjs = document.GraphicObjects
-+ for i in range(0, graphObjs.getCount()):
-+ graphObj = graphObjs.getByIndex(i)
-+ except AttributeError:
-+ # the document doesn't implement the XLinkUpdate interface
-+ pass
-
- ### Add/Replace variables
- phase = "replace-fields"
-@@ -1347,7 +1356,7 @@ if __name__ == '__main__':
- ### Now that we have found a working pyuno library, let's import some classes
- from com.sun.star.beans import PropertyValue
- from com.sun.star.connection import NoConnectException
-- from com.sun.star.document.UpdateDocMode import QUIET_UPDATE
-+ from com.sun.star.document.UpdateDocMode import NO_UPDATE, QUIET_UPDATE
- from com.sun.star.lang import DisposedException, IllegalArgumentException
- from com.sun.star.io import IOException, XOutputStream
- from com.sun.star.script import CannotConvertException
---
-2.23.0
-
diff --git a/testing/py3-untokenize/APKBUILD b/testing/py3-untokenize/APKBUILD
new file mode 100644
index 00000000000..adc9ca79614
--- /dev/null
+++ b/testing/py3-untokenize/APKBUILD
@@ -0,0 +1,37 @@
+# Maintainer: Will Sinatra <wpsinatra@gmail.com>
+pkgname=py3-untokenize
+pkgver=0.1.1
+pkgrel=3
+pkgdesc=" Transforms tokens into original source code"
+url="https://github.com/myint/untokenize"
+arch="noarch"
+license="MIT"
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/myint/untokenize/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/untokenize-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m unittest discover
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+ea47c2936945c2bf69196800e15188ec264004413dc62ddb0b3097eb6c6e70335191ec43b81cb1a7842c6bd0218dd1806525de8dfd21eea88aca4c56b6035ad7 py3-untokenize-0.1.1.tar.gz
+"
diff --git a/testing/py3-uptime/APKBUILD b/testing/py3-uptime/APKBUILD
index 76390e4eda3..adf1cf61687 100644
--- a/testing/py3-uptime/APKBUILD
+++ b/testing/py3-uptime/APKBUILD
@@ -3,7 +3,7 @@
pkgname=py3-uptime
_pkgname=uptime
pkgver=3.0.1
-pkgrel=5
+pkgrel=8
pkgdesc="A Python uptime library"
url="https://github.com/Cairnarvon/uptime"
arch="all"
@@ -12,6 +12,7 @@ replaces="py-uptime" # for backwards compatibility
provides="py-uptime=$pkgver-r$pkgrel" # for backwards compatibility
depends="python3"
makedepends="python3-dev py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -22,7 +23,7 @@ build() {
package() {
cd "$builddir"
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="55df1c30aa4be3e873ad36d0f784d49bc127d2bd38041c1453b112474dd52033e55d277172d8fdd73b3fabc7bf5071f29329d2a828244ef420d2da7db0f49a54 uptime-3.0.1.tar.gz"
diff --git a/testing/py3-uritools/APKBUILD b/testing/py3-uritools/APKBUILD
index 33805e70fe9..55e5d87ac04 100644
--- a/testing/py3-uritools/APKBUILD
+++ b/testing/py3-uritools/APKBUILD
@@ -2,8 +2,8 @@
# Maintainer: Michał Polański <michal@polanski.me>
pkgname=py3-uritools
_pyname=uritools
-pkgver=4.0.0
-pkgrel=0
+pkgver=4.0.2
+pkgrel=1
pkgdesc="Python functions for URI parsing, classification, and composition"
url="https://github.com/tkem/uritools"
license="MIT"
@@ -11,6 +11,7 @@ arch="noarch"
depends="python3"
makedepends="py3-setuptools"
checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
source="https://github.com/tkem/uritools/archive/v$pkgver/uritools-$pkgver.tar.gz"
builddir="$srcdir/$_pyname-$pkgver"
@@ -23,9 +24,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir" --skip-build
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
-1925e0014072276451a3b409fac66a2c2c0562269f94e1e14c59557de2100d4b3633e5e8236045eab335f772a46bb00ad4890e4f0ab28968c1077307d10c65bd uritools-4.0.0.tar.gz
+74ebcb656586a2c8b4fc179dd94754915242c077520fdd8f3abf862646de502148c580746ebdc11a138991fdabbf7f6fcf84c73f9ab191e7241ec077744bb40e uritools-4.0.2.tar.gz
"
diff --git a/testing/py3-urlobject/APKBUILD b/testing/py3-urlobject/APKBUILD
index 5bdc3cd8872..b46032e80bf 100644
--- a/testing/py3-urlobject/APKBUILD
+++ b/testing/py3-urlobject/APKBUILD
@@ -4,13 +4,14 @@
pkgname=py3-urlobject
_pkgname=URLObject
pkgver=2.4.3
-pkgrel=5
+pkgrel=8
pkgdesc="A Python utility class for manipulating URLs"
url="https://github.com/dperezrada/html2data"
arch="noarch"
license="Unlicense"
makedepends="py3-setuptools"
checkdepends="py3-nose"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -26,7 +27,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="a557731f4da8a2aaf8f7e3f7219b48cf66cf6a5706a0ba6978e9eeb310d8246baec6a6c9d798e31ac1b3874fd0d93bb88ea359a87390f7b935ba5472994e1bbe URLObject-2.4.3.tar.gz"
diff --git a/testing/py3-urwid_readline/APKBUILD b/testing/py3-urwid_readline/APKBUILD
deleted file mode 100644
index 9fd13d49cc8..00000000000
--- a/testing/py3-urwid_readline/APKBUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-# Contributor: omni <omni+alpine@hack.org>
-# Maintainer: omni <omni+alpine@hack.org>
-pkgname=py3-urwid_readline
-_pkgname=urwid_readline
-pkgver=0.13
-pkgrel=1
-pkgdesc="text input widget for urwid that supports readline shortcuts"
-url="https://github.com/rr-/urwid_readline"
-arch="noarch"
-license="MIT"
-depends="python3 py3-urwid"
-makedepends="py3-setuptools"
-checkdepends="py3-pytest py3-pytest-runner"
-#options="!check" # no test suite
-source="$pkgname-$pkgver.tar.gz::https://github.com/rr-/urwid_readline/archive/$pkgver.tar.gz"
-builddir="$srcdir/$_pkgname-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- PYTHONPATH="$PWD"/build/lib py.test-3 -v
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-49087b2b0e47d6adba317941b6be99d7d61fd66ae28fa2ed89730c24cc04b8fa4ce20cb8eb35ebab56f838491432684bb8892463439dcd5d06d087b509182d3d py3-urwid_readline-0.13.tar.gz
-"
diff --git a/testing/py3-us/APKBUILD b/testing/py3-us/APKBUILD
index 67a6f0e50c0..9e1eadcb9cb 100644
--- a/testing/py3-us/APKBUILD
+++ b/testing/py3-us/APKBUILD
@@ -2,8 +2,8 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-us
_pkgname=us
-pkgver=2.0.2
-pkgrel=3
+pkgver=3.1.1
+pkgrel=1
pkgdesc="US state meta information and other fun stuff"
url="https://github.com/unitedstates/python-us"
arch="noarch"
@@ -13,6 +13,7 @@ provides="py-us=$pkgver-r$pkgrel" # for backwards compatibility
depends="py3-jellyfish python3"
makedepends="py3-setuptools"
checkdepends="py3-pytest py3-tz"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz
fix-requires.patch"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -26,8 +27,10 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="0e6d814c248dbebbeb3f452989357150fedd1a5fe5a03e710ea742fb1001411b093d7494d4f4312cb3ff11d772de9419b6f7ce5779bfc96b5c762d75a96bd31d us-2.0.2.tar.gz
-dd6598d28ed9e9e3457b74d4f8cbff91e8993aff43a4634e6277223e5245fc0ea2e66f39fa1227ffb96447fbdccd23c28c8fa6f153f1616e39e0fc69b25f5cf4 fix-requires.patch"
+sha512sums="
+c74aebc6aa49afa8dc36d23b6d67c0d26294b8416d35b8c9b2e833b6c7fbb2d6f7d8983d56b7edaa129b94887c132043ebf02f3642e1a340f6fae889ee3d0e54 us-3.1.1.tar.gz
+7178b90935c71692db8a90e235a05a0d23b5fafe22449713abb85dc24c2345ea1bab990532314632d5c86351666bf5ce687c59b9ec31355bbe17fdbd65d7e914 fix-requires.patch
+"
diff --git a/testing/py3-us/fix-requires.patch b/testing/py3-us/fix-requires.patch
index e9572087b02..bcc7106ff5a 100644
--- a/testing/py3-us/fix-requires.patch
+++ b/testing/py3-us/fix-requires.patch
@@ -1,11 +1,13 @@
+diff --git a/setup.py b/setup.py
+index 0566674..87e049b 100644
--- a/setup.py
+++ b/setup.py
-@@ -13,7 +13,7 @@
+@@ -13,7 +13,7 @@ setup(
license="BSD",
packages=find_packages(),
include_package_data=True,
-- install_requires=["jellyfish==0.6.1"],
-+ install_requires=["jellyfish>=0.6.1"],
+- install_requires=["jellyfish==0.11.2"],
++ install_requires=["jellyfish>=0.11.2"],
entry_points={"console_scripts": ["states = us.cli.states:main"]},
platforms=["any"],
classifiers=[
diff --git a/testing/py3-utc/APKBUILD b/testing/py3-utc/APKBUILD
index e87223e955c..aa3573f41ee 100644
--- a/testing/py3-utc/APKBUILD
+++ b/testing/py3-utc/APKBUILD
@@ -3,13 +3,14 @@
pkgname=py3-utc
_pkgname=utc
pkgver=0.0.3
-pkgrel=5
+pkgrel=8
pkgdesc="A tiny library for working with UTC time"
url="https://bitbucket.org/btubbs/utc"
arch="noarch"
license="MIT"
depends="python3"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -21,7 +22,7 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="efaa3ad007d658b05588eb995f23a5873d3e04f769cae00ca44feb65f29f54340dbe0bf73237c9300fb2cf61274318c77f446301a0fc4ebfeb4a67beeaf9a24b utc-0.0.3.tar.gz"
diff --git a/testing/py3-utils/APKBUILD b/testing/py3-utils/APKBUILD
new file mode 100644
index 00000000000..b89b2bf947e
--- /dev/null
+++ b/testing/py3-utils/APKBUILD
@@ -0,0 +1,46 @@
+# Contributor: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
+# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
+pkgname=py3-utils
+_pkgname=python-utils
+pkgver=3.8.1
+pkgrel=1
+pkgdesc="Convenient utilities not included with the standard Python install"
+url="https://github.com/WoLpH/python-utils"
+arch="noarch"
+license="BSD-3-Clause"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+checkdepends="py3-pytest py3-pytest-asyncio py3-loguru"
+subpackages="$pkgname-pyc"
+source="
+ https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz
+
+ fix-setuptools-deprecation.patch
+ pytest.patch
+ typing-ext.patch
+ "
+
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+ccba9651cc99a8f4e3f13e7ff66a43a40d2e85bc735b6246524269495ff321225a0dcad9abd03ca9cb61b4b1b35a27009fac3fe87e3f748ffc5c87a956acd335 python-utils-3.8.1.tar.gz
+c001453b958b8231806ef6a04fcd21e1d252eeec36d4e6cbfce35f0662bae76c3f7484e0e8ff06d68a3e9cc7d19c9cdbf792c13e0101c580bb5e8de9d837fde7 fix-setuptools-deprecation.patch
+99cc91ad155f8140aedc9420659c0e560a4d816ac1f85468ddb3a9fdc87526d591da916441d63b601146a86fb2c26f61c9dfbe37e31b86ee605f732e24e7b465 pytest.patch
+d68943e3301eaafe2a9ea27f382a2eba1ce98149d8cbbe91aa9222cf76a8f7bebba3d9dbfced54bd88c90688a6e18373f011fbb83cd36cbf2ecd3e36b034aa22 typing-ext.patch
+"
diff --git a/testing/py3-utils/fix-setuptools-deprecation.patch b/testing/py3-utils/fix-setuptools-deprecation.patch
new file mode 100644
index 00000000000..16b5e5a1b8a
--- /dev/null
+++ b/testing/py3-utils/fix-setuptools-deprecation.patch
@@ -0,0 +1,11 @@
+--- a/setup.cfg
++++ b/setup.cfg
+@@ -2,7 +2,7 @@
+ test = pytest
+
+ [metadata]
+-description-file = README.rst
++description_file = README.rst
+
+ [nosetests]
+ verbosity = 3
diff --git a/testing/py3-utils/pytest.patch b/testing/py3-utils/pytest.patch
new file mode 100644
index 00000000000..a7f016dd82d
--- /dev/null
+++ b/testing/py3-utils/pytest.patch
@@ -0,0 +1,14 @@
+diff --git a/pytest.ini b/pytest.ini
+index a8e632a..e28ed7d 100644
+--- a/pytest.ini
++++ b/pytest.ini
+@@ -5,9 +5,6 @@ python_files =
+
+ addopts =
+ --doctest-modules
+- --cov python_utils
+- --cov-report term-missing
+-; --mypy
+
+ doctest_optionflags =
+ ALLOW_UNICODE
diff --git a/testing/py3-utils/typing-ext.patch b/testing/py3-utils/typing-ext.patch
new file mode 100644
index 00000000000..ee6acb2f2ee
--- /dev/null
+++ b/testing/py3-utils/typing-ext.patch
@@ -0,0 +1,22 @@
+diff --git a/python_utils/types.py b/python_utils/types.py
+index 01c319a..79ef950 100644
+--- a/python_utils/types.py
++++ b/python_utils/types.py
+@@ -1,7 +1,6 @@
+ # pyright: reportWildcardImportFromLibrary=false
+ import datetime
+ import decimal
+-from typing_extensions import * # type: ignore # noqa: F403
+ from typing import * # type: ignore # pragma: no cover # noqa: F403
+ from types import * # type: ignore # pragma: no cover # noqa: F403
+
+--- a/setup.py
++++ b/setup.py
+@@ -29,7 +29,6 @@
+ ),
+ package_data={'python_utils': ['py.typed']},
+ long_description=long_description,
+- install_requires=['typing_extensions>3.10.0.2'],
+ tests_require=['pytest'],
+ extras_require={
+ 'loguru': [
diff --git a/testing/py3-uvloop/APKBUILD b/testing/py3-uvloop/APKBUILD
deleted file mode 100644
index ae28f0d156c..00000000000
--- a/testing/py3-uvloop/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Contributor: Michał Polański <michal@polanski.me>
-# Maintainer: Michał Polański <michal@polanski.me>
-pkgname=py3-uvloop
-pkgver=0.16.0
-pkgrel=0
-pkgdesc="Ultra fast asyncio event loop"
-url="https://github.com/MagicStack/uvloop"
-license="MIT OR Apache-2.0"
-arch="all !armhf !ppc64le" # tests fail
-depends="python3"
-makedepends="py3-setuptools python3-dev cython libuv-dev"
-checkdepends="py3-pytest py3-aiohttp py3-openssl py3-psutil"
-source="https://github.com/MagicStack/uvloop/archive/v$pkgver/py3-uvloop-$pkgver.tar.gz
- dns-tests.patch
- tcp-tests.patch
- "
-builddir="$srcdir/uvloop-$pkgver"
-
-build() {
- python3 setup.py build build_ext --inplace --cython-always --use-system-libuv
-}
-
-check() {
- PYTHONASYNCIODEBUG=1 PYTHONPATH="$(echo "$builddir"/build/lib.linux-*)" pytest -v \
- -k 'not test_remote_shutdown_receives_trailing_data'
-}
-
-package() {
- python3 setup.py install --root="$pkgdir" --skip-build
-}
-
-sha512sums="
-1896d9a60a9c4e4b8d146ad858e664f3e43969ad0c14026fe79c69f546e40bf1dc6a4cce2d388a7a6e0f5b8306b1eb4da3f713cce44c58ba6628b82ac6eaf271 py3-uvloop-0.16.0.tar.gz
-072c955662a9922de1f08713a73f0f9a08bd76b82cabd04e15cbb8b8299d81615516d03bdff207d2f0125afe055e9573604ebc331ad85f5d69ec6bf69668e620 dns-tests.patch
-809af42dc056b718652ff1e2f99cc493b230a9566367bccf349afc705653ffb830288b7de80bc6016071980af5d5e0e635e72d53f7774ace193ce4fb2b1a62cc tcp-tests.patch
-"
diff --git a/testing/py3-uvloop/dns-tests.patch b/testing/py3-uvloop/dns-tests.patch
deleted file mode 100644
index 57d14bad5ef..00000000000
--- a/testing/py3-uvloop/dns-tests.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-Behavior of getaddrinfo provided by libuv differs from musl.
-Skip affected tests.
-
---- a/tests/test_dns.py
-+++ b/tests/test_dns.py
-@@ -1,4 +1,5 @@
- import asyncio
-+import pytest
- import socket
- import unittest
-
-@@ -99,18 +100,22 @@ class BaseTestDNS:
- self._test_getaddrinfo(b'example.com', '80')
- self._test_getaddrinfo(b'example.com', '80', type=socket.SOCK_STREAM)
-
-+ @pytest.mark.skip(reason="failure")
- def test_getaddrinfo_12(self):
- self._test_getaddrinfo('127.0.0.1', '80')
- self._test_getaddrinfo('127.0.0.1', '80', type=socket.SOCK_STREAM)
-
-+ @pytest.mark.skip(reason="failure")
- def test_getaddrinfo_13(self):
- self._test_getaddrinfo(b'127.0.0.1', b'80')
- self._test_getaddrinfo(b'127.0.0.1', b'80', type=socket.SOCK_STREAM)
-
-+ @pytest.mark.skip(reason="failure")
- def test_getaddrinfo_14(self):
- self._test_getaddrinfo(b'127.0.0.1', b'http')
- self._test_getaddrinfo(b'127.0.0.1', b'http', type=socket.SOCK_STREAM)
-
-+ @pytest.mark.skip(reason="failure")
- def test_getaddrinfo_15(self):
- self._test_getaddrinfo('127.0.0.1', 'http')
- self._test_getaddrinfo('127.0.0.1', 'http', type=socket.SOCK_STREAM)
-@@ -127,10 +132,12 @@ class BaseTestDNS:
- self._test_getaddrinfo('localhost', b'http')
- self._test_getaddrinfo('localhost', b'http', type=socket.SOCK_STREAM)
-
-+ @pytest.mark.skip(reason="failure")
- def test_getaddrinfo_19(self):
- self._test_getaddrinfo('::1', 80)
- self._test_getaddrinfo('::1', 80, type=socket.SOCK_STREAM)
-
-+ @pytest.mark.skip(reason="failure")
- def test_getaddrinfo_20(self):
- self._test_getaddrinfo('127.0.0.1', 80)
- self._test_getaddrinfo('127.0.0.1', 80, type=socket.SOCK_STREAM)
diff --git a/testing/py3-uvloop/tcp-tests.patch b/testing/py3-uvloop/tcp-tests.patch
deleted file mode 100644
index e5619bc217b..00000000000
--- a/testing/py3-uvloop/tcp-tests.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-Adjust error message for musl-based systems.
-
---- a/tests/test_tcp.py
-+++ b/tests/test_tcp.py
-@@ -221,8 +221,8 @@ class _TestTCP:
- addr = sock.getsockname()
-
- with self.assertRaisesRegex(OSError,
-- r"error while attempting.*\('127.*: "
-- r"address already in use"):
-+ r"\[Errno 98\] error while attempting.*\('127.*: "
-+ r"address in use"):
-
- self.loop.run_until_complete(
- self.loop.create_server(object, *addr))
diff --git a/testing/py3-vatnumber/APKBUILD b/testing/py3-vatnumber/APKBUILD
index a4bde13d9d5..8031d832b1f 100644
--- a/testing/py3-vatnumber/APKBUILD
+++ b/testing/py3-vatnumber/APKBUILD
@@ -3,7 +3,7 @@
pkgname=py3-vatnumber
_pkgname=vatnumber
pkgver=1.2
-pkgrel=5
+pkgrel=8
pkgdesc="A Python module to validate VAT numbers"
options="!check" # Requres unpackaged 'suds'
url="https://pypi.org/project/vatnumber/"
@@ -12,11 +12,15 @@ license="GPL-3.0-or-later"
depends="python3 py3-python-stdnum"
makedepends="py3-setuptools"
checkdepends="py3-pysimplesoap"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz
+ py3.patch
+ "
builddir="$srcdir"/$_pkgname-$pkgver
build() {
+ 2to3 -w vatnumber
python3 setup.py build
}
@@ -25,7 +29,10 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="708b73f8d059638c165663f8b36dd8602c0aa857be456e50690dd61c09b9a8a2e560bf2a3ed89a790670c93f5b84c5a391cef748bebf0fa978a6fe5e319a541f vatnumber-1.2.tar.gz"
+sha512sums="
+708b73f8d059638c165663f8b36dd8602c0aa857be456e50690dd61c09b9a8a2e560bf2a3ed89a790670c93f5b84c5a391cef748bebf0fa978a6fe5e319a541f vatnumber-1.2.tar.gz
+74339ae600e1745ffbcd9c75ebcccbfe2f2a9cc33f5cfcecfa446ac59284dbfcc7e2db9001e86b6bef6677c37e4d27b371fdfef86e1eba23c2b7659ad5281f24 py3.patch
+"
diff --git a/testing/py3-vatnumber/py3.patch b/testing/py3-vatnumber/py3.patch
new file mode 100644
index 00000000000..9804bcf60b5
--- /dev/null
+++ b/testing/py3-vatnumber/py3.patch
@@ -0,0 +1,10 @@
+diff --git a/setup.py b/setup.py
+index 048fe6b..5a7a7a2 100644
+--- a/setup.py
++++ b/setup.py
+@@ -43,5 +43,4 @@ setup(name='vatnumber',
+ 'suds': ['suds'],
+ },
+ test_suite="vatnumber.tests",
+- use_2to3=True,
+ )
diff --git a/testing/py3-vdf/APKBUILD b/testing/py3-vdf/APKBUILD
new file mode 100644
index 00000000000..961676289e0
--- /dev/null
+++ b/testing/py3-vdf/APKBUILD
@@ -0,0 +1,45 @@
+# Contributor: Joshua Murphy <joshuamurphy@posteo.net>
+# Maintainer: Joshua Murphy <joshuamurphy@posteo.net>
+pkgname=py3-vdf
+pkgver=3.4
+pkgrel=1
+pkgdesc="Package for working with Valve's text and binary KeyValue format"
+url="https://github.com/ValvePython/vdf"
+# s390x: broken tests on big endian
+arch="noarch !s390x"
+license="MIT"
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="
+ py3-coverage
+ py3-mock
+ py3-nose
+ py3-pytest
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/ValvePython/vdf/archive/v$pkgver.tar.gz"
+builddir="$srcdir/vdf-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+a22668039d32cb1ef4660ea187a3a144a32e55e5b02c4c567b850d059a47beac111f9164c67bbe3e7b67d15117efe7b207882465b2353a65b7e0f0c107e88d5c py3-vdf-3.4.tar.gz
+"
diff --git a/testing/py3-venusian/APKBUILD b/testing/py3-venusian/APKBUILD
index 5c7c78caca5..f89a8611eef 100644
--- a/testing/py3-venusian/APKBUILD
+++ b/testing/py3-venusian/APKBUILD
@@ -2,14 +2,15 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-venusian
_pkgname=venusian
-pkgver=3.0.0
-pkgrel=2
+pkgver=3.1.0
+pkgrel=1
pkgdesc="A Python library for deferring decorator actions"
-url="https://pypi.python.org/pypi/venusian"
+url="https://pypi.org/project/venusian"
arch="noarch"
license="BSD-4-Clause"
makedepends="py3-setuptools"
checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -26,7 +27,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="dec12473f30697ec678190054974d48bd30775f2204308dc43469e65814dbeea1b7ebf571187cc9efe2d3d2a73ab9ef839ad39b99ed81dfa75577f203653a776 venusian-3.0.0.tar.gz"
+sha512sums="
+094fe85ca1e241437c386eb4db63ed8985ba962cb7b199bb4ef903d35de885948be135715a9b39bc2a102752678d0c2aaa18e0002c7c4669fb961686b360910e venusian-3.1.0.tar.gz
+"
diff --git a/testing/py3-vici/APKBUILD b/testing/py3-vici/APKBUILD
deleted file mode 100644
index 42fc93fe5b5..00000000000
--- a/testing/py3-vici/APKBUILD
+++ /dev/null
@@ -1,41 +0,0 @@
-# Maintainer: Noel Kuntze <noel.kuntze@thermi.consulting>
-pkgname=py3-vici
-pkgver=5.9.4
-pkgrel=0
-pkgdesc="Native Python interface for strongSwan's VICI protocol"
-url="https://strongswan.org"
-arch="noarch"
-license="MIT"
-depends="python3"
-makedepends="automake autoconf py3-setuptools"
-checkdepends="py3-pytest py3-tox"
-source="https://github.com/strongswan/strongswan/releases/download/$pkgver/strongswan-$pkgver.tar.bz2
- use-sitepackages.patch
- "
-builddir="$srcdir/strongswan-$pkgver"
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --disable-defaults \
- --enable-python-eggs
-
- cd src/libcharon/plugins/vici/python
- make all
- python3 setup.py build
-}
-
-check() {
- make -C src/libcharon/plugins/vici/python check
-}
-
-package() {
- cd src/libcharon/plugins/vici/python/
- python3 setup.py install --root="$pkgdir" --optimize=1
-}
-
-sha512sums="
-796356c1d5c1ad410f0ed944ab4a131076d26f120ec6fa57796fe4060b0741201199625883ddc9ebd8a7ad299495f073cec76a6780ebd8f375605aae16750cf3 strongswan-5.9.4.tar.bz2
-4c53fb194339598c2d4226c152b2624550eac052498f52294202468c3dbf5108590f31326e2ca87ce833839ec2daf1ad991d83088e5388c0bcc5503507f7dae5 use-sitepackages.patch
-"
diff --git a/testing/py3-vici/use-sitepackages.patch b/testing/py3-vici/use-sitepackages.patch
deleted file mode 100644
index 9e029a5322a..00000000000
--- a/testing/py3-vici/use-sitepackages.patch
+++ /dev/null
@@ -1,9 +0,0 @@
-diff --git a/src/libcharon/plugins/vici/python/tox.sh b/src/libcharon/plugins/vici/python/tox.sh
-index 1a4f786..d52b626 100755
---- a/src/libcharon/plugins/vici/python/tox.sh
-+++ b/src/libcharon/plugins/vici/python/tox.sh
-@@ -1,3 +1,3 @@
- #!/bin/sh
-
--${TOX} -c ${srcdir} --skip-missing-interpreters
-+${TOX} -c ${srcdir} --skip-missing-interpreters --sitepackages
diff --git a/testing/py3-vine/APKBUILD b/testing/py3-vine/APKBUILD
deleted file mode 100644
index 3e107a59378..00000000000
--- a/testing/py3-vine/APKBUILD
+++ /dev/null
@@ -1,30 +0,0 @@
-# Maintainer:
-pkgname=py3-vine
-pkgver=1.3.0
-pkgrel=3
-pkgdesc="futures and promises implementation for python"
-url="https://github.com/celery/vine"
-arch="noarch"
-license="BSD-3-Clause"
-depends="python3"
-makedepends="py3-setuptools"
-checkdepends="py3-pytest py3-case py3-nose"
-source="https://files.pythonhosted.org/packages/source/v/vine/vine-$pkgver.tar.gz"
-builddir="$srcdir/vine-$pkgver"
-
-replaces="py-vine" # Backwards compatibility
-provides="py-vine=$pkgver-r$pkgrel" # Backwards compatibility
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 -m pytest
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="f7242378ebc9b591b6e0a7b6263514f32cee4b996bc6461313221b9a391dd0dd1d833591d6e9ca72ae003f6ce5c4204856d49bb5e57c69a125072cac25758688 vine-1.3.0.tar.gz"
diff --git a/testing/py3-virtualenvwrapper/APKBUILD b/testing/py3-virtualenvwrapper/APKBUILD
new file mode 100644
index 00000000000..04a335b7340
--- /dev/null
+++ b/testing/py3-virtualenvwrapper/APKBUILD
@@ -0,0 +1,41 @@
+# Maintainer: Hugo Osvaldo Barrera <hugo@whynothugo.nl>
+pkgname=py3-virtualenvwrapper
+pkgver=6.1.0
+pkgrel=1
+pkgdesc="Extensions to Ian Bicking's virtualenv tool"
+url="https://virtualenvwrapper.readthedocs.io/"
+arch="noarch"
+license="MIT"
+depends="python3 py3-virtualenv py3-stevedore"
+makedepends="
+ grep
+ py3-gpep517
+ py3-pbr
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="py3-pytest py3-six"
+subpackages="$pkgname-pyc"
+source="https://pypi.org/packages/source/v/virtualenvwrapper/virtualenvwrapper-$pkgver.tar.gz"
+builddir="$srcdir/virtualenvwrapper-$pkgver"
+options="!check" # fail to run
+
+build() {
+ export PBR_VERSION=$pkgver
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ sh tests/run_tests
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+78e09956132862fbf1caf53cb6c9375aa3718685f72d8f3fb61e402e6b26e8568d5b3a3ed18142b14f3b2691f89e6f912782e813d8139dc71ceb7e47bde8d0b0 virtualenvwrapper-6.1.0.tar.gz
+"
diff --git a/testing/py3-visitor/APKBUILD b/testing/py3-visitor/APKBUILD
index 6a3feef1c88..229fbc0440f 100644
--- a/testing/py3-visitor/APKBUILD
+++ b/testing/py3-visitor/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer:
pkgname=py3-visitor
pkgver=0.1.3
-pkgrel=3
+pkgrel=6
pkgdesc="Tiny pythonic visitor implementation."
url="https://github.com/mbr/visitor"
arch="noarch"
@@ -10,6 +10,7 @@ license="MIT"
depends="python3"
makedepends="py3-setuptools"
checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/mbr/visitor/archive/$pkgver.tar.gz"
builddir="$srcdir/visitor-$pkgver"
@@ -22,7 +23,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="414c77df8efcc22df5ee8073e02b8c5c28563954ef9b9a869c4ea3f7f1268a97929c1fe29142ba41e3a5acafea52599f6bf073aacd654643d7d8380cd4f41fbc py3-visitor-0.1.3.tar.gz"
diff --git a/testing/py3-w3lib/APKBUILD b/testing/py3-w3lib/APKBUILD
deleted file mode 100644
index b91b642e611..00000000000
--- a/testing/py3-w3lib/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Contributor: Fabian Affolter <fabian@affolter-engineering.ch>
-# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
-pkgname=py3-w3lib
-_pkgname=w3lib
-pkgver=1.22.0
-pkgrel=2
-pkgdesc="A library of web-related functions"
-url="https://github.com/scrapy/w3lib"
-arch="noarch"
-license="BSD-3-Clause"
-depends="py3-six"
-makedepends="py3-setuptools"
-checkdepends="py3-pytest"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz
- python-3.9.patch
- "
-builddir="$srcdir/$_pkgname-$pkgver"
-
-replaces="py-w3lib" # Backwards compatibility
-provides="py-w3lib=$pkgver-r$pkgrel" # Backwards compatibility
-
-build() {
- python3 setup.py build
-}
-
-check() {
- py.test-3 -v
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="fbc2bbc06808ec5d28e300ce00e2a59cc07a3a15e4a3690d3b6a105b6f33e6e02fab057b27733d9ea69bc99ebc1e7e8e628e1408a00194991ea05f35dae8bf10 w3lib-1.22.0.tar.gz
-02ce9478acae629c385c7874ba4daf859d94a6b3258f17b80fd56d7f86c4830c8cbfdfe5adcb1329bfa72c05ed963081ae0fda4e989287133423e11caad80fa4 python-3.9.patch"
diff --git a/testing/py3-w3lib/python-3.9.patch b/testing/py3-w3lib/python-3.9.patch
deleted file mode 100644
index a24eefd0240..00000000000
--- a/testing/py3-w3lib/python-3.9.patch
+++ /dev/null
@@ -1,102 +0,0 @@
-From fae6cc40e112cd13697cb0e8d79976f32c72491d Mon Sep 17 00:00:00 2001
-From: Eugenio Lacuesta <eugenio.lacuesta@gmail.com>
-Date: Wed, 10 Mar 2021 12:31:05 -0300
-Subject: [PATCH 2/8] [CI] Mark single add_or_replace_parameter test as xfail
-
----
- .gitignore | 3 ++-
- tests/test_url.py | 25 ++++++++++++++-----------
- 2 files changed, 16 insertions(+), 12 deletions(-)
-
-diff --git a/tests/test_url.py b/tests/test_url.py
-index 8b07c00..0f7458e 100644
---- a/tests/test_url.py
-+++ b/tests/test_url.py
-@@ -1,12 +1,14 @@
--# -*- coding: utf-8 -*-
- from __future__ import absolute_import
- import os
- import unittest
-+
-+import pytest
-+from six.moves.urllib.parse import urlparse
-+
- from w3lib.url import (is_url, safe_url_string, safe_download_url,
- url_query_parameter, add_or_replace_parameter, url_query_cleaner,
- file_uri_to_path, parse_data_uri, path_to_file_uri, any_to_uri,
- urljoin_rfc, canonicalize_url, parse_url, add_or_replace_parameters)
--from six.moves.urllib.parse import urlparse
-
-
- class UrlTests(unittest.TestCase):
-@@ -76,17 +78,16 @@ def test_safe_url_string_remove_ascii_tab_and_newlines(self):
- def test_safe_url_string_unsafe_chars(self):
- safeurl = safe_url_string(r"http://localhost:8001/unwise{,},|,\,^,[,],`?|=[]&[]=|")
- self.assertEqual(safeurl, r"http://localhost:8001/unwise%7B,%7D,|,%5C,%5E,[,],%60?|=[]&[]=|")
--
-+
- def test_safe_url_string_quote_path(self):
- safeurl = safe_url_string(u'http://google.com/"hello"', quote_path=True)
- self.assertEqual(safeurl, u'http://google.com/%22hello%22')
--
-+
- safeurl = safe_url_string(u'http://google.com/"hello"', quote_path=False)
- self.assertEqual(safeurl, u'http://google.com/"hello"')
--
-+
- safeurl = safe_url_string(u'http://google.com/"hello"')
- self.assertEqual(safeurl, u'http://google.com/%22hello%22')
--
-
- def test_safe_url_string_with_query(self):
- safeurl = safe_url_string(u"http://www.example.com/£?unit=µ")
-@@ -310,10 +311,6 @@ def test_add_or_replace_parameter(self):
- self.assertEqual(add_or_replace_parameter(url, 'arg3', 'nv3'),
- 'http://domain/test?arg1=v1&arg2=v2&arg3=nv3')
-
-- url = 'http://domain/test?arg1=v1;arg2=v2'
-- self.assertEqual(add_or_replace_parameter(url, 'arg1', 'v3'),
-- 'http://domain/test?arg1=v3&arg2=v2')
--
- self.assertEqual(add_or_replace_parameter("http://domain/moreInfo.asp?prodID=", 'prodID', '20'),
- 'http://domain/moreInfo.asp?prodID=20')
- url = 'http://rmc-offers.co.uk/productlist.asp?BCat=2%2C60&CatID=60'
-@@ -338,6 +335,13 @@ def test_add_or_replace_parameter(self):
- self.assertEqual(add_or_replace_parameter(url, 'arg1', 'v3'),
- 'http://domain/test?arg1=v3&arg2=v2')
-
-+ @pytest.mark.xfail(reason="https://github.com/scrapy/w3lib/issues/164")
-+ def test_add_or_replace_parameter_fail(self):
-+ self.assertEqual(
-+ add_or_replace_parameter('http://domain/test?arg1=v1;arg2=v2', 'arg1', 'v3'),
-+ 'http://domain/test?arg1=v3&arg2=v2'
-+ )
-+
- def test_add_or_replace_parameters(self):
- url = 'http://domain/test'
- self.assertEqual(add_or_replace_parameters(url, {'arg': 'v'}),
-@@ -767,4 +771,3 @@ def test_scheme_case_insensitive(self):
-
- if __name__ == "__main__":
- unittest.main()
--
-
-From 71479b659af134123857d721b6fdeb8864b9c2f3 Mon Sep 17 00:00:00 2001
-From: Eugenio Lacuesta <eugenio.lacuesta@gmail.com>
-Date: Wed, 10 Mar 2021 12:34:47 -0300
-Subject: [PATCH 3/8] Restore encoding declaration
-
----
- tests/test_url.py | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/tests/test_url.py b/tests/test_url.py
-index 0f7458e..0769550 100644
---- a/tests/test_url.py
-+++ b/tests/test_url.py
-@@ -1,3 +1,4 @@
-+# -*- coding: utf-8 -*-
- from __future__ import absolute_import
- import os
- import unittest
-
diff --git a/testing/py3-ward/APKBUILD b/testing/py3-ward/APKBUILD
new file mode 100644
index 00000000000..3b52ed06c20
--- /dev/null
+++ b/testing/py3-ward/APKBUILD
@@ -0,0 +1,53 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-ward
+pkgver=0.67.0_beta0
+pkgrel=2
+pkgdesc="Modern test framework for Python"
+url="https://ward.readthedocs.io/"
+arch="noarch"
+license="MIT"
+depends="
+ py3-click
+ py3-click-completion
+ py3-click-default-group
+ py3-cucumber-tag-expressions
+ py3-pluggy
+ py3-pprintpp
+ py3-rich
+ py3-tomli
+ "
+makedepends="
+ poetry
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="
+ py3-pytest
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/darrenburns/ward/archive/refs/tags/release/${pkgver//_beta/b}.tar.gz"
+options="!check" # Pytest fails to find fixture "description"
+builddir="$srcdir/ward-release-${pkgver//_beta/b}"
+
+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 --ignore tests/resources
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+c94106da8123ec5a2aa32fc68c09ab14179c0226245c467755736b9c069d287326398ef95ba609c57468e5fb5d61dedbfcc6a18db351e556cd0914f6b8d5e5f6 py3-ward-0.67.0_beta0.tar.gz
+"
diff --git a/testing/py3-wasabi/APKBUILD b/testing/py3-wasabi/APKBUILD
deleted file mode 100644
index 1e11936bade..00000000000
--- a/testing/py3-wasabi/APKBUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-# Contributor: Oleg Titov <oleg.titov@gmail.com>
-# Maintainer: Oleg Titov <oleg.titov@gmail.com>
-pkgname=py3-wasabi
-pkgver=0.7.1
-pkgrel=2
-pkgdesc="A lightweight console printing and formatting toolkit"
-url="https://github.com/ines/wasabi"
-arch="noarch"
-license="MIT"
-depends="python3"
-makedepends="py3-setuptools"
-checkdepends="py3-pytest"
-subpackages="$pkgname-doc"
-source="wasabi-$pkgver.tar.gz::https://github.com/ines/wasabi/archive/v$pkgver.tar.gz"
-builddir="$srcdir/wasabi-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- pytest-3 wasabi
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-
- install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
- install -Dm644 README.md "$pkgdir/usr/share/doc/$pkgname/README.md"
-}
-
-sha512sums="9b264ee0d7d793b1481b79d16fe5da74180b0074d2b748f4bfcbba717dc59bb1e5052be3bfa656bffd81b30fdf62833ee7b930c886409bde9ee8856293f2f718 wasabi-0.7.1.tar.gz"
diff --git a/testing/py3-wbdata/APKBUILD b/testing/py3-wbdata/APKBUILD
index e217464d510..c63d5c5bb34 100644
--- a/testing/py3-wbdata/APKBUILD
+++ b/testing/py3-wbdata/APKBUILD
@@ -2,15 +2,16 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-wbdata
_pkgname=wbdata
-pkgver=0.3.0
-pkgrel=0
+pkgver=1.0.0
+pkgrel=1
pkgdesc="A library to access World Bank data"
options="!check" # Tests are broken
url="https://github.com/oliversherouse/wbdata"
arch="noarch"
license="GPL-2.0-or-later"
depends="python3 py3-decorator"
-makedepends="py3-setuptools"
+makedepends="py3-poetry-core py3-gpep517"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
@@ -18,17 +19,22 @@ replaces="py-wbdata" # Backwards compatibility
provides="py-wbdata=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- python3 setup.py test
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ gpep517 install-wheel --destdir .testenv --prefix '' .dist/*.whl
+ .testenv/bin/python3 -m unittest
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
-e6e1cd3ac4754973d9ef0e27fabcb122be1e84dc6f8a425bebb2378ade0415510173258483af7f43b174f77bb2efbc64982c7612bb50cf99cd1eb2108c4c4f08 wbdata-0.3.0.tar.gz
+649d994d4d42e4cadc532212f799a4788317e58bd2d6cfb971f7331622d9df0da04229221eff5cb1ca401b6d9289a8215e242be2f7dfd2607e7eb01cd6c3dbcf wbdata-1.0.0.tar.gz
"
diff --git a/testing/py3-webdavclient3/APKBUILD b/testing/py3-webdavclient3/APKBUILD
new file mode 100644
index 00000000000..0e477599a33
--- /dev/null
+++ b/testing/py3-webdavclient3/APKBUILD
@@ -0,0 +1,39 @@
+# Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
+# Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>
+pkgname=py3-webdavclient3
+#_pkgreal is used by apkbuild-pypi to find modules at PyPI
+_pkgreal=webdav-client-python-3
+pkgver=3.14.6
+pkgrel=1
+pkgdesc="WebDAV client"
+url="https://pypi.python.org/project/webdavclient3"
+arch="noarch"
+license="MIT"
+depends="py3-requests py3-lxml py3-dateutil"
+checkdepends="py3-pytest"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+source="$pkgname-$pkgver.tar.gz::https://github.com/ezhov-evgeny/webdav-client-python-3/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+subpackages="$pkgname-pyc"
+options="!check" # Test suite needs more work to be setup to work in aports env
+
+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
+ .testenv/bin/python3 -m pytest -v
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+4621dfe3fdde4a60a7580b37aaf2bf778ebae1615946e9ff5aedcf3d2d17b3e60511a4522f8023bd4756139c66027149a2afafbd07bf02d029d811bec172057d py3-webdavclient3-3.14.6.tar.gz
+"
diff --git a/testing/py3-webpy/APKBUILD b/testing/py3-webpy/APKBUILD
deleted file mode 100644
index f57b7a5ac93..00000000000
--- a/testing/py3-webpy/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Contributor: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-# Maintainer: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-pkgname=py3-webpy
-_pkgorig=webpy
-pkgver=0.62
-pkgrel=0
-pkgdesc="A web framework for python that is as simple as it is powerful"
-url="https://www.webpy.org"
-arch="noarch"
-license="Public Domain and BSD"
-depends="python3 py3-cheroot"
-makedepends="py3-setuptools"
-checkdepends="python3-dev py3-pytest"
-source="https://github.com/webpy/webpy/archive/$pkgver/$_pkgorig-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgorig-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 -m pytest -k 'not test_routing'
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-2b91977bb78e9387c78ed893b098d665a5189e7b9cb1eacbaf903564285524dabc960107b0e1ba4a85c3aedf73ef63ae05338cc71ccacad47a310970afb77cd9 webpy-0.62.tar.gz
-"
diff --git a/testing/py3-webrtcvad/APKBUILD b/testing/py3-webrtcvad/APKBUILD
new file mode 100644
index 00000000000..11e62b019e4
--- /dev/null
+++ b/testing/py3-webrtcvad/APKBUILD
@@ -0,0 +1,45 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-webrtcvad
+pkgver=2.0.10
+pkgrel=0
+pkgdesc="Python interface to the Google WebRTC Voice Activity Detector (VAD)"
+url="https://github.com/wiseman/py-webrtcvad"
+# 32-bit arches are not supported
+# s390x, ppc64le and riscv64 are not supported
+arch="all !x86 !armhf !armv7 !s390x !ppc64le !riscv64"
+license="MIT AND BSD-3-Clause"
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ python3-dev
+ "
+checkdepends="
+ py3-memory-profiler
+ pytest
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/wiseman/py-webrtcvad/archive/refs/tags/$pkgver.tar.gz"
+builddir="$srcdir/py-webrtcvad-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+ce414e39c3128e22495e8e21e46d09485952168ca763937cebb654dab87ffcfecea8198c74c009a47d8caed2a8ebc22572036fda4be36597d82e6e7057f80ae2 py3-webrtcvad-2.0.10.tar.gz
+"
diff --git a/testing/py3-webvtt/APKBUILD b/testing/py3-webvtt/APKBUILD
new file mode 100644
index 00000000000..782faca2ce2
--- /dev/null
+++ b/testing/py3-webvtt/APKBUILD
@@ -0,0 +1,43 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=py3-webvtt
+pkgver=0.4.6
+pkgrel=1
+pkgdesc="WebVTT reader, writer and segmenter"
+url="https://github.com/glut23/webvtt-py"
+arch="noarch"
+license="MIT"
+depends="
+ py3-docopt
+ python3
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/glut23/webvtt-py/archive/refs/tags/$pkgver.tar.gz"
+builddir="$srcdir/webvtt-py-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+aca4420ab4816a1a2568e8b41f306eff4df0fd1bea7929655f02ffd393ed5a5edde27d708c4189bc4401d59b2482fb7ec25fc19b8aa2ee1dcf12233c78a1d282 py3-webvtt-0.4.6.tar.gz
+"
diff --git a/testing/py3-wg-netns/APKBUILD b/testing/py3-wg-netns/APKBUILD
new file mode 100644
index 00000000000..5768237ad2f
--- /dev/null
+++ b/testing/py3-wg-netns/APKBUILD
@@ -0,0 +1,31 @@
+# Contributor: Fabricio Silva <hi@fabricio.dev>
+# Maintainer: Fabricio Silva <hi@fabricio.dev>
+pkgname=py3-wg-netns
+_pkgname=wg-netns
+pkgver=2.3.1
+pkgrel=1
+pkgdesc="A Python script that implements the steps described at wireguard.com/netns"
+url="https://github.com/dadevel/wg-netns"
+arch="noarch"
+license="MIT"
+depends="python3"
+makedepends="py3-poetry-core py3-gpep517 py3-installer"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/dadevel/wg-netns/archive/v$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+options="!check" # no tests
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+30ea08d2144e1d49d7fb8e10d6529717116364c9cf1628e67edaddb8e7595cfdb3a2d2ba03c87725e9e3b1fefaffe1956db3a047c3e91f5a49461ea3843f1753 py3-wg-netns-2.3.1.tar.gz
+"
diff --git a/testing/py3-whois/APKBUILD b/testing/py3-whois/APKBUILD
deleted file mode 100644
index 86b639200f4..00000000000
--- a/testing/py3-whois/APKBUILD
+++ /dev/null
@@ -1,29 +0,0 @@
-# Contributor: Kevin Daudt <kdaudt@alpinelinux.org>
-# Maintainer: Kevin Daudt <kdaudt@alpinelinux.org>
-pkgname=py3-whois
-pkgver=0.9.14
-pkgrel=0
-pkgdesc="Python module/library for retrieving WHOIS information of domains"
-url="https://github.com/DannyCork/python-whois"
-arch="noarch"
-license="WTFPL"
-depends="python3 whois"
-makedepends="py3-setuptools"
-source="$pkgname-$pkgver.tar.gz::https://github.com/DannyCork/python-whois/archive/refs/tags/$pkgver.tar.gz"
-builddir="$srcdir/python-whois-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- :
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-db80dcc9b989753e58a3dc1771f6921099435f827bebbe086476d5926d35f06e00e0924623cb6971ef8dccc1f9f8718660b62dfe7b6d154a6ef4ba338c090b04 py3-whois-0.9.14.tar.gz
-"
diff --git a/testing/py3-wifi/APKBUILD b/testing/py3-wifi/APKBUILD
index 93e25056b61..163f65a0d7a 100644
--- a/testing/py3-wifi/APKBUILD
+++ b/testing/py3-wifi/APKBUILD
@@ -3,13 +3,14 @@
pkgname=py3-wifi
_pkgname=wifi
pkgver=0.3.8
-pkgrel=3
+pkgrel=6
pkgdesc="Command line tool and library wrappers for network interfaces"
options="!check" # Tests only on GitHub tarball that are on 0.3.5
url="https://github.com/rockymeza/wifi"
arch="noarch"
license="BSD-3-Clause"
depends="python3 py3-pbkdf2 py3-setuptools wireless-tools"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz
fix-iwlist-path.patch
"
@@ -23,7 +24,7 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
# Avoid conflict with tlp
mv "$pkgdir"/usr/bin/wifi "$pkgdir"/usr/bin/pywifi
diff --git a/testing/py3-winacl/APKBUILD b/testing/py3-winacl/APKBUILD
new file mode 100644
index 00000000000..5b826f472cd
--- /dev/null
+++ b/testing/py3-winacl/APKBUILD
@@ -0,0 +1,37 @@
+# Contributor: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
+# Maintainer: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
+pkgname=py3-winacl
+_pyname=winacl
+pkgver=0.1.8
+pkgrel=1
+pkgdesc="ACL/ACE/Security Descriptor manipulation library in pure Python"
+url="https://github.com/skelsec/winacl"
+arch="noarch"
+license="MIT"
+depends="
+ py3-cryptography
+ python3
+ "
+makedepends="
+ py3-gpep517
+ py3-wheel
+ py3-setuptools
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/skelsec/winacl/archive/refs/tags/$pkgver.tar.gz"
+builddir="$srcdir/$_pyname-$pkgver"
+options="!check" # no tests provided
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" .dist/*.whl
+}
+
+sha512sums="
+fd28579e1a524c0bdea28e5a3f12722513f9c0aa413e31dc4e54238c15f778fa769ab1e8992b028d265da6dadd512b7e56aa524d14d8a326b7927a4cf52786a1 py3-winacl-0.1.8.tar.gz
+"
diff --git a/testing/py3-wsgiprox/APKBUILD b/testing/py3-wsgiprox/APKBUILD
new file mode 100644
index 00000000000..1caed0f2461
--- /dev/null
+++ b/testing/py3-wsgiprox/APKBUILD
@@ -0,0 +1,49 @@
+# Contributor: Oleg Titov <oleg.titov@gmail.com>
+# Maintainer: Oleg Titov <oleg.titov@gmail.com>
+pkgname=py3-wsgiprox
+pkgver=1.5.2
+pkgrel=0
+pkgdesc="Python WSGI Middleware for adding HTTP/S proxy support to any WSGI Application"
+url="https://github.com/webrecorder/wsgiprox"
+arch="noarch"
+license="Apache-2.0"
+depends="py3-certauth py3-gevent-websocket py3-six"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+checkdepends="
+ py3-gevent
+ py3-mock
+ py3-pytest
+ py3-pytest-cov
+ py3-requests
+ py3-waitress
+ py3-websocket-client
+ "
+subpackages="$pkgname-pyc"
+
+source="py3-wsgiprox-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/w/wsgiprox/wsgiprox-$pkgver.tar.gz"
+builddir="$srcdir/wsgiprox-$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
+ # tests are known to fail for https,
+ # https://github.com/webrecorder/wsgiprox/issues/6
+ .testenv/bin/python3 -m pytest \
+ --doctest-modules ./wsgiprox --cov wsgiprox -v test/ \
+ -k "not https and not test_chunked_force_http10_buffer and not test_error_proxy_unsupported"
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+d07b97c7ce755b1f22cf250e553036b7196f7205ae2ba52655f5a3b0c6f210fec20d30ca2ff2576c752bf9468aa2fbbeda9db1843d69a85989e881c6f1ada777 py3-wsgiprox-1.5.2.tar.gz
+"
diff --git a/testing/py3-wstools/APKBUILD b/testing/py3-wstools/APKBUILD
index 5c15b141e22..02c5d66d479 100644
--- a/testing/py3-wstools/APKBUILD
+++ b/testing/py3-wstools/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Noel Kuntze <noel.kuntze@thermi.consulting>
pkgname=py3-wstools
pkgver=0.4.10
-pkgrel=2
+pkgrel=6
url="https://github.com/pycontribs/wstools"
pkgdesc="WSDL parsing services package for Web Services for Python"
arch="noarch"
@@ -10,17 +10,15 @@ license="BSD-3-Clause AND BSD-3-Clause-LBNL AND ZPL-2.0"
depends="py3-six"
makedepends="py3-pbr py3-setuptools py3-pytest-runner"
checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/pycontribs/wstools/archive/$pkgver.tar.gz
python3.10-support.patch
+ python3.12-support.patch
"
builddir="$srcdir/wstools-$pkgver"
-prepare() {
- default_prepare
- export PBR_VERSION=$pkgver
-}
-
build() {
+ export PBR_VERSION=$pkgver
python3 setup.py build
}
@@ -29,10 +27,11 @@ check() {
}
package() {
- python3 setup.py install --root="$pkgdir" --optimize=1
+ python3 setup.py install --root="$pkgdir"
}
sha512sums="
1acd8e62d71c7d330f1e953a0da1956291c5dfb25ff9b8b8799c83feaa4230e384955735b131bab7b430b92ae6c18498927d416d2d1e11fb5c5dad93417c671a py3-wstools-0.4.10.tar.gz
9c19ae50724249dacb91206301417238c04df3afd841fe5b3ef2280dfd57ce635e01690e6d28c88798aebc6b7b2bea7a83eeb1f45eeb07bb94ddcd00d3c6ed94 python3.10-support.patch
+64e25d87337d27ef36d9d97702001f2fb87e0215b93b8a03653dbed2331b10b44963eeddbe508813d9fbd0ba1727b68a0fe3d181855d548014df4f8f5cbe53c2 python3.12-support.patch
"
diff --git a/testing/py3-wstools/python3.12-support.patch b/testing/py3-wstools/python3.12-support.patch
new file mode 100644
index 00000000000..231b66a6530
--- /dev/null
+++ b/testing/py3-wstools/python3.12-support.patch
@@ -0,0 +1,22 @@
+diff --git a/tests/test_wsdl.py b/tests/test_wsdl.py
+index aeeddf7..8cfa7fb 100755
+--- a/tests/test_wsdl.py
++++ b/tests/test_wsdl.py
+@@ -70,7 +70,7 @@ class WSDLToolsTestCase(unittest.TestCase):
+ for node in DOM.getElements(definition, tag_name, nspname):
+ name = DOM.getAttr(node, key)
+ comp = component[name] # noqa F841
+- self.failUnlessEqual(eval('comp.%s' % key), name)
++ self.assertEqual(eval('comp.%s' % key), name)
+
+ def checkXSDCollection(self, tag_name, component, node, key='name'):
+ for cnode in DOM.getElements(node, tag_name):
+@@ -126,7 +126,7 @@ class WSDLToolsTestCase(unittest.TestCase):
+ try:
+ for key in self.wsdl.types.keys():
+ schema = self.wsdl.types[key]
+- self.failUnlessEqual(key, schema.getTargetNamespace())
++ self.assertEqual(key, schema.getTargetNamespace())
+
+ definition = self.wsdl.document.documentElement
+ version = DOM.WSDLUriToVersion(definition.namespaceURI)
diff --git a/testing/py3-wtf-peewee/APKBUILD b/testing/py3-wtf-peewee/APKBUILD
index f6d1db7956b..8f423904dbf 100644
--- a/testing/py3-wtf-peewee/APKBUILD
+++ b/testing/py3-wtf-peewee/APKBUILD
@@ -2,8 +2,8 @@
# Maintainer:
pkgname=py3-wtf-peewee
_pkgname=wtf-peewee
-pkgver=3.0.4
-pkgrel=0
+pkgver=3.0.5
+pkgrel=1
pkgdesc="WTForms integration for peewee"
url="https://github.com/coleifer/wtf-peewee"
arch="noarch"
@@ -11,6 +11,7 @@ license="MIT"
depends="py3-peewee py3-wtforms py3-markupsafe"
makedepends="py3-setuptools"
options="!check" # broken tests
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
@@ -24,9 +25,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
-bb62ad40b44f674892c5df0e3b4d8fb3be8ee11e76b9c2661cf9938a9208e2ce276f723011b066b75c15de1de3e7b73b65408881a69835686d8e6f42519d4975 wtf-peewee-3.0.4.tar.gz
+e5b0d4836a1b5aa99f1940ef0fde549f4841f3c4329f6a7d82ceb6f8ede9226d3e35cda592775a5b5fe7590660367a45df0ffb7803b63272eface5fb3f9d716f wtf-peewee-3.0.5.tar.gz
"
diff --git a/testing/py3-wxpython/APKBUILD b/testing/py3-wxpython/APKBUILD
deleted file mode 100644
index 98194a364be..00000000000
--- a/testing/py3-wxpython/APKBUILD
+++ /dev/null
@@ -1,41 +0,0 @@
-# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
-# Contributor: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
-_pkgname=wxPython
-pkgname=py3-wxpython
-pkgver=4.0.7
-pkgrel=3
-pkgdesc="Cross-platform GUI toolkit for the Python language"
-url="https://wxpython.org/"
-arch="all"
-license="custom"
-depends="py3-six py3-pathlib2"
-makedepends="py3-setuptools wxgtk3-dev python3-dev"
-checkdepends="py3-pytest py3-pytest-xdist xvfb-run"
-source="https://files.pythonhosted.org/packages/source/w/wxPython/wxPython-$pkgver.tar.gz"
-builddir="$srcdir"/$_pkgname-$pkgver
-# Not all unit tests are passing. Some due to missing features of xvfb where the
-# tests are running in (GL, display settings). Some are checking features that
-# have not been provided in this package. Disabling failing unit tests to track
-# regressions would be nice, but I do not have the time for that now
-options="!check"
-
-prepare() {
- default_prepare
- sed -i "s|WX_CONFIG = 'wx-config'|WX_CONFIG = 'wx-config-gtk3'|" build.py
-}
-
-build() {
- python3 build.py build --use_syswx --release
-}
-
-check() {
- xvfb-run python3 build.py test
-}
-
-package() {
- python3 build.py install --destdir="$pkgdir"
- install -Dm 644 LICENSE.txt "$pkgdir"/usr/share/licenses/$pkgname/LICENSE.txt
- find "$pkgdir"/usr/lib -type f -exec chmod 644 {} \;
-}
-
-sha512sums="22d74a1285de432dd251ed6343b6138411a70742a7026e1ab002e08b84f111123382625bd64055412687d9ba7b579681d9894a58705455eb6a2b5e3c9d9985c0 wxPython-4.0.7.tar.gz"
diff --git a/testing/py3-x-wr-timezone/APKBUILD b/testing/py3-x-wr-timezone/APKBUILD
new file mode 100644
index 00000000000..f3204c440c6
--- /dev/null
+++ b/testing/py3-x-wr-timezone/APKBUILD
@@ -0,0 +1,39 @@
+# Contributor: Galen Abell <galen@galenabell.com>
+# Maintainer: Galen Abell <galen@galenabell.com>
+pkgname=py3-x-wr-timezone
+_pyname=x-wr-timezone
+pkgver=0.0.7
+pkgrel=1
+pkgdesc="Handling of non-standard X-WR-TIMEZONE icalendar property in Python and Command Line"
+url="https://github.com/niccokunzmann/x-wr-timezone"
+arch="noarch"
+license="LGPL-3.0-or-later"
+depends="python3 py3-icalendar py3-tz"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="$_pyname-$pkgver.tar.gz::https://github.com/niccokunzmann/x-wr-timezone/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/$_pyname-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ # Disable command line test since we aren't installed yet.
+ # Disable unnecessary test that adds another dependency.
+ PYTHONPATH=. pytest \
+ --ignore test/test_command_line.py \
+ --ignore test/test_readme.py
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+6d37de592741a8786855a1f6c8b61165b3267869dcd86e0b9fe56de31f326ee2f7206ab35c45c21713d4cc808d1b14934d6b5b9daac90791d13b0363af5b5cbf x-wr-timezone-0.0.7.tar.gz
+"
diff --git a/testing/py3-xapp/APKBUILD b/testing/py3-xapp/APKBUILD
new file mode 100644
index 00000000000..bfaa7d92711
--- /dev/null
+++ b/testing/py3-xapp/APKBUILD
@@ -0,0 +1,28 @@
+# Contributor: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
+# Maintainer: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
+pkgname=py3-xapp
+pkgver=2.4.1
+pkgrel=1
+pkgdesc="Python3 Xapp Library"
+url="https://github.com/linuxmint/python3-xapp"
+arch="noarch"
+license="GPL-2.0-or-later"
+depends="xapp"
+makedepends="meson"
+source="$pkgname-$pkgver.tar.gz::https://github.com/linuxmint/python3-xapp/archive/refs/tags/$pkgver.tar.gz"
+builddir="$srcdir/python3-xapp-$pkgver/"
+options="!check" # doesn't have tests
+
+build() {
+ abuild-meson \
+ . output
+ meson compile -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+sha512sums="
+97045061aa5965adcfe7301774dbd35a226fa9b846e31a7c097229cc417ff4008e518ebd5b600d4ce6a46daa39d51de70d391b6b0a7c78490419d3a96daca6a9 py3-xapp-2.4.1.tar.gz
+"
diff --git a/testing/py3-xlwt/APKBUILD b/testing/py3-xlwt/APKBUILD
index cbf083a58a4..576aa4af24f 100644
--- a/testing/py3-xlwt/APKBUILD
+++ b/testing/py3-xlwt/APKBUILD
@@ -3,24 +3,28 @@
pkgname=py3-xlwt
_pkgname=xlwt
pkgver=1.3.0
-pkgrel=5
+pkgrel=9
pkgdesc="A library to create spreadsheet files"
url="https://pypi.org/project/xlwt"
arch="noarch"
license="BSD-3-Clause BSD-4-Clause LGPL-2.1-or-later"
-replaces="py-xlwt" # for backwards compatibility
+replaces="py-xlwt" # for backwards compatibility
provides="py-xlwt=$pkgver-r$pkgrel" # for backwards compatibility
depends="py3-six"
-makedepends="py3-setuptools"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
sha512sums="e09c515bda7edadb9624b842796a537316c1e2e06f3e74aca5440a5797dbc259036539fd64ea61648a30894f4091d3be829411d36e6170894980728c798c5963 xlwt-1.3.0.tar.gz"
diff --git a/testing/py3-xmldiff/APKBUILD b/testing/py3-xmldiff/APKBUILD
deleted file mode 100644
index 3cde147c022..00000000000
--- a/testing/py3-xmldiff/APKBUILD
+++ /dev/null
@@ -1,28 +0,0 @@
-# Contributor: Sascha Brawer <sascha@brawer.ch>
-# Maintainer: Sascha Brawer <sascha@brawer.ch>
-pkgname=py3-xmldiff
-_pyname=xmldiff
-pkgver=2.4
-pkgrel=2
-pkgdesc="Creates diffs of XML files"
-url="https://github.com/Shoobx/xmldiff"
-arch="noarch"
-license="MIT"
-depends="python3 py3-lxml py3-six"
-makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/x/$_pyname/$_pyname-$pkgver.tar.gz"
-builddir="$srcdir/$_pyname-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 setup.py check
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="cc96c0d46d251ce1cf664c86f8fc0cc8fef67de6d0472415ae755e32cb86f21495dd144b5ecebba11820297a3f3cae8067c8d3b25b3107a8134b6ea641f2fc07 xmldiff-2.4.tar.gz"
diff --git a/testing/py3-xsdata/APKBUILD b/testing/py3-xsdata/APKBUILD
new file mode 100644
index 00000000000..8122f767ffc
--- /dev/null
+++ b/testing/py3-xsdata/APKBUILD
@@ -0,0 +1,55 @@
+# Contributor: Guy Godfroy <guy.godfroy@gugod.fr>
+# Maintainer: Guy Godfroy <guy.godfroy@gugod.fr>
+pkgname=py3-xsdata
+pkgver=24.4
+pkgrel=1
+pkgdesc="Naive XML & JSON Bindings for python"
+url="https://github.com/tefra/xsdata"
+arch="noarch"
+license="MIT"
+depends="
+ py3-click
+ py3-click-default-group
+ py3-docformatter
+ py3-jinja2
+ py3-toposort
+ ruff
+ "
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="
+ py3-lxml
+ py3-pytest-benchmark
+ py3-pytest-forked
+ py3-requests
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/tefra/xsdata/archive/refs/tags/v$pkgver.tar.gz
+ typing.patch
+ "
+builddir="$srcdir/xsdata-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest --forked
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+6b346c40855662171747e1759bbe58880c668a3ee134eaef1dbe9b57c939a3813da10e5ccf68ec6923b097a1e518bcc7f19dfde27c79f7bc73530ccecdfee52e py3-xsdata-24.4.tar.gz
+3140a89f223a57cafb3c8e331e937188c22abceee1c3492da08e59f7b9928f8fef74a7fa6c348766c41cfe852057beb68639c3c04af09c717569da00f0fb6ea8 typing.patch
+"
diff --git a/testing/py3-xsdata/typing.patch b/testing/py3-xsdata/typing.patch
new file mode 100644
index 00000000000..a6579eefb17
--- /dev/null
+++ b/testing/py3-xsdata/typing.patch
@@ -0,0 +1,26 @@
+diff --git a/xsdata/formats/dataclass/serializers/mixins.py b/xsdata/formats/dataclass/serializers/mixins.py
+index 4ab8509..31f4643 100644
+--- a/xsdata/formats/dataclass/serializers/mixins.py
++++ b/xsdata/formats/dataclass/serializers/mixins.py
+@@ -14,7 +14,7 @@ from typing import (
+ from xml.etree.ElementTree import QName
+ from xml.sax.handler import ContentHandler
+
+-from typing_extensions import TypeAlias
++from typing import TypeAlias
+
+ from xsdata.exceptions import XmlWriterError
+ from xsdata.formats.converter import converter
+diff --git a/xsdata/formats/dataclass/typing.py b/xsdata/formats/dataclass/typing.py
+index a375346..defaf1b 100644
+--- a/xsdata/formats/dataclass/typing.py
++++ b/xsdata/formats/dataclass/typing.py
+@@ -1,7 +1,7 @@
+ import sys
+ from typing import Any, Iterator, Tuple, Type, TypeVar, Union
+
+-from typing_extensions import get_args, get_origin
++from typing import get_args, get_origin
+
+ NONE_TYPE = type(None)
+
diff --git a/testing/py3-yapsy/APKBUILD b/testing/py3-yapsy/APKBUILD
index 2aa2744b2a1..5b7987e6023 100644
--- a/testing/py3-yapsy/APKBUILD
+++ b/testing/py3-yapsy/APKBUILD
@@ -3,29 +3,41 @@
pkgname=py3-yapsy
_pkgname=Yapsy
pkgver=1.12.2
-pkgrel=3
+pkgrel=7
pkgdesc="DIY Python plugin management toolkit"
url="https://yapsy.sourceforge.net"
arch="noarch"
license="BSD-2-Clause"
depends="python3"
-makedepends="py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz
+ deprecated.patch
+ "
builddir="$srcdir"/$_pkgname-$pkgver
replaces="py-yapsy" # Backwards compatibility
provides="py-yapsy=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- python3 setup.py test
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ gpep517 install-wheel --destdir .testenv --prefix '' .dist/*.whl
+ .testenv/bin/python3 -m pytest
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
}
-sha512sums="3fdb4de1a6d8f836e22d82354492b99ec9883443c389393d25ea40a08bb0b6ae03db9c947af55237b67764facd4d55a09a36cdba107c8d9202f3700fd55c31fa Yapsy-1.12.2.tar.gz"
+sha512sums="
+3fdb4de1a6d8f836e22d82354492b99ec9883443c389393d25ea40a08bb0b6ae03db9c947af55237b67764facd4d55a09a36cdba107c8d9202f3700fd55c31fa Yapsy-1.12.2.tar.gz
+f51c83f61437205ec19590a5b7fbd5479cbfee7a1b58402855b79edf9b9dd88fb25d90e65fd01fc8e0b6d467dc3c239abdf0a1d7fffa0b8fa16db145cb7f3c70 deprecated.patch
+"
diff --git a/testing/py3-yapsy/deprecated.patch b/testing/py3-yapsy/deprecated.patch
new file mode 100644
index 00000000000..02b058fb221
--- /dev/null
+++ b/testing/py3-yapsy/deprecated.patch
@@ -0,0 +1,96 @@
+Patch-Source: https://github.com/tibonihoo/yapsy/commit/29286320673f9e853559cf20aeb3456e541afbd4
+From 29286320673f9e853559cf20aeb3456e541afbd4 Mon Sep 17 00:00:00 2001
+From: Ameya Vikram Singh <ameya.v.singh@gmail.com>
+Date: Mon, 6 Feb 2023 13:31:23 +0530
+Subject: [PATCH] Remove Deprecated API's
+
+* Replaced packaging.version instead of distutils.version
+* Replaced imp module to importlib
+
+**Note:** Probably Deprecates Python 2.7 supports, and maybe some initial versions of Python 3.x.
+
+Signed-off-by: Ameya Vikram Singh <ameya.v.singh@gmail.com>
+---
+ test/test_PluginInfo.py | 3 ++-
+ yapsy/PluginInfo.py | 6 +++---
+ yapsy/PluginManager.py | 17 ++++++++++-------
+ yapsy/VersionedPluginManager.py | 8 ++++----
+ 4 files changed, 19 insertions(+), 15 deletions(-)
+
+diff --git a/test/test_PluginInfo.py b/test/test_PluginInfo.py
+index 0863671..745226f 100644
+--- a/test/test_PluginInfo.py
++++ b/test/test_PluginInfo.py
+@@ -22,3 +22,3 @@ class PluginInfoTest(unittest.TestCase):
+ self.assertEqual(None,pi.error)
+- self.assertEqual("0.0",pi.version)
++ self.assertEqual("0.0",str(pi.version))
+ self.assertEqual("Unknown",pi.author)
+diff --git a/yapsy/PluginInfo.py b/yapsy/PluginInfo.py
+index 69d220e..700374e 100644
+--- a/yapsy/PluginInfo.py
++++ b/yapsy/PluginInfo.py
+@@ -14,3 +14,3 @@ API
+ from yapsy.compat import ConfigParser
+-from distutils.version import StrictVersion
++from packaging.version import Version
+
+@@ -107,3 +107,3 @@ class PluginInfo(object):
+ def __getVersion(self):
+- return StrictVersion(self.details.get("Documentation","Version"))
++ return Version(self.details.get("Documentation","Version"))
+
+@@ -116,3 +116,3 @@ class PluginInfo(object):
+ """
+- if isinstance(vstring,StrictVersion):
++ if isinstance(vstring,Version):
+ vstring = str(vstring)
+diff --git a/yapsy/PluginManager.py b/yapsy/PluginManager.py
+index 81a7c2b..b72de93 100644
+--- a/yapsy/PluginManager.py
++++ b/yapsy/PluginManager.py
+@@ -130,6 +130,3 @@ import sys
+ import os
+-try:
+- import importlib.abc.Loader as imp
+-except ImportError:
+- import imp
++import importlib
+
+@@ -579,7 +576,13 @@ class PluginManager(object):
+ # use imp to correctly load the plugin as a module
++ candidate_module = None
+ if os.path.isdir(candidate_filepath):
+- candidate_module = imp.load_module(plugin_module_name,None,candidate_filepath,("py","r",imp.PKG_DIRECTORY))
++ if (spec := importlib.util.spec_from_file_location(candidate_filepath.split('/')[-1], candidate_filepath + "/__init__.py")) is not None:
++ candidate_module = importlib.util.module_from_spec(spec)
++ sys.modules[plugin_module_name] = candidate_module
++ spec.loader.exec_module(candidate_module)
+ else:
+- with open(candidate_filepath+".py","r") as plugin_file:
+- candidate_module = imp.load_module(plugin_module_name,plugin_file,candidate_filepath+".py",("py","r",imp.PY_SOURCE))
++ if (spec := importlib.util.spec_from_file_location(candidate_filepath.split('/')[-1], candidate_filepath + ".py")) is not None:
++ candidate_module = importlib.util.module_from_spec(spec)
++ sys.modules[plugin_module_name] = candidate_module
++ spec.loader.exec_module(candidate_module)
+ return candidate_module
+diff --git a/yapsy/VersionedPluginManager.py b/yapsy/VersionedPluginManager.py
+index 83ad4fd..686a52a 100644
+--- a/yapsy/VersionedPluginManager.py
++++ b/yapsy/VersionedPluginManager.py
+@@ -14,3 +14,3 @@ API
+
+-from distutils.version import StrictVersion
++from packaging.version import Version
+
+@@ -29,7 +29,7 @@ class VersionedPluginInfo(PluginInfo):
+ PluginInfo.__init__(self, plugin_name, plugin_path)
+- # version number is now required to be a StrictVersion object
+- self.version = StrictVersion("0.0")
++ # version number is now required to be a Version object
++ self.version = Version("0.0")
+
+ def setVersion(self, vstring):
+- self.version = StrictVersion(vstring)
++ self.version = Version(vstring)
+
diff --git a/testing/py3-yara/APKBUILD b/testing/py3-yara/APKBUILD
index 7b49bfa6cef..d285d3a9944 100644
--- a/testing/py3-yara/APKBUILD
+++ b/testing/py3-yara/APKBUILD
@@ -2,11 +2,11 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=py3-yara
_pkgname="${pkgname/py3-/}-python"
-pkgver=4.2.0
+pkgver=4.5.0
pkgrel=1
pkgdesc="The Python interface for YARA"
url="https://virustotal.github.io/yara/"
-arch="all !armv7 !armhf" # missing yara
+arch="all"
license="Apache-2.0"
depends="python3"
makedepends="python3-dev yara-dev py3-setuptools"
@@ -24,10 +24,10 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
-ba08d709fc51679ec9fe36165e0864b79fc241f85c681bf59823fe7bb0e34e928cded050ff296147eb5bcb837485f39949aa93425a0eb9ca8b3730e60fac93f4 py3-yara-4.2.0.tar.gz
-d56d2c437f66b0d3c5bc92737f6b5c7bf5191e38fe4f72849145dbcbc2eb7d9cad10a2d07674c25aaa1e7f542b21e723c30722516e722db5c238840e4f6be07a use-system-yara.patch
+b4f091bff7fd3bcd63e7f9f0a765aac7bdb3f17a1bc4b163687ae9ca21048194d90cf2bf1165998edb9953b83e022939179c51de59862a456676f099de69778d py3-yara-4.5.0.tar.gz
+bd19ef0a225ca070d9939d7e2ce6ea5be585130b5e0c4df196cd17ad62aa2e481e61dc40c6bfba8de26fc8f91b720e8f512f657afaa0f96f2609d9f10cfbf0ec use-system-yara.patch
"
diff --git a/testing/py3-yara/use-system-yara.patch b/testing/py3-yara/use-system-yara.patch
index d7a0f8e7ced..a0858d6513b 100644
--- a/testing/py3-yara/use-system-yara.patch
+++ b/testing/py3-yara/use-system-yara.patch
@@ -1,9 +1,12 @@
---- a/setup.py.orig 2019-05-02 17:34:46.000000000 +0800
-+++ b/setup.py 2019-05-07 08:20:20.841022106 +0800
-@@ -325,5 +325,5 @@
+diff --git a/setup.py b/setup.py
+index 1289558..5fa5605 100644
+--- a/setup.py
++++ b/setup.py
+@@ -392,6 +392,6 @@ setup(
'update': UpdateCommand},
ext_modules=[Extension(
name='yara',
- include_dirs=['yara/libyara/include', 'yara/libyara/', '.'],
+ libraries = ['yara'],
+ define_macros=[('BUCKETS_128', 1), ('CHECKSUM_1B', 1)],
sources=['yara-python.c'])])
diff --git a/testing/py3-yg.lockfile/APKBUILD b/testing/py3-yg.lockfile/APKBUILD
deleted file mode 100644
index 50da7f6fa5e..00000000000
--- a/testing/py3-yg.lockfile/APKBUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-# Contributor: Duncan Bellamy <dunk@denkimushi.com>
-# Maintainer: Duncan Bellamy <dunk@denkimushi.com>
-pkgname=py3-yg.lockfile
-pkgver=2.3
-pkgrel=2
-pkgdesc="Lockfile object with timeouts and context manager"
-url="https://github.com/yougov/yg.lockfile"
-arch="noarch"
-license="MIT"
-depends="py3-jaraco.functools py3-tempora py3-zc.lockfile"
-makedepends="py3-setuptools"
-checkdepends="py3-pytest"
-source="https://files.pythonhosted.org/packages/source/y/yg.lockfile/yg.lockfile-$pkgver.tar.gz
- setuptools_scm.patch
- "
-builddir="$srcdir/yg.lockfile-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 -m pytest
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-0d28f48dd380f8919d592fad85d7aadf40802a23267c2c6751915b65b284c94acd64422454d04a0b45275b6c600b4e880b82a87cef2c38289c464e95eda121ff yg.lockfile-2.3.tar.gz
-93da566bf12f0902da490b5a96a39e12771e6d040abd5385ff9b61499788f470f6ce8d212c671666db04f831ee979cdcb4e0e1943946c5e123b3a6ab8686b185 setuptools_scm.patch
-"
diff --git a/testing/py3-yg.lockfile/setuptools_scm.patch b/testing/py3-yg.lockfile/setuptools_scm.patch
deleted file mode 100644
index ef87d7c78cf..00000000000
--- a/testing/py3-yg.lockfile/setuptools_scm.patch
+++ /dev/null
@@ -1,12 +0,0 @@
---- a/setup.py
-+++ b/setup.py
-@@ -49,9 +49,6 @@
- "contextlib2>=0.5",
- ],
- },
-- setup_requires=[
-- 'setuptools_scm>=1.15.0',
-- ],
- classifiers=[
- "Development Status :: 5 - Production/Stable",
- "Intended Audience :: Developers",
diff --git a/testing/py3-youtube-search/APKBUILD b/testing/py3-youtube-search/APKBUILD
new file mode 100644
index 00000000000..ff46a5d7e2b
--- /dev/null
+++ b/testing/py3-youtube-search/APKBUILD
@@ -0,0 +1,28 @@
+# Contributor: Dmitry Zakharchenko <dmitz@disroot.org>
+# Maintainer: Dmitry Zakharchenko <dmitz@disroot.org>
+pkgname=py3-youtube-search
+_pkgname=youtube-search-python
+pkgver=1.6.6
+pkgrel=3
+pkgdesc="Search for YouTube videos, channels & playlists"
+url="https://github.com/alexmercerind/youtube-search-python"
+arch="noarch !armhf !ppc64le" # limited by py3-httpx
+license="MIT"
+depends="py3-httpx"
+makedepends="py3-setuptools"
+options="!check" # no test suite
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/alexmercerind/youtube-search-python/archive/v$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ python3 setup.py build
+}
+
+package() {
+ python3 setup.py install --skip-build --root="$pkgdir"
+}
+
+sha512sums="
+075af3545d92c19819a1f46d27199a9c0733fc7a69806f6398dcfc2b391051618bd06d845658a4cfb94adf13c1adb5463971bf28b634873af79a59d3d8c6c1dc py3-youtube-search-1.6.6.tar.gz
+"
diff --git a/testing/py3-zfs-autobackup/APKBUILD b/testing/py3-zfs-autobackup/APKBUILD
new file mode 100644
index 00000000000..2acfa3d45d9
--- /dev/null
+++ b/testing/py3-zfs-autobackup/APKBUILD
@@ -0,0 +1,30 @@
+# Contributor: Edwin Eefting <edwin@datux.nl>
+# Maintainer: Julie Koubova <julie@koubova.net>
+pkgname=py3-zfs-autobackup
+pkgver=3.2.2
+pkgrel=1
+pkgdesc="ZFS autobackup is used to periodically backup ZFS filesystems to other locations."
+url="https://github.com/psy0rz/zfs_autobackup"
+arch="noarch"
+license="GPL-3.0-only"
+depends="py3-colorama"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+source="$pkgname-$pkgver.tar.gz::https://github.com/psy0rz/zfs_autobackup/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/zfs_autobackup-$pkgver"
+subpackages="$pkgname-pyc"
+options="!check" # tests need ZFS installed and root access to create RAM-disk zpools
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ "$builddir"/.dist/*.whl
+}
+
+sha512sums="
+48aaf51d89a649caeccb57cef75b4e09a325106ac6fdc63f85fe70b2961e6b42c64dfbbfc8f2ae1d1b4b0628747ed91969bed4b376d2f1f3d07fbea15ff5b3a2 py3-zfs-autobackup-3.2.2.tar.gz
+"
diff --git a/testing/py3-zimscraperlib/APKBUILD b/testing/py3-zimscraperlib/APKBUILD
new file mode 100644
index 00000000000..57ff81ea02d
--- /dev/null
+++ b/testing/py3-zimscraperlib/APKBUILD
@@ -0,0 +1,69 @@
+# Contributor: Oleg Titov <oleg.titov@gmail.com>
+# Maintainer: Oleg Titov <oleg.titov@gmail.com>
+pkgname=py3-zimscraperlib
+pkgver=3.2.0
+pkgrel=0
+pkgdesc="Collection of python code to re-use across python-based scrapers"
+url="https://github.com/openzim/python-scraperlib"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="
+ ffmpeg
+ gifsicle
+ py3-pillow
+ py3-six
+ wget
+ "
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+checkdepends="
+ py3-babel
+ py3-beautifulsoup4
+ py3-colorthief
+ py3-iso639
+ py3-libzim
+ py3-lxml
+ py3-magic
+ py3-optimize-images
+ py3-piexif
+ py3-pytest
+ py3-pytest-cov
+ py3-pytest-httpbin
+ py3-resizeimage
+ py3-requests
+ py3-wsgiprox
+ yt-dlp-core
+ "
+subpackages="$pkgname-pyc"
+source="py3-zimscraperlib-$pkgver.tar.gz::https://github.com/openzim/python-scraperlib/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/python-scraperlib-$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
+
+ # some tests may fail, so disable them
+ # https://github.com/openzim/python-scraperlib/issues/114
+ .testenv/bin/python3 -m pytest \
+ -k "not test_get_media_info[mp4-video.mp4-expected1]"` \
+ `" and not test_reencode_media[video.mkv-video.mp4-ffmpeg_args0-expected0]"` \
+ `" and not test_selocale_unsupported"` \
+ `" and not test_installed_script" \
+ --runslow --runinstalled \
+ --cov=zimscraperlib \
+ --cov-report=term --cov-report term-missing
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+4f15f6cb4aee8adb07ed9baa7b6dff055aa334e204a53d49c23828f2c1247ec195a10f30d4a7477e3d9510c785cf8fcb7aeed2ab7a4f39136d7da58de103c3d5 py3-zimscraperlib-3.2.0.tar.gz
+"
diff --git a/testing/py3-zipstream-ng/APKBUILD b/testing/py3-zipstream-ng/APKBUILD
new file mode 100644
index 00000000000..793debfc873
--- /dev/null
+++ b/testing/py3-zipstream-ng/APKBUILD
@@ -0,0 +1,40 @@
+# Contributor: lauren n. liberda <lauren@selfisekai.rocks>
+# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
+pkgname=py3-zipstream-ng
+pkgver=1.7.1
+pkgrel=1
+pkgdesc="A modern and easy to use streamable zip file generator"
+url="https://github.com/pR0Ps/zipstream-ng"
+arch="noarch"
+license="LGPL-3.0-only"
+depends="python3"
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ "
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="https://github.com/pR0Ps/zipstream-ng/archive/refs/tags/v$pkgver/zipstream-ng-$pkgver.tar.gz"
+builddir="$srcdir/zipstream-ng-$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+c775e0240880209984c3d3faba62c4ec43874f007397669358e308ca833abe5d8d2cf20b0157ffbdd06df476ed767c027a1dbc08c6677002f94e71eb9d934d96 zipstream-ng-1.7.1.tar.gz
+"
diff --git a/testing/py3-zope-configuration/APKBUILD b/testing/py3-zope-configuration/APKBUILD
index 356e4793ab0..b6bc723373d 100644
--- a/testing/py3-zope-configuration/APKBUILD
+++ b/testing/py3-zope-configuration/APKBUILD
@@ -2,32 +2,40 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-zope-configuration
_pkgname=zope.configuration
-pkgver=4.4.1
-pkgrel=0
+pkgver=5.0.1
+pkgrel=2
pkgdesc="Zope Configuration Markup Language"
-url="http://pypi.python.org/pypi/zope.configuration"
+url="https://pypi.org/project/zope.configuration"
arch="noarch"
license="ZPL-2.1"
-depends="python3 py3-zope-interface py3-setuptools py3-zope-schema py3-zope-i18nmessageid"
+depends="py3-zope-interface py3-setuptools py3-zope-schema py3-zope-i18nmessageid"
+makedepends="py3-gpep517 py3-wheel"
checkdepends="py3-zope-testrunner py3-zope-testing py3-manuel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
-replaces="py-zope-configuration" # Backwards compatibility
+replaces="py-zope-configuration" # Backwards compatibility
provides="py-zope-configuration=$pkgver-r$pkgrel" # Backwards compatibility
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- python3 setup.py test
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ gpep517 install-wheel --destdir .testenv --prefix '' .dist/*.whl
+ .testenv/bin/python3 -m zope.testrunner
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
+ rm -r "$pkgdir"/usr/lib/python*/site-packages/zope/configuration/tests
}
sha512sums="
-61e3e5cc6220c3ef86881d49c09b208d12491a5d7f5d82810ff1713f68ff1657dfb505b511e78e86b39d204c4ff8bc687695ad8b2ed816b457b52f913c70669b zope.configuration-4.4.1.tar.gz
+58fec7b330a4ee5f9bb71238fbcb8f07fdd7b6767cb2d8e054699ffcb915973b9dfead33e5515f40049f6aede233d31624d09d7f84d75b96318e63f8ab454147 zope.configuration-5.0.1.tar.gz
"
diff --git a/testing/py3-zope-exceptions/APKBUILD b/testing/py3-zope-exceptions/APKBUILD
deleted file mode 100644
index d444bf3e1a9..00000000000
--- a/testing/py3-zope-exceptions/APKBUILD
+++ /dev/null
@@ -1,26 +0,0 @@
-# Contributor: Leo <thinkabit.ukim@gmail.com>
-# Maintainer: Justin Berthault <justin.berthault@zaclys.net>
-pkgname=py3-zope-exceptions
-_pyname=zope.exceptions
-pkgver=4.4
-pkgrel=2
-pkgdesc="Zope Exceptions"
-# Cyclic dep zope.testrunner needs zope.exceptions to run, but zope.exceptions
-# needs zope.testrunner on its test dependencies
-options="!check"
-url="https://github.com/zopefoundation/zope.exceptions"
-arch="noarch"
-license="ZPL-2.1"
-depends="python3 py3-zope-interface py3-setuptools"
-source="https://files.pythonhosted.org/packages/source/${_pyname:0:1}/$_pyname/$_pyname-$pkgver.tar.gz"
-builddir="$srcdir/$_pyname-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="6ef175271ad1d62b450533e4c7d8f7380ffac519be5c48be084be297ad21d21fd8be380d9b5e221a8dac6a4c792bab14abc707331415c2df88208cac9c34013e zope.exceptions-4.4.tar.gz"
diff --git a/testing/py3-zope-i18nmessageid/APKBUILD b/testing/py3-zope-i18nmessageid/APKBUILD
index 276042a2c34..4fbd6652da5 100644
--- a/testing/py3-zope-i18nmessageid/APKBUILD
+++ b/testing/py3-zope-i18nmessageid/APKBUILD
@@ -2,15 +2,16 @@
# Maintainer:
pkgname=py3-zope-i18nmessageid
_pkgname=zope.i18nmessageid
-pkgver=5.0.1
-pkgrel=2
+pkgver=6.1.0
+pkgrel=1
pkgdesc="Message Identifiers for internationalization"
url="https://github.com/zopefoundation/zope.i18nmessageid"
arch="all"
license="ZPL-2.1"
-depends="py3-setuptools py3-six"
+depends="py3-setuptools"
makedepends="python3-dev"
checkdepends="py3-nose py3-coverage py3-zope-testrunner"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
@@ -19,11 +20,14 @@ build() {
}
check() {
- python3 setup.py test
+ # optimizations don't work(?)
+ nosetests -e "test_optimizations_available"
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="31af16581d59ce1b7d5d8fd86c715c56b84aee9a7a0756bb2b7ceac6db30903acc5fdff85d844c0250c0a112cb45ab03be2f56d3d4ca6165272ff76c09d40d8c zope.i18nmessageid-5.0.1.tar.gz"
+sha512sums="
+13ca8d6c145ac48217d0f4fae4ae7fa2129a8d37ceeea640dcedca8815587cc9507935f0cc070bf37307cc21269b1a9decd2d18ae1bc79fdb0128f59f7e4b43b zope.i18nmessageid-6.1.0.tar.gz
+"
diff --git a/testing/py3-zope-schema/APKBUILD b/testing/py3-zope-schema/APKBUILD
index 0ce4944497a..d96f6ea560d 100644
--- a/testing/py3-zope-schema/APKBUILD
+++ b/testing/py3-zope-schema/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer:
pkgname=py3-zope-schema
_pkgname=zope.schema
-pkgver=5.0.1
+pkgver=7.0.1
pkgrel=2
pkgdesc="zope.interface extension for defining data schemas"
options="!check" # Tests require 'zope.testing', 'zope.testruner' and 'zope.i18nmessageid'
@@ -10,6 +10,7 @@ url="https://github.com/zopefoundation/zope.schema"
arch="noarch"
license="ZPL-2.1"
depends="py3-setuptools py3-zope-interface py3-zope-event"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
@@ -18,8 +19,10 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
rm -rf "$pkgdir"/usr/lib/python3*/site-packages/zope/schema/tests
}
-sha512sums="f3fe1b2e881f4a39bdce07f37e22491880dfbc827041a90c6dd5b2384a6c4daabe6c965810372adb98f9a32fd3bd11717cf3d9762365ccc449483833b5095dae zope.schema-5.0.1.tar.gz"
+sha512sums="
+a8da9ac2e7239d15ed6cef83b4f500bca989c9ef2b7f1cd06ce532c260a8b8488b6fa42a6b2cfaeee505db87d3235f81815dc7eb80401c9e482141f8bf717e62 zope.schema-7.0.1.tar.gz
+"
diff --git a/testing/py3-zope-testrunner/APKBUILD b/testing/py3-zope-testrunner/APKBUILD
deleted file mode 100644
index 7266f2d6456..00000000000
--- a/testing/py3-zope-testrunner/APKBUILD
+++ /dev/null
@@ -1,27 +0,0 @@
-# Contributor: Leo <thinkabit.ukim@gmail.com>
-# Maintainer: Justin Berthault <justin.berthault@zaclys.net>
-pkgname=py3-zope-testrunner
-_pkgname=zope.testrunner
-pkgver=5.4.0
-pkgrel=0
-pkgdesc="Zope testrunner script"
-options="!check" # Fails to run
-url="https://github.com/zopefoundation/zope.testrunner"
-arch="noarch"
-license="ZPL-2.1"
-depends="python3 py3-setuptools py3-six py3-zope-exceptions py3-zope-interface"
-checkdepends="py3-zope-testing"
-source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgname-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-c8c6cbbd2cc352f52068ada3c23305cc270736aaa20c14f7c218bc40d6873cb8e8ecb4e2e1601b8833d32e91ac87e0067515458b96194cfc23b6d02cb71613f2 zope.testrunner-5.4.0.tar.gz
-"
diff --git a/testing/py3-zulip/APKBUILD b/testing/py3-zulip/APKBUILD
deleted file mode 100644
index f6185dca750..00000000000
--- a/testing/py3-zulip/APKBUILD
+++ /dev/null
@@ -1,40 +0,0 @@
-# Contributor: omni <omni+alpine@hack.org>
-# Maintainer: omni <omni+alpine@hack.org>
-pkgname=py3-zulip
-_pkgname=python-zulip-api
-pkgver=0.8.2
-pkgrel=0
-pkgdesc="Zulip API bindings"
-url="https://github.com/zulip/python-zulip-api/"
-arch="noarch"
-license="Apache-2.0"
-depends="py3-requests py3-distro py3-openssl py3-typing-extensions"
-makedepends="py3-setuptools"
-checkdepends="py3-pytest py3-pytest-runner"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/zulip/python-zulip-api/archive/$pkgver.tar.gz
- disable-matrix_bridge.patch"
-builddir="$srcdir/$_pkgname-$pkgver/zulip"
-
-prepare() {
- default_prepare
- rm -rf integrations/bridge_with_matrix # FIXME: when upstream use matrix-nio
-}
-
-build() {
- python3 setup.py build
-}
-
-check() {
- py.test-3
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-
- install -Dm0644 README.md -t "$pkgdir"/usr/share/doc/"$pkgname"
- install -Dm0644 ../LICENSE -t "$pkgdir"/usr/share/doc/"$pkgname"
-}
-
-sha512sums="9128a4171097217469e08e6f355575bac632a00a694d7ebfada5d45312367ccf750ba91f04315c54d0c1082e83f1baaba7dda0fcecb050fdff960ae083c65d81 py3-zulip-0.8.2.tar.gz
-9db34d936e8de3927104120aa5d254434582882680b9b4309e84ad7bc850fb5a4e0cfa1edd880ecd264dd9ecc5d75e066afc6d31b2ac3802501b8e150273bee6 disable-matrix_bridge.patch"
diff --git a/testing/py3-zulip/disable-matrix_bridge.patch b/testing/py3-zulip/disable-matrix_bridge.patch
deleted file mode 100644
index c4073d1b4d2..00000000000
--- a/testing/py3-zulip/disable-matrix_bridge.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-Disable this until upstream has migrated to matrix-nio
-https://github.com/zulip/python-zulip-api/issues/604
---- a/setup.py
-+++ b/setup.py
-@@ -59,7 +59,6 @@ package_info = dict(
- "console_scripts": [
- "zulip-send=zulip.send:main",
- "zulip-api-examples=zulip.api_examples:main",
-- "zulip-matrix-bridge=integrations.bridge_with_matrix.matrix_bridge:main",
- "zulip-api=zulip.cli:cli",
- ],
- },
-@@ -69,7 +68,6 @@ package_info = dict(
- setuptools_info = dict(
- install_requires=[
- "requests[security]>=0.12.1",
-- "matrix_client",
- "distro",
- "click",
- ],
diff --git a/testing/pympress/APKBUILD b/testing/pympress/APKBUILD
new file mode 100644
index 00000000000..4628560fefd
--- /dev/null
+++ b/testing/pympress/APKBUILD
@@ -0,0 +1,55 @@
+# Maintainer: Cowington Post <cowingtonpost@gmail.com>
+pkgname=pympress
+pkgver=1.8.5
+pkgrel=1
+pkgdesc="PDF reader designed for dual-screen presentations"
+url="https://github.com/Cimbali/pympress"
+arch="noarch"
+license="GPL-2.0-or-later"
+depends="
+ gdk-pixbuf
+ gobject-introspection
+ gstreamer
+ gtk+3.0
+ poppler-glib
+ py3-cairo
+ py3-gobject3
+ py3-watchdog
+ "
+makedepends="
+ py3-babel
+ py3-gpep517
+ py3-myst-parser
+ py3-setuptools
+ py3-sphinx
+ py3-wheel
+ "
+subpackages="$pkgname-pyc $pkgname-lang $pkgname-doc"
+source="https://github.com/Cimbali/pympress/archive/refs/tags/v$pkgver/pympress-$pkgver.tar.gz"
+options="bigdocs !check" # no upstream tests
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+
+ python3 -m sphinx -bhtml docs/ build/sphinx/html/
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+
+ mkdir -p "$pkgdir"/usr/share/doc/"$pkgname"
+ cp -a build/sphinx/html/* "$pkgdir"/usr/share/doc/"$pkgname"/
+}
+
+lang() {
+ pkgdesc="Translations for $pkgname"
+ install_if="lang $pkgname=$pkgver-r$pkgrel"
+ amove usr/lib/python3.*/site-packages/pympress/share/locale
+}
+
+sha512sums="
+e110d99935a43f7b4b36581993247c8f44cb214759a98017f8d49f9aadcb998528787154a0c6e53d39c1da650df8a314513af06482b1dc145ea020dd278f4aea pympress-1.8.5.tar.gz
+"
diff --git a/testing/pypy-bootstrap/APKBUILD b/testing/pypy-bootstrap/APKBUILD
new file mode 100644
index 00000000000..103cfb5e43b
--- /dev/null
+++ b/testing/pypy-bootstrap/APKBUILD
@@ -0,0 +1,121 @@
+# Maintainer: Thomas Liske <thomas@fiasko-nw.net>
+pkgname=pypy-bootstrap
+pkgver=7.3.12
+_py2ver=2.7.18
+_pycpver=2.21
+pkgrel=0
+pkgdesc="Fast, compliant alternative implementation of Python"
+url="https://www.pypy.org/"
+arch="x86 x86_64 s390x aarch64 ppc64le"
+license="MIT"
+makedepends="
+ bzip2-dev
+ expat-dev
+ gdbm-dev
+ libc-dev
+ libffi-dev
+ linux-headers
+ ncurses-dev
+ openssl-dev>3
+ perl
+ pkgconf
+ readline-dev
+ rsync
+ sqlite-dev
+ tk-dev
+ xz-dev
+ zlib-dev
+ "
+options="!check"
+# libpypy-c.so on x86 has textrels; no checks for bootstrap
+[ "$CARCH" = "x86" ] && options="$options textrels"
+source="https://downloads.python.org/pypy/pypy2.7-v$pkgver-src.tar.bz2
+ https://www.python.org/ftp/python/$_py2ver/Python-$_py2ver.tar.xz
+ https://files.pythonhosted.org/packages/source/p/pycparser/pycparser-$_pycpver.tar.gz
+ py2_musl-find_library.py2patch
+ py2_unchecked-ioctl.py2patch
+ py2_cve-2021-3177.py2patch
+ "
+
+# Provide pypy-bootstrap for testing/pypy.
+provider_priority=1 # lowest
+
+prepare() {
+ default_prepare
+
+ cd Python-$_py2ver
+
+ # apply Python2 patches
+ for i in ../py2_*.py2patch; do
+ patch -p1 <$i
+ done
+
+ # Make sure Python2 uses system libs
+ rm -r Modules/expat Modules/_ctypes/libffi* Modules/zlib
+}
+
+build() {
+ ### Python2 ###
+ export OPT="$CFLAGS -DTHREAD_STACK_SIZE=0x100000"
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=$srcdir/usr \
+ --enable-ipv6 \
+ --enable-shared \
+ --enable-unicode=ucs4 \
+ --with-system-expat \
+ --with-system-ffi \
+ --with-system-zlib \
+ --with-threads
+ make LD_RUN_PATH="$srcdir/usr/lib"
+ make -j1 install
+
+ # pycparser
+ cd $srcdir/pycparser-$_pycpver
+ ../usr/bin/python2 setup.py install
+
+ ### PyPy ###
+ cd $srcdir/pypy2.7-v$pkgver-src/pypy/goal
+
+ if [ "$JOBS" -gt 16 ]; then
+ export JOBS=16
+ fi
+
+ # translate with JIT
+ ../../../usr/bin/python2 ../../rpython/bin/rpython \
+ --opt=jit \
+ --shared \
+ --make-jobs $JOBS \
+ targetpypystandalone
+
+ # compile binary modules
+ PYTHONPATH=../.. ./pypy-c ../../lib_pypy/pypy_tools/build_cffi_imports.py
+}
+
+package() {
+ cd src/pypy2.7-v$pkgver-src
+
+ install -Dm755 pypy/goal/pypy-c "$pkgdir"/usr/lib/pypy/bin/pypy-c
+ install -Dm755 pypy/goal/libpypy-c.so "$pkgdir"/usr/lib/pypy/bin/libpypy-c.so
+
+ rsync -r --exclude='__pycache__' --exclude='*.c' --exclude '*.o' lib_pypy/ "$pkgdir"/usr/lib/pypy/lib_pypy/
+
+ rsync -r --exclude='__pycache__' --exclude='test' --exclude='tests' lib-python/ "$pkgdir"/usr/lib/pypy/lib-python/
+
+ rsync -r --include='*.h' -f 'hide,! */' include/ "$pkgdir"/usr/lib/pypy/include/
+
+ # Install symlinks
+ mkdir -p "$pkgdir"/usr/bin "$pkgdir"/usr/lib
+ ln -s ../lib/pypy/bin/pypy-c "$pkgdir"/usr/bin/pypy
+ ln -s pypy/bin/libpypy-c.so "$pkgdir"/usr/lib/libpypy-c.so
+}
+
+sha512sums="
+35ec35376f1e7c1a5dea9dc5bce6819a94c2df2645806c83185487587470b47ab529c25ecb8ca200505319f40789859a2919c61902b693421e2001313b46e5f4 pypy2.7-v7.3.12-src.tar.bz2
+a7bb62b51f48ff0b6df0b18f5b0312a523e3110f49c3237936bfe56ed0e26838c0274ff5401bda6fc21bf24337477ccac49e8026c5d651e4b4cafb5eb5086f6c Python-2.7.18.tar.xz
+e61fbdde484d1cf74d4b27bdde40cf2da4b7028ca8ecd37c83d77473dab707d457321aecaf97da3b114c1d58a4eb200290b76f9c958044b57e5fed949895b5f0 pycparser-2.21.tar.gz
+ab8eaa2858d5109049b1f9f553198d40e0ef8d78211ad6455f7b491af525bffb16738fed60fc84e960c4889568d25753b9e4a1494834fea48291b33f07000ec2 py2_musl-find_library.py2patch
+5a8e013a4132d71c4360771f130d27b37275ae59330cf9a75378dc8a11236017f540eb224f2a148984e82ca3fb6b29129375b1080ba05b81044faa717520ab82 py2_unchecked-ioctl.py2patch
+7d6c5d85a572450fb463feea9c7a8159aa8dd0c604e69f19da6eb57108c60e37ebce41b80758f63dd01e4a22286f80665ce4d778a30fa45ad5f1d6ce074c1f81 py2_cve-2021-3177.py2patch
+"
diff --git a/testing/pypy-stage0/py2_cve-2021-3177.py2patch b/testing/pypy-bootstrap/py2_cve-2021-3177.py2patch
index ca5da80e13c..ca5da80e13c 100644
--- a/testing/pypy-stage0/py2_cve-2021-3177.py2patch
+++ b/testing/pypy-bootstrap/py2_cve-2021-3177.py2patch
diff --git a/testing/pypy-stage0/py2_musl-find_library.py2patch b/testing/pypy-bootstrap/py2_musl-find_library.py2patch
index 7899abb7360..7899abb7360 100644
--- a/testing/pypy-stage0/py2_musl-find_library.py2patch
+++ b/testing/pypy-bootstrap/py2_musl-find_library.py2patch
diff --git a/testing/pypy-stage0/py2_unchecked-ioctl.py2patch b/testing/pypy-bootstrap/py2_unchecked-ioctl.py2patch
index 4d5564c2cb8..4d5564c2cb8 100644
--- a/testing/pypy-stage0/py2_unchecked-ioctl.py2patch
+++ b/testing/pypy-bootstrap/py2_unchecked-ioctl.py2patch
diff --git a/testing/pypy-stage0/APKBUILD b/testing/pypy-stage0/APKBUILD
deleted file mode 100644
index a9c818833dd..00000000000
--- a/testing/pypy-stage0/APKBUILD
+++ /dev/null
@@ -1,121 +0,0 @@
-# Maintainer: Thomas Liske <thomas@fiasko-nw.net>
-pkgname=pypy-stage0
-pkgver=7.3.9
-_py2ver=2.7.18
-_pycpver=2.19
-pkgrel=0
-pkgdesc="A fast, compliant alternative implementation of Python"
-url="https://www.pypy.org/"
-arch="x86 x86_64 s390x aarch64 ppc64le"
-license="MIT"
-makedepends="
- bzip2-dev
- expat-dev
- gdbm-dev
- libc-dev
- libffi-dev
- linux-headers
- ncurses-dev
- openssl-dev
- perl
- pkgconf
- readline-dev
- rsync
- sqlite-dev
- tk-dev
- xz-dev
- zlib-dev
- "
-options="!check"
-# libpypy-c.so on x86 has textrels; no checks for bootstrap
-[ "$CARCH" = "x86" ] && options="$options textrels"
-source="https://downloads.python.org/pypy/pypy2.7-v$pkgver-src.tar.bz2
- https://www.python.org/ftp/python/$_py2ver/Python-$_py2ver.tar.xz
- https://files.pythonhosted.org/packages/source/p/pycparser/pycparser-$_pycpver.tar.gz
- py2_musl-find_library.py2patch
- py2_unchecked-ioctl.py2patch
- py2_cve-2021-3177.py2patch
- "
-
-# Provide pypy-bootstrap for testing/pypy.
-provides="pypy-bootstrap"
-provider_priority=1 # lowest
-
-prepare() {
- default_prepare
-
- cd Python-$_py2ver
-
- # apply Python2 patches
- for i in ../py2_*.py2patch; do
- patch -p1 <$i
- done
-
- # Make sure Python2 uses system libs
- rm -r Modules/expat Modules/_ctypes/libffi* Modules/zlib
-}
-
-build() {
- ### Python2 ###
- export OPT="$CFLAGS -DTHREAD_STACK_SIZE=0x100000"
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=$srcdir/usr \
- --enable-ipv6 \
- --enable-optimizations \
- --enable-shared \
- --enable-unicode=ucs4 \
- --with-system-expat \
- --with-system-ffi \
- --with-system-zlib \
- --with-threads
- make LD_RUN_PATH="$srcdir/usr/lib"
- make -j1 install
-
- # pycparser
- cd $srcdir/pycparser-$_pycpver
- ../usr/bin/python2 setup.py install
-
-
- ### PyPy ###
- cd $srcdir/pypy2.7-v$pkgver-src/pypy/goal
-
- # translate with JIT
- [[ "$JOBS" -gt 16 ]] && export JOBS=16
- ../../../usr/bin/python2 ../../rpython/bin/rpython \
- --opt=jit \
- --shared \
- --make-jobs $JOBS \
- targetpypystandalone
-
- # compile binary modules
- PYTHONPATH=../.. ./pypy-c ../../lib_pypy/pypy_tools/build_cffi_imports.py
-}
-
-package() {
- cd src/pypy2.7-v$pkgver-src
-
- install -Dm755 pypy/goal/pypy-c "$pkgdir"/usr/lib/pypy/bin/pypy-c
- install -Dm755 pypy/goal/libpypy-c.so "$pkgdir"/usr/lib/pypy/bin/libpypy-c.so
-
- rsync -r --exclude='__pycache__' --exclude='*.c' --exclude '*.o' lib_pypy/ "$pkgdir"/usr/lib/pypy/lib_pypy/
-
- rsync -r --exclude='__pycache__' --exclude='test' --exclude='tests' lib-python/ "$pkgdir"/usr/lib/pypy/lib-python/
-
- rsync -r --include='*.h' -f 'hide,! */' include/ "$pkgdir"/usr/lib/pypy/include/
-
- # Install symlinks
- mkdir -p "$pkgdir"/usr/bin "$pkgdir"/usr/lib
- ln -s ../lib/pypy/bin/pypy-c "$pkgdir"/usr/bin/pypy
- ln -s pypy/bin/libpypy-c.so "$pkgdir"/usr/lib/libpypy-c.so
-}
-
-sha512sums="
-8d7513d4efe924f2456dd65a45a82dd16171f7962c81ba90f2a168c332cdad78ceffa3ed1af379c09e61082b39d5c2a8385cd77c89b698c47cc75e9df1bb4d2a pypy2.7-v7.3.9-src.tar.bz2
-a7bb62b51f48ff0b6df0b18f5b0312a523e3110f49c3237936bfe56ed0e26838c0274ff5401bda6fc21bf24337477ccac49e8026c5d651e4b4cafb5eb5086f6c Python-2.7.18.tar.xz
-7f830e1c9066ee2d297a55e2bf6db4bf6447b6d9da0145d11a88c3bb98505755fb7986eafa6e06ae0b7680838f5e5d6a6d188245ca5ad45c2a727587bac93ab5 pycparser-2.19.tar.gz
-ab8eaa2858d5109049b1f9f553198d40e0ef8d78211ad6455f7b491af525bffb16738fed60fc84e960c4889568d25753b9e4a1494834fea48291b33f07000ec2 py2_musl-find_library.py2patch
-5a8e013a4132d71c4360771f130d27b37275ae59330cf9a75378dc8a11236017f540eb224f2a148984e82ca3fb6b29129375b1080ba05b81044faa717520ab82 py2_unchecked-ioctl.py2patch
-7d6c5d85a572450fb463feea9c7a8159aa8dd0c604e69f19da6eb57108c60e37ebce41b80758f63dd01e4a22286f80665ce4d778a30fa45ad5f1d6ce074c1f81 py2_cve-2021-3177.py2patch
-"
diff --git a/testing/pypy/APKBUILD b/testing/pypy/APKBUILD
index 1e5399c5509..42ad73f332a 100644
--- a/testing/pypy/APKBUILD
+++ b/testing/pypy/APKBUILD
@@ -1,6 +1,6 @@
# Maintainer: Thomas Liske <thomas@fiasko-nw.net>
pkgname=pypy
-pkgver=7.3.9
+pkgver=7.3.12
_pkgver=${pkgver/_/}
pkgrel=0
pkgdesc="A fast, compliant alternative implementation of Python 2.7"
@@ -8,19 +8,17 @@ url="https://www.pypy.org/"
arch="x86 x86_64 s390x aarch64 ppc64le"
license="MIT"
subpackages="$pkgname-dev $pkgname-tkinter"
-provides="$pkgname-bootstrap"
+provides="pypy-bootstrap"
provider_priority=100 # highest
makedepends="
bzip2-dev
expat-dev
gdbm-dev
- libc-dev
libffi-dev
linux-headers
ncurses-dev
- openssl-dev
+ openssl-dev>3
perl
- pkgconf
py3-virtualenv
pypy-bootstrap
readline-dev
@@ -35,11 +33,23 @@ makedepends="
source="https://downloads.python.org/pypy/pypy2.7-v$_pkgver-src.tar.bz2
"
+case "$CARCH" in
+x86_64)
+ ;;
+*)
+ # ignore failing tests on some archs for now
+ options="$options !check"
+ ;;
+esac
+
build() {
cd pypy2.7-v$_pkgver-src/pypy/goal
+ if [ "$JOBS" -gt 16 ]; then
+ export JOBS=16
+ fi
+
# translate with JIT
- [[ "$JOBS" -gt 16 ]] && export JOBS=16
pypy ../../rpython/bin/rpython --opt=jit --shared --make-jobs $JOBS targetpypystandalone
# compile binary modules
@@ -47,13 +57,7 @@ build() {
}
check() {
- # ignore failing tests on some archs for now
- ./pypy-c -u ../test_all.py \
- ../module/pypyjit/test_pypy_c || \
- [ "$CARCH" = "aarch64" ] || \
- [ "$CARCH" = "ppc64le" ] || \
- [ "$CARCH" = "s390x" ] || \
- [ "$CARCH" = "x86" ]
+ ./pypy-c -u ../test_all.py ../module/pypyjit/test_pypy_c
}
package() {
@@ -86,15 +90,12 @@ dev() {
tkinter() {
pkgdesc="Writing Tk applications with Pypy"
- mkdir -p "$subpkgdir"/usr/lib/pypy/lib_pypy "$subpkgdir"/usr/lib/pypy/lib-python/2.7
- mv "$pkgdir"/usr/lib/pypy/lib_pypy/_tkinter \
- "$subpkgdir"/usr/lib/pypy/lib_pypy/
- mv "$pkgdir"/usr/lib/pypy/lib-python/2.7/lib-tk \
- "$subpkgdir"/usr/lib/pypy/lib-python/2.7/
- mv "$pkgdir"/usr/lib/pypy/lib-python/2.7/idlelib \
- "$subpkgdir"/usr/lib/pypy/lib-python/2.7/
+ amove \
+ usr/lib/pypy/lib_pypy/_tkinter \
+ usr/lib/pypy/lib-python/2.7/lib-tk \
+ usr/lib/pypy/lib-python/2.7/idlelib
}
sha512sums="
-8d7513d4efe924f2456dd65a45a82dd16171f7962c81ba90f2a168c332cdad78ceffa3ed1af379c09e61082b39d5c2a8385cd77c89b698c47cc75e9df1bb4d2a pypy2.7-v7.3.9-src.tar.bz2
+35ec35376f1e7c1a5dea9dc5bce6819a94c2df2645806c83185487587470b47ab529c25ecb8ca200505319f40789859a2919c61902b693421e2001313b46e5f4 pypy2.7-v7.3.12-src.tar.bz2
"
diff --git a/testing/pypy3/0001-time.patch b/testing/pypy3/0001-time.patch
index 83e2b4e3f4a..fa929736bc3 100644
--- a/testing/pypy3/0001-time.patch
+++ b/testing/pypy3/0001-time.patch
@@ -1,10 +1,10 @@
--- a/pypy/module/cpyext/include/Python.h.orig
+++ b/pypy/module/cpyext/include/Python.h
-@@ -11,6 +11,7 @@
+@@ -14,6 +14,7 @@
# include <math.h>
# include <errno.h>
# include <unistd.h>
+# include <sys/time.h>
- # define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
- # define PyAPI_FUNC(RTYPE) __attribute__((visibility("default"))) RTYPE
- # define PyAPI_DATA(RTYPE) extern PyAPI_FUNC(RTYPE)
+ #else
+ # ifdef _MSC_VER
+ # include <crtdefs.h>
diff --git a/testing/pypy3/APKBUILD b/testing/pypy3/APKBUILD
index 15852c33751..5322f6e6f83 100644
--- a/testing/pypy3/APKBUILD
+++ b/testing/pypy3/APKBUILD
@@ -1,43 +1,135 @@
# Maintainer: Thomas Liske <thomas@fiasko-nw.net>
-
pkgname=pypy3
-pkgver=7.3.7
+pkgver=7.3.12
+_pkgver=${pkgver/_/}
+_pyver=3.10
pkgrel=0
-pkgdesc="fast, compliant alternative implementation of Python 3.7"
+pkgdesc="Fast, compliant alternative implementation of Python $_pyver"
url="https://www.pypy.org/"
arch="x86 x86_64 aarch64 s390x"
license="MIT"
-makedepends="bzip2-dev expat-dev gdbm-dev libc-dev libffi-dev linux-headers
- ncurses-dev openssl1.1-compat-dev pkgconf readline-dev sqlite-dev tk-dev
- xz-dev zlib-dev pypy"
-options="!check" # checks will be enabled later
-[ "$CARCH" = "x86" ] && options="$options textrels" # on x86 has textrels
-source="https://downloads.python.org/pypy/pypy3.7-v$pkgver-src.tar.bz2
+makedepends="
+ bzip2-dev
+ expat-dev
+ gdbm-dev
+ libffi-dev
+ linux-headers
+ ncurses-dev
+ openssl-dev>3
+ pypy
+ readline-dev
+ sqlite-dev
+ tk-dev
+ util-linux-misc
+ xz-dev
+ zlib-dev
+ "
+subpackages="$pkgname-dev $pkgname-tests $pkgname-tkinter $pkgname-pyc"
+source="https://downloads.python.org/pypy/pypy$_pyver-v$_pkgver-src.tar.bz2
0001-time.patch
0002-extern-stdio.patch
"
-builddir="$srcdir/pypy3.7-v$pkgver-src"
+builddir="$srcdir/pypy$_pyver-v$_pkgver-src"
+options="!check" # todo
+
+[ "$CARCH" = "x86" ] && options="$options textrels" # on x86 has textrels
build() {
- cd pypy/goal
+ if [ "$JOBS" -gt 16 ]; then
+ export JOBS=16
+ fi
+
+ msg "building pypy3"
+ pypy rpython/bin/rpython --opt=jit --shared --make-jobs=${JOBS:-2} pypy/goal/targetpypystandalone.py
+
+ msg "configuring system dirs"
+ ./pypy3.10-c -m sysconfig --generate-posix-vars \
+ LIBDIR=/usr/lib \
+ TZPATH=/usr/share/zoneinfo \
+ INCLUDEPY=/usr/include/pypy$_pyver
- # translate with JIT
- [[ "$JOBS" -gt 16 ]] && export JOBS=16
- pypy ../../rpython/bin/rpython --opt=jit --shared --make-jobs $JOBS targetpypystandalone
+ local out="$(cat pybuilddir.txt)"
+ cp "$out"/_sysconfigdata__*.py lib-python/3/
- # compile binary modules
- PYTHONPATH=../.. ./pypy3-c ../../lib_pypy/pypy_tools/build_cffi_imports.py
+ msg "generating pattern pickles"
+ ./pypy$_pyver-c - <<-EOF
+ import lib2to3.pygram
+ import lib2to3.patcomp
+ lib2to3.patcomp.PatternCompiler()
+ EOF
+
+ msg "compiling binary modules"
+ ./pypy$_pyver-c lib_pypy/pypy_tools/build_cffi_imports.py
+
+ # cleanup pypy libdir
+ find lib_pypy -name "*_cffi.[co]" -delete
+ find lib_pypy -type d -empty -delete
+}
+
+check() {
+ ./pypy$_pyver-c -u pypy/test_all.py \
+ pypy/module/pypyjit/test_pypy_c
}
package() {
- # Prepare installation
- pypy pypy/tool/release/package.py --archive-name pypy --targetdir .
- mkdir -p $pkgdir
- tar xf pypy.tar.bz2 -C "$pkgdir"
+ mkdir -p "$pkgdir"/usr/lib/pypy$_pyver "$pkgdir"/usr/include
+
+ # install stdlib
+ # this puts everything just like python itself does
+ cp -a lib-python/3/. lib_pypy/. "$pkgdir"/usr/lib/pypy$_pyver/
+
+ # install includes
+ cp -a include/pypy$_pyver "$pkgdir"/usr/include/
+
+ # install pypy itself
+ install -Dm755 ./pypy$_pyver-c -t "$pkgdir"/usr/bin
+ install -Dm755 ./libpypy$_pyver-c.so -t "$pkgdir"/usr/lib/
+
+ # install symlink
+ ln -sfv pypy$_pyver-c "$pkgdir"/usr/bin/pypy3
+
+ # allow fail for 2to3 module
+ ./pypy$_pyver-c -m compileall -fq "$pkgdir"/usr/lib || true
+}
+
+dev() {
+ default_dev
+
+ # pyconfig.h is needed at runtime
+ mkdir -p "$pkgdir"/usr/include/pypy$_pyver
+ mv "$subpkgdir"/usr/include/pypy$_pyver/pyconfig.h \
+ "$pkgdir"/usr/include/pypy$_pyver/
+}
+
+tests() {
+ pkgdesc="$pkgdesc (test module)"
+
+ amove \
+ usr/lib/pypy$_pyver/test \
+ usr/lib/pypy$_pyver/*/test \
+ usr/lib/pypy$_pyver/*/tests
+}
+
+pyc() {
+ pkgdesc="Precompiled Python bytecode for ${subpkgname%-pyc}"
+ install_if="${subpkgname%-pyc}=$pkgver-r$pkgrel pyc"
+
+ cd "$pkgdir"
+ local IFS='
+'
+ # shellcheck disable=2046
+ amove $(find usr/lib/pypy$_pyver -type d -name __pycache__)
+}
+
+tkinter() {
+ pkgdesc="$pkgdesc (tkinter module)"
+
+ amove usr/lib/pypy$_pyver/_tkinter \
+ usr/lib/pypy$_pyver/tkinter
}
sha512sums="
-99099f17682b606864753b76a6a0cdf860bc2bf79588ee53e7d0586d3f8f6ab6820240666bd3646ade6523dd5adc6999116d4db4285c688984dc33d4fa7743c6 pypy3.7-v7.3.7-src.tar.bz2
-17c5cb7101e9e1edaabf87e69e89bc5c750657291df7817b1cc86e63f28e86f61e14523a3ab9a04d35078efcf563c0b7bd45cdd7dea665df10e061a356aa66b1 0001-time.patch
+080520c7de267e17a2823f06cd0a15c108a2c32fc296d6e24782050eb546fa74852d948ede2c381dba110774121b20efc3a07b553acd0ac0db4a844dfc09069e pypy3.10-v7.3.12-src.tar.bz2
+42abc8c67c249ff012010aec568579cd738ed2d74ffdf93755c9427117e85cd859390266c7431fcb4d2fcfd82b61d5ba0c58bd0ceda44e5d12bf22df5935bb24 0001-time.patch
b648204914072e74367b94065d65b423324bcbabc0e2199ad195ab9822ccc6c51ec552c8c17ed22c26caf73b04d16d6f4c3e14a8d1af0e378d76d6c3b587b784 0002-extern-stdio.patch
"
diff --git a/testing/pypykatz/APKBUILD b/testing/pypykatz/APKBUILD
new file mode 100644
index 00000000000..5363e619b11
--- /dev/null
+++ b/testing/pypykatz/APKBUILD
@@ -0,0 +1,43 @@
+# Contributor: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
+# Maintainer: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
+pkgname=pypykatz
+pkgver=0.6.9
+pkgrel=1
+pkgdesc="Python implementation of Mimikatz"
+url="https://github.com/skelsec/pypykatz"
+arch="noarch"
+license="MIT"
+depends="
+ py3-aesedb
+ py3-aiosmb
+ py3-aiowinreg
+ py3-minidump
+ py3-minikerberos
+ py3-msldap
+ py3-tqdm
+ py3-unicrypto
+ py3-winacl
+ python3
+ "
+makedepends="
+ py3-gpep517
+ py3-wheel
+ py3-setuptools
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/skelsec/pypykatz/archive/refs/tags/$pkgver.tar.gz"
+options="!check" # no tests provided
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" .dist/*.whl
+}
+
+sha512sums="
+ac2c64424c1352c45c667116acf65c5aff9976db92f2f8a678b2e578410073484b4ae7e787e03f84d349f4b6277fa3927f2b2b471800a2fa193c007a5a90d1aa pypykatz-0.6.9.tar.gz
+"
diff --git a/testing/pyradio/APKBUILD b/testing/pyradio/APKBUILD
new file mode 100644
index 00000000000..a75c5e03743
--- /dev/null
+++ b/testing/pyradio/APKBUILD
@@ -0,0 +1,52 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=pyradio
+pkgver=0.9.2.25
+pkgrel=1
+pkgdesc="Curses based internet radio player"
+url="https://www.coderholic.com/pyradio"
+arch="noarch"
+license="MIT"
+depends="
+ python3
+ py3-dateutil
+ py3-dnspython
+ py3-netifaces
+ py3-psutil
+ py3-requests
+ py3-rich
+ "
+makedepends="py3-gpep517 py3-installer py3-setuptools py3-wheel"
+options="!check" # no testsuite
+subpackages="$pkgname-doc $pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/coderholic/pyradio/archive/refs/tags/$pkgver.tar.gz"
+
+prepare() {
+ default_prepare
+
+ sed -i 's/^distro = None$/distro = AlpineLinux/' pyradio/config
+}
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+
+ install -Dm644 devel/pyradio.png \
+ -t "$pkgdir"/usr/share/icons/hicolor/512x512/apps/
+ install -Dm644 devel/pyradio.desktop \
+ -t "$pkgdir"/usr/share/applications/
+
+ install -Dm644 docs/pyradio*.1 \
+ -t "$pkgdir"/usr/share/man/man1/
+ install -Dm644 docs/*.md \
+ -t "$pkgdir"/usr/share/doc/$pkgname/
+}
+
+sha512sums="
+103c89754310a04d952ab962d5bef92e057de65f84394b3f040804fae2ae848a91b6fd3f5bfdfcc587ae495e569efe36ee2179d5f4d5ea03989480c55b7b599b pyradio-0.9.2.25.tar.gz
+"
diff --git a/testing/pyright/APKBUILD b/testing/pyright/APKBUILD
deleted file mode 100644
index 84f9616556f..00000000000
--- a/testing/pyright/APKBUILD
+++ /dev/null
@@ -1,51 +0,0 @@
-# Contributor: Michał Polański <michal@polanski.me>
-# Maintainer: Michał Polański <michal@polanski.me>
-pkgname=pyright
-pkgver=1.1.212
-pkgrel=0
-pkgdesc="Static type checker for Python"
-url="https://github.com/microsoft/pyright"
-license="MIT"
-# riscv64: blocked by nodejs
-# s390x: tests fail
-arch="noarch !riscv64 !s390x"
-depends="nodejs"
-makedepends="npm"
-subpackages="$pkgname-doc"
-source="https://github.com/microsoft/pyright/archive/$pkgver/pyright-$pkgver.tar.gz"
-
-prepare() {
- default_prepare
- npm ci
-}
-
-build() {
- cd packages/pyright
- npm run build
-}
-
-check() {
- cd packages/pyright-internal
- npm run test
-}
-
-package() {
- local destdir=/usr/lib/node_modules/pyright
-
- install -d \
- "$pkgdir"/usr/bin \
- "$pkgdir"/$destdir \
- "$pkgdir"/usr/share/doc/pyright
-
- cp -r docs/* LICENSE.txt "$pkgdir"/usr/share/doc/pyright
-
- cd packages/pyright
- cp -r dist index.js langserver.index.js package.json "$pkgdir"/$destdir
-
- ln -s $destdir/index.js "$pkgdir"/usr/bin/pyright
- ln -s $destdir/langserver.index.js "$pkgdir"/usr/bin/pyright-langserver
-}
-
-sha512sums="
-70bfaa8fa267b374a766f5def156c93de45086831d009924a90f87c810f5895ffa954dfab7e43563a2d9b2f560665bce4753bd1ce7affa74b3d3b72c502cd9a4 pyright-1.1.212.tar.gz
-"
diff --git a/testing/python2/APKBUILD b/testing/python2/APKBUILD
deleted file mode 100644
index fc83fccce27..00000000000
--- a/testing/python2/APKBUILD
+++ /dev/null
@@ -1,148 +0,0 @@
-# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
-
-pkgname=python2
-# the python2-tkinter's pkgver needs to be synchronized with this.
-pkgver=2.7.18
-_verbase=${pkgver%.*}
-pkgrel=4
-pkgdesc="A high-level scripting language"
-url="https://www.python.org/"
-arch="all"
-license="custom"
-subpackages="$pkgname-dbg $pkgname-dev $pkgname-doc $pkgname-tests py-gdbm:gdbm
- $pkgname-wininst"
-makedepends="expat-dev openssl1.1-compat-dev zlib-dev ncurses-dev bzip2-dev
- gdbm-dev sqlite-dev libffi-dev readline-dev linux-headers"
-source="https://www.python.org/ftp/python/$pkgver/Python-$pkgver.tar.xz
- musl-find_library.patch
- unchecked-ioctl.patch
- cve-2021-3177.patch
- "
-builddir="$srcdir/Python-$pkgver"
-
-# secfixes:
-# 2.7.18-r1:
-# - CVE-2021-3177
-# 2.7.18-r0:
-# - CVE-2019-18348
-# 2.7.17-r0:
-# - CVE-2019-15903
-# 2.7.16-r3:
-# - CVE-2019-16056
-# - CVE-2019-16935
-# 2.7.16-r1:
-# - CVE-2019-9636
-# - CVE-2019-9948
-# 2.7.16-r0:
-# - CVE-2018-14647
-# 2.7.15-r3:
-# - CVE-2019-5010
-# 2.7.15-r0:
-# - CVE-2018-1060
-# - CVE-2018-1061
-
-prepare() {
- default_prepare
-
- # Make sure we use system libs
- rm -r Modules/expat Modules/_ctypes/libffi* Modules/zlib
-
- # make sure our /dev/shm is world writeable
- if ! touch /dev/shm/$pkgname-$pkgver; then
- error "/dev/shm is not world writeable. this will cause a broken python2 build"
- return 1
- fi
- rm /dev/shm/$pkgname-$pkgver
-}
-
-build() {
- export OPT="$CFLAGS -DTHREAD_STACK_SIZE=0x100000"
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --enable-ipv6 \
- --enable-optimizations \
- --enable-shared \
- --enable-unicode=ucs4 \
- --with-system-expat \
- --with-system-ffi \
- --with-system-zlib \
- --with-threads
- make
-}
-
-check() {
- # test that we reach recursionlimit before we segfault
- cat > test-stacksize.py <<-EOF
- import threading
- import sys
-
- def fun(i):
- try:
- fun(i+1)
- except:
- sys.exit(0)
-
- t = threading.Thread(target=fun, args=[1])
- t.start()
-EOF
- LD_LIBRARY_PATH=$PWD ./python test-stacksize.py
-}
-
-package() {
- make -j1 DESTDIR="$pkgdir" install
- install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
- rm "$pkgdir/usr/bin/2to3"
-
- # This symlink should be owned by python3 but due to lots of packages
- # wanting it to be python2, leave it as is
- # rm -f "$pkgdir"/usr/bin/python
-}
-
-_mv_files() {
- local i
- for i in "$@"; do
- mkdir -p "$subpkgdir"/${i%/*}
- mv "$pkgdir"/$i "$subpkgdir"/$i
- done
-}
-
-dev() {
- # pyconfig.h is needed runtime so we move it back
- default_dev
- mkdir -p "$pkgdir"/usr/include/python$_verbase
- mv "$subpkgdir"/usr/include/python$_verbase/pyconfig.h \
- "$pkgdir"/usr/include/python$_verbase/
-}
-
-tests() {
- pkgdesc="The test modules from the main python package"
- provides="python-tests=$pkgver-r$pkgrel"
- replaces="python-tests"
-
- cd "$pkgdir"
- _mv_files usr/lib/python*/*/test \
- usr/lib/python*/test
-}
-
-gdbm() {
- pkgdesc="GNU dbm database support for Python"
- provides="python-gdbm=$pkgver-r$pkgrel"
- replaces="python-gdbm py-gdbm"
-
- cd "$pkgdir"
- _mv_files $(find usr/lib -name '*gdbm*')
-}
-
-wininst() {
- pkgdesc="Python wininst files"
- mkdir -p "$subpkgdir"/usr/lib/python$_verbase/distutils/command
- mv "$pkgdir"/usr/lib/python$_verbase/distutils/command/*.exe \
- "$subpkgdir"/usr/lib/python$_verbase/distutils/command
-}
-
-sha512sums="a7bb62b51f48ff0b6df0b18f5b0312a523e3110f49c3237936bfe56ed0e26838c0274ff5401bda6fc21bf24337477ccac49e8026c5d651e4b4cafb5eb5086f6c Python-2.7.18.tar.xz
-ab8eaa2858d5109049b1f9f553198d40e0ef8d78211ad6455f7b491af525bffb16738fed60fc84e960c4889568d25753b9e4a1494834fea48291b33f07000ec2 musl-find_library.patch
-5a8e013a4132d71c4360771f130d27b37275ae59330cf9a75378dc8a11236017f540eb224f2a148984e82ca3fb6b29129375b1080ba05b81044faa717520ab82 unchecked-ioctl.patch
-7d6c5d85a572450fb463feea9c7a8159aa8dd0c604e69f19da6eb57108c60e37ebce41b80758f63dd01e4a22286f80665ce4d778a30fa45ad5f1d6ce074c1f81 cve-2021-3177.patch"
diff --git a/testing/python2/cve-2021-3177.patch b/testing/python2/cve-2021-3177.patch
deleted file mode 100644
index ca5da80e13c..00000000000
--- a/testing/python2/cve-2021-3177.patch
+++ /dev/null
@@ -1,150 +0,0 @@
-bpo-42938: Replace snprintf with Python unicode formatting in ctypes param reprs.
---- Python-2.7.18.orig/Lib/ctypes/test/test_parameters.py
-+++ Python-2.7.18/Lib/ctypes/test/test_parameters.py
-@@ -206,6 +206,49 @@
- with self.assertRaises(ZeroDivisionError):
- WorseStruct().__setstate__({}, b'foo')
-
-+ def test_parameter_repr(self):
-+ from ctypes import (
-+ c_bool,
-+ c_char,
-+ c_wchar,
-+ c_byte,
-+ c_ubyte,
-+ c_short,
-+ c_ushort,
-+ c_int,
-+ c_uint,
-+ c_long,
-+ c_ulong,
-+ c_longlong,
-+ c_ulonglong,
-+ c_float,
-+ c_double,
-+ c_longdouble,
-+ c_char_p,
-+ c_wchar_p,
-+ c_void_p,
-+ )
-+ self.assertRegexpMatches(repr(c_bool.from_param(True)), r"^<cparam '\?' at 0x[A-Fa-f0-9]+>$")
-+ self.assertEqual(repr(c_char.from_param('a')), "<cparam 'c' (a)>")
-+ self.assertRegexpMatches(repr(c_wchar.from_param('a')), r"^<cparam 'u' at 0x[A-Fa-f0-9]+>$")
-+ self.assertEqual(repr(c_byte.from_param(98)), "<cparam 'b' (98)>")
-+ self.assertEqual(repr(c_ubyte.from_param(98)), "<cparam 'B' (98)>")
-+ self.assertEqual(repr(c_short.from_param(511)), "<cparam 'h' (511)>")
-+ self.assertEqual(repr(c_ushort.from_param(511)), "<cparam 'H' (511)>")
-+ self.assertRegexpMatches(repr(c_int.from_param(20000)), r"^<cparam '[li]' \(20000\)>$")
-+ self.assertRegexpMatches(repr(c_uint.from_param(20000)), r"^<cparam '[LI]' \(20000\)>$")
-+ self.assertRegexpMatches(repr(c_long.from_param(20000)), r"^<cparam '[li]' \(20000\)>$")
-+ self.assertRegexpMatches(repr(c_ulong.from_param(20000)), r"^<cparam '[LI]' \(20000\)>$")
-+ self.assertRegexpMatches(repr(c_longlong.from_param(20000)), r"^<cparam '[liq]' \(20000\)>$")
-+ self.assertRegexpMatches(repr(c_ulonglong.from_param(20000)), r"^<cparam '[LIQ]' \(20000\)>$")
-+ self.assertEqual(repr(c_float.from_param(1.5)), "<cparam 'f' (1.5)>")
-+ self.assertEqual(repr(c_double.from_param(1.5)), "<cparam 'd' (1.5)>")
-+ self.assertEqual(repr(c_double.from_param(1e300)), "<cparam 'd' (1e+300)>")
-+ self.assertRegexpMatches(repr(c_longdouble.from_param(1.5)), r"^<cparam ('d' \(1.5\)|'g' at 0x[A-Fa-f0-9]+)>$")
-+ self.assertRegexpMatches(repr(c_char_p.from_param(b'hihi')), "^<cparam 'z' \(0x[A-Fa-f0-9]+\)>$")
-+ self.assertRegexpMatches(repr(c_wchar_p.from_param('hihi')), "^<cparam 'Z' \(0x[A-Fa-f0-9]+\)>$")
-+ self.assertRegexpMatches(repr(c_void_p.from_param(0x12)), r"^<cparam 'P' \(0x0*12\)>$")
-+
- ################################################################
-
- if __name__ == '__main__':
---- Python-2.7.18.orig/Modules/_ctypes/callproc.c
-+++ Python-2.7.18/Modules/_ctypes/callproc.c
-@@ -460,50 +460,53 @@
- static PyObject *
- PyCArg_repr(PyCArgObject *self)
- {
-- char buffer[256];
- switch(self->tag) {
- case 'b':
- case 'B':
-- sprintf(buffer, "<cparam '%c' (%d)>",
-+ return PyString_FromFormat("<cparam '%c' (%d)>",
- self->tag, self->value.b);
-- break;
- case 'h':
- case 'H':
-- sprintf(buffer, "<cparam '%c' (%d)>",
-+ return PyString_FromFormat("<cparam '%c' (%d)>",
- self->tag, self->value.h);
-- break;
- case 'i':
- case 'I':
-- sprintf(buffer, "<cparam '%c' (%d)>",
-+ return PyString_FromFormat("<cparam '%c' (%d)>",
- self->tag, self->value.i);
-- break;
- case 'l':
- case 'L':
-- sprintf(buffer, "<cparam '%c' (%ld)>",
-+ return PyString_FromFormat("<cparam '%c' (%ld)>",
- self->tag, self->value.l);
-- break;
-
- #ifdef HAVE_LONG_LONG
- case 'q':
- case 'Q':
-- sprintf(buffer,
-- "<cparam '%c' (%" PY_FORMAT_LONG_LONG "d)>",
-+ return PyString_FromFormat("<cparam '%c' (%" PY_FORMAT_LONG_LONG "d)>",
- self->tag, self->value.q);
-- break;
- #endif
- case 'd':
-- sprintf(buffer, "<cparam '%c' (%f)>",
-- self->tag, self->value.d);
-- break;
-- case 'f':
-- sprintf(buffer, "<cparam '%c' (%f)>",
-- self->tag, self->value.f);
-- break;
-+ case 'f': {
-+ PyObject *f = PyFloat_FromDouble((self->tag == 'f') ? self->value.f : self->value.d);
-+ if (f == NULL) {
-+ return NULL;
-+ }
-+ PyObject *r = PyObject_Repr(f);
-+ Py_DECREF(f);
-+ if (r == NULL) {
-+ return NULL;
-+ }
-+ char *value = PyString_AsString(r);
-+ Py_DECREF(r);
-+ if (value == NULL) {
-+ return NULL;
-+ }
-+ return PyString_FromFormat("<cparam '%c' (%s)>",
-+ self->tag, value);
-+ }
-
- case 'c':
-- sprintf(buffer, "<cparam '%c' (%c)>",
-+ return PyString_FromFormat("<cparam '%c' (%c)>",
- self->tag, self->value.c);
-- break;
-
- /* Hm, are these 'z' and 'Z' codes useful at all?
- Shouldn't they be replaced by the functionality of c_string
-@@ -512,16 +515,13 @@
- case 'z':
- case 'Z':
- case 'P':
-- sprintf(buffer, "<cparam '%c' (%p)>",
-+ return PyString_FromFormat("<cparam '%c' (%p)>",
- self->tag, self->value.p);
-- break;
-
- default:
-- sprintf(buffer, "<cparam '%c' at %p>",
-+ return PyString_FromFormat("<cparam '%c' at %p>",
- self->tag, self);
-- break;
- }
-- return PyString_FromString(buffer);
- }
-
- static PyMemberDef PyCArgType_members[] = {
-
diff --git a/testing/python2/musl-find_library.patch b/testing/python2/musl-find_library.patch
deleted file mode 100644
index 7899abb7360..00000000000
--- a/testing/python2/musl-find_library.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-diff -ru Python-2.7.12.orig/Lib/ctypes/util.py Python-2.7.12/Lib/ctypes/util.py
---- Python-2.7.12.orig/Lib/ctypes/util.py 2016-06-26 00:49:30.000000000 +0300
-+++ Python-2.7.12/Lib/ctypes/util.py 2016-11-03 16:05:46.954665040 +0200
-@@ -204,6 +204,41 @@
- def find_library(name, is64 = False):
- return _get_soname(_findLib_crle(name, is64) or _findLib_gcc(name))
-
-+ elif True:
-+
-+ # Patched for Alpine Linux / musl - search manually system paths
-+ def _is_elf(filepath):
-+ try:
-+ with open(filepath, 'rb') as fh:
-+ return fh.read(4) == b'\x7fELF'
-+ except:
-+ return False
-+
-+ def find_library(name):
-+ from glob import glob
-+ # absolute name?
-+ if os.path.isabs(name):
-+ return name
-+ # special case for libm, libcrypt and libpthread and musl
-+ if name in ['m', 'crypt', 'pthread']:
-+ name = 'c'
-+ elif name in ['libm.so', 'libcrypt.so', 'libpthread.so']:
-+ name = 'libc.so'
-+ # search in standard locations (musl order)
-+ paths = ['/lib', '/usr/local/lib', '/usr/lib']
-+ if 'LD_LIBRARY_PATH' in os.environ:
-+ paths = os.environ['LD_LIBRARY_PATH'].split(':') + paths
-+ for d in paths:
-+ f = os.path.join(d, name)
-+ if _is_elf(f):
-+ return os.path.basename(f)
-+
-+ prefix = os.path.join(d, 'lib'+name)
-+ for suffix in ['.so', '.so.*']:
-+ for f in glob('{0}{1}'.format(prefix, suffix)):
-+ if _is_elf(f):
-+ return os.path.basename(f)
-+
- else:
-
- def _findSoname_ldconfig(name):
diff --git a/testing/python2/unchecked-ioctl.patch b/testing/python2/unchecked-ioctl.patch
deleted file mode 100644
index 4d5564c2cb8..00000000000
--- a/testing/python2/unchecked-ioctl.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- ./Modules/fcntlmodule.c.orig
-+++ ./Modules/fcntlmodule.c
-@@ -118,7 +118,7 @@
- int mutate_arg = 1;
- char buf[IOCTL_BUFSZ+1]; /* argument plus NUL byte */
-
-- if (PyArg_ParseTuple(args, "O&Iw#|i:ioctl",
-+ if (PyArg_ParseTuple(args, "O&Iw#|n:ioctl",
- conv_descriptor, &fd, &code,
- &str, &len, &mutate_arg)) {
- char *arg;
diff --git a/testing/qalculate-qt/APKBUILD b/testing/qalculate-qt/APKBUILD
deleted file mode 100644
index c9036402f26..00000000000
--- a/testing/qalculate-qt/APKBUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
-# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
-# version must be kept in sync with libqalculate
-pkgname=qalculate-qt
-pkgver=4.2.0
-pkgrel=0
-pkgdesc="Multi-purpose desktop calculator - Qt version"
-url="https://github.com/Qalculate/qalculate-qt"
-arch="all"
-license="GPL-2.0-or-later"
-depends="gnuplot"
-makedepends="qt5-qtbase-dev qt5-qttools-dev libqalculate-dev"
-subpackages="$pkgname-doc"
-source="https://github.com/Qalculate/qalculate-qt/archive/v$pkgver/qalculate-qt-$pkgver.tar.gz"
-options="!check" # no test suite
-
-build() {
- qmake-qt5 PREFIX=/usr
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
-}
-
-sha512sums="
-a45ebf2314ef92223892b918a381ca205223826b9d591987638d8cb3343e0db39b83dcdc18b151e17edc97537ad526e077a9be617ac5164f761e833a2dfb3ae0 qalculate-qt-4.2.0.tar.gz
-"
diff --git a/testing/qbittorrent-cli/APKBUILD b/testing/qbittorrent-cli/APKBUILD
new file mode 100644
index 00000000000..a206b320c11
--- /dev/null
+++ b/testing/qbittorrent-cli/APKBUILD
@@ -0,0 +1,30 @@
+# Maintainer: Cowington Post <cowingtonpost@gmail.com>
+pkgname=qbittorrent-cli
+pkgver=2.0.0
+pkgrel=3
+pkgdesc="Cli to manage qBittorrent"
+url="https://github.com/ludviglundgren/qbittorrent-cli"
+arch="all"
+license="MIT"
+makedepends="go"
+source="https://github.com/ludviglundgren/qbittorrent-cli/archive/v$pkgver/qbittorrent-cli-$pkgver.tar.gz"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ make build
+}
+
+check() {
+ go test ./...
+}
+
+package() {
+ install -Dm755 bin/qbt "$pkgdir"/usr/bin/qbt
+}
+
+sha512sums="
+7f88322d6f46cf2c48d0eb4ae50ff5ce39893b42e210f68fa7320671f5f50217430a0d1d90118d2cf0f417ce15a8b16cf1de7ad3c937d6118a9eee5e2fbbcebc qbittorrent-cli-2.0.0.tar.gz
+"
diff --git a/testing/qdjango/APKBUILD b/testing/qdjango/APKBUILD
new file mode 100644
index 00000000000..3fdd69262e9
--- /dev/null
+++ b/testing/qdjango/APKBUILD
@@ -0,0 +1,35 @@
+# Maintainer: Luca Weiss <luca@z3ntu.xyz>
+pkgname=qdjango
+pkgver=0.6.2
+pkgrel=0
+pkgdesc="Qt-based C++ web framework"
+url="https://github.com/jlaine/qdjango"
+arch="all"
+license="LGPL-2.1-or-later"
+depends_dev="qt5-qtdeclarative-dev"
+makedepends="
+ $depends_dev
+ doxygen
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/jlaine/qdjango/archive/v$pkgver.tar.gz
+ no_docs_tests.patch
+ "
+subpackages="$pkgname-dev"
+
+build() {
+ qmake-qt5 PREFIX=/usr
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+}
+
+sha512sums="
+0280b09f0740ca7e70f62e36ea9e5bb648fe6d3ba1492e59f8c956df163c6db2338ea735e0b7937ee6e417f503a510eedf983ec6dc9744021a0c83a9432aa33f qdjango-0.6.2.tar.gz
+4c18534ded97db3793679f46828ad212105db4fa4018def98157ce12579245a9feecd7570ef3c958c59dd4bd9e9dc6d5b09070bd8ce4f5872784cb7f60b402e5 no_docs_tests.patch
+"
diff --git a/testing/qdjango/no_docs_tests.patch b/testing/qdjango/no_docs_tests.patch
new file mode 100644
index 00000000000..ccb22c89135
--- /dev/null
+++ b/testing/qdjango/no_docs_tests.patch
@@ -0,0 +1,14 @@
+diff --git a/qdjango.pro b/qdjango.pro
+index e9b6a08..d00c3c2 100644
+--- a/qdjango.pro
++++ b/qdjango.pro
+@@ -6,8 +6,7 @@ SUBDIRS = src
+
+ android {
+ } else {
+- SUBDIRS += tests examples
+- INSTALLS += htmldocs
++ SUBDIRS += examples
+ }
+
+ CONFIG += ordered
diff --git a/testing/qflipper/APKBUILD b/testing/qflipper/APKBUILD
new file mode 100644
index 00000000000..4375ec791c1
--- /dev/null
+++ b/testing/qflipper/APKBUILD
@@ -0,0 +1,80 @@
+# Contributor: Lauren N. Liberda <lauren@selfisekai.rocks>
+# Maintainer: Lauren N. Liberda <lauren@selfisekai.rocks>
+pkgname=qflipper
+pkgver=1.3.3
+pkgrel=0
+_nanopb=0.4.8
+_libwdi=1.5.0
+pkgdesc="Flipper Zero firmware updater"
+url="https://update.flipperzero.one/"
+arch="all"
+license="GPL-3.0-only"
+makedepends="
+ chrpath
+ libusb-dev
+ qt6-qt5compat-dev
+ qt6-qtbase-dev
+ qt6-qtdeclarative-dev
+ qt6-qtserialport-dev
+ qt6-qtsvg-dev
+ qt6-qttools-dev
+ qt6-qtwayland-dev
+ zlib-dev
+ "
+subpackages="$pkgname-gui"
+source="$pkgname-$pkgver.tar.gz::https://github.com/flipperdevices/qFlipper/archive/refs/tags/$pkgver.tar.gz
+ nanopb-$_nanopb.tar.gz::https://github.com/nanopb/nanopb/archive/$_nanopb.tar.gz
+ libwdi-$_libwdi.tar.gz::https://github.com/pbatard/libwdi/archive/v$_libwdi.tar.gz
+ "
+builddir="$srcdir/qFlipper-$pkgver"
+options="!check" # no suite
+
+prepare() {
+ default_prepare
+
+ mkdir -p build
+
+ rmdir 3rdparty/nanopb
+ ln -sfv "$srcdir"/nanopb-$_nanopb 3rdparty/nanopb
+ rmdir driver-tool/libwdi
+ ln -sfv "$srcdir"/libwdi-$_libwdi driver-tool/libwdi
+}
+
+build() {
+ cd build
+
+ qmake6 ../qFlipper.pro \
+ PREFIX=/usr \
+ -spec linux-g++ \
+ CONFIG+=qtquickcompiler \
+ INSTALLS.CONFIG+=nostrip \
+ QMAKE_CFLAGS="$CFLAGS" \
+ QMAKE_CXXFLAGS="$CXXFLAGS" \
+ QMAKE_LFLAGS="$LDFLAGS" \
+ DEFINES+=DISABLE_APPLICATION_UPDATES
+
+ make
+}
+
+package() {
+ make -C build INSTALL_ROOT="$pkgdir" install
+
+ # TODO: how to make qmake not do this
+ chrpath -d "$pkgdir"/usr/bin/*
+ chrpath -d "$pkgdir"/usr/lib/qFlipper/plugins/libflipperproto0.so
+}
+
+gui() {
+ pkgdesc="$pkgdesc (qt6 gui)"
+ depends="$pkgname=$pkgver-r$pkgrel"
+
+ amove \
+ usr/bin/qFlipper \
+ usr/share
+}
+
+sha512sums="
+55f19517982dbcc52f586bafd1c6f3d9acc9c81c29e3f42bc4e4d2f09c962b976bfb97406e20c7a126b9f555b2e6b6e420fa94cd97b07877d00ef74e425e6751 qflipper-1.3.3.tar.gz
+635577498dfbfb46fd64b8ec83b2a4a9b03b57c665f3c9f67d35c272810c0330b0e9011d7c0e43623e9da74d6ee3a4c1f012878e2bff7e1a7e57fb7c0857ad42 nanopb-0.4.8.tar.gz
+a70dbf1652228d2fc27968b76c0b92a737c29a3ad6dbc4494a0f6ebd39a539f5155c02e4aaeb437a3b4ba017e61e5e297776163ae94b838a753d467de37b7c0c libwdi-1.5.0.tar.gz
+"
diff --git a/testing/qgis/10-exiv2-0.28.patch b/testing/qgis/10-exiv2-0.28.patch
new file mode 100644
index 00000000000..52044ed4a04
--- /dev/null
+++ b/testing/qgis/10-exiv2-0.28.patch
@@ -0,0 +1,37 @@
+From 32f5418fc4f7bb2ee986dee1824ff2989c113a94 Mon Sep 17 00:00:00 2001
+From: Antonio Rojas <arojas@archlinux.org>
+Date: Sun, 9 Jul 2023 10:01:49 +0200
+Subject: [PATCH] Fix build with exiv2 0.28
+
+---
+ src/core/raster/qgsexiftools.cpp | 16 ++++++++++++++++
+ 1 file changed, 16 insertions(+)
+
+diff --git a/src/core/raster/qgsexiftools.cpp b/src/core/raster/qgsexiftools.cpp
+index 7fa270984557..f883d7960c68 100644
+--- a/src/core/raster/qgsexiftools.cpp
++++ b/src/core/raster/qgsexiftools.cpp
+@@ -94,7 +94,11 @@
+ case Exiv2::signedLong:
+ case Exiv2::unsignedLongLong:
+ case Exiv2::signedLongLong:
++#if EXIV2_TEST_VERSION (0, 28, 0)
++ val = QVariant::fromValue( it->toUint32() );
++#else
+ val = QVariant::fromValue( it->toLong() );
++#endif
+ break;
+
+ case Exiv2::tiffDouble:
+@@ -108,7 +112,11 @@
+ case Exiv2::signedByte:
+ case Exiv2::tiffIfd:
+ case Exiv2::tiffIfd8:
++#if EXIV2_TEST_VERSION (0, 28, 0)
++ val = QVariant::fromValue( static_cast< int >( it->toUint32() ) );
++#else
+ val = QVariant::fromValue( static_cast< int >( it->toLong() ) );
++#endif
+ break;
+
+ case Exiv2::date:
diff --git a/testing/qgis/20-protobuf-23.patch b/testing/qgis/20-protobuf-23.patch
new file mode 100644
index 00000000000..eeea2f2fdc3
--- /dev/null
+++ b/testing/qgis/20-protobuf-23.patch
@@ -0,0 +1,15 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 48a34626b0..e2b5cca718 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -366,7 +366,9 @@
+ message (SEND_ERROR "sqlite3 dependency was not found!")
+ endif()
+
+- find_package(Protobuf REQUIRED) # for decoding of vector tiles in MVT format
++ find_package(Protobuf CONFIG REQUIRED) # for decoding of vector tiles in MVT format
++ find_package(Protobuf) # for protobuf_generate_cpp
++ set(Protobuf_LITE_LIBRARY protobuf::libprotobuf-lite)
+ message(STATUS "Found Protobuf: ${Protobuf_LIBRARIES}")
+ if (NOT Protobuf_PROTOC_EXECUTABLE)
+ message (SEND_ERROR "Protobuf library's 'protoc' tool was not found!")
diff --git a/testing/qgis/30-qgstyle-infinite-loop.patch b/testing/qgis/30-qgstyle-infinite-loop.patch
new file mode 100644
index 00000000000..20cf95a59d2
--- /dev/null
+++ b/testing/qgis/30-qgstyle-infinite-loop.patch
@@ -0,0 +1,61 @@
+From 19823b76c27c3bfbff1d111cf09af948e8db4367 Mon Sep 17 00:00:00 2001
+From: PeterPetrik <zilolv@gmail.com>
+Date: Fri, 2 Jul 2021 14:40:59 +0200
+Subject: [PATCH] fix infinite loop in qgsstyle
+
+---
+ src/core/symbology/qgsstyle.cpp | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/src/core/symbology/qgsstyle.cpp b/src/core/symbology/qgsstyle.cpp
+index 6ca37dde3a15..c87305b3c8fa 100644
+--- a/src/core/symbology/qgsstyle.cpp
++++ b/src/core/symbology/qgsstyle.cpp
+@@ -2753,6 +2753,7 @@
+ if ( entityAddedVersion != 0 && sinceVersion != -1 && entityAddedVersion <= sinceVersion )
+ {
+ // skip the symbol, should already be present
++ e = e.nextSiblingElement();
+ continue;
+ }
+
+@@ -2807,6 +2808,7 @@
+ if ( entityAddedVersion != 0 && sinceVersion != -1 && entityAddedVersion <= sinceVersion )
+ {
+ // skip the ramp, should already be present
++ e = e.nextSiblingElement();
+ continue;
+ }
+
+@@ -2855,6 +2857,7 @@
+ if ( entityAddedVersion != 0 && sinceVersion != -1 && entityAddedVersion <= sinceVersion )
+ {
+ // skip the format, should already be present
++ e = e.nextSiblingElement();
+ continue;
+ }
+
+@@ -2899,6 +2902,7 @@
+ if ( entityAddedVersion != 0 && sinceVersion != -1 && entityAddedVersion <= sinceVersion )
+ {
+ // skip the settings, should already be present
++ e = e.nextSiblingElement();
+ continue;
+ }
+
+@@ -2944,6 +2948,7 @@
+ if ( entityAddedVersion != 0 && sinceVersion != -1 && entityAddedVersion <= sinceVersion )
+ {
+ // skip the shape, should already be present
++ e = e.nextSiblingElement();
+ continue;
+ }
+
+@@ -2988,6 +2993,7 @@
+ if ( entityAddedVersion != 0 && sinceVersion != -1 && entityAddedVersion <= sinceVersion )
+ {
+ // skip the symbol, should already be present
++ e = e.nextSiblingElement();
+ continue;
+ }
+
diff --git a/testing/qgis/40-pdal.patch b/testing/qgis/40-pdal.patch
new file mode 100644
index 00000000000..7b5270a5039
--- /dev/null
+++ b/testing/qgis/40-pdal.patch
@@ -0,0 +1,176 @@
+From 021f919f241806be566dce0a37ce84a56774eb84 Mon Sep 17 00:00:00 2001
+From: Nicklas Larsson <n_larsson@yahoo.com>
+Date: Tue, 17 Oct 2023 12:47:14 +0200
+Subject: [PATCH] cmake: update to find PDAL 2.6+
+
+With PDAL 2.6 the 'pdal_util' library is removed as a separate library
+and hence part of the 'pdalcpp' library.
+---
+ cmake/FindPDAL.cmake | 35 ++++++++++++++++++++++++++-----
+ cmake_templates/qgsconfig.h.in | 2 +-
+ python/CMakeLists.txt | 4 ----
+ src/app/CMakeLists.txt | 7 ++-----
+ src/core/CMakeLists.txt | 9 ++------
+ src/gui/CMakeLists.txt | 7 ++-----
+ src/providers/pdal/CMakeLists.txt | 5 -----
+ tests/src/core/CMakeLists.txt | 4 ----
+ 8 files changed, 37 insertions(+), 36 deletions(-)
+
+diff --git a/cmake/FindPDAL.cmake b/cmake/FindPDAL.cmake
+index 1899d26de5ff..d1de5c8dccba 100644
+--- a/cmake/FindPDAL.cmake
++++ b/cmake/FindPDAL.cmake
+@@ -7,8 +7,7 @@
+ # CMake module to search for PDAL library
+ #
+ # If it's found it sets PDAL_FOUND to TRUE
+-# and following variables are set:
+-# PDAL_INCLUDE_DIR
++# and adds the following variable containing library target(s):
+ # PDAL_LIBRARIES
+
+ # FIND_PATH and FIND_LIBRARY normally search standard locations
+@@ -18,6 +17,22 @@
+ # locations. When an earlier FIND_* succeeds, subsequent FIND_*s
+ # searching for the same item do nothing.
+
++find_package(PDAL CONFIG)
++
++if(PDAL_FOUND)
++ if(NOT PDAL_FIND_QUIETLY)
++ message(STATUS "Found PDAL: ${PDAL_LIBRARIES} (${PDAL_VERSION})")
++ endif()
++
++ if(PDAL_VERSION VERSION_LESS "1.7.0")
++ message(FATAL_ERROR "PDAL version is too old (${PDAL_VERSION}). Use 1.7 or higher.")
++ endif()
++
++ return()
++endif()
++
++# Fallback for systems where PDAL's config-file package is not present.
++# It is not adapted for PDAL 2.6+ (where pdal_util library is removed).
+ FIND_PATH(PDAL_INCLUDE_DIR pdal/pdal.hpp
+ "$ENV{LIB_DIR}/include"
+ "/usr/include"
+@@ -50,7 +65,7 @@ FIND_PROGRAM(PDAL_BIN pdal)
+
+ IF (PDAL_INCLUDE_DIR AND PDAL_CPP_LIBRARY AND PDAL_UTIL_LIBRARY AND PDAL_BIN)
+ SET(PDAL_FOUND TRUE)
+- SET(PDAL_LIBRARIES ${PDAL_CPP_LIBRARY} ${PDAL_UTIL_LIBRARY})
++ SET(PDAL_LIBRARIES pdalcpp pdal_util)
+ ENDIF (PDAL_INCLUDE_DIR AND PDAL_CPP_LIBRARY AND PDAL_UTIL_LIBRARY AND PDAL_BIN)
+
+ IF (PDAL_FOUND)
+@@ -60,8 +75,8 @@ IF (PDAL_FOUND)
+ OUTPUT_VARIABLE PDAL_VERSION_OUT )
+ STRING(REGEX REPLACE "^.*([0-9]+)\\.([0-9]+)\\.([0-9]+).*$" "\\1" PDAL_VERSION_MAJOR "${PDAL_VERSION_OUT}")
+ STRING(REGEX REPLACE "^.*([0-9]+)\\.([0-9]+)\\.([0-9]+).*$" "\\2" PDAL_VERSION_MINOR "${PDAL_VERSION_OUT}")
+- STRING(REGEX REPLACE "^.*([0-9]+)\\.([0-9]+)\\.([0-9]+).*$" "\\3" PDAL_VERSION_MICRO "${PDAL_VERSION_OUT}")
+- STRING(CONCAT PDAL_VERSION ${PDAL_VERSION_MAJOR} "." ${PDAL_VERSION_MINOR} "." ${PDAL_VERSION_MICRO})
++ STRING(REGEX REPLACE "^.*([0-9]+)\\.([0-9]+)\\.([0-9]+).*$" "\\3" PDAL_VERSION_PATCH "${PDAL_VERSION_OUT}")
++ STRING(CONCAT PDAL_VERSION ${PDAL_VERSION_MAJOR} "." ${PDAL_VERSION_MINOR} "." ${PDAL_VERSION_PATCH})
+
+ IF (NOT PDAL_FIND_QUIETLY)
+ MESSAGE(STATUS "Found PDAL: ${PDAL_LIBRARIES} (${PDAL_VERSION})")
+@@ -71,6 +86,16 @@ IF (PDAL_FOUND)
+ MESSAGE (FATAL_ERROR "PDAL version is too old (${PDAL_VERSION}). Use 1.7 or higher.")
+ ENDIF()
+
++ add_library(pdalcpp UNKNOWN IMPORTED)
++ target_link_libraries(pdalcpp INTERFACE ${PDAL_CPP_LIBRARY})
++ target_include_directories(pdalcpp INTERFACE ${PDAL_INCLUDE_DIR})
++ set_target_properties(pdalcpp PROPERTIES IMPORTED_LOCATION ${PDAL_CPP_LIBRARY})
++
++ add_library(pdal_util UNKNOWN IMPORTED)
++ target_link_libraries(pdal_util INTERFACE ${PDAL_UTIL_LIBRARY})
++ target_include_directories(pdal_util INTERFACE ${PDAL_INCLUDE_DIR})
++ set_target_properties(pdal_util PROPERTIES IMPORTED_LOCATION ${PDAL_UTIL_LIBRARY})
++
+ ELSE (PDAL_FOUND)
+ IF (PDAL_FIND_REQUIRED)
+ MESSAGE(FATAL_ERROR "Could not find PDAL")
+diff --git a/cmake_templates/qgsconfig.h.in b/cmake_templates/qgsconfig.h.in
+index 628a9c9b6aa1..800e65d3cfda 100644
+--- a/cmake_templates/qgsconfig.h.in
++++ b/cmake_templates/qgsconfig.h.in
+@@ -110,7 +110,7 @@
+ #define PDAL_VERSION_MINOR_INT ${PDAL_VERSION_MINOR}
+ #define PDAL_VERSION_MAJOR "${PDAL_VERSION_MAJOR}"
+ #define PDAL_VERSION_MINOR "${PDAL_VERSION_MINOR}"
+-#define PDAL_VERSION_MICRO "${PDAL_VERSION_MICRO}"
++#define PDAL_VERSION_MICRO "${PDAL_VERSION_PATCH}"
+
+ #cmakedefine HAVE_DRACO
+
+diff --git a/src/app/CMakeLists.txt b/src/app/CMakeLists.txt
+index 64f2cfd10355..71c26df216df 100644
+--- a/src/app/CMakeLists.txt
++++ b/src/app/CMakeLists.txt
+@@ -482,11 +482,8 @@ if(HAVE_OPENCL)
+ include_directories(SYSTEM ${OpenCL_INCLUDE_DIRS})
+ endif()
+
+-if (WITH_PDAL)
+- include_directories(SYSTEM ${PDAL_INCLUDE_DIR})
+- if(MSVC)
+- add_definitions(-DWIN32_LEAN_AND_MEAN)
+- endif()
++if (WITH_PDAL AND MSVC)
++ add_definitions(-DWIN32_LEAN_AND_MEAN)
+ endif()
+
+ if(ENABLE_MODELTEST)
+diff --git a/src/core/CMakeLists.txt b/src/core/CMakeLists.txt
+index 869428249e98..1f891d96e7a7 100644
+--- a/src/core/CMakeLists.txt
++++ b/src/core/CMakeLists.txt
+@@ -2093,13 +2093,8 @@ if (${QT_VERSION_BASE}Positioning_FOUND)
+ )
+ endif()
+
+-if (WITH_PDAL)
+- include_directories(SYSTEM
+- ${PDAL_INCLUDE_DIR}
+- )
+- if(MSVC)
+- add_definitions(-DWIN32_LEAN_AND_MEAN)
+- endif()
++if (WITH_PDAL AND MSVC)
++ add_definitions(-DWIN32_LEAN_AND_MEAN)
+ endif()
+
+ if (HAVE_OPENCL)
+diff --git a/src/gui/CMakeLists.txt b/src/gui/CMakeLists.txt
+index 016da19d4b83..708858399e0e 100644
+--- a/src/gui/CMakeLists.txt
++++ b/src/gui/CMakeLists.txt
+@@ -1599,11 +1599,8 @@ if (BUILD_WITH_QT6)
+ )
+ endif()
+
+-if (WITH_PDAL)
+- include_directories(SYSTEM ${PDAL_INCLUDE_DIR})
+- if(MSVC)
+- add_definitions(-DWIN32_LEAN_AND_MEAN)
+- endif()
++if (WITH_PDAL AND MSVC)
++ add_definitions(-DWIN32_LEAN_AND_MEAN)
+ endif()
+
+ target_include_directories(qgis_gui PUBLIC
+diff --git a/src/providers/pdal/CMakeLists.txt b/src/providers/pdal/CMakeLists.txt
+index 38509d1c235b..e8ea264e5597 100644
+--- a/src/providers/pdal/CMakeLists.txt
++++ b/src/providers/pdal/CMakeLists.txt
+@@ -149,10 +149,6 @@ include_directories(
+ ${CMAKE_SOURCE_DIR}/external/untwine/api
+ )
+
+-include_directories(SYSTEM
+- ${PDAL_INCLUDE_DIR}
+-)
+-
+ add_executable(untwine ${UNTWINE_SRCS} ${UNTWINE_HDRS})
+ target_compile_features(untwine PRIVATE cxx_std_17)
+
diff --git a/testing/qgis/APKBUILD b/testing/qgis/APKBUILD
new file mode 100644
index 00000000000..970d36bc9eb
--- /dev/null
+++ b/testing/qgis/APKBUILD
@@ -0,0 +1,337 @@
+# Contributor: Holger Jaekel <holger.jaekel@gmx.de>
+# Maintainer: Holger Jaekel <holger.jaekel@gmx.de>
+pkgname=qgis
+pkgver=3.28.12
+pkgrel=3
+pkgdesc="Geographic Information System (GIS) that supports vector, raster & database formats"
+url="https://qgis.org/"
+# armhf: py3-qscintilla qt5-qt3d-dev qt5-qtlocation-dev missing
+# ppc64le and riscv64: qt5-qtwebengine-dev missing
+# s390x: grass-gis-dev netcdf-dev qt5-qtwebengine-dev missing
+arch="all !armhf !ppc64le !riscv64 !s390x"
+license="GPL-2.0-or-later"
+depends="font-opensans font-cantarell qt5-qtbase-sqlite postgresql-client"
+makedepends="
+ bison
+ cmake
+ exiv2-dev
+ expat-dev
+ fcgi-dev
+ flex
+ gdal-dev
+ geos-dev
+ gsl-dev
+ grass-gis-dev
+ hdf5-dev
+ hdf5-static
+ libspatialindex-dev
+ libspatialite-dev
+ libzip-dev
+ netcdf-dev
+ opencl-dev
+ pdal-dev
+ postgresql-dev
+ proj-dev
+ protobuf-dev
+ py3-ply
+ py3-pyqt-builder
+ py3-qscintilla
+ py3-qt5
+ py3-sip
+ python3-dev
+ qca-dev
+ qscintilla-dev
+ qt5-qt3d-dev
+ qt5-qtbase-dev
+ qt5-qtlocation-dev
+ qt5-qtmultimedia-dev
+ qt5-qtserialport-dev
+ qt5-qtsvg-dev
+ qt5-qttools-dev
+ qt5-qtwebengine-dev
+ qtkeychain-dev
+ qwt-dev
+ samurai
+ sqlite-dev
+ unixodbc-dev
+ yarn
+ "
+checkdepends="py3-nose2 py3-yaml py3-gdal py3-psycopg2 py3-oauthlib py3-owslib gdal-tools gdal-driver-all py3-mock py3-termcolor qpdf poppler-utils xvfb-run firefox bash"
+subpackages="
+ $pkgname-dev
+ $pkgname-doc
+ $pkgname-lang
+ $pkgname-server
+ $pkgname-grass
+ py3-$pkgname:py3
+ "
+options="!check" # test failures on builders
+source="https://qgis.org/downloads/qgis-$pkgver.tar.bz2
+ 10-exiv2-0.28.patch
+ 20-protobuf-23.patch
+ 30-qgstyle-infinite-loop.patch
+ 40-pdal.patch
+ "
+langdir="/usr/share/qgis/i18n"
+
+build() {
+ if [ "$CBUILD" != "$CHOST" ]; then
+ CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=MinSizeRel \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DQGIS_CGIBIN_SUBDIR=libexec/qgis \
+ -DBINDINGS_GLOBAL_INSTALL=TRUE \
+ -DBUILD_TESTING="$(want_check && echo TRUE || echo FALSE)" \
+ -DENABLE_TESTS="$(want_check && echo TRUE || echo FALSE)" \
+ -DWITH_3D=TRUE \
+ -DWITH_ANALYSIS=TRUE \
+ -DWITH_AUTH=TRUE \
+ -DWITH_BINDINGS=TRUE \
+ -DWITH_COPC=TRUE \
+ -DWITH_DESKTOP=TRUE \
+ -DWITH_EPT=TRUE \
+ -DWITH_GUI=TRUE \
+ -DWITH_GRASS8=TRUE \
+ -DGRASS_PREFIX8="$(pkg-config --variable=prefix grass)" \
+ -DWITH_HANA=TRUE \
+ -DWITH_ORACLE=FALSE \
+ -DWITH_PDAL=TRUE \
+ -DWITH_POSTGRESQL=TRUE \
+ -DWITH_QGIS_PROCESS=TRUE \
+ -DWITH_QSPATIALITE=TRUE \
+ -DWITH_SERVER=TRUE \
+ -DWITH_SERVER_LANDINGPAGE_WEBAPP=TRUE \
+ -DWITH_CUSTOM_WIDGETS=TRUE \
+ -DQGIS_MANUAL_SUBDIR=share/man \
+ -DWITH_QTWEBKIT=FALSE \
+ -DWITH_QWTPOLAR=TRUE \
+ -DQWTPOLAR_LIBRARY=/usr/lib/libqwt.so \
+ -DQWTPOLAR_INCLUDE_DIR=/usr/include/qwt \
+ -DCMAKE_CXX_FLAGS="$CXXFLAGS -DQWT_POLAR_VERSION=0x060200" \
+ -DWITH_INTERNAL_QWTPOLAR=FALSE \
+ $CMAKE_CROSSOPTS
+ cmake --build build
+}
+
+check() {
+ local test_excludes="(
+ logGitStatus$|
+ checkGitStatus$|
+ ProcessingQgisAlgorithmsTestPt1$|
+ ProcessingQgisAlgorithmsTestPt4$|
+ ProcessingGdalAlgorithmsRasterTest$|
+ ProcessingGdalAlgorithmsVectorTest$|
+ ProcessingGrass7AlgorithmsImageryTest$|
+ ProcessingGrass7AlgorithmsRasterTestPt1$|
+ ProcessingGrass7AlgorithmsRasterTestPt2$|
+ ProcessingOtbAlgorithmsTest$|
+ test_core_authconfig$|
+ test_core_authmanager$|
+ test_core_blendmodes$|
+ test_core_compositionconverter$|
+ test_core_dataitem$|
+ test_core_dxfexport$|
+ test_core_expression$|
+ test_core_gdalprovider$|
+ test_core_gdalutils$|
+ test_core_labelingengine$|
+ test_core_layoutgeopdfexport$|
+ test_core_layoutmap$|
+ test_core_layoutmapoverview$|
+ test_core_layoutpicture$|
+ test_core_layouttable$|
+ test_core_maprendererjob$|
+ test_core_maprotation$|
+ test_core_overlayexpression$|
+ test_core_projectstorage$|
+ test_core_rasterlayer$|
+ test_core_rastersublayer$|
+ test_core_openclutils$|
+ test_core_coordinatereferencesystem$|
+ test_gui_filedownloader$|
+ test_gui_layoutgui$|
+ test_gui_queryresultwidget$|
+ test_3d_3drendering$|
+ test_analysis_processingalgspt2$|
+ test_analysis_processing$|
+ test_geometry_checker_geometrychecks$|
+ test_provider_wcsprovider$|
+ test_provider_eptprovider$|
+ test_app_gpsinformationwidget$|
+ PyQgsAnnotation$|
+ PyQgsAuthenticationSystem$|
+ PyQgsBlendModes$|
+ PyQgsBlockingProcess$|
+ PyQgsConnectionRegistry$|
+ PyQgsDatumTransform$|
+ PyQgsExpression$|
+ PyQgsExternalStorageWebDAV$|
+ PyQgsFillSymbolLayers$|
+ PyQgsFileUtils$|
+ PyQgsGeometryTest$|
+ PyQgsHashLineSymbolLayer$|
+ PyQgsInterpolatedLineSymbolLayer$|
+ PyQgsLayerMetadataProviderPython$|
+ PyQgsLayoutExporter$|
+ PyQgsLayoutHtml$|
+ PyQgsLayoutLegend$|
+ PyQgsLayoutMapOverview$|
+ PyQgsLineSymbolLayers$|
+ PyQgsMapClippingRegion$|
+ PyQgsMapLayerComboBox$|
+ PyQgsMapLayerProxyModel$|
+ PyQgsMapUnitScale$|
+ PyQgsMergedFeatureRenderer$|
+ PyQgsNoApplication$|
+ PyQgsPalLabelingPlacement$|
+ PyQgsProcessExecutablePt1$|
+ PyQgsProcessExecutablePt2$|
+ PyQgsProviderConnectionGpkg$|
+ PyQgsProviderConnectionSpatialite$|
+ PyQgsRasterFileWriter$|
+ PyQgsRasterLayerRenderer$|
+ PyQgsShapefileProvider$|
+ PyQgsSvgCache$|
+ PyQgsTextRenderer$|
+ PyQgsOGRProvider$|
+ PyQgsSpatialiteProvider$|
+ PyQgsStyleModel$|
+ PyQgsVectorFileWriter$|
+ PyQgsVectorLayerEditBuffer$|
+ PyQgsVectorLayerNamedStyle$|
+ PyQgsVectorLayerProfileGenerator$|
+ PyQgsDBManagerGpkg$|
+ PyQgsSelectiveMasking$|
+ PyQgsPalLabelingServer$|
+ PyQgsAppStartup$|
+ PyQgsServerWMS$|
+ PyQgsServerWMSGetFeatureInfo$|
+ PyQgsServerWMSGetMap$|
+ PyQgsServerWMSGetLegendGraphic$|
+ PyQgsServerWMSGetPrint$|
+ PyQgsServerWMSGetPrintExtra$|
+ PyQgsServerWMSGetPrintOutputs$|
+ PyQgsServerWMSDimension$|
+ PyQgsServerProjectUtils$|
+ PyQgsServerWFS$|
+ PyQgsServerLocaleOverride$|
+ PyQgsServerConfigCache$|
+ qgis_sipify$|
+ qgis_sip_include$|
+ qgis_sip_uptodate$|
+ ProcessingQgisAlgorithmsTestPt2$|
+ ProcessingQgisAlgorithmsTestPt3$|
+ ProcessingGrass7AlgorithmsVectorTest$|
+ test_core_application$|
+ test_core_callout$|
+ test_core_centroidfillsymbol$|
+ test_core_filledmarker$|
+ test_core_gradients$|
+ test_core_layoutitem$|
+ test_core_linefillsymbol$|
+ test_core_meshlayer$|
+ test_core_meshlayerrenderer$|
+ test_core_networkaccessmanager$|
+ test_core_pointcloudexpression$|
+ test_core_pointcloudlayerexporter$|
+ test_core_pointpatternfillsymbol$|
+ test_core_rastercontourrenderer$|
+ test_core_simplemarker$|
+ test_core_svgmarker$|
+ test_gui_processinggui$|
+ test_3d_layout3dmap$|
+ test_3d_tessellator$|
+ test_analysis_processingalgspt1$|
+ test_analysis_meshcalculator$|
+ test_analysis_meshcontours$|
+ test_analysis_triangulation$|
+ test_provider_wmsprovider$|
+ test_provider_copcprovider$|
+ qgis_grassprovidertest8$|
+ test_app_fieldcalculator$|
+ test_app_maptoolcircularstring$|
+ test_app_maptooleditmesh$|
+ test_app_vertextool$|
+ PyQgsAnimatedMarkerSymbolLayer$|
+ PyQgsEmbeddedSymbolRenderer$|
+ PyQgsExpressionBuilderWidget$|
+ PyQgsGdalProvider$|
+ PyQgsGroupLayer$|
+ PyQgsHistoryProviderRegistry$|
+ PyQgsLayoutMap$|
+ PyQgsLayoutPicture$|
+ PyQgsPalLabelingCanvas$|
+ PyQgsPalLabelingLayout$|
+ PyQgsPointCloudAttributeByRampRenderer$|
+ PyQgsPointCloudClassifiedRenderer$|
+ PyQgsPointCloudLayerProfileGenerator$|
+ PyQgsPointCloudRgbRenderer$|
+ PyQgsProcessingAlgRunner$|
+ TestQgsRandomMarkerSymbolLayer$|
+ PyQgsRasterLayer$|
+ PyQgsRasterResampler$|
+ PyQgsWFSProvider$|
+ PyQgsServerPlugins$|
+ PyQgsServerApi$|
+ test_core_tiledownloadmanager$|
+ test_app_qgisappclipboard$|
+ PyQgsServerCacheManager$
+ )"
+ local test_excludes_regexp
+ local testcase; for testcase in $test_excludes
+ do
+ test_excludes_regexp=$test_excludes_regexp$testcase
+ done
+ xvfb-run -a -s "-screen 0 1280x1024x24 -dpi 96" ctest -j 1 --test-dir build --output-on-failure --timeout 15000 -E $test_excludes_regexp
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+dev() {
+ default_dev
+ amove usr/share/qgis/FindQGIS.cmake
+ amove usr/lib/qt5/plugins/designer/libqgis_customwidgets.so*
+}
+
+server() {
+ pkgdesc="FCGI-based OGC web map server"
+ amove usr/bin/qgis_mapserver
+ amove usr/lib/qgis/server
+ amove usr/lib/libqgis_server.so*
+ amove usr/libexec/qgis
+ amove usr/lib/python3*/site-packages/qgis/server
+ amove usr/lib/python3*/site-packages/qgis/_server.so
+ amove usr/share/qgis/resources/server
+}
+
+grass() {
+ pkgdesc="GRASS Support Libraries for QGIS"
+ amove usr/lib/libqgisgrass*.so.*
+ amove usr/lib/qgis/plugins/libplugin_grass8.so
+ amove usr/lib/qgis/plugins/libprovider_grass8.so
+ amove usr/lib/qgis/plugins/libprovider_grassraster8.so
+ amove usr/lib/qgis/grass/
+ amove usr/share/qgis/grass/
+}
+
+py3() {
+ pkgdesc="Python integration and plug-ins for QGIS"
+ depends="py3-owslib py3-pyaml py3-gdal py3-httplib2 py3-jinja2
+ py3-matplotlib py3-psycopg2 py3-pygments py3-qscintilla"
+ amove usr/lib/libqgispython.so*
+ amove usr/share/qgis/python/
+ amove usr/lib/python3*/site-packages/qgis/
+ amove usr/lib/python3*/site-packages/PyQt5/uic/widget-plugins/
+}
+
+sha512sums="
+0c5a095ba1c66391bc7feb5ac91595e4de29889c3921e6a6123a8446c85f5a81be32ef799e51c6483f795e2abd90367e05f6662a6eb6c76dea62488a41566cf7 qgis-3.28.12.tar.bz2
+47cec7b889a2b12f321e8727b06b5edc24a5bb5947dd98671a9aebbbd17adffa515769afcc0e05911a2754b36e78acf0cea2e074b1316beb48a72f78b860a43a 10-exiv2-0.28.patch
+a93bbd7655ded2aae734356ed06346f4508c7a9da916e424892abbdc88c8c1818bd53e818c1a5c41fb14f2bf9bc5309b11b331021ba44b5b4e530b942227ad79 20-protobuf-23.patch
+ab9fe3afac98abbec5007c9c9604c9e3bef5e576f695a8b0a73a5fe29b3c07baec3f46ef4503d4f1df8e5587735c7565ae583f312167bd9c7e20554f88bb0bff 30-qgstyle-infinite-loop.patch
+1beb94b0ccfd1f990c4cd2ed66793ac878526670c1295588539c026e214237c61a4f9f2d3474cbeb6f59f55138ab997fa4f02cf358f36687dd11666527d7616a 40-pdal.patch
+"
diff --git a/testing/qjackctl/APKBUILD b/testing/qjackctl/APKBUILD
deleted file mode 100644
index b03dd4b234a..00000000000
--- a/testing/qjackctl/APKBUILD
+++ /dev/null
@@ -1,38 +0,0 @@
-# Contributor: David Demelier <markand@malikania.fr>
-# Maintainer: David Demelier <markand@malikania.fr>
-pkgname=qjackctl
-pkgver=0.9.4
-pkgrel=0
-pkgdesc="GUI interface for JACK"
-url="https://qjackctl.sourceforge.io"
-arch="all"
-license="GPL-2.0-or-later"
-makedepends="
- alsa-lib-dev
- cmake
- dbus-dev
- jack-dev
- portaudio-dev
- qt5-qtbase-dev
- qt5-qttools-dev
-"
-subpackages="$pkgname-doc"
-source="https://sourceforge.net/projects/qjackctl/files/qjackctl/$pkgver/qjackctl-$pkgver.tar.gz
- "
-options="!check" # No tests.
-
-build() {
- cmake -B build \
- -DCMAKE_BUILD_TYPE=None \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-
-sha512sums="
-ce808242d8bacadf4e267bdf75c20b53601f54c8a4eb0b5116653afa7bcdd17e99ac4f878d4ec78844194e13623a804850cf8ea7e12430806caad4fe986115c7 qjackctl-0.9.4.tar.gz
-"
diff --git a/testing/qmk-cli/APKBUILD b/testing/qmk-cli/APKBUILD
index 34545e20f53..0cb5927f5a4 100644
--- a/testing/qmk-cli/APKBUILD
+++ b/testing/qmk-cli/APKBUILD
@@ -2,38 +2,63 @@
# Contributor: Nulo <alpine@nulo.in>
# Maintainer: Galen Abell <galen@galenabell.com>
pkgname=qmk-cli
-pkgver=1.1.0
-pkgrel=0
+pkgver=1.1.5
+pkgrel=1
+# latest change to util/udev/50-qmk.rules
+_qmk_firmware=d915ab59ac2d05062f931a36463c1a84b57a2438
pkgdesc="QMK helper CLI"
url="https://github.com/qmk/qmk_cli"
-arch="noarch"
+# archs on which cross embedded compilers are available
+arch="x86_64 aarch64 ppc64le x86"
license="MIT"
-# py3-hidapi is not a dependency of qmk-cli but is required to work with
-# a qmk_firmware repository
depends="
- python3
+ avr-libc
+ avrdude
+ dfu-programmer
+ dfu-util
+ git
+ gcc-arm-none-eabi
+ gcc-avr
+ newlib-arm-none-eabi
py3-dotty-dict
py3-hidapi
py3-hjson
py3-jsonschema
py3-milc
+ py3-pillow
py3-pygments
+ py3-pyserial
py3-usb
"
-makedepends="py3-setuptools py3-build py3-installer py3-wheel"
+makedepends="py3-setuptools py3-gpep517 py3-installer py3-wheel"
options="!check" # no tests
-source="$pkgname-$pkgver.tar.gz::https://github.com/qmk/qmk_cli/archive/$pkgver.tar.gz"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/qmk/qmk_cli/archive/refs/tags/$pkgver.tar.gz
+ qmk-firmware-$_qmk_firmware.tar.gz::https://github.com/qmk/qmk_firmware/archive/$_qmk_firmware.tar.gz
+ add-plugdev.patch
+ "
builddir="$srcdir/qmk_cli-$pkgver"
+prepare() {
+ mv "$srcdir"/qmk_firmware-$_qmk_firmware/util/udev/50-qmk.rules "$builddir"/
+ default_prepare
+}
+
build() {
- python3 -m build --skip-dependency-check --no-isolation --wheel .
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 -m installer -d "$pkgdir" --compile-bytecode 0 \
- dist/qmk-$pkgver-py2.py3-none-any.whl
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+ install -Dm644 50-qmk.rules \
+ -t "$pkgdir"/usr/lib/udev/rules.d/
}
sha512sums="
-d544f8f9801df56a7d1774850cfd3135cdd72f05f61e80720be415d805526c3e0b923bd051dce4b2e51da589a5ea240a7e8ac531d73c41dec7dcc714c4a7c569 qmk-cli-1.1.0.tar.gz
+89ad029216b4c5ae38bc564f0d04c02565d7caca972a70491da8a84d43797e0f54d48de7bada1806baefbc471ae0fdfe886cc2bc0ea15b7186eaeaba2de621f0 qmk-cli-1.1.5.tar.gz
+2af187f8d5823a39d2eb5f350b93e94bc5546242cc0d4b5c71a403c1352020a41f296022f9c79bb8488a6555a00052a5f3d999018d264527ae0e24b2311be9c0 qmk-firmware-d915ab59ac2d05062f931a36463c1a84b57a2438.tar.gz
+96389af3a9db98b3904dfa9811f95a20bb9c763667af731eb23262ffca37bf153db59ce83afaee054e7bfbaae2011297aa347a1cd1cb9e3bc3f95348a0b1c5de add-plugdev.patch
"
diff --git a/testing/qmk-cli/add-plugdev.patch b/testing/qmk-cli/add-plugdev.patch
new file mode 100644
index 00000000000..08a8baaa7a2
--- /dev/null
+++ b/testing/qmk-cli/add-plugdev.patch
@@ -0,0 +1,120 @@
+--- a/50-qmk.rules
++++ b/50-qmk.rules
+@@ -1,85 +1,85 @@
+ # Atmel DFU
+ ### ATmega16U2
+-SUBSYSTEMS=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fef", TAG+="uaccess"
++SUBSYSTEMS=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fef", GROUP="plugdev", TAG+="uaccess"
+ ### ATmega32U2
+-SUBSYSTEMS=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ff0", TAG+="uaccess"
++SUBSYSTEMS=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ff0", GROUP="plugdev", TAG+="uaccess"
+ ### ATmega16U4
+-SUBSYSTEMS=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ff3", TAG+="uaccess"
++SUBSYSTEMS=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ff3", GROUP="plugdev", TAG+="uaccess"
+ ### ATmega32U4
+-SUBSYSTEMS=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ff4", TAG+="uaccess"
++SUBSYSTEMS=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ff4", GROUP="plugdev", TAG+="uaccess"
+ ### AT90USB64
+-SUBSYSTEMS=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ff9", TAG+="uaccess"
++SUBSYSTEMS=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ff9", GROUP="plugdev", TAG+="uaccess"
+ ### AT90USB162
+-SUBSYSTEMS=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ffa", TAG+="uaccess"
++SUBSYSTEMS=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ffa", GROUP="plugdev", TAG+="uaccess"
+ ### AT90USB128
+-SUBSYSTEMS=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ffb", TAG+="uaccess"
++SUBSYSTEMS=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ffb", GROUP="plugdev", TAG+="uaccess"
+
+ # Input Club
+-SUBSYSTEMS=="usb", ATTRS{idVendor}=="1c11", ATTRS{idProduct}=="b007", TAG+="uaccess"
++SUBSYSTEMS=="usb", ATTRS{idVendor}=="1c11", ATTRS{idProduct}=="b007", GROUP="plugdev", TAG+="uaccess"
+
+ # STM32duino
+-SUBSYSTEMS=="usb", ATTRS{idVendor}=="1eaf", ATTRS{idProduct}=="0003", TAG+="uaccess"
++SUBSYSTEMS=="usb", ATTRS{idVendor}=="1eaf", ATTRS{idProduct}=="0003", GROUP="plugdev", TAG+="uaccess"
+ # STM32 DFU
+-SUBSYSTEMS=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="df11", TAG+="uaccess"
++SUBSYSTEMS=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="df11", GROUP="plugdev", TAG+="uaccess"
+
+ # BootloadHID
+-SUBSYSTEMS=="usb", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="05df", TAG+="uaccess"
++SUBSYSTEMS=="usb", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="05df", GROUP="plugdev", TAG+="uaccess"
+
+ # USBAspLoader
+-SUBSYSTEMS=="usb", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="05dc", TAG+="uaccess"
++SUBSYSTEMS=="usb", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="05dc", GROUP="plugdev", TAG+="uaccess"
+
+ # USBtinyISP
+-SUBSYSTEMS=="usb", ATTRS{idVendor}=="1782", ATTRS{idProduct}=="0c9f", TAG+="uaccess"
++SUBSYSTEMS=="usb", ATTRS{idVendor}=="1782", ATTRS{idProduct}=="0c9f", GROUP="plugdev", TAG+="uaccess"
+
+ # ModemManager should ignore the following devices
+ # Atmel SAM-BA (Massdrop)
+-SUBSYSTEMS=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="6124", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
++SUBSYSTEMS=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="6124", GROUP="plugdev", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
+
+ # Caterina (Pro Micro)
+ ## pid.codes shared PID
+ ### Keyboardio Atreus 2 Bootloader
+-SUBSYSTEMS=="usb", ATTRS{idVendor}=="1209", ATTRS{idProduct}=="2302", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
++SUBSYSTEMS=="usb", ATTRS{idVendor}=="1209", ATTRS{idProduct}=="2302", GROUP="plugdev", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
+ ## Spark Fun Electronics
+ ### Pro Micro 3V3/8MHz
+-SUBSYSTEMS=="usb", ATTRS{idVendor}=="1b4f", ATTRS{idProduct}=="9203", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
++SUBSYSTEMS=="usb", ATTRS{idVendor}=="1b4f", ATTRS{idProduct}=="9203", GROUP="plugdev", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
+ ### Pro Micro 5V/16MHz
+-SUBSYSTEMS=="usb", ATTRS{idVendor}=="1b4f", ATTRS{idProduct}=="9205", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
++SUBSYSTEMS=="usb", ATTRS{idVendor}=="1b4f", ATTRS{idProduct}=="9205", GROUP="plugdev", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
+ ### LilyPad 3V3/8MHz (and some Pro Micro clones)
+-SUBSYSTEMS=="usb", ATTRS{idVendor}=="1b4f", ATTRS{idProduct}=="9207", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
++SUBSYSTEMS=="usb", ATTRS{idVendor}=="1b4f", ATTRS{idProduct}=="9207", GROUP="plugdev", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
+ ## Pololu Electronics
+ ### A-Star 32U4
+-SUBSYSTEMS=="usb", ATTRS{idVendor}=="1ffb", ATTRS{idProduct}=="0101", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
++SUBSYSTEMS=="usb", ATTRS{idVendor}=="1ffb", ATTRS{idProduct}=="0101", GROUP="plugdev", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
+ ## Arduino SA
+ ### Leonardo
+-SUBSYSTEMS=="usb", ATTRS{idVendor}=="2341", ATTRS{idProduct}=="0036", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
++SUBSYSTEMS=="usb", ATTRS{idVendor}=="2341", ATTRS{idProduct}=="0036", GROUP="plugdev", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
+ ### Micro
+-SUBSYSTEMS=="usb", ATTRS{idVendor}=="2341", ATTRS{idProduct}=="0037", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
++SUBSYSTEMS=="usb", ATTRS{idVendor}=="2341", ATTRS{idProduct}=="0037", GROUP="plugdev", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
+ ## Adafruit Industries LLC
+ ### Feather 32U4
+-SUBSYSTEMS=="usb", ATTRS{idVendor}=="239a", ATTRS{idProduct}=="000c", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
++SUBSYSTEMS=="usb", ATTRS{idVendor}=="239a", ATTRS{idProduct}=="000c", GROUP="plugdev", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
+ ### ItsyBitsy 32U4 3V3/8MHz
+-SUBSYSTEMS=="usb", ATTRS{idVendor}=="239a", ATTRS{idProduct}=="000d", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
++SUBSYSTEMS=="usb", ATTRS{idVendor}=="239a", ATTRS{idProduct}=="000d", GROUP="plugdev", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
+ ### ItsyBitsy 32U4 5V/16MHz
+-SUBSYSTEMS=="usb", ATTRS{idVendor}=="239a", ATTRS{idProduct}=="000e", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
++SUBSYSTEMS=="usb", ATTRS{idVendor}=="239a", ATTRS{idProduct}=="000e", GROUP="plugdev", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
+ ## dog hunter AG
+ ### Leonardo
+-SUBSYSTEMS=="usb", ATTRS{idVendor}=="2a03", ATTRS{idProduct}=="0036", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
++SUBSYSTEMS=="usb", ATTRS{idVendor}=="2a03", ATTRS{idProduct}=="0036", GROUP="plugdev", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
+ ### Micro
+-SUBSYSTEMS=="usb", ATTRS{idVendor}=="2a03", ATTRS{idProduct}=="0037", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
++SUBSYSTEMS=="usb", ATTRS{idVendor}=="2a03", ATTRS{idProduct}=="0037", GROUP="plugdev", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
+
+ # hid_listen
+ KERNEL=="hidraw*", MODE="0660", GROUP="plugdev", TAG+="uaccess", TAG+="udev-acl"
+
+ # hid bootloaders
+ ## QMK HID
+-SUBSYSTEMS=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2067", TAG+="uaccess"
++SUBSYSTEMS=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2067", GROUP="plugdev", TAG+="uaccess"
+ ## PJRC's HalfKay
+-SUBSYSTEMS=="usb", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="0478", TAG+="uaccess"
++SUBSYSTEMS=="usb", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="0478", GROUP="plugdev", TAG+="uaccess"
+
+ # APM32 DFU
+-SUBSYSTEMS=="usb", ATTRS{idVendor}=="314b", ATTRS{idProduct}=="0106", TAG+="uaccess"
++SUBSYSTEMS=="usb", ATTRS{idVendor}=="314b", ATTRS{idProduct}=="0106", GROUP="plugdev", TAG+="uaccess"
+
+ # GD32V DFU
+-SUBSYSTEMS=="usb", ATTRS{idVendor}=="28e9", ATTRS{idProduct}=="0189", TAG+="uaccess"
++SUBSYSTEMS=="usb", ATTRS{idVendor}=="28e9", ATTRS{idProduct}=="0189", GROUP="plugdev", TAG+="uaccess"
+
+ # WB32 DFU
+-SUBSYSTEMS=="usb", ATTRS{idVendor}=="342d", ATTRS{idProduct}=="dfa0", TAG+="uaccess"
++SUBSYSTEMS=="usb", ATTRS{idVendor}=="342d", ATTRS{idProduct}=="dfa0", GROUP="plugdev", TAG+="uaccess"
diff --git a/testing/qml-asteroid/APKBUILD b/testing/qml-asteroid/APKBUILD
index 9946a82b2a4..9cef6c3e5dc 100644
--- a/testing/qml-asteroid/APKBUILD
+++ b/testing/qml-asteroid/APKBUILD
@@ -1,9 +1,11 @@
# Contributor: Bart Ribbers <bribbers@disroot.org>
# Maintainer: Bart Ribbers <bribbers@disroot.org>
+
+# The group tag is just to easily find this APKBUILD by some scripts for automation
+# group=asteroid
pkgname=qml-asteroid
-pkgver=0_git20210517
-pkgrel=1
-_commit="8945fa436e3fbb646bc35a9aa60c430323d7f2a7"
+pkgver=2.0.0
+pkgrel=0
pkgdesc="QML components, styles and demos for AsteroidOS"
url="https://github.com/AsteroidOS/qml-asteroid"
# armhf blocked by qt5-qtvirtualkeyboard
@@ -22,14 +24,14 @@ depends_dev="
makedepends="$depends_dev
extra-cmake-modules
mapplauncherd-qt-dev
+ samurai
"
subpackages="$pkgname-dbg $pkgname-dev"
-source="https://github.com/asteroidos/qml-asteroid/archive/$_commit/qml-asteroid-$_commit.tar.gz"
-builddir="$srcdir/$pkgname-$_commit"
+source="$pkgname-$pkgver.tar.gz::https://github.com/asteroidos/qml-asteroid/archive/refs/tags/$pkgver.tar.gz"
build() {
- cmake -B build \
- -DCMAKE_BUILD_TYPE=None \
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=MinSizeRel \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
-DINSTALL_QML_IMPORT_DIR=/usr/lib/qt5/qml
@@ -37,8 +39,7 @@ build() {
}
check() {
- cd build
- CTEST_OUTPUT_ON_FAILURE=TRUE ctest
+ ctest --test-dir build --output-on-failure
}
package() {
@@ -53,5 +54,5 @@ dev() {
}
sha512sums="
-b0bfc7f9ab090b319beba86091c987521f5d9a039c21e51c95a0336e0acf515bed88eb97fa42521daedfa5b45dfc7c3a81365eacd980c54ebaf311a2a573fadb qml-asteroid-8945fa436e3fbb646bc35a9aa60c430323d7f2a7.tar.gz
+6bce67a1fe66cf88d43dc3c27fe46421bef4b0f6f8f52deb25717590deb529fa2d48a1705517998e4222eecf00038a4ff2a50f5d8d28babd0bd9a1d72fc33bf0 qml-asteroid-2.0.0.tar.gz
"
diff --git a/testing/qoi/APKBUILD b/testing/qoi/APKBUILD
new file mode 100644
index 00000000000..09655660c00
--- /dev/null
+++ b/testing/qoi/APKBUILD
@@ -0,0 +1,40 @@
+# Contributor: Elly Fong-Jones <elly@elly.town>
+# Maintainer: Elly Fong-Jones <elly@elly.town>
+pkgname=qoi
+pkgver=0.0.0_git20230312
+_commit=f6dffaf1e8170cdd79945a4fb60f6403e447e020
+pkgrel=0
+pkgdesc="Quite OK Image format reference implementation"
+url="https://github.com/phoboslab/qoi"
+arch="all"
+license="MIT"
+depends_dev="$pkgname=$pkgver-r$pkgrel"
+makedepends="stb" # for qoiconv
+subpackages="qoiconv qoi-dev"
+source="https://github.com/phoboslab/qoi/archive/$_commit.tar.gz"
+builddir="$srcdir/qoi-$_commit"
+options="!check" # no tests
+
+build() {
+ # pass through ldflags, single-file
+ make CFLAGS="$CFLAGS $LDFLAGS" qoiconv
+}
+
+package() {
+ depends="qoiconv=$pkgver-r$pkgrel"
+ install -Dm644 qoi.h -t "$pkgdir"/usr/include
+
+ # note that qoibench is not built: it is a tool for benchmarking qoi
+ # compression vs libpng, so it adds a dep on libpng, and is more useful
+ # for development of qoi than users of qoi.
+ install -Dm755 qoiconv -t "$pkgdir"/usr/bin
+}
+
+qoiconv() {
+ pkgdesc="$pkgdesc (qoiconv utility)"
+ amove usr/bin/qoiconv
+}
+
+sha512sums="
+4e19584895232fa5b3a06598cc272fc51b58c2a59006f9443afdb8f728b9724ae57a3c6c6937c684cc1b2e7e8f9c58785b1933a3b5321fd7cd34651e884f76d7 f6dffaf1e8170cdd79945a4fb60f6403e447e020.tar.gz
+"
diff --git a/testing/qownnotes/APKBUILD b/testing/qownnotes/APKBUILD
index ab06862115a..a057768e1de 100644
--- a/testing/qownnotes/APKBUILD
+++ b/testing/qownnotes/APKBUILD
@@ -1,17 +1,33 @@
# Contributor: Francesco Colista <fcolista@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=qownnotes
-pkgver=22.5.0
+pkgver=23.6.6
pkgrel=0
pkgdesc="Plain-text file markdown note taking with Nextcloud/ownCloud integration"
url="https://www.qownnotes.org/"
arch="all !ppc64le !s390x !armhf" # armhf blocked by qt5-qtdeclarative
license="GPL-2.0-only"
-makedepends="qt5-qtdeclarative-dev qt5-qtsvg-dev qt5-qtxmlpatterns-dev
- qt5-qttools-dev qt5-qtbase-dev qt5-qtwebsockets-dev botan-dev
- qt5-qtx11extras-dev"
+makedepends="
+ botan-dev
+ cmake
+ md4c-dev
+ qt5-qtbase-dev
+ qt5-qtdeclarative-dev
+ qt5-qtsvg-dev
+ qt5-qttools-dev
+ qt5-qtwebsockets-dev
+ qt5-qtx11extras-dev
+ qt5-qtxmlpatterns-dev
+ samurai
+ "
subpackages="$pkgname-lang"
-source="https://download.tuxfamily.org/qownnotes/src/qownnotes-$pkgver.tar.xz"
+source="https://download.tuxfamily.org/qownnotes/src/qownnotes-$pkgver.tar.xz
+ botan.patch
+ exclude.patch
+ md4c.patch
+ no-werror.patch
+ "
+options="!check" # no tests
prepare() {
default_prepare
@@ -19,19 +35,16 @@ prepare() {
}
build() {
- /usr/lib/qt5/bin/qmake \
- QMAKE_CFLAGS_RELEASE="$CFLAGS" \
- QMAKE_CXXFLAGS_RELEASE="$CXXFLAGS" \
- QMAKE_LFLAGS_RELEASE="$LDFLAGS"
- make
-}
-
-check() {
- make check
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=None \
+ -DBUILD_WITH_SYSTEM_BOTAN=ON
+ cmake --build build
}
package() {
- install -D -m755 QOwnNotes "$pkgdir/usr/bin/QOwnNotes"
+ DESTDIR="$pkgdir" cmake --install build
+ install -D -m755 build/QOwnNotes "$pkgdir/usr/bin/QOwnNotes"
install -D -m644 PBE.QOwnNotes.desktop "$pkgdir/usr/share/applications/PBE.QOwnNotes.desktop"
install -D -m644 "images/icons/128x128/apps/QOwnNotes.png" "$pkgdir/usr/share/pixmaps/QOwnNotes.png"
for format in 16x16 24x24 32x32 48x48 64x64 96x96 128x128 256x256 512x512 ; do
@@ -40,10 +53,16 @@ package() {
}
lang() {
- install -d "$subpkgdir/usr/share/QOwnNotes/languages/"
- install -D -m644 "$builddir"/languages/*.qm "$subpkgdir/usr/share/QOwnNotes/languages/"
+ pkgdesc="Translations for $pkgname"
+ install_if="$pkgname=$pkgver-r$pkgrel lang"
+
+ amove usr/share/qt5/translations
}
sha512sums="
-da4b407160aa68af5cf04ab9bc3d4cca07afe3211514c4b9360e7330c1d58dc906fb8b196a9d89f3861a214e68e4b8cf1487e34339246a0a935d7e09d317019d qownnotes-22.5.0.tar.xz
+c64460a92dd4d250d69dacecc7d6f74c248c51909cfec19603e56ee12fea77de86ad38155cee5d3e48bf52422f3f7e3efe1aaa03c8260f35d901350d2094ac8e qownnotes-23.6.6.tar.xz
+81b3171f826a310be0e78e56f9f9780a226b4aea5a81ddd7d3cdc90e3a6d460c242a20766e4db72df1b0a6a99edced04f85f2fa3d939e5f7969a624044365e33 botan.patch
+4fe0cb83bc32b3fdbd31ed97a1c228a558579daabb0a5aee7c2b6a357256e04fc90cdbf7dde8897670130737bda5db2de0db664f1c1407875b2012f22ec038be exclude.patch
+f8a279b4485aad1649cb1941761cec385be035affd8acc71b071f368461593dfe787c8fc7080d9e0b18b5dceac2a897a0b4f8e8345d6f6301a244ed4c14386ff md4c.patch
+4129d840d17046015947c55c382db26938bfa4605a8737d69161eff6e44adaa06cd8c908e411f754595fe204e46a801ec1e8dc79121eab62dfd631ff6998fce9 no-werror.patch
"
diff --git a/testing/qownnotes/botan.patch b/testing/qownnotes/botan.patch
new file mode 100644
index 00000000000..cb01653cdf8
--- /dev/null
+++ b/testing/qownnotes/botan.patch
@@ -0,0 +1,17 @@
+link to system botan
+--
+diff --git a/libraries/botan/CMakeLists.txt b/libraries/botan/CMakeLists.txt
+index 4836a38..97ad24a 100644
+--- a/libraries/botan/CMakeLists.txt
++++ b/libraries/botan/CMakeLists.txt
+@@ -18,7 +18,9 @@ target_link_libraries(botan PUBLIC Qt5::Core)
+ target_include_directories(botan PUBLIC ${CMAKE_CURRENT_LIST_DIR})
+
+ if(BUILD_WITH_SYSTEM_BOTAN)
+- find_package(Botan2 REQUIRED)
++ find_package(PkgConfig REQUIRED)
++ pkg_check_modules(Botan2 REQUIRED botan-2 IMPORTED_TARGET)
++ add_library(Botan2::Botan2 ALIAS PkgConfig::Botan2)
+ if(NOT TARGET Botan2::Botan2)
+ message(FATAL_ERROR "Could not find system Botan 2 library using PkgConfig")
+ endif()
diff --git a/testing/qownnotes/exclude.patch b/testing/qownnotes/exclude.patch
new file mode 100644
index 00000000000..1a5fb36c69a
--- /dev/null
+++ b/testing/qownnotes/exclude.patch
@@ -0,0 +1,31 @@
+prevent install of a bunch of useless stuff that is already linked in
+--
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 9d41d0c..d42ab53 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -56,20 +56,20 @@ set(BUILD_SHARED_LIBS OFF)
+ # Disable building tests inside QHotKey library
+ set(CMAKE_POLICY_DEFAULT_CMP0077 NEW)
+ set(QHOTKEY_EXAMPLES OFF)
+-add_subdirectory(libraries/qhotkey)
++add_subdirectory(libraries/qhotkey EXCLUDE_FROM_ALL)
+
+ # FakeVim library
+ set(CREATE_STATIC_LIBRARY ON)
+ if(MSVC)
+ add_compile_definitions(FAKEVIM_STATIC_DEFINE QTCREATOR_UTILS_STATIC_LIB)
+ endif()
+-add_subdirectory(libraries/fakevim)
+-add_subdirectory(libraries/diff_match_patch)
++add_subdirectory(libraries/fakevim EXCLUDE_FROM_ALL)
++add_subdirectory(libraries/diff_match_patch EXCLUDE_FROM_ALL)
+
+ option(USE_QLITE_HTML "Build using QLiteHtml for preview" OFF)
+ if (USE_QLITEHTML)
+ add_definitions(-DUSE_QLITEHTML=1)
+- add_subdirectory(libraries/qlitehtml)
++ add_subdirectory(libraries/qlitehtml EXCLUDE_FROM_ALL)
+ endif()
+
+
diff --git a/testing/qownnotes/md4c.patch b/testing/qownnotes/md4c.patch
new file mode 100644
index 00000000000..712037b5751
--- /dev/null
+++ b/testing/qownnotes/md4c.patch
@@ -0,0 +1,15 @@
+link to system md4c
+--
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 1f82fe7..77fa2a8 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -8,7 +8,7 @@ include_directories(libraries/sonnet/src/core)
+ #some hunspell settings for windows
+ include(libraries/sonnet/src/plugins/hunspell/hunspell/CMakeLists.txt)
+
+-add_subdirectory(libraries/md4c)
++find_package(md4c)
+
+ add_executable(QOwnNotes "")
+
diff --git a/testing/qownnotes/no-werror.patch b/testing/qownnotes/no-werror.patch
new file mode 100644
index 00000000000..71bf869aeee
--- /dev/null
+++ b/testing/qownnotes/no-werror.patch
@@ -0,0 +1,12 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 9d41d0c..1f82fe7 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -41,7 +41,6 @@ if (UNIX)
+ # enable werror on linux
+ if (NOT APPLE)
+ message("Werror enabled on linux")
+- target_compile_options(QOwnNotes PRIVATE -Werror)
+ endif()
+ endif()
+
diff --git a/testing/qpdfview/APKBUILD b/testing/qpdfview/APKBUILD
new file mode 100644
index 00000000000..b3333422e69
--- /dev/null
+++ b/testing/qpdfview/APKBUILD
@@ -0,0 +1,39 @@
+# Contributor: gay <gay@disroot.org>
+# Maintainer: gay <gay@disroot.org>
+pkgname=qpdfview
+pkgver=0.5
+pkgrel=0
+pkgdesc="A tabbed PDF viewer using the poppler library."
+url="https://launchpad.net/qpdfview"
+arch="all !riscv64"
+license="GPL-2.0-or-later"
+options="!check"
+makedepends="
+ cups-dev
+ djvulibre-dev
+ file-dev
+ libspectre-dev
+ poppler-qt5-dev
+ qt5-qtsvg-dev
+ qt5-qttools-dev
+ "
+subpackages="$pkgname-doc"
+source="https://launchpad.net/qpdfview/trunk/$pkgver.0/+download/qpdfview-$pkgver.tar.gz"
+
+prepare() {
+ default_prepare
+ lrelease-qt5 qpdfview.pro
+}
+
+build() {
+ qmake-qt5 qpdfview.pro
+ make
+}
+
+package() {
+ make INSTALL_ROOT="$pkgdir" install
+}
+
+sha512sums="
+1b6b479bb42f4568c21b5f6cb0c552c4323739ba9fe46cea80cc199f48b0b49a278e0a2fb0d21f83bafb467e43dd37352b99ef41795d140220bb82d704e03926 qpdfview-0.5.tar.gz
+"
diff --git a/testing/qperf/APKBUILD b/testing/qperf/APKBUILD
index ae667f9ffb2..5fc72132270 100644
--- a/testing/qperf/APKBUILD
+++ b/testing/qperf/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Matthieu Monnier <matthieu.monnier@enalean.com>
pkgname=qperf
pkgver=0.4.11
-pkgrel=0
+pkgrel=1
pkgdesc="Measuring network performance"
url="https://www.openfabrics.org"
arch="all"
diff --git a/testing/qps/APKBUILD b/testing/qps/APKBUILD
deleted file mode 100644
index 642b90dacf9..00000000000
--- a/testing/qps/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=qps
-pkgver=2.5.0
-pkgrel=0
-pkgdesc="LXQt process manager"
-url="https://github.com/lxqt/qps"
-arch="all !armhf !riscv64" # limited by lxqt-config
-license="LGPL-2.0-or-later"
-makedepends="
- cmake lxqt-build-tools qt5-qtbase-dev qt5-qttools-dev
- libqtxdg-dev liblxqt-dev kwindowsystem-dev
- "
-subpackages="$pkgname-doc"
-options="!check" # No testsuite
-source="https://github.com/lxqt/qps/releases/download/$pkgver/qps-$pkgver.tar.xz"
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- $CMAKE_CROSSOPTS .
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --build build --target install
-}
-
-sha512sums="
-58e8473eb9266a102e5df68025a2beb496a32e6c5cac54232242253abaede5adbf693a8b9f089693990687b53e20c1e23cc800b7928fe68e18f05e3b3d344dca qps-2.5.0.tar.xz
-"
diff --git a/testing/qqc2-suru-style/APKBUILD b/testing/qqc2-suru-style/APKBUILD
new file mode 100644
index 00000000000..87b5631e1a0
--- /dev/null
+++ b/testing/qqc2-suru-style/APKBUILD
@@ -0,0 +1,29 @@
+# Maintainer: Luca Weiss <luca@z3ntu.xyz>
+# Contributor: Brandon Boese <brandonboese@protonmail.com>
+pkgname=qqc2-suru-style
+pkgver=0.20230206
+pkgrel=0
+pkgdesc="Suru Style for QtQuick Controls 2"
+arch="all"
+url="https://gitlab.com/ubports/development/core/qqc2-suru-style"
+license="GPL-2.0-or-later"
+makedepends="
+ qt5-qtbase-dev
+ qt5-qtdeclarative-dev
+ qt5-qtquickcontrols2-dev
+ "
+source="https://gitlab.com/ubports/development/core/qqc2-suru-style/-/archive/$pkgver/qqc2-suru-style-$pkgver.tar.gz"
+options="!check" # No tests
+
+build() {
+ qmake-qt5
+ make
+}
+
+package() {
+ INSTALL_ROOT="$pkgdir" make install
+}
+
+sha512sums="
+90605186c924255d94f1488445c0331a29795d00cdb3addee0572f5ec4e560fbc29e13bb0cd6561a9328edbb2df1c540fc4262668a16f102b4da0611fff3b362 qqc2-suru-style-0.20230206.tar.gz
+"
diff --git a/testing/qspectrumanalyzer/APKBUILD b/testing/qspectrumanalyzer/APKBUILD
index a2cfb83dac0..f97ce0248a9 100644
--- a/testing/qspectrumanalyzer/APKBUILD
+++ b/testing/qspectrumanalyzer/APKBUILD
@@ -2,10 +2,10 @@
# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
pkgname=qspectrumanalyzer
pkgver=2.2.0
-pkgrel=1
+pkgrel=4
pkgdesc="Spectrum analyzer for multiple SDR platforms"
url="https://github.com/xmikos/qspectrumanalyzer"
-arch="noarch !armhf" # no py3-qt on armhf
+arch="noarch !x86 !armhf" # no py3-qt on armhf
license="GPL-3.0-only"
depends="
hackrf
@@ -16,6 +16,7 @@ depends="
python3
"
checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/xmikos/qspectrumanalyzer/archive/v$pkgver.tar.gz"
options="!check" # Test seems windows only :-/
@@ -28,7 +29,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="8aad19d4f02fac579a65279eb0a26bab18f9e1243a626419640b91eab488eb21c96b0a9c83e6cc0141760c887b2481b533d0a32432de0919e41904c5b279c627 qspectrumanalyzer-2.2.0.tar.gz"
diff --git a/testing/qsstv/APKBUILD b/testing/qsstv/APKBUILD
index 61f5823d537..a28f094a7f0 100644
--- a/testing/qsstv/APKBUILD
+++ b/testing/qsstv/APKBUILD
@@ -2,9 +2,9 @@
# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=qsstv
pkgver=9.5.8
-pkgrel=0
+pkgrel=2
pkgdesc="Program for receiving and transmitting SSTV and HAMDRM"
-url="http://users.telenet.be/on4qz/index.html"
+url="https://www.qsl.net/on4qz/qsstv/"
arch="all"
license="GPL-2.0-or-later"
makedepends="
@@ -16,7 +16,8 @@ makedepends="
hamlib-dev
v4l-utils-dev
"
-source="http://users.telenet.be/on4qz/qsstv/downloads/qsstv_$pkgver.tar.gz"
+source="https://www.qsl.net/o/on4qz/qsstv/downloads/qsstv_$pkgver.tar.gz"
+options="!check" # no test suite
builddir="$srcdir/qsstv"
build() {
@@ -30,6 +31,10 @@ check() {
package() {
INSTALL_ROOT="$pkgdir" make install
+ install -Dm644 "$builddir"/qsstv.desktop \
+ "$pkgdir"/usr/share/applications/qsstv.desktop
+ install -Dm644 "$builddir"/icons/qsstv.png \
+ "$pkgdir"/usr/share/icons/hicolor/48x48/apps/qsstv.png
}
sha512sums="
diff --git a/testing/qstardict/APKBUILD b/testing/qstardict/APKBUILD
index e95b80a8ebd..fe30d2cb0c3 100644
--- a/testing/qstardict/APKBUILD
+++ b/testing/qstardict/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Taner Tas <taner76@gmail.com>
pkgname=qstardict
pkgver=1.3
-pkgrel=0
+pkgrel=1
pkgdesc="Free dictionary program written using Qt."
url="https://qstardict.ylsoftware.com"
arch="all"
diff --git a/testing/qsynth/APKBUILD b/testing/qsynth/APKBUILD
new file mode 100644
index 00000000000..7e9841d3dfd
--- /dev/null
+++ b/testing/qsynth/APKBUILD
@@ -0,0 +1,40 @@
+# Maintainer: Krystian Chachuła <krystian@krystianch.com>
+pkgname=qsynth
+pkgver=0.9.13
+pkgrel=0
+pkgdesc="Qt GUI Interface for FluidSynth"
+url="https://qsynth.sourceforge.io/"
+arch="all"
+license="GPL-2.0-or-later"
+makedepends="
+ cmake
+ samurai
+ qt6-qtbase-dev
+ qt6-qttools-dev
+ qt6-qtsvg-dev
+ fluidsynth-dev
+"
+subpackages="$pkgname-doc"
+source="https://downloads.sourceforge.net/project/qsynth/qsynth/$pkgver/qsynth-$pkgver.tar.gz"
+options="!check" # no tests
+
+build() {
+ if [ "$CBUILD" != "$CHOST" ]; then
+ CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=None \
+ $CMAKE_CROSSOPTS
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+8249438429191a2beb381af9f6fc6bc0d88711c2590379bfa10c558464c562f28453dacec8edbe1afdc590ee437530cefac211b272553cf8acc266706894f17c qsynth-0.9.13.tar.gz
+"
diff --git a/testing/qt-creator/APKBUILD b/testing/qt-creator/APKBUILD
index 1ad5faabf50..e2bbbb0b5b1 100644
--- a/testing/qt-creator/APKBUILD
+++ b/testing/qt-creator/APKBUILD
@@ -2,7 +2,7 @@
# Contributor: Alexey Minnekhanov <alexeymin@postmarketos.org>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=qt-creator
-pkgver=7.0.2
+pkgver=13.0.0
pkgrel=0
pkgdesc="Lightweight and cross-platform C++ IDE"
url="https://qt-project.org/wiki/Category:Tools::QtCreator"
@@ -12,15 +12,18 @@ depends="
qt6-qtbase-sqlite
qt6-qtbase-dev
qt6-qttools-dev
-"
+ "
+_llvmver=17
makedepends="
botan-dev
- clang-dev
- clang-static
+ clang$_llvmver-dev
+ clang$_llvmver-static
cmake
elfutils-dev
- llvm13-dev
- llvm13-static
+ lld
+ llvm$_llvmver-dev
+ llvm$_llvmver-gtest
+ llvm$_llvmver-static
qt6-qt5compat-dev
qt6-qtdeclarative-dev
qt6-qtquick3d-dev
@@ -35,19 +38,35 @@ source="
https://download.qt.io/official_releases/qtcreator/${pkgver%.*}/$pkgver/qt-creator-opensource-src-$pkgver.tar.xz
fix-execinfo.patch
fix-malloc-trim.patch
-"
+ "
builddir="$srcdir"/qt-creator-opensource-src-$pkgver
build() {
+ # enum-constexpr-conversion in clang16 now flags outside-enumeration
+ # values like -1 as invalid
+ export CC=clang-$_llvmver
+ export CXX=clang++-$_llvmver
+ export CFLAGS="$CFLAGS -flto=thin"
+ export CXXFLAGS="$CXXFLAGS -flto=thin -Wno-error=enum-constexpr-conversion -I/usr/lib/llvm$_llvmver/include"
+ export LDFLAGS="$LDFLAGS -fuse-ld=lld"
+
+ case "$CARCH" in
+ aarch64)
+ # not recognised by clang on aarch64
+ export CFLAGS="${CFLAGS/-fstack-clash-protection}"
+ export CXXFLAGS="${CXXFLAGS/-fstack-clash-protection}"
+ ;;
+ esac
cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
-DBUILD_QBS=OFF \
- -DBUILD_PLUGIN_CLANGFORMAT=OFF
- # Note: -DBUILD_PLUGIN_CLANGFORMAT=OFF: incompatible llvm/clang? without this:
- # /usr/include/clang/Basic/LLVM.h:21:10: fatal error: llvm/Support/Casting.h: No such file or directory
+ -DBUILD_PLUGIN_CLANGFORMAT=OFF \
+ -DBUILD_PLUGIN_COPILOT=OFF \
+ -DBUILD_WITH_PCH=OFF \
+ -DCLANGTOOLING_LINK_CLANG_DYLIB=ON
cmake --build build
}
@@ -56,7 +75,7 @@ package() {
}
sha512sums="
-d3aa34b01a7cb2bd9def6b1eeaaaf280bc157f0e65f6b073cd8790cc275579958085514b244ea185d7215696b678f80c98650f063b1d24580bf35fe959bfbab8 qt-creator-opensource-src-7.0.2.tar.xz
-702f014fc99bfba2576aa7459890afaad430638b2461059793884a3a527a05c73b58b649447e1f46b45c564f777aa7117581066b559dac896d082381057ef1b0 fix-execinfo.patch
-4fbb9ad60622983c3ffb5600d374e76c2e21d1d8e1f0da255932c9c2e828c14ccc61c4065dd8cceff74088565a08f39685b29b9e2f767fc09773ac1ae89c4b60 fix-malloc-trim.patch
+26fea156becc136fb55702a65c29dad825fd3fa60d8e19d8d142ab6518dc8e40fbddfe70d79d2b71f14f76c8a1d9bca34fb65e565702e67c9276aec9758bf345 qt-creator-opensource-src-13.0.0.tar.xz
+43d73c9cd272ee849a5d85490d351c71b786d7ce6b5b46c6ec13642329c14bacc84a122f0bfbb445841aedef8d1cc9fe2485c0c8db24080b5a9dd4380e36c58d fix-execinfo.patch
+efb137318e7005beb4c01cb27dcfc49d63b5c6faa66b0a6d6989bb6533ca94875e34880c482ce36f699dadf920b55a3de43eeed4fa5cf98d1b56405ee2ff0aa5 fix-malloc-trim.patch
"
diff --git a/testing/qt-creator/fix-execinfo.patch b/testing/qt-creator/fix-execinfo.patch
index f9bf5662222..c4577ed644e 100644
--- a/testing/qt-creator/fix-execinfo.patch
+++ b/testing/qt-creator/fix-execinfo.patch
@@ -1,56 +1,57 @@
+diff --git a/src/libs/utils/qtcassert.cpp b/src/libs/utils/qtcassert.cpp
+index d371b6f6..1db95aad 100644
--- a/src/libs/utils/qtcassert.cpp
+++ b/src/libs/utils/qtcassert.cpp
-@@ -31,8 +31,10 @@
- #if defined(Q_OS_LINUX)
+@@ -11,7 +11,9 @@
+ #if defined(Q_OS_UNIX)
#include <stdio.h>
#include <signal.h>
+#ifdef __GLIBC__
#include <execinfo.h>
- #endif
+#endif
-
- namespace Utils {
-
-@@ -40,7 +42,7 @@ void dumpBacktrace(int maxdepth)
- {
- if (maxdepth == -1)
- maxdepth = 1000;
+ #elif defined(_MSC_VER)
+ #ifdef QTCREATOR_PCH_H
+ #define CALLBACK WINAPI
+@@ -29,7 +31,7 @@ void dumpBacktrace(int maxdepth)
+ const int ArraySize = 1000;
+ if (maxdepth < 0 || maxdepth > ArraySize)
+ maxdepth = ArraySize;
-#if defined(Q_OS_UNIX)
+#if defined(Q_OS_UNIX) && defined(__GLIBC__)
- void *bt[1000] = {nullptr};
- int size = backtrace(bt, sizeof(bt) / sizeof(bt[0]));
+ void *bt[ArraySize] = {nullptr};
+ int size = backtrace(bt, maxdepth);
char **lines = backtrace_symbols(bt, size);
diff --git a/src/plugins/qmldesigner/designercore/exceptions/exception.cpp b/src/plugins/qmldesigner/designercore/exceptions/exception.cpp
-index a3a9806f7e..c369e681ab 100644
+index ba8afd56..4040dc6a 100644
--- a/src/plugins/qmldesigner/designercore/exceptions/exception.cpp
+++ b/src/plugins/qmldesigner/designercore/exceptions/exception.cpp
-@@ -26,7 +26,9 @@
+@@ -4,7 +4,9 @@
#include "exception.h"
-
+
#ifdef Q_OS_LINUX
+#if defined(__GLIBC__)
#include <execinfo.h>
+#endif
#include <cxxabi.h>
#endif
-
-@@ -100,6 +102,7 @@ bool Exception::warnAboutException()
+
+@@ -76,6 +78,7 @@ bool Exception::warnAboutException()
}
-
+
#ifdef Q_OS_LINUX
+#ifdef __GLIBC__
static QString getBackTrace()
{
QString backTrace;
-@@ -115,6 +118,7 @@ static QString getBackTrace()
+@@ -91,6 +94,7 @@ static QString getBackTrace()
return backTrace;
}
#endif
+#endif
-
+
QString Exception::defaultDescription(int line, const QByteArray &function, const QByteArray &file)
{
-@@ -138,8 +142,10 @@ Exception::Exception(int line, const QByteArray &function,
+@@ -114,8 +118,10 @@ Exception::Exception(int line, const QByteArray &function,
, m_file(QString::fromUtf8(file))
, m_description(description)
#ifdef Q_OS_LINUX
diff --git a/testing/qt-creator/fix-malloc-trim.patch b/testing/qt-creator/fix-malloc-trim.patch
index 144494f4bcf..2261b0519d9 100644
--- a/testing/qt-creator/fix-malloc-trim.patch
+++ b/testing/qt-creator/fix-malloc-trim.patch
@@ -1,13 +1,11 @@
-diff --git a/src/app/main.cpp b/src/app/main.cpp
-index 248fa8efef..4c27f65625 100644
---- a/src/app/main.cpp
-+++ b/src/app/main.cpp
-@@ -741,7 +741,7 @@ int main(int argc, char **argv)
- // shutdown plugin manager on the exit
- QObject::connect(&app, &QCoreApplication::aboutToQuit, &pluginManager, &PluginManager::shutdown);
-
+--- a/src/plugins/coreplugin/icore.cpp
++++ b/src/plugins/coreplugin/icore.cpp
+@@ -1274,7 +1274,7 @@
+ m_trimTimer.setSingleShot(true);
+ m_trimTimer.setInterval(60000);
+ // glibc may not actually free memory in free().
-#ifdef Q_OS_LINUX
+#if defined(Q_OS_LINUX) && defined(__GLIBC__)
- class MemoryTrimmer : public QObject
- {
- public:
+ connect(&m_trimTimer, &QTimer::timeout, this, [] { malloc_trim(0); });
+ #endif
+ }
diff --git a/testing/qt-wayland-shell-helpers/APKBUILD b/testing/qt-wayland-shell-helpers/APKBUILD
index 7c2c3d41fbb..b245cbb0f6a 100644
--- a/testing/qt-wayland-shell-helpers/APKBUILD
+++ b/testing/qt-wayland-shell-helpers/APKBUILD
@@ -1,22 +1,20 @@
# Maintainer: Ariadne Conill <ariadne@dereferenced.org>
pkgname=qt-wayland-shell-helpers
pkgver=0.1.1
-pkgrel=0
+pkgrel=3
pkgdesc="helpers for using Qt with arbitrary Wayland shell protocols"
url="https://github.com/iridescent-desktop/qt-wayland-shell-helpers"
arch="all !armhf" # blocked by qt5-qtdeclarative
license="ISC"
-makedepends="wayland-protocols wayland-dev qt5-qtbase-dev qt5-qtwayland-dev
- qtchooser meson"
+makedepends="wayland-protocols wayland-dev qt5-qtbase-dev qt5-qttools-dev qt5-qtwayland-dev meson"
subpackages="$pkgname-dev"
source="https://github.com/iridescent-desktop/qt-wayland-shell-helpers/archive/v$pkgver/qt-wayland-shell-helpers-$pkgver.tar.gz
fix-qt-include-directory.patch"
-builddir="$srcdir/qt-wayland-shell-helpers-$pkgver"
options="!check" # No test suite.
build() {
abuild-meson . output
- meson compile -j 4 -C output
+ meson compile -C output
}
package() {
diff --git a/testing/qt5ct/APKBUILD b/testing/qt5ct/APKBUILD
index 0991ff18645..6e7da084d50 100644
--- a/testing/qt5ct/APKBUILD
+++ b/testing/qt5ct/APKBUILD
@@ -1,37 +1,33 @@
# Contributor: Vladimir Luzan <vluzan@disroot.org>
# Maintainer: Vladimir Luzan <vluzan@disroot.org>
pkgname=qt5ct
-pkgver=1.5
+pkgver=1.7
pkgrel=0
pkgdesc="Qt5 configuration tool"
url="https://sourceforge.net/projects/qt5ct/"
arch="all"
license="BSD-2-Clause"
-makedepends="cmake qt5-qtbase-dev qt5-qttools-dev"
+makedepends="cmake qt5-qtbase-dev qt5-qttools-dev samurai"
+subpackages="$pkgname-dev"
source="https://sourceforge.net/projects/qt5ct/files/qt5ct-$pkgver.tar.bz2"
+options="!check" # no tests
build() {
if [ "$CBUILD" != "$CHOST" ]; then
CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
fi
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
-DCMAKE_BUILD_TYPE=None \
$CMAKE_CROSSOPTS .
cmake --build build
}
-check() {
- cd build
- CTEST_OUTPUT_ON_FAILURE=TRUE ctest
-}
-
package() {
DESTDIR="$pkgdir" cmake --install build
}
sha512sums="
-fc16c7849a89aa8ee9480162888294638bc01f83b89d86c978397e58f6da4360cf07b9f558635b8a5b13bd10d18f3ad49663fe8a76183da9ae55aac23230b1e5 qt5ct-1.5.tar.bz2
+97f1afc137e750abbb8c4e442cb6e09d2aa0c4979de2117ea644d484e1f7489bec144332814aae961bfaa5f8ac9ddf027c7a665274a65aef26fc4bf7c45610c0 qt5ct-1.7.tar.bz2
"
diff --git a/testing/qt6-qtwebengine/0001-Enable-building-on-musl.patch b/testing/qt6-qtwebengine/0001-Enable-building-on-musl.patch
deleted file mode 100644
index afc88b01049..00000000000
--- a/testing/qt6-qtwebengine/0001-Enable-building-on-musl.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-diff --git a/configure.cmake b/configure.cmake
-index 172831c6..76813841 100644
---- a/configure.cmake
-+++ b/configure.cmake
-@@ -403,11 +403,6 @@ add_check_for_support(
- CONDITION NOT LINUX OR PkgConfig_FOUND
- MESSAGE "A pkg-config support is required."
- )
--add_check_for_support(
-- MODULES QtWebEngine QtPdf
-- CONDITION NOT LINUX OR TEST_glibc
-- MESSAGE "A suitable version >= 2.17 of glibc is required."
--)
- add_check_for_support(
- MODULES QtWebEngine QtPdf
- CONDITION NOT LINUX OR TEST_khr
diff --git a/testing/qt6-qtwebengine/0002-musl-fixes.patch b/testing/qt6-qtwebengine/0002-musl-fixes.patch
deleted file mode 100644
index 434a6322d52..00000000000
--- a/testing/qt6-qtwebengine/0002-musl-fixes.patch
+++ /dev/null
@@ -1,185 +0,0 @@
---- ./src/3rdparty/chromium/third_party/lss/linux_syscall_support.h.orig
-+++ ./src/3rdparty/chromium/third_party/lss/linux_syscall_support.h
-@@ -139,12 +139,14 @@
- */
- #pragma push_macro("stat64")
- #pragma push_macro("fstat64")
-+#pragma push_macro("fstatat64")
- #pragma push_macro("lstat64")
- #pragma push_macro("pread64")
- #pragma push_macro("pwrite64")
- #pragma push_macro("getdents64")
- #undef stat64
- #undef fstat64
-+#undef fstatat64
- #undef lstat64
- #undef pread64
- #undef pwrite64
-@@ -1258,6 +1260,12 @@
- #ifndef __NR_getrandom
- #define __NR_getrandom 318
- #endif
-+
-+#undef __NR_pread
-+#define __NR_pread __NR_pread64
-+#undef __NR_pwrite
-+#define __NR_pwrite __NR_pwrite64
-+
- /* End of x86-64 definitions */
- #elif defined(__mips__)
- #if _MIPS_SIM == _MIPS_SIM_ABI32
-@@ -4545,6 +4553,7 @@
- * corresponding #pragma push_macro near the top of this file. */
- #pragma pop_macro("stat64")
- #pragma pop_macro("fstat64")
-+#pragma pop_macro("fstatat64")
- #pragma pop_macro("lstat64")
- #pragma pop_macro("pread64")
- #pragma pop_macro("pwrite64")
-
---- ./src/3rdparty/chromium/sandbox/linux/suid/process_util.h.orig
-+++ ./src/3rdparty/chromium/sandbox/linux/suid/process_util.h
-@@ -11,6 +11,14 @@
- #include <stdbool.h>
- #include <sys/types.h>
-
-+// Some additional functions
-+# define TEMP_FAILURE_RETRY(expression) \
-+ (__extension__ \
-+ ({ long int __result; \
-+ do __result = (long int) (expression); \
-+ while (__result == -1L && errno == EINTR); \
-+ __result; }))
-+
- // This adjusts /proc/process/oom_score_adj so the Linux OOM killer
- // will prefer certain process types over others. The range for the
- // adjustment is [-1000, 1000], with [0, 1000] being user accessible.
---- ./src/3rdparty/chromium/sandbox/linux/seccomp-bpf/trap.cc.orig 2020-04-12 08:26:40.184159217 -0400
-+++ ./src/3rdparty/chromium/sandbox/linux/seccomp-bpf/trap.cc 2020-04-12 08:46:16.737191222 -0400
-@@ -174,7 +174,7 @@
- // If the version of glibc doesn't include this information in
- // siginfo_t (older than 2.17), we need to explicitly copy it
- // into an arch_sigsys structure.
-- memcpy(&sigsys, &info->_sifields, sizeof(sigsys));
-+ memcpy(&sigsys, &info->__sifields, sizeof(sigsys));
- #endif
-
- #if defined(__mips__)
---- ./src/3rdparty/chromium/third_party/ffmpeg/libavutil/cpu.c.orig
-+++ ./src/3rdparty/chromium/third_party/ffmpeg/libavutil/cpu.c
-@@ -38,7 +38,6 @@
- #include <sys/param.h>
- #endif
- #include <sys/types.h>
--#include <sys/sysctl.h>
- #endif
- #if HAVE_UNISTD_H
- #include <unistd.h>
-diff --git a/src/3rdparty/chromium/third_party/ots/src/include/opentype-sanitiser.h b/src/3rdparty/chromium/third_party/ots/src/include/opentype-sanitiser.h
---- a/src/3rdparty/chromium/third_party/ots/src/include/opentype-sanitiser.h
-+++ b/src/3rdparty/chromium/third_party/ots/src/include/opentype-sanitiser.h
-@@ -20,6 +20,7 @@ typedef unsigned __int64 uint64_t;
- #define ots_htonl(x) _byteswap_ulong (x)
- #define ots_htons(x) _byteswap_ushort (x)
- #else
-+#include <sys/types.h>
- #include <arpa/inet.h>
- #include <stdint.h>
- #define ots_ntohl(x) ntohl (x)
-diff --git a/src/3rdparty/chromium/base/logging.cc b/src/3rdparty/chromium/base/logging.cc
---- a/src/3rdparty/chromium/base/logging.cc
-+++ b/src/3rdparty/chromium/base/logging.cc
-@@ -558,7 +558,7 @@ LogMessage::LogMessage(const char* file, int line, const char* condition)
-
- LogMessage::~LogMessage() {
- size_t stack_start = stream_.tellp();
--#if !defined(OFFICIAL_BUILD) && !defined(OS_NACL) && !defined(__UCLIBC__) && \
-+#if !defined(OFFICIAL_BUILD) && !defined(OS_NACL) && (defined(OS_LINUX) && defined(__GLIBC__)) && \
- !defined(OS_AIX)
- if (severity_ == LOGGING_FATAL && !base::debug::BeingDebugged()) {
- // Include a stack trace on a fatal, unless a debugger is attached.
-diff --git a/src/3rdparty/chromium/third_party/blink/renderer/platform/wtf/stack_util.cc b/src/3rdparty/chromium/third_party/blink/renderer/platform/wtf/stack_util.cc
---- a/src/3rdparty/chromium/third_party/blink/renderer/platform/wtf/stack_util.cc
-+++ b/src/3rdparty/chromium/third_party/blink/renderer/platform/wtf/stack_util.cc
-@@ -29,7 +29,7 @@ size_t GetUnderestimatedStackSize() {
- // FIXME: On Mac OSX and Linux, this method cannot estimate stack size
- // correctly for the main thread.
-
--#elif defined(__GLIBC__) || defined(OS_ANDROID) || defined(OS_FREEBSD) || \
-+#elif defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_FREEBSD) || \
- defined(OS_FUCHSIA)
- // pthread_getattr_np() can fail if the thread is not invoked by
- // pthread_create() (e.g., the main thread of blink_unittests).
-@@ -97,7 +97,7 @@ return Threading::ThreadStackSize();
- }
-
- void* GetStackStart() {
--#if defined(__GLIBC__) || defined(OS_ANDROID) || defined(OS_FREEBSD) || \
-+#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_FREEBSD) || \
- defined(OS_FUCHSIA)
- pthread_attr_t attr;
- int error;
-
---- ./src/3rdparty/chromium/net/dns/dns_config_service_posix.cc.orig
-+++ ./src/3rdparty/chromium/net/dns/dns_config_service_posix.cc
-@@ -122,7 +122,7 @@
- ConfigParsePosixResult result;
- config->unhandled_options = false;
- // TODO(fuchsia): Use res_ninit() when it's implemented on Fuchsia.
--#if defined(OS_OPENBSD) || defined(OS_FUCHSIA)
-+#if defined(OS_OPENBSD) || defined(OS_FUCHSIA) || defined(_GNU_SOURCE)
- // Note: res_ninit in glibc always returns 0 and sets RES_INIT.
- // res_init behaves the same way.
- memset(&_res, 0, sizeof(_res));
-diff --git a/src/3rdparty/chromium/third_party/nasm/nasmlib/realpath.c b/src/3rdparty/chromium/third_party/nasm/nasmlib/realpath.c
---- a/src/3rdparty/chromium/third_party/nasm/nasmlib/realpath.c
-+++ b/src/3rdparty/chromium/third_party/nasm/nasmlib/realpath.c
-@@ -47,7 +47,7 @@
-
- #include "nasmlib.h"
-
--#ifdef HAVE_CANONICALIZE_FILE_NAME
-+#if defined(__GLIBC__)
-
- /*
- * GNU-specific, but avoids the realpath(..., NULL)
---- ./src/3rdparty/chromium/third_party/perfetto/include/perfetto/ext/base/thread_utils.h.orig
-+++ ./src/3rdparty/chromium/third_party/perfetto/include/perfetto/ext/base/thread_utils.h
-@@ -61,9 +61,11 @@
- #if PERFETTO_BUILDFLAG(PERFETTO_OS_ANDROID)
- if (prctl(PR_GET_NAME, buf) != 0)
- return false;
--#else
-+#elif defined(__GLIBC__)
- if (pthread_getname_np(pthread_self(), buf, sizeof(buf)) != 0)
- return false;
-+#else
-+ return false;
- #endif
- out_result = std::string(buf);
- return true;
---- ./src/3rdparty/chromium/base/files/file_util_posix.cc.orig
-+++ ./src/3rdparty/chromium/base/files/file_util_posix.cc
-@@ -845,6 +845,9 @@
- // NaCl doesn't implement system calls to open files directly.
- #if !defined(OS_NACL)
- FILE* FileToFILE(File file, const char* mode) {
-+ if (!file.IsValid() || !(fcntl(file.GetPlatformFile(), F_GETFD) != -1 || errno != EBADF))
-+ return nullptr;
-+
- FILE* stream = fdopen(file.GetPlatformFile(), mode);
- if (stream)
- file.TakePlatformFile();
-diff --git a/src/3rdparty/chromium/net/socket/udp_socket_posix.cc b/src/3rdparty/chromium/net/socket/udp_socket_posix.cc
-index dbc8c5aaf..077bbde33 100644
---- a/src/3rdparty/chromium/net/socket/udp_socket_posix.cc
-+++ b/src/3rdparty/chromium/net/socket/udp_socket_posix.cc
-@@ -1152,7 +1152,7 @@ SendResult UDPSocketPosixSender::InternalSendmmsgBuffers(
- msg_iov->push_back({const_cast<char*>(buffer->data()), buffer->length()});
- msgvec->reserve(buffers.size());
- for (size_t j = 0; j < buffers.size(); j++)
-- msgvec->push_back({{nullptr, 0, &msg_iov[j], 1, nullptr, 0, 0}, 0});
-+ msgvec->push_back({{nullptr, 0, &msg_iov[j], 1, 0, 0, 0}, 0});
- int result = HANDLE_EINTR(Sendmmsg(fd, &msgvec[0], buffers.size(), 0));
- SendResult send_result(0, 0, std::move(buffers));
- if (result < 0) {
diff --git a/testing/qt6-qtwebengine/0003-qt-musl-mallinfo.patch b/testing/qt6-qtwebengine/0003-qt-musl-mallinfo.patch
deleted file mode 100644
index 80b5d5565ae..00000000000
--- a/testing/qt6-qtwebengine/0003-qt-musl-mallinfo.patch
+++ /dev/null
@@ -1,57 +0,0 @@
---- a/src/3rdparty/chromium/base/process/process_metrics_posix.cc
-+++ b/src/3rdparty/chromium/base/process/process_metrics_posix.cc
-@@ -105,7 +105,7 @@
-
- #endif // !defined(OS_FUCHSIA)
-
--#if defined(OS_LINUX) || defined(OS_CHROMEOS) || defined(OS_ANDROID)
-+#if (defined(OS_LINUX) && defined(__GLIBC__)) || defined(OS_CHROMEOS) || defined(OS_ANDROID)
- namespace {
-
- size_t GetMallocUsageMallinfo() {
-@@ -127,14 +127,14 @@
- }
-
- } // namespace
--#endif // defined(OS_LINUX) || defined(OS_CHROMEOS) || defined(OS_ANDROID)
-+#endif // (defined(OS_LINUX) && defined(__GLIBC__)) || defined(OS_CHROMEOS) || defined(OS_ANDROID)
-
- size_t ProcessMetrics::GetMallocUsage() {
- #if defined(OS_APPLE)
- malloc_statistics_t stats = {0};
- malloc_zone_statistics(nullptr, &stats);
- return stats.size_in_use;
--#elif defined(OS_LINUX) || defined(OS_CHROMEOS) || defined(OS_ANDROID)
-+#elif (defined(OS_LINUX) && defined(__GLIBC)) || defined(OS_CHROMEOS) || defined(OS_ANDROID)
- return GetMallocUsageMallinfo();
- #elif defined(OS_FUCHSIA)
- // TODO(fuchsia): Not currently exposed. https://crbug.com/735087.
---- a/src/3rdparty/chromium/base/trace_event/malloc_dump_provider.cc
-+++ b/src/3rdparty/chromium/base/trace_event/malloc_dump_provider.cc
-@@ -213,14 +213,14 @@
- &allocated_objects_count);
- #elif defined(OS_FUCHSIA)
- // TODO(fuchsia): Port, see https://crbug.com/706592.
--#else
-+#elif defined(__GLIBC__)
- #if defined(__GLIBC__) && defined(__GLIBC_PREREQ)
- #if __GLIBC_PREREQ(2, 33)
- #define MALLINFO2_FOUND_IN_LIBC
- struct mallinfo2 info = mallinfo2();
- #endif
- #endif // defined(__GLIBC__) && defined(__GLIBC_PREREQ)
- #if !defined(MALLINFO2_FOUND_IN_LIBC)
- struct mallinfo info = mallinfo();
- #endif
- #undef MALLINFO2_FOUND_IN_LIBC
---- a/src/3rdparty/chromium/third_party/tflite/src/tensorflow/lite/profiling/memory_info.cc
-+++ b/src/3rdparty/chromium/third_party/tflite/src/tensorflow/lite/profiling/memory_info.cc
-@@ -35,7 +35,7 @@
-
- MemoryUsage GetMemoryUsage() {
- MemoryUsage result;
--#ifdef __linux__
-+#if defined(__linux__) && defined(__GLIBC__)
- rusage res;
- if (getrusage(RUSAGE_SELF, &res) == 0) {
- result.max_rss_kb = res.ru_maxrss;
diff --git a/testing/qt6-qtwebengine/0004-qt-musl-resolve.patch b/testing/qt6-qtwebengine/0004-qt-musl-resolve.patch
deleted file mode 100644
index d7c9fadc518..00000000000
--- a/testing/qt6-qtwebengine/0004-qt-musl-resolve.patch
+++ /dev/null
@@ -1,72 +0,0 @@
---- a/src/3rdparty/chromium/net/dns/dns_reloader.cc
-+++ b/src/3rdparty/chromium/net/dns/dns_reloader.cc
-@@ -9,6 +9,10 @@
-
- #include <resolv.h>
-
-+#if !defined(__GLIBC__)
-+#include "resolv_compat.h"
-+#endif
-+
- #include "base/lazy_instance.h"
- #include "base/macros.h"
- #include "base/notreached.h"
---- a/src/3rdparty/chromium/net/dns/dns_config_service_posix.cc
-+++ b/src/3rdparty/chromium/net/dns/dns_config_service_posix.cc
-@@ -8,6 +8,10 @@
- #include <string>
- #include <type_traits>
-
-+#if !defined(__GLIBC__)
-+#include "resolv_compat.h"
-+#endif
-+
- #include "base/bind.h"
- #include "base/files/file.h"
- #include "base/files/file_path.h"
---- a/src/3rdparty/chromium/net/dns/dns_config_service_linux.cc
-+++ b/src/3rdparty/chromium/net/dns/dns_config_service_linux.cc
-@@ -10,6 +10,10 @@
- #include <sys/socket.h>
- #include <sys/types.h>
-
-+#if !defined(__GLIBC__)
-+#include "resolv_compat.h"
-+#endif
-+
- #include <map>
- #include <memory>
- #include <string>
---- /dev/null
-+++ b/src/3rdparty/chromium/net/dns/resolv_compat.h
-@@ -0,0 +1,29 @@
-+#if !defined(__GLIBC__)
-+/***************************************************************************
-+ * resolv_compat.h
-+ *
-+ * Mimick GLIBC's res_ninit() and res_nclose() for musl libc
-+ * Note: res_init() is actually deprecated according to
-+ * http://docs.oracle.com/cd/E36784_01/html/E36875/res-nclose-3resolv.html
-+ **************************************************************************/
-+#include <string.h>
-+
-+static inline int res_ninit(res_state statp)
-+{
-+ int rc = res_init();
-+ if (statp != &_res) {
-+ memcpy(statp, &_res, sizeof(*statp));
-+ }
-+ return rc;
-+}
-+
-+static inline int res_nclose(res_state statp)
-+{
-+ if (!statp)
-+ return -1;
-+ if (statp != &_res) {
-+ memset(statp, 0, sizeof(*statp));
-+ }
-+ return 0;
-+}
-+#endif
-
diff --git a/testing/qt6-qtwebengine/0005-qt-musl-crashpad.patch b/testing/qt6-qtwebengine/0005-qt-musl-crashpad.patch
deleted file mode 100644
index 0dd9789ee77..00000000000
--- a/testing/qt6-qtwebengine/0005-qt-musl-crashpad.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/src/3rdparty/chromium/third_party/crashpad/crashpad/util/linux/thread_info.h b/src/3rdparty/chromium/third_party/crashpad/crashpad/util/linux/thread_info.h
-index 5b55c24..08cec52 100644
---- a/src/3rdparty/chromium/third_party/crashpad/crashpad/util/linux/thread_info.h
-+++ b/src/3rdparty/chromium/third_party/crashpad/crashpad/util/linux/thread_info.h
-@@ -273,7 +273,7 @@ union FloatContext {
- "Size mismatch");
- #elif defined(ARCH_CPU_ARMEL)
- static_assert(sizeof(f32_t::fpregs) == sizeof(user_fpregs), "Size mismatch");
--#if !defined(__GLIBC__)
-+#if defined(OS_ANDROID)
- static_assert(sizeof(f32_t::vfp) == sizeof(user_vfp), "Size mismatch");
- #endif
- #elif defined(ARCH_CPU_ARM64)
diff --git a/testing/qt6-qtwebengine/0006-musl-hacks.patch b/testing/qt6-qtwebengine/0006-musl-hacks.patch
deleted file mode 100644
index a7b8b8dc187..00000000000
--- a/testing/qt6-qtwebengine/0006-musl-hacks.patch
+++ /dev/null
@@ -1,181 +0,0 @@
-diff --git a/src/3rdparty/chromium/base/debug/elf_reader.cc b/src/3rdparty/chromium/base/debug/elf_reader.cc
-index 472d0ebd7..eaf6aeadf 100644
---- a/src/3rdparty/chromium/base/debug/elf_reader.cc
-+++ b/src/3rdparty/chromium/base/debug/elf_reader.cc
-@@ -149,7 +149,12 @@ absl::optional<StringPiece> ReadElfLibraryName(const void* elf_mapped_base) {
- strtab_addr = static_cast<size_t>(dynamic_iter->d_un.d_ptr) +
- reinterpret_cast<const char*>(relocation_offset);
- #else
-- strtab_addr = reinterpret_cast<const char*>(dynamic_iter->d_un.d_ptr);
-+ if (dynamic_iter->d_un.d_ptr < relocation_offset) {
-+ strtab_addr = static_cast<size_t>(dynamic_iter->d_un.d_ptr) +
-+ reinterpret_cast<const char*>(relocation_offset);
-+ } else {
-+ strtab_addr = reinterpret_cast<const char*>(dynamic_iter->d_un.d_ptr);
-+ }
- #endif
- } else if (dynamic_iter->d_tag == DT_SONAME) {
- soname_strtab_offset = dynamic_iter->d_un.d_val;
-diff --git a/src/3rdparty/chromium/base/debug/stack_trace.cc b/src/3rdparty/chromium/base/debug/stack_trace.cc
-index bd4763b44..106775ae5 100644
---- a/src/3rdparty/chromium/base/debug/stack_trace.cc
-+++ b/src/3rdparty/chromium/base/debug/stack_trace.cc
-@@ -146,7 +146,7 @@ void* LinkStackFrames(void* fpp, void* parent_fp) {
-
- #if BUILDFLAG(CAN_UNWIND_WITH_FRAME_POINTERS)
- uintptr_t GetStackEnd() {
--#if defined(OS_ANDROID)
-+#if defined(OS_ANDROID) || (defined(OS_LINUX) && !defined(__GLIBC__))
- // Bionic reads proc/maps on every call to pthread_getattr_np() when called
- // from the main thread. So we need to cache end of stack in that case to get
- // acceptable performance.
-@@ -252,7 +252,9 @@ void StackTrace::Print() const {
- }
-
- void StackTrace::OutputToStream(std::ostream* os) const {
-+#if defined(__GLIBC__) && !defined(_AIX)
- OutputToStreamWithPrefix(os, nullptr);
-+#endif
- }
-
- std::string StackTrace::ToString() const {
-@@ -260,7 +262,7 @@ std::string StackTrace::ToString() const {
- }
- std::string StackTrace::ToStringWithPrefix(const char* prefix_string) const {
- std::stringstream stream;
--#if !defined(__UCLIBC__) && !defined(_AIX)
-+#if defined(__GLIBC__) && !defined(_AIX)
- OutputToStreamWithPrefix(&stream, prefix_string);
- #endif
- return stream.str();
-diff --git a/src/3rdparty/chromium/base/debug/stack_trace_posix.cc b/src/3rdparty/chromium/base/debug/stack_trace_posix.cc
-index 8833b20ef..362fad5f3 100644
---- a/src/3rdparty/chromium/base/debug/stack_trace_posix.cc
-+++ b/src/3rdparty/chromium/base/debug/stack_trace_posix.cc
-@@ -27,7 +27,7 @@
- #if !defined(USE_SYMBOLIZE)
- #include <cxxabi.h>
- #endif
--#if !defined(__UCLIBC__) && !defined(_AIX)
-+#if defined(__GLIBC__) && !defined(_AIX)
- #include <execinfo.h>
- #endif
-
-@@ -89,7 +89,7 @@ void DemangleSymbols(std::string* text) {
- // Note: code in this function is NOT async-signal safe (std::string uses
- // malloc internally).
-
--#if !defined(__UCLIBC__) && !defined(_AIX)
-+#if defined(__GLIBC__) && !defined(_AIX)
- std::string::size_type search_from = 0;
- while (search_from < text->size()) {
- // Look for the start of a mangled symbol, from search_from.
-@@ -124,7 +124,7 @@ void DemangleSymbols(std::string* text) {
- search_from = mangled_start + 2;
- }
- }
--#endif // !defined(__UCLIBC__) && !defined(_AIX)
-+#endif // !defined(__GLIBC__) && !defined(_AIX)
- }
- #endif // !defined(USE_SYMBOLIZE)
-
-@@ -136,7 +136,7 @@ class BacktraceOutputHandler {
- virtual ~BacktraceOutputHandler() = default;
- };
-
--#if !defined(__UCLIBC__) && !defined(_AIX)
-+#if defined(__GLIBC__) && !defined(_AIX)
- void OutputPointer(void* pointer, BacktraceOutputHandler* handler) {
- // This should be more than enough to store a 64-bit number in hex:
- // 16 hex digits + 1 for null-terminator.
-@@ -219,7 +219,7 @@ void ProcessBacktrace(void* const* trace,
- }
- #endif // defined(USE_SYMBOLIZE)
- }
--#endif // !defined(__UCLIBC__) && !defined(_AIX)
-+#endif // !defined(__GLIBC__) && !defined(_AIX)
-
- void PrintToStderr(const char* output) {
- // NOTE: This code MUST be async-signal safe (it's used by in-process
-@@ -839,7 +839,7 @@ size_t CollectStackTrace(void** trace, size_t count) {
- // If we do not have unwind tables, then try tracing using frame pointers.
- return base::debug::TraceStackFramePointers(const_cast<const void**>(trace),
- count, 0);
--#elif !defined(__UCLIBC__) && !defined(_AIX)
-+#elif !defined(__GLIBC__) && !defined(_AIX)
- // Though the backtrace API man page does not list any possible negative
- // return values, we take no chance.
- return base::saturated_cast<size_t>(backtrace(trace, count));
-@@ -852,13 +852,13 @@ void StackTrace::PrintWithPrefix(const char* prefix_string) const {
- // NOTE: This code MUST be async-signal safe (it's used by in-process
- // stack dumping signal handler). NO malloc or stdio is allowed here.
-
--#if !defined(__UCLIBC__) && !defined(_AIX)
-+#if defined(__GLIBC__) && !defined(_AIX)
- PrintBacktraceOutputHandler handler;
- ProcessBacktrace(trace_, count_, prefix_string, &handler);
- #endif
- }
-
--#if !defined(__UCLIBC__) && !defined(_AIX)
-+#if defined(__GLIBC__) && !defined(_AIX)
- void StackTrace::OutputToStreamWithPrefix(std::ostream* os,
- const char* prefix_string) const {
- StreamBacktraceOutputHandler handler(os);
-diff --git a/src/3rdparty/chromium/base/native_library_unittest.cc b/src/3rdparty/chromium/base/native_library_unittest.cc
-index 796451440..a4d0186fd 100644
---- a/src/3rdparty/chromium/base/native_library_unittest.cc
-+++ b/src/3rdparty/chromium/base/native_library_unittest.cc
-@@ -121,6 +121,7 @@ TEST(NativeLibraryTest, LoadLibrary) {
- #if !defined(OS_ANDROID) && !defined(THREAD_SANITIZER) && \
- !defined(MEMORY_SANITIZER)
-
-+#if defined(RTLD_DEEPBIND)
- // Verifies that the |prefer_own_symbols| option satisfies its guarantee that
- // a loaded library will always prefer local symbol resolution before
- // considering global symbols.
-@@ -156,6 +157,7 @@ TEST(NativeLibraryTest, LoadLibraryPreferOwnSymbols) {
- EXPECT_EQ(2, NativeLibraryTestIncrement());
- EXPECT_EQ(3, NativeLibraryTestIncrement());
- }
-+#endif // defined(RTLD_DEEPBIND)
-
- #endif // !defined(OS_ANDROID)
-
-diff --git a/src/3rdparty/chromium/mojo/public/c/system/thunks.cc b/src/3rdparty/chromium/mojo/public/c/system/thunks.cc
-index d7dc6e3d8..5cb40a21b 100644
---- a/src/3rdparty/chromium/mojo/public/c/system/thunks.cc
-+++ b/src/3rdparty/chromium/mojo/public/c/system/thunks.cc
-@@ -100,7 +100,8 @@ class CoreLibraryInitializer {
- base::ScopedAllowBlocking allow_blocking;
- base::NativeLibraryOptions library_options;
- #if !defined(ADDRESS_SANITIZER) && !defined(THREAD_SANITIZER) && \
-- !defined(MEMORY_SANITIZER) && !defined(LEAK_SANITIZER)
-+ !defined(MEMORY_SANITIZER) && !defined(LEAK_SANITIZER) && \
-+ defined(RTLD_DEEPBIND)
- // Sanitizer builds cannnot support RTLD_DEEPBIND, but they also disable
- // allocator shims, so it's unnecessary there.
- library_options.prefer_own_symbols = true;
-diff --git a/src/3rdparty/chromium/v8/src/codegen/external-reference-table.cc b/src/3rdparty/chromium/v8/src/codegen/external-reference-table.cc
-index 0a22fbdd7..651f5139c 100644
---- a/src/3rdparty/chromium/v8/src/codegen/external-reference-table.cc
-+++ b/src/3rdparty/chromium/v8/src/codegen/external-reference-table.cc
-@@ -12,7 +12,9 @@
-
- #if defined(DEBUG) && defined(V8_OS_LINUX) && !defined(V8_OS_ANDROID)
- #define SYMBOLIZE_FUNCTION
-+#if defined(__GLIBC__)
- #include <execinfo.h>
-+#endif
-
- #include <vector>
-
-@@ -103,7 +105,7 @@ void ExternalReferenceTable::Init(Isolate* isolate) {
- }
-
- const char* ExternalReferenceTable::ResolveSymbol(void* address) {
--#ifdef SYMBOLIZE_FUNCTION
-+#if defined(SYMBOLIZE_FUNCTION) && defined(__GLIBC__)
- char** names = backtrace_symbols(&address, 1);
- const char* name = names[0];
- // The array of names is malloc'ed. However, each name string is static
diff --git a/testing/qt6-qtwebengine/0007-musl-sandbox.patch b/testing/qt6-qtwebengine/0007-musl-sandbox.patch
deleted file mode 100644
index ad01ea8d3ef..00000000000
--- a/testing/qt6-qtwebengine/0007-musl-sandbox.patch
+++ /dev/null
@@ -1,181 +0,0 @@
-diff --git a/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc b/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
-index 348ab6e8c..2eac6ef82 100644
---- a/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
-+++ b/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
-@@ -127,21 +127,11 @@ namespace sandbox {
- // present (as in newer versions of posix_spawn).
- ResultExpr RestrictCloneToThreadsAndEPERMFork() {
- const Arg<unsigned long> flags(0);
--
-- // TODO(mdempsky): Extend DSL to support (flags & ~mask1) == mask2.
-- const uint64_t kAndroidCloneMask = CLONE_VM | CLONE_FS | CLONE_FILES |
-- CLONE_SIGHAND | CLONE_THREAD |
-- CLONE_SYSVSEM;
-- const uint64_t kObsoleteAndroidCloneMask = kAndroidCloneMask | CLONE_DETACHED;
--
-- const uint64_t kGlibcPthreadFlags =
-- CLONE_VM | CLONE_FS | CLONE_FILES | CLONE_SIGHAND | CLONE_THREAD |
-- CLONE_SYSVSEM | CLONE_SETTLS | CLONE_PARENT_SETTID | CLONE_CHILD_CLEARTID;
-- const BoolExpr glibc_test = flags == kGlibcPthreadFlags;
--
-- const BoolExpr android_test =
-- AnyOf(flags == kAndroidCloneMask, flags == kObsoleteAndroidCloneMask,
-- flags == kGlibcPthreadFlags);
-+ const int required = CLONE_VM | CLONE_FS | CLONE_FILES | CLONE_SIGHAND |
-+ CLONE_THREAD | CLONE_SYSVSEM;
-+ const int safe = CLONE_SETTLS | CLONE_PARENT_SETTID | CLONE_CHILD_CLEARTID |
-+ CLONE_DETACHED;
-+ const BoolExpr thread_clone_ok = (flags&~safe)==required;
-
- // The following two flags are the two important flags in any vfork-emulating
- // clone call. EPERM any clone call that contains both of them.
-@@ -151,7 +141,7 @@ ResultExpr RestrictCloneToThreadsAndEPERMFork() {
- AnyOf((flags & (CLONE_VM | CLONE_THREAD)) == 0,
- (flags & kImportantCloneVforkFlags) == kImportantCloneVforkFlags);
-
-- return If(IsAndroid() ? android_test : glibc_test, Allow())
-+ return If(thread_clone_ok, Allow())
- .ElseIf(is_fork_or_clone_vfork, Error(EPERM))
- .Else(CrashSIGSYSClone());
- }
-diff --git a/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc b/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
-index 6e2bd4fee..9f9e4ad8a 100644
---- a/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
-+++ b/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
-@@ -392,6 +392,7 @@ bool SyscallSets::IsAllowedProcessStartOrDeath(int sysno) {
- #if defined(__i386__)
- case __NR_waitpid:
- #endif
-+ case __NR_set_tid_address:
- return true;
- case __NR_clone: // Should be parameter-restricted.
- case __NR_setns: // Privileged.
-@@ -404,7 +405,6 @@ bool SyscallSets::IsAllowedProcessStartOrDeath(int sysno) {
- #if defined(__i386__) || defined(__x86_64__) || defined(__mips__)
- case __NR_set_thread_area:
- #endif
-- case __NR_set_tid_address:
- case __NR_unshare:
- #if !defined(__mips__) && !defined(__aarch64__)
- case __NR_vfork:
-@@ -514,6 +514,8 @@ bool SyscallSets::IsAllowedAddressSpaceAccess(int sysno) {
- case __NR_mlock:
- case __NR_munlock:
- case __NR_munmap:
-+ case __NR_mremap:
-+ case __NR_membarrier:
- return true;
- case __NR_madvise:
- case __NR_mincore:
-@@ -531,7 +533,6 @@ bool SyscallSets::IsAllowedAddressSpaceAccess(int sysno) {
- case __NR_modify_ldt:
- #endif
- case __NR_mprotect:
-- case __NR_mremap:
- case __NR_msync:
- case __NR_munlockall:
- case __NR_readahead:
-diff --git a/src/3rdparty/chromium/sandbox/linux/system_headers/arm64_linux_syscalls.h b/src/3rdparty/chromium/sandbox/linux/system_headers/arm64_linux_syscalls.h
-index 59d0eab8e..7ae700213 100644
---- a/src/3rdparty/chromium/sandbox/linux/system_headers/arm64_linux_syscalls.h
-+++ b/src/3rdparty/chromium/sandbox/linux/system_headers/arm64_linux_syscalls.h
-@@ -1119,4 +1119,8 @@
- #define __NR_rseq 293
- #endif
-
-+#if !defined(__NR_membarrier)
-+#define __NR_membarrier 283
-+#endif
-+
- #endif // SANDBOX_LINUX_SYSTEM_HEADERS_ARM64_LINUX_SYSCALLS_H_
-diff --git a/src/3rdparty/chromium/sandbox/linux/system_headers/arm_linux_syscalls.h b/src/3rdparty/chromium/sandbox/linux/system_headers/arm_linux_syscalls.h
-index 1addd5384..d8811ce87 100644
---- a/src/3rdparty/chromium/sandbox/linux/system_headers/arm_linux_syscalls.h
-+++ b/src/3rdparty/chromium/sandbox/linux/system_headers/arm_linux_syscalls.h
-@@ -1441,6 +1441,11 @@
- #define __NR_io_pgetevents (__NR_SYSCALL_BASE+399)
- #endif
-
-+#if !defined(__NR_membarrier)
-+#define __NR_membarrier (__NR_SYSCALL_BASE+389)
-+#endif
-+
-+
- // ARM private syscalls.
- #if !defined(__ARM_NR_BASE)
- #define __ARM_NR_BASE (__NR_SYSCALL_BASE + 0xF0000)
-diff --git a/src/3rdparty/chromium/sandbox/linux/system_headers/mips64_linux_syscalls.h b/src/3rdparty/chromium/sandbox/linux/system_headers/mips64_linux_syscalls.h
-index ec75815a8..612fcfaa9 100644
---- a/src/3rdparty/chromium/sandbox/linux/system_headers/mips64_linux_syscalls.h
-+++ b/src/3rdparty/chromium/sandbox/linux/system_headers/mips64_linux_syscalls.h
-@@ -1271,4 +1271,8 @@
- #define __NR_memfd_create (__NR_Linux + 314)
- #endif
-
-+#if !defined(__NR_membarrier)
-+#define __NR_membarrier (__NR_Linux + 318)
-+#endif
-+
- #endif // SANDBOX_LINUX_SYSTEM_HEADERS_MIPS64_LINUX_SYSCALLS_H_
-diff --git a/src/3rdparty/chromium/sandbox/linux/system_headers/mips_linux_syscalls.h b/src/3rdparty/chromium/sandbox/linux/system_headers/mips_linux_syscalls.h
-index ddbf97f3d..1742acd4c 100644
---- a/src/3rdparty/chromium/sandbox/linux/system_headers/mips_linux_syscalls.h
-+++ b/src/3rdparty/chromium/sandbox/linux/system_headers/mips_linux_syscalls.h
-@@ -1433,4 +1433,8 @@
- #define __NR_memfd_create (__NR_Linux + 354)
- #endif
-
-+#if !defined(__NR_membarrier)
-+#define __NR_membarrier (__NR_Linux + 358)
-+#endif
-+
- #endif // SANDBOX_LINUX_SYSTEM_HEADERS_MIPS_LINUX_SYSCALLS_H_
-diff --git a/src/3rdparty/chromium/sandbox/linux/system_headers/x86_32_linux_syscalls.h b/src/3rdparty/chromium/sandbox/linux/system_headers/x86_32_linux_syscalls.h
-index a6afc62d9..6ab7740de 100644
---- a/src/3rdparty/chromium/sandbox/linux/system_headers/x86_32_linux_syscalls.h
-+++ b/src/3rdparty/chromium/sandbox/linux/system_headers/x86_32_linux_syscalls.h
-@@ -1710,5 +1710,10 @@
- #define __NR_clone3 435
- #endif
-
-+#if !defined(__NR_membarrier)
-+#define __NR_membarrier 375
-+#endif
-+
-+
- #endif // SANDBOX_LINUX_SYSTEM_HEADERS_X86_32_LINUX_SYSCALLS_H_
-
-
-diff --git a/src/3rdparty/chromium/sandbox/linux/system_headers/x86_64_linux_syscalls.h b/src/3rdparty/chromium/sandbox/linux/system_headers/x86_64_linux_syscalls.h
-index 349504aee..6a6d4756f 100644
---- a/src/3rdparty/chromium/sandbox/linux/system_headers/x86_64_linux_syscalls.h
-+++ b/src/3rdparty/chromium/sandbox/linux/system_headers/x86_64_linux_syscalls.h
-@@ -1350,5 +1350,10 @@
- #define __NR_rseq 334
- #endif
-
-+#if !defined(__NR_membarrier)
-+#define __NR_membarrier 324
-+#endif
-+
-+
- #endif // SANDBOX_LINUX_SYSTEM_HEADERS_X86_64_LINUX_SYSCALLS_H_
-
-diff --git a/src/3rdparty/chromium/sandbox/policy/linux/bpf_renderer_policy_linux.cc b/src/3rdparty/chromium/sandbox/policy/linux/bpf_renderer_policy_linux.cc
-index 9fe9575eb..fa1a946f6 100644
---- a/src/3rdparty/chromium/sandbox/policy/linux/bpf_renderer_policy_linux.cc
-+++ b/src/3rdparty/chromium/sandbox/policy/linux/bpf_renderer_policy_linux.cc
-@@ -93,11 +93,11 @@ ResultExpr RendererProcessPolicy::EvaluateSyscall(int sysno) const {
- case __NR_sysinfo:
- case __NR_times:
- case __NR_uname:
-- return Allow();
-- case __NR_sched_getaffinity:
- case __NR_sched_getparam:
- case __NR_sched_getscheduler:
- case __NR_sched_setscheduler:
-+ return Allow();
-+ case __NR_sched_getaffinity:
- return RestrictSchedTarget(GetPolicyPid(), sysno);
- case __NR_prlimit64:
- // See crbug.com/662450 and setrlimit comment above.
diff --git a/testing/qt6-qtwebengine/0008-musl-stat.patch b/testing/qt6-qtwebengine/0008-musl-stat.patch
deleted file mode 100644
index 8cc4af19e47..00000000000
--- a/testing/qt6-qtwebengine/0008-musl-stat.patch
+++ /dev/null
@@ -1,12 +0,0 @@
---- a/src/3rdparty/chromium/base/files/file.h.orig
-+++ b/src/3rdparty/chromium/base/files/file.h
-@@ -19,7 +19,8 @@
- #include "build/build_config.h"
-
- #if defined(OS_BSD) || defined(OS_APPLE) || defined(OS_NACL) || \
-- defined(OS_FUCHSIA) || (defined(OS_ANDROID) && __ANDROID_API__ < 21)
-+ defined(OS_FUCHSIA) || (defined(OS_ANDROID) && __ANDROID_API__ < 21) || \
-+ (defined(OS_LINUX) && !defined(__GLIBC__))
- struct stat;
- namespace base {
- typedef struct stat stat_wrapper_t;
diff --git a/testing/qt6-qtwebengine/0009-close.patch b/testing/qt6-qtwebengine/0009-close.patch
deleted file mode 100644
index 72a987e82e9..00000000000
--- a/testing/qt6-qtwebengine/0009-close.patch
+++ /dev/null
@@ -1,31 +0,0 @@
---- a/src/3rdparty/chromium/base/files/scoped_file_linux.cc
-+++ b/src/3rdparty/chromium/base/files/scoped_file_linux.cc
-@@ -7,6 +7,7 @@
- #include <algorithm>
- #include <array>
- #include <atomic>
-+#include <dlfcn.h>
-
- #include "base/compiler_specific.h"
- #include "base/debug/stack_trace.h"
-@@ -80,9 +81,18 @@
-
- extern "C" {
-
--int __close(int);
--
- __attribute__((visibility("default"), noinline)) int close(int fd) {
-+ static int (*__close)(int) = nullptr;
-+
-+ if (__close == nullptr) {
-+ __close = (int (*)(int))dlsym(RTLD_NEXT, "close");
-+
-+ if (__close == nullptr) {
-+ RAW_LOG(ERROR, "musl close not found\n");
-+ IMMEDIATE_CRASH();
-+ }
-+ }
-+
- if (base::IsFDOwned(fd) && g_is_ownership_enforced)
- CrashOnFdOwnershipViolation();
- return __close(fd);
diff --git a/testing/qt6-qtwebengine/APKBUILD b/testing/qt6-qtwebengine/APKBUILD
deleted file mode 100644
index d910e99692d..00000000000
--- a/testing/qt6-qtwebengine/APKBUILD
+++ /dev/null
@@ -1,125 +0,0 @@
-# Contributor: Bart Ribbers <bribbers@disroot.org>
-# Maintainer: Bart Ribbers <bribbers@disroot.org>
-pkgname=qt6-qtwebengine
-pkgver=6.3.0
-pkgrel=1
-pkgdesc="Provides support for web applications using the Chromium browser project"
-url="https://qt.io/"
-# s390x blocked by qt6-qtdeclarative
-# ppc64le not supported by chromium
-# riscv64 blocked by nodejs
-# 32-bit arches are blocked by memory exhaustion and "libblink_core.a: error adding symbols: file format not recognized"
-arch="all !s390x !ppc64le !riscv64 !armv7 !x86 !armhf"
-license="LGPL-2.1-only AND LGPL-3.0-only AND GPL-3.0-only AND Qt-GPL-exception-1.0"
-depends_dev="
- alsa-lib-dev
- ffmpeg-dev
- icu-dev
- krb5-dev
- lcms2-dev
- libevent-dev
- libexecinfo-dev
- libvpx-dev>=1.10.0-r1
- libxkbfile-dev
- libxml2-dev
- libxslt-dev
- minizip-dev
- nss-dev
- opus-dev
- pciutils-dev
- pipewire-dev
- pulseaudio-dev
- qt6-qtbase-dev
- qt6-qtdeclarative-dev
- qt6-qtpositioning-dev
- qt6-qttools-dev
- qt6-qtwebchannel-dev
- re2-dev
- "
-makedepends="$depends_dev
- bison
- bsd-compat-headers
- cmake
- flex
- gperf
- gzip
- nodejs
- perl
- py3-html5lib
- python3
- samurai
- "
-subpackages="$pkgname-dev"
-builddir="$srcdir/qtwebengine-everywhere-src-${pkgver/_/-}"
-
-case $pkgver in
- *_alpha*|*_beta*|*_rc*) _rel=development_releases;;
- *) _rel=official_releases;;
-esac
-
-source="https://download.qt.io/$_rel/qt/${pkgver%.*}/${pkgver/_/-}/submodules/qtwebengine-everywhere-src-${pkgver/_/-}.tar.xz
- 0001-Enable-building-on-musl.patch
- 0002-musl-fixes.patch
- 0003-qt-musl-mallinfo.patch
- 0004-qt-musl-resolve.patch
- 0005-qt-musl-crashpad.patch
- 0006-musl-hacks.patch
- 0007-musl-sandbox.patch
- 0008-musl-stat.patch
- 0009-close.patch
- default-pthread-stacksize.patch
- system-icu.patch
- "
-
-build() {
- cmake -B build -G Ninja \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DINSTALL_BINDIR=lib/qt6/bin \
- -DINSTALL_DOCDIR=share/doc/qt6 \
- -DINSTALL_ARCHDATADIR=lib/qt6 \
- -DINSTALL_DATADIR=share/qt6 \
- -DINSTALL_INCLUDEDIR=include/qt6 \
- -DINSTALL_MKSPECSDIR=lib/qt6/mkspecs \
- -DINSTALL_EXAMPLESDIR=share/doc/qt6/examples \
- -DQT_FEATURE_webengine_system_alsa=ON \
- -DQT_FEATURE_webengine_system_ffmpeg=ON \
- -DQT_FEATURE_webengine_system_icu=ON \
- -DQT_FEATURE_webengine_system_libevent=ON \
- -DQT_FEATURE_webengine_system_libpci=ON \
- -DQT_FEATURE_webengine_system_libpng=ON \
- -DQT_FEATURE_webengine_system_libwebp=ON \
- -DQT_FEATURE_webengine_system_libxml=ON \
- -DQT_FEATURE_webengine_system_libxslt=ON \
- -DQT_FEATURE_webengine_system_minizip=ON \
- -DQT_FEATURE_webengine_system_opus=ON \
- -DQT_FEATURE_webengine_system_pulseaudio=ON \
- -DQT_FEATURE_webengine_system_zlib=ON \
- -DQT_FEATURE_webengine_proprietary_codecs=ON \
- -DQT_FEATURE_webengine_kerberos=ON \
- -DQT_FEATURE_webengine_webrtc_pipewire=ON
- SAMUFLAGS=-j12 cmake --build build
-}
-
-check() {
- cd build
- CTEST_OUTPUT_ON_FAILURE=TRUE ctest
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-sha512sums="
-39ba3394fd7dcada90fcb0fa8eea2f661dcae2c9d6e7e43441e56e622bbbe7e6c40b170eb13148e13f51e67cee6957530c49d47695d175a3a88a4586bfb507a4 qtwebengine-everywhere-src-6.3.0.tar.xz
-9a05c07c4616053d247b1200cdd1883e8067babc5ab5bc169ea1599643d120c445fb4db586f5e247e122711f37e148d13fc8a7443d879877d7c82fb1f778db58 0001-Enable-building-on-musl.patch
-0a75c7b5b9f195e0322f5a3177dfc9808ab0f712f9bb76d0738010a5c8e4f8a04de58d0db98b532eea41d7a996661b4e7fa197a1b1170adb45e5c2241cfbe2c8 0002-musl-fixes.patch
-1275a2190d2b95a2fcd5b6bf12d983676c3d40d9101a73d12cad69bd3c88686d34dc1ec943f337a2bf05c802ef82ed8c93379c31a79cefdf5daf437ef5e34af1 0003-qt-musl-mallinfo.patch
-263950bf35117746ba61feb8033f585347f77cf067be6c2f8f1e50754d972b9605ba97ed80f3149ba8e4d3e796303a785e37bb963beb2a86a642d9c2a09d881f 0004-qt-musl-resolve.patch
-173c401e1a0daa7a1471880807e4fb0a74fc338a0f306dc067147878c29e7bb94cae43c37fe2bf21dd7a7ffd2d739697fd21d10c059ce647df01d8236612cc68 0005-qt-musl-crashpad.patch
-909b7613d74ae17eb2d304b5481629e26fe1fa965f9f49aea25f6bc44b9fc35ea781e3f85e567498c7398f373ade7109b94f05b7e16f64d54243c5fe0211b279 0006-musl-hacks.patch
-f7380e97018a93c786a95650646d135ceb326ecdb615ffdcb1ed004f1c2ca2e1da1a5b0729969b7f2fed60c8fa048b36db055df4cca4bdedc8a7060c65ac5bd7 0007-musl-sandbox.patch
-9c7f9b9dd2d8e6b3e21b30921f526667fc2c244554f8fcb6f2d37c74c8ebe7ba4fe96a812a4ed916dc4c7bda0b06eb7b8f6dcea7a9178c956c0b69bfae44d5b2 0008-musl-stat.patch
-484efce13cf1c918fb03f41cbf85d43c8811ba71876be85e8939441a299b918f12113ee93eb456fa8b5590326655b9fcd1fd2949c6a2f5edf81fe5ddb0e61255 0009-close.patch
-f4cb20796922b6e26433a18ab2ba5dd8750e8bbfb479e9416a362073c9e6a3ac12ee9e9868f6c9335b374b9d8ca8bed2e322e5ac3fe694a6ec6ddce8bd9b801b default-pthread-stacksize.patch
-3c1b4c919f71fb19c3929616057eaf816ae5bcd43fb668787f2783ecd7520816ddd8ddce7a01e3e860f37eb3061c836e88a7b64c518eebdc44bea9250f7a5488 system-icu.patch
-"
diff --git a/testing/qt6-qtwebengine/default-pthread-stacksize.patch b/testing/qt6-qtwebengine/default-pthread-stacksize.patch
deleted file mode 100644
index e0ca792288b..00000000000
--- a/testing/qt6-qtwebengine/default-pthread-stacksize.patch
+++ /dev/null
@@ -1,23 +0,0 @@
---- ./src/3rdparty/chromium/base/threading/platform_thread_linux.cc
-+++ ./src/3rdparty/chromium/base/threading/platform_thread_linux.cc
-@@ -186,7 +186,8 @@
-
- size_t GetDefaultThreadStackSize(const pthread_attr_t& attributes) {
- #if !defined(THREAD_SANITIZER)
-- return 0;
-+ // use 2mb to avoid running out of space. This is what android uses
-+ return 2 * (1 << 20);
- #else
- // ThreadSanitizer bloats the stack heavily. Evidence has been that the
- // default stack size isn't enough for some browser tests.
---- ./src/3rdparty/chromium/base/threading/platform_thread_unittest.cc.orig
-+++ ./src/3rdparty/chromium/base/threading/platform_thread_unittest.cc
-@@ -411,7 +411,7 @@
- ((defined(OS_LINUX) || defined(OS_CHROMEOS)) && \
- !defined(THREAD_SANITIZER)) || \
- (defined(OS_ANDROID) && !defined(ADDRESS_SANITIZER))
-- EXPECT_EQ(0u, stack_size);
-+ EXPECT_EQ(2u << 20, stack_size);
- #else
- EXPECT_GT(stack_size, 0u);
- EXPECT_LT(stack_size, 20u * (1 << 20));
diff --git a/testing/qt6-qtwebengine/system-icu.patch b/testing/qt6-qtwebengine/system-icu.patch
deleted file mode 100644
index f2e23c01bd8..00000000000
--- a/testing/qt6-qtwebengine/system-icu.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-Patch-Source: https://code.qt.io/cgit/qt/qtwebengine-chromium.git/commit/?h=98-based&id=1c12bb220ad686ef0184d814d6722f904e2b5432
-
-From 75f0f4eb1e4f2823c39fe27137f78ac2c10bc293 Mon Sep 17 00:00:00 2001
-From: Kirill Burtsev <kirill.burtsev@qt.io>
-Date: Thu, 31 Mar 2022 19:45:39 +0200
-Subject: [FIXUP] Fix compilation with system ICU
-
-As of chromium 92.0.4480.0 after a set of fixes ending with a
-https://chromium-review.googlesource.com/c/chromium/src/+/2830820
-the need to override UCHAR_TYPE was dropped with the result that
-codebase is ready for default 'char16_t'. Override was already dropped
-for 98-based, which already builds fine for system ICU 70.1
-
-Task-number: QTBUG-100495
-Change-Id: I0e6d422f77b77015840647b52247f51736dd8a41
-Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
----
- chromium/third_party/icu/BUILD.gn | 6 ------
- 1 file changed, 6 deletions(-)
-
-diff --git a/chromium/third_party/icu/BUILD.gn b/chromium/third_party/icu/BUILD.gn
-index d5b136168ef..269de02eaaa 100644
---- a/src/3rdparty/chromium/third_party/icu/BUILD.gn
-+++ b/src/3rdparty/chromium/third_party/icu/BUILD.gn
-@@ -410,12 +410,6 @@ config("system_icu_config") {
- "USING_SYSTEM_ICU=1",
- "ICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_STATIC",
- ]
--
-- if (is_win) {
-- defines += [ "UCHAR_TYPE=wchar_t" ]
-- } else {
-- defines += [ "UCHAR_TYPE=uint16_t" ]
-- }
- }
-
- if (use_system_icu) {
---
-cgit v1.2.1
-
diff --git a/testing/qt6-qtwebview/APKBUILD b/testing/qt6-qtwebview/APKBUILD
deleted file mode 100644
index 648388a1e53..00000000000
--- a/testing/qt6-qtwebview/APKBUILD
+++ /dev/null
@@ -1,58 +0,0 @@
-# Contributor: Bart Ribbers <bribbers@disroot.org>
-# Maintainer: Bart Ribbers <bribbers@disroot.org>
-pkgname=qt6-qtwebview
-pkgver=6.3.0
-pkgrel=1
-pkgdesc="Provides a way to display web content in a QML application"
-url="https://qt.io/"
-# s390x blocked by qt6-qtdeclarative
-# ppc64le blocked by qt6-qtwebengine
-# riscv64 blocked by qt6-qtwebengine
-# 32-bit arches blocked by qt6-qtwebengine
-arch="all !s390x !ppc64le !riscv64 !x86 !armv7 !armhf"
-license="LGPL-2.1-only AND LGPL-3.0-only AND GPL-3.0-only AND Qt-GPL-exception-1.0"
-depends_dev="
- qt6-qtbase-dev
- qt6-qtdeclarative-dev
- qt6-qtwebengine-dev
- "
-makedepends="$depends_dev
- cmake
- perl
- samurai
- "
-subpackages="$pkgname-dev"
-builddir="$srcdir/qtwebview-everywhere-src-${pkgver/_/-}"
-
-case $pkgver in
- *_alpha*|*_beta*|*_rc*) _rel=development_releases;;
- *) _rel=official_releases;;
-esac
-
-source="https://download.qt.io/$_rel/qt/${pkgver%.*}/${pkgver/_/-}/submodules/qtwebview-everywhere-src-${pkgver/_/-}.tar.xz"
-
-build() {
- cmake -B build -G Ninja \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DINSTALL_BINDIR=lib/qt6/bin \
- -DINSTALL_DOCDIR=share/doc/qt6 \
- -DINSTALL_ARCHDATADIR=lib/qt6 \
- -DINSTALL_DATADIR=share/qt6 \
- -DINSTALL_INCLUDEDIR=include/qt6 \
- -DINSTALL_MKSPECSDIR=lib/qt6/mkspecs \
- -DINSTALL_EXAMPLESDIR=share/doc/qt6/examples
- cmake --build build --parallel
-}
-
-check() {
- cd build
- CTEST_OUTPUT_ON_FAILURE=TRUE ctest
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-sha512sums="
-625c0a93031fac4724a7f08d11e9835366f3928fa512e97e7fa06be1dbd0c91805231dd771f5fc0305c81f5d5b57ee7770e50ecd9bf5f7795e0333a0288884c1 qtwebview-everywhere-src-6.3.0.tar.xz
-"
diff --git a/testing/qt6ct/APKBUILD b/testing/qt6ct/APKBUILD
index 4b33e187760..27c437403cc 100644
--- a/testing/qt6ct/APKBUILD
+++ b/testing/qt6ct/APKBUILD
@@ -1,18 +1,20 @@
# Contributor: Alex Yam <alex@alexyam.com>
# Maintainer: Alex Yam <alex@alexyam.com>
pkgname=qt6ct
-pkgver=0.5
+pkgver=0.9
pkgrel=0
pkgdesc="Qt6 configuration tool"
url="https://github.com/trialuser02/qt6ct/"
-arch="all !s390x" # s390x blocked by qt6-qttools-dev
+arch="all"
license="BSD-2-Clause"
options="!check" # no test suite
-makedepends="cmake qt6-qtbase-dev qt6-qttools-dev"
-source="https://github.com/trialuser02/qt6ct/releases/download/$pkgver/qt6ct-$pkgver.tar.xz"
+makedepends="cmake samurai qt6-qtbase-dev qt6-qttools-dev"
+source="https://github.com/trialuser02/qt6ct/releases/download/$pkgver/qt6ct-$pkgver.tar.xz
+ find-lrelease.patch
+ "
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
-DCMAKE_BUILD_TYPE=MinSizeRel
@@ -24,5 +26,6 @@ package() {
}
sha512sums="
-284c7d72c55159a30a8fb2b7338fea5dd0863c0f64b8680c992c3457b03ac9a4066ab63c8b29fe6ba0a33b0978b5e07e407c9f6edfb7eea111660e37c61ec37f qt6ct-0.5.tar.xz
+ea5242cc10d9d210e190dd442c72c9f75c6a13e50191ec164fc9772de0475ca39453f22b061cfe24e1face4d660159d491627b65f2637b5d611cfe5fb0ac228f qt6ct-0.9.tar.xz
+92e419c9d7dfbc35de00b1f9cd453e62294a19b5d930ef745e7f03f28d1f858bac8fef5118b1fd6d3d1de758c7caab63e0a5e1a91c5bd537722edb579c01dec2 find-lrelease.patch
"
diff --git a/testing/qt6ct/find-lrelease.patch b/testing/qt6ct/find-lrelease.patch
new file mode 100644
index 00000000000..ea7cb2c9b47
--- /dev/null
+++ b/testing/qt6ct/find-lrelease.patch
@@ -0,0 +1,11 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -29,7 +29,7 @@
+ get_target_property(QT_QTPATHS_EXECUTABLE Qt6::qtpaths IMPORTED_LOCATION)
+
+ if(Qt6LinguistTools_FOUND)
+- get_target_property(QT_LRELEASE_EXECUTABLE Qt6::lrelease IMPORTED_LOCATION)
++ set(QT_LRELEASE_EXECUTABLE /usr/lib/qt6/bin/lrelease)
+ if(NOT QT_QTPATHS_EXECUTABLE AND QT_LRELEASE_EXECUTABLE)
+ get_filename_component(QT_LRELEASE_PATH ${QT_LRELEASE_EXECUTABLE} DIRECTORY)
+ set(QT_QTPATHS_EXECUTABLE ${QT_LRELEASE_PATH}/qtpaths)
diff --git a/testing/qterminal/APKBUILD b/testing/qterminal/APKBUILD
deleted file mode 100644
index 5eb4d7c5ee3..00000000000
--- a/testing/qterminal/APKBUILD
+++ /dev/null
@@ -1,34 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=qterminal
-pkgver=1.1.0
-pkgrel=0
-pkgdesc="Lightweight Qt-based terminal emulator"
-url="https://github.com/lxqt/qterminal"
-arch="all"
-license="LGPL-2.0-or-later"
-makedepends="
- cmake lxqt-build-tools qt5-qttools-dev
- qt5-qtx11extras-dev qtermwidget-dev
- "
-options="!check" # No testsuite
-source="https://github.com/lxqt/qterminal/releases/download/$pkgver/qterminal-$pkgver.tar.xz"
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- $CMAKE_CROSSOPTS .
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --build build --target install
-}
-sha512sums="
-422ba05ebed00ac7f355cd9599f930f861141b9f69ff3e475ac9bb1e74aa02b4787d18fe52c03350dcb3b9b579d67b67d5d4e3b86aa204084d16c1097dc3b291 qterminal-1.1.0.tar.xz
-"
diff --git a/testing/qtermwidget/APKBUILD b/testing/qtermwidget/APKBUILD
deleted file mode 100644
index e5860710e64..00000000000
--- a/testing/qtermwidget/APKBUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=qtermwidget
-pkgver=1.1.0
-pkgrel=0
-pkgdesc="Terminal widget for QTerminal"
-url="https://github.com/lxqt/qtermwidget"
-arch="all"
-license="LGPL-2.0-or-later"
-makedepends="cmake lxqt-build-tools qt5-qtbase-dev qt5-qttools-dev"
-subpackages="$pkgname-dev"
-options="!check" # No testsuite
-source="https://github.com/lxqt/qtermwidget/releases/download/$pkgver/qtermwidget-$pkgver.tar.xz"
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- $CMAKE_CROSSOPTS .
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --build build --target install
-}
-sha512sums="
-808034e372c619357a931c2831233b6e3db01917ca7fc709ddb02af4d26520c247ba1da329445792efeddb0409f596df10e31c7cc78e0386ac1ec64b4d23dc5b qtermwidget-1.1.0.tar.xz
-"
diff --git a/testing/qtile/APKBUILD b/testing/qtile/APKBUILD
new file mode 100644
index 00000000000..d10cede8f6c
--- /dev/null
+++ b/testing/qtile/APKBUILD
@@ -0,0 +1,39 @@
+# Contributor: Emma Nora Theuer <kontakt@entheuer.de>
+# Contributor: Dominika Liberda <ja@sdomi.pl>
+# Maintainer: Emma Nora Theuer <kontakt@entheuer.de>
+pkgname=qtile
+pkgver=0.23.0
+pkgrel=1
+pkgdesc="A full-featured, hackable tiling X11 window manager written and configured in Python"
+url="https://github.com/qtile/qtile"
+arch="all"
+license="MIT"
+depends="
+ pango
+ py3-cairocffi
+ py3-dbus-next
+ py3-xcffib
+ "
+makedepends="
+ libx11-dev
+ pango
+ py3-cffi
+ py3-setuptools
+ py3-setuptools_scm
+ "
+options="!check" # broken due to unavailable packages
+subpackages="$pkgname-pyc"
+source="qtile-$pkgver.tar.gz::https://github.com/qtile/qtile/archive/v$pkgver.tar.gz"
+
+build() {
+ export SETUPTOOLS_SCM_PRETEND_VERSION=$pkgver
+ python3 setup.py build
+}
+
+package() {
+ python3 setup.py install --skip-build --root="$pkgdir"
+}
+
+sha512sums="
+8121d980fb74de6b7c464c0d8d82fcffa922653400c0d74dfb5e9105762a6a9931fbc7465d68accc6c513abe11a79547282ab886d20cac9970dba1b184da682b qtile-0.23.0.tar.gz
+"
diff --git a/testing/qtmir/0001-Wayland-hack-set-maliit-server-to-inputmethod-type-W.patch b/testing/qtmir/0001-Wayland-hack-set-maliit-server-to-inputmethod-type-W.patch
new file mode 100644
index 00000000000..6a6807d48c1
--- /dev/null
+++ b/testing/qtmir/0001-Wayland-hack-set-maliit-server-to-inputmethod-type-W.patch
@@ -0,0 +1,29 @@
+From 56bb606298f8f0e64d565e8b664836f7241c59c3 Mon Sep 17 00:00:00 2001
+From: Marius Gripsgard <marius@ubports.com>
+Date: Sun, 8 Sep 2019 19:54:55 +0200
+Subject: [PATCH 1/4] Wayland hack, set maliit-server to inputmethod type (WIP)
+
+---
+ src/platforms/mirserver/wrappedwindowmanagementpolicy.cpp | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/src/platforms/mirserver/wrappedwindowmanagementpolicy.cpp b/src/platforms/mirserver/wrappedwindowmanagementpolicy.cpp
+index d44e730b..6a4563b2 100644
+--- a/src/platforms/mirserver/wrappedwindowmanagementpolicy.cpp
++++ b/src/platforms/mirserver/wrappedwindowmanagementpolicy.cpp
+@@ -131,6 +131,12 @@ namespace qtmir
+ parameters.size() = toMirSize(initialSize);
+ hasInitialSize = true;
+ }
++
++ auto surfaceName = requestParameters.name().is_set() ? requestParameters.name().value() : "";
++
++ if (surfaceName == "maliit-server") {
++ parameters.type() = mir_window_type_inputmethod;
++ }
+ }
+
+ if (!hasInitialSize &&
+--
+2.43.0
+
diff --git a/testing/qtmir/0002-Squash-of-miroil-patches.patch b/testing/qtmir/0002-Squash-of-miroil-patches.patch
new file mode 100644
index 00000000000..4c69f31bb86
--- /dev/null
+++ b/testing/qtmir/0002-Squash-of-miroil-patches.patch
@@ -0,0 +1,12405 @@
+From 336ebdc70b8401028c842ef2da7e6d5ee49e5081 Mon Sep 17 00:00:00 2001
+From: Marius Gripsgard <marius@ubports.com>
+Date: Tue, 25 Jan 2022 22:06:10 +0100
+Subject: [PATCH 2/4] Squash of miroil patches
+
+Squashed from upstream development in branch
+"personal/mariogrip/desktop-development", required for compatibility
+with Mir 2.x
+
+$ git diff 8291ea2ae..origin/personal/mariogrip/desktop-development
+---
+ .gitlab-ci.yml | 17 +
+ CMakeLists.txt | 16 +-
+ debian/changelog | 331 ++-
+ debian/control | 65 +-
+ debian/copyright | 150 +-
+ debian/libqtmirserver1.install | 1 -
+ debian/libqtmirserver2.install | 1 +
+ debian/libqtmirserver2.symbols | 2381 +++++++++++++++++
+ debian/qml-module-qtmir.install | 4 +-
+ debian/qtmir-tests.install | 1 -
+ debian/rules | 15 +-
+ debian/watch | 4 +
+ demos/qtmir-demo-shell/CMakeLists.txt | 1 +
+ demos/qtmir-demo-shell/Shell.qml | 5 +-
+ demos/qtmir-demo-shell/main.cpp | 17 +-
+ demos/qtmir-demo-shell/qml-demo-shell.qml | 2 +
+ .../display_configuration_policy.h | 14 +-
+ .../display_configuration_storage.h | 19 +-
+ include/{qtmir/miral => miroil}/display_id.h | 11 +-
+ include/{qtmir/miral => miroil}/edid.h | 11 +-
+ include/qtmir/displayconfigurationpolicy.h | 15 +-
+ include/qtmir/displayconfigurationstorage.h | 4 +-
+ include/qtmir/screen.h | 10 +-
+ include/qtmir/windowmanagementpolicy.h | 4 +-
+ src/common/debughelpers.cpp | 7 +
+ src/common/debughelpers.h | 6 +
+ src/common/windowcontrollerinterface.h | 6 +
+ src/common/windowmodelnotifier.h | 4 +
+ src/common/workspacecontrollerinterface.h | 2 -
+ src/modules/QtMir/Application/CMakeLists.txt | 6 +
+ src/modules/QtMir/Application/application.cpp | 16 +-
+ src/modules/QtMir/Application/application.h | 3 +
+ .../QtMir/Application/application_manager.cpp | 82 +
+ .../QtMir/Application/application_manager.h | 1 +
+ .../QtMir/Application/mirbuffersgtexture.cpp | 35 +-
+ .../QtMir/Application/mirbuffersgtexture.h | 2 +-
+ src/modules/QtMir/Application/mirsurface.cpp | 132 +-
+ src/modules/QtMir/Application/mirsurface.h | 12 +-
+ .../QtMir/Application/mirsurfaceinterface.h | 8 +-
+ .../QtMir/Application/mirsurfaceitem.cpp | 76 +-
+ src/modules/QtMir/Application/proc_info.cpp | 5 +
+ src/modules/QtMir/Application/proc_info.h | 1 +
+ src/modules/QtMir/Application/session.cpp | 8 +-
+ src/modules/QtMir/Application/session.h | 10 +-
+ .../QtMir/Application/taskcontroller.cpp | 8 +-
+ .../QtMir/Application/taskcontroller.h | 10 +-
+ src/platforms/mirserver/CMakeLists.txt | 52 +-
+ src/platforms/mirserver/eventbuilder.cpp | 103 +-
+ src/platforms/mirserver/eventbuilder.h | 40 +-
+ .../mirserver/inputdeviceobserver.cpp | 42 +-
+ src/platforms/mirserver/inputdeviceobserver.h | 14 +-
+ src/platforms/mirserver/logging.cpp | 1 +
+ src/platforms/mirserver/logging.h | 1 +
+ src/platforms/mirserver/miral/CMakeLists.txt | 14 -
+ src/platforms/mirserver/miroil/CMakeLists.txt | 1 +
+ .../miroil/include/miroil/compositor.h | 40 +
+ ...display_configuration_controller_wrapper.h | 51 +
+ .../include/miroil/display_listener_wrapper.h | 44 +
+ .../miroil/include/miroil/event_builder.h | 117 +
+ .../include/miroil}/eventdispatch.h | 14 +-
+ .../miroil/include/miroil/input_device.h | 52 +
+ .../include/miroil/input_device_observer.h | 40 +
+ .../include/miroil/mir_prompt_session.h | 48 +
+ .../miroil/include/miroil/mir_server_hooks.h | 57 +
+ .../include/miroil}/mirbuffer.h | 8 +-
+ .../include/miroil/open_gl_context.h} | 22 +-
+ .../include/miroil}/persist_display_config.h | 16 +-
+ .../include/miroil/prompt_session_listener.h | 49 +
+ .../include/miroil/prompt_session_manager.h | 51 +
+ .../miroil/include/miroil/set_compositor.h | 54 +
+ .../mirserver/miroil/include/miroil/surface.h | 77 +
+ .../miroil/include/miroil/surface_observer.h | 63 +
+ .../mirserver/miroil/src/CMakeLists.txt | 39 +
+ .../mirserver/miroil/src/compositor.cpp | 20 +
+ ...splay_configuration_controller_wrapper.cpp | 32 +
+ .../src}/display_configuration_policy.cpp | 7 +-
+ .../miroil/src/display_listener_wrapper.cpp | 41 +
+ .../mirserver/{miral => miroil/src}/edid.cpp | 10 +-
+ .../mirserver/miroil/src/event_builder.cpp | 116 +
+ .../{ => miroil/src}/eventdispatch.cpp | 5 +-
+ .../mirserver/miroil/src/input_device.cpp | 80 +
+ .../miroil/src/input_device_observer.cpp | 19 +
+ .../miroil/src/mir_prompt_session.cpp | 34 +
+ .../mirserver/miroil/src/mir_server_hooks.cpp | 252 ++
+ .../{miral => miroil/src}/mirbuffer.cpp | 6 +-
+ .../src/open_gl_context.cpp} | 39 +-
+ .../src}/persist_display_config.cpp | 95 +-
+ .../miroil/src/prompt_session_listener.cpp | 19 +
+ .../miroil/src/prompt_session_manager.cpp | 54 +
+ .../mirserver/miroil/src/set_compositor.cpp | 88 +
+ .../mirserver/miroil/src/surface.cpp | 267 ++
+ src/platforms/mirserver/miropenglcontext.cpp | 2 +-
+ src/platforms/mirserver/mirserverhooks.cpp | 229 --
+ src/platforms/mirserver/mirserverhooks.h | 57 -
+ src/platforms/mirserver/nativeinterface.cpp | 2 +-
+ src/platforms/mirserver/nativeinterface.h | 5 +-
+ src/platforms/mirserver/platformscreen.h | 8 +-
+ .../mirserver/promptsessionlistener.cpp | 49 +
+ .../mirserver/promptsessionlistener.h | 31 +-
+ .../mirserver/promptsessionmanager.cpp | 47 -
+ .../mirserver/promptsessionmanager.h | 49 -
+ src/platforms/mirserver/qmirserver.cpp | 3 +-
+ src/platforms/mirserver/qmirserver.h | 7 +-
+ src/platforms/mirserver/qmirserver_p.cpp | 113 +-
+ src/platforms/mirserver/qmirserver_p.h | 20 +-
+ src/platforms/mirserver/qtcompositor.cpp | 16 +
+ src/platforms/mirserver/qtcompositor.h | 7 +-
+ src/platforms/mirserver/qteventfeeder.h | 6 +
+ src/platforms/mirserver/qtwindowmanager.cpp | 80 +
+ ...{mircursorimages.cpp => qtwindowmanager.h} | 21 +-
+ src/platforms/mirserver/screenadaptor.cpp | 2 +-
+ src/platforms/mirserver/screenadaptor.h | 2 +-
+ src/platforms/mirserver/screenscontroller.cpp | 5 +-
+ src/platforms/mirserver/screenscontroller.h | 5 +-
+ src/platforms/mirserver/screensmodel.cpp | 12 +-
+ src/platforms/mirserver/screensmodel.h | 12 +-
+ src/platforms/mirserver/setqtcompositor.cpp | 83 -
+ src/platforms/mirserver/setqtcompositor.h | 47 -
+ src/platforms/mirserver/surfaceobserver.cpp | 5 +
+ .../mirserver/urlbuilderdispatcher.cpp | 56 +
+ .../mirserver/urlbuilderdispatcher.h | 47 +
+ .../wayland-generated/CMakeLists.txt | 24 +
+ .../qt-windowmanager_wrapper.cpp | 177 ++
+ .../qt-windowmanager_wrapper.h | 69 +
+ .../server-decoration_wrapper.cpp | 295 ++
+ .../server-decoration_wrapper.h | 107 +
+ .../xdg-decoration-unstable-v1_wrapper.cpp | 315 +++
+ .../xdg-decoration-unstable-v1_wrapper.h | 98 +
+ .../wayland-protocols/qt-windowmanager.xml | 58 +
+ .../wayland-protocols/server-decoration.xml | 85 +
+ .../xdg-decoration-unstable-v1.xml | 156 ++
+ .../wayland/kwinserverdecoration.cpp | 109 +
+ .../mirserver/wayland/kwinserverdecoration.h | 34 +
+ .../mirserver/wayland/xdgdecorationV1.cpp | 96 +
+ .../mirserver/wayland/xdgdecorationV1.h | 31 +
+ .../mirserver/windowmodelnotifier.cpp | 10 +
+ .../wrappedwindowmanagementpolicy.cpp | 73 +-
+ tests/framework/CMakeLists.txt | 2 +
+ tests/framework/mock_task_controller.cpp | 2 +-
+ tests/framework/mock_task_controller.h | 2 +-
+ tests/framework/qtmir_test.h | 4 +-
+ tests/mirserver/CMakeLists.txt | 1 +
+ tests/mirserver/EventBuilder/CMakeLists.txt | 3 +
+ tests/mirserver/ScreensModel/CMakeLists.txt | 2 +
+ tests/mirserver/ScreensModel/stub_display.h | 7 +-
+ .../ScreensModel/testable_screensmodel.h | 2 +-
+ .../URLBuilderDispatcher/CMakeLists.txt | 30 +
+ .../URLBuilderDispatcher/mock_services.h | 23 +-
+ .../urlbuilderdispatcher_test.cpp | 115 +
+ tests/mirserver/miral/CMakeLists.txt | 4 +-
+ tests/mirserver/miral/edid_test.cpp | 18 +-
+ tests/modules/Application/CMakeLists.txt | 2 +
+ .../modules/ApplicationManager/CMakeLists.txt | 2 +
+ tests/modules/Session/CMakeLists.txt | 2 +
+ tests/modules/Session/session_test.cpp | 2 +-
+ tests/modules/SurfaceManager/CMakeLists.txt | 2 +-
+ tests/modules/WindowManager/CMakeLists.txt | 2 +
+ 157 files changed, 7641 insertions(+), 1184 deletions(-)
+ create mode 100644 .gitlab-ci.yml
+ delete mode 100644 debian/libqtmirserver1.install
+ create mode 100644 debian/libqtmirserver2.install
+ create mode 100644 debian/libqtmirserver2.symbols
+ create mode 100644 debian/watch
+ rename include/{qtmir/miral => miroil}/display_configuration_policy.h (79%)
+ rename include/{qtmir/miral => miroil}/display_configuration_storage.h (79%)
+ rename include/{qtmir/miral => miroil}/display_id.h (66%)
+ rename include/{qtmir/miral => miroil}/edid.h (89%)
+ delete mode 100644 src/platforms/mirserver/miral/CMakeLists.txt
+ create mode 100644 src/platforms/mirserver/miroil/CMakeLists.txt
+ create mode 100644 src/platforms/mirserver/miroil/include/miroil/compositor.h
+ create mode 100644 src/platforms/mirserver/miroil/include/miroil/display_configuration_controller_wrapper.h
+ create mode 100644 src/platforms/mirserver/miroil/include/miroil/display_listener_wrapper.h
+ create mode 100644 src/platforms/mirserver/miroil/include/miroil/event_builder.h
+ rename src/platforms/mirserver/{ => miroil/include/miroil}/eventdispatch.h (75%)
+ create mode 100644 src/platforms/mirserver/miroil/include/miroil/input_device.h
+ create mode 100644 src/platforms/mirserver/miroil/include/miroil/input_device_observer.h
+ create mode 100644 src/platforms/mirserver/miroil/include/miroil/mir_prompt_session.h
+ create mode 100644 src/platforms/mirserver/miroil/include/miroil/mir_server_hooks.h
+ rename src/platforms/mirserver/{miral => miroil/include/miroil}/mirbuffer.h (94%)
+ rename src/platforms/mirserver/{openglcontextfactory.h => miroil/include/miroil/open_gl_context.h} (67%)
+ rename src/platforms/mirserver/{miral => miroil/include/miroil}/persist_display_config.h (78%)
+ create mode 100644 src/platforms/mirserver/miroil/include/miroil/prompt_session_listener.h
+ create mode 100644 src/platforms/mirserver/miroil/include/miroil/prompt_session_manager.h
+ create mode 100644 src/platforms/mirserver/miroil/include/miroil/set_compositor.h
+ create mode 100644 src/platforms/mirserver/miroil/include/miroil/surface.h
+ create mode 100644 src/platforms/mirserver/miroil/include/miroil/surface_observer.h
+ create mode 100644 src/platforms/mirserver/miroil/src/CMakeLists.txt
+ create mode 100644 src/platforms/mirserver/miroil/src/compositor.cpp
+ create mode 100644 src/platforms/mirserver/miroil/src/display_configuration_controller_wrapper.cpp
+ rename src/platforms/mirserver/{miral => miroil/src}/display_configuration_policy.cpp (73%)
+ create mode 100644 src/platforms/mirserver/miroil/src/display_listener_wrapper.cpp
+ rename src/platforms/mirserver/{miral => miroil/src}/edid.cpp (91%)
+ create mode 100644 src/platforms/mirserver/miroil/src/event_builder.cpp
+ rename src/platforms/mirserver/{ => miroil/src}/eventdispatch.cpp (87%)
+ create mode 100644 src/platforms/mirserver/miroil/src/input_device.cpp
+ create mode 100644 src/platforms/mirserver/miroil/src/input_device_observer.cpp
+ create mode 100644 src/platforms/mirserver/miroil/src/mir_prompt_session.cpp
+ create mode 100644 src/platforms/mirserver/miroil/src/mir_server_hooks.cpp
+ rename src/platforms/mirserver/{miral => miroil/src}/mirbuffer.cpp (97%)
+ rename src/platforms/mirserver/{openglcontextfactory.cpp => miroil/src/open_gl_context.cpp} (51%)
+ rename src/platforms/mirserver/{miral => miroil/src}/persist_display_config.cpp (74%)
+ create mode 100644 src/platforms/mirserver/miroil/src/prompt_session_listener.cpp
+ create mode 100644 src/platforms/mirserver/miroil/src/prompt_session_manager.cpp
+ create mode 100644 src/platforms/mirserver/miroil/src/set_compositor.cpp
+ create mode 100644 src/platforms/mirserver/miroil/src/surface.cpp
+ delete mode 100644 src/platforms/mirserver/mirserverhooks.cpp
+ delete mode 100644 src/platforms/mirserver/mirserverhooks.h
+ delete mode 100644 src/platforms/mirserver/promptsessionmanager.cpp
+ delete mode 100644 src/platforms/mirserver/promptsessionmanager.h
+ create mode 100644 src/platforms/mirserver/qtwindowmanager.cpp
+ rename src/platforms/mirserver/{mircursorimages.cpp => qtwindowmanager.h} (55%)
+ delete mode 100644 src/platforms/mirserver/setqtcompositor.cpp
+ delete mode 100644 src/platforms/mirserver/setqtcompositor.h
+ create mode 100644 src/platforms/mirserver/urlbuilderdispatcher.cpp
+ create mode 100644 src/platforms/mirserver/urlbuilderdispatcher.h
+ create mode 100644 src/platforms/mirserver/wayland-generated/CMakeLists.txt
+ create mode 100644 src/platforms/mirserver/wayland-generated/qt-windowmanager_wrapper.cpp
+ create mode 100644 src/platforms/mirserver/wayland-generated/qt-windowmanager_wrapper.h
+ create mode 100644 src/platforms/mirserver/wayland-generated/server-decoration_wrapper.cpp
+ create mode 100644 src/platforms/mirserver/wayland-generated/server-decoration_wrapper.h
+ create mode 100644 src/platforms/mirserver/wayland-generated/xdg-decoration-unstable-v1_wrapper.cpp
+ create mode 100644 src/platforms/mirserver/wayland-generated/xdg-decoration-unstable-v1_wrapper.h
+ create mode 100644 src/platforms/mirserver/wayland-protocols/qt-windowmanager.xml
+ create mode 100644 src/platforms/mirserver/wayland-protocols/server-decoration.xml
+ create mode 100644 src/platforms/mirserver/wayland-protocols/xdg-decoration-unstable-v1.xml
+ create mode 100644 src/platforms/mirserver/wayland/kwinserverdecoration.cpp
+ create mode 100644 src/platforms/mirserver/wayland/kwinserverdecoration.h
+ create mode 100644 src/platforms/mirserver/wayland/xdgdecorationV1.cpp
+ create mode 100644 src/platforms/mirserver/wayland/xdgdecorationV1.h
+ create mode 100644 tests/mirserver/URLBuilderDispatcher/CMakeLists.txt
+ rename src/platforms/mirserver/mircursorimages.h => tests/mirserver/URLBuilderDispatcher/mock_services.h (62%)
+ create mode 100644 tests/mirserver/URLBuilderDispatcher/urlbuilderdispatcher_test.cpp
+
+diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
+new file mode 100644
+index 00000000..c63abcd1
+--- /dev/null
++++ b/.gitlab-ci.yml
+@@ -0,0 +1,17 @@
++default:
++ image:
++ name: ubuntu:latest
++ before_script:
++ - apt-get update -yq
++ - DEBIAN_FRONTEND=noninteractive apt-get install -yq devscripts dput git-buildpackage debhelper dh-python pkg-kde-tools
++ - gpg -v --import <(echo "$GPG_PRIVATE_KEY")
++
++upload-ppa:
++ stage: deploy
++ only:
++ - lunar
++ script:
++ - gbp dch --auto -S --multimaint-merge --distribution lunar --force-distribution --ignore-branch
++ - debchange --release --distribution lunar --force-distribution ""
++ - dpkg-buildpackage -I".git" -I"build" -i"^.git|^build" -d -S
++ - dput ppa:mariogrip/butterfly-linux ../*_source.changes
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 1c5aace0..72f90b42 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -3,8 +3,8 @@ cmake_minimum_required(VERSION 3.1)
+ project(qtmir)
+
+ set(QTMIR_VERSION_MAJOR 0)
+-set(QTMIR_VERSION_MINOR 7)
+-set(QTMIR_VERSION_PATCH 2)
++set(QTMIR_VERSION_MINOR 8)
++set(QTMIR_VERSION_PATCH 0)
+
+ set(QTMIR_VERSION ${QTMIR_VERSION_MAJOR}.${QTMIR_VERSION_MINOR}.${QTMIR_VERSION_PATCH})
+
+@@ -32,7 +32,7 @@ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=gnu99 -Wall -Wextra")
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC -Wall -fno-strict-aliasing -Wextra")
+ set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--no-undefined")
+
+-set (CMAKE_CXX_STANDARD 14)
++set (CMAKE_CXX_STANDARD 17)
+
+ if ("${CMAKE_CXX_COMPILER}" MATCHES "clang")
+ set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-return-type-c-linkage -Wno-mismatched-tags -Wno-inconsistent-missing-override -Wno-implicit-exception-spec-mismatch -Wno-unknown-pragmas")
+@@ -66,6 +66,7 @@ add_custom_target(cppcheck COMMAND cppcheck --enable=all -q --error-exitcode=2
+
+ option(WITH_CONTENTHUB "Build with content-hub" OFF)
+ option(WITH_VALGRIND "Build with Valgrind detection" ON)
++option(WITH_MIR2 "Build with mir 2.x" OFF)
+
+ include(FindPkgConfig)
+ find_package(Qt5Core 5.9 REQUIRED)
+@@ -79,9 +80,16 @@ find_package(Qt5Test 5.9 REQUIRED)
+ find_package(Threads REQUIRED)
+
+ pkg_check_modules(MIRSERVER mirserver>=0.26 REQUIRED)
++if(WITH_MIR2)
++pkg_check_modules(MIROIL miroil REQUIRED)
++else()
+ pkg_check_modules(MIRCLIENT mirclient>=0.26 REQUIRED)
++endif()
+ pkg_check_modules(MIRRENDERERGLDEV mir-renderer-gl-dev>=0.26 REQUIRED)
+ pkg_check_modules(MIRAL miral>=1.1.0 REQUIRED)
++pkg_check_modules(MIRWAYLAND mirwayland REQUIRED)
++pkg_check_modules(WAYLAND_CLIENT REQUIRED wayland-client)
++pkg_check_modules(WAYLAND_SERVER REQUIRED wayland-server)
+
+ pkg_check_modules(XKBCOMMON xkbcommon REQUIRED)
+ pkg_check_modules(GLIB glib-2.0 REQUIRED)
+@@ -165,7 +173,7 @@ endif()
+ add_definitions(-DQT_NO_KEYWORDS)
+
+ # Tests
+-if (NO_TESTS)
++if (NO_TESTS OR WITH_MIR2)
+ message(STATUS "Tests disabled")
+ else()
+ include(CTest)
+diff --git a/debian/changelog b/debian/changelog
+index 4405cb42..b467f2ca 100644
+--- a/debian/changelog
++++ b/debian/changelog
+@@ -7,26 +7,329 @@ qtmir (0.7.2) unstable; urgency=medium
+
+ qtmir (0.7.1) unstable; urgency=medium
+
+- * Upstream-provided Debian package for qtmir. See upstream ChangeLog
+- for recent changes.
++ [ Mike Gabriel ]
++ * debian/rules:
++ + Don't hard-code architectures with valgrind support. Simply disable
++ valgrind if not found in $PATH. (Closes: #1022222).
++ * debian/control:
++ + Bump to versioned B-D on liblomiri-api-dev (>= 0.2.0).
+
+- -- UBports developers <developers@ubports.com> Mon, 02 Jan 2023 03:07:10 +0100
++ [ Marius Gripsgard ]
++ * New git snapshot
+
+-qtmir (0.7.0) unstable; urgency=medium
++ -- Marius Gripsgard <marius@ubports.com> Wed, 08 Feb 2023 00:44:49 +0100
+
++qtmir (0.8.0~git20230115.30c2337-3) unstable; urgency=medium
+
+- [ UBports developers ]
+- * Upstream-provided Debian package for qtmir. See upstream ChangeLog
+- for recent changes.
++ * debian/.install: Spesify that we only want xwayland desktop & icon
++ file in qml-module-qtmir (closes: #1029291)
++
++ -- Marius Gripsgard <marius@ubports.com> Sun, 22 Jan 2023 05:54:37 +0000
++
++qtmir (0.8.0~git20230115.30c2337-2) unstable; urgency=medium
++
++ * debian/control: Drop mir-pref-framework from qtmir-tests (closes: #1029015)
++
++ -- Marius Gripsgard <marius@ubports.com> Tue, 17 Jan 2023 22:18:34 +0000
++
++qtmir (0.8.0~git20230115.30c2337-1) unstable; urgency=medium
++
++ * New git snapshot (0.8.0~git20230115.30c2337)
++ * debian/*.symbols: Refresh symbols using pkgkde
++ * debian/patches: Refresh patch to match new git snapshot
++ * debian/copyright: Refresh copyright to match new git snapshot
++ * debian/.install: Install x11 desktop file and icon
++
++ -- Marius Gripsgard <marius@ubports.com> Sun, 15 Jan 2023 20:23:41 +0100
++
++qtmir (0.8.0~git20230109.671f617-3) unstable; urgency=medium
++
++ * Now!!! Really re-upload as is to unstable.
++
++ -- Mike Gabriel <sunweaver@debian.org> Fri, 13 Jan 2023 16:45:56 +0100
++
++qtmir (0.8.0~git20230109.671f617-2) experimental; urgency=medium
++
++ * Re-upload as is to unstable.
++
++ -- Mike Gabriel <sunweaver@debian.org> Fri, 13 Jan 2023 13:23:18 +0100
++
++qtmir (0.8.0~git20230109.671f617-1) experimental; urgency=medium
++
++ * Upload to experimental.
++
++ [ Marius Gripsgard ]
++ * New git snapshot (based on ubports/focal_-_mir2 branch)
++ * debian/*:
++ + Bump libqtmirserver soname version to 2
++ * debian/control:
++ + Bump mir requirement to 2.11 and add miroil-dev as B-D.
++ * debian/rules:
++ + Build with MIR2 option enabled.
++ * debian/watch:
++ + Update watch to pull git branch.
++ * debian/copyright:
++ + Refresh copyright to match new git snapshot
++ * debian/*.symbols:
++ + Refresh symbols using pkgkde.
++
++ [ Mike Gabriel ]
++ * debian/copyright:
++ + Update auto-generated copyright.in file.
++ + Update attributions for debian/.
++ * debian/changelog:
++ + Amend white-space issue.
++
++ -- Mike Gabriel <sunweaver@debian.org> Tue, 10 Jan 2023 08:07:55 +0100
++
++qtmir (0.7.1-3) unstable; urgency=medium
++
++ * [debian/.symbols] Refresh symbols using pkgkde
++
++ -- Marius Gripsgard <marius@ubports.com> Tue, 03 Jan 2023 10:38:41 +0100
++
++qtmir (0.7.1-2) unstable; urgency=medium
++
++ * debian/rules:
++ - Disable valgrind on mipsel due to known issues with valgrind on mipsel
++
++ -- Marius Gripsgard <marius@ubports.com> Mon, 02 Jan 2023 12:04:30 +0100
++
++qtmir (0.7.1-1) unstable; urgency=medium
++
++ * New upstream release v0.7.1
++ * Drop upstreamed patch:
++ - 0001_remove-unused-gmock-fixes.patch
++ * Refresh libqtmirserver1 symbols using pkgkde
++ * Update copyright to match new upstream release v0.7.1
++
++ -- Marius Gripsgard <marius@ubports.com> Mon, 02 Jan 2023 03:25:08 +0100
++
++qtmir (0.7.0-4) unstable; urgency=medium
++
++ * debian/libqtmirserver1.symbols:
++ + Update symbols. (Closes: #1021359).
++
++ -- Mike Gabriel <sunweaver@debian.org> Fri, 07 Oct 2022 09:20:06 +0200
++
++qtmir (0.7.0-3) unstable; urgency=medium
++
++ * debian/patches:
++ + Cherry-picḱ 0001_remove-unused-gmock-fixes.patch. (Closes: #1015133).
++ * debian/:
++ + Update upstream Git repo URL.
++ * debian/control:
++ + Bump Standards-Version: to 4.6.1. No changes needed.
++ * debian/libqtmirserver1.symbols:
++ + Update .symbols for gcc-12 rebuild.
++ * debian/copyright:
++ + Update copyright attributions for debian/*.
++
++ -- Mike Gabriel <sunweaver@debian.org> Wed, 05 Oct 2022 21:03:05 +0200
++
++qtmir (0.7.0-2) unstable; urgency=medium
++
++ [ Mike Gabriel ]
++ * debian/control:
++ + Update Homepage: field. Use upstream GitLab URL (instead of deprecated
++ Github URL).
+
+- -- UBports developers <developers@ubports.com> Fri, 22 Apr 2022 06:26:25 +0200
++ [ Marius Gripsgard ]
++ * debian/libqtmirserver1.symbols:
++ + Refresh symbol file from buildd logs using pkgkde-symbolshelper.
+
+-qtmir (0.6.1-0) unstable; urgency=medium
++ -- Mike Gabriel <sunweaver@debian.org> Wed, 25 May 2022 23:48:32 +0200
+
+- * Upstream-provided Debian package for qtmir.
+- See upstream ChangeLog for recent changes.
++qtmir (0.7.0-1) unstable; urgency=medium
+
+- -- UBports Team <developers@ubports.com> Mon, 28 Sep 2020 10:08:12 +0200
++ [ Marius Gripsgard ]
++ * New upstream release v0.7.0
++ * debian/patches: Drop upstreamed and unneeded patches, refresh patches:
++ + Drop upstreamed and unneeded patches:
++ - 0001_demo-fix-detecting-running-installed.patch
++ - 0002_demos-fix-application-name.patch
++ - 1002_drop-cgmanager-dependency.patch
++ - 1003_INSTANTIATE_TEST_SUITE.patch
++ - 1004_remove-cmake-instructions-that-have-been-moved-into-FindGMock.patch
++ - 1005_add-missing-pthread-to-link-target.patch
++ - 1006_make-sure-tracepoints-h-exists.patch
++ - 1007_make-valgrind-dependency-optional.patch
++ - 1008_drop-Werror-enforcement-leave-it-to-configure-option.patch
++ - 2001_no-convert-to-gles-test.patch
++ - 2004_qml-demo-shell-work-without-ui-toolkit.patch
++ + Refreshed patches:
++ - 2002_no-requires-provides-check.patch
++ - 2003_disable-benchmarks.patch
++ * debian/copyright: Update copyright to match new upstream release
++ * debian/symbols: Update symbols to match new upstream release
++ * debian/control: Drop qtmir-{android/desktop} and use a generic qtmir package
++ * debian/control: Add myself as uploader
++ * debian/control: Bump required versions for cmake-extras and googletest
++ * debian/rules: Clean up rules and remove dual binary build (was for
++ android/desktop split)
++ * debian/qtmir-tests: Rename paths to match upstream renames
++ * debian/control: Add qml-module-lomiri-components as DEP for qtmir-tests
++
++ [ Mike Gabriel ]
++ * debian/copyright:
++ + Update auto-generated copyright.in file.
++ + Update more copyright attributions, finalize for upload.
++ * debian/control:
++ + Improve transitional packages, provide former info on the packages'
++ content. Thanks, lintian.
++
++ -- Mike Gabriel <sunweaver@debian.org> Sat, 23 Apr 2022 09:45:49 +0200
++
++qtmir (0.6.1-8) unstable; urgency=medium
++
++ * debian/rules:
++ + Comment out DPKG_GENSYMBOLS_CHECK_LEVEL=4. Let's use level 1 (default)
++ and receive less build failures. (related to #997464).
++ * debian/control:
++ + Bump Standards-Version: to 4.6.0. No changes needed.
++ * debian/libqtmirserver1.symbols:
++ + Update symbols after build with gcc-11. (Closes: #997464).
++
++ -- Mike Gabriel <sunweaver@debian.org> Sat, 13 Nov 2021 21:05:14 +0100
++
++qtmir (0.6.1-7) unstable; urgency=medium
++
++ * debian/libqtmirserver1.symbols:
++ + Update for architectures arm64, m68k, mips64el and sh4.
++
++ -- Mike Gabriel <sunweaver@debian.org> Sun, 14 Mar 2021 21:36:52 +0100
++
++qtmir (0.6.1-6) unstable; urgency=medium
++
++ * debian/control:
++ + Limit qtmir to linux-any architecture builds.
++ * debian/patches:
++ + Add 0001_demo-fix-detecting-running-installed.patch,
++ 0002_demos-fix-application-name.patch. Fix loading demo shell and demo
++ client.
++ + Add 2004_qml-demo-shell-work-without-ui-toolkit.patch. Make qml-demo-shell
++ work without lomiri-ui-toolkit.
++ * debian/rules:
++ + Move qtmir-demo-shell files to the correct location.
++ * debian/qtmir-tests.install:
++ + Pick up files for qtmir-demo-shell and qtmir-demo-client from the correct
++ location (as moved around by d/rules).
++
++ -- Mike Gabriel <sunweaver@debian.org> Wed, 10 Mar 2021 21:08:51 +0100
++
++qtmir (0.6.1-5) unstable; urgency=medium
++
++ * debian/control:
++ + Replace D (qtmir-tests): qtdeclarative5-qtmir-plugin by qml-module-qtmir,
++ drop from D (qtmir-tests): autopilot-qt5 and python3-autopilot. (Closes:
++ #977134).
++ + Bump Standards-Version: to 4.5.1. No changes needed.
++ * debian/qtmir-tests.install:
++ + Drop DATADIR/qtmir/benachmarks/* from qtmir-tests bin:pkg.
++ * debian/patches:
++ + Add 2003_disable-benchmarks.patch. No autopilot in Debian, so let's build
++ qtmir without dependency on it (i.e. without benchmarks).
++
++ -- Mike Gabriel <sunweaver@debian.org> Wed, 16 Dec 2020 16:32:50 +0100
++
++qtmir (0.6.1-4) unstable; urgency=medium
++
++ * debian/libqtmirserver1.symbols:
++ + Update for armel architecture. (Closes: #973423).
++
++ -- Mike Gabriel <sunweaver@debian.org> Fri, 30 Oct 2020 19:56:05 +0100
++
++qtmir (0.6.1-3) unstable; urgency=medium
++
++ * debian/patches:
++ + Add 1008_drop-Werror-enforcement-leave-it-to-configure-option.patch. Fix
++ disabling -Werror via CMake configure option.
++ * debian/rules:
++ + Build with CMake option '-DWerror=OFF'. (Closes: #973437).
++ * debian/libqtmirserver1.symbols:
++ + Update after rebuild against Qt 5.15 (amd64 only for now).
++
++ -- Mike Gabriel <sunweaver@debian.org> Fri, 30 Oct 2020 17:45:48 +0100
++
++qtmir (0.6.1-2) unstable; urgency=medium
++
++ * debian/control:
++ + Only require valgrind as B-D on architectures where it is available on.
++ * debian/patches:
++ + Add 1007_make-valgrind-dependency-optional.patch. Make Valgrind an
++ optional build dependency.
++ * debian/libqtmirserver1.symbols:
++ + Update symbols for armhf i386 mipsel ppc64el.
++
++ -- Mike Gabriel <sunweaver@debian.org> Wed, 28 Oct 2020 14:33:37 +0100
++
++qtmir (0.6.1-1) unstable; urgency=medium
++
++ * Initial upload to Debian (Closes: #971257).
++ * debian/*:
++ + Rename bin:pkg qtdeclarative5-qtmir-plugin to qml-module-qtmir.
++ * debian/watch:
++ + Add file.
++ * debian/control:
++ + Adjust B-Ds for googletest.
++ + Drop B-D libcontent-hub-dev.
++ + Drop B-D on libcgmanager-dev. (Package not available in Debian anymore).
++ + Drop B-D on libmirclient-dev. Not required anymore with qtmir 0.6.1.
++ + Fix dev:pkg name provided by lomiri-app-launch.
++ + Fix versioned B-D on lomiri-api-dev. Remnant of Unity8 -> Lomiri
++ migration.
++ + Update versioned B-D: cmake-extras (>= 1.5-4~).
++ + Drop from B-D: qt5-default (meta package).
++ + Bump Standards-Version: to 4.5.0. No changes needed.
++ + Bump DH compat level to version 13.
++ + Add Vcs-*: fields.
++ + Assure binNMU'ability between bin:pkgs in this src:pkg.
++ + Add Rules-Requires-Root: field and set it to 'no'.
++ + Add B-D pkg-kde-tools.
++ + Drop Section: field duplicating global Section: field.
++ + Improve LONG_DESCRIPTION fields of two bin:pkgs.
++ + Turn bin:pkg qtmir-tests into Multi-Arch: foreign.
++ + Move qtmir-tests bin:pkg into section 'libdevel'.
++ + Adjust Maintainer: field and Uploaders: field to official upload to
++ Debian.
++ + Add Debian Qt/KDE Maintainers to Uploaders: field.
++ * debian/rules:
++ + Add get-orig-source target.
++ + Move --fail-missing flag into dh_missing override.
++ + Remove build-*/ during dh_clean. Makes build idempotent.
++ + Don't build WITH_CONTENTHUB anymore. Obsolete in qtmir 0.6.1.
++ + Drop now default --parallel DH build option.
++ + Enable all hardening build flags.
++ + Build with pkgkde_symbolshelper.
++ * debian/patches:
++ + Add 1002_drop-cgmanager-dependency.patch. Rip out cgmanager dependent
++ code. This has been sanctioned by upstream.
++ + Add 1003_INSTANTIATE_TEST_SUITE.patch. Use INSTANTIATE_TEST_SUITE macro,
++ rather than deprecated INSTANTIATE_TEST_CASE macro.
++ + Add 1004_remove-cmake-instructions-that-have-been-moved-into-
++ FindGMock.patch. Drop CMake instructions that have been moved into
++ FindGMock of cmake-extras.
++ + Add 1005_add-missing-pthread-to-link-target.patch. Add missing -pthread
++ linker argument. Probably to hard-coded, but works for now.
++ + Add 2001_no-convert-to-gles-test.patch and 2002_no-requires-provides-
++ check.patch. Disable tests fiddling around with files in debian/*. Not
++ wanted by Debian maintainer.
++ + Add 1006_make-sure-tracepoints-h-exists.patch. Make sure tracepoints.h
++ exists for building library 'qtmirserver-mirserver'.
++ + Add upstream bugs for all 100* patches.
++ + Refer to a bug report for Debian-specific patches 200*_*.patch.
++ * debian/source/format:
++ + Add file.
++ * debian/copyright:
++ + Add auto-generated copyright.in file.
++ + Rework copyright attributions, use individual-code-file style.
++ + Also mention files we remove via patch.
++ * debian/upstream/metadata:
++ + Add file. Comply with DEP-12.
++ * debian/libqtmirserver1.symbols:
++ + Add file.
++
++ -- Mike Gabriel <sunweaver@debian.org> Sun, 25 Oct 2020 01:31:45 +0200
+
+ qtmir (0.6.0ubuntu5) xenial; urgency=medium
+
+@@ -44,7 +347,7 @@ qtmir (0.6.0ubuntu5) xenial; urgency=medium
+
+ qtmir (0.5.3+ubports1) xenial; urgency=medium
+
+- * Import to ubports
++ * Import to ubports
+
+ -- Marius Gripsgard <marius@ubports.com> Thu, 28 Dec 2017 04:30:55 +0100
+
+@@ -982,7 +1285,7 @@ qtmir (0.4.6+15.04.20150827.1-0ubuntu1) vivid; urgency=medium
+
+ qtmir (0.4.5+15.10.20150817-0ubuntu1) wily; urgency=medium
+
+- *
++ *
+
+ -- CI Train Bot <ci-train-bot@canonical.com> Mon, 17 Aug 2015 19:28:26 +0000
+
+diff --git a/debian/control b/debian/control
+index a1489e85..9c5b5631 100644
+--- a/debian/control
++++ b/debian/control
+@@ -1,21 +1,24 @@
+ Source: qtmir
+ Section: libs
+ Priority: optional
+-Maintainer: UBports Developers <developers@ubports.com>
++Maintainer: Debian UBports Team <team+ubports@tracker.debian.org>
++Uploaders:
++ Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>,
++ Mike Gabriel <sunweaver@debian.org>,
++ Marius Gripsgard <marius@ubports.com>,
+ Build-Depends: cmake,
+ cmake-extras (>= 1.6~),
+- debhelper-compat (= 12),
++ debhelper-compat (= 13),
+ googletest (>= 1.10.0),
+- libcontent-hub-dev (>= 1.0.0),
+ libfontconfig1-dev,
+ libgles2-mesa-dev,
+ libglib2.0-dev,
+ libgsettings-qt-dev,
+ libgtest-dev,
+ liblttng-ust-dev,
+- libmiral-dev (>= 1.2),
+- libmircommon-dev (>= 0.26.0),
+- libmirserver-dev (>= 0.26.0),
++ libmiral-dev (>= 3.0),
++ libmircommon-dev (>= 2.11.0),
++ libmirserver-dev (>= 2.11.0),
+ libmtdev-dev,
+ libprocess-cpp-dev,
+ libqt5sensors5-dev,
+@@ -27,9 +30,13 @@ Build-Depends: cmake,
+ liblomiri-url-dispatcher-dev,
+ libxkbcommon-dev,
+ libxrender-dev,
+- mir-renderer-gl-dev (>= 0.26.0),
+- mirtest-dev (>= 0.26.0),
++ mir-renderer-gl-dev (>= 2.11.0),
++ mirtest-dev (>= 2.11.0),
++ libmiroil-dev,
++ libmirwayland-dev,
++ libwayland-dev,
+ pkg-config,
++ pkg-kde-tools,
+ # lttng-gen-ts needs python3, but doesn't depend on it itself: bug 1359147
+ python3:any,
+ qtbase5-dev,
+@@ -37,15 +44,17 @@ Build-Depends: cmake,
+ qtdeclarative5-dev,
+ qtdeclarative5-private-dev,
+ quilt,
+- valgrind [amd64 arm64 armhf i386 mips64el mipsel ppc64el s390x powerpc ppc64 x32],
++ valgrind-if-available,
+ # libmirserver-dev should have brought this dep. Bug lp:1617435
+ uuid-dev,
+ # mirtest pkgconfig requires these, but doesn't have a deb dependency. Bug lp:1633537
+ libboost-filesystem-dev,
+ libboost-system-dev,
+-Standards-Version: 4.5.1
++Standards-Version: 4.6.1
+ Rules-Requires-Root: no
+-Homepage: https://github.com/ubports/qtmir
++Homepage: https://gitlab.com/ubports/development/core/qtmir
++Vcs-Git: https://salsa.debian.org/ubports-team/qtmir.git
++Vcs-Browser: https://salsa.debian.org/ubports-team/qtmir
+
+ Package: qtmir
+ Architecture: linux-any
+@@ -65,19 +74,29 @@ Package: qtmir-android
+ Architecture: armhf arm64
+ Multi-Arch: same
+ Depends: qtmir, ${misc:Depends},
+-Priority: optional
+ Section: oldlibs
+-Description: transitional package
+- This is a transitional package. It can safely be removed.
++Description: QPA plugin for a Mir server (mobile, transitional package)
++ QtMir is a set of Qt5 components to enable one to write a Mir server with Qt.
++ It contains a QPA (Qt Platform Abstraction) plugin which creates and manages
++ a Mir server. It also exposes some internal Mir functionality.
++ .
++ This variant of the package is for Android-based phones and tablets.
++ .
++ This is a transitional package. It can safely be removed.
+
+ Package: qtmir-desktop
+ Architecture: linux-any
+ Multi-Arch: same
+ Depends: qtmir, ${misc:Depends},
+-Priority: optional
+ Section: oldlibs
+-Description: transitional package
+- This is a transitional package. It can safely be removed.
++Description: QPA plugin for a Mir server (desktop, transitional package)
++ QtMir is a set of Qt5 components to enable one to write a Mir server with Qt.
++ It contains a QPA (Qt Platform Abstraction) plugin which creates and manages
++ a Mir server. It also exposes some internal Mir functionality.
++ .
++ This variant of the package is for GNU-based desktops.
++ .
++ This is a transitional package. It can safely be removed.
+
+ Package: libqtmirserver-dev
+ Section: libdevel
+@@ -86,7 +105,8 @@ Multi-Arch: same
+ Pre-Depends: ${misc:Pre-Depends}
+ Depends: qtmir (= ${binary:Version}),
+ ${misc:Depends},
+- libmiral-dev (>= 1.3.0),
++ libmiral-dev (>= 3.0),
++ libmiroil-dev,
+ Description: Developer files for QtMir server API
+ QtMir is a set of Qt5 components to enable one to write a Mir server with Qt.
+ It contains a QPA (Qt Platform Abstraction) plugin which creates and manages
+@@ -94,7 +114,7 @@ Description: Developer files for QtMir server API
+ .
+ This package contains the library headers for developers.
+
+-Package: libqtmirserver1
++Package: libqtmirserver2
+ Architecture: linux-any
+ Multi-Arch: same
+ Pre-Depends: ${misc:Pre-Depends}
+@@ -115,7 +135,7 @@ Depends: qtmir (= ${binary:Version}),
+ ${misc:Depends},
+ ${shlibs:Depends},
+ Provides: lomiri-application-impl,
+- lomiri-application-impl-28,
++ lomiri-application-impl-27,
+ Description: Qt/QML module for Lomiri specific Mir APIs
+ QtMir is a set of Qt5 components to enable one to write a Mir server with Qt.
+ It contains a QPA (Qt Platform Abstraction) plugin which creates and manages
+@@ -133,16 +153,11 @@ Pre-Depends: ${misc:Pre-Depends},
+ Depends: littler,
+ lttng-tools,
+ mir-test-tools,
+- python3-autopilot,
+- python3-babeltrace,
+- python3-evdev,
+- python3-mir-perf-framework,
+ qml-module-lomiri-components,
+ qml-module-qtmir,
+ qtmir (= ${binary:Version}),
+ ${misc:Depends},
+ ${shlibs:Depends},
+-Recommends: autopilot-qt5,
+ Description: QtMir tests and demos
+ QtMir is a set of Qt5 components to enable one to write a Mir server with Qt.
+ It contains a QPA (Qt Platform Abstraction) plugin which creates and manages
+diff --git a/debian/copyright b/debian/copyright
+index ca90ebf9..88486c50 100644
+--- a/debian/copyright
++++ b/debian/copyright
+@@ -1,12 +1,12 @@
+ Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+ Upstream-Name: qtmir
+ Upstream-Contact: Marius Gripsgard <marius@ubports.com>
+-Source: https://gitlab.com/ubports/core/qtmir/
++Source: https://gitlab.com/ubports/development/core/qtmir/
+
+-Files: demos/qml-demo-shell/screens.cpp
+- demos/qml-demo-shell/screens.h
+- demos/qml-demo-shell/screenwindow.cpp
+- demos/qml-demo-shell/screenwindow.h
++Files: demos/qtmir-demo-shell/screens.cpp
++ demos/qtmir-demo-shell/screens.h
++ demos/qtmir-demo-shell/screenwindow.cpp
++ demos/qtmir-demo-shell/screenwindow.h
+ include/qtmir/displayconfigurationpolicy.h
+ include/qtmir/displayconfigurationstorage.h
+ include/qtmir/mirserverapplication.h
+@@ -26,19 +26,18 @@ Files: demos/qml-demo-shell/screens.cpp
+ src/common/workspacecontrollerinterface.h
+ src/modules/QtMir/Application/application.cpp
+ src/modules/QtMir/Application/application.h
++ src/modules/QtMir/Application/application_manager.cpp
+ src/modules/QtMir/Application/application_manager.h
+ src/modules/QtMir/Application/applicationinfo.h
+- src/modules/QtMir/Application/cgmanager.cpp
+- src/modules/QtMir/Application/cgmanager.h
+ src/modules/QtMir/Application/compositortextureprovider.cpp
+ src/modules/QtMir/Application/compositortextureprovider.h
+ src/modules/QtMir/Application/dbusfocusinfo.cpp
+ src/modules/QtMir/Application/dbusfocusinfo.h
+ src/modules/QtMir/Application/gscopedpointer.h
+- src/modules/QtMir/Application/mirbuffersgtexture.cpp
+ src/modules/QtMir/Application/mirbuffersgtexture.h
+ src/modules/QtMir/Application/mirsurface.h
+ src/modules/QtMir/Application/mirsurfaceinterface.h
++ src/modules/QtMir/Application/mirsurfaceitem.cpp
+ src/modules/QtMir/Application/mirsurfaceitem.h
+ src/modules/QtMir/Application/objectlistmodel.h
+ src/modules/QtMir/Application/plugin.cpp
+@@ -78,8 +77,6 @@ Files: demos/qml-demo-shell/screens.cpp
+ src/platforms/mirserver/inputdeviceobserver.h
+ src/platforms/mirserver/logging.cpp
+ src/platforms/mirserver/logging.h
+- src/platforms/mirserver/mircursorimages.cpp
+- src/platforms/mirserver/mircursorimages.h
+ src/platforms/mirserver/mirdisplayconfigurationobserver.cpp
+ src/platforms/mirserver/mirdisplayconfigurationobserver.h
+ src/platforms/mirserver/mirglconfig.h
+@@ -107,6 +104,7 @@ Files: demos/qml-demo-shell/screens.cpp
+ src/platforms/mirserver/qmirserver_p.h
+ src/platforms/mirserver/qtcompositor.cpp
+ src/platforms/mirserver/qtcompositor.h
++ src/platforms/mirserver/qteventfeeder.cpp
+ src/platforms/mirserver/qteventfeeder.h
+ src/platforms/mirserver/screenadaptor.cpp
+ src/platforms/mirserver/screenadaptor.h
+@@ -130,6 +128,7 @@ Files: demos/qml-demo-shell/screens.cpp
+ src/platforms/mirserver/windowmodelnotifier.cpp
+ src/platforms/mirserver/workspacecontroller.cpp
+ src/platforms/mirserver/workspacecontroller.h
++ src/platforms/mirserver/wrappedsessionauthorizer.cpp
+ src/platforms/mirserver/wrappedsessionauthorizer.h
+ src/platforms/mirserver/wrappedwindowmanagementpolicy.cpp
+ src/platforms/mirserver/wrappedwindowmanagementpolicy.h
+@@ -214,8 +213,10 @@ Copyright: 2011-2014, Canonical, Ltd.
+ 2017, Canonical, Ltd.
+ License: LGPL-3
+
+-Files: CMakeLists.txt
+- Jenkinsfile
++Files:
++ AUTHORS
++ CMakeLists.txt
++ ChangeLog
+ NEWS
+ README
+ benchmarks/CMakeLists.txt
+@@ -225,24 +226,27 @@ Files: CMakeLists.txt
+ cmake/modules/QmlTest.cmake
+ cmake/modules/UseLttngGenTp.cmake
+ cmake/modules/autopilot.cmake
++ data/CMakeLists.txt
++ data/xwayland.qtmir.desktop
++ data/xwayland.qtmir.png
+ demos/CMakeLists.txt
+- demos/qml-demo-client/CMakeLists.txt
+- demos/qml-demo-client/MovingRect.qml
+- demos/qml-demo-client/qml-demo-client.qml
+- demos/qml-demo-client/qtmir-demo-client.desktop.in
+- demos/qml-demo-shell/Button.qml
+- demos/qml-demo-shell/CMakeLists.txt
+- demos/qml-demo-shell/ResizeArea.qml
+- demos/qml-demo-shell/ScreenConfiguration.qml
+- demos/qml-demo-shell/Shell.qml
+- demos/qml-demo-shell/TitleBar.qml
+- demos/qml-demo-shell/UnityLogo.png
+- demos/qml-demo-shell/Window.qml
+- demos/qml-demo-shell/WindowBufferSized.qml
+- demos/qml-demo-shell/WindowModelDebugView.qml
+- demos/qml-demo-shell/qml-demo-shell.qml
+- demos/qml-demo-shell/qml-demo-shell.qmlproject
+- include/qtmir/miral/display_id.h
++ demos/qtmir-demo-client/CMakeLists.txt
++ demos/qtmir-demo-client/MovingRect.qml
++ demos/qtmir-demo-client/qml-demo-client.qml
++ demos/qtmir-demo-client/qtmir-demo-client.desktop.in
++ demos/qtmir-demo-shell/Button.qml
++ demos/qtmir-demo-shell/CMakeLists.txt
++ demos/qtmir-demo-shell/ResizeArea.qml
++ demos/qtmir-demo-shell/ScreenConfiguration.qml
++ demos/qtmir-demo-shell/Shell.qml
++ demos/qtmir-demo-shell/TitleBar.qml
++ demos/qtmir-demo-shell/UnityLogo.png
++ demos/qtmir-demo-shell/Window.qml
++ demos/qtmir-demo-shell/WindowBufferSized.qml
++ demos/qtmir-demo-shell/WindowModelDebugView.qml
++ demos/qtmir-demo-shell/qml-demo-shell.qml
++ demos/qtmir-demo-shell/qml-demo-shell.qmlproject
++ include/miroil/display_id.h
+ include/qtmir/qtmir.h
+ src/CMakeLists.txt
+ src/common/timestamp.cpp
+@@ -255,14 +259,14 @@ Files: CMakeLists.txt
+ src/modules/QtMir/CMakeLists.txt
+ src/platforms/CMakeLists.txt
+ src/platforms/mirserver/CMakeLists.txt
+- src/platforms/mirserver/miral/CMakeLists.txt
++ src/platforms/mirserver/miroil/CMakeLists.txt
++ src/platforms/mirserver/miroil/src/CMakeLists.txt
+ src/platforms/mirserver/mirserver.json
+ src/platforms/mirserver/qtmir.cpp
+ src/platforms/mirserver/qtmirserver.pc.in
+ src/platforms/mirserver/tracepoints.tp
+ tests/CMakeLists.txt
+ tests/check-requires-provides.sh
+- tests/convert-to-gles.sh
+ tests/framework/CMakeLists.txt
+ tests/framework/mock_persistent_surface_store.h
+ tests/mirserver/CMakeLists.txt
+@@ -288,39 +292,59 @@ Comment:
+ Assuming same license as for the majority of code files,
+ assuming same copyright holders.
+
+-Files: include/qtmir/miral/display_configuration_policy.h
+- include/qtmir/miral/display_configuration_storage.h
+- include/qtmir/miral/edid.h
+- src/platforms/mirserver/eventdispatch.cpp
+- src/platforms/mirserver/eventdispatch.h
+- src/platforms/mirserver/miral/display_configuration_policy.cpp
+- src/platforms/mirserver/miral/edid.cpp
+- src/platforms/mirserver/miral/mirbuffer.cpp
+- src/platforms/mirserver/miral/mirbuffer.h
+- src/platforms/mirserver/miral/persist_display_config.cpp
+- src/platforms/mirserver/miral/persist_display_config.h
+- src/platforms/mirserver/mirserverhooks.cpp
+- src/platforms/mirserver/mirserverhooks.h
+- src/platforms/mirserver/openglcontextfactory.cpp
+- src/platforms/mirserver/openglcontextfactory.h
++Files: include/miroil/display_configuration_policy.h
++ include/miroil/display_configuration_storage.h
++ include/miroil/edid.h
++ src/platforms/mirserver/miroil/include/miroil/compositor.h
++ src/platforms/mirserver/miroil/include/miroil/display_configuration_controller_wrapper.h
++ src/platforms/mirserver/miroil/include/miroil/display_listener_wrapper.h
++ src/platforms/mirserver/miroil/include/miroil/event_builder.h
++ src/platforms/mirserver/miroil/include/miroil/eventdispatch.h
++ src/platforms/mirserver/miroil/include/miroil/input_device.h
++ src/platforms/mirserver/miroil/include/miroil/input_device_observer.h
++ src/platforms/mirserver/miroil/include/miroil/mir_prompt_session.h
++ src/platforms/mirserver/miroil/include/miroil/mir_server_hooks.h
++ src/platforms/mirserver/miroil/include/miroil/mirbuffer.h
++ src/platforms/mirserver/miroil/include/miroil/open_gl_context.h
++ src/platforms/mirserver/miroil/include/miroil/persist_display_config.h
++ src/platforms/mirserver/miroil/include/miroil/prompt_session_listener.h
++ src/platforms/mirserver/miroil/include/miroil/prompt_session_manager.h
++ src/platforms/mirserver/miroil/include/miroil/set_compositor.h
++ src/platforms/mirserver/miroil/include/miroil/surface.h
++ src/platforms/mirserver/miroil/include/miroil/surface_observer.h
++ src/platforms/mirserver/miroil/src/compositor.cpp
++ src/platforms/mirserver/miroil/src/display_configuration_controller_wrapper.cpp
++ src/platforms/mirserver/miroil/src/display_configuration_policy.cpp
++ src/platforms/mirserver/miroil/src/display_listener_wrapper.cpp
++ src/platforms/mirserver/miroil/src/edid.cpp
++ src/platforms/mirserver/miroil/src/event_builder.cpp
++ src/platforms/mirserver/miroil/src/eventdispatch.cpp
++ src/platforms/mirserver/miroil/src/input_device.cpp
++ src/platforms/mirserver/miroil/src/input_device_observer.cpp
++ src/platforms/mirserver/miroil/src/mir_prompt_session.cpp
++ src/platforms/mirserver/miroil/src/mir_server_hooks.cpp
++ src/platforms/mirserver/miroil/src/mirbuffer.cpp
++ src/platforms/mirserver/miroil/src/open_gl_context.cpp
++ src/platforms/mirserver/miroil/src/persist_display_config.cpp
++ src/platforms/mirserver/miroil/src/prompt_session_listener.cpp
++ src/platforms/mirserver/miroil/src/prompt_session_manager.cpp
++ src/platforms/mirserver/miroil/src/set_compositor.cpp
++ src/platforms/mirserver/miroil/src/surface.cpp
+ src/platforms/mirserver/promptsession.h
+- src/platforms/mirserver/promptsessionmanager.cpp
+- src/platforms/mirserver/promptsessionmanager.h
+- src/platforms/mirserver/setqtcompositor.cpp
+- src/platforms/mirserver/setqtcompositor.h
+ tests/framework/fake_surface.h
+ tests/framework/stub_scene_surface.h
+ Copyright: 2014, 2016, Canonical Ltd.
+ 2016, Canonical Ltd.
+ 2016-2017, Canonical Ltd.
+ 2017, Canonical Ltd.
++ 2016-2020 Canonical Ltd.
+ License: GPL-3
+
+ Files: demos/paths.h.in
+- demos/qml-demo-client/main.cpp
+- demos/qml-demo-shell/main.cpp
+- demos/qml-demo-shell/pointerposition.cpp
+- demos/qml-demo-shell/pointerposition.h
++ demos/qtmir-demo-client/main.cpp
++ demos/qtmir-demo-shell/main.cpp
++ demos/qtmir-demo-shell/pointerposition.cpp
++ demos/qtmir-demo-shell/pointerposition.h
+ src/modules/QtMir/Application/mirsurfacelistmodel.cpp
+ src/modules/QtMir/Application/mirsurfacelistmodel.h
+ src/modules/QtMir/Application/timer.cpp
+@@ -338,16 +362,6 @@ Copyright: 2015, Canonical Ltd.
+ 2016, Canonical Ltd.
+ License: LGPL-3
+
+-Files: src/modules/QtMir/Application/application_manager.cpp
+- src/modules/QtMir/Application/mirsurfaceitem.cpp
+- src/platforms/mirserver/qteventfeeder.cpp
+- src/platforms/mirserver/wrappedsessionauthorizer.cpp
+-Copyright: 2013-2016, Canonical, Ltd.
+- 2013-2017, Canonical, Ltd.
+- 2016, Canonical, Ltd.
+-License: LGPL-3
+-Comment: GENERATED FILE
+-
+ Files: cmake/modules/FindQt5EventDispatcherSupport.cmake
+ cmake/modules/FindQt5FontDatabaseSupport.cmake
+ cmake/modules/FindQt5ThemeSupport.cmake
+@@ -379,6 +393,11 @@ Copyright: 2015-2017, Canonical, Ltd.
+ 2020, UBports Foundation
+ License: LGPL-3
+
++Files: src/modules/QtMir/Application/mirbuffersgtexture.cpp
++Copyright: 2013-2015, Canonical, Ltd.
++ 2021, UBports Foundation
++License: GPL-3
++
+ Files: cmake/modules/FindQt5PlatformSupport.cmake
+ Copyright: 2014, Alex Merry <alex.merry@kde.org>
+ 2014, Martin Gräßlin <mgraesslin@kde.org>
+@@ -386,7 +405,8 @@ License: BSD-3-clause
+
+ Files: debian/*
+ Copyright: 2013-2017, Canonical Ltd.
+- 2020, Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
++ 2020-2023, Marius Gripsgard <marius@ubports.com>
++ 2020-2023, Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
+ License: GPL-2 or GPL-3 or LGPL-2.1 or LGPL-3 or BSD-3-clause
+
+ License: LGPL-3
+diff --git a/debian/libqtmirserver1.install b/debian/libqtmirserver1.install
+deleted file mode 100644
+index e07913b9..00000000
+--- a/debian/libqtmirserver1.install
++++ /dev/null
+@@ -1 +0,0 @@
+-usr/lib/*/libqtmirserver.so.1
+diff --git a/debian/libqtmirserver2.install b/debian/libqtmirserver2.install
+new file mode 100644
+index 00000000..89778b57
+--- /dev/null
++++ b/debian/libqtmirserver2.install
+@@ -0,0 +1 @@
++usr/lib/*/libqtmirserver.so.2
+diff --git a/debian/libqtmirserver2.symbols b/debian/libqtmirserver2.symbols
+new file mode 100644
+index 00000000..27b9a899
+--- /dev/null
++++ b/debian/libqtmirserver2.symbols
+@@ -0,0 +1,2381 @@
++# SymbolsHelper-Confirmed: 0.8.0~git20230109.671f617 amd64 arm64 armel armhf hppa i386 mips64el mipsel powerpc ppc64 s390x
++libqtmirserver.so.2 libqtmirserver2 #MINVER#
++* Build-Depends-Package: libqtmirserver-dev
++ _Z10QTMIR_DBUSv@Base 0.6.1
++ _Z13QTMIR_SCREENSv@Base 0.6.1
++ _Z14QTMIR_SESSIONSv@Base 0.6.1
++ _Z14QTMIR_SURFACESv@Base 0.6.1
++ _Z15QTMIR_CLIPBOARDv@Base 0.6.1
++ _Z15QTMIR_MIR_INPUTv@Base 0.6.1
++ _Z16QTMIR_MIR_KEYMAPv@Base 0.6.1
++ (optional=templinst)_Z17qRegisterMetaTypeIN3Mir5StateEEiPKcPT_N9QtPrivate21MetaTypeDefinedHelperIS4_Xaasr12QMetaTypeId2IS4_E7DefinedntsrS9_9IsBuiltInEE11DefinedTypeE@Base 0.6.1
++ (optional=templinst)_Z17qRegisterMetaTypeIN5qtmir13PromptSessionEEiPKcPT_N9QtPrivate21MetaTypeDefinedHelperIS4_Xaasr12QMetaTypeId2IS4_E7DefinedntsrS9_9IsBuiltInEE11DefinedTypeE@Base 0.6.1
++ (optional=templinst)_Z17qRegisterMetaTypeISt10shared_ptrIN3mir5scene7SessionEEEiPKcPT_N9QtPrivate21MetaTypeDefinedHelperIS7_Xaasr12QMetaTypeId2IS7_E7DefinedntsrSC_9IsBuiltInEE11DefinedTypeE@Base 0.6.1
++ _Z18QTMIR_APPLICATIONSv@Base 0.6.1
++ _Z18QTMIR_MIR_MESSAGESv@Base 0.6.1
++ _Z18qtCursorShapeToStrN2Qt11CursorShapeE@Base 0.6.1
++ _Z18touchEventToStringPK11QTouchEvent@Base 0.6.1
++ _Z19mirSurfaceTypeToStri@Base 0.6.1
++ _Z20mirSurfaceStateToStri@Base 0.6.1
++ _Z21QTMIR_SENSOR_MESSAGESv@Base 0.6.1
++ _Z21applicationStateToStri@Base 0.6.1
++ _Z21mirTouchEventToStringPK13MirTouchEvent@Base 0.6.1
++ _Z21unityapiMirStateToStri@Base 0.6.1
++ _Z22mirTouchActionToString14MirTouchAction@Base 0.6.1
++ _Z23mirPointerEventToStringPK15MirPointerEvent@Base 0.6.1
++ _Z23touchPointStateToStringN2Qt15TouchPointStateE@Base 0.6.1
++ _Z24mirKeyboardEventToStringPK16MirKeyboardEvent@Base 0.6.1
++ _Z25mirSurfaceFocusStateToStri@Base 0.6.1
++ _Z25mirSurfaceVisibilityToStri@Base 0.6.1
++ (optional=templinst)_Z27qRegisterNormalizedMetaTypeIN3Mir5StateEEiRK10QByteArrayPT_N9QtPrivate21MetaTypeDefinedHelperIS5_Xaasr12QMetaTypeId2IS5_E7DefinedntsrSA_9IsBuiltInEE11DefinedTypeE@Base 0.6.1
++ (optional=templinst)_Z27qRegisterNormalizedMetaTypeIN5qtmir10FormFactorEEiRK10QByteArrayPT_N9QtPrivate21MetaTypeDefinedHelperIS5_Xaasr12QMetaTypeId2IS5_E7DefinedntsrSA_9IsBuiltInEE11DefinedTypeE@Base 0.6.1
++ (optional=templinst)_Z27qRegisterNormalizedMetaTypeIN5qtmir11OutputTypesEEiRK10QByteArrayPT_N9QtPrivate21MetaTypeDefinedHelperIS5_Xaasr12QMetaTypeId2IS5_E7DefinedntsrSA_9IsBuiltInEE11DefinedTypeE@Base 0.6.1
++ (optional=templinst)_Z27qRegisterNormalizedMetaTypeIN5qtmir13PromptSessionEEiRK10QByteArrayPT_N9QtPrivate21MetaTypeDefinedHelperIS5_Xaasr12QMetaTypeId2IS5_E7DefinedntsrSA_9IsBuiltInEE11DefinedTypeE@Base 0.6.1
++ (optional=templinst)_Z27qRegisterNormalizedMetaTypeIPN5qtmir19ScreenConfigurationEEiRK10QByteArrayPT_N9QtPrivate21MetaTypeDefinedHelperIS6_Xaasr12QMetaTypeId2IS6_E7DefinedntsrSB_9IsBuiltInEE11DefinedTypeE@Base 0.6.1
++ (optional=templinst)_Z27qRegisterNormalizedMetaTypeISt10shared_ptrIN3mir5scene7SessionEEEiRK10QByteArrayPT_N9QtPrivate21MetaTypeDefinedHelperIS8_Xaasr12QMetaTypeId2IS8_E7DefinedntsrSD_9IsBuiltInEE11DefinedTypeE@Base 0.6.1
++ _Z32mirSurfaceAttribAndValueToString15MirWindowAttribi@Base 0.6.1
++ _ZGVZN9QtPrivate15ConnectionTypesINS_4ListIJRKN5miral10WindowInfoE5QSizeEEELb1EE5typesEvE1t@Base 0.6.1
++ _ZGVZN9QtPrivate15ConnectionTypesINS_4ListIJRKN5miral10WindowInfoE6QPointEEELb1EE5typesEvE1t@Base 0.6.1
++ _ZGVZN9QtPrivate15ConnectionTypesINS_4ListIJRKN5miral10WindowInfoEEEELb1EE5typesEvE1t@Base 0.6.1
++ _ZGVZN9QtPrivate15ConnectionTypesINS_4ListIJRKN5miral10WindowInfoEN3Mir5StateEEEELb1EE5typesEvE1t@Base 0.6.1
++ _ZGVZN9QtPrivate15ConnectionTypesINS_4ListIJRKN5miral10WindowInfoEbEEELb1EE5typesEvE1t@Base 0.6.1
++ _ZGVZN9QtPrivate15ConnectionTypesINS_4ListIJRKN5qtmir9NewWindowEEEELb1EE5typesEvE1t@Base 0.6.1
++ _ZN10QByteArrayD1Ev@Base 0.6.1
++ _ZN10QByteArrayD2Ev@Base 0.6.1
++ _ZN10QMirServer11qt_metacallEN11QMetaObject4CallEiPPv@Base 0.6.1
++ _ZN10QMirServer11qt_metacastEPKc@Base 0.6.1
++ _ZN10QMirServer16staticMetaObjectE@Base 0.6.1
++ (optional=templinst)_ZN10QMirServer25overrideSessionAuthorizerERKSt8functionIFSt10shared_ptrIN5qtmir17SessionAuthorizerEEvEE@Base 0.6.1
++ (optional=templinst)_ZN10QMirServer30overrideWindowManagementPolicyERKSt8functionIFSt10shared_ptrIN5qtmir22WindowManagementPolicyEERKN5miral18WindowManagerToolsES1_INS2_29WindowManagementPolicyPrivateEEEE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst)_ZN10QMirServer30wrapDisplayConfigurationPolicyERKSt8functionIFSt10shared_ptrIN5miral26DisplayConfigurationPolicyEEvEE@Base 0.6.1
++ (optional=templinst)_ZN10QMirServer30wrapDisplayConfigurationPolicyERKSt8functionIFSt10shared_ptrIN6miroil26DisplayConfigurationPolicyEERKS1_IN3mir8graphics26DisplayConfigurationPolicyEEEE@Base 0.8.0~git20230109.671f617
++ _ZN10QMirServer35overrideDisplayConfigurationStorageERKN5qtmir35BasicSetDisplayConfigurationStorageE@Base 0.6.1
++ _ZN10QMirServer4stopEv@Base 0.6.1
++ _ZN10QMirServer5startEv@Base 0.6.1
++ _ZN10QMirServer6createEv@Base 0.6.1
++ _ZN10QMirServer7startedEv@Base 0.6.1
++ _ZN10QMirServer7stoppedEv@Base 0.6.1
++ _ZN10QMirServerC1EP7QObject@Base 0.6.1
++ _ZN10QMirServerC2EP7QObject@Base 0.6.1
++ _ZN10QMirServerD0Ev@Base 0.6.1
++ _ZN10QMirServerD1Ev@Base 0.6.1
++ _ZN10QMirServerD2Ev@Base 0.6.1
++ (optional=templinst)_ZN10QMultiHashIKN5miral6WindowEPN5qtmir22WindowNotifierObserverEED1Ev@Base 0.6.1
++ (optional=templinst)_ZN10QMultiHashIKN5miral6WindowEPN5qtmir22WindowNotifierObserverEED2Ev@Base 0.6.1
++ _ZN11MirGLConfigD0Ev@Base 0.6.1
++ _ZN11MirGLConfigD1Ev@Base 0.6.1
++ _ZN11MirGLConfigD2Ev@Base 0.6.1
++ (optional=templinst)_ZN11QMetaTypeIdIN3Mir5StateEE14qt_metatype_idEv@Base 0.6.1
++ _ZN12QMutexLocker6unlockEv@Base 0.6.1
++#MISSING: 0.6.1-8# _ZN12QMutexLockerC1EP11QBasicMutex@Base 0.6.1
++#MISSING: 0.6.1-8# _ZN12QMutexLockerC2EP11QBasicMutex@Base 0.6.1
++ (optional=templinst)_ZN12QWeakPointerI10QMirServerED1Ev@Base 0.6.1
++ (optional=templinst)_ZN12QWeakPointerI10QMirServerED2Ev@Base 0.6.1
++ (optional=templinst)_ZN12QWeakPointerI7QObjectED1Ev@Base 0.6.1
++ (optional=templinst)_ZN12QWeakPointerI7QObjectED2Ev@Base 0.6.1
++ (optional=templinst)_ZN12QWeakPointerIN5qtmir7ScreensEED1Ev@Base 0.6.1
++ (optional=templinst)_ZN12QWeakPointerIN5qtmir7ScreensEED2Ev@Base 0.6.1
++ _ZN12QtCompositor11qt_metacallEN11QMetaObject4CallEiPPv@Base 0.6.1
++ _ZN12QtCompositor11qt_metacastEPKc@Base 0.6.1
++ _ZN12QtCompositor16staticMetaObjectE@Base 0.6.1
++ _ZN12QtCompositor4stopEv@Base 0.8.0~git20230109.671f617
++ _ZN12QtCompositor5startEv@Base 0.8.0~git20230109.671f617
++ _ZN12QtCompositor8startingEv@Base 0.6.1
++ _ZN12QtCompositor8stoppingEv@Base 0.6.1
++ _ZN12QtCompositorD0Ev@Base 0.6.1
++ _ZN12QtCompositorD1Ev@Base 0.6.1
++ _ZN12QtCompositorD2Ev@Base 0.6.1
++ _ZN12ScreensModel11qt_metacallEN11QMetaObject4CallEiPPv@Base 0.6.1
++ _ZN12ScreensModel11qt_metacastEPKc@Base 0.6.1
++ _ZN12ScreensModel11screenAddedEP14PlatformScreen@Base 0.6.1
++ _ZN12ScreensModel12haltRendererEv@Base 0.6.1
++ _ZN12ScreensModel13screenRemovedEP14PlatformScreen@Base 0.6.1
++ _ZN12ScreensModel13startRendererEv@Base 0.6.1
++ _ZN12ScreensModel14updateInternalEv@Base 0.7.1
++ _ZN12ScreensModel16findScreenWithIdERK5QListIP14PlatformScreenEN3mir10IntWrapperINS6_8graphics6detail23GraphicsConfOutputIdTagEiEE@Base 0.6.1
++ _ZN12ScreensModel16staticMetaObjectE@Base 0.6.1
++ _ZN12ScreensModel20onCompositorStartingEv@Base 0.6.1
++ _ZN12ScreensModel20onCompositorStoppingEv@Base 0.6.1
++ _ZN12ScreensModel23canUpdateExistingScreenEPK14PlatformScreenRKN3mir8graphics26DisplayConfigurationOutputE@Base 0.6.1
++ _ZN12ScreensModel4initERKSt10shared_ptrIN3mir8graphics7DisplayEERKS0_I12QtCompositorERKS0_IN6miroil22DisplayListenerWrapperEE@Base 0.8.0~git20230109.671f617
++#MISSING: 0.8.0~git20230109.671f617# _ZN12ScreensModel4initERKSt10shared_ptrIN3mir8graphics7DisplayEERKS0_I12QtCompositorERKS0_INS1_10compositor15DisplayListenerEE@Base 0.6.1
++ _ZN12ScreensModel6updateEv@Base 0.6.1
++ _ZN12ScreensModel9terminateEv@Base 0.6.1
++ _ZN12ScreensModelC1EP7QObject@Base 0.6.1
++ _ZN12ScreensModelC2EP7QObject@Base 0.6.1
++ _ZN12ScreensModelD0Ev@Base 0.6.1
++ _ZN12ScreensModelD1Ev@Base 0.6.1
++ _ZN12ScreensModelD2Ev@Base 0.6.1
++ _ZN13QtEventFeeder11dispatchKeyEPK16MirKeyboardEvent@Base 0.6.1
++ _ZN13QtEventFeeder13dispatchTouchEPK13MirTouchEvent@Base 0.6.1
++ _ZN13QtEventFeeder13validateTouchERN22QWindowSystemInterface10TouchPointE@Base 0.6.1
++ _ZN13QtEventFeeder15dispatchPointerEPK15MirPointerEvent@Base 0.6.1
++ _ZN13QtEventFeeder15touchesToStringERK5QListIN22QWindowSystemInterface10TouchPointEE@Base 0.6.1
++ _ZN13QtEventFeeder15validateTouchesEP7QWindowmR5QListIN22QWindowSystemInterface10TouchPointEE@Base 0.6.1
++ _ZN13QtEventFeeder22sendActiveTouchReleaseEP7QWindowmi@Base 0.6.1
++ _ZN13QtEventFeeder5eventEP6QEvent@Base 0.6.1
++ _ZN13QtEventFeeder8dispatchERK8MirEvent@Base 0.6.1
++ _ZN13QtEventFeederC1EPNS_23QtWindowSystemInterfaceE@Base 0.6.1
++ _ZN13QtEventFeederC1Ev@Base 0.6.1
++ _ZN13QtEventFeederC2EPNS_23QtWindowSystemInterfaceE@Base 0.6.1
++ _ZN13QtEventFeederC2Ev@Base 0.6.1
++ _ZN13QtEventFeederD0Ev@Base 0.6.1
++ _ZN13QtEventFeederD1Ev@Base 0.6.1
++ _ZN13QtEventFeederD2Ev@Base 0.6.1
++ _ZN13ScreenAdaptor11qt_metacallEN11QMetaObject4CallEiPPv@Base 0.6.1
++ _ZN13ScreenAdaptor11qt_metacastEPKc@Base 0.6.1
++ _ZN13ScreenAdaptor14availableModesEv@Base 0.6.1
++ _ZN13ScreenAdaptor16staticMetaObjectE@Base 0.6.1
++ _ZN13ScreenAdaptor17updateScreenModesEv@Base 0.6.1
++ _ZN13ScreenAdaptor18applyConfigurationEPN5qtmir19ScreenConfigurationE@Base 0.6.1
++ _ZN13ScreenAdaptor9setActiveEb@Base 0.6.1
++ _ZN13ScreenAdaptorC1EP7QScreenP7QObject@Base 0.6.1
++ _ZN13ScreenAdaptorC2EP7QScreenP7QObject@Base 0.6.1
++ _ZN13ScreenAdaptorD0Ev@Base 0.6.1
++ _ZN13ScreenAdaptorD1Ev@Base 0.6.1
++ _ZN13ScreenAdaptorD2Ev@Base 0.6.1
++ _ZN14PlatformScreen11customEventEP6QEvent@Base 0.6.1
++ _ZN14PlatformScreen11doneCurrentEv@Base 0.6.1
++ _ZN14PlatformScreen11makeCurrentEv@Base 0.6.1
++ _ZN14PlatformScreen11modeChangedEv@Base 0.6.1
++ _ZN14PlatformScreen11nameChangedEv@Base 0.6.1
++ _ZN14PlatformScreen11qt_metacallEN11QMetaObject4CallEiPPv@Base 0.6.1
++ _ZN14PlatformScreen11qt_metacastEPKc@Base 0.6.1
++ _ZN14PlatformScreen11swapBuffersEv@Base 0.6.1
++ _ZN14PlatformScreen11usedChangedEv@Base 0.6.1
++ _ZN14PlatformScreen12removeWindowEP20ScreenPlatformWindow@Base 0.6.1
++ _ZN14PlatformScreen12scaleChangedEv@Base 0.6.1
++ _ZN14PlatformScreen13activeChangedEb@Base 0.6.1
++ _ZN14PlatformScreen14destroyWindowsEv@Base 0.7.1
++ _ZN14PlatformScreen15positionChangedEv@Base 0.6.1
++ _ZN14PlatformScreen16powerModeChangedEv@Base 0.6.1
++ _ZN14PlatformScreen16staticMetaObjectE@Base 0.6.1
++ _ZN14PlatformScreen17formFactorChangedEv@Base 0.6.1
++ _ZN14PlatformScreen17outputTypeChangedEv@Base 0.6.1
++ _ZN14PlatformScreen18orientationChangedEv@Base 0.6.1
++ _ZN14PlatformScreen19physicalSizeChangedEv@Base 0.6.1
++ _ZN14PlatformScreen19setMirDisplayBufferEPN3mir8graphics13DisplayBufferEPNS1_16DisplaySyncGroupE@Base 0.6.1
++ _ZN14PlatformScreen20primaryWindowChangedEP20ScreenPlatformWindow@Base 0.6.1
++ _ZN14PlatformScreen21availableModesChangedEv@Base 0.6.1
++ _ZN14PlatformScreen23currentModeIndexChangedEv@Base 0.6.1
++ _ZN14PlatformScreen24orientationSensorEnabledEv@Base 0.6.1
++ _ZN14PlatformScreen26setMirDisplayConfigurationERKN3mir8graphics26DisplayConfigurationOutputEb@Base 0.6.1
++ _ZN14PlatformScreen27onOrientationReadingChangedEN19QOrientationReading11OrientationE@Base 0.6.1
++ _ZN14PlatformScreen8activateEv@Base 0.6.1
++ _ZN14PlatformScreen9addWindowEP20ScreenPlatformWindow@Base 0.6.1
++ _ZN14PlatformScreen9setActiveEb@Base 0.6.1
++ _ZN14PlatformScreenC1ERKN3mir8graphics26DisplayConfigurationOutputESt10shared_ptrI17OrientationSensorE@Base 0.6.1
++ _ZN14PlatformScreenC2ERKN3mir8graphics26DisplayConfigurationOutputESt10shared_ptrI17OrientationSensorE@Base 0.6.1
++ _ZN14PlatformScreenD0Ev@Base 0.6.1
++ _ZN14PlatformScreenD1Ev@Base 0.6.1
++ _ZN14PlatformScreenD2Ev@Base 0.6.1
++ (optional=templinst)_ZN14QSharedPointerI10QMirServerED1Ev@Base 0.6.1
++ (optional=templinst)_ZN14QSharedPointerI10QMirServerED2Ev@Base 0.6.1
++ (optional=templinst)_ZN14QSharedPointerIN5qtmir7ScreensEE5derefEPN15QtSharedPointer20ExternalRefCountDataE@Base 0.6.1
++ _ZN15MirServerThread11qt_metacallEN11QMetaObject4CallEiPPv@Base 0.6.1
++ _ZN15MirServerThread11qt_metacastEPKc@Base 0.6.1
++ _ZN15MirServerThread16staticMetaObjectE@Base 0.6.1
++ _ZN15MirServerThread17waitForMirStartupEv@Base 0.6.1
++ _ZN15MirServerThread3runEv@Base 0.6.1
++ _ZN15MirServerThread7stoppedEv@Base 0.6.1
++ _ZN15MirServerThreadD0Ev@Base 0.6.1
++ _ZN15MirServerThreadD1Ev@Base 0.6.1
++ _ZN15MirServerThreadD2Ev@Base 0.6.1
++ _ZN15NativeInterface11qt_metacallEN11QMetaObject4CallEiPPv@Base 0.6.1
++ _ZN15NativeInterface11qt_metacastEPKc@Base 0.6.1
++ _ZN15NativeInterface16staticMetaObjectE@Base 0.6.1
++ _ZN15NativeInterface17setWindowPropertyEP15QPlatformWindowRK7QStringRK8QVariant@Base 0.6.1
++ _ZN15NativeInterface23nativeResourceForScreenERK10QByteArrayP7QScreen@Base 0.7.1
++ _ZN15NativeInterface28nativeResourceForIntegrationERK10QByteArray@Base 0.6.1
++ _ZN15NativeInterfaceC1EP10QMirServer@Base 0.6.1
++ _ZN15NativeInterfaceC2EP10QMirServer@Base 0.6.1
++ _ZN15NativeInterfaceD0Ev@Base 0.6.1
++ _ZN15NativeInterfaceD1Ev@Base 0.6.1
++ _ZN15NativeInterfaceD2Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst)_ZN15QVarLengthArrayIcLi32EEC1Ei@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst)_ZN15QVarLengthArrayIcLi32EEC2Ei@Base 0.6.1
++#MISSING: 0.6.1-8# _ZN15QtSharedPointer20ExternalRefCountDataD1Ev@Base 0.6.1
++#MISSING: 0.6.1-8# _ZN15QtSharedPointer20ExternalRefCountDataD2Ev@Base 0.6.1
++ (optional=templinst)_ZN15QtSharedPointer33ExternalRefCountWithCustomDeleterI10QMirServerNS_13NormalDeleterEE7deleterEPNS_20ExternalRefCountDataE@Base 0.6.1
++ (optional=templinst)_ZN15QtSharedPointer33ExternalRefCountWithCustomDeleterI17ScreensControllerNS_13NormalDeleterEE7deleterEPNS_20ExternalRefCountDataE@Base 0.6.1
++ (optional=templinst)_ZN15QtSharedPointer33ExternalRefCountWithCustomDeleterI18ScreenAdaptorModelNS_13NormalDeleterEE7deleterEPNS_20ExternalRefCountDataE@Base 0.6.1
++ (optional=templinst)_ZN15QtSharedPointer33ExternalRefCountWithCustomDeleterIN5qtmir6Cursor7PrivateENS_13NormalDeleterEE7deleterEPNS_20ExternalRefCountDataE@Base 0.6.1
++ _ZN15SurfaceObserver11nameChangedERK7QString@Base 0.6.1
++ _ZN15SurfaceObserver11qt_metacallEN11QMetaObject4CallEiPPv@Base 0.6.1
++ _ZN15SurfaceObserver11qt_metacastEPKc@Base 0.6.1
++ _ZN15SurfaceObserver12framesPostedEv@Base 0.6.1
++ _ZN15SurfaceObserver13cursorChangedERK7QCursor@Base 0.6.1
++ _ZN15SurfaceObserver13hiddenChangedEb@Base 0.6.1
++ _ZN15SurfaceObserver16attributeChangedE15MirWindowAttribi@Base 0.6.1
++ _ZN15SurfaceObserver16staticMetaObjectE@Base 0.6.1
++ _ZN15SurfaceObserver18inputBoundsChangedERK5QRect@Base 0.6.1
++ _ZN15SurfaceObserver18observerForSurfaceEPKN3mir5scene7SurfaceE@Base 0.6.1
++ _ZN15SurfaceObserver18shellChromeChangedE14MirShellChrome@Base 0.6.1
++ _ZN15SurfaceObserver19maximumWidthChangedEi@Base 0.6.1
++ _ZN15SurfaceObserver19minimumWidthChangedEi@Base 0.6.1
++ _ZN15SurfaceObserver20maximumHeightChangedEi@Base 0.6.1
++ _ZN15SurfaceObserver20minimumHeightChangedEi@Base 0.6.1
++ _ZN15SurfaceObserver21widthIncrementChangedEi@Base 0.6.1
++ _ZN15SurfaceObserver22heightIncrementChangedEi@Base 0.6.1
++ _ZN15SurfaceObserver26notifySurfaceModificationsERKN5miral19WindowSpecificationE@Base 0.6.1
++ _ZN15SurfaceObserver26registerObserverForSurfaceEPS_PKN3mir5scene7SurfaceE@Base 0.6.1
++ _ZN15SurfaceObserver27confinesMousePointerChangedEb@Base 0.6.1
++ _ZN15SurfaceObserver7resizedERK5QSize@Base 0.6.1
++ _ZN15SurfaceObserverD0Ev@Base 0.6.1
++ _ZN15SurfaceObserverD1Ev@Base 0.6.1
++ _ZN15SurfaceObserverD2Ev@Base 0.6.1
++ _ZN16MirOpenGLContext11doneCurrentEv@Base 0.6.1
++ _ZN16MirOpenGLContext11makeCurrentEP16QPlatformSurface@Base 0.6.1
++ _ZN16MirOpenGLContext11qt_metacallEN11QMetaObject4CallEiPPv@Base 0.6.1
++ _ZN16MirOpenGLContext11qt_metacastEPKc@Base 0.6.1
++ _ZN16MirOpenGLContext11swapBuffersEP16QPlatformSurface@Base 0.6.1
++ _ZN16MirOpenGLContext14getProcAddressEPKc@Base 0.6.1
++ _ZN16MirOpenGLContext16staticMetaObjectE@Base 0.6.1
++ _ZN16MirOpenGLContextC1ERN3mir8graphics7DisplayERNS1_8GLConfigERK14QSurfaceFormat@Base 0.6.1
++ _ZN16MirOpenGLContextC2ERN3mir8graphics7DisplayERNS1_8GLConfigERK14QSurfaceFormat@Base 0.6.1
++ _ZN16MirOpenGLContextD0Ev@Base 0.6.1
++ _ZN16MirOpenGLContextD1Ev@Base 0.6.1
++ _ZN16MirOpenGLContextD2Ev@Base 0.6.1
++ _ZN16OffscreenSurface9setBufferEP24QOpenGLFramebufferObject@Base 0.6.1
++ _ZN16OffscreenSurfaceC1EP17QOffscreenSurface@Base 0.6.1
++ _ZN16OffscreenSurfaceC2EP17QOffscreenSurface@Base 0.6.1
++ _ZN16OffscreenSurfaceD0Ev@Base 0.6.1
++ _ZN16OffscreenSurfaceD1Ev@Base 0.6.1
++ _ZN16OffscreenSurfaceD2Ev@Base 0.6.1
++ (optional=templinst)_ZN16QQmlListPropertyIN5qtmir10ScreenModeEE11qlist_clearEPS2_@Base 0.6.1
++ (optional=templinst)_ZN16QQmlListPropertyIN5qtmir10ScreenModeEE11qlist_countEPS2_@Base 0.6.1
++ _ZN16QQmlListPropertyIN5qtmir10ScreenModeEE11qslow_clearEPS2_@Base 0.6.1
++ (optional=templinst)_ZN16QQmlListPropertyIN5qtmir10ScreenModeEE12qlist_appendEPS2_PS1_@Base 0.6.1
++ _ZN16QQmlListPropertyIN5qtmir10ScreenModeEE13qslow_replaceEPS2_iPS1_@Base 0.6.1
++ _ZN16QQmlListPropertyIN5qtmir10ScreenModeEE16qslow_removeLastEPS2_@Base 0.6.1
++ (optional=templinst)_ZN16QQmlListPropertyIN5qtmir10ScreenModeEE8qlist_atEPS2_i@Base 0.6.1
++ _ZN17OrientationSensor11qt_metacallEN11QMetaObject4CallEiPPv@Base 0.6.1
++ _ZN17OrientationSensor11qt_metacastEPKc@Base 0.6.1
++ _ZN17OrientationSensor13startIfNeededEv@Base 0.6.1
++ _ZN17OrientationSensor16staticMetaObjectE@Base 0.6.1
++ _ZN17OrientationSensor20onOrientationChangedEN19QOrientationReading11OrientationE@Base 0.6.1
++ _ZN17OrientationSensor20skipDBusRegistrationE@Base 0.6.1
++ _ZN17OrientationSensor26onDisplayPowerStateChangedEii@Base 0.6.1
++ _ZN17OrientationSensor4stopEv@Base 0.6.1
++ _ZN17OrientationSensor5startEv@Base 0.6.1
++ _ZN17OrientationSensor6enableEv@Base 0.6.1
++ _ZN17OrientationSensor7enabledEv@Base 0.6.1
++ _ZN17OrientationSensorC1EP7QObject@Base 0.6.1
++ _ZN17OrientationSensorC2EP7QObject@Base 0.6.1
++ _ZN17OrientationSensorD0Ev@Base 0.6.1
++ _ZN17OrientationSensorD1Ev@Base 0.6.1
++ _ZN17OrientationSensorD2Ev@Base 0.6.1
++ _ZN17QMirServerPrivate3runERKSt8functionIFvvEE@Base 0.6.1
++ _ZN17QMirServerPrivate4stopEv@Base 0.6.1
++ _ZN17QMirServerPrivateC1Ev@Base 0.6.1
++ _ZN17QMirServerPrivateC2Ev@Base 0.6.1
++ (optional=templinst)_ZN17QtMetaTypePrivate23QMetaTypeFunctionHelperI6QFlagsIN2Qt11MouseButtonEELb1EE8DestructEPv@Base 0.6.1
++ (optional=templinst)_ZN17QtMetaTypePrivate23QMetaTypeFunctionHelperI6QFlagsIN2Qt11MouseButtonEELb1EE9ConstructEPvPKv@Base 0.6.1
++ (optional=templinst)_ZN17QtMetaTypePrivate23QMetaTypeFunctionHelperI6QFlagsIN2Qt16KeyboardModifierEELb1EE8DestructEPv@Base 0.6.1
++ (optional=templinst)_ZN17QtMetaTypePrivate23QMetaTypeFunctionHelperI6QFlagsIN2Qt16KeyboardModifierEELb1EE9ConstructEPvPKv@Base 0.6.1
++ (optional=templinst)_ZN17QtMetaTypePrivate23QMetaTypeFunctionHelperIN3Mir5StateELb1EE8DestructEPv@Base 0.6.1
++ (optional=templinst)_ZN17QtMetaTypePrivate23QMetaTypeFunctionHelperIN3Mir5StateELb1EE9ConstructEPvPKv@Base 0.6.1
++ (optional=templinst)_ZN17QtMetaTypePrivate23QMetaTypeFunctionHelperIN5miral10WindowInfoELb1EE8DestructEPv@Base 0.6.1
++ (optional=templinst)_ZN17QtMetaTypePrivate23QMetaTypeFunctionHelperIN5miral10WindowInfoELb1EE9ConstructEPvPKv@Base 0.6.1
++ (optional=templinst)_ZN17QtMetaTypePrivate23QMetaTypeFunctionHelperIN5miral15ApplicationInfoELb1EE8DestructEPv@Base 0.6.1
++ (optional=templinst)_ZN17QtMetaTypePrivate23QMetaTypeFunctionHelperIN5miral15ApplicationInfoELb1EE9ConstructEPvPKv@Base 0.6.1
++ (optional=templinst)_ZN17QtMetaTypePrivate23QMetaTypeFunctionHelperIN5qtmir10FormFactorELb1EE8DestructEPv@Base 0.6.1
++ (optional=templinst)_ZN17QtMetaTypePrivate23QMetaTypeFunctionHelperIN5qtmir10FormFactorELb1EE9ConstructEPvPKv@Base 0.6.1
++ (optional=templinst)_ZN17QtMetaTypePrivate23QMetaTypeFunctionHelperIN5qtmir11OutputTypesELb1EE8DestructEPv@Base 0.6.1
++ (optional=templinst)_ZN17QtMetaTypePrivate23QMetaTypeFunctionHelperIN5qtmir11OutputTypesELb1EE9ConstructEPvPKv@Base 0.6.1
++ (optional=templinst)_ZN17QtMetaTypePrivate23QMetaTypeFunctionHelperIN5qtmir13PromptSessionELb1EE8DestructEPv@Base 0.6.1
++ (optional=templinst)_ZN17QtMetaTypePrivate23QMetaTypeFunctionHelperIN5qtmir13PromptSessionELb1EE9ConstructEPvPKv@Base 0.6.1
++ (optional=templinst)_ZN17QtMetaTypePrivate23QMetaTypeFunctionHelperIN5qtmir9NewWindowELb1EE8DestructEPv@Base 0.6.1
++ (optional=templinst)_ZN17QtMetaTypePrivate23QMetaTypeFunctionHelperIN5qtmir9NewWindowELb1EE9ConstructEPvPKv@Base 0.6.1
++ (optional=templinst)_ZN17QtMetaTypePrivate23QMetaTypeFunctionHelperIP20ScreenPlatformWindowLb1EE8DestructEPv@Base 0.6.1
++ (optional=templinst)_ZN17QtMetaTypePrivate23QMetaTypeFunctionHelperIP20ScreenPlatformWindowLb1EE9ConstructEPvPKv@Base 0.6.1
++ (optional=templinst)_ZN17QtMetaTypePrivate23QMetaTypeFunctionHelperIPN5qtmir19ScreenConfigurationELb1EE8DestructEPv@Base 0.6.1
++ (optional=templinst)_ZN17QtMetaTypePrivate23QMetaTypeFunctionHelperIPN5qtmir19ScreenConfigurationELb1EE9ConstructEPvPKv@Base 0.6.1
++ (optional=templinst)_ZN17QtMetaTypePrivate23QMetaTypeFunctionHelperISt10shared_ptrIN3mir5scene7SessionEELb1EE8DestructEPv@Base 0.6.1
++ (optional=templinst)_ZN17QtMetaTypePrivate23QMetaTypeFunctionHelperISt10shared_ptrIN3mir5scene7SessionEELb1EE9ConstructEPvPKv@Base 0.6.1
++ (optional=templinst)_ZN17QtMetaTypePrivate23QMetaTypeFunctionHelperISt6vectorIN5miral6WindowESaIS3_EELb1EE8DestructEPv@Base 0.6.1
++ (optional=templinst)_ZN17QtMetaTypePrivate23QMetaTypeFunctionHelperISt6vectorIN5miral6WindowESaIS3_EELb1EE9ConstructEPvPKv@Base 0.6.1
++ _ZN17ScreensController11qt_metacallEN11QMetaObject4CallEiPPv@Base 0.6.1
++ _ZN17ScreensController11qt_metacastEPKc@Base 0.6.1
++ _ZN17ScreensController13configurationEv@Base 0.6.1
++ _ZN17ScreensController16setConfigurationERK7QVectorIN5qtmir19ScreenConfigurationEE@Base 0.6.1
++ _ZN17ScreensController16staticMetaObjectE@Base 0.6.1
++ _ZN17ScreensController19outputConfigurationEN3mir10IntWrapperINS0_8graphics6detail23GraphicsConfOutputIdTagEiEE@Base 0.6.1
++ _ZN17ScreensController22setOutputConfigurationERKN5qtmir19ScreenConfigurationE@Base 0.6.1
++ _ZN17ScreensControllerC1ERKSt10shared_ptrI12ScreensModelERKS0_IN3mir8graphics7DisplayEERKS0_INS5_5shell30DisplayConfigurationControllerEEP7QObject@Base 0.6.1
++ _ZN17ScreensControllerC2ERKSt10shared_ptrI12ScreensModelERKS0_IN3mir8graphics7DisplayEERKS0_INS5_5shell30DisplayConfigurationControllerEEP7QObject@Base 0.6.1
++ _ZN17ScreensControllerD0Ev@Base 0.6.1
++ _ZN17ScreensControllerD1Ev@Base 0.6.1
++ _ZN17ScreensControllerD2Ev@Base 0.6.1
++ (optional=templinst)_ZN18QMetaTypeIdQObjectIP20ScreenPlatformWindowLi8EE14qt_metatype_idEv@Base 0.6.1
++ _ZN18ScreenAdaptorModel13onScreenAddedEP7QScreen@Base 0.6.1
++ _ZN18ScreenAdaptorModel15onScreenRemovedEP7QScreen@Base 0.6.1
++ _ZN18ScreenAdaptorModelC1EP7QObject@Base 0.6.1
++ _ZN18ScreenAdaptorModelC2EP7QObject@Base 0.6.1
++ _ZN18ScreenAdaptorModelD0Ev@Base 0.6.1
++ _ZN18ScreenAdaptorModelD1Ev@Base 0.6.1
++ _ZN18ScreenAdaptorModelD2Ev@Base 0.6.1
++ _ZN19InitialSurfaceSizes14sizeForSessionE@Base 0.6.1
++ _ZN19InitialSurfaceSizes3getEi@Base 0.6.1
++ _ZN19InitialSurfaceSizes3setEiRK5QSize@Base 0.6.1
++ _ZN19InitialSurfaceSizes5mutexE@Base 0.6.1
++ _ZN19InitialSurfaceSizes6removeEi@Base 0.6.1
++ _ZN20ScreenPlatformWindow10setExposedEb@Base 0.6.1
++ _ZN20ScreenPlatformWindow10setPrimaryEb@Base 0.6.1
++ _ZN20ScreenPlatformWindow10setVisibleEb@Base 0.6.1
++ _ZN20ScreenPlatformWindow11doneCurrentEv@Base 0.6.1
++ _ZN20ScreenPlatformWindow11makeCurrentEv@Base 0.6.1
++ _ZN20ScreenPlatformWindow11qt_metacallEN11QMetaObject4CallEiPPv@Base 0.6.1
++ _ZN20ScreenPlatformWindow11qt_metacastEPKc@Base 0.6.1
++ _ZN20ScreenPlatformWindow11setGeometryERK5QRect@Base 0.6.1
++ _ZN20ScreenPlatformWindow11swapBuffersEv@Base 0.6.1
++ _ZN20ScreenPlatformWindow12updateExposeEv@Base 0.6.1
++ _ZN20ScreenPlatformWindow16staticMetaObjectE@Base 0.6.1
++ _ZN20ScreenPlatformWindow21requestActivateWindowEv@Base 0.6.1
++ _ZN20ScreenPlatformWindow9setActiveEb@Base 0.6.1
++ _ZN20ScreenPlatformWindow9setScreenEP15QPlatformScreen@Base 0.6.1
++ _ZN20ScreenPlatformWindowC1EP7QWindowb@Base 0.6.1
++ _ZN20ScreenPlatformWindowC2EP7QWindowb@Base 0.6.1
++ _ZN20ScreenPlatformWindowD0Ev@Base 0.6.1
++ _ZN20ScreenPlatformWindowD1Ev@Base 0.6.1
++ _ZN20ScreenPlatformWindowD2Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN21PromptSessionListener11qt_metacallEN11QMetaObject4CallEiPPv@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN21PromptSessionListener11qt_metacastEPKc@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN21PromptSessionListener16staticMetaObjectE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN21PromptSessionListener19promptProviderAddedERKN5qtmir13PromptSessionERKSt10shared_ptrIN3mir5scene7SessionEE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN21PromptSessionListener21promptProviderRemovedERKN5qtmir13PromptSessionERKSt10shared_ptrIN3mir5scene7SessionEE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN21PromptSessionListener21promptSessionResumingERKN5qtmir13PromptSessionE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN21PromptSessionListener21promptSessionStartingERKN5qtmir13PromptSessionE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN21PromptSessionListener21promptSessionStoppingERKN5qtmir13PromptSessionE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN21PromptSessionListener23promptSessionSuspendingERKN5qtmir13PromptSessionE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN21PromptSessionListenerC1EP7QObject@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN21PromptSessionListenerC2EP7QObject@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN21PromptSessionListenerD0Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN21PromptSessionListenerD1Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN21PromptSessionListenerD2Ev@Base 0.6.1
++ _ZN23OrientationReadingEvent6m_typeE@Base 0.6.1
++ _ZN23OrientationReadingEventD0Ev@Base 0.6.1
++ _ZN23OrientationReadingEventD1Ev@Base 0.6.1
++ _ZN23OrientationReadingEventD2Ev@Base 0.6.1
++ _ZN24MirMousePointerInterface11qt_metacallEN11QMetaObject4CallEiPPv@Base 0.6.1
++ _ZN24MirMousePointerInterface11qt_metacastEPKc@Base 0.6.1
++ _ZN24MirMousePointerInterface16staticMetaObjectE@Base 0.6.1
++ _ZN24MirMousePointerInterface16themeNameChangedE7QString@Base 0.6.1
++ _ZN24MirMousePointerInterface17cursorNameChangedE7QString@Base 0.6.1
++ _ZN24WrappedSessionAuthorizer21connection_is_allowedERKN5miral22ApplicationCredentialsE@Base 0.6.1
++ _ZN24WrappedSessionAuthorizer21screencast_is_allowedERKN5miral22ApplicationCredentialsE@Base 0.6.1
++ _ZN24WrappedSessionAuthorizer25prompt_session_is_allowedERKN5miral22ApplicationCredentialsE@Base 0.6.1
++ _ZN24WrappedSessionAuthorizer26configure_input_is_allowedERKN5miral22ApplicationCredentialsE@Base 0.6.1
++ _ZN24WrappedSessionAuthorizer28configure_display_is_allowedERKN5miral22ApplicationCredentialsE@Base 0.6.1
++ _ZN24WrappedSessionAuthorizer39set_base_input_configuration_is_allowedERKN5miral22ApplicationCredentialsE@Base 0.6.1
++ _ZN24WrappedSessionAuthorizer41set_base_display_configuration_is_allowedERKN5miral22ApplicationCredentialsE@Base 0.6.1
++ (optional=templinst)_ZN24WrappedSessionAuthorizerC1ERKSt8functionIFSt10shared_ptrIN5qtmir17SessionAuthorizerEEvEE@Base 0.6.1
++ (optional=templinst)_ZN24WrappedSessionAuthorizerC2ERKSt8functionIFSt10shared_ptrIN5qtmir17SessionAuthorizerEEvEE@Base 0.6.1
++ _ZN24WrappedSessionAuthorizerD0Ev@Base 0.6.1
++ _ZN24WrappedSessionAuthorizerD1Ev@Base 0.6.1
++ _ZN24WrappedSessionAuthorizerD2Ev@Base 0.6.1
++ _ZN29WrappedWindowManagementPolicy10advise_endEv@Base 0.6.1
++ _ZN29WrappedWindowManagementPolicy10forceCloseERKN5miral6WindowE@Base 0.6.1
++ _ZN29WrappedWindowManagementPolicy12advise_beginEv@Base 0.6.1
++ _ZN29WrappedWindowManagementPolicy12advise_raiseERKSt6vectorIN5miral6WindowESaIS2_EE@Base 0.6.1
++ _ZN29WrappedWindowManagementPolicy12requestStateERKN5miral6WindowEN3Mir5StateE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN29WrappedWindowManagementPolicy13advise_resizeERKN5miral10WindowInfoERKN3mir8geometry4SizeE@Base 0.6.1
++ _ZN29WrappedWindowManagementPolicy13advise_resizeERKN5miral10WindowInfoERKN3mir8geometry7generic4SizeIiEE@Base 0.8.0~git20230109.671f617
++#MISSING: 0.8.0~git20230109.671f617# _ZN29WrappedWindowManagementPolicy14advise_move_toERKN5miral10WindowInfoEN3mir8geometry5PointE@Base 0.6.1
++ _ZN29WrappedWindowManagementPolicy14advise_move_toERKN5miral10WindowInfoEN3mir8geometry7generic5PointIiEE@Base 0.8.0~git20230109.671f617
++ _ZN29WrappedWindowManagementPolicy14advise_new_appERN5miral15ApplicationInfoE@Base 0.6.1
++ _ZN29WrappedWindowManagementPolicy16place_new_windowERKN5miral15ApplicationInfoERKNS0_19WindowSpecificationE@Base 0.6.1
++ _ZN29WrappedWindowManagementPolicy17advise_delete_appERKN5miral15ApplicationInfoE@Base 0.6.1
++ _ZN29WrappedWindowManagementPolicy17advise_focus_lostERKN5miral10WindowInfoE@Base 0.6.1
++ _ZN29WrappedWindowManagementPolicy17advise_new_windowERKN5miral10WindowInfoE@Base 0.6.1
++ _ZN29WrappedWindowManagementPolicy18handle_touch_eventEPK13MirTouchEvent@Base 0.6.1
++ _ZN29WrappedWindowManagementPolicy18set_window_marginsE13MirWindowTypeRK8QMargins@Base 0.6.1
++ _ZN29WrappedWindowManagementPolicy19advise_focus_gainedERKN5miral10WindowInfoE@Base 0.6.1
++ _ZN29WrappedWindowManagementPolicy19advise_state_changeERKN5miral10WindowInfoE14MirWindowState@Base 0.6.1
++ _ZN29WrappedWindowManagementPolicy19ask_client_to_closeERKN5miral6WindowE@Base 0.6.1
++ _ZN29WrappedWindowManagementPolicy19deliver_touch_eventEPK13MirTouchEventRKN5miral6WindowE@Base 0.6.1
++ _ZN29WrappedWindowManagementPolicy19handle_raise_windowERN5miral10WindowInfoE@Base 0.6.1
++ _ZN29WrappedWindowManagementPolicy19handle_request_moveERN5miral10WindowInfoEPK13MirInputEvent@Base 0.6.1
++ _ZN29WrappedWindowManagementPolicy19handle_window_readyERN5miral10WindowInfoE@Base 0.6.1
++ _ZN29WrappedWindowManagementPolicy20advise_delete_windowERKN5miral10WindowInfoE@Base 0.6.1
++ _ZN29WrappedWindowManagementPolicy20advise_output_createERKN5miral6OutputE@Base 0.6.1
++ _ZN29WrappedWindowManagementPolicy20advise_output_deleteERKN5miral6OutputE@Base 0.6.1
++ _ZN29WrappedWindowManagementPolicy20advise_output_updateERKN5miral6OutputES3_@Base 0.6.1
++ _ZN29WrappedWindowManagementPolicy20handle_modify_windowERN5miral10WindowInfoERKNS0_19WindowSpecificationE@Base 0.6.1
++ _ZN29WrappedWindowManagementPolicy20handle_pointer_eventEPK15MirPointerEvent@Base 0.6.1
++ _ZN29WrappedWindowManagementPolicy21deliver_pointer_eventEPK15MirPointerEventRKN5miral6WindowE@Base 0.6.1
++ _ZN29WrappedWindowManagementPolicy21handle_keyboard_eventEPK16MirKeyboardEvent@Base 0.6.1
++ _ZN29WrappedWindowManagementPolicy21handle_request_resizeERN5miral10WindowInfoEPK13MirInputEvent13MirResizeEdge@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN29WrappedWindowManagementPolicy22confirm_inherited_moveERKN5miral10WindowInfoEN3mir8geometry12DisplacementE@Base 0.6.1
++ _ZN29WrappedWindowManagementPolicy22confirm_inherited_moveERKN5miral10WindowInfoEN3mir8geometry7generic12DisplacementIiEE@Base 0.8.0~git20230109.671f617
++ _ZN29WrappedWindowManagementPolicy22deliver_keyboard_eventEPK16MirKeyboardEventRKN5miral6WindowE@Base 0.6.1
++ _ZN29WrappedWindowManagementPolicy24move_window_to_workspaceERKN5miral6WindowERKSt10shared_ptrINS0_9WorkspaceEE@Base 0.6.1
++ _ZN29WrappedWindowManagementPolicy26advise_adding_to_workspaceERKSt10shared_ptrIN5miral9WorkspaceEERKSt6vectorINS1_6WindowESaIS7_EE@Base 0.6.1
++ _ZN29WrappedWindowManagementPolicy28confirm_placement_on_displayERKN5miral10WindowInfoE14MirWindowStateRKN3mir8geometry7generic9RectangleIiEE@Base 0.8.0~git20230109.671f617
++#MISSING: 0.8.0~git20230109.671f617# _ZN29WrappedWindowManagementPolicy28confirm_placement_on_displayERKN5miral10WindowInfoE14MirWindowStateRKN3mir8geometry9RectangleE@Base 0.6.1
++ (optional=templinst)_ZN29WrappedWindowManagementPolicy28for_each_window_in_workspaceERKSt10shared_ptrIN5miral9WorkspaceEERKSt8functionIFvRKNS1_6WindowEEE@Base 0.6.1
++ _ZN29WrappedWindowManagementPolicy28handle_request_drag_and_dropERN5miral10WindowInfoE@Base 0.6.1
++ _ZN29WrappedWindowManagementPolicy30advise_removing_from_workspaceERKSt10shared_ptrIN5miral9WorkspaceEERKSt6vectorINS1_6WindowESaIS7_EE@Base 0.6.1
++ _ZN29WrappedWindowManagementPolicy30set_window_confinement_regionsERK7QVectorI5QRectE@Base 0.6.1
++ _ZN29WrappedWindowManagementPolicy34move_worspace_content_to_workspaceERKSt10shared_ptrIN5miral9WorkspaceEES5_@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN29WrappedWindowManagementPolicy4moveERKN5miral6WindowEN3mir8geometry5PointE@Base 0.6.1
++ _ZN29WrappedWindowManagementPolicy4moveERKN5miral6WindowEN3mir8geometry7generic5PointIiEE@Base 0.8.0~git20230109.671f617
++ _ZN29WrappedWindowManagementPolicy5raiseERKN5miral6WindowE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN29WrappedWindowManagementPolicy6resizeERKN5miral6WindowEN3mir8geometry4SizeE@Base 0.6.1
++ _ZN29WrappedWindowManagementPolicy6resizeERKN5miral6WindowEN3mir8geometry7generic4SizeIiEE@Base 0.8.0~git20230109.671f617
++ _ZN29WrappedWindowManagementPolicy8activateERKN5miral6WindowE@Base 0.6.1
++ (optional=templinst)_ZN29WrappedWindowManagementPolicyC1ERKN5miral18WindowManagerToolsERN5qtmir19WindowModelNotifierERNS4_16WindowControllerERNS4_19WorkspaceControllerERNS4_11AppNotifierESt10shared_ptrI12ScreensModelERKSD_I13QtEventFeederERKSt8functionIFSD_INS4_22WindowManagementPolicyEES3_SD_INS4_29WindowManagementPolicyPrivateEEEE@Base 0.6.1
++ (optional=templinst)_ZN29WrappedWindowManagementPolicyC2ERKN5miral18WindowManagerToolsERN5qtmir19WindowModelNotifierERNS4_16WindowControllerERNS4_19WorkspaceControllerERNS4_11AppNotifierESt10shared_ptrI12ScreensModelERKSD_I13QtEventFeederERKSt8functionIFSD_INS4_22WindowManagementPolicyEES3_SD_INS4_29WindowManagementPolicyPrivateEEEE@Base 0.6.1
++ _ZN29WrappedWindowManagementPolicyD0Ev@Base 0.6.1
++ _ZN29WrappedWindowManagementPolicyD1Ev@Base 0.6.1
++ _ZN29WrappedWindowManagementPolicyD2Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN31MirDisplayConfigurationObserver11qt_metacallEN11QMetaObject4CallEiPPv@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN31MirDisplayConfigurationObserver11qt_metacastEPKc@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN31MirDisplayConfigurationObserver16staticMetaObjectE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN31MirDisplayConfigurationObserver20configurationAppliedERKSt10shared_ptrIKN3mir8graphics20DisplayConfigurationEE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN31MirDisplayConfigurationObserver20configuration_failedERKSt10shared_ptrIKN3mir8graphics20DisplayConfigurationEERKSt9exception@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN31MirDisplayConfigurationObserver20initialConfigurationERKSt10shared_ptrIKN3mir8graphics20DisplayConfigurationEE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN31MirDisplayConfigurationObserver21configuration_appliedERKSt10shared_ptrIKN3mir8graphics20DisplayConfigurationEE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN31MirDisplayConfigurationObserver21initial_configurationERKSt10shared_ptrIKN3mir8graphics20DisplayConfigurationEE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN31MirDisplayConfigurationObserver24baseConfigurationUpdatedERKSt10shared_ptrIKN3mir8graphics20DisplayConfigurationEE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN31MirDisplayConfigurationObserver26base_configuration_updatedERKSt10shared_ptrIKN3mir8graphics20DisplayConfigurationEE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN31MirDisplayConfigurationObserver29session_configuration_appliedERKSt10shared_ptrIN3mir5scene7SessionEERKS0_INS1_8graphics20DisplayConfigurationEE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN31MirDisplayConfigurationObserver29session_configuration_removedERKSt10shared_ptrIN3mir5scene7SessionEE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN31MirDisplayConfigurationObserver32catastrophic_configuration_errorERKSt10shared_ptrIKN3mir8graphics20DisplayConfigurationEERKSt9exception@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN31MirDisplayConfigurationObserver33configuration_updated_for_sessionERKSt10shared_ptrIN3mir5scene7SessionEERKS0_IKNS1_8graphics20DisplayConfigurationEE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN31MirDisplayConfigurationObserverC1EP7QObject@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN31MirDisplayConfigurationObserverC2EP7QObject@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN31MirDisplayConfigurationObserverD0Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN31MirDisplayConfigurationObserverD1Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN31MirDisplayConfigurationObserverD2Ev@Base 0.6.1
++ _ZN3Mir11qt_metacallEN11QMetaObject4CallEiPPv@Base 0.6.1
++ _ZN3Mir11qt_metacastEPKc@Base 0.6.1
++ _ZN3Mir16staticMetaObjectE@Base 0.6.1
++ _ZN3Mir17cursorNameChangedERK7QString@Base 0.6.1
++ _ZN3Mir20currentKeymapChangedERK7QString@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN3mir5input6KeymapD1Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN3mir5input6KeymapD2Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN3mir8graphics11GammaCurvesD1Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# _ZN3mir8graphics11GammaCurvesD2Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# _ZN3mir8graphics26DisplayConfigurationOutputC1ERKS1_@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN3mir8graphics26DisplayConfigurationOutputC2ERKS1_@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN3mir8graphics26DisplayConfigurationOutputD1Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN3mir8graphics26DisplayConfigurationOutputD2Ev@Base 0.6.1
++ (optional=templinst)_ZN4QMapIi5QSizeE13detach_helperEv@Base 0.6.1
++ (optional=templinst)_ZN4QMapIi5QSizeED1Ev@Base 0.6.1
++ (optional=templinst)_ZN4QMapIi5QSizeED2Ev@Base 0.6.1
++ (optional=templinst)_ZN4QMapIi7QStringE13detach_helperEv@Base 0.6.1
++ (optional=templinst)_ZN4QMapIi7QStringEixERKi@Base 0.6.1
++ (optional=templinst)_ZN5QHashIKN5miral6WindowEPN5qtmir22WindowNotifierObserverEE11deleteNode2EPN9QHashData4NodeE@Base 0.6.1
++ (optional=templinst)_ZN5QHashIKN5miral6WindowEPN5qtmir22WindowNotifierObserverEE13detach_helperEv@Base 0.6.1
++ (optional=templinst)_ZN5QHashIKN5miral6WindowEPN5qtmir22WindowNotifierObserverEE13duplicateNodeEPN9QHashData4NodeEPv@Base 0.6.1
++ (optional=templinst)_ZN5QHashIKN5miral6WindowEPN5qtmir22WindowNotifierObserverEE5eraseENS6_14const_iteratorE@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !armhf)_ZN5QHashIKN5miral6WindowEPN5qtmir22WindowNotifierObserverEED1Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !armhf)_ZN5QHashIKN5miral6WindowEPN5qtmir22WindowNotifierObserverEED2Ev@Base 0.6.1
++ (optional=templinst)_ZN5QHashIP20ScreenPlatformWindowP14PlatformScreenE11deleteNode2EPN9QHashData4NodeE@Base 0.6.1
++ (optional=templinst)_ZN5QHashIP20ScreenPlatformWindowP14PlatformScreenE13duplicateNodeEPN9QHashData4NodeEPv@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !armhf)_ZN5QHashIP20ScreenPlatformWindowP14PlatformScreenED1Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !armhf)_ZN5QHashIP20ScreenPlatformWindowP14PlatformScreenED2Ev@Base 0.6.1
++ (optional=templinst)_ZN5QHashIPKN3mir5scene13PromptSessionEN5qtmir13PromptSessionEE11deleteNode2EPN9QHashData4NodeE@Base 0.6.1
++ (optional=templinst)_ZN5QHashIPKN3mir5scene13PromptSessionEN5qtmir13PromptSessionEE13detach_helperEv@Base 0.6.1
++ (optional=templinst)_ZN5QHashIPKN3mir5scene13PromptSessionEN5qtmir13PromptSessionEE13duplicateNodeEPN9QHashData4NodeEPv@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst)_ZN5QHashIPKN3mir5scene13PromptSessionEN5qtmir13PromptSessionEE6removeERKS4_@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !armhf)_ZN5QHashIPKN3mir5scene13PromptSessionEN5qtmir13PromptSessionEED1Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !armhf)_ZN5QHashIPKN3mir5scene13PromptSessionEN5qtmir13PromptSessionEED2Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst)_ZN5QHashIPKN3mir5scene13PromptSessionEN5qtmir13PromptSessionEEixERKS4_@Base 0.6.1
++ (optional=templinst)_ZN5QHashIPKN3mir5scene7SurfaceEP15SurfaceObserverE11deleteNode2EPN9QHashData4NodeE@Base 0.6.1
++ (optional=templinst)_ZN5QHashIPKN3mir5scene7SurfaceEP15SurfaceObserverE13detach_helperEv@Base 0.6.1
++ (optional=templinst)_ZN5QHashIPKN3mir5scene7SurfaceEP15SurfaceObserverE13duplicateNodeEPN9QHashData4NodeEPv@Base 0.6.1
++ (optional=templinst)_ZN5QHashIPKN3mir5scene7SurfaceEP15SurfaceObserverE5eraseENS7_14const_iteratorE@Base 0.6.1
++ (optional=templinst)_ZN5QHashIPKN3mir5scene7SurfaceEP15SurfaceObserverED1Ev@Base 0.6.1
++ (optional=templinst)_ZN5QHashIPKN3mir5scene7SurfaceEP15SurfaceObserverED2Ev@Base 0.6.1
++ (optional=templinst)_ZN5QHashIi15QHashDummyValueE11deleteNode2EPN9QHashData4NodeE@Base 0.6.1
++ (optional=templinst)_ZN5QHashIi15QHashDummyValueE13duplicateNodeEPN9QHashData4NodeEPv@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !armhf)_ZN5QHashIi15QHashDummyValueED1Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !armhf)_ZN5QHashIi15QHashDummyValueED2Ev@Base 0.6.1
++ (optional=templinst)_ZN5QHashIiN22QWindowSystemInterface10TouchPointEE11deleteNode2EPN9QHashData4NodeE@Base 0.6.1
++ (optional=templinst)_ZN5QHashIiN22QWindowSystemInterface10TouchPointEE13detach_helperEv@Base 0.6.1
++ (optional=templinst)_ZN5QHashIiN22QWindowSystemInterface10TouchPointEE13duplicateNodeEPN9QHashData4NodeEPv@Base 0.6.1
++ (optional=templinst)_ZN5QHashIiN22QWindowSystemInterface10TouchPointEE5eraseENS2_14const_iteratorE@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !armhf)_ZN5QHashIiN22QWindowSystemInterface10TouchPointEED1Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !armhf)_ZN5QHashIiN22QWindowSystemInterface10TouchPointEED2Ev@Base 0.6.1
++ (optional=templinst)_ZN5QListI5QPairId5QSizeEE18detach_helper_growEii@Base 0.6.1
++ (optional=templinst)_ZN5QListI5QPairId5QSizeEE6appendERKS2_@Base 0.6.1
++ (optional=templinst)_ZN5QListI5QPairId5QSizeEEC1ERKS3_@Base 0.6.1
++ (optional=templinst)_ZN5QListI5QPairId5QSizeEEC2ERKS3_@Base 0.6.1
++ (optional=templinst)_ZN5QListI5QPairId5QSizeEED1Ev@Base 0.6.1
++ (optional=templinst)_ZN5QListI5QPairId5QSizeEED2Ev@Base 0.6.1
++ (optional=templinst)_ZN5QListI7QStringED1Ev@Base 0.6.1
++ (optional=templinst)_ZN5QListI7QStringED2Ev@Base 0.6.1
++ (optional=templinst)_ZN5QListIN22QWindowSystemInterface10TouchPointEE13detach_helperEi@Base 0.6.1
++ (optional=templinst)_ZN5QListIN22QWindowSystemInterface10TouchPointEE18detach_helper_growEii@Base 0.6.1
++ (optional=templinst)_ZN5QListIN22QWindowSystemInterface10TouchPointEE6appendERKS1_@Base 0.6.1
++ (optional=templinst)_ZN5QListIN22QWindowSystemInterface10TouchPointEED1Ev@Base 0.6.1
++ (optional=templinst)_ZN5QListIN22QWindowSystemInterface10TouchPointEED2Ev@Base 0.6.1
++ (optional=templinst)_ZN5QListIP14PlatformScreenE18detach_helper_growEii@Base 0.6.1
++ (optional=templinst)_ZN5QListIP14PlatformScreenE6appendERKS1_@Base 0.6.1
++ (optional=templinst)_ZN5QListIP14PlatformScreenEC1ERKS2_@Base 0.6.1
++ (optional=templinst)_ZN5QListIP14PlatformScreenEC2ERKS2_@Base 0.6.1
++ (optional=templinst)_ZN5QListIP14PlatformScreenED1Ev@Base 0.6.1
++ (optional=templinst)_ZN5QListIP14PlatformScreenED2Ev@Base 0.6.1
++ (optional=templinst)_ZN5QListIP7QScreenED1Ev@Base 0.6.1
++ (optional=templinst)_ZN5QListIP7QScreenED2Ev@Base 0.6.1
++ (optional=templinst)_ZN5QListIP7QWindowEC1ERKS2_@Base 0.6.1
++ (optional=templinst)_ZN5QListIP7QWindowEC2ERKS2_@Base 0.6.1
++ (optional=templinst)_ZN5QListIP7QWindowED1Ev@Base 0.6.1
++ (optional=templinst)_ZN5QListIP7QWindowED2Ev@Base 0.6.1
++ (optional=templinst)_ZN5QListIPN5qtmir10ScreenModeEE18detach_helper_growEii@Base 0.6.1
++ (optional=templinst)_ZN5QListIPN5qtmir10ScreenModeEE6appendERKS2_@Base 0.6.1
++ (optional=templinst)_ZN5QListIPN5qtmir10ScreenModeEED1Ev@Base 0.6.1
++ (optional=templinst)_ZN5QListIPN5qtmir10ScreenModeEED2Ev@Base 0.6.1
++ (optional=templinst)_ZN5QListIPN5qtmir22WindowNotifierObserverEE18detach_helper_growEii@Base 0.6.1
++ (optional=templinst)_ZN5QListIPN5qtmir22WindowNotifierObserverEE6appendERKS2_@Base 0.6.1
++ (optional=templinst)_ZN5QListIPN5qtmir22WindowNotifierObserverEEC1ERKS3_@Base 0.6.1
++ (optional=templinst)_ZN5QListIPN5qtmir22WindowNotifierObserverEEC2ERKS3_@Base 0.6.1
++ (optional=templinst)_ZN5QListIPN5qtmir22WindowNotifierObserverEED1Ev@Base 0.6.1
++ (optional=templinst)_ZN5QListIPN5qtmir22WindowNotifierObserverEED2Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5miral15GLTextureBuffer10setWrappedERKSt10shared_ptrIN3mir8graphics6BufferEE@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# _ZN5miral15GLTextureBuffer4typeEv@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# _ZN5miral15GLTextureBuffer8tex_bindEv@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# _ZN5miral15GLTextureBufferC1ERKSt10shared_ptrIN3mir8graphics6BufferEE@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# _ZN5miral15GLTextureBufferC2ERKSt10shared_ptrIN3mir8graphics6BufferEE@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# _ZN5miral20PersistDisplayConfig4Self26base_configuration_updatedERKSt10shared_ptrIKN3mir8graphics20DisplayConfigurationEE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5miral20PersistDisplayConfig4Self29session_configuration_appliedERKSt10shared_ptrIN3mir5scene7SessionEERKS2_INS3_8graphics20DisplayConfigurationEE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5miral20PersistDisplayConfig4Self29session_configuration_removedERKSt10shared_ptrIN3mir5scene7SessionEE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5miral20PersistDisplayConfig4SelfD0Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5miral20PersistDisplayConfig4SelfD1Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5miral20PersistDisplayConfig4SelfD2Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5miral20PersistDisplayConfigC1ERKS0_@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst)_ZN5miral20PersistDisplayConfigC1ERKSt10shared_ptrINS_27DisplayConfigurationStorageEERKSt8functionIFS1_INS_26DisplayConfigurationPolicyEEvEE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5miral20PersistDisplayConfigC2ERKS0_@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst)_ZN5miral20PersistDisplayConfigC2ERKSt10shared_ptrINS_27DisplayConfigurationStorageEERKSt8functionIFS1_INS_26DisplayConfigurationPolicyEEvEE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5miral20PersistDisplayConfigD1Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5miral20PersistDisplayConfigD2Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5miral20PersistDisplayConfigaSERKS0_@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5miral20PersistDisplayConfigclERN3mir6ServerE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5miral21GLTextureSourceBuffer10setWrappedERKSt10shared_ptrIN3mir8graphics6BufferEE@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# _ZN5miral21GLTextureSourceBuffer17upload_to_textureEv@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# _ZN5miral21GLTextureSourceBuffer4typeEv@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# _ZN5miral21GLTextureSourceBufferC1ERKSt10shared_ptrIN3mir8graphics6BufferEE@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# _ZN5miral21GLTextureSourceBufferC2ERKSt10shared_ptrIN3mir8graphics6BufferEE@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# _ZN5miral26DisplayConfigurationPolicyC1Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5miral26DisplayConfigurationPolicyC2Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5miral4Edid10parse_dataERKSt6vectorIhSaIhEE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5miral8GLBuffer10setWrappedERKSt10shared_ptrIN3mir8graphics6BufferEE@Base 0.7.0
++#MISSING: 0.7.0# _ZN5miral8GLBuffer15bind_to_textureEv@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5miral8GLBuffer15from_mir_bufferERKSt10shared_ptrIN3mir8graphics6BufferEE@Base 0.7.0
++#MISSING: 0.7.0# _ZN5miral8GLBuffer17secure_for_renderEv@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5miral8GLBuffer5emptyEv@Base 0.7.0
++#MISSING: 0.7.0# _ZN5miral8GLBuffer5resetERKSt10shared_ptrIN3mir8graphics6BufferEE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5miral8GLBuffer5resetEv@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5miral8GLBufferC1ERKSt10shared_ptrIN3mir8graphics6BufferEE@Base 0.6.1
++#MISSING: 0.7.0# _ZN5miral8GLBufferC1Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5miral8GLBufferC2ERKSt10shared_ptrIN3mir8graphics6BufferEE@Base 0.6.1
++#MISSING: 0.7.0# _ZN5miral8GLBufferC2Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5miral8GLBufferD1Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5miral8GLBufferD2Ev@Base 0.6.1
++ _ZN5qtmir10ScreenMode11qt_metacallEN11QMetaObject4CallEiPPv@Base 0.6.1
++ _ZN5qtmir10ScreenMode11qt_metacastEPKc@Base 0.6.1
++ _ZN5qtmir10ScreenMode16staticMetaObjectE@Base 0.6.1
++ _ZN5qtmir10ScreenModeD0Ev@Base 0.6.1
++ _ZN5qtmir10ScreenModeD1Ev@Base 0.6.1
++ _ZN5qtmir10ScreenModeD2Ev@Base 0.6.1
++ _ZN5qtmir11AppNotifier10appRemovedERKN5miral15ApplicationInfoE@Base 0.6.1
++ _ZN5qtmir11AppNotifier11qt_metacallEN11QMetaObject4CallEiPPv@Base 0.6.1
++ _ZN5qtmir11AppNotifier11qt_metacastEPKc@Base 0.6.1
++ _ZN5qtmir11AppNotifier16appCreatedWindowERKN5miral15ApplicationInfoE@Base 0.6.1
++ _ZN5qtmir11AppNotifier16staticMetaObjectE@Base 0.6.1
++ _ZN5qtmir11AppNotifier8appAddedERKN5miral15ApplicationInfoE@Base 0.6.1
++ _ZN5qtmir11AppNotifierD0Ev@Base 0.6.1
++ _ZN5qtmir11AppNotifierD1Ev@Base 0.6.1
++ _ZN5qtmir11AppNotifierD2Ev@Base 0.6.1
++ _ZN5qtmir11NamedCursorD0Ev@Base 0.6.1
++ _ZN5qtmir11NamedCursorD1Ev@Base 0.6.1
++ _ZN5qtmir11NamedCursorD2Ev@Base 0.6.1
++ _ZN5qtmir12EventBuilder10m_instanceE@Base 0.6.1
++ _ZN5qtmir12EventBuilder12makeMirEventE6QFlagsIN2Qt16KeyboardModifierEERK5QListIN11QTouchEvent10TouchPointEES1_INS2_15TouchPointStateEEm@Base 0.6.1
++ _ZN5qtmir12EventBuilder12makeMirEventEP11QInputEventiij@Base 0.6.1
++ _ZN5qtmir12EventBuilder12makeMirEventEP11QWheelEvent@Base 0.6.1
++ _ZN5qtmir12EventBuilder12makeMirEventEP9QKeyEvent@Base 0.6.1
++ _ZN5qtmir12EventBuilder19reconstructMirEventEP11QHoverEvent@Base 0.6.1
++ _ZN5qtmir12EventBuilder19reconstructMirEventEP11QMouseEvent@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5qtmir12EventBuilder5storeEPK13MirInputEventm@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5qtmir12EventBuilder8findInfoEm@Base 0.6.1
++ _ZN5qtmir12EventBuilder8instanceEv@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5qtmir12EventBuilder9EventInfo5storeEPK13MirInputEventm@Base 0.6.1
++ _ZN5qtmir12EventBuilderC1Ev@Base 0.6.1
++ _ZN5qtmir12EventBuilderC2Ev@Base 0.6.1
++ _ZN5qtmir12EventBuilderD0Ev@Base 0.6.1
++ _ZN5qtmir12EventBuilderD1Ev@Base 0.6.1
++ _ZN5qtmir12EventBuilderD2Ev@Base 0.6.1
++ _ZN5qtmir12getExtraInfoERKN5miral10WindowInfoE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5qtmir14MirServerHooks25createInputDeviceObserverEv@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5qtmir14MirServerHooksC1Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5qtmir14MirServerHooksC2Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5qtmir14MirServerHooksclERN3mir6ServerE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5qtmir15MirCursorImages5imageERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKN3mir8geometry4SizeE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5qtmir15MirCursorImagesD0Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5qtmir15MirCursorImagesD1Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5qtmir15MirCursorImagesD2Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5qtmir15SetQtCompositorC1ERKSt10shared_ptrI12ScreensModelE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5qtmir15SetQtCompositorC2ERKSt10shared_ptrI12ScreensModelE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5qtmir15SetQtCompositorD1Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5qtmir15SetQtCompositorD2Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5qtmir15SetQtCompositorclERN3mir6ServerE@Base 0.6.1
++ _ZN5qtmir16WindowController10forceCloseERKN5miral6WindowE@Base 0.6.1
++ _ZN5qtmir16WindowController12requestCloseERKN5miral6WindowE@Base 0.6.1
++ _ZN5qtmir16WindowController12requestStateERKN5miral6WindowEN3Mir5StateE@Base 0.6.1
++ _ZN5qtmir16WindowController16setWindowMarginsEN3Mir4TypeERK8QMargins@Base 0.6.1
++ _ZN5qtmir16WindowController17deliverTouchEventERKN5miral6WindowEPK13MirTouchEvent@Base 0.6.1
++ _ZN5qtmir16WindowController19deliverPointerEventERKN5miral6WindowEPK15MirPointerEvent@Base 0.6.1
++ _ZN5qtmir16WindowController20deliverKeyboardEventERKN5miral6WindowEPK16MirKeyboardEvent@Base 0.6.1
++ _ZN5qtmir16WindowController27setWindowConfinementRegionsERK7QVectorI5QRectE@Base 0.6.1
++ _ZN5qtmir16WindowController4moveERKN5miral6WindowERK6QPoint@Base 0.6.1
++ _ZN5qtmir16WindowController5raiseERKN5miral6WindowE@Base 0.6.1
++ _ZN5qtmir16WindowController6resizeERKN5miral6WindowERK5QSize@Base 0.6.1
++ _ZN5qtmir16WindowController8activateERKN5miral6WindowE@Base 0.6.1
++ _ZN5qtmir16WindowController9setPolicyEP29WrappedWindowManagementPolicy@Base 0.6.1
++ _ZN5qtmir16WindowControllerC1Ev@Base 0.6.1
++ _ZN5qtmir16WindowControllerC2Ev@Base 0.6.1
++ _ZN5qtmir16WindowControllerD0Ev@Base 0.6.1
++ _ZN5qtmir16WindowControllerD1Ev@Base 0.6.1
++ _ZN5qtmir16WindowControllerD2Ev@Base 0.6.1
++ _ZN5qtmir16get_screen_modelEv@Base 0.6.1
++ _ZN5qtmir17SessionAuthorizer11qt_metacallEN11QMetaObject4CallEiPPv@Base 0.6.1
++ _ZN5qtmir17SessionAuthorizer11qt_metacastEPKc@Base 0.6.1
++ _ZN5qtmir17SessionAuthorizer16staticMetaObjectE@Base 0.6.1
++ _ZN5qtmir17SessionAuthorizer19connectionIsAllowedERKN5miral22ApplicationCredentialsE@Base 0.6.1
++ _ZN5qtmir17SessionAuthorizer19screencastIsAllowedERKN5miral22ApplicationCredentialsE@Base 0.6.1
++ _ZN5qtmir17SessionAuthorizer22promptSessionIsAllowedERKN5miral22ApplicationCredentialsE@Base 0.6.1
++ _ZN5qtmir17SessionAuthorizer23configureInputIsAllowedERKN5miral22ApplicationCredentialsE@Base 0.6.1
++ _ZN5qtmir17SessionAuthorizer25configureDisplayIsAllowedERKN5miral22ApplicationCredentialsE@Base 0.6.1
++ _ZN5qtmir17SessionAuthorizer30requestAuthorizationForSessionERKiRb@Base 0.6.1
++ _ZN5qtmir17SessionAuthorizer34setBaseInputConfigurationIsAllowedERKN5miral22ApplicationCredentialsE@Base 0.6.1
++ _ZN5qtmir17SessionAuthorizer36setBaseDisplayConfigurationIsAllowedERKN5miral22ApplicationCredentialsE@Base 0.6.1
++ _ZN5qtmir17SessionAuthorizerC1Ev@Base 0.6.1
++ _ZN5qtmir17SessionAuthorizerC2Ev@Base 0.6.1
++ _ZN5qtmir17SessionAuthorizerD0Ev@Base 0.6.1
++ _ZN5qtmir17SessionAuthorizerD1Ev@Base 0.6.1
++ _ZN5qtmir17SessionAuthorizerD2Ev@Base 0.6.1
++ (optional=templinst|arch=armel armhf m68k)_ZN5qtmir17compressTimestampINSt6chrono8durationImSt5ratioILx1ELx1000EEEEEET_NS2_IxS3_ILx1ELx1000000000EEEE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5qtmir18dispatchInputEventERKN5miral6WindowEPK13MirInputEvent@Base 0.6.1
++ _ZN5qtmir19WindowModelNotifier11qt_metacallEN11QMetaObject4CallEiPPv@Base 0.6.1
++ _ZN5qtmir19WindowModelNotifier11qt_metacastEPKc@Base 0.6.1
++ _ZN5qtmir19WindowModelNotifier11windowAddedERKNS_9NewWindowE@Base 0.6.1
++ _ZN5qtmir19WindowModelNotifier11windowMovedERKN5miral10WindowInfoE6QPoint@Base 0.6.1
++ _ZN5qtmir19WindowModelNotifier11windowReadyERKN5miral10WindowInfoE@Base 0.6.1
++ _ZN5qtmir19WindowModelNotifier13windowRemovedERKN5miral10WindowInfoE@Base 0.6.1
++ _ZN5qtmir19WindowModelNotifier13windowResizedERKN5miral10WindowInfoE5QSize@Base 0.6.1
++ _ZN5qtmir19WindowModelNotifier13windowsRaisedERKSt6vectorIN5miral6WindowESaIS3_EE@Base 0.6.1
++ _ZN5qtmir19WindowModelNotifier16staticMetaObjectE@Base 0.6.1
++ _ZN5qtmir19WindowModelNotifier18modificationsEndedEv@Base 0.6.1
++ _ZN5qtmir19WindowModelNotifier18windowFocusChangedERKN5miral10WindowInfoEb@Base 0.6.1
++ _ZN5qtmir19WindowModelNotifier18windowStateChangedERKN5miral10WindowInfoEN3Mir5StateE@Base 0.6.1
++ _ZN5qtmir19WindowModelNotifier20modificationsStartedEv@Base 0.6.1
++ _ZN5qtmir19WindowModelNotifier20windowRequestedRaiseERKN5miral10WindowInfoE@Base 0.6.1
++ _ZN5qtmir19WindowModelNotifier23windowsAddedToWorkspaceERKSt10shared_ptrIN5miral9WorkspaceEERKSt6vectorINS2_6WindowESaIS8_EE@Base 0.6.1
++ _ZN5qtmir19WindowModelNotifier36windowsAboutToBeRemovedFromWorkspaceERKSt10shared_ptrIN5miral9WorkspaceEERKSt6vectorINS2_6WindowESaIS8_EE@Base 0.6.1
++ _ZN5qtmir19WindowModelNotifierC1Ev@Base 0.6.1
++ _ZN5qtmir19WindowModelNotifierC2Ev@Base 0.6.1
++ _ZN5qtmir19WindowModelNotifierD0Ev@Base 0.6.1
++ _ZN5qtmir19WindowModelNotifierD1Ev@Base 0.6.1
++ _ZN5qtmir19WindowModelNotifierD2Ev@Base 0.6.1
++ _ZN5qtmir19WorkspaceController21moveWindowToWorkspaceERKN5miral6WindowERKSt10shared_ptrINS1_9WorkspaceEE@Base 0.6.1
++ (optional=templinst)_ZN5qtmir19WorkspaceController24forEachWindowInWorkspaceERKSt10shared_ptrIN5miral9WorkspaceEERKSt8functionIFvRKNS2_6WindowEEE@Base 0.6.1
++ _ZN5qtmir19WorkspaceController31moveWorkspaceContentToWorkspaceERKSt10shared_ptrIN5miral9WorkspaceEES6_@Base 0.6.1
++ _ZN5qtmir19WorkspaceController9setPolicyEP29WrappedWindowManagementPolicy@Base 0.6.1
++ _ZN5qtmir19WorkspaceControllerC1Ev@Base 0.6.1
++ _ZN5qtmir19WorkspaceControllerC2Ev@Base 0.6.1
++ _ZN5qtmir19WorkspaceControllerD0Ev@Base 0.6.1
++ _ZN5qtmir19WorkspaceControllerD1Ev@Base 0.6.1
++ _ZN5qtmir19WorkspaceControllerD2Ev@Base 0.6.1
++ _ZN5qtmir20MirServerApplication11qt_metacallEN11QMetaObject4CallEiPPv@Base 0.6.1
++ _ZN5qtmir20MirServerApplication11qt_metacastEPKc@Base 0.6.1
++ _ZN5qtmir20MirServerApplication16staticMetaObjectE@Base 0.6.1
++ _ZN5qtmir20MirServerApplication22screenAboutToBeRemovedEP7QScreen@Base 0.6.1
++ _ZN5qtmir20MirServerApplicationC1ERiPPcSt16initializer_listISt8functionIFvR10QMirServerEEE@Base 0.6.1
++ _ZN5qtmir20MirServerApplicationC2ERiPPcSt16initializer_listISt8functionIFvR10QMirServerEEE@Base 0.6.1
++ _ZN5qtmir20MirServerApplicationD0Ev@Base 0.6.1
++ _ZN5qtmir20MirServerApplicationD1Ev@Base 0.6.1
++ _ZN5qtmir20MirServerApplicationD2Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5qtmir20OpenGLContextFactoryC1Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5qtmir20OpenGLContextFactoryC2Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5qtmir20OpenGLContextFactoryclERN3mir6ServerE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5qtmir20PromptSessionManagerC1ERKSt10shared_ptrIN3mir5scene20PromptSessionManagerEE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5qtmir20PromptSessionManagerC2ERKSt10shared_ptrIN3mir5scene20PromptSessionManagerEE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5qtmir20PromptSessionManagerD0Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5qtmir20PromptSessionManagerD1Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5qtmir20PromptSessionManagerD2Ev@Base 0.6.1
++ _ZN5qtmir21PromptSessionListener10suspendingERKSt10shared_ptrIN3mir5scene13PromptSessionEE@Base 0.8.0~git20230109.671f617
++ _ZN5qtmir21PromptSessionListener11qt_metacallEN11QMetaObject4CallEiPPv@Base 0.8.0~git20230109.671f617
++ _ZN5qtmir21PromptSessionListener11qt_metacastEPKc@Base 0.8.0~git20230109.671f617
++ _ZN5qtmir21PromptSessionListener16staticMetaObjectE@Base 0.8.0~git20230109.671f617
++ _ZN5qtmir21PromptSessionListener19promptProviderAddedERKNS_13PromptSessionERKSt10shared_ptrIN3mir5scene7SessionEE@Base 0.8.0~git20230109.671f617
++ _ZN5qtmir21PromptSessionListener21promptProviderRemovedERKNS_13PromptSessionERKSt10shared_ptrIN3mir5scene7SessionEE@Base 0.8.0~git20230109.671f617
++ _ZN5qtmir21PromptSessionListener21promptSessionResumingERKNS_13PromptSessionE@Base 0.8.0~git20230109.671f617
++ _ZN5qtmir21PromptSessionListener21promptSessionStartingERKNS_13PromptSessionE@Base 0.8.0~git20230109.671f617
++ _ZN5qtmir21PromptSessionListener21promptSessionStoppingERKNS_13PromptSessionE@Base 0.8.0~git20230109.671f617
++ _ZN5qtmir21PromptSessionListener21prompt_provider_addedERKN3mir5scene13PromptSessionERKSt10shared_ptrINS2_7SessionEE@Base 0.8.0~git20230109.671f617
++ _ZN5qtmir21PromptSessionListener23promptSessionSuspendingERKNS_13PromptSessionE@Base 0.8.0~git20230109.671f617
++ _ZN5qtmir21PromptSessionListener23prompt_provider_removedERKN3mir5scene13PromptSessionERKSt10shared_ptrINS2_7SessionEE@Base 0.8.0~git20230109.671f617
++ _ZN5qtmir21PromptSessionListener8resumingERKSt10shared_ptrIN3mir5scene13PromptSessionEE@Base 0.8.0~git20230109.671f617
++ _ZN5qtmir21PromptSessionListener8startingERKSt10shared_ptrIN3mir5scene13PromptSessionEE@Base 0.8.0~git20230109.671f617
++ _ZN5qtmir21PromptSessionListener8stoppingERKSt10shared_ptrIN3mir5scene13PromptSessionEE@Base 0.8.0~git20230109.671f617
++ _ZN5qtmir21PromptSessionListenerC1EP7QObject@Base 0.8.0~git20230109.671f617
++ _ZN5qtmir21PromptSessionListenerC2EP7QObject@Base 0.8.0~git20230109.671f617
++ _ZN5qtmir21PromptSessionListenerD0Ev@Base 0.8.0~git20230109.671f617
++ _ZN5qtmir21PromptSessionListenerD1Ev@Base 0.8.0~git20230109.671f617
++ _ZN5qtmir21PromptSessionListenerD2Ev@Base 0.8.0~git20230109.671f617
++ _ZN5qtmir22MirInputDeviceObserver11applyKeymapEN6miroil11InputDeviceE@Base 0.8.0~git20230109.671f617
++#MISSING: 0.8.0~git20230109.671f617# _ZN5qtmir22MirInputDeviceObserver11applyKeymapERKSt10shared_ptrIN3mir5input6DeviceEE@Base 0.6.1
++ _ZN5qtmir22MirInputDeviceObserver11applyKeymapEv@Base 0.6.1
++ _ZN5qtmir22MirInputDeviceObserver11qt_metacallEN11QMetaObject4CallEiPPv@Base 0.6.1
++ _ZN5qtmir22MirInputDeviceObserver11qt_metacastEPKc@Base 0.6.1
++ _ZN5qtmir22MirInputDeviceObserver12device_addedEN6miroil11InputDeviceE@Base 0.8.0~git20230109.671f617
++ _ZN5qtmir22MirInputDeviceObserver14device_removedEN6miroil11InputDeviceE@Base 0.8.0~git20230109.671f617
++ _ZN5qtmir22MirInputDeviceObserver16staticMetaObjectE@Base 0.6.1
++ _ZN5qtmir22MirInputDeviceObserver9setKeymapERK7QString@Base 0.6.1
++ _ZN5qtmir22MirInputDeviceObserverC1EP7QObject@Base 0.6.1
++ _ZN5qtmir22MirInputDeviceObserverC2EP7QObject@Base 0.6.1
++ _ZN5qtmir22MirInputDeviceObserverD0Ev@Base 0.6.1
++ _ZN5qtmir22MirInputDeviceObserverD1Ev@Base 0.6.1
++ _ZN5qtmir22MirInputDeviceObserverD2Ev@Base 0.6.1
++ _ZN5qtmir22WindowManagementPolicy10advise_endEv@Base 0.6.1
++ _ZN5qtmir22WindowManagementPolicy12advise_beginEv@Base 0.6.1
++ _ZN5qtmir22WindowManagementPolicy12advise_raiseERKSt6vectorIN5miral6WindowESaIS3_EE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5qtmir22WindowManagementPolicy13advise_resizeERKN5miral10WindowInfoERKN3mir8geometry4SizeE@Base 0.6.1
++ _ZN5qtmir22WindowManagementPolicy13advise_resizeERKN5miral10WindowInfoERKN3mir8geometry7generic4SizeIiEE@Base 0.8.0~git20230109.671f617
++#MISSING: 0.8.0~git20230109.671f617# _ZN5qtmir22WindowManagementPolicy14advise_move_toERKN5miral10WindowInfoEN3mir8geometry5PointE@Base 0.6.1
++ _ZN5qtmir22WindowManagementPolicy14advise_move_toERKN5miral10WindowInfoEN3mir8geometry7generic5PointIiEE@Base 0.8.0~git20230109.671f617
++ _ZN5qtmir22WindowManagementPolicy14advise_new_appERN5miral15ApplicationInfoE@Base 0.6.1
++ _ZN5qtmir22WindowManagementPolicy16place_new_windowERKN5miral15ApplicationInfoERKNS1_19WindowSpecificationE@Base 0.6.1
++ _ZN5qtmir22WindowManagementPolicy17advise_delete_appERKN5miral15ApplicationInfoE@Base 0.6.1
++ _ZN5qtmir22WindowManagementPolicy17advise_focus_lostERKN5miral10WindowInfoE@Base 0.6.1
++ _ZN5qtmir22WindowManagementPolicy17advise_new_windowERKN5miral10WindowInfoE@Base 0.6.1
++ _ZN5qtmir22WindowManagementPolicy18handle_touch_eventEPK13MirTouchEvent@Base 0.6.1
++ _ZN5qtmir22WindowManagementPolicy19advise_focus_gainedERKN5miral10WindowInfoE@Base 0.6.1
++ _ZN5qtmir22WindowManagementPolicy19advise_state_changeERKN5miral10WindowInfoE14MirWindowState@Base 0.6.1
++ _ZN5qtmir22WindowManagementPolicy19handle_raise_windowERN5miral10WindowInfoE@Base 0.6.1
++ _ZN5qtmir22WindowManagementPolicy19handle_request_moveERN5miral10WindowInfoEPK13MirInputEvent@Base 0.6.1
++ _ZN5qtmir22WindowManagementPolicy19handle_window_readyERN5miral10WindowInfoE@Base 0.6.1
++ _ZN5qtmir22WindowManagementPolicy20advise_delete_windowERKN5miral10WindowInfoE@Base 0.6.1
++ _ZN5qtmir22WindowManagementPolicy20advise_output_createERKN5miral6OutputE@Base 0.6.1
++ _ZN5qtmir22WindowManagementPolicy20advise_output_deleteERKN5miral6OutputE@Base 0.6.1
++ _ZN5qtmir22WindowManagementPolicy20advise_output_updateERKN5miral6OutputES4_@Base 0.6.1
++ _ZN5qtmir22WindowManagementPolicy20handle_modify_windowERN5miral10WindowInfoERKNS1_19WindowSpecificationE@Base 0.6.1
++ _ZN5qtmir22WindowManagementPolicy20handle_pointer_eventEPK15MirPointerEvent@Base 0.6.1
++ _ZN5qtmir22WindowManagementPolicy21handle_keyboard_eventEPK16MirKeyboardEvent@Base 0.6.1
++ _ZN5qtmir22WindowManagementPolicy21handle_request_resizeERN5miral10WindowInfoEPK13MirInputEvent13MirResizeEdge@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZN5qtmir22WindowManagementPolicy22confirm_inherited_moveERKN5miral10WindowInfoEN3mir8geometry12DisplacementE@Base 0.6.1
++ _ZN5qtmir22WindowManagementPolicy22confirm_inherited_moveERKN5miral10WindowInfoEN3mir8geometry7generic12DisplacementIiEE@Base 0.8.0~git20230109.671f617
++ _ZN5qtmir22WindowManagementPolicy26advise_adding_to_workspaceERKSt10shared_ptrIN5miral9WorkspaceEERKSt6vectorINS2_6WindowESaIS8_EE@Base 0.6.1
++ _ZN5qtmir22WindowManagementPolicy28confirm_placement_on_displayERKN5miral10WindowInfoE14MirWindowStateRKN3mir8geometry7generic9RectangleIiEE@Base 0.8.0~git20230109.671f617
++#MISSING: 0.8.0~git20230109.671f617# _ZN5qtmir22WindowManagementPolicy28confirm_placement_on_displayERKN5miral10WindowInfoE14MirWindowStateRKN3mir8geometry9RectangleE@Base 0.6.1
++ _ZN5qtmir22WindowManagementPolicy28handle_request_drag_and_dropERN5miral10WindowInfoE@Base 0.6.1
++ _ZN5qtmir22WindowManagementPolicy30advise_removing_from_workspaceERKSt10shared_ptrIN5miral9WorkspaceEERKSt6vectorINS2_6WindowESaIS8_EE@Base 0.6.1
++ _ZN5qtmir22WindowManagementPolicyC1ERKN5miral18WindowManagerToolsESt10shared_ptrINS_29WindowManagementPolicyPrivateEE@Base 0.6.1
++ _ZN5qtmir22WindowManagementPolicyC2ERKN5miral18WindowManagerToolsESt10shared_ptrINS_29WindowManagementPolicyPrivateEE@Base 0.6.1
++ _ZN5qtmir22WindowManagementPolicyD0Ev@Base 0.6.1
++ _ZN5qtmir22WindowManagementPolicyD1Ev@Base 0.6.1
++ _ZN5qtmir22WindowManagementPolicyD2Ev@Base 0.6.1
++ _ZN5qtmir22WindowNotifierObserver11qt_metacallEN11QMetaObject4CallEiPPv@Base 0.6.1
++ _ZN5qtmir22WindowNotifierObserver11qt_metacastEPKc@Base 0.6.1
++ _ZN5qtmir22WindowNotifierObserver11windowMovedERK6QPoint@Base 0.6.1
++ _ZN5qtmir22WindowNotifierObserver11windowReadyEv@Base 0.6.1
++ _ZN5qtmir22WindowNotifierObserver13windowCreatedEv@Base 0.6.1
++ _ZN5qtmir22WindowNotifierObserver13windowRemovedEv@Base 0.6.1
++ _ZN5qtmir22WindowNotifierObserver13windowResizedERK5QSize@Base 0.6.1
++ _ZN5qtmir22WindowNotifierObserver16staticMetaObjectE@Base 0.6.1
++ _ZN5qtmir22WindowNotifierObserver18windowFocusChangedEb@Base 0.6.1
++ _ZN5qtmir22WindowNotifierObserver18windowStateChangedEN3Mir5StateE@Base 0.6.1
++ _ZN5qtmir22WindowNotifierObserver20windowRequestedRaiseEv@Base 0.6.1
++ _ZN5qtmir22WindowNotifierObserver24foreachObserverForWindowERKN5miral6WindowESt8functionIFvPS0_EE@Base 0.6.1
++ _ZN5qtmir22WindowNotifierObserverC1ERKN5miral6WindowE@Base 0.6.1
++ _ZN5qtmir22WindowNotifierObserverC2ERKN5miral6WindowE@Base 0.6.1
++ _ZN5qtmir22WindowNotifierObserverD0Ev@Base 0.6.1
++ _ZN5qtmir22WindowNotifierObserverD1Ev@Base 0.6.1
++ _ZN5qtmir22WindowNotifierObserverD2Ev@Base 0.6.1
++ (optional=templinst)_ZN5qtmir25BasicSetSessionAuthorizerC1ERKSt8functionIFSt10shared_ptrINS_17SessionAuthorizerEEvEE@Base 0.6.1
++ (optional=templinst)_ZN5qtmir25BasicSetSessionAuthorizerC2ERKSt8functionIFSt10shared_ptrINS_17SessionAuthorizerEEvEE@Base 0.6.1
++ _ZN5qtmir25BasicSetSessionAuthorizerclER10QMirServer@Base 0.6.1
++ _ZN5qtmir26DisplayConfigurationPolicy8apply_toERN3mir8graphics20DisplayConfigurationE@Base 0.6.1
++ _ZN5qtmir26DisplayConfigurationPolicyC1Ev@Base 0.6.1
++ _ZN5qtmir26DisplayConfigurationPolicyC2Ev@Base 0.6.1
++ _ZN5qtmir26DisplayConfigurationPolicyD0Ev@Base 0.6.1
++ _ZN5qtmir26DisplayConfigurationPolicyD1Ev@Base 0.6.1
++ _ZN5qtmir26DisplayConfigurationPolicyD2Ev@Base 0.6.1
++ (optional=templinst)_ZN5qtmir30BasicSetWindowManagementPolicyC1ERKSt8functionIFSt10shared_ptrINS_22WindowManagementPolicyEERKN5miral18WindowManagerToolsES2_INS_29WindowManagementPolicyPrivateEEEE@Base 0.6.1
++ (optional=templinst)_ZN5qtmir30BasicSetWindowManagementPolicyC2ERKSt8functionIFSt10shared_ptrINS_22WindowManagementPolicyEERKN5miral18WindowManagerToolsES2_INS_29WindowManagementPolicyPrivateEEEE@Base 0.6.1
++ _ZN5qtmir30BasicSetWindowManagementPolicyclER10QMirServer@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst)_ZN5qtmir34BasicSetDisplayConfigurationPolicyC1ERKSt8functionIFSt10shared_ptrIN5miral26DisplayConfigurationPolicyEEvEE@Base 0.6.1
++ (optional=templinst)_ZN5qtmir34BasicSetDisplayConfigurationPolicyC1ERKSt8functionIFSt10shared_ptrIN6miroil26DisplayConfigurationPolicyEERKS2_IN3mir8graphics26DisplayConfigurationPolicyEEEE@Base 0.8.0~git20230109.671f617
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst)_ZN5qtmir34BasicSetDisplayConfigurationPolicyC2ERKSt8functionIFSt10shared_ptrIN5miral26DisplayConfigurationPolicyEEvEE@Base 0.6.1
++ (optional=templinst)_ZN5qtmir34BasicSetDisplayConfigurationPolicyC2ERKSt8functionIFSt10shared_ptrIN6miroil26DisplayConfigurationPolicyEERKS2_IN3mir8graphics26DisplayConfigurationPolicyEEEE@Base 0.8.0~git20230109.671f617
++ _ZN5qtmir34BasicSetDisplayConfigurationPolicyclER10QMirServer@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst)_ZN5qtmir35BasicSetDisplayConfigurationStorageC1ERKSt8functionIFSt10shared_ptrIN5miral27DisplayConfigurationStorageEEvEE@Base 0.6.1
++ (optional=templinst)_ZN5qtmir35BasicSetDisplayConfigurationStorageC1ERKSt8functionIFSt10shared_ptrIN6miroil27DisplayConfigurationStorageEEvEE@Base 0.8.0~git20230109.671f617
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst)_ZN5qtmir35BasicSetDisplayConfigurationStorageC2ERKSt8functionIFSt10shared_ptrIN5miral27DisplayConfigurationStorageEEvEE@Base 0.6.1
++ (optional=templinst)_ZN5qtmir35BasicSetDisplayConfigurationStorageC2ERKSt8functionIFSt10shared_ptrIN6miroil27DisplayConfigurationStorageEEvEE@Base 0.8.0~git20230109.671f617
++ _ZN5qtmir35BasicSetDisplayConfigurationStorageclER10QMirServer@Base 0.6.1
++ _ZN5qtmir3Mir10m_instanceE@Base 0.6.1
++ _ZN5qtmir3Mir11qt_metacallEN11QMetaObject4CallEiPPv@Base 0.6.1
++ _ZN5qtmir3Mir11qt_metacastEPKc@Base 0.6.1
++ _ZN5qtmir3Mir13setCursorNameERK7QString@Base 0.6.1
++ _ZN5qtmir3Mir16setCurrentKeymapERK7QString@Base 0.6.1
++ _ZN5qtmir3Mir16staticMetaObjectE@Base 0.6.1
++ _ZN5qtmir3Mir8instanceEv@Base 0.6.1
++ _ZN5qtmir3MirC1Ev@Base 0.6.1
++ _ZN5qtmir3MirC2Ev@Base 0.6.1
++ _ZN5qtmir3MirD0Ev@Base 0.6.1
++ _ZN5qtmir3MirD1Ev@Base 0.6.1
++ _ZN5qtmir3MirD2Ev@Base 0.6.1
++ _ZN5qtmir6Cursor11qt_metacallEN11QMetaObject4CallEiPPv@Base 0.6.1
++ _ZN5qtmir6Cursor11qt_metacastEPKc@Base 0.6.1
++ _ZN5qtmir6Cursor12changeCursorEP7QCursorP7QWindow@Base 0.6.1
++ _ZN5qtmir6Cursor12pointerEventERK11QMouseEvent@Base 0.6.1
++ _ZN5qtmir6Cursor16staticMetaObjectE@Base 0.6.1
++ _ZN5qtmir6Cursor20registerMousePointerEP24MirMousePointerInterface@Base 0.6.1
++ _ZN5qtmir6Cursor22unregisterMousePointerEP24MirMousePointerInterface@Base 0.6.1
++ _ZN5qtmir6Cursor6setPosERK6QPoint@Base 0.6.1
++ _ZN5qtmir6Cursor7Private11qt_metacallEN11QMetaObject4CallEiPPv@Base 0.6.1
++ _ZN5qtmir6Cursor7Private11qt_metacastEPKc@Base 0.6.1
++ _ZN5qtmir6Cursor7Private13cursorChangedERK7QCursorRK7QString@Base 0.6.1
++ _ZN5qtmir6Cursor7Private15setCustomCursorEP7QCursorRK7QString@Base 0.6.1
++ _ZN5qtmir6Cursor7Private16setMirCursorNameERK7QString@Base 0.6.1
++ _ZN5qtmir6Cursor7Private16staticMetaObjectE@Base 0.6.1
++ _ZN5qtmir6Cursor7Private21screenPositionChangedERK6QPoint@Base 0.6.1
++ _ZN5qtmir6Cursor7PrivateC1Ev@Base 0.6.1
++ _ZN5qtmir6Cursor7PrivateC2Ev@Base 0.6.1
++ _ZN5qtmir6Cursor7PrivateD0Ev@Base 0.6.1
++ _ZN5qtmir6Cursor7PrivateD1Ev@Base 0.6.1
++ _ZN5qtmir6Cursor7PrivateD2Ev@Base 0.6.1
++ _ZN5qtmir6CursorC1Ev@Base 0.6.1
++ _ZN5qtmir6CursorC2Ev@Base 0.6.1
++ _ZN5qtmir6CursorD0Ev@Base 0.6.1
++ _ZN5qtmir6CursorD1Ev@Base 0.6.1
++ _ZN5qtmir6CursorD2Ev@Base 0.6.1
++ _ZN5qtmir6Screen11nameChangedEv@Base 0.6.1
++ _ZN5qtmir6Screen11qt_metacallEN11QMetaObject4CallEiPPv@Base 0.6.1
++ _ZN5qtmir6Screen11qt_metacastEPKc@Base 0.6.1
++ _ZN5qtmir6Screen11usedChangedEv@Base 0.6.1
++ _ZN5qtmir6Screen12scaleChangedEv@Base 0.6.1
++ _ZN5qtmir6Screen13activeChangedEb@Base 0.6.1
++ _ZN5qtmir6Screen15positionChangedEv@Base 0.6.1
++ _ZN5qtmir6Screen16powerModeChangedEv@Base 0.6.1
++ _ZN5qtmir6Screen16staticMetaObjectE@Base 0.6.1
++ _ZN5qtmir6Screen17formFactorChangedEv@Base 0.6.1
++ _ZN5qtmir6Screen17outputTypeChangedEv@Base 0.6.1
++ _ZN5qtmir6Screen18orientationChangedEv@Base 0.6.1
++ _ZN5qtmir6Screen19physicalSizeChangedEv@Base 0.6.1
++ _ZN5qtmir6Screen21availableModesChangedEv@Base 0.6.1
++ _ZN5qtmir6Screen23currentModeIndexChangedEv@Base 0.6.1
++ _ZN5qtmir7Screens11qt_metacallEN11QMetaObject4CallEiPPv@Base 0.6.1
++ _ZN5qtmir7Screens11qt_metacastEPKc@Base 0.6.1
++ _ZN5qtmir7Screens11screenAddedEPNS_6ScreenE@Base 0.6.1
++ _ZN5qtmir7Screens13screenRemovedEPNS_6ScreenE@Base 0.6.1
++ _ZN5qtmir7Screens16staticMetaObjectE@Base 0.6.1
++ _ZN5qtmir7Screens19activeScreenChangedEv@Base 0.6.1
++ _ZN5qtmir9NewWindowD1Ev@Base 0.6.1
++ _ZN5qtmir9NewWindowD2Ev@Base 0.6.1
++ _ZN5qtmir9ShellUuId6m_uuidE@Base 0.6.1
++ _ZN5qtmir9ShellUuId7m_mutexE@Base 0.6.1
++ _ZN5qtmir9ShellUuId8toStringEv@Base 0.6.1
++ _ZN6QDebuglsEPKc@Base 0.6.1
++ _ZN6miroil13SetCompositorD1Ev@Base 0.8.0~git20230109.671f617
++ _ZN6miroil13SetCompositorD2Ev@Base 0.8.0~git20230109.671f617
++#MISSING: 0.6.1-8# _ZN7QStringC1ERKS_@Base 0.6.1
++#MISSING: 0.6.1-8# _ZN7QStringC2ERKS_@Base 0.6.1
++ _ZN7QStringD1Ev@Base 0.6.1
++ _ZN7QStringD2Ev@Base 0.6.1
++#MISSING: 0.7.0-1# (optional=templinst|arch=!amd64 !arm64 !mips64el !ppc64el !sh4)_ZN7QVectorI5QRectEC1ERKS1_@Base 0.6.1
++#MISSING: 0.7.0-1# (optional=templinst|arch=!amd64 !arm64 !mips64el !ppc64el !sh4)_ZN7QVectorI5QRectEC2ERKS1_@Base 0.6.1
++ (optional=templinst)_ZN7QVectorI5QRectED1Ev@Base 0.6.1
++ (optional=templinst)_ZN7QVectorI5QRectED2Ev@Base 0.6.1
++ (optional=templinst|arch=!amd64 !arm64 !hppa !mips64el !ppc64 !ppc64el !riscv64 !s390x !sh4)_ZN7QVectorI7QPointFEC1ERKS1_@Base 0.6.1
++ (optional=templinst|arch=!amd64 !arm64 !hppa !mips64el !ppc64 !ppc64el !riscv64 !s390x !sh4)_ZN7QVectorI7QPointFEC2ERKS1_@Base 0.6.1
++ (optional=templinst)_ZN7QVectorI7QPointFED1Ev@Base 0.6.1
++ (optional=templinst)_ZN7QVectorI7QPointFED2Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst)_ZN7QVectorIN5qtmir12EventBuilder9EventInfoEE7reallocEi6QFlagsIN10QArrayData16AllocationOptionEE@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !armhf)_ZN7QVectorIN5qtmir12EventBuilder9EventInfoEED1Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !armhf)_ZN7QVectorIN5qtmir12EventBuilder9EventInfoEED2Ev@Base 0.6.1
++ (optional=templinst)_ZN7QVectorIN5qtmir19ScreenConfigurationEE6appendEOS1_@Base 0.6.1
++ (optional=templinst)_ZN7QVectorIN5qtmir19ScreenConfigurationEE7reallocEi6QFlagsIN10QArrayData16AllocationOptionEE@Base 0.6.1
++#MISSING: 0.7.0-1# (optional=templinst|arch=!amd64)_ZN7QVectorIN5qtmir19ScreenConfigurationEEC1ERKS2_@Base 0.6.1
++#MISSING: 0.7.0-1# (optional=templinst|arch=!amd64)_ZN7QVectorIN5qtmir19ScreenConfigurationEEC2ERKS2_@Base 0.6.1
++ (optional=templinst)_ZN7QVectorIN5qtmir19ScreenConfigurationEED1Ev@Base 0.6.1
++ (optional=templinst)_ZN7QVectorIN5qtmir19ScreenConfigurationEED2Ev@Base 0.6.1
++ (optional=templinst)_ZN7QVectorIN6miroil11InputDeviceEE6appendERKS1_@Base 0.8.0~git20230109.671f617
++ (optional=templinst)_ZN7QVectorIN6miroil11InputDeviceEE7reallocEi6QFlagsIN10QArrayData16AllocationOptionEE@Base 0.8.0~git20230109.671f617
++ (optional=templinst)_ZN7QVectorIN6miroil11InputDeviceEED1Ev@Base 0.8.0~git20230109.671f617
++ (optional=templinst)_ZN7QVectorIN6miroil11InputDeviceEED2Ev@Base 0.8.0~git20230109.671f617
++ (optional=templinst)_ZN7QVectorIP20ScreenPlatformWindowE7reallocEi6QFlagsIN10QArrayData16AllocationOptionEE@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst)_ZN7QVectorIP20ScreenPlatformWindowEC1ERKS2_@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst)_ZN7QVectorIP20ScreenPlatformWindowEC2ERKS2_@Base 0.6.1
++ (optional=templinst)_ZN7QVectorIP20ScreenPlatformWindowED1Ev@Base 0.6.1
++ (optional=templinst)_ZN7QVectorIP20ScreenPlatformWindowED2Ev@Base 0.6.1
++ _ZN7QVectorIPN5qtmir10ScreenModeEE6appendEOS2_@Base 0.6.1
++ _ZN7QVectorIPN5qtmir10ScreenModeEE7reallocEi6QFlagsIN10QArrayData16AllocationOptionEE@Base 0.6.1
++ _ZN7QVectorIPN5qtmir10ScreenModeEE7reserveEi@Base 0.6.1
++ _ZN7QVectorIPN5qtmir10ScreenModeEED1Ev@Base 0.6.1
++ _ZN7QVectorIPN5qtmir10ScreenModeEED2Ev@Base 0.6.1
++ (optional=templinst)_ZN7QVectorIPN5qtmir6ScreenEE5eraseEPS2_S4_@Base 0.6.1
++ (optional=templinst)_ZN7QVectorIPN5qtmir6ScreenEE6appendEOS2_@Base 0.6.1
++ (optional=templinst)_ZN7QVectorIPN5qtmir6ScreenEE7reallocEi6QFlagsIN10QArrayData16AllocationOptionEE@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst)_ZN7QVectorIPN5qtmir6ScreenEEC1ERKS3_@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst)_ZN7QVectorIPN5qtmir6ScreenEEC2ERKS3_@Base 0.6.1
++ (optional=templinst)_ZN7QVectorIPN5qtmir6ScreenEED1Ev@Base 0.6.1
++ (optional=templinst)_ZN7QVectorIPN5qtmir6ScreenEED2Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst)_ZN7QVectorISt10shared_ptrIN3mir5input6DeviceEEE6appendERKS4_@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst)_ZN7QVectorISt10shared_ptrIN3mir5input6DeviceEEE7reallocEi6QFlagsIN10QArrayData16AllocationOptionEE@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst)_ZN7QVectorISt10shared_ptrIN3mir5input6DeviceEEE9removeAllERKS4_@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst)_ZN7QVectorISt10shared_ptrIN3mir5input6DeviceEEEC1ERKS5_@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst)_ZN7QVectorISt10shared_ptrIN3mir5input6DeviceEEEC2ERKS5_@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst)_ZN7QVectorISt10shared_ptrIN3mir5input6DeviceEEED1Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst)_ZN7QVectorISt10shared_ptrIN3mir5input6DeviceEEED2Ev@Base 0.6.1
++ (optional=templinst)_ZN8QMapDataIi7QStringE7destroyEv@Base 0.6.1
++ (optional=templinst)_ZN8QMapNodeIi7QStringE14destroySubTreeEv@Base 0.6.1
++ _ZN8Services12openDocumentERK4QUrl@Base 0.6.1
++ _ZN8Services14callDispatcherERK4QUrl@Base 0.6.1
++ _ZN8Services7openUrlERK4QUrl@Base 0.6.1
++ _ZN8ServicesD0Ev@Base 0.6.1
++ _ZN8ServicesD1Ev@Base 0.6.1
++ _ZN8ServicesD2Ev@Base 0.6.1
++ (optional=templinst)_ZN9QtPrivate11QSlotObjectIM10QMirServerFvvENS_4ListIJEEEvE4implEiPNS_15QSlotObjectBaseEP7QObjectPPvPb@Base 0.6.1
++ (optional=templinst)_ZN9QtPrivate11QSlotObjectIM12ScreensModelFvvENS_4ListIJEEEvE4implEiPNS_15QSlotObjectBaseEP7QObjectPPvPb@Base 0.6.1
++ (optional=templinst)_ZN9QtPrivate11QSlotObjectIM13ScreenAdaptorFvvENS_4ListIJEEEvE4implEiPNS_15QSlotObjectBaseEP7QObjectPPvPb@Base 0.6.1
++ (optional=templinst)_ZN9QtPrivate11QSlotObjectIM14PlatformScreenFvN19QOrientationReading11OrientationEENS_4ListIJS3_EEEvE4implEiPNS_15QSlotObjectBaseEP7QObjectPPvPb@Base 0.6.1
++ (optional=templinst)_ZN9QtPrivate11QSlotObjectIM18ScreenAdaptorModelFvP7QScreenENS_4ListIJS3_EEEvE4implEiPNS_15QSlotObjectBaseEP7QObjectPPvPb@Base 0.6.1
++ (optional=templinst)_ZN9QtPrivate11QSlotObjectIM20ScreenPlatformWindowFvbENS_4ListIJbEEEvE4implEiPNS_15QSlotObjectBaseEP7QObjectPPvPb@Base 0.6.1
++ (optional=templinst)_ZN9QtPrivate11QSlotObjectIM20ScreenPlatformWindowFvvENS_4ListIJEEEvE4implEiPNS_15QSlotObjectBaseEP7QObjectPPvPb@Base 0.6.1
++ (optional=templinst)_ZN9QtPrivate11QSlotObjectIMN5qtmir22MirInputDeviceObserverEFvRK7QStringENS_4ListIJS5_EEEvE4implEiPNS_15QSlotObjectBaseEP7QObjectPPvPb@Base 0.6.1
++ (optional=templinst)_ZN9QtPrivate11QSlotObjectIMN5qtmir6Cursor7PrivateEFvRK7QStringENS_4ListIJS6_EEEvE4implEiPNS_15QSlotObjectBaseEP7QObjectPPvPb@Base 0.6.1
++ (optional=templinst)_ZN9QtPrivate11QSlotObjectIMN5qtmir6ScreenEFvbENS_4ListIJbEEEvE4implEiPNS_15QSlotObjectBaseEP7QObjectPPvPb@Base 0.6.1
++ (optional=templinst)_ZN9QtPrivate11QSlotObjectIMN5qtmir6ScreenEFvvENS_4ListIJEEEvE4implEiPNS_15QSlotObjectBaseEP7QObjectPPvPb@Base 0.6.1
++ (optional=templinst)_ZN9QtPrivate11QSlotObjectIMN5qtmir7ScreensEFvvENS_4ListIJEEEvE4implEiPNS_15QSlotObjectBaseEP7QObjectPPvPb@Base 0.6.1
++ _ZN9QtPrivate17QForeachContainerI7QVectorIP20ScreenPlatformWindowEEC1ERKS4_@Base 0.6.1
++ _ZN9QtPrivate17QForeachContainerI7QVectorIP20ScreenPlatformWindowEEC2ERKS4_@Base 0.6.1
++ (optional=templinst)_ZN9QtPrivate24printSequentialContainerI7QVectorIPN5qtmir6ScreenEEEE6QDebugS6_PKcRKT_@Base 0.6.1
++ (arch=armel riscv64)_ZN9__gnu_cxx24__concurrence_lock_errorD0Ev@Base 0.7.0
++ (arch=armel riscv64)_ZN9__gnu_cxx24__concurrence_lock_errorD1Ev@Base 0.7.0
++ (arch=armel riscv64)_ZN9__gnu_cxx24__concurrence_lock_errorD2Ev@Base 0.7.0
++ (arch=armel riscv64)_ZN9__gnu_cxx26__concurrence_unlock_errorD0Ev@Base 0.7.0
++ (arch=armel riscv64)_ZN9__gnu_cxx26__concurrence_unlock_errorD1Ev@Base 0.7.0
++ (arch=armel riscv64)_ZN9__gnu_cxx26__concurrence_unlock_errorD2Ev@Base 0.7.0
++ _ZNK10QMirServer10metaObjectEv@Base 0.6.1
++ _ZNK10QMirServer11appNotifierEv@Base 0.6.1
++ _ZNK10QMirServer12screensModelEv@Base 0.6.1
++ _ZNK10QMirServer19windowModelNotifierEv@Base 0.6.1
++ _ZNK10QMirServer23thePromptSessionManagerEv@Base 0.6.1
++ _ZNK10QMirServer27createPlatformOpenGLContextEP14QOpenGLContext@Base 0.6.1
++ _ZNK10QMirServer28nativeResourceForIntegrationERK10QByteArray@Base 0.6.1
++ _ZNK10QMirServer9isRunningEv@Base 0.6.1
++ _ZNK11MirGLConfig17depth_buffer_bitsEv@Base 0.6.1
++ _ZNK11MirGLConfig19stencil_buffer_bitsEv@Base 0.6.1
++ _ZNK12QtCompositor10metaObjectEv@Base 0.6.1
++ _ZNK12ScreensModel10metaObjectEv@Base 0.6.1
++ _ZNK12ScreensModel12createScreenERKN3mir8graphics26DisplayConfigurationOutputE@Base 0.6.1
++ _ZNK13ScreenAdaptor10formFactorEv@Base 0.6.1
++ _ZNK13ScreenAdaptor10metaObjectEv@Base 0.6.1
++ _ZNK13ScreenAdaptor10outputTypeEv@Base 0.6.1
++ _ZNK13ScreenAdaptor11orientationEv@Base 0.6.1
++ _ZNK13ScreenAdaptor12physicalSizeEv@Base 0.6.1
++ _ZNK13ScreenAdaptor16currentModeIndexEv@Base 0.6.1
++ _ZNK13ScreenAdaptor18beginConfigurationEv@Base 0.6.1
++ _ZNK13ScreenAdaptor4nameEv@Base 0.6.1
++ _ZNK13ScreenAdaptor4usedEv@Base 0.6.1
++ _ZNK13ScreenAdaptor5scaleEv@Base 0.6.1
++ _ZNK13ScreenAdaptor7qscreenEv@Base 0.6.1
++ _ZNK13ScreenAdaptor8isActiveEv@Base 0.6.1
++ _ZNK13ScreenAdaptor8positionEv@Base 0.6.1
++ _ZNK13ScreenAdaptor9displayIdEv@Base 0.6.1
++ _ZNK13ScreenAdaptor9powerModeEv@Base 0.6.1
++ _ZNK14PlatformScreen10metaObjectEv@Base 0.6.1
++ _ZNK14PlatformScreen10topLevelAtERK6QPoint@Base 0.6.1
++ _ZNK14PlatformScreen11orientationEv@Base 0.6.1
++ _ZNK14PlatformScreen11refreshRateEv@Base 0.6.1
++ _ZNK14PlatformScreen12physicalSizeEv@Base 0.6.1
++ _ZNK14PlatformScreen13primaryWindowEv@Base 0.6.1
++ _ZNK14PlatformScreen14availableModesEv@Base 0.6.1
++ _ZNK14PlatformScreen15internalDisplayEv@Base 0.6.1
++ _ZNK14PlatformScreen16devicePixelRatioEv@Base 0.6.1
++ _ZNK14PlatformScreen17nativeOrientationEv@Base 0.6.1
++ _ZNK14PlatformScreen4nameEv@Base 0.6.1
++ _ZNK14PlatformScreen5depthEv@Base 0.6.1
++ _ZNK14PlatformScreen6cursorEv@Base 0.6.1
++ _ZNK14PlatformScreen6formatEv@Base 0.6.1
++ _ZNK14PlatformScreen8geometryEv@Base 0.6.1
++ _ZNK15MirServerThread10metaObjectEv@Base 0.6.1
++ _ZNK15NativeInterface10metaObjectEv@Base 0.6.1
++ _ZNK15NativeInterface23thePromptSessionManagerEv@Base 0.6.1
++ _ZNK15QPlatformScreen13isPlaceholderEv@Base 0.6.1
++ _ZNK15QPlatformScreen17availableGeometryEv@Base 0.6.1
++ _ZNK15QPlatformWindow15isForeignWindowEv@Base 0.6.1
++ _ZNK15SurfaceObserver10metaObjectEv@Base 0.6.1
++ _ZNK16MirOpenGLContext10metaObjectEv@Base 0.6.1
++ _ZNK16MirOpenGLContext6formatEv@Base 0.6.1
++ _ZNK16MirOpenGLContext9isSharingEv@Base 0.6.1
++ _ZNK16OffscreenSurface6bufferEv@Base 0.6.1
++ _ZNK16OffscreenSurface6formatEv@Base 0.6.1
++ _ZNK16OffscreenSurface7isValidEv@Base 0.6.1
++ _ZNK17OrientationSensor10metaObjectEv@Base 0.6.1
++ _ZNK17QMirServerPrivate20promptSessionManagerEv@Base 0.6.1
++ _ZNK17QMirServerPrivate21promptSessionListenerEv@Base 0.6.1
++ _ZNK17QMirServerPrivate24theApplicationAuthorizerEv@Base 0.6.1
++ _ZNK17QMirServerPrivate27createPlatformOpenGLContextEP14QOpenGLContext@Base 0.6.1
++ _ZNK17ScreensController10metaObjectEv@Base 0.6.1
++ _ZNK18ScreenAdaptorModel12activeScreenEv@Base 0.6.1
++ _ZNK18ScreenAdaptorModel7screensEv@Base 0.6.1
++ _ZNK20ScreenPlatformWindow10metaObjectEv@Base 0.6.1
++ _ZNK20ScreenPlatformWindow5winIdEv@Base 0.6.1
++ _ZNK20ScreenPlatformWindow8isActiveEv@Base 0.6.1
++ _ZNK20ScreenPlatformWindow9isExposedEv@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZNK21PromptSessionListener10metaObjectEv@Base 0.6.1
++ _ZNK22QPlatformOpenGLContext7isValidEv@Base 0.6.1
++ _ZNK24MirMousePointerInterface10metaObjectEv@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZNK31MirDisplayConfigurationObserver10metaObjectEv@Base 0.6.1
++ _ZNK3Mir10metaObjectEv@Base 0.6.1
++ (optional=templinst)_ZNK5QHashIKN5miral6WindowEPN5qtmir22WindowNotifierObserverEE8findNodeERS2_j@Base 0.6.1
++ (optional=templinst)_ZNK5QHashIPKN3mir5scene13PromptSessionEN5qtmir13PromptSessionEE8findNodeERKS4_j@Base 0.6.1
++ (optional=templinst)_ZNK5QHashIPKN3mir5scene7SurfaceEP15SurfaceObserverE8findNodeERKS4_j@Base 0.6.1
++ (optional=templinst)_ZNK5QHashIiN22QWindowSystemInterface10TouchPointEE6valuesEv@Base 0.6.1
++ (optional=templinst)_ZNK5QListI5QPairId5QSizeEEeqERKS3_@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZNK5miral4Edid10Descriptor12string_valueB5cxx11Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZNK5miral8GLBuffer17has_alpha_channelEv@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZNK5miral8GLBuffer4sizeEv@Base 0.6.1
++#MISSING: 0.7.0# _ZNK5miral8GLBuffercvbEv@Base 0.6.1
++ _ZNK5qtmir10ScreenMode10metaObjectEv@Base 0.6.1
++ _ZNK5qtmir11AppNotifier10metaObjectEv@Base 0.6.1
++ _ZNK5qtmir11NamedCursor12as_argb_8888Ev@Base 0.6.1
++ _ZNK5qtmir11NamedCursor4sizeEv@Base 0.6.1
++ _ZNK5qtmir11NamedCursor7hotspotEv@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZNK5qtmir14MirServerHooks13theMirDisplayEv@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZNK5qtmir14MirServerHooks17theInputDeviceHubEv@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZNK5qtmir14MirServerHooks21promptSessionListenerEv@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZNK5qtmir14MirServerHooks23createScreensControllerERKSt10shared_ptrI12ScreensModelE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZNK5qtmir14MirServerHooks23thePromptSessionManagerEv@Base 0.6.1
++ _ZNK5qtmir17SessionAuthorizer10metaObjectEv@Base 0.6.1
++ _ZNK5qtmir19WindowModelNotifier10metaObjectEv@Base 0.6.1
++ _ZNK5qtmir20MirServerApplication10metaObjectEv@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZNK5qtmir20OpenGLContextFactory27createPlatformOpenGLContextE14QSurfaceFormatRN3mir8graphics7DisplayE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZNK5qtmir20PromptSessionManager14applicationForERKNS_13PromptSessionE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZNK5qtmir20PromptSessionManager17stopPromptSessionERKNS_13PromptSessionE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZNK5qtmir20PromptSessionManager19resumePromptSessionERKNS_13PromptSessionE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZNK5qtmir20PromptSessionManager20suspendPromptSessionERKNS_13PromptSessionE@Base 0.6.1
++ _ZNK5qtmir21PromptSessionListener10metaObjectEv@Base 0.8.0~git20230109.671f617
++ _ZNK5qtmir22MirInputDeviceObserver10metaObjectEv@Base 0.6.1
++ _ZNK5qtmir22WindowNotifierObserver10metaObjectEv@Base 0.6.1
++ _ZNK5qtmir25BasicSetSessionAuthorizer7builderEv@Base 0.6.1
++ _ZNK5qtmir30BasicSetWindowManagementPolicy7builderEv@Base 0.6.1
++ _ZNK5qtmir35BasicSetDisplayConfigurationStorage7builderEv@Base 0.6.1
++ _ZNK5qtmir3Mir10cursorNameEv@Base 0.6.1
++ _ZNK5qtmir3Mir10metaObjectEv@Base 0.6.1
++ _ZNK5qtmir3Mir13currentKeymapEv@Base 0.6.1
++ _ZNK5qtmir6Cursor10metaObjectEv@Base 0.6.1
++ _ZNK5qtmir6Cursor3posEv@Base 0.6.1
++ _ZNK5qtmir6Cursor7Private10metaObjectEv@Base 0.6.1
++ _ZNK5qtmir6Screen10metaObjectEv@Base 0.6.1
++ _ZNK5qtmir7Screens10metaObjectEv@Base 0.6.1
++ (optional=templinst)_ZNK8QMapNodeIi5QSizeE4copyEP8QMapDataIiS0_E@Base 0.6.1
++ (optional=templinst)_ZNK8QMapNodeIi7QStringE4copyEP8QMapDataIiS0_E@Base 0.6.1
++ (arch=armel riscv64)_ZNK9__gnu_cxx24__concurrence_lock_error4whatEv@Base 0.7.0
++ (arch=armel riscv64)_ZNK9__gnu_cxx26__concurrence_unlock_error4whatEv@Base 0.7.0
++ (optional=templinst)_ZNSt10unique_ptrIN3mir8graphics20DisplayConfigurationESt14default_deleteIS2_EED1Ev@Base 0.6.1
++ (optional=templinst)_ZNSt10unique_ptrIN3mir8graphics20DisplayConfigurationESt14default_deleteIS2_EED2Ev@Base 0.6.1
++ (optional=templinst)_ZNSt12_Vector_baseIhSaIhEED1Ev@Base 0.6.1
++ (optional=templinst)_ZNSt12_Vector_baseIhSaIhEED2Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst)_ZNSt12_Vector_baseItSaItEED1Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst)_ZNSt12_Vector_baseItSaItEED2Ev@Base 0.6.1
++ _ZNSt14_Function_baseD1Ev@Base 0.6.1
++ _ZNSt14_Function_baseD2Ev@Base 0.6.1
++#MISSING: 0.7.0-1# (optional=templinst|arch=armel)_ZNSt14__shared_countILN9__gnu_cxx12_Lock_policyE1EEC1IN3mir8graphics20DisplayConfigurationESt14default_deleteIS6_EEEOSt10unique_ptrIT_T0_E@Base 0.6.1
++#MISSING: 0.7.0-1# (optional=templinst|arch=armel)_ZNSt14__shared_countILN9__gnu_cxx12_Lock_policyE1EEC2IN3mir8graphics20DisplayConfigurationESt14default_deleteIS6_EEEOSt10unique_ptrIT_T0_E@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel)_ZNSt14__shared_countILN9__gnu_cxx12_Lock_policyE2EEC1IN3mir8graphics20DisplayConfigurationESt14default_deleteIS6_EEEOSt10unique_ptrIT_T0_E@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel)_ZNSt14__shared_countILN9__gnu_cxx12_Lock_policyE2EEC2IN3mir8graphics20DisplayConfigurationESt14default_deleteIS6_EEEOSt10unique_ptrIT_T0_E@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt15_Sp_counted_ptrIDnLN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt15_Sp_counted_ptrIDnLN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt15_Sp_counted_ptrIP12ScreensModelLN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt15_Sp_counted_ptrIP12ScreensModelLN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt15_Sp_counted_ptrIP12ScreensModelLN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt15_Sp_counted_ptrIP12ScreensModelLN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt15_Sp_counted_ptrIP12ScreensModelLN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt15_Sp_counted_ptrIP12ScreensModelLN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt15_Sp_counted_ptrIP12ScreensModelLN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt15_Sp_counted_ptrIP12ScreensModelLN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt15_Sp_counted_ptrIP12ScreensModelLN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt15_Sp_counted_ptrIP12ScreensModelLN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt15_Sp_counted_ptrIP12ScreensModelLN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt15_Sp_counted_ptrIP12ScreensModelLN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt15_Sp_counted_ptrIP13QtEventFeederLN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt15_Sp_counted_ptrIP13QtEventFeederLN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt15_Sp_counted_ptrIP13QtEventFeederLN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt15_Sp_counted_ptrIP13QtEventFeederLN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt15_Sp_counted_ptrIP13QtEventFeederLN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt15_Sp_counted_ptrIP13QtEventFeederLN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt15_Sp_counted_ptrIP13QtEventFeederLN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt15_Sp_counted_ptrIP13QtEventFeederLN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt15_Sp_counted_ptrIP13QtEventFeederLN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt15_Sp_counted_ptrIP13QtEventFeederLN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt15_Sp_counted_ptrIP13QtEventFeederLN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt15_Sp_counted_ptrIP13QtEventFeederLN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir17SessionAuthorizer7PrivateELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir17SessionAuthorizer7PrivateELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir17SessionAuthorizer7PrivateELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir17SessionAuthorizer7PrivateELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir17SessionAuthorizer7PrivateELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir17SessionAuthorizer7PrivateELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir17SessionAuthorizer7PrivateELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir17SessionAuthorizer7PrivateELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir17SessionAuthorizer7PrivateELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir17SessionAuthorizer7PrivateELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir17SessionAuthorizer7PrivateELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir17SessionAuthorizer7PrivateELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir25BasicSetSessionAuthorizer7PrivateELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir25BasicSetSessionAuthorizer7PrivateELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir25BasicSetSessionAuthorizer7PrivateELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir25BasicSetSessionAuthorizer7PrivateELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir25BasicSetSessionAuthorizer7PrivateELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir25BasicSetSessionAuthorizer7PrivateELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir25BasicSetSessionAuthorizer7PrivateELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir25BasicSetSessionAuthorizer7PrivateELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir25BasicSetSessionAuthorizer7PrivateELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir25BasicSetSessionAuthorizer7PrivateELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir25BasicSetSessionAuthorizer7PrivateELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir25BasicSetSessionAuthorizer7PrivateELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir26DisplayConfigurationPolicy7PrivateELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir26DisplayConfigurationPolicy7PrivateELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir26DisplayConfigurationPolicy7PrivateELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir26DisplayConfigurationPolicy7PrivateELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir26DisplayConfigurationPolicy7PrivateELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir26DisplayConfigurationPolicy7PrivateELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir26DisplayConfigurationPolicy7PrivateELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir26DisplayConfigurationPolicy7PrivateELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir26DisplayConfigurationPolicy7PrivateELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir26DisplayConfigurationPolicy7PrivateELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir26DisplayConfigurationPolicy7PrivateELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir26DisplayConfigurationPolicy7PrivateELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir30BasicSetWindowManagementPolicy7PrivateELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir30BasicSetWindowManagementPolicy7PrivateELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir30BasicSetWindowManagementPolicy7PrivateELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir30BasicSetWindowManagementPolicy7PrivateELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir30BasicSetWindowManagementPolicy7PrivateELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir30BasicSetWindowManagementPolicy7PrivateELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir30BasicSetWindowManagementPolicy7PrivateELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir30BasicSetWindowManagementPolicy7PrivateELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir30BasicSetWindowManagementPolicy7PrivateELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir30BasicSetWindowManagementPolicy7PrivateELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir30BasicSetWindowManagementPolicy7PrivateELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt15_Sp_counted_ptrIPN5qtmir30BasicSetWindowManagementPolicy7PrivateELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE1EE10_M_releaseEv@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE10_M_releaseEv@Base 0.6.1
++ (arch=amd64 arm64 m68k mips64el ppc64 ppc64el s390x)_ZNSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE24_M_release_last_use_coldEv@Base 0.8.0~git20230109.671f617
++ (optional=templinst)_ZNSt17_Function_handlerIFSt10shared_ptrIN5miral21ApplicationAuthorizerEEvEZNS1_24SetApplicationAuthorizerI24WrappedSessionAuthorizerEC4IJFS0_IN5qtmir17SessionAuthorizerEEvEEEEDpRKT_EUlvE_E10_M_managerERSt9_Any_dataRKSJ_St18_Manager_operation@Base 0.6.1
++ (optional=templinst)_ZNSt17_Function_handlerIFSt10shared_ptrIN5miral21ApplicationAuthorizerEEvEZNS1_24SetApplicationAuthorizerI24WrappedSessionAuthorizerEC4IJFS0_IN5qtmir17SessionAuthorizerEEvEEEEDpRKT_EUlvE_E9_M_invokeERKSt9_Any_data@Base 0.6.1
++ (optional=templinst)_ZNSt17_Function_handlerIFSt10shared_ptrIN5miral21ApplicationAuthorizerEEvEZNS1_24SetApplicationAuthorizerI24WrappedSessionAuthorizerEC4IJSt8functionIFS0_IN5qtmir17SessionAuthorizerEEvEEEEEDpRKT_EUlvE_E10_M_managerERSt9_Any_dataRKSL_St18_Manager_operation@Base 0.6.1
++ (optional=templinst)_ZNSt17_Function_handlerIFSt10shared_ptrIN5miral21ApplicationAuthorizerEEvEZNS1_24SetApplicationAuthorizerI24WrappedSessionAuthorizerEC4IJSt8functionIFS0_IN5qtmir17SessionAuthorizerEEvEEEEEDpRKT_EUlvE_E9_M_invokeERKSt9_Any_data@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst)_ZNSt17_Function_handlerIFSt10shared_ptrIN5miral26DisplayConfigurationPolicyEEvEPS4_E10_M_managerERSt9_Any_dataRKS7_St18_Manager_operation@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst)_ZNSt17_Function_handlerIFSt10shared_ptrIN5miral26DisplayConfigurationPolicyEEvEPS4_E9_M_invokeERKSt9_Any_data@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst)_ZNSt17_Function_handlerIFSt10shared_ptrIN5miral27DisplayConfigurationStorageEEvEPS4_E10_M_managerERSt9_Any_dataRKS7_St18_Manager_operation@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst)_ZNSt17_Function_handlerIFSt10shared_ptrIN5miral27DisplayConfigurationStorageEEvEPS4_E9_M_invokeERKSt9_Any_data@Base 0.6.1
++ (optional=templinst)_ZNSt17_Function_handlerIFSt10shared_ptrIN5qtmir17SessionAuthorizerEEvEPS4_E10_M_managerERSt9_Any_dataRKS7_St18_Manager_operation@Base 0.6.1
++ (optional=templinst)_ZNSt17_Function_handlerIFSt10shared_ptrIN5qtmir17SessionAuthorizerEEvEPS4_E9_M_invokeERKSt9_Any_data@Base 0.6.1
++ (optional=templinst)_ZNSt17_Function_handlerIFSt10shared_ptrIN5qtmir22WindowManagementPolicyEERKN5miral18WindowManagerToolsES0_INS1_29WindowManagementPolicyPrivateEEEPSA_E10_M_managerERSt9_Any_dataRKSD_St18_Manager_operation@Base 0.6.1
++ (optional=templinst)_ZNSt17_Function_handlerIFSt10shared_ptrIN5qtmir22WindowManagementPolicyEERKN5miral18WindowManagerToolsES0_INS1_29WindowManagementPolicyPrivateEEEPSA_E9_M_invokeERKSt9_Any_dataS7_OS9_@Base 0.6.1
++ (optional=templinst)_ZNSt17_Function_handlerIFSt10shared_ptrIN6miroil27DisplayConfigurationStorageEEvEPS4_E10_M_managerERSt9_Any_dataRKS7_St18_Manager_operation@Base 0.8.0~git20230109.671f617
++ (optional=templinst)_ZNSt17_Function_handlerIFSt10shared_ptrIN6miroil27DisplayConfigurationStorageEEvEPS4_E9_M_invokeERKSt9_Any_data@Base 0.8.0~git20230109.671f617
++ (optional=templinst)_ZNSt17_Function_handlerIFSt10unique_ptrIN5miral22WindowManagementPolicyESt14default_deleteIS2_EERKNS1_18WindowManagerToolsEEZNS1_28set_window_management_policyI29WrappedWindowManagementPolicyJN5qtmir19WindowModelNotifierENSC_16WindowControllerENSC_19WorkspaceControllerENSC_11AppNotifierEKSt10shared_ptrI12ScreensModelESH_I13QtEventFeederESt8functionIFSH_INSC_22WindowManagementPolicyEES8_SH_INSC_29WindowManagementPolicyPrivateEEEEEEENS1_25SetWindowManagementPolicyEDpRT0_EUlS8_E_E10_M_managerERSt9_Any_dataRKS10_St18_Manager_operation@Base 0.6.1
++ (optional=templinst)_ZNSt17_Function_handlerIFSt10unique_ptrIN5miral22WindowManagementPolicyESt14default_deleteIS2_EERKNS1_18WindowManagerToolsEEZNS1_28set_window_management_policyI29WrappedWindowManagementPolicyJN5qtmir19WindowModelNotifierENSC_16WindowControllerENSC_19WorkspaceControllerENSC_11AppNotifierEKSt10shared_ptrI12ScreensModelESH_I13QtEventFeederESt8functionIFSH_INSC_22WindowManagementPolicyEES8_SH_INSC_29WindowManagementPolicyPrivateEEEEEEENS1_25SetWindowManagementPolicyEDpRT0_EUlS8_E_E9_M_invokeERKSt9_Any_dataS8_@Base 0.6.1
++ (optional=templinst)_ZNSt17_Function_handlerIFvRN3mir6ServerEEN5miral13SetTerminatorEE10_M_managerERSt9_Any_dataRKS7_St18_Manager_operation@Base 0.6.1
++ (optional=templinst)_ZNSt17_Function_handlerIFvRN3mir6ServerEEN5miral13SetTerminatorEE9_M_invokeERKSt9_Any_dataS2_@Base 0.6.1
++ (optional=templinst)_ZNSt17_Function_handlerIFvRN3mir6ServerEEN5miral15AddInitCallbackEE10_M_managerERSt9_Any_dataRKS7_St18_Manager_operation@Base 0.6.1
++ (optional=templinst)_ZNSt17_Function_handlerIFvRN3mir6ServerEEN5miral15AddInitCallbackEE9_M_invokeERKSt9_Any_dataS2_@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst)_ZNSt17_Function_handlerIFvRN3mir6ServerEEN5miral20PersistDisplayConfigEE10_M_managerERSt9_Any_dataRKS7_St18_Manager_operation@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst)_ZNSt17_Function_handlerIFvRN3mir6ServerEEN5miral20PersistDisplayConfigEE9_M_invokeERKSt9_Any_dataS2_@Base 0.6.1
++ (optional=templinst)_ZNSt17_Function_handlerIFvRN3mir6ServerEEN5miral24SetApplicationAuthorizerI24WrappedSessionAuthorizerEEE10_M_managerERSt9_Any_dataRKS9_St18_Manager_operation@Base 0.6.1
++ (optional=templinst)_ZNSt17_Function_handlerIFvRN3mir6ServerEEN5miral24SetApplicationAuthorizerI24WrappedSessionAuthorizerEEE9_M_invokeERKSt9_Any_dataS2_@Base 0.6.1
++ (optional=templinst)_ZNSt17_Function_handlerIFvRN3mir6ServerEEN5miral25SetWindowManagementPolicyEE10_M_managerERSt9_Any_dataRKS7_St18_Manager_operation@Base 0.6.1
++ (optional=templinst)_ZNSt17_Function_handlerIFvRN3mir6ServerEEN5miral25SetWindowManagementPolicyEE9_M_invokeERKSt9_Any_dataS2_@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst)_ZNSt17_Function_handlerIFvRN3mir6ServerEEN5qtmir14MirServerHooksEE10_M_managerERSt9_Any_dataRKS7_St18_Manager_operation@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst)_ZNSt17_Function_handlerIFvRN3mir6ServerEEN5qtmir14MirServerHooksEE9_M_invokeERKSt9_Any_dataS2_@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst)_ZNSt17_Function_handlerIFvRN3mir6ServerEEN5qtmir15SetQtCompositorEE10_M_managerERSt9_Any_dataRKS7_St18_Manager_operation@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst)_ZNSt17_Function_handlerIFvRN3mir6ServerEEN5qtmir15SetQtCompositorEE9_M_invokeERKSt9_Any_dataS2_@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst)_ZNSt17_Function_handlerIFvRN3mir6ServerEEN5qtmir20OpenGLContextFactoryEE10_M_managerERSt9_Any_dataRKS7_St18_Manager_operation@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst)_ZNSt17_Function_handlerIFvRN3mir6ServerEEN5qtmir20OpenGLContextFactoryEE9_M_invokeERKSt9_Any_dataS2_@Base 0.6.1
++ (optional=templinst)_ZNSt17_Function_handlerIFvRN3mir6ServerEEN6miroil13OpenGLContextEE10_M_managerERSt9_Any_dataRKS7_St18_Manager_operation@Base 0.8.0~git20230109.671f617
++ (optional=templinst)_ZNSt17_Function_handlerIFvRN3mir6ServerEEN6miroil13OpenGLContextEE9_M_invokeERKSt9_Any_dataS2_@Base 0.8.0~git20230109.671f617
++ (optional=templinst)_ZNSt17_Function_handlerIFvRN3mir6ServerEEN6miroil13SetCompositorEE10_M_managerERSt9_Any_dataRKS7_St18_Manager_operation@Base 0.8.0~git20230109.671f617
++ (optional=templinst)_ZNSt17_Function_handlerIFvRN3mir6ServerEEN6miroil13SetCompositorEE9_M_invokeERKSt9_Any_dataS2_@Base 0.8.0~git20230109.671f617
++ (optional=templinst)_ZNSt17_Function_handlerIFvRN3mir6ServerEEN6miroil14MirServerHooksEE10_M_managerERSt9_Any_dataRKS7_St18_Manager_operation@Base 0.8.0~git20230109.671f617
++ (optional=templinst)_ZNSt17_Function_handlerIFvRN3mir6ServerEEN6miroil14MirServerHooksEE9_M_invokeERKSt9_Any_dataS2_@Base 0.8.0~git20230109.671f617
++ (optional=templinst)_ZNSt17_Function_handlerIFvRN3mir6ServerEEN6miroil20PersistDisplayConfigEE10_M_managerERSt9_Any_dataRKS7_St18_Manager_operation@Base 0.8.0~git20230109.671f617
++ (optional=templinst)_ZNSt17_Function_handlerIFvRN3mir6ServerEEN6miroil20PersistDisplayConfigEE9_M_invokeERKSt9_Any_dataS2_@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=armel riscv64)_ZNSt19_Sp_counted_deleterIPN3mir8graphics20DisplayConfigurationESt14default_deleteIS2_ESaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt19_Sp_counted_deleterIPN3mir8graphics20DisplayConfigurationESt14default_deleteIS2_ESaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt19_Sp_counted_deleterIPN3mir8graphics20DisplayConfigurationESt14default_deleteIS2_ESaIvELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt19_Sp_counted_deleterIPN3mir8graphics20DisplayConfigurationESt14default_deleteIS2_ESaIvELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt19_Sp_counted_deleterIPN3mir8graphics20DisplayConfigurationESt14default_deleteIS2_ESaIvELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt19_Sp_counted_deleterIPN3mir8graphics20DisplayConfigurationESt14default_deleteIS2_ESaIvELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt19_Sp_counted_deleterIPN3mir8graphics20DisplayConfigurationESt14default_deleteIS2_ESaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt19_Sp_counted_deleterIPN3mir8graphics20DisplayConfigurationESt14default_deleteIS2_ESaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt19_Sp_counted_deleterIPN3mir8graphics20DisplayConfigurationESt14default_deleteIS2_ESaIvELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt19_Sp_counted_deleterIPN3mir8graphics20DisplayConfigurationESt14default_deleteIS2_ESaIvELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt19_Sp_counted_deleterIPN3mir8graphics20DisplayConfigurationESt14default_deleteIS2_ESaIvELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.6.1
++ (optional=templinst|arch=!armel !riscv64)_ZNSt19_Sp_counted_deleterIPN3mir8graphics20DisplayConfigurationESt14default_deleteIS2_ESaIvELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceI11MirGLConfigSaIS0_ELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceI11MirGLConfigSaIS0_ELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceI11MirGLConfigSaIS0_ELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceI11MirGLConfigSaIS0_ELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceI11MirGLConfigSaIS0_ELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceI11MirGLConfigSaIS0_ELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceI11MirGLConfigSaIS0_ELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceI11MirGLConfigSaIS0_ELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceI11MirGLConfigSaIS0_ELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceI11MirGLConfigSaIS0_ELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceI11MirGLConfigSaIS0_ELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceI11MirGLConfigSaIS0_ELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceI11MirGLConfigSaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceI11MirGLConfigSaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceI11MirGLConfigSaIvELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceI11MirGLConfigSaIvELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceI11MirGLConfigSaIvELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceI11MirGLConfigSaIvELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceI11MirGLConfigSaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceI11MirGLConfigSaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceI11MirGLConfigSaIvELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceI11MirGLConfigSaIvELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceI11MirGLConfigSaIvELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceI11MirGLConfigSaIvELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.7.0
++ (optional=templinst|arch=armel)_ZNSt23_Sp_counted_ptr_inplaceI12QtCompositorSaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=armel)_ZNSt23_Sp_counted_ptr_inplaceI12QtCompositorSaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=armel)_ZNSt23_Sp_counted_ptr_inplaceI12QtCompositorSaIvELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=armel)_ZNSt23_Sp_counted_ptr_inplaceI12QtCompositorSaIvELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=armel)_ZNSt23_Sp_counted_ptr_inplaceI12QtCompositorSaIvELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=armel)_ZNSt23_Sp_counted_ptr_inplaceI12QtCompositorSaIvELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=!armel)_ZNSt23_Sp_counted_ptr_inplaceI12QtCompositorSaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=!armel)_ZNSt23_Sp_counted_ptr_inplaceI12QtCompositorSaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=!armel)_ZNSt23_Sp_counted_ptr_inplaceI12QtCompositorSaIvELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=!armel)_ZNSt23_Sp_counted_ptr_inplaceI12QtCompositorSaIvELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=!armel)_ZNSt23_Sp_counted_ptr_inplaceI12QtCompositorSaIvELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=!armel)_ZNSt23_Sp_counted_ptr_inplaceI12QtCompositorSaIvELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.8.0~git20230109.671f617
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceI17OrientationSensorSaIS0_ELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceI17OrientationSensorSaIS0_ELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceI17OrientationSensorSaIS0_ELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceI17OrientationSensorSaIS0_ELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceI17OrientationSensorSaIS0_ELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceI17OrientationSensorSaIS0_ELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceI17OrientationSensorSaIS0_ELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceI17OrientationSensorSaIS0_ELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceI17OrientationSensorSaIS0_ELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceI17OrientationSensorSaIS0_ELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceI17OrientationSensorSaIS0_ELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceI17OrientationSensorSaIS0_ELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceI17OrientationSensorSaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceI17OrientationSensorSaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceI17OrientationSensorSaIvELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceI17OrientationSensorSaIvELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceI17OrientationSensorSaIvELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceI17OrientationSensorSaIvELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceI17OrientationSensorSaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceI17OrientationSensorSaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceI17OrientationSensorSaIvELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceI17OrientationSensorSaIvELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceI17OrientationSensorSaIvELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceI17OrientationSensorSaIvELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.7.0
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceI24WrappedSessionAuthorizerSaIS0_ELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceI24WrappedSessionAuthorizerSaIS0_ELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceI24WrappedSessionAuthorizerSaIS0_ELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceI24WrappedSessionAuthorizerSaIS0_ELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceI24WrappedSessionAuthorizerSaIS0_ELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceI24WrappedSessionAuthorizerSaIS0_ELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceI24WrappedSessionAuthorizerSaIS0_ELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceI24WrappedSessionAuthorizerSaIS0_ELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceI24WrappedSessionAuthorizerSaIS0_ELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceI24WrappedSessionAuthorizerSaIS0_ELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceI24WrappedSessionAuthorizerSaIS0_ELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceI24WrappedSessionAuthorizerSaIS0_ELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceI24WrappedSessionAuthorizerSaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceI24WrappedSessionAuthorizerSaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceI24WrappedSessionAuthorizerSaIvELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceI24WrappedSessionAuthorizerSaIvELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceI24WrappedSessionAuthorizerSaIvELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceI24WrappedSessionAuthorizerSaIvELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceI24WrappedSessionAuthorizerSaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceI24WrappedSessionAuthorizerSaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceI24WrappedSessionAuthorizerSaIvELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceI24WrappedSessionAuthorizerSaIvELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceI24WrappedSessionAuthorizerSaIvELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceI24WrappedSessionAuthorizerSaIvELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.7.0
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral15GLTextureBufferESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.7.0
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral15GLTextureBufferESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.7.0
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral15GLTextureBufferESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.7.0
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral15GLTextureBufferESaIS1_ELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.7.0
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral15GLTextureBufferESaIS1_ELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.7.0
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral15GLTextureBufferESaIS1_ELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.7.0
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral15GLTextureBufferESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.7.0
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral15GLTextureBufferESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.7.0
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral15GLTextureBufferESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.7.0
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral15GLTextureBufferESaIS1_ELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.7.0
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral15GLTextureBufferESaIS1_ELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.7.0
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral15GLTextureBufferESaIS1_ELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral15GLTextureBufferESaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral15GLTextureBufferESaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral15GLTextureBufferESaIvELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral15GLTextureBufferESaIvELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral15GLTextureBufferESaIvELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral15GLTextureBufferESaIvELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral15GLTextureBufferESaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral15GLTextureBufferESaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral15GLTextureBufferESaIvELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral15GLTextureBufferESaIvELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral15GLTextureBufferESaIvELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral15GLTextureBufferESaIvELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.7.0
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral20PersistDisplayConfig4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral20PersistDisplayConfig4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral20PersistDisplayConfig4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral20PersistDisplayConfig4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral20PersistDisplayConfig4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral20PersistDisplayConfig4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral20PersistDisplayConfig4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral20PersistDisplayConfig4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral20PersistDisplayConfig4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral20PersistDisplayConfig4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral20PersistDisplayConfig4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral20PersistDisplayConfig4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral20PersistDisplayConfig4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral20PersistDisplayConfig4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral20PersistDisplayConfig4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral20PersistDisplayConfig4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral20PersistDisplayConfig4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral20PersistDisplayConfig4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral20PersistDisplayConfig4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral20PersistDisplayConfig4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral20PersistDisplayConfig4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral20PersistDisplayConfig4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral20PersistDisplayConfig4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral20PersistDisplayConfig4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.7.0
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral21GLTextureSourceBufferESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.7.0
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral21GLTextureSourceBufferESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.7.0
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral21GLTextureSourceBufferESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.7.0
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral21GLTextureSourceBufferESaIS1_ELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.7.0
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral21GLTextureSourceBufferESaIS1_ELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.7.0
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral21GLTextureSourceBufferESaIS1_ELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.7.0
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral21GLTextureSourceBufferESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.7.0
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral21GLTextureSourceBufferESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.7.0
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral21GLTextureSourceBufferESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.7.0
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral21GLTextureSourceBufferESaIS1_ELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.7.0
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral21GLTextureSourceBufferESaIS1_ELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.7.0
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral21GLTextureSourceBufferESaIS1_ELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral21GLTextureSourceBufferESaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral21GLTextureSourceBufferESaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral21GLTextureSourceBufferESaIvELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral21GLTextureSourceBufferESaIvELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral21GLTextureSourceBufferESaIvELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral21GLTextureSourceBufferESaIvELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral21GLTextureSourceBufferESaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral21GLTextureSourceBufferESaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral21GLTextureSourceBufferESaIvELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral21GLTextureSourceBufferESaIvELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral21GLTextureSourceBufferESaIvELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5miral21GLTextureSourceBufferESaIvELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.7.0
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir11NamedCursorESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir11NamedCursorESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir11NamedCursorESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir11NamedCursorESaIS1_ELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir11NamedCursorESaIS1_ELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir11NamedCursorESaIS1_ELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir11NamedCursorESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir11NamedCursorESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir11NamedCursorESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir11NamedCursorESaIS1_ELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir11NamedCursorESaIS1_ELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir11NamedCursorESaIS1_ELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir11NamedCursorESaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir11NamedCursorESaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir11NamedCursorESaIvELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir11NamedCursorESaIvELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir11NamedCursorESaIvELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir11NamedCursorESaIvELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir11NamedCursorESaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir11NamedCursorESaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir11NamedCursorESaIvELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir11NamedCursorESaIvELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir11NamedCursorESaIvELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir11NamedCursorESaIvELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.7.0
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir14MirServerHooks4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir14MirServerHooks4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir14MirServerHooks4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir14MirServerHooks4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir14MirServerHooks4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir14MirServerHooks4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir14MirServerHooks4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir14MirServerHooks4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir14MirServerHooks4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir14MirServerHooks4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir14MirServerHooks4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir14MirServerHooks4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir14MirServerHooks4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir14MirServerHooks4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir14MirServerHooks4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir14MirServerHooks4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir14MirServerHooks4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir14MirServerHooks4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir14MirServerHooks4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir14MirServerHooks4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir14MirServerHooks4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir14MirServerHooks4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir14MirServerHooks4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir14MirServerHooks4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.7.0
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15ExtraWindowInfoESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15ExtraWindowInfoESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15ExtraWindowInfoESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15ExtraWindowInfoESaIS1_ELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15ExtraWindowInfoESaIS1_ELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15ExtraWindowInfoESaIS1_ELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15ExtraWindowInfoESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15ExtraWindowInfoESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15ExtraWindowInfoESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15ExtraWindowInfoESaIS1_ELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15ExtraWindowInfoESaIS1_ELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15ExtraWindowInfoESaIS1_ELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15ExtraWindowInfoESaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15ExtraWindowInfoESaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15ExtraWindowInfoESaIvELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15ExtraWindowInfoESaIvELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15ExtraWindowInfoESaIvELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15ExtraWindowInfoESaIvELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15ExtraWindowInfoESaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15ExtraWindowInfoESaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15ExtraWindowInfoESaIvELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15ExtraWindowInfoESaIvELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15ExtraWindowInfoESaIvELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15ExtraWindowInfoESaIvELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.7.0
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15MirCursorImagesESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15MirCursorImagesESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15MirCursorImagesESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15MirCursorImagesESaIS1_ELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15MirCursorImagesESaIS1_ELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15MirCursorImagesESaIS1_ELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15MirCursorImagesESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15MirCursorImagesESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15MirCursorImagesESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15MirCursorImagesESaIS1_ELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15MirCursorImagesESaIS1_ELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15MirCursorImagesESaIS1_ELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15MirCursorImagesESaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15MirCursorImagesESaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15MirCursorImagesESaIvELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15MirCursorImagesESaIvELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15MirCursorImagesESaIvELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15MirCursorImagesESaIvELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15MirCursorImagesESaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15MirCursorImagesESaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15MirCursorImagesESaIvELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15MirCursorImagesESaIvELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15MirCursorImagesESaIvELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir15MirCursorImagesESaIvELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.7.0
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir17SessionAuthorizerESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir17SessionAuthorizerESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir17SessionAuthorizerESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir17SessionAuthorizerESaIS1_ELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir17SessionAuthorizerESaIS1_ELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir17SessionAuthorizerESaIS1_ELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir17SessionAuthorizerESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir17SessionAuthorizerESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir17SessionAuthorizerESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir17SessionAuthorizerESaIS1_ELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir17SessionAuthorizerESaIS1_ELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir17SessionAuthorizerESaIS1_ELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir17SessionAuthorizerESaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir17SessionAuthorizerESaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir17SessionAuthorizerESaIvELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir17SessionAuthorizerESaIvELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir17SessionAuthorizerESaIvELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir17SessionAuthorizerESaIvELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir17SessionAuthorizerESaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir17SessionAuthorizerESaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir17SessionAuthorizerESaIvELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir17SessionAuthorizerESaIvELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir17SessionAuthorizerESaIvELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir17SessionAuthorizerESaIvELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.7.0
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20OpenGLContextFactory4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20OpenGLContextFactory4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20OpenGLContextFactory4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20OpenGLContextFactory4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20OpenGLContextFactory4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20OpenGLContextFactory4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20OpenGLContextFactory4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20OpenGLContextFactory4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20OpenGLContextFactory4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20OpenGLContextFactory4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20OpenGLContextFactory4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20OpenGLContextFactory4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20OpenGLContextFactory4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20OpenGLContextFactory4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20OpenGLContextFactory4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20OpenGLContextFactory4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20OpenGLContextFactory4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20OpenGLContextFactory4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20OpenGLContextFactory4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20OpenGLContextFactory4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20OpenGLContextFactory4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20OpenGLContextFactory4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20OpenGLContextFactory4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20OpenGLContextFactory4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.7.0
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20PromptSessionManagerESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20PromptSessionManagerESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20PromptSessionManagerESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20PromptSessionManagerESaIS1_ELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20PromptSessionManagerESaIS1_ELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20PromptSessionManagerESaIS1_ELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20PromptSessionManagerESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20PromptSessionManagerESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20PromptSessionManagerESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20PromptSessionManagerESaIS1_ELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20PromptSessionManagerESaIS1_ELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20PromptSessionManagerESaIS1_ELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20PromptSessionManagerESaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20PromptSessionManagerESaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20PromptSessionManagerESaIvELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20PromptSessionManagerESaIvELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20PromptSessionManagerESaIvELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20PromptSessionManagerESaIvELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20PromptSessionManagerESaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20PromptSessionManagerESaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20PromptSessionManagerESaIvELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20PromptSessionManagerESaIvELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20PromptSessionManagerESaIvELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir20PromptSessionManagerESaIvELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.7.0
++ (optional=templinst|arch=armel)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir21PromptSessionListenerESaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=armel)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir21PromptSessionListenerESaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=armel)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir21PromptSessionListenerESaIvELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=armel)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir21PromptSessionListenerESaIvELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=armel)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir21PromptSessionListenerESaIvELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=armel)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir21PromptSessionListenerESaIvELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=!armel)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir21PromptSessionListenerESaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=!armel)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir21PromptSessionListenerESaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=!armel)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir21PromptSessionListenerESaIvELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=!armel)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir21PromptSessionListenerESaIvELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=!armel)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir21PromptSessionListenerESaIvELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=!armel)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir21PromptSessionListenerESaIvELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=armel)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir22MirInputDeviceObserverESaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=armel)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir22MirInputDeviceObserverESaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=armel)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir22MirInputDeviceObserverESaIvELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=armel)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir22MirInputDeviceObserverESaIvELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=armel)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir22MirInputDeviceObserverESaIvELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=armel)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir22MirInputDeviceObserverESaIvELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=!armel)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir22MirInputDeviceObserverESaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=!armel)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir22MirInputDeviceObserverESaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=!armel)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir22MirInputDeviceObserverESaIvELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=!armel)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir22MirInputDeviceObserverESaIvELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=!armel)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir22MirInputDeviceObserverESaIvELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=!armel)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir22MirInputDeviceObserverESaIvELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.8.0~git20230109.671f617
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir26DisplayConfigurationPolicyESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir26DisplayConfigurationPolicyESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir26DisplayConfigurationPolicyESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir26DisplayConfigurationPolicyESaIS1_ELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir26DisplayConfigurationPolicyESaIS1_ELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir26DisplayConfigurationPolicyESaIS1_ELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir26DisplayConfigurationPolicyESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir26DisplayConfigurationPolicyESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir26DisplayConfigurationPolicyESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir26DisplayConfigurationPolicyESaIS1_ELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir26DisplayConfigurationPolicyESaIS1_ELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir26DisplayConfigurationPolicyESaIS1_ELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir26DisplayConfigurationPolicyESaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir26DisplayConfigurationPolicyESaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir26DisplayConfigurationPolicyESaIvELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir26DisplayConfigurationPolicyESaIvELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir26DisplayConfigurationPolicyESaIvELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir26DisplayConfigurationPolicyESaIvELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir26DisplayConfigurationPolicyESaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir26DisplayConfigurationPolicyESaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir26DisplayConfigurationPolicyESaIvELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir26DisplayConfigurationPolicyESaIvELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir26DisplayConfigurationPolicyESaIvELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir26DisplayConfigurationPolicyESaIvELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.7.0
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir29WindowManagementPolicyPrivateESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir29WindowManagementPolicyPrivateESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir29WindowManagementPolicyPrivateESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir29WindowManagementPolicyPrivateESaIS1_ELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir29WindowManagementPolicyPrivateESaIS1_ELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir29WindowManagementPolicyPrivateESaIS1_ELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir29WindowManagementPolicyPrivateESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir29WindowManagementPolicyPrivateESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir29WindowManagementPolicyPrivateESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir29WindowManagementPolicyPrivateESaIS1_ELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir29WindowManagementPolicyPrivateESaIS1_ELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir29WindowManagementPolicyPrivateESaIS1_ELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir29WindowManagementPolicyPrivateESaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir29WindowManagementPolicyPrivateESaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir29WindowManagementPolicyPrivateESaIvELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir29WindowManagementPolicyPrivateESaIvELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir29WindowManagementPolicyPrivateESaIvELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir29WindowManagementPolicyPrivateESaIvELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir29WindowManagementPolicyPrivateESaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir29WindowManagementPolicyPrivateESaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir29WindowManagementPolicyPrivateESaIvELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir29WindowManagementPolicyPrivateESaIvELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir29WindowManagementPolicyPrivateESaIvELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir29WindowManagementPolicyPrivateESaIvELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.7.0
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir34BasicSetDisplayConfigurationPolicy4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir34BasicSetDisplayConfigurationPolicy4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir34BasicSetDisplayConfigurationPolicy4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir34BasicSetDisplayConfigurationPolicy4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir34BasicSetDisplayConfigurationPolicy4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir34BasicSetDisplayConfigurationPolicy4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir34BasicSetDisplayConfigurationPolicy4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir34BasicSetDisplayConfigurationPolicy4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir34BasicSetDisplayConfigurationPolicy4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir34BasicSetDisplayConfigurationPolicy4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir34BasicSetDisplayConfigurationPolicy4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir34BasicSetDisplayConfigurationPolicy4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir34BasicSetDisplayConfigurationPolicy4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir34BasicSetDisplayConfigurationPolicy4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir34BasicSetDisplayConfigurationPolicy4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir34BasicSetDisplayConfigurationPolicy4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir34BasicSetDisplayConfigurationPolicy4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir34BasicSetDisplayConfigurationPolicy4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir34BasicSetDisplayConfigurationPolicy4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir34BasicSetDisplayConfigurationPolicy4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir34BasicSetDisplayConfigurationPolicy4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir34BasicSetDisplayConfigurationPolicy4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir34BasicSetDisplayConfigurationPolicy4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir34BasicSetDisplayConfigurationPolicy4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.7.0
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir35BasicSetDisplayConfigurationStorage4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir35BasicSetDisplayConfigurationStorage4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir35BasicSetDisplayConfigurationStorage4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir35BasicSetDisplayConfigurationStorage4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir35BasicSetDisplayConfigurationStorage4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.6.1
++#MISSING: 0.7.0# (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir35BasicSetDisplayConfigurationStorage4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir35BasicSetDisplayConfigurationStorage4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir35BasicSetDisplayConfigurationStorage4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir35BasicSetDisplayConfigurationStorage4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir35BasicSetDisplayConfigurationStorage4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir35BasicSetDisplayConfigurationStorage4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.6.1
++#MISSING: 0.7.0-3# (optional=templinst|arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir35BasicSetDisplayConfigurationStorage4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.6.1
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir35BasicSetDisplayConfigurationStorage4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir35BasicSetDisplayConfigurationStorage4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir35BasicSetDisplayConfigurationStorage4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir35BasicSetDisplayConfigurationStorage4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir35BasicSetDisplayConfigurationStorage4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.7.0
++ (optional=templinst|arch=armel riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir35BasicSetDisplayConfigurationStorage4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir35BasicSetDisplayConfigurationStorage4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir35BasicSetDisplayConfigurationStorage4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir35BasicSetDisplayConfigurationStorage4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir35BasicSetDisplayConfigurationStorage4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir35BasicSetDisplayConfigurationStorage4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.7.0
++ (arch=!armel !riscv64)_ZNSt23_Sp_counted_ptr_inplaceIN5qtmir35BasicSetDisplayConfigurationStorage4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.7.0
++ (optional=templinst|arch=armel)_ZNSt23_Sp_counted_ptr_inplaceIN6miroil20PromptSessionManagerESaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=armel)_ZNSt23_Sp_counted_ptr_inplaceIN6miroil20PromptSessionManagerESaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=armel)_ZNSt23_Sp_counted_ptr_inplaceIN6miroil20PromptSessionManagerESaIvELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=armel)_ZNSt23_Sp_counted_ptr_inplaceIN6miroil20PromptSessionManagerESaIvELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=armel)_ZNSt23_Sp_counted_ptr_inplaceIN6miroil20PromptSessionManagerESaIvELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=armel)_ZNSt23_Sp_counted_ptr_inplaceIN6miroil20PromptSessionManagerESaIvELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=!armel)_ZNSt23_Sp_counted_ptr_inplaceIN6miroil20PromptSessionManagerESaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=!armel)_ZNSt23_Sp_counted_ptr_inplaceIN6miroil20PromptSessionManagerESaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=!armel)_ZNSt23_Sp_counted_ptr_inplaceIN6miroil20PromptSessionManagerESaIvELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=!armel)_ZNSt23_Sp_counted_ptr_inplaceIN6miroil20PromptSessionManagerESaIvELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=!armel)_ZNSt23_Sp_counted_ptr_inplaceIN6miroil20PromptSessionManagerESaIvELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=!armel)_ZNSt23_Sp_counted_ptr_inplaceIN6miroil20PromptSessionManagerESaIvELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=armel)_ZNSt23_Sp_counted_ptr_inplaceIN6miroil22DisplayListenerWrapperESaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=armel)_ZNSt23_Sp_counted_ptr_inplaceIN6miroil22DisplayListenerWrapperESaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=armel)_ZNSt23_Sp_counted_ptr_inplaceIN6miroil22DisplayListenerWrapperESaIvELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=armel)_ZNSt23_Sp_counted_ptr_inplaceIN6miroil22DisplayListenerWrapperESaIvELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=armel)_ZNSt23_Sp_counted_ptr_inplaceIN6miroil22DisplayListenerWrapperESaIvELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=armel)_ZNSt23_Sp_counted_ptr_inplaceIN6miroil22DisplayListenerWrapperESaIvELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=!armel)_ZNSt23_Sp_counted_ptr_inplaceIN6miroil22DisplayListenerWrapperESaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=!armel)_ZNSt23_Sp_counted_ptr_inplaceIN6miroil22DisplayListenerWrapperESaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=!armel)_ZNSt23_Sp_counted_ptr_inplaceIN6miroil22DisplayListenerWrapperESaIvELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=!armel)_ZNSt23_Sp_counted_ptr_inplaceIN6miroil22DisplayListenerWrapperESaIvELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=!armel)_ZNSt23_Sp_counted_ptr_inplaceIN6miroil22DisplayListenerWrapperESaIvELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=!armel)_ZNSt23_Sp_counted_ptr_inplaceIN6miroil22DisplayListenerWrapperESaIvELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=armel)_ZNSt23_Sp_counted_ptr_inplaceIN6miroil37DisplayConfigurationControllerWrapperESaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_destroyEv@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=armel)_ZNSt23_Sp_counted_ptr_inplaceIN6miroil37DisplayConfigurationControllerWrapperESaIvELN9__gnu_cxx12_Lock_policyE1EE10_M_disposeEv@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=armel)_ZNSt23_Sp_counted_ptr_inplaceIN6miroil37DisplayConfigurationControllerWrapperESaIvELN9__gnu_cxx12_Lock_policyE1EE14_M_get_deleterERKSt9type_info@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=armel)_ZNSt23_Sp_counted_ptr_inplaceIN6miroil37DisplayConfigurationControllerWrapperESaIvELN9__gnu_cxx12_Lock_policyE1EED0Ev@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=armel)_ZNSt23_Sp_counted_ptr_inplaceIN6miroil37DisplayConfigurationControllerWrapperESaIvELN9__gnu_cxx12_Lock_policyE1EED1Ev@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=armel)_ZNSt23_Sp_counted_ptr_inplaceIN6miroil37DisplayConfigurationControllerWrapperESaIvELN9__gnu_cxx12_Lock_policyE1EED2Ev@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=!armel)_ZNSt23_Sp_counted_ptr_inplaceIN6miroil37DisplayConfigurationControllerWrapperESaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=!armel)_ZNSt23_Sp_counted_ptr_inplaceIN6miroil37DisplayConfigurationControllerWrapperESaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=!armel)_ZNSt23_Sp_counted_ptr_inplaceIN6miroil37DisplayConfigurationControllerWrapperESaIvELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=!armel)_ZNSt23_Sp_counted_ptr_inplaceIN6miroil37DisplayConfigurationControllerWrapperESaIvELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=!armel)_ZNSt23_Sp_counted_ptr_inplaceIN6miroil37DisplayConfigurationControllerWrapperESaIvELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base 0.8.0~git20230109.671f617
++ (optional=templinst|arch=!armel)_ZNSt23_Sp_counted_ptr_inplaceIN6miroil37DisplayConfigurationControllerWrapperESaIvELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base 0.8.0~git20230109.671f617
++ (optional=templinst)_ZNSt6vectorISt10shared_ptrIN5miral9WorkspaceEESaIS3_EE17_M_realloc_insertIJRKS3_EEEvN9__gnu_cxx17__normal_iteratorIPS3_S5_EEDpOT_@Base 0.6.1
++ (optional=templinst)_ZNSt6vectorISt10shared_ptrIN5miral9WorkspaceEESaIS3_EED1Ev@Base 0.6.1
++ (optional=templinst)_ZNSt6vectorISt10shared_ptrIN5miral9WorkspaceEESaIS3_EED2Ev@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|subst)_ZNSt6vectorIhSaIhEE17_M_default_appendE{size_t}@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (arch=amd64 arm64)_ZNSt7__cxx119to_stringEm@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (arch=!mipsel)_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_S9_@Base 0.7.1-2
++ _ZTI10QMirServer@Base 0.6.1
++ _ZTI11MirGLConfig@Base 0.6.1
++ _ZTI12QtCompositor@Base 0.6.1
++ _ZTI12ScreensModel@Base 0.6.1
++ _ZTI13QtEventFeeder@Base 0.6.1
++ _ZTI13ScreenAdaptor@Base 0.6.1
++ _ZTI14PlatformScreen@Base 0.6.1
++ _ZTI15MirServerThread@Base 0.6.1
++ _ZTI15NativeInterface@Base 0.6.1
++ _ZTI15SurfaceObserver@Base 0.6.1
++ _ZTI16MirOpenGLContext@Base 0.6.1
++ _ZTI16OffscreenSurface@Base 0.6.1
++ _ZTI17MirPlatformCursor@Base 0.6.1
++ _ZTI17OrientationSensor@Base 0.6.1
++ _ZTI17ScreensController@Base 0.6.1
++ _ZTI18ScreenAdaptorModel@Base 0.6.1
++ _ZTI20ScreenPlatformWindow@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTI21PromptSessionListener@Base 0.6.1
++ _ZTI23OrientationReadingEvent@Base 0.6.1
++ _ZTI24MirMousePointerInterface@Base 0.6.1
++ _ZTI24WrappedSessionAuthorizer@Base 0.6.1
++ _ZTI29WrappedWindowManagementPolicy@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTI31MirDisplayConfigurationObserver@Base 0.6.1
++ _ZTI3Mir@Base 0.6.1
++ _ZTI8Services@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTIFSt10shared_ptrIN5miral26DisplayConfigurationPolicyEEvE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTIFSt10shared_ptrIN5miral27DisplayConfigurationStorageEEvE@Base 0.6.1
++ _ZTIFSt10shared_ptrIN5qtmir17SessionAuthorizerEEvE@Base 0.6.1
++ _ZTIFSt10shared_ptrIN5qtmir22WindowManagementPolicyEERKN5miral18WindowManagerToolsES_INS0_29WindowManagementPolicyPrivateEEE@Base 0.6.1
++ _ZTIFSt10shared_ptrIN6miroil27DisplayConfigurationStorageEEvE@Base 0.8.0~git20230109.671f617
++ _ZTIN13QtEventFeeder23QtWindowSystemInterfaceE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTIN3mir10compositor10CompositorE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTIN3mir5input12CursorImagesE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTIN3mir5input19InputDeviceObserverE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTIN3mir5scene21PromptSessionListenerE@Base 0.6.1
++ _ZTIN3mir8graphics11CursorImageE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTIN3mir8graphics13NativeDisplayE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTIN3mir8graphics16NativeBufferBaseE@Base 0.6.1
++ _ZTIN3mir8graphics19NativeDisplayBufferE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTIN3mir8graphics26DisplayConfigurationPolicyE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTIN3mir8graphics28DisplayConfigurationObserverE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTIN3mir8graphics6CursorE@Base 0.6.1
++ _ZTIN3mir8graphics8GLConfigE@Base 0.6.1
++ _ZTIN3mir8renderer2gl12RenderTargetE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTIN3mir8renderer2gl13ContextSourceE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTIN3mir8renderer2gl13TextureSourceE@Base 0.6.1
++ _ZTIN5miral13SetTerminatorE@Base 0.6.1
++ _ZTIN5miral15AddInitCallbackE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTIN5miral15GLTextureBufferE@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# _ZTIN5miral20PersistDisplayConfig4SelfE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTIN5miral20PersistDisplayConfigE@Base 0.6.1
++ _ZTIN5miral21ApplicationAuthorizerE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTIN5miral21GLTextureSourceBufferE@Base 0.7.0
++ _ZTIN5miral24SetApplicationAuthorizerI24WrappedSessionAuthorizerEE@Base 0.6.1
++ _ZTIN5miral25SetWindowManagementPolicyE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTIN5miral26DisplayConfigurationPolicyE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTIN5miral27DisplayConfigurationStorageE@Base 0.6.1
++ _ZTIN5miral29BasicSetApplicationAuthorizerE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTIN5miral8GLBufferE@Base 0.7.0
++ _ZTIN5qtmir10ScreenModeE@Base 0.6.1
++ _ZTIN5qtmir11AppNotifierE@Base 0.6.1
++ _ZTIN5qtmir11NamedCursorE@Base 0.6.1
++ _ZTIN5qtmir12EventBuilderE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTIN5qtmir14MirServerHooksE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTIN5qtmir15MirCursorImagesE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTIN5qtmir15SetQtCompositorE@Base 0.6.1
++ _ZTIN5qtmir16WindowControllerE@Base 0.6.1
++ _ZTIN5qtmir17SessionAuthorizerE@Base 0.6.1
++ _ZTIN5qtmir19WindowModelNotifierE@Base 0.6.1
++ _ZTIN5qtmir19WorkspaceControllerE@Base 0.6.1
++ _ZTIN5qtmir20MirServerApplicationE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTIN5qtmir20OpenGLContextFactoryE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTIN5qtmir20PromptSessionManagerE@Base 0.6.1
++ _ZTIN5qtmir21PromptSessionListenerE@Base 0.8.0~git20230109.671f617
++ _ZTIN5qtmir22MirInputDeviceObserverE@Base 0.6.1
++ _ZTIN5qtmir22WindowManagementPolicyE@Base 0.6.1
++ _ZTIN5qtmir22WindowNotifierObserverE@Base 0.6.1
++ _ZTIN5qtmir25WindowControllerInterfaceE@Base 0.6.1
++ _ZTIN5qtmir26DisplayConfigurationPolicyE@Base 0.6.1
++ _ZTIN5qtmir28WorkspaceControllerInterfaceE@Base 0.6.1
++ _ZTIN5qtmir3MirE@Base 0.6.1
++ _ZTIN5qtmir6Cursor7PrivateE@Base 0.6.1
++ _ZTIN5qtmir6CursorE@Base 0.6.1
++ _ZTIN5qtmir6ScreenE@Base 0.6.1
++ _ZTIN5qtmir7ScreensE@Base 0.6.1
++ _ZTIN6miroil13OpenGLContextE@Base 0.8.0~git20230109.671f617
++ _ZTIN6miroil13SetCompositorE@Base 0.8.0~git20230109.671f617
++ _ZTIN6miroil14MirServerHooksE@Base 0.8.0~git20230109.671f617
++ _ZTIN6miroil20PersistDisplayConfigE@Base 0.8.0~git20230109.671f617
++ _ZTIN6miroil27DisplayConfigurationStorageE@Base 0.8.0~git20230109.671f617
++ (arch=armel riscv64)_ZTIN9__gnu_cxx24__concurrence_lock_errorE@Base 0.7.0
++ (arch=armel riscv64)_ZTIN9__gnu_cxx26__concurrence_unlock_errorE@Base 0.7.0
++ (arch=armel riscv64)_ZTIN9__gnu_cxx7__mutexE@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# _ZTIPFSt10shared_ptrIN5miral26DisplayConfigurationPolicyEEvE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTIPFSt10shared_ptrIN5miral27DisplayConfigurationStorageEEvE@Base 0.6.1
++ _ZTIPFSt10shared_ptrIN5qtmir17SessionAuthorizerEEvE@Base 0.6.1
++ _ZTIPFSt10shared_ptrIN5qtmir22WindowManagementPolicyEERKN5miral18WindowManagerToolsES_INS0_29WindowManagementPolicyPrivateEEE@Base 0.6.1
++ _ZTIPFSt10shared_ptrIN6miroil27DisplayConfigurationStorageEEvE@Base 0.8.0~git20230109.671f617
++ (arch=armel riscv64)_ZTISt11_Mutex_baseILN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTISt11_Mutex_baseILN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel armhf)_ZTISt14default_deleteIN3mir8graphics20DisplayConfigurationEE@Base 0.6.1
++ (arch=armel riscv64)_ZTISt15_Sp_counted_ptrIP12ScreensModelLN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTISt15_Sp_counted_ptrIP12ScreensModelLN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTISt15_Sp_counted_ptrIP13QtEventFeederLN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTISt15_Sp_counted_ptrIP13QtEventFeederLN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTISt15_Sp_counted_ptrIPN5qtmir17SessionAuthorizer7PrivateELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTISt15_Sp_counted_ptrIPN5qtmir17SessionAuthorizer7PrivateELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTISt15_Sp_counted_ptrIPN5qtmir25BasicSetSessionAuthorizer7PrivateELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTISt15_Sp_counted_ptrIPN5qtmir25BasicSetSessionAuthorizer7PrivateELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTISt15_Sp_counted_ptrIPN5qtmir26DisplayConfigurationPolicy7PrivateELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTISt15_Sp_counted_ptrIPN5qtmir26DisplayConfigurationPolicy7PrivateELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTISt15_Sp_counted_ptrIPN5qtmir30BasicSetWindowManagementPolicy7PrivateELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTISt15_Sp_counted_ptrIPN5qtmir30BasicSetWindowManagementPolicy7PrivateELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTISt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTISt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTISt19_Sp_counted_deleterIPN3mir8graphics20DisplayConfigurationESt14default_deleteIS2_ESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTISt19_Sp_counted_deleterIPN3mir8graphics20DisplayConfigurationESt14default_deleteIS2_ESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel armhf)_ZTISt19_Sp_make_shared_tag@Base 0.6.1
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTISt23_Sp_counted_ptr_inplaceI11MirGLConfigSaIS0_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTISt23_Sp_counted_ptr_inplaceI11MirGLConfigSaIS0_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (arch=armel riscv64)_ZTISt23_Sp_counted_ptr_inplaceI11MirGLConfigSaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZTISt23_Sp_counted_ptr_inplaceI11MirGLConfigSaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++ (arch=armel)_ZTISt23_Sp_counted_ptr_inplaceI12QtCompositorSaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.8.0~git20230109.671f617
++ (arch=!armel)_ZTISt23_Sp_counted_ptr_inplaceI12QtCompositorSaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.8.0~git20230109.671f617
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTISt23_Sp_counted_ptr_inplaceI17OrientationSensorSaIS0_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTISt23_Sp_counted_ptr_inplaceI17OrientationSensorSaIS0_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTISt23_Sp_counted_ptr_inplaceI17OrientationSensorSaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTISt23_Sp_counted_ptr_inplaceI17OrientationSensorSaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTISt23_Sp_counted_ptr_inplaceI24WrappedSessionAuthorizerSaIS0_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTISt23_Sp_counted_ptr_inplaceI24WrappedSessionAuthorizerSaIS0_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTISt23_Sp_counted_ptr_inplaceI24WrappedSessionAuthorizerSaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTISt23_Sp_counted_ptr_inplaceI24WrappedSessionAuthorizerSaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5miral15GLTextureBufferESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5miral15GLTextureBufferESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=armel riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5miral15GLTextureBufferESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5miral15GLTextureBufferESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5miral20PersistDisplayConfig4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5miral20PersistDisplayConfig4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (arch=armel riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5miral20PersistDisplayConfig4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5miral20PersistDisplayConfig4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5miral21GLTextureSourceBufferESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5miral21GLTextureSourceBufferESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=armel riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5miral21GLTextureSourceBufferESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5miral21GLTextureSourceBufferESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir11NamedCursorESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir11NamedCursorESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir11NamedCursorESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir11NamedCursorESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir14MirServerHooks4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir14MirServerHooks4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (arch=armel riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir14MirServerHooks4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir14MirServerHooks4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir15ExtraWindowInfoESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir15ExtraWindowInfoESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir15ExtraWindowInfoESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir15ExtraWindowInfoESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir15MirCursorImagesESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir15MirCursorImagesESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (arch=armel riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir15MirCursorImagesESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir15MirCursorImagesESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir17SessionAuthorizerESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir17SessionAuthorizerESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir17SessionAuthorizerESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir17SessionAuthorizerESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir20OpenGLContextFactory4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir20OpenGLContextFactory4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (arch=armel riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir20OpenGLContextFactory4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir20OpenGLContextFactory4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir20PromptSessionManagerESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir20PromptSessionManagerESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (arch=armel riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir20PromptSessionManagerESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir20PromptSessionManagerESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++ (arch=armel)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir21PromptSessionListenerESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.8.0~git20230109.671f617
++ (arch=!armel)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir21PromptSessionListenerESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.8.0~git20230109.671f617
++ (arch=armel)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir22MirInputDeviceObserverESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.8.0~git20230109.671f617
++ (arch=!armel)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir22MirInputDeviceObserverESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.8.0~git20230109.671f617
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir26DisplayConfigurationPolicyESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir26DisplayConfigurationPolicyESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir26DisplayConfigurationPolicyESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir26DisplayConfigurationPolicyESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir29WindowManagementPolicyPrivateESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir29WindowManagementPolicyPrivateESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir29WindowManagementPolicyPrivateESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir29WindowManagementPolicyPrivateESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir34BasicSetDisplayConfigurationPolicy4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir34BasicSetDisplayConfigurationPolicy4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir34BasicSetDisplayConfigurationPolicy4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir34BasicSetDisplayConfigurationPolicy4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir35BasicSetDisplayConfigurationStorage4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir35BasicSetDisplayConfigurationStorage4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir35BasicSetDisplayConfigurationStorage4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTISt23_Sp_counted_ptr_inplaceIN5qtmir35BasicSetDisplayConfigurationStorage4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++ (arch=armel)_ZTISt23_Sp_counted_ptr_inplaceIN6miroil20PromptSessionManagerESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.8.0~git20230109.671f617
++ (arch=!armel)_ZTISt23_Sp_counted_ptr_inplaceIN6miroil20PromptSessionManagerESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.8.0~git20230109.671f617
++ (arch=armel)_ZTISt23_Sp_counted_ptr_inplaceIN6miroil22DisplayListenerWrapperESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.8.0~git20230109.671f617
++ (arch=!armel)_ZTISt23_Sp_counted_ptr_inplaceIN6miroil22DisplayListenerWrapperESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.8.0~git20230109.671f617
++ (arch=armel)_ZTISt23_Sp_counted_ptr_inplaceIN6miroil37DisplayConfigurationControllerWrapperESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.8.0~git20230109.671f617
++ (arch=!armel)_ZTISt23_Sp_counted_ptr_inplaceIN6miroil37DisplayConfigurationControllerWrapperESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.8.0~git20230109.671f617
++ _ZTIZN5miral24SetApplicationAuthorizerI24WrappedSessionAuthorizerEC4IJFSt10shared_ptrIN5qtmir17SessionAuthorizerEEvEEEEDpRKT_EUlvE_@Base 0.6.1
++ _ZTIZN5miral24SetApplicationAuthorizerI24WrappedSessionAuthorizerEC4IJSt8functionIFSt10shared_ptrIN5qtmir17SessionAuthorizerEEvEEEEEDpRKT_EUlvE_@Base 0.6.1
++ _ZTIZN5miral28set_window_management_policyI29WrappedWindowManagementPolicyJN5qtmir19WindowModelNotifierENS2_16WindowControllerENS2_19WorkspaceControllerENS2_11AppNotifierEKSt10shared_ptrI12ScreensModelES7_I13QtEventFeederESt8functionIFS7_INS2_22WindowManagementPolicyEERKNS_18WindowManagerToolsES7_INS2_29WindowManagementPolicyPrivateEEEEEEENS_25SetWindowManagementPolicyEDpRT0_EUlSI_E_@Base 0.6.1
++ _ZTS10QMirServer@Base 0.6.1
++ _ZTS11MirGLConfig@Base 0.6.1
++ _ZTS12QtCompositor@Base 0.6.1
++ _ZTS12ScreensModel@Base 0.6.1
++ _ZTS13QtEventFeeder@Base 0.6.1
++ _ZTS13ScreenAdaptor@Base 0.6.1
++ _ZTS14PlatformScreen@Base 0.6.1
++ _ZTS15MirServerThread@Base 0.6.1
++ _ZTS15NativeInterface@Base 0.6.1
++ _ZTS15SurfaceObserver@Base 0.6.1
++ _ZTS16MirOpenGLContext@Base 0.6.1
++ _ZTS16OffscreenSurface@Base 0.6.1
++ _ZTS17MirPlatformCursor@Base 0.6.1
++ _ZTS17OrientationSensor@Base 0.6.1
++ _ZTS17ScreensController@Base 0.6.1
++ _ZTS18ScreenAdaptorModel@Base 0.6.1
++ _ZTS20ScreenPlatformWindow@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTS21PromptSessionListener@Base 0.6.1
++ _ZTS23OrientationReadingEvent@Base 0.6.1
++ _ZTS24MirMousePointerInterface@Base 0.6.1
++ _ZTS24WrappedSessionAuthorizer@Base 0.6.1
++ _ZTS29WrappedWindowManagementPolicy@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTS31MirDisplayConfigurationObserver@Base 0.6.1
++ _ZTS3Mir@Base 0.6.1
++ _ZTS8Services@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTSFSt10shared_ptrIN5miral26DisplayConfigurationPolicyEEvE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTSFSt10shared_ptrIN5miral27DisplayConfigurationStorageEEvE@Base 0.6.1
++ _ZTSFSt10shared_ptrIN5qtmir17SessionAuthorizerEEvE@Base 0.6.1
++ _ZTSFSt10shared_ptrIN5qtmir22WindowManagementPolicyEERKN5miral18WindowManagerToolsES_INS0_29WindowManagementPolicyPrivateEEE@Base 0.6.1
++ _ZTSFSt10shared_ptrIN6miroil27DisplayConfigurationStorageEEvE@Base 0.8.0~git20230109.671f617
++ _ZTSN13QtEventFeeder23QtWindowSystemInterfaceE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTSN3mir10compositor10CompositorE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTSN3mir5input12CursorImagesE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTSN3mir5input19InputDeviceObserverE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTSN3mir5scene21PromptSessionListenerE@Base 0.6.1
++ _ZTSN3mir8graphics11CursorImageE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTSN3mir8graphics13NativeDisplayE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTSN3mir8graphics16NativeBufferBaseE@Base 0.6.1
++ _ZTSN3mir8graphics19NativeDisplayBufferE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTSN3mir8graphics26DisplayConfigurationPolicyE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTSN3mir8graphics28DisplayConfigurationObserverE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTSN3mir8graphics6CursorE@Base 0.6.1
++ _ZTSN3mir8graphics8GLConfigE@Base 0.6.1
++ _ZTSN3mir8renderer2gl12RenderTargetE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTSN3mir8renderer2gl13ContextSourceE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTSN3mir8renderer2gl13TextureSourceE@Base 0.6.1
++ _ZTSN5miral13SetTerminatorE@Base 0.6.1
++ _ZTSN5miral15AddInitCallbackE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTSN5miral15GLTextureBufferE@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# _ZTSN5miral20PersistDisplayConfig4SelfE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTSN5miral20PersistDisplayConfigE@Base 0.6.1
++ _ZTSN5miral21ApplicationAuthorizerE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTSN5miral21GLTextureSourceBufferE@Base 0.7.0
++ _ZTSN5miral24SetApplicationAuthorizerI24WrappedSessionAuthorizerEE@Base 0.6.1
++ _ZTSN5miral25SetWindowManagementPolicyE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTSN5miral26DisplayConfigurationPolicyE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTSN5miral27DisplayConfigurationStorageE@Base 0.6.1
++ _ZTSN5miral29BasicSetApplicationAuthorizerE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTSN5miral8GLBufferE@Base 0.7.0
++ _ZTSN5qtmir10ScreenModeE@Base 0.6.1
++ _ZTSN5qtmir11AppNotifierE@Base 0.6.1
++ _ZTSN5qtmir11NamedCursorE@Base 0.6.1
++ _ZTSN5qtmir12EventBuilderE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTSN5qtmir14MirServerHooksE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTSN5qtmir15MirCursorImagesE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTSN5qtmir15SetQtCompositorE@Base 0.6.1
++ _ZTSN5qtmir16WindowControllerE@Base 0.6.1
++ _ZTSN5qtmir17SessionAuthorizerE@Base 0.6.1
++ _ZTSN5qtmir19WindowModelNotifierE@Base 0.6.1
++ _ZTSN5qtmir19WorkspaceControllerE@Base 0.6.1
++ _ZTSN5qtmir20MirServerApplicationE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTSN5qtmir20OpenGLContextFactoryE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTSN5qtmir20PromptSessionManagerE@Base 0.6.1
++ _ZTSN5qtmir21PromptSessionListenerE@Base 0.8.0~git20230109.671f617
++ _ZTSN5qtmir22MirInputDeviceObserverE@Base 0.6.1
++ _ZTSN5qtmir22WindowManagementPolicyE@Base 0.6.1
++ _ZTSN5qtmir22WindowNotifierObserverE@Base 0.6.1
++ _ZTSN5qtmir25WindowControllerInterfaceE@Base 0.6.1
++ _ZTSN5qtmir26DisplayConfigurationPolicyE@Base 0.6.1
++ _ZTSN5qtmir28WorkspaceControllerInterfaceE@Base 0.6.1
++ _ZTSN5qtmir3MirE@Base 0.6.1
++ _ZTSN5qtmir6Cursor7PrivateE@Base 0.6.1
++ _ZTSN5qtmir6CursorE@Base 0.6.1
++ _ZTSN5qtmir6ScreenE@Base 0.6.1
++ _ZTSN5qtmir7ScreensE@Base 0.6.1
++ _ZTSN6miroil13OpenGLContextE@Base 0.8.0~git20230109.671f617
++ _ZTSN6miroil13SetCompositorE@Base 0.8.0~git20230109.671f617
++ _ZTSN6miroil14MirServerHooksE@Base 0.8.0~git20230109.671f617
++ _ZTSN6miroil20PersistDisplayConfigE@Base 0.8.0~git20230109.671f617
++ _ZTSN6miroil27DisplayConfigurationStorageE@Base 0.8.0~git20230109.671f617
++ (arch=armel riscv64)_ZTSN9__gnu_cxx24__concurrence_lock_errorE@Base 0.7.0
++ (arch=armel riscv64)_ZTSN9__gnu_cxx26__concurrence_unlock_errorE@Base 0.7.0
++ (arch=armel riscv64)_ZTSN9__gnu_cxx7__mutexE@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# _ZTSPFSt10shared_ptrIN5miral26DisplayConfigurationPolicyEEvE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTSPFSt10shared_ptrIN5miral27DisplayConfigurationStorageEEvE@Base 0.6.1
++ _ZTSPFSt10shared_ptrIN5qtmir17SessionAuthorizerEEvE@Base 0.6.1
++ _ZTSPFSt10shared_ptrIN5qtmir22WindowManagementPolicyEERKN5miral18WindowManagerToolsES_INS0_29WindowManagementPolicyPrivateEEE@Base 0.6.1
++ _ZTSPFSt10shared_ptrIN6miroil27DisplayConfigurationStorageEEvE@Base 0.8.0~git20230109.671f617
++ (arch=armel riscv64)_ZTSSt11_Mutex_baseILN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTSSt11_Mutex_baseILN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ _ZTSSt14default_deleteIN3mir8graphics20DisplayConfigurationEE@Base 0.6.1
++ (arch=armel riscv64)_ZTSSt15_Sp_counted_ptrIP12ScreensModelLN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTSSt15_Sp_counted_ptrIP12ScreensModelLN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTSSt15_Sp_counted_ptrIP13QtEventFeederLN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTSSt15_Sp_counted_ptrIP13QtEventFeederLN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTSSt15_Sp_counted_ptrIPN5qtmir17SessionAuthorizer7PrivateELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTSSt15_Sp_counted_ptrIPN5qtmir17SessionAuthorizer7PrivateELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTSSt15_Sp_counted_ptrIPN5qtmir25BasicSetSessionAuthorizer7PrivateELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTSSt15_Sp_counted_ptrIPN5qtmir25BasicSetSessionAuthorizer7PrivateELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTSSt15_Sp_counted_ptrIPN5qtmir26DisplayConfigurationPolicy7PrivateELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTSSt15_Sp_counted_ptrIPN5qtmir26DisplayConfigurationPolicy7PrivateELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTSSt15_Sp_counted_ptrIPN5qtmir30BasicSetWindowManagementPolicy7PrivateELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTSSt15_Sp_counted_ptrIPN5qtmir30BasicSetWindowManagementPolicy7PrivateELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTSSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTSSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTSSt19_Sp_counted_deleterIPN3mir8graphics20DisplayConfigurationESt14default_deleteIS2_ESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTSSt19_Sp_counted_deleterIPN3mir8graphics20DisplayConfigurationESt14default_deleteIS2_ESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ _ZTSSt19_Sp_make_shared_tag@Base 0.6.1
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTSSt23_Sp_counted_ptr_inplaceI11MirGLConfigSaIS0_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTSSt23_Sp_counted_ptr_inplaceI11MirGLConfigSaIS0_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (arch=armel riscv64)_ZTSSt23_Sp_counted_ptr_inplaceI11MirGLConfigSaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZTSSt23_Sp_counted_ptr_inplaceI11MirGLConfigSaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++ (arch=armel)_ZTSSt23_Sp_counted_ptr_inplaceI12QtCompositorSaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.8.0~git20230109.671f617
++ (arch=!armel)_ZTSSt23_Sp_counted_ptr_inplaceI12QtCompositorSaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.8.0~git20230109.671f617
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTSSt23_Sp_counted_ptr_inplaceI17OrientationSensorSaIS0_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTSSt23_Sp_counted_ptr_inplaceI17OrientationSensorSaIS0_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTSSt23_Sp_counted_ptr_inplaceI17OrientationSensorSaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTSSt23_Sp_counted_ptr_inplaceI17OrientationSensorSaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTSSt23_Sp_counted_ptr_inplaceI24WrappedSessionAuthorizerSaIS0_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTSSt23_Sp_counted_ptr_inplaceI24WrappedSessionAuthorizerSaIS0_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTSSt23_Sp_counted_ptr_inplaceI24WrappedSessionAuthorizerSaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTSSt23_Sp_counted_ptr_inplaceI24WrappedSessionAuthorizerSaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5miral15GLTextureBufferESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5miral15GLTextureBufferESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=armel riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5miral15GLTextureBufferESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5miral15GLTextureBufferESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5miral20PersistDisplayConfig4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5miral20PersistDisplayConfig4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (arch=armel riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5miral20PersistDisplayConfig4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5miral20PersistDisplayConfig4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5miral21GLTextureSourceBufferESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5miral21GLTextureSourceBufferESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=armel riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5miral21GLTextureSourceBufferESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5miral21GLTextureSourceBufferESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir11NamedCursorESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir11NamedCursorESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir11NamedCursorESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir11NamedCursorESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir14MirServerHooks4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir14MirServerHooks4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (arch=armel riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir14MirServerHooks4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir14MirServerHooks4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir15ExtraWindowInfoESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir15ExtraWindowInfoESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir15ExtraWindowInfoESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir15ExtraWindowInfoESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir15MirCursorImagesESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir15MirCursorImagesESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (arch=armel riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir15MirCursorImagesESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir15MirCursorImagesESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir17SessionAuthorizerESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir17SessionAuthorizerESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir17SessionAuthorizerESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir17SessionAuthorizerESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir20OpenGLContextFactory4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir20OpenGLContextFactory4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (arch=armel riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir20OpenGLContextFactory4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir20OpenGLContextFactory4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir20PromptSessionManagerESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir20PromptSessionManagerESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (arch=armel riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir20PromptSessionManagerESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir20PromptSessionManagerESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++ (arch=armel)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir21PromptSessionListenerESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.8.0~git20230109.671f617
++ (arch=!armel)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir21PromptSessionListenerESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.8.0~git20230109.671f617
++ (arch=armel)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir22MirInputDeviceObserverESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.8.0~git20230109.671f617
++ (arch=!armel)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir22MirInputDeviceObserverESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.8.0~git20230109.671f617
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir26DisplayConfigurationPolicyESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir26DisplayConfigurationPolicyESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir26DisplayConfigurationPolicyESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir26DisplayConfigurationPolicyESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir29WindowManagementPolicyPrivateESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir29WindowManagementPolicyPrivateESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir29WindowManagementPolicyPrivateESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir29WindowManagementPolicyPrivateESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir34BasicSetDisplayConfigurationPolicy4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir34BasicSetDisplayConfigurationPolicy4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir34BasicSetDisplayConfigurationPolicy4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir34BasicSetDisplayConfigurationPolicy4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir35BasicSetDisplayConfigurationStorage4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir35BasicSetDisplayConfigurationStorage4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir35BasicSetDisplayConfigurationStorage4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTSSt23_Sp_counted_ptr_inplaceIN5qtmir35BasicSetDisplayConfigurationStorage4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++ (arch=armel)_ZTSSt23_Sp_counted_ptr_inplaceIN6miroil20PromptSessionManagerESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.8.0~git20230109.671f617
++ (arch=!armel)_ZTSSt23_Sp_counted_ptr_inplaceIN6miroil20PromptSessionManagerESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.8.0~git20230109.671f617
++ (arch=armel)_ZTSSt23_Sp_counted_ptr_inplaceIN6miroil22DisplayListenerWrapperESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.8.0~git20230109.671f617
++ (arch=!armel)_ZTSSt23_Sp_counted_ptr_inplaceIN6miroil22DisplayListenerWrapperESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.8.0~git20230109.671f617
++ (arch=armel)_ZTSSt23_Sp_counted_ptr_inplaceIN6miroil37DisplayConfigurationControllerWrapperESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.8.0~git20230109.671f617
++ (arch=!armel)_ZTSSt23_Sp_counted_ptr_inplaceIN6miroil37DisplayConfigurationControllerWrapperESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.8.0~git20230109.671f617
++ _ZTSZN5miral24SetApplicationAuthorizerI24WrappedSessionAuthorizerEC4IJFSt10shared_ptrIN5qtmir17SessionAuthorizerEEvEEEEDpRKT_EUlvE_@Base 0.6.1
++ _ZTSZN5miral24SetApplicationAuthorizerI24WrappedSessionAuthorizerEC4IJSt8functionIFSt10shared_ptrIN5qtmir17SessionAuthorizerEEvEEEEEDpRKT_EUlvE_@Base 0.6.1
++ _ZTSZN5miral28set_window_management_policyI29WrappedWindowManagementPolicyJN5qtmir19WindowModelNotifierENS2_16WindowControllerENS2_19WorkspaceControllerENS2_11AppNotifierEKSt10shared_ptrI12ScreensModelES7_I13QtEventFeederESt8functionIFS7_INS2_22WindowManagementPolicyEERKNS_18WindowManagerToolsES7_INS2_29WindowManagementPolicyPrivateEEEEEEENS_25SetWindowManagementPolicyEDpRT0_EUlSI_E_@Base 0.6.1
++ _ZTV10QMirServer@Base 0.6.1
++ _ZTV11MirGLConfig@Base 0.6.1
++ _ZTV12QtCompositor@Base 0.6.1
++ _ZTV12ScreensModel@Base 0.6.1
++ _ZTV13QtEventFeeder@Base 0.6.1
++ _ZTV13ScreenAdaptor@Base 0.6.1
++ _ZTV14PlatformScreen@Base 0.6.1
++ _ZTV15MirServerThread@Base 0.6.1
++ _ZTV15NativeInterface@Base 0.6.1
++ _ZTV15SurfaceObserver@Base 0.6.1
++ _ZTV16MirOpenGLContext@Base 0.6.1
++ _ZTV16OffscreenSurface@Base 0.6.1
++ _ZTV17OrientationSensor@Base 0.6.1
++ _ZTV17ScreensController@Base 0.6.1
++ _ZTV18ScreenAdaptorModel@Base 0.6.1
++ _ZTV20ScreenPlatformWindow@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTV21PromptSessionListener@Base 0.6.1
++ _ZTV23OrientationReadingEvent@Base 0.6.1
++ _ZTV24MirMousePointerInterface@Base 0.6.1
++ _ZTV24WrappedSessionAuthorizer@Base 0.6.1
++ _ZTV29WrappedWindowManagementPolicy@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTV31MirDisplayConfigurationObserver@Base 0.6.1
++ _ZTV3Mir@Base 0.6.1
++ _ZTV8Services@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTVN5miral15GLTextureBufferE@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# _ZTVN5miral20PersistDisplayConfig4SelfE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTVN5miral21GLTextureSourceBufferE@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# _ZTVN5miral26DisplayConfigurationPolicyE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTVN5miral8GLBufferE@Base 0.7.0
++ _ZTVN5qtmir10ScreenModeE@Base 0.6.1
++ _ZTVN5qtmir11AppNotifierE@Base 0.6.1
++ _ZTVN5qtmir11NamedCursorE@Base 0.6.1
++ _ZTVN5qtmir12EventBuilderE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTVN5qtmir15MirCursorImagesE@Base 0.6.1
++ _ZTVN5qtmir16WindowControllerE@Base 0.6.1
++ _ZTVN5qtmir17SessionAuthorizerE@Base 0.6.1
++ _ZTVN5qtmir19WindowModelNotifierE@Base 0.6.1
++ _ZTVN5qtmir19WorkspaceControllerE@Base 0.6.1
++ _ZTVN5qtmir20MirServerApplicationE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# _ZTVN5qtmir20PromptSessionManagerE@Base 0.6.1
++ _ZTVN5qtmir21PromptSessionListenerE@Base 0.8.0~git20230109.671f617
++ _ZTVN5qtmir22MirInputDeviceObserverE@Base 0.6.1
++ _ZTVN5qtmir22WindowManagementPolicyE@Base 0.6.1
++ _ZTVN5qtmir22WindowNotifierObserverE@Base 0.6.1
++ _ZTVN5qtmir26DisplayConfigurationPolicyE@Base 0.6.1
++ _ZTVN5qtmir3MirE@Base 0.6.1
++ _ZTVN5qtmir6Cursor7PrivateE@Base 0.6.1
++ _ZTVN5qtmir6CursorE@Base 0.6.1
++ _ZTVN5qtmir6ScreenE@Base 0.6.1
++ _ZTVN5qtmir7ScreensE@Base 0.6.1
++ (arch=armel riscv64)_ZTVN9__gnu_cxx24__concurrence_lock_errorE@Base 0.7.0
++ (arch=armel riscv64)_ZTVN9__gnu_cxx26__concurrence_unlock_errorE@Base 0.7.0
++ (arch=armel riscv64)_ZTVSt15_Sp_counted_ptrIP12ScreensModelLN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTVSt15_Sp_counted_ptrIP12ScreensModelLN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTVSt15_Sp_counted_ptrIP13QtEventFeederLN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTVSt15_Sp_counted_ptrIP13QtEventFeederLN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTVSt15_Sp_counted_ptrIPN5qtmir17SessionAuthorizer7PrivateELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTVSt15_Sp_counted_ptrIPN5qtmir17SessionAuthorizer7PrivateELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTVSt15_Sp_counted_ptrIPN5qtmir25BasicSetSessionAuthorizer7PrivateELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTVSt15_Sp_counted_ptrIPN5qtmir25BasicSetSessionAuthorizer7PrivateELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTVSt15_Sp_counted_ptrIPN5qtmir26DisplayConfigurationPolicy7PrivateELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTVSt15_Sp_counted_ptrIPN5qtmir26DisplayConfigurationPolicy7PrivateELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTVSt15_Sp_counted_ptrIPN5qtmir30BasicSetWindowManagementPolicy7PrivateELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTVSt15_Sp_counted_ptrIPN5qtmir30BasicSetWindowManagementPolicy7PrivateELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTVSt19_Sp_counted_deleterIPN3mir8graphics20DisplayConfigurationESt14default_deleteIS2_ESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTVSt19_Sp_counted_deleterIPN3mir8graphics20DisplayConfigurationESt14default_deleteIS2_ESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTVSt23_Sp_counted_ptr_inplaceI11MirGLConfigSaIS0_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTVSt23_Sp_counted_ptr_inplaceI11MirGLConfigSaIS0_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (arch=armel riscv64)_ZTVSt23_Sp_counted_ptr_inplaceI11MirGLConfigSaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZTVSt23_Sp_counted_ptr_inplaceI11MirGLConfigSaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++ (arch=armel)_ZTVSt23_Sp_counted_ptr_inplaceI12QtCompositorSaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.8.0~git20230109.671f617
++ (arch=!armel)_ZTVSt23_Sp_counted_ptr_inplaceI12QtCompositorSaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.8.0~git20230109.671f617
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTVSt23_Sp_counted_ptr_inplaceI17OrientationSensorSaIS0_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTVSt23_Sp_counted_ptr_inplaceI17OrientationSensorSaIS0_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTVSt23_Sp_counted_ptr_inplaceI17OrientationSensorSaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTVSt23_Sp_counted_ptr_inplaceI17OrientationSensorSaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTVSt23_Sp_counted_ptr_inplaceI24WrappedSessionAuthorizerSaIS0_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTVSt23_Sp_counted_ptr_inplaceI24WrappedSessionAuthorizerSaIS0_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTVSt23_Sp_counted_ptr_inplaceI24WrappedSessionAuthorizerSaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTVSt23_Sp_counted_ptr_inplaceI24WrappedSessionAuthorizerSaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5miral15GLTextureBufferESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5miral15GLTextureBufferESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=armel riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5miral15GLTextureBufferESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5miral15GLTextureBufferESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5miral20PersistDisplayConfig4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5miral20PersistDisplayConfig4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (arch=armel riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5miral20PersistDisplayConfig4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5miral20PersistDisplayConfig4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5miral21GLTextureSourceBufferESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5miral21GLTextureSourceBufferESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=armel riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5miral21GLTextureSourceBufferESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5miral21GLTextureSourceBufferESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir11NamedCursorESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir11NamedCursorESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir11NamedCursorESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir11NamedCursorESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir14MirServerHooks4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir14MirServerHooks4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (arch=armel riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir14MirServerHooks4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir14MirServerHooks4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir15ExtraWindowInfoESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir15ExtraWindowInfoESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir15ExtraWindowInfoESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir15ExtraWindowInfoESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir15MirCursorImagesESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir15MirCursorImagesESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (arch=armel riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir15MirCursorImagesESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir15MirCursorImagesESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir17SessionAuthorizerESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir17SessionAuthorizerESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir17SessionAuthorizerESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir17SessionAuthorizerESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir20OpenGLContextFactory4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir20OpenGLContextFactory4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (arch=armel riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir20OpenGLContextFactory4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir20OpenGLContextFactory4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir20PromptSessionManagerESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir20PromptSessionManagerESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (arch=armel riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir20PromptSessionManagerESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.8.0~git20230109.671f617# (arch=!armel !riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir20PromptSessionManagerESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++ (arch=armel)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir21PromptSessionListenerESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.8.0~git20230109.671f617
++ (arch=!armel)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir21PromptSessionListenerESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.8.0~git20230109.671f617
++ (arch=armel)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir22MirInputDeviceObserverESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.8.0~git20230109.671f617
++ (arch=!armel)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir22MirInputDeviceObserverESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.8.0~git20230109.671f617
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir26DisplayConfigurationPolicyESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir26DisplayConfigurationPolicyESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir26DisplayConfigurationPolicyESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir26DisplayConfigurationPolicyESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir29WindowManagementPolicyPrivateESaIS1_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir29WindowManagementPolicyPrivateESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir29WindowManagementPolicyPrivateESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir29WindowManagementPolicyPrivateESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir34BasicSetDisplayConfigurationPolicy4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir34BasicSetDisplayConfigurationPolicy4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir34BasicSetDisplayConfigurationPolicy4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir34BasicSetDisplayConfigurationPolicy4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++#MISSING: 0.7.0# (arch=armel riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir35BasicSetDisplayConfigurationStorage4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++#MISSING: 0.7.0-3# (arch=!armel !riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir35BasicSetDisplayConfigurationStorage4SelfESaIS2_ELN9__gnu_cxx12_Lock_policyE2EE@Base 0.6.1
++ (arch=armel riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir35BasicSetDisplayConfigurationStorage4SelfESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.7.0
++ (arch=!armel !riscv64)_ZTVSt23_Sp_counted_ptr_inplaceIN5qtmir35BasicSetDisplayConfigurationStorage4SelfESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.7.0
++ (arch=armel)_ZTVSt23_Sp_counted_ptr_inplaceIN6miroil20PromptSessionManagerESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.8.0~git20230109.671f617
++ (arch=!armel)_ZTVSt23_Sp_counted_ptr_inplaceIN6miroil20PromptSessionManagerESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.8.0~git20230109.671f617
++ (arch=armel)_ZTVSt23_Sp_counted_ptr_inplaceIN6miroil22DisplayListenerWrapperESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.8.0~git20230109.671f617
++ (arch=!armel)_ZTVSt23_Sp_counted_ptr_inplaceIN6miroil22DisplayListenerWrapperESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.8.0~git20230109.671f617
++ (arch=armel)_ZTVSt23_Sp_counted_ptr_inplaceIN6miroil37DisplayConfigurationControllerWrapperESaIvELN9__gnu_cxx12_Lock_policyE1EE@Base 0.8.0~git20230109.671f617
++ (arch=!armel)_ZTVSt23_Sp_counted_ptr_inplaceIN6miroil37DisplayConfigurationControllerWrapperESaIvELN9__gnu_cxx12_Lock_policyE2EE@Base 0.8.0~git20230109.671f617
++ (optional=templinst)_ZZN11QMetaTypeIdIN3Mir5StateEE14qt_metatype_idEvE11metatype_id@Base 0.6.1
++ (optional=templinst)_ZZN11QMetaTypeIdIN5miral10WindowInfoEE14qt_metatype_idEvE11metatype_id@Base 0.6.1
++ (optional=templinst)_ZZN11QMetaTypeIdIN5miral15ApplicationInfoEE14qt_metatype_idEvE11metatype_id@Base 0.6.1
++ (optional=templinst)_ZZN11QMetaTypeIdIN5qtmir10FormFactorEE14qt_metatype_idEvE11metatype_id@Base 0.6.1
++ (optional=templinst)_ZZN11QMetaTypeIdIN5qtmir11OutputTypesEE14qt_metatype_idEvE11metatype_id@Base 0.6.1
++ (optional=templinst)_ZZN11QMetaTypeIdIN5qtmir13PromptSessionEE14qt_metatype_idEvE11metatype_id@Base 0.6.1
++ (optional=templinst)_ZZN11QMetaTypeIdIN5qtmir9NewWindowEE14qt_metatype_idEvE11metatype_id@Base 0.6.1
++ (optional=templinst)_ZZN11QMetaTypeIdIPN5qtmir19ScreenConfigurationEE14qt_metatype_idEvE11metatype_id@Base 0.6.1
++ (optional=templinst)_ZZN11QMetaTypeIdISt10shared_ptrIN3mir5scene7SessionEEE14qt_metatype_idEvE11metatype_id@Base 0.6.1
++ (optional=templinst)_ZZN11QMetaTypeIdISt6vectorIN5miral6WindowESaIS2_EEE14qt_metatype_idEvE11metatype_id@Base 0.6.1
++ (optional=templinst)_ZZN18QMetaTypeIdQObjectI6QFlagsIN2Qt11MouseButtonEELi16EE14qt_metatype_idEvE11metatype_id@Base 0.6.1
++ (optional=templinst)_ZZN18QMetaTypeIdQObjectI6QFlagsIN2Qt16KeyboardModifierEELi16EE14qt_metatype_idEvE11metatype_id@Base 0.6.1
++ (optional=templinst)_ZZN18QMetaTypeIdQObjectIP20ScreenPlatformWindowLi8EE14qt_metatype_idEvE11metatype_id@Base 0.6.1
++ (optional=templinst)_ZZN9QtPrivate15ConnectionTypesINS_4ListIJRKN5miral10WindowInfoE5QSizeEEELb1EE5typesEvE1t@Base 0.6.1
++ (optional=templinst)_ZZN9QtPrivate15ConnectionTypesINS_4ListIJRKN5miral10WindowInfoE6QPointEEELb1EE5typesEvE1t@Base 0.6.1
++ (optional=templinst)_ZZN9QtPrivate15ConnectionTypesINS_4ListIJRKN5miral10WindowInfoEEEELb1EE5typesEvE1t@Base 0.6.1
++ (optional=templinst)_ZZN9QtPrivate15ConnectionTypesINS_4ListIJRKN5miral10WindowInfoEN3Mir5StateEEEELb1EE5typesEvE1t@Base 0.6.1
++ (optional=templinst)_ZZN9QtPrivate15ConnectionTypesINS_4ListIJRKN5miral10WindowInfoEbEEELb1EE5typesEvE1t@Base 0.6.1
++ (optional=templinst)_ZZN9QtPrivate15ConnectionTypesINS_4ListIJRKN5qtmir9NewWindowEEEELb1EE5typesEvE1t@Base 0.6.1
++ _ZZNSt19_Sp_make_shared_tag5_S_tiEvE5__tag@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (optional=templinst|subst)_ZZNSt8__detail18__to_chars_10_implI{size_t}EEvPcjT_E8__digits@Base 0.6.1
++ _ZZZN5qtmir6Cursor7PrivateC4EvENKUlvE0_clEvE15qstring_literal@Base 0.6.1
++ _ZZZN5qtmir6Cursor7PrivateC4EvENKUlvE10_clEvE15qstring_literal@Base 0.6.1
++ _ZZZN5qtmir6Cursor7PrivateC4EvENKUlvE11_clEvE15qstring_literal@Base 0.6.1
++ _ZZZN5qtmir6Cursor7PrivateC4EvENKUlvE12_clEvE15qstring_literal@Base 0.6.1
++ _ZZZN5qtmir6Cursor7PrivateC4EvENKUlvE13_clEvE15qstring_literal@Base 0.6.1
++ _ZZZN5qtmir6Cursor7PrivateC4EvENKUlvE14_clEvE15qstring_literal@Base 0.6.1
++ _ZZZN5qtmir6Cursor7PrivateC4EvENKUlvE15_clEvE15qstring_literal@Base 0.6.1
++ _ZZZN5qtmir6Cursor7PrivateC4EvENKUlvE16_clEvE15qstring_literal@Base 0.6.1
++ _ZZZN5qtmir6Cursor7PrivateC4EvENKUlvE17_clEvE15qstring_literal@Base 0.6.1
++ _ZZZN5qtmir6Cursor7PrivateC4EvENKUlvE18_clEvE15qstring_literal@Base 0.6.1
++ _ZZZN5qtmir6Cursor7PrivateC4EvENKUlvE19_clEvE15qstring_literal@Base 0.6.1
++ _ZZZN5qtmir6Cursor7PrivateC4EvENKUlvE1_clEvE15qstring_literal@Base 0.6.1
++ _ZZZN5qtmir6Cursor7PrivateC4EvENKUlvE20_clEvE15qstring_literal@Base 0.6.1
++ _ZZZN5qtmir6Cursor7PrivateC4EvENKUlvE2_clEvE15qstring_literal@Base 0.6.1
++ _ZZZN5qtmir6Cursor7PrivateC4EvENKUlvE3_clEvE15qstring_literal@Base 0.6.1
++ _ZZZN5qtmir6Cursor7PrivateC4EvENKUlvE4_clEvE15qstring_literal@Base 0.6.1
++ _ZZZN5qtmir6Cursor7PrivateC4EvENKUlvE5_clEvE15qstring_literal@Base 0.6.1
++ _ZZZN5qtmir6Cursor7PrivateC4EvENKUlvE6_clEvE15qstring_literal@Base 0.6.1
++ _ZZZN5qtmir6Cursor7PrivateC4EvENKUlvE7_clEvE15qstring_literal@Base 0.6.1
++ _ZZZN5qtmir6Cursor7PrivateC4EvENKUlvE8_clEvE15qstring_literal@Base 0.6.1
++ _ZZZN5qtmir6Cursor7PrivateC4EvENKUlvE9_clEvE15qstring_literal@Base 0.6.1
++ _ZZZN5qtmir6Cursor7PrivateC4EvENKUlvE_clEvE15qstring_literal@Base 0.6.1
++ _ZZZNK5qtmir6Cursor7Private10cursorNameEvENKUlvE_clEvE15qstring_literal@Base 0.6.1
++#MISSING: 0.6.1-8# __start___tracepoints_ptrs@Base 0.6.1
++ __start_lttng_ust_tracepoints_ptrs@Base 0.6.1
++#MISSING: 0.6.1-8# __stop___tracepoints_ptrs@Base 0.6.1
++ __stop_lttng_ust_tracepoints_ptrs@Base 0.6.1
++#MISSING: 0.6.1-8# __tracepoint_provider_qtmirserver@Base 0.6.1
++#MISSING: 0.6.1-8# __tracepoint_qtmirserver___sessionAuthorizeEnd@Base 0.6.1
++#MISSING: 0.6.1-8# __tracepoint_qtmirserver___sessionAuthorizeStart@Base 0.6.1
++#MISSING: 0.6.1-8# __tracepoint_qtmirserver___starting@Base 0.6.1
++#MISSING: 0.6.1-8# __tracepoint_qtmirserver___stopping@Base 0.6.1
++#MISSING: 0.6.1-8# __tracepoint_qtmirserver___surfaceCreated@Base 0.6.1
++#MISSING: 0.6.1-8# __tracepoint_qtmirserver___surfaceDestroyed@Base 0.6.1
++#MISSING: 0.6.1-8# __tracepoint_qtmirserver___touchEventDispatch_end@Base 0.6.1
++#MISSING: 0.6.1-8# __tracepoint_qtmirserver___touchEventDispatch_start@Base 0.6.1
++ appStartTime@Base 0.6.1
++ getStartTime@Base 0.6.1
++ lttng_ust_tracepoint_provider_qtmirserver@Base 0.6.1
++ lttng_ust_tracepoint_qtmirserver___sessionAuthorizeEnd@Base 0.6.1
++ lttng_ust_tracepoint_qtmirserver___sessionAuthorizeStart@Base 0.6.1
++ lttng_ust_tracepoint_qtmirserver___starting@Base 0.6.1
++ lttng_ust_tracepoint_qtmirserver___stopping@Base 0.6.1
++ lttng_ust_tracepoint_qtmirserver___surfaceCreated@Base 0.6.1
++ lttng_ust_tracepoint_qtmirserver___surfaceDestroyed@Base 0.6.1
++ lttng_ust_tracepoint_qtmirserver___touchEventDispatch_end@Base 0.6.1
++ lttng_ust_tracepoint_qtmirserver___touchEventDispatch_start@Base 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (c++)"non-virtual thunk to MirDisplayConfigurationObserver::base_configuration_updated(std::shared_ptr<mir::graphics::DisplayConfiguration const> const&)@Base" 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (c++)"non-virtual thunk to MirDisplayConfigurationObserver::catastrophic_configuration_error(std::shared_ptr<mir::graphics::DisplayConfiguration const> const&, std::exception const&)@Base" 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (c++)"non-virtual thunk to MirDisplayConfigurationObserver::configuration_applied(std::shared_ptr<mir::graphics::DisplayConfiguration const> const&)@Base" 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (c++)"non-virtual thunk to MirDisplayConfigurationObserver::configuration_failed(std::shared_ptr<mir::graphics::DisplayConfiguration const> const&, std::exception const&)@Base" 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (c++)"non-virtual thunk to MirDisplayConfigurationObserver::configuration_updated_for_session(std::shared_ptr<mir::scene::Session> const&, std::shared_ptr<mir::graphics::DisplayConfiguration const> const&)@Base" 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (c++)"non-virtual thunk to MirDisplayConfigurationObserver::initial_configuration(std::shared_ptr<mir::graphics::DisplayConfiguration const> const&)@Base" 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (c++)"non-virtual thunk to MirDisplayConfigurationObserver::session_configuration_applied(std::shared_ptr<mir::scene::Session> const&, std::shared_ptr<mir::graphics::DisplayConfiguration> const&)@Base" 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (c++)"non-virtual thunk to MirDisplayConfigurationObserver::session_configuration_removed(std::shared_ptr<mir::scene::Session> const&)@Base" 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (c++)"non-virtual thunk to MirDisplayConfigurationObserver::~MirDisplayConfigurationObserver()@Base" 0.6.1
++ (c++)"non-virtual thunk to MirOpenGLContext::doneCurrent()@Base" 0.6.1
++ (c++)"non-virtual thunk to MirOpenGLContext::format() const@Base" 0.6.1
++ (c++)"non-virtual thunk to MirOpenGLContext::getProcAddress(char const*)@Base" 0.6.1
++ (c++)"non-virtual thunk to MirOpenGLContext::isSharing() const@Base" 0.6.1
++ (c++)"non-virtual thunk to MirOpenGLContext::makeCurrent(QPlatformSurface*)@Base" 0.6.1
++ (c++)"non-virtual thunk to MirOpenGLContext::swapBuffers(QPlatformSurface*)@Base" 0.6.1
++ (c++)"non-virtual thunk to MirOpenGLContext::~MirOpenGLContext()@Base" 0.6.1
++ (c++)"non-virtual thunk to PlatformScreen::cursor() const@Base" 0.6.1
++ (c++)"non-virtual thunk to PlatformScreen::depth() const@Base" 0.6.1
++ (c++)"non-virtual thunk to PlatformScreen::devicePixelRatio() const@Base" 0.6.1
++ (c++)"non-virtual thunk to PlatformScreen::format() const@Base" 0.6.1
++ (c++)"non-virtual thunk to PlatformScreen::geometry() const@Base" 0.6.1
++ (c++)"non-virtual thunk to PlatformScreen::name() const@Base" 0.6.1
++ (c++)"non-virtual thunk to PlatformScreen::nativeOrientation() const@Base" 0.6.1
++ (c++)"non-virtual thunk to PlatformScreen::orientation() const@Base" 0.6.1
++ (c++)"non-virtual thunk to PlatformScreen::physicalSize() const@Base" 0.6.1
++ (c++)"non-virtual thunk to PlatformScreen::refreshRate() const@Base" 0.6.1
++ (c++)"non-virtual thunk to PlatformScreen::topLevelAt(QPoint const&) const@Base" 0.6.1
++ (c++)"non-virtual thunk to PlatformScreen::~PlatformScreen()@Base" 0.6.1
++ (c++)"non-virtual thunk to QtCompositor::start()@Base" 0.8.0~git20230109.671f617
++ (c++)"non-virtual thunk to QtCompositor::stop()@Base" 0.8.0~git20230109.671f617
++ (c++)"non-virtual thunk to QtCompositor::~QtCompositor()@Base" 0.8.0~git20230109.671f617
++ (c++)"non-virtual thunk to ScreenPlatformWindow::isActive() const@Base" 0.6.1
++ (c++)"non-virtual thunk to ScreenPlatformWindow::isExposed() const@Base" 0.6.1
++ (c++)"non-virtual thunk to ScreenPlatformWindow::requestActivateWindow()@Base" 0.6.1
++ (c++)"non-virtual thunk to ScreenPlatformWindow::setGeometry(QRect const&)@Base" 0.6.1
++ (c++)"non-virtual thunk to ScreenPlatformWindow::setVisible(bool)@Base" 0.6.1
++ (c++)"non-virtual thunk to ScreenPlatformWindow::winId() const@Base" 0.6.1
++ (c++)"non-virtual thunk to ScreenPlatformWindow::~ScreenPlatformWindow()@Base" 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (c++)"non-virtual thunk to ScreensModel::~ScreensModel()@Base" 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (c++)"non-virtual thunk to miral::PersistDisplayConfig::Self::base_configuration_updated(std::shared_ptr<mir::graphics::DisplayConfiguration const> const&)@Base" 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (c++)"non-virtual thunk to miral::PersistDisplayConfig::Self::session_configuration_applied(std::shared_ptr<mir::scene::Session> const&, std::shared_ptr<mir::graphics::DisplayConfiguration> const&)@Base" 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (c++)"non-virtual thunk to miral::PersistDisplayConfig::Self::session_configuration_removed(std::shared_ptr<mir::scene::Session> const&)@Base" 0.6.1
++#MISSING: 0.8.0~git20230109.671f617# (c++)"non-virtual thunk to miral::PersistDisplayConfig::Self::~Self()@Base" 0.6.1
++ (c++)"non-virtual thunk to qtmir::MirInputDeviceObserver::device_added(miroil::InputDevice)@Base" 0.8.0~git20230109.671f617
++ (c++)"non-virtual thunk to qtmir::MirInputDeviceObserver::device_removed(miroil::InputDevice)@Base" 0.8.0~git20230109.671f617
++ (c++)"non-virtual thunk to qtmir::MirInputDeviceObserver::~MirInputDeviceObserver()@Base" 0.8.0~git20230109.671f617
++ (c++)"non-virtual thunk to qtmir::PromptSessionListener::prompt_provider_added(mir::scene::PromptSession const&, std::shared_ptr<mir::scene::Session> const&)@Base" 0.8.0~git20230109.671f617
++ (c++)"non-virtual thunk to qtmir::PromptSessionListener::prompt_provider_removed(mir::scene::PromptSession const&, std::shared_ptr<mir::scene::Session> const&)@Base" 0.8.0~git20230109.671f617
++ (c++)"non-virtual thunk to qtmir::PromptSessionListener::resuming(std::shared_ptr<mir::scene::PromptSession> const&)@Base" 0.8.0~git20230109.671f617
++ (c++)"non-virtual thunk to qtmir::PromptSessionListener::starting(std::shared_ptr<mir::scene::PromptSession> const&)@Base" 0.8.0~git20230109.671f617
++ (c++)"non-virtual thunk to qtmir::PromptSessionListener::stopping(std::shared_ptr<mir::scene::PromptSession> const&)@Base" 0.8.0~git20230109.671f617
++ (c++)"non-virtual thunk to qtmir::PromptSessionListener::suspending(std::shared_ptr<mir::scene::PromptSession> const&)@Base" 0.8.0~git20230109.671f617
++ (c++)"non-virtual thunk to qtmir::PromptSessionListener::~PromptSessionListener()@Base" 0.8.0~git20230109.671f617
++ resetStartTime@Base 0.6.1
++ weakScreenModel@Base 0.6.1
+diff --git a/debian/qml-module-qtmir.install b/debian/qml-module-qtmir.install
+index edbef82e..dc7a46e3 100644
+--- a/debian/qml-module-qtmir.install
++++ b/debian/qml-module-qtmir.install
+@@ -1,4 +1,4 @@
+ usr/lib/*/qt5/qml/*
+ usr/share/glib-2.0/schemas
+-usr/share/applications
+-usr/share/icons/hicolor/256x256/apps
++usr/share/applications/xwayland.qtmir.desktop
++usr/share/icons/hicolor/256x256/apps/xwayland.qtmir.png
+diff --git a/debian/qtmir-tests.install b/debian/qtmir-tests.install
+index e050f651..38088e4f 100644
+--- a/debian/qtmir-tests.install
++++ b/debian/qtmir-tests.install
+@@ -1,6 +1,5 @@
+ usr/bin/qtmir-demo-client
+ usr/bin/qtmir-demo-shell
+ usr/share/applications/qtmir-demo-client.desktop
+-usr/share/qtmir/benchmarks/*
+ usr/share/qtmir/qtmir-demo-client/*
+ usr/share/qtmir/qtmir-demo-shell/*
+diff --git a/debian/rules b/debian/rules
+index b9811ae7..d723a112 100755
+--- a/debian/rules
++++ b/debian/rules
+@@ -1,7 +1,8 @@
+ #!/usr/bin/make -f
+ # -*- makefile -*-
+
+-export DPKG_GENSYMBOLS_CHECK_LEVEL=4
++# Uncomment this to be more picky with non-updated .symbols files
++#export DPKG_GENSYMBOLS_CHECK_LEVEL=4
+
+ include /usr/share/dpkg/default.mk
+
+@@ -12,15 +13,16 @@ export DEB_BUILD_MAINT_OPTIONS = hardening=+all
+ DEB_HOST_ARCH ?= $(shell dpkg-architecture -qDEB_HOST_ARCH)
+
+ %:
+- dh $@
++ dh $@ --with pkgkde_symbolshelper
+
+ override_dh_missing:
+ dh_missing --fail-missing
+
+-FLAGS := -DWITH_CONTENTHUB=ON -DWerror=ON
++FLAGS := -DWITH_CONTENTHUB=ON -DWerror=ON -DWITH_MIR2=on
+ # Explicitly disable building with Valgrind on architectures without it.
+-valgrind_architectures := amd64 arm64 armhf i386 mips64el mipsel ppc64el s390x powerpc ppc64 x32
+-ifeq ($(filter $(DEB_HOST_ARCH), $(valgrind_architectures)),)
++# If valgrind is available or not gets decided via the valgrind-if-available
++# virtual package.
++ifeq (, $(shell command -v valgrind))
+ FLAGS += -DWITH_VALGRIND=OFF
+ endif
+
+@@ -32,3 +34,6 @@ override_dh_install:
+ -rm -f debian/tmp/usr/lib/libgmock*.a debian/tmp/usr/lib/libgtest*.a
+ -rm -rf debian/tmp/usr/include/gmock debian/tmp/usr/include/gtest
+ dh_install
++
++get-orig-source:
++ uscan --noconf --force-download --rename --download-current-version --destdir=..
+diff --git a/debian/watch b/debian/watch
+new file mode 100644
+index 00000000..0d87b500
+--- /dev/null
++++ b/debian/watch
+@@ -0,0 +1,4 @@
++version=4
++opts="mode=git, pgpmode=none, pretty=0.8.0~git%cd.%h" \
++https://gitlab.com/ubports/development/core/qtmir.git \
++heads/ubports/focal_-_mir2.0 debian uupdate
+diff --git a/demos/qtmir-demo-shell/CMakeLists.txt b/demos/qtmir-demo-shell/CMakeLists.txt
+index 2a95365d..7f0e3839 100644
+--- a/demos/qtmir-demo-shell/CMakeLists.txt
++++ b/demos/qtmir-demo-shell/CMakeLists.txt
+@@ -6,6 +6,7 @@ include_directories(
+ ${CMAKE_SOURCE_DIR}/include
+
+ ${MIRSERVER_INCLUDE_DIRS}
++ ${MIROIL_INCLUDE_DIRS}
+ ${MIRAL_INCLUDE_DIRS}
+
+ ${Qt5Gui_PRIVATE_INCLUDE_DIRS}
+diff --git a/demos/qtmir-demo-shell/Shell.qml b/demos/qtmir-demo-shell/Shell.qml
+index d0777379..066c0a3b 100644
+--- a/demos/qtmir-demo-shell/Shell.qml
++++ b/demos/qtmir-demo-shell/Shell.qml
+@@ -62,6 +62,7 @@ FocusScope {
+ height: surface.size.height
+ focus: surface.focused
+ visible: surface.visible
++ fillMode: MirSurfaceItem.PadOrCrop
+
+ Rectangle {
+ anchors { top: parent.bottom; right: parent.right }
+@@ -104,8 +105,8 @@ Resize window: Ctrl+Right click"
+ color: "black"
+ width: 6
+ height: 10
+- x: PointerPosition.x - window.screen.position.x
+- y: PointerPosition.y - window.screen.position.y
++ x: PointerPosition.x// - window.screen.position.x
++ y: PointerPosition.y// - window.screen.position.y
+ }
+
+ MouseArea {
+diff --git a/demos/qtmir-demo-shell/main.cpp b/demos/qtmir-demo-shell/main.cpp
+index 828a630e..800d385f 100644
+--- a/demos/qtmir-demo-shell/main.cpp
++++ b/demos/qtmir-demo-shell/main.cpp
+@@ -33,10 +33,11 @@
+ #include <qtmir/sessionauthorizer.h>
+ #include <qtmir/windowmanagementpolicy.h>
+ #include <qtmir/displayconfigurationstorage.h>
+-#include <qtmir/miral/edid.h>
+
++#include <miroil/edid.h>
+
+-inline QString stringFromEdid(const miral::Edid& edid)
++
++inline QString stringFromEdid(const miroil::Edid& edid)
+ {
+ QString str;
+ str += QString::fromStdString(edid.vendor);
+@@ -75,12 +76,12 @@ public:
+ }
+ };
+
+-struct DemoDisplayConfigurationStorage : miral::DisplayConfigurationStorage
++struct DemoDisplayConfigurationStorage : miroil::DisplayConfigurationStorage
+ {
+- void save(const miral::DisplayId& displayId, const miral::DisplayConfigurationOptions& options) override
++ void save(const miroil::DisplayId& displayId, const miroil::DisplayConfigurationOptions& options) override
+ {
+ QFile f(stringFromEdid(displayId.edid) + ".edid");
+- qDebug() << "OVERRIDE miral::DisplayConfigurationStorage::save" << f.fileName();
++ qDebug() << "OVERRIDE miroil::DisplayConfigurationStorage::save" << f.fileName();
+
+ QJsonObject json;
+ if (options.used.is_set()) json.insert("used", options.used.value());
+@@ -105,10 +106,10 @@ struct DemoDisplayConfigurationStorage : miral::DisplayConfigurationStorage
+ }
+ }
+
+- bool load(const miral::DisplayId& displayId, miral::DisplayConfigurationOptions& options) const override
++ bool load(const miroil::DisplayId& displayId, miroil::DisplayConfigurationOptions& options) const override
+ {
+ QFile f(stringFromEdid(displayId.edid) + ".edid");
+- qDebug() << "OVERRIDE miral::DisplayConfigurationStorage::load" << f.fileName();
++ qDebug() << "OVERRIDE miroil::DisplayConfigurationStorage::load" << f.fileName();
+
+ if (f.open(QIODevice::ReadOnly)) {
+ QByteArray saveData = f.readAll();
+@@ -124,7 +125,7 @@ struct DemoDisplayConfigurationStorage : miral::DisplayConfigurationStorage
+ QString sz(jsonMode["size"].toString());
+ QStringList geo = sz.split("x", QString::SkipEmptyParts);
+ if (geo.count() == 2) {
+- miral::DisplayConfigurationOptions::DisplayMode mode;
++ miroil::DisplayConfigurationOptions::DisplayMode mode;
+ mode.size = mir::geometry::Size(geo[0].toInt(), geo[1].toInt());
+ mode.refresh_rate = jsonMode["refresh_rate"].toDouble();
+ options.mode = mode;
+diff --git a/demos/qtmir-demo-shell/qml-demo-shell.qml b/demos/qtmir-demo-shell/qml-demo-shell.qml
+index ac175cb0..7ed32d45 100644
+--- a/demos/qtmir-demo-shell/qml-demo-shell.qml
++++ b/demos/qtmir-demo-shell/qml-demo-shell.qml
+@@ -1,4 +1,6 @@
+ import QtQuick 2.5
++import QtQml.Models 2.15
++import QtQml 2.15
+ import QtMir.DemoShell 0.1
+
+ Instantiator {
+diff --git a/include/qtmir/miral/display_configuration_policy.h b/include/miroil/display_configuration_policy.h
+similarity index 79%
+rename from include/qtmir/miral/display_configuration_policy.h
+rename to include/miroil/display_configuration_policy.h
+index 9c277135..c6d2b70e 100644
+--- a/include/qtmir/miral/display_configuration_policy.h
++++ b/include/miroil/display_configuration_policy.h
+@@ -1,5 +1,5 @@
+ /*
+- * Copyright © 2016 Canonical Ltd.
++ * Copyright © 2016-2020 Canonical Ltd.
+ *
+ * This program is free software: you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 3,
+@@ -16,12 +16,12 @@
+ * Authored by: Nick Dedekind <nick.dedekind@canonical.com>
+ */
+
+-#ifndef MIRAL_DISPLAY_CONDIFIGURATION_POLICY_H
+-#define MIRAL_DISPLAY_CONDIFIGURATION_POLICY_H
++#ifndef MIROIL_DISPLAY_CONDIFIGURATION_POLICY_H
++#define MIROIL_DISPLAY_CONDIFIGURATION_POLICY_H
+
+ namespace mir { namespace graphics { class DisplayConfiguration; } }
+
+-namespace miral
++namespace miroil
+ {
+
+ class DisplayConfigurationPolicy
+@@ -29,14 +29,14 @@ class DisplayConfigurationPolicy
+ public:
+ DisplayConfigurationPolicy();
+
+- virtual ~DisplayConfigurationPolicy() = default;
++ virtual ~DisplayConfigurationPolicy();
+ DisplayConfigurationPolicy(DisplayConfigurationPolicy const&) = delete;
+ DisplayConfigurationPolicy& operator=(DisplayConfigurationPolicy const&) = delete;
+
+ virtual void apply_to(mir::graphics::DisplayConfiguration& conf) = 0;
+ };
+
+-} // namespace miral
++} // namespace miroil
+
+
+-#endif // MIRAL_DISPLAY_CONDIFIGURATION_POLICY_H
++#endif // MIROIL_DISPLAY_CONDIFIGURATION_POLICY_H
+diff --git a/include/qtmir/miral/display_configuration_storage.h b/include/miroil/display_configuration_storage.h
+similarity index 79%
+rename from include/qtmir/miral/display_configuration_storage.h
+rename to include/miroil/display_configuration_storage.h
+index 8090877b..f66e3d00 100644
+--- a/include/qtmir/miral/display_configuration_storage.h
++++ b/include/miroil/display_configuration_storage.h
+@@ -1,5 +1,5 @@
+ /*
+- * Copyright © 2016-2017 Canonical Ltd.
++ * Copyright © 2016-2020 Canonical Ltd.
+ *
+ * This program is free software: you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 3,
+@@ -16,23 +16,24 @@
+ * Authored by: Nick Dedekind <nick.dedekind@canonical.com>
+ */
+
+-#ifndef MIRAL_DISPLAY_CONFIGURATION_STORAGE_H
+-#define MIRAL_DISPLAY_CONFIGURATION_STORAGE_H
++#ifndef MIROIL_DISPLAY_CONFIGURATION_STORAGE_H
++#define MIROIL_DISPLAY_CONFIGURATION_STORAGE_H
++
++#include <miroil/display_id.h>
+
+ #include <mir/geometry/rectangle.h>
+ #include <mir/optional_value.h>
+ #include <mir_toolkit/common.h>
+
+-#include "display_id.h"
++#include <sys/types.h>
+
+-// Prototyping namespace for later incorporation in MirAL
+-namespace miral
++namespace miroil
+ {
+
+ struct DisplayConfigurationOptions
+ {
+ mir::optional_value<bool> used;
+- mir::optional_value<unsigned int> clone_output_index;
++ mir::optional_value<uint> clone_output_index;
+ struct DisplayMode
+ {
+ mir::geometry::Size size;
+@@ -53,6 +54,6 @@ public:
+ virtual bool load(const DisplayId&, DisplayConfigurationOptions&) const = 0;
+ };
+
+-} // namespace miral
++} // namespace miroil
+
+-#endif // MIRAL_DISPLAY_CONFIGURATION_STORAGE_H
++#endif // MIROIL_DISPLAY_CONFIGURATION_STORAGE_H
+diff --git a/include/qtmir/miral/display_id.h b/include/miroil/display_id.h
+similarity index 66%
+rename from include/qtmir/miral/display_id.h
+rename to include/miroil/display_id.h
+index a65d59b4..50b0c933 100644
+--- a/include/qtmir/miral/display_id.h
++++ b/include/miroil/display_id.h
+@@ -1,14 +1,13 @@
+-#ifndef MIRAL_DISPLAY_ID_H
+-#define MIRAL_DISPLAY_ID_H
++#ifndef MIROIL_DISPLAY_ID_H
++#define MIROIL_DISPLAY_ID_H
+
+ #include <mir/int_wrapper.h>
+
+-#include "edid.h"
++#include <miroil/edid.h>
+
+ namespace mir { namespace graphics { namespace detail { struct GraphicsConfOutputIdTag; } } }
+
+-// Prototyping namespace for later incorporation in MirAL
+-namespace miral
++namespace miroil
+ {
+ using OutputId = mir::IntWrapper<mir::graphics::detail::GraphicsConfOutputIdTag>;
+
+@@ -20,4 +19,4 @@ struct DisplayId
+
+ } // namespace miral
+
+-#endif // MIRAL_DISPLAY_ID_H
++#endif // MIROIL_DISPLAY_ID_H
+diff --git a/include/qtmir/miral/edid.h b/include/miroil/edid.h
+similarity index 89%
+rename from include/qtmir/miral/edid.h
+rename to include/miroil/edid.h
+index d8f4e369..ec5996e5 100644
+--- a/include/qtmir/miral/edid.h
++++ b/include/miroil/edid.h
+@@ -1,5 +1,5 @@
+ /*
+- * Copyright © 2016 Canonical Ltd.
++ * Copyright © 2016-2020 Canonical Ltd.
+ *
+ * This program is free software: you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 3,
+@@ -16,15 +16,14 @@
+ * Authored by: Nick Dedekind <nick.dedekind@canonical.com>
+ */
+
+-#ifndef MIRAL_EDID_H
+-#define MIRAL_EDID_H
++#ifndef MIROIL_EDID_H
++#define MIROIL_EDID_H
+
+ #include <cstdint>
+ #include <string>
+ #include <vector>
+
+-// Prototyping namespace for later incorporation in MirAL
+-namespace miral
++namespace miroil
+ {
+
+ struct Edid
+@@ -66,4 +65,4 @@ struct Edid
+
+ }
+
+-#endif // MIRAL_EDID_H
++#endif // MIROIL_EDID_H
+diff --git a/include/qtmir/displayconfigurationpolicy.h b/include/qtmir/displayconfigurationpolicy.h
+index cb26a0de..3b437625 100644
+--- a/include/qtmir/displayconfigurationpolicy.h
++++ b/include/qtmir/displayconfigurationpolicy.h
+@@ -17,13 +17,12 @@
+ #ifndef QTMIR_DISPLAYCONFIGURATIONPOLICY_H
+ #define QTMIR_DISPLAYCONFIGURATIONPOLICY_H
+
+-//qtmir
+-#include "qtmir/miral/display_configuration_policy.h"
+-
+-// mir
+-#include <mir/server.h>
++//miroil
++#include <miroil/display_configuration_policy.h>
++#include <miroil/persist_display_config.h>
+
+ #include <memory>
++#include <functional>
+
+ class QMirServer;
+
+@@ -44,7 +43,7 @@ namespace qtmir
+
+ qtmir::GuiServerApplication app(argc, argv, { SetDisplayConfigurationPolicy<MyDisplayConfigurationPolicy>() });
+ */
+-class DisplayConfigurationPolicy : public miral::DisplayConfigurationPolicy
++class DisplayConfigurationPolicy : public miroil::DisplayConfigurationPolicy
+ {
+ public:
+ DisplayConfigurationPolicy();
+@@ -56,7 +55,7 @@ private:
+ std::shared_ptr<Private> d;
+ };
+
+-using DisplayConfigurationPolicyWrapper = std::function<std::shared_ptr<miral::DisplayConfigurationPolicy>()>;
++using DisplayConfigurationPolicyWrapper = std::function<std::shared_ptr<miroil::DisplayConfigurationPolicy>(std::shared_ptr<mir::graphics::DisplayConfigurationPolicy> const& wrapped)>;
+
+ /*
+ Base class for access to set the display configuration policy
+@@ -84,7 +83,7 @@ public:
+ template<typename ...Args>
+ explicit SetDisplayConfigurationPolicy(Args const& ...args) :
+ BasicSetDisplayConfigurationPolicy{
+- [&args...]() { return std::make_shared<Policy>(args...); }} {}
++ [&args...](auto) { return std::make_shared<Policy>(args...); }} {}
+ };
+
+ } // namespace qtmir
+diff --git a/include/qtmir/displayconfigurationstorage.h b/include/qtmir/displayconfigurationstorage.h
+index 8a24e4ab..c7f1451c 100644
+--- a/include/qtmir/displayconfigurationstorage.h
++++ b/include/qtmir/displayconfigurationstorage.h
+@@ -17,7 +17,7 @@
+ #ifndef DISPLAYCONFIGURATIONSTORAGE_H
+ #define DISPLAYCONFIGURATIONSTORAGE_H
+
+-#include "qtmir/miral/display_configuration_storage.h"
++#include <miroil/display_configuration_storage.h>
+
+ #include <functional>
+ #include <memory>
+@@ -27,7 +27,7 @@ class QMirServer;
+ namespace qtmir
+ {
+
+-using DisplayConfigurationStorageBuilder = std::function<std::shared_ptr<miral::DisplayConfigurationStorage>()>;
++using DisplayConfigurationStorageBuilder = std::function<std::shared_ptr<miroil::DisplayConfigurationStorage>()>;
+
+ class BasicSetDisplayConfigurationStorage
+ {
+diff --git a/include/qtmir/screen.h b/include/qtmir/screen.h
+index 48793411..805a0fb7 100644
+--- a/include/qtmir/screen.h
++++ b/include/qtmir/screen.h
+@@ -18,7 +18,7 @@
+ #define QTMIR_SCREEN_H
+
+ #include <qtmir/types.h>
+-#include <qtmir/miral/display_id.h>
++#include <miroil/display_id.h>
+
+ #include <QObject>
+ #include <QPointer>
+@@ -40,7 +40,7 @@ class Screen : public QObject
+ {
+ Q_OBJECT
+ public:
+- virtual miral::DisplayId displayId() const = 0;
++ virtual miroil::DisplayId displayId() const = 0;
+ virtual bool used() const = 0;
+ virtual QString name() const = 0;
+ virtual float scale() const = 0;
+@@ -57,8 +57,8 @@ public:
+
+ virtual QScreen* qscreen() const = 0;
+
+- virtual ScreenConfiguration *beginConfiguration() const = 0;
+- virtual bool applyConfiguration(ScreenConfiguration *configuration) = 0;
++ virtual Q_INVOKABLE ScreenConfiguration *beginConfiguration() const = 0;
++ virtual Q_INVOKABLE bool applyConfiguration(ScreenConfiguration *configuration) = 0;
+
+ Q_SIGNALS:
+ void usedChanged();
+@@ -96,7 +96,7 @@ public:
+ struct ScreenConfiguration
+ {
+ bool valid{false};
+- miral::OutputId id;
++ miroil::OutputId id;
+
+ bool used;
+ QPoint topLeft;
+diff --git a/include/qtmir/windowmanagementpolicy.h b/include/qtmir/windowmanagementpolicy.h
+index 69f4f6b0..c1e5519f 100644
+--- a/include/qtmir/windowmanagementpolicy.h
++++ b/include/qtmir/windowmanagementpolicy.h
+@@ -18,7 +18,7 @@
+ #define QTMIR_WINDOWMANAGEMENTPOLICY_H
+
+ // miral
+-#include <miral/canonical_window_manager.h>
++#include <miral/minimal_window_manager.h>
+ #include <miral/version.h>
+ #if MIRAL_VERSION > MIR_VERSION_NUMBER(1,3,1)
+ #include <miral/set_window_management_policy.h>
+@@ -43,7 +43,7 @@ class WindowManagementPolicyPrivate;
+ /*
+ Provides window management callbacks for window behaviour customization
+ */
+-class WindowManagementPolicy : public miral::CanonicalWindowManagerPolicy
++class WindowManagementPolicy : public miral::MinimalWindowManager
+ {
+ public:
+
+diff --git a/src/common/debughelpers.cpp b/src/common/debughelpers.cpp
+index 0e3be568..362d252d 100644
+--- a/src/common/debughelpers.cpp
++++ b/src/common/debughelpers.cpp
+@@ -17,7 +17,13 @@
+ #include "debughelpers.h"
+ #include <QTouchEvent>
+
++#include <mir/version.h>
++#if MIR_SERVER_VERSION >= MIR_VERSION_NUMBER(2, 0, 0)
++#include <miral/toolkit_event.h>
++using namespace miral::toolkit;
++#else
+ #include <mir_toolkit/event.h>
++#endif
+
+ // Lomiri Shell API
+ #include <lomiri/shell/application/ApplicationInfoInterface.h>
+@@ -124,6 +130,7 @@ const char *mirSurfaceTypeToStr(int value)
+ case mir_window_type_inputmethod: return "input Method"; /**< AKA "OSK" or handwriting etc. */
+ case mir_window_type_satellite: return "satellite"; /**< AKA "toolbox"/"toolbar" */
+ case mir_window_type_tip: return "tip"; /**< AKA "tooltip" */
++ case mir_window_type_decoration: return "decoration";
+ case mir_window_types: Q_UNREACHABLE();
+ }
+ Q_UNREACHABLE();
+diff --git a/src/common/debughelpers.h b/src/common/debughelpers.h
+index 0828db27..31814dbe 100644
+--- a/src/common/debughelpers.h
++++ b/src/common/debughelpers.h
+@@ -20,7 +20,13 @@
+ #include <QString>
+
+ #include <mir_toolkit/common.h>
++#include <mir/version.h>
++#if MIR_SERVER_VERSION >= MIR_VERSION_NUMBER(2, 0, 0)
++#include <miral/toolkit_event.h>
++using namespace miral::toolkit;
++#else
+ #include <mir_toolkit/event.h>
++#endif
+
+ class QTouchEvent;
+
+diff --git a/src/common/windowcontrollerinterface.h b/src/common/windowcontrollerinterface.h
+index 062c02a7..f33b1b80 100644
+--- a/src/common/windowcontrollerinterface.h
++++ b/src/common/windowcontrollerinterface.h
+@@ -19,7 +19,13 @@
+
+ #include <miral/window.h>
+
++#include <mir/version.h>
++#if MIR_SERVER_VERSION >= MIR_VERSION_NUMBER(2, 0, 0)
++#include <miral/toolkit_event.h>
++using namespace miral::toolkit;
++#else
+ #include <mir_toolkit/event.h>
++#endif
+
+ #include <QPoint>
+ #include <QSize>
+diff --git a/src/common/windowmodelnotifier.h b/src/common/windowmodelnotifier.h
+index e534803d..388d0175 100644
+--- a/src/common/windowmodelnotifier.h
++++ b/src/common/windowmodelnotifier.h
+@@ -90,6 +90,8 @@ Q_SIGNALS: // **Must used Queued Connection or else events will be out of order*
+ void modificationsStarted();
+ void modificationsEnded();
+
++ void windowDecorationChanged(const miral::Window &window, bool ssd);
++
+ private:
+ Q_DISABLE_COPY(WindowModelNotifier)
+ };
+@@ -112,6 +114,7 @@ Q_SIGNALS:
+ void windowStateChanged(Mir::State state);
+ void windowFocusChanged(bool focused);
+ void windowRequestedRaise();
++ void windowDecorationChanged(bool ssd);
+ };
+
+ } // namespace qtmir
+@@ -120,5 +123,6 @@ Q_DECLARE_METATYPE(qtmir::NewWindow)
+ Q_DECLARE_METATYPE(miral::WindowInfo)
+ Q_DECLARE_METATYPE(std::vector<miral::Window>)
+ Q_DECLARE_METATYPE(MirWindowState)
++Q_DECLARE_METATYPE(miral::Window)
+
+ #endif // WINDOWMODELNOTIFIER_H
+diff --git a/src/common/workspacecontrollerinterface.h b/src/common/workspacecontrollerinterface.h
+index eb7b281c..fcb26fb2 100644
+--- a/src/common/workspacecontrollerinterface.h
++++ b/src/common/workspacecontrollerinterface.h
+@@ -19,8 +19,6 @@
+
+ #include <miral/window.h>
+
+-#include <mir_toolkit/event.h>
+-
+ #include <QPoint>
+ #include <QSize>
+
+diff --git a/src/modules/QtMir/Application/CMakeLists.txt b/src/modules/QtMir/Application/CMakeLists.txt
+index 5fac5329..f5a0b125 100644
+--- a/src/modules/QtMir/Application/CMakeLists.txt
++++ b/src/modules/QtMir/Application/CMakeLists.txt
+@@ -1,8 +1,13 @@
+ include(UseLttngGenTp)
+
++if(NOT WITH_MIR2)
++ set(MIROIL_INC ${CMAKE_SOURCE_DIR}/src/platforms/mirserver/miroil/include)
++endif()
++
+ include_directories(
+ ${CMAKE_SOURCE_DIR}/include
+ ${CMAKE_SOURCE_DIR}/src/platforms/mirserver
++ ${MIROIL_INC}
+ ${CMAKE_SOURCE_DIR}/src/common
+ ${CMAKE_CURRENT_BINARY_DIR} # for tracepoints.h
+ )
+@@ -14,6 +19,7 @@ include_directories(
+ ${GIO_UNIX_INCLUDE_DIRS}
+ ${MIRAL_INCLUDE_DIRS}
+ ${MIRSERVER_INCLUDE_DIRS}
++ ${MIROIL_INCLUDE_DIRS}
+ ${MIRRENDERERGLDEV_INCLUDE_DIRS}
+ ${PROCESS_CPP_INCLUDE_DIRS}
+ ${UBUNTU_PLATFORM_API_INCLUDE_DIRS}
+diff --git a/src/modules/QtMir/Application/application.cpp b/src/modules/QtMir/Application/application.cpp
+index c5979f20..f7ca448a 100644
+--- a/src/modules/QtMir/Application/application.cpp
++++ b/src/modules/QtMir/Application/application.cpp
+@@ -441,12 +441,6 @@ bool Application::fullscreen() const
+ return false;
+ }
+
+-// TODO
+-bool Application::serverSideDecoration() const
+-{
+- return true;
+-}
+-
+ void Application::close()
+ {
+ DEBUG_MSG << "()";
+@@ -896,6 +890,16 @@ shellapp::MirSurfaceListInterface* Application::promptSurfaceList() const
+ return m_proxyPromptSurfaceList;
+ }
+
++bool Application::serverSideDecoration() const
++{
++ return m_ssd;
++}
++
++void Application::setServerSideDecoration(bool ssd) {
++ m_ssd = ssd;
++ Q_EMIT serverSideDecorationChanged(ssd);
++}
++
+ void Application::requestFocus()
+ {
+ if (m_surfaceList.rowCount() > 0) {
+diff --git a/src/modules/QtMir/Application/application.h b/src/modules/QtMir/Application/application.h
+index 41d8e05d..13514097 100644
+--- a/src/modules/QtMir/Application/application.h
++++ b/src/modules/QtMir/Application/application.h
+@@ -106,6 +106,8 @@ public:
+ lomiri::shell::application::MirSurfaceListInterface* promptSurfaceList() const override;
+ int surfaceCount() const override { return surfaceList()->count(); }
+ bool serverSideDecoration() const override;
++ void setServerSideDecoration(bool ssd);
++
+ void close() override;
+
+ ProcessState processState() const { return m_processState; }
+@@ -180,6 +182,7 @@ private:
+ bool m_exemptFromLifecycle;
+ QSize m_initialSurfaceSize;
+ bool m_closing{false};
++ bool m_ssd{true};
+
+ mutable MirSurfaceListModel m_surfaceList;
+ ProxySurfaceListModel *m_proxyPromptSurfaceList;
+diff --git a/src/modules/QtMir/Application/application_manager.cpp b/src/modules/QtMir/Application/application_manager.cpp
+index 3b135541..fe2a69a8 100644
+--- a/src/modules/QtMir/Application/application_manager.cpp
++++ b/src/modules/QtMir/Application/application_manager.cpp
+@@ -78,6 +78,32 @@ QString toShortAppIdIfPossible(const QString &appId) {
+
+ } // namespace
+
++class NoDesktopAppInfo : public ApplicationInfo
++{
++public:
++ NoDesktopAppInfo(QString name) : m_name(name) {};
++ QString appId() const override { return m_name; };
++ QString name() const override { return m_name; };
++ QString comment() const override { return m_name; };
++ QUrl icon() const override {return QUrl(); };
++ bool showSplash() const override { return false; };
++ QString splashTitle() const override {return m_name; };
++ QUrl splashImage() const override {return QUrl(); };
++ bool splashShowHeader() const override { return false; };
++ QString splashColor() const override { return ""; };
++ QString splashColorHeader() const override { return ""; };
++ QString splashColorFooter() const override { return ""; };
++ Qt::ScreenOrientations supportedOrientations() const override { return Qt::PortraitOrientation |
++ Qt::LandscapeOrientation |
++ Qt::InvertedPortraitOrientation |
++ Qt::InvertedLandscapeOrientation; };
++ bool rotatesWindowContents() const override { return false; };
++ bool isTouchApp() const override { return false; };
++
++private:
++ QString m_name;
++};
++
+ ApplicationManager* ApplicationManager::create()
+ {
+ NativeInterface *nativeInterface = dynamic_cast<NativeInterface*>(QGuiApplication::platformNativeInterface());
+@@ -503,6 +529,62 @@ void ApplicationManager::onAppDataChanged(const int role)
+ }
+ }
+
++QSharedPointer<ApplicationInfo> ApplicationManager::tryFindApp(const pid_t pid)
++{
++ // We first try task controller
++ std::unique_ptr<ProcInfo::CommandLine> info = m_procInfo->commandLine(pid);
++ QString desktopFileName = info->getParameter("--desktop_file_hint=");
++
++ if (desktopFileName.isNull()) {
++ auto environment = m_procInfo->environment(pid);
++ if (environment && environment->contains("DESKTOP_FILE_HINT")) {
++ desktopFileName = environment->getParameter("DESKTOP_FILE_HINT");
++ }
++ }
++
++ qCDebug(QTMIR_APPLICATIONS) << "Trying to find desktop file";
++
++ if (desktopFileName.isNull()) {
++ const auto paths = QStandardPaths::standardLocations(QStandardPaths::ApplicationsLocation);
++ for (const auto &path: paths) {
++ qWarning() << "searching" << path;
++ QDirIterator it(path, QStringList() << "*.desktop", QDir::Files, QDirIterator::Subdirectories);
++ while (it.hasNext()) {
++ auto file = it.next();
++ QTextStream in (&file);
++ QString line;
++ while (!line.isNull()) {
++ line = in.readLine();
++ if (line.contains("exec") && line.contains(info->getExec())) {
++ qWarning() << "found match for" << info->asStringList()[0] << "as" << file;
++ desktopFileName = file;
++ break;
++ }
++ }
++ if (!desktopFileName.isNull())
++ break;
++ }
++ if (!desktopFileName.isNull())
++ break;
++ }
++ }
++
++ if (!desktopFileName.isNull()) {
++ // Guess appId from the desktop file hint
++ const QString appId = toShortAppIdIfPossible(desktopFileName.split('/').last().remove(QRegExp(QStringLiteral(".desktop$"))));
++
++ qCDebug(QTMIR_APPLICATIONS) << "Process supplied desktop_file_hint, loading:" << appId;
++
++ auto appInfo = m_taskController->getInfoForApp(appId);
++ return appInfo;
++ }
++
++ // If all else fails, make a dummy app info
++ auto nod = new NoDesktopAppInfo(info->getExec());
++ return QSharedPointer<NoDesktopAppInfo>(nod);
++
++}
++
+ void ApplicationManager::authorizeSession(const pid_t pid, bool &authorized)
+ {
+ // This is the only function that is called from a different thread than the one
+diff --git a/src/modules/QtMir/Application/application_manager.h b/src/modules/QtMir/Application/application_manager.h
+index 59e6ec72..cce98d1f 100644
+--- a/src/modules/QtMir/Application/application_manager.h
++++ b/src/modules/QtMir/Application/application_manager.h
+@@ -123,6 +123,7 @@ private:
+
+ Application* findApplicationWithPromptSession(const mir::scene::PromptSession* promptSession);
+ Application *findClosingApplication(const QString &inputAppId) const;
++ QSharedPointer<qtmir::ApplicationInfo> tryFindApp(const pid_t pid);
+
+ QList<Application*> m_applications;
+ DBusFocusInfo *m_dbusFocusInfo;
+diff --git a/src/modules/QtMir/Application/mirbuffersgtexture.cpp b/src/modules/QtMir/Application/mirbuffersgtexture.cpp
+index 704a4f08..c4bfb53a 100644
+--- a/src/modules/QtMir/Application/mirbuffersgtexture.cpp
++++ b/src/modules/QtMir/Application/mirbuffersgtexture.cpp
+@@ -19,6 +19,7 @@
+
+ // Mir
+ #include <mir/geometry/size.h>
++#include <mir/version.h>
+
+ // Qt
+ #include <QDebug>
+@@ -30,7 +31,7 @@ namespace mg = mir::geometry;
+ class MirGlBuffer
+ {
+ public:
+- MirGlBuffer(const std::shared_ptr<miral::GLBuffer>& buffer);
++ MirGlBuffer(const std::shared_ptr<miroil::GLBuffer>& buffer);
+ virtual ~MirGlBuffer();
+
+ static std::shared_ptr<MirGlBuffer> from_mir_buffer(const std::shared_ptr<mir::graphics::Buffer>& buffer);
+@@ -50,7 +51,7 @@ public:
+ protected:
+ virtual void bindTexture() = 0;
+
+- std::shared_ptr<miral::GLBuffer> m_mirBuffer;
++ std::shared_ptr<miroil::GLBuffer> m_mirBuffer;
+ GLuint m_textureId;
+
+ private:
+@@ -63,10 +64,14 @@ private:
+ class MirGlBufferTexture : public MirGlBuffer
+ {
+ public:
+- MirGlBufferTexture(const std::shared_ptr<miral::GLBuffer>& buffer)
++ MirGlBufferTexture(const std::shared_ptr<miroil::GLBuffer>& buffer)
+ : MirGlBuffer(buffer)
+ // Strong reference held by base class.
+- , m_texBuf(static_cast<miral::GLTextureBuffer *>(buffer.get()))
++#if MIR_SERVER_MAJOR_VERSION < 2
++ , m_texBuf(static_cast<miroil::GLTextureBuffer *>(buffer.get()))
++#else
++ , m_texBuf(buffer.get())
++#endif
+ {}
+
+ void updateTextureId() override
+@@ -85,16 +90,21 @@ public:
+ }
+
+ private:
+- miral::GLTextureBuffer *m_texBuf;
++#if MIR_SERVER_MAJOR_VERSION < 2
++ miroil::GLTextureBuffer *m_texBuf;
++#else
++ miroil::GLBuffer *m_texBuf;
++#endif
+ };
+
++#if MIR_SERVER_MAJOR_VERSION < 2
+ class MirGlBufferTexturesource : public MirGlBuffer
+ {
+ public:
+- MirGlBufferTexturesource(const std::shared_ptr<miral::GLBuffer>& buffer)
++ MirGlBufferTexturesource(const std::shared_ptr<miroil::GLBuffer>& buffer)
+ : MirGlBuffer(buffer)
+ // Strong reference held by base class.
+- , m_texSourceBuf(static_cast<miral::GLTextureSourceBuffer *>(buffer.get()))
++ , m_texSourceBuf(static_cast<miroil::GLTextureSourceBuffer *>(buffer.get()))
+ {}
+
+ void updateTextureId() override
+@@ -113,10 +123,11 @@ public:
+ }
+
+ private:
+- miral::GLTextureSourceBuffer * m_texSourceBuf;
++ miroil::GLTextureSourceBuffer * m_texSourceBuf;
+ };
++#endif
+
+-MirGlBuffer::MirGlBuffer(const std::shared_ptr<miral::GLBuffer>& buffer) :
++MirGlBuffer::MirGlBuffer(const std::shared_ptr<miroil::GLBuffer>& buffer) :
+ m_mirBuffer(buffer)
+ , m_textureId(0)
+ , m_needsUpdate(true)
+@@ -135,10 +146,12 @@ MirGlBuffer::~MirGlBuffer()
+ }
+
+ std::shared_ptr<MirGlBuffer> MirGlBuffer::from_mir_buffer(const std::shared_ptr<mir::graphics::Buffer>& buffer) {
+- auto glBuffer = miral::GLBuffer::from_mir_buffer(buffer);
+- if (glBuffer->type() == miral::GLBuffer::Type::GLTextureSource)
++ auto glBuffer = miroil::GLBuffer::from_mir_buffer(buffer);
++ #if MIR_SERVER_MAJOR_VERSION < 2
++ if (glBuffer->type() == miroil::GLBuffer::Type::GLTextureSource)
+ return std::make_shared<MirGlBufferTexturesource>(glBuffer);
+ else
++#endif
+ return std::make_shared<MirGlBufferTexture>(glBuffer);
+ }
+
+diff --git a/src/modules/QtMir/Application/mirbuffersgtexture.h b/src/modules/QtMir/Application/mirbuffersgtexture.h
+index 51579d03..2b45b339 100644
+--- a/src/modules/QtMir/Application/mirbuffersgtexture.h
++++ b/src/modules/QtMir/Application/mirbuffersgtexture.h
+@@ -17,7 +17,7 @@
+ #ifndef MIRBUFFERSGTEXTURE_H
+ #define MIRBUFFERSGTEXTURE_H
+
+-#include "miral/mirbuffer.h"
++#include <miroil/mirbuffer.h>
+
+ #include <QSGTexture>
+
+diff --git a/src/modules/QtMir/Application/mirsurface.cpp b/src/modules/QtMir/Application/mirsurface.cpp
+index 1290d1f5..3391a5c5 100644
+--- a/src/modules/QtMir/Application/mirsurface.cpp
++++ b/src/modules/QtMir/Application/mirsurface.cpp
+@@ -18,7 +18,6 @@
+ #include "compositortextureprovider.h"
+ #include "mirsurface.h"
+ #include "mirsurfacelistmodel.h"
+-#include "namedcursor.h"
+ #include "session_interface.h"
+ #include "surfacemanager.h"
+ #include "timer.h"
+@@ -36,10 +35,13 @@
+
+ // Mir
+ #include <mir/geometry/rectangle.h>
+-#include <mir/scene/surface.h>
+-#include <mir/scene/surface_observer.h>
++//#include <mir/scene/surface.h>
++//#include <mir/scene/surface_observer.h>
+ #include <mir/version.h>
+-#include <mir_toolkit/cursors.h>
++//#include <mir_toolkit/cursors.h>
++// #include <mir_toolkit/event.h>
++#include <miroil/surface_observer.h>
++#include "namedcursor.h"
+
+ // mirserver
+ #include <logging.h>
+@@ -82,7 +84,7 @@ qint64 msecsSinceReference()
+
+ } // namespace {
+
+-class MirSurface::SurfaceObserverImpl : public SurfaceObserver, public mir::scene::SurfaceObserver
++class MirSurface::SurfaceObserverImpl : public SurfaceObserver, public miroil::SurfaceObserver
+ {
+ public:
+ SurfaceObserverImpl();
+@@ -94,7 +96,7 @@ public:
+ void attrib_changed(mir::scene::Surface const*, MirWindowAttrib, int) override;
+ #if MIR_SERVER_VERSION >= MIR_VERSION_NUMBER(1, 6, 0)
+ void content_resized_to(mir::scene::Surface const*, mir::geometry::Size const&) override;
+- void window_resized_to(mir::scene::Surface const*, mir::geometry::Size const&) override {}
++ void window_resized_to(mir::scene::Surface const*, mir::geometry::Size const&) override { qWarning("Window resized to");}
+ #else
+ void resized_to(mir::scene::Surface const*, mir::geometry::Size const&) override;
+ #endif
+@@ -106,7 +108,7 @@ public:
+
+ void alpha_set_to(mir::scene::Surface const*, float) override {}
+ void transformation_set_to(mir::scene::Surface const*, glm::mat4 const&) override {}
+- void reception_mode_set_to(mir::scene::Surface const*, mir::input::InputReceptionMode) override {}
++// void reception_mode_set_to(mir::scene::Surface const*, mir::input::InputReceptionMode) override {}
+ void cursor_image_set_to(mir::scene::Surface const*, mir::graphics::CursorImage const&) override;
+ void orientation_set_to(mir::scene::Surface const*, MirOrientation) override {}
+ void client_surface_close_requested(mir::scene::Surface const*) override {}
+@@ -192,6 +194,10 @@ public:
+ connect(this, &WindowNotifierObserver::windowRequestedRaise, this, [surface]() {
+ surface->requestFocus();
+ });
++ connect(this, &WindowNotifierObserver::windowDecorationChanged, this, [surface]( bool ssd) {
++ Application *app = static_cast<Application*>(surface->session()->application());
++ app->setServerSideDecoration(ssd);
++ });
+ }
+ };
+
+@@ -210,7 +216,7 @@ MirSurface::MirSurface(NewWindow newWindowInfo,
+ , m_maxHeight{newWindowInfo.windowInfo.max_height().as_int()}
+ , m_incWidth{newWindowInfo.windowInfo.width_inc().as_int()}
+ , m_incHeight{newWindowInfo.windowInfo.height_inc().as_int()}
+- , m_surface(newWindowInfo.surface)
++ , m_surface(std::make_shared<miroil::Surface>(newWindowInfo.surface))
+ , m_session(session)
+ , m_controller(controller)
+ , m_orientationAngle(Mir::Angle0)
+@@ -235,7 +241,7 @@ MirSurface::MirSurface(NewWindow newWindowInfo,
+
+ m_position = convertDisplayToLocalCoords(toQPoint(m_window.top_left()));
+
+- SurfaceObserver::registerObserverForSurface(m_surfaceObserver.get(), m_surface.get());
++ SurfaceObserver::registerObserverForSurface(m_surfaceObserver.get(), m_surface->get_wrapped());
+ m_surface->add_observer(m_surfaceObserver);
+
+ connect(m_surfaceObserver.get(), &SurfaceObserver::framesPosted, this, &MirSurface::onFramesPostedObserved);
+@@ -254,6 +260,10 @@ MirSurface::MirSurface(NewWindow newWindowInfo,
+ });
+ connect(m_surfaceObserver.get(), &SurfaceObserver::inputBoundsChanged, this, &MirSurface::setInputBounds);
+ connect(m_surfaceObserver.get(), &SurfaceObserver::confinesMousePointerChanged, this, &MirSurface::confinesMousePointerChanged);
++ connect(m_surfaceObserver.get(), &SurfaceObserver::resized, this, [&](QSize const &size){
++ m_size = size;
++ QMetaObject::invokeMethod(this, "emitSizeChanged", Qt::QueuedConnection);
++ });
+ m_surfaceObserver->setListener(this);
+
+ connect(session, &SessionInterface::stateChanged, this, [this]() {
+@@ -382,9 +392,9 @@ void MirSurface::dropPendingBuffer()
+ texture->freeBuffer();
+ texture->setBuffer(renderables[0]->buffer());
+ if (texture->textureSize() != m_size) {
+- m_size = texture->textureSize();
+- m_sizePendingChange = false;
+- QMetaObject::invokeMethod(this, "emitSizeChanged", Qt::QueuedConnection);
++ //m_size = texture->textureSize();
++ //m_sizePendingChange = false;
++ //QMetaObject::invokeMethod(this, "emitSizeChanged", Qt::QueuedConnection);
+ }
+ compositorTexture->setUpToDate(true);
+
+@@ -440,27 +450,29 @@ QSGTexture *MirSurface::weakTexture(qintptr userId) const
+ return compositorTexure ? compositorTexure->texture().toStrongRef().data() : nullptr;
+ }
+
+-bool MirSurface::updateTexture(qintptr userId)
++std::vector<MirSurface::SubSurfaceTexture> MirSurface::updateTexture(qintptr userId)
+ {
+ QMutexLocker locker(&m_mutex);
+
+ auto compositorTexure = m_textures->compositorTextureForId(userId);
+- if (!compositorTexure) return false;
++ if (!compositorTexure) return {};
+
+ return updateTextureLocked(userId, compositorTexure);
+ }
+
+-bool MirSurface::updateTextureLocked(qintptr userId, CompositorTexture *compositorTexture)
++std::vector<MirSurface::SubSurfaceTexture> MirSurface::updateTextureLocked(qintptr userId, CompositorTexture *compositorTexture)
+ {
+ auto texture = qWeakPointerCast<MirBufferSGTexture, QSGTexture>(compositorTexture->texture()).lock();
+- if (!texture) return false;
++ // TODO figure out how to cache!
++ //if (!texture) return {};
+
+- if (compositorTexture->isUpToDate()) {
+- return texture->hasBuffer();
+- }
++ //if (compositorTexture->isUpToDate()) {
++ // return {};
++ //}
+
+ auto renderables = m_surface->generate_renderables((void*)userId);
+
++ std::vector<SubSurfaceTexture> subsurfaces;
+ if (renderables.size() > 0 &&
+ (m_surface->buffers_ready_for_compositor((void*)userId) > 0 || !texture->hasBuffer())
+ ) {
+@@ -471,12 +483,35 @@ bool MirSurface::updateTextureLocked(qintptr userId, CompositorTexture *composit
+ compositorTexture->incrementFrame();
+
+ if (texture->textureSize() != m_size) {
+- m_size = texture->textureSize();
+- m_sizePendingChange = false;
+- QMetaObject::invokeMethod(this, "emitSizeChanged", Qt::QueuedConnection);
++ //m_size = texture->textureSize();
++ //m_sizePendingChange = false;
++ //QMetaObject::invokeMethod(this, "emitSizeChanged", Qt::QueuedConnection);
+ }
+
+ compositorTexture->setUpToDate(true);
++
++ subsurfaces.reserve(renderables.size());
++ for (auto const& renderable : renderables)
++ {
++ auto const mirTopLeft = m_surface->top_left();
++ auto const mirStreamPosition = renderable->screen_position();
++ QRectF const relativePosition(
++ mirStreamPosition.left().as_int() - mirTopLeft.x.as_int(),
++ mirStreamPosition.top().as_int() - mirTopLeft.y.as_int(),
++ mirStreamPosition.size.width.as_int(),
++ mirStreamPosition.size.height.as_int()
++ );
++
++ QSharedPointer<MirBufferSGTexture> texture(new MirBufferSGTexture);
++ texture->freeBuffer();
++ texture->setBuffer(renderable->buffer());
++ subsurfaces.emplace_back(
++ SubSurfaceTexture{
++ relativePosition,
++ texture
++ });
++ }
++ m_subTextures = subsurfaces;
+ }
+
+ if (m_surface->buffers_ready_for_compositor((void*)userId) > 0) {
+@@ -485,7 +520,7 @@ bool MirSurface::updateTextureLocked(qintptr userId, CompositorTexture *composit
+ QMetaObject::invokeMethod(&m_frameDropperTimer, "start", Qt::QueuedConnection);
+ }
+
+- return texture->hasBuffer();
++ return m_subTextures;
+ }
+
+ bool MirSurface::numBuffersReadyForCompositor(qintptr userId)
+@@ -738,7 +773,6 @@ bool MirSurface::visible() const
+ {
+ return m_visible;
+ }
+-#include <mir_toolkit/event.h>
+ void MirSurface::mousePressEvent(QMouseEvent *event)
+ {
+ auto ev = EventBuilder::instance()->reconstructMirEvent(event);
+@@ -801,9 +835,9 @@ void MirSurface::keyPressEvent(QKeyEvent *qtEvent)
+ if (!qtEvent->isAutoRepeat()) {
+ Q_ASSERT(!isKeyPressed(qtEvent->nativeVirtualKey()));
+ PressedKey pressedKey(qtEvent, msecsSinceReference());
+- auto info = EventBuilder::instance()->findInfo(qtEvent->timestamp());
++ auto info = EventBuilder::instance()->find_info(qtEvent->timestamp());
+ if (info) {
+- pressedKey.deviceId = info->deviceId;
++ pressedKey.deviceId = info->device_id;
+ }
+ m_pressedKeys.append(std::move(pressedKey));
+ }
+@@ -1080,7 +1114,7 @@ QRect MirSurface::inputBounds() const
+
+ bool MirSurface::confinesMousePointer() const
+ {
+- return m_surface->confine_pointer_state() == mir_pointer_confined_to_window;
++ return m_surface->is_confined_to_window();
+ }
+
+ bool MirSurface::allowClientResize() const
+@@ -1282,23 +1316,23 @@ MirSurface::SurfaceObserverImpl::SurfaceObserverImpl()
+ , m_framesPosted(false)
+ {
+ // mir cursor names, used by the mir protocol
+-
+- m_cursorNameToShape[mir_default_cursor_name] = Qt::ArrowCursor;
+- m_cursorNameToShape[mir_arrow_cursor_name] = Qt::ArrowCursor;
+- m_cursorNameToShape[mir_crosshair_cursor_name] = Qt::CrossCursor;
+- m_cursorNameToShape[mir_busy_cursor_name] = Qt::WaitCursor;
+- m_cursorNameToShape[mir_caret_cursor_name] = Qt::IBeamCursor;
+- m_cursorNameToShape[mir_vertical_resize_cursor_name] = Qt::SizeVerCursor;
+- m_cursorNameToShape[mir_horizontal_resize_cursor_name] = Qt::SizeHorCursor;
+- m_cursorNameToShape[mir_diagonal_resize_bottom_to_top_cursor_name] = Qt::SizeBDiagCursor;
+- m_cursorNameToShape[mir_diagonal_resize_top_to_bottom_cursor_name] = Qt::SizeFDiagCursor;
+- m_cursorNameToShape[mir_omnidirectional_resize_cursor_name] = Qt::SizeAllCursor;
+- m_cursorNameToShape[mir_disabled_cursor_name] = Qt::BlankCursor;
+- m_cursorNameToShape[mir_vsplit_resize_cursor_name] = Qt::SplitVCursor;
+- m_cursorNameToShape[mir_hsplit_resize_cursor_name] = Qt::SplitHCursor;
+- m_cursorNameToShape[mir_pointing_hand_cursor_name] = Qt::PointingHandCursor;
+- m_cursorNameToShape[mir_open_hand_cursor_name] = Qt::OpenHandCursor;
+- m_cursorNameToShape[mir_closed_hand_cursor_name] = Qt::ClosedHandCursor;
++ // Cursor names are from CSS3: https://www.w3.org/TR/css-ui-3/#propdef-cursor
++
++ m_cursorNameToShape["default"] = Qt::ArrowCursor;
++ m_cursorNameToShape["crosshair"] = Qt::CrossCursor;
++ m_cursorNameToShape["wait"] = Qt::WaitCursor;
++ m_cursorNameToShape["text"] = Qt::IBeamCursor;
++ m_cursorNameToShape["ns-resize"] = Qt::SizeVerCursor;
++ m_cursorNameToShape["ew-resize"] = Qt::SizeHorCursor;
++ m_cursorNameToShape["ne-resize"] = Qt::SizeBDiagCursor;
++ m_cursorNameToShape["se-resize"] = Qt::SizeFDiagCursor;
++ m_cursorNameToShape["move"] = Qt::SizeAllCursor;
++ m_cursorNameToShape["none"] = Qt::BlankCursor;
++ m_cursorNameToShape["row-resize"] = Qt::SplitVCursor;
++ m_cursorNameToShape["col-resize"] = Qt::SplitHCursor;
++ m_cursorNameToShape["pointer"] = Qt::PointingHandCursor;
++ m_cursorNameToShape["grab"] = Qt::OpenHandCursor;
++ m_cursorNameToShape["grabbing"] = Qt::ClosedHandCursor;
+
+ // xcursor names, used by our cursor themes
+
+@@ -1500,7 +1534,8 @@ QPoint MirSurface::convertDisplayToLocalCoords(const QPoint &displayPos) const
+ QPoint localPos = displayPos;
+
+ if (m_surface->parent()) {
+- auto parentPos = m_surface->parent()->top_left();
++ auto parent = m_surface->parent();
++ auto parentPos = miroil::Surface(parent).top_left();
+ localPos.rx() -= parentPos.x.as_int();
+ localPos.ry() -= parentPos.y.as_int();
+ }
+@@ -1513,7 +1548,9 @@ QPoint MirSurface::convertLocalToDisplayCoords(const QPoint &localPos) const
+ QPoint displayPos = localPos;
+
+ if (m_surface->parent()) {
+- auto parentPos = m_surface->parent()->top_left();
++ miroil::Surface parent(m_surface->parent());
++
++ auto parentPos = parent.top_left();
+ displayPos.rx() += parentPos.x.as_int();
+ displayPos.ry() += parentPos.y.as_int();
+ }
+@@ -1563,8 +1600,7 @@ void MirSurface::releaseAllPressedKeys()
+ auto deltaMs = (ulong)(msecsSinceReference() - pressedKey.msecsSinceReference);
+ ulong timestamp = pressedKey.timestamp + deltaMs;
+ std::vector<uint8_t> cookie{};
+-
+- auto ev = mir::events::make_event(pressedKey.deviceId,
++ auto ev = EventBuilder::instance()->make_key_event(pressedKey.deviceId,
+ uncompressTimestamp<qtmir::Timestamp>(qtmir::Timestamp(timestamp)),
+ cookie, mir_keyboard_action_up, pressedKey.nativeVirtualKey, pressedKey.nativeScanCode,
+ mir_input_event_modifier_none);
+diff --git a/src/modules/QtMir/Application/mirsurface.h b/src/modules/QtMir/Application/mirsurface.h
+index e7866108..e14dae8b 100644
+--- a/src/modules/QtMir/Application/mirsurface.h
++++ b/src/modules/QtMir/Application/mirsurface.h
+@@ -38,7 +38,8 @@
+
+ // mir
+ #include <mir_toolkit/common.h>
+-
++#include <mir_toolkit/mir_input_device_types.h>
++#include <miroil/surface.h>
+
+ class SurfaceObserver;
+
+@@ -130,7 +131,7 @@ public:
+ // methods called from the rendering (scene graph) thread:
+ QSharedPointer<QSGTexture> texture(qintptr userId) override;
+ QSGTexture *weakTexture(qintptr userId) const override;
+- bool updateTexture(qintptr userId) override;
++ std::vector<SubSurfaceTexture> updateTexture(qintptr userId) override;
+ unsigned int currentFrameNumber(qintptr userId) const override;
+ bool numBuffersReadyForCompositor(qintptr userId) override;
+ // end of methods called from the rendering (scene graph) thread
+@@ -225,10 +226,12 @@ private:
+ void forgetPressedKey(quint32 nativeVirtualKey);
+ void releaseAllPressedKeys();
+
+- bool updateTextureLocked(qintptr userId, CompositorTexture* compositorTexture);
++ std::vector<SubSurfaceTexture> updateTextureLocked(qintptr userId, CompositorTexture* compositorTexture);
+
+ const miral::Window m_window;
+ const std::shared_ptr<ExtraWindowInfo> m_extraInfo;
++ // To manage memory
++ std::vector<SubSurfaceTexture> m_subTextures;
+ QString m_name;
+ MirWindowType m_type;
+ int m_minWidth;
+@@ -238,7 +241,7 @@ private:
+ int m_incWidth;
+ int m_incHeight;
+
+- const std::shared_ptr<mir::scene::Surface> m_surface; // keep copy of the Surface for lifecycle
++ const std::shared_ptr<miroil::Surface> m_surface; // keep copy of the Surface for lifecycle
+ QPointer<SessionInterface> m_session;
+ WindowControllerInterface *const m_controller;
+
+@@ -273,6 +276,7 @@ private:
+ bool m_sizePendingChange;
+ QSize m_pendingResize;
+ QString m_keymap;
++ bool m_ssd;
+
+ QCursor m_cursor;
+ Mir::State m_state; // FIXME: remove when Mir gains additional window states to match Mir::State
+diff --git a/src/modules/QtMir/Application/mirsurfaceinterface.h b/src/modules/QtMir/Application/mirsurfaceinterface.h
+index d5fa1dd5..b6384c6b 100644
+--- a/src/modules/QtMir/Application/mirsurfaceinterface.h
++++ b/src/modules/QtMir/Application/mirsurfaceinterface.h
+@@ -57,7 +57,13 @@ public:
+ // methods called from the rendering (scene graph) thread:
+ virtual QSharedPointer<QSGTexture> texture(qintptr userId) = 0;
+ virtual QSGTexture *weakTexture(qintptr userId) const = 0;
+- virtual bool updateTexture(qintptr userId) = 0;
++ struct SubSurfaceTexture
++ {
++ QRectF extent;
++ QSharedPointer<QSGTexture> texture;
++ };
++ virtual std::vector<SubSurfaceTexture> updateTexture(qintptr userId) = 0;
++
+ virtual unsigned int currentFrameNumber(qintptr userId) const = 0;
+ virtual bool numBuffersReadyForCompositor(qintptr userId) = 0;
+ // end of methods called from the rendering (scene graph) thread
+diff --git a/src/modules/QtMir/Application/mirsurfaceitem.cpp b/src/modules/QtMir/Application/mirsurfaceitem.cpp
+index 5b509f36..b78ef201 100644
+--- a/src/modules/QtMir/Application/mirsurfaceitem.cpp
++++ b/src/modules/QtMir/Application/mirsurfaceitem.cpp
+@@ -244,8 +244,9 @@ QSGNode *MirSurfaceItem::updatePaintNode(QSGNode *oldNode, UpdatePaintNodeData *
+ ensureTextureProvider();
+
+ const qintptr userId = (qintptr)window();
++ auto subtextures = m_surface->updateTexture(userId);
+
+- if (!userId || !m_textureProvider->texture() || !m_surface->updateTexture(userId)) {
++ if (!userId || !m_textureProvider->texture() || subtextures.empty()) {
+ delete oldNode;
+ return nullptr;
+ }
+@@ -273,6 +274,64 @@ QSGNode *MirSurfaceItem::updatePaintNode(QSGNode *oldNode, UpdatePaintNodeData *
+ auto texture = m_textureProvider->texture();
+ node->setTexture(texture);
+
++ // If we have no subtextures at all, drop all other childnodes
++ if (subtextures.size() - 1 <= 0) {
++ if (node->childCount() > 0) {
++ qWarning() << " dropping all childnodes";
++ node->removeAllChildNodes();
++ }
++ } else {
++ // - 1 since first subtexture is main texture
++ bool isEqual = subtextures.size() - 1 == node->childCount();
++ if (!isEqual) {
++ qWarning() << "Not equal, recreating childnodes";
++ if (node->childCount() > 0) {
++ qWarning() << " dropping all childnodes";
++ node->removeAllChildNodes();
++ }
++ }
++
++ // Meh, this is not great code
++ int first = 0;
++ for (auto sub : subtextures) {
++ first++;
++ // Skip first subtexture as this is the main texture
++ if (first < 2)
++ continue;
++
++ // Atempt at some caching, we only recrate the nodes if the amount of childnodes
++ // does not match subtextures, this could be better
++ QSGDefaultInternalImageNode *subnode;
++ if (isEqual) {
++ subnode = static_cast<QSGDefaultInternalImageNode*>(node->childAtIndex(first - 2));
++ subnode->markDirty(QSGNode::DirtyMaterial);
++ } else {
++ #if QT_VERSION >= QT_VERSION_CHECK(5, 14, 0)
++ QSGRenderContext *rc = QQuickWindowPrivate::get(window())->context;
++ subnode = new QSGDefaultInternalImageNode(static_cast<QSGDefaultRenderContext *>(rc));
++ #else
++ subnode = new QSGDefaultInternalImageNode;
++ #endif
++ subnode->setMipmapFiltering(QSGTexture::None);
++ subnode->setHorizontalWrapMode(QSGTexture::ClampToEdge);
++ subnode->setVerticalWrapMode(QSGTexture::ClampToEdge);
++ }
++
++ // texture is memory managed by mirsubsufrace's shared buffer
++ subnode->setTexture(sub.texture.data());
++
++ subnode->setSubSourceRect(QRectF(0, 0, 1, 1));
++ subnode->setTargetRect(sub.extent);
++ subnode->setInnerTargetRect(sub.extent);
++ subnode->setFiltering(smooth() ? QSGTexture::Linear : QSGTexture::Nearest);
++ subnode->setAntialiasing(antialiasing());
++ subnode->update();
++
++ if (!isEqual)
++ node->appendChildNode(subnode);
++ }
++ }
++
+ if (m_fillMode == PadOrCrop) {
+ const QSize &textureSize = texture->textureSize();
+
+@@ -280,6 +339,11 @@ QSGNode *MirSurfaceItem::updatePaintNode(QSGNode *oldNode, UpdatePaintNodeData *
+ targetRect.setWidth(qMin(width(), static_cast<qreal>(textureSize.width())));
+ targetRect.setHeight(qMin(height(), static_cast<qreal>(textureSize.height())));
+
++ // x/y from extent is offset
++ auto r = subtextures[0].extent;
++ targetRect.setX(r.x());
++ targetRect.setY(r.y());
++
+ qreal u = targetRect.width() / textureSize.width();
+ qreal v = targetRect.height() / textureSize.height();
+ node->setSubSourceRect(QRectF(0, 0, u, v));
+@@ -288,9 +352,15 @@ QSGNode *MirSurfaceItem::updatePaintNode(QSGNode *oldNode, UpdatePaintNodeData *
+ node->setInnerTargetRect(targetRect);
+ } else {
+ // Stretch
++ const QSize &textureSize = texture->textureSize();
++ qWarning() << "Streethcing" << height() << textureSize.height();
+ node->setSubSourceRect(QRectF(0, 0, 1, 1));
+- node->setTargetRect(QRectF(0, 0, width(), height()));
+- node->setInnerTargetRect(QRectF(0, 0, width(), height()));
++
++ auto r = subtextures[0].extent;
++ auto offset_x = r.x();
++ auto offset_y = r.y();
++ node->setTargetRect(QRectF(offset_x, offset_y, width(), height()));
++ node->setInnerTargetRect(QRectF(offset_x, offset_y, width(), height()));
+ }
+
+ node->setFiltering(smooth() ? QSGTexture::Linear : QSGTexture::Nearest);
+diff --git a/src/modules/QtMir/Application/proc_info.cpp b/src/modules/QtMir/Application/proc_info.cpp
+index 3809cece..aab46115 100644
+--- a/src/modules/QtMir/Application/proc_info.cpp
++++ b/src/modules/QtMir/Application/proc_info.cpp
+@@ -61,6 +61,11 @@ QString ProcInfo::CommandLine::getParameter(const char* name) const
+ return QString(regExpMatch.captured(1));
+ }
+
++QString ProcInfo::CommandLine::getExec() const
++{
++ return asStringList()[0];
++}
++
+
+ std::unique_ptr<ProcInfo::Environment> ProcInfo::environment(pid_t pid)
+ {
+diff --git a/src/modules/QtMir/Application/proc_info.h b/src/modules/QtMir/Application/proc_info.h
+index 2be60b2f..3f589819 100644
+--- a/src/modules/QtMir/Application/proc_info.h
++++ b/src/modules/QtMir/Application/proc_info.h
+@@ -41,6 +41,7 @@ public:
+ bool contains(const char* prefix) const;
+ QString getParameter(const char* name) const;
+ QStringList asStringList() const;
++ QString getExec() const;
+ };
+
+ struct Environment {
+diff --git a/src/modules/QtMir/Application/session.cpp b/src/modules/QtMir/Application/session.cpp
+index c47d1a28..97477c88 100644
+--- a/src/modules/QtMir/Application/session.cpp
++++ b/src/modules/QtMir/Application/session.cpp
+@@ -64,7 +64,7 @@ const char *sessionStateToString(SessionInterface::State state)
+ }
+
+ Session::Session(const std::shared_ptr<ms::Session>& session,
+- const std::shared_ptr<PromptSessionManager>& promptSessionManager,
++ const std::shared_ptr<miroil::PromptSessionManager>& promptSessionManager,
+ QObject *parent)
+ : SessionInterface(parent)
+ , m_session(session)
+@@ -302,7 +302,7 @@ void Session::suspend()
+ m_suspendTimer->start();
+
+ foreachPromptSession([this](const qtmir::PromptSession &promptSession) {
+- m_promptSessionManager->suspendPromptSession(promptSession);
++ m_promptSessionManager->suspend_prompt_session(promptSession);
+ });
+
+ foreachChildSession([](SessionInterface* session) {
+@@ -334,7 +334,7 @@ void Session::doResume()
+ miral::apply_lifecycle_state_to(session(), mir_lifecycle_state_resumed);
+
+ foreachPromptSession([this](const qtmir::PromptSession &promptSession) {
+- m_promptSessionManager->resumePromptSession(promptSession);
++ m_promptSessionManager->resume_prompt_session(promptSession);
+ });
+
+ foreachChildSession([](SessionInterface* session) {
+@@ -494,7 +494,7 @@ void Session::stopPromptSessions()
+ qtmir::PromptSession promptSession = it.previous();
+ DEBUG_MSG << " - promptSession=" << promptSession.get();
+
+- m_promptSessionManager->stopPromptSession(promptSession);
++ m_promptSessionManager->stop_prompt_session(promptSession);
+ }
+ }
+
+diff --git a/src/modules/QtMir/Application/session.h b/src/modules/QtMir/Application/session.h
+index 1d9fa2b2..4bf19cd6 100644
+--- a/src/modules/QtMir/Application/session.h
++++ b/src/modules/QtMir/Application/session.h
+@@ -23,17 +23,17 @@
+ // local
+ #include "session_interface.h"
+ #include "mirsurfacelistmodel.h"
+-#include "promptsessionmanager.h"
+ #include "timer.h"
+
++// mir
++#include <miroil/prompt_session_manager.h>
++
+ // Qt
+ #include <QObject>
+
+
+ namespace qtmir {
+
+-class PromptSessionManager;
+-
+ class Application;
+
+ class Session : public SessionInterface
+@@ -41,7 +41,7 @@ class Session : public SessionInterface
+ Q_OBJECT
+ public:
+ explicit Session(const std::shared_ptr<mir::scene::Session>& session,
+- const std::shared_ptr<PromptSessionManager>& promptSessionManager,
++ const std::shared_ptr<miroil::PromptSessionManager>& promptSessionManager,
+ QObject *parent = 0);
+ virtual ~Session();
+
+@@ -119,7 +119,7 @@ protected:
+ bool m_live;
+ AbstractTimer* m_suspendTimer{nullptr};
+ QVector<PromptSession> m_promptSessions;
+- std::shared_ptr<PromptSessionManager> const m_promptSessionManager;
++ std::shared_ptr<miroil::PromptSessionManager> const m_promptSessionManager;
+ QList<MirSurfaceInterface*> m_closingSurfaces;
+ bool m_hadSurface{false};
+ };
+diff --git a/src/modules/QtMir/Application/taskcontroller.cpp b/src/modules/QtMir/Application/taskcontroller.cpp
+index a53467a9..7467af93 100644
+--- a/src/modules/QtMir/Application/taskcontroller.cpp
++++ b/src/modules/QtMir/Application/taskcontroller.cpp
+@@ -51,7 +51,7 @@ TaskController::TaskController(QObject *parent)
+ auto appNotifier = static_cast<AppNotifier*>(nativeInterface->nativeResourceForIntegration("AppNotifier"));
+ connectToAppNotifier(appNotifier);
+
+- auto promptSessionListener = static_cast<PromptSessionListener*>(nativeInterface->nativeResourceForIntegration("PromptSessionListener"));
++ auto promptSessionListener = static_cast<qtmir::PromptSessionListener*>(nativeInterface->nativeResourceForIntegration("PromptSessionListener"));
+ connectToPromptSessionListener(promptSessionListener);
+
+ auto sessionAuthorizer = static_cast<SessionAuthorizer*>(nativeInterface->nativeResourceForIntegration("SessionAuthorizer"));
+@@ -59,7 +59,7 @@ TaskController::TaskController(QObject *parent)
+ this, &TaskController::authorizationRequestedForSession, Qt::DirectConnection);
+ }
+
+-TaskController::TaskController(std::shared_ptr<PromptSessionManager> &promptSessionManager, QObject *parent)
++TaskController::TaskController(std::shared_ptr<miroil::PromptSessionManager> &promptSessionManager, QObject *parent)
+ : QObject(parent)
+ , m_promptSessionManager(promptSessionManager)
+ {
+@@ -98,7 +98,7 @@ void TaskController::onPromptSessionStarting(const qtmir::PromptSession &promptS
+ {
+ DEBUG_MSG << " - promptSession=" << promptSession.get();
+
+- std::shared_ptr<mir::scene::Session> appSession = m_promptSessionManager->applicationFor(promptSession);
++ std::shared_ptr<mir::scene::Session> appSession = m_promptSessionManager->application_for(promptSession);
+ SessionInterface *qmlAppSession = findSession(appSession.get());
+ if (qmlAppSession) {
+ m_mirPromptToSessionHash[promptSession.get()] = qmlAppSession;
+@@ -170,7 +170,7 @@ void TaskController::connectToAppNotifier(AppNotifier *appNotifier)
+ this, &TaskController::onSessionStopping);
+ }
+
+-void TaskController::connectToPromptSessionListener(PromptSessionListener *listener)
++void TaskController::connectToPromptSessionListener(qtmir::PromptSessionListener *listener)
+ {
+ QObject::connect(listener, &PromptSessionListener::promptSessionStarting,
+ this, &TaskController::onPromptSessionStarting);
+diff --git a/src/modules/QtMir/Application/taskcontroller.h b/src/modules/QtMir/Application/taskcontroller.h
+index f709aa48..4f0729f5 100644
+--- a/src/modules/QtMir/Application/taskcontroller.h
++++ b/src/modules/QtMir/Application/taskcontroller.h
+@@ -29,7 +29,7 @@
+ #include <miral/application_info.h>
+
+ // mirserver
+-#include "promptsessionmanager.h"
++#include <miroil/prompt_session_manager.h>
+
+ namespace mir {
+ namespace scene {
+@@ -46,13 +46,13 @@ namespace lomiri {
+ }
+ }
+
+-class PromptSessionListener;
+-
+ namespace qtmir
+ {
+
+ class AppNotifier;
+ class ApplicationInfo;
++class PromptSession;
++class PromptSessionListener;
+ class SessionInterface;
+
+ class TaskController : public QObject
+@@ -107,13 +107,13 @@ public Q_SLOTS:
+
+ protected:
+ TaskController(QObject *parent = nullptr);
+- TaskController(std::shared_ptr<PromptSessionManager>&, QObject *parent = nullptr);
++ TaskController(std::shared_ptr<miroil::PromptSessionManager>&, QObject *parent = nullptr);
+
+ private:
+ void connectToAppNotifier(AppNotifier *);
+ void connectToPromptSessionListener(PromptSessionListener *);
+
+- std::shared_ptr<PromptSessionManager> m_promptSessionManager;
++ std::shared_ptr<miroil::PromptSessionManager> m_promptSessionManager;
+
+ QHash<const mir::scene::PromptSession *, SessionInterface *> m_mirPromptToSessionHash;
+ QList<SessionInterface*> m_sessionList;
+diff --git a/src/platforms/mirserver/CMakeLists.txt b/src/platforms/mirserver/CMakeLists.txt
+index 8f676ce5..d1a63e69 100644
+--- a/src/platforms/mirserver/CMakeLists.txt
++++ b/src/platforms/mirserver/CMakeLists.txt
+@@ -6,7 +6,14 @@ include(UseLttngGenTp)
+
+ set(QTMIRSERVER_ABI 1)
+
+-add_subdirectory(miral)
++set(qtmir_include ${CMAKE_SOURCE_DIR}/include)
++
++if(NOT WITH_MIR2)
++ set(MIROIL_INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/miroil/include)
++ add_subdirectory(miroil)
++endif()
++
++add_subdirectory(wayland-generated)
+
+ # Hacks for the QPA privates monster.
+ pkg_check_modules(FONTCONFIG fontconfig REQUIRED)
+@@ -41,6 +48,9 @@ include_directories(
+ ${CMAKE_CURRENT_BINARY_DIR} # for tracepoints.h
+ )
+
++set(MIRCOMMON_INCLUDE_DIRS /usr/include/mircommon/)
++set(MIRCOMMON_LDFLAGS "-lmircommon")
++
+ include_directories(
+ SYSTEM
+ ${MIRAL_INCLUDE_DIRS}
+@@ -48,6 +58,8 @@ include_directories(
+ ${MIRSERVER_INCLUDE_DIRS}
+ ${MIRRENDERERGLDEV_INCLUDE_DIRS}
+ ${MIRSERVER_INCLUDE_DIRS}
++ ${MIROIL_INCLUDE_DIRS}
++ ${MIRWAYLAND_INCLUDE_DIRS}
+
+ ${URL_DISPATCHER_INCLUDE_DIRS}
+ ${EGL_INCLUDE_DIRS}
+@@ -98,6 +110,7 @@ add_library(qtmirserver-nomirserver OBJECT
+ displayconfigurationstorage.cpp
+ nativeinterface.cpp
+ services.cpp
++ urlbuilderdispatcher.cpp
+ windowcontroller.cpp
+ workspacecontroller.cpp
+ tracepoints.c
+@@ -114,17 +127,14 @@ include_directories(SYSTEM ${MIRSERVER_INCLUDE_DIRS})
+
+ # These files will only compile with mirserver-dev
+ add_library(qtmirserver-mirserver OBJECT
+- openglcontextfactory.cpp openglcontextfactory.h
+- mircursorimages.cpp
+ screenscontroller.cpp
+ qtcompositor.cpp
+ displayconfigurationpolicy.cpp
+ wrappedwindowmanagementpolicy.cpp
+- mirdisplayconfigurationobserver.cpp
+- mirserverhooks.cpp mirserverhooks.h
+- setqtcompositor.cpp setqtcompositor.h
+- eventdispatch.cpp eventdispatch.h
+- promptsessionmanager.cpp promptsessionmanager.h promptsession.h
++ # mirdisplayconfigurationobserver.cpp
++ wayland-generated/qt-windowmanager_wrapper.cpp
++ wayland-generated/xdg-decoration-unstable-v1_wrapper.cpp
++ wayland-generated/server-decoration_wrapper.cpp
+ )
+ add_dependencies(qtmirserver-mirserver MirServer_LTTNG)
+
+@@ -133,6 +143,7 @@ set(QMIRSERVER_PLUGIN_SRC
+ ${CMAKE_SOURCE_DIR}/src/common/debughelpers.cpp
+ cursor.cpp
+ eventbuilder.cpp
++ qtwindowmanager.cpp
+ qteventfeeder.cpp
+ qmirserver.cpp
+ qmirserver_p.cpp
+@@ -145,6 +156,9 @@ set(QMIRSERVER_PLUGIN_SRC
+ mirserverapplication.cpp
+ windowmodelnotifier.cpp
+
++ wayland/xdgdecorationV1.cpp
++ wayland/kwinserverdecoration.cpp
++
+ # We need to run moc on these headers
+ ${APPLICATION_API_INCLUDEDIR}/lomiri/shell/application/MirMousePointerInterface.h
+ ${APPLICATION_API_INCLUDEDIR}/lomiri/shell/application/Mir.h
+@@ -165,16 +179,22 @@ set(QMIRSERVER_PLUGIN_SRC
+ ${CMAKE_SOURCE_DIR}/src/common/appnotifier.h
+ )
+
++if(NOT WITH_MIR2)
++ set(MIROIL_OBJ $<TARGET_OBJECTS:miroil>)
++endif()
++
+ add_library(qtmirserver SHARED
+ ${QMIRSERVER_PLUGIN_SRC}
+ $<TARGET_OBJECTS:qtmirserver-nomirserver>
+ $<TARGET_OBJECTS:qtmirserver-mirserver>
+- $<TARGET_OBJECTS:miral-prototypes>
++ ${MIROIL_OBJ}
+ )
+
+ target_link_libraries(qtmirserver
+ PUBLIC
+ ${MIRAL_LDFLAGS}
++ ${MIROIL_LDFLAGS}
++ ${MIROIL_LIBRARIES}
+ ${MIRSERVER_LDFLAGS}
+ Qt5::Core
+ Qt5::Gui
+@@ -188,6 +208,11 @@ target_link_libraries(qtmirserver
+ ${FONTCONFIG_LDFLAGS}
+ ${XKBCOMMON_LIBRARIES}
+
++ ${MIRCOMMON_LDFLAGS}
++ ${MIRWAYLAND_LDFLAGS}
++ ${WAYLAND_CLIENT_LIBRARIES}
++ ${WAYLAND_SERVER_LDFLAGS}
++
+ ${CONTENT_HUB_LIBRARIES}
+
+ Qt5::DBus
+@@ -225,6 +250,15 @@ install(
+ DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig
+ )
+
++if(NOT WITH_MIR2)
++ # To avoid conflicts, we install to qtmir include
++ # and since do -I/some/thing/qtmir in the .pc we can
++ # include miroil as <miroil/blah>
++ install(
++ DIRECTORY ${CMAKE_SOURCE_DIR}/include/miroil
++ DESTINATION "include/qtmir"
++ )
++endif()
+
+ add_library(qpa-mirserver SHARED
+ mirserverintegration.cpp
+diff --git a/src/platforms/mirserver/eventbuilder.cpp b/src/platforms/mirserver/eventbuilder.cpp
+index eca408e1..9cd54cb1 100644
+--- a/src/platforms/mirserver/eventbuilder.cpp
++++ b/src/platforms/mirserver/eventbuilder.cpp
+@@ -21,9 +21,6 @@
+ // common
+ #include <timestamp.h>
+
+-#include <mir_toolkit/event.h>
+-#include <mir_toolkit/mir_cookie.h>
+-
+ #include <QDebug>
+
+ namespace {
+@@ -96,7 +93,6 @@ EventBuilder *EventBuilder::instance()
+ }
+
+ EventBuilder::EventBuilder()
+- : m_eventInfoVector(10)
+ {
+ }
+
+@@ -105,18 +101,6 @@ EventBuilder::~EventBuilder()
+ m_instance = nullptr;
+ }
+
+-void EventBuilder::store(const MirInputEvent *mirInputEvent, ulong qtTimestamp)
+-{
+- EventInfo &eventInfo = m_eventInfoVector[m_nextIndex];
+- eventInfo.store(mirInputEvent, qtTimestamp);
+-
+- m_nextIndex = (m_nextIndex + 1) % m_eventInfoVector.size();
+-
+- if (m_count < m_eventInfoVector.size()) {
+- ++m_count;
+- }
+-}
+-
+ mir::EventUPtr EventBuilder::reconstructMirEvent(QMouseEvent *qtEvent)
+ {
+ auto buttons = getMirButtonsFromQt(qtEvent->buttons());
+@@ -143,19 +127,19 @@ mir::EventUPtr EventBuilder::makeMirEvent(QInputEvent *qtEvent, int x, int y, Mi
+ // Timestamp will be zero in case of synthetic events. Particularly synthetic QHoverEvents caused
+ // by item movement under a stationary mouse pointer.
+ if (qtEvent->timestamp() != 0) {
+- auto eventInfo = findInfo(qtEvent->timestamp());
++ auto eventInfo = find_info(qtEvent->timestamp());
+ if (eventInfo) {
+- relativeX = eventInfo->relativeX;
+- relativeY = eventInfo->relativeY;
+- deviceId = eventInfo->deviceId;
++ relativeX = eventInfo->relative_x;
++ relativeY = eventInfo->relative_y;
++ deviceId = eventInfo->device_id;
+ cookie = eventInfo->cookie;
+ } else {
+ qCWarning(QTMIR_MIR_INPUT) << "EventBuilder::makeMirEvent didn't find EventInfo with timestamp" << qtEvent->timestamp();
+ }
+ }
+
+- return mir::events::make_event(deviceId, timestamp, cookie, modifiers, action,
+- buttons, x, y, 0 /*hscroll*/, 0 /*vscroll*/, relativeX, relativeY);
++ return make_pointer_event(deviceId, timestamp, cookie, modifiers, action,
++ buttons, x, y, 0 /*hscroll*/, 0 /*vscroll*/, relativeX, relativeY);
+ }
+
+ mir::EventUPtr EventBuilder::makeMirEvent(QWheelEvent *qtEvent)
+@@ -172,19 +156,19 @@ mir::EventUPtr EventBuilder::makeMirEvent(QWheelEvent *qtEvent)
+ mirScroll /= 120.0f;
+
+ if (qtEvent->timestamp() != 0) {
+- auto eventInfo = findInfo(qtEvent->timestamp());
++ auto eventInfo = find_info(qtEvent->timestamp());
+ if (eventInfo) {
+- deviceId = eventInfo->deviceId;
++ deviceId = eventInfo->device_id;
+ cookie = eventInfo->cookie;
+ } else {
+ qCWarning(QTMIR_MIR_INPUT) << "EventBuilder::makeMirEvent didn't find EventInfo with timestamp" << qtEvent->timestamp();
+ }
+ }
+
+- return mir::events::make_event(deviceId, timestamp, cookie, modifiers, mir_pointer_action_motion,
+- buttons, qtEvent->x(), qtEvent->y(),
+- mirScroll.x(), mirScroll.y(),
+- 0, 0);
++ return make_pointer_event(deviceId, timestamp, cookie, modifiers, mir_pointer_action_motion,
++ buttons, qtEvent->x(), qtEvent->y(),
++ mirScroll.x(), mirScroll.y(),
++ 0, 0);
+ }
+
+ mir::EventUPtr EventBuilder::makeMirEvent(QKeyEvent *qtEvent)
+@@ -207,19 +191,19 @@ mir::EventUPtr EventBuilder::makeMirEvent(QKeyEvent *qtEvent)
+ std::vector<uint8_t> cookie{};
+
+ if (qtEvent->timestamp() != 0) {
+- auto eventInfo = findInfo(qtEvent->timestamp());
++ auto eventInfo = find_info(qtEvent->timestamp());
+ if (eventInfo) {
+- deviceId = eventInfo->deviceId;
++ deviceId = eventInfo->device_id;
+ cookie = eventInfo->cookie;
+ } else {
+ qCWarning(QTMIR_MIR_INPUT) << "EventBuilder::makeMirEvent didn't find EventInfo with timestamp" << qtEvent->timestamp();
+ }
+ }
+
+- return mir::events::make_event(deviceId, uncompressTimestamp<qtmir::Timestamp>(qtmir::Timestamp(qtEvent->timestamp())),
+- cookie, action, qtEvent->nativeVirtualKey(),
+- qtEvent->nativeScanCode(),
+- qtEvent->nativeModifiers());
++ return make_key_event(deviceId, uncompressTimestamp<qtmir::Timestamp>(qtmir::Timestamp(qtEvent->timestamp())),
++ cookie, action, qtEvent->nativeVirtualKey(),
++ qtEvent->nativeScanCode(),
++ qtEvent->nativeModifiers());
+ }
+
+ mir::EventUPtr EventBuilder::makeMirEvent(Qt::KeyboardModifiers qmods,
+@@ -231,9 +215,9 @@ mir::EventUPtr EventBuilder::makeMirEvent(Qt::KeyboardModifiers qmods,
+ std::vector<uint8_t> cookie{};
+
+ if (qtTimestamp != 0) {
+- auto eventInfo = findInfo(qtTimestamp);
++ auto eventInfo = find_info(qtTimestamp);
+ if (eventInfo) {
+- deviceId = eventInfo->deviceId;
++ deviceId = eventInfo->device_id;
+ cookie = eventInfo->cookie;
+ } else {
+ qCWarning(QTMIR_MIR_INPUT) << "EventBuilder::makeMirEvent didn't find EventInfo with timestamp" << qtTimestamp;
+@@ -241,8 +225,8 @@ mir::EventUPtr EventBuilder::makeMirEvent(Qt::KeyboardModifiers qmods,
+ }
+
+ auto modifiers = getMirModifiersFromQt(qmods);
+- auto ev = mir::events::make_event(deviceId, uncompressTimestamp<qtmir::Timestamp>(qtmir::Timestamp(qtTimestamp)),
+- cookie, modifiers);
++ auto ev = make_touch_event(deviceId, uncompressTimestamp<qtmir::Timestamp>(qtmir::Timestamp(qtTimestamp)),
++ cookie, modifiers);
+
+ for (int i = 0; i < qtTouchPoints.count(); ++i) {
+ auto touchPoint = qtTouchPoints.at(i);
+@@ -262,44 +246,13 @@ mir::EventUPtr EventBuilder::makeMirEvent(Qt::KeyboardModifiers qmods,
+ if (touchPoint.flags() & QTouchEvent::TouchPoint::Pen)
+ tooltype = mir_touch_tooltype_stylus;
+
+- mir::events::add_touch(*ev, id, action, tooltype,
+- touchPoint.pos().x(), touchPoint.pos().y(),
+- touchPoint.pressure(),
+- touchPoint.rect().width(),
+- touchPoint.rect().height(),
+- 0 /* size */);
++ add_touch(*ev, id, action, tooltype,
++ touchPoint.pos().x(), touchPoint.pos().y(),
++ touchPoint.pressure(),
++ touchPoint.rect().width(),
++ touchPoint.rect().height(),
++ 0 /* size */);
+ }
+
+ return ev;
+ }
+-
+-EventBuilder::EventInfo *EventBuilder::findInfo(ulong qtTimestamp)
+-{
+- for (int i = 0; i < m_count; ++i) {
+- if (m_eventInfoVector[i].qtTimestamp == qtTimestamp) {
+- return &m_eventInfoVector[i];
+- }
+- }
+- return nullptr;
+-}
+-
+-void EventBuilder::EventInfo::store(const MirInputEvent *iev, ulong qtTimestamp)
+-{
+- this->qtTimestamp = qtTimestamp;
+- deviceId = mir_input_event_get_device_id(iev);
+- if (mir_input_event_has_cookie(iev))
+- {
+- auto cookie_ptr = mir_input_event_get_cookie(iev);
+- cookie.resize(mir_cookie_buffer_size(cookie_ptr));
+- mir_cookie_to_buffer(cookie_ptr, cookie.data(), cookie.size());
+- mir_cookie_release(cookie_ptr);
+- } else {
+- cookie.resize(0);
+- }
+- if (mir_input_event_type_pointer == mir_input_event_get_type(iev))
+- {
+- auto pev = mir_input_event_get_pointer_event(iev);
+- relativeX = mir_pointer_event_axis_value(pev, mir_pointer_axis_relative_x);
+- relativeY = mir_pointer_event_axis_value(pev, mir_pointer_axis_relative_y);
+- }
+-}
+diff --git a/src/platforms/mirserver/eventbuilder.h b/src/platforms/mirserver/eventbuilder.h
+index 708ffd62..aeb462c5 100644
+--- a/src/platforms/mirserver/eventbuilder.h
++++ b/src/platforms/mirserver/eventbuilder.h
+@@ -16,6 +16,7 @@
+
+ #ifndef QTMIR_EVENT_REGISTRY_H
+ #define QTMIR_EVENT_REGISTRY_H
++#include <miroil/event_builder.h>
+
+ #include <QtGlobal>
+ #include <QHoverEvent>
+@@ -25,10 +26,6 @@
+ #include <QTouchEvent>
+ #include <QVector>
+
+-#include <mir/events/event_builders.h>
+-
+-class MirPointerEvent;
+-
+ namespace qtmir {
+
+ /*
+@@ -37,17 +34,13 @@ namespace qtmir {
+ One important feature is that it's able to match a QInputEvent with the MirInputEvent that originated it, so
+ it can make a MirInputEvent version of a QInputEvent containing also information that the latter does not carry,
+ such as relative axis movement for pointer devices.
+- */
+-class EventBuilder {
++*/
++class EventBuilder : public miroil::EventBuilder {
+ public:
+ static EventBuilder *instance();
+ EventBuilder();
+ virtual ~EventBuilder();
+
+- /* Stores information that cannot be carried by QInputEvents so that it can be fully
+- reconstructed later given the same qtTimestamp */
+- void store(const MirInputEvent *mirInputEvent, ulong qtTimestamp);
+-
+ /*
+ Builds a MirEvent version of the given QInputEvent using also extra data from the
+ MirPointerEvent that caused it.
+@@ -69,37 +62,10 @@ public:
+ const QList<QTouchEvent::TouchPoint> &qtTouchPoints,
+ Qt::TouchPointStates /* qtTouchPointStates */,
+ ulong qtTimestamp);
+- class EventInfo {
+- public:
+- void store(const MirInputEvent *mirInputEvent, ulong qtTimestamp);
+- ulong qtTimestamp;
+- MirInputDeviceId deviceId;
+- std::vector<uint8_t> cookie;
+- float relativeX{0};
+- float relativeY{0};
+- };
+-
+- EventInfo *findInfo(ulong qtTimestamp);
+
+ private:
+ mir::EventUPtr makeMirEvent(QInputEvent *qtEvent, int x, int y, MirPointerButtons buttons);
+
+-
+- /*
+- Ring buffer that stores information on recent MirInputEvents that cannot be carried by QInputEvents.
+-
+- When MirInputEvents are dispatched through a QML scene, not all of its information can be carried
+- by QInputEvents. Some information is lost. Thus further on, if we want to transform a QInputEvent back into
+- its original MirInputEvent so that it can be consumed by a mir::scene::Surface and properly handled by mir clients
+- we have to reach out to this EventRegistry to get the missing bits.
+-
+- Given the objective of this EventRegistry (MirInputEvent reconstruction after having gone through QQuickWindow input dispatch
+- as a QInputEvent), it stores information only about the most recent MirInputEvents.
+- */
+- QVector<EventInfo> m_eventInfoVector;
+- int m_nextIndex{0};
+- int m_count{0};
+-
+ static EventBuilder *m_instance;
+ };
+
+diff --git a/src/platforms/mirserver/inputdeviceobserver.cpp b/src/platforms/mirserver/inputdeviceobserver.cpp
+index 60e59c09..3a61e20c 100644
+--- a/src/platforms/mirserver/inputdeviceobserver.cpp
++++ b/src/platforms/mirserver/inputdeviceobserver.cpp
+@@ -14,9 +14,6 @@
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+-#include <mir/input/device.h>
+-#include <mir/input/mir_keyboard_config.h>
+-
+ #include <Qt>
+ #include <QTimer>
+
+@@ -49,12 +46,12 @@ void MirInputDeviceObserver::setKeymap(const QString &keymap)
+
+ void MirInputDeviceObserver::applyKeymap()
+ {
+- Q_FOREACH(const auto &device, m_devices) {
++ Q_FOREACH(auto &device, m_devices) {
+ applyKeymap(device);
+ }
+ }
+
+-void MirInputDeviceObserver::applyKeymap(const std::shared_ptr<mi::Device> &device)
++void MirInputDeviceObserver::applyKeymap(miroil::InputDevice device)
+ {
+ if (!m_keymap.isEmpty()) {
+ const QStringList stringList = m_keymap.split('+', QString::SkipEmptyParts);
+@@ -66,20 +63,11 @@ void MirInputDeviceObserver::applyKeymap(const std::shared_ptr<mi::Device> &devi
+ variant = stringList.at(1);
+ }
+
+- qCDebug(QTMIR_MIR_KEYMAP) << "Applying keymap" << layout << variant << "on" << device->id() << QString::fromStdString(device->name());
+- MirKeyboardConfig oldConfig;
+- mi::Keymap keymap;
+- if (device->keyboard_configuration().is_set()) { // preserve the model and options
+- oldConfig = device->keyboard_configuration().value();
+- keymap.model = oldConfig.device_keymap().model;
+- keymap.options = oldConfig.device_keymap().options;
+- }
+- keymap.layout = layout.toStdString();
+- keymap.variant = variant.toStdString();
++ qCDebug(QTMIR_MIR_KEYMAP) << "Applying keymap" << layout << variant << "on" << device.get_device_id() << QString::fromStdString(device.get_device_name());
+
+ try
+ {
+- device->apply_keyboard_configuration(std::move(keymap));
++ device.apply_keymap(layout.toStdString(), variant.toStdString());
+ qCDebug(QTMIR_MIR_KEYMAP) << "Keymap applied";
+ }
+ catch(std::exception const& e)
+@@ -88,3 +76,25 @@ void MirInputDeviceObserver::applyKeymap(const std::shared_ptr<mi::Device> &devi
+ }
+ }
+ }
++
++void MirInputDeviceObserver::device_added(miroil::InputDevice device)
++{
++ QMutexLocker locker(&m_mutex); // lock so that Qt and Mir don't apply the keymap at the same time
++
++ if (device.is_keyboard() && device.is_alpha_numeric()) {
++ qCDebug(QTMIR_MIR_KEYMAP) << "Device added" << device.get_device_id();
++ m_devices.append(device);
++ applyKeymap(device);
++ }
++}
++
++void MirInputDeviceObserver::device_removed(miroil::InputDevice device)
++{
++ QMutexLocker locker(&m_mutex); // lock so that Qt and Mir don't apply the keymap at the same time
++
++ auto i = m_devices.indexOf(device);
++ if (i >= 0) {
++ qCDebug(QTMIR_MIR_KEYMAP) << "Device removed" << device.get_device_id();
++ m_devices.remove(i);
++ }
++}
+diff --git a/src/platforms/mirserver/inputdeviceobserver.h b/src/platforms/mirserver/inputdeviceobserver.h
+index 1fb56243..c0199389 100644
+--- a/src/platforms/mirserver/inputdeviceobserver.h
++++ b/src/platforms/mirserver/inputdeviceobserver.h
+@@ -14,8 +14,8 @@
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+-#ifndef INPUTDEVICEOBSERVER_H
+-#define INPUTDEVICEOBSERVER_H
++#ifndef QTMIR_MIR_INPUT_DEVICE_OBSERVER_H
++#define QTMIR_MIR_INPUT_DEVICE_OBSERVER_H
+
+ #include <QObject>
+ #include <QString>
+@@ -23,11 +23,13 @@
+ #include <QMutex>
+ #include <memory>
+
++#include "miroil/input_device_observer.h"
++
+ namespace mir { namespace input { class Device; }}
+
+ namespace qtmir {
+
+-class MirInputDeviceObserver: public QObject
++class MirInputDeviceObserver: public QObject, public miroil::InputDeviceObserver
+ {
+ Q_OBJECT
+ public:
+@@ -39,10 +41,12 @@ private Q_SLOTS:
+
+ protected:
+ void applyKeymap();
+- void applyKeymap(const std::shared_ptr<mir::input::Device> &device);
++ void applyKeymap(miroil::InputDevice device);
++ void device_added(miroil::InputDevice device);
++ void device_removed(miroil::InputDevice device);
+
+ QString m_keymap;
+- QVector<std::shared_ptr<mir::input::Device>> m_devices;
++ QVector<miroil::InputDevice> m_devices;
+ QMutex m_mutex;
+ };
+
+diff --git a/src/platforms/mirserver/logging.cpp b/src/platforms/mirserver/logging.cpp
+index af12e7d5..1bed03d1 100644
+--- a/src/platforms/mirserver/logging.cpp
++++ b/src/platforms/mirserver/logging.cpp
+@@ -26,3 +26,4 @@ Q_LOGGING_CATEGORY(QTMIR_CLIPBOARD, "qtmir.clipboard")
+ Q_LOGGING_CATEGORY(QTMIR_SENSOR_MESSAGES, "qtmir.sensor")
+ Q_LOGGING_CATEGORY(QTMIR_SCREENS, "qtmir.screens")
+ Q_LOGGING_CATEGORY(QTMIR_DBUS, "qtmir.dbus", QtWarningMsg)
++Q_LOGGING_CATEGORY(QTMIR_URLBUILDER, "qtmir.urlbuilder", QtInfoMsg)
+diff --git a/src/platforms/mirserver/logging.h b/src/platforms/mirserver/logging.h
+index 43d5d50f..4f93fe0d 100644
+--- a/src/platforms/mirserver/logging.h
++++ b/src/platforms/mirserver/logging.h
+@@ -28,5 +28,6 @@ Q_DECLARE_LOGGING_CATEGORY(QTMIR_MIR_KEYMAP)
+ Q_DECLARE_LOGGING_CATEGORY(QTMIR_CLIPBOARD)
+ Q_DECLARE_LOGGING_CATEGORY(QTMIR_SCREENS)
+ Q_DECLARE_LOGGING_CATEGORY(QTMIR_DBUS)
++Q_DECLARE_LOGGING_CATEGORY(QTMIR_URLBUILDER)
+
+ #endif // UBUNTU_APPLICATION_PLUGIN_LOGGING_H
+diff --git a/src/platforms/mirserver/miral/CMakeLists.txt b/src/platforms/mirserver/miral/CMakeLists.txt
+deleted file mode 100644
+index 9f254c98..00000000
+--- a/src/platforms/mirserver/miral/CMakeLists.txt
++++ /dev/null
+@@ -1,14 +0,0 @@
+-include_directories(SYSTEM ${MIRSERVER_INCLUDE_DIRS} ${MIRRENDERERGLDEV_INCLUDE_DIRS})
+-
+-include_directories(
+- ${CMAKE_SOURCE_DIR}/include
+-)
+-
+-add_library(miral-prototypes OBJECT
+- persist_display_config.cpp persist_display_config.h
+- mirbuffer.cpp mirbuffer.h
+- ${CMAKE_SOURCE_DIR}/include/qtmir/miral/display_configuration_storage.h
+- edid.cpp ${CMAKE_SOURCE_DIR}/include/qtmir/miral/display_id.h
+- edid.cpp ${CMAKE_SOURCE_DIR}/include/qtmir/miral/edid.h
+- display_configuration_policy.cpp ${CMAKE_SOURCE_DIR}/include/qtmir/miral/display_configuration_policy.h
+-)
+diff --git a/src/platforms/mirserver/miroil/CMakeLists.txt b/src/platforms/mirserver/miroil/CMakeLists.txt
+new file mode 100644
+index 00000000..febd4f0a
+--- /dev/null
++++ b/src/platforms/mirserver/miroil/CMakeLists.txt
+@@ -0,0 +1 @@
++add_subdirectory(src)
+diff --git a/src/platforms/mirserver/miroil/include/miroil/compositor.h b/src/platforms/mirserver/miroil/include/miroil/compositor.h
+new file mode 100644
+index 00000000..2edf40e2
+--- /dev/null
++++ b/src/platforms/mirserver/miroil/include/miroil/compositor.h
+@@ -0,0 +1,40 @@
++/*
++ * Copyright © 2021 Canonical Ltd.
++ *
++ * This program is free software: you can redistribute it and/or modify it
++ * under the terms of the GNU General Public License version 3,
++ * as published by the Free Software Foundation.
++ *
++ * This program is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ * GNU General Public License for more details.
++ *
++ * You should have received a copy of the GNU General Public License
++ * along with this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++#ifndef MIROIL_COMPOSITOR_H
++#define MIROIL_COMPOSITOR_H
++
++namespace miroil
++{
++
++class Compositor
++{
++ public:
++ virtual ~Compositor();
++
++ Compositor& operator=(Compositor const&) = delete;
++
++ virtual void start() = 0;
++ virtual void stop() = 0;
++
++protected:
++ Compositor() = default;
++ Compositor(Compositor const&) = delete;
++};
++
++}
++
++#endif // MIROIL_COMPOSITOR_H
+diff --git a/src/platforms/mirserver/miroil/include/miroil/display_configuration_controller_wrapper.h b/src/platforms/mirserver/miroil/include/miroil/display_configuration_controller_wrapper.h
+new file mode 100644
+index 00000000..6b4f227a
+--- /dev/null
++++ b/src/platforms/mirserver/miroil/include/miroil/display_configuration_controller_wrapper.h
+@@ -0,0 +1,51 @@
++/*
++ * Copyright (C) 2021 Canonical, Ltd.
++ *
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU Lesser General Public License version 3, as published by
++ * the Free Software Foundation.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranties of MERCHANTABILITY,
++ * SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ * Lesser General Public License for more details.
++ *
++ * You should have received a copy of the GNU Lesser General Public License
++ * along with this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++#ifndef MIROIL_DISPLAY_CONFIGURATION_CONTROLLER_WRAPPER_H_
++#define MIROIL_DISPLAY_CONFIGURATION_CONTROLLER_WRAPPER_H_
++
++#include <memory>
++
++namespace mir { namespace shell { class DisplayConfigurationController; } }
++namespace mir { namespace graphics { class DisplayConfiguration; } }
++
++namespace miroil
++{
++
++class DisplayConfigurationControllerWrapper
++{
++public:
++ DisplayConfigurationControllerWrapper(std::shared_ptr<mir::shell::DisplayConfigurationController> const & wrapped);
++ ~DisplayConfigurationControllerWrapper() = default;
++
++ /**
++ * Set the base display configuration.
++ *
++ * This is the display configuration that is used by default, but will be
++ * overridden by a client's requested configuration if that client is focused.
++ *
++ * \param [in] conf The new display configuration to set
++ */
++ void set_base_configuration(std::shared_ptr<mir::graphics::DisplayConfiguration> const& conf);
++
++private:
++ std::shared_ptr<mir::shell::DisplayConfigurationController> const & wrapped;
++};
++
++}
++
++#endif //MIROIL_DISPLAY_CONFIGURATION_CONTROLLER_WRAPPER_H_
++
+diff --git a/src/platforms/mirserver/miroil/include/miroil/display_listener_wrapper.h b/src/platforms/mirserver/miroil/include/miroil/display_listener_wrapper.h
+new file mode 100644
+index 00000000..7c4ced19
+--- /dev/null
++++ b/src/platforms/mirserver/miroil/include/miroil/display_listener_wrapper.h
+@@ -0,0 +1,44 @@
++/*
++ * Copyright (C) 2021 Canonical, Ltd.
++ *
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU Lesser General Public License version 3, as published by
++ * the Free Software Foundation.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranties of MERCHANTABILITY,
++ * SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ * Lesser General Public License for more details.
++ *
++ * You should have received a copy of the GNU Lesser General Public License
++ * along with this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++#ifndef MIROIL_DISPLAY_LISTENER_WRAPPER_H
++#define MIROIL_DISPLAY_LISTENER_WRAPPER_H
++#include <memory>
++
++namespace mir {
++ namespace geometry { struct Rectangle; }
++ namespace compositor { class DisplayListener; }
++}
++
++namespace miroil
++{
++
++class DisplayListenerWrapper
++{
++public:
++ DisplayListenerWrapper(std::shared_ptr<mir::compositor::DisplayListener> const& display_listener);
++ ~DisplayListenerWrapper();
++
++ virtual void add_display(mir::geometry::Rectangle const& area);
++ virtual void remove_display(mir::geometry::Rectangle const& area);
++
++private:
++ std::shared_ptr<mir::compositor::DisplayListener> const& display_listener;
++};
++
++}
++
++#endif /* MIROIL_DISPLAY_LISTENER_WRAPPER_H */
+diff --git a/src/platforms/mirserver/miroil/include/miroil/event_builder.h b/src/platforms/mirserver/miroil/include/miroil/event_builder.h
+new file mode 100644
+index 00000000..184552b3
+--- /dev/null
++++ b/src/platforms/mirserver/miroil/include/miroil/event_builder.h
+@@ -0,0 +1,117 @@
++/*
++ * Copyright (C) 2016-2021 Canonical, Ltd.
++ *
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU Lesser General Public License version 3, as published by
++ * the Free Software Foundation.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranties of MERCHANTABILITY,
++ * SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ * Lesser General Public License for more details.
++ *
++ * You should have received a copy of the GNU Lesser General Public License
++ * along with this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++#ifndef MIROIL_EVENT_BUILDER_H
++#define MIROIL_EVENT_BUILDER_H
++
++#include <mir_toolkit/mir_input_device_types.h>
++#include <miral/version.h>
++#if MIRAL_VERSION >= MIR_VERSION_NUMBER(3, 0, 0)
++#include <miral/toolkit_event.h>
++#else
++#include <mir_toolkit/event.h>
++#endif
++
++#include <chrono>
++#include <memory>
++#include <sys/types.h>
++#include <vector>
++
++struct MirEvent;
++struct MirInputEvent;
++
++namespace mir { typedef std::unique_ptr<MirEvent, void(*)(MirEvent*)> EventUPtr; }
++
++namespace miroil
++{
++
++/*
++ Creates Mir input events out of Qt input events
++
++ The class is splitt into miroil::EventBuilder which does the internal mir stuff,
++ and qtmir::EventBuilder which handles the qt stuff.
++
++ One important feature is that it's able to match a QInputEvent with the MirInputEvent that originated it, so
++ it can make a MirInputEvent version of a QInputEvent containing also information that the latter does not carry,
++ such as relative axis movement for pointer devices.
++*/
++
++class EventBuilder {
++
++public:
++ class EventInfo {
++ public:
++ void store(const MirInputEvent *mirInputEvent, ulong qtTimestamp);
++
++ ulong timestamp;
++ MirInputDeviceId device_id;
++ std::vector<uint8_t> cookie;
++ float relative_x{0};
++ float relative_y{0};
++ };
++
++public:
++ EventBuilder();
++ virtual ~EventBuilder();
++
++ // add Touch event
++ void add_touch(MirEvent &event, MirTouchId touch_id, MirTouchAction action,
++ MirTouchTooltype tooltype, float x_axis_value, float y_axis_value,
++ float pressure_value, float touch_major_value, float touch_minor_value, float size_value);
++
++ // Key event
++ mir::EventUPtr make_key_event(MirInputDeviceId device_id, std::chrono::nanoseconds timestamp,
++ std::vector<uint8_t> const& cookie, MirKeyboardAction action, xkb_keysym_t key_code,
++ int scan_code, MirInputEventModifiers modifiers);
++
++ // Touch event
++ mir::EventUPtr make_touch_event(MirInputDeviceId device_id, std::chrono::nanoseconds timestamp,
++ std::vector<uint8_t> const& mac, MirInputEventModifiers modifiers);
++
++ // Pointer event
++ mir::EventUPtr make_pointer_event(MirInputDeviceId device_id, std::chrono::nanoseconds timestamp,
++ std::vector<uint8_t> const& mac, MirInputEventModifiers modifiers, MirPointerAction action,
++ MirPointerButtons buttons_pressed,
++ float x_axis_value, float y_axis_value,
++ float hscroll_value, float vscroll_value,
++ float relative_x_value, float relative_y_value);
++
++ EventInfo * find_info(ulong qtTimestamp);
++
++ /* Stores information that cannot be carried by QInputEvents so that it can be fully
++ reconstructed later given the same qtTimestamp */
++ void store(const MirInputEvent *mirInputEvent, ulong qtTimestamp);
++
++private:
++ /*
++ Ring buffer that stores information on recent MirInputEvents that cannot be carried by QInputEvents.
++
++ When MirInputEvents are dispatched through a QML scene, not all of its information can be carried
++ by QInputEvents. Some information is lost. Thus further on, if we want to transform a QInputEvent back into
++ its original MirInputEvent so that it can be consumed by a mir::scene::Surface and properly handled by mir clients
++ we have to reach out to this EventRegistry to get the missing bits.
++
++ Given the objective of this EventRegistry (MirInputEvent reconstruction after having gone through QQuickWindow input dispatch
++ as a QInputEvent), it stores information only about the most recent MirInputEvents.
++ */
++ std::vector<EventInfo> event_info_vector;
++ size_t next_index{0};
++ size_t event_info_count{0};
++};
++
++}
++
++#endif // MIROIL_EVENT_BUILDER_H
+diff --git a/src/platforms/mirserver/eventdispatch.h b/src/platforms/mirserver/miroil/include/miroil/eventdispatch.h
+similarity index 75%
+rename from src/platforms/mirserver/eventdispatch.h
+rename to src/platforms/mirserver/miroil/include/miroil/eventdispatch.h
+index 5a829c34..16a75e3d 100644
+--- a/src/platforms/mirserver/eventdispatch.h
++++ b/src/platforms/mirserver/miroil/include/miroil/eventdispatch.h
+@@ -14,16 +14,16 @@
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+-#ifndef QTMIR_EVENTDISPATCH_H
+-#define QTMIR_EVENTDISPATCH_H
+-
+-#include <mir_toolkit/event.h>
++#ifndef MIROIL_EVENTDISPATCH_H
++#define MIROIL_EVENTDISPATCH_H
+
+ namespace miral { class Window; }
+
+-namespace qtmir
++struct MirInputEvent;
++
++namespace miroil
+ {
+-void dispatchInputEvent(const miral::Window& window, const MirInputEvent* event);
++void dispatch_input_event(const miral::Window& window, const MirInputEvent* event);
+ }
+
+-#endif //QTMIR_EVENTDISPATCH_H
++#endif //MIROIL_EVENTDISPATCH_H
+diff --git a/src/platforms/mirserver/miroil/include/miroil/input_device.h b/src/platforms/mirserver/miroil/include/miroil/input_device.h
+new file mode 100644
+index 00000000..509956ae
+--- /dev/null
++++ b/src/platforms/mirserver/miroil/include/miroil/input_device.h
+@@ -0,0 +1,52 @@
++/*
++ * Copyright (C) 2016-2021 Canonical, Ltd.
++ *
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU Lesser General Public License version 3, as published by
++ * the Free Software Foundation.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranties of MERCHANTABILITY,
++ * SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ * Lesser General Public License for more details.
++ *
++ * You should have received a copy of the GNU Lesser General Public License
++ * along with this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++#ifndef MIROIL_INPUT_DEVICE_H
++#define MIROIL_INPUT_DEVICE_H
++#include <mir_toolkit/mir_input_device_types.h>
++#include <memory>
++#include <string>
++
++namespace mir { namespace input { class Device; } }
++
++namespace miroil
++{
++class InputDevice
++{
++public:
++ InputDevice(std::shared_ptr<mir::input::Device> const& device);
++ InputDevice(InputDevice const& src);
++ InputDevice(InputDevice&& src);
++ InputDevice();
++ ~InputDevice();
++
++ auto operator=(InputDevice const& src) -> InputDevice&;
++ auto operator=(InputDevice&& src) -> InputDevice&;
++
++ bool operator==(InputDevice const& other);
++
++ void apply_keymap(std::string const& layout, std::string const& variant);
++ auto get_device_id() -> MirInputDeviceId;
++ auto get_device_name() -> std::string;
++ auto is_keyboard() -> bool;
++ auto is_alpha_numeric() -> bool;
++
++private:
++ std::shared_ptr<mir::input::Device> device;
++};
++
++}
++
++#endif //MIROIL_INPUT_DEVICE_H
+diff --git a/src/platforms/mirserver/miroil/include/miroil/input_device_observer.h b/src/platforms/mirserver/miroil/include/miroil/input_device_observer.h
+new file mode 100644
+index 00000000..1dd92d1c
+--- /dev/null
++++ b/src/platforms/mirserver/miroil/include/miroil/input_device_observer.h
+@@ -0,0 +1,40 @@
++/*
++ * Copyright (C) 2016-2021 Canonical, Ltd.
++ *
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU Lesser General Public License version 3, as published by
++ * the Free Software Foundation.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranties of MERCHANTABILITY,
++ * SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ * Lesser General Public License for more details.
++ *
++ * You should have received a copy of the GNU Lesser General Public License
++ * along with this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++#ifndef MIROIL_INPUT_DEVICE_OBSERVER_H
++#define MIROIL_INPUT_DEVICE_OBSERVER_H
++
++#include <miroil/input_device.h>
++
++#include <memory>
++#include <string>
++
++namespace miroil
++{
++class InputDeviceObserver
++{
++public:
++ InputDeviceObserver() = default;
++ InputDeviceObserver(InputDeviceObserver const&) = delete;
++ InputDeviceObserver& operator=(InputDeviceObserver const&) = delete;
++ virtual ~InputDeviceObserver();
++
++ virtual void device_added(miroil::InputDevice device) = 0;
++ virtual void device_removed(miroil::InputDevice device) = 0;
++};
++
++}
++
++#endif //MIROIL_INPUT_DEVICE_OBSERVER_H
+diff --git a/src/platforms/mirserver/miroil/include/miroil/mir_prompt_session.h b/src/platforms/mirserver/miroil/include/miroil/mir_prompt_session.h
+new file mode 100644
+index 00000000..971bdddc
+--- /dev/null
++++ b/src/platforms/mirserver/miroil/include/miroil/mir_prompt_session.h
+@@ -0,0 +1,48 @@
++/*
++ * Copyright © 2021 Canonical Ltd.
++ *
++ * This program is free software: you can redistribute it and/or modify it
++ * under the terms of the GNU Lesser General Public License version 2 or 3,
++ * as published by the Free Software Foundation.
++ *
++ * This program is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ * GNU Lesser General Public License for more details.
++ *
++ * You should have received a copy of the GNU Lesser General Public License
++ * along with this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++#ifndef MIROIL_MIR_PROMPT_SESSION_H_
++#define MIROIL_MIR_PROMPT_SESSION_H_
++#include <memory>
++#include <functional>
++
++typedef struct MirPromptSession MirPromptSession;
++typedef void (*MirClientFdCallback)(MirPromptSession *prompt_session, size_t count, int const* fds, void* context);
++
++namespace miroil
++{
++
++class MirPromptSession
++{
++public:
++ MirPromptSession(::MirPromptSession * promptSession);
++ MirPromptSession(MirPromptSession const& src);
++ MirPromptSession(MirPromptSession && src);
++ ~MirPromptSession();
++
++ auto operator=(MirPromptSession const& src) -> MirPromptSession&;
++ auto operator=(MirPromptSession&& src) -> MirPromptSession&;
++
++ bool operator==(MirPromptSession const& other);
++
++ bool new_fds_for_prompt_providers(unsigned int no_of_fds, MirClientFdCallback callback, void * context);
++
++ ::MirPromptSession * prompt_session;
++};
++
++}
++
++#endif /* MIROIL_MIR_PROMPT_SESSION_H_ */
+diff --git a/src/platforms/mirserver/miroil/include/miroil/mir_server_hooks.h b/src/platforms/mirserver/miroil/include/miroil/mir_server_hooks.h
+new file mode 100644
+index 00000000..847ec9de
+--- /dev/null
++++ b/src/platforms/mirserver/miroil/include/miroil/mir_server_hooks.h
+@@ -0,0 +1,57 @@
++/*
++ * Copyright © 2016 Canonical Ltd.
++ *
++ * This program is free software: you can redistribute it and/or modify it
++ * under the terms of the GNU General Public License version 3,
++ * as published by the Free Software Foundation.
++ *
++ * This program is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ * GNU General Public License for more details.
++ *
++ * You should have received a copy of the GNU General Public License
++ * along with this program. If not, see <http://www.gnu.org/licenses/>.
++ *
++ * Authored by: Alan Griffiths <alan@octopull.co.uk>
++ */
++
++#ifndef MIROIL_MIRSERVERHOOKS_H
++#define MIROIL_MIRSERVERHOOKS_H
++#include <miroil/input_device_observer.h>
++#include <miroil/prompt_session_listener.h>
++#include <mir/graphics/cursor_image.h>
++#include <functional>
++#include <memory>
++
++namespace mir { class Server; }
++namespace mir { namespace scene { class PromptSessionManager; }}
++namespace mir { namespace graphics { class Display; }}
++namespace mir { namespace shell { class DisplayConfigurationController; } }
++
++namespace miroil
++{
++using CreateNamedCursor = std::function<std::shared_ptr< mir::graphics::CursorImage>(std::string const& name)>;
++
++class MirServerHooks
++{
++public:
++ MirServerHooks();
++
++ void operator()(mir::Server& server);
++
++ auto the_prompt_session_listener() const -> PromptSessionListener*;
++ auto the_prompt_session_manager() const -> std::shared_ptr<mir::scene::PromptSessionManager>;
++ auto the_mir_display() const -> std::shared_ptr<mir::graphics::Display>;
++ auto the_display_configuration_controller() const -> std::shared_ptr<mir::shell::DisplayConfigurationController>;
++ void create_named_cursor(CreateNamedCursor func);
++ void create_input_device_observer(std::shared_ptr<InputDeviceObserver> & observer);
++ void create_prompt_session_listener(std::shared_ptr<PromptSessionListener> listener);
++
++private:
++ struct Self;
++ std::shared_ptr<Self> self;
++};
++}
++
++#endif //MIROIL_MIRSERVERHOOKS_H
+diff --git a/src/platforms/mirserver/miral/mirbuffer.h b/src/platforms/mirserver/miroil/include/miroil/mirbuffer.h
+similarity index 94%
+rename from src/platforms/mirserver/miral/mirbuffer.h
+rename to src/platforms/mirserver/miroil/include/miroil/mirbuffer.h
+index 21656292..c5fab09a 100644
+--- a/src/platforms/mirserver/miral/mirbuffer.h
++++ b/src/platforms/mirserver/miroil/include/miroil/mirbuffer.h
+@@ -1,5 +1,5 @@
+ /*
+- * Copyright © 2017 Canonical Ltd.
++ * Copyright © 2017-2020 Canonical Ltd.
+ *
+ * This program is free software: you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 3,
+@@ -14,8 +14,8 @@
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+-#ifndef MIRAL_GLBUFFER_H
+-#define MIRAL_GLBUFFER_H
++#ifndef MIROIL_GLBUFFER_H
++#define MIROIL_GLBUFFER_H
+
+ #include <mir/geometry/size.h>
+
+@@ -93,4 +93,4 @@ public:
+
+ }
+
+-#endif //MIRAL_GLBUFFER_H
++#endif //MIROIL_GLBUFFER_H
+diff --git a/src/platforms/mirserver/openglcontextfactory.h b/src/platforms/mirserver/miroil/include/miroil/open_gl_context.h
+similarity index 67%
+rename from src/platforms/mirserver/openglcontextfactory.h
+rename to src/platforms/mirserver/miroil/include/miroil/open_gl_context.h
+index 56753005..f05edd6e 100644
+--- a/src/platforms/mirserver/openglcontextfactory.h
++++ b/src/platforms/mirserver/miroil/include/miroil/open_gl_context.h
+@@ -16,27 +16,23 @@
+ * Authored by: Alan Griffiths <alan@octopull.co.uk>
+ */
+
+-#ifndef MIRAL_OPENGLCONTEXTFACTORY_H
+-#define MIRAL_OPENGLCONTEXTFACTORY_H
+-
++#ifndef MIROIL_OPEN_GL_CONTEXT_H
++#define MIROIL_OPEN_GL_CONTEXT_H
++#include <mir/graphics/gl_config.h>
+ #include <memory>
++#include <functional>
+
+-namespace mir { namespace graphics { class Display; }}
+ namespace mir { class Server; }
+
+-class QPlatformOpenGLContext;
+-class QSurfaceFormat;
+-
+-namespace qtmir
++namespace miroil
+ {
+-class OpenGLContextFactory
++class OpenGLContext
+ {
+ public:
+- OpenGLContextFactory();
++ OpenGLContext(mir::graphics::GLConfig* gl_config);
+
+ void operator()(mir::Server& server);
+-
+- QPlatformOpenGLContext *createPlatformOpenGLContext(QSurfaceFormat format, mir::graphics::Display &mirDisplay) const;
++ auto the_open_gl_config() const -> std::shared_ptr<mir::graphics::GLConfig>;
+
+ private:
+ struct Self;
+@@ -44,4 +40,4 @@ private:
+ };
+ }
+
+-#endif //MIRAL_OPENGLCONTEXTFACTORY_H
++#endif //MIROIL_OPEN_GL_CONTEXT_H
+diff --git a/src/platforms/mirserver/miral/persist_display_config.h b/src/platforms/mirserver/miroil/include/miroil/persist_display_config.h
+similarity index 78%
+rename from src/platforms/mirserver/miral/persist_display_config.h
+rename to src/platforms/mirserver/miroil/include/miroil/persist_display_config.h
+index 45705a04..83a25264 100644
+--- a/src/platforms/mirserver/miral/persist_display_config.h
++++ b/src/platforms/mirserver/miroil/include/miroil/persist_display_config.h
+@@ -1,5 +1,5 @@
+ /*
+- * Copyright © 2016 Canonical Ltd.
++ * Copyright © 2016-2020 Canonical Ltd.
+ *
+ * This program is free software: you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 3,
+@@ -16,16 +16,15 @@
+ * Authored by: Alan Griffiths <alan@octopull.co.uk>
+ */
+
+-#ifndef MIRAL_PERSIST_DISPLAY_CONFIG_H
+-#define MIRAL_PERSIST_DISPLAY_CONFIG_H
++#ifndef MIROIL_PERSIST_DISPLAY_CONFIG_H
++#define MIROIL_PERSIST_DISPLAY_CONFIG_H
+
+ #include <functional>
+ #include <memory>
+
+-namespace mir { class Server; }
++namespace mir { class Server; namespace graphics { class DisplayConfigurationPolicy; }}
+
+-// Prototyping namespace for later incorporation in MirAL
+-namespace miral
++namespace miroil
+ {
+ class DisplayConfigurationPolicy;
+ class DisplayConfigurationStorage;
+@@ -39,7 +38,7 @@ public:
+ auto operator=(PersistDisplayConfig const&) -> PersistDisplayConfig&;
+
+ // TODO factor this out better
+- using DisplayConfigurationPolicyWrapper = std::function<std::shared_ptr<DisplayConfigurationPolicy>()>;
++ using DisplayConfigurationPolicyWrapper = std::function<std::shared_ptr<DisplayConfigurationPolicy>(std::shared_ptr<mir::graphics::DisplayConfigurationPolicy> const& wrapped)>;
+
+ PersistDisplayConfig(std::shared_ptr<DisplayConfigurationStorage> const& storage,
+ DisplayConfigurationPolicyWrapper const& custom_wrapper);
+@@ -50,7 +49,6 @@ private:
+ struct Self;
+ std::shared_ptr<Self> self;
+ };
+-
+ }
+
+-#endif //MIRAL_PERSIST_DISPLAY_CONFIG_H
++#endif //MIROIL_PERSIST_DISPLAY_CONFIG_H
+diff --git a/src/platforms/mirserver/miroil/include/miroil/prompt_session_listener.h b/src/platforms/mirserver/miroil/include/miroil/prompt_session_listener.h
+new file mode 100644
+index 00000000..5049a11e
+--- /dev/null
++++ b/src/platforms/mirserver/miroil/include/miroil/prompt_session_listener.h
+@@ -0,0 +1,49 @@
++/*
++ * Copyright © 2016-2021 Canonical Ltd.
++ *
++ * This program is free software: you can redistribute it and/or modify it
++ * under the terms of the GNU General Public License version 3,
++ * as published by the Free Software Foundation.
++ *
++ * This program is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ * GNU General Public License for more details.
++ *
++ * You should have received a copy of the GNU General Public License
++ * along with this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++#ifndef MIROIL_PROMPT_SESSION_LISTENER_H
++#define MIROIL_PROMPT_SESSION_LISTENER_H
++#include <memory>
++
++namespace mir { namespace scene { class PromptSession; } }
++namespace mir { namespace scene { class Session; } }
++
++namespace miroil {
++
++class PromptSessionListener
++{
++public:
++ virtual ~PromptSessionListener();
++
++ PromptSessionListener& operator=(PromptSessionListener const&) = delete;
++
++ virtual void starting(std::shared_ptr<mir::scene::PromptSession> const& prompt_session) = 0;
++ virtual void stopping(std::shared_ptr<mir::scene::PromptSession> const& prompt_session) = 0;
++ virtual void suspending(std::shared_ptr<mir::scene::PromptSession> const& prompt_session) = 0;
++ virtual void resuming(std::shared_ptr<mir::scene::PromptSession> const& prompt_session) = 0;
++ virtual void prompt_provider_added(mir::scene::PromptSession const& prompt_session,
++ std::shared_ptr<mir::scene::Session> const& prompt_provider) = 0;
++ virtual void prompt_provider_removed(mir::scene::PromptSession const& prompt_session,
++ std::shared_ptr<mir::scene::Session> const& prompt_provider) = 0;
++
++protected:
++ PromptSessionListener() = default;
++ PromptSessionListener(PromptSessionListener const&) = delete;
++};
++
++}
++
++#endif // MIROIL_PROMPT_SESSION_LISTENER_H
+diff --git a/src/platforms/mirserver/miroil/include/miroil/prompt_session_manager.h b/src/platforms/mirserver/miroil/include/miroil/prompt_session_manager.h
+new file mode 100644
+index 00000000..2e1a5385
+--- /dev/null
++++ b/src/platforms/mirserver/miroil/include/miroil/prompt_session_manager.h
+@@ -0,0 +1,51 @@
++/*
++ * Copyright © 2016-2021 Canonical Ltd.
++ *
++ * This program is free software: you can redistribute it and/or modify it
++ * under the terms of the GNU General Public License version 3,
++ * as published by the Free Software Foundation.
++ *
++ * This program is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ * GNU General Public License for more details.
++ *
++ * You should have received a copy of the GNU General Public License
++ * along with this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++#ifndef MIROIL_PROMPT_SESSION_MANAGER_H
++#define MIROIL_PROMPT_SESSION_MANAGER_H
++
++#include <miral/application.h>
++
++#include <memory>
++
++namespace mir { namespace scene { class PromptSessionManager; class PromptSession;} }
++
++namespace miroil {
++
++class PromptSessionManager
++{
++public:
++ PromptSessionManager(std::shared_ptr<mir::scene::PromptSessionManager> const& prompt_session_manager);
++ PromptSessionManager(PromptSessionManager const& src);
++ PromptSessionManager(PromptSessionManager&& src);
++ ~PromptSessionManager();
++
++ auto operator=(PromptSessionManager const& src) -> PromptSessionManager&;
++ auto operator=(PromptSessionManager&& src) -> PromptSessionManager&;
++
++ bool operator==(PromptSessionManager const& other);
++
++ auto application_for(std::shared_ptr<mir::scene::PromptSession> const& prompt_session) const -> miral::Application;
++ void resume_prompt_session(std::shared_ptr<mir::scene::PromptSession> const& prompt_session) const;
++ void stop_prompt_session(std::shared_ptr<mir::scene::PromptSession> const& prompt_session) const;
++ void suspend_prompt_session(std::shared_ptr<mir::scene::PromptSession> const& prompt_session) const;
++
++private:
++ std::shared_ptr<mir::scene::PromptSessionManager> prompt_session_manager;
++};
++}
++
++#endif //MIROIL_PROMPT_SESSION_MANAGER_H
+diff --git a/src/platforms/mirserver/miroil/include/miroil/set_compositor.h b/src/platforms/mirserver/miroil/include/miroil/set_compositor.h
+new file mode 100644
+index 00000000..10179601
+--- /dev/null
++++ b/src/platforms/mirserver/miroil/include/miroil/set_compositor.h
+@@ -0,0 +1,54 @@
++/*
++ * Copyright © 2021 Canonical Ltd.
++ *
++ * This program is free software: you can redistribute it and/or modify it
++ * under the terms of the GNU General Public License version 3,
++ * as published by the Free Software Foundation.
++ *
++ * This program is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ * GNU General Public License for more details.
++ *
++ * You should have received a copy of the GNU General Public License
++ * along with this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++#ifndef MIROIL_SET_COMPOSITOR_H
++#define MIROIL_SET_COMPOSITOR_H
++#include <memory>
++#include <functional>
++
++namespace mir { class Server; }
++namespace mir { namespace graphics { class Display; } }
++namespace mir { namespace compositor { class DisplayListener; } }
++
++namespace miroil
++{
++ class Compositor;
++
++// Configure the server for using the Qt compositor
++class SetCompositor
++{
++ using InitFunction = std::function<void(const std::shared_ptr<mir::graphics::Display>& display,
++ const std::shared_ptr<Compositor> & compositor,
++ const std::shared_ptr<mir::compositor::DisplayListener>& displayListener)>;
++
++ using ConstructorFunction = std::function<std::shared_ptr<Compositor>()>;
++
++public:
++ SetCompositor(ConstructorFunction constructor, InitFunction init);
++
++ void operator()(mir::Server& server);
++
++private:
++ struct CompositorImpl;
++
++ std::weak_ptr<CompositorImpl> compositor_impl;
++ ConstructorFunction constructor_function;
++ InitFunction init_function;
++};
++
++}
++
++#endif //MIROIL_SET_COMPOSITOR_H
+diff --git a/src/platforms/mirserver/miroil/include/miroil/surface.h b/src/platforms/mirserver/miroil/include/miroil/surface.h
+new file mode 100644
+index 00000000..1b0dc2db
+--- /dev/null
++++ b/src/platforms/mirserver/miroil/include/miroil/surface.h
+@@ -0,0 +1,77 @@
++/*
++ * Copyright (C) 2021 Canonical, Ltd.
++ *
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU Lesser General Public License version 3, as published by
++ * the Free Software Foundation.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranties of MERCHANTABILITY,
++ * SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ * Lesser General Public License for more details.
++ *
++ * You should have received a copy of the GNU Lesser General Public License
++ * along with this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++#ifndef MIROIL_SURFACE_H
++#define MIROIL_SURFACE_H
++#include <memory>
++#include <unordered_map>
++#include <mir_toolkit/mir_input_device_types.h>
++#include <mir_toolkit/common.h>
++#include <mir/graphics/renderable.h>
++
++namespace mir {
++ namespace scene { class Surface; }
++ namespace shell { class InputTargeter; }
++ namespace geometry { struct Rectangle; }
++ namespace graphics { class CursorImage; }
++ namespace compositor { class BufferStream; }
++}
++
++namespace miroil {
++
++class SurfaceObserver;
++class SurfaceObserverImpl;
++
++using CompositorID = void const*;
++
++class Surface
++{
++public:
++ Surface(std::shared_ptr<mir::scene::Surface> wrapped);
++ ~Surface() = default;
++
++ mir::scene::Surface *get_wrapped() const;
++ void add_observer(std::shared_ptr<miroil::SurfaceObserver> const& observer);
++ void remove_observer(std::shared_ptr<miroil::SurfaceObserver> const& observer);
++
++ int buffers_ready_for_compositor(void const* compositor_id) const;
++ mir::graphics::RenderableList generate_renderables(miroil::CompositorID id) const;
++
++
++ bool is_confined_to_window();
++ void set_orientation(MirOrientation orientation);
++
++ void set_confine_pointer_state(MirPointerConfinementState state);
++ std::shared_ptr<mir::scene::Surface> parent() const;
++ /// Top-left corner (of the window frame if present)
++ mir::geometry::Point top_left() const;
++ bool visible() const;
++
++ // TODO a legacy of old interactions and needs removing
++ int configure(MirWindowAttrib attrib, int value);
++ // TODO a legacy of old interactions and needs removing
++ int query(MirWindowAttrib attrib) const;
++ // TODO a legacy of old interactions and needs removing
++ void set_keymap(MirInputDeviceId id, std::string const& model, std::string const& layout,
++ std::string const& variant, std::string const& options);
++
++private:
++ std::shared_ptr<mir::scene::Surface> wrapped;
++ std::unordered_map<std::shared_ptr<miroil::SurfaceObserver>, std::shared_ptr<miroil::SurfaceObserverImpl>> observers;
++};
++
++}
++
++#endif
+diff --git a/src/platforms/mirserver/miroil/include/miroil/surface_observer.h b/src/platforms/mirserver/miroil/include/miroil/surface_observer.h
+new file mode 100644
+index 00000000..97fc1a03
+--- /dev/null
++++ b/src/platforms/mirserver/miroil/include/miroil/surface_observer.h
+@@ -0,0 +1,63 @@
++/*
++ * Copyright © 2021 Canonical Ltd.
++ *
++ * This program is free software: you can redistribute it and/or modify it
++ * under the terms of the GNU General Public License version 3,
++ * as published by the Free Software Foundation.
++ *
++ * This program is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ * GNU General Public License for more details.
++ *
++ * You should have received a copy of the GNU General Public License
++ * along with this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++#include <mir_toolkit/common.h>
++#include <mir/geometry/size.h>
++#include <mir/geometry/rectangle.h>
++#include <mir/graphics/cursor_image.h>
++#include <glm/glm.hpp>
++#include <mir_toolkit/mir_input_device_types.h>
++#include <vector>
++
++namespace mir { namespace scene { class SurfaceObserver; } }
++namespace mir { namespace scene { class Surface; } }
++
++struct MirEvent;
++struct MirInputEvent;
++
++namespace miroil
++{
++
++class SurfaceObserver
++{
++public:
++ SurfaceObserver() = default;
++ SurfaceObserver(SurfaceObserver const&) = delete;
++ SurfaceObserver& operator=(SurfaceObserver const&) = delete;
++ virtual ~SurfaceObserver() = default;
++
++ virtual void attrib_changed(mir::scene::Surface const* surf, MirWindowAttrib attrib, int value) = 0;
++ virtual void window_resized_to(mir::scene::Surface const* surf, mir::geometry::Size const& window_size) = 0;
++ virtual void content_resized_to(mir::scene::Surface const* surf, mir::geometry::Size const& content_size) = 0;
++ virtual void moved_to(mir::scene::Surface const* surf, mir::geometry::Point const& top_left) = 0;
++ virtual void hidden_set_to(mir::scene::Surface const* surf, bool hide) = 0;
++ virtual void frame_posted(mir::scene::Surface const* surf, int frames_available, mir::geometry::Size const& size) = 0;
++ virtual void alpha_set_to(mir::scene::Surface const* surf, float alpha) = 0;
++ virtual void orientation_set_to(mir::scene::Surface const* surf, MirOrientation orientation) = 0;
++ virtual void transformation_set_to(mir::scene::Surface const* surf, glm::mat4 const& t) = 0;
++ virtual void cursor_image_set_to(mir::scene::Surface const* surf, mir::graphics::CursorImage const& image) = 0;
++ virtual void client_surface_close_requested(mir::scene::Surface const* surf) = 0;
++ virtual void keymap_changed(mir::scene::Surface const* surf, MirInputDeviceId id, std::string const& model,
++ std::string const& layout, std::string const& variant, std::string const& options) = 0;
++ virtual void renamed(mir::scene::Surface const* surf, char const* name) = 0;
++ virtual void cursor_image_removed(mir::scene::Surface const* surf) = 0;
++ virtual void placed_relative(mir::scene::Surface const* surf, mir::geometry::Rectangle const& placement) = 0;
++ virtual void input_consumed(mir::scene::Surface const* surf, MirEvent const* event) = 0;
++ virtual void start_drag_and_drop(mir::scene::Surface const* surf, std::vector<uint8_t> const& handle) = 0;
++ virtual void depth_layer_set_to(mir::scene::Surface const* surf, MirDepthLayer depth_layer) = 0;
++ virtual void application_id_set_to(mir::scene::Surface const* surf, std::string const& application_id) = 0;
++};
++
++}
+diff --git a/src/platforms/mirserver/miroil/src/CMakeLists.txt b/src/platforms/mirserver/miroil/src/CMakeLists.txt
+new file mode 100644
+index 00000000..32d7d4ed
+--- /dev/null
++++ b/src/platforms/mirserver/miroil/src/CMakeLists.txt
+@@ -0,0 +1,39 @@
++add_library(miroil OBJECT
++ compositor.cpp ${MIROIL_INCLUDE_DIRS}/miroil/compositor.h
++ edid.cpp ${qtmir_include}/miroil/edid.h
++ mirbuffer.cpp ${MIROIL_INCLUDE_DIRS}/miroil/mirbuffer.h
++ persist_display_config.cpp ${MIROIL_INCLUDE_DIRS}/miroil/persist_display_config.h
++ display_configuration_policy.cpp ${qtmir_include}/miroil/display_configuration_policy.h
++ display_configuration_controller_wrapper.cpp ${MIROIL_INCLUDE_DIRS}/miroil/display_configuration_controller_wrapper.h
++ display_listener_wrapper.cpp ${MIROIL_INCLUDE_DIRS}/miroil/display_listener_wrapper.h
++ eventdispatch.cpp ${MIROIL_INCLUDE_DIRS}/miroil/eventdispatch.h
++ event_builder.cpp ${MIROIL_INCLUDE_DIRS}/miroil/event_builder.h
++ input_device.cpp ${MIROIL_INCLUDE_DIRS}/miroil/input_device.h
++ input_device_observer.cpp ${MIROIL_INCLUDE_DIRS}/miroil/input_device_observer.h
++ mir_server_hooks.cpp ${MIROIL_INCLUDE_DIRS}/miroil/mir_server_hooks.h
++ mir_prompt_session.cpp ${MIROIL_INCLUDE_DIRS}/miroil/mir_prompt_session.h
++ open_gl_context.cpp ${MIROIL_INCLUDE_DIRS}/miroil/open_gl_context.h
++ prompt_session_listener.cpp ${MIROIL_INCLUDE_DIRS}/miroil/prompt_session_listener.h
++ prompt_session_manager.cpp ${MIROIL_INCLUDE_DIRS}/miroil/prompt_session_manager.h
++ set_compositor.cpp ${MIROIL_INCLUDE_DIRS}/miroil/set_compositor.h
++ surface.cpp ${MIROIL_INCLUDE_DIRS}/miroil/surface.h
++ ${qtmir_include}/miroil/display_configuration_storage.h
++ ${qtmir_include}/miroil/display_id.h
++)
++
++target_include_directories(miroil
++ PUBLIC "${MIROIL_INCLUDE_DIRS}" "${qtmir_include}" "${qtmir_include}/qtmir"
++ PRIVATE ${MIRAL_INCLUDE_DIRS}
++ ${MIRCOMMON_INCLUDE_DIRS}
++ ${MIRSERVER_INCLUDE_DIRS}
++ ${MIRRENDERERGLDEV_INCLUDE_DIRS}
++ ${MIRSERVER_INCLUDE_DIRS}
++)
++
++target_link_libraries(miroil
++ PRIVATE
++ ${MIRAL_LDFLAGS}
++ ${MIRSERVER_LDFLAGS}
++
++ ${EGL_LDFLAGS}
++)
+diff --git a/src/platforms/mirserver/miroil/src/compositor.cpp b/src/platforms/mirserver/miroil/src/compositor.cpp
+new file mode 100644
+index 00000000..eb50aa65
+--- /dev/null
++++ b/src/platforms/mirserver/miroil/src/compositor.cpp
+@@ -0,0 +1,20 @@
++/*
++ * Copyright (C) 2016-2021 Canonical, Ltd.
++ *
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU Lesser General Public License version 3, as published by
++ * the Free Software Foundation.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranties of MERCHANTABILITY,
++ * SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ * Lesser General Public License for more details.
++ *
++ * You should have received a copy of the GNU Lesser General Public License
++ * along with this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++#include <miroil/compositor.h>
++
++miroil::Compositor::~Compositor() = default;
++
+diff --git a/src/platforms/mirserver/miroil/src/display_configuration_controller_wrapper.cpp b/src/platforms/mirserver/miroil/src/display_configuration_controller_wrapper.cpp
+new file mode 100644
+index 00000000..9ca49428
+--- /dev/null
++++ b/src/platforms/mirserver/miroil/src/display_configuration_controller_wrapper.cpp
+@@ -0,0 +1,32 @@
++/*
++ * Copyright (C) 2021 Canonical, Ltd.
++ *
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU Lesser General Public License version 3, as published by
++ * the Free Software Foundation.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranties of MERCHANTABILITY,
++ * SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ * Lesser General Public License for more details.
++ *
++ * You should have received a copy of the GNU Lesser General Public License
++ * along with this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++#include <miroil/display_configuration_controller_wrapper.h>
++#include "mir/shell/display_configuration_controller.h"
++
++namespace miroil {
++
++void DisplayConfigurationControllerWrapper::set_base_configuration(std::shared_ptr<mir::graphics::DisplayConfiguration> const& conf)
++{
++ wrapped->set_base_configuration(conf);
++}
++
++DisplayConfigurationControllerWrapper::DisplayConfigurationControllerWrapper(std::shared_ptr<mir::shell::DisplayConfigurationController> const & wrapped)
++ : wrapped(wrapped)
++{
++}
++
++}
+diff --git a/src/platforms/mirserver/miral/display_configuration_policy.cpp b/src/platforms/mirserver/miroil/src/display_configuration_policy.cpp
+similarity index 73%
+rename from src/platforms/mirserver/miral/display_configuration_policy.cpp
+rename to src/platforms/mirserver/miroil/src/display_configuration_policy.cpp
+index c4f5281d..ad746310 100644
+--- a/src/platforms/mirserver/miral/display_configuration_policy.cpp
++++ b/src/platforms/mirserver/miroil/src/display_configuration_policy.cpp
+@@ -1,5 +1,5 @@
+ /*
+- * Copyright © 2016 Canonical Ltd.
++ * Copyright © 2016-2020 Canonical Ltd.
+ *
+ * This program is free software: you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 3,
+@@ -16,6 +16,7 @@
+ * Authored by: Nick Dedekind <nick.dedekind@canonical.com>
+ */
+
+-#include "qtmir/miral/display_configuration_policy.h"
++#include "miroil/display_configuration_policy.h"
+
+-miral::DisplayConfigurationPolicy::DisplayConfigurationPolicy() = default;
++miroil::DisplayConfigurationPolicy::DisplayConfigurationPolicy() = default;
++miroil::DisplayConfigurationPolicy::~DisplayConfigurationPolicy() = default;
+diff --git a/src/platforms/mirserver/miroil/src/display_listener_wrapper.cpp b/src/platforms/mirserver/miroil/src/display_listener_wrapper.cpp
+new file mode 100644
+index 00000000..125cc20b
+--- /dev/null
++++ b/src/platforms/mirserver/miroil/src/display_listener_wrapper.cpp
+@@ -0,0 +1,41 @@
++/*
++ * Copyright (C) 2021 Canonical, Ltd.
++ *
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU Lesser General Public License version 3, as published by
++ * the Free Software Foundation.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranties of MERCHANTABILITY,
++ * SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ * Lesser General Public License for more details.
++ *
++ * You should have received a copy of the GNU Lesser General Public License
++ * along with this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++#include "miroil/display_listener_wrapper.h"
++#include "mir/compositor/display_listener.h"
++
++namespace miroil
++{
++
++DisplayListenerWrapper::DisplayListenerWrapper(std::shared_ptr<mir::compositor::DisplayListener> const & display_listener)
++ : display_listener(display_listener)
++{
++}
++
++DisplayListenerWrapper::~DisplayListenerWrapper()
++{
++}
++
++void DisplayListenerWrapper::add_display(mir::geometry::Rectangle const& area)
++{
++ display_listener->add_display(area);
++}
++
++void DisplayListenerWrapper::remove_display(mir::geometry::Rectangle const& area)
++{
++ display_listener->remove_display(area);
++}
++
++}
+diff --git a/src/platforms/mirserver/miral/edid.cpp b/src/platforms/mirserver/miroil/src/edid.cpp
+similarity index 91%
+rename from src/platforms/mirserver/miral/edid.cpp
+rename to src/platforms/mirserver/miroil/src/edid.cpp
+index 0f8f80dc..094cbc8c 100644
+--- a/src/platforms/mirserver/miral/edid.cpp
++++ b/src/platforms/mirserver/miroil/src/edid.cpp
+@@ -1,5 +1,5 @@
+ /*
+- * Copyright © 2016 Canonical Ltd.
++ * Copyright © 2016-2020 Canonical Ltd.
+ *
+ * This program is free software: you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 3,
+@@ -16,16 +16,16 @@
+ * Authored by: Nick Dedekind <nick.dedekind@canonical.com>
+ */
+
+-#include "qtmir/miral/edid.h"
++#include "miroil/edid.h"
+
+ #include <cstring>
+ #include <numeric>
+ #include <stdexcept>
+
+-miral::Edid& miral::Edid::parse_data(std::vector<uint8_t> const& data)
++miroil::Edid& miroil::Edid::parse_data(std::vector<uint8_t> const& data)
+ {
+ if (data.size() != 128 && data.size() != 256) {
+- throw std::runtime_error(std::string("Incorrect EDID structure size:") + std::to_string(data.size()));
++ throw std::runtime_error("Incorrect EDID structure size");
+ }
+
+ // check the checksum
+@@ -97,7 +97,7 @@ miral::Edid& miral::Edid::parse_data(std::vector<uint8_t> const& data)
+ return *this;
+ }
+
+-std::string miral::Edid::Descriptor::string_value() const
++std::string miroil::Edid::Descriptor::string_value() const
+ {
+ switch(type) {
+ case Type::monitor_name:
+diff --git a/src/platforms/mirserver/miroil/src/event_builder.cpp b/src/platforms/mirserver/miroil/src/event_builder.cpp
+new file mode 100644
+index 00000000..33d963ce
+--- /dev/null
++++ b/src/platforms/mirserver/miroil/src/event_builder.cpp
+@@ -0,0 +1,116 @@
++/*
++ * Copyright (C) 2016-2021 Canonical, Ltd.
++ *
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU Lesser General Public License version 3, as published by
++ * the Free Software Foundation.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranties of MERCHANTABILITY,
++ * SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ * Lesser General Public License for more details.
++ *
++ * You should have received a copy of the GNU Lesser General Public License
++ * along with this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++#include "miroil/event_builder.h"
++#include "mir_toolkit/events/input/input_event.h"
++#include "mir_toolkit/mir_cookie.h"
++#include "mir/events/event_builders.h"
++
++namespace miroil {
++
++EventBuilder::EventBuilder()
++: event_info_vector(10)
++{
++}
++
++EventBuilder::~EventBuilder() = default;
++
++void EventBuilder::add_touch(MirEvent &event, MirTouchId touch_id, MirTouchAction action,
++ MirTouchTooltype tooltype, float x_axis_value, float y_axis_value,
++ float pressure_value, float touch_major_value, float touch_minor_value, float size_value)
++{
++ mir::events::add_touch(event, touch_id, action, tooltype, x_axis_value, y_axis_value,
++ pressure_value, touch_major_value, touch_minor_value, size_value);
++}
++
++// Key event
++mir::EventUPtr EventBuilder::make_key_event(MirInputDeviceId device_id, std::chrono::nanoseconds timestamp,
++ std::vector<uint8_t> const& cookie, MirKeyboardAction action, xkb_keysym_t key_code,
++ int scan_code, MirInputEventModifiers modifiers)
++{
++ return mir::events::make_event(device_id, timestamp,
++ cookie, action, key_code,
++ scan_code, modifiers);
++}
++
++// Touch event
++mir::EventUPtr EventBuilder::make_touch_event(MirInputDeviceId device_id, std::chrono::nanoseconds timestamp,
++ std::vector<uint8_t> const& mac, MirInputEventModifiers modifiers)
++{
++ return mir::events::make_event(device_id, timestamp,
++ mac, modifiers);
++}
++
++// Pointer event
++mir::EventUPtr EventBuilder::make_pointer_event(MirInputDeviceId device_id, std::chrono::nanoseconds timestamp,
++ std::vector<uint8_t> const& mac, MirInputEventModifiers modifiers, MirPointerAction action,
++ MirPointerButtons buttons_pressed,
++ float x_axis_value, float y_axis_value,
++ float hscroll_value, float vscroll_value,
++ float relative_x_value, float relative_y_value)
++{
++ return mir::events::make_event(device_id, timestamp,
++ mac, modifiers, action,
++ buttons_pressed,
++ x_axis_value, y_axis_value,
++ hscroll_value, vscroll_value,
++ relative_x_value, relative_y_value);
++}
++
++EventBuilder::EventInfo *EventBuilder::find_info(ulong qtTimestamp)
++{
++ for (size_t i = 0; i < event_info_count; ++i) {
++ if (event_info_vector[i].timestamp == qtTimestamp) {
++ return &event_info_vector[i];
++ }
++ }
++ return nullptr;
++}
++
++void EventBuilder::store(const MirInputEvent *mirInputEvent, ulong qtTimestamp)
++{
++ EventInfo &eventInfo = event_info_vector[next_index];
++ eventInfo.store(mirInputEvent, qtTimestamp);
++
++ next_index = (next_index + 1) % event_info_vector.size();
++
++ if (event_info_count < event_info_vector.size()) {
++ ++event_info_count;
++ }
++}
++
++void EventBuilder::EventInfo::store(const MirInputEvent *iev, ulong qtTimestamp)
++{
++ this->timestamp = qtTimestamp;
++ device_id = mir_input_event_get_device_id(iev);
++ if (mir_input_event_has_cookie(iev))
++ {
++ auto cookie_ptr = mir_input_event_get_cookie(iev);
++ cookie.resize(mir_cookie_buffer_size(cookie_ptr));
++ mir_cookie_to_buffer(cookie_ptr, cookie.data(), cookie.size());
++ mir_cookie_release(cookie_ptr);
++ } else {
++ cookie.resize(0);
++ }
++ if (mir_input_event_type_pointer == mir_input_event_get_type(iev))
++ {
++ auto pev = mir_input_event_get_pointer_event(iev);
++ relative_x = mir_pointer_event_axis_value(pev, mir_pointer_axis_relative_x);
++ relative_y = mir_pointer_event_axis_value(pev, mir_pointer_axis_relative_y);
++ }
++}
++
++}
+diff --git a/src/platforms/mirserver/eventdispatch.cpp b/src/platforms/mirserver/miroil/src/eventdispatch.cpp
+similarity index 87%
+rename from src/platforms/mirserver/eventdispatch.cpp
+rename to src/platforms/mirserver/miroil/src/eventdispatch.cpp
+index fa2e36bb..64420575 100644
+--- a/src/platforms/mirserver/eventdispatch.cpp
++++ b/src/platforms/mirserver/miroil/src/eventdispatch.cpp
+@@ -16,12 +16,11 @@
+ * Authored by: Alan Griffiths <alan@octopull.co.uk>
+ */
+
+-#include "eventdispatch.h"
+-
++#include "miroil/eventdispatch.h"
+ #include <miral/window.h>
+ #include <mir/scene/surface.h>
+
+-void qtmir::dispatchInputEvent(const miral::Window& window, const MirInputEvent* event)
++void miroil::dispatch_input_event(const miral::Window& window, const MirInputEvent* event)
+ {
+ auto e = reinterpret_cast<MirEvent const*>(event); // naughty
+
+diff --git a/src/platforms/mirserver/miroil/src/input_device.cpp b/src/platforms/mirserver/miroil/src/input_device.cpp
+new file mode 100644
+index 00000000..4850ee16
+--- /dev/null
++++ b/src/platforms/mirserver/miroil/src/input_device.cpp
+@@ -0,0 +1,80 @@
++/*
++ * Copyright © 2016-2021 Canonical Ltd.
++ *
++ * This program is free software: you can redistribute it and/or modify it
++ * under the terms of the GNU General Public License version 3,
++ * as published by the Free Software Foundation.
++ *
++ * This program is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ * GNU General Public License for more details.
++ *
++ * You should have received a copy of the GNU General Public License
++ * along with this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++#include <miroil/input_device.h>
++
++#include "mir/flags.h"
++#include "mir/input/device.h"
++#include "mir/input/mir_keyboard_config.h"
++
++miroil::InputDevice::InputDevice(std::shared_ptr<mir::input::Device> const& device)
++: device(device)
++{
++}
++
++miroil::InputDevice::InputDevice(InputDevice const& ) = default;
++
++miroil::InputDevice::InputDevice() = default;
++
++miroil::InputDevice::~InputDevice() = default;
++
++bool miroil::InputDevice::operator==(InputDevice const& other)
++{
++ return device == other.device;
++}
++
++void miroil::InputDevice::apply_keymap(std::string const& layout, std::string const& variant)
++{
++ MirKeyboardConfig oldConfig;
++
++ mir::input::Keymap keymap;
++ if (device->keyboard_configuration().is_set()) { // preserve the model and options
++ oldConfig = device->keyboard_configuration().value();
++ keymap.model = oldConfig.device_keymap().model;
++ keymap.options = oldConfig.device_keymap().options;
++ }
++ keymap.layout = layout;
++ keymap.variant = variant;
++
++ device->apply_keyboard_configuration(std::move(keymap));
++}
++
++
++MirInputDeviceId miroil::InputDevice::get_device_id()
++{
++ return device->id();
++}
++
++std::string miroil::InputDevice::get_device_name()
++{
++ return device->name();
++}
++
++bool miroil::InputDevice::is_keyboard()
++{
++ return mir::contains(device->capabilities(), mir::input::DeviceCapability::keyboard);
++}
++
++bool miroil::InputDevice::is_alpha_numeric()
++{
++ return mir::contains(device->capabilities(), mir::input::DeviceCapability::alpha_numeric);
++}
++
++miroil::InputDevice::InputDevice(InputDevice&& ) = default;
++
++auto miroil::InputDevice::operator=(InputDevice const& src) -> InputDevice& = default;
++
++auto miroil::InputDevice::operator=(InputDevice&& src) -> InputDevice& = default;
+diff --git a/src/platforms/mirserver/miroil/src/input_device_observer.cpp b/src/platforms/mirserver/miroil/src/input_device_observer.cpp
+new file mode 100644
+index 00000000..35c04645
+--- /dev/null
++++ b/src/platforms/mirserver/miroil/src/input_device_observer.cpp
+@@ -0,0 +1,19 @@
++/*
++ * Copyright (C) 2016-2021 Canonical, Ltd.
++ *
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU Lesser General Public License version 3, as published by
++ * the Free Software Foundation.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranties of MERCHANTABILITY,
++ * SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ * Lesser General Public License for more details.
++ *
++ * You should have received a copy of the GNU Lesser General Public License
++ * along with this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++#include <miroil/input_device_observer.h>
++
++miroil::InputDeviceObserver::~InputDeviceObserver() = default;
+diff --git a/src/platforms/mirserver/miroil/src/mir_prompt_session.cpp b/src/platforms/mirserver/miroil/src/mir_prompt_session.cpp
+new file mode 100644
+index 00000000..607cac45
+--- /dev/null
++++ b/src/platforms/mirserver/miroil/src/mir_prompt_session.cpp
+@@ -0,0 +1,34 @@
++#include <miroil/mir_prompt_session.h>
++#include <mir/uncaught.h>
++
++miroil::MirPromptSession::MirPromptSession(::MirPromptSession * prompt_session)
++{
++ this->prompt_session = prompt_session;
++}
++
++miroil::MirPromptSession::MirPromptSession(MirPromptSession const& src) = default;
++miroil::MirPromptSession::MirPromptSession(MirPromptSession && src) = default;
++miroil::MirPromptSession::~MirPromptSession() = default;
++
++auto miroil::MirPromptSession::operator=(MirPromptSession const& src) -> MirPromptSession&
++{
++ prompt_session = src.prompt_session;
++ return *this;
++}
++
++auto miroil::MirPromptSession::operator=(MirPromptSession&& src) -> MirPromptSession&
++{
++ prompt_session = src.prompt_session;
++ return *this;
++}
++
++bool miroil::MirPromptSession::operator==(MirPromptSession const& other)
++{
++ return prompt_session == other.prompt_session;
++}
++
++bool miroil::MirPromptSession::new_fds_for_prompt_providers(unsigned int /*no_of_fds*/, MirClientFdCallback /*callback*/, void * /*context*/)
++{
++// return mir_prompt_session_new_fds_for_prompt_providers(prompt_session, no_of_fds, callback, context);
++ return false;
++}
+diff --git a/src/platforms/mirserver/miroil/src/mir_server_hooks.cpp b/src/platforms/mirserver/miroil/src/mir_server_hooks.cpp
+new file mode 100644
+index 00000000..3ece6f67
+--- /dev/null
++++ b/src/platforms/mirserver/miroil/src/mir_server_hooks.cpp
+@@ -0,0 +1,252 @@
++/*
++ * Copyright © 2016 Canonical Ltd.
++ *
++ * This program is free software: you can redistribute it and/or modify it
++ * under the terms of the GNU General Public License version 3,
++ * as published by the Free Software Foundation.
++ *
++ * This program is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ * GNU General Public License for more details.
++ *
++ * You should have received a copy of the GNU General Public License
++ * along with this program. If not, see <http://www.gnu.org/licenses/>.
++ *
++ * Authored by: Alan Griffiths <alan@octopull.co.uk>
++ */
++
++#include <miroil/mir_server_hooks.h>
++
++// mir
++#include <mir/server.h>
++#include <mir/graphics/cursor.h>
++#include <mir/scene/prompt_session_listener.h>
++#include <mir/input/input_device_hub.h>
++#include <mir/input/input_device_observer.h>
++#include <mir/input/cursor_images.h>
++#include <mir/version.h>
++
++#include <stdexcept>
++
++namespace mg = mir::graphics;
++namespace ms = mir::scene;
++
++namespace
++{
++struct PromptSessionListenerImpl : mir::scene::PromptSessionListener
++{
++ PromptSessionListenerImpl(std::shared_ptr<miroil::PromptSessionListener> const& listener) : listener(listener) {};
++ ~PromptSessionListenerImpl();
++
++ void starting(std::shared_ptr<mir::scene::PromptSession> const& prompt_session) override;
++ void stopping(std::shared_ptr<mir::scene::PromptSession> const& prompt_session) override;
++ void suspending(std::shared_ptr<mir::scene::PromptSession> const& prompt_session) override;
++ void resuming(std::shared_ptr<mir::scene::PromptSession> const& prompt_session) override;
++
++ void prompt_provider_added(mir::scene::PromptSession const& prompt_session,
++ std::shared_ptr<mir::scene::Session> const& prompt_provider) override;
++ void prompt_provider_removed(mir::scene::PromptSession const& prompt_session,
++ std::shared_ptr<mir::scene::Session> const& prompt_provider) override;
++
++private:
++ std::shared_ptr<miroil::PromptSessionListener> const listener;
++};
++
++struct MirInputDeviceObserverImpl : mir::input::InputDeviceObserver
++{
++public:
++ MirInputDeviceObserverImpl(std::shared_ptr<miroil::InputDeviceObserver> & observer) : observer(observer) {};
++
++ void device_added(std::shared_ptr<mir::input::Device> const& device) override;
++ void device_changed(std::shared_ptr<mir::input::Device> const& /*device*/) override {}
++ void device_removed(std::shared_ptr<mir::input::Device> const& device) override;
++ void changes_complete() override {}
++
++private:
++ std::shared_ptr<miroil::InputDeviceObserver> observer;
++};
++
++struct HiddenCursorWrapper : mg::Cursor
++{
++ HiddenCursorWrapper(std::shared_ptr<mg::Cursor> const& wrapped) :
++ wrapped{wrapped} { wrapped->hide(); }
++#if MIR_SERVER_VERSION < MIR_VERSION_NUMBER(2, 3, 0)
++ void show() override { }
++#endif
++ void show(mg::CursorImage const&) override { }
++ void hide() override { wrapped->hide(); }
++
++ void move_to(mir::geometry::Point position) override { wrapped->move_to(position); }
++
++private:
++ std::shared_ptr<mg::Cursor> const wrapped;
++};
++}
++
++class MirCursorImages : public mir::input::CursorImages
++{
++public:
++ MirCursorImages(miroil::CreateNamedCursor func);
++
++ std::shared_ptr<mir::graphics::CursorImage> image(const std::string &cursor_name,
++ const mir::geometry::Size &size) override;
++
++private:
++ miroil::CreateNamedCursor create_func;
++};
++
++MirCursorImages::MirCursorImages(miroil::CreateNamedCursor func)
++{
++ create_func = func;
++}
++
++auto MirCursorImages::image(const std::string &cursor_name, const mir::geometry::Size &)
++-> std::shared_ptr<mir::graphics::CursorImage>
++{
++ return create_func(cursor_name);
++}
++
++struct miroil::MirServerHooks::Self
++{
++ std::shared_ptr<miroil::PromptSessionListener> prompt_session_listener;
++ std::weak_ptr<PromptSessionListenerImpl> prompt_session_listener_impl;
++ std::weak_ptr<mir::graphics::Display> mir_display;
++ std::weak_ptr<mir::shell::DisplayConfigurationController> mir_display_configuration_controller;
++ std::weak_ptr<mir::scene::PromptSessionManager> mir_prompt_session_manager;
++ std::weak_ptr<mir::input::InputDeviceHub> input_device_hub;
++ CreateNamedCursor create_cursor;
++};
++
++miroil::MirServerHooks::MirServerHooks() :
++ self{std::make_shared<Self>()}
++{
++}
++
++void miroil::MirServerHooks::operator()(mir::Server& server)
++{
++ if (self->create_cursor) {
++ server.override_the_cursor_images([this]
++ { return std::make_shared<MirCursorImages>(self->create_cursor); });
++ }
++
++ server.wrap_cursor([&](std::shared_ptr<mg::Cursor> const& wrapped)
++ { return std::make_shared<HiddenCursorWrapper>(wrapped); });
++
++ if (self->prompt_session_listener) {
++ server.override_the_prompt_session_listener([this]
++ {
++ auto const result = std::make_shared<PromptSessionListenerImpl>(self->prompt_session_listener);
++ self->prompt_session_listener_impl = result;
++ return result;
++ });
++ }
++
++ server.add_init_callback([this, &server]
++ {
++ self->mir_display = server.the_display();
++ self->mir_display_configuration_controller = server.the_display_configuration_controller();
++ self->mir_prompt_session_manager = server.the_prompt_session_manager();
++ self->input_device_hub = server.the_input_device_hub();
++ });
++}
++
++auto miroil::MirServerHooks::the_prompt_session_listener() const
++-> miroil::PromptSessionListener*
++{
++ return self->prompt_session_listener.get();
++}
++
++auto miroil::MirServerHooks::the_prompt_session_manager() const
++-> std::shared_ptr<mir::scene::PromptSessionManager>
++{
++ if (auto result = self->mir_prompt_session_manager.lock())
++ return result;
++
++ throw std::logic_error("No prompt session manager available. Server not running?");
++}
++
++auto miroil::MirServerHooks::the_mir_display() const
++-> std::shared_ptr<mir::graphics::Display>
++{
++ if (auto result = self->mir_display.lock())
++ return result;
++
++ throw std::logic_error("No display available. Server not running?");
++}
++
++auto miroil::MirServerHooks::the_display_configuration_controller() const
++-> std::shared_ptr<mir::shell::DisplayConfigurationController>
++{
++ if (auto result = self->mir_display_configuration_controller.lock())
++ return result;
++
++ throw std::logic_error("No input device hub available. Server not running?");
++}
++
++void miroil::MirServerHooks::create_named_cursor(CreateNamedCursor func)
++{
++ self->create_cursor = func;
++}
++
++void miroil::MirServerHooks::create_input_device_observer(std::shared_ptr<miroil::InputDeviceObserver> & observer)
++{
++ if (auto result = self->input_device_hub.lock()) {
++ result->add_observer(std::make_shared<MirInputDeviceObserverImpl>(observer));
++ return;
++ }
++
++ throw std::logic_error("No input device hub available. Server not running?");
++}
++
++void miroil::MirServerHooks::create_prompt_session_listener(std::shared_ptr<miroil::PromptSessionListener> listener)
++{
++ self->prompt_session_listener = listener;
++}
++
++PromptSessionListenerImpl::~PromptSessionListenerImpl() = default;
++
++void PromptSessionListenerImpl::starting(std::shared_ptr<ms::PromptSession> const& prompt_session)
++{
++ listener->starting(prompt_session);
++}
++
++void PromptSessionListenerImpl::stopping(std::shared_ptr<ms::PromptSession> const& prompt_session)
++{
++ listener->stopping(prompt_session);
++}
++
++void PromptSessionListenerImpl::suspending(std::shared_ptr<ms::PromptSession> const& prompt_session)
++{
++ listener->suspending(prompt_session);
++}
++
++void PromptSessionListenerImpl::resuming(std::shared_ptr<ms::PromptSession> const& prompt_session)
++{
++ listener->resuming(prompt_session);
++}
++
++void PromptSessionListenerImpl::prompt_provider_added(ms::PromptSession const& prompt_session,
++ std::shared_ptr<ms::Session> const& prompt_provider)
++{
++ listener->prompt_provider_added(prompt_session, prompt_provider);
++}
++
++void PromptSessionListenerImpl::prompt_provider_removed(ms::PromptSession const& prompt_session,
++ std::shared_ptr<ms::Session> const& prompt_provider)
++{
++ listener->prompt_provider_removed(prompt_session, prompt_provider);
++}
++
++void MirInputDeviceObserverImpl::device_added(const std::shared_ptr<mir::input::Device> &device)
++{
++ observer->device_added(miroil::InputDevice(device));
++}
++
++void MirInputDeviceObserverImpl::device_removed(const std::shared_ptr<mir::input::Device> &device)
++{
++ if (device) {
++ observer->device_removed(miroil::InputDevice(device));
++ }
++}
++
+diff --git a/src/platforms/mirserver/miral/mirbuffer.cpp b/src/platforms/mirserver/miroil/src/mirbuffer.cpp
+similarity index 97%
+rename from src/platforms/mirserver/miral/mirbuffer.cpp
+rename to src/platforms/mirserver/miroil/src/mirbuffer.cpp
+index 8a6790c4..9710365b 100644
+--- a/src/platforms/mirserver/miral/mirbuffer.cpp
++++ b/src/platforms/mirserver/miroil/src/mirbuffer.cpp
+@@ -1,6 +1,6 @@
+ /*
+ * Copyright 2021 UBports Foundation.
+- * Copyright © 2017 Canonical Ltd.
++ * Copyright © 2017-2020 Canonical Ltd.
+ *
+ * This program is free software: you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 3,
+@@ -15,10 +15,10 @@
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+-#include "mirbuffer.h"
++#include "miroil/mirbuffer.h"
+
+ #include <mir/graphics/buffer.h>
+-#include "mir/graphics/texture.h"
++#include <mir/graphics/texture.h>
+ #include <mir/renderer/gl/texture_source.h>
+
+ #include <stdexcept>
+diff --git a/src/platforms/mirserver/openglcontextfactory.cpp b/src/platforms/mirserver/miroil/src/open_gl_context.cpp
+similarity index 51%
+rename from src/platforms/mirserver/openglcontextfactory.cpp
+rename to src/platforms/mirserver/miroil/src/open_gl_context.cpp
+index 1e77ab7a..271d9cc8 100644
+--- a/src/platforms/mirserver/openglcontextfactory.cpp
++++ b/src/platforms/mirserver/miroil/src/open_gl_context.cpp
+@@ -16,36 +16,37 @@
+ * Authored by: Alan Griffiths <alan@octopull.co.uk>
+ */
+
+-#include "openglcontextfactory.h"
+-
+-// local
+-#include "mirglconfig.h"
+-#include "miropenglcontext.h"
++#include "miroil/open_gl_context.h"
++#include <stdexcept>
+
+ // mir
+ #include <mir/server.h>
+-
+-struct qtmir::OpenGLContextFactory::Self
++
++struct miroil::OpenGLContext::Self
+ {
+- std::shared_ptr<MirGLConfig> m_glConfig;
++ Self(mir::graphics::GLConfig* gl_config)
++ : gl_config(gl_config)
++ {
++ }
++
++ std::shared_ptr<mir::graphics::GLConfig> const gl_config;
+ };
+
+-qtmir::OpenGLContextFactory::OpenGLContextFactory() :
+- self{std::make_shared<Self>()}
+-{
++miroil::OpenGLContext::OpenGLContext(mir::graphics::GLConfig* gl_config)
++: self{std::make_shared<Self>(gl_config)}
++{
+ }
+
+-void qtmir::OpenGLContextFactory::operator()(mir::Server& server)
++void miroil::OpenGLContext::operator()(mir::Server& server)
+ {
+ server.override_the_gl_config([this]
+- { return self->m_glConfig = std::make_shared<MirGLConfig>(); });
++ { return self->gl_config; }
++ );
+ }
+
+-QPlatformOpenGLContext *qtmir::OpenGLContextFactory::createPlatformOpenGLContext(
+- QSurfaceFormat format, mir::graphics::Display &mirDisplay) const
++auto miroil::OpenGLContext::the_open_gl_config() const
++-> std::shared_ptr<mir::graphics::GLConfig>
+ {
+- if (!self->m_glConfig)
+- throw std::logic_error("No gl config available. Server not running?");
+-
+- return new MirOpenGLContext(mirDisplay, *self->m_glConfig, format);
++ return self->gl_config;
+ }
++
+diff --git a/src/platforms/mirserver/miral/persist_display_config.cpp b/src/platforms/mirserver/miroil/src/persist_display_config.cpp
+similarity index 74%
+rename from src/platforms/mirserver/miral/persist_display_config.cpp
+rename to src/platforms/mirserver/miroil/src/persist_display_config.cpp
+index 2bfb98cc..bf23bbb2 100644
+--- a/src/platforms/mirserver/miral/persist_display_config.cpp
++++ b/src/platforms/mirserver/miroil/src/persist_display_config.cpp
+@@ -1,5 +1,5 @@
+ /*
+- * Copyright © 2016 Canonical Ltd.
++ * Copyright © 2016-2020 Canonical Ltd.
+ *
+ * This program is free software: you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 3,
+@@ -16,45 +16,42 @@
+ * Authored by: Alan Griffiths <alan@octopull.co.uk>
+ */
+
+-#include "persist_display_config.h"
+-#include "qtmir/miral/display_configuration_policy.h"
+-#include "qtmir/miral/display_configuration_storage.h"
+-#include "qtmir/miral/edid.h"
++#include "miroil/persist_display_config.h"
++#include "miroil/display_configuration_policy.h"
++#include "miroil/display_configuration_storage.h"
+
+-#include <mir/graphics/display_configuration_policy.h>
+ #include <mir/graphics/display_configuration.h>
+ #include <mir/graphics/display_configuration_observer.h>
++#include <mir/graphics/display_configuration_policy.h>
+ #include <mir/observer_registrar.h>
+ #include <mir/server.h>
+-#include <mir/version.h>
++#include <mir/log.h>
+
+-#include <stdexcept>
++#include <boost/throw_exception.hpp>
+
+-// shouldn't really import this
+-#include <qglobal.h>
++#include <stdexcept>
+
+ namespace mg = mir::graphics;
+
+ namespace
+ {
+-
+ struct PersistDisplayConfigPolicy
+ {
+- PersistDisplayConfigPolicy(std::shared_ptr<miral::DisplayConfigurationStorage> const& storage) :
++ PersistDisplayConfigPolicy(std::shared_ptr<miroil::DisplayConfigurationStorage> const& storage) :
+ storage(storage) {}
+ virtual ~PersistDisplayConfigPolicy() = default;
+ PersistDisplayConfigPolicy(PersistDisplayConfigPolicy const&) = delete;
+ auto operator=(PersistDisplayConfigPolicy const&) -> PersistDisplayConfigPolicy& = delete;
+
+ void apply_to(mg::DisplayConfiguration& conf,
+- miral::DisplayConfigurationPolicy& wrapped_policy,
+- miral::DisplayConfigurationPolicy& custom_policy);
++ miroil::DisplayConfigurationPolicy& wrapped_policy,
++ miroil::DisplayConfigurationPolicy& custom_policy);
+ void save_config(mg::DisplayConfiguration const& base_conf);
+
+- std::shared_ptr<miral::DisplayConfigurationStorage> storage;
++ std::shared_ptr<miroil::DisplayConfigurationStorage> storage;
+ };
+
+-struct MiralWrappedMirDisplayConfigurationPolicy : miral::DisplayConfigurationPolicy
++struct MiralWrappedMirDisplayConfigurationPolicy : miroil::DisplayConfigurationPolicy
+ {
+ MiralWrappedMirDisplayConfigurationPolicy(std::shared_ptr<mg::DisplayConfigurationPolicy> const& self) :
+ self{self}
+@@ -72,8 +69,8 @@ struct DisplayConfigurationPolicyAdapter : mg::DisplayConfigurationPolicy
+ {
+ DisplayConfigurationPolicyAdapter(
+ std::shared_ptr<PersistDisplayConfigPolicy> const& self,
+- std::shared_ptr<miral::DisplayConfigurationPolicy> const& wrapped_policy,
+- std::shared_ptr<miral::DisplayConfigurationPolicy> const& custom_policy) :
++ std::shared_ptr<miroil::DisplayConfigurationPolicy> const& wrapped_policy,
++ std::shared_ptr<miroil::DisplayConfigurationPolicy> const& custom_policy) :
+ self{self}, wrapped_policy{wrapped_policy}, custom_policy{custom_policy}
+ {}
+
+@@ -83,8 +80,8 @@ struct DisplayConfigurationPolicyAdapter : mg::DisplayConfigurationPolicy
+ }
+
+ std::shared_ptr<PersistDisplayConfigPolicy> const self;
+- std::shared_ptr<miral::DisplayConfigurationPolicy> const wrapped_policy;
+- std::shared_ptr<miral::DisplayConfigurationPolicy> const custom_policy;
++ std::shared_ptr<miroil::DisplayConfigurationPolicy> const wrapped_policy;
++ std::shared_ptr<miroil::DisplayConfigurationPolicy> const custom_policy;
+ };
+
+ struct DisplayConfigurationObserver : mg::DisplayConfigurationObserver
+@@ -101,16 +98,14 @@ struct DisplayConfigurationObserver : mg::DisplayConfigurationObserver
+ std::shared_ptr<mg::DisplayConfiguration const> const& /*failed_fallback*/,
+ std::exception const& /*error*/) override {}
+
+-#if MIR_SERVER_VERSION >= MIR_VERSION_NUMBER(1, 5, 0)
+ void configuration_updated_for_session(
+ std::shared_ptr<mir::scene::Session> const&,
+ std::shared_ptr<mg::DisplayConfiguration const> const&) override {}
+-#endif
+ };
+
+-miral::DisplayConfigurationOptions::DisplayMode current_mode_of(mg::DisplayConfigurationOutput const& output)
++miroil::DisplayConfigurationOptions::DisplayMode current_mode_of(mg::DisplayConfigurationOutput const& output)
+ {
+- miral::DisplayConfigurationOptions::DisplayMode mode;
++ miroil::DisplayConfigurationOptions::DisplayMode mode;
+ if (output.current_mode_index >= output.modes.size()) return mode;
+
+ auto const& current_mode = output.modes[output.current_mode_index];
+@@ -118,9 +113,15 @@ miral::DisplayConfigurationOptions::DisplayMode current_mode_of(mg::DisplayConfi
+ mode.refresh_rate = current_mode.vrefresh_hz;
+ return mode;
+ }
++
++// From Qt
++inline bool qFuzzyCompare(double p1, double p2)
++{
++ return (std::abs(p1 - p2) * 1000000000000. <= std::min(std::abs(p1), std::abs(p2)));
++}
+ }
+
+-struct miral::PersistDisplayConfig::Self : PersistDisplayConfigPolicy, DisplayConfigurationObserver
++struct miroil::PersistDisplayConfig::Self : PersistDisplayConfigPolicy, DisplayConfigurationObserver
+ {
+ Self(std::shared_ptr<DisplayConfigurationStorage> const& storage,
+ DisplayConfigurationPolicyWrapper const& custom_wrapper) :
+@@ -133,36 +134,34 @@ struct miral::PersistDisplayConfig::Self : PersistDisplayConfigPolicy, DisplayCo
+ {
+ save_config(*base_config);
+ }
+-#if MIR_SERVER_VERSION >= MIR_VERSION_NUMBER(1, 5, 0)
++
+ void session_configuration_applied(std::shared_ptr<mir::scene::Session> const&,
+- std::shared_ptr<mg::DisplayConfiguration> const&){}
+- void session_configuration_removed(std::shared_ptr<mir::scene::Session> const&) {}
+-#else
+- void session_configuration_applied(std::shared_ptr<mir::frontend::Session> const&,
+- std::shared_ptr<mg::DisplayConfiguration> const&){}
+- void session_configuration_removed(std::shared_ptr<mir::frontend::Session> const&) {}
+-#endif
++ std::shared_ptr<mg::DisplayConfiguration> const&) override {}
++ void session_configuration_removed(std::shared_ptr<mir::scene::Session> const&) override {}
++ void configuration_updated_for_session(
++ std::shared_ptr<mir::scene::Session> const&,
++ std::shared_ptr<mg::DisplayConfiguration const> const&) override {}
+ };
+
+-miral::PersistDisplayConfig::PersistDisplayConfig(std::shared_ptr<DisplayConfigurationStorage> const& storage,
++miroil::PersistDisplayConfig::PersistDisplayConfig(std::shared_ptr<DisplayConfigurationStorage> const& storage,
+ DisplayConfigurationPolicyWrapper const& custom_wrapper) :
+ self{std::make_shared<Self>(storage, custom_wrapper)}
+ {
+ }
+
+-miral::PersistDisplayConfig::~PersistDisplayConfig() = default;
++miroil::PersistDisplayConfig::~PersistDisplayConfig() = default;
+
+-miral::PersistDisplayConfig::PersistDisplayConfig(PersistDisplayConfig const&) = default;
++miroil::PersistDisplayConfig::PersistDisplayConfig(PersistDisplayConfig const&) = default;
+
+-auto miral::PersistDisplayConfig::operator=(PersistDisplayConfig const&) -> PersistDisplayConfig& = default;
++auto miroil::PersistDisplayConfig::operator=(PersistDisplayConfig const&) -> PersistDisplayConfig& = default;
+
+-void miral::PersistDisplayConfig::operator()(mir::Server& server)
++void miroil::PersistDisplayConfig::operator()(mir::Server& server)
+ {
+ server.wrap_display_configuration_policy(
+ [this](std::shared_ptr<mg::DisplayConfigurationPolicy> const& wrapped)
+ -> std::shared_ptr<mg::DisplayConfigurationPolicy>
+ {
+- auto custom_wrapper = self->custom_wrapper();
++ auto custom_wrapper = self->custom_wrapper(wrapped);
+ return std::make_shared<DisplayConfigurationPolicyAdapter>(self,
+ std::make_shared<MiralWrappedMirDisplayConfigurationPolicy>(wrapped),
+ custom_wrapper);
+@@ -174,8 +173,8 @@ void miral::PersistDisplayConfig::operator()(mir::Server& server)
+
+ void PersistDisplayConfigPolicy::apply_to(
+ mg::DisplayConfiguration& conf,
+- miral::DisplayConfigurationPolicy& wrapped_policy,
+- miral::DisplayConfigurationPolicy& custom_policy)
++ miroil::DisplayConfigurationPolicy& wrapped_policy,
++ miroil::DisplayConfigurationPolicy& custom_policy)
+ {
+ // first apply the policy we wrapped by setting a custom policy
+ wrapped_policy.apply_to(conf);
+@@ -183,14 +182,14 @@ void PersistDisplayConfigPolicy::apply_to(
+ custom_policy.apply_to(conf);
+
+ if (!storage) {
+- throw std::runtime_error("No display configuration storage supplied.");
++ BOOST_THROW_EXCEPTION(std::runtime_error("No display configuration storage supplied."));
+ }
+
+ conf.for_each_output([this, &conf](mg::UserDisplayConfigurationOutput& output) {
+ if (!output.connected) return;
+
+ try {
+- miral::DisplayId display_id;
++ miroil::DisplayId display_id;
+ // FIXME - output.edid should be std::vector<uint8_t>, not std::vector<uint8_t const>
+ display_id.edid.parse_data(reinterpret_cast<std::vector<uint8_t> const&>(output.edid));
+ display_id.output_id = output.id;
+@@ -198,7 +197,7 @@ void PersistDisplayConfigPolicy::apply_to(
+ // TODO if the h/w profile (by some definition) has changed, then apply corresponding saved config (if any).
+ // TODO Otherwise...
+
+- miral::DisplayConfigurationOptions config;
++ miroil::DisplayConfigurationOptions config;
+ if (storage->load(display_id, config)) {
+
+ if (config.mode.is_set()) {
+@@ -217,7 +216,7 @@ void PersistDisplayConfigPolicy::apply_to(
+ }
+
+ uint output_index = 0;
+- conf.for_each_output([this, &output, config, &output_index](mg::DisplayConfigurationOutput const& find_output) {
++ conf.for_each_output([&output, config, &output_index](mg::DisplayConfigurationOutput const& find_output) {
+ if (output_index == config.clone_output_index.value()) {
+ output.top_left = find_output.top_left;
+ }
+@@ -243,15 +242,15 @@ void PersistDisplayConfigPolicy::save_config(mg::DisplayConfiguration const& con
+ if (!output.connected) return;
+
+ try {
+- miral::DisplayId display_id;
++ miroil::DisplayId display_id;
+ // FIXME - output.edid should be std::vector<uint8_t>, not std::vector<uint8_t const>
+ display_id.edid.parse_data(reinterpret_cast<std::vector<uint8_t> const&>(output.edid));
+ display_id.output_id = output.id;
+
+- miral::DisplayConfigurationOptions config;
++ miroil::DisplayConfigurationOptions config;
+
+ uint output_index = 0;
+- conf.for_each_output([this, output, &config, &output_index](mg::DisplayConfigurationOutput const& find_output) {
++ conf.for_each_output([output, &config, &output_index](mg::DisplayConfigurationOutput const& find_output) {
+ if (!config.clone_output_index.is_set() && output.top_left == find_output.top_left) {
+ config.clone_output_index = output_index;
+ }
+diff --git a/src/platforms/mirserver/miroil/src/prompt_session_listener.cpp b/src/platforms/mirserver/miroil/src/prompt_session_listener.cpp
+new file mode 100644
+index 00000000..46c6e0f0
+--- /dev/null
++++ b/src/platforms/mirserver/miroil/src/prompt_session_listener.cpp
+@@ -0,0 +1,19 @@
++/*
++ * Copyright (C) 2016-2021 Canonical, Ltd.
++ *
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU Lesser General Public License version 3, as published by
++ * the Free Software Foundation.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranties of MERCHANTABILITY,
++ * SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ * Lesser General Public License for more details.
++ *
++ * You should have received a copy of the GNU Lesser General Public License
++ * along with this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++#include <miroil/prompt_session_listener.h>
++
++miroil::PromptSessionListener::~PromptSessionListener() = default;
+diff --git a/src/platforms/mirserver/miroil/src/prompt_session_manager.cpp b/src/platforms/mirserver/miroil/src/prompt_session_manager.cpp
+new file mode 100644
+index 00000000..7dd86f82
+--- /dev/null
++++ b/src/platforms/mirserver/miroil/src/prompt_session_manager.cpp
+@@ -0,0 +1,54 @@
++/*
++ * Copyright © 2021 Canonical Ltd.
++ *
++ * This program is free software: you can redistribute it and/or modify it
++ * under the terms of the GNU General Public License version 3,
++ * as published by the Free Software Foundation.
++ *
++ * This program is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ * GNU General Public License for more details.
++ *
++ * You should have received a copy of the GNU General Public License
++ * along with this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++#include "miroil/prompt_session_manager.h"
++#include "mir/scene/prompt_session_manager.h"
++
++miroil::PromptSessionManager::PromptSessionManager(std::shared_ptr<mir::scene::PromptSessionManager> const& prompt_session_manager)
++: prompt_session_manager{prompt_session_manager}
++{
++}
++
++miroil::PromptSessionManager::PromptSessionManager(PromptSessionManager&& /*src*/) = default;
++
++miroil::PromptSessionManager::PromptSessionManager(PromptSessionManager const& /*src*/) = default;
++
++miroil::PromptSessionManager::~PromptSessionManager() = default;
++
++bool miroil::PromptSessionManager::operator==(PromptSessionManager const& other)
++{
++ return prompt_session_manager == other.prompt_session_manager;
++}
++
++miral::Application miroil::PromptSessionManager::application_for(std::shared_ptr<mir::scene::PromptSession> const& prompt_session) const
++{
++ return prompt_session_manager->application_for(prompt_session);
++}
++
++void miroil::PromptSessionManager::stop_prompt_session(std::shared_ptr<mir::scene::PromptSession> const& prompt_session) const
++{
++ prompt_session_manager->stop_prompt_session(prompt_session);
++}
++
++void miroil::PromptSessionManager::suspend_prompt_session(std::shared_ptr<mir::scene::PromptSession> const& prompt_session) const
++{
++ prompt_session_manager->suspend_prompt_session(prompt_session);
++}
++
++void miroil::PromptSessionManager::resume_prompt_session(std::shared_ptr<mir::scene::PromptSession> const& prompt_session) const
++{
++ prompt_session_manager->resume_prompt_session(prompt_session);
++}
+diff --git a/src/platforms/mirserver/miroil/src/set_compositor.cpp b/src/platforms/mirserver/miroil/src/set_compositor.cpp
+new file mode 100644
+index 00000000..a9f524c2
+--- /dev/null
++++ b/src/platforms/mirserver/miroil/src/set_compositor.cpp
+@@ -0,0 +1,88 @@
++/*
++ * Copyright © 2021 Canonical Ltd.
++ *
++ * This program is free software: you can redistribute it and/or modify it
++ * under the terms of the GNU General Public License version 3,
++ * as published by the Free Software Foundation.
++ *
++ * This program is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ * GNU General Public License for more details.
++ *
++ * You should have received a copy of the GNU General Public License
++ * along with this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++#include "miroil/set_compositor.h"
++#include "miroil/compositor.h"
++#include <stdexcept>
++
++// mir
++#include <mir/server.h>
++#include <mir/shell/shell.h>
++#include <mir/compositor/compositor.h>
++
++namespace miroil {
++
++struct SetCompositor::CompositorImpl : public mir::compositor::Compositor
++{
++ CompositorImpl(const std::shared_ptr<miroil::Compositor> & compositor);
++
++ auto get_wrapped() -> std::shared_ptr<miroil::Compositor>;
++ void start();
++ void stop();
++
++ std::shared_ptr<miroil::Compositor> custom_compositor;
++};
++
++SetCompositor::CompositorImpl::CompositorImpl(const std::shared_ptr<miroil::Compositor> & compositor)
++: custom_compositor(compositor)
++{
++}
++
++auto SetCompositor::CompositorImpl::get_wrapped()
++-> std::shared_ptr<miroil::Compositor>
++{
++ return custom_compositor;
++}
++
++
++void SetCompositor::CompositorImpl::start()
++{
++ return custom_compositor->start();
++}
++
++void SetCompositor::CompositorImpl::stop()
++{
++ return custom_compositor->stop();
++}
++
++SetCompositor::SetCompositor(ConstructorFunction constr, InitFunction init)
++ : constructor_function(constr), init_function(init)
++{
++}
++
++void SetCompositor::operator()(mir::Server& server)
++{
++ server.override_the_compositor([this]
++ {
++ auto result = std::make_shared<CompositorImpl>(constructor_function());
++ compositor_impl = result;
++ return result;
++ });
++
++ server.add_init_callback([&, this]
++ {
++ if (auto const comp = compositor_impl.lock())
++ {
++ init_function(server.the_display(), comp->get_wrapped(), server.the_shell());
++ }
++ else
++ {
++ throw std::logic_error("No m_compositor available. Server not running?");
++ }
++ });
++}
++
++}
+diff --git a/src/platforms/mirserver/miroil/src/surface.cpp b/src/platforms/mirserver/miroil/src/surface.cpp
+new file mode 100644
+index 00000000..bdc87f51
+--- /dev/null
++++ b/src/platforms/mirserver/miroil/src/surface.cpp
+@@ -0,0 +1,267 @@
++/*
++ * Copyright (C) 2021 Canonical, Ltd.
++ *
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU Lesser General Public License version 3, as published by
++ * the Free Software Foundation.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranties of MERCHANTABILITY,
++ * SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ * Lesser General Public License for more details.
++ *
++ * You should have received a copy of the GNU Lesser General Public License
++ * along with this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++#include <miroil/surface.h>
++#include <miroil/surface_observer.h>
++#include "mir/scene/surface.h"
++#include "mir/scene/surface_observer.h"
++#include "mir/log.h"
++#include "mir/version.h"
++
++class miroil::SurfaceObserverImpl : public mir::scene::SurfaceObserver
++{
++public:
++ SurfaceObserverImpl(std::shared_ptr<miroil::SurfaceObserver> const &wrapped);
++ virtual ~SurfaceObserverImpl();
++
++ void alpha_set_to(mir::scene::Surface const *surf, float alpha) override;
++ void application_id_set_to(mir::scene::Surface const *surf,
++ std::string const &application_id) override;
++ void attrib_changed(mir::scene::Surface const *surf, MirWindowAttrib attrib,
++ int value) override;
++ void client_surface_close_requested(mir::scene::Surface const *surf) override;
++ void content_resized_to(mir::scene::Surface const *surf,
++ mir::geometry::Size const &content_size) override;
++ void cursor_image_removed(mir::scene::Surface const *surf) override;
++ void cursor_image_set_to(mir::scene::Surface const *surf,
++ mir::graphics::CursorImage const &image) override;
++ void depth_layer_set_to(mir::scene::Surface const *surf,
++ MirDepthLayer depth_layer) override;
++ void frame_posted(mir::scene::Surface const *surf, int frames_available,
++ mir::geometry::Size const &size) override;
++ void hidden_set_to(mir::scene::Surface const *surf, bool hide) override;
++ void input_consumed(mir::scene::Surface const *surf,
++ MirEvent const *event) override;
++#if MIR_SERVER_VERSION < MIR_VERSION_NUMBER(2, 6, 0)
++ void keymap_changed(mir::scene::Surface const* surf, MirInputDeviceId id, std::string const& model,
++ std::string const& layout, std::string const& variant, std::string const& options) override;
++#endif
++ void moved_to(mir::scene::Surface const *surf,
++ mir::geometry::Point const &top_left) override;
++ void orientation_set_to(mir::scene::Surface const *surf,
++ MirOrientation orientation) override;
++ void placed_relative(mir::scene::Surface const *surf,
++ mir::geometry::Rectangle const &placement) override;
++ void
++ reception_mode_set_to(mir::scene::Surface const * /*surf*/,
++ mir::input::InputReceptionMode /*mode*/) override{};
++ void renamed(mir::scene::Surface const *surf, char const *name) override;
++ void start_drag_and_drop(mir::scene::Surface const *surf,
++ std::vector<uint8_t> const &handle) override;
++ void transformation_set_to(mir::scene::Surface const *surf,
++ glm::mat4 const &t) override;
++ void window_resized_to(mir::scene::Surface const *surf,
++ mir::geometry::Size const &window_size) override;
++
++private:
++ std::shared_ptr<miroil::SurfaceObserver> listener;
++};
++
++miroil::SurfaceObserverImpl::SurfaceObserverImpl(std::shared_ptr<miroil::SurfaceObserver> const & wrapped)
++: listener(wrapped)
++{
++}
++
++miroil::SurfaceObserverImpl::~SurfaceObserverImpl() = default;
++
++void miroil::SurfaceObserverImpl::alpha_set_to(mir::scene::Surface const* surf, float alpha)
++{
++ listener->alpha_set_to(surf, alpha);
++}
++
++void miroil::SurfaceObserverImpl::application_id_set_to(mir::scene::Surface const* surf, std::string const& application_id)
++{
++ listener->application_id_set_to(surf, application_id);
++}
++
++void miroil::SurfaceObserverImpl::attrib_changed(mir::scene::Surface const* surf, MirWindowAttrib attrib, int value)
++{
++ listener->attrib_changed(surf, attrib, value);
++}
++
++void miroil::SurfaceObserverImpl::client_surface_close_requested(mir::scene::Surface const* surf)
++{
++ listener->client_surface_close_requested(surf);
++}
++
++void miroil::SurfaceObserverImpl::content_resized_to(mir::scene::Surface const* surf, mir::geometry::Size const& content_size)
++{
++ listener->content_resized_to(surf, content_size);
++}
++
++void miroil::SurfaceObserverImpl::cursor_image_removed(mir::scene::Surface const* surf)
++{
++ listener->cursor_image_removed(surf);
++}
++
++void miroil::SurfaceObserverImpl::cursor_image_set_to(mir::scene::Surface const* surf, mir::graphics::CursorImage const& image)
++{
++ listener->cursor_image_set_to(surf, image);
++}
++
++void miroil::SurfaceObserverImpl::depth_layer_set_to(mir::scene::Surface const* surf, MirDepthLayer depth_layer)
++{
++ listener->depth_layer_set_to(surf, depth_layer);
++}
++
++void miroil::SurfaceObserverImpl::frame_posted(mir::scene::Surface const* surf, int frames_available, mir::geometry::Size const& size)
++{
++ listener->frame_posted(surf, frames_available, size);
++}
++
++void miroil::SurfaceObserverImpl::hidden_set_to(mir::scene::Surface const* surf, bool hide)
++{
++ listener->hidden_set_to(surf, hide);
++}
++
++void miroil::SurfaceObserverImpl::input_consumed(mir::scene::Surface const* surf, MirEvent const* event)
++{
++ listener->input_consumed(surf, event);
++}
++
++#if MIR_SERVER_VERSION < MIR_VERSION_NUMBER(2, 6, 0)
++void miroil::SurfaceObserverImpl::keymap_changed(mir::scene::Surface const* surf, MirInputDeviceId id, std::string const& model,
++ std::string const& layout, std::string const& variant, std::string const& options)
++{
++ listener->keymap_changed(surf, id, model, layout, variant, options);
++}
++#endif
++
++void miroil::SurfaceObserverImpl::moved_to(mir::scene::Surface const* surf, mir::geometry::Point const& top_left)
++{
++ listener->moved_to(surf, top_left);
++}
++
++void miroil::SurfaceObserverImpl::orientation_set_to(mir::scene::Surface const* surf, MirOrientation orientation)
++{
++ listener->orientation_set_to(surf, orientation);
++}
++
++void miroil::SurfaceObserverImpl::placed_relative(mir::scene::Surface const* surf, mir::geometry::Rectangle const& placement)
++{
++ listener->placed_relative(surf, placement);
++}
++
++void miroil::SurfaceObserverImpl::renamed(mir::scene::Surface const* surf, char const* name)
++{
++ listener->renamed(surf, name);
++}
++
++void miroil::SurfaceObserverImpl::start_drag_and_drop(mir::scene::Surface const* surf, std::vector<uint8_t> const& handle)
++{
++ listener->start_drag_and_drop(surf, handle);
++}
++
++void miroil::SurfaceObserverImpl::transformation_set_to(mir::scene::Surface const* surf, glm::mat4 const& t)
++{
++ listener->transformation_set_to(surf, t);
++}
++
++void miroil::SurfaceObserverImpl::window_resized_to(mir::scene::Surface const* surf, mir::geometry::Size const& window_size)
++{
++ listener->window_resized_to(surf, window_size);
++}
++
++miroil::Surface::Surface(std::shared_ptr<mir::scene::Surface> wrapped) :
++ wrapped(wrapped)
++{
++}
++
++void miroil::Surface::add_observer(std::shared_ptr<SurfaceObserver> const& observer)
++{
++ auto it = observers.find(observer);
++ if (it == observers.end()) {
++ std::shared_ptr<SurfaceObserverImpl> impl = std::make_shared<SurfaceObserverImpl>(observer);
++
++ wrapped->add_observer(impl);
++ observers.insert({observer, impl});
++ }
++}
++
++bool miroil::Surface::is_confined_to_window()
++{
++#if MIR_SERVER_VERSION >= MIR_VERSION_NUMBER(2, 6, 0)
++ return (wrapped->confine_pointer_state() == mir_pointer_confined_oneshot ||
++ wrapped->confine_pointer_state() == mir_pointer_confined_persistent);
++#else
++ return false;
++#endif
++}
++
++void miroil::Surface::remove_observer(std::shared_ptr<miroil::SurfaceObserver> const& observer)
++{
++ auto it = observers.find(observer);
++ if (it != observers.end()) {
++ wrapped->remove_observer(it->second);
++ observers.erase(it);
++ }
++}
++
++auto miroil::Surface::get_wrapped() const -> mir::scene::Surface*
++{
++ return wrapped.get();
++}
++
++int miroil::Surface::buffers_ready_for_compositor(void const* compositor_id) const
++{
++ return wrapped->buffers_ready_for_compositor(compositor_id);
++}
++
++mir::graphics::RenderableList miroil::Surface::generate_renderables(miroil::CompositorID id) const
++{
++ return wrapped->generate_renderables(id);
++}
++
++void miroil::Surface::set_orientation(MirOrientation orientation)
++{
++ wrapped->set_orientation(orientation);
++}
++
++void miroil::Surface::set_confine_pointer_state(MirPointerConfinementState state)
++{
++ wrapped->set_confine_pointer_state(state);
++}
++
++std::shared_ptr<mir::scene::Surface> miroil::Surface::parent() const
++{
++ return wrapped->parent();
++}
++
++mir::geometry::Point miroil::Surface::top_left() const
++{
++ return wrapped->top_left();
++}
++
++bool miroil::Surface::visible() const
++{
++ return wrapped->visible();
++}
++
++int miroil::Surface::configure(MirWindowAttrib attrib, int value)
++{
++ return wrapped->configure(attrib, value);
++}
++
++int miroil::Surface::query(MirWindowAttrib attrib) const
++{
++ return wrapped->query(attrib);
++}
++
++void miroil::Surface::set_keymap(MirInputDeviceId /*id*/, const std::string& /*model*/,
++ const std::string& /*layout*/, const std::string& /*variant*/,
++ const std::string& /*options*/)
++{
++ fprintf(stderr, "Stubbed function miroil::Surface::set_keymap() called - per-surface keymaps no longer supported");
++}
+diff --git a/src/platforms/mirserver/miropenglcontext.cpp b/src/platforms/mirserver/miropenglcontext.cpp
+index 5e658824..1e24755d 100644
+--- a/src/platforms/mirserver/miropenglcontext.cpp
++++ b/src/platforms/mirserver/miropenglcontext.cpp
+@@ -49,7 +49,7 @@ MirOpenGLContext::MirOpenGLContext(
+ {
+ // create a temporary GL context to fetch the EGL display and config, so Qt can determine the surface format
+ std::unique_ptr<mir::renderer::gl::Context> mirContext = dynamic_cast<mir::renderer::gl::ContextSource*>(
+- display.native_display())->create_gl_context();
++ &display)->create_gl_context();
+ mirContext->make_current();
+
+ EGLDisplay eglDisplay = eglGetCurrentDisplay();
+diff --git a/src/platforms/mirserver/mirserverhooks.cpp b/src/platforms/mirserver/mirserverhooks.cpp
+deleted file mode 100644
+index b6f6eb98..00000000
+--- a/src/platforms/mirserver/mirserverhooks.cpp
++++ /dev/null
+@@ -1,229 +0,0 @@
+-/*
+- * Copyright © 2016 Canonical Ltd.
+- *
+- * This program is free software: you can redistribute it and/or modify it
+- * under the terms of the GNU General Public License version 3,
+- * as published by the Free Software Foundation.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program. If not, see <http://www.gnu.org/licenses/>.
+- *
+- * Authored by: Alan Griffiths <alan@octopull.co.uk>
+- */
+-
+-#include "mirserverhooks.h"
+-
+-#include "mircursorimages.h"
+-#include "promptsessionlistener.h"
+-#include "screenscontroller.h"
+-#include "logging.h"
+-#include "inputdeviceobserver.h"
+-
+-// mir
+-#include <mir/server.h>
+-#include <mir/graphics/cursor.h>
+-#include <mir/scene/prompt_session_listener.h>
+-#include <mir/input/device.h>
+-#include <mir/input/input_device_hub.h>
+-#include <mir/input/input_device_observer.h>
+-
+-namespace mg = mir::graphics;
+-namespace ms = mir::scene;
+-
+-namespace
+-{
+-struct PromptSessionListenerImpl : PromptSessionListener, mir::scene::PromptSessionListener
+-{
+- ~PromptSessionListenerImpl();
+-
+- void starting(std::shared_ptr<mir::scene::PromptSession> const& prompt_session) override;
+- void stopping(std::shared_ptr<mir::scene::PromptSession> const& prompt_session) override;
+- void suspending(std::shared_ptr<mir::scene::PromptSession> const& prompt_session) override;
+- void resuming(std::shared_ptr<mir::scene::PromptSession> const& prompt_session) override;
+-
+- void prompt_provider_added(mir::scene::PromptSession const& prompt_session,
+- std::shared_ptr<mir::scene::Session> const& prompt_provider) override;
+- void prompt_provider_removed(mir::scene::PromptSession const& prompt_session,
+- std::shared_ptr<mir::scene::Session> const& prompt_provider) override;
+-
+-private:
+- QHash<const mir::scene::PromptSession *, qtmir::PromptSession> m_mirPromptToSessionHash;
+-};
+-
+-struct MirInputDeviceObserverImpl : qtmir::MirInputDeviceObserver, mir::input::InputDeviceObserver
+-{
+- void device_added(std::shared_ptr<mir::input::Device> const& device) override;
+- void device_changed(std::shared_ptr<mir::input::Device> const& /*device*/) override {}
+- void device_removed(std::shared_ptr<mir::input::Device> const& device) override;
+- void changes_complete() override {}
+-};
+-
+-struct HiddenCursorWrapper : mg::Cursor
+-{
+- HiddenCursorWrapper(std::shared_ptr<mg::Cursor> const& wrapped) :
+- wrapped{wrapped} { wrapped->hide(); }
+- void show() override { }
+- void show(mg::CursorImage const&) override { }
+- void hide() override { wrapped->hide(); }
+-
+- void move_to(mir::geometry::Point position) override { wrapped->move_to(position); }
+-
+-private:
+- std::shared_ptr<mg::Cursor> const wrapped;
+-};
+-}
+-
+-struct qtmir::MirServerHooks::Self
+-{
+- std::weak_ptr<PromptSessionListener> m_promptSessionListener;
+- std::weak_ptr<mir::graphics::Display> m_mirDisplay;
+- std::weak_ptr<mir::shell::DisplayConfigurationController> m_mirDisplayConfigurationController;
+- std::weak_ptr<mir::scene::PromptSessionManager> m_mirPromptSessionManager;
+- std::weak_ptr<mir::input::InputDeviceHub> m_inputDeviceHub;
+-};
+-
+-qtmir::MirServerHooks::MirServerHooks() :
+- self{std::make_shared<Self>()}
+-{
+-}
+-
+-void qtmir::MirServerHooks::operator()(mir::Server& server)
+-{
+- server.override_the_cursor_images([]
+- { return std::make_shared<qtmir::MirCursorImages>(); });
+-
+- server.wrap_cursor([&](std::shared_ptr<mg::Cursor> const& wrapped)
+- { return std::make_shared<HiddenCursorWrapper>(wrapped); });
+-
+- server.override_the_prompt_session_listener([this]
+- {
+- auto const result = std::make_shared<PromptSessionListenerImpl>();
+- self->m_promptSessionListener = result;
+- return result;
+- });
+-
+- server.add_init_callback([this, &server]
+- {
+- self->m_mirDisplay = server.the_display();
+- self->m_mirDisplayConfigurationController = server.the_display_configuration_controller();
+- self->m_mirPromptSessionManager = server.the_prompt_session_manager();
+- self->m_inputDeviceHub = server.the_input_device_hub();
+- });
+-}
+-
+-PromptSessionListener *qtmir::MirServerHooks::promptSessionListener() const
+-{
+- if (auto result = self->m_promptSessionListener.lock())
+- return result.get();
+-
+- throw std::logic_error("No prompt session listener available. Server not running?");
+-}
+-
+-std::shared_ptr<mir::scene::PromptSessionManager> qtmir::MirServerHooks::thePromptSessionManager() const
+-{
+- if (auto result = self->m_mirPromptSessionManager.lock())
+- return result;
+-
+- throw std::logic_error("No prompt session manager available. Server not running?");
+-}
+-
+-std::shared_ptr<mir::graphics::Display> qtmir::MirServerHooks::theMirDisplay() const
+-{
+- if (auto result = self->m_mirDisplay.lock())
+- return result;
+-
+- throw std::logic_error("No display available. Server not running?");
+-}
+-
+-std::shared_ptr<mir::input::InputDeviceHub> qtmir::MirServerHooks::theInputDeviceHub() const
+-{
+- if (auto result = self->m_inputDeviceHub.lock())
+- return result;
+-
+- throw std::logic_error("No input device hub available. Server not running?");
+-}
+-
+-QSharedPointer<ScreensController> qtmir::MirServerHooks::createScreensController(std::shared_ptr<ScreensModel> const &screensModel) const
+-{
+- return QSharedPointer<ScreensController>(
+- new ScreensController(screensModel, theMirDisplay(), self->m_mirDisplayConfigurationController.lock()));
+-}
+-
+-void qtmir::MirServerHooks::createInputDeviceObserver()
+-{
+- theInputDeviceHub()->add_observer(std::make_shared<MirInputDeviceObserverImpl>());
+-}
+-
+-PromptSessionListenerImpl::~PromptSessionListenerImpl() = default;
+-
+-void PromptSessionListenerImpl::starting(std::shared_ptr<ms::PromptSession> const& prompt_session)
+-{
+- qCDebug(QTMIR_MIR_MESSAGES) << "PromptSessionListener::starting - this=" << this << "prompt_session=" << prompt_session.get();
+- m_mirPromptToSessionHash.insert(prompt_session.get(), prompt_session);
+- Q_EMIT promptSessionStarting(prompt_session);
+-}
+-
+-void PromptSessionListenerImpl::stopping(std::shared_ptr<ms::PromptSession> const& prompt_session)
+-{
+- qCDebug(QTMIR_MIR_MESSAGES) << "PromptSessionListener::stopping - this=" << this << "prompt_session=" << prompt_session.get();
+- Q_EMIT promptSessionStopping(prompt_session);
+- m_mirPromptToSessionHash.remove(prompt_session.get());
+-}
+-
+-void PromptSessionListenerImpl::suspending(std::shared_ptr<ms::PromptSession> const& prompt_session)
+-{
+- qCDebug(QTMIR_MIR_MESSAGES) << "PromptSessionListener::suspending - this=" << this << "prompt_session=" << prompt_session.get();
+- Q_EMIT promptSessionSuspending(prompt_session);
+-}
+-
+-void PromptSessionListenerImpl::resuming(std::shared_ptr<ms::PromptSession> const& prompt_session)
+-{
+- qCDebug(QTMIR_MIR_MESSAGES) << "PromptSessionListener::resuming - this=" << this << "prompt_session=" << prompt_session.get();
+- Q_EMIT promptSessionResuming(prompt_session);
+-}
+-
+-void PromptSessionListenerImpl::prompt_provider_added(ms::PromptSession const& prompt_session,
+- std::shared_ptr<ms::Session> const& prompt_provider)
+-{
+- qCDebug(QTMIR_MIR_MESSAGES) << "PromptSessionListener::prompt_provider_added - this=" << this
+- << "prompt_session=" << &prompt_session
+- << "prompt_provider=" << prompt_provider.get();
+- Q_EMIT promptProviderAdded(m_mirPromptToSessionHash[&prompt_session], prompt_provider);
+-}
+-
+-void PromptSessionListenerImpl::prompt_provider_removed(ms::PromptSession const& prompt_session,
+- std::shared_ptr<ms::Session> const& prompt_provider)
+-{
+- qCDebug(QTMIR_MIR_MESSAGES) << "PromptSessionListener::prompt_provider_removed - this=" << this
+- << "prompt_session=" << &prompt_session
+- << "prompt_provider=" << prompt_provider.get();
+- Q_EMIT promptProviderRemoved(m_mirPromptToSessionHash[&prompt_session], prompt_provider);
+-}
+-
+-void MirInputDeviceObserverImpl::device_added(const std::shared_ptr<mir::input::Device> &device)
+-{
+- QMutexLocker locker(&m_mutex); // lock so that Qt and Mir don't apply the keymap at the same time
+-
+- if (mir::contains(device->capabilities(), mir::input::DeviceCapability::keyboard) &&
+- mir::contains(device->capabilities(), mir::input::DeviceCapability::alpha_numeric)) {
+- qCDebug(QTMIR_MIR_KEYMAP) << "Device added" << device->id();
+- m_devices.append(device);
+- applyKeymap(device);
+- }
+-}
+-
+-void MirInputDeviceObserverImpl::device_removed(const std::shared_ptr<mir::input::Device> &device)
+-{
+- QMutexLocker locker(&m_mutex); // lock so that Qt and Mir don't apply the keymap at the same time
+-
+- if (device && m_devices.contains(device)) {
+- qCDebug(QTMIR_MIR_KEYMAP) << "Device removed" << device->id();
+- m_devices.removeAll(device);
+- }
+-}
+-
+diff --git a/src/platforms/mirserver/mirserverhooks.h b/src/platforms/mirserver/mirserverhooks.h
+deleted file mode 100644
+index 6866b2fb..00000000
+--- a/src/platforms/mirserver/mirserverhooks.h
++++ /dev/null
+@@ -1,57 +0,0 @@
+-/*
+- * Copyright © 2016 Canonical Ltd.
+- *
+- * This program is free software: you can redistribute it and/or modify it
+- * under the terms of the GNU General Public License version 3,
+- * as published by the Free Software Foundation.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program. If not, see <http://www.gnu.org/licenses/>.
+- *
+- * Authored by: Alan Griffiths <alan@octopull.co.uk>
+- */
+-
+-#ifndef MIRAL_MIRSERVERHOOKS_H
+-#define MIRAL_MIRSERVERHOOKS_H
+-
+-#include <memory>
+-#include <QSharedPointer>
+-
+-namespace mir { class Server; }
+-namespace mir { namespace scene { class PromptSessionManager; }}
+-namespace mir { namespace graphics { class Display; }}
+-namespace mir { namespace input { class InputDeviceHub; } }
+-
+-class PromptSessionListener;
+-class ScreensController;
+-class ScreensModel;
+-
+-namespace qtmir
+-{
+-class MirServerHooks
+-{
+-public:
+- MirServerHooks();
+-
+- void operator()(mir::Server& server);
+-
+- PromptSessionListener *promptSessionListener() const;
+- std::shared_ptr<mir::scene::PromptSessionManager> thePromptSessionManager() const;
+- std::shared_ptr<mir::graphics::Display> theMirDisplay() const;
+- std::shared_ptr<mir::input::InputDeviceHub> theInputDeviceHub() const;
+-
+- QSharedPointer<ScreensController> createScreensController(std::shared_ptr<ScreensModel> const &screensModel) const;
+- void createInputDeviceObserver();
+-
+-private:
+- struct Self;
+- std::shared_ptr<Self> self;
+-};
+-}
+-
+-#endif //MIRAL_MIRSERVERHOOKS_H
+diff --git a/src/platforms/mirserver/nativeinterface.cpp b/src/platforms/mirserver/nativeinterface.cpp
+index 48a776c5..69484ec7 100644
+--- a/src/platforms/mirserver/nativeinterface.cpp
++++ b/src/platforms/mirserver/nativeinterface.cpp
+@@ -86,7 +86,7 @@ void NativeInterface::setWindowProperty(QPlatformWindow */*window*/, const QStri
+ }
+ }
+
+-std::shared_ptr<qtmir::PromptSessionManager> NativeInterface::thePromptSessionManager() const
++std::shared_ptr<miroil::PromptSessionManager> NativeInterface::thePromptSessionManager() const
+ {
+ return m_qMirServer->thePromptSessionManager();
+ }
+diff --git a/src/platforms/mirserver/nativeinterface.h b/src/platforms/mirserver/nativeinterface.h
+index 4cf37e9c..0dae656f 100644
+--- a/src/platforms/mirserver/nativeinterface.h
++++ b/src/platforms/mirserver/nativeinterface.h
+@@ -27,7 +27,8 @@
+ class QMirServer;
+
+ // mir
+-namespace qtmir { class PromptSessionManager; class Seats; }
++namespace qtmir { class Seats; }
++namespace miroil { class PromptSessionManager; }
+ namespace mir { namespace shell { class PersistentSurfaceStore; }}
+
+ class NativeInterface : public QPlatformNativeInterface
+@@ -41,7 +42,7 @@ public:
+
+ void setWindowProperty(QPlatformWindow *, const QString &name, const QVariant &value) override;
+
+- std::shared_ptr<qtmir::PromptSessionManager> thePromptSessionManager() const;
++ std::shared_ptr<miroil::PromptSessionManager> thePromptSessionManager() const;
+ std::shared_ptr<mir::shell::PersistentSurfaceStore> thePersistentSurfaceStore() const;
+ std::shared_ptr<qtmir::Seats> theSeats() const;
+
+diff --git a/src/platforms/mirserver/platformscreen.h b/src/platforms/mirserver/platformscreen.h
+index 404f9c9e..4ee6d11c 100644
+--- a/src/platforms/mirserver/platformscreen.h
++++ b/src/platforms/mirserver/platformscreen.h
+@@ -27,9 +27,11 @@
+ // Mir
+ #include <mir_toolkit/common.h>
+
++// Miroil
++#include <miroil/display_configuration_storage.h>
++
+ // local
+ #include "qtmir/types.h"
+-#include "qtmir/miral/display_configuration_storage.h"
+ #include "cursor.h"
+ #include "screenplatformwindow.h"
+
+@@ -68,7 +70,7 @@ public:
+ float* scaleRef() { return &m_scale; }
+ qtmir::FormFactor formFactor() const { return m_formFactor; }
+ MirPowerMode powerMode() const { return m_powerMode; }
+- miral::DisplayId displayId() const { return m_displayId; }
++ miroil::DisplayId displayId() const { return m_displayId; }
+ qtmir::OutputTypes outputType() const { return m_type; }
+ uint32_t currentModeIndex() const { return m_currentModeIndex; }
+ bool isActive() const { return m_isActive; }
+@@ -140,7 +142,7 @@ private:
+
+ mir::renderer::gl::RenderTarget *m_renderTarget;
+ mir::graphics::DisplaySyncGroup *m_displayGroup;
+- miral::DisplayId m_displayId;
++ miroil::DisplayId m_displayId;
+ qtmir::OutputTypes m_type;
+ MirPowerMode m_powerMode;
+
+diff --git a/src/platforms/mirserver/promptsessionlistener.cpp b/src/platforms/mirserver/promptsessionlistener.cpp
+index e30d0eb9..7ab7569e 100644
+--- a/src/platforms/mirserver/promptsessionlistener.cpp
++++ b/src/platforms/mirserver/promptsessionlistener.cpp
+@@ -19,6 +19,8 @@
+
+ namespace ms = mir::scene;
+
++namespace qtmir {
++
+ PromptSessionListener::PromptSessionListener(QObject *parent) :
+ QObject(parent)
+ {
+@@ -31,3 +33,50 @@ PromptSessionListener::~PromptSessionListener()
+ {
+ qCDebug(QTMIR_MIR_MESSAGES) << "PromptSessionListener::~PromptSessionListener - this=" << this;
+ }
++
++void PromptSessionListener::starting(std::shared_ptr<ms::PromptSession> const& prompt_session)
++{
++ qCDebug(QTMIR_MIR_MESSAGES) << "PromptSessionListener::starting - this=" << this << "prompt_session=" << prompt_session.get();
++ m_mirPromptToSessionHash.insert(prompt_session.get(), prompt_session);
++ Q_EMIT promptSessionStarting(prompt_session);
++}
++
++void PromptSessionListener::stopping(std::shared_ptr<ms::PromptSession> const& prompt_session)
++{
++ qCDebug(QTMIR_MIR_MESSAGES) << "PromptSessionListener::stopping - this=" << this << "prompt_session=" << prompt_session.get();
++ Q_EMIT promptSessionStopping(prompt_session);
++ m_mirPromptToSessionHash.remove(prompt_session.get());
++}
++
++void PromptSessionListener::suspending(std::shared_ptr<ms::PromptSession> const& prompt_session)
++{
++ qCDebug(QTMIR_MIR_MESSAGES) << "PromptSessionListener::suspending - this=" << this << "prompt_session=" << prompt_session.get();
++ Q_EMIT promptSessionSuspending(prompt_session);
++}
++
++void PromptSessionListener::resuming(std::shared_ptr<ms::PromptSession> const& prompt_session)
++{
++ qCDebug(QTMIR_MIR_MESSAGES) << "PromptSessionListener::resuming - this=" << this << "prompt_session=" << prompt_session.get();
++ Q_EMIT promptSessionResuming(prompt_session);
++}
++
++void PromptSessionListener::prompt_provider_added(ms::PromptSession const& prompt_session,
++ std::shared_ptr<ms::Session> const& prompt_provider)
++{
++ qCDebug(QTMIR_MIR_MESSAGES) << "PromptSessionListener::prompt_provider_added - this=" << this
++ << "prompt_session=" << &prompt_session
++ << "prompt_provider=" << prompt_provider.get();
++ Q_EMIT promptProviderAdded(m_mirPromptToSessionHash[&prompt_session], prompt_provider);
++}
++
++void PromptSessionListener::prompt_provider_removed(ms::PromptSession const& prompt_session,
++ std::shared_ptr<ms::Session> const& prompt_provider)
++{
++ qCDebug(QTMIR_MIR_MESSAGES) << "PromptSessionListener::prompt_provider_removed - this=" << this
++ << "prompt_session=" << &prompt_session
++ << "prompt_provider=" << prompt_provider.get();
++ Q_EMIT promptProviderRemoved(m_mirPromptToSessionHash[&prompt_session], prompt_provider);
++}
++
++}
++
+diff --git a/src/platforms/mirserver/promptsessionlistener.h b/src/platforms/mirserver/promptsessionlistener.h
+index 73f0e606..ed635832 100644
+--- a/src/platforms/mirserver/promptsessionlistener.h
++++ b/src/platforms/mirserver/promptsessionlistener.h
+@@ -14,25 +14,37 @@
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+-#ifndef PROMPTSESSIONLISTENER_H
+-#define PROMPTSESSIONLISTENER_H
++#ifndef QTMIR_PROMPTSESSIONLISTENER_H
++#define QTMIR_PROMPTSESSIONLISTENER_H
++#include <memory>
+
+ // Qt
+ #include <QHash>
+ #include <QObject>
+
+ #include "promptsession.h"
+-
++#include <miroil/prompt_session_listener.h>
+ #include <miral/application.h>
+
+-class PromptSessionListener : public QObject
++namespace qtmir {
++
++class PromptSessionListener : public QObject, public miroil::PromptSessionListener
+ {
+ Q_OBJECT
+-protected:
++public:
+ explicit PromptSessionListener(QObject *parent = 0);
+ ~PromptSessionListener();
+
+-public:
++ // PromptSessionListener functions
++ void starting(std::shared_ptr<mir::scene::PromptSession> const& prompt_session) override;
++ void stopping(std::shared_ptr<mir::scene::PromptSession> const& prompt_session) override;
++ void suspending(std::shared_ptr<mir::scene::PromptSession> const& prompt_session) override;
++ void resuming(std::shared_ptr<mir::scene::PromptSession> const& prompt_session) override;
++ void prompt_provider_added(mir::scene::PromptSession const& prompt_session,
++ std::shared_ptr<mir::scene::Session> const& prompt_provider) override;
++ void prompt_provider_removed(mir::scene::PromptSession const& prompt_session,
++ std::shared_ptr<mir::scene::Session> const& prompt_provider) override;
++
+ Q_SIGNALS:
+ void promptSessionStarting(qtmir::PromptSession const &session);
+ void promptSessionStopping(qtmir::PromptSession const &session);
+@@ -41,9 +53,14 @@ Q_SIGNALS:
+
+ void promptProviderAdded(qtmir::PromptSession const&, miral::Application const&);
+ void promptProviderRemoved(qtmir::PromptSession const&, miral::Application const&);
++
++private:
++ QHash<const mir::scene::PromptSession *, qtmir::PromptSession> m_mirPromptToSessionHash;
+ };
+
++}
++
+ Q_DECLARE_METATYPE(qtmir::PromptSession)
+ Q_DECLARE_METATYPE(miral::Application)
+
+-#endif // SESSIONLISTENER_H
++#endif // QTMIR_PROMPTSESSIONLISTENER_H
+diff --git a/src/platforms/mirserver/promptsessionmanager.cpp b/src/platforms/mirserver/promptsessionmanager.cpp
+deleted file mode 100644
+index 138b691d..00000000
+--- a/src/platforms/mirserver/promptsessionmanager.cpp
++++ /dev/null
+@@ -1,47 +0,0 @@
+-/*
+- * Copyright © 2016 Canonical Ltd.
+- *
+- * This program is free software: you can redistribute it and/or modify it
+- * under the terms of the GNU General Public License version 3,
+- * as published by the Free Software Foundation.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program. If not, see <http://www.gnu.org/licenses/>.
+- */
+-
+-#include "promptsessionmanager.h"
+-#include "promptsession.h"
+-
+-#include <mir/scene/prompt_session_manager.h>
+-
+-qtmir::PromptSessionManager::PromptSessionManager(std::shared_ptr<mir::scene::PromptSessionManager> const &promptSessionManager) :
+- m_promptSessionManager{promptSessionManager}
+-{
+-}
+-
+-qtmir::PromptSessionManager::~PromptSessionManager() = default;
+-
+-miral::Application qtmir::PromptSessionManager::applicationFor(const PromptSession &promptSession) const
+-{
+- return m_promptSessionManager->application_for(promptSession);
+-}
+-
+-void qtmir::PromptSessionManager::stopPromptSession(const PromptSession &promptSession) const
+-{
+- m_promptSessionManager->stop_prompt_session(promptSession);
+-}
+-
+-void qtmir::PromptSessionManager::suspendPromptSession(const PromptSession &promptSession) const
+-{
+- m_promptSessionManager->suspend_prompt_session(promptSession);
+-}
+-
+-void qtmir::PromptSessionManager::resumePromptSession(const PromptSession &promptSession) const
+-{
+- m_promptSessionManager->resume_prompt_session(promptSession);
+-}
+diff --git a/src/platforms/mirserver/promptsessionmanager.h b/src/platforms/mirserver/promptsessionmanager.h
+deleted file mode 100644
+index ebc207cb..00000000
+--- a/src/platforms/mirserver/promptsessionmanager.h
++++ /dev/null
+@@ -1,49 +0,0 @@
+-/*
+- * Copyright © 2016 Canonical Ltd.
+- *
+- * This program is free software: you can redistribute it and/or modify it
+- * under the terms of the GNU General Public License version 3,
+- * as published by the Free Software Foundation.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program. If not, see <http://www.gnu.org/licenses/>.
+- */
+-
+-#ifndef QTMIR_PROMPTSESSIONMANAGER_H
+-#define QTMIR_PROMPTSESSIONMANAGER_H
+-
+-#include <miral/application.h>
+-
+-#include <memory>
+-
+-namespace mir {
+-namespace scene {
+-class PromptSessionManager;
+-}
+-}
+-
+-namespace qtmir {
+-class PromptSession;
+-class PromptSessionManager
+-{
+-public:
+- explicit PromptSessionManager(const std::shared_ptr<mir::scene::PromptSessionManager> &promptSessionManager);
+- virtual ~PromptSessionManager();
+-
+- miral::Application applicationFor(qtmir::PromptSession const &promptSession) const;
+-
+- void stopPromptSession(qtmir::PromptSession const &promptSession) const;
+- void suspendPromptSession(qtmir::PromptSession const &promptSession) const;
+- void resumePromptSession(qtmir::PromptSession const &promptSession) const;
+-
+-private:
+- std::shared_ptr<mir::scene::PromptSessionManager> const m_promptSessionManager;
+-};
+-}
+-
+-#endif //QTMIR_PROMPTSESSIONMANAGER_H
+diff --git a/src/platforms/mirserver/qmirserver.cpp b/src/platforms/mirserver/qmirserver.cpp
+index 6c0160e7..fe1b1a31 100644
+--- a/src/platforms/mirserver/qmirserver.cpp
++++ b/src/platforms/mirserver/qmirserver.cpp
+@@ -26,7 +26,6 @@
+ #include "qmirserver.h"
+ #include "qmirserver_p.h"
+
+-
+ QMirServer::QMirServer(QObject *parent)
+ : QObject(parent)
+ , d_ptr(new QMirServerPrivate)
+@@ -134,7 +133,7 @@ void *QMirServer::nativeResourceForIntegration(const QByteArray &resource) const
+ return result;
+ }
+
+-std::shared_ptr<qtmir::PromptSessionManager> QMirServer::thePromptSessionManager() const
++std::shared_ptr<miroil::PromptSessionManager> QMirServer::thePromptSessionManager() const
+ {
+ Q_D(const QMirServer);
+ return d->promptSessionManager();
+diff --git a/src/platforms/mirserver/qmirserver.h b/src/platforms/mirserver/qmirserver.h
+index 74d81c6b..d0dc2c5b 100644
+--- a/src/platforms/mirserver/qmirserver.h
++++ b/src/platforms/mirserver/qmirserver.h
+@@ -29,14 +29,17 @@
+ #include "qtmir/displayconfigurationpolicy.h"
+ #include "qtmir/displayconfigurationstorage.h"
+
++// miroil
++#include <miroil/prompt_session_manager.h>
++
+ // qtmir
+ namespace qtmir {
+- class PromptSessionManager;
+ class WindowModelNotifier;
+ class AppNotifier;
+ }
+ namespace mir { class Server; }
+
++// qtmir
+ class QMirServerPrivate;
+ class ScreensController;
+ class ScreensModel;
+@@ -59,7 +62,7 @@ public:
+ std::shared_ptr<ScreensModel> screensModel() const;
+ QPlatformOpenGLContext *createPlatformOpenGLContext(QOpenGLContext *context) const;
+ void *nativeResourceForIntegration(const QByteArray &resource) const;
+- std::shared_ptr<qtmir::PromptSessionManager> thePromptSessionManager() const;
++ std::shared_ptr<miroil::PromptSessionManager> thePromptSessionManager() const;
+
+ qtmir::WindowModelNotifier *windowModelNotifier() const;
+ qtmir::AppNotifier *appNotifier() const;
+diff --git a/src/platforms/mirserver/qmirserver_p.cpp b/src/platforms/mirserver/qmirserver_p.cpp
+index c11acc97..e5858a53 100644
+--- a/src/platforms/mirserver/qmirserver_p.cpp
++++ b/src/platforms/mirserver/qmirserver_p.cpp
+@@ -15,23 +15,34 @@
+ */
+
+ #include "qmirserver_p.h"
+-#include "qtmir/miral/display_configuration_storage.h"
+
+ // local
+ #include "logging.h"
+ #include "wrappedwindowmanagementpolicy.h"
+-#include "promptsessionmanager.h"
+-#include "setqtcompositor.h"
++#include "inputdeviceobserver.h"
+ #include "qteventfeeder.h"
+ #include "qtmir/sessionauthorizer.h"
+-
+-// prototyping for later incorporation in miral
+-#include <miral/persist_display_config.h>
++#include "miropenglcontext.h"
++#include "mirglconfig.h"
++#include "screenscontroller.h"
++#include "qtcompositor.h"
++#include "namedcursor.h"
++#include "promptsessionlistener.h"
++#include "qtwindowmanager.h"
++#include "wayland/xdgdecorationV1.h"
++#include "wayland/kwinserverdecoration.h"
++
++#include <miroil/prompt_session_manager.h>
++#include <miroil/persist_display_config.h>
++#include <miroil/set_compositor.h>
++#include <miroil/display_listener_wrapper.h>
+
+ // miral
+ #include <miral/add_init_callback.h>
+ #include <miral/set_terminator.h>
+ #include <miral/x11_support.h>
++#include <miral/keymap.h>
++#include <miral/wayland_extensions.h>
+
+ // Qt
+ #include <QCoreApplication>
+@@ -54,19 +65,14 @@ public:
+ {}
+ };
+
+-struct DefaultDisplayConfigurationStorage : miral::DisplayConfigurationStorage
++struct DefaultDisplayConfigurationStorage : miroil::DisplayConfigurationStorage
+ {
+- void save(const miral::DisplayId&, const miral::DisplayConfigurationOptions&) override {}
++ void save(const miroil::DisplayId&, const miroil::DisplayConfigurationOptions&) override {}
+
+- bool load(const miral::DisplayId&, miral::DisplayConfigurationOptions&) const override { return false; }
++ bool load(const miroil::DisplayId&, miroil::DisplayConfigurationOptions&) const override { return false; }
+ };
+
+-std::shared_ptr<miral::DisplayConfigurationPolicy> buildDisplayConfigurationPolicy()
+-{
+- return std::make_shared<qtmir::DisplayConfigurationPolicy>();
+-}
+-
+-std::shared_ptr<miral::DisplayConfigurationStorage> buildDisplayConfigurationStorage()
++std::shared_ptr<miroil::DisplayConfigurationStorage> buildDisplayConfigurationStorage()
+ {
+ return std::make_shared<DefaultDisplayConfigurationStorage>();
+ }
+@@ -113,12 +119,19 @@ bool MirServerThread::waitForMirStartup()
+
+ QPlatformOpenGLContext *QMirServerPrivate::createPlatformOpenGLContext(QOpenGLContext *context) const
+ {
+- return m_openGLContextFactory.createPlatformOpenGLContext(context->format(), *m_mirServerHooks.theMirDisplay());
++ QSurfaceFormat format = context->format();
++ mir::graphics::Display * mirDisplay = m_mirServerHooks.the_mir_display().get();
++ mir::graphics::GLConfig * gl_config = m_openGLContext.the_open_gl_config().get();
++
++ if (!gl_config)
++ throw std::logic_error("No gl config available. Server not running?");
++
++ return new MirOpenGLContext(*mirDisplay, *gl_config, format);
+ }
+
+-std::shared_ptr<qtmir::PromptSessionManager> QMirServerPrivate::promptSessionManager() const
++std::shared_ptr<miroil::PromptSessionManager> QMirServerPrivate::promptSessionManager() const
+ {
+- return std::make_shared<qtmir::PromptSessionManager>(m_mirServerHooks.thePromptSessionManager());
++ return std::make_shared<miroil::PromptSessionManager>(m_mirServerHooks.the_prompt_session_manager());
+ }
+
+ std::shared_ptr<qtmir::SessionAuthorizer> QMirServerPrivate::theApplicationAuthorizer() const
+@@ -128,21 +141,31 @@ std::shared_ptr<qtmir::SessionAuthorizer> QMirServerPrivate::theApplicationAutho
+ }
+
+ QMirServerPrivate::QMirServerPrivate()
+- : m_displayConfigurationPolicy(buildDisplayConfigurationPolicy)
++ : m_displayConfigurationPolicy{[](auto) { return std::make_shared<qtmir::DisplayConfigurationPolicy>(); }}
+ , m_windowManagementPolicy(buildWindowManagementPolicy)
+ , m_displayConfigurationStorage(buildDisplayConfigurationStorage)
+ , m_wrappedSessionAuthorizer(buildSessionAuthorizer)
++ , m_openGLContext(new MirGLConfig())
+ , runner(qtmirArgc, qtmirArgv)
+ {
+ }
+
+-PromptSessionListener *QMirServerPrivate::promptSessionListener() const
++qtmir::PromptSessionListener *QMirServerPrivate::promptSessionListener() const
+ {
+- return m_mirServerHooks.promptSessionListener();
++ return dynamic_cast<qtmir::PromptSessionListener*>(m_mirServerHooks.the_prompt_session_listener());
+ }
+
+ void QMirServerPrivate::run(const std::function<void()> &startCallback)
+ {
++ m_mirServerHooks.create_prompt_session_listener(std::dynamic_pointer_cast<miroil::PromptSessionListener>(std::make_shared<qtmir::PromptSessionListener>()));
++ m_mirServerHooks.create_named_cursor([](std::string const & name)
++ {
++ // We are not responsible for loading cursors. This is left for shell to do as it's drawing its own QML cursor.
++ // So here we work around Mir API by storing just the cursor name in the CursorImage.
++ return std::make_shared<qtmir::NamedCursor>(name.c_str());
++ }
++ );
++
+
+ miral::AddInitCallback addInitCallback{[&, this]
+ {
+@@ -156,6 +179,11 @@ void QMirServerPrivate::run(const std::function<void()> &startCallback)
+ QCoreApplication::quit();
+ }};
+
++ miral::WaylandExtensions waylandExtensions{};
++ waylandExtensions.add_extension(qtmir::qtWindowmanagerExtension());
++ waylandExtensions.add_extension(qtmir::qtXdgDecorationManagerV1Extension());
++ waylandExtensions.add_extension(qtmir::qtKwinServerDecorationManagerExtension(m_windowModelNotifier));
++
+ runner.set_exception_handler([this]
+ {
+ try {
+@@ -168,8 +196,9 @@ void QMirServerPrivate::run(const std::function<void()> &startCallback)
+
+ runner.add_start_callback([&]
+ {
+- screensController = m_mirServerHooks.createScreensController(screensModel);
+- m_mirServerHooks.createInputDeviceObserver();
++ screensController = QSharedPointer<ScreensController>(new ScreensController(screensModel, m_mirServerHooks.the_mir_display(), m_mirServerHooks.the_display_configuration_controller()));
++ std::shared_ptr<miroil::InputDeviceObserver> ptr = std::make_shared<qtmir::MirInputDeviceObserver>();
++ m_mirServerHooks.create_input_device_observer(ptr);
+ if (auto const x11_display = runner.x11_display())
+ {
+ setenv("DISPLAY", x11_display.value().c_str(), 1);
+@@ -186,12 +215,22 @@ void QMirServerPrivate::run(const std::function<void()> &startCallback)
+
+ auto displayStorageBuilder = m_displayConfigurationStorage.builder();
+
++ miral::Keymap config_keymap;
++
+ runner.run_with(
+ {
+ miral::X11Support{},
+ m_wrappedSessionAuthorizer,
+- m_openGLContextFactory,
++ m_openGLContext,
+ m_mirServerHooks,
++ waylandExtensions
++ .enable(miral::WaylandExtensions::zwlr_layer_shell_v1)
++ .enable(miral::WaylandExtensions::zwlr_foreign_toplevel_manager_v1)
++ .enable(miral::WaylandExtensions::zxdg_output_manager_v1)
++ .enable(miral::WaylandExtensions::zwp_virtual_keyboard_manager_v1)
++ .enable(miral::WaylandExtensions::zwlr_virtual_pointer_manager_v1)
++ .enable(miral::WaylandExtensions::zwp_input_method_manager_v2)
++ .enable(miral::WaylandExtensions::zwlr_screencopy_manager_v1),
+ miral::set_window_management_policy<WrappedWindowManagementPolicy>(m_windowModelNotifier,
+ m_windowController,
+ m_workspaceController,
+@@ -200,10 +239,30 @@ void QMirServerPrivate::run(const std::function<void()> &startCallback)
+ eventFeeder,
+ m_windowManagementPolicy),
+ addInitCallback,
+- qtmir::SetQtCompositor{screensModel},
++ miroil::SetCompositor(
++ // Create the the QtCompositor
++ [this]()
++ -> std::shared_ptr<miroil::Compositor>
++ {
++ std::shared_ptr<miroil::Compositor> result = std::make_shared<QtCompositor>();
++ return result;
++ }
++ ,
++ // Initialization called by mir when the new compositor is setup up
++ [this](const std::shared_ptr<mir::graphics::Display>& display,
++ const std::shared_ptr<miroil::Compositor> & compositor,
++ const std::shared_ptr<mir::compositor::DisplayListener>& displayListener)
++ {
++
++ std::shared_ptr<QtCompositor> qtCompsitor = std::dynamic_pointer_cast<QtCompositor>(compositor);
++
++ this->screensModel->init(display, qtCompsitor, std::make_shared<miroil::DisplayListenerWrapper>(displayListener));
++ }
++ ),
+ setTerminator,
+- miral::PersistDisplayConfig{displayStorageBuilder(),
+- m_displayConfigurationPolicy}
++ config_keymap,
++ miroil::PersistDisplayConfig{displayStorageBuilder(),
++ m_displayConfigurationPolicy},
+ });
+ }
+
+diff --git a/src/platforms/mirserver/qmirserver_p.h b/src/platforms/mirserver/qmirserver_p.h
+index f5129fa2..d5f14277 100644
+--- a/src/platforms/mirserver/qmirserver_p.h
++++ b/src/platforms/mirserver/qmirserver_p.h
+@@ -27,12 +27,11 @@
+
+ // local
+ #include "appnotifier.h"
+-#include "openglcontextfactory.h"
+ #include "screensmodel.h"
+ #include "windowcontroller.h"
+ #include "windowmodelnotifier.h"
+ #include "workspacecontroller.h"
+-#include "mirserverhooks.h"
++#include "screenscontroller.h"
+ #include "wrappedsessionauthorizer.h"
+ #include "qteventfeeder.h"
+ #include "qtmir/displayconfigurationpolicy.h"
+@@ -43,14 +42,21 @@
+ #include <miral/runner.h>
+ #include <QDebug>
+
++// miroil
++#include <miroil/compositor.h>
++#include <miroil/mir_server_hooks.h>
++#include <miroil/prompt_session_manager.h>
++#include <miroil/open_gl_context.h>
++
+ class MirServerThread;
+ class QOpenGLContext;
+ class QMirServer;
++class QPlatformOpenGLContext;
+
+ namespace qtmir
+ {
+ class SessionAuthorizer;
+-class PromptSessionManager;
++class PromptSessionListener;
+ }
+
+ class QMirServerPrivate
+@@ -67,8 +73,8 @@ public:
+ void run(const std::function<void()> &startCallback);
+ void stop();
+
+- PromptSessionListener *promptSessionListener() const;
+- std::shared_ptr<qtmir::PromptSessionManager> promptSessionManager() const;
++ qtmir::PromptSessionListener *promptSessionListener() const;
++ std::shared_ptr<miroil::PromptSessionManager> promptSessionManager() const;
+
+ std::shared_ptr<qtmir::SessionAuthorizer> theApplicationAuthorizer() const;
+
+@@ -89,8 +95,8 @@ public:
+ qtmir::BasicSetDisplayConfigurationStorage m_displayConfigurationStorage;
+ miral::SetApplicationAuthorizer<WrappedSessionAuthorizer> m_wrappedSessionAuthorizer;
+ private:
+- qtmir::OpenGLContextFactory m_openGLContextFactory;
+- qtmir::MirServerHooks m_mirServerHooks;
++ miroil::OpenGLContext m_openGLContext;
++ miroil::MirServerHooks m_mirServerHooks;
+
+ miral::MirRunner runner;
+
+diff --git a/src/platforms/mirserver/qtcompositor.cpp b/src/platforms/mirserver/qtcompositor.cpp
+index 7251b13a..8b25354a 100644
+--- a/src/platforms/mirserver/qtcompositor.cpp
++++ b/src/platforms/mirserver/qtcompositor.cpp
+@@ -15,4 +15,20 @@
+ */
+
+ #include "qtcompositor.h"
++#include "logging.h"
++
++void QtCompositor::start()
++{
++ qCDebug(QTMIR_SCREENS) << "QtCompositor::start";
++
++ Q_EMIT starting(); // blocks
++}
++
++void QtCompositor::stop()
++{
++ qCDebug(QTMIR_SCREENS) << "QtCompositor::stop";
++
++ Q_EMIT stopping(); // blocks
++}
++
+
+diff --git a/src/platforms/mirserver/qtcompositor.h b/src/platforms/mirserver/qtcompositor.h
+index 09f09610..f70f85f6 100644
+--- a/src/platforms/mirserver/qtcompositor.h
++++ b/src/platforms/mirserver/qtcompositor.h
+@@ -16,6 +16,7 @@
+
+ #ifndef QTCOMPOSITOR_H
+ #define QTCOMPOSITOR_H
++#include <miroil/compositor.h>
+
+ // std lib
+ #include <memory>
+@@ -29,13 +30,17 @@ namespace mir {
+ }
+ }
+
+-class QtCompositor : public QObject
++class QtCompositor : public QObject, public miroil::Compositor
+ {
+ Q_OBJECT
+ public:
+ QtCompositor() = default;
+ virtual ~QtCompositor() noexcept = default;
+
++ // Callbacks coming from mir
++ void start();
++ void stop();
++
+ Q_SIGNALS:
+ void starting();
+ void stopping();
+diff --git a/src/platforms/mirserver/qteventfeeder.h b/src/platforms/mirserver/qteventfeeder.h
+index fa033fcc..5211bbbb 100644
+--- a/src/platforms/mirserver/qteventfeeder.h
++++ b/src/platforms/mirserver/qteventfeeder.h
+@@ -17,7 +17,13 @@
+ #ifndef MIR_QT_EVENT_FEEDER_H
+ #define MIR_QT_EVENT_FEEDER_H
+
++#include <mir/version.h>
++#if MIR_SERVER_VERSION >= MIR_VERSION_NUMBER(2, 0, 0)
++#include <miral/toolkit_event.h>
++using namespace miral::toolkit;
++#else
+ #include <mir_toolkit/event.h>
++#endif
+
+ #include <QObject>
+ #include <qpa/qwindowsysteminterface.h>
+diff --git a/src/platforms/mirserver/qtwindowmanager.cpp b/src/platforms/mirserver/qtwindowmanager.cpp
+new file mode 100644
+index 00000000..240792b2
+--- /dev/null
++++ b/src/platforms/mirserver/qtwindowmanager.cpp
+@@ -0,0 +1,80 @@
++/*
++ * Copyright (C) 2020 UBports Foundation
++ *
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU Lesser General Public License version 3, as published by
++ * the Free Software Foundation.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranties of MERCHANTABILITY,
++ * SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ * Lesser General Public License for more details.
++ *
++ * You should have received a copy of the GNU Lesser General Public License
++ * along with this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++#include <memory>
++
++#include "qtwindowmanager.h"
++#include "urlbuilderdispatcher.h"
++#include "services.h"
++
++#include <wayland-generated/qt-windowmanager_wrapper.h>
++
++#include <QDebug>
++
++using namespace mir::wayland;
++using namespace miral;
++
++namespace
++{
++class QtWindowManager : public Windowmanager
++{
++public:
++ using Windowmanager::Windowmanager;
++
++ QtWindowManager(struct wl_resource*);
++
++ void open_url(uint32_t remaining, std::string const& url) override {
++ mBuilder->urlInput(remaining, url);
++ }
++private:
++ qtmir::URLBuilderDispatcher* mBuilder;
++};
++
++QtWindowManager::QtWindowManager(
++ struct wl_resource* resource) :
++ Windowmanager{resource, Version<1>{}},
++ mBuilder{new qtmir::URLBuilderDispatcher{std::make_shared<Services>()}}
++{
++}
++
++class MyGlobal : public QtWindowManager::Global
++{
++public:
++ explicit MyGlobal(wl_display* display);
++
++ void bind(wl_resource* new_windowmanager) override;
++};
++
++}
++
++MyGlobal::MyGlobal(wl_display* display) :
++ Global(display, Version<1>{})
++{
++}
++
++void MyGlobal::bind(wl_resource* new_windowmanager)
++{
++ new QtWindowManager{new_windowmanager};
++}
++
++auto qtmir::qtWindowmanagerExtension() -> WaylandExtensions::Builder {
++ return {
++ Windowmanager::interface_name,
++ [](WaylandExtensions::Context const* context) {
++ return std::make_shared<MyGlobal>(context->display());
++ }
++ };
++}
+diff --git a/src/platforms/mirserver/mircursorimages.cpp b/src/platforms/mirserver/qtwindowmanager.h
+similarity index 55%
+rename from src/platforms/mirserver/mircursorimages.cpp
+rename to src/platforms/mirserver/qtwindowmanager.h
+index b07bbe1a..30b5cb5a 100644
+--- a/src/platforms/mirserver/mircursorimages.cpp
++++ b/src/platforms/mirserver/qtwindowmanager.h
+@@ -1,5 +1,5 @@
+ /*
+- * Copyright (C) 2015 Canonical, Ltd.
++ * Copyright (C) 2020 UBports Foundation
+ *
+ * This program is free software: you can redistribute it and/or modify it under
+ * the terms of the GNU Lesser General Public License version 3, as published by
+@@ -14,15 +14,18 @@
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+-#include "mircursorimages.h"
+-#include "namedcursor.h"
++#pragma once
+
+-using namespace qtmir;
++// Provides the qt-windowmanager Wayland extension, which provides support for
++// URL handling. We use url-dispatcher for the purpose.
+
+-std::shared_ptr<mir::graphics::CursorImage> MirCursorImages::image(const std::string &cursor_name,
+- const mir::geometry::Size &)
++#include "services.h"
++
++#include <miral/wayland_extensions.h>
++
++namespace qtmir
+ {
+- // We are not responsible for loading cursors. This is left for shell to do as it's drawing its own QML cursor.
+- // So here we work around Mir API by storing just the cursor name in the CursorImage.
+- return std::make_shared<NamedCursor>(cursor_name.c_str());
++// The casing is deliberate, given 'Windowmanager' is all one word according to
++// the Wayland spec
++auto qtWindowmanagerExtension() -> miral::WaylandExtensions::Builder;
+ }
+diff --git a/src/platforms/mirserver/screenadaptor.cpp b/src/platforms/mirserver/screenadaptor.cpp
+index 0bdc6ad2..1a274617 100644
+--- a/src/platforms/mirserver/screenadaptor.cpp
++++ b/src/platforms/mirserver/screenadaptor.cpp
+@@ -60,7 +60,7 @@ ScreenAdaptor::~ScreenAdaptor()
+ m_modes.clear();
+ }
+
+-miral::DisplayId ScreenAdaptor::displayId() const
++miroil::DisplayId ScreenAdaptor::displayId() const
+ {
+ auto platformScreen = static_cast<PlatformScreen*>(m_screen->handle());
+ return platformScreen->displayId();
+diff --git a/src/platforms/mirserver/screenadaptor.h b/src/platforms/mirserver/screenadaptor.h
+index d801b712..a3711eba 100644
+--- a/src/platforms/mirserver/screenadaptor.h
++++ b/src/platforms/mirserver/screenadaptor.h
+@@ -34,7 +34,7 @@ public:
+ ScreenAdaptor(QScreen* screen, QObject* parent = 0);
+ ~ScreenAdaptor();
+
+- miral::DisplayId displayId() const override;
++ miroil::DisplayId displayId() const override;
+ bool used() const override;
+ QString name() const override;
+ float scale() const override;
+diff --git a/src/platforms/mirserver/screenscontroller.cpp b/src/platforms/mirserver/screenscontroller.cpp
+index 318cf61b..8a7d07b5 100644
+--- a/src/platforms/mirserver/screenscontroller.cpp
++++ b/src/platforms/mirserver/screenscontroller.cpp
+@@ -21,7 +21,6 @@
+ // Mir
+ #include <mir/graphics/display.h>
+ #include <mir/graphics/display_configuration.h>
+-#include <mir/shell/display_configuration_controller.h>
+ #include <mir/geometry/point.h>
+
+ namespace mg = mir::graphics;
+@@ -33,7 +32,7 @@ ScreensController::ScreensController(const std::shared_ptr<ScreensModel> &model,
+ : QObject(parent)
+ , m_screensModel(model)
+ , m_display(display)
+- , m_displayConfigurationController(controller)
++ , m_displayConfigurationController(std::make_shared<miroil::DisplayConfigurationControllerWrapper>(controller))
+ {
+ }
+
+@@ -88,7 +87,7 @@ bool ScreensController::setConfiguration(const qtmir::ScreenConfigurationList &n
+ return true;
+ }
+
+-qtmir::ScreenConfiguration ScreensController::outputConfiguration(miral::OutputId outputId)
++qtmir::ScreenConfiguration ScreensController::outputConfiguration(miroil::OutputId outputId)
+ {
+ auto displayConfiguration = m_display->configuration();
+ qtmir::ScreenConfiguration config;
+diff --git a/src/platforms/mirserver/screenscontroller.h b/src/platforms/mirserver/screenscontroller.h
+index b363830c..db345aaf 100644
+--- a/src/platforms/mirserver/screenscontroller.h
++++ b/src/platforms/mirserver/screenscontroller.h
+@@ -26,6 +26,7 @@
+ #include "qtmir/screen.h"
+
+ #include <memory>
++#include <miroil/display_configuration_controller_wrapper.h>
+
+ class ScreensModel;
+
+@@ -48,13 +49,13 @@ public:
+ qtmir::ScreenConfigurationList configuration();
+ bool setConfiguration(const qtmir::ScreenConfigurationList &newConfig);
+
+- qtmir::ScreenConfiguration outputConfiguration(miral::OutputId outputId);
++ qtmir::ScreenConfiguration outputConfiguration(miroil::OutputId outputId);
+ bool setOutputConfiguration(const qtmir::ScreenConfiguration &newConfig);
+
+ private:
+ const std::shared_ptr<ScreensModel> m_screensModel;
+ const std::shared_ptr<mir::graphics::Display> m_display;
+- const std::shared_ptr<mir::shell::DisplayConfigurationController> m_displayConfigurationController;
++ const std::shared_ptr<miroil::DisplayConfigurationControllerWrapper> m_displayConfigurationController;
+ };
+
+ #endif // SCREENSCONTROLLER_H
+diff --git a/src/platforms/mirserver/screensmodel.cpp b/src/platforms/mirserver/screensmodel.cpp
+index b03d6b9d..91c420d5 100644
+--- a/src/platforms/mirserver/screensmodel.cpp
++++ b/src/platforms/mirserver/screensmodel.cpp
+@@ -27,7 +27,7 @@
+ #include <mir/graphics/display.h>
+ #include <mir/graphics/display_buffer.h>
+ #include <mir/graphics/display_configuration.h>
+-#include <mir/compositor/display_listener.h>
++#include <miroil/display_listener_wrapper.h>
+
+ // Qt
+ #include <QScreen>
+@@ -43,8 +43,8 @@ namespace mg = mir::graphics;
+ #define DEBUG_MSG qCDebug(QTMIR_SCREENS).nospace() << "ScreensModel[" << this <<"]::" << __func__
+
+ ScreensModel::ScreensModel(QObject *parent)
+- : MirDisplayConfigurationObserver(parent)
+- , m_compositing(false)
++ : //MirDisplayConfigurationObserver(parent)
++ m_compositing(false)
+ , m_orientationSensor(std::make_shared<OrientationSensor>(this))
+ {
+ DEBUG_MSG << "()";
+@@ -54,7 +54,7 @@ ScreensModel::ScreensModel(QObject *parent)
+ void ScreensModel::init(
+ const std::shared_ptr<mir::graphics::Display>& display,
+ const std::shared_ptr<QtCompositor>& compositor,
+- const std::shared_ptr<mir::compositor::DisplayListener>& displayListener)
++ const std::shared_ptr<miroil::DisplayListenerWrapper>& displayListener)
+ {
+ m_display = display;
+ m_compositor = compositor;
+@@ -69,8 +69,8 @@ void ScreensModel::init(
+ connect(qtCompositor, &QtCompositor::stopping,
+ this, &ScreensModel::onCompositorStopping, Qt::BlockingQueuedConnection);
+
+- connect(this, &MirDisplayConfigurationObserver::configurationApplied,
+- this, &ScreensModel::update, Qt::BlockingQueuedConnection);
++ //connect(this, &MirDisplayConfigurationObserver::configurationApplied,
++ // this, &ScreensModel::update, Qt::BlockingQueuedConnection);
+ }
+
+ // terminate before shutting down the Mir server, or else liable to deadlock with the blocking connection above
+diff --git a/src/platforms/mirserver/screensmodel.h b/src/platforms/mirserver/screensmodel.h
+index 6f85be7c..439db39a 100644
+--- a/src/platforms/mirserver/screensmodel.h
++++ b/src/platforms/mirserver/screensmodel.h
+@@ -17,20 +17,19 @@
+ #ifndef SCREENCONFIGURATIONOBSERVER_H
+ #define SCREENCONFIGURATIONOBSERVER_H
+
+-#include "mirdisplayconfigurationobserver.h"
++//#include "mirdisplayconfigurationobserver.h"
+
+ #include <QObject>
+ #include <QPoint>
+
+ // Mir
+ #include "mir/int_wrapper.h"
++#include <miroil/display_listener_wrapper.h>
+
+ // std
+ #include <memory>
+
+ namespace mir {
+- namespace compositor { class DisplayListener; }
+-
+ namespace graphics {
+ namespace detail { struct GraphicsConfCardIdTag; struct GraphicsConfOutputIdTag; }
+ typedef IntWrapper <detail::GraphicsConfCardIdTag> DisplayConfigurationCardId;
+@@ -62,7 +61,8 @@ class OrientationSensor;
+ * All other methods must be called on the Qt GUI thread.
+ */
+
+-class ScreensModel : public MirDisplayConfigurationObserver
++class ScreensModel : public QObject
++//class ScreensModel : public MirDisplayConfigurationObserver
+ {
+ Q_OBJECT
+ public:
+@@ -83,7 +83,7 @@ public:
+ void init(
+ const std::shared_ptr<mir::graphics::Display>& display,
+ const std::shared_ptr<QtCompositor>& compositor,
+- const std::shared_ptr<mir::compositor::DisplayListener>& displayListener);
++ const std::shared_ptr<miroil::DisplayListenerWrapper> & displayListener);
+ void terminate();
+
+ // override for testing purposes
+@@ -102,7 +102,7 @@ private:
+
+ std::weak_ptr<mir::graphics::Display> m_display;
+ std::shared_ptr<QtCompositor> m_compositor;
+- std::shared_ptr<mir::compositor::DisplayListener> m_displayListener;
++ std::shared_ptr<miroil::DisplayListenerWrapper> m_displayListener;
+ QList<PlatformScreen*> m_screenList;
+ bool m_compositing;
+ std::shared_ptr<OrientationSensor> m_orientationSensor;
+diff --git a/src/platforms/mirserver/setqtcompositor.cpp b/src/platforms/mirserver/setqtcompositor.cpp
+deleted file mode 100644
+index 1d747fe3..00000000
+--- a/src/platforms/mirserver/setqtcompositor.cpp
++++ /dev/null
+@@ -1,83 +0,0 @@
+-/*
+- * Copyright © 2016 Canonical Ltd.
+- *
+- * This program is free software: you can redistribute it and/or modify it
+- * under the terms of the GNU General Public License version 3,
+- * as published by the Free Software Foundation.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program. If not, see <http://www.gnu.org/licenses/>.
+- *
+- * Authored by: Alan Griffiths <alan@octopull.co.uk>
+- */
+-
+-#include "setqtcompositor.h"
+-
+-// local
+-#include "qtcompositor.h"
+-#include "screensmodel.h"
+-#include "logging.h"
+-
+-// mir
+-#include <mir/compositor/compositor.h>
+-#include <mir/server.h>
+-#include <mir/shell/shell.h>
+-#include <mir/observer_registrar.h>
+-
+-namespace
+-{
+-struct QtCompositorImpl : QtCompositor, mir::compositor::Compositor
+-{
+- void start();
+- void stop();
+-};
+-
+-void QtCompositorImpl::start()
+-{
+- qCDebug(QTMIR_SCREENS) << "QtCompositor::start";
+-
+- Q_EMIT starting(); // blocks
+-}
+-
+-void QtCompositorImpl::stop()
+-{
+- qCDebug(QTMIR_SCREENS) << "QtCompositor::stop";
+-
+- Q_EMIT stopping(); // blocks
+-}
+-}
+-
+-
+-qtmir::SetQtCompositor::SetQtCompositor(std::shared_ptr<ScreensModel> const& screensModel) :
+- m_screensModel{screensModel}
+-{
+-}
+-
+-void qtmir::SetQtCompositor::operator()(mir::Server& server)
+-{
+- server.override_the_compositor([this]
+- {
+- auto result = std::make_shared<QtCompositorImpl>();
+- m_compositor = result;
+- return result;
+- });
+-
+- server.add_init_callback([&, this]
+- {
+- if (auto const compositor = m_compositor.lock())
+- {
+- server.the_display_configuration_observer_registrar()->register_interest(m_screensModel);
+- m_screensModel->init(server.the_display(), compositor, server.the_shell());
+- }
+- else
+- {
+- throw std::logic_error("No m_compositor available. Server not running?");
+- }
+- });
+-}
+-
+diff --git a/src/platforms/mirserver/setqtcompositor.h b/src/platforms/mirserver/setqtcompositor.h
+deleted file mode 100644
+index 4c5fcdc1..00000000
+--- a/src/platforms/mirserver/setqtcompositor.h
++++ /dev/null
+@@ -1,47 +0,0 @@
+-/*
+- * Copyright © 2016 Canonical Ltd.
+- *
+- * This program is free software: you can redistribute it and/or modify it
+- * under the terms of the GNU General Public License version 3,
+- * as published by the Free Software Foundation.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program. If not, see <http://www.gnu.org/licenses/>.
+- *
+- * Authored by: Alan Griffiths <alan@octopull.co.uk>
+- */
+-
+-#ifndef QTMIR_SET_QT_COMPOSITOR_H
+-#define QTMIR_SET_QT_COMPOSITOR_H
+-
+-#include <QSharedPointer>
+-
+-#include <memory>
+-
+-namespace mir { class Server; }
+-
+-class QtCompositor;
+-class ScreensModel;
+-
+-namespace qtmir
+-{
+-// Configure the server for using the Qt compositor
+-class SetQtCompositor
+-{
+-public:
+- explicit SetQtCompositor(std::shared_ptr<ScreensModel> const& screensModel);
+-
+- void operator()(mir::Server& server);
+-
+-private:
+- std::shared_ptr<ScreensModel> const m_screensModel;
+- std::weak_ptr<QtCompositor> m_compositor;
+-};
+-}
+-
+-#endif //QTMIR_SET_QT_COMPOSITOR_H
+diff --git a/src/platforms/mirserver/surfaceobserver.cpp b/src/platforms/mirserver/surfaceobserver.cpp
+index 4e3da84e..41351354 100644
+--- a/src/platforms/mirserver/surfaceobserver.cpp
++++ b/src/platforms/mirserver/surfaceobserver.cpp
+@@ -84,7 +84,12 @@ void SurfaceObserver::notifySurfaceModifications(const miral::WindowSpecificatio
+ Q_EMIT inputBoundsChanged(qRect);
+ }
+ if (modifications.confine_pointer().is_set()) {
++#if MIR_SERVER_MAJOR_VERSION < 2
+ Q_EMIT confinesMousePointerChanged(modifications.confine_pointer().value() == mir_pointer_confined_to_window);
++#else
++ Q_EMIT confinesMousePointerChanged((modifications.confine_pointer().value() == mir_pointer_confined_oneshot) ||
++ (modifications.confine_pointer().value() == mir_pointer_confined_persistent));
++#endif
+ }
+ if (modifications.name().is_set()) {
+ Q_EMIT nameChanged(QString::fromStdString(modifications.name().value()));
+diff --git a/src/platforms/mirserver/urlbuilderdispatcher.cpp b/src/platforms/mirserver/urlbuilderdispatcher.cpp
+new file mode 100644
+index 00000000..f246faf4
+--- /dev/null
++++ b/src/platforms/mirserver/urlbuilderdispatcher.cpp
+@@ -0,0 +1,56 @@
++/*
++ * Copyright (C) 2020 UBports Foundation
++ *
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU Lesser General Public License version 3, as published by
++ * the Free Software Foundation.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranties of MERCHANTABILITY,
++ * SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ * Lesser General Public License for more details.
++ *
++ * You should have received a copy of the GNU Lesser General Public License
++ * along with this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++#include "urlbuilderdispatcher.h"
++#include "logging.h"
++
++#include <QDebug>
++#include <QUrl>
++
++#define DEBUG_MSG qCDebug(QTMIR_URLBUILDER).nospace().noquote() << __func__
++
++namespace qtmir
++{
++URLBuilderDispatcher::URLBuilderDispatcher(std::shared_ptr<QPlatformServices> const services)
++ : mLastRemaining{0},
++ mCurrentUrl{},
++ mServices(services)
++{}
++
++void URLBuilderDispatcher::urlInput(uint32_t remaining, std::string const &url) {
++
++ QByteArray bytes = QByteArray::fromStdString(url);
++ DEBUG_MSG << "(" << remaining << ", \"" << bytes << "\")";
++
++ if (remaining > mLastRemaining) {
++ mCurrentUrl = "";
++ }
++
++ if (remaining == 0) {
++ mLastRemaining = 0;
++ mCurrentUrl.append(bytes);
++ QUrl myUrl = QUrl::fromEncoded(mCurrentUrl);
++ mServices->openUrl(myUrl);
++ mCurrentUrl = QByteArray();
++ return;
++ } else {
++ mCurrentUrl.append(bytes);
++ mLastRemaining = remaining;
++ return;
++ }
++}
++}
++
+diff --git a/src/platforms/mirserver/urlbuilderdispatcher.h b/src/platforms/mirserver/urlbuilderdispatcher.h
+new file mode 100644
+index 00000000..12d24c16
+--- /dev/null
++++ b/src/platforms/mirserver/urlbuilderdispatcher.h
+@@ -0,0 +1,47 @@
++/*
++ * Copyright (C) 2020 UBports Foundation
++ *
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU Lesser General Public License version 3, as published by
++ * the Free Software Foundation.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranties of MERCHANTABILITY,
++ * SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ * Lesser General Public License for more details.
++ *
++ * You should have received a copy of the GNU Lesser General Public License
++ * along with this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++#pragma once
++
++#include <stdint.h>
++#include <memory>
++
++#include <QByteArray>
++#include <qpa/qplatformservices.h>
++#include <QLoggingCategory>
++
++#include "services.h"
++
++// The QtWayland url_open IPC call will split all URLs into 128-byte chunks then
++// call the event via Wayland IPC. This object un-splits the URL and sends it
++// to URL-Dispatcher once it receives the last chunk (denoted by 'remaining'
++// reaching zero).
++
++namespace qtmir
++{
++
++class URLBuilderDispatcher {
++public:
++ URLBuilderDispatcher(std::shared_ptr<QPlatformServices> const);
++
++ void urlInput(uint32_t, std::string const&);
++
++private:
++ uint32_t mLastRemaining;
++ QByteArray mCurrentUrl;
++ std::shared_ptr<QPlatformServices> mServices;
++};
++}
+diff --git a/src/platforms/mirserver/wayland-generated/CMakeLists.txt b/src/platforms/mirserver/wayland-generated/CMakeLists.txt
+new file mode 100644
+index 00000000..b535a429
+--- /dev/null
++++ b/src/platforms/mirserver/wayland-generated/CMakeLists.txt
+@@ -0,0 +1,24 @@
++function(add_wayland_protocol PREFIX PROTOCOL)
++ set(PROTOCOL_FILE "${CMAKE_CURRENT_SOURCE_DIR}/../wayland-protocols/${PROTOCOL}.xml")
++
++ set(GENERATE_FILE "${CMAKE_CURRENT_SOURCE_DIR}/${PROTOCOL}_wrapper")
++
++ add_custom_command(
++ OUTPUT ${GENERATE_FILE}.cpp
++ OUTPUT ${GENERATE_FILE}.h
++ DEPENDS ${PROTOCOL_FILE}
++ COMMAND "sh" "-c" "/usr/bin/mir_wayland_generator ${PREFIX} ${PROTOCOL_FILE} header >${GENERATE_FILE}.h"
++ COMMAND "sh" "-c" "/usr/bin/mir_wayland_generator ${PREFIX} ${PROTOCOL_FILE} source >${GENERATE_FILE}.cpp"
++ )
++
++ set(GENERATED_FILES ${GENERATED_FILES} "${GENERATE_FILE}.h" "${GENERATE_FILE}.cpp" PARENT_SCOPE)
++endfunction()
++
++add_wayland_protocol("qt_" "qt-windowmanager")
++add_wayland_protocol("z" "xdg-decoration-unstable-v1")
++add_wayland_protocol("org_kde_" "server-decoration")
++
++add_custom_target(refresh-wayland-wrapper
++ DEPENDS ${GENERATED_FILES}
++ SOURCES ${GENERATED_FILES}
++)
+diff --git a/src/platforms/mirserver/wayland-generated/qt-windowmanager_wrapper.cpp b/src/platforms/mirserver/wayland-generated/qt-windowmanager_wrapper.cpp
+new file mode 100644
+index 00000000..b706cd5f
+--- /dev/null
++++ b/src/platforms/mirserver/wayland-generated/qt-windowmanager_wrapper.cpp
+@@ -0,0 +1,177 @@
++/*
++ * AUTOGENERATED - DO NOT EDIT
++ *
++ * This file is generated from qt-windowmanager.xml by mir_wayland_generator
++ */
++
++#include "qt-windowmanager_wrapper.h"
++
++#include <boost/exception/diagnostic_information.hpp>
++#include <wayland-server-core.h>
++
++#include "mir/log.h"
++#include "mir/wayland/protocol_error.h"
++
++namespace mir
++{
++namespace wayland
++{
++extern struct wl_interface const qt_windowmanager_interface_data;
++}
++}
++
++namespace mw = mir::wayland;
++
++namespace
++{
++struct wl_interface const* all_null_types [] {
++ nullptr,
++ nullptr,
++ nullptr,
++ nullptr,
++ nullptr,
++ nullptr};
++}
++
++// Windowmanager
++
++struct mw::Windowmanager::Thunks
++{
++ static int const supported_version;
++
++ static void open_url_thunk(struct wl_client* client, struct wl_resource* resource, uint32_t remaining, char const* url)
++ {
++ try
++ {
++ auto me = static_cast<Windowmanager*>(wl_resource_get_user_data(resource));
++ me->open_url(remaining, url);
++ }
++ catch(ProtocolError const& err)
++ {
++ wl_resource_post_error(err.resource(), err.code(), "%s", err.message());
++ }
++ catch(...)
++ {
++ internal_error_processing_request(client, "Windowmanager::open_url()");
++ }
++ }
++
++ static void resource_destroyed_thunk(wl_resource* resource)
++ {
++ delete static_cast<Windowmanager*>(wl_resource_get_user_data(resource));
++ }
++
++ static void bind_thunk(struct wl_client* client, void* data, uint32_t version, uint32_t id)
++ {
++ auto me = static_cast<Windowmanager::Global*>(data);
++ auto resource = wl_resource_create(
++ client,
++ &qt_windowmanager_interface_data,
++ std::min((int)version, Thunks::supported_version),
++ id);
++ if (resource == nullptr)
++ {
++ wl_client_post_no_memory(client);
++ BOOST_THROW_EXCEPTION((std::bad_alloc{}));
++ }
++ try
++ {
++ me->bind(resource);
++ }
++ catch(...)
++ {
++ internal_error_processing_request(client, "Windowmanager global bind");
++ }
++ }
++
++ static struct wl_message const request_messages[];
++ static struct wl_message const event_messages[];
++ static void const* request_vtable[];
++};
++
++int const mw::Windowmanager::Thunks::supported_version = 1;
++
++mw::Windowmanager::Windowmanager(struct wl_resource* resource, Version<1>)
++ : Resource{resource}
++{
++ wl_resource_set_implementation(resource, Thunks::request_vtable, this, &Thunks::resource_destroyed_thunk);
++}
++
++mw::Windowmanager::~Windowmanager()
++{
++ wl_resource_set_implementation(resource, nullptr, nullptr, nullptr);
++}
++
++void mw::Windowmanager::send_hints_event(int32_t show_is_fullscreen) const
++{
++ wl_resource_post_event(resource, Opcode::hints, show_is_fullscreen);
++}
++
++void mw::Windowmanager::send_quit_event() const
++{
++ wl_resource_post_event(resource, Opcode::quit);
++}
++
++bool mw::Windowmanager::is_instance(wl_resource* resource)
++{
++ return wl_resource_instance_of(resource, &qt_windowmanager_interface_data, Thunks::request_vtable);
++}
++
++void mw::Windowmanager::destroy_and_delete() const
++{
++ // Will result in this object being deleted
++ wl_resource_destroy(resource);
++}
++
++mw::Windowmanager::Global::Global(wl_display* display, Version<1>)
++ : wayland::Global{
++ wl_global_create(
++ display,
++ &qt_windowmanager_interface_data,
++ Thunks::supported_version,
++ this,
++ &Thunks::bind_thunk)}
++{
++}
++
++auto mw::Windowmanager::Global::interface_name() const -> char const*
++{
++ return Windowmanager::interface_name;
++}
++
++struct wl_message const mw::Windowmanager::Thunks::request_messages[] {
++ {"open_url", "us", all_null_types}};
++
++struct wl_message const mw::Windowmanager::Thunks::event_messages[] {
++ {"hints", "i", all_null_types},
++ {"quit", "", all_null_types}};
++
++void const* mw::Windowmanager::Thunks::request_vtable[] {
++ (void*)Thunks::open_url_thunk};
++
++mw::Windowmanager* mw::Windowmanager::from(struct wl_resource* resource)
++{
++ if (resource &&
++ wl_resource_instance_of(resource, &qt_windowmanager_interface_data, Windowmanager::Thunks::request_vtable))
++ {
++ return static_cast<Windowmanager*>(wl_resource_get_user_data(resource));
++ }
++ else
++ {
++ return nullptr;
++ }
++}
++
++namespace mir
++{
++namespace wayland
++{
++
++struct wl_interface const qt_windowmanager_interface_data {
++ mw::Windowmanager::interface_name,
++ mw::Windowmanager::Thunks::supported_version,
++ 1, mw::Windowmanager::Thunks::request_messages,
++ 2, mw::Windowmanager::Thunks::event_messages};
++
++}
++}
+diff --git a/src/platforms/mirserver/wayland-generated/qt-windowmanager_wrapper.h b/src/platforms/mirserver/wayland-generated/qt-windowmanager_wrapper.h
+new file mode 100644
+index 00000000..00a7019a
+--- /dev/null
++++ b/src/platforms/mirserver/wayland-generated/qt-windowmanager_wrapper.h
+@@ -0,0 +1,69 @@
++/*
++ * AUTOGENERATED - DO NOT EDIT
++ *
++ * This file is generated from qt-windowmanager.xml by mir_wayland_generator
++ */
++
++#ifndef MIR_FRONTEND_WAYLAND_QT_WINDOWMANAGER_XML_WRAPPER
++#define MIR_FRONTEND_WAYLAND_QT_WINDOWMANAGER_XML_WRAPPER
++
++#include <optional>
++
++#include "mir/fd.h"
++#include <wayland-server-core.h>
++
++#include "mir/wayland/resource.h"
++#include "mir/wayland/global.h"
++
++namespace mir
++{
++namespace wayland
++{
++
++class Windowmanager;
++
++class Windowmanager : public Resource
++{
++public:
++ static char const constexpr* interface_name = "qt_windowmanager";
++
++ static Windowmanager* from(struct wl_resource*);
++
++ Windowmanager(struct wl_resource* resource, Version<1>);
++ virtual ~Windowmanager();
++
++ void send_hints_event(int32_t show_is_fullscreen) const;
++ void send_quit_event() const;
++
++ void destroy_and_delete() const;
++
++ struct Opcode
++ {
++ static uint32_t const hints = 0;
++ static uint32_t const quit = 1;
++ };
++
++ struct Thunks;
++
++ static bool is_instance(wl_resource* resource);
++
++ class Global : public wayland::Global
++ {
++ public:
++ Global(wl_display* display, Version<1>);
++
++ auto interface_name() const -> char const* override;
++
++ private:
++ virtual void bind(wl_resource* new_qt_windowmanager) = 0;
++ friend Windowmanager::Thunks;
++ };
++
++private:
++ virtual void open_url(uint32_t remaining, std::string const& url) = 0;
++};
++
++}
++}
++
++#endif // MIR_FRONTEND_WAYLAND_QT_WINDOWMANAGER_XML_WRAPPER
+diff --git a/src/platforms/mirserver/wayland-generated/server-decoration_wrapper.cpp b/src/platforms/mirserver/wayland-generated/server-decoration_wrapper.cpp
+new file mode 100644
+index 00000000..18cf00f9
+--- /dev/null
++++ b/src/platforms/mirserver/wayland-generated/server-decoration_wrapper.cpp
+@@ -0,0 +1,295 @@
++/*
++ * AUTOGENERATED - DO NOT EDIT
++ *
++ * This file is generated from server-decoration.xml by mir_wayland_generator
++ */
++
++#include "server-decoration_wrapper.h"
++
++#include <boost/exception/diagnostic_information.hpp>
++#include <wayland-server-core.h>
++
++#include "mir/log.h"
++#include "mir/wayland/protocol_error.h"
++
++namespace mir
++{
++namespace wayland
++{
++extern struct wl_interface const org_kde_kwin_server_decoration_interface_data;
++extern struct wl_interface const org_kde_kwin_server_decoration_manager_interface_data;
++extern struct wl_interface const wl_surface_interface_data;
++}
++}
++
++namespace mw = mir::wayland;
++
++namespace
++{
++struct wl_interface const* all_null_types [] {
++ nullptr,
++ nullptr,
++ nullptr,
++ nullptr,
++ nullptr,
++ nullptr};
++}
++
++// KwinServerDecorationManager
++
++struct mw::KwinServerDecorationManager::Thunks
++{
++ static int const supported_version;
++
++ static void create_thunk(struct wl_client* client, struct wl_resource* resource, uint32_t id, struct wl_resource* surface)
++ {
++ wl_resource* id_resolved{
++ wl_resource_create(client, &org_kde_kwin_server_decoration_interface_data, wl_resource_get_version(resource), id)};
++ if (id_resolved == nullptr)
++ {
++ wl_client_post_no_memory(client);
++ BOOST_THROW_EXCEPTION((std::bad_alloc{}));
++ }
++ try
++ {
++ auto me = static_cast<KwinServerDecorationManager*>(wl_resource_get_user_data(resource));
++ me->create(id_resolved, surface);
++ }
++ catch(ProtocolError const& err)
++ {
++ wl_resource_post_error(err.resource(), err.code(), "%s", err.message());
++ }
++ catch(...)
++ {
++ internal_error_processing_request(client, "KwinServerDecorationManager::create()");
++ }
++ }
++
++ static void resource_destroyed_thunk(wl_resource* resource)
++ {
++ delete static_cast<KwinServerDecorationManager*>(wl_resource_get_user_data(resource));
++ }
++
++ static void bind_thunk(struct wl_client* client, void* data, uint32_t version, uint32_t id)
++ {
++ auto me = static_cast<KwinServerDecorationManager::Global*>(data);
++ auto resource = wl_resource_create(
++ client,
++ &org_kde_kwin_server_decoration_manager_interface_data,
++ std::min((int)version, Thunks::supported_version),
++ id);
++ if (resource == nullptr)
++ {
++ wl_client_post_no_memory(client);
++ BOOST_THROW_EXCEPTION((std::bad_alloc{}));
++ }
++ try
++ {
++ me->bind(resource);
++ }
++ catch(...)
++ {
++ internal_error_processing_request(client, "KwinServerDecorationManager global bind");
++ }
++ }
++
++ static struct wl_interface const* create_types[];
++ static struct wl_message const request_messages[];
++ static struct wl_message const event_messages[];
++ static void const* request_vtable[];
++};
++
++int const mw::KwinServerDecorationManager::Thunks::supported_version = 1;
++
++mw::KwinServerDecorationManager::KwinServerDecorationManager(struct wl_resource* resource, Version<1>)
++ : Resource{resource}
++{
++ wl_resource_set_implementation(resource, Thunks::request_vtable, this, &Thunks::resource_destroyed_thunk);
++}
++
++mw::KwinServerDecorationManager::~KwinServerDecorationManager()
++{
++ wl_resource_set_implementation(resource, nullptr, nullptr, nullptr);
++}
++
++void mw::KwinServerDecorationManager::send_default_mode_event(uint32_t mode) const
++{
++ wl_resource_post_event(resource, Opcode::default_mode, mode);
++}
++
++bool mw::KwinServerDecorationManager::is_instance(wl_resource* resource)
++{
++ return wl_resource_instance_of(resource, &org_kde_kwin_server_decoration_manager_interface_data, Thunks::request_vtable);
++}
++
++void mw::KwinServerDecorationManager::destroy_and_delete() const
++{
++ // Will result in this object being deleted
++ wl_resource_destroy(resource);
++}
++
++uint32_t const mw::KwinServerDecorationManager::Mode::None;
++uint32_t const mw::KwinServerDecorationManager::Mode::Client;
++uint32_t const mw::KwinServerDecorationManager::Mode::Server;
++
++mw::KwinServerDecorationManager::Global::Global(wl_display* display, Version<1>)
++ : wayland::Global{
++ wl_global_create(
++ display,
++ &org_kde_kwin_server_decoration_manager_interface_data,
++ Thunks::supported_version,
++ this,
++ &Thunks::bind_thunk)}
++{
++}
++
++auto mw::KwinServerDecorationManager::Global::interface_name() const -> char const*
++{
++ return KwinServerDecorationManager::interface_name;
++}
++
++struct wl_interface const* mw::KwinServerDecorationManager::Thunks::create_types[] {
++ &org_kde_kwin_server_decoration_interface_data,
++ &wl_surface_interface_data};
++
++struct wl_message const mw::KwinServerDecorationManager::Thunks::request_messages[] {
++ {"create", "no", create_types}};
++
++struct wl_message const mw::KwinServerDecorationManager::Thunks::event_messages[] {
++ {"default_mode", "u", all_null_types}};
++
++void const* mw::KwinServerDecorationManager::Thunks::request_vtable[] {
++ (void*)Thunks::create_thunk};
++
++mw::KwinServerDecorationManager* mw::KwinServerDecorationManager::from(struct wl_resource* resource)
++{
++ if (resource &&
++ wl_resource_instance_of(resource, &org_kde_kwin_server_decoration_manager_interface_data, KwinServerDecorationManager::Thunks::request_vtable))
++ {
++ return static_cast<KwinServerDecorationManager*>(wl_resource_get_user_data(resource));
++ }
++ else
++ {
++ return nullptr;
++ }
++}
++
++// KwinServerDecoration
++
++struct mw::KwinServerDecoration::Thunks
++{
++ static int const supported_version;
++
++ static void release_thunk(struct wl_client* client, struct wl_resource* resource)
++ {
++ try
++ {
++ wl_resource_destroy(resource);
++ }
++ catch(ProtocolError const& err)
++ {
++ wl_resource_post_error(err.resource(), err.code(), "%s", err.message());
++ }
++ catch(...)
++ {
++ internal_error_processing_request(client, "KwinServerDecoration::release()");
++ }
++ }
++
++ static void request_mode_thunk(struct wl_client* client, struct wl_resource* resource, uint32_t mode)
++ {
++ try
++ {
++ auto me = static_cast<KwinServerDecoration*>(wl_resource_get_user_data(resource));
++ me->request_mode(mode);
++ }
++ catch(ProtocolError const& err)
++ {
++ wl_resource_post_error(err.resource(), err.code(), "%s", err.message());
++ }
++ catch(...)
++ {
++ internal_error_processing_request(client, "KwinServerDecoration::request_mode()");
++ }
++ }
++
++ static void resource_destroyed_thunk(wl_resource* resource)
++ {
++ delete static_cast<KwinServerDecoration*>(wl_resource_get_user_data(resource));
++ }
++
++ static struct wl_message const request_messages[];
++ static struct wl_message const event_messages[];
++ static void const* request_vtable[];
++};
++
++int const mw::KwinServerDecoration::Thunks::supported_version = 1;
++
++mw::KwinServerDecoration::KwinServerDecoration(struct wl_resource* resource, Version<1>)
++ : Resource{resource}
++{
++ wl_resource_set_implementation(resource, Thunks::request_vtable, this, &Thunks::resource_destroyed_thunk);
++}
++
++mw::KwinServerDecoration::~KwinServerDecoration()
++{
++ wl_resource_set_implementation(resource, nullptr, nullptr, nullptr);
++}
++
++void mw::KwinServerDecoration::send_mode_event(uint32_t mode) const
++{
++ wl_resource_post_event(resource, Opcode::mode, mode);
++}
++
++bool mw::KwinServerDecoration::is_instance(wl_resource* resource)
++{
++ return wl_resource_instance_of(resource, &org_kde_kwin_server_decoration_interface_data, Thunks::request_vtable);
++}
++
++uint32_t const mw::KwinServerDecoration::Mode::None;
++uint32_t const mw::KwinServerDecoration::Mode::Client;
++uint32_t const mw::KwinServerDecoration::Mode::Server;
++
++struct wl_message const mw::KwinServerDecoration::Thunks::request_messages[] {
++ {"release", "", all_null_types},
++ {"request_mode", "u", all_null_types}};
++
++struct wl_message const mw::KwinServerDecoration::Thunks::event_messages[] {
++ {"mode", "u", all_null_types}};
++
++void const* mw::KwinServerDecoration::Thunks::request_vtable[] {
++ (void*)Thunks::release_thunk,
++ (void*)Thunks::request_mode_thunk};
++
++mw::KwinServerDecoration* mw::KwinServerDecoration::from(struct wl_resource* resource)
++{
++ if (resource &&
++ wl_resource_instance_of(resource, &org_kde_kwin_server_decoration_interface_data, KwinServerDecoration::Thunks::request_vtable))
++ {
++ return static_cast<KwinServerDecoration*>(wl_resource_get_user_data(resource));
++ }
++ else
++ {
++ return nullptr;
++ }
++}
++
++namespace mir
++{
++namespace wayland
++{
++
++struct wl_interface const org_kde_kwin_server_decoration_manager_interface_data {
++ mw::KwinServerDecorationManager::interface_name,
++ mw::KwinServerDecorationManager::Thunks::supported_version,
++ 1, mw::KwinServerDecorationManager::Thunks::request_messages,
++ 1, mw::KwinServerDecorationManager::Thunks::event_messages};
++
++struct wl_interface const org_kde_kwin_server_decoration_interface_data {
++ mw::KwinServerDecoration::interface_name,
++ mw::KwinServerDecoration::Thunks::supported_version,
++ 2, mw::KwinServerDecoration::Thunks::request_messages,
++ 1, mw::KwinServerDecoration::Thunks::event_messages};
++
++}
++}
+diff --git a/src/platforms/mirserver/wayland-generated/server-decoration_wrapper.h b/src/platforms/mirserver/wayland-generated/server-decoration_wrapper.h
+new file mode 100644
+index 00000000..87a42d47
+--- /dev/null
++++ b/src/platforms/mirserver/wayland-generated/server-decoration_wrapper.h
+@@ -0,0 +1,107 @@
++/*
++ * AUTOGENERATED - DO NOT EDIT
++ *
++ * This file is generated from server-decoration.xml by mir_wayland_generator
++ */
++
++#ifndef MIR_FRONTEND_WAYLAND_SERVER_DECORATION_XML_WRAPPER
++#define MIR_FRONTEND_WAYLAND_SERVER_DECORATION_XML_WRAPPER
++
++#include <optional>
++
++#include "mir/fd.h"
++#include <wayland-server-core.h>
++
++#include "mir/wayland/resource.h"
++#include "mir/wayland/global.h"
++
++namespace mir
++{
++namespace wayland
++{
++
++class KwinServerDecorationManager;
++class KwinServerDecoration;
++
++class KwinServerDecorationManager : public Resource
++{
++public:
++ static char const constexpr* interface_name = "org_kde_kwin_server_decoration_manager";
++
++ static KwinServerDecorationManager* from(struct wl_resource*);
++
++ KwinServerDecorationManager(struct wl_resource* resource, Version<1>);
++ virtual ~KwinServerDecorationManager();
++
++ void send_default_mode_event(uint32_t mode) const;
++
++ void destroy_and_delete() const;
++
++ struct Mode
++ {
++ static uint32_t const None = 0;
++ static uint32_t const Client = 1;
++ static uint32_t const Server = 2;
++ };
++
++ struct Opcode
++ {
++ static uint32_t const default_mode = 0;
++ };
++
++ struct Thunks;
++
++ static bool is_instance(wl_resource* resource);
++
++ class Global : public wayland::Global
++ {
++ public:
++ Global(wl_display* display, Version<1>);
++
++ auto interface_name() const -> char const* override;
++
++ private:
++ virtual void bind(wl_resource* new_org_kde_kwin_server_decoration_manager) = 0;
++ friend KwinServerDecorationManager::Thunks;
++ };
++
++private:
++ virtual void create(struct wl_resource* id, struct wl_resource* surface) = 0;
++};
++
++class KwinServerDecoration : public Resource
++{
++public:
++ static char const constexpr* interface_name = "org_kde_kwin_server_decoration";
++
++ static KwinServerDecoration* from(struct wl_resource*);
++
++ KwinServerDecoration(struct wl_resource* resource, Version<1>);
++ virtual ~KwinServerDecoration();
++
++ void send_mode_event(uint32_t mode) const;
++
++ struct Mode
++ {
++ static uint32_t const None = 0;
++ static uint32_t const Client = 1;
++ static uint32_t const Server = 2;
++ };
++
++ struct Opcode
++ {
++ static uint32_t const mode = 0;
++ };
++
++ struct Thunks;
++
++ static bool is_instance(wl_resource* resource);
++
++private:
++ virtual void request_mode(uint32_t mode) = 0;
++};
++
++}
++}
++
++#endif // MIR_FRONTEND_WAYLAND_SERVER_DECORATION_XML_WRAPPER
+diff --git a/src/platforms/mirserver/wayland-generated/xdg-decoration-unstable-v1_wrapper.cpp b/src/platforms/mirserver/wayland-generated/xdg-decoration-unstable-v1_wrapper.cpp
+new file mode 100644
+index 00000000..d40d19b7
+--- /dev/null
++++ b/src/platforms/mirserver/wayland-generated/xdg-decoration-unstable-v1_wrapper.cpp
+@@ -0,0 +1,315 @@
++/*
++ * AUTOGENERATED - DO NOT EDIT
++ *
++ * This file is generated from xdg-decoration-unstable-v1.xml by mir_wayland_generator
++ */
++
++#include "xdg-decoration-unstable-v1_wrapper.h"
++
++#include <boost/exception/diagnostic_information.hpp>
++#include <wayland-server-core.h>
++
++#include "mir/log.h"
++#include "mir/wayland/protocol_error.h"
++
++namespace mir
++{
++namespace wayland
++{
++extern struct wl_interface const xdg_toplevel_interface_data;
++extern struct wl_interface const zxdg_decoration_manager_v1_interface_data;
++extern struct wl_interface const zxdg_toplevel_decoration_v1_interface_data;
++}
++}
++
++namespace mw = mir::wayland;
++
++namespace
++{
++struct wl_interface const* all_null_types [] {
++ nullptr,
++ nullptr,
++ nullptr,
++ nullptr,
++ nullptr,
++ nullptr};
++}
++
++// XdgDecorationManagerV1
++
++struct mw::XdgDecorationManagerV1::Thunks
++{
++ static int const supported_version;
++
++ static void destroy_thunk(struct wl_client* client, struct wl_resource* resource)
++ {
++ try
++ {
++ wl_resource_destroy(resource);
++ }
++ catch(ProtocolError const& err)
++ {
++ wl_resource_post_error(err.resource(), err.code(), "%s", err.message());
++ }
++ catch(...)
++ {
++ internal_error_processing_request(client, "XdgDecorationManagerV1::destroy()");
++ }
++ }
++
++ static void get_toplevel_decoration_thunk(struct wl_client* client, struct wl_resource* resource, uint32_t id, struct wl_resource* toplevel)
++ {
++ wl_resource* id_resolved{
++ wl_resource_create(client, &zxdg_toplevel_decoration_v1_interface_data, wl_resource_get_version(resource), id)};
++ if (id_resolved == nullptr)
++ {
++ wl_client_post_no_memory(client);
++ BOOST_THROW_EXCEPTION((std::bad_alloc{}));
++ }
++ try
++ {
++ auto me = static_cast<XdgDecorationManagerV1*>(wl_resource_get_user_data(resource));
++ me->get_toplevel_decoration(id_resolved, toplevel);
++ }
++ catch(ProtocolError const& err)
++ {
++ wl_resource_post_error(err.resource(), err.code(), "%s", err.message());
++ }
++ catch(...)
++ {
++ internal_error_processing_request(client, "XdgDecorationManagerV1::get_toplevel_decoration()");
++ }
++ }
++
++ static void resource_destroyed_thunk(wl_resource* resource)
++ {
++ delete static_cast<XdgDecorationManagerV1*>(wl_resource_get_user_data(resource));
++ }
++
++ static void bind_thunk(struct wl_client* client, void* data, uint32_t version, uint32_t id)
++ {
++ auto me = static_cast<XdgDecorationManagerV1::Global*>(data);
++ auto resource = wl_resource_create(
++ client,
++ &zxdg_decoration_manager_v1_interface_data,
++ std::min((int)version, Thunks::supported_version),
++ id);
++ if (resource == nullptr)
++ {
++ wl_client_post_no_memory(client);
++ BOOST_THROW_EXCEPTION((std::bad_alloc{}));
++ }
++ try
++ {
++ me->bind(resource);
++ }
++ catch(...)
++ {
++ internal_error_processing_request(client, "XdgDecorationManagerV1 global bind");
++ }
++ }
++
++ static struct wl_interface const* get_toplevel_decoration_types[];
++ static struct wl_message const request_messages[];
++ static void const* request_vtable[];
++};
++
++int const mw::XdgDecorationManagerV1::Thunks::supported_version = 1;
++
++mw::XdgDecorationManagerV1::XdgDecorationManagerV1(struct wl_resource* resource, Version<1>)
++ : Resource{resource}
++{
++ wl_resource_set_implementation(resource, Thunks::request_vtable, this, &Thunks::resource_destroyed_thunk);
++}
++
++mw::XdgDecorationManagerV1::~XdgDecorationManagerV1()
++{
++ wl_resource_set_implementation(resource, nullptr, nullptr, nullptr);
++}
++
++bool mw::XdgDecorationManagerV1::is_instance(wl_resource* resource)
++{
++ return wl_resource_instance_of(resource, &zxdg_decoration_manager_v1_interface_data, Thunks::request_vtable);
++}
++
++mw::XdgDecorationManagerV1::Global::Global(wl_display* display, Version<1>)
++ : wayland::Global{
++ wl_global_create(
++ display,
++ &zxdg_decoration_manager_v1_interface_data,
++ Thunks::supported_version,
++ this,
++ &Thunks::bind_thunk)}
++{
++}
++
++auto mw::XdgDecorationManagerV1::Global::interface_name() const -> char const*
++{
++ return XdgDecorationManagerV1::interface_name;
++}
++
++struct wl_interface const* mw::XdgDecorationManagerV1::Thunks::get_toplevel_decoration_types[] {
++ &zxdg_toplevel_decoration_v1_interface_data,
++ &xdg_toplevel_interface_data};
++
++struct wl_message const mw::XdgDecorationManagerV1::Thunks::request_messages[] {
++ {"destroy", "", all_null_types},
++ {"get_toplevel_decoration", "no", get_toplevel_decoration_types}};
++
++void const* mw::XdgDecorationManagerV1::Thunks::request_vtable[] {
++ (void*)Thunks::destroy_thunk,
++ (void*)Thunks::get_toplevel_decoration_thunk};
++
++mw::XdgDecorationManagerV1* mw::XdgDecorationManagerV1::from(struct wl_resource* resource)
++{
++ if (resource &&
++ wl_resource_instance_of(resource, &zxdg_decoration_manager_v1_interface_data, XdgDecorationManagerV1::Thunks::request_vtable))
++ {
++ return static_cast<XdgDecorationManagerV1*>(wl_resource_get_user_data(resource));
++ }
++ else
++ {
++ return nullptr;
++ }
++}
++
++// XdgToplevelDecorationV1
++
++struct mw::XdgToplevelDecorationV1::Thunks
++{
++ static int const supported_version;
++
++ static void destroy_thunk(struct wl_client* client, struct wl_resource* resource)
++ {
++ try
++ {
++ wl_resource_destroy(resource);
++ }
++ catch(ProtocolError const& err)
++ {
++ wl_resource_post_error(err.resource(), err.code(), "%s", err.message());
++ }
++ catch(...)
++ {
++ internal_error_processing_request(client, "XdgToplevelDecorationV1::destroy()");
++ }
++ }
++
++ static void set_mode_thunk(struct wl_client* client, struct wl_resource* resource, uint32_t mode)
++ {
++ try
++ {
++ auto me = static_cast<XdgToplevelDecorationV1*>(wl_resource_get_user_data(resource));
++ me->set_mode(mode);
++ }
++ catch(ProtocolError const& err)
++ {
++ wl_resource_post_error(err.resource(), err.code(), "%s", err.message());
++ }
++ catch(...)
++ {
++ internal_error_processing_request(client, "XdgToplevelDecorationV1::set_mode()");
++ }
++ }
++
++ static void unset_mode_thunk(struct wl_client* client, struct wl_resource* resource)
++ {
++ try
++ {
++ auto me = static_cast<XdgToplevelDecorationV1*>(wl_resource_get_user_data(resource));
++ me->unset_mode();
++ }
++ catch(ProtocolError const& err)
++ {
++ wl_resource_post_error(err.resource(), err.code(), "%s", err.message());
++ }
++ catch(...)
++ {
++ internal_error_processing_request(client, "XdgToplevelDecorationV1::unset_mode()");
++ }
++ }
++
++ static void resource_destroyed_thunk(wl_resource* resource)
++ {
++ delete static_cast<XdgToplevelDecorationV1*>(wl_resource_get_user_data(resource));
++ }
++
++ static struct wl_message const request_messages[];
++ static struct wl_message const event_messages[];
++ static void const* request_vtable[];
++};
++
++int const mw::XdgToplevelDecorationV1::Thunks::supported_version = 1;
++
++mw::XdgToplevelDecorationV1::XdgToplevelDecorationV1(struct wl_resource* resource, Version<1>)
++ : Resource{resource}
++{
++ wl_resource_set_implementation(resource, Thunks::request_vtable, this, &Thunks::resource_destroyed_thunk);
++}
++
++mw::XdgToplevelDecorationV1::~XdgToplevelDecorationV1()
++{
++ wl_resource_set_implementation(resource, nullptr, nullptr, nullptr);
++}
++
++void mw::XdgToplevelDecorationV1::send_configure_event(uint32_t mode) const
++{
++ wl_resource_post_event(resource, Opcode::configure, mode);
++}
++
++bool mw::XdgToplevelDecorationV1::is_instance(wl_resource* resource)
++{
++ return wl_resource_instance_of(resource, &zxdg_toplevel_decoration_v1_interface_data, Thunks::request_vtable);
++}
++
++uint32_t const mw::XdgToplevelDecorationV1::Error::unconfigured_buffer;
++uint32_t const mw::XdgToplevelDecorationV1::Error::already_constructed;
++uint32_t const mw::XdgToplevelDecorationV1::Error::orphaned;
++uint32_t const mw::XdgToplevelDecorationV1::Mode::client_side;
++uint32_t const mw::XdgToplevelDecorationV1::Mode::server_side;
++
++struct wl_message const mw::XdgToplevelDecorationV1::Thunks::request_messages[] {
++ {"destroy", "", all_null_types},
++ {"set_mode", "u", all_null_types},
++ {"unset_mode", "", all_null_types}};
++
++struct wl_message const mw::XdgToplevelDecorationV1::Thunks::event_messages[] {
++ {"configure", "u", all_null_types}};
++
++void const* mw::XdgToplevelDecorationV1::Thunks::request_vtable[] {
++ (void*)Thunks::destroy_thunk,
++ (void*)Thunks::set_mode_thunk,
++ (void*)Thunks::unset_mode_thunk};
++
++mw::XdgToplevelDecorationV1* mw::XdgToplevelDecorationV1::from(struct wl_resource* resource)
++{
++ if (resource &&
++ wl_resource_instance_of(resource, &zxdg_toplevel_decoration_v1_interface_data, XdgToplevelDecorationV1::Thunks::request_vtable))
++ {
++ return static_cast<XdgToplevelDecorationV1*>(wl_resource_get_user_data(resource));
++ }
++ else
++ {
++ return nullptr;
++ }
++}
++
++namespace mir
++{
++namespace wayland
++{
++
++struct wl_interface const zxdg_decoration_manager_v1_interface_data {
++ mw::XdgDecorationManagerV1::interface_name,
++ mw::XdgDecorationManagerV1::Thunks::supported_version,
++ 2, mw::XdgDecorationManagerV1::Thunks::request_messages,
++ 0, nullptr};
++
++struct wl_interface const zxdg_toplevel_decoration_v1_interface_data {
++ mw::XdgToplevelDecorationV1::interface_name,
++ mw::XdgToplevelDecorationV1::Thunks::supported_version,
++ 3, mw::XdgToplevelDecorationV1::Thunks::request_messages,
++ 1, mw::XdgToplevelDecorationV1::Thunks::event_messages};
++
++}
++}
+diff --git a/src/platforms/mirserver/wayland-generated/xdg-decoration-unstable-v1_wrapper.h b/src/platforms/mirserver/wayland-generated/xdg-decoration-unstable-v1_wrapper.h
+new file mode 100644
+index 00000000..7483ba44
+--- /dev/null
++++ b/src/platforms/mirserver/wayland-generated/xdg-decoration-unstable-v1_wrapper.h
+@@ -0,0 +1,98 @@
++/*
++ * AUTOGENERATED - DO NOT EDIT
++ *
++ * This file is generated from xdg-decoration-unstable-v1.xml by mir_wayland_generator
++ */
++
++#ifndef MIR_FRONTEND_WAYLAND_XDG_DECORATION_UNSTABLE_V1_XML_WRAPPER
++#define MIR_FRONTEND_WAYLAND_XDG_DECORATION_UNSTABLE_V1_XML_WRAPPER
++
++#include <optional>
++
++#include "mir/fd.h"
++#include <wayland-server-core.h>
++
++#include "mir/wayland/resource.h"
++#include "mir/wayland/global.h"
++
++namespace mir
++{
++namespace wayland
++{
++
++class XdgDecorationManagerV1;
++class XdgToplevelDecorationV1;
++
++class XdgDecorationManagerV1 : public Resource
++{
++public:
++ static char const constexpr* interface_name = "zxdg_decoration_manager_v1";
++
++ static XdgDecorationManagerV1* from(struct wl_resource*);
++
++ XdgDecorationManagerV1(struct wl_resource* resource, Version<1>);
++ virtual ~XdgDecorationManagerV1();
++
++ struct Thunks;
++
++ static bool is_instance(wl_resource* resource);
++
++ class Global : public wayland::Global
++ {
++ public:
++ Global(wl_display* display, Version<1>);
++
++ auto interface_name() const -> char const* override;
++
++ private:
++ virtual void bind(wl_resource* new_zxdg_decoration_manager_v1) = 0;
++ friend XdgDecorationManagerV1::Thunks;
++ };
++
++private:
++ virtual void get_toplevel_decoration(struct wl_resource* id, struct wl_resource* toplevel) = 0;
++};
++
++class XdgToplevelDecorationV1 : public Resource
++{
++public:
++ static char const constexpr* interface_name = "zxdg_toplevel_decoration_v1";
++
++ static XdgToplevelDecorationV1* from(struct wl_resource*);
++
++ XdgToplevelDecorationV1(struct wl_resource* resource, Version<1>);
++ virtual ~XdgToplevelDecorationV1();
++
++ void send_configure_event(uint32_t mode) const;
++
++ struct Error
++ {
++ static uint32_t const unconfigured_buffer = 0;
++ static uint32_t const already_constructed = 1;
++ static uint32_t const orphaned = 2;
++ };
++
++ struct Mode
++ {
++ static uint32_t const client_side = 1;
++ static uint32_t const server_side = 2;
++ };
++
++ struct Opcode
++ {
++ static uint32_t const configure = 0;
++ };
++
++ struct Thunks;
++
++ static bool is_instance(wl_resource* resource);
++
++private:
++ virtual void set_mode(uint32_t mode) = 0;
++ virtual void unset_mode() = 0;
++};
++
++}
++}
++
++#endif // MIR_FRONTEND_WAYLAND_XDG_DECORATION_UNSTABLE_V1_XML_WRAPPER
+diff --git a/src/platforms/mirserver/wayland-protocols/qt-windowmanager.xml b/src/platforms/mirserver/wayland-protocols/qt-windowmanager.xml
+new file mode 100644
+index 00000000..86ddff72
+--- /dev/null
++++ b/src/platforms/mirserver/wayland-protocols/qt-windowmanager.xml
+@@ -0,0 +1,58 @@
++<protocol name="qt_windowmanager">
++
++ <copyright>
++ Copyright (C) 2015 The Qt Company Ltd.
++ Contact: http://www.qt.io/licensing/
++
++ This file is part of the plugins of the Qt Toolkit.
++
++ $QT_BEGIN_LICENSE:BSD$
++ You may use this file under the terms of the BSD license as follows:
++
++ "Redistribution and use in source and binary forms, with or without
++ modification, are permitted provided that the following conditions are
++ met:
++ * Redistributions of source code must retain the above copyright
++ notice, this list of conditions and the following disclaimer.
++ * Redistributions in binary form must reproduce the above copyright
++ notice, this list of conditions and the following disclaimer in
++ the documentation and/or other materials provided with the
++ distribution.
++ * Neither the name of The Qt Company Ltd nor the names of its
++ contributors may be used to endorse or promote products derived
++ from this software without specific prior written permission.
++
++
++ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
++ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
++ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
++ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
++ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
++ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
++ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
++ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
++ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
++ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
++ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
++
++ $QT_END_LICENSE$
++ </copyright>
++
++ <interface name="qt_windowmanager" version="1">
++ <request name="open_url">
++ <description summary="client requests a url to be opened">
++ If remaining is not 0 this is a multipart request, and
++ the server must concatenate subsequent requst urls to and
++ including a request where remaining is set to 0, before
++ it can handle the url.
++ </description>
++ <arg name="remaining" type="uint" />
++ <arg name="url" type="string" />
++ </request>
++ <event name="hints">
++ <arg name="show_is_fullscreen" type="int"/>
++ </event>
++ <event name="quit">
++ </event>
++ </interface>
++</protocol>
+diff --git a/src/platforms/mirserver/wayland-protocols/server-decoration.xml b/src/platforms/mirserver/wayland-protocols/server-decoration.xml
+new file mode 100644
+index 00000000..b70bec12
+--- /dev/null
++++ b/src/platforms/mirserver/wayland-protocols/server-decoration.xml
+@@ -0,0 +1,85 @@
++<?xml version="1.0" encoding="UTF-8"?>
++<protocol name="server_decoration">
++ <copyright><![CDATA[
++ SPDX-FileCopyrightText: 2015 Martin Gräßlin
++
++ SPDX-License-Identifier: LGPL-2.1-or-later
++ ]]></copyright>
++ <interface name="org_kde_kwin_server_decoration_manager" version="1">
++ <description summary="Server side window decoration manager">
++ This interface allows to coordinate whether the server should create
++ a server-side window decoration around a wl_surface representing a
++ shell surface (wl_shell_surface or similar). By announcing support
++ for this interface the server indicates that it supports server
++ side decorations.
++
++ Use in conjunction with zxdg_decoration_manager_v1 is undefined.
++ </description>
++ <request name="create">
++ <description summary="Create a server-side decoration object for a given surface">
++ When a client creates a server-side decoration object it indicates
++ that it supports the protocol. The client is supposed to tell the
++ server whether it wants server-side decorations or will provide
++ client-side decorations.
++
++ If the client does not create a server-side decoration object for
++ a surface the server interprets this as lack of support for this
++ protocol and considers it as client-side decorated. Nevertheless a
++ client-side decorated surface should use this protocol to indicate
++ to the server that it does not want a server-side deco.
++ </description>
++ <arg name="id" type="new_id" interface="org_kde_kwin_server_decoration"/>
++ <arg name="surface" type="object" interface="wl_surface"/>
++ </request>
++ <enum name="mode">
++ <description summary="Possible values to use in request_mode and the event mode."/>
++ <entry name="None" value="0" summary="Undecorated: The surface is not decorated at all, neither server nor client-side. An example is a popup surface which should not be decorated."/>
++ <entry name="Client" value="1" summary="Client-side decoration: The decoration is part of the surface and the client."/>
++ <entry name="Server" value="2" summary="Server-side decoration: The server embeds the surface into a decoration frame."/>
++ </enum>
++ <event name="default_mode">
++ <description summary="The default mode used on the server">
++ This event is emitted directly after binding the interface. It contains
++ the default mode for the decoration. When a new server decoration object
++ is created this new object will be in the default mode until the first
++ request_mode is requested.
++
++ The server may change the default mode at any time.
++ </description>
++ <arg name="mode" type="uint" summary="The default decoration mode applied to newly created server decorations."/>
++ </event>
++ </interface>
++ <interface name="org_kde_kwin_server_decoration" version="1">
++ <request name="release" type="destructor">
++ <description summary="release the server decoration object"/>
++ </request>
++ <enum name="mode">
++ <description summary="Possible values to use in request_mode and the event mode."/>
++ <entry name="None" value="0" summary="Undecorated: The surface is not decorated at all, neither server nor client-side. An example is a popup surface which should not be decorated."/>
++ <entry name="Client" value="1" summary="Client-side decoration: The decoration is part of the surface and the client."/>
++ <entry name="Server" value="2" summary="Server-side decoration: The server embeds the surface into a decoration frame."/>
++ </enum>
++ <request name="request_mode">
++ <description summary="The decoration mode the surface wants to use."/>
++ <arg name="mode" type="uint" summary="The mode this surface wants to use."/>
++ </request>
++ <event name="mode">
++ <description summary="The new decoration mode applied by the server">
++ This event is emitted directly after the decoration is created and
++ represents the base decoration policy by the server. E.g. a server
++ which wants all surfaces to be client-side decorated will send Client,
++ a server which wants server-side decoration will send Server.
++
++ The client can request a different mode through the decoration request.
++ The server will acknowledge this by another event with the same mode. So
++ even if a server prefers server-side decoration it's possible to force a
++ client-side decoration.
++
++ The server may emit this event at any time. In this case the client can
++ again request a different mode. It's the responsibility of the server to
++ prevent a feedback loop.
++ </description>
++ <arg name="mode" type="uint" summary="The decoration mode applied to the surface by the server."/>
++ </event>
++ </interface>
++</protocol>
+diff --git a/src/platforms/mirserver/wayland-protocols/xdg-decoration-unstable-v1.xml b/src/platforms/mirserver/wayland-protocols/xdg-decoration-unstable-v1.xml
+new file mode 100644
+index 00000000..e5967751
+--- /dev/null
++++ b/src/platforms/mirserver/wayland-protocols/xdg-decoration-unstable-v1.xml
+@@ -0,0 +1,156 @@
++<?xml version="1.0" encoding="UTF-8"?>
++<protocol name="xdg_decoration_unstable_v1">
++ <copyright>
++ Copyright © 2018 Simon Ser
++
++ Permission is hereby granted, free of charge, to any person obtaining a
++ copy of this software and associated documentation files (the "Software"),
++ to deal in the Software without restriction, including without limitation
++ the rights to use, copy, modify, merge, publish, distribute, sublicense,
++ and/or sell copies of the Software, and to permit persons to whom the
++ Software is furnished to do so, subject to the following conditions:
++
++ The above copyright notice and this permission notice (including the next
++ paragraph) shall be included in all copies or substantial portions of the
++ Software.
++
++ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
++ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
++ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
++ THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
++ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
++ FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
++ DEALINGS IN THE SOFTWARE.
++ </copyright>
++
++ <interface name="zxdg_decoration_manager_v1" version="1">
++ <description summary="window decoration manager">
++ This interface allows a compositor to announce support for server-side
++ decorations.
++
++ A window decoration is a set of window controls as deemed appropriate by
++ the party managing them, such as user interface components used to move,
++ resize and change a window's state.
++
++ A client can use this protocol to request being decorated by a supporting
++ compositor.
++
++ If compositor and client do not negotiate the use of a server-side
++ decoration using this protocol, clients continue to self-decorate as they
++ see fit.
++
++ Warning! The protocol described in this file is experimental and
++ backward incompatible changes may be made. Backward compatible changes
++ may be added together with the corresponding interface version bump.
++ Backward incompatible changes are done by bumping the version number in
++ the protocol and interface names and resetting the interface version.
++ Once the protocol is to be declared stable, the 'z' prefix and the
++ version number in the protocol and interface names are removed and the
++ interface version number is reset.
++ </description>
++
++ <request name="destroy" type="destructor">
++ <description summary="destroy the decoration manager object">
++ Destroy the decoration manager. This doesn't destroy objects created
++ with the manager.
++ </description>
++ </request>
++
++ <request name="get_toplevel_decoration">
++ <description summary="create a new toplevel decoration object">
++ Create a new decoration object associated with the given toplevel.
++
++ Creating an xdg_toplevel_decoration from an xdg_toplevel which has a
++ buffer attached or committed is a client error, and any attempts by a
++ client to attach or manipulate a buffer prior to the first
++ xdg_toplevel_decoration.configure event must also be treated as
++ errors.
++ </description>
++ <arg name="id" type="new_id" interface="zxdg_toplevel_decoration_v1"/>
++ <arg name="toplevel" type="object" interface="xdg_toplevel"/>
++ </request>
++ </interface>
++
++ <interface name="zxdg_toplevel_decoration_v1" version="1">
++ <description summary="decoration object for a toplevel surface">
++ The decoration object allows the compositor to toggle server-side window
++ decorations for a toplevel surface. The client can request to switch to
++ another mode.
++
++ The xdg_toplevel_decoration object must be destroyed before its
++ xdg_toplevel.
++ </description>
++
++ <enum name="error">
++ <entry name="unconfigured_buffer" value="0"
++ summary="xdg_toplevel has a buffer attached before configure"/>
++ <entry name="already_constructed" value="1"
++ summary="xdg_toplevel already has a decoration object"/>
++ <entry name="orphaned" value="2"
++ summary="xdg_toplevel destroyed before the decoration object"/>
++ </enum>
++
++ <request name="destroy" type="destructor">
++ <description summary="destroy the decoration object">
++ Switch back to a mode without any server-side decorations at the next
++ commit.
++ </description>
++ </request>
++
++ <enum name="mode">
++ <description summary="window decoration modes">
++ These values describe window decoration modes.
++ </description>
++ <entry name="client_side" value="1"
++ summary="no server-side window decoration"/>
++ <entry name="server_side" value="2"
++ summary="server-side window decoration"/>
++ </enum>
++
++ <request name="set_mode">
++ <description summary="set the decoration mode">
++ Set the toplevel surface decoration mode. This informs the compositor
++ that the client prefers the provided decoration mode.
++
++ After requesting a decoration mode, the compositor will respond by
++ emitting an xdg_surface.configure event. The client should then update
++ its content, drawing it without decorations if the received mode is
++ server-side decorations. The client must also acknowledge the configure
++ when committing the new content (see xdg_surface.ack_configure).
++
++ The compositor can decide not to use the client's mode and enforce a
++ different mode instead.
++
++ Clients whose decoration mode depend on the xdg_toplevel state may send
++ a set_mode request in response to an xdg_surface.configure event and wait
++ for the next xdg_surface.configure event to prevent unwanted state.
++ Such clients are responsible for preventing configure loops and must
++ make sure not to send multiple successive set_mode requests with the
++ same decoration mode.
++ </description>
++ <arg name="mode" type="uint" enum="mode" summary="the decoration mode"/>
++ </request>
++
++ <request name="unset_mode">
++ <description summary="unset the decoration mode">
++ Unset the toplevel surface decoration mode. This informs the compositor
++ that the client doesn't prefer a particular decoration mode.
++
++ This request has the same semantics as set_mode.
++ </description>
++ </request>
++
++ <event name="configure">
++ <description summary="suggest a surface change">
++ The configure event asks the client to change its decoration mode. The
++ configured state should not be applied immediately. Clients must send an
++ ack_configure in response to this event. See xdg_surface.configure and
++ xdg_surface.ack_configure for details.
++
++ A configure event can be sent at any time. The specified mode must be
++ obeyed by the client.
++ </description>
++ <arg name="mode" type="uint" enum="mode" summary="the decoration mode"/>
++ </event>
++ </interface>
++</protocol>
+diff --git a/src/platforms/mirserver/wayland/kwinserverdecoration.cpp b/src/platforms/mirserver/wayland/kwinserverdecoration.cpp
+new file mode 100644
+index 00000000..8ecb9988
+--- /dev/null
++++ b/src/platforms/mirserver/wayland/kwinserverdecoration.cpp
+@@ -0,0 +1,109 @@
++/*
++ * Copyright (C) 2020 UBports Foundation
++ *
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU Lesser General Public License version 3, as published by
++ * the Free Software Foundation.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranties of MERCHANTABILITY,
++ * SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ * Lesser General Public License for more details.
++ *
++ * You should have received a copy of the GNU Lesser General Public License
++ * along with this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++#include "kwinserverdecoration.h"
++#include "services.h"
++
++#include <wayland-generated/server-decoration_wrapper.h>
++
++#include <QDebug>
++
++using namespace mir::wayland;
++using namespace miral;
++
++namespace
++{
++
++class QtKwinServerDecoration : public KwinServerDecoration
++{
++public:
++ using KwinServerDecoration::KwinServerDecoration;
++
++ QtKwinServerDecoration(struct wl_resource* resource, struct wl_resource* surface, qtmir::WindowModelNotifier &windowModel) :
++ KwinServerDecoration(resource, Version<1>{}),
++ m_windowModel(windowModel),
++ surface(surface)
++ {
++ send_mode_event(Mode::Server);
++ };
++
++ void request_mode(uint32_t mode) override {
++ qDebug() << "set KDE mode: " << mode;
++ auto win = miral::window_for(resource);
++
++ Q_EMIT m_windowModel.windowDecorationChanged(win, mode == Mode::Server);
++ send_mode_event(mode);
++ };
++private:
++ qtmir::WindowModelNotifier &m_windowModel;
++ struct wl_resource* surface;
++};
++
++class QtKwinServerDecorationManager : public KwinServerDecorationManager
++{
++public:
++ using KwinServerDecorationManager::KwinServerDecorationManager;
++
++ QtKwinServerDecorationManager(struct wl_resource*, qtmir::WindowModelNotifier &windowModel);
++
++ void create(struct wl_resource* id, struct wl_resource* surface) override {
++ new QtKwinServerDecoration{id, surface, m_windowModel};
++ };
++private:
++ qtmir::WindowModelNotifier &m_windowModel;
++};
++
++
++
++QtKwinServerDecorationManager::QtKwinServerDecorationManager(
++ struct wl_resource* resource, qtmir::WindowModelNotifier &windowModel) :
++ KwinServerDecorationManager{resource, Version<1>{}},
++ m_windowModel(windowModel)
++{
++ send_default_mode_event(Mode::Server);
++}
++
++class MyGlobal : public KwinServerDecorationManager::Global
++{
++public:
++ explicit MyGlobal(wl_display* display, qtmir::WindowModelNotifier &windowModel);
++
++ void bind(wl_resource* new_xdgdecormanager) override;
++
++private:
++ qtmir::WindowModelNotifier &m_windowModel;
++};
++
++}
++
++MyGlobal::MyGlobal(wl_display* display, qtmir::WindowModelNotifier &windowModel) :
++ Global(display, Version<1>{}), m_windowModel(windowModel)
++{
++}
++
++void MyGlobal::bind(wl_resource* new_kdedecormanager)
++{
++ new QtKwinServerDecorationManager{new_kdedecormanager, m_windowModel};
++}
++
++auto qtmir::qtKwinServerDecorationManagerExtension(qtmir::WindowModelNotifier &windowModel) -> WaylandExtensions::Builder {
++ return {
++ KwinServerDecorationManager::interface_name,
++ [&](WaylandExtensions::Context const* context) {
++ return std::make_shared<MyGlobal>(context->display(), windowModel);
++ }
++ };
++}
+diff --git a/src/platforms/mirserver/wayland/kwinserverdecoration.h b/src/platforms/mirserver/wayland/kwinserverdecoration.h
+new file mode 100644
+index 00000000..c7513028
+--- /dev/null
++++ b/src/platforms/mirserver/wayland/kwinserverdecoration.h
+@@ -0,0 +1,34 @@
++/*
++ * Copyright (C) 2020 UBports Foundation
++ *
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU Lesser General Public License version 3, as published by
++ * the Free Software Foundation.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranties of MERCHANTABILITY,
++ * SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ * Lesser General Public License for more details.
++ *
++ * You should have received a copy of the GNU Lesser General Public License
++ * along with this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++#pragma once
++
++// Provides the qt-windowmanager Wayland extension, which provides support for
++// URL handling. We use url-dispatcher for the purpose.
++
++#include "services.h"
++
++#include <miral/wayland_extensions.h>
++#include <miral/window.h>
++
++#include "windowmodelnotifier.h"
++
++namespace qtmir
++{
++// The casing is deliberate, given 'Windowmanager' is all one word according to
++// the Wayland spec
++auto qtKwinServerDecorationManagerExtension(qtmir::WindowModelNotifier &windowModel) -> miral::WaylandExtensions::Builder;
++}
+diff --git a/src/platforms/mirserver/wayland/xdgdecorationV1.cpp b/src/platforms/mirserver/wayland/xdgdecorationV1.cpp
+new file mode 100644
+index 00000000..33295841
+--- /dev/null
++++ b/src/platforms/mirserver/wayland/xdgdecorationV1.cpp
+@@ -0,0 +1,96 @@
++/*
++ * Copyright (C) 2020 UBports Foundation
++ *
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU Lesser General Public License version 3, as published by
++ * the Free Software Foundation.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranties of MERCHANTABILITY,
++ * SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ * Lesser General Public License for more details.
++ *
++ * You should have received a copy of the GNU Lesser General Public License
++ * along with this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++#include "xdgdecorationV1.h"
++#include "services.h"
++
++#include <wayland-generated/xdg-decoration-unstable-v1_wrapper.h>
++
++#include <QDebug>
++
++using namespace mir::wayland;
++using namespace miral;
++
++namespace
++{
++
++class QtXdgToplevelDecorationV1 : public XdgToplevelDecorationV1
++{
++public:
++ using XdgToplevelDecorationV1::XdgToplevelDecorationV1;
++
++ QtXdgToplevelDecorationV1(struct wl_resource* resource) : XdgToplevelDecorationV1(resource, Version<1>{}) {
++ send_configure_event(Mode::server_side);
++ };
++
++ void set_mode(uint32_t mode) override {
++ send_configure_event(Mode::server_side);
++ qDebug() << "set XDG mode: " << mode;
++ };
++ void unset_mode() override {
++ qDebug("unset_mode");
++ }
++};
++
++class QtXdgDecorationManagerV1 : public XdgDecorationManagerV1
++{
++public:
++ using XdgDecorationManagerV1::XdgDecorationManagerV1;
++
++ QtXdgDecorationManagerV1(struct wl_resource*);
++
++ void get_toplevel_decoration(struct wl_resource* id, struct wl_resource* toplevel) override {
++ Q_UNUSED(toplevel);
++ new QtXdgToplevelDecorationV1{id};
++ };
++};
++
++
++
++QtXdgDecorationManagerV1::QtXdgDecorationManagerV1(
++ struct wl_resource* resource) :
++ XdgDecorationManagerV1{resource, Version<1>{}}
++{
++}
++
++class MyGlobal : public QtXdgDecorationManagerV1::Global
++{
++public:
++ explicit MyGlobal(wl_display* display);
++
++ void bind(wl_resource* new_xdgdecormanager) override;
++};
++
++}
++
++MyGlobal::MyGlobal(wl_display* display) :
++ Global(display, Version<1>{})
++{
++}
++
++void MyGlobal::bind(wl_resource* new_xdgdecormanager)
++{
++ new QtXdgDecorationManagerV1{new_xdgdecormanager};
++}
++
++auto qtmir::qtXdgDecorationManagerV1Extension() -> WaylandExtensions::Builder {
++ return {
++ XdgDecorationManagerV1::interface_name,
++ [](WaylandExtensions::Context const* context) {
++ return std::make_shared<MyGlobal>(context->display());
++ }
++ };
++}
+diff --git a/src/platforms/mirserver/wayland/xdgdecorationV1.h b/src/platforms/mirserver/wayland/xdgdecorationV1.h
+new file mode 100644
+index 00000000..f028b3f2
+--- /dev/null
++++ b/src/platforms/mirserver/wayland/xdgdecorationV1.h
+@@ -0,0 +1,31 @@
++/*
++ * Copyright (C) 2020 UBports Foundation
++ *
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU Lesser General Public License version 3, as published by
++ * the Free Software Foundation.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranties of MERCHANTABILITY,
++ * SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ * Lesser General Public License for more details.
++ *
++ * You should have received a copy of the GNU Lesser General Public License
++ * along with this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++#pragma once
++
++// Provides the qt-windowmanager Wayland extension, which provides support for
++// URL handling. We use url-dispatcher for the purpose.
++
++#include "services.h"
++
++#include <miral/wayland_extensions.h>
++
++namespace qtmir
++{
++// The casing is deliberate, given 'Windowmanager' is all one word according to
++// the Wayland spec
++auto qtXdgDecorationManagerV1Extension() -> miral::WaylandExtensions::Builder;
++}
+diff --git a/src/platforms/mirserver/windowmodelnotifier.cpp b/src/platforms/mirserver/windowmodelnotifier.cpp
+index e1572c8e..898b2b16 100644
+--- a/src/platforms/mirserver/windowmodelnotifier.cpp
++++ b/src/platforms/mirserver/windowmodelnotifier.cpp
+@@ -18,6 +18,7 @@
+
+ #include <QMultiHash>
+ #include <QMutex>
++#include <QDebug>
+
+ using namespace qtmir;
+
+@@ -77,12 +78,20 @@ WindowModelNotifier::WindowModelNotifier()
+ Q_EMIT observer->windowRequestedRaise();
+ });
+ }, Qt::QueuedConnection);
++
++ connect(this, &WindowModelNotifier::windowDecorationChanged, this, [](const miral::Window &window, bool ssd) {
++ WindowNotifierObserver::foreachObserverForWindow(window, [ssd](WindowNotifierObserver* observer) {
++ Q_EMIT observer->windowDecorationChanged(ssd);
++ });
++ }, Qt::QueuedConnection);
++
+ }
+
+ WindowNotifierObserver::WindowNotifierObserver(const miral::Window &window)
+ {
+ QMutexLocker locker(&mutex);
+ windowToObserverMap.insert(window, this);
++ qWarning() << "ADD WIN: " << window;
+ }
+
+ WindowNotifierObserver::~WindowNotifierObserver()
+@@ -103,6 +112,7 @@ void WindowNotifierObserver::foreachObserverForWindow(const miral::Window &windo
+ {
+ QMutexLocker locker(&mutex);
+ auto observers = windowToObserverMap.values(window);
++
+ Q_FOREACH(auto observer, observers) {
+ fn(observer);
+ }
+diff --git a/src/platforms/mirserver/wrappedwindowmanagementpolicy.cpp b/src/platforms/mirserver/wrappedwindowmanagementpolicy.cpp
+index 6a4563b2..730e0dfd 100644
+--- a/src/platforms/mirserver/wrappedwindowmanagementpolicy.cpp
++++ b/src/platforms/mirserver/wrappedwindowmanagementpolicy.cpp
+@@ -16,7 +16,15 @@
+
+ #include "wrappedwindowmanagementpolicy.h"
+
+-#include "eventdispatch.h"
++#include <miroil/eventdispatch.h>
++#include <mir/version.h>
++#if MIR_SERVER_VERSION >= MIR_VERSION_NUMBER(2, 0, 0)
++#include <miral/toolkit_event.h>
++using namespace miral::toolkit;
++#else
++#include <mir_toolkit/event.h>
++#endif
++
+ #include "initialsurfacesizes.h"
+ #include "screensmodel.h"
+ #include "surfaceobserver.h"
+@@ -28,6 +36,8 @@
+ #include "qmirserver.h"
+ #include "tracepoints.h"
+
++#include "debughelpers.h"
++
+ #include <QDebug>
+ #include <QFileInfo>
+ #include <QTimer>
+@@ -98,7 +108,7 @@ namespace qtmir
+ };
+
+ WindowManagementPolicy::WindowManagementPolicy(const miral::WindowManagerTools &tools, std::shared_ptr<qtmir::WindowManagementPolicyPrivate> dd)
+- : miral::CanonicalWindowManagerPolicy(tools)
++ : miral::MinimalWindowManager(tools)
+ , d(dd)
+ {
+ }
+@@ -109,7 +119,7 @@ namespace qtmir
+ {
+ int surfaceType = requestParameters.type().is_set() ? requestParameters.type().value() : -1;
+ pid_t appPid = miral::pid_of(appInfo.application());
+- auto parameters = CanonicalWindowManagerPolicy::place_new_window(appInfo, requestParameters);
++ auto parameters = MinimalWindowManager::place_new_window(appInfo, requestParameters);
+
+ if (surfaceType == mir_window_type_inputmethod) {
+ QFileInfo info(QStringLiteral("/proc/%1/exe").arg(appPid));
+@@ -127,7 +137,7 @@ namespace qtmir
+ if (!requestParameters.parent().is_set() || requestParameters.parent().value().lock().get() == nullptr) {
+ QSize initialSize = InitialSurfaceSizes::get(appPid);
+
+- if (initialSize.isValid() && surfaceType == mir_surface_type_normal) {
++ if (initialSize.isValid() && surfaceType == mir_window_type_normal) {
+ parameters.size() = toMirSize(initialSize);
+ hasInitialSize = true;
+ }
+@@ -187,6 +197,8 @@ namespace qtmir
+ }
+ }
+
++ parameters.server_side_decorated() = false;
++
+ parameters.userdata() = std::make_shared<ExtraWindowInfo>();
+
+ return parameters;
+@@ -194,6 +206,8 @@ namespace qtmir
+
+ void WindowManagementPolicy::handle_window_ready(miral::WindowInfo &windowInfo)
+ {
++ MinimalWindowManager::handle_window_ready(windowInfo);
++
+ Q_EMIT d->m_windowModel.windowReady(windowInfo);
+
+ auto appInfo = tools.info_for(windowInfo.window().application());
+@@ -213,7 +227,7 @@ namespace qtmir
+ }
+ }
+
+- CanonicalWindowManagerPolicy::handle_modify_window(windowInfo, modifications);
++ MinimalWindowManager::handle_modify_window(windowInfo, modifications);
+
+ int surfaceType = modificationsClient.type().is_set() ? modificationsClient.type().value() : -1;
+
+@@ -231,7 +245,7 @@ namespace qtmir
+
+ void WindowManagementPolicy::handle_raise_window(miral::WindowInfo &windowInfo)
+ {
+- CanonicalWindowManagerPolicy::handle_raise_window(windowInfo);
++ MinimalWindowManager::handle_raise_window(windowInfo);
+
+ Q_EMIT d->m_windowModel.windowRequestedRaise(windowInfo);
+ }
+@@ -245,18 +259,30 @@ namespace qtmir
+
+ bool WindowManagementPolicy::handle_keyboard_event(const MirKeyboardEvent *event)
+ {
++ // We do not want to pass this over to MinimalWindowManager as it only
++ // Adds logic around some shortcuts, we want to do this ourself.
++
+ d->m_eventFeeder->dispatchKey(event);
+- return true;
++
++ // We still want this to get passed on to the wayland/xwayland surfaces
++ return false;
+ }
+
+ bool WindowManagementPolicy::handle_touch_event(const MirTouchEvent *event)
+ {
++ MinimalWindowManager::handle_touch_event(event);
++
+ d->m_eventFeeder->dispatchTouch(event);
+ return true;
+ }
+
+ bool WindowManagementPolicy::handle_pointer_event(const MirPointerEvent *event)
+ {
++ // HACK: We dont want mir to change focus, so ignore button down
++ if (mir_pointer_event_action(event) != mir_pointer_action_button_down) {
++ MinimalWindowManager::handle_pointer_event(event);
++ }
++
+ d->m_eventFeeder->dispatchPointer(event);
+ return true;
+ }
+@@ -303,7 +329,7 @@ namespace qtmir
+ // update Qt model ASAP, before applying Mir policy
+ Q_EMIT d->m_windowModel.windowFocusChanged(windowInfo, true);
+
+- CanonicalWindowManagerPolicy::advise_focus_gained(windowInfo);
++ MinimalWindowManager::advise_focus_gained(windowInfo);
+ }
+
+ void WindowManagementPolicy::advise_state_change(const miral::WindowInfo &windowInfo, MirWindowState state)
+@@ -345,7 +371,7 @@ namespace qtmir
+ void WindowManagementPolicy::advise_adding_to_workspace(std::shared_ptr<miral::Workspace> const& workspace,
+ std::vector<miral::Window> const& windows)
+ {
+- miral::CanonicalWindowManagerPolicy::advise_adding_to_workspace(workspace, windows);
++ miral::MinimalWindowManager::advise_adding_to_workspace(workspace, windows);
+
+ Q_EMIT d->m_windowModel.windowsAddedToWorkspace(workspace, windows);
+ }
+@@ -353,7 +379,7 @@ namespace qtmir
+ void WindowManagementPolicy::advise_removing_from_workspace(std::shared_ptr<miral::Workspace> const& workspace,
+ std::vector<miral::Window> const& windows)
+ {
+- miral::CanonicalWindowManagerPolicy::advise_removing_from_workspace(workspace, windows);
++ miral::MinimalWindowManager::advise_removing_from_workspace(workspace, windows);
+
+ Q_EMIT d->m_windowModel.windowsAboutToBeRemovedFromWorkspace(workspace, windows);
+ }
+@@ -386,7 +412,7 @@ namespace qtmir
+ Rectangle WindowManagementPolicy::confirm_inherited_move(miral::WindowInfo const& windowInfo, Displacement movement)
+ {
+ if (d->m_confinementRegions.isEmpty()) {
+- return CanonicalWindowManagerPolicy::confirm_inherited_move(windowInfo, movement);
++ return MinimalWindowManager::confirm_inherited_move(windowInfo, movement);
+ }
+
+ auto window = windowInfo.window();
+@@ -430,21 +456,21 @@ namespace qtmir
+ return toMirRectangle(geom.marginsRemoved(windowMargins));
+ }
+
+- void WindowManagementPolicy::handle_request_drag_and_drop(miral::WindowInfo &/*window_info*/)
++ void WindowManagementPolicy::handle_request_drag_and_drop(miral::WindowInfo &window_info)
+ {
+-
++ MinimalWindowManager::handle_request_drag_and_drop(window_info);
+ }
+
+- void WindowManagementPolicy::handle_request_move(miral::WindowInfo &/*window_info*/,
+- const MirInputEvent */*input_event*/)
++ void WindowManagementPolicy::handle_request_move(miral::WindowInfo &window_info,
++ const MirInputEvent *input_event)
+ {
+-
++ MinimalWindowManager::handle_request_move(window_info, input_event);
+ }
+
+- void WindowManagementPolicy::handle_request_resize(miral::WindowInfo &/*window_info*/,
+- const MirInputEvent */*input_event*/, MirResizeEdge /*edge*/)
++ void WindowManagementPolicy::handle_request_resize(miral::WindowInfo &window_info,
++ const MirInputEvent *input_event, MirResizeEdge edge)
+ {
+-
++ MinimalWindowManager::handle_request_resize(window_info, input_event, edge);
+ }
+ }
+
+@@ -465,6 +491,7 @@ WrappedWindowManagementPolicy::WrappedWindowManagementPolicy(const miral::Window
+ qRegisterMetaType<qtmir::NewWindow>();
+ qRegisterMetaType<std::vector<miral::Window>>();
+ qRegisterMetaType<miral::ApplicationInfo>();
++ qRegisterMetaType<miral::Window>();
+ windowController.setPolicy(this);
+ workspaceController.setPolicy(this);
+ }
+@@ -592,7 +619,7 @@ void WrappedWindowManagementPolicy::deliver_keyboard_event(const MirKeyboardEven
+ });
+ }
+
+- qtmir::dispatchInputEvent(window, mir_keyboard_event_input_event(event));
++ miroil::dispatch_input_event(window, mir_keyboard_event_input_event(event));
+ }
+
+ void WrappedWindowManagementPolicy::deliver_touch_event(const MirTouchEvent *event, const miral::Window &window)
+@@ -603,7 +630,7 @@ void WrappedWindowManagementPolicy::deliver_touch_event(const MirTouchEvent *eve
+ }
+ });
+
+- qtmir::dispatchInputEvent(window, mir_touch_event_input_event(event));
++ miroil::dispatch_input_event(window, mir_touch_event_input_event(event));
+ }
+
+ void WrappedWindowManagementPolicy::deliver_pointer_event(const MirPointerEvent *event, const miral::Window &window)
+@@ -617,7 +644,7 @@ void WrappedWindowManagementPolicy::deliver_pointer_event(const MirPointerEvent
+ });
+ }
+
+- qtmir::dispatchInputEvent(window, mir_pointer_event_input_event(event));
++ miroil::dispatch_input_event(window, mir_pointer_event_input_event(event));
+ }
+
+ void WrappedWindowManagementPolicy::advise_adding_to_workspace(const std::shared_ptr<miral::Workspace> &workspace,
+@@ -749,7 +776,7 @@ void WrappedWindowManagementPolicy::ask_client_to_close(const miral::Window &win
+ void WrappedWindowManagementPolicy::forceClose(const miral::Window &window)
+ {
+ tools.invoke_under_lock([&window, this]() {
+- tools.force_close(window);
++ tools.ask_client_to_close(window);
+ });
+ }
+
+diff --git a/tests/framework/CMakeLists.txt b/tests/framework/CMakeLists.txt
+index 33644ef9..3c5d407e 100644
+--- a/tests/framework/CMakeLists.txt
++++ b/tests/framework/CMakeLists.txt
+@@ -1,6 +1,7 @@
+ include_directories(
+ ${CMAKE_SOURCE_DIR}/src/common
+ ${CMAKE_SOURCE_DIR}/src/platforms/mirserver
++ ${CMAKE_SOURCE_DIR}/src/platforms/mirserver/miroil/include
+ ${CMAKE_SOURCE_DIR}/src/modules
+ )
+
+@@ -8,6 +9,7 @@ include_directories(
+ SYSTEM
+ ${APPLICATION_API_INCLUDE_DIRS}
+ ${MIRAL_INCLUDE_DIRS}
++ ${MIROIL_INCLUDE_DIRS}
+ ${MIRSERVER_INCLUDE_DIRS}
+ ${MIRRENDERERGLDEV_INCLUDE_DIRS}
+ ${MIRTEST_INCLUDE_DIRS}
+diff --git a/tests/framework/mock_task_controller.cpp b/tests/framework/mock_task_controller.cpp
+index e39606e5..3d5b226a 100644
+--- a/tests/framework/mock_task_controller.cpp
++++ b/tests/framework/mock_task_controller.cpp
+@@ -20,7 +20,7 @@
+ namespace qtmir
+ {
+
+-MockTaskController::MockTaskController(std::shared_ptr<qtmir::PromptSessionManager> promptSessionManager, QObject *parent)
++MockTaskController::MockTaskController(std::shared_ptr<miroil::PromptSessionManager> promptSessionManager, QObject *parent)
+ : TaskController(promptSessionManager, parent)
+ {
+ using namespace ::testing;
+diff --git a/tests/framework/mock_task_controller.h b/tests/framework/mock_task_controller.h
+index 1be47fb6..4ee983a9 100644
+--- a/tests/framework/mock_task_controller.h
++++ b/tests/framework/mock_task_controller.h
+@@ -28,7 +28,7 @@ namespace qtmir
+ {
+ struct MockTaskController : public qtmir::TaskController
+ {
+- MockTaskController(std::shared_ptr<qtmir::PromptSessionManager> promptSessionManager, QObject *parent = nullptr);
++ MockTaskController(std::shared_ptr<miroil::PromptSessionManager> promptSessionManager, QObject *parent = nullptr);
+ virtual ~MockTaskController();
+
+ MOCK_METHOD2(appIdHasProcessId, bool(const QString&, pid_t));
+diff --git a/tests/framework/qtmir_test.h b/tests/framework/qtmir_test.h
+index 211561a1..bf1d3c55 100644
+--- a/tests/framework/qtmir_test.h
++++ b/tests/framework/qtmir_test.h
+@@ -28,7 +28,7 @@
+ #include <QtMir/Application/session_interface.h>
+ #include <QtMir/Application/sharedwakelock.h>
+ #include <QtMir/Application/proc_info.h>
+-#include "promptsessionmanager.h"
++#include <miroil/prompt_session_manager.h>
+
+ #include "mock_proc_info.h"
+ #include "mock_mir_session.h"
+@@ -70,7 +70,7 @@ public:
+ testing::NiceMock<MockSharedWakelock> sharedWakelock;
+ testing::NiceMock<MockSettings> settings;
+ std::shared_ptr<StubPromptSessionManager> stubPromptSessionManager{std::make_shared<StubPromptSessionManager>()};
+- std::shared_ptr<qtmir::PromptSessionManager> promptSessionManager{std::make_shared<qtmir::PromptSessionManager>(stubPromptSessionManager)};
++ std::shared_ptr<miroil::PromptSessionManager> promptSessionManager{std::make_shared<miroil::PromptSessionManager>(stubPromptSessionManager)};
+ std::shared_ptr<StubPersistentSurfaceStore> persistentSurfaceStore;
+
+ QSharedPointer<qtmir::TaskController> taskControllerSharedPointer{new testing::NiceMock<qtmir::MockTaskController>(promptSessionManager)};
+diff --git a/tests/mirserver/CMakeLists.txt b/tests/mirserver/CMakeLists.txt
+index a6959951..a608be89 100644
+--- a/tests/mirserver/CMakeLists.txt
++++ b/tests/mirserver/CMakeLists.txt
+@@ -1,5 +1,6 @@
+ add_subdirectory(EventBuilder)
+ add_subdirectory(QtEventFeeder)
++add_subdirectory(URLBuilderDispatcher)
+ add_subdirectory(Screen)
+ add_subdirectory(ScreensModel)
+ add_subdirectory(miral)
+diff --git a/tests/mirserver/EventBuilder/CMakeLists.txt b/tests/mirserver/EventBuilder/CMakeLists.txt
+index a0c9b66e..1cbe77fc 100644
+--- a/tests/mirserver/EventBuilder/CMakeLists.txt
++++ b/tests/mirserver/EventBuilder/CMakeLists.txt
+@@ -6,11 +6,13 @@ set(
+ include_directories(
+ ${CMAKE_SOURCE_DIR}/src/platforms/mirserver
+ ${CMAKE_SOURCE_DIR}/src/common
++ ${CMAKE_SOURCE_DIR}/src/platforms/mirserver/miroil/include
+ )
+
+ include_directories(
+ SYSTEM
+ ${MIRSERVER_INCLUDE_DIRS}
++ ${MIRAL_INCLUDE_DIRS}
+ )
+
+ add_executable(EventBuilderTest ${EVENT_BUILDER_TEST_SOURCES})
+@@ -20,6 +22,7 @@ target_link_libraries(
+ qtmirserver
+ ${GTEST_BOTH_LIBRARIES}
+ ${GMOCK_LIBRARIES}
++ ${MIROIL_LIBRARIES}
+ )
+
+ add_test(EventBuilder, EventBuilderTest)
+diff --git a/tests/mirserver/ScreensModel/CMakeLists.txt b/tests/mirserver/ScreensModel/CMakeLists.txt
+index a5ddfc32..bf3a69e5 100644
+--- a/tests/mirserver/ScreensModel/CMakeLists.txt
++++ b/tests/mirserver/ScreensModel/CMakeLists.txt
+@@ -11,12 +11,14 @@ include_directories(
+ ${CMAKE_SOURCE_DIR}/include
+ ${CMAKE_SOURCE_DIR}/tests/framework
+ ${CMAKE_SOURCE_DIR}/src/platforms/mirserver
++ ${CMAKE_SOURCE_DIR}/src/platforms/mirserver/miroil/include
+ ${CMAKE_SOURCE_DIR}/src/common
+ )
+
+ include_directories(
+ SYSTEM
+ ${Qt5Gui_PRIVATE_INCLUDE_DIRS}
++ ${MIROIL_INCLUDE_DIRS}
+ ${MIRSERVER_INCLUDE_DIRS}
+ ${MIRRENDERERGLDEV_INCLUDE_DIRS}
+ ${MIRTEST_INCLUDE_DIRS}
+diff --git a/tests/mirserver/ScreensModel/stub_display.h b/tests/mirserver/ScreensModel/stub_display.h
+index 4914ac55..664d9a08 100644
+--- a/tests/mirserver/ScreensModel/stub_display.h
++++ b/tests/mirserver/ScreensModel/stub_display.h
+@@ -22,7 +22,7 @@
+ namespace mg = mir::graphics; // Bug lp:1614983
+ #include <mir/test/doubles/mock_display_configuration.h>
+
+-#include <mir/compositor/display_listener.h>
++#include <miroil/display_listener_wrapper.h>
+
+ namespace geom = mir::geometry;
+
+@@ -96,8 +96,11 @@ private:
+ std::vector<MockGLDisplayBuffer*> m_displayBuffers;
+ };
+
+-class StubDisplayListener : public mir::compositor::DisplayListener
++class StubDisplayListener : public miroil::DisplayListenerWrapper
+ {
++public:
++ StubDisplayListener(): DisplayListenerWrapper(nullptr) {};
++
+ void add_display(mir::geometry::Rectangle const& /*area*/) override {};
+
+ void remove_display(mir::geometry::Rectangle const& /*area*/) override {};
+diff --git a/tests/mirserver/ScreensModel/testable_screensmodel.h b/tests/mirserver/ScreensModel/testable_screensmodel.h
+index 6829dcd4..25e269cb 100644
+--- a/tests/mirserver/ScreensModel/testable_screensmodel.h
++++ b/tests/mirserver/ScreensModel/testable_screensmodel.h
+@@ -29,7 +29,7 @@ public:
+
+ void do_init(const std::shared_ptr<mir::graphics::Display> &display,
+ const std::shared_ptr<QtCompositor> &compositor,
+- const std::shared_ptr<mir::compositor::DisplayListener> &displayListener)
++ const std::shared_ptr<miroil::DisplayListenerWrapper> & displayListener)
+ {
+ init(display, compositor, displayListener);
+ }
+diff --git a/tests/mirserver/URLBuilderDispatcher/CMakeLists.txt b/tests/mirserver/URLBuilderDispatcher/CMakeLists.txt
+new file mode 100644
+index 00000000..93dca62f
+--- /dev/null
++++ b/tests/mirserver/URLBuilderDispatcher/CMakeLists.txt
+@@ -0,0 +1,30 @@
++set(
++ URLBUILDERDISPATCHER_TEST_RESOURCES
++ urlbuilderdispatcher_test.cpp
++)
++
++include_directories(
++ ${CMAKE_SOURCE_DIR}/tests/framework
++ ${CMAKE_SOURCE_DIR}/src/platforms/mirserver
++ ${CMAKE_SOURCE_DIR}/src/common
++)
++
++include_directories(
++ SYSTEM
++ ${QT5PLATFORM_SUPPORT_INCLUDE_DIRS}
++ ${Qt5Gui_PRIVATE_INCLUDE_DIRS}
++ ${MIRSERVER_INCLUDE_DIRS}
++)
++
++add_executable(URLBuilderDispatcherTest ${URLBUILDERDISPATCHER_TEST_RESOURCES})
++
++target_link_libraries(
++ URLBuilderDispatcherTest
++ qtmirserver
++
++ ${QT5PLATFORMSUPPORT_LIBS}
++ ${GTEST_BOTH_LIBRARIES}
++ ${GMOCK_LIBRARIES}
++)
++
++add_test(URLBuilderDispatcher, URLBuilderDispatcherTest)
+diff --git a/src/platforms/mirserver/mircursorimages.h b/tests/mirserver/URLBuilderDispatcher/mock_services.h
+similarity index 62%
+rename from src/platforms/mirserver/mircursorimages.h
+rename to tests/mirserver/URLBuilderDispatcher/mock_services.h
+index 295b1e27..a04191b0 100644
+--- a/src/platforms/mirserver/mircursorimages.h
++++ b/tests/mirserver/URLBuilderDispatcher/mock_services.h
+@@ -1,5 +1,5 @@
+ /*
+- * Copyright (C) 2015 Canonical, Ltd.
++ * Copyright (C) 2020 UBports Foundation
+ *
+ * This program is free software: you can redistribute it and/or modify it under
+ * the terms of the GNU Lesser General Public License version 3, as published by
+@@ -14,20 +14,19 @@
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+-#ifndef QTMIR_MIRCURSORIMAGES_H_
+-#define QTMIR_MIRCURSORIMAGES_H_
++#pragma once
+
+-#include <mir/input/cursor_images.h>
++#include "gmock/gmock.h"
+
+-namespace qtmir {
++#include <qpa/qplatformservices.h>
++#include <QUrl>
+
+-class MirCursorImages : public mir::input::CursorImages
+-{
++class MockServices: public QPlatformServices {
+ public:
+- std::shared_ptr<mir::graphics::CursorImage> image(const std::string &cursor_name,
+- const mir::geometry::Size &size) override;
+-};
++ ~MockServices() {};
+
+-}
++ MOCK_METHOD1(openUrl, bool(const QUrl &url));
++ MOCK_METHOD1(openDocument, bool(const QUrl &url));
+
+-#endif // QTMIR_MIRCURSORIMAGES_H_
++ inline QByteArray desktopEnvironment() const override { return "MockQtMirServices"; }
++};
+diff --git a/tests/mirserver/URLBuilderDispatcher/urlbuilderdispatcher_test.cpp b/tests/mirserver/URLBuilderDispatcher/urlbuilderdispatcher_test.cpp
+new file mode 100644
+index 00000000..9b7db72e
+--- /dev/null
++++ b/tests/mirserver/URLBuilderDispatcher/urlbuilderdispatcher_test.cpp
+@@ -0,0 +1,115 @@
++/*
++ * Copyright (C) 2020 UBports Foundation
++ *
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU Lesser General Public License version 3, as published by
++ * the Free Software Foundation.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranties of MERCHANTABILITY,
++ * SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ * Lesser General Public License for more details.
++ *
++ * You should have received a copy of the GNU Lesser General Public License
++ * along with this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++#include <gmock/gmock.h>
++#include <gtest/gtest.h>
++
++#include "urlbuilderdispatcher.h"
++#include "mock_services.h"
++
++#include <QUrl>
++
++using namespace ::testing;
++
++class URLBuilderDispatcherTest : public ::testing::Test
++{
++};
++
++TEST_F(URLBuilderDispatcherTest, SinglePartURL)
++{
++ auto services = std::make_shared<MockServices>();
++ auto urlbuilder = qtmir::URLBuilderDispatcher{services};
++
++ EXPECT_CALL(*services, openUrl(QUrl("url://url"))).Times(1);
++ urlbuilder.urlInput(0, "url://url");
++}
++
++// Ensure that multiple single-part URLs are dispatched
++TEST_F(URLBuilderDispatcherTest, MultiSinglePart)
++{
++ auto services = std::make_shared<MockServices>();
++ auto urlbuilder = qtmir::URLBuilderDispatcher{services};
++
++ EXPECT_CALL(*services, openUrl(QUrl("url://url"))).Times(1);
++ urlbuilder.urlInput(0, "url://url");
++
++ EXPECT_CALL(*services, openUrl(QUrl("url://my-new-neat-url"))).Times(1);
++ urlbuilder.urlInput(0, "url://my-new-neat-url");
++}
++
++// Ensure that a single multi-part URL is dispatched
++TEST_F(URLBuilderDispatcherTest, MultiPartURL)
++{
++ auto services = std::make_shared<MockServices>();
++ auto urlbuilder = qtmir::URLBuilderDispatcher{services};
++
++ EXPECT_CALL(*services, openUrl(QUrl("url://url-that-continues"))).Times(1);
++ urlbuilder.urlInput(2, "url://url");
++ urlbuilder.urlInput(1, "-that");
++ urlbuilder.urlInput(0, "-continues");
++}
++
++// Ensure that a single URL with percent encoding is dispatched
++TEST_F(URLBuilderDispatcherTest, PercentEncoding)
++{
++ auto services = std::make_shared<MockServices>();
++ auto urlbuilder = qtmir::URLBuilderDispatcher{services};
++
++ EXPECT_CALL(*services, openUrl(QUrl("url://url%20-that-%26going"))).Times(1);
++ urlbuilder.urlInput(2, "url://url%20");
++ urlbuilder.urlInput(1, "-that");
++ urlbuilder.urlInput(0, "%26going");
++}
++
++// Ensure that multiple multi-part URLs are dispatched
++TEST_F(URLBuilderDispatcherTest, MultiMultiPart)
++{
++ auto services = std::make_shared<MockServices>();
++ auto urlbuilder = qtmir::URLBuilderDispatcher{services};
++
++ EXPECT_CALL(*services, openUrl(QUrl("url://url-that-continues"))).Times(1);
++ urlbuilder.urlInput(2, "url://url");
++ urlbuilder.urlInput(1, "-that");
++ urlbuilder.urlInput(0, "-continues");
++
++ EXPECT_CALL(*services, openUrl(QUrl("url://this-is-a-url"))).Times(1);
++ urlbuilder.urlInput(2, "url://this-is");
++ urlbuilder.urlInput(1, "-a");
++ urlbuilder.urlInput(0, "-url");
++}
++
++// Ensure that multiple single or multi-part URLs are dispatched
++TEST_F(URLBuilderDispatcherTest, ManyURLs)
++{
++ auto services = std::make_shared<MockServices>();
++ auto urlbuilder = qtmir::URLBuilderDispatcher{services};
++
++ EXPECT_CALL(*services, openUrl(QUrl("url://url-that-continues"))).Times(1);
++ urlbuilder.urlInput(2, "url://url");
++ urlbuilder.urlInput(1, "-that");
++ urlbuilder.urlInput(0, "-continues");
++
++ EXPECT_CALL(*services, openUrl(QUrl("url://url"))).Times(1);
++ urlbuilder.urlInput(0, "url://url");
++
++ EXPECT_CALL(*services, openUrl(QUrl("url://this-is-a-url"))).Times(1);
++ urlbuilder.urlInput(2, "url://this-is");
++ urlbuilder.urlInput(1, "-a");
++ urlbuilder.urlInput(0, "-url");
++
++ EXPECT_CALL(*services, openUrl(QUrl("url://my-new-neat-url"))).Times(1);
++ urlbuilder.urlInput(0, "url://my-new-neat-url");
++}
+diff --git a/tests/mirserver/miral/CMakeLists.txt b/tests/mirserver/miral/CMakeLists.txt
+index 90ce08e8..202e9d9e 100644
+--- a/tests/mirserver/miral/CMakeLists.txt
++++ b/tests/mirserver/miral/CMakeLists.txt
+@@ -4,7 +4,8 @@ set(
+ )
+
+ include_directories(
+- ${CMAKE_SOURCE_DIR}/include
++ ${CMAKE_SOURCE_DIR}/include
++ ${MIROIL_INCLUDE_DIRS}
+ )
+
+ add_executable(MirALTests ${MIRAL_TEST_SOURCES})
+@@ -13,6 +14,7 @@ target_link_libraries(MirALTests
+ qtmirserver
+ ${GTEST_BOTH_LIBRARIES}
+ ${GMOCK_LIBRARIES}
++ ${MIROIL_LDFLAGS}
+ )
+
+ add_test(MirAL, MirALTests)
+diff --git a/tests/mirserver/miral/edid_test.cpp b/tests/mirserver/miral/edid_test.cpp
+index 03f83d21..c303a1ac 100644
+--- a/tests/mirserver/miral/edid_test.cpp
++++ b/tests/mirserver/miral/edid_test.cpp
+@@ -18,9 +18,7 @@
+ #include <gtest/gtest.h>
+ #include <numeric>
+
+-#include "qtmir/miral/edid.h"
+-
+-using namespace miral;
++#include <miroil/edid.h>
+
+ using TestDataParamType =
+ std::tuple<std::vector<uint8_t>, std::string, std::string, uint16_t, uint32_t>;
+@@ -74,7 +72,7 @@ class EdidTest :
+
+ TEST(EdidTest, Construct)
+ {
+- Edid edid;
++ miroil::Edid edid;
+ EXPECT_EQ(edid.vendor, "");
+ EXPECT_EQ(edid.product_code, 0);
+ EXPECT_EQ(edid.serial_number, uint32_t(0));
+@@ -82,7 +80,7 @@ TEST(EdidTest, Construct)
+
+ char zero_array[13] = {0};
+ for (int i = 0; i < 4; i++) {
+- EXPECT_EQ(edid.descriptors[i].type, Edid::Descriptor::Type::undefined);
++ EXPECT_EQ(edid.descriptors[i].type, miroil::Edid::Descriptor::Type::undefined);
+
+ auto& value = edid.descriptors[i].value;
+ EXPECT_TRUE(std::equal(std::begin(value.monitor_name), std::end(value.monitor_name), std::begin(zero_array)));
+@@ -98,7 +96,7 @@ TEST_P(EdidTest, Test_InvalidChecksum)
+ std::vector<uint8_t> invalidChecksum{data};
+ invalidChecksum[8] = invalidChecksum[8]+1;
+
+- Edid edid;
++ miroil::Edid edid;
+ try {
+ edid.parse_data(invalidChecksum);
+ } catch(std::runtime_error const& err) {
+@@ -118,7 +116,7 @@ TEST_P(EdidTest, Test_InvalidHeader)
+ uint8_t checksum = std::accumulate(invalidHeader.begin(), invalidHeader.end()-1, 0);
+ invalidHeader[invalidHeader.size()-1] = (uint8_t)(~checksum+1);
+
+- Edid edid;
++ miroil::Edid edid;
+ try {
+ edid.parse_data(invalidHeader);
+ } catch(std::runtime_error const& err) {
+@@ -132,7 +130,7 @@ TEST_P(EdidTest, Test_Valid)
+ {
+ const std::vector<uint8_t>& data = std::get<0>(GetParam());
+
+- Edid edid;
++ miroil::Edid edid;
+ EXPECT_NO_THROW(edid.parse_data(data));
+ }
+
+@@ -144,7 +142,7 @@ TEST_P(EdidTest, CheckData)
+ const uint16_t product_code = std::get<3>(GetParam());
+ const uint32_t serial_number = std::get<4>(GetParam());
+
+- Edid edid;
++ miroil::Edid edid;
+ EXPECT_NO_THROW(edid.parse_data(data));
+
+ ASSERT_EQ(edid.vendor, vendor);
+@@ -154,7 +152,7 @@ TEST_P(EdidTest, CheckData)
+ if (monitor_name != "") {
+ bool found_monitor_name = false;
+ for (int i = 0; i < 4; i++) {
+- if (edid.descriptors[i].type == Edid::Descriptor::Type::monitor_name ) {
++ if (edid.descriptors[i].type == miroil::Edid::Descriptor::Type::monitor_name ) {
+ found_monitor_name = true;
+ ASSERT_EQ(std::string(&edid.descriptors[i].value.monitor_name[0]), monitor_name);
+ }
+diff --git a/tests/modules/Application/CMakeLists.txt b/tests/modules/Application/CMakeLists.txt
+index 545ca57b..27950db6 100644
+--- a/tests/modules/Application/CMakeLists.txt
++++ b/tests/modules/Application/CMakeLists.txt
+@@ -5,6 +5,7 @@ set(
+
+ include_directories(
+ ${CMAKE_SOURCE_DIR}/src/platforms/mirserver
++ ${CMAKE_SOURCE_DIR}/src/platforms/mirserver/miroil/include
+ ${CMAKE_SOURCE_DIR}/src/modules
+ ${CMAKE_SOURCE_DIR}/tests/framework
+ )
+@@ -12,6 +13,7 @@ include_directories(
+ include_directories(
+ SYSTEM
+ ${MIRAL_INCLUDE_DIRS}
++ ${MIROIL_INCLUDE_DIRS}
+ ${MIRSERVER_INCLUDE_DIRS}
+ ${Qt5Core_INCLUDE_DIRS}
+ ${Qt5Gui_INCLUDE_DIRS}
+diff --git a/tests/modules/ApplicationManager/CMakeLists.txt b/tests/modules/ApplicationManager/CMakeLists.txt
+index d028f37f..6cd39b5a 100644
+--- a/tests/modules/ApplicationManager/CMakeLists.txt
++++ b/tests/modules/ApplicationManager/CMakeLists.txt
+@@ -6,6 +6,7 @@ set(
+
+ include_directories(
+ ${CMAKE_SOURCE_DIR}/src/platforms/mirserver
++ ${CMAKE_SOURCE_DIR}/src/platforms/mirserver/miroil/include
+ ${CMAKE_SOURCE_DIR}/src/modules
+ ${CMAKE_SOURCE_DIR}/tests/framework
+ )
+@@ -14,6 +15,7 @@ include_directories(
+ SYSTEM
+ ${APPLICATION_API_INCLUDE_DIRS}
+ ${MIRAL_INCLUDE_DIRS}
++ ${MIROIL_INCLUDE_DIRS}
+ ${MIRSERVER_INCLUDE_DIRS}
+ )
+
+diff --git a/tests/modules/Session/CMakeLists.txt b/tests/modules/Session/CMakeLists.txt
+index 0c8c3236..48ee1776 100644
+--- a/tests/modules/Session/CMakeLists.txt
++++ b/tests/modules/Session/CMakeLists.txt
+@@ -7,6 +7,7 @@ set(
+
+ include_directories(
+ ${CMAKE_SOURCE_DIR}/src/platforms/mirserver
++ ${CMAKE_SOURCE_DIR}/src/platforms/mirserver/miroil/include
+ ${CMAKE_SOURCE_DIR}/src/modules
+ ${CMAKE_SOURCE_DIR}/tests/framework
+ )
+@@ -15,6 +16,7 @@ include_directories(
+ SYSTEM
+ ${APPLICATION_API_INCLUDE_DIRS}
+ ${MIRAL_INCLUDE_DIRS}
++ ${MIROIL_INCLUDE_DIRS}
+ ${MIRSERVER_INCLUDE_DIRS}
+ )
+
+diff --git a/tests/modules/Session/session_test.cpp b/tests/modules/Session/session_test.cpp
+index 3aa611b7..34611863 100644
+--- a/tests/modules/Session/session_test.cpp
++++ b/tests/modules/Session/session_test.cpp
+@@ -287,7 +287,7 @@ TEST_F(SessionTests, SessionStopsWhileSuspendingDoesntSuspend)
+ {
+ public:
+ SessionTestClass(const std::shared_ptr<mir::scene::Session>& session,
+- const std::shared_ptr<qtmir::PromptSessionManager>& promptSessionManager)
++ const std::shared_ptr<miroil::PromptSessionManager>& promptSessionManager)
+ : Session(session, promptSessionManager) {}
+
+ using Session::m_suspendTimer;
+diff --git a/tests/modules/SurfaceManager/CMakeLists.txt b/tests/modules/SurfaceManager/CMakeLists.txt
+index 2cc203dc..7f58dd12 100644
+--- a/tests/modules/SurfaceManager/CMakeLists.txt
++++ b/tests/modules/SurfaceManager/CMakeLists.txt
+@@ -7,6 +7,7 @@ set(
+ include_directories(
+ ${CMAKE_SOURCE_DIR}/src/common
+ ${CMAKE_SOURCE_DIR}/src/platforms/mirserver
++ ${CMAKE_SOURCE_DIR}/src/platforms/mirserver/miroil/include
+ ${CMAKE_SOURCE_DIR}/src/modules
+ ${CMAKE_SOURCE_DIR}/tests/framework
+ )
+@@ -14,7 +15,6 @@ include_directories(
+ include_directories(
+ SYSTEM
+ ${APPLICATION_API_INCLUDE_DIRS}
+- ${MIRAL_INCLUDE_DIRS}
+ ${MIRTEST_INCLUDE_DIRS}
+ )
+
+diff --git a/tests/modules/WindowManager/CMakeLists.txt b/tests/modules/WindowManager/CMakeLists.txt
+index 4e4c8085..655e6814 100644
+--- a/tests/modules/WindowManager/CMakeLists.txt
++++ b/tests/modules/WindowManager/CMakeLists.txt
+@@ -11,6 +11,7 @@ include_directories(
+ ${CMAKE_SOURCE_DIR}/src/common
+ ${CMAKE_SOURCE_DIR}/src/modules
+ ${CMAKE_SOURCE_DIR}/src/platforms/mirserver
++ ${CMAKE_SOURCE_DIR}/src/platforms/mirserver/miroil/include
+ ${CMAKE_SOURCE_DIR}/tests/framework
+ )
+
+@@ -18,6 +19,7 @@ include_directories(
+ SYSTEM
+ ${MIRAL_INCLUDE_DIRS}
+ ${MIRTEST_INCLUDE_DIRS}
++ ${MIROIL_INCLUDE_DIRS}
+ ${MIRSERVER_INCLUDE_DIRS}
+ ${Qt5Quick_PRIVATE_INCLUDE_DIRS}
+ )
+--
+2.43.0
+
diff --git a/testing/qtmir/0003-Require-miroil-in-out-.pc-file.patch b/testing/qtmir/0003-Require-miroil-in-out-.pc-file.patch
new file mode 100644
index 00000000000..7e8a06d6ccc
--- /dev/null
+++ b/testing/qtmir/0003-Require-miroil-in-out-.pc-file.patch
@@ -0,0 +1,24 @@
+From d91fba9fa4456c948cc53f97c6aadae5e513fb50 Mon Sep 17 00:00:00 2001
+From: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
+Date: Sun, 26 Feb 2023 22:35:32 +0100
+Subject: [PATCH 3/4] Require miroil in out .pc file
+
+---
+ src/platforms/mirserver/qtmirserver.pc.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/platforms/mirserver/qtmirserver.pc.in b/src/platforms/mirserver/qtmirserver.pc.in
+index fa2d862a..12e09b92 100644
+--- a/src/platforms/mirserver/qtmirserver.pc.in
++++ b/src/platforms/mirserver/qtmirserver.pc.in
+@@ -4,6 +4,6 @@ includedir=@INCLUDEDIR@
+ Name: qtmirserver
+ Description: QtMir server library
+ Version: @QTMIR_VERSION@
+-Requires: miral >= 1.1
++Requires: miral >= 1.1 miroil
+ Libs: -L${libdir} -lqtmirserver
+ Cflags: -I${includedir}
+--
+2.43.0
+
diff --git a/testing/qtmir/0004-Update-for-Mir-2.15-removals.patch b/testing/qtmir/0004-Update-for-Mir-2.15-removals.patch
new file mode 100644
index 00000000000..b2bda017d1f
--- /dev/null
+++ b/testing/qtmir/0004-Update-for-Mir-2.15-removals.patch
@@ -0,0 +1,97 @@
+From 719735fd721dffe278a5336cc07dc90a53725329 Mon Sep 17 00:00:00 2001
+From: Christopher James Halse Rogers <raof@ubuntu.com>
+Date: Mon, 18 Sep 2023 17:54:01 +1000
+Subject: [PATCH 4/4] Update for Mir 2.15 removals.
+
+Mir 2.15 dropped some deprecated functions:
+* `handle_request_drag_and_drop` is from mirclient's ContentHub interface; no longer used
+* `mir_keyboard_event_key_code` was renamed to the clearer `mir_keyboard_event_keysym` (it returns keysyms)
+---
+ include/qtmir/windowmanagementpolicy.h | 1 -
+ src/common/debughelpers.cpp | 2 +-
+ src/platforms/mirserver/qteventfeeder.cpp | 2 +-
+ .../mirserver/wrappedwindowmanagementpolicy.cpp | 10 ----------
+ .../mirserver/wrappedwindowmanagementpolicy.h | 1 -
+ 5 files changed, 2 insertions(+), 14 deletions(-)
+
+diff --git a/include/qtmir/windowmanagementpolicy.h b/include/qtmir/windowmanagementpolicy.h
+index c1e5519f..f8a4c7b1 100644
+--- a/include/qtmir/windowmanagementpolicy.h
++++ b/include/qtmir/windowmanagementpolicy.h
+@@ -82,7 +82,6 @@ public:
+ void advise_delete_window(const miral::WindowInfo &windowInfo) override;
+ void advise_raise(const std::vector<miral::Window> &windows) override;
+
+- void handle_request_drag_and_drop(miral::WindowInfo &window_info) override;
+ void handle_request_move(miral::WindowInfo &window_info, const MirInputEvent *input_event) override;
+ void handle_request_resize(miral::WindowInfo &window_info, const MirInputEvent *input_event, MirResizeEdge edge) override;
+
+diff --git a/src/common/debughelpers.cpp b/src/common/debughelpers.cpp
+index 362d252d..e6245411 100644
+--- a/src/common/debughelpers.cpp
++++ b/src/common/debughelpers.cpp
+@@ -315,7 +315,7 @@ QString mirKeyboardEventToString(MirKeyboardEvent const* event)
+ {
+ MirKeyboardAction keyboardAction = mir_keyboard_event_action(event);
+
+- xkb_keysym_t keyCode = mir_keyboard_event_key_code(event);
++ xkb_keysym_t keyCode = mir_keyboard_event_keysym(event);
+
+ MirInputEventModifiers modifiers = mir_keyboard_event_modifiers(event);
+
+diff --git a/src/platforms/mirserver/qteventfeeder.cpp b/src/platforms/mirserver/qteventfeeder.cpp
+index a385c0f5..441a7a64 100644
+--- a/src/platforms/mirserver/qteventfeeder.cpp
++++ b/src/platforms/mirserver/qteventfeeder.cpp
+@@ -592,7 +592,7 @@ void QtEventFeeder::dispatchKey(const MirKeyboardEvent *kev)
+ std::chrono::nanoseconds(mir_input_event_get_event_time(iev)));
+ EventBuilder::instance()->store(iev, timestamp.count());
+
+- xkb_keysym_t xk_sym = mir_keyboard_event_key_code(kev);
++ xkb_keysym_t xk_sym = mir_keyboard_event_keysym(kev);
+
+ // Key modifier and unicode index mapping.
+ auto modifiers = getQtModifiersFromMir(mir_keyboard_event_modifiers(kev));
+diff --git a/src/platforms/mirserver/wrappedwindowmanagementpolicy.cpp b/src/platforms/mirserver/wrappedwindowmanagementpolicy.cpp
+index 730e0dfd..2e4552b7 100644
+--- a/src/platforms/mirserver/wrappedwindowmanagementpolicy.cpp
++++ b/src/platforms/mirserver/wrappedwindowmanagementpolicy.cpp
+@@ -456,11 +456,6 @@ namespace qtmir
+ return toMirRectangle(geom.marginsRemoved(windowMargins));
+ }
+
+- void WindowManagementPolicy::handle_request_drag_and_drop(miral::WindowInfo &window_info)
+- {
+- MinimalWindowManager::handle_request_drag_and_drop(window_info);
+- }
+-
+ void WindowManagementPolicy::handle_request_move(miral::WindowInfo &window_info,
+ const MirInputEvent *input_event)
+ {
+@@ -794,11 +789,6 @@ void WrappedWindowManagementPolicy::set_window_margins(MirWindowType windowType,
+ // TODO: update window positions/sizes to respect new margins.
+ }
+
+-void WrappedWindowManagementPolicy::handle_request_drag_and_drop(miral::WindowInfo &window_info)
+-{
+- m_wrapper->handle_request_drag_and_drop(window_info);
+-}
+-
+ void WrappedWindowManagementPolicy::handle_request_move(miral::WindowInfo &window_info,
+ const MirInputEvent *input_event)
+ {
+diff --git a/src/platforms/mirserver/wrappedwindowmanagementpolicy.h b/src/platforms/mirserver/wrappedwindowmanagementpolicy.h
+index 52374ca1..59abbb00 100644
+--- a/src/platforms/mirserver/wrappedwindowmanagementpolicy.h
++++ b/src/platforms/mirserver/wrappedwindowmanagementpolicy.h
+@@ -77,7 +77,6 @@ public:
+ void advise_delete_window(const miral::WindowInfo &windowInfo) override;
+ void advise_raise(const std::vector<miral::Window> &windows) override;
+
+- void handle_request_drag_and_drop(miral::WindowInfo &window_info) override;
+ void handle_request_move(miral::WindowInfo &window_info, const MirInputEvent *input_event) override;
+ void handle_request_resize(miral::WindowInfo &window_info, const MirInputEvent *input_event, MirResizeEdge edge) override;
+
+--
+2.43.0
+
diff --git a/testing/qtmir/APKBUILD b/testing/qtmir/APKBUILD
new file mode 100644
index 00000000000..da2cebb4506
--- /dev/null
+++ b/testing/qtmir/APKBUILD
@@ -0,0 +1,84 @@
+# Contributor: Brandon Boese <brandonboese@protonmail.com>
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Luca Weiss <luca@z3ntu.xyz>
+pkgname=qtmir
+pkgver=0.7.2
+pkgrel=0
+pkgdesc="QPA plugin to make Qt a Mir server"
+# armhf: blocked by lots of dependencies
+# riscv64: blocked by valgrind
+arch="all !armhf !riscv64"
+url="https://gitlab.com/ubports/development/core/qtmir"
+license="LGPL-3.0-only"
+makedepends="
+ cgmanager-dev
+ cmake
+ cmake-extras
+ gsettings-qt-dev
+ gtest-dev
+ libqtdbusmock
+ libqtdbustest
+ lomiri-app-launch-dev
+ lomiri-content-hub-dev
+ lomiri-url-dispatcher-dev
+ lttng-ust-tools
+ mir-dev
+ process-cpp-dev
+ qt5-qtdeclarative-dev
+ qt5-qtsensors-dev
+ samurai
+ valgrind-dev
+ "
+checkdepends="
+ dbus
+ py3-dbusmock
+ "
+source="https://gitlab.com/ubports/development/core/qtmir/-/archive/$pkgver/qtmir-$pkgver.tar.gz
+ 0001-Wayland-hack-set-maliit-server-to-inputmethod-type-W.patch
+ 0002-Squash-of-miroil-patches.patch
+ 0003-Require-miroil-in-out-.pc-file.patch
+ 0004-Update-for-Mir-2.15-removals.patch
+ "
+subpackages="$pkgname-dev"
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=None \
+ -DWITH_MIR2=ON
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+
+ # Remove files for testing only
+ # https://gitlab.com/ubports/development/core/qtmir/-/blob/main/debian/qtmir-tests.install
+ rm "$pkgdir"/usr/bin/qtmir-demo-client
+ rm "$pkgdir"/usr/bin/qtmir-demo-shell
+ rm "$pkgdir"/usr/share/applications/qtmir-demo-client.desktop
+ rm "$pkgdir"/usr/share/applications/xwayland.qtmir.desktop
+ rm "$pkgdir"/usr/share/qtmir/benchmarks/common.py
+ rm "$pkgdir"/usr/share/qtmir/benchmarks/report_types.py
+ rm "$pkgdir"/usr/share/qtmir/benchmarks/touch_event_latency.py
+ rm "$pkgdir"/usr/share/qtmir/benchmarks/touch_event_latency.R
+ rmdir "$pkgdir"/usr/share/applications/
+ rm -r "$pkgdir"/usr/share/qtmir/qtmir-demo-client/
+ rm -r "$pkgdir"/usr/share/qtmir/qtmir-demo-shell/
+ rm -r "$pkgdir"/usr/share/qtmir/benchmarks/
+ rmdir "$pkgdir"/usr/share/qtmir/
+}
+
+sha512sums="
+17b59f4056b3dd7509201a3d575c3c018f278e9e08fdef3d38049f95b48389f87a6154d569db242e705f68d6b09916319f4d9d6ee3b3e5faea0299a9d9770d83 qtmir-0.7.2.tar.gz
+f6481e3fff1b00066d2292e8273bd1dc5759d65e8eb5dba5e1400ba4570663933a8ed5e42bbf0207a96a9733b30256c1ee70055f25d93fcb862dff72e9bc0d1d 0001-Wayland-hack-set-maliit-server-to-inputmethod-type-W.patch
+bd783233deb19bb1feda66b30c57fa565482c809f161d2065da882fd497d3f8f8678e0414a181e2386c2b633a0099e0e80d4f1057623abfff817b6619100b724 0002-Squash-of-miroil-patches.patch
+b99d9c84921e8374e6596825de9b3ed120d461b2a2627cf98bb31b306db6f49a919e5a1f40eb0ffdb4986ea463d6e90a6bd3c29c5ed4147c6c6b1bd85628501d 0003-Require-miroil-in-out-.pc-file.patch
+d828204c95458d33ffd6364c3a25a8151fc1503ed81415655a86dbc1cd4d47a2ba5b0d6d30d9f17416a82901ec250b22e09fbbd367f3c63094b2d8a83cb3518a 0004-Update-for-Mir-2.15-removals.patch
+"
diff --git a/testing/qtox/APKBUILD b/testing/qtox/APKBUILD
new file mode 100644
index 00000000000..b190d7d8225
--- /dev/null
+++ b/testing/qtox/APKBUILD
@@ -0,0 +1,51 @@
+# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=qtox
+pkgver=1.17.6
+pkgrel=6
+pkgdesc="IM client using the encrypted peer-to-peer Tox protocol"
+url="https://qtox.github.io/"
+# armhf: sonnet
+# ppc64le: fails tests
+arch="all !armhf !ppc64le"
+license="GPL-3.0-or-later"
+makedepends="
+ cmake
+ samurai
+ qt5-qtbase-dev
+ qt5-qttools-dev
+ qt5-qtsvg-dev
+ ffmpeg-dev
+ libexif-dev
+ libqrencode-dev
+ libsodium-dev
+ sqlcipher-dev
+ libvpx-dev
+ sonnet5-dev
+ toxcore-dev
+ openal-soft-dev
+ "
+source="https://github.com/qTox/qTox/archive/refs/tags/v$pkgver/qtox-$pkgver.tar.gz"
+builddir="$srcdir/qTox-$pkgver"
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=True \
+ -DCMAKE_BUILD_TYPE=MinSizeRel
+ cmake --build build
+}
+
+check() {
+ cd build
+ CTEST_OUTPUT_ON_FAILURE=TRUE ctest
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+92047769fa7c1b1be23a236072e6a8727fc956a8959c7a1f36a616d2217f558bd435cf28acdb73dc83e52cf46772c7aa4068c589bc095d327efac5495c4b3e39 qtox-1.17.6.tar.gz
+"
diff --git a/testing/qtpass/APKBUILD b/testing/qtpass/APKBUILD
index 4b7332e637e..62c446a9646 100644
--- a/testing/qtpass/APKBUILD
+++ b/testing/qtpass/APKBUILD
@@ -2,8 +2,7 @@
# Maintainer: Thomas Kienlen <kommander@laposte.net>
pkgname=qtpass
_pkgname=QtPass
-pkgver=1.4.0_rc1
-_pkgver=${pkgver/_/-}
+pkgver=1.4.0
pkgrel=0
pkgdesc="Multi-platform GUI for pass"
url="https://qtpass.org/"
@@ -11,10 +10,10 @@ arch="all"
license="GPL-3.0-or-later"
depends="gnupg pwgen"
makedepends="qt5-qttools-dev qt5-qtsvg-dev"
-source="https://github.com/IJHack/qtpass/archive/$_pkgver/qtpass-$_pkgver.tar.gz"
+source="https://github.com/IJHack/QtPass/releases/download/v$pkgver/QtPass-$pkgver.tar.gz"
subpackages="$pkgname-doc"
-builddir="$srcdir/$_pkgname-$_pkgver"
+builddir="$srcdir/$_pkgname-$pkgver"
build() {
qmake-qt5
@@ -33,5 +32,5 @@ package() {
}
sha512sums="
-e489b344621eebe07e4c4d417fd6f3ff02e005b4cb66beaa4c69a231f9438c5fa50e3b632cbd1b3c1252e33fdd87770a92c6b852e02b73e52b0f19d3f2a4b478 qtpass-1.4.0-rc1.tar.gz
+47c1284c10e0d8a3bf63c049fc29d785d1a53bef6f183bbe22efebf466371dd454a6e43c944739f487d609f3cde188701ba538e9cb8e2c7e5530f8fa6f992625 QtPass-1.4.0.tar.gz
"
diff --git a/testing/quakespasm/APKBUILD b/testing/quakespasm/APKBUILD
index 47b2b54e33b..53496f14302 100644
--- a/testing/quakespasm/APKBUILD
+++ b/testing/quakespasm/APKBUILD
@@ -1,10 +1,10 @@
# Maintainer: Jordan Christiansen <xordspar0@gmail.com>
# Contributor: Paul Bredbury <brebs@sent.com>
pkgname=quakespasm
-pkgver=0.94.3
+pkgver=0.96.1
pkgrel=0
pkgdesc="Quake 1 engine"
-url="http://quakespasm.sourceforge.net/"
+url="https://quakespasm.sourceforge.net/"
arch="all"
license="GPL-2.0-or-later"
makedepends="mesa-dev sdl2-dev libmad-dev libvorbis-dev"
@@ -22,5 +22,5 @@ package() {
}
sha512sums="
-ab592c1941e96dcf02308e3deb0ddf3aadbfa05f404042710b03ab9910b26b14f6ae63ae8e3fc49d5efe9b35286ce548644e1efa1f9a081fff66fa13328ed313 quakespasm-0.94.3.tar.gz
+4bf442b866e90ecb0deaebd97f21847d38b0931b297547a598f9c98c4882de33ac422dfdc376c1d5f03b18e0d480932632052747afa3741b35613637371a69d0 quakespasm-0.96.1.tar.gz
"
diff --git a/testing/qucs-s/APKBUILD b/testing/qucs-s/APKBUILD
new file mode 100644
index 00000000000..f56cadfc93b
--- /dev/null
+++ b/testing/qucs-s/APKBUILD
@@ -0,0 +1,43 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
+pkgname=qucs-s
+pkgver=1.1.0
+pkgrel=1
+pkgdesc="Fancy graphical user interface for a number of popular circuit simulation engines"
+url="https://github.com/ra3xdh/qucs_s"
+# ppc64le, riscv64, s390x: blocked by octave
+arch="all !ppc64le !riscv64 !s390x"
+license="GPL-2.0-only"
+options="!check" # no test suite
+depends="
+ ngspice
+ octave
+ "
+makedepends="
+ bison
+ cmake
+ flex
+ qt5-qtbase-dev
+ qt5-qtsvg-dev
+ qt5-qttools-dev
+ samurai
+ "
+subpackages="$pkgname-doc $pkgname-lang"
+source="https://github.com/ra3xdh/qucs_s/archive/$pkgver/qucs_s-$pkgver.tar.gz"
+langdir="/usr/share/qucs-s/lang"
+builddir="$srcdir/qucs_s-$pkgver"
+
+build() {
+ cmake -B builddir -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=Release
+ cmake --build builddir
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install builddir
+}
+
+sha512sums="
+bc487ff3ad0b06d694b570a02937e4a47d04148e949117148440d7b1293b669fc33b989316fad4bf703fe6bf94c034f7f4a97457a3ebfe08bcd7e9cf86e7f49b qucs_s-1.1.0.tar.gz
+"
diff --git a/testing/queercat/APKBUILD b/testing/queercat/APKBUILD
new file mode 100644
index 00000000000..73b4a4c5bb5
--- /dev/null
+++ b/testing/queercat/APKBUILD
@@ -0,0 +1,23 @@
+# Contributor: Coco Liliace <coco@liliace.dev>
+# Maintainer: Coco Liliace <coco@liliace.dev>
+pkgname=queercat
+pkgver=1.0.0
+pkgrel=0
+pkgdesc="A version of lolcat with options for some lgbtq+ flags"
+url="https://github.com/Elsa002/queercat"
+arch="all"
+license="Unlicense"
+options="!check" # no tests
+source="$pkgname-$pkgver.tar.gz::https://github.com/Elsa002/queercat/archive/v$pkgver.tar.gz"
+
+build() {
+ ${CC:-cc} main.c $CFLAGS $CPPFLAGS $LDFLAGS -o queercat
+}
+
+package() {
+ install -Dt "$pkgdir"/usr/bin queercat
+}
+
+sha512sums="
+ae44b11b386c582278a86027124329de23b573ffcb7dadfa69deb87f3b94b39ec86fa07061d31ddf3ef6c4a9ca21e7f7dc5147ae52f15aacffbd81642411bb75 queercat-1.0.0.tar.gz
+"
diff --git a/testing/quickjs/00-makefile.patch b/testing/quickjs/00-makefile.patch
deleted file mode 100644
index f4124f31d81..00000000000
--- a/testing/quickjs/00-makefile.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-Source: Chloe "SpaceToast" Kudryavtsev <toast@toast.cafe>
-Remove When: The default Makefile doesn't enforce 32 bit binaries and allows for static linking.
-
-1. Make M32 mode conditional and not dependent on cross-compilation (off by default).
-2. Fix up LIBS.
-3. Allow for static linking.
---- a//Makefile
-+++ b/Makefile
-@@ -33,6 +33,7 @@
- #CONFIG_WERROR=y
- # force 32 bit build for some utilities
- #CONFIG_M32=y
-+#CONFIG_STATIC=y
-
- ifdef CONFIG_DARWIN
- # use clang instead of gcc
-@@ -113,6 +114,9 @@
- CFLAGS_OPT=$(CFLAGS) -O2
- CFLAGS_NOLTO:=$(CFLAGS_OPT)
- LDFLAGS=-g
-+ifdef CONFIG_STATIC
-+LDFLAGS+=-static
-+endif
- ifdef CONFIG_LTO
- CFLAGS_SMALL+=-flto
- CFLAGS_OPT+=-flto
-@@ -126,11 +130,11 @@
- CFLAGS+=-fsanitize=address -fno-omit-frame-pointer
- LDFLAGS+=-fsanitize=address -fno-omit-frame-pointer
- endif
--ifdef CONFIG_WIN32
--LDEXPORT=
--else
-+ifndef CONFIG_WIN32
-+ifndef CONFIG_STATIC
- LDEXPORT=-rdynamic
- endif
-+endif
-
- PROGS=qjs$(EXE) qjsc$(EXE) run-test262
- ifneq ($(CROSS_PREFIX),)
diff --git a/testing/quickjs/APKBUILD b/testing/quickjs/APKBUILD
deleted file mode 100644
index eda6b06af44..00000000000
--- a/testing/quickjs/APKBUILD
+++ /dev/null
@@ -1,50 +0,0 @@
-# Maintainer: Chloe Kudryavtsev <toast@toast.cafe>
-pkgname=quickjs
-_pkgver=2021-03-27
-pkgver=0.${_pkgver//-}
-pkgrel=0
-pkgdesc="Small and embeddable Javascript engine"
-url="https://bellard.org/quickjs/"
-arch="all !s390x !ppc64le" # build segfaults on s390x and ppc64le, requires hardfloat
-license="MIT"
-options="!check" # disabled because bug/issue on builders
-subpackages="$pkgname-doc $pkgname-dev $pkgname-static"
-source="https://bellard.org/quickjs/quickjs-$_pkgver.tar.xz
- 00-makefile.patch
- "
-builddir="$srcdir/$pkgname-$_pkgver"
-
-build() {
- for bin in qjs qjsc ; do
- CONFIG_STATIC=y make prefix=/usr $bin
- cp $bin $bin.static
- done
- make clean
-
- make prefix=/usr
-}
-
-check() {
- make test
-}
-
-package() {
- make install prefix="$pkgdir"/usr
- for bin in qjs.static qjsc.static ; do
- install -Dm755 $bin "$pkgdir"/usr/bin/$bin
- done
- for doc in doc/*.html; do
- install -Dm644 $doc "$pkgdir"/usr/share/doc/quickjs/$doc
- done
-}
-
-static() {
- pkgdesc="$pkgdesc - static binaries"
- mkdir -p "$subpkgdir"/usr/bin
- mv "$pkgdir"/usr/bin/*.static "$subpkgdir"/usr/bin/
-}
-
-sha512sums="
-eeb810083484df213bc658a8703ca3ef094b7789c2b49eed86cb4068c9f9da401ad0300261d61a163c6ea82306f3ef50bf8e29a64920f704fd8958ef08a7286c quickjs-2021-03-27.tar.xz
-4c6b7932598d7da69316c38a7e3fd3881eb4c1b1f4a13a09fc5dd6c2c417abd90f73487652afefcaffd7e65f30d94915ed301a5091769d42162917251c58e686 00-makefile.patch
-"
diff --git a/testing/quilt/APKBUILD b/testing/quilt/APKBUILD
deleted file mode 100644
index 7d7078d61d0..00000000000
--- a/testing/quilt/APKBUILD
+++ /dev/null
@@ -1,43 +0,0 @@
-# Contributor: Breno Leitao <breno.leitao@gmail.com>
-# Maintainer:
-pkgname=quilt
-pkgver=0.66
-pkgrel=3
-pkgdesc="Quilt allows you to easily manage large numbers of patches by keeping track of the changes each patch makes"
-url="https://savannah.nongnu.org/projects/quilt"
-arch="noarch"
-license="GPL-2.0-only"
-depends="bash bzip2 diffutils gawk gettext patch"
-makedepends="lynx perl sed"
-checkdepends="ed"
-subpackages="
- $pkgname-doc
- $pkgname-lang
- $pkgname-bash-completion
- "
-source="https://download.savannah.gnu.org/releases/quilt/quilt-$pkgver.tar.gz"
-# Broken: "mv: can't rename 'patches/test.diff': Permission denied !"
-options="!check"
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --mandir=/usr/share/man \
- --sysconfdir=/etc
- make all
-}
-
-check() {
- make check
-}
-
-package() {
- make BUILD_ROOT="$pkgdir" install
-
- mkdir -p "$pkgdir"/usr/share/bash-completion
- mv "$pkgdir"/etc/bash_completion.d "$pkgdir"/usr/share/bash-completion/completions
-}
-
-sha512sums="c2cb75c0937612e1e0da25b713acf629b6b5aacbd8254d8bd17220b63c7b8ca996cd9d0315a32d67d54a4a7dc01b212cdda33afaacf3db063da757f1973306f4 quilt-0.66.tar.gz"
diff --git a/testing/quodlibet/APKBUILD b/testing/quodlibet/APKBUILD
new file mode 100644
index 00000000000..88bdad974d2
--- /dev/null
+++ b/testing/quodlibet/APKBUILD
@@ -0,0 +1,43 @@
+# Contributor: Guy Godfroy <guy.godfroy@gugod.fr>
+# Maintainer: Guy Godfroy <guy.godfroy@gugod.fr>
+pkgname=quodlibet
+pkgver=4.6.0
+pkgrel=1
+pkgdesc="Music player and music library manager"
+url="https://quodlibet.readthedocs.io"
+arch="noarch"
+license="GPL-2.0-and-later"
+depends="gtk+3.0
+ py3-gobject3
+ gobject-introspection
+ cairo-gobject
+ py3-cairo
+ py3-mutagen
+ libsoup
+ py3-feedparser
+ gstreamer
+ gst-plugins-base
+ gst-plugins-good
+ gst-plugins-ugly
+ gst-plugins-bad
+ gst-libav
+ py3-dbus"
+makedepends="py3-gpep517 py3-setuptools py3-wheel gettext py3-gettext py3-sphinx"
+subpackages="$pkgname-pyc $pkgname-doc $pkgname-lang $pkgname-bash-completion $pkgname-zsh-completion"
+source="https://github.com/quodlibet/quodlibet/releases/download/release-$pkgver/quodlibet-$pkgver.tar.gz"
+options="!check" #needs running GTK
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+d17ed0ba14aa86eaf103fdc5feaeda74575e4bd9d9e55dae07679afb50e279c82b66b7429b0435c36663a9865141c168d3ff56a25c64f9694818f722362db7e9 quodlibet-4.6.0.tar.gz
+"
diff --git a/testing/qwt/10_install_paths.patch b/testing/qwt/10_install_paths.patch
deleted file mode 100644
index 62d55a5c630..00000000000
--- a/testing/qwt/10_install_paths.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-Author: Holger Jaekel <holger.jaekel@gmx.de>
-Summary: fix installation paths
-----
-
---- a/qwtconfig.pri
-+++ b/qwtconfig.pri
-@@ -19,7 +19,7 @@
- QWT_INSTALL_PREFIX = $$[QT_INSTALL_PREFIX]
-
- unix {
-- QWT_INSTALL_PREFIX = /usr/local/qwt-$$QWT_VERSION
-+ QWT_INSTALL_PREFIX = /usr
- # QWT_INSTALL_PREFIX = /usr/local/qwt-$$QWT_VERSION-qt-$$QT_VERSION
- }
-
-@@ -28,8 +28,8 @@
- # QWT_INSTALL_PREFIX = C:/Qwt-$$QWT_VERSION-qt-$$QT_VERSION
- }
-
--QWT_INSTALL_DOCS = $${QWT_INSTALL_PREFIX}/doc
--QWT_INSTALL_HEADERS = $${QWT_INSTALL_PREFIX}/include
-+QWT_INSTALL_DOCS = $${QWT_INSTALL_PREFIX}/share/doc/qwt
-+QWT_INSTALL_HEADERS = $${QWT_INSTALL_PREFIX}/include/qwt
- QWT_INSTALL_LIBS = $${QWT_INSTALL_PREFIX}/lib
-
- ######################################################################
-@@ -42,7 +42,7 @@
- # runtime environment of designer/creator.
- ######################################################################
-
--QWT_INSTALL_PLUGINS = $${QWT_INSTALL_PREFIX}/plugins/designer
-+QWT_INSTALL_PLUGINS = $${QWT_INSTALL_PREFIX}/lib/qt/plugins/designer
-
- # linux distributors often organize the Qt installation
- # their way and QT_INSTALL_PREFIX doesn't offer a good
-@@ -63,7 +63,7 @@
- # with every Qt upgrade.
- ######################################################################
-
--QWT_INSTALL_FEATURES = $${QWT_INSTALL_PREFIX}/features
-+QWT_INSTALL_FEATURES = $${QWT_INSTALL_PREFIX}/lib/qt5/mkspecs/features
- # QWT_INSTALL_FEATURES = $$[QT_INSTALL_PREFIX]/features
-
- ######################################################################
diff --git a/testing/qwt/20_fix_rpath.patch b/testing/qwt/20_fix_rpath.patch
deleted file mode 100644
index f2bb86e2083..00000000000
--- a/testing/qwt/20_fix_rpath.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-Author: Holger Jaekel <holger.jaekel@gmx.de>
-Summary: fix rpath for designer
-----
-
---- a/designer/designer.pro
-+++ b/designer/designer.pro
-@@ -98,7 +98,6 @@
- # compile the path for finding the Qwt library
- # into the plugin. Not supported on Windows !
-
-- QMAKE_RPATHDIR *= $${QWT_INSTALL_LIBS}
- qwtAddLibrary($${QWT_OUT_ROOT}/lib, qwt)
-
- contains(QWT_CONFIG, QwtDll) {
diff --git a/testing/qwt/APKBUILD b/testing/qwt/APKBUILD
deleted file mode 100644
index 4adfdc70340..00000000000
--- a/testing/qwt/APKBUILD
+++ /dev/null
@@ -1,34 +0,0 @@
-# Contributor: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
-# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
-pkgname=qwt
-pkgver=6.2.0
-pkgrel=0
-pkgdesc="Qt Widgets for Technical Applications"
-url="https://qwt.sourceforge.io/"
-arch="all"
-license="custom" # Based on LGPL but more liberal
-makedepends="qt5-qtbase-dev qt5-qtsvg-dev qt5-qttools-dev"
-subpackages="$pkgname-dev $pkgname-doc"
-source="https://downloads.sourceforge.net/qwt/qwt-$pkgver.tar.bz2
- 10_install_paths.patch
- 20_fix_rpath.patch
- "
-options="!check" # no unit tests
-
-build() {
- qmake-qt5 qwt.pro
- make
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
-
- mv "$pkgdir/usr/share/doc/qwt/man" "$pkgdir/usr/share"
- install -Dm 644 COPYING -t "$pkgdir/usr/share/licenses/$pkgname"
-}
-
-sha512sums="
-d992f9dddb09ad0e1d09e23a24a9331c950ca19a413d2627cf423e1ddc2a4ad4eb951646f789e8c7a9ab42668c30d7108071f3f8bbd8e1f4118cadb67c34939d qwt-6.2.0.tar.bz2
-70fd01facc2f5e5fa91131f6fb2278d01cd73e0d0982837125d20e732616680d548834ee8a0a2e049437bb64f389b2bc95c8c366bcafc91f09a5181d86cd938d 10_install_paths.patch
-f0ebdc2e90c318f8c9a2aa925234b85e328611d3713939066e71494b912dde5bd99c328ef2ae0de606603da461377ea43da960c617d064c85c4488e2934eb4e5 20_fix_rpath.patch
-"
diff --git a/testing/r2ghidra/APKBUILD b/testing/r2ghidra/APKBUILD
new file mode 100644
index 00000000000..5f82d24898b
--- /dev/null
+++ b/testing/r2ghidra/APKBUILD
@@ -0,0 +1,55 @@
+# Contributor: Maxim Karasev <mxkrsv@disroot.org>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=r2ghidra
+pkgver=5.9.0
+_ghidra_native=0.4.2
+pkgrel=0
+pkgdesc="native ghidra decompiler for radare2"
+url="https://github.com/radareorg/r2ghidra"
+# this is massive, and nobody is going to use a decompiler on other
+# architectures
+arch="x86_64 aarch64 ppc64le"
+license="LGPL-3.0-only AND Apache-2.0"
+depends="radare2"
+makedepends="
+ libzip-dev
+ meson
+ openssl-dev
+ pugixml-dev
+ radare2-dev
+ "
+source="https://github.com/radareorg/r2ghidra/archive/refs/tags/$pkgver/r2ghidra-$pkgver.tar.gz
+ https://github.com/radareorg/ghidra-native/archive/refs/tags/$_ghidra_native/ghidra-native-$_ghidra_native.tar.gz
+ use-system-pugixml.patch"
+options="!check" # no tests
+
+prepare() {
+ default_prepare
+ mv "$srcdir"/ghidra-native-"$_ghidra_native" "$builddir"/ghidra-native
+ make -C "$builddir"/ghidra-native patch
+}
+
+build() {
+ abuild-meson \
+ -Db_lto=true \
+ . output
+ meson compile -C output
+
+ # not implemented for meson yet
+ cd ghidra
+ make sleigh-build
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+
+ # not implemented for meson yet
+ cd "$builddir"/ghidra
+ make D="$pkgdir"/usr/lib/radare2/$pkgver/r2ghidra_sleigh sleigh-install
+}
+
+sha512sums="
+8ce1dadb3986608f67f024e92b25b527666636edd1ed65d68620a945c77c9f23743b817673e08b26a5606485ec812686265cff1afb3fbfbb9f89a248eca37aec r2ghidra-5.9.0.tar.gz
+8e63ee8aac7bff0f115f39f796c69f9427a8c2d4f4e980cbe31ccc040817f9c40724fb7003d05d0cf6eab2233bf3947eb2c7f73dacb9a2277c87ccfbcba861d5 ghidra-native-0.4.2.tar.gz
+6616f82b119e59f083b8ef43198effb094a0592a575220b0e40d48b42b4ee5b519a0a0d9e1ed4c9c61968a624625cf0c4a874884e8af334b5006378d7bdd9390 use-system-pugixml.patch
+"
diff --git a/testing/r2ghidra/use-system-pugixml.patch b/testing/r2ghidra/use-system-pugixml.patch
new file mode 100644
index 00000000000..04b1ec15d53
--- /dev/null
+++ b/testing/r2ghidra/use-system-pugixml.patch
@@ -0,0 +1,71 @@
+From 971fdf012c6c48e43e00d91727698ace4b0c67a6 Mon Sep 17 00:00:00 2001
+From: Maxim Karasev <mxkrsv@disroot.org>
+Date: Fri, 23 Dec 2022 22:27:24 +0300
+Subject: [PATCH] Use system pugixml
+
+---
+ meson.build | 13 ++++---------
+ 1 file changed, 4 insertions(+), 9 deletions(-)
+
+diff --git a/meson.build b/meson.build
+index e35d4f7..a5788c9 100644
+--- a/meson.build
++++ b/meson.build
+@@ -7,10 +7,6 @@ version : '5.8.0',
+ default_options : ['c_std=c11', 'cpp_std=c++11']
+ )
+
+-pugixml_sources = [
+- 'third-party/pugixml/src/pugixml.cpp'
+-]
+-
+ r2ghidra_sources = [
+ 'src/ArchMap.cpp',
+ 'src/CodeXMLParse.cpp',
+@@ -28,7 +24,6 @@ r2ghidra_sources = [
+
+ incdirs = [
+ 'src',
+- 'third-party/pugixml/src/',
+ 'ghidra-native/src/decompiler/',
+ ]
+
+@@ -178,7 +173,6 @@ ghidra_decompiler_sources = [
+
+ r2ghidra_core_sources = [
+ r2ghidra_sources,
+- pugixml_sources,
+ ghidra_decompiler_sources,
+ 'src/anal_ghidra_plugin.c',
+ 'src/anal_ghidra.cpp',
+@@ -188,16 +182,17 @@ r2ghidra_core_sources = [
+
+ sleighc_sources = [
+ r2ghidra_sources,
+- pugixml_sources,
+ 'ghidra-native/src/decompiler/slgh_compile.cc',
+ 'ghidra-native/src/decompiler/slghparse.cc',
+ 'ghidra-native/src/decompiler/slghscan.cc',
+ ghidra_decompiler_sources,
+ ]
+
++pugixml = dependency('pugixml')
++
+ r2ghidra_core_plugin = library('core_r2ghidra',
+ r2ghidra_core_sources,
+- dependencies: [r_core],
++ dependencies: [r_core, pugixml],
+ override_options : ['c_std=c11', 'cpp_std=c++11'],
+ include_directories: r2ghidra_incdirs,
+ install: true,
+@@ -207,6 +202,6 @@ r2ghidra_core_plugin = library('core_r2ghidra',
+ sleighc_exe = executable('sleighc', sleighc_sources,
+ include_directories: r2ghidra_incdirs,
+ override_options : ['c_std=c11', 'cpp_std=c++11'],
+- dependencies: [r_core],
++ dependencies: [r_core, pugixml],
+ install: true
+ )
+--
+2.39.0
+
diff --git a/testing/rabbitmq-server/APKBUILD b/testing/rabbitmq-server/APKBUILD
index cd977eec267..9a004ff10b6 100644
--- a/testing/rabbitmq-server/APKBUILD
+++ b/testing/rabbitmq-server/APKBUILD
@@ -1,25 +1,34 @@
# Contributor: Nathan Johnson <nathan@nathanjohnson.info>
-# Maintainer: Nathan Johnson <nathan@nathanjohnson.info>
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=rabbitmq-server
-pkgver=3.9.16
+pkgver=3.13.1
pkgrel=0
pkgdesc="open source multi-protocol messaging broker"
url="https://www.rabbitmq.com/"
arch="noarch"
-license="MPL-1.1"
+license="MPL-2.0"
depends="erlang"
-makedepends="$depends_dev erlang-dev python3 py3-simplejson xmlto libxslt
- rsync zip gawk grep socat elixir"
+makedepends="
+ elixir
+ erlang-dev
+ gawk
+ grep
+ libxslt
+ py3-simplejson
+ python3
+ rsync
+ socat
+ xmlto
+ zip
+ "
install="$pkgname.pre-install $pkgname.post-deinstall"
pkgusers="rabbitmq"
pkggroups="rabbitmq"
-subpackages="$pkgname-doc"
-source="
+subpackages="$pkgname-doc $pkgname-openrc"
+source="https://github.com/rabbitmq/rabbitmq-server/releases/download/v$pkgver/rabbitmq-server-$pkgver.tar.xz
rabbitmq-server.initd
rabbitmq-server.logrotate
- https://github.com/rabbitmq/rabbitmq-server/releases/download/v$pkgver/rabbitmq-server-$pkgver.tar.xz
- py3.patch
-"
+ "
options="!check" # test suite broken
# secfixes:
@@ -50,45 +59,33 @@ package() {
MANDIR=/usr/share/man \
PYTHON=python3
- mkdir -p "$pkgdir"/var/lib/rabbitmq/mnesia
- mkdir -p "$pkgdir"/var/log/rabbitmq
+ install -dm755 -o rabbitmq -g rabbitmq "$pkgdir"/var/lib/rabbitmq
+ install -dm750 -o rabbitmq -g rabbitmq "$pkgdir"/var/lib/rabbitmq/mnesia
+ install -dm755 -o rabbitmq -g rabbitmq "$pkgdir"/var/log/rabbitmq
- #Copy all necessary lib files etc.
- install -p -m755 -D "$builddir"/scripts/rabbitmq-server.ocf \
+ # Copy all necessary lib files etc.
+ install -Dvpm755 scripts/rabbitmq-server.ocf \
"$pkgdir"/usr/lib/ocf/resource.d/rabbitmq/rabbitmq-server
- install -p -m644 -D "$srcdir/"$pkgname.logrotate \
+ install -Dvpm644 "$srcdir"/rabbitmq-server.logrotate \
"$pkgdir"/etc/logrotate.d/rabbitmq-server
- install -m755 -D "$srcdir"/$pkgname.initd \
- "$pkgdir"/etc/init.d/$pkgname
- mkdir -p "$pkgdir"/usr/sbin
-
- # This is lifted / adapted from the official upstream spec file.
- # I'd prefer a patch file, but this is probably a little easier
- # to manage since this is how they do it upstream. inb4eww
- sed -e 's|@SU_RABBITMQ_SH_C@|su rabbitmq -s /bin/sh -c|' \
- < "$builddir"/scripts/rabbitmq-script-wrapper \
- > "$pkgdir"/usr/sbin/rabbitmqctl
+ install -Dvm755 "$srcdir"/rabbitmq-server.initd \
+ "$pkgdir"/etc/init.d/rabbitmq-server
- chmod 0755 "$pkgdir"/usr/sbin/rabbitmqctl
- for script in rabbitmq-server rabbitmq-plugins; do
- cp -a "$pkgdir"/usr/sbin/rabbitmqctl \
- "$pkgdir"/usr/sbin/$script;
+ install -Dvm755 scripts/rabbitmq-script-wrapper \
+ "$pkgdir"/usr/sbin/rabbitmqctl
+ local script; for script in rabbitmq-server rabbitmq-plugins; do
+ ln -s rabbitmqctl "$pkgdir"/usr/sbin/$script
done
- mkdir -p "$pkgdir"/usr/share/doc/"$pkgname"
- cp -a "$builddir"/LICENSE* "$pkgdir"/usr/share/doc/"$pkgname"/
- cp -a "$builddir"/deps/rabbit/docs/* "$pkgdir"/usr/share/doc/"$pkgname"/
- cp -a "$builddir"/deps/rabbitmq_sharding/docs/* "$pkgdir"/usr/share/doc/"$pkgname"/
- chmod 755 "$pkgdir"/var/lib/rabbitmq
- chmod 750 "$pkgdir"/var/lib/rabbitmq/mnesia
- chmod 755 "$pkgdir"/var/log/rabbitmq
- chown -R $pkgusers:$pkggroups "$pkgdir"/var/lib/rabbitmq
- chown -R $pkgusers:$pkggroups "$pkgdir"/var/log/rabbitmq
+ install -Dvm644 LICENSE* -t "$pkgdir"/usr/share/licenses/$pkgname/
+ install -Dvm644 -t "$pkgdir"/usr/share/doc/$pkgname/examples/ \
+ deps/rabbit/docs/advanced.config.example \
+ deps/rabbit/docs/rabbitmq.conf.example \
+ deps/rabbit/docs/set_rabbitmq_policy.sh.example
}
sha512sums="
-a8bb02a7cae1f8720e5c7aaabfe6a2c0e731cffbe0d8f99bdcb6597daa654dc49e6d41943974601435700cf469eaa8286dc91a3255a6b9023754c3861fbb5cd9 rabbitmq-server.initd
+022c6e213cf7cea865a6931a3481897efea65dffa649dd77df9d88bb5f9b7abaaa83b525f983de4cb336b1e0469073cadc2ce48d4f47f93005c87b9fdadb3857 rabbitmq-server-3.13.1.tar.xz
+52413e264ae13a607262f17068ea9b9e65cc23e348d4baf45635473893758ee4571fe1b47989b1c0e69d82ec653e013955719465d37474d3e3e29c21808403f5 rabbitmq-server.initd
b8655cb048ab3b32001d4e6920bb5366696f3a5da75c053605e9b270e771c548e36858dca8338813d34376534515bba00af5e6dd7b4b1754a0e64a8fb756e3f3 rabbitmq-server.logrotate
-be31cf8e467cea3161d7f9618603a3f02224dd8821614249ed82a63f8b0e334313e4af8c637e789cc442af71e159a041e864bfd3be91d5598a7b5f5f3d202768 rabbitmq-server-3.9.16.tar.xz
-a2e70b1f857892ae1665eed097a8f8b758985d067393c674c43d85aa7650b1f94ddd720053954304c1220896a7812c60c1ca5f41a3357c067fb758094161b82c py3.patch
"
diff --git a/testing/rabbitmq-server/py3.patch b/testing/rabbitmq-server/py3.patch
deleted file mode 100644
index 259ab507f48..00000000000
--- a/testing/rabbitmq-server/py3.patch
+++ /dev/null
@@ -1,82 +0,0 @@
-diff --git a/deps/rabbit_common/codegen.py b/deps/rabbit_common/codegen.py
-index 8b81362..70bd7fa 100755
---- a/deps/rabbit_common/codegen.py
-+++ b/deps/rabbit_common/codegen.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
-
- ## This Source Code Form is subject to the terms of the Mozilla Public
- ## License, v. 2.0. If a copy of the MPL was not distributed with this
-diff --git a/deps/rabbitmq_auth_backend_http/examples/rabbitmq_auth_backend_django/manage.py b/deps/rabbitmq_auth_backend_http/examples/rabbitmq_auth_backend_django/manage.py
-index 1ae2e80..3e61442 100755
---- a/deps/rabbitmq_auth_backend_http/examples/rabbitmq_auth_backend_django/manage.py
-+++ b/deps/rabbitmq_auth_backend_http/examples/rabbitmq_auth_backend_django/manage.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- import os
- import sys
-
-diff --git a/deps/rabbitmq_consistent_hash_exchange/README.md b/deps/rabbitmq_consistent_hash_exchange/README.md
-index ce1623f..6ff906b 100644
---- a/deps/rabbitmq_consistent_hash_exchange/README.md
-+++ b/deps/rabbitmq_consistent_hash_exchange/README.md
-@@ -150,7 +150,7 @@ Executable versions of some of the code examples can be found under [./examples]
- This version of the example uses [Pika](https://pika.readthedocs.io/en/stable/), the most widely used Python client for RabbitMQ:
-
- ``` python
--#!/usr/bin/env python
-+#!/usr/bin/env python3
-
- import pika
- import time
-@@ -342,7 +342,7 @@ routed to the same **arbitrarily chosen** queue.
- #### Code Example in Python
-
- ``` python
--#!/usr/bin/env python
-+#!/usr/bin/env python3
-
- import pika
- import time
-@@ -544,7 +544,7 @@ routed to the same **arbitrarily chosen** queue.
- #### Code Example in Python
-
- ``` python
--#!/usr/bin/env python
-+#!/usr/bin/env python3
-
- import pika
- import time
-diff --git a/deps/rabbitmq_consistent_hash_exchange/examples/python/example1.py b/deps/rabbitmq_consistent_hash_exchange/examples/python/example1.py
-index 6cf67d6..30e43ea 100644
---- a/deps/rabbitmq_consistent_hash_exchange/examples/python/example1.py
-+++ b/deps/rabbitmq_consistent_hash_exchange/examples/python/example1.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
-
- import pika
- import time
-diff --git a/deps/rabbitmq_consistent_hash_exchange/examples/python/example2.py b/deps/rabbitmq_consistent_hash_exchange/examples/python/example2.py
-index 8c1ac15..0099b28 100644
---- a/deps/rabbitmq_consistent_hash_exchange/examples/python/example2.py
-+++ b/deps/rabbitmq_consistent_hash_exchange/examples/python/example2.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
-
- import pika
- import time
-diff --git a/deps/rabbitmq_consistent_hash_exchange/examples/python/example3.py b/deps/rabbitmq_consistent_hash_exchange/examples/python/example3.py
-index 0b74501..c11a4ce 100644
---- a/deps/rabbitmq_consistent_hash_exchange/examples/python/example3.py
-+++ b/deps/rabbitmq_consistent_hash_exchange/examples/python/example3.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
-
- import pika
- import time
-
diff --git a/testing/rabbitmq-server/rabbitmq-server.initd b/testing/rabbitmq-server/rabbitmq-server.initd
index caca99463c3..8fe0f05046a 100644
--- a/testing/rabbitmq-server/rabbitmq-server.initd
+++ b/testing/rabbitmq-server/rabbitmq-server.initd
@@ -1,42 +1,26 @@
#!/sbin/openrc-run
-pidfile=/run/rabbitmq/rabbitmq.pid
name=rabbitmq
-daemon=/usr/sbin/rabbitmq-server
+description="RabbitMQ Server"
+
+command=/usr/sbin/rabbitmq-server
+command_background=true
+command_user="rabbitmq:rabbitmq"
+pidfile=/run/rabbitmq/rabbitmq.pid
+
+export RABBITMQ_PID_FILE="$pidfile"
-startup_log=/var/log/rabbitmq/startup_log
-startup_err=/var/log/rabbitmq/startup_err
-shutdown_log=/var/log/rabbitmq/shutdown_log
-shutdown_err=/var/log/rabbitmq/shutdown_err
+output_log="/var/log/rabbitmq/${RC_SVCNAME}_log"
+error_log="/var/log/rabbitmq/${RC_SVCNAME}_err"
depend() {
need net localmount
after firewall
}
-start() {
- ebegin "Starting ${name}"
- # We need to test if /var/run/rabbitmq exists, since scirpt will fail if it does not
- checkpath -m 700 -o rabbitmq:rabbitmq -d "$(dirname "$pidfile")"
- checkpath -m 644 -o rabbitmq:rabbitmq --file-truncate -f $startup_log
- checkpath -m 644 -o rabbitmq:rabbitmq --file-truncate -f $startup_err
- start-stop-daemon --start \
- --env RABBITMQ_PID_FILE=$pidfile \
- --pidfile $pidfile \
- --stdout $startup_log \
- --stderr $startup_err \
- --background $daemon
- eend $?
+start_pre() {
+ # We need to test if /var/run/rabbitmq exists, since script will fail if it does not
+ checkpath -m 700 -o "$command_user" -d "$(dirname "$pidfile")"
+ checkpath -q -m 644 -o "$command_user" --file-truncate -f $output_log
+ checkpath -q -m 644 -o "$command_user" --file-truncate -f $error_log
}
-
-stop() {
- ebegin "Stopping ${name}"
- checkpath -m 644 -o rabbitmq:rabbitmq --file-truncate -f $shutdown_log
- checkpath -m 644 -o rabbitmq:rabbitmq --file-truncate -f $shutdown_err
- start-stop-daemon --stop --quiet --pidfile $pidfile \
- --exec /bin/sh -- -c "/usr/sbin/rabbitmqctl \
- --stop $pidfile > $shutdown_log \
- 2> $shutdown_err"
- eend $?
-}
-
diff --git a/testing/racket/APKBUILD b/testing/racket/APKBUILD
deleted file mode 100644
index 35031dd683d..00000000000
--- a/testing/racket/APKBUILD
+++ /dev/null
@@ -1,61 +0,0 @@
-# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
-#
-# TODO: Separate packages into subpackages?
-# TODO: Install even packages from the full tarball?
-# TODO: Figure out how to run tests.
-pkgname=racket
-pkgver=8.5
-pkgrel=0
-pkgdesc="A general purpose programming language in the Lisp-Scheme family"
-url="https://racket-lang.org/"
-# Racket BC does not seem to support riscv64.
-arch="all !riscv64"
-license="LGPL-3.0-or-later MIT"
-depends="ca-certificates libcrypto1.1 libssl1.1"
-makedepends="chrpath libffi-dev libucontext-dev"
-subpackages="$pkgname-dev $pkgname-doc"
-source="https://download.racket-lang.org/releases/$pkgver/installers/racket-minimal-$pkgver-src.tgz"
-builddir="$srcdir/$pkgname-$pkgver/src"
-
-# XXX: Racket CS (which is the default nowadays) uses
-# a bundled version of chez-scheme. However, without
-# our patches applied in only works on x86_64. For this
-# reason, we use Racket BC for now.
-
-prepare() {
- default_prepare
- # Remove bundled libffi to be sure that system-provided is used.
- rm -Rf bc/foreign/libffi
-}
-
-build() {
- export CFLAGS="$CFLAGS -D_GNU_SOURCE"
- export LDFLAGS="$LDFLAGS -lucontext"
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --target=$CTARGET \
- --prefix=/usr \
- --sysconfdir=/etc \
- --enable-shared \
- --disable-docs \
- --enable-sharezo \
- --enable-bc
- make bc
-}
-
-package() {
- make install-bc DESTDIR="$pkgdir"
-
- # Remove redundant RPATH.
- chrpath -d "$pkgdir"/usr/bin/racketbc "$pkgdir"/usr/lib/racket/gracketbc
- ln -sf /usr/bin/racketbc "$pkgdir"/usr/bin/racket
- ln -sf /usr/bin/racobc "$pkgdir"/usr/bin/raco
-
- rm -Rf "$pkgdir"/usr/share/applications
-}
-
-sha512sums="
-9eec6c8d4a210c6d36c02ac26f360663731ba3240da45b75f98fcc1deef4bc6bed4566ce454430324fa69676c7b9561940c21d27b806b0a6513584b832af12d6 racket-minimal-8.5-src.tgz
-"
diff --git a/testing/radarr/0001-disable-restart.patch b/testing/radarr/0001-disable-restart.patch
new file mode 100644
index 00000000000..8dc5aebe628
--- /dev/null
+++ b/testing/radarr/0001-disable-restart.patch
@@ -0,0 +1,20 @@
+Disable the restart functionality so the daemon can manage it.
+
+---
+ src/NzbDrone.Core/Lifecycle/LifecycleService.cs | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/src/NzbDrone.Core/Lifecycle/LifecycleService.cs b/src/NzbDrone.Core/Lifecycle/LifecycleService.cs
+index 9ed36a42e..565641284 100644
+--- a/src/NzbDrone.Core/Lifecycle/LifecycleService.cs
++++ b/src/NzbDrone.Core/Lifecycle/LifecycleService.cs
+@@ -46,8 +46,7 @@ public void Shutdown()
+ public void Restart()
+ {
+ _logger.Info("Restart requested.");
+-
+- _eventAggregator.PublishEvent(new ApplicationShutdownRequested(true));
++ _eventAggregator.PublishEvent(new ApplicationShutdownRequested());
+
+ if (_runtimeInfo.IsWindowsService)
+ {
diff --git a/testing/radarr/APKBUILD b/testing/radarr/APKBUILD
new file mode 100644
index 00000000000..bc6e8d9cfbc
--- /dev/null
+++ b/testing/radarr/APKBUILD
@@ -0,0 +1,101 @@
+# Contributor: Fabricio Silva <hi@fabricio.dev>
+# Maintainer: Fabricio Silva <hi@fabricio.dev>
+pkgname=radarr
+pkgver=5.4.6.8723
+pkgrel=0
+pkgdesc="Movie download automation for usenet and torrents."
+url="https://github.com/Radarr/Radarr"
+arch="x86_64 aarch64 armv7"
+license="GPL-3.0-only"
+options="net !check" # no tests
+depends="
+ aspnetcore6-runtime
+ sqlite-libs
+ "
+makedepends="
+ dotnet6-sdk
+ yarn
+ "
+subpackages="$pkgname-openrc"
+install="$pkgname.pre-install"
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/Radarr/Radarr/archive/refs/tags/v$pkgver.tar.gz
+ 0001-disable-restart.patch
+ radarr.initd
+ radarr.confd
+ package_info
+ "
+builddir="$srcdir/Radarr-$pkgver"
+pkgusers="radarr"
+pkggroups="radarr"
+
+# map arch to dotnet
+case $CARCH in
+ x86_64) _dotnet_arch="x64" ;;
+ aarch64) _dotnet_arch="arm64" ;;
+ armv7) _dotnet_arch="arm" ;;
+ *) _dotnet_arch="$CARCH" ;;
+esac
+
+# custom variables
+_runtime="linux-musl-$_dotnet_arch"
+_framework="net6.0"
+_output="_output"
+_artifacts="$_output/$_framework/$_runtime/publish"
+
+prepare() {
+ default_prepare
+
+ # increase max opened files
+ ulimit -n 4096
+
+ # replace version info
+ local buildprops=src/Directory.Build.props
+ sed -i "/<AssemblyVersion>/s/>.*<\//>$pkgver<\//" "$buildprops"
+ sed -i "/<AssemblyConfiguration>/s/>.*<\//>master<\//" "$buildprops"
+
+ export BROWSERSLIST_IGNORE_OLD_DATA=true
+ yarn install --frozen-lockfile --network-timeout 120000
+}
+
+build() {
+ dotnet build src \
+ -p:RuntimeIdentifiers="$_runtime" \
+ -p:Configuration=Release \
+ -p:SelfContained=false \
+ -t:PublishAllRids
+ yarn build --env production --no-stats
+
+ # fix ffprobe permissions
+ chmod +x "$_artifacts"/ffprobe
+
+ # cleanup
+ find "$_artifacts" \( \
+ -name "ServiceUninstall.*" -o \
+ -name "ServiceInstall.*" -o \
+ -name "Radarr.Windows.*" \) -delete
+
+ mv "$_output"/UI "$_artifacts"
+}
+
+package() {
+ local destdir="$pkgdir"/usr/lib/radarr
+
+ # use package_info to disable update feature
+ install -Dm644 "$srcdir"/package_info "$destdir"/package_info
+ echo "PackageVersion=$pkgver-r$pkgrel" >>"$destdir"/package_info
+
+ cp -af "$_artifacts" "$destdir"/bin
+ chown -R "$pkgusers:$pkggroups" "$destdir"
+
+ install -Dm755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
+ install -Dm644 "$srcdir"/$pkgname.confd "$pkgdir"/etc/conf.d/$pkgname
+}
+
+sha512sums="
+c67d4dfb318ff7d5b837684775f1301cc8232cc1fc82d741e91a2e33ce2cf7c68e51dc1c060d39d1773d99a7d48f2d3fec51837fd963171f540fb9d2edee9563 radarr-5.4.6.8723.tar.gz
+753520379a6c5f2899b4ddfd820d5573598a32cb105f74c6fd978a3f2c98895cf709ef2d9afe2bae8c4856da86cb6a1364f5713ea7ef6a36bb21b5a5840c1471 0001-disable-restart.patch
+fc61194f8cf6d87cb8ec13db39e7d953bdcd2fae0fdf47ebe7701e52bfad5a92313f76a7bdbb04608170dbaec0e5895788079d284f988fd99fe19f7e61f2e836 radarr.initd
+7f30d17b9a66b34786ff9f62954eda1677296fc724dde9e2b4f1edb6f19bce8b3df5806d661e48751bd4ebdf6faecd9632d89c1fb35d41ad01ea892fdad71ded radarr.confd
+67c4dd1cf8259296d994c350dfd3962d23333071889ce0b4ef6b2f4cbb4349490c5dbe4dcc202c99bab7a5c4b7611be56d7c8835b2b13924526c45311db1c3fb package_info
+"
diff --git a/testing/radarr/package_info b/testing/radarr/package_info
new file mode 100644
index 00000000000..c2e444817cd
--- /dev/null
+++ b/testing/radarr/package_info
@@ -0,0 +1,4 @@
+# PackageVersion is added by APKBUILD
+PackageAuthor=[alpine](https://pkgs.alpinelinux.org/packages)
+UpdateMethod=External
+Branch=master
diff --git a/testing/radarr/radarr.confd b/testing/radarr/radarr.confd
new file mode 100644
index 00000000000..35ee0d368ba
--- /dev/null
+++ b/testing/radarr/radarr.confd
@@ -0,0 +1,10 @@
+# Radarr configuration options
+
+command_user="radarr:radarr" # user:group
+directory="/var/lib/radarr"
+umask=0002
+supervisor="supervise-daemon"
+
+#logdir="/var/log/radarr"
+#error_log="$logdir/error.log"
+#output_log="$logdir/output.log"
diff --git a/testing/radarr/radarr.initd b/testing/radarr/radarr.initd
new file mode 100644
index 00000000000..9c994beecf2
--- /dev/null
+++ b/testing/radarr/radarr.initd
@@ -0,0 +1,34 @@
+#!/sbin/openrc-run
+
+# fallback values for /etc/conf.d/radarr
+: ${command_user:=radarr:radarr}
+: ${directory:=/var/lib/radarr}
+: ${umask:=0002}
+
+name=radarr
+description="Radarr daemon"
+command="/usr/lib/radarr/bin/Radarr"
+command_args="-nobrowser -data=$directory"
+command_background=true
+pidfile="/run/$name.pid"
+
+depend() {
+ need net
+ use dns logger netmount
+}
+
+start_pre() {
+ checkpath -d -o "$command_user" "$directory"
+
+ if [ -n "$logdir" ]; then
+ checkpath -d -o "$command_user" "$logdir"
+ fi
+
+ if [ -n "$output_log" ]; then
+ checkpath -f -o "$command_user" "$output_log"
+ fi
+
+ if [ -n "$error_log" ]; then
+ checkpath -f -o "$command_user" "$error_log"
+ fi
+}
diff --git a/testing/radarr/radarr.pre-install b/testing/radarr/radarr.pre-install
new file mode 100644
index 00000000000..30dd3305557
--- /dev/null
+++ b/testing/radarr/radarr.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S radarr 2>/dev/null
+adduser -S -D -h /var/lib/radarr -s /sbin/nologin -G radarr -g radarr radarr 2>/dev/null
+
+exit 0
diff --git a/testing/radeontop/APKBUILD b/testing/radeontop/APKBUILD
deleted file mode 100644
index 4b505af5e24..00000000000
--- a/testing/radeontop/APKBUILD
+++ /dev/null
@@ -1,34 +0,0 @@
-# Contributor: guddaff <guddaff@protonmail.com>
-# Maintainer: guddaff <guddaff@protonmail.com>
-pkgname=radeontop
-pkgver=1.4
-pkgrel=1
-pkgdesc="amd gpu utilization monitor"
-url="https://github.com/clbr/radeontop"
-arch="all"
-options="!check" #there are no checks
-license="GPL-3.0-or-later"
-subpackages="$pkgname-doc $pkgname-lang"
-makedepends="libdrm-dev ncurses-dev libpciaccess-dev libxcb-dev musl-libintl gettext"
-source="$pkgname-$pkgver.tar.gz::https://github.com/clbr/radeontop/archive/refs/tags/v$pkgver.tar.gz
- no-git-version.patch
- "
-
-prepare() {
- default_prepare
-
- sed -i "s|ver=@VERSION@|ver=$pkgver|" getver.sh
-}
-
-build() {
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-078087929bdbcf9b131d78f5ab0adc3d086be168d376d9f8e27a886668764263b072e0b08cb4dde593284fcdd16faa44711125c2ea5a14aaad70c8fa0f57f2b9 radeontop-1.4.tar.gz
-d1403a010f4bb02218780d7cbffd3c5859c9c1319736071be2ccc034040a134c4b0d1332735f6a440a0cbabc5a3ab9ac3763481df3bdce27c1275474477c458d no-git-version.patch
-"
diff --git a/testing/radeontop/no-git-version.patch b/testing/radeontop/no-git-version.patch
deleted file mode 100644
index a334b190c9a..00000000000
--- a/testing/radeontop/no-git-version.patch
+++ /dev/null
@@ -1,14 +0,0 @@
---- a/getver.sh
-+++ b/getver.sh
-@@ -1,10 +1,6 @@
- #!/bin/sh
-
--ver=unknown
--
--if [ -n "`which git`" ] && git rev-parse HEAD 2>/dev/null; then
-- ver=`git describe`
--fi
-+ver=@VERSION@
-
- cat > include/version.h << EOF
- #ifndef VER_H
diff --git a/testing/radio-cli/APKBUILD b/testing/radio-cli/APKBUILD
new file mode 100644
index 00000000000..47348547e84
--- /dev/null
+++ b/testing/radio-cli/APKBUILD
@@ -0,0 +1,31 @@
+# Contributor: Hannes Braun <hannes@hannesbraun.net>
+# Maintainer: Hannes Braun <hannes@hannesbraun.net>
+pkgname=radio-cli
+pkgver=2.3.1
+pkgrel=0
+pkgdesc="A simple radio CLI"
+url="https://github.com/margual56/radio-cli"
+arch="all"
+license="GPL-2.0-only"
+depends="mpv yt-dlp"
+makedepends="cargo cargo-auditable openssl-dev"
+source="$pkgname-$pkgver.tar.gz::https://github.com/margual56/radio-cli/archive/refs/tags/v$pkgver.tar.gz"
+options="!check" # no tests
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+package() {
+ install -Dm755 target/release/radio-cli "$pkgdir"/usr/bin/radio-cli
+}
+
+sha512sums="
+e5ca17a81127640b350c1306cd9ec339dd6d819a38ac006a99c2a21dcae2fb82f87788caea529ac2dac3315a8dbb0c671157f019c762f92a8550c9be521a1adc radio-cli-2.3.1.tar.gz
+"
diff --git a/testing/rage/APKBUILD b/testing/rage/APKBUILD
new file mode 100644
index 00000000000..5313e6ec1ef
--- /dev/null
+++ b/testing/rage/APKBUILD
@@ -0,0 +1,57 @@
+# Contributor: Michał Polański <michal@polanski.me>
+# Maintainer: Michał Polański <michal@polanski.me>
+pkgname=rage
+pkgver=0.9.2
+pkgrel=1
+pkgdesc="Simple, modern and secure encryption tool"
+url="https://github.com/str4d/rage"
+license="Apache-2.0 OR MIT"
+arch="all !s390x !riscv64" # blocked by rust/cargo
+makedepends="cargo fuse3-dev cargo-auditable"
+subpackages="
+ $pkgname-doc
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
+ "
+source="https://github.com/str4d/rage/archive/v$pkgver/rage-$pkgver.tar.gz
+ fix-build-32bit.patch
+ "
+
+
+prepare() {
+ default_prepare
+
+ cargo fetch --locked
+}
+
+build() {
+ cargo auditable build --frozen --release --features mount
+
+ cargo run --frozen --release --example generate-docs
+ cargo run --frozen --release --example generate-completions
+}
+
+check() {
+ cargo test --frozen --features mount
+}
+
+package() {
+ for cmd in rage rage-keygen rage-mount; do
+ install -Dm755 target/release/$cmd -t "$pkgdir"/usr/bin
+
+ install -Dm644 target/manpages/$cmd.1.gz -t "$pkgdir"/usr/share/man/man1
+
+ install -Dm644 target/completions/$cmd.bash \
+ "$pkgdir"/usr/share/bash-completion/completions/$cmd
+ install -Dm644 target/completions/$cmd.fish \
+ "$pkgdir"/usr/share/fish/vendor_completions.d/$cmd.fish
+ install -Dm644 target/completions/$cmd.zsh \
+ "$pkgdir"/usr/share/zsh/site-functions/_$cmd
+ done
+}
+
+sha512sums="
+ec44929b01e75366f9c0a41f4bf0b5dff256a8cdb1fb67461cc29fc9a90c9fd3936017e64fb427e8303c02380c841b82955c9f3aee90f3bdb1081a3cdfae2a34 rage-0.9.2.tar.gz
+eabd51083c59450ac4e5aae5f499b8ef657d70fbde1d78322ec56790a52485ae93b006b5255053d2bc5313e4352610aa5cd60b994496a45196db9a2de190d417 fix-build-32bit.patch
+"
diff --git a/testing/rage/fix-build-32bit.patch b/testing/rage/fix-build-32bit.patch
new file mode 100644
index 00000000000..b626b40c8d7
--- /dev/null
+++ b/testing/rage/fix-build-32bit.patch
@@ -0,0 +1,229 @@
+Fix build on 32-bit archs by updating pprof-rs from 0.10.1 to 0.11.1.
+Ref: https://github.com/tikv/pprof-rs/commit/09c0e73ab29cd2f586d0502397b3ea96ac8b2171
+
+diff --git a/Cargo.lock b/Cargo.lock
+index 2f76061..e4917b6 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -68,7 +68,7 @@ dependencies = [
+ "cipher",
+ "console",
+ "cookie-factory",
+- "criterion",
++ "criterion 0.3.6",
+ "criterion-cycles-per-byte",
+ "ctr",
+ "curve25519-dalek",
+@@ -168,6 +168,12 @@ dependencies = [
+ "libc",
+ ]
+
++[[package]]
++name = "anes"
++version = "0.1.6"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "4b46cbb362ab8752921c97e041f5e366ee6297bd428a31275b9fcf1e380f7299"
++
+ [[package]]
+ name = "arc-swap"
+ version = "1.6.0"
+@@ -401,6 +407,33 @@ dependencies = [
+ "winapi",
+ ]
+
++[[package]]
++name = "ciborium"
++version = "0.2.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "effd91f6c78e5a4ace8a5d3c0b6bfaec9e2baaef55f3efc00e45fb2e477ee926"
++dependencies = [
++ "ciborium-io",
++ "ciborium-ll",
++ "serde",
++]
++
++[[package]]
++name = "ciborium-io"
++version = "0.2.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "cdf919175532b369853f5d5e20b26b43112613fd6fe7aee757e35f7a44642656"
++
++[[package]]
++name = "ciborium-ll"
++version = "0.2.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "defaa24ecc093c77630e6c15e17c51f5e187bf35ee514f4e2d67baaa96dae22b"
++dependencies = [
++ "ciborium-io",
++ "half",
++]
++
+ [[package]]
+ name = "cipher"
+ version = "0.4.4"
+@@ -494,9 +527,9 @@ checksum = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa"
+
+ [[package]]
+ name = "cpp_demangle"
+-version = "0.3.5"
++version = "0.4.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "eeaa953eaad386a53111e47172c2fedba671e5684c8dd601a5f474f4f118710f"
++checksum = "2c76f98bdfc7f66172e6c7065f981ebb576ffc903fe4c0561d9f0c2509226dc6"
+ dependencies = [
+ "cfg-if",
+ ]
+@@ -528,7 +561,7 @@ dependencies = [
+ "atty",
+ "cast",
+ "clap 2.34.0",
+- "criterion-plot",
++ "criterion-plot 0.4.5",
+ "csv",
+ "itertools",
+ "lazy_static",
+@@ -545,13 +578,39 @@ dependencies = [
+ "walkdir",
+ ]
+
++[[package]]
++name = "criterion"
++version = "0.4.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e7c76e09c1aae2bc52b3d2f29e13c6572553b30c4aa1b8a49fd70de6412654cb"
++dependencies = [
++ "anes",
++ "atty",
++ "cast",
++ "ciborium",
++ "clap 3.2.25",
++ "criterion-plot 0.5.0",
++ "itertools",
++ "lazy_static",
++ "num-traits",
++ "oorandom",
++ "plotters",
++ "rayon",
++ "regex",
++ "serde",
++ "serde_derive",
++ "serde_json",
++ "tinytemplate",
++ "walkdir",
++]
++
+ [[package]]
+ name = "criterion-cycles-per-byte"
+ version = "0.1.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "07175eab62c9054f8828955f9a84ddd3f732f796ee99fb4898453d60be4bcbdc"
+ dependencies = [
+- "criterion",
++ "criterion 0.3.6",
+ ]
+
+ [[package]]
+@@ -564,6 +623,16 @@ dependencies = [
+ "itertools",
+ ]
+
++[[package]]
++name = "criterion-plot"
++version = "0.5.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6b50826342786a51a89e2da3a28f1c32b06e387201bc2d19791f622c673706b1"
++dependencies = [
++ "cast",
++ "itertools",
++]
++
+ [[package]]
+ name = "crossbeam-channel"
+ version = "0.5.8"
+@@ -655,7 +724,7 @@ version = "3.3.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "7394a21d012ce5c850497fb774b167d81b99f060025fbf06ee92b9848bd97eb2"
+ dependencies = [
+- "nix 0.26.2",
++ "nix",
+ "windows-sys 0.48.0",
+ ]
+
+@@ -1496,17 +1565,6 @@ dependencies = [
+ "adler",
+ ]
+
+-[[package]]
+-name = "nix"
+-version = "0.24.3"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "fa52e972a9a719cecb6864fb88568781eb706bac2cd1d4f04a648542dbf78069"
+-dependencies = [
+- "bitflags",
+- "cfg-if",
+- "libc",
+-]
+-
+ [[package]]
+ name = "nix"
+ version = "0.26.2"
+@@ -1857,18 +1915,18 @@ dependencies = [
+
+ [[package]]
+ name = "pprof"
+-version = "0.10.1"
++version = "0.11.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "d6472bfed9475542ac46c518734a8d06d71b0f6cb2c17f904aa301711a57786f"
++checksum = "196ded5d4be535690899a4631cc9f18cdc41b7ebf24a79400f46f48e49a11059"
+ dependencies = [
+ "backtrace",
+ "cfg-if",
+- "criterion",
++ "criterion 0.4.0",
+ "findshlibs",
+ "inferno",
+ "libc",
+ "log",
+- "nix 0.24.3",
++ "nix",
+ "once_cell",
+ "parking_lot",
+ "smallvec",
+@@ -2419,9 +2477,9 @@ checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc"
+
+ [[package]]
+ name = "symbolic-common"
+-version = "9.2.1"
++version = "10.2.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "800963ba330b09a2ae4a4f7c6392b81fbc2784099a98c1eac68c3437aa9382b2"
++checksum = "1b55cdc318ede251d0957f07afe5fed912119b8c1bc5a7804151826db999e737"
+ dependencies = [
+ "debugid",
+ "memmap2",
+@@ -2431,9 +2489,9 @@ dependencies = [
+
+ [[package]]
+ name = "symbolic-demangle"
+-version = "9.2.1"
++version = "10.2.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "2b940a1fdbc72bb3369e38714efe6cd332dbbe46d093cf03d668b9ac390d1ad0"
++checksum = "79be897be8a483a81fff6a3a4e195b4ac838ef73ca42d348b3f722da9902e489"
+ dependencies = [
+ "cpp_demangle",
+ "rustc-demangle",
+diff --git a/age/Cargo.toml b/age/Cargo.toml
+index 63ec0a5..ed0e577 100644
+--- a/age/Cargo.toml
++++ b/age/Cargo.toml
+@@ -102,7 +102,7 @@ test-case = "2"
+ tokio = { version = "1", features = ["macros", "rt-multi-thread"] }
+
+ [target.'cfg(unix)'.dev-dependencies]
+-pprof = { version = "0.10", features = ["criterion", "flamegraph"] }
++pprof = { version = "0.11.1", features = ["criterion", "flamegraph"] }
+
+ [target.'cfg(any(target_arch = "x86", target_arch = "x86_64"))'.dev-dependencies]
+ criterion-cycles-per-byte = "0.1"
diff --git a/testing/rancher-cli/APKBUILD b/testing/rancher-cli/APKBUILD
new file mode 100644
index 00000000000..20f6671781d
--- /dev/null
+++ b/testing/rancher-cli/APKBUILD
@@ -0,0 +1,31 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=rancher-cli
+pkgver=2.8.0
+pkgrel=2
+pkgdesc="The Rancher CLI"
+url="https://www.rancher.com/"
+arch="all"
+license="Apache-2.0"
+makedepends="go"
+source="$pkgname-$pkgver.tar.gz::https://github.com/rancher/cli/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/cli-$pkgver"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ go build -v -o bin/rancher -ldflags "-X main.VERSION=v$pkgver"
+}
+
+check() {
+ go test ./...
+}
+
+package() {
+ install -Dm755 bin/rancher -t "$pkgdir"/usr/bin
+}
+
+sha512sums="
+9a2c3c4c7a2a8210a30414e2efdf25fcc0e55ffea2ecdd07d7427deab8d3aaf2eb2b3560b7cb8bc14ad678ac73dd98230ca40024d58e757de5f2e40becd4d28c rancher-cli-2.8.0.tar.gz
+"
diff --git a/testing/randrctl/APKBUILD b/testing/randrctl/APKBUILD
index 4c4d7d69b2d..e72d23bebd6 100644
--- a/testing/randrctl/APKBUILD
+++ b/testing/randrctl/APKBUILD
@@ -2,14 +2,15 @@
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=randrctl
pkgver=1.9.0
-pkgrel=1
+pkgrel=5
pkgdesc="Profile based screen manager for X"
url="https://github.com/edio/randrctl"
arch="noarch"
license="GPL-3.0-or-later"
-depends="python3 py3-argcomplete py3-yaml xrandr"
+depends="python3 py3-argcomplete py3-setuptools py3-yaml xrandr"
checkdepends="py3-pytest"
makedepends="python3-dev py3-pbr py3-setuptools"
+subpackages="$pkgname-pyc"
source="https://github.com/edio/randrctl/archive/$pkgver/randrctl-$pkgver.tar.gz"
export PBR_VERSION="$pkgver"
@@ -23,7 +24,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
install -m 644 -D randrctl/setup/99-randrctl.rules \
"$pkgdir"/lib/udev/rules.d/99-$pkgname.rules
diff --git a/testing/rankwidth/APKBUILD b/testing/rankwidth/APKBUILD
new file mode 100644
index 00000000000..85659884e81
--- /dev/null
+++ b/testing/rankwidth/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
+pkgname=rankwidth
+pkgver=0.9
+pkgrel=3
+pkgdesc="Library for calculating rank-width and rank-decompositions"
+url="https://sourceforge.net/projects/rankwidth/"
+# s390x: blocked by libigraph
+arch="all !s390x"
+license="GPL-2.0-or-later"
+makedepends="libigraph-dev"
+options="!check" # no test suite
+source="https://master.dl.sourceforge.net/project/rankwidth/rw-$pkgver.tar.gz
+ igraph-0.10.1.patch"
+subpackages="$pkgname-static $pkgname-dev $pkgname-libs $pkgname-doc"
+builddir="$srcdir/rw-$pkgver"
+
+build() {
+ export CFLAGS="${CFLAGS/-Os/-O3}" # gotta go fast
+
+ ./configure \
+ --target="$CTARGET" \
+ --build="$CBUILD" \
+ --host="$CHOST" \
+ --prefix=/usr
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+f4f1910506cbdb557ca50bac6f63cfca3271a5df8d13c67d2d9bba79b9cdb03196a679e6091554175decbee0871888de71bed5746662c9a75418f0f5dd9bd609 rw-0.9.tar.gz
+94871294bf2ffc2733cf14c241773bb339d5aab1e6f5b2801c8406df367045fbcb3c5fb9787f0bbf6c4fefc1c40aca93736f1df4520e30c00f24294209c2811f igraph-0.10.1.patch
+"
diff --git a/testing/rankwidth/igraph-0.10.1.patch b/testing/rankwidth/igraph-0.10.1.patch
new file mode 100644
index 00000000000..467b21fddc8
--- /dev/null
+++ b/testing/rankwidth/igraph-0.10.1.patch
@@ -0,0 +1,11 @@
+--- a/simplerw.c
++++ b/simplerw.c
+@@ -134,7 +134,7 @@
+ igraph_destroy(&igraph);
+ return(-1);
+ }
+- igraph_get_adjacency(&igraph, &imatrix, IGRAPH_GET_ADJACENCY_BOTH, 0);
++ igraph_get_adjacency(&igraph, &imatrix, IGRAPH_GET_ADJACENCY_BOTH, 0, 0);
+ igraph_destroy(&igraph);
+ if(igraph_matrix_nrow(&imatrix) > MAX_VERTICES)
+ {
diff --git a/testing/rapidfuzz/APKBUILD b/testing/rapidfuzz/APKBUILD
new file mode 100644
index 00000000000..4194b3abb71
--- /dev/null
+++ b/testing/rapidfuzz/APKBUILD
@@ -0,0 +1,45 @@
+# Maintainer:
+pkgname=rapidfuzz
+pkgver=3.0.0
+pkgrel=0
+pkgdesc="Rapid fuzzy string matching in C++ using the Levenshtein Distance"
+url="https://github.com/maxbachmann/rapidfuzz-cpp"
+arch="all"
+license="MIT"
+makedepends="
+ cmake
+ samurai
+ "
+checkdepends="catch2-3"
+source="$pkgname-cpp-$pkgver.tar.gz::https://github.com/maxbachmann/rapidfuzz-cpp/archive/refs/tags/v$pkgver.tar.gz
+ cstdint.patch
+ "
+builddir="$srcdir/rapidfuzz-cpp-$pkgver"
+
+case "$CARCH" in
+x86)
+ # float rounding
+ options="!check"
+ ;;
+esac
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DRAPIDFUZZ_BUILD_TESTING="$(want_check && echo ON || echo OFF)"
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+c5f20399bd1cfaa057c40cc17be5d730d50c1014553241f80f461a2fa89de670357d17a4f090394170263b09a53aa29238e5eff2caf9064a2a118c42aa14f320 rapidfuzz-cpp-3.0.0.tar.gz
+216c5082498830d42d2eb14d3eba35dd08446008916c920db7b55eaf3dd2358f86a61c238315b85fefecf08b9e902dc4db172f91a8479cfd735e53c7b3e03bf5 cstdint.patch
+"
diff --git a/testing/rapidfuzz/cstdint.patch b/testing/rapidfuzz/cstdint.patch
new file mode 100644
index 00000000000..cce903344db
--- /dev/null
+++ b/testing/rapidfuzz/cstdint.patch
@@ -0,0 +1,12 @@
+diff --git a/rapidfuzz_reference/JaroWinkler.hpp b/rapidfuzz_reference/JaroWinkler.hpp
+index 3b717d8..9d415e4 100644
+--- a/rapidfuzz_reference/JaroWinkler.hpp
++++ b/rapidfuzz_reference/JaroWinkler.hpp
+@@ -2,6 +2,7 @@
+ /* Copyright © 2022-present Max Bachmann */
+
+ #pragma once
++#include <cstdint>
+ #include "Jaro.hpp"
+
+ namespace rapidfuzz_reference {
diff --git a/testing/rapidyaml/APKBUILD b/testing/rapidyaml/APKBUILD
deleted file mode 100644
index 709c0f7980c..00000000000
--- a/testing/rapidyaml/APKBUILD
+++ /dev/null
@@ -1,57 +0,0 @@
-# Contributor: psykose <alice@ayaya.dev>
-# Maintainer: psykose <alice@ayaya.dev>
-pkgname=rapidyaml
-pkgver=0.4.1
-pkgrel=0
-_c4core=d35c7c9bf370134595699d791e6ff8db018ddc8d
-_cmake=371982300ff5a076d7c3199057ebed77bbe3472f
-_fast_float=32d21dcecb404514f94fb58660b8029a4673c2c1
-_debugbreak=5dcbe41d2bd4712c8014aa7e843723ad7b40fd74
-pkgdesc="Library to parse and emit YAML, and do it fast"
-url="https://github.com/biojppm/rapidyaml/"
-arch="all !riscv64" # unknown cpu arch
-license="MIT"
-options="!check" # needs another 3 vendored deps it git clones..
-makedepends="cmake samurai"
-source="$pkgname-$pkgver.tar.gz::https://github.com/biojppm/rapidyaml/archive/refs/tags/v$pkgver.tar.gz
- c4core-$_c4core.tar.gz::https://github.com/biojppm/c4core/archive/$_c4core.tar.gz
- cmake-$_cmake.tar.gz::https://github.com/biojppm/cmake/archive/$_cmake.tar.gz
- fast_float-$_fast_float.tar.gz::https://github.com/fastfloat/fast_float/archive/$_fast_float.tar.gz
- debugbreal-$_debugbreak.tar.gz::https://github.com/biojppm/debugbreak/archive/$_debugbreak.tar.gz
- "
-
-prepare() {
- default_prepare
-
- rmdir "$builddir"/ext/c4core
- ln -sfv "$srcdir"/c4core-$_c4core "$builddir"/ext/c4core
-
- rmdir "$builddir"/ext/c4core/cmake
- ln -sfv "$srcdir"/cmake-$_cmake "$builddir"/ext/c4core/cmake
-
- rmdir "$builddir"/ext/c4core/src/c4/ext/debugbreak
- rmdir "$builddir"/ext/c4core/src/c4/ext/fast_float
- ln -sfv "$srcdir"/debugbreak-$_debugbreak \
- "$builddir"/ext/c4core/src/c4/ext/debugbreak
- ln -sfv "$srcdir"/fast_float-$_fast_float \
- "$builddir"/ext/c4core/src/c4/ext/fast_float
-}
-
-build() {
- cmake -B build -G Ninja \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=/usr
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-
-sha512sums="
-a8132a1b31e7aed5883214483ccf25a2994a2336cc6f52c06e93e5aa8f9cfc059a2c1bb2bef06ca7daea2c3226c107e312c90d5d5bfd53d354598a6961aa4eb9 rapidyaml-0.4.1.tar.gz
-46c2b14dcb3dd50f933afef0cc94ab4c35c8cfa9c82789774fee4004d97f4dbb13665410b3e54041efb6ac46ef24b871af5fbaab9067e24e6ef2993bf73e95c8 c4core-d35c7c9bf370134595699d791e6ff8db018ddc8d.tar.gz
-81d4bf158ef0eb1710d97db523f9ed276de1df78bb3597d0d10046ea41a3bbc7a30fc2f78f19a0a18863ff4cda65cda99edc035a714fd52fe0cadef167daac8f cmake-371982300ff5a076d7c3199057ebed77bbe3472f.tar.gz
-2cbdc5b05ab7c19e20b4e34959b90d1fa866d4ba239ec0a4c434cd33bddfb1cb6f1da467b0a525f5a4887c9b1860e975fe074aca0d9e211f0fc7bc6402d3601e fast_float-32d21dcecb404514f94fb58660b8029a4673c2c1.tar.gz
-8c63cbab94c049d6f04a48b9de73f22c50ed1e68eba2b77a0fdcb63952d88b1f7248c59e3f4d519c1211a93f378c0200f62fae5a2596a1decd5df18204d4f488 debugbreal-5dcbe41d2bd4712c8014aa7e843723ad7b40fd74.tar.gz
-"
diff --git a/testing/raspberrypi-usbboot/APKBUILD b/testing/raspberrypi-usbboot/APKBUILD
index a90c5273192..779964dc899 100644
--- a/testing/raspberrypi-usbboot/APKBUILD
+++ b/testing/raspberrypi-usbboot/APKBUILD
@@ -4,7 +4,7 @@ _pkgname=usbboot
pkgname=raspberrypi-usbboot
_pkgver=2021.07.01
pkgver="${_pkgver//./}"
-pkgrel=0
+pkgrel=2
pkgdesc="rpiboot and bin2c from Raspberry Pi"
url="https://github.com/raspberrypi/usbboot"
arch="all"
@@ -24,9 +24,7 @@ package() {
mkdir -p "$pkgdir"/bin
cp rpiboot bin2c "$pkgdir"/bin
- mkdir -p "$pkgdir"/etc/udev/rules.d
- sed "s/plugdev/usb/" < debian/99-rpiboot.rules > \
- "$pkgdir"/etc/udev/rules.d/99-rpiboot.rules
+ install -Dm644 -t "$pkgdir"/usr/lib/udev/rules.d debian/99-rpiboot.rules
mkdir -p "$pkgdir"/usr/share/rpiboot/msd
cp msd/bootcode.bin "$pkgdir"/usr/share/rpiboot/msd
diff --git a/testing/rathole/APKBUILD b/testing/rathole/APKBUILD
index 5f328d06d2d..97ea9cbf28d 100644
--- a/testing/rathole/APKBUILD
+++ b/testing/rathole/APKBUILD
@@ -1,22 +1,24 @@
# Contributor: Michał Polański <michal@polanski.me>
# Maintainer: Michał Polański <michal@polanski.me>
pkgname=rathole
-pkgver=0.4.2
+pkgver=0.5.0
pkgrel=0
pkgdesc="High-performance reverse proxy for NAT traversal"
url="https://github.com/rapiz1/rathole"
license="Apache-2.0"
arch="all !s390x !riscv64" # blocked by rust/cargo
-makedepends="cargo openssl-dev"
+makedepends="cargo openssl-dev cargo-auditable"
source="https://github.com/rapiz1/rathole/archive/v$pkgver/rathole-$pkgver.tar.gz"
+options="!check" # loop forever on failure
prepare() {
default_prepare
- cargo fetch --locked
+
+ cargo fetch --target="$CTARGET" --locked
}
build() {
- cargo build --frozen --release
+ cargo auditable build --frozen --release
}
check() {
@@ -24,9 +26,9 @@ check() {
}
package() {
- install -Dm755 target/release/rathole "$pkgdir"/usr/bin/rathole
+ install -Dm755 target/release/$pkgname -t "$pkgdir"/usr/bin/
}
sha512sums="
-55934d888f12bd913e101e6ea8c08b1ff19100cc54851fe0266210b5ad0c192280c879bce8f2b3d7c61b66d6c5a2f41d2f1c36c1ddb2d202685553dbd9ade18e rathole-0.4.2.tar.gz
+0b4da8e3a95624d2e03a0682eecc098ea5d615bd47080f4a13d8248ee4358faecb81298feb2499084d55415cce01b4bc3fcb8a8d5c41677f2c3ceaa131fd4915 rathole-0.5.0.tar.gz
"
diff --git a/testing/ratpoison/APKBUILD b/testing/ratpoison/APKBUILD
deleted file mode 100644
index e6c275e18dd..00000000000
--- a/testing/ratpoison/APKBUILD
+++ /dev/null
@@ -1,40 +0,0 @@
-# Contributor: Duncan Guthrie <dguthrie@posteo.net>
-# Maintainer: Duncan Guthrie <dguthrie@posteo.net>
-pkgname=ratpoison
-pkgver=1.4.9
-pkgrel=1
-pkgdesc="Minimalistic window manager"
-url="http://ratpoison.nongnu.org"
-arch="all"
-license="GPL-2.0-only"
-makedepends="libx11-dev"
-subpackages="$pkgname-dev $pkgname-doc"
-source="http://download.savannah.nongnu.org/releases/$pkgname/$pkgname-$pkgver.tar.xz"
-builddir="$srcdir/$pkgname-$pkgver"
-
-build() {
- cd "$builddir"
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var \
- --without-xkb \
- --without-xft \
- --without-xrandr
- make
-}
-
-check() {
- cd "$builddir"
- make check
-}
-
-package() {
- cd "$builddir"
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="97f705efd2092b8e12528496890c59f613e6fcec010aca94a5a59bd641e22dfc50dd500a4b94af7a07553a8a6359f6bec4eee0db1a7ded29d7f051904b09beef ratpoison-1.4.9.tar.xz"
diff --git a/testing/rattler-build/APKBUILD b/testing/rattler-build/APKBUILD
new file mode 100644
index 00000000000..7f9dc3b42eb
--- /dev/null
+++ b/testing/rattler-build/APKBUILD
@@ -0,0 +1,61 @@
+# Contributor: Orhun Parmaksız <orhunparmaksiz@gmail.com>
+# Maintainer: Orhun Parmaksız <orhunparmaksiz@gmail.com>
+pkgname=rattler-build
+pkgver=0.15.0
+pkgrel=0
+pkgdesc="A fast conda-package builder"
+url="https://github.com/prefix-dev/rattler-build"
+arch="all"
+license="BSD-3-Clause"
+depends="
+ bzip2
+ xz
+ "
+makedepends="
+ cargo
+ cargo-auditable
+ openssl-dev
+ "
+checkdepends="
+ patchelf
+ git
+ "
+subpackages="
+ $pkgname-doc
+ $pkgname-bash-completion
+ $pkgname-zsh-completion
+ $pkgname-fish-completion
+ "
+options="net"
+source="$pkgname-$pkgver.tar.gz::https://github.com/prefix-dev/rattler-build/archive/v$pkgver.tar.gz"
+
+prepare() {
+ default_prepare
+ cargo fetch --target="$CTARGET" --locked
+ mkdir -p completions/
+}
+
+build() {
+ cargo auditable build --frozen --release
+ local _completion="target/release/$pkgname completion"
+ $_completion --shell bash > "completions/$pkgname"
+ $_completion --shell fish > "completions/$pkgname.fish"
+ $_completion --shell zsh > "completions/_$pkgname"
+}
+
+check() {
+ cargo test --frozen -- --skip "test_host_git_source"
+}
+
+package() {
+ install -Dm 755 "target/release/$pkgname" -t "$pkgdir/usr/bin"
+ install -Dm 644 README.md -t "$pkgdir/usr/share/doc/$pkgname"
+ install -Dm 644 LICENSE -t "$pkgdir/usr/share/licenses/$pkgname"
+ install -Dm 664 "completions/$pkgname" -t "$pkgdir/usr/share/bash-completion/completions/"
+ install -Dm 664 "completions/$pkgname.fish" -t "$pkgdir/usr/share/fish/vendor_completions.d/"
+ install -Dm 664 "completions/_$pkgname" -t "$pkgdir/usr/share/zsh/site-functions/"
+}
+
+sha512sums="
+833d28c61390e2d688f523615399eada3ac470a3261718b96bebd167792ad73d00dfe1d51d6860a44d086d9b191b1f0b4b8ff05535bb424276aa2d35c67c9d33 rattler-build-0.15.0.tar.gz
+"
diff --git a/testing/rauc/APKBUILD b/testing/rauc/APKBUILD
new file mode 100644
index 00000000000..2b57e7883af
--- /dev/null
+++ b/testing/rauc/APKBUILD
@@ -0,0 +1,77 @@
+# Contributor: Damian Kurek <starfire24680@gmail.com>
+# Maintainer: Damian Kurek <starfire24680@gmail.com>
+pkgname=rauc
+pkgver=1.10.1
+pkgrel=0
+pkgdesc="Safe and secure software updates for embedded Linux"
+url="https://rauc.io/"
+arch="all"
+license="LGPL-2.1-or-later"
+makedepends="
+ autoconf
+ automake
+ curl-dev
+ dbus-dev
+ glib-dev
+ json-glib-dev
+ libfdisk
+ libnl3-dev
+ libtool
+ openssl-dev
+ "
+checkdepends="
+ dbus-x11
+ desync
+ e2fsprogs
+ libfaketime
+ opensc
+ openssl
+ softhsm
+ squashfs-tools
+ "
+# grub is not available on s390x
+# valgrind is not available on armhf or riscv64
+case "$CARCH" in
+s390x) checkdepends="$checkdepends valgrind" ;;
+armhf|riscv64) checkdepends="$checkdepends grub" ;;
+*) checkdepends="$checkdepends grub valgrind" ;;
+esac
+subpackages="$pkgname-service::noarch $pkgname-doc"
+source="$pkgname-$pkgver.tar.xz::https://github.com/rauc/rauc/releases/download/v$pkgver/rauc-$pkgver.tar.xz"
+
+prepare() {
+ default_prepare
+
+ NOCONFIGURE=1 ./autogen.sh
+}
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr
+ make
+}
+
+check() {
+ # There is also qemu-test, but we run only these
+
+ # faketime appears to have no effect on musl libc
+ # so certificate expiration tests will fail
+ make check || true
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+service() {
+ pkgdesc="Service files for rauc"
+ depends="rauc=$pkgver-r$pkgrel"
+ amove /usr/libexec
+ amove /usr/share/dbus-1
+}
+
+sha512sums="
+794a1a517c9a9eacf7466710054f88fc48bf57e34cb460f202f62ca976777054c0faf74dd045164ea29977aa8f5d9d268f5154621b51642898ffafc831c75bbb rauc-1.10.1.tar.xz
+"
diff --git a/testing/rav1e/APKBUILD b/testing/rav1e/APKBUILD
deleted file mode 100644
index ecd678b9489..00000000000
--- a/testing/rav1e/APKBUILD
+++ /dev/null
@@ -1,58 +0,0 @@
-# Contributor: Oleg Titov <oleg.titov@gmail.com>
-# Maintainer: Oleg Titov <oleg.titov@gmail.com>
-pkgname=rav1e
-pkgver=0.5.1
-pkgrel=0
-pkgdesc="The fastest and safest AV1 encoder"
-url="https://github.com/xiph/rav1e"
-arch="all !s390x !riscv64" # no cargo for s390x
-license="BSD-2-Clause custom"
-makedepends="cargo cargo-c nasm openssl-dev"
-subpackages="$pkgname-static $pkgname-dev $pkgname-doc $pkgname-libs"
-source="$pkgname-$pkgver.tar.gz::https://github.com/xiph/rav1e/archive/v$pkgver.tar.gz"
-
-[ "$CARCH" = armhf ] && options="$options !check" # tests takes >6h
-
-prepare() {
- default_prepare
-
- cargo fetch -v
-}
-
-build() {
- cargo build --release --frozen
- cargo cbuild --release \
- --frozen \
- --prefix /usr \
- --library-type cdylib \
- --library-type staticlib
-}
-
-check() {
- cargo test --release --frozen \
- --workspace --exclude rav1e
-}
-
-package() {
- cargo install \
- --locked \
- --offline \
- --path . \
- --root "$pkgdir"/usr
-
- cargo cinstall \
- --release \
- --frozen \
- --prefix /usr \
- --destdir "$pkgdir" \
- --library-type cdylib \
- --library-type staticlib
-
- install -Dm0644 README.md PATENTS -t "$pkgdir"/usr/share/doc/rav1e
-
- rm "$pkgdir"/usr/.crates*
-}
-
-sha512sums="
-54fdc65527e83bed1c57916c48f03b5701cb1c41c3990326130f56c562174a97b571fb58f0f099108ccc00d8c0fd05c8a57be3fc043750dcddf804440ceeff39 rav1e-0.5.1.tar.gz
-"
diff --git a/testing/raylib-wayland/APKBUILD b/testing/raylib-wayland/APKBUILD
deleted file mode 100644
index 6a84977343e..00000000000
--- a/testing/raylib-wayland/APKBUILD
+++ /dev/null
@@ -1,42 +0,0 @@
-# Contributor: Leo <thinkabit.ukim@gmail.com>
-# Maintainer: rfaa <rfaa@rfaa.se>
-pkgname=raylib-wayland
-pkgver=3.5.0
-pkgrel=0
-pkgdesc="Raylib game programming library (Wayland)"
-url="https://www.raylib.com/"
-arch="all !armhf" # Limited by glfw-wayland
-license="Zlib"
-depends="glfw-wayland"
-depends_dev="glfw-wayland-dev"
-makedepends="$depends_dev cmake"
-subpackages="$pkgname-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/raysan5/raylib/archive/$pkgver.tar.gz"
-builddir="$srcdir/raylib-$pkgver"
-options="!check" # no tests included
-
-build() {
- cmake -B build \
- -Wno-dev \
- -DCMAKE_BUILD_TYPE=None \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DUSE_EXTERNAL_GLFW=ON \
- -DSTATIC=OFF \
- -DSHARED=ON \
- -DWITH_PIC=ON \
- -DBUILD_EXAMPLES=OFF \
- -DBUILD_GAMES=OFF \
- -DUSE_WAYLAND=ON
- make -C build
-}
-
-package() {
- make -C build DESTDIR="$pkgdir" install
-
- for f in build/src/*.h; do
- install -Dm0644 "$f" "$pkgdir"/usr/include/"${f##*/}"
- done
-}
-
-sha512sums="ce3e44b28403cae0def9e36cdf65e01b66b029678fc85e375280517e3b4118e02ddfe2fe20d12720a74d73c21a29aebb4c17c2362e7e9d0f52a69efd990764e0 raylib-wayland-3.5.0.tar.gz"
diff --git a/testing/raylib/APKBUILD b/testing/raylib/APKBUILD
deleted file mode 100644
index 8b1415c24a7..00000000000
--- a/testing/raylib/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Contributor: David Demelier <markand@malikania.fr>
-# Maintainer: David Demelier <markand@malikania.fr>
-pkgname=raylib
-pkgver=4.0.0
-pkgrel=0
-pkgdesc="a simple and easy to use game development library"
-url="http://www.raylib.com"
-arch="all"
-license="Zlib"
-makedepends="cmake glfw-dev"
-subpackages="$pkgname-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/raysan5/raylib/archive/refs/tags/$pkgver.tar.gz"
-options="!check" # No tests.
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build \
- -DBUILD_EXAMPLES=Off \
- -DBUILD_SHARED_LIBS=True \
- -DCMAKE_BUILD_TYPE=None \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DUSE_EXTERNAL_GLFW=ON \
- $CMAKE_CROSSOPTS .
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-
-sha512sums="
-e9ffab14ab902e3327202e68ca139209ff24100dab62eb03fef50adf363f81e2705d81e709c58cf1514e68e6061c8963555bd2d00744daacc3eb693825fc3417 raylib-4.0.0.tar.gz
-"
diff --git a/testing/razercfg/APKBUILD b/testing/razercfg/APKBUILD
index 89cfeeb3880..5ea41573ceb 100644
--- a/testing/razercfg/APKBUILD
+++ b/testing/razercfg/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Taner Tas <taner76@gmail.com>
pkgname=razercfg
pkgver=0.42
-pkgrel=3
+pkgrel=6
pkgdesc="Razer mouse configuration tool"
url="https://bues.ch/cms/hacking/razercfg.html"
arch="all"
@@ -11,9 +11,10 @@ makedepends="
cmake
libusb-dev
python3
+ py3-setuptools
eudev-dev
"
-subpackages="$pkgname-openrc $pkgname-gui::noarch"
+subpackages="$pkgname-openrc $pkgname-gui::noarch $pkgname-pyc"
source="https://github.com/mbuesch/razer/archive/razercfg-$pkgver.tar.gz
razerd.initd
"
diff --git a/testing/razergenie/APKBUILD b/testing/razergenie/APKBUILD
deleted file mode 100644
index c6c0d5df57d..00000000000
--- a/testing/razergenie/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Contributor: Bart Ribbers <bribbers@disroot.org>
-# Maintainer: Bart Ribbers <bribbers@disroot.org>
-pkgname=razergenie
-pkgver=0.9.0
-pkgrel=0
-pkgdesc="Qt application for configuring your Razer devices under GNU/Linux"
-url="https://github.com/z3ntu/RazerGenie"
-arch="all"
-license="GPL-3.0-or-later"
-depends="openrazer"
-makedepends="
- meson
- qt5-qtbase-dev
- qt5-qttools-dev
- qtchooser
- "
-source="https://github.com/z3ntu/razergenie/archive/v$pkgver/razergenie-v$pkgver.tar.gz"
-builddir="$srcdir/RazerGenie-$pkgver"
-
-build() {
- abuild-meson . output
- meson compile ${JOBS:+-j ${JOBS}} -C output
-}
-
-check() {
- meson test --no-rebuild -v -C output
-}
-
-package() {
- DESTDIR="$pkgdir" meson install --no-rebuild -C output
-}
-
-sha512sums="
-77b3a6695fac5f7baf1968a87e3115bba80acbcd812c0504b0b37db99ab98c696ac5e3ad1ac61a2a8da857007ea5c2ae07f7f8414a29f512ccb770eef1b166b6 razergenie-v0.9.0.tar.gz
-"
diff --git a/testing/rbw/APKBUILD b/testing/rbw/APKBUILD
index 2da5c5aede6..fd888eea90f 100644
--- a/testing/rbw/APKBUILD
+++ b/testing/rbw/APKBUILD
@@ -1,13 +1,13 @@
# Maintainer: crapStone <crapstone01@gmail.com>
pkgname=rbw
-pkgver=1.4.3
+pkgver=1.9.0
pkgrel=0
pkgdesc="Unofficial command line client for Bitwarden."
url="https://git.tozt.net/rbw"
-arch="all !s390x !riscv64 !ppc64le" # limited by cargo, dependency ring does not support ppc64le
+arch="all !s390x !riscv64 !ppc64le" # ring
license="MIT"
depends="pinentry"
-makedepends="rust cargo"
+makedepends="rust cargo cargo-auditable"
subpackages="
$pkgname-bash-completion
$pkgname-fish-completion
@@ -16,20 +16,14 @@ subpackages="
source="https://git.tozt.net/rbw/snapshot/rbw-$pkgver.tar.gz"
export CARGO_HOME="$srcdir"/cargo
-# Reduce size of the binaries.
-# 9.1M -> 4.3M
-export CARGO_PROFILE_RELEASE_CODEGEN_UNITS=1
-export CARGO_PROFILE_RELEASE_LTO="true"
-export CARGO_PROFILE_RELEASE_OPT_LEVEL="s"
-export CARGO_PROFILE_RELEASE_PANIC="abort"
prepare() {
default_prepare
- cargo fetch --locked
+ cargo fetch --target="$CTARGET" --locked
}
build() {
- cargo build --frozen --release
+ cargo auditable build --frozen --release
target/release/rbw gen-completions bash > rbw.bash
target/release/rbw gen-completions fish > rbw.fish
@@ -47,11 +41,11 @@ package() {
install -Dm644 rbw.bash \
"$pkgdir"/usr/share/bash-completion/completions/rbw
install -Dm644 rbw.fish \
- "$pkgdir"/usr/share/fish/completions/rbw.fish
+ "$pkgdir"/usr/share/fish/vendor_completions.d/rbw.fish
install -Dm644 _rbw \
"$pkgdir"/usr/share/zsh/site-functions/_rbw
}
sha512sums="
-98b1d17fa31a753a47673e34ed740785992d660c35827975a6c89638e479aeca381af0c83c43769179a3530f24f853fbab41e63eccfbf08902e7b8738703db2d rbw-1.4.3.tar.gz
+1ebe9837574b51e32c645b26c0c47f11fbcf1893adf76ada7b56e3d0b18271594f6047ba5f9acf9aa4d4ff970ad999b42febb070ec687766c035cc5a39748f8b rbw-1.9.0.tar.gz
"
diff --git a/testing/rclone-browser/APKBUILD b/testing/rclone-browser/APKBUILD
index 69a8918a1f9..bbbdba626bd 100644
--- a/testing/rclone-browser/APKBUILD
+++ b/testing/rclone-browser/APKBUILD
@@ -2,11 +2,12 @@
# Maintainer: Thomas Kienlen <kommander@laposte.net>
pkgname=rclone-browser
pkgver=1.8.0
-pkgrel=0
+pkgrel=1
pkgdesc="Simple cross-platform GUI for rclone"
url="https://github.com/kapitainsky/RcloneBrowser"
# riscv64 blocked by binutils-gold -> rclone
-arch="all !riscv64"
+# s390x blocked by rclone -> gh/cronokirby/saferith#51
+arch="all !riscv64 !s390x"
license="MIT"
depends="rclone"
makedepends="cmake qt5-qttools-dev qt5-qtdeclarative-dev"
diff --git a/testing/rcon-cli/APKBUILD b/testing/rcon-cli/APKBUILD
new file mode 100644
index 00000000000..5554af8d195
--- /dev/null
+++ b/testing/rcon-cli/APKBUILD
@@ -0,0 +1,24 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=rcon-cli
+pkgver=1.6.2
+pkgrel=3
+pkgdesc="A little RCON cli based on james4k's RCON library for golang"
+url="https://github.com/itzg/rcon-cli"
+arch="all"
+license="Apache-2.0"
+makedepends="go"
+source="$pkgname-$pkgver.tar.gz::https://github.com/itzg/rcon-cli/archive/refs/tags/$pkgver.tar.gz"
+options="!check" # no tests
+
+build() {
+ go build .
+}
+
+package() {
+ install -Dm755 "$pkgname" -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+4dd03870b134228008b4fba2363fd159992e9c8fea8d912f8c953977fe4f2a9d8afd2d5a7eade9606f6e41ce95e9c0384cc2a12517cda7291b60ecaddc763f80 rcon-cli-1.6.2.tar.gz
+"
diff --git a/testing/rcs/APKBUILD b/testing/rcs/APKBUILD
deleted file mode 100644
index 6c79e4ccc6c..00000000000
--- a/testing/rcs/APKBUILD
+++ /dev/null
@@ -1,29 +0,0 @@
-# Contributor: Valery Kartel <valery.kartel@gmail.com>
-# Maintainer: Valery Kartel <valery.kartel@gmail.com>
-pkgname=rcs
-pkgver=5.10.1
-pkgrel=0
-pkgdesc="Revision Control System"
-url="https://www.gnu.org/software/rcs"
-arch="all"
-license="GPL-3.0-or-later"
-depends="diffutils"
-subpackages="$pkgname-doc"
-source="https://ftp.gnu.org/gnu/rcs/rcs-$pkgver.tar.lz"
-
-build() {
- ./configure \
- CFLAGS="-std=c11" \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-4d3755d704a05da8582acb78a83845885f34b3144af6d19c568e6707831563b077ec5603a12f5d4de6ec583d0886d3a8ccc7ee0e1f10070f9e6de142198cd530 rcs-5.10.1.tar.lz
-"
diff --git a/testing/rdedup/APKBUILD b/testing/rdedup/APKBUILD
index 3392d92ec11..5085cfbe694 100644
--- a/testing/rdedup/APKBUILD
+++ b/testing/rdedup/APKBUILD
@@ -2,16 +2,18 @@
# Maintainer:
pkgname=rdedup
pkgver=3.2.1
-pkgrel=1
+pkgrel=4
pkgdesc="Data deduplication with compression and public key encryption"
url="https://github.com/dpc/rdedup"
arch="x86_64 armv7 armhf aarch64 x86 ppc64le" # limited by cargo
license="MPL-2.0"
-makedepends="cargo clang-dev libsodium-dev openssl-dev xz-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/dpc/rdedup/archive/v$pkgver.tar.gz"
+makedepends="cargo clang-dev libsodium-dev openssl-dev>3 xz-dev cargo-auditable"
+source="$pkgname-$pkgver.tar.gz::https://github.com/dpc/rdedup/archive/v$pkgver.tar.gz
+ getrandom-0.2.10.patch
+ "
build() {
- cargo build --release --locked
+ cargo auditable build --release --locked
}
check() {
@@ -19,10 +21,11 @@ check() {
}
package() {
- cargo install --locked --path . --root="$pkgdir/usr"
+ cargo auditable install --locked --path . --root="$pkgdir/usr"
rm "$pkgdir"/usr/.crates*
}
sha512sums="
375265eab7c133000682fd8bf6bf023d69042571a737e707671874a9c5bada4c05742fd397207661f0c8334f0818e8a52707c412ca5cbec636469f6d9c7448c9 rdedup-3.2.1.tar.gz
+216c9f6111406d2c2c18a2bdbe25678d32f22da7daf2eeff67a1f179e3b40b92b205652f4d8362b33246d50bb29540947138533a9f5bd13c60cb5d9da53edd02 getrandom-0.2.10.patch
"
diff --git a/testing/rdedup/getrandom-0.2.10.patch b/testing/rdedup/getrandom-0.2.10.patch
new file mode 100644
index 00000000000..b290c59faae
--- /dev/null
+++ b/testing/rdedup/getrandom-0.2.10.patch
@@ -0,0 +1,61 @@
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -441,13 +441,13 @@
+
+ [[package]]
+ name = "getrandom"
+-version = "0.2.3"
++version = "0.2.10"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "7fcd999463524c52659517fe2cea98493cfe485d10565e7b0fb07dbba7ad2753"
++checksum = "be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427"
+ dependencies = [
+ "cfg-if 1.0.0",
+ "libc",
+- "wasi 0.10.2+wasi-snapshot-preview1",
++ "wasi 0.11.0+wasi-snapshot-preview1",
+ ]
+
+ [[package]]
+@@ -566,9 +566,9 @@
+
+ [[package]]
+ name = "libc"
+-version = "0.2.98"
++version = "0.2.149"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "320cfe77175da3a483efed4bc0adc1968ca050b098ce4f2f1c13a56626128790"
++checksum = "a08173bc88b7955d1b3145aa561539096c421ac8debde8cbc3612ec635fee29b"
+
+ [[package]]
+ name = "libsodium-sys"
+@@ -873,7 +873,7 @@
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "d34f1408f55294453790c48b2f1ebbb1c5b4b7563eb1f418bcfcfdbb06ebb4e7"
+ dependencies = [
+- "getrandom 0.2.3",
++ "getrandom 0.2.10",
+ ]
+
+ [[package]]
+@@ -967,7 +967,7 @@
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "528532f3d801c87aec9def2add9ca802fe569e44a544afe633765267840abe64"
+ dependencies = [
+- "getrandom 0.2.3",
++ "getrandom 0.2.10",
+ "redox_syscall",
+ ]
+
+@@ -1425,9 +1425,9 @@
+
+ [[package]]
+ name = "wasi"
+-version = "0.10.2+wasi-snapshot-preview1"
++version = "0.11.0+wasi-snapshot-preview1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "fd6fbd9a79829dd1ad0cc20627bf1ed606756a7f77edff7b66b7064f9cb327c6"
++checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
+
+ [[package]]
+ name = "winapi"
diff --git a/testing/rdma-core/APKBUILD b/testing/rdma-core/APKBUILD
deleted file mode 100644
index fb81fbf1efb..00000000000
--- a/testing/rdma-core/APKBUILD
+++ /dev/null
@@ -1,39 +0,0 @@
-# Contributor: psykose <alice@ayaya.dev>
-# Maintainer: psykose <alice@ayaya.dev>
-pkgname=rdma-core
-pkgver=40.0
-pkgrel=0
-pkgdesc="RDMA core userspace libraries and daemons"
-url="https://github.com/linux-rdma/rdma-core"
-license="GPL-2.0-only OR BSD-2-Clause"
-arch="all !s390x !riscv64" # rv64 textrels, s390x ftbfs
-options="!check" # tests are for installation
-makedepends="
- cmake
- eudev-dev
- libdrm-dev
- libnl3-dev
- py3-docutils
- samurai
- "
-subpackages="$pkgname-libs $pkgname-dev $pkgname-doc $pkgname-openrc"
-source="https://github.com/linux-rdma/rdma-core/releases/download/v$pkgver/rdma-core-$pkgver.tar.gz"
-
-build() {
- cmake -B build -G Ninja \
- -DCMAKE_VERBOSE_MAKEFILE=ON \
- -DCMAKE_INSTALL_SYSCONFDIR=/etc \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DCMAKE_BUILD_TYPE=RelWithDebInfo
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
- rm -rf "$pkgdir"/usr/lib/systemd
-}
-
-sha512sums="
-d1e377f1db30deb44188b3d800973969d69b9b5a5d10f4ad4ac3398e9f19752a78f56d535266040b4f82185856b88e370eec2e4b877f896f25c95ffc5bea72b4 rdma-core-40.0.tar.gz
-"
diff --git a/testing/rdrview/APKBUILD b/testing/rdrview/APKBUILD
new file mode 100644
index 00000000000..2c5d98143a6
--- /dev/null
+++ b/testing/rdrview/APKBUILD
@@ -0,0 +1,28 @@
+# Contributor: Sergiy Stupar <owner@sestolab.pp.ua>
+# Maintainer: Sergiy Stupar <owner@sestolab.pp.ua>
+pkgname=rdrview
+pkgver=0.1.1
+pkgrel=0
+pkgdesc="Command line tool to extract the main content from a webpage"
+url="https://github.com/eafer/rdrview"
+arch="all"
+license="Apache-2.0"
+makedepends="libxml2-dev curl-dev libseccomp-dev"
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/eafer/rdrview/archive/v$pkgver.tar.gz
+ curl-7.85.0-CURLOPT_PROTOCOLS-deprecation.patch
+ "
+options="!check" # tests are quite involved and have a bunch of requirements
+
+build() {
+ make
+}
+
+package() {
+ make PREFIX=/usr DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+49a3f2f7ce1937ff4fdad67823763ab5ac57d1a9dce71ac05701a7c22454da989758c74b87f81bf9f07704690be3435d740ae33a8510b8579e76068b69a6119d rdrview-0.1.1.tar.gz
+6890f2b7b90251d2fe5479668defa911f769e35c136b818c4cc44821d429c284d8ef1b6d781f898ee6caf4ba3c34f440647a96f486dc0c23bbc8c93c848bff65 curl-7.85.0-CURLOPT_PROTOCOLS-deprecation.patch
+"
diff --git a/testing/rdrview/curl-7.85.0-CURLOPT_PROTOCOLS-deprecation.patch b/testing/rdrview/curl-7.85.0-CURLOPT_PROTOCOLS-deprecation.patch
new file mode 100644
index 00000000000..8f0eb3b4a35
--- /dev/null
+++ b/testing/rdrview/curl-7.85.0-CURLOPT_PROTOCOLS-deprecation.patch
@@ -0,0 +1,24 @@
+--- a/src/rdrview.c
++++ b/src/rdrview.c
+@@ -228,7 +228,6 @@ static void url_to_file(FILE *file)
+ {
+ CURL *curl;
+ CURLcode res;
+- long protocols;
+
+ curl = curl_easy_init();
+ if (!curl)
+@@ -239,8 +238,12 @@ static void url_to_file(FILE *file)
+ fatal();
+
+ /* I don't expect any other protocols, so be safe */
+- protocols = CURLPROTO_HTTP | CURLPROTO_HTTPS;
++ #if CURL_AT_LEAST_VERSION(7, 85, 0)
++ if (curl_easy_setopt(curl, CURLOPT_PROTOCOLS_STR, "HTTPS,HTTP"))
++ #else
++ long protocols = CURLPROTO_HTTP | CURLPROTO_HTTPS;
+ if (curl_easy_setopt(curl, CURLOPT_PROTOCOLS, protocols))
++ #endif
+ fatal();
+
+ /* Enable automatic decompression */
diff --git a/testing/reaction/APKBUILD b/testing/reaction/APKBUILD
new file mode 100644
index 00000000000..6e7766c0de7
--- /dev/null
+++ b/testing/reaction/APKBUILD
@@ -0,0 +1,49 @@
+# Contributor: Guy Godfroy <guy.godfroy@gugod.fr>
+# Maintainer: Guy Godfroy <guy.godfroy@gugod.fr>
+pkgname=reaction
+pkgver=1.3.0
+pkgrel=2
+pkgdesc="Logs scanner for event triggering"
+url="https://framagit.org/ppom/reaction"
+license="AGPL-3.0-or-later"
+arch="all"
+makedepends="go gcc"
+#install="$pkgname.pre-install $pkgname.pre-upgrade"
+subpackages="$pkgname-openrc $pkgname-tools"
+source="$pkgname-$pkgver.tar.gz::https://framagit.org/ppom/reaction/-/archive/v$pkgver/reaction-v$pkgver.tar.gz
+ reaction.initd
+ reaction.confd
+ reaction.yml
+ "
+options="net !check" # check needs a postgres instance
+builddir="$srcdir/$pkgname-v$pkgver"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ go build -v -o reaction -buildvcs=false -ldflags "-s -X main.version=$pkgver" .
+ make ip46tables
+ make nft46
+}
+
+package() {
+ install -Dm755 reaction "$pkgdir"/usr/bin/reaction
+ install -Dm755 "$srcdir"/reaction.initd "$pkgdir"/etc/init.d/reaction
+ install -Dm644 "$srcdir"/reaction.confd "$pkgdir"/etc/conf.d/reaction
+ install -Dm644 "$srcdir"/reaction.yml "$pkgdir"/etc/reaction.yml
+}
+
+tools() {
+ pkgdesc="Tools for use by Reaction"
+ install -Dm755 "$builddir"/ip46tables "$subpkgdir"/usr/bin/ip46tables
+ install -Dm755 "$builddir"/nft46 "$subpkgdir"/usr/bin/nft46
+}
+
+sha512sums="
+d7f4e3a0d800e33c13dd508be77a2e6232a155e8b038439b288aa3531c6664920ca7d2fe960dc918c7cea5c770aac6a7ace8be350e032e9a30014b3afd215e2e reaction-1.3.0.tar.gz
+c2473cf3902ec42c045cd5f748ce27937fe1cb99e8e83e4920bd4ec10554c70339478d5756909d54889ed8eb0b8ba2bfe1307ba3be5e0e12a1c67895c82df606 reaction.initd
+99e0fa2b72ad3e5793b1d99b7ca4a53ac4079afa1978f51897435b2660b97871f128b3038388f42e9fdc7c3d07a077aab1e9bd78c91b61b8c4b7b05dac1cce04 reaction.confd
+abca80f725b14ec9d8f0c46c31658d16448ca5cc732b8c8d069c29cfb67b92abf571619a5152157dd8fc8bb44192912c698e46df9a1f18f851e20dd23123a58a reaction.yml
+"
diff --git a/testing/reaction/reaction.confd b/testing/reaction/reaction.confd
new file mode 100644
index 00000000000..fff5e11a5e3
--- /dev/null
+++ b/testing/reaction/reaction.confd
@@ -0,0 +1,4 @@
+# /etc/conf.d/reaction
+
+CONFIG="/etc/reaction.yml"
+ARGS=""
diff --git a/testing/reaction/reaction.initd b/testing/reaction/reaction.initd
new file mode 100755
index 00000000000..3e5bc5db5ee
--- /dev/null
+++ b/testing/reaction/reaction.initd
@@ -0,0 +1,14 @@
+#!/sbin/openrc-run
+supervisor=supervise-daemon
+
+command="/usr/bin/reaction"
+command_args="start -c $CONFIG $ARGS"
+command_background="yes"
+command_user="root"
+
+pidfile="/var/run/${SVCNAME}.pid"
+
+depend() {
+ need net
+ after firewall
+}
diff --git a/testing/reaction/reaction.yml b/testing/reaction/reaction.yml
new file mode 100644
index 00000000000..4a796f0e0b6
--- /dev/null
+++ b/testing/reaction/reaction.yml
@@ -0,0 +1,95 @@
+---
+# Note for Alpine Linux users:
+# This default configuration uses the program ip46tables.
+# To install it, simply run:
+# apk add reaction-tools
+
+# definitions are just a place to put chunks of conf you want to reuse in another place
+# using YAML anchors `&name` and pointers `*name`
+# definitions are not readed by reaction
+definitions:
+ - &iptablesban [ 'ip46tables', '-w', '-A', 'reaction', '-s', '<ip>', '-j', 'DROP' ]
+ - &iptablesunban [ 'ip46tables', '-w', '-D', 'reaction', '-s', '<ip>', '-j', 'DROP' ]
+# ip46tables is a minimal C program (only POSIX dependencies) present as a subdirectory.
+# it permits to handle both ipv4/iptables and ipv6/ip6tables commands
+
+# patterns are substitued in regexes.
+# when a filter performs an action, it replaces the found pattern
+patterns:
+ ip:
+ # reaction regex syntax is defined here: https://github.com/google/re2/wiki/Syntax
+ regex: '(?:(?:[0-9]{1,3}\.){3}[0-9]{1,3})|(?:[0-9a-fA-F:]{2,90})'
+ ignore:
+ - 127.0.0.1
+ - ::1
+
+# Those commands will be executed in order at start, before everything else
+start:
+ - [ 'ip46tables', '-w', '-N', 'reaction' ]
+ - [ 'ip46tables', '-w', '-I', 'INPUT', '-p', 'all', '-j', 'reaction' ]
+
+# Those commands will be executed in order at stop, after everything else
+stop:
+ - [ 'ip46tables', '-w,', '-D', 'INPUT', '-p', 'all', '-j', 'reaction' ]
+ - [ 'ip46tables', '-w', '-F', 'reaction' ]
+ - [ 'ip46tables', '-w', '-X', 'reaction' ]
+
+# streams are commands
+# they are run and their ouptut is captured
+# *example:* `tail -f /var/log/nginx/access.log`
+# their output will be used by one or more filters
+streams:
+ # streams have a user-defined name
+ ssh:
+ # note that if the command is not in environment's `PATH`
+ # its full path must be given.
+ cmd: [ 'tail', '-f', '/var/log/auth.log' ]
+ # filters run actions when they match regexes on a stream
+ filters:
+ # filters have a user-defined name
+ failedlogin:
+ # reaction's regex syntax is defined here: https://github.com/google/re2/wiki/Syntax
+ regex:
+ # <ip> is predefined in the patterns section
+ # ip's regex is inserted in the following regex
+ - 'authentication failure;.*rhost=<ip>'
+ - 'Failed password for .* from <ip>'
+ - 'Connection reset by authenticating user .* <ip>'
+ # if retry and retryperiod are defined,
+ # the actions will only take place if a same pattern is
+ # found `retry` times in a `retryperiod` interval
+ retry: 3
+ # format is defined here: https://pkg.go.dev/time#ParseDuration
+ retryperiod: 6h
+ # actions are run by the filter when regexes are matched
+ actions:
+ # actions have a user-defined name
+ ban:
+ # YAML substitutes *reference by the value anchored at &reference
+ cmd: *iptablesban
+ unban:
+ cmd: *iptablesunban
+ # if after is defined, the action will not take place immediately, but after a specified duration
+ # same format as retryperiod
+ after: 48h
+ # let's say reaction is quitting. does it run all those pending commands which had an `after` duration set?
+ # if you want reaction to run those pending commands before exiting, you can set this:
+ # onexit: true
+ # (defaults to false)
+ # here it is not useful because we will flush and delete the chain containing the bans anyway
+ # (with the stop commands)
+
+# persistence
+# tldr; when an `after` action is set in a filter, such filter acts as a 'jail',
+# which is persisted after reboots.
+#
+# when a filter is triggered, there are 2 flows:
+#
+# if none of its actions have an `after` directive set:
+# no action will be replayed.
+#
+# else (if at least one action has an `after` directive set):
+# if reaction stops while `after` actions are pending:
+# and reaction starts again while those actions would still be pending:
+# reaction executes the past actions (actions without after or with then+after < now)
+# and plans the execution of future actions (actions with then+after > now)
diff --git a/testing/read-it-later/0001-Cargo-Update-the-glib-dependencies.patch b/testing/read-it-later/0001-Cargo-Update-the-glib-dependencies.patch
deleted file mode 100644
index 7a5898139bf..00000000000
--- a/testing/read-it-later/0001-Cargo-Update-the-glib-dependencies.patch
+++ /dev/null
@@ -1,5911 +0,0 @@
-From 73a641861fb7151410f783acae7824dc8ce89bd9 Mon Sep 17 00:00:00 2001
-From: Alistair Francis <alistair@alistair23.me>
-Date: Tue, 24 Aug 2021 21:12:46 +1000
-Subject: [PATCH 1/4] Cargo: Update the glib dependencies
-
-Update libhandy to 0.8 to allow using libhandy 1.0. In order for this to
-build we also update the glib and gtk dependencies.
-
-Signed-off-by: Alistair Francis <alistair@alistair23.me>
----
- Cargo.lock | 3408 +++++++++++++++++-----------
- Cargo.toml | 21 +-
- data/resources/ui/articles_list.ui | 4 +-
- data/resources/ui/login.ui.in | 14 +-
- data/resources/ui/settings.ui | 10 +-
- data/resources/ui/window.ui.in | 4 +-
- meson.build | 2 +-
- src/application.rs | 28 +-
- src/database.rs | 2 +-
- src/main.rs | 5 +-
- src/meson.build | 1 -
- src/models/article.rs | 2 +-
- src/models/client_manager.rs | 2 +-
- src/models/object_wrapper.rs | 74 +-
- src/models/preview_image.rs | 4 +-
- src/settings/settings_manager.rs | 21 +-
- src/static_resources.rs.in | 2 +-
- src/views/articles_list.rs | 4 +-
- src/widgets/articles/index.rs | 23 +-
- src/widgets/articles/list.rs | 10 +-
- src/widgets/articles/preview.rs | 14 +-
- src/widgets/articles/row.rs | 2 +-
- src/widgets/login.rs | 24 +-
- src/widgets/settings.rs | 9 +-
- src/widgets/window.rs | 66 +-
- src/window_state.rs | 34 -
- 26 files changed, 2247 insertions(+), 1543 deletions(-)
- delete mode 100644 src/window_state.rs
-
-diff --git a/Cargo.lock b/Cargo.lock
-index db14929..f74e3e9 100644
---- a/Cargo.lock
-+++ b/Cargo.lock
-@@ -1,2668 +1,3446 @@
- # This file is automatically @generated by Cargo.
- # It is not intended for manual editing.
-+version = 3
-+
- [[package]]
--name = "aes"
-+name = "aead"
- version = "0.3.2"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "7fc95d1bdb8e6666b2b217308eeeb09f2d6728d104be3e31916cc74d15420331"
-+dependencies = [
-+ "generic-array",
-+]
-+
-+[[package]]
-+name = "aes"
-+version = "0.6.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "884391ef1066acaa41e766ba8f596341b96e93ce34f9a43e7d24bf0a0eaf0561"
-+dependencies = [
-+ "aes-soft",
-+ "aesni",
-+ "cipher",
-+]
-+
-+[[package]]
-+name = "aes-gcm"
-+version = "0.8.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "5278b5fabbb9bd46e24aa69b2fdea62c99088e0a950a9be40e3e0101298f88da"
- dependencies = [
-- "aes-soft 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
-- "aesni 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "block-cipher-trait 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "aead",
-+ "aes",
-+ "cipher",
-+ "ctr",
-+ "ghash",
-+ "subtle",
- ]
-
- [[package]]
- name = "aes-soft"
--version = "0.3.3"
-+version = "0.6.4"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "be14c7498ea50828a38d0e24a765ed2effe92a705885b57d029cd67d45744072"
- dependencies = [
-- "block-cipher-trait 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "opaque-debug 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cipher",
-+ "opaque-debug",
- ]
-
- [[package]]
- name = "aesni"
--version = "0.6.0"
-+version = "0.10.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ea2e11f5e94c2f7d386164cc2aa1f97823fed6f259e486940a71c174dd01b0ce"
- dependencies = [
-- "block-cipher-trait 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "opaque-debug 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cipher",
-+ "opaque-debug",
- ]
-
- [[package]]
- name = "aho-corasick"
--version = "0.7.6"
-+version = "0.7.18"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "1e37cfd5e7657ada45f742d6e99ca5788580b5c529dc78faf11ece6dc702656f"
- dependencies = [
-- "memchr 2.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "memchr",
- ]
-
- [[package]]
- name = "ammonia"
--version = "2.1.2"
-+version = "3.1.2"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "2e445c26125ff80316eaea16e812d717b147b82a68682bd4730f74d4845c8b35"
- dependencies = [
-- "html5ever 0.23.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "maplit 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
-- "tendril 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "html5ever 0.25.1",
-+ "lazy_static",
-+ "maplit",
-+ "markup5ever_rcdom",
-+ "matches",
-+ "tendril",
-+ "url",
- ]
-
- [[package]]
- name = "anyhow"
--version = "1.0.31"
-+version = "1.0.43"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "28ae2b3dec75a406790005a200b1bd89785afc02517a00ca99ecfe093ee9e6cf"
-
- [[package]]
--name = "async-std"
-+name = "async-channel"
-+version = "1.6.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "2114d64672151c0c5eaa5e131ec84a74f06e1e559830dabba01ca30605d66319"
-+dependencies = [
-+ "concurrent-queue",
-+ "event-listener",
-+ "futures-core",
-+]
-+
-+[[package]]
-+name = "async-executor"
-+version = "1.4.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "871f9bb5e0a22eeb7e8cf16641feb87c9dc67032ccf8ff49e772eb9941d3a965"
-+dependencies = [
-+ "async-task",
-+ "concurrent-queue",
-+ "fastrand",
-+ "futures-lite",
-+ "once_cell",
-+ "slab",
-+]
-+
-+[[package]]
-+name = "async-global-executor"
-+version = "2.0.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "9586ec52317f36de58453159d48351bc244bc24ced3effc1fce22f3d48664af6"
-+dependencies = [
-+ "async-channel",
-+ "async-executor",
-+ "async-io",
-+ "async-mutex",
-+ "blocking",
-+ "futures-lite",
-+ "num_cpus",
-+ "once_cell",
-+]
-+
-+[[package]]
-+name = "async-io"
-+version = "1.6.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "a811e6a479f2439f0c04038796b5cfb3d2ad56c230e0f2d3f7b04d68cfee607b"
-+dependencies = [
-+ "concurrent-queue",
-+ "futures-lite",
-+ "libc",
-+ "log",
-+ "once_cell",
-+ "parking",
-+ "polling",
-+ "slab",
-+ "socket2",
-+ "waker-fn",
-+ "winapi",
-+]
-+
-+[[package]]
-+name = "async-lock"
-+version = "2.4.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e6a8ea61bf9947a1007c5cada31e647dbc77b103c679858150003ba697ea798b"
-+dependencies = [
-+ "event-listener",
-+]
-+
-+[[package]]
-+name = "async-mutex"
- version = "1.4.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "479db852db25d9dbf6204e6cb6253698f175c15726470f78af0d918e99d6156e"
- dependencies = [
-- "async-task 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "crossbeam-channel 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "crossbeam-deque 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "crossbeam-utils 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "futures-core 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "futures-io 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "futures-timer 2.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "kv-log-macro 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-- "memchr 2.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "mio 0.6.21 (registry+https://github.com/rust-lang/crates.io-index)",
-- "mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)",
-- "num_cpus 1.11.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "once_cell 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "pin-project-lite 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "pin-utils 0.1.0-alpha.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "event-listener",
-+]
-+
-+[[package]]
-+name = "async-std"
-+version = "1.9.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d9f06685bad74e0570f5213741bea82158279a4103d988e57bfada11ad230341"
-+dependencies = [
-+ "async-channel",
-+ "async-global-executor",
-+ "async-io",
-+ "async-lock",
-+ "crossbeam-utils 0.8.5",
-+ "futures-channel",
-+ "futures-core",
-+ "futures-io",
-+ "futures-lite",
-+ "gloo-timers",
-+ "kv-log-macro",
-+ "log",
-+ "memchr",
-+ "num_cpus",
-+ "once_cell",
-+ "pin-project-lite",
-+ "pin-utils",
-+ "slab",
-+ "wasm-bindgen-futures",
- ]
-
- [[package]]
- name = "async-task"
--version = "1.0.0"
-+version = "4.0.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e91831deabf0d6d7ec49552e489aed63b7456a7a3c46cff62adad428110b0af0"
-+
-+[[package]]
-+name = "async-trait"
-+version = "0.1.51"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "44318e776df68115a881de9a8fd1b9e53368d7a4a5ce4cc48517da3393233a5e"
- dependencies = [
-- "crossbeam-utils 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "proc-macro2",
-+ "quote",
-+ "syn",
- ]
-
- [[package]]
- name = "atk"
--version = "0.8.0"
-+version = "0.14.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "a83b21d2aa75e464db56225e1bda2dd5993311ba1095acaa8fa03d1ae67026ba"
- dependencies = [
-- "atk-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "glib 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "glib-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gobject-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "atk-sys",
-+ "bitflags",
-+ "glib",
-+ "libc",
- ]
-
- [[package]]
- name = "atk-sys"
--version = "0.9.1"
-+version = "0.14.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "badcf670157c84bb8b1cf6b5f70b650fed78da2033c9eed84c4e49b11cbe83ea"
- dependencies = [
-- "glib-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gobject-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-- "pkg-config 0.3.17 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "glib-sys 0.14.0",
-+ "gobject-sys 0.14.0",
-+ "libc",
-+ "system-deps 3.2.0",
- ]
-
-+[[package]]
-+name = "atomic-waker"
-+version = "1.0.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "065374052e7df7ee4047b1160cca5e1467a12351a40b3da123c870ba0b8eda2a"
-+
- [[package]]
- name = "atty"
--version = "0.2.13"
-+version = "0.2.14"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8"
- dependencies = [
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-- "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "hermit-abi",
-+ "libc",
-+ "winapi",
- ]
-
- [[package]]
- name = "autocfg"
- version = "0.1.7"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "1d49d90015b3c36167a20fe2810c5cd875ad504b39cff3d4eae7977e6b7c1cb2"
-
- [[package]]
--name = "backtrace"
--version = "0.3.40"
-+name = "autocfg"
-+version = "1.0.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
--dependencies = [
-- "backtrace-sys 0.1.32 (registry+https://github.com/rust-lang/crates.io-index)",
-- "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-- "rustc-demangle 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
--]
-+checksum = "cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a"
-
- [[package]]
--name = "backtrace-sys"
--version = "0.1.32"
-+name = "base-x"
-+version = "0.2.8"
- source = "registry+https://github.com/rust-lang/crates.io-index"
--dependencies = [
-- "cc 1.0.48 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
--]
-+checksum = "a4521f3e3d031370679b3b140beb36dfe4801b09ac77e30c61941f97df3ef28b"
-
- [[package]]
--name = "bitflags"
--version = "1.2.1"
-+name = "base64"
-+version = "0.13.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "904dfeac50f3cdaba28fc6f57fdcddb75f49ed61346676a78c4ffe55877802fd"
-
- [[package]]
--name = "block-buffer"
--version = "0.7.3"
-+name = "bitflags"
-+version = "1.3.2"
- source = "registry+https://github.com/rust-lang/crates.io-index"
--dependencies = [
-- "block-padding 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
-- "byte-tools 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "generic-array 0.12.3 (registry+https://github.com/rust-lang/crates.io-index)",
--]
-+checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
-
- [[package]]
--name = "block-cipher-trait"
--version = "0.6.2"
-+name = "block-buffer"
-+version = "0.9.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4"
- dependencies = [
-- "generic-array 0.12.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "generic-array",
- ]
-
- [[package]]
- name = "block-modes"
--version = "0.3.3"
-+version = "0.7.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "57a0e8073e8baa88212fb5823574c02ebccb395136ba9a164ab89379ec6072f0"
- dependencies = [
-- "block-cipher-trait 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "block-padding 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "block-padding",
-+ "cipher",
- ]
-
- [[package]]
- name = "block-padding"
--version = "0.1.5"
-+version = "0.2.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
--dependencies = [
-- "byte-tools 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
--]
-+checksum = "8d696c370c750c948ada61c69a0ee2cbbb9c50b1019ddb86d9317157a99c2cae"
-
- [[package]]
--name = "bumpalo"
--version = "3.2.1"
-+name = "blocking"
-+version = "1.0.2"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "c5e170dbede1f740736619b776d7251cb1b9095c435c34d8ca9f57fcd2f335e9"
-+dependencies = [
-+ "async-channel",
-+ "async-task",
-+ "atomic-waker",
-+ "fastrand",
-+ "futures-lite",
-+ "once_cell",
-+]
-
- [[package]]
--name = "byte-tools"
--version = "0.3.1"
-+name = "bumpalo"
-+version = "3.7.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "9c59e7af012c713f529e7a3ee57ce9b31ddd858d4b512923602f74608b009631"
-
- [[package]]
- name = "byteorder"
--version = "1.3.2"
-+version = "1.4.3"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610"
-
- [[package]]
- name = "bytes"
- version = "0.4.12"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "206fdffcfa2df7cbe15601ef46c813fce0965eb3286db6b56c583b814b51c81c"
- dependencies = [
-- "byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "iovec 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "byteorder",
-+ "iovec",
- ]
-
- [[package]]
- name = "bytes"
--version = "0.5.4"
-+version = "0.5.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "0e4cec68f03f32e44924783795810fa50a7035d8c8ebe78580ad7e6c703fba38"
-+
-+[[package]]
-+name = "bytes"
-+version = "1.0.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "b700ce4376041dcd0a327fd0097c41095743c4c8af8887265942faf1100bd040"
-+
-+[[package]]
-+name = "cache-padded"
-+version = "1.1.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "631ae5198c9be5e753e5cc215e1bd73c2b466a3565173db433f52bb9d3e66dba"
-
- [[package]]
- name = "cairo-rs"
--version = "0.8.0"
-+version = "0.14.3"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "f859ade407c19810ae920b4fafab92189ed312adad490d08fb16b5f49f1e2207"
- dependencies = [
-- "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "cairo-sys-rs 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "glib 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "glib-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gobject-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "bitflags",
-+ "cairo-sys-rs",
-+ "glib",
-+ "libc",
-+ "thiserror",
- ]
-
- [[package]]
- name = "cairo-sys-rs"
--version = "0.9.2"
-+version = "0.14.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d7c9c3928781e8a017ece15eace05230f04b647457d170d2d9641c94a444ff80"
- dependencies = [
-- "glib-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-- "pkg-config 0.3.17 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "glib-sys 0.14.0",
-+ "libc",
-+ "system-deps 3.2.0",
- ]
-
- [[package]]
- name = "cc"
--version = "1.0.48"
-+version = "1.0.69"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e70cc2f62c6ce1868963827bd677764c62d07c3d9a3e1fb1177ee1a9ab199eb2"
-+
-+[[package]]
-+name = "cfg-expr"
-+version = "0.8.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "b412e83326147c2bb881f8b40edfbf9905b9b8abaebd0e47ca190ba62fda8f0e"
-+dependencies = [
-+ "smallvec",
-+]
-
- [[package]]
- name = "cfg-if"
- version = "0.1.10"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
-+
-+[[package]]
-+name = "cfg-if"
-+version = "1.0.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
-
- [[package]]
- name = "chrono"
--version = "0.4.10"
-+version = "0.4.19"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "670ad68c9088c2a963aaa298cb369688cf3f9465ce5e2d4ca10e6e0098a1ce73"
- dependencies = [
-- "num-integer 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)",
-- "num-traits 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
-- "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
-- "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc",
-+ "num-integer",
-+ "num-traits",
-+ "serde",
-+ "time 0.1.44",
-+ "winapi",
-+]
-+
-+[[package]]
-+name = "cipher"
-+version = "0.2.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "12f8e7987cbd042a63249497f41aed09f8e65add917ea6566effbc56578d6801"
-+dependencies = [
-+ "generic-array",
- ]
-
- [[package]]
- name = "cloudabi"
- version = "0.0.3"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f"
- dependencies = [
-- "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "bitflags",
- ]
-
- [[package]]
--name = "crossbeam-channel"
--version = "0.4.0"
-+name = "concurrent-queue"
-+version = "1.2.2"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "30ed07550be01594c6026cff2a1d7fe9c8f683caa798e12b68694ac9e88286a3"
- dependencies = [
-- "crossbeam-utils 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cache-padded",
- ]
-
- [[package]]
--name = "crossbeam-deque"
--version = "0.7.2"
-+name = "const_fn"
-+version = "0.4.8"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "f92cfa0fd5690b3cf8c1ef2cabbd9b7ef22fa53cf5e1f92b05103f6d5d1cf6e7"
-+
-+[[package]]
-+name = "cookie"
-+version = "0.14.4"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "03a5d7b21829bc7b4bf4754a978a241ae54ea55a40f92bb20216e54096f4b951"
- dependencies = [
-- "crossbeam-epoch 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "crossbeam-utils 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "aes-gcm",
-+ "base64",
-+ "hkdf",
-+ "hmac",
-+ "percent-encoding",
-+ "rand 0.8.4",
-+ "sha2",
-+ "time 0.2.27",
-+ "version_check",
- ]
-
- [[package]]
--name = "crossbeam-epoch"
--version = "0.8.0"
-+name = "cpufeatures"
-+version = "0.1.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "66c99696f6c9dd7f35d486b9d04d7e6e202aa3e8c40d553f2fdf5e7e0c6a71ef"
-+dependencies = [
-+ "libc",
-+]
-+
-+[[package]]
-+name = "cpuid-bool"
-+version = "0.2.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "dcb25d077389e53838a8158c8e99174c5a9d902dee4904320db714f3c653ffba"
-+
-+[[package]]
-+name = "crossbeam-channel"
-+version = "0.4.4"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "b153fe7cbef478c567df0f972e02e6d736db11affe43dfc9c56a9374d1adfb87"
- dependencies = [
-- "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
-- "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-- "crossbeam-utils 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "memoffset 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
-- "scopeguard 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "crossbeam-utils 0.7.2",
-+ "maybe-uninit",
- ]
-
- [[package]]
- name = "crossbeam-utils"
--version = "0.6.6"
-+version = "0.7.2"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "c3c7c73a2d1e9fc0886a08b93e98eb643461230d5f1925e4036204d5f2e261a8"
- dependencies = [
-- "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-- "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "autocfg 1.0.1",
-+ "cfg-if 0.1.10",
-+ "lazy_static",
- ]
-
- [[package]]
- name = "crossbeam-utils"
--version = "0.7.0"
-+version = "0.8.5"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d82cfc11ce7f2c3faef78d8a684447b40d503d9681acebed6cb728d45940c4db"
- dependencies = [
-- "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
-- "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-- "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cfg-if 1.0.0",
-+ "lazy_static",
- ]
-
- [[package]]
- name = "crypto-mac"
--version = "0.7.0"
-+version = "0.10.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "bff07008ec701e8028e2ceb8f83f0e4274ee62bd2dbdc4fefff2e9a91824081a"
-+dependencies = [
-+ "generic-array",
-+ "subtle",
-+]
-+
-+[[package]]
-+name = "ctor"
-+version = "0.1.20"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "5e98e2ad1a782e33928b96fc3948e7c355e5af34ba4de7670fe8bac2a3b2006d"
-+dependencies = [
-+ "quote",
-+ "syn",
-+]
-+
-+[[package]]
-+name = "ctr"
-+version = "0.6.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "fb4a30d54f7443bf3d6191dcd486aca19e67cb3c49fa7a06a319966346707e7f"
- dependencies = [
-- "generic-array 0.12.3 (registry+https://github.com/rust-lang/crates.io-index)",
-- "subtle 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cipher",
- ]
-
- [[package]]
- name = "curl"
--version = "0.4.25"
-+version = "0.4.38"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "003cb79c1c6d1c93344c7e1201bb51c2148f24ec2bd9c253709d6b2efb796515"
- dependencies = [
-- "curl-sys 0.4.31+curl-7.70.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-- "openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "openssl-sys 0.9.53 (registry+https://github.com/rust-lang/crates.io-index)",
-- "schannel 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
-- "socket2 0.3.11 (registry+https://github.com/rust-lang/crates.io-index)",
-- "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "curl-sys",
-+ "libc",
-+ "openssl-probe",
-+ "openssl-sys",
-+ "schannel",
-+ "socket2",
-+ "winapi",
- ]
-
- [[package]]
- name = "curl-sys"
--version = "0.4.31+curl-7.70.0"
-+version = "0.4.45+curl-7.78.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "de9e5a72b1c744eb5dd20b2be4d7eb84625070bb5c4ab9b347b70464ab1e62eb"
- dependencies = [
-- "cc 1.0.48 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libnghttp2-sys 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libz-sys 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
-- "openssl-sys 0.9.53 (registry+https://github.com/rust-lang/crates.io-index)",
-- "pkg-config 0.3.17 (registry+https://github.com/rust-lang/crates.io-index)",
-- "vcpkg 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
-- "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cc",
-+ "libc",
-+ "libnghttp2-sys",
-+ "libz-sys",
-+ "openssl-sys",
-+ "pkg-config",
-+ "vcpkg",
-+ "winapi",
-+]
-+
-+[[package]]
-+name = "dashmap"
-+version = "4.0.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e77a43b28d0668df09411cb0bc9a8c2adc40f9a048afe863e05fd43251e8e39c"
-+dependencies = [
-+ "cfg-if 1.0.0",
-+ "num_cpus",
- ]
-
- [[package]]
- name = "dbus"
- version = "0.2.3"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "b4a0c10ea61042b7555729ab0608727bbbb06ce709c11e6047cfa4e10f6d052d"
- dependencies = [
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc",
- ]
-
- [[package]]
- name = "diesel"
--version = "1.4.3"
-+version = "1.4.7"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "bba51ca66f57261fd17cadf8b73e4775cc307d0521d855de3f5de91a8f074e0e"
- dependencies = [
-- "byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "chrono 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
-- "diesel_derives 1.4.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libsqlite3-sys 0.16.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "r2d2 0.8.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "byteorder",
-+ "chrono",
-+ "diesel_derives",
-+ "libsqlite3-sys",
-+ "r2d2",
- ]
-
- [[package]]
- name = "diesel_derives"
- version = "1.4.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "45f5098f628d02a7a0f68ddba586fb61e80edec3bdc1be3b921f4ceec60858d3"
- dependencies = [
-- "proc-macro2 1.0.17 (registry+https://github.com/rust-lang/crates.io-index)",
-- "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "syn 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "proc-macro2",
-+ "quote",
-+ "syn",
- ]
-
- [[package]]
- name = "diesel_migrations"
- version = "1.4.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "bf3cde8413353dc7f5d72fa8ce0b99a560a359d2c5ef1e5817ca731cd9008f4c"
- dependencies = [
-- "migrations_internals 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "migrations_macros 1.4.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "migrations_internals",
-+ "migrations_macros",
- ]
-
- [[package]]
- name = "digest"
--version = "0.8.1"
-+version = "0.9.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066"
- dependencies = [
-- "generic-array 0.12.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "generic-array",
- ]
-
- [[package]]
--name = "dtoa"
--version = "0.4.4"
-+name = "discard"
-+version = "1.0.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "212d0f5754cb6769937f4501cc0e67f4f4483c8d2c3e1e922ee9edbe4ab4c7c0"
-+
-+[[package]]
-+name = "either"
-+version = "1.6.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457"
-
- [[package]]
- name = "encoding_rs"
--version = "0.8.22"
-+version = "0.8.28"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "80df024fbc5ac80f87dfef0d9f5209a252f2a497f7f42944cff24d8253cac065"
- dependencies = [
-- "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cfg-if 1.0.0",
- ]
-
- [[package]]
- name = "env_logger"
- version = "0.6.2"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "aafcde04e90a5226a6443b7aabdb016ba2f8307c847d524724bd9b346dd1a2d3"
- dependencies = [
-- "atty 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)",
-- "humantime 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-- "regex 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "termcolor 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "atty",
-+ "humantime",
-+ "log",
-+ "regex",
-+ "termcolor",
- ]
-
- [[package]]
--name = "failure"
--version = "0.1.6"
-+name = "event-listener"
-+version = "2.5.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
--dependencies = [
-- "backtrace 0.3.40 (registry+https://github.com/rust-lang/crates.io-index)",
-- "failure_derive 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
--]
-+checksum = "f7531096570974c3a9dcf9e4b8e1cede1ec26cf5046219fb3b9d897503b9be59"
-
- [[package]]
--name = "failure_derive"
--version = "0.1.6"
-+name = "fastrand"
-+version = "1.5.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "b394ed3d285a429378d3b384b9eb1285267e7df4b166df24b7a6939a04dc392e"
- dependencies = [
-- "proc-macro2 1.0.17 (registry+https://github.com/rust-lang/crates.io-index)",
-- "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "syn 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
-- "synstructure 0.12.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "instant",
- ]
-
- [[package]]
--name = "fake-simd"
--version = "0.1.2"
-+name = "field-offset"
-+version = "0.3.4"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "1e1c54951450cbd39f3dbcf1005ac413b49487dabf18a720ad2383eccfeffb92"
-+dependencies = [
-+ "memoffset",
-+ "rustc_version 0.3.3",
-+]
-
- [[package]]
--name = "fnv"
--version = "1.0.6"
-+name = "flume"
-+version = "0.9.2"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "1bebadab126f8120d410b677ed95eee4ba6eb7c6dd8e34a5ec88a08050e26132"
-+dependencies = [
-+ "futures-core",
-+ "futures-sink",
-+ "spinning_top",
-+]
-
- [[package]]
--name = "fuchsia-cprng"
--version = "0.1.1"
-+name = "fnv"
-+version = "1.0.7"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
-
- [[package]]
--name = "fuchsia-zircon"
--version = "0.3.3"
-+name = "form_urlencoded"
-+version = "1.0.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "5fc25a87fa4fd2094bffb06925852034d90a17f0d1e05197d4956d3555752191"
- dependencies = [
-- "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "matches",
-+ "percent-encoding",
- ]
-
- [[package]]
--name = "fuchsia-zircon-sys"
--version = "0.3.3"
-+name = "fuchsia-cprng"
-+version = "0.1.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba"
-
- [[package]]
- name = "futf"
- version = "0.1.4"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "7c9c1ce3fa9336301af935ab852c437817d14cd33690446569392e65170aac3b"
- dependencies = [
-- "mac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "new_debug_unreachable 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "mac",
-+ "new_debug_unreachable",
- ]
-
- [[package]]
- name = "futures"
--version = "0.1.29"
-+version = "0.1.31"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "3a471a38ef8ed83cd6e40aa59c1ffe17db6855c18e3604d9c4ed8c08ebc28678"
-
- [[package]]
- name = "futures"
--version = "0.3.4"
-+version = "0.3.16"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "1adc00f486adfc9ce99f77d717836f0c5aa84965eb0b4f051f4e83f7cab53f8b"
- dependencies = [
-- "futures-channel 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "futures-core 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "futures-executor 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "futures-io 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "futures-sink 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "futures-task 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "futures-util 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "futures-channel",
-+ "futures-core",
-+ "futures-executor",
-+ "futures-io",
-+ "futures-sink",
-+ "futures-task",
-+ "futures-util",
- ]
-
- [[package]]
- name = "futures-channel"
--version = "0.3.4"
-+version = "0.3.16"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "74ed2411805f6e4e3d9bc904c95d5d423b89b3b25dc0250aa74729de20629ff9"
- dependencies = [
-- "futures-core 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "futures-sink 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "futures-core",
-+ "futures-sink",
- ]
-
- [[package]]
- name = "futures-core"
--version = "0.3.4"
-+version = "0.3.16"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "af51b1b4a7fdff033703db39de8802c673eb91855f2e0d47dcf3bf2c0ef01f99"
-
- [[package]]
- name = "futures-executor"
--version = "0.3.4"
-+version = "0.3.16"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "4d0d535a57b87e1ae31437b892713aee90cd2d7b0ee48727cd11fc72ef54761c"
- dependencies = [
-- "futures-core 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "futures-task 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "futures-util 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "num_cpus 1.11.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "futures-core",
-+ "futures-task",
-+ "futures-util",
-+ "num_cpus",
- ]
-
- [[package]]
- name = "futures-io"
--version = "0.3.4"
-+version = "0.3.16"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "0b0e06c393068f3a6ef246c75cdca793d6a46347e75286933e5e75fd2fd11582"
-
- [[package]]
--name = "futures-macro"
--version = "0.3.4"
-+name = "futures-lite"
-+version = "1.12.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "7694489acd39452c77daa48516b894c153f192c3578d5a839b62c58099fcbf48"
- dependencies = [
-- "proc-macro-hack 0.5.11 (registry+https://github.com/rust-lang/crates.io-index)",
-- "proc-macro2 1.0.17 (registry+https://github.com/rust-lang/crates.io-index)",
-- "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "syn 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "fastrand",
-+ "futures-core",
-+ "futures-io",
-+ "memchr",
-+ "parking",
-+ "pin-project-lite",
-+ "waker-fn",
- ]
-
- [[package]]
--name = "futures-sink"
--version = "0.3.4"
-+name = "futures-macro"
-+version = "0.3.16"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "c54913bae956fb8df7f4dc6fc90362aa72e69148e3f39041fbe8742d21e0ac57"
-+dependencies = [
-+ "autocfg 1.0.1",
-+ "proc-macro-hack",
-+ "proc-macro2",
-+ "quote",
-+ "syn",
-+]
-
- [[package]]
--name = "futures-task"
--version = "0.3.4"
-+name = "futures-sink"
-+version = "0.3.16"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "c0f30aaa67363d119812743aa5f33c201a7a66329f97d1a887022971feea4b53"
-
- [[package]]
--name = "futures-timer"
--version = "2.0.2"
-+name = "futures-task"
-+version = "0.3.16"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "bbe54a98670017f3be909561f6ad13e810d9a51f3f061b902062ca3da80799f2"
-
- [[package]]
- name = "futures-util"
--version = "0.3.4"
-+version = "0.3.16"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "67eb846bfd58e44a8481a00049e82c43e0ccb5d61f8dc071057cb19249dd4d78"
- dependencies = [
-- "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)",
-- "futures-channel 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "futures-core 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "futures-io 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "futures-macro 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "futures-sink 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "futures-task 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "memchr 2.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "pin-utils 0.1.0-alpha.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "proc-macro-hack 0.5.11 (registry+https://github.com/rust-lang/crates.io-index)",
-- "proc-macro-nested 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
-- "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "autocfg 1.0.1",
-+ "futures 0.1.31",
-+ "futures-channel",
-+ "futures-core",
-+ "futures-io",
-+ "futures-macro",
-+ "futures-sink",
-+ "futures-task",
-+ "memchr",
-+ "pin-project-lite",
-+ "pin-utils",
-+ "proc-macro-hack",
-+ "proc-macro-nested",
-+ "slab",
-+ "tokio-io",
- ]
-
- [[package]]
- name = "gcc"
- version = "0.3.55"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "8f5f3913fa0bfe7ee1fd8248b6b9f42a5af4b9d65ec2dd2c3c26132b950ecfc2"
-
- [[package]]
- name = "gdk"
--version = "0.12.0"
-+version = "0.14.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "679e22651cd15888e7acd01767950edca2ee9fcd6421fbf5b3c3b420d4e88bb0"
- dependencies = [
-- "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "cairo-rs 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "cairo-sys-rs 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gdk-pixbuf 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gdk-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gio 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gio-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "glib 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "glib-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gobject-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-- "pango 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "bitflags",
-+ "cairo-rs",
-+ "gdk-pixbuf",
-+ "gdk-sys",
-+ "gio",
-+ "glib",
-+ "libc",
-+ "pango",
- ]
-
- [[package]]
- name = "gdk-pixbuf"
--version = "0.8.0"
-+version = "0.14.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "534192cb8f01daeb8fab2c8d4baa8f9aae5b7a39130525779f5c2608e235b10f"
- dependencies = [
-- "gdk-pixbuf-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gio 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gio-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "glib 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "glib-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gobject-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "gdk-pixbuf-sys",
-+ "gio",
-+ "glib",
-+ "libc",
- ]
-
- [[package]]
- name = "gdk-pixbuf-sys"
--version = "0.9.1"
-+version = "0.14.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "f097c0704201fbc8f69c1762dc58c6947c8bb188b8ed0bc7e65259f1894fe590"
- dependencies = [
-- "gio-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "glib-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gobject-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-- "pkg-config 0.3.17 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "gio-sys 0.14.0",
-+ "glib-sys 0.14.0",
-+ "gobject-sys 0.14.0",
-+ "libc",
-+ "system-deps 3.2.0",
- ]
-
- [[package]]
- name = "gdk-sys"
--version = "0.9.1"
-+version = "0.14.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "0e091b3d3d6696949ac3b3fb3c62090e5bfd7bd6850bef5c3c5ea701de1b1f1e"
- dependencies = [
-- "cairo-sys-rs 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gdk-pixbuf-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gio-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "glib-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gobject-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-- "pango-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "pkg-config 0.3.17 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cairo-sys-rs",
-+ "gdk-pixbuf-sys",
-+ "gio-sys 0.14.0",
-+ "glib-sys 0.14.0",
-+ "gobject-sys 0.14.0",
-+ "libc",
-+ "pango-sys",
-+ "pkg-config",
-+ "system-deps 3.2.0",
- ]
-
- [[package]]
- name = "generic-array"
--version = "0.12.3"
-+version = "0.14.4"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "501466ecc8a30d1d3b7fc9229b122b2ce8ed6e9d9223f1138d4babb253e51817"
- dependencies = [
-- "typenum 1.11.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "typenum",
-+ "version_check",
-+]
-+
-+[[package]]
-+name = "getrandom"
-+version = "0.1.16"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce"
-+dependencies = [
-+ "cfg-if 1.0.0",
-+ "libc",
-+ "wasi 0.9.0+wasi-snapshot-preview1",
-+]
-+
-+[[package]]
-+name = "getrandom"
-+version = "0.2.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "7fcd999463524c52659517fe2cea98493cfe485d10565e7b0fb07dbba7ad2753"
-+dependencies = [
-+ "cfg-if 1.0.0",
-+ "libc",
-+ "wasi 0.10.0+wasi-snapshot-preview1",
- ]
-
- [[package]]
- name = "gettext-rs"
- version = "0.4.4"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "df454a42d8a718280c78666efe0707c120873736961ae91ead898f17ac66ce7c"
- dependencies = [
-- "gettext-sys 0.19.9 (registry+https://github.com/rust-lang/crates.io-index)",
-- "locale_config 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "gettext-sys",
-+ "locale_config",
- ]
-
- [[package]]
- name = "gettext-sys"
- version = "0.19.9"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e034c4ba5bb796730a6cc5eb0d654c16885006a7c3d6c6603581ed809434f153"
-+dependencies = [
-+ "cc",
-+]
-+
-+[[package]]
-+name = "ghash"
-+version = "0.3.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "97304e4cd182c3846f7575ced3890c53012ce534ad9114046b0a9e00bb30a375"
- dependencies = [
-- "cc 1.0.48 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "opaque-debug",
-+ "polyval",
- ]
-
- [[package]]
- name = "gio"
--version = "0.8.0"
-+version = "0.14.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "402a7057cd21d64bfa7ac027b344a7f50f677fb3308693df0e8c70fb55d29f0d"
-+dependencies = [
-+ "bitflags",
-+ "futures-channel",
-+ "futures-core",
-+ "futures-io",
-+ "gio-sys 0.14.0",
-+ "glib",
-+ "libc",
-+ "once_cell",
-+ "thiserror",
-+]
-+
-+[[package]]
-+name = "gio-sys"
-+version = "0.10.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "5e24fb752f8f5d2cf6bbc2c606fd2bc989c81c5e2fe321ab974d54f8b6344eac"
- dependencies = [
-- "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "futures-channel 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "futures-core 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "futures-io 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "futures-util 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gio-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "glib 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "glib-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gobject-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "glib-sys 0.10.1",
-+ "gobject-sys 0.10.0",
-+ "libc",
-+ "system-deps 1.3.2",
-+ "winapi",
- ]
-
- [[package]]
- name = "gio-sys"
--version = "0.9.1"
-+version = "0.14.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "c0a41df66e57fcc287c4bcf74fc26b884f31901ea9792ec75607289b456f48fa"
- dependencies = [
-- "glib-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gobject-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-- "pkg-config 0.3.17 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "glib-sys 0.14.0",
-+ "gobject-sys 0.14.0",
-+ "libc",
-+ "system-deps 3.2.0",
-+ "winapi",
- ]
-
- [[package]]
- name = "glib"
--version = "0.9.1"
-+version = "0.14.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "a8fb802e3798d75b415bea8f016eed88d50106ce82f1274e80f31d80cfd4b056"
-+dependencies = [
-+ "bitflags",
-+ "futures-channel",
-+ "futures-core",
-+ "futures-executor",
-+ "futures-task",
-+ "glib-macros",
-+ "glib-sys 0.14.0",
-+ "gobject-sys 0.14.0",
-+ "libc",
-+ "once_cell",
-+ "smallvec",
-+]
-+
-+[[package]]
-+name = "glib-macros"
-+version = "0.14.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "2aad66361f66796bfc73f530c51ef123970eb895ffba991a234fcf7bea89e518"
- dependencies = [
-- "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "futures-channel 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "futures-core 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "futures-executor 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "futures-task 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "futures-util 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "glib-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gobject-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "anyhow",
-+ "heck",
-+ "proc-macro-crate",
-+ "proc-macro-error",
-+ "proc-macro2",
-+ "quote",
-+ "syn",
- ]
-
- [[package]]
- name = "glib-sys"
--version = "0.9.1"
-+version = "0.10.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "c7e9b997a66e9a23d073f2b1abb4dbfc3925e0b8952f67efd8d9b6e168e4cdc1"
- dependencies = [
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-- "pkg-config 0.3.17 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc",
-+ "system-deps 1.3.2",
-+]
-+
-+[[package]]
-+name = "glib-sys"
-+version = "0.14.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "1c1d60554a212445e2a858e42a0e48cece1bd57b311a19a9468f70376cf554ae"
-+dependencies = [
-+ "libc",
-+ "system-deps 3.2.0",
-+]
-+
-+[[package]]
-+name = "gloo-timers"
-+version = "0.2.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "47204a46aaff920a1ea58b11d03dec6f704287d27561724a4631e450654a891f"
-+dependencies = [
-+ "futures-channel",
-+ "futures-core",
-+ "js-sys",
-+ "wasm-bindgen",
-+ "web-sys",
- ]
-
- [[package]]
- name = "gobject-sys"
--version = "0.9.1"
-+version = "0.10.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "952133b60c318a62bf82ee75b93acc7e84028a093e06b9e27981c2b6fe68218c"
- dependencies = [
-- "glib-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-- "pkg-config 0.3.17 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "glib-sys 0.10.1",
-+ "libc",
-+ "system-deps 1.3.2",
-+]
-+
-+[[package]]
-+name = "gobject-sys"
-+version = "0.14.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "aa92cae29759dae34ab5921d73fff5ad54b3d794ab842c117e36cafc7994c3f5"
-+dependencies = [
-+ "glib-sys 0.14.0",
-+ "libc",
-+ "system-deps 3.2.0",
- ]
-
- [[package]]
- name = "gtk"
--version = "0.8.0"
-+version = "0.14.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "6603bb79ded6ac6f3bac203794383afa8b1d6a8656d34a93a88f0b22826cd46c"
- dependencies = [
-- "atk 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "cairo-rs 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "cairo-sys-rs 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "cc 1.0.48 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gdk 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gdk-pixbuf 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gdk-pixbuf-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gdk-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gio 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gio-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "glib 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "glib-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gobject-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gtk-sys 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-- "pango 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "pango-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "atk",
-+ "bitflags",
-+ "cairo-rs",
-+ "field-offset",
-+ "futures-channel",
-+ "gdk",
-+ "gdk-pixbuf",
-+ "gio",
-+ "glib",
-+ "gtk-sys",
-+ "gtk3-macros",
-+ "libc",
-+ "once_cell",
-+ "pango",
-+ "pkg-config",
- ]
-
- [[package]]
- name = "gtk-macros"
--version = "0.2.0"
-+version = "0.3.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "da5bf7748fd4cd0b2490df8debcc911809dbcbee4ece9531b96c29a9c729de5a"
-
- [[package]]
- name = "gtk-sys"
--version = "0.9.2"
-+version = "0.14.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "8c14c8d3da0545785a7c5a120345b3abb534010fb8ae0f2ef3f47c027fba303e"
-+dependencies = [
-+ "atk-sys",
-+ "cairo-sys-rs",
-+ "gdk-pixbuf-sys",
-+ "gdk-sys",
-+ "gio-sys 0.14.0",
-+ "glib-sys 0.14.0",
-+ "gobject-sys 0.14.0",
-+ "libc",
-+ "pango-sys",
-+ "system-deps 3.2.0",
-+]
-+
-+[[package]]
-+name = "gtk3-macros"
-+version = "0.14.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "21de1da96dc117443fb03c2e270b2d34b7de98d0a79a19bbb689476173745b79"
- dependencies = [
-- "atk-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "cairo-sys-rs 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gdk-pixbuf-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gdk-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gio-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "glib-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gobject-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-- "pango-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "pkg-config 0.3.17 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "anyhow",
-+ "heck",
-+ "proc-macro-crate",
-+ "proc-macro-error",
-+ "proc-macro2",
-+ "quote",
-+ "syn",
- ]
-
- [[package]]
- name = "heck"
--version = "0.3.1"
-+version = "0.3.3"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c"
- dependencies = [
-- "unicode-segmentation 1.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "unicode-segmentation",
- ]
-
- [[package]]
- name = "hermit-abi"
--version = "0.1.5"
-+version = "0.1.19"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33"
- dependencies = [
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc",
- ]
-
- [[package]]
- name = "hkdf"
--version = "0.7.1"
-+version = "0.10.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "51ab2f639c231793c5f6114bdb9bbe50a7dbbfcd7c7c6bd8475dec2d991e964f"
- dependencies = [
-- "digest 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "hmac 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "digest",
-+ "hmac",
- ]
-
- [[package]]
- name = "hmac"
--version = "0.7.1"
-+version = "0.10.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "c1441c6b1e930e2817404b5046f1f989899143a12bf92de603b69f4e0aee1e15"
- dependencies = [
-- "crypto-mac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "digest 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "crypto-mac",
-+ "digest",
- ]
-
- [[package]]
- name = "html2pango"
--version = "0.3.2"
-+version = "0.3.3"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "469b284033c3c93e7df758d316cb2e0da4408e4138d5add903b8be356a841738"
- dependencies = [
-- "ammonia 2.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "failure 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
-- "html5ever 0.23.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "linkify 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "maplit 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "regex 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "ammonia",
-+ "anyhow",
-+ "html5ever 0.25.1",
-+ "lazy_static",
-+ "linkify",
-+ "maplit",
-+ "markup5ever_rcdom",
-+ "regex",
- ]
-
- [[package]]
- name = "html5ever"
--version = "0.23.0"
-+version = "0.24.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "025483b0a1e4577bb28578318c886ee5f817dda6eb62473269349044406644cb"
- dependencies = [
-- "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-- "mac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "markup5ever 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)",
-- "quote 0.6.13 (registry+https://github.com/rust-lang/crates.io-index)",
-- "syn 0.15.44 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "log",
-+ "mac",
-+ "markup5ever 0.9.0",
-+ "proc-macro2",
-+ "quote",
-+ "syn",
- ]
-
- [[package]]
- name = "html5ever"
--version = "0.24.1"
-+version = "0.25.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "aafcf38a1a36118242d29b92e1b08ef84e67e4a5ed06e0a80be20e6a32bfed6b"
- dependencies = [
-- "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-- "mac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "markup5ever 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "proc-macro2 1.0.17 (registry+https://github.com/rust-lang/crates.io-index)",
-- "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "syn 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "log",
-+ "mac",
-+ "markup5ever 0.10.1",
-+ "proc-macro2",
-+ "quote",
-+ "syn",
- ]
-
- [[package]]
- name = "http"
- version = "0.1.21"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d6ccf5ede3a895d8856620237b2f02972c1bbc78d2965ad7fe8838d4a0ed41f0"
- dependencies = [
-- "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)",
-- "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
-- "itoa 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "bytes 0.4.12",
-+ "fnv",
-+ "itoa",
- ]
-
- [[package]]
- name = "http"
--version = "0.2.1"
-+version = "0.2.4"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "527e8c9ac747e28542699a951517aa9a6945af506cd1f2e1b53a576c17b6cc11"
- dependencies = [
-- "bytes 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
-- "itoa 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "bytes 1.0.1",
-+ "fnv",
-+ "itoa",
- ]
-
- [[package]]
- name = "http-client"
- version = "1.1.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "bf86227a76b64ebd37d442853370f7177be4fd3ae6f9ff5c9e0349643e1cb332"
-+dependencies = [
-+ "futures 0.3.16",
-+ "http 0.1.21",
-+ "isahc 0.8.2",
-+ "js-sys",
-+ "wasm-bindgen",
-+ "wasm-bindgen-futures",
-+ "web-sys",
-+]
-+
-+[[package]]
-+name = "http-client"
-+version = "6.5.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ea880b03c18a7e981d7fb3608b8904a98425d53c440758fcebf7d934aa56547c"
- dependencies = [
-- "futures 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "http 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)",
-- "isahc 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "js-sys 0.3.37 (registry+https://github.com/rust-lang/crates.io-index)",
-- "wasm-bindgen 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
-- "wasm-bindgen-futures 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
-- "web-sys 0.3.37 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "async-std",
-+ "async-trait",
-+ "cfg-if 1.0.0",
-+ "dashmap",
-+ "http-types",
-+ "isahc 0.9.14",
-+ "log",
-+]
-+
-+[[package]]
-+name = "http-types"
-+version = "2.12.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "6e9b187a72d63adbfba487f48095306ac823049cb504ee195541e91c7775f5ad"
-+dependencies = [
-+ "anyhow",
-+ "async-channel",
-+ "async-std",
-+ "base64",
-+ "cookie",
-+ "futures-lite",
-+ "infer",
-+ "pin-project-lite",
-+ "rand 0.7.3",
-+ "serde",
-+ "serde_json",
-+ "serde_qs",
-+ "serde_urlencoded",
-+ "url",
- ]
-
- [[package]]
- name = "humantime"
- version = "1.3.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "df004cfca50ef23c36850aaaa59ad52cc70d0e90243c3c7737a4dd32dc7a3c4f"
- dependencies = [
-- "quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "quick-error",
- ]
-
- [[package]]
- name = "idna"
--version = "0.1.5"
-+version = "0.2.3"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "418a0a6fab821475f634efe3ccc45c013f742efe03d853e8d3355d5cb850ecf8"
- dependencies = [
-- "matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
-- "unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "unicode-normalization 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "matches",
-+ "unicode-bidi",
-+ "unicode-normalization",
- ]
-
- [[package]]
--name = "idna"
--version = "0.2.0"
-+name = "infer"
-+version = "0.2.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "64e9829a50b42bb782c1df523f78d332fe371b10c661e78b7a3c34b0198e9fac"
-+
-+[[package]]
-+name = "instant"
-+version = "0.1.10"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "bee0328b1209d157ef001c94dd85b4f8f64139adb0eac2659f4b08382b2f474d"
- dependencies = [
-- "matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
-- "unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "unicode-normalization 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cfg-if 1.0.0",
- ]
-
- [[package]]
- name = "iovec"
- version = "0.1.4"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "b2b3ea6ff95e175473f8ffe6a7eb7c00d054240321b84c57051175fe3c1e075e"
- dependencies = [
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc",
- ]
-
- [[package]]
- name = "isahc"
- version = "0.8.2"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "c45d8c41e6f0b5aa495fd2577e6068e100f57eb87c4b353b0dab20bb53a56035"
- dependencies = [
-- "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)",
-- "crossbeam-channel 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "crossbeam-utils 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "curl 0.4.25 (registry+https://github.com/rust-lang/crates.io-index)",
-- "curl-sys 0.4.31+curl-7.70.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "futures-channel 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "futures-io 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "futures-util 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "http 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)",
-- "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-- "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "sluice 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "bytes 0.4.12",
-+ "crossbeam-channel",
-+ "crossbeam-utils 0.7.2",
-+ "curl",
-+ "curl-sys",
-+ "futures-channel",
-+ "futures-io",
-+ "futures-util",
-+ "http 0.1.21",
-+ "lazy_static",
-+ "log",
-+ "slab",
-+ "sluice",
- ]
-
- [[package]]
- name = "isahc"
--version = "0.9.3"
-+version = "0.9.14"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e2948a0ce43e2c2ef11d7edf6816508998d99e13badd1150be0914205df9388a"
-+dependencies = [
-+ "bytes 0.5.6",
-+ "crossbeam-utils 0.8.5",
-+ "curl",
-+ "curl-sys",
-+ "encoding_rs",
-+ "flume",
-+ "futures-lite",
-+ "http 0.2.4",
-+ "log",
-+ "mime",
-+ "once_cell",
-+ "slab",
-+ "sluice",
-+ "tracing",
-+ "tracing-futures",
-+ "url",
-+ "waker-fn",
-+]
-+
-+[[package]]
-+name = "itertools"
-+version = "0.10.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "69ddb889f9d0d08a67338271fa9b62996bc788c7796a5c18cf057420aaed5eaf"
- dependencies = [
-- "bytes 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "crossbeam-channel 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "crossbeam-utils 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "curl 0.4.25 (registry+https://github.com/rust-lang/crates.io-index)",
-- "curl-sys 0.4.31+curl-7.70.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "encoding_rs 0.8.22 (registry+https://github.com/rust-lang/crates.io-index)",
-- "futures-channel 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "futures-io 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "futures-util 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "http 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-- "mime 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)",
-- "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "sluice 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "tracing 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)",
-- "tracing-futures 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "either",
- ]
-
- [[package]]
- name = "itoa"
--version = "0.4.4"
-+version = "0.4.8"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "b71991ff56294aa922b450139ee08b3bfc70982c6b2c7562771375cf73542dd4"
-
- [[package]]
- name = "javascriptcore-rs"
--version = "0.9.0"
-+version = "0.14.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "5ca9c7d1445bba2889672fbadc16c3d5007bfdcf0a15a18a3a50fe9fab2c7427"
- dependencies = [
-- "glib 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "javascriptcore-rs-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "glib",
-+ "javascriptcore-rs-sys",
- ]
-
- [[package]]
- name = "javascriptcore-rs-sys"
- version = "0.2.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "3f46ada8a08dcd75a10afae872fbfb51275df4a8ae0d46b8cc7c708f08dd2998"
- dependencies = [
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc",
- ]
-
- [[package]]
- name = "js-sys"
--version = "0.3.37"
-+version = "0.3.53"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e4bf49d50e2961077d9c99f4b7997d770a1114f087c3c2e0069b36c13fc2979d"
- dependencies = [
-- "wasm-bindgen 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
--]
--
--[[package]]
--name = "kernel32-sys"
--version = "0.2.2"
--source = "registry+https://github.com/rust-lang/crates.io-index"
--dependencies = [
-- "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
-- "winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "wasm-bindgen",
- ]
-
- [[package]]
- name = "kv-log-macro"
--version = "1.0.4"
-+version = "1.0.7"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "0de8b303297635ad57c9f5059fd9cee7a47f8e8daa09df0fcd07dd39fb22977f"
- dependencies = [
-- "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "log",
- ]
-
- [[package]]
- name = "lazy_static"
- version = "1.4.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
-
- [[package]]
- name = "libc"
--version = "0.2.66"
-+version = "0.2.100"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "a1fa8cddc8fbbee11227ef194b5317ed014b8acbf15139bd716a18ad3fe99ec5"
-
- [[package]]
- name = "libhandy"
--version = "0.5.0"
-+version = "0.8.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "5bcf9c79ec810a62f442ffd568d2de233983dc91c160abee4949b67a647024ed"
- dependencies = [
-- "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gdk 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gdk-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gio 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gio-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "glib 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "glib-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gobject-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gtk 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gtk-sys 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libhandy-sys 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "pango 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "bitflags",
-+ "gdk",
-+ "gdk-pixbuf",
-+ "gio",
-+ "glib",
-+ "gtk",
-+ "lazy_static",
-+ "libc",
-+ "libhandy-sys",
-+ "pango",
- ]
-
- [[package]]
- name = "libhandy-sys"
--version = "0.5.0"
-+version = "0.8.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "1938b93a8f29417992c452b7f43e7eff8a9f8d25b7f0bc923ae9d75b50a9cde3"
- dependencies = [
-- "gdk 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gdk-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gio 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gio-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "glib-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gobject-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gtk-sys 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-- "pango-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "pkg-config 0.3.17 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "gdk-pixbuf-sys",
-+ "gdk-sys",
-+ "gio-sys 0.14.0",
-+ "glib-sys 0.14.0",
-+ "gobject-sys 0.14.0",
-+ "gtk-sys",
-+ "libc",
-+ "pango-sys",
-+ "pkg-config",
-+ "system-deps 3.2.0",
- ]
-
- [[package]]
- name = "libnghttp2-sys"
--version = "0.1.3"
-+version = "0.1.6+1.43.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "0af55541a8827e138d59ec9e5877fb6095ece63fb6f4da45e7491b4fbd262855"
- dependencies = [
-- "cc 1.0.48 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cc",
-+ "libc",
- ]
-
- [[package]]
- name = "libsqlite3-sys"
--version = "0.16.0"
-+version = "0.22.2"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "290b64917f8b0cb885d9de0f9959fe1f775d7fa12f1da2db9001c1c8ab60f89d"
- dependencies = [
-- "pkg-config 0.3.17 (registry+https://github.com/rust-lang/crates.io-index)",
-- "vcpkg 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "pkg-config",
-+ "vcpkg",
- ]
-
- [[package]]
- name = "libz-sys"
--version = "1.0.25"
-+version = "1.1.3"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "de5435b8549c16d423ed0c03dbaafe57cf6c3344744f1242520d59c9d8ecec66"
- dependencies = [
-- "cc 1.0.48 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-- "pkg-config 0.3.17 (registry+https://github.com/rust-lang/crates.io-index)",
-- "vcpkg 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cc",
-+ "libc",
-+ "pkg-config",
-+ "vcpkg",
- ]
-
- [[package]]
- name = "linkify"
--version = "0.3.1"
-+version = "0.4.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "03951527dd24d2c59f407502e7d88e0948ef06fac23335b556a4c2bc03c22096"
- dependencies = [
-- "memchr 2.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "memchr",
- ]
-
- [[package]]
- name = "locale_config"
- version = "0.2.3"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "73ac19ebe45489e5d53b4346d8b90bb3dd03275c5fdf2ce22a982516d86b535c"
- dependencies = [
-- "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "regex 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "lazy_static",
-+ "regex",
-+ "winapi",
- ]
-
- [[package]]
- name = "lock_api"
--version = "0.3.2"
-+version = "0.4.4"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "0382880606dff6d15c9476c416d18690b72742aa7b605bb6dd6ec9030fbf07eb"
- dependencies = [
-- "scopeguard 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "scopeguard",
- ]
-
- [[package]]
- name = "log"
--version = "0.4.8"
-+version = "0.4.14"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "51b9bbe6c47d51fc3e1a9b945965946b4c44142ab8792c50835a980d362c2710"
- dependencies = [
-- "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cfg-if 1.0.0",
-+ "value-bag",
- ]
-
- [[package]]
- name = "mac"
- version = "0.1.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "c41e0c4fef86961ac6d6f8a82609f55f31b05e4fce149ac5710e439df7619ba4"
-
- [[package]]
- name = "maplit"
- version = "1.0.2"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "3e2e65a1a2e43cfcb47a895c4c8b10d1f4a61097f9f254f183aee60cad9c651d"
-
- [[package]]
- name = "markup5ever"
--version = "0.8.1"
-+version = "0.9.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "65381d9d47506b8592b97c4efd936afcf673b09b059f2bef39c7211ee78b9d03"
- dependencies = [
-- "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-- "phf 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)",
-- "phf_codegen 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)",
-- "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
-- "serde_derive 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
-- "serde_json 1.0.44 (registry+https://github.com/rust-lang/crates.io-index)",
-- "string_cache 0.7.5 (registry+https://github.com/rust-lang/crates.io-index)",
-- "string_cache_codegen 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "tendril 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "log",
-+ "phf 0.7.24",
-+ "phf_codegen 0.7.24",
-+ "serde",
-+ "serde_derive",
-+ "serde_json",
-+ "string_cache 0.7.5",
-+ "string_cache_codegen 0.4.4",
-+ "tendril",
- ]
-
- [[package]]
- name = "markup5ever"
--version = "0.9.0"
-+version = "0.10.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "a24f40fb03852d1cdd84330cddcaf98e9ec08a7b7768e952fad3b4cf048ec8fd"
- dependencies = [
-- "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-- "phf 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)",
-- "phf_codegen 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)",
-- "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
-- "serde_derive 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
-- "serde_json 1.0.44 (registry+https://github.com/rust-lang/crates.io-index)",
-- "string_cache 0.7.5 (registry+https://github.com/rust-lang/crates.io-index)",
-- "string_cache_codegen 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "tendril 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "log",
-+ "phf 0.8.0",
-+ "phf_codegen 0.8.0",
-+ "string_cache 0.8.1",
-+ "string_cache_codegen 0.5.1",
-+ "tendril",
- ]
-
- [[package]]
--name = "matches"
--version = "0.1.8"
--source = "registry+https://github.com/rust-lang/crates.io-index"
--
--[[package]]
--name = "memchr"
--version = "2.2.1"
--source = "registry+https://github.com/rust-lang/crates.io-index"
--
--[[package]]
--name = "memoffset"
--version = "0.5.3"
-+name = "markup5ever_rcdom"
-+version = "0.1.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "f015da43bcd8d4f144559a3423f4591d69b8ce0652c905374da7205df336ae2b"
- dependencies = [
-- "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "html5ever 0.25.1",
-+ "markup5ever 0.10.1",
-+ "tendril",
-+ "xml5ever",
- ]
-
- [[package]]
--name = "migrations_internals"
--version = "1.4.0"
-+name = "matches"
-+version = "0.1.9"
- source = "registry+https://github.com/rust-lang/crates.io-index"
--dependencies = [
-- "diesel 1.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
--]
-+checksum = "a3e378b66a060d48947b590737b30a1be76706c8dd7b8ba0f2fe3989c68a853f"
-
- [[package]]
--name = "migrations_macros"
--version = "1.4.1"
-+name = "maybe-uninit"
-+version = "2.0.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
--dependencies = [
-- "migrations_internals 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "proc-macro2 1.0.17 (registry+https://github.com/rust-lang/crates.io-index)",
-- "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "syn 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
--]
-+checksum = "60302e4db3a61da70c0cb7991976248362f30319e88850c487b9b95bbf059e00"
-
- [[package]]
--name = "mime"
--version = "0.3.14"
-+name = "memchr"
-+version = "2.4.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "308cc39be01b73d0d18f82a0e7b2a3df85245f84af96fdddc5d202d27e47b86a"
-
- [[package]]
--name = "mime_guess"
--version = "2.0.1"
-+name = "memoffset"
-+version = "0.6.4"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "59accc507f1338036a0477ef61afdae33cde60840f4dfe481319ce3ad116ddf9"
- dependencies = [
-- "mime 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)",
-- "unicase 2.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "autocfg 1.0.1",
- ]
-
- [[package]]
--name = "mio"
--version = "0.6.21"
-+name = "migrations_internals"
-+version = "1.4.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "2b4fc84e4af020b837029e017966f86a1c2d5e83e64b589963d5047525995860"
- dependencies = [
-- "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-- "fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
-- "fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
-- "iovec 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-- "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-- "miow 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)",
-- "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "diesel",
- ]
-
- [[package]]
--name = "mio-uds"
--version = "0.6.7"
-+name = "migrations_macros"
-+version = "1.4.2"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "9753f12909fd8d923f75ae5c3258cae1ed3c8ec052e1b38c93c21a6d157f789c"
- dependencies = [
-- "iovec 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-- "mio 0.6.21 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "migrations_internals",
-+ "proc-macro2",
-+ "quote",
-+ "syn",
- ]
-
- [[package]]
--name = "miow"
--version = "0.2.1"
-+name = "mime"
-+version = "0.3.16"
- source = "registry+https://github.com/rust-lang/crates.io-index"
--dependencies = [
-- "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)",
-- "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
-- "ws2_32-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
--]
-+checksum = "2a60c7ce501c71e03a9c9c0d35b861413ae925bd979cc7a4e30d060069aaac8d"
-
- [[package]]
--name = "net2"
--version = "0.2.33"
-+name = "mime_guess"
-+version = "2.0.3"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "2684d4c2e97d99848d30b324b00c8fcc7e5c897b7cbb5819b09e7c90e8baf212"
- dependencies = [
-- "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-- "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "mime",
-+ "unicase",
- ]
-
- [[package]]
- name = "new_debug_unreachable"
--version = "1.0.3"
-+version = "1.0.4"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e4a24736216ec316047a1fc4252e27dabb04218aa4a3f37c6e7ddbf1f9782b54"
-
- [[package]]
- name = "num"
--version = "0.2.0"
-+version = "0.3.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "8b7a8e9be5e039e2ff869df49155f1c06bd01ade2117ec783e56ab0932b67a8f"
- dependencies = [
-- "num-bigint 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
-- "num-complex 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
-- "num-integer 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)",
-- "num-iter 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)",
-- "num-rational 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "num-traits 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "num-bigint",
-+ "num-complex",
-+ "num-integer",
-+ "num-iter",
-+ "num-rational",
-+ "num-traits",
- ]
-
- [[package]]
- name = "num-bigint"
--version = "0.2.3"
-+version = "0.3.2"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "7d0a3d5e207573f948a9e5376662aa743a2ea13f7c50a554d7af443a73fbfeba"
- dependencies = [
-- "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
-- "num-integer 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)",
-- "num-traits 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "autocfg 1.0.1",
-+ "num-integer",
-+ "num-traits",
- ]
-
- [[package]]
- name = "num-complex"
--version = "0.2.3"
-+version = "0.3.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "747d632c0c558b87dbabbe6a82f3b4ae03720d0646ac5b7b4dae89394be5f2c5"
- dependencies = [
-- "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
-- "num-traits 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "num-traits",
- ]
-
- [[package]]
- name = "num-integer"
--version = "0.1.41"
-+version = "0.1.44"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d2cc698a63b549a70bc047073d2949cce27cd1c7b0a4a862d08a8031bc2801db"
- dependencies = [
-- "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
-- "num-traits 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "autocfg 1.0.1",
-+ "num-traits",
- ]
-
- [[package]]
- name = "num-iter"
--version = "0.1.39"
-+version = "0.1.42"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "b2021c8337a54d21aca0d59a92577a029af9431cb59b909b03252b9c164fad59"
- dependencies = [
-- "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
-- "num-integer 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)",
-- "num-traits 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "autocfg 1.0.1",
-+ "num-integer",
-+ "num-traits",
- ]
-
- [[package]]
- name = "num-rational"
--version = "0.2.2"
-+version = "0.3.2"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "12ac428b1cb17fce6f731001d307d351ec70a6d202fc2e60f7d4c5e42d8f4f07"
- dependencies = [
-- "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
-- "num-bigint 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
-- "num-integer 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)",
-- "num-traits 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "autocfg 1.0.1",
-+ "num-bigint",
-+ "num-integer",
-+ "num-traits",
- ]
-
- [[package]]
- name = "num-traits"
--version = "0.2.10"
-+version = "0.2.14"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "9a64b1ec5cda2586e284722486d802acf1f7dbdc623e2bfc57e65ca1cd099290"
- dependencies = [
-- "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "autocfg 1.0.1",
- ]
-
- [[package]]
- name = "num_cpus"
--version = "1.11.1"
-+version = "1.13.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "05499f3756671c15885fee9034446956fff3f243d6077b91e5767df161f766b3"
- dependencies = [
-- "hermit-abi 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "hermit-abi",
-+ "libc",
- ]
-
- [[package]]
- name = "once_cell"
--version = "1.2.0"
-+version = "1.8.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "692fcb63b64b1758029e0a96ee63e049ce8c5948587f2f7208df04625e5f6b56"
-
- [[package]]
- name = "opaque-debug"
--version = "0.2.3"
-+version = "0.3.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5"
-
- [[package]]
- name = "openssl-probe"
--version = "0.1.2"
-+version = "0.1.4"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "28988d872ab76095a6e6ac88d99b54fd267702734fd7ffe610ca27f533ddb95a"
-
- [[package]]
- name = "openssl-sys"
--version = "0.9.53"
-+version = "0.9.66"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "1996d2d305e561b70d1ee0c53f1542833f4e1ac6ce9a6708b6ff2738ca67dc82"
- dependencies = [
-- "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
-- "cc 1.0.48 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-- "pkg-config 0.3.17 (registry+https://github.com/rust-lang/crates.io-index)",
-- "vcpkg 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "autocfg 1.0.1",
-+ "cc",
-+ "libc",
-+ "pkg-config",
-+ "vcpkg",
- ]
-
- [[package]]
- name = "pango"
--version = "0.8.0"
-+version = "0.14.3"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e1fc88307d9797976ea62722ff2ec5de3fae279c6e20100ed3f49ca1a4bf3f96"
- dependencies = [
-- "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "glib 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "glib-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gobject-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-- "pango-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "bitflags",
-+ "glib",
-+ "libc",
-+ "once_cell",
-+ "pango-sys",
- ]
-
- [[package]]
- name = "pango-sys"
--version = "0.9.1"
-+version = "0.14.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "2367099ca5e761546ba1d501955079f097caa186bb53ce0f718dca99ac1942fe"
- dependencies = [
-- "glib-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gobject-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-- "pkg-config 0.3.17 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "glib-sys 0.14.0",
-+ "gobject-sys 0.14.0",
-+ "libc",
-+ "system-deps 3.2.0",
- ]
-
-+[[package]]
-+name = "parking"
-+version = "2.0.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "427c3892f9e783d91cc128285287e70a59e206ca452770ece88a76f7a3eddd72"
-+
- [[package]]
- name = "parking_lot"
--version = "0.10.0"
-+version = "0.11.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "6d7744ac029df22dca6284efe4e898991d28e3085c706c972bcd7da4a27a15eb"
- dependencies = [
-- "lock_api 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "parking_lot_core 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "instant",
-+ "lock_api",
-+ "parking_lot_core",
- ]
-
- [[package]]
- name = "parking_lot_core"
--version = "0.7.0"
-+version = "0.8.3"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "fa7a782938e745763fe6907fc6ba86946d72f49fe7e21de074e08128a99fb018"
- dependencies = [
-- "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-- "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-- "redox_syscall 0.1.56 (registry+https://github.com/rust-lang/crates.io-index)",
-- "smallvec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cfg-if 1.0.0",
-+ "instant",
-+ "libc",
-+ "redox_syscall",
-+ "smallvec",
-+ "winapi",
- ]
-
- [[package]]
- name = "percent-encoding"
--version = "1.0.1"
-+version = "2.1.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e"
-
- [[package]]
--name = "percent-encoding"
--version = "2.1.0"
-+name = "pest"
-+version = "2.1.3"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "10f4872ae94d7b90ae48754df22fd42ad52ce740b8f370b03da4835417403e53"
-+dependencies = [
-+ "ucd-trie",
-+]
-
- [[package]]
- name = "phf"
- version = "0.7.24"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "b3da44b85f8e8dfaec21adae67f95d93244b2ecf6ad2a692320598dcc8e6dd18"
-+dependencies = [
-+ "phf_shared 0.7.24",
-+]
-+
-+[[package]]
-+name = "phf"
-+version = "0.8.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "3dfb61232e34fcb633f43d12c58f83c1df82962dcdfa565a4e866ffc17dafe12"
- dependencies = [
-- "phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "phf_shared 0.8.0",
- ]
-
- [[package]]
- name = "phf_codegen"
- version = "0.7.24"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "b03e85129e324ad4166b06b2c7491ae27fe3ec353af72e72cd1654c7225d517e"
- dependencies = [
-- "phf_generator 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)",
-- "phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "phf_generator 0.7.24",
-+ "phf_shared 0.7.24",
-+]
-+
-+[[package]]
-+name = "phf_codegen"
-+version = "0.8.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "cbffee61585b0411840d3ece935cce9cb6321f01c45477d30066498cd5e1a815"
-+dependencies = [
-+ "phf_generator 0.8.0",
-+ "phf_shared 0.8.0",
- ]
-
- [[package]]
- name = "phf_generator"
- version = "0.7.24"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "09364cc93c159b8b06b1f4dd8a4398984503483891b0c26b867cf431fb132662"
- dependencies = [
-- "phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)",
-- "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "phf_shared 0.7.24",
-+ "rand 0.6.5",
-+]
-+
-+[[package]]
-+name = "phf_generator"
-+version = "0.8.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "17367f0cc86f2d25802b2c26ee58a7b23faeccf78a396094c13dced0d0182526"
-+dependencies = [
-+ "phf_shared 0.8.0",
-+ "rand 0.7.3",
- ]
-
- [[package]]
- name = "phf_shared"
- version = "0.7.24"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "234f71a15de2288bcb7e3b6515828d22af7ec8598ee6d24c3b526fa0a80b67a0"
-+dependencies = [
-+ "siphasher 0.2.3",
-+]
-+
-+[[package]]
-+name = "phf_shared"
-+version = "0.8.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "c00cf8b9eafe68dde5e9eaa2cef8ee84a9336a47d566ec55ca16589633b65af7"
- dependencies = [
-- "siphasher 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "siphasher 0.3.6",
- ]
-
- [[package]]
- name = "pin-project"
--version = "0.4.17"
-+version = "1.0.8"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "576bc800220cc65dac09e99e97b08b358cfab6e17078de8dc5fee223bd2d0c08"
- dependencies = [
-- "pin-project-internal 0.4.17 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "pin-project-internal",
- ]
-
- [[package]]
- name = "pin-project-internal"
--version = "0.4.17"
-+version = "1.0.8"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "6e8fe8163d14ce7f0cdac2e040116f22eac817edabff0be91e8aff7e9accf389"
- dependencies = [
-- "proc-macro2 1.0.17 (registry+https://github.com/rust-lang/crates.io-index)",
-- "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "syn 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "proc-macro2",
-+ "quote",
-+ "syn",
- ]
-
- [[package]]
- name = "pin-project-lite"
--version = "0.1.1"
-+version = "0.2.7"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "8d31d11c69a6b52a174b42bdc0c30e5e11670f90788b2c471c31c1d17d449443"
-
- [[package]]
- name = "pin-utils"
--version = "0.1.0-alpha.4"
-+version = "0.1.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
-
- [[package]]
- name = "pkg-config"
--version = "0.3.17"
-+version = "0.3.19"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "3831453b3449ceb48b6d9c7ad7c96d5ea673e9b470a1dc578c2ce6521230884c"
-+
-+[[package]]
-+name = "polling"
-+version = "2.1.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "92341d779fa34ea8437ef4d82d440d5e1ce3f3ff7f824aa64424cd481f9a1f25"
-+dependencies = [
-+ "cfg-if 1.0.0",
-+ "libc",
-+ "log",
-+ "wepoll-ffi",
-+ "winapi",
-+]
-+
-+[[package]]
-+name = "polyval"
-+version = "0.4.5"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "eebcc4aa140b9abd2bc40d9c3f7ccec842679cd79045ac3a7ac698c1a064b7cd"
-+dependencies = [
-+ "cpuid-bool",
-+ "opaque-debug",
-+ "universal-hash",
-+]
-+
-+[[package]]
-+name = "ppv-lite86"
-+version = "0.2.10"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ac74c624d6b2d21f425f752262f42188365d7b8ff1aff74c82e45136510a4857"
-
- [[package]]
- name = "precomputed-hash"
- version = "0.1.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c"
-
- [[package]]
- name = "pretty_env_logger"
- version = "0.3.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "717ee476b1690853d222af4634056d830b5197ffd747726a9a1eee6da9f49074"
- dependencies = [
-- "chrono 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
-- "env_logger 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "chrono",
-+ "env_logger",
-+ "log",
- ]
-
- [[package]]
--name = "proc-macro-hack"
--version = "0.5.11"
-+name = "proc-macro-crate"
-+version = "1.0.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "41fdbd1df62156fbc5945f4762632564d7d038153091c3fcf1067f6aef7cff92"
- dependencies = [
-- "proc-macro2 1.0.17 (registry+https://github.com/rust-lang/crates.io-index)",
-- "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "syn 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "thiserror",
-+ "toml",
- ]
-
- [[package]]
--name = "proc-macro-nested"
--version = "0.1.3"
-+name = "proc-macro-error"
-+version = "1.0.4"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c"
-+dependencies = [
-+ "proc-macro-error-attr",
-+ "proc-macro2",
-+ "quote",
-+ "syn",
-+ "version_check",
-+]
-
- [[package]]
--name = "proc-macro2"
--version = "0.4.30"
-+name = "proc-macro-error-attr"
-+version = "1.0.4"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869"
- dependencies = [
-- "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "proc-macro2",
-+ "quote",
-+ "version_check",
- ]
-
- [[package]]
--name = "proc-macro2"
--version = "1.0.17"
-+name = "proc-macro-hack"
-+version = "0.5.19"
- source = "registry+https://github.com/rust-lang/crates.io-index"
--dependencies = [
-- "unicode-xid 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
--]
-+checksum = "dbf0c48bc1d91375ae5c3cd81e3722dff1abcf81a30960240640d223f59fe0e5"
-
- [[package]]
--name = "quick-error"
--version = "1.2.2"
-+name = "proc-macro-nested"
-+version = "0.1.7"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "bc881b2c22681370c6a780e47af9840ef841837bc98118431d4e1868bd0c1086"
-
- [[package]]
--name = "quote"
--version = "0.6.13"
-+name = "proc-macro2"
-+version = "1.0.28"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "5c7ed8b8c7b886ea3ed7dde405212185f423ab44682667c8c6dd14aa1d9f6612"
- dependencies = [
-- "proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "unicode-xid",
- ]
-
-+[[package]]
-+name = "quick-error"
-+version = "1.2.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0"
-+
- [[package]]
- name = "quote"
--version = "1.0.2"
-+version = "1.0.9"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "c3d0b9745dc2debf507c8422de05d7226cc1f0644216dfdfead988f9b1ab32a7"
- dependencies = [
-- "proc-macro2 1.0.17 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "proc-macro2",
- ]
-
- [[package]]
- name = "r2d2"
--version = "0.8.7"
-+version = "0.8.9"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "545c5bc2b880973c9c10e4067418407a0ccaa3091781d1671d46eb35107cb26f"
- dependencies = [
-- "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-- "parking_lot 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "scheduled-thread-pool 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "log",
-+ "parking_lot",
-+ "scheduled-thread-pool",
- ]
-
- [[package]]
- name = "rand"
- version = "0.3.23"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "64ac302d8f83c0c1974bf758f6b041c6c8ada916fbb44a609158ca8b064cc76c"
- dependencies = [
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-- "rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc",
-+ "rand 0.4.6",
- ]
-
- [[package]]
- name = "rand"
- version = "0.4.6"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "552840b97013b1a26992c11eac34bdd778e464601a4c2054b5f0bff7c6761293"
- dependencies = [
-- "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-- "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "fuchsia-cprng",
-+ "libc",
-+ "rand_core 0.3.1",
-+ "rdrand",
-+ "winapi",
- ]
-
- [[package]]
- name = "rand"
- version = "0.6.5"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "6d71dacdc3c88c1fde3885a3be3fbab9f35724e6ce99467f7d9c5026132184ca"
-+dependencies = [
-+ "autocfg 0.1.7",
-+ "libc",
-+ "rand_chacha 0.1.1",
-+ "rand_core 0.4.2",
-+ "rand_hc 0.1.0",
-+ "rand_isaac",
-+ "rand_jitter",
-+ "rand_os",
-+ "rand_pcg 0.1.2",
-+ "rand_xorshift",
-+ "winapi",
-+]
-+
-+[[package]]
-+name = "rand"
-+version = "0.7.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03"
-+dependencies = [
-+ "getrandom 0.1.16",
-+ "libc",
-+ "rand_chacha 0.2.2",
-+ "rand_core 0.5.1",
-+ "rand_hc 0.2.0",
-+ "rand_pcg 0.2.1",
-+]
-+
-+[[package]]
-+name = "rand"
-+version = "0.8.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "2e7573632e6454cf6b99d7aac4ccca54be06da05aca2ef7423d22d27d4d4bcd8"
-+dependencies = [
-+ "libc",
-+ "rand_chacha 0.3.1",
-+ "rand_core 0.6.3",
-+ "rand_hc 0.3.1",
-+]
-+
-+[[package]]
-+name = "rand_chacha"
-+version = "0.1.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "556d3a1ca6600bfcbab7c7c91ccb085ac7fbbcd70e008a98742e7847f4f7bcef"
-+dependencies = [
-+ "autocfg 0.1.7",
-+ "rand_core 0.3.1",
-+]
-+
-+[[package]]
-+name = "rand_chacha"
-+version = "0.2.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402"
-+dependencies = [
-+ "ppv-lite86",
-+ "rand_core 0.5.1",
-+]
-+
-+[[package]]
-+name = "rand_chacha"
-+version = "0.3.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"
-+dependencies = [
-+ "ppv-lite86",
-+ "rand_core 0.6.3",
-+]
-+
-+[[package]]
-+name = "rand_core"
-+version = "0.3.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b"
-+dependencies = [
-+ "rand_core 0.4.2",
-+]
-+
-+[[package]]
-+name = "rand_core"
-+version = "0.4.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "9c33a3c44ca05fa6f1807d8e6743f3824e8509beca625669633be0acbdf509dc"
-+
-+[[package]]
-+name = "rand_core"
-+version = "0.5.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19"
- dependencies = [
-- "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-- "rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "rand_core 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "rand_hc 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "rand_isaac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "rand_jitter 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "rand_os 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
-- "rand_pcg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "rand_xorshift 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "getrandom 0.1.16",
- ]
-
- [[package]]
--name = "rand_chacha"
--version = "0.1.1"
-+name = "rand_core"
-+version = "0.6.3"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d34f1408f55294453790c48b2f1ebbb1c5b4b7563eb1f418bcfcfdbb06ebb4e7"
- dependencies = [
-- "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
-- "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "getrandom 0.2.3",
- ]
-
- [[package]]
--name = "rand_core"
--version = "0.3.1"
-+name = "rand_hc"
-+version = "0.1.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "7b40677c7be09ae76218dc623efbf7b18e34bced3f38883af07bb75630a21bc4"
- dependencies = [
-- "rand_core 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand_core 0.3.1",
- ]
-
- [[package]]
--name = "rand_core"
--version = "0.4.2"
-+name = "rand_hc"
-+version = "0.2.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c"
-+dependencies = [
-+ "rand_core 0.5.1",
-+]
-
- [[package]]
- name = "rand_hc"
--version = "0.1.0"
-+version = "0.3.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d51e9f596de227fda2ea6c84607f5558e196eeaf43c986b724ba4fb8fdf497e7"
- dependencies = [
-- "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand_core 0.6.3",
- ]
-
- [[package]]
- name = "rand_isaac"
- version = "0.1.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ded997c9d5f13925be2a6fd7e66bf1872597f759fd9dd93513dd7e92e5a5ee08"
- dependencies = [
-- "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand_core 0.3.1",
- ]
-
- [[package]]
- name = "rand_jitter"
- version = "0.1.4"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "1166d5c91dc97b88d1decc3285bb0a99ed84b05cfd0bc2341bdf2d43fc41e39b"
- dependencies = [
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-- "rand_core 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc",
-+ "rand_core 0.4.2",
-+ "winapi",
- ]
-
- [[package]]
- name = "rand_os"
- version = "0.1.3"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "7b75f676a1e053fc562eafbb47838d67c84801e38fc1ba459e8f180deabd5071"
- dependencies = [
-- "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
-- "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-- "rand_core 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cloudabi",
-+ "fuchsia-cprng",
-+ "libc",
-+ "rand_core 0.4.2",
-+ "rdrand",
-+ "winapi",
- ]
-
- [[package]]
- name = "rand_pcg"
- version = "0.1.2"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "abf9b09b01790cfe0364f52bf32995ea3c39f4d2dd011eac241d2914146d0b44"
- dependencies = [
-- "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
-- "rand_core 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "autocfg 0.1.7",
-+ "rand_core 0.4.2",
-+]
-+
-+[[package]]
-+name = "rand_pcg"
-+version = "0.2.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "16abd0c1b639e9eb4d7c50c0b8100b0d0f849be2349829c740fe8e6eb4816429"
-+dependencies = [
-+ "rand_core 0.5.1",
- ]
-
- [[package]]
- name = "rand_xorshift"
- version = "0.1.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "cbf7e9e623549b0e21f6e97cf8ecf247c1a8fd2e8a992ae265314300b2455d5c"
- dependencies = [
-- "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand_core 0.3.1",
- ]
-
- [[package]]
- name = "rdrand"
- version = "0.4.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2"
- dependencies = [
-- "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand_core 0.3.1",
- ]
-
- [[package]]
- name = "read-it-later"
- version = "0.0.2"
- dependencies = [
-- "anyhow 1.0.31 (registry+https://github.com/rust-lang/crates.io-index)",
-- "async-std 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "cairo-rs 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "chrono 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
-- "diesel 1.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
-- "diesel_migrations 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "futures 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gdk 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gdk-pixbuf 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gettext-rs 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gio 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "glib 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gtk 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gtk-macros 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "html2pango 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "http-client 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "isahc 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)",
-- "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libhandy 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-- "pretty_env_logger 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "regex 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "rust-crypto 0.2.36 (registry+https://github.com/rust-lang/crates.io-index)",
-- "sanitize_html 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "secret-service 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
-- "serde_derive 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
-- "serde_json 1.0.44 (registry+https://github.com/rust-lang/crates.io-index)",
-- "strum 0.16.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "strum_macros 0.16.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "url 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "wallabag-api 0.3.0 (git+https://github.com/swalladge/wallabag-api.git?rev=d2bbebbe76f44edc074e3b2f5313bb8861b6cbe4)",
-- "webkit2gtk 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "anyhow",
-+ "async-std",
-+ "cairo-rs",
-+ "chrono",
-+ "diesel",
-+ "diesel_migrations",
-+ "futures 0.3.16",
-+ "gdk",
-+ "gdk-pixbuf",
-+ "gettext-rs",
-+ "gio",
-+ "glib",
-+ "gtk",
-+ "gtk-macros",
-+ "html2pango",
-+ "http-client 1.1.1",
-+ "isahc 0.9.14",
-+ "lazy_static",
-+ "libhandy",
-+ "log",
-+ "once_cell",
-+ "pretty_env_logger",
-+ "regex",
-+ "rust-crypto",
-+ "sanitize_html",
-+ "secret-service",
-+ "serde",
-+ "serde_derive",
-+ "serde_json",
-+ "strum 0.16.0",
-+ "strum_macros 0.16.0",
-+ "url",
-+ "wallabag-api",
-+ "webkit2gtk",
- ]
-
- [[package]]
- name = "redox_syscall"
--version = "0.1.56"
-+version = "0.2.10"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "8383f39639269cde97d255a32bdb68c047337295414940c68bdd30c2e13203ff"
-+dependencies = [
-+ "bitflags",
-+]
-
- [[package]]
- name = "regex"
--version = "1.3.1"
-+version = "1.5.4"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d07a8629359eb56f1e2fb1652bb04212c072a87ba68546a04065d525673ac461"
- dependencies = [
-- "aho-corasick 0.7.6 (registry+https://github.com/rust-lang/crates.io-index)",
-- "memchr 2.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "regex-syntax 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)",
-- "thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "aho-corasick",
-+ "memchr",
-+ "regex-syntax",
- ]
-
- [[package]]
- name = "regex-syntax"
--version = "0.6.12"
-+version = "0.6.25"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "f497285884f3fcff424ffc933e56d7cbca511def0c9831a7f9b5f6153e3cc89b"
-
- [[package]]
- name = "rust-crypto"
- version = "0.2.36"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "f76d05d3993fd5f4af9434e8e436db163a12a9d40e1a58a726f27a01dfd12a2a"
- dependencies = [
-- "gcc 0.3.55 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-- "rand 0.3.23 (registry+https://github.com/rust-lang/crates.io-index)",
-- "rustc-serialize 0.3.24 (registry+https://github.com/rust-lang/crates.io-index)",
-- "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "gcc",
-+ "libc",
-+ "rand 0.3.23",
-+ "rustc-serialize",
-+ "time 0.1.44",
- ]
-
--[[package]]
--name = "rustc-demangle"
--version = "0.1.16"
--source = "registry+https://github.com/rust-lang/crates.io-index"
--
- [[package]]
- name = "rustc-serialize"
- version = "0.3.24"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "dcf128d1287d2ea9d80910b5f1120d0b8eede3fbf1abe91c40d39ea7d51e6fda"
-
- [[package]]
- name = "rustc_version"
- version = "0.2.3"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a"
-+dependencies = [
-+ "semver 0.9.0",
-+]
-+
-+[[package]]
-+name = "rustc_version"
-+version = "0.3.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "f0dfe2087c51c460008730de8b57e6a320782fbfb312e1f4d520e6c6fae155ee"
- dependencies = [
-- "semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "semver 0.11.0",
- ]
-
- [[package]]
- name = "ryu"
--version = "1.0.2"
-+version = "1.0.5"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "71d301d4193d031abdd79ff7e3dd721168a9572ef3fe51a1517aba235bd8f86e"
-
- [[package]]
- name = "sanitize_html"
- version = "0.6.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "422bdfab5da6695bdc9f28a25087f6a01bf35c0ce2f51eeb2608db8b464a60a8"
- dependencies = [
-- "html5ever 0.24.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "regex 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "html5ever 0.24.1",
-+ "lazy_static",
-+ "regex",
- ]
-
- [[package]]
- name = "schannel"
--version = "0.1.16"
-+version = "0.1.19"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "8f05ba609c234e60bee0d547fe94a4c7e9da733d1c962cf6e59efa4cd9c8bc75"
- dependencies = [
-- "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "lazy_static",
-+ "winapi",
- ]
-
- [[package]]
- name = "scheduled-thread-pool"
--version = "0.2.3"
-+version = "0.2.5"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "dc6f74fd1204073fa02d5d5d68bec8021be4c38690b61264b2fdb48083d0e7d7"
- dependencies = [
-- "parking_lot 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "parking_lot",
- ]
-
- [[package]]
- name = "scopeguard"
--version = "1.0.0"
-+version = "1.1.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd"
-
- [[package]]
- name = "secret-service"
--version = "1.0.0"
-+version = "1.1.3"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "6d752040301c251d653aa740dec847e95767ce312cfc469bee85eb13cbf81d8a"
- dependencies = [
-- "aes 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "block-modes 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
-- "dbus 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
-- "hkdf 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "num 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
-- "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "aes",
-+ "block-modes",
-+ "dbus",
-+ "hkdf",
-+ "lazy_static",
-+ "num",
-+ "rand 0.7.3",
-+ "sha2",
- ]
-
- [[package]]
- name = "semver"
- version = "0.9.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403"
-+dependencies = [
-+ "semver-parser 0.7.0",
-+]
-+
-+[[package]]
-+name = "semver"
-+version = "0.11.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "f301af10236f6df4160f7c3f04eec6dbc70ace82d23326abad5edee88801c6b6"
- dependencies = [
-- "semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "semver-parser 0.10.2",
- ]
-
- [[package]]
- name = "semver-parser"
- version = "0.7.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3"
-+
-+[[package]]
-+name = "semver-parser"
-+version = "0.10.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "00b0bef5b7f9e0df16536d3961cfb6e84331c065b4066afb39768d0e319411f7"
-+dependencies = [
-+ "pest",
-+]
-
- [[package]]
- name = "serde"
--version = "1.0.104"
-+version = "1.0.129"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d1f72836d2aa753853178eda473a3b9d8e4eefdaf20523b919677e6de489f8f1"
- dependencies = [
-- "serde_derive 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde_derive",
- ]
-
- [[package]]
- name = "serde_derive"
--version = "1.0.104"
-+version = "1.0.129"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e57ae87ad533d9a56427558b516d0adac283614e347abf85b0dc0cbbf0a249f3"
- dependencies = [
-- "proc-macro2 1.0.17 (registry+https://github.com/rust-lang/crates.io-index)",
-- "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "syn 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "proc-macro2",
-+ "quote",
-+ "syn",
- ]
-
- [[package]]
- name = "serde_json"
--version = "1.0.44"
-+version = "1.0.66"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "336b10da19a12ad094b59d870ebde26a45402e5b470add4b5fd03c5048a32127"
-+dependencies = [
-+ "itoa",
-+ "ryu",
-+ "serde",
-+]
-+
-+[[package]]
-+name = "serde_qs"
-+version = "0.8.4"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d8a72808528a89fa9eca23bbb6a1eb92cb639b881357269b6510f11e50c0f8a9"
- dependencies = [
-- "itoa 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "ryu 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "percent-encoding",
-+ "serde",
-+ "thiserror",
- ]
-
- [[package]]
- name = "serde_urlencoded"
--version = "0.6.1"
-+version = "0.7.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "edfa57a7f8d9c1d260a549e7224100f6c43d43f9103e06dd8b4095a9b2b43ce9"
- dependencies = [
-- "dtoa 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "itoa 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
-- "url 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "form_urlencoded",
-+ "itoa",
-+ "ryu",
-+ "serde",
- ]
-
-+[[package]]
-+name = "sha1"
-+version = "0.6.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "2579985fda508104f7587689507983eadd6a6e84dd35d6d115361f530916fa0d"
-+
- [[package]]
- name = "sha2"
--version = "0.8.0"
-+version = "0.9.5"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "b362ae5752fd2137731f9fa25fd4d9058af34666ca1966fb969119cc35719f12"
- dependencies = [
-- "block-buffer 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
-- "digest 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "fake-simd 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "opaque-debug 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "block-buffer",
-+ "cfg-if 1.0.0",
-+ "cpufeatures",
-+ "digest",
-+ "opaque-debug",
- ]
-
- [[package]]
- name = "siphasher"
- version = "0.2.3"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "0b8de496cf83d4ed58b6be86c3a275b8602f6ffe98d3024a869e124147a9a3ac"
-+
-+[[package]]
-+name = "siphasher"
-+version = "0.3.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "729a25c17d72b06c68cb47955d44fda88ad2d3e7d77e025663fdd69b93dd71a1"
-
- [[package]]
- name = "slab"
--version = "0.4.2"
-+version = "0.4.4"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "c307a32c1c5c437f38c7fd45d753050587732ba8628319fbdf12a7e289ccc590"
-
- [[package]]
- name = "sluice"
--version = "0.5.2"
-+version = "0.5.5"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "6d7400c0eff44aa2fcb5e31a5f24ba9716ed90138769e4977a2ba6014ae63eb5"
- dependencies = [
-- "futures-channel 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "futures-core 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "futures-io 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "futures-util 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "async-channel",
-+ "futures-core",
-+ "futures-io",
- ]
-
- [[package]]
- name = "smallvec"
--version = "1.1.0"
-+version = "1.6.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "fe0f37c9e8f3c5a4a66ad655a93c74daac4ad00c441533bf5c6e7990bb42604e"
-
- [[package]]
- name = "socket2"
--version = "0.3.11"
-+version = "0.4.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "765f090f0e423d2b55843402a07915add955e7d60657db13707a159727326cad"
- dependencies = [
-- "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-- "redox_syscall 0.1.56 (registry+https://github.com/rust-lang/crates.io-index)",
-- "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc",
-+ "winapi",
- ]
-
- [[package]]
- name = "soup-sys"
--version = "0.9.0"
-+version = "0.10.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "c3c7adf08565630bbb71f955f11f8a68464817ded2703a3549747c235b58a13e"
-+dependencies = [
-+ "bitflags",
-+ "gio-sys 0.10.1",
-+ "glib-sys 0.10.1",
-+ "gobject-sys 0.10.0",
-+ "libc",
-+ "pkg-config",
-+ "system-deps 1.3.2",
-+]
-+
-+[[package]]
-+name = "spinning_top"
-+version = "0.2.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "75adad84ee84b521fb2cca2d4fd0f1dab1d8d026bda3c5bea4ca63b5f9f9293c"
-+dependencies = [
-+ "lock_api",
-+]
-+
-+[[package]]
-+name = "standback"
-+version = "0.2.17"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e113fb6f3de07a243d434a56ec6f186dfd51cb08448239fe7bcae73f87ff28ff"
-+dependencies = [
-+ "version_check",
-+]
-+
-+[[package]]
-+name = "stdweb"
-+version = "0.4.20"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d022496b16281348b52d0e30ae99e01a73d737b2f45d38fed4edf79f9325a1d5"
- dependencies = [
-- "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gio-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "glib-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gobject-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-- "pkg-config 0.3.17 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "discard",
-+ "rustc_version 0.2.3",
-+ "stdweb-derive",
-+ "stdweb-internal-macros",
-+ "stdweb-internal-runtime",
-+ "wasm-bindgen",
- ]
-
-+[[package]]
-+name = "stdweb-derive"
-+version = "0.5.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "c87a60a40fccc84bef0652345bbbbbe20a605bf5d0ce81719fc476f5c03b50ef"
-+dependencies = [
-+ "proc-macro2",
-+ "quote",
-+ "serde",
-+ "serde_derive",
-+ "syn",
-+]
-+
-+[[package]]
-+name = "stdweb-internal-macros"
-+version = "0.2.9"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "58fa5ff6ad0d98d1ffa8cb115892b6e69d67799f6763e162a1c9db421dc22e11"
-+dependencies = [
-+ "base-x",
-+ "proc-macro2",
-+ "quote",
-+ "serde",
-+ "serde_derive",
-+ "serde_json",
-+ "sha1",
-+ "syn",
-+]
-+
-+[[package]]
-+name = "stdweb-internal-runtime"
-+version = "0.1.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "213701ba3370744dcd1a12960caa4843b3d68b4d1c0a5d575e0d65b2ee9d16c0"
-+
- [[package]]
- name = "string_cache"
- version = "0.7.5"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "89c058a82f9fd69b1becf8c274f412281038877c553182f1d02eb027045a2d67"
-+dependencies = [
-+ "lazy_static",
-+ "new_debug_unreachable",
-+ "phf_shared 0.7.24",
-+ "precomputed-hash",
-+ "serde",
-+ "string_cache_codegen 0.4.4",
-+ "string_cache_shared",
-+]
-+
-+[[package]]
-+name = "string_cache"
-+version = "0.8.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "8ddb1139b5353f96e429e1a5e19fbaf663bddedaa06d1dbd49f82e352601209a"
- dependencies = [
-- "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "new_debug_unreachable 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
-- "phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)",
-- "precomputed-hash 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
-- "string_cache_codegen 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "string_cache_shared 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "lazy_static",
-+ "new_debug_unreachable",
-+ "phf_shared 0.8.0",
-+ "precomputed-hash",
-+ "serde",
- ]
-
- [[package]]
- name = "string_cache_codegen"
- version = "0.4.4"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "f0f45ed1b65bf9a4bf2f7b7dc59212d1926e9eaf00fa998988e420fd124467c6"
-+dependencies = [
-+ "phf_generator 0.7.24",
-+ "phf_shared 0.7.24",
-+ "proc-macro2",
-+ "quote",
-+ "string_cache_shared",
-+]
-+
-+[[package]]
-+name = "string_cache_codegen"
-+version = "0.5.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "f24c8e5e19d22a726626f1a5e16fe15b132dcf21d10177fa5a45ce7962996b97"
- dependencies = [
-- "phf_generator 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)",
-- "phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)",
-- "proc-macro2 1.0.17 (registry+https://github.com/rust-lang/crates.io-index)",
-- "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "string_cache_shared 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "phf_generator 0.8.0",
-+ "phf_shared 0.8.0",
-+ "proc-macro2",
-+ "quote",
- ]
-
- [[package]]
- name = "string_cache_shared"
- version = "0.3.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "b1884d1bc09741d466d9b14e6d37ac89d6909cbcac41dd9ae982d4d063bbedfc"
-
- [[package]]
- name = "strum"
- version = "0.16.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "6138f8f88a16d90134763314e3fc76fa3ed6a7db4725d6acf9a3ef95a3188d22"
-+
-+[[package]]
-+name = "strum"
-+version = "0.18.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "57bd81eb48f4c437cadc685403cad539345bf703d78e63707418431cecd4522b"
-+
-+[[package]]
-+name = "strum"
-+version = "0.21.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "aaf86bbcfd1fa9670b7a129f64fc0c9fcbbfe4f1bc4210e9e98fe71ffc12cde2"
-
- [[package]]
- name = "strum_macros"
- version = "0.16.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "0054a7df764039a6cd8592b9de84be4bec368ff081d203a7d5371cbfa8e65c81"
-+dependencies = [
-+ "heck",
-+ "proc-macro2",
-+ "quote",
-+ "syn",
-+]
-+
-+[[package]]
-+name = "strum_macros"
-+version = "0.18.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "87c85aa3f8ea653bfd3ddf25f7ee357ee4d204731f6aa9ad04002306f6e2774c"
-+dependencies = [
-+ "heck",
-+ "proc-macro2",
-+ "quote",
-+ "syn",
-+]
-+
-+[[package]]
-+name = "strum_macros"
-+version = "0.21.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d06aaeeee809dbc59eb4556183dd927df67db1540de5be8d3ec0b6636358a5ec"
- dependencies = [
-- "heck 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "proc-macro2 1.0.17 (registry+https://github.com/rust-lang/crates.io-index)",
-- "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "syn 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "heck",
-+ "proc-macro2",
-+ "quote",
-+ "syn",
- ]
-
- [[package]]
- name = "subtle"
--version = "1.0.0"
-+version = "2.4.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "6bdef32e8150c2a081110b42772ffe7d7c9032b606bc226c8260fd97e0976601"
-
- [[package]]
- name = "surf"
--version = "2.0.0-alpha.0"
-+version = "2.3.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "73f856d60bdb4679fc9ec516c34093484e963431b5016a8429f85a8e74b5ccaa"
- dependencies = [
-- "encoding_rs 0.8.22 (registry+https://github.com/rust-lang/crates.io-index)",
-- "futures 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "http 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)",
-- "http-client 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "isahc 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "js-sys 0.3.37 (registry+https://github.com/rust-lang/crates.io-index)",
-- "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-- "mime 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)",
-- "mime_guess 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
-- "serde_json 1.0.44 (registry+https://github.com/rust-lang/crates.io-index)",
-- "serde_urlencoded 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "url 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "wasm-bindgen 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
-- "wasm-bindgen-futures 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
-- "web-sys 0.3.37 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "async-std",
-+ "async-trait",
-+ "cfg-if 1.0.0",
-+ "encoding_rs",
-+ "futures-util",
-+ "getrandom 0.2.3",
-+ "http-client 6.5.1",
-+ "http-types",
-+ "log",
-+ "mime_guess",
-+ "once_cell",
-+ "pin-project-lite",
-+ "serde",
-+ "serde_json",
-+ "web-sys",
- ]
-
- [[package]]
- name = "syn"
--version = "0.15.44"
-+version = "1.0.75"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "b7f58f7e8eaa0009c5fec437aabf511bd9933e4b2d7407bd05273c01a8906ea7"
- dependencies = [
-- "proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)",
-- "quote 0.6.13 (registry+https://github.com/rust-lang/crates.io-index)",
-- "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "proc-macro2",
-+ "quote",
-+ "unicode-xid",
- ]
-
- [[package]]
--name = "syn"
--version = "1.0.25"
-+name = "system-deps"
-+version = "1.3.2"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "0f3ecc17269a19353b3558b313bba738b25d82993e30d62a18406a24aba4649b"
- dependencies = [
-- "proc-macro2 1.0.17 (registry+https://github.com/rust-lang/crates.io-index)",
-- "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "unicode-xid 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "heck",
-+ "pkg-config",
-+ "strum 0.18.0",
-+ "strum_macros 0.18.0",
-+ "thiserror",
-+ "toml",
-+ "version-compare 0.0.10",
- ]
-
- [[package]]
--name = "synstructure"
--version = "0.12.3"
-+name = "system-deps"
-+version = "3.2.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "480c269f870722b3b08d2f13053ce0c2ab722839f472863c3e2d61ff3a1c2fa6"
- dependencies = [
-- "proc-macro2 1.0.17 (registry+https://github.com/rust-lang/crates.io-index)",
-- "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "syn 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
-- "unicode-xid 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "anyhow",
-+ "cfg-expr",
-+ "heck",
-+ "itertools",
-+ "pkg-config",
-+ "strum 0.21.0",
-+ "strum_macros 0.21.1",
-+ "thiserror",
-+ "toml",
-+ "version-compare 0.0.11",
- ]
-
- [[package]]
- name = "tendril"
--version = "0.4.1"
-+version = "0.4.2"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "a9ef557cb397a4f0a5a3a628f06515f78563f2209e64d47055d9dc6052bf5e33"
- dependencies = [
-- "futf 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
-- "mac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "utf-8 0.7.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "futf",
-+ "mac",
-+ "utf-8",
- ]
-
- [[package]]
- name = "termcolor"
--version = "1.0.5"
-+version = "1.1.2"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "2dfed899f0eb03f32ee8c6a0aabdb8a7949659e3466561fc0adf54e26d88c5f4"
- dependencies = [
-- "wincolor 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi-util",
- ]
-
- [[package]]
--name = "thread_local"
--version = "0.3.6"
-+name = "thiserror"
-+version = "1.0.26"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "93119e4feac1cbe6c798c34d3a53ea0026b0b1de6a120deef895137c0529bfe2"
-+dependencies = [
-+ "thiserror-impl",
-+]
-+
-+[[package]]
-+name = "thiserror-impl"
-+version = "1.0.26"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "060d69a0afe7796bf42e9e2ff91f5ee691fb15c53d38b4b62a9a53eb23164745"
- dependencies = [
-- "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "proc-macro2",
-+ "quote",
-+ "syn",
- ]
-
- [[package]]
- name = "time"
--version = "0.1.42"
-+version = "0.1.44"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "6db9e6914ab8b1ae1c260a4ae7a49b6c5611b40328a735b21862567685e73255"
-+dependencies = [
-+ "libc",
-+ "wasi 0.10.0+wasi-snapshot-preview1",
-+ "winapi",
-+]
-+
-+[[package]]
-+name = "time"
-+version = "0.2.27"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "4752a97f8eebd6854ff91f1c1824cd6160626ac4bd44287f7f4ea2035a02a242"
-+dependencies = [
-+ "const_fn",
-+ "libc",
-+ "standback",
-+ "stdweb",
-+ "time-macros",
-+ "version_check",
-+ "winapi",
-+]
-+
-+[[package]]
-+name = "time-macros"
-+version = "0.1.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "957e9c6e26f12cb6d0dd7fc776bb67a706312e7299aed74c8dd5b17ebb27e2f1"
-+dependencies = [
-+ "proc-macro-hack",
-+ "time-macros-impl",
-+]
-+
-+[[package]]
-+name = "time-macros-impl"
-+version = "0.1.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "fd3c141a1b43194f3f56a1411225df8646c55781d5f26db825b3d98507eb482f"
-+dependencies = [
-+ "proc-macro-hack",
-+ "proc-macro2",
-+ "quote",
-+ "standback",
-+ "syn",
-+]
-+
-+[[package]]
-+name = "tinyvec"
-+version = "1.3.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "848a1e1181b9f6753b5e96a092749e29b11d19ede67dfbbd6c7dc7e0f49b5338"
- dependencies = [
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-- "redox_syscall 0.1.56 (registry+https://github.com/rust-lang/crates.io-index)",
-- "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "tinyvec_macros",
- ]
-
-+[[package]]
-+name = "tinyvec_macros"
-+version = "0.1.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c"
-+
- [[package]]
- name = "tokio-io"
--version = "0.1.12"
-+version = "0.1.13"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "57fc868aae093479e3131e3d165c93b1c7474109d13c90ec0dda2a1bbfff0674"
-+dependencies = [
-+ "bytes 0.4.12",
-+ "futures 0.1.31",
-+ "log",
-+]
-+
-+[[package]]
-+name = "toml"
-+version = "0.5.8"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "a31142970826733df8241ef35dc040ef98c679ab14d7c3e54d827099b3acecaa"
- dependencies = [
-- "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)",
-- "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)",
-- "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde",
- ]
-
- [[package]]
- name = "tracing"
--version = "0.1.14"
-+version = "0.1.26"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "09adeb8c97449311ccd28a427f96fb563e7fd31aabf994189879d9da2394b89d"
- dependencies = [
-- "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-- "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-- "tracing-attributes 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
-- "tracing-core 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cfg-if 1.0.0",
-+ "log",
-+ "pin-project-lite",
-+ "tracing-attributes",
-+ "tracing-core",
- ]
-
- [[package]]
- name = "tracing-attributes"
--version = "0.1.8"
-+version = "0.1.15"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "c42e6fa53307c8a17e4ccd4dc81cf5ec38db9209f59b222210375b54ee40d1e2"
- dependencies = [
-- "proc-macro2 1.0.17 (registry+https://github.com/rust-lang/crates.io-index)",
-- "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "syn 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "proc-macro2",
-+ "quote",
-+ "syn",
- ]
-
- [[package]]
- name = "tracing-core"
--version = "0.1.10"
-+version = "0.1.19"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "2ca517f43f0fb96e0c3072ed5c275fe5eece87e8cb52f4a77b69226d3b1c9df8"
- dependencies = [
-- "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "lazy_static",
- ]
-
- [[package]]
- name = "tracing-futures"
--version = "0.2.4"
-+version = "0.2.5"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "97d095ae15e245a057c8e8451bab9b3ee1e1f68e9ba2b4fbc18d0ac5237835f2"
- dependencies = [
-- "pin-project 0.4.17 (registry+https://github.com/rust-lang/crates.io-index)",
-- "tracing 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "pin-project",
-+ "tracing",
- ]
-
- [[package]]
- name = "typenum"
--version = "1.11.2"
-+version = "1.13.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "879f6906492a7cd215bfa4cf595b600146ccfac0c79bcbd1f3000162af5e8b06"
-+
-+[[package]]
-+name = "ucd-trie"
-+version = "0.1.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "56dee185309b50d1f11bfedef0fe6d036842e3fb77413abef29f8f8d1c5d4c1c"
-
- [[package]]
- name = "unicase"
- version = "2.6.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "50f37be617794602aabbeee0be4f259dc1778fabe05e2d67ee8f79326d5cb4f6"
- dependencies = [
-- "version_check 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "version_check",
- ]
-
- [[package]]
- name = "unicode-bidi"
--version = "0.3.4"
-+version = "0.3.6"
- source = "registry+https://github.com/rust-lang/crates.io-index"
--dependencies = [
-- "matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
--]
-+checksum = "246f4c42e67e7a4e3c6106ff716a5d067d4132a642840b242e357e468a2a0085"
-
- [[package]]
- name = "unicode-normalization"
--version = "0.1.11"
-+version = "0.1.19"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d54590932941a9e9266f0832deed84ebe1bf2e4c9e4a3554d393d18f5e854bf9"
- dependencies = [
-- "smallvec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "tinyvec",
- ]
-
- [[package]]
- name = "unicode-segmentation"
--version = "1.6.0"
-+version = "1.8.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "8895849a949e7845e06bd6dc1aa51731a103c42707010a5b591c0038fb73385b"
-
- [[package]]
- name = "unicode-xid"
--version = "0.1.0"
-+version = "0.2.2"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "8ccb82d61f80a663efe1f787a51b16b5a51e3314d6ac365b08639f52387b33f3"
-
- [[package]]
--name = "unicode-xid"
--version = "0.2.0"
-+name = "universal-hash"
-+version = "0.4.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "9f214e8f697e925001e66ec2c6e37a4ef93f0f78c2eed7814394e10c62025b05"
-+dependencies = [
-+ "generic-array",
-+ "subtle",
-+]
-
- [[package]]
- name = "url"
--version = "1.7.2"
-+version = "2.2.2"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "a507c383b2d33b5fc35d1861e77e6b383d158b2da5e14fe51b83dfedf6fd578c"
- dependencies = [
-- "idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
-- "matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
-- "percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "form_urlencoded",
-+ "idna",
-+ "matches",
-+ "percent-encoding",
-+ "serde",
- ]
-
- [[package]]
--name = "url"
--version = "2.1.0"
-+name = "utf-8"
-+version = "0.7.6"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9"
-+
-+[[package]]
-+name = "value-bag"
-+version = "1.0.0-alpha.7"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "dd320e1520f94261153e96f7534476ad869c14022aee1e59af7c778075d840ae"
- dependencies = [
-- "idna 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
-- "percent-encoding 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "ctor",
-+ "version_check",
- ]
-
- [[package]]
--name = "utf-8"
--version = "0.7.5"
-+name = "vcpkg"
-+version = "0.2.15"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426"
-
- [[package]]
--name = "vcpkg"
--version = "0.2.8"
-+name = "version-compare"
-+version = "0.0.10"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d63556a25bae6ea31b52e640d7c41d1ab27faba4ccb600013837a3d0b3994ca1"
-+
-+[[package]]
-+name = "version-compare"
-+version = "0.0.11"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "1c18c859eead79d8b95d09e4678566e8d70105c4e7b251f707a03df32442661b"
-
- [[package]]
- name = "version_check"
--version = "0.9.1"
-+version = "0.9.3"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "5fecdca9a5291cc2b8dcf7dc02453fee791a280f3743cb0905f8822ae463b3fe"
-+
-+[[package]]
-+name = "waker-fn"
-+version = "1.1.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "9d5b2c62b4012a3e1eca5a7e077d13b3bf498c4073e33ccd58626607748ceeca"
-
- [[package]]
- name = "wallabag-api"
--version = "0.3.0"
--source = "git+https://github.com/swalladge/wallabag-api.git?rev=d2bbebbe76f44edc074e3b2f5313bb8861b6cbe4#d2bbebbe76f44edc074e3b2f5313bb8861b6cbe4"
-+version = "0.4.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e7574c7c89ca85e354fdcb9e448d3ca206c045383a7969b2253c183a641a78ca"
- dependencies = [
-- "chrono 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
-- "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-- "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
-- "serde_json 1.0.44 (registry+https://github.com/rust-lang/crates.io-index)",
-- "serde_urlencoded 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "surf 2.0.0-alpha.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "chrono",
-+ "log",
-+ "serde",
-+ "serde_json",
-+ "serde_urlencoded",
-+ "surf",
- ]
-
-+[[package]]
-+name = "wasi"
-+version = "0.9.0+wasi-snapshot-preview1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519"
-+
-+[[package]]
-+name = "wasi"
-+version = "0.10.0+wasi-snapshot-preview1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "1a143597ca7c7793eff794def352d41792a93c481eb1042423ff7ff72ba2c31f"
-+
- [[package]]
- name = "wasm-bindgen"
--version = "0.2.60"
-+version = "0.2.76"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "8ce9b1b516211d33767048e5d47fa2a381ed8b76fc48d2ce4aa39877f9f183e0"
- dependencies = [
-- "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-- "wasm-bindgen-macro 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cfg-if 1.0.0",
-+ "wasm-bindgen-macro",
- ]
-
- [[package]]
- name = "wasm-bindgen-backend"
--version = "0.2.60"
-+version = "0.2.76"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "cfe8dc78e2326ba5f845f4b5bf548401604fa20b1dd1d365fb73b6c1d6364041"
- dependencies = [
-- "bumpalo 3.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-- "proc-macro2 1.0.17 (registry+https://github.com/rust-lang/crates.io-index)",
-- "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "syn 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
-- "wasm-bindgen-shared 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "bumpalo",
-+ "lazy_static",
-+ "log",
-+ "proc-macro2",
-+ "quote",
-+ "syn",
-+ "wasm-bindgen-shared",
- ]
-
- [[package]]
- name = "wasm-bindgen-futures"
--version = "0.4.10"
-+version = "0.4.26"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "95fded345a6559c2cfee778d562300c581f7d4ff3edb9b0d230d69800d213972"
- dependencies = [
-- "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-- "js-sys 0.3.37 (registry+https://github.com/rust-lang/crates.io-index)",
-- "wasm-bindgen 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
-- "web-sys 0.3.37 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cfg-if 1.0.0",
-+ "js-sys",
-+ "wasm-bindgen",
-+ "web-sys",
- ]
-
- [[package]]
- name = "wasm-bindgen-macro"
--version = "0.2.60"
-+version = "0.2.76"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "44468aa53335841d9d6b6c023eaab07c0cd4bddbcfdee3e2bb1e8d2cb8069fef"
- dependencies = [
-- "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "wasm-bindgen-macro-support 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "quote",
-+ "wasm-bindgen-macro-support",
- ]
-
- [[package]]
- name = "wasm-bindgen-macro-support"
--version = "0.2.60"
-+version = "0.2.76"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "0195807922713af1e67dc66132c7328206ed9766af3858164fb583eedc25fbad"
- dependencies = [
-- "proc-macro2 1.0.17 (registry+https://github.com/rust-lang/crates.io-index)",
-- "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "syn 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
-- "wasm-bindgen-backend 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
-- "wasm-bindgen-shared 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "proc-macro2",
-+ "quote",
-+ "syn",
-+ "wasm-bindgen-backend",
-+ "wasm-bindgen-shared",
- ]
-
- [[package]]
- name = "wasm-bindgen-shared"
--version = "0.2.60"
-+version = "0.2.76"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "acdb075a845574a1fa5f09fd77e43f7747599301ea3417a9fbffdeedfc1f4a29"
-
- [[package]]
- name = "web-sys"
--version = "0.3.37"
-+version = "0.3.53"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "224b2f6b67919060055ef1a67807367c2066ed520c3862cc013d26cf893a783c"
- dependencies = [
-- "js-sys 0.3.37 (registry+https://github.com/rust-lang/crates.io-index)",
-- "wasm-bindgen 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "js-sys",
-+ "wasm-bindgen",
- ]
-
- [[package]]
- name = "webkit2gtk"
--version = "0.9.0"
-+version = "0.14.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e3e47b7f870883fc21612d2a51b74262f7f2cc5371f1621370817292a35300a9"
- dependencies = [
-- "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "cairo-rs 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gdk 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gdk-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gio 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gio-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "glib 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "glib-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gobject-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gtk 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gtk-sys 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "javascriptcore-rs 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-- "webkit2gtk-sys 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "bitflags",
-+ "cairo-rs",
-+ "gdk",
-+ "gdk-sys",
-+ "gio",
-+ "gio-sys 0.14.0",
-+ "glib",
-+ "glib-sys 0.14.0",
-+ "gobject-sys 0.14.0",
-+ "gtk",
-+ "gtk-sys",
-+ "javascriptcore-rs",
-+ "libc",
-+ "once_cell",
-+ "webkit2gtk-sys",
- ]
-
- [[package]]
- name = "webkit2gtk-sys"
--version = "0.11.0"
-+version = "0.14.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "b66ccc9f0cb4de7c3b92376a5bf64e7ddffb33852f092721731a039ec38dda98"
- dependencies = [
-- "atk-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "cairo-sys-rs 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gdk-pixbuf-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gdk-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gio-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "glib-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gobject-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "gtk-sys 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)",
-- "javascriptcore-rs-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-- "pango-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-- "pkg-config 0.3.17 (registry+https://github.com/rust-lang/crates.io-index)",
-- "soup-sys 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "atk-sys",
-+ "bitflags",
-+ "cairo-sys-rs",
-+ "gdk-pixbuf-sys",
-+ "gdk-sys",
-+ "gio-sys 0.14.0",
-+ "glib-sys 0.14.0",
-+ "gobject-sys 0.14.0",
-+ "gtk-sys",
-+ "javascriptcore-rs-sys",
-+ "libc",
-+ "pango-sys",
-+ "pkg-config",
-+ "soup-sys",
-+ "system-deps 3.2.0",
- ]
-
- [[package]]
--name = "winapi"
--version = "0.2.8"
-+name = "wepoll-ffi"
-+version = "0.1.2"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d743fdedc5c64377b5fc2bc036b01c7fd642205a0d96356034ae3404d49eb7fb"
-+dependencies = [
-+ "cc",
-+]
-
- [[package]]
- name = "winapi"
--version = "0.3.8"
-+version = "0.3.9"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
- dependencies = [
-- "winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-- "winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi-i686-pc-windows-gnu",
-+ "winapi-x86_64-pc-windows-gnu",
- ]
-
--[[package]]
--name = "winapi-build"
--version = "0.1.1"
--source = "registry+https://github.com/rust-lang/crates.io-index"
--
- [[package]]
- name = "winapi-i686-pc-windows-gnu"
- version = "0.4.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
-
- [[package]]
- name = "winapi-util"
--version = "0.1.2"
-+version = "0.1.5"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178"
- dependencies = [
-- "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi",
- ]
-
- [[package]]
- name = "winapi-x86_64-pc-windows-gnu"
- version = "0.4.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
-
- [[package]]
--name = "wincolor"
--version = "1.0.2"
-+name = "xml5ever"
-+version = "0.16.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "0b1b52e6e8614d4a58b8e70cf51ec0cc21b256ad8206708bcff8139b5bbd6a59"
- dependencies = [
-- "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
-- "winapi-util 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "log",
-+ "mac",
-+ "markup5ever 0.10.1",
-+ "time 0.1.44",
- ]
--
--[[package]]
--name = "ws2_32-sys"
--version = "0.2.1"
--source = "registry+https://github.com/rust-lang/crates.io-index"
--dependencies = [
-- "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
-- "winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
--]
--
--[metadata]
--"checksum aes 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "54eb1d8fe354e5fc611daf4f2ea97dd45a765f4f1e4512306ec183ae2e8f20c9"
--"checksum aes-soft 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "cfd7e7ae3f9a1fb5c03b389fc6bb9a51400d0c13053f0dca698c832bfd893a0d"
--"checksum aesni 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2f70a6b5f971e473091ab7cfb5ffac6cde81666c4556751d8d5620ead8abf100"
--"checksum aho-corasick 0.7.6 (registry+https://github.com/rust-lang/crates.io-index)" = "58fb5e95d83b38284460a5fda7d6470aa0b8844d283a0b614b8535e880800d2d"
--"checksum ammonia 2.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "384d704f242a0a9faf793fff775a0be6ab9aa27edabffa097331d73779142520"
--"checksum anyhow 1.0.31 (registry+https://github.com/rust-lang/crates.io-index)" = "85bb70cc08ec97ca5450e6eba421deeea5f172c0fc61f78b5357b2a8e8be195f"
--"checksum async-std 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0bf6039b315300e057d198b9d3ab92ee029e31c759b7f1afae538145e6f18a3e"
--"checksum async-task 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "de6bd58f7b9cc49032559422595c81cbfcf04db2f2133592f70af19e258a1ced"
--"checksum atk 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "444daefa55f229af145ea58d77efd23725024ee1f6f3102743709aa6b18c663e"
--"checksum atk-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e552c1776737a4c80110d06b36d099f47c727335f9aaa5d942a72b6863a8ec6f"
--"checksum atty 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)" = "1803c647a3ec87095e7ae7acfca019e98de5ec9a7d01343f611cf3152ed71a90"
--"checksum autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "1d49d90015b3c36167a20fe2810c5cd875ad504b39cff3d4eae7977e6b7c1cb2"
--"checksum backtrace 0.3.40 (registry+https://github.com/rust-lang/crates.io-index)" = "924c76597f0d9ca25d762c25a4d369d51267536465dc5064bdf0eb073ed477ea"
--"checksum backtrace-sys 0.1.32 (registry+https://github.com/rust-lang/crates.io-index)" = "5d6575f128516de27e3ce99689419835fce9643a9b215a14d2b5b685be018491"
--"checksum bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693"
--"checksum block-buffer 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)" = "c0940dc441f31689269e10ac70eb1002a3a1d3ad1390e030043662eb7fe4688b"
--"checksum block-cipher-trait 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1c924d49bd09e7c06003acda26cd9742e796e34282ec6c1189404dee0c1f4774"
--"checksum block-modes 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "31aa8410095e39fdb732909fb5730a48d5bd7c2e3cd76bd1b07b3dbea130c529"
--"checksum block-padding 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "fa79dedbb091f449f1f39e53edf88d5dbe95f895dae6135a8d7b881fb5af73f5"
--"checksum bumpalo 3.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "12ae9db68ad7fac5fe51304d20f016c911539251075a214f8e663babefa35187"
--"checksum byte-tools 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7"
--"checksum byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a7c3dd8985a7111efc5c80b44e23ecdd8c007de8ade3b96595387e812b957cf5"
--"checksum bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)" = "206fdffcfa2df7cbe15601ef46c813fce0965eb3286db6b56c583b814b51c81c"
--"checksum bytes 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)" = "130aac562c0dd69c56b3b1cc8ffd2e17be31d0b6c25b61c96b76231aa23e39e1"
--"checksum cairo-rs 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0b528aca2ef1026235d0122495dbaee0b09479f77c51f6df8d9bb9cb1c6d6f87"
--"checksum cairo-sys-rs 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)" = "ff65ba02cac715be836f63429ab00a767d48336efc5497c5637afb53b4f14d63"
--"checksum cc 1.0.48 (registry+https://github.com/rust-lang/crates.io-index)" = "f52a465a666ca3d838ebbf08b241383421412fe7ebb463527bba275526d89f76"
--"checksum cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)" = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
--"checksum chrono 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "31850b4a4d6bae316f7a09e691c944c28299298837edc0a03f755618c23cbc01"
--"checksum cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f"
--"checksum crossbeam-channel 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "acec9a3b0b3559f15aee4f90746c4e5e293b701c0f7d3925d24e01645267b68c"
--"checksum crossbeam-deque 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c3aa945d63861bfe624b55d153a39684da1e8c0bc8fba932f7ee3a3c16cea3ca"
--"checksum crossbeam-epoch 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5064ebdbf05ce3cb95e45c8b086f72263f4166b29b97f6baff7ef7fe047b55ac"
--"checksum crossbeam-utils 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)" = "04973fa96e96579258a5091af6003abde64af786b860f18622b82e026cca60e6"
--"checksum crossbeam-utils 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ce446db02cdc3165b94ae73111e570793400d0794e46125cc4056c81cbb039f4"
--"checksum crypto-mac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4434400df11d95d556bac068ddfedd482915eb18fe8bea89bc80b6e4b1c179e5"
--"checksum curl 0.4.25 (registry+https://github.com/rust-lang/crates.io-index)" = "06aa71e9208a54def20792d877bc663d6aae0732b9852e612c4a933177c31283"
--"checksum curl-sys 0.4.31+curl-7.70.0 (registry+https://github.com/rust-lang/crates.io-index)" = "dcd62757cc4f5ab9404bc6ca9f0ae447e729a1403948ce5106bd588ceac6a3b0"
--"checksum dbus 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "b4a0c10ea61042b7555729ab0608727bbbb06ce709c11e6047cfa4e10f6d052d"
--"checksum diesel 1.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "9d7cc03b910de9935007861dce440881f69102aaaedfd4bc5a6f40340ca5840c"
--"checksum diesel_derives 1.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "45f5098f628d02a7a0f68ddba586fb61e80edec3bdc1be3b921f4ceec60858d3"
--"checksum diesel_migrations 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bf3cde8413353dc7f5d72fa8ce0b99a560a359d2c5ef1e5817ca731cd9008f4c"
--"checksum digest 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f3d0c8c8752312f9713efd397ff63acb9f85585afbf179282e720e7704954dd5"
--"checksum dtoa 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)" = "ea57b42383d091c85abcc2706240b94ab2a8fa1fc81c10ff23c4de06e2a90b5e"
--"checksum encoding_rs 0.8.22 (registry+https://github.com/rust-lang/crates.io-index)" = "cd8d03faa7fe0c1431609dfad7bbe827af30f82e1e2ae6f7ee4fca6bd764bc28"
--"checksum env_logger 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "aafcde04e90a5226a6443b7aabdb016ba2f8307c847d524724bd9b346dd1a2d3"
--"checksum failure 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "f8273f13c977665c5db7eb2b99ae520952fe5ac831ae4cd09d80c4c7042b5ed9"
--"checksum failure_derive 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "0bc225b78e0391e4b8683440bf2e63c2deeeb2ce5189eab46e2b68c6d3725d08"
--"checksum fake-simd 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e88a8acf291dafb59c2d96e8f59828f3838bb1a70398823ade51a84de6a6deed"
--"checksum fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "2fad85553e09a6f881f739c29f0b00b0f01357c743266d478b68951ce23285f3"
--"checksum fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba"
--"checksum fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82"
--"checksum fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7"
--"checksum futf 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "7c9c1ce3fa9336301af935ab852c437817d14cd33690446569392e65170aac3b"
--"checksum futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)" = "1b980f2816d6ee8673b6517b52cb0e808a180efc92e5c19d02cdda79066703ef"
--"checksum futures 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "5c329ae8753502fb44ae4fc2b622fa2a94652c41e795143765ba0927f92ab780"
--"checksum futures-channel 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "f0c77d04ce8edd9cb903932b608268b3fffec4163dc053b3b402bf47eac1f1a8"
--"checksum futures-core 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "f25592f769825e89b92358db00d26f965761e094951ac44d3663ef25b7ac464a"
--"checksum futures-executor 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "f674f3e1bcb15b37284a90cedf55afdba482ab061c407a9c0ebbd0f3109741ba"
--"checksum futures-io 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "a638959aa96152c7a4cddf50fcb1e3fede0583b27157c26e67d6f99904090dc6"
--"checksum futures-macro 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "9a5081aa3de1f7542a794a397cde100ed903b0630152d0973479018fd85423a7"
--"checksum futures-sink 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "3466821b4bc114d95b087b850a724c6f83115e929bc88f1fa98a3304a944c8a6"
--"checksum futures-task 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "7b0a34e53cf6cdcd0178aa573aed466b646eb3db769570841fda0c7ede375a27"
--"checksum futures-timer 2.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a1de7508b218029b0f01662ed8f61b1c964b3ae99d6f25462d0f55a595109df6"
--"checksum futures-util 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "22766cf25d64306bedf0384da004d05c9974ab104fcc4528f1236181c18004c5"
--"checksum gcc 0.3.55 (registry+https://github.com/rust-lang/crates.io-index)" = "8f5f3913fa0bfe7ee1fd8248b6b9f42a5af4b9d65ec2dd2c3c26132b950ecfc2"
--"checksum gdk 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2739c12374f83bad563ee839c2b3ea5c60391465a254fd4a54b6e3e9648dc61f"
--"checksum gdk-pixbuf 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e248220c46b329b097d4b158d2717f8c688f16dd76d0399ace82b3e98062bdd7"
--"checksum gdk-pixbuf-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d8991b060a9e9161bafd09bf4a202e6fd404f5b4dd1a08d53a1e84256fb34ab0"
--"checksum gdk-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)" = "6adf679e91d1bff0c06860287f80403e7db54c2d2424dce0a470023b56c88fbb"
--"checksum generic-array 0.12.3 (registry+https://github.com/rust-lang/crates.io-index)" = "c68f0274ae0e023facc3c97b2e00f076be70e254bc851d972503b328db79b2ec"
--"checksum gettext-rs 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)" = "df454a42d8a718280c78666efe0707c120873736961ae91ead898f17ac66ce7c"
--"checksum gettext-sys 0.19.9 (registry+https://github.com/rust-lang/crates.io-index)" = "e034c4ba5bb796730a6cc5eb0d654c16885006a7c3d6c6603581ed809434f153"
--"checksum gio 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "879a5eb1a91623819d658669104fb587c1ae68695d50947f3e4949a00c6bc218"
--"checksum gio-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4fad225242b9eae7ec8a063bb86974aca56885014672375e5775dc0ea3533911"
--"checksum glib 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)" = "27bafffe3fc615449d5a87705f93f6fe4fcf749662b9d08cc9d5451f6c1b0f21"
--"checksum glib-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)" = "95856f3802f446c05feffa5e24859fe6a183a7cb849c8449afc35c86b1e316e2"
--"checksum gobject-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)" = "31d1a804f62034eccf370006ccaef3708a71c31d561fee88564abe71177553d9"
--"checksum gtk 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7cd1d646cc9a2cb795f33b538779a3f22e71dc172f2aba08a41e84a2f72c0dec"
--"checksum gtk-macros 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1874c48e670519ce192093ac906c08a6dde7cb2d18b28722ef237726a39c3a63"
--"checksum gtk-sys 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)" = "53def660c7b48b00b510c81ef2d2fbd3c570f1527081d8d7947f471513e1a4c1"
--"checksum heck 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "20564e78d53d2bb135c343b3f47714a56af2061f1c928fdb541dc7b9fdd94205"
--"checksum hermit-abi 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "f629dc602392d3ec14bfc8a09b5e644d7ffd725102b48b81e59f90f2633621d7"
--"checksum hkdf 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "35e8f9d776bbe83f1ff24951f7cc19140fb7ff8d0378463c4c4955f6b0d3e503"
--"checksum hmac 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5dcb5e64cda4c23119ab41ba960d1e170a774c8e4b9d9e6a9bc18aabf5e59695"
--"checksum html2pango 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c60e9f4e430de4dc2b92c35ab670e7a010bc781abfe0dd6653835c6f3a18a53c"
--"checksum html5ever 0.23.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5ce65ac8028cf5a287a7dbf6c4e0a6cf2dcf022ed5b167a81bae66ebf599a8b7"
--"checksum html5ever 0.24.1 (registry+https://github.com/rust-lang/crates.io-index)" = "025483b0a1e4577bb28578318c886ee5f817dda6eb62473269349044406644cb"
--"checksum http 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)" = "d6ccf5ede3a895d8856620237b2f02972c1bbc78d2965ad7fe8838d4a0ed41f0"
--"checksum http 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "28d569972648b2c512421b5f2a405ad6ac9666547189d0c5477a3f200f3e02f9"
--"checksum http-client 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "bf86227a76b64ebd37d442853370f7177be4fd3ae6f9ff5c9e0349643e1cb332"
--"checksum humantime 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "df004cfca50ef23c36850aaaa59ad52cc70d0e90243c3c7737a4dd32dc7a3c4f"
--"checksum idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "38f09e0f0b1fb55fdee1f17470ad800da77af5186a1a76c026b679358b7e844e"
--"checksum idna 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "02e2673c30ee86b5b96a9cb52ad15718aa1f966f5ab9ad54a8b95d5ca33120a9"
--"checksum iovec 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "b2b3ea6ff95e175473f8ffe6a7eb7c00d054240321b84c57051175fe3c1e075e"
--"checksum isahc 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c45d8c41e6f0b5aa495fd2577e6068e100f57eb87c4b353b0dab20bb53a56035"
--"checksum isahc 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)" = "098c47b6176a9b667292810105999d6029d8338819f299584677e8a125e549c2"
--"checksum itoa 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)" = "501266b7edd0174f8530248f87f99c88fbe60ca4ef3dd486835b8d8d53136f7f"
--"checksum javascriptcore-rs 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2104be353e5c19d587e25f36ecb6d59504b5573ad84b96b06650b0cc99d02784"
--"checksum javascriptcore-rs-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3f46ada8a08dcd75a10afae872fbfb51275df4a8ae0d46b8cc7c708f08dd2998"
--"checksum js-sys 0.3.37 (registry+https://github.com/rust-lang/crates.io-index)" = "6a27d435371a2fa5b6d2b028a74bbdb1234f308da363226a2854ca3ff8ba7055"
--"checksum kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d"
--"checksum kv-log-macro 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "8c54d9f465d530a752e6ebdc217e081a7a614b48cb200f6f0aee21ba6bc9aabb"
--"checksum lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
--"checksum libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)" = "d515b1f41455adea1313a4a2ac8a8a477634fbae63cc6100e3aebb207ce61558"
--"checksum libhandy 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2aa9f5620e4143358bcd645fe7d7d27b974ed9148cbdd490bc811813899afa07"
--"checksum libhandy-sys 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d707af842e918719b71af0ac6cf31d1843f6e8a4d1e9c733b998d8d482e60446"
--"checksum libnghttp2-sys 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "b359f5ec8106bc297694c9a562ace312be2cfd17a5fc68dc12249845aa144b11"
--"checksum libsqlite3-sys 0.16.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5e5b95e89c330291768dc840238db7f9e204fd208511ab6319b56193a7f2ae25"
--"checksum libz-sys 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)" = "2eb5e43362e38e2bca2fd5f5134c4d4564a23a5c28e9b95411652021a8675ebe"
--"checksum linkify 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "9ce9439c6f4a1092dc1861272bef01034891da39f13aa1cdcf40ca3e4081de5f"
--"checksum locale_config 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "73ac19ebe45489e5d53b4346d8b90bb3dd03275c5fdf2ce22a982516d86b535c"
--"checksum lock_api 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e57b3997725d2b60dbec1297f6c2e2957cc383db1cebd6be812163f969c7d586"
--"checksum log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)" = "14b6052be84e6b71ab17edffc2eeabf5c2c3ae1fdb464aae35ac50c67a44e1f7"
--"checksum mac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c41e0c4fef86961ac6d6f8a82609f55f31b05e4fce149ac5710e439df7619ba4"
--"checksum maplit 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "3e2e65a1a2e43cfcb47a895c4c8b10d1f4a61097f9f254f183aee60cad9c651d"
--"checksum markup5ever 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f1af46a727284117e09780d05038b1ce6fc9c76cc6df183c3dae5a8955a25e21"
--"checksum markup5ever 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "65381d9d47506b8592b97c4efd936afcf673b09b059f2bef39c7211ee78b9d03"
--"checksum matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08"
--"checksum memchr 2.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "88579771288728879b57485cc7d6b07d648c9f0141eb955f8ab7f9d45394468e"
--"checksum memoffset 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "75189eb85871ea5c2e2c15abbdd541185f63b408415e5051f5cac122d8c774b9"
--"checksum migrations_internals 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8089920229070f914b9ce9b07ef60e175b2b9bc2d35c3edd8bf4433604e863b9"
--"checksum migrations_macros 1.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "719ef0bc7f531428764c9b70661c14abd50a7f3d21f355752d9985aa21251c9e"
--"checksum mime 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)" = "dd1d63acd1b78403cc0c325605908475dd9b9a3acbf65ed8bcab97e27014afcf"
--"checksum mime_guess 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "1a0ed03949aef72dbdf3116a383d7b38b4768e6f960528cd6a6044aa9ed68599"
--"checksum mio 0.6.21 (registry+https://github.com/rust-lang/crates.io-index)" = "302dec22bcf6bae6dfb69c647187f4b4d0fb6f535521f7bc022430ce8e12008f"
--"checksum mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)" = "966257a94e196b11bb43aca423754d87429960a768de9414f3691d6957abf125"
--"checksum miow 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "8c1f2f3b1cf331de6896aabf6e9d55dca90356cc9960cca7eaaf408a355ae919"
--"checksum net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)" = "42550d9fb7b6684a6d404d9fa7250c2eb2646df731d1c06afc06dcee9e1bcf88"
--"checksum new_debug_unreachable 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "f40f005c60db6e03bae699e414c58bf9aa7ea02a2d0b9bfbcf19286cc4c82b30"
--"checksum num 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "cf4825417e1e1406b3782a8ce92f4d53f26ec055e3622e1881ca8e9f5f9e08db"
--"checksum num-bigint 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "f9c3f34cdd24f334cb265d9bf8bfa8a241920d026916785747a92f0e55541a1a"
--"checksum num-complex 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "fcb0cf31fb3ff77e6d2a6ebd6800df7fdcd106f2ad89113c9130bcd07f93dffc"
--"checksum num-integer 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)" = "b85e541ef8255f6cf42bbfe4ef361305c6c135d10919ecc26126c4e5ae94bc09"
--"checksum num-iter 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "76bd5272412d173d6bf9afdf98db8612bbabc9a7a830b7bfc9c188911716132e"
--"checksum num-rational 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f2885278d5fe2adc2f75ced642d52d879bffaceb5a2e0b1d4309ffdfb239b454"
--"checksum num-traits 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)" = "d4c81ffc11c212fa327657cb19dd85eb7419e163b5b076bede2bdb5c974c07e4"
--"checksum num_cpus 1.11.1 (registry+https://github.com/rust-lang/crates.io-index)" = "76dac5ed2a876980778b8b85f75a71b6cbf0db0b1232ee12f826bccb00d09d72"
--"checksum once_cell 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "891f486f630e5c5a4916c7e16c4b24a53e78c860b646e9f8e005e4f16847bfed"
--"checksum opaque-debug 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2839e79665f131bdb5782e51f2c6c9599c133c6098982a54c794358bf432529c"
--"checksum openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "77af24da69f9d9341038eba93a073b1fdaaa1b788221b00a69bce9e762cb32de"
--"checksum openssl-sys 0.9.53 (registry+https://github.com/rust-lang/crates.io-index)" = "465d16ae7fc0e313318f7de5cecf57b2fbe7511fd213978b457e1c96ff46736f"
--"checksum pango 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1e9c6b728f1be8edb5f9f981420b651d5ea30bdb9de89f1f1262d0084a020577"
--"checksum pango-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)" = "86b93d84907b3cf0819bff8f13598ba72843bee579d5ebc2502e4b0367b4be7d"
--"checksum parking_lot 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "92e98c49ab0b7ce5b222f2cc9193fc4efe11c6d0bd4f648e374684a6857b1cfc"
--"checksum parking_lot_core 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7582838484df45743c8434fbff785e8edf260c28748353d44bc0da32e0ceabf1"
--"checksum percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "31010dd2e1ac33d5b46a5b413495239882813e0369f8ed8a5e266f173602f831"
--"checksum percent-encoding 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e"
--"checksum phf 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)" = "b3da44b85f8e8dfaec21adae67f95d93244b2ecf6ad2a692320598dcc8e6dd18"
--"checksum phf_codegen 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)" = "b03e85129e324ad4166b06b2c7491ae27fe3ec353af72e72cd1654c7225d517e"
--"checksum phf_generator 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)" = "09364cc93c159b8b06b1f4dd8a4398984503483891b0c26b867cf431fb132662"
--"checksum phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)" = "234f71a15de2288bcb7e3b6515828d22af7ec8598ee6d24c3b526fa0a80b67a0"
--"checksum pin-project 0.4.17 (registry+https://github.com/rust-lang/crates.io-index)" = "edc93aeee735e60ecb40cf740eb319ff23eab1c5748abfdb5c180e4ce49f7791"
--"checksum pin-project-internal 0.4.17 (registry+https://github.com/rust-lang/crates.io-index)" = "e58db2081ba5b4c93bd6be09c40fd36cb9193a8336c384f3b40012e531aa7e40"
--"checksum pin-project-lite 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f0af6cbca0e6e3ce8692ee19fb8d734b641899e07b68eb73e9bbbd32f1703991"
--"checksum pin-utils 0.1.0-alpha.4 (registry+https://github.com/rust-lang/crates.io-index)" = "5894c618ce612a3fa23881b152b608bafb8c56cfc22f434a3ba3120b40f7b587"
--"checksum pkg-config 0.3.17 (registry+https://github.com/rust-lang/crates.io-index)" = "05da548ad6865900e60eaba7f589cc0783590a92e940c26953ff81ddbab2d677"
--"checksum precomputed-hash 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c"
--"checksum pretty_env_logger 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "717ee476b1690853d222af4634056d830b5197ffd747726a9a1eee6da9f49074"
--"checksum proc-macro-hack 0.5.11 (registry+https://github.com/rust-lang/crates.io-index)" = "ecd45702f76d6d3c75a80564378ae228a85f0b59d2f3ed43c91b4a69eb2ebfc5"
--"checksum proc-macro-nested 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "369a6ed065f249a159e06c45752c780bda2fb53c995718f9e484d08daa9eb42e"
--"checksum proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)" = "cf3d2011ab5c909338f7887f4fc896d35932e29146c12c8d01da6b22a80ba759"
--"checksum proc-macro2 1.0.17 (registry+https://github.com/rust-lang/crates.io-index)" = "1502d12e458c49a4c9cbff560d0fe0060c252bc29799ed94ca2ed4bb665a0101"
--"checksum quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9274b940887ce9addde99c4eee6b5c44cc494b182b97e73dc8ffdcb3397fd3f0"
--"checksum quote 0.6.13 (registry+https://github.com/rust-lang/crates.io-index)" = "6ce23b6b870e8f94f81fb0a363d65d86675884b34a09043c81e5562f11c1f8e1"
--"checksum quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "053a8c8bcc71fcce321828dc897a98ab9760bef03a4fc36693c231e5b3216cfe"
--"checksum r2d2 0.8.7 (registry+https://github.com/rust-lang/crates.io-index)" = "22b5c5fc5fba064373f03887337b412e0e1562d63023393db77251146cb75553"
--"checksum rand 0.3.23 (registry+https://github.com/rust-lang/crates.io-index)" = "64ac302d8f83c0c1974bf758f6b041c6c8ada916fbb44a609158ca8b064cc76c"
--"checksum rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "552840b97013b1a26992c11eac34bdd778e464601a4c2054b5f0bff7c6761293"
--"checksum rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)" = "6d71dacdc3c88c1fde3885a3be3fbab9f35724e6ce99467f7d9c5026132184ca"
--"checksum rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "556d3a1ca6600bfcbab7c7c91ccb085ac7fbbcd70e008a98742e7847f4f7bcef"
--"checksum rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b"
--"checksum rand_core 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9c33a3c44ca05fa6f1807d8e6743f3824e8509beca625669633be0acbdf509dc"
--"checksum rand_hc 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7b40677c7be09ae76218dc623efbf7b18e34bced3f38883af07bb75630a21bc4"
--"checksum rand_isaac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ded997c9d5f13925be2a6fd7e66bf1872597f759fd9dd93513dd7e92e5a5ee08"
--"checksum rand_jitter 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "1166d5c91dc97b88d1decc3285bb0a99ed84b05cfd0bc2341bdf2d43fc41e39b"
--"checksum rand_os 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "7b75f676a1e053fc562eafbb47838d67c84801e38fc1ba459e8f180deabd5071"
--"checksum rand_pcg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "abf9b09b01790cfe0364f52bf32995ea3c39f4d2dd011eac241d2914146d0b44"
--"checksum rand_xorshift 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cbf7e9e623549b0e21f6e97cf8ecf247c1a8fd2e8a992ae265314300b2455d5c"
--"checksum rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2"
--"checksum redox_syscall 0.1.56 (registry+https://github.com/rust-lang/crates.io-index)" = "2439c63f3f6139d1b57529d16bc3b8bb855230c8efcc5d3a896c8bea7c3b1e84"
--"checksum regex 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "dc220bd33bdce8f093101afe22a037b8eb0e5af33592e6a9caafff0d4cb81cbd"
--"checksum regex-syntax 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)" = "11a7e20d1cce64ef2fed88b66d347f88bd9babb82845b2b858f3edbf59a4f716"
--"checksum rust-crypto 0.2.36 (registry+https://github.com/rust-lang/crates.io-index)" = "f76d05d3993fd5f4af9434e8e436db163a12a9d40e1a58a726f27a01dfd12a2a"
--"checksum rustc-demangle 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)" = "4c691c0e608126e00913e33f0ccf3727d5fc84573623b8d65b2df340b5201783"
--"checksum rustc-serialize 0.3.24 (registry+https://github.com/rust-lang/crates.io-index)" = "dcf128d1287d2ea9d80910b5f1120d0b8eede3fbf1abe91c40d39ea7d51e6fda"
--"checksum rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a"
--"checksum ryu 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "bfa8506c1de11c9c4e4c38863ccbe02a305c8188e85a05a784c9e11e1c3910c8"
--"checksum sanitize_html 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "422bdfab5da6695bdc9f28a25087f6a01bf35c0ce2f51eeb2608db8b464a60a8"
--"checksum schannel 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)" = "87f550b06b6cba9c8b8be3ee73f391990116bf527450d2556e9b9ce263b9a021"
--"checksum scheduled-thread-pool 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "f5de7bc31f28f8e6c28df5e1bf3d10610f5fdc14cc95f272853512c70a2bd779"
--"checksum scopeguard 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b42e15e59b18a828bbf5c58ea01debb36b9b096346de35d941dcb89009f24a0d"
--"checksum secret-service 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "655a7a4e6eecc8c68f00be6813c161dcd45e430f4a719dde46dcc3f3afd8014f"
--"checksum semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403"
--"checksum semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3"
--"checksum serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)" = "414115f25f818d7dfccec8ee535d76949ae78584fc4f79a6f45a904bf8ab4449"
--"checksum serde_derive 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)" = "128f9e303a5a29922045a830221b8f78ec74a5f544944f3d5984f8ec3895ef64"
--"checksum serde_json 1.0.44 (registry+https://github.com/rust-lang/crates.io-index)" = "48c575e0cc52bdd09b47f330f646cf59afc586e9c4e3ccd6fc1f625b8ea1dad7"
--"checksum serde_urlencoded 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "9ec5d77e2d4c73717816afac02670d5c4f534ea95ed430442cad02e7a6e32c97"
--"checksum sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7b4d8bfd0e469f417657573d8451fb33d16cfe0989359b93baf3a1ffc639543d"
--"checksum siphasher 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "0b8de496cf83d4ed58b6be86c3a275b8602f6ffe98d3024a869e124147a9a3ac"
--"checksum slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c111b5bd5695e56cffe5129854aa230b39c93a305372fdbb2668ca2394eea9f8"
--"checksum sluice 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "fed13b7cb46f13a15db2c4740f087a848acc8b31af89f95844d40137451f89b1"
--"checksum smallvec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "44e59e0c9fa00817912ae6e4e6e3c4fe04455e75699d06eedc7d85917ed8e8f4"
--"checksum socket2 0.3.11 (registry+https://github.com/rust-lang/crates.io-index)" = "e8b74de517221a2cb01a53349cf54182acdc31a074727d3079068448c0676d85"
--"checksum soup-sys 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "48a2f246b51c81d4baa1ce611240c2f6e0323ae75f3b6cc9d2d2911e0567962c"
--"checksum string_cache 0.7.5 (registry+https://github.com/rust-lang/crates.io-index)" = "89c058a82f9fd69b1becf8c274f412281038877c553182f1d02eb027045a2d67"
--"checksum string_cache_codegen 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)" = "f0f45ed1b65bf9a4bf2f7b7dc59212d1926e9eaf00fa998988e420fd124467c6"
--"checksum string_cache_shared 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b1884d1bc09741d466d9b14e6d37ac89d6909cbcac41dd9ae982d4d063bbedfc"
--"checksum strum 0.16.0 (registry+https://github.com/rust-lang/crates.io-index)" = "6138f8f88a16d90134763314e3fc76fa3ed6a7db4725d6acf9a3ef95a3188d22"
--"checksum strum_macros 0.16.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0054a7df764039a6cd8592b9de84be4bec368ff081d203a7d5371cbfa8e65c81"
--"checksum subtle 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2d67a5a62ba6e01cb2192ff309324cb4875d0c451d55fe2319433abe7a05a8ee"
--"checksum surf 2.0.0-alpha.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1640fa223ab85a28abd533ad229cc840336acb1d65a5e3f8d86daa9d8f930061"
--"checksum syn 0.15.44 (registry+https://github.com/rust-lang/crates.io-index)" = "9ca4b3b69a77cbe1ffc9e198781b7acb0c7365a883670e8f1c1bc66fba79a5c5"
--"checksum syn 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)" = "f14a640819f79b72a710c0be059dce779f9339ae046c8bef12c361d56702146f"
--"checksum synstructure 0.12.3 (registry+https://github.com/rust-lang/crates.io-index)" = "67656ea1dc1b41b1451851562ea232ec2e5a80242139f7e679ceccfb5d61f545"
--"checksum tendril 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "707feda9f2582d5d680d733e38755547a3e8fb471e7ba11452ecfd9ce93a5d3b"
--"checksum termcolor 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "96d6098003bde162e4277c70665bd87c326f5a0c3f3fbfb285787fa482d54e6e"
--"checksum thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c6b53e329000edc2b34dbe8545fd20e55a333362d0a321909685a19bd28c3f1b"
--"checksum time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)" = "db8dcfca086c1143c9270ac42a2bbd8a7ee477b78ac8e45b19abfb0cbede4b6f"
--"checksum tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)" = "5090db468dad16e1a7a54c8c67280c5e4b544f3d3e018f0b913b400261f85926"
--"checksum tracing 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)" = "a7c6b59d116d218cb2d990eb06b77b64043e0268ef7323aae63d8b30ae462923"
--"checksum tracing-attributes 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "99bbad0de3fd923c9c3232ead88510b783e5a4d16a6154adffa3d53308de984c"
--"checksum tracing-core 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)" = "0aa83a9a47081cd522c09c81b31aec2c9273424976f922ad61c053b58350b715"
--"checksum tracing-futures 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "ab7bb6f14721aa00656086e9335d363c5c8747bae02ebe32ea2c7dece5689b4c"
--"checksum typenum 1.11.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6d2783fe2d6b8c1101136184eb41be8b1ad379e4657050b8aaff0c79ee7575f9"
--"checksum unicase 2.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "50f37be617794602aabbeee0be4f259dc1778fabe05e2d67ee8f79326d5cb4f6"
--"checksum unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5"
--"checksum unicode-normalization 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)" = "b561e267b2326bb4cebfc0ef9e68355c7abe6c6f522aeac2f5bf95d56c59bdcf"
--"checksum unicode-segmentation 1.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e83e153d1053cbb5a118eeff7fd5be06ed99153f00dbcd8ae310c5fb2b22edc0"
--"checksum unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc"
--"checksum unicode-xid 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "826e7639553986605ec5979c7dd957c7895e93eabed50ab2ffa7f6128a75097c"
--"checksum url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dd4e7c0d531266369519a4aa4f399d748bd37043b00bde1e4ff1f60a120b355a"
--"checksum url 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "75b414f6c464c879d7f9babf951f23bc3743fb7313c081b2e6ca719067ea9d61"
--"checksum utf-8 0.7.5 (registry+https://github.com/rust-lang/crates.io-index)" = "05e42f7c18b8f902290b009cde6d651262f956c98bc51bca4cd1d511c9cd85c7"
--"checksum vcpkg 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "3fc439f2794e98976c88a2a2dafce96b930fe8010b0a256b3c2199a773933168"
--"checksum version_check 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)" = "078775d0255232fb988e6fccf26ddc9d1ac274299aaedcedce21c6f72cc533ce"
--"checksum wallabag-api 0.3.0 (git+https://github.com/swalladge/wallabag-api.git?rev=d2bbebbe76f44edc074e3b2f5313bb8861b6cbe4)" = "<none>"
--"checksum wasm-bindgen 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)" = "2cc57ce05287f8376e998cbddfb4c8cb43b84a7ec55cf4551d7c00eef317a47f"
--"checksum wasm-bindgen-backend 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)" = "d967d37bf6c16cca2973ca3af071d0a2523392e4a594548155d89a678f4237cd"
--"checksum wasm-bindgen-futures 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "7add542ea1ac7fdaa9dc25e031a6af33b7d63376292bd24140c637d00d1c312a"
--"checksum wasm-bindgen-macro 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)" = "8bd151b63e1ea881bb742cd20e1d6127cef28399558f3b5d415289bc41eee3a4"
--"checksum wasm-bindgen-macro-support 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)" = "d68a5b36eef1be7868f668632863292e37739656a80fc4b9acec7b0bd35a4931"
--"checksum wasm-bindgen-shared 0.2.60 (registry+https://github.com/rust-lang/crates.io-index)" = "daf76fe7d25ac79748a37538b7daeed1c7a6867c92d3245c12c6222e4a20d639"
--"checksum web-sys 0.3.37 (registry+https://github.com/rust-lang/crates.io-index)" = "2d6f51648d8c56c366144378a33290049eafdd784071077f6fe37dae64c1c4cb"
--"checksum webkit2gtk 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d88f8ec7f54b941a98b8921a27b0965347005ec4177737e5015f2b1c5baee794"
--"checksum webkit2gtk-sys 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7ed60661b81f0cc92f3c2043d83262e3a1ac253b08a616550a9fc008ae28c185"
--"checksum winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a"
--"checksum winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)" = "8093091eeb260906a183e6ae1abdba2ef5ef2257a21801128899c3fc699229c6"
--"checksum winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc"
--"checksum winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
--"checksum winapi-util 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7168bab6e1daee33b4557efd0e95d5ca70a03706d39fa5f3fe7a236f584b03c9"
--"checksum winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
--"checksum wincolor 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "96f5016b18804d24db43cebf3c77269e7569b8954a8464501c216cc5e070eaa9"
--"checksum ws2_32-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d59cefebd0c892fa2dd6de581e937301d8552cb44489cdff035c6187cb63fa5e"
-diff --git a/Cargo.toml b/Cargo.toml
-index 5a4f00b..e010fa7 100644
---- a/Cargo.toml
-+++ b/Cargo.toml
-@@ -5,21 +5,21 @@ authors = ["Bilal Elmoussaoui <bil.elmoussaoui@gmail.com>"]
- edition = "2018"
-
- [dependencies]
--gtk = { version = "0.8", features = ["v3_22"] }
--glib = "0.9"
--gio = { version = "0.8", features = ["v2_56"] }
--cairo-rs = "0.8"
--gdk = "0.12"
--gdk-pixbuf = "0.8"
-+gtk = { version = "0.14", features = ["v3_22"] }
-+glib = "0.14"
-+gio = { version = "0.14", features = ["v2_64"] }
-+cairo-rs = "0.14"
-+gdk = "0.14"
-+gdk-pixbuf = "0.14"
- log = "0.4"
--libhandy = "0.5"
--webkit2gtk = { version = "0.9", features = ["v2_6"] }
-+libhandy = "0.8"
-+webkit2gtk = { version = "0.14", features = ["v2_6"] }
- gettext-rs= { version = "0.4", features = ["gettext-system"] }
- lazy_static = "1.3"
- serde = "1.0"
- serde_json = "1.0"
- serde_derive = "1.0"
--wallabag-api = { git = "https://github.com/swalladge/wallabag-api.git", rev = "d2bbebbe76f44edc074e3b2f5313bb8861b6cbe4" }
-+wallabag-api = "0.4.1"
- pretty_env_logger = "0.3"
- diesel = { version = "1.4", features = ["sqlite", "r2d2", "chrono"] }
- diesel_migrations = { version = "1.4", features = ["sqlite"] }
-@@ -36,5 +36,6 @@ html2pango = "0.3"
- rust-crypto = "0.2"
- async-std = "1.4"
- futures = { version = "0.3", features = [ "thread-pool" ] }
--gtk-macros = "0.2"
-+gtk-macros = "0.3"
- http-client = { version = "1.1", features = ["native_client"] }
-+once_cell = "1.8.0"
-diff --git a/data/resources/ui/articles_list.ui b/data/resources/ui/articles_list.ui
-index 611b362..cae1e3b 100644
---- a/data/resources/ui/articles_list.ui
-+++ b/data/resources/ui/articles_list.ui
-@@ -3,11 +3,9 @@
- <interface>
- <requires lib="gtk+" version="3.20"/>
- <requires lib="libhandy" version="0.0"/>
-- <object class="HdyColumn" id="articles_list">
-+ <object class="HdyClamp" id="articles_list">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
-- <property name="maximum_width">800</property>
-- <property name="linear_growth_width">800</property>
- <child>
- <object class="GtkStack" id="stack">
- <property name="visible">True</property>
-diff --git a/data/resources/ui/login.ui.in b/data/resources/ui/login.ui.in
-index d7c03be..f0935d6 100644
---- a/data/resources/ui/login.ui.in
-+++ b/data/resources/ui/login.ui.in
-@@ -20,11 +20,9 @@
- </attributes>
- </child>
- </object>
-- <object class="HdyColumn" id="login">
-+ <object class="HdyClamp" id="login">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
-- <property name="maximum_width">450</property>
-- <property name="linear_growth_width">450</property>
- <child>
- <object class="GtkBox">
- <property name="visible">True</property>
-@@ -111,7 +109,7 @@
- <property name="can_focus">True</property>
- <property name="activatable">False</property>
- <property name="title" translatable="yes">Instance URL</property>
-- <child type="action">
-+ <child>
- <object class="GtkEntry" id="instance_entry">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
-@@ -127,7 +125,7 @@
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="title" translatable="yes">Client ID</property>
-- <child type="action">
-+ <child>
- <object class="GtkEntry" id="client_id_entry">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
-@@ -142,7 +140,7 @@
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="title" translatable="yes">Client Secret</property>
-- <child type="action">
-+ <child>
- <object class="GtkEntry" id="client_secret_entry">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
-@@ -159,7 +157,7 @@
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="title" translatable="yes">Username</property>
-- <child type="action">
-+ <child>
- <object class="GtkEntry" id="username_entry">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
-@@ -174,7 +172,7 @@
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="title" translatable="yes">Password</property>
-- <child type="action">
-+ <child>
- <object class="GtkEntry" id="password_entry">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
-diff --git a/data/resources/ui/settings.ui b/data/resources/ui/settings.ui
-index aa16664..0cf5ffb 100644
---- a/data/resources/ui/settings.ui
-+++ b/data/resources/ui/settings.ui
-@@ -18,7 +18,7 @@
- <object class="HdyActionRow">
- <property name="title" translatable="yes">Enable dark mode</property>
- <property name="visible">True</property>
-- <child type="action">
-+ <child>
- <object class="GtkSwitch" id="dark_mode_button">
- <property name="can_focus">True</property>
- <property name="valign">center</property>
-@@ -44,7 +44,7 @@
- <object class="HdyActionRow">
- <property name="title" translatable="yes">Username</property>
- <property name="visible">True</property>
-- <child type="action">
-+ <child>
- <object class="GtkLabel" id="username_label">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
-@@ -58,7 +58,7 @@
- <object class="HdyActionRow">
- <property name="title" translatable="yes">Email</property>
- <property name="visible">True</property>
-- <child type="action">
-+ <child>
- <object class="GtkLabel" id="email_label">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
-@@ -72,7 +72,7 @@
- <object class="HdyActionRow">
- <property name="title" translatable="yes">Created At</property>
- <property name="visible">True</property>
-- <child type="action">
-+ <child>
- <object class="GtkLabel" id="created_at_label">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
-@@ -86,7 +86,7 @@
- <object class="HdyActionRow">
- <property name="title" translatable="yes">Updated At</property>
- <property name="visible">True</property>
-- <child type="action">
-+ <child>
- <object class="GtkLabel" id="updated_at_label">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
-diff --git a/data/resources/ui/window.ui.in b/data/resources/ui/window.ui.in
-index 709d455..68961ae 100644
---- a/data/resources/ui/window.ui.in
-+++ b/data/resources/ui/window.ui.in
-@@ -258,11 +258,9 @@
- </object>
- </child>
- <child type="title">
-- <object class="HdyColumn">
-+ <object class="HdyClamp">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
-- <property name="maximum_width">500</property>
-- <property name="linear_growth_width">500</property>
- <property name="hexpand">True</property>
- <child>
- <object class="GtkEntry" id="article_url_entry">
-diff --git a/meson.build b/meson.build
-index f11aa4f..b10ef62 100644
---- a/meson.build
-+++ b/meson.build
-@@ -11,7 +11,7 @@ dependency('glib-2.0', version: '>= 2.56')
- dependency('gio-2.0', version: '>= 2.56')
- dependency('gdk-pixbuf-2.0')
- dependency('gtk+-3.0', version: '>= 3.24.7')
--dependency('libhandy-0.0', version: '>= 0.0.10')
-+dependency('libhandy-1', version: '>= 0.0.10')
-
- version = meson.project_version()
- version_array = version.split('.')
-diff --git a/src/application.rs b/src/application.rs
-index 71cfd2f..cb127d1 100644
---- a/src/application.rs
-+++ b/src/application.rs
-@@ -11,7 +11,6 @@ use futures::executor::ThreadPool;
- use gio::prelude::*;
- use glib::{Receiver, Sender};
- use gtk::prelude::*;
--use std::env;
- use std::{cell::RefCell, rc::Rc};
- use url::Url;
-
-@@ -40,7 +39,7 @@ pub struct Application {
-
- impl Application {
- pub fn new() -> Rc<Self> {
-- let app = gtk::Application::new(Some(config::APP_ID), gio::ApplicationFlags::FLAGS_NONE).unwrap();
-+ let app = gtk::Application::new(Some(config::APP_ID), gio::ApplicationFlags::FLAGS_NONE);
-
- let (sender, r) = glib::MainContext::channel(glib::PRIORITY_DEFAULT);
- let receiver = RefCell::new(Some(r));
-@@ -68,8 +67,7 @@ impl Application {
- let receiver = self.receiver.borrow_mut().take().unwrap();
- receiver.attach(None, move |action| app.do_action(action));
-
-- let args: Vec<String> = env::args().collect();
-- self.app.run(&args);
-+ self.app.run();
- }
-
- fn init(&self) {
-@@ -129,7 +127,7 @@ impl Application {
- clone!(@strong self.window.widget as window, @strong self.client as client => move |_, _| {
- let settings_widget = SettingsWidget::new(client.clone());
- settings_widget.widget.set_transient_for(Some(&window));
-- let size = window.get_size();
-+ let size = window.size();
- settings_widget.widget.resize(size.0, size.1);
- settings_widget.widget.show();
- })
-@@ -139,11 +137,13 @@ impl Application {
- self.app,
- "about",
- clone!(@strong self.window.widget as window => move |_, _| {
-- let builder = gtk::Builder::new_from_resource("/com/belmoussaoui/ReadItLater/about_dialog.ui");
-+ let builder = gtk::Builder::from_resource("/com/belmoussaoui/ReadItLater/about_dialog.ui");
- get_widget!(builder, gtk::AboutDialog, about_dialog);
-
- about_dialog.set_transient_for(Some(&window));
-- about_dialog.connect_response(|dialog, _| dialog.destroy());
-+ unsafe {
-+ about_dialog.connect_response(|dialog, _| dialog.destroy());
-+ }
- about_dialog.show();
- })
- );
-@@ -192,19 +192,19 @@ impl Application {
- window.present();
- });
-
-- if let Some(gtk_settings) = gtk::Settings::get_default() {
-+ if let Some(gtk_settings) = gtk::Settings::default() {
- SettingsManager::bind_property(Key::DarkMode, &gtk_settings, "gtk-application-prefer-dark-theme");
- }
- }
-
- fn setup_css(&self) {
-- if let Some(theme) = gtk::IconTheme::get_default() {
-+ if let Some(theme) = gtk::IconTheme::default() {
- theme.add_resource_path("/com/belmoussaoui/ReadItLater/icons");
- }
-
- let p = gtk::CssProvider::new();
- gtk::CssProvider::load_from_resource(&p, "/com/belmoussaoui/ReadItLater/style.css");
-- if let Some(screen) = gdk::Screen::get_default() {
-+ if let Some(screen) = gdk::Screen::default() {
- gtk::StyleContext::add_provider_for_screen(&screen, &p, 500);
- }
- }
-@@ -213,7 +213,7 @@ impl Application {
- * Auth
- */
- fn init_client(&self) {
-- let username = SettingsManager::get_string(Key::Username);
-+ let username = SettingsManager::string(Key::Username);
- match SecretManager::is_logged(&username) {
- Ok(config) => {
- send!(self.sender, Action::SetView(View::Articles));
-@@ -227,7 +227,7 @@ impl Application {
- send!(self.sender, Action::SetView(View::Syncing(true)));
- let client = self.client.clone();
- let sender = self.sender.clone();
-- let logged_username = SettingsManager::get_string(Key::Username);
-+ let logged_username = SettingsManager::string(Key::Username);
-
- spawn!(async move {
- let mut client = client.lock().await;
-@@ -261,7 +261,7 @@ impl Application {
- }
-
- fn logout(&self) -> Result<()> {
-- let username = SettingsManager::get_string(Key::Username);
-+ let username = SettingsManager::string(Key::Username);
- database::wipe()?;
- self.window.articles_view.clear();
- if SecretManager::logout(&username).is_ok() {
-@@ -275,7 +275,7 @@ impl Application {
- fn sync(&self) {
- send!(self.sender, Action::SetView(View::Syncing(true)));
- let mut since = Utc.timestamp(0, 0);
-- let last_sync = SettingsManager::get_integer(Key::LatestSync);
-+ let last_sync = SettingsManager::integer(Key::LatestSync);
- if last_sync != 0 {
- since = Utc.timestamp(last_sync.into(), 0);
- }
-diff --git a/src/database.rs b/src/database.rs
-index b9722b4..7b4a98b 100644
---- a/src/database.rs
-+++ b/src/database.rs
-@@ -8,7 +8,7 @@ use std::{fs, fs::File};
- type Pool = r2d2::Pool<ConnectionManager<SqliteConnection>>;
-
- lazy_static! {
-- static ref DB_PATH: PathBuf = glib::get_user_data_dir().unwrap().join("read-it-later");
-+ static ref DB_PATH: PathBuf = glib::user_cache_dir().join("read-it-later");
- static ref POOL: Pool = init_pool().expect("Failed to create a Pool");
- }
-
-diff --git a/src/main.rs b/src/main.rs
-index 0e36028..5b93108 100644
---- a/src/main.rs
-+++ b/src/main.rs
-@@ -16,7 +16,7 @@ extern crate strum_macros;
- extern crate gtk_macros;
-
- use gettextrs::*;
--use libhandy::Column;
-+use libhandy;
-
- mod application;
- mod config;
-@@ -27,7 +27,6 @@ mod settings;
- mod static_resources;
- mod views;
- mod widgets;
--mod window_state;
-
- use application::Application;
-
-@@ -44,7 +43,7 @@ fn main() {
- glib::set_application_name(&format!("Read It Later{}", config::NAME_SUFFIX));
-
- static_resources::init().expect("Failed to initialize the resource file.");
-- Column::new(); // Due to libhandy not having a main func :(
-+ libhandy::init();
- webkit2gtk::WebView::new();
-
- let app = Application::new();
-diff --git a/src/meson.build b/src/meson.build
-index d515ced..f523525 100644
---- a/src/meson.build
-+++ b/src/meson.build
-@@ -67,7 +67,6 @@ sources = files(
- 'main.rs',
- 'schema.rs',
- 'static_resources.rs',
-- 'window_state.rs',
- )
-
- custom_target('cargo-build',
-diff --git a/src/models/article.rs b/src/models/article.rs
-index 78f27aa..cafe87f 100644
---- a/src/models/article.rs
-+++ b/src/models/article.rs
-@@ -177,7 +177,7 @@ impl Article {
- preview_image.download(client).await?;
- }
-
-- return Ok(Some(gdk_pixbuf::Pixbuf::new_from_file(&preview_image.cache)?));
-+ return Ok(Some(gdk_pixbuf::Pixbuf::from_file(&preview_image.cache)?));
- }
- Ok(None)
- }
-diff --git a/src/models/client_manager.rs b/src/models/client_manager.rs
-index f747c1b..e043e86 100644
---- a/src/models/client_manager.rs
-+++ b/src/models/client_manager.rs
-@@ -48,7 +48,7 @@ impl ClientManager {
- debug!("[Client] Saving url {}", url);
- if let Some(client) = self.client.clone() {
- let mut client = client.lock().await;
-- let new_entry = NewEntry::new_with_url(url.into_string());
-+ let new_entry = NewEntry::new_with_url(url.into());
- if let Ok(entry) = client.create_entry(&new_entry).await {
- let article = Article::from(entry);
- send!(self.sender, Action::Articles(Box::new(ArticleAction::Add(article))));
-diff --git a/src/models/object_wrapper.rs b/src/models/object_wrapper.rs
-index e0d6f34..3b9b50c 100644
---- a/src/models/object_wrapper.rs
-+++ b/src/models/object_wrapper.rs
-@@ -5,42 +5,26 @@
- // https://github.com/gtk-rs/examples/blob/master/src/bin/listbox_model.rs
- // Source https://gitlab.gnome.org/World/Shortwave/blob/master/src/model/object_wrapper.rs
-
--use gtk::prelude::*;
-+use gtk::{glib, prelude::*};
- use serde::de::DeserializeOwned;
-
--use glib::subclass;
- use glib::subclass::prelude::*;
--use glib::translate::*;
-+use glib::{ParamSpec, Value};
-
- mod imp {
- use super::*;
- use std::cell::RefCell;
-
-+ #[derive(Default)]
- pub struct ObjectWrapper {
- data: RefCell<Option<String>>,
- }
-
-- static PROPERTIES: [subclass::Property; 1] = [subclass::Property("data", |name| {
-- glib::ParamSpec::string(
-- name,
-- "Data",
-- "Data",
-- None, // Default value
-- glib::ParamFlags::READWRITE,
-- )
-- })];
--
-+ #[glib::object_subclass]
- impl ObjectSubclass for ObjectWrapper {
- const NAME: &'static str = "ObjectWrapper";
-+ type Type = super::ObjectWrapper;
- type ParentType = glib::Object;
-- type Instance = subclass::simple::InstanceStruct<Self>;
-- type Class = subclass::simple::ClassStruct<Self>;
--
-- glib_object_subclass!();
--
-- fn class_init(klass: &mut Self::Class) {
-- klass.install_properties(&PROPERTIES);
-- }
-
- fn new() -> Self {
- Self { data: RefCell::new(None) }
-@@ -48,13 +32,24 @@ mod imp {
- }
-
- impl ObjectImpl for ObjectWrapper {
-- glib_object_impl!();
--
-- fn set_property(&self, _obj: &glib::Object, id: usize, value: &glib::Value) {
-- let prop = &PROPERTIES[id];
-+ fn properties() -> &'static [glib::ParamSpec] {
-+ use once_cell::sync::Lazy;
-+ static PROPERTIES: Lazy<Vec<glib::ParamSpec>> = Lazy::new(|| {
-+ vec![glib::ParamSpec::new_string(
-+ "data",
-+ "Data",
-+ "Data",
-+ None, // Default value
-+ glib::ParamFlags::READWRITE,
-+ )]
-+ });
-+
-+ PROPERTIES.as_ref()
-+ }
-
-- match *prop {
-- subclass::Property("data", ..) => {
-+ fn set_property(&self, _obj: &Self::Type, _id: usize, value: &Value, pspec: &ParamSpec) {
-+ match pspec.name() {
-+ "data" => {
- let data = value.get().expect("Failed to get `data` property");
- self.data.replace(data);
- }
-@@ -62,23 +57,17 @@ mod imp {
- }
- }
-
-- fn get_property(&self, _obj: &glib::Object, id: usize) -> Result<glib::Value, ()> {
-- let prop = &PROPERTIES[id];
--
-- match *prop {
-- subclass::Property("data", ..) => Ok(self.data.borrow().to_value()),
-+ fn property(&self, _obj: &Self::Type, _id: usize, pspec: &glib::ParamSpec) -> glib::Value {
-+ match pspec.name() {
-+ "data" => self.data.borrow().to_value(),
- _ => unimplemented!(),
- }
- }
- }
- }
-
--glib_wrapper! {
-- pub struct ObjectWrapper(Object<subclass::simple::InstanceStruct<imp::ObjectWrapper>, subclass::simple::ClassStruct<imp::ObjectWrapper>, ObjectWrapperClass>);
--
-- match fn {
-- get_type => || imp::ObjectWrapper::get_type().to_glib(),
-- }
-+glib::wrapper! {
-+ pub struct ObjectWrapper(ObjectSubclass<imp::ObjectWrapper>);
- }
-
- impl ObjectWrapper {
-@@ -86,17 +75,14 @@ impl ObjectWrapper {
- where
- O: serde::ser::Serialize,
- {
-- glib::Object::new(Self::static_type(), &[("data", &serde_json::to_string(&object).unwrap())])
-- .unwrap()
-- .downcast()
-- .unwrap()
-+ glib::Object::new(&[("data", &serde_json::to_string(&object).unwrap())]).unwrap()
- }
-
- pub fn deserialize<O>(&self) -> O
- where
- O: DeserializeOwned,
- {
-- let data = self.get_property("data").unwrap().get::<String>().unwrap();
-- serde_json::from_str(&data.unwrap()).unwrap()
-+ let data = self.property("data").unwrap().get::<String>().unwrap();
-+ serde_json::from_str(&data).unwrap()
- }
- }
-diff --git a/src/models/preview_image.rs b/src/models/preview_image.rs
-index 0a7668f..3b9b7c4 100644
---- a/src/models/preview_image.rs
-+++ b/src/models/preview_image.rs
-@@ -7,7 +7,7 @@ use std::rc::Rc;
- use url::Url;
-
- lazy_static! {
-- pub static ref CACHE_DIR: PathBuf = glib::get_user_cache_dir().unwrap().join("read-it-later");
-+ pub static ref CACHE_DIR: PathBuf = glib::user_cache_dir().join("read-it-later");
- }
-
- pub struct PreviewImage {
-@@ -17,7 +17,7 @@ pub struct PreviewImage {
-
- impl PreviewImage {
- pub fn new(url: Url) -> Self {
-- let cache = PreviewImage::get_cache_of(&url.clone().into_string());
-+ let cache = PreviewImage::get_cache_of(&String::from(url.clone()));
- Self { url, cache }
- }
-
-diff --git a/src/settings/settings_manager.rs b/src/settings/settings_manager.rs
-index 0484672..a2ed150 100644
---- a/src/settings/settings_manager.rs
-+++ b/src/settings/settings_manager.rs
-@@ -18,12 +18,12 @@ impl SettingsManager {
-
- pub fn bind_property<P: IsA<glib::Object>>(key: Key, object: &P, property: &str) {
- let settings = Self::get_settings();
-- settings.bind(key.to_string().as_str(), object, property, gio::SettingsBindFlags::DEFAULT);
-+ settings.bind(key.to_string().as_str(), object, property).build();
- }
-
-- pub fn get_string(key: Key) -> String {
-+ pub fn string(key: Key) -> String {
- let settings = Self::get_settings();
-- settings.get_string(&key.to_string()).unwrap().to_string()
-+ settings.string(&key.to_string()).to_string()
- }
-
- pub fn set_string(key: Key, value: String) {
-@@ -33,21 +33,14 @@ impl SettingsManager {
- }
- }
-
-- pub fn get_boolean(key: Key) -> bool {
-+ pub fn boolean(key: Key) -> bool {
- let settings = Self::get_settings();
-- settings.get_boolean(&key.to_string())
-+ settings.boolean(&key.to_string())
- }
-
-- pub fn set_boolean(key: Key, value: bool) {
-+ pub fn integer(key: Key) -> i32 {
- let settings = Self::get_settings();
-- if let Err(err) = settings.set_boolean(&key.to_string(), value) {
-- error!("Failed to save {} setting due to {}", key.to_string(), err);
-- }
-- }
--
-- pub fn get_integer(key: Key) -> i32 {
-- let settings = Self::get_settings();
-- settings.get_int(&key.to_string())
-+ settings.int(&key.to_string())
- }
-
- pub fn set_integer(key: Key, value: i32) {
-diff --git a/src/static_resources.rs.in b/src/static_resources.rs.in
-index 9ffb7bb..6fb8d29 100644
---- a/src/static_resources.rs.in
-+++ b/src/static_resources.rs.in
-@@ -10,7 +10,7 @@ pub(crate) fn init() -> Result<(), Error> {
-
- // Create Resource it will live as long the value lives.
- let gbytes = Bytes::from_static(res_bytes.as_ref());
-- let resource = Resource::new_from_data(&gbytes)?;
-+ let resource = Resource::from_data(&gbytes)?;
-
- // Register the resource so it won't be dropped and will continue to live in
- // memory.
-diff --git a/src/views/articles_list.rs b/src/views/articles_list.rs
-index 16d6771..8d270ff 100644
---- a/src/views/articles_list.rs
-+++ b/src/views/articles_list.rs
-@@ -57,7 +57,7 @@ impl ArticlesListView {
- }
-
- pub fn len(&self) -> u32 {
-- self.model.get_n_items()
-+ self.model.n_items()
- }
-
- pub fn delete(&self, article: &Article) {
-@@ -86,7 +86,7 @@ impl ArticlesListView {
-
- fn index(&self, article: &Article) -> Option<u32> {
- for i in 0..self.len() {
-- let gobject = self.model.get_object(i).unwrap();
-+ let gobject = self.model.item(i).unwrap();
- let a: Article = gobject.downcast_ref::<ObjectWrapper>().unwrap().deserialize();
-
- if article.id == a.id {
-diff --git a/src/widgets/articles/index.rs b/src/widgets/articles/index.rs
-index 19ba129..665652e 100644
---- a/src/widgets/articles/index.rs
-+++ b/src/widgets/articles/index.rs
-@@ -3,7 +3,8 @@ use gio::prelude::*;
- use glib::Sender;
- use gtk::prelude::*;
- use std::{cell::RefCell, rc::Rc};
--use webkit2gtk::{ContextMenuExt, ContextMenuItemExt, WebView, WebViewExt};
-+use webkit2gtk::traits::{ContextMenuExt, ContextMenuItemExt, WebViewExt};
-+use webkit2gtk::WebView;
-
- use crate::models::{Article, ArticleAction};
- use crate::settings::{Key, SettingsManager};
-@@ -18,7 +19,7 @@ pub struct ArticleWidget {
-
- impl ArticleWidget {
- pub fn new(sender: Sender<ArticleAction>) -> Rc<Self> {
-- let builder = gtk::Builder::new_from_resource("/com/belmoussaoui/ReadItLater/article.ui");
-+ let builder = gtk::Builder::from_resource("/com/belmoussaoui/ReadItLater/article.ui");
- get_widget!(builder, gtk::Box, article);
-
- let actions = gio::SimpleActionGroup::new();
-@@ -48,8 +49,8 @@ impl ArticleWidget {
- get_widget!(self.builder, WebView, webview);
-
- webview.connect_context_menu(move |_, context_menu, _, _| {
-- for menu_item in context_menu.get_items() {
-- let action = menu_item.get_stock_action();
-+ for menu_item in context_menu.items() {
-+ let action = menu_item.stock_action();
-
- if forbidden_actions.contains(&action) {
- // Remove forbidden actions
-@@ -62,8 +63,8 @@ impl ArticleWidget {
- // Progress bar
- get_widget!(self.builder, gtk::Revealer, revealer);
- get_widget!(self.builder, gtk::ProgressBar, progressbar);
-- webview.connect_property_estimated_load_progress_notify(move |webview| {
-- let progress = webview.get_estimated_load_progress();
-+ webview.connect_estimated_load_progress_notify(move |webview| {
-+ let progress = webview.estimated_load_progress();
- revealer.set_reveal_child(true);
- progressbar.set_fraction(progress);
- if (progress - 1.0).abs() < std::f64::EPSILON {
-@@ -91,7 +92,7 @@ impl ArticleWidget {
- if let Some(article) = aw.article.borrow().clone() {
- glib::idle_add(clone!(@strong article => move || {
- let article_url = article.url.clone();
-- let screen = gdk::Screen::get_default().unwrap();
-+ let screen = gdk::Screen::default().unwrap();
- if let Err(err_msg) = gtk::show_uri(Some(&screen), &article_url.unwrap(), 0) {
- error!("Failed to open the uri {} in the default browser", err_msg);
- }
-@@ -106,7 +107,7 @@ impl ArticleWidget {
- "archive",
- false,
- clone!(@strong aw, @strong self.sender as sender => move |action, _|{
-- let state = action.get_state().unwrap();
-+ let state = action.state().unwrap();
- let action_state: bool = state.get().unwrap();
- let is_archived = !action_state;
- action.set_state(&is_archived.to_variant());
-@@ -121,7 +122,7 @@ impl ArticleWidget {
- "favorite",
- false,
- clone!(@strong aw, @strong self.sender as sender => move |action, _|{
-- let state = action.get_state().unwrap();
-+ let state = action.state().unwrap();
- let action_state: bool = state.get().unwrap();
- let is_starred = !action_state;
- action.set_state(&is_starred.to_variant());
-@@ -153,7 +154,7 @@ impl ArticleWidget {
- }
-
- let mut layout_css = load_resource("layout.css")?;
-- if SettingsManager::get_boolean(Key::DarkMode) {
-+ if SettingsManager::boolean(Key::DarkMode) {
- layout_css.push_str(&load_resource("layout-dark.css")?);
- }
- layout_html = layout_html.replace("{css}", &layout_css);
-@@ -167,7 +168,7 @@ impl ArticleWidget {
- }
-
- pub fn load_resource(file: &str) -> Result<String> {
-- let file = gio::File::new_for_uri(&format!("resource:///com/belmoussaoui/ReadItLater/{}", file));
-+ let file = gio::File::for_uri(&format!("resource:///com/belmoussaoui/ReadItLater/{}", file));
- let (bytes, _) = file.load_bytes(gio::NONE_CANCELLABLE)?;
- String::from_utf8(bytes.to_vec()).map_err(From::from)
- }
-diff --git a/src/widgets/articles/list.rs b/src/widgets/articles/list.rs
-index 9fae278..9b7851f 100644
---- a/src/widgets/articles/list.rs
-+++ b/src/widgets/articles/list.rs
-@@ -7,7 +7,7 @@ use super::row::ArticleRow;
- use crate::models::{Article, ArticleAction, ObjectWrapper};
-
- pub struct ArticlesListWidget {
-- pub widget: libhandy::Column,
-+ pub widget: libhandy::Clamp,
- builder: gtk::Builder,
- sender: Sender<ArticleAction>,
- client: Rc<isahc::HttpClient>,
-@@ -15,8 +15,8 @@ pub struct ArticlesListWidget {
-
- impl ArticlesListWidget {
- pub fn new(sender: Sender<ArticleAction>, client: Rc<isahc::HttpClient>) -> Self {
-- let builder = gtk::Builder::new_from_resource("/com/belmoussaoui/ReadItLater/articles_list.ui");
-- get_widget!(builder, libhandy::Column, articles_list);
-+ let builder = gtk::Builder::from_resource("/com/belmoussaoui/ReadItLater/articles_list.ui");
-+ get_widget!(builder, libhandy::Clamp, articles_list);
-
- Self {
- builder,
-@@ -34,13 +34,13 @@ impl ArticlesListWidget {
- empty_image.set_from_icon_name(Some(icon), gtk::IconSize::Dialog);
-
- get_widget!(self.builder, gtk::Stack, stack);
-- if model.get_n_items() == 0 {
-+ if model.n_items() == 0 {
- stack.set_visible_child_name("empty");
- } else {
- stack.set_visible_child_name("articles");
- }
- model.connect_items_changed(move |model, _, _, _| {
-- if model.get_n_items() == 0 {
-+ if model.n_items() == 0 {
- stack.set_visible_child_name("empty");
- } else {
- stack.set_visible_child_name("articles");
-diff --git a/src/widgets/articles/preview.rs b/src/widgets/articles/preview.rs
-index ff85a08..d35f9de 100644
---- a/src/widgets/articles/preview.rs
-+++ b/src/widgets/articles/preview.rs
-@@ -13,7 +13,7 @@ pub struct ArticlePreviewImage {
-
- impl ArticlePreviewImage {
- pub fn new() -> Rc<Self> {
-- let builder = gtk::Builder::new_from_resource("/com/belmoussaoui/ReadItLater/article_preview.ui");
-+ let builder = gtk::Builder::from_resource("/com/belmoussaoui/ReadItLater/article_preview.ui");
- get_widget!(builder, gtk::Stack, article_preview);
- get_widget!(builder, gtk::DrawingArea, image);
- let pixbuf = Rc::new(RefCell::new(None));
-@@ -37,28 +37,28 @@ impl ArticlePreviewImage {
- self.widget.set_visible_child_name("loading");
-
- self.image.connect_draw(move |dr, ctx| {
-- let width = dr.get_allocated_width();
-- let height = dr.get_allocated_height();
-+ let width = dr.allocated_width();
-+ let height = dr.allocated_height();
-
-- let style = dr.get_style_context();
-+ let style = dr.style_context();
- gtk::render_background(&style, ctx, 0.0, 0.0, width.into(), height.into());
- gtk::render_frame(&style, ctx, 0.0, 0.0, width.into(), height.into());
-
- match &*d.pixbuf.borrow() {
- Some(pixbuf) => {
-- match pixbuf.get_width().cmp(&width) {
-+ match pixbuf.width().cmp(&width) {
- std::cmp::Ordering::Greater => {
- let pixbuf = pixbuf.scale_simple(width, height, gdk_pixbuf::InterpType::Bilinear).unwrap();
- ctx.set_source_pixbuf(&pixbuf, 0.0, 0.0);
- }
- std::cmp::Ordering::Less => {
-- ctx.set_source_pixbuf(&pixbuf, (width - pixbuf.get_width()) as f64, 0.0);
-+ ctx.set_source_pixbuf(&pixbuf, (width - pixbuf.width()) as f64, 0.0);
- }
- std::cmp::Ordering::Equal => {
- ctx.set_source_pixbuf(&pixbuf, 0.0, 0.0);
- }
- };
-- ctx.paint();
-+ ctx.paint().unwrap();
-
- gtk::Inhibit(false)
- }
-diff --git a/src/widgets/articles/row.rs b/src/widgets/articles/row.rs
-index c5f9dd2..977a0df 100644
---- a/src/widgets/articles/row.rs
-+++ b/src/widgets/articles/row.rs
-@@ -17,7 +17,7 @@ pub struct ArticleRow {
-
- impl ArticleRow {
- pub fn new(article: Article, client: Rc<isahc::HttpClient>, sender: Sender<ArticleAction>) -> Self {
-- let builder = gtk::Builder::new_from_resource("/com/belmoussaoui/ReadItLater/article_row.ui");
-+ let builder = gtk::Builder::from_resource("/com/belmoussaoui/ReadItLater/article_row.ui");
- get_widget!(builder, gtk::ListBoxRow, article_row);
- let preview_image = ArticlePreviewImage::new();
-
-diff --git a/src/widgets/login.rs b/src/widgets/login.rs
-index 2c234be..999631b 100644
---- a/src/widgets/login.rs
-+++ b/src/widgets/login.rs
-@@ -3,14 +3,14 @@ use std::rc::Rc;
- use wallabag_api::types::Config;
-
- pub struct LoginWidget {
-- pub widget: libhandy::Column,
-+ pub widget: libhandy::Clamp,
- pub builder: gtk::Builder,
- }
-
- impl LoginWidget {
- pub fn new() -> Rc<Self> {
-- let builder = gtk::Builder::new_from_resource("/com/belmoussaoui/ReadItLater/login.ui");
-- get_widget!(builder, libhandy::Column, login);
-+ let builder = gtk::Builder::from_resource("/com/belmoussaoui/ReadItLater/login.ui");
-+ get_widget!(builder, libhandy::Clamp, login);
-
- let login_widget = Rc::new(Self { widget: login, builder });
-
-@@ -25,20 +25,20 @@ impl LoginWidget {
- get_widget!(self.builder, gtk::Entry, username_entry);
- get_widget!(self.builder, gtk::Entry, password_entry);
-
-- let instance = instance_entry.get_text()?;
-+ let instance = instance_entry.text();
- let instance = instance.trim_end_matches('/').to_string();
- if let Err(err) = url::Url::parse(&instance) {
- error!("The instance url is invalid {}", err);
-- instance_entry.get_style_context().add_class("error");
-+ instance_entry.style_context().add_class("error");
- return None;
- }
-- instance_entry.get_style_context().remove_class("error");
-+ instance_entry.style_context().remove_class("error");
-
- Some(Config {
-- client_id: client_id_entry.get_text()?.to_string(),
-- client_secret: client_secret_entry.get_text()?.to_string(),
-- username: username_entry.get_text()?.to_string(),
-- password: password_entry.get_text()?.to_string(),
-+ client_id: client_id_entry.text().to_string(),
-+ client_secret: client_secret_entry.text().to_string(),
-+ username: username_entry.text().to_string(),
-+ password: password_entry.text().to_string(),
- base_url: instance,
- })
- }
-@@ -54,8 +54,8 @@ impl LoginWidget {
-
- fn init(&self) {
- get_widget!(self.builder, gtk::TreeStore, instances_store);
-- instances_store.insert_with_values(None, None, &[0], &[&"https://app.wallabag.it/"]);
-- instances_store.insert_with_values(None, None, &[0], &[&"https://framabag.org"]);
-+ instances_store.insert_with_values(None, None, &[(0, &"https://app.wallabag.it/")]);
-+ instances_store.insert_with_values(None, None, &[(0, &"https://framabag.org")]);
-
- get_widget!(self.builder, gtk::ListBox, entries_listbox);
- entries_listbox.set_header_func(Some(Box::new(move |row: &gtk::ListBoxRow, row1: Option<&gtk::ListBoxRow>| {
-diff --git a/src/widgets/settings.rs b/src/widgets/settings.rs
-index ae2ab76..2bde0d9 100644
---- a/src/widgets/settings.rs
-+++ b/src/widgets/settings.rs
-@@ -22,7 +22,7 @@ pub struct SettingsWidget {
-
- impl SettingsWidget {
- pub fn new(client: Arc<Mutex<ClientManager>>) -> Rc<Self> {
-- let builder = gtk::Builder::new_from_resource("/com/belmoussaoui/ReadItLater/settings.ui");
-+ let builder = gtk::Builder::from_resource("/com/belmoussaoui/ReadItLater/settings.ui");
- get_widget!(builder, libhandy::PreferencesWindow, settings_window);
-
- let window = Rc::new(Self {
-@@ -36,12 +36,7 @@ impl SettingsWidget {
- }
-
- fn init(&self, settings: Rc<Self>, client: Arc<Mutex<ClientManager>>) {
-- self.widget.connect_key_press_event(|w, k| {
-- if k.get_keyval() == gdk::enums::key::Escape {
-- w.destroy();
-- }
-- gtk::Inhibit(false)
-- });
-+ self.widget.connect_key_press_event(|_w, _k| gtk::Inhibit(false));
-
- let (sender, receiver) = glib::MainContext::channel(glib::PRIORITY_DEFAULT);
- receiver.attach(None, move |action| settings.do_action(action));
-diff --git a/src/widgets/window.rs b/src/widgets/window.rs
-index d540433..0adc1f7 100644
---- a/src/widgets/window.rs
-+++ b/src/widgets/window.rs
-@@ -1,14 +1,12 @@
- use gio::prelude::*;
- use glib::Sender;
- use gtk::prelude::*;
--use libhandy::prelude::*;
- use url::Url;
-
- use crate::application::Action;
- use crate::config::PROFILE;
- use crate::models::{Article, ArticlesManager};
- use crate::views::{ArticleView, ArticlesView, LoginView};
--use crate::window_state;
-
- #[derive(Copy, Clone, Debug, PartialEq)]
- pub enum View {
-@@ -31,11 +29,11 @@ pub struct Window {
-
- impl Window {
- pub fn new(sender: Sender<Action>) -> Self {
-- let builder = gtk::Builder::new_from_resource("/com/belmoussaoui/ReadItLater/window.ui");
-+ let builder = gtk::Builder::from_resource("/com/belmoussaoui/ReadItLater/window.ui");
- get_widget!(builder, gtk::ApplicationWindow, window);
-
- if PROFILE == "Devel" {
-- window.get_style_context().add_class("devel");
-+ window.style_context().add_class("devel");
- }
- let actions = gio::SimpleActionGroup::new();
-
-@@ -73,10 +71,11 @@ impl Window {
- notification_label.set_text(&message);
- notification.set_reveal_child(true);
-
-- gtk::timeout_add_seconds(5, move || {
-- notification.set_reveal_child(false);
-- glib::Continue(false)
-- });
-+ // let time = std::time::Duration::new(5, 0);
-+ // glib::timeout_add(time, move || {
-+ // notification.set_reveal_child(false);
-+ // glib::Continue(false)
-+ // });
- }
-
- pub fn previous_view(&self) {
-@@ -109,10 +108,11 @@ impl Window {
- loading_progress.set_fraction(0.0); // Reset the fraction
- } else {
- loading_progress.pulse();
-- gtk::timeout_add(200, move || {
-- loading_progress.pulse();
-- glib::Continue(loading_progress.get_visible())
-- });
-+ // let time = std::time::Duration::new(0, 200);
-+ // glib::timeout_add(time, || {
-+ // loading_progress.pulse();
-+ // glib::Continue(loading_progress.get_visible())
-+ // });
- }
- }
- View::NewArticle => {
-@@ -127,43 +127,35 @@ impl Window {
-
- fn init(&self) {
- // setup app menu
-- let menu_builder = gtk::Builder::new_from_resource("/com/belmoussaoui/ReadItLater/menu.ui");
-+ let menu_builder = gtk::Builder::from_resource("/com/belmoussaoui/ReadItLater/menu.ui");
- get_widget!(menu_builder, gtk::PopoverMenu, popover_menu);
- get_widget!(self.builder, gtk::MenuButton, appmenu_button);
- appmenu_button.set_popover(Some(&popover_menu));
-- // load latest window state
-- window_state::load(&self.widget);
--
-- // save window state on delete event
-- self.widget.connect_delete_event(move |window, _| {
-- window_state::save(&window);
-- Inhibit(false)
-- });
-
- get_widget!(self.builder, libhandy::Squeezer, squeezer);
- get_widget!(self.builder, gtk::Stack, headerbar_stack);
- get_widget!(self.builder, libhandy::ViewSwitcherBar, switcher_bar);
- get_widget!(self.builder, gtk::Label, title_label);
-
-- squeezer.connect_property_visible_child_notify(move |squeezer| {
-- let visible_headerbar_stack = headerbar_stack.get_visible_child_name();
-- if let Some(visible_child) = squeezer.get_visible_child() {
-+ squeezer.connect_visible_child_notify(move |squeezer| {
-+ let visible_headerbar_stack = headerbar_stack.visible_child_name();
-+ if let Some(visible_child) = squeezer.visible_child() {
- switcher_bar.set_reveal(visible_child == title_label && visible_headerbar_stack == Some("articles".into()));
- }
- });
- self.widget.connect_size_allocate(move |widget, allocation| {
- if allocation.width <= 450 {
-- widget.get_style_context().add_class("sm");
-- widget.get_style_context().remove_class("md");
-- widget.get_style_context().remove_class("lg");
-+ widget.style_context().add_class("sm");
-+ widget.style_context().remove_class("md");
-+ widget.style_context().remove_class("lg");
- } else if allocation.width <= 600 {
-- widget.get_style_context().add_class("md");
-- widget.get_style_context().remove_class("sm");
-- widget.get_style_context().remove_class("lg");
-+ widget.style_context().add_class("md");
-+ widget.style_context().remove_class("sm");
-+ widget.style_context().remove_class("lg");
- } else {
-- widget.get_style_context().add_class("lg");
-- widget.get_style_context().remove_class("sm");
-- widget.get_style_context().remove_class("md");
-+ widget.style_context().add_class("lg");
-+ widget.style_context().remove_class("sm");
-+ widget.style_context().remove_class("md");
- }
- });
- }
-@@ -185,8 +177,8 @@ impl Window {
- main_stack.add_named(&self.article_view.get_widget(), &self.article_view.name);
- self.widget.insert_action_group("article", self.article_view.get_actions());
-
-- main_stack.connect_property_visible_child_name_notify(clone!(@strong self.article_view as article_view => move |stack| {
-- if let Some(view_name) = stack.get_visible_child_name() {
-+ main_stack.connect_visible_child_name_notify(clone!(@strong self.article_view as article_view => move |stack| {
-+ if let Some(view_name) = stack.visible_child_name() {
- article_view.set_enable_actions(view_name == "article");
- }
- }));
-@@ -194,7 +186,7 @@ impl Window {
- get_widget!(self.builder, gtk::Button, save_article_btn);
- get_widget!(self.builder, gtk::Entry, article_url_entry);
- save_article_btn.connect_clicked(clone!(@strong self.sender as sender => move |_| {
-- if let Ok(url) = Url::parse(&article_url_entry.get_text().unwrap()) {
-+ if let Ok(url) = Url::parse(&article_url_entry.text()) {
- send!(sender, Action::SaveArticle(url));
- article_url_entry.set_text("");
- }
-@@ -210,7 +202,7 @@ impl Window {
- notification.set_reveal_child(false);
- });
-
-- let builder = gtk::Builder::new_from_resource("/com/belmoussaoui/ReadItLater/shortcuts.ui");
-+ let builder = gtk::Builder::from_resource("/com/belmoussaoui/ReadItLater/shortcuts.ui");
- get_widget!(builder, gtk::ShortcutsWindow, shortcuts);
- self.widget.set_help_overlay(Some(&shortcuts));
-
-diff --git a/src/window_state.rs b/src/window_state.rs
-deleted file mode 100644
-index 595cf2f..0000000
---- a/src/window_state.rs
-+++ /dev/null
-@@ -1,34 +0,0 @@
--use crate::settings::{Key, SettingsManager};
--use gtk::prelude::GtkWindowExt;
--
--pub fn load(window: &gtk::ApplicationWindow) {
-- let width = SettingsManager::get_integer(Key::WindowWidth);
-- let height = SettingsManager::get_integer(Key::WindowHeight);
--
-- if width > -1 && height > -1 {
-- window.resize(width, height);
-- }
--
-- let x = SettingsManager::get_integer(Key::WindowX);
-- let y = SettingsManager::get_integer(Key::WindowY);
-- let is_maximized = SettingsManager::get_boolean(Key::IsMaximized);
--
-- if x > -1 && y > -1 {
-- window.move_(x, y);
-- } else if is_maximized {
-- window.maximize();
-- }
--}
--
--pub fn save(window: &gtk::ApplicationWindow) {
-- let size = window.get_size();
-- let position = window.get_position();
--
-- SettingsManager::set_integer(Key::WindowWidth, size.0);
-- SettingsManager::set_integer(Key::WindowHeight, size.1);
--
-- SettingsManager::set_boolean(Key::IsMaximized, window.is_maximized());
--
-- SettingsManager::set_integer(Key::WindowX, position.0);
-- SettingsManager::set_integer(Key::WindowY, position.1);
--}
---
-2.31.1
-
diff --git a/testing/read-it-later/0002-Cargo-Update-most-remainig-dependencies.patch b/testing/read-it-later/0002-Cargo-Update-most-remainig-dependencies.patch
deleted file mode 100644
index 68e19eeb066..00000000000
--- a/testing/read-it-later/0002-Cargo-Update-most-remainig-dependencies.patch
+++ /dev/null
@@ -1,1711 +0,0 @@
-From 996503891628cd998868d699d76985ba5e07d84c Mon Sep 17 00:00:00 2001
-From: Alistair Francis <alistair@alistair23.me>
-Date: Wed, 25 Aug 2021 20:04:37 +1000
-Subject: [PATCH 2/4] Cargo: Update most remainig dependencies
-
-Signed-off-by: Alistair Francis <alistair@alistair23.me>
----
- Cargo.lock | 917 +++++++++++++++++++++++++++++-----------------------
- Cargo.toml | 24 +-
- src/main.rs | 4 +-
- 3 files changed, 528 insertions(+), 417 deletions(-)
-
-diff --git a/Cargo.lock b/Cargo.lock
-index f74e3e9..42f21e6 100644
---- a/Cargo.lock
-+++ b/Cargo.lock
-@@ -71,7 +71,7 @@ version = "3.1.2"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "2e445c26125ff80316eaea16e812d717b147b82a68682bd4730f74d4845c8b35"
- dependencies = [
-- "html5ever 0.25.1",
-+ "html5ever",
- "lazy_static",
- "maplit",
- "markup5ever_rcdom",
-@@ -86,6 +86,12 @@ version = "1.0.43"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "28ae2b3dec75a406790005a200b1bd89785afc02517a00ca99ecfe093ee9e6cf"
-
-+[[package]]
-+name = "arrayvec"
-+version = "0.5.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b"
-+
- [[package]]
- name = "async-channel"
- version = "1.6.1"
-@@ -97,6 +103,16 @@ dependencies = [
- "futures-core",
- ]
-
-+[[package]]
-+name = "async-dup"
-+version = "1.2.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "7427a12b8dc09291528cfb1da2447059adb4a257388c2acd6497a79d55cf6f7c"
-+dependencies = [
-+ "futures-io",
-+ "simple-mutex",
-+]
-+
- [[package]]
- name = "async-executor"
- version = "1.4.1"
-@@ -127,6 +143,24 @@ dependencies = [
- "once_cell",
- ]
-
-+[[package]]
-+name = "async-h1"
-+version = "2.3.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "cc5142de15b549749cce62923a50714b0d7b77f5090ced141599e78899865451"
-+dependencies = [
-+ "async-channel",
-+ "async-dup",
-+ "async-std",
-+ "byte-pool",
-+ "futures-core",
-+ "http-types",
-+ "httparse",
-+ "lazy_static",
-+ "log",
-+ "pin-project",
-+]
-+
- [[package]]
- name = "async-io"
- version = "1.6.0"
-@@ -164,6 +198,18 @@ dependencies = [
- "event-listener",
- ]
-
-+[[package]]
-+name = "async-native-tls"
-+version = "0.3.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "9e9e7a929bd34c68a82d58a4de7f86fffdaf97fb2af850162a7bb19dd7269b33"
-+dependencies = [
-+ "async-std",
-+ "native-tls",
-+ "thiserror",
-+ "url",
-+]
-+
- [[package]]
- name = "async-std"
- version = "1.9.0"
-@@ -174,7 +220,7 @@ dependencies = [
- "async-global-executor",
- "async-io",
- "async-lock",
-- "crossbeam-utils 0.8.5",
-+ "crossbeam-utils",
- "futures-channel",
- "futures-core",
- "futures-io",
-@@ -249,12 +295,6 @@ dependencies = [
- "winapi",
- ]
-
--[[package]]
--name = "autocfg"
--version = "0.1.7"
--source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "1d49d90015b3c36167a20fe2810c5cd875ad504b39cff3d4eae7977e6b7c1cb2"
--
- [[package]]
- name = "autocfg"
- version = "1.0.1"
-@@ -279,6 +319,12 @@ version = "1.3.2"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
-
-+[[package]]
-+name = "block"
-+version = "0.1.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a"
-+
- [[package]]
- name = "block-buffer"
- version = "0.9.0"
-@@ -325,20 +371,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "9c59e7af012c713f529e7a3ee57ce9b31ddd858d4b512923602f74608b009631"
-
- [[package]]
--name = "byteorder"
--version = "1.4.3"
-+name = "byte-pool"
-+version = "0.2.3"
- source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610"
-+checksum = "f8c7230ddbb427b1094d477d821a99f3f54d36333178eeb806e279bcdcecf0ca"
-+dependencies = [
-+ "crossbeam-queue",
-+ "stable_deref_trait",
-+]
-
- [[package]]
--name = "bytes"
--version = "0.4.12"
-+name = "byteorder"
-+version = "1.4.3"
- source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "206fdffcfa2df7cbe15601ef46c813fce0965eb3286db6b56c583b814b51c81c"
--dependencies = [
-- "byteorder",
-- "iovec",
--]
-+checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610"
-
- [[package]]
- name = "bytes"
-@@ -397,12 +443,6 @@ dependencies = [
- "smallvec",
- ]
-
--[[package]]
--name = "cfg-if"
--version = "0.1.10"
--source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
--
- [[package]]
- name = "cfg-if"
- version = "1.0.0"
-@@ -433,21 +473,23 @@ dependencies = [
- ]
-
- [[package]]
--name = "cloudabi"
--version = "0.0.3"
-+name = "concurrent-queue"
-+version = "1.2.2"
- source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f"
-+checksum = "30ed07550be01594c6026cff2a1d7fe9c8f683caa798e12b68694ac9e88286a3"
- dependencies = [
-- "bitflags",
-+ "cache-padded",
- ]
-
- [[package]]
--name = "concurrent-queue"
--version = "1.2.2"
-+name = "config"
-+version = "0.10.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "30ed07550be01594c6026cff2a1d7fe9c8f683caa798e12b68694ac9e88286a3"
-+checksum = "19b076e143e1d9538dde65da30f8481c2a6c44040edb8e02b9bf1351edb92ce3"
- dependencies = [
-- "cache-padded",
-+ "lazy_static",
-+ "nom",
-+ "serde",
- ]
-
- [[package]]
-@@ -456,6 +498,12 @@ version = "0.4.8"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "f92cfa0fd5690b3cf8c1ef2cabbd9b7ef22fa53cf5e1f92b05103f6d5d1cf6e7"
-
-+[[package]]
-+name = "convert_case"
-+version = "0.4.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e"
-+
- [[package]]
- name = "cookie"
- version = "0.14.4"
-@@ -473,6 +521,22 @@ dependencies = [
- "version_check",
- ]
-
-+[[package]]
-+name = "core-foundation"
-+version = "0.9.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "0a89e2ae426ea83155dccf10c0fa6b1463ef6d5fcb44cee0b224a408fa640a62"
-+dependencies = [
-+ "core-foundation-sys",
-+ "libc",
-+]
-+
-+[[package]]
-+name = "core-foundation-sys"
-+version = "0.8.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ea221b5284a47e40033bf9b66f35f984ec0ea2931eb03505246cd27a963f981b"
-+
- [[package]]
- name = "cpufeatures"
- version = "0.1.5"
-@@ -489,24 +553,13 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "dcb25d077389e53838a8158c8e99174c5a9d902dee4904320db714f3c653ffba"
-
- [[package]]
--name = "crossbeam-channel"
--version = "0.4.4"
--source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "b153fe7cbef478c567df0f972e02e6d736db11affe43dfc9c56a9374d1adfb87"
--dependencies = [
-- "crossbeam-utils 0.7.2",
-- "maybe-uninit",
--]
--
--[[package]]
--name = "crossbeam-utils"
--version = "0.7.2"
-+name = "crossbeam-queue"
-+version = "0.3.2"
- source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "c3c7c73a2d1e9fc0886a08b93e98eb643461230d5f1925e4036204d5f2e261a8"
-+checksum = "9b10ddc024425c88c2ad148c1b0fd53f4c6d38db9697c9f1588381212fa657c9"
- dependencies = [
-- "autocfg 1.0.1",
-- "cfg-if 0.1.10",
-- "lazy_static",
-+ "cfg-if",
-+ "crossbeam-utils",
- ]
-
- [[package]]
-@@ -515,7 +568,7 @@ version = "0.8.5"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "d82cfc11ce7f2c3faef78d8a684447b40d503d9681acebed6cb728d45940c4db"
- dependencies = [
-- "cfg-if 1.0.0",
-+ "cfg-if",
- "lazy_static",
- ]
-
-@@ -529,6 +582,33 @@ dependencies = [
- "subtle",
- ]
-
-+[[package]]
-+name = "cssparser"
-+version = "0.27.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "754b69d351cdc2d8ee09ae203db831e005560fc6030da058f86ad60c92a9cb0a"
-+dependencies = [
-+ "cssparser-macros",
-+ "dtoa-short",
-+ "itoa",
-+ "matches",
-+ "phf",
-+ "proc-macro2",
-+ "quote",
-+ "smallvec",
-+ "syn",
-+]
-+
-+[[package]]
-+name = "cssparser-macros"
-+version = "0.6.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "dfae75de57f2b2e85e8768c3ea840fd159c8f33e2b6522c7835b7abac81be16e"
-+dependencies = [
-+ "quote",
-+ "syn",
-+]
-+
- [[package]]
- name = "ctor"
- version = "0.1.20"
-@@ -585,7 +665,7 @@ version = "4.0.2"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "e77a43b28d0668df09411cb0bc9a8c2adc40f9a048afe863e05fd43251e8e39c"
- dependencies = [
-- "cfg-if 1.0.0",
-+ "cfg-if",
- "num_cpus",
- ]
-
-@@ -598,6 +678,33 @@ dependencies = [
- "libc",
- ]
-
-+[[package]]
-+name = "deadpool"
-+version = "0.7.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "3d126179d86aee4556e54f5f3c6bf6d9884e7cc52cef82f77ee6f90a7747616d"
-+dependencies = [
-+ "async-trait",
-+ "config",
-+ "crossbeam-queue",
-+ "num_cpus",
-+ "serde",
-+ "tokio",
-+]
-+
-+[[package]]
-+name = "derive_more"
-+version = "0.99.16"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "40eebddd2156ce1bb37b20bbe5151340a31828b1f2d22ba4141f3531710e38df"
-+dependencies = [
-+ "convert_case",
-+ "proc-macro2",
-+ "quote",
-+ "rustc_version 0.3.3",
-+ "syn",
-+]
-+
- [[package]]
- name = "diesel"
- version = "1.4.7"
-@@ -647,6 +754,21 @@ version = "1.0.4"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "212d0f5754cb6769937f4501cc0e67f4f4483c8d2c3e1e922ee9edbe4ab4c7c0"
-
-+[[package]]
-+name = "dtoa"
-+version = "0.4.8"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "56899898ce76aaf4a0f24d914c97ea6ed976d42fec6ad33fcbb0a1103e07b2b0"
-+
-+[[package]]
-+name = "dtoa-short"
-+version = "0.3.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "bde03329ae10e79ede66c9ce4dc930aa8599043b0743008548680f25b91502d6"
-+dependencies = [
-+ "dtoa",
-+]
-+
- [[package]]
- name = "either"
- version = "1.6.1"
-@@ -659,14 +781,14 @@ version = "0.8.28"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "80df024fbc5ac80f87dfef0d9f5209a252f2a497f7f42944cff24d8253cac065"
- dependencies = [
-- "cfg-if 1.0.0",
-+ "cfg-if",
- ]
-
- [[package]]
- name = "env_logger"
--version = "0.6.2"
-+version = "0.7.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "aafcde04e90a5226a6443b7aabdb016ba2f8307c847d524724bd9b346dd1a2d3"
-+checksum = "44533bbbb3bb3c1fa17d9f2e4e38bbbaf8396ba82193c4cb1b6445d711445d36"
- dependencies = [
- "atty",
- "humantime",
-@@ -717,6 +839,21 @@ version = "1.0.7"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
-
-+[[package]]
-+name = "foreign-types"
-+version = "0.3.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
-+dependencies = [
-+ "foreign-types-shared",
-+]
-+
-+[[package]]
-+name = "foreign-types-shared"
-+version = "0.1.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
-+
- [[package]]
- name = "form_urlencoded"
- version = "1.0.1"
-@@ -743,12 +880,6 @@ dependencies = [
- "new_debug_unreachable",
- ]
-
--[[package]]
--name = "futures"
--version = "0.1.31"
--source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "3a471a38ef8ed83cd6e40aa59c1ffe17db6855c18e3604d9c4ed8c08ebc28678"
--
- [[package]]
- name = "futures"
- version = "0.3.16"
-@@ -819,7 +950,7 @@ version = "0.3.16"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "c54913bae956fb8df7f4dc6fc90362aa72e69148e3f39041fbe8742d21e0ac57"
- dependencies = [
-- "autocfg 1.0.1",
-+ "autocfg",
- "proc-macro-hack",
- "proc-macro2",
- "quote",
-@@ -844,8 +975,7 @@ version = "0.3.16"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "67eb846bfd58e44a8481a00049e82c43e0ccb5d61f8dc071057cb19249dd4d78"
- dependencies = [
-- "autocfg 1.0.1",
-- "futures 0.1.31",
-+ "autocfg",
- "futures-channel",
- "futures-core",
- "futures-io",
-@@ -858,7 +988,15 @@ dependencies = [
- "proc-macro-hack",
- "proc-macro-nested",
- "slab",
-- "tokio-io",
-+]
-+
-+[[package]]
-+name = "fxhash"
-+version = "0.2.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c"
-+dependencies = [
-+ "byteorder",
- ]
-
- [[package]]
-@@ -941,7 +1079,7 @@ version = "0.1.16"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce"
- dependencies = [
-- "cfg-if 1.0.0",
-+ "cfg-if",
- "libc",
- "wasi 0.9.0+wasi-snapshot-preview1",
- ]
-@@ -952,16 +1090,16 @@ version = "0.2.3"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "7fcd999463524c52659517fe2cea98493cfe485d10565e7b0fb07dbba7ad2753"
- dependencies = [
-- "cfg-if 1.0.0",
-+ "cfg-if",
- "libc",
- "wasi 0.10.0+wasi-snapshot-preview1",
- ]
-
- [[package]]
- name = "gettext-rs"
--version = "0.4.4"
-+version = "0.7.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "df454a42d8a718280c78666efe0707c120873736961ae91ead898f17ac66ce7c"
-+checksum = "e49ea8a8fad198aaa1f9655a2524b64b70eb06b2f3ff37da407566c93054f364"
- dependencies = [
- "gettext-sys",
- "locale_config",
-@@ -969,11 +1107,12 @@ dependencies = [
-
- [[package]]
- name = "gettext-sys"
--version = "0.19.9"
-+version = "0.21.2"
- source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "e034c4ba5bb796730a6cc5eb0d654c16885006a7c3d6c6603581ed809434f153"
-+checksum = "afa9e06ab9e7514cc9ae668ea3b71ea1536259d767dff0289ac23ad134f99929"
- dependencies = [
- "cc",
-+ "temp-dir",
- ]
-
- [[package]]
-@@ -1220,13 +1359,13 @@ dependencies = [
-
- [[package]]
- name = "html2pango"
--version = "0.3.3"
-+version = "0.4.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "469b284033c3c93e7df758d316cb2e0da4408e4138d5add903b8be356a841738"
-+checksum = "a2a7f65103a4da1b629f519474a51ae89077c61f88954eb9e6df7b22e1a7fd98"
- dependencies = [
- "ammonia",
- "anyhow",
-- "html5ever 0.25.1",
-+ "html5ever",
- "lazy_static",
- "linkify",
- "maplit",
-@@ -1234,20 +1373,6 @@ dependencies = [
- "regex",
- ]
-
--[[package]]
--name = "html5ever"
--version = "0.24.1"
--source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "025483b0a1e4577bb28578318c886ee5f817dda6eb62473269349044406644cb"
--dependencies = [
-- "log",
-- "mac",
-- "markup5ever 0.9.0",
-- "proc-macro2",
-- "quote",
-- "syn",
--]
--
- [[package]]
- name = "html5ever"
- version = "0.25.1"
-@@ -1256,23 +1381,12 @@ checksum = "aafcf38a1a36118242d29b92e1b08ef84e67e4a5ed06e0a80be20e6a32bfed6b"
- dependencies = [
- "log",
- "mac",
-- "markup5ever 0.10.1",
-+ "markup5ever",
- "proc-macro2",
- "quote",
- "syn",
- ]
-
--[[package]]
--name = "http"
--version = "0.1.21"
--source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "d6ccf5ede3a895d8856620237b2f02972c1bbc78d2965ad7fe8838d4a0ed41f0"
--dependencies = [
-- "bytes 0.4.12",
-- "fnv",
-- "itoa",
--]
--
- [[package]]
- name = "http"
- version = "0.2.4"
-@@ -1284,34 +1398,27 @@ dependencies = [
- "itoa",
- ]
-
--[[package]]
--name = "http-client"
--version = "1.1.1"
--source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "bf86227a76b64ebd37d442853370f7177be4fd3ae6f9ff5c9e0349643e1cb332"
--dependencies = [
-- "futures 0.3.16",
-- "http 0.1.21",
-- "isahc 0.8.2",
-- "js-sys",
-- "wasm-bindgen",
-- "wasm-bindgen-futures",
-- "web-sys",
--]
--
- [[package]]
- name = "http-client"
- version = "6.5.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "ea880b03c18a7e981d7fb3608b8904a98425d53c440758fcebf7d934aa56547c"
- dependencies = [
-+ "async-h1",
-+ "async-native-tls",
- "async-std",
- "async-trait",
-- "cfg-if 1.0.0",
-+ "cfg-if",
- "dashmap",
-+ "deadpool",
-+ "futures",
- "http-types",
-- "isahc 0.9.14",
-+ "isahc",
-+ "js-sys",
- "log",
-+ "wasm-bindgen",
-+ "wasm-bindgen-futures",
-+ "web-sys",
- ]
-
- [[package]]
-@@ -1336,6 +1443,12 @@ dependencies = [
- "url",
- ]
-
-+[[package]]
-+name = "httparse"
-+version = "1.5.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "acd94fdbe1d4ff688b67b04eee2e17bd50995534a61539e45adfefb45e5e5503"
-+
- [[package]]
- name = "humantime"
- version = "1.3.0"
-@@ -1368,37 +1481,7 @@ version = "0.1.10"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "bee0328b1209d157ef001c94dd85b4f8f64139adb0eac2659f4b08382b2f474d"
- dependencies = [
-- "cfg-if 1.0.0",
--]
--
--[[package]]
--name = "iovec"
--version = "0.1.4"
--source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "b2b3ea6ff95e175473f8ffe6a7eb7c00d054240321b84c57051175fe3c1e075e"
--dependencies = [
-- "libc",
--]
--
--[[package]]
--name = "isahc"
--version = "0.8.2"
--source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "c45d8c41e6f0b5aa495fd2577e6068e100f57eb87c4b353b0dab20bb53a56035"
--dependencies = [
-- "bytes 0.4.12",
-- "crossbeam-channel",
-- "crossbeam-utils 0.7.2",
-- "curl",
-- "curl-sys",
-- "futures-channel",
-- "futures-io",
-- "futures-util",
-- "http 0.1.21",
-- "lazy_static",
-- "log",
-- "slab",
-- "sluice",
-+ "cfg-if",
- ]
-
- [[package]]
-@@ -1408,13 +1491,13 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "e2948a0ce43e2c2ef11d7edf6816508998d99e13badd1150be0914205df9388a"
- dependencies = [
- "bytes 0.5.6",
-- "crossbeam-utils 0.8.5",
-+ "crossbeam-utils",
- "curl",
- "curl-sys",
- "encoding_rs",
- "flume",
- "futures-lite",
-- "http 0.2.4",
-+ "http",
- "log",
- "mime",
- "once_cell",
-@@ -1469,6 +1552,18 @@ dependencies = [
- "wasm-bindgen",
- ]
-
-+[[package]]
-+name = "kuchiki"
-+version = "0.8.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "1ea8e9c6e031377cff82ee3001dc8026cdf431ed4e2e6b51f98ab8c73484a358"
-+dependencies = [
-+ "cssparser",
-+ "html5ever",
-+ "matches",
-+ "selectors",
-+]
-+
- [[package]]
- name = "kv-log-macro"
- version = "1.0.7"
-@@ -1484,6 +1579,19 @@ version = "1.4.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
-
-+[[package]]
-+name = "lexical-core"
-+version = "0.7.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "6607c62aa161d23d17a9072cc5da0be67cdfc89d3afb1e8d9c842bebc2525ffe"
-+dependencies = [
-+ "arrayvec",
-+ "bitflags",
-+ "cfg-if",
-+ "ryu",
-+ "static_assertions",
-+]
-+
- [[package]]
- name = "libc"
- version = "0.2.100"
-@@ -1569,11 +1677,13 @@ dependencies = [
-
- [[package]]
- name = "locale_config"
--version = "0.2.3"
-+version = "0.3.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "73ac19ebe45489e5d53b4346d8b90bb3dd03275c5fdf2ce22a982516d86b535c"
-+checksum = "08d2c35b16f4483f6c26f0e4e9550717a2f6575bcd6f12a53ff0c490a94a6934"
- dependencies = [
- "lazy_static",
-+ "objc",
-+ "objc-foundation",
- "regex",
- "winapi",
- ]
-@@ -1593,7 +1703,7 @@ version = "0.4.14"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "51b9bbe6c47d51fc3e1a9b945965946b4c44142ab8792c50835a980d362c2710"
- dependencies = [
-- "cfg-if 1.0.0",
-+ "cfg-if",
- "value-bag",
- ]
-
-@@ -1603,6 +1713,15 @@ version = "0.1.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "c41e0c4fef86961ac6d6f8a82609f55f31b05e4fce149ac5710e439df7619ba4"
-
-+[[package]]
-+name = "malloc_buf"
-+version = "0.0.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "62bb907fe88d54d8d9ce32a3cceab4218ed2f6b7d35617cafe9adf84e43919cb"
-+dependencies = [
-+ "libc",
-+]
-+
- [[package]]
- name = "maplit"
- version = "1.0.2"
-@@ -1611,32 +1730,15 @@ checksum = "3e2e65a1a2e43cfcb47a895c4c8b10d1f4a61097f9f254f183aee60cad9c651d"
-
- [[package]]
- name = "markup5ever"
--version = "0.9.0"
-+version = "0.10.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "65381d9d47506b8592b97c4efd936afcf673b09b059f2bef39c7211ee78b9d03"
-+checksum = "a24f40fb03852d1cdd84330cddcaf98e9ec08a7b7768e952fad3b4cf048ec8fd"
- dependencies = [
- "log",
-- "phf 0.7.24",
-- "phf_codegen 0.7.24",
-- "serde",
-- "serde_derive",
-- "serde_json",
-- "string_cache 0.7.5",
-- "string_cache_codegen 0.4.4",
-- "tendril",
--]
--
--[[package]]
--name = "markup5ever"
--version = "0.10.1"
--source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "a24f40fb03852d1cdd84330cddcaf98e9ec08a7b7768e952fad3b4cf048ec8fd"
--dependencies = [
-- "log",
-- "phf 0.8.0",
-- "phf_codegen 0.8.0",
-- "string_cache 0.8.1",
-- "string_cache_codegen 0.5.1",
-+ "phf",
-+ "phf_codegen",
-+ "string_cache",
-+ "string_cache_codegen",
- "tendril",
- ]
-
-@@ -1646,8 +1748,8 @@ version = "0.1.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "f015da43bcd8d4f144559a3423f4591d69b8ce0652c905374da7205df336ae2b"
- dependencies = [
-- "html5ever 0.25.1",
-- "markup5ever 0.10.1",
-+ "html5ever",
-+ "markup5ever",
- "tendril",
- "xml5ever",
- ]
-@@ -1658,12 +1760,6 @@ version = "0.1.9"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "a3e378b66a060d48947b590737b30a1be76706c8dd7b8ba0f2fe3989c68a853f"
-
--[[package]]
--name = "maybe-uninit"
--version = "2.0.0"
--source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "60302e4db3a61da70c0cb7991976248362f30319e88850c487b9b95bbf059e00"
--
- [[package]]
- name = "memchr"
- version = "2.4.1"
-@@ -1676,7 +1772,7 @@ version = "0.6.4"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "59accc507f1338036a0477ef61afdae33cde60840f4dfe481319ce3ad116ddf9"
- dependencies = [
-- "autocfg 1.0.1",
-+ "autocfg",
- ]
-
- [[package]]
-@@ -1716,12 +1812,47 @@ dependencies = [
- "unicase",
- ]
-
-+[[package]]
-+name = "native-tls"
-+version = "0.2.8"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "48ba9f7719b5a0f42f338907614285fb5fd70e53858141f69898a1fb7203b24d"
-+dependencies = [
-+ "lazy_static",
-+ "libc",
-+ "log",
-+ "openssl",
-+ "openssl-probe",
-+ "openssl-sys",
-+ "schannel",
-+ "security-framework",
-+ "security-framework-sys",
-+ "tempfile",
-+]
-+
- [[package]]
- name = "new_debug_unreachable"
- version = "1.0.4"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "e4a24736216ec316047a1fc4252e27dabb04218aa4a3f37c6e7ddbf1f9782b54"
-
-+[[package]]
-+name = "nodrop"
-+version = "0.1.14"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "72ef4a56884ca558e5ddb05a1d1e7e1bfd9a68d9ed024c21704cc98872dae1bb"
-+
-+[[package]]
-+name = "nom"
-+version = "5.1.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ffb4262d26ed83a1c0a33a38fe2bb15797329c85770da05e6b828ddb782627af"
-+dependencies = [
-+ "lexical-core",
-+ "memchr",
-+ "version_check",
-+]
-+
- [[package]]
- name = "num"
- version = "0.3.1"
-@@ -1742,7 +1873,7 @@ version = "0.3.2"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "7d0a3d5e207573f948a9e5376662aa743a2ea13f7c50a554d7af443a73fbfeba"
- dependencies = [
-- "autocfg 1.0.1",
-+ "autocfg",
- "num-integer",
- "num-traits",
- ]
-@@ -1762,7 +1893,7 @@ version = "0.1.44"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "d2cc698a63b549a70bc047073d2949cce27cd1c7b0a4a862d08a8031bc2801db"
- dependencies = [
-- "autocfg 1.0.1",
-+ "autocfg",
- "num-traits",
- ]
-
-@@ -1772,7 +1903,7 @@ version = "0.1.42"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "b2021c8337a54d21aca0d59a92577a029af9431cb59b909b03252b9c164fad59"
- dependencies = [
-- "autocfg 1.0.1",
-+ "autocfg",
- "num-integer",
- "num-traits",
- ]
-@@ -1783,7 +1914,7 @@ version = "0.3.2"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "12ac428b1cb17fce6f731001d307d351ec70a6d202fc2e60f7d4c5e42d8f4f07"
- dependencies = [
-- "autocfg 1.0.1",
-+ "autocfg",
- "num-bigint",
- "num-integer",
- "num-traits",
-@@ -1795,7 +1926,7 @@ version = "0.2.14"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "9a64b1ec5cda2586e284722486d802acf1f7dbdc623e2bfc57e65ca1cd099290"
- dependencies = [
-- "autocfg 1.0.1",
-+ "autocfg",
- ]
-
- [[package]]
-@@ -1808,6 +1939,35 @@ dependencies = [
- "libc",
- ]
-
-+[[package]]
-+name = "objc"
-+version = "0.2.7"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "915b1b472bc21c53464d6c8461c9d3af805ba1ef837e1cac254428f4a77177b1"
-+dependencies = [
-+ "malloc_buf",
-+]
-+
-+[[package]]
-+name = "objc-foundation"
-+version = "0.1.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "1add1b659e36c9607c7aab864a76c7a4c2760cd0cd2e120f3fb8b952c7e22bf9"
-+dependencies = [
-+ "block",
-+ "objc",
-+ "objc_id",
-+]
-+
-+[[package]]
-+name = "objc_id"
-+version = "0.1.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "c92d4ddb4bd7b50d730c215ff871754d0da6b2178849f8a2a2ab69712d0c073b"
-+dependencies = [
-+ "objc",
-+]
-+
- [[package]]
- name = "once_cell"
- version = "1.8.0"
-@@ -1820,6 +1980,20 @@ version = "0.3.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5"
-
-+[[package]]
-+name = "openssl"
-+version = "0.10.36"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "8d9facdb76fec0b73c406f125d44d86fdad818d66fef0531eec9233ca425ff4a"
-+dependencies = [
-+ "bitflags",
-+ "cfg-if",
-+ "foreign-types",
-+ "libc",
-+ "once_cell",
-+ "openssl-sys",
-+]
-+
- [[package]]
- name = "openssl-probe"
- version = "0.1.4"
-@@ -1832,7 +2006,7 @@ version = "0.9.66"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "1996d2d305e561b70d1ee0c53f1542833f4e1ac6ce9a6708b6ff2738ca67dc82"
- dependencies = [
-- "autocfg 1.0.1",
-+ "autocfg",
- "cc",
- "libc",
- "pkg-config",
-@@ -1887,7 +2061,7 @@ version = "0.8.3"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "fa7a782938e745763fe6907fc6ba86946d72f49fe7e21de074e08128a99fb018"
- dependencies = [
-- "cfg-if 1.0.0",
-+ "cfg-if",
- "instant",
- "libc",
- "redox_syscall",
-@@ -1910,32 +2084,15 @@ dependencies = [
- "ucd-trie",
- ]
-
--[[package]]
--name = "phf"
--version = "0.7.24"
--source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "b3da44b85f8e8dfaec21adae67f95d93244b2ecf6ad2a692320598dcc8e6dd18"
--dependencies = [
-- "phf_shared 0.7.24",
--]
--
- [[package]]
- name = "phf"
- version = "0.8.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "3dfb61232e34fcb633f43d12c58f83c1df82962dcdfa565a4e866ffc17dafe12"
- dependencies = [
-- "phf_shared 0.8.0",
--]
--
--[[package]]
--name = "phf_codegen"
--version = "0.7.24"
--source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "b03e85129e324ad4166b06b2c7491ae27fe3ec353af72e72cd1654c7225d517e"
--dependencies = [
-- "phf_generator 0.7.24",
-- "phf_shared 0.7.24",
-+ "phf_macros",
-+ "phf_shared",
-+ "proc-macro-hack",
- ]
-
- [[package]]
-@@ -1944,18 +2101,8 @@ version = "0.8.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "cbffee61585b0411840d3ece935cce9cb6321f01c45477d30066498cd5e1a815"
- dependencies = [
-- "phf_generator 0.8.0",
-- "phf_shared 0.8.0",
--]
--
--[[package]]
--name = "phf_generator"
--version = "0.7.24"
--source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "09364cc93c159b8b06b1f4dd8a4398984503483891b0c26b867cf431fb132662"
--dependencies = [
-- "phf_shared 0.7.24",
-- "rand 0.6.5",
-+ "phf_generator",
-+ "phf_shared",
- ]
-
- [[package]]
-@@ -1964,17 +2111,22 @@ version = "0.8.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "17367f0cc86f2d25802b2c26ee58a7b23faeccf78a396094c13dced0d0182526"
- dependencies = [
-- "phf_shared 0.8.0",
-+ "phf_shared",
- "rand 0.7.3",
- ]
-
- [[package]]
--name = "phf_shared"
--version = "0.7.24"
-+name = "phf_macros"
-+version = "0.8.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "234f71a15de2288bcb7e3b6515828d22af7ec8598ee6d24c3b526fa0a80b67a0"
-+checksum = "7f6fde18ff429ffc8fe78e2bf7f8b7a5a5a6e2a8b58bc5a9ac69198bbda9189c"
- dependencies = [
-- "siphasher 0.2.3",
-+ "phf_generator",
-+ "phf_shared",
-+ "proc-macro-hack",
-+ "proc-macro2",
-+ "quote",
-+ "syn",
- ]
-
- [[package]]
-@@ -1983,7 +2135,7 @@ version = "0.8.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "c00cf8b9eafe68dde5e9eaa2cef8ee84a9336a47d566ec55ca16589633b65af7"
- dependencies = [
-- "siphasher 0.3.6",
-+ "siphasher",
- ]
-
- [[package]]
-@@ -2030,7 +2182,7 @@ version = "2.1.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "92341d779fa34ea8437ef4d82d440d5e1ce3f3ff7f824aa64424cd481f9a1f25"
- dependencies = [
-- "cfg-if 1.0.0",
-+ "cfg-if",
- "libc",
- "log",
- "wepoll-ffi",
-@@ -2062,11 +2214,10 @@ checksum = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c"
-
- [[package]]
- name = "pretty_env_logger"
--version = "0.3.1"
-+version = "0.4.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "717ee476b1690853d222af4634056d830b5197ffd747726a9a1eee6da9f49074"
-+checksum = "926d36b9553851b8b0005f1275891b392ee4d2d833852c417ed025477350fb9d"
- dependencies = [
-- "chrono",
- "env_logger",
- "log",
- ]
-@@ -2175,25 +2326,6 @@ dependencies = [
- "winapi",
- ]
-
--[[package]]
--name = "rand"
--version = "0.6.5"
--source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "6d71dacdc3c88c1fde3885a3be3fbab9f35724e6ce99467f7d9c5026132184ca"
--dependencies = [
-- "autocfg 0.1.7",
-- "libc",
-- "rand_chacha 0.1.1",
-- "rand_core 0.4.2",
-- "rand_hc 0.1.0",
-- "rand_isaac",
-- "rand_jitter",
-- "rand_os",
-- "rand_pcg 0.1.2",
-- "rand_xorshift",
-- "winapi",
--]
--
- [[package]]
- name = "rand"
- version = "0.7.3"
-@@ -2205,7 +2337,7 @@ dependencies = [
- "rand_chacha 0.2.2",
- "rand_core 0.5.1",
- "rand_hc 0.2.0",
-- "rand_pcg 0.2.1",
-+ "rand_pcg",
- ]
-
- [[package]]
-@@ -2220,16 +2352,6 @@ dependencies = [
- "rand_hc 0.3.1",
- ]
-
--[[package]]
--name = "rand_chacha"
--version = "0.1.1"
--source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "556d3a1ca6600bfcbab7c7c91ccb085ac7fbbcd70e008a98742e7847f4f7bcef"
--dependencies = [
-- "autocfg 0.1.7",
-- "rand_core 0.3.1",
--]
--
- [[package]]
- name = "rand_chacha"
- version = "0.2.2"
-@@ -2283,15 +2405,6 @@ dependencies = [
- "getrandom 0.2.3",
- ]
-
--[[package]]
--name = "rand_hc"
--version = "0.1.0"
--source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "7b40677c7be09ae76218dc623efbf7b18e34bced3f38883af07bb75630a21bc4"
--dependencies = [
-- "rand_core 0.3.1",
--]
--
- [[package]]
- name = "rand_hc"
- version = "0.2.0"
-@@ -2310,50 +2423,6 @@ dependencies = [
- "rand_core 0.6.3",
- ]
-
--[[package]]
--name = "rand_isaac"
--version = "0.1.1"
--source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "ded997c9d5f13925be2a6fd7e66bf1872597f759fd9dd93513dd7e92e5a5ee08"
--dependencies = [
-- "rand_core 0.3.1",
--]
--
--[[package]]
--name = "rand_jitter"
--version = "0.1.4"
--source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "1166d5c91dc97b88d1decc3285bb0a99ed84b05cfd0bc2341bdf2d43fc41e39b"
--dependencies = [
-- "libc",
-- "rand_core 0.4.2",
-- "winapi",
--]
--
--[[package]]
--name = "rand_os"
--version = "0.1.3"
--source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "7b75f676a1e053fc562eafbb47838d67c84801e38fc1ba459e8f180deabd5071"
--dependencies = [
-- "cloudabi",
-- "fuchsia-cprng",
-- "libc",
-- "rand_core 0.4.2",
-- "rdrand",
-- "winapi",
--]
--
--[[package]]
--name = "rand_pcg"
--version = "0.1.2"
--source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "abf9b09b01790cfe0364f52bf32995ea3c39f4d2dd011eac241d2914146d0b44"
--dependencies = [
-- "autocfg 0.1.7",
-- "rand_core 0.4.2",
--]
--
- [[package]]
- name = "rand_pcg"
- version = "0.2.1"
-@@ -2363,15 +2432,6 @@ dependencies = [
- "rand_core 0.5.1",
- ]
-
--[[package]]
--name = "rand_xorshift"
--version = "0.1.1"
--source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "cbf7e9e623549b0e21f6e97cf8ecf247c1a8fd2e8a992ae265314300b2455d5c"
--dependencies = [
-- "rand_core 0.3.1",
--]
--
- [[package]]
- name = "rdrand"
- version = "0.4.0"
-@@ -2391,7 +2451,7 @@ dependencies = [
- "chrono",
- "diesel",
- "diesel_migrations",
-- "futures 0.3.16",
-+ "futures",
- "gdk",
- "gdk-pixbuf",
- "gettext-rs",
-@@ -2400,8 +2460,8 @@ dependencies = [
- "gtk",
- "gtk-macros",
- "html2pango",
-- "http-client 1.1.1",
-- "isahc 0.9.14",
-+ "http-client",
-+ "isahc",
- "lazy_static",
- "libhandy",
- "log",
-@@ -2414,8 +2474,8 @@ dependencies = [
- "serde",
- "serde_derive",
- "serde_json",
-- "strum 0.16.0",
-- "strum_macros 0.16.0",
-+ "strum 0.21.0",
-+ "strum_macros 0.21.1",
- "url",
- "wallabag-api",
- "webkit2gtk",
-@@ -2447,6 +2507,15 @@ version = "0.6.25"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "f497285884f3fcff424ffc933e56d7cbca511def0c9831a7f9b5f6153e3cc89b"
-
-+[[package]]
-+name = "remove_dir_all"
-+version = "0.5.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "3acd125665422973a33ac9d3dd2df85edad0f4ae9b00dafb1a05e43a9f5ef8e7"
-+dependencies = [
-+ "winapi",
-+]
-+
- [[package]]
- name = "rust-crypto"
- version = "0.2.36"
-@@ -2492,11 +2561,12 @@ checksum = "71d301d4193d031abdd79ff7e3dd721168a9572ef3fe51a1517aba235bd8f86e"
-
- [[package]]
- name = "sanitize_html"
--version = "0.6.0"
-+version = "0.7.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "422bdfab5da6695bdc9f28a25087f6a01bf35c0ce2f51eeb2608db8b464a60a8"
-+checksum = "2cd7ea46188a5c6961a44b4c25ed280ea85a1e0b6a129f9bbd81bbf87261c52b"
- dependencies = [
-- "html5ever 0.24.1",
-+ "html5ever",
-+ "kuchiki",
- "lazy_static",
- "regex",
- ]
-@@ -2542,6 +2612,49 @@ dependencies = [
- "sha2",
- ]
-
-+[[package]]
-+name = "security-framework"
-+version = "2.3.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "23a2ac85147a3a11d77ecf1bc7166ec0b92febfa4461c37944e180f319ece467"
-+dependencies = [
-+ "bitflags",
-+ "core-foundation",
-+ "core-foundation-sys",
-+ "libc",
-+ "security-framework-sys",
-+]
-+
-+[[package]]
-+name = "security-framework-sys"
-+version = "2.3.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "7e4effb91b4b8b6fb7732e670b6cee160278ff8e6bf485c7805d9e319d76e284"
-+dependencies = [
-+ "core-foundation-sys",
-+ "libc",
-+]
-+
-+[[package]]
-+name = "selectors"
-+version = "0.22.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "df320f1889ac4ba6bc0cdc9c9af7af4bd64bb927bccdf32d81140dc1f9be12fe"
-+dependencies = [
-+ "bitflags",
-+ "cssparser",
-+ "derive_more",
-+ "fxhash",
-+ "log",
-+ "matches",
-+ "phf",
-+ "phf_codegen",
-+ "precomputed-hash",
-+ "servo_arc",
-+ "smallvec",
-+ "thin-slice",
-+]
-+
- [[package]]
- name = "semver"
- version = "0.9.0"
-@@ -2629,6 +2742,16 @@ dependencies = [
- "serde",
- ]
-
-+[[package]]
-+name = "servo_arc"
-+version = "0.1.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d98238b800e0d1576d8b6e3de32827c2d74bee68bb97748dcf5071fb53965432"
-+dependencies = [
-+ "nodrop",
-+ "stable_deref_trait",
-+]
-+
- [[package]]
- name = "sha1"
- version = "0.6.0"
-@@ -2642,17 +2765,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "b362ae5752fd2137731f9fa25fd4d9058af34666ca1966fb969119cc35719f12"
- dependencies = [
- "block-buffer",
-- "cfg-if 1.0.0",
-+ "cfg-if",
- "cpufeatures",
- "digest",
- "opaque-debug",
- ]
-
- [[package]]
--name = "siphasher"
--version = "0.2.3"
-+name = "simple-mutex"
-+version = "1.1.5"
- source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "0b8de496cf83d4ed58b6be86c3a275b8602f6ffe98d3024a869e124147a9a3ac"
-+checksum = "38aabbeafa6f6dead8cebf246fe9fae1f9215c8d29b3a69f93bd62a9e4a3dcd6"
-+dependencies = [
-+ "event-listener",
-+]
-
- [[package]]
- name = "siphasher"
-@@ -2717,6 +2843,12 @@ dependencies = [
- "lock_api",
- ]
-
-+[[package]]
-+name = "stable_deref_trait"
-+version = "1.2.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3"
-+
- [[package]]
- name = "standback"
- version = "0.2.17"
-@@ -2726,6 +2858,12 @@ dependencies = [
- "version_check",
- ]
-
-+[[package]]
-+name = "static_assertions"
-+version = "1.1.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
-+
- [[package]]
- name = "stdweb"
- version = "0.4.20"
-@@ -2775,21 +2913,6 @@ version = "0.1.5"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "213701ba3370744dcd1a12960caa4843b3d68b4d1c0a5d575e0d65b2ee9d16c0"
-
--[[package]]
--name = "string_cache"
--version = "0.7.5"
--source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "89c058a82f9fd69b1becf8c274f412281038877c553182f1d02eb027045a2d67"
--dependencies = [
-- "lazy_static",
-- "new_debug_unreachable",
-- "phf_shared 0.7.24",
-- "precomputed-hash",
-- "serde",
-- "string_cache_codegen 0.4.4",
-- "string_cache_shared",
--]
--
- [[package]]
- name = "string_cache"
- version = "0.8.1"
-@@ -2798,48 +2921,23 @@ checksum = "8ddb1139b5353f96e429e1a5e19fbaf663bddedaa06d1dbd49f82e352601209a"
- dependencies = [
- "lazy_static",
- "new_debug_unreachable",
-- "phf_shared 0.8.0",
-+ "phf_shared",
- "precomputed-hash",
- "serde",
- ]
-
--[[package]]
--name = "string_cache_codegen"
--version = "0.4.4"
--source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "f0f45ed1b65bf9a4bf2f7b7dc59212d1926e9eaf00fa998988e420fd124467c6"
--dependencies = [
-- "phf_generator 0.7.24",
-- "phf_shared 0.7.24",
-- "proc-macro2",
-- "quote",
-- "string_cache_shared",
--]
--
- [[package]]
- name = "string_cache_codegen"
- version = "0.5.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "f24c8e5e19d22a726626f1a5e16fe15b132dcf21d10177fa5a45ce7962996b97"
- dependencies = [
-- "phf_generator 0.8.0",
-- "phf_shared 0.8.0",
-+ "phf_generator",
-+ "phf_shared",
- "proc-macro2",
- "quote",
- ]
-
--[[package]]
--name = "string_cache_shared"
--version = "0.3.0"
--source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "b1884d1bc09741d466d9b14e6d37ac89d6909cbcac41dd9ae982d4d063bbedfc"
--
--[[package]]
--name = "strum"
--version = "0.16.0"
--source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "6138f8f88a16d90134763314e3fc76fa3ed6a7db4725d6acf9a3ef95a3188d22"
--
- [[package]]
- name = "strum"
- version = "0.18.0"
-@@ -2852,18 +2950,6 @@ version = "0.21.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "aaf86bbcfd1fa9670b7a129f64fc0c9fcbbfe4f1bc4210e9e98fe71ffc12cde2"
-
--[[package]]
--name = "strum_macros"
--version = "0.16.0"
--source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "0054a7df764039a6cd8592b9de84be4bec368ff081d203a7d5371cbfa8e65c81"
--dependencies = [
-- "heck",
-- "proc-macro2",
-- "quote",
-- "syn",
--]
--
- [[package]]
- name = "strum_macros"
- version = "0.18.0"
-@@ -2902,11 +2988,11 @@ checksum = "73f856d60bdb4679fc9ec516c34093484e963431b5016a8429f85a8e74b5ccaa"
- dependencies = [
- "async-std",
- "async-trait",
-- "cfg-if 1.0.0",
-+ "cfg-if",
- "encoding_rs",
- "futures-util",
- "getrandom 0.2.3",
-- "http-client 6.5.1",
-+ "http-client",
- "http-types",
- "log",
- "mime_guess",
-@@ -2961,6 +3047,26 @@ dependencies = [
- "version-compare 0.0.11",
- ]
-
-+[[package]]
-+name = "temp-dir"
-+version = "0.1.11"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "af547b166dd1ea4b472165569fc456cfb6818116f854690b0ff205e636523dab"
-+
-+[[package]]
-+name = "tempfile"
-+version = "3.2.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "dac1c663cfc93810f88aed9b8941d48cabf856a1b111c29a40439018d870eb22"
-+dependencies = [
-+ "cfg-if",
-+ "libc",
-+ "rand 0.8.4",
-+ "redox_syscall",
-+ "remove_dir_all",
-+ "winapi",
-+]
-+
- [[package]]
- name = "tendril"
- version = "0.4.2"
-@@ -2981,6 +3087,12 @@ dependencies = [
- "winapi-util",
- ]
-
-+[[package]]
-+name = "thin-slice"
-+version = "0.1.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "8eaa81235c7058867fa8c0e7314f33dcce9c215f535d1913822a2b3f5e289f3c"
-+
- [[package]]
- name = "thiserror"
- version = "1.0.26"
-@@ -3066,14 +3178,13 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c"
-
- [[package]]
--name = "tokio-io"
--version = "0.1.13"
-+name = "tokio"
-+version = "1.10.1"
- source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "57fc868aae093479e3131e3d165c93b1c7474109d13c90ec0dda2a1bbfff0674"
-+checksum = "92036be488bb6594459f2e03b60e42df6f937fe6ca5c5ffdcb539c6b84dc40f5"
- dependencies = [
-- "bytes 0.4.12",
-- "futures 0.1.31",
-- "log",
-+ "autocfg",
-+ "pin-project-lite",
- ]
-
- [[package]]
-@@ -3091,7 +3202,7 @@ version = "0.1.26"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "09adeb8c97449311ccd28a427f96fb563e7fd31aabf994189879d9da2394b89d"
- dependencies = [
-- "cfg-if 1.0.0",
-+ "cfg-if",
- "log",
- "pin-project-lite",
- "tracing-attributes",
-@@ -3277,7 +3388,7 @@ version = "0.2.76"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "8ce9b1b516211d33767048e5d47fa2a381ed8b76fc48d2ce4aa39877f9f183e0"
- dependencies = [
-- "cfg-if 1.0.0",
-+ "cfg-if",
- "wasm-bindgen-macro",
- ]
-
-@@ -3302,7 +3413,7 @@ version = "0.4.26"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "95fded345a6559c2cfee778d562300c581f7d4ff3edb9b0d230d69800d213972"
- dependencies = [
-- "cfg-if 1.0.0",
-+ "cfg-if",
- "js-sys",
- "wasm-bindgen",
- "web-sys",
-@@ -3441,6 +3552,6 @@ checksum = "0b1b52e6e8614d4a58b8e70cf51ec0cc21b256ad8206708bcff8139b5bbd6a59"
- dependencies = [
- "log",
- "mac",
-- "markup5ever 0.10.1",
-+ "markup5ever",
- "time 0.1.44",
- ]
-diff --git a/Cargo.toml b/Cargo.toml
-index e010fa7..51e5850 100644
---- a/Cargo.toml
-+++ b/Cargo.toml
-@@ -14,28 +14,28 @@ gdk-pixbuf = "0.14"
- log = "0.4"
- libhandy = "0.8"
- webkit2gtk = { version = "0.14", features = ["v2_6"] }
--gettext-rs= { version = "0.4", features = ["gettext-system"] }
--lazy_static = "1.3"
-+gettext-rs= { version = "0.7", features = ["gettext-system"] }
-+lazy_static = "1.4"
- serde = "1.0"
- serde_json = "1.0"
- serde_derive = "1.0"
- wallabag-api = "0.4.1"
--pretty_env_logger = "0.3"
-+pretty_env_logger = "0.4"
- diesel = { version = "1.4", features = ["sqlite", "r2d2", "chrono"] }
- diesel_migrations = { version = "1.4", features = ["sqlite"] }
- anyhow = "1.0"
- isahc = "0.9"
--sanitize_html = "0.6"
--regex = "1.3"
-+sanitize_html = "0.7"
-+regex = "1.5"
- secret-service = "1.0"
- chrono = "0.4"
--url = "2.1"
--strum = "0.16"
--strum_macros = "0.16"
--html2pango = "0.3"
-+url = "2.2"
-+strum = "0.21"
-+strum_macros = "0.21"
-+html2pango = "0.4"
- rust-crypto = "0.2"
--async-std = "1.4"
-+async-std = "1.9"
- futures = { version = "0.3", features = [ "thread-pool" ] }
- gtk-macros = "0.3"
--http-client = { version = "1.1", features = ["native_client"] }
--once_cell = "1.8.0"
-+http-client = { version = "6.5", features = ["native_client"] }
-+once_cell = "1.8"
-diff --git a/src/main.rs b/src/main.rs
-index 5b93108..4d2b34c 100644
---- a/src/main.rs
-+++ b/src/main.rs
-@@ -36,8 +36,8 @@ fn main() {
- gtk::init().expect("Unable to start GTK3");
- // Prepare i18n
- setlocale(LocaleCategory::LcAll, "");
-- bindtextdomain(config::GETTEXT_PACKAGE, config::LOCALEDIR);
-- textdomain(config::GETTEXT_PACKAGE);
-+ bindtextdomain(config::GETTEXT_PACKAGE, config::LOCALEDIR).unwrap();
-+ textdomain(config::GETTEXT_PACKAGE).unwrap();
-
- glib::set_prgname(Some("read-it-later"));
- glib::set_application_name(&format!("Read It Later{}", config::NAME_SUFFIX));
---
-2.31.1
-
diff --git a/testing/read-it-later/0003-gitlab-ci.yml-Update-the-containers.patch b/testing/read-it-later/0003-gitlab-ci.yml-Update-the-containers.patch
deleted file mode 100644
index e27c4b9d1f5..00000000000
--- a/testing/read-it-later/0003-gitlab-ci.yml-Update-the-containers.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From b0049b419efb41f05c0350dbf42fe5924e9312f8 Mon Sep 17 00:00:00 2001
-From: Alistair Francis <alistair@alistair23.me>
-Date: Wed, 25 Aug 2021 20:26:18 +1000
-Subject: [PATCH 3/4] gitlab-ci.yml: Update the containers
-
-Signed-off-by: Alistair Francis <alistair@alistair23.me>
----
- .gitlab-ci.yml | 4 ++--
- build-aux/com.belmoussaoui.ReadItLaterDevel.json | 2 +-
- 2 files changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
-index aa093aa..bbfb685 100644
---- a/.gitlab-ci.yml
-+++ b/.gitlab-ci.yml
-@@ -1,9 +1,9 @@
- include:
- - project: 'gnome/citemplates'
-- file: 'flatpak/flatpak-ci-initiative-sdk-extensions.yml'
-+ file: 'flatpak/flatpak_ci_initiative.yml'
-
- flatpak:
-- image: 'registry.gitlab.gnome.org/gnome/gnome-runtime-images/rust_bundle:3.36'
-+ image: 'registry.gitlab.gnome.org/gnome/gnome-runtime-images/rust_bundle:40'
- variables:
- BUNDLE: "read-it-later-nightly.flatpak"
- MANIFEST_PATH: "build-aux/com.belmoussaoui.ReadItLaterDevel.json"
-diff --git a/build-aux/com.belmoussaoui.ReadItLaterDevel.json b/build-aux/com.belmoussaoui.ReadItLaterDevel.json
-index 7e6171b..0eef02f 100644
---- a/build-aux/com.belmoussaoui.ReadItLaterDevel.json
-+++ b/build-aux/com.belmoussaoui.ReadItLaterDevel.json
-@@ -1,7 +1,7 @@
- {
- "app-id": "com.belmoussaoui.ReadItLaterDevel",
- "runtime": "org.gnome.Platform",
-- "runtime-version": "3.36",
-+ "runtime-version": "40",
- "sdk": "org.gnome.Sdk",
- "sdk-extensions": ["org.freedesktop.Sdk.Extension.rust-stable"],
- "command": "read-it-later",
---
-2.31.1
-
diff --git a/testing/read-it-later/0004-Cargo.toml-Update-isahc.patch b/testing/read-it-later/0004-Cargo.toml-Update-isahc.patch
deleted file mode 100644
index 3dd6f52bede..00000000000
--- a/testing/read-it-later/0004-Cargo.toml-Update-isahc.patch
+++ /dev/null
@@ -1,114 +0,0 @@
-From b958ed12ae15ee681f1c208b6962bd3d558134cc Mon Sep 17 00:00:00 2001
-From: Alistair Francis <alistair@alistair23.me>
-Date: Wed, 25 Aug 2021 21:01:40 +1000
-Subject: [PATCH 4/4] Cargo.toml: Update isahc
-
-Update isahc. As part of this we need to convert copy_to_file() to not
-be async due to: https://github.com/sagebind/isahc/issues/283
-
-Signed-off-by: Alistair Francis <alistair@alistair23.me>
----
- Cargo.lock | 30 +++++++++++++++++++++++++++---
- Cargo.toml | 2 +-
- src/models/preview_image.rs | 4 ++--
- 3 files changed, 30 insertions(+), 6 deletions(-)
-
-diff --git a/Cargo.lock b/Cargo.lock
-index 42f21e6..ec3602a 100644
---- a/Cargo.lock
-+++ b/Cargo.lock
-@@ -1413,7 +1413,7 @@ dependencies = [
- "deadpool",
- "futures",
- "http-types",
-- "isahc",
-+ "isahc 0.9.14",
- "js-sys",
- "log",
- "wasm-bindgen",
-@@ -1494,13 +1494,37 @@ dependencies = [
- "crossbeam-utils",
- "curl",
- "curl-sys",
-- "encoding_rs",
- "flume",
- "futures-lite",
- "http",
- "log",
-+ "once_cell",
-+ "slab",
-+ "sluice",
-+ "tracing",
-+ "tracing-futures",
-+ "url",
-+ "waker-fn",
-+]
-+
-+[[package]]
-+name = "isahc"
-+version = "1.5.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "431445cb4ba85a80cb1438a9ae8042dadb78ae4046ecee89ad027b614aa0ddb7"
-+dependencies = [
-+ "async-channel",
-+ "crossbeam-utils",
-+ "curl",
-+ "curl-sys",
-+ "encoding_rs",
-+ "event-listener",
-+ "futures-lite",
-+ "http",
-+ "log",
- "mime",
- "once_cell",
-+ "polling",
- "slab",
- "sluice",
- "tracing",
-@@ -2461,7 +2485,7 @@ dependencies = [
- "gtk-macros",
- "html2pango",
- "http-client",
-- "isahc",
-+ "isahc 1.5.0",
- "lazy_static",
- "libhandy",
- "log",
-diff --git a/Cargo.toml b/Cargo.toml
-index 51e5850..ed29a18 100644
---- a/Cargo.toml
-+++ b/Cargo.toml
-@@ -24,7 +24,7 @@ pretty_env_logger = "0.4"
- diesel = { version = "1.4", features = ["sqlite", "r2d2", "chrono"] }
- diesel_migrations = { version = "1.4", features = ["sqlite"] }
- anyhow = "1.0"
--isahc = "0.9"
-+isahc = "1.5"
- sanitize_html = "0.7"
- regex = "1.5"
- secret-service = "1.0"
-diff --git a/src/models/preview_image.rs b/src/models/preview_image.rs
-index 3b9b7c4..b9900e7 100644
---- a/src/models/preview_image.rs
-+++ b/src/models/preview_image.rs
-@@ -1,7 +1,7 @@
- use anyhow::Result;
- use crypto::digest::Digest;
- use crypto::sha1::Sha1;
--use isahc::ResponseExt;
-+use isahc::prelude::*;
- use std::path::PathBuf;
- use std::rc::Rc;
- use url::Url;
-@@ -33,7 +33,7 @@ impl PreviewImage {
- }
-
- pub async fn download(&self, client: Rc<isahc::HttpClient>) -> Result<()> {
-- if let Ok(mut resp) = client.get_async(&self.url.to_string()).await {
-+ if let Ok(mut resp) = client.get(&self.url.to_string()) {
- info!("Downloading preview image {} into {:#?}", self.url, self.cache);
- resp.copy_to_file(self.cache.clone())?;
- }
---
-2.31.1
-
diff --git a/testing/read-it-later/APKBUILD b/testing/read-it-later/APKBUILD
deleted file mode 100755
index e1ea95c90db..00000000000
--- a/testing/read-it-later/APKBUILD
+++ /dev/null
@@ -1,40 +0,0 @@
-# Contributor: Alistair Francis <alistair@alistair23.me>
-# Maintainer: Alistair Francis <alistair@alistair23.me>
-pkgname=read-it-later
-pkgver=0.0.2
-pkgrel=1
-pkgdesc="Wallabag Client built with GTK"
-url="https://gitlab.gnome.org/World/read-it-later"
-arch="all !s390x !riscv64" # cargo, rust not found
-license="GPL-3.0-only"
-makedepends="meson bash rust cargo webkit2gtk-dev libhandy1-dev sqlite-dev
- gettext-dev openssl-dev"
-source="read-it-later-692cf638e1284bcf31031421e6951c767bed6139.tar.gz::https://gitlab.gnome.org/World/read-it-later/-/archive/692cf638e1284bcf31031421e6951c767bed6139/read-it-later-692cf638e1284bcf31031421e6951c767bed6139.tar.gz
- 0001-Cargo-Update-the-glib-dependencies.patch
- 0002-Cargo-Update-most-remainig-dependencies.patch
- 0003-gitlab-ci.yml-Update-the-containers.patch
- 0004-Cargo.toml-Update-isahc.patch
- "
-builddir="$srcdir/read-it-later-692cf638e1284bcf31031421e6951c767bed6139"
-options="!check" # no tests
-
-build() {
- abuild-meson . output
- meson compile ${JOBS:+-j ${JOBS}} -C output
-}
-
-check() {
- meson test --no-rebuild -v -C output
-}
-
-package() {
- DESTDIR="$pkgdir" meson install --no-rebuild -C output
-}
-
-sha512sums="
-8c0b6a608230feb57612b06ea993f0f03d25ba90959376cfd80709190e4939c88edeadd3071a70006ad84879604682ac47f87e3e72cbb5a300d0f505084bf37e read-it-later-692cf638e1284bcf31031421e6951c767bed6139.tar.gz
-12e26a50f155e13e8704b1eb5a7858baf2fe54e59374518f77225172694b40c716801e4bc868c4af03feb71acd85ee34e8ad0e5497c69360943618abb18f823e 0001-Cargo-Update-the-glib-dependencies.patch
-c74dcbb4413b30c336d8b421f1d82a4516409e76c936b126491418914cdf287d91ba80557799c86e7c874ef74538011416e5aefa5bcf73d4946dcae58b2f3f7a 0002-Cargo-Update-most-remainig-dependencies.patch
-7d1327995d9c4e8eb9b0774ea3d54c338bb16ec0fd3f9724655e54f28ac38c9e6623661ff9313bdb4e3aab3131d6a384f6c60c7499a3e3891b57a13e9750ac3f 0003-gitlab-ci.yml-Update-the-containers.patch
-0638d8270b3666fdb149ef0e4c6e23dc33e48bad2b2294d2484240560933560e9500c34ddba44b7f4972062d0c0e618149d448e4bb0c83dd17220a1e3f0d8d41 0004-Cargo.toml-Update-isahc.patch
-"
diff --git a/testing/readosm/APKBUILD b/testing/readosm/APKBUILD
index cd8a2ecb5f6..c5b91314f10 100644
--- a/testing/readosm/APKBUILD
+++ b/testing/readosm/APKBUILD
@@ -25,7 +25,6 @@ build() {
make
}
-
check() {
make check
}
diff --git a/testing/reason/APKBUILD b/testing/reason/APKBUILD
index 4bbab81c7d6..8c0c9164f2f 100644
--- a/testing/reason/APKBUILD
+++ b/testing/reason/APKBUILD
@@ -1,11 +1,11 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=reason
-pkgver=3.8.0
-pkgrel=0
+pkgver=3.8.2
+pkgrel=1
pkgdesc="Simple, fast & type safe code that leverages the JavaScript & OCaml ecosystems"
url="https://reasonml.github.io/"
-arch="all !riscv64" # restricted by ocaml
+arch="all !riscv64 !loongarch64" # ocaml
license="MIT"
checkdepends="nodejs utop-full"
makedepends="
@@ -13,7 +13,7 @@ makedepends="
dune
ocaml
ocaml-compiler-libs
- ocaml-cppo-dev
+ ocaml-cppo
ocaml-findlib-dev
ocaml-fix-dev
ocaml-menhir
@@ -45,7 +45,6 @@ options="!check" # FIXME: tests cannot find reason's modules
provides="$pkgname-reactjs=$pkgver-r$pkgrel"
subpackages="
ocaml-$pkgname-dev:_libdev
- $pkgname-merlin
$pkgname-rtop
ocaml-$pkgname:_lib
"
@@ -89,26 +88,17 @@ _libdev() {
cd "$pkgdir"
- local path; for path in $(find usr/lib/ocaml/$pkgname \( \
+ local path; find usr/lib/ocaml/$pkgname \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
}
-merlin() {
- pkgdesc="Reason extension to Merlin - context sensitive completion"
- depends="merlin"
-
- amove usr/bin/ocamlmerlin-reason
-}
-
rtop() {
pkgdesc="REPL for Reason based on Utop"
depends="$pkgname=$pkgver-r$pkgrel
@@ -122,11 +112,31 @@ rtop() {
_lib() {
pkgdesc="$pkgdesc (library)"
- depends="ocaml-runtime ocaml-menhir ocaml-ppx_derivers"
amove usr/lib/ocaml/$pkgname
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
-c5dcec810a1981b78b19271a8a255f4087628514725d6818419b141be6346a62b28fe8d0f10855efe420ede2839bfe562aa5abf21f29d66250e5c0d02323d6d8 reason-3.8.0.tar.bz2
+45822ecf4b19b892e1d150fd7f7a80af18df576b204647d4bbb9a18ac591a690f9b5338789ecccacb2d6b6354dbc32ff4a3574cc8b82b777e21cb8729f502f95 reason-3.8.2.tar.bz2
"
diff --git a/testing/reason/rtop.sh.patch b/testing/reason/rtop.sh.patch
deleted file mode 100644
index 73682fd4ce4..00000000000
--- a/testing/reason/rtop.sh.patch
+++ /dev/null
@@ -1,41 +0,0 @@
---- a/src/rtop/rtop.sh
-+++ b/src/rtop/rtop.sh
-@@ -1,4 +1,4 @@
--#!/usr/bin/env bash
-+#!/bin/sh
- # Copyright (c) 2015-present, Facebook, Inc. All rights reserved.
-
-
-@@ -13,15 +13,26 @@
- # require's reason, so that reason is required after .ocamlinit is
- # parsed in standard syntax.
-
--touch $HOME/.utoprc
--touch $HOME/.utop-history
--DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )
-+# Enable pipefail if supported.
-+if ( set -o pipefail 2>/dev/null ); then
-+ set -o pipefail
-+fi
-
-+touch "$HOME"/.utoprc
-+touch "$HOME"/.utop-history
-+
- # intercept the -stdin flag of utop, and preprocess the code into reason code
- # before forwarding it. Afaik currently there's no better way of intercepting
- # the code after urtop receives code from stdin and before it processes it
--if [[ $@ =~ "stdin" ]]; then
-- refmt --parse re --print ml --interface false | utop-full $@
-+stdin=no
-+for arg in "$@"; do
-+ case "$arg" in
-+ -stdin) stdin=yes; break;;
-+ esac
-+done
-+
-+if [ "$stdin" = yes ]; then
-+ refmt --parse re --print ml --interface false | utop-full "$@"
- else
-- utop-full -init $DIR/rtop_init.ml $@ -I $HOME -safe-string
-+ utop-full -init /usr/share/reason-rtop/rtop_init.ml "$@" -I "$HOME" -safe-string
- fi
diff --git a/testing/reaver-wps-fork-t6x/APKBUILD b/testing/reaver-wps-fork-t6x/APKBUILD
index 09575f75974..c01652482b6 100644
--- a/testing/reaver-wps-fork-t6x/APKBUILD
+++ b/testing/reaver-wps-fork-t6x/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=reaver-wps-fork-t6x
pkgver=1.6.6
-pkgrel=0
+pkgrel=1
pkgdesc="Community forked version of reaver, the WPS password cracker"
url="https://github.com/t6x/reaver-wps-fork-t6x"
arch="all !s390x" # aircrack-ng disabled for s390x
diff --git a/testing/recoll/APKBUILD b/testing/recoll/APKBUILD
index ffdc79d1eb4..da601241e63 100644
--- a/testing/recoll/APKBUILD
+++ b/testing/recoll/APKBUILD
@@ -1,38 +1,29 @@
# Maintainer: Leonardo Arena <rnalrd@alpinelinux.org>
pkgname=recoll
-pkgver=1.31.0
+pkgver=1.37.5
pkgrel=1
pkgdesc="Desktop full-text search tool"
-url="https://www.lesbonscomptes.com/recoll/"
+url="https://www.recoll.org/"
arch="all"
license="GPL-2.0-or-later"
makedepends="
+ aspell-dev
file
libx11-dev
libxslt-dev
+ py3-setuptools
+ python3-dev
qt5-qtbase-dev
+ qt5-qttools-dev
xapian-core-dev
zlib-dev
- aspell-dev
"
-subpackages="$pkgname-doc"
-source="http://www.lesbonscomptes.com/recoll/recoll-$pkgver.tar.gz
- xattrs.patch
- fstreewalk.diff
+subpackages="$pkgname-dev $pkgname-doc"
+source="https://www.recoll.org/recoll-$pkgver.tar.gz
+ no-glibc.patch
"
-prepare() {
- default_prepare
- patch -p2 -i "$srcdir/fstreewalk.diff"
- for file_ext in h cpp; do
- sed -i 's/u_int64_t/uint64_t/g' utils/md5.$file_ext
- sed -i 's/u_int32_t/uint32_t/g' utils/md5.$file_ext
- sed -i 's/u_int8_t/uint8_t/g' utils/md5.$file_ext
- done
-}
-
build() {
- QMAKE=qmake-qt5 \
./configure \
--prefix=/usr \
--sysconfdir=/etc \
@@ -53,7 +44,6 @@ check() {
}
sha512sums="
-1a740cdabab158737461ab8f097ece79844e1f0b64285871217049c0619df400d99db18eac8942e1986def555c5ab8364f3320eb403d150b061126cbc3be2116 recoll-1.31.0.tar.gz
-ad482352fb92077284a87ebb9bc2cd0c9aa093358d43c4d768cb6cd9a2c610e215263d555bd3d23aadbf2e1025e3b886723e7b50edfab6974328931b3b194188 xattrs.patch
-35b7de8f0b869f83f87b83b7b05edb935c50ec5d216e5d1b60027f4f960e16f2725b0950b4290c532707e47914a6065a72b96504772593a5fb0b2b96d4e75d0d fstreewalk.diff
+594a81de809a2f2f08986ef1220ea2d7df8292923f55cf41c5813eb50be9ca63aa9f77c38bd27466486e72b030f2df28a093bca32dae1682d514acbb11a76382 recoll-1.37.5.tar.gz
+8617a8b85404ad3e025c6e28f6bec91d455a0cf6744783dd9faa443fe45ee92deb99a9e2f114ae5e639c88c0cf83d93604d1558c9b5e507e802f6250be1b073e no-glibc.patch
"
diff --git a/testing/recoll/fstreewalk.diff b/testing/recoll/fstreewalk.diff
deleted file mode 100644
index 8a92775e223..00000000000
--- a/testing/recoll/fstreewalk.diff
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/src/utils/fstreewalk.cpp b/src/utils/fstreewalk.cpp
-index 939074b1..fc43edc3 100644
---- a/src/utils/fstreewalk.cpp
-+++ b/src/utils/fstreewalk.cpp
-@@ -44,6 +44,7 @@ const int FsTreeWalker::FtwTravMask = FtwTravNatural|
- #ifndef _WIN32
- // dev/ino means nothing on Windows. It seems that FileId could replace it
- // but we only use this for cycle detection which we just disable.
-+#include <sys/stat.h>
- class DirId {
- public:
- dev_t dev;
diff --git a/testing/recoll/no-glibc.patch b/testing/recoll/no-glibc.patch
new file mode 100644
index 00000000000..a5711750051
--- /dev/null
+++ b/testing/recoll/no-glibc.patch
@@ -0,0 +1,14 @@
+diff --git a/common/conf_post.h b/common/conf_post.h
+index f79070d..b9a48a5 100644
+--- a/common/conf_post.h
++++ b/common/conf_post.h
+@@ -76,9 +76,6 @@ typedef int ssize_t;
+ #if defined(REAL_GCC) && defined(HAVE_FEATURES_H)
+ // Older gcc versions pretended to supply std::regex, but the resulting programs mostly crashed.
+ #include <features.h>
+-#if ! __GNUC_PREREQ(6,0)
+-#define NO_STD_REGEX 1
+-#endif
+ #endif
+
+ #endif /* INCLUDED */
diff --git a/testing/recoll/xattrs.patch b/testing/recoll/xattrs.patch
deleted file mode 100644
index 7e1bf4e547b..00000000000
--- a/testing/recoll/xattrs.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- ./utils/pxattr.cpp
-+++ utils/pxattr.cpp.orig
-@@ -44,7 +44,7 @@
- // just let the methods return errors (like they would on a non-xattr
- // fs on e.g. linux)
-
--#if defined(__DragonFly__) || defined(__OpenBSD__)
-+#if defined(__DragonFly__) || defined(__OpenBSD__) || !defined(__GLIBC__)
- #define HAS_NO_XATTR
- #endif
-
diff --git a/testing/recyclarr-cli/0001-disable-gitversion.patch b/testing/recyclarr-cli/0001-disable-gitversion.patch
new file mode 100644
index 00000000000..851b6169df2
--- /dev/null
+++ b/testing/recyclarr-cli/0001-disable-gitversion.patch
@@ -0,0 +1,32 @@
+From: Fabricio Silva <hi@fabricio.dev>
+Date: Mon, 7 Aug 2023 09:29:47 +0100
+Subject: [PATCH] Disable GitVersion
+
+GitVersion is a dependency that needs git history to return the current version.
+APKBUILD does not provide git history. Disable it and replace version in prepare() step.
+
+---
+ src/Recyclarr.Cli/Program.cs | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/src/Recyclarr.Cli/Program.cs b/src/Recyclarr.Cli/Program.cs
+index 6befa96..d98d643 100644
+--- a/src/Recyclarr.Cli/Program.cs
++++ b/src/Recyclarr.Cli/Program.cs
+@@ -38,6 +38,7 @@ internal static class Program
+ config.Settings.StrictParsing = true;
+
+ config.SetApplicationName("recyclarr");
++ config.SetApplicationVersion("{Version}");
+
+ var interceptor = new CliInterceptor(logLevelSwitch, appDataPathProvider);
+ interceptor.OnIntercepted.Subscribe(_ => OnAppInitialized());
+@@ -78,7 +79,7 @@ internal static class Program
+ }
+
+ _log = _scope.Resolve<ILogger>();
+- _log.Debug("Recyclarr Version: {Version}", GitVersionInformation.InformationalVersion);
++ _log.Debug("Recyclarr Version: {Version}");
+
+ _tasks = _scope.Resolve<IOrderedEnumerable<IBaseCommandSetupTask>>().ToArray();
+ _tasks.ForEach(x => x.OnStart());
diff --git a/testing/recyclarr-cli/0002-build-dotnet8.patch b/testing/recyclarr-cli/0002-build-dotnet8.patch
new file mode 100644
index 00000000000..f71e1afa5c7
--- /dev/null
+++ b/testing/recyclarr-cli/0002-build-dotnet8.patch
@@ -0,0 +1,23 @@
+From c1b2ed4021d22eb6245e25bdd2647ef768a34507 Mon Sep 17 00:00:00 2001
+From: Fabricio Silva <hi@fabricio.dev>
+Date: Wed, 14 Feb 2024 12:06:58 +0000
+Subject: [PATCH] build with dotnet8.0
+
+Build for dotnet8 is not merged to a stable release. For the next release we can probably remove this patch.
+
+---
+ src/Directory.Build.props | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/Directory.Build.props b/src/Directory.Build.props
+index 8d10c9f9..333301e5 100644
+--- a/src/Directory.Build.props
++++ b/src/Directory.Build.props
+@@ -1,6 +1,6 @@
+ <Project>
+ <PropertyGroup>
+- <TargetFramework>net7.0</TargetFramework>
++ <TargetFramework>net8.0</TargetFramework>
+ <Nullable>enable</Nullable>
+ <WarningLevel>9999</WarningLevel>
+ <ImplicitUsings>enable</ImplicitUsings>
diff --git a/testing/recyclarr-cli/APKBUILD b/testing/recyclarr-cli/APKBUILD
new file mode 100644
index 00000000000..497a4dae34f
--- /dev/null
+++ b/testing/recyclarr-cli/APKBUILD
@@ -0,0 +1,57 @@
+# Contributor: Fabricio Silva <hi@fabricio.dev>
+# Maintainer: Fabricio Silva <hi@fabricio.dev>
+pkgname=recyclarr-cli
+pkgver=6.0.2
+pkgrel=1
+pkgdesc="Automatically sync TRaSH guides to your Sonarr and Radarr instances"
+url="https://github.com/recyclarr/recyclarr"
+arch="x86_64 aarch64 armv7"
+license="MIT"
+options="net !check !strip" # strip breaks the package
+depends="
+ dotnet8-runtime
+ git
+ "
+makedepends="dotnet8-sdk"
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/recyclarr/recyclarr/archive/refs/tags/v$pkgver.tar.gz
+ 0001-disable-gitversion.patch
+ 0002-build-dotnet8.patch
+ "
+builddir="$srcdir/recyclarr-$pkgver"
+
+# map arch to dotnet
+case $CARCH in
+ x86_64) _dotnet_arch="x64" ;;
+ aarch64) _dotnet_arch="arm64" ;;
+ armv7) _dotnet_arch="arm" ;;
+ *) _dotnet_arch="$CARCH" ;;
+esac
+
+prepare() {
+ default_prepare
+
+ # apply patch version
+ sed -i "s/{Version}/$pkgver-r$pkgrel.alpine/" src/Recyclarr.Cli/Program.cs
+}
+
+build() {
+ # build the package and generate artifact
+ dotnet publish src/Recyclarr.Cli \
+ -p:RuntimeIdentifier="linux-musl-$_dotnet_arch" \
+ -p:Configuration=Release \
+ -p:SelfContained=false \
+ -p:PublishSingleFile=true \
+ -p:DisableGitVersionTask=true \
+ --output publish
+}
+
+package() {
+ install -Dm755 publish/recyclarr -t "$pkgdir"/usr/bin
+}
+
+sha512sums="
+70790aee093a2028d817223340a7ba98fb661a57bedbff6735a0d915108a085a80050996bf699dfaa81c34ed85511100eeaf31d90ecec8d798a619b1c47012d6 recyclarr-cli-6.0.2.tar.gz
+68bbe5a566fabc49f3382c76550f1462f318ddcbfbad33300551b651ba36e853ce4fed2a39d9dae8e9de1309b2dd5cb73df6f78b9dff1d2a9983b8c0cddda357 0001-disable-gitversion.patch
+40d47902cf83f302ed437049154c74b8df7db37009cab0bfdc8b9a1244e0ad20ce5d868680406a487733f9d4a80587454b215196f8830d69fe9fe0b0664f469e 0002-build-dotnet8.patch
+"
diff --git a/testing/redict/APKBUILD b/testing/redict/APKBUILD
new file mode 100644
index 00000000000..25491bdc246
--- /dev/null
+++ b/testing/redict/APKBUILD
@@ -0,0 +1,68 @@
+# Contributor: V.Krishn <vkrishn4@gmail.com>
+# Contributor: Eivind Uggedal <eu@eju.no>
+# Contributor: TBK <alpine@jjtc.eu>
+# Maintainer: fossdd <fossdd@pwned.life>
+pkgname=redict
+pkgver=7.3.0
+pkgrel=1
+pkgdesc="A distributed key/value database"
+url="https://redict.io/"
+arch="all"
+license="LGPL-3.0-only"
+pkgusers="redict"
+pkggroups="redict"
+makedepends="linux-headers openssl-dev>3"
+checkdepends="tcl procps"
+install="$pkgname.pre-install $pkgname.post-install"
+subpackages="$pkgname-openrc"
+builddir="$srcdir/$pkgname"
+source="redict-$pkgver.tar.gz::https://codeberg.org/redict/redict/archive/$pkgver.tar.gz
+ redict.conf.patch
+ sentinel.conf.patch
+ $pkgname.initd
+ $pkgname.confd
+ $pkgname-sentinel.initd
+ $pkgname.logrotate
+ "
+
+build() {
+ export CFLAGS="$CFLAGS -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto"
+ make USE_JEMALLOC=no \
+ MALLOC=libc \
+ BUILD_TLS=yes \
+ all
+}
+
+check() {
+ make test
+}
+
+package() {
+ make install PREFIX="$pkgdir/usr" INSTALL_BIN="$pkgdir/usr/bin"
+
+ cd "$pkgdir"
+
+ install -D -m 644 "$builddir"/redict.conf etc/redict.conf
+
+ # This file must be writable for redict, otherwise Sentinel fails to start.
+ install -D -m 644 -o redict -g redict "$builddir"/sentinel.conf etc/sentinel.conf
+
+ install -D -m 755 "$srcdir"/redict.initd etc/init.d/redict
+ install -D -m 755 "$srcdir"/redict-sentinel.initd etc/init.d/redict-sentinel
+ install -D -m 644 "$srcdir"/redict.confd etc/conf.d/redict
+ install -D -m 644 "$srcdir"/redict.logrotate etc/logrotate.d/redict
+
+ install -d -o redict -g redict \
+ var/lib/redict \
+ var/log/redict
+}
+
+sha512sums="
+d33f4dfaf728f5a22abe7a6223f3192c39dc41a32e7bcb0f453caaa859f35b512534979c26ced9f4458c19611debd282f37955e930151c0f827035f349647226 redict-7.3.0.tar.gz
+96740880cd0caac2cecb11066a555055e7c3f10feb312b2d4c7a206fb92c1003415cf7ab81bec4ac96f7631724d9097b1ca130621c8b564a7987dcd75d2f6e25 redict.conf.patch
+a3cec12566097fe78a31d09db77ca956ba52ee1fbb8ac4f5ffc49d0299e29f94ef55830f7760324a875bd47391eee116e0c4efb4bef00d6045bf98b81f392dfc sentinel.conf.patch
+555edff7dd7768c9579a101df86e91cc14cb9941365f051e0e993f1c341cd2b46fcfab6f4a6fd4c1d589242363e323734b453652d687d2d46cb651d84d42caee redict.initd
+4a0b04388115b5af6d4173aca66b081740432c19e1085c0bd5251fbbfb190c06aaa0540575e160c1e907cf504e33b3dcb67eb916dda3347cf394123d64adffb2 redict.confd
+7cc571f9f977a167d61bd952cf74d043ef17e5211113928c77a2f088df1cc8f31dd19e7de79e2795479f7afccd4dd32b66e61b67c99a21ffa8d9560811185728 redict-sentinel.initd
+68e0b0c4c8def5d42149b895ac681d91b8c691a5fd90bce64e6bf6c7780f33c6ac02a923642ebdc85f6bb41d8039cc38b7d3be49e5e9f86f097e3d1f6d41ecd4 redict.logrotate
+"
diff --git a/testing/redict/redict-sentinel.initd b/testing/redict/redict-sentinel.initd
new file mode 100644
index 00000000000..13018fea835
--- /dev/null
+++ b/testing/redict/redict-sentinel.initd
@@ -0,0 +1,33 @@
+#!/sbin/openrc-run
+
+name="redict Sentinel"
+
+: ${cfgfile:="/etc/sentinel.conf"}
+: ${command_user:="redict:redict"}
+: ${retry:=30}
+
+command="/usr/bin/redict-sentinel"
+command_args="$cfgfile --daemonize no $command_args"
+command_background="yes"
+
+pidfile="/run/$RC_SVCNAME.pid"
+
+required_files="$cfgfile"
+
+depend() {
+ use net localmount logger
+ after keepalived firewall redict
+}
+
+start_pre() {
+ # Sets start-start-daemon's --chdir.
+ directory=$(config_get 'dir' '/var/lib/redict')
+}
+
+config_get() {
+ local key="$1"
+ local default="${2:-}"
+
+ local value=$(awk "\$1 == \"$key\" { print \$2 }" "$cfgfile")
+ printf '%s\n' "${value:-$default}"
+}
diff --git a/testing/redict/redict.conf.patch b/testing/redict/redict.conf.patch
new file mode 100644
index 00000000000..5eea659ef17
--- /dev/null
+++ b/testing/redict/redict.conf.patch
@@ -0,0 +1,71 @@
+We force "daemonize no" in init script, so daemonize and pidfile does not
+have any effect in redict.conf. It's init/rc system's job to daemonize
+programs and handle pidfiles, if it needs it!
+
+Applications often communicate with redict via unix socket, so it's
+convenient to have it enabled by default.
+
+--- a/redict.conf
++++ b/redict.conf
+@@ -112,8 +112,8 @@
+ # incoming connections. There is no default, so redict will not listen
+ # on a unix socket when not specified.
+ #
+-# unixsocket /run/redict.sock
+-# unixsocketperm 700
++unixsocket /run/redict/redict.sock
++unixsocketperm 770
+
+ # Close the connection after a client is idle for N seconds (0 to disable)
+ timeout 0
+@@ -241,11 +241,6 @@
+
+ ################################# GENERAL #####################################
+
+-# By default redict does not run as a daemon. Use 'yes' if you need it.
+-# Note that redict will write a pid file in /var/run/redict.pid when daemonized.
+-# When redict is supervised by upstart or systemd, this parameter has no impact.
+-daemonize no
+-
+ # If you run redict from upstart or systemd, redict can interact with your
+ # supervision tree. Options:
+ # supervised no - no supervision interaction
+@@ -264,20 +259,6 @@
+ #
+ # supervised auto
+
+-# If a pid file is specified, redict writes it where specified at startup
+-# and removes it at exit.
+-#
+-# When the server runs non daemonized, no pid file is created if none is
+-# specified in the configuration. When the server is daemonized, the pid file
+-# is used even if not specified, defaulting to "/var/run/redict.pid".
+-#
+-# Creating a pid file is best effort: if redict is not able to create it
+-# nothing bad happens, the server will start and run normally.
+-#
+-# Note that on modern Linux systems "/run/redict.pid" is more conforming
+-# and should be used instead.
+-pidfile /var/run/redict_6379.pid
+-
+ # Specify the server verbosity level.
+ # This can be one of:
+ # debug (a lot of information, useful for development/testing)
+@@ -289,7 +270,7 @@
+ # Specify the log file name. Also the empty string can be used to force
+ # redict to log on the standard output. Note that if you use standard
+ # output for logging but daemonize, logs will be sent to /dev/null
+-logfile ""
++logfile /var/log/redict/redict.log
+
+ # To enable logging to the system logger, just set 'syslog-enabled' to yes,
+ # and optionally update the other syslog parameters to suit your needs.
+@@ -441,7 +422,7 @@
+ # The Append Only File will also be created inside this directory.
+ #
+ # Note that you must specify a directory here, not a file name.
+-dir ./
++dir /var/lib/redict
+
+ ################################# REPLICATION #################################
+
diff --git a/testing/redict/redict.confd b/testing/redict/redict.confd
new file mode 100644
index 00000000000..ba1e9948fbe
--- /dev/null
+++ b/testing/redict/redict.confd
@@ -0,0 +1,7 @@
+# Configuration for /etc/init.d/redict
+
+# User (and group) to run redict as.
+#command_user="redict:redict"
+
+# redict configuration file.
+#cfgfile="/etc/redict.conf"
diff --git a/testing/redict/redict.initd b/testing/redict/redict.initd
new file mode 100644
index 00000000000..6abbd10640e
--- /dev/null
+++ b/testing/redict/redict.initd
@@ -0,0 +1,41 @@
+#!/sbin/openrc-run
+
+name="redict server"
+
+: ${cfgfile:=${REDICT_CONF:-"/etc/redict.conf"}}
+: ${command_user:="${REDICT_USER:-redict}:${REDICT_GROUP:-redict}"}
+: ${retry:=30}
+
+command="/usr/bin/redict-server"
+command_args="$cfgfile --daemonize no $command_args"
+command_background="yes"
+pidfile="/run/$RC_SVCNAME.pid"
+
+required_files="$cfgfile"
+
+depend() {
+ use net localmount logger
+ after keepalived firewall
+}
+
+start_pre() {
+ # Sets start-start-daemon's --chdir.
+ directory=$(config_get 'dir' '/var/lib/redict')
+ checkpath -d -o "$command_user" "$directory"
+
+ local logfile=$(config_get 'logfile')
+ [ "$logfile" ] && checkpath -d -o "$command_user" "${logfile%/*}"
+
+ local unixsocket=$(config_get 'unixsocket')
+ [ "$unixsocket" ] && checkpath -d -o "$command_user" "${unixsocket%/*}"
+
+ return 0
+}
+
+config_get() {
+ local key="$1"
+ local default="${2:-}"
+
+ local value=$(awk "\$1 == \"$key\" { print \$2 }" "$cfgfile")
+ printf '%s\n' "${value:-$default}"
+}
diff --git a/testing/redict/redict.logrotate b/testing/redict/redict.logrotate
new file mode 100644
index 00000000000..64d894b3eef
--- /dev/null
+++ b/testing/redict/redict.logrotate
@@ -0,0 +1,4 @@
+/var/log/redict/*.log {
+ notifempty
+ missingok
+}
diff --git a/testing/redict/redict.post-install b/testing/redict/redict.post-install
new file mode 100644
index 00000000000..1fe8b18cbdb
--- /dev/null
+++ b/testing/redict/redict.post-install
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+# Create directory for the socket if OpenRC is not present (e.g. in container).
+# It's conditioned using post-install script specifically to avoid easily
+# overlookable mistakes in the init script (service working until the
+# first restart).
+if ! [ -e /sbin/openrc ]; then
+ install -d -m 755 -o redict -g redict /run/redict
+fi
+
+exit 0
diff --git a/testing/redict/redict.pre-install b/testing/redict/redict.pre-install
new file mode 100644
index 00000000000..2f47a36e1c8
--- /dev/null
+++ b/testing/redict/redict.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S redict 2>/dev/null
+adduser -S -D -H -h /var/lib/redict -s /sbin/nologin -G redict -g redict redict 2>/dev/null
+
+exit 0
diff --git a/testing/redict/sentinel.conf.patch b/testing/redict/sentinel.conf.patch
new file mode 100644
index 00000000000..4bf5cfbb5eb
--- /dev/null
+++ b/testing/redict/sentinel.conf.patch
@@ -0,0 +1,13 @@
+Upstream: No
+Reason: Hardcode log file path
+--- a/sentinel.conf
++++ b/sentinel.conf
+@@ -33,7 +33,7 @@
+ # Specify the log file name. Also the empty string can be used to force
+ # Sentinel to log on the standard output. Note that if you use standard
+ # output for logging but daemonize, logs will be sent to /dev/null
+-logfile ""
++logfile /var/log/redict/sentinel.log
+
+ # sentinel announce-ip <ip>
+ # sentinel announce-port <port>
diff --git a/testing/refind/APKBUILD b/testing/refind/APKBUILD
index 1d0d8d156d3..166cb478c24 100644
--- a/testing/refind/APKBUILD
+++ b/testing/refind/APKBUILD
@@ -1,15 +1,15 @@
# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
# Maintainer: Eric Molitor <eric@molitor.org>
pkgname=refind
-pkgver=0.13.3.1
-pkgrel=0
+pkgver=0.14.0.2
+pkgrel=2
pkgdesc="rEFInd EFI Boot Manager"
url="https://www.rodsbooks.com/refind"
arch="x86_64"
options="!check" # No test suite.
license="GPL-3.0-only"
depends="bash efibootmgr lsblk"
-makedepends="gnu-efi-dev bash linux-headers"
+makedepends="gnu-efi-dev linux-headers"
subpackages="$pkgname-doc"
source="https://sourceforge.net/projects/refind/files/$pkgver/refind-src-$pkgver.tar.gz
01-missing-always-inline.patch
@@ -42,7 +42,7 @@ package() {
cp -r icons $pkgdir/usr/share/refind
}
sha512sums="
-7966df5dd8dc66cc49a329ed722a567672da8e2fa3f2334d53db65357cea17cba5a4dc5459e358de1079a938da3c63dc626d096ce28b6bf1fa2964be7359dbd1 refind-src-0.13.3.1.tar.gz
+41c120c1afec37c508aa5c0ec09a6563c3047ef84932308c91701795b950431dfad17d25cf664039b490a302d475add98441b75f90ff71cadce41febedc68a9e refind-src-0.14.0.2.tar.gz
cb466feb8b8b1a3c039224866df7e8f4c575cf2c81a1520449e38a6fc5f5b9cfd924944f97780c68addaab7b943dced4ed9c5e668d91e85d6ea49bcd9359e19c 01-missing-always-inline.patch
ccb61e6e5ae0d762932941d7edd5b9a3506db42cfce70ebc57468837799e60fee73b3c568ae603a6ebb677ae702fb5beb5d13b16daf976b954b35047b6f4ecc0 10-refind-disable-fortify.patch
"
diff --git a/testing/reg/APKBUILD b/testing/reg/APKBUILD
index 536a48e3b6d..deb49f726c7 100644
--- a/testing/reg/APKBUILD
+++ b/testing/reg/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Thomas Kienlen <kommander@laposte.net>
pkgname=reg
pkgver=0.16.1
-pkgrel=5
+pkgrel=20
pkgdesc="Docker registry v2 command line client and repo listing generator with security checks"
url="https://github.com/genuinetools/reg"
license="MIT"
@@ -11,11 +11,14 @@ makedepends="go"
source="https://github.com/genuinetools/reg/archive/v$pkgver/reg-$pkgver.tar.gz"
options="chmod-clean"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
build() {
go build \
-trimpath \
-ldflags "
- -s -w
-X github.com/genuinetools/reg/version.GITCOMMIT=v$pkgver
-X github.com/genuinetools/reg/version.VERSION=$pkgver-r$pkgrel
" \
diff --git a/testing/regal/APKBUILD b/testing/regal/APKBUILD
new file mode 100644
index 00000000000..f4782d72b9c
--- /dev/null
+++ b/testing/regal/APKBUILD
@@ -0,0 +1,55 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=regal
+pkgver=0.19.0
+pkgrel=1
+pkgdesc="Linter for Rego files"
+url="https://docs.styra.com/regal"
+# riscv64: TestLanguageServerMultipleFiles test times out
+arch="all !riscv64"
+license="Apache-2.0"
+makedepends="go"
+subpackages="
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/StyraInc/regal/archive/refs/tags/v$pkgver.tar.gz"
+options="net" # download Go modules
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ local _goldflags="
+ -X github.com/styrainc/regal/pkg/version.Version=v$pkgver
+ -X github.com/styrainc/regal/pkg/version.Commit=AlpineLinux
+ -X github.com/styrainc/regal/pkg/version.Timestamp=$(date -u "+%Y-%m-%dT%H:%M:%S%z" ${SOURCE_DATE_EPOCH:+-d @$SOURCE_DATE_EPOCH})
+ -X github.com/styrainc/regal/pkg/version.Hostname=alpinelinux.org
+ "
+
+ go build -v -ldflags "$_goldflags" .
+
+ for shell in bash fish zsh; do
+ ./regal completion $shell > regal.$shell
+ done
+}
+
+check() {
+ go test ./...
+}
+
+package() {
+ install -Dm755 regal -t "$pkgdir"/usr/bin/
+
+ install -Dm644 regal.bash \
+ "$pkgdir"/usr/share/bash-completion/completions/regal
+ install -Dm644 regal.fish \
+ "$pkgdir"/usr/share/fish/vendor_completions.d/regal.fish
+ install -Dm644 regal.zsh \
+ "$pkgdir"/usr/share/zsh/site-functions/_regal
+}
+
+sha512sums="
+702a7f46708e3708f8fbc9529282f19eb4dfb2f14cc5425da273436da4abb1caac071e041b16832b1b1b670a53687cd80280cf8445a1952c394009b43e6b065b regal-0.19.0.tar.gz
+"
diff --git a/testing/rekor/APKBUILD b/testing/rekor/APKBUILD
deleted file mode 100644
index a131b98dd4a..00000000000
--- a/testing/rekor/APKBUILD
+++ /dev/null
@@ -1,64 +0,0 @@
-# Contributor: kpcyrd <git@rxv.cc>
-# Maintainer: kpcyrd <git@rxv.cc>
-pkgname=rekor
-pkgver=0.5.0
-pkgrel=3
-pkgdesc="Signature transparency log"
-url="https://github.com/sigstore/rekor"
-arch="all"
-license="Apache-2.0"
-makedepends="go"
-subpackages="$pkgname-server
- $pkgname-bash-completion
- $pkgname-zsh-completion
- $pkgname-fish-completion
- "
-options="net"
-source="$pkgname-$pkgver.tar.gz::https://github.com/sigstore/rekor/archive/v$pkgver.tar.gz"
-
-export GOFLAGS="$GOFLAGS -trimpath -mod=readonly -modcacherw -ldflags=-X=github.com/sigstore/rekor/pkg/api.GitVersion=v$pkgver"
-
-build() {
- go build -o cmd/rekor-cli/rekor-cli cmd/rekor-cli/main.go
- go build -o cmd/rekor-server/rekor-server cmd/rekor-server/main.go
-
- mkdir -p completions
- cmd/rekor-cli/rekor-cli completion bash > completions/rekor-cli.bash
- cmd/rekor-cli/rekor-cli completion zsh > completions/_rekor-cli
- cmd/rekor-cli/rekor-cli completion fish > completions/rekor-cli.fish
-
- cmd/rekor-server/rekor-server completion bash > completions/rekor-server.bash
- cmd/rekor-server/rekor-server completion zsh > completions/_rekor-server
- cmd/rekor-server/rekor-server completion fish > completions/rekor-server.fish
-}
-
-check() {
- go test -v ./...
-}
-
-package() {
- install -Dm755 "$builddir/cmd/rekor-cli/rekor-cli" "$pkgdir/usr/bin/rekor-cli"
-
- install -Dm644 "$builddir/completions/rekor-cli.bash" \
- "$pkgdir/usr/share/bash-completion/completions/rekor-cli"
- install -Dm644 "$builddir/completions/_rekor-cli" \
- "$pkgdir/usr/share/zsh/site-functions/_rekor-cli"
- install -Dm644 "$builddir/completions/rekor-cli.fish" \
- "$pkgdir/usr/share/fish/completions/rekor-cli.fish"
-
- install -Dm644 "$builddir/completions/rekor-server.bash" \
- "$pkgdir/usr/share/bash-completion/completions/rekor-server"
- install -Dm644 "$builddir/completions/_rekor-server" \
- "$pkgdir/usr/share/zsh/site-functions/_rekor-server"
- install -Dm644 "$builddir/completions/rekor-server.fish" \
- "$pkgdir/usr/share/fish/completions/rekor-server.fish"
-}
-
-server() {
- pkgdesc="Signature Transparency Log (server)"
- install -Dm755 "$builddir/cmd/rekor-server/rekor-server" "$subpkgdir/usr/bin/rekor-server"
-}
-
-sha512sums="
-71850efb03bb3d8e44c17211d76f341739bbc684a2bc88fcafe8312e4f4deb7265c867148b14528cd44b0677be9db15d51e364bc2f5a9fc8b07b9720c8cd6273 rekor-0.5.0.tar.gz
-"
diff --git a/testing/release-plz/APKBUILD b/testing/release-plz/APKBUILD
new file mode 100644
index 00000000000..4e1f3ccc526
--- /dev/null
+++ b/testing/release-plz/APKBUILD
@@ -0,0 +1,55 @@
+# Maintainer: Orhun Parmaksız <orhunparmaksiz@gmail.com>
+pkgname=release-plz
+pkgver=0.3.60
+pkgrel=0
+pkgdesc="Release Rust packages without using the command line"
+url="https://github.com/MarcoIeni/release-plz"
+license="MIT OR Apache-2.0"
+arch="all"
+makedepends="
+ cargo
+ cargo-auditable
+ libgit2-dev
+ openssl-dev
+ "
+subpackages="
+ $pkgname-doc
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
+ "
+source="https://github.com/MarcoIeni/release-plz/archive/release-plz-v$pkgver.tar.gz"
+builddir="$srcdir/$pkgname-$pkgname-v$pkgver"
+
+prepare() {
+ default_prepare
+ cargo fetch --locked
+}
+
+check() {
+ RUST_MIN_STACK=8388608 cargo test --frozen --no-default-features -- \
+ --skip "next_ver" \
+ --skip "input_generates_correct_release_request"
+}
+
+build() {
+ OPENSSL_NO_VENDOR=1 cargo auditable build -p "$pkgname" --release --frozen
+ mkdir -p completions/
+ local compgen="target/release/$pkgname generate-completions"
+ $compgen bash >"completions/$pkgname"
+ $compgen fish >"completions/$pkgname.fish"
+ $compgen zsh >"completions/_$pkgname"
+}
+
+package() {
+ install -Dm 755 "target/release/$pkgname" -t "$pkgdir/usr/bin"
+ install -Dm 644 README.md -t "$pkgdir/usr/share/doc/$pkgname"
+ install -Dm 644 LICENSE-MIT -t "$pkgdir/usr/share/licenses/$pkgname"
+ install -Dm 644 "completions/$pkgname" -t "$pkgdir/usr/share/bash-completion/completions/"
+ install -Dm 644 "completions/$pkgname.fish" -t "$pkgdir/usr/share/fish/vendor_completions.d/"
+ install -Dm 644 "completions/_$pkgname" -t "$pkgdir/usr/share/zsh/site-functions/"
+}
+
+sha512sums="
+3e177bdead19bef4a20d028b60d0ff13305d798a9eb94a835ef92ab17ef6057ac558fc921d6d13b7a3bf4ecc10dfcba4dcd2a0b1fbf2723a95ebd48502bc0d03 release-plz-v0.3.60.tar.gz
+"
diff --git a/testing/remake/APKBUILD b/testing/remake/APKBUILD
index cfae0781583..a5f3b0e9b14 100644
--- a/testing/remake/APKBUILD
+++ b/testing/remake/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Ariadne Conill <ariadne@dereferenced.org>
pkgname=remake
pkgver=1.5
-pkgrel=0
+pkgrel=1
pkgdesc="a utility for managing collections of software build artifacts"
url="https://github.com/rocky/remake"
arch="all"
diff --git a/testing/remind-caldav/APKBUILD b/testing/remind-caldav/APKBUILD
index bbeb400b813..9ca3a478bbb 100644
--- a/testing/remind-caldav/APKBUILD
+++ b/testing/remind-caldav/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Galen Abell <galen@galenabell.com>
pkgname=remind-caldav
pkgver=0.8.0
-pkgrel=0
+pkgrel=3
pkgdesc="caldav client to sync with remind"
url="https://github.com/jspricke/remind-caldav"
arch="noarch"
@@ -10,6 +10,7 @@ license="GPL-3.0-only"
depends="python3 py3-remind py3-caldav py3-dateutil py3-vobject"
makedepends="py3-setuptools"
options="!check" # no tests
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/jspricke/remind-caldav/archive/v$pkgver.tar.gz"
build() {
@@ -17,7 +18,7 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
diff --git a/testing/renderdoc/APKBUILD b/testing/renderdoc/APKBUILD
deleted file mode 100644
index 7c8dda55ac3..00000000000
--- a/testing/renderdoc/APKBUILD
+++ /dev/null
@@ -1,41 +0,0 @@
-# Contributor: Simon Zeni <simon@bl4ckb0ne.ca>
-# Maintainer: Simon Zeni <simon@bl4ckb0ne.ca>
-pkgname=renderdoc
-pkgver=1.17
-pkgrel=0
-pkgdesc="Stand-alone graphics debugging tool for Vulkan and OpenGL"
-url="https://renderdoc.org/"
-# limited by vendored plthook version
-arch="all !s390x !ppc64le !riscv64"
-license="MIT"
-makedepends="cmake libx11-dev libxcb-dev xcb-util-keysyms-dev python3-dev
- qt5-qtbase-dev qt5-qtsvg-dev qtchooser libexecinfo-dev wayland-dev
- bison flex automake autoconf qt5-qtx11extras-dev"
-options="!check net" # no tests
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/baldurk/renderdoc/archive/refs/tags/v$pkgver.tar.gz
- musl-fix.patch
- "
-
-prepare() {
- default_prepare
-}
-
-build() {
- cmake -B build -H. \
- -DCMAKE_BUILD_TYPE=MinSizeRel \
- -DCMAKE_INSTALL_PREFIX="/usr" \
- -DVULKAN_LAYER_FOLDER="/usr/share/vulkan/implicit_layer.d" \
- -DENABLE_WAYLAND=ON \
- -DBUILD_VERSION_STABLE=ON
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-
-sha512sums="
-0f608f9bd5dfca58fd7d39529dcb49ef4df3af508cc1a90b9d327809cf47908731d0175f6b7510db6380f7e4041806d4d727005ff53ef4860f88db938ebc4c2d renderdoc-1.17.tar.gz
-99828b704eff63d5a71143e867bbceca11606bf7f0677a30115b1432fcde0c121f1090824ac2f727e143e474b8c5ca472ba05e377e658651d723f90fd9e99e0a musl-fix.patch
-"
diff --git a/testing/renderdoc/musl-fix.patch b/testing/renderdoc/musl-fix.patch
deleted file mode 100644
index 09377229644..00000000000
--- a/testing/renderdoc/musl-fix.patch
+++ /dev/null
@@ -1,73 +0,0 @@
-diff --git a/renderdoc/3rdparty/plthook/plthook_elf.c b/renderdoc/3rdparty/plthook/plthook_elf.c
-index 612f689d6..907e7f63e 100644
---- a/renderdoc/3rdparty/plthook/plthook_elf.c
-+++ b/renderdoc/3rdparty/plthook/plthook_elf.c
-@@ -233,7 +233,11 @@ int plthook_open_by_address(plthook_t **plthook_out, void *address)
- struct link_map *lmap = NULL;
-
- *plthook_out = NULL;
-+#ifdef __GLIBC__
- if (dladdr1(address, &info, (void**)&lmap, RTLD_DL_LINKMAP) == 0) {
-+#else
-+ if (dladdr(address, &info) == 0) {
-+#endif
- set_errmsg("dladdr error");
- return PLTHOOK_FILE_NOT_FOUND;
- }
-@@ -243,7 +247,7 @@ int plthook_open_by_address(plthook_t **plthook_out, void *address)
-
- static int plthook_open_executable(plthook_t **plthook_out)
- {
--#if defined __linux__
-+#if defined __linux__ && defined __GLIBC__
- return plthook_open_real(plthook_out, _r_debug.r_map);
- #elif defined __sun
- const char *auxv_file = "/proc/self/auxv";
-diff --git a/renderdoc/CMakeLists.txt b/renderdoc/CMakeLists.txt
-index 9174afb2a..9bb6e1d1d 100644
---- a/renderdoc/CMakeLists.txt
-+++ b/renderdoc/CMakeLists.txt
-@@ -48,12 +48,16 @@ elseif(ENABLE_GGP)
- elseif(UNIX)
- find_package(PkgConfig REQUIRED)
- find_package(Threads REQUIRED)
-+ find_package(Backtrace REQUIRED)
-
- list(APPEND RDOC_LIBRARIES
- PRIVATE -lm
- PRIVATE -ldl
- PRIVATE -lrt)
-
-+ list(APPEND RDOC_LIBRARIES
-+ PRIVATE ${Backtrace_LIBRARIES})
-+
- if(ENABLE_XLIB)
- find_package(X11 REQUIRED)
-
-diff --git a/renderdoc/os/os_specific.h b/renderdoc/os/os_specific.h
-index cc9a6b09e..844597450 100644
---- a/renderdoc/os/os_specific.h
-+++ b/renderdoc/os/os_specific.h
-@@ -31,6 +31,7 @@
-
- #pragma once
-
-+#include <time.h>
- #include <stdarg.h>
- #include <stddef.h>
- #include <stdint.h>
-diff --git a/renderdoc/os/posix/linux/linux_hook.cpp b/renderdoc/os/posix/linux/linux_hook.cpp
-index 4989e2865..0acb3ac0b 100644
---- a/renderdoc/os/posix/linux/linux_hook.cpp
-+++ b/renderdoc/os/posix/linux/linux_hook.cpp
-@@ -36,6 +36,10 @@
- #include "plthook/plthook.h"
- #include "strings/string_utils.h"
-
-+#ifndef __GLIBC__
-+#define RTLD_DEEPBIND 0
-+#endif
-+
- Threading::CriticalSection libLock;
-
- RDOC_EXTERN_CONFIG(bool, Linux_Debug_PtraceLogging);
diff --git a/testing/repgrep/APKBUILD b/testing/repgrep/APKBUILD
new file mode 100644
index 00000000000..1b7e2908d17
--- /dev/null
+++ b/testing/repgrep/APKBUILD
@@ -0,0 +1,58 @@
+# Contributor: Orhun Parmaksız <orhunparmaksiz@gmail.com>
+# Maintainer: Orhun Parmaksız <orhunparmaksiz@gmail.com>
+pkgname=repgrep
+_pkgname=rgr
+pkgver=0.15.0
+pkgrel=0
+pkgdesc="Interactive command line replacer for ripgrep"
+url="https://github.com/acheronfail/repgrep"
+arch="all"
+license="MIT OR Apache-2.0 OR Unlicense"
+depends="ripgrep"
+makedepends="
+ cargo
+ cargo-auditable
+ asciidoctor
+ "
+subpackages="
+ $pkgname-doc
+ $pkgname-bash-completion
+ $pkgname-zsh-completion
+ $pkgname-fish-completion
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/acheronfail/repgrep/archive/$pkgver.tar.gz"
+options="net"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm 755 "target/release/$_pkgname" -t "$pkgdir/usr/bin"
+ install -Dm 644 README.md -t "$pkgdir/usr/share/doc/$pkgname"
+ install -Dm 644 LICENSE-MIT -t "$pkgdir/usr/share/licenses/$pkgname"
+ out_dir=$(find target -name repgrep-stamp -print0 | xargs -0 ls -t | head -n1 | xargs dirname)
+ install -Dm 644 "$out_dir/$_pkgname.1" -t "$pkgdir/usr/share/man/man1"
+
+ echo 'complete -F _rg rgr' | install -Dm 644 /dev/stdin \
+ "$pkgdir/usr/share/bash-completion/completions/$_pkgname"
+ echo 'compdef $_comps[rg] rgr' | install -Dm 644 /dev/stdin \
+ "$pkgdir/usr/share/zsh/site-functions/_$_pkgname"
+ rg --generate complete-fish | sed -e 's/-c rg/-c rgr/' \
+ | install -Dm 644 /dev/stdin \
+ "$pkgdir/usr/share/fish/vendor_completions.d/$_pkgname.fish"
+}
+
+sha512sums="
+dbd56387ee9c1269c000c4992449b71b29942b987ce7f032ee8b556bf2e7f3f81da7a081aa610075c366f5b8447bab39312ebf1375100348c9532ddb75a6b90a repgrep-0.15.0.tar.gz
+"
diff --git a/testing/repo/APKBUILD b/testing/repo/APKBUILD
index b563d083d2f..d824b313fc4 100644
--- a/testing/repo/APKBUILD
+++ b/testing/repo/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Antoine Fontaine <antoine.fontaine@epfl.ch>
# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=repo
-pkgver=2.25
+pkgver=2.42
pkgrel=0
pkgdesc="repository management tool built on top of git"
url="https://gerrit.googlesource.com/git-repo"
@@ -10,22 +10,21 @@ license="Apache-2.0"
options="!check" # no tests upstream
depends="python3 git"
makedepends="py3-setuptools"
-source="$pkgname-$pkgver::https://gerrit.googlesource.com/git-repo/+/refs/tags/v2.24.1/repo?format=TEXT"
-builddir="$srcdir"
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/GerritCodeReview/git-repo/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/git-repo-$pkgver"
prepare() {
default_prepare
- # workaround for nondeterministic Gitiles tarballs
- base64 -d repo-$pkgver > repo
-
sed -i 's|^#!/usr/bin/env python|#!/usr/bin/python3|' repo
}
package() {
install -Dm755 repo -t "$pkgdir"/usr/bin
+ install -Dm644 man/* -t "$pkgdir"/usr/share/man/man1
}
sha512sums="
-d15333189bddc4f9b18baaa27c9b3df112cfe67df38574770674b70a554595305a4f96e3feec6596cd369cf47528296c533a92301a366e8ee4aba8a4b4ece741 repo-2.25
+12a766c42b94af0daed4db224476ab32b1b9ded17c9e961bcf15e45d5cf74b009769527cc433fde6a8f841c881eb8fea0e84b72c10322f3fba216f1eedf2813b repo-2.42.tar.gz
"
diff --git a/testing/repowerd/0001-dbus-Remove-at_console-filtering.patch b/testing/repowerd/0001-dbus-Remove-at_console-filtering.patch
new file mode 100644
index 00000000000..d082f40e209
--- /dev/null
+++ b/testing/repowerd/0001-dbus-Remove-at_console-filtering.patch
@@ -0,0 +1,30 @@
+From 15ee1c2e59dc8d563b8db8035836b68a5a82f6e9 Mon Sep 17 00:00:00 2001
+From: Luca Weiss <luca@z3ntu.xyz>
+Date: Tue, 17 Oct 2023 22:22:27 +0200
+Subject: [PATCH] dbus: Remove at_console filtering
+
+This is long deprecated, remove it since it prohibits communication with
+repowerd.
+---
+ data/dbus-configs/com.canonical.Unity.Screen.conf | 5 -----
+ 1 file changed, 5 deletions(-)
+
+diff --git a/data/dbus-configs/com.canonical.Unity.Screen.conf b/data/dbus-configs/com.canonical.Unity.Screen.conf
+index 55d2c7b..7bb4cb8 100644
+--- a/data/dbus-configs/com.canonical.Unity.Screen.conf
++++ b/data/dbus-configs/com.canonical.Unity.Screen.conf
+@@ -9,11 +9,6 @@
+ </policy>
+
+ <policy context="default">
+- <allow send_destination="com.canonical.Unity.Screen"
+- send_interface="org.freedesktop.DBus.Introspectable"/>
+- </policy>
+-
+- <policy at_console="true">
+ <allow send_destination="com.canonical.Unity.Screen"/>
+ </policy>
+ </busconfig>
+--
+2.42.0
+
diff --git a/testing/repowerd/APKBUILD b/testing/repowerd/APKBUILD
new file mode 100644
index 00000000000..614d2a531db
--- /dev/null
+++ b/testing/repowerd/APKBUILD
@@ -0,0 +1,55 @@
+# Maintainer: Luca Weiss <luca@z3ntu.xyz>
+# Contributor: Brandon Boese <brandonboese@protonmail.com>
+pkgname=repowerd
+pkgver=2023.07
+pkgrel=0
+pkgdesc="Power daemon to monitor and control system power state"
+url="https://gitlab.com/ubports/development/core/repowerd"
+arch="all !s390x" # blocked by libgbinder
+license="LGPL-3.0-only"
+makedepends="
+ cmake
+ cmake-extras
+ glib-dev
+ gmock
+ gtest-dev
+ libgbinder-dev
+ lomiri-deviceinfo-dev
+ qt5-qtbase-dev
+ samurai
+ "
+checkdepends="dbus"
+subpackages="$pkgname-openrc"
+source="https://gitlab.com/ubports/development/core/repowerd/-/archive/$pkgver/repowerd-$pkgver.tar.gz
+ repowerd.initd
+ 0001-dbus-Remove-at_console-filtering.patch
+ "
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=True \
+ -DCMAKE_BUILD_TYPE=None \
+ -DREPOWERD_ENABLE_HYBRIS=False
+ cmake --build build
+}
+
+check() {
+ # Test ARealFilesystem.performs_ioctl in repowerd-adapter-tests fails
+ # https://gitlab.com/ubports/development/core/repowerd/-/issues/41
+ ctest --test-dir build --output-on-failure -E repowerd-adapter-tests
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+
+ install -Dm755 "$srcdir"/$pkgname.initd \
+ "$pkgdir"/etc/init.d/$pkgname
+}
+
+sha512sums="
+2cbf879956e049c6c197516c23e43bfeafee13f0e354dbf0032f7a9b97bf849255d5dd204f4178759837fd06601fc9ebbdf3a409af3d79da1fe8b3a9c77bb059 repowerd-2023.07.tar.gz
+d8c4dd351a7bf2bcc66b0eb8b0d17d602661f7defb857be5a28f694e4977b634b7d101f738058ce0ccaa313c4e316f7222c753610500ddbd68f8e42de7c57f29 repowerd.initd
+f6212991bd4ea6704a74f71615fa5d0b9b738144c2448f03d90a0d2c6dd320e17c3c070add7f7877ca3f6f4c2526d44dd5277f8cefbd05ad08d99204c61d6766 0001-dbus-Remove-at_console-filtering.patch
+"
diff --git a/testing/repowerd/repowerd.initd b/testing/repowerd/repowerd.initd
new file mode 100644
index 00000000000..dc05a497326
--- /dev/null
+++ b/testing/repowerd/repowerd.initd
@@ -0,0 +1,12 @@
+#!/sbin/openrc-run
+
+name="Repowerd"
+description="Power daemon to monitor and control system power state"
+
+command=/usr/sbin/repowerd
+command_background=true
+pidfile="/run/${RC_SVCNAME}.pid"
+
+depends() {
+ need udev
+}
diff --git a/testing/reproc/APKBUILD b/testing/reproc/APKBUILD
deleted file mode 100644
index 65911345424..00000000000
--- a/testing/reproc/APKBUILD
+++ /dev/null
@@ -1,40 +0,0 @@
-# Contributor: Jakub Panek <me@panekj.dev>
-# Maintainer: Jakub Panek <me@panekj.dev>
-pkgname=reproc
-pkgver=14.2.4
-pkgrel=0
-pkgdesc="Cross-platform (C99/C++11) process library"
-url="https://github.com/DaanDeMeyer/reproc"
-arch="all"
-license="MIT"
-makedepends="cmake samurai"
-subpackages="$pkgname-dev"
-source="https://github.com/DaanDeMeyer/reproc/archive/v$pkgver/reproc-$pkgver.tar.gz"
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build -G Ninja \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- -DCMAKE_BUILD_TYPE=MinSizeRel \
- -DREPROC++=ON \
- -DREPROC_TEST=ON \
- $CMAKE_CROSSOPTS .
- cmake --build build
-}
-
-check() {
- cd build
- CTEST_OUTPUT_ON_FAILURE=TRUE ctest
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-
-sha512sums="
-c592521960f1950d626261738091d25efdf764ee1a0c72a58c28c66eaebf6073b2c978f1dc2c8dbe89b0be7ec1629a3a45cb1fafa0ebe21b5df8d4d27c992675 reproc-14.2.4.tar.gz
-"
diff --git a/testing/reprotest/APKBUILD b/testing/reprotest/APKBUILD
index 17c6fe1a030..af1ca8eaeea 100644
--- a/testing/reprotest/APKBUILD
+++ b/testing/reprotest/APKBUILD
@@ -1,32 +1,42 @@
# Contributor: Antoine Fontaine <antoine.fontaine@epfl.ch>
-# Maintainer:
+# Contributor: fossdd <fossdd@pwned.life>
+# Maintainer: fossdd <fossdd@pwned.life>
pkgname=reprotest
_pyname=reprotest
-pkgver=0.7.20
-pkgrel=1
+pkgver=0.7.27
+pkgrel=0
pkgdesc="Build packages and check them for reproducibility"
url="https://salsa.debian.org/reproducible-builds/reprotest"
arch="noarch !armv7 !x86 !armhf" # diffoscope
license="GPL-3.0-or-later"
-depends="python3 diffoscope py3-rstr py3-distro"
-makedepends="py3-setuptools py3-wheel"
-checkdepends="dpkg py3-tox"
+depends="diffoscope py3-rstr py3-distro py3-setuptools"
+makedepends="
+ py3-gpep517
+ py3-wheel
+ "
+checkdepends="dpkg py3-pytest"
_pypiprefix="${_pyname%"${_pyname#?}"}"
+subpackages="$pkgname-pyc"
source="https://salsa.debian.org/reproducible-builds/reprotest/-/archive/$pkgver/reprotest-$pkgver.tar.gz"
options="!check" # missing disorderfs
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- tox -e py310 --sitepackages
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
-8585f30ff9d712f7969efb40cf351ec574a9addf694ee50ecef3cf6fab8608985eba4a6a581b9bf08d0a9ace0d8ac77428b404f6788e22e4db3de9d9360a3493 reprotest-0.7.20.tar.gz
+5dfbaaffeaf40c56355a61509590c134921e6697e05c25b1436239f42a522ea17c34076600d3ff69b5eae4b6b9578d4e2b79bb5e88e65d2f1e4641adbb842e79 reprotest-0.7.27.tar.gz
"
diff --git a/testing/reredirect/APKBUILD b/testing/reredirect/APKBUILD
new file mode 100644
index 00000000000..89b6223e8aa
--- /dev/null
+++ b/testing/reredirect/APKBUILD
@@ -0,0 +1,28 @@
+# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=reredirect
+pkgver=0.3
+pkgrel=0
+pkgdesc="Tool to dynamicly redirect outputs of a running process"
+url="https://github.com/jerome-pouiller/reredirect/"
+arch="all !aarch64 !s390x !ppc64le !riscv64" # "unsupported"
+license="MIT"
+makedepends="linux-headers"
+subpackages="$pkgname-doc"
+source="https://github.com/jerome-pouiller/reredirect/archive/refs/tags/v$pkgver/reredirect-$pkgver.tar.gz
+ $pkgname-ptrace-request.patch::https://github.com/jerome-pouiller/reredirect/commit/db3055d1ebc43852d1b5847d12e83f359d3f499f.patch
+ "
+options="!check" # requires root and ptracing another process
+
+build() {
+ make
+}
+
+package() {
+ make PREFIX=/usr DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+5164d0f347693f13047f76e923ceb7f7f73f746514baff3ddcac2546f6f3f981f01d3f9326b439b98ce503036662d3157c57c628a3b4a576db94a5a22333b531 reredirect-0.3.tar.gz
+8b324096c597c0e6dfc69991ea526e3fbfca7078ec3266ea8dca1148365457b4e9f49241912f8a61ee92f7a6e0e8ea21cbfecffc32a14fb206aa4221b216f9f5 reredirect-ptrace-request.patch
+"
diff --git a/testing/responder/APKBUILD b/testing/responder/APKBUILD
new file mode 100644
index 00000000000..8756942c617
--- /dev/null
+++ b/testing/responder/APKBUILD
@@ -0,0 +1,32 @@
+# Contributor: Maxim Karasev <begs@disroot.org>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=responder
+pkgver=3.1.4.0
+pkgrel=0
+pkgdesc="IPv6/IPv4 LLMNR/NBT-NS/mDNS Poisoner and NTLMv1/2 relay"
+url="https://github.com/lgandx/Responder"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="python3 py3-netifaces"
+source="https://github.com/lgandx/Responder/archive/refs/tags/v$pkgver/Responder-$pkgver.tar.gz
+ fhs.patch"
+builddir="$srcdir/Responder-$pkgver"
+options="!check" # no tests
+
+package() {
+ mkdir -p "$pkgdir"/usr/share/responder \
+ "$pkgdir"/var/log/responder \
+ "$pkgdir"/var/lib/responder \
+ "$pkgdir"/etc/responder \
+ "$pkgdir"/usr/bin
+
+ find -type d -mindepth 1 | xargs cp -rt "$pkgdir"/usr/share/responder
+ cp *.py "$pkgdir"/usr/share/responder
+ install -Dm644 Responder.conf "$pkgdir"/etc/responder/responder.conf
+ ln -s /usr/share/responder/Responder.py "$pkgdir"/usr/bin/responder
+}
+
+sha512sums="
+1a6b5fb3409015e1d23f5f8afd2b4963ab4cedb4b2697f7976df3570c021b8a22bc861a364c6df5467ccf785cebefb9039e95c7ee7ec0392753e8384fe6ef711 Responder-3.1.4.0.tar.gz
+540c4873a72dd554dae2b75949c86e6c354a6ace69b84e725c60ddddf6ad4448d380f8e3fbf64945e306fb49dad80d6772b5f40a0db48323ae4fc654056a9b58 fhs.patch
+"
diff --git a/testing/responder/fhs.patch b/testing/responder/fhs.patch
new file mode 100644
index 00000000000..d976b509063
--- /dev/null
+++ b/testing/responder/fhs.patch
@@ -0,0 +1,69 @@
+From 95651f8bdabe6dd3df5c06b65a4b3efa4166f670 Mon Sep 17 00:00:00 2001
+From: Maxim Karasev <begs@disroot.org>
+Date: Fri, 17 Jun 2022 00:37:48 +0300
+Subject: [PATCH] Use FHS directories
+
+Responder doesn't fit in Unix environment nicely by default.
+---
+ Responder.conf | 10 +++++-----
+ settings.py | 6 +++---
+ 2 files changed, 8 insertions(+), 8 deletions(-)
+
+diff --git a/Responder.conf b/Responder.conf
+index 5c1b94e..5d6dbcb 100755
+--- a/Responder.conf
++++ b/Responder.conf
+@@ -22,19 +22,19 @@ Challenge = Random
+
+ ; SQLite Database file
+ ; Delete this file to re-capture previously captured hashes
+-Database = Responder.db
++Database = responder.db
+
+ ; Default log file
+-SessionLog = Responder-Session.log
++SessionLog = responder-session.log
+
+ ; Poisoners log
+-PoisonersLog = Poisoners-Session.log
++PoisonersLog = poisoners-session.log
+
+ ; Analyze mode log
+-AnalyzeLog = Analyzer-Session.log
++AnalyzeLog = analyzer-session.log
+
+ ; Dump Responder Config log:
+-ResponderConfigDump = Config-Responder.log
++ResponderConfigDump = config-responder.log
+
+ ; Specific IP Addresses to respond to (default = All)
+ ; Example: RespondTo = 10.20.1.100-150, 10.20.3.10
+diff --git a/settings.py b/settings.py
+index 095f5b5..fe17b00 100755
+--- a/settings.py
++++ b/settings.py
+@@ -82,7 +82,7 @@ class Settings:
+ self.PY2OR3 = "PY2"
+ # Config parsing
+ config = ConfigParser.ConfigParser()
+- config.read(os.path.join(self.ResponderPATH, 'Responder.conf'))
++ config.read(os.path.join('/etc/responder', 'responder.conf'))
+
+ # Servers
+ self.HTTP_On_Off = self.toBool(config.get('Responder Core', 'HTTP'))
+@@ -101,10 +101,10 @@ class Settings:
+ self.Krb_On_Off = self.toBool(config.get('Responder Core', 'Kerberos'))
+
+ # Db File
+- self.DatabaseFile = os.path.join(self.ResponderPATH, config.get('Responder Core', 'Database'))
++ self.DatabaseFile = os.path.join('/var/lib/responder', config.get('Responder Core', 'Database'))
+
+ # Log Files
+- self.LogDir = os.path.join(self.ResponderPATH, 'logs')
++ self.LogDir = '/var/log/responder'
+
+ if not os.path.exists(self.LogDir):
+ os.mkdir(self.LogDir)
+--
+2.36.1
+
diff --git a/testing/restart-services/APKBUILD b/testing/restart-services/APKBUILD
index d22d89468f6..5da6486f573 100644
--- a/testing/restart-services/APKBUILD
+++ b/testing/restart-services/APKBUILD
@@ -32,7 +32,6 @@ package() {
# SV_ALWAYS+=( myservice )
EOF
-
}
sha512sums="
diff --git a/testing/restic.mk/APKBUILD b/testing/restic.mk/APKBUILD
index 5d99c5a4941..6a09f73f075 100644
--- a/testing/restic.mk/APKBUILD
+++ b/testing/restic.mk/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Thomas Kienlen <kommander@laposte.net>
# Maintainer: Thomas Kienlen <kommander@laposte.net>
pkgname=restic.mk
-pkgver=0.1.0
+pkgver=0.4.0
pkgrel=0
pkgdesc="Simplest restic backup automation tool"
url="https://github.com/kmmndr/restic.mk"
@@ -21,5 +21,5 @@ package() {
}
sha512sums="
-693f97ca54e02b25611cfed6d6be57a9b47560b87e821495e25f1faeb0b82989dd0b09a1cf94a6867dc8628f7ef0561828953fd9c5176ccc7180a3bd25a79df3 restic.mk-0.1.0.tar.gz
+a8d25f412415da418822129cfe97eb1f35837ae63f3c96b4d9833d5dfbe3e9ada731fe944fe279f6f86c86fba2cc0b29cab1e4d508f57105e75dd565ee2470ed restic.mk-0.4.0.tar.gz
"
diff --git a/testing/restinio/APKBUILD b/testing/restinio/APKBUILD
new file mode 100644
index 00000000000..33533e4999d
--- /dev/null
+++ b/testing/restinio/APKBUILD
@@ -0,0 +1,50 @@
+# Contributor: Anjandev Momi <anjan@momi.ca>
+# Maintainer: Anjandev Momi <anjan@momi.ca>
+pkgname=restinio
+pkgver=0.6.17
+pkgrel=5
+pkgdesc="Header-only C++14 library that gives you an embedded HTTP/Websocket server"
+url="https://stiffstream.com/en/products/restinio.html"
+arch="noarch"
+license=" BSD-3-Clause"
+makedepends="cmake openssl-dev zlib-dev pcre2-dev boost-dev fmt-dev samurai"
+subpackages="$pkgname-dev"
+source="https://github.com/Stiffstream/restinio/releases/download/v.$pkgver/restinio-$pkgver.tar.bz2
+ lfs64.patch
+ "
+options="!check" # cant get checks to work
+
+build() {
+ if [ "$CBUILD" != "$CHOST" ]; then
+ CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ cmake -B build -G Ninja -S dev \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=True \
+ -DCMAKE_BUILD_TYPE=None \
+ -DRESTINIO_FIND_DEPS=ON \
+ -DRESTINIO_TEST=OFF \
+ -DRESTINIO_SAMPLE=OFF \
+ -DRESTINIO_INSTALL_SAMPLES=OFF \
+ -DRESTINIO_BENCH=OFF \
+ -DRESTINIO_INSTALL_BENCHES=OFF \
+ -DRESTINIO_ALLOW_SOBJECTIZER=OFF \
+ -DRESTINIO_USE_EXTERNAL_HTTP_PARSER=ON \
+ $CMAKE_CROSSOPTS
+ cmake --build build
+}
+
+check() {
+ cd build
+ CTEST_OUTPUT_ON_FAILURE=TRUE ctest
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+be6f2ccfbeb9840391adfd2e8416b5a0511ac1e47b79038e9296ec5ec9a75c708ece23d9204f5dc0e753f62b950b8410262af2504812f19bbbefcc5cc057b5a1 restinio-0.6.17.tar.bz2
+a26b26275c76d720d2502b20d431e7990b42c7f3cae94b4a17521718ee9c9abf0b625e19286d12c53f61a058fd83129428e8a90a0f6c8ab8ad5a142b7ae4fb47 lfs64.patch
+"
diff --git a/testing/restinio/lfs64.patch b/testing/restinio/lfs64.patch
new file mode 100644
index 00000000000..e0689b8cd9e
--- /dev/null
+++ b/testing/restinio/lfs64.patch
@@ -0,0 +1,20 @@
+diff --git a/dev/restinio/sendfile_defs_posix.hpp b/dev/restinio/sendfile_defs_posix.hpp
+index e531a17..f954d29 100644
+--- a/dev/restinio/sendfile_defs_posix.hpp
++++ b/dev/restinio/sendfile_defs_posix.hpp
+@@ -75,15 +75,9 @@ get_file_meta( file_descriptor_t fd )
+ throw exception_t{ "invalid file descriptor" };
+ }
+
+-#if defined( RESTINIO_FREEBSD_TARGET ) || defined( RESTINIO_MACOS_TARGET )
+ struct stat file_stat;
+
+ const auto fstat_rc = ::fstat( fd, &file_stat );
+-#else
+- struct stat64 file_stat;
+-
+- const auto fstat_rc = fstat64( fd, &file_stat );
+-#endif
+
+ if( 0 != fstat_rc )
+ {
diff --git a/testing/retroforth/APKBUILD b/testing/retroforth/APKBUILD
deleted file mode 100644
index 4b0bc160844..00000000000
--- a/testing/retroforth/APKBUILD
+++ /dev/null
@@ -1,27 +0,0 @@
-# Contributor: Siva Mahadevan <me@svmhdvn.name>
-# Maintainer: Siva Mahadevan <me@svmhdvn.name>
-pkgname=retroforth
-pkgver=2022.1
-pkgrel=0
-pkgdesc="clean, elegant, and pragmatic dialect of Forth"
-url="https://retroforth.org"
-arch="all"
-license="ISC"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://git.sr.ht/~crc_/retroforth/archive/$pkgver.tar.gz"
-
-build() {
- make
-}
-
-check() {
- make test
-}
-
-package() {
- make DESTDIR="$pkgdir" PREFIX=/usr install
-}
-
-sha512sums="
-0d96f1279672bffa678bf8b3cb2d177f8757c2946a7b4c1cf04195bef6e19d89c4fd37ec0c456f2953a34f219f8b7dbc32ae92244b43ce8a601df8c379c2574b retroforth-2022.1.tar.gz
-"
diff --git a/testing/revprog/APKBUILD b/testing/revprog/APKBUILD
deleted file mode 100644
index 47bc90c92b0..00000000000
--- a/testing/revprog/APKBUILD
+++ /dev/null
@@ -1,24 +0,0 @@
-# Contributor: TBK <alpine@jjtc.eu>
-# Maintainer: TBK <alpine@jjtc.eu>
-pkgname=rvlprog
-pkgver=0.91
-pkgrel=0
-pkgdesc="CLI tool for REVELPROG-IS programmer"
-url="https://gitlab.com/spectrum70/rvlprog"
-arch="all"
-license="GPL-3.0-or-later"
-options="!check" # no test suite
-makedepends="libusb-dev"
-source="https://gitlab.com/spectrum70/rvlprog/-/archive/$pkgver/rvlprog-$pkgver.tar.gz"
-
-build() {
- export LIBS="-lusb-1.0"
- ./configure --prefix=/usr
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="cef54e0980345a4a814cbee0dd6a49b10fcf6d9a5660344abba3d2bf79188f5c20298a2befe3fe8ff99df55f01da33a233ca4d17898ce618dd0e456fa51c87db rvlprog-0.91.tar.gz"
diff --git a/testing/rezolus/APKBUILD b/testing/rezolus/APKBUILD
index ebfce96b9a3..7ce19b10be9 100644
--- a/testing/rezolus/APKBUILD
+++ b/testing/rezolus/APKBUILD
@@ -2,35 +2,42 @@
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=rezolus
pkgver=2.11.1
-pkgrel=0
+pkgrel=3
pkgdesc="Systems performance telemetry"
url="https://github.com/twitter/rezolus/"
arch="x86_64 x86 armv7 armhf aarch64 ppc64le" # limited by rust/cargo
license="Apache-2.0"
-makedepends="cargo openssl-dev"
+makedepends="cargo openssl-dev cargo-auditable"
install="$pkgname.pre-install"
subpackages="$pkgname-openrc $pkgname-doc"
source="https://github.com/twitter/rezolus/archive/v$pkgver/rezolus-$pkgver.tar.gz
minimize-size.patch
remove-ntp-sampler.patch
remove-http-sampler.patch
+ openssl.patch
config.toml
$pkgname.initd
$pkgname.confd
$pkgname.logrotate
"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
build() {
- cargo build --release --locked
+ cargo auditable build --release --frozen
}
check() {
- cargo test --release --locked
+ cargo test --frozen
}
package() {
- cargo install --locked --path . --root="$pkgdir/usr"
- rm "$pkgdir"/usr/.crates*
+ install -Dm755 target/release/rezolus -t "$pkgdir"/usr/bin/
install -Dm 644 "$srcdir"/config.toml "$pkgdir"/etc/rezolus.toml
@@ -41,11 +48,14 @@ package() {
install -Dm 644 configs/example.toml "$pkgdir"/usr/share/doc/$pkgname/full-config.toml
}
-sha512sums="8ffe293cb197e0b2a6f5ba4bf7bdf7f77528f30785e64e15774241279309e881a6898b8f1bae7b6bfdc2f7dcd3e54793b249673aa0e25bcdbdb50f100fa3864d rezolus-2.11.1.tar.gz
+sha512sums="
+8ffe293cb197e0b2a6f5ba4bf7bdf7f77528f30785e64e15774241279309e881a6898b8f1bae7b6bfdc2f7dcd3e54793b249673aa0e25bcdbdb50f100fa3864d rezolus-2.11.1.tar.gz
952e03a6b41fc57727099c9a913632f967f7355d89cf0553c36ea9f959bcc934bcc1daba6d8dd22e9a40b95e6a1ca62f41f61f724b3399b9b78022565ea015e6 minimize-size.patch
0dca295df00aff5b1f951b204dbddfe29f6ce353833076bd9ea676ad1f5650a24d6d6a46fb69e366c2ba899bb3c53163a99aa49c356aaab5f6c57a5f0f28143f remove-ntp-sampler.patch
bfc805dd2cf268549d8d9f3c98dd6a66152f6088eabcdcee5afabaa0dc03743b1dd936f97f6d6b36f8da081cd8915191156ca0b20ba2d92c3b6742cfd02cdfb1 remove-http-sampler.patch
+27cfa9a21fffaf81d75619a10fb30c3bdef72b7b1041932f7919f15153fd2a04a2d133f37a3815f28391c1f5440710e6b7022cc41f896ffa66b441dc42383186 openssl.patch
35b883ab2c01a00019064cb7cb9ca28ddf469175f46e8cba15b62eef5519979fd63d2b180a50fad896de07ebeb6172f76c7d61d4e8ae2ce72c06b34d7462ac38 config.toml
17ba0039a84287a2183f398756cac0cb43f0de2ac95911fa41fcd5bb7b3f411aa8a174632ffa4a519fabd4edd25d69fa2ffa52711fcf0c32c0e1e55eb4828e7b rezolus.initd
cbc3600b6a01142acb0f4f47a07ee1ad94222f3bd4106e2e29d7cb5edf23bfc54b40fd5d0ab616d0a22a9bca7a10dd1832f23589daeee195a628d25f0a0d21d3 rezolus.confd
-248f447686af4b69ebfc1558029babc2aab83cdf50b0cc22c1306549c37f7448a5ed4ebd0cc216f17701b93ea37655e856360e428c7c84eec5d2a64ca3fe178e rezolus.logrotate"
+248f447686af4b69ebfc1558029babc2aab83cdf50b0cc22c1306549c37f7448a5ed4ebd0cc216f17701b93ea37655e856360e428c7c84eec5d2a64ca3fe178e rezolus.logrotate
+"
diff --git a/testing/rezolus/openssl.patch b/testing/rezolus/openssl.patch
new file mode 100644
index 00000000000..35a6cfd27fc
--- /dev/null
+++ b/testing/rezolus/openssl.patch
@@ -0,0 +1,60 @@
+resolves a build failure that can't find openssl headers since the prior
+openssl crate version are too old.
+diff --git a/Cargo.lock b/Cargo.lock
+index 36f38fb..678d575 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -1,5 +1,7 @@
+ # This file is automatically @generated by Cargo.
+ # It is not intended for manual editing.
++version = 3
++
+ [[package]]
+ name = "addr2line"
+ version = "0.14.1"
+@@ -1067,18 +1069,30 @@ checksum = "13bd41f508810a131401606d54ac32a467c97172d74ba7662562ebba5ad07fa0"
+
+ [[package]]
+ name = "openssl"
+-version = "0.10.32"
++version = "0.10.42"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "038d43985d1ddca7a9900630d8cd031b56e4794eecc2e9ea39dd17aa04399a70"
++checksum = "12fc0523e3bd51a692c8850d075d74dc062ccf251c0110668cbd921917118a13"
+ dependencies = [
+ "bitflags",
+ "cfg-if 1.0.0",
+ "foreign-types",
+- "lazy_static",
+ "libc",
++ "once_cell",
++ "openssl-macros",
+ "openssl-sys",
+ ]
+
++[[package]]
++name = "openssl-macros"
++version = "0.1.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "b501e44f11665960c7e7fcf062c7d96a14ade4aa98116c004b2e37b5be7d736c"
++dependencies = [
++ "proc-macro2",
++ "quote",
++ "syn",
++]
++
+ [[package]]
+ name = "openssl-probe"
+ version = "0.1.2"
+@@ -1087,9 +1101,9 @@ checksum = "77af24da69f9d9341038eba93a073b1fdaaa1b788221b00a69bce9e762cb32de"
+
+ [[package]]
+ name = "openssl-sys"
+-version = "0.9.60"
++version = "0.9.77"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "921fc71883267538946025deffb622905ecad223c28efbfdef9bb59a0175f3e6"
++checksum = "b03b84c3b2d099b81f0953422b4d4ad58761589d0229b5506356afca05a3670a"
+ dependencies = [
+ "autocfg",
+ "cc",
diff --git a/testing/rgxg/APKBUILD b/testing/rgxg/APKBUILD
index 0b97ed0351e..d4e41548323 100644
--- a/testing/rgxg/APKBUILD
+++ b/testing/rgxg/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Hauke Loeffler <alpine@hauke-loeffler.de>
pkgname=rgxg
pkgver=0.1.2
-pkgrel=0
+pkgrel=2
pkgdesc="rgxg (ReGular eXpression Generator) is a C library and a command-line tool to generate (extended) regular expressions."
url="https://rgxg.github.io/"
arch="all"
diff --git a/testing/rhasspy-nlu/APKBUILD b/testing/rhasspy-nlu/APKBUILD
new file mode 100644
index 00000000000..b33df8b794b
--- /dev/null
+++ b/testing/rhasspy-nlu/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=rhasspy-nlu
+pkgver=0.4.0
+pkgrel=3
+pkgdesc="Natural language understanding library for Rhasspy"
+url="https://github.com/rhasspy/rhasspy-nlu"
+arch="noarch"
+license="MIT"
+depends="py3-grapheme py3-numpy py3-networkx py3-num2words"
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="https://github.com/rhasspy/rhasspy-nlu/archive/refs/tags/v$pkgver/rhasspy-nlu-$pkgver.tar.gz"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ gpep517 install-wheel --destdir .testenv --prefix '' .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
+ rm -rf "$pkgdir"/usr/lib/python*/site-packages/tests
+}
+
+sha512sums="
+fbb4ab21d8b11a1d3c5c26445795d28567eabd532bc332446b75236fc0856abf6c1ede423620b717d2ff8294b69b9265e3ea53a5cb397df2f4e959fa9805a47d rhasspy-nlu-0.4.0.tar.gz
+"
diff --git a/testing/ri-li/APKBUILD b/testing/ri-li/APKBUILD
index 6a176e0e993..6210ea5f1eb 100644
--- a/testing/ri-li/APKBUILD
+++ b/testing/ri-li/APKBUILD
@@ -2,14 +2,15 @@
# Maintainer: Thomas Kienlen <kommander@laposte.net>
pkgname=ri-li
pkgver=2.0.1
-pkgrel=0
+pkgrel=1
pkgdesc="Drive a toy wood engine in many levels and collect all the coaches to win"
url="https://ri-li.sourceforge.net"
arch="x86 x86_64"
license="GPL-3.0-or-later"
-makedepends="sdl_mixer-dev"
+makedepends="sdl12-compat-dev sdl_mixer-dev"
source="$pkgname-$pkgver.tar.bz2::https://download.sourceforge.net/sourceforge/ri-li/Ri-li-$pkgver.tar.bz2
iostream.patch
+ pointers.patch
ri-li.desktop
"
options="!check" # No test suite
@@ -27,6 +28,9 @@ package() {
install -Dm 644 "$builddir"/data/Ri-li-icon-48x48.png "$pkgdir"/usr/share/pixmaps/ri-li.png
}
-sha512sums="6d56c00dae90b50bca81ca739c628335b4ad7642c19a3b3c28630ddb91bd847ca6d383cace66ef436a1dda7497c9d3939de2626071bae40d423b2444fed97863 ri-li-2.0.1.tar.bz2
+sha512sums="
+6d56c00dae90b50bca81ca739c628335b4ad7642c19a3b3c28630ddb91bd847ca6d383cace66ef436a1dda7497c9d3939de2626071bae40d423b2444fed97863 ri-li-2.0.1.tar.bz2
49fbf3a30f0ae6c47d8fcc45d72891ac199187f7615840f6eb994df998440980d7838beceec5225325c2e971c97dbc28a02ad47db03d144bb9cd90b18d4422e8 iostream.patch
-cba2c93be02ad90ffda4fd637df347f3a88d43548c61d60bf06050cac5e6d9d379b6232a86925049903dbf7eabf9355977e17c568042341e1091af358932393f ri-li.desktop"
+e2e820cb5d09cc3b9a0318acbd24755d09db259ce52da8b833d7a6957f92a877e4a74b6393b053d5d5e6863a60352a5ac0a915bc8203759c5a7d69346320e6ac pointers.patch
+cba2c93be02ad90ffda4fd637df347f3a88d43548c61d60bf06050cac5e6d9d379b6232a86925049903dbf7eabf9355977e17c568042341e1091af358932393f ri-li.desktop
+"
diff --git a/testing/ri-li/pointers.patch b/testing/ri-li/pointers.patch
new file mode 100644
index 00000000000..f39b4858d7a
--- /dev/null
+++ b/testing/ri-li/pointers.patch
@@ -0,0 +1,35 @@
+diff --git a/src/sprite.cc b/src/sprite.cc
+index 926370d..3521fe6 100644
+--- a/src/sprite.cc
++++ b/src/sprite.cc
+@@ -354,7 +354,7 @@ bool Sprite::Load(unsigned char *Buf,long &P)
+ // Fabrique la surface
+ Image[i]=SDL_CreateRGBSurface((Dim[i].bpp-3)*SDL_SRCALPHA,Dim[i].L,Dim[i].H,Dim[i].bpp*8,
+ 0xff,0xff00,0xff0000,0xff000000*(Dim[i].bpp-3));
+- if(Image[i]<=NULL) {
++ if(Image[i]==NULL) {
+ cerr <<"Impossible de créer une Surface SDL!"<<endl;
+ return false;
+ }
+@@ -488,7 +488,7 @@ bool Sprite::Nouveau(int Lx,int Ly)
+ // Fabrique la surface
+ Image[0]=SDL_CreateRGBSurface((Dim[0].bpp-3)*SDL_SRCALPHA,Dim[0].L,Dim[0].H,Dim[0].bpp*8,
+ 0xff,0xff00,0xff0000,0xff000000*(Dim[0].bpp-3));
+- if(Image[0]<=NULL) {
++ if(Image[0]==NULL) {
+ cerr <<"Impossible de créer une Surface SDL!"<<endl;
+ return false;
+ }
+diff --git a/src/tableau.cc b/src/tableau.cc
+index ddbc096..095bf0a 100644
+--- a/src/tableau.cc
++++ b/src/tableau.cc
+@@ -87,7 +87,7 @@ bool Tableau::Save(void)
+
+ // Alloue la mémoire
+ Buf=new unsigned char [sizeof(s_Tableau)*N+sizeof(int)+1];
+- if(Buf<=0) return false;
++ if(Buf-=0) return false;
+
+ // Charge les tableaux
+ Buf[0]=N/256;
diff --git a/testing/riemann-cli/APKBUILD b/testing/riemann-cli/APKBUILD
index 656ad04d3d1..8b4e1ae1828 100644
--- a/testing/riemann-cli/APKBUILD
+++ b/testing/riemann-cli/APKBUILD
@@ -4,25 +4,27 @@ pkgname=riemann-cli
_projname=rust-riemann_client
# CAUTION: Regenerate Cargo.lock when upgrading to a new version.
pkgver=0.8.0
-pkgrel=0
+pkgrel=2
pkgdesc="CLI client for Riemann written in Rust"
url="https://github.com/borntyping/rust-riemann_client"
arch="x86_64 armv7 armhf aarch64 x86 ppc64le" # limited by rust/cargo
license="MIT"
-makedepends="cargo"
+makedepends="cargo cargo-auditable"
# TODO: Convince upstream to include Cargo.lock in repository.
source="https://github.com/borntyping/rust-riemann_client/archive/v$pkgver/$pkgname-$pkgver.tar.gz
+ no-unstable.patch
Cargo.lock
"
builddir="$srcdir/$_projname-$pkgver"
+
prepare() {
default_prepare
cp "$srcdir"/Cargo.lock "$builddir"/
}
build() {
- cargo build --release --locked
+ cargo auditable build --release --locked
}
check() {
@@ -30,9 +32,12 @@ check() {
}
package() {
- cargo install --locked --path . --root="$pkgdir/usr"
+ cargo auditable install --locked --path . --root="$pkgdir/usr"
rm "$pkgdir"/usr/.crates*
}
-sha512sums="b2cb8eb8b9fd2bfa21760390d26daaa9e839c210d83dbf1cceb3f2032a7c09b8e213c27592afa8943fbb3d979321a12264c0051a6fbd584cdeee234f1176b73f riemann-cli-0.8.0.tar.gz
-f11d283c455b879caa28f60dc1837826bd9a6e6ea58035199fed143e3bdf003ba3149e553e27a6572eafcef4694694def3b0f823d8f5fee8efa40d9060f7912c Cargo.lock"
+sha512sums="
+b2cb8eb8b9fd2bfa21760390d26daaa9e839c210d83dbf1cceb3f2032a7c09b8e213c27592afa8943fbb3d979321a12264c0051a6fbd584cdeee234f1176b73f riemann-cli-0.8.0.tar.gz
+59683264f1fe6aa5e015b229a8bf1f2647d5290b9a605365712894dc5f01aa1e29d628c24b4e98dc355a887504d243ad70d7accf06ee648f5284f14dde56f628 no-unstable.patch
+f11d283c455b879caa28f60dc1837826bd9a6e6ea58035199fed143e3bdf003ba3149e553e27a6572eafcef4694694def3b0f823d8f5fee8efa40d9060f7912c Cargo.lock
+"
diff --git a/testing/riemann-cli/no-unstable.patch b/testing/riemann-cli/no-unstable.patch
new file mode 100644
index 00000000000..89724ce6f40
--- /dev/null
+++ b/testing/riemann-cli/no-unstable.patch
@@ -0,0 +1,13 @@
+this is a nightly attribute now apparently
+diff --git a/src/proto/mod_pb.rs b/src/proto/mod_pb.rs
+index 4786797..8cb5695 100644
+--- a/src/proto/mod_pb.rs
++++ b/src/proto/mod_pb.rs
+@@ -6,7 +6,6 @@
+ #![allow(clippy::all)]
+
+ #![allow(unused_attributes)]
+-#![rustfmt::skip]
+
+ #![allow(box_pointers)]
+ #![allow(dead_code)]
diff --git a/testing/rime-plum/APKBUILD b/testing/rime-plum/APKBUILD
new file mode 100644
index 00000000000..d70ebc4dfb3
--- /dev/null
+++ b/testing/rime-plum/APKBUILD
@@ -0,0 +1,54 @@
+# Contributor: mio <miyopan@e.email>
+# Maintainer: mio <miyopan@e.email>
+pkgname=rime-plum
+pkgver=0_git20230207
+pkgrel=0
+_gitrev=6f502ff6fa87789847fa18200415318e705bffa4
+pkgdesc="Rime configuration manager and input schemas"
+url="https://github.com/rime/plum"
+license="LGPL-3.0-or-later"
+arch="noarch"
+depends="
+ librime
+ opencc
+ "
+makedepends="
+ bash
+ git
+ librime-tools
+ "
+subpackages="
+ $pkgname-data
+ $pkgname-tools
+ "
+source="$pkgname-$_gitrev.tar.gz::https://github.com/rime/plum/archive/$_gitrev.tar.gz"
+options="!check" # No tests
+builddir="$srcdir"/plum-"$_gitrev"
+
+build() {
+ make preset-bin
+}
+
+package() {
+ depends="
+ $pkgname-data=$pkgver-r$pkgrel
+ $pkgname-tools=$pkgver-r$pkgrel
+ "
+ DESTDIR="$pkgdir" make install
+ install -Dm 755 "$builddir"/rime-install "$pkgdir"/usr/bin/rime-install
+}
+
+data() {
+ pkgdesc="$pkgdesc (input schemas)"
+ amove usr/share/rime-data
+}
+
+tools() {
+ pkgdesc="$pkgdesc (configuration tools)"
+ depends="bash git"
+ amove usr/bin/rime-install
+}
+
+sha512sums="
+682406ec3ea1f4f447f3f1a5283d820b45c909a47cb87c7be87b4c26d5524571210990c0942db02bb3ba83fc6cda36d77dad7a3ce9787a1f6c584c18f9712caf rime-plum-6f502ff6fa87789847fa18200415318e705bffa4.tar.gz
+"
diff --git a/testing/rinetd/APKBUILD b/testing/rinetd/APKBUILD
new file mode 100644
index 00000000000..3bfc85ac244
--- /dev/null
+++ b/testing/rinetd/APKBUILD
@@ -0,0 +1,55 @@
+# Contributor: Aaron Fischer <mail@aaron-fischer.net>
+# Maintainer: Aaron Fischer <mail@aaron-fischer.net>
+pkgname=rinetd
+pkgver=0.73
+pkgrel=0
+pkgdesc="TCP/UDP port redirector"
+url="https://github.com/samhocevar/rinetd"
+arch="all"
+license="GPL-2.0-only"
+makedepends="
+ autoconf
+ automake
+ "
+subpackages="
+ $pkgname-doc
+ $pkgname-openrc
+ "
+source="https://github.com/samhocevar/rinetd/releases/download/v$pkgver/rinetd-$pkgver.tar.bz2
+ $pkgname.initd
+ "
+
+build() {
+ ./bootstrap
+ ./configure \
+ --prefix=/usr \
+ --disable-dependency-tracking \
+ --enable-silent-rules
+ make
+}
+
+check() {
+ # There are no tests at the moment, but the makefile includes an empty test
+ # target, so we include it here to be prepared when there are tests to execute.
+ make test
+}
+
+package() {
+ # Binary
+ install -Dm755 "$pkgname" "$pkgdir/usr/sbin/$pkgname"
+
+ # Configuration
+ install -Dm644 "$pkgname.conf" "$pkgdir/etc/$pkgname.conf"
+ install -Dm755 "$srcdir/$pkgname.initd" "$pkgdir/etc/init.d/$pkgname"
+
+ # Documentation
+ install -Dm644 "$pkgname.8" "$pkgdir/usr/share/man/man8/$pkgname.8"
+ install -Dm644 README.md "$pkgdir/usr/share/doc/$pkgname/README.md"
+ install -Dm644 index.html "$pkgdir/usr/share/doc/$pkgname/index.html"
+ install -Dm644 COPYING "$pkgdir/usr/share/licenses/$pkgname/COPYING"
+}
+
+sha512sums="
+e5d1c7e5826a75c520453032f6e4651700860505dfced625698fc036249b9f585a894e1fee905321878b2d2a265c843f5a746090311929518594263b33b64ed8 rinetd-0.73.tar.bz2
+3243341cec80d67f972961efdfead0ada2de0ea5f9c980040e048d3fef5a95eefd0954321887a460ad45e22db8f70f584d827a9baa8e5d09fcb424fd51fb0949 rinetd.initd
+"
diff --git a/testing/rinetd/rinetd.initd b/testing/rinetd/rinetd.initd
new file mode 100644
index 00000000000..52895e1f036
--- /dev/null
+++ b/testing/rinetd/rinetd.initd
@@ -0,0 +1,13 @@
+#!/sbin/openrc-run
+
+description="TCP/UDP port redirector"
+cfgfile=${cfgfile:-/etc/rinetd.conf}
+command=${command:-/usr/sbin/rinetd}
+command_args="-f -c $cfgfile"
+required_files="$cfgfile"
+
+depend() {
+ need net
+ use dns
+}
+
diff --git a/testing/rio/APKBUILD b/testing/rio/APKBUILD
new file mode 100644
index 00000000000..8d911d521dc
--- /dev/null
+++ b/testing/rio/APKBUILD
@@ -0,0 +1,45 @@
+# Contributor: Nicolas Lorin <androw95220@gmail.com>
+# Maintainer: Nicolas Lorin <androw95220@gmail.com>
+pkgname=rio
+pkgver=0.0.36
+pkgrel=0
+pkgdesc="A hardware-accelerated GPU terminal emulator powered by WebGPU, focusing to run in desktops and browsers."
+url="https://raphamorim.io/rio"
+arch="all !s390x"
+license="MIT"
+# !check: no tests available
+# net: required to fetch rust dependencies
+options="!check net"
+depends="$pkgname-terminfo"
+makedepends="cargo cargo-auditable cmake expat-dev freetype-dev fontconfig-dev libxcb-dev ncurses python3"
+subpackages="$pkgname-terminfo"
+source="$pkgname-$pkgver.tar.gz::https://github.com/raphamorim/rio/archive/refs/tags/v$pkgver.tar.gz"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen --no-default-features --features=x11,wayland
+ tic -e rio -x -o terminfo misc/rio.terminfo
+}
+
+package() {
+ install -Dm755 target/release/rio "$pkgdir"/usr/bin/rio
+ install -Dm644 terminfo/r/rio "$pkgdir"/usr/share/terminfo/r/rio
+
+ # Install desktop files
+ install -Dm644 misc/rio.desktop -t "$pkgdir"/usr/share/applications
+ install -Dm644 misc/logo.svg \
+ "$pkgdir"/usr/share/icons/hicolor/scalable/apps/rio.svg
+}
+
+terminfo() {
+ amove usr/share/terminfo
+}
+
+sha512sums="
+a1657d65c7a0c24d8dc481347a22981ef7fd7410613ae47e3ad740f93993047fad2365f7fbb209bd1abade76aa3924bcde193755b0249e7f554ca1490b094600 rio-0.0.36.tar.gz
+"
diff --git a/testing/ripasso-cursive/APKBUILD b/testing/ripasso-cursive/APKBUILD
index e02be2054fc..1998025ac95 100644
--- a/testing/ripasso-cursive/APKBUILD
+++ b/testing/ripasso-cursive/APKBUILD
@@ -1,27 +1,39 @@
# Maintainer: Eirik Furuseth <alpine@heplaphon.com>
pkgname=ripasso-cursive
_pkgrelname=ripasso
-pkgver=0.5.2
+pkgver=0.6.5
pkgrel=0
pkgdesc="A password manager that uses the file format of the standard unix password manager 'pass', implemented in rust."
url="https://github.com/cortex/ripasso/"
arch="all !s390x !riscv64 !armhf"
license="GPL-3.0-or-later"
-makedepends="gettext rust cargo libgpg-error-dev gpgme-dev openssl-dev libxcb-dev"
+makedepends="
+ cargo
+ cargo-auditable
+ clang-dev
+ gpgme-dev
+ libgpg-error-dev
+ libxcb-dev
+ nettle-dev
+ openssl-dev>3
+ "
source="https://github.com/cortex/ripasso/archive/release-$pkgver.tar.gz"
builddir="$srcdir/$_pkgrelname-release-$pkgver"
+options="net"
+
prepare() {
default_prepare
- cargo fetch --locked
+ cargo update
+ cargo fetch --target="$CTARGET" --locked
}
build() {
- cargo build -p ripasso-cursive --release --frozen
+ cargo auditable build -p ripasso-cursive --release --frozen
}
check() {
- cargo test --release --frozen
+ cargo test --frozen
}
package() {
@@ -30,5 +42,5 @@ package() {
}
sha512sums="
-7b90e13de3a81513ba29837d2180964242a5723f7d76690e2250508fd271eb58b6e826a65095ca07617f90db9f5e53cae50e6e31ca495f2dc2108da75837e220 release-0.5.2.tar.gz
+1b6990f96f2e6000530fc5cecdef513c5deb367146d886d41aacdd412c44de8754e6711df6f5535feefdacb6aad68520d6a55868d6f0ba5928412739dcf0bb3a release-0.6.5.tar.gz
"
diff --git a/testing/ripdrag/APKBUILD b/testing/ripdrag/APKBUILD
new file mode 100644
index 00000000000..2de2e5f9d5a
--- /dev/null
+++ b/testing/ripdrag/APKBUILD
@@ -0,0 +1,35 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=ripdrag
+pkgver=0.4.7
+pkgrel=0
+pkgdesc="Drag and Drop utilty written in Rust and GTK4"
+url="https://github.com/nik012003/ripdrag"
+arch="all"
+license="GPL-3.0-only"
+makedepends="
+ cargo
+ cargo-auditable
+ gtk4.0-dev
+"
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/nik012003/ripdrag/archive/refs/tags/v$pkgver.tar.gz
+"
+options="!check" # no tests
+
+prepare() {
+ default_prepare
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+package() {
+ install -Dm 755 target/release/ripdrag "$pkgdir"/usr/bin/ripdrag
+}
+
+sha512sums="
+70dd2edcd498798aa9095516992e7cc8f3b3df56ae504bd116e54579a7dbc825e4b3194babe73e5d359902cf993b39379c82ba56645a490ee9584978955d0756 ripdrag-0.4.7.tar.gz
+"
diff --git a/testing/river/APKBUILD b/testing/river/APKBUILD
index 72d4935822d..67246ef4612 100644
--- a/testing/river/APKBUILD
+++ b/testing/river/APKBUILD
@@ -1,23 +1,31 @@
# Contributor: Anjandev Momi <anjan@momi.ca>
# Maintainer: Anjandev Momi <anjan@momi.ca>
pkgname=river
-pkgver=0.1.3
-pkgrel=1
+pkgver=0.3.0
+pkgrel=0
pkgdesc="Dynamic Tiling Wayland Compositor"
-url="https://github.com/riverwm/river"
+url="https://codeberg.org/river/river"
arch="x86_64 aarch64" # limited by zig aport
-license="GPL-3.0-or-later"
-makedepends="libevdev-dev libxkbcommon-dev pixman-dev scdoc wayland-dev
- wayland-protocols wlroots-dev zig
+license="GPL-3.0-only"
+makedepends="
+ libevdev-dev
+ libxkbcommon-dev
+ pixman-dev
+ scdoc
+ wayland-dev
+ wayland-protocols
+ wlroots-dev
+ zig
"
-depends="seatd"
+depends="xwayland seatd"
subpackages="
+ $pkgname-dev
$pkgname-doc
$pkgname-bash-completion
$pkgname-fish-completion
$pkgname-zsh-completion
"
-source="https://github.com/riverwm/river/releases/download/v$pkgver/river-$pkgver.tar.gz"
+source="https://codeberg.org/river/river/releases/download/v$pkgver/river-$pkgver.tar.gz"
# We may want other than "baseline" for other targets, when enabled by zig
case "$CARCH" in
@@ -26,7 +34,7 @@ esac
build() {
# This installs it to $builddir/out
- DESTDIR="$builddir/out" zig build -Drelease-safe --prefix /usr install \
+ DESTDIR="$builddir/out" zig build -Doptimize=ReleaseSafe -Dpie -Dxwayland --prefix /usr install \
${cputarget:+-Dcpu="$cputarget"}
}
@@ -44,14 +52,13 @@ package() {
# Install example configuration
install -Dm0644 example/init -t "$pkgdir"/usr/share/doc/river/examples
+}
- # Fix location of fish completion
- mkdir -p "$pkgdir"/usr/share/fish/completions/
- mv "$pkgdir"/usr/share/fish/vendor_completions.d/*.fish \
- "$pkgdir"/usr/share/fish/completions/
- rm -rf "$pkgdir"/usr/share/fish/vendor_completions.d
+dev() {
+ default_dev
+ amove usr/share/river-protocols
}
sha512sums="
-8dd8ad8b17fb1d9d65e413aaaa456fda89f8bedd580db247c3ffa8235a67712394182b3498a9c6eb3707cfc571c398bb5086cf09810e4a9438d26ea19f41f5a9 river-0.1.3.tar.gz
+d74aabd01781d76f37cc220413850f793f02e78bd966ce67e1c73d5849a9ea308a2619388202b15ee4108ac3c5f19faea91092fbaccb6de65121a3427d3d05e4 river-0.3.0.tar.gz
"
diff --git a/testing/rizin-cutter/APKBUILD b/testing/rizin-cutter/APKBUILD
index 61ac05c7f5b..ae0e68cb2d4 100644
--- a/testing/rizin-cutter/APKBUILD
+++ b/testing/rizin-cutter/APKBUILD
@@ -1,43 +1,37 @@
# Contributor: Leon Marz <main@lmarz.org>
# Maintainer: Leon Marz <main@lmarz.org>
pkgname=rizin-cutter
-pkgver=2.0.5
-pkgrel=0
+pkgver=2.3.2
+pkgrel=2
pkgdesc="Reverse Engineering Platform powered by rizin"
url="https://cutter.re"
arch="all !armhf" # syntax-highlighting not available
license="GPL-3.0-only"
depends="rizin"
-makedepends="cmake
+makedepends="
+ cmake
graphviz-dev
python3-dev
- rizin-dev
- syntax-highlighting-dev
- qt5-qttools-dev
qt5-qtsvg-dev
+ qt5-qttools-dev
+ rizin-dev
+ samurai
+ syntax-highlighting5-dev
"
subpackages="$pkgname-dev"
_translations_commit=974298653ba71b958e1b6c83f6011f5fefff6236
-source="$pkgname-$pkgver.tar.gz::https://github.com/rizinorg/cutter/archive/v$pkgver.tar.gz
- translations.tar.gz::https://github.com/rizinorg/cutter-translations/archive/$_translations_commit.tar.gz
- "
-builddir="$srcdir/cutter-$pkgver"
+source="https://github.com/rizinorg/cutter/releases/download/v$pkgver/Cutter-v$pkgver-src.tar.gz"
+builddir="$srcdir/Cutter-v$pkgver"
options="!check" # upstream does not provide a testsuite
-prepare() {
- default_prepare
-
- rmdir "$builddir/src/translations"
- mv "$srcdir/cutter-translations-$_translations_commit" "$builddir/src/translations"
-}
-
build() {
- cmake -B build \
+ CXXFLAGS="$CXXFLAGS -O2 -flto=auto" \
+ cmake -B build -G Ninja \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
-DCMAKE_BUILD_TYPE=None \
-DCUTTER_USE_BUNDLED_RIZIN=OFF \
+ -DCUTTER_USE_ADDITIONAL_RIZIN_PATHS=OFF \
-DCUTTER_ENABLE_GRAPHVIZ=ON \
-DCUTTER_ENABLE_PYTHON=ON
@@ -49,6 +43,5 @@ package() {
}
sha512sums="
-96badcd2ea00c2b50417b7019933443831fec3a4769cf7ab66505e898d3f2c693f24bbe994ad70f66a456908e621f053a96b21a2999290dc47c4219b6c639bfd rizin-cutter-2.0.5.tar.gz
-11450631602e7bd81132650b3edd028d56b2f6343a9561fe8bf3281427d8d22b0296651414756236b8544f719c8d4fc11be44a843532c8c32fe21dd7a82066d2 translations.tar.gz
+65ca98f6618b1e60efa25d33bb4f3ef6b36dfd8496cf1f40c6a6b9744df3c2f77673d1d3cc1142c1b3b064abd0698ca07a20c5e4009ba5f6b05fc7f7501a4435 Cutter-v2.3.2-src.tar.gz
"
diff --git a/testing/rizin/APKBUILD b/testing/rizin/APKBUILD
index f4ff193d08e..cf877ca2730 100644
--- a/testing/rizin/APKBUILD
+++ b/testing/rizin/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: TBK <alpine@jjtc.eu>
# Maintainer: TBK <alpine@jjtc.eu>
pkgname=rizin
-pkgver=0.3.4
+pkgver=0.6.3
pkgrel=0
pkgdesc="UNIX-like reverse engineering framework and command-line toolset"
url="https://rizin.re/"
@@ -23,45 +23,52 @@ makedepends="
linux-headers
libzip-dev
lz4-dev
- openssl-dev
+ openssl-dev>3
tree-sitter-dev
xxhash-dev
zlib-dev
"
subpackages="$pkgname-dev $pkgname-doc $pkgname-libs"
-_testbins_commit=71eb2aeb33b32be0b0ad5d80d6f017bd0866e7c2
-source="$pkgname-$pkgver.tar.xz::https://github.com/rizinorg/rizin/releases/download/v$pkgver/rizin-src-v$pkgver.tar.xz
- testbins.tar.gz::https://github.com/rizinorg/rizin-testbins/archive/$_testbins_commit.tar.gz
- "
+source="$pkgname-$pkgver.tar.xz::https://github.com/rizinorg/rizin/releases/download/v$pkgver/rizin-src-v$pkgver.tar.xz"
builddir="$srcdir/rizin-v$pkgver"
-prepare() {
- default_prepare
-
- # bins used for testing
- mv -v "$srcdir/rizin-testbins-$_testbins_commit" "$builddir/test/bins"
-}
+# secfixes:
+# 0.6.1-r0:
+# - CVE-2023-40022
+# 0.4.1-r0:
+# - CVE-2022-36043
+# - CVE-2022-36040
+# - CVE-2022-36041
+# - CVE-2022-36039
+# - CVE-2022-36044
+# - CVE-2022-36042
build() {
+ CFLAGS="$CFLAGS -O2" \
+ CXXFLAGS="$CXXFLAGS -O2" \
+ CPPFLAGS="$CPPFLAGS -O2" \
abuild-meson \
- -Dpackager="alpinelinux" \
- -Duse_sys_capstone=enabled \
- -Duse_sys_magic=enabled \
- -Duse_sys_libzip=enabled \
- -Duse_sys_zlib=enabled \
- -Duse_sys_lz4=enabled \
- -Duse_sys_xxhash=enabled \
- -Duse_sys_openssl=enabled \
+ -Db_lto=true \
+ -Dpackager="alpinelinux" \
+ -Dpackager_version="$pkgver-r$pkgrel" \
+ -Duse_sys_capstone=enabled \
+ -Duse_capstone_version="v4" \
+ -Duse_sys_magic=enabled \
+ -Duse_sys_libzip=enabled \
+ -Duse_sys_zlib=enabled \
+ -Duse_sys_lz4=enabled \
+ -Duse_sys_xxhash=enabled \
+ -Duse_sys_openssl=enabled \
-Duse_sys_tree_sitter=enabled \
. output
- meson compile ${JOBS:+-j ${JOBS}} -C output
+ meson compile -C output
}
check() {
# Include the build rizin otherwise
# unit/test_rzpipe.c will fail
export PATH="$PATH:$builddir/output/binrz/rizin/"
- meson test --no-rebuild -v -C output
+ meson test --no-rebuild --print-errorlogs -C output
}
package() {
@@ -69,6 +76,5 @@ package() {
}
sha512sums="
-cda35afe8c031f3207c055ed31d7f76a46b7addd04cead0f5aadf0733b66f4dd953ca16f054b47da7921d4726d6ea1250436012954a9755c1cd524a8fd0d670c rizin-0.3.4.tar.xz
-f30993a2d5afd024337fd7b6085f658c03b7498b663654e1a455db0921a8405d86ff3d284f1e6407aeb1cd8f579719759e6a3530ef4dace57b1ddfb24a35f7ce testbins.tar.gz
+031ae1c5b43237d55b3e48d825d4bd9cda16a4a84a47464eb1745a02265a1412e2864345595c0dca7f8ea0cb348fe9760ea424556ff6b915ac8014a7f410b03c rizin-0.6.3.tar.xz
"
diff --git a/testing/rkdeveloptool/APKBUILD b/testing/rkdeveloptool/APKBUILD
index abb16739cff..adfb769c14c 100644
--- a/testing/rkdeveloptool/APKBUILD
+++ b/testing/rkdeveloptool/APKBUILD
@@ -13,14 +13,13 @@ options="!check" # There is no testsuite
build() {
abuild-meson . output
- meson compile ${JOBS:+-j ${JOBS}} -C output
+ meson compile -C output
}
package() {
DESTDIR="$pkgdir" meson install --no-rebuild -C output
}
-
sha512sums="
ff32906924c6bd7027e864d1e417c6e94119a379db2dd6ffdf0c04af666fbb1be787e0a4fad298f87b6ab51696c74ccc51ed9d5a22a59079bbadcc00c0ea4ff1 rkdeveloptool-1.1.0.tar.gz
"
diff --git a/testing/rke/APKBUILD b/testing/rke/APKBUILD
index 6d8172a0f40..2d29d3cf40d 100644
--- a/testing/rke/APKBUILD
+++ b/testing/rke/APKBUILD
@@ -1,8 +1,8 @@
-# Contributor: Lucas Ramage <ramage.lucas@protonmail.com>
-# Maintainer: Lucas Ramage <ramage.lucas@protonmail.com>
+# Contributor: Lucas Ramage <lucas.ramage@infinite-omicron.com>
+# Maintainer: Lucas Ramage <lucas.ramage@infinite-omicron.com>
pkgname=rke
-pkgver=1.3.11
-pkgrel=0
+pkgver=1.4.3
+pkgrel=7
pkgdesc="Rancher Kubernetes Engine"
options="!check net chmod-clean"
url="https://github.com/rancher/rke"
@@ -16,8 +16,12 @@ source="$pkgname-$pkgver.tar.gz::https://github.com/rancher/rke/archive/v$pkgver
# 1.3.2-r0:
# - CVE-2021-25742
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
build() {
- go build -v -ldflags "-X main.VERSION=$pkgver"
+ go build -v -ldflags "-X main.VERSION=v$pkgver"
}
package() {
@@ -26,5 +30,5 @@ package() {
}
sha512sums="
-8625f4fafe6e6e8b694fd8c13e890f5e3c2cc908f6a775c42c56581ca67c4eb56166d627df2c47a1eb7b743c8d582d5dd949f6e6eb7843ec3f6789489a0e176d rke-1.3.11.tar.gz
+a87aa0f71dff96e40f53e758fe588f0f941844bfdf30610a528b835622af45426b4af789a7beee35796ecc3bc7fcbb7831bc28168fdb67a093adf9f9f4e05542 rke-1.4.3.tar.gz
"
diff --git a/testing/rlottie/APKBUILD b/testing/rlottie/APKBUILD
new file mode 100644
index 00000000000..641f9ea3791
--- /dev/null
+++ b/testing/rlottie/APKBUILD
@@ -0,0 +1,38 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=rlottie
+pkgver=0.2_git20230831
+_gitrev=d40008707addacb636ff435236d31c694ce2b6cf
+pkgrel=0
+pkgdesc="A platform independent standalone library that plays Lottie Animation"
+url="https://github.com/Samsung/rlottie"
+arch="all"
+license="MIT AND BSD-3-Clause AND MPL-2.0"
+makedepends="ninja meson"
+subpackages="$pkgname-dev $pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/Samsung/rlottie/archive/$_gitrev.tar.gz"
+builddir="$srcdir/$pkgname-$_gitrev"
+
+build() {
+ meson --prefix /usr build
+
+ ninja -C build
+}
+
+check() {
+ ninja -C build test
+}
+
+package() {
+ DESTDIR="$pkgdir" ninja -C build install
+
+ install -Dm 644 "COPYING" "$pkgdir/usr/share/licenses/$pkgname/COPYING"
+ for f in licenses/*
+ do
+ install -Dm 644 "$f" "$pkgdir/usr/share/licenses/$pkgname/$f"
+ done
+}
+
+sha512sums="
+025456a20d25e015612e871b50cd85b6fb1bbfdf9a2122f0789fafcfe7f85594dc50838088fadbb3f7cdcd86e61061def6a94407f9e0fc4359533a460d8ac427 rlottie-0.2_git20230831.tar.gz
+"
diff --git a/testing/rmlint/APKBUILD b/testing/rmlint/APKBUILD
new file mode 100644
index 00000000000..0392d9d8437
--- /dev/null
+++ b/testing/rmlint/APKBUILD
@@ -0,0 +1,44 @@
+# Contributor: Edd Salkield <edd@salkield.uk>
+# Maintainer: Edd Salkield <edd@salkield.uk>
+pkgname=rmlint
+pkgver=2.10.2
+pkgrel=1
+pkgdesc="Remove duplicates and other lint from your filesystem"
+url="https://rmlint.readthedocs.io/en/latest/"
+arch="all"
+license="GPL-3.0-only"
+makedepends="scons python3 glib-dev json-glib-dev elfutils-dev py3-sphinx"
+checkdepends="dash py3-nose py3-parameterized py3-psutil"
+subpackages="$pkgname-doc $pkgname-lang $pkgname-shredder-pyc $pkgname-shredder:shredder:noarch"
+source="https://github.com/sahib/rmlint/archive/v$pkgver/rmlint-v$pkgver.tar.gz
+ remove-usage-of-lseek64.patch
+ "
+options="!check" # awaiting upstream fixes to test suite
+ # https://github.com/sahib/rmlint/issues/593
+
+build() {
+ scons config
+ scons -j $JOBS --prefix="$pkgdir"/usr --actual-prefix=/usr
+}
+
+check() {
+ scons test
+}
+
+package() {
+ scons --prefix=$pkgdir/usr install --actual-prefix=/usr
+ rm -f "$pkgdir/usr/share/glib-2.0/schemas/gschemas.compiled"
+}
+
+shredder() {
+ depends="polkit gtksourceview py3-cairo dconf py3-gobject3 librsvg xdg-utils"
+ amove usr/lib
+ amove usr/share/applications
+ amove usr/share/glib-2.0
+ amove usr/share/icons
+}
+
+sha512sums="
+8f8d58892785e9012cb15f3e89480d9d04772fa3f923064520bf17afcc8948b1a24d6f8399176a1a26bd5036553c605958f3720e40cf6cba135a4f3381131180 rmlint-v2.10.2.tar.gz
+f77bf8d77bf7d7c83a91a97ed79733b11ea55bd1814ba13262349a4ebd29bf8de4e76b0a082676c634ef83106953097dae1d6faddfa6aa9866a7cf41ed158b18 remove-usage-of-lseek64.patch
+"
diff --git a/testing/rmlint/remove-usage-of-lseek64.patch b/testing/rmlint/remove-usage-of-lseek64.patch
new file mode 100644
index 00000000000..4c1de3f5a89
--- /dev/null
+++ b/testing/rmlint/remove-usage-of-lseek64.patch
@@ -0,0 +1,18 @@
+--- a/lib/utilities.h
++++ b/lib/utilities.h
+@@ -129,14 +127,8 @@
+
+ static inline gint64 rm_sys_preadv(int fd, const struct iovec *iov, int iovcnt,
+ RmOff offset) {
+-#if RM_IS_APPLE || RM_IS_CYGWIN
++#if RM_IS_APPLE || RM_IS_CYGWIN || RM_PLATFORM_32
+ if(lseek(fd, offset, SEEK_SET) == -1) {
+- rm_log_perror("seek in emulated preadv failed");
+- return 0;
+- }
+- return readv(fd, iov, iovcnt);
+-#elif RM_PLATFORM_32
+- if(lseek64(fd, offset, SEEK_SET) == -1) {
+ rm_log_perror("seek in emulated preadv failed");
+ return 0;
+ }
diff --git a/testing/rnc2rng/APKBUILD b/testing/rnc2rng/APKBUILD
deleted file mode 100644
index 4cbd74b18ab..00000000000
--- a/testing/rnc2rng/APKBUILD
+++ /dev/null
@@ -1,28 +0,0 @@
-# Contributor: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-# Maintainer: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-pkgname=rnc2rng
-pkgver=2.6.6
-pkgrel=0
-pkgdesc="RELAX NG Compact to regular syntax conversion library"
-url="https://github.com/djc/rnc2rng"
-arch="noarch"
-license="MIT"
-depends="python3 py3-rply"
-makedepends="py3-setuptools"
-source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/r/rnc2rng/rnc2rng-$pkgver.tar.gz"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 test.py
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-a0f108383ad927c2d9e1cc11960ddaab99a8cb4bf0417cd8e7ccdbc7925746b2fa8c1cbd96a74e89f7166eb8e330c224a49d97aa2ef5d83d7a0c4254240fb308 rnc2rng-2.6.6.tar.gz
-"
diff --git a/testing/rnote/APKBUILD b/testing/rnote/APKBUILD
new file mode 100644
index 00000000000..e4de04a55d9
--- /dev/null
+++ b/testing/rnote/APKBUILD
@@ -0,0 +1,57 @@
+# Contributor: Jakob Meier <comcloudway@ccw.icu>
+# Maintainer: Jakob Meier <comcloudway@ccw.icu>
+pkgname=rnote
+pkgver=0.10.2
+pkgrel=0
+pkgdesc="Sketch and take handwritten notes."
+url="https://rnote.flxzt.net/"
+# ppc64le: vendored abseil, not possible to override to system
+# armhf: doesn't build
+# s390x: mainframe
+arch="all !armhf !s390x !ppc64le"
+license="GPL-3.0-or-later"
+makedepends="
+ alsa-lib-dev
+ appstream-glib-dev
+ appstream-dev
+ cargo
+ clang-dev
+ cmake
+ desktop-file-utils
+ gtk4.0-dev
+ libadwaita-dev
+ meson
+ poppler-dev
+ "
+subpackages="$pkgname-lang $pkgname-cli:cli"
+source="
+ https://github.com/flxzt/rnote/archive/refs/tags/v$pkgver/rnote-$pkgver.tar.gz
+"
+options="net"
+
+export CARGO_PROFILE_RELEASE_LTO=thin
+
+build() {
+ abuild-meson \
+ . output
+
+ meson configure -Dcli=true output
+ meson compile -C output
+}
+check() {
+ meson test --no-rebuild --print-errorlogs -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+cli() {
+ pkgdesc="Convert files to and from .rnote"
+
+ amove usr/bin/rnote-cli
+}
+
+sha512sums="
+27aa48f8dafca39fc5a024962ad9cccb6191c72bfcc828283b5541326f6ce8c56b0be3ebad7795a9ab71cbea8e38dab2ea42d70e0b97dd3b2c14f8fcb84ef260 rnote-0.10.2.tar.gz
+"
diff --git a/testing/rofi-blocks/APKBUILD b/testing/rofi-blocks/APKBUILD
index 7aacc84af9c..9da3fbdfd5e 100644
--- a/testing/rofi-blocks/APKBUILD
+++ b/testing/rofi-blocks/APKBUILD
@@ -7,7 +7,7 @@ _gitrev=c84577749f71f6c0836fc7ca7ec0097d2fe66492
pkgrel=0
pkgdesc="Rofi modi that allows controlling rofi content throug communication with an external program"
url="https://github.com/OmarCastro/rofi-blocks"
-arch="all !riscv64 !s390x" # blocked by rofi -> librsvg -> rust
+arch="all"
license="GPL-3.0-or-later"
depends="cmd:rofi"
makedepends="
diff --git a/testing/rofi-json-menu/APKBUILD b/testing/rofi-json-menu/APKBUILD
index dd1cf0be123..d60ba4b00c4 100644
--- a/testing/rofi-json-menu/APKBUILD
+++ b/testing/rofi-json-menu/APKBUILD
@@ -5,7 +5,7 @@ pkgver=0.2.0
pkgrel=0
pkgdesc="Plugin to use rofi for custom menus"
url="https://github.com/marvinkreis/rofi-json-menu"
-arch="all !riscv64 !s390x" # blocked by rofi -> librsvg -> rust
+arch="all"
license="MIT"
depends="cmd:rofi"
makedepends="
diff --git a/testing/rosdep/APKBUILD b/testing/rosdep/APKBUILD
index 516545e78c8..3d47818e6ec 100644
--- a/testing/rosdep/APKBUILD
+++ b/testing/rosdep/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Russ Webber <russ@rw.id.au>
pkgname=rosdep
pkgver=0.19.0
-pkgrel=2
+pkgrel=5
pkgdesc="ROS multi-package manager system dependency tool"
url="http://ros.org/wiki/rosdep"
arch="noarch"
@@ -11,6 +11,7 @@ options="!check" # tests are not very robust https://github.com/ros-infrastruct
depends="python3 py3-yaml py3-catkin-pkg py3-rosdistro py3-rospkg"
makedepends="py3-setuptools"
checkdepends="py3-nose py3-mock py3-flake8"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/ros-infrastructure/rosdep/archive/$pkgver.tar.gz"
build() {
@@ -22,7 +23,7 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="3e1d5829689646d583da2eaaf3b8bbddec3cb4ca3dc3941ee2697f6367510a4dcff11984fa1792a400f49132778d7869f0a8274e42bc8c04f2e326e6a663c494 rosdep-0.19.0.tar.gz"
diff --git a/testing/rosenpass/APKBUILD b/testing/rosenpass/APKBUILD
new file mode 100644
index 00000000000..58baf3c4d1f
--- /dev/null
+++ b/testing/rosenpass/APKBUILD
@@ -0,0 +1,34 @@
+# Contributor: guddaff <alpine@guddaff.de>
+# Maintainer: guddaff <alpine@guddaff.de>
+pkgname=rosenpass
+pkgver=0.2.1
+pkgrel=0
+pkgdesc="Formally verified, post-quantum secure VPN using WireGuard"
+url="https://rosenpass.eu/"
+license="MIT OR Apache-2.0"
+# armv7/riscv64 cmake fails (OQS), armhf build freezes
+arch="all !armv7 !armhf !riscv64 "
+makedepends="cargo clang-dev cmake libsodium-dev linux-headers cargo-auditable"
+source="https://github.com/rosenpass/rosenpass/archive/v$pkgver/rosenpass-$pkgver.tar.gz"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --locked --target="$CTARGET"
+}
+
+build() {
+ cargo auditable build --frozen --release
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm755 target/release/rosenpass rp -t "$pkgdir"/usr/sbin/
+}
+
+sha512sums="
+91d6c3dd201849dea99431201e6bbe393c056dcdba6f612bea6fb33c9d9f5bdb749aadfed66ed0e0a3ed25a579d83719b8ad90062132eb0158fd712b3fa1d2eb rosenpass-0.2.1.tar.gz
+"
diff --git a/testing/roswell/APKBUILD b/testing/roswell/APKBUILD
index 26d3c8bc2f3..dd68bebfdd3 100644
--- a/testing/roswell/APKBUILD
+++ b/testing/roswell/APKBUILD
@@ -1,7 +1,7 @@
-# Contributor: Lucas Ramage <ramage.lucas@protonmail.com>
-# Maintainer: Lucas Ramage <ramage.lucas@protonmail.com>
+# Contributor: Lucas Ramage <lucas.ramage@infinite-omicron.com>
+# Maintainer: Lucas Ramage <lucas.ramage@infinite-omicron.com>
pkgname=roswell
-pkgver=21.10.14.111
+pkgver=22.12.14.113
pkgrel=0
pkgdesc="Common Lisp environment setup Utility"
url="https://roswell.github.io"
@@ -32,5 +32,5 @@ package() {
}
sha512sums="
-d6979974807385e1e7be993610b5ed6ef5297ded21727162b6bc3240d402168cfe32b6b243f535c69b91620d0af4a3b7e046080be2881610ffbe0d3babfa3b23 roswell-21.10.14.111.tar.gz
+f102297af67b5d5414f853fc428f39347cb09a604bff95ad50c7f5249582a053e00fa3bb59a52846e3afc8244b8de1a7ee4667847b829f7d176121c496fd038f roswell-22.12.14.113.tar.gz
"
diff --git a/testing/rpg-cli/APKBUILD b/testing/rpg-cli/APKBUILD
index 410cfe060ee..8369e4ffede 100644
--- a/testing/rpg-cli/APKBUILD
+++ b/testing/rpg-cli/APKBUILD
@@ -2,16 +2,17 @@
# Maintainer: Michał Polański <michal@polanski.me>
pkgname=rpg-cli
pkgver=1.0.1
-pkgrel=0
+pkgrel=1
pkgdesc="Your filesystem as a dungeon!"
url="https://github.com/facundoolano/rpg-cli"
license="MIT"
arch="all !s390x !riscv64" # blocked by rust/cargo
-makedepends="cargo"
+makedepends="cargo cargo-auditable"
source="https://github.com/facundoolano/rpg-cli/archive/$pkgver/rpg-cli-$pkgver.tar.gz"
+
build() {
- cargo build --release --locked
+ cargo auditable build --release --locked
}
check() {
diff --git a/testing/rpki-client/APKBUILD b/testing/rpki-client/APKBUILD
deleted file mode 100644
index 8b66f422fe7..00000000000
--- a/testing/rpki-client/APKBUILD
+++ /dev/null
@@ -1,41 +0,0 @@
-# Maintainer: Ariadne Conill <ariadne@dereferenced.org>
-pkgname=rpki-client
-pkgver=7.8
-pkgrel=0
-pkgdesc="RPKI validator to support BGP Origin Validation"
-url="https://www.rpki-client.org/"
-arch="all"
-license="ISC"
-depends="rsync"
-makedepends="openssl-dev libretls-dev expat-dev fts-dev"
-checkdepends=""
-install="$pkgname.pre-install"
-pkgusers="rpki-client"
-pkggroups="rpki-client"
-subpackages="$pkgname-doc"
-source="https://cdn.openbsd.org/pub/OpenBSD/rpki-client/rpki-client-$pkgver.tar.gz"
-builddir="$srcdir/rpki-client-$pkgver"
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var \
- --with-user=rpki-client
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-649322fa4859eac871ea20d643806efb05f2ee4488b91063f7174eab5673c03eb367a92d54603d160e67716ba51cf155055a04b02ac6ff140ae526cc7ccdc165 rpki-client-7.8.tar.gz
-"
diff --git a/testing/rpki-client/rpki-client.pre-install b/testing/rpki-client/rpki-client.pre-install
deleted file mode 100755
index 1b53f82b90c..00000000000
--- a/testing/rpki-client/rpki-client.pre-install
+++ /dev/null
@@ -1,5 +0,0 @@
-#!/bin/sh
-
-addgroup -S rpki-client 2>/dev/null
-adduser -S -D -H -h /dev/null -s /sbin/nologin -g rpki-client rpki-client 2>/dev/null
-exit 0
diff --git a/testing/rqlite/APKBUILD b/testing/rqlite/APKBUILD
deleted file mode 100644
index 38ae6f42130..00000000000
--- a/testing/rqlite/APKBUILD
+++ /dev/null
@@ -1,55 +0,0 @@
-# Contributor: psykose <alice@ayaya.dev>
-# Maintainer: psykose <alice@ayaya.dev>
-pkgname=rqlite
-pkgver=7.5.0
-pkgrel=0
-pkgdesc="Lightweight, distributed relational database built on SQLite"
-url="https://github.com/rqlite/rqlite"
-arch="all !riscv64" # ftbfs
-license="MIT"
-makedepends="go"
-checkdepends="python3 py3-requests"
-options="!check" # a bunch of them fail due to runtime requirements
-subpackages="
- $pkgname-doc
- $pkgname-bench
- $pkgname-client
- "
-source="$pkgname-$pkgver.tar.gz::https://github.com/rqlite/rqlite/archive/refs/tags/v$pkgver.tar.gz"
-
-export GOFLAGS="$GOFLAGS -modcacherw -trimpath"
-
-build() {
- go build ./cmd/rqbench
- go build ./cmd/rqlite
- go build ./cmd/rqlited
-}
-
-check() {
- RQLITED_PATH="$builddir"/rqlited python3 system_test/full_system_test.py
-}
-
-package() {
- install -Dm755 rqbench rqlite rqlited \
- -t "$pkgdir"/usr/bin
-
- install -D -m644 "$builddir"/DOC/*.md -t \
- "$pkgdir"/usr/share/doc/$pkgname
-}
-
-bench() {
- pkgdesc="$pkgdesc (benchmark utility)"
-
- amove usr/bin/rqbench
-}
-
-
-client() {
- pkgdesc="$pkgdesc (client)"
-
- amove usr/bin/rqlite
-}
-
-sha512sums="
-970c9e1e861e4d5bcbfa0e1fad4b6937651bf60b87fec2d8f39eb2083fc87f706ff6da3de77e89e568e5288bfa189947924c0441d0cbc2eae014b54c7bb25394 rqlite-7.5.0.tar.gz
-"
diff --git a/testing/rss-email/APKBUILD b/testing/rss-email/APKBUILD
new file mode 100644
index 00000000000..c7a11a7507e
--- /dev/null
+++ b/testing/rss-email/APKBUILD
@@ -0,0 +1,46 @@
+# Contributor: Thomas Böhler <witcher@wiredspace.de>
+# Maintainer: Hugo Osvaldo Barrera <hugo@whynothugo.nl>
+pkgname=rss-email
+pkgdesc="Send RSS/Atom posts as email"
+pkgver=0.4.5
+pkgrel=0
+url="https://git.sr.ht/~witcher/rss-email"
+# ppc64le, s390x, riscv64: rust-ring
+arch="all !ppc64le !s390x !riscv64"
+license="WTFPL"
+makedepends="
+ cargo
+ cargo-auditable
+ scdoc
+ "
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://git.sr.ht/~witcher/rss-email/archive/v$pkgver.tar.gz"
+builddir="$srcdir/$pkgname-v$pkgver"
+options="!check" # no tests
+
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+ scdoc < docs/rss-email.1.scd > rss-email.1
+ scdoc < docs/rss-email.5.scd > rss-email.5
+}
+
+package() {
+ install -Dm755 target/release/rss-email "$pkgdir"/usr/bin/rss-email
+ install -Dm644 rss-email.1 "$pkgdir"/usr/share/man/man1/rss-email.1
+ install -Dm644 rss-email.5 "$pkgdir"/usr/share/man/man5/rss-email.5
+ install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/"$pkgname"/LICENSE
+ install -Dm644 README.md "$pkgdir"/usr/share/doc/"$pkgname"/README.md
+ install -Dm644 config.example.toml "$pkgdir"/usr/share/"$pkgname"/config.toml
+}
+
+
+sha512sums="
+e12715288789240a81ac48d6e81dca63ebb4ca08ff82ea16e49a785e1c673c08e3da18635df94fc4f2165e68a0323454d627a172ed4ae1a1ef1735186a3f9e17 rss-email-0.4.5.tar.gz
+"
diff --git a/testing/rsstail/APKBUILD b/testing/rsstail/APKBUILD
index 6f819ca0f05..afeaa197459 100644
--- a/testing/rsstail/APKBUILD
+++ b/testing/rsstail/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=rsstail
pkgver=2.1
-pkgrel=0
+pkgrel=1
pkgdesc="tail for rss feeds"
url="https://www.vanheusden.com/rsstail/"
arch="all"
diff --git a/testing/rtl-power-fftw/APKBUILD b/testing/rtl-power-fftw/APKBUILD
index 8726a35f754..5f2b4e54494 100644
--- a/testing/rtl-power-fftw/APKBUILD
+++ b/testing/rtl-power-fftw/APKBUILD
@@ -3,7 +3,7 @@
pkgname=rtl-power-fftw
pkgver=20200601
_commit="cee9a22207ea995bd12adbc6bcfbec92521548b1"
-pkgrel=0
+pkgrel=3
pkgdesc="A program that obtains a power spectrum from RTL devices using FFTW"
url="https://github.com/AD-Vega/rtl-power-fftw"
arch="all"
@@ -13,15 +13,18 @@ makedepends="
fftw-dev
libusb-dev
librtlsdr-dev
+ samurai
tclap-dev
"
-source="$pkgname-$pkgver.tar.gz::https://github.com/AD-Vega/rtl-power-fftw/archive/$_commit.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/AD-Vega/rtl-power-fftw/archive/$_commit.tar.gz
+ missing-cstdint.patch
+ "
subpackages="$pkgname-doc"
options="!check" # no tests provided
builddir="$srcdir/$pkgname-$_commit"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
@@ -33,4 +36,7 @@ package() {
DESTDIR="$pkgdir" cmake --build build --target install
}
-sha512sums="1d7db0df54b84a38bf8024558b42657a00f6432912ea1d4312d8c83fc0147f3a912df529e16db63dedc07518161cd9c7b96c969c53dde374a1b270d15e721189 rtl-power-fftw-20200601.tar.gz"
+sha512sums="
+1d7db0df54b84a38bf8024558b42657a00f6432912ea1d4312d8c83fc0147f3a912df529e16db63dedc07518161cd9c7b96c969c53dde374a1b270d15e721189 rtl-power-fftw-20200601.tar.gz
+60ecfc0aaf03bd6589fab7c040b40be74c10b4ab0f5bffa95f8f2845d7f3fb55f07b950253ab7785825f8da2038ad98941d89d20734a951fe45bb55a2091943a missing-cstdint.patch
+"
diff --git a/testing/rtl-power-fftw/missing-cstdint.patch b/testing/rtl-power-fftw/missing-cstdint.patch
new file mode 100644
index 00000000000..267759bb976
--- /dev/null
+++ b/testing/rtl-power-fftw/missing-cstdint.patch
@@ -0,0 +1,12 @@
+diff --git a/src/params.cxx b/src/params.cxx
+index fcf521f..4d0de69 100644
+--- a/src/params.cxx
++++ b/src/params.cxx
+@@ -21,6 +21,7 @@
+ #include <list>
+ #include <math.h>
+ #include <string>
++#include <cstdint>
+ #include <tclap/CmdLine.h>
+
+ #include "params.h"
diff --git a/testing/rtl8812au-src/APKBUILD b/testing/rtl8812au-src/APKBUILD
new file mode 100644
index 00000000000..a1ce76d0af4
--- /dev/null
+++ b/testing/rtl8812au-src/APKBUILD
@@ -0,0 +1,42 @@
+# Maintainer: Bader Zaidan <bader@zaidan.tech>
+pkgname=rtl8812au-src
+_modname=88XXau
+_modver=5.6.4.2
+# no tags, just release branches
+_gitrev=4a983e47dafc048019412350d36270864f6b5f2d
+pkgver=${_modver}_git20231103
+pkgrel=0
+pkgdesc="RTL8812AU/21AU and RTL8814AU wireless drivers"
+url="https://github.com/aircrack-ng/rtl8812au"
+# Currently only x86 and x86_64 is tested, arm(64) is TODO
+arch="x86 x86_64 aarch64 armv7"
+license="GPL-2.0-or-later"
+depends="akms"
+source="$pkgname-$_gitrev.tar.gz::https://github.com/aircrack-ng/rtl8812au/archive/$_gitrev.tar.gz"
+builddir="$srcdir/rtl8812au-$_gitrev"
+options="!check" # No test suite, only sources
+
+prepare() {
+ default_prepare
+
+ cat >AKMBUILD <<-EOF
+ modname=$_modname
+ modver=$_modver
+ built_modules=$_modname.ko
+
+ build() {
+ cp -r "\$srcdir"/* .
+ make \$MAKEFLAGS KVER="\$kernel_ver" KSRC="\$kernel_srcdir" modules
+ }
+ EOF
+}
+
+package() {
+ local destdir="$pkgdir/usr/src/$_modname-$pkgver"
+ install -Dm644 -t "$destdir" AKMBUILD Makefile
+ cp -r core hal include os_dep platform "$destdir"
+}
+
+sha512sums="
+95612734bc1ae349aec7375af910a3acfdb4f1214566c5fc802f766b1d46a8c1cb0663dfe1195c89801926c3b64f61634b3c3dd355dd6b7cf03af9b0efb733ac rtl8812au-src-4a983e47dafc048019412350d36270864f6b5f2d.tar.gz
+"
diff --git a/testing/rtl8821ce-src/APKBUILD b/testing/rtl8821ce-src/APKBUILD
index d19594efb40..4640d64d258 100644
--- a/testing/rtl8821ce-src/APKBUILD
+++ b/testing/rtl8821ce-src/APKBUILD
@@ -1,8 +1,8 @@
# Maintainer: Kevin Daudt <kdaudt@alpinelinux.org>
pkgname=rtl8821ce-src
-_commit=7cda52ecb1486bc51139d6436d50d614c647897b
+_commit=a478095a45d8aa957b45be4f9173c414efcacc6f
_modname=${pkgname%-src}
-pkgver=5_git20210321
+pkgver=5_git20230504
pkgrel=0
pkgdesc="Wifi drivers for Realtek 8821ce (src, AKMS)"
url="https://github.com/tomaspinho/rtl8821ce"
@@ -35,5 +35,5 @@ package() {
}
sha512sums="
-86433347155dc88c4f9cb0a5608847b3ce81180e5dd9953e6e26ce5f259a0daaec7de445733eea4d3366283585407462ead70c53a46a79b93968cf1b065d8533 rtl8821ce-src-7cda52ecb1486bc51139d6436d50d614c647897b.tar.gz
+fcaaf26947f72cd57aa79092bd8c62ac60482cd1029c11ec16fcc0e56d2cc0578086449aab3cf12c5a128c13ffeb952d0f620d099d3d19f04d6a3ae7f0ff75ba rtl8821ce-src-a478095a45d8aa957b45be4f9173c414efcacc6f.tar.gz
"
diff --git a/testing/rtl88x2bu-src/APKBUILD b/testing/rtl88x2bu-src/APKBUILD
index eb023757efb..ec846461fba 100644
--- a/testing/rtl88x2bu-src/APKBUILD
+++ b/testing/rtl88x2bu-src/APKBUILD
@@ -3,9 +3,9 @@
pkgname=rtl88x2bu-src
_modname=${pkgname%-src}
_projname=RTL88x2BU-Linux-Driver
-pkgver=5.13.1_git20220303
+pkgver=5.13.1_git20230711
# No git tags in the repo, but they use version numbers.
-_gitrev=a543f246e3f6b023a98f7146cccec667600a23fe
+_gitrev=12cfcd8cd8ec7115158df3d223510435541ddc32
pkgrel=0
pkgdesc="Kernel module for Realtek rtl88x2bu WiFi chipset (sources, AKMS)"
url="https://github.com/RinCat/RTL88x2BU-Linux-Driver"
@@ -34,10 +34,10 @@ prepare() {
package() {
mkdir -p "$pkgdir"/usr/src/$_modname-$pkgver
- cp -pr */ AKMBUILD LICENSE Makefile halmac.mk rtl8822b.mk \
+ cp -pr ./*/ AKMBUILD LICENSE Makefile halmac.mk rtl8822b.mk \
"$pkgdir"/usr/src/$_modname-$pkgver/
}
sha512sums="
-f37c95887c46dc23f21ac9e635c03903eb476c7f0f8ae0f06c93034bb0a5614b3041f9349374b4050adeb82ff93173953d2d9ad0e5cc9801c0ed1d7a11fe8a60 RTL88x2BU-Linux-Driver-a543f246e3f6b023a98f7146cccec667600a23fe.tar.gz
+98f5c47fc6c37acdc80cc6662198e5e90ff3222e21755b0ed43a608a63fc4e91432e3cb659ad4399228c8a99945ff4138c9b587b95d34ca9da2e068c1fa49b58 RTL88x2BU-Linux-Driver-12cfcd8cd8ec7115158df3d223510435541ddc32.tar.gz
"
diff --git a/testing/rtmidi/APKBUILD b/testing/rtmidi/APKBUILD
index d56906da049..740a82be090 100644
--- a/testing/rtmidi/APKBUILD
+++ b/testing/rtmidi/APKBUILD
@@ -1,7 +1,6 @@
-# Contributor: psykose <alice@ayaya.dev>
-# Maintainer: psykose <alice@ayaya.dev>
+# Maintainer:
pkgname=rtmidi
-pkgver=5.0.0
+pkgver=6.0.0
pkgrel=0
pkgdesc="C++ classes that provide a common API for realtime MIDI input/output"
url="https://github.com/thestk/rtmidi"
@@ -14,9 +13,7 @@ makedepends="
samurai
"
subpackages="$pkgname-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/thestk/rtmidi/archive/refs/tags/$pkgver.tar.gz
- fix-pthread.patch
- "
+source="$pkgname-$pkgver.tar.gz::https://github.com/thestk/rtmidi/archive/refs/tags/$pkgver.tar.gz"
build() {
cmake -B build -G Ninja \
@@ -39,6 +36,5 @@ package() {
}
sha512sums="
-f154905af9a8a85bf543f88035e8744970afe703ea3b4b2f21d85e246cf841fc86b47fd402a81bef27d4233c0d8ccf51943dc2fa42dfdd5447e1f5c3d6634297 rtmidi-5.0.0.tar.gz
-eb04cfc4ff98b793c14e815314da140bba71c10475e99ed93902fc48dc85f22e1102a2b5a2b219b8c1da9e51d08a1541c37970712ac589bff4af55dbfde82713 fix-pthread.patch
+7ff7f85ff86fc019ab7906a46efc986b2a340b2f9a9d504bda85d0afc75921b905b32cb37f87e30ab9d1f13e62587c4ade736dad1609a0880eeab3fe5a936acb rtmidi-6.0.0.tar.gz
"
diff --git a/testing/rtmidi/fix-pthread.patch b/testing/rtmidi/fix-pthread.patch
deleted file mode 100644
index b1948ed3f20..00000000000
--- a/testing/rtmidi/fix-pthread.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-Patch-Source: https://github.com/thestk/rtmidi/pull/278
-From cfe34c02112c256235b62b45895fc2c401fd874d Mon Sep 17 00:00:00 2001
-From: Niclas Rosenvik <youremailsarecrap@gmail.com>
-Date: Sun, 19 Dec 2021 13:56:27 +0100
-Subject: [PATCH] Use posix sched_yield instead of pthread_yield
-
-Use posix sched_yield instead of pthread_yield.
-pthread_yield is linux specific sched_yield is
-a standard posix function. pthread_yield on linux
-is implemented using sched_yield.
-This makes the jack plugin work on other
-platforms than linux.
----
- RtMidi.cpp | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/RtMidi.cpp b/RtMidi.cpp
-index 6a1c89e..88b55e1 100644
---- a/RtMidi.cpp
-+++ b/RtMidi.cpp
-@@ -3092,6 +3092,7 @@ void MidiOutWinMM :: sendMessage( const unsigned char *message, size_t size )
- #include <jack/midiport.h>
- #include <jack/ringbuffer.h>
- #include <pthread.h>
-+#include <sched.h>
- #ifdef HAVE_SEMAPHORE
- #include <semaphore.h>
- #endif
-@@ -3608,7 +3609,7 @@ void MidiOutJack :: sendMessage( const unsigned char *message, size_t size )
- return;
-
- while ( jack_ringbuffer_write_space(data->buff) < sizeof(nBytes) + size )
-- pthread_yield();
-+ sched_yield();
-
- // Write full message to buffer
- jack_ringbuffer_write( data->buff, ( char * ) &nBytes, sizeof( nBytes ) );
diff --git a/testing/rtptools/APKBUILD b/testing/rtptools/APKBUILD
index 67badc14f36..4df57b0d0b3 100644
--- a/testing/rtptools/APKBUILD
+++ b/testing/rtptools/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=rtptools
pkgver=1.22
-pkgrel=1
+pkgrel=2
pkgdesc="RTP Tools"
url="https://www.cs.columbia.edu/irt/software/rtptools/"
arch="all"
diff --git a/testing/rtw89-src/APKBUILD b/testing/rtw89-src/APKBUILD
index 1ac23e93c7e..a11aad39a93 100644
--- a/testing/rtw89-src/APKBUILD
+++ b/testing/rtw89-src/APKBUILD
@@ -2,10 +2,10 @@
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=rtw89-src
_modname=rtw89
-pkgver=7_p20220307
-_gitrev=cacf367ba8ec23ca403bcf1fa3838a27cebdc275
+pkgver=7_p20230725
+_gitrev=3891b68c09df5e023b78c20712c40b85be0436f2
pkgrel=0
-pkgdesc="Driver for Realtek 8852AE, an 802.11ax device for Linux <5.16 (sources)"
+pkgdesc="Driver for Realtek 8852AE, an 802.11ax device for Linux <6.5 (sources)"
url="https://github.com/lwfinger/rtw89"
arch="noarch"
license="GPL-2.0-or-later"
@@ -25,9 +25,9 @@ prepare() {
package() {
install -D -m644 -t "$pkgdir"/usr/src/$_modname-$pkgver \
- *.c *.h *.bin Makefile AKMBUILD
+ ./*.c ./*.h Makefile AKMBUILD
}
sha512sums="
-7233b32372a093912bef23c4b5b57fb95b325d1a67c4fc804c470c8125303b98b4ddec172faa6d0ab7223db26dc7881bad7b9652e82653dda8e41d34a460e14e rtw89-cacf367ba8ec23ca403bcf1fa3838a27cebdc275.tar.gz
+99ec9a99552915a7530714627e10c40f36fd7a431c2506a87cf008484aa220d4f829ea696193fdf5071d8f9fb0c5f8cf17e04e756ba2ebe5a3e1ac151bd62be1 rtw89-3891b68c09df5e023b78c20712c40b85be0436f2.tar.gz
"
diff --git a/testing/rubberband/APKBUILD b/testing/rubberband/APKBUILD
deleted file mode 100644
index db357fadcd3..00000000000
--- a/testing/rubberband/APKBUILD
+++ /dev/null
@@ -1,38 +0,0 @@
-# Contributor: David Demelier <markand@malikania.fr>
-# Maintainer: David Demelier <markand@malikania.fr>
-pkgname=rubberband
-pkgver=2.0.2
-pkgrel=0
-pkgdesc="library for audio time-stretching and pitch-shifting"
-url="https://www.breakfastquay.com/rubberband/"
-arch="all"
-license="GPL-2.0-only"
-makedepends="fftw-dev
- ladspa-dev
- libsamplerate-dev
- libsndfile-dev
- lv2-dev
- meson
- vamp-sdk-dev"
-subpackages="$pkgname-static $pkgname-dev"
-source="https://breakfastquay.com/files/releases/rubberband-$pkgver.tar.bz2"
-options="!check" # No tests
-
-build() {
- abuild-meson \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var \
- --buildtype=plain \
- . output
- meson compile ${JOBS:+-j ${JOBS}} -C output
-}
-
-package() {
- DESTDIR="$pkgdir" meson install --no-rebuild -C output
-}
-
-sha512sums="
-87dc5d59995bf949c35b885bb2eced067d84775bab76692da1202ae7554cb1b8404ca7371c264363e6d55c8978762ed32b446535746061f09e90cfc599adc0a0 rubberband-2.0.2.tar.bz2
-"
diff --git a/testing/ruby-build/APKBUILD b/testing/ruby-build/APKBUILD
index 019284d20c9..51ef784fbc2 100644
--- a/testing/ruby-build/APKBUILD
+++ b/testing/ruby-build/APKBUILD
@@ -1,31 +1,48 @@
# Contributor: Thomas Kienlen <kommander@laposte.net>
# Maintainer: Thomas Kienlen <kommander@laposte.net>
pkgname=ruby-build
-pkgver=20220426
+pkgver=20240319
pkgrel=0
pkgdesc="Compile and install Ruby"
url="https://github.com/rbenv/ruby-build"
arch="noarch"
license="MIT"
depends="
- autoconf
bash
- coreutils
- libffi-dev
- linux-headers
- gdbm-dev
- openssl-dev
- readline-dev
- yaml-dev
- zlib-dev
+ "
+subpackages="
+ $pkgname-doc
+ $pkgname-runtime
"
source="$pkgname-$pkgver.tar.gz::https://github.com/rbenv/ruby-build/archive/v$pkgver.tar.gz"
options="!check" # No test suite
+install="$pkgname.post-install"
package() {
PREFIX="$pkgdir/usr" ./install.sh
+
+ install -Dvm644 LICENSE \
+ -t "$pkgdir"/usr/share/licenses/$pkgname/
+}
+
+runtime() {
+ pkgdesc="ruby-build runtime dependencies"
+
+ depends="
+ autoconf
+ coreutils
+ libffi-dev
+ linux-headers
+ gdbm-dev
+ openssl-dev>3
+ readline-dev
+ yaml-dev
+ zlib-dev
+ "
+
+ mkdir -p "$subpkgdir"
}
sha512sums="
-92732d7ed5b0beb8f7f48fa13a9235255e3ee2de20992f3029d064923714ec4201405b1f68051c49c17c6cc1566d608087560efc0e94b9b9e5b50e584b54243f ruby-build-20220426.tar.gz
+f6f02de61677fcb5146aadd5970c90a0fdad7519a714feb7ad06e5f76c78055a91d4a3c14e1ba8ddc47968ace271842090e02ea4b6f09b32691040fc385403d5 ruby-build-20240319.tar.gz
"
diff --git a/testing/ruby-build/ruby-build.post-install b/testing/ruby-build/ruby-build.post-install
new file mode 100755
index 00000000000..dedec0dd5a7
--- /dev/null
+++ b/testing/ruby-build/ruby-build.post-install
@@ -0,0 +1,11 @@
+#!/bin/sh
+cat <<EOF
+*
+* Building ruby or installing gems with extentions requires more packages
+*
+* Please install: ruby-build-runtime
+* or the following list:
+* autoconf coreutils libffi-dev linux-headers gdbm-dev openssl-dev
+* readline-dev yaml-dev zlib-dev
+*
+EOF
diff --git a/testing/rue/APKBUILD b/testing/rue/APKBUILD
index 869b68c2b2f..b22cf08671f 100644
--- a/testing/rue/APKBUILD
+++ b/testing/rue/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Tom Tsagk <tomtsagk@darkdimension.org>
# Maintainer: Tom Tsagk <tomtsagk@darkdimension.org>
pkgname=rue
-pkgver=0.2.1
-pkgrel=0
+pkgver=0.3.0
+pkgrel=1
pkgdesc="A card game about deduction, love and regret"
url="https://darkdimension.org/games/rue.html"
arch="all"
@@ -21,5 +21,5 @@ package() {
}
sha512sums="
-6d4c76ef0c2a39c766eb7ad27fedafb2a80398b36b5442b7beef9b4005b46a5a1bfc2d2732df45f7d26f2dbf4911ada8e3eaa1e205a5df2c7fd32c06fc694186 rue-0.2.1.tar.gz
+25ce62493b65075749dc91062e483a8a4a66723019241f45768a24fa784358faee8f5aca1f833d9a5b818f2cb49d74f6b37dd31775fc7c4ea6c4194baa5908a2 rue-0.3.0.tar.gz
"
diff --git a/testing/ruff-lsp/APKBUILD b/testing/ruff-lsp/APKBUILD
new file mode 100644
index 00000000000..4185ae44782
--- /dev/null
+++ b/testing/ruff-lsp/APKBUILD
@@ -0,0 +1,40 @@
+# Maintainer: Hugo Osvaldo Barrera <hugo@whynothugo.nl>
+pkgname=ruff-lsp
+pkgver=0.0.53
+pkgrel=0
+pkgdesc="Language Server Protocol implementation for Ruff"
+url="https://github.com/charliermarsh/ruff-lsp"
+arch="all"
+license="MIT"
+depends="
+ py3-gls
+ py3-lsprotocol
+ py3-typing-extensions
+ ruff
+ "
+makedepends="py3-gpep517 py3-installer py3-hatchling"
+checkdepends="py3-lsp-jsonrpc py3-pytest"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/astral-sh/ruff-lsp/archive/refs/tags/v$pkgver.tar.gz"
+options="!check" # no tests ran
+
+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 unittest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/ruff_lsp-$pkgver-py3-none-any.whl
+}
+
+sha512sums="
+a5a14299486943dec3143e54424b631acee619d3d88449de44c4d8167dd7776e2191a8873585acf40959d22f733a7196e275e58a6b4f0919fe8e2858e2d07414 ruff-lsp-0.0.53.tar.gz
+"
diff --git a/testing/runst/APKBUILD b/testing/runst/APKBUILD
new file mode 100644
index 00000000000..42bcb2c194a
--- /dev/null
+++ b/testing/runst/APKBUILD
@@ -0,0 +1,42 @@
+# Contributor: Orhun Parmaksız <orhunparmaksiz@gmail.com>
+# Maintainer: Orhun Parmaksız <orhunparmaksiz@gmail.com>
+pkgname=runst
+pkgver=0.1.7
+pkgrel=0
+pkgdesc="Dead simple notification daemon"
+url="https://github.com/orhun/runst"
+arch="all !s390x"
+license="MIT OR Apache-2.0"
+makedepends="
+ cargo
+ cargo-auditable
+ dbus-glib-dev
+ pango-dev
+ "
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/orhun/runst/archive/v$pkgver.tar.gz"
+options="net"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm 755 "target/release/runst" -t "$pkgdir/usr/bin"
+ install -Dm 644 README.md -t "$pkgdir/usr/share/doc/$pkgname"
+ install -Dm 644 LICENSE-MIT -t "$pkgdir/usr/share/licenses/$pkgname"
+}
+
+sha512sums="
+68ea1e8f48d5b8e76d246c5e3ed20e1a9580adaabb1853280de6b54b3b12a548ab647ccb57371bab9b23d2976d3d8c41fe3164d530db4b5380bd394b62dc3a4f runst-0.1.7.tar.gz
+"
diff --git a/testing/rust-script/APKBUILD b/testing/rust-script/APKBUILD
new file mode 100644
index 00000000000..0a6c0908971
--- /dev/null
+++ b/testing/rust-script/APKBUILD
@@ -0,0 +1,33 @@
+# Contributor: Michał Polański <michal@polanski.me>
+# Maintainer: Michał Polański <michal@polanski.me>
+pkgname=rust-script
+pkgver=0.34.0
+pkgrel=0
+pkgdesc="Run Rust files and expressions as scripts without any setup or compilation step"
+url="https://rust-script.org/"
+license="Apache-2.0 OR MIT"
+arch="all !armhf" # tests hang
+makedepends="cargo cargo-auditable"
+source="https://github.com/fornwall/rust-script/archive/$pkgver/rust-script-$pkgver.tar.gz"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm755 target/release/$pkgname -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+7475526fadba3caaa7035104efba05d49b0b8b40e2fed1cbe0b46750f786d5f8da454ef32fdd1df958c13796ea403e0a67701b58897cf2c623796452dacc231e rust-script-0.34.0.tar.gz
+"
diff --git a/testing/rustdesk-server/APKBUILD b/testing/rustdesk-server/APKBUILD
new file mode 100644
index 00000000000..6a3ee3a9815
--- /dev/null
+++ b/testing/rustdesk-server/APKBUILD
@@ -0,0 +1,54 @@
+# Contributor: alealexpro100 <alealexn@gmail.com>
+# Maintainer: alealexpro100 <alealexn@gmail.com>
+pkgname=rustdesk-server
+_pkgver=1.1.10-3
+pkgver=${_pkgver/-/.}
+pkgrel=0
+pkgdesc="RustDesk Server Program"
+url="https://github.com/rustdesk/rustdesk-server"
+# ppc64le and s390x and riscv64 blocked by ring crate
+arch="all !ppc64le !s390x !riscv64"
+license="GPL-3.0-or-later"
+options="!check net" # RustDesk server has no tests yet
+makedepends="cargo cargo-auditable"
+subpackages="
+ $pkgname-openrc
+ "
+source="
+ $pkgname-$_pkgver.tar.gz::https://github.com/rustdesk/rustdesk-server/archive/refs/tags/$_pkgver.tar.gz
+ hbbr.initd
+ hbbs.initd
+ hbbr.confd
+ hbbs.confd
+ cargo.lock.patch
+ "
+builddir="$srcdir/$pkgname-$_pkgver"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+package() {
+ install="$pkgname.pre-install"
+ install -Dm755 "$builddir/target/release/hbbs" -t "$pkgdir/usr/bin"
+ install -Dm755 "$builddir/target/release/hbbr" -t "$pkgdir/usr/bin"
+ install -Dm755 "$srcdir/hbbs.initd" "$pkgdir/etc/init.d/hbbs"
+ install -Dm755 "$srcdir/hbbr.initd" "$pkgdir/etc/init.d/hbbr"
+ install -Dm644 "$srcdir/hbbs.confd" "$pkgdir/etc/conf.d/hbbs"
+ install -Dm644 "$srcdir/hbbr.confd" "$pkgdir/etc/conf.d/hbbr"
+}
+
+sha512sums="
+aada3d9ec37b85bebb57a798c9fbcb6998b334f25b04fe7dad80fe8362420cfbb6a28c75ced8f1a3a371d7667f67d1840e089cc059a78f0a161b7d63d3ffc73b rustdesk-server-1.1.10-3.tar.gz
+d94a65ec35bb3d61008c46e7c03465223c835dd277741ac2409a73df7902b461c2ac9fa853b9e20a61b56c231932ad75e29872b28a715f1e4df254edacd3f92b hbbr.initd
+87852329c8f1b011bcb9f80727259e9ad3a94332a47512f169604a114362606e51fc819544a5feaf13d22edb2dbabc22d247780acba60c8ac0228b902ed0be6b hbbs.initd
+a4b2a36449f39b0b45d789cc4a05abe489555ce2299068e4d75389e209660220fc9ab54bef7621088a33b1548336ff50183b3acc1a4204005e1d24eeb5a521da hbbr.confd
+cbe32a1d56106f8b169aca211f3a64ac8c81eb14f1e99f96692f4842714f1db142145a8246f733a4dc549f0dd046dfc48b8981d81c9ced205614900ad0a1058d hbbs.confd
+1f5c4b56ae570210424430b127662f4f410fa91dd919400a38daeb3d947c51ac599b147cc3c1c9479baea91498b0e824d3e6251581f9ba82b8fcac707824bef2 cargo.lock.patch
+"
diff --git a/testing/rustdesk-server/cargo.lock.patch b/testing/rustdesk-server/cargo.lock.patch
new file mode 100644
index 00000000000..73aacfcdd17
--- /dev/null
+++ b/testing/rustdesk-server/cargo.lock.patch
@@ -0,0 +1,53 @@
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -702,13 +702,13 @@
+
+ [[package]]
+ name = "getrandom"
+-version = "0.2.6"
++version = "0.2.10"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "9be70c98951c83b8d2f8f60d7065fa6d5146873094452a1008da8c2f1e4205ad"
++checksum = "be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427"
+ dependencies = [
+ "cfg-if",
+ "libc",
+- "wasi 0.10.2+wasi-snapshot-preview1",
++ "wasi",
+ ]
+
+ [[package]]
+@@ -1051,9 +1051,9 @@
+
+ [[package]]
+ name = "libc"
+-version = "0.2.125"
++version = "0.2.143"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "5916d2ae698f6de9bfb891ad7a8d65c09d232dc58cc4ac433c7da3b2fd84bc2b"
++checksum = "edc207893e85c5d6be840e969b496b53d94cec8be2d501b214f50daa97fa8024"
+
+ [[package]]
+ name = "libsodium-sys"
+@@ -1208,7 +1208,7 @@
+ dependencies = [
+ "libc",
+ "log",
+- "wasi 0.11.0+wasi-snapshot-preview1",
++ "wasi",
+ "windows-sys 0.36.1",
+ ]
+
+@@ -2583,12 +2583,6 @@
+ "log",
+ "try-lock",
+ ]
+-
+-[[package]]
+-name = "wasi"
+-version = "0.10.2+wasi-snapshot-preview1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "fd6fbd9a79829dd1ad0cc20627bf1ed606756a7f77edff7b66b7064f9cb327c6"
+
+ [[package]]
+ name = "wasi"
diff --git a/testing/rustdesk-server/hbbr.confd b/testing/rustdesk-server/hbbr.confd
new file mode 100644
index 00000000000..65253cf301e
--- /dev/null
+++ b/testing/rustdesk-server/hbbr.confd
@@ -0,0 +1,11 @@
+# hbbr configuration options
+
+# extra arguments to pass to hbbr
+command_args=""
+# user:group
+command_user="rustdesk:rustdesk"
+directory="/var/lib/rustdesk-server"
+umask=0022
+
+# comment to use traditional service management
+supervisor=supervise-daemon
diff --git a/testing/rustdesk-server/hbbr.initd b/testing/rustdesk-server/hbbr.initd
new file mode 100755
index 00000000000..c704e0adba1
--- /dev/null
+++ b/testing/rustdesk-server/hbbr.initd
@@ -0,0 +1,19 @@
+#!/sbin/openrc-run
+
+name=hbbr
+description="Rust-desk server hbbr daemon"
+command="/usr/bin/hbbr"
+command_background=true
+command_args=${command_args:-"-k _"}
+: ${directory:=/var/lib/rustdesk-server}
+: ${command_user:=rustdesk:rustdesk}
+: ${umask:=0022}
+
+depend() {
+ need net
+ after firewall
+}
+
+start_pre() {
+ checkpath -d -o $command_user "$directory"
+}
diff --git a/testing/rustdesk-server/hbbs.confd b/testing/rustdesk-server/hbbs.confd
new file mode 100644
index 00000000000..74e24ee46c8
--- /dev/null
+++ b/testing/rustdesk-server/hbbs.confd
@@ -0,0 +1,11 @@
+# hbbs configuration options
+
+# extra arguments to pass to hbbs
+command_args=""
+# user:group
+command_user="rustdesk:rustdesk"
+directory="/var/lib/rustdesk-server"
+umask=0022
+
+# comment to use traditional service management
+supervisor=supervise-daemon
diff --git a/testing/rustdesk-server/hbbs.initd b/testing/rustdesk-server/hbbs.initd
new file mode 100755
index 00000000000..0645526f113
--- /dev/null
+++ b/testing/rustdesk-server/hbbs.initd
@@ -0,0 +1,18 @@
+#!/sbin/openrc-run
+
+name=hbbs
+description="Rust-desk server hbbs daemon"
+command="/usr/bin/hbbs"
+command_background=true
+: ${directory:=/var/lib/rustdesk-server}
+: ${command_user:=rustdesk:rustdesk}
+: ${umask:=0022}
+
+depend() {
+ need net hbbr
+ after firewall
+}
+
+start_pre() {
+ checkpath -d -o $command_user "$directory"
+}
diff --git a/testing/rustdesk-server/rustdesk-server.pre-install b/testing/rustdesk-server/rustdesk-server.pre-install
new file mode 100755
index 00000000000..914aca877d3
--- /dev/null
+++ b/testing/rustdesk-server/rustdesk-server.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S rustdesk 2>/dev/null
+adduser -S -D -h /var/lib/rustdesk-server -s /sbin/nologin -G rustdesk -g rustdesk rustdesk 2>/dev/null
+
+exit 0
diff --git a/testing/rustic/APKBUILD b/testing/rustic/APKBUILD
new file mode 100644
index 00000000000..f665b32944e
--- /dev/null
+++ b/testing/rustic/APKBUILD
@@ -0,0 +1,82 @@
+# Contributor: Michał Polański <michal@polanski.me>
+# Maintainer: Michał Polański <michal@polanski.me>
+pkgname=rustic
+# NOTE: do not move out of the testing repository until upstream says it's no longer beta-quality software
+pkgver=0.6.1
+pkgrel=1
+pkgdesc="Fast, encrypted, deduplicated backups"
+url="https://github.com/rustic-rs/rustic"
+license="MIT OR Apache-2.0"
+arch="all !s390x" # fails to build nix crate
+makedepends="
+ cargo
+ cargo-auditable
+ openssl-dev
+ zstd-dev
+ "
+subpackages="
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
+ "
+# NOTE: Keep in sync with rustic_core in Cargo.toml.
+_core_ver=0.1.2
+source="https://github.com/rustic-rs/rustic/archive/v$pkgver/rustic-$pkgver.tar.gz
+ https://github.com/rustic-rs/rustic_core/archive/$_core_ver/rustic_core-$_core_ver.tar.gz
+ make-self-update-optional.patch
+ fix-abscissa_core-features.patch
+ rustic_core-add-tls-native.patch
+ build-with-system-tls.patch
+ "
+options="net" # fetch dependencies
+
+# Disable self-update feature.
+_cargo_opts="--no-default-features --frozen"
+
+prepare() {
+ mkdir -p vendor
+ mv "$srcdir"/rustic_core-$_core_ver vendor/rustic_core
+
+ default_prepare
+
+ # Rust target triple.
+ local target=$(rustc -vV | sed -n 's/host: //p')
+
+ # Build against system-provided zstd.
+ mkdir -p .cargo
+ cat >> .cargo/config.toml <<-EOF
+ [target.$target]
+ zstd = { rustc-link-lib = ["zstd"] }
+ EOF
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build $_cargo_opts --release
+
+ target/release/rustic completions bash > $pkgname.bash
+ target/release/rustic completions fish > $pkgname.fish
+ target/release/rustic completions zsh > $pkgname.zsh
+}
+
+check() {
+ cargo test $_cargo_opts
+}
+
+package() {
+ install -Dm755 target/release/$pkgname -t "$pkgdir"/usr/bin/
+
+ install -Dm644 $pkgname.bash "$pkgdir"/usr/share/bash-completion/completions/$pkgname
+ install -Dm644 $pkgname.fish "$pkgdir"/usr/share/fish/vendor_completions.d/$pkgname.fish
+ install -Dm644 $pkgname.zsh "$pkgdir"/usr/share/zsh/site-functions/_$pkgname
+}
+
+sha512sums="
+44b1e2be7336f74e832c33d06101b2ad1ba79123926bd00f3e4884cd49abd75e727e26636451bc393d154ec438fd9168ae9dce8bfa4ec9ffd371b89b6b426dcd rustic-0.6.1.tar.gz
+a3883df06f927e5a0f786e21ae7bec2d2f6090afbd30828bfe8f16bc706cb755688f6d74e5336fc1fce1cbeb750c954e84039084fcfc2fcc1ffcf560f77c576e rustic_core-0.1.2.tar.gz
+f63047855f5e01ea547b921af54e81dc63559e4dee15811e6cfdbf5e503543bb76b0d2612b660c7adff1751e5564186e386145f61f50d0188e5d8215c2586962 make-self-update-optional.patch
+ef26d102a32cea39ccd69cd5fe20cc18ef9a5157dbbb1b90ae640922d88c3739947ed2900f6e902ea9583f51be66d32cedddf298b306e3d24a6529d9163da5d1 fix-abscissa_core-features.patch
+8d8b40f01ba324987130737b119aaa1a8a330a90263206c7f6eea8c4ba82c35297964a429bc25f87d2a91653f52d1837bca5d305cec684b5aff9df302f2220b7 rustic_core-add-tls-native.patch
+e64ba6947ea0eda3074f267fd05e831b9c66850755200233cd155a7c9b184fb0391a3d5199e5fbc1c2fbdc9d47c277aeb2b00df3f530b1c7fc3c0605a7acfc25 build-with-system-tls.patch
+"
diff --git a/testing/rustic/build-with-system-tls.patch b/testing/rustic/build-with-system-tls.patch
new file mode 100644
index 00000000000..0f1db257c74
--- /dev/null
+++ b/testing/rustic/build-with-system-tls.patch
@@ -0,0 +1,225 @@
+Link with system-provided openssl instead of bundling rustls.
+
+This depends on rustic_core-add-tls-native.patch.
+
+--- a/Cargo.toml
++++ b/Cargo.toml
+@@ -102,7 +102,7 @@
+ [target.'cfg(not(windows))'.dependencies]
+ libc = "0.2.150"
+ [workspace.dependencies]
+-rustic_core = { version = "0.1.2", features = ["cli"] }
++rustic_core = { version = "0.1.2", default-features = false, features = ["cli", "tls-native"] }
+ abscissa_core = { version = "0.7.0", default-features = false, features = ["application"] }
+
+ # logging
+@@ -200,3 +200,6 @@
+ lto = true
+ debug-assertions = false
+ codegen-units = 1
++
++[patch.crates-io]
++rustic_core = { path = "vendor/rustic_core" }
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -1080,6 +1080,21 @@
+ checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
+
+ [[package]]
++name = "foreign-types"
++version = "0.3.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
++dependencies = [
++ "foreign-types-shared",
++]
++
++[[package]]
++name = "foreign-types-shared"
++version = "0.1.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
++
++[[package]]
+ name = "form_urlencoded"
+ version = "1.2.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+@@ -1360,6 +1375,19 @@
+ ]
+
+ [[package]]
++name = "hyper-tls"
++version = "0.5.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905"
++dependencies = [
++ "bytes",
++ "hyper",
++ "native-tls",
++ "tokio",
++ "tokio-native-tls",
++]
++
++[[package]]
+ name = "iana-time-zone"
+ version = "0.1.58"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+@@ -1681,6 +1709,24 @@
+ ]
+
+ [[package]]
++name = "native-tls"
++version = "0.2.11"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "07226173c32f2926027b63cce4bcd8076c3552846cbe7925f3aaffeac0a3b92e"
++dependencies = [
++ "lazy_static",
++ "libc",
++ "log",
++ "openssl",
++ "openssl-probe",
++ "openssl-sys",
++ "schannel",
++ "security-framework",
++ "security-framework-sys",
++ "tempfile",
++]
++
++[[package]]
+ name = "nix"
+ version = "0.27.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+@@ -1757,12 +1803,50 @@
+ checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5"
+
+ [[package]]
++name = "openssl"
++version = "0.10.62"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "8cde4d2d9200ad5909f8dac647e29482e07c3a35de8a13fce7c9c7747ad9f671"
++dependencies = [
++ "bitflags 2.4.1",
++ "cfg-if 1.0.0",
++ "foreign-types",
++ "libc",
++ "once_cell",
++ "openssl-macros",
++ "openssl-sys",
++]
++
++[[package]]
++name = "openssl-macros"
++version = "0.1.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
++dependencies = [
++ "proc-macro2",
++ "quote",
++ "syn 2.0.39",
++]
++
++[[package]]
+ name = "openssl-probe"
+ version = "0.1.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf"
+
+ [[package]]
++name = "openssl-sys"
++version = "0.9.98"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "c1665caf8ab2dc9aef43d1c0023bd904633a6a05cb30b0ad59bec2ae986e57a7"
++dependencies = [
++ "cc",
++ "libc",
++ "pkg-config",
++ "vcpkg",
++]
++
++[[package]]
+ name = "option-ext"
+ version = "0.2.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+@@ -2112,21 +2196,23 @@
+ "http-body",
+ "hyper",
+ "hyper-rustls",
++ "hyper-tls",
+ "ipnet",
+ "js-sys",
+ "log",
+ "mime",
++ "native-tls",
+ "once_cell",
+ "percent-encoding",
+ "pin-project-lite",
+ "rustls",
+- "rustls-native-certs",
+ "rustls-pemfile",
+ "serde",
+ "serde_json",
+ "serde_urlencoded",
+ "system-configuration",
+ "tokio",
++ "tokio-native-tls",
+ "tokio-rustls",
+ "tokio-util",
+ "tower-service",
+@@ -2239,8 +2325,6 @@
+ [[package]]
+ name = "rustic_core"
+ version = "0.1.2"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "a5932066f9e144fc15043c4e0b9a82bfa16c83910243318bdafbb38496c1518a"
+ dependencies = [
+ "aes256ctr_poly1305aes",
+ "aho-corasick",
+@@ -2327,18 +2411,6 @@
+ ]
+
+ [[package]]
+-name = "rustls-native-certs"
+-version = "0.6.3"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "a9aace74cb666635c918e9c12bc0d348266037aa8eb599b5cba565709a8dff00"
+-dependencies = [
+- "openssl-probe",
+- "rustls-pemfile",
+- "schannel",
+- "security-framework",
+-]
+-
+-[[package]]
+ name = "rustls-pemfile"
+ version = "1.0.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+@@ -2960,6 +3032,16 @@
+ ]
+
+ [[package]]
++name = "tokio-native-tls"
++version = "0.3.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2"
++dependencies = [
++ "native-tls",
++ "tokio",
++]
++
++[[package]]
+ name = "tokio-rustls"
+ version = "0.24.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+@@ -3193,6 +3275,12 @@
+ version = "0.1.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d"
++
++[[package]]
++name = "vcpkg"
++version = "0.2.15"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426"
+
+ [[package]]
+ name = "version_check"
diff --git a/testing/rustic/fix-abscissa_core-features.patch b/testing/rustic/fix-abscissa_core-features.patch
new file mode 100644
index 00000000000..719e71f7646
--- /dev/null
+++ b/testing/rustic/fix-abscissa_core-features.patch
@@ -0,0 +1,35 @@
+Patch-Source: https://github.com/rustic-rs/rustic/pull/976
+--
+From b7c61c6e1bc4fec18ff5977169c014b6098a17d9 Mon Sep 17 00:00:00 2001
+From: Jakub Jirutka <jakub@jirutka.cz>
+Date: Sun, 31 Dec 2023 03:37:37 +0100
+Subject: [PATCH] fix(deps): enable abscissa_core testing feature only for dev (#976)
+
+---
+ Cargo.toml | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/Cargo.toml b/Cargo.toml
+index b0260fc..24486f1 100644
+--- a/Cargo.toml
++++ b/Cargo.toml
+@@ -89,6 +89,7 @@ rhai = { workspace = true }
+ simplelog = { workspace = true }
+
+ [dev-dependencies]
++abscissa_core = { workspace = true, features = ["testing"] }
+ aho-corasick = { workspace = true }
+ dircmp = { workspace = true }
+ once_cell = { workspace = true }
+@@ -101,7 +102,7 @@ toml = { workspace = true }
+ libc = "0.2.150"
+ [workspace.dependencies]
+ rustic_core = { version = "0.1.2", features = ["cli"] }
+-abscissa_core = { version = "0.7.0", default-features = false, features = ["application", "testing"] }
++abscissa_core = { version = "0.7.0", default-features = false, features = ["application"] }
+
+ # logging
+ log = "0.4"
+--
+2.43.0
+
diff --git a/testing/rustic/make-self-update-optional.patch b/testing/rustic/make-self-update-optional.patch
new file mode 100644
index 00000000000..ffe5bef4a4d
--- /dev/null
+++ b/testing/rustic/make-self-update-optional.patch
@@ -0,0 +1,101 @@
+Patch-Source: https://github.com/rustic-rs/rustic/pull/975
+--
+From b32769f275adbd719453aefe68785c303664208a Mon Sep 17 00:00:00 2001
+From: Jakub Jirutka <jakub@jirutka.cz>
+Date: Mon, 1 Jan 2024 09:11:13 +0100
+Subject: [PATCH 2/2] feat(cli): Allow building without self-update feature
+ (#975)
+
+Co-authored-by: simonsan <14062932+simonsan@users.noreply.github.com>
+---
+ Cargo.toml | 7 ++++---
+ src/commands.rs | 1 +
+ src/commands/self_update.rs | 13 +++++++++----
+ 3 files changed, 14 insertions(+), 7 deletions(-)
+
+diff --git a/Cargo.toml b/Cargo.toml
+index 24486f1..054a994 100644
+--- a/Cargo.toml
++++ b/Cargo.toml
+@@ -31,9 +31,10 @@ description = { workspace = true }
+ members = ["crates/rustic_testing", "xtask"]
+
+ [features]
+-default = []
++default = ["self-update"]
+ mimalloc = ["dep:mimalloc"]
+ jemallocator = ["dep:jemallocator-global"]
++self-update = ["dep:self_update", "dep:semver"]
+
+ [[bin]]
+ name = "rustic"
+@@ -67,8 +68,8 @@ serde_with = { workspace = true }
+
+ # other dependencies
+ chrono = { workspace = true }
+-self_update = { workspace = true }
+-semver = { workspace = true }
++self_update = { workspace = true, optional = true }
++semver = { workspace = true, optional = true }
+
+ # commands
+ clap = { workspace = true }
+diff --git a/src/commands.rs b/src/commands.rs
+index 07473d3..88432ab 100644
+--- a/src/commands.rs
++++ b/src/commands.rs
+@@ -101,6 +101,7 @@ enum RusticCmd {
+ ShowConfig(ShowConfigCmd),
+
+ /// Update to the latest rustic release
++ #[cfg_attr(not(feature = "self-update"), clap(hide = true))]
+ SelfUpdate(SelfUpdateCmd),
+
+ /// Remove unused data or repack repository pack files
+diff --git a/src/commands/self_update.rs b/src/commands/self_update.rs
+index dff8fb3..f9540e4 100644
+--- a/src/commands/self_update.rs
++++ b/src/commands/self_update.rs
+@@ -5,8 +5,6 @@ use crate::{Application, RUSTIC_APP};
+ use abscissa_core::{status_err, Command, Runnable, Shutdown};
+
+ use anyhow::Result;
+-use self_update::cargo_crate_version;
+-use semver::Version;
+
+ /// `self-update` subcommand
+ #[derive(clap::Parser, Command, Debug)]
+@@ -26,8 +24,9 @@ impl Runnable for SelfUpdateCmd {
+ }
+
+ impl SelfUpdateCmd {
++ #[cfg(feature = "self-update")]
+ fn inner_run(&self) -> Result<()> {
+- let current_version = Version::parse(cargo_crate_version!())?;
++ let current_version = semver::Version::parse(self_update::cargo_crate_version!())?;
+
+ let release = self_update::backends::github::Update::configure()
+ .repo_owner("rustic-rs")
+@@ -40,7 +39,7 @@ impl SelfUpdateCmd {
+
+ let latest_release = release.get_latest_release()?;
+
+- let upstream_version = Version::parse(&latest_release.version)?;
++ let upstream_version = semver::Version::parse(&latest_release.version)?;
+
+ match current_version.cmp(&upstream_version) {
+ std::cmp::Ordering::Greater => {
+@@ -62,4 +61,10 @@ impl SelfUpdateCmd {
+
+ Ok(())
+ }
++ #[cfg(not(feature = "self-update"))]
++ fn inner_run(&self) -> Result<()> {
++ anyhow::bail!(
++ "This version of rustic was built without the \"self-update\" feature. Please use your system package manager to update it."
++ );
++ }
+ }
+--
+2.43.0
+
diff --git a/testing/rustic/rustic_core-add-tls-native.patch b/testing/rustic/rustic_core-add-tls-native.patch
new file mode 100644
index 00000000000..d3903ab938c
--- /dev/null
+++ b/testing/rustic/rustic_core-add-tls-native.patch
@@ -0,0 +1,53 @@
+Patch-Source: https://github.com/rustic-rs/rustic_core/pull/110 (backported)
+--
+From a5360816832236b814da86cd8518c02b3fc3eb05 Mon Sep 17 00:00:00 2001
+From: Jakub Jirutka <jakub@jirutka.cz>
+Date: Sat, 30 Dec 2023 20:28:47 +0100
+Subject: [PATCH] feat: Add tls-native, tls-rustls features to allow building
+ w/o Rustls
+
+diff --git a/Cargo.toml b/Cargo.toml
+index 1582c6b..4d60eef 100644
+--- a/vendor/rustic_core/Cargo.toml
++++ b/vendor/rustic_core/Cargo.toml
+@@ -35,10 +35,13 @@ harness = true
+ edition = "2021"
+
+ [features]
+-default = []
++default = ["tls-rustls"]
+ cli = ["merge", "clap"]
+ merge = ["dep:merge"]
+ clap = ["dep:clap"]
++# tls-native and tls-rustls are mutually exclusive.
++tls-native = ["reqwest/native-tls"]
++tls-rustls = ["reqwest/rustls-tls-native-roots"]
+
+ [package.metadata.docs.rs]
+ all-features = true
+@@ -96,7 +99,7 @@ walkdir = "2.4.0"
+
+ # rest backend
+ backoff = "0.4.0"
+-reqwest = { version = "0.11.22", default-features = false, features = ["json", "rustls-tls-native-roots", "stream", "blocking"] }
++reqwest = { version = "0.11.22", default-features = false, features = ["json", "stream", "blocking"] }
+ url = "2.4.1"
+
+ # rclone backend
+diff --git a/src/lib.rs b/src/lib.rs
+index 04bda03..387b218 100644
+--- a/vendor/rustic_core/src/lib.rs
++++ b/vendor/rustic_core/src/lib.rs
+@@ -139,6 +139,9 @@ This crate exposes a few features for controlling dependency usage.
+ #![allow(rustdoc::private_intra_doc_links)]
+ #![allow(clippy::needless_raw_string_hashes)]
+
++#[cfg(all(feature = "tls-native", feature = "tls-rustls"))]
++compile_error!("features \"tls-native\" and \"tls-rustls\" cannot be enabled at the same time. Please disable one of them.");
++
+ pub(crate) mod archiver;
+ pub(crate) mod backend;
+ pub(crate) mod blob;
+--
+2.43.0
+
diff --git a/testing/rustscan/APKBUILD b/testing/rustscan/APKBUILD
index 1587ea33bb5..c6a8d30da9b 100644
--- a/testing/rustscan/APKBUILD
+++ b/testing/rustscan/APKBUILD
@@ -1,34 +1,42 @@
# Contributor: guddaff <guddaff@protonmail.com>
# Maintainer: guddaff <guddaff@protonmail.com>
pkgname=rustscan
-pkgver=2.1.0
-pkgrel=0
+pkgver=2.1.1
+pkgrel=1
pkgdesc="Modern Port Scanner"
url="https://github.com/RustScan/RustScan"
license="GPL-3.0-or-later"
-# s390x and riscv64 blocked by rust/cargo
-# ppc64le blocked by ring crate
+# ppc64le and s390x and riscv64 blocked by ring crate
# armhf timout while building
-arch="all !s390x !ppc64le !riscv64 !armhf"
-makedepends="cargo python3 perl bash"
-source="$pkgname-$pkgver.tar.gz::https://github.com/RustScan/RustScan/archive/refs/tags/$pkgver.tar.gz
-./Cargo.lock.patch"
+arch="all !ppc64le !armhf !s390x !riscv64"
+makedepends="cargo cargo-auditable"
+checkdepends="bash perl python3"
+source="https://github.com/RustScan/RustScan/archive/$pkgver/rustscan-$pkgver.tar.gz
+ Cargo.lock.patch
+ "
+options="net"
builddir="$srcdir/RustScan-$pkgver"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
build() {
- cargo build --release --locked
+ cargo auditable build --release --frozen
}
check() {
- cargo test --release --locked
+ cargo test --frozen
}
package() {
- cargo install --locked --path . --root="$pkgdir/usr"
- rm "$pkgdir"/usr/.crates*
+ install -Dm755 target/release/rustscan -t "$pkgdir"/usr/bin/
}
sha512sums="
-2d218520ae786bf98f3c81dc0528b5edd294182f4331a98bd739527de6fde74e6546d1268052f857e528cb1aac96c2d6ab47768d189dedd37adf5f7ee9ab7253 rustscan-2.1.0.tar.gz
-ef4cecc5f73870f78025370a17900abfa1fe997ec0913baf867099aa5ffcb5554f063b6c1f78032a3a6ffc67a704faafbd6dd14bcab19331404ff5010e1d57d0 Cargo.lock.patch
+b435e03575cb6b9989615574beed537a47a92a17566df9cb678d8ea1d8aeaf651c4b1e1700b72af5c78a00921e99df59d0f4bfc34e698a8066cabcf42a4c867d rustscan-2.1.1.tar.gz
+8733e358eb6c3a0f2e155f6f779331c5f074eb0d83c55eb49caf4e579946dde7c27f941da8f28824b2f522fadf3ff47255d0e7a68b1904a49336b63405e5f31d Cargo.lock.patch
"
diff --git a/testing/rustscan/Cargo.lock.patch b/testing/rustscan/Cargo.lock.patch
index b428ea9cf95..fc344f627e7 100644
--- a/testing/rustscan/Cargo.lock.patch
+++ b/testing/rustscan/Cargo.lock.patch
@@ -1,27 +1,375 @@
+diff --git a/Cargo.lock b/Cargo.lock
+index f8ce9c2..2381061 100644
--- a/Cargo.lock
+++ b/Cargo.lock
-@@ -37,9 +37,9 @@
+@@ -19,9 +19,9 @@ checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
+
+ [[package]]
+ name = "aho-corasick"
+-version = "0.7.18"
++version = "0.7.20"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "1e37cfd5e7657ada45f742d6e99ca5788580b5c529dc78faf11ece6dc702656f"
++checksum = "cc936419f96fa211c1b9166887b38e5e40b19958e5b895be7c1f93adec7071ac"
+ dependencies = [
+ "memchr",
+ ]
+@@ -37,15 +37,15 @@ dependencies = [
[[package]]
name = "anyhow"
-version = "1.0.56"
-+version = "1.0.57"
++version = "1.0.66"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4361135be9122e0870de935d7c439aef945b9f9ddd4199a553b5270b49c82a27"
-+checksum = "08f9b8508dccb7687a1d6c4ce66b2b0ecef467c94667de27d8d7fe1f8d2a9cdc"
++checksum = "216261ddc8289130e551ddcd5ce8a064710c0d064a4d2895c67151c92b5443f6"
[[package]]
name = "async-channel"
-@@ -140,7 +140,7 @@
+-version = "1.6.1"
++version = "1.8.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "2114d64672151c0c5eaa5e131ec84a74f06e1e559830dabba01ca30605d66319"
++checksum = "cf46fee83e5ccffc220104713af3292ff9bc7c64c7de289f66dae8e38d826833"
+ dependencies = [
+ "concurrent-queue",
+ "event-listener",
+@@ -54,76 +54,68 @@ dependencies = [
+
+ [[package]]
+ name = "async-executor"
+-version = "1.4.1"
++version = "1.5.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "871f9bb5e0a22eeb7e8cf16641feb87c9dc67032ccf8ff49e772eb9941d3a965"
++checksum = "17adb73da160dfb475c183343c8cccd80721ea5a605d3eb57125f0a7b7a92d0b"
+ dependencies = [
++ "async-lock",
+ "async-task",
+ "concurrent-queue",
+ "fastrand",
+ "futures-lite",
+- "once_cell",
+ "slab",
+ ]
+
+ [[package]]
+ name = "async-global-executor"
+-version = "2.0.4"
++version = "2.3.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "c290043c9a95b05d45e952fb6383c67bcb61471f60cfa21e890dba6654234f43"
++checksum = "f1b6f5d7df27bd294849f8eec66ecfc63d11814df7a4f5d74168a2394467b776"
+ dependencies = [
+ "async-channel",
+ "async-executor",
+ "async-io",
+- "async-mutex",
++ "async-lock",
+ "blocking",
+ "futures-lite",
+- "num_cpus",
+ "once_cell",
+ ]
+
+ [[package]]
+ name = "async-io"
+-version = "1.6.0"
++version = "1.12.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "a811e6a479f2439f0c04038796b5cfb3d2ad56c230e0f2d3f7b04d68cfee607b"
++checksum = "8c374dda1ed3e7d8f0d9ba58715f924862c63eae6849c92d3a18e7fbde9e2794"
+ dependencies = [
++ "async-lock",
++ "autocfg",
+ "concurrent-queue",
+ "futures-lite",
+ "libc",
+ "log",
+- "once_cell",
+ "parking",
+ "polling",
+ "slab",
+- "socket2 0.4.4",
++ "socket2 0.4.7",
+ "waker-fn",
+- "winapi 0.3.9",
++ "windows-sys",
+ ]
+
+ [[package]]
+ name = "async-lock"
+-version = "2.5.0"
++version = "2.6.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "e97a171d191782fba31bb902b14ad94e24a68145032b7eedf871ab0bc0d077b6"
+-dependencies = [
+- "event-listener",
+-]
+-
+-[[package]]
+-name = "async-mutex"
+-version = "1.4.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "479db852db25d9dbf6204e6cb6253698f175c15726470f78af0d918e99d6156e"
++checksum = "c8101efe8695a6c17e02911402145357e718ac92d3ff88ae8419e84b1707b685"
+ dependencies = [
+ "event-listener",
++ "futures-lite",
+ ]
+
+ [[package]]
+ name = "async-std"
+-version = "1.11.0"
++version = "1.12.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "52580991739c5cdb36cde8b2a516371c0a3b70dda36d916cc08b82372916808c"
++checksum = "62565bb4402e926b29953c785397c6dc0391b7b446e45008b0049eb43cec6f5d"
+ dependencies = [
+ "async-channel",
+ "async-global-executor",
+@@ -138,9 +130,8 @@ dependencies = [
+ "kv-log-macro",
+ "log",
"memchr",
- "num_cpus",
+- "num_cpus",
"once_cell",
- "pin-project-lite 0.2.8",
+ "pin-project-lite 0.2.9",
"pin-utils",
"slab",
"wasm-bindgen-futures",
-@@ -494,7 +494,7 @@
+@@ -148,15 +139,15 @@ dependencies = [
+
+ [[package]]
+ name = "async-task"
+-version = "4.2.0"
++version = "4.3.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "30696a84d817107fc028e049980e09d5e140e8da8f1caeb17e8e950658a3cea9"
++checksum = "7a40729d2133846d9ed0ea60a8b9541bccddab49cd30f0715a1da672fe9a2524"
+
+ [[package]]
+ name = "async-trait"
+-version = "0.1.53"
++version = "0.1.59"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "ed6aa3524a2dfcf9fe180c51eae2b58738348d819517ceadf95789c51fff7600"
++checksum = "31e6e93155431f3931513b243d371981bb2770112b370c82745a1d19d2f99364"
+ dependencies = [
+ "proc-macro2",
+ "quote",
+@@ -188,9 +179,9 @@ checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
+
+ [[package]]
+ name = "backtrace"
+-version = "0.3.65"
++version = "0.3.66"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "11a17d453482a265fd5f8479f2a3f405566e6ca627837aaddb85af8b1ab8ef61"
++checksum = "cab84319d616cfb654d03394f38ab7e6f0919e181b1b57e1fd15e7fb4077d9a7"
+ dependencies = [
+ "addr2line",
+ "cc",
+@@ -215,23 +206,23 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
+
+ [[package]]
+ name = "blocking"
+-version = "1.2.0"
++version = "1.3.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "c6ccb65d468978a086b69884437ded69a90faab3bbe6e67f242173ea728acccc"
++checksum = "3c67b173a56acffd6d2326fb7ab938ba0b00a71480e14902b2591c87bc5741e8"
+ dependencies = [
+ "async-channel",
++ "async-lock",
+ "async-task",
+ "atomic-waker",
+ "fastrand",
+ "futures-lite",
+- "once_cell",
+ ]
+
+ [[package]]
+ name = "bumpalo"
+-version = "3.9.1"
++version = "3.11.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "a4a45a46ab1f2412e53d3a0ade76ffad2025804294569aae387231a0cd6e0899"
++checksum = "572f695136211188308f16ad2ca5c851a712c464060ae6974944458eb83880ba"
+
+ [[package]]
+ name = "bytes"
+@@ -239,17 +230,11 @@ version = "0.5.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "0e4cec68f03f32e44924783795810fa50a7035d8c8ebe78580ad7e6c703fba38"
+
+-[[package]]
+-name = "cache-padded"
+-version = "1.2.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "c1db59621ec70f09c5e9b597b220c7a2b43611f4710dc03ceb8748637775692c"
+-
+ [[package]]
+ name = "cc"
+-version = "1.0.73"
++version = "1.0.77"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "2fff2a6927b3bb87f9595d67196a70493f627687a71d87a0d692242c33f58c11"
++checksum = "e9f73505338f7d905b19d18738976aae232eb46b8efc15554ffc56deb5d9ebe4"
+
+ [[package]]
+ name = "cfg-if"
+@@ -265,9 +250,9 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
+
+ [[package]]
+ name = "cidr-utils"
+-version = "0.5.6"
++version = "0.5.9"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "aee37eff22e119e0acb33e6e81f85d87a9abf612b82efbcb5fba31b6a74554fb"
++checksum = "355d5b5df67e58b523953d0c1a8d3d2c05f5af51f1332b0199b9c92263614ed0"
+ dependencies = [
+ "debug-helper",
+ "num-bigint",
+@@ -310,28 +295,27 @@ checksum = "0bca1619ff57dd7a56b58a8e25ef4199f123e78e503fe1653410350a1b98ae65"
+
+ [[package]]
+ name = "concurrent-queue"
+-version = "1.2.2"
++version = "2.0.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "30ed07550be01594c6026cff2a1d7fe9c8f683caa798e12b68694ac9e88286a3"
++checksum = "bd7bef69dc86e3c610e4e7aed41035e2a7ed12e72dd7530f61327a6579a4390b"
+ dependencies = [
+- "cache-padded",
++ "crossbeam-utils",
+ ]
+
+ [[package]]
+ name = "crossbeam-utils"
+-version = "0.8.8"
++version = "0.8.14"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "0bf124c720b7686e3c2663cf54062ab0f68a88af2fb6a030e87e30bf721fcb38"
++checksum = "4fb766fa798726286dbbb842f174001dab8abc7b627a1dd86e0b7222a95d929f"
+ dependencies = [
+ "cfg-if 1.0.0",
+- "lazy_static",
+ ]
+
+ [[package]]
+ name = "ctor"
+-version = "0.1.22"
++version = "0.1.26"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "f877be4f7c9f246b183111634f75baa039715e3f46ce860677d3b19a69fb229c"
++checksum = "6d2301688392eb071b0bf1a37be05c469d3cc4dbbd95df672fe28ab021e6a096"
+ dependencies = [
+ "quote",
+ "syn",
+@@ -365,9 +349,9 @@ dependencies = [
+
+ [[package]]
+ name = "either"
+-version = "1.6.1"
++version = "1.8.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457"
++checksum = "90e5c1c8368803113bf0c9584fc495a58b86dc8a29edbf8fe877d21d9507e797"
+
+ [[package]]
+ name = "enum-as-inner"
+@@ -396,26 +380,25 @@ dependencies = [
+
+ [[package]]
+ name = "event-listener"
+-version = "2.5.2"
++version = "2.5.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "77f3309417938f28bf8228fcff79a4a37103981e3e186d2ccd19c74b38f4eb71"
++checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0"
+
+ [[package]]
+ name = "fastrand"
+-version = "1.7.0"
++version = "1.8.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "c3fcf0cee53519c866c09b5de1f6c56ff9d647101f81c1964fa632e148896cdf"
++checksum = "a7a407cfaa3385c4ae6b23e84623d48c2798d06e3e6a1878f7f59f17b3f86499"
+ dependencies = [
+ "instant",
+ ]
+
+ [[package]]
+ name = "form_urlencoded"
+-version = "1.0.1"
++version = "1.1.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "5fc25a87fa4fd2094bffb06925852034d90a17f0d1e05197d4956d3555752191"
++checksum = "a9c384f161156f5260c24a097c56119f9be8c798586aecc13afbcbe7b7e26bf8"
+ dependencies = [
+- "matches",
+ "percent-encoding",
+ ]
+
+@@ -437,9 +420,9 @@ checksum = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7"
+
+ [[package]]
+ name = "futures"
+-version = "0.3.21"
++version = "0.3.25"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "f73fe65f54d1e12b726f517d3e2135ca3125a437b6d998caf1962961f7172d9e"
++checksum = "38390104763dc37a5145a53c29c63c1290b5d316d6086ec32c293f6736051bb0"
+ dependencies = [
+ "futures-channel",
+ "futures-core",
+@@ -452,9 +435,9 @@ dependencies = [
+
+ [[package]]
+ name = "futures-channel"
+-version = "0.3.21"
++version = "0.3.25"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "c3083ce4b914124575708913bca19bfe887522d6e2e6d0952943f5eac4a74010"
++checksum = "52ba265a92256105f45b719605a571ffe2d1f0fea3807304b522c1d778f79eed"
+ dependencies = [
+ "futures-core",
+ "futures-sink",
+@@ -462,15 +445,15 @@ dependencies = [
+
+ [[package]]
+ name = "futures-core"
+-version = "0.3.21"
++version = "0.3.25"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "0c09fd04b7e4073ac7156a9539b57a484a8ea920f79c7c675d05d289ab6110d3"
++checksum = "04909a7a7e4633ae6c4a9ab280aeb86da1236243a77b694a49eacd659a4bd3ac"
+
+ [[package]]
+ name = "futures-executor"
+-version = "0.3.21"
++version = "0.3.25"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "9420b90cfa29e327d0429f19be13e7ddb68fa1cccb09d65e5706b8c7a749b8a6"
++checksum = "7acc85df6714c176ab5edf386123fafe217be88c0840ec11f199441134a074e2"
+ dependencies = [
+ "futures-core",
+ "futures-task",
+@@ -479,9 +462,9 @@ dependencies = [
+
+ [[package]]
+ name = "futures-io"
+-version = "0.3.21"
++version = "0.3.25"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "fc4045962a5a5e935ee2fdedaa4e08284547402885ab326734432bed5d12966b"
++checksum = "00f5fb52a06bdcadeb54e8d3671f8888a39697dcb0b81b23b55174030427f4eb"
+
+ [[package]]
+ name = "futures-lite"
+@@ -494,15 +477,15 @@ dependencies = [
"futures-io",
"memchr",
"parking",
@@ -30,7 +378,45 @@
"waker-fn",
]
-@@ -534,7 +534,7 @@
+ [[package]]
+ name = "futures-macro"
+-version = "0.3.21"
++version = "0.3.25"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "33c1e13800337f4d4d7a316bf45a567dbcb6ffe087f16424852d97e97a91f512"
++checksum = "bdfb8ce053d86b91919aad980c220b1fb8401a9394410e1c289ed7e66b61835d"
+ dependencies = [
+ "proc-macro2",
+ "quote",
+@@ -511,21 +494,21 @@ dependencies = [
+
+ [[package]]
+ name = "futures-sink"
+-version = "0.3.21"
++version = "0.3.25"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "21163e139fa306126e6eedaf49ecdb4588f939600f0b1e770f4205ee4b7fa868"
++checksum = "39c15cf1a4aa79df40f1bb462fb39676d0ad9e366c2a33b590d7c66f4f81fcf9"
+
+ [[package]]
+ name = "futures-task"
+-version = "0.3.21"
++version = "0.3.25"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "57c66a976bf5909d801bbef33416c41372779507e7a6b3a5e25e4749c58f776a"
++checksum = "2ffb393ac5d9a6eaa9d3fdf37ae2776656b706e200c8e16b1bdb227f5198e6ea"
+
+ [[package]]
+ name = "futures-util"
+-version = "0.3.21"
++version = "0.3.25"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "d8b7abd5d659d9b90c8cba917f6ec750a74e2dc23902ef9cd4cc8c8b22e6036a"
++checksum = "197676987abd2f9cadff84926f410af1c183608d36641465df73ae8211dc65d6"
+ dependencies = [
+ "futures-channel",
+ "futures-core",
+@@ -534,19 +517,16 @@ dependencies = [
"futures-sink",
"futures-task",
"memchr",
@@ -39,7 +425,228 @@
"pin-utils",
"slab",
]
-@@ -900,9 +900,9 @@
+
+ [[package]]
+ name = "gcd"
+-version = "2.1.0"
++version = "2.2.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "f37978dab2ca789938a83b2f8bc1ef32db6633af9051a6cd409eff72cbaaa79a"
+-dependencies = [
+- "paste",
+-]
++checksum = "a4b1b088ad0a967aa29540456b82fc8903f854775d33f71e9709c4efb3dfbfd2"
+
+ [[package]]
+ name = "getrandom"
+@@ -561,26 +541,26 @@ dependencies = [
+
+ [[package]]
+ name = "getrandom"
+-version = "0.2.6"
++version = "0.2.8"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "9be70c98951c83b8d2f8f60d7065fa6d5146873094452a1008da8c2f1e4205ad"
++checksum = "c05aeb6a22b8f62540c194aac980f2115af067bfe15a0734d7277a768d396b31"
+ dependencies = [
+ "cfg-if 1.0.0",
+ "libc",
+- "wasi 0.10.2+wasi-snapshot-preview1",
++ "wasi 0.11.0+wasi-snapshot-preview1",
+ ]
+
+ [[package]]
+ name = "gimli"
+-version = "0.26.1"
++version = "0.26.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "78cc372d058dcf6d5ecd98510e7fbc9e5aec4d21de70f65fea8fecebcd881bd4"
++checksum = "22030e2c5a68ec659fde1e949a745124b48e6fa8b045b7ed5bd1fe4ccc5c4e5d"
+
+ [[package]]
+ name = "gloo-timers"
+-version = "0.2.4"
++version = "0.2.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "5fb7d06c1c8cc2a29bee7ec961009a0b2caa0793ee4900c2ffb348734ba1c8f9"
++checksum = "98c4a8d6391675c6b2ee1a6c8d06e8e2d03605c44cec1270675985a4c2a5500b"
+ dependencies = [
+ "futures-channel",
+ "futures-core",
+@@ -640,6 +620,16 @@ dependencies = [
+ "unicode-normalization",
+ ]
+
++[[package]]
++name = "idna"
++version = "0.3.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e14ddfc70884202db2244c223200c204c2bda1bc6e0998d11b5e024d657209e6"
++dependencies = [
++ "unicode-bidi",
++ "unicode-normalization",
++]
++
+ [[package]]
+ name = "instant"
+ version = "0.1.12"
+@@ -681,15 +671,15 @@ dependencies = [
+
+ [[package]]
+ name = "itoa"
+-version = "1.0.1"
++version = "1.0.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "1aab8fc367588b89dcee83ab0fd66b72b50b72fa1904d7095045ace2b0c81c35"
++checksum = "4217ad341ebadf8d8e724e264f13e593e0648f5b3e94b3896a5df283be015ecc"
+
+ [[package]]
+ name = "js-sys"
+-version = "0.3.57"
++version = "0.3.60"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "671a26f820db17c2a2750743f1dd03bafd15b98c9f30c7c2628c024c05d73397"
++checksum = "49409df3e3bf0856b916e2ceaca09ee28e6871cf7d9ce97a692cacfdb2a25a47"
+ dependencies = [
+ "wasm-bindgen",
+ ]
+@@ -721,21 +711,21 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
+
+ [[package]]
+ name = "libc"
+-version = "0.2.124"
++version = "0.2.138"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "21a41fed9d98f27ab1c6d161da622a4fa35e8a54a8adc24bbf3ddd0ef70b0e50"
++checksum = "db6d7e329c562c5dfab7a46a2afabc8b987ab9a4834c9d1ca04dc54c1546cef8"
+
+ [[package]]
+ name = "linked-hash-map"
+-version = "0.5.4"
++version = "0.5.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "7fb9b38af92608140b86b693604b9ffcc5824240a484d1ecd4795bacb2fe88f3"
++checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f"
+
+ [[package]]
+ name = "log"
+-version = "0.4.16"
++version = "0.4.17"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "6389c490849ff5bc16be905ae24bc913a9c8892e19b2341dbc175e14c341c2b8"
++checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e"
+ dependencies = [
+ "cfg-if 1.0.0",
+ "value-bag",
+@@ -764,15 +754,15 @@ checksum = "a3e378b66a060d48947b590737b30a1be76706c8dd7b8ba0f2fe3989c68a853f"
+
+ [[package]]
+ name = "memchr"
+-version = "2.4.1"
++version = "2.5.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "308cc39be01b73d0d18f82a0e7b2a3df85245f84af96fdddc5d202d27e47b86a"
++checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d"
+
+ [[package]]
+ name = "miniz_oxide"
+-version = "0.5.1"
++version = "0.5.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "d2b29bd4bc3f33391105ebee3589c19197c4271e3e5a9ec9bfe8127eeff8f082"
++checksum = "96590ba8f175222643a85693f33d26e9c8a015f599c216509b1a6894af675d34"
+ dependencies = [
+ "adler",
+ ]
+@@ -810,9 +800,9 @@ dependencies = [
+
+ [[package]]
+ name = "net2"
+-version = "0.2.37"
++version = "0.2.38"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "391630d12b68002ae1e25e8f974306474966550ad82dac6886fb8910c19568ae"
++checksum = "74d0df99cfcd2530b2e694f6e17e7f37b8e26bb23983ac530c0c97408837c631"
+ dependencies = [
+ "cfg-if 0.1.10",
+ "libc",
+@@ -832,9 +822,9 @@ dependencies = [
+
+ [[package]]
+ name = "num-integer"
+-version = "0.1.44"
++version = "0.1.45"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "d2cc698a63b549a70bc047073d2949cce27cd1c7b0a4a862d08a8031bc2801db"
++checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9"
+ dependencies = [
+ "autocfg",
+ "num-traits",
+@@ -842,37 +832,27 @@ dependencies = [
+
+ [[package]]
+ name = "num-traits"
+-version = "0.2.14"
++version = "0.2.15"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "9a64b1ec5cda2586e284722486d802acf1f7dbdc623e2bfc57e65ca1cd099290"
++checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd"
+ dependencies = [
+ "autocfg",
+ ]
+
+-[[package]]
+-name = "num_cpus"
+-version = "1.13.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "19e64526ebdee182341572e50e9ad03965aa510cd94427a4549448f285e957a1"
+-dependencies = [
+- "hermit-abi",
+- "libc",
+-]
+-
+ [[package]]
+ name = "object"
+-version = "0.28.3"
++version = "0.29.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "40bec70ba014595f99f7aa110b84331ffe1ee9aece7fe6f387cc7e3ecda4d456"
++checksum = "21158b2c33aa6d4561f1c0a6ea283ca92bc54802a93b263e910746d679a7eb53"
+ dependencies = [
+ "memchr",
+ ]
+
+ [[package]]
+ name = "once_cell"
+-version = "1.10.0"
++version = "1.16.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "87f3e037eac156d1775da914196f0f37741a274155e34a0b7e427c35d2a2ecb9"
++checksum = "86f0b0d4bf799edbc74508c1e8bf170ff5f41238e5f8225603ca7caaae2b7860"
+
+ [[package]]
+ name = "parking"
+@@ -880,17 +860,11 @@ version = "2.0.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "427c3892f9e783d91cc128285287e70a59e206ca452770ece88a76f7a3eddd72"
+
+-[[package]]
+-name = "paste"
+-version = "1.0.7"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "0c520e05135d6e763148b6426a837e239041653ba7becd2e538c076c738025fc"
+-
+ [[package]]
+ name = "percent-encoding"
+-version = "2.1.0"
++version = "2.2.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e"
++checksum = "478c572c3d73181ff3c2539045f6eb99e5491218eae919370993b890cdbdd98e"
+
+ [[package]]
+ name = "pin-project-lite"
+@@ -900,9 +874,9 @@ checksum = "257b64915a082f7811703966789728173279bdebb956b143dbcd23f6f970a777"
[[package]]
name = "pin-project-lite"
@@ -51,28 +658,250 @@
[[package]]
name = "pin-utils"
-@@ -1110,7 +1110,7 @@
+@@ -912,22 +886,23 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
+
+ [[package]]
+ name = "polling"
+-version = "2.2.0"
++version = "2.5.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "685404d509889fade3e86fe3a5803bca2ec09b0c0778d5ada6ec8bf7a8de5259"
++checksum = "166ca89eb77fd403230b9c156612965a81e094ec6ec3aa13663d4c8b113fa748"
+ dependencies = [
++ "autocfg",
+ "cfg-if 1.0.0",
+ "libc",
+ "log",
+ "wepoll-ffi",
+- "winapi 0.3.9",
++ "windows-sys",
+ ]
+
+ [[package]]
+ name = "ppv-lite86"
+-version = "0.2.16"
++version = "0.2.17"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "eb9f9e6e233e5c4a35559a617bf40a4ec447db2e84c20b55a6f83167b7e57872"
++checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de"
+
+ [[package]]
+ name = "proc-macro-error"
+@@ -955,11 +930,11 @@ dependencies = [
+
+ [[package]]
+ name = "proc-macro2"
+-version = "1.0.37"
++version = "1.0.47"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "ec757218438d5fda206afc041538b2f6d889286160d649a86a24d37e1235afd1"
++checksum = "5ea3d908b0e36316caf9e9e2c4625cdde190a7e6f440d794667ed17a1855e725"
+ dependencies = [
+- "unicode-xid",
++ "unicode-ident",
+ ]
+
+ [[package]]
+@@ -970,9 +945,9 @@ checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0"
+
+ [[package]]
+ name = "quote"
+-version = "1.0.18"
++version = "1.0.21"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "a1feb54ed693b93a84e14094943b84b7c4eae204c512b7ccb95ab0c66d278ad1"
++checksum = "bbe448f377a7d6961e30f5955f9b8d106c3f5e449d493ee1b125c1d43c2b5179"
+ dependencies = [
+ "proc-macro2",
+ ]
+@@ -1020,9 +995,9 @@ dependencies = [
+
+ [[package]]
+ name = "redox_syscall"
+-version = "0.2.13"
++version = "0.2.16"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "62f25bc4c7e55e0b0b7a1d43fb893f4fa1361d0abe38b9ce4f323c2adfe6ef42"
++checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a"
+ dependencies = [
+ "bitflags",
+ ]
+@@ -1033,16 +1008,16 @@ version = "0.4.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b"
+ dependencies = [
+- "getrandom 0.2.6",
++ "getrandom 0.2.8",
+ "redox_syscall",
+ "thiserror",
+ ]
+
+ [[package]]
+ name = "regex"
+-version = "1.5.5"
++version = "1.7.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "1a11647b6b25ff05a515cb92c365cec08801e83423a235b51e231e1808747286"
++checksum = "e076559ef8e241f2ae3479e36f97bd5741c0330689e217ad51ce2c76808b868a"
+ dependencies = [
+ "aho-corasick",
+ "memchr",
+@@ -1051,9 +1026,9 @@ dependencies = [
+
+ [[package]]
+ name = "regex-syntax"
+-version = "0.6.25"
++version = "0.6.28"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "f497285884f3fcff424ffc933e56d7cbca511def0c9831a7f9b5f6153e3cc89b"
++checksum = "456c603be3e8d448b072f410900c09faf164fbce2d480456f50eea6e25f9c848"
+
+ [[package]]
+ name = "resolv-conf"
+@@ -1110,7 +1085,7 @@ dependencies = [
[[package]]
name = "rustscan"
--version = "2.0.0"
-+version = "2.1.0"
+-version = "2.1.0"
++version = "2.1.1"
dependencies = [
"ansi_term",
"anyhow",
-@@ -1271,9 +1271,9 @@
+@@ -1139,9 +1114,9 @@ dependencies = [
+
+ [[package]]
+ name = "ryu"
+-version = "1.0.9"
++version = "1.0.11"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "73b4b750c782965c211b42f022f59af1fbceabdd026623714f104152f1ec149f"
++checksum = "4501abdff3ae82a1c1b477a17252eb69cee9e66eb915c1abaa4f44d873df9f09"
+
+ [[package]]
+ name = "sct"
+@@ -1155,18 +1130,18 @@ dependencies = [
+
+ [[package]]
+ name = "serde"
+-version = "1.0.136"
++version = "1.0.150"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "ce31e24b01e1e524df96f1c2fdd054405f8d7376249a5110886fb4b658484789"
++checksum = "e326c9ec8042f1b5da33252c8a37e9ffbd2c9bef0155215b6e6c80c790e05f91"
+ dependencies = [
+ "serde_derive",
+ ]
+
+ [[package]]
+ name = "serde_derive"
+-version = "1.0.136"
++version = "1.0.150"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "08597e7152fcd306f41838ed3e37be9eaeed2b61c42e2117266a554fab4662f9"
++checksum = "42a3df25b0713732468deadad63ab9da1f1fd75a48a15024b50363f128db627e"
+ dependencies = [
+ "proc-macro2",
+ "quote",
+@@ -1175,9 +1150,9 @@ dependencies = [
+
+ [[package]]
+ name = "serde_json"
+-version = "1.0.79"
++version = "1.0.89"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "8e8d9fa5c3b304765ce1fd9c4c8a3de2c8db365a5b91be52f186efc675681d95"
++checksum = "020ff22c755c2ed3f8cf162dbb41a7268d934702f3ed3631656ea597e08fc3db"
+ dependencies = [
+ "itoa",
+ "ryu",
+@@ -1192,15 +1167,18 @@ checksum = "24188a676b6ae68c3b2cb3a01be17fbf7240ce009799bb56d5b1409051e78fde"
+
+ [[package]]
+ name = "slab"
+-version = "0.4.6"
++version = "0.4.7"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "eb703cfe953bccee95685111adeedb76fabe4e97549a58d16f03ea7b9367bb32"
++checksum = "4614a76b2a8be0058caa9dbbaf66d988527d86d003c11a94fbd335d7661edcef"
++dependencies = [
++ "autocfg",
++]
+
+ [[package]]
+ name = "smallvec"
+-version = "1.8.0"
++version = "1.10.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "f2dd574626839106c320a323308629dcb1acfc96e32a8cba364ddc61ac23ee83"
++checksum = "a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0"
+
+ [[package]]
+ name = "socket2"
+@@ -1215,9 +1193,9 @@ dependencies = [
+
+ [[package]]
+ name = "socket2"
+-version = "0.4.4"
++version = "0.4.7"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "66d72b759436ae32898a2af0a14218dbf55efde3feeb170eb623637db85ee1e0"
++checksum = "02e2d2db9033d13a1567121ddd7a095ee144db4e1ca1b1bda3419bc0da294ebd"
+ dependencies = [
+ "libc",
+ "winapi 0.3.9",
+@@ -1261,9 +1239,9 @@ dependencies = [
+
+ [[package]]
+ name = "subprocess"
+-version = "0.2.8"
++version = "0.2.9"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "055cf3ebc2981ad8f0a5a17ef6652f652d87831f79fddcba2ac57bcb9a0aa407"
++checksum = "0c2e86926081dda636c546d8c5e641661049d7562a68f5488be4a1f7f66f6086"
+ dependencies = [
+ "libc",
+ "winapi 0.3.9",
+@@ -1271,13 +1249,13 @@ dependencies = [
[[package]]
name = "syn"
-version = "1.0.91"
-+version = "1.0.92"
++version = "1.0.105"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b683b2b825c8eef438b77c36a06dc262294da3d5a5813fac20da149241dcd44d"
-+checksum = "7ff7c592601f11445996a06f8ad0c27f094a58857c2f89e97974ab9235b92c52"
++checksum = "60b9b43d45702de4c839cb9b51d9f529c5dd26a4aff255b42b1ebc03e88ee908"
+ dependencies = [
+ "proc-macro2",
+ "quote",
+- "unicode-xid",
++ "unicode-ident",
+ ]
+
+ [[package]]
+@@ -1310,18 +1288,18 @@ dependencies = [
+
+ [[package]]
+ name = "thiserror"
+-version = "1.0.30"
++version = "1.0.37"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "854babe52e4df1653706b98fcfc05843010039b406875930a70e4d9644e5c417"
++checksum = "10deb33631e3c9018b9baf9dcbbc4f737320d2b576bac10f6aefa048fa407e3e"
+ dependencies = [
+ "thiserror-impl",
+ ]
+
+ [[package]]
+ name = "thiserror-impl"
+-version = "1.0.30"
++version = "1.0.37"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "aa32fd3f627f367fe16f893e2597ae3c05020f8bba2666a4e6ea73d377e5714b"
++checksum = "982d17546b47146b28f7c22e3d08465f6b8903d0ea13c1660d9d84a6e7adcdbb"
dependencies = [
"proc-macro2",
"quote",
-@@ -1330,9 +1330,9 @@
+@@ -1330,9 +1308,9 @@ dependencies = [
[[package]]
name = "tinyvec"
@@ -84,7 +913,16 @@
dependencies = [
"tinyvec_macros",
]
-@@ -1440,9 +1440,9 @@
+@@ -1390,7 +1368,7 @@ dependencies = [
+ "cfg-if 1.0.0",
+ "enum-as-inner",
+ "futures",
+- "idna",
++ "idna 0.2.3",
+ "lazy_static",
+ "log",
+ "rand",
+@@ -1440,36 +1418,36 @@ dependencies = [
[[package]]
name = "unicode-bidi"
@@ -93,6 +931,229 @@
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1a01404663e3db436ed2746d9fefef640d868edae3cceb81c3b8d5732fda678f"
+checksum = "099b7128301d285f79ddd55b9a83d5e6b9e97c92e0ea0daebee7263e932de992"
++
++[[package]]
++name = "unicode-ident"
++version = "1.0.5"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6ceab39d59e4c9499d4e5a8ee0e2735b891bb7308ac83dfb4e80cad195c9f6f3"
[[package]]
name = "unicode-normalization"
+-version = "0.1.19"
++version = "0.1.22"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "d54590932941a9e9266f0832deed84ebe1bf2e4c9e4a3554d393d18f5e854bf9"
++checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921"
+ dependencies = [
+ "tinyvec",
+ ]
+
+ [[package]]
+ name = "unicode-segmentation"
+-version = "1.9.0"
++version = "1.10.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "7e8820f5d777f6224dc4be3632222971ac30164d4a258d595640799554ebfd99"
++checksum = "0fdbf052a0783de01e944a6ce7a8cb939e295b1e7be835a1112c3b9a7f047a5a"
+
+ [[package]]
+ name = "unicode-width"
+-version = "0.1.9"
++version = "0.1.10"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "3ed742d4ea2bd1176e236172c8429aaf54486e7ac098db29ffe6529e0ce50973"
+-
+-[[package]]
+-name = "unicode-xid"
+-version = "0.2.2"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "8ccb82d61f80a663efe1f787a51b16b5a51e3314d6ac365b08639f52387b33f3"
++checksum = "c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b"
+
+ [[package]]
+ name = "untrusted"
+@@ -1479,21 +1457,20 @@ checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a"
+
+ [[package]]
+ name = "url"
+-version = "2.2.2"
++version = "2.3.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "a507c383b2d33b5fc35d1861e77e6b383d158b2da5e14fe51b83dfedf6fd578c"
++checksum = "0d68c799ae75762b8c3fe375feb6600ef5602c883c5d21eb51c09f22b83c4643"
+ dependencies = [
+ "form_urlencoded",
+- "idna",
+- "matches",
++ "idna 0.3.0",
+ "percent-encoding",
+ ]
+
+ [[package]]
+ name = "value-bag"
+-version = "1.0.0-alpha.8"
++version = "1.0.0-alpha.9"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "79923f7731dc61ebfba3633098bf3ac533bbd35ccd8c57e7088d9a5eebe0263f"
++checksum = "2209b78d1249f7e6f3293657c9779fe31ced465df091bbd433a1cf88e916ec55"
+ dependencies = [
+ "ctor",
+ "version_check",
+@@ -1534,15 +1511,15 @@ checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519"
+
+ [[package]]
+ name = "wasi"
+-version = "0.10.2+wasi-snapshot-preview1"
++version = "0.11.0+wasi-snapshot-preview1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "fd6fbd9a79829dd1ad0cc20627bf1ed606756a7f77edff7b66b7064f9cb327c6"
++checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
+
+ [[package]]
+ name = "wasm-bindgen"
+-version = "0.2.80"
++version = "0.2.83"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "27370197c907c55e3f1a9fbe26f44e937fe6451368324e009cba39e139dc08ad"
++checksum = "eaf9f5aceeec8be17c128b2e93e031fb8a4d469bb9c4ae2d7dc1888b26887268"
+ dependencies = [
+ "cfg-if 1.0.0",
+ "wasm-bindgen-macro",
+@@ -1550,13 +1527,13 @@ dependencies = [
+
+ [[package]]
+ name = "wasm-bindgen-backend"
+-version = "0.2.80"
++version = "0.2.83"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "53e04185bfa3a779273da532f5025e33398409573f348985af9a1cbf3774d3f4"
++checksum = "4c8ffb332579b0557b52d268b91feab8df3615f265d5270fec2a8c95b17c1142"
+ dependencies = [
+ "bumpalo",
+- "lazy_static",
+ "log",
++ "once_cell",
+ "proc-macro2",
+ "quote",
+ "syn",
+@@ -1565,9 +1542,9 @@ dependencies = [
+
+ [[package]]
+ name = "wasm-bindgen-futures"
+-version = "0.4.30"
++version = "0.4.33"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "6f741de44b75e14c35df886aff5f1eb73aa114fa5d4d00dcd37b5e01259bf3b2"
++checksum = "23639446165ca5a5de86ae1d8896b737ae80319560fbaa4c2887b7da6e7ebd7d"
+ dependencies = [
+ "cfg-if 1.0.0",
+ "js-sys",
+@@ -1577,9 +1554,9 @@ dependencies = [
+
+ [[package]]
+ name = "wasm-bindgen-macro"
+-version = "0.2.80"
++version = "0.2.83"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "17cae7ff784d7e83a2fe7611cfe766ecf034111b49deb850a3dc7699c08251f5"
++checksum = "052be0f94026e6cbc75cdefc9bae13fd6052cdcaf532fa6c45e7ae33a1e6c810"
+ dependencies = [
+ "quote",
+ "wasm-bindgen-macro-support",
+@@ -1587,9 +1564,9 @@ dependencies = [
+
+ [[package]]
+ name = "wasm-bindgen-macro-support"
+-version = "0.2.80"
++version = "0.2.83"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "99ec0dc7a4756fffc231aab1b9f2f578d23cd391390ab27f952ae0c9b3ece20b"
++checksum = "07bc0c051dc5f23e307b13285f9d75df86bfdf816c5721e573dec1f9b8aa193c"
+ dependencies = [
+ "proc-macro2",
+ "quote",
+@@ -1600,15 +1577,15 @@ dependencies = [
+
+ [[package]]
+ name = "wasm-bindgen-shared"
+-version = "0.2.80"
++version = "0.2.83"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "d554b7f530dee5964d9a9468d95c1f8b8acae4f282807e7d27d4b03099a46744"
++checksum = "1c38c045535d93ec4f0b4defec448e4291638ee608530863b1e2ba115d4fff7f"
+
+ [[package]]
+ name = "web-sys"
+-version = "0.3.57"
++version = "0.3.60"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "7b17e741662c70c8bd24ac5c5b18de314a2c26c32bf8346ee1e6f53de919c283"
++checksum = "bcda906d8be16e728fd5adc5b729afad4e444e106ab28cd1c7256e54fa61510f"
+ dependencies = [
+ "js-sys",
+ "wasm-bindgen",
+@@ -1691,6 +1668,63 @@ version = "0.4.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
+
++[[package]]
++name = "windows-sys"
++version = "0.42.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7"
++dependencies = [
++ "windows_aarch64_gnullvm",
++ "windows_aarch64_msvc",
++ "windows_i686_gnu",
++ "windows_i686_msvc",
++ "windows_x86_64_gnu",
++ "windows_x86_64_gnullvm",
++ "windows_x86_64_msvc",
++]
++
++[[package]]
++name = "windows_aarch64_gnullvm"
++version = "0.42.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "41d2aa71f6f0cbe00ae5167d90ef3cfe66527d6f613ca78ac8024c3ccab9a19e"
++
++[[package]]
++name = "windows_aarch64_msvc"
++version = "0.42.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "dd0f252f5a35cac83d6311b2e795981f5ee6e67eb1f9a7f64eb4500fbc4dcdb4"
++
++[[package]]
++name = "windows_i686_gnu"
++version = "0.42.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "fbeae19f6716841636c28d695375df17562ca208b2b7d0dc47635a50ae6c5de7"
++
++[[package]]
++name = "windows_i686_msvc"
++version = "0.42.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "84c12f65daa39dd2babe6e442988fc329d6243fdce47d7d2d155b8d874862246"
++
++[[package]]
++name = "windows_x86_64_gnu"
++version = "0.42.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "bf7b1b21b5362cbc318f686150e5bcea75ecedc74dd157d874d754a2ca44b0ed"
++
++[[package]]
++name = "windows_x86_64_gnullvm"
++version = "0.42.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "09d525d2ba30eeb3297665bd434a54297e4170c7f1a44cad4ef58095b4cd2028"
++
++[[package]]
++name = "windows_x86_64_msvc"
++version = "0.42.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f40009d85759725a34da6d89a94e63d7bdc50a862acf0dbc7c8e488f1edcb6f5"
++
+ [[package]]
+ name = "winreg"
+ version = "0.6.2"
diff --git a/testing/rustypaste-cli/APKBUILD b/testing/rustypaste-cli/APKBUILD
new file mode 100644
index 00000000000..73590930948
--- /dev/null
+++ b/testing/rustypaste-cli/APKBUILD
@@ -0,0 +1,38 @@
+# Contributor: Orhun Parmaksız <orhunparmaksiz@gmail.com>
+# Maintainer: Orhun Parmaksız <orhunparmaksiz@gmail.com>
+pkgname=rustypaste-cli
+pkgver=0.9.0
+pkgrel=0
+pkgdesc="CLI tool for rustypaste"
+url="https://github.com/orhun/rustypaste-cli"
+# s390x, ppc64le, riscv64: blocked by ring crate
+arch="all !s390x !ppc64le !riscv64"
+license="MIT"
+makedepends="cargo cargo-auditable"
+subpackages="$pkgname-doc"
+options="net"
+source="$pkgname-$pkgver.tar.gz::https://github.com/orhun/rustypaste-cli/archive/v$pkgver.tar.gz"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release --features use-native-certs
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm 755 "target/release/rpaste" -t "$pkgdir/usr/bin"
+ install -Dm 644 README.md -t "$pkgdir/usr/share/doc/$pkgname"
+ install -Dm 644 LICENSE -t "$pkgdir/usr/share/licenses/$pkgname"
+}
+
+sha512sums="
+7e25ca2a179daf94fbf3a91d2ab602cbc23753da6eb45931937d22c1bf968c9f2dc597a0c32687c373c2d3d28d089da2cb11aedd068ccc49e64cb2a41d2310bf rustypaste-cli-0.9.0.tar.gz
+"
diff --git a/testing/ruuvi-prometheus/APKBUILD b/testing/ruuvi-prometheus/APKBUILD
index 2e964a1cb3b..435fdded786 100644
--- a/testing/ruuvi-prometheus/APKBUILD
+++ b/testing/ruuvi-prometheus/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Joonas Kuorilehto <oss@derbian.fi>
# Maintainer: Joonas Kuorilehto <oss@derbian.fi>
pkgname=ruuvi-prometheus
-pkgver=0.1.2
-pkgrel=6
+pkgver=0.1.7
+pkgrel=2
pkgdesc="Ruuvi sensor Prometheus exporter"
url="https://github.com/joneskoo/ruuvi-prometheus"
license="BSD-2-Clause"
@@ -16,8 +16,12 @@ source="$pkgname-$pkgver.tar.gz::https://github.com/joneskoo/ruuvi-prometheus/ar
ruuvi-prometheus.initd
"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
build() {
- go build -ldflags="-s -w -X main.version=$pkgver"
+ go build -ldflags="-X main.version=$pkgver"
}
package() {
@@ -25,6 +29,7 @@ package() {
install -Dm755 "$srcdir"/ruuvi-prometheus.initd "$pkgdir"/etc/init.d/ruuvi-prometheus
}
-
-sha512sums="d11f6fcf7ae4d9a9575506aa05d7773e5885b98253e10974cf2ad117e5373d7bcc653e30a0546916580e00d77c30032e2cbf3e7a264d02104d2f9087dc99c340 ruuvi-prometheus-0.1.2.tar.gz
-6eb05b76ea6289799f37a0e0d42e663d6bd013b46468126cb2ac3c90bfd3421db7044895d49e059e32e9d3f5e870343b494ab455f2164727b111b647af107d61 ruuvi-prometheus.initd"
+sha512sums="
+97a8d8d3f81391746038cda319686d4c3b5da4b138e1e9b2bc9459007d6e4676a8e58531dbbc69b2f0c4691c3f71c25257714944fe03e5580e140c4d20768687 ruuvi-prometheus-0.1.7.tar.gz
+6eb05b76ea6289799f37a0e0d42e663d6bd013b46468126cb2ac3c90bfd3421db7044895d49e059e32e9d3f5e870343b494ab455f2164727b111b647af107d61 ruuvi-prometheus.initd
+"
diff --git a/testing/rvlprog/APKBUILD b/testing/rvlprog/APKBUILD
new file mode 100644
index 00000000000..129bf947f73
--- /dev/null
+++ b/testing/rvlprog/APKBUILD
@@ -0,0 +1,24 @@
+# Contributor: TBK <alpine@jjtc.eu>
+# Maintainer: TBK <alpine@jjtc.eu>
+pkgname=rvlprog
+pkgver=0.91
+pkgrel=1
+pkgdesc="CLI tool for REVELPROG-IS programmer"
+url="https://gitlab.com/spectrum70/rvlprog"
+arch="all"
+license="GPL-3.0-or-later"
+options="!check" # no test suite
+makedepends="libusb-dev"
+source="https://gitlab.com/spectrum70/rvlprog/-/archive/$pkgver/rvlprog-$pkgver.tar.gz"
+
+build() {
+ export LIBS="-lusb-1.0"
+ ./configure --prefix=/usr
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="cef54e0980345a4a814cbee0dd6a49b10fcf6d9a5660344abba3d2bf79188f5c20298a2befe3fe8ff99df55f01da33a233ca4d17898ce618dd0e456fa51c87db rvlprog-0.91.tar.gz"
diff --git a/testing/ry/APKBUILD b/testing/ry/APKBUILD
index a8eea353a88..40ca5753cdb 100644
--- a/testing/ry/APKBUILD
+++ b/testing/ry/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Thomas Kienlen <kommander@laposte.net>
pkgname=ry
pkgver=0.5.2
-pkgrel=0
+pkgrel=1
pkgdesc="The simplest ruby version manager"
url="https://github.com/jneen/ry"
arch="noarch"
diff --git a/testing/s-postgray/APKBUILD b/testing/s-postgray/APKBUILD
index 20ede030b53..26c605d5c88 100644
--- a/testing/s-postgray/APKBUILD
+++ b/testing/s-postgray/APKBUILD
@@ -1,22 +1,27 @@
# Maintainer: Steffen Nurpmeso <steffen@sdaoden.eu>
pkgname=s-postgray
-pkgver=0.6.0
+pkgver=0.8.2
pkgrel=0
pkgdesc="postfix RFC 6647 graylisting policy server"
url="https://www.sdaoden.eu/code.html#s-toolbox"
arch="all"
license="ISC"
+makedepends="linux-headers"
subpackages="$pkgname-doc"
source="https://ftp.sdaoden.eu/s-postgray-$pkgver.tar.gz"
build() {
- make
+ local sandbox=0
+ case "$CARCH" in
+ x86_64)
+ sandbox=1
+ ;;
+ esac
+ make VAL_OS_SANDBOX=$sandbox
}
check() {
- # May have timing issues on slow boxes!
./s-postgray-test.sh
- #./s-postgray --test-mode >/dev/null
}
package() {
@@ -24,5 +29,5 @@ package() {
}
sha512sums="
-11d0a77db3d4425857ab5d212a938a1c45743c49502eaa6ca78bd675659bbbef9226ae27b11cf94faa1dfc1fbd3d8b022e6afcf4cb1fbb3c15a9cfd951262952 s-postgray-0.6.0.tar.gz
+ed6957d3c64c153953fe13de93b2112c202a2ae8b3214d044deab87ef90a12139bbd611a05b388822de2ac1f2547ce4eaf7d493d47b07610a3a8121b84559b3f s-postgray-0.8.2.tar.gz
"
diff --git a/testing/s3cmd/APKBUILD b/testing/s3cmd/APKBUILD
deleted file mode 100644
index ca6bdfbc3f7..00000000000
--- a/testing/s3cmd/APKBUILD
+++ /dev/null
@@ -1,29 +0,0 @@
-# Contributor: Gennady Feldman <gena01@gmail.com>
-# Maintainer: Gennady Feldman <gena01@gmail.com>
-pkgname=s3cmd
-pkgver=2.2.0
-pkgrel=1
-pkgdesc="Command-line tool for managing Amazon S3 and CloudFront services"
-url="https://github.com/s3tools/s3cmd"
-license="GPL-2.0-or-later"
-arch="noarch"
-depends="python3 py3-dateutil py3-magic"
-makedepends="python3-dev py3-setuptools"
-subpackages="$pkgname-doc"
-source="https://github.com/s3tools/s3cmd/archive/v$pkgver/s3cmd-$pkgver.tar.gz"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 setup.py check
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-4f9fbdf3a10b2319f5eef65dd20d57c2a4d3fb92d3fd99849666767cc40a76c88cc8115b8947ad1deba63f3ff55ceee691f54c95a92054c10ac25549cab72035 s3cmd-2.2.0.tar.gz
-"
diff --git a/testing/s3fs-fuse/APKBUILD b/testing/s3fs-fuse/APKBUILD
deleted file mode 100644
index 89de3b96444..00000000000
--- a/testing/s3fs-fuse/APKBUILD
+++ /dev/null
@@ -1,42 +0,0 @@
-# Contributor: Steeve Chailloux <steeve.chailloux@orus.io>
-# Maintainer: Steeve Chailloux <steeve.chailloux@orus.io>
-pkgname=s3fs-fuse
-pkgver=1.91
-pkgrel=0
-pkgdesc="FUSE-based file system backed by Amazon S3"
-options="!check" # Fails to connect to localhost
-url="https://github.com/s3fs-fuse/s3fs-fuse"
-arch="all"
-license="GPL-2.0-only"
-makedepends="automake autoconf libxml2-dev fuse-dev curl-dev git bash"
-checkdepends="coreutils sed"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/s3fs-fuse/s3fs-fuse/archive/v$pkgver.tar.gz"
-
-prepare() {
- default_prepare
- ./autogen.sh
-}
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-5b57af18395f34885b4b8a98e93b0e3f9043c9af78e415a0a6c15489611d7e21ae619e69655737de369edee15762d8726b82bc2651b5b7f5c20e26fe866a96bc s3fs-fuse-1.91.tar.gz
-"
diff --git a/testing/s5cmd/APKBUILD b/testing/s5cmd/APKBUILD
new file mode 100644
index 00000000000..1994774619f
--- /dev/null
+++ b/testing/s5cmd/APKBUILD
@@ -0,0 +1,37 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=s5cmd
+pkgver=2.2.2
+pkgrel=2
+pkgdesc="Parallel S3 and local filesystem execution tool"
+url="https://github.com/peak/s5cmd"
+arch="all"
+license="MIT"
+makedepends="go"
+checkdepends="shared-mime-info"
+source="$pkgname-$pkgver.tar.gz::https://github.com/peak/s5cmd/archive/refs/tags/v$pkgver.tar.gz"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ local goldflags="
+ -X github.com/peak/s5cmd/v2/version.Version=v$pkgver
+ -X github.com/peak/s5cmd/v2/version.GitCommit=AlpineLinux
+ "
+ go build -v -o bin/$pkgname -ldflags "$goldflags"
+}
+
+check() {
+ # TestAppProxy sometimes fails to spawn a local HTTP server
+ S5CMD_BUILD_BINARY_WITHOUT_RACE_FLAG=1 \
+ go test -skip TestAppProxy ./...
+}
+
+package() {
+ install -Dm755 bin/$pkgname "$pkgdir"/usr/bin/$pkgname
+}
+
+sha512sums="
+8a9ae4247c41a63d41556d259af3093584b712330571c5997f6d41dd2731c01295bf51188cf3aa0a58fbdb4e8f2c7162a0e6bca13f5f716b6f267000a77289c1 s5cmd-2.2.2.tar.gz
+"
diff --git a/testing/sacc/APKBUILD b/testing/sacc/APKBUILD
index 93c5fcfcdd2..f4197a48a6f 100644
--- a/testing/sacc/APKBUILD
+++ b/testing/sacc/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Sascha Paunovic <azarus@posteo.net>
# Maintainer: Sascha Paunovic <azarus@posteo.net>
pkgname=sacc
-pkgver=1.06
+pkgver=1.07
pkgrel=0
pkgdesc="saccomys, simple console gopher client"
url="gopher://bitreich.org/1/scm/sacc"
@@ -21,5 +21,5 @@ package() {
}
sha512sums="
-7a895e432e1d28b7d9b2bb2a5326ca32350876a2c80d39dc6c19e75347d72a4847f1aa4ff11f07e8a9adea14ea71b84d70890dcc170ff6ce0b779e1d6586b4fa sacc-1.06.tar.gz
+df4ea8ba797a0ff826cd6afa3840106bdb0e3d358d790ffbece9537b01819d7f60e13f92318cf1a6d18cf1e0408c6ac4518bb9bd7552a941bd2e9ec3a9c37aa8 sacc-1.07.tar.gz
"
diff --git a/testing/sandbar/APKBUILD b/testing/sandbar/APKBUILD
new file mode 100644
index 00000000000..bd5fa5e7f56
--- /dev/null
+++ b/testing/sandbar/APKBUILD
@@ -0,0 +1,24 @@
+# Contributor: Dmitry Zakharchenko <dmitz@disroot.org>
+# Maintainer: Dmitry Zakharchenko <dmitz@disroot.org>
+pkgname=sandbar
+pkgver=0.1
+pkgrel=0
+pkgdesc="dwm-like bar for the river compositor"
+url="https://github.com/kolunmi/sandbar"
+arch="all"
+license="GPL-3.0-or-later"
+makedepends="fcft-dev wayland-dev wayland-protocols"
+source="$pkgname-$pkgver.tar.gz::https://github.com/kolunmi/sandbar/archive/v$pkgver.tar.gz"
+options="!check" # no test suite
+
+build() {
+ make PREFIX=/usr
+}
+
+package() {
+ make DESTDIR="$pkgdir" PREFIX=/usr install
+}
+
+sha512sums="
+0edd218c6cde8fa47a7df92243348a12d4608c16347dc76fa2e22d387723f191bb02e32b58bc8c5ac0af0f8f7297162c1d22adc61d2a10cccd42fef94891b829 sandbar-0.1.tar.gz
+"
diff --git a/testing/sane-airscan/APKBUILD b/testing/sane-airscan/APKBUILD
index 4cc98fd9f99..1f0b82b96c0 100644
--- a/testing/sane-airscan/APKBUILD
+++ b/testing/sane-airscan/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Alex Yam <alex@alexyam.com>
pkgname=sane-airscan
pkgver=0.99.27
-pkgrel=0
+pkgrel=1
pkgdesc="SANE backend for AirScan (eSCL) and WSD document scanners"
url="https://github.com/alexpevzner/sane-airscan"
arch="all"
@@ -19,15 +19,13 @@ makedepends="
subpackages="$pkgname-doc"
source="$pkgname-$pkgver.tar.gz::https://github.com/alexpevzner/sane-airscan/archive/refs/tags/$pkgver.tar.gz"
-[ "$CARCH" = "riscv64" ] && options="$options textrels"
-
build() {
abuild-meson . output
- meson compile ${JOBS:+-j ${JOBS}} -C output
+ meson compile -C output
}
check() {
- meson test --no-rebuild -v -C output
+ meson test --no-rebuild --print-errorlogs -C output
}
package() {
diff --git a/testing/sanlock/APKBUILD b/testing/sanlock/APKBUILD
deleted file mode 100644
index d600ac73fd5..00000000000
--- a/testing/sanlock/APKBUILD
+++ /dev/null
@@ -1,30 +0,0 @@
-# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
-# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
-pkgname=sanlock
-pkgver=3.8.4
-pkgrel=0
-pkgdesc="lease manager that uses shared storage"
-url="https://pagure.io/sanlock"
-arch="all"
-license="LGPL-2.0-or-later AND GPL-2.0-only AND GPL-2.0-or-later"
-makedepends="linux-headers libaio-dev util-linux-dev python3 python3-dev"
-checkdepends="py3-pytest"
-subpackages="$pkgname-dev $pkgname-doc py3-sanlock:py3"
-source="https://releases.pagure.org/sanlock/sanlock-$pkgver.tar.gz"
-options="!check" # all tests are failing
-
-build() {
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" LIBDIR="/usr/lib" install
-}
-
-py3() {
- amove /usr/lib/python3*
-}
-
-sha512sums="
-9fca2b18fd3bd504d5186de0b2626ea2c993997528de2384dc042afe52b2b68422a2e4bb79e2409c9e6eccbe5ea8d8939549eb25c5d16aa7fecf6c9a5798340c sanlock-3.8.4.tar.gz
-"
diff --git a/testing/sanoid/APKBUILD b/testing/sanoid/APKBUILD
deleted file mode 100644
index a979a456a62..00000000000
--- a/testing/sanoid/APKBUILD
+++ /dev/null
@@ -1,42 +0,0 @@
-# Contributor: Jordan Christiansen <xordspar0@gmail.com>
-# Maintainer: Jordan Christiansen <xordspar0@gmail.com>
-pkgname=sanoid
-pkgver=2.1.0
-pkgrel=0
-pkgdesc="Policy-driven snapshot management and replication tools"
-url="https://github.com/jimsalterjrs/sanoid"
-arch="noarch"
-license="GPL-3.0-only"
-depends="procps perl-config-inifiles perl-capture-tiny"
-_depends_syncoid="procps perl-capture-tiny pv gzip lzop mbuffer"
-checkdepends="bash"
-subpackages="syncoid"
-source="$pkgname-$pkgver.tar.gz::https://github.com/jimsalterjrs/sanoid/archive/v$pkgver.tar.gz
- $pkgname.cron
- $pkgname-prune.cron"
-
-check() {
- tests/run-tests.sh
-}
-
-package() {
- install -Dm775 sanoid "$pkgdir"/usr/bin/sanoid
- install -Dm775 findoid "$pkgdir"/usr/bin/findoid
-
- install -Dm644 sanoid.conf "$pkgdir"/etc/sanoid/sanoid.conf
- install -Dm644 sanoid.defaults.conf "$pkgdir"/etc/sanoid/sanoid.defaults.conf
-
- install -Dm755 "$srcdir"/sanoid.cron "$pkgdir"/etc/periodic/15min/sanoid
- install -Dm755 "$srcdir"/sanoid-prune.cron "$pkgdir"/etc/periodic/15min/sanoid-prune
-}
-
-syncoid() {
- depends="$_depends_syncoid"
- install -Dm775 "$builddir"/syncoid "$subpkgdir"/usr/bin/syncoid
-}
-
-sha512sums="
-d5f3b85f745b5776ae602630a6a8c317612fe4fc3b33f14582aa71fabd25077c26da2fcb7501b7b9794f8a577b798e8676634dcaf24d5ecb39db453dbb769347 sanoid-2.1.0.tar.gz
-9e9a45f19c16dee01581701a22a360bf45a594e99229e99da0af04c8ac5609d75e3721816f8b58f9c4058a57bd9538ab70fa09a697376dac2ced953e04052ea5 sanoid.cron
-47f003f0fdbd8cd1977a449f29a16ea1227eb3d55e693a1badfa3db603158415754b073b7bd7ce4e1f0e6c30e17c6137cdc2a652e48d39802d35ad48173273a0 sanoid-prune.cron
-"
diff --git a/testing/sanoid/sanoid-prune.cron b/testing/sanoid/sanoid-prune.cron
deleted file mode 100644
index 90e046e113e..00000000000
--- a/testing/sanoid/sanoid-prune.cron
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/bin/sh
-sanoid --prune-snapshots
diff --git a/testing/sanoid/sanoid.cron b/testing/sanoid/sanoid.cron
deleted file mode 100644
index 1fdefaf26b5..00000000000
--- a/testing/sanoid/sanoid.cron
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/bin/sh
-TZ=UTC sanoid --take-snapshots
diff --git a/testing/satellite/APKBUILD b/testing/satellite/APKBUILD
index 947b8743220..d8f52500347 100644
--- a/testing/satellite/APKBUILD
+++ b/testing/satellite/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Pedro Lucas Porcellis <porcellis@eletrotupi.com>
pkgname=satellite
pkgver=1.0.0
-pkgrel=5
+pkgrel=20
pkgdesc="Satellite is a small Gemini server for serving static files"
url="https://git.sr.ht/~gsthnz/satellite"
arch="all"
@@ -17,6 +17,10 @@ source="
pkggroups="satellite"
builddir="$srcdir/$pkgname-v$pkgver"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
build() {
make
}
@@ -36,6 +40,7 @@ package() {
install -Dm644 doc/satellite.1 "$pkgdir"/usr/share/man/man1/satellite.1
install -Dm644 doc/satellite.toml.5 "$pkgdir"/usr/share/man/man5/satellite.toml.5
}
+
sha512sums="2b14e6bd7a1b33a0b4cf402e64585f9f87d2491709bd2f383ec0777b24a372fa7360ca7da96d21e61790095554c8029b07cdddc7a23688465ee77f7854beea48 satellite-1.0.0.tar.gz
dcf84f7f09651426189280df73ce683b5a88bc40764e1ae5e0993fe2d9a796e36437c5f064fae120d749f8fd0151ef11296210556408a04441fc01e571f8f6cb satellite.initd
f20f287640743ede9139a12fb7cbbcc9f2f51bc179322e04253e236daf55090aa043e9e01ec7f29cadc965cdb73bbaa86080072840913c88503138df8a04e443 satellite.confd"
diff --git a/testing/satty/APKBUILD b/testing/satty/APKBUILD
new file mode 100644
index 00000000000..10030a95b8d
--- /dev/null
+++ b/testing/satty/APKBUILD
@@ -0,0 +1,52 @@
+# Contributor: Sodface <sod@sodface.com>
+# Maintainer: Sodface <sod@sodface.com>
+pkgname=satty
+pkgver=0.12.0
+pkgrel=0
+pkgdesc="Screenshot annotation tool"
+url="https://github.com/gabm/Satty"
+arch="all"
+license="MPL-2.0"
+makedepends="
+ cargo
+ cargo-auditable
+ gtk4.0-dev
+ libadwaita-dev
+ "
+subpackages="
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
+ "
+options="!check" # no test suite
+source="$pkgname-$pkgver.tar.gz::https://github.com/gabm/Satty/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/Satty-$pkgver"
+
+prepare() {
+ default_prepare
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release
+}
+
+package() {
+ install -Dm755 target/release/satty -t "$pkgdir"/usr/bin
+
+ install -Dm644 satty.desktop \
+ -t "$pkgdir"/usr/share/applications/
+ install -Dm644 assets/satty.svg \
+ -t "$pkgdir"/usr/share/icons/hicolor/scalable/apps
+
+ install -Dm644 completions/satty.bash \
+ "$pkgdir"/usr/share/bash-completion/completions/satty
+ install -Dm644 completions/satty.fish \
+ -t "$pkgdir"/usr/share/fish/vendor_completions.d
+ install -Dm644 completions/_satty \
+ -t "$pkgdir"/usr/share/zsh/site-functions
+}
+
+sha512sums="
+e6ede1ec91f6f70bb3aaacd57ff79f378dbf815663566fbe66d4c8f61624553c5f7268c95fb0f479e728bd5063fb8619beecb6222c7b79105ab4463bf7c6602b satty-0.12.0.tar.gz
+"
diff --git a/testing/sauerbraten/APKBUILD b/testing/sauerbraten/APKBUILD
index f90a6fad0ef..6b19231663a 100644
--- a/testing/sauerbraten/APKBUILD
+++ b/testing/sauerbraten/APKBUILD
@@ -2,7 +2,7 @@
# Contributor: Simon Zeni <simon@zeni.ca>
pkgname=sauerbraten
pkgver=2020.12.29
-pkgrel=0
+pkgrel=3
pkgdesc="Quake-like FPS based on an improved version of the Cube engine"
url="http://www.sauerbraten.org/"
arch="all"
@@ -10,7 +10,6 @@ license="zlib"
makedepends="zlib-dev sdl2-dev sdl2_mixer-dev sdl2_image-dev"
options="!check" # no tests
source="https://downloads.sourceforge.net/sauerbraten/sauerbraten_${pkgver//./_}_linux.tar.bz2
- sdl2_directfb_build_fix.patch
sauerbraten-client
sauerbraten-server
"
@@ -25,7 +24,7 @@ package() {
# Executables
install -Dm755 bin_unix/native_client "$pkgdir"/usr/bin/sauer_client
- install -Dm755 bin_unix/native_server "$pkgdir"/usb/bin/sauer_server
+ install -Dm755 bin_unix/native_server "$pkgdir"/usr/bin/sauer_server
# Launcher scripts
install -Dm755 $srcdir/sauerbraten-client "$pkgdir"/usr/bin/sauerbraten
@@ -39,7 +38,6 @@ package() {
sha512sums="
fd2106e4ed3d48352b5cc2f9d4037933a486e6200ef89bf9e3f31952f4a27ef565f7740d45c32bb9b22da0e17e6542257169134f216bc51a6a465ff311f9bae9 sauerbraten_2020_12_29_linux.tar.bz2
-613a643ee4444c589fe02ef402e48c7b39eb94b9417b5e97a36e2a2df2c5db4105b8168f31fb2f0679e57019fae9a4d3a57308c29a66ccf27282c4c5e03443a2 sdl2_directfb_build_fix.patch
67bc774a3df9c8dc08323b0b4feaf06071daf80d88d0d2a83595443239a6ce58f44c6dfc08296cadaffeb1252f6647a74170d5d133e14bce6e3be6c1bc324fd5 sauerbraten-client
84d7c31c083a5d8c1d149f174edd81b046351ee42141a2896e1eec90019579460f2674e0ac25d0f2307b5302720eb24fb4d0fee1c3bd680d8afa1566c92f2e84 sauerbraten-server
"
diff --git a/testing/sauerbraten/sdl2_directfb_build_fix.patch b/testing/sauerbraten/sdl2_directfb_build_fix.patch
deleted file mode 100644
index 7e892cf1017..00000000000
--- a/testing/sauerbraten/sdl2_directfb_build_fix.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-fixes redefinition of 'void operator delete [](void*, void*)' in directfb from
-SDL2 include
-
---- a/src/engine/main.cpp
-+++ b/src/engine/main.cpp
-@@ -3,6 +3,7 @@
- #include "engine.h"
-
- #ifdef SDL_VIDEO_DRIVER_X11
-+#undef SDL_VIDEO_DRIVER_DIRECTFB
- #include "SDL_syswm.h"
- #endif
-
diff --git a/testing/sbase/APKBUILD b/testing/sbase/APKBUILD
index 8978298fd25..fdc15c2ebd1 100644
--- a/testing/sbase/APKBUILD
+++ b/testing/sbase/APKBUILD
@@ -3,7 +3,7 @@
pkgname=sbase
pkgver=0_git20210730
_gitrev=7d60e2cabbe07495ee74f3d5e705f1e3470148eb
-pkgrel=1
+pkgrel=2
pkgdesc="Suckless collection of portable unix tools"
url="https://core.suckless.org/sbase/"
arch="all"
diff --git a/testing/sblg/APKBUILD b/testing/sblg/APKBUILD
new file mode 100644
index 00000000000..3e8232321c3
--- /dev/null
+++ b/testing/sblg/APKBUILD
@@ -0,0 +1,34 @@
+# Contributor: David Demelier <markand@malikania.fr>
+# Maintainer: David Demelier <markand@malikania.fr>
+pkgname=sblg
+pkgver=0.5.11
+pkgrel=0
+pkgdesc="static blog utility"
+url="https://kristaps.bsd.lv/sblg/"
+arch="all"
+license="ISC"
+makedepends="bmake expat-dev"
+subpackages="$pkgname-doc"
+source="https://kristaps.bsd.lv/sblg/snapshots/sblg-$pkgver.tar.gz"
+
+build() {
+ ./configure MANDIR=/usr/share/man PREFIX=/usr LDFLAGS="$LDFLAGS"
+ bmake
+}
+
+check() {
+ bmake regress
+}
+
+package() {
+ bmake DESTDIR="$pkgdir" install
+}
+
+doc() {
+ default_doc
+ amove usr/share/sblg/examples
+}
+
+sha512sums="
+2741ce27172d702b2f0165d2fe796896fbc2a08b838e486aa61b9ccfe629ba0a09d5e1e9bbea168425c592bb39ae1cc073e0259772009bad5c7186f64558c93c sblg-0.5.11.tar.gz
+"
diff --git a/testing/sblim-sfcc/APKBUILD b/testing/sblim-sfcc/APKBUILD
index 38a099c15b8..48529624a40 100644
--- a/testing/sblim-sfcc/APKBUILD
+++ b/testing/sblim-sfcc/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=sblim-sfcc
pkgver=2.2.8
-pkgrel=1
+pkgrel=2
pkgdesc="Small Footprint CIM Client Library"
url="https://sourceforge.net/projects/sblim/"
arch="all"
diff --git a/testing/sblim-wbemcli/APKBUILD b/testing/sblim-wbemcli/APKBUILD
index 4ecc29bb67a..16f7abe95d7 100644
--- a/testing/sblim-wbemcli/APKBUILD
+++ b/testing/sblim-wbemcli/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Jirka Dutka <jirka@dutka.net>
pkgname=sblim-wbemcli
pkgver=1.6.3
-pkgrel=0
+pkgrel=1
pkgdesc="WBEM Command Line Interface for CIMOM access"
url="https://sourceforge.net/projects/sblim/files/sblim-wbemcli"
arch="all"
diff --git a/testing/sbt/APKBUILD b/testing/sbt/APKBUILD
deleted file mode 100644
index 0980321cb10..00000000000
--- a/testing/sbt/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Contributor: Ed Robinson <edward-robinson@cookpad.com>
-# Maintainer: Ed Robinson <edward-robinson@cookpad.com>
-pkgname=sbt
-pkgver=1.3.13
-pkgrel=2
-pkgdesc="The interactive build tool, sbt is a build tool for Scala, Java, and more."
-url="https://www.scala-sbt.org/"
-arch="noarch !riscv64" # limited by java
-license="BSD-3-Clause"
-options="!check"
-depends="java-jdk bash"
-source="https://github.com/$pkgname/$pkgname/releases/download/v$pkgver/$pkgname-$pkgver.tgz"
-builddir="$srcdir/$pkgname"
-_basedir="/usr/share/java/$pkgname"
-
-package() {
- local destdir="$pkgdir/$_basedir"
- local confdir="$pkgdir/etc/$pkgname"
- cd "$builddir"
-
- install -dm755 "$destdir"/bin || return 1
- install -m755 -t "$destdir"/bin bin/* || return 1
-
- install -dm755 "$confdir" || return 1
- install -m644 -t "$confdir" conf/* || return 1
-
- mkdir -p "$pkgdir"/usr/bin
- ln -s "$_basedir/bin/sbt" "$pkgdir/usr/bin/sbt" || return 1
-
- # Remove windows specific files
- rm $destdir/bin/sbt.bat
- rm $confdir/sbtconfig.txt
-}
-
-sha512sums="578f5d79e7242a18a3058d3930ee3fa9ca5bc57c242f3637e372284659187275217be0682437e2d4f75216e8d5d0c1670dfd99009eef23221163727051721bd9 sbt-1.3.13.tgz"
diff --git a/testing/sc-controller/APKBUILD b/testing/sc-controller/APKBUILD
new file mode 100644
index 00000000000..7cf6156d2af
--- /dev/null
+++ b/testing/sc-controller/APKBUILD
@@ -0,0 +1,53 @@
+# Contributor: Joshua Murphy <joshuamurphy@posteo.net>
+# Maintainer: Joshua Murphy <joshuamurphy@posteo.net>
+pkgname=sc-controller
+pkgver=0.4.8.13
+pkgrel=0
+pkgdesc="User-mode driver and GTK3 based GUI for the Steam Controller"
+url="https://github.com/Ryochan7/sc-controller"
+# s390x: py3-vdf
+arch="all !s390x"
+license="GPL-2.0-only"
+depends="
+ gtk+3.0
+ gtk-layer-shell
+ librsvg
+ libusb
+ py3-cairo
+ py3-evdev
+ py3-gobject3
+ py3-libacl
+ py3-vdf
+ "
+makedepends="
+ linux-headers
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ python3-dev
+ zlib-dev
+ "
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/Ryochan7/sc-controller/archive/v$pkgver.tar.gz"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+f0220a409b3b312d73bbebec8128d8a5871f4a97a53d5d98034a9d2e31ce9f93c3b5d01e87c6d4bf8dea6ad96ffb53bddacfe490dc5068159275cfe6b8313e80 sc-controller-0.4.8.13.tar.gz
+"
diff --git a/testing/sc-im/APKBUILD b/testing/sc-im/APKBUILD
index 8ccc58b2de6..14c166a5b42 100644
--- a/testing/sc-im/APKBUILD
+++ b/testing/sc-im/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Roberto Oliveira <robertoguimaraes8@gmail.com>
# Maintainer: Roberto Oliveira <robertoguimaraes8@gmail.com>
pkgname=sc-im
-pkgver=0.8.2
-pkgrel=1
+pkgver=0.8.3
+pkgrel=0
pkgdesc="ncurses spreadsheet program based on SC"
url="https://github.com/andmarti1424/sc-im"
arch="all"
@@ -21,5 +21,5 @@ package() {
}
sha512sums="
-ae02fd31eb7254208de26802ed6d8b21d77ce2d6997f4a2de5bd2f0a002c763f67f53e6c8e49d66ded096ecd8bf50b1117015e9a0356eaf11c3caef22cf4552c sc-im-0.8.2.tar.gz
+a3d7cf99c7c959d24ebf7e525abb665c02690674c9b3cdf5b234dcdb376fd73e9488bda522106802932084bbfd239928e39b35743c7051178aa14edf61ec2cb8 sc-im-0.8.3.tar.gz
"
diff --git a/testing/sc3-plugins/APKBUILD b/testing/sc3-plugins/APKBUILD
new file mode 100644
index 00000000000..c72830f7eba
--- /dev/null
+++ b/testing/sc3-plugins/APKBUILD
@@ -0,0 +1,34 @@
+# Contributor: Leon ROUX <leon.roux@federate.us>
+# Maintainer: Leon ROUX <leon.roux@federate.us>
+pkgname=sc3-plugins
+pkgver=3.13.0
+pkgrel=1
+pkgdesc="Community plugins for SuperCollider"
+url="https://supercollider.github.io/sc3-plugins/"
+arch="x86_64 x86 aarch64 armv7 armhf" # blocked by supercollider
+license="GPL-3.0-or-later"
+makedepends="
+ cmake
+ fftw-dev
+ samurai
+ supercollider-dev
+ "
+source="https://github.com/supercollider/sc3-plugins/releases/download/Version-$pkgver/sc3-plugins-$pkgver-Source.tar.bz2"
+builddir="$srcdir/sc3-plugins-$pkgver-Source"
+options="!check" # no tests
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DSUPERNOVA=ON
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+4a89bb7d76d60983a8c5ea6560dc9993f585e7dc47593adc2686b772cdb7649423e2cf2c170340c0c7ee16d4a6348877a6572faacfc593a9075da60b9a06988f sc3-plugins-3.13.0-Source.tar.bz2
+"
diff --git a/testing/sc3plugins/APKBUILD b/testing/sc3plugins/APKBUILD
deleted file mode 100644
index a358ae17b54..00000000000
--- a/testing/sc3plugins/APKBUILD
+++ /dev/null
@@ -1,34 +0,0 @@
-# Contributor: Leon ROUX <leon.roux@federate.us>
-# Maintainer: Leon ROUX <leon.roux@federate.us>
-pkgname=sc3plugins
-pkgver=3.11.1
-pkgrel=0
-pkgdesc="Community plugins for SuperCollider"
-url="https://supercollider.github.io/sc3-plugins/"
-arch="x86_64 x86 aarch64 armv7" # blocked by supercollider
-license="GPL-3.0-or-later"
-makedepends="
- cmake
- fftw-dev
- samurai
- supercollider-dev
- "
-source="https://github.com/supercollider/sc3-plugins/releases/download/Version-$pkgver/sc3-plugins-$pkgver-Source.tar.bz2"
-builddir="$srcdir/sc3-plugins-$pkgver-Source"
-options="!check" # no tests
-
-build() {
- cmake -B build -G Ninja \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DSUPERNOVA=ON
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-
-sha512sums="
-5ba79f4e691615ac2a508bad2043a64ab1359cd88f1cf3a258cb3cc218a2d4d2d077d91ad86ff87df4896b8f42ab711b847cb67d9aebbdc9208e1c88513b25aa sc3-plugins-3.11.1-Source.tar.bz2
-"
diff --git a/testing/scaleway-cli/APKBUILD b/testing/scaleway-cli/APKBUILD
new file mode 100644
index 00000000000..91a7cf5aef8
--- /dev/null
+++ b/testing/scaleway-cli/APKBUILD
@@ -0,0 +1,46 @@
+# Contributor: Thomas Kienlen <kommander@laposte.net>
+# Maintainer: Thomas Kienlen <kommander@laposte.net>
+pkgname=scaleway-cli
+pkgver=2.29.0
+pkgrel=0
+pkgdesc="Command-line client for Scaleway Cloud"
+url="https://www.scaleway.com/en/cli"
+arch="all !x86 !armv7 !armhf" # tests are failing for x86, armv7, armhf
+license="Apache-2.0"
+makedepends="go"
+source="$pkgname-$pkgver.tar.gz::https://github.com/scaleway/scaleway-cli/archive/refs/tags/v$pkgver.tar.gz"
+subpackages="
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
+ "
+options="chmod-clean"
+options="!check" # failing on the package builders
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ go build -o scw ./cmd/scw/main.go
+ PATH=. scw autocomplete script shell=bash > bashcomp
+ PATH=. scw autocomplete script shell=fish > fishcomp
+ PATH=. scw autocomplete script shell=zsh > zshcomp
+}
+
+check() {
+ go test -v ./...
+}
+
+package() {
+ install -Dm755 scw "$pkgdir"/usr/bin/scw
+
+ install -Dm644 bashcomp "$pkgdir"/usr/share/bash-completion/completions/scw
+ install -Dm644 fishcomp "$pkgdir"/usr/share/fish/vendor_completions.d/scw.fish
+ install -Dm644 zshcomp "$pkgdir"/usr/share/zsh/site-functions/_scw
+
+}
+
+sha512sums="
+0391d089565156f06fa779283e95591240814249e2275b3b098bac7037c36f906d4e04b4b7b7d2fbc28416dfb691ce0c553518bae45688a2e57e4d6a40a605fd scaleway-cli-2.29.0.tar.gz
+"
diff --git a/testing/scalingo/APKBUILD b/testing/scalingo/APKBUILD
index 987fad3b064..85f2fa96d1d 100644
--- a/testing/scalingo/APKBUILD
+++ b/testing/scalingo/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Thomas Kienlen <kommander@laposte.net>
# Maintainer: Thomas Kienlen <kommander@laposte.net>
pkgname=scalingo
-pkgver=1.22.1
-pkgrel=3
+pkgver=1.30.0
+pkgrel=2
pkgdesc="Command-line client for Scalingo PaaS"
url="https://doc.scalingo.com/cli"
arch="all"
@@ -12,10 +12,12 @@ source="https://github.com/Scalingo/cli/archive/$pkgver/cli-$pkgver.tar.gz"
options="chmod-clean"
builddir="$srcdir/cli-$pkgver"
-export GOPATH="$srcdir"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
build() {
- go build -trimpath -ldflags "-s -w" -o bin/scalingo ./scalingo
+ go build -trimpath -o bin/scalingo ./scalingo
}
check() {
@@ -27,5 +29,5 @@ package() {
}
sha512sums="
-db2c3c6ddd41868595df97c0ce6dba11a91405f570e4a3961be83fb0e6ed777cc733c246b19ef90a8600aec885640886cf664fff60ccc2686fe66a5f84e80fcc cli-1.22.1.tar.gz
+eb155897d3951c78df3a61f4248939be57deded616e3cfba6bd6c06da321cad3a8742bfd43c510451ed30680899d922d6e4f5c54de515a583f222ccbd66f950f cli-1.30.0.tar.gz
"
diff --git a/testing/scap-workbench/APKBUILD b/testing/scap-workbench/APKBUILD
index 5abe19bd5bb..d47f8cd8738 100644
--- a/testing/scap-workbench/APKBUILD
+++ b/testing/scap-workbench/APKBUILD
@@ -2,40 +2,41 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=scap-workbench
pkgver=1.2.1
-pkgrel=0
+pkgrel=2
pkgdesc="SCAP Scanner And Tailoring Graphical User Interface"
url="https://www.open-scap.org/tools/scap-workbench/"
-arch="all !armhf !s390x !riscv64" # blocked by polkit
-license="GPL-3.0"
+arch="all !armhf"
+license="GPL-3.0-or-later"
depends="openssh-askpass util-linux openssh-client polkit"
-makedepends="qt5-qtbase-dev qt5-qtxmlpatterns-dev openscap-dev cmake asciidoc libxslt"
+makedepends="
+ asciidoc
+ cmake
+ libxslt
+ openscap-dev
+ qt5-qtbase-dev
+ qt5-qtxmlpatterns-dev
+ samurai
+ "
subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/OpenSCAP/$pkgname/archive/$pkgver.tar.gz
-remove-werror-cxx-flags.patch"
-builddir="$srcdir/$pkgname-$pkgver"
+source="$pkgname-$pkgver.tar.gz::https://github.com/OpenSCAP/scap-workbench/archive/$pkgver.tar.gz
+ appdata.patch
+ remove-werror-cxx-flags.patch
+ "
+options="!check" # todo
-prepare() {
- default_prepare
- cd "$builddir"
- mkdir -p build
-}
build() {
- cd "$builddir"/build
- cmake \
+ cmake -B build -G Ninja \
-DCMAKE_INSTALL_PREFIX=/usr \
- ..
- make
-}
-
-check() {
- cd "$builddir"/build
- return 0
+ -DCMAKE_BUILD_TYPE=none
+ cmake --build build
}
package() {
- cd "$builddir"/build
- make DESTDIR="$pkgdir" install
+ DESTDIR="$pkgdir" cmake --install build
}
-sha512sums="37dad3d3310a9ba200756480eee2c93913617a77e9983c18dafdc3320fc62774d23b327200fa21f63cec160ef8d6527ac43c11e7d0cdce49b3a364590311fbad scap-workbench-1.2.1.tar.gz
-7434322c26be306f2c73ccf864846f8d8f8857a4def784b7c67c9613010f0ffdefad3a360d86b1945d3e77d1a197e657d1b3a71c9f73d3bee98d1bccb7021c9e remove-werror-cxx-flags.patch"
+sha512sums="
+37dad3d3310a9ba200756480eee2c93913617a77e9983c18dafdc3320fc62774d23b327200fa21f63cec160ef8d6527ac43c11e7d0cdce49b3a364590311fbad scap-workbench-1.2.1.tar.gz
+b2bf0e1cca3f30f4cacf5f584a6e4958077e2907a3821ea98064d6174322d66ad163fc2708adca167db94454246f39bcf8c444074d4ed70a6739ee7af47b8597 appdata.patch
+7434322c26be306f2c73ccf864846f8d8f8857a4def784b7c67c9613010f0ffdefad3a360d86b1945d3e77d1a197e657d1b3a71c9f73d3bee98d1bccb7021c9e remove-werror-cxx-flags.patch
+"
diff --git a/testing/scap-workbench/appdata.patch b/testing/scap-workbench/appdata.patch
new file mode 100644
index 00000000000..29a793fa18c
--- /dev/null
+++ b/testing/scap-workbench/appdata.patch
@@ -0,0 +1,13 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 0e98b7f..d4fb02c 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -284,7 +284,7 @@ install(FILES "share/pixmaps/scap-workbench.png"
+ install(FILES "share/pixmaps/scap-workbench.svg"
+ DESTINATION "${CMAKE_INSTALL_DATADIR}/pixmaps")
+ install(FILES "scap-workbench.appdata.xml"
+- DESTINATION "${CMAKE_INSTALL_DATADIR}/appdata")
++ DESTINATION "${CMAKE_INSTALL_DATADIR}/metainfo")
+
+ if (ASCIIDOC_EXECUTABLE)
+ file(GLOB USER_MANUAL_SCREENSHOTS "${CMAKE_CURRENT_SOURCE_DIR}/doc/user_manual/*.png")
diff --git a/testing/schismtracker/APKBUILD b/testing/schismtracker/APKBUILD
index b4a2bc5cd88..2fb2de43613 100644
--- a/testing/schismtracker/APKBUILD
+++ b/testing/schismtracker/APKBUILD
@@ -1,20 +1,25 @@
# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
pkgname=schismtracker
-pkgver=20210525
-pkgrel=1
+pkgver=20231029
+pkgrel=0
pkgdesc="Oldschool sample-based music composition tool"
-url="http://schismtracker.org/"
+url="https://schismtracker.org/"
arch="all"
license="GPL-2.0-or-later"
depends="python3"
-makedepends="automake autoconf sdl12-compat-dev python3-dev libxext-dev"
+makedepends="
+ alsa-lib-dev
+ automake
+ autoconf
+ flac-dev
+ libxext-dev
+ libxv-dev
+ python3-dev
+ sdl2-dev
+ "
subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/schismtracker/schismtracker/archive/refs/tags/$pkgver.tar.gz"
-
-prepare() {
- default_prepare
- autoreconf -fvi
-}
+source="https://github.com/schismtracker/schismtracker/releases/download/$pkgver/schismtracker-$pkgver.source.tar.gz"
+builddir="$srcdir"
build() {
./configure \
@@ -33,5 +38,5 @@ package() {
}
sha512sums="
-1f20535e4e3b5175ceea803a45b7286a99cab248829c39d11bc85780bc63e0e26c49ad78997a13e290fb4ad2c292d15eeb494a975d53fbe25dec80499e675b16 schismtracker-20210525.tar.gz
+42b01e6945380f346d2bca6c650fcd282df29ddcec0692014e1abb3d215110b455ae95cb0c11de981369adf8d03109e3517c34fb433081d01170d7bc8c29a67d schismtracker-20231029.source.tar.gz
"
diff --git a/testing/schroot/APKBUILD b/testing/schroot/APKBUILD
deleted file mode 100644
index 68894d4229e..00000000000
--- a/testing/schroot/APKBUILD
+++ /dev/null
@@ -1,72 +0,0 @@
-# Contributor: Danct12 <danct12@disroot.org>
-# Maintainer: Danct12 <danct12@disroot.org>
-pkgname=schroot
-pkgver=1.6.10
-pkgrel=4
-pkgdesc="Allows users to execute shell commands under different root filesystems. (Successor to dchroot)."
-url="https://packages.qa.debian.org/s/schroot.html"
-arch="all"
-license="GPL-3.0-or-later"
-makedepends="autoconf automake boost-dev coreutils cppunit-dev groff gettext-dev libtool"
-subpackages="$pkgname-bash-completion $pkgname-dev $pkgname-doc $pkgname-lang"
-source="
- https://deb.debian.org/debian/pool/main/s/schroot/schroot_$pkgver.orig.tar.xz
- https://deb.debian.org/debian/pool/main/s/schroot/schroot_$pkgver-3+deb9u1.debian.tar.xz
- busybox-compat.patch
- getent.patch
- getmntent.patch
- musl.patch
- pam.d.schroot.patch
- remove-networks.patch
- schroot-cppunit.patch
- "
-options="suid !check" # failing testsuite (20 out of 23 passed)
-
-prepare() {
- default_prepare
-
- # shellcheck disable=SC2002
- cat "$srcdir"/debian/patches/series | while read -r p; do
- patch -p1 -i "$srcdir"/debian/patches/"$p"
- done
-
- # invalid sbuild_version
- sed -i "s/@sbuild_version@/$pkgver/g" sbuild/sbuild.pc.in
-
- ./bootstrap
-}
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var \
- --enable-dchroot \
- --enable-lvm-snapshot \
- --enable-btrfs-snapshot \
- --with-bash-completion-dir=/usr/share/bash-completion/completions/ \
- BTRFS=/sbin/btrfs \
- BTRFSCTL=/sbin/btrfsctl \
- LVCREATE=/sbin/lvcreate \
- LVREMOVE=/sbin/lvremove
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-25155989c7811ab4c7bf3cdceaa8d0ffb12f08388143891def96fcd205f1cc401dad9a74f0e9a9ef8610d50174ff8319a8368401431dc87e1a11c0241e61fcbe schroot_1.6.10.orig.tar.xz
-5e6e3e0438151f4ce9a2a9a31c3a814091665efd17cbb050a4374d57d0f7eaf562182e2d075a014969d8a299d6b223c833267b5d7827802927cf7f317ffe54bc schroot_1.6.10-3+deb9u1.debian.tar.xz
-26fd02d3daf3a840685a1f58ffe95ecfa0405e8598eaf85484342a609d13f2c70b7393704cde5f1d85581b73269db2769ccb1d3a4744b05ed5e6675edf1f958d busybox-compat.patch
-fa37b263a59e170734bdfbb046259632baf71b809602f52d532cb3c7ea8c1b45384ebc335233fb983ee0f17e823f157dfb65e56fb511f73f4b261bcfe4fcca6f getent.patch
-21023b63665c6ab3993e8142e684b3d6086b35a15287db806a13013f5df3943383d8bb6063bc73a98d8cc548601ef89ad780e1e3a00b1bca3d239a4b217828e8 getmntent.patch
-c8a87b5d03adcd13bd103a3044da84782ac11eb0d38e1a3267ea41862f5de86c03442289074d0964a861c1bc09222fc2ca60efbe8818338fb4e0583e81a22ec8 musl.patch
-dcdbcb91e7960434ce2d7dc7eeea5b3bae65fa5800221c5cb6ffaf9aaaa45f9c2e0cdfdfe130de035095b2493364f1574dca73421043873adf65533f19791b8f pam.d.schroot.patch
-82542ed4db7f3e00d5531fb3af799f70502d3464db4182a128940db80675bf9b45b2e65a71c891b3b1ee6a6f8dff81c82b844ca65507f076cc54a293003e7088 remove-networks.patch
-229b0be8f45099af122139511bf8137ec01074df0865e33097e8baa80002a22b2e82ce338fb62a2b50ff33c0539242798f35dd9fc5438d3ea06aefc1d94663dd schroot-cppunit.patch
-"
diff --git a/testing/schroot/busybox-compat.patch b/testing/schroot/busybox-compat.patch
deleted file mode 100644
index 98c0dc2d76f..00000000000
--- a/testing/schroot/busybox-compat.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-diff --git a/etc/profile-templates/all/all/nssdatabases b/etc/profile-templates/all/all/nssdatabases
-index 42fa310..815ddce 100644
---- a/etc/profile-templates/all/all/nssdatabases
-+++ b/etc/profile-templates/all/all/nssdatabases
-@@ -4,4 +4,3 @@
- passwd
- shadow
- group
--gshadow
-diff --git a/etc/profile-templates/buildd/all/nssdatabases b/etc/profile-templates/buildd/all/nssdatabases
-index 42fa310..815ddce 100644
---- a/etc/profile-templates/buildd/all/nssdatabases
-+++ b/etc/profile-templates/buildd/all/nssdatabases
-@@ -4,4 +4,3 @@
- passwd
- shadow
- group
--gshadow
-diff --git a/etc/setup.d/20copyfiles b/etc/setup.d/20copyfiles
-index 2c01af9..e427d35 100755
---- a/etc/setup.d/20copyfiles
-+++ b/etc/setup.d/20copyfiles
-@@ -39,9 +39,9 @@ copy_file()
- if [ -e "$2" ]; then
-
- # Device and inode
-- da=$(/usr/bin/stat --format="%d %i" "$1")
-+ da=$(/bin/stat -c "%d %i" "$1")
- # This one can fail since it might not exist yet
-- db=$(/usr/bin/stat --format="%d %i" "$2" 2>/dev/null || :)
-+ db=$(/bin/stat -c "%d %i" "$2" 2>/dev/null || :)
-
- if [ "$da" = "$db" ]; then
- COPY="false"
-diff --git a/etc/setup.d/20nssdatabases b/etc/setup.d/20nssdatabases
-index 6ea83c0..3f4019c 100755
---- a/etc/setup.d/20nssdatabases
-+++ b/etc/setup.d/20nssdatabases
-@@ -42,9 +42,9 @@ if [ $STAGE = "setup-start" ] || [ $STAGE = "setup-recover" ]; then
- fi
-
- # Device and inode
-- dr=$(/usr/bin/stat --format="%d %i" "/etc/$db")
-+ dr=$(/bin/stat -c "%d %i" "/etc/$db")
- # This one can fail since it might not exist yet
-- dc=$(/usr/bin/stat --format="%d %i" "${CHROOT_PATH}/etc/$db" 2>/dev/null || :)
-+ dc=$(/bin/stat -c "%d %i" "${CHROOT_PATH}/etc/$db" 2>/dev/null || :)
-
- # If the database inside and outside the chroot is the
- # same, it's very likely that dup_nss would blank the
diff --git a/testing/schroot/getent.patch b/testing/schroot/getent.patch
deleted file mode 100644
index b89e63c1d49..00000000000
--- a/testing/schroot/getent.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 6ffdd152d3fb07921c02e739ce5b47d1e177e7e6 Mon Sep 17 00:00:00 2001
-From: Andrea Brancaleoni <miwaxe@gmail.com>
-Date: Mon, 24 Aug 2015 18:39:16 +0200
-Subject: [PATCH] getent
-
----
- etc/setup.d/20nssdatabases | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git etc/setup.d/20nssdatabases etc/setup.d/20nssdatabases
-index 6f14c81..697bb1e 100755
---- a/etc/setup.d/20nssdatabases
-+++ b/etc/setup.d/20nssdatabases
-@@ -29,7 +29,7 @@ set -e
- dup_nss()
- {
- info "Copying $1 database to $2"
-- getent "$1" > "$2"
-+ getent "$1" > "$2" 2>/dev/null || cat "/etc/$1" > "$2"
- }
-
- if [ $STAGE = "setup-start" ] || [ $STAGE = "setup-recover" ]; then
---
-2.5.0
-
diff --git a/testing/schroot/getmntent.patch b/testing/schroot/getmntent.patch
deleted file mode 100644
index 8453bfb3a30..00000000000
--- a/testing/schroot/getmntent.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-From db62a534ebcf60391d9e0acffa641e60dfba18fb Mon Sep 17 00:00:00 2001
-From: Andrea Brancaleoni <abc@pompel.me>
-Date: Wed, 19 Sep 2018 10:36:36 +0200
-Subject: [PATCH] getmntent fix
-
----
- sbuild/sbuild-mntstream.cc | 15 ++-------------
- sbuild/sbuild-mntstream.h | 3 +--
- 2 files changed, 3 insertions(+), 15 deletions(-)
-
-diff --git sbuild/sbuild-mntstream.cc sbuild/sbuild-mntstream.cc
-index d376fe5..d7324e7 100644
---- a/sbuild/sbuild-mntstream.cc
-+++ b/sbuild/sbuild-mntstream.cc
-@@ -37,9 +37,7 @@ namespace
- emap init_errors[] =
- {
- // TRANSLATORS: %1% = mount file name
-- emap(mntstream::MNT_OPEN, N_("Failed to open mount file ‘%1%’")),
-- // TRANSLATORS: %1% = mount file name
-- emap(mntstream::MNT_READ, N_("Failed to read mount file ‘%1%’"))
-+ emap(mntstream::MNT_OPEN, N_("Failed to open mount file ‘%1%’"))
- };
-
- }
-@@ -109,16 +107,7 @@ mntstream::read(int quantity)
- errno = 0;
- entry = getmntent(mntfile);
-
-- if (entry == 0) // EOF or error
-- {
-- //std::cerr << "Mount file read error: ";
-- if (errno) // error
-- {
-- this->error_status = true;
-- throw error(this->file, MNT_READ, strerror(errno));
-- }
-- return;
-- }
-+ if (entry == 0) return;
-
- mntentry newentry(*entry); // make a mntentry
- this->data.push_back(newentry); // push onto the end of the list
-diff --git sbuild/sbuild-mntstream.h sbuild/sbuild-mntstream.h
-index ea3d179..fffcdf4 100644
---- a/sbuild/sbuild-mntstream.h
-+++ b/sbuild/sbuild-mntstream.h
-@@ -49,8 +49,7 @@ namespace sbuild
- /// Error codes.
- enum error_code
- {
-- MNT_OPEN, ///< Failed to open mount file.
-- MNT_READ ///< Failed to read mount file.
-+ MNT_OPEN ///< Failed to open mount file.
- };
-
- /// Exception type.
---
-2.19.0
-
diff --git a/testing/schroot/musl.patch b/testing/schroot/musl.patch
deleted file mode 100644
index 8e27ad7e4cc..00000000000
--- a/testing/schroot/musl.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-From 73936a423227aa78b7682bdd3edc20643763807b Mon Sep 17 00:00:00 2001
-From: Andrea Brancaleoni <abc@pompel.me>
-Date: Wed, 19 Sep 2018 11:22:47 +0200
-Subject: [PATCH] musl
-
----
- sbuild/sbuild-feature.cc | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git sbuild/sbuild-feature.cc sbuild/sbuild-feature.cc
-index 5ac4725..9902db3 100644
---- a/sbuild/sbuild-feature.cc
-+++ b/sbuild/sbuild-feature.cc
-@@ -20,6 +20,8 @@
-
- #include <iostream>
-
-+#include <libintl.h>
-+
- #include "sbuild-feature.h"
-
- using namespace sbuild;
---
-2.19.0
-
-diff --git a/sbuild/Makefile.am b/sbuild/Makefile.am
-index 03b5c7b..afa7638 100644
---- a/sbuild/Makefile.am
-+++ b/sbuild/Makefile.am
-@@ -222,7 +222,7 @@ pkgconfigdata_DATA = sbuild.pc
- # Uncomment to build a versioned library
- libsbuild_version = -version-info $(SBUILD_CURRENT_INTERFACE):$(SBUILD_INTERFACE_AGE):$(SBUILD_BINARY_AGE)
- libsbuild_la_LDFLAGS = $(libsbuild_version) \
-- -rpath $(libdir) -no-undefined
-+ -rpath $(libdir) -no-undefined -lintl
-
- EXTRA_DIST = \
- CMakeLists.txt \
-diff --git a/test/Makefile.in b/test/Makefile.in
-index ce78448..efbc287 100644
---- a/test/Makefile.in
-+++ b/test/Makefile.in
-@@ -334,7 +334,7 @@ am__v_CC_1 =
- CCLD = $(CC)
- LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
- $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
-- $(AM_LDFLAGS) $(LDFLAGS) -o $@
-+ $(AM_LDFLAGS) $(LDFLAGS) -lcppunit -o $@
- AM_V_CCLD = $(am__v_CCLD_@AM_V@)
- am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
- am__v_CCLD_0 = @echo " CCLD " $@;
diff --git a/testing/schroot/pam.d.schroot.patch b/testing/schroot/pam.d.schroot.patch
deleted file mode 100644
index ec63323b0b6..00000000000
--- a/testing/schroot/pam.d.schroot.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/etc/pam/schroot
-+++ b/etc/pam/schroot
-@@ -23,13 +23,9 @@
- # time restrainst on schroot usage.
- # account requisite pam_time.so
-
--# The standard Unix authentication modules, used with
--# NIS (man nsswitch) as well as normal /etc/passwd and
--# /etc/shadow entries.
--@include common-auth
--@include common-account
--@include common-session
--
-+account required pam_unix.so
-+session required pam_unix.so
-+
- # Sets up user limits, please uncomment and read /etc/security/limits.conf
- # to enable this functionality.
- # session required pam_limits.so
-
diff --git a/testing/schroot/remove-networks.patch b/testing/schroot/remove-networks.patch
deleted file mode 100644
index 75066693480..00000000000
--- a/testing/schroot/remove-networks.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From e59bc1b6c6535ec8ab8a57004351718ab2677196 Mon Sep 17 00:00:00 2001
-From: Andrea Brancaleoni <abc@pompel.me>
-Date: Wed, 19 Sep 2018 12:36:41 +0200
-Subject: [PATCH] remove networks
-
----
- etc/profile-templates/buildd/all/copyfiles | 1 -
- etc/profile-templates/default/all/nssdatabases | 1 -
- etc/profile-templates/desktop/all/nssdatabases | 1 -
- 3 files changed, 3 deletions(-)
-
-diff --git etc/profile-templates/buildd/all/copyfiles etc/profile-templates/buildd/all/copyfiles
-index fe18fb3..2469d3e 100644
---- a/etc/profile-templates/buildd/all/copyfiles
-+++ b/etc/profile-templates/buildd/all/copyfiles
-@@ -3,4 +3,3 @@
- # <source and destination>
- /etc/hosts
- /etc/resolv.conf
--/etc/networks
-diff --git etc/profile-templates/default/all/nssdatabases etc/profile-templates/default/all/nssdatabases
-index a9f1319..22efe1b 100644
---- a/etc/profile-templates/default/all/nssdatabases
-+++ b/etc/profile-templates/default/all/nssdatabases
-@@ -1,4 +1,3 @@
- services
- protocols
--networks
- hosts
-diff --git etc/profile-templates/desktop/all/nssdatabases etc/profile-templates/desktop/all/nssdatabases
-index a9f1319..22efe1b 100644
---- a/etc/profile-templates/desktop/all/nssdatabases
-+++ b/etc/profile-templates/desktop/all/nssdatabases
-@@ -1,4 +1,3 @@
- services
- protocols
--networks
- hosts
---
-2.19.0
-
diff --git a/testing/schroot/schroot-cppunit.patch b/testing/schroot/schroot-cppunit.patch
deleted file mode 100644
index 3e11c73fd40..00000000000
--- a/testing/schroot/schroot-cppunit.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/configure.ac 2017-05-20 09:50:30.146864516 +0000
-+++ b/configure.ac 2017-05-20 09:51:26.216792794 +0000
-@@ -336,7 +336,7 @@
- [HAVE_UUID=yes],
- [HAVE_UUID=no])
-
--AM_PATH_CPPUNIT([1.10.0], [HAVE_CPPUNIT=yes])
-+PKG_CHECK_MODULES([CPPUNIT], [cppunit], [HAVE_CPPUNIT=yes], [HAVE_CPPUNIT=no])
- AM_CONDITIONAL([USE_UNIT_TESTS], [test -n "$HAVE_CPPUNIT"])
-
- SCHROOT_CFLAGS="$UUID_CFLAGS"
diff --git a/testing/scooper/APKBUILD b/testing/scooper/APKBUILD
index 25b7197c8c7..5359d2b3065 100644
--- a/testing/scooper/APKBUILD
+++ b/testing/scooper/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: TBK <alpine@jjtc.eu>
pkgname=scooper
pkgver=1.3
-pkgrel=0
+pkgrel=1
pkgdesc="Web interface for litterbox"
arch="all"
url="https://git.causal.agency/scooper/"
diff --git a/testing/scratch/APKBUILD b/testing/scratch/APKBUILD
index f11a741270c..3cbdc6586f0 100644
--- a/testing/scratch/APKBUILD
+++ b/testing/scratch/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Díaz Urbaneja Diego <sodomon2@gmail.com>
pkgname=scratch
pkgver=1.4.0.7
-pkgrel=0
+pkgrel=1
pkgdesc="Create and share your own interactive stories, games, music and art"
url="https://scratch.mit.edu"
arch="x86_64 armv7 s390x" # disabled for the other architectures due to compiling problems
diff --git a/testing/screengrab/APKBUILD b/testing/screengrab/APKBUILD
deleted file mode 100644
index 0b7a0cfdd9c..00000000000
--- a/testing/screengrab/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=screengrab
-pkgver=2.4.0
-pkgrel=0
-pkgdesc="Crossplatform tool for fast making screenshots"
-url="https://github.com/lxqt/screengrab"
-arch="all !armhf" # blocked by kwindowsystem-dev
-license="GPL-2.0-or-later"
-makedepends="
- cmake lxqt-build-tools qt5-qtbase-dev qt5-qttools-dev
- libqtxdg-dev kwindowsystem-dev
- "
-subpackages="$pkgname-doc"
-source="https://github.com/lxqt/screengrab/releases/download/$pkgver/screengrab-$pkgver.tar.xz"
-options="!check" # No testsuite
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- $CMAKE_CROSSOPTS .
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --build build --target install
-}
-
-sha512sums="
-88aec38b957256f93bebf13facf33135a5a80ed879325342d19d3b102e7103fd23f1f7b3c1702c4bff01898e2b3029b07e50e4fde0de9e206a74484e4aa395ee screengrab-2.4.0.tar.xz
-"
diff --git a/testing/screenkey/APKBUILD b/testing/screenkey/APKBUILD
index 8d01bcdbb64..aa25600853a 100644
--- a/testing/screenkey/APKBUILD
+++ b/testing/screenkey/APKBUILD
@@ -1,23 +1,27 @@
# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
-# Maintainer:
+# Maintainer: Sergiy Stupar <owner@sestolab.pp.ua>
pkgname=screenkey
pkgver=1.5
-pkgrel=2
+pkgrel=6
pkgdesc="Screencast tool to display your keys"
url="https://www.thregr.org/~wavexx/software/screenkey/"
arch="noarch"
license="GPL-3.0-or-later"
depends="python3 py3-cairo py3-gobject3 py3-dbus"
-makedepends="py3-setuptools py3-babel"
-subpackages="$pkgname-doc"
+makedepends="py3-gpep517 py3-setuptools py3-wheel py3-babel"
+subpackages="$pkgname-doc $pkgname-pyc"
source="https://www.thregr.org/~wavexx/software/screenkey/releases/screenkey-$pkgver.tar.gz"
+options="!check" # No tests
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
diff --git a/testing/scrypt/APKBUILD b/testing/scrypt/APKBUILD
index f810e045f11..1b4f2104dd7 100644
--- a/testing/scrypt/APKBUILD
+++ b/testing/scrypt/APKBUILD
@@ -1,13 +1,13 @@
# Contributor: Nulo <alpine@nulo.in>
# Maintainer: Nulo <alpine@nulo.in>
pkgname=scrypt
-pkgver=1.3.1
+pkgver=1.3.2
pkgrel=0
pkgdesc="A password-based encryption utility"
url="https://www.tarsnap.com/scrypt.html"
arch="all"
license="BSD-2-Clause"
-depends_dev="openssl-dev"
+depends_dev="openssl-dev>3"
makedepends="$depends_dev"
subpackages="$pkgname-doc"
source="https://www.tarsnap.com/scrypt/scrypt-$pkgver.tgz"
@@ -32,5 +32,5 @@ package() {
}
sha512sums="
-c76c29463d2a4db6b62283daca80bc4124a6272f37f983d472d44251b98da702f1edb16ad15058a8d0ea320c23bc1486892ab25d367d37ec77c38a55ad7e69fe scrypt-1.3.1.tgz
+5f2c4f74cec107b08675c5e287c151d633b3a02f12c71d9484ecb14750b3a45b90e2da9dae9090af59346518492aeab01c215961fd592c4f5e5b944f27d9afc7 scrypt-1.3.2.tgz
"
diff --git a/testing/scummvm/APKBUILD b/testing/scummvm/APKBUILD
index ada8c303908..dab3407df96 100644
--- a/testing/scummvm/APKBUILD
+++ b/testing/scummvm/APKBUILD
@@ -1,11 +1,11 @@
# Contributor: Thomas Kienlen <kommander@laposte.net>
# Maintainer: Thomas Kienlen <kommander@laposte.net>
pkgname=scummvm
-pkgver=2.5.1
+pkgver=2.8.1
pkgrel=0
pkgdesc="Engine for several graphical adventure games"
url="https://www.scummvm.org/"
-arch="all"
+arch="all !ppc64le" # build failure on ppc64le
license="GPL-2.0-or-later"
makedepends="
alsa-lib-dev
@@ -15,6 +15,7 @@ makedepends="
freetype-dev
glu-dev
jpeg-dev
+ libmad-dev
libogg-dev
libpng-dev
libtheora-dev
@@ -32,7 +33,6 @@ build() {
./configure \
--prefix=/usr \
--enable-all-engines \
- --enable-c++11 \
--enable-release
make
}
@@ -42,6 +42,6 @@ package() {
}
sha512sums="
-af518e89f0f095c16f2d4ad314bb96f4e2c299b9a1a324fabf1ce49529c756625b190f8abd5fb47873c0243505284bc029c814c7cc0fbda0131ce6488f1c87e2 scummvm-2.5.1.tar.gz
+11bdd0a3d2a3aa53462eaa3d96c4bd0d79053d853627c6958aab0687f4032812ba2f95c883f58cec4580637e541fb903a9d926c7e9e6a9e2e6a41028a77e4002 scummvm-2.8.1.tar.gz
a44de9540f18893b49b02c083694f8eb974e8ddead6d0c6b0453760d7452367cfcc4613215fab2223da8859ce389a53dd2f110cf3389798761c95efafd886542 disable-forbidden.patch
"
diff --git a/testing/sd/APKBUILD b/testing/sd/APKBUILD
deleted file mode 100644
index bb194eac6c5..00000000000
--- a/testing/sd/APKBUILD
+++ /dev/null
@@ -1,49 +0,0 @@
-# Contributor: Chloe Kudryavtsev <toast@toast.cafe>
-# Maintainer: Chloe Kudryavtsev <toast@toast.cafe>
-pkgname=sd
-pkgver=0.7.6
-pkgrel=1
-pkgdesc="An intuitive find & replace CLI"
-url="https://github.com/chmln/sd"
-arch="x86_64 armv7 armhf aarch64 x86 ppc64le" # limited by rust/cargo
-license="MIT"
-options="net"
-makedepends="cargo"
-source="$pkgname-$pkgver.tar.gz::https://github.com/chmln/sd/archive/v$pkgver.tar.gz"
-subpackages="$pkgname-doc
- $pkgname-bash-completion
- $pkgname-zsh-completion
- $pkgname-fish-completion
- "
-
-export CARGO_HOME="$srcdir"/cargo
-
-build() {
- cargo build \
- --release \
- --verbose
-}
-
-check() {
- cargo test --all \
- --release \
- --verbose
-}
-
-package() {
- install -Dm755 target/release/"$pkgname" "$pkgdir"/usr/bin/"$pkgname"
-
- # doc
- find target/release -name "$pkgname.1" \
- -exec install -Dm644 {} "$pkgdir"/usr/share/man/man1/"$pkgname.1" \;
-
- # comp
- find target/release -name "$pkgname.bash" \
- -exec install -Dm644 {} "$pkgdir"/usr/share/bash-completion/completions/"$pkgname" \;
- find target/release -name "$pkgname.fish" \
- -exec install -Dm644 {} "$pkgdir"/usr/share/fish/completions/"$pkgname.fish" \;
- find target/release -name "_$pkgname" \
- -exec install -Dm644 {} "$pkgdir"/usr/share/zsh/site-functions/"_$pkgname" \;
-}
-
-sha512sums="79f23259b53f5dfd31b729aba7f43d8ba9ce91d390f29e065d77a3b2a6a426e84fc7d6cccb3c1a10976a177d32532c69fa327a9a0b435a967a8a1d40de000bc6 sd-0.7.6.tar.gz"
diff --git a/testing/sdl/0001-CVE-2019-7572.patch b/testing/sdl/0001-CVE-2019-7572.patch
deleted file mode 100644
index 2c17831dfcb..00000000000
--- a/testing/sdl/0001-CVE-2019-7572.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-From 6086741bda4d43cc227500bc7645a829380e6326 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
-Date: Fri, 15 Feb 2019 09:21:45 +0100
-Subject: [PATCH] CVE-2019-7572: Fix a buffer overwrite in IMA_ADPCM_decode
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-If data chunk was longer than expected based on a WAV format
-definition, IMA_ADPCM_decode() tried to write past the output
-buffer. This patch fixes it.
-
-Based on patch from
-<https://bugzilla.libsdl.org/show_bug.cgi?id=4496>.
-
-CVE-2019-7572
-https://bugzilla.libsdl.org/show_bug.cgi?id=4495
-
-Signed-off-by: Petr Písař <ppisar@redhat.com>
----
- src/audio/SDL_wave.c | 6 +++++-
- 1 file changed, 5 insertions(+), 1 deletion(-)
-
-diff --git a/src/audio/SDL_wave.c b/src/audio/SDL_wave.c
-index 69d62dc..91e89e8 100644
---- a/src/audio/SDL_wave.c
-+++ b/src/audio/SDL_wave.c
-@@ -336,7 +336,7 @@ static void Fill_IMA_ADPCM_block(Uint8 *decoded, Uint8 *encoded,
- static int IMA_ADPCM_decode(Uint8 **audio_buf, Uint32 *audio_len)
- {
- struct IMA_ADPCM_decodestate *state;
-- Uint8 *freeable, *encoded, *encoded_end, *decoded;
-+ Uint8 *freeable, *encoded, *encoded_end, *decoded, *decoded_end;
- Sint32 encoded_len, samplesleft;
- unsigned int c, channels;
-
-@@ -363,6 +363,7 @@ static int IMA_ADPCM_decode(Uint8 **audio_buf, Uint32 *audio_len)
- return(-1);
- }
- decoded = *audio_buf;
-+ decoded_end = decoded + *audio_len;
-
- /* Get ready... Go! */
- while ( encoded_len >= IMA_ADPCM_state.wavefmt.blockalign ) {
-@@ -382,6 +383,7 @@ static int IMA_ADPCM_decode(Uint8 **audio_buf, Uint32 *audio_len)
- }
-
- /* Store the initial sample we start with */
-+ if (decoded + 2 > decoded_end) goto invalid_size;
- decoded[0] = (Uint8)(state[c].sample&0xFF);
- decoded[1] = (Uint8)(state[c].sample>>8);
- decoded += 2;
-@@ -392,6 +394,8 @@ static int IMA_ADPCM_decode(Uint8 **audio_buf, Uint32 *audio_len)
- while ( samplesleft > 0 ) {
- for ( c=0; c<channels; ++c ) {
- if (encoded + 4 > encoded_end) goto invalid_size;
-+ if (decoded + 4 * 4 * channels > decoded_end)
-+ goto invalid_size;
- Fill_IMA_ADPCM_block(decoded, encoded,
- c, channels, &state[c]);
- encoded += 4;
---
-2.20.1
-
diff --git a/testing/sdl/0001-CVE-2019-7573.patch b/testing/sdl/0001-CVE-2019-7573.patch
deleted file mode 100644
index 767a3b20740..00000000000
--- a/testing/sdl/0001-CVE-2019-7573.patch
+++ /dev/null
@@ -1,83 +0,0 @@
-From 3e2c89e516701f3586dfeadec13932f665371d2a Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
-Date: Fri, 15 Feb 2019 10:36:13 +0100
-Subject: [PATCH] CVE-2019-7573, CVE-2019-7576: Fix buffer overreads in
- InitMS_ADPCM
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-If MS ADPCM format chunk was too short, InitMS_ADPCM() parsing it
-could read past the end of chunk data. This patch fixes it.
-
-CVE-2019-7573
-https://bugzilla.libsdl.org/show_bug.cgi?id=4491
-CVE-2019-7576
-https://bugzilla.libsdl.org/show_bug.cgi?id=4490
-
-Signed-off-by: Petr Písař <ppisar@redhat.com>
----
- src/audio/SDL_wave.c | 13 ++++++++++---
- 1 file changed, 10 insertions(+), 3 deletions(-)
-
-diff --git a/src/audio/SDL_wave.c b/src/audio/SDL_wave.c
-index 91e89e8..1d446ed 100644
---- a/src/audio/SDL_wave.c
-+++ b/src/audio/SDL_wave.c
-@@ -44,12 +44,13 @@ static struct MS_ADPCM_decoder {
- struct MS_ADPCM_decodestate state[2];
- } MS_ADPCM_state;
-
--static int InitMS_ADPCM(WaveFMT *format)
-+static int InitMS_ADPCM(WaveFMT *format, int length)
- {
-- Uint8 *rogue_feel;
-+ Uint8 *rogue_feel, *rogue_feel_end;
- int i;
-
- /* Set the rogue pointer to the MS_ADPCM specific data */
-+ if (length < sizeof(*format)) goto too_short;
- MS_ADPCM_state.wavefmt.encoding = SDL_SwapLE16(format->encoding);
- MS_ADPCM_state.wavefmt.channels = SDL_SwapLE16(format->channels);
- MS_ADPCM_state.wavefmt.frequency = SDL_SwapLE32(format->frequency);
-@@ -58,9 +59,11 @@ static int InitMS_ADPCM(WaveFMT *format)
- MS_ADPCM_state.wavefmt.bitspersample =
- SDL_SwapLE16(format->bitspersample);
- rogue_feel = (Uint8 *)format+sizeof(*format);
-+ rogue_feel_end = (Uint8 *)format + length;
- if ( sizeof(*format) == 16 ) {
- rogue_feel += sizeof(Uint16);
- }
-+ if (rogue_feel + 4 > rogue_feel_end) goto too_short;
- MS_ADPCM_state.wSamplesPerBlock = ((rogue_feel[1]<<8)|rogue_feel[0]);
- rogue_feel += sizeof(Uint16);
- MS_ADPCM_state.wNumCoef = ((rogue_feel[1]<<8)|rogue_feel[0]);
-@@ -70,12 +73,16 @@ static int InitMS_ADPCM(WaveFMT *format)
- return(-1);
- }
- for ( i=0; i<MS_ADPCM_state.wNumCoef; ++i ) {
-+ if (rogue_feel + 4 > rogue_feel_end) goto too_short;
- MS_ADPCM_state.aCoeff[i][0] = ((rogue_feel[1]<<8)|rogue_feel[0]);
- rogue_feel += sizeof(Uint16);
- MS_ADPCM_state.aCoeff[i][1] = ((rogue_feel[1]<<8)|rogue_feel[0]);
- rogue_feel += sizeof(Uint16);
- }
- return(0);
-+too_short:
-+ SDL_SetError("Unexpected length of a chunk with a MS ADPCM format");
-+ return(-1);
- }
-
- static Sint32 MS_ADPCM_nibble(struct MS_ADPCM_decodestate *state,
-@@ -485,7 +492,7 @@ SDL_AudioSpec * SDL_LoadWAV_RW (SDL_RWops *src, int freesrc,
- break;
- case MS_ADPCM_CODE:
- /* Try to understand this */
-- if ( InitMS_ADPCM(format) < 0 ) {
-+ if ( InitMS_ADPCM(format, lenread) < 0 ) {
- was_error = 1;
- goto done;
- }
---
-2.20.1
-
diff --git a/testing/sdl/0001-CVE-2019-7574.patch b/testing/sdl/0001-CVE-2019-7574.patch
deleted file mode 100644
index 0bae80ff875..00000000000
--- a/testing/sdl/0001-CVE-2019-7574.patch
+++ /dev/null
@@ -1,71 +0,0 @@
-From 9b2eee24768889378032077423cb6a3221a8ad18 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
-Date: Thu, 14 Feb 2019 15:41:47 +0100
-Subject: [PATCH] CVE-2019-7574: Fix a buffer overread in IMA_ADPCM_decode
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-If data chunk was shorter than expected based on a WAV format
-definition, IMA_ADPCM_decode() tried to read past the data chunk
-buffer. This patch fixes it.
-
-CVE-2019-7574
-https://bugzilla.libsdl.org/show_bug.cgi?id=4496
-
-Signed-off-by: Petr Písař <ppisar@redhat.com>
----
- src/audio/SDL_wave.c | 9 ++++++++-
- 1 file changed, 8 insertions(+), 1 deletion(-)
-
-diff --git a/src/audio/SDL_wave.c b/src/audio/SDL_wave.c
-index b6c49de..2968b3d 100644
---- a/src/audio/SDL_wave.c
-+++ b/src/audio/SDL_wave.c
-@@ -334,7 +334,7 @@ static void Fill_IMA_ADPCM_block(Uint8 *decoded, Uint8 *encoded,
- static int IMA_ADPCM_decode(Uint8 **audio_buf, Uint32 *audio_len)
- {
- struct IMA_ADPCM_decodestate *state;
-- Uint8 *freeable, *encoded, *decoded;
-+ Uint8 *freeable, *encoded, *encoded_end, *decoded;
- Sint32 encoded_len, samplesleft;
- unsigned int c, channels;
-
-@@ -350,6 +350,7 @@ static int IMA_ADPCM_decode(Uint8 **audio_buf, Uint32 *audio_len)
- /* Allocate the proper sized output buffer */
- encoded_len = *audio_len;
- encoded = *audio_buf;
-+ encoded_end = encoded + encoded_len;
- freeable = *audio_buf;
- *audio_len = (encoded_len/IMA_ADPCM_state.wavefmt.blockalign) *
- IMA_ADPCM_state.wSamplesPerBlock*
-@@ -365,6 +366,7 @@ static int IMA_ADPCM_decode(Uint8 **audio_buf, Uint32 *audio_len)
- while ( encoded_len >= IMA_ADPCM_state.wavefmt.blockalign ) {
- /* Grab the initial information for this block */
- for ( c=0; c<channels; ++c ) {
-+ if (encoded + 4 > encoded_end) goto invalid_size;
- /* Fill the state information for this block */
- state[c].sample = ((encoded[1]<<8)|encoded[0]);
- encoded += 2;
-@@ -387,6 +389,7 @@ static int IMA_ADPCM_decode(Uint8 **audio_buf, Uint32 *audio_len)
- samplesleft = (IMA_ADPCM_state.wSamplesPerBlock-1)*channels;
- while ( samplesleft > 0 ) {
- for ( c=0; c<channels; ++c ) {
-+ if (encoded + 4 > encoded_end) goto invalid_size;
- Fill_IMA_ADPCM_block(decoded, encoded,
- c, channels, &state[c]);
- encoded += 4;
-@@ -398,6 +401,10 @@ static int IMA_ADPCM_decode(Uint8 **audio_buf, Uint32 *audio_len)
- }
- SDL_free(freeable);
- return(0);
-+invalid_size:
-+ SDL_SetError("Unexpected chunk length for an IMA ADPCM decoder");
-+ SDL_free(freeable);
-+ return(-1);
- }
-
- SDL_AudioSpec * SDL_LoadWAV_RW (SDL_RWops *src, int freesrc,
---
-2.20.1
-
diff --git a/testing/sdl/0001-CVE-2019-7575.patch b/testing/sdl/0001-CVE-2019-7575.patch
deleted file mode 100644
index 53965aa2f23..00000000000
--- a/testing/sdl/0001-CVE-2019-7575.patch
+++ /dev/null
@@ -1,84 +0,0 @@
-From e1f80cadb079e35103e6eebf160a818815c823df Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
-Date: Thu, 14 Feb 2019 14:51:52 +0100
-Subject: [PATCH] CVE-2019-7575: Fix a buffer overwrite in MS_ADPCM_decode
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-If a WAV format defines shorter audio stream and decoded MS ADPCM data chunk
-is longer, decoding continued past the output audio buffer.
-
-This fix is based on a patch from
-<https://bugzilla.libsdl.org/show_bug.cgi?id=4492>.
-
-https://bugzilla.libsdl.org/show_bug.cgi?id=4493
-CVE-2019-7575
-
-Signed-off-by: Petr Písař <ppisar@redhat.com>
----
- src/audio/SDL_wave.c | 13 ++++++++-----
- 1 file changed, 8 insertions(+), 5 deletions(-)
-
-diff --git a/src/audio/SDL_wave.c b/src/audio/SDL_wave.c
-index e42d01c..b6c49de 100644
---- a/src/audio/SDL_wave.c
-+++ b/src/audio/SDL_wave.c
-@@ -115,7 +115,7 @@ static Sint32 MS_ADPCM_nibble(struct MS_ADPCM_decodestate *state,
- static int MS_ADPCM_decode(Uint8 **audio_buf, Uint32 *audio_len)
- {
- struct MS_ADPCM_decodestate *state[2];
-- Uint8 *freeable, *encoded, *encoded_end, *decoded;
-+ Uint8 *freeable, *encoded, *encoded_end, *decoded, *decoded_end;
- Sint32 encoded_len, samplesleft;
- Sint8 nybble, stereo;
- Sint16 *coeff[2];
-@@ -135,6 +135,7 @@ static int MS_ADPCM_decode(Uint8 **audio_buf, Uint32 *audio_len)
- return(-1);
- }
- decoded = *audio_buf;
-+ decoded_end = decoded + *audio_len;
-
- /* Get ready... Go! */
- stereo = (MS_ADPCM_state.wavefmt.channels == 2);
-@@ -142,7 +143,7 @@ static int MS_ADPCM_decode(Uint8 **audio_buf, Uint32 *audio_len)
- state[1] = &MS_ADPCM_state.state[stereo];
- while ( encoded_len >= MS_ADPCM_state.wavefmt.blockalign ) {
- /* Grab the initial information for this block */
-- if (encoded + 7 + (stereo ? 7 : 0) > encoded_end) goto too_short;
-+ if (encoded + 7 + (stereo ? 7 : 0) > encoded_end) goto invalid_size;
- state[0]->hPredictor = *encoded++;
- if ( stereo ) {
- state[1]->hPredictor = *encoded++;
-@@ -169,6 +170,7 @@ static int MS_ADPCM_decode(Uint8 **audio_buf, Uint32 *audio_len)
- coeff[1] = MS_ADPCM_state.aCoeff[state[1]->hPredictor];
-
- /* Store the two initial samples we start with */
-+ if (decoded + 4 + (stereo ? 4 : 0) > decoded_end) goto invalid_size;
- decoded[0] = state[0]->iSamp2&0xFF;
- decoded[1] = state[0]->iSamp2>>8;
- decoded += 2;
-@@ -190,7 +192,8 @@ static int MS_ADPCM_decode(Uint8 **audio_buf, Uint32 *audio_len)
- samplesleft = (MS_ADPCM_state.wSamplesPerBlock-2)*
- MS_ADPCM_state.wavefmt.channels;
- while ( samplesleft > 0 ) {
-- if (encoded + 1 > encoded_end) goto too_short;
-+ if (encoded + 1 > encoded_end) goto invalid_size;
-+ if (decoded + 4 > decoded_end) goto invalid_size;
-
- nybble = (*encoded)>>4;
- new_sample = MS_ADPCM_nibble(state[0],nybble,coeff[0]);
-@@ -213,8 +216,8 @@ static int MS_ADPCM_decode(Uint8 **audio_buf, Uint32 *audio_len)
- }
- SDL_free(freeable);
- return(0);
--too_short:
-- SDL_SetError("Too short chunk for a MS ADPCM decoder");
-+invalid_size:
-+ SDL_SetError("Unexpected chunk length for a MS ADPCM decoder");
- SDL_free(freeable);
- return(-1);
- }
---
-2.20.1
-
diff --git a/testing/sdl/0001-CVE-2019-7577.patch b/testing/sdl/0001-CVE-2019-7577.patch
deleted file mode 100644
index 23cbf98192b..00000000000
--- a/testing/sdl/0001-CVE-2019-7577.patch
+++ /dev/null
@@ -1,75 +0,0 @@
-From ac3d0d365b1f01a6782565feda0c7432a5795671 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
-Date: Thu, 14 Feb 2019 14:12:22 +0100
-Subject: [PATCH] CVE-2019-7577: Fix a buffer overread in MS_ADPCM_decode
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-If RIFF/WAV data chunk length is shorter then expected for an audio
-format defined in preceeding RIFF/WAV format headers, a buffer
-overread can happen.
-
-This patch fixes it by checking a MS ADPCM data to be decoded are not
-past the initialized buffer.
-
-CVE-2019-7577
-Reproducer: https://bugzilla.libsdl.org/show_bug.cgi?id=4492
-
-Signed-off-by: Petr Písař <ppisar@redhat.com>
----
- src/audio/SDL_wave.c | 10 +++++++++-
- 1 file changed, 9 insertions(+), 1 deletion(-)
-
-diff --git a/src/audio/SDL_wave.c b/src/audio/SDL_wave.c
-index b4ad6c7..e42d01c 100644
---- a/src/audio/SDL_wave.c
-+++ b/src/audio/SDL_wave.c
-@@ -115,7 +115,7 @@ static Sint32 MS_ADPCM_nibble(struct MS_ADPCM_decodestate *state,
- static int MS_ADPCM_decode(Uint8 **audio_buf, Uint32 *audio_len)
- {
- struct MS_ADPCM_decodestate *state[2];
-- Uint8 *freeable, *encoded, *decoded;
-+ Uint8 *freeable, *encoded, *encoded_end, *decoded;
- Sint32 encoded_len, samplesleft;
- Sint8 nybble, stereo;
- Sint16 *coeff[2];
-@@ -124,6 +124,7 @@ static int MS_ADPCM_decode(Uint8 **audio_buf, Uint32 *audio_len)
- /* Allocate the proper sized output buffer */
- encoded_len = *audio_len;
- encoded = *audio_buf;
-+ encoded_end = encoded + encoded_len;
- freeable = *audio_buf;
- *audio_len = (encoded_len/MS_ADPCM_state.wavefmt.blockalign) *
- MS_ADPCM_state.wSamplesPerBlock*
-@@ -141,6 +142,7 @@ static int MS_ADPCM_decode(Uint8 **audio_buf, Uint32 *audio_len)
- state[1] = &MS_ADPCM_state.state[stereo];
- while ( encoded_len >= MS_ADPCM_state.wavefmt.blockalign ) {
- /* Grab the initial information for this block */
-+ if (encoded + 7 + (stereo ? 7 : 0) > encoded_end) goto too_short;
- state[0]->hPredictor = *encoded++;
- if ( stereo ) {
- state[1]->hPredictor = *encoded++;
-@@ -188,6 +190,8 @@ static int MS_ADPCM_decode(Uint8 **audio_buf, Uint32 *audio_len)
- samplesleft = (MS_ADPCM_state.wSamplesPerBlock-2)*
- MS_ADPCM_state.wavefmt.channels;
- while ( samplesleft > 0 ) {
-+ if (encoded + 1 > encoded_end) goto too_short;
-+
- nybble = (*encoded)>>4;
- new_sample = MS_ADPCM_nibble(state[0],nybble,coeff[0]);
- decoded[0] = new_sample&0xFF;
-@@ -209,6 +213,10 @@ static int MS_ADPCM_decode(Uint8 **audio_buf, Uint32 *audio_len)
- }
- SDL_free(freeable);
- return(0);
-+too_short:
-+ SDL_SetError("Too short chunk for a MS ADPCM decoder");
-+ SDL_free(freeable);
-+ return(-1);
- }
-
- struct IMA_ADPCM_decodestate {
---
-2.20.1
-
diff --git a/testing/sdl/0001-CVE-2019-7578.patch b/testing/sdl/0001-CVE-2019-7578.patch
deleted file mode 100644
index b0a89de20df..00000000000
--- a/testing/sdl/0001-CVE-2019-7578.patch
+++ /dev/null
@@ -1,67 +0,0 @@
-From 0eb76f6cabcffa2104e34c26e0f41e6de95356ff Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
-Date: Fri, 15 Feb 2019 10:56:59 +0100
-Subject: [PATCH] CVE-2019-7578: Fix a buffer overread in InitIMA_ADPCM
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-If IMA ADPCM format chunk was too short, InitIMA_ADPCM() parsing it
-could read past the end of chunk data. This patch fixes it.
-
-CVE-2019-7578
-https://bugzilla.libsdl.org/show_bug.cgi?id=4494
-
-Signed-off-by: Petr Písař <ppisar@redhat.com>
----
- src/audio/SDL_wave.c | 12 +++++++++---
- 1 file changed, 9 insertions(+), 3 deletions(-)
-
-diff --git a/src/audio/SDL_wave.c b/src/audio/SDL_wave.c
-index 1d446ed..08f65cb 100644
---- a/src/audio/SDL_wave.c
-+++ b/src/audio/SDL_wave.c
-@@ -240,11 +240,12 @@ static struct IMA_ADPCM_decoder {
- struct IMA_ADPCM_decodestate state[2];
- } IMA_ADPCM_state;
-
--static int InitIMA_ADPCM(WaveFMT *format)
-+static int InitIMA_ADPCM(WaveFMT *format, int length)
- {
-- Uint8 *rogue_feel;
-+ Uint8 *rogue_feel, *rogue_feel_end;
-
- /* Set the rogue pointer to the IMA_ADPCM specific data */
-+ if (length < sizeof(*format)) goto too_short;
- IMA_ADPCM_state.wavefmt.encoding = SDL_SwapLE16(format->encoding);
- IMA_ADPCM_state.wavefmt.channels = SDL_SwapLE16(format->channels);
- IMA_ADPCM_state.wavefmt.frequency = SDL_SwapLE32(format->frequency);
-@@ -253,11 +254,16 @@ static int InitIMA_ADPCM(WaveFMT *format)
- IMA_ADPCM_state.wavefmt.bitspersample =
- SDL_SwapLE16(format->bitspersample);
- rogue_feel = (Uint8 *)format+sizeof(*format);
-+ rogue_feel_end = (Uint8 *)format + length;
- if ( sizeof(*format) == 16 ) {
- rogue_feel += sizeof(Uint16);
- }
-+ if (rogue_feel + 2 > rogue_feel_end) goto too_short;
- IMA_ADPCM_state.wSamplesPerBlock = ((rogue_feel[1]<<8)|rogue_feel[0]);
- return(0);
-+too_short:
-+ SDL_SetError("Unexpected length of a chunk with an IMA ADPCM format");
-+ return(-1);
- }
-
- static Sint32 IMA_ADPCM_nibble(struct IMA_ADPCM_decodestate *state,Uint8 nybble)
-@@ -500,7 +506,7 @@ SDL_AudioSpec * SDL_LoadWAV_RW (SDL_RWops *src, int freesrc,
- break;
- case IMA_ADPCM_CODE:
- /* Try to understand this */
-- if ( InitIMA_ADPCM(format) < 0 ) {
-+ if ( InitIMA_ADPCM(format, lenread) < 0 ) {
- was_error = 1;
- goto done;
- }
---
-2.20.1
-
diff --git a/testing/sdl/0001-CVE-2019-7635.patch b/testing/sdl/0001-CVE-2019-7635.patch
deleted file mode 100644
index ebf8b91e7fd..00000000000
--- a/testing/sdl/0001-CVE-2019-7635.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-CVE-2019-7635: Reject BMP images with pixel colors out the palette
-If a 1-, 4-, or 8-bit per pixel BMP image declares less used colors
-than the palette offers an SDL_Surface with a palette of the indicated
-number of used colors is created. If some of the image's pixel
-refer to a color number higher then the maximal used colors, a subsequent
-bliting operation on the surface will look up a color past a blit map
-(that is based on the palette) memory. I.e. passing such SDL_Surface
-to e.g. an SDL_DisplayFormat() function will result in a buffer overread in
-a blit function.
-
-This patch fixes it by validing each pixel's color to be less than the
-maximal color number in the palette. A validation failure raises an
-error from a SDL_LoadBMP_RW() function.
-
-CVE-2019-7635
-https://bugzilla.libsdl.org/show_bug.cgi?id=4498
-
-Signed-off-by: Petr Písař <ppisar@redhat.com>
-
-diff -r a936f9bd3e38 -r f1f5878be5db src/video/SDL_bmp.c
---- a/src/video/SDL_bmp.c Mon Jun 10 09:25:05 2019 -0700
-+++ b/src/video/SDL_bmp.c Tue Jun 11 06:28:12 2019 -0700
-@@ -308,6 +308,12 @@
- }
- *(bits+i) = (pixel>>shift);
- pixel <<= ExpandBMP;
-+ if ( bits[i] >= biClrUsed ) {
-+ SDL_SetError(
-+ "A BMP image contains a pixel with a color out of the palette");
-+ was_error = SDL_TRUE;
-+ goto done;
-+ }
- } }
- break;
-
-@@ -318,6 +324,16 @@
- was_error = SDL_TRUE;
- goto done;
- }
-+ if ( 8 == biBitCount && palette && biClrUsed < (1 << biBitCount ) ) {
-+ for ( i=0; i<surface->w; ++i ) {
-+ if ( bits[i] >= biClrUsed ) {
-+ SDL_SetError(
-+ "A BMP image contains a pixel with a color out of the palette");
-+ was_error = SDL_TRUE;
-+ goto done;
-+ }
-+ }
-+ }
- #if SDL_BYTEORDER == SDL_BIG_ENDIAN
- /* Byte-swap the pixels if needed. Note that the 24bpp
- case has already been taken care of above. */
-
diff --git a/testing/sdl/0001-CVE-2019-7636.patch b/testing/sdl/0001-CVE-2019-7636.patch
deleted file mode 100644
index 51e40ef1cec..00000000000
--- a/testing/sdl/0001-CVE-2019-7636.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-Fixed bug 4500 - Heap-Buffer Overflow in Map1toN pertaining to SDL_pixels.c
-
-Petr Pisar
-
-The reproducer has these data in BITMAPINFOHEADER:
-
-biSize = 40
-biBitCount = 8
-biClrUsed = 131075
-
-SDL_LoadBMP_RW() function passes biBitCount as a color depth to SDL_CreateRGBSurface(), thus 256-color pallete is allocated. But then biClrUsed colors are read from a file and stored into the palette. SDL_LoadBMP_RW should report an error if biClrUsed is greater than 2^biBitCount.
-
-Also fixes CVE-2019-7638
-
-diff -r 8586f153eede -r 19d8c3b9c251 src/video/SDL_bmp.c
---- a/src/video/SDL_bmp.c Sun Jan 13 15:27:50 2019 +0100
-+++ b/src/video/SDL_bmp.c Mon Feb 18 07:48:23 2019 -0800
-@@ -233,6 +233,10 @@
- if ( palette ) {
- if ( biClrUsed == 0 ) {
- biClrUsed = 1 << biBitCount;
-+ } else if ( biClrUsed > (1 << biBitCount) ) {
-+ SDL_SetError("BMP file has an invalid number of colors");
-+ was_error = SDL_TRUE;
-+ goto done;
- }
- if ( biSize == 12 ) {
- for ( i = 0; i < (int)biClrUsed; ++i ) {
-
diff --git a/testing/sdl/0001-CVE-2019-7637.patch b/testing/sdl/0001-CVE-2019-7637.patch
deleted file mode 100644
index 90a734f8ae8..00000000000
--- a/testing/sdl/0001-CVE-2019-7637.patch
+++ /dev/null
@@ -1,182 +0,0 @@
-CVE-2019-7637: Fix in integer overflow in SDL_CalculatePitch
-If a too large width is passed to SDL_SetVideoMode() the width travels
-to SDL_CalculatePitch() where the width (e.g. 65535) is multiplied by
-BytesPerPixel (e.g. 4) and the result is stored into Uint16 pitch
-variable. During this arithmetics an integer overflow can happen (e.g.
-the value is clamped as 65532). As a result SDL_Surface with a pitch
-smaller than width * BytesPerPixel is created, too small pixel buffer
-is allocated and when the SDL_Surface is processed in SDL_FillRect()
-a buffer overflow occurs.
-
-This can be reproduced with "./graywin -width 21312312313123213213213"
-command.
-
-This patch fixes is by using a very careful arithmetics in
-SDL_CalculatePitch(). If an overflow is detected, an error is reported
-back as a special 0 value. We assume that 0-width surfaces do not
-occur in the wild. Since SDL_CalculatePitch() is a private function,
-we can change the semantics.
-
-CVE-2019-7637
-https://bugzilla.libsdl.org/show_bug.cgi?id=4497
-
-Signed-off-by: Petr Písař <ppisar@redhat.com>
-
-diff -r 4646533663ae -r 9b0e5c555c0f src/video/SDL_pixels.c
---- a/src/video/SDL_pixels.c Sat Mar 16 18:35:33 2019 -0700
-+++ b/src/video/SDL_pixels.c Sat Mar 16 19:16:24 2019 -0700
-@@ -286,26 +286,53 @@
- }
- }
- /*
-- * Calculate the pad-aligned scanline width of a surface
-+ * Calculate the pad-aligned scanline width of a surface. Return 0 in case of
-+ * an error.
- */
- Uint16 SDL_CalculatePitch(SDL_Surface *surface)
- {
-- Uint16 pitch;
-+ unsigned int pitch = 0;
-
- /* Surface should be 4-byte aligned for speed */
-- pitch = surface->w*surface->format->BytesPerPixel;
-+ /* The code tries to prevent from an Uint16 overflow. */;
-+ for (Uint8 byte = surface->format->BytesPerPixel; byte; byte--) {
-+ pitch += (unsigned int)surface->w;
-+ if (pitch < surface->w) {
-+ SDL_SetError("A scanline is too wide");
-+ return(0);
-+ }
-+ }
- switch (surface->format->BitsPerPixel) {
- case 1:
-- pitch = (pitch+7)/8;
-+ if (pitch % 8) {
-+ pitch = pitch / 8 + 1;
-+ } else {
-+ pitch = pitch / 8;
-+ }
- break;
- case 4:
-- pitch = (pitch+1)/2;
-+ if (pitch % 2) {
-+ pitch = pitch / 2 + 1;
-+ } else {
-+ pitch = pitch / 2;
-+ }
- break;
- default:
- break;
- }
-- pitch = (pitch + 3) & ~3; /* 4-byte aligning */
-- return(pitch);
-+ /* 4-byte aligning */
-+ if (pitch & 3) {
-+ if (pitch + 3 < pitch) {
-+ SDL_SetError("A scanline is too wide");
-+ return(0);
-+ }
-+ pitch = (pitch + 3) & ~3;
-+ }
-+ if (pitch > 0xFFFF) {
-+ SDL_SetError("A scanline is too wide");
-+ return(0);
-+ }
-+ return((Uint16)pitch);
- }
- /*
- * Match an RGB value to a particular palette index
-diff -r 4646533663ae -r 9b0e5c555c0f src/video/gapi/SDL_gapivideo.c
---- a/src/video/gapi/SDL_gapivideo.c Sat Mar 16 18:35:33 2019 -0700
-+++ b/src/video/gapi/SDL_gapivideo.c Sat Mar 16 19:16:24 2019 -0700
-@@ -733,6 +733,9 @@
- video->w = gapi->w = width;
- video->h = gapi->h = height;
- video->pitch = SDL_CalculatePitch(video);
-+ if (!current->pitch) {
-+ return(NULL);
-+ }
-
- /* Small fix for WinCE/Win32 - when activating window
- SDL_VideoSurface is equal to zero, so activating code
-diff -r 4646533663ae -r 9b0e5c555c0f src/video/nanox/SDL_nxvideo.c
---- a/src/video/nanox/SDL_nxvideo.c Sat Mar 16 18:35:33 2019 -0700
-+++ b/src/video/nanox/SDL_nxvideo.c Sat Mar 16 19:16:24 2019 -0700
-@@ -378,6 +378,10 @@
- current -> w = width ;
- current -> h = height ;
- current -> pitch = SDL_CalculatePitch (current) ;
-+ if (!current->pitch) {
-+ current = NULL;
-+ goto done;
-+ }
- NX_ResizeImage (this, current, flags) ;
- }
-
-diff -r 4646533663ae -r 9b0e5c555c0f src/video/ps2gs/SDL_gsvideo.c
---- a/src/video/ps2gs/SDL_gsvideo.c Sat Mar 16 18:35:33 2019 -0700
-+++ b/src/video/ps2gs/SDL_gsvideo.c Sat Mar 16 19:16:24 2019 -0700
-@@ -479,6 +479,9 @@
- current->w = width;
- current->h = height;
- current->pitch = SDL_CalculatePitch(current);
-+ if (!current->pitch) {
-+ return(NULL);
-+ }
-
- /* Memory map the DMA area for block memory transfer */
- if ( ! mapped_mem ) {
-diff -r 4646533663ae -r 9b0e5c555c0f src/video/ps3/SDL_ps3video.c
---- a/src/video/ps3/SDL_ps3video.c Sat Mar 16 18:35:33 2019 -0700
-+++ b/src/video/ps3/SDL_ps3video.c Sat Mar 16 19:16:24 2019 -0700
-@@ -339,6 +339,9 @@
- current->w = width;
- current->h = height;
- current->pitch = SDL_CalculatePitch(current);
-+ if (!current->pitch) {
-+ return(NULL);
-+ }
-
- /* Alloc aligned mem for current->pixels */
- s_pixels = memalign(16, current->h * current->pitch);
-diff -r 4646533663ae -r 9b0e5c555c0f src/video/windib/SDL_dibvideo.c
---- a/src/video/windib/SDL_dibvideo.c Sat Mar 16 18:35:33 2019 -0700
-+++ b/src/video/windib/SDL_dibvideo.c Sat Mar 16 19:16:24 2019 -0700
-@@ -675,6 +675,9 @@
- video->w = width;
- video->h = height;
- video->pitch = SDL_CalculatePitch(video);
-+ if (!current->pitch) {
-+ return(NULL);
-+ }
-
- /* Small fix for WinCE/Win32 - when activating window
- SDL_VideoSurface is equal to zero, so activating code
-diff -r 4646533663ae -r 9b0e5c555c0f src/video/windx5/SDL_dx5video.c
---- a/src/video/windx5/SDL_dx5video.c Sat Mar 16 18:35:33 2019 -0700
-+++ b/src/video/windx5/SDL_dx5video.c Sat Mar 16 19:16:24 2019 -0700
-@@ -1127,6 +1127,9 @@
- video->w = width;
- video->h = height;
- video->pitch = SDL_CalculatePitch(video);
-+ if (!current->pitch) {
-+ return(NULL);
-+ }
-
- #ifndef NO_CHANGEDISPLAYSETTINGS
- /* Set fullscreen mode if appropriate.
-diff -r 4646533663ae -r 9b0e5c555c0f src/video/x11/SDL_x11video.c
---- a/src/video/x11/SDL_x11video.c Sat Mar 16 18:35:33 2019 -0700
-+++ b/src/video/x11/SDL_x11video.c Sat Mar 16 19:16:24 2019 -0700
-@@ -1225,6 +1225,10 @@
- current->w = width;
- current->h = height;
- current->pitch = SDL_CalculatePitch(current);
-+ if (!current->pitch) {
-+ current = NULL;
-+ goto done;
-+ }
- if (X11_ResizeImage(this, current, flags) < 0) {
- current = NULL;
- goto done;
-
diff --git a/testing/sdl/0002-CVE-2019-13616.patch b/testing/sdl/0002-CVE-2019-13616.patch
deleted file mode 100644
index 5461fe3bf6a..00000000000
--- a/testing/sdl/0002-CVE-2019-13616.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-diff --git a/src/video/SDL_bmp.c b/src/video/SDL_bmp.c
-index 758d4bbc4..6cadc8a55 100644
---- a/src/video/SDL_bmp.c
-+++ b/src/video/SDL_bmp.c
-@@ -143,6 +143,11 @@ SDL_Surface * SDL_LoadBMP_RW (SDL_RWops *src, int freesrc)
- (void) biYPelsPerMeter;
- (void) biClrImportant;
-
-+ if (biWidth <= 0 || biHeight == 0) {
-+ SDL_SetError("BMP file with bad dimensions (%dx%d)", biWidth, biHeight);
-+ was_error = SDL_TRUE;
-+ goto done;
-+ }
- if (biHeight < 0) {
- topDown = SDL_TRUE;
- biHeight = -biHeight;
diff --git a/testing/sdl/0002-CVE-2019-7572.patch b/testing/sdl/0002-CVE-2019-7572.patch
deleted file mode 100644
index 0f242be4e40..00000000000
--- a/testing/sdl/0002-CVE-2019-7572.patch
+++ /dev/null
@@ -1,59 +0,0 @@
-From bb11ffcff5ae2f25bead921c2a299e7e63d8a759 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
-Date: Thu, 14 Feb 2019 16:51:54 +0100
-Subject: [PATCH] CVE-2019-7572: Fix a buffer overread in IMA_ADPCM_nibble
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-If an IMA ADPCM block contained an initial index out of step table
-range (loaded in IMA_ADPCM_decode()), IMA_ADPCM_nibble() blindly used
-this bogus value and that lead to a buffer overread.
-
-This patch fixes it by moving clamping the index value at the
-beginning of IMA_ADPCM_nibble() function instead of the end after
-an update.
-
-CVE-2019-7572
-https://bugzilla.libsdl.org/show_bug.cgi?id=4495
-
-Signed-off-by: Petr Písař <ppisar@redhat.com>
----
- src/audio/SDL_wave.c | 14 ++++++++------
- 1 file changed, 8 insertions(+), 6 deletions(-)
-
-diff --git a/src/audio/SDL_wave.c b/src/audio/SDL_wave.c
-index 2968b3d..69d62dc 100644
---- a/src/audio/SDL_wave.c
-+++ b/src/audio/SDL_wave.c
-@@ -275,6 +275,14 @@ static Sint32 IMA_ADPCM_nibble(struct IMA_ADPCM_decodestate *state,Uint8 nybble)
- };
- Sint32 delta, step;
-
-+ /* Clamp index value. The inital value can be invalid. */
-+ if ( state->index > 88 ) {
-+ state->index = 88;
-+ } else
-+ if ( state->index < 0 ) {
-+ state->index = 0;
-+ }
-+
- /* Compute difference and new sample value */
- step = step_table[state->index];
- delta = step >> 3;
-@@ -286,12 +294,6 @@ static Sint32 IMA_ADPCM_nibble(struct IMA_ADPCM_decodestate *state,Uint8 nybble)
-
- /* Update index value */
- state->index += index_table[nybble];
-- if ( state->index > 88 ) {
-- state->index = 88;
-- } else
-- if ( state->index < 0 ) {
-- state->index = 0;
-- }
-
- /* Clamp output sample */
- if ( state->sample > max_audioval ) {
---
-2.20.1
-
diff --git a/testing/sdl/0002-CVE-2019-7577.patch b/testing/sdl/0002-CVE-2019-7577.patch
deleted file mode 100644
index 06b429cb6dd..00000000000
--- a/testing/sdl/0002-CVE-2019-7577.patch
+++ /dev/null
@@ -1,57 +0,0 @@
-From 69cd6157644cb0a5c9edd7b5920232c2ca31c151 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
-Date: Tue, 12 Mar 2019 16:21:41 +0100
-Subject: [PATCH] CVE-2019-7577: Fix a buffer overread in MS_ADPCM_nibble and
- MS_ADPCM_decode
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-If a chunk of RIFF/WAV file with MS ADPCM encoding contains an invalid
-predictor (a valid predictor's value is between 0 and 6 inclusive),
-a buffer overread can happen when the predictor is used as an index
-into an array of MS ADPCM coefficients.
-
-The overead happens when indexing MS_ADPCM_state.aCoeff[] array in
-MS_ADPCM_decode() and later when dereferencing a coef pointer in
-MS_ADPCM_nibble().
-
-This patch fixes it by checking the MS ADPCM predictor values fit
-into the valid range.
-
-CVE-2019-7577
-Reproducer: https://bugzilla.libsdl.org/show_bug.cgi?id=4492
-
-Signed-off-by: Petr Písař <ppisar@redhat.com>
----
- src/audio/SDL_wave.c | 7 +++++++
- 1 file changed, 7 insertions(+)
-
-diff --git a/src/audio/SDL_wave.c b/src/audio/SDL_wave.c
-index 08f65cb..5f93651 100644
---- a/src/audio/SDL_wave.c
-+++ b/src/audio/SDL_wave.c
-@@ -155,6 +155,9 @@ static int MS_ADPCM_decode(Uint8 **audio_buf, Uint32 *audio_len)
- if ( stereo ) {
- state[1]->hPredictor = *encoded++;
- }
-+ if (state[0]->hPredictor >= 7 || state[1]->hPredictor >= 7) {
-+ goto invalid_predictor;
-+ }
- state[0]->iDelta = ((encoded[1]<<8)|encoded[0]);
- encoded += sizeof(Sint16);
- if ( stereo ) {
-@@ -227,6 +230,10 @@ invalid_size:
- SDL_SetError("Unexpected chunk length for a MS ADPCM decoder");
- SDL_free(freeable);
- return(-1);
-+invalid_predictor:
-+ SDL_SetError("Invalid predictor value for a MS ADPCM decoder");
-+ SDL_free(freeable);
-+ return(-1);
- }
-
- struct IMA_ADPCM_decodestate {
---
-2.20.1
-
diff --git a/testing/sdl/0002-CVE-2019-7635.patch b/testing/sdl/0002-CVE-2019-7635.patch
deleted file mode 100644
index 01a111ccc4f..00000000000
--- a/testing/sdl/0002-CVE-2019-7635.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-diff -r 19d8c3b9c251 -r 08f3b4992538 src/video/SDL_bmp.c
---- a/src/video/SDL_bmp.c Mon Feb 18 07:48:23 2019 -0800
-+++ b/src/video/SDL_bmp.c Sat Mar 16 18:35:11 2019 -0700
-@@ -163,6 +163,14 @@
- ExpandBMP = biBitCount;
- biBitCount = 8;
- break;
-+ case 2:
-+ case 3:
-+ case 5:
-+ case 6:
-+ case 7:
-+ SDL_SetError("%d-bpp BMP images are not supported", biBitCount);
-+ was_error = SDL_TRUE;
-+ goto done;
- default:
- ExpandBMP = 0;
- break;
-
-
-
diff --git a/testing/sdl/0002-CVE-2019-7637.patch b/testing/sdl/0002-CVE-2019-7637.patch
deleted file mode 100644
index bf28310d5eb..00000000000
--- a/testing/sdl/0002-CVE-2019-7637.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-fix copy+paste mistakes in commit 9b0e5c555c0f (CVE-2019-7637 fix):
-
-http://hg.libsdl.org/SDL/rev/9b0e5c555c0f made copy+paste mistakes which
-resulted in windows versions failing to set video mode.
-
-diff -r 37d0eba8fa17 -r 32075e9e2135 src/video/gapi/SDL_gapivideo.c
---- a/src/video/gapi/SDL_gapivideo.c Wed Jul 31 23:50:10 2019 +0300
-+++ b/src/video/gapi/SDL_gapivideo.c Fri Aug 02 00:35:05 2019 +0300
-@@ -733,7 +733,7 @@
- video->w = gapi->w = width;
- video->h = gapi->h = height;
- video->pitch = SDL_CalculatePitch(video);
-- if (!current->pitch) {
-+ if (!video->pitch) {
- return(NULL);
- }
-
-diff -r 37d0eba8fa17 -r 32075e9e2135 src/video/windib/SDL_dibvideo.c
---- a/src/video/windib/SDL_dibvideo.c Wed Jul 31 23:50:10 2019 +0300
-+++ b/src/video/windib/SDL_dibvideo.c Fri Aug 02 00:35:05 2019 +0300
-@@ -675,7 +675,7 @@
- video->w = width;
- video->h = height;
- video->pitch = SDL_CalculatePitch(video);
-- if (!current->pitch) {
-+ if (!video->pitch) {
- return(NULL);
- }
-
-diff -r 37d0eba8fa17 -r 32075e9e2135 src/video/windx5/SDL_dx5video.c
---- a/src/video/windx5/SDL_dx5video.c Wed Jul 31 23:50:10 2019 +0300
-+++ b/src/video/windx5/SDL_dx5video.c Fri Aug 02 00:35:05 2019 +0300
-@@ -1127,7 +1127,7 @@
- video->w = width;
- video->h = height;
- video->pitch = SDL_CalculatePitch(video);
-- if (!current->pitch) {
-+ if (!video->pitch) {
- return(NULL);
- }
-
-
diff --git a/testing/sdl/APKBUILD b/testing/sdl/APKBUILD
deleted file mode 100644
index dc1ec208a7e..00000000000
--- a/testing/sdl/APKBUILD
+++ /dev/null
@@ -1,101 +0,0 @@
-# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
-pkgname=sdl
-pkgver=1.2.15
-pkgrel=13
-pkgdesc="A library for portable low-level access to a video framebuffer, audio output, mouse, and keyboard"
-url="http://www.libsdl.org"
-arch="all"
-options="!check" # Tests are all interactive.
-license="LGPL-2.1-or-later"
-subpackages="$pkgname-static $pkgname-dev $pkgname-doc"
-depends_dev="libx11-dev"
-makedepends="$depends_dev libxext-dev libxrender-dev libice-dev
- libsm-dev libxrandr-dev mesa-dev alsa-lib-dev glu-dev tslib-dev"
-source="https://www.libsdl.org/release/SDL-$pkgver.tar.gz
- SDL-1.2.10-GrabNotViewable.patch
- SDL-1.2.15-const_XData32.patch
- 0001-CVE-2019-7574.patch
- 0001-CVE-2019-7572.patch
- 0002-CVE-2019-7572.patch
- 0001-CVE-2019-7573.patch
- 0001-CVE-2019-7577.patch
- 0002-CVE-2019-7577.patch
- 0001-CVE-2019-7575.patch
- 0001-CVE-2019-7578.patch
- 0001-CVE-2019-7635.patch
- 0002-CVE-2019-7635.patch
- 0001-CVE-2019-7636.patch
- 0001-CVE-2019-7637.patch
- 0002-CVE-2019-7637.patch
- 0002-CVE-2019-13616.patch
- "
-builddir="$srcdir"/SDL-$pkgver
-
-# secfixes:
-# 1.2.15-r12:
-# - CVE-2019-13616
-# 1.2.15-r11:
-# - CVE-2019-7572
-# - CVE-2019-7573
-# - CVE-2019-7574
-# - CVE-2019-7575
-# - CVE-2019-7576
-# - CVE-2019-7577
-# - CVE-2019-7578
-# - CVE-2019-7635
-# - CVE-2019-7636
-# - CVE-2019-7637
-# - CVE-2019-7638
-
-prepare() {
- update_config_sub
- default_prepare
-}
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --disable-nasm \
- --disable-esd \
- --disable-video-svga \
- --disable-video-ggi \
- --disable-video-aalib \
- --enable-alsa \
- --with-x \
- --disable-rpath \
- --enable-input-tslib
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-static() {
- depends=""
- pkgdesc="$pkgdesc (static libraries)"
- mkdir -p "$subpkgdir"/usr/lib
- mv "$pkgdir"/usr/lib/*.a "$subpkgdir"/usr/lib
-}
-
-sha512sums="
-ac392d916e6953b0925a7cbb0f232affea33339ef69b47a0a7898492afb9784b93138986df53d6da6d3e2ad79af1e9482df565ecca30f89428be0ae6851b1adc SDL-1.2.15.tar.gz
-20049408d4c00d895c39a7901d889d1874ebcd382e93b2e8df38bd3726e2236f4e9a980720724cf176a35d05fb0db5dbcabd42089423adeb404f2dba16d52b7b SDL-1.2.10-GrabNotViewable.patch
-c414a088350e4b039edf46b109721bea01300ad959b84c313f34d5bc085cab97107abb55a71cb8343f092546e4a36c52febf029ffa7d5bacbd580aee43c07bf3 SDL-1.2.15-const_XData32.patch
-8c287d6ffcc159f19d934d560e073a716325b6a62d9dea974b92b2d4a417defc4f8441769b4761c5a2600b10a45ff401b0afbab6823880e3d54eab09e22f9859 0001-CVE-2019-7574.patch
-e713d0f3d24d73831d9f116d4e15e965c5f09e19b15634e8cbf92714612b0172f24a5c542b3fde09732d17b03d7dac3aaac0d8f4e359a45c1c538970413d6e7c 0001-CVE-2019-7572.patch
-3274f91e41b72cd98b6d7962013dd45289952b7af78cc7bc5fe99d4f143434243c8ef0743117d3ec6b090784dfcba8dd460679cc5b49f298ebd8b5afab78a108 0002-CVE-2019-7572.patch
-3bf62a71988feff2329e298cee8ce48c636c65100959385b73953c95eea21cb069a7ed096165c252e5ef1db133330da5d095cf5ad145d9875b1197d3b5517b81 0001-CVE-2019-7573.patch
-f364161069ceb5d05d329ff04f6e72d2c52baff68d0d3f2203f8a7ee3ace1efe8fc63676ea7d097ccc8eb696dcc20c6b141319ddf0c2bb6efc4fd92cb1dba038 0001-CVE-2019-7577.patch
-d2f0664cc0388908ec621c84e7f889ef5abda31dc4e4d23e6e379e26475ed73863ad47b2f13d282c96ba269bdbc77e7effaf5f01032d0683ad991b506063ef19 0002-CVE-2019-7577.patch
-abe54d9f29b5e6c1a91cba2bb44e0988b7ceb5a94c3f63569f436f49f282b80280cecd79ee48b9926fff458efbdf0fff019b0fdbf6530692a11a68dbec73e7ca 0001-CVE-2019-7575.patch
-a31d5c685fafbca72fdc5336343b74b90b1bfd5af4b6f632b4d8271bb1a218ec6419a7994290f65e7a5fc36d921c2d3c1a25ddf0cdf29bffb7229229415eaa9f 0001-CVE-2019-7578.patch
-47729b56a7d323fecd4e4cccddce06061c4f53b723cb08108e1800897da54bae0bede862a09d219dce515696d9e270d062c7aa0af1ba445cc3160cdac8e3d3f7 0001-CVE-2019-7635.patch
-8e2c04d8a8167c479f56aa2b363bd3b5ee302c473642717445385210871e0c7b6bfb3020c553c4b0ca849b8a290602b20e7e398d396fdbf47980c38b0969f230 0002-CVE-2019-7635.patch
-8e9fa28015e64f08d7d8124398ee5b268546105b73313490cfffdd547e67e729455535407177827e485c4132badfc48a73cce18c0ff7ff8a1c8706613acf180c 0001-CVE-2019-7636.patch
-0ad1e445a067afb726df48eac55d593075c945199bd718b4116af84c15df6f5c095f541a5c8a008aef4474dda874e68517236f2f37e1539e0e5684240b058231 0001-CVE-2019-7637.patch
-105378cf7609872198c83b8824a1c36463b01f5696cda6c184252b728cdd1054cdc2e68a338f5d728facd182628d2a8b29b961664e89d7f9022abc0268c9afc1 0002-CVE-2019-7637.patch
-bbf11279fcf90a81b530ddfa7f84fc1b7feae8ef88f94e8095cb46818fa4617ed61669956851bca56e6799a4ea770cd1ebfa46d5d18763bf35c940643ab9fa1e 0002-CVE-2019-13616.patch
-"
diff --git a/testing/sdl/SDL-1.2.10-GrabNotViewable.patch b/testing/sdl/SDL-1.2.10-GrabNotViewable.patch
deleted file mode 100644
index 128cf3510d9..00000000000
--- a/testing/sdl/SDL-1.2.10-GrabNotViewable.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-Makes SDL-1.2 SDL_WM_GrabInput() non-blocking in case of SDL window is not
-viewable. Patch provided by <pbonzini@redhat.com>.
-See <http://bugzilla.libsdl.org/show_bug.cgi?id=1155>.
-
---- ./src/video/x11/SDL_x11wm.c 2007-12-31 04:48:13.000000000 +0000
-+++ ./src/video/x11/SDL_x11wm.c 2009-01-15 10:27:14.000000000 +0000
-@@ -351,13 +351,14 @@ SDL_GrabMode X11_GrabInputNoLock(_THIS,
- result = XGrabPointer(SDL_Display, SDL_Window, True, 0,
- GrabModeAsync, GrabModeAsync,
- SDL_Window, None, CurrentTime);
-- if ( result == GrabSuccess ) {
-+ if ( result == GrabSuccess || result == GrabNotViewable ) {
- break;
- }
- SDL_Delay(100);
- }
- if ( result != GrabSuccess ) {
- /* Uh, oh, what do we do here? */ ;
-+ return(SDL_GRAB_OFF);
- }
- /* Now grab the keyboard */
- XGrabKeyboard(SDL_Display, WMwindow, True,
diff --git a/testing/sdl/SDL-1.2.15-const_XData32.patch b/testing/sdl/SDL-1.2.15-const_XData32.patch
deleted file mode 100644
index 0f1c07cfb11..00000000000
--- a/testing/sdl/SDL-1.2.15-const_XData32.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-libX11-1.5.99.901 has changed prototype of _XData32
-
-<http://bugzilla.libsdl.org/show_bug.cgi?id=1769>
-
-diff -r b6b2829cd7ef src/video/x11/SDL_x11sym.h
---- a/src/video/x11/SDL_x11sym.h Wed Feb 27 15:20:31 2013 -0800
-+++ b/src/video/x11/SDL_x11sym.h Wed Mar 27 16:07:23 2013 +0100
-@@ -165,7 +165,7 @@
- */
- #ifdef LONG64
- SDL_X11_MODULE(IO_32BIT)
--SDL_X11_SYM(int,_XData32,(Display *dpy,register long *data,unsigned len),(dpy,data,len),return)
-+SDL_X11_SYM(int,_XData32,(Display *dpy,register _Xconst long *data,unsigned len),(dpy,data,len),return)
- SDL_X11_SYM(void,_XRead32,(Display *dpy,register long *data,long len),(dpy,data,len),)
- #endif
-
diff --git a/testing/sdparm/APKBUILD b/testing/sdparm/APKBUILD
index 1aa90ae30ab..5ed5fde08d0 100644
--- a/testing/sdparm/APKBUILD
+++ b/testing/sdparm/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=sdparm
pkgver=1.12
-pkgrel=0
+pkgrel=1
pkgdesc="SCSI device parameter modification tool"
url="http://sg.danny.cz/sg/sdparm.html"
arch="all"
diff --git a/testing/sdrangel/APKBUILD b/testing/sdrangel/APKBUILD
new file mode 100644
index 00000000000..a003fc6b3d0
--- /dev/null
+++ b/testing/sdrangel/APKBUILD
@@ -0,0 +1,84 @@
+# Contributor: Leon ROUX <leon.roux@federate.us>
+# Maintainer: Leon ROUX <leon.roux@federate.us>
+pkgname=sdrangel
+pkgver=7.15.0
+pkgrel=4
+pkgdesc="SDR Rx/Tx software and analyzer for various hardware"
+url="https://github.com/f4exb/sdrangel"
+license="GPL-3.0-or-later"
+# cm256cc
+arch="aarch64 x86_64"
+depends="
+ qt5-qtquickcontrols
+ qt5-qtquickcontrols2
+ qt5-qtgraphicaleffects
+ "
+makedepends="
+ aptdec-dev
+ boost-dev
+ cm256cc-dev
+ cmake
+ faad2-dev
+ ffmpeg-dev
+ fftw-dev
+ hackrf-dev
+ librtlsdr-dev
+ libusb-dev
+ opencv-dev
+ opus-dev
+ qt5-qtbase-dev
+ qt5-qtcharts-dev
+ qt5-qtgamepad-dev
+ qt5-qtlocation-dev
+ qt5-qtmultimedia-dev
+ qt5-qtserialport-dev
+ qt5-qtspeech-dev
+ qt5-qtwebengine-dev
+ qt5-qtwebsockets-dev
+ samurai
+ serialdv-dev
+ soapy-sdr-dev
+ uhd-dev
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/f4exb/sdrangel/archive/refs/tags/v$pkgver.tar.gz
+ no-march-magic.patch
+ "
+
+build() {
+ CFLAGS="$CFLAGS -O2 -flto=auto" \
+ CXXFLAGS="$CXXFLAGS -O2 -flto=auto" \
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DDEBUG_OUTPUT=ON \
+ -DENABLE_AIRSPY=OFF \
+ -DENABLE_AIRSPYHF=OFF \
+ -DENABLE_BLADERF=OFF \
+ -DENABLE_FUNCUBE=OFF \
+ -DENABLE_HACKRF=ON \
+ -DENABLE_IIO=OFF \
+ -DENABLE_LIMESUITE=OFF \
+ -DENABLE_MIRISDR=OFF \
+ -DENABLE_PERSEUS=OFF \
+ -DENABLE_RTLSDR=ON \
+ -DENABLE_SDRPLAY=OFF \
+ -DENABLE_SOAPYSDR=ON \
+ -DENABLE_XTRX=OFF \
+ -DENABLE_PACK_MIRSDRAPI=OFF \
+ -DENABLE_USRP=OFF
+ cmake --build build
+}
+
+check() {
+ cd build
+ CTEST_OUTPUT_ON_FAILURE=TRUE ctest
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+078c49eb9f073dc28fd2b6b8205a0f03bd5d08c7b98d833aa04504d45d17d4711714e985b47919b1d70f2139b5c767e7449a0160cdd1c575a27f84febc72e9aa sdrangel-7.15.0.tar.gz
+8779ed53c83505df3dac7a0b0a485c939f439a01f5aed203e25652cdb7d17c10ee629fab75b22b1ac9de882bfefbddcf2af5a3a8da75c5fdefc007a8fb9480f8 no-march-magic.patch
+"
diff --git a/testing/sdrangel/no-march-magic.patch b/testing/sdrangel/no-march-magic.patch
new file mode 100644
index 00000000000..01f013333c6
--- /dev/null
+++ b/testing/sdrangel/no-march-magic.patch
@@ -0,0 +1,14 @@
+disable the completely useless -march= option detective for native
+--
+diff --git a/cmake/Modules/CompilerOptions.cmake b/cmake/Modules/CompilerOptions.cmake
+index db06105..a3d8ed0 100644
+--- a/cmake/Modules/CompilerOptions.cmake
++++ b/cmake/Modules/CompilerOptions.cmake
+@@ -1,7 +1,5 @@
+ include_guard(GLOBAL)
+
+-include(DetectArchitecture)
+-
+ if (NOT APPLE)
+ set(CMAKE_INTERPROCEDURAL_OPTIMIZATION ON)
+ message(STATUS "Interprocedural optimization enabled")
diff --git a/testing/searchmonkey/APKBUILD b/testing/searchmonkey/APKBUILD
index 71ae9f39b89..2568c1057df 100644
--- a/testing/searchmonkey/APKBUILD
+++ b/testing/searchmonkey/APKBUILD
@@ -1,12 +1,12 @@
# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
pkgname=searchmonkey
pkgver=0.9.0
-pkgrel=0
+pkgrel=1
pkgdesc="Powerful GUI search utility for matching regex patterns, GTK version"
url="https://sourceforge.net/projects/searchmonkey/"
-arch="all"
+arch="!s390x !riscv64" # adwaita-icon-theme -> librsvg -> rust
license="GPL-3.0-or-later"
-depends="gnome-icon-theme"
+depends="adwaita-icon-theme"
makedepends="gtk+3.0-dev intltool poppler-dev libzip-dev"
subpackages="$pkgname-lang"
options="!check" # No test suite
diff --git a/testing/seastar/APKBUILD b/testing/seastar/APKBUILD
new file mode 100644
index 00000000000..f77470ce63f
--- /dev/null
+++ b/testing/seastar/APKBUILD
@@ -0,0 +1,96 @@
+# Maintainer: Duncan Bellamy <dunk@denkimushi.com>
+pkgname=seastar
+pkgver=22.11.0_git20240315
+pkgrel=2
+_commit="a8aa79b2b3bed89f7d90a40cfb4bd55b6e960070"
+_ver="${_commit:=$pkgver}"
+pkgdesc="High performance server-side application framework"
+url="https://seastar.io"
+# riscv64: valgrind
+# armhf armv7 x86 32bit not supported
+arch="all !x86 !armhf !armv7 !riscv64"
+license="Apache-2.0"
+depends_dev="
+ $pkgname=$pkgver-r$pkgrel
+ $pkgname-testing=$pkgver-r$pkgrel
+ "
+makedepends="
+ boost-dev
+ bsd-compat-headers
+ c-ares-dev
+ cmake
+ crypto++-dev
+ fmt-dev
+ gnutls-dev
+ hwloc-dev
+ libpciaccess-dev
+ libucontext-dev
+ libunwind-dev
+ liburing-dev
+ lksctp-tools-dev
+ lz4-dev
+ numactl-dev
+ protobuf-dev
+ ragel
+ samurai
+ util-linux-dev
+ valgrind-dev
+ xfsprogs-dev
+ yaml-cpp-dev
+ "
+case "$CARCH" in
+aarch64|x86_64) makedepends="$makedepends dpdk-dev" ;;
+esac
+subpackages="$pkgname-dev $pkgname-testing"
+source="$pkgname-$_ver.tar.gz::https://github.com/scylladb/seastar/archive/$_ver.tar.gz"
+builddir="$srcdir/$pkgname-$_ver"
+
+build() {
+ case "$CARCH" in
+ aarch64|x86_64) local _dpdk=ON ;;
+ *) local _dpdk=OFF ;;
+ esac
+ if [ "$CBUILD" != "$CHOST" ]; then
+ local crossopts="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ export CXXFLAGS="$CXXFLAGS -DSEASTAR_DEFAULT_ALLOCATOR -Wno-cpp"
+ cmake -B build -G Ninja \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DCMAKE_BUILD_TYPE=MinSizeRel \
+ -DSeastar_APPS=OFF \
+ -DSeastar_DEMOS=OFF \
+ -DSeastar_DOCS=OFF \
+ -DSeastar_DPDK="$_dpdk" \
+ $crossopts
+ cmake --build build
+}
+
+check() {
+ # rest: needs root (doesn't work in container) for hardware access
+ # see also: https://github.com/scylladb/seastar/issues/1826
+ local _tests="chunk_parsers|coroutines|fair_queue|file_io|httpd|request_parser|semaphore|stall_detector|tls|app-template"
+ case "$CARCH" in
+ ppc64le) _ppc64="|fsnotifier|network_interface|futures|execution_stage|fstream|directory" ;;
+ esac
+ ctest --test-dir build --output-on-failure \
+ -E "($_tests$_ppc64)"
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+dev() {
+ default_dev
+ amove usr/bin
+}
+
+testing() {
+ amove usr/lib/libseastar_*testing.so
+}
+
+sha512sums="
+3f23b6a64baaef45e1ae34cfbf364c1bdf11f5095d1dc85dfeb3fa1fc4866c734e745fcd71af1b23bb8ac29dfde9caab4d8c2ea3dd8923c4d9258a3f2d57f4e8 seastar-a8aa79b2b3bed89f7d90a40cfb4bd55b6e960070.tar.gz
+"
diff --git a/testing/seaweedfs/APKBUILD b/testing/seaweedfs/APKBUILD
index 5ffd65c52f0..479ebf98db5 100644
--- a/testing/seaweedfs/APKBUILD
+++ b/testing/seaweedfs/APKBUILD
@@ -1,29 +1,28 @@
# Contributor: wener <wenermail@gmail.com>
# Maintainer: wener <wenermail@gmail.com>
pkgname=seaweedfs
-pkgver=2.99
+pkgver=3.63
pkgrel=1
pkgdesc="SeaweedFS is a simple and highly scalable distributed file system to store and serve billions of files fast"
-url="https://github.com/chrislusf/seaweedfs"
+url="https://github.com/seaweedfs/seaweedfs"
license="Apache-2.0"
arch="all !s390x !ppc64le !riscv64" # FTBFS
makedepends="go"
subpackages="$pkgname-doc $pkgname-openrc"
-source="
- seaweedfs-$pkgver.tar.gz::https://github.com/chrislusf/seaweedfs/archive/$pkgver.tar.gz
+source="seaweedfs-$pkgver.tar.gz::https://github.com/seaweedfs/seaweedfs/archive/$pkgver.tar.gz
seaweedfs.initd
seaweedfs.confd
"
+options="net"
-export GO111MODULE=on
-export GOPATH="$srcdir"
export CGO_ENABLED=1
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
build() {
GO_LDFLAGS="
- -w -s
- -extldflags
- -static
+ -extldflags \"$LDFLAGS\"
-X github.com/chrislusf/seaweedfs/weed/util.COMMIT=AlpineLinux
"
# build for large disk support
@@ -35,8 +34,10 @@ build() {
check() {
# s3/basic need credential
# weed/operation need server
+ # unmaintained may fail
+ # s3client uses non-32 int
# shellcheck disable=SC2046
- go test $(go list ./... | grep -v -e 's3/basic$' -e 'weed/operation$')
+ go test $(go list ./... | grep -v -e 's3/basic$' -e 'weed/operation$' -e 'unmaintained' -e 's3/s3client' )
}
package() {
@@ -51,13 +52,8 @@ package() {
"$pkgdir"/etc/conf.d/$pkgname
}
-cleanup_srcdir() {
- go clean -modcache
- default_cleanup_srcdir
-}
-
sha512sums="
-116b29ade2bf44563fb29ef6cbc934ac8d9b9a0ed4b32a7a5ad0e82bf5c3aafb8701bc3bb39c05ca0c0c23b75fc2a9de6e6c434c157db0ca4ae0d5b4e7b129a1 seaweedfs-2.99.tar.gz
+2f3f6f0801a61cc450fda3dbfae946c20928e4f8affdda59333722b9d51cc18871a0108e087bb38f1881b88859461e369ab5e6fba25e0b9d39c86446898b3ae4 seaweedfs-3.63.tar.gz
54a1bb3d77e20e54dc38b08124665fc0f0bc510e9ca044a0d77d43ca45500572b9eae591ac1e55f7d54f95bb16055909534f9a8111ee33662d6a3f2789244adc seaweedfs.initd
31c4f65425836fc53e6b2e3f93333afb2804d4655aa2903eee10b12a5f337518dae5b3e26510bc76f61e8c917a3e130decdac7ec1faeb9dab143a8aefb3951df seaweedfs.confd
"
diff --git a/testing/secsipidx/APKBUILD b/testing/secsipidx/APKBUILD
index 5d0e60222e0..2bcee5749ab 100644
--- a/testing/secsipidx/APKBUILD
+++ b/testing/secsipidx/APKBUILD
@@ -1,32 +1,21 @@
# Maintainer: Leonardo Arena <rnalrd@alpinelinux.org>
pkgname=secsipidx
-pkgver=1.0.0
-pkgrel=5
+pkgver=1.3.2
+pkgrel=4
pkgdesc="Secure SIP/Telephony Identity Extensions"
url="https://github.com/asipto/secsipidx"
arch="all"
license="GPL-2.0-only"
makedepends="go"
-source="$pkgname-$pkgver.tar.gz::https://github.com/asipto/secsipidx/archive/v1.0.0.tar.gz
- go.mod
- go.sum
- "
+subpackages="$pkgname-dev $pkgname-libs"
+source="$pkgname-$pkgver.tar.gz::https://github.com/asipto/secsipidx/archive/v$pkgver.tar.gz"
-export GOPATH="$srcdir/go"
-export GOCACHE="$srcdir/go-build"
-export GOTEMPDIR="$srcdir/go"
-
-export GOFLAGS="$GOFLAGS -modcacherw"
-
-prepare() {
- default_prepare
-
- cp "$srcdir/go.mod" .
- cp "$srcdir/go.sum" .
-}
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
build() {
- go build -v
+ make
}
check() {
@@ -34,12 +23,14 @@ check() {
}
package() {
- install -D -m755 secsipidx "$pkgdir"/usr/bin/secsipidx
+ make -j1 DESTDIR="$pkgdir" PREFIX="/usr" install
}
+libs() {
+ pkgdesc="secsipid library files"
+ amove usr/lib/*.so*
+}
sha512sums="
-38855cf0b511c638063daacde040083638f7a53f31366d3df3b4c37d7d29e784f7e352bf4f194f99cab2eacf9308bed207a22b2ec1bfd0d843658f9d1664c997 secsipidx-1.0.0.tar.gz
-d6f60c25ddbb6cd3a3417497f8468722f714ea06285f5de8b77ea574f30b2b4908ff52c2e95d02fff652a21457c3c31433f4db083f5369fa23d4d08cf537633a go.mod
-236db275d23a0fb1a2492b5a3b017b7c07e2a70e002e87e1d279b034030f1def50f6f1171925b3b8e3db3e3af653e6dbfc3732e37b11ff9e35676daf4a898bf6 go.sum
+dfdc18f47048308c677623d25d72f2fd7c159033b10ee4121d36049742888f79eed4a39245dc03bc79f592c22309ff4248066d13b35c90912ac42f56f1d9c1e2 secsipidx-1.3.2.tar.gz
"
diff --git a/testing/secsipidx/go.mod b/testing/secsipidx/go.mod
deleted file mode 100644
index 64b85f9dbe9..00000000000
--- a/testing/secsipidx/go.mod
+++ /dev/null
@@ -1,5 +0,0 @@
-module github.com/asipto/secsipidx
-
-go 1.16
-
-require github.com/google/uuid v1.2.0
diff --git a/testing/secsipidx/go.sum b/testing/secsipidx/go.sum
deleted file mode 100644
index a4d2b5ecb01..00000000000
--- a/testing/secsipidx/go.sum
+++ /dev/null
@@ -1,2 +0,0 @@
-github.com/google/uuid v1.2.0 h1:qJYtXnJRWmpe7m/3XlyhrsLrEURqHRM2kxzoxXqyUDs=
-github.com/google/uuid v1.2.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
diff --git a/testing/sedutil/APKBUILD b/testing/sedutil/APKBUILD
index dd12c7b7a3e..5c430fad0f8 100644
--- a/testing/sedutil/APKBUILD
+++ b/testing/sedutil/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Timo Teräs <timo.teras@iki.fi>
pkgname=sedutil
pkgver=1.15.1
-pkgrel=0
+pkgrel=1
pkgdesc="DTA sedutil Self encrypting drive software"
url="https://github.com/Drive-Trust-Alliance/sedutil"
arch="all"
diff --git a/testing/seed7/APKBUILD b/testing/seed7/APKBUILD
new file mode 100644
index 00000000000..b05e6104567
--- /dev/null
+++ b/testing/seed7/APKBUILD
@@ -0,0 +1,96 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=seed7
+pkgver=05.20240322
+pkgrel=0
+_pkgver="${pkgver//./_}"
+pkgdesc="High-level, extensible programming language"
+url="https://seed7.sourceforge.net/"
+# armhf, armv7: rand tests from chkflt fail
+arch="all !armhf !armv7"
+license="GPL-2.0-or-later AND LGPL-2.1-or-later"
+makedepends="
+ freetds-dev
+ libx11-dev
+ libxrender-dev
+ mariadb-connector-c-dev
+ ncurses-dev
+ postgresql-dev
+ sqlite-dev
+ unixodbc-dev
+ "
+subpackages="
+ $pkgname-doc
+ $pkgname-nano::noarch
+ $pkgname-vim::noarch
+ "
+source="https://downloads.sourceforge.net/seed7/seed7_$_pkgver.tgz
+ makefile.patch
+ "
+builddir="$srcdir/seed7/src"
+
+_s7include=/usr/lib/seed7/lib
+_s7runtime=/usr/lib/seed7/bin
+
+prepare() {
+ default_prepare
+
+ make depend \
+ SEED7_LIBRARY=$_s7include \
+ S7_LIB_DIR=$_s7runtime
+}
+
+build() {
+ make all
+ make make7
+}
+
+check() {
+ make test
+}
+
+package() {
+ cd "$srcdir/seed7"
+
+ # install interpreter, compiler, and make
+ install -Dvm755 bin/s7 bin/s7c bin/make7 -t "$pkgdir"/usr/bin/
+
+ # install Seed7 library
+ install -Dvm644 lib/*.s7i -t "$pkgdir"$_s7include/
+ install -Dvm644 lib/comp/*.s7i -t "$pkgdir"$_s7include/comp/
+
+ # install static libraries
+ install -Dvm644 bin/*.a -t "$pkgdir"$_s7runtime/
+
+ # install vim and nano syntax files
+ install -Dvm644 doc/sd7.vim -t "$pkgdir"/usr/share/vim/vimfiles/ftdetect/
+ install -Dvm644 doc/seed7.vim -t "$pkgdir"/usr/share/vim/vimfiles/syntax/
+ install -Dvm644 doc/seed7.nanorc -t "$pkgdir"/usr/share/nano/
+
+ # install docs, man pages, and examples
+ install -Dvm644 doc/*.txt -t "$pkgdir"/usr/share/doc/$pkgname/
+ install -Dvm644 doc/*.1 -t "$pkgdir"/usr/share/man/man1/
+ install -Dvm644 prg/*.dna prg/*.sd7 prg/*.dat prg/*.s7i \
+ -t "$pkgdir"/usr/share/doc/$pkgname/examples/
+}
+
+nano() {
+ pkgdesc="$pkgdesc (nano syntax)"
+ install_if="$pkgname=$pkgver-r$pkgrel nano"
+ depends=
+
+ amove usr/share/nano
+}
+
+vim() {
+ pkgdesc="$pkgdesc (vim syntax)"
+ install_if="$pkgname=$pkgver-r$pkgrel vim"
+ depends=
+
+ amove usr/share/vim/vimfiles
+}
+
+sha512sums="
+5e0436696e76376e7e0752c3dd3861422267804955bd300f3377476d3870abd726f131bce55bdee84102f19b090ff349015a6ddd7e4c2732372dac084cead9c6 seed7_05_20240322.tgz
+1028e81c04cca92929f48f6bdcf93ea109d4ba423b4b6183980758b606707388497ebdd828fe22cc7d69f94abaecace77ca7337fca7644c71018a8c0ec4fdb3f makefile.patch
+"
diff --git a/testing/seed7/makefile.patch b/testing/seed7/makefile.patch
new file mode 100644
index 00000000000..746a6348be8
--- /dev/null
+++ b/testing/seed7/makefile.patch
@@ -0,0 +1,10 @@
+--- a/makefile
++++ b/makefile
+@@ -226,7 +226,6 @@
+ echo "#define LINKER_OPT_DYN_LINK_LIBS \"-ldl\"" >> chkccomp.h
+ echo "#define POTENTIAL_PARTIAL_LINKING_OPTIONS \"-r\", \"-r -nostdlib\"" >> chkccomp.h
+ echo "#define USE_GMP 0" >> chkccomp.h
+- echo "#define ALLOW_REPLACEMENT_OF_SYSTEM_HEADERS" >> chkccomp.h
+
+ base.h:
+ echo "#define PATH_DELIMITER '/'" > base.h
diff --git a/testing/sems/APKBUILD b/testing/sems/APKBUILD
index 05a075b9ce6..35380354f7d 100644
--- a/testing/sems/APKBUILD
+++ b/testing/sems/APKBUILD
@@ -1,8 +1,9 @@
# Contributor: Francesco Colista <fcolista@alpinelinux.org>
# Maintainer: Simon Frankenberger <simon-alpine@fraho.eu>
pkgname=sems
-pkgver=1.6.0
-pkgrel=12
+pkgver=1.7.2_git20240113
+pkgrel=0
+_gitver=e67ff5a76ec9b1cb402d0d91c5c9e7a12e6c3252
pkgdesc="SIP Express Media Server, an extensible SIP media server"
url="https://github.com/sems-server/sems/"
arch="all"
@@ -12,48 +13,35 @@ options="!check"
pkgusers="sems"
pkggroups="sems"
install="$pkgname.pre-install"
-makedepends="cmake bash openssl-dev linux-headers
+depends="python3 bash"
+makedepends="cmake openssl-dev>3 linux-headers
libsamplerate-dev spandsp-dev flite-dev gsm-dev speex-dev
- libevent-dev libev-dev lame-dev tiff-dev"
+ libevent-dev libev-dev lame-dev opus-dev tiff-dev"
subpackages="$pkgname-doc $pkgname-conference
- $pkgname-diameter_client $pkgname-early_announce
- $pkgname-g722 $pkgname-gsm $pkgname-mp3 $pkgname-speex $pkgname-xmlrpc2di
+ $pkgname-diameter_client $pkgname-dsm $pkgname-early_announce
+ $pkgname-g722 $pkgname-gsm $pkgname-ilbc $pkgname-mp3
+ $pkgname-opus $pkgname-speex $pkgname-xmlrpc2di
$pkgname-webconference $pkgname-voicebox $pkgname-voicemail
$pkgname-annrecorder $pkgname-jsonrpc $pkgname-registrar $pkgname-openrc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/sems-server/sems/archive/$pkgver.tar.gz
- sems-0001-Force-to-use-system-wide-GSM-includes.patch
+source="$pkgname-$pkgver.tar.gz::https://github.com/sems-server/sems/archive/$_gitver.tar.gz
sems-0002-Allow-rewrite-of-custom-makefiles-by-CMake.patch
- sems-0003-Set-CFG_PREFIX-to-empty-string-by-default.patch
sems-0004-musl-fixes.patch
sems-0005-stats-needs-version.patch
- sems-0011-Add-SBC-dependencies.patch
- std-types.patch
- sems-0013-Fix-for-C-11.patch
- Fix-find-openssl.patch
- Fix-openssl-1.1.patch
- remove-dsm.patch
+ sems-0014-further-musl-fixes.patch
sems.initd
"
-# sems-0005-Add-sw_prepaid_sip-plugin-to-default-exclude-list-du.patch
-# sems-0006-last-minute-fix-proper-version.patch
-# sems-0008-Install-email-template.patch
-# sems-0009-Don-t-start-py_sems-by-default.patch
-
-# applied:
-# sems-0004-fix-PRACK-route.patch
-# sems-0007-Fix-gateway-module-s-version-passing-in-CMake.patch
-# sems-0010-Move-CMake-defines.patch
replaces="
$pkgname-ivr
$pkgname-mailbox
$pkgname-conf_auth
$pkgname-pin_collect
- $pkgname-dsm
" # Removed in 1.6.0-r10 (due to depending on EOL python)
+builddir="$srcdir/sems-$_gitver"
+
prepare() {
default_prepare
rm -rf core/plug-in/gsm/gsm-1.0-pl10/
@@ -69,7 +57,7 @@ build() {
-DSEMS_USE_LIBSAMPLERATE=yes \
-DSEMS_USE_ZRTP=NO \
-DSEMS_USE_MP3=yes \
- -DSEMS_USE_ILBC=NO \
+ -DSEMS_USE_OPUS=yes \
-DSEMS_USE_TTS=yes \
-DSEMS_USE_OPENSSL=yes \
-DSEMS_USE_MONITORING=yes \
@@ -116,6 +104,15 @@ diameter_client() {
_mv_sub usr/lib/sems/plug-in/diameter_client.so
}
+dsm() {
+ pkgdesc="The state machine interpreter for SEMS"
+ depends="sems"
+ cd "$pkgdir"
+ _mv_sub etc/sems/etc/dsm* \
+ usr/lib/sems/plug-in/dsm.so \
+ usr/lib/sems/dsm
+}
+
early_announce() {
pkgdesc="Early announce application for SEMS"
depends="sems"
@@ -141,12 +138,24 @@ gsm() {
_mv_sub usr/lib/sems/plug-in/gsm.so
}
+ilbc() {
+ pkgdesc="iLBC support for SEMS"
+ depends="sems"
+ _mv_sub usr/lib/sems/plug-in/ilbc.so
+}
+
mp3() {
pkgdesc="MP3 support for SEMS"
depends="sems"
_mv_sub usr/lib/sems/plug-in/mp3.so
}
+opus() {
+ pkgdesc=" OPUS codec for SEMS"
+ depends="sems"
+ _mv_sub usr/lib/sems/plug-in/opus.so
+}
+
webconference() {
pkgdesc="Conference bridge via DI (xmlrpc) for SEMS"
depends="sems sems-xmlrpc2di"
@@ -215,16 +224,11 @@ registrar() {
usr/lib/sems/plug-in/registrar_client.so
}
-sha512sums="80190dbdc1d68dc7aa377b2af6a962f08c058a42cd618cb422d6d4e0f9138059fad71b7f284c6420de462ad4dcd65ea5e65b3c5b82dc1850dbd5b5a45644d3d4 sems-1.6.0.tar.gz
-87c6f878c3ad5e947a9a80431ddf28f08c04ce1415b7c42878f66b423c78d909efda836c7c2d3ed97e075c08d7a07c4707a49c14ce42c1a3aa350de1878c8d09 sems-0001-Force-to-use-system-wide-GSM-includes.patch
-4c09033d6acd1bbef2aa2d02571f74da29532decca67b9ce861872d8d9522ca31808d6e26c3b536913ef7a988f90d374e217187b9cadb6a79d5c830571e94b67 sems-0002-Allow-rewrite-of-custom-makefiles-by-CMake.patch
-ba6f0d917464729c63628255bee3d864a954af4a510b802f0de1d51f35ff5d7c1c33cbe14db31818133a3c94f84da0f4bea4184ce1e8eae6aa9a1ba79f2e5347 sems-0003-Set-CFG_PREFIX-to-empty-string-by-default.patch
-0d3deeb8617a96f81a05fc27b94bca70f4f6dfbdb3c75f0cd4abc5df002ff16f70ec2836717f317b0d03a8178415c2c09ca2d7099bf10c7ac3c58b273ee98776 sems-0004-musl-fixes.patch
+sha512sums="
+2369f25c41e5440ba6e2d5841d85f96b0e3e26a67660a343f89e57a1451a0818b577bb5e32e6413f589ae1d36777d6132074d02c9f076b29d38a557176c81dde sems-1.7.2_git20240113.tar.gz
+25d93994e444312445fd277b85fb8e53f9314fb370f2f2377b599c99e41c1d9787db392752f4b1c30b76bd6c4411ca5a67570f534f40282778e30a269a1d3c90 sems-0002-Allow-rewrite-of-custom-makefiles-by-CMake.patch
+d98cbabe9fe6154e4e7354a742c3871668d9ef798c32ec60a36d5f3b2bf4419a57609988bc979bcc53855e3ab1368616fa2ea647d5a00fe31ce65c93f32f9700 sems-0004-musl-fixes.patch
28f07142a0b8b6698948d41bfb198e59637d5a921960adc496111b5cad4685a0b1cade821ac9cd9dbbf3f25ed6195f29485a12d077abf81428b9b6f8bfced79e sems-0005-stats-needs-version.patch
-d616448e70d1cdfc7016f7ff3cab3615063a65f551b4b03cd004ced60b7a24681e85a871788ef2bf13d37c6cb3c84a6d76ba44fd9b9d1a921ad4b8469f3c6ed1 sems-0011-Add-SBC-dependencies.patch
-79e3ac2b202b3f6c710b3d2bc8ac459e3622f2bf5945eaaa81778f53bcbddc7951266f88c2fd9862fbed44f10a160368af7d19b5e81929a3b1e8ee150111f74b std-types.patch
-d21eb55ebcbf3d20703dcb3843415b9f7e8d4fa029396738b843d8ece80abf87475e7d06794f86c75e8c3205273c013e99da4772d169bf127d7985522230265a sems-0013-Fix-for-C-11.patch
-5d8493a7323af5e48a862e6f54e606a0eb0c778115922822a450e226b6f55051797b645595de068307b3d624c1aa9958fee16c838b49508352b336138783e210 Fix-find-openssl.patch
-b9b00accd7b69cf531f22df43e3334ef099d24aa0bb164c860a8a87ec2cc12520a1c83217ec10357d101b5394d00559a669cd6fa12e1d9cbe05c6cde2afc5cc6 Fix-openssl-1.1.patch
-f354d2ddc8bc96792faef75417e10cc86b56de115114688a438b6019345406a5454ac71f50a424613bbdaea3a79e5d8299ca95c511c1791f25e0f7ced766cdb5 remove-dsm.patch
-5be93b6444a9592daa6c883c78e5906e9e662891e1daa850d872bdaa657eb756f1bc0879732033479b279b75c2fd42ef79aa530ebf3b1692e7fb222d484f804b sems.initd"
+044a344706c099b6e420a01ca3a2947fb7a44ed81a6ccf4942d2fcdcc73dc174c504f151faa010c6a370d7463c6b02e6c14f6aa237a5ca706171e7cfb9499818 sems-0014-further-musl-fixes.patch
+5be93b6444a9592daa6c883c78e5906e9e662891e1daa850d872bdaa657eb756f1bc0879732033479b279b75c2fd42ef79aa530ebf3b1692e7fb222d484f804b sems.initd
+"
diff --git a/testing/sems/Fix-find-openssl.patch b/testing/sems/Fix-find-openssl.patch
deleted file mode 100644
index 2dad112c002..00000000000
--- a/testing/sems/Fix-find-openssl.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- old/CMakeLists.txt
-+++ new/CMakeLists.txt
-@@ -161,7 +161,7 @@
- ENDIF(SPEEX_FOUND)
-
- IF(SEMS_USE_OPENSSL)
-- FIND_PACKAGE(OpenSSL REQUIRED QUIETLY)
-+ FIND_PACKAGE(OpenSSL REQUIRED)
- MESSAGE(STATUS "Found OpenSSL includes: ${OPENSSL_INCLUDE_DIR}/openssl/ssl.h")
- MESSAGE(STATUS "Found OpenSSL library: ${OPENSSL_LIBRARIES}")
- MESSAGE(STATUS "Using OpenSSL: YES")
diff --git a/testing/sems/Fix-openssl-1.1.patch b/testing/sems/Fix-openssl-1.1.patch
deleted file mode 100644
index e29e9540c27..00000000000
--- a/testing/sems/Fix-openssl-1.1.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 929872513cf14c4c11df1b144b97595301f69475 Mon Sep 17 00:00:00 2001
-From: Guillem Jover <gjover@sipwise.com>
-Date: Fri, 25 Aug 2017 14:12:15 +0200
-Subject: [PATCH] apps/diameter_client: Do not access the OpenSSL BIO struct
- directly
-
-Use a proper accessor instead of messing with the struc directly
-which has become opaque in latest OpenSSL versions.
----
- apps/diameter_client/lib_dbase/tcp_comm.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/apps/diameter_client/lib_dbase/tcp_comm.c b/apps/diameter_client/lib_dbase/tcp_comm.c
-index d9fea4591..1290fc3a3 100644
---- a/apps/diameter_client/lib_dbase/tcp_comm.c
-+++ b/apps/diameter_client/lib_dbase/tcp_comm.c
-@@ -74,7 +74,7 @@ long tcp_ssl_dbg_cb(BIO *bio, int oper, const char *argp,
- switch (oper) {
- case BIO_CB_WRITE: {
- char buf[256];
-- snprintf(buf, 256, "%s: %s", argp, bio->method->name);
-+ snprintf(buf, 256, "%s: %s", argp, BIO_method_name(bio));
- INFO("%s", buf);
- } break;
-
diff --git a/testing/sems/remove-dsm.patch b/testing/sems/remove-dsm.patch
deleted file mode 100644
index 6669a83d8a1..00000000000
--- a/testing/sems/remove-dsm.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-Requires python2
-
-diff --git a/apps/CMakeLists.txt b/apps/CMakeLists.txt
-index e2668eb..c8cc2d2 100644
---- a/apps/CMakeLists.txt
-+++ b/apps/CMakeLists.txt
-@@ -6,6 +6,7 @@ ADD_SUBDIRECTORY(callback)
- ADD_SUBDIRECTORY(click2dial)
- IF(PYTHONLIBS_FOUND)
- ADD_SUBDIRECTORY(conf_auth)
-+ ADD_SUBDIRECTORY(dsm)
- ENDIF(PYTHONLIBS_FOUND)
- ADD_SUBDIRECTORY(conference)
- IF(MYSQLPP_FOUND)
-@@ -14,7 +15,6 @@ ENDIF(MYSQLPP_FOUND)
- IF(OPENSSL_FOUND)
- ADD_SUBDIRECTORY(diameter_client)
- ENDIF(OPENSSL_FOUND)
--ADD_SUBDIRECTORY(dsm)
- ADD_SUBDIRECTORY(early_announce)
- #ADD_SUBDIRECTORY(examples)
- IF(MISDN_FOUND)
-
diff --git a/testing/sems/sems-0001-Force-to-use-system-wide-GSM-includes.patch b/testing/sems/sems-0001-Force-to-use-system-wide-GSM-includes.patch
deleted file mode 100644
index d09b793395d..00000000000
--- a/testing/sems/sems-0001-Force-to-use-system-wide-GSM-includes.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From de3c54f85f893e4ee985b1da93cc014b00456fa8 Mon Sep 17 00:00:00 2001
-From: Peter Lemenkov <lemenkov@gmail.com>
-Date: Wed, 31 Mar 2010 11:52:52 +0400
-Subject: [PATCH 01/11] Force to use system-wide GSM includes
-
-Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
----
- core/plug-in/gsm/gsm.c | 2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/core/plug-in/gsm/gsm.c b/core/plug-in/gsm/gsm.c
-index 286a989..3517e59 100644
---- a/core/plug-in/gsm/gsm.c
-+++ b/core/plug-in/gsm/gsm.c
-@@ -27,7 +27,7 @@
-
- #include "amci.h"
- #include "codecs.h"
--#include "gsm-1.0-pl10/inc/gsm.h"
-+#include <gsm.h>
- #include "../../log.h"
-
- #include <stdlib.h>
---
-1.7.3.4
-
diff --git a/testing/sems/sems-0002-Allow-rewrite-of-custom-makefiles-by-CMake.patch b/testing/sems/sems-0002-Allow-rewrite-of-custom-makefiles-by-CMake.patch
index 0cfeab8c83a..4e702ad149a 100644
--- a/testing/sems/sems-0002-Allow-rewrite-of-custom-makefiles-by-CMake.patch
+++ b/testing/sems/sems-0002-Allow-rewrite-of-custom-makefiles-by-CMake.patch
@@ -1,19 +1,8 @@
-From 26929b6a7a62299b71bf7c99f17f75670a2040e2 Mon Sep 17 00:00:00 2001
-From: Peter Lemenkov <lemenkov@gmail.com>
-Date: Wed, 31 Mar 2010 11:53:48 +0400
-Subject: [PATCH 02/11] Allow rewrite of custom makefiles by CMake
-
-Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
----
- CMakeLists.txt | 9 ---------
- 1 files changed, 0 insertions(+), 9 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index a6ff425..ef3934e 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -26,15 +26,6 @@ ELSE(IS_DEVEL)
- ENDIF(IS_DEVEL)
+diff -urp a/CMakeLists.txt b/CMakeLists.txt
+--- a/CMakeLists.txt 2021-10-21 10:06:12.000000000 +0200
++++ b/CMakeLists.txt 2021-12-02 00:42:09.962054752 +0100
+@@ -34,14 +34,14 @@ ADD_DEFINITIONS(-DSEMS_APP_NAME=\\\"sems
+
MESSAGE(STATUS "Configuring ${CMAKE_PROJECT_NAME} v. ${SEMS_VERSION}")
-IF(CMAKE_SOURCE_DIR STREQUAL CMAKE_BINARY_DIR AND NOT MSVC_IDE)
@@ -24,10 +13,14 @@ index a6ff425..ef3934e 100644
-This process created the file `CMakeCache.txt' and the directory `CMakeFiles'.
-Please delete them.")
-ENDIF(CMAKE_SOURCE_DIR STREQUAL CMAKE_BINARY_DIR AND NOT MSVC_IDE)
--
++#IF(CMAKE_SOURCE_DIR STREQUAL CMAKE_BINARY_DIR AND NOT MSVC_IDE)
++# message(FATAL_ERROR "In-source builds are not allowed.
++#CMake would overwrite all makefiles distributed with SEMS.
++#Please create a directory and run cmake from there, passing the path
++#to this source directory as the last argument.
++#This process created the file `CMakeCache.txt' and the directory `CMakeFiles'.
++#Please delete them.")
++#ENDIF(CMAKE_SOURCE_DIR STREQUAL CMAKE_BINARY_DIR AND NOT MSVC_IDE)
+
+ OPTION(SEMS_USE_OPUS "Build with Opus" OFF)
OPTION(SEMS_USE_SPANDSP "Build with spandsp" OFF)
- OPTION(SEMS_USE_LIBSAMPLERATE "Build with libsamplerate" OFF)
- OPTION(SEMS_USE_ZRTP "Build with ZRTP" OFF)
---
-1.7.3.4
-
diff --git a/testing/sems/sems-0003-Set-CFG_PREFIX-to-empty-string-by-default.patch b/testing/sems/sems-0003-Set-CFG_PREFIX-to-empty-string-by-default.patch
deleted file mode 100644
index df0a5ad405a..00000000000
--- a/testing/sems/sems-0003-Set-CFG_PREFIX-to-empty-string-by-default.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From e322f2e00e48b639b5d87ed06738aa24d99396bf Mon Sep 17 00:00:00 2001
-From: Peter Lemenkov <lemenkov@gmail.com>
-Date: Wed, 31 Mar 2010 18:56:39 +0400
-Subject: [PATCH 03/11] Set CFG_PREFIX to empty string by default
-
-Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
----
- CMakeLists.txt | 2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index ef3934e..c36ce62 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -48,7 +48,7 @@ ENDIF (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} STREQUAL "2.4")
- SET(CMAKE_DL_LIBS ${CMAKE_DL_LIBS} m pthread)
-
- IF (NOT SEMS_CFG_PREFIX)
-- SET(SEMS_CFG_PREFIX "/usr/local")
-+ SET(SEMS_CFG_PREFIX "")
- ENDIF (NOT SEMS_CFG_PREFIX)
- MESSAGE(STATUS "SEMS cfg prefix was set to: ${SEMS_CFG_PREFIX}")
-
---
-1.7.3.4
-
diff --git a/testing/sems/sems-0004-musl-fixes.patch b/testing/sems/sems-0004-musl-fixes.patch
index 6302f30b39a..e7fcb149f67 100644
--- a/testing/sems/sems-0004-musl-fixes.patch
+++ b/testing/sems/sems-0004-musl-fixes.patch
@@ -53,4 +53,3 @@ index 6f03e5c..d7030eb 100644
+#include <sys/resource.h>
#include <sys/prctl.h>
#endif
-
diff --git a/testing/sems/sems-0011-Add-SBC-dependencies.patch b/testing/sems/sems-0011-Add-SBC-dependencies.patch
deleted file mode 100644
index cf572a03153..00000000000
--- a/testing/sems/sems-0011-Add-SBC-dependencies.patch
+++ /dev/null
@@ -1,22 +0,0 @@
---- a/apps/sbc/CMakeLists.txt
-+++ b/apps/sbc/CMakeLists.txt
-@@ -6,6 +6,19 @@
- SBC.cpp
- SBCCallProfile.cpp
- SDPFilter.cpp
-+
-+CallLeg.cpp
-+RateLimit.cpp
-+RegisterCache.cpp
-+RegisterDialog.cpp
-+ReplacesMapper.cpp
-+SBCCallLeg.cpp
-+SBCCallRegistry.cpp
-+SBCEventLog.cpp
-+SBCSimpleRelay.cpp
-+SessionUpdate.cpp
-+SubscriptionDialog.cpp
-+arg_conversion.cpp
- )
-
- SET(sbc_config_files
diff --git a/testing/sems/sems-0013-Fix-for-C-11.patch b/testing/sems/sems-0013-Fix-for-C-11.patch
deleted file mode 100644
index 5dd06b1cab3..00000000000
--- a/testing/sems/sems-0013-Fix-for-C-11.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From: Peter Lemenkov <lemenkov@gmail.com>
-Date: Fri, 8 Apr 2016 14:50:23 +0300
-Subject: [PATCH] Fix for C++11
-
-Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
-
-diff --git a/apps/sbc/RegisterCache.cpp b/apps/sbc/RegisterCache.cpp
-index cbd3c30..5cd1235 100644
---- a/apps/sbc/RegisterCache.cpp
-+++ b/apps/sbc/RegisterCache.cpp
-@@ -955,7 +955,7 @@ bool _RegisterCache::throttleRegister(RegisterCacheCtx& ctx,
- return false; // fwd
- }
-
-- alias_updates.push_back(make_pair<string,long int>(reg_binding.alias,
-+ alias_updates.push_back(make_pair(reg_binding.alias,
- contact_expires));
- }
-
-diff --git a/apps/sbc/RegisterDialog.cpp b/apps/sbc/RegisterDialog.cpp
-index 820e03d..88b94cb 100644
---- a/apps/sbc/RegisterDialog.cpp
-+++ b/apps/sbc/RegisterDialog.cpp
-@@ -239,7 +239,7 @@ int RegisterDialog::fixUacContacts(const AmSipRequest& req)
- continue;
- }
-
-- alias_updates.push_back(make_pair<string,long int>(reg_binding.alias,
-+ alias_updates.push_back(make_pair(reg_binding.alias,
- contact_expires));
- }
-
-diff --git a/core/sip/resolver.cpp b/core/sip/resolver.cpp
-index 9793069..7bc6ff7 100644
---- a/core/sip/resolver.cpp
-+++ b/core/sip/resolver.cpp
-@@ -823,7 +823,7 @@ dns_entry_map::insert(const dns_entry_map::value_type& x)
- bool dns_entry_map::insert(const string& key, dns_entry* e)
- {
- std::pair<iterator, bool> res =
-- insert(make_pair<const key_type&,mapped_type>(key,e));
-+ insert(make_pair(key,e));
-
- if(res.second) {
- inc_ref(e);
diff --git a/testing/sems/sems-0014-further-musl-fixes.patch b/testing/sems/sems-0014-further-musl-fixes.patch
new file mode 100644
index 00000000000..2d2f2ab09b3
--- /dev/null
+++ b/testing/sems/sems-0014-further-musl-fixes.patch
@@ -0,0 +1,12 @@
+--- a/core/AmRtpAudio.cpp 2021-10-21 10:06:12.000000000 +0200
++++ b/core/AmRtpAudio.cpp 2021-12-02 09:48:19.320236030 +0100
+@@ -76,7 +76,8 @@ void AmAudioRtpFormat::initCodec()
+ } else {
+ if (NULL != sdp_format_parameters_out) {
+ DBG("negotiated fmt parameters '%s'\n", sdp_format_parameters_out);
+- log_demangled_stacktrace(L_DBG, 30);
++ // MUSL BACKTRACE NOT WORKING
++ //log_demangled_stacktrace(L_DBG, 30);
+ }
+
+ if (NULL != fmt_i) {
diff --git a/testing/sems/std-types.patch b/testing/sems/std-types.patch
deleted file mode 100644
index edaf8d53aaf..00000000000
--- a/testing/sems/std-types.patch
+++ /dev/null
@@ -1,281 +0,0 @@
-diff --git a/apps/gateway/mISDNChannel.cpp b/apps/gateway/mISDNChannel.cpp
-index 8abd77a..36e8778 100644
---- a/apps/gateway/mISDNChannel.cpp
-+++ b/apps/gateway/mISDNChannel.cpp
-@@ -118,8 +118,8 @@ int mISDN_get_free_ext_ie(mISDN::Q931_info_t *qi) {
- return (-1);
- }
-
--int mISDN_AddIE(mISDN::Q931_info_t *qi, u_char *p, u_char ie, u_char *iep) {
-- u_char *ps;
-+int mISDN_AddIE(mISDN::Q931_info_t *qi, unsigned char *p, unsigned char ie, unsigned char *iep) {
-+ unsigned char *ps;
- mISDN::ie_info_t *ies;
- int l;
-
-@@ -158,7 +158,7 @@ int mISDN_AddIE(mISDN::Q931_info_t *qi, u_char *p, u_char ie, u_char *iep) {
- }
- l = iep[0] + 1;
- }
-- ps = (u_char *) qi;
-+ ps = (unsigned char *) qi;
- ps += L3_EXTRA_SIZE;
- ies->off = (u16)(p - ps);
- *p++ = ie;
-diff --git a/core/sip/parse_dns.cpp b/core/sip/parse_dns.cpp
-index 2b62f3e..d24f537 100644
---- a/core/sip/parse_dns.cpp
-+++ b/core/sip/parse_dns.cpp
-@@ -6,10 +6,10 @@
- #define SECTION_COUNTS_OFF 4
- #define HEADER_OFFSET 12
-
--unsigned short dns_msg_count(u_char* begin, dns_section_type sect);
--int dns_skip_name(u_char** p, u_char* end);
--int dns_expand_name(u_char** ptr, u_char* begin, u_char* end,
-- u_char* buf, unsigned int len);
-+unsigned short dns_msg_count(unsigned char* begin, dns_section_type sect);
-+int dns_skip_name(unsigned char** p, unsigned char* end);
-+int dns_expand_name(unsigned char** ptr, unsigned char* begin, unsigned char* end,
-+ unsigned char* buf, unsigned int len);
-
-
- const char* dns_rr_type_str(dns_rr_type t)
-@@ -27,11 +27,11 @@ const char* dns_rr_type_str(dns_rr_type t)
-
-
-
--int dns_msg_parse(u_char* msg, int len, dns_parse_fct fct, void* data)
-+int dns_msg_parse(unsigned char* msg, int len, dns_parse_fct fct, void* data)
- {
-- u_char* begin = msg;
-- u_char* p = begin + HEADER_OFFSET;
-- u_char* end = msg + len;
-+ unsigned char* begin = msg;
-+ unsigned char* p = begin + HEADER_OFFSET;
-+ unsigned char* end = msg + len;
-
- if(p >= end) return -1;
-
-@@ -48,7 +48,7 @@ int dns_msg_parse(u_char* msg, int len, dns_parse_fct fct, void* data)
- for(int i=0; i<dns_msg_count(begin,(dns_section_type)s); i++){
-
- // expand name
-- if(dns_expand_name(&p,begin,end,(u_char*)rr.name,NS_MAXDNAME) < 0) return -1;
-+ if(dns_expand_name(&p,begin,end,(unsigned char*)rr.name,NS_MAXDNAME) < 0) return -1;
-
- // at least 8 bytes for type+class+ttl left?
- if((p + 8) > end) return -1;
-@@ -79,14 +79,14 @@ int dns_msg_parse(u_char* msg, int len, dns_parse_fct fct, void* data)
- return 0;
- }
-
--unsigned short dns_msg_count(u_char* begin, dns_section_type sect)
-+unsigned short dns_msg_count(unsigned char* begin, dns_section_type sect)
- {
-- u_char* p = begin + SECTION_COUNTS_OFF + 2*sect;
-+ unsigned char* p = begin + SECTION_COUNTS_OFF + 2*sect;
-
- return ((u_short)*p)<<8 | ((u_short)*(p+1));
- }
-
--int dns_skip_name(u_char** p, u_char* end)
-+int dns_skip_name(unsigned char** p, unsigned char* end)
- {
- while(*p < end) {
-
-@@ -106,11 +106,11 @@ int dns_skip_name(u_char** p, u_char* end)
- return -1;
- }
-
--int dns_expand_name(u_char** ptr, u_char* begin, u_char* end,
-- u_char* start_buf, unsigned int len)
-+int dns_expand_name(unsigned char** ptr, unsigned char* begin, unsigned char* end,
-+ unsigned char* start_buf, unsigned int len)
- {
-- u_char* buf = start_buf;
-- u_char* p = *ptr;
-+ unsigned char* buf = start_buf;
-+ unsigned char* p = *ptr;
- bool is_ptr=false;
-
- while(p < end) {
-diff --git a/core/sip/parse_dns.h b/core/sip/parse_dns.h
-index c5de8b6..34406b0 100644
---- a/core/sip/parse_dns.h
-+++ b/core/sip/parse_dns.h
-@@ -39,18 +39,18 @@ struct dns_record
-
- class dns_entry;
-
--typedef int (*dns_parse_fct)(dns_record* rr, dns_section_type t, u_char* begin, u_char* end, void* data);
-+typedef int (*dns_parse_fct)(dns_record* rr, dns_section_type t, unsigned char* begin, unsigned char* end, void* data);
-
--int dns_msg_parse(u_char* msg, int len, dns_parse_fct fct, void* data);
--int dns_expand_name(u_char** ptr, u_char* begin, u_char* end,
-- u_char* buf, unsigned int len);
-+int dns_msg_parse(unsigned char* msg, int len, dns_parse_fct fct, void* data);
-+int dns_expand_name(unsigned char** ptr, unsigned char* begin, unsigned char* end,
-+ unsigned char* buf, unsigned int len);
-
--inline uint16_t dns_get_16(const u_char* p)
-+inline uint16_t dns_get_16(const unsigned char* p)
- {
- return ntohs(*(uint16_t*)p);
- }
-
--inline uint32_t dns_get_32(const u_char* p)
-+inline uint32_t dns_get_32(const unsigned char* p)
- {
- return ntohl(*(uint32_t*)p);
- }
-diff --git a/core/sip/resolver.cpp b/core/sip/resolver.cpp
-index 9793069..80c547c 100644
---- a/core/sip/resolver.cpp
-+++ b/core/sip/resolver.cpp
-@@ -169,7 +169,7 @@ public:
- stable_sort(ip_vec.begin(),ip_vec.end(),srv_less);
- }
-
-- dns_base_entry* get_rr(dns_record* rr, u_char* begin, u_char* end);
-+ dns_base_entry* get_rr(dns_record* rr, unsigned char* begin, unsigned char* end);
-
- int next_ip(dns_handle* h, sockaddr_storage* sa)
- {
-@@ -316,7 +316,7 @@ dns_entry* dns_entry::make_entry(dns_rr_type t)
- }
- }
-
--void dns_entry::add_rr(dns_record* rr, u_char* begin, u_char* end, long now)
-+void dns_entry::add_rr(dns_record* rr, unsigned char* begin, unsigned char* end, long now)
- {
- dns_base_entry* e = get_rr(rr,begin,end);
- if(!e) return;
-@@ -451,7 +451,7 @@ void ip_entry::to_sa(sockaddr_storage* sa)
- string ip_entry::to_str()
- {
- if(type == IPv4) {
-- u_char* cp = (u_char*)&addr;
-+ unsigned char* cp = (unsigned char*)&addr;
- return int2str(cp[0]) +
- "." + int2str(cp[1]) +
- "." + int2str(cp[2]) +
-@@ -496,7 +496,7 @@ string ip_port_entry::to_str()
- return ip_entry::to_str() + ":" + int2str(port);
- }
-
--dns_base_entry* dns_ip_entry::get_rr(dns_record* rr, u_char* begin, u_char* end)
-+dns_base_entry* dns_ip_entry::get_rr(dns_record* rr, unsigned char* begin, unsigned char* end)
- {
- if(rr->type != dns_r_a)
- return NULL;
-@@ -516,16 +516,16 @@ dns_base_entry* dns_ip_entry::get_rr(dns_record* rr, u_char* begin, u_char* end)
- return new_ip;
- }
-
--dns_base_entry* dns_srv_entry::get_rr(dns_record* rr, u_char* begin, u_char* end)
-+dns_base_entry* dns_srv_entry::get_rr(dns_record* rr, unsigned char* begin, unsigned char* end)
- {
- if(rr->type != dns_r_srv)
- return NULL;
-
-- u_char name_buf[NS_MAXDNAME];
-- const u_char * rdata = ns_rr_rdata(*rr);
-+ unsigned char name_buf[NS_MAXDNAME];
-+ const unsigned char * rdata = ns_rr_rdata(*rr);
-
- /* Expand the target's name */
-- u_char* p = (u_char*)rdata+6;
-+ unsigned char* p = (unsigned char*)rdata+6;
- if (dns_expand_name(&p,begin,end,
- name_buf, /* Result */
- NS_MAXDNAME) /* Size of result buffer */
-@@ -570,7 +570,7 @@ struct dns_search_h
- };
-
- int rr_to_dns_entry(dns_record* rr, dns_section_type t,
-- u_char* begin, u_char* end, void* data)
-+ unsigned char* begin, unsigned char* end, void* data)
- {
- // only answer and additional sections
- if(t != dns_s_an && t != dns_s_ar)
-@@ -668,7 +668,7 @@ void dns_naptr_entry::init()
- stable_sort(ip_vec.begin(),ip_vec.end(),naptr_less);
- }
-
--dns_base_entry* dns_naptr_entry::get_rr(dns_record* rr, u_char* begin, u_char* end)
-+dns_base_entry* dns_naptr_entry::get_rr(dns_record* rr, unsigned char* begin, unsigned char* end)
- {
- enum NAPTR_FieldIndex {
- NAPTR_Flags = 0,
-@@ -681,7 +681,7 @@ dns_base_entry* dns_naptr_entry::get_rr(dns_record* rr, u_char* begin, u_char* e
- if(rr->type != dns_r_naptr)
- return NULL;
-
-- const u_char * rdata = ns_rr_rdata(*rr);
-+ const unsigned char * rdata = ns_rr_rdata(*rr);
-
- unsigned short order = dns_get_16(rdata);
- rdata += 2;
-@@ -856,7 +856,7 @@ _resolver::~_resolver()
-
- int _resolver::query_dns(const char* name, dns_entry_map& entry_map, dns_rr_type t)
- {
-- u_char dns_res[NS_PACKETSZ];
-+ unsigned char dns_res[NS_PACKETSZ];
-
- if(!name) return -1;
-
-diff --git a/core/sip/resolver.h b/core/sip/resolver.h
-index 7565898..caa81e8 100644
---- a/core/sip/resolver.h
-+++ b/core/sip/resolver.h
-@@ -77,7 +77,7 @@ class dns_entry
- : public atomic_ref_cnt,
- public dns_base_entry
- {
-- virtual dns_base_entry* get_rr(dns_record* rr, u_char* begin, u_char* end)=0;
-+ virtual dns_base_entry* get_rr(dns_record* rr, unsigned char* begin, unsigned char* end)=0;
-
- public:
- vector<dns_base_entry*> ip_vec;
-@@ -87,7 +87,7 @@ public:
- dns_entry();
- virtual ~dns_entry();
- virtual void init()=0;
-- virtual void add_rr(dns_record* rr, u_char* begin, u_char* end, long now);
-+ virtual void add_rr(dns_record* rr, unsigned char* begin, unsigned char* end, long now);
- virtual int next_ip(dns_handle* h, sockaddr_storage* sa)=0;
-
- virtual string to_str();
-@@ -140,7 +140,7 @@ public:
- {}
-
- void init(){};
-- dns_base_entry* get_rr(dns_record* rr, u_char* begin, u_char* end);
-+ dns_base_entry* get_rr(dns_record* rr, unsigned char* begin, unsigned char* end);
- int next_ip(dns_handle* h, sockaddr_storage* sa);
-
- int fill_ip_list(const list<sip_destination>& ip_list);
-@@ -199,7 +199,7 @@ public:
- {}
-
- void init();
-- dns_base_entry* get_rr(dns_record* rr, u_char* begin, u_char* end);
-+ dns_base_entry* get_rr(dns_record* rr, unsigned char* begin, unsigned char* end);
-
- // not needed
- int next_ip(dns_handle* h, sockaddr_storage* sa) { return -1; }
-diff --git a/core/sip/udp_trsp.cpp b/core/sip/udp_trsp.cpp
-index eb3a1ce..e33a156 100644
---- a/core/sip/udp_trsp.cpp
-+++ b/core/sip/udp_trsp.cpp
-@@ -300,7 +300,7 @@ void udp_trsp::run()
- msg.msg_namelen = sizeof(sockaddr_storage);
- msg.msg_iov = iov;
- msg.msg_iovlen = 1;
-- msg.msg_control = new u_char[DSTADDR_DATASIZE];
-+ msg.msg_control = new unsigned char[DSTADDR_DATASIZE];
- msg.msg_controllen = DSTADDR_DATASIZE;
-
- if(sock->get_sd()<=0){
diff --git a/testing/senpai/APKBUILD b/testing/senpai/APKBUILD
deleted file mode 100644
index 12f977200c6..00000000000
--- a/testing/senpai/APKBUILD
+++ /dev/null
@@ -1,30 +0,0 @@
-# Contributor: Francesco Camuffo <dev@fmac.xyz>
-# Maintainer: Francesco Camuffo <dev@fmac.xyz>
-pkgname=senpai
-pkgver=0_git20220415
-_commit=82acaacb15e5da69c9103894d05c5af72e848c5f
-pkgrel=1
-pkgdesc="Your everyday IRC student"
-url="https://git.sr.ht/~taiite/senpai"
-arch="all"
-license="ISC"
-makedepends="go scdoc"
-subpackages="$pkgname-doc"
-source="https://git.sr.ht/~taiite/senpai/archive/$_commit.tar.gz"
-builddir="$srcdir/$pkgname-$_commit"
-
-build() {
- make GOFLAGS="$GOFLAGS"
-}
-
-check() {
- go test ./...
-}
-
-package() {
- make PREFIX=/usr DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-72a94f317fb7cac25ac4dd31a7cba723dc6bebe13c2e887aec5fde84200ee72475dabad393897f4fc095d8d796499ccc279d05973e79b8d9a65124bf5308499e 82acaacb15e5da69c9103894d05c5af72e848c5f.tar.gz
-"
diff --git a/testing/sentinel-minipot/APKBUILD b/testing/sentinel-minipot/APKBUILD
new file mode 100644
index 00000000000..688dad0c64e
--- /dev/null
+++ b/testing/sentinel-minipot/APKBUILD
@@ -0,0 +1,77 @@
+# Contributor: Jakub Jirutka <jakub@jirutka.cz>
+# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
+pkgname=sentinel-minipot
+pkgver=2.3.0
+pkgrel=1
+pkgdesc="A minimal honeypot that emulates Telnet, HTTP, FTP and SMTP"
+url="https://gitlab.nic.cz/turris/sentinel/minipot"
+# ppc64le: fails to build
+# s390x: blocked by logc-libs
+arch="all !ppc64le !s390x"
+license="GPL-3.0-or-later"
+makedepends="
+ argp-standalone
+ autoconf
+ automake
+ base64c-dev
+ czmq-dev
+ gperf
+ libevent-dev
+ logc-dev
+ logc-libs-dev
+ msgpack-c-dev
+ "
+checkdepends="check-dev"
+install="$pkgname.pre-install"
+subpackages="$pkgname-openrc"
+source="https://gitlab.nic.cz/turris/sentinel/minipot/-/archive/v$pkgver/minipot-v$pkgver.tar.bz2
+ fix-configure-msgpack-c.patch
+ no-valgrind.patch
+ $pkgname.initd
+ $pkgname.confd
+ "
+builddir="$srcdir/minipot-v$pkgver"
+
+case "$CARCH" in
+riscv64)
+ # check() is disabled on the riscv64 package builder
+ makedepends="$makedepends $checkdepends"
+ ;;
+esac
+
+prepare() {
+ default_prepare
+
+ ./bootstrap
+}
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var \
+ --enable-tests
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+
+ install -D -m755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
+ install -D -m644 "$srcdir"/$pkgname.confd "$pkgdir"/etc/conf.d/$pkgname
+}
+
+sha512sums="
+4f442240d413bdad2f6bddf5ef581c410f03842a4b50685be2e7d1d3686811a7644fd0787c26ee31cb99a0997f2867ed1375a6e3f2a2ede09bd5e9217fbe84d6 minipot-v2.3.0.tar.bz2
+f9e127570d256ee9ce7f9f3d28a66cecfde2e0c9d068b68ea99599b0e3e74fb944311b3f69b28fea8f0b7c86ccba7094888f5310dbceb7ad44bf110b56060161 fix-configure-msgpack-c.patch
+8b133216fa6d97d31105ecfecd3ffb3135c65e771c23968af1d186c6589fd3b31ea1866ed3d9bed34034b01f7322518fa4086503d3b12a0b3f8c21479ee46900 no-valgrind.patch
+846e6c30949590026069df19b583847bc1f94d7190d6dd334ca7ae469323b63f94c82a8ff79b757618e656e5a12fa4b51fe25c6dae3344f8ee0eccaa7ffa324e sentinel-minipot.initd
+2cbdfc997d2f85ef6d24af2b4ce1aa7e01aebcb7e8fddc98d8b2401cba5138898e1668f4018c2609dbe88e35bbb1c1a61a9d3602e6f438e494706651f1ae4418 sentinel-minipot.confd
+"
diff --git a/testing/sentinel-minipot/fix-configure-msgpack-c.patch b/testing/sentinel-minipot/fix-configure-msgpack-c.patch
new file mode 100644
index 00000000000..81c32bc3e80
--- /dev/null
+++ b/testing/sentinel-minipot/fix-configure-msgpack-c.patch
@@ -0,0 +1,7 @@
+--- a/configure.ac
++++ b/configure.ac
+@@ -16,3 +16,3 @@
+ PKG_CHECK_MODULES([czmq], [libczmq])
+-PKG_CHECK_MODULES([msgpack], [msgpack])
++PKG_CHECK_MODULES([msgpack], [msgpack-c])
+ PKG_CHECK_MODULES([libevent], [libevent])
diff --git a/testing/sentinel-minipot/no-valgrind.patch b/testing/sentinel-minipot/no-valgrind.patch
new file mode 100644
index 00000000000..4216a6f43d2
--- /dev/null
+++ b/testing/sentinel-minipot/no-valgrind.patch
@@ -0,0 +1,26 @@
+--- a/tests/Makefile.am
++++ b/tests/Makefile.am
+@@ -8,23 +8,6 @@
+ env AM_TAP_AWK='$(AWK)' TEST_OUTPUT_TAP="/dev/stdout" \
+ '$(SHELL)' '$(srcdir)/.aux/tap-driver.sh'
+
+-# Valgrind #######################################################################
+-VALGRIND_memcheck_FLAGS = \
+- --leak-check=full \
+- --show-leak-kinds=definite,indirect,possible \
+- --track-fds=yes \
+- --track-origins=yes \
+- --trace-children=no \
+- --child-silent-after-fork=yes
+-@VALGRIND_CHECK_RULES@
+-
+-# Rules generated for valgrind are for some reason called *-am. This is just an alias
+-check-valgrind: check-valgrind-am
+-define check_valgrind_rule
+-check-valgrind-$(1): check-valgrind-$(1)-am
+-endef
+-$(foreach tool,$(valgrind_tools),$(eval $(call check_valgrind_rule,$(tool))))
+-
+ # Coverage #######################################################################
+ CODE_COVERAGE_LCOV_OPTIONS := --no-external
+ CODE_COVERAGE_GENHTML_OPTIONS := --prefix $(dir $(abs_top_builddir))
diff --git a/testing/sentinel-minipot/sentinel-minipot.confd b/testing/sentinel-minipot/sentinel-minipot.confd
new file mode 100644
index 00000000000..24d2933e6ab
--- /dev/null
+++ b/testing/sentinel-minipot/sentinel-minipot.confd
@@ -0,0 +1,38 @@
+# Configuration for /etc/init.d/sentinel-minipot
+
+# MQTT topic for later communication of Sentinel proxy with server.
+# Default is "sentinel/collect/minipot".
+#mqtt_topic=
+
+# Local ZMQ socket for interprocess communication with Sentinel proxy.
+#sentinel_socket="ipc:///run/sentinel_pull.sock"
+
+# Whether to send logs to syslog.
+#syslog=yes
+
+# Send logs to provided file.
+#logfile=
+
+# Log verbosity level. Default is "notice".
+# Options: critical, error, warning, notice, info, debug, trace.
+#loglevel=
+
+# User (and group) to run as.
+#command_user="sentinel-minipot"
+
+# Allow to listen on privileged ports.
+capabilities="^cap_net_bind_service"
+
+## At least one of the following must be set:
+
+# Port for FTP minipot.
+#ftp_port=
+
+# Port for HTTP minipot.
+#http_port=
+
+# Port for SMTP minipot.
+smtp_port=25
+
+# Port for Telnet minipot.
+#telnet_port=
diff --git a/testing/sentinel-minipot/sentinel-minipot.initd b/testing/sentinel-minipot/sentinel-minipot.initd
new file mode 100644
index 00000000000..78419dbb02d
--- /dev/null
+++ b/testing/sentinel-minipot/sentinel-minipot.initd
@@ -0,0 +1,37 @@
+#!/sbin/openrc-run
+
+name="Sentinel-minipot"
+description="A minimal honeypot that emulates Telnet, HTTP, FTP and SMTP network services"
+
+: ${command_user:="sentinel-minipot"}
+: ${sentinel_socket="ipc:///run/sentinel_pull.sock"}
+: ${syslog:="yes"}
+
+command="/usr/bin/sentinel-minipot"
+command_args="
+ ${ftp_port:+"--ftp=$ftp_port"}
+ ${http_port:+"--http=$http_port"}
+ ${smtp_port:+"--smtp=$smtp_port"}
+ ${telnet_port:+"--telnet=$telnet_port"}
+ ${mqtt_topic:+"--topic=$mqtt_topic"}
+ ${sentinel_socket:+"--socket=$sentinel_socket"}
+ ${logfile:+"--log-file=$logfile"}
+ ${loglevel:+"--log-level=$loglevel"}
+ $command_args
+ "
+command_background="yes"
+pidfile="/run/$RC_SVCNAME.pid"
+
+depend() {
+ need net
+ use sentinel-proxy
+ after firewall
+}
+
+start_pre() {
+ yesno "${syslog-}" && command_args="$command_args --syslog"
+
+ if [ "${logfile-}" ]; then
+ checkpath -f -m 640 -o "$command_user" "$logfile" || return 1
+ fi
+}
diff --git a/testing/sentinel-minipot/sentinel-minipot.pre-install b/testing/sentinel-minipot/sentinel-minipot.pre-install
new file mode 100644
index 00000000000..dd93fce4265
--- /dev/null
+++ b/testing/sentinel-minipot/sentinel-minipot.pre-install
@@ -0,0 +1,5 @@
+#!/bin/sh
+
+adduser -S -D -H -h /dev/null -s /sbin/nologin -G nogroup -g sentinel-minipot sentinel-minipot 2>/dev/null
+
+exit 0
diff --git a/testing/sentinel-proxy/APKBUILD b/testing/sentinel-proxy/APKBUILD
new file mode 100644
index 00000000000..e0549155bbd
--- /dev/null
+++ b/testing/sentinel-proxy/APKBUILD
@@ -0,0 +1,78 @@
+# Contributor: Jakub Jirutka <jakub@jirutka.cz>
+# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
+pkgname=sentinel-proxy
+pkgver=2.1.0
+pkgrel=0
+pkgdesc="Proxy that relays messages received over ZMQ to Sentinel server over MQTT"
+url="https://gitlab.nic.cz/turris/sentinel/proxy"
+# s390x: blocked by czqm, logc-libs
+arch="all !s390x"
+license="GPL-3.0-or-later"
+makedepends="
+ argp-standalone
+ autoconf-archive
+ automake
+ czmq-dev
+ libconfig-dev
+ libtool
+ logc-dev
+ logc-libs-dev
+ msgpack-c-dev
+ openssl-dev
+ paho-mqtt-c-dev
+ zlib-dev
+ "
+checkdepends="check-dev"
+pkgusers="sentinel"
+install="$pkgname.pre-install"
+subpackages="
+ $pkgname-dev
+ $pkgname-openrc
+ "
+source="https://gitlab.nic.cz/turris/sentinel/proxy/-/archive/v$pkgver/proxy-v$pkgver.tar.bz2
+ fix-configure-msgpack-c.patch
+ example.cfg.patch
+ $pkgname.initd
+ $pkgname.confd
+ "
+builddir="$srcdir/proxy-v$pkgver"
+
+prepare() {
+ default_prepare
+
+ ./bootstrap
+}
+
+build() {
+ defconfigfile="/etc/sentinel/proxy.cfg" \
+ defzmqsockpath="/run/sentinel_pull.sock" \
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ $(want_check && echo '--enable-tests' || :)
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+
+ install -D -m640 -o sentinel example.cfg "$pkgdir"/etc/sentinel/proxy.cfg
+
+ install -D -m755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
+ install -D -m644 "$srcdir"/$pkgname.confd "$pkgdir"/etc/conf.d/$pkgname
+}
+
+sha512sums="
+8d21141c44bb638db6ec47054c2e9f1087ba39f5097d0c0f151ba160885687ec932e789d4c55f65e67a22fda65e2f83cf45bb125189c98161d0cbc621d462c0d proxy-v2.1.0.tar.bz2
+2586fdfee53a44f82a811b3959a8b771ea1733dd58ea9815ad5ef3d8061eca38dcd1c3d19f1876285ef7095d0ce558c9ccb6f11c4f9c6acf54721aaf834d611e fix-configure-msgpack-c.patch
+48dad43a27679396bbbe54013bd1487053c686b9872cfc49f744b6d005d43ff6c1c60dcd03b77f8970e1c13a1774cacbe2eb45bd116c28edc3b0173c28769bdf example.cfg.patch
+3e9e832994bf2574ae48dee6479a629d15bfdada86b89de95e5da1840f3312da0b19b697b94401783756917c8a5194a334807c44a6b23333369f57cab376010c sentinel-proxy.initd
+b3cd58a026b89ad60d5d93f88b549c67045b498134b67f4b06856e3be12b8debcf130937201b88543d3ba12cdfa1aab87cafa58f7c8c36215d41392d32eae5af sentinel-proxy.confd
+"
diff --git a/testing/sentinel-proxy/example.cfg.patch b/testing/sentinel-proxy/example.cfg.patch
new file mode 100644
index 00000000000..87236a19d20
--- /dev/null
+++ b/testing/sentinel-proxy/example.cfg.patch
@@ -0,0 +1,34 @@
+--- a/example.cfg
++++ b/example.cfg
+@@ -1,9 +1,22 @@
+-# This is 64 hex character long string for more information see README.
+-# Paste here your token instead."
+-# device_token = "c1da24cf9063bf444d66271eb6c2c1b2ae364697ce07d05a8a60d3df08c93f50"
+-# server = "sentinel.com"
+-# port = 12345
+-# client_cert_file = "./sentinel-cert.pem"
+-# client_key_file = "./sentinel-key.pem"
+-# ca_cert_file = "./sentinel-ca-cert.pem"
+-# zmq_socket_path = "ipc:///tmp/sentinel.sock"
++# Configuration for sentinel-proxy
++
++# Sentinel device token. Generate it using 'sentinel-device-token -c'.
++device_token = ""
++
++# Sentinel server address.
++#server = "sentinel.turris.cz"
++
++# Sentinel server port.
++#port = 1883
++
++# Path to Sentinel CA certificate file.
++#ca_cert_file = "/etc/sentinel/ca.pem"
++
++# Path to Sentinel client certificate file
++#client_cert_file = "/etc/sentinel/mqtt_cert.pem"
++
++# Path to Sentinel client key file.
++#client_key_file = "/etc/sentinel/mqtt_key.pem"
++
++# ZMQ socket path.
++#zmq_socket_path = "ipc:///run/sentinel_pull.sock"
diff --git a/testing/sentinel-proxy/fix-configure-msgpack-c.patch b/testing/sentinel-proxy/fix-configure-msgpack-c.patch
new file mode 100644
index 00000000000..a9947139de8
--- /dev/null
+++ b/testing/sentinel-proxy/fix-configure-msgpack-c.patch
@@ -0,0 +1,7 @@
+--- a/configure.ac
++++ b/configure.ac
+@@ -24,3 +24,3 @@
+ PKG_CHECK_MODULES([libconfig], [libconfig])
+-PKG_CHECK_MODULES([msgpack], [msgpack])
++PKG_CHECK_MODULES([msgpack], [msgpack-c])
+ PKG_CHECK_MODULES([logc], [logc >= 0.3.0 logc_argp])
diff --git a/testing/sentinel-proxy/sentinel-proxy.confd b/testing/sentinel-proxy/sentinel-proxy.confd
new file mode 100644
index 00000000000..8b9aa3acfe2
--- /dev/null
+++ b/testing/sentinel-proxy/sentinel-proxy.confd
@@ -0,0 +1,17 @@
+# Configuration for /etc/init.d/sentinel-proxy
+
+# Path to the configuration file.
+#cfgfile="/etc/sentinel/proxy.cfg"
+
+# Whether to send logs to syslog.
+#syslog=yes
+
+# Send logs to provided file.
+#logfile=
+
+# Log verbosity level. Default is "notice".
+# Options: critical, error, warning, notice, info, debug, trace.
+#loglevel=
+
+# User (and group) to run as.
+#command_user="sentinel"
diff --git a/testing/sentinel-proxy/sentinel-proxy.initd b/testing/sentinel-proxy/sentinel-proxy.initd
new file mode 100644
index 00000000000..5e3cbabd2da
--- /dev/null
+++ b/testing/sentinel-proxy/sentinel-proxy.initd
@@ -0,0 +1,33 @@
+#!/sbin/openrc-run
+
+name="Sentinel-proxy"
+description="A proxy that relays messages received over ZMQ to Sentinel server over MQTT"
+
+: ${command_user:="sentinel"}
+: ${cfgfile:="/etc/sentinel/proxy.cfg"}
+: ${syslog:="yes"}
+
+command="/usr/bin/sentinel-proxy"
+command_args="
+ --config=$cfgfile
+ ${logfile:+"--log-file=$logfile"}
+ ${loglevel:+"--log-level=$loglevel"}
+ $command_args
+ "
+command_background="yes"
+pidfile="/run/$RC_SVCNAME.pid"
+
+required_files="$cfgfile"
+
+depend() {
+ need net
+ after firewall
+}
+
+start_pre() {
+ yesno "${syslog-}" && command_args="$command_args --syslog"
+
+ if [ "${logfile-}" ]; then
+ checkpath -f -m 640 -o "$command_user" "$logfile" || return 1
+ fi
+}
diff --git a/testing/sentinel-proxy/sentinel-proxy.pre-install b/testing/sentinel-proxy/sentinel-proxy.pre-install
new file mode 100644
index 00000000000..cb1bc1cd967
--- /dev/null
+++ b/testing/sentinel-proxy/sentinel-proxy.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S sentinel 2>/dev/null
+adduser -S -D -H -h /dev/null -s /sbin/nologin -G sentinel -g sentinel-proxy sentinel 2>/dev/null
+
+exit 0
diff --git a/testing/sentrypeer/APKBUILD b/testing/sentrypeer/APKBUILD
index e9df3f64c1a..0d6eac6425c 100644
--- a/testing/sentrypeer/APKBUILD
+++ b/testing/sentrypeer/APKBUILD
@@ -1,16 +1,18 @@
# Contributor: Gavin Henry <ghenry@sentrypeer.org>
# Maintainer: Gavin Henry <ghenry@sentrypeer.org>
pkgname=sentrypeer
-pkgver=1.4.1
+pkgver=3.0.2
pkgrel=0
pkgdesc="Honeypot for a distributed p2p list of bad actor IP addresses and phone numbers"
url="https://sentrypeer.org/"
-arch="all !x86 !armhf !armv7"
+# ppc64le: fails tests
+arch="all !ppc64le !x86 !armhf !armv7"
license="GPL-2.0-only OR GPL-3.0-only"
makedepends="
autoconf
autoconf-archive
automake
+ chrpath
curl-dev
jansson-dev
libmicrohttpd-dev
@@ -22,16 +24,12 @@ makedepends="
"
checkdepends="cmocka-dev"
subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/SentryPeer/SentryPeer/archive/refs/tags/v$pkgver.tar.gz"
-builddir="$srcdir/SentryPeer-$pkgver"
-
-prepare() {
- default_prepare
- sed -i '/AM_LDFLAGS=/d' Makefile.am
- ./bootstrap.sh
-}
+source="https://github.com/SentryPeer/SentryPeer/releases/download/v$pkgver/sentrypeer-$pkgver.tar.gz"
+options="!check" # needs net
build() {
+ CFLAGS="$CFLAGS -flto=auto" \
+ CXXFLAGS="$CXXFLAGS -flto=auto" \
./configure \
--build=$CBUILD \
--host=$CHOST \
@@ -40,14 +38,17 @@ build() {
}
check() {
- make check
+ make check || {
+ cat test-suite.log
+ return 1
+ }
}
package() {
make DESTDIR="$pkgdir" install
+ chrpath -d "$pkgdir"/usr/bin/sentrypeer
}
-
sha512sums="
-561e879db097270a518412b014c1a0ce257afe82a3294b8dbe2aadc6d0362d8ed3b2182e6cbf7ff9525ec3964178f107408e741783f5829e9cb2e8f4f6c5bc9c sentrypeer-1.4.1.tar.gz
+6ec2c0ccd3e08cc4e711261d3c7135bdd0b699f4d92d982d31f7e664dfd13ff4a15a6c7106bdca4b65fa7c663f526985e530ab2bd42ee43b5695455c8f28b660 sentrypeer-3.0.2.tar.gz
"
diff --git a/testing/sequoia-chameleon-gnupg/APKBUILD b/testing/sequoia-chameleon-gnupg/APKBUILD
new file mode 100644
index 00000000000..552274409cc
--- /dev/null
+++ b/testing/sequoia-chameleon-gnupg/APKBUILD
@@ -0,0 +1,45 @@
+# Maintainer: Simon Rupf <simon@rupf.net>
+pkgname=sequoia-chameleon-gnupg
+pkgver=0.8.0
+pkgrel=0
+pkgdesc="Sequoia's reimplementation of the GnuPG interface"
+url="https://sequoia-pgp.org/"
+# ring
+arch="all !ppc64le !s390x !riscv64"
+license="GPL-3.0-or-later"
+makedepends="
+ bzip2-dev
+ cargo
+ cargo-auditable
+ clang15-dev
+ nettle-dev
+ openssl-dev
+ sqlite-dev
+ "
+source="https://gitlab.com/sequoia-pgp/sequoia-chameleon-gnupg/-/archive/v$pkgver/sequoia-chameleon-gnupg-v$pkgver.tar.gz
+ "
+builddir="$srcdir/$pkgname-v$pkgver"
+options="net !check" # bunch of failures against gpg cli
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm755 target/release/gpgv-sq target/release/gpg-sq \
+ -t "$pkgdir"/usr/bin
+}
+
+sha512sums="
+e149579b144d04c1ee0c9ac8f1a7dc7844e8a035b06000e0e854e87621b51d34d49c6a27787784358460aef5e9ca011d6947c064d09b0e1601ded9dedcb9b6fe sequoia-chameleon-gnupg-v0.8.0.tar.gz
+"
diff --git a/testing/sequoia-sqv/APKBUILD b/testing/sequoia-sqv/APKBUILD
index c72d5edcc38..48679b5d674 100644
--- a/testing/sequoia-sqv/APKBUILD
+++ b/testing/sequoia-sqv/APKBUILD
@@ -1,51 +1,45 @@
# Contributor: tcely <sequoia-sqv+aports@tcely.33mail.com>
-# Maintainer:
-_project="sequoia"
-pkgname=$_project-sqv
-pkgver=0.9.0
-pkgrel=4
+# Maintainer: Simon Rupf <simon@rupf.net>
+pkgname=sequoia-sqv
+pkgver=1.1.0
+pkgrel=5
pkgdesc="simple signature verification program"
url="https://sequoia-pgp.org/"
-arch="armhf armv7 x86_64" # limited by cargo
-license="GPL-3.0-or-later"
-makedepends="capnproto-dev cargo clang-dev nettle-dev openssl-dev
- py3-cffi py3-pytest py3-setuptools python3-dev sqlite-dev"
-source="https://gitlab.com/$_project-pgp/$_project/-/archive/v$pkgver/$_project-v$pkgver.tar.gz
+arch="all"
+license="GPL-2.0-or-later"
+makedepends="
+ cargo
+ cargo-auditable
+ clang-dev
+ nettle-dev
"
-builddir="$srcdir/$_project-v$pkgver"
-
-_cargo_env() {
- cd "$builddir"
+source="
+ https://gitlab.com/sequoia-pgp/sequoia-sqv/-/archive/v$pkgver/sequoia-sqv-v$pkgver.tar.gz
+ cargo-update-sha1collisiondetection.patch
+ "
+builddir="$srcdir/sequoia-sqv-v$pkgver"
- CARGO_TARGET_DIR="$PWD/target"
- export CARGO_TARGET_DIR
+prepare() {
+ default_prepare
- SQV="$CARGO_TARGET_DIR/release/sqv"
- export SQV
+ cargo update -p buffered-reader --precise 1.2.0
+ cargo update -p sequoia-openpgp --precise 1.16.0
+ cargo fetch --target="$CTARGET" --locked
}
build() {
- _cargo_env
-
- # Detect mismatching versions from upstream
- sed -i.orig -e '/^version =/s/=.*$/= "'"$pkgver"'"/' sqv/Cargo.toml
- diff -us sqv/Cargo.toml.orig sqv/Cargo.toml
-
- make -C sqv build-release CARGO_FLAGS='--locked'
+ cargo auditable build --release --frozen
}
check() {
- _cargo_env
-
- cd sqv && cargo test --locked --release --package "$pkgname"
-
- "$SQV" --version
+ cargo test --frozen
}
package() {
- _cargo_env
-
- make DESTDIR="$pkgdir" -C sqv install
+ install -Dm755 target/release/sqv -t "$pkgdir"/usr/bin
}
-sha512sums="2349f6f12b9b20761729ba927d08d6090f0c697c2a103eaf403a5694e4303573c45c5247ebc30c080a885916f026e9618ffa979f84f0dcb055377e62a78be4ee sequoia-v0.9.0.tar.gz"
+sha512sums="
+8a39ba244fcca61635bd633ebbcd0aa102dcb8139984f3e6db9a5e011e7cbc47f4dad1d5606730ac66ec6dac42b1c372f2fd022d55c9a989a5ef6430922b8fb5 sequoia-sqv-v1.1.0.tar.gz
+f0a590f4ba9ce934edfe6620bace5f46d77666fb0aeb93af5358f8a5ddb1db8967e17340536ed9e7eecc1a15ee09ea7acd8cab1f39e699a4ddc29d4ccef3b139 cargo-update-sha1collisiondetection.patch
+"
diff --git a/testing/sequoia-sqv/cargo-update-sha1collisiondetection.patch b/testing/sequoia-sqv/cargo-update-sha1collisiondetection.patch
new file mode 100644
index 00000000000..8096e4198ee
--- /dev/null
+++ b/testing/sequoia-sqv/cargo-update-sha1collisiondetection.patch
@@ -0,0 +1,23 @@
+Fixes test error:
+
+> misaligned pointer dereference: address must be a multiple of 0x4 but is 0xf7d92505
+
+Which occurs when building with rust >=1.70
+
+sha1collisiondetection >=0.2.7 fixes that.
+diff --git a/Cargo.lock b/Cargo.lock
+index e41780e..fc34d4f 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -1030,9 +1030,9 @@ dependencies = [
+
+ [[package]]
+ name = "sha1collisiondetection"
+-version = "0.2.5"
++version = "0.2.7"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "f31bf4e9fe5cd8cea8e0887e2e4eb1b4d736ff11b776c8537bf0912a4b381285"
++checksum = "b20793cf8330b2c7da4c438116660fed24e380bcb8a1bcfff2581b5593a0b38e"
+ dependencies = [
+ "digest",
+ "generic-array",
diff --git a/testing/serd/APKBUILD b/testing/serd/APKBUILD
deleted file mode 100644
index 5f70dc863cd..00000000000
--- a/testing/serd/APKBUILD
+++ /dev/null
@@ -1,24 +0,0 @@
-# Contributor: David Demelier <markand@malikania.fr>
-# Maintainer: David Demelier <markand@malikania.fr>
-pkgname=serd
-pkgver=0.30.10
-pkgrel=0
-pkgdesc="lightweight C library for RDF syntax"
-url="http://drobilla.net/software/serd"
-arch="all"
-license="ISC"
-makedepends="python3"
-subpackages="$pkgname-dev $pkgname-doc"
-source="http://download.drobilla.net/serd-$pkgver.tar.bz2"
-options="!check" # No tests
-
-build() {
- python3 waf configure --prefix=/usr
- python3 waf build
-}
-
-package() {
- python3 waf install --destdir="$pkgdir"
-}
-
-sha512sums="ed7b49abfd3dc3a724b047f5f0cd07b811596330c96d91c0ce90540440f03260e05daee76c3ccccc3d4ca39afbbd4f3d07decbb601730e90c133a09c640c0006 serd-0.30.10.tar.bz2"
diff --git a/testing/serialdv/APKBUILD b/testing/serialdv/APKBUILD
new file mode 100644
index 00000000000..d25e3eb2001
--- /dev/null
+++ b/testing/serialdv/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: Leon ROUX <leon.roux@federate.us>
+# Maintainer: Leon ROUX <leon.roux@federate.us>
+pkgname=serialdv
+pkgver=1.1.4
+pkgrel=0
+pkgdesc="C++ Minimal interface to encode and decode audio with AMBE3000 based devices in packet mode over a serial link"
+url="https://github.com/f4exb/serialDV"
+license="GPL-3.0-only"
+arch="all"
+makedepends="
+ cmake
+ linux-headers
+ samurai
+ "
+subpackages="$pkgname-dev $pkgname-libs"
+source="$pkgname-$pkgver.tar.gz::https://github.com/f4exb/serialDV/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/serialDV-$pkgver"
+options="!check" # no tests
+
+build() {
+ CFLAGS="$CFLAGS -O2 -flto=auto" \
+ CXXFLAGS="$CXXFLAGS -O2 -flto=auto" \
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_SKIP_RPATH=ON
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+879b2ae84a18ca4f4e0eda72208b596a9988e32eba0b3be4b5818b15b600d71c3ee53e6215126ff013d993237d29077ffedfb6be0477c852d4215e5e036bebc9 serialdv-1.1.4.tar.gz
+"
diff --git a/testing/setroot/APKBUILD b/testing/setroot/APKBUILD
index a5ac6593de2..615cb26712c 100644
--- a/testing/setroot/APKBUILD
+++ b/testing/setroot/APKBUILD
@@ -2,14 +2,16 @@
# Maintainer: Camille Scholtz <onodera@openmailbox.org>
pkgname=setroot
pkgver=2.0.2
-pkgrel=0
+pkgrel=1
pkgdesc="Simple X background setter inspired by imlibsetroot and feh"
url="https://github.com/ttzhou/setroot"
arch="all"
license="GPL-3.0-or-later"
makedepends="imlib2-dev"
subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/ttzhou/setroot/archive/v$pkgver.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/ttzhou/setroot/archive/v$pkgver.tar.gz
+ imlib2.patch
+ "
build() {
make
@@ -19,4 +21,7 @@ package() {
make PREFIX=/usr DESTDIR="$pkgdir" install
}
-sha512sums="1f636c2aed140ac011bab7d4dee6e7f21c8d0ddb6ebfbd45d81db2fe807d2d3882ca6bbd3594f7038710efe3bdff3be0874e5ba4944de40e4897591566e777ae setroot-2.0.2.tar.gz"
+sha512sums="
+1f636c2aed140ac011bab7d4dee6e7f21c8d0ddb6ebfbd45d81db2fe807d2d3882ca6bbd3594f7038710efe3bdff3be0874e5ba4944de40e4897591566e777ae setroot-2.0.2.tar.gz
+d3648d1e010971feef048b9c0b4edd5b55bb80086905feeb898b4680dfa5a6b46fb2a5ad19c722eebeca32a6bed498ecdcd1da3a4bf9aa91847d50e053c4a93d imlib2.patch
+"
diff --git a/testing/setroot/imlib2.patch b/testing/setroot/imlib2.patch
new file mode 100644
index 00000000000..0fbd4d3c84e
--- /dev/null
+++ b/testing/setroot/imlib2.patch
@@ -0,0 +1,13 @@
+diff --git a/Makefile b/Makefile
+index cb32cc6..950c183 100644
+--- a/Makefile
++++ b/Makefile
+@@ -6,7 +6,7 @@ NAME := setroot
+ CC := gcc
+ OFLAG :=
+ CFLAGS := -std=c99 -Wall -g -Wextra ${OFLAG}
+-LIBS := -lX11 `imlib2-config --libs`
++LIBS := -lX11 `pkg-config --libs imlib2`
+
+ SRC := setroot.c
+
diff --git a/testing/sflowtool/APKBUILD b/testing/sflowtool/APKBUILD
index 79a4cb06ccb..fd1bd377c79 100644
--- a/testing/sflowtool/APKBUILD
+++ b/testing/sflowtool/APKBUILD
@@ -1,42 +1,36 @@
# Contributor: Leonardo Arena <rnalrd@alpinelinux.org>
# Maintainer:
pkgname=sflowtool
-pkgver=3.41
+pkgver=6.02
pkgrel=0
pkgdesc="Print binary sFlow feed to ASCII, or forward it to other collectors"
url="https://github.com/sflow/sflowtool"
arch="all"
-license="Custom"
-depends=
-depends_dev=
+license="custom"
+subpackages="$pkgname-doc"
makedepends="$depends_dev autoconf automake"
-install=
-subpackages=
source="$pkgname-$pkgver.tar.gz::https://github.com/sflow/sflowtool/archive/v$pkgver.tar.gz"
-builddir="$srcdir"/$pkgname-$pkgver
-
prepare() {
- cd "$builddir"
- aclocal && autoconf && autoreconf -f -i -Wall,no-obsolete || return 1
+ default_prepare
+ aclocal && autoconf && autoreconf -f -i -Wall,no-obsolete
}
build() {
- cd "$builddir"
./configure --prefix=/usr \
--sysconfdir=/etc \
--mandir=/usr/share/man \
--infodir=/usr/share/info
- make || return 1
+ make
}
package() {
- cd "$builddir"
- make DESTDIR="$pkgdir" install || return 1
+ make DESTDIR="$pkgdir" install
- # remove the 2 lines below (and this) if there is no init.d script
- # install -m755 -D "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
- # install -m644 -D "$srcdir"/$pkgname.confd "$pkgdir"/etc/conf.d/$pkgname
+ install -Dm644 COPYING "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+ install -Dm644 README.md "$pkgdir"/usr/share/doc/$pkgname/README.md
}
-sha512sums="07cd160ae7da908b46500f70680fb1cb54f0095eade63ca4afa6a1a0ca0beacae4f33025911784c9b95912e630df28bfc9e0ef01bd03028647fd27155d5dd749 sflowtool-3.41.tar.gz"
+sha512sums="
+532dcd70f4739f870b21c56c46d2751961615c4a212ba26c1ab43b0e37b9230617b29b22c8e4fa8534094fa4cdd7acad9bbc48ac7368320653da1f46ae6e3b6b sflowtool-6.02.tar.gz
+"
diff --git a/testing/sfwbar/APKBUILD b/testing/sfwbar/APKBUILD
index 9997fb4081f..30f5fff177f 100644
--- a/testing/sfwbar/APKBUILD
+++ b/testing/sfwbar/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer:
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=sfwbar
-pkgver=1.0_beta4
-pkgrel=1
+pkgver=1.0_beta14
+pkgrel=0
pkgdesc="Sway Floating Window Bar"
url="https://github.com/LBCrion/sfwbar"
arch="all"
@@ -12,14 +12,15 @@ makedepends="
gtk-layer-shell-dev
json-c-dev
meson
+ pulseaudio-dev
"
subpackages="$pkgname-doc"
source="https://github.com/LBCrion/sfwbar/archive/v$pkgver/sfwbar-$pkgver.tar.gz"
options="!check" # no tests provided
build() {
- abuild-meson . output
- meson compile -j ${JOBS:-0} -C output
+ abuild-meson -Db_lto=true . output
+ meson compile -C output
}
package() {
@@ -27,5 +28,5 @@ package() {
}
sha512sums="
-e86ba30d863d4899be0c7acfb3be9f32f8b9710483138e1757dcabd63219a342152755bb3efc6875694d520aa819196e5150858217c971953837d46e8d55c9e0 sfwbar-1.0_beta4.tar.gz
+e1a1c9d0a8b3c80c3ef043c6f22bb2b915cdf1f36da6ce306f66754af2a68c2077f4e473bd998d6d6282db5fc0652b7b7bbbe333a39390e7e38129163a398055 sfwbar-1.0_beta14.tar.gz
"
diff --git a/testing/sgt-puzzles/APKBUILD b/testing/sgt-puzzles/APKBUILD
index 8b7e139db5f..1b3aea3cd8a 100644
--- a/testing/sgt-puzzles/APKBUILD
+++ b/testing/sgt-puzzles/APKBUILD
@@ -1,32 +1,38 @@
# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
pkgname=sgt-puzzles
-_pkgname=puzzles
-pkgver=0_git20211031
-_pkgver=20211031
-_commit=640f923
-pkgrel=0
+pkgver=0_git20230310
+_gitrev=8c5077e
+pkgrel=1
pkgdesc="Simon Tatham's Portable Puzzle Collection"
url="https://www.chiark.greenend.org.uk/~sgtatham/puzzles/"
arch="all"
license="GPL-2.0-or-later"
-makedepends="cmake imagemagick gtk+3.0-dev perl-dev"
+makedepends="
+ cmake
+ gtk+3.0-dev
+ imagemagick
+ perl-dev
+ samurai
+ "
options="!check" # No testsuite
# We should append "sgt-" prefix to all the programs and icons.
# That way, we avoid conflicts with other programs
source="
- https://sourceforge.net/projects/aat-linux-repository/files/sources/alpine/sgt-puzzles/puzzles-$_pkgver.$_commit.tar.gz
+ $pkgname-$pkgver.tar.gz::https://git.tartarus.org/?p=simon/puzzles.git;a=snapshot;h=$_gitrev;sf=tgz
0001-change-desktop-variables-according-to-prefix.patch
"
_icondir="usr/share/pixmaps"
_desktopdir="usr/share/applications"
-builddir="$srcdir/$_pkgname-$_pkgver.$_commit"
+builddir="$srcdir/puzzles-$_gitrev"
build() {
if [ "$CBUILD" != "$CHOST" ]; then
CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
fi
- cmake -B build \
+ CXXFLAGS="$CXXFLAGS -flto=auto" \
+ CFLAGS="$CFLAGS -flto=auto" \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
$CMAKE_CROSSOPTS .
@@ -34,23 +40,21 @@ build() {
}
package() {
- DESTDIR="$pkgdir" cmake --build build --target install
+ DESTDIR="$pkgdir" cmake --install build
# Append "sgt-" prefix to icon files
# Move icons to hicolor directory, like upstream distributions do
# And remove "-48d24" suffix
mkdir -p "$pkgdir"/usr/share/icons/hicolor/48x48/apps
- for f in "$pkgdir"/"$_icondir"/*.png
- do
+ for f in "$pkgdir"/"$_icondir"/*.png; do
mv -v -- "$f" \
- "$pkgdir"/usr/share/icons/hicolor/48x48/apps/sgt-"$(basename -- $f | sed 's/-48d24//g')"
+ "$pkgdir"/usr/share/icons/hicolor/48x48/apps/sgt-"$(basename -- $f | sed 's/-48d24//g')"
done
# Append "sgt-" prefix to desktop files
- for f in "$pkgdir"/"$_desktopdir"/*.desktop
- do
+ for f in "$pkgdir"/"$_desktopdir"/*.desktop; do
mv -v -- "$f" \
- "$pkgdir"/usr/share/applications/sgt-"$(basename -- $f)"
+ "$pkgdir"/usr/share/applications/sgt-"$(basename -- $f)"
done
# Remove redundant directory
@@ -58,6 +62,6 @@ package() {
}
sha512sums="
-1431912593337c73089d1d7daa47457532a3c9d788484fb70b412cc1641deae6685515f0ea53fa1d66590569eba9fd8923a32590494accacba64c0845794fd1a puzzles-20211031.640f923.tar.gz
+66a4b3f1ed5778c921b6378fc6ffa43aa111f69d165ac0ee18c2442b04913676839e64e79e34edf1bf2109cc81bb580534bcd499263afce83645df5901a13060 sgt-puzzles-0_git20230310.tar.gz
ebe33479a779abf9cd0ea12232ab2319fa279ba467ee635460962eb714c87f2a87e82b160fc43665b0e9e39b5ba72d6bcc2c0cb35abe0adde6de40c18775bee6 0001-change-desktop-variables-according-to-prefix.patch
"
diff --git a/testing/shadowsocks-libev/APKBUILD b/testing/shadowsocks-libev/APKBUILD
index ebe28e8157e..a258e87720b 100644
--- a/testing/shadowsocks-libev/APKBUILD
+++ b/testing/shadowsocks-libev/APKBUILD
@@ -1,13 +1,13 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=shadowsocks-libev
pkgver=3.3.5
-pkgrel=1
+pkgrel=4
pkgdesc="lightweight secured SOCKS5 proxy"
url="https://shadowsocks.org/en/download/servers.html"
-arch="all"
+arch="all !armhf !armv7 !x86" # blocked by libbloom
license="GPL-3.0-or-later"
makedepends="asciidoc autoconf automake libtool linux-headers libcorkipset-dev
- mbedtls-dev pcre-dev xmlto libev-dev c-ares-dev libsodium-dev zlib-dev libbloom-dev"
+ mbedtls2-dev pcre-dev xmlto libev-dev c-ares-dev libsodium-dev zlib-dev libbloom-dev"
subpackages="$pkgname-dev $pkgname-doc lib$pkgname:libs"
source="shadowsocks-libev-$pkgver.tar.gz::https://github.com/shadowsocks/shadowsocks-libev/archive/v$pkgver.tar.gz
use-upstream-libcorkipset-libbloom.patch
@@ -44,5 +44,7 @@ package() {
make DESTDIR="$pkgdir" install
}
-sha512sums="c0cc869b4b7661ebd348bd5559c6a17c44b66a5f42374d97023adcfb525d934da3ed96245ff792ebc74870d30dd8f71fadcd89c79b2cd8a98d551ff7592508d0 shadowsocks-libev-3.3.5.tar.gz
-6e14365fb65731e4f9573b39dd7849d47392b39db52aeffee0e91ee767db2361b053f02bc96cc439e5b677d85c09cd44fd905d6b1fca8b10d2e650d8c41a16e0 use-upstream-libcorkipset-libbloom.patch"
+sha512sums="
+c0cc869b4b7661ebd348bd5559c6a17c44b66a5f42374d97023adcfb525d934da3ed96245ff792ebc74870d30dd8f71fadcd89c79b2cd8a98d551ff7592508d0 shadowsocks-libev-3.3.5.tar.gz
+6e14365fb65731e4f9573b39dd7849d47392b39db52aeffee0e91ee767db2361b053f02bc96cc439e5b677d85c09cd44fd905d6b1fca8b10d2e650d8c41a16e0 use-upstream-libcorkipset-libbloom.patch
+"
diff --git a/testing/shairport-sync/APKBUILD b/testing/shairport-sync/APKBUILD
deleted file mode 100644
index 6e6dc9dd5d5..00000000000
--- a/testing/shairport-sync/APKBUILD
+++ /dev/null
@@ -1,48 +0,0 @@
-# Contributor: Carlo Landmeter <clandmeter@alpinelinux.org>
-# Maintainer:
-pkgname=shairport-sync
-pkgver=3.3.9
-pkgrel=0
-pkgdesc="AirTunes emulator. Shairport Sync adds multi-room capability with Audio Synchronisation"
-url="https://github.com/mikebrady/shairport-sync"
-arch="all"
-license="custom"
-depends="avahi"
-makedepends="autoconf automake libtool alsa-lib-dev popt-dev
- openssl-dev soxr-dev avahi-dev libconfig-dev xmltoman"
-subpackages="$pkgname-doc $pkgname-openrc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/mikebrady/shairport-sync/archive/$pkgver.tar.gz
- $pkgname.initd"
-options=!check
-
-prepare() {
- default_prepare
- autoreconf -i -f
-}
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --infodir=/usr/share/info \
- --localstatedir=/var \
- --with-piddir=/run \
- --with-alsa \
- --with-avahi \
- --with-ssl=openssl \
- --with-soxr
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- install -m 755 -D "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
-}
-
-sha512sums="
-725bbab9f35a209a1893851d6f470a830d396cf73620361b42444459359c04bb98a090d91b74db080eb17cee597ca9da2dd51285e629bd34d6e5f79682fe6470 shairport-sync-3.3.9.tar.gz
-aeead51ef0f17d360bb1e2d2ae897974ef507ef56db84e6aeb79d8ec522c3bb9336f01ff4150e70fecfebf9808dd7190cb2839e287cf0ef6e1886504c1f1edc6 shairport-sync.initd
-"
diff --git a/testing/shairport-sync/shairport-sync.initd b/testing/shairport-sync/shairport-sync.initd
deleted file mode 100644
index 02b0df9eb20..00000000000
--- a/testing/shairport-sync/shairport-sync.initd
+++ /dev/null
@@ -1,14 +0,0 @@
-#!/sbin/openrc-run
-
-description="Implements a synchronous (multi-room-capable) AirPlay receiver"
-command="/usr/bin/shairport-sync"
-command_background="yes"
-
-pidfile="/run/$RC_SVCNAME.pid"
-start_stop_daemon_args="
- --stdout /var/log/$RC_SVCNAME.log
- --stderr /var/log/$RC_SVCNAME.log"
-
-depend() {
- need net localmount avahi-daemon
-}
diff --git a/testing/shc/APKBUILD b/testing/shc/APKBUILD
index 2d74dc4a049..b5d82f6330d 100644
--- a/testing/shc/APKBUILD
+++ b/testing/shc/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: MrBiTs <mrbits@mrbits.com.br>
pkgname="shc"
pkgver="4.0.3"
-pkgrel=0
+pkgrel=1
pkgdesc="A generic shell script compiler."
url="https://neurobin.org/projects/softwares/unix/shc/"
arch="all"
diff --git a/testing/shellinabox/APKBUILD b/testing/shellinabox/APKBUILD
index 1d97aee538a..21fc90663b7 100644
--- a/testing/shellinabox/APKBUILD
+++ b/testing/shellinabox/APKBUILD
@@ -3,12 +3,12 @@
pkgname=shellinabox
_daemonname=${pkgname}d
pkgver=2.21
-pkgrel=1
+pkgrel=3
pkgdesc="Implementation of a web server that can export arbitrary command line tools to a web based terminal emulator"
url="https://github.com/shellinabox/shellinabox"
arch="all"
license="GPL-2.0-or-later"
-makedepends="autoconf automake m4 libtool openssl-dev zlib-dev"
+makedepends="autoconf automake m4 libtool openssl-dev>3 zlib-dev"
subpackages="$pkgname-doc $pkgname-openrc"
pkgusers="$_daemonname"
pkggroups="$_daemonname"
diff --git a/testing/shellspec/APKBUILD b/testing/shellspec/APKBUILD
deleted file mode 100644
index 0641695409c..00000000000
--- a/testing/shellspec/APKBUILD
+++ /dev/null
@@ -1,22 +0,0 @@
-# Contributor: Anjandev Momi <anjan@momi.ca>
-# Maintainer: Anjandev Momi <anjan@momi.ca>
-pkgname=shellspec
-pkgver=0.28.1
-pkgrel=0
-pkgdesc="A full-featured BDD unit testing framework for bash, ksh, zsh, dash and all POSIX shells"
-url="https://shellspec.info/"
-arch="noarch"
-license="MIT"
-source="$pkgname-$pkgver.tar.gz::https://github.com/shellspec/shellspec/archive/refs/tags/$pkgver.tar.gz"
-
-check() {
- ./shellspec --no-banner --task fixture:stat:prepare
- ./shellspec --no-banner spec --jobs "$JOBS"
-}
-
-package() {
- PREFIX="$pkgdir"/usr make install
-}
-sha512sums="
-a3d1f582a3c76ef240ab9bd0ce3b8433d7ced766b6fa03ed724100917271c2c0ee04909cdc7ea2f92267dc11fdd890d52a4edcc2957c16dbbd331a718e5c564f shellspec-0.28.1.tar.gz
-"
diff --git a/testing/shfm/APKBUILD b/testing/shfm/APKBUILD
index d076e03ebee..f5efc7d4732 100644
--- a/testing/shfm/APKBUILD
+++ b/testing/shfm/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer:
pkgname=shfm
pkgver=0.4.2
-pkgrel=0
+pkgrel=1
pkgdesc="file manager written in POSIX shell"
url="https://github.com/dylanaraps/shfm"
arch="noarch"
@@ -16,5 +16,4 @@ package() {
install -Dm0644 LICENSE -t "$pkgdir"/usr/share/licenses/$pkgname
}
-
sha512sums="57e8af53ea0c65585db0721eae465ea18e9611e2032af0378218dcd8bad798cdc5c3c54c27167093b5833e5b11de3b9ad9f32c52449855a21310b9dd06042c6e $pkgname-$pkgver.tar.gz"
diff --git a/testing/shipments/APKBUILD b/testing/shipments/APKBUILD
index 9a79c55d522..a5a2634ce2a 100644
--- a/testing/shipments/APKBUILD
+++ b/testing/shipments/APKBUILD
@@ -4,17 +4,28 @@ pkgver=0.3.0
pkgrel=0
pkgdesc="Postal package tracking application"
url="https://git.sr.ht/~martijnbraam/shipments"
-# riscv64 and s390x blocked by libhandy1
-arch="noarch !s390x !riscv64"
+arch="noarch"
license="GPL-3.0-or-later"
-depends="python3 py3-gobject3 py3-requests gtk+3.0 libhandy1"
-makedepends="py3-setuptools glib-dev libhandy1-dev meson ninja"
+depends="
+ gtk+3.0
+ libhandy1
+ py3-gobject3
+ py3-requests
+ python3
+ "
+makedepends="
+ glib-dev
+ libhandy1-dev
+ meson
+ ninja
+ py3-setuptools
+ "
source="$pkgname-$pkgver.tar.gz::https://git.sr.ht/~martijnbraam/shipments/archive/$pkgver.tar.gz"
options="!check" # There's no testsuite
build() {
abuild-meson . output
- meson compile ${JOBS:+-j ${JOBS}} -C output
+ meson compile -C output
}
package() {
diff --git a/testing/shntool/24bit.patch b/testing/shntool/24bit.patch
new file mode 100644
index 00000000000..58ea6f39026
--- /dev/null
+++ b/testing/shntool/24bit.patch
@@ -0,0 +1,46 @@
+Patch-Source: https://salsa.debian.org/debian/shntool/-/commit/57efcd7b34c2107dd785c11d79dfcd4520b2bc41
+--
+Origin: https://github.com/max619/shntool/commit/cfd06e4ed
+From cfd06e4edecdca2013e0fe04db135fd110a68203 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?=D0=9C=D0=B0=D0=BA=D1=81=D0=B8=D0=BC=20=D0=91=D0=B0=D0=B3?=
+ =?UTF-8?q?=D1=80=D1=8F=D0=BD=D1=86=D0=B5=D0=B2?= <maxbag97619@gmail.com>
+Date: Mon, 11 Nov 2019 00:53:06 +0300
+Subject: [PATCH] Added WAVE_FORMAT_EXTENSIBLE with value 0xfffe and supressed
+ error on wav header parsing with that format
+
+--- a/include/wave.h
++++ b/include/wave.h
+@@ -58,8 +58,9 @@
+ #define WAVE_FORMAT_MPEG (0x0050)
+ #define WAVE_FORMAT_MPEGLAYER3 (0x0055)
+ #define WAVE_FORMAT_G726_ADPCM (0x0064)
+ #define WAVE_FORMAT_G722_ADPCM (0x0065)
++#define WAVE_FORMAT_EXTENSIBLE (0xfffe)
+
+ #define CD_BLOCK_SIZE (2352)
+ #define CD_BLOCKS_PER_SEC (75)
+ #define CD_BLOCK_ALIGN (4)
+--- a/src/core_wave.c
++++ b/src/core_wave.c
+@@ -166,8 +166,9 @@
+ return FALSE;
+ }
+
+ switch (info->wave_format) {
++ case WAVE_FORMAT_EXTENSIBLE:
+ case WAVE_FORMAT_PCM:
+ break;
+ default:
+ st_warning("unsupported format 0x%04x (%s) while processing file: [%s]",
+@@ -510,9 +511,11 @@
+ return "MPEG Layer 3";
+ case WAVE_FORMAT_G726_ADPCM:
+ return "G.726 ADPCM";
+ case WAVE_FORMAT_G722_ADPCM:
+- return "G.722 ADPCM";
++ return "G.722 ADPCM";
++ case WAVE_FORMAT_EXTENSIBLE:
++ return "WAVE Extensible format";
+ }
+ return "Unknown";
+ }
diff --git a/testing/shntool/APKBUILD b/testing/shntool/APKBUILD
index a1ab0274afa..60dd2b5e8a3 100644
--- a/testing/shntool/APKBUILD
+++ b/testing/shntool/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Jean-Louis Fuchs <jean-louis.fuchs@adfinis-sygroup.ch>
pkgname=shntool
pkgver=3.0.10
-pkgrel=3
+pkgrel=4
pkgdesc="A multi-purpose WAVE data processing and reporting utility"
url="http://shnutils.freeshell.org/shntool/"
arch="all"
@@ -12,9 +12,9 @@ subpackages="$pkgname-doc"
source="http://shnutils.freeshell.org/shntool/dist/src/shntool-$pkgver.tar.gz
shntool-3.0.10-large-size.patch
shntool-3.0.10-large-times.patch
+ 24bit.patch
"
-
build() {
update_config_sub
./configure \
@@ -58,6 +58,9 @@ check() {
rm -r test
}
-sha512sums="2150d7123860abb54a56a1615bda991ed3713d73c338723f28b7d01a63c49a47809be16dc57b5b4edeee1567b003f9a4b54945c1cd08440f9503d22b91eaa06d shntool-3.0.10.tar.gz
+sha512sums="
+2150d7123860abb54a56a1615bda991ed3713d73c338723f28b7d01a63c49a47809be16dc57b5b4edeee1567b003f9a4b54945c1cd08440f9503d22b91eaa06d shntool-3.0.10.tar.gz
fc44bca63d79b279db6d275caaacdb73cbebd6b902276a9052f005146fa125f4674e3cf559d46405637a337192f4a38f9bec4836af46e7ae52e4f220352c1ba7 shntool-3.0.10-large-size.patch
-9780f22d93e20dd01d18067978bdf6cbb0b460bb80f41c4f4752b3322c3d70182b3acf35b789e30fc36ca52af6127e24c00599fb49b916f01448613721a94ebe shntool-3.0.10-large-times.patch"
+9780f22d93e20dd01d18067978bdf6cbb0b460bb80f41c4f4752b3322c3d70182b3acf35b789e30fc36ca52af6127e24c00599fb49b916f01448613721a94ebe shntool-3.0.10-large-times.patch
+3c9cdd7936a6572a3c9dfc7575f5ff9a0981dd557add8e1113454487091c7b161040d25d3266937449295a1bb5317ee3515a84c3d7168360bf84643ed828e202 24bit.patch
+"
diff --git a/testing/shutdown-clear-machine-id/APKBUILD b/testing/shutdown-clear-machine-id/APKBUILD
new file mode 100644
index 00000000000..3d0568ae5be
--- /dev/null
+++ b/testing/shutdown-clear-machine-id/APKBUILD
@@ -0,0 +1,20 @@
+# Maintainer: Adam Thiede <me@adamthiede.com>
+pkgname=shutdown-clear-machine-id
+pkgver=1.0.0
+pkgrel=0
+pkgdesc="Pre-shutdown service to remove /etc/machine-id"
+url="https://wiki.alpinelinux.org/wiki/D-Bus"
+arch="noarch"
+license="GPL-3.0-or-later"
+source="
+ clear-machine-id.shutdown.initd
+ "
+install="$pkgname.post-install"
+
+package() {
+ install -Dm755 "$srcdir"/clear-machine-id.shutdown.initd "$pkgdir"/etc/init.d/clear-machine-id
+}
+
+sha512sums="
+5c99ced4ba1215321d8cf094d218b2d408a07c34f7bc7f20cee6886cf42d5551be1b8dad2782019e479d57f2da2c2784325cd852a37d1b9bab7d9ce72b134517 clear-machine-id.shutdown.initd
+"
diff --git a/testing/shutdown-clear-machine-id/clear-machine-id.shutdown.initd b/testing/shutdown-clear-machine-id/clear-machine-id.shutdown.initd
new file mode 100644
index 00000000000..616e2321867
--- /dev/null
+++ b/testing/shutdown-clear-machine-id/clear-machine-id.shutdown.initd
@@ -0,0 +1,8 @@
+#!/sbin/openrc-run
+
+description="Remove dbus machine-id files on shutdown"
+
+start() {
+ rm -f /etc/machine-id
+ rm -f /var/lib/dbus/machine-id
+}
diff --git a/testing/shutdown-clear-machine-id/shutdown-clear-machine-id.post-install b/testing/shutdown-clear-machine-id/shutdown-clear-machine-id.post-install
new file mode 100644
index 00000000000..71f23c5101f
--- /dev/null
+++ b/testing/shutdown-clear-machine-id/shutdown-clear-machine-id.post-install
@@ -0,0 +1,13 @@
+#!/bin/sh
+
+# Print usage instructions
+cat << __EOF__
+*
+* To use this service, add it to the shutdown runlevel with:
+*
+* rc-update add clear-machine-id shutdown
+*
+__EOF__
+
+exit 0
+
diff --git a/testing/sieve-connect/APKBUILD b/testing/sieve-connect/APKBUILD
deleted file mode 100644
index db2dcff29de..00000000000
--- a/testing/sieve-connect/APKBUILD
+++ /dev/null
@@ -1,29 +0,0 @@
-# Contributor: David Demelier <markand@malikania.fr>
-# Maintainer: David Demelier <markand@malikania.fr>
-pkgname="sieve-connect"
-pkgver="0.90"
-pkgrel=0
-pkgdesc="command line client for MANAGESIEVE protocol"
-url="https://people.spodhuis.org/phil.pennock/software"
-arch="noarch"
-license="BSD-3-Clause"
-depends="
- perl-authen-sasl
- perl-io-socket-inet6
- perl-io-socket-ssl
- perl-net-dns
- perl-term-readkey"
-subpackages="$pkgname-doc"
-source="https://people.spodhuis.org/phil.pennock/software/sieve-connect-$pkgver.tar.bz2"
-options="!check" # no tests provided.
-
-build() {
- make
-}
-
-package() {
- install -Dm0755 sieve-connect "$pkgdir/usr/bin/sieve-connect"
- install -Dm0644 sieve-connect.1 "$pkgdir/usr/share/man/man1/sieve-connect.1"
-}
-
-sha512sums="3b4d4a6a7eb7d48f8b2dbc4c302c3de1a2a193282c7b2d25581e1131d6c7598cc2a47edabf8b108e94e0fd1a9cc50e48a103c133dba233f180f12d36c0da0718 sieve-connect-0.90.tar.bz2"
diff --git a/testing/sigil/APKBUILD b/testing/sigil/APKBUILD
new file mode 100644
index 00000000000..6d23f8ab24d
--- /dev/null
+++ b/testing/sigil/APKBUILD
@@ -0,0 +1,67 @@
+# Contributor: OIS <mistresssilvara@hotmail.com>
+# Maintainer: OIS <mistresssilvara@hotmail.com>
+pkgname=sigil
+pkgver=1.9.30
+pkgrel=2
+pkgdesc="EPUB editor"
+url="https://sigil-ebook.com/sigil"
+# qt6-qtwebengine (XXX: momentarily qt5 for aarch64)
+arch="aarch64 x86_64"
+license="GPL-3.0-or-later AND Apache-2.0 AND MIT"
+depends="
+ py3-css-parser
+ py3-dulwich
+ py3-lxml
+ qt5-qtsvg
+ "
+makedepends="
+ cmake
+ hunspell-dev
+ minizip-dev
+ pcre2-dev
+ python3-dev
+ qt5-qttools-dev
+ qt5-qtwebengine-dev
+ samurai
+ zlib-dev
+ "
+subpackages="$pkgname-lang"
+source="$pkgname-$pkgver.tar.gz::https://github.com/Sigil-Ebook/Sigil/archive/refs/tags/$pkgver.tar.gz
+ $pkgname-assert.patch::https://github.com/Sigil-Ebook/Sigil/commit/8e21405f5d2dfdc7da60f845ae7cf5e2bca6d029.diff
+ "
+builddir="$srcdir/Sigil-$pkgver/"
+# no tests
+options="!check"
+
+build() {
+ if [ "$CBUILD" != "$CHOST" ]; then
+ CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DUSE_SYSTEM_LIBS=1 \
+ -DINSTALL_BUNDLED_DICTS=0 \
+ -DDISABLE_UPDATE_CHECK=1 \
+ -DUSE_QT6=OFF \
+ $CMAKE_CROSSOPTS
+
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+lang() {
+ pkgdesc="Languages for package $pkgname"
+ install_if="$pkgname=$pkgver-r$pkgrel lang"
+
+ amove usr/share/sigil/translations
+}
+
+sha512sums="
+80dcaa9dcee51c36a42bcd57fc87acda94002af74602d934c7e9bfd275339d9ac200cd1f141fb9e2709ac054569bc22f1869623498ce16c636a3fab8dae4e70f sigil-1.9.30.tar.gz
+eb6a1d6c4cc94833b0356b5ce7b1a168d70dcb77a381b539ce8c5b75ef7cb1f7e5a62ad1c22a5d68105a08758035c654747c1a6e4f638cbc80fd897084db958a sigil-assert.patch
+"
diff --git a/testing/sigma/APKBUILD b/testing/sigma/APKBUILD
new file mode 100644
index 00000000000..65b3e6bd05c
--- /dev/null
+++ b/testing/sigma/APKBUILD
@@ -0,0 +1,32 @@
+# Contributor: Will Sinatra <wpsinatra@gmail.com>
+# Maintainer: Will Sinatra <wpsinatra@gmail.com>
+pkgname=sigma
+pkgver=0.23.1
+pkgrel=1
+pkgdesc="Generic Signature Format for SIEM Systems"
+url="https://github.com/sigmahq/sigma"
+license="LGPL-3.0-only"
+arch="noarch"
+makedepends="py3-build py3-installer py3-setuptools py3-wheel"
+depends="python3"
+_pkg=sigmatools
+subpackages="$pkgname-pyc"
+source="sigma-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/s/$_pkg/$_pkg-$pkgver.tar.gz
+ remove_data_file_installation.patch"
+builddir="$srcdir/$_pkg-$pkgver"
+options="!check"
+
+build() {
+ python3 -m build --wheel --no-isolation
+}
+
+package() {
+ python3 -m installer --destdir="$pkgdir" dist/*.whl
+ install -Dm644 config/*.yml -t "$pkgdir/etc/sigma/"
+ install -Dm644 config/generic/*.yml -t "$pkgdir/etc/sigma/"
+}
+
+sha512sums="
+8c91a66111765b02876e5b9341518aaa7a51eddc51cc16da077c2144673d7f8192fb0e997367d9f546d436a086244c0ae135e6e3348a0879ad6621f778f15c88 sigma-0.23.1.tar.gz
+ab129d3c74750b149655697f3e61f27e2119e0fef52e89c2abee6a23f32582dd3ea66ff20e78bc2d57fe0d5c92e4acea7fd6440af6bcd18073eaf40dca0de70e remove_data_file_installation.patch
+"
diff --git a/testing/sigma/remove_data_file_installation.patch b/testing/sigma/remove_data_file_installation.patch
new file mode 100644
index 00000000000..14e3a4c6248
--- /dev/null
+++ b/testing/sigma/remove_data_file_installation.patch
@@ -0,0 +1,26 @@
+diff --git a/setup.py b/setup.py
+index f852d0f..b7f5a57 100644
+--- a/setup.py
++++ b/setup.py
+@@ -44,15 +44,12 @@ setup(
+ ],
+ python_requires='~=3.8',
+ install_requires=['PyYAML', 'pymisp', 'progressbar2', 'ruamel.yaml', 'termcolor'],
+- extras_require={
+- 'test': ['coverage', 'yamllint', 'attackcti'],
+- },
+- data_files=[
+- ('etc/sigma', [ str(p) for p in Path('config/').glob('*.yml') ]),
+- ('etc/sigma/generic', [ str(p) for p in Path('config/generic/').glob('*.yml') ])],
+- entry_points={
+- 'console_scripts': [
+- 'sigmac = sigma.sigmac:main',
++ extras_require={
++ 'test': ['coverage', 'yamllint', 'attackcti'],
++ },
++ entry_points={
++ 'console_scripts': [
++ 'sigmac = sigma.sigmac:main',
+ 'merge_sigma = sigma.merge_sigma:main',
+ 'sigma2misp = sigma.sigma2misp:main',
+ 'sigma2attack = sigma.sigma2attack:main',
diff --git a/testing/signal-cli/APKBUILD b/testing/signal-cli/APKBUILD
deleted file mode 100644
index 89b9623a411..00000000000
--- a/testing/signal-cli/APKBUILD
+++ /dev/null
@@ -1,46 +0,0 @@
-# Contributor: Siva Mahadevan <me@svmhdvn.name>
-# Contributor: Simon Frankenberger <simon-alpine@fraho.eu>
-# Maintainer: Siva Mahadevan <me@svmhdvn.name>
-pkgname=signal-cli
-pkgver=0.10.5
-pkgrel=0
-pkgdesc="commandline interface for libsignal-service-java"
-url="https://github.com/AsamK/signal-cli"
-# jdk17 only available on 64 bit archs
-# cargo and rust not available on s390x and riscv64
-# java-libsignal-client not available on aarch64
-arch="x86_64 ppc64le"
-license="GPL-3.0-or-later"
-depends="java-libsignal-client"
-makedepends="openjdk17-jdk"
-source="$pkgname-$pkgver.tar.gz::https://github.com/AsamK/signal-cli/archive/v$pkgver.tar.gz
- FixServiceConfigWrongExceptionCatched.patch"
-
-build() {
- ./gradlew installDist
-}
-
-check() {
- ./gradlew check
-}
-
-package() {
- local buildhome="build/install/$pkgname"
- local installhome="/usr/share/java/$pkgname"
-
- install -dm755 "$pkgdir/$installhome/lib"
- install -m644 "$buildhome"/lib/* "$pkgdir/$installhome/lib"
-
- install -Dm755 "$buildhome/bin/$pkgname" "$pkgdir/$installhome/bin/$pkgname"
- install -dm755 "$pkgdir/usr/bin"
- ln -s "$installhome/bin/$pkgname" "$pkgdir/usr/bin/$pkgname"
-
- rm -v "$pkgdir/$installhome/lib"/libsignal-client-*.jar
- ln -sv /usr/share/java/libsignal-client/libsignal-client.jar "$pkgdir/$installhome/lib/signal-client-java.jar"
- sed -i -e 's/libsignal-client-[0-9.]\+\.jar/signal-client-java.jar/g' "$pkgdir/$installhome/bin/$pkgname"
-}
-
-sha512sums="
-fe6b5a2f333920a7d30f781fb6ce8f8286785e893f650aa198c23d2b2bd4b65dd90fa7273405ae82c62cba010d5e2156b2a8cf2fed909dad5da280769e424203 signal-cli-0.10.5.tar.gz
-5b0dc066f789e74405c5203bd5fb7e5c3231ab14dcc2c068e8a6dfa36d7db3349d8c46a2fe91a4675bda814a683adcbad218a4972d7b9c4767a73a8223d138e2 FixServiceConfigWrongExceptionCatched.patch
-"
diff --git a/testing/signal-cli/FixServiceConfigWrongExceptionCatched.patch b/testing/signal-cli/FixServiceConfigWrongExceptionCatched.patch
deleted file mode 100644
index 16669109531..00000000000
--- a/testing/signal-cli/FixServiceConfigWrongExceptionCatched.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- old/lib/src/main/java/org/asamk/signal/manager/config/ServiceConfig.java
-+++ new/lib/src/main/java/org/asamk/signal/manager/config/ServiceConfig.java
-@@ -48,14 +48,13 @@
-
- public static boolean isSignalClientAvailable() {
- try {
-- try {
-- org.signal.libsignal.internal.Native.UuidCiphertext_CheckValidContents(new byte[0]);
-- } catch (IllegalArgumentException ignored) {
-- }
-+ org.signal.libsignal.internal.Native.UuidCiphertext_CheckValidContents(new byte[0]);
- return true;
- } catch (UnsatisfiedLinkError e) {
- logger.warn("Failed to call libsignal-client: {}", e.getMessage());
- return false;
-+ } catch (Exception e) {
-+ return true;
- }
- }
-
diff --git a/testing/signal-desktop/APKBUILD b/testing/signal-desktop/APKBUILD
new file mode 100644
index 00000000000..2032a9871a5
--- /dev/null
+++ b/testing/signal-desktop/APKBUILD
@@ -0,0 +1,489 @@
+# Contributor: lauren n. liberda <lauren@selfisekai.rocks>
+# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
+pkgname=signal-desktop
+pkgver=7.5.1
+pkgrel=0
+pkgdesc="A messaging app for simple private communication with friends"
+url="https://github.com/signalapp/Signal-Desktop/"
+# same as electron
+arch="aarch64 x86_64"
+license="AGPL-3.0-only"
+depends="
+ electron
+ font-barlow
+ font-eb-garamond
+ font-inter
+ font-parisienne
+ "
+makedepends="
+ alsa-lib-dev
+ aom-dev
+ brotli-dev
+ bsd-compat-headers
+ cargo
+ cargo-auditable
+ cbindgen
+ clang-dev
+ cmake
+ crc32c-dev
+ dav1d-dev
+ double-conversion-dev
+ electron-dev
+ electron-tasje
+ ffmpeg-dev
+ git-lfs
+ glib-dev
+ gn
+ jsoncpp-dev
+ libavif-dev
+ libjpeg-turbo-dev
+ libepoxy-dev
+ libevent-dev
+ libsecret-dev
+ libvpx-dev
+ libwebp-dev
+ lld
+ llvm-dev
+ mesa-dev
+ nodejs
+ npm
+ openh264-dev
+ openssl-dev
+ opus-dev
+ pipewire-dev
+ protoc
+ pulseaudio-dev
+ py3-setuptools
+ python3
+ samurai
+ sqlcipher-dev
+ vips-dev
+ yarn
+ "
+options="net !check"
+
+# follow signal-desktop package.json -> @signalapp/libsignal-client
+_libsignalver=0.42.0
+
+# follow signal-desktop package.json -> @signalapp/ringrtc
+_ringrtcver=2.39.3
+
+# follow ringrtc (on version above) -> config/version.properties -> webrtc.version
+# downloading tarball generated with abuild snapshot (with gclient dependencies fetched)
+_webrtcver=6261d
+
+# follow @signalapp/better-sqlite3 (on version in package.json) -> deps/download.js -> TOKENIZER_VERSION
+# last bsqlite version: 8.7.1
+_stokenizerver=0.2.1
+
+source="
+ https://github.com/signalapp/Signal-Desktop/archive/refs/tags/v$pkgver/Signal-Desktop-$pkgver.tar.gz
+ https://github.com/signalapp/libsignal/archive/refs/tags/v$_libsignalver/libsignal-$_libsignalver.tar.gz
+ https://github.com/signalapp/ringrtc/archive/refs/tags/v$_ringrtcver/ringrtc-$_ringrtcver.tar.gz
+ https://ab-sn.lnl.gay/webrtc-$_webrtcver.tar.zst
+ https://github.com/signalapp/Signal-FTS5-Extension/archive/refs/tags/v$_stokenizerver/stokenizer-$_stokenizerver.tar.gz
+
+ bettersqlite-use-system-sqlcipher.patch
+ libsignal-auditable.patch
+ signal-disable-updates.patch
+ signal-update-links.patch
+ signal-show-window-please.patch
+ ringrtc-webrtc-renamed.patch
+ webrtc-shared-like-my-wife.patch
+ webrtc-compiler.patch
+ webrtc-gcc13.patch
+
+ signal-desktop
+ "
+builddir="$srcdir/Signal-Desktop-$pkgver"
+
+# webrtc broken on clang https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101227
+export CC=gcc
+export CXX=g++
+
+# required to find the tools
+export AR=ar
+export NM=nm
+export LD=g++
+
+# less log spam, reproducible, allow lto with rust
+export CFLAGS="${CFLAGS/-g/} -O2 -Wno-error -Wno-deprecated-builtins -Wno-unknown-warning-option -Wno-builtin-macro-redefined -Wno-deprecated-declarations"
+export CXXFLAGS="${CXXFLAGS/-g/} -O2 -Wno-error -Wno-deprecated-builtins -Wno-unknown-warning-option -Wno-builtin-macro-redefined -Wno-deprecated-declarations"
+export CPPFLAGS="$CPPFLAGS -D__DATE__= -D__TIME__= -D__TIMESTAMP__="
+
+export CARGO_PROFILE_RELEASE_OPT_LEVEL=2
+export CARGO_PROFILE_RELEASE_STRIP="symbols"
+#export RUSTFLAGS="$RUSTFLAGS -C linker=clang"
+
+export YARN_CACHE_FOLDER="$srcdir/.yarn"
+
+# webrtc only, the other dependencies are fine with tarballs
+_distbucket="sakamoto/lnl-aports-snapshots/"
+snapshot() {
+ mkdir -p "$srcdir"
+ cd "$srcdir"
+
+ # cleanup if retrying
+ rm -rf src
+ rm -rf webrtc-$_webrtcver
+ rm -f webrtc-$_webrtcver.tar
+ rm -f webrtc-$_webrtcver.tar.zst
+
+ echo "
+solutions = [{
+ 'name': 'src',
+ 'url': 'https://github.com/signalapp/webrtc.git@$_webrtcver',
+}]
+target_cpu = ['x64', 'arm64']
+target_cpu_only = True
+" > .gclient
+
+ gclient sync --no-history --nohooks --tpot-cipd-ignore-platformed
+
+ # needed DEPS hooks
+ python3 'src/build/landmines.py' --landmine-scripts 'src/tools_webrtc/get_landmines.py' --src-dir 'src'
+ python3 'src/build/util/lastchange.py' -o 'src/build/util/LASTCHANGE'
+
+ for elf in $(scanelf -RA -F "%F" src); do
+ rm -f "$elf"
+ done
+
+ mv src webrtc-$_webrtcver
+
+ msg "generating tarball.."
+ tar -cf webrtc-$_webrtcver.tar \
+ --exclude="ChangeLog*" \
+ --exclude="testdata/" \
+ --exclude="test_data/" \
+ --exclude="android_rust_toolchain/toolchain/" \
+ --exclude="base/" \
+ --exclude-backups \
+ --exclude-caches-all \
+ --exclude-vcs \
+ webrtc-$_webrtcver
+
+ zstd --auto-threads=logical --ultra --long -22 -T"${ZSTD_LIMIT:-0}" -vv webrtc-$_webrtcver.tar -o "$SRCDEST"/webrtc-$_webrtcver.tar.zst
+ mcli cp "$SRCDEST"/webrtc-$_webrtcver.tar.zst "$_distbucket"
+}
+
+# manual patches
+default_prepare() { :; }
+
+prepare() {
+ default_prepare
+ msg "Applying patches"
+ for x in $source; do
+ 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
+
+ msg "Installing signal-desktop JS dependencies"
+ echo 'ignore-engines true' > .yarnrc
+ yarn --ignore-scripts --frozen-lockfile
+
+ (
+ cd "$srcdir"/webrtc-$_webrtcver
+
+ local use_system="
+ brotli
+ crc32c
+ dav1d
+ double-conversion
+ ffmpeg
+ flatbuffers
+ fontconfig
+ freetype
+ harfbuzz-ng
+ highway
+ icu
+ jsoncpp
+ libaom
+ libavif
+ libdrm
+ libevent
+ libjpeg
+ libpng
+ libsecret
+ libvpx
+ libwebp
+ libxml
+ libxslt
+ openh264
+ opus
+ re2
+ snappy
+ woff2
+ zlib
+ "
+ for _lib in $use_system double_conversion libjpeg_turbo; do
+ msg "Removing buildscripts for system provided $_lib"
+ find . -type f -path "*{third_party,ringrtc}/$_lib/*" \
+ \! -path "*third_party/$_lib/chromium/*" \
+ \! -path "*third_party/$_lib/google/*" \
+ \! -path './base/third_party/icu/*' \
+ \! -path './third_party/libxml/*' \
+ \! -path './third_party/pdfium/third_party/freetype/include/pstables.h' \
+ \! -path './third_party/harfbuzz-ng/utils/hb_scoped.h' \
+ \! -path './third_party/crashpad/crashpad/third_party/zlib/zlib_crashpad.h' \
+ \! -regex '.*\.\(gn\|gni\|isolate\|py\)' \
+ -delete
+ done
+
+ msg "Replacing gn files"
+ python3 build/linux/unbundle/replace_gn_files.py --system-libraries \
+ $use_system
+
+ # allow system dependencies in "official builds"
+ sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
+ tools/generate_shim_headers/generate_shim_headers.py
+
+ mkdir path
+ ln -s /usr/bin/python3 path/vpython3
+ )
+
+ (
+ cd "$srcdir"/ringrtc-$_ringrtcver/src/rust
+
+ msg "Installing ringrtc rust dependencies"
+ cargo fetch --target="$CTARGET" --locked
+ )
+
+ (
+ cd "$srcdir"/libsignal-$_libsignalver
+
+ msg "Installing libsignal rust dependencies"
+ cargo fetch --target="$CTARGET" --locked
+ )
+
+ (
+ cd "$srcdir"/Signal-FTS5-Extension-$_stokenizerver
+
+ msg "Installing signal tokenizer rust dependencies"
+ cargo fetch --target="$CTARGET" --locked
+ )
+
+ (
+ cd "$srcdir"/ringrtc-$_ringrtcver/src/node
+
+ msg "Installing ringrtc js dependencies"
+ yarn --frozen-lockfile --ignore-scripts
+ )
+
+ (
+ cd "$srcdir"/libsignal-$_libsignalver/node
+
+ # fix target
+ sed -i 's/unknown-linux-gnu/alpine-linux-musl/g' binding.gyp
+
+ msg "Installing libsignal js dependencies"
+ yarn --ignore-scripts --frozen-lockfile
+ )
+
+ # remove shipped fonts for system-provided (part 1)
+ rm -rf fonts/
+}
+
+build() {
+ chromium_arch="$(node -e 'console.log(process.arch)')"
+
+ # required dependency of ringrtc
+ (
+ cd "$srcdir"/webrtc-$_webrtcver
+ export PATH="$PWD/path:$PATH"
+
+ # shellcheck disable=2089
+ local webrtc_args="
+ rtc_build_examples=false
+ rtc_build_tools=false
+ rtc_enable_protobuf=false
+ rtc_enable_sctp=false
+ rtc_include_tests=false
+ rtc_include_ilbc=false
+ rtc_libvpx_build_vp9=true
+ rtc_use_x11=false
+
+ build_with_mozilla=false
+ chrome_pgo_phase=0
+ clang_use_chrome_plugins=false
+ clang_base_path=\"/usr\"
+ custom_toolchain=\"//build/toolchain/linux/unbundle:default\"
+ is_cfi=false
+ is_clang=false
+ is_debug=false
+ is_official_build=true
+ host_toolchain=\"//build/toolchain/linux/unbundle:default\"
+ proprietary_codecs=true
+ rtc_link_pipewire=true
+ rtc_use_pipewire=true
+ symbol_level=0
+ use_custom_libcxx=false
+ use_lld=true
+ use_sysroot=false
+ "
+ mkdir -p "$srcdir"/ringrtc-$_ringrtcver/out/release
+ msg "Building signal's webrtc"
+ # shellcheck disable=2090,2116
+ gn gen "$srcdir"/ringrtc-$_ringrtcver/out/release --args="$(echo $webrtc_args)"
+ ninja -C "$srcdir"/ringrtc-$_ringrtcver/out/release signaldeswebrtc
+ )
+
+ (
+ cd "$srcdir"/ringrtc-$_ringrtcver
+
+ msg "Building libringrtc"
+ OUTPUT_DIR="$srcdir"/ringrtc-$_ringrtcver/out \
+ cargo auditable build --features electron --release -p ringrtc
+
+ mkdir -p src/node/build/linux
+ cp -fv out/release/libsignaldeswebrtc.so src/node/build/linux/libsignaldeswebrtc.so
+ cp -fv target/release/libringrtc.so src/node/build/linux/libringrtc-$chromium_arch.node
+ )
+
+ (
+ cd "$srcdir"/ringrtc-$_ringrtcver/src/node
+ msg "Building ringrtc JS glue code"
+ yarn build
+
+ msg "Cleaning dev dependencies for ringrtc"
+ yarn --ignore-scripts --frozen-lockfile --production
+ )
+
+ # module on npm intentionally unbuildable: https://github.com/signalapp/libsignal/issues/464#issuecomment-1160665052
+ (
+ cd "$srcdir"/libsignal-$_libsignalver/node
+
+ msg "Building libsignal"
+ yarn 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
+
+ mkdir -p prebuilds/linux-$chromium_arch
+ mv build/Release/libsignal_client_linux_$chromium_arch.node prebuilds/linux-$chromium_arch/node.napi.node
+
+ msg "Building libsignal glue code"
+ yarn tsc
+
+ msg "Cleaning dev dependencies for libsignal"
+ yarn --ignore-scripts --frozen-lockfile --production
+ )
+
+ (
+ cd "$srcdir"/Signal-FTS5-Extension-$_stokenizerver
+
+ msg "Building signal tokenizer"
+ cargo auditable build --features extension --release --frozen
+ cbindgen --profile release . -o target/release/signal-tokenizer.h
+ )
+
+ # from package.json postinstall
+ yarn build:acknowledgments
+ yarn patch-package
+ rm -rf node_modules/dtrace-provider
+
+ # get esbuild installed (needed for next step)
+ npm rebuild esbuild
+
+ # build front
+ NODE_ENV=production \
+ SIGNAL_ENV=production \
+ NODE_OPTIONS=--openssl-legacy-provider \
+ yarn build:dev
+
+ # purge non-production deps
+ yarn install --ignore-scripts --frozen-lockfile --production
+
+ # 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
+ rm -rf node_modules/@signalapp/libsignal-client/
+ mv "$srcdir"/libsignal-$_libsignalver/node/ node_modules/@signalapp/libsignal-client
+
+ # use our libringrtc
+ rm -rf node_modules/@signalapp/ringrtc/
+ mv "$srcdir"/ringrtc-$_ringrtcver/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
+ mv "$srcdir"/Signal-FTS5-Extension-$_stokenizerver/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/
+
+ npm rebuild \
+ sharp @signalapp/better-sqlite3 spellchecker websocket \
+ utf-8-validate bufferutil fs-xattr \
+ --nodedir=/usr/include/electron/node_headers --build-from-source
+
+ SIGNAL_ENV=production \
+ tasje pack
+}
+
+check() {
+ # tests run against downloaded build of electron for glibc, probably can be patched
+ yarn test
+}
+
+package() {
+ cd "$builddir"/tasje_out
+
+ install -Dm644 resources/app.asar "$pkgdir"/usr/lib/$pkgname/app.asar
+ cp -r resources/app.asar.unpacked "$pkgdir"/usr/lib/$pkgname/app.asar.unpacked
+ 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
+ install -Dm755 "$srcdir"/ringrtc-$_ringrtcver/out/release/libsignaldeswebrtc.so "$pkgdir"/usr/lib/libsignaldeswebrtc.so
+
+ install -Dm755 "$srcdir"/$pkgname "$pkgdir"/usr/bin/$pkgname
+
+ while read -r size; do
+ install -Dm644 icons/$size.png "$pkgdir"/usr/share/icons/hicolor/$size/apps/$pkgname.png
+ done < icons/size-list
+}
+
+sha512sums="
+050e94376ddee65982acda16a1f62fa83e216f9b66023686acfe8acf192990bac225c519c6377402030becf29f573ec1ca34e13edc0bb9ad74c96f0ad6354026 Signal-Desktop-7.5.1.tar.gz
+f2d5bf7958ea7d8562b19d262c6b9ccac3ca034dc51bdf3b6b05844052c5bffaebe50b9b3331f809d3e4bc8c65fc161a85df166c67637a5cca7977a00409a629 libsignal-0.42.0.tar.gz
+40fdf2448d7f8d44fb57c2f5ffb90bc670c1f31b98b932c753c703510174e50d319bda0e741e4ebe81aeb3efb3d41b73f67251c217850d636ba726434cced36e ringrtc-2.39.3.tar.gz
+e5158f81fd652bcaa2bd762d7a378958aed7cd90446c21be1f4613f42ceb64db693037c2c3cda4f80c8fd37ae13da71e5ba92330be81d65b8e72777e5e4673d4 webrtc-6261d.tar.zst
+84a1f2fc29262a12842e94698d124a85b823128e72a493b0be8ea92fbb72c5c268499f4a6827cdedaae06ec73cce4039a39fe5c5d536cbef330e59ba0183da28 stokenizer-0.2.1.tar.gz
+be5b4e823543b79175a12314f10c6326d9f0d59f470136962daed4665887006acc05b48b40dc1b67747396d8f6f7d23be298c1e110ccdd35ff9b09d5e6b80bab bettersqlite-use-system-sqlcipher.patch
+92de6fc7cc5f2b6d65bedbd74cc733dd86dafc9cbfb9b727c3267aef63a71a07247cde9b163c68fddfeb9096dcd7f554d36d0b2de078d8905e3825645ddbd6eb libsignal-auditable.patch
+f13389dd7a1360022d919fa1350210a92e5b832aa32b0ac278b63b1f41462c7807ac28c7867eecf71dac8f3ca699fd0fb0d87de8d1244c3e65cc4b78304e8ef4 signal-disable-updates.patch
+d50eb5724502df9ea4d795db8cfc27af767c25168d7db2af512e615be7cc2ca290210a9ae78e1abb153c0198677e858ad3d74926c958099d0319295e7d9e7f1d signal-update-links.patch
+646d303fe58cae3f0896ae0275a66695b902fae6ddde7c568cc9798157dee9f45ceff907bc951fadc4c511d512a73d114b4e4f7c8914e2311c63929d29e1621a signal-show-window-please.patch
+ab51b8fdcda1d8811213d2c5d8cb5d8457b478a02e23ce40f36b38ec56d45a3bd7a2d184720c27046f98a27771551cfad93c1290fe93856cc02695d318b33e47 ringrtc-webrtc-renamed.patch
+9d92389637cdda83a0a7039fa6c52516d7bc491d0b1e42d5374b9d1f4fa7b9c930642f2dca896da17a2dc3344fa1bb97434c8dddd0539a4fedfd0dec809fc875 webrtc-shared-like-my-wife.patch
+e07ae8544988d402aaf0fbd95ea36a64c94c59566c561132578aa6dcf8ff11a34058530e64dc204e5cadc2482f1401e74b32384a144e5e08017c663d0cf7c2fc webrtc-compiler.patch
+88515d8b8cc82355c9f9b0f44fac83b7ff149b13e9fb102fd46036ec5234cfb2385fa5ad58a0520ee604b93dc4ddd6ae18a7005978ef207841645724ef7a9749 webrtc-gcc13.patch
+87534e7b5ad7365509eab75629e6bd1a9ed61ee92f7e358405a0abaf0df57de14623fb3894eb082f8785422e5c087e1c50f9e2e5cafbb2529591fd7bf447f7f5 signal-desktop
+"
diff --git a/testing/signal-desktop/bettersqlite-use-system-sqlcipher.patch b/testing/signal-desktop/bettersqlite-use-system-sqlcipher.patch
new file mode 100644
index 00000000000..f0dfe0db735
--- /dev/null
+++ b/testing/signal-desktop/bettersqlite-use-system-sqlcipher.patch
@@ -0,0 +1,56 @@
+--- 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",
diff --git a/testing/signal-desktop/libsignal-auditable.patch b/testing/signal-desktop/libsignal-auditable.patch
new file mode 100644
index 00000000000..bdf59ab0a1b
--- /dev/null
+++ b/testing/signal-desktop/libsignal-auditable.patch
@@ -0,0 +1,11 @@
+--- ./node/build_node_bridge.py.orig
++++ ./node/build_node_bridge.py
+@@ -63,7 +63,7 @@
+
+ out_dir = options.out_dir.strip('"') or os.path.join('build', configuration_name)
+
+- cmdline = ['cargo', 'build', '--target', cargo_target, '-p', 'libsignal-node', '--features', 'testing-fns']
++ cmdline = ['cargo', 'auditable', 'build', '--target', cargo_target, '-p', 'libsignal-node', '--features', 'testing-fns']
+ if configuration_name == 'Release':
+ cmdline.append('--release')
+ print("Running '%s'" % (' '.join(cmdline)))
diff --git a/testing/signal-desktop/ringrtc-webrtc-renamed.patch b/testing/signal-desktop/ringrtc-webrtc-renamed.patch
new file mode 100644
index 00000000000..2d2a61af3c2
--- /dev/null
+++ b/testing/signal-desktop/ringrtc-webrtc-renamed.patch
@@ -0,0 +1,21 @@
+--- ./src/rust/build.rs.orig
++++ ./src/rust/build.rs
+@@ -41,15 +41,15 @@
+ 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!");
+ }
+
+- println!("cargo:rustc-link-lib=webrtc");
++ println!("cargo:rustc-link-lib=dylib=signaldeswebrtc");
+
+ if cfg!(target_os = "macos") {
+ println!("cargo:rustc-link-lib=dylib=c++");
diff --git a/testing/signal-desktop/signal-desktop b/testing/signal-desktop/signal-desktop
new file mode 100755
index 00000000000..370469ce5e3
--- /dev/null
+++ b/testing/signal-desktop/signal-desktop
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+# app chooses config (including used endpoints) based on this
+export NODE_ENV=production
+
+exec electron /usr/lib/signal-desktop/app.asar
diff --git a/testing/signal-desktop/signal-disable-updates.patch b/testing/signal-desktop/signal-disable-updates.patch
new file mode 100644
index 00000000000..1e38199c001
--- /dev/null
+++ b/testing/signal-desktop/signal-disable-updates.patch
@@ -0,0 +1,9 @@
+--- a/config/production.json
++++ b/config/production.json
+@@ -15,5 +15,5 @@
+ "serverPublicParams": "AMhf5ywVwITZMsff/eCyudZx9JDmkkkbV6PInzG4p8x3VqVJSFiMvnvlEKWuRob/1eaIetR31IYeAbm0NdOuHH8Qi+Rexi1wLlpzIo1gstHWBfZzy1+qHRV5A4TqPp15YzBPm0WSggW6PbSn+F4lf57VCnHF7p8SvzAA2ZZJPYJURt8X7bbg+H3i+PEjH9DXItNEqs2sNcug37xZQDLm7X36nOoGPs54XsEGzPdEV+itQNGUFEjY6X9Uv+Acuks7NpyGvCoKxGwgKgE5XyJ+nNKlyHHOLb6N1NuHyBrZrgtY/JYJHRooo5CEqYKBqdFnmbTVGEkCvJKxLnjwKWf+fEPoWeQFj5ObDjcKMZf2Jm2Ae69x+ikU5gBXsRmoF94GXTLfN0/vLt98KDPnxwAQL9j5V1jGOY8jQl6MLxEs56cwXN0dqCnImzVH3TZT1cJ8SW1BRX6qIVxEzjsSGx3yxF3suAilPMqGRp4ffyopjMD1JXiKR2RwLKzizUe5e8XyGOy9fplzhw3jVzTRyUZTRSZKkMLWcQ/gv0E4aONNqs4P+NameAZYOD12qRkxosQQP5uux6B2nRyZ7sAV54DgFyLiRcq1FvwKw2EPQdk4HDoePrO/RNUbyNddnM/mMgj4FW65xCoT1LmjrIjsv/Ggdlx46ueczhMgtBunx1/w8k8V+l8LVZ8gAT6wkU5J+DPQalQguMg12Jzug3q4TbdHiGCmD9EunCwOmsLuLJkz6EcSYXtrlDEnAM+hicw7iergYLLlMXpfTdGxJCWJmP4zqUFeTTmsmhsjGBt7NiEB/9pFFEB3pSbf4iiUukw63Eo8Aqnf4iwob6X1QviCWuc8t0I=",
+ "serverTrustRoot": "BXu6QIKVz5MA8gstzfOgRQGqyLqOwNKHL6INkv3IHWMF",
+ "genericServerPublicParams": "AByD873dTilmOSG0TjKrvpeaKEsUmIO8Vx9BeMmftwUs9v7ikPwM8P3OHyT0+X3EUMZrSe9VUp26Wai51Q9I8mdk0hX/yo7CeFGJyzoOqn8e/i4Ygbn5HoAyXJx5eXfIbqpc0bIxzju4H/HOQeOpt6h742qii5u/cbwOhFZCsMIbElZTaeU+BWMBQiZHIGHT5IE0qCordQKZ5iPZom0HeFa8Yq0ShuEyAl0WINBiY6xE3H/9WnvzXBbMuuk//eRxXgzO8ieCeK8FwQNxbfXqZm6Ro1cMhCOF3u7xoX83QhpN",
+- "updatesEnabled": true
++ "updatesEnabled": false
+ }
diff --git a/testing/signal-desktop/signal-show-window-please.patch b/testing/signal-desktop/signal-show-window-please.patch
new file mode 100644
index 00000000000..39c8381641b
--- /dev/null
+++ b/testing/signal-desktop/signal-show-window-please.patch
@@ -0,0 +1,11 @@
+--- ./app/main.ts.orig
++++ ./app/main.ts
+@@ -721,7 +721,7 @@
+ const titleBarOverlay = await getTitleBarOverlay();
+
+ const windowOptions: Electron.BrowserWindowConstructorOptions = {
+- show: false,
++ show: true,
+ width: DEFAULT_WIDTH,
+ height: DEFAULT_HEIGHT,
+ minWidth: MIN_WIDTH,
diff --git a/testing/signal-desktop/signal-update-links.patch b/testing/signal-desktop/signal-update-links.patch
new file mode 100644
index 00000000000..39ec819e635
--- /dev/null
+++ b/testing/signal-desktop/signal-update-links.patch
@@ -0,0 +1,25 @@
+--- ./ts/components/DialogExpiredBuild.tsx.orig
++++ ./ts/components/DialogExpiredBuild.tsx
+@@ -23,9 +23,9 @@
+ containerWidthBreakpoint={containerWidthBreakpoint}
+ type="error"
+ onClick={() => {
+- openLinkInWebBrowser('https://signal.org/download/');
++ openLinkInWebBrowser('https://pkgs.alpinelinux.org/packages?name=signal-desktop');
+ }}
+- clickLabel={i18n('icu:upgrade')}
++ clickLabel={<code>apk upgrade signal-desktop</code>}
+ hasAction
+ >
+ {i18n('icu:expiredWarning')}{' '}
+--- ./ts/types/support.ts.orig
++++ ./ts/types/support.ts
+@@ -1,7 +1,7 @@
+ // Copyright 2023 Signal Messenger, LLC
+ // SPDX-License-Identifier: AGPL-3.0-only
+
+-export const PRODUCTION_DOWNLOAD_URL = 'https://signal.org/download/';
++export const PRODUCTION_DOWNLOAD_URL = 'https://pkgs.alpinelinux.org/packages?name=signal-desktop';
+ export const BETA_DOWNLOAD_URL = 'https://support.signal.org/beta';
+ export const UNSUPPORTED_OS_URL =
+ 'https://support.signal.org/hc/articles/5109141421850';
diff --git a/testing/signal-desktop/webrtc-compiler.patch b/testing/signal-desktop/webrtc-compiler.patch
new file mode 100644
index 00000000000..e81b89cde33
--- /dev/null
+++ b/testing/signal-desktop/webrtc-compiler.patch
@@ -0,0 +1,40 @@
+--- ./build/config/compiler/BUILD.gn.orig
++++ ./build/config/compiler/BUILD.gn
+@@ -624,14 +624,14 @@
+ if (default_toolchain != "//build/toolchain/cros:target" &&
+ !llvm_android_mainline) {
+ cflags += [
+- "-mllvm",
+- "-split-threshold-for-reg-with-hint=0",
++ #"-mllvm",
++ #"-split-threshold-for-reg-with-hint=0",
+ ]
+ if (use_thin_lto && is_a_target_toolchain) {
+ if (is_win) {
+ ldflags += [ "-mllvm:-split-threshold-for-reg-with-hint=0" ]
+ } else {
+- ldflags += [ "-Wl,-mllvm,-split-threshold-for-reg-with-hint=0" ]
++ #ldflags += [ "-Wl,-mllvm,-split-threshold-for-reg-with-hint=0" ]
+ }
+ }
+ }
+@@ -805,7 +805,7 @@
+
+ # We only use one version of LLVM within a build so there's no need to
+ # upgrade debug info, which can be expensive since it runs the verifier.
+- ldflags += [ "-Wl,-mllvm,-disable-auto-upgrade-debug-info" ]
++ #ldflags += [ "-Wl,-mllvm,-disable-auto-upgrade-debug-info" ]
+ }
+
+ # TODO(https://crbug.com/1211155): investigate why this isn't effective on
+@@ -1191,8 +1191,8 @@
+ } else if (current_cpu == "arm64") {
+ if (is_clang && !is_android && !is_nacl && !is_fuchsia &&
+ !(is_chromeos_lacros && is_chromeos_device)) {
+- cflags += [ "--target=aarch64-linux-gnu" ]
+- ldflags += [ "--target=aarch64-linux-gnu" ]
++ cflags += [ "--target=aarch64-alpine-linux-musl" ]
++ ldflags += [ "--target=aarch64-alpine-linux-musl" ]
+ }
+ } else if (current_cpu == "mipsel" && !is_nacl) {
+ ldflags += [ "-Wl,--hash-style=sysv" ]
diff --git a/testing/signal-desktop/webrtc-gcc13.patch b/testing/signal-desktop/webrtc-gcc13.patch
new file mode 100644
index 00000000000..f27bc56a45c
--- /dev/null
+++ b/testing/signal-desktop/webrtc-gcc13.patch
@@ -0,0 +1,20 @@
+--- ./rtc_base/system/file_wrapper.h.orig
++++ ./rtc_base/system/file_wrapper.h
+@@ -13,6 +13,7 @@
+
+ #include <stddef.h>
+ #include <stdio.h>
++#include <stdint.h>
+
+ #include <string>
+
+--- ./modules/audio_coding/neteq/reorder_optimizer.cc.orig
++++ ./modules/audio_coding/neteq/reorder_optimizer.cc
+@@ -11,6 +11,7 @@
+ #include "modules/audio_coding/neteq/reorder_optimizer.h"
+
+ #include <algorithm>
++#include <cstdint>
+ #include <limits>
+ #include <vector>
+
diff --git a/testing/signal-desktop/webrtc-shared-like-my-wife.patch b/testing/signal-desktop/webrtc-shared-like-my-wife.patch
new file mode 100644
index 00000000000..bd7115af746
--- /dev/null
+++ b/testing/signal-desktop/webrtc-shared-like-my-wife.patch
@@ -0,0 +1,28 @@
+--- ./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 = []
+
diff --git a/testing/sigrok-cli/APKBUILD b/testing/sigrok-cli/APKBUILD
index 98435138ffd..646e90bc989 100644
--- a/testing/sigrok-cli/APKBUILD
+++ b/testing/sigrok-cli/APKBUILD
@@ -1,6 +1,6 @@
# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
pkgname=sigrok-cli
-pkgver=0.7.1
+pkgver=0.7.2
pkgrel=0
pkgdesc="A command-line frontend for sigrok"
url="https://sigrok.org/wiki/Sigrok-cli"
@@ -23,4 +23,6 @@ package() {
make DESTDIR="$pkgdir" install
}
-sha512sums="a56d9439efca74f8362ed225d8fa92adfaee053470b166629ad2d8f3ebf5bea05a37782750c9321aabd3b47e634734fa5e5b0cc5353bf49dd1629cdcdb98aef5 sigrok-cli-0.7.1.tar.gz"
+sha512sums="
+5862aa11a586ebb3acf9bffd1d2686cb5b3c3622b436080e05e2fc826a4814cf4746f128c01764f8dc664c5fc1a1e8c6ef66e548770278cc6ea99353d2173143 sigrok-cli-0.7.2.tar.gz
+"
diff --git a/testing/siji-ng/APKBUILD b/testing/siji-ng/APKBUILD
new file mode 100644
index 00000000000..5cbad25c76a
--- /dev/null
+++ b/testing/siji-ng/APKBUILD
@@ -0,0 +1,24 @@
+# Contributor: Maxim Karasev <begs@disroot.org>
+# Maintainer: Maxim Karasev <begs@disroot.org>
+pkgname=siji-ng
+pkgver=1.2.1
+pkgrel=0
+pkgdesc="bitmap iconic font"
+url="https://github.com/begss/siji-ng"
+arch="noarch"
+license="GPL-2.0-or-later"
+makedepends="python3 bdftopcf"
+source="https://github.com/begss/siji-ng/archive/v$pkgver/siji-ng-$pkgver.tar.gz"
+options="!check" # no tests
+
+build() {
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" PREFIX=/usr install
+}
+
+sha512sums="
+e7ca56410fa741afd9a36f016a634b94159b48890e037cc2c54b3c207776a9557a9e84fe284572f50ce16b9fdadd5f4b932cad49be97500a605869e1b00a364b siji-ng-1.2.1.tar.gz
+"
diff --git a/testing/silc-client/APKBUILD b/testing/silc-client/APKBUILD
index 49a489f45da..9a8c9e3aa33 100644
--- a/testing/silc-client/APKBUILD
+++ b/testing/silc-client/APKBUILD
@@ -1,24 +1,29 @@
# Contributor: Johannes Matheis <jomat+alpinebuild@jmt.gr>
-# Maintainer: Johannes Matheis <jomat+alpinebuild@jmt.gr>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=silc-client
pkgver=1.1.11
-pkgrel=12
+pkgrel=16
pkgdesc="Secure Internet Live Conferencing - client"
url="http://silcnet.org/"
arch="all"
license="GPL-2.0-only"
-makedepends="file glib-dev openssl-dev perl-dev ncurses-dev"
+makedepends="file glib-dev openssl-dev>3 perl-dev ncurses-dev"
subpackages="$pkgname-doc"
-source="https://downloads.sourceforge.net/project/silc/silc/client/sources/silc-client-$pkgver.tar.gz"
+source="https://downloads.sourceforge.net/project/silc/silc/client/sources/silc-client-$pkgver.tar.gz
+ format-security.patch
+ "
prepare() {
default_prepare
update_config_guess
+ update_config_sub
}
build() {
./configure \
+ --host=$CHOST \
+ --build=$CBUILD \
--prefix=/usr \
--sysconfdir=/etc
make
@@ -29,9 +34,11 @@ check() {
}
package() {
- make DESTDIR=$pkgdir install
- rm $pkgdir/usr/lib/perl5/core_perl/perllocal.pod
+ make DESTDIR="$pkgdir" install
+ rm "$pkgdir"/usr/lib/perl5/core_perl/perllocal.pod
}
-
-sha512sums="185cd687a155fbbfbb65877438c2ad099d6795451d443d4d826d47469d312fa9f82035999d1cdf80f24eac2df45a10e88ddf095dc5acda70a31c61a4abb1cdb2 silc-client-1.1.11.tar.gz"
+sha512sums="
+185cd687a155fbbfbb65877438c2ad099d6795451d443d4d826d47469d312fa9f82035999d1cdf80f24eac2df45a10e88ddf095dc5acda70a31c61a4abb1cdb2 silc-client-1.1.11.tar.gz
+b4fee252d1bbd8ade5f89f16db95b156749b7d23ae730f9385e9ed11f92e2b38ad36d8a8e8e55aa87a65ac8a578c0d789f96d775bccc4037d8155ece892153ac format-security.patch
+"
diff --git a/testing/silc-client/format-security.patch b/testing/silc-client/format-security.patch
new file mode 100644
index 00000000000..c3a3b4ff611
--- /dev/null
+++ b/testing/silc-client/format-security.patch
@@ -0,0 +1,22 @@
+diff --git a/apps/irssi/src/core/network.c b/apps/irssi/src/core/network.c
+index d7c1017..5954d1f 100644
+--- a/apps/irssi/src/core/network.c
++++ b/apps/irssi/src/core/network.c
+@@ -356,7 +356,7 @@ int net_receive(GIOChannel *handle, char *buf, int len)
+
+ status = g_io_channel_read_chars(handle, buf, len, &ret, &err);
+ if (err != NULL) {
+- g_warning(err->message);
++ g_warning("%s", err->message);
+ g_error_free(err);
+ }
+ if (status == G_IO_STATUS_ERROR || status == G_IO_STATUS_EOF)
+@@ -377,7 +377,7 @@ int net_transmit(GIOChannel *handle, const char *data, int len)
+
+ status = g_io_channel_write_chars(handle, (char *) data, len, &ret, &err);
+ if (err != NULL) {
+- g_warning(err->message);
++ g_warning("%s", err->message);
+ g_error_free(err);
+ }
+ if (status == G_IO_STATUS_ERROR)
diff --git a/testing/simavr/APKBUILD b/testing/simavr/APKBUILD
index 06bb0509f13..59c2368e7c3 100644
--- a/testing/simavr/APKBUILD
+++ b/testing/simavr/APKBUILD
@@ -2,10 +2,10 @@
# Maintainer: Milan P. Stanić <mps@arvanta.net>
pkgname=simavr
pkgver=1.7
-pkgrel=0
+pkgrel=1
pkgdesc="lean, mean Atmel AVR simulator "
url="https://github.com/buserror/simavr"
-arch="all"
+arch="aarch64 ppc64le x86_64" # avr-libs -> gcc-avr -> binutils-avr
license="GPL-3.0-or-later"
options="!check" # tests fails
makedepends="avr-libc freeglut-dev elfutils-dev bash"
diff --git a/testing/simdjson/APKBUILD b/testing/simdjson/APKBUILD
deleted file mode 100644
index ca0266cc916..00000000000
--- a/testing/simdjson/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Contributor: Grigory Kirillov <txgk@bk.ru>
-# Maintainer: Grigory Kirillov <txgk@bk.ru>
-pkgname=simdjson
-pkgver=2.0.1
-pkgrel=0
-pkgdesc="Parsing gigabytes of JSON per second"
-url="https://simdjson.org"
-arch="all"
-license="Apache-2.0"
-# tests take a very long time to compile and require downloading other JSON parsers
-options="!check"
-makedepends="cmake samurai"
-subpackages="$pkgname-static $pkgname-dev"
-source="https://github.com/simdjson/simdjson/archive/v$pkgver/simdjson-$pkgver.tar.gz"
-
-build() {
- cmake -B builddir -G Ninja \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_BUILD_TYPE=Release \
- -DBUILD_SHARED_LIBS=ON
- cmake -B builddir-static -G Ninja \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_BUILD_TYPE=Release
- cmake --build builddir
- cmake --build builddir-static
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install builddir
- DESTDIR="$pkgdir" cmake --install builddir-static
-}
-
-sha512sums="
-09c72669fbd73e92e54f4c6e21e59533dae60db655de087264be4f0a6dd305e63961ca55973d47081a4310c2bc1afa7304d1528cae65fe5b237d659604c7d716 simdjson-2.0.1.tar.gz
-"
diff --git a/testing/simgear/APKBUILD b/testing/simgear/APKBUILD
index 36b751b40de..f530a7bc8bc 100644
--- a/testing/simgear/APKBUILD
+++ b/testing/simgear/APKBUILD
@@ -1,8 +1,8 @@
# Maintainer: Leonardo Arena <rnalrd@alpinelinux.org>
pkgname=simgear
-pkgver=2020.3.12
+pkgver=2020.3.19
_pkgver=${pkgver%.*}
-pkgrel=1
+pkgrel=0
pkgdesc="Sim library for FlightGear"
options="!check" # Accepts boost only up to 1.71.0
url="https://github.com/FlightGear/simgear"
@@ -17,11 +17,13 @@ makedepends="
mesa-dev
openal-soft-dev
openscenegraph-dev
+ samurai
zlib-dev
"
subpackages="$pkgname-dev"
source="
https://downloads.sourceforge.net/project/flightgear/release-$_pkgver/simgear-$pkgver.tar.bz2
+ gcc12.patch
musl-strerror_r.patch
musl-u_types.patch
"
@@ -30,22 +32,23 @@ build() {
# use system expat
rm -rf simgear/xml/*.h simgear/xml/*.c
- cmake \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
-DSYSTEM_EXPAT=ON \
-DENABLE_TESTS=false \
- .
- make
+
+ cmake --build build
}
package() {
- make DESTDIR="$pkgdir" install
+ DESTDIR="$pkgdir" cmake --install build
}
sha512sums="
-2292c5c43b485fdf4b814b25eae8caa2ed16e043a159328aa5e35a27f9a4fd250219e8b506da1361916bd1d314bb857d3bd1343b1b6b34890bf06c63705c8dbc simgear-2020.3.12.tar.bz2
+b5c2acb9b843c48e573764c1474bc8723167376546d2fe01246ea936d348abf7e26c8778037680dc76fad5e514209ccce03f8c49cdd90ff0fb44f86759f9ec64 simgear-2020.3.19.tar.bz2
+aea0bbc11b221d73706891d7ac9a79c4c359f4e7184752194737ede7f5938c65f79cd9d7b6b20ce236867761c03a5c883d468d698664f7e4583652ec448a8b8c gcc12.patch
0dac20e58c663227336e39b3c3c75fbf7e47d60b5a16dc30f0d7f8c9bbc3fec901b5f4e3511e28c682fad5ff925df0f0215604295989d1eb99e4155fd3dde685 musl-strerror_r.patch
a34b8ba88fcc3d06f5695484d20fe6c40b8c623cafc81642fd123d62955cf59e12ac10a335a541c5e4353997fa9c5ac00b265c6821a7810c936f456a72b5e1aa musl-u_types.patch
"
diff --git a/testing/simgear/gcc12.patch b/testing/simgear/gcc12.patch
new file mode 100644
index 00000000000..400c6351681
--- /dev/null
+++ b/testing/simgear/gcc12.patch
@@ -0,0 +1,12 @@
+diff --git a/simgear/scene/viewer/Compositor.hxx b/simgear/scene/viewer/Compositor.hxx
+index f7e538c..74465af 100644
+--- a/simgear/scene/viewer/Compositor.hxx
++++ b/simgear/scene/viewer/Compositor.hxx
+@@ -17,6 +17,7 @@
+ #ifndef SG_COMPOSITOR_HXX
+ #define SG_COMPOSITOR_HXX
+
++#include <array>
+ #include <unordered_map>
+ #include <vector>
+
diff --git a/testing/simh/APKBUILD b/testing/simh/APKBUILD
index 48435ed2b3e..782ce886ffc 100644
--- a/testing/simh/APKBUILD
+++ b/testing/simh/APKBUILD
@@ -3,7 +3,7 @@
pkgname=simh
pkgver=3.11.1
_pkgver=3.11-1
-pkgrel=0
+pkgrel=1
pkgdesc="simulator for historical computers"
url="http://simh.trailing-edge.com"
arch="all"
diff --git a/testing/simpleble/APKBUILD b/testing/simpleble/APKBUILD
new file mode 100644
index 00000000000..af62e3857e7
--- /dev/null
+++ b/testing/simpleble/APKBUILD
@@ -0,0 +1,66 @@
+# Maintainer:
+pkgname=simpleble
+pkgver=0.6.1
+pkgrel=1
+pkgdesc="Cross-platform library for bluetooth low-energy"
+url="https://github.com/OpenBluetoothToolbox/SimpleBLE"
+arch="all"
+license="MIT"
+makedepends="
+ cmake
+ dbus-dev
+ fmt-dev
+ samurai
+ "
+subpackages="
+ $pkgname-dev
+ libsimpleble:lib
+ libsimpleble-c:lib_c
+ libsimplebluez:lib_bluez
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/OpenBluetoothToolbox/SimpleBLE/archive/refs/tags/v$pkgver.tar.gz
+ bluez.patch
+ fmt.patch
+ "
+builddir="$srcdir/SimpleBLE-$pkgver"
+options="!check" # tests require plain
+
+build() {
+ cmake -B build-ble -G Ninja -S simpleble \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCMAKE_SKIP_INSTALL_RPATH=ON \
+ -DBUILD_SHARED_LIBS=ON \
+ -DLIBFMT_VENDORIZE=OFF
+ cmake --build build-ble
+ cmake -B build-bluez -G Ninja -S simplebluez \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCMAKE_SKIP_INSTALL_RPATH=ON \
+ -DBUILD_SHARED_LIBS=ON \
+ -DLIBFMT_VENDORIZE=OFF
+ cmake --build build-bluez
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build-ble
+ DESTDIR="$pkgdir" cmake --install build-bluez
+}
+
+lib() {
+ amove usr/lib/libsimpleble.so.*
+}
+
+lib_c() {
+ amove usr/lib/libsimpleble-c.so.*
+}
+
+lib_bluez() {
+ amove usr/lib/libsimplebluez.so.*
+}
+
+sha512sums="
+bf9b166340df6620fcafe7e453795bc314769aed49c5284b425ea90b064a9d242432625f544ea6f79441e36c1b9ed5909dfc80d1e69c102ce27589cc09f02417 simpleble-0.6.1.tar.gz
+3bf34d51bb267077af537eaf6fec54c9049c0a3f85e4724afad76c7ba3d0ed3be73dcc96bc7d69ddcdfb40a823bd236970880e0c4439b9e70283af53e8cbc085 bluez.patch
+b1520b22a7fa98e552b67b87787cbceaf0f04122b36001b0566159206b724f7ff947869f4cc06e4e4831e6286c468bf77eb5c0eefae99818d58baf87b6c944f7 fmt.patch
+"
diff --git a/testing/simpleble/bluez.patch b/testing/simpleble/bluez.patch
new file mode 100644
index 00000000000..c72c2417393
--- /dev/null
+++ b/testing/simpleble/bluez.patch
@@ -0,0 +1,14 @@
+the bluez lib doesn't expose any symbols for some reason, so manually do it for the used one
+diff --git a/simplebluez/src/Device.cpp b/simplebluez/src/Device.cpp
+index e03957c..c62817b 100644
+--- a/simplebluez/src/Device.cpp
++++ b/simplebluez/src/Device.cpp
+@@ -53,7 +53,7 @@ std::shared_ptr<Characteristic> Device::get_characteristic(const std::string& se
+ return service->get_characteristic(characteristic_uuid);
+ }
+
+-void Device::pair() { device1()->Pair(); }
++__attribute__ ((visibility ("default"))) void Device::pair() { device1()->Pair(); }
+
+ void Device::cancel_pairing() { device1()->CancelPairing(); }
+
diff --git a/testing/simpleble/fmt.patch b/testing/simpleble/fmt.patch
new file mode 100644
index 00000000000..cc4d2cb20b1
--- /dev/null
+++ b/testing/simpleble/fmt.patch
@@ -0,0 +1,24 @@
+diff --git a/simpleble/CMakeLists.txt b/simpleble/CMakeLists.txt
+index d983902..5bd0a44 100644
+--- a/simpleble/CMakeLists.txt
++++ b/simpleble/CMakeLists.txt
+@@ -21,7 +21,6 @@ option(SIMPLEBLE_PLAIN "Use plain version of SimpleBLE" OFF)
+ if(NOT TARGET fmt::fmt-header-only)
+ option(LIBFMT_VENDORIZE "Enable vendorized libfmt" ON)
+ find_package(fmt REQUIRED)
+- set_target_properties(fmt PROPERTIES EXCLUDE_FROM_ALL TRUE)
+ endif()
+
+ if(SIMPLEBLE_TEST)
+diff --git a/simplebluez/CMakeLists.txt b/simplebluez/CMakeLists.txt
+index e95d1eb..896ddb9 100644
+--- a/simplebluez/CMakeLists.txt
++++ b/simplebluez/CMakeLists.txt
+@@ -16,7 +16,6 @@ include(${CMAKE_CURRENT_SOURCE_DIR}/../cmake/epilogue.cmake)
+ option(LIBFMT_VENDORIZE "Enable vendorized libfmt" ON)
+
+ find_package(fmt REQUIRED)
+-set_target_properties(fmt PROPERTIES EXCLUDE_FROM_ALL TRUE)
+
+ find_package(DBus1 REQUIRED)
+
diff --git a/testing/simpleiot/APKBUILD b/testing/simpleiot/APKBUILD
new file mode 100644
index 00000000000..f71864f1716
--- /dev/null
+++ b/testing/simpleiot/APKBUILD
@@ -0,0 +1,35 @@
+# Contributor: Khem Raj <raj.khem@gmail.com>
+# Maintainer: Khem Raj <raj.khem@gmail.com>
+pkgname=simpleiot
+pkgver=0.14.3
+pkgrel=2
+pkgdesc="Simple IoT cloud/edge application/framework"
+url="https://github.com/simpleiot/simpleiot"
+arch="x86_64"
+license="Apache-2.0"
+makedepends="go npm"
+source="$pkgname-$pkgver.tar.gz::https://github.com/simpleiot/simpleiot/archive/refs/tags/v$pkgver.tar.gz
+ dont-run-golangci.patch
+ "
+options="net" # for downloading Go modules
+
+build() {
+ . "$srcdir"/$pkgname-$pkgver/envsetup.sh
+ siot_setup
+ siot_build
+}
+
+check() {
+ sed -i -e "s/-race//" "$srcdir"/$pkgname-$pkgver/envsetup.sh
+ . "$srcdir"/$pkgname-$pkgver/envsetup.sh
+ siot_test
+}
+
+package() {
+ install -Dm755 siot -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+50cd3895fd602594b6694cb8c285c0b1b634ed4d8be8d03c20ac0d62610df236400b78e744cf59a1c8550cbb2c1754eac1c8df0bb44c84a169d40f325f59be68 simpleiot-0.14.3.tar.gz
+4cedea658623f90e565e1a5a8d4f3b979ec5cf618bd0b4421df4988d319ad4e9335231b842de09f574b31dddab69688d06f4f571a40ce990593389db8a33d8aa dont-run-golangci.patch
+"
diff --git a/testing/simpleiot/dont-run-golangci.patch b/testing/simpleiot/dont-run-golangci.patch
new file mode 100644
index 00000000000..b284782e262
--- /dev/null
+++ b/testing/simpleiot/dont-run-golangci.patch
@@ -0,0 +1,10 @@
+--- a/envsetup.sh
++++ b/envsetup.sh
+@@ -178,7 +178,6 @@
+ siot_build_frontend || return 1
+ siot_test_frontend || return 1
+ go test -p=1 -race "$@" ./... || return 1
+- golangci-lint run || return 1
+ return 0
+ }
+
diff --git a/testing/simplescreenrecorder/APKBUILD b/testing/simplescreenrecorder/APKBUILD
deleted file mode 100644
index 62700d031d9..00000000000
--- a/testing/simplescreenrecorder/APKBUILD
+++ /dev/null
@@ -1,54 +0,0 @@
-# Contributor: Díaz Urbaneja Diego <sodomon2@gmail.com>
-# Maintainer: Díaz Urbaneja Diego <sodomon2@gmail.com>
-pkgname=simplescreenrecorder
-pkgver=0.4.4
-pkgrel=0
-pkgdesc="Screen recorder for Linux"
-url="http://www.maartenbaert.be/simplescreenrecorder/"
-arch="x86_64 x86" #disabled for the other architectures due to compiling problems
-license="GPL-3.0-only"
-makedepends="
- alsa-lib-dev
- cmake
- ffmpeg-dev
- glu-dev
- jack-dev
- libx11-dev
- libxext-dev
- libxfixes-dev
- libxi-dev
- libxinerama-dev
- make
- mesa-dev
- pkgconfig
- pulseaudio-dev
- qt5-qtbase-dev
- qt5-qttools-dev
- qt5-qtx11extras-dev
- samurai
- v4l-utils-dev
-"
-subpackages="$pkgname-doc"
-options="!check" # make check not implemented
-source="$pkgname-$pkgver.tar.gz::https://github.com/MaartenBaert/ssr/archive/$pkgver.tar.gz
- ffmpeg5.patch
- "
-builddir="$srcdir/ssr-$pkgver"
-
-build() {
- cmake -G Ninja -B build \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_BUILD_TYPE=MinSizeRel \
- -DWITH_QT5=on \
- -DCMAKE_INSTALL_LIBDIR=lib
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-
-sha512sums="
-a90549a2709490482d70559073e505e669417a93abf16124b98c021e6d2bf08b91b53eb68e006df4f80fcee9fe4da2624bf8de979618953adb3f37eb1d471525 simplescreenrecorder-0.4.4.tar.gz
-5bba0ae2ff5932a2011c9fa7cff736a09409dc3b87e8e77ed7a7a2953e6c007e39d44649a176204e20277444dbab8c8f93e1e278069bf3e94d93b53c8cf1c1cf ffmpeg5.patch
-"
diff --git a/testing/simplescreenrecorder/ffmpeg5.patch b/testing/simplescreenrecorder/ffmpeg5.patch
deleted file mode 100644
index 01f89096ecf..00000000000
--- a/testing/simplescreenrecorder/ffmpeg5.patch
+++ /dev/null
@@ -1,239 +0,0 @@
-Patch-Source: https://github.com/MaartenBaert/ssr/pull/934
-From f4cbde38021d9330dc73d2e3dfa8a70da3ff5721 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Bernhard=20Rosenkr=C3=A4nzer?= <bero@lindev.ch>
-Date: Sun, 16 Jan 2022 02:40:04 +0100
-Subject: [PATCH] Fix build with ffmpeg 5.0
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Adapt to ffmpeg 5.0 requiring more const-ness for AVCodec.
-
-Signed-off-by: Bernhard Rosenkränzer <bero@lindev.ch>
----
- src/AV/Output/AudioEncoder.cpp | 6 +++---
- src/AV/Output/AudioEncoder.h | 4 ++--
- src/AV/Output/BaseEncoder.cpp | 4 ++--
- src/AV/Output/BaseEncoder.h | 4 ++--
- src/AV/Output/Muxer.cpp | 12 ++++++------
- src/AV/Output/Muxer.h | 4 ++--
- src/AV/Output/VideoEncoder.cpp | 6 +++---
- src/AV/Output/VideoEncoder.h | 4 ++--
- 8 files changed, 22 insertions(+), 22 deletions(-)
-
-diff --git a/src/AV/Output/AudioEncoder.cpp b/src/AV/Output/AudioEncoder.cpp
-index 34d015cf..cefc2e02 100644
---- a/src/AV/Output/AudioEncoder.cpp
-+++ b/src/AV/Output/AudioEncoder.cpp
-@@ -34,7 +34,7 @@ const std::vector<AudioEncoder::SampleFormatData> AudioEncoder::SUPPORTED_SAMPLE
-
- const unsigned int AudioEncoder::DEFAULT_FRAME_SAMPLES = 1024;
-
--AudioEncoder::AudioEncoder(Muxer* muxer, AVStream* stream, AVCodecContext *codec_context, AVCodec* codec, AVDictionary** options)
-+AudioEncoder::AudioEncoder(Muxer* muxer, AVStream* stream, AVCodecContext *codec_context, const AVCodec* codec, AVDictionary** options)
- : BaseEncoder(muxer, stream, codec_context, codec, options) {
-
- #if !SSR_USE_AVCODEC_ENCODE_AUDIO2
-@@ -77,7 +77,7 @@ unsigned int AudioEncoder::GetSampleRate() {
- }
-
- bool AudioEncoder::AVCodecIsSupported(const QString& codec_name) {
-- AVCodec *codec = avcodec_find_encoder_by_name(codec_name.toUtf8().constData());
-+ const AVCodec *codec = avcodec_find_encoder_by_name(codec_name.toUtf8().constData());
- if(codec == NULL)
- return false;
- if(!av_codec_is_encoder(codec))
-@@ -93,7 +93,7 @@ bool AudioEncoder::AVCodecIsSupported(const QString& codec_name) {
- return false;
- }
-
--void AudioEncoder::PrepareStream(AVStream* stream, AVCodecContext* codec_context, AVCodec* codec, AVDictionary** options, const std::vector<std::pair<QString, QString> >& codec_options,
-+void AudioEncoder::PrepareStream(AVStream* stream, AVCodecContext* codec_context, const AVCodec* codec, AVDictionary** options, const std::vector<std::pair<QString, QString> >& codec_options,
- unsigned int bit_rate, unsigned int channels, unsigned int sample_rate) {
-
- if(channels == 0) {
-diff --git a/src/AV/Output/AudioEncoder.h b/src/AV/Output/AudioEncoder.h
-index c93278cf..ae9c82ee 100644
---- a/src/AV/Output/AudioEncoder.h
-+++ b/src/AV/Output/AudioEncoder.h
-@@ -40,7 +40,7 @@ class AudioEncoder : public BaseEncoder {
- #endif
-
- public:
-- AudioEncoder(Muxer* muxer, AVStream* stream, AVCodecContext* codec_context, AVCodec* codec, AVDictionary** options);
-+ AudioEncoder(Muxer* muxer, AVStream* stream, AVCodecContext* codec_context, const AVCodec* codec, AVDictionary** options);
- ~AudioEncoder();
-
- // Returns the required frame size, i.e. the number of samples (for each channel).
-@@ -57,7 +57,7 @@ class AudioEncoder : public BaseEncoder {
-
- public:
- static bool AVCodecIsSupported(const QString& codec_name);
-- static void PrepareStream(AVStream* stream, AVCodecContext* codec_context, AVCodec* codec, AVDictionary** options, const std::vector<std::pair<QString, QString> >& codec_options,
-+ static void PrepareStream(AVStream* stream, AVCodecContext* codec_context, const AVCodec* codec, AVDictionary** options, const std::vector<std::pair<QString, QString> >& codec_options,
- unsigned int bit_rate, unsigned int channels, unsigned int sample_rate);
-
- private:
-diff --git a/src/AV/Output/BaseEncoder.cpp b/src/AV/Output/BaseEncoder.cpp
-index 7c01ef30..4780aafd 100644
---- a/src/AV/Output/BaseEncoder.cpp
-+++ b/src/AV/Output/BaseEncoder.cpp
-@@ -42,7 +42,7 @@ double ParseCodecOptionDouble(const QString& key, const QString& value, double m
- return clamp(value_double, min, max) * multiply;
- }
-
--BaseEncoder::BaseEncoder(Muxer* muxer, AVStream* stream, AVCodecContext* codec_context, AVCodec* codec, AVDictionary** options) {
-+BaseEncoder::BaseEncoder(Muxer* muxer, AVStream* stream, AVCodecContext* codec_context, const AVCodec* codec, AVDictionary** options) {
-
- m_muxer = muxer;
- m_stream = stream;
-@@ -157,7 +157,7 @@ void BaseEncoder::IncrementPacketCounter() {
- ++lock->m_total_packets;
- }
-
--void BaseEncoder::Init(AVCodec* codec, AVDictionary** options) {
-+void BaseEncoder::Init(const AVCodec* codec, AVDictionary** options) {
-
- // open codec
- if(avcodec_open2(m_codec_context, codec, options) < 0) {
-diff --git a/src/AV/Output/BaseEncoder.h b/src/AV/Output/BaseEncoder.h
-index 3d92f298..7f02bbd6 100644
---- a/src/AV/Output/BaseEncoder.h
-+++ b/src/AV/Output/BaseEncoder.h
-@@ -51,7 +51,7 @@ class BaseEncoder {
- std::atomic<bool> m_should_stop, m_should_finish, m_is_done, m_error_occurred;
-
- protected:
-- BaseEncoder(Muxer* muxer, AVStream* stream, AVCodecContext* codec_context, AVCodec* codec, AVDictionary** options);
-+ BaseEncoder(Muxer* muxer, AVStream* stream, AVCodecContext* codec_context, const AVCodec* codec, AVDictionary** options);
-
- public:
- virtual ~BaseEncoder(); // encoders will be deleted by Muxer, don't delete them yourself!
-@@ -117,7 +117,7 @@ class BaseEncoder {
- void IncrementPacketCounter();
-
- private:
-- void Init(AVCodec* codec, AVDictionary** options);
-+ void Init(const AVCodec* codec, AVDictionary** options);
- void Free();
-
- void EncoderThread();
-diff --git a/src/AV/Output/Muxer.cpp b/src/AV/Output/Muxer.cpp
-index ad583803..14650b03 100644
---- a/src/AV/Output/Muxer.cpp
-+++ b/src/AV/Output/Muxer.cpp
-@@ -87,7 +87,7 @@ Muxer::~Muxer() {
-
- VideoEncoder* Muxer::AddVideoEncoder(const QString& codec_name, const std::vector<std::pair<QString, QString> >& codec_options,
- unsigned int bit_rate, unsigned int width, unsigned int height, unsigned int frame_rate) {
-- AVCodec *codec = FindCodec(codec_name);
-+ const AVCodec *codec = FindCodec(codec_name);
- AVCodecContext *codec_context = NULL;
- AVStream *stream = AddStream(codec, &codec_context);
- VideoEncoder *encoder;
-@@ -111,7 +111,7 @@ VideoEncoder* Muxer::AddVideoEncoder(const QString& codec_name, const std::vecto
-
- AudioEncoder* Muxer::AddAudioEncoder(const QString& codec_name, const std::vector<std::pair<QString, QString> >& codec_options,
- unsigned int bit_rate, unsigned int channels, unsigned int sample_rate) {
-- AVCodec *codec = FindCodec(codec_name);
-+ const AVCodec *codec = FindCodec(codec_name);
- AVCodecContext *codec_context = NULL;
- AVStream *stream = AddStream(codec, &codec_context);
- AudioEncoder *encoder;
-@@ -194,7 +194,7 @@ unsigned int Muxer::GetQueuedPacketCount(unsigned int stream_index) {
- void Muxer::Init() {
-
- // get the format we want (this is just a pointer, we don't have to free this)
-- AVOutputFormat *format = av_guess_format(m_container_name.toUtf8().constData(), NULL, NULL);
-+ const AVOutputFormat *format = av_guess_format(m_container_name.toUtf8().constData(), NULL, NULL);
- if(format == NULL) {
- Logger::LogError("[Muxer::Init] " + Logger::tr("Error: Can't find chosen output format!"));
- throw LibavException();
-@@ -261,8 +261,8 @@ void Muxer::Free() {
- }
- }
-
--AVCodec* Muxer::FindCodec(const QString& codec_name) {
-- AVCodec *codec = avcodec_find_encoder_by_name(codec_name.toUtf8().constData());
-+const AVCodec* Muxer::FindCodec(const QString& codec_name) {
-+ const AVCodec *codec = avcodec_find_encoder_by_name(codec_name.toUtf8().constData());
- if(codec == NULL) {
- Logger::LogError("[Muxer::FindCodec] " + Logger::tr("Error: Can't find codec!"));
- throw LibavException();
-@@ -270,7 +270,7 @@ AVCodec* Muxer::FindCodec(const QString& codec_name) {
- return codec;
- }
-
--AVStream* Muxer::AddStream(AVCodec* codec, AVCodecContext** codec_context) {
-+AVStream* Muxer::AddStream(const AVCodec* codec, AVCodecContext** codec_context) {
- assert(!m_started);
- assert(m_format_context->nb_streams < MUXER_MAX_STREAMS);
-
-diff --git a/src/AV/Output/Muxer.h b/src/AV/Output/Muxer.h
-index d72347d6..b104bcb1 100644
---- a/src/AV/Output/Muxer.h
-+++ b/src/AV/Output/Muxer.h
-@@ -114,8 +114,8 @@ class Muxer {
- void Init();
- void Free();
-
-- AVCodec* FindCodec(const QString& codec_name);
-- AVStream* AddStream(AVCodec* codec, AVCodecContext** codec_context);
-+ const AVCodec* FindCodec(const QString& codec_name);
-+ AVStream* AddStream(const AVCodec* codec, AVCodecContext** codec_context);
-
- void MuxerThread();
-
-diff --git a/src/AV/Output/VideoEncoder.cpp b/src/AV/Output/VideoEncoder.cpp
-index 8087e8ed..fc8b5d11 100644
---- a/src/AV/Output/VideoEncoder.cpp
-+++ b/src/AV/Output/VideoEncoder.cpp
-@@ -34,7 +34,7 @@ const std::vector<VideoEncoder::PixelFormatData> VideoEncoder::SUPPORTED_PIXEL_F
- {"rgb", AV_PIX_FMT_RGB24, false},
- };
-
--VideoEncoder::VideoEncoder(Muxer* muxer, AVStream* stream, AVCodecContext* codec_context, AVCodec* codec, AVDictionary** options)
-+VideoEncoder::VideoEncoder(Muxer* muxer, AVStream* stream, AVCodecContext* codec_context, const AVCodec* codec, AVDictionary** options)
- : BaseEncoder(muxer, stream, codec_context, codec, options) {
-
- #if !SSR_USE_AVCODEC_ENCODE_VIDEO2
-@@ -95,7 +95,7 @@ unsigned int VideoEncoder::GetFrameRate() {
- }
-
- bool VideoEncoder::AVCodecIsSupported(const QString& codec_name) {
-- AVCodec *codec = avcodec_find_encoder_by_name(codec_name.toUtf8().constData());
-+ const AVCodec *codec = avcodec_find_encoder_by_name(codec_name.toUtf8().constData());
- if(codec == NULL)
- return false;
- if(!av_codec_is_encoder(codec))
-@@ -111,7 +111,7 @@ bool VideoEncoder::AVCodecIsSupported(const QString& codec_name) {
- return false;
- }
-
--void VideoEncoder::PrepareStream(AVStream* stream, AVCodecContext* codec_context, AVCodec* codec, AVDictionary** options, const std::vector<std::pair<QString, QString> >& codec_options,
-+void VideoEncoder::PrepareStream(AVStream* stream, AVCodecContext* codec_context, const AVCodec* codec, AVDictionary** options, const std::vector<std::pair<QString, QString> >& codec_options,
- unsigned int bit_rate, unsigned int width, unsigned int height, unsigned int frame_rate) {
-
- if(width == 0 || height == 0) {
-diff --git a/src/AV/Output/VideoEncoder.h b/src/AV/Output/VideoEncoder.h
-index cb7ca275..68d872ed 100644
---- a/src/AV/Output/VideoEncoder.h
-+++ b/src/AV/Output/VideoEncoder.h
-@@ -40,7 +40,7 @@ class VideoEncoder : public BaseEncoder {
- #endif
-
- public:
-- VideoEncoder(Muxer* muxer, AVStream* stream, AVCodecContext* codec_context, AVCodec* codec, AVDictionary** options);
-+ VideoEncoder(Muxer* muxer, AVStream* stream, AVCodecContext* codec_context, const AVCodec* codec, AVDictionary** options);
- ~VideoEncoder();
-
- // Returns the required pixel format.
-@@ -55,7 +55,7 @@ class VideoEncoder : public BaseEncoder {
-
- public:
- static bool AVCodecIsSupported(const QString& codec_name);
-- static void PrepareStream(AVStream* stream, AVCodecContext* codec_context, AVCodec* codec, AVDictionary** options, const std::vector<std::pair<QString, QString> >& codec_options,
-+ static void PrepareStream(AVStream* stream, AVCodecContext* codec_context, const AVCodec* codec, AVDictionary** options, const std::vector<std::pair<QString, QString> >& codec_options,
- unsigned int bit_rate, unsigned int width, unsigned int height, unsigned int frame_rate);
-
- private:
diff --git a/testing/simplesnap/0001-fix-simplesnap-line-2-dotlockfile-command-not-found.patch b/testing/simplesnap/0001-fix-simplesnap-line-2-dotlockfile-command-not-found.patch
deleted file mode 100644
index 2c2954ff7e9..00000000000
--- a/testing/simplesnap/0001-fix-simplesnap-line-2-dotlockfile-command-not-found.patch
+++ /dev/null
@@ -1,66 +0,0 @@
-From f477a6895512c77eef3637581ab36ad8319a0204 Mon Sep 17 00:00:00 2001
-From: Henrik Riomar <henrik.riomar@gmail.com>
-Date: Mon, 18 Jun 2018 19:15:54 +0200
-Subject: [PATCH] fix: simplesnap: line 2??: dotlockfile: command not found
-
-Closes: #12
----
- simplesnap | 28 +++++++++-------------------
- 1 file changed, 9 insertions(+), 19 deletions(-)
-
-diff --git a/simplesnap b/simplesnap
-index 6d60885..63fc0c2 100755
---- a/simplesnap
-+++ b/simplesnap
-@@ -149,15 +149,11 @@ done
- SSHCMD="${SSHCMD:-ssh}"
- WRAPCMD="${WRAPCMD:-simplesnapwrap}"
-
--DATE="gdate"
--gdate &> /dev/null || [ $? -eq 127 ] && DATE="date"
--SED="gsed"
--gsed &> /dev/null || [ $? -eq 127 ] && SED="sed"
--GREP="ggrep"
--ggrep &> /dev/null || [ $? -eq 127 ] && GREP="grep"
--HEAD="ghead"
--ghead -h &> /dev/null || [ $? -eq 127 ] && HEAD="head"
--
-+command -v gdate > /dev/null && DATE="gdate" || DATE="date"
-+command -v gsed > /dev/null && SED="gsed" || SED="sed"
-+command -v ggrep > /dev/null && GREP="ggrep" || GREP="grep"
-+command -v ghead > /dev/null && HEAD="ghead" || HEAD="head"
-+command -v dotlockfile > /dev/null && LOCKMETHOD="dotlockfile" || LOCKMETHOD="mkdir"
-
- # Validating
- [ -n "$SSHCMD" ] || syntaxerror "Invalid SSH command: $SSHCMD"
-@@ -244,23 +240,17 @@ fi
-
- LOCKFILE="${MOUNTPOINT}/${HOST}/.lock"
-
--if dotlockfile -r 0 -l -p "${LOCKFILE}"; then
-- LOCKMETHOD="dotlockfile"
-+if [ x"$LOCKMETHOD" = x"dotlockfile" ] && ${LOCKMETHOD} -r 0 -l -p "${LOCKFILE}" ; then
- logit "Lock obtained at ${LOCKFILE} with dotlockfile"
- trap "ECODE=$?; dotlockfile -u \"${LOCKFILE}\"; exit $ECODE" EXIT INT TERM
--else
-- RETVAL="$?"
-- if [ "$RETVAL" = "127" ]; then
-- LOCKMETHOD="mkdir"
-- mkdir "${LOCKFILE}" || exiterror "Could not obtain lock at ${LOCKFILE}; if $0 is not already running, rmdir that path."
-+elif [ x"$LOCKMETHOD" = x"mkdir" ]; then
-+ ${LOCKMETHOD} "${LOCKFILE}" || exiterror "Could not obtain lock at ${LOCKFILE}; if $0 is not already running, rmdir that path."
- logit "Lock obtained at ${LOCKFILE} with mkdir"
- trap "ECODE=$?; rmdir \"${LOCKFILE}\"" EXIT INT TERM
-- else
-+else
- exiterror "Could not obtain lock at ${LOCKFILE}; $0 likely already running."
-- fi
- fi
-
--
- reap () {
- DATASET="$1"
- # We always save the most recent.
---
-2.17.1
-
diff --git a/testing/simplesnap/0002-trap-do-not-define-ECODE-at-setup.patch b/testing/simplesnap/0002-trap-do-not-define-ECODE-at-setup.patch
deleted file mode 100644
index d15735afa77..00000000000
--- a/testing/simplesnap/0002-trap-do-not-define-ECODE-at-setup.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From cfa251c80c31ea9b3a2993ec204061cdd4c06ef4 Mon Sep 17 00:00:00 2001
-From: Henrik Riomar <henrik.riomar@gmail.com>
-Date: Mon, 18 Jun 2018 19:26:30 +0200
-Subject: [PATCH] trap: do not define ECODE at setup
-
-We need to delay defining ECODE until we call the trap
-
-Before this change (set -x output):
-+ trap 'ECODE=0; dotlockfile -u "/mypool2/simplesnap/storage01/.lock"; exit ' EXIT INT TERM
-
-After:
-+ trap 'ECODE=$?; dotlockfile -u /mypool2/simplesnap/storage01/.lock; exit $ECODE' EXIT INT TERM
----
- simplesnap | 5 +++--
- 1 file changed, 3 insertions(+), 2 deletions(-)
-
-diff --git a/simplesnap b/simplesnap
-index 63fc0c2..fb9c4d2 100755
---- a/simplesnap
-+++ b/simplesnap
-@@ -239,14 +239,15 @@ if [ ! -d "${MOUNTPOINT}/${HOST}" ]; then
- fi
-
- LOCKFILE="${MOUNTPOINT}/${HOST}/.lock"
-+printf -v EVAL_SAFE_LOCKFILE '%q' "$LOCKFILE"
-
- if [ x"$LOCKMETHOD" = x"dotlockfile" ] && ${LOCKMETHOD} -r 0 -l -p "${LOCKFILE}" ; then
- logit "Lock obtained at ${LOCKFILE} with dotlockfile"
-- trap "ECODE=$?; dotlockfile -u \"${LOCKFILE}\"; exit $ECODE" EXIT INT TERM
-+ trap 'ECODE=$?; dotlockfile -u '"${EVAL_SAFE_LOCKFILE}"'; exit $ECODE' EXIT INT TERM
- elif [ x"$LOCKMETHOD" = x"mkdir" ]; then
- ${LOCKMETHOD} "${LOCKFILE}" || exiterror "Could not obtain lock at ${LOCKFILE}; if $0 is not already running, rmdir that path."
- logit "Lock obtained at ${LOCKFILE} with mkdir"
-- trap "ECODE=$?; rmdir \"${LOCKFILE}\"" EXIT INT TERM
-+ trap 'ECODE=$?; rmdir '"${EVAL_SAFE_LOCKFILE}"'; exit $ECODE' EXIT INT TERM
- else
- exiterror "Could not obtain lock at ${LOCKFILE}; $0 likely already running."
- fi
---
-2.17.1
-
diff --git a/testing/simplesnap/0003-use-CHECKHOST-in-checkbackups-function.patch b/testing/simplesnap/0003-use-CHECKHOST-in-checkbackups-function.patch
deleted file mode 100644
index b1bd214c437..00000000000
--- a/testing/simplesnap/0003-use-CHECKHOST-in-checkbackups-function.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From 79dd4680928fdc999527123ebd6b3363ca705e4a Mon Sep 17 00:00:00 2001
-From: Henrik Riomar <henrik.riomar@gmail.com>
-Date: Tue, 26 Jun 2018 07:57:58 +0200
-Subject: [PATCH] use CHECKHOST in checkbackups() function
-
-$CHECKHOST variable defined in checkbackups is unused, lets use it
-instead of the global $HOST
----
- simplesnap | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/simplesnap b/simplesnap
-index 63fc0c2..d9e1806 100755
---- a/simplesnap
-+++ b/simplesnap
-@@ -192,11 +192,11 @@ runzfs () {
-
- checkbackups () {
- CHECKHOST="$1"
-- DATASETS="`runzfs list -t filesystem,volume -o name -H -r \"${STORE}/${HOST}\"`"
-+ DATASETS="`runzfs list -t filesystem,volume -o name -H -r \"${STORE}/${CHECKHOST}\"`"
- CUTOFF="`$DATE -d \"${CHECKMODE}\" +%s`"
- for CHECKDS in ${DATASETS}; do
- # Don't check the top-level host dataset itself.
-- if [ "${CHECKDS}" = "${STORE}/${HOST}" ]; then
-+ if [ "${CHECKDS}" = "${STORE}/${CHECKHOST}" ]; then
- continue
- fi
-
---
-2.17.1
-
diff --git a/testing/simplesnap/APKBUILD b/testing/simplesnap/APKBUILD
deleted file mode 100644
index 0158bed6d68..00000000000
--- a/testing/simplesnap/APKBUILD
+++ /dev/null
@@ -1,39 +0,0 @@
-# Contributor: Henrik Riomar <henrik.riomar@gmail.com>
-# Maintainer: Henrik Riomar <henrik.riomar@gmail.com>
-pkgname=simplesnap
-pkgver=1.0.4
-pkgrel=2
-pkgdesc="Simple and powerful network transmission of ZFS snapshots"
-url="https://github.com/jgoerzen/simplesnap"
-arch="noarch !armhf !armv7" # limited by zfs
-license="GPL-3.0-or-later"
-depends="bash coreutils liblockfile openssh-client zfs"
-subpackages="$pkgname-doc"
-options="!check" # no test suite
-source="$pkgname-$pkgver.tar.gz::https://github.com/jgoerzen/simplesnap/archive/release/$pkgver.tar.gz
- 0001-fix-simplesnap-line-2-dotlockfile-command-not-found.patch
- 0002-trap-do-not-define-ECODE-at-setup.patch
- 0003-use-CHECKHOST-in-checkbackups-function.patch
- "
-builddir="$srcdir/$pkgname-release-$pkgver"
-
-prepare() {
- default_prepare
-
- sed -i 's|sbin/zfs|usr/&|' simplesnap
- sed -i 's|sbin/zfs|usr/&|' simplesnapwrap
-}
-
-package() {
- install -m 0755 -d "$pkgdir"/usr/sbin
- install -m 0755 simplesnap "$pkgdir"/usr/sbin/
- install -m 0755 simplesnapwrap "$pkgdir"/usr/sbin/
-
- install -m 0755 -d "$pkgdir"/usr/share/man/man8
- install -m 0644 doc/simplesnap.8 "$pkgdir"/usr/share/man/man8/
-}
-
-sha512sums="818f917d65b87366af1530441f2c070a51e34efbf7790509f00aa18949dae4f8f5b1bbde4b67ca45f95df4ea816f42416c9f09aba060769d3548eb5f12551b62 simplesnap-1.0.4.tar.gz
-54273ec9630cc5e764db65361ac4a03e27dafcbbe67794053e8a94584e7e8ed10db908b0285485a80253cf93bb7daf9f5257924a1476ab235138c88abb0111b7 0001-fix-simplesnap-line-2-dotlockfile-command-not-found.patch
-618fd1ed200ae30437528a52090bf4363ba7f3641741865fb78ef67401fbde41a77fe83681d9c26a2391b7be6c25d22ba4285922911c28a1d0b7c4b093a19df7 0002-trap-do-not-define-ECODE-at-setup.patch
-49248602dbbdb22ae1ac224f716e71165320184941434e968c214e969e26a8dbbfe6058a6af56684b31b51440817ef9fe874e64fa793a32713e5d3a644def73b 0003-use-CHECKHOST-in-checkbackups-function.patch"
diff --git a/testing/sing-box/APKBUILD b/testing/sing-box/APKBUILD
new file mode 100644
index 00000000000..45d85987597
--- /dev/null
+++ b/testing/sing-box/APKBUILD
@@ -0,0 +1,50 @@
+# Contributor: Anon <danilagdn.2004@gmail.com>
+# Maintainer: Anon <danilagdn.2004@gmail.com>
+pkgname=sing-box
+pkgver=1.8.4
+pkgrel=3
+pkgdesc="The universal proxy platform"
+url="https://sing-box.sagernet.org/"
+arch="all"
+license="GPL-3.0-or-later with name use or association addition"
+makedepends="go"
+subpackages="$pkgname-openrc $pkgname-bash-completion $pkgname-fish-completion $pkgname-zsh-completion"
+options="!check"
+source="$pkgname-$pkgver.tar.gz::https://github.com/SagerNet/sing-box/archive/v$pkgver.tar.gz
+ $pkgname.initd
+ "
+_tags="with_gvisor,with_quic,with_wireguard,with_utls,with_reality_server,with_clash_api,with_ech"
+
+build() {
+ export CGO_CPPFLAGS="$CPPFLAGS"
+ export CGO_CFLAGS="$CFLAGS"
+ export CGO_CXXFLAGS="$CXXFLAGS"
+ export CGO_LDFLAGS="$LDFLAGS"
+
+ go build -v -tags "$_tags" \
+ -ldflags "-X \"github.com/sagernet/sing-box/constant.Version=$pkgver\" -s -w
+ -buildid= -linkmode=external" ./cmd/sing-box
+
+ install -d completions
+ go run ./cmd/sing-box completion bash > completions/bash
+ go run ./cmd/sing-box completion fish > completions/fish
+ go run ./cmd/sing-box completion zsh > completions/zsh
+}
+
+
+package() {
+ install -Dm644 LICENSE -t "$pkgdir/usr/share/licenses/$pkgname"
+ install -Dm755 "$pkgname" -t "$pkgdir/usr/bin"
+ install -Dm644 "release/config/config.json" -t "$pkgdir/etc/$pkgname"
+ install -Dm755 "$srcdir/$pkgname.initd" "$pkgdir/etc/init.d/$pkgname"
+
+ install -Dm644 completions/bash "$pkgdir/usr/share/bash-completion/completions/$pkgname.bash"
+ install -Dm644 completions/fish "$pkgdir/usr/share/fish/vendor_completions.d/$pkgname.fish"
+ install -Dm644 completions/zsh "$pkgdir/usr/share/zsh/site-functions/_$pkgname"
+
+}
+
+sha512sums="
+fdb72b521181bd3cafd50c78c87ecf0794f63687615ea29d2dab2482fd7ec227d6fd44d91ec7e0ac530bf5f3040de32bd0ac8e39c83aa55daec4cfa01f9bc64f sing-box-1.8.4.tar.gz
+b90e16319d2d2827886219e8f420954060c6e003a88f523595da5f04fe0530f95c3fae89f60dec452a87804f479164dd29b57f1329b928cc3d641fd7ef174284 sing-box.initd
+"
diff --git a/testing/sing-box/sing-box.initd b/testing/sing-box/sing-box.initd
new file mode 100644
index 00000000000..745e059520c
--- /dev/null
+++ b/testing/sing-box/sing-box.initd
@@ -0,0 +1,17 @@
+#!/sbin/openrc-run
+
+name=$RC_SVCNAME
+description="sing-box service"
+supervisor="supervise-daemon"
+command="/usr/bin/sing-box"
+command_args="-D /var/lib/sing-box -C /etc/sing-box run"
+
+depend() {
+ after net dns
+}
+
+reload() {
+ ebegin "Reloading $RC_SVCNAME"
+ /bin/kill -HUP $MAINPID
+ eend $?
+}
diff --git a/testing/sing-geoip/APKBUILD b/testing/sing-geoip/APKBUILD
new file mode 100644
index 00000000000..3da2b8fe918
--- /dev/null
+++ b/testing/sing-geoip/APKBUILD
@@ -0,0 +1,27 @@
+# Contributor: Anon <danilagdn.2004@gmail.com>
+# Maintainer: Anon <danilagdn.2004@gmail.com>
+pkgname=sing-geoip
+pkgver=20231212
+pkgrel=0
+pkgdesc="sing-geoip database"
+_repo="SagerNet/$pkgname"
+url="https://github.com/$_repo"
+arch="noarch"
+license="GPL-3.0-or-later"
+source="$pkgver.geoip-cn.db::$url/releases/download/$pkgver/geoip-cn.db
+ $pkgver.geoip.db::$url/releases/download/$pkgver/geoip.db
+ $pkgver.LICENSE::https://raw.githubusercontent.com/$_repo/$pkgver/LICENSE"
+options="!check"
+
+
+package() {
+ install -Dm644 "$srcdir/$pkgver.geoip-cn.db" "$pkgdir/usr/share/$pkgname/geoip-cn.db"
+ install -Dm644 "$srcdir/$pkgver.geoip.db" "$pkgdir/usr/share/$pkgname/geoip.db"
+ install -Dm644 "$srcdir/$pkgver.LICENSE" "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+}
+
+sha512sums="
+aad59939cfc58f9a5d2970beab7fc31dec83bb9b9c2de692f502d5f0fb5ed2085413e0d4b2bba9d694a6004d31b319054831cf439e358959ecd8d20e8df920c4 20231212.geoip-cn.db
+713101c779f6678f7ac6731303a917489bb642d83b7d1138bb9467743f2619089fd31e2426c022af31d2e6d9d4963bf9cc38c69a269bb24684ffc467bd0dba91 20231212.geoip.db
+5cab2697882973e38835376b3e5f45f5720da2a5d408c442ab8c03b97b2cb69387fe5dd7f00e8d3e7dbc9e34797c120c0444b9abb60aba1728e6661970a12418 20231212.LICENSE
+"
diff --git a/testing/sing-geosite/APKBUILD b/testing/sing-geosite/APKBUILD
new file mode 100644
index 00000000000..a3d32f9e86e
--- /dev/null
+++ b/testing/sing-geosite/APKBUILD
@@ -0,0 +1,24 @@
+# Contributor: Anon <danilagdn.2004@gmail.com>
+# Maintainer: Anon <danilagdn.2004@gmail.com>
+pkgname=sing-geosite
+pkgver=20231212122459
+pkgrel=0
+pkgdesc="sing-geosite database"
+_repo="SagerNet/$pkgname"
+url="https://github.com/$_repo"
+arch="noarch"
+license="GPL-3.0-or-later"
+source="$pkgver.geosite.db::$url/releases/download/$pkgver/geosite.db
+ $pkgver.LICENSE::https://raw.githubusercontent.com/$_repo/$pkgver/LICENSE"
+options="!check"
+
+
+package() {
+ install -Dm644 "$srcdir/$pkgver.geosite.db" "$pkgdir/usr/share/$pkgname/geosite.db"
+ install -Dm644 "$srcdir/$pkgver.LICENSE" "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+}
+
+sha512sums="
+cef0320202a37b1ba859554f9b06b255a2bd78cbaa58ec29d69d3767bed7205ad838550814772c20fc52927ab5b55b9e00f9f2e29e8a7b76f5ae1d845f7801b7 20231212122459.geosite.db
+5cab2697882973e38835376b3e5f45f5720da2a5d408c442ab8c03b97b2cb69387fe5dd7f00e8d3e7dbc9e34797c120c0444b9abb60aba1728e6661970a12418 20231212122459.LICENSE
+"
diff --git a/testing/singular/APKBUILD b/testing/singular/APKBUILD
new file mode 100644
index 00000000000..f30018f17d8
--- /dev/null
+++ b/testing/singular/APKBUILD
@@ -0,0 +1,73 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
+pkgname=singular
+pkgver=4.3.2
+pkgrel=2
+pkgdesc="Computer algebra system for polynomial computations"
+url="https://www.singular.uni-kl.de/"
+# s390x: blocked by flint-dev
+arch="all !s390x"
+license="GPL-2.0-only OR GPL-3.0-only"
+depends="python3"
+makedepends="
+ cddlib-dev
+ gmp-dev
+ flint-dev
+ perl
+ "
+source="https://www.singular.uni-kl.de/ftp/pub/Math/Singular/SOURCES/${pkgver//./-}/singular-${pkgver}.tar.gz"
+subpackages="
+ $pkgname-static
+ $pkgname-dev:_dev
+ $pkgname-emacs:_emacs:noarch
+ $pkgname-doc
+ "
+
+build() {
+ export CXXFLAGS="${CXXFLAGS/-Os/-O3}" # gotta go fast
+
+ ./configure \
+ --target="$CTARGET" \
+ --build="$CBUILD" \
+ --host="$CHOST" \
+ --prefix=/usr \
+ --libexecdir=/usr/lib \
+ --enable-bigintm-module \
+ --enable-Order-module \
+ --enable-python-module \
+ --enable-gfanlib-module \
+ --enable-polymake-module
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+ # Perhaps it is better to get rid of 36mb of HTML and images.
+ rm -rf "$pkgdir"/usr/share/doc
+}
+
+_dev() {
+ pkgdesc="$pkgdesc (development files)"
+ amove usr/bin/libpolys-config
+ amove usr/bin/libsingular-config
+ amove usr/include
+ amove usr/lib/pkgconfig
+ amove usr/lib/libSingular.so
+ amove usr/lib/libfactory.so
+ amove usr/lib/libomalloc.so
+ amove usr/lib/libpolys.so
+ amove usr/lib/libsingular_resources.so
+}
+
+_emacs() {
+ pkgdesc="Emacs completions for singular"
+ amove usr/share/singular/emacs
+}
+
+sha512sums="
+14df5d9c6e983543dc67b1b2237644a5f70d0eeb128f8414732fd8b44d72b038a365cbdd9ec52983999690d4dc8817b02c7ed719c8b6a0851ba8b341c12a182a singular-4.3.2.tar.gz
+"
diff --git a/testing/singularity/APKBUILD b/testing/singularity/APKBUILD
deleted file mode 100644
index 46788b4b253..00000000000
--- a/testing/singularity/APKBUILD
+++ /dev/null
@@ -1,77 +0,0 @@
-# Contributor: Oleg Titov <oleg.titov@gmail.com>
-# Maintainer: Oleg Titov <oleg.titov@gmail.com>
-pkgname=singularity
-pkgver=3.8.7
-pkgrel=3
-pkgdesc="Application containers focused on reproducibility for scientific computing and HPC world."
-url="https://www.sylabs.io/singularity/"
-# aarch64: segmentation fault during build
-# ppc64le: produces a non-PIE suid binary
-arch="all !aarch64 !ppc64le"
-license="BSD-3-Clause AND BSD-3-Clause-LBNL"
-options="suid !check" # no test suite from upstream
-depends="squashfs-tools"
-makedepends="
- bash
- cni-plugins
- cryptsetup
- go
- libseccomp-dev
- "
-subpackages="$pkgname-doc $pkgname-bash-completion"
-source="https://github.com/apptainer/singularity/releases/download/v$pkgver/singularity-$pkgver.tar.gz"
-
-# secfixes:
-# 3.8.5-r0:
-# - CVE-2021-41190
-# - GHSA-77vh-xpmg-72qh
-# 3.7.4-r0:
-# - CVE-2021-32635
-# 3.7.3-r0:
-# - CVE-2021-29136
-# 3.6.4-r0:
-# - CVE-2020-15229
-# 3.6.3-r0:
-# - CVE-2020-25039
-# - CVE-2020-25040
-# 3.6.0-r0:
-# - CVE-2020-13845
-# - CVE-2020-13846
-# - CVE-2020-13847
-# 3.5.2-r0:
-# - CVE-2019-19724
-
-export GOPATH="$srcdir"
-export GOFLAGS="$GOFLAGS -modcacherw -trimpath"
-
-prepare() {
- default_prepare
- echo "$pkgver" > "$builddir"/VERSION
-}
-
-build() {
- # override git dir so it picks up our version above
- GIT_DIR=. ./mconfig \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --infodir=/usr/share/infodir \
- --localstatedir=/var \
- --without-network
-
- make -C builddir GOFLAGS="$GOFLAGS"
-}
-
-package() {
- make -C builddir DESTDIR="$pkgdir" GOFLAGS="$GOFLAGS" install
-
- install -Dm644 -t "$pkgdir"/usr/share/doc/$pkgname README.md
-
- mkdir -p "$pkgdir"/usr/share/bash-completion/completions
- mv "$pkgdir"/etc/bash_completion.d/singularity \
- "$pkgdir"/usr/share/bash-completion/completions
-}
-
-sha512sums="
-5649264c15414b90bab47d1958ec61681fa0b9e37ee445a5059f78f3d822aa27f5b9c5c4f4010d053ec9d03e0215c67e2de8e315f74de7d3cd16b8399f40ee59 singularity-3.8.7.tar.gz
-"
diff --git a/testing/sipexer/APKBUILD b/testing/sipexer/APKBUILD
index e6f327bccbb..67eebc0a92a 100644
--- a/testing/sipexer/APKBUILD
+++ b/testing/sipexer/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Francesco Colista <fcolista@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=sipexer
-pkgver=1.0.2
-pkgrel=0
+pkgver=1.1.0
+pkgrel=5
pkgdesc="Modern and flexible SIP (RFC3261) command line tool."
url="https://github.com/miconda/sipexer"
arch="all"
@@ -10,10 +10,11 @@ license="GPL-3.0"
makedepends="go"
source="$pkgname-$pkgver.tar.gz::https://github.com/miconda/sipexer/archive/refs/tags/v$pkgver.tar.gz"
-export GOPATH="$srcdir"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
build() {
- go get ./...
go build -v -o bin/ ./...
}
@@ -31,5 +32,5 @@ cleanup_srcdir() {
}
sha512sums="
-05007667304eed9db45b8fc9e3e1fcda6377c64e43216cd1794168454ed0af241a90a77101021b6c9ecf50c56049344928cfded5984b252aa104b27c406a42d0 sipexer-1.0.2.tar.gz
+0244b2fef077b32dcc5c0c7271d950b737295d66e505ee6396851697466d6905892d250be3afe433b880fb2a9361b9243d99498684484c387bf6789e3e86035e sipexer-1.1.0.tar.gz
"
diff --git a/testing/sipgrep/APKBUILD b/testing/sipgrep/APKBUILD
index 86997171da7..75d2dd99056 100644
--- a/testing/sipgrep/APKBUILD
+++ b/testing/sipgrep/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname="sipgrep"
pkgver="2.1.0"
-pkgrel=0
+pkgrel=1
pkgdesc="Display and Troubleshoot SIP signaling over IP networks in console"
url="https://www.sipcapture.org/"
arch="all"
diff --git a/testing/siril/APKBUILD b/testing/siril/APKBUILD
new file mode 100644
index 00000000000..8ddcdcaa9bf
--- /dev/null
+++ b/testing/siril/APKBUILD
@@ -0,0 +1,49 @@
+# Maintainer: duckl1ng <bogdan@sanocki.info>
+pkgname=siril
+pkgver=1.2.1
+pkgrel=2
+pkgdesc="Siril is an astronomical image processing tool"
+url="https://siril.org"
+# s390x, riscv64, ppc64le: no opencv
+arch="all !s390x !riscv64 !ppc64le"
+license="GPL-3.0-or-later"
+makedepends="
+ cfitsio-dev
+ cmake
+ curl-dev
+ exiv2-dev
+ fftw-dev
+ gsl-dev
+ gtk+3.0-dev
+ json-glib-dev
+ libconfig-dev
+ ffms2-dev
+ libheif-dev
+ libraw-dev
+ libunwind-dev
+ meson
+ opencv-dev
+ "
+subpackages="$pkgname-doc $pkgname-lang"
+source="https://free-astro.org/download/siril-$pkgver.tar.bz2
+ lfs64.patch
+ "
+
+build() {
+ abuild-meson . output -Denable-libcurl=yes
+ meson compile -C output
+}
+
+check() {
+ output/src/siril --version
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+ rm "$pkgdir"/usr/lib/librtprocess.a
+}
+
+sha512sums="
+5a23c56f83dc971d86562aa216174abbf690c902093e072f14817d9fff3976cbbbfe4b8848bf8d57882adadcededa7799d47e483b240c44b6b1a6d635bb8452c siril-1.2.1.tar.bz2
+66a0aa9893f0f838aa9d1d23a4af54ffbc0c42b11bcc741231a33a0a1d798d9025639e39c2ce4fb62f2b14534641280222711e1de2973b30a547590fdbb18cb3 lfs64.patch
+"
diff --git a/testing/siril/lfs64.patch b/testing/siril/lfs64.patch
new file mode 100644
index 00000000000..c7249d1c57a
--- /dev/null
+++ b/testing/siril/lfs64.patch
@@ -0,0 +1,41 @@
+upstream: https://gitlab.com/free-astro/siril/-/issues/1241
+
+diff --git a/src/io/avi_pipp/pipp_utf8.h b/src/io/avi_pipp/pipp_utf8.h
+index 33fafc6..f01467f 100644
+--- a/src/io/avi_pipp/pipp_utf8.h
++++ b/src/io/avi_pipp/pipp_utf8.h
+@@ -31,27 +31,15 @@
+ #endif
+
+ // 64-bit fseek for various platforms
+-#ifdef __linux__
+-#define fseek64 fseeko64 // Linux
+-#define ftell64 ftello64 // Linux
+-#elif defined (OS_OSX)
+-#define fseek64 fseeko // OS X
+-#define ftell64 ftello // OS X
+-#elif defined(BSD)
+-#define fseek64 fseeko // DragonFly BSD, FreeBSD, OpenBSD, NetBSD
+-#define ftell64 ftello // DragonFly BSD, FreeBSD, OpenBSD, NetBSD
+-#elif defined (__FreeBSD_kernel__) && defined (__GLIBC__)
+-#define fseek64 fseeko64 // KFreeBSD
+-#define ftell64 ftello64 // KFreeBSD
+-#elif defined (__gnu_hurd__)
+-#define fseek64 fseeko64 // GNU/Hurd
+-#define ftell64 ftello64 // GNU/Hurd
+-#elif defined(__CYGWIN__)
+-#define fseek64 fseeko // CYGWIN
+-#define ftell64 ftello // CYGWIN
+-#else
++#if defined(__GLIBC__) || defined(__gnu_hurd__)
++#define fseek64 fseeko64 // GNU
++#define ftell64 ftello64 // GNU
++#elif defined(_WIN32)
+ #define fseek64 _fseeki64 // Windows
+ #define ftell64 _ftelli64 // Windows
++#else // POSIX
++#define fseek64 fseeko // OS X, DragonFly BSD, FreeBSD, OpenBSD, NetBSD, musl
++#define ftell64 ftello // OS X, DragonFly BSD, FreeBSD, OpenBSD, NetBSD, musl
+ #endif
+
+ #endif // PIPP_UTF8_H
diff --git a/testing/sish/APKBUILD b/testing/sish/APKBUILD
new file mode 100644
index 00000000000..0bf3a2b369a
--- /dev/null
+++ b/testing/sish/APKBUILD
@@ -0,0 +1,35 @@
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=sish
+pkgver=2.14.0
+pkgrel=1
+pkgdesc="HTTP(S)/WS(S)/TCP Tunnels to localhost using only SSH"
+url="https://github.com/antoniomika/sish"
+# s390x, riscv64: doesn't compile
+arch="all !s390x !riscv64"
+license="MIT"
+makedepends="go"
+install="$pkgname.pre-install"
+subpackages="$pkgname-openrc"
+source="https://github.com/antoniomika/sish/archive/refs/tags/v$pkgver/sish-$pkgver.tar.gz
+ sish.initd
+ sish.confd
+ "
+options="!check" # no tests provided by upstream
+
+build() {
+ go build -o sish
+}
+
+package() {
+ install -Dm755 sish "$pkgdir"/usr/bin/sish
+ install -Dm644 config.example.yml "$pkgdir"/etc/sish/config.yml
+
+ install -Dm755 "$srcdir"/sish.initd "$pkgdir"/etc/init.d/sish
+ install -Dm644 "$srcdir"/sish.confd "$pkgdir"/etc/conf.d/sish
+}
+
+sha512sums="
+ec477cc270c1077df4cbba5ab0b32ada56aaec48c0044b611dda6b3af1c641b6189072d4b6c20d21f12a5dc331b514a8d85d8ab6866282d76ebc1a39982e42b4 sish-2.14.0.tar.gz
+8d810e48e3106babdce734e4f83249c62de5b562c7b1c50a33914c426b5406f958d3b5868f68af1f1f766142b5cd1ef60f19457f059ff6f1985cae6001d79398 sish.initd
+4b1e752dcd49ce7d8f145ad0b8bc3ea5a86dc322dc61048364a7c36386dfb21ea8b243d41bebc3db96c9c490f6b6e7e006536fe4ebfd27078f5b32181b8dd5d4 sish.confd
+"
diff --git a/testing/sish/sish.confd b/testing/sish/sish.confd
new file mode 100644
index 00000000000..176d450be1f
--- /dev/null
+++ b/testing/sish/sish.confd
@@ -0,0 +1,4 @@
+# Configuration file for sish
+
+supervisor=supervise-daemon
+#config_path="/etc/sish/config.yml"
diff --git a/testing/sish/sish.initd b/testing/sish/sish.initd
new file mode 100644
index 00000000000..5c4355ac04b
--- /dev/null
+++ b/testing/sish/sish.initd
@@ -0,0 +1,19 @@
+#!/sbin/openrc-run
+
+command="/usr/bin/sish"
+command_args="--config ${config_path:-/etc/sish/config.yml}"
+command_user="sish:sish"
+command_background=true
+pidfile="/run/$RC_SVCNAME.pid"
+
+output_log="/var/log/sish.log"
+error_log="/var/log/sish.log"
+
+depend() {
+ need net
+}
+
+start_pre() {
+ checkpath -d -m 0755 -o "$command_user" /var/lib/sish
+ checkpath -f -m 0644 -o "$command_user" "$output_log"
+}
diff --git a/testing/sish/sish.pre-install b/testing/sish/sish.pre-install
new file mode 100644
index 00000000000..4e5b31c4f34
--- /dev/null
+++ b/testing/sish/sish.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S sish 2>/dev/null
+adduser -S -D -H -h /var/lib/sish -s /sbin/nologin -G sish -g sish sish 2>/dev/null
+
+exit 0
diff --git a/testing/skia-sharp/APKBUILD b/testing/skia-sharp/APKBUILD
new file mode 100644
index 00000000000..d4802eb068a
--- /dev/null
+++ b/testing/skia-sharp/APKBUILD
@@ -0,0 +1,185 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=skia-sharp
+pkgver=0_git20230912
+pkgrel=0
+_commit="ced64f6f90cb5349de58e349309d3514cb345c28"
+_buildtools_commit="b138e6ce86ae843c42a1a08f37903207bebcca75"
+_brotli_commit="6d03dfbedda1615c4cba1211f8d81735575209c8"
+_abseil_cpp_commit="cb436cf0142b4cbe47aae94223443df7f82e2920"
+_dng_sdk_commit="c8d0c9b1d16bfda56f15165d39e0ffa360a11123"
+_egl_registry_commit="a0bca08de07c7d7651047bedc0b653cfaaa4f2ae"
+_highway_commit="424360251cdcfc314cfc528f53c872ecd63af0f0"
+_imgui_commit="55d35d8387c15bf0cfd71861df67af8cfbda7456"
+_libavif_commit="f49462dc93784bf34148715eee36ab6697ca0b35"
+_libgav1_commit="0fb779c1e169fe6c229cd1fa9cc6ea6feeb441da"
+_libjxl_commit="a205468bc5d3a353fb15dae2398a101dff52f2d3"
+_libyuv_commit="d248929c059ff7629a85333699717d7a677d8d96"
+_microhttpd_commit="748945ec6f1c67b7efc934ab0808e1d32f2fb98d"
+_oboe_commit="b02a12d1dd821118763debec6b83d00a8a0ee419"
+_opengl_registry_commit="14b80ebeab022b2c78f84a573f01028c96075553"
+_perfetto_commit="93885509be1c9240bc55fa515ceb34811e54a394"
+_piex_commit="bb217acdca1cc0c16b704669dd6f91a1b509c406"
+_vulkanmemoryallocator_commit="7de5cc00de50e71a3aab22dea52fbb7ff4efceb6"
+_vulkan_deps_commit="8a3971e5e9c5cddc437d1cf5e4ac1ed0728d6a49"
+_spirv_cross_commit="12542fc6fc05000e04742daf93892a0b10edbe80"
+_spirv_headers_commit="bdbfd019be6952fd8fa9bd5606a8798a7530c853"
+_spirv_tools_commit="e7c6084fd1d6d6f5ac393e842728d8be309688ca"
+_vello_commit="ef2630ad9c647b90863cb0915701d54725733968"
+_vulkan_headers_commit="9e61870ecbd32514113b467e0a0c46f60ed222c7"
+_vulkan_tools_commit="80b010b1e1b08c1f092fb2bfa337faadf8ea1ba3"
+_wuffs_commit="a0041ac0310b3156b963e2f2bea09245f25ec073"
+pkgdesc="A complete 2D graphic library for drawing Text, Geometries, and Images"
+url="https://github.com/Mis012/skia/tree/with-patches-applied"
+arch="x86_64 aarch64 armv7"
+license="BSD-3-Clause"
+makedepends="
+ expat-dev
+ freetype-dev
+ gn
+ harfbuzz-dev
+ libjpeg-turbo-dev
+ libpng-dev
+ libwebp-dev
+ python3
+ zlib-dev
+ "
+subpackages="$pkgname-dev"
+source="$pkgname-$_commit.tar.gz::https://github.com/Mis012/skia/archive/$_commit.tar.gz
+ https://github.com/google/brotli/archive/$_brotli_commit/brotli-$_brotli_commit.tar.gz
+ https://github.com/abseil/abseil-cpp/archive/$_abseil_cpp_commit/abseil-cpp-$_abseil_cpp_commit.tar.gz
+ dng_sdk-$_dng_sdk_commit.tar.gz::https://android.googlesource.com/platform/external/dng_sdk.git/+archive/$_dng_sdk_commit.tar.gz
+ https://github.com/KhronosGroup/egl-registry/archive/$_egl_registry_commit/egl-registry-$_egl_registry_commit.tar.gz
+ https://github.com/google/highway/archive/$_highway_commit/highway-$_highway_commit.tar.gz
+ https://github.com/ocornut/imgui/archive/$_imgui_commit/imgui-$_imgui_commit.tar.gz
+ https://github.com/AOMediaCodec/libavif/archive/$_libavif_commit/libavif-$_libavif_commit.tar.gz
+ libgav1-$_libgav1_commit.tar.gz::https://chromium.googlesource.com/codecs/libgav1.git/+archive/$_libgav1_commit.tar.gz
+ https://gitlab.com/wg1/jpeg-xl/-/archive/$_libjxl_commit/libjxl-$_libjxl_commit.tar.gz
+ libyuv-$_libyuv_commit.tar.gz::https://chromium.googlesource.com/libyuv/libyuv.git/+archive/$_libyuv_commit.tar.gz
+ microhttpd-$_microhttpd_commit.tar.gz::https://android.googlesource.com/platform/external/libmicrohttpd.git/+archive/$_microhttpd_commit.tar.gz
+ https://github.com/google/oboe/archive/$_oboe_commit/oboe-$_oboe_commit.tar.gz
+ https://github.com/KhronosGroup/opengl-registry/archive/$_opengl_registry_commit/opengl-registry-$_opengl_registry_commit.tar.gz
+ perfetto-$_perfetto_commit.tar.gz::https://android.googlesource.com/platform/external/perfetto.git/+archive/$_perfetto_commit.tar.gz
+ piex-$_piex_commit.tar.gz::https://android.googlesource.com/platform/external/piex.git/+archive/$_piex_commit.tar.gz
+ https://github.com/GPUOpen-LibrariesAndSDKs/vulkanmemoryallocator/archive/$_vulkanmemoryallocator_commit/vulkanmemoryallocator-$_vulkanmemoryallocator_commit.tar.gz
+ vulkan-deps-$_vulkan_deps_commit.tar.gz::https://chromium.googlesource.com/vulkan-deps.git/+archive/$_vulkan_deps_commit.tar.gz
+ https://github.com/KhronosGroup/spirv-cross/archive/$_spirv_cross_commit/spirv-cross-$_spirv_cross_commit.tar.gz
+ https://github.com/KhronosGroup/spirv-headers/archive/$_spirv_headers_commit/spirv-headers-$_spirv_headers_commit.tar.gz
+ https://github.com/KhronosGroup/spirv-tools/archive/$_spirv_tools_commit/spirv-tools-$_spirv_tools_commit.tar.gz
+ https://github.com/linebender/vello/archive/$_vello_commit/vello-$_vello_commit.tar.gz
+ https://github.com/KhronosGroup/vulkan-headers/archive/$_vulkan_headers_commit/vulkan-headers-$_vulkan_headers_commit.tar.gz
+ https://github.com/KhronosGroup/vulkan-tools/archive/$_vulkan_tools_commit/vulkan-tools-$_vulkan_tools_commit.tar.gz
+ https://github.com/google/wuffs-mirror-release-c/archive/$_wuffs_commit/wuffs-$_wuffs_commit.tar.gz
+ "
+# No tests
+options="!check"
+builddir="$srcdir/skia-$_commit"
+
+case "$CARCH" in
+ x86_64) _arch=x64 ;;
+ *) _arch="$CARCH" ;;
+esac
+
+unpack() {
+ local u
+ mkdir -p "$srcdir"
+ for u in $source; do
+ local s="$SRCDEST/$(filename_from_uri $u)"
+ local unpackdir
+ msg "Unpacking $s..."
+ case "$u" in
+ *googlesource.com*) unpackdir="$srcdir/$(basename $s .tar.gz)";;
+ *) unpackdir="$srcdir";;
+ esac
+ mkdir -p "$unpackdir"
+ tar -C "$unpackdir" -zxf "$s"
+ done
+
+}
+
+prepare() {
+ default_prepare
+
+ mkdir -p third_party/externals
+
+ mv "$srcdir"/brotli-$_brotli_commit third_party/externals/brotli
+ mv "$srcdir"/abseil-cpp-$_abseil_cpp_commit third_party/externals/abseil-cpp
+ mv "$srcdir"/dng_sdk-$_dng_sdk_commit third_party/externals/dng_sdk
+ mv "$srcdir"/EGL-Registry-$_egl_registry_commit third_party/externals/egl-registry
+ mv "$srcdir"/highway-$_highway_commit third_party/externals/highway
+ mv "$srcdir"/imgui-$_imgui_commit third_party/externals/imgui
+ mv "$srcdir"/libavif-$_libavif_commit third_party/externals/libavif
+ mv "$srcdir"/libgav1-$_libgav1_commit third_party/externals/libgav1
+ mv "$srcdir"/jpeg-xl-$_libjxl_commit third_party/externals/libjxl
+ mv "$srcdir"/libyuv-$_libyuv_commit third_party/externals/libyuv
+ mv "$srcdir"/microhttpd-$_microhttpd_commit third_party/externals/microhttpd
+ mv "$srcdir"/oboe-$_oboe_commit third_party/externals/oboe
+ mv "$srcdir"/OpenGL-Registry-$_opengl_registry_commit third_party/externals/opengl-registry
+ mv "$srcdir"/perfetto-$_perfetto_commit third_party/externals/perfetto
+ mv "$srcdir"/piex-$_piex_commit third_party/externals/piex
+ mv "$srcdir"/VulkanMemoryAllocator-$_vulkanmemoryallocator_commit third_party/externals/vulkanmemoryallocator
+ mv "$srcdir"/vulkan-deps-$_vulkan_deps_commit third_party/externals/vulkan-deps
+ mv "$srcdir"/SPIRV-Cross-$_spirv_cross_commit third_party/externals/spirv-cross
+ mv "$srcdir"/SPIRV-Headers-$_spirv_headers_commit third_party/externals/spirv-headers
+ mv "$srcdir"/SPIRV-Tools-$_spirv_tools_commit third_party/externals/spirv-tools
+ mv "$srcdir"/vello-$_vello_commit third_party/externals/vello
+ mv "$srcdir"/Vulkan-Headers-$_vulkan_headers_commit third_party/externals/vulkan-headers
+ mv "$srcdir"/Vulkan-Tools-$_vulkan_tools_commit third_party/externals/vulkan-tools
+ mv "$srcdir"/wuffs-mirror-release-c-$_wuffs_commit third_party/externals/wuffs
+}
+
+build() {
+ # Keep this list unindented, gn really doesn't like tabs for indentation
+ gn gen "out/linux/$_arch" --args="
+is_official_build=true
+skia_enable_tools=false
+target_os=\"linux\"
+target_cpu=\"$_arch\"
+skia_use_icu=false
+skia_use_sfntly=false
+skia_use_piex=true
+skia_use_system_harfbuzz=true
+skia_use_system_expat=true
+skia_use_system_freetype2=true
+skia_use_system_libjpeg_turbo=true
+skia_use_system_libpng=true
+skia_use_system_libwebp=true
+skia_use_system_zlib=true
+skia_enable_gpu=true
+extra_cflags=[ \"-DSKIA_C_DLL\", \"-fpermissive\" ]
+linux_soname_version=\"99.9\""
+ ninja -C "out/linux/$_arch" 'SkiaSharp'
+}
+
+package() {
+ install -Dm755 out/linux/$_arch/libSkiaSharp.so.99.9 "$pkgdir"/usr/lib/libSkiaSharp.so.99.9
+ ln -s /usr/lib/libSkiaSharp.so.99.9 "$pkgdir"/usr/lib/libSkiaSharp.so
+}
+
+sha512sums="
+05ae5f783e4190daaf7b7cc19ea36f8d7235238c1f06afb5109c3892801f1634e6da5a00fbca4974719f3ef5758d1e8ad8da641e09baf266aa9ac72f12d3787b skia-sharp-ced64f6f90cb5349de58e349309d3514cb345c28.tar.gz
+9a6ae22a85bcd20b9a1b6c4d51bddc76e9e7461f2e1e144fb0625ed67e6a1c4ea635a75ba8f07b3914bab8de1d319e4c13c815989ca1691ba0215197c385eb08 brotli-6d03dfbedda1615c4cba1211f8d81735575209c8.tar.gz
+765b542bd7c9cf2c8d0f150aaeaae6bb12d4643d314f5b4026139a63b4f2852ae8774bb740f3c8602ab2b49646e194151a344f03237313ab69251dfd931f9874 abseil-cpp-cb436cf0142b4cbe47aae94223443df7f82e2920.tar.gz
+71ff48fe6d18685d7937f0314dcf373d50d9413dd15453c4b04ed11ee06340cc085444d06db6f2161830c2f874c5a0a89d53b0fae4ba5c5e4084072165a97a49 dng_sdk-c8d0c9b1d16bfda56f15165d39e0ffa360a11123.tar.gz
+f07ed88d9b2e73eeb6ff82a811d7fad5d68bebf0a9ccc6c6df7678687b9a769e7be2efe8143be5c97bdbb7666ce76965a260335daa5ae07992c20e309b3b1cef egl-registry-a0bca08de07c7d7651047bedc0b653cfaaa4f2ae.tar.gz
+c9ace7124b56307e47c9d220d9cb5aed698509245cc0502f7fa1d8df14c61aaf0a2ef442ce36576193953bb7e39df214ad72e1cbc720d121920bec9e430a3d50 highway-424360251cdcfc314cfc528f53c872ecd63af0f0.tar.gz
+8075f78d06ac5cbc0ebc525fc070fe323306d4798d02cbce0b6610da4afb11a12a6e242bb818af7b3efcfc97262d2e6b638fef65cf974698448992872e47e692 imgui-55d35d8387c15bf0cfd71861df67af8cfbda7456.tar.gz
+463640fc5868f8d1201a17be5ddb61c65b1ea3513e19093aa1b678281cae4fae873b50a05a7e57846e640c3fe1fd0d297a712dc92f6c4697e98464ca7c675a58 libavif-f49462dc93784bf34148715eee36ab6697ca0b35.tar.gz
+6964a6be9eecf06ac67e56f3b2e88aade18335140c53726f3385161d279d2dcc96bfb5bff8e9e77858326e2ce26bec2e21682ab46ad001a6e1f789bb373a7ee3 libgav1-0fb779c1e169fe6c229cd1fa9cc6ea6feeb441da.tar.gz
+0ec9b93c6c2c82538b768c167e591cb7db5b0557f484fffc6b3c4a2eeff05c97e6278002ae83fb021dda26a75904fc65a21c006675ebbf9836c1379d45ac6280 libjxl-a205468bc5d3a353fb15dae2398a101dff52f2d3.tar.gz
+6085a21c2b6c428166a4fe030ac05cde79d1f39f16f15267a58c639bf8e23f95e8380f73dcb7714ec0a2002db348b9af3b4a5ca783f5b4a5db5f7aeb66abcd2e libyuv-d248929c059ff7629a85333699717d7a677d8d96.tar.gz
+e3ed6de28fc27f7fae01d0f39a95817246be7658e2233e2b8c7933bec834a48508cddd445fa881755c064e8e3e0ae00d9b9c169382b904e8e19c8a2f8597a5f5 microhttpd-748945ec6f1c67b7efc934ab0808e1d32f2fb98d.tar.gz
+fd99870179bef97db6d0007652505e1555cdb14f4cad1c582e449cc3b61cdaf5a3de395e9569d6d367927a16aad6a277771db223a99f14192d56b3fa30615c30 oboe-b02a12d1dd821118763debec6b83d00a8a0ee419.tar.gz
+6f7bde922561aa495d93ec274009724feaeb3e03e619adfaa7ce520e5d11a83f93462ccc2f2e9c4aa387ace61912196a1ecfd90cdc5672f088ba1b0c3e62b53d opengl-registry-14b80ebeab022b2c78f84a573f01028c96075553.tar.gz
+a903210bf29bf1d15c54e69cd6734a0b4983cba8629a0ac2229270fe67765fb21cc94008ba6f8f865106007dc7923cf7b937b654113dbac92d1850760c3f571f perfetto-93885509be1c9240bc55fa515ceb34811e54a394.tar.gz
+5920bd7a0c1e9bc2d4e231b92587910b30022d5d35e3b0c64c057c2eff49d9f9f380a4f3a733a9f4833d38ffd2d9d0dc559502df5e14df720f2b6453a5e0f42a piex-bb217acdca1cc0c16b704669dd6f91a1b509c406.tar.gz
+185c3964f9d0f46a3fb30637c4b83ce1015efcc1bca62b6ed0fdbf67d4c72ede792ba71411552a183d9bc4f74c72ecc1dc78941300594d4a5bac9dcdc2661c30 vulkanmemoryallocator-7de5cc00de50e71a3aab22dea52fbb7ff4efceb6.tar.gz
+bcf10b8a4dc9bcbf066e0d198e89bd4c67c0640ba69bb06aedeb27de468011eb7ab4656d2d93749f22f9221eb6a71938bf59c084cb88c4b39aa6d0f584c9043f vulkan-deps-8a3971e5e9c5cddc437d1cf5e4ac1ed0728d6a49.tar.gz
+2112eda633b08dd6a6d17ad54d299a301e7b0d3a0c8f27e7073eb98c4ba5c9375fe60cc838b263daf4ad535533192acbcd28a30860cdf99849834b3e6a421b19 spirv-cross-12542fc6fc05000e04742daf93892a0b10edbe80.tar.gz
+95a11bb56ffcad5faff738d58d9c7cbb146462268e5a7a8ba4e19fb18c35f881f59bd35354d46ae7569f41b9f3eebe44add0f62f6f607d7a8db0edb80ec79241 spirv-headers-bdbfd019be6952fd8fa9bd5606a8798a7530c853.tar.gz
+c8bcba6e3d913a8b6004f121bb505bed1f4ecba3fcf0eeb29507c8f0a5d4995f38e75194f1ff9721cf254530d7f88356c79055e478dcca2d145513a29866c68c spirv-tools-e7c6084fd1d6d6f5ac393e842728d8be309688ca.tar.gz
+b599c509f624546d18143c0058402c678f6db5fd0436940a4ed0fe609e93552a0426ad7112bcf8bc5a55f25b68cf94dde66c6aa5c66515cecb85cd5a387902a1 vello-ef2630ad9c647b90863cb0915701d54725733968.tar.gz
+d627cb32bbd4b8886c7eb92686156f6c79e4d40cba2b9e05583241853b153ea6456fc567635f14cf8a70a9e153a9f288516c06b7194b52151d552d9122c4e694 vulkan-headers-9e61870ecbd32514113b467e0a0c46f60ed222c7.tar.gz
+d4cd1b1d78023df2fc31f18a277b22714850eb7639c0a5525e123316060691ac3b7a48c7a04141cec79f5df0a82c24b4f2bcb7d67a36e48195f01ba6efd8d1eb vulkan-tools-80b010b1e1b08c1f092fb2bfa337faadf8ea1ba3.tar.gz
+6b72af9439d2acf7052f23d87588a027b457a04ba99d1573de1f9f85898607a01832cabbd5b8ddf5f5e91eaa5757933181e03dbf2aa6679f514b99889a019b45 wuffs-a0041ac0310b3156b963e2f2bea09245f25ec073.tar.gz
+"
diff --git a/testing/skribilo/0001-tests-Determine-current-test-runner-before-test-end-.patch b/testing/skribilo/0001-tests-Determine-current-test-runner-before-test-end-.patch
deleted file mode 100644
index 8144d7c8262..00000000000
--- a/testing/skribilo/0001-tests-Determine-current-test-runner-before-test-end-.patch
+++ /dev/null
@@ -1,114 +0,0 @@
-From 3024b43d6de447281d45150ea41bf096ddd210b2 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?S=C3=B6ren=20Tempel?= <soeren+git@soeren-tempel.net>
-Date: Fri, 18 Jun 2021 06:34:51 +0200
-Subject: [PATCH] tests: Determine current test runner before test-end is
- called
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-According to SRFI 64 test-end will remove the test-runner installed by
-the matching test-begin. As such, it seems that test-runner-current will
-return #f, if called after test-end. Since all skribilo test cases call
-test-runner-current after test-end, the following exception is currently
-thrown:
-
- Backtrace:
- In ice-9/boot-9.scm:
- 1752:10 6 (with-exception-handler _ _ #:unwind? _ # _)
- In unknown file:
- 5 (apply-smob/0 #<thunk 7fe66b7d4ee0>)
- In ice-9/boot-9.scm:
- 724:2 4 (call-with-prompt _ _ #<procedure default-prompt-handle…>)
- In ice-9/eval.scm:
- 619:8 3 (_ #(#(#<directory (guile-user) 7fe66b7cec80>)))
- In ice-9/boot-9.scm:
- 2835:4 2 (save-module-excursion _)
- 4380:12 1 (_)
- In /home/soeren/src/aports/testing/skribilo/src/skribilo-0.9.5/tests/ast.test:
- 116:9 0 (_)
-
-Thereby always causing all tests, as executed by `make test`, to fail. I
-am not too familiar with guile so it is unclear to me how the current
-code ever worked. My proposed patch stores the current failure count in
-a local variable before invoking test-end, thereby fixing the exception
-above.
-
-While at it, I also replaced the test-runner-current procedure with
-test-runner-get since the latter throws an exception if the test runner
-isn't set (making similar issues easier to debug in the future).
-Furthermore, I replaced the comparison with zero with the zero?
-predicate for readability.
----
- tests/ast.test | 7 +++----
- tests/engines/info.test | 7 +++----
- tests/location.test | 7 +++----
- tests/resolve.test | 7 +++----
- 4 files changed, 12 insertions(+), 16 deletions(-)
-
-diff --git a/tests/ast.test b/tests/ast.test
-index 8b8db48..5258eb9 100644
---- a/tests/ast.test
-+++ b/tests/ast.test
-@@ -110,7 +110,6 @@
- (equal? (map markup-ident lst)
- '("0" "1" "2"))))
-
--(test-end "ast")
--
--
--(exit (= (test-runner-fail-count (test-runner-current)) 0))
-+(let ((failures (test-runner-fail-count (test-runner-get))))
-+ (test-end "ast")
-+ (exit (zero? failures)))
-diff --git a/tests/engines/info.test b/tests/engines/info.test
-index ea3f17e..72108cd 100644
---- a/tests/engines/info.test
-+++ b/tests/engines/info.test
-@@ -86,10 +86,9 @@
- (equal? prev "c")
- (not next))))))
-
--(test-end "info")
--
--
--(exit (= (test-runner-fail-count (test-runner-current)) 0))
-+(let ((failures (test-runner-fail-count (test-runner-get))))
-+ (test-end "info")
-+ (exit (zero? failures)))
-
- ;; Local Variables:
- ;; coding: utf-8
-diff --git a/tests/location.test b/tests/location.test
-index ae6c462..f09fe20 100644
---- a/tests/location.test
-+++ b/tests/location.test
-@@ -86,10 +86,9 @@
- (section :title \"baz\" ; 5
- (p [Paragraph.]))))") ; 6
-
--(test-end "location")
--
--
--(exit (= (test-runner-fail-count (test-runner-current)) 0))
-+(let ((failures (test-runner-fail-count (test-runner-get))))
-+ (test-end "location")
-+ (exit (zero? failures)))
-
- ;; Local Variables:
- ;; eval: (put 'call-with-code 'scheme-indent-function 1)
-diff --git a/tests/resolve.test b/tests/resolve.test
-index 1241aab..0f8bcb2 100644
---- a/tests/resolve.test
-+++ b/tests/resolve.test
-@@ -213,7 +213,6 @@
- (ch* (document-lookup-node doc "c")))
- (eq? ch ch*))))
-
--(test-end "resolve")
--
--
--(exit (= (test-runner-fail-count (test-runner-current)) 0))
-+(let ((failures (test-runner-fail-count (test-runner-get))))
-+ (test-end "resolve")
-+ (exit (zero? failures)))
diff --git a/testing/skribilo/APKBUILD b/testing/skribilo/APKBUILD
deleted file mode 100644
index 6ff9a189648..00000000000
--- a/testing/skribilo/APKBUILD
+++ /dev/null
@@ -1,40 +0,0 @@
-# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
-# Maintainer: Sören Tempel <soeren+alpine@soeren-tempel.net>
-pkgname=skribilo
-pkgver=0.9.5
-pkgrel=2
-pkgdesc="A free document production tool for structured documents"
-url="https://www.nongnu.org/skribilo"
-arch="all"
-license="GPL-3.0-or-later"
-depends="guile guile-reader imagemagick"
-makedepends="guile-dev"
-# Don't split -dev: https://gitlab.alpinelinux.org/alpine/aports/-/issues/12783
-subpackages="$pkgname-doc"
-options="!strip" # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=907061
-source="https://download.savannah.nongnu.org/releases/skribilo/skribilo-$pkgver.tar.gz
- 0001-tests-Determine-current-test-runner-before-test-end-.patch"
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-22dff4523039792bd3662f9f1302569bfb83d92b7106ae22b8926e264b00932ea50ab753bb83aed499d0aa651d0fe99fdfd28b83956ec3ad84b81078391fe014 skribilo-0.9.5.tar.gz
-c2265ffec762ea99a4e99bb793e3814fe9d93092c3b117f8d471cb48feaf05d93c5492a3e228df7bf23be6f45b9d074f5ae462f286ca986df02f3e9869b9ccfa 0001-tests-Determine-current-test-runner-before-test-end-.patch
-"
diff --git a/testing/slick-greeter/APKBUILD b/testing/slick-greeter/APKBUILD
index e94c3fbc9b5..0e6f9124030 100644
--- a/testing/slick-greeter/APKBUILD
+++ b/testing/slick-greeter/APKBUILD
@@ -1,15 +1,18 @@
# Contributor: David Demelier <markand@malikania.fr>
# Maintainer: David Demelier <markand@malikania.fr>
pkgname=slick-greeter
-pkgver=1.5.3
-pkgrel=0
+pkgver=2.0.3
+pkgrel=1
pkgdesc="a slick-looking LightDM greeter"
url="https://github.com/linuxmint/slick-greeter"
-arch="all !s390x !riscv64" # limited by lightdm
+# s390x: mainframe
+arch="all !s390x"
license="GPL-3.0-only"
-makedepends="automake autoconf libtool libcanberra-dev lightdm-dev gnome-common vala"
+makedepends="automake autoconf intltool libtool libcanberra-dev lightdm-dev vala xapp-dev"
subpackages="$pkgname-doc $pkgname-lang"
-source="$pkgname-$pkgver.tar.gz::https://github.com/linuxmint/slick-greeter/archive/refs/tags/$pkgver.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/linuxmint/slick-greeter/archive/refs/tags/$pkgver.tar.gz
+ get-rid-of-gnome-common.patch
+ "
options="!check" # No tests
prepare() {
@@ -33,5 +36,6 @@ package() {
}
sha512sums="
-212c8cddb93516fc54121d97e9bc0edaa0d225482ff14e7b9f6eb70280a13d9cb0842a7a9049284d12b791ed3af2019a62d55d06cf226c6d50225717df410b57 slick-greeter-1.5.3.tar.gz
+db6424e68f547d95fb67c835a8e2a842232cadf92fbded7a329c9e4ed8fd9588ee0914c92a7f11b97d28859e3a8ef2885b6b4cea73214d5693074397edbb7279 slick-greeter-2.0.3.tar.gz
+1060172686538ad92f58abb7be80cdc99a6fd914e16700c4ea4d95a99abf09f82a05181961961732adce1d505787f93aa73d744e12c8e019e084fef5b28f8081 get-rid-of-gnome-common.patch
"
diff --git a/testing/slick-greeter/get-rid-of-gnome-common.patch b/testing/slick-greeter/get-rid-of-gnome-common.patch
new file mode 100644
index 00000000000..5b626a9c5f3
--- /dev/null
+++ b/testing/slick-greeter/get-rid-of-gnome-common.patch
@@ -0,0 +1,84 @@
+From 52a1b5970534790becd977894545cacee92d2552 Mon Sep 17 00:00:00 2001
+From: Jakko3 <jahau@rocketmail.com>
+Date: Mon, 12 Feb 2024 20:02:51 +0100
+Subject: [PATCH] Get rid of gnome-common build dependency (#231)
+
+"gnome-common" is deprecated. Replace the autogen.sh script by the
+template suggested at the gnome-common migration page [1], adding
+the mentioned aclocal line.
+
+[1] https://wiki.gnome.org/Projects/GnomeCommon/Migration
+---
+ autogen.sh | 45 ++++++++++++++++++++++++++++++++-------------
+ debian/control | 1 -
+ 2 files changed, 32 insertions(+), 14 deletions(-)
+
+diff --git a/autogen.sh b/autogen.sh
+index 7ac1a76..efc3e5f 100755
+--- a/autogen.sh
++++ b/autogen.sh
+@@ -1,20 +1,39 @@
+ #!/bin/sh
+ # Run this to generate all the initial makefiles, etc.
++test -n "$srcdir" || srcdir=$(dirname "$0")
++test -n "$srcdir" || srcdir=.
+
+-srcdir=`dirname $0`
+-test -z "$srcdir" && srcdir=.
++olddir=$(pwd)
+
+-REQUIRED_AUTOMAKE_VERSION=1.7
++cd $srcdir
+
+-(test -f $srcdir/configure.ac \
+- && test -d $srcdir/src) || {
+- echo -n "**Error**: Directory "\`$srcdir\'" does not look like the"
+- echo " top-level slick-greeter directory"
+- exit 1
++(test -f configure.ac) || {
++ echo "*** ERROR: Directory '$srcdir' does not look like the top-level project directory ***"
++ exit 1
+ }
+
+-which gnome-autogen.sh || {
+- echo "You need to install gnome-common from the GNOME CVS"
+- exit 1
+-}
+-. gnome-autogen.sh
++# shellcheck disable=SC2016
++PKG_NAME=$(autoconf --trace 'AC_INIT:$1' configure.ac)
++
++if [ "$#" = 0 -a "x$NOCONFIGURE" = "x" ]; then
++ echo "*** WARNING: I am going to run 'configure' with no arguments." >&2
++ echo "*** If you wish to pass any to it, please specify them on the" >&2
++ echo "*** '$0' command line." >&2
++ echo "" >&2
++fi
++
++aclocal --install || exit 1
++autoreconf --verbose --force --install || exit 1
++
++cd "$olddir"
++if [ "$NOCONFIGURE" = "" ]; then
++ $srcdir/configure "$@" || exit 1
++
++ if [ "$1" = "--help" ]; then
++ exit 0
++ else
++ echo "Now type 'make' to compile $PKG_NAME" || exit 1
++ fi
++else
++ echo "Skipping configure process."
++fi
+diff --git a/debian/control b/debian/control
+index 8bff7bd..5340245 100644
+--- a/debian/control
++++ b/debian/control
+@@ -6,7 +6,6 @@ Standards-Version: 4.6.1
+ Build-Depends: debhelper-compat (= 12),
+ at-spi2-core,
+ dbus-x11,
+- gnome-common,
+ fonts-ubuntu,
+ libcanberra-dev,
+ libgtk-3-dev,
diff --git a/testing/slides/APKBUILD b/testing/slides/APKBUILD
deleted file mode 100644
index d1b47d725b9..00000000000
--- a/testing/slides/APKBUILD
+++ /dev/null
@@ -1,28 +0,0 @@
-# Contributor: Grigory Kirillov <txgk@bk.ru>
-# Maintainer: Grigory Kirillov <txgk@bk.ru>
-pkgname=slides
-pkgver=0.8.0
-pkgrel=1
-pkgdesc="Terminal based presentation tool"
-url="http://maaslalani.com/slides"
-arch="all"
-license="MIT"
-makedepends="go"
-checkdepends="bash"
-source="https://github.com/maaslalani/slides/archive/v$pkgver/slides-v$pkgver.tar.gz"
-
-build() {
- make build
-}
-
-check() {
- make test
-}
-
-package() {
- install -Dm755 slides -t "$pkgdir"/usr/bin/
-}
-
-sha512sums="
-4cfa04f05a4162110671752bfd8806b2a584c6e99d00b56e17758ebd4d30ad7873181adb93df4d6fa0c69fd08a25936e0a06a303bba04590094adb366b13a29e slides-v0.8.0.tar.gz
-"
diff --git a/testing/slidge-matridge/APKBUILD b/testing/slidge-matridge/APKBUILD
new file mode 100644
index 00000000000..6270d673dfe
--- /dev/null
+++ b/testing/slidge-matridge/APKBUILD
@@ -0,0 +1,67 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=slidge-matridge
+pkgver=0_git20240208
+_gitrev=c1f6bbf94971f4b6e378e7959c717da7cf41d842
+pkgrel=1
+pkgdesc="Feature-rich Matrix to XMPP puppeteering gateway"
+url="https://slidge.im/matridge/"
+arch="noarch"
+license="AGPL-3.0-or-later"
+depends="
+ py3-async-lru
+ py3-atomicwrites
+ py3-beautifulsoup4
+ py3-cachetools
+ py3-matrix-nio
+ py3-olm
+ py3-peewee
+ py3-slidge-style-parser
+ slidge
+ "
+makedepends="
+ py3-gpep517
+ py3-poetry-core
+ "
+checkdepends="
+ py3-pytest
+ py3-pytest-asyncio
+ py3-xmldiff
+ "
+pkgusers="slidge"
+pkggroups="slidge"
+subpackages="$pkgname-openrc $pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://git.sr.ht/~nicoco/matridge/archive/$_gitrev.tar.gz
+ matridge.conf
+ "
+builddir="$srcdir/matridge-$_gitrev"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" .dist/*.whl
+
+ install -dm750 -o slidge -g slidge \
+ "$pkgdir"/etc/slidge
+ install -Dm640 -o slidge -g slidge \
+ "$srcdir"/matridge.conf \
+ -t "$pkgdir"/etc/slidge/
+
+ install -dm755 "$pkgdir"/etc/init.d
+ ln -s slidge "$pkgdir"/etc/init.d/slidge.matridge
+}
+
+sha512sums="
+23d0ca3574812c62ffcbee111499eb04ac0d54115ee619c121e48251780c1b4f6d9bdc668f2e00af5d1fc4fe85cdd35bc5c7a08a4c6e134298cf018e59fe1fc6 slidge-matridge-0_git20240208.tar.gz
+e5f5c7f1f0ad2c96d04f0f2eb8eaea856db99f0cab92a05b080bce83a2fea4848a0573ff5e0490dee92c5d6d66dd1201f8ff2ab5c5717ae11f2ff7a193ac8a2d matridge.conf
+"
diff --git a/testing/slidge-matridge/matridge.conf b/testing/slidge-matridge/matridge.conf
new file mode 100644
index 00000000000..d62b8ecee6d
--- /dev/null
+++ b/testing/slidge-matridge/matridge.conf
@@ -0,0 +1,8 @@
+# See /usr/share/doc/slidge/examples/slidge-example.ini
+# from the slidge-doc subpackage,
+# https://slidge.im/core/admin/config/#common-config
+# and https://slidge.im/matridge/config.html for more info
+
+legacy-module=matridge
+secret=CHANGE-TO-SOMETHING-SAFE
+jid=matridge.example.com
diff --git a/testing/slidge/APKBUILD b/testing/slidge/APKBUILD
new file mode 100644
index 00000000000..8d7cadc4f6c
--- /dev/null
+++ b/testing/slidge/APKBUILD
@@ -0,0 +1,79 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=slidge
+pkgver=0.1.0
+pkgrel=1
+pkgdesc="XMPP puppeteering gateway framework"
+url="https://slidge.im/"
+arch="noarch"
+license="AGPL-3.0-or-later"
+depends="
+ py3-aiohttp
+ py3-blurhash
+ py3-configargparse
+ py3-magic
+ py3-numpy
+ py3-pickle-secure
+ py3-pillow
+ py3-qrcode
+ py3-slixmpp
+ "
+makedepends="
+ py3-gpep517
+ py3-poetry-core
+ "
+checkdepends="
+ py3-pytest
+ py3-pytest-asyncio
+ py3-xmldiff
+ "
+install="$pkgname.pre-install"
+pkgusers="slidge"
+pkggroups="slidge"
+subpackages="$pkgname-doc $pkgname-openrc $pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://git.sr.ht/~nicoco/slidge/archive/v$pkgver.tar.gz
+ slidge.initd
+ slidge.confd
+ common.conf.example
+ "
+builddir="$srcdir/$pkgname-v$pkgver"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest --log-level WARNING
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" .dist/*.whl
+
+ install -dm750 -o slidge -g slidge \
+ "$pkgdir"/etc/slidge \
+ "$pkgdir"/etc/slidge/conf.d \
+ "$pkgdir"/var/lib/slidge \
+ "$pkgdir"/var/log/slidge
+
+ install -Dm640 -o slidge -g slidge -t "$pkgdir"/etc/slidge/conf.d/ \
+ "$srcdir"/common.conf.example
+
+ install -Dm644 -t "$pkgdir"/usr/share/doc/$pkgname/examples/ \
+ docs/source/admin/examples/ejabberd.yaml \
+ docs/source/admin/examples/prosody.cfg.lua \
+ dev/confs/*
+
+ install -Dm755 "$srcdir"/slidge.initd "$pkgdir"/etc/init.d/slidge
+ install -Dm644 "$srcdir"/slidge.confd "$pkgdir"/etc/conf.d/slidge
+}
+
+sha512sums="
+68124fa307cde0b6c79471d1674e94aa73a6fcdf4009cf1715dcce761bbdd346c808c84737a57083c0551ca7b2dd29de21caf9c14bff15171743bed93ff40e12 slidge-0.1.0.tar.gz
+a0a9f2578060dac366dc5198dfd6481f869dc225ba7da0bfaf9213382f7e08fdebe965418ba287dce60a0e1b01433ce8430de52574b2f16b335059383147eb76 slidge.initd
+27dac3c86b047012c4c835cffb497ad8aa059a69d03b6fa0ca3368222a3fcb929f181c8aac3edf25d2081d32f06673256d22f17ad3c55cae87493533a5115053 slidge.confd
+a67660cb0f1be38187affa998c0ba41fed5f8b48da82dea28849b8ead855fd4ab244952020ae2509a313f0bb0e6590cb2a4fdc2d6f264919fbf9430be9bf6cc4 common.conf.example
+"
diff --git a/testing/slidge/common.conf.example b/testing/slidge/common.conf.example
new file mode 100644
index 00000000000..0086446a948
--- /dev/null
+++ b/testing/slidge/common.conf.example
@@ -0,0 +1,7 @@
+# More info at https://slidge.im/core/admin/config
+
+admins=root@example.com
+upload-service=upload.example.com
+user-jid-validator=.*@example.com
+server=localhost
+port=5347
diff --git a/testing/slidge/slidge.confd b/testing/slidge/slidge.confd
new file mode 100644
index 00000000000..9a2fa05f233
--- /dev/null
+++ b/testing/slidge/slidge.confd
@@ -0,0 +1,17 @@
+# Configuration for /etc/init.d/slidge
+
+# Specify the location of the INI config file for a Slidge gateway.
+# If an initscript called slidge.matridge is symlinked to slidge,
+# the default config file will be /etc/slidge/matridge.conf
+#SLIDGE_CONFIG="/etc/slidge/slidge.conf"
+
+# If an initscript called slidge.matridge is symlinked to slidge,
+# the default log file will be /var/log/slidge/matridge.log
+#output_log=/var/log/slidge/slidge.log"
+#error_log=/var/log/slidge/slidge.log"
+
+# Command-line options for running /usr/bin/slidge
+#command_args=""
+
+# Comment out to disable process supervisor
+supervisor=supervise-daemon
diff --git a/testing/slidge/slidge.initd b/testing/slidge/slidge.initd
new file mode 100644
index 00000000000..113a521b184
--- /dev/null
+++ b/testing/slidge/slidge.initd
@@ -0,0 +1,37 @@
+#!/sbin/openrc-run
+
+description="XMPP puppeteering gateway"
+
+instance_name="${RC_SVCNAME#*.}"
+instance_name="${instance_name:-slidge}"
+
+: ${SLIDGE_CONFIG:="/etc/slidge/$instance_name.conf"}
+export SLIDGE_CONFIG
+
+: "${output_log:=/var/log/slidge/$instance_name.log}"
+: "${error_log:=/var/log/slidge/$instance_name.log}"
+
+command=/usr/bin/slidge
+command_background="yes"
+command_user="slidge:slidge"
+pidfile="/run/${RC_SVCNAME}.pid"
+directory="/var/lib/slidge"
+
+required_files="$SLIDGE_CONFIG"
+
+depend() {
+ need localmount net
+ after firewall jabber-server
+ use dns
+}
+
+start_pre() {
+ [ -n "$output_log" ] && checkpath -q -f -m 0640 \
+ -o "$command_user" "$output_log"
+
+ [ -n "$error_log" ] && checkpath -q -f -m 0640 \
+ -o "$command_user" "$error_log"
+
+ checkpath -q -f -m 0640 -o "$command_user" "$SLIDGE_CONFIG"
+ checkpath -q -d -m 0750 -o "$command_user" "$directory"
+}
diff --git a/testing/slidge/slidge.pre-install b/testing/slidge/slidge.pre-install
new file mode 100644
index 00000000000..4af15823aa2
--- /dev/null
+++ b/testing/slidge/slidge.pre-install
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+addgroup -S slidge 2>/dev/null
+adduser -S -D -H \
+ -h /var/lib/slidge \
+ -s /sbin/nologin \
+ -G slidge \
+ -g "Slidge XMPP puppeteering gateway" \
+ slidge 2>/dev/null
+
+exit 0
diff --git a/testing/slrn/APKBUILD b/testing/slrn/APKBUILD
deleted file mode 100644
index 6f32c0f416e..00000000000
--- a/testing/slrn/APKBUILD
+++ /dev/null
@@ -1,39 +0,0 @@
-# Maintainer: Steffen Lange <steffen@stelas.de>
-pkgname=slrn
-pkgver=1.0.3
-pkgrel=6
-pkgdesc="An open source text-based news client"
-url="https://slrn.info/"
-arch="all"
-license="GPL-2.0-or-later"
-makedepends="openssl-dev slang-dev ncurses-dev"
-subpackages="$pkgname-doc"
-source="http://jedsoft.org/releases/slrn/slrn-${pkgver}a.tar.bz2
- terminfo.patch"
-
-prepare() {
- default_prepare
- update_config_guess
- update_config_sub
-}
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --enable-setgid-code \
- --with-slrnpull \
- --with-ssl \
- --enable-spoilers
- make
-}
-
-package() {
- make -j1 DESTDIR="$pkgdir" install
- install -Dm644 doc/slrn.rc "$pkgdir"/etc/slrnrc
-}
-
-sha512sums="11cef2dfe41f441af15acc22fb675cf607e932f0dd6d4a998e51ecda05c9a50d7abf10a3e693ffc857ad77e09634f460404e4d5b289169e7bbffdaf5d6d565a3 slrn-1.0.3a.tar.bz2
-2a1ec6e07bbf025047ad398c64f3ecab2652558d480140ad7d0223d0813690f7f8a40d76d1664c2fec33cb0534619d1caa3a7328e89f806db8d12eb68aaf58e3 terminfo.patch"
diff --git a/testing/slrn/terminfo.patch b/testing/slrn/terminfo.patch
deleted file mode 100644
index 18ba7b45334..00000000000
--- a/testing/slrn/terminfo.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-Search /etc/terminfo where Alpine Linux installs a few of its terminfo files
-
---- a/configure
-+++ b/configure
-@@ -8561,6 +8561,7 @@
- MISC_TERMINFO_DIRS=""
- fi
- JD_Terminfo_Dirs="$MISC_TERMINFO_DIRS \
-+ /etc/terminfo \
- /usr/lib/terminfo \
- /usr/share/terminfo \
- /usr/share/lib/terminfo \
diff --git a/testing/slurm/APKBUILD b/testing/slurm/APKBUILD
index 71fd7aebbd7..997602db7f0 100644
--- a/testing/slurm/APKBUILD
+++ b/testing/slurm/APKBUILD
@@ -15,7 +15,7 @@ builddir="$srcdir/$pkgname-upstream-$pkgver"
build() {
abuild-meson . output
- meson compile ${JOBS:+-j ${JOBS}} -C output
+ meson compile -C output
}
package() {
diff --git a/testing/smlsharp/APKBUILD b/testing/smlsharp/APKBUILD
index 8dfbda5784f..d4855ad8a5c 100644
--- a/testing/smlsharp/APKBUILD
+++ b/testing/smlsharp/APKBUILD
@@ -2,15 +2,17 @@
# Maintainer: Hazem <hazem-alpine@riseup.net>
pkgname=smlsharp
pkgver=4.0.0
-pkgrel=0
+pkgrel=1
pkgdesc="A new programming language in the Standard ML family"
url="https://smlsharp.github.io"
arch="x86_64"
license="MIT"
-_llvm="llvm12"
-depends="massivethreads-dev $_llvm"
-makedepends="gmp-dev xz $_llvm-dev yajl chrpath"
-source="https://github.com/smlsharp/smlsharp/releases/download/v$pkgver/smlsharp-$pkgver.tar.gz"
+_llvmver=14
+depends="massivethreads-dev llvm$_llvmver"
+makedepends="gmp-dev xz llvm$_llvmver-dev yajl chrpath"
+source="https://github.com/smlsharp/smlsharp/releases/download/v$pkgver/smlsharp-$pkgver.tar.gz
+ llvm14.patch
+ "
subpackages="$pkgname-doc"
build() {
@@ -21,7 +23,8 @@ build() {
--sysconfdir=/etc \
--mandir=/usr/share/man \
--localstatedir=/var \
- --with-llvm=/usr/lib/$_llvm
+ --with-llvm=/usr/lib/llvm$_llvmver \
+ --with-incompatible-llvm
make
}
@@ -36,4 +39,5 @@ package() {
sha512sums="
d3c37c2c1ae4cdf75e96f7a50ae37d74b689e66f1c4db2ad9ba11ec9f5d71af37ff91a3d8d93012ba155d8674bb3c62aeec1bb4437ca8b66fbcbd958ecdf9c4d smlsharp-4.0.0.tar.gz
+c222b41db552e523d61404f9ec1bf71a37f3b6a6212b9a2e0f4c7df7efea850aa68cb7dc0a5de10fce967b4228129a4504dda0471ab4445eeb780808acc1e875 llvm14.patch
"
diff --git a/testing/smlsharp/llvm14.patch b/testing/smlsharp/llvm14.patch
new file mode 100644
index 00000000000..a80e6be41b3
--- /dev/null
+++ b/testing/smlsharp/llvm14.patch
@@ -0,0 +1,18 @@
+partly taken from https://github.com/smlsharp/smlsharp/commit/351e863ae30b66af10158557f6869e2531944304
+--
+diff --git a/src/llvm/main/smlsharp_gc.cpp b/src/llvm/main/smlsharp_gc.cpp
+index 17bbfd3..0081e49 100644
+--- a/src/llvm/main/smlsharp_gc.cpp
++++ b/src/llvm/main/smlsharp_gc.cpp
+@@ -8,7 +8,11 @@
+
+ #include <llvm/Config/llvm-config.h>
+ #include <llvm/CodeGen/AsmPrinter.h>
++#if LLVM_VERSION_MAJOR >= 13
++#include <llvm/IR/GCStrategy.h>
++#else
+ #include <llvm/CodeGen/GCStrategy.h>
++#endif
+ #include <llvm/CodeGen/GCMetadata.h>
+ #include <llvm/CodeGen/GCMetadataPrinter.h>
+ #include <llvm/MC/MCStreamer.h>
diff --git a/testing/smplxmpp/APKBUILD b/testing/smplxmpp/APKBUILD
new file mode 100644
index 00000000000..6c812c049b7
--- /dev/null
+++ b/testing/smplxmpp/APKBUILD
@@ -0,0 +1,44 @@
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=smplxmpp
+pkgver=0.9.3
+pkgrel=1
+pkgdesc="Simple XMPP command line client"
+url="https://codeberg.org/tropf/smplxmpp"
+arch="all"
+license="GPL-3.0-or-later"
+makedepends="
+ argp-standalone
+ cmake
+ gloox-dev
+ gnutls-dev
+ libidn-dev
+ samurai
+ spdlog-dev
+ zlib-dev
+ "
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://codeberg.org/tropf/smplxmpp/archive/v$pkgver.tar.gz
+ argp.patch
+ fmt10.patch
+ "
+builddir="$srcdir/$pkgname"
+options="!check" # checks require an xmpp server
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=MinSizeRel \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=True
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+cafbdb164fe6ab1b75bfd2d8244a3a8785b44e7bc6b1c88d0db941d1e04a9f067bd10f0539245efec61fbf74ef057349d27c451f19acd8fbba5ad10a73aaf45d smplxmpp-0.9.3.tar.gz
+df1abad52e9845712dd4f3fbd8f333e73e46c5a3bc0721364d9672a865bf605ede946d7853c5051549f20d26611bd6383557243334cdee9c382fd0325d96102b argp.patch
+35f016dcc53dd0a6abcfaf332907b8f54b9cd21b5ecdfa4ee7740a724c9ada80a58a0fae9b342637332df2c8b2c58168d82e9ccd1d9c03e30ae8271043e75b7c fmt10.patch
+"
diff --git a/testing/smplxmpp/argp.patch b/testing/smplxmpp/argp.patch
new file mode 100644
index 00000000000..a6ab7ea7d1b
--- /dev/null
+++ b/testing/smplxmpp/argp.patch
@@ -0,0 +1,24 @@
+diff --git a/bin/CMakeLists.txt b/bin/CMakeLists.txt
+index a0d7e5b..1829b6d 100644
+--- a/bin/CMakeLists.txt
++++ b/bin/CMakeLists.txt
+@@ -29,6 +29,7 @@ if (SMPLXMPP_BUILD_SMPLXMPP_NL)
+ target_compile_features(smplxmpp-nl PUBLIC cxx_std_11)
+
+ target_link_libraries(smplxmpp-nl PUBLIC
++ argp
+ smplxmpp_util
+ )
+
+diff --git a/cmake/smplxmpp_core.cmake b/cmake/smplxmpp_core.cmake
+index 2a7b16e..680bce7 100644
+--- a/cmake/smplxmpp_core.cmake
++++ b/cmake/smplxmpp_core.cmake
+@@ -22,6 +22,7 @@ target_compile_options(smplxmpp_core PRIVATE -Werror -Wall -Wextra)
+
+ target_link_libraries(smplxmpp_core PRIVATE "${SMPLXMPP_SPDLOG_LIBS}")
+ target_link_libraries(smplxmpp_core PUBLIC
++ argp
+ smplxmpp_util
+ gloox
+ )
diff --git a/testing/smplxmpp/fmt10.patch b/testing/smplxmpp/fmt10.patch
new file mode 100644
index 00000000000..4680680a1e5
--- /dev/null
+++ b/testing/smplxmpp/fmt10.patch
@@ -0,0 +1,43 @@
+--- a/src/chat.cc
++++ b/src/chat.cc
+@@ -60,7 +60,7 @@
+ }
+
+ void SmplXmppHandlerChat::handleMessage(const Message& msg, MessageSession* session) {
+- spdlog::trace("incoming message (type: {}) from '{}' (subject: '{}', thread: '{}'): '{}'", msg.subtype(), msg.from().full(), msg.subject(), msg.thread(), msg.body());
++ spdlog::trace("incoming message (type: {}) from '{}' (subject: '{}', thread: '{}'): '{}'", fmt::underlying(msg.subtype()), msg.from().full(), msg.subject(), msg.thread(), msg.body());
+
+ if (teardownHandshakeStarted()) {
+ spdlog::debug("received msg after shutdown has been initiated. ignoring.");
+@@ -116,7 +116,7 @@
+ }
+
+ void SmplXmppHandlerChat::handleMessageEvent(const JID& from, MessageEventType event) {
+- spdlog::trace("received message event: {} from: '{}'", event, from.full());
++ spdlog::trace("received message event: {} from: '{}'", fmt::underlying(event), from.full());
+ }
+
+ void SmplXmppHandlerChat::handleMessageSession(MessageSession* session) {
+@@ -165,6 +165,6 @@
+
+ void SmplXmppHandlerChat::sendSingleMsg(const MsgPrototype& msg) {
+ Message msgToSend(Message::MessageType::Chat, JID(msg.jid), msg.body);
+- spdlog::trace("sending message to '{}' (type: '{}'): '{}'", msg.jid, msgToSend.subtype(), msg.body);
++ spdlog::trace("sending message to '{}' (type: '{}'): '{}'", msg.jid, fmt::underlying(msgToSend.subtype()), msg.body);
+ j.send(msgToSend);
+ }
+--- a/src/xmpp.cc
++++ b/src/xmpp.cc
+@@ -231,9 +231,9 @@
+
+ void SmplXmppHandlerBase::handleLog(LogLevel level, LogArea area, const std::string& message) {
+ switch (level) {
+- case LogLevel::LogLevelDebug: spdlog::trace("[area {}] {}", area, message); break;
+- case LogLevel::LogLevelWarning: spdlog::warn("[area {}] {}", area, message); break;
+- case LogLevel::LogLevelError: spdlog::error("[area {}] {}", area, message); break;
++ case LogLevel::LogLevelDebug: spdlog::trace("[area {}] {}", fmt::underlying(area), message); break;
++ case LogLevel::LogLevelWarning: spdlog::warn("[area {}] {}", fmt::underlying(area), message); break;
++ case LogLevel::LogLevelError: spdlog::error("[area {}] {}", fmt::underlying(area), message); break;
+ }
+ }
+
diff --git a/testing/snac/APKBUILD b/testing/snac/APKBUILD
new file mode 100644
index 00000000000..174f6b2ba79
--- /dev/null
+++ b/testing/snac/APKBUILD
@@ -0,0 +1,40 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=snac
+pkgver=2.51
+pkgrel=0
+pkgdesc="Simple, minimalistic ActivityPub instance written in portable C"
+url="https://codeberg.org/grunfink/snac2"
+arch="all"
+license="MIT"
+makedepends="curl-dev openssl-dev"
+install="$pkgname.pre-install"
+pkgusers="snac"
+pkggroups="snac"
+subpackages="$pkgname-doc $pkgname-openrc"
+source="$pkgname-$pkgver.tar.gz::https://codeberg.org/grunfink/snac2/archive/$pkgver.tar.gz
+ snac.initd
+ "
+builddir="$srcdir/snac2"
+options="!check" # no test suite
+
+build() {
+ make
+}
+
+package() {
+ make install \
+ PREFIX="$pkgdir"/usr \
+ PREFIX_MAN="$pkgdir"/usr/share/man
+
+ install -dm750 -o snac -g snac "$pkgdir"/var/lib/snac
+
+ install -Dm644 LICENSE -t "$pkgdir"/usr/share/licenses/$pkgname/
+
+ install -Dm755 "$srcdir"/snac.initd "$pkgdir"/etc/init.d/snac
+}
+
+sha512sums="
+c1c755ab91999b34f5ffe7606796ca1ad8453b439aadf457611642c73c653e41d6bf4462185673aa991d3ec1be1f10da80b077d0384bb7a0e5571aa98e90461e snac-2.51.tar.gz
+8451eb37e5135b926a1a36b7f69d63cb76aa617ca3f9b9167f2284223582dcf66723ee67c51c6abc2d1605c41678d26f67ec6cb1bf920c61379dbf63f7852e1a snac.initd
+"
diff --git a/testing/snac/snac.initd b/testing/snac/snac.initd
new file mode 100644
index 00000000000..7b4f3684710
--- /dev/null
+++ b/testing/snac/snac.initd
@@ -0,0 +1,83 @@
+#!/sbin/openrc-run
+
+name=snac
+description="Snac is an ActivityPub server written in portable C"
+
+: ${SNAC_DATA:="/var/lib/snac/data"}
+
+extra_stopped_commands="setup purge"
+extra_commands="adduser deluser resetpwd"
+description_setup="Setup the database at ${SNAC_DATA}"
+description_purge="Purge old data from ${SNAC_DATA}"
+description_adduser="Add a new user to ${SNAC_DATA}"
+description_deluser="Delete a user from ${SNAC_DATA}"
+description_resetpwd="Reset password of user in ${SNAC_DATA}"
+
+command="/usr/bin/snac"
+command_args="httpd ${SNAC_DATA}"
+command_background="yes"
+command_user="snac:snac"
+pidfile="/run/${RC_SVCNAME}.pid"
+error_log="/var/log/snac.log"
+
+depend() {
+ need localmount net
+ after firewall
+}
+
+ensure_db_exists() {
+ if [ ! -f "${SNAC_DATA}/server.json" ]; then
+ setup || return 1
+ fi
+
+ return 0
+}
+
+start_pre() {
+ ensure_db_exists || return 1
+
+ checkpath -f -m 0640 -o "$command_user" "$error_log"
+ checkpath -d -m 0750 -o "$command_user" "${SNAC_DATA}"
+}
+
+setup() {
+ snac_exec init
+}
+
+purge() {
+ ensure_db_exists || return 1
+
+ ebegin "Purging old data from ${SNAC_DATA}"
+ snac_exec purge
+ eend $?
+}
+
+adduser() {
+ ensure_db_exists || return 1
+
+ snac_exec adduser
+}
+
+deluser() {
+ ensure_db_exists || return 1
+
+ read -p "Username: " username
+
+ snac_exec deluser $username
+}
+
+resetpwd() {
+ ensure_db_exists || return 1
+
+ read -p "Username: " username
+
+ snac_exec resetpwd $username
+}
+
+snac_exec() {
+ local subcmd="$1"
+ shift
+
+ start-stop-daemon --exec "$command" --user "$command_user" \
+ -- $subcmd "${SNAC_DATA}" $*
+}
diff --git a/testing/snac/snac.pre-install b/testing/snac/snac.pre-install
new file mode 100644
index 00000000000..74884f92567
--- /dev/null
+++ b/testing/snac/snac.pre-install
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+addgroup -S snac 2>/dev/null
+adduser -S -D -H \
+ -h /var/lib/snac \
+ -s /sbin/nologin \
+ -G snac \
+ -g "Snac minimalistic ActivityPub instance" \
+ snac 2>/dev/null
+
+exit 0
diff --git a/testing/snapper/APKBUILD b/testing/snapper/APKBUILD
index 500e3c098ee..ba7c130bf2e 100644
--- a/testing/snapper/APKBUILD
+++ b/testing/snapper/APKBUILD
@@ -1,43 +1,59 @@
# Contributor: Francesco Colista <fcolista@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=snapper
-pkgver=0.10.2
-pkgrel=1
+pkgver=0.10.7
+pkgrel=0
pkgdesc="Manage filesystem snapshots and allow undo of system modifications"
url="http://snapper.io"
-arch="all !armhf !armv7" # Fails to build on 32bit arches, see #12617
+arch="all"
license="GPL-2.0-or-later"
-options="!check" # 5 tests failing - https://github.com/openSUSE/snapper/issues/526
depends="dbus"
-makedepends="acl-dev autoconf automake bash boost-dev
- bsd-compat-headers btrfs-progs-dev json-c-dev
- dbus-dev docbook-xsl e2fsprogs-dev gettext-dev
- libtool libxml2-dev libxslt lvm2-dev ncurses-dev
+makedepends="
+ acl-dev
+ autoconf
+ automake
+ boost-dev
+ bsd-compat-headers
+ btrfs-progs-dev
+ dbus-dev
+ docbook-xsl
+ e2fsprogs-dev
+ gettext-dev
+ json-c-dev
+ libtool
+ libxml2-dev
+ libxslt
+ lvm2-dev
+ ncurses-dev
+ "
+subpackages="
+ $pkgname-dev
+ $pkgname-doc
+ $pkgname-lang
+ $pkgname-bash-completion
+ $pkgname-zsh-completion
"
-subpackages="$pkgname-dev $pkgname-doc $pkgname-lang"
source="$pkgname-$pkgver.tar.gz::https://github.com/openSUSE/snapper/archive/v$pkgver.tar.gz
- musl-stdout_stderr.patch
miss-tinfo-link-to-ncurses.patch
- drift-file-path.patch"
+ drift-file-path.patch
+ skip-locale-tests.patch
+ statvfs64.patch
+ "
prepare() {
default_prepare
- sed -e 's|etc/dbus-1/system.d|usr/share/dbus-1/system.d|' \
- -i data/Makefile.am
-
- autoreconf -fi
# rename cron scripts
sed -i -e 's@suse.de-@@g' scripts/Makefile.am
# copy cron scripts to /etc/periodic/* instead of /etc/cron.*
sed -i -e 's/cron\./periodic\//g' scripts/Makefile.am
# fix config location in cron scripts
- sed -i -e 's@/etc/sysconfig/@/etc/conf.d/@g' scripts/snapper-daily
- sed -i -e 's@/etc/sysconfig/@/etc/conf.d/@g' scripts/snapper-hourly
+ sed -i -e 's@/etc/sysconfig/@/etc/snapper/@g' scripts/snapper-daily
+ sed -i -e 's@/etc/sysconfig/@/etc/snapper/@g' scripts/snapper-hourly
+ autoreconf -fvi
}
build() {
- export CXXFLAGS="$CXXFLAGS -DMUSL_LIBC=1"
export LDFLAGS="$LDFLAGS -lintl"
./configure \
--build=$CBUILD \
@@ -49,9 +65,7 @@ build() {
--disable-pam \
--disable-zypp \
--disable-ext4 \
- --disable-systemd \
- JSONC_CFLAGS="-I/usr/include/json-c" \
- JSONC_LIBS="-ljson-c"
+ --disable-systemd
make
}
@@ -61,12 +75,13 @@ check() {
package() {
make DESTDIR="$pkgdir" install
- install -Dm644 data/sysconfig.snapper "$pkgdir"/etc/conf.d/$pkgname
+ install -Dm644 data/sysconfig.snapper "$pkgdir"/etc/snapper/$pkgname
}
sha512sums="
-bdda67908b054beee7285bb3ac97ce28276449d7719369135a7ffa74bce40000ebc89f4f059abe44f8cc7c3a09c46af446e812229290ddd10b2af053fefbc568 snapper-0.10.2.tar.gz
-5baf722996706146b62fd0a0d9b321496fb122e700af2d3dfd8272de2678f29c79bc2b1a03634b04aab3f226632dfdebc5674d3128737e85bcc71461e951d95b musl-stdout_stderr.patch
+bf098c941735b60554ff0711fa43b30ef3634e01178f5ee8ad44c65b757c3366bd5bf568cef3a787b2ddcc2fc63090056109250480e6bd360ebf27a8343373b8 snapper-0.10.7.tar.gz
3d264f7f9156342d5bad2ac78db9c8a30ea1ac25648245631a47d1495bb6610c6b39c28a5013741063df3c08f459388c0467caaedde5ad7cebb433eb432b7a70 miss-tinfo-link-to-ncurses.patch
c2470da8a5d62a37babdacd361051bae8fb3e1be157cb7eec1563a40825d41702f6f10bb619ffcab2ea8d7407405a543b0c47997c70a744c20cc3135c0532c1f drift-file-path.patch
+16f9991b0688c959977876e39e8ed9214627d3b3eacdf01a8aaef9540fc8add7d7c4f50abc4225183495acb161a4c6e5f6ee3790bf685fc845a6782647269a53 skip-locale-tests.patch
+dc77db919fc4bd64929e784d09c4a6ed50530b6a88b3a26f4ea341f09e71dbd74e07d1e9fea37f85305d0f251a5c302e1dbb700084d04a16dc2e7687ecc83815 statvfs64.patch
"
diff --git a/testing/snapper/musl-stdout_stderr.patch b/testing/snapper/musl-stdout_stderr.patch
deleted file mode 100644
index 1ed34b53104..00000000000
--- a/testing/snapper/musl-stdout_stderr.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-In musl libc stdout and stderr are macros, thus we need to
-undefine them to be able to use SystemCmd::stdout() and ::stderr()
-members without renaming them - which may be a better choice.
-
---- a/snapper/SystemCmd.h 2015-08-30 10:59:53.740184303 +0200
-+++ b/snapper/SystemCmd.h 2015-08-30 11:02:34.229187677 +0200
-@@ -32,6 +32,8 @@
- #include <list>
- #include <boost/noncopyable.hpp>
-
-+#undef stdout
-+#undef stderr
-
- namespace snapper
- {
diff --git a/testing/snapper/skip-locale-tests.patch b/testing/snapper/skip-locale-tests.patch
new file mode 100644
index 00000000000..273b1890e00
--- /dev/null
+++ b/testing/snapper/skip-locale-tests.patch
@@ -0,0 +1,13 @@
+diff --git a/testsuite/Makefile.am b/testsuite/Makefile.am
+index ccb84d3..5aaecff 100644
+--- a/testsuite/Makefile.am
++++ b/testsuite/Makefile.am
+@@ -7,7 +7,7 @@ AM_CPPFLAGS = -I$(top_srcdir) $(DBUS_CFLAGS)
+ LDADD = ../snapper/libsnapper.la ../dbus/libdbus.la -lboost_unit_test_framework
+
+ check_PROGRAMS = sysconfig-get1.test dirname1.test basename1.test \
+- equal-date.test dbus-escape.test cmp-lt.test humanstring.test uuid.test \
++ equal-date.test dbus-escape.test uuid.test \
+ table.test table-formatter.test csv-formatter.test json-formatter.test \
+ getopts.test scan-datetime.test root-prefix.test range.test limit.test
+
diff --git a/testing/snapper/statvfs64.patch b/testing/snapper/statvfs64.patch
new file mode 100644
index 00000000000..4f69e869ce8
--- /dev/null
+++ b/testing/snapper/statvfs64.patch
@@ -0,0 +1,15 @@
+--- a/snapper/FileUtils.cc
++++ b/snapper/FileUtils.cc
+@@ -387,9 +387,9 @@
+ std::pair<unsigned long long, unsigned long long>
+ SDir::statvfs() const
+ {
+- struct statvfs64 fsbuf;
+- if (fstatvfs64(dirfd, &fsbuf) != 0)
+- SN_THROW(IOErrorException(sformat("statvfs64 failed path:%s errno:%d (%s)", base_path.c_str(),
++ struct statvfs fsbuf;
++ if (fstatvfs(dirfd, &fsbuf) != 0)
++ SN_THROW(IOErrorException(sformat("statvfs failed path:%s errno:%d (%s)", base_path.c_str(),
+ errno, stringerror(errno).c_str())));
+
+ // f_bavail is used (not f_bfree) since df seems to do the
diff --git a/testing/snapraid/APKBUILD b/testing/snapraid/APKBUILD
index 20a0a73f8ca..388e7e17393 100644
--- a/testing/snapraid/APKBUILD
+++ b/testing/snapraid/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Nathan Caldwell <saintdev@gmail.com>
# Maintainer: Nathan Caldwell <saintdev@gmail.com>
pkgname=snapraid
-pkgver=12.1
+pkgver=12.3
pkgrel=0
pkgdesc="A backup program for disk arrays"
url="https://www.snapraid.it"
@@ -34,4 +34,4 @@ package() {
make DESTDIR="$pkgdir" install
}
-sha512sums="e97ead417c38454f4876561f7b7249490854006e593203c23709e76e372374db9e3b93830b2ce0552a60bb4cac5cb739669d2700c723481081135299438bb312 snapraid-12.1.tar.gz"
+sha512sums="c1e364326354940abdb27c7d7528f8d2d324bfc926d134be5a7046b1e3ada7703c7c9e3bec3ba4120dcd717e6cb325f2cce4d9387576add4781f6122537a7f1b snapraid-12.3.tar.gz"
diff --git a/testing/sndfile-tools/APKBUILD b/testing/sndfile-tools/APKBUILD
new file mode 100644
index 00000000000..4662369b681
--- /dev/null
+++ b/testing/sndfile-tools/APKBUILD
@@ -0,0 +1,38 @@
+# Maintainer:
+pkgname=sndfile-tools
+pkgver=1.5
+pkgrel=1
+pkgdesc="Collection of tools to do interesting things with sound files"
+url="https://libsndfile.github.io/sndfile-tools/"
+arch="all"
+license="GPL-2.0-or-later OR GPL-3.0-or-later"
+makedepends="
+ cairo-dev
+ fftw-dev
+ jack-dev
+ libsamplerate-dev
+ libsndfile-dev
+ "
+checkdepends="bash"
+subpackages="$pkgname-doc"
+source="https://github.com/libsndfile/sndfile-tools/releases/download/$pkgver/sndfile-tools-$pkgver.tar.bz2"
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+04926a6c489634762efaa787e468ab653990762d5b96ba3cdfca595102c1d5eeb86411c9010d5640b1b3ec2b38d8d9d434fb549c52446e4b88d5b2a1d06a2bc6 sndfile-tools-1.5.tar.bz2
+"
diff --git a/testing/snes9x/APKBUILD b/testing/snes9x/APKBUILD
deleted file mode 100644
index 14b8d94ff89..00000000000
--- a/testing/snes9x/APKBUILD
+++ /dev/null
@@ -1,61 +0,0 @@
-# Contributor: Taner Tas <taner76@gmail.com>
-# Contributor: Dominika Liberda <ja@sdomi.pl>
-# Maintainer: Taner Tas <taner76@gmail.com>
-pkgname=snes9x
-pkgver=1.61
-pkgrel=0
-_gslang=bcf6a2430e99e8fc24f9f266e99316905e6d5134
-_spirv=1458bae62ec67ea7d12c5a13b740e23ed4bb226c
-pkgdesc="Super NES Emulator"
-options="!check" # No testsuite
-url="http://www.snes9x.com"
-arch="all"
-license="custom"
-makedepends="
- alsa-lib-dev
- glib-dev
- gtk+3.0-dev
- gtkmm3-dev
- libepoxy-dev
- libpng-dev
- libxrandr-dev
- libxv-dev
- meson
- minizip-dev
- portaudio-dev
- sdl2-dev
- wayland-dev
- zlib-dev
- "
-subpackages="$pkgname-lang"
-source="$pkgname-$pkgver.tar.gz::https://github.com/snes9xgit/snes9x/archive/$pkgver.tar.gz
- glslang.tar.gz::https://github.com/KhronosGroup/glslang/archive/$_gslang.tar.gz
- spirv.tar.gz::https://github.com/KhronosGroup/SPIRV-Cross/archive/$_spirv.tar.gz
- "
-builddir="$srcdir/$pkgname-$pkgver/gtk"
-
-prepare() {
- default_prepare
-
- rm -r ../shaders/glslang ../shaders/SPIRV-Cross
- ln -s ../../glslang-$_gslang ../shaders/glslang
- ln -s ../../SPIRV-Cross-$_spirv ../shaders/SPIRV-Cross
-}
-
-build() {
- abuild-meson \
- -Dpulseaudio=false \
- . output
- meson compile ${JOBS:+-j ${JOBS}} -C output
-}
-
-package() {
- DESTDIR="$pkgdir" meson install --no-rebuild -C output
- ln -s snes9x-gtk "$pkgdir"/usr/bin/snes9x
-}
-
-sha512sums="
-8b644f5b7136e89fd222bcb430fc736c74a3e383d7e6c7f0880235f6fa4c0f77abbf02493f8d654a12e87701111643e33877bc21bb3dfcc9b82a056fa1b1d880 snes9x-1.61.tar.gz
-de2ebc0cd89d22582c079006ac45a812e3aaaad9a44c77c68530aa1468fbc840c6ae25a4356d4e9fc697524cd721d26506d85bc35eac98452eabce0bc098b5a4 glslang.tar.gz
-bfa3cc944450db59a57a685eea12b0ed0b5059d55a092ac5cdf6f4dc03c1e2d2e62fa5a576156c772340e12136b10d7ed790bb35b4aece2ee8405e64f826e31b spirv.tar.gz
-"
diff --git a/testing/snore/APKBUILD b/testing/snore/APKBUILD
new file mode 100644
index 00000000000..5e20367e157
--- /dev/null
+++ b/testing/snore/APKBUILD
@@ -0,0 +1,25 @@
+# Contributor: Sergiy Stupar <owner@sestolab.pp.ua>
+# Maintainer: Sergiy Stupar <owner@sestolab.pp.ua>
+pkgname=snore
+pkgver=0.3.1
+pkgrel=0
+pkgdesc="sleep with feedback"
+url="https://github.com/bitsmanent/snore"
+arch="all"
+license="MIT"
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/bitsmanent/snore/archive/$pkgver.tar.gz"
+options="!check" # No tests
+
+build() {
+ make PREFIX=/usr
+}
+
+package() {
+ make PREFIX=/usr DESTDIR="$pkgdir" install
+ install -Dm644 LICENSE -t "$pkgdir"/usr/share/licenses/$pkgname
+}
+
+sha512sums="
+c48db69d96ead044a48d9e6aefc01986b6d826e5bc6a84426680d6d2086656692b647fbbe25569fd2fe01b032a1a368515ec6a001284f58d2be4ad69a520b397 snore-0.3.1.tar.gz
+"
diff --git a/testing/snowflake/APKBUILD b/testing/snowflake/APKBUILD
new file mode 100644
index 00000000000..6ceee3361fd
--- /dev/null
+++ b/testing/snowflake/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: omni <omni+alpine@hack.org>
+# Maintainer: omni <omni+alpine@hack.org>
+pkgname=snowflake
+pkgver=2.9.2
+pkgrel=1
+pkgdesc="Pluggable Transport for Tor using WebRTC, inspired by Flashproxy"
+url="https://snowflake.torproject.org/"
+license="BSD-3-Clause"
+arch="all !riscv64" # ftbfs
+makedepends="go"
+options="!check" # no test files
+subpackages="$pkgname-doc"
+source="https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake/-/archive/v$pkgver/snowflake-v$pkgver.tar.gz"
+builddir="$srcdir/$pkgname-v$pkgver"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ cd "$builddir"/client
+ go build -v .
+
+ cd "$builddir"/proxy
+ go build -v .
+}
+
+package() {
+ install -Dm0755 client/client "$pkgdir"/usr/bin/"$pkgname"-client
+ install -Dm0755 proxy/proxy "$pkgdir"/usr/bin/"$pkgname"-proxy
+ install -Dm0644 doc/snowflake-*.1 -t "$pkgdir"/usr/share/man/man1
+}
+
+sha512sums="
+bfae8be9f7696c5a77129b49e3f874b32ddb62ba82becaa805a9ad94c85b90494baab084f8df133e8d8bbdc21b2285d91df0f72ce1c988632a778ccbf77d1793 snowflake-v2.9.2.tar.gz
+"
diff --git a/testing/so/APKBUILD b/testing/so/APKBUILD
new file mode 100644
index 00000000000..14efe263c86
--- /dev/null
+++ b/testing/so/APKBUILD
@@ -0,0 +1,32 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=so
+pkgver=0.4.9
+pkgrel=1
+pkgdesc="Terminal interface for Stackoverflow"
+url="https://github.com/samtay/so"
+arch="all"
+license="MIT"
+makedepends="cargo openssl-dev cargo-auditable"
+source="$pkgname-$pkgver.tar.gz::https://github.com/samtay/so/archive/refs/tags/v$pkgver.tar.gz"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm755 target/release/so -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+8dbf9841af0198ece0d5bb7cbbee7c4bf985c02c4c0ce6f594d1e3e0e7b39e68db43ad3d2dd2fa0d390098085763e75949cefbc027e7f49271db8dc52b9efa72 so-0.4.9.tar.gz
+"
diff --git a/testing/soapy-bladerf/APKBUILD b/testing/soapy-bladerf/APKBUILD
new file mode 100644
index 00000000000..6d7acbd6581
--- /dev/null
+++ b/testing/soapy-bladerf/APKBUILD
@@ -0,0 +1,30 @@
+# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=soapy-bladerf
+pkgver=0.4.1
+pkgrel=0
+pkgdesc="Soapy SDR plugin for the Blade RF"
+url="https://github.com/pothosware/SoapyBladeRF"
+arch="all"
+license="LGPL-2.1-only"
+makedepends="cmake samurai soapy-sdr-dev bladerf-dev"
+source="https://github.com/pothosware/SoapyBladeRF/archive/refs/tags/soapy-bladerf-$pkgver/soapy-bladerf-$pkgver.tar.gz"
+builddir="$srcdir/SoapyBladeRF-soapy-bladerf-$pkgver"
+options="!check" # needs hardware to test
+
+build() {
+ cmake -G Ninja -B build \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=True \
+ -DCMAKE_BUILD_TYPE=MinSizeRel
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+73cd5c56b6f2faa37fb8eb8aca359061fd2da94fb081c1eb60f61894385f5f0175c9e3955835dc38478e513b0fd5a15fd100123be89e4ad62a0b7134557ab73e soapy-bladerf-0.4.1.tar.gz
+"
diff --git a/testing/soapy-hackrf/APKBUILD b/testing/soapy-hackrf/APKBUILD
index cd85eb8c145..55984083bd6 100644
--- a/testing/soapy-hackrf/APKBUILD
+++ b/testing/soapy-hackrf/APKBUILD
@@ -1,8 +1,7 @@
-# Contributor: psykose <alice@ayaya.dev>
-# Maintainer: psykose <alice@ayaya.dev>
+# Maintainer:
pkgname=soapy-hackrf
pkgver=0.3.4
-pkgrel=0
+pkgrel=2
pkgdesc="SoapySDR HackRF module"
url="https://github.com/pothosware/SoapyHackRF"
options="!check" # no tests
diff --git a/testing/soapy-sdr-remote/APKBUILD b/testing/soapy-sdr-remote/APKBUILD
index 644f5d63f67..f77daf5be18 100644
--- a/testing/soapy-sdr-remote/APKBUILD
+++ b/testing/soapy-sdr-remote/APKBUILD
@@ -1,8 +1,7 @@
-# Contributor: psykose <alice@ayaya.dev>
-# Maintainer: psykose <alice@ayaya.dev>
+# Maintainer:
pkgname=soapy-sdr-remote
pkgver=0.5.2
-pkgrel=0
+pkgrel=1
pkgdesc="Remote control for Soapy SDR"
url="https://github.com/pothosware/SoapyRemote"
options="!check" # no tests
diff --git a/testing/soapy-sdr/APKBUILD b/testing/soapy-sdr/APKBUILD
deleted file mode 100644
index 52a3be4f67d..00000000000
--- a/testing/soapy-sdr/APKBUILD
+++ /dev/null
@@ -1,40 +0,0 @@
-# Contributor: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
-# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
-pkgname=soapy-sdr
-pkgver=0.8.1
-pkgrel=1
-pkgdesc="Soapy SDR - vendor and platform neutral SDR support library"
-url="https://github.com/pothosware/SoapySDR"
-arch="all"
-license="BSL-1.0"
-makedepends="cmake python3-dev swig"
-subpackages="$pkgname-dev py3-$pkgname:_py3 $pkgname-libs $pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/pothosware/SoapySDR/archive/soapy-sdr-$pkgver.tar.gz"
-builddir="$srcdir/SoapySDR-soapy-sdr-$pkgver"
-
-build() {
- cmake -B build \
- -DCMAKE_BUILD_TYPE=MinSizeRel \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib
- cmake --build build
-}
-
-check() {
- cmake --build build --target test
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --build build --target install
- mv "$pkgdir"/usr/share/cmake "$pkgdir"/usr/lib
-}
-
-_py3() {
- pkgdesc="$pkgdesc (python modules)"
-
- amove usr/lib/python3.*
-}
-
-sha512sums="
-50c8f1652bf9ca09215f9c4115175427ca7b5338add7591e31ca0e627093c94b73e7cf7f84fa71ff419cc010d3c1263931506c728bbaa00413a7915d56a87787 soapy-sdr-0.8.1.tar.gz
-"
diff --git a/testing/soju/APKBUILD b/testing/soju/APKBUILD
index 98fa83e0c25..63c9b595a73 100644
--- a/testing/soju/APKBUILD
+++ b/testing/soju/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Michał Polański <michal@polanski.me>
# Maintainer: Michał Polański <michal@polanski.me>
pkgname=soju
-pkgver=0.4.0
-pkgrel=3
+pkgver=0.7.0
+pkgrel=2
pkgdesc="User-friendly IRC bouncer"
url="https://soju.im/"
license="AGPL-3.0"
@@ -11,8 +11,8 @@ pkgusers="$pkgname"
pkggroups="$pkgname"
install="$pkgname.pre-install"
depends="ca-certificates"
-makedepends="go scdoc libcap sqlite-dev"
-subpackages="$pkgname-openrc $pkgname-doc"
+makedepends="go scdoc sqlite-dev"
+subpackages="$pkgname-openrc $pkgname-doc $pkgname-utils"
source="$pkgname-$pkgver.tar.gz::https://git.sr.ht/~emersion/soju/archive/v$pkgver.tar.gz
$pkgname.initd
config.patch
@@ -20,11 +20,20 @@ source="$pkgname-$pkgver.tar.gz::https://git.sr.ht/~emersion/soju/archive/v$pkgv
"
builddir="$srcdir/$pkgname-v$pkgver"
-export GOFLAGS="$GOFLAGS -trimpath -mod=readonly -modcacherw -tags=libsqlite3"
-export GOPATH="$srcdir"
+_utils="migrate-db migrate-logs znc-import"
+
+export GOFLAGS="$GOFLAGS -tags=libsqlite3"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
build() {
make GOFLAGS="$GOFLAGS"
+
+ for util in $_utils; do
+ cd "$builddir"/contrib/$util
+ go build -o "$builddir"/
+ done
}
check() {
@@ -33,17 +42,28 @@ check() {
package() {
make DESTDIR="$pkgdir" PREFIX=/usr install
- setcap cap_net_bind_service=+ep "$pkgdir"/usr/bin/soju
install -Dm755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
# add additional docs
install -Dm644 -t "$pkgdir"/usr/share/doc/$pkgname doc/*.md
+
+ for util in $_utils; do
+ install -Dm755 $util "$pkgdir"/usr/bin/soju-$util
+ done
+}
+
+utils() {
+ pkgdesc="Utilities for soju"
+
+ for util in $_utils; do
+ amove usr/bin/soju-$util
+ done
}
sha512sums="
-591e5666a110f64588ac8f76dd1c89d27e4c12f5b47a79bcb7d7d9911149ef5790d92aa83d9c7ae5f39641b3bac43637fa4887432ecabed2074f72961dfefd18 soju-0.4.0.tar.gz
-a634ef93ea329a2cfb8c8c805d0ae66e1f6c9860efb297d558ddc2f874e061457e851a39a2075f122e8d9d9ee0f176b202bcc02d0360981cfc8b856cbd68cf01 soju.initd
-48b0192bc385da4fe8c801612aed6b85accb84b9435f8f590b251bbeb1362567da6676e487ba6535561050a42efa84d9a712dc843482190ccd1483c0e2f12fa8 config.patch
-599a809aa78406bc029ee63b4e7a8e8825972a397626529adce75c38c27f3d2b326335cac287b251344775f8735a9a47c8e35545df33a9d659d3ddac1bb575d5 makefile.patch
+970563b873d872a99eb2f5965d6ef8f138b3f608b484173ad68a97181777199a7427b4439a2ffa2431165fd03cfe422e86257a68f937d8a24368ca239d9666da soju-0.7.0.tar.gz
+1f09a8d7eea73d5d81cdcad8a3a78fe30fc19742c13042ad2ee0448edf4108b2daf7da6fbbd4141b23fe1abd9cb931303efa6440d281a954e5d6d4956a291f7e soju.initd
+2f09bdb2efd0cd2f5f138dac7d5a4d02cfee6c46fc103c30fa70a238f322617b53ffd4b6ce6d0a8410375dd7229a68dcd6318e2b9651c5b559fff70fbca7adb3 config.patch
+b647576f50ab03a90d9ab9062d97ecf050fd6e7eeba77200e05e4577733886a4ca85c7cef68d476fc611bfca41f01eecca7d3f8ce8d03431872ccb78ea2f64db makefile.patch
"
diff --git a/testing/soju/config.patch b/testing/soju/config.patch
index 18271324bdf..50459d72ed9 100644
--- a/testing/soju/config.patch
+++ b/testing/soju/config.patch
@@ -1,11 +1,11 @@
Add friendly comment to the config file
diff --git a/config.in b/config.in
-index a0b510e..056a466 100644
+index e75ef07..2278fcf 100644
--- a/config.in
+++ b/config.in
-@@ -1,2 +1,4 @@
+@@ -1,3 +1,4 @@
+# See soju(1) for supported directives
-+
db sqlite3 /var/lib/soju/main.db
- log fs /var/lib/soju/logs/
+ message-store fs /var/lib/soju/logs/
+ listen ircs://
diff --git a/testing/soju/makefile.patch b/testing/soju/makefile.patch
index c65f7fdc08f..f6b2bc819f0 100644
--- a/testing/soju/makefile.patch
+++ b/testing/soju/makefile.patch
@@ -2,14 +2,14 @@ Don't create /var/lib/soju, it's done by soju.pre-install script
with proper permissions.
diff --git a/Makefile b/Makefile
-index bcf4e07..3f210f7 100644
+index af65f77..4cb971b 100644
--- a/Makefile
+++ b/Makefile
-@@ -24,7 +24,6 @@ install: all
+@@ -33,7 +33,6 @@ install:
mkdir -p $(DESTDIR)$(PREFIX)/$(BINDIR)
mkdir -p $(DESTDIR)$(PREFIX)/$(MANDIR)/man1
- mkdir -p $(DESTDIR)/etc/soju
-- mkdir -p $(DESTDIR)/var/lib/soju
- cp -f soju sojuctl $(DESTDIR)$(PREFIX)/$(BINDIR)
- cp -f doc/soju.1 $(DESTDIR)$(PREFIX)/$(MANDIR)/man1
- cp -f config.in $(DESTDIR)/etc/soju/config
+ mkdir -p $(DESTDIR)$(SYSCONFDIR)/soju
+- mkdir -p $(DESTDIR)$(sharedstatedir)/soju
+ cp -f $(commands) $(DESTDIR)$(PREFIX)/$(BINDIR)
+ cp -f $(man_pages) $(DESTDIR)$(PREFIX)/$(MANDIR)/man1
+ [ -f $(DESTDIR)$(config_path) ] || cp -f config.in $(DESTDIR)$(config_path)
diff --git a/testing/soju/soju.initd b/testing/soju/soju.initd
index 7cadb90177a..97af612363d 100644
--- a/testing/soju/soju.initd
+++ b/testing/soju/soju.initd
@@ -10,9 +10,10 @@ description="User-friendly IRC bouncer"
command=/usr/bin/soju
command_user=soju:soju
directory="/var/lib/$RC_SVCNAME"
+capabilities="^cap_net_bind_service"
extra_started_commands="reload"
-description_reload="Reload TLS certificate"
+description_reload="Reload configuration and certificate"
depend() {
need net localmount
@@ -22,10 +23,11 @@ depend() {
start_pre() {
checkpath -d -o $command_user "$directory"
checkpath -f -o $command_user "$error_log"
+ checkpath -d -o $command_user /run/soju
}
reload() {
- ebegin "Reloading TLS certificate"
+ ebegin "Reloading configuration and certificate"
$supervisor $RC_SVCNAME --signal HUP
eend $?
}
diff --git a/testing/soju/soju.pre-install b/testing/soju/soju.pre-install
index cba7dd99394..537d8ae3e44 100644
--- a/testing/soju/soju.pre-install
+++ b/testing/soju/soju.pre-install
@@ -5,5 +5,8 @@ group=soju
addgroup -S $group 2>/dev/null
adduser -S -D -h /var/lib/$user -s /sbin/nologin -G $group -g $user $user 2>/dev/null
+# The soju home directory contains soju's database and irc logs, which are
+# sensitive information.
+chmod o-rwx /var/lib/$user
exit 0
diff --git a/testing/solaar/APKBUILD b/testing/solaar/APKBUILD
deleted file mode 100644
index 3d5bb7bff07..00000000000
--- a/testing/solaar/APKBUILD
+++ /dev/null
@@ -1,51 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=solaar
-pkgver=1.1.1
-pkgrel=0
-pkgdesc="Linux device manager for a wide range of Logitech devices"
-url="https://pwr-solaar.github.io/Solaar/"
-arch="noarch"
-license="GPL-2.0-or-later"
-makedepends="py3-setuptools"
-depends="
- gtk+3.0
- libnotify
- py3-dbus
- py3-gobject3
- py3-psutil
- py3-yaml
- py3-udev
-"
-subpackages="$pkgname-doc"
-install="$pkgname.pre-install"
-source="$pkgname-$pkgver.tar.gz::https://github.com/pwr-Solaar/Solaar/archive/$pkgver.tar.gz
- $pkgname.rules
- "
-builddir="$srcdir/Solaar-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 setup.py check
-}
-
-package() {
- python3 setup.py install --root="$pkgdir"
-
- # udev
- install -Dm644 "$srcdir"/"$pkgname".rules \
- "$pkgdir"/etc/udev/rules.d/42-logitech-unify-permissions.rules
-
- # docs
- install -Dm644 "$builddir"/ChangeLog \
- "$pkgdir"/usr/share/doc/solaar/ChangeLog
- install -Dm644 "$builddir"/README.md \
- "$pkgdir"/usr/share/doc/solaar/README.md
-}
-
-sha512sums="
-c4da0c5521724c00afbc54ee9d10a4709246bb6f57635637b77e5944293b285a055b7df623e7e2a810a0764021813929e0f4fa7f21d4afc39abd516416a2bf25 solaar-1.1.1.tar.gz
-7f86932c463acf4368022134bf7ad16693ba40a1e65bf52379a28cedd870279afba5df90b9d99f6a24f420492f3068277bb6fca999df13c99936974f93a17424 solaar.rules
-"
diff --git a/testing/solaar/solaar.pre-install b/testing/solaar/solaar.pre-install
deleted file mode 100644
index 4832f19bd0d..00000000000
--- a/testing/solaar/solaar.pre-install
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/bin/sh
-
-addgroup -S plugdev 2>/dev/null
-
-printf " *\n * To control Logitech devices, regular users must be members of 'plugdev' group.\n *\n"
-
-exit 0
diff --git a/testing/solaar/solaar.rules b/testing/solaar/solaar.rules
deleted file mode 100644
index 83cb372c3db..00000000000
--- a/testing/solaar/solaar.rules
+++ /dev/null
@@ -1,32 +0,0 @@
-# This rule was added by Solaar.
-#
-# Allows non-root users to have raw access to Logitech devices.
-# Allowing users to write to the device is potentially dangerous
-# because they could perform firmware updates.
-
-ACTION != "add", GOTO="solaar_end"
-SUBSYSTEM != "hidraw", GOTO="solaar_end"
-
-# USB-connected Logitech receivers and devices
-ATTRS{idVendor}=="046d", GOTO="solaar_apply"
-
-# Lenovo nano receiver
-ATTRS{idVendor}=="17ef", ATTRS{idProduct}=="6042", GOTO="solaar_apply"
-
-# Bluetooth-connected Logitech devices
-KERNELS == "0005:046D:*", GOTO="solaar_apply"
-
-GOTO="solaar_end"
-
-LABEL="solaar_apply"
-
-# Allow any seated user to access the receiver.
-# uaccess: modern ACL-enabled udev
-# udev-acl: for Ubuntu 12.10 and older
-TAG+="uaccess", TAG+="udev-acl"
-
-# Grant members of the "plugdev" group access to receiver (useful for SSH users)
-MODE="0660", GROUP="plugdev"
-
-LABEL="solaar_end"
-# vim: ft=udevrules
diff --git a/testing/solanum/10-gio-types.patch b/testing/solanum/10-gio-types.patch
new file mode 100644
index 00000000000..435c083dd7f
--- /dev/null
+++ b/testing/solanum/10-gio-types.patch
@@ -0,0 +1,11 @@
+--- a/src/window.rs
++++ b/src/window.rs
+@@ -214,7 +214,7 @@
+ self.set_timer_label_from_secs(length * 60);
+ }
+ LapType::Break => {
+- if lap_number.get() >= settings.get("sessions-until-long-break") {
++ if lap_number.get() >= settings.get::<u32>("sessions-until-long-break") {
+ let length = settings.get("long-break-length");
+ lap_number.set(1);
+ label.set_label(&i18n("Long Break"));
diff --git a/testing/solanum/APKBUILD b/testing/solanum/APKBUILD
new file mode 100644
index 00000000000..fd472ba41e2
--- /dev/null
+++ b/testing/solanum/APKBUILD
@@ -0,0 +1,51 @@
+# Contributor:
+# Maintainer: nadvagauser <nadvagauser+alpine@proton.me>
+pkgname=solanum
+pkgver=3.0.1_git20220607
+_gitrev=6869e48970e621c5c1a9942ce0baa24ada3392de
+pkgrel=1
+pkgdesc="A pomodoro timer for the GNOME desktop"
+url="https://gitlab.gnome.org/World/Solanum"
+arch="all !s390x !riscv64" # GTK4
+license="GPL-3.0-or-later"
+makedepends="
+ blueprint-compiler
+ cargo
+ glib-dev
+ gst-plugins-bad-dev
+ gstreamer-dev
+ gtk4.0-dev
+ libadwaita-dev
+ meson
+ "
+checkdepends="
+ appstream-glib
+ desktop-file-utils
+ "
+subpackages="$pkgname-lang"
+source="
+ https://gitlab.gnome.org/World/Solanum/-/archive/$_gitrev/Solanum-$_gitrev.tar.gz
+ 10-gio-types.patch
+ appdata.patch
+ "
+builddir="$srcdir/Solanum-$_gitrev"
+
+
+build() {
+ abuild-meson . output
+ meson compile -C output
+}
+
+check() {
+ meson test --no-rebuild --print-errorlogs -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+sha512sums="
+6f6cc33be29c5419e12bb5e260b69e74c9b8c00c713c449351f284fcdc6b057b3fc2fd12fcd7552cd0856ba4e999f2efa85f89d07ed3d0e1e4332c95af3fac1c Solanum-6869e48970e621c5c1a9942ce0baa24ada3392de.tar.gz
+d48dc043836600622321d655db725da667a8fca9aa0e5010f6fbb5aff4b6e37e0d14ac8f071631d70a897583919b5ce77bd3519a96b0fe4bf00765eecce01307 10-gio-types.patch
+f319268c921d72e186ad8c07267bb8f7ffe2af961e1687e116403dffc5c8e098f8780b99a60caa79561fe8a204beebc269d3cd9f888ca18a0960043269fd30d4 appdata.patch
+"
diff --git a/testing/solanum/appdata.patch b/testing/solanum/appdata.patch
new file mode 100644
index 00000000000..e1f44612ad3
--- /dev/null
+++ b/testing/solanum/appdata.patch
@@ -0,0 +1,14 @@
+https://gitlab.alpinelinux.org/alpine/aports/-/issues/11642
+diff --git a/data/meson.build b/data/meson.build
+index dadb5ec..a00821e 100644
+--- a/data/meson.build
++++ b/data/meson.build
+@@ -29,7 +29,7 @@ appstream_file = i18n.merge_file(
+ output: '@0@.appdata.xml'.format(app_id),
+ po_dir: '../po',
+ install: true,
+- install_dir: join_paths(solanum_datadir, 'appdata')
++ install_dir: join_paths(solanum_datadir, 'metainfo')
+ )
+
+ appstream_util = find_program('appstream-util', required: false)
diff --git a/testing/solarus-engine/APKBUILD b/testing/solarus-engine/APKBUILD
new file mode 100644
index 00000000000..77786629316
--- /dev/null
+++ b/testing/solarus-engine/APKBUILD
@@ -0,0 +1,64 @@
+# Contributor: Díaz Urbaneja Diego <sodomon2@gmail.com>
+# Maintainer: Díaz Urbaneja Diego <sodomon2@gmail.com>
+pkgname=solarus-engine
+_realname=solarus
+pkgver=1.7.0
+_commit_ver=a44ae4b2a2f5289dc00bdf123eee239c99fab3b5
+pkgrel=0
+pkgdesc="Solarus is an open-source adventure 2D game engine written in C++"
+url="https://solarus-games.org/"
+arch="all !ppc64le !riscv64" # no luajit found
+license="GPL-3.0-Only"
+depends="
+ libvorbis
+ libogg
+ libmodplug
+ luajit
+ mesa
+ openal-soft
+ physfs
+ qt5-qtbase
+ qt5-qttools
+ sdl2
+ sdl2_image
+ sdl2_ttf
+ "
+makedepends="
+ cmake
+ glm-dev
+ libvorbis-dev
+ libogg-dev
+ libmodplug-dev
+ luajit-dev
+ mesa-dev
+ openal-soft-dev
+ physfs-dev
+ qt5-qtbase-dev
+ qt5-qttools-dev
+ sdl2-dev
+ sdl2_image-dev
+ sdl2_ttf-dev
+ "
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://gitlab.com/solarus-games/solarus/-/archive/$_commit_ver/solarus-$_commit_ver.tar.gz"
+builddir="$srcdir/$_realname-$_commit_ver"
+
+build() {
+ cmake -B build \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DSOLARUS_GUI=ON
+ make -C build/
+}
+
+check() {
+ ctest -L
+}
+
+package() {
+ make -C build DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+d1b95fffd643eb2fc984d6a8f511704d65d130a4d639634c31912bbadc5d67044723ad088a9085a528de0276627ed3e3db926d8415b58f35f1bc548265b4ea0e solarus-engine-1.7.0.tar.gz
+"
diff --git a/testing/solarus-quest-editor/APKBUILD b/testing/solarus-quest-editor/APKBUILD
new file mode 100644
index 00000000000..c1196ea5437
--- /dev/null
+++ b/testing/solarus-quest-editor/APKBUILD
@@ -0,0 +1,55 @@
+# Contributor: Díaz Urbaneja Diego <sodomon2@gmail.com>
+# Maintainer: Díaz Urbaneja Diego <sodomon2@gmail.com>
+pkgname=solarus-quest-editor
+pkgver=1.7.0
+_commit_ver=c6861dead576c5ed18dfdd33a8082101683c0324
+pkgrel=0
+pkgdesc="Game editor for the Solarus engine."
+url="https://www.solarus-games.org/"
+#ppc64le, riscv64: # no luajit found
+#aarch64, armhf, armv7: OpenGL/ES3 error while compiling
+arch="all !aarch64 !armhf !armv7 !ppc64le !riscv64"
+license="GPL-3.0-Only"
+depends="solarus-engine"
+makedepends="
+ cmake
+ glm-dev
+ libvorbis-dev
+ libmodplug-dev
+ luajit-dev
+ mesa-dev
+ openal-soft-dev
+ physfs-dev
+ qt5-qtbase-dev
+ qt5-qttools-dev
+ samurai
+ sdl2-dev
+ sdl2_image-dev
+ sdl2_ttf-dev
+ "
+source="$pkgname-$pkgver.tar.gz::https://gitlab.com/solarus-games/solarus-quest-editor/-/archive/$_commit_ver/solarus-quest-editor-$_commit_ver.tar.gz"
+
+builddir="$srcdir/$pkgname-$_commit_ver"
+
+build() {
+ if [ "$CBUILD" != "$CHOST" ]; then
+ local crossopts="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=None \
+ $crossopts
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+1dd74d3eda525abc9384faeaad3c3f298753b51e40f231425af8bd544e85b6dc497d7cedcdb9989a497a7dd5717b028a8a3454121520809139ea87e5bd2e28fa solarus-quest-editor-1.7.0.tar.gz
+"
diff --git a/testing/somebar/APKBUILD b/testing/somebar/APKBUILD
new file mode 100644
index 00000000000..7282cb03f78
--- /dev/null
+++ b/testing/somebar/APKBUILD
@@ -0,0 +1,37 @@
+# Contributor: Sam Nystrom <sam@samnystrom.dev>
+# Maintainer: Sam Nystrom <sam@samnystrom.dev>
+pkgname=somebar
+pkgver=1.0.3
+pkgrel=0
+pkgdesc="dwm-like bar for dwl"
+url="https://sr.ht/~raphi/somebar"
+arch="all"
+license="MIT"
+makedepends="
+ cairo-dev
+ meson
+ pango-dev
+ wayland-dev
+ wayland-protocols
+ "
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://git.sr.ht/~raphi/somebar/archive/$pkgver.tar.gz"
+options="!check" # no tests
+
+prepare() {
+ default_prepare
+ cp src/config.def.hpp src/config.hpp
+}
+
+build() {
+ abuild-meson -Db_lto=true . output
+ meson compile -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+sha512sums="
+6294aaf3e9bc20b6fbc2221038f044ca505096e78b96981a234d0b0858d4a57bd1ffd5d1b53930b820e97b1fddf9a5149eaa1cb22e300629f92d197e3d5d7e5d somebar-1.0.3.tar.gz
+"
diff --git a/testing/sonar-scanner/APKBUILD b/testing/sonar-scanner/APKBUILD
new file mode 100644
index 00000000000..5d89d0eb0c2
--- /dev/null
+++ b/testing/sonar-scanner/APKBUILD
@@ -0,0 +1,43 @@
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=sonar-scanner
+pkgver=5.0.1.3006
+pkgrel=0
+pkgdesc="Scanner CLI for SonarQube and SonarCloud"
+url="https://github.com/SonarSource/sonar-scanner-cli"
+arch="noarch !x86 !armhf !armv7 !riscv64 !ppc64le" # blocked by openjdk17
+license="LGPL-3.0-or-later"
+depends="openjdk17-jre-headless"
+makedepends="maven openjdk17-jdk"
+source="https://github.com/SonarSource/sonar-scanner-cli/archive/$pkgver/sonar-scanner-$pkgver.tar.gz
+ fix-reflection.patch
+ "
+builddir="$srcdir/sonar-scanner-cli-$pkgver"
+
+prepare() {
+ default_prepare
+ sed -i "s/<version>.*-SNAPSHOT/<version>$pkgver/" pom.xml
+}
+
+build() {
+ mvn clean package
+}
+
+check() {
+ mvn test
+}
+
+package() {
+ local dest=/usr/share/sonar-scanner
+
+ mkdir -p "$pkgdir"/$dest
+ unzip target/sonar-scanner-$pkgver.zip
+ mv sonar-scanner-$pkgver/* "$pkgdir"/$dest/
+
+ mkdir -p "$pkgdir"/usr/bin
+ ln -svf $dest/bin/sonar-scanner "$pkgdir"/usr/bin
+}
+
+sha512sums="
+a589a343b2c48b7b44086c47d28be6282d1888ef4afbc500994d64c9b1ce14dc7d7ec83515ae288ad14f263cd130dc6eab6df91095bd7f7ed2a72a6cdab399ff sonar-scanner-5.0.1.3006.tar.gz
+defc90c2cecef172e94c962b4058daadcf2411e4a6b98ca5868abb85f19359cc515df79d931335f79e5c0ba8bab1da833654a11553056fcbfba78c7625b1f425 fix-reflection.patch
+"
diff --git a/testing/sonar-scanner/fix-reflection.patch b/testing/sonar-scanner/fix-reflection.patch
new file mode 100644
index 00000000000..6b70ad46fd8
--- /dev/null
+++ b/testing/sonar-scanner/fix-reflection.patch
@@ -0,0 +1,22 @@
+i'm not exactly sure why it fails, but without this running analysis fails with:
+
+Caused by:
+ net.sf.cglib.core.CodeGenerationException:
+ java.lang.reflect.InaccessibleObjectException:
+ Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible:
+ module java.base does not "opens java.lang" to unnamed module @77774571
+
+found the fix here: https://stackoverflow.com/a/41265267
+
+diff --git a/src/main/assembly/bin/sonar-scanner b/src/main/assembly/bin/sonar-scanner
+index 2d2c2cc..8affabc 100755
+--- a/src/main/assembly/bin/sonar-scanner
++++ b/src/main/assembly/bin/sonar-scanner
+@@ -64,6 +64,7 @@ project_home=`pwd`
+ #echo "Info: Using project $project_home"
+
+ exec "$java_cmd" \
++ --add-opens java.base/java.lang=ALL-UNNAMED \
+ -Djava.awt.headless=true \
+ $SONAR_SCANNER_OPTS \
+ $SONAR_SCANNER_DEBUG_OPTS \
diff --git a/testing/sonarr/0001-disable-restart.patch b/testing/sonarr/0001-disable-restart.patch
new file mode 100644
index 00000000000..8dc5aebe628
--- /dev/null
+++ b/testing/sonarr/0001-disable-restart.patch
@@ -0,0 +1,20 @@
+Disable the restart functionality so the daemon can manage it.
+
+---
+ src/NzbDrone.Core/Lifecycle/LifecycleService.cs | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/src/NzbDrone.Core/Lifecycle/LifecycleService.cs b/src/NzbDrone.Core/Lifecycle/LifecycleService.cs
+index 9ed36a42e..565641284 100644
+--- a/src/NzbDrone.Core/Lifecycle/LifecycleService.cs
++++ b/src/NzbDrone.Core/Lifecycle/LifecycleService.cs
+@@ -46,8 +46,7 @@ public void Shutdown()
+ public void Restart()
+ {
+ _logger.Info("Restart requested.");
+-
+- _eventAggregator.PublishEvent(new ApplicationShutdownRequested(true));
++ _eventAggregator.PublishEvent(new ApplicationShutdownRequested());
+
+ if (_runtimeInfo.IsWindowsService)
+ {
diff --git a/testing/sonarr/APKBUILD b/testing/sonarr/APKBUILD
new file mode 100644
index 00000000000..cd3b955a553
--- /dev/null
+++ b/testing/sonarr/APKBUILD
@@ -0,0 +1,104 @@
+# Contributor: Fabricio Silva <hi@fabricio.dev>
+# Maintainer: Fabricio Silva <hi@fabricio.dev>
+pkgname=sonarr
+pkgver=4.0.4.1491
+pkgrel=0
+pkgdesc="TV download automation for usenet and torrents."
+url="https://github.com/Sonarr/Sonarr"
+arch="x86_64 aarch64 armv7"
+license="GPL-3.0-only"
+options="net !check" # no tests
+depends="
+ aspnetcore6-runtime
+ sqlite-libs
+ "
+makedepends="
+ dotnet6-sdk
+ yarn
+ "
+subpackages="$pkgname-openrc"
+install="$pkgname.pre-install"
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/Sonarr/Sonarr/archive/refs/tags/v$pkgver.tar.gz
+ 0001-disable-restart.patch
+ sonarr.initd
+ sonarr.confd
+ package_info
+ "
+builddir="$srcdir/Sonarr-$pkgver"
+pkgusers="sonarr"
+pkggroups="sonarr"
+
+# map arch to dotnet
+case $CARCH in
+ x86_64) _dotnet_arch="x64" ;;
+ aarch64) _dotnet_arch="arm64" ;;
+ armv7) _dotnet_arch="arm" ;;
+ *) _dotnet_arch="$CARCH" ;;
+esac
+
+# custom variables
+_runtime="linux-musl-$_dotnet_arch"
+_framework="net6.0"
+_output="_output"
+_artifacts="$_output/$_framework/$_runtime/publish"
+
+prepare() {
+ default_prepare
+
+ # increase max opened files
+ ulimit -n 4096
+
+ # replace version info
+ local buildprops=src/Directory.Build.props
+ sed -i "/<AssemblyVersion>/s/>.*<\//>$pkgver<\//" "$buildprops"
+ sed -i "/<AssemblyConfiguration>/s/>.*<\//>master<\//" "$buildprops"
+
+ export BROWSERSLIST_IGNORE_OLD_DATA=true
+ yarn install --frozen-lockfile --network-timeout 120000
+
+ # remove upstream dotnet version
+ rm global.json
+}
+
+build() {
+ dotnet build src \
+ -p:RuntimeIdentifiers="$_runtime" \
+ -p:Configuration=Release \
+ -p:SelfContained=false \
+ -t:PublishAllRids
+ yarn build --env production --no-stats
+
+ # fix ffprobe permissions
+ chmod +x "$_artifacts"/ffprobe
+
+ # cleanup
+ find "$_artifacts" \( \
+ -name "ServiceUninstall.*" -o \
+ -name "ServiceInstall.*" -o \
+ -name "Sonarr.Windows.*" \) -delete
+
+ mv "$_output"/UI "$_artifacts"
+}
+
+package() {
+ local destdir="$pkgdir"/usr/lib/sonarr
+
+ # use package_info to disable update feature
+ install -Dm644 "$srcdir"/package_info "$destdir"/package_info
+ echo "PackageVersion=$pkgver-r$pkgrel" >>"$destdir"/package_info
+
+ cp -af "$_artifacts" "$destdir"/bin
+ chown -R "$pkgusers:$pkggroups" "$destdir"
+
+ install -Dm755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
+ install -Dm644 "$srcdir"/$pkgname.confd "$pkgdir"/etc/conf.d/$pkgname
+}
+
+sha512sums="
+3c11ca486780c523787916ffcfc3162acf839e90ba9b9bed0481a9f30250c19a2d9ae673db6f50e352bca4d5e0bd579a6742b94a1e957778cfec2b7a2c588381 sonarr-4.0.4.1491.tar.gz
+753520379a6c5f2899b4ddfd820d5573598a32cb105f74c6fd978a3f2c98895cf709ef2d9afe2bae8c4856da86cb6a1364f5713ea7ef6a36bb21b5a5840c1471 0001-disable-restart.patch
+6cda2b7afc5f61dc8460b9e6a1683d8a04b705cf0dfaf8ef79845b797bdf1b4bb582cf217c83f02717d7daaaf337112da8720c400ab1d374f8a6b04a7ee07286 sonarr.initd
+d1cf825905ee8847f8094ec27d1b43df51558f0e94b17071cc15d019438c3c7d0c884fcc22876690e8b49d0f9dd3c2893ffcdab0c215282db27e24d0c8c6ec29 sonarr.confd
+91274754046fe7b7aade722af2c0a1e00265cb0b43808ad757bb55e780794f2c9466d1036841bb2a6f2e114784585ebef8ad6378cee72197e27a7d2963e022ba package_info
+"
diff --git a/testing/sonarr/package_info b/testing/sonarr/package_info
new file mode 100644
index 00000000000..944a8ad4143
--- /dev/null
+++ b/testing/sonarr/package_info
@@ -0,0 +1,4 @@
+# PackageVersion is added by APKBUILD
+PackageAuthor=[alpine](https://pkgs.alpinelinux.org/packages)
+UpdateMethod=External
+Branch=main
diff --git a/testing/sonarr/sonarr.confd b/testing/sonarr/sonarr.confd
new file mode 100644
index 00000000000..a372e5e3513
--- /dev/null
+++ b/testing/sonarr/sonarr.confd
@@ -0,0 +1,10 @@
+# Sonarr configuration options
+
+command_user="sonarr:sonarr" # user:group
+directory="/var/lib/sonarr"
+umask=0002
+supervisor="supervise-daemon"
+
+#logdir="/var/log/sonarr"
+#error_log="$logdir/error.log"
+#output_log="$logdir/output.log"
diff --git a/testing/sonarr/sonarr.initd b/testing/sonarr/sonarr.initd
new file mode 100644
index 00000000000..5151adcbafc
--- /dev/null
+++ b/testing/sonarr/sonarr.initd
@@ -0,0 +1,34 @@
+#!/sbin/openrc-run
+
+# fallback values for /etc/conf.d/sonarr
+: ${command_user:=sonarr:sonarr}
+: ${directory:=/var/lib/sonarr}
+: ${umask:=0002}
+
+name=sonarr
+description="Sonarr daemon"
+command="/usr/lib/sonarr/bin/Sonarr"
+command_args="-nobrowser -data=$directory"
+command_background=true
+pidfile="/run/$name.pid"
+
+depend() {
+ need net
+ use dns logger netmount
+}
+
+start_pre() {
+ checkpath -d -o "$command_user" "$directory"
+
+ if [ -n "$logdir" ]; then
+ checkpath -d -o "$command_user" "$logdir"
+ fi
+
+ if [ -n "$output_log" ]; then
+ checkpath -f -o "$command_user" "$output_log"
+ fi
+
+ if [ -n "$error_log" ]; then
+ checkpath -f -o "$command_user" "$error_log"
+ fi
+}
diff --git a/testing/sonarr/sonarr.pre-install b/testing/sonarr/sonarr.pre-install
new file mode 100644
index 00000000000..85b0b7123f3
--- /dev/null
+++ b/testing/sonarr/sonarr.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S sonarr 2>/dev/null
+adduser -S -D -h /var/lib/sonarr -s /sbin/nologin -G sonarr -g sonarr sonarr 2>/dev/null
+
+exit 0
diff --git a/testing/songrec/APKBUILD b/testing/songrec/APKBUILD
deleted file mode 100644
index a792cdecb6c..00000000000
--- a/testing/songrec/APKBUILD
+++ /dev/null
@@ -1,43 +0,0 @@
-# Contributor: Bart Ribbers <bribbers@disroot.org>
-# Maintainer: Bart Ribbers <bribbers@disroot.org>
-pkgname=songrec
-pkgver=0.3.0
-pkgrel=0
-pkgdesc="An open-source Shazam client for Linux"
-url="https://github.com/marin-m/SongRec"
-# s390x and riscv64 blocked by rust
-arch="all !s390x !riscv64"
-license="GPL-3.0-only"
-makedepends="
- alsa-lib-dev
- cargo
- gdk-pixbuf-dev
- glib-dev
- gtk+3.0-dev
- openssl-dev
- pango-dev
- "
-source="https://github.com/marin-m/songrec/archive/$pkgver/songrec-$pkgver.tar.gz"
-# net required to download Rust dependencies
-# no tests
-options="net !check"
-builddir="$srcdir/SongRec-$pkgver"
-
-build() {
- cargo build --release --locked
-}
-
-check() {
- cargo test --release --locked
-}
-
-package() {
- cargo install --locked --path . --root="$pkgdir/usr"
- rm "$pkgdir"/usr/.crates*
-
- mv packaging/rootfs/usr/share "$pkgdir"/usr
-}
-
-sha512sums="
-53a307c886428e9970cd0f1d18552f4efbeca28179c0290aabba39426daec080635f3816435eef7b372b830bbadacf8882551511db6df847d7bb463ea1b75d47 songrec-0.3.0.tar.gz
-"
diff --git a/testing/sops/APKBUILD b/testing/sops/APKBUILD
deleted file mode 100644
index 440091efa99..00000000000
--- a/testing/sops/APKBUILD
+++ /dev/null
@@ -1,41 +0,0 @@
-# Contributor: Michał Polański <michal@polanski.me>
-# Maintainer: Michał Polański <michal@polanski.me>
-pkgname=sops
-pkgver=3.7.3
-pkgrel=1
-pkgdesc="Simple and flexible tool for managing secrets"
-url="https://github.com/mozilla/sops"
-license="MPL-2.0"
-arch="all"
-makedepends="go"
-source="https://github.com/mozilla/sops/archive/v$pkgver/sops-$pkgver.tar.gz
- skip-hcvault-tests.patch
- skip-pgp-tests.patch
- fix-tests.patch
- "
-builddir="$srcdir/sops-$pkgver"
-options="net" # for downloading Go modules
-
-export GOPATH="$srcdir"
-export GOFLAGS="$GOFLAGS -trimpath -modcacherw"
-export CGO_ENABLED=0
-
-build() {
- go build -v ./cmd/sops
-}
-
-check() {
- # remove -trimpath, tests fail otherwise
- GOFLAGS="${GOFLAGS/-trimpath}" go test ./...
-}
-
-package() {
- install -Dm755 sops "$pkgdir"/usr/bin/sops
-}
-
-sha512sums="
-8210cb53eba4f71cbb1ea446f7dd32371e66eb02aef5df6458b0cef85adc44750e8c94f14769921dfbdaaa2cd75dbfa1ade01bf71c1e3ab2d7e7006f0b925758 sops-3.7.3.tar.gz
-e1e718955e40e392a6faa12706107375a524e40636e684f096a51e115eca356b6c22f1922e9b758dae1b4978f36c89a6e6030ac680f79a65c4ac68218b4cdc84 skip-hcvault-tests.patch
-9f1861a3e6c9fa5435a12d4052ef7c841fd58a15b75c3b4ab74e181185925970f69822c831252df1e2e44a673f88f220371d27392efd99c24e21e6cb5768778e skip-pgp-tests.patch
-3746f8db0342917324afe046a87677c44ac764b3162c18c9505f7f547e641fb04b4f28ebebeef2a78928bcd1df014c0d620e0ff57341355b300caa681d736927 fix-tests.patch
-"
diff --git a/testing/sops/fix-tests.patch b/testing/sops/fix-tests.patch
deleted file mode 100644
index 70863b80e0a..00000000000
--- a/testing/sops/fix-tests.patch
+++ /dev/null
@@ -1,17 +0,0 @@
---- a/pgp/keysource_test.go
-+++ b/pgp/keysource_test.go
-@@ -15,12 +15,12 @@
- return true
- }
- if err := key.Encrypt(x); err != nil {
-- t.Errorf("Failed to encrypt: %#v err: %w", x, err)
-+ t.Errorf("Failed to encrypt: %#v err: %s", x, err)
- return false
- }
- k, err := key.Decrypt()
- if err != nil {
-- t.Errorf("Failed to decrypt: %#v err: %w", x, err)
-+ t.Errorf("Failed to decrypt: %#v err: %s", x, err)
- return false
- }
- return bytes.Equal(x, k)
diff --git a/testing/sops/skip-hcvault-tests.patch b/testing/sops/skip-hcvault-tests.patch
deleted file mode 100644
index 95c1c5c3ce0..00000000000
--- a/testing/sops/skip-hcvault-tests.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-skip tests for the hcvault module; they need Docker
-
---- a/hcvault/keysource_test.go
-+++ b/hcvault/keysource_test.go
-@@ -13,6 +13,7 @@ import (
- )
-
- func TestMain(m *testing.M) {
-+ os.Exit(0)
- // uses a sensible default on windows (tcp/http) and linux/osx (socket)
- pool, err := dockertest.NewPool("")
- if err != nil {
diff --git a/testing/sops/skip-pgp-tests.patch b/testing/sops/skip-pgp-tests.patch
deleted file mode 100644
index b05bf463caf..00000000000
--- a/testing/sops/skip-pgp-tests.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-skip tests for the pgp module; they need to have a testing pgp key imported
-
---- a/pgp/keysource_test.go
-+++ b/pgp/keysource_test.go
-@@ -2,12 +2,17 @@ package pgp
-
- import (
- "bytes"
-+ "os"
- "testing"
- "testing/quick"
-
- "github.com/stretchr/testify/assert"
- )
-
-+func TestMain(m *testing.M) {
-+ os.Exit(0)
-+}
-+
- func TestPGP(t *testing.T) {
- key := NewMasterKeyFromFingerprint("FBC7B9E2A4F9289AC0C1D4843D16CEE4A27381B4")
- f := func(x []byte) bool {
diff --git a/testing/sopwith/APKBUILD b/testing/sopwith/APKBUILD
new file mode 100644
index 00000000000..9ad9c2225ba
--- /dev/null
+++ b/testing/sopwith/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: John Gebbie <me@johngebbie.com>
+# Maintainer: John Gebbie <me@johngebbie.com>
+pkgname=sopwith
+pkgver=2.4.0
+pkgrel=0
+pkgdesc="Classic bi-plane shoot-'em up game"
+url="https://fragglet.github.io/sdl-sopwith"
+arch="all"
+license="GPL-2.0-or-later"
+makedepends="sdl2-dev"
+subpackages="$pkgname-doc"
+source="https://github.com/fragglet/sdl-sopwith/releases/download/sdl-sopwith-$pkgver/sdl-sopwith-$pkgver.tar.gz
+ select.patch
+ "
+builddir="$srcdir/sdl-sopwith-$pkgver"
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR=$pkgdir install
+}
+
+sha512sums="
+3d47033d7e491417caaeb78dbb7e3acd8d9e1d7fe3197a0c9d83d3a8c5ef002df2880bc6787418aa15ac214242c64a652f0d1d343196ab5b77fe984f9370211a sdl-sopwith-2.4.0.tar.gz
+eb67432e23eacec9f53c35da25af4b5ca8018de1be9b40094dd5f98d0614415481df2fbf2f9c22f4b4fc71fd20b838f806f4d1e71b327fb4af670f5cd2a3adc8 select.patch
+"
diff --git a/testing/sopwith/select.patch b/testing/sopwith/select.patch
new file mode 100644
index 00000000000..f04ceb1d308
--- /dev/null
+++ b/testing/sopwith/select.patch
@@ -0,0 +1,12 @@
+diff --git a/src/tcpcomm.c b/src/tcpcomm.c
+index 7d07fdf..f9b630f 100644
+--- a/src/tcpcomm.c
++++ b/src/tcpcomm.c
+@@ -29,6 +29,7 @@
+ #include <stdlib.h>
+ #include <errno.h>
+ #include <string.h>
++#include <sys/select.h>
+
+ #ifdef HAVE_NETINET_IN_H
+ #include <arpa/inet.h>
diff --git a/testing/sord/APKBUILD b/testing/sord/APKBUILD
deleted file mode 100644
index 3e5ce85becf..00000000000
--- a/testing/sord/APKBUILD
+++ /dev/null
@@ -1,27 +0,0 @@
-# Contributor: David Demelier <markand@malikania.fr>
-# Maintainer: David Demelier <markand@malikania.fr>
-pkgname=sord
-pkgver=0.16.8
-pkgrel=0
-pkgdesc="C library for storing RDF data in memory"
-url="http://drobilla.net/software/sord"
-arch="all"
-license="ISC"
-makedepends="python3 pcre-dev serd-dev"
-subpackages="$pkgname-dev $pkgname-doc"
-source="http://download.drobilla.net/sord-$pkgver.tar.bz2"
-
-build() {
- python3 waf configure --prefix=/usr --test
- python3 waf build
-}
-
-check() {
- python3 waf test
-}
-
-package() {
- python3 waf install --destdir="$pkgdir"
-}
-
-sha512sums="24ed50de8e5bb321e557bac6d3e441b2ed49adabf828bf0e1b33a080c89306dde80443dc8b563098fcc184c4d6e53b7e716b523ddccdf56d08301d1b0120f2b2 sord-0.16.8.tar.bz2"
diff --git a/testing/sos/APKBUILD b/testing/sos/APKBUILD
index 531c017aafb..38f15358958 100644
--- a/testing/sos/APKBUILD
+++ b/testing/sos/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Carlo Landmeter <clandmeter@alpinelinux.org>
pkgname=sos
pkgver=0.8
-pkgrel=8
+pkgrel=23
pkgdesc="Simple Object Storage"
url="https://github.com/skx/sos"
license="GPL-2.0-or-later"
@@ -14,12 +14,14 @@ source="sos-$pkgver.tar.gz::https://github.com/skx/sos/archive/release-$pkgver.t
"
builddir="$srcdir/sos-release-$pkgver"
-export GOPATH="$srcdir"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
build() {
go build -v \
-trimpath \
- -ldflags="-s -w -X main.version=$pkgver" \
+ -ldflags="-X main.version=$pkgver" \
-o ./bin/sos
}
diff --git a/testing/soundfont-vintage-dreams-waves/APKBUILD b/testing/soundfont-vintage-dreams-waves/APKBUILD
index 836c9f74077..194716e0994 100644
--- a/testing/soundfont-vintage-dreams-waves/APKBUILD
+++ b/testing/soundfont-vintage-dreams-waves/APKBUILD
@@ -4,12 +4,12 @@ pkgname=soundfont-vintage-dreams-waves
pkgver=2.1
pkgrel=1
pkgdesc="Vintage Dreams Waves Soundfont"
-url="https://analoguesque.x10host.com/SoundFonts/"
+url="https://www.analoguesque.x10host.com/SoundFonts/"
arch="noarch"
license="custom"
options="!check" # no code
subpackages="$pkgname-doc"
-source="https://analoguesque.x10host.com/vdw20.zip
+source="https://www.analoguesque.x10host.com/vdw20.zip
LICENSE
"
diff --git a/testing/spacectl/APKBUILD b/testing/spacectl/APKBUILD
new file mode 100644
index 00000000000..612bf1bc8a0
--- /dev/null
+++ b/testing/spacectl/APKBUILD
@@ -0,0 +1,54 @@
+# Maintainer: Hristiyan Ivanov <hristiyan.d.ivanov@gmail.com>
+pkgname=spacectl
+pkgver=0.30.0
+pkgrel=2
+pkgdesc="A Utility wrapping Spacelift's GraphQL API for easy programmatic access in command-line contexts."
+url="https://github.com/spacelift-io/spacectl"
+arch="all"
+license="MIT"
+makedepends="go"
+subpackages="
+ $pkgname-doc
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/spacelift-io/spacectl/archive/refs/tags/v$pkgver.tar.gz"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+prepare() {
+ default_prepare
+ go mod download
+}
+
+build() {
+ go build .
+
+ for shell in bash fish zsh; do
+ ./spacectl completion $shell > spacectl.$shell
+ done
+}
+
+check() {
+ go test ./...
+}
+
+package() {
+ install -Dm0755 spacectl -t "$pkgdir"/usr/bin/
+
+ install -Dm0644 LICENSE -t "$pkgdir"/usr/share/licenses/$pkgname/
+
+ install -Dm0644 spacectl.bash \
+ "$pkgdir"/usr/share/bash-completion/completions/spacectl
+ install -Dm0644 spacectl.fish \
+ "$pkgdir"/usr/share/fish/vendor_completions.d/spacectl.fish
+ install -Dm0644 spacectl.zsh \
+ "$pkgdir"/usr/share/zsh/site-functions/_spacectl
+}
+
+sha512sums="
+6780dfe4dd3cbc15a202f0d5f596e9aca983b9e30ede9d2969d16a1960f4ad71e9ce52caec3a612a10632d154297aee75bd37f7efc873bd7d4dea6d3f47b422b spacectl-0.30.0.tar.gz
+"
diff --git a/testing/spacenavd/APKBUILD b/testing/spacenavd/APKBUILD
index 164e1546f24..a438bc80853 100644
--- a/testing/spacenavd/APKBUILD
+++ b/testing/spacenavd/APKBUILD
@@ -1,10 +1,10 @@
-# Contributor: guddaff <guddaff@protonmail.com>
-# Maintainer: guddaff <guddaff@protonmail.com>
+# Contributor: guddaff <alpine@guddaff.de>
+# Maintainer: guddaff <alpine@guddaff.de>
pkgname=spacenavd
-pkgver=1.0
+pkgver=1.2
pkgrel=0
pkgdesc="user-space driver for 6-dof space-mice"
-url="http://spacenav.sourceforge.net/"
+url="https://spacenav.sourceforge.net/"
arch="all !armhf !armv7 !x86" #armhf, armv7, x86: truct input_event' has no member named 'time'
license="GPL-3.0-or-later"
makedepends="libx11-dev libxi-dev libxtst-dev linux-headers"
@@ -27,5 +27,5 @@ package() {
}
sha512sums="
-a9f243adc4285a9d9200fdf622e1dab87bee908a3e3ef896533405bd497d065a578cfbf8b507cd0c25a5db349ba1c3624c98a363477ecc989594bfb6c8529fa2 spacenavd-1.0.tar.gz
+f9be5a63de4c773dd637393d592bd040c2f64c3b1dc51847f8e3d9fe7d83df7adf6fa6b7af765d664e4ab86b8fa2715355ddc27514276c39c66fa86a46de46ea spacenavd-1.2.tar.gz
"
diff --git a/testing/spampd/APKBUILD b/testing/spampd/APKBUILD
index 5f9ff03a6ed..4a31b0f0d86 100644
--- a/testing/spampd/APKBUILD
+++ b/testing/spampd/APKBUILD
@@ -1,15 +1,15 @@
-# Contributor: Chloe Kudryavtsev <toast@toast.cafe>
-# Maintainer: Chloe Kudryavtsev <toast@toast.cafe>
+# Contributor: Chloe Kudryavtsev <code@toast.bunkerlabs.net>
+# Maintainer:
pkgname=spampd
-pkgver=2.53
-pkgrel=2
+pkgver=2.61
+pkgrel=1
pkgdesc="An L/SMTP proxy that marks spam using spamassassin"
url="http://www.worlddesign.com/index.cfm/page/software/open-source/spampd.htm"
arch="noarch !x86" # perl-mail-spamassassin->perl-db
license="GPL-2.0-or-later"
depends="perl-net-server perl-mail-spamassassin"
install="spampd.pre-install"
-subpackages="$pkgname-doc $pkgname-openrc"
+subpackages="$pkgname-openrc"
source="
spampd.confd
spampd.initd
@@ -26,15 +26,10 @@ package() {
install -m755 -D "$builddir/$pkgname.pl" "$pkgdir/usr/bin/$pkgname"
install -m755 -D "$srcdir/$pkgname.initd" "$pkgdir/etc/init.d/$pkgname"
install -m644 -D "$srcdir/$pkgname.confd" "$pkgdir/etc/conf.d/$pkgname"
- install -m644 -D "$builddir/$pkgname.html" \
- "$pkgdir/usr/share/html/$pkgname.html"
}
-openrc() {
- mkdir -p "$subpkgdir"
- mv "$pkgdir/etc" "$subpkgdir/"
-}
-
-sha512sums="216ab774ac2cc8b54fb8f2155738fd41264b261efd5a7ab95d9910aad5b9699065f42211dbe8021383f0172bfb50cfc9087ea8dc1e53a2223dabd7faf490769c spampd.confd
+sha512sums="
+216ab774ac2cc8b54fb8f2155738fd41264b261efd5a7ab95d9910aad5b9699065f42211dbe8021383f0172bfb50cfc9087ea8dc1e53a2223dabd7faf490769c spampd.confd
4adad6b44509abedcfb5726d09a63b66048468e5ee7942d0e586630a84fb93931f315ed9410894af2cc4e5bff04cd38600ea91cc0b18c3cedd67efe2af6e0e14 spampd.initd
-538d905359bd455916aa8dcad9f3d77ce0fbf6cb722608bb723d186679e04abab784c9ae2c372954028dc1454642d74f4cfd0f63f52dcf439f35406220979ef5 spampd-2.53.tar.gz"
+e2f84c4b24648d4f4db70174f04b72981faa1c54ffc4bbc433d14c730ef4ad7fd4cd3772a476f25be0bee103e951700d038634d14848f1eb90849d1a6655199b spampd-2.61.tar.gz
+"
diff --git a/testing/spark/APKBUILD b/testing/spark/APKBUILD
index 8fae3c01796..cd182c6421d 100644
--- a/testing/spark/APKBUILD
+++ b/testing/spark/APKBUILD
@@ -3,7 +3,7 @@
pkgname=spark
_pkgname=Spark
pkgver=2.8.3
-pkgrel=0
+pkgrel=1
pkgdesc="Cross-platform IM client optimized for businesses and organizations."
url="https://www.igniterealtime.org/projects/spark/"
arch="all !riscv64" # blocked by openjdk8
diff --git a/testing/spdk/APKBUILD b/testing/spdk/APKBUILD
deleted file mode 100644
index 4f63020ca5a..00000000000
--- a/testing/spdk/APKBUILD
+++ /dev/null
@@ -1,50 +0,0 @@
-# Contributor: Duncan Bellamy <dunk@denkimushi.com>
-# Maintainer: Duncan Bellamy <dunk@denkimushi.com>
-pkgname=spdk
-pkgver=22.01.1
-pkgrel=0
-pkgdesc="Storage Performance Development Kit"
-url="https://spdk.io/"
-# only supports 64bit
-arch="aarch64 ppc64le x86_64"
-license="BSD-3-Clause"
-# test script has bad array subscript
-options="!check"
-makedepends="
- bash
- clang
- coreutils
- cunit-dev
- dpdk-dev
- libaio-dev
- llvm
- ncurses-dev
- openssl3-dev
- pmdk-dev
- python3
- util-linux-dev
- "
-subpackages="$pkgname-static $pkgname-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/spdk/spdk/archive/v$pkgver.tar.gz"
-
-build() {
- case "$CARCH" in
- x86_64) export CC=clang export CXX=clang++ ;;
- esac
- # this is not a GNU autoconf script
- ./configure \
- --prefix=/usr \
- --with-shared \
- --with-dpdk \
- --with-pmdk \
- --without-isal
- make
-}
-
-package() {
- DESTDIR="$pkgdir" make install
-}
-
-sha512sums="
-62874510e9b8b8c31ebd8f0decac115015ac0d7ab7b79c761bd6852d341ba8d107074fa45a9aaefee89e36b699219d4bf2ce1ce908e916496406ebcec2b831a9 spdk-22.01.1.tar.gz
-"
diff --git a/testing/speakersafetyd/APKBUILD b/testing/speakersafetyd/APKBUILD
new file mode 100644
index 00000000000..0db920d598c
--- /dev/null
+++ b/testing/speakersafetyd/APKBUILD
@@ -0,0 +1,35 @@
+# Contributor: Milan P. Stanić <mps@arvanta.net>
+# Maintainer: Milan P. Stanić <mps@arvanta.net>
+pkgname=speakersafetyd
+pkgver=0.1.9
+pkgrel=0
+pkgdesc="asahi linux speaker safety daemon"
+url="https://github.com/AsahiLinux/speakersafetyd"
+arch="aarch64"
+license="MIT"
+depends="alsa-ucm-conf-asahi"
+makedepends="alsa-lib-dev cargo cargo-auditable"
+subpackages="$pkgname-openrc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/AsahiLinux/speakersafetyd/archive/refs/tags/$pkgver.tar.gz
+ speakersafetyd.initd
+ "
+
+prepare() {
+ default_prepare
+ cargo update -p speakersafetyd
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release
+}
+
+package() {
+ make DESTDIR=$pkgdir install
+ install -m755 -D "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
+}
+
+sha512sums="
+b237da8d473a89f6cd93c4cc0bef4a5402688c9e6528c54838abeec1d99ec615f69da29483689312da288cd4c4c0186951f60407d8c743d7bdc5a3c1a293fead speakersafetyd-0.1.9.tar.gz
+d577e5c96f240198bd1adff609944c678e725bd6db3378711f3e02d9cad1d6c058d0031c4aa5c91445d63ead6b037ebcffe377f764ba11261e05d72a73f77f7b speakersafetyd.initd
+"
diff --git a/testing/speakersafetyd/speakersafetyd.initd b/testing/speakersafetyd/speakersafetyd.initd
new file mode 100644
index 00000000000..2cd1b641ee1
--- /dev/null
+++ b/testing/speakersafetyd/speakersafetyd.initd
@@ -0,0 +1,7 @@
+#!/sbin/openrc-run
+
+pidfile="/run/speakersafetyd.pid"
+command="/usr/bin/speakersafetyd"
+command_args="-c /usr/share/speakersafetyd/ -b /var/lib/speakersafetyd/blackbox -m 7"
+supervisor="supervise-daemon"
+
diff --git a/testing/spectrwm/APKBUILD b/testing/spectrwm/APKBUILD
deleted file mode 100644
index 89de32fe9cb..00000000000
--- a/testing/spectrwm/APKBUILD
+++ /dev/null
@@ -1,43 +0,0 @@
-# Contributor: Sascha Paunovic <azarus@posteo.net>
-# Maintainer: Sascha Paunovic <azarus@posteo.net>
-pkgname=spectrwm
-_pkgname=SPECTRWM_
-pkgver=3.4.1
-_pkgver=3_4_1
-pkgrel=0
-pkgdesc="dynamic, configurable tiling window manager for X11"
-options="!check" # No testsuite
-url="https://github.com/conformal/spectrwm"
-arch="all"
-license="ISC"
-depends="dmenu terminus-font"
-makedepends="bsd-compat-headers freetype-dev libxcursor-dev libxft-dev
- libxrandr-dev libxt-dev xcb-util-keysyms-dev xcb-util-wm-dev"
-subpackages="$pkgname-doc"
-source="https://github.com/conformal/spectrwm/archive/$_pkgname$_pkgver.tar.gz"
-builddir="$srcdir/$pkgname-$_pkgname$_pkgver"
-
-build() {
- cd "$builddir"/linux
- make PREFIX="/usr"
-}
-
-package() {
- install -Dm644 spectrwm.conf "$pkgdir"/etc/spectrwm.conf
- mkdir "$pkgdir"/etc/spectrwm
- cp spectrwm_*.conf "$pkgdir"/etc/spectrwm/
-
- # make default config work
- install -Dm755 baraction.sh "$pkgdir"/usr/share/spectrwm/baraction.sh
- install -Dm755 screenshot.sh "$pkgdir"/usr/share/spectrwm/screenshot.sh
-
- cd linux
- make PREFIX="/usr" DESTDIR="$pkgdir" install
-
- # remove unneccessary stuff
- rm "$pkgdir"/usr/bin/scrotwm
- # provide convenience symlink
- ln -s "$pkgdir"/usr/bin/spectrwm "$pkgdir"/usr/bin/scrotwm
-}
-
-sha512sums="94d468833124b51fa12b29b173126f10f27dd551d599459e4bea589721b3df6f1f0af0ea67326ed3ad462e1203d3bbcb82032ff83abfa0943ec45afd29dedaa6 SPECTRWM_3_4_1.tar.gz"
diff --git a/testing/speedcrunch/APKBUILD b/testing/speedcrunch/APKBUILD
index 530af854b58..ca564522369 100644
--- a/testing/speedcrunch/APKBUILD
+++ b/testing/speedcrunch/APKBUILD
@@ -2,36 +2,39 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=speedcrunch
pkgver=0.12
-pkgrel=1
+pkgrel=3
pkgdesc="SpeedCrunch is a high-precision scientific calculator."
url="http://www.speedcrunch.org/"
arch="all"
license="GPL-2.0-or-later"
-makedepends="cmake py3-sphinx py3-sphinx-theme-quark
- qt5-qtbase-dev qt5-qttools-dev libxkbcommon-dev"
+makedepends="
+ cmake
+ libxkbcommon-dev
+ py3-sphinx
+ py3-sphinx-theme-quark
+ qt5-qtbase-dev
+ qt5-qttools-dev
+ samurai
+ "
source="https://bitbucket.org/heldercorreia/speedcrunch/get/release-0.12.0.tar.bz2"
builddir="$srcdir/heldercorreia-speedcrunch-ea93b21f9498"
-prepare() {
- mkdir -p build
-}
-
build() {
- cd "$builddir"/build
- cmake ../src \
- -DCMAKE_INSTALL_PREFIX="/usr" \
+ cmake -B build -G Ninja -S src \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=Release \
-DREBUILD_MANUAL=off
- make
+ cmake --build build
}
check() {
- cd "$builddir"/build
- make test
+ ctest --test-dir build --output-on-failure
}
package() {
- cd "$builddir"/build
- make DESTDIR="$pkgdir" install
+ DESTDIR="$pkgdir" cmake --install build
}
-sha512sums="b41f147f2530735af2fad0ecef6047459baed03904ec6d8097a3f21d7d200c2d89beda77676ea1ff762c5c164cd7b639cae84942f61c869acd77aa380c80f141 release-0.12.0.tar.bz2"
+sha512sums="
+b41f147f2530735af2fad0ecef6047459baed03904ec6d8097a3f21d7d200c2d89beda77676ea1ff762c5c164cd7b639cae84942f61c869acd77aa380c80f141 release-0.12.0.tar.bz2
+"
diff --git a/testing/speedtest-go/APKBUILD b/testing/speedtest-go/APKBUILD
index 2845c1e97cc..11e40136338 100644
--- a/testing/speedtest-go/APKBUILD
+++ b/testing/speedtest-go/APKBUILD
@@ -1,21 +1,27 @@
# Contributor: Sean McAvoy <seanmcavoy@gmail.com>
# Maintainer: Sean McAvoy <seanmcavoy@gmail.com>
pkgname=speedtest-go
-pkgver=1.1.4
-pkgrel=3
+pkgver=1.1.5
+pkgrel=7
pkgdesc="web page based speed test, written in go"
url="https://librespeed.org"
arch="all"
license="LGPL-3.0-only"
makedepends="go"
-options="!check" # no check suite
+# !check: no check suite
+# net: fetch dependencies
+options="!check net"
subpackages="$pkgname-doc $pkgname-openrc"
source="$pkgname-$pkgver.tar.gz::https://github.com/librespeed/speedtest-go/archive/v$pkgver.tar.gz
speedtest-go.initd
settings-change.patch"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
build() {
- go build -ldflags "-w -s" -trimpath -o speedtest main.go
+ go build -trimpath -o speedtest main.go
}
package() {
@@ -27,7 +33,7 @@ package() {
}
sha512sums="
-e02f75bddcffe68c3f131b0dcc75a65912b8538fdb4438f53ff12425f2b7cacfcbffd10c26f71a73a0a5cd6d4e49922d3a847c8861d3ee8e2a1ad77c9f78ee0f speedtest-go-1.1.4.tar.gz
+556d52b6e8714f6888d7428b74717db0b9faa7d713ab67d1f37c47b7ba671b0be09aa264c02fc523ce2cf2d45300112a7405d0dfbb23e8bec70431e3dc370455 speedtest-go-1.1.5.tar.gz
197efb6f98bed3a09c1c71e520265b48671c8e4dddabf3f9d7f16e8384e1ef84b800a115d5c656fb47e48d07a92cfe387f2dba5b9801fa03e720f762c6394ff7 speedtest-go.initd
-e7b0776bd9f4b10b763c4be7a51f388b1a213be979e98438c97e7da216d894044cf207c09e949b14b234cbae97e0f41474a885d5f5fa41e60add06912093ccc6 settings-change.patch
+5699367c3188b8b9e58caf14641bb2bb0e9604804325649930757c342bf81700c02ad0610304c710d884b58641291bc4a16a65c80f8767f33b4137b624bef35a settings-change.patch
"
diff --git a/testing/speedtest-go/settings-change.patch b/testing/speedtest-go/settings-change.patch
index d879b8d50eb..61eee8c54c7 100644
--- a/testing/speedtest-go/settings-change.patch
+++ b/testing/speedtest-go/settings-change.patch
@@ -1,8 +1,8 @@
diff --git a/settings.toml b/settings.toml
-index 23c1f019ec..79a1b8e49d 100644
+index bdfe9fb..0c8c419 100644
--- a/settings.toml
+++ b/settings.toml
-@@ -11,7 +11,7 @@ server_lng=1
+@@ -13,7 +13,7 @@ server_lng=1
ipinfo_api_key=""
# assets directory path, defaults to `assets` in the same directory
@@ -11,7 +11,7 @@ index 23c1f019ec..79a1b8e49d 100644
# password for logging into statistics page
statistics_password="PASSWORD"
-@@ -20,11 +20,11 @@ redact_ip_addresses=false
+@@ -22,14 +22,14 @@ redact_ip_addresses=false
# database type for statistics data, currently supports: none, memory, bolt, mysql, postgresql
# if none is specified, no telemetry/stats will be recorded, and no result PNG will be generated
@@ -25,4 +25,6 @@ index 23c1f019ec..79a1b8e49d 100644
# if you use `bolt` as database, set database_file to database file location
-database_file="speedtest.db"
+database_file=""
-
+
+ # TLS and HTTP/2 settings. TLS is required for HTTP/2
+ enable_tls=false
diff --git a/testing/speedtest/APKBUILD b/testing/speedtest/APKBUILD
index 4c68c905cb3..48f36b12b15 100644
--- a/testing/speedtest/APKBUILD
+++ b/testing/speedtest/APKBUILD
@@ -1,9 +1,9 @@
# Contributor: Leonardo Arena <rnalrd@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
-_php=php8
+_php=php82
pkgname=speedtest
-pkgver=5.2.4
-pkgrel=0
+pkgver=5.2.5
+pkgrel=1
pkgdesc="Self-hosted HTML5 Speedtest"
url="https://librespeed.org"
arch="noarch"
@@ -34,5 +34,5 @@ examples() {
}
sha512sums="
-a6d319dcb7ee0c3e89b1a5d3ca031f9845032ea60b041bdaa705c2ddea8ae2786bfe4cd4ee1ef94eef869524d5eb241d2cc7ffd66651cd96eb4557f2356d53bb speedtest-5.2.4.tar.gz
+cf9ff33bea2a94c1d5b614d2f94eb9dad71fb1bd247f9a762ba9b8909adb1bf5a1286cd1ed98bbae43c3fc0f53474de2ef0cac670c358793df70c3ac17939f2d speedtest-5.2.5.tar.gz
"
diff --git a/testing/speedtest_exporter/APKBUILD b/testing/speedtest_exporter/APKBUILD
index 4b0bac848a0..3fd2c81ce25 100644
--- a/testing/speedtest_exporter/APKBUILD
+++ b/testing/speedtest_exporter/APKBUILD
@@ -1,15 +1,14 @@
# Contributor: Marvin Preuss <marvin@xsteadfastx.org>
# Maintainer: Marvin Preuss <marvin@xsteadfastx.org>
pkgname=speedtest_exporter
-pkgver=0.3.1
-pkgrel=3
+pkgver=0.3.2
+pkgrel=7
pkgdesc="Prometheus exporter for Speedtest metrics"
url="https://github.com/nlamirault/speedtest_exporter"
# riscv64 unsupported by Golang deps
arch="all !riscv64"
license="Apache-2.0"
makedepends="bash go make"
-checkdepends="glide"
install="$pkgname.pre-install"
subpackages="$pkgname-openrc"
pkgusers="speedtest-exporter"
@@ -20,13 +19,19 @@ source="
$pkgname.confd
0001-Fix-log.Infof-format-test-error.patch
"
+options="!check" # no tests
-build() {
- make build
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+prepare() {
+ default_prepare
+ go mod download
}
-check() {
- make test
+build() {
+ make build
}
package() {
@@ -37,8 +42,9 @@ package() {
install -Dm644 "$srcdir"/$pkgname.confd \
"$pkgdir"/etc/conf.d/$pkgname
}
+
sha512sums="
-cb6073ca622e8df2b8436a2e30af2c9c7c99be6d950d4383de014c000e279a1ea0394bed3097754f24923859bbc2d5ebf20787eb90417c15aad35a0b88b64161 speedtest_exporter-0.3.1.tar.gz
+10d4658f698d6623ad700506ccd22781a22015799ac86fbfc390fdda2564a4df66da1bb2d6710fdcb291e5ce0063d39d46320d774f8856d61c5b7c9bf127accd speedtest_exporter-0.3.2.tar.gz
29fa32f35accbc8f26864258c957e1dbaf03e54b68c2361ba2c664fca65de8cfeac971ed96e48b0d556611f7af041b1f4711a36e189a3e746fc2a22cecece2fb speedtest_exporter.initd
5110af642337757b6dd7abc3d9051f2f46256300cf6d8d29e94b5a3acc4fc7920e0d498f568e1831ce4821c8550d8752875a3077df5cc03b40b2282742e924df speedtest_exporter.confd
fb38b8ac3b033e89c01180a171c108695e63ce2ca697b8e4fd199a7d4efd328890451ecfcda570361ea19573d4690235982245ca2493e9907d3d04944e208b81 0001-Fix-log.Infof-format-test-error.patch
diff --git a/testing/spike/APKBUILD b/testing/spike/APKBUILD
new file mode 100644
index 00000000000..6d13a616a98
--- /dev/null
+++ b/testing/spike/APKBUILD
@@ -0,0 +1,34 @@
+# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
+# Maintainer: Sören Tempel <soeren+alpine@soeren-tempel.net>
+pkgname=spike
+pkgver=1.1.0
+pkgrel=0
+pkgdesc="A simulator for the RISC-V instruction set architecture"
+url="https://github.com/riscv-software-src/riscv-isa-sim"
+arch="all !riscv64"
+license="BSD-3-Clause"
+makedepends="dtc"
+options="!check" # XXX: no proper upstream test suite
+source="https://github.com/riscv-software-src/riscv-isa-sim/archive/refs/tags/v$pkgver/spike-$pkgver.tar.gz"
+builddir="$srcdir/riscv-isa-sim-$pkgver"
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var
+ make
+}
+
+package() {
+ # The shared libraries provided by spike aren't versioned,
+ # hence there is really no use in packaging them right now.
+ make DESTDIR="$pkgdir" install-exes
+}
+
+sha512sums="
+089f3ae8e505ffde7bb4d3d7ef2c5db082c616e135e4efe952151dd195b1493f46ae4c0e33fc6b708935397b80922c643cb9e66760cbf3b2286f1f927e8dee9a spike-1.1.0.tar.gz
+"
diff --git a/testing/spin/APKBUILD b/testing/spin/APKBUILD
index 4010a072d68..07d8691b239 100644
--- a/testing/spin/APKBUILD
+++ b/testing/spin/APKBUILD
@@ -3,7 +3,7 @@
pkgname=spin
pkgver=6.5.2
_pkgver=${pkgver//./}
-pkgrel=0
+pkgrel=1
pkgdesc="Tool for formal verification of distributed software systems"
options="!check" # No testsuite
url="http://spinroot.com/"
diff --git a/testing/spiritvnc/APKBUILD b/testing/spiritvnc/APKBUILD
new file mode 100644
index 00000000000..97de7755e30
--- /dev/null
+++ b/testing/spiritvnc/APKBUILD
@@ -0,0 +1,26 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=spiritvnc
+pkgver=0.6.0
+pkgrel=0
+pkgdesc="FLTK-based multi-view VNC client"
+url="https://github.com/willbprog127/spiritvnc-fltk-no-libssh2"
+arch="all"
+license="BSD-3-Clause"
+depends="openssh-client"
+makedepends="fltk-dev libvncserver-dev"
+source="https://github.com/willbprog127/spiritvnc-fltk-no-libssh2/archive/v$pkgver/spiritvnc-$pkgver.tar.gz"
+builddir="$srcdir/spiritvnc-fltk-no-libssh2-$pkgver"
+options="!check" # no tests provided
+
+build() {
+ make spiritvnc-fltk
+}
+
+package() {
+ install -Dvm755 spiritvnc-fltk "$pkgdir"/usr/bin/spiritvnc
+}
+
+sha512sums="
+b9442e8ae4035d5b13e9ca2140450a7f75ff3916cac67293ba4813ab1375d3c0e3cae0464b07a639d11ef9abf1556c3c5538483afba9c1aad332bb9e20943296 spiritvnc-0.6.0.tar.gz
+"
diff --git a/testing/spirv-llvm-translator/APKBUILD b/testing/spirv-llvm-translator/APKBUILD
deleted file mode 100644
index 1238cd3ad43..00000000000
--- a/testing/spirv-llvm-translator/APKBUILD
+++ /dev/null
@@ -1,49 +0,0 @@
-# Contributor: Dennis Krupenik <dennis@krupenik.com>
-# Maintainer: Dennis Krupenik <dennis@krupenik.com>
-pkgname=spirv-llvm-translator
-_pkgname=SPIRV-LLVM-Translator
-pkgver=12.0.0
-pkgrel=2
-pkgdesc="Library for bi-directional translation between SPIR-V and LLVM IR"
-url="https://github.com/KhronosGroup/SPIRV-LLVM-Translator"
-arch="all"
-license="NCSA"
-_llvmver=12
-depends_dev="clang-dev llvm$_llvmver-dev spirv-tools-dev"
-makedepends="$depends_dev cmake llvm$_llvmver-static libxml2-dev samurai"
-checkdepends="llvm$_llvmver-test-utils"
-subpackages="$pkgname-dev"
-source="https://github.com/KhronosGroup/SPIRV-LLVM-Translator/archive/v$pkgver/$_pkgname-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgname-$pkgver"
-
-case "$CARCH" in
- x86_64) ;;
- # Failing tests
- *) options="!check";;
-esac
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build -G Ninja \
- -DCMAKE_BUILD_TYPE=None \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DBUILD_SHARED_LIBS=True \
- -DLLVM_SPIRV_INCLUDE_TESTS=1 \
- -DLLVM_EXTERNAL_LIT=/usr/bin/lit \
- $CMAKE_CROSSOPTS .
- ninja -C build
-}
-
-check() {
- ninja -C build check-llvm-spirv
-}
-
-package() {
- DESTDIR="$pkgdir" ninja -C build install
-}
-
-sha512sums="
-c23ef81802d2bf743564762815d7375a804bdf8029efd7430faea0b48b5e30a9778c1175f52309b522a07aadf8ff77461b912c1fb3b95af9b09273a483eac82a SPIRV-LLVM-Translator-12.0.0.tar.gz
-"
diff --git a/testing/splitter/APKBUILD b/testing/splitter/APKBUILD
new file mode 100644
index 00000000000..3fe5845e4fc
--- /dev/null
+++ b/testing/splitter/APKBUILD
@@ -0,0 +1,48 @@
+# Maintainer: Willow Barraco <contact@willowbarraco.fr>
+pkgname=splitter
+pkgver=0.3.0
+pkgrel=0
+pkgdesc="A speedrunning GUI"
+url="https://sr.ht/~stacyharper/splitter/"
+# hare-cairo & hare-xkb currently doesn't build on riscv64
+arch="x86_64 aarch64" # hare
+license="AGPL-3.0-or-later"
+makedepends="
+ wayland-dev
+ wayland-protocols
+ libbsd-dev
+ cairo-dev
+ libxkbcommon-dev
+ hare
+ hari
+ hare-ev
+ hare-wayland
+ hare-cairo
+ hare-xkb
+ scdoc
+ "
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://git.sr.ht/~stacyharper/splitter/archive/$pkgver.tar.gz"
+
+# Work-around of https://todo.sr.ht/~sircmpwn/hare/723#event-261138
+case "$CARCH" in
+ aarch64)
+ export LDFLAGS="-no-pie $LDFLAGS"
+ ;;
+esac
+
+build() {
+ make -j1 PREFIX=/usr
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" PREFIX="/usr" install
+}
+
+sha512sums="
+292dac14028fd90baa8106fdd8944fba987549479469521e88b5788fef15bfd28d4630138341f2786d3e74d5634804473ff2abe8a41fc3bc83c5369ba576a079 splitter-0.3.0.tar.gz
+"
diff --git a/testing/splix/APKBUILD b/testing/splix/APKBUILD
deleted file mode 100644
index 10b8465f42a..00000000000
--- a/testing/splix/APKBUILD
+++ /dev/null
@@ -1,27 +0,0 @@
-# Maintainer: Er2 <er2@dismail.de>
-# Contributor: Er2 <er2@dismail.de>
-pkgname=splix
-pkgver=2.0.0
-pkgrel=0
-pkgdesc="SPL driver for CUPS"
-url="http://splix.ap2c.org/"
-arch="all"
-license="GPL-2.0-only"
-depends="cups"
-makedepends="cups-dev"
-options="!check" # no testsuite
-source="http://downloads.sourceforge.net/project/splix/splix/$pkgver/splix-$pkgver.tar.bz2
- error.patch
- "
-build() {
- make DISABLE_JBIG=1
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-2c460f10defab2480ce68edd80c9a170430f624262f55a9a6be4ac4f9ec5bdf326bc015370eec5cb98cc504477f2adf0ae9ade260126fd1a7e79cd423df54811 splix-2.0.0.tar.bz2
-9d3e9e60a4a0fc86272ffb44c7e858de9fee6eae3da3a433bd882dfeded0ceae1a18177f1f64e026eff75634da15e4e01acf74f70ada1d58a0c74f866b112e84 error.patch
-"
diff --git a/testing/splix/error.patch b/testing/splix/error.patch
deleted file mode 100644
index 666baf8b215..00000000000
--- a/testing/splix/error.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-This patch is needed to fix compilation error on gcc 4.5+
-===================================================================
---- a/src/ppdfile.cpp
-+++ b/src/ppdfile.cpp
-@@ -282,7 +282,7 @@
- * Opérateur d'assignation
- * Assignment operator
- */
--void PPDFile::Value::operator = (const PPDFile::Value::Value &val)
-+void PPDFile::Value::operator = (const PPDFile::Value &val)
- {
- if (_preformatted)
- delete[] _preformatted;
diff --git a/testing/spnavcfg/APKBUILD b/testing/spnavcfg/APKBUILD
index 9035d7e0803..56db2146fef 100644
--- a/testing/spnavcfg/APKBUILD
+++ b/testing/spnavcfg/APKBUILD
@@ -1,20 +1,22 @@
# Contributor: guddaff <guddaff@protonmail.com>
# Maintainer: guddaff <guddaff@protonmail.com>
pkgname=spnavcfg
-pkgver=1.0
+pkgver=1.1
pkgrel=0
pkgdesc="spacenav interactive configuration GUI"
-url="http://spacenav.sourceforge.net/"
+url="https://spacenav.sourceforge.net/"
arch="all"
license="GPL-3.0-or-later"
makedepends="qt5-qtbase-dev libspnav-dev"
options="!check" # no checks
-source="$pkgname-$pkgver.tar.gz::https://github.com/FreeSpacenav/spnavcfg/archive/refs/tags/v$pkgver.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/FreeSpacenav/spnavcfg/archive/refs/tags/v$pkgver.tar.gz
+ makefile.patch
+ "
build() {
# not automake
./configure --prefix=/usr
- make UIC=uic-qt5 MOC=moc-qt5 RCC=rcc-qt5
+ make
}
package() {
@@ -22,5 +24,6 @@ package() {
}
sha512sums="
-36db54c47db14a684bf8ba78342d5070b94e8969db7d542626c5a225180f9858bfecb8f46fd11d1bb5364b315599fd173edd5db241f93d304236a271ed49aec3 spnavcfg-1.0.tar.gz
+00166b2cf507a449df4cdf2e7865ec002a3b8d193e961c87569b944e1a81bbc4104dd16335c4bf7628a2477cbec2ab07e4f88e6e60792e0156002b52152d3fb7 spnavcfg-1.1.tar.gz
+8391b27c94e83157294d84b32164e2fb82a7998d2df4c07da478eb7294b7c2b49b2b371dbed7bbd2e0ac3264973a97e7a455cf227bb2ac196b7232fe816cd829 makefile.patch
"
diff --git a/testing/spnavcfg/makefile.patch b/testing/spnavcfg/makefile.patch
new file mode 100644
index 00000000000..8e5d70a65e2
--- /dev/null
+++ b/testing/spnavcfg/makefile.patch
@@ -0,0 +1,14 @@
+Patch-Source: https://aur.archlinux.org/cgit/aur.git/tree/Makefile.in.diff?h=spnavcfg
+diff --git a/Makefile.in b/Makefile.in
+index b760f4d..f66ba22 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -2,7 +2,7 @@ csrc = $(wildcard src/*.c)
+ ccsrc = $(wildcard src/*.cc)
+ mochdr = src/ui.h
+ mocsrc = $(mochdr:.h=.moc.cc)
+-obj = $(csrc:.c=.o) $(ccsrc:.cc=.o) $(mocsrc:.cc=.o) res.cc
++obj = $(sort $(csrc:.c=.o) $(ccsrc:.cc=.o) $(mocsrc:.cc=.o)) res.cc
+ dep = $(csrc:.c=.d) $(ccsrc:.cc=.d)
+ bin = spnavcfg
+
diff --git a/testing/sponskrub/APKBUILD b/testing/sponskrub/APKBUILD
index 78a3f6d33b8..f55353937a9 100644
--- a/testing/sponskrub/APKBUILD
+++ b/testing/sponskrub/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Sebastian Hudak <sebastian@sebsite.pw>
pkgname=sponskrub
pkgver=3.7.2
-pkgrel=0
+pkgrel=6
pkgdesc="Command-line utility to strip out advertisements from downloaded YouTube videos"
url="https://github.com/faissaloo/SponSkrub"
arch="x86_64" # limited by dub
@@ -20,4 +20,6 @@ package() {
install -Dm755 sponskrub "$pkgdir"/usr/bin/sponskrub
}
-sha512sums="5584dafed292201baeb36a1b5585d56070b4e3db9e5e2f1600dae6bdc21db43c4e7aa65eb1b881099f7211278613856422de2d53671fdda4f3b0aa3c85c8c5b4 sponskrub-3.7.2.tar.gz"
+sha512sums="
+5584dafed292201baeb36a1b5585d56070b4e3db9e5e2f1600dae6bdc21db43c4e7aa65eb1b881099f7211278613856422de2d53671fdda4f3b0aa3c85c8c5b4 sponskrub-3.7.2.tar.gz
+"
diff --git a/testing/spotify-player/APKBUILD b/testing/spotify-player/APKBUILD
new file mode 100644
index 00000000000..c6f2067f5e5
--- /dev/null
+++ b/testing/spotify-player/APKBUILD
@@ -0,0 +1,42 @@
+# Contributor: Thomas Kienlen <kommander@laposte.net>
+# Maintainer: Thomas Kienlen <kommander@laposte.net>
+pkgname=spotify-player
+pkgver=0.16.3
+pkgrel=0
+pkgdesc="Command driven spotify player"
+url="https://github.com/aome510/spotify-player"
+arch="x86_64 aarch64 x86 ppc64le" # limited by rust/cargo, does not compile on armv7, armhf
+license="MIT"
+makedepends="
+ alsa-lib-dev
+ cargo
+ cargo-auditable
+ dbus-dev
+ openssl-dev
+ wayland-dev
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/aome510/spotify-player/archive/v$pkgver.tar.gz"
+
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen \
+ --no-default-features --features 'alsa-backend,media-control,notify,streaming,daemon'
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm755 target/release/spotify_player -t "$pkgdir"/usr/bin
+}
+
+sha512sums="
+01c9f3bfa93e410531bc3e070090c7a29bbed815ed2be1e4dbd48b70697198d522a336089e0533d404c7c1c13af59a49263727bd9d0aaf5753773f817e7aa876 spotify-player-0.16.3.tar.gz
+"
diff --git a/testing/spotify-qt/APKBUILD b/testing/spotify-qt/APKBUILD
deleted file mode 100644
index 5f5e7cf5eba..00000000000
--- a/testing/spotify-qt/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer:
-pkgname=spotify-qt
-pkgver=3.8
-pkgrel=0
-pkgdesc="Lightweight Spotify client using Qt"
-url="https://github.com/kraxarn/spotify-qt"
-arch="all"
-license="GPL-3.0-or-later"
-makedepends="cmake samurai qt5-qtbase-dev qt5-qtsvg-dev"
-source="https://github.com/kraxarn/spotify-qt/archive/v$pkgver/spotify-qt-$pkgver.tar.gz
- disable-crash-handler.patch
- "
-options="!check" # no tests provided
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -G Ninja -B build \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DBUILD_SHARED_LIBS=True \
- -DCMAKE_BUILD_TYPE=MinSizeRel \
- -DCMAKE_VERBOSE_MAKEFILE=True \
- $CMAKE_CROSSOPTS .
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-
-sha512sums="
-0c93ad31326d8e13315e9f2baf7342ea9161cd6609de839dae2edf2d1fdf8151d990ff1ec1a0fab9e3e9f8d7bdf1d92d7cb49a6516f8d7c73690c73fecee9a67 spotify-qt-3.8.tar.gz
-2e9db2682da53be224f1bc4cb5c6c6eb54f32ba53e93a774af16e114fcbe81a0528a254c57955c97ee73f2fe3df9b04f5bce4f88e03e4e82282bb85c65f14f13 disable-crash-handler.patch
-"
diff --git a/testing/spotify-qt/disable-crash-handler.patch b/testing/spotify-qt/disable-crash-handler.patch
deleted file mode 100644
index ec5f22510d2..00000000000
--- a/testing/spotify-qt/disable-crash-handler.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-Fix build on musl.
-
-Patch-Source: https://github.com/void-linux/void-packages/blob/master/srcpkgs/spotify-qt/patches/disable-crash-handler.patch
-
---- a/lib/CMakeLists.txt
-+++ b/lib/CMakeLists.txt
-@@ -26,13 +26,6 @@
- # Version macros
- target_compile_definitions(spotify-qt-lib PUBLIC LIB_VERSION="v${PROJECT_VERSION}")
-
--# Check if using GCC
--if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
-- # Used by crash handler
-- target_compile_definitions(spotify-qt-lib PRIVATE IS_GNU_CXX)
-- # Enable all compiler warnings
-- target_compile_options(spotify-qt-lib PRIVATE -Wall -Wextra)
--endif ()
-
- # Link optional libraries
- if (LIB_QT_LIBRARIES)
diff --git a/testing/spotify-tui/APKBUILD b/testing/spotify-tui/APKBUILD
index 714c8164a58..b68df8cd3f9 100644
--- a/testing/spotify-tui/APKBUILD
+++ b/testing/spotify-tui/APKBUILD
@@ -2,34 +2,28 @@
# Maintainer: Thomas Kienlen <kommander@laposte.net>
pkgname=spotify-tui
pkgver=0.25.0
-pkgrel=0
+pkgrel=2
pkgdesc="Spotify for the terminal written in Rust"
url="https://github.com/Rigellute/spotify-tui"
arch="x86_64 armv7 armhf aarch64 x86 ppc64le" # limited by rust/cargo
license="MIT"
-makedepends="rust cargo openssl-dev libxcb-dev python3"
-source="$pkgname-$pkgver.tar.gz::https://github.com/Rigellute/spotify-tui/archive/v$pkgver/spotifyd-$pkgver.tar.gz"
+makedepends="cargo openssl-dev libxcb-dev python3 cargo-auditable"
+source="$pkgname-$pkgver.tar.gz::https://github.com/Rigellute/spotify-tui/archive/v$pkgver/spotifyd-$pkgver.tar.gz
+ deps.patch
+ "
prepare() {
default_prepare
- # Optimize binary for size (9 MiB -> 4.4 MiB).
- cat >> Cargo.toml <<-EOF
-
- [profile.release]
- codegen-units = 1
- lto = true
- opt-level = "z"
- panic = "abort"
- EOF
+ cargo fetch --target="$CTARGET" --locked
}
build() {
- cargo build --release --locked --target-dir "target/"
+ cargo auditable build --release --frozen
}
check() {
- cargo test --locked --target-dir=target
+ cargo test --frozen
}
package() {
@@ -38,4 +32,5 @@ package() {
sha512sums="
92a2ab53059b7d58e502a732f16a8eb725e19ea2e13c4f63dd64e3f0d62a3999f6b6b338c396db734f6ee9d63459da15e69b392f945c8f967d794447ac5ff8a4 spotify-tui-0.25.0.tar.gz
+6e0e8b5c6e1c9417f85ad2b04d80ce86743080755668e1685e1361ef7cc621dd6c84ee4da973853123389d18eb97d9fbbc2d9e9ed0ffca75246eadf44040f0fc deps.patch
"
diff --git a/testing/spotify-tui/deps.patch b/testing/spotify-tui/deps.patch
new file mode 100644
index 00000000000..6f06532f109
--- /dev/null
+++ b/testing/spotify-tui/deps.patch
@@ -0,0 +1,2603 @@
+diff --git a/Cargo.lock b/Cargo.lock
+index fa129f0..d7464d3 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -4,18 +4,18 @@ version = 3
+
+ [[package]]
+ name = "addr2line"
+-version = "0.14.1"
++version = "0.19.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "a55f82cfe485775d02112886f4169bde0c5894d75e79ead7eafe7e40a25e45f7"
++checksum = "a76fd60b23679b7d19bd066031410fb7e458ccc5e958eb5c325888ce4baedc97"
+ dependencies = [
+ "gimli",
+ ]
+
+ [[package]]
+ name = "adler"
+-version = "0.2.3"
++version = "1.0.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "ee2a4ec343196209d6594e19543ae87a39f96d5534d7174822a3ad825dd6ed7e"
++checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
+
+ [[package]]
+ name = "adler32"
+@@ -25,93 +25,95 @@ checksum = "aae1277d39aeec15cb388266ecc24b11c80469deae6067e17a1a7aa9e5c1f234"
+
+ [[package]]
+ name = "aho-corasick"
+-version = "0.7.13"
++version = "1.0.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "043164d8ba5c4c3035fec9bbee8647c0261d788f3474306f93bb65901cae0e86"
++checksum = "67fc08ce920c31afb70f013dcce1bfc3a3195de6a228474e45e1f145b36f8d04"
+ dependencies = [
+ "memchr",
+ ]
+
+ [[package]]
+-name = "ansi_term"
+-version = "0.11.0"
++name = "android_system_properties"
++version = "0.1.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b"
++checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311"
++dependencies = [
++ "libc",
++]
++
++[[package]]
++name = "ansi_term"
++version = "0.12.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "d52a9bb7ec0cf484c551830a7ce27bd20d67eac647e1befb56b0be4ee39a55d2"
+ dependencies = [
+ "winapi 0.3.9",
+ ]
+
+ [[package]]
+ name = "anyhow"
+-version = "1.0.43"
++version = "1.0.71"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "28ae2b3dec75a406790005a200b1bd89785afc02517a00ca99ecfe093ee9e6cf"
++checksum = "9c7d0618f0e0b7e8ff11427422b64564d5fb0be1940354bfe2e0529b18a9d9b8"
+
+ [[package]]
+ name = "arboard"
+-version = "1.2.0"
++version = "1.2.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "c3ac39a01d5684967619a6755f3cfc397e5202b5f012d0954ac5016f4b2a33eb"
++checksum = "47044a1809e2953fe6d084312b81dcb7d9ffc24fee45aa39e5b938f66f75b8a8"
+ dependencies = [
+ "clipboard-win",
+ "core-graphics",
+ "image",
+- "lazy_static",
+ "log",
+ "objc",
+ "objc-foundation",
+ "objc_id",
++ "once_cell",
++ "parking_lot",
+ "scopeguard",
+ "thiserror",
+ "winapi 0.3.9",
+ "x11rb",
+ ]
+
+-[[package]]
+-name = "arrayref"
+-version = "0.3.6"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "a4c527152e37cf757a3f78aae5a06fbeefdb07ccc535c980a3208ee3060dd544"
+-
+-[[package]]
+-name = "arrayvec"
+-version = "0.5.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "cff77d8686867eceff3105329d4698d96c2391c176d5d03adc90c7389162b5b8"
+-
+ [[package]]
+ name = "atty"
+ version = "0.2.14"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8"
+ dependencies = [
+- "hermit-abi",
++ "hermit-abi 0.1.19",
+ "libc",
+ "winapi 0.3.9",
+ ]
+
+ [[package]]
+ name = "autocfg"
+-version = "0.1.7"
++version = "0.1.8"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "1d49d90015b3c36167a20fe2810c5cd875ad504b39cff3d4eae7977e6b7c1cb2"
++checksum = "0dde43e75fd43e8a1bf86103336bc699aa8d17ad1be60c76c0bdfd4828e19b78"
++dependencies = [
++ "autocfg 1.1.0",
++]
+
+ [[package]]
+ name = "autocfg"
+-version = "1.0.0"
++version = "1.1.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "f8aac770f1885fd7e387acedd76065302551364496e46b3dd00860b2f8359b9d"
++checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
+
+ [[package]]
+ name = "backtrace"
+-version = "0.3.56"
++version = "0.3.67"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "9d117600f438b1707d4e4ae15d3595657288f8235a0eb593e80ecc98ab34e1bc"
++checksum = "233d376d6d185f2a3093e58f283f60f880315b6c60075b01f36b3b85154564ca"
+ dependencies = [
+ "addr2line",
++ "cc",
+ "cfg-if 1.0.0",
+ "libc",
+- "miniz_oxide 0.4.3",
++ "miniz_oxide 0.6.2",
+ "object",
+ "rustc-demangle",
+ ]
+@@ -127,15 +129,9 @@ dependencies = [
+
+ [[package]]
+ name = "base64"
+-version = "0.11.0"
++version = "0.13.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "b41b7ea54a0c9d92199de89e20e58d49f02f8e699814ef3fdf266f6f748d15c7"
+-
+-[[package]]
+-name = "base64"
+-version = "0.12.3"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "3441f0f7b02788e948e47f457ca01f1d7e6d92c693bc132c22b087d3141c03ff"
++checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8"
+
+ [[package]]
+ name = "bitflags"
+@@ -143,17 +139,6 @@ version = "1.2.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693"
+
+-[[package]]
+-name = "blake2b_simd"
+-version = "0.5.10"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "d8fb2d74254a3a0b5cac33ac9f8ed0e44aa50378d9dbb2e5d83bd21ed1dc2c8a"
+-dependencies = [
+- "arrayref",
+- "arrayvec",
+- "constant_time_eq",
+-]
+-
+ [[package]]
+ name = "block"
+ version = "0.1.6"
+@@ -162,21 +147,21 @@ checksum = "0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a"
+
+ [[package]]
+ name = "bumpalo"
+-version = "3.4.0"
++version = "3.13.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "2e8c087f005730276d1096a652e92a8bacee2e2472bcc9715a74d2bec38b5820"
++checksum = "a3e2c3daef883ecc1b5d58c15adae93470a91d425f3532ba1695849656af3fc1"
+
+ [[package]]
+ name = "bytemuck"
+-version = "1.4.1"
++version = "1.13.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "41aa2ec95ca3b5c54cf73c91acf06d24f4495d5f1b1c12506ae3483d646177ac"
++checksum = "17febce684fd15d89027105661fec94afb475cb995fbc59d2865198446ba2eea"
+
+ [[package]]
+ name = "byteorder"
+-version = "1.3.4"
++version = "1.4.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "08c48aae112d48ed9f069b33538ea9e3e90aa263cfa3d1c24309612b1f7472de"
++checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610"
+
+ [[package]]
+ name = "bytes"
+@@ -194,6 +179,12 @@ version = "0.5.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "0e4cec68f03f32e44924783795810fa50a7035d8c8ebe78580ad7e6c703fba38"
+
++[[package]]
++name = "bytes"
++version = "1.4.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "89b2fd2a0dcf38d7971e2194b6b6eebab45ae01067456a7fd93d5547a61b70be"
++
+ [[package]]
+ name = "cassowary"
+ version = "0.3.0"
+@@ -202,9 +193,9 @@ checksum = "df8670b8c7b9dae1793364eafadf7239c40d669904660c5960d74cfd80b46a53"
+
+ [[package]]
+ name = "cc"
+-version = "1.0.58"
++version = "1.0.79"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "f9a06fb2e53271d7c279ec1efea6ab691c35a2ae67ec0d91d7acec0caf13b518"
++checksum = "50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f"
+
+ [[package]]
+ name = "cfg-if"
+@@ -220,22 +211,26 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
+
+ [[package]]
+ name = "chrono"
+-version = "0.4.13"
++version = "0.4.24"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "c74d84029116787153e02106bf53e66828452a4b325cc8652b788b5967c0a0b6"
++checksum = "4e3c5919066adf22df73762e50cffcde3a758f2a848b113b586d1f86728b673b"
+ dependencies = [
++ "iana-time-zone",
++ "js-sys",
+ "num-integer",
+ "num-traits",
+ "rustc-serialize",
+ "serde",
+ "time",
++ "wasm-bindgen",
++ "winapi 0.3.9",
+ ]
+
+ [[package]]
+ name = "clap"
+-version = "2.33.3"
++version = "2.34.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "37e58ac78573c40708d45522f0d80fa2f01cc4f9b4e2bf749807255454312002"
++checksum = "a0610544180c38b88101fecf2dd634b174a62eef6946f84dfc6a7127512b381c"
+ dependencies = [
+ "ansi_term",
+ "atty",
+@@ -248,9 +243,9 @@ dependencies = [
+
+ [[package]]
+ name = "clipboard-win"
+-version = "4.0.3"
++version = "4.5.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "5123c6b97286809fea9e38d2c9bf530edbcb9fc0d8f8272c28b0c95f067fa92d"
++checksum = "7191c27c2357d9b7ef96baac1773290d4ca63b24205b82a3fd8a0637afcf0362"
+ dependencies = [
+ "error-code",
+ "str-buf",
+@@ -266,58 +261,27 @@ dependencies = [
+ "bitflags",
+ ]
+
+-[[package]]
+-name = "cloudabi"
+-version = "0.1.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "4344512281c643ae7638bbabc3af17a11307803ec8f0fcad9fae512a8bf36467"
+-dependencies = [
+- "bitflags",
+-]
+-
+ [[package]]
+ name = "color_quant"
+ version = "1.1.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b"
+
+-[[package]]
+-name = "constant_time_eq"
+-version = "0.1.5"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "245097e9a4535ee1e3e3931fcfcd55a796a44c643e8596ff6566d68f09b87bbc"
+-
+ [[package]]
+ name = "core-foundation"
+-version = "0.7.0"
++version = "0.9.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "57d24c7a13c43e870e37c1556b74555437870a04514f7685f5b354e090567171"
++checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146"
+ dependencies = [
+- "core-foundation-sys 0.7.0",
+- "libc",
+-]
+-
+-[[package]]
+-name = "core-foundation"
+-version = "0.9.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "0a89e2ae426ea83155dccf10c0fa6b1463ef6d5fcb44cee0b224a408fa640a62"
+-dependencies = [
+- "core-foundation-sys 0.8.2",
++ "core-foundation-sys",
+ "libc",
+ ]
+
+ [[package]]
+ name = "core-foundation-sys"
+-version = "0.7.0"
++version = "0.8.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "b3a71ab494c0b5b860bdc8407ae08978052417070c2ced38573a9157ad75b8ac"
+-
+-[[package]]
+-name = "core-foundation-sys"
+-version = "0.8.2"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "ea221b5284a47e40033bf9b66f35f984ec0ea2931eb03505246cd27a963f981b"
++checksum = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa"
+
+ [[package]]
+ name = "core-graphics"
+@@ -326,31 +290,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "52a67c4378cf203eace8fb6567847eb641fd6ff933c1145a115c6ee820ebb978"
+ dependencies = [
+ "bitflags",
+- "core-foundation 0.9.1",
++ "core-foundation",
+ "foreign-types",
+ "libc",
+ ]
+
+ [[package]]
+ name = "crc32fast"
+-version = "1.2.1"
++version = "1.3.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "81156fece84ab6a9f2afdb109ce3ae577e42b1228441eded99bd77f627953b1a"
++checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d"
+ dependencies = [
+ "cfg-if 1.0.0",
+ ]
+
+-[[package]]
+-name = "crossbeam-utils"
+-version = "0.7.2"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "c3c7c73a2d1e9fc0886a08b93e98eb643461230d5f1925e4036204d5f2e261a8"
+-dependencies = [
+- "autocfg 1.0.0",
+- "cfg-if 0.1.10",
+- "lazy_static",
+-]
+-
+ [[package]]
+ name = "crossterm"
+ version = "0.20.0"
+@@ -360,7 +313,7 @@ dependencies = [
+ "bitflags",
+ "crossterm_winapi",
+ "libc",
+- "mio 0.7.0",
++ "mio 0.7.14",
+ "parking_lot",
+ "signal-hook",
+ "signal-hook-mio",
+@@ -448,18 +401,18 @@ dependencies = [
+
+ [[package]]
+ name = "dirs"
+-version = "3.0.1"
++version = "3.0.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "142995ed02755914747cc6ca76fc7e4583cd18578746716d0508ea6ed558b9ff"
++checksum = "30baa043103c9d0c2a57cf537cc2f35623889dc0d405e6c3cccfadbc81c71309"
+ dependencies = [
+ "dirs-sys",
+ ]
+
+ [[package]]
+ name = "dirs-sys"
+-version = "0.3.5"
++version = "0.3.7"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "8e93d7f5705de3e49895a2b5e0b8855a1c27f080192ae9c32a6432d50741a57a"
++checksum = "1b1d1d91c932ef41c0f2663aa8b0ca0342d444d842c06914aa0a7e352d0bada6"
+ dependencies = [
+ "libc",
+ "redox_users",
+@@ -477,25 +430,19 @@ dependencies = [
+ "regex",
+ ]
+
+-[[package]]
+-name = "dtoa"
+-version = "0.4.6"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "134951f4028bdadb9b84baf4232681efbf277da25144b9b0ad65df75946c422b"
+-
+ [[package]]
+ name = "either"
+-version = "1.5.3"
++version = "1.8.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "bb1f6b1ce1c140482ea30ddd3335fc0024ac7ee112895426e0a629a6c20adfe3"
++checksum = "7fcaabb2fef8c910e7f4c7ce9f67a1283a1715879a7c230ca9d6d1ae31f16d91"
+
+ [[package]]
+ name = "encoding_rs"
+-version = "0.8.23"
++version = "0.8.32"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "e8ac63f94732332f44fe654443c46f6375d1939684c17b0afb6cb56b0456e171"
++checksum = "071a31f4ee85403370b58aca746f01041ede6f0da2730960ad001edc2b71b394"
+ dependencies = [
+- "cfg-if 0.1.10",
++ "cfg-if 1.0.0",
+ ]
+
+ [[package]]
+@@ -512,10 +459,31 @@ dependencies = [
+ ]
+
+ [[package]]
+-name = "error-code"
+-version = "2.0.2"
++name = "errno"
++version = "0.3.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "b49c94f66f2d2c5ee8685039e458b4e6c9f13af7c28736baf10ce42966a5ab52"
++checksum = "4bcfec3a70f97c962c307b2d2c56e358cf1d00b558d74262b5f929ee8cc7e73a"
++dependencies = [
++ "errno-dragonfly",
++ "libc",
++ "windows-sys 0.48.0",
++]
++
++[[package]]
++name = "errno-dragonfly"
++version = "0.1.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf"
++dependencies = [
++ "cc",
++ "libc",
++]
++
++[[package]]
++name = "error-code"
++version = "2.3.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "64f18991e7bf11e7ffee451b5318b5c1a73c52d0d0ada6e5a3017c8c1ced6a21"
+ dependencies = [
+ "libc",
+ "str-buf",
+@@ -537,12 +505,21 @@ version = "0.1.8"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "aa4da3c766cd7a0db8242e326e9e4e081edd567072893ed320008189715366a4"
+ dependencies = [
+- "proc-macro2 1.0.24",
+- "quote 1.0.7",
+- "syn 1.0.60",
++ "proc-macro2 1.0.58",
++ "quote 1.0.27",
++ "syn 1.0.109",
+ "synstructure",
+ ]
+
++[[package]]
++name = "fastrand"
++version = "1.9.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be"
++dependencies = [
++ "instant",
++]
++
+ [[package]]
+ name = "fnv"
+ version = "1.0.7"
+@@ -564,6 +541,15 @@ version = "0.1.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
+
++[[package]]
++name = "form_urlencoded"
++version = "1.1.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "a9c384f161156f5260c24a097c56119f9be8c798586aecc13afbcbe7b7e26bf8"
++dependencies = [
++ "percent-encoding 2.2.0",
++]
++
+ [[package]]
+ name = "fuchsia-cprng"
+ version = "0.1.1"
+@@ -588,9 +574,9 @@ checksum = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7"
+
+ [[package]]
+ name = "futures"
+-version = "0.3.5"
++version = "0.3.28"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "1e05b85ec287aac0dc34db7d4a569323df697f9c55b99b15d6b4ef8cde49f613"
++checksum = "23342abe12aba583913b2e62f22225ff9c950774065e4bfb61a19cd9770fec40"
+ dependencies = [
+ "futures-channel",
+ "futures-core",
+@@ -603,9 +589,9 @@ dependencies = [
+
+ [[package]]
+ name = "futures-channel"
+-version = "0.3.5"
++version = "0.3.28"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "f366ad74c28cca6ba456d95e6422883cfb4b252a83bed929c83abfdbbf2967d5"
++checksum = "955518d47e09b25bbebc7a18df10b81f0c766eaf4c4f1cccef2fca5f2a4fb5f2"
+ dependencies = [
+ "futures-core",
+ "futures-sink",
+@@ -613,15 +599,15 @@ dependencies = [
+
+ [[package]]
+ name = "futures-core"
+-version = "0.3.5"
++version = "0.3.28"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "59f5fff90fd5d971f936ad674802482ba441b6f09ba5e15fd8b39145582ca399"
++checksum = "4bca583b7e26f571124fe5b7561d49cb2868d79116cfa0eefce955557c6fee8c"
+
+ [[package]]
+ name = "futures-executor"
+-version = "0.3.5"
++version = "0.3.28"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "10d6bb888be1153d3abeb9006b11b02cf5e9b209fda28693c31ae1e4e012e314"
++checksum = "ccecee823288125bd88b4d7f565c9e58e41858e47ab72e8ea2d64e93624386e0"
+ dependencies = [
+ "futures-core",
+ "futures-task",
+@@ -630,42 +616,38 @@ dependencies = [
+
+ [[package]]
+ name = "futures-io"
+-version = "0.3.5"
++version = "0.3.28"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "de27142b013a8e869c14957e6d2edeef89e97c289e69d042ee3a49acd8b51789"
++checksum = "4fff74096e71ed47f8e023204cfd0aa1289cd54ae5430a9523be060cdb849964"
+
+ [[package]]
+ name = "futures-macro"
+-version = "0.3.5"
++version = "0.3.28"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "d0b5a30a4328ab5473878237c447333c093297bded83a4983d10f4deea240d39"
++checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72"
+ dependencies = [
+- "proc-macro-hack",
+- "proc-macro2 1.0.24",
+- "quote 1.0.7",
+- "syn 1.0.60",
++ "proc-macro2 1.0.58",
++ "quote 1.0.27",
++ "syn 2.0.16",
+ ]
+
+ [[package]]
+ name = "futures-sink"
+-version = "0.3.5"
++version = "0.3.28"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "3f2032893cb734c7a05d85ce0cc8b8c4075278e93b24b66f9de99d6eb0fa8acc"
++checksum = "f43be4fe21a13b9781a69afa4985b0f6ee0e1afab2c6f454a8cf30e2b2237b6e"
+
+ [[package]]
+ name = "futures-task"
+-version = "0.3.5"
++version = "0.3.28"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "bdb66b5f09e22019b1ab0830f7785bcea8e7a42148683f99214f73f8ec21a626"
+-dependencies = [
+- "once_cell",
+-]
++checksum = "76d3d132be6c0e6aa1534069c705a74a5997a356c0dc2f86a47765e5617c5b65"
+
+ [[package]]
+ name = "futures-util"
+-version = "0.3.5"
++version = "0.3.28"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "8764574ff08b701a084482c3c7031349104b07ac897393010494beaa18ce32c6"
++checksum = "26b01e40b772d54cf6c6d721c1d1abd0647a0106a12ecaa1c186273392a69533"
+ dependencies = [
+ "futures-channel",
+ "futures-core",
+@@ -674,18 +656,16 @@ dependencies = [
+ "futures-sink",
+ "futures-task",
+ "memchr",
+- "pin-project",
++ "pin-project-lite 0.2.9",
+ "pin-utils",
+- "proc-macro-hack",
+- "proc-macro-nested",
+ "slab",
+ ]
+
+ [[package]]
+ name = "gethostname"
+-version = "0.2.1"
++version = "0.2.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "e692e296bfac1d2533ef168d0b60ff5897b8b70a4009276834014dd8924cc028"
++checksum = "c1ebd34e35c46e00bb73e81363248d627782724609fe1b6396f553f68fe3862e"
+ dependencies = [
+ "libc",
+ "winapi 0.3.9",
+@@ -693,37 +673,26 @@ dependencies = [
+
+ [[package]]
+ name = "getrandom"
+-version = "0.1.14"
++version = "0.2.9"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "7abc8dd8451921606d809ba32e95b6111925cd2906060d2dcc29c070220503eb"
+-dependencies = [
+- "cfg-if 0.1.10",
+- "libc",
+- "wasi 0.9.0+wasi-snapshot-preview1",
+-]
+-
+-[[package]]
+-name = "getrandom"
+-version = "0.2.2"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "c9495705279e7140bf035dde1f6e750c162df8b625267cd52cc44e0b156732c8"
++checksum = "c85e1d9ab2eadba7e5040d4e09cbd6d072b76a557ad64e797c2cb9d4da21d7e4"
+ dependencies = [
+ "cfg-if 1.0.0",
+ "libc",
+- "wasi 0.10.2+wasi-snapshot-preview1",
++ "wasi 0.11.0+wasi-snapshot-preview1",
+ ]
+
+ [[package]]
+ name = "gimli"
+-version = "0.23.0"
++version = "0.27.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "f6503fe142514ca4799d4c26297c4248239fe8838d827db6bd6065c6ed29a6ce"
++checksum = "ad0a93d233ebf96623465aad4046a8d3aa4da22d4f4beba5388838c8a434bbb4"
+
+ [[package]]
+ name = "h2"
+-version = "0.2.6"
++version = "0.2.7"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "993f9e0baeed60001cf565546b0d3dbe6a6ad23f2bd31644a133c641eccf6d53"
++checksum = "5e4728fd124914ad25e99e3d15a9361a879f6620f63cb56bbb08f95abb97a535"
+ dependencies = [
+ "bytes 0.5.6",
+ "fnv",
+@@ -736,35 +705,48 @@ dependencies = [
+ "tokio",
+ "tokio-util",
+ "tracing",
++ "tracing-futures",
+ ]
+
+ [[package]]
+ name = "hashbrown"
+-version = "0.8.1"
++version = "0.12.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "34f595585f103464d8d2f6e9864682d74c1601fed5e07d62b1c9058dba8246fb"
+-dependencies = [
+- "autocfg 1.0.0",
+-]
++checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
+
+ [[package]]
+ name = "hermit-abi"
+-version = "0.1.15"
++version = "0.1.19"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "3deed196b6e7f9e44a2ae8d94225d80302d81208b1bb673fd21fe634645c85a9"
++checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33"
+ dependencies = [
+ "libc",
+ ]
+
+ [[package]]
+-name = "http"
+-version = "0.2.1"
++name = "hermit-abi"
++version = "0.2.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "28d569972648b2c512421b5f2a405ad6ac9666547189d0c5477a3f200f3e02f9"
++checksum = "ee512640fe35acbfb4bb779db6f0d80704c2cacfa2e39b601ef3e3f47d1ae4c7"
+ dependencies = [
+- "bytes 0.5.6",
++ "libc",
++]
++
++[[package]]
++name = "hermit-abi"
++version = "0.3.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "fed44880c466736ef9a5c5b5facefb5ed0785676d0c02d612db14e54f0d84286"
++
++[[package]]
++name = "http"
++version = "0.2.9"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "bd6effc99afb63425aff9b05836f029929e345a6148a14b7ecd5ab67af944482"
++dependencies = [
++ "bytes 1.4.0",
+ "fnv",
+- "itoa",
++ "itoa 1.0.6",
+ ]
+
+ [[package]]
+@@ -779,9 +761,15 @@ dependencies = [
+
+ [[package]]
+ name = "httparse"
+-version = "1.3.4"
++version = "1.8.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "cd179ae861f0c2e53da70d892f5f3029f9594be0c41dc5269cd371691b1dc2f9"
++checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904"
++
++[[package]]
++name = "httpdate"
++version = "0.3.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "494b4d60369511e7dea41cf646832512a94e542f68bb9c49e54518e0f468eb47"
+
+ [[package]]
+ name = "humantime"
+@@ -794,9 +782,9 @@ dependencies = [
+
+ [[package]]
+ name = "hyper"
+-version = "0.13.7"
++version = "0.13.10"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "3e68a8dd9716185d9e64ea473ea6ef63529252e3e27623295a0378a19665d5eb"
++checksum = "8a6f157065790a3ed2f88679250419b5cdd96e714a0d65f7797fd337186e96bb"
+ dependencies = [
+ "bytes 0.5.6",
+ "futures-channel",
+@@ -806,10 +794,10 @@ dependencies = [
+ "http",
+ "http-body",
+ "httparse",
+- "itoa",
++ "httpdate",
++ "itoa 0.4.8",
+ "pin-project",
+ "socket2",
+- "time",
+ "tokio",
+ "tower-service",
+ "tracing",
+@@ -829,6 +817,29 @@ dependencies = [
+ "tokio-tls",
+ ]
+
++[[package]]
++name = "iana-time-zone"
++version = "0.1.56"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "0722cd7114b7de04316e7ea5456a0bbb20e4adb46fd27a3697adb812cff0f37c"
++dependencies = [
++ "android_system_properties",
++ "core-foundation-sys",
++ "iana-time-zone-haiku",
++ "js-sys",
++ "wasm-bindgen",
++ "windows",
++]
++
++[[package]]
++name = "iana-time-zone-haiku"
++version = "0.1.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f"
++dependencies = [
++ "cc",
++]
++
+ [[package]]
+ name = "ident_case"
+ version = "1.0.1"
+@@ -848,20 +859,19 @@ dependencies = [
+
+ [[package]]
+ name = "idna"
+-version = "0.2.0"
++version = "0.3.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "02e2673c30ee86b5b96a9cb52ad15718aa1f966f5ab9ad54a8b95d5ca33120a9"
++checksum = "e14ddfc70884202db2244c223200c204c2bda1bc6e0998d11b5e024d657209e6"
+ dependencies = [
+- "matches",
+ "unicode-bidi",
+ "unicode-normalization",
+ ]
+
+ [[package]]
+ name = "image"
+-version = "0.23.12"
++version = "0.23.14"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "7ce04077ead78e39ae8610ad26216aed811996b043d47beed5090db674f9e9b5"
++checksum = "24ffcb7e7244a9bf19d35bf2883b9c080c4ced3c07a9895572178cdb8f13f6a1"
+ dependencies = [
+ "bytemuck",
+ "byteorder",
+@@ -875,21 +885,32 @@ dependencies = [
+
+ [[package]]
+ name = "indexmap"
+-version = "1.5.0"
++version = "1.9.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "5b88cd59ee5f71fea89a62248fc8f387d44400cefe05ef548466d61ced9029a7"
++checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99"
+ dependencies = [
+- "autocfg 1.0.0",
++ "autocfg 1.1.0",
+ "hashbrown",
+ ]
+
+ [[package]]
+ name = "instant"
+-version = "0.1.7"
++version = "0.1.12"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "63312a18f7ea8760cdd0a7c5aac1a619752a246b833545e3e36d1f81f7cd9e66"
++checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c"
+ dependencies = [
+- "cfg-if 0.1.10",
++ "cfg-if 1.0.0",
++]
++
++[[package]]
++name = "io-lifetimes"
++version = "1.0.10"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "9c66c74d2ae7e79a5a8f7ac924adbe38ee42a859c6539ad869eb51f0b52dc220"
++dependencies = [
++ "hermit-abi 0.3.1",
++ "libc",
++ "windows-sys 0.48.0",
+ ]
+
+ [[package]]
+@@ -901,6 +922,12 @@ dependencies = [
+ "libc",
+ ]
+
++[[package]]
++name = "ipnet"
++version = "2.7.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "12b6ee2129af8d4fb011108c73d99a1b83a85977f23b82460c0ae2e25bb4b57f"
++
+ [[package]]
+ name = "itertools"
+ version = "0.8.2"
+@@ -912,24 +939,27 @@ dependencies = [
+
+ [[package]]
+ name = "itoa"
+-version = "0.4.6"
++version = "0.4.8"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "dc6f3ad7b9d11a0c00842ff8de1b60ee58661048eb8049ed33c73594f359d7e6"
++checksum = "b71991ff56294aa922b450139ee08b3bfc70982c6b2c7562771375cf73542dd4"
++
++[[package]]
++name = "itoa"
++version = "1.0.6"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "453ad9f582a441959e5f0d088b02ce04cfe8d51a8eaf077f12ac6d3e94164ca6"
+
+ [[package]]
+ name = "jpeg-decoder"
+-version = "0.1.20"
++version = "0.1.22"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "cc797adac5f083b8ff0ca6f6294a999393d76e197c36488e2ef732c4715f6fa3"
+-dependencies = [
+- "byteorder",
+-]
++checksum = "229d53d58899083193af11e15917b5640cd40b29ff475a1fe4ef725deb02d0f2"
+
+ [[package]]
+ name = "js-sys"
+-version = "0.3.42"
++version = "0.3.63"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "52732a3d3ad72c58ad2dc70624f9c17b46ecd0943b9a4f1ee37c4c18c5d983e2"
++checksum = "2f37a4a5928311ac501dee68b3c7613a1037d0edb30c8e5427bd832d55d1b790"
+ dependencies = [
+ "wasm-bindgen",
+ ]
+@@ -952,32 +982,39 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
+
+ [[package]]
+ name = "libc"
+-version = "0.2.82"
++version = "0.2.144"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "89203f3fba0a3795506acaad8ebce3c80c0af93f994d5a1d7a0b1eeb23271929"
++checksum = "2b00cc1c228a6782d0f076e7b232802e0c5689d41bb5df366f2a6b6621cfdfe1"
+
+ [[package]]
+ name = "linked-hash-map"
+-version = "0.5.3"
++version = "0.5.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "8dd5a6d5999d9907cda8ed67bbd137d3af8085216c2ac62de5be860bd41f304a"
++checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f"
++
++[[package]]
++name = "linux-raw-sys"
++version = "0.3.8"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519"
+
+ [[package]]
+ name = "lock_api"
+-version = "0.4.1"
++version = "0.4.9"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "28247cc5a5be2f05fbcd76dd0cf2c7d3b5400cb978a28042abcd4fa0b3f8261c"
++checksum = "435011366fe56583b16cf956f9df0095b405b82d76425bc8981c0e22e60ec4df"
+ dependencies = [
++ "autocfg 1.1.0",
+ "scopeguard",
+ ]
+
+ [[package]]
+ name = "log"
+-version = "0.4.11"
++version = "0.4.17"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "4fabed175da42fed1fa0746b0ea71f412aa9d35e76e95e59b192c64b9dc2bf8b"
++checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e"
+ dependencies = [
+- "cfg-if 0.1.10",
++ "cfg-if 1.0.0",
+ ]
+
+ [[package]]
+@@ -991,27 +1028,36 @@ dependencies = [
+
+ [[package]]
+ name = "matches"
+-version = "0.1.8"
++version = "0.1.10"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08"
++checksum = "2532096657941c2fea9c289d370a250971c689d4f143798ff67113ec042024a5"
+
+ [[package]]
+ name = "memchr"
+-version = "2.3.3"
++version = "2.5.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "3728d817d99e5ac407411fa471ff9800a778d88a24685968b36824eaf4bee400"
++checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d"
++
++[[package]]
++name = "memoffset"
++version = "0.6.5"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce"
++dependencies = [
++ "autocfg 1.1.0",
++]
+
+ [[package]]
+ name = "mime"
+-version = "0.3.16"
++version = "0.3.17"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "2a60c7ce501c71e03a9c9c0d35b861413ae925bd979cc7a4e30d060069aaac8d"
++checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a"
+
+ [[package]]
+ name = "mime_guess"
+-version = "2.0.3"
++version = "2.0.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "2684d4c2e97d99848d30b324b00c8fcc7e5c897b7cbb5819b09e7c90e8baf212"
++checksum = "4192263c238a5f0d0c6bfd21f336a313a4ce1c450542449ca191bb657b4642ef"
+ dependencies = [
+ "mime",
+ "unicase",
+@@ -1028,12 +1074,21 @@ dependencies = [
+
+ [[package]]
+ name = "miniz_oxide"
+-version = "0.4.3"
++version = "0.4.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "0f2d26ec3309788e423cfbf68ad1800f061638098d76a83681af979dc4eda19d"
++checksum = "a92518e98c078586bc6c934028adcca4c92a53d6a958196de835170a01d84e4b"
++dependencies = [
++ "adler",
++ "autocfg 1.1.0",
++]
++
++[[package]]
++name = "miniz_oxide"
++version = "0.6.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "b275950c28b37e794e8c55d88aeb5e139d0ce23fdbbeda68f8d7174abdf9e8fa"
+ dependencies = [
+ "adler",
+- "autocfg 1.0.0",
+ ]
+
+ [[package]]
+@@ -1057,14 +1112,13 @@ dependencies = [
+
+ [[package]]
+ name = "mio"
+-version = "0.7.0"
++version = "0.7.14"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "6e9971bc8349a361217a8f2a41f5d011274686bd4436465ba51730921039d7fb"
++checksum = "8067b404fe97c70829f082dec8bcf4f71225d7eaea1d8645349cb76fa06205cc"
+ dependencies = [
+- "lazy_static",
+ "libc",
+ "log",
+- "miow 0.3.5",
++ "miow 0.3.7",
+ "ntapi",
+ "winapi 0.3.9",
+ ]
+@@ -1077,7 +1131,7 @@ checksum = "0840c1c50fd55e521b247f949c241c9997709f23bd7f023b9762cd561e935656"
+ dependencies = [
+ "log",
+ "mio 0.6.23",
+- "miow 0.3.5",
++ "miow 0.3.7",
+ "winapi 0.3.9",
+ ]
+
+@@ -1106,19 +1160,18 @@ dependencies = [
+
+ [[package]]
+ name = "miow"
+-version = "0.3.5"
++version = "0.3.7"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "07b88fb9795d4d36d62a012dfbf49a8f5cf12751f36d31a9dbe66d528e58979e"
++checksum = "b9f1c5b025cda876f66ef43a113f91ebc9f4ccef34843000e0adf6ebbab84e21"
+ dependencies = [
+- "socket2",
+ "winapi 0.3.9",
+ ]
+
+ [[package]]
+ name = "native-tls"
+-version = "0.2.4"
++version = "0.2.11"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "2b0d88c06fe90d5ee94048ba40409ef1d9315d86f6f38c2efdaad4fb50c58b2d"
++checksum = "07226173c32f2926027b63cce4bcd8076c3552846cbe7925f3aaffeac0a3b92e"
+ dependencies = [
+ "lazy_static",
+ "libc",
+@@ -1134,9 +1187,9 @@ dependencies = [
+
+ [[package]]
+ name = "net2"
+-version = "0.2.37"
++version = "0.2.38"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "391630d12b68002ae1e25e8f974306474966550ad82dac6886fb8910c19568ae"
++checksum = "74d0df99cfcd2530b2e694f6e17e7f37b8e26bb23983ac530c0c97408837c631"
+ dependencies = [
+ "cfg-if 0.1.10",
+ "libc",
+@@ -1145,42 +1198,43 @@ dependencies = [
+
+ [[package]]
+ name = "nix"
+-version = "0.20.0"
++version = "0.20.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "fa9b4819da1bc61c0ea48b63b7bc8604064dd43013e7cc325df098d49cd7c18a"
++checksum = "f5e06129fb611568ef4e868c14b326274959aa70ff7776e9d55323531c374945"
+ dependencies = [
+ "bitflags",
+ "cc",
+ "cfg-if 1.0.0",
+ "libc",
++ "memoffset",
+ ]
+
+ [[package]]
+ name = "ntapi"
+-version = "0.3.4"
++version = "0.3.7"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "7a31937dea023539c72ddae0e3571deadc1414b300483fa7aaec176168cfa9d2"
++checksum = "c28774a7fd2fbb4f0babd8237ce554b73af68021b5f695a3cebd6c59bac0980f"
+ dependencies = [
+ "winapi 0.3.9",
+ ]
+
+ [[package]]
+ name = "num-integer"
+-version = "0.1.43"
++version = "0.1.45"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "8d59457e662d541ba17869cf51cf177c0b5f0cbf476c66bdc90bf1edac4f875b"
++checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9"
+ dependencies = [
+- "autocfg 1.0.0",
++ "autocfg 1.1.0",
+ "num-traits",
+ ]
+
+ [[package]]
+ name = "num-iter"
+-version = "0.1.42"
++version = "0.1.43"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "b2021c8337a54d21aca0d59a92577a029af9431cb59b909b03252b9c164fad59"
++checksum = "7d03e6c028c5dc5cac6e2dec0efda81fc887605bb3d884578bb6d6bf7514e252"
+ dependencies = [
+- "autocfg 1.0.0",
++ "autocfg 1.1.0",
+ "num-integer",
+ "num-traits",
+ ]
+@@ -1191,27 +1245,27 @@ version = "0.3.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "12ac428b1cb17fce6f731001d307d351ec70a6d202fc2e60f7d4c5e42d8f4f07"
+ dependencies = [
+- "autocfg 1.0.0",
++ "autocfg 1.1.0",
+ "num-integer",
+ "num-traits",
+ ]
+
+ [[package]]
+ name = "num-traits"
+-version = "0.2.12"
++version = "0.2.15"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "ac267bcc07f48ee5f8935ab0d24f316fb722d7a1292e2913f0cc196b29ffd611"
++checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd"
+ dependencies = [
+- "autocfg 1.0.0",
++ "autocfg 1.1.0",
+ ]
+
+ [[package]]
+ name = "num_cpus"
+-version = "1.13.0"
++version = "1.15.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "05499f3756671c15885fee9034446956fff3f243d6077b91e5767df161f766b3"
++checksum = "0fac9e2da13b5eb447a6ce3d392f23a29d8694bff781bf03a16cd9ac8697593b"
+ dependencies = [
+- "hermit-abi",
++ "hermit-abi 0.2.6",
+ "libc",
+ ]
+
+@@ -1246,43 +1300,57 @@ dependencies = [
+
+ [[package]]
+ name = "object"
+-version = "0.23.0"
++version = "0.30.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "a9a7ab5d64814df0fe4a4b5ead45ed6c5f181ee3ff04ba344313a6c80446c5d4"
++checksum = "ea86265d3d3dcb6a27fc51bd29a4bf387fae9d2986b823079d4986af253eb439"
++dependencies = [
++ "memchr",
++]
+
+ [[package]]
+ name = "once_cell"
+-version = "1.4.0"
++version = "1.17.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "0b631f7e854af39a1739f401cf34a8a013dfe09eac4fa4dba91e9768bd28168d"
++checksum = "b7e5500299e16ebb147ae15a00a942af264cf3688f47923b8fc2cd5858f23ad3"
+
+ [[package]]
+ name = "openssl"
+-version = "0.10.30"
++version = "0.10.52"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "8d575eff3665419f9b83678ff2815858ad9d11567e082f5ac1814baba4e2bcb4"
++checksum = "01b8574602df80f7b85fdfc5392fa884a4e3b3f4f35402c070ab34c3d3f78d56"
+ dependencies = [
+ "bitflags",
+- "cfg-if 0.1.10",
++ "cfg-if 1.0.0",
+ "foreign-types",
+- "lazy_static",
+ "libc",
++ "once_cell",
++ "openssl-macros",
+ "openssl-sys",
+ ]
+
+ [[package]]
+-name = "openssl-probe"
+-version = "0.1.2"
++name = "openssl-macros"
++version = "0.1.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "77af24da69f9d9341038eba93a073b1fdaaa1b788221b00a69bce9e762cb32de"
++checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
++dependencies = [
++ "proc-macro2 1.0.58",
++ "quote 1.0.27",
++ "syn 2.0.16",
++]
++
++[[package]]
++name = "openssl-probe"
++version = "0.1.5"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf"
+
+ [[package]]
+ name = "openssl-sys"
+-version = "0.9.58"
++version = "0.9.87"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "a842db4709b604f0fe5d1170ae3565899be2ad3d9cbc72dedc789ac0511f78de"
++checksum = "8e17f59264b2809d77ae94f0e1ebabc434773f370d6ca667bd223ea10e06cc7e"
+ dependencies = [
+- "autocfg 1.0.0",
+ "cc",
+ "libc",
+ "pkg-config",
+@@ -1291,9 +1359,9 @@ dependencies = [
+
+ [[package]]
+ name = "parking_lot"
+-version = "0.11.0"
++version = "0.11.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "a4893845fa2ca272e647da5d0e46660a314ead9c2fdd9a883aabc32e481a8733"
++checksum = "7d17b78036a60663b797adeaee46f5c9dfebb86948d1255007a1d6be0271ff99"
+ dependencies = [
+ "instant",
+ "lock_api",
+@@ -1302,15 +1370,14 @@ dependencies = [
+
+ [[package]]
+ name = "parking_lot_core"
+-version = "0.8.0"
++version = "0.8.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "c361aa727dd08437f2f1447be8b59a33b0edd15e0fcee698f935613d9efbca9b"
++checksum = "60a2cfe6f0ad2bfc16aefa463b497d5c7a5ecd44a23efa72aa342d90177356dc"
+ dependencies = [
+- "cfg-if 0.1.10",
+- "cloudabi 0.1.0",
++ "cfg-if 1.0.0",
+ "instant",
+ "libc",
+- "redox_syscall",
++ "redox_syscall 0.2.16",
+ "smallvec",
+ "winapi 0.3.9",
+ ]
+@@ -1323,35 +1390,41 @@ checksum = "31010dd2e1ac33d5b46a5b413495239882813e0369f8ed8a5e266f173602f831"
+
+ [[package]]
+ name = "percent-encoding"
+-version = "2.1.0"
++version = "2.2.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e"
++checksum = "478c572c3d73181ff3c2539045f6eb99e5491218eae919370993b890cdbdd98e"
+
+ [[package]]
+ name = "pin-project"
+-version = "0.4.22"
++version = "1.1.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "12e3a6cdbfe94a5e4572812a0201f8c0ed98c1c452c7b8563ce2276988ef9c17"
++checksum = "c95a7476719eab1e366eaf73d0260af3021184f18177925b07f54b30089ceead"
+ dependencies = [
+ "pin-project-internal",
+ ]
+
+ [[package]]
+ name = "pin-project-internal"
+-version = "0.4.22"
++version = "1.1.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "6a0ffd45cf79d88737d7cc85bfd5d2894bee1139b356e616fe85dc389c61aaf7"
++checksum = "39407670928234ebc5e6e580247dd567ad73a3578460c5990f9503df207e8f07"
+ dependencies = [
+- "proc-macro2 1.0.24",
+- "quote 1.0.7",
+- "syn 1.0.60",
++ "proc-macro2 1.0.58",
++ "quote 1.0.27",
++ "syn 2.0.16",
+ ]
+
+ [[package]]
+ name = "pin-project-lite"
+-version = "0.1.7"
++version = "0.1.12"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "282adbf10f2698a7a77f8e983a74b2d18176c19a7fd32a45446139ae7b02b715"
++checksum = "257b64915a082f7811703966789728173279bdebb956b143dbcd23f6f970a777"
++
++[[package]]
++name = "pin-project-lite"
++version = "0.2.9"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e0a7ae3ac2f1173085d398531c705756c94a4c56843785df85a60c1a0afac116"
+
+ [[package]]
+ name = "pin-utils"
+@@ -1361,9 +1434,9 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
+
+ [[package]]
+ name = "pkg-config"
+-version = "0.3.18"
++version = "0.3.27"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "d36492546b6af1463394d46f0c834346f31548646f6ba10849802c9c9a27ac33"
++checksum = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964"
+
+ [[package]]
+ name = "png"
+@@ -1379,21 +1452,9 @@ dependencies = [
+
+ [[package]]
+ name = "ppv-lite86"
+-version = "0.2.8"
++version = "0.2.17"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "237a5ed80e274dbc66f86bd59c1e25edc039660be53194b5fe0a482e0f2612ea"
+-
+-[[package]]
+-name = "proc-macro-hack"
+-version = "0.5.16"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "7e0456befd48169b9f13ef0f0ad46d492cf9d2dbb918bcf38e01eed4ce3ec5e4"
+-
+-[[package]]
+-name = "proc-macro-nested"
+-version = "0.1.6"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "eba180dafb9038b050a4c280019bbedf9f2467b61e5d892dcad585bb57aadc5a"
++checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de"
+
+ [[package]]
+ name = "proc-macro2"
+@@ -1406,11 +1467,11 @@ dependencies = [
+
+ [[package]]
+ name = "proc-macro2"
+-version = "1.0.24"
++version = "1.0.58"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "1e0704ee1a7e00d7bb417d0770ea303c1bccbabf0ef1667dae92b5967f5f8a71"
++checksum = "fa1fb82fc0c281dd9671101b66b771ebbe1eaf967b96ac8740dcba4b70005ca8"
+ dependencies = [
+- "unicode-xid 0.2.1",
++ "unicode-ident",
+ ]
+
+ [[package]]
+@@ -1430,11 +1491,11 @@ dependencies = [
+
+ [[package]]
+ name = "quote"
+-version = "1.0.7"
++version = "1.0.27"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "aa563d17ecb180e500da1cfd2b028310ac758de548efdd203e18f283af693f37"
++checksum = "8f4f29d145265ec1c483c7c654450edde0bfe043d3938d6972630663356d9500"
+ dependencies = [
+- "proc-macro2 1.0.24",
++ "proc-macro2 1.0.58",
+ ]
+
+ [[package]]
+@@ -1443,11 +1504,11 @@ version = "0.6.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "6d71dacdc3c88c1fde3885a3be3fbab9f35724e6ce99467f7d9c5026132184ca"
+ dependencies = [
+- "autocfg 0.1.7",
++ "autocfg 0.1.8",
+ "libc",
+ "rand_chacha 0.1.1",
+ "rand_core 0.4.2",
+- "rand_hc 0.1.0",
++ "rand_hc",
+ "rand_isaac",
+ "rand_jitter",
+ "rand_os",
+@@ -1458,27 +1519,13 @@ dependencies = [
+
+ [[package]]
+ name = "rand"
+-version = "0.7.3"
++version = "0.8.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03"
+-dependencies = [
+- "getrandom 0.1.14",
+- "libc",
+- "rand_chacha 0.2.2",
+- "rand_core 0.5.1",
+- "rand_hc 0.2.0",
+-]
+-
+-[[package]]
+-name = "rand"
+-version = "0.8.3"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "0ef9e7e66b4468674bfcb0c81af8b7fa0bb154fa9f28eb840da5c447baeb8d7e"
++checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404"
+ dependencies = [
+ "libc",
+- "rand_chacha 0.3.0",
+- "rand_core 0.6.2",
+- "rand_hc 0.3.0",
++ "rand_chacha 0.3.1",
++ "rand_core 0.6.4",
+ ]
+
+ [[package]]
+@@ -1487,28 +1534,18 @@ version = "0.1.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "556d3a1ca6600bfcbab7c7c91ccb085ac7fbbcd70e008a98742e7847f4f7bcef"
+ dependencies = [
+- "autocfg 0.1.7",
++ "autocfg 0.1.8",
+ "rand_core 0.3.1",
+ ]
+
+ [[package]]
+ name = "rand_chacha"
+-version = "0.2.2"
++version = "0.3.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402"
++checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"
+ dependencies = [
+ "ppv-lite86",
+- "rand_core 0.5.1",
+-]
+-
+-[[package]]
+-name = "rand_chacha"
+-version = "0.3.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "e12735cf05c9e10bf21534da50a147b924d555dc7a547c42e6bb2d5b6017ae0d"
+-dependencies = [
+- "ppv-lite86",
+- "rand_core 0.6.2",
++ "rand_core 0.6.4",
+ ]
+
+ [[package]]
+@@ -1528,20 +1565,11 @@ checksum = "9c33a3c44ca05fa6f1807d8e6743f3824e8509beca625669633be0acbdf509dc"
+
+ [[package]]
+ name = "rand_core"
+-version = "0.5.1"
++version = "0.6.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19"
++checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
+ dependencies = [
+- "getrandom 0.1.14",
+-]
+-
+-[[package]]
+-name = "rand_core"
+-version = "0.6.2"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "34cf66eb183df1c5876e2dcf6b13d57340741e8dc255b48e40a26de954d06ae7"
+-dependencies = [
+- "getrandom 0.2.2",
++ "getrandom",
+ ]
+
+ [[package]]
+@@ -1553,24 +1581,6 @@ dependencies = [
+ "rand_core 0.3.1",
+ ]
+
+-[[package]]
+-name = "rand_hc"
+-version = "0.2.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c"
+-dependencies = [
+- "rand_core 0.5.1",
+-]
+-
+-[[package]]
+-name = "rand_hc"
+-version = "0.3.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "3190ef7066a446f2e7f42e239d161e905420ccab01eb967c9eb27d21b2322a73"
+-dependencies = [
+- "rand_core 0.6.2",
+-]
+-
+ [[package]]
+ name = "rand_isaac"
+ version = "0.1.1"
+@@ -1597,7 +1607,7 @@ version = "0.1.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "7b75f676a1e053fc562eafbb47838d67c84801e38fc1ba459e8f180deabd5071"
+ dependencies = [
+- "cloudabi 0.0.3",
++ "cloudabi",
+ "fuchsia-cprng",
+ "libc",
+ "rand_core 0.4.2",
+@@ -1611,7 +1621,7 @@ version = "0.1.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "abf9b09b01790cfe0364f52bf32995ea3c39f4d2dd011eac241d2914146d0b44"
+ dependencies = [
+- "autocfg 0.1.7",
++ "autocfg 0.1.8",
+ "rand_core 0.4.2",
+ ]
+
+@@ -1641,55 +1651,57 @@ dependencies = [
+
+ [[package]]
+ name = "redox_syscall"
+-version = "0.1.57"
++version = "0.2.16"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "41cc0f7e4d5d4544e8861606a285bb08d3e70712ccc7d2b84d7c0ccfaf4b05ce"
++checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a"
++dependencies = [
++ "bitflags",
++]
++
++[[package]]
++name = "redox_syscall"
++version = "0.3.5"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29"
++dependencies = [
++ "bitflags",
++]
+
+ [[package]]
+ name = "redox_users"
+-version = "0.3.4"
++version = "0.4.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "09b23093265f8d200fa7b4c2c76297f47e681c655f6f1285a8780d6a022f7431"
++checksum = "b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b"
+ dependencies = [
+- "getrandom 0.1.14",
+- "redox_syscall",
+- "rust-argon2",
++ "getrandom",
++ "redox_syscall 0.2.16",
++ "thiserror",
+ ]
+
+ [[package]]
+ name = "regex"
+-version = "1.3.9"
++version = "1.8.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "9c3780fcf44b193bc4d09f36d2a3c87b251da4a046c87795a0d35f4f927ad8e6"
++checksum = "d1a59b5d8e97dee33696bf13c5ba8ab85341c002922fba050069326b9c498974"
+ dependencies = [
+ "aho-corasick",
+ "memchr",
+ "regex-syntax",
+- "thread_local",
+ ]
+
+ [[package]]
+ name = "regex-syntax"
+-version = "0.6.18"
++version = "0.7.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "26412eb97c6b088a6997e05f69403a802a92d520de2f8e63c2b65f9e0f47c4e8"
+-
+-[[package]]
+-name = "remove_dir_all"
+-version = "0.5.3"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "3acd125665422973a33ac9d3dd2df85edad0f4ae9b00dafb1a05e43a9f5ef8e7"
+-dependencies = [
+- "winapi 0.3.9",
+-]
++checksum = "436b050e76ed2903236f032a59761c1eb99e1b0aead2c257922771dab1fc8c78"
+
+ [[package]]
+ name = "reqwest"
+-version = "0.10.6"
++version = "0.10.10"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "3b82c9238b305f26f53443e3a4bc8528d64b8d0bee408ec949eb7bf5635ec680"
++checksum = "0718f81a8e14c4dbb3b34cf23dc6aaf9ab8a0dfec160c534b3dbca1aaa21f47c"
+ dependencies = [
+- "base64 0.12.3",
++ "base64 0.13.1",
+ "bytes 0.5.6",
+ "encoding_rs",
+ "futures-core",
+@@ -1698,21 +1710,22 @@ dependencies = [
+ "http-body",
+ "hyper",
+ "hyper-tls",
++ "ipnet",
+ "js-sys",
+ "lazy_static",
+ "log",
+ "mime",
+ "mime_guess",
+ "native-tls",
+- "percent-encoding 2.1.0",
+- "pin-project-lite",
++ "percent-encoding 2.2.0",
++ "pin-project-lite 0.2.9",
+ "serde",
+ "serde_json",
+ "serde_urlencoded",
+ "tokio",
+ "tokio-socks",
+ "tokio-tls",
+- "url 2.1.1",
++ "url 2.3.1",
+ "wasm-bindgen",
+ "wasm-bindgen-futures",
+ "web-sys",
+@@ -1745,23 +1758,11 @@ dependencies = [
+ "webbrowser",
+ ]
+
+-[[package]]
+-name = "rust-argon2"
+-version = "0.7.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "2bc8af4bda8e1ff4932523b94d3dd20ee30a87232323eda55903ffd71d2fb017"
+-dependencies = [
+- "base64 0.11.0",
+- "blake2b_simd",
+- "constant_time_eq",
+- "crossbeam-utils",
+-]
+-
+ [[package]]
+ name = "rustc-demangle"
+-version = "0.1.16"
++version = "0.1.23"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "4c691c0e608126e00913e33f0ccf3727d5fc84573623b8d65b2df340b5201783"
++checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76"
+
+ [[package]]
+ name = "rustc-serialize"
+@@ -1770,19 +1771,32 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "dcf128d1287d2ea9d80910b5f1120d0b8eede3fbf1abe91c40d39ea7d51e6fda"
+
+ [[package]]
+-name = "ryu"
+-version = "1.0.5"
++name = "rustix"
++version = "0.37.13"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "71d301d4193d031abdd79ff7e3dd721168a9572ef3fe51a1517aba235bd8f86e"
++checksum = "f79bef90eb6d984c72722595b5b1348ab39275a5e5123faca6863bf07d75a4e0"
++dependencies = [
++ "bitflags",
++ "errno",
++ "io-lifetimes",
++ "libc",
++ "linux-raw-sys",
++ "windows-sys 0.48.0",
++]
++
++[[package]]
++name = "ryu"
++version = "1.0.13"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f91339c0467de62360649f8d3e185ca8de4224ff281f66000de5eb2a77a79041"
+
+ [[package]]
+ name = "schannel"
+-version = "0.1.19"
++version = "0.1.21"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "8f05ba609c234e60bee0d547fe94a4c7e9da733d1c962cf6e59efa4cd9c8bc75"
++checksum = "713cfb06c7059f3588fb8044c0fad1d09e3c01d225e25b9220dbfdcf16dbb1b3"
+ dependencies = [
+- "lazy_static",
+- "winapi 0.3.9",
++ "windows-sys 0.42.0",
+ ]
+
+ [[package]]
+@@ -1793,87 +1807,87 @@ checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd"
+
+ [[package]]
+ name = "security-framework"
+-version = "0.4.4"
++version = "2.3.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "64808902d7d99f78eaddd2b4e2509713babc3dc3c85ad6f4c447680f3c01e535"
++checksum = "23a2ac85147a3a11d77ecf1bc7166ec0b92febfa4461c37944e180f319ece467"
+ dependencies = [
+ "bitflags",
+- "core-foundation 0.7.0",
+- "core-foundation-sys 0.7.0",
++ "core-foundation",
++ "core-foundation-sys",
+ "libc",
+ "security-framework-sys",
+ ]
+
+ [[package]]
+ name = "security-framework-sys"
+-version = "0.4.3"
++version = "2.9.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "17bf11d99252f512695eb468de5516e5cf75455521e69dfe343f3b74e4748405"
++checksum = "f51d0c0d83bec45f16480d0ce0058397a69e48fcdc52d1dc8855fb68acbd31a7"
+ dependencies = [
+- "core-foundation-sys 0.7.0",
++ "core-foundation-sys",
+ "libc",
+ ]
+
+ [[package]]
+ name = "serde"
+-version = "1.0.128"
++version = "1.0.163"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "1056a0db1978e9dbf0f6e4fca677f6f9143dc1c19de346f22cac23e422196834"
++checksum = "2113ab51b87a539ae008b5c6c02dc020ffa39afd2d83cffcb3f4eb2722cebec2"
+ dependencies = [
+ "serde_derive",
+ ]
+
+ [[package]]
+ name = "serde_derive"
+-version = "1.0.128"
++version = "1.0.163"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "13af2fbb8b60a8950d6c72a56d2095c28870367cc8e10c55e9745bac4995a2c4"
++checksum = "8c805777e3930c8883389c602315a24224bcc738b63905ef87cd1420353ea93e"
+ dependencies = [
+- "proc-macro2 1.0.24",
+- "quote 1.0.7",
+- "syn 1.0.60",
++ "proc-macro2 1.0.58",
++ "quote 1.0.27",
++ "syn 2.0.16",
+ ]
+
+ [[package]]
+ name = "serde_json"
+-version = "1.0.64"
++version = "1.0.96"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "799e97dc9fdae36a5c8b8f2cae9ce2ee9fdce2058c57a93e6099d919fd982f79"
++checksum = "057d394a50403bcac12672b2b18fb387ab6d289d957dab67dd201875391e52f1"
+ dependencies = [
+- "itoa",
++ "itoa 1.0.6",
+ "ryu",
+ "serde",
+ ]
+
+ [[package]]
+ name = "serde_urlencoded"
+-version = "0.6.1"
++version = "0.7.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "9ec5d77e2d4c73717816afac02670d5c4f534ea95ed430442cad02e7a6e32c97"
++checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd"
+ dependencies = [
+- "dtoa",
+- "itoa",
++ "form_urlencoded",
++ "itoa 1.0.6",
++ "ryu",
+ "serde",
+- "url 2.1.1",
+ ]
+
+ [[package]]
+ name = "serde_yaml"
+-version = "0.8.19"
++version = "0.8.26"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "6375dbd828ed6964c3748e4ef6d18e7a175d408ffe184bca01698d0c73f915a9"
++checksum = "578a7433b776b56a35785ed5ce9a7e777ac0598aac5a6dd1b4b18a307c7fc71b"
+ dependencies = [
+- "dtoa",
+ "indexmap",
++ "ryu",
+ "serde",
+ "yaml-rust",
+ ]
+
+ [[package]]
+ name = "signal-hook"
+-version = "0.3.9"
++version = "0.3.15"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "470c5a6397076fae0094aaf06a08e6ba6f37acb77d3b1b91ea92b4d6c8650c39"
++checksum = "732768f1176d21d09e076c23a93123d40bba92d50c4058da34d45c8de8e682b9"
+ dependencies = [
+ "libc",
+ "signal-hook-registry",
+@@ -1881,45 +1895,47 @@ dependencies = [
+
+ [[package]]
+ name = "signal-hook-mio"
+-version = "0.2.1"
++version = "0.2.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "29fd5867f1c4f2c5be079aee7a2adf1152ebb04a4bc4d341f504b7dece607ed4"
++checksum = "29ad2e15f37ec9a6cc544097b78a1ec90001e9f71b81338ca39f430adaca99af"
+ dependencies = [
+ "libc",
+- "mio 0.7.0",
++ "mio 0.7.14",
+ "signal-hook",
+ ]
+
+ [[package]]
+ name = "signal-hook-registry"
+-version = "1.4.0"
++version = "1.4.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "e51e73328dc4ac0c7ccbda3a494dfa03df1de2f46018127f60c693f2648455b0"
++checksum = "d8229b473baa5980ac72ef434c4415e70c4b5e71b423043adb4ba059f89c99a1"
+ dependencies = [
+ "libc",
+ ]
+
+ [[package]]
+ name = "slab"
+-version = "0.4.2"
++version = "0.4.8"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "c111b5bd5695e56cffe5129854aa230b39c93a305372fdbb2668ca2394eea9f8"
++checksum = "6528351c9bc8ab22353f9d776db39a20288e8d6c37ef8cfe3317cf875eecfc2d"
++dependencies = [
++ "autocfg 1.1.0",
++]
+
+ [[package]]
+ name = "smallvec"
+-version = "1.4.1"
++version = "1.10.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "3757cb9d89161a2f24e1cf78efa0c1fcff485d18e3f55e0aa3480824ddaa0f3f"
++checksum = "a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0"
+
+ [[package]]
+ name = "socket2"
+-version = "0.3.12"
++version = "0.3.19"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "03088793f677dce356f3ccc2edb1b314ad191ab702a5de3faf49304f7e104918"
++checksum = "122e570113d28d773067fab24266b66753f6ea915758651696b6e35e49f88d6e"
+ dependencies = [
+- "cfg-if 0.1.10",
++ "cfg-if 1.0.0",
+ "libc",
+- "redox_syscall",
+ "winapi 0.3.9",
+ ]
+
+@@ -1933,7 +1949,7 @@ dependencies = [
+ "clap",
+ "crossterm",
+ "dirs",
+- "rand 0.8.3",
++ "rand 0.8.5",
+ "rspotify",
+ "serde",
+ "serde_json",
+@@ -1945,9 +1961,9 @@ dependencies = [
+
+ [[package]]
+ name = "str-buf"
+-version = "1.0.5"
++version = "1.0.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "d44a3643b4ff9caf57abcee9c2c621d6c03d9135e0d8b589bd9afb5992cb176a"
++checksum = "9e08d8363704e6c71fc928674353e6b7c23dcea9d82d7012c8faf2a3a025f8d0"
+
+ [[package]]
+ name = "strsim"
+@@ -1974,46 +1990,56 @@ dependencies = [
+
+ [[package]]
+ name = "syn"
+-version = "1.0.60"
++version = "1.0.109"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "c700597eca8a5a762beb35753ef6b94df201c81cca676604f547495a0d7f0081"
++checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
+ dependencies = [
+- "proc-macro2 1.0.24",
+- "quote 1.0.7",
+- "unicode-xid 0.2.1",
++ "proc-macro2 1.0.58",
++ "quote 1.0.27",
++ "unicode-ident",
++]
++
++[[package]]
++name = "syn"
++version = "2.0.16"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "a6f671d4b5ffdb8eadec19c0ae67fe2639df8684bd7bc4b83d986b8db549cf01"
++dependencies = [
++ "proc-macro2 1.0.58",
++ "quote 1.0.27",
++ "unicode-ident",
+ ]
+
+ [[package]]
+ name = "synstructure"
+-version = "0.12.4"
++version = "0.12.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "b834f2d66f734cb897113e34aaff2f1ab4719ca946f9a7358dba8f8064148701"
++checksum = "f36bdaa60a83aca3921b5259d5400cbf5e90fc51931376a9bd4a0eb79aa7210f"
+ dependencies = [
+- "proc-macro2 1.0.24",
+- "quote 1.0.7",
+- "syn 1.0.60",
+- "unicode-xid 0.2.1",
++ "proc-macro2 1.0.58",
++ "quote 1.0.27",
++ "syn 1.0.109",
++ "unicode-xid 0.2.4",
+ ]
+
+ [[package]]
+ name = "tempfile"
+-version = "3.1.0"
++version = "3.5.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "7a6e24d9338a0a5be79593e2fa15a648add6138caa803e2d5bc782c371732ca9"
++checksum = "b9fbec84f381d5795b08656e4912bec604d162bff9291d6189a78f4c8ab87998"
+ dependencies = [
+- "cfg-if 0.1.10",
+- "libc",
+- "rand 0.7.3",
+- "redox_syscall",
+- "remove_dir_all",
+- "winapi 0.3.9",
++ "cfg-if 1.0.0",
++ "fastrand",
++ "redox_syscall 0.3.5",
++ "rustix",
++ "windows-sys 0.45.0",
+ ]
+
+ [[package]]
+ name = "termcolor"
+-version = "1.1.0"
++version = "1.2.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "bb6bfa289a4d7c5766392812c0a1f4c1ba45afa1ad47803c11e1f407d846d75f"
++checksum = "be55cf8942feac5c765c2c993422806843c9a9a45d4d5c407ad6dd2ea95eb9b6"
+ dependencies = [
+ "winapi-util",
+ ]
+@@ -2029,31 +2055,22 @@ dependencies = [
+
+ [[package]]
+ name = "thiserror"
+-version = "1.0.20"
++version = "1.0.40"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "7dfdd070ccd8ccb78f4ad66bf1982dc37f620ef696c6b5028fe2ed83dd3d0d08"
++checksum = "978c9a314bd8dc99be594bc3c175faaa9794be04a5a5e153caba6915336cebac"
+ dependencies = [
+ "thiserror-impl",
+ ]
+
+ [[package]]
+ name = "thiserror-impl"
+-version = "1.0.20"
++version = "1.0.40"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "bd80fc12f73063ac132ac92aceea36734f04a1d93c1240c6944e23a3b8841793"
++checksum = "f9456a42c5b0d803c8cd86e73dd7cc9edd429499f37a3550d286d5e86720569f"
+ dependencies = [
+- "proc-macro2 1.0.24",
+- "quote 1.0.7",
+- "syn 1.0.60",
+-]
+-
+-[[package]]
+-name = "thread_local"
+-version = "1.0.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "d40c6d1b69745a6ec6fb1ca717914848da4b44ae29d9b3080cbee91d72a69b14"
+-dependencies = [
+- "lazy_static",
++ "proc-macro2 1.0.58",
++ "quote 1.0.27",
++ "syn 2.0.16",
+ ]
+
+ [[package]]
+@@ -2063,25 +2080,35 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "9a53f4706d65497df0c4349241deddf35f84cee19c87ed86ea8ca590f4464437"
+ dependencies = [
+ "jpeg-decoder",
+- "miniz_oxide 0.4.3",
++ "miniz_oxide 0.4.4",
+ "weezl",
+ ]
+
+ [[package]]
+ name = "time"
+-version = "0.1.43"
++version = "0.1.45"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "ca8a50ef2360fbd1eeb0ecd46795a87a19024eb4b53c5dc916ca1fd95fe62438"
++checksum = "1b797afad3f312d1c66a56d11d0316f916356d11bd158fbc6ca6389ff6bf805a"
+ dependencies = [
+ "libc",
++ "wasi 0.10.0+wasi-snapshot-preview1",
+ "winapi 0.3.9",
+ ]
+
+ [[package]]
+ name = "tinyvec"
+-version = "0.3.3"
++version = "1.6.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "53953d2d3a5ad81d9f844a32f14ebb121f50b650cd59d0ee2a07cf13c617efed"
++checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50"
++dependencies = [
++ "tinyvec_macros",
++]
++
++[[package]]
++name = "tinyvec_macros"
++version = "0.1.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
+
+ [[package]]
+ name = "tokio"
+@@ -2100,7 +2127,7 @@ dependencies = [
+ "mio-named-pipes",
+ "mio-uds",
+ "num_cpus",
+- "pin-project-lite",
++ "pin-project-lite 0.1.12",
+ "signal-hook-registry",
+ "slab",
+ "tokio-macros",
+@@ -2113,16 +2140,16 @@ version = "0.2.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "e44da00bfc73a25f814cd8d7e57a68a5c31b74b3152a0a1d1f590c97ed06265a"
+ dependencies = [
+- "proc-macro2 1.0.24",
+- "quote 1.0.7",
+- "syn 1.0.60",
++ "proc-macro2 1.0.58",
++ "quote 1.0.27",
++ "syn 1.0.109",
+ ]
+
+ [[package]]
+ name = "tokio-socks"
+-version = "0.2.2"
++version = "0.3.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "1997788a0e25e09300e44680ba1ef9d44d6f634a883641f80109e8b59c928daf"
++checksum = "d611fd5d241872372d52a0a3d309c52d0b95a6a67671a6c8f7ab2c4a37fb2539"
+ dependencies = [
+ "bytes 0.4.12",
+ "either",
+@@ -2151,41 +2178,52 @@ dependencies = [
+ "futures-core",
+ "futures-sink",
+ "log",
+- "pin-project-lite",
++ "pin-project-lite 0.1.12",
+ "tokio",
+ ]
+
+ [[package]]
+ name = "tower-service"
+-version = "0.3.0"
++version = "0.3.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "e987b6bf443f4b5b3b6f38704195592cca41c5bb7aedd3c3693c7081f8289860"
++checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52"
+
+ [[package]]
+ name = "tracing"
+-version = "0.1.17"
++version = "0.1.37"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "dbdf4ccd1652592b01286a5dbe1e2a77d78afaa34beadd9872a5f7396f92aaa9"
++checksum = "8ce8c33a8d48bd45d624a6e523445fd21ec13d3653cd51f681abf67418f54eb8"
+ dependencies = [
+- "cfg-if 0.1.10",
++ "cfg-if 1.0.0",
+ "log",
++ "pin-project-lite 0.2.9",
+ "tracing-core",
+ ]
+
+ [[package]]
+ name = "tracing-core"
+-version = "0.1.11"
++version = "0.1.31"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "94ae75f0d28ae10786f3b1895c55fe72e79928fd5ccdebb5438c75e93fec178f"
++checksum = "0955b8137a1df6f1a2e9a37d8a6656291ff0297c1a97c24e0d8425fe2312f79a"
+ dependencies = [
+- "lazy_static",
++ "once_cell",
++]
++
++[[package]]
++name = "tracing-futures"
++version = "0.2.5"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "97d095ae15e245a057c8e8451bab9b3ee1e1f68e9ba2b4fbc18d0ac5237835f2"
++dependencies = [
++ "pin-project",
++ "tracing",
+ ]
+
+ [[package]]
+ name = "try-lock"
+-version = "0.2.3"
++version = "0.2.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "59547bce71d9c38b83d9c0e92b6066c4253371f15005def0c30d9657f50c7642"
++checksum = "3528ecfd12c466c6f163363caf2d02a71161dd5e1cc6ae7b34207ea2d42d81ed"
+
+ [[package]]
+ name = "tui"
+@@ -2211,33 +2249,36 @@ dependencies = [
+
+ [[package]]
+ name = "unicode-bidi"
+-version = "0.3.4"
++version = "0.3.13"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5"
+-dependencies = [
+- "matches",
+-]
++checksum = "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460"
++
++[[package]]
++name = "unicode-ident"
++version = "1.0.8"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e5464a87b239f13a63a501f2701565754bae92d243d4bb7eb12f6d57d2269bf4"
+
+ [[package]]
+ name = "unicode-normalization"
+-version = "0.1.13"
++version = "0.1.22"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "6fb19cf769fa8c6a80a162df694621ebeb4dafb606470b2b2fce0be40a98a977"
++checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921"
+ dependencies = [
+ "tinyvec",
+ ]
+
+ [[package]]
+ name = "unicode-segmentation"
+-version = "1.6.0"
++version = "1.10.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "e83e153d1053cbb5a118eeff7fd5be06ed99153f00dbcd8ae310c5fb2b22edc0"
++checksum = "1dd624098567895118886609431a7c3b8f516e41d30e0643f03d94592a147e36"
+
+ [[package]]
+ name = "unicode-width"
+-version = "0.1.8"
++version = "0.1.10"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "9337591893a19b88d8d87f2cec1e73fad5cdfd10e5a6f349f498ad6ea2ffb1e3"
++checksum = "c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b"
+
+ [[package]]
+ name = "unicode-xid"
+@@ -2247,9 +2288,9 @@ checksum = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc"
+
+ [[package]]
+ name = "unicode-xid"
+-version = "0.2.1"
++version = "0.2.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "f7fe0bb3479651439c9112f72b6c505038574c9fbb575ed1bf3b797fa39dd564"
++checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c"
+
+ [[package]]
+ name = "url"
+@@ -2264,20 +2305,20 @@ dependencies = [
+
+ [[package]]
+ name = "url"
+-version = "2.1.1"
++version = "2.3.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "829d4a8476c35c9bf0bbce5a3b23f4106f79728039b726d292bb93bc106787cb"
++checksum = "0d68c799ae75762b8c3fe375feb6600ef5602c883c5d21eb51c09f22b83c4643"
+ dependencies = [
+- "idna 0.2.0",
+- "matches",
+- "percent-encoding 2.1.0",
++ "form_urlencoded",
++ "idna 0.3.0",
++ "percent-encoding 2.2.0",
+ ]
+
+ [[package]]
+ name = "vcpkg"
+-version = "0.2.10"
++version = "0.2.15"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "6454029bf181f092ad1b853286f23e2c507d8e8194d01d92da4a55c274a5508c"
++checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426"
+
+ [[package]]
+ name = "vec_map"
+@@ -2287,9 +2328,9 @@ checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191"
+
+ [[package]]
+ name = "version_check"
+-version = "0.9.2"
++version = "0.9.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "b5a972e5669d67ba988ce3dc826706fb0a8b01471c088cb0b6110b805cc36aed"
++checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
+
+ [[package]]
+ name = "want"
+@@ -2303,23 +2344,23 @@ dependencies = [
+
+ [[package]]
+ name = "wasi"
+-version = "0.9.0+wasi-snapshot-preview1"
++version = "0.10.0+wasi-snapshot-preview1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519"
++checksum = "1a143597ca7c7793eff794def352d41792a93c481eb1042423ff7ff72ba2c31f"
+
+ [[package]]
+ name = "wasi"
+-version = "0.10.2+wasi-snapshot-preview1"
++version = "0.11.0+wasi-snapshot-preview1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "fd6fbd9a79829dd1ad0cc20627bf1ed606756a7f77edff7b66b7064f9cb327c6"
++checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
+
+ [[package]]
+ name = "wasm-bindgen"
+-version = "0.2.65"
++version = "0.2.86"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "f3edbcc9536ab7eababcc6d2374a0b7bfe13a2b6d562c5e07f370456b1a8f33d"
++checksum = "5bba0e8cb82ba49ff4e229459ff22a191bbe9a1cb3a341610c9c33efc27ddf73"
+ dependencies = [
+- "cfg-if 0.1.10",
++ "cfg-if 1.0.0",
+ "serde",
+ "serde_json",
+ "wasm-bindgen-macro",
+@@ -2327,26 +2368,26 @@ dependencies = [
+
+ [[package]]
+ name = "wasm-bindgen-backend"
+-version = "0.2.65"
++version = "0.2.86"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "89ed2fb8c84bfad20ea66b26a3743f3e7ba8735a69fe7d95118c33ec8fc1244d"
++checksum = "19b04bc93f9d6bdee709f6bd2118f57dd6679cf1176a1af464fca3ab0d66d8fb"
+ dependencies = [
+ "bumpalo",
+- "lazy_static",
+ "log",
+- "proc-macro2 1.0.24",
+- "quote 1.0.7",
+- "syn 1.0.60",
++ "once_cell",
++ "proc-macro2 1.0.58",
++ "quote 1.0.27",
++ "syn 2.0.16",
+ "wasm-bindgen-shared",
+ ]
+
+ [[package]]
+ name = "wasm-bindgen-futures"
+-version = "0.4.15"
++version = "0.4.36"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "41ad6e4e8b2b7f8c90b6e09a9b590ea15cb0d1dbe28502b5a405cd95d1981671"
++checksum = "2d1985d03709c53167ce907ff394f5316aa22cb4e12761295c5dc57dacb6297e"
+ dependencies = [
+- "cfg-if 0.1.10",
++ "cfg-if 1.0.0",
+ "js-sys",
+ "wasm-bindgen",
+ "web-sys",
+@@ -2354,38 +2395,38 @@ dependencies = [
+
+ [[package]]
+ name = "wasm-bindgen-macro"
+-version = "0.2.65"
++version = "0.2.86"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "eb071268b031a64d92fc6cf691715ca5a40950694d8f683c5bb43db7c730929e"
++checksum = "14d6b024f1a526bb0234f52840389927257beb670610081360e5a03c5df9c258"
+ dependencies = [
+- "quote 1.0.7",
++ "quote 1.0.27",
+ "wasm-bindgen-macro-support",
+ ]
+
+ [[package]]
+ name = "wasm-bindgen-macro-support"
+-version = "0.2.65"
++version = "0.2.86"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "cf592c807080719d1ff2f245a687cbadb3ed28b2077ed7084b47aba8b691f2c6"
++checksum = "e128beba882dd1eb6200e1dc92ae6c5dbaa4311aa7bb211ca035779e5efc39f8"
+ dependencies = [
+- "proc-macro2 1.0.24",
+- "quote 1.0.7",
+- "syn 1.0.60",
++ "proc-macro2 1.0.58",
++ "quote 1.0.27",
++ "syn 2.0.16",
+ "wasm-bindgen-backend",
+ "wasm-bindgen-shared",
+ ]
+
+ [[package]]
+ name = "wasm-bindgen-shared"
+-version = "0.2.65"
++version = "0.2.86"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "72b6c0220ded549d63860c78c38f3bcc558d1ca3f4efa74942c536ddbbb55e87"
++checksum = "ed9d5b4305409d1fc9482fee2d7f9bcbf24b3972bf59817ef757e23982242a93"
+
+ [[package]]
+ name = "web-sys"
+-version = "0.3.42"
++version = "0.3.63"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "8be2398f326b7ba09815d0b403095f34dd708579220d099caae89be0b32137b2"
++checksum = "3bdd9ef4e984da1187bf8110c5cf5b845fbc87a23602cdf912386a76fcd3a7c2"
+ dependencies = [
+ "js-sys",
+ "wasm-bindgen",
+@@ -2404,15 +2445,15 @@ dependencies = [
+
+ [[package]]
+ name = "weezl"
+-version = "0.1.3"
++version = "0.1.7"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "3e2bb9fc8309084dd7cd651336673844c1d47f8ef6d2091ec160b27f5c4aa277"
++checksum = "9193164d4de03a926d909d3bc7c30543cecb35400c02114792c2cae20d5e2dbb"
+
+ [[package]]
+ name = "widestring"
+-version = "0.4.2"
++version = "0.4.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "a763e303c0e0f23b0da40888724762e802a8ffefbc22de4127ef42493c2ea68c"
++checksum = "c168940144dd21fd8046987c16a46a33d5fc84eec29ef9dcddc2ac9e31526b7c"
+
+ [[package]]
+ name = "winapi"
+@@ -2466,6 +2507,162 @@ version = "0.4.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
+
++[[package]]
++name = "windows"
++version = "0.48.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e686886bc078bc1b0b600cac0147aadb815089b6e4da64016cbd754b6342700f"
++dependencies = [
++ "windows-targets 0.48.0",
++]
++
++[[package]]
++name = "windows-sys"
++version = "0.42.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7"
++dependencies = [
++ "windows_aarch64_gnullvm 0.42.2",
++ "windows_aarch64_msvc 0.42.2",
++ "windows_i686_gnu 0.42.2",
++ "windows_i686_msvc 0.42.2",
++ "windows_x86_64_gnu 0.42.2",
++ "windows_x86_64_gnullvm 0.42.2",
++ "windows_x86_64_msvc 0.42.2",
++]
++
++[[package]]
++name = "windows-sys"
++version = "0.45.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0"
++dependencies = [
++ "windows-targets 0.42.2",
++]
++
++[[package]]
++name = "windows-sys"
++version = "0.48.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9"
++dependencies = [
++ "windows-targets 0.48.0",
++]
++
++[[package]]
++name = "windows-targets"
++version = "0.42.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071"
++dependencies = [
++ "windows_aarch64_gnullvm 0.42.2",
++ "windows_aarch64_msvc 0.42.2",
++ "windows_i686_gnu 0.42.2",
++ "windows_i686_msvc 0.42.2",
++ "windows_x86_64_gnu 0.42.2",
++ "windows_x86_64_gnullvm 0.42.2",
++ "windows_x86_64_msvc 0.42.2",
++]
++
++[[package]]
++name = "windows-targets"
++version = "0.48.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7b1eb6f0cd7c80c79759c929114ef071b87354ce476d9d94271031c0497adfd5"
++dependencies = [
++ "windows_aarch64_gnullvm 0.48.0",
++ "windows_aarch64_msvc 0.48.0",
++ "windows_i686_gnu 0.48.0",
++ "windows_i686_msvc 0.48.0",
++ "windows_x86_64_gnu 0.48.0",
++ "windows_x86_64_gnullvm 0.48.0",
++ "windows_x86_64_msvc 0.48.0",
++]
++
++[[package]]
++name = "windows_aarch64_gnullvm"
++version = "0.42.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8"
++
++[[package]]
++name = "windows_aarch64_gnullvm"
++version = "0.48.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc"
++
++[[package]]
++name = "windows_aarch64_msvc"
++version = "0.42.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43"
++
++[[package]]
++name = "windows_aarch64_msvc"
++version = "0.48.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3"
++
++[[package]]
++name = "windows_i686_gnu"
++version = "0.42.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f"
++
++[[package]]
++name = "windows_i686_gnu"
++version = "0.48.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241"
++
++[[package]]
++name = "windows_i686_msvc"
++version = "0.42.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060"
++
++[[package]]
++name = "windows_i686_msvc"
++version = "0.48.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00"
++
++[[package]]
++name = "windows_x86_64_gnu"
++version = "0.42.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36"
++
++[[package]]
++name = "windows_x86_64_gnu"
++version = "0.48.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1"
++
++[[package]]
++name = "windows_x86_64_gnullvm"
++version = "0.42.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3"
++
++[[package]]
++name = "windows_x86_64_gnullvm"
++version = "0.48.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953"
++
++[[package]]
++name = "windows_x86_64_msvc"
++version = "0.42.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0"
++
++[[package]]
++name = "windows_x86_64_msvc"
++version = "0.48.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a"
++
+ [[package]]
+ name = "winreg"
+ version = "0.7.0"
diff --git a/testing/spotifyd/APKBUILD b/testing/spotifyd/APKBUILD
deleted file mode 100644
index 26c13dbdd08..00000000000
--- a/testing/spotifyd/APKBUILD
+++ /dev/null
@@ -1,60 +0,0 @@
-# Contributor: Thomas Kienlen <kommander@laposte.net>
-# Maintainer: Thomas Kienlen <kommander@laposte.net>
-pkgname=spotifyd
-pkgver=0.3.3
-pkgrel=1
-pkgdesc="Open source Spotify client running as a UNIX daemon"
-url="https://github.com/Spotifyd/spotifyd"
-arch="all !riscv64 !s390x"
-license="GPL-3.0-or-later"
-makedepends="
- alsa-lib-dev
- cargo
- dbus-dev
- libogg-dev
- openssl-dev
- pulseaudio-dev
- "
-pkgusers="spotifyd"
-pkggroups="spotifyd"
-install="spotifyd.pre-install"
-subpackages="$pkgname-openrc"
-
-source="https://github.com/Spotifyd/spotifyd/archive/v$pkgver/spotifyd-$pkgver.tar.gz
- spotifyd.initd
- spotifyd.conf
- "
-
-prepare() {
- default_prepare
-
- # Optimize binary for size (10.7 MiB -> 4.8 MiB).
- cat >> Cargo.toml <<-EOF
-
- [profile.release]
- codegen-units = 1
- lto = true
- opt-level = "z"
- panic = "abort"
- EOF
-}
-
-build() {
- cargo build --release --locked --features pulseaudio_backend,dbus_mpris,dbus_keyring,rodio_backend
-}
-
-check() {
- cargo test --locked --target-dir=target
-}
-
-package() {
- install -D -m 755 target/release/spotifyd "$pkgdir/usr/bin/spotifyd"
- install -D -m 755 "$srcdir/spotifyd.initd" "$pkgdir/etc/init.d/spotifyd"
- install -D -m 660 -o spotifyd -g spotifyd "$srcdir/spotifyd.conf" "$pkgdir/etc/spotifyd.conf"
-}
-
-sha512sums="
-bb8522a022ce1a4cd6a075b865f274ef4a6a5c6b37c44cb909637183cda1299d2218091ebec0f58b68233a74c17041d002557cad0137ee58ad123ec1587a921d spotifyd-0.3.3.tar.gz
-dd4664c5818af8de3439deedfecb2a9d6bd70ab41c3db57cf659d42d4071ffe47d137fa55d94009022472d5927668978df2e6236c574bbe35596fb386ef274a2 spotifyd.initd
-3b431114226af7c67838bf860d07c4f4f661808142caadc9920d4268c1c3a89d61d99c310c13b3b4568dc6c10a5c95dfcb05a52f8551884a836a17b20b3ec06c spotifyd.conf
-"
diff --git a/testing/spotifyd/spotifyd.conf b/testing/spotifyd/spotifyd.conf
deleted file mode 100644
index eb9ba791089..00000000000
--- a/testing/spotifyd/spotifyd.conf
+++ /dev/null
@@ -1,23 +0,0 @@
-[global]
-username = "USER"
-password = "PASS"
-device_name = "spotifyd"
-
-# pulseaudio works fine as backend but it needs some workaround for give
-# access and write permission to its socket or run it system wide
-backend = "alsa"
-device = "default" # Given by `aplay -L`
-mixer = "PCM"
-volume-controller = "alsa" # or alsa_linear, or softvol
-
-#onevent = command_run_on_playback_event
-
-# bitrate could be 96|160|320
-bitrate = 160
-
-cache_path = "/var/cache/spotifyd"
-
-volume-normalisation = true
-normalisation-pregain = -10
-
-use_mpris = false # it requires a dbus session
diff --git a/testing/spotifyd/spotifyd.initd b/testing/spotifyd/spotifyd.initd
deleted file mode 100644
index c6f3f4fd69d..00000000000
--- a/testing/spotifyd/spotifyd.initd
+++ /dev/null
@@ -1,18 +0,0 @@
-#!/sbin/openrc-run
-
-supervisor=supervise-daemon
-command=/usr/bin/spotifyd
-command_args="--no-daemon"
-command_user="spotifyd:spotifyd"
-output_log=/var/log/$RC_SVCNAME.log
-
-depend() {
- need net
-}
-
-start_pre() {
- checkpath --directory --owner $command_user --mode 0775 \
- /var/cache/$RC_SVCNAME
- checkpath --file --owner $command_user --mode 0644 \
- /var/log/$RC_SVCNAME.log
-}
diff --git a/testing/spotifyd/spotifyd.pre-install b/testing/spotifyd/spotifyd.pre-install
deleted file mode 100644
index e86abb4eebd..00000000000
--- a/testing/spotifyd/spotifyd.pre-install
+++ /dev/null
@@ -1,5 +0,0 @@
-#!/bin/sh
-
-addgroup -S spotifyd 2>/dev/null
-adduser -S -D -H -h /dev/null -s /sbin/nologin -G audio -g spotifyd spotifyd 2>/dev/null
-exit 0
diff --git a/testing/spreed-webrtc/APKBUILD b/testing/spreed-webrtc/APKBUILD
deleted file mode 100644
index 6501fc9b827..00000000000
--- a/testing/spreed-webrtc/APKBUILD
+++ /dev/null
@@ -1,71 +0,0 @@
-# Contributor: Leonardo Arena <rnalrd@alpinelinux.org>
-# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
-pkgname=spreed-webrtc
-pkgver=0.29.7
-pkgrel=8
-pkgdesc="WebRTC audio/video call and conferencing server"
-url="http://spreed.me"
-arch="all !riscv64" # blocked by nodejs
-license="AGPL-3.0-or-later"
-makedepends="autoconf automake go go-context go-acceptlanguageparser
- go-conf go-httputils go-mux go-nats go-nuid go-pkac go-phoenix
- go-securecookie go-sloth go-spreed-turnservicecli go-uuid go-websocket
- nodejs"
-install="$pkgname.pre-install"
-subpackages="$pkgname-doc $pkgname-openrc"
-pkgusers="spreed"
-pkggroups="spreed"
-_vendor="strukturag"
-source="$pkgname-$pkgver.tar.gz::https://github.com/$_vendor/spreed-webrtc/archive/v$pkgver.tar.gz
- $pkgname.initd
- go.mod
- go.sum
- fix-build-with-gomodules.patch
- "
-
-export GOPATH="$srcdir/go"
-export GOCACHE="$srcdir/go-build"
-export GOTEMPDIR="$srcdir/go"
-
-export GOFLAGS="$GOFLAGS -mod=mod -modcacherw"
-
-prepare() {
- default_prepare
-
- ./autogen.sh
-
- cp "$srcdir/go.mod" .
- cp "$srcdir/go.sum" .
- #fix default server config
- sed -i 's|;root = /usr/share/spreed-webrtc-server/www|root = /usr/share/spreed-webrtc-server/www|' \
- server.conf.in
-}
-
-build() {
- ./configure --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --infodir=/usr/share/info
- make GOPATH="$GOPATH" assets
- make GOPATH="$GOPATH" binaryall
-}
-
-check() {
- make test
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- mkdir -p "$pkgdir"/usr/share/doc/$pkgname
- mv doc/* "$pkgdir"/usr/share/doc/$pkgname
- install -m644 -D server.conf.in "$pkgdir"/etc/$pkgname/$pkgname-server.conf
- install -m755 -D "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname-server
-}
-
-sha512sums="
-bc4acf1dc53325c4da19429a802fdba8d72e619dbf7e872d007b87fbc711e9e63962a83c770f77d44c2454bc038bef0306d57556e86381d4e4c48262030af30b spreed-webrtc-0.29.7.tar.gz
-1419b5cbec88f18de71d5dc550bde3d784fc744f0675115ad57e55ebbdbc9f65222584f806bfd6ed2a9b3d4e1c14fe92d8f220cd105851abcb4f4956a6cf6e3a spreed-webrtc.initd
-a05f526d9994a4c785e268c3ad326bcefb73d2533fd4e3e82ad249c944974b8fa499572a86d2609da9e33b1a61260442d8b010e2ca507cf4c11567ba4a96b55c go.mod
-8f4878ce07e6581e4838dc74f8825c381b16b2042a2b9f5ef4a82da74ea58ab63e6c76ab4805d2980146a17d3888b429c79fb993bbdf88482faebddc6a6787a0 go.sum
-b97dea0e16dd34bb9c9d6a6473406d9477feb40da5daa29390c615c2f825f27a2f67ac99c974c15bad5384db2aa3d8b2460eae89f4882c1a8c925b33d7819e42 fix-build-with-gomodules.patch
-"
diff --git a/testing/spreed-webrtc/fix-build-with-gomodules.patch b/testing/spreed-webrtc/fix-build-with-gomodules.patch
deleted file mode 100644
index bac6c1852d4..00000000000
--- a/testing/spreed-webrtc/fix-build-with-gomodules.patch
+++ /dev/null
@@ -1,222 +0,0 @@
-diff --git a/Makefile.am b/Makefile.am
-index 9933adf..a4a2260 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -74,7 +74,7 @@ dependencies.tsv:
- rm -rf $$TMP
-
- binary:
-- GOPATH=$(GOPATH) $(GO) build $(GOBUILDFLAGS) -o bin/$(EXENAME) -ldflags '$(INTERNALLDFLAGS)' app/$(EXENAME)
-+ GOPATH=$(GOPATH) $(GO) build $(GOBUILDFLAGS) -o bin/$(EXENAME) -ldflags '$(INTERNALLDFLAGS)' github.com/strukturag/spreed-webrtc/src/app/$(EXENAME)
-
- binaryrace: GOBUILDFLAGS := $(GOBUILDFLAGS) -race
- binaryrace: binary
-@@ -88,7 +88,7 @@ gofmt:
- fmt: gofmt
-
- test:
-- GOPATH=$(GOPATH) $(GO) test -v $(GOTESTFLAGS) app/... ./go/...
-+ GOPATH=$(GOPATH) $(GO) test -v $(GOTESTFLAGS) github.com/strukturag/spreed-webrtc/src/app/... github.com/strukturag/spreed-webrtc/go/...
-
- dist_gopath: $(DIST_SRC)
- [ -d $(SYSTEM_GOPATH) ] && \
-diff --git a/go/channelling/hub.go b/go/channelling/hub.go
-index 068e1e8..bccd2ce 100644
---- a/go/channelling/hub.go
-+++ b/go/channelling/hub.go
-@@ -190,7 +190,7 @@ func (h *hub) GetContactID(session *Session, token string) (userid string, err e
- contact := &Contact{}
- err = h.contacts.Decode("contact", token, contact)
- if err != nil {
-- err = fmt.Errorf("Failed to decode incoming contact token", err, token)
-+ err = fmt.Errorf("Failed to decode incoming contact token: %s, %s", err, token)
- return
- }
- // Use the userid which is not ours from the contact data.
-@@ -201,7 +201,7 @@ func (h *hub) GetContactID(session *Session, token string) (userid string, err e
- userid = contact.A
- }
- if userid == "" {
-- err = fmt.Errorf("Ignoring foreign contact token", contact.A, contact.B)
-+ err = fmt.Errorf("Ignoring foreign contact token, contact.A: %s, contact.B: %s", contact.A, contact.B)
- }
-
- return
-diff --git a/go/channelling/room_manager_test.go b/go/channelling/room_manager_test.go
-index a31f69f..efb69df 100644
---- a/go/channelling/room_manager_test.go
-+++ b/go/channelling/room_manager_test.go
-@@ -24,13 +24,11 @@ package channelling
- import (
- "regexp"
- "testing"
--
-- "github.com/strukturag/spreed-webrtc/go/channelling"
- )
-
- func NewTestRoomManager() (RoomManager, *Config) {
- config := &Config{
-- RoomTypeDefault: channelling.RoomTypeRoom,
-+ RoomTypeDefault: RoomTypeRoom,
- }
- return NewRoomManager(config, nil), config
- }
-@@ -41,16 +39,16 @@ func Test_RoomManager_JoinRoom_ReturnsAnErrorForUnauthenticatedSessionsWhenCreat
- config.AuthorizeRoomCreation = true
-
- unauthenticatedSession := &Session{}
-- _, err := roomManager.JoinRoom(channelling.RoomTypeRoom+":foo", "foo", channelling.RoomTypeRoom, nil, unauthenticatedSession, false, nil)
-+ _, err := roomManager.JoinRoom(RoomTypeRoom+":foo", "foo", RoomTypeRoom, nil, unauthenticatedSession, false, nil)
- assertDataError(t, err, "room_join_requires_account")
-
- authenticatedSession := &Session{userid: "9870457"}
-- _, err = roomManager.JoinRoom(channelling.RoomTypeRoom+":foo", "foo", channelling.RoomTypeRoom, nil, authenticatedSession, true, nil)
-+ _, err = roomManager.JoinRoom(RoomTypeRoom+":foo", "foo", RoomTypeRoom, nil, authenticatedSession, true, nil)
- if err != nil {
- t.Fatalf("Unexpected error %v joining room while authenticated", err)
- }
-
-- _, err = roomManager.JoinRoom(channelling.RoomTypeRoom+":foo", "foo", channelling.RoomTypeRoom, nil, unauthenticatedSession, false, nil)
-+ _, err = roomManager.JoinRoom(RoomTypeRoom+":foo", "foo", RoomTypeRoom, nil, unauthenticatedSession, false, nil)
- if err != nil {
- t.Fatalf("Unexpected error %v joining room while unauthenticated", err)
- }
-@@ -62,16 +60,16 @@ func Test_RoomManager_JoinRoom_ReturnsAnErrorForUnauthenticatedSessionsWhenJoinR
- config.AuthorizeRoomJoin = true
-
- unauthenticatedSession := &Session{}
-- _, err := roomManager.JoinRoom(channelling.RoomTypeRoom+":foo", "foo", channelling.RoomTypeRoom, nil, unauthenticatedSession, false, nil)
-+ _, err := roomManager.JoinRoom(RoomTypeRoom+":foo", "foo", RoomTypeRoom, nil, unauthenticatedSession, false, nil)
- assertDataError(t, err, "room_join_requires_account")
-
- authenticatedSession := &Session{userid: "9870457"}
-- _, err = roomManager.JoinRoom(channelling.RoomTypeRoom+":foo", "foo", channelling.RoomTypeRoom, nil, authenticatedSession, true, nil)
-+ _, err = roomManager.JoinRoom(RoomTypeRoom+":foo", "foo", RoomTypeRoom, nil, authenticatedSession, true, nil)
- if err != nil {
- t.Fatalf("Unexpected error %v joining room while authenticated", err)
- }
-
-- _, err = roomManager.JoinRoom(channelling.RoomTypeRoom+":foo", "foo", channelling.RoomTypeRoom, nil, unauthenticatedSession, false, nil)
-+ _, err = roomManager.JoinRoom(RoomTypeRoom+":foo", "foo", RoomTypeRoom, nil, unauthenticatedSession, false, nil)
- assertDataError(t, err, "room_join_requires_account")
- }
-
-@@ -81,16 +79,16 @@ func Test_RoomManager_JoinPublicRoom_ForUnauthenticatedSessionsWhenCreationRequi
- config.AuthorizeRoomCreation = true
-
- unauthenticatedSession := &Session{}
-- _, err := roomManager.JoinRoom(channelling.RoomTypeRoom+":public", "public", channelling.RoomTypeRoom, nil, unauthenticatedSession, false, nil)
-+ _, err := roomManager.JoinRoom(RoomTypeRoom+":public", "public", RoomTypeRoom, nil, unauthenticatedSession, false, nil)
- assertDataError(t, err, "room_join_requires_account")
-
- config.PublicRoomNames = regexp.MustCompile("^public$")
-- _, err = roomManager.JoinRoom(channelling.RoomTypeRoom+":public", "public", channelling.RoomTypeRoom, nil, unauthenticatedSession, false, nil)
-+ _, err = roomManager.JoinRoom(RoomTypeRoom+":public", "public", RoomTypeRoom, nil, unauthenticatedSession, false, nil)
- if err != nil {
- t.Fatalf("Unexpected error %v joining public room", err)
- }
-
-- _, err = roomManager.JoinRoom(channelling.RoomTypeRoom+":private", "private", channelling.RoomTypeRoom, nil, unauthenticatedSession, false, nil)
-+ _, err = roomManager.JoinRoom(RoomTypeRoom+":private", "private", RoomTypeRoom, nil, unauthenticatedSession, false, nil)
- assertDataError(t, err, "room_join_requires_account")
- }
-
-@@ -100,27 +98,27 @@ func Test_RoomManager_JoinPublicRoom_ForUnauthenticatedSessionsWhenJoinRequiresA
- config.AuthorizeRoomJoin = true
-
- authenticatedSession := &Session{userid: "9870457"}
-- _, err := roomManager.JoinRoom(channelling.RoomTypeRoom+":public", "public", channelling.RoomTypeRoom, nil, authenticatedSession, true, nil)
-+ _, err := roomManager.JoinRoom(RoomTypeRoom+":public", "public", RoomTypeRoom, nil, authenticatedSession, true, nil)
- if err != nil {
- t.Fatalf("Unexpected error %v joining room while authenticated", err)
- }
-
- unauthenticatedSession := &Session{}
-- _, err = roomManager.JoinRoom(channelling.RoomTypeRoom+":public", "public", channelling.RoomTypeRoom, nil, unauthenticatedSession, false, nil)
-+ _, err = roomManager.JoinRoom(RoomTypeRoom+":public", "public", RoomTypeRoom, nil, unauthenticatedSession, false, nil)
- assertDataError(t, err, "room_join_requires_account")
-
- config.PublicRoomNames = regexp.MustCompile("^public$")
-- _, err = roomManager.JoinRoom(channelling.RoomTypeRoom+":public", "public", channelling.RoomTypeRoom, nil, unauthenticatedSession, false, nil)
-+ _, err = roomManager.JoinRoom(RoomTypeRoom+":public", "public", RoomTypeRoom, nil, unauthenticatedSession, false, nil)
- if err != nil {
- t.Fatalf("Unexpected error %v joining public room", err)
- }
-
-- _, err = roomManager.JoinRoom(channelling.RoomTypeRoom+":private", "private", channelling.RoomTypeRoom, nil, authenticatedSession, true, nil)
-+ _, err = roomManager.JoinRoom(RoomTypeRoom+":private", "private", RoomTypeRoom, nil, authenticatedSession, true, nil)
- if err != nil {
- t.Fatalf("Unexpected error %v joining room while authenticated", err)
- }
-
-- _, err = roomManager.JoinRoom(channelling.RoomTypeRoom+":private", "private", channelling.RoomTypeRoom, nil, unauthenticatedSession, false, nil)
-+ _, err = roomManager.JoinRoom(RoomTypeRoom+":private", "private", RoomTypeRoom, nil, unauthenticatedSession, false, nil)
- assertDataError(t, err, "room_join_requires_account")
- }
-
-@@ -133,36 +131,36 @@ func Test_RoomManager_UpdateRoom_ReturnsAnErrorIfNoRoomHasBeenJoined(t *testing.
-
- func Test_RoomManager_UpdateRoom_ReturnsAnErrorIfUpdatingAnUnjoinedRoom(t *testing.T) {
- roomManager, _ := NewTestRoomManager()
-- session := &Session{Hello: true, Roomid: channelling.RoomTypeRoom + ":foo"}
-+ session := &Session{Hello: true, Roomid: RoomTypeRoom + ":foo"}
- _, err := roomManager.UpdateRoom(session, &DataRoom{Name: "bar"})
- assertDataError(t, err, "not_in_room")
- }
-
- func Test_RoomManager_UpdateRoom_ReturnsACorrectlyTypedDocument(t *testing.T) {
- roomManager, _ := NewTestRoomManager()
-- session := &Session{Hello: true, Roomid: channelling.RoomTypeRoom + ":foo"}
-+ session := &Session{Hello: true, Roomid: RoomTypeRoom + ":foo"}
- room, err := roomManager.UpdateRoom(session, &DataRoom{Name: "foo"})
- if err != nil {
- t.Fatalf("Unexpected error %v updating room", err)
- }
-
-- if room.Type != channelling.RoomTypeRoom {
-- t.Errorf("Expected document type to be %s, but was %v", channelling.RoomTypeRoom, room.Type)
-+ if room.Type != RoomTypeRoom {
-+ t.Errorf("Expected document type to be %s, but was %v", RoomTypeRoom, room.Type)
- }
- }
-
- func Test_RoomManager_TypeThroughNats(t *testing.T) {
- theRoomManager, _ := NewTestRoomManager()
- rm := theRoomManager.(*roomManager)
-- if rt := rm.getConfiguredRoomType("foo"); rt != channelling.RoomTypeRoom {
-- t.Errorf("Expected room type to be %s, but was %v", channelling.RoomTypeRoom, rt)
-+ if rt := rm.getConfiguredRoomType("foo"); rt != RoomTypeRoom {
-+ t.Errorf("Expected room type to be %s, but was %v", RoomTypeRoom, rt)
- }
- rm.setNatsRoomType(&roomTypeMessage{Path: "foo", Type: "Conference"})
- if rt := rm.getConfiguredRoomType("foo"); rt != "Conference" {
- t.Errorf("Expected room type to be %s, but was %v", "Conference", rt)
- }
- rm.setNatsRoomType(&roomTypeMessage{Path: "foo", Type: ""})
-- if rt := rm.getConfiguredRoomType("foo"); rt != channelling.RoomTypeRoom {
-- t.Errorf("Expected room type to be %s, but was %v", channelling.RoomTypeRoom, rt)
-+ if rt := rm.getConfiguredRoomType("foo"); rt != RoomTypeRoom {
-+ t.Errorf("Expected room type to be %s, but was %v", RoomTypeRoom, rt)
- }
- }
-diff --git a/go/channelling/roomworker_test.go b/go/channelling/roomworker_test.go
-index 21af563..616bced 100644
---- a/go/channelling/roomworker_test.go
-+++ b/go/channelling/roomworker_test.go
-@@ -23,14 +23,12 @@ package channelling
-
- import (
- "testing"
--
-- "github.com/strukturag/spreed-webrtc/go/channelling"
- )
-
- const (
-- testRoomID string = channelling.RoomTypeRoom + ":a-room-name"
-+ testRoomID string = RoomTypeRoom + ":a-room-name"
- testRoomName string = "a-room-name"
-- testRoomType string = channelling.RoomTypeRoom
-+ testRoomType string = RoomTypeRoom
- )
-
- func NewTestRoomWorker() RoomWorker {
diff --git a/testing/spreed-webrtc/go.mod b/testing/spreed-webrtc/go.mod
deleted file mode 100644
index 5fb97f25a7f..00000000000
--- a/testing/spreed-webrtc/go.mod
+++ /dev/null
@@ -1,23 +0,0 @@
-module github.com/strukturag/spreed-webrtc
-
-go 1.16
-
-require (
- github.com/dlintw/goconf v0.0.0-20120228082610-dcc070983490 // indirect
- github.com/gorilla/context v0.0.0-20141217160251-215affda49ad // indirect
- github.com/gorilla/mux v0.0.0-20150717150303-ba336c9cfb43
- github.com/gorilla/securecookie v0.0.0-20150716233244-aeade84400a8
- github.com/gorilla/websocket v1.0.1-0.20160802133203-a69d25be2fe2
- github.com/longsleep/pkac v0.0.0-20170216190044-302922ac7627
- github.com/nats-io/gnatsd v1.4.1 // indirect
- github.com/nats-io/nats v1.1.6
- github.com/nats-io/nuid v1.0.1 // indirect
- github.com/satori/go.uuid v1.1.0
- github.com/strukturag/goacceptlanguageparser v0.0.0-20140213133123-68066e68c294
- github.com/strukturag/httputils v0.0.0-20140702013533-afbf05c71ac0
- github.com/strukturag/phoenix v0.0.0-20161005151202-8c65e1692d19
- github.com/strukturag/sloth v0.9.2
- github.com/strukturag/spreed-turnservicecli v0.0.0-20161117162408-b8e469d5ef70
- golang.org/x/crypto v0.0.0-20210513164829-c07d793c2f9a // indirect
- golang.org/x/sys v0.0.0-20210603125802-9665404d3644 // indirect
-)
diff --git a/testing/spreed-webrtc/go.sum b/testing/spreed-webrtc/go.sum
deleted file mode 100644
index c2e276a7ea1..00000000000
--- a/testing/spreed-webrtc/go.sum
+++ /dev/null
@@ -1,39 +0,0 @@
-github.com/dlintw/goconf v0.0.0-20120228082610-dcc070983490 h1:I8/Qu5NTaiXi1TsEYmTeLDUlf7u9pEdbG+azjDvx8Vg=
-github.com/dlintw/goconf v0.0.0-20120228082610-dcc070983490/go.mod h1:jWlUIP63OLr0cV2FGN2IEzSFsMAe58if8rk/SAE0JRE=
-github.com/gorilla/context v0.0.0-20141217160251-215affda49ad h1:wJwKN6X6iRRVnjdBgrkWjhBOvYm7yw5boqXwFUnBtbE=
-github.com/gorilla/context v0.0.0-20141217160251-215affda49ad/go.mod h1:kBGZzfjB9CEq2AlWe17Uuf7NDRt0dE0s8S51q0aT7Yg=
-github.com/gorilla/mux v0.0.0-20150717150303-ba336c9cfb43 h1:57wH+A8tUmZebLBPMjnrsWPGLIc5VJXlaFsmqi5OFms=
-github.com/gorilla/mux v0.0.0-20150717150303-ba336c9cfb43/go.mod h1:1lud6UwP+6orDFRuTfBEV8e9/aOM/c4fVVCaMa2zaAs=
-github.com/gorilla/securecookie v0.0.0-20150716233244-aeade84400a8 h1:powLUcfunfzziU56pIT+NuvYRmLeQ+05RV4csYZHtuw=
-github.com/gorilla/securecookie v0.0.0-20150716233244-aeade84400a8/go.mod h1:ra0sb63/xPlUeL+yeDciTfxMRAA+MP+HVt/4epWDjd4=
-github.com/gorilla/websocket v1.0.1-0.20160802133203-a69d25be2fe2 h1:yIxp1mchDH00JCTdncC1gFGv5Z8B1SVy0Ov2URmttj0=
-github.com/gorilla/websocket v1.0.1-0.20160802133203-a69d25be2fe2/go.mod h1:E7qHFY5m1UJ88s3WnNqhKjPHQ0heANvMoAMk2YaljkQ=
-github.com/longsleep/pkac v0.0.0-20170216190044-302922ac7627 h1:1Lt125+sDIgBqTk8TYJ48lYexNK+Lss3Rbhx6UXZQ9E=
-github.com/longsleep/pkac v0.0.0-20170216190044-302922ac7627/go.mod h1:ROvuh4JyjR0PysD1geAMzB2ThW/sdVYhENCF4RhF3R8=
-github.com/nats-io/gnatsd v1.4.1 h1:RconcfDeWpKCD6QIIwiVFcvForlXpWeJP7i5/lDLy44=
-github.com/nats-io/gnatsd v1.4.1/go.mod h1:nqco77VO78hLCJpIcVfygDP2rPGfsEHkGTUk94uh5DQ=
-github.com/nats-io/nats v1.1.6 h1:dCWhg0ozPbL1CrXnoIPHjUig8CqccTctbN4wJTpZdMI=
-github.com/nats-io/nats v1.1.6/go.mod h1:PpmYZwlgTfBI56QypJLfIMOfLnMRuVs+VL6r8mQ2SoQ=
-github.com/nats-io/nuid v1.0.1 h1:5iA8DT8V7q8WK2EScv2padNa/rTESc1KdnPw4TC2paw=
-github.com/nats-io/nuid v1.0.1/go.mod h1:19wcPz3Ph3q0Jbyiqsd0kePYG7A95tJPxeL+1OSON2c=
-github.com/satori/go.uuid v1.1.0 h1:B9KXyj+GzIpJbV7gmr873NsY6zpbxNy24CBtGrk7jHo=
-github.com/satori/go.uuid v1.1.0/go.mod h1:dA0hQrYB0VpLJoorglMZABFdXlWrHn1NEOzdhQKdks0=
-github.com/strukturag/goacceptlanguageparser v0.0.0-20140213133123-68066e68c294 h1:8U41keMoOchSikt1At5TEQgEj2mh9ZfmnSOijaUWgJc=
-github.com/strukturag/goacceptlanguageparser v0.0.0-20140213133123-68066e68c294/go.mod h1:7Lni2gMAfES8RZSGt6VOrRHC2ZDQa0xazX0d4/TQDkc=
-github.com/strukturag/httputils v0.0.0-20140702013533-afbf05c71ac0 h1:U2x1aZG8ca9wWyCIK7RkHO4RdjtPxXUk4L0EfQSbf4c=
-github.com/strukturag/httputils v0.0.0-20140702013533-afbf05c71ac0/go.mod h1:A5XaUrxwNx8VzSvlxjvxorp2hClKx3005Xx8R69wZ1Q=
-github.com/strukturag/phoenix v0.0.0-20161005151202-8c65e1692d19 h1:epTd/P71nNACa14dWOxYLrxXWLQoVZR/TSy4CWfb6KM=
-github.com/strukturag/phoenix v0.0.0-20161005151202-8c65e1692d19/go.mod h1:5kmm0WAhilO0SKh1rgJi09yvMaI3VV19lWuIWhoxUyw=
-github.com/strukturag/sloth v0.9.2 h1:W0PnsaIoBLkGDt+l2WjErP3TcgOvDhUp9cUrXOU9DZ4=
-github.com/strukturag/sloth v0.9.2/go.mod h1:GAwLmX7h2iAwA6kKkNNUC3sTXccyZtm0CIT/UfWdQXc=
-github.com/strukturag/spreed-turnservicecli v0.0.0-20161117162408-b8e469d5ef70 h1:8rbV0mmWhFh78GhcrO4TpO4Cntl9TUGizGxOa2s0Jcw=
-github.com/strukturag/spreed-turnservicecli v0.0.0-20161117162408-b8e469d5ef70/go.mod h1:W2bMHfSrHssRywtoqMTiRIfI+5AdZ2E6m+lknY1l2lo=
-golang.org/x/crypto v0.0.0-20210513164829-c07d793c2f9a h1:kr2P4QFmQr29mSLA43kwrOcgcReGTfbE9N577tCTuBc=
-golang.org/x/crypto v0.0.0-20210513164829-c07d793c2f9a/go.mod h1:P+XmwS30IXTQdn5tA2iutPOUgjI07+tq3H3K9MVA1s8=
-golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
-golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
-golang.org/x/sys v0.0.0-20210603125802-9665404d3644 h1:CA1DEQ4NdKphKeL70tvsWNdT5oFh1lOjihRcEDROi0I=
-golang.org/x/sys v0.0.0-20210603125802-9665404d3644/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
-golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
-golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
-golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
diff --git a/testing/spreed-webrtc/spreed-webrtc.initd b/testing/spreed-webrtc/spreed-webrtc.initd
deleted file mode 100644
index 1622781c9f9..00000000000
--- a/testing/spreed-webrtc/spreed-webrtc.initd
+++ /dev/null
@@ -1,22 +0,0 @@
-#!/sbin/openrc-run
-
-command=/usr/sbin/spreed-webrtc-server
-pidfile=/var/run/spreed-webrtc/${SVCNAME}.pid
-conf=/etc/spreed-webrtc/${SVCNAME}.conf
-logfile=/var/log/spreed-webrtc/spreed-webrtc-server.log
-command_args="-c $conf -l $logfile"
-
-: ${exec_user:=spreed}
-: ${exec_group:=spreed}
-
-start_stop_daemon_args="--user $exec_user --group $exec_group --background --make-pidfile"
-
-depend() {
- need net
- after firewall
-}
-
-start_pre() {
- checkpath --directory ${pidfile%/*} --directory ${logfile%/*} \
- --owner ${exec_user}:${exec_group}
-}
diff --git a/testing/spreed-webrtc/spreed-webrtc.pre-install b/testing/spreed-webrtc/spreed-webrtc.pre-install
deleted file mode 100644
index a14b9033fd3..00000000000
--- a/testing/spreed-webrtc/spreed-webrtc.pre-install
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-addgroup -S spreed 2>/dev/null
-adduser -h /usr/share/spreed-webrtc -s /sbin/nologin -G spreed -S -D spreed 2>/dev/null
-exit 0
diff --git a/testing/spvm-errno/APKBUILD b/testing/spvm-errno/APKBUILD
new file mode 100644
index 00000000000..cce4c77c8d3
--- /dev/null
+++ b/testing/spvm-errno/APKBUILD
@@ -0,0 +1,38 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=spvm-errno
+pkgver=0.092
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=SPVM-Errno
+pkgdesc="SPVM Language - Error Numbers"
+url="https://metacpan.org/release/SPVM-Errno/"
+arch="all !s390x !armhf !armv7 !x86" # spvm
+license="MIT"
+depends="perl spvm"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/K/KI/KIMOTO/SPVM-Errno-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+7411a31330a6fcc42cd8aac339926ce4d5d8a91e56755ecca67d7008f4fe2c7297a99931327152ebc6a1ec563a7d029e78ed72e13fa2751d30607b1810e4c198 SPVM-Errno-0.092.tar.gz
+"
diff --git a/testing/spvm-math/APKBUILD b/testing/spvm-math/APKBUILD
new file mode 100644
index 00000000000..9323cb4d436
--- /dev/null
+++ b/testing/spvm-math/APKBUILD
@@ -0,0 +1,38 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=spvm-math
+pkgver=1.001
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=SPVM-Math
+pkgdesc="SPVM Language - Mathematical Functions"
+url="https://metacpan.org/release/SPVM-Math/"
+arch="all !s390x !armhf !armv7 !x86" # spvm
+license="MIT"
+depends="perl spvm"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/K/KI/KIMOTO/SPVM-Math-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+9a2993820f04933c837bb3a61016eac41c730f926e2adc2a5ceb0e3e1caeb5f10582dd3c1f809ca02a139da73f4ec655608622e31bf0eb1952246cc2e8c027e2 SPVM-Math-1.001.tar.gz
+"
diff --git a/testing/spvm-mime-base64/APKBUILD b/testing/spvm-mime-base64/APKBUILD
new file mode 100644
index 00000000000..91a1ea1605a
--- /dev/null
+++ b/testing/spvm-mime-base64/APKBUILD
@@ -0,0 +1,38 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=spvm-mime-base64
+pkgver=1.001003
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=SPVM-MIME-Base64
+pkgdesc="SPVM Language - Base64 Encoding/Decoding"
+url="https://metacpan.org/release/SPVM-MIME-Base64/"
+arch="all !s390x !armhf !armv7 !x86" # spvm
+license="MIT"
+depends="perl spvm"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/K/KI/KIMOTO/SPVM-MIME-Base64-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+939625523c0ab06081ba68bb33c58ca29574b095bf050482ce8e5bfdf18b0b78b899caeaead473298e38bbda097df87c7ed1b7e3a9266545e3162f881483c5de SPVM-MIME-Base64-1.001003.tar.gz
+"
diff --git a/testing/spvm-thread/APKBUILD b/testing/spvm-thread/APKBUILD
new file mode 100644
index 00000000000..53ec846197c
--- /dev/null
+++ b/testing/spvm-thread/APKBUILD
@@ -0,0 +1,38 @@
+# Automatically generated by apkbuild-cpan, template 4
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=spvm-thread
+pkgver=0.001
+pkgrel=0
+#_pkgreal is used by apkbuild-cpan to find modules at MetaCpan
+_pkgreal=SPVM-Thread
+pkgdesc="SPVM Language - Native Thread"
+url="https://metacpan.org/release/SPVM-Thread/"
+arch="all !s390x !armhf !armv7 !x86" # spvm
+license="MIT"
+depends="perl spvm"
+subpackages="$pkgname-doc"
+source="https://cpan.metacpan.org/authors/id/K/KI/KIMOTO/SPVM-Thread-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgreal-$pkgver"
+
+build() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ PERL_MM_USE_DEFAULT=1 perl -I. Makefile.PL \
+ INSTALLDIRS=vendor \
+ NO_PACKLIST=1 \
+ NO_PERLLOCAL=1
+ make
+}
+
+check() {
+ export CFLAGS=$(perl -MConfig -E 'say $Config{ccflags}')
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+1af9c85c91bef0da6362c01839017f2935af6856cb97ae7f6be1476398789aee4c2d566ee58cc692233532c90e870dc84c380295010b9e0798325e66240216f9 SPVM-Thread-0.001.tar.gz
+"
diff --git a/testing/sqlar/APKBUILD b/testing/sqlar/APKBUILD
index c74e547aac3..133bc833127 100644
--- a/testing/sqlar/APKBUILD
+++ b/testing/sqlar/APKBUILD
@@ -3,7 +3,7 @@
pkgname="sqlar"
pkgver=0_git20180107
_commit=4824e7389653a46f
-pkgrel=0
+pkgrel=1
pkgdesc="SQLite Archiver"
url="https://sqlite.org/sqlar"
arch="all"
diff --git a/testing/sqlcipher/APKBUILD b/testing/sqlcipher/APKBUILD
deleted file mode 100644
index c92c2048f0e..00000000000
--- a/testing/sqlcipher/APKBUILD
+++ /dev/null
@@ -1,51 +0,0 @@
-# Contributor: wener <wenermail@gmail.com>
-# Maintainer: wener <wenermail@gmail.com>
-pkgname=sqlcipher
-pkgver=4.4.3
-pkgrel=0
-pkgdesc="SQLCipher is an SQLite extension that provides 256 bit AES encryption of database files."
-url="https://www.zetetic.net/sqlcipher/"
-arch="all"
-license="BSD-3-clause"
-makedepends="openssl-dev tcl-dev readline-dev zlib-dev"
-subpackages="$pkgname-dev $pkgname-doc $pkgname-libs"
-source="$pkgname-$pkgver.tar.gz::https://github.com/sqlcipher/sqlcipher/archive/v$pkgver.tar.gz"
-# block by https://github.com/sqlcipher/sqlcipher/issues/368#issuecomment-669984195
-# options="!check"
-
-build() {
- export CFLAGS="$CFLAGS -DSQLITE_HAS_CODEC -DSQLCIPHER_TEST"
- export LDFLAGS="$LDFLAGS -lcrypto"
-
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var \
- --enable-tempstore=yes \
- --enable-fts5
-
- make
-}
-
-check() {
- make testfixture
- ./testfixture test/sqlcipher.test
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-
- install -Dm0644 sqlcipher.1 \
- "$pkgdir"/usr/share/man/man1/sqlcipher.1
-}
-
-libs() {
- pkgdesc="SQLCipher library"
- mkdir -p "$subpkgdir"/usr
- mv "$pkgdir"/usr/lib "$subpkgdir"/usr/
-}
-
-sha512sums="d80177cf658c145f7328bafac14bc2779afa463fc94ef0a5e99b6654cf2eece3088ac296949130e7263f52948913ffeac253c47e33d91816e90caf1788301a9a sqlcipher-4.4.3.tar.gz"
diff --git a/testing/sqliteodbc/APKBUILD b/testing/sqliteodbc/APKBUILD
index fdae75beebf..d799d5d1632 100644
--- a/testing/sqliteodbc/APKBUILD
+++ b/testing/sqliteodbc/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Robert Boisvert <rdboisvert@gmail.com>
# Maintainer: Robert Boisvert <rdboisvert@gmail.com>
pkgname=sqliteodbc
-pkgver=0.9998
+pkgver=0.99991
pkgrel=0
pkgdesc="SQLite ODBC driver"
url="http://www.ch-werner.de/sqliteodbc"
@@ -29,4 +29,6 @@ package() {
rm $pkgdir/usr/lib/*.la $pkgdir/usr/lib/*.a
}
-sha512sums="6c36cee09a7c300dd81fd70e51e84f0e93f1178393780aae5e982e5af16af7f3abc9dd39d1bdcfa49fb2fc3db3b22331e0019eac4f383da57a21ee4d2057d71f sqliteodbc-0.9998.tar.gz"
+sha512sums="
+ba45b4646083e577e7c54995e0d929fbc2a3bc4ed1667e4422521b6c035f3775f7c5d0ae9985808b8680bc9c2b5b79606289fd047a8805c82ce34d5631239285 sqliteodbc-0.99991.tar.gz
+"
diff --git a/testing/sqlmap/APKBUILD b/testing/sqlmap/APKBUILD
new file mode 100644
index 00000000000..8728afaccb6
--- /dev/null
+++ b/testing/sqlmap/APKBUILD
@@ -0,0 +1,58 @@
+# Contributor: Maxim Karasev <mxkrsv@disroot.org>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=sqlmap
+pkgver=1.8.4
+pkgrel=0
+pkgdesc="Automatic SQL injection and database takeover tool"
+url="https://sqlmap.org/"
+arch="noarch"
+license="GPL-2.0-or-later"
+depends="
+ py3-beautifulsoup4
+ py3-bottle
+ py3-chardet
+ py3-colorama
+ py3-keepalive
+ py3-magic
+ py3-pydes
+ py3-six
+ py3-termcolor
+ "
+makedepends="py3-setuptools py3-gpep517 py3-wheel"
+subpackages="$pkgname-pyc"
+source="https://pypi.python.org/packages/source/s/sqlmap/sqlmap-$pkgver.tar.gz
+ reduce-amount-of-third-party-dependencies.patch"
+options="!check" # fail with py311 for some reason
+
+prepare() {
+ # remove unneeded thirdparty moduels (keep patch small)
+ cd sqlmap/thirdparty
+ rm -rf chardet bottle beautifulsoup colorama keepalive magic odict \
+ pydes six termcolor
+
+ # pip sources hierarchy is not exactly the same as git
+ local builddir="$builddir"/sqlmap
+ default_prepare
+}
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ gpep517 install-wheel --destdir .testenv --prefix '' .dist/*.whl
+ .testenv/bin/python3 -m pytest
+}
+
+package() {
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+3cf79e057dffabdeeb5765ed99a86f2df0e8a404174b05e1d542a231de5ab31b9609a90647c79a7f7e62ce7fe1dee8426a06129ba3cdc5fdd38838156fe1cd50 sqlmap-1.8.4.tar.gz
+ee1d03843a6011c20da52f4dce329c8da412e08b4dcdf66a8d7685bf3816df0835d77c0ad52005ee63af6fdc8787e086db5837bdfb19c6e5122455df22ac0f11 reduce-amount-of-third-party-dependencies.patch
+"
diff --git a/testing/sqlmap/reduce-amount-of-third-party-dependencies.patch b/testing/sqlmap/reduce-amount-of-third-party-dependencies.patch
new file mode 100644
index 00000000000..bf0ff7adba8
--- /dev/null
+++ b/testing/sqlmap/reduce-amount-of-third-party-dependencies.patch
@@ -0,0 +1,897 @@
+From e76995bd6a15acee16481d39585ddc3018a6d7af Mon Sep 17 00:00:00 2001
+From: Maxim Karasev <begs@disroot.org>
+Date: Sat, 6 Aug 2022 20:44:51 +0300
+Subject: [PATCH] reduce amount of third party dependencies
+
+---
+ lib/controller/checks.py | 4 ++--
+ lib/core/agent.py | 2 +-
+ lib/core/common.py | 26 ++++++++++++-------------
+ lib/core/convert.py | 6 +++---
+ lib/core/datatype.py | 4 ++--
+ lib/core/dump.py | 4 ++--
+ lib/core/gui.py | 10 +++++-----
+ lib/core/option.py | 12 ++++++------
+ lib/core/patch.py | 8 ++++----
+ lib/core/settings.py | 4 ++--
+ lib/core/target.py | 6 +++---
+ lib/core/update.py | 2 +-
+ lib/core/wordlist.py | 2 +-
+ lib/parse/cmdline.py | 2 +-
+ lib/parse/sitemap.py | 2 +-
+ lib/request/basic.py | 10 +++++-----
+ lib/request/basicauthhandler.py | 2 +-
+ lib/request/chunkedhandler.py | 2 +-
+ lib/request/comparison.py | 2 +-
+ lib/request/connect.py | 10 +++++-----
+ lib/request/httpshandler.py | 4 ++--
+ lib/request/inject.py | 2 +-
+ lib/request/methodrequest.py | 2 +-
+ lib/request/pkihandler.py | 4 ++--
+ lib/request/rangehandler.py | 2 +-
+ lib/request/redirecthandler.py | 4 ++--
+ lib/takeover/abstraction.py | 2 +-
+ lib/takeover/metasploit.py | 2 +-
+ lib/takeover/web.py | 2 +-
+ lib/techniques/error/use.py | 2 +-
+ lib/techniques/union/use.py | 4 ++--
+ lib/utils/api.py | 24 +++++++++++------------
+ lib/utils/crawler.py | 8 ++++----
+ lib/utils/har.py | 4 ++--
+ lib/utils/hash.py | 10 +++++-----
+ lib/utils/hashdb.py | 2 +-
+ lib/utils/httpd.py | 10 +++++-----
+ lib/utils/pivotdumptable.py | 2 +-
+ lib/utils/purge.py | 2 +-
+ lib/utils/search.py | 4 ++--
+ lib/utils/sqlalchemy.py | 2 +-
+ plugins/dbms/maxdb/enumeration.py | 4 ++--
+ plugins/dbms/mssqlserver/enumeration.py | 2 +-
+ plugins/dbms/sybase/enumeration.py | 4 ++--
+ plugins/generic/custom.py | 2 +-
+ plugins/generic/databases.py | 2 +-
+ plugins/generic/entries.py | 4 ++--
+ plugins/generic/search.py | 2 +-
+ plugins/generic/users.py | 2 +-
+ thirdparty/multipart/multipartpost.py | 2 +-
+ 50 files changed, 121 insertions(+), 121 deletions(-)
+
+diff --git a/lib/controller/checks.py b/lib/controller/checks.py
+index b0d5fd6..71e0b29 100644
+--- a/lib/controller/checks.py
++++ b/lib/controller/checks.py
+@@ -102,8 +102,8 @@ from lib.request.inject import checkBooleanExpression
+ from lib.request.templates import getPageTemplate
+ from lib.techniques.union.test import unionTest
+ from lib.techniques.union.use import configUnion
+-from thirdparty import six
+-from thirdparty.six.moves import http_client as _http_client
++import six
++from six.moves import http_client as _http_client
+
+ def checkSqlInjection(place, parameter, value):
+ # Store here the details about boundaries and payload used to
+diff --git a/lib/core/agent.py b/lib/core/agent.py
+index 539183e..992ee10 100644
+--- a/lib/core/agent.py
++++ b/lib/core/agent.py
+@@ -57,7 +57,7 @@ from lib.core.settings import SINGLE_QUOTE_MARKER
+ from lib.core.settings import SLEEP_TIME_MARKER
+ from lib.core.settings import UNICODE_ENCODING
+ from lib.core.unescaper import unescaper
+-from thirdparty import six
++import six
+
+ class Agent(object):
+ """
+diff --git a/lib/core/common.py b/lib/core/common.py
+index 7dd6dbb..015cd2b 100644
+--- a/lib/core/common.py
++++ b/lib/core/common.py
+@@ -187,21 +187,21 @@ from lib.core.settings import WEBSCARAB_SPLITTER
+ from lib.core.threads import getCurrentThreadData
+ from lib.utils.safe2bin import safecharencode
+ from lib.utils.sqlalchemy import _sqlalchemy
+-from thirdparty import six
++import six
+ from thirdparty.clientform.clientform import ParseResponse
+ from thirdparty.clientform.clientform import ParseError
+-from thirdparty.colorama.initialise import init as coloramainit
+-from thirdparty.magic import magic
+-from thirdparty.odict import OrderedDict
+-from thirdparty.six import unichr as _unichr
+-from thirdparty.six.moves import collections_abc as _collections
+-from thirdparty.six.moves import configparser as _configparser
+-from thirdparty.six.moves import http_client as _http_client
+-from thirdparty.six.moves import input as _input
+-from thirdparty.six.moves import reload_module as _reload_module
+-from thirdparty.six.moves import urllib as _urllib
+-from thirdparty.six.moves import zip as _zip
+-from thirdparty.termcolor.termcolor import colored
++from colorama.initialise import init as coloramainit
++import magic
++from collections import OrderedDict
++from six import unichr as _unichr
++from six.moves import collections_abc as _collections
++from six.moves import configparser as _configparser
++from six.moves import http_client as _http_client
++from six.moves import input as _input
++from six.moves import reload_module as _reload_module
++from six.moves import urllib as _urllib
++from six.moves import zip as _zip
++from termcolor import colored
+
+ class UnicodeRawConfigParser(_configparser.RawConfigParser):
+ """
+diff --git a/lib/core/convert.py b/lib/core/convert.py
+index c6f86aa..a1fa5eb 100644
+--- a/lib/core/convert.py
++++ b/lib/core/convert.py
+@@ -28,9 +28,9 @@ from lib.core.settings import NULL
+ from lib.core.settings import PICKLE_PROTOCOL
+ from lib.core.settings import SAFE_HEX_MARKER
+ from lib.core.settings import UNICODE_ENCODING
+-from thirdparty import six
+-from thirdparty.six import unichr as _unichr
+-from thirdparty.six.moves import collections_abc as _collections
++import six
++from six import unichr as _unichr
++from six.moves import collections_abc as _collections
+
+ try:
+ from html import escape as htmlEscape
+diff --git a/lib/core/datatype.py b/lib/core/datatype.py
+index eadcb9c..1fdbf11 100644
+--- a/lib/core/datatype.py
++++ b/lib/core/datatype.py
+@@ -8,8 +8,8 @@ See the file 'LICENSE' for copying permission
+ import copy
+ import types
+
+-from thirdparty.odict import OrderedDict
+-from thirdparty.six.moves import collections_abc as _collections
++from collections import OrderedDict
++from six.moves import collections_abc as _collections
+
+ class AttribDict(dict):
+ """
+diff --git a/lib/core/dump.py b/lib/core/dump.py
+index 2e3cdfd..8b1b1f7 100644
+--- a/lib/core/dump.py
++++ b/lib/core/dump.py
+@@ -56,8 +56,8 @@ from lib.core.settings import UNSAFE_DUMP_FILEPATH_REPLACEMENT
+ from lib.core.settings import VERSION_STRING
+ from lib.core.settings import WINDOWS_RESERVED_NAMES
+ from lib.utils.safe2bin import safechardecode
+-from thirdparty import six
+-from thirdparty.magic import magic
++import six
++import magic
+
+ class Dump(object):
+ """
+diff --git a/lib/core/gui.py b/lib/core/gui.py
+index fa6f269..eb7160c 100644
+--- a/lib/core/gui.py
++++ b/lib/core/gui.py
+@@ -28,7 +28,7 @@ from lib.core.settings import GIT_PAGE
+ from lib.core.settings import SITE
+ from lib.core.settings import VERSION_STRING
+ from lib.core.settings import WIKI_PAGE
+-from thirdparty.six.moves import queue as _queue
++from six.moves import queue as _queue
+
+ alive = None
+ line = ""
+@@ -37,10 +37,10 @@ queue = None
+
+ def runGui(parser):
+ try:
+- from thirdparty.six.moves import tkinter as _tkinter
+- from thirdparty.six.moves import tkinter_scrolledtext as _tkinter_scrolledtext
+- from thirdparty.six.moves import tkinter_ttk as _tkinter_ttk
+- from thirdparty.six.moves import tkinter_messagebox as _tkinter_messagebox
++ from six.moves import tkinter as _tkinter
++ from six.moves import tkinter_scrolledtext as _tkinter_scrolledtext
++ from six.moves import tkinter_ttk as _tkinter_ttk
++ from six.moves import tkinter_messagebox as _tkinter_messagebox
+ except ImportError as ex:
+ raise SqlmapMissingDependence("missing dependence ('%s')" % getSafeExString(ex))
+
+diff --git a/lib/core/option.py b/lib/core/option.py
+index 7fc2116..5fc9ae3 100644
+--- a/lib/core/option.py
++++ b/lib/core/option.py
+@@ -151,13 +151,13 @@ from lib.utils.deps import checkDependencies
+ from lib.utils.har import HTTPCollectorFactory
+ from lib.utils.purge import purge
+ from lib.utils.search import search
+-from thirdparty import six
+-from thirdparty.keepalive import keepalive
++import six
++import keepalive
+ from thirdparty.multipart import multipartpost
+-from thirdparty.six.moves import collections_abc as _collections
+-from thirdparty.six.moves import http_client as _http_client
+-from thirdparty.six.moves import http_cookiejar as _http_cookiejar
+-from thirdparty.six.moves import urllib as _urllib
++from six.moves import collections_abc as _collections
++from six.moves import http_client as _http_client
++from six.moves import http_cookiejar as _http_cookiejar
++from six.moves import urllib as _urllib
+ from thirdparty.socks import socks
+ from xml.etree.ElementTree import ElementTree
+
+diff --git a/lib/core/patch.py b/lib/core/patch.py
+index 9136b70..c72b1a2 100644
+--- a/lib/core/patch.py
++++ b/lib/core/patch.py
+@@ -22,7 +22,7 @@ import lib.request.connect
+ import lib.utils.search
+ import lib.utils.sqlalchemy
+ import thirdparty.ansistrm.ansistrm
+-import thirdparty.chardet.universaldetector
++import chardet.universaldetector
+
+ from lib.core.common import filterNone
+ from lib.core.common import getSafeExString
+@@ -39,8 +39,8 @@ from lib.core.option import _setHTTPHandlers
+ from lib.core.option import setVerbosity
+ from lib.core.settings import IS_WIN
+ from lib.request.templates import getPageTemplate
+-from thirdparty import six
+-from thirdparty.six.moves import http_client as _http_client
++import six
++from six.moves import http_client as _http_client
+
+ _rand = 0
+
+@@ -80,7 +80,7 @@ def dirtyPatches():
+ _http_client.LineAndFileWrapper.readline = _
+
+ # to prevent too much "guessing" in case of binary data retrieval
+- thirdparty.chardet.universaldetector.MINIMUM_THRESHOLD = 0.90
++ chardet.universaldetector.MINIMUM_THRESHOLD = 0.90
+
+ match = re.search(r" --method[= ](\w+)", " ".join(sys.argv))
+ if match and match.group(1).upper() != PLACE.POST:
+diff --git a/lib/core/settings.py b/lib/core/settings.py
+index b8dbda3..32385bc 100644
+--- a/lib/core/settings.py
++++ b/lib/core/settings.py
+@@ -16,8 +16,8 @@ import time
+ from lib.core.enums import DBMS
+ from lib.core.enums import DBMS_DIRECTORY_NAME
+ from lib.core.enums import OS
+-from thirdparty import six
+-from thirdparty.six import unichr as _unichr
++import six
++from six import unichr as _unichr
+
+ # sqlmap version (<major>.<minor>.<month>.<monthly commit>)
+ VERSION = "1.7.9"
+diff --git a/lib/core/target.py b/lib/core/target.py
+index 480886a..a03151d 100644
+--- a/lib/core/target.py
++++ b/lib/core/target.py
+@@ -78,9 +78,9 @@ from lib.core.settings import USER_AGENT_ALIASES
+ from lib.core.settings import XML_RECOGNITION_REGEX
+ from lib.core.threads import getCurrentThreadData
+ from lib.utils.hashdb import HashDB
+-from thirdparty import six
+-from thirdparty.odict import OrderedDict
+-from thirdparty.six.moves import urllib as _urllib
++import six
++from collections import OrderedDict
++from six.moves import urllib as _urllib
+
+ def _setRequestParams():
+ """
+diff --git a/lib/core/update.py b/lib/core/update.py
+index 2fe6f12..b80407d 100644
+--- a/lib/core/update.py
++++ b/lib/core/update.py
+@@ -30,7 +30,7 @@ from lib.core.settings import IS_WIN
+ from lib.core.settings import VERSION
+ from lib.core.settings import TYPE
+ from lib.core.settings import ZIPBALL_PAGE
+-from thirdparty.six.moves import urllib as _urllib
++from six.moves import urllib as _urllib
+
+ def update():
+ if not conf.updateAll:
+diff --git a/lib/core/wordlist.py b/lib/core/wordlist.py
+index 781642b..f9d647d 100644
+--- a/lib/core/wordlist.py
++++ b/lib/core/wordlist.py
+@@ -11,7 +11,7 @@ from lib.core.common import getSafeExString
+ from lib.core.common import isZipFile
+ from lib.core.exception import SqlmapDataException
+ from lib.core.exception import SqlmapInstallationException
+-from thirdparty import six
++import six
+
+ class Wordlist(six.Iterator):
+ """
+diff --git a/lib/parse/cmdline.py b/lib/parse/cmdline.py
+index e16e822..cb8d338 100644
+--- a/lib/parse/cmdline.py
++++ b/lib/parse/cmdline.py
+@@ -92,7 +92,7 @@ from lib.core.shell import autoCompletion
+ from lib.core.shell import clearHistory
+ from lib.core.shell import loadHistory
+ from lib.core.shell import saveHistory
+-from thirdparty.six.moves import input as _input
++from six.moves import input as _input
+
+ def cmdLineParser(argv=None):
+ """
+diff --git a/lib/parse/sitemap.py b/lib/parse/sitemap.py
+index db2f090..3682fc7 100644
+--- a/lib/parse/sitemap.py
++++ b/lib/parse/sitemap.py
+@@ -13,7 +13,7 @@ from lib.core.data import logger
+ from lib.core.datatype import OrderedSet
+ from lib.core.exception import SqlmapSyntaxException
+ from lib.request.connect import Connect as Request
+-from thirdparty.six.moves import http_client as _http_client
++from six.moves import http_client as _http_client
+
+ abortedFlag = None
+
+diff --git a/lib/request/basic.py b/lib/request/basic.py
+index c00fd0d..403c72e 100644
+--- a/lib/request/basic.py
++++ b/lib/request/basic.py
+@@ -54,12 +54,12 @@ from lib.core.settings import UNICODE_ENCODING
+ from lib.core.settings import VIEWSTATE_REGEX
+ from lib.parse.headers import headersParser
+ from lib.parse.html import htmlParser
+-from thirdparty import six
+-from thirdparty.chardet import detect
++import six
++from chardet import detect
+ from thirdparty.identywaf import identYwaf
+-from thirdparty.odict import OrderedDict
+-from thirdparty.six import unichr as _unichr
+-from thirdparty.six.moves import http_client as _http_client
++from collections import OrderedDict
++from six import unichr as _unichr
++from six.moves import http_client as _http_client
+
+ @lockedmethod
+ def forgeHeaders(items=None, base=None):
+diff --git a/lib/request/basicauthhandler.py b/lib/request/basicauthhandler.py
+index f7c8408..472e7a2 100644
+--- a/lib/request/basicauthhandler.py
++++ b/lib/request/basicauthhandler.py
+@@ -5,7 +5,7 @@ Copyright (c) 2006-2023 sqlmap developers (https://sqlmap.org/)
+ See the file 'LICENSE' for copying permission
+ """
+
+-from thirdparty.six.moves import urllib as _urllib
++from six.moves import urllib as _urllib
+
+ class SmartHTTPBasicAuthHandler(_urllib.request.HTTPBasicAuthHandler):
+ """
+diff --git a/lib/request/chunkedhandler.py b/lib/request/chunkedhandler.py
+index b275993..4081eae 100644
+--- a/lib/request/chunkedhandler.py
++++ b/lib/request/chunkedhandler.py
+@@ -7,7 +7,7 @@ See the file 'LICENSE' for copying permission
+
+ from lib.core.data import conf
+ from lib.core.enums import HTTP_HEADER
+-from thirdparty.six.moves import urllib as _urllib
++from six.moves import urllib as _urllib
+
+ class ChunkedHandler(_urllib.request.HTTPHandler):
+ """
+diff --git a/lib/request/comparison.py b/lib/request/comparison.py
+index c703b2b..6a5763b 100644
+--- a/lib/request/comparison.py
++++ b/lib/request/comparison.py
+@@ -32,7 +32,7 @@ from lib.core.settings import REFLECTED_VALUE_MARKER
+ from lib.core.settings import UPPER_RATIO_BOUND
+ from lib.core.settings import URI_HTTP_HEADER
+ from lib.core.threads import getCurrentThreadData
+-from thirdparty import six
++import six
+
+ def comparison(page, headers, code=None, getRatioValue=False, pageLength=None):
+ _ = _adjust(_comparison(page, headers, code, getRatioValue, pageLength), getRatioValue)
+diff --git a/lib/request/connect.py b/lib/request/connect.py
+index 2f7cbfc..a39ac0f 100644
+--- a/lib/request/connect.py
++++ b/lib/request/connect.py
+@@ -136,11 +136,11 @@ from lib.request.comparison import comparison
+ from lib.request.direct import direct
+ from lib.request.methodrequest import MethodRequest
+ from lib.utils.safe2bin import safecharencode
+-from thirdparty import six
+-from thirdparty.odict import OrderedDict
+-from thirdparty.six import unichr as _unichr
+-from thirdparty.six.moves import http_client as _http_client
+-from thirdparty.six.moves import urllib as _urllib
++import six
++from collections import OrderedDict
++from six import unichr as _unichr
++from six.moves import http_client as _http_client
++from six.moves import urllib as _urllib
+ from thirdparty.socks.socks import ProxyError
+
+ class Connect(object):
+diff --git a/lib/request/httpshandler.py b/lib/request/httpshandler.py
+index 03c4079..ae06372 100644
+--- a/lib/request/httpshandler.py
++++ b/lib/request/httpshandler.py
+@@ -17,8 +17,8 @@ from lib.core.data import kb
+ from lib.core.data import logger
+ from lib.core.exception import SqlmapConnectionException
+ from lib.core.settings import PYVERSION
+-from thirdparty.six.moves import http_client as _http_client
+-from thirdparty.six.moves import urllib as _urllib
++from six.moves import http_client as _http_client
++from six.moves import urllib as _urllib
+
+ ssl = None
+ try:
+diff --git a/lib/request/inject.py b/lib/request/inject.py
+index 039ef1b..7e53fb0 100644
+--- a/lib/request/inject.py
++++ b/lib/request/inject.py
+@@ -66,7 +66,7 @@ from lib.techniques.dns.test import dnsTest
+ from lib.techniques.dns.use import dnsUse
+ from lib.techniques.error.use import errorUse
+ from lib.techniques.union.use import unionUse
+-from thirdparty import six
++import six
+
+ def _goDns(payload, expression):
+ value = None
+diff --git a/lib/request/methodrequest.py b/lib/request/methodrequest.py
+index 8535557..5188dd3 100644
+--- a/lib/request/methodrequest.py
++++ b/lib/request/methodrequest.py
+@@ -6,7 +6,7 @@ See the file 'LICENSE' for copying permission
+ """
+
+ from lib.core.convert import getText
+-from thirdparty.six.moves import urllib as _urllib
++from six.moves import urllib as _urllib
+
+ class MethodRequest(_urllib.request.Request):
+ """
+diff --git a/lib/request/pkihandler.py b/lib/request/pkihandler.py
+index 05a6ccf..9bf4cb3 100644
+--- a/lib/request/pkihandler.py
++++ b/lib/request/pkihandler.py
+@@ -8,8 +8,8 @@ See the file 'LICENSE' for copying permission
+ from lib.core.data import conf
+ from lib.core.common import getSafeExString
+ from lib.core.exception import SqlmapConnectionException
+-from thirdparty.six.moves import http_client as _http_client
+-from thirdparty.six.moves import urllib as _urllib
++from six.moves import http_client as _http_client
++from six.moves import urllib as _urllib
+
+ class HTTPSPKIAuthHandler(_urllib.request.HTTPSHandler):
+ def __init__(self, auth_file):
+diff --git a/lib/request/rangehandler.py b/lib/request/rangehandler.py
+index ff0598c..57b2101 100644
+--- a/lib/request/rangehandler.py
++++ b/lib/request/rangehandler.py
+@@ -6,7 +6,7 @@ See the file 'LICENSE' for copying permission
+ """
+
+ from lib.core.exception import SqlmapConnectionException
+-from thirdparty.six.moves import urllib as _urllib
++from six.moves import urllib as _urllib
+
+ class HTTPRangeHandler(_urllib.request.BaseHandler):
+ """
+diff --git a/lib/request/redirecthandler.py b/lib/request/redirecthandler.py
+index a305906..a43a685 100644
+--- a/lib/request/redirecthandler.py
++++ b/lib/request/redirecthandler.py
+@@ -31,8 +31,8 @@ from lib.core.settings import MAX_TOTAL_REDIRECTIONS
+ from lib.core.threads import getCurrentThreadData
+ from lib.request.basic import decodePage
+ from lib.request.basic import parseResponse
+-from thirdparty import six
+-from thirdparty.six.moves import urllib as _urllib
++import six
++from six.moves import urllib as _urllib
+
+ class SmartRedirectHandler(_urllib.request.HTTPRedirectHandler):
+ def _get_header_redirect(self, headers):
+diff --git a/lib/takeover/abstraction.py b/lib/takeover/abstraction.py
+index 52f43dd..51aab06 100644
+--- a/lib/takeover/abstraction.py
++++ b/lib/takeover/abstraction.py
+@@ -29,7 +29,7 @@ from lib.takeover.udf import UDF
+ from lib.takeover.web import Web
+ from lib.takeover.xp_cmdshell import XP_cmdshell
+ from lib.utils.safe2bin import safechardecode
+-from thirdparty.six.moves import input as _input
++from six.moves import input as _input
+
+ class Abstraction(Web, UDF, XP_cmdshell):
+ """
+diff --git a/lib/takeover/metasploit.py b/lib/takeover/metasploit.py
+index d4a8776..205cc56 100644
+--- a/lib/takeover/metasploit.py
++++ b/lib/takeover/metasploit.py
+@@ -49,7 +49,7 @@ from lib.core.subprocessng import blockingWriteToFD
+ from lib.core.subprocessng import Popen as execute
+ from lib.core.subprocessng import send_all
+ from lib.core.subprocessng import recv_some
+-from thirdparty import six
++import six
+
+ if IS_WIN:
+ import msvcrt
+diff --git a/lib/takeover/web.py b/lib/takeover/web.py
+index 9572740..41c5099 100644
+--- a/lib/takeover/web.py
++++ b/lib/takeover/web.py
+@@ -57,7 +57,7 @@ from lib.core.settings import SHELL_RUNCMD_EXE_TAG
+ from lib.core.settings import SHELL_WRITABLE_DIR_TAG
+ from lib.core.settings import VIEWSTATE_REGEX
+ from lib.request.connect import Connect as Request
+-from thirdparty.six.moves import urllib as _urllib
++from six.moves import urllib as _urllib
+
+ class Web(object):
+ """
+diff --git a/lib/techniques/blind/inference.py b/lib/techniques/blind/inference.py
+index 52bea11..569f816 100644
+--- a/lib/techniques/blind/inference.py
++++ b/lib/techniques/blind/inference.py
+@@ -62,7 +62,7 @@ from lib.request.connect import Connect as Request
+ from lib.utils.progress import ProgressBar
+ from lib.utils.safe2bin import safecharencode
+ from lib.utils.xrange import xrange
+-from thirdparty import six
++import six
+
+ def bisection(payload, expression, length=None, charsetType=None, firstChar=None, lastChar=None, dump=False):
+ """
+diff --git a/lib/techniques/error/use.py b/lib/techniques/error/use.py
+index 343733d..07be2e3 100644
+--- a/lib/techniques/error/use.py
++++ b/lib/techniques/error/use.py
+@@ -60,7 +60,7 @@ from lib.core.unescaper import unescaper
+ from lib.request.connect import Connect as Request
+ from lib.utils.progress import ProgressBar
+ from lib.utils.safe2bin import safecharencode
+-from thirdparty import six
++import six
+
+ def _oneShotErrorUse(expression, field=None, chunkTest=False):
+ offset = 1
+diff --git a/lib/techniques/union/use.py b/lib/techniques/union/use.py
+index ef550d8..dbc0915 100644
+--- a/lib/techniques/union/use.py
++++ b/lib/techniques/union/use.py
+@@ -59,8 +59,8 @@ from lib.core.unescaper import unescaper
+ from lib.request.connect import Connect as Request
+ from lib.utils.progress import ProgressBar
+ from lib.utils.safe2bin import safecharencode
+-from thirdparty import six
+-from thirdparty.odict import OrderedDict
++import six
++from collections import OrderedDict
+
+ def _oneShotUnionUse(expression, unpack=True, limited=False):
+ retVal = hashDBRetrieve("%s%s" % (conf.hexConvert or False, expression), checkConf=True) # as UNION data is stored raw unconverted
+diff --git a/lib/utils/api.py b/lib/utils/api.py
+index 2a394f3..def4198 100644
+--- a/lib/utils/api.py
++++ b/lib/utils/api.py
+@@ -56,18 +56,18 @@ from lib.core.settings import VERSION_STRING
+ from lib.core.shell import autoCompletion
+ from lib.core.subprocessng import Popen
+ from lib.parse.cmdline import cmdLineParser
+-from thirdparty.bottle.bottle import error as return_error
+-from thirdparty.bottle.bottle import get
+-from thirdparty.bottle.bottle import hook
+-from thirdparty.bottle.bottle import post
+-from thirdparty.bottle.bottle import request
+-from thirdparty.bottle.bottle import response
+-from thirdparty.bottle.bottle import run
+-from thirdparty.bottle.bottle import server_names
+-from thirdparty import six
+-from thirdparty.six.moves import http_client as _http_client
+-from thirdparty.six.moves import input as _input
+-from thirdparty.six.moves import urllib as _urllib
++from bottle import error as return_error
++from bottle import get
++from bottle import hook
++from bottle import post
++from bottle import request
++from bottle import response
++from bottle import run
++from bottle import server_names
++import six
++from six.moves import http_client as _http_client
++from six.moves import input as _input
++from six.moves import urllib as _urllib
+
+ # Global data storage
+ class DataStore(object):
+diff --git a/lib/utils/crawler.py b/lib/utils/crawler.py
+index 2d90707..f829b0e 100644
+--- a/lib/utils/crawler.py
++++ b/lib/utils/crawler.py
+@@ -36,10 +36,10 @@ from lib.core.threads import getCurrentThreadData
+ from lib.core.threads import runThreads
+ from lib.parse.sitemap import parseSitemap
+ from lib.request.connect import Connect as Request
+-from thirdparty import six
+-from thirdparty.beautifulsoup.beautifulsoup import BeautifulSoup
+-from thirdparty.six.moves import http_client as _http_client
+-from thirdparty.six.moves import urllib as _urllib
++import six
++from bs4 import BeautifulSoup
++from six.moves import http_client as _http_client
++from six.moves import urllib as _urllib
+
+ def crawl(target, post=None, cookie=None):
+ if not target:
+diff --git a/lib/utils/har.py b/lib/utils/har.py
+index bcea7b0..30aac9e 100644
+--- a/lib/utils/har.py
++++ b/lib/utils/har.py
+@@ -15,8 +15,8 @@ from lib.core.bigarray import BigArray
+ from lib.core.convert import getBytes
+ from lib.core.convert import getText
+ from lib.core.settings import VERSION
+-from thirdparty.six.moves import BaseHTTPServer as _BaseHTTPServer
+-from thirdparty.six.moves import http_client as _http_client
++from six.moves import BaseHTTPServer as _BaseHTTPServer
++from six.moves import http_client as _http_client
+
+ # Reference: https://dvcs.w3.org/hg/webperf/raw-file/tip/specs/HAR/Overview.html
+ # http://www.softwareishard.com/har/viewer/
+diff --git a/lib/utils/hash.py b/lib/utils/hash.py
+index 4a01333..2e5d8c3 100644
+--- a/lib/utils/hash.py
++++ b/lib/utils/hash.py
+@@ -16,8 +16,8 @@ try:
+ from Crypto.Cipher.DES import MODE_CBC as CBC
+ from Crypto.Cipher.DES import new as des
+ except:
+- from thirdparty.pydes.pyDes import CBC
+- from thirdparty.pydes.pyDes import des
++ from pyDes import CBC
++ from pyDes import des
+
+ _multiprocessing = None
+
+@@ -85,9 +85,9 @@ from lib.core.settings import NULL
+ from lib.core.settings import ROTATING_CHARS
+ from lib.core.settings import UNICODE_ENCODING
+ from lib.core.wordlist import Wordlist
+-from thirdparty import six
+-from thirdparty.colorama.initialise import init as coloramainit
+-from thirdparty.six.moves import queue as _queue
++import six
++from colorama.initialise import init as coloramainit
++from six.moves import queue as _queue
+
+ def mysql_passwd(password, uppercase=True):
+ """
+diff --git a/lib/utils/hashdb.py b/lib/utils/hashdb.py
+index 10cf2dc..cb00b0f 100644
+--- a/lib/utils/hashdb.py
++++ b/lib/utils/hashdb.py
+@@ -26,7 +26,7 @@ from lib.core.settings import HASHDB_FLUSH_THRESHOLD
+ from lib.core.settings import HASHDB_RETRIEVE_RETRIES
+ from lib.core.threads import getCurrentThreadData
+ from lib.core.threads import getCurrentThreadName
+-from thirdparty import six
++import six
+
+ class HashDB(object):
+ def __init__(self, filepath):
+diff --git a/lib/utils/httpd.py b/lib/utils/httpd.py
+index f5820a6..3353d1d 100644
+--- a/lib/utils/httpd.py
++++ b/lib/utils/httpd.py
+@@ -21,11 +21,11 @@ sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), "..", ".
+ from lib.core.enums import HTTP_HEADER
+ from lib.core.settings import UNICODE_ENCODING
+ from lib.core.settings import VERSION_STRING
+-from thirdparty import six
+-from thirdparty.six.moves import BaseHTTPServer as _BaseHTTPServer
+-from thirdparty.six.moves import http_client as _http_client
+-from thirdparty.six.moves import socketserver as _socketserver
+-from thirdparty.six.moves import urllib as _urllib
++import six
++from six.moves import BaseHTTPServer as _BaseHTTPServer
++from six.moves import http_client as _http_client
++from six.moves import socketserver as _socketserver
++from six.moves import urllib as _urllib
+
+ HTTP_ADDRESS = "0.0.0.0"
+ HTTP_PORT = 8951
+diff --git a/lib/utils/pivotdumptable.py b/lib/utils/pivotdumptable.py
+index 008a33c..b1ca9bb 100644
+--- a/lib/utils/pivotdumptable.py
++++ b/lib/utils/pivotdumptable.py
+@@ -34,7 +34,7 @@ from lib.core.settings import SINGLE_QUOTE_MARKER
+ from lib.core.unescaper import unescaper
+ from lib.request import inject
+ from lib.utils.safe2bin import safechardecode
+-from thirdparty.six import unichr as _unichr
++from six import unichr as _unichr
+
+ def pivotDumpTable(table, colList, count=None, blind=True, alias=None):
+ lengths = {}
+diff --git a/lib/utils/purge.py b/lib/utils/purge.py
+index e89895e..d0fdbeb 100644
+--- a/lib/utils/purge.py
++++ b/lib/utils/purge.py
+@@ -17,7 +17,7 @@ from lib.core.common import openFile
+ from lib.core.compat import xrange
+ from lib.core.convert import getUnicode
+ from lib.core.data import logger
+-from thirdparty.six import unichr as _unichr
++from six import unichr as _unichr
+
+ def purge(directory):
+ """
+diff --git a/lib/utils/search.py b/lib/utils/search.py
+index 5ae11a1..67ea87e 100644
+--- a/lib/utils/search.py
++++ b/lib/utils/search.py
+@@ -33,8 +33,8 @@ from lib.core.settings import GOOGLE_REGEX
+ from lib.core.settings import HTTP_ACCEPT_ENCODING_HEADER_VALUE
+ from lib.core.settings import UNICODE_ENCODING
+ from lib.request.basic import decodePage
+-from thirdparty.six.moves import http_client as _http_client
+-from thirdparty.six.moves import urllib as _urllib
++from six.moves import http_client as _http_client
++from six.moves import urllib as _urllib
+ from thirdparty.socks import socks
+
+ def _search(dork):
+diff --git a/lib/utils/sqlalchemy.py b/lib/utils/sqlalchemy.py
+index f1bc0d9..d0b0d12 100644
+--- a/lib/utils/sqlalchemy.py
++++ b/lib/utils/sqlalchemy.py
+@@ -38,7 +38,7 @@ from lib.core.exception import SqlmapConnectionException
+ from lib.core.exception import SqlmapFilePathException
+ from lib.core.exception import SqlmapMissingDependence
+ from plugins.generic.connector import Connector as GenericConnector
+-from thirdparty import six
+-from thirdparty.six.moves import urllib as _urllib
++import six
++from six.moves import urllib as _urllib
+
+ def getSafeExString(ex, encoding=None): # Cross-referenced function
+ raise NotImplementedError
+diff --git a/plugins/dbms/maxdb/enumeration.py b/plugins/dbms/maxdb/enumeration.py
+index a83b9c2..40d4250 100644
+--- a/plugins/dbms/maxdb/enumeration.py
++++ b/plugins/dbms/maxdb/enumeration.py
+@@ -26,8 +26,8 @@ from lib.core.settings import CURRENT_DB
+ from lib.utils.brute import columnExists
+ from lib.utils.pivotdumptable import pivotDumpTable
+ from plugins.generic.enumeration import Enumeration as GenericEnumeration
+-from thirdparty import six
+-from thirdparty.six.moves import zip as _zip
++import six
++from six.moves import zip as _zip
+
+ class Enumeration(GenericEnumeration):
+ def __init__(self):
+diff --git a/plugins/dbms/mssqlserver/enumeration.py b/plugins/dbms/mssqlserver/enumeration.py
+index e5407ce..4c11c83 100644
+--- a/plugins/dbms/mssqlserver/enumeration.py
++++ b/plugins/dbms/mssqlserver/enumeration.py
+@@ -32,7 +32,7 @@ from lib.core.exception import SqlmapNoneDataException
+ from lib.core.settings import CURRENT_DB
+ from lib.request import inject
+ from plugins.generic.enumeration import Enumeration as GenericEnumeration
+-from thirdparty import six
++import six
+
+ class Enumeration(GenericEnumeration):
+ def getPrivileges(self, *args, **kwargs):
+diff --git a/plugins/dbms/sybase/enumeration.py b/plugins/dbms/sybase/enumeration.py
+index 9f254c9..dde98bc 100644
+--- a/plugins/dbms/sybase/enumeration.py
++++ b/plugins/dbms/sybase/enumeration.py
+@@ -29,8 +29,8 @@ from lib.core.settings import CURRENT_DB
+ from lib.utils.brute import columnExists
+ from lib.utils.pivotdumptable import pivotDumpTable
+ from plugins.generic.enumeration import Enumeration as GenericEnumeration
+-from thirdparty import six
+-from thirdparty.six.moves import zip as _zip
++import six
++from six.moves import zip as _zip
+
+ class Enumeration(GenericEnumeration):
+ def getUsers(self):
+diff --git a/plugins/generic/custom.py b/plugins/generic/custom.py
+index fab6261..2bd2916 100644
+--- a/plugins/generic/custom.py
++++ b/plugins/generic/custom.py
+@@ -26,7 +26,7 @@ from lib.core.settings import NULL
+ from lib.core.settings import PARAMETER_SPLITTING_REGEX
+ from lib.core.shell import autoCompletion
+ from lib.request import inject
+-from thirdparty.six.moves import input as _input
++from six.moves import input as _input
+
+ class Custom(object):
+ """
+diff --git a/plugins/generic/databases.py b/plugins/generic/databases.py
+index b924e99..dd01b46 100644
+--- a/plugins/generic/databases.py
++++ b/plugins/generic/databases.py
+@@ -55,7 +55,7 @@ from lib.core.settings import VERTICA_DEFAULT_SCHEMA
+ from lib.request import inject
+ from lib.utils.brute import columnExists
+ from lib.utils.brute import tableExists
+-from thirdparty import six
++import six
+
+ class Databases(object):
+ """
+diff --git a/plugins/generic/entries.py b/plugins/generic/entries.py
+index 84b1c0e..0fb7b57 100644
+--- a/plugins/generic/entries.py
++++ b/plugins/generic/entries.py
+@@ -49,8 +49,8 @@ from lib.core.settings import UPPER_CASE_DBMSES
+ from lib.request import inject
+ from lib.utils.hash import attackDumpedTable
+ from lib.utils.pivotdumptable import pivotDumpTable
+-from thirdparty import six
+-from thirdparty.six.moves import zip as _zip
++import six
++from six.moves import zip as _zip
+
+ class Entries(object):
+ """
+diff --git a/plugins/generic/search.py b/plugins/generic/search.py
+index bb670b7..d1b46ac 100644
+--- a/plugins/generic/search.py
++++ b/plugins/generic/search.py
+@@ -38,7 +38,7 @@ from lib.core.settings import UPPER_CASE_DBMSES
+ from lib.request import inject
+ from lib.utils.brute import columnExists
+ from lib.utils.brute import tableExists
+-from thirdparty import six
++import six
+
+ class Search(object):
+ """
+diff --git a/plugins/generic/users.py b/plugins/generic/users.py
+index ddef85a..0a30c1b 100644
+--- a/plugins/generic/users.py
++++ b/plugins/generic/users.py
+@@ -47,7 +47,7 @@ from lib.request import inject
+ from lib.utils.hash import attackCachedUsersPasswords
+ from lib.utils.hash import storeHashesToFile
+ from lib.utils.pivotdumptable import pivotDumpTable
+-from thirdparty.six.moves import zip as _zip
++from six.moves import zip as _zip
+
+ class Users(object):
+ """
+diff --git a/thirdparty/multipart/multipartpost.py b/thirdparty/multipart/multipartpost.py
+index 5ea37cc..e47a857 100644
+--- a/thirdparty/multipart/multipartpost.py
++++ b/thirdparty/multipart/multipartpost.py
+@@ -30,7 +30,7 @@ import sys
+ from lib.core.compat import choose_boundary
+ from lib.core.convert import getBytes
+ from lib.core.exception import SqlmapDataException
+-from thirdparty.six.moves import urllib as _urllib
++from six.moves import urllib as _urllib
+
+ # Controls how sequences are uncoded. If true, elements may be given
+ # multiple values by assigning a sequence.
diff --git a/testing/sqm-scripts/APKBUILD b/testing/sqm-scripts/APKBUILD
index 0691eb38d3c..01be88c8255 100644
--- a/testing/sqm-scripts/APKBUILD
+++ b/testing/sqm-scripts/APKBUILD
@@ -1,13 +1,14 @@
# Contributor: Nicolas Lorin <androw95220@gmail.com>
# Maintainer: Nicolas Lorin <androw95220@gmail.com>
pkgname=sqm-scripts
-pkgver=1.5.1
+pkgver=1.6.0
pkgrel=0
pkgdesc="SQM scripts traffic shaper"
url="https://github.com/tohojo/sqm-scripts"
arch="noarch"
license="GPL-2.0-only"
-depends="iproute2 iptables ip6tables"
+options="!check"
+depends="iproute2 iptables"
makedepends="coreutils"
source="$pkgname-$pkgver.tar.gz::https://github.com/tohojo/sqm-scripts/archive/v$pkgver.tar.gz"
@@ -20,5 +21,5 @@ package() {
}
sha512sums="
-b071b4be079d2ad51c9fdb98b4f582ec3008321866e8b1cf482545c72e24198e0324ff25872bc1591226a215a9428b82a463e6269c6053ef4f273e5eff9fab59 sqm-scripts-1.5.1.tar.gz
+6e384de887c330277389cbe05513f699c3f56ed5aaea3b765c109d01f34c9f73e05a7f7f6c7d34082a66d148e0500273451bd9808afbadc6c5db6a0292fc36ba sqm-scripts-1.6.0.tar.gz
"
diff --git a/testing/squashfs-tools-ng/0001-Fix-struct-offset-testing-in-ABI-test-case.patch b/testing/squashfs-tools-ng/0001-Fix-struct-offset-testing-in-ABI-test-case.patch
deleted file mode 100644
index a55d51f33bb..00000000000
--- a/testing/squashfs-tools-ng/0001-Fix-struct-offset-testing-in-ABI-test-case.patch
+++ /dev/null
@@ -1,127 +0,0 @@
-From 349a98c2153f6d993c926007cb9eb7cc386c1be0 Mon Sep 17 00:00:00 2001
-From: David Oberhollenzer <david.oberhollenzer@sigma-star.at>
-Date: Sun, 12 Sep 2021 23:52:40 +0200
-Subject: [PATCH 1/2] Fix struct offset testing in ABI test case
-
-The intention of the (severely incomplete) ABI test case is to detect
-changes to the ABI of libsquashfs. Currently it tries to blurt out if
-the layout of some structure is changed unintentionally.
-
-Unfortunately, the test uses some unportable assumptions. Among other
-things, it was assumed that a 64 bit field will always require 64 bit
-alignment. This is apparently no the case on 32 bit x86.
-
-This patch makes the check work on 32 bit and 64 bit x86, by adding
-an additional runtime check that relies on the __alignof__ extension
-offered by gcc and clang (the only 2 compilers that are really
-supported at the moment).
-
-Signed-off-by: David Oberhollenzer <david.oberhollenzer@sigma-star.at>
-[Retrieved from https://github.com/AgentD/squashfs-tools-ng/issues/93]
-Signed-off-by: Ryan Barnett <ryanbarnett3@gmail.com>
----
- tests/libsqfs/abi.c | 71 +++++++++++++++++++++++++++++++++------------
- 1 file changed, 52 insertions(+), 19 deletions(-)
-
-diff --git a/tests/libsqfs/abi.c b/tests/libsqfs/abi.c
-index 04bbc30..d409f67 100644
---- a/tests/libsqfs/abi.c
-+++ b/tests/libsqfs/abi.c
-@@ -35,8 +35,14 @@ static void test_compressor_opt_struct(void)
- sizeof(sqfs_u32));
- TEST_EQUAL_UI(offsetof(sqfs_compressor_config_t, level),
- (2 * sizeof(sqfs_u32)));
-- TEST_EQUAL_UI(offsetof(sqfs_compressor_config_t, opt),
-- (4 * sizeof(sqfs_u32)));
-+
-+ if (__alignof__(sqfs_compressor_config_t) == __alignof__(sqfs_u32)) {
-+ TEST_EQUAL_UI(offsetof(sqfs_compressor_config_t, opt),
-+ (3 * sizeof(sqfs_u32)));
-+ } else if (__alignof__(sqfs_compressor_config_t) == __alignof__(sqfs_u64)) {
-+ TEST_EQUAL_UI(offsetof(sqfs_compressor_config_t, opt),
-+ (4 * sizeof(sqfs_u32)));
-+ }
- }
-
- static const char *names[] = {
-@@ -65,33 +71,60 @@ static void test_compressor_names(void)
- static void test_blockproc_stats(void)
- {
- sqfs_block_processor_stats_t stats;
-+ size_t off;
-+
-+ TEST_EQUAL_UI(sizeof(stats.size), sizeof(size_t));
-+ TEST_EQUAL_UI(sizeof(stats.input_bytes_read), sizeof(sqfs_u64));
-+ TEST_EQUAL_UI(sizeof(stats.output_bytes_generated), sizeof(sqfs_u64));
-+ TEST_EQUAL_UI(sizeof(stats.data_block_count), sizeof(sqfs_u64));
-+ TEST_EQUAL_UI(sizeof(stats.frag_block_count), sizeof(sqfs_u64));
-+ TEST_EQUAL_UI(sizeof(stats.sparse_block_count), sizeof(sqfs_u64));
-+ TEST_EQUAL_UI(sizeof(stats.total_frag_count), sizeof(sqfs_u64));
-+ TEST_EQUAL_UI(sizeof(stats.actual_frag_count), sizeof(sqfs_u64));
-
-- TEST_ASSERT(sizeof(stats) >= (8 * sizeof(sqfs_u64)));
-+ if (__alignof__(stats) == __alignof__(sqfs_u32)) {
-+ TEST_ASSERT(sizeof(stats) >=
-+ (sizeof(sqfs_u32) + 7 * sizeof(sqfs_u64)));
-+ } else if (__alignof__(stats) == __alignof__(sqfs_u64)) {
-+ TEST_ASSERT(sizeof(stats) >= (8 * sizeof(sqfs_u64)));
-+ }
-
- TEST_EQUAL_UI(offsetof(sqfs_block_processor_stats_t, size), 0);
-+
-+ if (sizeof(size_t) < sizeof(sqfs_u64) &&
-+ (__alignof__(sqfs_block_processor_stats_t) ==
-+ __alignof__(sqfs_u64))) {
-+ off = sizeof(sqfs_u64);
-+ } else {
-+ off = sizeof(stats.size);
-+ }
-+
- TEST_EQUAL_UI(offsetof(sqfs_block_processor_stats_t,
-- input_bytes_read), sizeof(sqfs_u64));
-- TEST_EQUAL_UI(offsetof(sqfs_block_processor_stats_t,
-- output_bytes_generated), 2 * sizeof(sqfs_u64));
-+ input_bytes_read), off);
-+ off += sizeof(sqfs_u64);
-+
- TEST_EQUAL_UI(offsetof(sqfs_block_processor_stats_t,
-- data_block_count), 3 * sizeof(sqfs_u64));
-+ output_bytes_generated), off);
-+ off += sizeof(sqfs_u64);
-+
- TEST_EQUAL_UI(offsetof(sqfs_block_processor_stats_t,
-- frag_block_count), 4 * sizeof(sqfs_u64));
-+ data_block_count), off);
-+ off += sizeof(sqfs_u64);
-+
- TEST_EQUAL_UI(offsetof(sqfs_block_processor_stats_t,
-- sparse_block_count), 5 * sizeof(sqfs_u64));
-+ frag_block_count), off);
-+ off += sizeof(sqfs_u64);
-+
- TEST_EQUAL_UI(offsetof(sqfs_block_processor_stats_t,
-- total_frag_count), 6 * sizeof(sqfs_u64));
-+ sparse_block_count), off);
-+ off += sizeof(sqfs_u64);
-+
- TEST_EQUAL_UI(offsetof(sqfs_block_processor_stats_t,
-- actual_frag_count), 7 * sizeof(sqfs_u64));
-+ total_frag_count), off);
-+ off += sizeof(sqfs_u64);
-
-- TEST_EQUAL_UI(sizeof(stats.size), sizeof(size_t));
-- TEST_EQUAL_UI(sizeof(stats.input_bytes_read), sizeof(sqfs_u64));
-- TEST_EQUAL_UI(sizeof(stats.output_bytes_generated), sizeof(sqfs_u64));
-- TEST_EQUAL_UI(sizeof(stats.data_block_count), sizeof(sqfs_u64));
-- TEST_EQUAL_UI(sizeof(stats.frag_block_count), sizeof(sqfs_u64));
-- TEST_EQUAL_UI(sizeof(stats.sparse_block_count), sizeof(sqfs_u64));
-- TEST_EQUAL_UI(sizeof(stats.total_frag_count), sizeof(sqfs_u64));
-- TEST_EQUAL_UI(sizeof(stats.actual_frag_count), sizeof(sqfs_u64));
-+ TEST_EQUAL_UI(offsetof(sqfs_block_processor_stats_t,
-+ actual_frag_count), off);
- }
-
- static void test_blockproc_desc(void)
---
-2.31.1
-
diff --git a/testing/squashfs-tools-ng/APKBUILD b/testing/squashfs-tools-ng/APKBUILD
index c323c6f0590..55972f693d5 100644
--- a/testing/squashfs-tools-ng/APKBUILD
+++ b/testing/squashfs-tools-ng/APKBUILD
@@ -1,17 +1,15 @@
# Contributor: Ryan Barnett <ryanbarnett3@gmail.com>
# Maintainer: Ryan Barnett <ryanbarnett3@gmail.com>
pkgname=squashfs-tools-ng
-pkgver=1.1.3
+pkgver=1.3.0
pkgrel=0
-pkgdesc="A new set of tools and libraries for working with SquashFS images"
+pkgdesc="New set of tools and libraries for working with SquashFS images"
url="https://infraroot.at/projects/squashfs-tools-ng/index.html"
arch="all"
license="GPL-3.0-or-later"
makedepends="automake libselinux-dev lz4-dev lzo-dev xz-dev zlib-dev zstd-dev"
subpackages="$pkgname-dev $pkgname-libs $pkgname-doc"
-source="https://infraroot.at/pub/squashfs/squashfs-tools-ng-$pkgver.tar.gz
- 0001-Fix-struct-offset-testing-in-ABI-test-case.patch
- "
+source="https://infraroot.at/pub/squashfs/squashfs-tools-ng-$pkgver.tar.gz"
build() {
./configure \
@@ -32,5 +30,6 @@ package() {
make DESTDIR="$pkgdir" install
}
-sha512sums="7bd2c1f1f5b0443e34594b5899591bef03b50f10755d12062e38e09a831f791859460184e53e288d33fc7690d6d32b94e162afe2e0234b62e2dc2b977972cf5e squashfs-tools-ng-1.1.3.tar.gz
-9358ce93bb7ea6e8d9376548c4e32f271b7cc88adad845cd91c707cef30fa4442607621d4e0ac9b2ab8ab791ca90fa11516b99f47287c1af1cb53a33fc6dd887 0001-Fix-struct-offset-testing-in-ABI-test-case.patch"
+sha512sums="
+a55a954e24149248ca3ca1dafe9fd132401a6abf869e53e1b74719af813de00bee393dc1da7f392c1e37331a3354e997984839e30603f5aef999319870b75013 squashfs-tools-ng-1.3.0.tar.gz
+"
diff --git a/testing/squeak-vm/APKBUILD b/testing/squeak-vm/APKBUILD
index 9c9cc55aa2e..907674fd8ff 100644
--- a/testing/squeak-vm/APKBUILD
+++ b/testing/squeak-vm/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Díaz Urbaneja Diego <sodomon2@gmail.com>
pkgname=squeak-vm
pkgver=4.10.2.2614
-pkgrel=0
+pkgrel=1
pkgdesc="Full-featured implementation of the Smalltalk programming language and environment"
url="http://squeakvm.org"
arch="x86_64 s390x armv7" #disabled for the other architectures due to compiling problems
diff --git a/testing/srain/APKBUILD b/testing/srain/APKBUILD
index 6857a39a269..214e2658e69 100644
--- a/testing/srain/APKBUILD
+++ b/testing/srain/APKBUILD
@@ -1,29 +1,36 @@
# Contributor: Francesco Colista <fcolista@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=srain
-pkgver=1.4.0
+pkgver=1.6.0
pkgrel=0
-pkgdesc="Modern IRC client written in GTK."
-url="https://srain.im"
+pkgdesc="Modern IRC client written in GTK"
+url="https://srain.silverrainz.me/"
arch="all"
-license="GPL-2.0"
-makedepends="cmake gettext glib-dev gtk+3.0-dev libconfig-dev libsecret-dev libsoup-dev
- meson ninja openssl-dev py3-sphinx"
-subpackages="$pkgname-doc $pkgname-lang"
+license="GPL-3.0-or-later WITH OpenSSL-Exception"
+makedepends="
+ cmake
+ gettext
+ glib-dev
+ gtk+3.0-dev
+ libayatana-appindicator-dev
+ libconfig-dev
+ libsecret-dev
+ libsoup-dev
+ meson
+ ninja
+ openssl-dev>3
+ py3-sphinx
+ "
+subpackages="$pkgname-lang"
source="$pkgname-$pkgver.tar.gz::https://github.com/SrainApp/srain/archive/$pkgver.tar.gz"
build() {
- meson setup \
- --prefix=/usr \
- --datadir=/usr/share \
- --sysconfdir=/etc \
- --buildtype=release \
- builddir
+ abuild-meson . builddir
ninja -C builddir
}
check() {
- meson check
+ meson test --no-rebuild --print-errorlogs -C builddir
}
package() {
@@ -31,5 +38,5 @@ package() {
}
sha512sums="
-1708d1d1ec97c9f35a8702526a95bb60bf0ea50b742a76081508ef42a512e8c113ef1949c3b9f3db4585d8fb11cdb197f65fc7bc10480a533c69982c21185e55 srain-1.4.0.tar.gz
+59d962ddbf71724d5f68decc1e3b873cea6c6bd2ca23b21a1a6fe937d53f2871398fdcda906840755efc6b454d2d5116ca620c047f1634fb68b45ab2c0443a57 srain-1.6.0.tar.gz
"
diff --git a/testing/sratom/APKBUILD b/testing/sratom/APKBUILD
deleted file mode 100644
index d5ae53237e5..00000000000
--- a/testing/sratom/APKBUILD
+++ /dev/null
@@ -1,24 +0,0 @@
-# Contributor: David Demelier <markand@malikania.fr>
-# Maintainer: David Demelier <markand@malikania.fr>
-pkgname=sratom
-pkgver=0.6.8
-pkgrel=0
-pkgdesc="library for serialising LV2 atoms to and from RDF"
-url="http://drobilla.net/software/sratom"
-arch="all"
-license="ISC"
-makedepends="python3 serd-dev sord-dev lv2-dev"
-subpackages="$pkgname-dev"
-source="http://download.drobilla.net/sratom-$pkgver.tar.bz2"
-options="!check" # No tests
-
-build() {
- python3 waf configure --prefix=/usr
- python3 waf build
-}
-
-package() {
- python3 waf install --destdir="$pkgdir"
-}
-
-sha512sums="49ec4b230a72005ab7a7a3de0bfa630a27a16f9f811ca8e7f6da7fcf6b34526577217075d428a993f95b813dd2a82a9b6892eeb2e36b66b122ada778fbb3fb95 sratom-0.6.8.tar.bz2"
diff --git a/testing/srb2/APKBUILD b/testing/srb2/APKBUILD
new file mode 100644
index 00000000000..6b5872e6929
--- /dev/null
+++ b/testing/srb2/APKBUILD
@@ -0,0 +1,45 @@
+# Contributor: Díaz Urbaneja Diego <sodomon2@gmail.com>
+# Maintainer: Díaz Urbaneja Diego <sodomon2@gmail.com>
+pkgname=srb2
+pkgver=2.2.13
+pkgrel=0
+pkgdesc="A 3D Sonic fan game based off of Doom Legacy"
+url="https://srb2.org"
+arch="all !armhf !armv7 !s390x" # arm-hf/v7 and s390x problem with gcc
+license="GPL-2.0-only"
+depends="srb2-data libgme libopenmpt sdl2_mixer libpng curl"
+makedepends="libgme-dev libopenmpt-dev sdl2_mixer-dev libpng-dev curl-dev envsubst"
+options="!check" # no test
+source="$pkgname-$pkgver.tar.gz::https://github.com/STJr/SRB2/archive/refs/tags/SRB2_release_$pkgver.tar.gz
+ $pkgname-$pkgver-data.zip::https://github.com/STJr/SRB2/releases/download/SRB2_release_2.2.13/SRB2-v2213-Full.zip
+ fix-backtrace.patch
+ "
+subpackages="$pkgname-data::noarch"
+builddir="$srcdir/SRB2-SRB2_release_$pkgver"
+
+build() {
+ make -C src/ USE_OPENMP=1 EXENAME=srb2
+ PROGRAM_NAME="Sonic Robo Blast 2" PROGRAM_DESCRIPTION="$pkgdesc" \
+ PACKAGE_INSTALL_PATH="/usr/bin" PROGRAM_FILENAME="$pkgname" \
+ envsubst < debian-template/srb2.desktop > srb2.desktop
+}
+
+package() {
+ install -Dm755 bin/$pkgname $pkgdir/usr/bin/$pkgname
+ install -Dm644 srb2.png $pkgdir/usr/share/pixmaps/srb2.png
+ install -Dm644 srb2.desktop $pkgdir/usr/share/applications/srb2.desktop
+}
+
+data() {
+ pkgdesc="$pkgdesc (data files)"
+
+ cd "$srcdir/"
+ install -d "$subpkgdir"/usr/share/games/SRB2
+ install -m644 models.dat player.dta music.dta patch.pk3 srb2.pk3 zones.pk3 "$subpkgdir"/usr/share/games/SRB2
+}
+
+sha512sums="
+b68dec859d2d08ec0ff8fc65a07ba5cdc80091a26bf06fadb3e7ae5e18489b6e4a9575d0d3b7fd626e6ccf0589a67e93a0df616df18df70524e5e3709979cf8a srb2-2.2.13.tar.gz
+0ede22cc385057f18715da445548c94473271d7ece49d3c540faab470232574bcaf9a2de32e2445c35bc3c98bcb0f06bcb891e4d953e4c1b003cd4a7e0599a5e srb2-2.2.13-data.zip
+2489a3c1e7abb2f8b66db00b13b809041c98757642844c1990d9d98c820efc8ca35a3498a5d0fad87086a31227118e3b883f49b948785f863ffd9e78e1ecb022 fix-backtrace.patch
+"
diff --git a/testing/srb2/fix-backtrace.patch b/testing/srb2/fix-backtrace.patch
new file mode 100644
index 00000000000..769a8ad05ec
--- /dev/null
+++ b/testing/srb2/fix-backtrace.patch
@@ -0,0 +1,14 @@
+--- a/src/sdl/i_system.c
++++ b/src/sdl/i_system.c
+@@ -137,11 +137,6 @@
+ #include <errno.h>
+ #endif
+
+-#if defined (__unix__) || defined(__APPLE__) || defined (UNIXCOMMON)
+-#include <execinfo.h>
+-#include <time.h>
+-#define UNIXBACKTRACE
+-#endif
+
+ // Locations for searching the srb2.pk3
+ #if defined (__unix__) || defined(__APPLE__) || defined (UNIXCOMMON)
diff --git a/testing/sregex/APKBUILD b/testing/sregex/APKBUILD
index afcd044f0fa..54fd124646b 100644
--- a/testing/sregex/APKBUILD
+++ b/testing/sregex/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=sregex
pkgver=0.0.1
-pkgrel=0
+pkgrel=1
pkgdesc="A NFA/DFA-based regex engine matching on large data streams"
url="https://github.com/openresty/sregex"
# armv7 - tests failed
diff --git a/testing/ssdfs-tools/APKBUILD b/testing/ssdfs-tools/APKBUILD
new file mode 100644
index 00000000000..1362c83e04e
--- /dev/null
+++ b/testing/ssdfs-tools/APKBUILD
@@ -0,0 +1,41 @@
+# Contributor: Milan P. Stanić <mps@arvanta.net>
+# Maintainer: Milan P. Stanić <mps@arvanta.net>
+pkgname=ssdfs-tools
+pkgver=4.09
+pkgrel=0
+pkgdesc="SSDFS flash-friendly file system tools"
+url="https://github.com/dubeyko/ssdfs-tools"
+arch="all"
+license="BSD-3-Clause-Clear"
+makedepends="automake autoconf libtool linux-headers libblkid util-linux-dev zlib-dev"
+subpackages="$pkgname-dev"
+source="$pkgname-$pkgver.tar.gz::https://github.com/dubeyko/ssdfs-tools/archive/refs/tags/v$pkgver.tar.gz"
+#builddir="$srcdir/"
+
+prepare() {
+ default_prepare
+ ./autogen.sh
+}
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+8162662a467113bd1058a28457b569fca606ab4f2dc7fb1dd46ca81550900356a145717df45f59cb9f4ff1f0fd94d0844f0aa9fadde8d98eb9ad232ed7541ac7 ssdfs-tools-4.09.tar.gz
+"
diff --git a/testing/ssh-cert-authority/APKBUILD b/testing/ssh-cert-authority/APKBUILD
index 768f035d6dd..da07472cac2 100644
--- a/testing/ssh-cert-authority/APKBUILD
+++ b/testing/ssh-cert-authority/APKBUILD
@@ -3,15 +3,19 @@
# Maintainer:
pkgname=ssh-cert-authority
pkgver=2.0.0
-pkgrel=3
+pkgrel=18
pkgdesc="An implementation of an SSH certificate authority"
url="https://github.com/cloudtools/ssh-cert-authority"
arch="all"
license="BSD-2-Clause"
makedepends="go"
-options="net"
+options="net chmod-clean"
source="$pkgname-$pkgver.tar.gz::https://github.com/cloudtools/ssh-cert-authority/archive/$pkgver.tar.gz"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
build() {
local pkg=github.com/cloudtools/ssh-cert-authority
@@ -34,11 +38,4 @@ package() {
install -Dm755 bin/$pkgname "$pkgdir"/usr/bin/$pkgname
}
-cleanup_srcdir() {
- if [ -d "$srcdir" ]; then
- find "$srcdir" -print0 | xargs -0 chmod +w
- fi
- default_cleanup_srcdir
-}
-
sha512sums="495b4ba72b848eeeb86869ffe312f37d4f49e6e281e840f5680e8f55cc2d29b33c771bc46ee2755d25d198e58e5dea0ce28a649321f4f979f59a1c22ed4d6f1c ssh-cert-authority-2.0.0.tar.gz"
diff --git a/testing/ssh-honeypot/APKBUILD b/testing/ssh-honeypot/APKBUILD
index e99e7259040..c3ba9ca5444 100644
--- a/testing/ssh-honeypot/APKBUILD
+++ b/testing/ssh-honeypot/APKBUILD
@@ -2,13 +2,13 @@
# Maintainer: Michael Pirogov <vbnet.ru@gmail.com>
pkgname=ssh-honeypot
pkgver=0.1.1
-pkgrel=0
+pkgrel=1
pkgdesc="Fake sshd that logs ip addresses, usernames, and passwords."
url="https://github.com/droberson/ssh-honeypot"
arch="all"
license="MIT"
depends="openssh-keygen"
-makedepends="json-c0.12-dev libssh-dev"
+makedepends="json-c-dev libssh-dev"
options="!check" # no testsuite and daemon returns 1 even on help command
subpackages="$pkgname-openrc"
source="https://github.com/droberson/ssh-honeypot/archive/refs/tags/ssh-honeypot-$pkgver.tar.gz
@@ -17,7 +17,7 @@ source="https://github.com/droberson/ssh-honeypot/archive/refs/tags/ssh-honeypot
builddir="$srcdir/$pkgname-$pkgname-$pkgver"
build() {
- make CC="gcc" CFLAGS="$CFLAGS -fPIC"
+ make CC="${CC:-cc}" CFLAGS="$CFLAGS $LDFLAGS -fPIC"
}
package() {
diff --git a/testing/ssh-tools/APKBUILD b/testing/ssh-tools/APKBUILD
index b555c37b926..15a1f1add3e 100644
--- a/testing/ssh-tools/APKBUILD
+++ b/testing/ssh-tools/APKBUILD
@@ -1,19 +1,21 @@
# Contributor: Sven Wick <sven.wick@gmx.de>
# Maintainer: Sven Wick <sven.wick@gmx.de>
-pkgname="ssh-tools"
-pkgver="1.7"
+pkgname=ssh-tools
+pkgver=1.8
pkgrel=0
pkgdesc="collection of various tools using ssh"
arch="noarch"
-url="https://github.com/vaporup/ssh-tools"
+url="https://codeberg.org/vaporup/ssh-tools"
license="GPL-3.0-or-later"
-depends="bash colordiff cmd:ssh cmd:ssh-keygen cmd:ssh-keyscan cmd:column"
-source="${pkgname}-${pkgver}.tar.gz::https://github.com/vaporup/${pkgname}/archive/v${pkgver}.tar.gz"
+depends="bash perl colordiff cmd:ssh cmd:ssh-keygen cmd:ssh-keyscan cmd:column"
+source="ssh-tools-$pkgver.tar.gz::https://codeberg.org/vaporup/ssh-tools/archive/v$pkgver.tar.gz"
options="!check" # does not have a testsuite
package() {
- install -Dt "${pkgdir}/usr/bin" ssh-*
+ install -Dt "$pkgdir/usr/bin" $srcdir/ssh-tools/ssh-*
}
-sha512sums="dd67f3b204c4076e72f6bfec1844f2ee54b5744320687487716549fe68f897cfb54770e860fbb8e85bdf415aed69e523c01fc88a0fe14cd0d9fce9001cadc60b ssh-tools-1.7.tar.gz"
+sha512sums="
+1bd2c344853401249e64460d89ee67aa55697ec42f98ad22c7f47cb18dca02f17157a3b69bc4d329813488d2ebb01a6af2d29849e96c9b0cfc02866f62d10c01 ssh-tools-1.8.tar.gz
+"
diff --git a/testing/sshsrv/APKBUILD b/testing/sshsrv/APKBUILD
new file mode 100644
index 00000000000..3b9b5719925
--- /dev/null
+++ b/testing/sshsrv/APKBUILD
@@ -0,0 +1,34 @@
+# Contributor: Francesco Colista <fcolista@alpinelinux.org>
+# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
+pkgname=sshsrv
+pkgver=1.0
+pkgrel=4
+pkgdesc="Connect to SSH servers using DNS SRV records"
+url="https://github.com/Crosse/sshsrv"
+arch="all"
+license="ISC"
+makedepends="go"
+options="chmod-clean net"
+source="$pkgname-$pkgver.tar.gz::https://github.com/Crosse/sshsrv/archive/refs/tags/v$pkgver.tar.gz"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+export GOFLAGS="$GOFLAGS -modcacherw"
+
+build() {
+ go build
+}
+
+check() {
+ # useless since no test are available
+ go test
+}
+
+package() {
+ install -Dm755 sshsrv "$pkgdir"/usr/bin/sshsrv
+}
+
+sha512sums="
+225dce6d454eced8b2572b2f79ae6c5d0fb8a16f5f0129241805e808ccfffebe5e36d31d44121c14f3632cc2aec1f4f31c1de99cb258586876eb9a30265e5e04 sshsrv-1.0.tar.gz
+"
diff --git a/testing/sshuttle/APKBUILD b/testing/sshuttle/APKBUILD
index 2a3e0faf9bd..42ef1cc66a7 100644
--- a/testing/sshuttle/APKBUILD
+++ b/testing/sshuttle/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=sshuttle
-pkgver=1.0.5
-pkgrel=4
+pkgver=1.1.1
+pkgrel=2
pkgdesc="Transparent proxy server using ssh"
url="https://github.com/sshuttle/sshuttle"
arch="noarch"
@@ -10,9 +10,8 @@ depends="python3 py3-psutil"
makedepends="py3-setuptools"
checkdepends="py3-pytest py3-pytest-cov py3-mock py3-flake8"
options="!check" # TODO: fix testsuite
-source="https://github.com/sshuttle/sshuttle/archive/v$pkgver/sshuttle-$pkgver.tar.gz
- no-scm.patch
- "
+subpackages="$pkgname-pyc"
+source="https://github.com/sshuttle/sshuttle/archive/v$pkgver/sshuttle-$pkgver.tar.gz"
build() {
echo "version = '$pkgver'" > sshuttle/version.py
@@ -24,8 +23,9 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="d58cff77625eca0ffba44bd19553bb2043df99dac4e204b3269ffe1be6dae38009eb6ac42e575322b903945b406d6008f70360e0597bed3913c0ebf0562e9a68 sshuttle-1.0.5.tar.gz
-bdfcb1e88b4f2ce3906ed511697083ab789d5a8c1034bce25448cdd3195fb5e26ab403e7f3fdb97d4293cad4875dc08ed5071dafab145c70f654ab9ac40fb160 no-scm.patch"
+sha512sums="
+4f670bee34653e47cf7a0c8550b2ac734230ccf0d4fb6191ae3a0c6404847c788c3cdf033bc1571f49472729029077aa6d6970f4bce78fa4980f1f29ccbd2f7a sshuttle-1.1.1.tar.gz
+"
diff --git a/testing/sshuttle/no-scm.patch b/testing/sshuttle/no-scm.patch
deleted file mode 100644
index 33a317e40d1..00000000000
--- a/testing/sshuttle/no-scm.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-diff --git a/setup.py b/setup.py
-index d5f3c7e..b90473d 100755
---- a/setup.py
-+++ b/setup.py
-@@ -28,12 +28,7 @@ def version_scheme(version):
-
- setup(
- name="sshuttle",
-- use_scm_version={
-- 'write_to': "sshuttle/version.py",
-- 'version_scheme': version_scheme,
-- },
-- setup_requires=['setuptools_scm'],
-- # version=version,
-+ #version="",
- url='https://github.com/sshuttle/sshuttle',
- author='Brian May',
- author_email='brian@linuxpenguins.xyz',
diff --git a/testing/ssldump/APKBUILD b/testing/ssldump/APKBUILD
deleted file mode 100644
index abfbadf4bf3..00000000000
--- a/testing/ssldump/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer:
-pkgname=ssldump
-pkgver=1.4
-pkgrel=0
-pkgdesc="SSLv3/TLS network protocol analyzer"
-url="https://github.com/adulau/ssldump"
-arch="all"
-license="BSD-4-Clause"
-subpackages="$pkgname-doc"
-options="!check" # no tests provided
-makedepends="autoconf automake libnet-dev json-c-dev fts-dev libpcap-dev openssl-dev"
-source="https://github.com/adulau/ssldump/archive/v$pkgver/ssldump-$pkgver.tar.gz
- "
-
-prepare() {
- default_prepare
- ./autogen.sh
-}
-
-build() {
- ./configure \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --datarootdir=/usr/share \
- --docdir=/usr/share/doc \
- --localstatedir=/var
- make
-}
-
-package() {
- make install sbindir="$pkgdir/usr/sbin" mandir="$pkgdir/usr/share/man" docdir="$pkgdir/usr/share/doc"
- install -D -m 644 COPYRIGHT "$pkgdir"/usr/share/licenses/$pkgname/COPYRIGHT
-}
-
-sha512sums="fb17c5610dcfce3e8020a5148d37be5b2fbc3083d78727281922ae32b5905c4aa882cd368c3581238f3492c6b5bab943dcff6a966d64160a3836d6a95bdc7682 ssldump-1.4.tar.gz"
diff --git a/testing/sslh/APKBUILD b/testing/sslh/APKBUILD
deleted file mode 100644
index 911597036d2..00000000000
--- a/testing/sslh/APKBUILD
+++ /dev/null
@@ -1,72 +0,0 @@
-# Contributor: Francesco Colista <fcolista@alpinelinux.org>
-# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
-pkgname=sslh
-pkgver=1.22c
-pkgrel=0
-pkgdesc="Applicative Protocol Multiplexer (e.g. share SSH and HTTPS on the same port)"
-url="http://www.rutschle.net/tech/sslh/README.html"
-arch="all"
-license="GPL-2.0-or-later"
-makedepends="libconfig-dev libcap-dev pcre2-dev perl"
-checkdepends="perl-conf-libconfig perl-io-socket-inet6 lcov valgrind"
-subpackages="$pkgname-fail2ban::noarch $pkgname-doc $pkgname-openrc"
-source="http://www.rutschle.net/tech/$pkgname/$pkgname-v$pkgver.tar.gz
- fix-make-install.patch
- fail2ban.patch
- config.patch
- $pkgname.initd
- $pkgname.confd
- "
-builddir="$srcdir/$pkgname-v$pkgver"
-# FIXME: Some tests fail.
-# Can't test in chroot due to sockets and processes opened. (?)
-options="!check"
-
-build() {
- make CFLAGS="$CFLAGS -std=gnu99" \
- ENABLE_REGEX=1 \
- USELIBPCRE=1 \
- USELIBCONFIG=1 \
- USELIBCAP=1
-}
-
-check() {
- make test
-}
-
-package() {
- make DESTDIR="$pkgdir" PREFIX=/usr install
-
- install -D -m644 basic.cfg "$pkgdir/etc/$pkgname.conf"
- install -D -m755 "$srcdir/$pkgname.initd" "$pkgdir/etc/init.d/$pkgname"
- install -D -m644 "$srcdir/$pkgname.confd" "$pkgdir/etc/conf.d/$pkgname"
-}
-
-fail2ban() {
- install_if="$pkgname=$pkgver-r$pkgrel fail2ban"
-
- cd "$builddir"
-
- install -D -m644 scripts/fail2ban/sslh-ssh.conf \
- "$subpkgdir"/etc/fail2ban/filter.d/sslh-ssh.conf
-
- install -D -m644 scripts/fail2ban/jail.conf \
- "$subpkgdir"/etc/fail2ban/jail.d/sslh-ssh.conf
-}
-
-doc() {
- default_doc
-
- cd "$builddir"
- install -Dm 644 basic.cfg "$subpkgdir/usr/share/doc/$pkgname/basic.cfg"
- install -Dm 644 example.cfg "$subpkgdir/usr/share/doc/$pkgname/example.cfg"
-}
-
-sha512sums="
-46c1221d7ba6db9d2c11ee9a05fd6ec1da758efe2ba5ac7df0ced7b884742b2cbcef6d88478cdd743055ed63c9db647687456ce4a9c95071fdd8d93c1b31ee4b sslh-v1.22c.tar.gz
-b82d3c799f0cdf183fe0545e1d2b4f142070112d7ec3594afd709608c4893c300122aa32026dd7f8e782eb3981bf85fc02f878e2613ddfe014f39bbb94fb441e fix-make-install.patch
-5773ee1d91e099726b614dbe385f2668699d25029fc300b664411c6082e95d3f27df11b9b1489bee3444c81bf941b8db13b4d382343788e47408c593c4531816 fail2ban.patch
-cc6267d286e0f38b13cd4b2cba978627fbfad3781698ff7da7933c2d05356b34b60a62e766a32c0414cc26ce42bc043af11be35bd0af67692e587ca4d223357d config.patch
-20ad403c7e8bd37c849263886ff4307a478fbeaec74d52b7db864dea2e9bdafb2c501afd70fa2621385baf3536553a79cee006b4a629260921d2e08db7991696 sslh.initd
-7eaf99c6fb4505d0562c46ed2b3ae656b7c7c96223f2c7f11ab1bed72e9df0223a7ef02277ac50a633d165238efb8c54044eff38b488a7884b6671120d9e3f3e sslh.confd
-"
diff --git a/testing/sslh/config.patch b/testing/sslh/config.patch
deleted file mode 100644
index 9ed4aca7c7e..00000000000
--- a/testing/sslh/config.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-diff --git a/basic.cfg b/basic.cfg
-index d8e4336..7cd0050 100644
---- a/basic.cfg
-+++ b/basic.cfg
-@@ -2,20 +2,17 @@
- # sensible values for "standard" setup.
-
- verbose: 0;
--foreground: false;
--inetd: false;
- numeric: false;
- transparent: false;
- timeout: 2;
- user: "nobody";
--pidfile: "/var/run/sslh.pid";
- chroot: "/var/empty";
-
-
- # Change hostname with your external address name.
- listen:
- (
-- { host: "thelonious"; port: "443"; }
-+ { host: "0.0.0.0"; port: "443"; }
- );
-
- protocols:
diff --git a/testing/sslh/fail2ban.patch b/testing/sslh/fail2ban.patch
deleted file mode 100644
index 01dd9fd37dd..00000000000
--- a/testing/sslh/fail2ban.patch
+++ /dev/null
@@ -1,22 +0,0 @@
---- a/scripts/fail2ban/jail.conf
-+++ b/scripts/fail2ban/jail.conf
-@@ -1,8 +1,5 @@
--# Add the following to your fail2ban jail.conf
--# In Debian you'd append it to /etc/fail2ban/jail.local
--
- [sslh-ssh]
--enabled = true
-+enabled = false
- filter = sslh-ssh
- action = iptables-multiport[name=sslh,port="443"]
- logpath = /var/log/messages
---- a/scripts/fail2ban/sslh-ssh.conf
-+++ b/scripts/fail2ban/sslh-ssh.conf
-@@ -1,7 +1,3 @@
--# Add the following to you fail2ban configuration file
--# In Debian it'd go in /etc/fail2ban/filter.d/sslh-ssh.conf
--
--
- # Fail2Ban filter for sslh demultiplexed ssh
- #
- # Doesn't (and cannot) detect auth errors,
diff --git a/testing/sslh/fix-make-install.patch b/testing/sslh/fix-make-install.patch
deleted file mode 100644
index d289f6a6b1b..00000000000
--- a/testing/sslh/fix-make-install.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- a/Makefile
-+++ b/Makefile
-@@ -98,7 +98,9 @@
- install: sslh $(MAN)
- mkdir -p $(DESTDIR)/$(BINDIR)
- mkdir -p $(DESTDIR)/$(MANDIR)
-- install -p sslh-fork $(DESTDIR)/$(BINDIR)/sslh
-+ install -p sslh-fork $(DESTDIR)/$(BINDIR)/sslh-fork
-+ install -p sslh-select $(DESTDIR)/$(BINDIR)/sslh-select
-+ ln -s sslh-fork $(DESTDIR)/$(BINDIR)/sslh
- install -p -m 0644 $(MAN) $(DESTDIR)/$(MANDIR)/$(MAN)
-
- # "extended" install for Debian: install startup script
diff --git a/testing/sslh/sslh.confd b/testing/sslh/sslh.confd
deleted file mode 100644
index 5fec949a75e..00000000000
--- a/testing/sslh/sslh.confd
+++ /dev/null
@@ -1,18 +0,0 @@
-# Configuration for /etc/init.d/sslh
-
-# The sslh binary to run; one of:
-#
-# fork Forks a new process for each incoming connection. It is well-tested
-# and very reliable, but incurs the overhead of many processes.
-# select Uses only one thread, which monitors all connections at once. It is
-# more recent and less tested, but has smaller overhead per connection.
-#mode="fork"
-
-# Path of the configuration file.
-#cfgfile="/etc/sslh.conf"
-
-# Additional options to pass to the sslh daemon. See sslh(1) man page.
-#command_args=""
-
-# Uncomment to run the sslh daemon under process supervisor.
-#supervisor=supervise-daemon
diff --git a/testing/sslh/sslh.initd b/testing/sslh/sslh.initd
deleted file mode 100644
index d5bab81390a..00000000000
--- a/testing/sslh/sslh.initd
+++ /dev/null
@@ -1,15 +0,0 @@
-#!/sbin/openrc-run
-
-: ${cfgfile:="/etc/sslh.conf"}
-: ${mode:="fork"}
-: ${wait:=50} # milliseconds
-
-description="Port multiplexer for SSH, HTTPS, OpenVPN etc."
-
-command="/usr/sbin/sslh-$mode"
-command_args="-F$cfgfile -f ${command_args:-$DAEMON_OPTS}"
-command_background="yes"
-pidfile="/run/$RC_SVCNAME.pid"
-start_stop_daemon_args="--wait $wait"
-
-required_files="$cfgfile"
diff --git a/testing/sslscan/APKBUILD b/testing/sslscan/APKBUILD
deleted file mode 100644
index 696f9d95a1f..00000000000
--- a/testing/sslscan/APKBUILD
+++ /dev/null
@@ -1,25 +0,0 @@
-# Maintainer: psykose <alice@ayaya.dev>
-pkgname=sslscan
-pkgver=2.0.13
-pkgrel=1
-pkgdesc="fast SSL/TLS configuration scanner"
-url="https://github.com/rbsec/sslscan"
-arch="all"
-license="GPL-3.0-or-later OpenSSL"
-makedepends="zlib-dev openssl-dev perl"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/rbsec/sslscan/archive/refs/tags/$pkgver.tar.gz"
-options="!check" # No test suite
-
-build() {
- make GIT_VERSION=$pkgver
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-
-sha512sums="
-50455a4f4a999e63107e705a4bc703b94b30d4fa71b5126cdc08788eedeb02f4c7a204a385fa485f0c9d0fa368c7a48f96c492b91631fe8833b68f20d45b0fca sslscan-2.0.13.tar.gz
-"
diff --git a/testing/sssd/0001-makefile.patch b/testing/sssd/0001-makefile.patch
index e53ff8a7ae4..4552bdfabab 100644
--- a/testing/sssd/0001-makefile.patch
+++ b/testing/sssd/0001-makefile.patch
@@ -60,3 +60,10 @@ index f6bc9414d..a435507e7 100644
$(NULL)
p11_child_LDADD += \
$(P11_KIT_LIBS) \
+@@ -4706,6 +4706,7 @@
+ $(JANSSON_LIBS) \
+ $(JOSE_LIBS) \
+ $(CURL_LIBS) \
++ -lintl \
+ $(NULL)
+ endif
diff --git a/testing/sssd/0002-src.patch b/testing/sssd/0002-src.patch
deleted file mode 100644
index ec908c5f2f3..00000000000
--- a/testing/sssd/0002-src.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-diff --git a/src/confdb/confdb.h b/src/confdb/confdb.h
-index af3563e65..2d98829ad 100644
---- a/src/confdb/confdb.h
-+++ b/src/confdb/confdb.h
-@@ -22,6 +22,7 @@
- #ifndef _CONF_DB_H
- #define _CONF_DB_H
-
-+#include <sys/types.h>
- #include <stdbool.h>
- #include <talloc.h>
- #include <tevent.h>
-diff --git a/src/util/util.h b/src/util/util.h
-index 6dfd2540c..e54ca5bd5 100644
---- a/src/util/util.h
-+++ b/src/util/util.h
-@@ -30,6 +30,7 @@
- #include <time.h>
- #include <sys/types.h>
- #include <sys/stat.h>
-+#include <sys/param.h>
- #include <netinet/in.h>
-
- #include <talloc.h>
-@@ -46,6 +47,10 @@
- #include "util/sss_regexp.h"
- #include "util/debug.h"
-
-+#ifndef ALLPERMS
-+#define ALLPERMS (S_ISUID | S_ISGID | S_IRGRP | S_IRWXU | S_IRWXG | S_IRWXO)
-+#endif
-+
- /* name of the monitor server instance */
- #define SSSD_MONITOR_NAME "sssd"
- #define SSSD_PIDFILE PID_PATH"/"SSSD_MONITOR_NAME".pid"
diff --git a/testing/sssd/0003-alpine.patch b/testing/sssd/0003-alpine.patch
deleted file mode 100644
index 370509d78fe..00000000000
--- a/testing/sssd/0003-alpine.patch
+++ /dev/null
@@ -1,94 +0,0 @@
-diff --git a/Makefile.am b/Makefile.am
-index a435507e7..2af79444f 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -4945,12 +4945,16 @@ if HAVE_GENTOO
- init_SCRIPTS += \
- src/sysv/gentoo/sssd \
- src/sysv/gentoo/sssd-kcm
-+else
-+if HAVE_ALPINE
-+ init_SCRIPTS += \
-+ src/sysv/alpine/sssd
- else
- init_SCRIPTS += \
- src/sysv/sssd
- endif
- endif
--
-+endif
-
- dist_sssddata_DATA = \
- src/config/etc/sssd.api.conf \
-diff --git a/configure.ac b/configure.ac
-index bf5ac659a..fee61da71 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -496,7 +496,7 @@ AC_DEFINE_UNQUOTED([ABS_SRC_DIR], ["$my_srcdir"], [Absolute path to the source d
-
- AC_CONFIG_FILES([Makefile contrib/sssd.spec src/examples/rwtab src/doxy.config
- contrib/sssd-pcsc.rules
-- src/sysv/sssd src/sysv/gentoo/sssd src/sysv/gentoo/sssd-kcm
-+ src/sysv/sssd src/sysv/gentoo/sssd src/sysv/gentoo/sssd-kcm src/sysv/alpine/sssd
- po/Makefile.in src/man/Makefile src/tests/cwrap/Makefile
- src/tests/intg/Makefile src/tests/test_CA/Makefile
- src/tests/test_CA/intermediate_CA/Makefile
-diff --git a/src/external/platform.m4 b/src/external/platform.m4
-index 75853622f..5a2d50427 100644
---- a/src/external/platform.m4
-+++ b/src/external/platform.m4
-@@ -1,5 +1,5 @@
- AC_ARG_WITH([os],
-- [AC_HELP_STRING([--with-os=OS_TYPE], [Type of your operation system (fedora|redhat|suse|gentoo)])]
-+ [AC_HELP_STRING([--with-os=OS_TYPE], [Type of your operation system (fedora|redhat|suse|gentoo|alpine)])]
- )
- osname=""
- if test x"$with_os" != x ; then
-@@ -7,6 +7,7 @@ if test x"$with_os" != x ; then
- test x"$with_os" = xredhat || \
- test x"$with_os" = xsuse || \
- test x"$with_os" = xgentoo || \
-+ test x"$with_os" = xalpine || \
- test x"$with_os" = xdebian ; then
- osname=$with_os
- else
-@@ -25,6 +26,8 @@ if test x"$osname" = x ; then
- osname="debian"
- elif test -f /etc/gentoo-release ; then
- osname="gentoo"
-+ elif test -f /etc/alpine-release ; then
-+ osname="alpine"
- fi
-
- AC_MSG_NOTICE([Detected operating system type: $osname])
-@@ -35,6 +38,7 @@ AM_CONDITIONAL([HAVE_REDHAT], [test x"$osname" = xredhat])
- AM_CONDITIONAL([HAVE_SUSE], [test x"$osname" = xsuse])
- AM_CONDITIONAL([HAVE_DEBIAN], [test x"$osname" = xdebian])
- AM_CONDITIONAL([HAVE_GENTOO], [test x"$osname" = xgentoo])
-+AM_CONDITIONAL([HAVE_ALPINE], [test x"$osname" = xalpine])
-
- AS_CASE([$osname],
- [redhat], [AC_DEFINE_UNQUOTED([HAVE_REDHAT], 1, [Build with redhat config])],
-diff --git a/src/sysv/alpine/sssd.in b/src/sysv/alpine/sssd.in
-new file mode 100644
-index 000000000..597bf8ce9
---- /dev/null
-+++ b/src/sysv/alpine/sssd.in
-@@ -0,0 +1,17 @@
-+#!/sbin/openrc-run
-+
-+depend(){
-+ need localmount netmount clock
-+}
-+
-+start(){
-+ ebegin "Starting sssd"
-+ start-stop-daemon --start --exec ${exec_prefix}/usr/sbin/sssd -- -Df ${SSSD_OPTIONS}
-+ eend ${?}
-+}
-+
-+stop(){
-+ ebegin "Stopping sssd"
-+ start-stop-daemon --stop --pidfile ${prefix}/var/run/sssd.pid
-+ eend ${?}
-+}
diff --git a/testing/sssd/APKBUILD b/testing/sssd/APKBUILD
index 7dcf9de27aa..761d23e140e 100644
--- a/testing/sssd/APKBUILD
+++ b/testing/sssd/APKBUILD
@@ -2,7 +2,7 @@
# Contributor: Henrik Riomar <henrik.riomar@gmail.com>
# Maintainer: Vince Mele <vmele@inoc.com>
pkgname=sssd
-pkgver=2.6.3
+pkgver=2.9.3
pkgrel=0
pkgdesc="System Security Services Daemon"
url="https://github.com/SSSD/sssd"
@@ -24,8 +24,10 @@ depends="
makedepends="
autoconf
automake
+ bash
bind-tools
c-ares-dev
+ cifs-utils-dev
curl-dev
dbus-dev
ding-libs-dev
@@ -34,6 +36,7 @@ makedepends="
glib-dev
http-parser-dev
jansson-dev
+ jose-dev
keyutils-dev
krb5-dev
ldb-dev
@@ -42,6 +45,7 @@ makedepends="
libxml2-utils
libxslt
linux-pam-dev
+ musl-nscd-dev
nss-dev
openldap-dev
p11-kit-dev
@@ -52,19 +56,17 @@ makedepends="
tdb-dev
tevent-dev
"
-subpackages="$pkgname-dev $pkgname-openrc"
-source="sssd-$pkgver.tar.gz::https://codeload.github.com/SSSD/sssd/tar.gz/$pkgver
+subpackages="$pkgname-dev py3-$pkgname-pyc py3-$pkgname:py3 $pkgname-openrc"
+source="https://github.com/SSSD/sssd/releases/download/$pkgver/sssd-$pkgver.tar.gz
0001-makefile.patch
- 0002-src.patch
- 0003-alpine.patch
musl_fixup.patch
- nss.h
- cifsidmap.h
+ sssd.initd
"
+
prepare() {
default_prepare
- cp "$srcdir"/nss.h "$srcdir"/cifsidmap.h "$builddir"/src/
- autoreconf -i
+
+ autoreconf -fvi
}
build() {
@@ -75,11 +77,10 @@ build() {
--localstatedir=/var \
--libexecdir=/usr/lib/sssd \
--datadir=/usr/share \
- --enable-pammoddir=/usr/lib/security \
+ --enable-pammoddir=/lib/security \
--with-pid-path=/run \
--with-initscript=sysv \
--with-init-dir=/etc/init.d \
- --with-os=alpine \
--disable-cifs-idmap-plugin \
--disable-rpath \
--disable-static \
@@ -101,23 +102,20 @@ check() {
package() {
make -j1 DESTDIR="$pkgdir" install
- # Remove files we don't want to package
- find "$pkgdir" -name '*.la' -delete
- find "$pkgdir" -name '*.pyc' -delete
- find "$pkgdir" -name '*.egg-info' -delete
+ install -Dm755 "$srcdir"/sssd.initd "$pkgdir"/etc/init.d/sssd
- # pkgdir will allways be set, so silence shellsheck warning:
- # SC2115: Use "${var:?}" to ensure this never expands to /usr/share .
# shellcheck disable=SC2115
rm -r "$pkgdir"/usr/share
rm -r "$pkgdir"/run
}
+
+py3() {
+ amove usr/lib/python*
+}
+
sha512sums="
-5a8cacac5ead44d31167852b418167a740b31fc9adf2a0fe88e57c3a8ed9e9cfda1ceb57084c5e86f43deb0e96e78dc88f23dae962df3b0a5ae60255cdeff8fc sssd-2.6.3.tar.gz
-c845d4962ed3f02db59621d62b741391708aa4b6d6f88d0b56683112b5ab6f9ac9419d97e1564b134db3577cb377c358070f0eee244a15dca81e1e9bb563a771 0001-makefile.patch
-03c06e38e17e66e679c1093a44d43fa10ed9a3bede1545f79745886b9649350af5a7a5fd47c0e315e82a274eedcf6f9d833e08de143f7c80cf7303c27ed416ad 0002-src.patch
-8645e3d4b119654bf1a3d770c27e77e2599243c302fe500325604bd1f04bbe82489ced071d7abb7bc2bdd5b0799268d2af1c49b9dee080715e35a6cdd0203620 0003-alpine.patch
-70695c7097325ba844e6b2aedf6f22674d1c3099408fbd1a4c7f735d35fc069a737465fc3ee9732aa79630c7aa8fb3b58291b93cde9772049dd6c3b2272d031e musl_fixup.patch
-5abb1ffd1302eaa25736404ae148c0ffdeb7ce42fa2745be3436e887a2aa96b9620287f19b2790cb59cbccc2c04a9dee1adec4fa8e813d322cde82793500e33b nss.h
-b88d4f1ba847477783b43542f1248881d4fb8e8a0d4165c65c358fcb442891d2cc7c96b05e2a8e7c05fdc17ecd76f16295c1ffac3f1c9bfd0375c5e65e56201d cifsidmap.h
+e1c3e107c98ac2cbc4f38e435910ebd560464773e7e93c8982db37d1ccdf78bc5e3f514bbcd2aaae54074ca6197b2067531180b83ee8c0e7f94878a824834a21 sssd-2.9.3.tar.gz
+a62843c65d864fa372b7ed550bdd6f277f054f3efae941c48e9bab239758dad079886f26fbb06fe15310845ba8dc5126d108b06864712c88904b08847a032308 0001-makefile.patch
+c9db51a773c821a2c5327d2e4b0d3c81dd89d780aa7f9dd66ff88a7419a8072907047c8d9faec17ea14c5404c636485eceda85df0b299f40fae362ef7bfb34e8 musl_fixup.patch
+7198c66c96ba48c43def004e302be2e3348d43a4b5a1b35eb25f99081f1f6dce89d3994377a3064f72462509648bfbca1062493d244e413f0c47122cc0436bc9 sssd.initd
"
diff --git a/testing/sssd/cifsidmap.h b/testing/sssd/cifsidmap.h
deleted file mode 100644
index e13083b1996..00000000000
--- a/testing/sssd/cifsidmap.h
+++ /dev/null
@@ -1,160 +0,0 @@
-/*
- * ID Mapping Plugin interface for cifs-utils
- * Copyright (C) 2012 Jeff Layton (jlayton@samba.org)
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include <stdint.h>
-
-#include <sys/types.h>
-
-#ifndef _CIFSIDMAP_H
-#define _CIFSIDMAP_H
-
-#define NUM_AUTHS (6) /* number of authority fields */
-#define SID_MAX_SUB_AUTHORITIES (15) /* max number of sub authority fields */
-
-/*
- * Binary representation of a SID as presented to/from the kernel. Note that
- * the sub_auth field is always stored in little-endian here.
- */
-struct cifs_sid {
- uint8_t revision; /* revision level */
- uint8_t num_subauth;
- uint8_t authority[NUM_AUTHS];
- uint32_t sub_auth[SID_MAX_SUB_AUTHORITIES];
-} __attribute__((packed));
-
-
-/*
- * The type of the ID stored within cifs_uxid. UNKNOWN generally means that
- * the mapping failed for some reason. BOTH means that the ID is usable as
- * either a UID or a GID -- IOW, the UID and GID namespaces are unity-mapped.
- */
-#define CIFS_UXID_TYPE_UNKNOWN (0) /* mapping type is unknown */
-#define CIFS_UXID_TYPE_UID (1) /* mapping is a UID */
-#define CIFS_UXID_TYPE_GID (2) /* mapping is a GID */
-#define CIFS_UXID_TYPE_BOTH (3) /* usable as UID or GID */
-
-/* This struct represents a uid or gid and its type */
-struct cifs_uxid {
- union {
- uid_t uid;
- gid_t gid;
- } id;
- unsigned char type;
-} __attribute__((packed));
-
-/*
- * Plugins should implement the following functions:
- */
-
-/**
- * cifs_idmap_init_plugin - Initialize the plugin interface
- * @handle - return pointer for an opaque handle
- * @errmsg - pointer to error message pointer
- *
- * This function should do whatever is required to establish a context
- * for later ID mapping operations. The "handle" is an opaque context
- * cookie that will be passed in on subsequent ID mapping operations.
- * The errmsg is used to pass back an error string both during the init
- * and in subsequent idmapping functions. On any error, the plugin
- * should point *errmsg at a string describing that error. Returns 0
- * on success and non-zero on error.
- */
-extern int cifs_idmap_init_plugin(void **handle, const char **errmsg);
-
-/**
- * cifs_idmap_exit_plugin - Destroy an idmapping context
- * @handle - context handle that should be destroyed
- *
- * When programs are finished with the idmapping plugin, they'll call
- * this function to destroy any context that was created during the
- * init_plugin. The handle passed back in was the one given by the init
- * routine.
- */
-extern void cifs_idmap_exit_plugin(void *handle);
-
-/**
- * cifs_idmap_sid_to_str - convert cifs_sid to a string
- * @handle - context handle
- * @sid - pointer to a cifs_sid
- * @name - return pointer for the name
- *
- * This function should convert the given cifs_sid to a string
- * representation or mapped name in a heap-allocated buffer. The caller
- * of this function is expected to free "name" on success. Returns 0 on
- * success and non-zero on error. On error, the errmsg pointer passed
- * in to the init_plugin function should point to an error string. The
- * caller will not free the error string.
- */
-extern int cifs_idmap_sid_to_str(void *handle, const struct cifs_sid *sid,
- char **name);
-
-/**
- * cifs_idmap_str_to_sid - convert string to struct cifs_sid
- * @handle - context handle
- * @name - pointer to name string to be converted
- * @sid - pointer to struct cifs_sid where result should go
- *
- * This function converts a name string or string representation of
- * a SID to a struct cifs_sid. The cifs_sid should already be
- * allocated. Returns 0 on success and non-zero on error. On error, the
- * plugin should reset the errmsg pointer passed to the init_plugin
- * function to an error string. The caller will not free the error string.
- */
-extern int cifs_idmap_str_to_sid(void *handle, const char *name,
- struct cifs_sid *sid);
-
-/**
- * cifs_idmap_sids_to_ids - convert struct cifs_sids to struct cifs_uxids
- * @handle - context handle
- * @sid - pointer to array of struct cifs_sids to be converted
- * @num - number of sids to be converted
- * @cuxid - pointer to preallocated array of struct cifs_uxids for return
- *
- * This function should map an array of struct cifs_sids to an array of
- * struct cifs_uxids.
- *
- * Returns 0 if at least one conversion was successful and non-zero on error.
- * Any that were not successfully converted will have a cuxid->type of
- * CIFS_UXID_TYPE_UNKNOWN.
- *
- * On any error, the plugin should reset the errmsg pointer passed to the
- * init_plugin function to an error string. The caller will not free the error
- * string.
- */
-extern int cifs_idmap_sids_to_ids(void *handle, const struct cifs_sid *sid,
- const size_t num, struct cifs_uxid *cuxid);
-
-/**
- * cifs_idmap_ids_to_sids - convert uid to struct cifs_sid
- * @handle - context handle
- * @cuxid - pointer to array of struct cifs_uxid to be converted to SIDs
- * @num - number of cifs_uxids to be converted to SIDs
- * @sid - pointer to preallocated array of struct cifs_sid where results
- * should be stored
- *
- * This function should map an array of cifs_uxids an array of struct cifs_sids.
- * Returns 0 if at least one conversion was successful and non-zero on error.
- * Any sids that were not successfully converted should have their revision
- * number set to 0.
- *
- * On any error, the plugin should reset the errmsg pointer passed to the
- * init_plugin function to an error string. The caller will not free the error
- * string.
- */
-extern int cifs_idmap_ids_to_sids(void *handle, const struct cifs_uxid *cuxid,
- const size_t num, struct cifs_sid *sid);
-#endif /* _CIFSIDMAP_H */
diff --git a/testing/sssd/musl_fixup.patch b/testing/sssd/musl_fixup.patch
index 68f267c7c74..53908727d83 100644
--- a/testing/sssd/musl_fixup.patch
+++ b/testing/sssd/musl_fixup.patch
@@ -19,8 +19,10 @@ Signed-off-by: Armin Kuster <akuster808@gmail.com>
Index: sssd-2.5.1/src/providers/fail_over.c
===================================================================
---- sssd-2.5.1.orig/src/providers/fail_over.c
-+++ sssd-2.5.1/src/providers/fail_over.c
+diff --git a/src/providers/fail_over.c b/src/providers/fail_over.c
+index 9cb2683..655438c 100644
+--- a/src/providers/fail_over.c
++++ b/src/providers/fail_over.c
@@ -31,6 +31,10 @@
#include <talloc.h>
#include <netdb.h>
@@ -32,10 +34,10 @@ Index: sssd-2.5.1/src/providers/fail_over.c
#include "util/dlinklist.h"
#include "util/refcount.h"
#include "util/util.h"
-Index: sssd-2.5.1/src/sss_client/sss_cli.h
-===================================================================
---- sssd-2.5.1.orig/src/sss_client/sss_cli.h
-+++ sssd-2.5.1/src/sss_client/sss_cli.h
+diff --git a/src/sss_client/sss_cli.h b/src/sss_client/sss_cli.h
+index dd36e21..96f279d 100644
+--- a/src/sss_client/sss_cli.h
++++ b/src/sss_client/sss_cli.h
@@ -44,6 +44,14 @@ typedef int errno_t;
#define EOK 0
#endif
@@ -51,3 +53,16 @@ Index: sssd-2.5.1/src/sss_client/sss_cli.h
#define SSS_NSS_PROTOCOL_VERSION 1
#define SSS_PAM_PROTOCOL_VERSION 3
#define SSS_SUDO_PROTOCOL_VERSION 1
+diff --git a/src/tools/tools_mc_util.c b/src/tools/tools_mc_util.c
+index a4f3a81..cad1f3e 100644
+--- a/src/tools/tools_mc_util.c
++++ b/src/tools/tools_mc_util.c
+@@ -168,7 +168,7 @@ static errno_t wait_till_nss_responder_invalidate_cache(void)
+ {
+ struct stat stat_buf = { 0 };
+ const time_t max_wait = 1000000; /* 1 second */
+- const __useconds_t step_time = 5000; /* 5 milliseconds */
++ const useconds_t step_time = 5000; /* 5 milliseconds */
+ const size_t steps_count = max_wait / step_time;
+ int ret;
+
diff --git a/testing/sssd/nss.h b/testing/sssd/nss.h
deleted file mode 100644
index e15ee3ee34e..00000000000
--- a/testing/sssd/nss.h
+++ /dev/null
@@ -1,15 +0,0 @@
-#ifndef NSS__H
-#define NSS__H
-
-#include <nss/nss.h>
-
-enum nss_status
-{
- NSS_STATUS_TRYAGAIN = -2,
- NSS_STATUS_UNAVAIL = -1,
- NSS_STATUS_NOTFOUND = 0,
- NSS_STATUS_SUCCESS = 1,
- NSS_STATUS_RETURN = 2
-};
-
-#endif
diff --git a/testing/sssd/sssd.initd b/testing/sssd/sssd.initd
new file mode 100644
index 00000000000..38875b59bb6
--- /dev/null
+++ b/testing/sssd/sssd.initd
@@ -0,0 +1,10 @@
+#!/sbin/openrc-run
+
+command="/usr/sbin/sssd"
+command_args="-D $SSSD_OPTIONS"
+command_background=true
+pidfile="/run/$RC_SVCNAME.pid"
+
+depend(){
+ need localmount netmount clock
+}
diff --git a/testing/stack/APKBUILD b/testing/stack/APKBUILD
new file mode 100644
index 00000000000..e482ad8e90d
--- /dev/null
+++ b/testing/stack/APKBUILD
@@ -0,0 +1,53 @@
+# Contributor: gay <gay@disroot.org>
+# Maintainer: gay <gay@disroot.org>
+pkgname=stack
+pkgver=2.7.5
+pkgrel=0
+pkgdesc="The Haskell Tool Stack"
+url="https://haskellstack.org/"
+arch="aarch64 x86_64" # limited by ghc
+license="BSD-3-Clause"
+makedepends="
+ cabal
+ ghc
+ gmp-dev
+ sqlite-dev
+ zlib-dev
+ "
+checkdepends="ncurses-dev"
+source="https://hackage.haskell.org/package/stack-$pkgver/stack-$pkgver.tar.gz
+ cabal.config
+ aeson.patch
+ ghc9.0.x.patch
+ persistent.patch
+ "
+
+export CABAL_DIR="$srcdir"/cabal
+
+prepare() {
+ default_prepare
+ cp "$srcdir"/cabal.config .
+ cabal update
+ cabal configure --prefix=/usr
+}
+
+build() {
+ cabal build --jobs=${JOBS:-1} --enable-relocatable
+}
+
+check() {
+ cabal test
+}
+
+package() {
+ cd dist-newstyle/build/*-linux/ghc-*/$pkgname-$pkgver/build/$pkgname
+ install -Dm755 $pkgname "$pkgdir"/usr/bin/$pkgname
+}
+
+sha512sums="
+fd51f990d3ccec6103c8699a8e39c970a0233a1185587a519eda659d2b45bc4496c4f261f6897c06781d0f76d2b1d526d5acdfb502fe1494f8cf048c78ba1a8d stack-2.7.5.tar.gz
+a54c0790e154105f3e96d19289a905b2b3666d61849ad69d6ed81b00a01ea30c7733ead989c02f1f782a95bcc7f0f2dff41ae1ffdd8eb0995fbbd5f54db232d7 cabal.config
+818547d3d63b243daad11f2c8b811701b4b8a778196e1d69d73a4fd4829f4ad9f4134451153c80b8504f1c18fbc2ee8bca329f6c5eff9ee3c435af7a1947077d aeson.patch
+209348bd04d1cdce333e71a0570ba3781aeb36a0a5ad8a0e5f08ab9aca8f4d49f681b63cab4b7f4f1ddcc79cbf850d5cb1fc79f7a099b0bb65038774ed0a0820 ghc9.0.x.patch
+73d9291ade690db1838b8dbd7b132d9e808781e5419684c04008b9e967c56d3e66eb64df8ef997d74301d92a76d4071956c5593c42841ef035c39c82ac68892d persistent.patch
+"
diff --git a/testing/stack/aeson.patch b/testing/stack/aeson.patch
new file mode 100644
index 00000000000..68f267c30cc
--- /dev/null
+++ b/testing/stack/aeson.patch
@@ -0,0 +1,46 @@
+commit 09e233ed73aa3335642f97c080ef27e42047c527
+Author: q66 <daniel@octaforge.org>
+Date: Fri Mar 11 04:37:15 2022 +0100
+
+ constrain aeson to prevent build failures
+
+diff --git a/stack.cabal b/stack.cabal
+index dba5bf0..0195f2c 100644
+--- a/stack.cabal
++++ b/stack.cabal
+@@ -231,7 +231,7 @@ library
+
+ build-depends:
+ Cabal >=3.2.1.0,
+- aeson >=1.5.6.0,
++ aeson >=1.5.6.0 && <1.6,
+ annotated-wl-pprint >=0.7.0,
+ ansi-terminal >=0.10.3,
+ array >=0.5.4.0,
+@@ -357,7 +357,7 @@ executable stack
+
+ build-depends:
+ Cabal >=3.2.1.0,
+- aeson >=1.5.6.0,
++ aeson >=1.5.6.0 && <1.6,
+ annotated-wl-pprint >=0.7.0,
+ ansi-terminal >=0.10.3,
+ array >=0.5.4.0,
+@@ -485,7 +485,7 @@ executable stack-integration-test
+
+ build-depends:
+ Cabal >=3.2.1.0,
+- aeson >=1.5.6.0,
++ aeson >=1.5.6.0 && <1.6,
+ annotated-wl-pprint >=0.7.0,
+ ansi-terminal >=0.10.3,
+ array >=0.5.4.0,
+@@ -621,7 +621,7 @@ test-suite stack-test
+ build-depends:
+ Cabal >=3.2.1.0,
+ QuickCheck >=2.14.2,
+- aeson >=1.5.6.0,
++ aeson >=1.5.6.0 && <1.6,
+ annotated-wl-pprint >=0.7.0,
+ ansi-terminal >=0.10.3,
+ array >=0.5.4.0,
diff --git a/testing/stack/cabal.config b/testing/stack/cabal.config
new file mode 100644
index 00000000000..6e9de3dc671
--- /dev/null
+++ b/testing/stack/cabal.config
@@ -0,0 +1,2912 @@
+remote-repo: stackage-lts-19.20:http://www.stackage.org/lts-19.20
+constraints: abstract-deque ==0.3,
+ abstract-deque-tests ==0.3,
+ abstract-par ==0.3.3,
+ AC-Angle ==1.0,
+ acc ==0.2.0.1,
+ ace ==0.6,
+ acid-state ==0.16.1.1,
+ action-permutations ==0.0.0.1,
+ active ==0.2.0.15,
+ ad ==4.5.2,
+ ad-delcont ==0.3.0.0,
+ adjunctions ==4.4.2,
+ adler32 ==0.1.2.0,
+ advent-of-code-api ==0.2.8.1,
+ aern2-mp ==0.2.10.0,
+ aern2-real ==0.2.10.0,
+ aeson ==2.0.3.0,
+ aeson-attoparsec ==0.0.0,
+ aeson-better-errors ==0.9.1.1,
+ aeson-casing ==0.2.0.0,
+ aeson-commit ==1.4,
+ aeson-compat ==0.3.10,
+ aeson-diff ==1.1.0.13,
+ aeson-extra ==0.5.1.1,
+ aeson-generic-compat ==0.0.1.3,
+ aeson-optics ==1.1.1,
+ aeson-pretty ==0.8.9,
+ aeson-qq ==0.8.4,
+ aeson-schemas ==1.3.5.1,
+ aeson-typescript ==0.3.0.1,
+ aeson-yak ==0.1.1.3,
+ aeson-yaml ==1.1.0.1,
+ Agda ==2.6.2.2,
+ agda2lagda ==0.2021.6.1,
+ al ==0.1.4.2,
+ alarmclock ==0.7.0.6,
+ alerts ==0.1.2.0,
+ alex ==3.2.7.1,
+ alex-meta ==0.3.0.13,
+ algebra ==4.3.1,
+ algebraic-graphs ==0.6.1,
+ align-audio ==0.0,
+ Allure ==0.11.0.0,
+ almost-fix ==0.0.2,
+ alsa-core ==0.5.0.1,
+ alsa-mixer ==0.3.0,
+ alsa-pcm ==0.6.1.1,
+ alsa-seq ==0.6.0.8,
+ alternative-vector ==0.0.0,
+ alternators ==1.0.0.0,
+ ALUT ==2.4.0.3,
+ amqp ==0.22.1,
+ amqp-utils ==0.6.3.2,
+ annotated-wl-pprint ==0.7.0,
+ ansi-terminal ==0.11.3,
+ ansi-terminal-game ==1.8.0.0,
+ ansi-wl-pprint ==0.6.9,
+ ANum ==0.2.0.2,
+ apecs ==0.9.4,
+ apecs-gloss ==0.2.4,
+ apecs-physics ==0.4.5,
+ api-field-json-th ==0.1.0.2,
+ api-maker ==0.1.0.6,
+ ap-normalize ==0.1.0.1,
+ appar ==0.1.8,
+ appendmap ==0.1.5,
+ apply-refact ==0.9.3.0,
+ apportionment ==0.0.0.4,
+ approximate ==0.3.5,
+ approximate-equality ==1.1.0.2,
+ app-settings ==0.2.0.12,
+ arbor-lru-cache ==0.1.1.1,
+ arithmoi ==0.12.0.2,
+ array installed,
+ array-memoize ==0.6.0,
+ arrow-extras ==0.1.0.1,
+ arrows ==0.4.4.2,
+ ascii ==1.1.3.0,
+ ascii-case ==1.0.0.10,
+ ascii-char ==1.0.0.14,
+ asciidiagram ==1.3.3.3,
+ ascii-group ==1.0.0.12,
+ ascii-numbers ==1.0.0.0,
+ ascii-predicates ==1.0.0.10,
+ ascii-progress ==0.3.3.0,
+ ascii-superset ==1.0.1.13,
+ ascii-th ==1.0.0.10,
+ asn1-encoding ==0.9.6,
+ asn1-parse ==0.9.5,
+ asn1-types ==0.3.4,
+ assert-failure ==0.1.2.6,
+ assoc ==1.0.2,
+ astro ==0.4.3.0,
+ async ==2.2.4,
+ async-extra ==0.2.0.0,
+ async-pool ==0.9.1,
+ async-refresh ==0.3.0.0,
+ async-refresh-tokens ==0.4.0.0,
+ atom-basic ==0.2.5,
+ atom-conduit ==0.9.0.1,
+ atomic-primops ==0.8.4,
+ atomic-write ==0.2.0.7,
+ attoparsec ==0.14.4,
+ attoparsec-base64 ==0.0.0,
+ attoparsec-binary ==0.2,
+ attoparsec-data ==1.0.5.2,
+ attoparsec-expr ==0.1.1.2,
+ attoparsec-iso8601 ==1.0.2.1,
+ attoparsec-path ==0.0.0.1,
+ attoparsec-time ==1.0.3,
+ audacity ==0.0.2.1,
+ aur ==7.0.7,
+ authenticate ==1.3.5.1,
+ authenticate-oauth ==1.7,
+ autoexporter ==2.0.0.1,
+ auto-update ==0.1.6,
+ aws-cloudfront-signed-cookies ==0.2.0.10,
+ aws-xray-client ==0.1.0.2,
+ aws-xray-client-persistent ==0.1.0.5,
+ aws-xray-client-wai ==0.1.0.2,
+ backtracking ==0.1.0,
+ bank-holidays-england ==0.2.0.7,
+ barbies ==2.0.3.1,
+ barrier ==0.1.1,
+ base installed,
+ base16 ==0.3.2.0,
+ base16-bytestring ==1.0.2.0,
+ base16-lens ==0.1.3.2,
+ base32 ==0.2.2.0,
+ base32-lens ==0.1.1.1,
+ base32string ==0.9.1,
+ base58-bytestring ==0.1.0,
+ base58string ==0.10.0,
+ base64 ==0.4.2.4,
+ base64-bytestring ==1.2.1.0,
+ base64-bytestring-type ==1.0.1,
+ base64-lens ==0.3.1,
+ base64-string ==0.2,
+ base-compat ==0.11.2,
+ base-compat-batteries ==0.11.2,
+ basement ==0.0.15,
+ base-orphans ==0.8.7,
+ base-prelude ==1.6.1,
+ base-unicode-symbols ==0.2.4.2,
+ basic-prelude ==0.7.0,
+ battleship-combinatorics ==0.0.1,
+ bazel-runfiles ==0.12,
+ bbdb ==0.8,
+ bcrypt ==0.0.11,
+ beam-core ==0.9.2.1,
+ beam-migrate ==0.5.1.2,
+ beam-postgres ==0.5.2.1,
+ beam-sqlite ==0.5.1.2,
+ bech32 ==1.1.2,
+ bech32-th ==1.1.1,
+ bench ==1.0.12,
+ benchpress ==0.2.2.21,
+ bencode ==0.6.1.1,
+ bencoding ==0.4.5.4,
+ between ==0.11.0.0,
+ bibtex ==0.1.0.6,
+ bifunctors ==5.5.12,
+ bimap ==0.4.0,
+ bimaps ==0.1.0.2,
+ bimap-server ==0.1.0.1,
+ bin ==0.1.2,
+ binance-exports ==0.1.1.0,
+ binary installed,
+ binary-conduit ==1.3.1,
+ binaryen ==0.0.6.0,
+ binary-generic-combinators ==0.4.4.0,
+ binary-ieee754 ==0.1.0.0,
+ binary-instances ==1.0.2,
+ binary-list ==1.1.1.2,
+ binary-orphans ==1.0.3,
+ binary-parser ==0.5.7.2,
+ binary-parsers ==0.2.4.0,
+ binary-search ==2.0.0,
+ binary-shared ==0.8.3,
+ binary-tagged ==0.3.1,
+ bindings-DSL ==1.0.25,
+ bindings-GLFW ==3.3.2.0,
+ bindings-libzip ==1.0.1,
+ bindings-uname ==0.1,
+ BiobaseENA ==0.0.0.2,
+ BiobaseEnsembl ==0.2.0.1,
+ BiobaseFasta ==0.4.0.1,
+ BiobaseTypes ==0.2.1.0,
+ BiobaseXNA ==0.11.1.1,
+ bitarray ==0.0.1.1,
+ bits ==0.6,
+ bitset-word8 ==0.1.1.2,
+ bits-extra ==0.0.2.3,
+ bitvec ==1.1.3.0,
+ bitwise-enum ==1.0.1.0,
+ blake2 ==0.3.0,
+ blanks ==0.5.0,
+ blas-carray ==0.1.0.1,
+ blas-comfort-array ==0.0.0.3,
+ blas-ffi ==0.1,
+ blas-hs ==0.1.1.0,
+ blaze-bootstrap ==0.1.0.1,
+ blaze-builder ==0.4.2.2,
+ blaze-colonnade ==1.2.2.1,
+ blaze-html ==0.9.1.2,
+ blaze-markup ==0.8.2.8,
+ blaze-svg ==0.3.6.1,
+ blaze-textual ==0.2.2.1,
+ bm ==0.1.0.2,
+ bmp ==1.2.6.3,
+ bnb-staking-csvs ==0.2.1.0,
+ BNFC ==2.9.4,
+ BNFC-meta ==0.6.1,
+ board-games ==0.3,
+ bodhi ==0.1.0,
+ boltzmann-samplers ==0.1.1.0,
+ bookkeeping ==0.4.0.1,
+ Boolean ==0.2.4,
+ boolean-like ==0.1.1.0,
+ boolsimplifier ==0.1.8,
+ boomerang ==1.4.8,
+ boots ==0.2.0.1,
+ bordacount ==0.1.0.0,
+ boring ==0.2,
+ both ==0.1.1.2,
+ bound ==2.0.5,
+ BoundedChan ==1.0.3.0,
+ bounded-queue ==1.0.0,
+ boxes ==0.1.5,
+ brick ==0.68.1,
+ brittany ==0.14.0.2,
+ broadcast-chan ==0.2.1.2,
+ brotli ==0.0.0.1,
+ brotli-streams ==0.0.0.0,
+ bsb-http-chunked ==0.0.0.4,
+ bson ==0.4.0.1,
+ bson-lens ==0.1.1,
+ buffer-builder ==0.2.4.8,
+ buffer-pipe ==0.0,
+ bugsnag-haskell ==0.0.4.4,
+ bugsnag-hs ==0.2.0.9,
+ bugzilla-redhat ==1.0.0,
+ burrito ==2.0.1.1,
+ butcher ==1.3.3.2,
+ buttplug-hs-core ==0.1.0.1,
+ bv ==0.5,
+ byteable ==0.1.1,
+ byte-count-reader ==0.10.1.9,
+ bytedump ==1.0,
+ byteorder ==1.0.4,
+ byte-order ==0.1.3.0,
+ bytes ==0.17.2,
+ byteset ==0.1.1.0,
+ bytestring installed,
+ bytestring-builder ==0.10.8.2.0,
+ bytestring-conversion ==0.3.2,
+ bytestring-lexing ==0.5.0.8,
+ bytestring-mmap ==0.2.2,
+ bytestring-strict-builder ==0.4.5.6,
+ bytestring-to-vector ==0.3.0.1,
+ bytestring-tree-builder ==0.2.7.10,
+ bytestring-trie ==0.2.7,
+ bz2 ==1.0.1.0,
+ bzlib ==0.5.1.0,
+ bzlib-conduit ==0.3.0.2,
+ c14n ==0.1.0.2,
+ c2hs ==0.28.8,
+ Cabal installed,
+ cabal2nix ==2.18.0,
+ cabal2spec ==2.6.2,
+ cabal-appimage ==0.3.0.5,
+ cabal-clean ==0.1.20220814,
+ cabal-doctest ==1.0.9,
+ cabal-file ==0.1.1,
+ cabal-file-th ==0.2.7,
+ cabal-flatpak ==0.1.0.3,
+ cabal-install ==3.4.1.0,
+ cabal-plan ==0.7.2.1,
+ cabal-rpm ==2.0.11.1,
+ Cabal-syntax ==3.6.0.0,
+ cache ==0.1.3.0,
+ cached-json-file ==0.1.1,
+ cacophony ==0.10.1,
+ calendar-recycling ==0.0.0.1,
+ call-alloy ==0.3.0.3,
+ call-stack ==0.4.0,
+ can-i-haz ==0.3.1.0,
+ capability ==0.5.0.1,
+ capataz ==0.2.1.0,
+ ca-province-codes ==1.0.0.0,
+ cardano-coin-selection ==1.0.1,
+ carray ==0.1.6.8,
+ casa-client ==0.0.1,
+ casa-types ==0.0.2,
+ cased ==0.1.0.0,
+ case-insensitive ==1.2.1.0,
+ cases ==0.1.4.1,
+ casing ==0.1.4.1,
+ cassava ==0.5.3.0,
+ cassava-conduit ==0.6.0,
+ cassava-megaparsec ==2.0.4,
+ cast ==0.1.0.2,
+ caster ==0.0.3.0,
+ cayley-client ==0.4.17,
+ cborg ==0.2.7.0,
+ cborg-json ==0.2.4.0,
+ cdar-mBound ==0.1.0.4,
+ c-enum ==0.1.1.3,
+ cereal ==0.5.8.3,
+ cereal-conduit ==0.8.0,
+ cereal-text ==0.1.0.2,
+ cereal-vector ==0.2.0.1,
+ cfenv ==0.1.0.0,
+ cgi ==3001.5.0.0,
+ chan ==0.0.4.1,
+ ChannelT ==0.0.0.7,
+ character-cases ==0.1.0.6,
+ charset ==0.3.9,
+ charsetdetect-ae ==1.1.0.4,
+ Chart ==1.9.4,
+ ChasingBottoms ==1.3.1.12,
+ cheapskate ==0.1.1.2,
+ cheapskate-highlight ==0.1.0.0,
+ cheapskate-lucid ==0.1.0.0,
+ check-email ==1.0.2,
+ checkers ==0.6.0,
+ checksum ==0.0,
+ chimera ==0.3.2.0,
+ chiphunk ==0.1.4.0,
+ choice ==0.2.2,
+ chronologique ==0.3.1.3,
+ chunked-data ==0.3.1,
+ cipher-aes ==0.2.11,
+ cipher-aes128 ==0.7.0.6,
+ cipher-camellia ==0.0.2,
+ cipher-des ==0.0.6,
+ cipher-rc4 ==0.1.4,
+ circle-packing ==0.1.0.6,
+ circular ==0.4.0.3,
+ citeproc ==0.6.0.1,
+ clash-ghc ==1.6.3,
+ clash-lib ==1.6.3,
+ clash-prelude ==1.6.3,
+ classy-prelude ==1.5.0.2,
+ classy-prelude-conduit ==1.5.0,
+ classy-prelude-yesod ==1.5.0,
+ clay ==0.14.0,
+ cleff ==0.3.3.0,
+ cleff-plugin ==0.1.0.0,
+ clientsession ==0.9.1.2,
+ climb ==0.3.3,
+ Clipboard ==2.3.2.0,
+ clock ==0.8.3,
+ closed ==0.2.0.2,
+ clumpiness ==0.17.0.2,
+ ClustalParser ==1.3.0,
+ cmark ==0.6,
+ cmark-gfm ==0.2.3,
+ cmark-lucid ==0.1.0.0,
+ cmdargs ==0.10.21,
+ codec-beam ==0.2.0,
+ code-conjure ==0.5.2,
+ code-page ==0.2.1,
+ coercible-utils ==0.1.0,
+ cointracking-imports ==0.1.0.1,
+ collect-errors ==0.1.5.0,
+ colonnade ==1.2.0.2,
+ Color ==0.3.3,
+ colorful-monoids ==0.2.1.3,
+ colorize-haskell ==1.0.1,
+ colour ==2.3.6,
+ columnar ==1.0.0.0,
+ combinatorial ==0.1.0.1,
+ comfort-array ==0.5.1.1,
+ comfort-array-shape ==0.0,
+ comfort-fftw ==0.0,
+ comfort-graph ==0.0.3.2,
+ commonmark ==0.2.2,
+ commonmark-extensions ==0.2.3.2,
+ commonmark-pandoc ==0.2.1.2,
+ commutative ==0.0.2,
+ comonad ==5.0.8,
+ comonad-extras ==4.0.1,
+ compact ==0.2.0.0,
+ compactmap ==0.1.4.2.1,
+ compensated ==0.8.3,
+ compiler-warnings ==0.1.0,
+ componentm ==0.0.0.2,
+ componentm-devel ==0.0.0.2,
+ composable-associations ==0.1.0.0,
+ composition ==1.0.2.2,
+ composition-extra ==2.0.0,
+ concise ==0.1.0.1,
+ concurrency ==1.11.0.2,
+ concurrent-extra ==0.7.0.12,
+ concurrent-output ==1.10.16,
+ concurrent-split ==0.0.1.1,
+ concurrent-supply ==0.1.8,
+ cond ==0.4.1.1,
+ conduino ==0.2.2.0,
+ conduit ==1.3.4.2,
+ conduit-aeson ==0.1.0.1,
+ conduit-algorithms ==0.0.13.0,
+ conduit-combinators ==1.3.0,
+ conduit-concurrent-map ==0.1.3,
+ conduit-connection ==0.1.0.5,
+ conduit-extra ==1.3.6,
+ conduit-parse ==0.2.1.1,
+ conduit-zstd ==0.0.2.0,
+ conferer ==1.1.0.0,
+ conferer-aeson ==1.1.0.2,
+ conferer-warp ==1.1.0.0,
+ ConfigFile ==1.1.4,
+ config-ini ==0.2.4.0,
+ configuration-tools ==0.6.1,
+ configurator ==0.3.0.0,
+ configurator-export ==0.1.0.1,
+ connection ==0.3.1,
+ connection-pool ==0.2.2,
+ console-style ==0.0.2.1,
+ constraints ==0.13.4,
+ constraints-extras ==0.3.2.1,
+ constraint-tuples ==0.1.2,
+ construct ==0.3.1,
+ containers installed,
+ containers-unicode-symbols ==0.3.1.3,
+ contravariant ==1.5.5,
+ contravariant-extras ==0.3.5.3,
+ control-bool ==0.2.1,
+ control-dsl ==0.2.1.3,
+ control-monad-free ==0.6.2,
+ control-monad-omega ==0.3.2,
+ convertible ==1.1.1.1,
+ cookie ==0.4.5,
+ copr-api ==0.1.0,
+ core-data ==0.3.6.0,
+ core-program ==0.4.6.4,
+ core-text ==0.3.8.0,
+ countable ==1.0,
+ covariance ==0.1.0.6,
+ cpphs ==1.20.9.1,
+ cprng-aes ==0.6.1,
+ cpu ==0.1.2,
+ cpuinfo ==0.1.0.2,
+ crackNum ==3.2,
+ crc32c ==0.0.0,
+ credential-store ==0.1.2,
+ criterion ==1.5.13.0,
+ criterion-measurement ==0.1.4.0,
+ cron ==0.7.0,
+ crypto-api ==0.13.3,
+ crypto-api-tests ==0.3,
+ crypto-cipher-tests ==0.0.11,
+ crypto-cipher-types ==0.0.9,
+ cryptocompare ==0.1.2,
+ crypto-enigma ==0.1.1.6,
+ cryptohash ==0.11.9,
+ cryptohash-cryptoapi ==0.1.4,
+ cryptohash-md5 ==0.11.101.0,
+ cryptohash-sha1 ==0.11.101.0,
+ cryptohash-sha256 ==0.11.102.1,
+ cryptohash-sha512 ==0.11.101.0,
+ cryptonite ==0.29,
+ cryptonite-conduit ==0.2.2,
+ cryptonite-openssl ==0.7,
+ crypto-pubkey-types ==0.4.3,
+ crypto-random ==0.0.9,
+ crypto-random-api ==0.2.0,
+ cryptostore ==0.2.2.0,
+ crypt-sha512 ==0,
+ csp ==1.4.0,
+ css-text ==0.1.3.0,
+ c-struct ==0.1.1.2,
+ csv ==0.1.2,
+ csv-conduit ==0.7.3.0,
+ ctrie ==0.2,
+ cubicbezier ==0.6.0.6,
+ cubicspline ==0.1.2,
+ cue-sheet ==2.0.2,
+ curl ==1.3.8,
+ curl-runnings ==0.17.0,
+ currencies ==0.2.0.0,
+ currency ==0.2.0.0,
+ cursor ==0.3.2.0,
+ cursor-brick ==0.1.0.1,
+ cursor-fuzzy-time ==0.0.0.0,
+ cursor-gen ==0.4.0.0,
+ cutter ==0.0,
+ cyclotomic ==1.1.1,
+ czipwith ==1.0.1.4,
+ d10 ==1.0.1.0,
+ data-accessor ==0.2.3,
+ data-accessor-mtl ==0.2.0.4,
+ data-accessor-transformers ==0.2.1.7,
+ data-binary-ieee754 ==0.4.4,
+ data-bword ==0.1.0.1,
+ data-checked ==0.3,
+ data-clist ==0.2,
+ data-default ==0.7.1.1,
+ data-default-class ==0.1.2.0,
+ data-default-extra ==0.1.0,
+ data-default-instances-base ==0.1.0.1,
+ data-default-instances-bytestring ==0.0.1,
+ data-default-instances-case-insensitive ==0.0.1,
+ data-default-instances-containers ==0.0.1,
+ data-default-instances-dlist ==0.0.1,
+ data-default-instances-new-base ==0.0.2,
+ data-default-instances-old-locale ==0.0.1,
+ data-default-instances-text ==0.0.1,
+ data-default-instances-unordered-containers ==0.0.1,
+ data-default-instances-vector ==0.0.1,
+ data-diverse ==4.7.0.0,
+ datadog ==0.3.0.0,
+ data-dword ==0.3.2.1,
+ data-endian ==0.1.1,
+ data-fix ==0.3.2,
+ data-forest ==0.1.0.9,
+ data-has ==0.4.0.0,
+ data-hash ==0.2.0.1,
+ data-interval ==2.1.1,
+ data-inttrie ==0.1.4,
+ data-lens-light ==0.1.2.3,
+ data-memocombinators ==0.5.1,
+ data-msgpack ==0.0.13,
+ data-msgpack-types ==0.0.3,
+ data-or ==1.0.0.7,
+ data-ordlist ==0.4.7.0,
+ data-ref ==0.0.2,
+ data-reify ==0.6.3,
+ data-serializer ==0.3.5,
+ datasets ==0.4.0,
+ data-sketches ==0.3.1.0,
+ data-sketches-core ==0.1.0.0,
+ data-textual ==0.3.0.3,
+ data-tree-print ==0.1.0.2,
+ dataurl ==0.1.0.0,
+ DAV ==1.3.4,
+ dawg-ord ==0.5.1.2,
+ dbcleaner ==0.1.3,
+ DBFunctor ==0.1.2.1,
+ dbus ==1.2.22,
+ dbus-hslogger ==0.1.0.1,
+ debian ==4.0.4,
+ debian-build ==0.10.2.1,
+ debug-trace-var ==0.2.0,
+ dec ==0.0.4,
+ Decimal ==0.5.2,
+ declarative ==0.5.4,
+ deepseq installed,
+ deepseq-generics ==0.2.0.0,
+ deferred-folds ==0.9.18.2,
+ dejafu ==2.4.0.3,
+ dense-linear-algebra ==0.1.0.0,
+ dependent-map ==0.4.0.0,
+ dependent-sum ==0.7.1.0,
+ dependent-sum-template ==0.1.1.1,
+ depq ==0.4.2,
+ deque ==0.4.4,
+ deriveJsonNoPrefix ==0.1.0.1,
+ derive-topdown ==0.0.3.0,
+ deriving-aeson ==0.2.8,
+ deriving-compat ==0.6.1,
+ derulo ==2.0.0.1,
+ detour-via-sci ==1.0.0,
+ df1 ==0.4,
+ dhall ==1.40.2,
+ dhall-bash ==1.0.39,
+ dhall-json ==1.7.9,
+ dhall-yaml ==1.2.10,
+ di ==1.3,
+ diagrams ==1.4.0.1,
+ diagrams-contrib ==1.4.4,
+ diagrams-core ==1.5.0,
+ diagrams-lib ==1.4.5.1,
+ diagrams-rasterific ==1.4.2.2,
+ diagrams-solve ==0.1.3,
+ diagrams-svg ==1.4.3.1,
+ di-core ==1.0.4,
+ dictionary-sharing ==0.1.0.0,
+ di-df1 ==1.2.1,
+ Diff ==0.4.1,
+ digest ==0.0.1.3,
+ digits ==0.3.1,
+ di-handle ==1.0.1,
+ dimensional ==1.4,
+ di-monad ==1.3.1,
+ directory installed,
+ directory-tree ==0.12.1,
+ direct-sqlite ==2.3.27,
+ dirichlet ==0.1.0.7,
+ discount ==0.1.1,
+ discover-instances ==0.1.0.0,
+ discrimination ==0.4.1,
+ disk-free-space ==0.1.0.1,
+ distributed-static ==0.3.9,
+ distribution-nixpkgs ==1.6.2,
+ distribution-opensuse ==1.1.3,
+ distributive ==0.6.2.1,
+ djinn-lib ==0.0.1.4,
+ dlist ==1.0,
+ dlist-instances ==0.1.1.1,
+ dlist-nonempty ==0.1.1,
+ dns ==4.0.1,
+ dockerfile ==0.2.0,
+ doclayout ==0.3.1.1,
+ docopt ==0.7.0.7,
+ doctemplates ==0.10.0.1,
+ doctest ==0.18.2,
+ doctest-discover ==0.2.0.0,
+ doctest-driver-gen ==0.3.0.5,
+ doctest-exitcode-stdio ==0.0,
+ doctest-extract ==0.1,
+ doctest-lib ==0.1,
+ doctest-parallel ==0.2.5,
+ doldol ==0.4.1.2,
+ do-list ==1.0.1,
+ domain ==0.1.1.3,
+ domain-core ==0.1.0.2,
+ domain-optics ==0.1.0.3,
+ do-notation ==0.1.0.2,
+ dot ==0.3,
+ dotenv ==0.9.0.2,
+ dotgen ==0.4.3,
+ dotnet-timespan ==0.0.1.0,
+ double-conversion ==2.0.4.1,
+ download ==0.3.2.7,
+ download-curl ==0.1.4,
+ DPutils ==0.1.1.0,
+ drifter ==0.3.0,
+ drifter-postgresql ==0.2.1,
+ drifter-sqlite ==0.1.0.0,
+ dsp ==0.2.5.1,
+ dual ==0.1.1.1,
+ dual-tree ==0.2.3.1,
+ dublincore-xml-conduit ==0.1.0.2,
+ dunai ==0.8.3,
+ duration ==0.2.0.0,
+ dvorak ==0.1.0.0,
+ dynamic-state ==0.3.1,
+ dyre ==0.9.1,
+ eap ==0.9.0.2,
+ Earley ==0.13.0.1,
+ easy-file ==0.2.2,
+ easy-logger ==0.1.0.7,
+ Ebnf2ps ==1.0.15,
+ echo ==0.1.4,
+ ecstasy ==0.2.1.0,
+ ed25519 ==0.0.5.0,
+ edit-distance ==0.2.2.1,
+ edit-distance-vector ==1.0.0.4,
+ editor-open ==0.6.0.0,
+ either ==5.0.2,
+ either-both ==0.1.1.1,
+ either-unwrap ==1.1,
+ ekg-core ==0.1.1.7,
+ elerea ==2.9.0,
+ elf ==0.31,
+ eliminators ==0.8,
+ elm-bridge ==0.8.0,
+ elm-core-sources ==1.0.0,
+ elm-export ==0.6.0.1,
+ elynx ==0.6.1.1,
+ elynx-markov ==0.6.1.1,
+ elynx-nexus ==0.6.1.1,
+ elynx-seq ==0.6.1.1,
+ elynx-tools ==0.6.1.1,
+ elynx-tree ==0.6.1.1,
+ email-validate ==2.3.2.16,
+ emd ==0.2.0.0,
+ emojis ==0.1.2,
+ enclosed-exceptions ==1.0.3,
+ ENIG ==0.0.1.0,
+ entropy ==0.4.1.7,
+ enummapset ==0.6.0.3,
+ enumset ==0.1,
+ enum-text ==0.5.3.0,
+ envelope ==0.2.2.0,
+ envparse ==0.4.1,
+ envy ==2.1.0.0,
+ eq ==4.3,
+ equal-files ==0.0.5.3,
+ equational-reasoning ==0.7.0.1,
+ equivalence ==0.4.1,
+ erf ==2.0.0.0,
+ errata ==0.4.0.0,
+ error ==0.3.0.0,
+ errorcall-eq-instance ==0.3.0,
+ error-or ==0.2.0.0,
+ error-or-utils ==0.2.0,
+ errors ==2.3.0,
+ errors-ext ==0.4.2,
+ ersatz ==0.4.12,
+ esqueleto ==3.5.7.0,
+ essence-of-live-coding ==0.2.6,
+ essence-of-live-coding-gloss ==0.2.6,
+ essence-of-live-coding-pulse ==0.2.6,
+ essence-of-live-coding-quickcheck ==0.2.6,
+ essence-of-live-coding-warp ==0.2.6,
+ eventful-core ==0.2.0,
+ eventful-memory ==0.2.0,
+ eventful-test-helpers ==0.2.0,
+ event-list ==0.1.2,
+ eventstore ==1.4.2,
+ every ==0.0.1,
+ evm-opcodes ==0.1.1,
+ exact-combinatorics ==0.2.0.11,
+ exact-pi ==0.5.0.2,
+ exception-hierarchy ==0.1.0.6,
+ exception-mtl ==0.4.0.1,
+ exceptions installed,
+ exception-transformers ==0.4.0.11,
+ exception-via ==0.1.0.0,
+ executable-hash ==0.2.0.4,
+ executable-path ==0.0.3.1,
+ exit-codes ==1.0.0,
+ exomizer ==1.0.0,
+ experimenter ==0.1.0.12,
+ expiring-cache-map ==0.0.6.1,
+ explainable-predicates ==0.1.2.2,
+ explicit-exception ==0.1.10,
+ exp-pairs ==0.2.1.0,
+ express ==1.0.10,
+ extended-reals ==0.2.4.0,
+ extensible-effects ==5.0.0.1,
+ extensible-exceptions ==0.1.1.4,
+ extra ==1.7.10,
+ extractable-singleton ==0.0.1,
+ extrapolate ==0.4.6,
+ fail ==4.9.0.0,
+ failable ==1.2.4.0,
+ fakedata ==1.0.3,
+ fakedata-parser ==0.1.0.0,
+ fakedata-quickcheck ==0.2.0,
+ fakefs ==0.3.0.2,
+ fakepull ==0.3.0.2,
+ faktory ==1.1.2.3,
+ fast-builder ==0.1.3.0,
+ fast-logger ==3.1.1,
+ fast-math ==1.0.2,
+ fastmemo ==0.1.0.1,
+ fclabels ==2.0.5.1,
+ feature-flags ==0.1.0.1,
+ fedora-dists ==2.0.0,
+ fedora-haskell-tools ==1.0,
+ feed ==1.3.2.1,
+ FenwickTree ==0.1.2.1,
+ fft ==0.1.8.7,
+ fftw-ffi ==0.1,
+ fgl ==5.7.0.3,
+ fields-json ==0.4.0.0,
+ file-embed ==0.0.15.0,
+ file-embed-lzma ==0,
+ filelock ==0.1.1.5,
+ filemanip ==0.3.6.3,
+ file-modules ==0.1.2.4,
+ filepath installed,
+ filepath-bytestring ==1.4.2.1.9,
+ file-path-th ==0.1.0.0,
+ filepattern ==0.1.2,
+ fileplow ==0.1.0.0,
+ filter-logger ==0.6.0.0,
+ filtrable ==0.1.6.0,
+ fin ==0.2.1,
+ FindBin ==0.0.5,
+ fingertree ==0.1.5.0,
+ finite-typelits ==0.1.6.0,
+ first-class-families ==0.8.0.1,
+ first-class-patterns ==0.3.2.5,
+ fitspec ==0.4.10,
+ fixed ==0.3,
+ fixed-length ==0.2.3,
+ fixed-vector ==1.2.1.0,
+ fixed-vector-hetero ==0.6.1.1,
+ fix-whitespace ==0.0.9,
+ flac ==0.2.0,
+ flac-picture ==0.1.2,
+ flags-applicative ==0.1.0.3,
+ flat ==0.4.4,
+ flat-mcmc ==1.5.2,
+ flay ==0.4,
+ flexible-defaults ==0.0.3,
+ FloatingHex ==0.5,
+ floatshow ==0.2.4,
+ flow ==2.0.0.0,
+ flush-queue ==1.0.0,
+ fmlist ==0.9.4,
+ fmt ==0.6.3.0,
+ fn ==0.3.0.2,
+ focus ==1.0.3,
+ focuslist ==0.1.1.0,
+ fold-debounce ==0.2.0.9,
+ fold-debounce-conduit ==0.2.0.6,
+ foldl ==1.4.12,
+ folds ==0.7.8,
+ follow-file ==0.0.3,
+ FontyFruity ==0.5.3.5,
+ force-layout ==0.4.0.6,
+ foreign-store ==0.2,
+ ForestStructures ==0.0.1.0,
+ forkable-monad ==0.2.0.3,
+ forma ==1.2.0,
+ format-numbers ==0.1.0.1,
+ formatting ==7.1.3,
+ fortran-src ==0.9.0,
+ foundation ==0.0.29,
+ fourmolu ==0.4.0.0,
+ Frames ==0.7.3,
+ free ==5.1.9,
+ free-categories ==0.2.0.2,
+ freenect ==1.2.1,
+ freer-simple ==1.2.1.2,
+ freetype2 ==0.2.0,
+ free-vl ==0.1.4,
+ friendly-time ==0.4.1,
+ frisby ==0.2.4,
+ from-sum ==0.2.3.0,
+ frontmatter ==0.1.0.2,
+ fsnotify ==0.3.0.1,
+ fsnotify-conduit ==0.1.1.1,
+ ftp-client ==0.5.1.4,
+ funcmp ==1.9,
+ function-builder ==0.3.0.1,
+ functor-classes-compat ==2.0.0.2,
+ functor-combinators ==0.4.1.0,
+ fused-effects ==1.1.2.0,
+ fusion-plugin ==0.2.4,
+ fusion-plugin-types ==0.1.0,
+ fuzzcheck ==0.1.1,
+ fuzzy ==0.1.0.1,
+ fuzzy-dates ==0.1.1.2,
+ fuzzyset ==0.2.3,
+ fuzzy-time ==0.2.0.1,
+ gauge ==0.2.5,
+ gd ==3000.7.3,
+ gdp ==0.0.3.0,
+ general-games ==1.1.1,
+ generic-aeson ==0.2.0.14,
+ generic-arbitrary ==0.2.2,
+ generic-constraints ==1.1.1.1,
+ generic-data ==0.9.2.1,
+ generic-data-surgery ==0.3.0.0,
+ generic-deriving ==1.14.2,
+ generic-functor ==0.2.0.0,
+ generic-lens ==2.2.1.0,
+ generic-lens-core ==2.2.1.0,
+ generic-monoid ==0.1.0.1,
+ generic-optics ==2.2.1.0,
+ GenericPretty ==1.2.2,
+ generic-random ==1.5.0.1,
+ generics-eot ==0.4.0.1,
+ generics-sop ==0.5.1.2,
+ generics-sop-lens ==0.2.0.1,
+ geniplate-mirror ==0.7.8,
+ genvalidity ==1.0.0.1,
+ genvalidity-bytestring ==1.0.0.0,
+ genvalidity-containers ==1.0.0.0,
+ genvalidity-criterion ==1.0.0.0,
+ genvalidity-hspec ==1.0.0.0,
+ genvalidity-hspec-aeson ==1.0.0.0,
+ genvalidity-hspec-binary ==1.0.0.0,
+ genvalidity-hspec-cereal ==1.0.0.0,
+ genvalidity-hspec-hashable ==1.0.0.0,
+ genvalidity-hspec-optics ==1.0.0.0,
+ genvalidity-hspec-persistent ==1.0.0.0,
+ genvalidity-mergeless ==0.3.0.0,
+ genvalidity-path ==1.0.0.0,
+ genvalidity-persistent ==1.0.0.0,
+ genvalidity-property ==1.0.0.0,
+ genvalidity-scientific ==1.0.0.0,
+ genvalidity-text ==1.0.0.1,
+ genvalidity-time ==1.0.0.0,
+ genvalidity-unordered-containers ==1.0.0.0,
+ genvalidity-uuid ==1.0.0.0,
+ genvalidity-vector ==1.0.0.0,
+ geodetics ==0.1.2,
+ geojson ==4.1.0,
+ getopt-generics ==0.13.0.4,
+ ghc installed,
+ ghc-bignum installed,
+ ghc-bignum-orphans ==0.1.1,
+ ghc-byteorder ==4.11.0.0.10,
+ ghc-check ==0.5.0.8,
+ ghc-compact ==0.1.0.0,
+ ghc-core ==0.5.6,
+ ghc-events ==0.17.0.3,
+ ghc-exactprint ==0.6.4,
+ ghcid ==0.8.7,
+ ghci-hexcalc ==0.1.1.0,
+ ghcjs-codemirror ==0.0.0.2,
+ ghcjs-perch ==0.3.3.3,
+ ghc-lib ==9.0.2.20211226,
+ ghc-lib-parser ==9.0.2.20211226,
+ ghc-lib-parser-ex ==9.0.0.6,
+ ghc-parser ==0.2.3.0,
+ ghc-paths ==0.1.0.12,
+ ghc-prim installed,
+ ghc-prof ==1.4.1.11,
+ ghc-source-gen ==0.4.3.0,
+ ghc-syntax-highlighter ==0.0.7.0,
+ ghc-tcplugins-extra ==0.4.2,
+ ghc-trace-events ==0.1.2.6,
+ ghc-typelits-extra ==0.4.3,
+ ghc-typelits-knownnat ==0.7.6,
+ ghc-typelits-natnormalise ==0.7.6,
+ ghc-typelits-presburger ==0.6.2.0,
+ ghost-buster ==0.1.1.0,
+ gi-atk ==2.0.24,
+ gi-cairo ==1.0.26,
+ gi-cairo-connector ==0.1.1,
+ gi-cairo-render ==0.1.1,
+ gi-dbusmenu ==0.4.10,
+ gi-dbusmenugtk3 ==0.4.11,
+ gi-freetype2 ==2.0.1,
+ gi-gdk ==3.0.25,
+ gi-gdkpixbuf ==2.0.28,
+ gi-gdkx11 ==3.0.12,
+ gi-gio ==2.0.29,
+ gi-glib ==2.0.26,
+ gi-gmodule ==2.0.2,
+ gi-gobject ==2.0.27,
+ gi-graphene ==1.0.4,
+ gi-gtk ==3.0.38,
+ gi-gtk-hs ==0.3.12,
+ gi-gtksource ==3.0.25,
+ gi-harfbuzz ==0.0.6,
+ gi-javascriptcore ==4.0.24,
+ ginger ==0.10.4.0,
+ gi-pango ==1.0.26,
+ githash ==0.1.6.2,
+ github ==0.27,
+ github-release ==2.0.0.1,
+ github-rest ==1.1.2,
+ github-types ==0.2.1,
+ github-webhooks ==0.15.0,
+ gitrev ==1.3.1,
+ gi-vte ==2.91.29,
+ gi-xlib ==2.0.11,
+ gl ==0.9,
+ glabrous ==2.0.5,
+ glasso ==0.1.0,
+ GLFW-b ==3.3.0.0,
+ Glob ==0.10.2,
+ glob-posix ==0.2.0.1,
+ gloss ==1.13.2.1,
+ gloss-algorithms ==1.13.0.3,
+ gloss-raster ==1.13.1.2,
+ gloss-rendering ==1.13.1.1,
+ GLURaw ==2.0.0.5,
+ GLUT ==2.7.0.16,
+ gmail-simple ==0.1.0.4,
+ gnuplot ==0.5.7,
+ goldplate ==0.2.0,
+ google-isbn ==1.0.3,
+ gopher-proxy ==0.1.1.3,
+ gothic ==0.1.8,
+ gotyno-hs ==1.1.0,
+ gpolyline ==0.1.0.1,
+ graph-core ==0.3.0.0,
+ graphite ==0.10.0.1,
+ graphs ==0.7.2,
+ graphula ==2.0.2.1,
+ graphviz ==2999.20.1.0,
+ graph-wrapper ==0.2.6.0,
+ gravatar ==0.8.1,
+ greskell ==2.0.0.0,
+ greskell-core ==1.0.0.0,
+ greskell-websocket ==1.0.0.0,
+ groom ==0.1.2.1,
+ groundhog ==0.12.0,
+ groundhog-postgresql ==0.12,
+ groundhog-sqlite ==0.12.0,
+ group-by-date ==0.1.0.4,
+ grouped-list ==0.2.3.0,
+ groups ==0.5.3,
+ gtk2hs-buildtools ==0.13.8.3,
+ gtk-sni-tray ==0.1.8.0,
+ gtk-strut ==0.1.3.0,
+ guarded-allocation ==0.0.1,
+ hackage-cli ==0.0.3.6,
+ hackage-db ==2.1.2,
+ hackage-security ==0.6.2.2,
+ haddock-library ==1.10.0,
+ hadoop-streaming ==0.2.0.3,
+ hakyll ==4.15.1.1,
+ hakyll-convert ==0.3.0.4,
+ hal ==0.4.10.1,
+ half ==0.3.1,
+ hall-symbols ==0.1.0.6,
+ hamilton ==0.1.0.3,
+ hamtsolo ==1.0.4,
+ HandsomeSoup ==0.4.2,
+ handwriting ==0.1.0.3,
+ happstack-server ==7.7.2,
+ happstack-server-tls ==7.2.1.3,
+ happy ==1.20.0,
+ happy-meta ==0.2.0.11,
+ HasBigDecimal ==0.1.1,
+ hasbolt ==0.1.6.2,
+ hashable ==1.3.5.0,
+ hashable-time ==0.3,
+ hashids ==1.0.2.7,
+ hashing ==0.1.0.1,
+ hashmap ==1.3.3,
+ hashtables ==1.2.4.2,
+ haskeline ==0.8.2,
+ haskell-awk ==1.2.0.1,
+ haskell-gi ==0.26.1,
+ haskell-gi-base ==0.26.1,
+ haskell-gi-overloading ==1.0,
+ haskell-lexer ==1.1,
+ haskell-lsp-types ==0.24.0.0,
+ haskell-src ==1.0.4,
+ haskell-src-exts ==1.23.1,
+ haskell-src-exts-util ==0.2.5,
+ haskell-src-meta ==0.8.10,
+ haskey-btree ==0.3.0.1,
+ haskintex ==0.8.0.0,
+ haskoin-core ==0.21.2,
+ hasktags ==0.72.0,
+ hasql ==1.5.1,
+ hasql-migration ==0.3.0,
+ hasql-notifications ==0.2.0.2,
+ hasql-optparse-applicative ==0.3.0.9,
+ hasql-pool ==0.5.2.2,
+ hasql-queue ==1.2.0.2,
+ hasql-th ==0.4.0.17,
+ hasql-transaction ==1.0.1.1,
+ has-transformers ==0.1.0.4,
+ hasty-hamiltonian ==1.3.4,
+ HaTeX ==3.22.3.1,
+ HaXml ==1.25.9,
+ haxr ==3000.11.4.1,
+ HCodecs ==0.5.2,
+ hdaemonize ==0.5.6,
+ HDBC ==2.4.0.4,
+ HDBC-session ==0.1.2.0,
+ headed-megaparsec ==0.2.1,
+ heap ==1.0.4,
+ heaps ==0.4,
+ heatshrink ==0.1.0.0,
+ hebrew-time ==0.1.2,
+ hedgehog ==1.0.5,
+ hedgehog-classes ==0.2.5.3,
+ hedgehog-corpus ==0.2.0,
+ hedgehog-fakedata ==0.0.1.5,
+ hedgehog-fn ==1.0,
+ hedgehog-quickcheck ==0.1.1,
+ hedis ==0.15.1,
+ hedn ==0.3.0.4,
+ here ==1.2.13,
+ heredoc ==0.2.0.0,
+ heterocephalus ==1.0.5.7,
+ hex ==0.2.0,
+ hexml ==0.3.4,
+ hexpat ==0.20.13,
+ hex-text ==0.1.0.6,
+ hformat ==0.3.3.1,
+ hfsevents ==0.1.6,
+ hgeometry ==0.14,
+ hgeometry-combinatorial ==0.14,
+ hid ==0.2.2,
+ hidapi ==0.1.8,
+ hie-bios ==0.9.1,
+ hi-file-parser ==0.1.3.0,
+ higher-leveldb ==0.6.0.0,
+ highlighting-kate ==0.6.4,
+ hindent ==5.3.4,
+ hinfo ==0.0.3.0,
+ hinotify ==0.4.1,
+ hint ==0.9.0.6,
+ histogram-fill ==0.9.1.0,
+ hjsmin ==0.2.0.4,
+ hkd-default ==1.1.0.0,
+ hkgr ==0.3,
+ hledger ==1.25,
+ hledger-iadd ==1.3.17,
+ hledger-interest ==1.6.3,
+ hledger-lib ==1.25,
+ hledger-stockquotes ==0.1.2.0,
+ hledger-ui ==1.25,
+ hledger-web ==1.25,
+ hlibcpuid ==0.2.0,
+ hlibgit2 ==0.18.0.16,
+ hlibsass ==0.1.10.1,
+ hlint ==3.3.6,
+ hmatrix ==0.20.2,
+ hmatrix-gsl ==0.19.0.1,
+ hmatrix-gsl-stats ==0.4.1.8,
+ hmatrix-morpheus ==0.1.1.2,
+ hmatrix-repa ==0.1.2.2,
+ hmatrix-vector-sized ==0.1.3.0,
+ hmm-lapack ==0.5,
+ HMock ==0.5.1.0,
+ hnock ==0.4.0,
+ hoauth2 ==2.3.0,
+ hocilib ==0.2.0,
+ hoogle ==5.0.18.3,
+ hopenssl ==2.2.4,
+ hopfli ==0.2.2.1,
+ horizontal-rule ==0.5.0.0,
+ hosc ==0.19.1,
+ hostname ==1.0,
+ hostname-validate ==1.0.0,
+ hourglass ==0.2.12,
+ hourglass-orphans ==0.1.0.0,
+ hp2pretty ==0.10,
+ hpack ==0.34.7,
+ hpack-dhall ==0.5.4,
+ hpc-codecov ==0.3.0.0,
+ HPDF ==1.6.0,
+ hpp ==0.6.5,
+ hpqtypes ==1.9.4.0,
+ hprotoc ==2.4.17,
+ hreader ==1.1.0,
+ hreader-lens ==0.1.3.0,
+ hruby ==0.5.0.0,
+ hsass ==0.8.0,
+ hs-bibutils ==6.10.0.0,
+ hsc2hs ==0.68.8,
+ hscolour ==1.24.4,
+ hsdns ==1.8,
+ hsemail ==2.2.1,
+ hset ==2.2.0,
+ hsexif ==0.6.1.9,
+ hs-GeoIP ==0.3,
+ hsignal ==0.2.7.5,
+ hsini ==0.5.1.2,
+ hsinstall ==2.7,
+ HSlippyMap ==3.0.1,
+ hslogger ==1.3.1.0,
+ hslua ==2.1.0,
+ hslua-aeson ==2.1.0,
+ hslua-classes ==2.1.0,
+ hslua-core ==2.1.0,
+ hslua-marshalling ==2.1.0,
+ hslua-module-doclayout ==1.0.4,
+ hslua-module-path ==1.0.3,
+ hslua-module-system ==1.0.2,
+ hslua-module-text ==1.0.2,
+ hslua-module-version ==1.0.2,
+ hslua-objectorientation ==2.1.0,
+ hslua-packaging ==2.1.0,
+ hsndfile ==0.8.0,
+ hsndfile-vector ==0.5.2,
+ HsOpenSSL ==0.11.7.2,
+ HsOpenSSL-x509-system ==0.1.0.4,
+ hsp ==0.10.0,
+ hspec ==2.8.5,
+ hspec-attoparsec ==0.1.0.2,
+ hspec-checkers ==0.1.0.2,
+ hspec-contrib ==0.5.1,
+ hspec-core ==2.8.5,
+ hspec-discover ==2.8.5,
+ hspec-expectations ==0.8.2,
+ hspec-expectations-json ==1.0.0.7,
+ hspec-expectations-lifted ==0.10.0,
+ hspec-expectations-pretty-diff ==0.7.2.6,
+ hspec-golden ==0.2.0.0,
+ hspec-golden-aeson ==0.9.0.0,
+ hspec-hedgehog ==0.0.1.2,
+ hspec-junit-formatter ==1.0.3.0,
+ hspec-leancheck ==0.0.6,
+ hspec-megaparsec ==2.2.0,
+ hspec-meta ==2.7.8,
+ hspec-need-env ==0.1.0.9,
+ hspec-parsec ==0,
+ hspec-smallcheck ==0.5.2,
+ hspec-tmp-proc ==0.5.1.2,
+ hspec-wai ==0.11.1,
+ hs-php-session ==0.0.9.3,
+ hsshellscript ==3.5.0,
+ hs-tags ==0.1.5.3,
+ hstatistics ==0.3.1,
+ HStringTemplate ==0.8.8,
+ HSvm ==0.1.1.3.25,
+ HsYAML ==0.2.1.1,
+ HsYAML-aeson ==0.2.0.1,
+ hsyslog ==5.0.2,
+ hsyslog-udp ==0.2.5,
+ htaglib ==1.2.0,
+ HTF ==0.15.0.0,
+ html ==1.0.1.2,
+ html-conduit ==1.3.2.2,
+ html-email-validate ==0.2.0.0,
+ html-entities ==1.1.4.6,
+ html-entity-map ==0.1.0.0,
+ HTTP ==4000.3.16,
+ http2 ==3.0.3,
+ http-api-data ==0.4.3,
+ http-api-data-qq ==0.1.0.0,
+ http-client ==0.7.13.1,
+ http-client-openssl ==0.3.3,
+ http-client-overrides ==0.1.1.0,
+ http-client-tls ==0.3.6.1,
+ http-common ==0.8.3.4,
+ http-conduit ==2.3.8,
+ http-date ==0.0.11,
+ http-directory ==0.1.10,
+ http-download ==0.2.0.0,
+ httpd-shed ==0.4.1.1,
+ http-io-streams ==0.1.6.1,
+ http-link-header ==1.2.1,
+ http-media ==0.8.0.0,
+ http-query ==0.1.3,
+ http-reverse-proxy ==0.6.0.1,
+ http-streams ==0.8.9.6,
+ http-types ==0.12.3,
+ human-readable-duration ==0.2.1.4,
+ HUnit ==1.6.2.0,
+ HUnit-approx ==1.1.1.1,
+ hunit-dejafu ==2.0.0.5,
+ hvect ==0.4.0.1,
+ hvega ==0.12.0.3,
+ hw-balancedparens ==0.4.1.2,
+ hw-bits ==0.7.2.2,
+ hw-conduit ==0.2.1.1,
+ hw-conduit-merges ==0.2.1.0,
+ hw-diagnostics ==0.0.1.0,
+ hw-dsv ==0.4.1.1,
+ hweblib ==0.6.3,
+ hw-eliasfano ==0.1.2.1,
+ hw-excess ==0.2.3.0,
+ hw-fingertree ==0.1.2.1,
+ hw-fingertree-strict ==0.1.2.1,
+ hw-hedgehog ==0.1.1.1,
+ hw-int ==0.0.2.0,
+ hw-ip ==2.4.2.1,
+ hw-json-simd ==0.1.1.1,
+ hw-json-simple-cursor ==0.1.1.1,
+ hw-json-standard-cursor ==0.2.3.2,
+ hwk ==0.6,
+ hw-kafka-client ==4.0.3,
+ hw-mquery ==0.2.1.1,
+ hworker ==0.1.0.1,
+ hw-packed-vector ==0.2.1.1,
+ hw-parser ==0.1.1.0,
+ hw-prim ==0.6.3.1,
+ hw-rankselect ==0.13.4.1,
+ hw-rankselect-base ==0.3.4.1,
+ hw-simd ==0.1.2.1,
+ hw-streams ==0.0.1.0,
+ hw-string-parse ==0.0.0.5,
+ hw-succinct ==0.1.0.1,
+ hw-xml ==0.5.1.1,
+ hxt ==9.3.1.22,
+ hxt-charproperties ==9.5.0.0,
+ hxt-css ==0.1.0.3,
+ hxt-curl ==9.1.1.1,
+ hxt-expat ==9.1.1,
+ hxt-http ==9.1.5.2,
+ hxt-regex-xmlschema ==9.2.0.7,
+ hxt-tagsoup ==9.1.4,
+ hxt-unicode ==9.0.2.4,
+ hybrid-vectors ==0.2.3,
+ hyper ==0.2.1.1,
+ hyperloglog ==0.4.6,
+ hyphenation ==0.8.2,
+ iconv ==0.4.1.3,
+ identicon ==0.2.2,
+ ieee754 ==0.8.0,
+ if ==0.1.0.0,
+ iff ==0.0.6,
+ ihaskell ==0.10.2.2,
+ ihaskell-hvega ==0.5.0.3,
+ ihs ==0.1.0.3,
+ ilist ==0.4.0.1,
+ imagesize-conduit ==1.1,
+ Imlib ==0.1.2,
+ immortal ==0.3,
+ immortal-queue ==0.1.0.1,
+ inbox ==0.2.0,
+ include-file ==0.1.0.4,
+ incremental-parser ==0.5.0.3,
+ indents ==0.5.0.1,
+ indexed ==0.1.3,
+ indexed-containers ==0.1.0.2,
+ indexed-list-literals ==0.2.1.3,
+ indexed-profunctors ==0.1.1,
+ indexed-traversable ==0.1.2,
+ indexed-traversable-instances ==0.1.1.1,
+ infer-license ==0.2.0,
+ inflections ==0.4.0.6,
+ influxdb ==1.9.2.2,
+ ini ==0.4.2,
+ inj ==1.0,
+ inline-c ==0.9.1.6,
+ inline-c-cpp ==0.5.0.0,
+ inliterate ==0.1.0,
+ input-parsers ==0.2.3.2,
+ insert-ordered-containers ==0.2.5.1,
+ inspection-testing ==0.4.6.1,
+ instance-control ==0.1.2.0,
+ int-cast ==0.2.0.0,
+ integer-gmp installed,
+ integer-logarithms ==1.0.3.1,
+ integer-roots ==1.0.2.0,
+ integration ==0.2.1,
+ intern ==0.9.4,
+ interpolate ==0.2.1,
+ interpolatedstring-perl6 ==1.0.2,
+ interpolation ==0.1.1.2,
+ IntervalMap ==0.6.1.2,
+ intervals ==0.9.2,
+ intro ==0.9.0.0,
+ intset-imperative ==0.1.0.0,
+ invariant ==0.5.6,
+ invert ==1.0.0.2,
+ invertible ==0.2.0.7,
+ invertible-grammar ==0.1.3.2,
+ io-machine ==0.2.0.0,
+ io-manager ==0.1.0.3,
+ io-memoize ==1.1.1.0,
+ io-region ==0.1.1,
+ io-storage ==0.3,
+ io-streams ==1.5.2.2,
+ ip6addr ==1.0.3,
+ iproute ==1.7.12,
+ IPv6Addr ==2.0.5,
+ ipynb ==0.2,
+ ipython-kernel ==0.10.2.2,
+ irc ==0.6.1.0,
+ irc-client ==1.1.2.2,
+ irc-conduit ==0.3.0.5,
+ irc-ctcp ==0.1.3.1,
+ isbn ==1.1.0.3,
+ islink ==0.1.0.0,
+ iso3166-country-codes ==0.20140203.8,
+ iso639 ==0.1.0.3,
+ iso8601-time ==0.1.5,
+ isocline ==1.0.9,
+ iterable ==3.0,
+ ix-shapable ==0.1.0,
+ jack ==0.7.2,
+ jailbreak-cabal ==1.3.6,
+ jalaali ==1.0.0.0,
+ java-adt ==0.2018.11.4,
+ jira-wiki-markup ==1.4.0,
+ jose ==0.9,
+ js-chart ==2.9.4.1,
+ js-dgtable ==0.5.2,
+ js-flot ==0.8.3,
+ js-jquery ==3.3.1,
+ json ==0.10,
+ json-feed ==2.0.0.3,
+ jsonifier ==0.2.1.1,
+ jsonpath ==0.2.1.0,
+ json-stream ==0.4.4.1,
+ JuicyPixels ==3.3.7,
+ JuicyPixels-blurhash ==0.1.0.3,
+ JuicyPixels-extra ==0.5.2,
+ JuicyPixels-scale-dct ==0.1.2,
+ junit-xml ==0.1.0.2,
+ justified-containers ==0.3.0.0,
+ jwt ==0.11.0,
+ kan-extensions ==5.2.5,
+ kanji ==3.5.0,
+ katip ==0.8.7.2,
+ katip-logstash ==0.1.0.2,
+ katip-wai ==0.1.2.0,
+ kazura-queue ==0.1.0.4,
+ keep-alive ==0.2.1.0,
+ keycode ==0.2.2,
+ keys ==3.12.3,
+ ki ==0.2.0.1,
+ kind-apply ==0.3.2.1,
+ kind-generics ==0.4.1.4,
+ kind-generics-th ==0.2.2.3,
+ kleene ==0.1,
+ kmeans ==0.1.3,
+ koji ==0.0.2,
+ krank ==0.2.3,
+ l10n ==0.1.0.1,
+ labels ==0.3.3,
+ lackey ==2.0.0.2,
+ LambdaHack ==0.11.0.0,
+ lame ==0.2.0,
+ language-bash ==0.9.2,
+ language-c ==0.9.1,
+ language-c-quote ==0.13,
+ language-docker ==10.4.3,
+ language-dot ==0.1.1,
+ language-glsl ==0.3.0,
+ language-java ==0.2.9,
+ language-javascript ==0.7.1.0,
+ language-nix ==2.2.0,
+ language-protobuf ==1.0.1,
+ language-python ==0.5.8,
+ language-thrift ==0.12.0.1,
+ lapack ==0.5,
+ lapack-carray ==0.0.3,
+ lapack-comfort-array ==0.0.1,
+ lapack-ffi ==0.0.3,
+ lapack-ffi-tools ==0.1.3,
+ lapack-hmatrix ==0.0.0.1,
+ largeword ==1.2.5,
+ latex ==0.1.0.4,
+ lattices ==2.0.3,
+ lawful ==0.1.0.0,
+ lazy-csv ==0.5.1,
+ lazyio ==0.1.0.4,
+ lazysmallcheck ==0.6,
+ lca ==0.4,
+ leancheck ==0.9.10,
+ leancheck-instances ==0.0.4,
+ leapseconds-announced ==2017.1.0.1,
+ learn-physics ==0.6.5,
+ lens ==5.0.1,
+ lens-action ==0.2.6,
+ lens-aeson ==1.1.3,
+ lens-csv ==0.1.1.0,
+ lens-family ==2.1.2,
+ lens-family-core ==2.1.2,
+ lens-family-th ==0.5.2.1,
+ lens-misc ==0.0.2.0,
+ lens-process ==0.4.0.0,
+ lens-properties ==4.11.1,
+ lens-regex ==0.1.3,
+ lens-regex-pcre ==1.1.0.0,
+ lentil ==1.5.4.0,
+ LetsBeRational ==1.0.0.0,
+ leveldb-haskell ==0.6.5,
+ lexer-applicative ==2.1.0.2,
+ libBF ==0.6.4,
+ libffi ==0.1,
+ libgit ==0.3.1,
+ libgraph ==1.14,
+ libmpd ==0.10.0.0,
+ liboath-hs ==0.0.1.2,
+ libyaml ==0.1.2,
+ LibZip ==1.0.1,
+ lifted-async ==0.10.2.3,
+ lifted-base ==0.2.3.12,
+ lift-generics ==0.2.1,
+ lift-type ==0.1.0.1,
+ line ==4.0.1,
+ linear ==1.21.10,
+ linear-base ==0.1.0,
+ linear-circuit ==0.1.0.4,
+ linebreak ==1.1.0.1,
+ linenoise ==0.3.2,
+ linux-capabilities ==0.1.1.0,
+ linux-file-extents ==0.2.0.0,
+ linux-namespaces ==0.1.3.0,
+ List ==0.6.2,
+ ListLike ==4.7.7,
+ list-predicate ==0.1.0.1,
+ listsafe ==0.1.0.1,
+ list-singleton ==2.0.0.0,
+ list-t ==1.0.5.3,
+ list-transformer ==1.0.8,
+ ListTree ==0.2.3,
+ ListZipper ==1.2.0.2,
+ literatex ==0.2.0.2,
+ little-rio ==0.2.2,
+ llvm-hs-pure ==9.0.0,
+ lmdb ==0.2.5,
+ load-env ==0.2.1.0,
+ loc ==0.1.3.16,
+ locators ==0.3.0.3,
+ loch-th ==0.2.2,
+ lockfree-queue ==0.2.3.1,
+ log-domain ==0.13.2,
+ logfloat ==0.13.4,
+ logging ==3.0.5,
+ logging-facade ==0.3.1,
+ logging-facade-syslog ==1,
+ logict ==0.7.1.0,
+ logstash ==0.1.0.3,
+ loop ==0.3.0,
+ lpeg ==1.0.3,
+ lrucache ==1.2.0.1,
+ lrucaching ==0.3.3,
+ lsp ==1.4.0.0,
+ lsp-test ==0.14.0.2,
+ lsp-types ==1.4.0.1,
+ lua ==2.1.0,
+ lua-arbitrary ==1.0.1,
+ lucid ==2.11.1,
+ lucid-cdn ==0.2.2.0,
+ lucid-extras ==0.2.2,
+ lukko ==0.1.1.3,
+ lxd-client-config ==0.1.0.1,
+ lz4 ==0.2.3.1,
+ lz4-frame-conduit ==0.1.0.1,
+ lzma ==0.0.0.3,
+ lzma-clib ==5.2.2,
+ lzma-conduit ==1.2.3,
+ machines ==0.7.3,
+ magic ==1.1,
+ magico ==0.0.2.3,
+ mainland-pretty ==0.7.1,
+ main-tester ==0.2.0.1,
+ managed ==1.0.9,
+ mandrill ==0.5.6.0,
+ markdown ==0.1.17.5,
+ markdown-unlit ==0.5.1,
+ markov-chain ==0.0.3.4,
+ massiv ==1.0.2.0,
+ massiv-io ==1.0.0.1,
+ massiv-persist ==1.0.0.3,
+ massiv-serialise ==1.0.0.2,
+ massiv-test ==1.0.0.0,
+ mathexpr ==0.3.1.0,
+ math-extras ==0.1.1.0,
+ math-functions ==0.3.4.2,
+ matplotlib ==0.7.7,
+ matrices ==0.5.0,
+ matrix ==0.3.6.1,
+ matrix-as-xyz ==0.1.2.2,
+ matrix-market-attoparsec ==0.1.1.3,
+ matrix-static ==0.3,
+ maximal-cliques ==0.1.1,
+ mbox ==0.3.4,
+ mbox-utility ==0.0.3.1,
+ mbtiles ==0.6.0.0,
+ mcmc ==0.6.2.2,
+ mcmc-types ==1.0.3,
+ median-stream ==0.7.0.0,
+ med-module ==0.1.2.2,
+ megaparsec ==9.2.1,
+ megaparsec-tests ==9.2.1,
+ mega-sdist ==0.4.2.1,
+ memory ==0.16.0,
+ MemoTrie ==0.6.10,
+ mercury-api ==0.1.0.2,
+ mergeless ==0.3.0.0,
+ mersenne-random ==1.0.0.1,
+ mersenne-random-pure64 ==0.2.2.0,
+ messagepack ==0.5.5,
+ metrics ==0.4.1.1,
+ mfsolve ==0.3.2.1,
+ microaeson ==0.1.0.1,
+ microlens ==0.4.12.0,
+ microlens-aeson ==2.4.1,
+ microlens-contra ==0.1.0.2,
+ microlens-ghc ==0.4.13.2,
+ microlens-mtl ==0.2.0.2,
+ microlens-platform ==0.4.2.1,
+ microlens-process ==0.2.0.2,
+ microlens-th ==0.4.3.10,
+ microspec ==0.2.1.3,
+ microstache ==1.0.2.2,
+ midair ==0.2.0.1,
+ midi ==0.2.2.3,
+ midi-alsa ==0.2.1,
+ mighty-metropolis ==2.0.0,
+ mime-mail ==0.5.1,
+ mime-mail-ses ==0.4.3,
+ mime-types ==0.1.0.9,
+ minimal-configuration ==0.1.4,
+ minimorph ==0.3.0.1,
+ minio-hs ==1.6.0,
+ miniutter ==0.5.1.2,
+ min-max-pqueue ==0.1.0.2,
+ mintty ==0.1.4,
+ missing-foreign ==0.1.1,
+ MissingH ==1.5.0.1,
+ mixed-types-num ==0.5.10,
+ mmap ==0.5.9,
+ mmark ==0.0.7.6,
+ mmark-cli ==0.0.5.1,
+ mmark-ext ==0.2.1.5,
+ mmorph ==1.1.5,
+ mnist-idx ==0.1.3.1,
+ mnist-idx-conduit ==0.4.0.0,
+ mockery ==0.3.5,
+ mock-time ==0.1.0,
+ mod ==0.1.2.2,
+ model ==0.5,
+ modern-uri ==0.3.4.4,
+ modular ==0.1.0.8,
+ monad-chronicle ==1.0.1,
+ monad-control ==1.0.3.1,
+ monad-control-aligned ==0.0.1.1,
+ monad-coroutine ==0.9.2,
+ monad-extras ==0.6.0,
+ monadic-arrays ==0.2.2,
+ monad-journal ==0.8.1,
+ monadlist ==0.0.2,
+ monad-logger ==0.3.36,
+ monad-logger-json ==0.1.0.0,
+ monad-logger-logstash ==0.2.0.2,
+ monad-logger-prefix ==0.1.12,
+ monad-loops ==0.4.3,
+ monad-memo ==0.5.4,
+ monadoid ==0.0.3,
+ monad-par ==0.3.5,
+ monad-parallel ==0.7.2.5,
+ monad-par-extras ==0.3.3,
+ monad-peel ==0.2.1.2,
+ monad-primitive ==0.1,
+ monad-products ==4.0.1,
+ MonadPrompt ==1.0.0.5,
+ MonadRandom ==0.5.3,
+ monad-resumption ==0.1.4.0,
+ monad-skeleton ==0.2,
+ monad-st ==0.2.4.1,
+ monads-tf ==0.1.0.3,
+ monad-time ==0.3.1.0,
+ mongoDB ==2.7.1.1,
+ monoidal-containers ==0.6.2.0,
+ monoid-extras ==0.6.1,
+ monoid-subclasses ==1.1.3,
+ monoid-transformer ==0.0.4,
+ monomer ==1.3.0.0,
+ mono-traversable ==1.0.15.3,
+ mono-traversable-instances ==0.1.1.0,
+ mono-traversable-keys ==0.2.0,
+ more-containers ==0.2.2.2,
+ morpheus-graphql-tests ==0.18.0,
+ moss ==0.2.0.1,
+ mountpoints ==1.0.2,
+ mpi-hs ==0.7.2.0,
+ mpi-hs-binary ==0.1.1.0,
+ mpi-hs-cereal ==0.1.0.0,
+ mtl installed,
+ mtl-compat ==0.2.2,
+ mtl-prelude ==2.0.3.1,
+ multiarg ==0.30.0.10,
+ multi-containers ==0.2,
+ multimap ==1.2.1,
+ multipart ==0.2.1,
+ multiset ==0.3.4.3,
+ multistate ==0.8.0.4,
+ murmur3 ==1.0.5,
+ murmur-hash ==0.1.0.10,
+ MusicBrainz ==0.4.1,
+ mutable-containers ==0.3.4,
+ mwc-probability ==2.3.1,
+ mwc-random ==0.15.0.2,
+ mwc-random-monad ==0.7.3.1,
+ mx-state-codes ==1.0.0.0,
+ mysql ==0.2.1,
+ mysql-simple ==0.4.8.1,
+ n2o ==0.11.1,
+ n2o-nitro ==0.11.2,
+ nagios-check ==0.3.2,
+ named ==0.3.0.1,
+ names-th ==0.3.0.1,
+ nano-erl ==0.1.0.1,
+ NanoID ==3.2.1,
+ nanospec ==0.2.2,
+ nanovg ==0.8.1.0,
+ nats ==1.1.2,
+ natural-arithmetic ==0.1.3.0,
+ natural-induction ==0.2.0.0,
+ natural-sort ==0.1.2,
+ natural-transformation ==0.4,
+ ndjson-conduit ==0.1.0.5,
+ neat-interpolation ==0.5.1.3,
+ netcode-io ==0.0.3,
+ netlib-carray ==0.1,
+ netlib-comfort-array ==0.0.0.2,
+ netlib-ffi ==0.1.1,
+ netpbm ==1.0.4,
+ netrc ==0.2.0.0,
+ nettle ==0.3.0,
+ netwire ==5.0.3,
+ netwire-input ==0.0.7,
+ netwire-input-glfw ==0.0.11,
+ network ==3.1.2.7,
+ network-bsd ==2.8.1.0,
+ network-byte-order ==0.1.6,
+ network-conduit-tls ==1.3.2,
+ network-info ==0.2.1,
+ network-ip ==0.3.0.3,
+ network-messagepack-rpc ==0.1.2.0,
+ network-messagepack-rpc-websocket ==0.1.1.1,
+ network-run ==0.2.4,
+ network-simple ==0.4.5,
+ network-simple-tls ==0.4,
+ network-transport ==0.5.4,
+ network-transport-composed ==0.2.1,
+ network-transport-tcp ==0.8.0,
+ network-transport-tests ==0.3.0,
+ network-uri ==2.6.4.1,
+ network-wait ==0.1.2.0,
+ newtype ==0.2.2.0,
+ newtype-generics ==0.6.2,
+ nfc ==0.1.1,
+ nicify-lib ==1.0.1,
+ NineP ==0.0.2.1,
+ nix-derivation ==1.1.2,
+ nix-paths ==1.0.1,
+ NoHoed ==0.1.1,
+ nonce ==1.0.7,
+ nondeterminism ==1.4,
+ non-empty ==0.3.3,
+ nonempty-containers ==0.3.4.4,
+ nonemptymap ==0.0.6.0,
+ non-empty-sequence ==0.2.0.4,
+ nonempty-vector ==0.2.1.0,
+ nonempty-zipper ==1.0.0.4,
+ non-negative ==0.1.2,
+ normalization-insensitive ==2.0.2,
+ not-gloss ==0.7.7.0,
+ no-value ==1.0.0.0,
+ nowdoc ==0.1.1.0,
+ nqe ==0.6.4,
+ nsis ==0.3.3,
+ numbers ==3000.2.0.2,
+ numeric-extras ==0.1,
+ numeric-limits ==0.1.0.0,
+ numeric-prelude ==0.4.4,
+ numeric-quest ==0.2.0.2,
+ numhask ==0.10.1.0,
+ numhask-array ==0.10.1,
+ numhask-space ==0.10.0.0,
+ NumInstances ==1.4,
+ numtype-dk ==0.5.0.3,
+ nuxeo ==0.3.2,
+ nvim-hs ==2.2.0.2,
+ ObjectName ==1.1.0.2,
+ ochintin-daicho ==0.3.4.2,
+ o-clock ==1.2.1.1,
+ oeis ==0.3.10,
+ ofx ==0.4.4.0,
+ old-locale ==1.0.0.7,
+ old-time ==1.1.0.3,
+ once ==0.4,
+ one-liner ==2.0,
+ one-liner-instances ==0.1.3.0,
+ OneTuple ==0.3.1,
+ Only ==0.1,
+ oo-prototypes ==0.1.0.0,
+ opaleye ==0.9.3.2,
+ OpenAL ==1.7.0.5,
+ openapi3 ==3.2.2,
+ open-browser ==0.2.1.0,
+ openexr-write ==0.1.0.2,
+ OpenGL ==3.0.3.0,
+ OpenGLRaw ==3.3.4.1,
+ openpgp-asciiarmor ==0.1.2,
+ opensource ==0.1.1.0,
+ openssl-streams ==1.2.3.0,
+ opentelemetry ==0.7.0,
+ opentelemetry-extra ==0.7.0,
+ opentelemetry-lightstep ==0.7.0,
+ opentelemetry-wai ==0.7.0,
+ operational ==0.2.4.1,
+ operational-class ==0.3.0.0,
+ opml-conduit ==0.9.0.0,
+ optics ==0.4.2,
+ optics-core ==0.4.1,
+ optics-extra ==0.4.2.1,
+ optics-th ==0.4.1,
+ optics-vl ==0.2.1,
+ optima ==0.4.0.3,
+ optional-args ==1.0.2,
+ options ==1.2.1.1,
+ optparse-applicative ==0.16.1.0,
+ optparse-enum ==1.0.0.0,
+ optparse-generic ==1.4.7,
+ optparse-simple ==0.1.1.4,
+ optparse-text ==0.1.1.0,
+ OrderedBits ==0.0.2.0,
+ ordered-containers ==0.2.2,
+ ormolu ==0.3.1.0,
+ overhang ==1.0.0,
+ packcheck ==0.6.0,
+ pager ==0.1.1.0,
+ pagination ==0.2.2,
+ pagure ==0.1.1,
+ pagure-cli ==0.2.1,
+ palette ==0.3.0.2,
+ pandoc ==2.17.1.1,
+ pandoc-csv2table ==1.0.9,
+ pandoc-dhall-decoder ==0.1.0.1,
+ pandoc-lua-marshal ==0.1.7,
+ pandoc-plot ==1.4.1,
+ pandoc-throw ==0.1.0.0,
+ pandoc-types ==1.22.2.1,
+ pantry ==0.5.6,
+ parallel ==3.2.2.0,
+ parallel-io ==0.3.5,
+ parameterized ==0.5.0.0,
+ parseargs ==0.2.0.9,
+ parsec installed,
+ parsec-class ==1.0.0.0,
+ parsec-numbers ==0.1.0,
+ parsec-numeric ==0.1.0.0,
+ ParsecTools ==0.0.2.0,
+ parser-combinators ==1.3.0,
+ parser-combinators-tests ==1.3.0,
+ parsers ==0.12.11,
+ partial-handler ==1.0.3,
+ partial-isomorphisms ==0.2.3.0,
+ partial-order ==0.2.0.0,
+ partial-semigroup ==0.5.1.14,
+ password ==3.0.1.0,
+ password-instances ==3.0.0.0,
+ password-types ==1.0.0.0,
+ path ==0.9.2,
+ path-binary-instance ==0.1.0.1,
+ path-dhall-instance ==0.2.1.0,
+ path-extensions ==0.1.1.0,
+ path-extra ==0.2.0,
+ path-formatting ==0.1.0.0,
+ path-io ==1.7.0,
+ path-like ==0.2.0.2,
+ path-pieces ==0.2.1,
+ pathtype ==0.8.1.1,
+ path-utils ==0.1.1.0,
+ pathwalk ==0.3.1.2,
+ pattern-arrows ==0.0.2,
+ pava ==0.1.1.4,
+ pcg-random ==0.1.3.7,
+ pcre2 ==2.1.1.1,
+ pcre-heavy ==1.0.0.2,
+ pcre-light ==0.4.1.0,
+ pcre-utils ==0.1.8.2,
+ pdc ==0.1.1,
+ pdfinfo ==1.5.4,
+ pdf-toolbox-content ==0.1.1,
+ pdf-toolbox-core ==0.1.1,
+ pdf-toolbox-document ==0.1.2,
+ peano ==0.1.0.1,
+ pem ==0.2.4,
+ percent-format ==0.0.2,
+ peregrin ==0.3.3,
+ perf ==0.9.0,
+ perfect-hash-generator ==0.2.0.6,
+ persist ==0.1.1.5,
+ persistent ==2.13.3.5,
+ persistent-discover ==0.1.0.5,
+ persistent-documentation ==0.1.0.4,
+ persistent-mongoDB ==2.13.0.1,
+ persistent-mtl ==0.4.0.0,
+ persistent-mysql ==2.13.1.3,
+ persistent-pagination ==0.1.1.2,
+ persistent-postgresql ==2.13.5.0,
+ persistent-qq ==2.12.0.2,
+ persistent-redis ==2.13.0.1,
+ persistent-refs ==0.4,
+ persistent-sqlite ==2.13.1.0,
+ persistent-template ==2.12.0.0,
+ persistent-test ==2.13.1.2,
+ pg-harness-client ==0.6.0,
+ pgp-wordlist ==0.1.0.3,
+ pg-transact ==0.3.2.0,
+ phantom-state ==0.2.1.2,
+ phatsort ==0.5.0.1,
+ picosat ==0.1.6,
+ pid1 ==0.1.3.0,
+ pinch ==0.4.1.2,
+ pipes ==4.3.16,
+ pipes-attoparsec ==0.5.1.5,
+ pipes-bytestring ==2.1.7,
+ pipes-concurrency ==2.0.14,
+ pipes-csv ==1.4.3,
+ pipes-extras ==1.0.15,
+ pipes-fastx ==0.3.0.0,
+ pipes-fluid ==0.6.0.1,
+ pipes-group ==1.0.12,
+ pipes-http ==1.0.6,
+ pipes-mongodb ==0.1.0.0,
+ pipes-ordered-zip ==1.2.1,
+ pipes-parse ==3.0.9,
+ pipes-random ==1.0.0.5,
+ pipes-safe ==2.3.4,
+ pipes-wai ==3.2.0,
+ pkgtreediff ==0.5.0,
+ place-cursor-at ==1.0.1,
+ placeholders ==0.1,
+ plaid ==0.1.0.4,
+ plotlyhs ==0.2.1,
+ pointed ==5.0.4,
+ pointedlist ==0.6.1,
+ pointless-fun ==1.1.0.8,
+ poll ==0.0.0.2,
+ poly ==0.5.0.0,
+ poly-arity ==0.1.0,
+ polynomials-bernstein ==1.1.2,
+ polyparse ==1.13,
+ polysemy ==1.6.0.0,
+ polysemy-extra ==0.2.0.0,
+ polysemy-fs ==0.1.0.0,
+ polysemy-fskvstore ==0.1.1.0,
+ polysemy-kvstore ==0.1.3.0,
+ polysemy-methodology ==0.2.1.0,
+ polysemy-path ==0.2.1.0,
+ polysemy-plugin ==0.4.1.1,
+ polysemy-several ==0.1.0.0,
+ polysemy-socket ==0.0.2.0,
+ polysemy-uncontrolled ==0.1.1.0,
+ polysemy-video ==0.2.0.1,
+ polysemy-vinyl ==0.1.5.0,
+ polysemy-webserver ==0.2.1.1,
+ pooled-io ==0.0.2.2,
+ port-utils ==0.2.1.0,
+ posix-paths ==0.3.0.0,
+ possibly ==1.0.0.0,
+ postgres-options ==0.2.0.0,
+ postgresql-binary ==0.12.4.4,
+ postgresql-libpq ==0.9.4.3,
+ postgresql-libpq-notify ==0.2.0.0,
+ postgresql-migration ==0.2.1.3,
+ postgresql-orm ==0.5.1,
+ postgresql-query ==3.9.0,
+ postgresql-schema ==0.1.14,
+ postgresql-simple ==0.6.4,
+ postgresql-simple-url ==0.2.1.0,
+ postgresql-syntax ==0.4.1,
+ postgresql-typed ==0.6.2.1,
+ post-mess-age ==0.2.1.0,
+ pptable ==0.3.0.0,
+ pqueue ==1.4.2.0,
+ prefix-units ==0.2.0,
+ prelude-compat ==0.0.0.2,
+ prelude-safeenum ==0.1.1.3,
+ pretty installed,
+ prettyclass ==1.0.0.0,
+ pretty-class ==1.0.1.1,
+ pretty-diff ==0.4.0.3,
+ pretty-hex ==1.1,
+ prettyprinter ==1.7.1,
+ prettyprinter-ansi-terminal ==1.1.3,
+ prettyprinter-compat-annotated-wl-pprint ==1.1,
+ prettyprinter-compat-ansi-wl-pprint ==1.0.2,
+ prettyprinter-compat-wl-pprint ==1.0.1,
+ prettyprinter-convert-ansi-wl-pprint ==1.1.2,
+ pretty-relative-time ==0.3.0.0,
+ pretty-show ==1.10,
+ pretty-simple ==4.0.0.0,
+ pretty-sop ==0.2.0.3,
+ pretty-terminal ==0.1.0.0,
+ pretty-types ==0.4.0.0,
+ primes ==0.2.1.0,
+ primitive ==0.7.3.0,
+ primitive-addr ==0.1.0.2,
+ PrimitiveArray ==0.10.1.1,
+ primitive-extras ==0.10.1.5,
+ primitive-offset ==0.2.0.0,
+ primitive-unaligned ==0.1.1.1,
+ primitive-unlifted ==0.1.3.1,
+ prim-uniq ==0.2,
+ print-console-colors ==0.1.0.0,
+ probability ==0.2.7,
+ process installed,
+ process-extras ==0.7.4,
+ product-profunctors ==0.11.0.3,
+ profiterole ==0.1,
+ profunctors ==5.6.2,
+ projectroot ==0.2.0.1,
+ project-template ==0.2.1.0,
+ prometheus ==2.2.3,
+ prometheus-client ==1.1.0,
+ prometheus-metrics-ghc ==1.0.1.2,
+ prometheus-wai-middleware ==1.0.1.0,
+ promises ==0.3,
+ prompt ==0.1.1.2,
+ prospect ==0.1.0.0,
+ protobuf ==0.2.1.3,
+ protobuf-simple ==0.1.1.1,
+ protocol-buffers ==2.4.17,
+ protocol-buffers-descriptor ==2.4.17,
+ protocol-radius ==0.0.1.1,
+ protocol-radius-test ==0.1.0.1,
+ proto-lens ==0.7.1.1,
+ proto-lens-arbitrary ==0.1.2.11,
+ proto-lens-optparse ==0.1.1.9,
+ proto-lens-protobuf-types ==0.7.1.2,
+ proto-lens-protoc ==0.7.1.1,
+ proto-lens-runtime ==0.7.0.2,
+ proto-lens-setup ==0.4.0.6,
+ protolude ==0.3.2,
+ proxied ==0.3.1,
+ psql-helpers ==0.1.0.0,
+ psqueues ==0.2.7.3,
+ pthread ==0.2.1,
+ ptr-poker ==0.1.2.8,
+ pulse-simple ==0.1.14,
+ pureMD5 ==2.1.4,
+ purescript-bridge ==0.14.0.0,
+ pusher-http-haskell ==2.1.0.11,
+ pvar ==1.0.0.0,
+ PyF ==0.10.2.0,
+ qchas ==1.1.0.1,
+ qm-interpolated-string ==0.3.1.0,
+ qrcode-core ==0.9.5,
+ qrcode-juicypixels ==0.8.3,
+ quadratic-irrational ==0.1.1,
+ QuasiText ==0.1.2.6,
+ queue-sheet ==0.7.0.2,
+ quickbench ==1.0.1,
+ QuickCheck ==2.14.2,
+ quickcheck-arbitrary-adt ==0.3.1.0,
+ quickcheck-assertions ==0.3.0,
+ quickcheck-classes ==0.6.5.0,
+ quickcheck-classes-base ==0.6.2.0,
+ quickcheck-higherorder ==0.1.0.1,
+ quickcheck-instances ==0.3.28,
+ quickcheck-io ==0.2.0,
+ quickcheck-simple ==0.1.1.1,
+ quickcheck-special ==0.1.0.6,
+ quickcheck-text ==0.1.2.1,
+ quickcheck-transformer ==0.3.1.1,
+ quickcheck-unicode ==1.0.1.0,
+ quicklz ==1.5.0.11,
+ quiet ==0.2,
+ quote-quot ==0.2.1.0,
+ radius ==0.7.1.0,
+ rainbow ==0.34.2.2,
+ rainbox ==0.26.0.0,
+ ral ==0.2.1,
+ rampart ==2.0.0.2,
+ ramus ==0.1.2,
+ rando ==0.0.0.4,
+ random ==1.2.1.1,
+ random-bytestring ==0.1.4,
+ random-fu ==0.3.0.0,
+ random-shuffle ==0.0.4,
+ random-source ==0.3.0.11,
+ random-tree ==0.6.0.5,
+ range ==0.3.0.2,
+ Ranged-sets ==0.4.0,
+ range-set-list ==0.1.3.1,
+ rank1dynamic ==0.4.1,
+ rank2classes ==1.4.4,
+ Rasterific ==0.7.5.4,
+ rasterific-svg ==0.3.3.2,
+ ratel ==2.0.0.3,
+ rate-limit ==1.4.2,
+ ratel-wai ==2.0.0.0,
+ rattle ==0.2,
+ rattletrap ==11.2.4,
+ Rattus ==0.5.0.1,
+ rawfilepath ==1.0.1,
+ rawstring-qm ==0.2.3.0,
+ raw-strings-qq ==1.1,
+ rcu ==0.2.6,
+ rdtsc ==1.3.0.1,
+ re2 ==0.3,
+ readable ==0.3.1,
+ read-editor ==0.1.0.2,
+ read-env-var ==1.0.0.0,
+ reanimate-svg ==0.13.0.1,
+ rebase ==1.15.0.3,
+ record-dot-preprocessor ==0.2.15,
+ record-hasfield ==1.0,
+ records-sop ==0.1.1.0,
+ record-wrangler ==0.1.1.0,
+ rec-smallarray ==0.1.0.0,
+ recursion-schemes ==5.2.2.2,
+ redact ==0.4.0.0,
+ reddit-scrape ==0.0.1,
+ redis-io ==1.1.0,
+ redis-resp ==1.0.0,
+ reducers ==3.12.4,
+ refact ==0.3.0.2,
+ ref-fd ==0.5,
+ refined ==0.6.3,
+ reflection ==2.1.6,
+ reform ==0.2.7.5,
+ reform-blaze ==0.2.4.4,
+ reform-hamlet ==0.0.5.3,
+ reform-happstack ==0.2.5.5,
+ RefSerialize ==0.4.0,
+ ref-tf ==0.5.0.1,
+ regex ==1.1.0.2,
+ regex-applicative ==0.3.4,
+ regex-applicative-text ==0.1.0.1,
+ regex-base ==0.94.0.2,
+ regex-compat ==0.95.2.1,
+ regex-pcre ==0.95.0.0,
+ regex-pcre-builtin ==0.95.2.3.8.44,
+ regex-posix ==0.96.0.1,
+ regex-posix-clib ==2.7,
+ regex-tdfa ==1.3.2,
+ regex-with-pcre ==1.1.0.2,
+ reinterpret-cast ==0.1.0,
+ rel8 ==1.3.1.0,
+ reliable-io ==0.0.2,
+ relude ==1.0.0.1,
+ renderable ==0.2.0.1,
+ reorder-expression ==0.1.0.0,
+ repa ==3.4.1.5,
+ repa-io ==3.4.1.2,
+ replace-attoparsec ==1.4.5.0,
+ replace-megaparsec ==1.4.5.0,
+ repline ==0.4.2.0,
+ req ==3.10.0,
+ req-conduit ==1.0.1,
+ require ==0.4.11,
+ rerebase ==1.15.0.3,
+ reroute ==0.6.0.0,
+ rescue ==0.4.2.1,
+ resistor-cube ==0.0.1.4,
+ resolv ==0.1.2.0,
+ resource-pool ==0.2.3.2,
+ resourcet ==1.2.6,
+ result ==0.2.6.0,
+ retry ==0.9.3.0,
+ rev-state ==0.1.2,
+ rfc1751 ==0.1.3,
+ rfc5051 ==0.2,
+ rg ==1.4.0.0,
+ rhbzquery ==0.4.4,
+ riak-protobuf ==0.25.0.0,
+ rio ==0.1.22.0,
+ rio-orphans ==0.1.2.0,
+ rio-prettyprint ==0.1.1.0,
+ rng-utils ==0.3.1,
+ roc-id ==0.1.0.0,
+ rocksdb-haskell ==1.0.1,
+ rocksdb-haskell-jprupp ==2.1.4,
+ rocksdb-query ==0.4.2,
+ roles ==0.2.1.0,
+ rollbar ==1.1.3,
+ rope-utf16-splay ==0.3.2.0,
+ rosezipper ==0.2,
+ rot13 ==0.2.0.1,
+ rpmbuild-order ==0.4.8,
+ rpm-nvr ==0.1.2,
+ rp-tree ==0.7.1,
+ RSA ==2.4.1,
+ rss-conduit ==0.6.0.1,
+ runmemo ==1.0.0.1,
+ rvar ==0.3.0.1,
+ s3-signer ==0.5.0.0,
+ safe ==0.3.19,
+ safe-coloured-text ==0.1.0.0,
+ safe-coloured-text-terminfo ==0.0.0.0,
+ safecopy ==0.10.4.2,
+ safe-decimal ==0.2.1.0,
+ safe-exceptions ==0.1.7.3,
+ safe-exceptions-checked ==0.1.0,
+ safe-foldable ==0.1.0.0,
+ safeio ==0.0.5.0,
+ safe-json ==1.1.3.1,
+ safe-money ==0.9.1,
+ SafeSemaphore ==0.10.1,
+ salak ==0.3.6,
+ salak-yaml ==0.3.5.3,
+ saltine ==0.1.1.1,
+ salve ==2.0.0.0,
+ sample-frame ==0.0.3,
+ sample-frame-np ==0.0.4.1,
+ sampling ==0.3.5,
+ sandwich ==0.1.0.10,
+ sandwich-quickcheck ==0.1.0.6,
+ sandwich-slack ==0.1.0.6,
+ say ==0.1.0.1,
+ sbp ==4.1.6,
+ sbv ==8.17,
+ scalpel ==0.6.2,
+ scalpel-core ==0.6.2,
+ scanf ==0.1.0.0,
+ scanner ==0.3.1,
+ scheduler ==2.0.0.1,
+ SciBaseTypes ==0.1.1.0,
+ scientific ==0.3.7.0,
+ scotty ==0.12,
+ scrypt ==0.5.0,
+ sdl2 ==2.5.3.0,
+ sdl2-ttf ==2.1.3,
+ search-algorithms ==0.3.2,
+ secp256k1-haskell ==0.6.1,
+ securemem ==0.1.10,
+ selda ==0.5.1.0,
+ selda-sqlite ==0.1.7.1,
+ selections ==0.3.0.0,
+ selective ==0.5,
+ semialign ==1.2.0.1,
+ semialign-indexed ==1.2,
+ semialign-optics ==1.2,
+ semigroupoid-extras ==5,
+ semigroupoids ==5.3.7,
+ semigroups ==0.19.2,
+ semirings ==0.6,
+ semiring-simple ==1.0.0.1,
+ semver ==0.4.0.1,
+ sendfile ==0.7.11.4,
+ seqalign ==0.2.0.4,
+ seqid ==0.6.2,
+ seqid-streams ==0.7.2,
+ sequence-formats ==1.6.6.1,
+ sequenceTools ==1.5.2,
+ serf ==0.1.1.0,
+ serialise ==0.2.5.0,
+ servant ==0.19,
+ servant-auth ==0.4.1.0,
+ servant-auth-client ==0.4.1.0,
+ servant-auth-docs ==0.2.10.0,
+ servant-auth-server ==0.4.7.0,
+ servant-auth-swagger ==0.2.10.1,
+ servant-auth-wordpress ==1.0.0.2,
+ servant-blaze ==0.9.1,
+ servant-checked-exceptions ==2.2.0.1,
+ servant-checked-exceptions-core ==2.2.0.1,
+ servant-client ==0.19,
+ servant-client-core ==0.19,
+ servant-conduit ==0.15.1,
+ servant-docs ==0.12,
+ servant-elm ==0.7.2,
+ servant-exceptions ==0.2.1,
+ servant-exceptions-server ==0.2.1,
+ servant-foreign ==0.15.4,
+ servant-JuicyPixels ==0.3.1.0,
+ servant-lucid ==0.9.0.5,
+ servant-machines ==0.15.1,
+ servant-multipart ==0.12.1,
+ servant-multipart-api ==0.12.1,
+ servant-multipart-client ==0.12.1,
+ servant-openapi3 ==2.0.1.5,
+ servant-pipes ==0.15.3,
+ servant-rawm ==1.0.0.0,
+ servant-ruby ==0.9.0.0,
+ servant-server ==0.19.1,
+ servant-static-th ==1.0.0.0,
+ servant-subscriber ==0.7.0.0,
+ servant-swagger ==1.1.11,
+ servant-swagger-ui ==0.3.5.4.5.0,
+ servant-swagger-ui-core ==0.3.5,
+ servant-swagger-ui-redoc ==0.3.4.1.22.3,
+ servant-websockets ==2.0.0,
+ servant-xml ==1.0.1.4,
+ serversession ==1.0.3,
+ serversession-frontend-wai ==1.0.1,
+ servius ==1.2.3.0,
+ ses-html ==0.4.0.0,
+ set-cover ==0.1.1,
+ setenv ==0.1.1.3,
+ setlocale ==1.0.0.10,
+ set-monad ==0.3.0.0,
+ sets ==0.0.6.2,
+ sexp-grammar ==2.3.3.1,
+ sexpr-parser ==0.2.2.0,
+ SHA ==1.6.4.4,
+ shake ==0.19.6,
+ shake-language-c ==0.12.0,
+ shake-plus ==0.3.4.0,
+ shakespeare ==2.0.30,
+ shared-memory ==0.2.0.0,
+ ShellCheck ==0.8.0,
+ shell-conduit ==5.0.0,
+ shell-escape ==0.2.0,
+ shellmet ==0.0.4.1,
+ shelltestrunner ==1.9,
+ shell-utility ==0.1,
+ shelly ==1.10.0,
+ shikensu ==0.4.1,
+ should-not-typecheck ==2.1.0,
+ show-combinators ==0.2.0.0,
+ siggy-chardust ==1.0.0,
+ signal ==0.1.0.4,
+ silently ==1.2.5.2,
+ simple-affine-space ==0.1.1,
+ simple-cabal ==0.1.3,
+ simple-cmd ==0.2.7,
+ simple-cmd-args ==0.1.8,
+ simple-log ==0.9.12,
+ simple-media-timestamp ==0.2.0.0,
+ simple-media-timestamp-attoparsec ==0.1.0.0,
+ simple-media-timestamp-formatting ==0.1.1.0,
+ simple-reflect ==0.3.3,
+ simple-sendfile ==0.2.30,
+ simple-vec3 ==0.6.0.1,
+ since ==0.0.0,
+ singleton-bool ==0.1.6,
+ singleton-nats ==0.4.6,
+ singletons ==3.0.1,
+ singletons-base ==3.0,
+ singletons-presburger ==0.6.1.0,
+ singletons-th ==3.0,
+ siphash ==1.0.3,
+ Sit ==0.2022.3.18,
+ sitemap-gen ==0.1.0.0,
+ sized ==1.0.0.1,
+ skein ==1.0.9.4,
+ skews ==0.1.0.3,
+ skip-var ==0.1.1.0,
+ skylighting ==0.12.3.1,
+ skylighting-core ==0.12.3.1,
+ slack-progressbar ==0.1.0.1,
+ slave-thread ==1.1.0.1,
+ slist ==0.2.0.0,
+ slynx ==0.6.1.1,
+ smallcheck ==1.2.1,
+ smash ==0.1.3,
+ smash-microlens ==0.1.0.2,
+ smtp-mail ==0.3.0.0,
+ snap-blaze ==0.2.1.5,
+ snap-core ==1.0.5.0,
+ snappy ==0.2.0.2,
+ snowflake ==0.1.1.1,
+ soap ==0.2.3.6,
+ soap-openssl ==0.1.0.2,
+ soap-tls ==0.1.1.4,
+ socket ==0.8.3.0,
+ socks ==0.6.1,
+ solana-staking-csvs ==0.1.2.0,
+ some ==1.0.3,
+ some-dict-of ==0.1.0.2,
+ sop-core ==0.5.0.2,
+ sort ==1.0.0.0,
+ sorted-list ==0.2.1.0,
+ sound-collage ==0.2.1,
+ sourcemap ==0.1.7,
+ sox ==0.2.3.1,
+ soxlib ==0.0.3.1,
+ spacecookie ==1.0.0.1,
+ sparse-linear-algebra ==0.3.1,
+ spatial-math ==0.5.0.1,
+ special-values ==0.1.0.0,
+ speculate ==0.4.14,
+ speedy-slice ==0.3.2,
+ Spintax ==0.3.6,
+ splice ==0.6.1.1,
+ splint ==1.0.2.0,
+ split ==0.2.3.5,
+ splitmix ==0.1.0.4,
+ splitmix-distributions ==0.9.0.0,
+ split-record ==0.1.1.4,
+ Spock-api ==0.14.0.0,
+ spoon ==0.3.1,
+ spreadsheet ==0.1.3.8,
+ sqlcli ==0.2.2.0,
+ sqlcli-odbc ==0.2.0.1,
+ sqlite-simple ==0.4.18.2,
+ sql-words ==0.1.6.4,
+ squeather ==0.8.0.0,
+ srcloc ==0.6.0.1,
+ srt ==0.1.1.0,
+ srt-attoparsec ==0.1.0.0,
+ srt-dhall ==0.1.0.0,
+ srt-formatting ==0.1.0.0,
+ stache ==2.3.3,
+ stack-all ==0.4.0.1,
+ stack-clean-old ==0.4.6,
+ stackcollapse-ghc ==0.0.1.4,
+ stack-templatizer ==0.1.0.2,
+ state-codes ==0.1.3,
+ stateref ==0.3,
+ StateVar ==1.2.2,
+ stateWriter ==0.3.0,
+ static-text ==0.2.0.7,
+ statistics ==0.16.1.0,
+ status-notifier-item ==0.3.1.0,
+ stb-image-redux ==0.2.1.2,
+ step-function ==0.2,
+ stitch ==0.6.0.0,
+ stm installed,
+ stm-chans ==3.0.0.6,
+ stm-conduit ==4.0.1,
+ stm-containers ==1.2,
+ stm-delay ==0.1.1.1,
+ stm-extras ==0.1.0.3,
+ stm-hamt ==1.2.0.8,
+ stm-lifted ==2.5.0.0,
+ STMonadTrans ==0.4.6,
+ stm-split ==0.0.2.1,
+ stm-supply ==0.2.0.0,
+ stopwatch ==0.1.0.6,
+ storable-complex ==0.2.3.0,
+ storable-endian ==0.2.6.1,
+ storable-record ==0.0.6,
+ storable-tuple ==0.0.3.3,
+ storablevector ==0.2.13.1,
+ store ==0.7.16,
+ store-core ==0.4.4.4,
+ store-streaming ==0.2.0.3,
+ Stream ==0.4.7.2,
+ streaming ==0.2.3.1,
+ streaming-attoparsec ==1.0.0.1,
+ streaming-bytestring ==0.2.3,
+ streaming-cassava ==0.2.0.0,
+ streaming-commons ==0.2.2.4,
+ streamly ==0.8.1.1,
+ streamly-bytestring ==0.1.4,
+ streams ==3.3,
+ streamt ==0.5.0.1,
+ strict ==0.4.0.1,
+ strict-concurrency ==0.2.4.3,
+ strict-list ==0.1.7,
+ strict-tuple ==0.1.5.1,
+ strict-tuple-lens ==0.2,
+ strict-wrapper ==0.0.0.0,
+ stringbuilder ==0.5.1,
+ string-class ==0.1.7.0,
+ string-combinators ==0.6.0.5,
+ string-conv ==0.2.0,
+ string-conversions ==0.4.0.1,
+ string-interpolate ==0.3.1.2,
+ string-qq ==0.0.4,
+ string-random ==0.1.4.2,
+ stringsearch ==0.3.6.6,
+ string-transform ==1.1.1,
+ stripe-concepts ==1.0.3.1,
+ stripe-scotty ==1.1.0.2,
+ stripe-signature ==1.0.0.14,
+ stripe-wreq ==1.0.1.14,
+ strive ==6.0.0.3,
+ strong-path ==1.1.4.0,
+ structs ==0.1.6,
+ structured ==0.1.1,
+ structured-cli ==2.7.0.1,
+ subcategories ==0.2.0.0,
+ sum-type-boilerplate ==0.1.1,
+ sundown ==0.6,
+ superbuffer ==0.3.1.2,
+ svg-builder ==0.1.1,
+ SVGFonts ==1.8.0.1,
+ svg-tree ==0.6.2.4,
+ swagger2 ==2.8.4,
+ swish ==0.10.2.0,
+ syb ==0.7.2.1,
+ sydtest-discover ==0.0.0.1,
+ symbol ==0.2.4,
+ symengine ==0.1.2.0,
+ symmetry-operations-symbols ==0.0.2.1,
+ synthesizer-alsa ==0.5.0.6,
+ synthesizer-core ==0.8.2.1,
+ synthesizer-dimensional ==0.8.1,
+ synthesizer-midi ==0.6.1.1,
+ sysinfo ==0.1.1,
+ system-argv0 ==0.1.1,
+ systemd ==2.3.0,
+ system-fileio ==0.3.16.4,
+ system-filepath ==0.4.14,
+ system-info ==0.5.2,
+ tabular ==0.2.2.8,
+ tagchup ==0.4.1.1,
+ tagged ==0.8.6.1,
+ tagged-binary ==0.2.0.1,
+ tagged-identity ==0.1.3,
+ tagged-transformer ==0.8.2,
+ tagshare ==0.0,
+ tagsoup ==0.14.8,
+ tagstream-conduit ==0.5.6,
+ tao ==1.0.0,
+ tao-example ==1.0.0,
+ tar ==0.5.1.1,
+ tar-conduit ==0.3.2,
+ tardis ==0.4.4.0,
+ tasty ==1.4.2.3,
+ tasty-ant-xml ==1.1.8,
+ tasty-bench ==0.3.2,
+ tasty-dejafu ==2.0.0.8,
+ tasty-discover ==4.2.4,
+ tasty-expected-failure ==0.12.3,
+ tasty-fail-fast ==0.0.3,
+ tasty-focus ==1.0.1,
+ tasty-golden ==2.3.5,
+ tasty-hedgehog ==1.1.0.0,
+ tasty-hslua ==1.0.2,
+ tasty-hspec ==1.2.0.1,
+ tasty-html ==0.4.1.4,
+ tasty-hunit ==0.10.0.3,
+ tasty-hunit-compat ==0.2.0.1,
+ tasty-inspection-testing ==0.1.0.1,
+ tasty-kat ==0.0.3,
+ tasty-leancheck ==0.0.2,
+ tasty-lua ==1.0.2,
+ tasty-program ==1.0.5,
+ tasty-quickcheck ==0.10.2,
+ tasty-rerun ==1.1.18,
+ tasty-silver ==3.3.1.1,
+ tasty-smallcheck ==0.8.2,
+ tasty-tap ==0.1.0,
+ tasty-test-reporter ==0.1.1.4,
+ tasty-th ==0.1.7,
+ tasty-wai ==0.1.2.0,
+ TCache ==0.12.1,
+ tce-conf ==1.3,
+ tcp-streams ==1.0.1.1,
+ tdigest ==0.2.1.1,
+ teardown ==0.5.0.1,
+ telegram-bot-simple ==0.4.5,
+ template-haskell installed,
+ template-haskell-compat-v0208 ==0.1.9,
+ temporary ==1.3,
+ temporary-rc ==1.2.0.3,
+ temporary-resourcet ==0.1.0.1,
+ tensorflow-test ==0.1.0.0,
+ tensors ==0.1.5,
+ termbox ==0.3.0,
+ terminal-progress-bar ==0.4.1,
+ terminal-size ==0.3.3,
+ terminfo installed,
+ termonad ==4.2.0.1,
+ test-framework ==0.8.2.0,
+ test-framework-hunit ==0.3.0.2,
+ test-framework-leancheck ==0.0.4,
+ test-framework-quickcheck2 ==0.3.0.5,
+ test-framework-smallcheck ==0.2,
+ test-fun ==0.1.0.0,
+ testing-type-modifiers ==0.1.0.1,
+ texmath ==0.12.4,
+ text installed,
+ text-ansi ==0.1.1,
+ text-binary ==0.2.1.1,
+ text-builder ==0.6.6.5,
+ text-builder-dev ==0.2.1,
+ text-conversions ==0.3.1.1,
+ text-icu ==0.7.1.0,
+ text-latin1 ==0.3.1,
+ text-ldap ==0.1.1.14,
+ textlocal ==0.1.0.5,
+ text-manipulate ==0.3.1.0,
+ text-metrics ==0.3.2,
+ text-postgresql ==0.0.3.1,
+ text-printer ==0.5.0.2,
+ text-regex-replace ==0.1.1.4,
+ text-rope ==0.1,
+ text-short ==0.1.5,
+ text-show ==3.9.7,
+ text-show-instances ==3.8.6,
+ text-zipper ==0.11,
+ tfp ==1.0.2,
+ tf-random ==0.5,
+ th-abstraction ==0.4.4.0,
+ th-bang-compat ==0.0.1.0,
+ th-compat ==0.1.4,
+ th-constraint-compat ==0.0.1.0,
+ th-desugar ==1.12,
+ th-env ==0.1.1,
+ these ==1.1.1.1,
+ these-lens ==1.0.1.2,
+ these-optics ==1.0.1.2,
+ these-skinny ==0.7.5,
+ th-expand-syns ==0.4.10.0,
+ th-extras ==0.0.0.6,
+ th-lego ==0.3.0.1,
+ th-lift ==0.8.2,
+ th-lift-instances ==0.1.19,
+ th-nowq ==0.1.0.5,
+ th-orphans ==0.13.13,
+ th-printf ==0.7,
+ thread-hierarchy ==0.3.0.2,
+ thread-local-storage ==0.2,
+ threads ==0.5.1.6,
+ thread-supervisor ==0.2.0.0,
+ th-reify-compat ==0.0.1.5,
+ th-reify-many ==0.1.10,
+ through-text ==0.1.0.0,
+ th-strict-compat ==0.1.0.1,
+ th-test-utils ==1.1.1,
+ th-utilities ==0.2.4.3,
+ tidal ==1.7.10,
+ tile ==0.3.0.0,
+ time installed,
+ time-compat ==1.9.6.1,
+ timeit ==2.0,
+ timelens ==0.2.0.2,
+ time-lens ==0.4.0.2,
+ time-locale-compat ==0.1.1.5,
+ time-locale-vietnamese ==1.0.0.0,
+ time-manager ==0.0.0,
+ time-parsers ==0.1.2.1,
+ timerep ==2.0.1.0,
+ timers-tick ==0.5.0.1,
+ timer-wheel ==0.3.0,
+ timespan ==0.4.0.0,
+ time-units ==1.0.0,
+ timezone-olson ==0.2.1,
+ timezone-olson-th ==0.1.0.11,
+ timezone-series ==0.1.13,
+ tinylog ==0.15.0,
+ titlecase ==1.0.1,
+ tldr ==0.9.2,
+ tls ==1.5.8,
+ tls-debug ==0.4.8,
+ tls-session-manager ==0.0.4,
+ tlynx ==0.6.1.1,
+ tmapchan ==0.0.3,
+ tmapmvar ==0.0.4,
+ tmp-postgres ==1.34.1.0,
+ tmp-proc ==0.5.1.2,
+ tophat ==1.0.5.1,
+ topograph ==1.0.0.1,
+ torsor ==0.1,
+ tostring ==0.2.1.1,
+ tracing ==0.0.7.3,
+ tracing-control ==0.0.7.3,
+ transaction ==0.1.1.3,
+ transformers installed,
+ transformers-base ==0.4.6,
+ transformers-bifunctors ==0.1,
+ transformers-compat ==0.6.6,
+ transformers-either ==0.1.2,
+ transformers-fix ==1.0,
+ transient ==0.7.0.0,
+ traverse-with-class ==1.0.1.1,
+ tree-diff ==0.2.1.1,
+ tree-fun ==0.8.1.0,
+ tree-view ==0.5.1,
+ trifecta ==2.1.2,
+ trimdent ==0.1.0.0,
+ triplesec ==0.2.2.1,
+ trivial-constraint ==0.7.0.0,
+ tsv2csv ==0.1.0.2,
+ ttc ==1.1.1.1,
+ ttl-hashtables ==1.4.1.0,
+ ttrie ==0.1.2.2,
+ tuple ==0.3.0.2,
+ tuples ==0.1.0.0,
+ tuples-homogenous-h98 ==0.1.1.0,
+ tuple-sop ==0.3.1.0,
+ tuple-th ==0.2.5,
+ turtle ==1.5.25,
+ twitter-conduit ==0.6.1,
+ twitter-types ==0.11.0,
+ twitter-types-lens ==0.11.0,
+ TypeCompose ==0.9.14,
+ typed-process ==0.2.10.1,
+ type-equality ==1,
+ type-errors ==0.2.0.0,
+ type-errors-pretty ==0.0.1.2,
+ type-fun ==0.1.3,
+ type-hint ==0.1,
+ type-level-integers ==0.0.1,
+ type-level-kv-list ==1.1.0,
+ type-level-natural-number ==2.0,
+ type-level-numbers ==0.1.1.2,
+ typelits-witnesses ==0.4.0.0,
+ type-map ==0.1.7.0,
+ type-natural ==1.1.0.1,
+ typenums ==0.1.4,
+ type-of-html ==1.6.2.0,
+ type-of-html-static ==0.1.0.2,
+ type-operators ==0.2.0.0,
+ type-spec ==0.4.0.0,
+ typography-geometry ==1.0.1.0,
+ tz ==0.1.3.6,
+ tzdata ==0.2.20220815.0,
+ ua-parser ==0.7.7.0,
+ uglymemo ==0.1.0.1,
+ unagi-chan ==0.4.1.4,
+ unbounded-delays ==0.1.1.1,
+ unbound-generics ==0.4.2,
+ unboxed-ref ==0.4.0.0,
+ unboxing-vector ==0.2.0.0,
+ uncaught-exception ==0.1.0,
+ unconstrained ==0.1.0.2,
+ unexceptionalio ==0.5.1,
+ unexceptionalio-trans ==0.5.1,
+ unicode ==0.0.1.1,
+ unicode-collation ==0.1.3.2,
+ unicode-data ==0.3.0,
+ unicode-show ==0.1.1.1,
+ unicode-transforms ==0.4.0.1,
+ unidecode ==0.1.0.4,
+ unification-fd ==0.11.2,
+ union ==0.1.2,
+ union-angle ==0.1.0.1,
+ union-find ==0.2,
+ unipatterns ==0.0.0.0,
+ uniplate ==1.6.13,
+ uniq-deep ==1.2.1,
+ unique ==0.0.1,
+ unique-logic ==0.4,
+ unique-logic-tf ==0.5.1,
+ unit-constraint ==0.0.0,
+ units-parser ==0.1.1.4,
+ universe ==1.2.2,
+ universe-base ==1.1.3,
+ universe-dependent-sum ==1.3,
+ universe-instances-extended ==1.1.3,
+ universe-reverse-instances ==1.1.1,
+ universe-some ==1.2.1,
+ universum ==1.7.3,
+ unix installed,
+ unix-bytestring ==0.3.7.7,
+ unix-compat ==0.5.4,
+ unix-time ==0.4.7,
+ unliftio ==0.2.22.0,
+ unliftio-core ==0.2.0.1,
+ unliftio-path ==0.0.2.0,
+ unliftio-pool ==0.2.2.0,
+ unliftio-streams ==0.1.1.1,
+ unlit ==0.4.0.0,
+ unordered-containers ==0.2.17.0,
+ unsafe ==0.0,
+ urbit-hob ==0.3.3,
+ uri-bytestring ==0.3.3.1,
+ uri-bytestring-aeson ==0.1.0.8,
+ uri-encode ==1.5.0.7,
+ url ==2.1.3,
+ users ==0.5.0.0,
+ users-postgresql-simple ==0.5.0.2,
+ users-test ==0.5.0.1,
+ utf8-light ==0.4.2,
+ utf8-string ==1.0.2,
+ utility-ht ==0.0.16,
+ uuid ==1.3.15,
+ uuid-types ==1.0.5,
+ valida ==1.1.0,
+ valida-base ==0.2.0,
+ validate-input ==0.5.0.0,
+ validation ==1.1.2,
+ validity ==0.12.0.1,
+ validity-bytestring ==0.4.1.1,
+ validity-containers ==0.5.0.4,
+ validity-path ==0.4.0.1,
+ validity-persistent ==0.0.0.0,
+ validity-primitive ==0.0.0.1,
+ validity-scientific ==0.2.0.3,
+ validity-text ==0.3.1.3,
+ validity-time ==0.5.0.0,
+ validity-unordered-containers ==0.2.0.3,
+ validity-uuid ==0.1.0.3,
+ validity-vector ==0.2.0.3,
+ valor ==1.0.0.0,
+ variable-media-field ==0.1.0.0,
+ variable-media-field-dhall ==0.1.0.0,
+ variable-media-field-optics ==0.1.0.0,
+ varying ==0.8.1.0,
+ vault ==0.3.1.5,
+ vcs-ignore ==0.0.2.0,
+ vec ==0.4.1,
+ vector ==0.12.3.1,
+ vector-algorithms ==0.8.0.4,
+ vector-binary-instances ==0.2.5.2,
+ vector-buffer ==0.4.1,
+ vector-builder ==0.3.8.4,
+ vector-bytes-instances ==0.1.1,
+ vector-circular ==0.1.4,
+ vector-instances ==3.4,
+ vector-mmap ==0.0.3,
+ vector-rotcev ==0.1.0.1,
+ vector-sized ==1.5.0,
+ vector-space ==0.16,
+ vector-split ==1.0.0.2,
+ vector-th-unbox ==0.2.2,
+ vectortiles ==1.5.1,
+ verbosity ==0.4.0.0,
+ versions ==5.0.3,
+ vformat ==0.14.1.0,
+ vformat-time ==0.1.0.0,
+ ViennaRNAParser ==1.3.3,
+ vinyl ==0.13.3,
+ vinyl-loeb ==0.0.1.0,
+ vivid ==0.5.2.0,
+ vivid-osc ==0.5.0.0,
+ vivid-supercollider ==0.4.1.2,
+ void ==0.7.3,
+ vty ==5.33,
+ wai ==3.2.3,
+ wai-app-static ==3.1.7.4,
+ wai-cli ==0.2.3,
+ wai-conduit ==3.0.0.4,
+ wai-cors ==0.2.7,
+ wai-enforce-https ==1.0.0.0,
+ wai-eventsource ==3.0.0,
+ wai-extra ==3.1.12.1,
+ wai-feature-flags ==0.1.0.4,
+ wai-handler-launch ==3.0.3.1,
+ wai-logger ==2.4.0,
+ wai-middleware-caching ==0.1.0.2,
+ wai-middleware-caching-lru ==0.1.0.0,
+ wai-middleware-caching-redis ==0.2.0.0,
+ wai-middleware-clacks ==0.1.0.1,
+ wai-middleware-delegate ==0.1.3.1,
+ wai-middleware-prometheus ==1.0.0.1,
+ wai-middleware-static ==0.9.2,
+ wai-rate-limit ==0.2.0.0,
+ wai-rate-limit-redis ==0.2.0.1,
+ wai-saml2 ==0.2.1.3,
+ wai-session ==0.3.3,
+ wai-session-postgresql ==0.2.1.3,
+ wai-session-redis ==0.1.0.5,
+ wai-slack-middleware ==0.2.0,
+ wai-transformers ==0.1.0,
+ wai-websockets ==3.0.1.2,
+ wakame ==0.1.0.0,
+ warp ==3.3.21,
+ warp-tls ==3.3.2,
+ warp-tls-uid ==0.2.0.6,
+ wave ==0.2.0,
+ wcwidth ==0.0.2,
+ webex-teams-api ==0.2.0.1,
+ webex-teams-conduit ==0.2.0.1,
+ webgear-core ==1.0.3,
+ webgear-openapi ==1.0.3,
+ webgear-server ==1.0.3,
+ webpage ==0.0.5.1,
+ web-plugins ==0.4.1,
+ web-routes ==0.27.14.4,
+ web-routes-boomerang ==0.28.4.3,
+ web-routes-happstack ==0.23.12.2,
+ web-routes-hsp ==0.24.6.2,
+ web-routes-wai ==0.24.3.2,
+ webrtc-vad ==0.1.0.3,
+ websockets ==0.12.7.3,
+ websockets-simple ==0.2.0,
+ weigh ==0.0.16,
+ wide-word ==0.1.1.2,
+ wikicfp-scraper ==0.1.0.12,
+ wild-bind ==0.1.2.8,
+ wild-bind-x11 ==0.2.0.14,
+ Win32 ==2.12.0.1,
+ Win32-notify ==0.3.0.3,
+ windns ==0.1.0.1,
+ wire-streams ==0.1.1.0,
+ witch ==1.0.0.2,
+ withdependencies ==0.3.0,
+ witherable ==0.4.2,
+ within ==0.2.0.1,
+ with-location ==0.1.0,
+ with-utf8 ==1.0.2.3,
+ witness ==0.5,
+ wizards ==1.0.3,
+ wl-pprint ==1.2.1,
+ wl-pprint-annotated ==0.1.0.1,
+ wl-pprint-console ==0.1.0.2,
+ wl-pprint-text ==1.2.0.2,
+ word8 ==0.1.3,
+ wordpress-auth ==1.0.0.1,
+ word-trie ==0.3.0,
+ word-wrap ==0.5,
+ world-peace ==1.0.2.0,
+ wrap ==0.0.0,
+ wreq ==0.5.3.3,
+ wreq-stringless ==0.5.9.1,
+ writer-cps-exceptions ==0.1.0.1,
+ writer-cps-mtl ==0.1.1.6,
+ writer-cps-transformers ==0.5.6.1,
+ wss-client ==0.3.0.0,
+ wuss ==1.1.19,
+ X11 ==1.10.2,
+ X11-xft ==0.3.4,
+ x11-xim ==0.0.9.0,
+ x509 ==1.7.7,
+ x509-store ==1.6.9,
+ x509-system ==1.6.7,
+ x509-validation ==1.6.12,
+ Xauth ==0.1,
+ xdg-basedir ==0.2.2,
+ xdg-desktop-entry ==0.1.1.1,
+ xdg-userdirs ==0.1.0.2,
+ xeno ==0.5,
+ xhtml installed,
+ xlsx ==0.8.4,
+ xlsx-tabular ==0.2.2.1,
+ xml ==1.3.14,
+ xml-basic ==0.1.3.1,
+ xmlbf ==0.6.1,
+ xmlbf-xeno ==0.2,
+ xmlbf-xmlhtml ==0.2,
+ xml-conduit ==1.9.1.1,
+ xml-conduit-writer ==0.1.1.2,
+ xmlgen ==0.6.2.2,
+ xml-hamlet ==0.5.0.2,
+ xml-helpers ==1.0.0,
+ xmlhtml ==0.2.5.2,
+ xml-html-qq ==0.1.0.1,
+ xml-indexed-cursor ==0.1.1.0,
+ xml-parser ==0.1.1,
+ xml-picklers ==0.3.6,
+ xml-to-json-fast ==2.0.0,
+ xml-types ==0.3.8,
+ xmonad ==0.17.0,
+ xmonad-contrib ==0.17.0,
+ xmonad-extras ==0.17.0,
+ xor ==0.0.1.1,
+ xss-sanitize ==0.3.7,
+ xxhash-ffi ==0.2.0.0,
+ yaml ==0.11.8.0,
+ yamlparse-applicative ==0.2.0.1,
+ yaml-unscrambler ==0.1.0.9,
+ yarn-lock ==0.6.5,
+ yeshql-core ==4.2.0.0,
+ yesod ==1.6.2,
+ yesod-alerts ==0.1.3.0,
+ yesod-auth ==1.6.11,
+ yesod-auth-basic ==0.1.0.3,
+ yesod-auth-hashdb ==1.7.1.7,
+ yesod-auth-oauth2 ==0.7.0.2,
+ yesod-bin ==1.6.2.1,
+ yesod-core ==1.6.24.0,
+ yesod-eventsource ==1.6.0.1,
+ yesod-form ==1.7.0,
+ yesod-form-bootstrap4 ==3.0.1,
+ yesod-gitrepo ==0.3.0,
+ yesod-gitrev ==0.2.2,
+ yesod-markdown ==0.12.6.13,
+ yesod-newsfeed ==1.7.0.0,
+ yesod-page-cursor ==2.0.1.0,
+ yesod-paginator ==1.1.2.2,
+ yesod-persistent ==1.6.0.8,
+ yesod-recaptcha2 ==1.0.2,
+ yesod-routes-flow ==3.0.0.2,
+ yesod-sitemap ==1.6.0,
+ yesod-static ==1.6.1.0,
+ yesod-test ==1.6.14,
+ yesod-websockets ==0.3.0.3,
+ yes-precure5-command ==5.5.3,
+ yi-rope ==0.11,
+ yjsvg ==0.2.0.1,
+ yjtools ==0.9.18,
+ yoga ==0.0.0.5,
+ youtube ==0.2.1.1,
+ zenacy-html ==2.0.4,
+ zenacy-unicode ==1.0.1,
+ zero ==0.1.5,
+ zeromq4-haskell ==0.8.0,
+ zeromq4-patterns ==0.3.1.0,
+ zim-parser ==0.2.1.0,
+ zio ==0.1.0.2,
+ zip ==1.7.2,
+ zip-archive ==0.4.2.1,
+ zipper-extra ==0.1.3.2,
+ zippers ==0.3.2,
+ zip-stream ==0.2.1.0,
+ zlib ==0.6.3.0,
+ zlib-bindings ==0.1.1.5,
+ zlib-lens ==0.1.2.1,
+ zot ==0.0.3,
+ zstd ==0.1.3.0,
+ ztail ==1.2.0.3
diff --git a/testing/stack/ghc9.0.x.patch b/testing/stack/ghc9.0.x.patch
new file mode 100644
index 00000000000..bdd77de58c6
--- /dev/null
+++ b/testing/stack/ghc9.0.x.patch
@@ -0,0 +1,212 @@
+From cb7e56842a25f93142545fad21306a7c1750fbbf Mon Sep 17 00:00:00 2001
+From: Brandon Chinn <brandon@leapyear.io>
+Date: Fri, 4 Jun 2021 16:26:22 -0700
+Subject: [PATCH 1/6] Use Cabal 3.4.0.0
+
+---
+ stack.yaml | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/stack.yaml b/stack.yaml
+index 005bd19f4..9472509be 100644
+--- a/stack.yaml
++++ b/stack.yaml
+@@ -20,6 +20,9 @@ flags:
+ ghc-options:
+ "$locals": -fhide-source-paths
+
++extra-deps:
++- Cabal-3.4.0.0
++
+ drop-packages:
+ # See https://github.com/commercialhaskell/stack/pull/4712
+ - cabal-install
+
+From 11e11ab0edeba033b40a7fc62434be58dea82ce2 Mon Sep 17 00:00:00 2001
+From: Brandon Chinn <brandon@leapyear.io>
+Date: Fri, 4 Jun 2021 16:40:56 -0700
+Subject: [PATCH 2/6] Fix Flag => PackageFlag
+
+---
+ src/Stack/BuildPlan.hs | 2 +-
+ src/Stack/Package.hs | 8 ++++----
+ 2 files changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/src/Stack/BuildPlan.hs b/src/Stack/BuildPlan.hs
+index 36f82236e..c5c80efc6 100644
+--- a/src/Stack/BuildPlan.hs
++++ b/src/Stack/BuildPlan.hs
+@@ -224,7 +224,7 @@ selectPackageBuildPlan platform compiler pool gpd =
+ flagCombinations :: NonEmpty [(FlagName, Bool)]
+ flagCombinations = mapM getOptions (genPackageFlags gpd)
+ where
+- getOptions :: C.Flag -> NonEmpty (FlagName, Bool)
++ getOptions :: C.PackageFlag -> NonEmpty (FlagName, Bool)
+ getOptions f
+ | flagManual f = (fname, flagDefault f) :| []
+ | flagDefault f = (fname, True) :| [(fname, False)]
+diff --git a/src/Stack/Package.hs b/src/Stack/Package.hs
+index 4db50d2a4..d9bca7af5 100644
+--- a/src/Stack/Package.hs
++++ b/src/Stack/Package.hs
+@@ -128,7 +128,7 @@ resolvePackage packageConfig gpkg =
+ (resolvePackageDescription packageConfig gpkg)
+
+ packageFromPackageDescription :: PackageConfig
+- -> [D.Flag]
++ -> [PackageFlag]
+ -> PackageDescriptionPair
+ -> Package
+ packageFromPackageDescription packageConfig pkgFlags (PackageDescriptionPair pkgNoMod pkg) =
+@@ -935,9 +935,9 @@ resolvePackageDescription packageConfig (GenericPackageDescription desc defaultF
+ -- | Make a map from a list of flag specifications.
+ --
+ -- What is @flagManual@ for?
+-flagMap :: [Flag] -> Map FlagName Bool
++flagMap :: [PackageFlag] -> Map FlagName Bool
+ flagMap = M.fromList . map pair
+- where pair :: Flag -> (FlagName, Bool)
++ where pair :: PackageFlag -> (FlagName, Bool)
+ pair = flagName &&& flagDefault
+
+ data ResolveConditions = ResolveConditions
+@@ -986,7 +986,7 @@ resolveConditions rc addDeps (CondNode lib deps cs) = basic <> children
+ case v of
+ OS os -> os == rcOS rc
+ Arch arch -> arch == rcArch rc
+- Flag flag ->
++ PackageFlag flag ->
+ fromMaybe False $ M.lookup flag (rcFlags rc)
+ -- NOTE: ^^^^^ This should never happen, as all flags
+ -- which are used must be declared. Defaulting to
+
+From 8facd731ec3f2bbc15a083750740929167b33bb2 Mon Sep 17 00:00:00 2001
+From: Brandon Chinn <brandon@leapyear.io>
+Date: Fri, 4 Jun 2021 16:55:30 -0700
+Subject: [PATCH 3/6] Fix CabalSpecVersion
+
+---
+ src/Stack/Package.hs | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/src/Stack/Package.hs b/src/Stack/Package.hs
+index d9bca7af5..fca039140 100644
+--- a/src/Stack/Package.hs
++++ b/src/Stack/Package.hs
+@@ -32,6 +32,7 @@ import Data.List (find, isPrefixOf, unzip)
+ import qualified Data.Map.Strict as M
+ import qualified Data.Set as S
+ import qualified Data.Text as T
++import Distribution.CabalSpecVersion (CabalSpecVersion, cabalSpecMinimumLibraryVersion)
+ import Distribution.Compiler
+ import Distribution.ModuleName (ModuleName)
+ import qualified Distribution.ModuleName as Cabal
+@@ -190,7 +191,7 @@ packageFromPackageDescription packageConfig pkgFlags (PackageDescriptionPair pkg
+ (library pkg)
+ , packageBuildType = buildType pkg
+ , packageSetupDeps = msetupDeps
+- , packageCabalSpec = either orLaterVersion id $ specVersionRaw pkg
++ , packageCabalSpec = orLaterVersion $ mkVersion $ cabalSpecMinimumLibraryVersion $ specVersion pkg
+ }
+ where
+ extraLibNames = S.union subLibNames foreignLibNames
+@@ -696,7 +697,7 @@ packageDescModulesAndFiles pkg = do
+
+ -- | Resolve globbing of files (e.g. data files) to absolute paths.
+ resolveGlobFiles
+- :: Version -- ^ cabal file version
++ :: CabalSpecVersion -- ^ cabal file version
+ -> [String]
+ -> RIO Ctx (Set (Path Abs File))
+ resolveGlobFiles cabalFileVersion =
+
+From 004f14652409b7d0645215d354b2e599eb7f76bc Mon Sep 17 00:00:00 2001
+From: Brandon Chinn <brandon@leapyear.io>
+Date: Fri, 4 Jun 2021 16:55:40 -0700
+Subject: [PATCH 4/6] Fix GenericPackageDescription
+
+---
+ src/Stack/Build.hs | 2 +-
+ src/Stack/Package.hs | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/Stack/Build.hs b/src/Stack/Build.hs
+index 23b9a9719..856903bed 100644
+--- a/src/Stack/Build.hs
++++ b/src/Stack/Build.hs
+@@ -358,7 +358,7 @@ checkComponentsBuildable lps =
+ checkSubLibraryDependencies :: HasLogFunc env => [ProjectPackage] -> RIO env ()
+ checkSubLibraryDependencies proj = do
+ forM_ proj $ \p -> do
+- C.GenericPackageDescription _ _ lib subLibs foreignLibs exes tests benches <- liftIO $ cpGPD . ppCommon $ p
++ C.GenericPackageDescription _ _ _ lib subLibs foreignLibs exes tests benches <- liftIO $ cpGPD . ppCommon $ p
+
+ let dependencies = concatMap getDeps subLibs <>
+ concatMap getDeps foreignLibs <>
+diff --git a/src/Stack/Package.hs b/src/Stack/Package.hs
+index fca039140..39aad4d2f 100644
+--- a/src/Stack/Package.hs
++++ b/src/Stack/Package.hs
+@@ -863,7 +863,7 @@ data PackageDescriptionPair = PackageDescriptionPair
+ resolvePackageDescription :: PackageConfig
+ -> GenericPackageDescription
+ -> PackageDescriptionPair
+-resolvePackageDescription packageConfig (GenericPackageDescription desc defaultFlags mlib subLibs foreignLibs' exes tests benches) =
++resolvePackageDescription packageConfig (GenericPackageDescription desc _ defaultFlags mlib subLibs foreignLibs' exes tests benches) =
+ PackageDescriptionPair
+ { pdpOrigBuildable = go False
+ , pdpModifiedBuildable = go True
+
+From 820797b566ef981936907f4d19658259d4a635a8 Mon Sep 17 00:00:00 2001
+From: Brandon Chinn <brandon@leapyear.io>
+Date: Fri, 4 Jun 2021 17:01:01 -0700
+Subject: [PATCH 5/6] Fix generatePackageVersionMacros
+
+---
+ src/Stack/Build/Execute.hs | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/Stack/Build/Execute.hs b/src/Stack/Build/Execute.hs
+index 1e381dd21..aedd7fee5 100644
+--- a/src/Stack/Build/Execute.hs
++++ b/src/Stack/Build/Execute.hs
+@@ -1214,7 +1214,7 @@ withSingleContext ActionContext {..} ee@ExecuteEnv {..} task@Task {..} allDeps m
+ let macroDeps = mapMaybe snd matchedDeps
+ cppMacrosFile = setupDir </> relFileSetupMacrosH
+ cppArgs = ["-optP-include", "-optP" ++ toFilePath cppMacrosFile]
+- writeBinaryFileAtomic cppMacrosFile (encodeUtf8Builder (T.pack (C.generatePackageVersionMacros macroDeps)))
++ writeBinaryFileAtomic cppMacrosFile (encodeUtf8Builder (T.pack (C.generatePackageVersionMacros (packageVersion package) macroDeps)))
+ return (packageDBArgs ++ depsArgs ++ cppArgs)
+
+ -- This branch is usually taken for builds, and
+
+From 336ab515e30f03c274f89ebe1cbc6aa1e597c2a4 Mon Sep 17 00:00:00 2001
+From: Brandon Chinn <brandon@leapyear.io>
+Date: Fri, 4 Jun 2021 17:04:16 -0700
+Subject: [PATCH 6/6] Fix ModuleReexport
+
+---
+ src/Stack/Script.hs | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/src/Stack/Script.hs b/src/Stack/Script.hs
+index 6bb67c049..9ebd2173d 100644
+--- a/src/Stack/Script.hs
++++ b/src/Stack/Script.hs
+@@ -18,6 +18,7 @@ import Distribution.Compiler (CompilerFlavor (..))
+ import Distribution.ModuleName (ModuleName)
+ import qualified Distribution.PackageDescription as PD
+ import qualified Distribution.Types.CondTree as C
++import qualified Distribution.Types.ModuleReexport as ModuleReexport
+ import Distribution.Types.PackageName (mkPackageName)
+ import Distribution.Types.VersionRange (withinRange)
+ import Distribution.System (Platform (..))
+@@ -280,7 +281,7 @@ allExposedModules gpd = do
+ mlibrary = snd . C.simplifyCondTree checkCond <$> PD.condLibrary gpd
+ pure $ case mlibrary of
+ Just lib -> PD.exposedModules lib ++
+- map PD.moduleReexportName (PD.reexportedModules lib)
++ map ModuleReexport.moduleReexportName (PD.reexportedModules lib)
+ Nothing -> mempty
+
+ -- | The Stackage project introduced the concept of hidden packages,
diff --git a/testing/stack/persistent.patch b/testing/stack/persistent.patch
new file mode 100644
index 00000000000..cf462d7b80c
--- /dev/null
+++ b/testing/stack/persistent.patch
@@ -0,0 +1,46 @@
+commit 188d7ece06ee06ed6ccaf0df0c46285bd43898f4
+Author: q66 <daniel@octaforge.org>
+Date: Thu Apr 28 05:02:09 2022 +0200
+
+ constrain persistent to fix build
+
+diff --git a/stack.cabal b/stack.cabal
+index dba5bf0..e221321 100644
+--- a/stack.cabal
++++ b/stack.cabal
+@@ -281,7 +281,7 @@ library
+ pantry >=0.5.3,
+ path >=0.7.0,
+ path-io >=1.6.3,
+- persistent >=2.11.0.4,
++ persistent >=2.11.0.4 && <2.14.0.0,
+ persistent-sqlite >=2.11.1.0,
+ persistent-template >=2.9.1.0,
+ pretty >=1.1.3.6,
+@@ -407,7 +407,7 @@ executable stack
+ pantry >=0.5.3,
+ path >=0.7.0,
+ path-io >=1.6.3,
+- persistent >=2.11.0.4,
++ persistent >=2.11.0.4 && <2.14.0.0,
+ persistent-sqlite >=2.11.1.0,
+ persistent-template >=2.9.1.0,
+ pretty >=1.1.3.6,
+@@ -537,7 +537,7 @@ executable stack-integration-test
+ pantry >=0.5.3,
+ path >=0.7.0,
+ path-io >=1.6.3,
+- persistent >=2.11.0.4,
++ persistent >=2.11.0.4 && <2.14.0.0,
+ persistent-sqlite >=2.11.1.0,
+ persistent-template >=2.9.1.0,
+ pretty >=1.1.3.6,
+@@ -672,7 +672,7 @@ test-suite stack-test
+ pantry >=0.5.3,
+ path >=0.7.0,
+ path-io >=1.6.3,
+- persistent >=2.11.0.4,
++ persistent >=2.11.0.4 && <2.14.0.0,
+ persistent-sqlite >=2.11.1.0,
+ persistent-template >=2.9.1.0,
+ pretty >=1.1.3.6,
diff --git a/testing/stardict/APKBUILD b/testing/stardict/APKBUILD
index 1844317537d..34f57d48842 100644
--- a/testing/stardict/APKBUILD
+++ b/testing/stardict/APKBUILD
@@ -1,13 +1,13 @@
# Maintainer: Taner Tas <taner76@gmail.com>
pkgname=stardict
pkgver=3.0.6
-pkgrel=3
+pkgrel=6
pkgdesc="Cross-platform and international dictionary software"
-url="http://stardict-4.sourceforge.net/"
+url="https://stardict-4.sourceforge.net/"
arch="all"
license="GPL-3.0-or-later"
-makedepends="automake autoconf libtool gtk+2.0-dev libsigc++-dev libxml2-dev gnome-doc-utils
- gnome-common enchant2-dev espeak-dev zlib-dev mariadb-connector-c-dev"
+makedepends="automake autoconf libtool gtk+2.0-dev libsigc++-dev libxml2-dev
+ gnome-common enchant2-dev espeak-dev zlib-dev mariadb-connector-c-dev pcre-dev"
subpackages="$pkgname-doc $pkgname-lang $pkgname-help::noarch"
source="https://downloads.sourceforge.net/project/stardict-4/$pkgver/stardict-$pkgver.tar.bz2
gcc46.patch
@@ -16,6 +16,7 @@ source="https://downloads.sourceforge.net/project/stardict-4/$pkgver/stardict-$p
gconf.patch
enchant2.patch
makefile.patch
+ gnome-doc-utils.patch
"
options="!check"
@@ -62,15 +63,16 @@ help() {
pkgdesc="Stardict help files"
install_if="stardict=$pkgver-r$pkgrel"
- amove usr/share/gnome
- amove usr/share/omf
amove usr/share/stardict/help
}
-sha512sums="81d93324b6e8954af7c20ea6d2a3054bb564d786a21b1cb541c728da7a18a6e7ddb23e595055ccc77e6866bbb8c89fb4f17023e33664761dbe1ee8cd55768658 stardict-3.0.6.tar.bz2
+sha512sums="
+81d93324b6e8954af7c20ea6d2a3054bb564d786a21b1cb541c728da7a18a6e7ddb23e595055ccc77e6866bbb8c89fb4f17023e33664761dbe1ee8cd55768658 stardict-3.0.6.tar.bz2
cc43b57cdf2e7fbd3e9c86acb4c8f9fef367d68f6f027e75774eec9cdf66b3fdd3b0bc58d373d076cb38671e09012ab69b8b7e81638a5be888af56372e65a838 gcc46.patch
4132eee58ab5dfb30105fd2c1a113d143528f7e904ededbb8de203bbb244377aed2c152aae7f383936e74005c2f4afa6128674a245d2a8083b2757b1ca90dd24 glib2.patch
4b47cd6beb425316cdbe45ec8b6b965521ba20a956fe6a39a49da0b5e774b3ff5bc8ade19aa03216d3405ec7fbee9ed37add0a7ec07c090a6872eb2ae2654db9 mariadb.patch
efa225a0ff285ee81788311c0ed9875ebc93d64fb4943b8de6ba27d945e781936eebcab4c742b29cb6c8c810f5fd3f478db98cb06128e7aa552fb8512838bad6 gconf.patch
bc41bb144275297657424a3a41e27cab6c06fcdecbb470e6f2b9204c01c0a9e74e64e8db6da5343e9b7779eb67f19dc786ec5617b1607c39e1a6034966b96447 enchant2.patch
-f7f96979e620195b09b0b6f4183401886637badeb7c91f1889409a5ee206ac2d1e33072ae31cdde9464510406c7bb0162083b3003b7715aa9ab3c3f1df1923ab makefile.patch"
+f7f96979e620195b09b0b6f4183401886637badeb7c91f1889409a5ee206ac2d1e33072ae31cdde9464510406c7bb0162083b3003b7715aa9ab3c3f1df1923ab makefile.patch
+9900c1f5aabd100f873d8903a61a4ea71118ea70236cc0fa10bafcb9a87335e686c840ee258af64c0c9aaa8ea62e71acd80d2b8839e42fd5280f8d1e2209deb6 gnome-doc-utils.patch
+"
diff --git a/testing/stardict/gnome-doc-utils.patch b/testing/stardict/gnome-doc-utils.patch
new file mode 100644
index 00000000000..910d5288369
--- /dev/null
+++ b/testing/stardict/gnome-doc-utils.patch
@@ -0,0 +1,21 @@
+diff -ruN stardict-3.0.6-2/dict/configure.ac stardict-3.0.6/dict/configure.ac
+--- stardict-3.0.6-2/dict/configure.ac 2023-01-30 01:05:51.137604350 +0100
++++ stardict-3.0.6/dict/configure.ac 2023-01-30 01:05:54.680907906 +0100
+@@ -17,7 +17,6 @@
+
+ AC_CONFIG_MACRO_DIR(m4)
+ LT_INIT
+-GNOME_DOC_INIT
+
+ AC_ISC_POSIX
+ AC_PROG_CC
+diff -ruN stardict-3.0.6-2/dict/help/Makefile.am stardict-3.0.6/dict/help/Makefile.am
+--- stardict-3.0.6-2/dict/help/Makefile.am 2023-01-30 01:05:51.137604350 +0100
++++ stardict-3.0.6/dict/help/Makefile.am 2023-01-30 01:05:57.514217577 +0100
+@@ -1,6 +1,5 @@
+ ## Process this file with automake to produce Makefile.in.
+ ## always include gnome-doc-utils.make because we need to generate DocBook files in linguas dirs
+-include $(top_srcdir)/gnome-doc-utils.make
+ if GNOME_SUPPORT
+ GNOME_DIST_HOOK = doc-dist-hook
+ else
diff --git a/testing/starfighter/APKBUILD b/testing/starfighter/APKBUILD
new file mode 100644
index 00000000000..faca351a609
--- /dev/null
+++ b/testing/starfighter/APKBUILD
@@ -0,0 +1,30 @@
+# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
+pkgname=starfighter
+pkgver=2.4
+pkgrel=0
+pkgdesc="2D scrolling shooter game"
+url="https://pr-starfighter.github.io/"
+arch="all"
+license="GPL-3.0-or-later"
+makedepends="sdl2-dev sdl2_image-dev sdl2_mixer-dev sdl2_ttf-dev gettext-dev pango-dev"
+subpackages="$pkgname-doc"
+options="!check" # No testsuite
+source="https://github.com/pr-starfighter/starfighter/releases/download/v$pkgver/starfighter-$pkgver-src.tar.gz"
+builddir="$srcdir/starfighter-$pkgver-src"
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --exec_prefix=/usr \
+ --prefix=/usr
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+3c31f74f878e7c438ee752e870556a2108d88b45544e5eb56ea49926986657d5ab13031e2ecd0973ecbaab29e61a1f3a79f1e34435287426aee8cc374c08136d starfighter-2.4-src.tar.gz
+"
diff --git a/testing/stargazer-gmi/APKBUILD b/testing/stargazer-gmi/APKBUILD
deleted file mode 100644
index 837232ed461..00000000000
--- a/testing/stargazer-gmi/APKBUILD
+++ /dev/null
@@ -1,41 +0,0 @@
-# Maintainer: Sashanoraa <sasha@noraa.gay>
-pkgname=stargazer-gmi
-pkgver=1.0.2
-pkgrel=0
-pkgdesc="A fast and easy to use Gemini server"
-url="https://sr.ht/~zethra/stargazer/"
-arch="all !s390x !riscv64 !ppc64le" # cargo & ring
-license="AGPL-3.0-or-later"
-makedepends="cargo scdoc"
-checkdepends="python3 py3-cryptography"
-subpackages="
- $pkgname-doc
- $pkgname-openrc
- $pkgname-bash-completion
- $pkgname-fish-completion
- $pkgname-zsh-completion
- "
-source="$pkgname-$pkgver.tar.gz::https://git.sr.ht/~zethra/stargazer/archive/$pkgver.tar.gz"
-builddir="$srcdir/stargazer-$pkgver"
-[ "$CARCH" = "armhf" ] && options="$options !check" # failing ci tests
-
-build() {
- ./scripts/build
-}
-
-check() {
- CARGO_ARGS='--release' ./scripts/test --skip IPv6Address,SCGIVars
-}
-
-package() {
- ./scripts/install --prefix="$pkgdir/usr" \
- --sysconfdir="$pkgdir/etc" \
- --bashdir="$pkgdir/usr/share/bash-completion/completions" \
- --zshdir="$pkgdir/usr/share/zsh/site-functions" \
- --fishdir="$pkgdir/usr/share/fish/completions"
- install -Dm644 ./contrib/init/stargazer.initd "$pkgdir/etc/init.d/stargazer"
-}
-
-sha512sums="
-244155c68689a178e7446c7cd34f804091ea24d5914a8e4f4f6c6224b1374618bc2138d20bc4ae2cc3f798205c1d9400376d16d431391bcafe04670ed6ae32ab stargazer-gmi-1.0.2.tar.gz
-"
diff --git a/testing/stargazer/APKBUILD b/testing/stargazer/APKBUILD
deleted file mode 100644
index 1adcde13262..00000000000
--- a/testing/stargazer/APKBUILD
+++ /dev/null
@@ -1,39 +0,0 @@
-# Contributor: Alexander Georgievskiy <galeksandrp@gmail.com>
-# Maintainer:
-pkgname=stargazer
-_pkgname=stg
-pkgver=2.408
-pkgrel=0
-pkgdesc="A billing system for small home and office networks"
-url="http://www.stg.dp.ua"
-arch="all"
-license="GPL-2.0-or-later"
-depends=""
-makedepends="expat-dev linux-headers"
-install=""
-subpackages="$pkgname-dev"
-source="http://www.$_pkgname.dp.ua/download/server/$pkgver/$_pkgname-$pkgver.tar.gz
- fix-name-max.patch
- "
-builddir="$srcdir/$_pkgname-$pkgver"
-options="!check"
-
-prepare() {
- default_prepare
- cd "$builddir/projects/$pkgname"
- sed 's/.*capture\/ipq_linux//' -i build
-}
-
-build() {
- cd "$builddir/projects/$pkgname"
- ./build
-}
-
-package() {
- cd "$builddir/projects/$pkgname"
- mkdir -p "$pkgdir/usr/sbin"
- make PREFIX="$pkgdir" install
-}
-
-sha512sums="200e08cfd629dbacda31ffd3134c2908a1ad58604421cc288ad0ec1bdcd60fe021d51fed50fdc2517bb7c2b61ef23b0b9c71a606babd09bc7804cb899e0b7f75 stg-2.408.tar.gz
-b7572654091490bab39a6d6da081133df041df80f38f9de77156719ad05083dfa570a7a6df5db74ee30f3d22270271bd27a8793b6c0ee40ea123ddb4af11d6ec fix-name-max.patch"
diff --git a/testing/stargazer/fix-name-max.patch b/testing/stargazer/fix-name-max.patch
deleted file mode 100644
index 987aef9d794..00000000000
--- a/testing/stargazer/fix-name-max.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- stg-2.408/stglibs/common.lib/include/stg/common.h.orig 2017-08-29 13:08:12.574050223 +0300
-+++ stg-2.408/stglibs/common.lib/include/stg/common.h 2017-08-29 13:08:44.261161176 +0300
-@@ -33,6 +33,7 @@
- #include <ctime>
- #endif
- #include <string>
-+#include <limits.h>
-
- #include "stg/os_int.h"
- #include "stg/const.h"
diff --git a/testing/startup/APKBUILD b/testing/startup/APKBUILD
index c02580f7ac5..6b5608163f8 100644
--- a/testing/startup/APKBUILD
+++ b/testing/startup/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer:
pkgname=startup
pkgver=2.0.3
-pkgrel=1
+pkgrel=4
pkgdesc="Event driven task and service manager"
options="!check"
url="https://gitlab.com/chinstrap/startup"
@@ -33,6 +33,7 @@ subpackages="
libupstart:libs
$pkgname-bridge-udev
$pkgname-bridge-dconf
+ $pkgname-fish-completion
"
source="$pkgname-$pkgver.tar.gz::https://gitlab.com/chinstrap/startup/-/archive/$pkgver/startup-$pkgver.tar.gz"
@@ -63,7 +64,7 @@ package() {
# Install fish completion
install -Dm0644 contrib/fish_completion/*.fish \
- -t "$pkgdir"/usr/share/fish/completions
+ -t "$pkgdir"/usr/share/fish/vendor_completions.d
mkdir -p "$pkgdir"/usr/share/dbus-1/system.d/
mv "$pkgdir"/etc/dbus-1/system.d/* "$pkgdir"/usr/share/dbus-1/system.d/
@@ -77,8 +78,6 @@ tools() {
amove usr/bin/startup-monitor
amove usr/share/icons
amove usr/share/applications
- amove usr/share/fish/completions/initctl2dot.fish
- amove usr/share/fish/completions/startup-monitor.fish
}
dconf() {
diff --git a/testing/stayrtr/APKBUILD b/testing/stayrtr/APKBUILD
new file mode 100644
index 00000000000..4a70f277d9d
--- /dev/null
+++ b/testing/stayrtr/APKBUILD
@@ -0,0 +1,54 @@
+# Contributor: Mike Crute <mike@crute.us>
+# Contributor: Nicolas Lorin <androw95220@gmail.com>
+# Maintainer: Nicolas Lorin <androw95220@gmail.com>
+pkgname=stayrtr
+pkgver=0.5.1
+pkgrel=2
+pkgdesc="Simple RPKI-To-Router server. (Hard fork of GoRTR)"
+url="https://github.com/bgp/stayrtr"
+arch="all"
+license="BSD-3-Clause"
+options="net chmod-clean"
+makedepends="go"
+pkgusers="stayrtr"
+pkggroups="stayrtr"
+install="$pkgname.pre-install"
+subpackages="$pkgname-openrc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/bgp/stayrtr/archive/v$pkgver.tar.gz
+ $pkgname.initd
+ $pkgname.confd
+ "
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ export CGO_ENABLED=1
+ make \
+ OUTPUT_STAYRTR=dist/stayrtr \
+ OUTPUT_RTRDUMP=dist/rtrdump \
+ OUTPUT_RTRMON=dist/rtrmon \
+ STAYRTR_VERSION=$pkgver \
+ LDFLAGS='"-X main.version=$(STAYRTR_VERSION) -X main.buildinfos=$(BUILDINFOS)"' \
+ build-stayrtr build-rtrdump build-rtrmon
+}
+
+check() {
+ make test
+}
+
+package() {
+ install -Dm755 dist/stayrtr "$pkgdir"/usr/bin/$pkgname
+ install -Dm755 dist/rtrdump "$pkgdir"/usr/bin/rtrdump
+ install -Dm755 dist/rtrmon "$pkgdir"/usr/bin/rtrmon
+
+ install -Dm755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
+ install -Dm644 "$srcdir"/$pkgname.confd "$pkgdir"/etc/conf.d/$pkgname
+}
+
+sha512sums="
+a155045d423bf4da20a07699df096c38e6ace23ad9f93bbc7180135ec5bc367eed1ad349f9033ceda5521afba7d455d19afd0bc8d95b7376c91b4b051bd4a51f stayrtr-0.5.1.tar.gz
+926dd3d3c3851d2b787ed7ae42ba1dcc54b432e5cb9ab6a30fa8eee1df19b48f50b37b37b84262d83e53031993ac39bd68a87bd9e47752eca49c104e0b1e7897 stayrtr.initd
+73d8e1465332287ec035872777caa3c60072ae62a359d2f1374275901423d120300ebcfca22a7ca7c1131056183f39a9fb19ad1b08678d3bde13b383874d4a7d stayrtr.confd
+"
diff --git a/testing/stayrtr/stayrtr.confd b/testing/stayrtr/stayrtr.confd
new file mode 100644
index 00000000000..d3cb5dd2fdd
--- /dev/null
+++ b/testing/stayrtr/stayrtr.confd
@@ -0,0 +1,2 @@
+# Configuration for /etc/init.d/stayrtr
+# STAYRTR_OPTS=""
diff --git a/testing/stayrtr/stayrtr.initd b/testing/stayrtr/stayrtr.initd
new file mode 100644
index 00000000000..f2c2d8c28b5
--- /dev/null
+++ b/testing/stayrtr/stayrtr.initd
@@ -0,0 +1,26 @@
+#!/sbin/openrc-run
+
+supervisor=supervise-daemon
+
+name="stayrtr"
+description="Simple RPKI-To-Router server. (Hard fork of GoRTR)"
+
+command="/usr/bin/$RC_SVCNAME"
+command_args="$STAYRTR_OPTS"
+command_user="$RC_SVCNAME:$RC_SVCNAME"
+
+extra_started_commands="reload"
+description_reload="Reload configuration"
+
+error_log="/var/log/$RC_SVCNAME.log"
+
+depend() {
+ need net
+ after firewall
+}
+
+reload() {
+ ebegin "Reloading $RC_SVCNAME configuration"
+ $supervisor "$RC_SVCNAME" --signal HUP
+ eend $?
+}
diff --git a/testing/stayrtr/stayrtr.pre-install b/testing/stayrtr/stayrtr.pre-install
new file mode 100644
index 00000000000..42667d38cb5
--- /dev/null
+++ b/testing/stayrtr/stayrtr.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S stayrtr 2>/dev/null
+adduser -S -D -h /var/lib/stayrtr -s /sbin/nologin -G stayrtr -g stayrtr stayrtr 2>/dev/null
+
+exit 0
diff --git a/testing/steamguard-cli/APKBUILD b/testing/steamguard-cli/APKBUILD
new file mode 100644
index 00000000000..ff4803ff220
--- /dev/null
+++ b/testing/steamguard-cli/APKBUILD
@@ -0,0 +1,48 @@
+# Contributor: Dmitry Zakharchenko <dmitz@disroot.org>
+# Maintainer: Dmitry Zakharchenko <dmitz@disroot.org>
+pkgname=steamguard-cli
+pkgver=0.9.6
+pkgrel=0
+pkgdesc="Command line utility for setting up and using Steam Mobile Authenticator"
+url="https://github.com/dyc3/steamguard-cli"
+# ring
+arch="all !ppc64le !s390x !riscv64"
+license="GPL-3.0-or-later"
+makedepends="cargo cargo-auditable openssl-dev"
+subpackages="$pkgname-bash-completion $pkgname-zsh-completion"
+source="$pkgname-$pkgver.tar.gz::https://github.com/dyc3/steamguard-cli/archive/refs/tags/v$pkgver.tar.gz
+ openssl.patch
+ "
+options="net" # cargo fetch
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release
+
+ mkdir -p completions
+ target/release/steamguard completion --shell bash > completions/steamguard
+ target/release/steamguard completion --shell zsh > completions/_steamguard
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm755 target/release/steamguard -t "$pkgdir"/usr/bin/
+
+ install -Dm644 completions/steamguard \
+ -t "$pkgdir"/usr/share/bash-completion/completions/
+ install -Dm644 completions/_steamguard \
+ -t "$pkgdir"/usr/share/zsh/site-functions/
+}
+
+sha512sums="
+31c5eb2b796554ad46e719aff5a2d285bbea49f248aa6f8d9f60a07234ea00ec521f49471e78177e624f8940ce4e55749f066aedef73316d9392554850489573 steamguard-cli-0.9.6.tar.gz
+aceda15ade3deaf14b4fdbce4b849acfa89855cfd306ba9577f4e280fa175ffe1233776c1e13f372462b6e60292907e6a1a6aceec6b51a90d3067aa22132a31a openssl.patch
+"
diff --git a/testing/steamguard-cli/openssl.patch b/testing/steamguard-cli/openssl.patch
new file mode 100644
index 00000000000..47bb2b009d8
--- /dev/null
+++ b/testing/steamguard-cli/openssl.patch
@@ -0,0 +1,393 @@
+diff --git a/Cargo.lock b/Cargo.lock
+index 10ba22c..f68621f 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -313,6 +313,22 @@ dependencies = [
+ "url",
+ ]
+
++[[package]]
++name = "core-foundation"
++version = "0.9.3"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146"
++dependencies = [
++ "core-foundation-sys",
++ "libc",
++]
++
++[[package]]
++name = "core-foundation-sys"
++version = "0.8.4"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa"
++
+ [[package]]
+ name = "cpufeatures"
+ version = "0.2.2"
+@@ -545,6 +561,21 @@ version = "1.0.7"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
+
++[[package]]
++name = "foreign-types"
++version = "0.3.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
++dependencies = [
++ "foreign-types-shared",
++]
++
++[[package]]
++name = "foreign-types-shared"
++version = "0.1.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
++
+ [[package]]
+ name = "form_urlencoded"
+ version = "1.0.1"
+@@ -819,6 +850,19 @@ dependencies = [
+ "tokio-rustls",
+ ]
+
++[[package]]
++name = "hyper-tls"
++version = "0.5.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905"
++dependencies = [
++ "bytes",
++ "hyper",
++ "native-tls",
++ "tokio",
++ "tokio-native-tls",
++]
++
+ [[package]]
+ name = "idna"
+ version = "0.2.3"
+@@ -1051,6 +1095,24 @@ dependencies = [
+ "windows-sys 0.36.1",
+ ]
+
++[[package]]
++name = "native-tls"
++version = "0.2.11"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "07226173c32f2926027b63cce4bcd8076c3552846cbe7925f3aaffeac0a3b92e"
++dependencies = [
++ "lazy_static 1.4.0",
++ "libc",
++ "log",
++ "openssl",
++ "openssl-probe",
++ "openssl-sys",
++ "schannel",
++ "security-framework",
++ "security-framework-sys",
++ "tempfile",
++]
++
+ [[package]]
+ name = "new_debug_unreachable"
+ version = "1.0.4"
+@@ -1161,6 +1223,50 @@ version = "0.1.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "44d11de466f4a3006fe8a5e7ec84e93b79c70cb992ae0aa0eb631ad2df8abfe2"
+
++[[package]]
++name = "openssl"
++version = "0.10.55"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "345df152bc43501c5eb9e4654ff05f794effb78d4efe3d53abc158baddc0703d"
++dependencies = [
++ "bitflags",
++ "cfg-if",
++ "foreign-types",
++ "libc",
++ "once_cell",
++ "openssl-macros",
++ "openssl-sys",
++]
++
++[[package]]
++name = "openssl-macros"
++version = "0.1.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "b501e44f11665960c7e7fcf062c7d96a14ade4aa98116c004b2e37b5be7d736c"
++dependencies = [
++ "proc-macro2",
++ "quote",
++ "syn",
++]
++
++[[package]]
++name = "openssl-probe"
++version = "0.1.5"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf"
++
++[[package]]
++name = "openssl-sys"
++version = "0.9.90"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "374533b0e45f3a7ced10fcaeccca020e66656bc03dac384f852e4e5a7a8104a6"
++dependencies = [
++ "cc",
++ "libc",
++ "pkg-config",
++ "vcpkg",
++]
++
+ [[package]]
+ name = "option-ext"
+ version = "0.2.0"
+@@ -1340,6 +1446,12 @@ dependencies = [
+ "zeroize",
+ ]
+
++[[package]]
++name = "pkg-config"
++version = "0.3.27"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964"
++
+ [[package]]
+ name = "ppv-lite86"
+ version = "0.2.16"
+@@ -1750,12 +1862,14 @@ dependencies = [
+ "http-body",
+ "hyper",
+ "hyper-rustls",
++ "hyper-tls",
+ "ipnet",
+ "js-sys",
+ "lazy_static 1.4.0",
+ "log",
+ "mime",
+ "mime_guess",
++ "native-tls",
+ "percent-encoding",
+ "pin-project-lite",
+ "proc-macro-hack",
+@@ -1765,6 +1879,7 @@ dependencies = [
+ "serde_json",
+ "serde_urlencoded",
+ "tokio",
++ "tokio-native-tls",
+ "tokio-rustls",
+ "tokio-util 0.6.10",
+ "url",
+@@ -1877,6 +1992,15 @@ version = "1.0.10"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "f3f6f92acf49d1b98f7a81226834412ada05458b7364277387724a237f062695"
+
++[[package]]
++name = "schannel"
++version = "0.1.21"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "713cfb06c7059f3588fb8044c0fad1d09e3c01d225e25b9220dbfdcf16dbb1b3"
++dependencies = [
++ "windows-sys 0.42.0",
++]
++
+ [[package]]
+ name = "scopeguard"
+ version = "1.1.0"
+@@ -1919,6 +2043,29 @@ dependencies = [
+ "zeroize",
+ ]
+
++[[package]]
++name = "security-framework"
++version = "2.9.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "1fc758eb7bffce5b308734e9b0c1468893cae9ff70ebf13e7090be8dcbcc83a8"
++dependencies = [
++ "bitflags",
++ "core-foundation",
++ "core-foundation-sys",
++ "libc",
++ "security-framework-sys",
++]
++
++[[package]]
++name = "security-framework-sys"
++version = "2.9.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f51d0c0d83bec45f16480d0ce0058397a69e48fcdc52d1dc8855fb68acbd31a7"
++dependencies = [
++ "core-foundation-sys",
++ "libc",
++]
++
+ [[package]]
+ name = "selectors"
+ version = "0.22.0"
+@@ -2511,6 +2658,16 @@ dependencies = [
+ "winapi",
+ ]
+
++[[package]]
++name = "tokio-native-tls"
++version = "0.3.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2"
++dependencies = [
++ "native-tls",
++ "tokio",
++]
++
+ [[package]]
+ name = "tokio-rustls"
+ version = "0.23.4"
+@@ -2684,6 +2841,12 @@ dependencies = [
+ "getrandom 0.2.6",
+ ]
+
++[[package]]
++name = "vcpkg"
++version = "0.2.15"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426"
++
+ [[package]]
+ name = "version_check"
+ version = "0.9.4"
+@@ -2883,6 +3046,21 @@ dependencies = [
+ "windows_x86_64_msvc 0.36.1",
+ ]
+
++[[package]]
++name = "windows-sys"
++version = "0.42.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7"
++dependencies = [
++ "windows_aarch64_gnullvm 0.42.2",
++ "windows_aarch64_msvc 0.42.2",
++ "windows_i686_gnu 0.42.2",
++ "windows_i686_msvc 0.42.2",
++ "windows_x86_64_gnu 0.42.2",
++ "windows_x86_64_gnullvm 0.42.2",
++ "windows_x86_64_msvc 0.42.2",
++]
++
+ [[package]]
+ name = "windows-sys"
+ version = "0.48.0"
+@@ -2898,15 +3076,21 @@ version = "0.48.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "7b1eb6f0cd7c80c79759c929114ef071b87354ce476d9d94271031c0497adfd5"
+ dependencies = [
+- "windows_aarch64_gnullvm",
++ "windows_aarch64_gnullvm 0.48.0",
+ "windows_aarch64_msvc 0.48.0",
+ "windows_i686_gnu 0.48.0",
+ "windows_i686_msvc 0.48.0",
+ "windows_x86_64_gnu 0.48.0",
+- "windows_x86_64_gnullvm",
++ "windows_x86_64_gnullvm 0.48.0",
+ "windows_x86_64_msvc 0.48.0",
+ ]
+
++[[package]]
++name = "windows_aarch64_gnullvm"
++version = "0.42.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8"
++
+ [[package]]
+ name = "windows_aarch64_gnullvm"
+ version = "0.48.0"
+@@ -2919,6 +3103,12 @@ version = "0.36.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "9bb8c3fd39ade2d67e9874ac4f3db21f0d710bee00fe7cab16949ec184eeaa47"
+
++[[package]]
++name = "windows_aarch64_msvc"
++version = "0.42.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43"
++
+ [[package]]
+ name = "windows_aarch64_msvc"
+ version = "0.48.0"
+@@ -2931,6 +3121,12 @@ version = "0.36.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "180e6ccf01daf4c426b846dfc66db1fc518f074baa793aa7d9b9aaeffad6a3b6"
+
++[[package]]
++name = "windows_i686_gnu"
++version = "0.42.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f"
++
+ [[package]]
+ name = "windows_i686_gnu"
+ version = "0.48.0"
+@@ -2943,6 +3139,12 @@ version = "0.36.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "e2e7917148b2812d1eeafaeb22a97e4813dfa60a3f8f78ebe204bcc88f12f024"
+
++[[package]]
++name = "windows_i686_msvc"
++version = "0.42.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060"
++
+ [[package]]
+ name = "windows_i686_msvc"
+ version = "0.48.0"
+@@ -2955,12 +3157,24 @@ version = "0.36.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "4dcd171b8776c41b97521e5da127a2d86ad280114807d0b2ab1e462bc764d9e1"
+
++[[package]]
++name = "windows_x86_64_gnu"
++version = "0.42.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36"
++
+ [[package]]
+ name = "windows_x86_64_gnu"
+ version = "0.48.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1"
+
++[[package]]
++name = "windows_x86_64_gnullvm"
++version = "0.42.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3"
++
+ [[package]]
+ name = "windows_x86_64_gnullvm"
+ version = "0.48.0"
+@@ -2973,6 +3187,12 @@ version = "0.36.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "c811ca4a8c853ef420abd8592ba53ddbbac90410fab6903b3e79972a631f7680"
+
++[[package]]
++name = "windows_x86_64_msvc"
++version = "0.42.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0"
++
+ [[package]]
+ name = "windows_x86_64_msvc"
+ version = "0.48.0"
+diff --git a/Cargo.toml b/Cargo.toml
+index 425e75a..95c9370 100644
+--- a/Cargo.toml
++++ b/Cargo.toml
+@@ -34,7 +34,7 @@ hmac-sha1 = "^0.1"
+ base64 = "0.13.0"
+ text_io = "0.1.8"
+ rpassword = "5.0"
+-reqwest = { version = "0.11", default-features = false, features = ["blocking", "json", "cookies", "gzip", "rustls-tls"] }
++reqwest = { version = "0.11", default-features = false, features = ["blocking", "json", "cookies", "gzip", "native-tls"] }
+ serde = { version = "1.0", features = ["derive"] }
+ serde_json = "1.0"
+ rsa = "0.5.0"
diff --git a/testing/steghide/APKBUILD b/testing/steghide/APKBUILD
index b9e4e75cdf0..460d261dbae 100644
--- a/testing/steghide/APKBUILD
+++ b/testing/steghide/APKBUILD
@@ -1,35 +1,38 @@
# Contributor: Francesco Colista <fcolista@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=steghide
-pkgver=0.5.1
-pkgrel=2
+pkgver=0.5.1.1
+pkgrel=0
pkgdesc="Steganography program that is able to hide data in various kinds of image- and audio-files"
-url="http://steghide.sourceforge.net/index.php"
+url="https://github.com/museoa/steghide"
arch="all"
license="GPL-2.0-or-later"
+options="!check" # fixme: fails for au and wav
makedepends="libmcrypt-dev jpeg-dev zlib-dev libmhash-dev
- bash libtool automake autoconf"
+ bash gettext-dev libtool automake autoconf"
subpackages="$pkgname-doc"
-source="https://prdownloads.sourceforge.net/steghide/steghide-$pkgver.tar.gz
- steghide-0.5.1-am.patch
- build-fixes-new-gcc.patch
- missing-files-configure-in.patch
- "
+source="$pkgname-pkgver.tar.gz::https://github.com/museoa/steghide/archive/refs/tags/$pkgver.tar.gz"
+builddir="$srcdir/$pkgname-$pkgver/src"
prepare() {
default_prepare
- update_config_sub
- update_config_guess
+ aclocal
+ autoconf
+ libtoolize
+ autoreconf -fvi
}
build() {
- autoreconf -i
./configure \
--prefix=/usr \
--disable-rpath \
--disable-nls
- make CXXFLAGS="$CXXFLAGS -fpermissive"
+ make
+}
+
+check() {
+ make check
}
package() {
@@ -37,8 +40,5 @@ package() {
}
sha512sums="
-6cda3e33e91123fbc5caa112efcacf09180505abd4f6f229878cd443817c60a04498aead02509c7532fd6924225c6b752820c51e452a83c520f228273d610a57 steghide-0.5.1.tar.gz
-b41652a1cfcd5313cb79c220cebc308c5491de4b56433ca5c6099c0b23c532c565cb67b553c32d24398c0e26cec3d1749acd8890e45596464ed499a83fd04fb3 steghide-0.5.1-am.patch
-66443a0ca340969d568e0343fafcef6623f429f6a718b5ea55afcceb444f907521db22702c213d9b72a82e6b353c138f2703afcb4a6d573fe37f70891bc69334 build-fixes-new-gcc.patch
-27dbae3ef3ab4373ddd046bad07a4d3d0df014717b3a1a4b178c761f39f9b3c74aef7aeeb037c93e083445026e96cf46a64a1351074938af9b87ab9bd9e95bbe missing-files-configure-in.patch
+2fcaeda85b145f5d5ff92d26f1b98fac745b4f6bd09ae5d0fef3413fb86674da19714d93c882de774f21beb381f5bac4ca0517269821b9811e07706e6e6d72e6 steghide-pkgver.tar.gz
"
diff --git a/testing/steghide/build-fixes-new-gcc.patch b/testing/steghide/build-fixes-new-gcc.patch
deleted file mode 100644
index 1f866e35476..00000000000
--- a/testing/steghide/build-fixes-new-gcc.patch
+++ /dev/null
@@ -1,164 +0,0 @@
---- steghide-0.5.1.orig/src/ProgressOutput.cc
-+++ steghide-0.5.1/src/ProgressOutput.cc
-@@ -23,6 +23,8 @@
- #include "ProgressOutput.h"
- #include "common.h"
-
-+float ProgressOutput::NoAvgWeight = -1.0 ;
-+
- ProgressOutput::ProgressOutput ()
- : Message("__nomessage__")
- {
---- steghide-0.5.1.orig/src/ProgressOutput.h
-+++ steghide-0.5.1/src/ProgressOutput.h
-@@ -62,9 +62,9 @@
- * \param rate the rate of matched vertices
- * \param avgweight the average edge weight (is not printed if not given)
- **/
-- void done (float rate, float avgweight = NoAvgWeight) const ;
-+ void done (float rate, float avgweight = 1.0) const ;
-
-- static const float NoAvgWeight = -1.0 ;
-+ static float NoAvgWeight ;
-
- protected:
- std::string vcompose (const char *msgfmt, va_list ap) const ;
---- steghide-0.5.1.orig/src/wrapper_hash_map.h
-+++ steghide-0.5.1/src/wrapper_hash_map.h
-@@ -29,7 +29,7 @@
- namespace sgi { using ::hash ; using ::hash_map ; } ;
- # else
- # include <ext/hash_map>
--# if __GNUC_MINOR__ == 0
-+# if __GNUC__ == 3 && __GNUC_MINOR__ == 0
- namespace sgi = std ; // GCC 3.0
- # else
- namespace sgi = __gnu_cxx ; // GCC 3.1 and later
---- steghide-0.5.1.orig/src/wrapper_hash_set.h
-+++ steghide-0.5.1/src/wrapper_hash_set.h
-@@ -30,7 +30,7 @@
- namespace sgi { using ::hash ; using ::hash_set ; } ;
- # else
- # include <ext/hash_set>
--# if __GNUC_MINOR__ == 0
-+# if __GNUC__ == 3 && __GNUC_MINOR__ == 0
- namespace sgi = std ; // GCC 3.0
- # else
- namespace sgi = ::__gnu_cxx ; // GCC 3.1 and later
-
---- steghide-0.5.1.orig/src/Arguments.cc
-+++ steghide-0.5.1/src/Arguments.cc
-@@ -28,6 +28,8 @@
- #include "error.h"
- #include "msg.h"
-
-+float Arguments::Default_Goal = 100.0 ;
-+
- // the global Arguments object
- Arguments Args ;
-
---- steghide-0.5.1.orig/src/Arguments.h
-+++ steghide-0.5.1/src/Arguments.h
-@@ -100,7 +100,7 @@
- static const VERBOSITY Default_Verbosity = NORMAL ;
- static const unsigned long Default_Radius = 0 ; // there is no default radius for all file formats
- static const unsigned int Max_Algorithm = 3 ;
-- static const float Default_Goal = 100.0 ;
-+ static float Default_Goal ;
- static const DEBUGCOMMAND Default_DebugCommand = NONE ;
- static const bool Default_Check = false ;
- static const unsigned int Default_DebugLevel = 0 ;
---- steghide-0.5.1.orig/src/AuData.h
-+++ steghide-0.5.1/src/AuData.h
-@@ -26,22 +26,22 @@
-
- // AuMuLawAudioData
- typedef AudioDataImpl<AuMuLaw,BYTE> AuMuLawAudioData ;
--inline BYTE AuMuLawAudioData::readValue (BinaryIO* io) const { return (io->read8()) ; }
--inline void AuMuLawAudioData::writeValue (BinaryIO* io, BYTE v) const { io->write8(v) ; }
-+template <> inline BYTE AuMuLawAudioData::readValue (BinaryIO* io) const { return (io->read8()) ; }
-+template <> inline void AuMuLawAudioData::writeValue (BinaryIO* io, BYTE v) const { io->write8(v) ; }
-
- // AuPCM8AudioData
- typedef AudioDataImpl<AuPCM8,SBYTE> AuPCM8AudioData ;
--inline SBYTE AuPCM8AudioData::readValue (BinaryIO* io) const { return ((SBYTE) io->read8()) ; }
--inline void AuPCM8AudioData::writeValue (BinaryIO* io, SBYTE v) const { io->write8((BYTE) v) ; }
-+template <> inline SBYTE AuPCM8AudioData::readValue (BinaryIO* io) const { return ((SBYTE) io->read8()) ; }
-+template <> inline void AuPCM8AudioData::writeValue (BinaryIO* io, SBYTE v) const { io->write8((BYTE) v) ; }
-
- // AuPCM16AudioData
- typedef AudioDataImpl<AuPCM16,SWORD16> AuPCM16AudioData ;
--inline SWORD16 AuPCM16AudioData::readValue (BinaryIO* io) const { return ((SWORD16) io->read16_be()) ; }
--inline void AuPCM16AudioData::writeValue (BinaryIO* io, SWORD16 v) const { io->write16_be((UWORD16) v) ; }
-+template <> inline SWORD16 AuPCM16AudioData::readValue (BinaryIO* io) const { return ((SWORD16) io->read16_be()) ; }
-+template <> inline void AuPCM16AudioData::writeValue (BinaryIO* io, SWORD16 v) const { io->write16_be((UWORD16) v) ; }
-
- // AuPCM32AudioData
- typedef AudioDataImpl<AuPCM32,SWORD32> AuPCM32AudioData ;
--inline SWORD32 AuPCM32AudioData::readValue (BinaryIO* io) const { return ((SWORD32) io->read32_be()) ; }
--inline void AuPCM32AudioData::writeValue (BinaryIO* io, SWORD32 v) const { io->write32_be((UWORD32) v) ; }
-+template <> inline SWORD32 AuPCM32AudioData::readValue (BinaryIO* io) const { return ((SWORD32) io->read32_be()) ; }
-+template <> inline void AuPCM32AudioData::writeValue (BinaryIO* io, SWORD32 v) const { io->write32_be((UWORD32) v) ; }
-
- #endif // ndef SH_AUDATA_H
---- steghide-0.5.1.orig/src/AuSampleValues.cc
-+++ steghide-0.5.1/src/AuSampleValues.cc
-@@ -21,17 +21,17 @@
- #include "AuSampleValues.h"
-
- // AuMuLawSampleValue
--const BYTE AuMuLawSampleValue::MinValue = 0 ;
--const BYTE AuMuLawSampleValue::MaxValue = BYTE_MAX ;
-+template <> const BYTE AuMuLawSampleValue::MinValue = 0 ;
-+template <> const BYTE AuMuLawSampleValue::MaxValue = BYTE_MAX ;
-
- // AuPCM8SampleValue
--const SBYTE AuPCM8SampleValue::MinValue = SBYTE_MIN ;
--const SBYTE AuPCM8SampleValue::MaxValue = SBYTE_MAX ;
-+template <> const SBYTE AuPCM8SampleValue::MinValue = SBYTE_MIN ;
-+template <> const SBYTE AuPCM8SampleValue::MaxValue = SBYTE_MAX ;
-
- // AuPCM16SampleValue
--const SWORD16 AuPCM16SampleValue::MinValue = SWORD16_MIN ;
--const SWORD16 AuPCM16SampleValue::MaxValue = SWORD16_MAX ;
-+template <> const SWORD16 AuPCM16SampleValue::MinValue = SWORD16_MIN ;
-+template <> const SWORD16 AuPCM16SampleValue::MaxValue = SWORD16_MAX ;
-
- // AuPCM32SampleValue
--const SWORD32 AuPCM32SampleValue::MinValue = SWORD32_MIN ;
--const SWORD32 AuPCM32SampleValue::MaxValue = SWORD32_MAX ;
-+template <> const SWORD32 AuPCM32SampleValue::MinValue = SWORD32_MIN ;
-+template <> const SWORD32 AuPCM32SampleValue::MaxValue = SWORD32_MAX ;
---- steghide-0.5.1.orig/src/EmbData.cc
-+++ steghide-0.5.1/src/EmbData.cc
-@@ -26,6 +26,7 @@
- #include "MCryptPP.h"
- #include "MHashPP.h"
- #include "common.h"
-+#include "config.h"
-
- EmbData::EmbData (MODE m, std::string pp, std::string fn)
- : Mode(m), Passphrase(pp), FileName(fn)
---- steghide-0.5.1.orig/src/Graph.cc
-+++ steghide-0.5.1/src/Graph.cc
-@@ -33,6 +33,8 @@
- #include "msg.h"
- #include "wrapper_hash_set.h"
-
-+#include <climits>
-+
- Graph::Graph (CvrStgFile *cvr, const BitString& emb, Selector& sel)
- {
- Globs.TheGraph = this ;
---- steghide-0.5.1.orig/src/MHashPP.cc
-+++ steghide-0.5.1/src/MHashPP.cc
-@@ -120,7 +120,7 @@
-
- std::string MHashPP::getAlgorithmName (hashid id)
- {
-- char *name = mhash_get_hash_name (id) ;
-+ char *name = (char *) mhash_get_hash_name (id) ;
- std::string retval ;
- if (name == NULL) {
- retval = std::string ("<algorithm not found>") ;
-
diff --git a/testing/steghide/missing-files-configure-in.patch b/testing/steghide/missing-files-configure-in.patch
deleted file mode 100644
index f736b550875..00000000000
--- a/testing/steghide/missing-files-configure-in.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-autoreconf fails because steghide do not provide AUTHORS,
-NEWS and ChangeLog files
-
-Use 'foreign' keyword to allow automake runs whithout these files.
-
---- steghide-0.5.1/configure.in
-+++ steghide-0.5.1/configure.in
-@@ -1,7 +1,8 @@
- dnl Process this file with autoconf to produce a configure script.
--AC_INIT(src/main.cc)
-+AC_INIT([steghide], [0.5.1])
-+AC_CONFIG_SRCDIR([src/main.cc])
- AC_CANONICAL_SYSTEM
--AM_INIT_AUTOMAKE(steghide, 0.5.1)
-+AM_INIT_AUTOMAKE([foreign])
- AM_CONFIG_HEADER(config.h)
-
- dnl checks for programs.
diff --git a/testing/steghide/steghide-0.5.1-am.patch b/testing/steghide/steghide-0.5.1-am.patch
deleted file mode 100644
index e261262bd78..00000000000
--- a/testing/steghide/steghide-0.5.1-am.patch
+++ /dev/null
@@ -1,19 +0,0 @@
---- steghide-0.5.1/po/Makefile.in.in.org 2003-09-28 17:57:14.000000000 +0200
-+++ steghide-0.5.1/po/Makefile.in.in 2006-07-12 17:17:38.000000000 +0200
-@@ -27,7 +27,7 @@
- INSTALL = @INSTALL@
- INSTALL_DATA = @INSTALL_DATA@
- MKINSTALLDIRS = @MKINSTALLDIRS@
--mkinstalldirs = $(SHELL) `case "$(MKINSTALLDIRS)" in /*) echo "$(MKINSTALLDIRS)" ;; *) echo "$(top_builddir)/$(MKINSTALLDIRS)" ;; esac`
-+mkinstalldirs = $(MKINSTALLDIRS)
-
- GMSGFMT = @GMSGFMT@
- MSGFMT = @MSGFMT@
---- steghide-0.5.1/src/Makefile.am.org 2003-09-28 18:33:21.000000000 +0200
-+++ steghide-0.5.1/src/Makefile.am 2006-07-12 17:13:26.000000000 +0200
-@@ -33,5 +33,4 @@
- WavPCMSampleValue.cc error.cc main.cc msg.cc SMDConstructionHeuristic.cc
- LIBS = @LIBINTL@ @LIBS@
- localedir = $(datadir)/locale
--LIBTOOL = $(SHELL) libtool
- MAINTAINERCLEANFILES = Makefile.in
diff --git a/testing/stellarsolver/0001-don-t-mess-with-qsort_r.patch b/testing/stellarsolver/0001-don-t-mess-with-qsort_r.patch
new file mode 100644
index 00000000000..a3ee679bd23
--- /dev/null
+++ b/testing/stellarsolver/0001-don-t-mess-with-qsort_r.patch
@@ -0,0 +1,53 @@
+From 5a78b6d12739df5e551a56f6c93b6a5d4a791b18 Mon Sep 17 00:00:00 2001
+From: Clayton Craft <clayton@craftyguy.net>
+Date: Sat, 24 Feb 2024 22:43:57 -0800
+Subject: [PATCH] don't mess with qsort_r
+
+The built-in qsort_r implementation detection/test thing is broken on
+Alpine, this makes it seem like fixing this upstream isn't easy:
+
+https://github.com/rlancaste/stellarsolver/issues/125
+---
+ CMakeLists.txt | 26 +++-----------------------
+ 1 file changed, 3 insertions(+), 23 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index ce09934..bddf9a2 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -58,29 +58,9 @@ if (WIN32)
+
+ else(WIN32)
+
+-try_run(RUN_RESULT_2 COMPILE_SUCCESS_2 ${CMAKE_CURRENT_BINARY_DIR} ${config_SRCS} COMPILE_DEFINITIONS -DTEST_DECLARE_QSORT_R=ON)
+-if(COMPILE_SUCCESS_2 AND (RUN_RESULT_2 EQUAL 0))
+- SET(VAR_2 0)
+-else()
+- SET(VAR_2 1)
+-endif()
+-file(APPEND "${config_FN}" "#define NEED_DECLARE_QSORT_R ${VAR_2}\n")
+-
+-try_run(RUN_RESULT_3 COMPILE_SUCCESS_3 ${CMAKE_CURRENT_BINARY_DIR} ${config_SRCS} COMPILE_DEFINITIONS -DTEST_QSORT_R=ON)
+-if(COMPILE_SUCCESS_3 AND (RUN_RESULT_3 EQUAL 0))
+- SET(VAR_3 1)
+-else()
+- SET(VAR_3 0)
+-endif()
+-file(APPEND "${config_FN}" "#define NEED_QSORT_R ${VAR_3}\n")
+-
+-try_run(RUN_RESULT_4 COMPILE_SUCCESS_4 ${CMAKE_CURRENT_BINARY_DIR} ${config_SRCS} COMPILE_DEFINITIONS -DTEST_SWAP_QSORT_R=ON)
+-if(COMPILE_SUCCESS_4 AND (RUN_RESULT_4 EQUAL 0))
+- SET(VAR_4 1)
+-else()
+- SET(VAR_4 0)
+-endif()
+-file(APPEND "${config_FN}" "#define NEED_SWAP_QSORT_R ${VAR_4}\n")
++file(APPEND "${config_FN}" "#define NEED_DECLARE_QSORT_R 0\n")
++file(APPEND "${config_FN}" "#define NEED_QSORT_R 0\n")
++file(APPEND "${config_FN}" "#define NEED_SWAP_QSORT_R 1\n")
+
+ endif(WIN32)
+
+--
+2.43.2
+
diff --git a/testing/stellarsolver/APKBUILD b/testing/stellarsolver/APKBUILD
new file mode 100644
index 00000000000..3841dda4683
--- /dev/null
+++ b/testing/stellarsolver/APKBUILD
@@ -0,0 +1,49 @@
+# Contributor: Clayton Craft <clayton@craftyguy.net>
+# Maintainer: Clayton Craft <clayton@craftyguy.net>
+pkgname=stellarsolver
+pkgver=2.5
+pkgrel=0
+pkgdesc="SEP-based star extractor and astrometry.net-based internal astrometric solver"
+url="https://github.com/rlancaste/stellarsolver"
+arch="all"
+license="GPL-3.0-or-later"
+makedepends="
+ cfitsio-dev
+ cmake
+ gsl-dev
+ qt5-qtbase
+ qt5-qtdeclarative-dev
+ samurai
+ wcslib-dev
+"
+subpackages="$pkgname-dev"
+source="
+ https://github.com/rlancaste/stellarsolver/archive/$pkgver/stellarsolver-$pkgver.tar.gz
+ 0001-don-t-mess-with-qsort_r.patch
+"
+
+build() {
+ if [ "$CBUILD" != "$CHOST" ]; then
+ local crossopts="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=None \
+ $crossopts
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+003522ac0b4130e0ca16ccb617743e3716aa2a182ad63abfb901ea0b47c28a745e8ca1e5b7874d17636ff948b1ebc055277557f89a159e425af7d2a64f513fe8 stellarsolver-2.5.tar.gz
+ba7533d00359ecd6b66107aaa264185f2a2830d91d4a2287c5a872d116bbf2b88766859b54c9ab93d9589b01a93582e9b68d52ce5328df1f89aea818ed8e3ab6 0001-don-t-mess-with-qsort_r.patch
+"
diff --git a/testing/step-certificates/01-Makefile-GOFLAGS.patch b/testing/step-certificates/01-Makefile-GOFLAGS.patch
deleted file mode 100644
index 5facde170e4..00000000000
--- a/testing/step-certificates/01-Makefile-GOFLAGS.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-From: Charles Wimmer <charles@wimmer.net>
-
-This patch fixes some shell quoting issues. GOFLAGS was not being honored.
-
----
-
---- a/Makefile
-+++ b/Makefile
-@@ -86,7 +86,7 @@
-
- DATE := $(shell date -u '+%Y-%m-%d %H:%M UTC')
- LDFLAGS := -ldflags='-w -X "main.Version=$(VERSION)" -X "main.BuildTime=$(DATE)"'
--GOFLAGS := CGO_ENABLED=0
-+_GOFLAGS := CGO_ENABLED=0
-
- download:
- $Q go mod download
-@@ -96,23 +96,23 @@
-
- $(PREFIX)bin/$(BINNAME): download $(call rwildcard,*.go)
- $Q mkdir -p $(@D)
-- $Q $(GOOS_OVERRIDE) $(GOFLAGS) go build -v -o $(PREFIX)bin/$(BINNAME) $(LDFLAGS) $(PKG)
-+ $Q $(GOOS_OVERRIDE) $(_GOFLAGS) go build -v -o $(PREFIX)bin/$(BINNAME) $(LDFLAGS) $(PKG)
-
- $(PREFIX)bin/$(CLOUDKMS_BINNAME): download $(call rwildcard,*.go)
- $Q mkdir -p $(@D)
-- $Q $(GOOS_OVERRIDE) $(GOFLAGS) go build -v -o $(PREFIX)bin/$(CLOUDKMS_BINNAME) $(LDFLAGS) $(CLOUDKMS_PKG)
-+ $Q $(GOOS_OVERRIDE) $(_GOFLAGS) go build -v -o $(PREFIX)bin/$(CLOUDKMS_BINNAME) $(LDFLAGS) $(CLOUDKMS_PKG)
-
- $(PREFIX)bin/$(AWSKMS_BINNAME): download $(call rwildcard,*.go)
- $Q mkdir -p $(@D)
-- $Q $(GOOS_OVERRIDE) $(GOFLAGS) go build -v -o $(PREFIX)bin/$(AWSKMS_BINNAME) $(LDFLAGS) $(AWSKMS_PKG)
-+ $Q $(GOOS_OVERRIDE) $(_GOFLAGS) go build -v -o $(PREFIX)bin/$(AWSKMS_BINNAME) $(LDFLAGS) $(AWSKMS_PKG)
-
- $(PREFIX)bin/$(YUBIKEY_BINNAME): download $(call rwildcard,*.go)
- $Q mkdir -p $(@D)
-- $Q $(GOOS_OVERRIDE) $(GOFLAGS) go build -v -o $(PREFIX)bin/$(YUBIKEY_BINNAME) $(LDFLAGS) $(YUBIKEY_PKG)
-+ $Q $(GOOS_OVERRIDE) $(_GOFLAGS) go build -v -o $(PREFIX)bin/$(YUBIKEY_BINNAME) $(LDFLAGS) $(YUBIKEY_PKG)
-
- $(PREFIX)bin/$(PKCS11_BINNAME): download $(call rwildcard,*.go)
- $Q mkdir -p $(@D)
-- $Q $(GOOS_OVERRIDE) $(GOFLAGS) go build -v -o $(PREFIX)bin/$(PKCS11_BINNAME) $(LDFLAGS) $(PKCS11_PKG)
-+ $Q $(GOOS_OVERRIDE) $(_GOFLAGS) go build -v -o $(PREFIX)bin/$(PKCS11_BINNAME) $(LDFLAGS) $(PKCS11_PKG)
-
- # Target to force a build of step-ca without running tests
- simple: build
-@@ -132,7 +132,7 @@
- # Test
- #########################################
- test:
-- $Q $(GOFLAGS) go test -short -coverprofile=coverage.out ./...
-+ $Q $(_GOFLAGS) go test -short -coverprofile=coverage.out ./...
-
- testcgo:
- $Q go test -short -coverprofile=coverage.out ./...
-@@ -142,7 +142,7 @@
- integrate: integration
-
- integration: bin/$(BINNAME)
-- $Q $(GOFLAGS) go test -tags=integration ./integration/...
-+ $Q $(_GOFLAGS) go test -tags=integration ./integration/...
-
- .PHONY: integrate integration
-
diff --git a/testing/step-certificates/02-Makefile-yubikey-and-pkcs11-binary.patch b/testing/step-certificates/02-Makefile-yubikey-and-pkcs11-binary.patch
deleted file mode 100644
index 32ce59e0855..00000000000
--- a/testing/step-certificates/02-Makefile-yubikey-and-pkcs11-binary.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From: Dermot Bradley <dermot_bradley@yahoo.com>
-Date: Fri, 28 Aug 2020 19:26 +0100
-Subject: [PATCH] step-certificates: Build Yubikey KMS binary
-
-Enable building of Yubikey KMS binary, to do this also enable CGO.
-
----
-
-diff -aur a/Makefile b/Makefile
---- a/Makefile
-+++ b/Makefile
-@@ -86,7 +86,7 @@
-
- DATE := $(shell date -u '+%Y-%m-%d %H:%M UTC')
- LDFLAGS := -ldflags='-w -X "main.Version=$(VERSION)" -X "main.BuildTime=$(DATE)"'
--_GOFLAGS := CGO_ENABLED=0
-+_GOFLAGS := CGO_ENABLED=1
-
- download:
- $Q go mod download
-@@ -167,15 +167,19 @@
-
- INSTALL_PREFIX?=/usr/
-
--install: $(PREFIX)bin/$(BINNAME) $(PREFIX)bin/$(CLOUDKMS_BINNAME) $(PREFIX)bin/$(AWSKMS_BINNAME)
-+install: $(PREFIX)bin/$(BINNAME) $(PREFIX)bin/$(CLOUDKMS_BINNAME) $(PREFIX)bin/$(AWSKMS_BINNAME) $(PREFIX)bin/$(YUBIKEY_BINNAME) $(PREFIX)bin/$(PKCS11_BINNAME)
- $Q install -D $(PREFIX)bin/$(BINNAME) $(DESTDIR)$(INSTALL_PREFIX)bin/$(BINNAME)
- $Q install -D $(PREFIX)bin/$(CLOUDKMS_BINNAME) $(DESTDIR)$(INSTALL_PREFIX)bin/$(CLOUDKMS_BINNAME)
- $Q install -D $(PREFIX)bin/$(AWSKMS_BINNAME) $(DESTDIR)$(INSTALL_PREFIX)bin/$(AWSKMS_BINNAME)
-+ $Q install -D $(PREFIX)bin/$(YUBIKEY_BINNAME) $(DESTDIR)$(INSTALL_PREFIX)bin/$(YUBIKEY_BINNAME)
-+ $Q install -D $(PREFIX)bin/$(PKCS11_BINNAME) $(DESTDIR)$(INSTALL_PREFIX)bin/$(PKCS11_BINNAME)
-
- uninstall:
- $Q rm -f $(DESTDIR)$(INSTALL_PREFIX)/bin/$(BINNAME)
- $Q rm -f $(DESTDIR)$(INSTALL_PREFIX)/bin/$(CLOUDKMS_BINNAME)
- $Q rm -f $(DESTDIR)$(INSTALL_PREFIX)/bin/$(AWSKMS_BINNAME)
-+ $Q rm -f $(DESTDIR)$(INSTALL_PREFIX)/bin/$(YUBIKEY_BINNAME)
-+ $Q rm -f $(DESTDIR)$(INSTALL_PREFIX)/bin/$(PKCS11_BINNAME)
-
- .PHONY: install uninstall
-
diff --git a/testing/step-certificates/APKBUILD b/testing/step-certificates/APKBUILD
deleted file mode 100644
index 9d14de83528..00000000000
--- a/testing/step-certificates/APKBUILD
+++ /dev/null
@@ -1,60 +0,0 @@
-# Contributor: Adrian L Lange <alpine@p3lim.net>
-# Contributor: Charles Wimmer <charles@wimmer.net>
-# Contributor: Dermot Bradley <dermot_bradley@yahoo.com>
-# Maintainer: Dermot Bradley <dermot_bradley@yahoo.com>
-pkgname=step-certificates
-pkgver=0.20.0
-pkgrel=0
-pkgdesc="Online certificate authority and related tools"
-url="https://smallstep.com/certificates/"
-arch="all !s390x !riscv64" # step-cli
-license="Apache-2.0"
-makedepends="
- bash
- go
- go-bindata
- libcap
- pcsc-lite-dev
- "
-depends="step-cli"
-options="!check" # No tests as fails for Yubikey
-install="$pkgname.pre-install"
-subpackages="
- $pkgname-openrc
- "
-source="
- $pkgname-$pkgver.tar.gz::https://github.com/smallstep/certificates/releases/download/v$pkgver/step-ca_$pkgver.tar.gz
- 01-Makefile-GOFLAGS.patch
- 02-Makefile-yubikey-and-pkcs11-binary.patch
- step-ca.confd
- step-ca.initd
- step-ca.logrotate
- "
-builddir="$srcdir"
-
-build() {
- make simple
-}
-
-check() {
- make test
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- setcap cap_net_bind_service=+ep "$pkgdir"/usr/bin/step-ca
-
- install -m 644 -D "$srcdir"/step-ca.confd "$pkgdir"/etc/conf.d/step-ca
- install -m 755 -D "$srcdir"/step-ca.initd "$pkgdir"/etc/init.d/step-ca
-
- install -m 644 -D "$srcdir"/step-ca.logrotate "$pkgdir"/etc/logrotate.d/step-ca
-}
-
-sha512sums="
-f603a4a91c29e376fab1cf3368f3cc07984955cdb392f19b19944d42690d07a65402624da3210b1c11187b58b31cc8b07bb089becfcabef6634aee3ba33f29de step-certificates-0.20.0.tar.gz
-fce464b646dfb087da27beed7135c52b2926df8595675ab3117afa9a98ac2c8ac8bed57ddf6567bcccc417dc076321a230a77ef029fad2ab3213c2b3655eb66b 01-Makefile-GOFLAGS.patch
-0b49bda9b0b0df9d9e10ab96405a8eff5b50aaf354b8ce424d4f085ef7b033d98169521f798b27dce3959ea18cf97da365613417c40a3d54779fad7ecc15e3d4 02-Makefile-yubikey-and-pkcs11-binary.patch
-b207ff9a887389334b624ae5e389379b6ee37bec712dbc075e3c6447f2e542594dbcddc75f0d4b057e1b855fd135a625e6e6c6caff02a9e4de8475318a655836 step-ca.confd
-45a82345ad5906f3eef84df5c71d5b830423d51e1e86447937fac7efbbfd78bfcc93e30dab06d4baf8198223f1cb1e8f5551b70385702b976a30f4aebb0b8963 step-ca.initd
-17740fbe3a72f1c9fe4f90dffb368ad4fe6b98a36512ca58614a4bfbc4b6895ecc6daa4a5a78abcd9b1840eb63ce90523d7fa77a2b42da0cf539bf36330c9f32 step-ca.logrotate
-"
diff --git a/testing/step-certificates/step-ca.confd b/testing/step-certificates/step-ca.confd
deleted file mode 100644
index 61c946188f6..00000000000
--- a/testing/step-certificates/step-ca.confd
+++ /dev/null
@@ -1,16 +0,0 @@
-# Configuration for /etc/init.d/step-ca
-
-# The directory where all CA-related files will be stored.
-#
-STEPPATH="/etc/step-ca"
-
-# The TCP port number for the CA to listen on.
-PORT="8443"
-
-# The DNS name or IP address for the CA to listen on.
-#
-ADDRESS="localhost"
-
-#
-#
-CA_URL="https://${ADDRESS}:${PORT}"
diff --git a/testing/step-certificates/step-ca.initd b/testing/step-certificates/step-ca.initd
deleted file mode 100644
index 43b8b81e702..00000000000
--- a/testing/step-certificates/step-ca.initd
+++ /dev/null
@@ -1,52 +0,0 @@
-#!/sbin/openrc-run
-
-description="Step CA"
-description_check="Verify configuration"
-
-config_dir="${STEPPATH:-/etc/step-ca}"
-pidfile="/run/$RC_SVCNAME.pid"
-command="/usr/bin/step-ca"
-command_args="${config_dir}/config/ca.json --password-file=${config_dir}/password.txt"
-command_background="yes"
-command_user="step-ca:step-ca"
-start_stop_daemon_args="--env STEPPATH=${STEPPATH} --stdout /var/log/$RC_SVCNAME/${RC_SVCNAME}.log --stderr /var/log/$RC_SVCNAME/${RC_SVCNAME}.err"
-extra_commands="checkconfig"
-
-required_files="${config_dir}/config/ca.json ${config_dir}/password.txt"
-
-depend() {
- use logger dns
- after entropy networking
-}
-
-start_pre() {
- checkconfig
-
- command_args="${command_args} ${EXTRA_ARGS}"
-
- if [ "x${ENTROPY_COUNT}" != "x" ]; then
- command_args="${command_args} -e ${ENTROPY_COUNT}"
- fi
-}
-
-checkconfig() {
- if [ ! -d /var/log/step-ca ]; then
- mkdir -p /var/log/step-ca
- chown -R step-ca:step-ca /var/log/step-ca
- chmod -R 700 /var/log/step-ca
- fi
-
- if [ ! -d ${config_dir} ]; then
- mkdir -p ${config_dir}
- chown -R step-ca:step-ca ${config_dir}
- chmod -R 700 ${config_dir}
- fi
-
- if [ ! -f ${config_dir}/config/ca.json ]; then
- ewarn "CA configuration file is missing"
- fi
-
- if [ ! -f ${config_dir}/password.txt ]; then
- ewarn "CA password file is missing"
- fi
-}
diff --git a/testing/step-certificates/step-ca.logrotate b/testing/step-certificates/step-ca.logrotate
deleted file mode 100644
index c0a8a02d025..00000000000
--- a/testing/step-certificates/step-ca.logrotate
+++ /dev/null
@@ -1,7 +0,0 @@
-/var/log/step-ca/step-ca.err /var/log/step-ca/step-ca.log {
- compress
- delaycompress
- missingok
- monthly
- notifempty
-}
diff --git a/testing/step-certificates/step-certificates.pre-install b/testing/step-certificates/step-certificates.pre-install
deleted file mode 100644
index 59ae6fc2bbe..00000000000
--- a/testing/step-certificates/step-certificates.pre-install
+++ /dev/null
@@ -1,28 +0,0 @@
-#!/bin/sh
-
-config_dir="/etc/step-ca"
-log_dir="/var/log/step-ca"
-
-addgroup -S step-ca 2>/dev/null
-adduser -S -D -h ${config_dir} -s /bin/sh -G step-ca \
- -g "step-ca user" step-ca 2>/dev/null
-
-directory_list="config db"
-for directory in $directory_list; do
- mkdir -p ${config_dir}/"$directory"
-done
-mkdir ${log_dir}
-
-step_path_profile="STEPPATH=\"${config_dir}\"; export STEPPATH"
-if [ ! -f ${config_dir}/.profile ]; then
- echo "$step_path_profile" > ${config_dir}/.profile
-else
- echo "$step_path_profile" >> ${config_dir}/.profile
-fi
-
-chown -R step-ca:step-ca ${config_dir}
-chmod -R 700 ${config_dir}
-
-chown -R step-ca:step-ca ${log_dir}
-
-exit 0
diff --git a/testing/stern/APKBUILD b/testing/stern/APKBUILD
new file mode 100644
index 00000000000..590fdce6b5d
--- /dev/null
+++ b/testing/stern/APKBUILD
@@ -0,0 +1,53 @@
+# Contributor: Hoang Nguyen <folliekazetani@protonmail.com>
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=stern
+pkgver=1.28.0
+pkgrel=2
+pkgdesc="Multi pod and container log tailing for Kubernetes"
+url="https://github.com/stern/stern"
+arch="all"
+license="Apache-2.0"
+makedepends="go"
+checkdepends="tzdata"
+subpackages="
+ $pkgname-bash-completion
+ $pkgname-zsh-completion
+ $pkgname-fish-completion
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/stern/stern/archive/refs/tags/v$pkgver.tar.gz"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ GOLDFLAGS="
+ -X github.com/stern/stern/cmd.version=$pkgver
+ -X github.com/stern/stern/cmd.commit=AlpineLinux
+ -X github.com/stern/stern/cmd.date=$(date +%FT%T%Z)
+ "
+ go build -v -o bin/$pkgname -ldflags "$GOLDFLAGS"
+
+ for shell in bash fish zsh; do
+ ./bin/stern --completion $shell > stern.$shell
+ done
+}
+
+check() {
+ go test ./...
+}
+
+package() {
+ install -Dm755 bin/$pkgname -t "$pkgdir"/usr/bin/
+
+ install -Dm644 stern.bash \
+ "$pkgdir"/usr/share/bash-completion/completions/stern
+ install -Dm644 stern.zsh \
+ "$pkgdir"/usr/share/zsh/site-functions/_stern
+ install -Dm644 stern.fish \
+ "$pkgdir"/usr/share/fish/vendor_completions.d/stern.fish
+}
+
+sha512sums="
+cae6aab0da301448352c346d4797c8e34b64411fccb1e925ef26ad918b355008d17bba1146074cea299019af33470a778a0481773c0867242699d4ba63a6531f stern-1.28.0.tar.gz
+"
diff --git a/testing/stgit/APKBUILD b/testing/stgit/APKBUILD
index 0731b20246b..3c235590043 100644
--- a/testing/stgit/APKBUILD
+++ b/testing/stgit/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Joseph Benden <joe@benden.us>
pkgname=stgit
pkgver=1.3
-pkgrel=1
+pkgrel=5
pkgdesc="Manage a stack of patches using GIT as a backend"
arch="noarch"
url="http://www.procode.org/stgit/"
@@ -11,6 +11,7 @@ options="!check" # unit-tests fail due to iconv usage
depends="git python3"
makedepends="asciidoc xmlto perl py3-setuptools"
subpackages="
+ $pkgname-pyc
$pkgname-doc
$pkgname-zsh-completion
$pkgname-fish-completion
@@ -59,7 +60,7 @@ package() {
install -Dm0644 completion/stgit.zsh \
"$pkgdir"/usr/share/zsh/site-functions/_stgit
install -Dm0644 completion/stg.fish \
- "$pkgdir"/usr/share/fish/completions/stg.fish
+ "$pkgdir"/usr/share/fish/vendor_completions.d/stg.fish
# lisp
install -Dm0644 contrib/stgit.el -t "$pkgdir"/usr/share/emacs/site-lisp
diff --git a/testing/sthttpd/APKBUILD b/testing/sthttpd/APKBUILD
index 6c4df168f08..3cdea07f5ba 100644
--- a/testing/sthttpd/APKBUILD
+++ b/testing/sthttpd/APKBUILD
@@ -3,7 +3,7 @@
pkgname=sthttpd
_pkgname=thttpd
pkgver=2.27.1
-pkgrel=1
+pkgrel=2
pkgdesc="Supported fork of the thttpd web server"
url="https://github.com/blueness/sthttpd"
arch="all"
diff --git a/testing/stockfish/APKBUILD b/testing/stockfish/APKBUILD
new file mode 100644
index 00000000000..fb177f78dd6
--- /dev/null
+++ b/testing/stockfish/APKBUILD
@@ -0,0 +1,65 @@
+# Contributor: Prokop RandáÄek <prokop@rdck.dev>
+# Maintainer: Prokop RandáÄek <prokop@rdck.dev>
+pkgname=stockfish
+pkgver=16
+_nnue="5af11540bbfe"
+pkgrel=0
+pkgdesc="Strong chess engine"
+url="https://stockfishchess.org/"
+# s390x: doesn't build
+# ppc64le: fails tests
+arch="all !ppc64le !s390x"
+license="GPL-3.0-only"
+checkdepends="bash expect"
+source="$pkgname-$pkgver.tar.gz::https://github.com/official-stockfish/Stockfish/archive/refs/tags/sf_$pkgver.tar.gz
+ https://tests.stockfishchess.org/api/nn/nn-$_nnue.nnue
+ no-lto.patch
+ "
+builddir="$srcdir/Stockfish-sf_$pkgver/src"
+
+prepare() {
+ default_prepare
+
+ ln -sfv "$srcdir"/nn-$_nnue.nnue "$builddir"/
+}
+
+build() {
+ export CXXFLAGS="$CXXFLAGS -O2"
+ export CPPFLAGS="$CPPFLAGS -O2"
+
+ local arch
+ case "$CARCH" in
+ x86_64) arch=x86-64 ;;
+ x86) arch=x86-32 ;;
+ aarch64) arch=armv8 ;;
+ armhf) arch=armv7 ;;
+ ppc64le) arch=ppc-64 ;;
+ armv7) arch=armv7 ;;
+ riscv64) arch=riscv64 ;;
+ *) die "Unable to determine architecture from CARCH=$CARCH" ;;
+ esac
+
+ make COMP="${CC:-cc}" ARCH="$arch" profile-build
+}
+
+check() {
+ # not supported on all platforms that stockfish supports
+ # ../tests/instrumented.sh --valgrind
+ # ../tests/instrumented.sh --valgrind-thread
+ # requires building with sanitizers
+ # ../tests/instrumented.sh --sanitizer-undefined
+ # ../tests/instrumented.sh --sanitizer-thread
+ ../tests/instrumented.sh
+ ../tests/perft.sh
+ ../tests/reprosearch.sh
+}
+
+package() {
+ install -Dm755 stockfish "$pkgdir"/usr/bin/stockfish
+}
+
+sha512sums="
+cc8728bd76cb71ab2e3dddb909acf3ebd26a7d44130509dcb2cd90959c939d7324abebf2c69092230028333428a90fa345a10fcb4e9c50e53f4958c61daedcc7 stockfish-16.tar.gz
+e86633e1129a5e9727d137ddddba44918bb4dfb88b192659e2323ae4eafc44175c1e9c24ab1ce72dc2a05682b00bdf6aba1f1caf6b0b44ec1cef4a14ae465006 nn-5af11540bbfe.nnue
+1f80c03f8b1250c74344609fddd03d8360637149bba8a0e7110e2148e289b02242f7fd1e02af2536fe008a3aa6da89505e626f4e8af04b5652647867975eb0dc no-lto.patch
+"
diff --git a/testing/stockfish/no-lto.patch b/testing/stockfish/no-lto.patch
new file mode 100644
index 00000000000..48cf87e1fbc
--- /dev/null
+++ b/testing/stockfish/no-lto.patch
@@ -0,0 +1,47 @@
+diff --git a/Makefile b/Makefile
+index 82664618..41137e45 100644
+--- a/Makefile
++++ b/Makefile
+@@ -713,41 +713,6 @@ ifneq ($(GIT_DATE), )
+ CXXFLAGS += -DGIT_DATE=$(GIT_DATE)
+ endif
+
+-### 3.8 Link Time Optimization
+-### This is a mix of compile and link time options because the lto link phase
+-### needs access to the optimization flags.
+-ifeq ($(optimize),yes)
+-ifeq ($(debug), no)
+- ifeq ($(comp),$(filter $(comp),clang icx))
+- CXXFLAGS += -flto=full
+- ifeq ($(comp),icx)
+- CXXFLAGS += -fwhole-program-vtables
+- endif
+- ifeq ($(target_windows),yes)
+- CXXFLAGS += -fuse-ld=lld
+- endif
+- LDFLAGS += $(CXXFLAGS)
+-
+-# GCC and CLANG use different methods for parallelizing LTO and CLANG pretends to be
+-# GCC on some systems.
+- else ifeq ($(comp),gcc)
+- ifeq ($(gccisclang),)
+- CXXFLAGS += -flto -flto-partition=one
+- LDFLAGS += $(CXXFLAGS) -flto=jobserver
+- else
+- CXXFLAGS += -flto=full
+- LDFLAGS += $(CXXFLAGS)
+- endif
+-
+-# To use LTO and static linking on Windows,
+-# the tool chain requires gcc version 10.1 or later.
+- else ifeq ($(comp),mingw)
+- CXXFLAGS += -flto -flto-partition=one
+- LDFLAGS += $(CXXFLAGS) -save-temps
+- endif
+-endif
+-endif
+-
+ ### 3.9 Android 5 can only run position independent executables. Note that this
+ ### breaks Android 4.0 and earlier.
+ ifeq ($(OS), Android)
+
diff --git a/testing/stone-soup/APKBUILD b/testing/stone-soup/APKBUILD
index 01ed21826dd..3cca1755bf9 100644
--- a/testing/stone-soup/APKBUILD
+++ b/testing/stone-soup/APKBUILD
@@ -1,29 +1,47 @@
# Contributor: Matthew T Hoare <matthew.t.hoare@gmail.com>
# Maintainer: Matthew T Hoare <matthew.t.hoare@gmail.com>
pkgname=stone-soup
-pkgver=0.27.1
+pkgver=0.31.0
pkgrel=0
pkgdesc="Open-source, single-player, role-playing roguelike game of exploration and treasure-hunting"
url="https://crawl.develz.org"
arch="all"
license="BSD-2-Clause AND BSD-3-Clause AND CC0-1.0 AND MIT AND Zlib AND Apache-2.0 AND BSL-1.0"
-depends="mesa-dri-gallium ttf-dejavu"
-makedepends="freetype-dev glu-dev libexecinfo-dev lua5.1-dev mesa-dev ncurses-dev perl pngcrush py3-yaml
- python3 sdl2-dev sdl2_image-dev sdl2_mixer-dev sqlite-dev"
+depends="mesa-dri-gallium font-dejavu"
+makedepends="
+ freetype-dev
+ glu-dev
+ lua5.1-dev
+ mesa-dev
+ ncurses-dev
+ perl
+ pngcrush
+ py3-yaml
+ python3
+ sdl2-dev
+ sdl2_image-dev
+ sdl2_mixer-dev
+ sqlite-dev
+ "
options="!check" # no checks
source="$pkgname-$pkgver.tar.xz::https://github.com/crawl/crawl/releases/download/$pkgver/stone_soup-$pkgver-nodeps.tar.xz
crawl.desktop
- crawl-tiles.desktop"
+ crawl-tiles.desktop
+ no-execinfo.patch
+ root-owner.patch
+ "
builddir="$srcdir/stone_soup-$pkgver"
prepare() {
default_prepare
- # fix backtrace build failure
- sed -i '10s/$/ \&\& (!defined(TARGET_OS_LINUX) || defined(_GLIBC_))/' source/crash.cc
-
- # adjust Makefile to use owner root:root
- sed -i 's/INSTALL_UGRP := games:games/INSTALL_UGRP := root:root/' source/Makefile
+ # fix version
+ git init .
+ git config user.name a
+ git config user.email 'a@a'
+ git add .
+ git commit -m "$pkgver"
+ git tag $pkgver
# create separate source directories for console and tiles versions
cp -r source console
@@ -32,10 +50,25 @@ prepare() {
build() {
# first build tiles version
- make -C tiles TILES=y SOUND=y
+ make -C tiles \
+ DESTDIR="$pkgdir" \
+ SAVEDIR="~/.crawl/" \
+ DATADIR="/usr/share/$pkgname/data" \
+ TILES=y \
+ SOUND=y \
+ EXTERNAL_LDFLAGS="$LDFLAGS" \
+ prefix=/usr \
+ bin_prefix=bin
# then build console version
- make -C console SOUND=y
+ make -C console \
+ DESTDIR="$pkgdir" \
+ SAVEDIR="~/.crawl/" \
+ DATADIR="/usr/share/$pkgname/data" \
+ SOUND=y \
+ EXTERNAL_LDFLAGS="$LDFLAGS" \
+ prefix=/usr \
+ bin_prefix=bin
}
package() {
@@ -75,7 +108,9 @@ package() {
}
sha512sums="
-34f693deb6a3e89c63231831402d2b3c909d0ad40142ab9dce704af2443ca25e44f5feefed5875dae03a0c70773425a545c932b2f67fd639e3550722fb2b81bf stone-soup-0.27.1.tar.xz
+f0027144fb538f605c9c8e1987d689e79341e19dc393971c86cfc3ec7aa4d62d5abddc4a38e05d8b2d047098b64cdcc0dd003b4e92ecdab09dae8a16a76043a6 stone-soup-0.31.0.tar.xz
8e14cfa97f8765126050b14dc85cee60a6f00fe458b21714a34403872fbfc11f7b1d42897424936fbaaba5ad0fed76c10a90c4c144076c9526f7e653c3dbbca0 crawl.desktop
d8c64f6c388f3551e6744b0fccfa0fc7148cb839174a5ed464fdb46511f8e0f4e66cb297f91446e5e098cbacddaba88476f499fb50e6c39e6563fe8231dafe54 crawl-tiles.desktop
+3fbd434786edb456b27942cd1aa8034241359b701afadea73f54c3622b1ccaf6f7f3a1c01b8d0d3e8388baaed38b205c4013da35a00974848af5b27f6141c379 no-execinfo.patch
+9b785d08e722a8fee4f1fb624b77110cfdaa6d74422d874d53a13064b1054463738aceb4a40c83a1c5932c07f76186f1136bb60c00ed96e10e225edcb4722636 root-owner.patch
"
diff --git a/testing/stone-soup/no-execinfo.patch b/testing/stone-soup/no-execinfo.patch
new file mode 100644
index 00000000000..8ae98b27c4a
--- /dev/null
+++ b/testing/stone-soup/no-execinfo.patch
@@ -0,0 +1,13 @@
+diff --git a/source/crash.cc b/source/crash.cc
+index 7b4f65d..e77f8ce 100644
+--- a/source/crash.cc
++++ b/source/crash.cc
+@@ -7,7 +7,7 @@
+
+ #include "crash.h"
+
+-#if defined(UNIX)
++#if defined(__GLIBC__)
+ #include <unistd.h>
+ #include <sys/param.h>
+ #define BACKTRACE_SUPPORTED
diff --git a/testing/stone-soup/root-owner.patch b/testing/stone-soup/root-owner.patch
new file mode 100644
index 00000000000..6605d259b35
--- /dev/null
+++ b/testing/stone-soup/root-owner.patch
@@ -0,0 +1,13 @@
+diff --git a/source/Makefile b/source/Makefile
+index eb65f6d..2b13ab1 100644
+--- a/source/Makefile
++++ b/source/Makefile
+@@ -407,7 +407,7 @@ MCHMOD_SAVEDIR := 775
+ MCHMOD_LOGS := 664
+
+ # The user:group to install the game as.
+-INSTALL_UGRP := games:games
++INSTALL_UGRP := root:root
+ endif
+
+ ifeq ($(patsubst %/local,%,$(patsubst %/,%,$(prefix))),/usr)
diff --git a/testing/straw-viewer/APKBUILD b/testing/straw-viewer/APKBUILD
index 934d3e582c9..e0c826d5a46 100644
--- a/testing/straw-viewer/APKBUILD
+++ b/testing/straw-viewer/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Milan P. Stanić <mps@arvanta.net>
pkgname=straw-viewer
pkgver=0.1.3
-pkgrel=0
+pkgrel=2
pkgdesc="GTK+ interface to YouTube using the API of invidio.us"
url="https://github.com/trizen/straw-viewer"
arch="noarch"
@@ -10,8 +10,7 @@ license="Artistic-2.0 License"
depends="perl perl-gtk3 perl-file-sharedir perl-data-dump perl-json-xs
perl-lwp-protocol-https perl-term-readline-gnu"
subpackages="$pkgname-doc"
-makedepends="perl-dev perl-libwww perl-json perl-json-xs perl-lwp-protocol-https
- perl-data-dump perl-gtk3 perl-file-sharedir perl-term-readline-gnu
+makedepends="perl-dev perl-libwww perl-json
perl-unicode-linebreak perl-module-build
"
source="straw-viewer-$pkgver.tar.gz::https://github.com/trizen/straw-viewer/archive/$pkgver.tar.gz"
diff --git a/testing/strawberry/APKBUILD b/testing/strawberry/APKBUILD
deleted file mode 100644
index f5542e0b962..00000000000
--- a/testing/strawberry/APKBUILD
+++ /dev/null
@@ -1,64 +0,0 @@
-# Contributor: knuxify <knuxify@gmail.com>
-# Maintainer: knuxify <knuxify@gmail.com>
-pkgname=strawberry
-pkgver=1.0.4
-pkgrel=1
-pkgdesc="Strawberry Music Player"
-url="https://strawberrymusicplayer.org"
-arch="all !s390x" # blocked by qt6-qttools-dev
-license="GPL-3.0-or-later"
-depends="gst-plugins-base gst-plugins-good qt6-qtbase-sqlite"
-makedepends="
- alsa-lib-dev
- boost-dev
- chromaprint-dev
- cmake
- dbus-dev
- fftw-dev
- glib-dev
- gnutls-dev
- gst-plugins-base-dev
- gstreamer-dev
- libcdio-dev
- libgpod-dev
- libmtp-dev
- libmygpo-qt-dev
- libxcb-dev
- protobuf-dev
- pulseaudio-dev
- qt6-qtbase-dev
- qt6-qttools-dev
- samurai
- sparsehash
- sqlite-dev
- taglib-dev
-"
-options="!check" # no test suite
-subpackages="$pkgname-doc"
-source="https://files.strawberrymusicplayer.org/strawberry-$pkgver.tar.xz"
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build -G Ninja \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DBUILD_SHARED_LIBS=True \
- -DCMAKE_BUILD_TYPE=RelWithDebInfo \
- -DBUILD_WITH_QT6=ON \
- $CMAKE_CROSSOPTS .
- cmake --build build
-}
-
-check() {
- cd build
- CTEST_OUTPUT_ON_FAILURE=TRUE ctest
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-
-sha512sums="
-e2a90911acd47735715266cb3745910a6e04a2ef4e98b0c9734230a5e2b382cf7d3681fc2e368a361e7a7c53bc0627a88a36e6df6c4f6941d54f65e2424d29ee strawberry-1.0.4.tar.xz
-"
diff --git a/testing/streamlink/APKBUILD b/testing/streamlink/APKBUILD
deleted file mode 100644
index 9dca9550892..00000000000
--- a/testing/streamlink/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Contributor: Robert Sacks <robert@sacks.email>
-# Maintainer: Robert Sacks <robert@sacks.email>
-pkgname=streamlink
-pkgver=2.0.0
-pkgrel=2
-pkgdesc="CLI for extracting streams from various websites to a video player of your choosing"
-options="!check" # Locale-specific tests fail
-url="https://streamlink.github.io/"
-arch="noarch"
-license="BSD-2-Clause"
-depends="python3 py3-pycryptodome py3-pycountry py3-requests py3-pysocks
- py3-websocket-client py3-isodate rtmpdump"
-makedepends="py3-setuptools py3-sphinx py3-recommonmark"
-checkdepends="py3-pytest py3-pytest-cov py3-codecov py3-coverage py3-freezegun
- py3-requests-mock py3-mock"
-subpackages="$pkgname-doc"
-source="streamlink-$pkgver.tar.gz::https://github.com/streamlink/streamlink/archive/$pkgver.tar.gz"
-
-build() {
- export STREAMLINK_USE_PYCOUNTRY=1
- python3 setup.py build
- python3 setup.py build_sphinx -b man
-}
-
-check() {
- python3 setup.py test
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
- install -Dm644 build/sphinx/man/streamlink.1 \
- "$pkgdir"/usr/share/man/man1/streamlink.1
-}
-
-sha512sums="908d6ae7c6cfc81ed06443b36cf947b921c3130bfcc16f4c7b5369bde68b03689c2188b23d3522af4328b7af1531a04bbebc05d6b99f11e0542a9d03402718b1 streamlink-2.0.0.tar.gz"
diff --git a/testing/strfry/APKBUILD b/testing/strfry/APKBUILD
new file mode 100644
index 00000000000..5e1a853c164
--- /dev/null
+++ b/testing/strfry/APKBUILD
@@ -0,0 +1,132 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=strfry
+pkgver=0.9.6
+pkgrel=0
+pkgdesc="Nostr relay written in C++"
+url="https://github.com/hoytech/strfry"
+# x86, armhf, s390x: flatbuffers not available
+# riscv64: not detected as supported by Double-Conversion
+arch="all !x86 !armhf !s390x !riscv64"
+license="GPL-3.0-or-later"
+makedepends="
+ flatbuffers-dev
+ libsecp256k1-dev
+ linux-headers
+ lmdb-dev
+ openssl-dev
+ perl-regexp-grammars
+ perl-template-toolkit
+ perl-yaml
+ zlib-dev
+ zstd-dev
+ "
+install="$pkgname.pre-install"
+subpackages="$pkgname-openrc"
+_negentropy=bdd421c1fbf8ca6d4404597411674f09eb578eb5
+_golpe=19ce1715c271eb5c1ae3dc9f422093e4afe6c5e7
+_uwebsockets=fb7e8e60a7eb02f476b3b1785d810ac91cc685f2
+_hoytech_cpp=73dcad058bfd96f9b2a0e7d5032fde441ad6a808
+_config=ab8c38a2d00e58dd004fd71da7f0e70749993fc1
+_rasgueadb=8cb6edd4aa6cdedfb6c2f8d34102b392bb1586fe
+_lmdbxx=13851b3333a8840398ba0aa8b7d0febe661b08d5
+_docopt_cpp=6f5de76970be94a6f1e4556d1716593100e285d2
+_json=d73d01389660084a8dbedd44eb674da57f26aba6
+_pegtl=9afe8a71920b9dadf309a503d734143e1ff78b3e
+_loguru=644f60dca77de3b0f718a03d370c8ebdf5f97968
+_parallel_hashmap=87ece91c6e4c457c5faac179dae6e11e2cd39b16
+_templar=05554eea58a15d461e3385507c1c3fd1bfd05fa3
+source="https://github.com/hoytech/strfry/archive/$pkgver/strfry-$pkgver.tar.gz
+ negentropy-$_negentropy.tar.gz::https://github.com/hoytech/negentropy/archive/$_negentropy.tar.gz
+ golpe-$_golpe.tar.gz::https://github.com/hoytech/golpe/archive/$_golpe.tar.gz
+ uwebsockets-$_uwebsockets.tar.gz::https://github.com/hoytech/uWebSockets/archive/$_uwebsockets.tar.gz
+ hoytech-cpp-$_hoytech_cpp.tar.gz::https://github.com/hoytech/hoytech-cpp/archive/$_hoytech_cpp.tar.gz
+ taocpp-config-$_config.tar.gz::https://github.com/taocpp/config/archive/$_config.tar.gz
+ rasgueadb-$_rasgueadb.tar.gz::https://github.com/hoytech/rasgueadb/archive/$_rasgueadb.tar.gz
+ lmdbxx-$_lmdbxx.tar.gz::https://github.com/hoytech/lmdbxx/archive/$_lmdbxx.tar.gz
+ docopt.cpp-$_docopt_cpp.tar.gz::https://github.com/docopt/docopt.cpp/archive/$_docopt_cpp.tar.gz
+ taocpp-json-$_json.tar.gz::https://github.com/taocpp/json/archive/$_json.tar.gz
+ taocpp-PEGTL-$_pegtl.tar.gz::https://github.com/taocpp/PEGTL/archive/$_pegtl.tar.gz
+ loguru-$_loguru.tar.gz::https://github.com/emilk/loguru/archive/$_loguru.tar.gz
+ parallel-hashmap-$_parallel_hashmap.tar.gz::https://github.com/greg7mdp/parallel-hashmap/archive/$_parallel_hashmap.tar.gz
+ templar-$_templar.tar.gz::https://github.com/hoytech/templar/archive/$_templar.tar.gz
+ pre-build-pkgver_patch
+ strfry-conf.patch
+ strfry.initd
+ strfry.confd
+ "
+
+prepare() {
+ default_prepare
+
+ rmdir -v external/negentropy
+ ln -sv ../../negentropy-$_negentropy external/negentropy
+ rmdir -v golpe
+ ln -sv ../golpe-$_golpe golpe
+
+ rmdir -v golpe/external/*
+ ln -sv ../../uWebSockets-$_uwebsockets \
+ golpe/external/uWebSockets
+ ln -sv ../../hoytech-cpp-$_hoytech_cpp \
+ golpe/external/hoytech-cpp
+ ln -sv ../../config-$_config \
+ golpe/external/config
+ ln -sv ../../rasgueadb-$_rasgueadb \
+ golpe/external/rasgueadb
+ ln -sv ../../lmdbxx-$_lmdbxx \
+ golpe/external/lmdbxx
+ ln -sv ../../docopt.cpp-$_docopt_cpp \
+ golpe/external/docopt.cpp
+ ln -sv ../../json-$_json \
+ golpe/external/json
+ ln -sv ../../PEGTL-$_pegtl \
+ golpe/external/PEGTL
+ ln -sv ../../loguru-$_loguru \
+ golpe/external/loguru
+ ln -sv ../../parallel-hashmap-$_parallel_hashmap \
+ golpe/external/parallel-hashmap
+ ln -sv ../../templar-$_templar \
+ golpe/external/templar
+
+ # fix version string
+ patch golpe/pre-build.pl "$srcdir"/pre-build-pkgver_patch
+ sed -i "s|@PKGVER@|$pkgver|" golpe/pre-build.pl
+}
+
+build() {
+ make
+}
+
+check() {
+ ./strfry --version
+ ./strfry --help
+}
+
+package() {
+ install -Dvm755 strfry -t "$pkgdir"/usr/sbin/
+ install -Dvm644 strfry.conf -t "$pkgdir"/etc/
+
+ install -Dvm755 "$srcdir"/strfry.initd "$pkgdir"/etc/init.d/strfry
+ install -Dvm644 "$srcdir"/strfry.confd "$pkgdir"/etc/conf.d/strfry
+}
+
+sha512sums="
+aa8b4965c85596b7af754060f1e1d43cd3cc6e1bd1ad97241a6314bfda6f6ef6a6b47007aa3c549a78378f2419b0a8fa825b28be6126a2549219c41e3a0c6f1d strfry-0.9.6.tar.gz
+cbb8e18b6c48434618cda528c386908a9de80cdb85f807031710dcb3898b5b5f149823be4365c32d9656aa76dcaae69e8aa4e0fa18473c200846782ea87f3759 negentropy-bdd421c1fbf8ca6d4404597411674f09eb578eb5.tar.gz
+5889931319907ae3bd01223693de4fcae89672c15a4113d51e1b8470fab49486c77af1ee78fa71942dd11cbd8d0b99b31f83ad7039b3951f4dba639b1a4e6d03 golpe-19ce1715c271eb5c1ae3dc9f422093e4afe6c5e7.tar.gz
+3b4d8e1b5c55ce7eb147c309b42af09fa40eaa037828c11851c47cbe417fe280bd0b825fb677fc7a5b14021669971ed09dcffa371e663ea9b38f6ee3cc9d68a9 uwebsockets-fb7e8e60a7eb02f476b3b1785d810ac91cc685f2.tar.gz
+dec902b5a3143113840dab26b060689f117e61e3896a9135d35e430f59fe367b752665274f6d936a95933858beec1927e14b5e93b5b3ad571fa7e20b839d14c0 hoytech-cpp-73dcad058bfd96f9b2a0e7d5032fde441ad6a808.tar.gz
+0d09483540b5b118b29338149ff41b1a8f70a5e2462746f08aa100203c1815d5978eb818613d3771959a34c9c24bb94d46a22efd1e50ff8efdd7308ce049c634 taocpp-config-ab8c38a2d00e58dd004fd71da7f0e70749993fc1.tar.gz
+d70ba9518d68e230d62aa8df228f6149e24ce24901fccadf0c731ac40a9f10d5fdcc2279b8f7281ee7103de69d67a164a3cb7967e55b710b7ea7b303f6c26602 rasgueadb-8cb6edd4aa6cdedfb6c2f8d34102b392bb1586fe.tar.gz
+d29a8a3e0be4ca7e7b7de61f4012ad74356611238405d798ae7e3424b791e8f90a714a8e2fbb2f1ab2782e80b0b3485b2f1f0d044f67341499c1696b2a75d7a7 lmdbxx-13851b3333a8840398ba0aa8b7d0febe661b08d5.tar.gz
+e4212711e88beee26258ef2644dd8577b6708dea47f05c6cce596c3198f659aa7c1e1d25eb57aae8b19d422c7bd7f628ba6db8f62ed1d3d28f171ab1db86db73 docopt.cpp-6f5de76970be94a6f1e4556d1716593100e285d2.tar.gz
+46e1e73700c773c473d939ff435d2a942b0e67c7933575ef4a254d2dbd3dee68f1d57f6c0c66e84dd5be8f9a4102ae23fc5f77f4c4e78fb9c72fc5c28a313d24 taocpp-json-d73d01389660084a8dbedd44eb674da57f26aba6.tar.gz
+879aeba0bb817657f60e8e74bf95f2bed6ed03f93e69cfda6d6ad5235719f70f177a9ba34d46c03c53c61bf07e676e943f186d46dd67c21827e63d21691a52fe taocpp-PEGTL-9afe8a71920b9dadf309a503d734143e1ff78b3e.tar.gz
+c937e6b359bdbc476758a3caaa32cd0ebd8ae443fa786887c811e8cc35c756a4d04ab247c7bd95f499e1345c0c2ca67716f4d8fadd84e963ca4fee941bde7073 loguru-644f60dca77de3b0f718a03d370c8ebdf5f97968.tar.gz
+9cb3db26acb39395475aed1dac1188ab3e32359d529ef5b19164a2410ee986c4255f652099ab20f3afdff1ce5ac28b5efbf66887bbec39f6327115041375e919 parallel-hashmap-87ece91c6e4c457c5faac179dae6e11e2cd39b16.tar.gz
+f97b8bf0b349a5a90eefdde008e0c185f0904d6b7b3deccec2f96a6ee4246e0e285cd157e74978255540ca369820c438a1a53039c12fd8638c1531a9ed58c88d templar-05554eea58a15d461e3385507c1c3fd1bfd05fa3.tar.gz
+0eb3137fbb994a7f74e1008b0e8e49e1c00f6d55d4807705bef5de84b9fa92e3de64378fab3d6ef37231f66e8f3bc477428787a2a241ac024b732fd58c1aa654 pre-build-pkgver_patch
+a2daa5d7cb87e953667558b99d22a0f119cb83e4931b559c2d21b7e8e494707b3a6d4ecb2722de35386e60d07efb56bb8cda05746708b985bf97f153ea6981b4 strfry-conf.patch
+b7d370863afecc96545ed9bfe5e5c796e23be4d473586129b610eb6bbd7b2a33c919ffdb3214d174d375ef60c089665065d27c9aef251ee4560dabe47e0c7b98 strfry.initd
+e1819ab27702adb341cba3e5d9c3f4f0a4a840b8337870b1b78011691ab8d13f194e0a92bc53889adc0a1fbf92becac1ba41e47f4b82a300b4d9e77af4e4593e strfry.confd
+"
diff --git a/testing/strfry/pre-build-pkgver_patch b/testing/strfry/pre-build-pkgver_patch
new file mode 100644
index 00000000000..2997c002d8a
--- /dev/null
+++ b/testing/strfry/pre-build-pkgver_patch
@@ -0,0 +1,11 @@
+--- a/golpe/pre-build.pl
++++ b/golpe/pre-build.pl
+@@ -29,7 +29,7 @@
+ print $fh <<"END";
+ #pragma once
+
+-#define APP_GIT_VERSION "$gitVer"
++#define APP_GIT_VERSION "@PKGVER@"
+ END
+ }
+
diff --git a/testing/strfry/strfry-conf.patch b/testing/strfry/strfry-conf.patch
new file mode 100644
index 00000000000..267db57b0db
--- /dev/null
+++ b/testing/strfry/strfry-conf.patch
@@ -0,0 +1,20 @@
+--- a/strfry.conf
++++ b/strfry.conf
+@@ -3,7 +3,7 @@
+ ##
+
+ # Directory that contains the strfry LMDB database (restart required)
+-db = "./strfry-db/"
++db = "/var/lib/strfry/"
+
+ dbParams {
+ # Maximum number of threads/processes that can simultaneously have LMDB transactions open (restart required)
+@@ -47,7 +47,7 @@
+ port = 7777
+
+ # Set OS-limit on maximum number of open files/sockets (if 0, don't attempt to set) (restart required)
+- nofiles = 1000000
++ nofiles = 0
+
+ # HTTP header that contains the client's real IP, before reverse proxying (ie x-real-ip) (MUST be all lower-case)
+ realIpHeader = ""
diff --git a/testing/strfry/strfry.confd b/testing/strfry/strfry.confd
new file mode 100644
index 00000000000..2c0f19e2819
--- /dev/null
+++ b/testing/strfry/strfry.confd
@@ -0,0 +1,7 @@
+# Configuration for /etc/init.d/strfry
+
+# Configuration file for strfry daemon.
+#STRFRY_CONFIG="/etc/strfry.conf"
+
+# Comment out to disable process supervisor.
+supervisor=supervise-daemon
diff --git a/testing/strfry/strfry.initd b/testing/strfry/strfry.initd
new file mode 100644
index 00000000000..8cc3b2a8b9e
--- /dev/null
+++ b/testing/strfry/strfry.initd
@@ -0,0 +1,30 @@
+#!/sbin/openrc-run
+
+name=strfry
+description="Strfry Nostr relay"
+
+: ${STRFRY_CONFIG:="/etc/strfry.conf"}
+export STRFRY_CONFIG
+
+command="/usr/sbin/strfry"
+command_args="relay"
+command_background="yes"
+command_user="strfry:strfry"
+pidfile="/run/${RC_SVCNAME}.pid"
+output_log="/var/log/strfry.log"
+error_log="/var/log/strfry.log"
+
+required_files="$STRFRY_CONFIG"
+
+depend() {
+ need localmount net
+ after firewall
+}
+
+start_pre() {
+ checkpath -q -f -m 0640 -o "$command_user" \
+ "$STRFRY_CONFIG" "$output_log" "$error_log"
+
+ checkpath -q -d -m 0750 -o "$command_user" \
+ /var/lib/strfry
+}
diff --git a/testing/strfry/strfry.pre-install b/testing/strfry/strfry.pre-install
new file mode 100644
index 00000000000..3285bd9b24e
--- /dev/null
+++ b/testing/strfry/strfry.pre-install
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+addgroup -S strfry 2>/dev/null
+adduser -S -D \
+ -h /var/lib/strfry \
+ -s /sbin/nologin \
+ -G strfry \
+ -g "Strfry Nostr relay" \
+ strfry 2>/dev/null
+
+exit 0
diff --git a/testing/stubby/APKBUILD b/testing/stubby/APKBUILD
new file mode 100644
index 00000000000..4fa530e0cf6
--- /dev/null
+++ b/testing/stubby/APKBUILD
@@ -0,0 +1,50 @@
+# Contributor: Johannes Heimansberg <git@jhe.dedyn.io>
+# Maintainer: Johannes Heimansberg <git@jhe.dedyn.io>
+pkgname=stubby
+pkgver=0.4.3
+pkgrel=0
+pkgdesc="DNS Privacy stub resolver"
+url="https://dnsprivacy.org/dns_privacy_daemon_-_stubby/"
+arch="all"
+license="BSD-3-Clause"
+subpackages="$pkgname-doc $pkgname-openrc"
+makedepends="cmake
+ getdns-dev
+ libcap-utils
+ openssl-dev
+ samurai
+ yaml-dev
+"
+checkdepends="check"
+pkgusers="stubby"
+pkggroups="stubby"
+source="$pkgname-$pkgver.tar.gz::https://github.com/getdnsapi/stubby/archive/refs/tags/v$pkgver.tar.gz
+ stubby.confd
+ stubby.initd
+ "
+options="!check" # no tests
+
+build() {
+ if [ "$CBUILD" != "$CHOST" ]; then
+ CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DENABLE_GETDNS_STATIC_LINK=OFF \
+ $CMAKE_CROSSOPTS
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+ rmdir -p "$pkgdir"/var/run || true
+ install -Dm644 "$srcdir"/stubby.confd "$pkgdir"/etc/conf.d/stubby
+ install -Dm755 "$srcdir"/stubby.initd "$pkgdir"/etc/init.d/stubby
+}
+
+sha512sums="
+422d46b03200178acab6129d0268b5732fa2f439ad164c2ce771e68cd01737b4248d5a678ba0da716af41a24110f6b41ef3bcc567ad6fd94838a9be2d2cc8da3 stubby-0.4.3.tar.gz
+1ca2464264d938f880460a27dc92325a30fa35c26461bf69dba2f17849b2d6450ba3bec704ead19148daf06f882c2d60f99dc8f970d0229e62040b793aca9517 stubby.confd
+85a5be32a757de431cf419754a77ff7e10c7ab8a0277d37748fa37ec6f75acc6973cd1774c031729190ba760a11325874e1813924e5430bd3638149ffbd5c3a3 stubby.initd
+"
diff --git a/testing/stubby/stubby.confd b/testing/stubby/stubby.confd
new file mode 100644
index 00000000000..232545567d0
--- /dev/null
+++ b/testing/stubby/stubby.confd
@@ -0,0 +1,2 @@
+# comment out to not use process supervisor
+supervisor=supervise-daemon
diff --git a/testing/stubby/stubby.initd b/testing/stubby/stubby.initd
new file mode 100644
index 00000000000..7a1a33a19c2
--- /dev/null
+++ b/testing/stubby/stubby.initd
@@ -0,0 +1,15 @@
+#!/sbin/openrc-run
+
+name="Stubby DNS Privacy stub resolver"
+
+command="/usr/bin/stubby"
+command_args="$command_args -C /etc/stubby/stubby.yml"
+command_background=true
+pidfile="/run/${RC_SVCNAME}"
+command_user="stubby:stubby"
+capabilities="^cap_net_bind_service"
+
+depend() {
+ need net
+ after firewall
+}
diff --git a/testing/stubbyboot/APKBUILD b/testing/stubbyboot/APKBUILD
new file mode 100644
index 00000000000..d92489b9fcf
--- /dev/null
+++ b/testing/stubbyboot/APKBUILD
@@ -0,0 +1,58 @@
+# Contributor: Dermot Bradley <dermot_bradley@yahoo.com>
+# Maintainer:
+pkgname=stubbyboot
+pkgver=1.0.2
+pkgrel=1
+pkgdesc="simple UEFI stub"
+url="https://github.com/puzzleos/stubby"
+arch="x86 x86_64 aarch64"
+license="LGPL-2.1"
+depends="$pkgname-efistub=$pkgver-r$pkgrel"
+makedepends="
+ gnu-efi-dev
+ "
+subpackages="
+ $pkgname-efistub
+ "
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/puzzleos/stubby/archive/refs/tags/v$pkgver.tar.gz
+ no-werror.patch
+ "
+
+builddir="$srcdir/stubby-$pkgver"
+
+build() {
+ make build
+}
+
+package() {
+ install -Dm755 stubby-smash.1.sh -t "$pkgdir"/usr/bin/
+ install -Dm755 stubby-smash.2.sh -t "$pkgdir"/usr/bin/
+ case "$CARCH" in
+ aarch64 )
+ _archname="aa64" ;;
+ x86 )
+ _archname="ia32" ;;
+ x86_64 )
+ _archname="x64" ;;
+ esac
+
+ install -Dm755 stubby.efi \
+ "$pkgdir"/usr/lib/$pkgname/linux$_archname.efi.stub
+}
+
+check() {
+ make test
+}
+
+efistub() {
+ pkgdesc="Linux UEFI stub from the stubby bootloader project"
+ depends=
+
+ amove usr/lib/$pkgname
+}
+
+sha512sums="
+fae83c3a720bdb7d62be30856df9676dc1e85051b16d8d2c166e5b7be5fdc5d907e592f180500a3739af6bae8e44a60684a88f66877c0de2445f5257bf29f135 stubbyboot-1.0.2.tar.gz
+85e5a8d2af96550f49ce07e4660fdbc036a9eab63e2dbc53e7c3896a3dbf0044f07990db9f3c7e8ecc28178bd1ea2a5ac448368789563b7275ab636f6665a1e2 no-werror.patch
+"
diff --git a/testing/stubbyboot/no-werror.patch b/testing/stubbyboot/no-werror.patch
new file mode 100644
index 00000000000..0c7682b0568
--- /dev/null
+++ b/testing/stubbyboot/no-werror.patch
@@ -0,0 +1,13 @@
+diff --git a/make.conf b/make.conf
+index a29d8ac..8f4706b 100644
+--- a/make.conf
++++ b/make.conf
+@@ -31,7 +31,7 @@ EFI_CRT_OBJS = ${EFILIB}/crt0-efi-${ARCH}.o
+ EFI_LDS = ${EFILIB}/elf_${ARCH}_efi.lds
+
+ CFLAGS = \
+- -Wall -Werror \
++ -Wall \
+ ${EFIINCS} -fno-stack-protector -fpic -fshort-wchar \
+ -DGIT_VERSION=\"$(shell git rev-parse HEAD | cut -c1-12)\"
+ ifeq (${ARCH},x86_64)
diff --git a/testing/sturmreader/APKBUILD b/testing/sturmreader/APKBUILD
index 04dcda87081..618ce669b07 100644
--- a/testing/sturmreader/APKBUILD
+++ b/testing/sturmreader/APKBUILD
@@ -1,25 +1,42 @@
# Contributor: Emanuele Sorce <emanuele.sorce@hotmail.com>
# Maintainer: Emanuele Sorce <emanuele.sorce@hotmail.com>
pkgname=sturmreader
-pkgver=3.6.1
-pkgrel=1
+pkgver=3.7.2
+pkgrel=0
pkgdesc="E-Book and comic reader for mobile devices"
url="https://gitlab.com/tronfortytwo/sturmreader"
arch="aarch64 armv7 x86 x86_64" # Limited by qt5-qtwebengine
license="GPL-3.0-or-later"
-depends="qt5-qtsvg qt5-qtbase-sqlite qt5-qtwebengine qt5-qtquickcontrols qt5-qtsystems"
-makedepends="cmake qt5-qtdeclarative-dev qt5-qtquickcontrols2-dev qt5-qtsvg-dev
- qt5-qtlocation-dev qt5-qtwebengine-dev qt5-qtwebchannel-dev poppler-qt5-dev
- quazip-dev gettext-dev libintl"
+depends="
+ qt5-qtbase-sqlite
+ qt5-qtquickcontrols
+ qt5-qtsvg
+ qt5-qtsystems
+ "
+makedepends="
+ cmake
+ gettext-dev
+ poppler-qt5-dev
+ qt5-qtdeclarative-dev
+ qt5-qtlocation-dev
+ qt5-qtquickcontrols2-dev
+ qt5-qtsvg-dev
+ qt5-qtwebchannel-dev
+ qt5-qtwebengine-dev
+ quazip-dev
+ samurai
+ "
subpackages="$pkgname-lang"
source="https://gitlab.com/tronfortytwo/sturmreader/-/archive/$pkgver/sturmreader-$pkgver.tar.gz
- fix-hardcoded-quazip-version.patch"
+ intl.patch
+ "
# Sturm reader has no testing! Not even a --version thing
options="!check"
build() {
- cmake -G Ninja -B build \
+ CXXFLAGS="$CXXFLAGS -flto=auto" \
+ cmake -G Ninja -B build -Wno-dev \
-DCLICK_MODE=OFF \
-DCMAKE_BUILD_TYPE=MinSizeRel
cmake --build build
@@ -30,6 +47,6 @@ package() {
}
sha512sums="
-ca9332b8a7810dc07d1ca9fc18260fcd1905a494be239357cfafd30e81521bb05f0e6073b6dc5fe9f8cf20395a98d5cbb96e7dd797f548274c86cfb25f3ec704 sturmreader-3.6.1.tar.gz
-702619584aedc6f3e25ad1f789421ef343a72b43c707e6b9b621560fba030cb97591de6fc2ea816b82d6a9f9911d934b42a01c236d856d9f596f331743badb83 fix-hardcoded-quazip-version.patch
+1cc5bf66d12aa4c7aee5136b5192db04618d88a0bd304ae579906c98a17f4759bca419a905af5b563a448aded94011c08cfe3d02b6a2ac5f20ef51f950b958d9 sturmreader-3.7.2.tar.gz
+287f48924bc3fb60c651e54d687872baf49882aa009c28a27de5fca60c586a7a6daf00c8dbfdfb45efaec6688253966a4c5de2973e7d0a75ceac197cfe879c60 intl.patch
"
diff --git a/testing/sturmreader/fix-hardcoded-quazip-version.patch b/testing/sturmreader/fix-hardcoded-quazip-version.patch
deleted file mode 100644
index de4e141b427..00000000000
--- a/testing/sturmreader/fix-hardcoded-quazip-version.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/cmake/FindQUAZIP.cmake
-+++ b/cmake/FindQUAZIP.cmake
-@@ -15,7 +15,7 @@
- )
- find_path(QUAZIP_INCLUDE_DIR quazip.h
- PATHS /usr/include /usr/local/include
-- PATH_SUFFIXES quazip5 quazip "QuaZip-Qt5-1.1/quazip" "QuaZip-Qt5-1.2/quazip"
-+ PATH_SUFFIXES quazip5 quazip "QuaZip-Qt5-1.3/quazip"
- )
- find_path(QUAZIP_ZLIB_INCLUDE_DIR zlib.h PATHS /usr/include /usr/local/include)
- endif()
diff --git a/testing/sturmreader/intl.patch b/testing/sturmreader/intl.patch
new file mode 100644
index 00000000000..f1569bbf900
--- /dev/null
+++ b/testing/sturmreader/intl.patch
@@ -0,0 +1,13 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -51,9 +51,9 @@
+
+ find_package(ZLIB REQUIRED)
+
+-# find_package(Intl REQUIRED)
++find_package(Intl REQUIRED)
+ find_package(QUAZIP REQUIRED)
+ #find_package(QuaZip-Qt5 REQUIRED)
+
+ if(CLICK_MODE)
+ # Find out the architecture for package building
diff --git a/testing/stw/APKBUILD b/testing/stw/APKBUILD
new file mode 100644
index 00000000000..5484c6498b9
--- /dev/null
+++ b/testing/stw/APKBUILD
@@ -0,0 +1,30 @@
+# Maintainer: Miles Alan <m@milesalan.com>
+pkgname=stw
+pkgver=0.3
+pkgrel=0
+pkgdesc="Simple text window for X"
+url="https://github.com/sineemore/stw"
+arch="all"
+license="MIT"
+makedepends="
+ libx11-dev
+ libxft-dev
+ libxrender-dev
+ "
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/sineemore/stw/archive/refs/tags/$pkgver.tar.gz"
+options="!check" # no tests
+
+build() {
+ make
+ make stw.1
+}
+
+package() {
+ install -Dm755 stw "$pkgdir"/usr/bin/stw
+ install -Dm644 ./*.1 -t $pkgdir/usr/share/man/man1/
+}
+
+sha512sums="
+409171d2f99c9ac3adccf97a34d14ee312ca6d634ab32210cd5c1167be1a80757c7d29a2a760b121963d185c51343d141ea93db4f92bb7605e68b444c9e8a33f stw-0.3.tar.gz
+"
diff --git a/testing/stylua/APKBUILD b/testing/stylua/APKBUILD
deleted file mode 100644
index c9623df359c..00000000000
--- a/testing/stylua/APKBUILD
+++ /dev/null
@@ -1,41 +0,0 @@
-# Contributor: psykose <alice@ayaya.dev>
-# Maintainer: psykose <alice@ayaya.dev>
-pkgname=stylua
-pkgver=0.13.1
-pkgrel=0
-pkgdesc="Opinionated Lua 5.1/5.2/luau code formatter"
-url="https://github.com/JohnnyMorganz/StyLua"
-arch="all !s390x !riscv64" # blocked by cargo
-license="MPL-2.0"
-makedepends="cargo"
-source="$pkgname-$pkgver.tar.gz::https://github.com/JohnnyMorganz/StyLua/archive/refs/tags/v$pkgver.tar.gz"
-builddir="$srcdir/StyLua-$pkgver"
-
-prepare() {
- default_prepare
- cargo fetch --locked
-}
-
-build() {
- cat >> Cargo.toml <<- EOF
- [profile.release]
- codegen-units = 1
- lto = true
- opt-level = "s"
- panic = "abort"
- EOF
- cargo build --release --frozen
-}
-
-check() {
- cargo test --frozen
-}
-
-package() {
- install -Dm755 "$builddir"/target/release/stylua \
- -t "$pkgdir"/usr/bin
-}
-
-sha512sums="
-cd989a5793d0351bc8b34a44573137581b5ab6b97c6f0bf5b9c91afb9b459207873c19e8567718b4727e3ef83a526fb9a656be29da2a6ff13d397a5dfd79ae3a stylua-0.13.1.tar.gz
-"
diff --git a/testing/subdl/0001-Remove-bogus-empty-package.patch b/testing/subdl/0001-Remove-bogus-empty-package.patch
new file mode 100644
index 00000000000..96bcf7fbb98
--- /dev/null
+++ b/testing/subdl/0001-Remove-bogus-empty-package.patch
@@ -0,0 +1,31 @@
+From ceb17f79f25a26dc18543a850af30a9e24e8dbb9 Mon Sep 17 00:00:00 2001
+From: Hugo Osvaldo Barrera <hugo@whynothugo.nl>
+Date: Fri, 16 Jun 2023 10:51:02 +0200
+Subject: [PATCH] Remove bogus empty package
+
+This empty package name is not valid, and results in `python setup.py
+build` and `python setup.py wheel` failing with:
+
+ WARNING: '' not a valid package name; please use only .-separated package names in setup.py
+
+Removing this entirely fixes the issue completely.
+---
+ setup.py | 3 ---
+ 1 file changed, 3 deletions(-)
+
+diff --git a/setup.py b/setup.py
+index 34dba94..fd273a8 100644
+--- a/setup.py
++++ b/setup.py
+@@ -18,8 +18,5 @@ setup(
+ 'subdl = subdl:cli'
+ ]
+ },
+- packages=[
+- ''
+- ],
+ license='GPLv3+'
+ )
+--
+2.41.0
+
diff --git a/testing/subdl/APKBUILD b/testing/subdl/APKBUILD
new file mode 100644
index 00000000000..d8fa3e838c2
--- /dev/null
+++ b/testing/subdl/APKBUILD
@@ -0,0 +1,32 @@
+# Maintainer: Hugo Osvaldo Barrera <hugo@whynothugo.nl>
+pkgname=subdl
+pkgver=0_git20230616
+_commit=da2398546c33da1665dbc2d985b30d959c6f5a0c
+pkgrel=1
+pkgdesc="Command-line tool for downloading subtitles from opensubtitles.org"
+url="https://github.com/alexanderwink/subdl"
+arch="noarch"
+license="GPL-3.0-or-later"
+makedepends="py3-setuptools py3-wheel py3-gpep517 py3-installer"
+subpackages="$pkgname-pyc"
+source="https://github.com/alexanderwink/subdl/archive/$_commit.tar.gz
+ 0001-Remove-bogus-empty-package.patch
+ "
+builddir="$srcdir/$pkgname-$_commit/"
+options="!check" # no tests
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ dist/subdl-*-py3-none-any.whl
+}
+
+sha512sums="
+d0cb8b970dc10356fa4279fa8beaea819eb128e5c7b2f4160535e357ce37e926b7edb57e1508dd3dd13b1e15accc1e89010c298d9363c4b121a9ecba8fda1f14 da2398546c33da1665dbc2d985b30d959c6f5a0c.tar.gz
+f99839e94522334dd73ba83e396cc5012d8be30abbd477924113b3f6d2f15c8470d0d6d713627a1e47e4fcc1df2d55645dab3ae96c3172cf299ede37f4a69bce 0001-Remove-bogus-empty-package.patch
+"
diff --git a/testing/sublime-music/APKBUILD b/testing/sublime-music/APKBUILD
index 398ebd694dd..9f6f9dd333b 100644
--- a/testing/sublime-music/APKBUILD
+++ b/testing/sublime-music/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Alex McGrath <amk@amk.ie>
# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=sublime-music
-pkgver=0.11.16
-pkgrel=4
+pkgver=0.12.0
+pkgrel=1
pkgdesc="A native, GTK3 Subsonic client for the Linux Desktop"
url="https://sublimemusic.app"
arch="all !s390x !ppc64le" # py3-mpv doesnt work on these
@@ -18,29 +18,30 @@ depends="
py3-fuzzywuzzy
py3-gobject3
py3-keyring
- py3-levenshtein
py3-mpv
+ py3-packaging
py3-peewee
py3-pychromecast
py3-requests
py3-semver
+ py3-thefuzz
python3
"
-makedepends="poetry py3-build py3-installer py3-wheel"
-source="https://gitlab.com/sublime-music/sublime-music/-/archive/v$pkgver/sublime-music-v$pkgver.tar.gz"
-builddir="$srcdir/$pkgname-v$pkgver"
+makedepends="py3-gpep517 py3-installer py3-flit-core py3-wheel"
+subpackages="$pkgname-pyc"
+source="https://github.com/sublime-music/sublime-music/archive/refs/tags/v$pkgver/sublime-music-v$pkgver.tar.gz
+ fix-python3.11.patch
+ "
build() {
- # set git dir for poetry workaround
- GIT_DIR=. python3 -m build \
- --skip-dependency-check \
- --no-isolation \
- --wheel
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
package() {
python3 -m installer -d "$pkgdir" --compile-bytecode 0 \
- dist/sublime_music-$pkgver-py3-none-any.whl
+ .dist/sublime_music-$pkgver-py3-none-any.whl
install -Dm644 "$builddir"/sublime-music.desktop \
-t "$pkgdir"/usr/share/applications
@@ -49,5 +50,6 @@ package() {
}
sha512sums="
-d2c0e825efce5bd6d89ae865290fa8c1f6d01bb355f7dca5eece3641cd0180adc42c72747b00182e02ad6cf7bf993fb8cd56a4bc757c9cd406d0067b791fd683 sublime-music-v0.11.16.tar.gz
+2549b08c636d8fcf9911f19f0e6566964c79b61621bcbe9b4e31efed0cb40462c6e9b1b458d3dffb8d952003828c57f2d705b1bf37b53843a011ab24d6ef8d74 sublime-music-v0.12.0.tar.gz
+b256fbcc779e876ecbcd6f4ed91be3249f856db100dcb6b06960b6e06384c184ceccfd03492dcee420be67946d4bcf0ae67ba72976e3ad5b7016af08b6cad578 fix-python3.11.patch
"
diff --git a/testing/sublime-music/fix-python3.11.patch b/testing/sublime-music/fix-python3.11.patch
new file mode 100644
index 00000000000..f54acbc10c4
--- /dev/null
+++ b/testing/sublime-music/fix-python3.11.patch
@@ -0,0 +1,35 @@
+diff --git a/sublime_music/ui/state.py b/sublime_music/ui/state.py
+index bf8e5cf..afa8447 100644
+--- a/sublime_music/ui/state.py
++++ b/sublime_music/ui/state.py
+@@ -38,6 +38,10 @@ class RepeatType(Enum):
+ }[loop_status]
+
+
++class _DefaultGenre(Genre):
++ def __init__(self):
++ self.name = "Rock"
++
+ @dataclass
+ class UIState:
+ """Represents the UI state of the application."""
+@@ -81,17 +85,13 @@ class UIState:
+ loading_play_queue: bool = False
+
+ # State for Album sort.
+- class _DefaultGenre(Genre):
+- def __init__(self):
+- self.name = "Rock"
+-
+- current_album_search_query: AlbumSearchQuery = field(
++ current_album_search_query: AlbumSearchQuery = field(default_factory=lambda: field(
+ default_factory=lambda: AlbumSearchQuery(
+ AlbumSearchQuery.Type.RANDOM,
+ genre=UIState._DefaultGenre(),
+ year_range=this_decade(),
+ )
+- )
++ ))
+
+ active_playlist_id: Optional[str] = None
+
diff --git a/testing/subliminal/APKBUILD b/testing/subliminal/APKBUILD
index cdd89cd788d..adc92e15837 100644
--- a/testing/subliminal/APKBUILD
+++ b/testing/subliminal/APKBUILD
@@ -2,42 +2,45 @@
# Maintainer: Dmitry Zakharchenko <dmitz@disroot.org>
pkgname=subliminal
pkgver=2.1.0
-pkgrel=0
+pkgrel=4
pkgdesc="Python library and CLI tool for searching and downloading subtitles"
url="https://github.com/Diaoul/subliminal"
arch="noarch"
license="MIT"
-depends="python3
- py3-guessit
+depends="
+ py3-appdirs
py3-babelfish
- py3-enzyme
py3-beautifulsoup4
- py3-requests
- py3-dogpile.cache
- py3-stevedore
py3-chardet
+ py3-click
+ py3-dogpile.cache
+ py3-enzyme
+ py3-guessit
py3-pysrt
- py3-appdirs
py3-rarfile
- py3-click
+ py3-requests
+ py3-setuptools
py3-six
+ py3-stevedore
py3-tz
"
-makedepends="py3-setuptools"
-checkdepends="python3-dev py3-pytest py3-pytest-runner libarchive-tools"
-source="$pkgname-$pkgver.tar.gz::$url/archive/$pkgver.tar.gz
+checkdepends="python3-dev py3-pytest py3-pytest-runner libarchive-tools py3-vcrpy py3-sympy"
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/Diaoul/subliminal/archive/$pkgver.tar.gz
tests.patch legendastv.patch"
+options="!check" # missing simpy
build() {
python3 setup.py build
}
check() {
- python3 setup.py test
+ PYTHONPATH=. \
+ pytest -k 'not test_save_subtitles_single_directory_encoding'
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
diff --git a/testing/subtitleeditor/APKBUILD b/testing/subtitleeditor/APKBUILD
index 59e3986f870..c76836945f2 100644
--- a/testing/subtitleeditor/APKBUILD
+++ b/testing/subtitleeditor/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=subtitleeditor
pkgver=0.54.0
-pkgrel=2
+pkgrel=3
pkgdesc="GTK+3 tool to create and edit subtitles"
url="https://kitone.github.io/subtitleeditor/"
arch="x86 x86_64"
diff --git a/testing/sudo-ldap/APKBUILD b/testing/sudo-ldap/APKBUILD
new file mode 100644
index 00000000000..82ed3ca1789
--- /dev/null
+++ b/testing/sudo-ldap/APKBUILD
@@ -0,0 +1,79 @@
+# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
+# Contributor: Åukasz Jendrysik <scadu@yandex.com>
+# Contributor: Natanael Copa <ncopa@alpinelinux.org>
+# Maintainer:
+pkgname=sudo-ldap
+pkgver=1.9.14
+if [ "${pkgver%_*}" != "$pkgver" ]; then
+ _realver=${pkgver%_*}${pkgver#*_}
+else
+ _realver=$pkgver
+fi
+pkgrel=1
+pkgdesc="Give certain users the ability to run some commands as root (ldap+pam support)"
+url="https://www.sudo.ws/sudo/"
+arch="all"
+license="custom ISC"
+makedepends="
+ linux-pam-dev
+ openldap-dev
+ zlib-dev
+ "
+source="https://www.sudo.ws/dist/sudo-$_realver.tar.gz"
+options="suid"
+builddir="$srcdir/sudo-$_realver"
+
+provides="sudo-virt"
+provider_priority=2
+replaces="sudo"
+
+build() {
+ CFLAGS="$CFLAGS -flto=auto" \
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --libexecdir=/usr/lib \
+ --mandir=/usr/share/man \
+ --disable-nls \
+ --enable-pie \
+ --with-env-editor \
+ --with-mdoc \
+ --with-pam \
+ --with-ldap \
+ --with-ldap-conf-file=/etc/ldap.conf.sudo \
+ --with-nsswitch=no \
+ --without-skey \
+ --with-sendmail=/usr/sbin/sendmail \
+ --with-passprompt="[sudo] password for %p: "
+
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ # the sudo's mkinstalldir script miscreates the leading
+ # path components with bad permissions. fix this.
+ install -d -m0755 "$pkgdir"/var "$pkgdir"/var/db
+ make -j1 DESTDIR="$pkgdir" install
+ rm -rf "$pkgdir"/var/run
+
+ # just docs
+ # use these from sudo-doc
+ # shellcheck disable=2115
+ rm -r "$pkgdir"/usr/share
+
+ # just sudo_plugin.h, use sudo-dev
+ # shellcheck disable=2115
+ rm -r "$pkgdir"/usr/include
+
+ # Exactly the same as /etc/sudoers
+ rm "$pkgdir"/etc/sudoers.dist
+}
+
+sha512sums="
+33d3bc3d66b1c5412b7d579b703d44f246386d2915c1c63be851869569c7bc627211a8897d0bc718d6ebb2bdd938b093c0901f0b7912c8475f8e6fcbbc559a99 sudo-1.9.14.tar.gz
+"
diff --git a/testing/suil/APKBUILD b/testing/suil/APKBUILD
deleted file mode 100644
index f6bd83ed616..00000000000
--- a/testing/suil/APKBUILD
+++ /dev/null
@@ -1,24 +0,0 @@
-# Contributor: David Demelier <markand@malikania.fr>
-# Maintainer: David Demelier <markand@malikania.fr>
-pkgname=suil
-pkgver=0.10.10
-pkgrel=0
-pkgdesc="C library for loading and wrapping LV2 plugin UIs"
-url="http://drobilla.net/software/suil"
-arch="all"
-license="ISC"
-makedepends="python3 gtk+2.0-dev gtk+3.0-dev lv2-dev qt5-qtbase-dev"
-subpackages="$pkgname-dev"
-source="http://download.drobilla.net/suil-$pkgver.tar.bz2"
-options="!check" # No tests
-
-build() {
- python3 waf configure --prefix=/usr
- python3 waf build
-}
-
-package() {
- python3 waf install --destdir="$pkgdir"
-}
-
-sha512sums="e442022096150b2f71d65bbd625e2e262cb3e3865c57f5a30f0472dac8ef90ad2fbbf67235823055019017e3751b46330f6e98b8e1745e5845eb02c4d2a4fc21 suil-0.10.10.tar.bz2"
diff --git a/testing/sunwait/APKBUILD b/testing/sunwait/APKBUILD
deleted file mode 100644
index 3d7a218c6a9..00000000000
--- a/testing/sunwait/APKBUILD
+++ /dev/null
@@ -1,25 +0,0 @@
-# Contributor: Stefano Marinelli <stefano@dragas.it>
-# Maintainer: Stefano Marinelli <stefano@dragas.it>
-pkgname=sunwait
-pkgver=0.8
-pkgrel=0
-pkgdesc="Sunwait calculates sunrise or sunset times with civil, nautical, astronomical and custom twilights."
-url="https://sourceforge.net/projects/sunwait4windows/"
-arch="all"
-license="GPL-3.0-only"
-options="!check" # No test suite available
-source="http://downloads.sourceforge.net/sunwait4windows/sunwait${pkgver/./-}.tar"
-builddir="$srcdir/sunwait/$pkgver/"
-
-build() {
- cd "$builddir"
- make
-}
-
-package() {
- mkdir -p "$pkgdir"/usr/bin/
- cd "$builddir"
- cp sunwait "$pkgdir"/usr/bin/
-}
-
-sha512sums="5b54769d15c5bbbe4a43db1a98c92b6324f3f7718d5653482de056dcc2aede676077d89224f9b3744b4f68d74df63abbabf82c7d8abfe189f4c3028b7be98f69 sunwait0-8.tar"
diff --git a/testing/supercollider/APKBUILD b/testing/supercollider/APKBUILD
index 971891d52d1..de953cf8760 100644
--- a/testing/supercollider/APKBUILD
+++ b/testing/supercollider/APKBUILD
@@ -1,11 +1,11 @@
# Contributor: Leon ROUX <leon.roux@federate.us>
# Maintainer: Leon ROUX <leon.roux@federate.us>
pkgname=supercollider
-pkgver=3.12.2
-pkgrel=1
+pkgver=3.13.0
+pkgrel=4
pkgdesc="An audio server, programming language, and IDE for sound synthesis and algorithmic composition."
url="https://supercollider.github.io/"
-arch="x86_64 x86 aarch64 armv7" # blocked by qt5-qtwebengine
+arch="x86_64 x86 aarch64 armv7 armhf" # blocked by qt5-qtwebengine
license="GPL-3.0-or-later"
depends="git"
makedepends="
@@ -35,7 +35,6 @@ checkdepends="xvfb-run"
subpackages="$pkgname-dev"
source="https://github.com/supercollider/supercollider/releases/download/Version-$pkgver/SuperCollider-$pkgver-Source.tar.bz2
00-fortified-headers.patch
- sndfile.patch
"
builddir="$srcdir/SuperCollider-$pkgver-Source"
@@ -65,7 +64,6 @@ package() {
}
sha512sums="
-ad2466047353b65879f2acd9ba6b6f429010af08ef3f1150adebb93927244f4337aeb09d5aa6cc4cd26b091bc101488eebf822d21c177de55f0f8f7c2a31eb7c SuperCollider-3.12.2-Source.tar.bz2
+a60a128f7646f077f91adae666fa4014529aa9df78cf0dfe5d68c9bd6447f008af7da2970b8736f3f29d0adbaf67bce680a8201fcbe7e1aba29c3499a57f89cd SuperCollider-3.13.0-Source.tar.bz2
cef3e1bdaecd4278d14fcabc39d2a69cfab1216ff3dedd3e54997470955dd310e502732ff2c0f76e95f349c31deb964eff456f49f51d7e3c83421521d0c30c43 00-fortified-headers.patch
-92b98c220d7a5b2ab246fa47ff4945493812019f16b0fed27b1d009ed8f7b5270bfbc91e2f0dd98706de86e52cc4f9920db2af341c0d632d30f3a2a487e3a1d7 sndfile.patch
"
diff --git a/testing/supercollider/sndfile.patch b/testing/supercollider/sndfile.patch
deleted file mode 100644
index f2bb193a051..00000000000
--- a/testing/supercollider/sndfile.patch
+++ /dev/null
@@ -1,12 +0,0 @@
---- a/include/plugin_interface/SC_SndBuf.h
-+++ b/include/plugin_interface/SC_SndBuf.h
-@@ -22,8 +22,8 @@
-
- #include <stdint.h>
-
--typedef struct SNDFILE_tag SNDFILE;
-+#include <sndfile.h>
-
- #ifdef SUPERNOVA
-
- # include <atomic>
diff --git a/testing/supermin/APKBUILD b/testing/supermin/APKBUILD
index ce1441596b3..9059e660578 100644
--- a/testing/supermin/APKBUILD
+++ b/testing/supermin/APKBUILD
@@ -2,10 +2,10 @@
# Maintainer: Fathi Boudra <fathi.boudra@linaro.org>
pkgname=supermin
pkgver=5.2.2
-pkgrel=0
+pkgrel=2
pkgdesc="tool for building supermin appliances"
url="https://libguestfs.org/"
-arch="all !riscv64" # limited by ocaml aport
+arch="all !riscv64 !loongarch64" # limited by ocaml aport
license="GPL-2.0-or-later"
depends="cpio e2fsprogs"
makedepends="
diff --git a/testing/surf/APKBUILD b/testing/surf/APKBUILD
index 5b0c9022f8c..afd9a346fdf 100644
--- a/testing/surf/APKBUILD
+++ b/testing/surf/APKBUILD
@@ -3,16 +3,21 @@
# Maintainer: Orson Teodoro <orsonteodoro@hotmail.com>
pkgname=surf
pkgver=2.1
-pkgrel=0
+pkgrel=2
pkgdesc="surf is a simple web browser based on WebKit2/GTK+."
url="https://surf.suckless.org/"
arch="all"
license="MIT"
depends="xprop"
-makedepends="webkit2gtk-dev gcr-dev"
+makedepends="webkit2gtk-4.1-dev gcr-dev"
subpackages="$pkgname-doc"
options="!check" # upstream doesn't have a test suite
-source="surf-$pkgver.tar.gz::https://dl.suckless.org/surf/surf-$pkgver.tar.gz"
+source="surf-$pkgver.tar.gz::https://dl.suckless.org/surf/surf-$pkgver.tar.gz
+ webkit2gtk-4.1.patch
+ "
+
+provides="surf-virtual"
+provider_priority=100
prepare() {
default_prepare
@@ -35,4 +40,5 @@ package() {
sha512sums="
06f31f683a941d9a587d908ae7f6949255937b0b0c9c133a18c6fa753c7da75de267adda1c83dd9ba0a8535e2b6d4ff2b5408cc5e8a2e315d4198fe68df5db12 surf-2.1.tar.gz
+d0492cf019899158029396afd35a9e241a8859fa86536d5aff8bf77ebb1396922358d87bf2355aba216d0ade6ffff05edab6078fa66f7542e9a1ec98f45b435f webkit2gtk-4.1.patch
"
diff --git a/testing/surf/webkit2gtk-4.1.patch b/testing/surf/webkit2gtk-4.1.patch
new file mode 100644
index 00000000000..29fb52f679e
--- /dev/null
+++ b/testing/surf/webkit2gtk-4.1.patch
@@ -0,0 +1,19 @@
+diff --git a/config.mk b/config.mk
+index 2eb9fb0..544e123 100644
+--- a/config.mk
++++ b/config.mk
+@@ -12,10 +12,10 @@ LIBDIR = $(LIBPREFIX)/surf
+ X11INC = `pkg-config --cflags x11`
+ X11LIB = `pkg-config --libs x11`
+
+-GTKINC = `pkg-config --cflags gtk+-3.0 gcr-3 webkit2gtk-4.0`
+-GTKLIB = `pkg-config --libs gtk+-3.0 gcr-3 webkit2gtk-4.0`
+-WEBEXTINC = `pkg-config --cflags webkit2gtk-4.0 webkit2gtk-web-extension-4.0 gio-2.0`
+-WEBEXTLIBS = `pkg-config --libs webkit2gtk-4.0 webkit2gtk-web-extension-4.0 gio-2.0`
++GTKINC = `pkg-config --cflags gtk+-3.0 gcr-3 webkit2gtk-4.1`
++GTKLIB = `pkg-config --libs gtk+-3.0 gcr-3 webkit2gtk-4.1`
++WEBEXTINC = `pkg-config --cflags webkit2gtk-4.1 webkit2gtk-web-extension-4.1 gio-2.0`
++WEBEXTLIBS = `pkg-config --libs webkit2gtk-4.1 webkit2gtk-web-extension-4.1 gio-2.0`
+
+ # includes and libs
+ INCS = $(X11INC) $(GTKINC)
diff --git a/testing/surfraw/APKBUILD b/testing/surfraw/APKBUILD
new file mode 100644
index 00000000000..b396c44e65c
--- /dev/null
+++ b/testing/surfraw/APKBUILD
@@ -0,0 +1,38 @@
+# Maintainer: Thomas Böhler <witcher@wiredspace.de>
+# Contributor: Thomas Böhler <witcher@wiredspace.de>
+pkgname=surfraw
+
+pkgver=2.3.0
+pkgrel=0
+pkgdesc="Shell Users' Revolutionary Front Rage Against the Web"
+url="http://surfraw.org"
+arch="noarch"
+license="Public Domain"
+makedepends="perl"
+subpackages="$pkgname-doc"
+source="https://gitlab.com/surfraw/Surfraw/uploads/2de827b2786ef2fe43b6f07913ca7b7f/surfraw-$pkgver.tar.gz"
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" -j1 install
+
+ install -Dm644 COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING
+}
+
+sha512sums="
+51cdfb68bab701bce635a64ab3d5af669b2330c895180d01cca1c6f3c4005972ba4c573b693df59a2cc4fdb97d4fd11224bae500bbd4a17c3ab446de5241c9a0 surfraw-2.3.0.tar.gz
+"
diff --git a/testing/surgescript/APKBUILD b/testing/surgescript/APKBUILD
deleted file mode 100644
index 2955cf1990b..00000000000
--- a/testing/surgescript/APKBUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-# Contributor: David Demelier <markand@malikania.fr>
-# Maintainer: David Demelier <markand@malikania.fr>
-pkgname=surgescript
-pkgver=0.5.5
-pkgrel=0
-pkgdesc="scripting language for games"
-url="https://docs.opensurge2d.org"
-arch="all"
-license="Apache-2.0"
-makedepends="cmake"
-subpackages="$pkgname-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/alemart/surgescript/archive/refs/tags/v$pkgver.tar.gz"
-options="!check" # No tests.
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DBUILD_SHARED_LIBS=True \
- -DCMAKE_BUILD_TYPE=None \
- $CMAKE_CROSSOPTS .
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-
-sha512sums="
-b3b79f36463b9ff91f2f8108d6917961d8aabfbd0693a9e9e275f57faa09022570519c553ceff8db93101058964d76df82448b487ed82c5331598df065fae34a surgescript-0.5.5.tar.gz
-"
diff --git a/testing/suru-icon-theme/APKBUILD b/testing/suru-icon-theme/APKBUILD
new file mode 100644
index 00000000000..68ca4572213
--- /dev/null
+++ b/testing/suru-icon-theme/APKBUILD
@@ -0,0 +1,21 @@
+# Maintainer: Luca Weiss <luca@z3ntu.xyz>
+pkgname=suru-icon-theme
+pkgver=20.05.1_git20221222
+_commit="2b832bd20443a45ea75d6da04236f687a5d0564a"
+pkgrel=0
+pkgdesc="Icon Theme for Lomiri Operating Environment"
+arch="noarch"
+url="https://gitlab.com/ubports/development/core/suru-icon-theme"
+license="CC-BY-SA-3.0"
+source="https://gitlab.com/ubports/development/core/suru-icon-theme/-/archive/$_commit/suru-icon-theme-$_commit.tar.gz"
+builddir="$srcdir/$pkgname-$_commit"
+options="!check" # No tests
+
+package() {
+ mkdir -p "$pkgdir"/usr/share/icons
+ cp -r suru "$pkgdir"/usr/share/icons/suru
+}
+
+sha512sums="
+793492cc8c3a202022cc8351945dcc7ef701d09190cffe1b92a2eefd15aabfc952a869151b372e55448b3ac0ab903dec38ffc852e47d5b86d27bf67e086c644a suru-icon-theme-2b832bd20443a45ea75d6da04236f687a5d0564a.tar.gz
+"
diff --git a/testing/svgbob/APKBUILD b/testing/svgbob/APKBUILD
index 90fe2cbe6b9..49146e4acca 100644
--- a/testing/svgbob/APKBUILD
+++ b/testing/svgbob/APKBUILD
@@ -1,22 +1,25 @@
# Contributor: Erwan Rouchet <lucidiot@brainshit.fr>
# Maintainer: Erwan Rouchet <lucidiot@brainshit.fr>
pkgname=svgbob
-pkgver=0.6.6
+pkgver=0.7.2
pkgrel=0
pkgdesc="Convert your ascii diagram scribbles into happy little SVG"
url="https://github.com/ivanceras/svgbob"
arch="all !s390x !riscv64" # limited by rust/cargo
license="Apache-2.0"
-makedepends="cargo"
-source="$pkgname-$pkgver.tar.gz::https://github.com/ivanceras/svgbob/archive/$pkgver.tar.gz"
+makedepends="cargo cargo-auditable"
+source="$pkgname-$pkgver.tar.gz::https://github.com/ivanceras/svgbob/archive/$pkgver.tar.gz
+ update-cargo-lock.patch
+ "
+
prepare() {
default_prepare
- cargo fetch --locked
+ cargo fetch --target="$CTARGET" --locked
}
build() {
- cargo build --frozen --release
+ cargo auditable build --frozen --release
}
check() {
@@ -28,5 +31,6 @@ package() {
}
sha512sums="
-ab9491b0c555bc7bd714bd3fdbc685a83f2b73b9a478862fe606df4f78f406544eda43adf73adbbce2990e46dfb3b2471505bcb160bb892b0986a0a81587f8df svgbob-0.6.6.tar.gz
+0b6bfe8f29c14e30f8a5cb4e62a032cf0855a4e2ee7a4d998b4c99f48bebf3afe0ec34549de51323eb85431d2a1a10b7a3bd9a4b351caff4d935872b14fa3acc svgbob-0.7.2.tar.gz
+c33c018a8e323211ce261ed256b203ef277803c49060ead44d406241d0a824e197c99ac2148f53c7bd1d048a3e687b0f3cd7fb78569c2844e5c0cd882a13fd0c update-cargo-lock.patch
"
diff --git a/testing/svgbob/update-cargo-lock.patch b/testing/svgbob/update-cargo-lock.patch
new file mode 100644
index 00000000000..b64ebb70655
--- /dev/null
+++ b/testing/svgbob/update-cargo-lock.patch
@@ -0,0 +1,22 @@
+diff --git a/Cargo.lock b/Cargo.lock
+index ceb0e5a..b0d6d46 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -1042,7 +1042,7 @@ checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
+
+ [[package]]
+ name = "svgbob"
+-version = "0.7.1"
++version = "0.7.2"
+ dependencies = [
+ "indexmap",
+ "itertools",
+@@ -1057,7 +1057,7 @@ dependencies = [
+
+ [[package]]
+ name = "svgbob_cli"
+-version = "0.7.0"
++version = "0.7.2"
+ dependencies = [
+ "clap",
+ "svgbob",
diff --git a/testing/svls/APKBUILD b/testing/svls/APKBUILD
new file mode 100644
index 00000000000..59959dc5028
--- /dev/null
+++ b/testing/svls/APKBUILD
@@ -0,0 +1,35 @@
+# Maintainer: Cowington Post <cowingtonpost@gmail.com>
+pkgname=svls
+pkgver=0.2.11
+pkgrel=0
+pkgdesc="SystemVerilog language serer"
+url="https://github.com/dalance/svls"
+arch="all"
+license="MIT"
+makedepends="cargo cargo-auditable"
+subpackages="$pkgname-doc"
+source="https://github.com/dalance/svls/archive/v$pkgver/svls-$pkgver.tar.gz"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm755 target/release/svls -t "$pkgdir"/usr/bin
+
+ install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/svls/LICENSE
+}
+
+sha512sums="
+5cc75c80d752ea3fc7dd13aefde368425221f0572f055699f2c46c6afd4ee66322f5a76fb151050f59b2a0d537b9e96dde8874680ae8983397e5ddecddcfd14c svls-0.2.11.tar.gz
+"
diff --git a/testing/svt-av1/APKBUILD b/testing/svt-av1/APKBUILD
deleted file mode 100644
index 7feebd45ec9..00000000000
--- a/testing/svt-av1/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Contributor: Oleg Titov <oleg.titov@gmail.com>
-# Maintainer: Oleg Titov <oleg.titov@gmail.com>
-pkgname=svt-av1
-pkgver=1.1.0
-pkgrel=0
-pkgdesc="Scalable Vector Technology for AV1 encoder (SVT-AV1 Encoder)"
-url="https://01.org/svt"
-arch="x86_64" # x86: inlining failed in call to always_inline '_mm_load_sd': target specific option mismatch
-license="BSD-3-Clause-Clear"
-options="!check" # No test suite from upstream
-makedepends="cmake samurai yasm"
-subpackages="$pkgname-dev $pkgname-libs"
-source="$pkgname-$pkgver.tar.gz::https://github.com/OpenVisualCloud/SVT-AV1/archive/v$pkgver.tar.gz"
-builddir="$srcdir/SVT-AV1-$pkgver"
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build -G Ninja \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- -DCMAKE_BUILD_TYPE=Release \
- $CMAKE_CROSSOPTS .
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-
-sha512sums="
-94ca03d730824b6998dd41c309f3904698a9e8049cd70bfb0ed20e0e5123d0dbfc671bc6735eb4d7f7bd4830da71e67731d8fafac32b72e9d8148025b6061007 svt-av1-1.1.0.tar.gz
-"
diff --git a/testing/svt-hevc/APKBUILD b/testing/svt-hevc/APKBUILD
index d2abd7b8ac6..523e0dcb271 100644
--- a/testing/svt-hevc/APKBUILD
+++ b/testing/svt-hevc/APKBUILD
@@ -2,25 +2,25 @@
# Maintainer: Oleg Titov <oleg.titov@gmail.com>
pkgname=svt-hevc
pkgver=1.5.1
-pkgrel=1
+pkgrel=2
pkgdesc="Scalable Vector Technology for HEVC encoder (SVT-HEVC Encoder)"
url="https://01.org/svt"
arch="x86_64" # x86 error: incompatible type for argument 2 of '_mm_storel_epi64'
license="BSD-2-Clause-Patent"
options="!check" # No test suite from upstream
-makedepends="cmake samurai yasm"
+makedepends="cmake samurai nasm"
subpackages="$pkgname-dev $pkgname-doc $pkgname-libs"
source="$pkgname-$pkgver.tar.gz::https://github.com/OpenVisualCloud/SVT-HEVC/archive/v$pkgver.tar.gz"
builddir="$srcdir/SVT-HEVC-$pkgver"
build() {
+ CXXFLAGS="$CXXFLAGS -flto=auto" \
+ CFLAGS="$CFLAGS -flto=auto" \
cmake -B build -G Ninja \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
-DBUILD_SHARED_LIBS=True \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_CXX_FLAGS="$CXXFLAGS" \
- -DCMAKE_C_FLAGS="$CFLAGS"
+ -DCMAKE_BUILD_TYPE=Release
cmake --build build
}
diff --git a/testing/svt-vp9/APKBUILD b/testing/svt-vp9/APKBUILD
index 847ba3c4a2a..619a72996b0 100644
--- a/testing/svt-vp9/APKBUILD
+++ b/testing/svt-vp9/APKBUILD
@@ -2,25 +2,25 @@
# Maintainer: Oleg Titov <oleg.titov@gmail.com>
pkgname=svt-vp9
pkgver=0.3.0
-pkgrel=1
+pkgrel=2
pkgdesc="Scalable Vector Technology for VP9 encoder (SVT-VP9 Encoder)"
url="https://01.org/svt"
arch="x86_64" #x86: error: incompatible type for argument 2 of '_mm_storel_epi64'
license="BSD-2-Clause-Patent"
options="!check" # No test suite from upstream
-makedepends="cmake samurai yasm"
+makedepends="cmake samurai nasm"
subpackages="$pkgname-dev $pkgname-doc $pkgname-libs"
source="$pkgname-$pkgver.tar.gz::https://github.com/OpenVisualCloud/SVT-VP9/archive/v$pkgver.tar.gz"
builddir="$srcdir/SVT-VP9-$pkgver"
build() {
+ CXXFLAGS="$CXXFLAGS -flto=auto" \
+ CFLAGS="$CFLAGS -flto=auto" \
cmake -B build -G Ninja \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
-DBUILD_SHARED_LIBS=True \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_CXX_FLAGS="$CXXFLAGS" \
- -DCMAKE_C_FLAGS="$CFLAGS"
+ -DCMAKE_BUILD_TYPE=Release
cmake --build build
}
@@ -30,4 +30,6 @@ package() {
install -Dm 644 README.md -t "$pkgdir"/usr/share/doc/"$pkgname"
}
-sha512sums="2b65d4cc731061c2a07010314f7c306664fd9cf122917f96b94ec87350c8bab1a1118527263eb39347a6f6f572088337e1c5f7ae738b52de30a28ccb54c321c1 svt-vp9-0.3.0.tar.gz"
+sha512sums="
+2b65d4cc731061c2a07010314f7c306664fd9cf122917f96b94ec87350c8bab1a1118527263eb39347a6f6f572088337e1c5f7ae738b52de30a28ccb54c321c1 svt-vp9-0.3.0.tar.gz
+"
diff --git a/testing/svxlink-sounds-en_us-heather-16k/APKBUILD b/testing/svxlink-sounds-en_us-heather-16k/APKBUILD
deleted file mode 100644
index 4c427599634..00000000000
--- a/testing/svxlink-sounds-en_us-heather-16k/APKBUILD
+++ /dev/null
@@ -1,22 +0,0 @@
-# Contributor: Milan P. Stanić <mps@arvanta.net>
-# Maintainer: Milan P. Stanić <mps@arvanta.net>
-pkgname=svxlink-sounds-en_us-heather-16k
-pkgver=19.09
-pkgrel=0
-pkgdesc="Sound Package en_US-heather-16k from svxlink in high quality"
-url="http://www.svxlink.org/"
-arch="noarch"
-license="GPL-2.0-or-later"
-options="!check !strip"
-source="https://github.com/sm0svx/svxlink-sounds-en_US-heather/releases/download/$pkgver/svxlink-sounds-en_US-heather-16k-$pkgver.tar.bz2"
-builddir="$srcdir"/en_US-heather-16k
-
-package() {
- cd $builddir
- mkdir -p "$pkgdir/usr/share/svxlink/sounds/en_US"
- cd "$srcdir/en_US-heather-16k"
- cp -a * "$pkgdir/usr/share/svxlink/sounds/en_US"
- touch "$pkgdir/usr/share/svxlink/sounds/en_US/$pkgname-$pkgver"
-}
-
-sha512sums="6bc0c0979f9d7ba971b7facab429370d60e0275854b5963c766da64466b6a1d31470c32a4c7b5b485bf4847962fc9b5fd3eb677b23152e8e1580c9f9d5f5f51b svxlink-sounds-en_US-heather-16k-19.09.tar.bz2"
diff --git a/testing/swaks/APKBUILD b/testing/swaks/APKBUILD
index 10fbca3c274..0145f576791 100644
--- a/testing/swaks/APKBUILD
+++ b/testing/swaks/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Francesco Colista <fcolista@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=swaks
-pkgver=20201014.0
-pkgrel=1
+pkgver=20240103.0
+pkgrel=0
pkgdesc="Swiss Army Knife for SMTP"
url="https://www.jetmore.org/john/code/swaks/"
license="GPL-2.0-or-later"
@@ -17,4 +17,6 @@ package() {
install -Dm644 -t "$pkgdir"/usr/share/doc/$pkgname doc/*
}
-sha512sums="8a4e8dc810a9c5943afdbc4db7130e110c42e211d6927ce1cdbab6f81fa49c31490e6c3668ec3cea79580c07b281ce30901b3b4a71325951167158cc9d70d9cc swaks-20201014.0.tar.gz"
+sha512sums="
+89d62cdb94630666c1acb1feb3b62585f36b4d59d14e56d998da6efe45538e9f5072379eebee43dd7244aa3981dbd8d6eb9a42ff7fa21a73127d171b8b3189f5 swaks-20240103.0.tar.gz
+"
diff --git a/testing/swappy/APKBUILD b/testing/swappy/APKBUILD
index 71f194ee49e..8512e055789 100644
--- a/testing/swappy/APKBUILD
+++ b/testing/swappy/APKBUILD
@@ -1,21 +1,21 @@
# Contributor: Michał Polański <michal@polanski.me>
# Maintainer: Michał Polański <michal@polanski.me>
pkgname=swappy
-pkgver=1.4.0
+pkgver=1.5.1
pkgrel=0
pkgdesc="Snapshot editing tool for Wayland"
url="https://github.com/jtheoof/swappy"
license="MIT"
arch="all"
options="!check" # no test suite
-depends="ttf-font-awesome"
+depends="font-awesome-free"
makedepends="meson cairo-dev pango-dev gtk+3.0-dev libnotify-dev scdoc"
subpackages="$pkgname-doc $pkgname-lang"
source="https://github.com/jtheoof/swappy/archive/v$pkgver/swappy-$pkgver.tar.gz"
build() {
abuild-meson . output
- meson compile ${JOBS:+-j ${JOBS}} -C output
+ meson compile -C output
}
package() {
@@ -23,5 +23,5 @@ package() {
}
sha512sums="
-5e4952ee226799c64b8890036e22e28ec169a32da1d5f9414298d5e49b98fe0237bc35b270a2320e5e8b902b7118cf3b36c495de8475d4f948159bb1626a3004 swappy-1.4.0.tar.gz
+688ad9006965d6a3f9d2997335bc3e8172e4f6f53551bb92603cdc1f14138c25f9f7d28a87aa1cbcefc94f5da1701443a2ddf0e883b648ecc5a0b0ca28588217 swappy-1.5.1.tar.gz
"
diff --git a/testing/sway-audio-idle-inhibit/APKBUILD b/testing/sway-audio-idle-inhibit/APKBUILD
new file mode 100644
index 00000000000..041d380e2e1
--- /dev/null
+++ b/testing/sway-audio-idle-inhibit/APKBUILD
@@ -0,0 +1,33 @@
+# Maintainer: Willow Barraco <contact@willowbarraco.fr>
+pkgname=sway-audio-idle-inhibit
+_commit=c850bc4812216d03e05083c69aa05326a7fab9c7
+_date=20230809
+pkgver=0.1.1_git$_date
+pkgrel=0
+pkgdesc="Prevents swayidle from sleeping while any application is outputting or receiving audio"
+url="https://github.com/ErikReider/SwayAudioIdleInhibit"
+license="GPL-3.0-only"
+arch="all"
+makedepends="
+ pulseaudio-dev
+ wayland-dev
+ wayland-protocols
+ meson
+ ninja
+ "
+source="$pkgname-$_commit.tar.gz::https://github.com/ErikReider/SwayAudioIdleInhibit/archive/$_commit.tar.gz"
+options="!check" # no test suite
+builddir="$srcdir/SwayAudioIdleInhibit-$_commit"
+
+build() {
+ abuild-meson . output
+ meson compile -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+sha512sums="
+3574e0157c0a05ad25b9836e21fdd697b370bc287049887a44b7a251e92c0a82c423697c4c86882b1c1e7b520f7f1d6ff986cf76af89d9eaa3c35f37641571c4 sway-audio-idle-inhibit-c850bc4812216d03e05083c69aa05326a7fab9c7.tar.gz
+"
diff --git a/testing/swayhide/APKBUILD b/testing/swayhide/APKBUILD
index 1f84db83243..59702a5abfd 100644
--- a/testing/swayhide/APKBUILD
+++ b/testing/swayhide/APKBUILD
@@ -1,27 +1,23 @@
# Contributor: Edd Salkield <edd@salkield.uk>
# Maintainer: Edd Salkield <edd@salkield.uk>
pkgname=swayhide
-pkgver=0.2.0
-pkgrel=0
+pkgver=0.2.1
+pkgrel=1
pkgdesc="A window swallower for swaywm"
url="https://github.com/NomisIV/swayhide/"
arch="all !s390x !riscv64" # rust
license="GPL-3.0-only"
-makedepends="cargo"
+makedepends="cargo cargo-auditable"
source="https://github.com/NomisIV/swayhide/archive/v$pkgver/swayhide-v$pkgver.tar.gz"
-export CARGO_PROFILE_RELEASE_LTO="true"
-export CARGO_PROFILE_RELEASE_PANIC="abort"
-export CARGO_PROFILE_RELEASE_OPT_LEVEL="s"
-export CARGO_PROFILE_RELEASE_CODEGEN_UNITS=1
prepare() {
default_prepare
- cargo fetch --locked
+ cargo fetch --target="$CTARGET" --locked
}
build() {
- cargo build --release --frozen
+ cargo auditable build --release --frozen
}
check() {
@@ -29,10 +25,10 @@ check() {
}
package() {
- cargo install --locked --offline --path . --root="$pkgdir/usr"
+ cargo auditable install --locked --offline --path . --root="$pkgdir/usr"
rm "$pkgdir"/usr/.crates*
}
sha512sums="
-6562a762282724ece5e764d361a4e5ddbfcc15f4ac2726db98d7ed57686e70911cafca3c2eab0cb7069922adf9689d53d2caae5a110e3f5ac7308b49271e01d1 swayhide-v0.2.0.tar.gz
+4c7c9d5138d827faddf63bdd80895d89e583b11a034087e62ff31f07b0c32d1f1990b1c8d8a1104dd6e1dae0ba77353456ffa762c5bc535e753c63bba1ac4f17 swayhide-v0.2.1.tar.gz
"
diff --git a/testing/swi-prolog/APKBUILD b/testing/swi-prolog/APKBUILD
index 444cd9ddcc1..95f3ece5647 100644
--- a/testing/swi-prolog/APKBUILD
+++ b/testing/swi-prolog/APKBUILD
@@ -1,14 +1,15 @@
# Maintainer: Paul Bredbury <brebs@sent.com>
pkgname=swi-prolog
-pkgver=8.5.9
+pkgver=9.2.3
pkgrel=0
pkgdesc="Versatile implementation of the Prolog programming language"
url="https://www.swi-prolog.org"
arch="all !riscv64" # missing libunwind-dev
-license="BSD-2-Clause"
+license="BSD-2-Clause AND LGPL-3.0-or-later"
# Need to package JavaHamcrest in order to enable JPL
-subpackages="$pkgname-doc $pkgname-xpce:xpce:noarch $pkgname-xpce-doc:xpce_doc:noarch"
-makedepends="cmake
+subpackages="$pkgname-doc $pkgname-xpce:xpce:noarch $pkgname-xpce-doc:xpce_doc:noarch $pkgname-pyc"
+makedepends="
+ cmake
gmp-dev
libarchive-dev
libedit-dev
@@ -28,28 +29,30 @@ makedepends="cmake
samurai
unixodbc-dev
yaml-dev
- zlib-dev"
+ zlib-dev
+ "
# The Berkeley DB test works on all but x86, which segfaults
# https://github.com/SWI-Prolog/issues/issues/103#issuecomment-968091401
[ ! "$CARCH" = "x86" ] && makedepends="$makedepends db-dev"
checkdepends="python3"
-source="https://www.swi-prolog.org/download/devel/src/swipl-$pkgver.tar.gz"
+source="https://www.swi-prolog.org/download/stable/src/swipl-$pkgver.tar.gz"
builddir="$srcdir/swipl-$pkgver"
build() {
- cmake -B "$builddir" -G Ninja \
- -DCMAKE_BUILD_TYPE=PGO \
+ # pgo broken with gcc12 profiles
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr
- ninja -C "$builddir"
+ ninja -C build
}
check() {
- ctest --output-on-failure
+ ctest --output-on-failure --test-dir build
}
package() {
- DESTDIR="$pkgdir" ninja -C "$builddir" install
+ DESTDIR="$pkgdir" ninja -C build install
}
doc() {
@@ -74,6 +77,15 @@ xpce_doc() {
pkgdesc="X support for $pkgname (doc files)"
}
+pyc() {
+ pkgdesc="Precompiled Python bytecode for ${subpkgname%-pyc}"
+ install_if="${subpkgname%-pyc}=$pkgver-r$pkgrel pyc"
+
+ cd "$pkgdir" || return 0
+ local IFS=$'\n'
+ amove $(find usr/lib -type d -name __pycache__)
+}
+
sha512sums="
-c75dc58e9451205fd751ec8629f3865bf7d60e9bc3ef885ba3c328b36d807a459a8df1e8c61dbd6502335f6177b75a5f7c1a5c8acc77b8eed9fd5277a712d289 swipl-8.5.9.tar.gz
+5fa84255aedd9eaa8adfa1ae1367d12470f536b40908481d5a5bb1754a997c23433b24e8a2802af3381983ca2c347dae508a47a8dd4de3b713b9fbbfa988023b swipl-9.2.3.tar.gz
"
diff --git a/testing/swig3/APKBUILD b/testing/swig3/APKBUILD
index 2be11069ab4..a5cd51781a5 100644
--- a/testing/swig3/APKBUILD
+++ b/testing/swig3/APKBUILD
@@ -1,9 +1,9 @@
# Maintainer: Noel Kuntze <noel.kuntze@contauro.com>
pkgname=swig3
pkgver=3.0.12
-pkgrel=0
+pkgrel=2
pkgdesc="A compiler that makes it easy to integrate C and C++ code with scripting languages"
-url="http://www.swig.org/"
+url="https://www.swig.org/"
arch="all"
license="GPL-3.0-only"
depends="guile"
diff --git a/testing/swtpm/APKBUILD b/testing/swtpm/APKBUILD
deleted file mode 100644
index 46d6ead7a9c..00000000000
--- a/testing/swtpm/APKBUILD
+++ /dev/null
@@ -1,45 +0,0 @@
-# Contributor: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
-# Maintainer: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
-pkgname=swtpm
-pkgver=0.7.3
-pkgrel=0
-pkgdesc="Libtpms-based TPM emulator with socket, character device, and Linux CUSE interface"
-url="https://github.com/stefanberger/swtpm"
-arch="aarch64 armhf x86 x86_64"
-license="BSD-3-Clause"
-depends="libtpms"
-makedepends="autoconf automake bash expect gawk gnutls gnutls-dev gnutls-utils
- json-glib-dev libseccomp-dev libtasn1-dev libtool libtpms-dev openssl-dev
- python3 socat
- "
-subpackages="$pkgname-dev $pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::$url/archive/v$pkgver.tar.gz"
-
-prepare() {
- default_prepare
- NOCONFIGURE=1 ./autogen.sh
-}
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --libdir=/usr/lib \
- --with-openssl \
- --with-tss-user=root \
- --with-tss-group=root
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-7f4cdf7ca2539f28e3a78e2a081b24983f3305905c7cafcac0957b14f5c06c8ee9485a0adaf3710561091f9ee85e00822fe1ff874389808218c1e17f938c45d9 swtpm-0.7.3.tar.gz
-"
diff --git a/testing/sxcs/APKBUILD b/testing/sxcs/APKBUILD
new file mode 100644
index 00000000000..79369ee4f36
--- /dev/null
+++ b/testing/sxcs/APKBUILD
@@ -0,0 +1,27 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer: Sergiy Stupar <owner@sestolab.pp.ua>
+pkgname=sxcs
+pkgver=1.0.0
+pkgrel=0
+pkgdesc="Minimal X11 Color Picker and Magnifier"
+url="https://codeberg.org/NRK/sxcs"
+arch="all"
+license="GPL-3.0-or-later"
+options="!check" # no test suite
+makedepends="libx11-dev libxcursor-dev"
+source="$pkgname-$pkgver.tar.gz::https://codeberg.org/NRK/sxcs/archive/v$pkgver.tar.gz"
+subpackages="$pkgname-doc"
+builddir="$srcdir/sxcs"
+
+build() {
+ make -e sxcs LDLIBS="-lX11 -lXcursor"
+}
+
+package() {
+ install -Dm755 -t "$pkgdir"/usr/bin sxcs
+ install -Dm644 -t "$pkgdir"/usr/share/man/man1 sxcs.1
+}
+
+sha512sums="
+dbcd20d894ac2d63f3c93dcee9881a068d40f33cbce5527de746dca2dc34fe264eb91d0849cff81a2730b78645ed421ccf763b544922fbd626361b8056f24d3a sxcs-1.0.0.tar.gz
+"
diff --git a/testing/syft/APKBUILD b/testing/syft/APKBUILD
deleted file mode 100644
index 7282dda7ac8..00000000000
--- a/testing/syft/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Contributor: Michał Polański <michal@polanski.me>
-# Maintainer: Michał Polański <michal@polanski.me>
-pkgname=syft
-pkgver=0.46.3
-pkgrel=0
-pkgdesc="Generate a Software Bill of Materials (SBOM) from container images and filesystems"
-url="https://github.com/anchore/syft"
-license="Apache-2.0"
-arch="all !armhf !armv7 !x86" # FTBFS on 32-bit arches
-makedepends="go"
-source="https://github.com/anchore/syft/archive/v$pkgver/syft-$pkgver.tar.gz"
-options="!check" # tests need docker
-
-export GOFLAGS="$GOFLAGS -trimpath -mod=readonly -modcacherw"
-export GOPATH="$srcdir"
-export CGO_ENABLED=0
-
-build() {
- go build -ldflags "-s -w
- -X github.com/anchore/syft/internal/version.version=$pkgver
- " \
- -o bin/syft ./cmd/syft
-}
-
-check() {
- go test ./...
-}
-
-package() {
- install -Dm755 bin/syft "$pkgdir"/usr/bin/syft
-}
-
-sha512sums="
-3a690e7ec15bf721f4e4011eec09e834526b4e82b0cfe46cf0abe4c39f5fc4ce1a7876faa92ea95fbfb3f280ff615d1837fc9903ec76792df4e6e5250a47b1d4 syft-0.46.3.tar.gz
-"
diff --git a/testing/sylpheed-imap-notify/APKBUILD b/testing/sylpheed-imap-notify/APKBUILD
index df87749c13e..8620947b894 100644
--- a/testing/sylpheed-imap-notify/APKBUILD
+++ b/testing/sylpheed-imap-notify/APKBUILD
@@ -8,7 +8,7 @@ url="https://github.com/clehner/sylpheed-imap-notify"
arch="all"
license="GPL-3.0-or-later"
depends="sylpheed"
-makedepends="sylpheed-dev gtk+-dev"
+makedepends="sylpheed-dev gtk+2.0-dev"
options="!check"
source="$pkgname-$pkgver.tar.gz::https://github.com/clehner/$pkgname/archive/$pkgver.tar.gz"
builddir="$srcdir/$pkgname-$pkgver"
diff --git a/testing/symbiyosys/APKBUILD b/testing/symbiyosys/APKBUILD
new file mode 100644
index 00000000000..0440ed4538a
--- /dev/null
+++ b/testing/symbiyosys/APKBUILD
@@ -0,0 +1,25 @@
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=symbiyosys
+pkgver=0.36
+pkgrel=0
+pkgdesc="Front-end for Yosys-based formal verification flows"
+url="https://github.com/YosysHQ/sby"
+# s390x, riscv64: blocked by yosys
+arch="noarch !s390x !riscv64"
+license="ISC"
+depends="python3 py3-click yosys"
+checkdepends="bash"
+source="$pkgname-$pkgver.tar.gz::https://github.com/YosysHQ/sby/archive/yosys-$pkgver.tar.gz"
+builddir="$srcdir/sby-yosys-$pkgver"
+
+check() {
+ make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" PREFIX=/usr install
+}
+
+sha512sums="
+3a6f56644e54670d448cb0e80d7f1a76e3fd06a5464bc73b9015101f56552c77569bb61ec4c64a41bab7c4d145a38c54c779e5d7fbced280f98b17009acc9aa7 symbiyosys-0.36.tar.gz
+"
diff --git a/testing/sympow/APKBUILD b/testing/sympow/APKBUILD
new file mode 100644
index 00000000000..db90f0c04fd
--- /dev/null
+++ b/testing/sympow/APKBUILD
@@ -0,0 +1,39 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
+pkgname=sympow
+pkgver=2.023.6
+pkgrel=1
+pkgdesc="Program for computing special values of symmetric power elliptic curve L-functions"
+url="https://gitlab.com/rezozer/forks/sympow"
+# blocked by pari
+arch="all !armhf !armv7 !x86"
+license="BSD-2-Clause"
+depends="pari"
+makedepends="bash help2man"
+subpackages="$pkgname-doc"
+source="https://gitlab.com/rezozer/forks/sympow/-/archive/v$pkgver/sympow-v$pkgver.tar.gz"
+builddir="$srcdir/$pkgname-v$pkgver"
+
+prepare() {
+ default_prepare
+ sed -i "s|VERBOSE_DEFAULT 1|VERBOSE_DEFAULT 0|" sympow.h
+}
+
+build() {
+ export CFLAGS="${CFLAGS/-Os/-O3}" # gotta go fast
+
+ PREFIX=/usr bash ./Configure
+ make
+}
+
+check() {
+ ./sympow -help
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+efe3b09fff0629e136b029ea615aa09ac1a4f225c06636d653ac921c7de01bf75e2b392a138c3c1af92f2b4f889f5949beeeba5b6e5e6b49e02c605bb9c16ceb sympow-v2.023.6.tar.gz
+"
diff --git a/testing/synadm/APKBUILD b/testing/synadm/APKBUILD
new file mode 100644
index 00000000000..835246d7b08
--- /dev/null
+++ b/testing/synadm/APKBUILD
@@ -0,0 +1,29 @@
+# Contributor: Guy Godfroy <guy.godfroy@gugod.fr>
+# Maintainer: Guy Godfroy <guy.godfroy@gugod.fr>
+pkgname=synadm
+pkgver=0.46
+pkgrel=1
+pkgdesc="Command line admin tool for Synapse"
+url="https://github.com/JOJ0/synadm"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="py3-tabulate py3-click py3-requests py3-yaml py3-click-option-group py3-dnspython"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+source="$pkgname-$pkgver.tar.gz::https://github.com/JOJ0/synadm/archive/refs/tags/v$pkgver.tar.gz"
+options="!check" #no check provided
+subpackages="$pkgname-pyc"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+f997e9240ee35a692adb32f10e967baf4e9efa031471e451bf016e4de3fd9124cca18b85478f453954a7abe68fec193500cb27d8311bf7cd8e3fb22c3804dc96 synadm-0.46.tar.gz
+"
diff --git a/testing/synapse-bt/APKBUILD b/testing/synapse-bt/APKBUILD
index afa7167f24d..29796e23e33 100644
--- a/testing/synapse-bt/APKBUILD
+++ b/testing/synapse-bt/APKBUILD
@@ -2,23 +2,25 @@
# Maintainer: prspkt <prspkt@protonmail.com>
pkgname=synapse-bt
pkgver=1.0
-pkgrel=2
+pkgrel=4
pkgdesc="Flexible and fast BitTorrent daemon"
url="https://github.com/Luminarys/synapse"
arch="all !aarch64 !s390x !riscv64" # Cargo (aarch64 due to MAP_32BIT)
license="ISC"
pkgusers="synapse-bt"
pkggroups="synapse-bt"
-makedepends="cargo openssl-dev"
+makedepends="cargo openssl-dev cargo-auditable"
install="synapse-bt.pre-install"
subpackages="$pkgname-openrc $pkgname-cli:cli"
source="synapse-bt-$pkgver.tar.gz::https://github.com/Luminarys/synapse/archive/$pkgver.tar.gz
+ openssl3.patch
synapse-bt.initd
"
builddir="$srcdir"/synapse-$pkgver
+
build() {
- cargo build --release --all --locked
+ cargo auditable build --release --all --locked
}
check() {
@@ -45,5 +47,8 @@ cli() {
"$subpkgdir"/usr/bin/sycli
}
-sha512sums="d3caf0a4ca0e7a63dff07ec15bbbf2dc02736c6ba88c4fbece960af7223f7df8b176dc917518a9ac3f8692aa59c321cb9cbe2a0250a2dddbf520706e379be981 synapse-bt-1.0.tar.gz
-82f8edef196cf15369ba4e6d83f289764fe6f94715f79b27803b7ef87317036cecaf2e497d4858d56727fe101d466d141addfc78b0396813b0edafde3c761d31 synapse-bt.initd"
+sha512sums="
+d3caf0a4ca0e7a63dff07ec15bbbf2dc02736c6ba88c4fbece960af7223f7df8b176dc917518a9ac3f8692aa59c321cb9cbe2a0250a2dddbf520706e379be981 synapse-bt-1.0.tar.gz
+1a2c79613cb6c155cf3e41939360438462e8e0337d3af6eab4c288797a256ec4c986a052de78d04d57ac039a7d06e1b42733bae37699ad58e8ca5a25a02aa4ea openssl3.patch
+82f8edef196cf15369ba4e6d83f289764fe6f94715f79b27803b7ef87317036cecaf2e497d4858d56727fe101d466d141addfc78b0396813b0edafde3c761d31 synapse-bt.initd
+"
diff --git a/testing/synapse-bt/openssl3.patch b/testing/synapse-bt/openssl3.patch
new file mode 100644
index 00000000000..428bfb273ce
--- /dev/null
+++ b/testing/synapse-bt/openssl3.patch
@@ -0,0 +1,2608 @@
+diff --git a/Cargo.lock b/Cargo.lock
+index ea5e35d..28eb5f3 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -1,1253 +1,1463 @@
++# This file is automatically @generated by Cargo.
++# It is not intended for manual editing.
++version = 3
++
+ [[package]]
+ name = "MacTypes-sys"
+ version = "2.1.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "eaf9f0d0b1cc33a4d2aee14fb4b2eac03462ef4db29c8ac4057327d8a71ad86f"
+ dependencies = [
+- "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc",
+ ]
+
+ [[package]]
+ name = "adler32"
+ version = "1.0.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7e522997b529f05601e05166c07ed17789691f562762c7f3b987263d2dedee5c"
+
+ [[package]]
+ name = "adns"
+ version = "0.1.0"
+ dependencies = [
+- "dns-parser 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "resolv-conf 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "dns-parser",
++ "resolv-conf",
+ ]
+
+ [[package]]
+ name = "aho-corasick"
+ version = "0.6.10"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "81ce3d38065e618af2d7b77e10c5ad9a069859b4be3c2250f674af3840d9c8a5"
+ dependencies = [
+- "memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "memchr 2.2.0",
+ ]
+
+ [[package]]
+ name = "amy"
+ version = "0.10.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "189ef3bf7b79ba326fbb69ff2d29a78a8b9f087a5b6047b5aebc7bc4bad4b2aa"
+ dependencies = [
+- "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)",
+- "nix 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc",
++ "nix 0.10.0",
+ ]
+
+ [[package]]
+ name = "ansi_term"
+ version = "0.11.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b"
+ dependencies = [
+- "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "winapi 0.3.6",
+ ]
+
+ [[package]]
+ name = "arrayvec"
+ version = "0.4.10"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "92c7fb76bc8826a8b33b4ee5bb07a247a81e76764ab4d55e8f73e3a4d8808c71"
+ dependencies = [
+- "nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)",
++ "nodrop",
+ ]
+
+ [[package]]
+ name = "atty"
+ version = "0.2.11"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "9a7d5b8723950951411ee34d271d99dddcc2035a16ab25310ea2c8cfd4369652"
+ dependencies = [
+- "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)",
+- "termion 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc",
++ "termion",
++ "winapi 0.3.6",
+ ]
+
+ [[package]]
+ name = "autocfg"
+ version = "0.1.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "a6d640bee2da49f60a4068a7fae53acde8982514ab7bae8b8cea9e88cbcfd799"
++
++[[package]]
++name = "autocfg"
++version = "1.1.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
+
+ [[package]]
+ name = "base32"
+ version = "0.3.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "1b9605ba46d61df0410d8ac686b0007add8172eba90e8e909c347856fe794d8c"
+
+ [[package]]
+ name = "base64"
+ version = "0.9.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "489d6c0ed21b11d038c31b6ceccca973e65d73ba3bd8ecb9a2babf5546164643"
+ dependencies = [
+- "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "safemem 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "byteorder",
++ "safemem",
+ ]
+
+ [[package]]
+ name = "base64"
+ version = "0.10.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "0b25d992356d2eb0ed82172f5248873db5560c4721f564b13cb5193bda5e668e"
+ dependencies = [
+- "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "byteorder",
+ ]
+
+ [[package]]
+ name = "bincode"
+ version = "1.1.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "3efe0b4c8eaeed8600549c29f538a6a11bf422858d0ed435b1d70ec4ab101190"
+ dependencies = [
+- "autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)",
++ "autocfg 0.1.2",
++ "byteorder",
++ "serde",
+ ]
+
+ [[package]]
+ name = "bitflags"
+ version = "1.0.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "228047a76f468627ca71776ecdebd732a3423081fcf5125585bcd7c49886ce12"
+
+ [[package]]
+ name = "block-buffer"
+ version = "0.7.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "49665c62e0e700857531fa5d3763e91b539ff1abeebd56808d378b495870d60d"
+ dependencies = [
+- "block-padding 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "byte-tools 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "generic-array 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "block-padding",
++ "byte-tools",
++ "byteorder",
++ "generic-array",
+ ]
+
+ [[package]]
+ name = "block-padding"
+ version = "0.1.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "d75255892aeb580d3c566f213a2b6fdc1c66667839f45719ee1d30ebf2aea591"
+ dependencies = [
+- "byte-tools 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "byte-tools",
+ ]
+
+ [[package]]
+ name = "byte-tools"
+ version = "0.3.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7"
+
+ [[package]]
+ name = "byteorder"
+ version = "1.3.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "a019b10a2a7cdeb292db131fc8113e57ea2a908f6e7894b0c3c671893b65dbeb"
+
+ [[package]]
+ name = "bytes"
+ version = "0.4.12"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "206fdffcfa2df7cbe15601ef46c813fce0965eb3286db6b56c583b814b51c81c"
+ dependencies = [
+- "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "byteorder",
++ "iovec",
+ ]
+
+ [[package]]
+ name = "cc"
+ version = "1.0.31"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "c9ce8bb087aacff865633f0bd5aeaed910fe2fe55b55f4739527f2e023a2e53d"
+
+ [[package]]
+ name = "cfg-if"
+ version = "0.1.7"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "11d43355396e872eefb45ce6342e4374ed7bc2b3a502d1b28e36d6e23c05d1f4"
++
++[[package]]
++name = "cfg-if"
++version = "1.0.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
+
+ [[package]]
+ name = "chrono"
+ version = "0.4.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "45912881121cb26fad7c38c17ba7daa18764771836b34fab7d3fbd93ed633878"
+ dependencies = [
+- "num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)",
+- "num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)",
+- "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
++ "num-integer",
++ "num-traits",
++ "serde",
++ "time",
+ ]
+
+ [[package]]
+ name = "clap"
+ version = "2.32.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "b957d88f4b6a63b9d70d5f454ac8011819c6efa7727858f458ab71c756ce2d3e"
+ dependencies = [
+- "ansi_term 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "atty 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
+- "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
+- "strsim 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "textwrap 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "unicode-width 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
+- "vec_map 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "ansi_term",
++ "atty",
++ "bitflags",
++ "strsim",
++ "textwrap",
++ "unicode-width",
++ "vec_map",
+ ]
+
+ [[package]]
+ name = "clippy"
+ version = "0.0.302"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "d911ee15579a3f50880d8c1d59ef6e79f9533127a3bd342462f5d584f5e8c294"
+ dependencies = [
+- "term 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "term",
+ ]
+
+ [[package]]
+ name = "cloudabi"
+ version = "0.0.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f"
+ dependencies = [
+- "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bitflags",
+ ]
+
+ [[package]]
+ name = "core-foundation"
+ version = "0.5.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "286e0b41c3a20da26536c6000a280585d519fd07b3956b43aed8a79e9edce980"
+ dependencies = [
+- "core-foundation-sys 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)",
++ "core-foundation-sys",
++ "libc",
+ ]
+
+ [[package]]
+ name = "core-foundation-sys"
+ version = "0.5.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "716c271e8613ace48344f723b60b900a93150271e5be206212d052bbc0883efa"
+ dependencies = [
+- "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc",
+ ]
+
+ [[package]]
+ name = "crc32fast"
+ version = "1.2.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ba125de2af0df55319f41944744ad91c71113bf74a4646efff39afe1f6842db1"
+ dependencies = [
+- "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cfg-if 0.1.7",
+ ]
+
+ [[package]]
+ name = "crossbeam-deque"
+ version = "0.7.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "b18cd2e169ad86297e6bc0ad9aa679aee9daa4f19e8163860faf7c164e4f5a71"
+ dependencies = [
+- "crossbeam-epoch 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "crossbeam-epoch",
++ "crossbeam-utils",
+ ]
+
+ [[package]]
+ name = "crossbeam-epoch"
+ version = "0.7.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "04c9e3102cc2d69cd681412141b390abd55a362afc1540965dad0ad4d34280b4"
+ dependencies = [
+- "arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
+- "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
+- "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
++ "arrayvec",
++ "cfg-if 0.1.7",
++ "crossbeam-utils",
++ "lazy_static",
++ "memoffset",
++ "scopeguard",
+ ]
+
+ [[package]]
+ name = "crossbeam-queue"
+ version = "0.1.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7c979cd6cfe72335896575c6b5688da489e420d36a27a0b9eb0c73db574b4a4b"
+ dependencies = [
+- "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "crossbeam-utils",
+ ]
+
+ [[package]]
+ name = "crossbeam-utils"
+ version = "0.6.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f8306fcef4a7b563b76b7dd949ca48f52bc1141aa067d2ea09565f3e2652aa5c"
+ dependencies = [
+- "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
+- "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cfg-if 0.1.7",
++ "lazy_static",
+ ]
+
+ [[package]]
+ name = "csv"
+ version = "0.15.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7ef22b37c7a51c564a365892c012dc0271221fdcc64c69b19ba4d6fa8bd96d9c"
+ dependencies = [
+- "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "memchr 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rustc-serialize 0.3.24 (registry+https://github.com/rust-lang/crates.io-index)",
++ "byteorder",
++ "memchr 1.0.2",
++ "rustc-serialize",
+ ]
+
+ [[package]]
+ name = "digest"
+ version = "0.8.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "05f47366984d3ad862010e22c7ce81a7dbcaebbdfb37241a620f8b6596ee135c"
+ dependencies = [
+- "generic-array 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "generic-array",
+ ]
+
+ [[package]]
+ name = "dns-parser"
+ version = "0.7.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f7020f6760aea312d43d23cb83bf6c0c49f162541db8b02bf95209ac51dc253d"
+ dependencies = [
+- "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "byteorder",
++ "quick-error",
+ ]
+
+ [[package]]
+ name = "dtoa"
+ version = "0.4.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6d301140eb411af13d3115f9a562c85cc6b541ade9dfa314132244aaee7489dd"
+
+ [[package]]
+ name = "encode_unicode"
+ version = "0.3.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "90b2c9496c001e8cb61827acdefad780795c42264c137744cae6f7d9e3450abd"
+
+ [[package]]
+ name = "encoding_rs"
+ version = "0.8.17"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "4155785c79f2f6701f185eb2e6b4caf0555ec03477cb4c70db67b465311620ed"
+ dependencies = [
+- "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cfg-if 0.1.7",
+ ]
+
+ [[package]]
+ name = "error-chain"
+ version = "0.12.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "3ab49e9dcb602294bc42f9a7dfc9bc6e936fca4418ea300dbfb84fe16de0b7d9"
+ dependencies = [
+- "version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "version_check",
+ ]
+
+ [[package]]
+ name = "fake-simd"
+ version = "0.1.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e88a8acf291dafb59c2d96e8f59828f3838bb1a70398823ade51a84de6a6deed"
+
+ [[package]]
+ name = "fnv"
+ version = "1.0.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "2fad85553e09a6f881f739c29f0b00b0f01357c743266d478b68951ce23285f3"
+
+ [[package]]
+ name = "foreign-types"
+ version = "0.3.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
+ dependencies = [
+- "foreign-types-shared 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "foreign-types-shared",
+ ]
+
+ [[package]]
+ name = "foreign-types-shared"
+ version = "0.1.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
+
+ [[package]]
+ name = "fs_extra"
+ version = "1.1.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "5f2a4a2034423744d2cc7ca2068453168dcdb82c438419e639a26bd87839c674"
+
+ [[package]]
+ name = "fuchsia-cprng"
+ version = "0.1.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba"
+
+ [[package]]
+ name = "fuchsia-zircon"
+ version = "0.3.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82"
+ dependencies = [
+- "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
+- "fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bitflags",
++ "fuchsia-zircon-sys",
+ ]
+
+ [[package]]
+ name = "fuchsia-zircon-sys"
+ version = "0.3.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7"
+
+ [[package]]
+ name = "futures"
+ version = "0.1.25"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "49e7653e374fe0d0c12de4250f0bdb60680b8c80eed558c5c7538eec9c89e21b"
+
+ [[package]]
+ name = "futures-cpupool"
+ version = "0.1.8"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ab90cde24b3319636588d0c35fe03b1333857621051837ed769faefb4c2162e4"
+ dependencies = [
+- "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+- "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "futures",
++ "num_cpus",
+ ]
+
+ [[package]]
+ name = "gcc"
+ version = "0.3.55"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "8f5f3913fa0bfe7ee1fd8248b6b9f42a5af4b9d65ec2dd2c3c26132b950ecfc2"
+
+ [[package]]
+ name = "generic-array"
+ version = "0.12.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "3c0f28c2f5bfb5960175af447a2da7c18900693738343dc896ffbcabd9839592"
+ dependencies = [
+- "typenum 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "typenum",
+ ]
+
+ [[package]]
+ name = "getopts"
+ version = "0.2.18"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "0a7292d30132fb5424b354f5dc02512a86e4c516fe544bb7a25e7f266951b797"
+ dependencies = [
+- "unicode-width 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "unicode-width",
+ ]
+
+ [[package]]
+ name = "h2"
+ version = "0.1.17"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "910a5e7be6283a9c91b3982fa5188368c8719cce2a3cf3b86048673bf9d9c36b"
+ dependencies = [
+- "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)",
+- "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+- "http 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
+- "indexmap 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "string 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)",
++ "byteorder",
++ "bytes",
++ "fnv",
++ "futures",
++ "http",
++ "indexmap",
++ "log",
++ "slab",
++ "string",
++ "tokio-io",
+ ]
+
+ [[package]]
+ name = "http"
+ version = "0.1.16"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "fe67e3678f2827030e89cc4b9e7ecd16d52f132c0b940ab5005f88e821500f6a"
+ dependencies = [
+- "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)",
+- "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "itoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bytes",
++ "fnv",
++ "itoa",
+ ]
+
+ [[package]]
+ name = "http-range"
+ version = "0.1.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "5f2e4003e6fd05ea9109db00415e670b11f511a42e567ff2d5d771cbdfa24e02"
+
+ [[package]]
+ name = "httparse"
+ version = "1.3.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e8734b0cfd3bc3e101ec59100e101c2eecd19282202e87808b3037b442777a83"
+
+ [[package]]
+ name = "hyper"
+ version = "0.12.25"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7d5b6658b016965ae301fa995306db965c93677880ea70765a84235a96eae896"
+ dependencies = [
+- "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "h2 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
+- "http 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
+- "httparse 1.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "itoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-threadpool 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "want 0.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bytes",
++ "futures",
++ "futures-cpupool",
++ "h2",
++ "http",
++ "httparse",
++ "iovec",
++ "itoa",
++ "log",
++ "net2",
++ "rustc_version",
++ "time",
++ "tokio",
++ "tokio-executor",
++ "tokio-io",
++ "tokio-reactor",
++ "tokio-tcp",
++ "tokio-threadpool",
++ "tokio-timer",
++ "want",
+ ]
+
+ [[package]]
+ name = "hyper-tls"
+ version = "0.3.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "32cd73f14ad370d3b4d4b7dce08f69b81536c82e39fcc89731930fe5788cd661"
+ dependencies = [
+- "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+- "hyper 0.12.25 (registry+https://github.com/rust-lang/crates.io-index)",
+- "native-tls 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bytes",
++ "futures",
++ "hyper",
++ "native-tls",
++ "tokio-io",
+ ]
+
+ [[package]]
+ name = "idna"
+ version = "0.1.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "38f09e0f0b1fb55fdee1f17470ad800da77af5186a1a76c026b679358b7e844e"
+ dependencies = [
+- "matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+- "unicode-normalization 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "matches",
++ "unicode-bidi",
++ "unicode-normalization",
+ ]
+
+ [[package]]
+ name = "indexmap"
+ version = "1.0.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7e81a7c05f79578dbc15793d8b619db9ba32b4577003ef3af1a91c416798c58d"
+
+ [[package]]
+ name = "input_buffer"
+ version = "0.2.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "8e1b822cc844905551931d6f81608ed5f50a79c1078a4e2b4d42dbc7c1eedfbf"
+ dependencies = [
+- "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bytes",
+ ]
+
+ [[package]]
+ name = "iovec"
+ version = "0.1.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "dbe6e417e7d0975db6512b90796e8ce223145ac4e33c377e4a42882a0e88bb08"
+ dependencies = [
+- "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc",
++ "winapi 0.2.8",
+ ]
+
+ [[package]]
+ name = "itoa"
+ version = "0.4.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "1306f3464951f30e30d12373d31c79fbd52d236e5e896fd92f96ec7babbbe60b"
+
+ [[package]]
+ name = "kernel32-sys"
+ version = "0.2.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d"
+ dependencies = [
+- "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "winapi 0.2.8",
++ "winapi-build",
+ ]
+
+ [[package]]
+ name = "lazy_static"
+ version = "1.3.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "bc5729f27f159ddd61f4df6228e827e86643d4d3e7c32183cb30a1c08f604a14"
+
+ [[package]]
+ name = "lazycell"
+ version = "1.2.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "b294d6fa9ee409a054354afc4352b0b9ef7ca222c69b8812cbea9e7d2bf3783f"
+
+ [[package]]
+ name = "libc"
+ version = "0.2.50"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "aab692d7759f5cd8c859e169db98ae5b52c924add2af5fbbca11d12fefb567c1"
+
+ [[package]]
+ name = "libflate"
+ version = "0.1.21"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7346a83e8a2c3958d44d24225d905385dc31fc16e89dffb356c457b278914d20"
+ dependencies = [
+- "adler32 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "crc32fast 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "adler32",
++ "byteorder",
++ "crc32fast",
+ ]
+
+ [[package]]
+ name = "lock_api"
+ version = "0.1.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "62ebf1391f6acad60e5c8b43706dde4582df75c06698ab44511d15016bc2442c"
+ dependencies = [
+- "owning_ref 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
++ "owning_ref",
++ "scopeguard",
+ ]
+
+ [[package]]
+ name = "log"
+ version = "0.4.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "c84ec4b527950aa83a329754b01dbe3f58361d1c5efacd1f6d68c494d08a17c6"
+ dependencies = [
+- "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cfg-if 0.1.7",
+ ]
+
+ [[package]]
+ name = "matches"
+ version = "0.1.8"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08"
+
+ [[package]]
+ name = "memchr"
+ version = "1.0.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "148fab2e51b4f1cfc66da2a7c32981d1d3c083a803978268bb11fe4b86925e7a"
+ dependencies = [
+- "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc",
+ ]
+
+ [[package]]
+ name = "memchr"
+ version = "2.2.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "2efc7bc57c883d4a4d6e3246905283d8dae951bb3bd32f49d6ef297f546e1c39"
+
+ [[package]]
+ name = "memmap"
+ version = "0.6.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e2ffa2c986de11a9df78620c01eeaaf27d94d3ff02bf81bfcca953102dd0c6ff"
+ dependencies = [
+- "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc",
++ "winapi 0.3.6",
+ ]
+
+ [[package]]
+ name = "memoffset"
+ version = "0.2.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "0f9dc261e2b62d7a622bf416ea3c5245cdd5d9a7fcc428c0d06804dfce1775b3"
+
+ [[package]]
+ name = "metrohash"
+ version = "1.0.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "3ba553cb19e2acbc54baa16faef215126243fe45e53357a3b2e9f4ebc7b0506c"
+
+ [[package]]
+ name = "mime"
+ version = "0.3.13"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "3e27ca21f40a310bd06d9031785f4801710d566c184a6e15bad4f1d9b65f9425"
+ dependencies = [
+- "unicase 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "unicase 2.3.0",
+ ]
+
+ [[package]]
+ name = "mime_guess"
+ version = "2.0.0-alpha.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "30de2e4613efcba1ec63d8133f344076952090c122992a903359be5a4f99c3ed"
+ dependencies = [
+- "mime 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
+- "phf 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)",
+- "phf_codegen 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)",
+- "unicase 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "mime",
++ "phf",
++ "phf_codegen",
++ "unicase 1.4.2",
+ ]
+
+ [[package]]
+ name = "mio"
+ version = "0.6.16"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "71646331f2619b1026cc302f87a2b8b648d5c6dd6937846a16cc8ce0f347f432"
+ dependencies = [
+- "fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "miow 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)",
+- "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "fuchsia-zircon",
++ "fuchsia-zircon-sys",
++ "iovec",
++ "kernel32-sys",
++ "lazycell",
++ "libc",
++ "log",
++ "miow",
++ "net2",
++ "slab",
++ "winapi 0.2.8",
+ ]
+
+ [[package]]
+ name = "miow"
+ version = "0.2.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "8c1f2f3b1cf331de6896aabf6e9d55dca90356cc9960cca7eaaf408a355ae919"
+ dependencies = [
+- "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "ws2_32-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "kernel32-sys",
++ "net2",
++ "winapi 0.2.8",
++ "ws2_32-sys",
+ ]
+
+ [[package]]
+ name = "native-tls"
+ version = "0.2.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ff8e08de0070bbf4c31f452ea2a70db092f36f6f2e4d897adf5674477d488fb2"
+ dependencies = [
+- "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "openssl 0.10.19 (registry+https://github.com/rust-lang/crates.io-index)",
+- "openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "openssl-sys 0.9.42 (registry+https://github.com/rust-lang/crates.io-index)",
+- "schannel 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)",
+- "security-framework 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "security-framework-sys 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tempfile 3.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
++ "lazy_static",
++ "libc",
++ "log",
++ "openssl",
++ "openssl-probe",
++ "openssl-sys",
++ "schannel",
++ "security-framework",
++ "security-framework-sys",
++ "tempfile",
+ ]
+
+ [[package]]
+ name = "net2"
+ version = "0.2.33"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "42550d9fb7b6684a6d404d9fa7250c2eb2646df731d1c06afc06dcee9e1bcf88"
+ dependencies = [
+- "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cfg-if 0.1.7",
++ "libc",
++ "winapi 0.3.6",
+ ]
+
+ [[package]]
+ name = "nix"
+ version = "0.10.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "b7fd5681d13fda646462cfbd4e5f2051279a89a544d50eb98c365b507246839f"
+ dependencies = [
+- "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
+- "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)",
+- "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
+- "gcc 0.3.55 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)",
+- "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bitflags",
++ "bytes",
++ "cfg-if 0.1.7",
++ "gcc",
++ "libc",
++ "void",
+ ]
+
+ [[package]]
+ name = "nix"
+ version = "0.11.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "d37e713a259ff641624b6cb20e3b12b2952313ba36b6823c0f16e6cfd9e5de17"
+ dependencies = [
+- "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
+- "cc 1.0.31 (registry+https://github.com/rust-lang/crates.io-index)",
+- "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)",
+- "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bitflags",
++ "cc",
++ "cfg-if 0.1.7",
++ "libc",
++ "void",
+ ]
+
+ [[package]]
+ name = "nodrop"
+ version = "0.1.13"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "2f9667ddcc6cc8a43afc9b7917599d7216aa09c463919ea32c59ed6cac8bc945"
+
+ [[package]]
+ name = "num-bigint"
+ version = "0.2.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "57450397855d951f1a41305e54851b1a7b8f5d2e349543a02a2effe25459f718"
+ dependencies = [
+- "num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)",
+- "num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)",
++ "num-integer",
++ "num-traits",
++ "serde",
+ ]
+
+ [[package]]
+ name = "num-integer"
+ version = "0.1.39"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e83d528d2677f0518c570baf2b7abdcf0cd2d248860b68507bdcb3e91d4c0cea"
+ dependencies = [
+- "num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "num-traits",
+ ]
+
+ [[package]]
+ name = "num-traits"
+ version = "0.2.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "0b3a5d7cc97d6d30d8b9bc8fa19bf45349ffe46241e8816f50f62f6d6aaabee1"
+
+ [[package]]
+ name = "num_cpus"
+ version = "1.10.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "1a23f0ed30a54abaa0c7e83b1d2d87ada7c3c23078d1d87815af3e3b6385fbba"
+ dependencies = [
+- "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc",
+ ]
+
++[[package]]
++name = "once_cell"
++version = "1.13.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "18a6dbe30758c9f83eb00cbea4ac95966305f5a7772f3f42ebfc7fc7eddbd8e1"
++
+ [[package]]
+ name = "opaque-debug"
+ version = "0.2.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "93f5bb2e8e8dec81642920ccff6b61f1eb94fa3020c5a325c9851ff604152409"
+
+ [[package]]
+ name = "openssl"
+-version = "0.10.19"
++version = "0.10.41"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "618febf65336490dfcf20b73f885f5651a0c89c64c2d4a8c3662585a70bf5bd0"
+ dependencies = [
+- "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
+- "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
+- "foreign-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)",
+- "openssl-sys 0.9.42 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bitflags",
++ "cfg-if 1.0.0",
++ "foreign-types",
++ "libc",
++ "once_cell",
++ "openssl-macros",
++ "openssl-sys",
++]
++
++[[package]]
++name = "openssl-macros"
++version = "0.1.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "b501e44f11665960c7e7fcf062c7d96a14ade4aa98116c004b2e37b5be7d736c"
++dependencies = [
++ "proc-macro2 1.0.43",
++ "quote 1.0.21",
++ "syn 1.0.99",
+ ]
+
+ [[package]]
+ name = "openssl-probe"
+ version = "0.1.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "77af24da69f9d9341038eba93a073b1fdaaa1b788221b00a69bce9e762cb32de"
+
+ [[package]]
+ name = "openssl-sys"
+-version = "0.9.42"
++version = "0.9.75"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e5f9bd0c2710541a3cda73d6f9ac4f1b240de4ae261065d309dbe73d9dceb42f"
+ dependencies = [
+- "cc 1.0.31 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)",
+- "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "autocfg 1.1.0",
++ "cc",
++ "libc",
++ "pkg-config",
++ "vcpkg",
+ ]
+
+ [[package]]
+ name = "owning_ref"
+ version = "0.4.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "49a4b8ea2179e6a2e27411d3bca09ca6dd630821cf6894c6c7c8467a8ee7ef13"
+ dependencies = [
+- "stable_deref_trait 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "stable_deref_trait",
+ ]
+
+ [[package]]
+ name = "parking_lot"
+ version = "0.7.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ab41b4aed082705d1056416ae4468b6ea99d52599ecf3169b00088d43113e337"
+ dependencies = [
+- "lock_api 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
+- "parking_lot_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "lock_api",
++ "parking_lot_core",
+ ]
+
+ [[package]]
+ name = "parking_lot_core"
+ version = "0.4.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "94c8c7923936b28d546dfd14d4472eaf34c99b14e1c973a32b3e6d4eb04298c9"
+ dependencies = [
+- "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc",
++ "rand 0.6.5",
++ "rustc_version",
++ "smallvec",
++ "winapi 0.3.6",
+ ]
+
+ [[package]]
+ name = "percent-encoding"
+ version = "1.0.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "31010dd2e1ac33d5b46a5b413495239882813e0369f8ed8a5e266f173602f831"
+
+ [[package]]
+ name = "phf"
+ version = "0.7.24"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "b3da44b85f8e8dfaec21adae67f95d93244b2ecf6ad2a692320598dcc8e6dd18"
+ dependencies = [
+- "phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)",
++ "phf_shared",
+ ]
+
+ [[package]]
+ name = "phf_codegen"
+ version = "0.7.24"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "b03e85129e324ad4166b06b2c7491ae27fe3ec353af72e72cd1654c7225d517e"
+ dependencies = [
+- "phf_generator 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)",
+- "phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)",
++ "phf_generator",
++ "phf_shared",
+ ]
+
+ [[package]]
+ name = "phf_generator"
+ version = "0.7.24"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "09364cc93c159b8b06b1f4dd8a4398984503483891b0c26b867cf431fb132662"
+ dependencies = [
+- "phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "phf_shared",
++ "rand 0.6.5",
+ ]
+
+ [[package]]
+ name = "phf_shared"
+ version = "0.7.24"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "234f71a15de2288bcb7e3b6515828d22af7ec8598ee6d24c3b526fa0a80b67a0"
+ dependencies = [
+- "siphasher 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "unicase 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "siphasher",
++ "unicase 1.4.2",
+ ]
+
+ [[package]]
+ name = "pkg-config"
+ version = "0.3.14"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "676e8eb2b1b4c9043511a9b7bea0915320d7e502b0a079fb03f9635a5252b18c"
+
+ [[package]]
+ name = "prettytable-rs"
+ version = "0.7.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "5511ca4c805aa35f0abff6be7923231d664408b60c09f44ef715f2bce106cd9e"
+ dependencies = [
+- "atty 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
+- "csv 0.15.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "encode_unicode 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
+- "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "term 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "unicode-width 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "atty",
++ "csv",
++ "encode_unicode",
++ "lazy_static",
++ "term",
++ "unicode-width",
+ ]
+
+ [[package]]
+ name = "proc-macro2"
+ version = "0.4.27"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "4d317f9caece796be1980837fd5cb3dfec5613ebdb04ad0956deea83ce168915"
+ dependencies = [
+- "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "unicode-xid",
++]
++
++[[package]]
++name = "proc-macro2"
++version = "1.0.43"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "0a2ca2c61bc9f3d74d2886294ab7b9853abd9c1ad903a3ac7815c58989bb7bab"
++dependencies = [
++ "unicode-ident",
+ ]
+
+ [[package]]
+ name = "quick-error"
+ version = "1.2.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "9274b940887ce9addde99c4eee6b5c44cc494b182b97e73dc8ffdcb3397fd3f0"
+
+ [[package]]
+ name = "quote"
+ version = "0.6.11"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "cdd8e04bd9c52e0342b406469d494fcb033be4bdbe5c606016defbb1681411e1"
+ dependencies = [
+- "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)",
++ "proc-macro2 0.4.27",
++]
++
++[[package]]
++name = "quote"
++version = "1.0.21"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "bbe448f377a7d6961e30f5955f9b8d106c3f5e449d493ee1b125c1d43c2b5179"
++dependencies = [
++ "proc-macro2 1.0.43",
+ ]
+
+ [[package]]
+ name = "rand"
+ version = "0.5.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "c618c47cd3ebd209790115ab837de41425723956ad3ce2e6a7f09890947cacb9"
+ dependencies = [
+- "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cloudabi",
++ "fuchsia-cprng",
++ "libc",
++ "rand_core 0.3.1",
++ "winapi 0.3.6",
+ ]
+
+ [[package]]
+ name = "rand"
+ version = "0.6.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6d71dacdc3c88c1fde3885a3be3fbab9f35724e6ce99467f7d9c5026132184ca"
+ dependencies = [
+- "autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rand_hc 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rand_isaac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rand_jitter 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rand_os 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rand_pcg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rand_xorshift 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "autocfg 0.1.2",
++ "libc",
++ "rand_chacha",
++ "rand_core 0.4.0",
++ "rand_hc",
++ "rand_isaac",
++ "rand_jitter",
++ "rand_os",
++ "rand_pcg",
++ "rand_xorshift",
++ "winapi 0.3.6",
+ ]
+
+ [[package]]
+ name = "rand_chacha"
+ version = "0.1.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "556d3a1ca6600bfcbab7c7c91ccb085ac7fbbcd70e008a98742e7847f4f7bcef"
+ dependencies = [
+- "autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "autocfg 0.1.2",
++ "rand_core 0.3.1",
+ ]
+
+ [[package]]
+ name = "rand_core"
+ version = "0.3.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b"
+ dependencies = [
+- "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rand_core 0.4.0",
+ ]
+
+ [[package]]
+ name = "rand_core"
+ version = "0.4.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "d0e7a549d590831370895ab7ba4ea0c1b6b011d106b5ff2da6eee112615e6dc0"
+
+ [[package]]
+ name = "rand_hc"
+ version = "0.1.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7b40677c7be09ae76218dc623efbf7b18e34bced3f38883af07bb75630a21bc4"
+ dependencies = [
+- "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rand_core 0.3.1",
+ ]
+
+ [[package]]
+ name = "rand_isaac"
+ version = "0.1.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ded997c9d5f13925be2a6fd7e66bf1872597f759fd9dd93513dd7e92e5a5ee08"
+ dependencies = [
+- "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rand_core 0.3.1",
+ ]
+
+ [[package]]
+ name = "rand_jitter"
+ version = "0.1.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7b9ea758282efe12823e0d952ddb269d2e1897227e464919a554f2a03ef1b832"
+ dependencies = [
+- "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc",
++ "rand_core 0.4.0",
++ "winapi 0.3.6",
+ ]
+
+ [[package]]
+ name = "rand_os"
+ version = "0.1.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7b75f676a1e053fc562eafbb47838d67c84801e38fc1ba459e8f180deabd5071"
+ dependencies = [
+- "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cloudabi",
++ "fuchsia-cprng",
++ "libc",
++ "rand_core 0.4.0",
++ "rdrand",
++ "winapi 0.3.6",
+ ]
+
+ [[package]]
+ name = "rand_pcg"
+ version = "0.1.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "abf9b09b01790cfe0364f52bf32995ea3c39f4d2dd011eac241d2914146d0b44"
+ dependencies = [
+- "autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "autocfg 0.1.2",
++ "rand_core 0.4.0",
+ ]
+
+ [[package]]
+ name = "rand_xorshift"
+ version = "0.1.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "cbf7e9e623549b0e21f6e97cf8ecf247c1a8fd2e8a992ae265314300b2455d5c"
+ dependencies = [
+- "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rand_core 0.3.1",
+ ]
+
+ [[package]]
+ name = "rdrand"
+ version = "0.4.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2"
+ dependencies = [
+- "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rand_core 0.3.1",
+ ]
+
+ [[package]]
+ name = "redox_syscall"
+ version = "0.1.51"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "423e376fffca3dfa06c9e9790a9ccd282fafb3cc6e6397d01dbf64f9bacc6b85"
+
+ [[package]]
+ name = "redox_termios"
+ version = "0.1.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7e891cfe48e9100a70a3b6eb652fef28920c117d366339687bd5576160db0f76"
+ dependencies = [
+- "redox_syscall 0.1.51 (registry+https://github.com/rust-lang/crates.io-index)",
++ "redox_syscall",
+ ]
+
+ [[package]]
+ name = "regex"
+ version = "1.1.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "53ee8cfdddb2e0291adfb9f13d31d3bbe0a03c9a402c01b1e24188d86c35b24f"
+ dependencies = [
+- "aho-corasick 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "regex-syntax 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
+- "thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "utf8-ranges 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "aho-corasick",
++ "memchr 2.2.0",
++ "regex-syntax",
++ "thread_local",
++ "utf8-ranges",
+ ]
+
+ [[package]]
+ name = "regex-syntax"
+ version = "0.6.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "8c2f35eedad5295fdf00a63d7d4b238135723f92b434ec06774dad15c7ab0861"
+ dependencies = [
+- "ucd-util 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
++ "ucd-util",
+ ]
+
+ [[package]]
+ name = "remove_dir_all"
+ version = "0.5.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "3488ba1b9a2084d38645c4c08276a1752dcbf2c7130d74f1569681ad5d2799c5"
+ dependencies = [
+- "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "winapi 0.3.6",
+ ]
+
+ [[package]]
+ name = "reqwest"
+ version = "0.9.11"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e542d9f077c126af32536b6aacc75bb7325400eab8cd0743543be5d91660780d"
+ dependencies = [
+- "base64 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)",
+- "encoding_rs 0.8.17 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+- "http 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
+- "hyper 0.12.25 (registry+https://github.com/rust-lang/crates.io-index)",
+- "hyper-tls 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libflate 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "mime 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
+- "mime_guess 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "native-tls 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde_json 1.0.39 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde_urlencoded 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-threadpool 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "uuid 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "base64 0.10.1",
++ "bytes",
++ "encoding_rs",
++ "futures",
++ "http",
++ "hyper",
++ "hyper-tls",
++ "libflate",
++ "log",
++ "mime",
++ "mime_guess",
++ "native-tls",
++ "serde",
++ "serde_json",
++ "serde_urlencoded",
++ "tokio",
++ "tokio-executor",
++ "tokio-io",
++ "tokio-threadpool",
++ "tokio-timer",
++ "url",
++ "uuid",
+ ]
+
+ [[package]]
+ name = "resolv-conf"
+ version = "0.6.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "b263b4aa1b5de9ffc0054a2386f96992058bb6870aab516f8cdeb8a667d56dcb"
+ dependencies = [
+- "quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "quick-error",
+ ]
+
+ [[package]]
+ name = "rustc-serialize"
+ version = "0.3.24"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "dcf128d1287d2ea9d80910b5f1120d0b8eede3fbf1abe91c40d39ea7d51e6fda"
+
+ [[package]]
+ name = "rustc_version"
+ version = "0.2.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a"
+ dependencies = [
+- "semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "semver",
+ ]
+
+ [[package]]
+ name = "ryu"
+ version = "0.2.7"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "eb9e9b8cde282a9fe6a42dd4681319bfb63f121b8a8ee9439c6f4107e58a46f7"
+
+ [[package]]
+ name = "safemem"
+ version = "0.3.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "8dca453248a96cb0749e36ccdfe2b0b4e54a61bfef89fb97ec621eb8e0a93dd9"
+
+ [[package]]
+ name = "schannel"
+ version = "0.1.15"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f2f6abf258d99c3c1c5c2131d99d064e94b7b3dd5f416483057f308fea253339"
+ dependencies = [
+- "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "lazy_static",
++ "winapi 0.3.6",
+ ]
+
+ [[package]]
+ name = "scopeguard"
+ version = "0.3.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "94258f53601af11e6a49f722422f6e3425c52b06245a5cf9bc09908b174f5e27"
+
+ [[package]]
+ name = "security-framework"
+ version = "0.2.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "bfab8dda0e7a327c696d893df9ffa19cadc4bd195797997f5223cf5831beaf05"
+ dependencies = [
+- "core-foundation 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "core-foundation-sys 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)",
+- "security-framework-sys 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
++ "core-foundation",
++ "core-foundation-sys",
++ "libc",
++ "security-framework-sys",
+ ]
+
+ [[package]]
+ name = "security-framework-sys"
+ version = "0.2.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "3d6696852716b589dff9e886ff83778bb635150168e83afa8ac6b8a78cb82abc"
+ dependencies = [
+- "MacTypes-sys 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "core-foundation-sys 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)",
++ "MacTypes-sys",
++ "core-foundation-sys",
++ "libc",
+ ]
+
+ [[package]]
+ name = "semver"
+ version = "0.9.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403"
+ dependencies = [
+- "semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "semver-parser",
+ ]
+
+ [[package]]
+ name = "semver-parser"
+ version = "0.7.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3"
+
+ [[package]]
+ name = "serde"
+ version = "1.0.89"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "92514fb95f900c9b5126e32d020f5c6d40564c27a5ea6d1d7d9f157a96623560"
+
+ [[package]]
+ name = "serde_derive"
+ version = "1.0.89"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "bb6eabf4b5914e88e24eea240bb7c9f9a2cbc1bbbe8d961d381975ec3c6b806c"
+ dependencies = [
+- "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)",
+- "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)",
+- "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)",
++ "proc-macro2 0.4.27",
++ "quote 0.6.11",
++ "syn 0.15.29",
+ ]
+
+ [[package]]
+ name = "serde_json"
+ version = "1.0.39"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "5a23aa71d4a4d43fdbfaac00eff68ba8a06a51759a89ac3304323e800c4dd40d"
+ dependencies = [
+- "itoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "ryu 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)",
++ "itoa",
++ "ryu",
++ "serde",
+ ]
+
+ [[package]]
+ name = "serde_urlencoded"
+ version = "0.5.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "d48f9f99cd749a2de71d29da5f948de7f2764cc5a9d7f3c97e3514d4ee6eabf2"
+ dependencies = [
+- "dtoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "itoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)",
+- "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "dtoa",
++ "itoa",
++ "serde",
++ "url",
+ ]
+
+ [[package]]
+ name = "sha-1"
+ version = "0.8.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "23962131a91661d643c98940b20fcaffe62d776a823247be80a48fcb8b6fce68"
+ dependencies = [
+- "block-buffer 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "digest 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "fake-simd 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "opaque-debug 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "block-buffer",
++ "digest",
++ "fake-simd",
++ "opaque-debug",
+ ]
+
+ [[package]]
+ name = "shellexpand"
+ version = "1.0.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "de7a5b5a9142fd278a10e0209b021a1b85849352e6951f4f914735c976737564"
+
+ [[package]]
+ name = "siphasher"
+ version = "0.2.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "0b8de496cf83d4ed58b6be86c3a275b8602f6ffe98d3024a869e124147a9a3ac"
+
+ [[package]]
+ name = "slab"
+ version = "0.4.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "c111b5bd5695e56cffe5129854aa230b39c93a305372fdbb2668ca2394eea9f8"
+
+ [[package]]
+ name = "smallvec"
+ version = "0.6.9"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "c4488ae950c49d403731982257768f48fada354a5203fe81f9bb6f43ca9002be"
+
+ [[package]]
+ name = "stable_deref_trait"
+ version = "1.1.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "dba1a27d3efae4351c8051072d619e3ade2820635c3958d826bfea39d59b54c8"
+
+ [[package]]
+ name = "string"
+ version = "0.1.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "b639411d0b9c738748b5397d5ceba08e648f4f1992231aa859af1a017f31f60b"
+
+ [[package]]
+ name = "strsim"
+ version = "0.7.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "bb4f380125926a99e52bc279241539c018323fab05ad6368b56f93d9369ff550"
+
+ [[package]]
+ name = "sycli"
+ version = "0.1.0"
+ dependencies = [
+- "base64 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "clap 2.32.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "error-chain 0.12.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "openssl 0.10.19 (registry+https://github.com/rust-lang/crates.io-index)",
+- "prettytable-rs 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "reqwest 0.9.11 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde_json 1.0.39 (registry+https://github.com/rust-lang/crates.io-index)",
+- "shellexpand 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "synapse-bencode 0.1.0",
+- "synapse-rpc 0.1.21",
+- "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tungstenite 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "base64 0.9.3",
++ "clap",
++ "error-chain",
++ "openssl",
++ "prettytable-rs",
++ "reqwest",
++ "serde",
++ "serde_derive",
++ "serde_json",
++ "shellexpand",
++ "synapse-bencode",
++ "synapse-rpc",
++ "toml",
++ "tungstenite",
++ "url",
+ ]
+
+ [[package]]
+ name = "syn"
+ version = "0.15.29"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "1825685f977249735d510a242a6727b46efe914bb67e38d30c071b1b72b1d5c2"
+ dependencies = [
+- "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)",
+- "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)",
+- "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "proc-macro2 0.4.27",
++ "quote 0.6.11",
++ "unicode-xid",
++]
++
++[[package]]
++name = "syn"
++version = "1.0.99"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "58dbef6ec655055e20b86b15a8cc6d439cca19b667537ac6a1369572d151ab13"
++dependencies = [
++ "proc-macro2 1.0.43",
++ "quote 1.0.21",
++ "unicode-ident",
+ ]
+
+ [[package]]
+@@ -1258,630 +1468,487 @@ version = "0.1.0"
+ name = "synapse-bt"
+ version = "0.1.0"
+ dependencies = [
+- "adns 0.1.0",
+- "amy 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "base32 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "base64 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "bincode 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "cc 1.0.31 (registry+https://github.com/rust-lang/crates.io-index)",
+- "chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "clippy 0.0.302 (registry+https://github.com/rust-lang/crates.io-index)",
+- "error-chain 0.12.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "fs_extra 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "getopts 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)",
+- "http-range 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "httparse 1.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)",
+- "memmap 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "metrohash 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)",
+- "nix 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "num-bigint 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "openssl 0.10.19 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rand 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde_json 1.0.39 (registry+https://github.com/rust-lang/crates.io-index)",
+- "shellexpand 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "synapse-bencode 0.1.0",
+- "synapse-rpc 0.1.21",
+- "synapse-session 0.1.0",
+- "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "vecio 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "adns",
++ "amy",
++ "base32",
++ "base64 0.9.3",
++ "bincode",
++ "byteorder",
++ "cc",
++ "chrono",
++ "clippy",
++ "error-chain",
++ "fnv",
++ "fs_extra",
++ "getopts",
++ "http-range",
++ "httparse",
++ "lazy_static",
++ "libc",
++ "memmap",
++ "metrohash",
++ "net2",
++ "nix 0.11.0",
++ "num-bigint",
++ "openssl",
++ "rand 0.5.6",
++ "serde",
++ "serde_derive",
++ "serde_json",
++ "shellexpand",
++ "synapse-bencode",
++ "synapse-rpc",
++ "synapse-session",
++ "toml",
++ "url",
++ "vecio",
+ ]
+
+ [[package]]
+ name = "synapse-rpc"
+ version = "0.1.21"
+ dependencies = [
+- "chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "regex 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde_json 1.0.39 (registry+https://github.com/rust-lang/crates.io-index)",
+- "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "url_serde 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "chrono",
++ "regex",
++ "serde",
++ "serde_derive",
++ "serde_json",
++ "url",
++ "url_serde",
+ ]
+
+ [[package]]
+ name = "synapse-session"
+ version = "0.1.0"
+ dependencies = [
+- "bincode 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)",
+- "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bincode",
++ "chrono",
++ "serde",
++ "serde_derive",
+ ]
+
+ [[package]]
+ name = "tempfile"
+ version = "3.0.7"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "b86c784c88d98c801132806dadd3819ed29d8600836c4088e855cdf3e178ed8a"
+ dependencies = [
+- "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
+- "redox_syscall 0.1.51 (registry+https://github.com/rust-lang/crates.io-index)",
+- "remove_dir_all 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cfg-if 0.1.7",
++ "libc",
++ "rand 0.6.5",
++ "redox_syscall",
++ "remove_dir_all",
++ "winapi 0.3.6",
+ ]
+
+ [[package]]
+ name = "term"
+ version = "0.5.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "5e6b677dd1e8214ea1ef4297f85dbcbed8e8cdddb561040cc998ca2551c37561"
+ dependencies = [
+- "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "byteorder",
++ "winapi 0.3.6",
+ ]
+
+ [[package]]
+ name = "termion"
+ version = "1.5.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "689a3bdfaab439fd92bc87df5c4c78417d3cbe537487274e9b0b2dce76e92096"
+ dependencies = [
+- "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)",
+- "redox_syscall 0.1.51 (registry+https://github.com/rust-lang/crates.io-index)",
+- "redox_termios 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc",
++ "redox_syscall",
++ "redox_termios",
+ ]
+
+ [[package]]
+ name = "textwrap"
+ version = "0.10.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "307686869c93e71f94da64286f9a9524c0f308a9e1c87a583de8e9c9039ad3f6"
+ dependencies = [
+- "unicode-width 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "unicode-width",
+ ]
+
+ [[package]]
+ name = "thread_local"
+ version = "0.3.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "c6b53e329000edc2b34dbe8545fd20e55a333362d0a321909685a19bd28c3f1b"
+ dependencies = [
+- "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "lazy_static",
+ ]
+
+ [[package]]
+ name = "time"
+ version = "0.1.42"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "db8dcfca086c1143c9270ac42a2bbd8a7ee477b78ac8e45b19abfb0cbede4b6f"
+ dependencies = [
+- "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)",
+- "redox_syscall 0.1.51 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc",
++ "redox_syscall",
++ "winapi 0.3.6",
+ ]
+
+ [[package]]
+ name = "tokio"
+ version = "0.1.17"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "1021bb1f4150435ab8f222eb7ed37c60b2d57037def63ba43085a79f387512d7"
+ dependencies = [
+- "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+- "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)",
+- "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-current-thread 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-threadpool 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-trace-core 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bytes",
++ "futures",
++ "mio",
++ "num_cpus",
++ "tokio-current-thread",
++ "tokio-executor",
++ "tokio-io",
++ "tokio-reactor",
++ "tokio-threadpool",
++ "tokio-timer",
++ "tokio-trace-core",
+ ]
+
+ [[package]]
+ name = "tokio-current-thread"
+ version = "0.1.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "c756b04680eea21902a46fca4e9f410a2332c04995af590e07ff262e2193a9a3"
+ dependencies = [
+- "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "futures",
++ "tokio-executor",
+ ]
+
+ [[package]]
+ name = "tokio-executor"
+ version = "0.1.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "30c6dbf2d1ad1de300b393910e8a3aa272b724a400b6531da03eed99e329fbf0"
+ dependencies = [
+- "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
++ "crossbeam-utils",
++ "futures",
+ ]
+
+ [[package]]
+ name = "tokio-io"
+ version = "0.1.12"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "5090db468dad16e1a7a54c8c67280c5e4b544f3d3e018f0b913b400261f85926"
+ dependencies = [
+- "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bytes",
++ "futures",
++ "log",
+ ]
+
+ [[package]]
+ name = "tokio-reactor"
+ version = "0.1.9"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6af16bfac7e112bea8b0442542161bfc41cbfa4466b580bdda7d18cb88b911ce"
+ dependencies = [
+- "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+- "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)",
+- "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-sync 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
++ "crossbeam-utils",
++ "futures",
++ "lazy_static",
++ "log",
++ "mio",
++ "num_cpus",
++ "parking_lot",
++ "slab",
++ "tokio-executor",
++ "tokio-io",
++ "tokio-sync",
+ ]
+
+ [[package]]
+ name = "tokio-sync"
+ version = "0.1.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "fda385df506bf7546e70872767f71e81640f1f251bdf2fd8eb81a0eaec5fe022"
+ dependencies = [
+- "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
++ "fnv",
++ "futures",
+ ]
+
+ [[package]]
+ name = "tokio-tcp"
+ version = "0.1.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "1d14b10654be682ac43efee27401d792507e30fd8d26389e1da3b185de2e4119"
+ dependencies = [
+- "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+- "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bytes",
++ "futures",
++ "iovec",
++ "mio",
++ "tokio-io",
++ "tokio-reactor",
+ ]
+
+ [[package]]
+ name = "tokio-threadpool"
+ version = "0.1.12"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "742e511f6ce2298aeb86fc9ea0d8df81c2388c6ebae3dc8a7316e8c9df0df801"
+ dependencies = [
+- "crossbeam-deque 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "crossbeam-queue 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
+- "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "crossbeam-deque",
++ "crossbeam-queue",
++ "crossbeam-utils",
++ "futures",
++ "log",
++ "num_cpus",
++ "rand 0.6.5",
++ "slab",
++ "tokio-executor",
+ ]
+
+ [[package]]
+ name = "tokio-timer"
+ version = "0.2.10"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "2910970404ba6fa78c5539126a9ae2045d62e3713041e447f695f41405a120c6"
+ dependencies = [
+- "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
+- "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+- "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "crossbeam-utils",
++ "futures",
++ "slab",
++ "tokio-executor",
+ ]
+
+ [[package]]
+ name = "tokio-trace-core"
+ version = "0.1.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "350c9edade9830dc185ae48ba45667a445ab59f6167ef6d0254ec9d2430d9dd3"
+ dependencies = [
+- "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "lazy_static",
+ ]
+
+ [[package]]
+ name = "toml"
+ version = "0.4.10"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "758664fc71a3a69038656bee8b6be6477d2a6c315a6b81f7081f591bffa4111f"
+ dependencies = [
+- "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)",
++ "serde",
+ ]
+
+ [[package]]
+ name = "try-lock"
+ version = "0.2.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e604eb7b43c06650e854be16a2a03155743d3752dd1c943f6829e26b7a36e382"
+
+ [[package]]
+ name = "tungstenite"
+ version = "0.6.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e9573852f935883137b7f0824832493ce7418bf290c8cf164b7aafc9b0a99aa0"
+ dependencies = [
+- "base64 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)",
+- "httparse 1.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "input_buffer 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "native-tls 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "rand 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "sha-1 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "utf-8 0.7.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "base64 0.10.1",
++ "byteorder",
++ "bytes",
++ "httparse",
++ "input_buffer",
++ "log",
++ "native-tls",
++ "rand 0.5.6",
++ "sha-1",
++ "url",
++ "utf-8",
+ ]
+
+ [[package]]
+ name = "typenum"
+ version = "1.10.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "612d636f949607bdf9b123b4a6f6d966dedf3ff669f7f045890d3a4a73948169"
+
+ [[package]]
+ name = "ucd-util"
+ version = "0.1.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "535c204ee4d8434478593480b8f86ab45ec9aae0e83c568ca81abf0fd0e88f86"
+
+ [[package]]
+ name = "unicase"
+ version = "1.4.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7f4765f83163b74f957c797ad9253caf97f103fb064d3999aea9568d09fc8a33"
+ dependencies = [
+- "version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "version_check",
+ ]
+
+ [[package]]
+ name = "unicase"
+ version = "2.3.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "41d17211f887da8e4a70a45b9536f26fc5de166b81e2d5d80de4a17fd22553bd"
+ dependencies = [
+- "version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "version_check",
+ ]
+
+ [[package]]
+ name = "unicode-bidi"
+ version = "0.3.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5"
+ dependencies = [
+- "matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
++ "matches",
+ ]
+
++[[package]]
++name = "unicode-ident"
++version = "1.0.3"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "c4f5b37a154999a8f3f98cc23a628d850e154479cd94decf3414696e12e31aaf"
++
+ [[package]]
+ name = "unicode-normalization"
+ version = "0.1.8"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "141339a08b982d942be2ca06ff8b076563cbe223d1befd5450716790d44e2426"
+ dependencies = [
+- "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)",
++ "smallvec",
+ ]
+
+ [[package]]
+ name = "unicode-width"
+ version = "0.1.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "882386231c45df4700b275c7ff55b6f3698780a650026380e72dabe76fa46526"
+
+ [[package]]
+ name = "unicode-xid"
+ version = "0.1.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc"
+
+ [[package]]
+ name = "url"
+ version = "1.7.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "dd4e7c0d531266369519a4aa4f399d748bd37043b00bde1e4ff1f60a120b355a"
+ dependencies = [
+- "idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
+- "matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "idna",
++ "matches",
++ "percent-encoding",
+ ]
+
+ [[package]]
+ name = "url_serde"
+ version = "0.2.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "74e7d099f1ee52f823d4bdd60c93c3602043c728f5db3b97bdb548467f7bddea"
+ dependencies = [
+- "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)",
+- "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "serde",
++ "url",
+ ]
+
+ [[package]]
+ name = "utf-8"
+ version = "0.7.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "05e42f7c18b8f902290b009cde6d651262f956c98bc51bca4cd1d511c9cd85c7"
+
+ [[package]]
+ name = "utf8-ranges"
+ version = "1.0.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "796f7e48bef87609f7ade7e06495a87d5cd06c7866e6a5cbfceffc558a243737"
+
+ [[package]]
+ name = "uuid"
+ version = "0.7.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "0238db0c5b605dd1cf51de0f21766f97fba2645897024461d6a00c036819a768"
+ dependencies = [
+- "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rand 0.6.5",
+ ]
+
+ [[package]]
+ name = "vcpkg"
+-version = "0.2.6"
++version = "0.2.15"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426"
+
+ [[package]]
+ name = "vec_map"
+ version = "0.8.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "05c78687fb1a80548ae3250346c3db86a80a7cdd77bda190189f2d0a0987c81a"
+
+ [[package]]
+ name = "vecio"
+ version = "0.1.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "0795a11576d29ae80525a3fda315bf7b534f8feb9d34101e5fe63fb95bb2fd24"
+ dependencies = [
+- "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "ws2_32-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "winapi 0.2.8",
++ "ws2_32-sys",
+ ]
+
+ [[package]]
+ name = "version_check"
+ version = "0.1.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "914b1a6776c4c929a602fafd8bc742e06365d4bcbe48c30f9cca5824f70dc9dd"
+
+ [[package]]
+ name = "void"
+ version = "1.0.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d"
+
+ [[package]]
+ name = "want"
+ version = "0.0.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "797464475f30ddb8830cc529aaaae648d581f99e2036a928877dfde027ddf6b3"
+ dependencies = [
+- "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+- "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
+- "try-lock 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "futures",
++ "log",
++ "try-lock",
+ ]
+
+ [[package]]
+ name = "winapi"
+ version = "0.2.8"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a"
+
+ [[package]]
+ name = "winapi"
+ version = "0.3.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "92c1eb33641e276cfa214a0522acad57be5c56b10cb348b3c5117db75f3ac4b0"
+ dependencies = [
+- "winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "winapi-i686-pc-windows-gnu",
++ "winapi-x86_64-pc-windows-gnu",
+ ]
+
+ [[package]]
+ name = "winapi-build"
+ version = "0.1.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc"
+
+ [[package]]
+ name = "winapi-i686-pc-windows-gnu"
+ version = "0.4.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
+
+ [[package]]
+ name = "winapi-x86_64-pc-windows-gnu"
+ version = "0.4.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
+
+ [[package]]
+ name = "ws2_32-sys"
+ version = "0.2.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "d59cefebd0c892fa2dd6de581e937301d8552cb44489cdff035c6187cb63fa5e"
+ dependencies = [
+- "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
+- "winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "winapi 0.2.8",
++ "winapi-build",
+ ]
+-
+-[metadata]
+-"checksum MacTypes-sys 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "eaf9f0d0b1cc33a4d2aee14fb4b2eac03462ef4db29c8ac4057327d8a71ad86f"
+-"checksum adler32 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "7e522997b529f05601e05166c07ed17789691f562762c7f3b987263d2dedee5c"
+-"checksum aho-corasick 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)" = "81ce3d38065e618af2d7b77e10c5ad9a069859b4be3c2250f674af3840d9c8a5"
+-"checksum amy 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "189ef3bf7b79ba326fbb69ff2d29a78a8b9f087a5b6047b5aebc7bc4bad4b2aa"
+-"checksum ansi_term 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b"
+-"checksum arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "92c7fb76bc8826a8b33b4ee5bb07a247a81e76764ab4d55e8f73e3a4d8808c71"
+-"checksum atty 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "9a7d5b8723950951411ee34d271d99dddcc2035a16ab25310ea2c8cfd4369652"
+-"checksum autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a6d640bee2da49f60a4068a7fae53acde8982514ab7bae8b8cea9e88cbcfd799"
+-"checksum base32 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "1b9605ba46d61df0410d8ac686b0007add8172eba90e8e909c347856fe794d8c"
+-"checksum base64 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0b25d992356d2eb0ed82172f5248873db5560c4721f564b13cb5193bda5e668e"
+-"checksum base64 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)" = "489d6c0ed21b11d038c31b6ceccca973e65d73ba3bd8ecb9a2babf5546164643"
+-"checksum bincode 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "3efe0b4c8eaeed8600549c29f538a6a11bf422858d0ed435b1d70ec4ab101190"
+-"checksum bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "228047a76f468627ca71776ecdebd732a3423081fcf5125585bcd7c49886ce12"
+-"checksum block-buffer 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "49665c62e0e700857531fa5d3763e91b539ff1abeebd56808d378b495870d60d"
+-"checksum block-padding 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "d75255892aeb580d3c566f213a2b6fdc1c66667839f45719ee1d30ebf2aea591"
+-"checksum byte-tools 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7"
+-"checksum byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a019b10a2a7cdeb292db131fc8113e57ea2a908f6e7894b0c3c671893b65dbeb"
+-"checksum bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)" = "206fdffcfa2df7cbe15601ef46c813fce0965eb3286db6b56c583b814b51c81c"
+-"checksum cc 1.0.31 (registry+https://github.com/rust-lang/crates.io-index)" = "c9ce8bb087aacff865633f0bd5aeaed910fe2fe55b55f4739527f2e023a2e53d"
+-"checksum cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "11d43355396e872eefb45ce6342e4374ed7bc2b3a502d1b28e36d6e23c05d1f4"
+-"checksum chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "45912881121cb26fad7c38c17ba7daa18764771836b34fab7d3fbd93ed633878"
+-"checksum clap 2.32.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b957d88f4b6a63b9d70d5f454ac8011819c6efa7727858f458ab71c756ce2d3e"
+-"checksum clippy 0.0.302 (registry+https://github.com/rust-lang/crates.io-index)" = "d911ee15579a3f50880d8c1d59ef6e79f9533127a3bd342462f5d584f5e8c294"
+-"checksum cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f"
+-"checksum core-foundation 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "286e0b41c3a20da26536c6000a280585d519fd07b3956b43aed8a79e9edce980"
+-"checksum core-foundation-sys 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "716c271e8613ace48344f723b60b900a93150271e5be206212d052bbc0883efa"
+-"checksum crc32fast 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ba125de2af0df55319f41944744ad91c71113bf74a4646efff39afe1f6842db1"
+-"checksum crossbeam-deque 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b18cd2e169ad86297e6bc0ad9aa679aee9daa4f19e8163860faf7c164e4f5a71"
+-"checksum crossbeam-epoch 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "04c9e3102cc2d69cd681412141b390abd55a362afc1540965dad0ad4d34280b4"
+-"checksum crossbeam-queue 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7c979cd6cfe72335896575c6b5688da489e420d36a27a0b9eb0c73db574b4a4b"
+-"checksum crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)" = "f8306fcef4a7b563b76b7dd949ca48f52bc1141aa067d2ea09565f3e2652aa5c"
+-"checksum csv 0.15.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7ef22b37c7a51c564a365892c012dc0271221fdcc64c69b19ba4d6fa8bd96d9c"
+-"checksum digest 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "05f47366984d3ad862010e22c7ce81a7dbcaebbdfb37241a620f8b6596ee135c"
+-"checksum dns-parser 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f7020f6760aea312d43d23cb83bf6c0c49f162541db8b02bf95209ac51dc253d"
+-"checksum dtoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "6d301140eb411af13d3115f9a562c85cc6b541ade9dfa314132244aaee7489dd"
+-"checksum encode_unicode 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "90b2c9496c001e8cb61827acdefad780795c42264c137744cae6f7d9e3450abd"
+-"checksum encoding_rs 0.8.17 (registry+https://github.com/rust-lang/crates.io-index)" = "4155785c79f2f6701f185eb2e6b4caf0555ec03477cb4c70db67b465311620ed"
+-"checksum error-chain 0.12.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3ab49e9dcb602294bc42f9a7dfc9bc6e936fca4418ea300dbfb84fe16de0b7d9"
+-"checksum fake-simd 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e88a8acf291dafb59c2d96e8f59828f3838bb1a70398823ade51a84de6a6deed"
+-"checksum fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "2fad85553e09a6f881f739c29f0b00b0f01357c743266d478b68951ce23285f3"
+-"checksum foreign-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
+-"checksum foreign-types-shared 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
+-"checksum fs_extra 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5f2a4a2034423744d2cc7ca2068453168dcdb82c438419e639a26bd87839c674"
+-"checksum fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba"
+-"checksum fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82"
+-"checksum fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7"
+-"checksum futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)" = "49e7653e374fe0d0c12de4250f0bdb60680b8c80eed558c5c7538eec9c89e21b"
+-"checksum futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "ab90cde24b3319636588d0c35fe03b1333857621051837ed769faefb4c2162e4"
+-"checksum gcc 0.3.55 (registry+https://github.com/rust-lang/crates.io-index)" = "8f5f3913fa0bfe7ee1fd8248b6b9f42a5af4b9d65ec2dd2c3c26132b950ecfc2"
+-"checksum generic-array 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3c0f28c2f5bfb5960175af447a2da7c18900693738343dc896ffbcabd9839592"
+-"checksum getopts 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)" = "0a7292d30132fb5424b354f5dc02512a86e4c516fe544bb7a25e7f266951b797"
+-"checksum h2 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)" = "910a5e7be6283a9c91b3982fa5188368c8719cce2a3cf3b86048673bf9d9c36b"
+-"checksum http 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)" = "fe67e3678f2827030e89cc4b9e7ecd16d52f132c0b940ab5005f88e821500f6a"
+-"checksum http-range 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5f2e4003e6fd05ea9109db00415e670b11f511a42e567ff2d5d771cbdfa24e02"
+-"checksum httparse 1.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "e8734b0cfd3bc3e101ec59100e101c2eecd19282202e87808b3037b442777a83"
+-"checksum hyper 0.12.25 (registry+https://github.com/rust-lang/crates.io-index)" = "7d5b6658b016965ae301fa995306db965c93677880ea70765a84235a96eae896"
+-"checksum hyper-tls 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "32cd73f14ad370d3b4d4b7dce08f69b81536c82e39fcc89731930fe5788cd661"
+-"checksum idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "38f09e0f0b1fb55fdee1f17470ad800da77af5186a1a76c026b679358b7e844e"
+-"checksum indexmap 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7e81a7c05f79578dbc15793d8b619db9ba32b4577003ef3af1a91c416798c58d"
+-"checksum input_buffer 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8e1b822cc844905551931d6f81608ed5f50a79c1078a4e2b4d42dbc7c1eedfbf"
+-"checksum iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dbe6e417e7d0975db6512b90796e8ce223145ac4e33c377e4a42882a0e88bb08"
+-"checksum itoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "1306f3464951f30e30d12373d31c79fbd52d236e5e896fd92f96ec7babbbe60b"
+-"checksum kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d"
+-"checksum lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bc5729f27f159ddd61f4df6228e827e86643d4d3e7c32183cb30a1c08f604a14"
+-"checksum lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b294d6fa9ee409a054354afc4352b0b9ef7ca222c69b8812cbea9e7d2bf3783f"
+-"checksum libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)" = "aab692d7759f5cd8c859e169db98ae5b52c924add2af5fbbca11d12fefb567c1"
+-"checksum libflate 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)" = "7346a83e8a2c3958d44d24225d905385dc31fc16e89dffb356c457b278914d20"
+-"checksum lock_api 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "62ebf1391f6acad60e5c8b43706dde4582df75c06698ab44511d15016bc2442c"
+-"checksum log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c84ec4b527950aa83a329754b01dbe3f58361d1c5efacd1f6d68c494d08a17c6"
+-"checksum matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08"
+-"checksum memchr 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "148fab2e51b4f1cfc66da2a7c32981d1d3c083a803978268bb11fe4b86925e7a"
+-"checksum memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2efc7bc57c883d4a4d6e3246905283d8dae951bb3bd32f49d6ef297f546e1c39"
+-"checksum memmap 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e2ffa2c986de11a9df78620c01eeaaf27d94d3ff02bf81bfcca953102dd0c6ff"
+-"checksum memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0f9dc261e2b62d7a622bf416ea3c5245cdd5d9a7fcc428c0d06804dfce1775b3"
+-"checksum metrohash 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "3ba553cb19e2acbc54baa16faef215126243fe45e53357a3b2e9f4ebc7b0506c"
+-"checksum mime 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)" = "3e27ca21f40a310bd06d9031785f4801710d566c184a6e15bad4f1d9b65f9425"
+-"checksum mime_guess 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)" = "30de2e4613efcba1ec63d8133f344076952090c122992a903359be5a4f99c3ed"
+-"checksum mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)" = "71646331f2619b1026cc302f87a2b8b648d5c6dd6937846a16cc8ce0f347f432"
+-"checksum miow 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "8c1f2f3b1cf331de6896aabf6e9d55dca90356cc9960cca7eaaf408a355ae919"
+-"checksum native-tls 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "ff8e08de0070bbf4c31f452ea2a70db092f36f6f2e4d897adf5674477d488fb2"
+-"checksum net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)" = "42550d9fb7b6684a6d404d9fa7250c2eb2646df731d1c06afc06dcee9e1bcf88"
+-"checksum nix 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b7fd5681d13fda646462cfbd4e5f2051279a89a544d50eb98c365b507246839f"
+-"checksum nix 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d37e713a259ff641624b6cb20e3b12b2952313ba36b6823c0f16e6cfd9e5de17"
+-"checksum nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "2f9667ddcc6cc8a43afc9b7917599d7216aa09c463919ea32c59ed6cac8bc945"
+-"checksum num-bigint 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "57450397855d951f1a41305e54851b1a7b8f5d2e349543a02a2effe25459f718"
+-"checksum num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "e83d528d2677f0518c570baf2b7abdcf0cd2d248860b68507bdcb3e91d4c0cea"
+-"checksum num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "0b3a5d7cc97d6d30d8b9bc8fa19bf45349ffe46241e8816f50f62f6d6aaabee1"
+-"checksum num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1a23f0ed30a54abaa0c7e83b1d2d87ada7c3c23078d1d87815af3e3b6385fbba"
+-"checksum opaque-debug 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "93f5bb2e8e8dec81642920ccff6b61f1eb94fa3020c5a325c9851ff604152409"
+-"checksum openssl 0.10.19 (registry+https://github.com/rust-lang/crates.io-index)" = "84321fb9004c3bce5611188a644d6171f895fa2889d155927d528782edb21c5d"
+-"checksum openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "77af24da69f9d9341038eba93a073b1fdaaa1b788221b00a69bce9e762cb32de"
+-"checksum openssl-sys 0.9.42 (registry+https://github.com/rust-lang/crates.io-index)" = "cb534d752bf98cf363b473950659ac2546517f9c6be9723771614ab3f03bbc9e"
+-"checksum owning_ref 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "49a4b8ea2179e6a2e27411d3bca09ca6dd630821cf6894c6c7c8467a8ee7ef13"
+-"checksum parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ab41b4aed082705d1056416ae4468b6ea99d52599ecf3169b00088d43113e337"
+-"checksum parking_lot_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "94c8c7923936b28d546dfd14d4472eaf34c99b14e1c973a32b3e6d4eb04298c9"
+-"checksum percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "31010dd2e1ac33d5b46a5b413495239882813e0369f8ed8a5e266f173602f831"
+-"checksum phf 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)" = "b3da44b85f8e8dfaec21adae67f95d93244b2ecf6ad2a692320598dcc8e6dd18"
+-"checksum phf_codegen 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)" = "b03e85129e324ad4166b06b2c7491ae27fe3ec353af72e72cd1654c7225d517e"
+-"checksum phf_generator 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)" = "09364cc93c159b8b06b1f4dd8a4398984503483891b0c26b867cf431fb132662"
+-"checksum phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)" = "234f71a15de2288bcb7e3b6515828d22af7ec8598ee6d24c3b526fa0a80b67a0"
+-"checksum pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)" = "676e8eb2b1b4c9043511a9b7bea0915320d7e502b0a079fb03f9635a5252b18c"
+-"checksum prettytable-rs 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5511ca4c805aa35f0abff6be7923231d664408b60c09f44ef715f2bce106cd9e"
+-"checksum proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)" = "4d317f9caece796be1980837fd5cb3dfec5613ebdb04ad0956deea83ce168915"
+-"checksum quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9274b940887ce9addde99c4eee6b5c44cc494b182b97e73dc8ffdcb3397fd3f0"
+-"checksum quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)" = "cdd8e04bd9c52e0342b406469d494fcb033be4bdbe5c606016defbb1681411e1"
+-"checksum rand 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c618c47cd3ebd209790115ab837de41425723956ad3ce2e6a7f09890947cacb9"
+-"checksum rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)" = "6d71dacdc3c88c1fde3885a3be3fbab9f35724e6ce99467f7d9c5026132184ca"
+-"checksum rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "556d3a1ca6600bfcbab7c7c91ccb085ac7fbbcd70e008a98742e7847f4f7bcef"
+-"checksum rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b"
+-"checksum rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d0e7a549d590831370895ab7ba4ea0c1b6b011d106b5ff2da6eee112615e6dc0"
+-"checksum rand_hc 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7b40677c7be09ae76218dc623efbf7b18e34bced3f38883af07bb75630a21bc4"
+-"checksum rand_isaac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ded997c9d5f13925be2a6fd7e66bf1872597f759fd9dd93513dd7e92e5a5ee08"
+-"checksum rand_jitter 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "7b9ea758282efe12823e0d952ddb269d2e1897227e464919a554f2a03ef1b832"
+-"checksum rand_os 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "7b75f676a1e053fc562eafbb47838d67c84801e38fc1ba459e8f180deabd5071"
+-"checksum rand_pcg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "abf9b09b01790cfe0364f52bf32995ea3c39f4d2dd011eac241d2914146d0b44"
+-"checksum rand_xorshift 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cbf7e9e623549b0e21f6e97cf8ecf247c1a8fd2e8a992ae265314300b2455d5c"
+-"checksum rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2"
+-"checksum redox_syscall 0.1.51 (registry+https://github.com/rust-lang/crates.io-index)" = "423e376fffca3dfa06c9e9790a9ccd282fafb3cc6e6397d01dbf64f9bacc6b85"
+-"checksum redox_termios 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7e891cfe48e9100a70a3b6eb652fef28920c117d366339687bd5576160db0f76"
+-"checksum regex 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "53ee8cfdddb2e0291adfb9f13d31d3bbe0a03c9a402c01b1e24188d86c35b24f"
+-"checksum regex-syntax 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)" = "8c2f35eedad5295fdf00a63d7d4b238135723f92b434ec06774dad15c7ab0861"
+-"checksum remove_dir_all 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3488ba1b9a2084d38645c4c08276a1752dcbf2c7130d74f1569681ad5d2799c5"
+-"checksum reqwest 0.9.11 (registry+https://github.com/rust-lang/crates.io-index)" = "e542d9f077c126af32536b6aacc75bb7325400eab8cd0743543be5d91660780d"
+-"checksum resolv-conf 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b263b4aa1b5de9ffc0054a2386f96992058bb6870aab516f8cdeb8a667d56dcb"
+-"checksum rustc-serialize 0.3.24 (registry+https://github.com/rust-lang/crates.io-index)" = "dcf128d1287d2ea9d80910b5f1120d0b8eede3fbf1abe91c40d39ea7d51e6fda"
+-"checksum rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a"
+-"checksum ryu 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "eb9e9b8cde282a9fe6a42dd4681319bfb63f121b8a8ee9439c6f4107e58a46f7"
+-"checksum safemem 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8dca453248a96cb0749e36ccdfe2b0b4e54a61bfef89fb97ec621eb8e0a93dd9"
+-"checksum schannel 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)" = "f2f6abf258d99c3c1c5c2131d99d064e94b7b3dd5f416483057f308fea253339"
+-"checksum scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "94258f53601af11e6a49f722422f6e3425c52b06245a5cf9bc09908b174f5e27"
+-"checksum security-framework 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "bfab8dda0e7a327c696d893df9ffa19cadc4bd195797997f5223cf5831beaf05"
+-"checksum security-framework-sys 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3d6696852716b589dff9e886ff83778bb635150168e83afa8ac6b8a78cb82abc"
+-"checksum semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403"
+-"checksum semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3"
+-"checksum serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)" = "92514fb95f900c9b5126e32d020f5c6d40564c27a5ea6d1d7d9f157a96623560"
+-"checksum serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)" = "bb6eabf4b5914e88e24eea240bb7c9f9a2cbc1bbbe8d961d381975ec3c6b806c"
+-"checksum serde_json 1.0.39 (registry+https://github.com/rust-lang/crates.io-index)" = "5a23aa71d4a4d43fdbfaac00eff68ba8a06a51759a89ac3304323e800c4dd40d"
+-"checksum serde_urlencoded 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)" = "d48f9f99cd749a2de71d29da5f948de7f2764cc5a9d7f3c97e3514d4ee6eabf2"
+-"checksum sha-1 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "23962131a91661d643c98940b20fcaffe62d776a823247be80a48fcb8b6fce68"
+-"checksum shellexpand 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "de7a5b5a9142fd278a10e0209b021a1b85849352e6951f4f914735c976737564"
+-"checksum siphasher 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "0b8de496cf83d4ed58b6be86c3a275b8602f6ffe98d3024a869e124147a9a3ac"
+-"checksum slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c111b5bd5695e56cffe5129854aa230b39c93a305372fdbb2668ca2394eea9f8"
+-"checksum smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)" = "c4488ae950c49d403731982257768f48fada354a5203fe81f9bb6f43ca9002be"
+-"checksum stable_deref_trait 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "dba1a27d3efae4351c8051072d619e3ade2820635c3958d826bfea39d59b54c8"
+-"checksum string 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "b639411d0b9c738748b5397d5ceba08e648f4f1992231aa859af1a017f31f60b"
+-"checksum strsim 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bb4f380125926a99e52bc279241539c018323fab05ad6368b56f93d9369ff550"
+-"checksum syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)" = "1825685f977249735d510a242a6727b46efe914bb67e38d30c071b1b72b1d5c2"
+-"checksum tempfile 3.0.7 (registry+https://github.com/rust-lang/crates.io-index)" = "b86c784c88d98c801132806dadd3819ed29d8600836c4088e855cdf3e178ed8a"
+-"checksum term 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5e6b677dd1e8214ea1ef4297f85dbcbed8e8cdddb561040cc998ca2551c37561"
+-"checksum termion 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "689a3bdfaab439fd92bc87df5c4c78417d3cbe537487274e9b0b2dce76e92096"
+-"checksum textwrap 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "307686869c93e71f94da64286f9a9524c0f308a9e1c87a583de8e9c9039ad3f6"
+-"checksum thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c6b53e329000edc2b34dbe8545fd20e55a333362d0a321909685a19bd28c3f1b"
+-"checksum time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)" = "db8dcfca086c1143c9270ac42a2bbd8a7ee477b78ac8e45b19abfb0cbede4b6f"
+-"checksum tokio 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)" = "1021bb1f4150435ab8f222eb7ed37c60b2d57037def63ba43085a79f387512d7"
+-"checksum tokio-current-thread 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "c756b04680eea21902a46fca4e9f410a2332c04995af590e07ff262e2193a9a3"
+-"checksum tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "30c6dbf2d1ad1de300b393910e8a3aa272b724a400b6531da03eed99e329fbf0"
+-"checksum tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)" = "5090db468dad16e1a7a54c8c67280c5e4b544f3d3e018f0b913b400261f85926"
+-"checksum tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "6af16bfac7e112bea8b0442542161bfc41cbfa4466b580bdda7d18cb88b911ce"
+-"checksum tokio-sync 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "fda385df506bf7546e70872767f71e81640f1f251bdf2fd8eb81a0eaec5fe022"
+-"checksum tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "1d14b10654be682ac43efee27401d792507e30fd8d26389e1da3b185de2e4119"
+-"checksum tokio-threadpool 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)" = "742e511f6ce2298aeb86fc9ea0d8df81c2388c6ebae3dc8a7316e8c9df0df801"
+-"checksum tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)" = "2910970404ba6fa78c5539126a9ae2045d62e3713041e447f695f41405a120c6"
+-"checksum tokio-trace-core 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "350c9edade9830dc185ae48ba45667a445ab59f6167ef6d0254ec9d2430d9dd3"
+-"checksum toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "758664fc71a3a69038656bee8b6be6477d2a6c315a6b81f7081f591bffa4111f"
+-"checksum try-lock 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e604eb7b43c06650e854be16a2a03155743d3752dd1c943f6829e26b7a36e382"
+-"checksum tungstenite 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e9573852f935883137b7f0824832493ce7418bf290c8cf164b7aafc9b0a99aa0"
+-"checksum typenum 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "612d636f949607bdf9b123b4a6f6d966dedf3ff669f7f045890d3a4a73948169"
+-"checksum ucd-util 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "535c204ee4d8434478593480b8f86ab45ec9aae0e83c568ca81abf0fd0e88f86"
+-"checksum unicase 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7f4765f83163b74f957c797ad9253caf97f103fb064d3999aea9568d09fc8a33"
+-"checksum unicase 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "41d17211f887da8e4a70a45b9536f26fc5de166b81e2d5d80de4a17fd22553bd"
+-"checksum unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5"
+-"checksum unicode-normalization 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "141339a08b982d942be2ca06ff8b076563cbe223d1befd5450716790d44e2426"
+-"checksum unicode-width 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "882386231c45df4700b275c7ff55b6f3698780a650026380e72dabe76fa46526"
+-"checksum unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc"
+-"checksum url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dd4e7c0d531266369519a4aa4f399d748bd37043b00bde1e4ff1f60a120b355a"
+-"checksum url_serde 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "74e7d099f1ee52f823d4bdd60c93c3602043c728f5db3b97bdb548467f7bddea"
+-"checksum utf-8 0.7.5 (registry+https://github.com/rust-lang/crates.io-index)" = "05e42f7c18b8f902290b009cde6d651262f956c98bc51bca4cd1d511c9cd85c7"
+-"checksum utf8-ranges 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "796f7e48bef87609f7ade7e06495a87d5cd06c7866e6a5cbfceffc558a243737"
+-"checksum uuid 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "0238db0c5b605dd1cf51de0f21766f97fba2645897024461d6a00c036819a768"
+-"checksum vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "def296d3eb3b12371b2c7d0e83bfe1403e4db2d7a0bba324a12b21c4ee13143d"
+-"checksum vec_map 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "05c78687fb1a80548ae3250346c3db86a80a7cdd77bda190189f2d0a0987c81a"
+-"checksum vecio 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0795a11576d29ae80525a3fda315bf7b534f8feb9d34101e5fe63fb95bb2fd24"
+-"checksum version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "914b1a6776c4c929a602fafd8bc742e06365d4bcbe48c30f9cca5824f70dc9dd"
+-"checksum void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d"
+-"checksum want 0.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "797464475f30ddb8830cc529aaaae648d581f99e2036a928877dfde027ddf6b3"
+-"checksum winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a"
+-"checksum winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "92c1eb33641e276cfa214a0522acad57be5c56b10cb348b3c5117db75f3ac4b0"
+-"checksum winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc"
+-"checksum winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
+-"checksum winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
+-"checksum ws2_32-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d59cefebd0c892fa2dd6de581e937301d8552cb44489cdff035c6187cb63fa5e"
diff --git a/testing/syncthing-gtk/APKBUILD b/testing/syncthing-gtk/APKBUILD
new file mode 100644
index 00000000000..89fe587bb73
--- /dev/null
+++ b/testing/syncthing-gtk/APKBUILD
@@ -0,0 +1,34 @@
+# Maintainer: Cowington Post <cowingtonpost@gmail.com>
+pkgname=syncthing-gtk
+pkgver=0.9.4.5
+pkgrel=1
+pkgdesc="GTK3 based UI and notification area icon for Syncthing"
+url="https://github.com/syncthing-gtk/syncthing-gtk"
+arch="noarch"
+license="GPL-2.0-or-later"
+depends="
+ gtk+3.0
+ libnotify
+ py3-bcrypt
+ py3-cairo
+ py3-dateutil
+ py3-gobject3
+ syncthing
+ "
+makedepends="py3-setuptools"
+checkdepends="pytest"
+subpackages="$pkgname-doc $pkgname-pyc"
+source="https://github.com/syncthing-gtk/syncthing-gtk/archive/refs/tags/$pkgver/syncthing-gtk-$pkgver.tar.gz"
+options="!check" # no tests
+
+build() {
+ python3 setup.py build
+}
+
+package() {
+ python3 setup.py install --root="$pkgdir" --skip-build
+}
+
+sha512sums="
+25d3c111651c02a5d6d281ae04710b3c54f50d944cc1a72d3d94493e897b9bd432ae2e6dc782d7f0c17b12b3ba86ff30f8654bd46161a3a832d14e8c86c9cba7 syncthing-gtk-0.9.4.5.tar.gz
+"
diff --git a/testing/sysls/APKBUILD b/testing/sysls/APKBUILD
new file mode 100644
index 00000000000..422af30a1e1
--- /dev/null
+++ b/testing/sysls/APKBUILD
@@ -0,0 +1,24 @@
+# Contributor: Luca Weiss <luca@z3ntu.xyz>
+# Maintainer: Martijn Braam <martijn@brixit.nl>
+pkgname=sysls
+pkgver=2
+pkgrel=1
+pkgdesc="Nicer ls for sysfs directories"
+url="https://git.sr.ht/~martijnbraam/sysls"
+arch="all"
+license="GPL-3.0-only"
+makedepends="py3-setuptools"
+source="sysls-$pkgver.tar.gz::https://git.sr.ht/~martijnbraam/sysls/archive/$pkgver.tar.gz"
+options="!check" # no tests
+
+build() {
+ python3 setup.py build
+}
+
+package() {
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+sha512sums="
+f99fc36fd42fb044d5d69a17f5fe0d93d8edd1dd0093ee9c5445afa05630b7258a8d50aecbf5cbe2588e00a78152195061d12fc527db25b02284c2507c911aba sysls-2.tar.gz
+"
diff --git a/testing/t2sz/APKBUILD b/testing/t2sz/APKBUILD
index d9ecd312be1..bfd41253e4d 100644
--- a/testing/t2sz/APKBUILD
+++ b/testing/t2sz/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Marco Martinelli <marco+t2sz@13byte.com>
# Maintainer: Marco Martinelli <marco+t2sz@13byte.com>
pkgname=t2sz
-pkgver=1.1.1
+pkgver=1.1.2
pkgrel=0
pkgdesc="t2sz compress a file into a seekable zstd with special handling for tar archives."
url="https://github.com/martinellimarco/t2sz"
@@ -29,5 +29,5 @@ package() {
}
sha512sums="
-36e28811a1e62ab5bf8f82d3d145bbd95d4db447bb3ce5c65a3fdbdb94a288ba73e0bfade2e331509c3761cc806412043f4e1320b72071d02136dfb2e5df14f4 t2sz-1.1.1.tar.gz
+8bc388042e4f41bc87499b69ee5cc7519701269e6c6bf22c0aab9e11472b65a71fc782582fc3060de3ce8e81bf87e5184051e915ae7d10bd604c68773cdb229e t2sz-1.1.2.tar.gz
"
diff --git a/testing/tabby/APKBUILD b/testing/tabby/APKBUILD
index 2ec176935ca..caf51afb8fb 100644
--- a/testing/tabby/APKBUILD
+++ b/testing/tabby/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=tabby
-pkgver=2.0
-pkgrel=2
+pkgver=3.1
+pkgrel=1
pkgdesc="Tabbed Tiling Wayland Compositor"
url="https://code.jessemcclure.org/tabby/"
arch="all"
@@ -14,18 +14,14 @@ makedepends="
pixman-dev
wayland-dev
wayland-protocols
- wlroots-dev
+ wlroots0.16-dev
"
subpackages="$pkgname-doc"
-source="tabby-$pkgver-r1.tar.gz::https://code.jessemcclure.org/tabby/tarball/$pkgver/tabby-$pkgver.tar.gz"
+source="tabby-$pkgver-r1.tar.gz::https://code.jessemcclure.org/tabby/tarball/$pkgver/tabby-$pkgver.tar.gz
+ usr-bin.patch
+ "
options="!check" # no checks provided
-prepare() {
- default_prepare
- # set to /bin by default
- sed -i "s|bin|usr/bin|" share/config
-}
-
build() {
make
}
@@ -35,5 +31,6 @@ package() {
}
sha512sums="
-2541d68c49d53a47e3da67186862e5350aa15bc6c7253a3d949b746ac4518ac95c5b68481d544393ff6f44432c2648abe4504c56131e67cf16de517364af45ee tabby-2.0-r1.tar.gz
+ecb09da410474819e567a2a3d879cfb36c0f72bbaecd4190714d5806f3fc2aea553f011506cae1a2ca95f8e4c3aa492939453ac43f77763c1b7fc2ed2c4b1c6f tabby-3.1-r1.tar.gz
+2270a4fa3ccfdd49fc7eda4201e1b358f687951622be9a73d0aa6ca95a2ac070b927aad78088a16a3aeba9a69c6b434e27d0af6fdd8b55d6b9634b1dc3ec13c2 usr-bin.patch
"
diff --git a/testing/tabby/usr-bin.patch b/testing/tabby/usr-bin.patch
new file mode 100644
index 00000000000..b49fde5ebe3
--- /dev/null
+++ b/testing/tabby/usr-bin.patch
@@ -0,0 +1,10 @@
+diff --git a/share/config b/share/config
+index b1031ca..01d7f8d 100755
+--- a/share/config
++++ b/share/config
+@@ -1,4 +1,4 @@
+-#!/bin/tabby-cmd include
++#!/usr/bin/tabby-cmd include
+
+ gap 0
+ bpx 2
diff --git a/testing/tachyon/APKBUILD b/testing/tachyon/APKBUILD
new file mode 100644
index 00000000000..88782ab5e58
--- /dev/null
+++ b/testing/tachyon/APKBUILD
@@ -0,0 +1,49 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
+pkgname=tachyon
+pkgver=0.99_beta6
+pkgrel=1
+pkgdesc="Multithreaded ray tracing software"
+url="https://web.archive.org/web/20220728040107/http://jedi.ks.uiuc.edu/~johns/raytracer"
+arch="all"
+license="BSD-3-Clause"
+makedepends="jpeg-dev libpng-dev"
+source="https://archive.org/download/tachyon_${pkgver//_beta/b}dsx.orig.tar.xz/tachyon_${pkgver//_beta/~b}%2Bdsx.orig.tar.xz"
+subpackages="$pkgname-scenes:_scenes"
+builddir="$srcdir/$pkgname-${pkgver//_beta/~b}+dsx.orig/unix"
+
+case "$CARCH" in
+ armhf|armv7|x86) _target=linux-thr;;
+ *) _target=linux-64-thr;;
+esac
+
+build() {
+ sed -i -e "s/-m32 //" -e "s/-m64 //" Make-arch
+ make \
+ USEJPEG="-DUSEJPEG" \
+ JPEGLIB="$(pkgconf --libs libjpeg)" \
+ USEPNG="-DUSEPNG" \
+ PNGLIB="$(pkgconf --libs libpng)" \
+ "$_target"
+}
+
+check() {
+ ../compile/"$_target"/tachyon ../scenes/island.dat
+}
+
+package() {
+ cd ../compile/"$_target"
+ install -Dm755 tachyon "$pkgdir"/usr/bin/tachyon
+ install -d "$pkgdir"/usr/share/tachyon
+ cp -r ../../scenes "$pkgdir"/usr/share/tachyon/scenes
+}
+
+_scenes() {
+ pkgdesc="Example scenes for processing by tachyon"
+ arch="noarch"
+ amove usr/share/tachyon/scenes
+}
+
+sha512sums="
+aac052adcaaf1d44d7c087b9f11af6eb2ddea2df2848cf0d9a030993db6a544466ca06a9139f81f30cf150e616d7c46f5e8f56d4be54128c932b0228537fc4d4 tachyon_0.99~b6%2Bdsx.orig.tar.xz
+"
diff --git a/testing/tagutil/APKBUILD b/testing/tagutil/APKBUILD
deleted file mode 100644
index 84d53715c79..00000000000
--- a/testing/tagutil/APKBUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-# Contributor: David Demelier <markand@malikania.fr>
-# Maintainer: David Demelier <markand@malikania.fr>
-pkgname=tagutil
-pkgver=3.1
-pkgrel=0
-pkgdesc="scriptable music files tags tool and editor"
-url="https://github.com/kAworu/tagutil"
-#arch="all"
-license="BSD-2-Clause"
-makedepends="cmake flac-dev jansson-dev libvorbis-dev taglib-dev yaml-dev zlib-dev"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/kAworu/tagutil/archive/v3.1.tar.gz
- patch-musl.patch"
-options="!check" # No tests
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_BUILD_TYPE=None \
- -DCMAKE_C_FLAGS="$CFLAGS" \
- $CMAKE_CROSSOPTS src
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="a5b2140250f21eddd0154231608546b78c5646bb4bcb6ed7b11a3cbade2435c322d83c19a2a2e6852cdacca19a2b1cd6e33c0b71147d6873679d2b41db5a06d9 tagutil-3.1.tar.gz
-2915411e1dc38126879c19d69caf8923fbcb95c72b3371661f50078b2722369ebb88f6dd3de9ba78f974a1eb07b743b1d69e40ee678f2a6f1634d8c972a18ef9 patch-musl.patch"
diff --git a/testing/tagutil/patch-musl.patch b/testing/tagutil/patch-musl.patch
deleted file mode 100644
index 7be2491908c..00000000000
--- a/testing/tagutil/patch-musl.patch
+++ /dev/null
@@ -1,32 +0,0 @@
---- tagutil-3.1/src/compat/include/sys/queue.h.orig 2020-04-06 19:26:17.876055943 +0200
-+++ tagutil-3.1/src/compat/include/sys/queue.h 2020-04-06 19:26:24.292746650 +0200
-@@ -33,8 +33,6 @@
- #ifndef _SYS_QUEUE_H_
- #define _SYS_QUEUE_H_
-
--#include <sys/cdefs.h>
--
- /*
- * This file defines four types of data structures: singly-linked lists,
- * singly-linked tail queues, lists and tail queues.
---- tagutil-3.1/src/compat/subr_sbuf.c.orig 2020-04-06 19:26:54.572881419 +0200
-+++ tagutil-3.1/src/compat/subr_sbuf.c 2020-04-06 19:27:01.302916526 +0200
-@@ -26,7 +26,6 @@
- * SUCH DAMAGE.
- */
-
--#include <sys/cdefs.h>
- /*
- __FBSDID("$FreeBSD: release/10.0.0/sys/kern/subr_sbuf.c 255805 2013-09-22 23:47:56Z des $");
- */
---- tagutil-3.1/src/CMakeLists.txt.orig 2020-04-06 19:30:20.403844481 +0200
-+++ tagutil-3.1/src/CMakeLists.txt 2020-04-06 19:30:55.434019063 +0200
-@@ -34,7 +34,7 @@
- add_compile_options(-fstack-protector-strong -o aslr -fpie)
- set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -pie")
- # Per build type flags.
--set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS} -O0 -g -fsanitize=undefined")
-+set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS} -O0 -g")
- # CMAKE_BUILD_TYPE=GRIM: *very* strict compiler options
- set(CMAKE_C_FLAGS_GRIM "${CMAKE_C_FLAGS_DEBUG} -Wextra -pedantic -Wconversion -Wstrict-prototypes -Wcast-qual -Wcast-align -Wshadow -Wredundant-decls -Wundef -Wfloat-equal -Wmissing-include-dirs -Wswitch-default -Wpointer-arith -Wbad-function-cast -Wnested-externs -Wold-style-definition -Wformat=2 -Winit-self -Wwrite-strings -Wmissing-prototypes")
- include(CheckCCompilerFlag)
diff --git a/testing/tailspin/APKBUILD b/testing/tailspin/APKBUILD
new file mode 100644
index 00000000000..55ba5dbd699
--- /dev/null
+++ b/testing/tailspin/APKBUILD
@@ -0,0 +1,47 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=tailspin
+pkgver=3.0.0
+pkgrel=0
+pkgdesc="Log file highlighter"
+url="https://github.com/bensadeh/tailspin"
+arch="all !s390x" # nix crate fails to build
+license="MIT"
+depends="less"
+makedepends="cargo cargo-auditable"
+subpackages="
+ $pkgname-doc
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/bensadeh/tailspin/archive/refs/tags/$pkgver.tar.gz"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm755 target/release/tspin -t "$pkgdir"/usr/bin/
+ install -Dm644 man/tspin.1 -t "$pkgdir"/usr/share/man/man1/
+
+ install -Dm644 completions/tspin.bash \
+ "$pkgdir"/usr/share/bash-completion/completions/tspin
+ install -Dm644 completions/tspin.fish \
+ "$pkgdir"/usr/share/fish/vendor_completions.d/tspin.fish
+ install -Dm644 completions/tspin.zsh \
+ "$pkgdir"/usr/share/zsh/site-functions/_tspin
+}
+
+sha512sums="
+0f079d777fcb446b3b9b20b6d15974274f8f2ff4335bedbec1e3801561d6bc5b29c19a90d792ba88ba76e668e154f109479b9b73b11c5c50a388af8bf7b7e7ad tailspin-3.0.0.tar.gz
+"
diff --git a/testing/tang/APKBUILD b/testing/tang/APKBUILD
new file mode 100644
index 00000000000..5098ee9b3ea
--- /dev/null
+++ b/testing/tang/APKBUILD
@@ -0,0 +1,57 @@
+# Contributor: Michał Polański <michal@polanski.me>
+# Maintainer: Michał Polański <michal@polanski.me>
+pkgname=tang
+pkgver=14
+pkgrel=0
+pkgdesc="Server for binding data to network presence"
+url="https://github.com/latchset/tang"
+license="GPL-3.0-or-later"
+arch="all"
+depends="jose"
+makedepends="asciidoc meson http-parser-dev jose-dev"
+checkdepends="iproute2-ss"
+subpackages="$pkgname-dbg $pkgname-doc $pkgname-openrc"
+install="$pkgname.pre-install"
+source="https://github.com/latchset/tang/archive/v$pkgver/tang-$pkgver.tar.gz
+ $pkgname.initd
+ tangd-wrapper
+ man-pages.patch
+ "
+
+prepare() {
+ default_prepare
+
+ # conform to FHS
+ find . -type f -exec sed -i 's|/var/db/tang|/var/lib/tang|g' {} \;
+}
+
+build() {
+ abuild-meson . output
+ meson compile -C output
+}
+
+check() {
+ meson test --no-rebuild --print-errorlogs -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+
+ install -Dm755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
+ install -Dm755 "$srcdir"/tangd-wrapper -t "$pkgdir"/usr/libexec/
+
+ rm -r "$pkgdir"/usr/lib/systemd
+}
+
+openrc() {
+ default_openrc
+
+ depends="socat"
+}
+
+sha512sums="
+3b0872f51d9aa8dfd232fa328a326503800a1eedfe7cf9d73f8e10a3cfb97f667996708a18ea04c982c3ca477fe36961045649437b953c593fce544d8dee8048 tang-14.tar.gz
+b91085ab94e0f2b884ea2aa5a9ca966b4532426996f170cc78b903f4ed7b729f82dbbad9d0b9106ee74e287d38421f5eb409d1ab61cb96278cdec73fae82c44b tang.initd
+d32a0da3ab91a42e6c2b2ebf00e9e4b7c95c329a0d13cc30a373c4b387d69e6ff62280d89b57b3c8809e57de953fb4abc9735ad6cad1d347ba6b64b500335d01 tangd-wrapper
+5fabfcb62db2c40c171f0059a34165faae40c3c08a2631a1b2b1e15ef2bc5bd090f612622641af16d30cc01a971265bd9010f125cce254c628067c48312e382d man-pages.patch
+"
diff --git a/testing/tang/man-pages.patch b/testing/tang/man-pages.patch
new file mode 100644
index 00000000000..643ecb8f4fb
--- /dev/null
+++ b/testing/tang/man-pages.patch
@@ -0,0 +1,20 @@
+diff --git a/doc/tang.8.adoc b/doc/tang.8.adoc
+index 3031a13..36105bb 100644
+--- a/doc/tang.8.adoc
++++ b/doc/tang.8.adoc
+@@ -40,13 +40,8 @@ protocol, see the Tang project's homepage.
+
+ Getting a Tang server up and running is simple:
+
+-ifdef::freebsd[]
+- $ sudo service tangd enable
+- $ sudo service tangd start
+-endif::[]
+-ifndef::freebsd[]
+- $ sudo systemctl enable tangd.socket --now
+-endif::[]
++ $ doas rc-update add tang
++ $ doas service tang start
+
+ That's it. The server is now running with a fresh set of cryptographic keys
+ and will automatically start on the next reboot.
diff --git a/testing/tang/tang.initd b/testing/tang/tang.initd
new file mode 100644
index 00000000000..13968543d91
--- /dev/null
+++ b/testing/tang/tang.initd
@@ -0,0 +1,27 @@
+#!/sbin/openrc-run
+
+name="Tang server"
+description="Server for binding data to network presence"
+
+: ${tang_port:="7500"}
+: ${tang_address:="127.0.0.1"}
+: ${socat_address:="tcp-listen:$tang_port,bind=$tang_address,fork"}
+
+command="/usr/bin/socat"
+command_user="tang:tang"
+command_args="$socat_address exec:/usr/libexec/tangd-wrapper"
+command_background="yes"
+
+extra_commands="rotate_keys"
+description_rotate_keys="Perform rotation of tang keys"
+pidfile="/run/$RC_SVCNAME.pid"
+
+rotate_keys() {
+ ebegin "Performing rotation of tang keys"
+ su ${command_user%:*} -s /bin/sh -c "/usr/libexec/tangd-rotate-keys -d /var/lib/tang"
+ eend $?
+}
+
+start_pre() {
+ checkpath -d -m 0750 -o $command_user /var/lib/tang
+}
diff --git a/testing/tang/tang.pre-install b/testing/tang/tang.pre-install
new file mode 100644
index 00000000000..5f19f24d016
--- /dev/null
+++ b/testing/tang/tang.pre-install
@@ -0,0 +1,10 @@
+#!/bin/sh
+
+user=tang
+group=tang
+gecos="Tang server"
+
+addgroup -S $group 2>/dev/null
+adduser -S -D -H -h /var/lib/$user -s /sbin/nologin -G $group -g "$gecos" $user 2>/dev/null
+
+exit 0
diff --git a/testing/tang/tangd-wrapper b/testing/tang/tangd-wrapper
new file mode 100644
index 00000000000..49a190814e6
--- /dev/null
+++ b/testing/tang/tangd-wrapper
@@ -0,0 +1,4 @@
+#!/bin/sh
+
+# pipe stderr to logger and leave stdin/stdout unaffected
+{ /usr/libexec/tangd /var/lib/tang 2>&1 >&3 3>&- | logger -t tangd -p daemon.info 3>&-; } 3>&1
diff --git a/testing/tangctl/APKBUILD b/testing/tangctl/APKBUILD
new file mode 100644
index 00000000000..c5a7e83de2d
--- /dev/null
+++ b/testing/tangctl/APKBUILD
@@ -0,0 +1,47 @@
+# Contributor: Michał Polański <michal@polanski.me>
+# Maintainer: Michał Polański <michal@polanski.me>
+pkgname=tangctl
+pkgver=0_git20220412
+_gitrev=2c7f9b676e1571a5805b2e47502ac16e1dfba5da
+pkgrel=15
+pkgdesc="Tool implementing server-side ECMR exchange functionality (Tang server)"
+url="https://github.com/anatol/tang.go"
+license="BSD-3-Clause"
+arch="all"
+makedepends="go"
+checkdepends="clevis tang"
+source="https://github.com/anatol/tang.go/archive/$_gitrev/tang.go-$pkgver.tar.gz
+ tang-location.patch
+ "
+builddir="$srcdir/tang.go-$_gitrev"
+# generated key does not match hardcoded id
+# probably cause by go version?
+options="!check"
+
+case "$CARCH" in
+ # blocked by clevis
+ s390x|riscv64) options="!check" ;;
+esac
+
+export GOFLAGS="$GOFLAGS -trimpath -mod=readonly -modcacherw"
+export GOPATH="$srcdir"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ go build ./cmd/tangctl
+}
+
+check() {
+ go test ./...
+}
+
+package() {
+ install -Dm755 tangctl -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+6485cbfba2116b21fb5974dd3ef1dae1b5b8d39d8112e850f44941dc45896f6751b265b9e978b53f0e81520dce443ba2288b6b297bdac0d426ffecc46109baa6 tang.go-0_git20220412.tar.gz
+22d1dac2321c9e2fe7c1e5559d3976f759941d9aef27e8c0fc7858e311243635560d235c228ad846f58743e7d3c76737ce8bec3c844a4f567a8604b279961dd4 tang-location.patch
+"
diff --git a/testing/tangctl/tang-location.patch b/testing/tangctl/tang-location.patch
new file mode 100644
index 00000000000..72736571f1c
--- /dev/null
+++ b/testing/tangctl/tang-location.patch
@@ -0,0 +1,12 @@
+--- a/native_server.go
++++ b/native_server.go
+@@ -30,8 +30,7 @@ func NewNativeServer(keysDir string, port int) (*NativeServer, error) {
+
+ // different OS use different tang server binary location
+ tangLocations := []string{
+- "/usr/lib/",
+- "/usr/lib/x86_64-linux-gnu/",
++ "/usr/libexec/",
+ }
+
+ var tangdPath string
diff --git a/testing/tangram/APKBUILD b/testing/tangram/APKBUILD
new file mode 100644
index 00000000000..24a1963cc73
--- /dev/null
+++ b/testing/tangram/APKBUILD
@@ -0,0 +1,63 @@
+# Contributor: knuxify <knuxify@gmail.com>
+# Maintainer: knuxify <knuxify@gmail.com>
+pkgname=tangram
+pkgver=3.0
+pkgrel=1
+_troll_commit="63392a57392fb8ed944e859269a3751f649f64ec"
+pkgdesc="Browser for your pinned tabs"
+url="https://apps.gnome.org/app/re.sonny.Tangram"
+# armhf: blocked by gjs
+# s390x: blocked by gjs, blueprint-compiler
+arch="noarch !armhf !s390x"
+license="GPL-3.0-or-later"
+depends="
+ gjs
+ gtk4.0
+ libadwaita
+ webkit2gtk-6.0
+ "
+makedepends="
+ appstream-glib
+ blueprint-compiler
+ coreutils
+ desktop-file-utils
+ gjs-dev
+ glib-dev
+ gtk4.0-dev
+ libadwaita-dev
+ meson
+ "
+subpackages="$pkgname-lang"
+source="https://github.com/sonnyp/Tangram/archive/refs/tags/v$pkgver/Tangram-$pkgver.tar.gz
+ troll-$_troll_commit.tar.gz::https://github.com/sonnyp/troll/archive/$_troll_commit.tar.gz
+ busybox.patch
+ "
+builddir="$srcdir/Tangram-$pkgver"
+options="!check" # no test suite
+
+prepare() {
+ default_prepare
+
+ rm -r "$builddir"/troll
+ mv "$srcdir"/troll-$_troll_commit "$builddir"/troll
+}
+
+build() {
+ abuild-meson \
+ . output
+ meson compile -C output
+}
+
+check() {
+ meson test --no-rebuild --print-errorlogs -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+sha512sums="
+74fb84ecd18e80605f98582a0e42d8f7acf8c1e208895592ef6299f187a741ef8642237283bdcf164bf29ee6a1c73f528dfdde274f2f45278cbad118c38b6d42 Tangram-3.0.tar.gz
+53f093712dd11cf2cc3e0448561b57873d225653bff937efa6a2e264ad3520b601cd623aa0178508e4a81e4f85c187dfc977f7f75bbd15873fce64b48efdcda8 troll-63392a57392fb8ed944e859269a3751f649f64ec.tar.gz
+0312705a1a832da0ff26c89fd83769a6f1720917dd954cc1d43482daf386841a8a0cae3a4e8b45cbf6c2b7ac3dbf5eb888ed690a568ab48b1763cc727ad69ebe busybox.patch
+"
diff --git a/testing/tangram/busybox.patch b/testing/tangram/busybox.patch
new file mode 100644
index 00000000000..20329dc0e6f
--- /dev/null
+++ b/testing/tangram/busybox.patch
@@ -0,0 +1,20 @@
+diff --git a/src/bin.js b/src/bin.js
+index 995c092..8ce4a2c 100755
+--- a/src/bin.js
++++ b/src/bin.js
+@@ -1,4 +1,4 @@
+-#!/usr/bin/env -S gjs -m
++#!/usr/bin/gjs -m
+
+ import { exit, programArgs, programInvocationName } from "system";
+ import GLib from "gi://GLib";
+diff --git a/src/local.js b/src/local.js
+index e3fa11a..1385227 100755
+--- a/src/local.js
++++ b/src/local.js
+@@ -1,4 +1,4 @@
+-#!/usr/bin/env -S gjs -m
++#!/usr/bin/gjs -m
+
+ import { exit, programArgs, programInvocationName } from "system";
+ import GLib from "gi://GLib";
diff --git a/testing/tanidvr/APKBUILD b/testing/tanidvr/APKBUILD
index 1f90244a3e3..b04ba8a458f 100644
--- a/testing/tanidvr/APKBUILD
+++ b/testing/tanidvr/APKBUILD
@@ -2,9 +2,9 @@
# Maintainer: Valery Kartel <valery.kartel@gmail.com>
pkgname=tanidvr
pkgver=1.4.1
-pkgrel=0
+pkgrel=1
pkgdesc="a CLI tool for accessing DVRs and IP cameras based on the proprietary DVR-IP protocol (port 37777/TCP)"
-url="http://tanidvr.sourceforge.net"
+url="https://tanidvr.sourceforge.net/"
arch="all"
license="GPL-3.0"
depends=
diff --git a/testing/tanka/APKBUILD b/testing/tanka/APKBUILD
new file mode 100644
index 00000000000..1497b81ba1e
--- /dev/null
+++ b/testing/tanka/APKBUILD
@@ -0,0 +1,37 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=tanka
+pkgver=0.26.0
+pkgrel=4
+pkgdesc="Flexible, reusable and concise configuration for Kubernetes"
+url="https://tanka.dev"
+# blocked by kubectl (kubernetes)
+arch="all !armhf !riscv64"
+license="Apache-2.0"
+depends="kubectl"
+makedepends="go"
+source="$pkgname-$pkgver.tar.gz::https://github.com/grafana/tanka/archive/refs/tags/v$pkgver.tar.gz"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ go build -v \
+ -ldflags "-X github.com/grafana/tanka/pkg/tanka.CurrentVersion=v$pkgver" \
+ ./cmd/tk
+}
+
+check() {
+ # /pkg/helm test requires helm.
+ # Tests timeout with helm installed.
+ # shellcheck disable=2046
+ go test $(go list ./... | grep -v /pkg/helm)
+}
+
+package() {
+ install -Dm755 tk -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+1f8a59b75f73c5b743674f9cff646f6f2401c800b75cb5aa5af31cd7d0df807d08eee47d4e5aa96c6889737a655a1abd8e959b7285bce1637e9258fa2c763384 tanka-0.26.0.tar.gz
+"
diff --git a/testing/tartube/APKBUILD b/testing/tartube/APKBUILD
index 745cc60781e..1eb84ce7c2e 100644
--- a/testing/tartube/APKBUILD
+++ b/testing/tartube/APKBUILD
@@ -1,18 +1,27 @@
# Contributor: Antoni Aloy <aaloytorrens@gmail.com>
# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
pkgname=tartube
-pkgver=2.3.332
-pkgrel=1
+pkgver=2.5.0
+pkgrel=0
pkgdesc="GUI front-end for youtube-dl, partly based on youtube-dl-gui and written in Python 3 / Gtk 3"
url="https://github.com/axcore/tartube"
-arch="noarch"
-license="GPL-3.0-or-later"
+arch="noarch !s390x" # freeimage
+license="LGPL-2.1-or-later"
depends="
- gtk+3.0 python3 py3-requests py3-feedparser
- py3-playsound aria2 py3-proglog
- atomicparsley youtube-dl py3-gobject3
- py3-imageio-ffmpeg mpv mpv-libs ffmpeg xdg-utils
+ aria2
+ atomicparsley
+ ffmpeg
+ mpv
+ py3-feedparser
+ py3-gobject3
+ py3-imageio-ffmpeg
py3-matplotlib
+ py3-playsound
+ py3-requests
+ python3
+ streamlink
+ xdg-utils
+ yt-dlp
"
# Enable moviepy and imageio support when possible
@@ -21,8 +30,8 @@ case "$CARCH" in
*) depends="$depends py3-moviepy py3-imageio" ;;
esac
-
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/axcore/tartube/archive/v$pkgver.tar.gz"
build() {
@@ -34,18 +43,14 @@ check() {
}
package() {
- python3 setup.py install \
- --root="$pkgdir" \
- --optimize=1
- install -d "$pkgdir/usr/share/applications" \
- "$pkgdir/usr/share/pixmaps"
+ python3 setup.py install --skip-build --root="$pkgdir"
_sitepkgs_dir="$(python3 -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")"
mv "$pkgdir/tartube/icons" "$pkgdir$_sitepkgs_dir/tartube/"
rm -rvf "$pkgdir"/tartube
- install -Dm644 pack/tartube.png "$pkgdir"/usr/share/pixmaps/tartube.png
+ install -Dm644 pack/tartube.png "$pkgdir"/usr/share/icons/hicolor/48x48/apps/tartube.png
install -Dm644 pack/tartube.desktop "$pkgdir"/usr/share/applications/tartube.desktop
}
sha512sums="
-d6194cb5e78d541293fecd9ab3847787945585f30b74e5155de017c91fed575c1c947caedd21487e49e68bbd216cea4ae187a368ec482f254c169aa55f6cf51e tartube-2.3.332.tar.gz
+249c99d2b51e0dec76efd85d204cc3bc21a9963defd8a2fc50de02758f33848bb71b1dcdba143a8f9b7f459d0196c522a156b40719f2a756da7f1675fa43b172 tartube-2.5.0.tar.gz
"
diff --git a/testing/taskcafe/APKBUILD b/testing/taskcafe/APKBUILD
index 94eb22301bf..89b1b6b6e7a 100644
--- a/testing/taskcafe/APKBUILD
+++ b/testing/taskcafe/APKBUILD
@@ -1,11 +1,12 @@
-# Contributor: Kevin Thomas <me@kevinthomas.dev>
-# Maintainer: Kevin Thomas <me@kevinthomas.dev>
+# Contributor: Kay Thomas <kaythomas@pm.me>
+# Maintainer: Kay Thomas <kaythomas@pm.me>
pkgname=taskcafe
-pkgver=0.3.2
+pkgver=0.3.6
pkgrel=5
pkgdesc="Project management tool with Kanban boards"
url="https://github.com/JordanKnott/taskcafe"
-arch="all !riscv64" # blocked by nodejs
+# riscv64: fails to compile js
+arch="all !riscv64"
license="MIT"
makedepends="go mage nodejs yarn"
install="$pkgname.pre-install"
@@ -21,9 +22,12 @@ source="$pkgname-$pkgver.tar.gz::https://github.com/JordanKnott/taskcafe/archive
options="!check chmod-clean net"
export GOPATH="$srcdir"
-export GOFLAGS="$GOFLAGS -trimpath"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
build() {
+ export NODE_OPTIONS=--openssl-legacy-provider
# Download npm dependencies
mage install
@@ -46,7 +50,7 @@ package() {
}
sha512sums="
-e54987965cf75543ab5b63138a96c3b11b04d8d7d81f445e3a3aab6ca9b44e3464e4a7ccd2ff40cc08a79ad41d1cedf6db1ef089921584e79972fa594dd08469 taskcafe-0.3.2.tar.gz
+b513c2654d7bf321c6db4ac397d7f3f9fea9d9b2912e13f0597f5dc67fa9825f0014c715f726980eaf2943240d911686d51be5a8fbc7bc2951c2d2d126fb4100 taskcafe-0.3.6.tar.gz
43239950292a481da33dd714a2eb4d1643dbbbd261c98540d8f4251a9742a2077943fb79a565e7b44562cc8dd2d7a4a518ee85e3862f3bcd8b4675e9a8c12c5b taskcafe.initd
2cb92a08dc4541482e83fb2ee5ff4018e7f7813bf72f1dfca3c96b3cd90a704a07949e8c203c2a8d9809e7f9ade5bf1f3843230dcc37bd8891902dee7d9ecc1d taskcafe.confd
"
diff --git a/testing/tauri-cli/APKBUILD b/testing/tauri-cli/APKBUILD
new file mode 100644
index 00000000000..393715a7122
--- /dev/null
+++ b/testing/tauri-cli/APKBUILD
@@ -0,0 +1,35 @@
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=tauri-cli
+pkgver=1.4.0
+pkgrel=2
+pkgdesc="Tauri cargo cli tool"
+url="https://github.com/tauri-apps/tauri"
+# tauri doesn't support the others anyway
+arch="aarch64 armv7 x86 x86_64"
+license="Apache-2.0 OR MIT"
+makedepends="
+ bzip2-dev
+ cargo
+ cargo-auditable
+ openssl-dev
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/tauri-apps/tauri/releases/download/tauri-cli-v$pkgver/tauri-cli-$pkgver.crate"
+options="net !check" # no tests
+
+
+prepare() {
+ default_prepare
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen --no-default-features --features "native-tls"
+}
+
+package() {
+ install -Dm755 target/release/cargo-tauri -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+2089f991dee05c06a5c6645e81b651a78fec4722a7d9c81927a9afd034c7efd73083a7f41d2a817246f06a2ed418203c2a437d75309e7be5e9343a90de7d8132 tauri-cli-1.4.0.tar.gz
+"
diff --git a/testing/tayga/APKBUILD b/testing/tayga/APKBUILD
new file mode 100644
index 00000000000..2518af217d1
--- /dev/null
+++ b/testing/tayga/APKBUILD
@@ -0,0 +1,35 @@
+# Contributor: Anjandev Momi <anjan@momi.ca>
+# Maintainer: Anjandev Momi <anjan@momi.ca>
+pkgname=tayga
+pkgver=0.9.2
+pkgrel=0
+pkgdesc="NAT64 daemon"
+url="http://www.litech.org/tayga/"
+arch="all"
+license="GPL-2.0-only"
+makedepends="linux-headers"
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.bz2::http://www.litech.org/tayga/tayga-$pkgver.tar.bz2
+ implicit-function-decl.patch
+ "
+options="!check" # no tests
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc/tayga \
+ --mandir=/usr/share/man \
+ --localstatedir=/var
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+a7a81cccb7c3e32f00f142b1bac598b732dd748772b307561239d695418ada5302182d487e51d1cf95ed736c0180c01db2f33409d0b9343d6587b76cbb3bc573 tayga-0.9.2.tar.bz2
+06a62211b2dfc42b170964afe347a3df7cc50764da1ce626149e622023acec87f99b0ec8e17f094eff85fec51107cb7212c258da2a787b94c18812a848cd79b3 implicit-function-decl.patch
+"
diff --git a/testing/tayga/implicit-function-decl.patch b/testing/tayga/implicit-function-decl.patch
new file mode 100644
index 00000000000..29df1d4a373
--- /dev/null
+++ b/testing/tayga/implicit-function-decl.patch
@@ -0,0 +1,12 @@
+diff --git a/tayga.h b/tayga.h
+index 2284d2a..a999d7c 100644
+--- a/tayga.h
++++ b/tayga.h
+@@ -31,6 +31,7 @@
+ #include <syslog.h>
+ #include <errno.h>
+ #include <time.h>
++#include <sys/uio.h>
+ #include <linux/if.h>
+ #include <linux/if_tun.h>
+ #include <linux/if_ether.h>
diff --git a/testing/tbftss/0001-remove-debug-flags.patch b/testing/tbftss/0001-remove-debug-flags.patch
deleted file mode 100644
index c6ad52a9efd..00000000000
--- a/testing/tbftss/0001-remove-debug-flags.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/makefile
-+++ b/makefile
-@@ -24,7 +24,6 @@
-
- CXXFLAGS += `sdl2-config --cflags` -DVERSION=$(VERSION) -DREVISION=$(REVISION) -DDATA_DIR=\"$(DATA_DIR)\" -DLOCALE_DIR=\"$(LOCALE_DIR)\"
- CXXFLAGS += -ansi -pedantic
--CXXFLAGS += -g -lefence
- ifneq ("$(wildcard .errors)","")
- CXXFLAGS += -Wall -Wempty-body -Werror -Wstrict-prototypes -Werror=maybe-uninitialized -Warray-bounds
- endif
diff --git a/testing/tbftss/APKBUILD b/testing/tbftss/APKBUILD
deleted file mode 100644
index deb9b4d9648..00000000000
--- a/testing/tbftss/APKBUILD
+++ /dev/null
@@ -1,39 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=tbftss
-pkgver=1.5.1
-pkgrel=0
-pkgdesc="2D platform game with a persistent world"
-url="https://github.com/stephenjsweeney/tbftss"
-arch="all"
-license="GPL-2.0-or-later"
-depends="$pkgname-data"
-makedepends="sdl2-dev sdl2_image-dev sdl2_mixer-dev sdl2_ttf-dev gettext-tiny-dev"
-subpackages="$pkgname-lang $pkgname-data::noarch"
-options="!check" # No testsuite
-source="
- $pkgname-$pkgver.tar.gz::https://github.com/stephenjsweeney/tbftss/archive/v$pkgver.tar.gz
- 0001-remove-debug-flags.patch
- "
-
-build() {
- make DATA_DIR=/usr/share/tbftss
-}
-
-package() {
- make install \
- DESTDIR="$pkgdir" \
- PREFIX=/usr \
- DATA_DIR=/usr/share/tbftss
-}
-
-data() {
- pkgdesc="$pkgdesc (data files)"
- mkdir -p "$subpkgdir"/usr/share/tbftss
- mv "$pkgdir"/usr/share/tbftss/data \
- "$subpkgdir"/usr/share/tbftss
-}
-
-sha512sums="
-3306dfecbcd6bd853f82406bf324167c121fa7afae6d7d1f9933f0de8ba4d842b387f3970771f6d2bb6d37d7e61a96b4f75824c553fe93a3b27959f7176dba37 tbftss-1.5.1.tar.gz
-cc087aa8a6ab6c4009592973169d1685ef05feff0d8adb9f936f8b6cf8767542cf1af8b534c39282c7f2eeac5860383f76bed37e5e01dd65bd93c2208f6ed8a7 0001-remove-debug-flags.patch
-"
diff --git a/testing/tcc/APKBUILD b/testing/tcc/APKBUILD
index b01fe08e368..56bd618d0e8 100644
--- a/testing/tcc/APKBUILD
+++ b/testing/tcc/APKBUILD
@@ -2,8 +2,8 @@
# Contributor: Hinata Yanagi <hinasssan@gmail.com>
# Maintainer: Hinata Yanagi <hinasssan@gmail.com>
pkgname=tcc
-pkgver=0.9.27_git20220323
-_commit="750f0a3e3f11c1a442f00f017c2548a8f63e0b9f"
+pkgver=0.9.27_git20240117
+_commit="7d1bbc80d4978c128b8ebead42485d7a79624dcd"
pkgrel=0
pkgdesc="Tiny C Compiler"
url="https://repo.or.cz/w/tinycc.git"
@@ -11,15 +11,27 @@ arch="all !ppc64le !s390x"
license="LGPL-2.1-or-later"
makedepends="texinfo"
options="!check" # test suite currently fails on the server
-source="$pkgname-$_commit.tar.gz::https://repo.or.cz/tinycc.git/snapshot/$_commit.tar.gz"
-subpackages="$pkgname-doc"
+depends_dev="$pkgname-libs"
+source="
+ $pkgname-$_commit.tar.gz::https://repo.or.cz/tinycc.git/snapshot/$_commit.tar.gz
+ libtcc.pc.in
+ "
+subpackages="
+ $pkgname-libs
+ $pkgname-libs-static
+ $pkgname-dev
+ $pkgname-doc
+ "
builddir="$srcdir/tinycc-${_commit:0:7}"
build() {
./configure \
--prefix=/usr \
+ --disable-static \
--config-musl
make
+
+ sed 's/@VERSION@/'"$pkgver"'/' "$srcdir"/libtcc.pc.in > libtcc.pc
}
check() {
@@ -29,10 +41,17 @@ check() {
package() {
make DESTDIR="$pkgdir" install
+ install -Dm644 libtcc.pc -t "$pkgdir"/usr/lib/pkgconfig/
install -Dm644 Changelog CodingStyle README TODO \
-t "$pkgdir"/usr/share/doc/$pkgname
}
+libs() {
+ default_libs
+ amove usr/lib/libtcc.so
+}
+
sha512sums="
-cad277e8643d2402e204290e42ecef559e8bc1259e0405ed7e1b4367f54702fd3167c10314ab81dcc9f6dd08852489053d2e7f662ddcfdd1f3c36549b9c796f6 tcc-750f0a3e3f11c1a442f00f017c2548a8f63e0b9f.tar.gz
+86e76dd885e511f833fd35d3e4d34b77cfdf0aa8ac2766a7dfd783d8682a4fadcc5d5ad9e5ab69867054b37bc3c085a3e77d93fb2615a21bdd36ac89c1f7917f tcc-7d1bbc80d4978c128b8ebead42485d7a79624dcd.tar.gz
+3e6311ef2b93ef5bcc17eb33077e2d79526c1592bb28189d1d12f1835d3af8234fe33cf49372c3c9ca703bb7cebebbdbbeb3db9864e18a76510e67b52b173e3a libtcc.pc.in
"
diff --git a/testing/tcc/libtcc.pc.in b/testing/tcc/libtcc.pc.in
new file mode 100644
index 00000000000..89907e1e835
--- /dev/null
+++ b/testing/tcc/libtcc.pc.in
@@ -0,0 +1,12 @@
+prefix=/usr
+exec_prefix=${prefix}
+libdir=${exec_prefix}/lib
+includedir=${prefix}/include
+
+Name: libtcc
+Description: Tiny C Compiler
+Version: @VERSION@
+
+Requires:
+Libs: -L${libdir} -ltcc
+Cflags: -I${includedir}
diff --git a/testing/tcl-curl/APKBUILD b/testing/tcl-curl/APKBUILD
new file mode 100644
index 00000000000..e09d4a13886
--- /dev/null
+++ b/testing/tcl-curl/APKBUILD
@@ -0,0 +1,63 @@
+# Maintainer: Ben Fuhrmannek <ben+alpine@sektioneins.de>
+pkgname=tcl-curl
+pkgver=7.22.0
+pkgrel=0
+pkgdesc="Tcl interface to cURL"
+_commit="ed4856901dee2784ceeb6d2ee0d621fe05aa0134"
+_reponame="tclcurl-fa"
+url="https://github.com/flightaware/$_reponame"
+arch="all"
+license="TCL"
+depends="tcl"
+makedepends="curl-dev tcl-dev"
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/flightaware/tclcurl-fa/archive/$_commit.tar.gz"
+builddir="$srcdir/$_reponame-$_commit"
+
+build() {
+ # shellcheck disable=SC1091
+ . /usr/lib/tclConfig.sh
+
+ local extra_configure_flags
+ if echo "$TCL_DEFS" | grep -q "DTCL_CFG_DO64BIT=1"; then
+ extra_configure_flags="--enable-64bit"
+ fi
+
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var \
+ --enable-threads \
+ $extra_configure_flags
+
+ make
+}
+
+check() {
+ ln -s generic/tclcurl.tcl .
+
+ # 'make test' is broken / works only after make install
+ ## so we start the test suite manually, which is easier than patching 'make test'
+ cat <<EOT >tclsh-test.sh
+#!/bin/sh
+echo -e "set auto_path [list [pwd] {*}\$auto_path]\nsource {\$1}" |tclsh
+EOT
+ chmod +x tclsh-test.sh
+ cat <<EOT |tclsh
+package require tcltest
+::tcltest::configure -testdir tests
+::tcltest::interpreter "[pwd]/tclsh-test.sh"
+exit [::tcltest::runAllTests]
+EOT
+}
+
+package() {
+ make -j1 DESTDIR="$pkgdir" install-binaries install-scripts install-doc
+}
+
+sha512sums="
+713892700ff701937482452ef9d03af2ea73c51afc740ca0565adae608d360d2dff087d9e5b55cf0b4ea4314e4c3885e9b3250039ac4977f222383eef3122aaf tcl-curl-7.22.0.tar.gz
+"
diff --git a/testing/tcl-lib/APKBUILD b/testing/tcl-lib/APKBUILD
deleted file mode 100644
index df9dce6a242..00000000000
--- a/testing/tcl-lib/APKBUILD
+++ /dev/null
@@ -1,34 +0,0 @@
-# Contributor: Galen Abell <galen@galenabell.com>
-# Maintainer: Galen Abell <galen@galenabell.com>
-pkgname=tcl-lib
-pkgver=1.21
-pkgrel=0
-pkgdesc="Tcl standard library"
-url="https://www.tcl.tk/software/tcllib/"
-arch="noarch"
-license="BSD-2-Clause"
-makedepends="tcl-dev"
-options="!check" # no tests
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://core.tcl-lang.org/tcllib/uv/tcllib-$pkgver.tar.gz"
-builddir="$srcdir/tcllib-$pkgver"
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --infodir=/usr/share/info \
- --localstatedir=/var
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-58ddbf392dbc8c8935a7f28be974a4ba895e934046ff1ffe8c5ab65e3db7e68b9450d420bd1d547245e7f699ea11edf698047cfe0a305a09449779037db059ab tcl-lib-1.21.tar.gz
-"
diff --git a/testing/tcl-readline/APKBUILD b/testing/tcl-readline/APKBUILD
deleted file mode 100644
index 65c57c1523d..00000000000
--- a/testing/tcl-readline/APKBUILD
+++ /dev/null
@@ -1,41 +0,0 @@
-# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer: rubicon <rubicon@mailo.com>
-pkgname=tcl-readline
-_pkgname=${pkgname//-/}
-pkgver=2.3.8
-pkgrel=0
-pkgdesc="GNU readline for Tcl"
-url="https://github.com/flightaware/tclreadline"
-arch="all"
-license="BSD-3-Clause"
-depends_dev="$pkgname"
-makedepends="tcl-dev readline-dev"
-options="!check"
-subpackages="$pkgname-doc $pkgname-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/flightaware/tclreadline/archive/refs/tags/v$pkgver.tar.gz"
-builddir="$srcdir/$_pkgname-$pkgver"
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --without-tk
- make
-}
-
-dev() {
- default_dev
- mv "$subpkgdir"/usr/lib/libtclreadline.so "$pkgdir"/usr/lib
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- install -vDm644 -t "$pkgdir"/usr/share/doc/"$pkgname" \
- AUTHORS COPYING ChangeLog INSTALL \
- README.md SCENARIO TODO sample.tclshrc
-}
-
-sha512sums="
-0c5ce53a8f4cc222de013932698e442c63b36e3f07d10b962d127444f75c28b2caf7f06b5958150748f7a1d535c577c825b9a0dd525e077a348c3ff899a74e61 tcl-readline-2.3.8.tar.gz
-"
diff --git a/testing/tcmu-runner/APKBUILD b/testing/tcmu-runner/APKBUILD
index 27137678b73..5d6da65afe2 100644
--- a/testing/tcmu-runner/APKBUILD
+++ b/testing/tcmu-runner/APKBUILD
@@ -1,26 +1,24 @@
# Contributor: Jacek Pruciak <alpine@juniorjpdj.pl>
# Maintainer: Jacek Pruciak <alpine@juniorjpdj.pl>
pkgname=tcmu-runner
-pkgver=1.5.4
-pkgrel=1
+pkgver=1.6.0
+pkgrel=5
pkgdesc="A daemon that handles the userspace side of the LIO TCM-User backstore."
url="https://github.com/open-iscsi/tcmu-runner"
-arch="all !riscv64" # blocked by ceph
+arch="all !armhf !armv7 !x86" # blocked by ceph
license="Apache-2.0"
-makedepends="cmake glib-dev kmod-dev libnl3-dev ceph-dev"
+makedepends="cmake glib-dev kmod-dev libnl3-dev ceph-dev samurai"
options="!check" # no upstream tests
subpackages="libtcmu:libs libtcmu-dev $pkgname-doc $pkgname-rbd"
source="https://github.com/open-iscsi/tcmu-runner/archive/v$pkgver/tcmu-runner-$pkgver.tar.gz
tcmu-runner-fix-i586-size_t-error.patch
- time_t-size-fix.patch
- fix-musl-compilation.patch
"
build() {
if [ "$CBUILD" != "$CHOST" ]; then
CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
fi
- cmake -B build \
+ cmake -B build -G Ninja \
-Dwith-glfs=false \
-Dwith-tcmalloc=false \
-DCMAKE_INSTALL_PREFIX=/usr \
@@ -49,8 +47,6 @@ package() {
}
sha512sums="
-e6fad89bd795ca7de38450a94f95fb4f4edb5bca32a34156f5690cf4c236f2f845578f592733a4fba29f64484a909c185b66af87ad92cf3ccff28bf4977ad2c3 tcmu-runner-1.5.4.tar.gz
+dca6d64c7bf90567357afacb9f0ba19438029172756ef06d115164610899e8a6546dea683f4d0e2018cb911d1a895b93a25b7b1770fdaca975fdfc93b77e5e4b tcmu-runner-1.6.0.tar.gz
a26fca68a73e5cc6726e880f5004b96fd0f5d3cbcaf6dd7a6a8a5e03f9089c91ec271b2517ea127b37dcead1499baac7cf6a5f23c0d4a70d13baa0107baefab3 tcmu-runner-fix-i586-size_t-error.patch
-8eb7729cc7c89a24f512bb5f206034c8404d96891291fce132d075bd20568f346907185ac70e47d580fc95e9f2112c2695139c66b30e2b37d101988920f21793 time_t-size-fix.patch
-2f1e30bbfca685ea05c5481b0e58e3a0bfe15e84652cabe2dabfe081e59313d93ca730754cd6165a848850a782cb273d3ea0976853b3b12a9718b4d3b28a520c fix-musl-compilation.patch
"
diff --git a/testing/tcmu-runner/fix-musl-compilation.patch b/testing/tcmu-runner/fix-musl-compilation.patch
deleted file mode 100644
index 70f00920cd7..00000000000
--- a/testing/tcmu-runner/fix-musl-compilation.patch
+++ /dev/null
@@ -1,143 +0,0 @@
-Summary: Fixes musl compatibility
-Upstream: in progress
-
-diff --git a/api.c b/api.c
-index 490e257..d55da0a 100644
---- a/api.c
-+++ b/api.c
-@@ -28,6 +28,8 @@
- #include "libtcmu_priv.h"
- #include "be_byteshift.h"
-
-+__thread int __tcmu_is_ework_thread = 0;
-+
- int tcmu_cdb_get_length(uint8_t *cdb)
- {
- uint8_t group_code = cdb[0] >> 5;
-@@ -74,7 +76,7 @@ uint64_t tcmu_cdb_get_lba(uint8_t *cdb)
- case 16:
- return be64toh(*((u_int64_t *)&cdb[2]));
- default:
-- assert_perror(EINVAL);
-+ assert(0);
- return 0; /* not reached */
- }
- }
-@@ -91,7 +93,7 @@ uint32_t tcmu_cdb_get_xfer_length(uint8_t *cdb)
- case 16:
- return be32toh(*((u_int32_t *)&cdb[10]));
- default:
-- assert_perror(EINVAL);
-+ assert(0);
- return 0; /* not reached */
- }
- }
-diff --git a/libtcmu.c b/libtcmu.c
-index c75bb10..1127218 100644
---- a/libtcmu.c
-+++ b/libtcmu.c
-@@ -843,24 +843,20 @@ const char *tcmu_dev_get_uio_name(struct tcmu_device *dev)
- void tcmu_set_thread_name(const char *prefix, struct tcmu_device *dev)
- {
- const char *uio = dev ? tcmu_dev_get_uio_name(dev) : NULL;
-- char cname[TCMU_THREAD_NAME_LEN];
- char *pname;
-
-- if (pthread_getname_np(pthread_self(), cname, TCMU_THREAD_NAME_LEN))
-- return;
--
- /*
- * If we are trying to set the pthread name in the
- * event work thread, we must ignore it.
- */
-- if (!strcmp(cname, "ework-thread")) {
-+ if (__tcmu_is_ework_thread) {
- tcmu_dev_warn(dev, "Do not set name for event work thread in the callback fn\n");
- return;
- }
-
- if (!prefix) {
- tcmu_dev_err(dev, "Failed to set name for thread %lu\n",
-- pthread_self());
-+ (long unsigned int)pthread_self());
- return;
- }
-
-diff --git a/libtcmu_common.h b/libtcmu_common.h
-index 350693b..2897e1f 100644
---- a/libtcmu_common.h
-+++ b/libtcmu_common.h
-@@ -14,6 +14,7 @@
- #define __LIBTCMU_COMMON_H
-
- #include <stdbool.h>
-+#include <pthread.h>
-
- #ifdef __cplusplus
- extern "C" {
-@@ -193,6 +194,8 @@ void __tcmu_sense_set_data(uint8_t *sense_buf, uint8_t key, uint16_t asc_ascq);
- */
- void tcmu_thread_cancel(pthread_t thread);
-
-+extern __thread int __tcmu_is_ework_thread;
-+
- #ifdef __cplusplus
- }
- #endif
-diff --git a/libtcmu_log.c b/libtcmu_log.c
-index f7b6e2f..fee27a4 100644
---- a/libtcmu_log.c
-+++ b/libtcmu_log.c
-@@ -403,7 +403,6 @@ static int output_to_fd(int pri, const char *timestamp,
- int fd = (intptr_t) data;
- char *buf, *msg;
- int count, ret, written = 0, r, pid = 0;
-- char pname[TCMU_THREAD_NAME_LEN];
-
- if (fd == -1)
- return -1;
-@@ -412,13 +411,10 @@ static int output_to_fd(int pri, const char *timestamp,
- if (pid <= 0)
- return -1;
-
-- if (pthread_getname_np(pthread_self(), pname, TCMU_THREAD_NAME_LEN))
-- return -1;
--
- /*
- * format: timestamp pid [loglevel] msg
- */
-- ret = asprintf(&msg, "%s %d:%s [%s] %s", timestamp, pid, pname,
-+ ret = asprintf(&msg, "%s %d [%s] %s", timestamp, pid,
- loglevel_string(pri), str);
- if (ret < 0)
- return -1;
-diff --git a/tcmur_work.c b/tcmur_work.c
-index ee567e9..801e305 100644
---- a/tcmur_work.c
-+++ b/tcmur_work.c
-@@ -41,16 +41,11 @@ free_work:
-
- static void __tcmur_flush_work(struct tcmur_work *work)
- {
-- char pname[TCMU_THREAD_NAME_LEN];
--
-- if (pthread_getname_np(pthread_self(), pname, TCMU_THREAD_NAME_LEN))
-- return;
--
- /*
- * The event work thread may need to do a handler reopen
- * call and try to flush itself. Just ignore.
- */
-- if (!strcmp(pname, "ework-thread"))
-+ if (__tcmu_is_ework_thread)
- return;
-
- /*
-@@ -79,6 +74,7 @@ static void *tcmur_work_fn(void *data)
- struct private *p = data;
-
- tcmu_set_thread_name("ework-thread", NULL);
-+ __tcmu_is_ework_thread = 1;
-
- p->work_fn(p->data);
-
diff --git a/testing/tcmu-runner/time_t-size-fix.patch b/testing/tcmu-runner/time_t-size-fix.patch
deleted file mode 100644
index 932d18e602a..00000000000
--- a/testing/tcmu-runner/time_t-size-fix.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-Summary: Fixes 32-bit architecture compilation
-Upstream: in progress
-
-diff --git a/main.c b/main.c
-index 475279a..f3295de 100644
---- a/main.c
-+++ b/main.c
-@@ -657,7 +657,7 @@ int tcmur_get_time(struct tcmu_device *dev, struct timespec *time)
-
- ret = clock_gettime(CLOCK_MONOTONIC_COARSE, time);
- if (!ret) {
-- tcmu_dev_dbg(dev, "Current time %lu secs.\n", time->tv_sec);
-+ tcmu_dev_dbg(dev, "Current time %jd secs.\n", (intmax_t)time->tv_sec);
- return 0;
- }
-
-@@ -700,9 +700,9 @@ static bool get_next_cmd_timeout(struct tcmu_device *dev,
- tmo->tv_sec = 0;
- }
-
-- tcmu_dev_dbg(dev, "Next cmd id %hu timeout in %lu secs. Current time %lu. Start time %lu\n",
-- tcmur_cmd->lib_cmd->cmd_id, tmo->tv_sec,
-- curr_time->tv_sec, tcmur_cmd->start_time.tv_sec);
-+ tcmu_dev_dbg(dev, "Next cmd id %hu timeout in %jd secs. Current time %jd. Start time %jd\n",
-+ tcmur_cmd->lib_cmd->cmd_id, (intmax_t)tmo->tv_sec,
-+ (intmax_t)curr_time->tv_sec, (intmax_t)tcmur_cmd->start_time.tv_sec);
- break;
- }
- pthread_spin_unlock(&rdev->lock);
diff --git a/testing/tcpreplay/APKBUILD b/testing/tcpreplay/APKBUILD
deleted file mode 100644
index ca74d4d145b..00000000000
--- a/testing/tcpreplay/APKBUILD
+++ /dev/null
@@ -1,60 +0,0 @@
-# Contributor: Fabian Affolter <fabian@affolter-engineering.ch>
-# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
-pkgname=tcpreplay
-pkgver=4.4.1
-pkgrel=0
-pkgdesc="Replay captured network traffic"
-url="https://tcpreplay.appneta.com/"
-arch="all"
-license="GPL-3.0-or-later"
-makedepends="libdnet-dev libpcap-dev tcpdump"
-subpackages="$pkgname-doc"
-source="https://downloads.sourceforge.net/tcpreplay/tcpreplay-$pkgver.tar.gz
- skip-tests-require-root.patch"
-
-case "$CARCH" in
-arm*)
- options="$options !check" # bus error
- ;;
-esac
-
-# secfixes:
-# 4.4.1-r0:
-# - CVE-2021-45386
-# - CVE-2021-45387
-# 4.3.2-r0:
-# - CVE-2019-8381
-# - CVE-2019-8376
-# - CVE-2019-8377
-# 4.3.4-r0:
-# - CVE-2020-24265
-# - CVE-2020-24266
-
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --infodir=/usr/share/info \
- --localstatedir=/var \
- --enable-dynamic-link \
- --enable-local-libopts \
- --disable-libopts-install
- make
-}
-
-check() {
- make -C test tcpprep
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-e73bf9e7f72b72c91d22a26558b2eab3cb0d5afb8f89bb91cc8165fa5dcb536987ca8bce20cba601dbfd545ad236d47febb5b372aa2dd6b289069cb12afad393 tcpreplay-4.4.1.tar.gz
-b6491f1539d14721ab6cde567918fea857a3e230dad1b03dee872bc2c4cb8c8d86aa51d3ed08da322a5af3f6a508fab991d10d58c14e3c7ddd8aff971fe91abb skip-tests-require-root.patch
-"
diff --git a/testing/tcpreplay/skip-tests-require-root.patch b/testing/tcpreplay/skip-tests-require-root.patch
deleted file mode 100644
index a8fc70c0845..00000000000
--- a/testing/tcpreplay/skip-tests-require-root.patch
+++ /dev/null
@@ -1,109 +0,0 @@
-These tests require root to run. Disable them so that we can still run the other tests
-diff --git a/test/Makefile.in b/test/Makefile.in.new
-index d325ee2dd6..68ee3c3628 100644
---- a/test/Makefile.in
-+++ b/test/Makefile.in.new
-@@ -790,16 +790,10 @@ include_dest:
- if [ $? ] ; then $(PRINTF) "\t\t%s\n" "FAILED"; else $(PRINTF) "\t\t%s\n" "OK"; fi
-
- replay_basic:
-- $(PRINTF) "%s" "[tcpreplay] Basic test: "
-- $(PRINTF) "%s\n" "*** [tcpreplay] Basic test: " >> test.log
-- $(TCPREPLAY) $(ENABLE_DEBUG) -i $(nic1) -t $(TEST_PCAP) >> test.log 2>&1
-- if [ $? ] ; then $(PRINTF) "\t\t\t%s\n" "FAILED"; else $(PRINTF) "\t\t\t%s\n" "OK"; fi
-+ $(PRINTF) "%s\t\t\t\t%s\n" "[tcpreplay] Basic test:" "[SKIP]"
-
- replay_cache:
-- $(PRINTF) "%s" "[tcpreplay] Cache test: "
-- $(PRINTF) "%s\n" "*** [tcpreplay] Cache test: " >> test.log
-- $(TCPREPLAY) $(ENABLE_DEBUG) -c $(srcdir)/test.cidr -i $(nic1) -I $(nic2) -t $(TEST_PCAP) >> test.log 2>&1
-- if [ $? ] ; then $(PRINTF) "\t\t\t%s\n" "FAILED"; else $(PRINTF) "\t\t\t%s\n" "OK"; fi
-+ $(PRINTF) "%s\t\t\t\t%s\n" "[tcpreplay] Cache test:" "[SKIP]"
-
- replay_accurate:
- $(PRINTF) "%s" "[tcpreplay] Accurate test: "
-@@ -808,10 +802,7 @@ replay_accurate:
- if [ $? ] ; then $(PRINTF) "\t\t\t%s\n" "FAILED"; else $(PRINTF) "\t\t\t%s\n" "OK"; fi
-
- replay_stats:
-- $(PRINTF) "%s" "[tcpreplay] Statistics test: "
-- $(PRINTF) "%s\n" "*** [tcpreplay] Statistics test: " >> test.log
-- $(TCPREPLAY) $(ENABLE_DEBUG) --stats=1 -i $(nic1) $(TEST_PCAP) >> test.log 2>&1
-- if [ $? ] ; then $(PRINTF) "\t\t\t%s\n" "FAILED"; else $(PRINTF) "\t\t\t%s\n" "OK"; fi
-+ $(PRINTF) "%s\t\t\t%s\n" "[tcpreplay] Statistics test:" "[SKIP]"
-
- rewrite_portmap:
- $(PRINTF) "%s" "[tcprewrite] Portmap test: "
-@@ -1028,40 +1019,22 @@ rewrite_l7fuzzing:
- if [ $? ] ; then $(PRINTF) "\t\t\t%s\n" "FAILED"; else $(PRINTF) "\t\t\t%s\n" "OK"; fi
-
- replay_pps:
-- $(PRINTF) "%s" "[tcpreplay] Packets/sec test: "
-- $(PRINTF) "%s\n" "*** [tcpreplay] Packets/sec test: " >> test.log
-- $(TCPREPLAY) $(ENABLE_DEBUG) -i $(nic1) -p 25 $(TEST_PCAP) >> test.log 2>&1
-- if [ $? ] ; then $(PRINTF) "\t\t\t%s\n" "FAILED"; else $(PRINTF) "\t\t\t%s\n" "OK"; fi
-+ $(PRINTF) "%s\t\t\t%s\n" "[tcpreplay] Packets/sec test:" "[SKIP]"
-
- replay_rate:
-- $(PRINTF) "%s" "[tcpreplay] Mbps test: "
-- $(PRINTF) "%s\n" "*** [tcpreplay] Mbps test: " >> test.log
-- $(TCPREPLAY) $(ENABLE_DEBUG) -i $(nic1) -M 25.0 $(TEST_PCAP) >> test.log 2>&1
-- if [ $? ] ; then $(PRINTF) "\t\t\t\t%s\n" "FAILED"; else $(PRINTF) "\t\t\t\t%s\n" "OK"; fi
-+ $(PRINTF) "%s\t\t\t\t%s\n" "[tcpreplay] Mbps test:" "[SKIP]"
-
- replay_multi:
-- $(PRINTF) "%s" "[tcpreplay] Multiplier test: "
-- $(PRINTF) "%s\n" "*** [tcpreplay] Multiplier test: " >> test.log
-- $(TCPREPLAY) $(ENABLE_DEBUG) -i $(nic1) -x 25.0 $(TEST_PCAP) >> test.log 2>&1
-- if [ $? ] ; then $(PRINTF) "\t\t\t%s\n" "FAILED"; else $(PRINTF) "\t\t\t%s\n" "OK"; fi
-+ $(PRINTF) "%s\t\t\t%s\n" "[tcpreplay] Multiplier test:" "[SKIP]"
-
- replay_pps_multi:
-- $(PRINTF) "%s" "[tcpreplay] Packets/sec Multiplier test: "
-- $(PRINTF) "%s\n" "*** [tcpreplay] Packets/sec Multiplier test: " >> test.log
-- $(TCPREPLAY) $(ENABLE_DEBUG) -i $(nic1) -p 100 --pps-multi=5 $(TEST_PCAP) >> test.log 2>&1
-- if [ $? ] ; then $(PRINTF) "\t%s\n" "FAILED"; else $(PRINTF) "\t%s\n" "OK"; fi
-+ $(PRINTF) "%s\t%s\n" "[tcpreplay] Packets/sec Multiplier test:" "[SKIP]"
-
- replay_top:
-- $(PRINTF) "%s" "[tcpreplay] Topspeed test: "
-- $(PRINTF) "%s\n" "*** [tcpreplay] Topspeed test: " >> test.log
-- $(TCPREPLAY) $(ENABLE_DEBUG) -i $(nic1) -t $(TEST_PCAP) >> test.log 2>&1
-- if [ $? ] ; then $(PRINTF) "\t\t\t%s\n" "FAILED"; else $(PRINTF) "\t\t\t%s\n" "OK"; fi
-+ $(PRINTF) "%s\t\t\t%s\n" "[tcpreplay] Topspeed test:" "[SKIP]"
-
- replay_precache:
-- $(PRINTF) "%s" "[tcpreplay] Precache test: "
-- $(PRINTF) "%s\n" "*** [tcpreplay] Precache test: " >> test.log
-- $(TCPREPLAY) $(ENABLE_DEBUG) -i $(nic1) --preload-pcap $(TEST_PCAP) >> test.log 2>&1
-- if [ $? ] ; then $(PRINTF) "\t\t\t%s\n" "FAILED"; else $(PRINTF) "\t\t\t%s\n" "OK"; fi
-+ $(PRINTF) "%s\t\t\t%s\n" "[tcpreplay] Precache test:" "[SKIP]"
-
- datadump_mode:
- $(PRINTF) "%s" "[tcpreplay] Data dump test: "
-@@ -1070,22 +1046,13 @@ datadump_mode:
- if [ $? ] ; then $(PRINTF) "\t\t\t%s\n" "FAILED"; else $(PRINTF) "\t\t\t%s\n" "OK"; fi
-
- replay_config:
-- $(PRINTF) "%s" "[tcpreplay] Config file/VLAN add test: "
-- $(PRINTF) "%s\n" "*** [tcpreplay] Config file/VLAN add test: " >> test.log
-- $(TCPREPLAY) $(ENABLE_DEBUG) --load-opts=config $(TEST_PCAP) >> test.log 2>&1
-- if [ $? ] ; then $(PRINTF) "\t\t%s\n" "FAILED"; else $(PRINTF) "\t\t%s\n" "OK"; fi
-+ $(PRINTF) "%s\t\t%s\n" "[tcpreplay] Config file/VLAN add test:" "[SKIP]"
-
- replay_dualfile:
-- $(PRINTF) "%s" "[tcpreplay] Dual file test: "
-- $(PRINTF) "%s\n" "*** [tcpreplay] Dual file test: " >> test.log
-- $(TCPREPLAY) $(ENABLE_DEBUG) -i $(nic1) -I $(nic2) --dualfile $(TEST_PCAP) $(TEST_PCAP) >> test.log 2>&1
-- if [ $? ] ; then $(PRINTF) "\t\t\t%s\n" "FAILED"; else $(PRINTF) "\t\t\t%s\n" "OK"; fi
-+ $(PRINTF) "%s\t\t\t%s\n" "[tcpreplay] Dual file test:" "[SKIP]"
-
- replay_maxsleep:
-- $(PRINTF) "%s" "[tcpreplay] Maximum sleep test: "
-- $(PRINTF) "%s\n" "*** [tcpreplay] Maximum sleep test: " >> test.log
-- $(TCPREPLAY) $(ENABLE_DEBUG) -i $(nic1) --maxsleep=20 $(TEST_PCAP) $(TEST_PCAP) >> test.log 2>&1
-- if [ $? ] ; then $(PRINTF) "\t\t%s\n" "FAILED"; else $(PRINTF) "\t\t%s\n" "OK"; fi
-+ $(PRINTF) "%s\t\t\t%s\n" "[tcpreplay] Maximum sleep test:" "[SKIP]"
-
- clean:
- rm -f *1 test.log core* *~ primary.data secondary.data
diff --git a/testing/td-agent-bit/APKBUILD b/testing/td-agent-bit/APKBUILD
index 89bb1a639c9..3d6bc513f6e 100644
--- a/testing/td-agent-bit/APKBUILD
+++ b/testing/td-agent-bit/APKBUILD
@@ -3,10 +3,12 @@
pkgname=td-agent-bit
_pkgname=fluent-bit
pkgver=0.10.1
-pkgrel=3
+pkgrel=4
pkgdesc="Fast and Lightweight Log/Data Forwarder [fluent-bit]"
url="http://fluentbit.io"
-arch="all !aarch64 !s390x !riscv64"
+#arch="all !aarch64 !s390x !riscv64"
+# fails to build
+arch=""
license="Apache-2.0"
makedepends="cmake linux-headers zlib-dev mbedtls-dev"
subpackages="$pkgname-dev $pkgname-doc"
diff --git a/testing/tealdeer/APKBUILD b/testing/tealdeer/APKBUILD
new file mode 100644
index 00000000000..fc824663c8e
--- /dev/null
+++ b/testing/tealdeer/APKBUILD
@@ -0,0 +1,48 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=tealdeer
+pkgver=1.6.1
+pkgrel=2
+pkgdesc="Very fast implementation of tldr in Rust"
+url="https://dbrgn.github.io/tealdeer/"
+arch="all"
+license="MIT AND Apache-2.0"
+makedepends="cargo openssl-dev cargo-auditable"
+subpackages="
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
+ "
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/dbrgn/tealdeer/archive/refs/tags/v$pkgver.tar.gz
+ use-system-tls.patch
+ "
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm755 target/release/tldr -t "$pkgdir"/usr/bin/
+
+ install -Dm644 completion/bash_tealdeer \
+ "$pkgdir"/usr/share/bash-completion/completions/tldr
+ install -Dm644 completion/fish_tealdeer \
+ "$pkgdir"/usr/share/fish/vendor_completions.d/tldr.fish
+ install -Dm644 completion/zsh_tealdeer \
+ "$pkgdir"/usr/share/zsh/site-functions/_tldr
+}
+
+sha512sums="
+2742e76fce794ffe98839b85b708a5b8452ec8f7b1b737ea522e4e1c37cdadff60ff95a5d353bde0cbdf57d00026ac71f065ea045d1435eb93c7a74d7c732af2 tealdeer-1.6.1.tar.gz
+f7f0200d7d84b6533ba25c1456e9b3cf388f3bae43c4399705caeffae5497d2bf26c4826039a94fe356cbfa052346913ad6e3caee6fb2ca95abd2db682fa0bcd use-system-tls.patch
+"
diff --git a/testing/tealdeer/use-system-tls.patch b/testing/tealdeer/use-system-tls.patch
new file mode 100644
index 00000000000..f419f71f573
--- /dev/null
+++ b/testing/tealdeer/use-system-tls.patch
@@ -0,0 +1,219 @@
+diff --git a/Cargo.lock b/Cargo.lock
+index baf16a6..5881ca9 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -347,6 +347,21 @@ version = "1.0.7"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
+
++[[package]]
++name = "foreign-types"
++version = "0.3.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
++dependencies = [
++ "foreign-types-shared",
++]
++
++[[package]]
++name = "foreign-types-shared"
++version = "0.1.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
++
+ [[package]]
+ name = "form_urlencoded"
+ version = "1.1.0"
+@@ -532,6 +547,19 @@ dependencies = [
+ "tokio-rustls",
+ ]
+
++[[package]]
++name = "hyper-tls"
++version = "0.5.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905"
++dependencies = [
++ "bytes",
++ "hyper",
++ "native-tls",
++ "tokio",
++ "tokio-native-tls",
++]
++
+ [[package]]
+ name = "idna"
+ version = "0.3.0"
+@@ -665,6 +693,24 @@ dependencies = [
+ "windows-sys 0.36.1",
+ ]
+
++[[package]]
++name = "native-tls"
++version = "0.2.11"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "07226173c32f2926027b63cce4bcd8076c3552846cbe7925f3aaffeac0a3b92e"
++dependencies = [
++ "lazy_static",
++ "libc",
++ "log",
++ "openssl",
++ "openssl-probe",
++ "openssl-sys",
++ "schannel",
++ "security-framework",
++ "security-framework-sys",
++ "tempfile",
++]
++
+ [[package]]
+ name = "ndk-context"
+ version = "0.1.1"
+@@ -702,12 +748,51 @@ version = "1.15.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "e82dad04139b71a90c080c8463fe0dc7902db5192d939bd0950f074d014339e1"
+
++[[package]]
++name = "openssl"
++version = "0.10.42"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "12fc0523e3bd51a692c8850d075d74dc062ccf251c0110668cbd921917118a13"
++dependencies = [
++ "bitflags",
++ "cfg-if",
++ "foreign-types",
++ "libc",
++ "once_cell",
++ "openssl-macros",
++ "openssl-sys",
++]
++
++[[package]]
++name = "openssl-macros"
++version = "0.1.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "b501e44f11665960c7e7fcf062c7d96a14ade4aa98116c004b2e37b5be7d736c"
++dependencies = [
++ "proc-macro2",
++ "quote",
++ "syn",
++]
++
+ [[package]]
+ name = "openssl-probe"
+ version = "0.1.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf"
+
++[[package]]
++name = "openssl-sys"
++version = "0.9.77"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "b03b84c3b2d099b81f0953422b4d4ad58761589d0229b5506356afca05a3670a"
++dependencies = [
++ "autocfg",
++ "cc",
++ "libc",
++ "pkg-config",
++ "vcpkg",
++]
++
+ [[package]]
+ name = "os_str_bytes"
+ version = "6.3.0"
+@@ -742,6 +827,12 @@ version = "0.1.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
+
++[[package]]
++name = "pkg-config"
++version = "0.3.26"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6ac9a59f73473f1b8d852421e59e64809f025994837ef743615c6d0c5b305160"
++
+ [[package]]
+ name = "predicates"
+ version = "2.1.1"
+@@ -882,10 +973,12 @@ dependencies = [
+ "http-body",
+ "hyper",
+ "hyper-rustls",
++ "hyper-tls",
+ "ipnet",
+ "js-sys",
+ "log",
+ "mime",
++ "native-tls",
+ "once_cell",
+ "percent-encoding",
+ "pin-project-lite",
+@@ -896,6 +989,7 @@ dependencies = [
+ "serde_json",
+ "serde_urlencoded",
+ "tokio",
++ "tokio-native-tls",
+ "tokio-rustls",
+ "tower-service",
+ "url",
+@@ -1209,6 +1303,16 @@ dependencies = [
+ "winapi",
+ ]
+
++[[package]]
++name = "tokio-native-tls"
++version = "0.3.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f7d995660bd2b7f8c1568414c1126076c13fbb725c40112dc0120b78eb9b717b"
++dependencies = [
++ "native-tls",
++ "tokio",
++]
++
+ [[package]]
+ name = "tokio-rustls"
+ version = "0.23.4"
+@@ -1313,6 +1417,12 @@ dependencies = [
+ "percent-encoding",
+ ]
+
++[[package]]
++name = "vcpkg"
++version = "0.2.15"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426"
++
+ [[package]]
+ name = "version_check"
+ version = "0.9.4"
+diff --git a/Cargo.toml b/Cargo.toml
+index de29b01..3e2e22a 100644
+--- a/Cargo.toml
++++ b/Cargo.toml
+@@ -45,7 +45,7 @@ tempfile = "3.1.0"
+ filetime = "0.2.10"
+
+ [features]
+-default = ["native-roots"]
++default = ["reqwest/native-tls"]
+ native-roots = ["reqwest/rustls-tls-native-roots"]
+ webpki-roots = ["reqwest/rustls-tls-webpki-roots"]
+ logging = ["env_logger"]
+diff --git a/src/main.rs b/src/main.rs
+index 8f601e4..b538b9c 100644
+--- a/src/main.rs
++++ b/src/main.rs
+@@ -16,14 +16,6 @@
+ #![allow(clippy::struct_excessive_bools)]
+ #![allow(clippy::too_many_lines)]
+
+-#[cfg(any(
+- all(feature = "native-roots", feature = "webpki-roots"),
+- not(any(feature = "native-roots", feature = "webpki-roots")),
+-))]
+-compile_error!(
+- "exactly one of feature \"native-roots\" and feature \"webpki-roots\" must be enabled"
+-);
+-
+ use std::{env, process};
+
+ use app_dirs::AppInfo;
diff --git a/testing/teapot-tools/APKBUILD b/testing/teapot-tools/APKBUILD
new file mode 100644
index 00000000000..addf57c753c
--- /dev/null
+++ b/testing/teapot-tools/APKBUILD
@@ -0,0 +1,48 @@
+# Contributor: lauren n. liberda <lauren@selfisekai.rocks>
+# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
+pkgname=teapot-tools
+pkgver=0.4.2
+pkgrel=2
+pkgdesc="Replacement for depot_tools (gclient) and luci-go (cipd)"
+url="https://codeberg.org/selfisekai/teapot_tools"
+# armhf: ci hangs
+# riscv64: ci broken
+# x86: segfaults
+arch="all !armhf !riscv64 !x86"
+license="Apache-2.0"
+depends="git"
+makedepends="
+ cargo
+ cargo-auditable
+ openssl-dev
+ protoc
+ python3-dev
+ "
+source="teapot_tools-$pkgver.tar.gz::https://codeberg.org/selfisekai/teapot_tools/archive/v$pkgver.tar.gz"
+options="net" # cargo crates
+builddir="$srcdir/teapot_tools"
+
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release --bin download_from_google_storage
+ cargo auditable build --frozen --release --bin gclient
+}
+
+check() {
+ cargo test --release
+}
+
+package() {
+ install -Dm755 target/release/download_from_google_storage "$pkgdir"/usr/bin/download_from_google_storage
+ install -Dm755 target/release/gclient "$pkgdir"/usr/bin/gclient
+}
+
+sha512sums="
+93e85fb8ac4913b904a31c8907ad382cdf18fcabfa8f8f3ce8eeee28edde4d5d6420ef7b05215eb592638cb1be080ce4f3ea07608b510f644f1a5fc6a73d704c teapot_tools-0.4.2.tar.gz
+"
diff --git a/testing/telegram-tdlib/APKBUILD b/testing/telegram-tdlib/APKBUILD
index b3bda314784..e185a8ca5cf 100644
--- a/testing/telegram-tdlib/APKBUILD
+++ b/testing/telegram-tdlib/APKBUILD
@@ -2,36 +2,39 @@
# Contributor: Oleg Titov <oleg.titov@gmail.com>
# Maintainer: Oleg Titov <oleg.titov@gmail.com>
pkgname=telegram-tdlib
-pkgver=1.8.0
-pkgrel=0
+pkgver=1.8.9
+pkgrel=1
+# they didn't tag the release
+_gitrev=a7952f38363084df0e78fe9b7bd833262ec67521
pkgdesc="Cross-platform library for building Telegram clients"
url="https://core.telegram.org/tdlib"
arch="all !s390x" # fails to build on big-endian
license="BSL-1.0"
-options="!check" # No test suite from upstream
-makedepends="cmake openssl-dev zlib-dev gperf linux-headers"
+makedepends="cmake openssl-dev>3 zlib-dev gperf linux-headers samurai"
subpackages="$pkgname-static $pkgname-dev $pkgname-doc"
-_commit=7d41d9eaa58a6e0927806283252dc9e74eda5512
-source="$pkgname-$pkgver.tar.gz::https://github.com/tdlib/td/archive/$_commit.tar.gz"
-builddir="$srcdir/td-$_commit"
+source="$pkgname-$pkgver.tar.gz::https://github.com/tdlib/td/archive/$_gitrev.tar.gz"
+builddir="$srcdir/td-$_gitrev"
+options="!check" # fail for some reason
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=MinSizeRel \
- -DCMAKE_INSTALL_PREFIX:PATH=/usr
+ -DCMAKE_INSTALL_PREFIX=/usr
cmake --build build
}
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
package() {
DESTDIR="$pkgdir" cmake --install build
- install -m644 -D -t "$pkgdir/usr/share/licenses/$pkgname" \
- LICENSE_1_0.txt
install -m644 -D -t "$pkgdir/usr/share/doc/$pkgname" \
README.md
}
sha512sums="
-f9937362a307bf7f345630f14d00540a7eb05a6c1fcb9d5671e609c2142a73e587432348c61102eda9e748f5b2aef0b1bd2abf73419e4839ad6bd9fe11877dae telegram-tdlib-1.8.0.tar.gz
+253140c3f93b2dd437b7a22643b1ec1a0e0f8ccd4d765dea0afae2373dbb58ee593e1ebdd4d9adfd5062f0bc347190bc2492d47e60cf44065fdd9c6b0993ebd7 telegram-tdlib-1.8.9.tar.gz
"
diff --git a/testing/templ/APKBUILD b/testing/templ/APKBUILD
new file mode 100644
index 00000000000..b8b8686dbc4
--- /dev/null
+++ b/testing/templ/APKBUILD
@@ -0,0 +1,40 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=templ
+pkgver=0.2.598
+pkgrel=2
+pkgdesc="Language for writing HTML user interface in Go"
+url="https://templ.guide/"
+arch="all"
+license="MIT"
+makedepends="go"
+checkdepends="gopls"
+source="$pkgname-$pkgver.tar.gz::https://github.com/a-h/templ/archive/refs/tags/v$pkgver.tar.gz"
+options="net" # download Go modules
+
+# /cmd/templ/lspcmd: hangs on s390x
+# /cmd/templ/generatecmd/testwatch: panics on 32-bit platforms (unaligned 64-bit atomic operation)
+case "$CARCH" in
+ s390x|x86|armhf|armv7) options="$options !check";;
+esac
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ go build -v ./cmd/templ
+}
+
+check() {
+ # -trimpath is required for tests inside /cmd/templ/generatecmd/testwatch to pass
+ # The tests create templates inside /tmp and try to watch those directories
+ GOFLAGS="${GOFLAGS/-trimpath/}" go test ./...
+}
+
+package() {
+ install -Dm755 $pkgname -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+7c7988e27498e391701c7df29663c3a44c2a50f97ea668a6fd84e54ee30dd47f3c52fe904f27b0dd184718f5518bee284e4899da48e6a00109691eaa65da6092 templ-0.2.598.tar.gz
+"
diff --git a/testing/tengine/APKBUILD b/testing/tengine/APKBUILD
deleted file mode 100644
index c8016d38f54..00000000000
--- a/testing/tengine/APKBUILD
+++ /dev/null
@@ -1,84 +0,0 @@
-# Maintainer: Cameron Banta <cbanta@gmail.com>
-# Contributor: Jeff Bilyk <jbilyk@gmail.com>
-# Contributor: Bartłomiej Piotrowski <nospam@bpiotrowski.pl>
-# Contributor: Dennis Przytarski <dennis@przytarski.com>
-pkgname=tengine
-pkgver=2.3.3
-pkgrel=1
-pkgdesc="Lightweight HTTP and reverse proxy server. It is based on the Nginx HTTP server"
-url="https://tengine.taobao.org/"
-arch="all !aarch64"
-license="BSD-2-Clause"
-pkgusers="tengine"
-pkggroups="tengine www-data"
-options="!check" # Makefile test cmd does not work
-replaces="nginx"
-makedepends="linux-headers gd-dev geoip-dev libxml2-dev libxslt-dev
- openssl-dev pcre-dev perl-dev pkgconf zlib-dev"
-install="$pkgname.pre-install $pkgname.pre-upgrade"
-subpackages="$pkgname-doc $pkgname-openrc"
-source="http://tengine.taobao.org/download/tengine-$pkgver.tar.gz
- tengine.initd
- tengine.logrotate
- "
-
-build() {
- ./configure \
- --prefix=/var/lib/$pkgname \
- --sbin-path=/usr/sbin/$pkgname \
- --conf-path=/etc/$pkgname/$pkgname.conf \
- --pid-path=/run/$pkgname/$pkgname.pid \
- --lock-path=/run/$pkgname/$pkgname.lock \
- --http-client-body-temp-path=/var/tmp/$pkgname/client_body \
- --http-proxy-temp-path=/var/tmp/$pkgname/proxy \
- --http-fastcgi-temp-path=/var/tmp/$pkgname/fastcgi \
- --http-uwsgi-temp-path=/var/tmp/$pkgname/uwsgi \
- --http-scgi-temp-path=/var/tmp/$pkgname/scgi \
- --with-perl_modules_path=/usr/lib/perl5/vendor_perl \
- --user=$pkgusers \
- --group=${pkggroups%% *} \
- --with-file-aio \
- --with-http_addition_module \
- --with-http_auth_request_module \
- --with-http_dav_module \
- --with-http_degradation_module \
- --with-http_flv_module \
- --with-http_geoip_module \
- --with-http_gunzip_module \
- --with-http_gzip_static_module \
- --with-http_image_filter_module \
- --with-http_mp4_module \
- --with-http_random_index_module \
- --with-http_realip_module \
- --with-http_secure_link_module \
- --with-http_slice_module \
- --with-http_ssl_module \
- --with-http_stub_status_module \
- --with-http_sub_module \
- --with-http_perl_module \
- --with-http_v2_module \
- --with-http_xslt_module \
- --with-ipv6 \
- --with-mail \
- --with-mail_ssl_module \
- --with-pcre-jit \
- --with-threads
-
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-
- install -m755 -D "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
- install -m644 -D "$srcdir"/$pkgname.logrotate "$pkgdir"/etc/logrotate.d/$pkgname
-
- install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
- install -Dm644 README.markdown "$pkgdir"/usr/share/doc/$pkgname/README
-}
-
-sha512sums="
-077ef6dbbb122002f02655e470a7a38a0c5adfe6135faa5c10dce2c38d6327aee12f0248b22862b9989557cdff4981bb7004e702431525b8f591ec87c3fcd46c tengine-2.3.3.tar.gz
-3075188f052bf67b4079e78a8b0c56ede7cd8cee890031bf970e45fe8ebdc5739ef092de691108d78b8a111a07cfc98e7ff30234f6a8583db3c647e5fea7d109 tengine.initd
-b0ad2fffe47210805ba09667dc40b09d30c7d1ff19fcb0fd4aa548355dcb992a2f9a7a9d3b0992a81e20eecbe37a91c3646b56324daf356c1d811e526fe663f3 tengine.logrotate
-"
diff --git a/testing/tengine/tengine.initd b/testing/tengine/tengine.initd
deleted file mode 100644
index 6386d50c601..00000000000
--- a/testing/tengine/tengine.initd
+++ /dev/null
@@ -1,70 +0,0 @@
-#!/sbin/openrc-run
-
-extra_started_commands="upgrade reload"
-extra_commands="configtest"
-
-depend() {
- need net
- use dns logger netmount
-}
-
-start() {
- configtest || return 1
- ebegin "Starting tengine"
- start-stop-daemon --start --pidfile /var/run/tengine.pid \
- --exec /usr/sbin/tengine -- -c /etc/tengine/tengine.conf
- eend $? "Failed to start tengine"
-}
-
-stop() {
- configtest || return 1
- ebegin "Stopping tengine"
- start-stop-daemon --stop --pidfile /var/run/tengine.pid
- eend $? "Failed to stop tengine"
- rm -f /var/run/tengine.pid
-}
-
-reload() {
- configtest || return 1
- ebegin "Refreshing tengine' configuration"
- kill -HUP `cat /var/run/tengine.pid` &>/dev/null
- eend $? "Failed to reload tengine"
-}
-
-upgrade() {
- configtest || return 1
- ebegin "Upgrading tengine"
-
- einfo "Sending USR2 to old binary"
- kill -USR2 `cat /var/run/tengine.pid` &>/dev/null
-
- einfo "Sleeping 3 seconds before pid-files checking"
- sleep 3
-
- if [ ! -f /var/run/tengine.pid.oldbin ]; then
- eerror "File with old pid not found"
- return 1
- fi
-
- if [ ! -f /var/run/tengine.pid ]; then
- eerror "New binary failed to start"
- return 1
- fi
-
- einfo "Sleeping 3 seconds before WINCH"
- sleep 3 ; kill -WINCH `cat /var/run/tengine.pid.oldbin`
-
- einfo "Sending QUIT to old binary"
- kill -QUIT `cat /var/run/tengine.pid.oldbin`
-
- einfo "Upgrade completed"
-
- eend $? "Upgrade failed"
-}
-
-configtest() {
- ebegin "Checking tengine' configuration"
- mkdir -p /tmp/tengine
- /usr/sbin/tengine -c /etc/tengine/tengine.conf -t
- eend $? "failed, please correct errors above"
-}
diff --git a/testing/tengine/tengine.logrotate b/testing/tengine/tengine.logrotate
deleted file mode 100644
index e4d33553a59..00000000000
--- a/testing/tengine/tengine.logrotate
+++ /dev/null
@@ -1,12 +0,0 @@
-# Copyright 1999-2010 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/www-servers/nginx/files/nginx.logrotate,v 1.1 2010/01/03 20:29:40 djc Exp $
-
-/var/log/tengine/*.log {
- missingok
- sharedscripts
- postrotate
- test -r /var/run/tengine.pid && kill -USR1 `cat /var/run/tengine.pid`
- endscript
-}
-
diff --git a/testing/tengine/tengine.pre-install b/testing/tengine/tengine.pre-install
deleted file mode 100644
index bb59be1f4f2..00000000000
--- a/testing/tengine/tengine.pre-install
+++ /dev/null
@@ -1,9 +0,0 @@
-#!/bin/sh
-
-addgroup -S -g 82 www-data 2>/dev/null
-addgroup -S tengine 2>/dev/null
-adduser -S -D -H -h /var/www/localhost/htdocs -s /sbin/nologin \
- -G tengine -g tengine tengine 2>/dev/null
-addgroup tengine www-data 2>/dev/null
-
-exit 0
diff --git a/testing/tengine/tengine.pre-upgrade b/testing/tengine/tengine.pre-upgrade
deleted file mode 120000
index 9aaa3c27f2d..00000000000
--- a/testing/tengine/tengine.pre-upgrade
+++ /dev/null
@@ -1 +0,0 @@
-tengine.pre-install \ No newline at end of file
diff --git a/testing/tere/APKBUILD b/testing/tere/APKBUILD
new file mode 100644
index 00000000000..bca66629d25
--- /dev/null
+++ b/testing/tere/APKBUILD
@@ -0,0 +1,54 @@
+# Contributor: Orhun Parmaksız <orhunparmaksiz@gmail.com>
+# Maintainer: Orhun Parmaksız <orhunparmaksiz@gmail.com>
+pkgname=tere
+pkgver=1.5.1
+pkgrel=0
+pkgdesc="Terminal file explorer"
+url="https://github.com/mgunyho/tere"
+arch="all !s390x" # FTBFS
+license="EUPL-1.2"
+makedepends="
+ cargo
+ cargo-auditable
+ "
+subpackages="
+ $pkgname-doc
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/mgunyho/tere/archive/v$pkgver.tar.gz
+ deps.patch
+ "
+options="net"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+check() {
+ # https://github.com/mgunyho/tere/issues/90
+ # https://github.com/mgunyho/tere/issues/93
+ cargo test --frozen -- \
+ --skip "test_case_sensitive_mode_change" \
+ --skip "panic_guard" \
+ --skip "first_run_prompt_accept" \
+ --skip "output_on_exit_without_cd" \
+ --skip "first_run_prompt_cancel" \
+ --skip "basic_run"
+}
+
+package() {
+ install -Dm 755 target/release/tere -t "$pkgdir"/usr/bin
+ install -Dm 644 README.md -t "$pkgdir"/usr/share/doc/$pkgname
+ install -Dm 644 ./demo/* -t "$pkgdir"/usr/share/dox/$pkgname/demo
+ install -Dm 644 LICENSE -t "$pkgdir"/usr/share/licenses/$pkgname
+}
+
+sha512sums="
+e9ede9284ba2b8ed3749dbbaaa96a3d3963bca6cf4ba7ad03e3df42bb2130a0a8348367cbaa1798ec958145fd54fb3c7aa69354ab1e4c0fbe037e3b1717e717f tere-1.5.1.tar.gz
+97acb6af2944baaac15c9b2f67944e0f2b571fa912009467824a1f9701198e7072e0edaf2411be8c05baa760ff83363179de2e0620a50c51fa8d3e7a1ca56549 deps.patch
+"
diff --git a/testing/tere/deps.patch b/testing/tere/deps.patch
new file mode 100644
index 00000000000..33ca49d9a8a
--- /dev/null
+++ b/testing/tere/deps.patch
@@ -0,0 +1,415 @@
+existing deps are ancient
+diff --git a/Cargo.lock b/Cargo.lock
+index f6d370e..6e4f303 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -2,31 +2,20 @@
+ # It is not intended for manual editing.
+ version = 3
+
+-[[package]]
+-name = "ahash"
+-version = "0.7.6"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47"
+-dependencies = [
+- "getrandom",
+- "once_cell",
+- "version_check",
+-]
+-
+ [[package]]
+ name = "aho-corasick"
+-version = "1.0.2"
++version = "1.0.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "43f6cb1bf222025340178f382c426f13757b2960e89779dfcb319c32542a5a41"
++checksum = "6748e8def348ed4d14996fa801f4122cd763fff530258cdc03f64b25f89d3a5a"
+ dependencies = [
+ "memchr",
+ ]
+
+ [[package]]
+ name = "anstyle"
+-version = "1.0.1"
++version = "1.0.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "3a30da5c5f2d5e72842e00bcb57657162cdabef0931f40e2deb9b4140440cecd"
++checksum = "15c4c2c83f81532e5845a733998b6971faca23490340a418e9b72a3ec9de12ea"
+
+ [[package]]
+ name = "autocfg"
+@@ -42,15 +31,18 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
+
+ [[package]]
+ name = "bitflags"
+-version = "2.3.3"
++version = "2.4.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "630be753d4e58660abd17930c71b647fe46c27ea6b63cc59e1e3851406972e42"
++checksum = "b4682ae6287fcf752ecaabbfcc7b6f9b72aa33933dc23a554d853aea8eea8635"
+
+ [[package]]
+ name = "cc"
+-version = "1.0.79"
++version = "1.0.83"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f"
++checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0"
++dependencies = [
++ "libc",
++]
+
+ [[package]]
+ name = "cfg-if"
+@@ -60,9 +52,9 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
+
+ [[package]]
+ name = "clap"
+-version = "4.3.19"
++version = "4.4.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "5fd304a20bff958a57f04c4e96a2e7594cc4490a0e809cbd48bb6437edaa452d"
++checksum = "1d5f1946157a96594eb2d2c10eb7ad9a2b27518cb3000209dec700c35df9197d"
+ dependencies = [
+ "clap_builder",
+ "clap_derive",
+@@ -71,9 +63,9 @@ dependencies = [
+
+ [[package]]
+ name = "clap_builder"
+-version = "4.3.19"
++version = "4.4.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "01c6a3f08f1fe5662a35cfe393aec09c4df95f60ee93b7556505260f75eee9e1"
++checksum = "78116e32a042dd73c2901f0dc30790d20ff3447f3e3472fad359e8c3d282bcd6"
+ dependencies = [
+ "anstyle",
+ "clap_lex",
+@@ -83,21 +75,21 @@ dependencies = [
+
+ [[package]]
+ name = "clap_derive"
+-version = "4.3.12"
++version = "4.4.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "54a9bb5758fc5dfe728d1019941681eccaf0cf8a4189b692a0ee2f2ecf90a050"
++checksum = "c9fd1a5729c4548118d7d70ff234a44868d00489a4b6597b0b020918a0e91a1a"
+ dependencies = [
+ "heck",
+ "proc-macro2",
+ "quote",
+- "syn 2.0.27",
++ "syn 2.0.29",
+ ]
+
+ [[package]]
+ name = "clap_lex"
+-version = "0.5.0"
++version = "0.5.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "2da6da31387c7e4ef160ffab6d5e7f00c42626fe39aea70a7b0f1773f7dd6c1b"
++checksum = "cd7cc57abe963c6d3b9d8be5b06ba7c8957a930305ca90304f24ef040aa6f961"
+
+ [[package]]
+ name = "comma"
+@@ -175,9 +167,9 @@ dependencies = [
+
+ [[package]]
+ name = "errno"
+-version = "0.3.1"
++version = "0.3.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "4bcfec3a70f97c962c307b2d2c56e358cf1d00b558d74262b5f929ee8cc7e73a"
++checksum = "6b30f669a7961ef1631673d2766cc92f52d64f7ef354d4fe0ddfd30ed52f0f4f"
+ dependencies = [
+ "errno-dragonfly",
+ "libc",
+@@ -211,15 +203,6 @@ dependencies = [
+ "wasi",
+ ]
+
+-[[package]]
+-name = "hashbrown"
+-version = "0.12.3"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
+-dependencies = [
+- "ahash",
+-]
+-
+ [[package]]
+ name = "heck"
+ version = "0.4.1"
+@@ -263,9 +246,9 @@ checksum = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519"
+
+ [[package]]
+ name = "linux-raw-sys"
+-version = "0.4.3"
++version = "0.4.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "09fc20d2ca12cb9f044c93e3bd6d32d523e6e2ec3db4f7b2939cd99026ecd3f0"
++checksum = "57bcfdad1b858c2db7c38303a6d2ad4dfaf5eb53dfeb0910128b2c26d6158503"
+
+ [[package]]
+ name = "lock_api"
+@@ -279,9 +262,9 @@ dependencies = [
+
+ [[package]]
+ name = "log"
+-version = "0.4.19"
++version = "0.4.20"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "b06a4cde4c0f271a446782e3eff8de789548ce57dbc8eca9292c27f4a42004b4"
++checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f"
+
+ [[package]]
+ name = "memchr"
+@@ -370,9 +353,9 @@ dependencies = [
+
+ [[package]]
+ name = "quote"
+-version = "1.0.32"
++version = "1.0.33"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "50f3b39ccfb720540debaa0164757101c08ecb8d326b15358ce76a62c7e85965"
++checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae"
+ dependencies = [
+ "proc-macro2",
+ ]
+@@ -408,9 +391,9 @@ dependencies = [
+
+ [[package]]
+ name = "regex"
+-version = "1.9.1"
++version = "1.9.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "b2eae68fc220f7cf2532e4494aded17545fce192d59cd996e0fe7887f4ceb575"
++checksum = "81bc1d4caf89fac26a70747fe603c130093b53c773888797a6329091246d651a"
+ dependencies = [
+ "aho-corasick",
+ "memchr",
+@@ -420,9 +403,9 @@ dependencies = [
+
+ [[package]]
+ name = "regex-automata"
+-version = "0.3.3"
++version = "0.3.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "39354c10dd07468c2e73926b23bb9c2caca74c5501e38a35da70406f1d923310"
++checksum = "fed1ceff11a1dddaee50c9dc8e4938bd106e9d89ae372f192311e7da498e3b69"
+ dependencies = [
+ "aho-corasick",
+ "memchr",
+@@ -464,14 +447,14 @@ dependencies = [
+
+ [[package]]
+ name = "rustix"
+-version = "0.38.4"
++version = "0.38.9"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "0a962918ea88d644592894bc6dc55acc6c0956488adcebbfb6e273506b7fd6e5"
++checksum = "9bfe0f2582b4931a45d1fa608f8a8722e8b3c7ac54dd6d5f3b3212791fedef49"
+ dependencies = [
+- "bitflags 2.3.3",
++ "bitflags 2.4.0",
+ "errno",
+ "libc",
+- "linux-raw-sys 0.4.3",
++ "linux-raw-sys 0.4.5",
+ "windows-sys",
+ ]
+
+@@ -495,29 +478,29 @@ checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
+
+ [[package]]
+ name = "serde"
+-version = "1.0.175"
++version = "1.0.188"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "5d25439cd7397d044e2748a6fe2432b5e85db703d6d097bd014b3c0ad1ebff0b"
++checksum = "cf9e0fcba69a370eed61bcf2b728575f726b50b55cba78064753d708ddc7549e"
+ dependencies = [
+ "serde_derive",
+ ]
+
+ [[package]]
+ name = "serde_derive"
+-version = "1.0.175"
++version = "1.0.188"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "b23f7ade6f110613c0d63858ddb8b94c1041f550eab58a16b371bdf2c9c80ab4"
++checksum = "4eca7ac642d82aa35b60049a6eccb4be6be75e599bd2e9adb5f875a737654af2"
+ dependencies = [
+ "proc-macro2",
+ "quote",
+- "syn 2.0.27",
++ "syn 2.0.29",
+ ]
+
+ [[package]]
+ name = "serde_json"
+-version = "1.0.103"
++version = "1.0.105"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "d03b412469450d4404fe8499a268edd7f8b79fecb074b0d812ad64ca21f4031b"
++checksum = "693151e1ac27563d6dbcec9dee9fbd5da8539b20fa14ad3752b2e6d363ace360"
+ dependencies = [
+ "itoa",
+ "ryu",
+@@ -607,9 +590,9 @@ dependencies = [
+
+ [[package]]
+ name = "syn"
+-version = "2.0.27"
++version = "2.0.29"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "b60f673f44a8255b9c8c657daf66a596d435f2da81a555b06dc644d080ba45e0"
++checksum = "c324c494eba9d92503e6f1ef2e6df781e78f6a7705a0202d9801b198807d518a"
+ dependencies = [
+ "proc-macro2",
+ "quote",
+@@ -618,14 +601,14 @@ dependencies = [
+
+ [[package]]
+ name = "tempfile"
+-version = "3.7.0"
++version = "3.8.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "5486094ee78b2e5038a6382ed7645bc084dc2ec433426ca4c3cb61e2007b8998"
++checksum = "cb94d2f3cc536af71caac6b6fcebf65860b347e7ce0cc9ebe8f70d3e521054ef"
+ dependencies = [
+ "cfg-if",
+ "fastrand",
+ "redox_syscall 0.3.5",
+- "rustix 0.38.4",
++ "rustix 0.38.9",
+ "windows-sys",
+ ]
+
+@@ -671,22 +654,22 @@ dependencies = [
+
+ [[package]]
+ name = "thiserror"
+-version = "1.0.44"
++version = "1.0.47"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "611040a08a0439f8248d1990b111c95baa9c704c805fa1f62104b39655fd7f90"
++checksum = "97a802ec30afc17eee47b2855fc72e0c4cd62be9b4efe6591edde0ec5bd68d8f"
+ dependencies = [
+ "thiserror-impl",
+ ]
+
+ [[package]]
+ name = "thiserror-impl"
+-version = "1.0.44"
++version = "1.0.47"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "090198534930841fab3a5d1bb637cde49e339654e606195f8d9c76eeb081dc96"
++checksum = "6bb623b56e39ab7dcd4b1b98bb6c8f8d907ed255b18de254088016b27a8ee19b"
+ dependencies = [
+ "proc-macro2",
+ "quote",
+- "syn 2.0.27",
++ "syn 2.0.29",
+ ]
+
+ [[package]]
+@@ -697,13 +680,9 @@ checksum = "301abaae475aa91687eb82514b328ab47a211a533026cb25fc3e519b86adfc3c"
+
+ [[package]]
+ name = "unicode-linebreak"
+-version = "0.1.4"
++version = "0.1.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "c5faade31a542b8b35855fff6e8def199853b2da8da256da52f52f1316ee3137"
+-dependencies = [
+- "hashbrown",
+- "regex",
+-]
++checksum = "3b09c83c3c29d37506a3e260c08c03743a6bb66a9cd432c6934ab501a190571f"
+
+ [[package]]
+ name = "unicode-segmentation"
+@@ -717,12 +696,6 @@ version = "0.1.10"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b"
+
+-[[package]]
+-name = "version_check"
+-version = "0.9.4"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
+-
+ [[package]]
+ name = "wasi"
+ version = "0.11.0+wasi-snapshot-preview1"
+@@ -762,9 +735,9 @@ dependencies = [
+
+ [[package]]
+ name = "windows-targets"
+-version = "0.48.1"
++version = "0.48.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "05d4b17490f70499f20b9e791dcf6a299785ce8af4d709018206dc5b4953e95f"
++checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c"
+ dependencies = [
+ "windows_aarch64_gnullvm",
+ "windows_aarch64_msvc",
+@@ -777,42 +750,42 @@ dependencies = [
+
+ [[package]]
+ name = "windows_aarch64_gnullvm"
+-version = "0.48.0"
++version = "0.48.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc"
++checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
+
+ [[package]]
+ name = "windows_aarch64_msvc"
+-version = "0.48.0"
++version = "0.48.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3"
++checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
+
+ [[package]]
+ name = "windows_i686_gnu"
+-version = "0.48.0"
++version = "0.48.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241"
++checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
+
+ [[package]]
+ name = "windows_i686_msvc"
+-version = "0.48.0"
++version = "0.48.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00"
++checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
+
+ [[package]]
+ name = "windows_x86_64_gnu"
+-version = "0.48.0"
++version = "0.48.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1"
++checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
+
+ [[package]]
+ name = "windows_x86_64_gnullvm"
+-version = "0.48.0"
++version = "0.48.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953"
++checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
+
+ [[package]]
+ name = "windows_x86_64_msvc"
+-version = "0.48.0"
++version = "0.48.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a"
++checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
diff --git a/testing/termbox/APKBUILD b/testing/termbox/APKBUILD
index b2a87131486..39d874c66ba 100644
--- a/testing/termbox/APKBUILD
+++ b/testing/termbox/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Adam Saponara <as@php.net>
pkgname=termbox
pkgver=1.1.2
-pkgrel=0
+pkgrel=1
pkgdesc="Legacy-free alternative to ncurses"
url="https://github.com/nsf/termbox"
arch="all"
@@ -23,7 +23,7 @@ build() {
abuild-meson \
--default-library=both \
. output
- meson compile ${JOBS:+-j ${JOBS}} -C output
+ meson compile -C output
}
package() {
diff --git a/testing/termcolor/APKBUILD b/testing/termcolor/APKBUILD
index 0a5b1e94749..975e027b6e7 100644
--- a/testing/termcolor/APKBUILD
+++ b/testing/termcolor/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=termcolor
-pkgver=2.0.0
+pkgver=2.1.0
pkgrel=0
pkgdesc="Header-only C++ library for printing colored messages to the terminal"
url="https://github.com/ikalnytskyi/termcolor"
@@ -25,5 +25,5 @@ package() {
}
sha512sums="
-72dead77fb9f3ff79432b1659b57c3d961a57b46305937acd0c221f5abb016f609dfaf7a9bf508bd7a073338ee604cf55f9915c8e8a76ddfaf6c68bc031e37f9 termcolor-2.0.0.tar.gz
+668853a93e1208a08a4ea9ac8db2d9c615cefd0325c35402b767e0b1bf373589507b8eb7685babd5801c1e4f2533db6f4eabfedde365737a4c7c069f00f536d8 termcolor-2.1.0.tar.gz
"
diff --git a/testing/terminalpp/APKBUILD b/testing/terminalpp/APKBUILD
new file mode 100644
index 00000000000..d9a0809791a
--- /dev/null
+++ b/testing/terminalpp/APKBUILD
@@ -0,0 +1,84 @@
+# Contributor: Jakub Jirutka <jakub@jirutka.cz>
+# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
+pkgname=terminalpp
+pkgver=0.8.4
+pkgrel=0
+pkgdesc="Minimalist, fast, cross-platform terminal emulator"
+url="https://terminalpp.com/"
+# armhf, armv7, x86: fails to build
+arch="all !armhf !armv7 !x86"
+license="MIT"
+makedepends="
+ cmake
+ freetype-dev
+ libx11-dev
+ libxcursor-dev
+ libxft-dev
+ mesa-dev
+ samurai
+ "
+subpackages="
+ $pkgname-ropen
+ tpp-bypass
+ "
+source="https://github.com/terminalpp/terminalpp/archive/v$pkgver/terminalpp-$pkgver.tar.gz"
+builddir="$srcdir/terminalpp-$pkgver"
+
+build() {
+ local cmake_opts="
+ -G Ninja
+ -DCMAKE_INSTALL_PREFIX=/usr
+ -DSTAMP_ARGS=--no-override
+ "
+ [ "$CBUILD" = "$CHOST" ] || cmake_opts="
+ $cmake_opts
+ -DCMAKE_SYSTEM_NAME=Linux
+ -DCMAKE_HOST_SYSTEM_NAME=Linux
+ "
+
+ cmake -B build \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DINSTALL=terminalpp \
+ $cmake_opts
+ cmake --build build --target terminalpp
+ cmake --build build --target tests
+
+ cmake -B build-ropen \
+ -DCMAKE_BUILD_TYPE=MinSizeRel \
+ -DINSTALL=ropen \
+ $cmake_opts
+ cmake --build build-ropen --target ropen
+
+ cmake -B build-bypass \
+ -DCMAKE_BUILD_TYPE=MinSizeRel \
+ -DINSTALL=tpp-bypass \
+ $cmake_opts
+ cmake --build build-bypass --target tpp-bypass
+}
+
+check() {
+ cd build
+ ./tests/tests
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+ropen() {
+ pkgdesc="Utility to open remote files in Terminal++"
+
+ cd "$builddir"
+ DESTDIR="$subpkgdir" cmake --install build-ropen
+}
+
+bypass() {
+ pkgdesc="Utility to create a linux pseudoconsole inside WSL to bypass ConPTY"
+
+ cd "$builddir"
+ DESTDIR="$subpkgdir" cmake --install build-bypass
+}
+
+sha512sums="
+498755b11e7e14d9aec4450e4f5a9446cb591fd73672ad306d2b292814b3bdbb10b0e6d6248f849b30f531a92f419881c7e59dcfa85117155c0e45aabb8943ad terminalpp-0.8.4.tar.gz
+"
diff --git a/testing/termusic-mpv/APKBUILD b/testing/termusic-mpv/APKBUILD
new file mode 100644
index 00000000000..bd8d13607eb
--- /dev/null
+++ b/testing/termusic-mpv/APKBUILD
@@ -0,0 +1,37 @@
+# Contributor: Coco Liliace <coco@liliace.dev>
+# Maintainer: Coco Liliace <coco@liliace.dev>
+#
+# optional dependencies:
+# - yt-dlp and ffmpeg: for downloading from youtube
+pkgname=termusic-mpv
+pkgver=0.7.11
+pkgrel=0
+pkgdesc="Music Player TUI written in Rust"
+url="https://github.com/tramhao/termusic"
+arch="all !s390x !riscv64"
+license="MIT AND GPL-3.0-or-later"
+depends="protoc mpv-dev"
+makedepends="cargo cargo-auditable rustfmt rust-clippy dbus-dev"
+source="$pkgname-$pkgver.tar.gz::https://github.com/tramhao/termusic/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/termusic-$pkgver"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --locked --target="$CTARGET"
+}
+
+check() {
+ make fmt
+}
+
+build() {
+ cargo auditable build --no-default-features --features mpv --release --frozen --all
+}
+
+package() {
+ install -Dm755 -t "$pkgdir"/usr/bin ./target/release/termusic ./target/release/termusic-server
+}
+sha512sums="
+67f0b06ff37dbc3d16c77c6bdd0163dc547fbea1a25b3a7574b4540a4ad3a2059dc547d49411803fd9aa162d4f432ff5b99bef1e0f5c362342943fa76985f443 termusic-mpv-0.7.11.tar.gz
+"
diff --git a/testing/terra/APKBUILD b/testing/terra/APKBUILD
index 039764152f3..d0c5ea2503d 100644
--- a/testing/terra/APKBUILD
+++ b/testing/terra/APKBUILD
@@ -1,53 +1,69 @@
# Maintainer: Dominika Liberda <ja@sdomi.pl>
# Contributor: Dominika Liberda <ja@sdomi.pl>
pkgname=terra
-pkgver=0_git20220416
-_commit=d1150543a99c1f1e1909411c0cf1a17204a05f0d
-pkgrel=0
+pkgver=1.0.6
+pkgrel=1
pkgdesc="Low-level system programming language embedded in and meta-programmed by Lua."
url="https://terralang.org/"
-arch="x86_64"
+# does not support new llvm versions, looks dead upstream
+#arch="x86_64"
license="MIT"
makedepends="
clang-dev
clang-static
cmake
libedit-dev
- libexecinfo-dev
libffi-dev
libxml2-dev
- llvm13-dev
- llvm13-static
+ lld
+ llvm-dev
+ llvm-static
+ luajit-dev
ncurses-dev
openmp-dev
samurai
zlib-dev
"
-source="$pkgname-$_commit.tar.gz::https://github.com/terralang/terra/archive/$_commit.tar.gz
- backtrace_link.patch
+source="$pkgname-$pkgver.tar.gz::https://github.com/terralang/terra/archive/refs/tags/release-$pkgver.tar.gz
+ no-execinfo.patch
+ system-lua.patch
+ version.patch
"
subpackages="$pkgname-dev"
-builddir="$srcdir/$pkgname-$_commit"
+builddir="$srcdir/$pkgname-release-$pkgver"
prepare() {
default_prepare
- # fails on musl
+ # checks if puts() returns 10
rm tests/string.t
+ # includes immintrin.h without include path
rm tests/expvec.t
+ # ?
+ rm tests/option_e.t
+ rm tests/dynlib.t
}
build() {
+ CC=clang \
+ CXX=clang++ \
+ CFLAGS="$CFLAGS -flto=thin" \
+ CXXFLAGS="$CXXFLAGS -flto=thin" \
+ LDFLAGS="$LDFLAGS -fuse-ld=lld" \
cmake -G Ninja -B build \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
+ -DCMAKE_SKIP_INSTALL_RPATH=ON \
-DBUILD_SHARED_LIBS=True \
- -DCMAKE_BUILD_TYPE=RelWithDebInfo
+ -DCMAKE_BUILD_TYPE=Release \
+ -DTERRA_STATIC_LINK_LUAJIT=OFF \
+ -DTERRA_VERSION="$pkgver"
cmake --build build
}
check() {
cd tests
+ INCLUDE_PATH="$(pkg-config --variable=includedir luajit)" \
../build/bin/terra run
}
@@ -57,6 +73,8 @@ package() {
}
sha512sums="
-b59512bc9258169964ef5dc7a8eed7720d2a9257b61cdbee924189eb1a7938f1897f637156eb92c5ee839067b7e7fa482c4b0fcc143e8a695732134ca7e5859e terra-d1150543a99c1f1e1909411c0cf1a17204a05f0d.tar.gz
-9f7a860a16bc55bed8330395e0de4a8a04066bacef28493e3b15013d64c62a679e474f00f6269767f7d07951d32dd896e50718bf4209570102872cb871e120a5 backtrace_link.patch
+ba856b41533a5db4a68f8993fdc61164104d55e1cab46417176840b1c40867fb31889d1fad8996644debee2ca69f78d7b2a99a36004b236c958ecdb9d8beff98 terra-1.0.6.tar.gz
+9bba656697bb25249a5657d87481c242cf68a3af10ef8d076aace31c9dd28c1bda77baecbc1d281aca627f2d47a75d379084cefc6c7d6bdcf74e391a0a24d54b no-execinfo.patch
+c5407edc1cdcd03d1ffe1a0db60f10f86e2223edd4d90e831285cc5b36dc687806ce6532196563a24c326868f446a32d976208a6398668e85d82d3fc57d77a2c system-lua.patch
+d2beea5e219951c1a2d157e67e1ba238bcd07f526a955fc84779477ad9b36b63b72d9ae402c6ce196f7ea4fccc503478a4ee9c77aa4bc22804434620362ab8a2 version.patch
"
diff --git a/testing/terra/backtrace_link.patch b/testing/terra/backtrace_link.patch
deleted file mode 100644
index e8bfd91fc5d..00000000000
--- a/testing/terra/backtrace_link.patch
+++ /dev/null
@@ -1,34 +0,0 @@
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -233,6 +233,7 @@
- ${LUAJIT_LIBRARIES}
- ${ALL_LLVM_LIBRARIES}
- ${LLVM_SYSTEM_LIBRARIES}
-+ -lexecinfo
- )
-
- if(APPLE)
-@@ -318,6 +319,7 @@
- ${LUAJIT_LIBRARIES}
- ${ALL_LLVM_LIBRARIES}
- ${LLVM_SYSTEM_LIBRARIES}
-+ -lexecinfo
- )
- add_dependencies(TerraExecutable TerraLibrary)
- elseif(UNIX)
-@@ -336,6 +338,7 @@
- ${LUAJIT_LIBRARIES}
- ${ALL_LLVM_LIBRARIES}
- ${LLVM_SYSTEM_LIBRARIES}
-+ -lexecinfo
- )
- else()
- target_link_libraries(TerraExecutable
-@@ -344,6 +347,7 @@
- ${LUAJIT_LIBRARIES}
- ${ALL_LLVM_LIBRARIES}
- ${LLVM_SYSTEM_LIBRARIES}
-+ -lexecinfo
- )
- endif()
-
diff --git a/testing/terra/no-execinfo.patch b/testing/terra/no-execinfo.patch
new file mode 100644
index 00000000000..7870f5061cc
--- /dev/null
+++ b/testing/terra/no-execinfo.patch
@@ -0,0 +1,36 @@
+diff --git a/src/tdebug.cpp b/src/tdebug.cpp
+index 0d93be0..cda06a6 100644
+--- a/src/tdebug.cpp
++++ b/src/tdebug.cpp
+@@ -6,7 +6,6 @@
+ #if !defined(__arm__) && !defined(__aarch64__) && !defined(__PPC__)
+
+ #ifndef _WIN32
+-#include <execinfo.h>
+ #ifndef _XOPEN_SOURCE
+ #define _XOPEN_SOURCE
+ #endif
+@@ -188,7 +187,6 @@ static void printstacktrace(void *uap, void *data) {
+ int N = terra_backtrace(frames, maxN, rip, rbp);
+
+ #ifndef _WIN32
+- char **symbols = backtrace_symbols(frames, N);
+ #else
+ HANDLE process = GetCurrentProcess();
+ SymInitialize(process, NULL, true);
+@@ -202,7 +200,6 @@ static void printstacktrace(void *uap, void *data) {
+ uintptr_t ip = (uintptr_t)frames[i];
+ if (!printfunctioninfo(C, ip, isNextInst, i)) {
+ #ifndef _WIN32
+- printf("%s\n", symbols[i]);
+ #else
+ char buf[256 + sizeof(SYMBOL_INFO)];
+ SYMBOL_INFO *symbol = (SYMBOL_INFO *)buf;
+@@ -217,7 +214,6 @@ static void printstacktrace(void *uap, void *data) {
+ }
+ }
+ #ifndef _WIN32
+- free(symbols);
+ #endif
+ }
+
diff --git a/testing/terra/system-lua.patch b/testing/terra/system-lua.patch
new file mode 100644
index 00000000000..d63d78245df
--- /dev/null
+++ b/testing/terra/system-lua.patch
@@ -0,0 +1,35 @@
+diff --git a/cmake/Modules/GetLuaJIT.cmake b/cmake/Modules/GetLuaJIT.cmake
+index 0ab1747..4cf7644 100644
+--- a/cmake/Modules/GetLuaJIT.cmake
++++ b/cmake/Modules/GetLuaJIT.cmake
+@@ -7,6 +7,12 @@ else()
+ set(DEFAULT_TERRA_LUA "luajit")
+ endif()
+
++find_package(PkgConfig)
++pkg_check_modules(LUAJIT REQUIRED luajit IMPORTED_TARGET GLOBAL)
++add_library(LuaJIT ALIAS PkgConfig::LUAJIT)
++set(LUAJIT_EXECUTABLE "/usr/bin/luajit")
++return()
++
+ set(TERRA_LUA "${DEFAULT_TERRA_LUA}" CACHE STRING "Build Terra against the specified Lua implementation")
+
+ if(TERRA_LUA STREQUAL "luajit")
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -112,6 +112,7 @@
+ ${PROJECT_BINARY_DIR}/include/terra
+ ${LLVM_INCLUDE_DIRS}
+ ${CLANG_INCLUDE_DIRS}
++ ${LUAJIT_INCLUDE_DIRS}
+ )
+
+ if(WIN32)
+@@ -291,6 +292,7 @@
+ PRIVATE
+ ${PROJECT_BINARY_DIR}
+ ${PROJECT_BINARY_DIR}/include/terra
++ ${LUAJIT_INCLUDE_DIRS}
+ )
+
+ if(WIN32)
diff --git a/testing/terra/version.patch b/testing/terra/version.patch
new file mode 100644
index 00000000000..0f68212234f
--- /dev/null
+++ b/testing/terra/version.patch
@@ -0,0 +1,18 @@
+--- a/cmake/Modules/VersionNumber.cmake
++++ b/cmake/Modules/VersionNumber.cmake
+@@ -1,14 +1,4 @@
+-if(GIT_FOUND)
+- execute_process(
+- COMMAND "${GIT_EXECUTABLE}" describe --tags
+- WORKING_DIRECTORY "${PROJECT_SOURCE_DIR}"
+- RESULT_VARIABLE HAS_TERRA_VERSION
+- OUTPUT_VARIABLE TERRA_VERSION
+- ERROR_QUIET
+- )
+-endif()
+-
+-if(HAS_TERRA_VERSION EQUAL 0)
++if(1)
+ string(STRIP "${TERRA_VERSION}" TERRA_VERSION)
+ string(REGEX REPLACE "^(release-)" ""
+ TERRA_VERSION "${TERRA_VERSION}"
diff --git a/testing/terraform-provider-libvirt/APKBUILD b/testing/terraform-provider-libvirt/APKBUILD
deleted file mode 100644
index e4b5ca3091f..00000000000
--- a/testing/terraform-provider-libvirt/APKBUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
-pkgname=terraform-provider-libvirt
-pkgver=0.6.14
-pkgrel=3
-pkgdesc="Terraform provider using libvirt"
-url="https://github.com/dmacvicar/terraform-provider-libvirt"
-arch="all !s390x !riscv64" # blocked by libvirt
-license="Apache-2.0"
-depends="terraform"
-makedepends="go libvirt-dev"
-source="https://github.com/dmacvicar/terraform-provider-libvirt/archive/v$pkgver/terraform-provider-libvirt-$pkgver.tar.gz
- version.patch
- "
-options="!check" # testsuite takes too long to run and appears need a running libvirt
-
-build() {
- unset LDFLAGS
- make VERSION="$pkgver"
-}
-
-check() {
- make test
-}
-
-package() {
- install -Dm755 terraform-provider-libvirt \
- "$pkgdir"/usr/bin/terraform-provider-libvirt
-}
-
-sha512sums="
-1a20e7af9001ac3f9a49f133d336f781727ddd01322746494f680cc348ec14f75664692ba0184aeb40a62d0b041791786d5ae155069ff79eee2c7829efcb2994 terraform-provider-libvirt-0.6.14.tar.gz
-898a0f65865e36d379c7ab02ee2ba0ef05fbd477db17f41b3adcfccb63f9b76f694927285fc9a6c03f16116502eabb3d1575f3c65bec58684fc81e925ebe4237 version.patch
-"
diff --git a/testing/terraform-provider-libvirt/version.patch b/testing/terraform-provider-libvirt/version.patch
deleted file mode 100644
index 9796704fcaa..00000000000
--- a/testing/terraform-provider-libvirt/version.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-Make it possible to override version string so we can avoid pick up the
-aports git version info.
-
-diff --git a/Makefile b/Makefile
-index 0f252d7..bbf2006 100644
---- a/Makefile
-+++ b/Makefile
-@@ -1,4 +1,5 @@
--LDFLAGS += -X main.version=$$(git describe --always --abbrev=40 --dirty)
-+VERSION = $$(git describe --always --abbrev=40 --dirty)
-+LDFLAGS += -X main.version=$(VERSION)
-
- # default args for tests
- TEST_ARGS_DEF := -covermode=count -coverprofile=profile.cov
diff --git a/testing/tetragon-client/APKBUILD b/testing/tetragon-client/APKBUILD
new file mode 100644
index 00000000000..0e7900fd0ca
--- /dev/null
+++ b/testing/tetragon-client/APKBUILD
@@ -0,0 +1,72 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=tetragon-client
+pkgver=1.0.2
+pkgrel=2
+pkgdesc="CLI client for eBPF-based Security Observability and Runtime Enforcement"
+url="https://github.com/cilium/tetragon"
+arch="x86_64 aarch64" # fails to build on other platforms
+license="Apache-2.0"
+makedepends="go"
+checkdepends="linux-headers"
+subpackages="
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/cilium/tetragon/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/tetragon-$pkgver"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ go build -v \
+ -ldflags "-X github.com/cilium/tetragon/pkg/version.Version=v$pkgver" \
+ ./cmd/tetra
+
+ for shell in bash fish zsh; do
+ ./tetra completion $shell > tetra.$shell
+ done
+}
+
+check() {
+ # Some tests access example files inside the repo, so no -trimpath.
+ # /tests/e2e: only run unittest
+ # /bpf/tests: requires root privilege to run
+ # /pkg/reader/proc: read process name at PID 1
+ # /pkg/selectors: read values in kernel Pid namespace
+ # /pkg/alignchecker: fails to build bpf/objs/bpf_alignchecker.o
+ # /pkg/sensors/{tracing,exec}, /pkg/{tracepoint,btf,bugtool}: try to access /sys/kernel
+ # /pkg/sensors/exec/procevents, /pkg/cgroups: fail on CI (lacking cgroup controller "pids")
+ # shellcheck disable=2046
+ GOFLAGS="${GOFLAGS/-trimpath/}" go test $(go list ./... | grep -v \
+ -e '/bpf/tests$' \
+ -e '/pkg/alignchecker$' \
+ -e '/pkg/btf$' \
+ -e '/pkg/bugtool$' \
+ -e '/pkg/cgroups$' \
+ -e '/pkg/reader/proc$' \
+ -e '/pkg/selectors$' \
+ -e '/pkg/sensors/exec$' \
+ -e '/pkg/sensors/exec/procevents$' \
+ -e '/pkg/sensors/tracing$' \
+ -e '/pkg/tracepoint$' \
+ -e '/tests/e2e' \
+ )
+}
+
+package() {
+ install -Dm755 tetra -t "$pkgdir"/usr/bin/
+
+ install -Dm644 tetra.bash \
+ "$pkgdir"/usr/share/bash-completion/completions/tetra
+ install -Dm644 tetra.fish \
+ "$pkgdir"/usr/share/fish/vendor_completions.d/tetra.fish
+ install -Dm644 tetra.zsh \
+ "$pkgdir"/usr/share/zsh/site-functions/_tetra
+}
+
+sha512sums="
+73404cb1900f451d80b0d0295a2c3f5ef529eb4da76406aca4b889a9dab60e4a0cb578363ee689311b8be33fa5ac902441f79e02220d567b1bf37a9bf582d7ce tetragon-client-1.0.2.tar.gz
+"
diff --git a/testing/texlab/APKBUILD b/testing/texlab/APKBUILD
new file mode 100644
index 00000000000..3f630a6533d
--- /dev/null
+++ b/testing/texlab/APKBUILD
@@ -0,0 +1,42 @@
+# Maintainer: Dominika Liberda <ja@sdomi.pl>
+# Contributor: Dominika Liberda <ja@sdomi.pl>
+pkgname=texlab
+pkgver=5.12.3
+pkgrel=0
+pkgdesc="Implementation of the Language Server Protocol for LaTeX"
+url="https://github.com/latex-lsp/texlab"
+# limited by rust/cargo
+# armhf - fails to build
+arch="x86_64 armv7 aarch64 x86 ppc64le"
+license="GPL-3.0-or-later"
+makedepends="cargo cargo-auditable"
+source="https://github.com/latex-lsp/texlab/archive/refs/tags/v$pkgver/texlab-v$pkgver.tar.gz"
+
+# tests OOM on 32-bit
+# x86_64/ppc64le tests broken with some things in /tmp
+case "$CARCH" in
+ x86|x86_64|ppc64le|armv7) options="!check" ;;
+esac
+
+export CARGO_PROFILE_RELEASE_PANIC="unwind"
+
+prepare() {
+ default_prepare
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm755 target/release/texlab -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+ab00f03dae00540225a2e87fad466bf6031916483bcb0953160dbd3003548bbf9c28212c701be887f70bdb269752f4d8818d235c5341e4c9488540b121cd5bc4 texlab-v5.12.3.tar.gz
+"
diff --git a/testing/texmaker/APKBUILD b/testing/texmaker/APKBUILD
index dd32991144a..4d779cde612 100644
--- a/testing/texmaker/APKBUILD
+++ b/testing/texmaker/APKBUILD
@@ -1,20 +1,29 @@
# Contributor: Francesco Colista <fcolista@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
-pkgname="texmaker"
-pkgver=5.1.2
+pkgname=texmaker
+pkgver=5.1.4
pkgrel=0
pkgdesc="Free cross-platform LaTeX editor since 2003"
url="https://www.xm1math.net/texmaker/index.html"
-arch="all !ppc64le !s390x !armhf !riscv64" # qt5-qtwebengine-dev not avail
-license="GPL"
+# qt6-qtwebengine-dev not avail
+arch="aarch64 x86_64"
+license="GPL-2.0-or-later"
depends="desktop-file-utils"
-makedepends="qt5-qttools-dev qt5-qtbase-dev qt5-qtscript-dev poppler-qt5
-qt5-qtdeclarative-dev qt5-qtwebengine-dev"
-source="https://www.xm1math.net/texmaker/$pkgname-$pkgver.tar.bz2"
+makedepends="
+ poppler-qt5-dev
+ qt6-qt5compat-dev
+ qt6-qtbase-dev
+ qt6-qtdeclarative-dev
+ qt6-qttools-dev
+ qt6-qtwebengine-dev
+ "
+source="https://www.xm1math.net/texmaker/$pkgname-$pkgver.tar.bz2
+ musl-1.2.3.patch
+ "
builddir="$srcdir/$pkgname-$pkgver"
build() {
- qmake-qt5 PREFIX=/usr texmaker.pro
+ qmake6 PREFIX=/usr texmaker.pro
make
}
@@ -28,5 +37,6 @@ package() {
}
sha512sums="
-a9625bad6401a36b0a9db90d59aa8e4a2e8f692d4937cbe1c159c46360d2b6257a14f6b5df760acfa7969944c93767d463da395dd5486bf619f6f3db31af7885 texmaker-5.1.2.tar.bz2
+6ae4be7ae9be98e494480d4574e783a5568f0dcc9c631ccbc9bf00cca9f69dc672ba72060c064748a4446d20302af89e3bc6f14e8977d1f1ddbd20458fcf6d4e texmaker-5.1.4.tar.bz2
+6cad0857469f9648aa6c2d2f5f69602a32d4d5be6745b14b6bbf812ad45f34b9c8a886ddb0880fabee8dd7a8d08dc12782d7cb03dfe9c2462e914712cd8f663d musl-1.2.3.patch
"
diff --git a/testing/texmaker/musl-1.2.3.patch b/testing/texmaker/musl-1.2.3.patch
new file mode 100644
index 00000000000..e41f60aaae4
--- /dev/null
+++ b/testing/texmaker/musl-1.2.3.patch
@@ -0,0 +1,13 @@
+diff --git a/pdfium/third_party/base/logging.h b/pdfium/third_party/base/logging.h
+index bf4faea..b1e6a7f 100644
+--- a/pdfium/third_party/base/logging.h
++++ b/pdfium/third_party/base/logging.h
+@@ -10,7 +10,7 @@
+
+ #ifndef _WIN32
+ #define NULL_DEREF_IF_POSSIBLE \
+- *(reinterpret_cast<volatile char*>(NULL) + 42) = 0x42;
++ *(reinterpret_cast<volatile char*>(0) + 42) = 0x42;
+ #else
+ #define NULL_DEREF_IF_POSSIBLE
+ #endif
diff --git a/testing/texstudio/APKBUILD b/testing/texstudio/APKBUILD
index a6cd1c2bfe1..298716d5398 100644
--- a/testing/texstudio/APKBUILD
+++ b/testing/texstudio/APKBUILD
@@ -1,36 +1,44 @@
# Contributor: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
# Maintainer: Jonas <3426-spameier@users.gitlab.alpinelinux.org>
pkgname=texstudio
-pkgver=4.2.3
-pkgrel=0
-pkgdesc="fully featured LaTeX editor"
+pkgver=4.7.3
+pkgrel=1
+pkgdesc="A fully featured editor for LaTeX documents"
url="https://www.texstudio.org"
-arch="all"
+# disabled elsewhere due to huge size, request if you need it
+arch="aarch64 x86_64"
license="GPL-3.0-or-later"
-depends="qt5-qtbase"
-makedepends="qt5-qtbase-dev qt5-qttools-dev qt5-qtsvg-dev qt5-qtscript-dev
- qt5-qttools-dev poppler-qt5-dev qt5-qtdeclarative-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/texstudio-org/texstudio/archive/$pkgver.tar.gz"
+makedepends="
+ cmake
+ poppler-qt5-dev
+ qt6-qt5compat-dev
+ qt6-qtbase-dev
+ qt6-qtdeclarative-dev
+ qt6-qtsvg-dev
+ qt6-qttools-dev
+ qtermwidget-dev
+ quazip-dev
+ samurai
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/texstudio-org/texstudio/archive/$pkgver.tar.gz
+ qt6.patch
+ "
+options="!check" # tests fail to build
build() {
- QTDIR=/usr/lib/qt5
- PATH=$QTDIR/bin:$PATH
- LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
- DYLD_LIBRARY_PATH=$QTDIR/lib:$DYLD_LIBRARY_PATH
- export QTDIR PATH LD_LIBRARY_PATH DYLD_LIBRARY_PATH
- qmake-qt5 PREFIX=/usr CONFIG-=debug CONFIG-=debug_and_release CONFIG+=release texstudio.pro
- make
-}
-
-check() {
- qmake-qt5
- make
+ cmake -B build -G Ninja -Wno-dev \
+ -DCMAKE_BUILD_TYPE=MinSizeRel \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DQT_VERSION_MAJOR=6
+ cmake --build build
}
package() {
- mkdir -p "$pkgdir/usr/share"
- make INSTALL_PATH="$pkgdir" INSTALL_ROOT="$pkgdir" PREFIX="/usr" install
+ DESTDIR="$pkgdir" cmake --install build
}
+
sha512sums="
-31ce9a78994c171673413fad580c72b4b163050b229e27433b0d527afd5d8fae1849938784c6ceb4e27ff4757cd627d048009ca51313d13f18e558837c8b35f2 texstudio-4.2.3.tar.gz
+45537cbb585f3d0053f81a7257e8c18a091a09fbecdc09a5da7be5e7233ccbad4c23fd6679a379a6ab2a7543a58c0589249ec082e990d14354b37c5ea906e8e0 texstudio-4.7.3.tar.gz
+60380c7e962ea9deb9117c95153dc7f827b0534adeeb59b6de123d57264b74dba3c960744433686c68fac34f11d788125ba7bc08d36882b10f1282bfa597829d qt6.patch
"
diff --git a/testing/texstudio/qt6.patch b/testing/texstudio/qt6.patch
new file mode 100644
index 00000000000..f9a2b74c35c
--- /dev/null
+++ b/testing/texstudio/qt6.patch
@@ -0,0 +1,13 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 7877734..d48606f 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -37,7 +37,7 @@ if(WIN32)
+ add_compile_options(-fpermissive)
+ endif()
+
+-find_package(QT NAMES Qt6 Qt5 COMPONENTS Widgets LinguistTools REQUIRED)
++find_package(QT NAMES Qt6 COMPONENTS Widgets LinguistTools REQUIRED)
+ find_package(Qt${QT_VERSION_MAJOR} COMPONENTS Core Network Xml Concurrent Widgets UiTools REQUIRED)
+ find_package(Qt${QT_VERSION_MAJOR} COMPONENTS PrintSupport Svg Qml REQUIRED)
+ if(${QT_VERSION_MAJOR} GREATER_EQUAL 6)
diff --git a/testing/tfblib/APKBUILD b/testing/tfblib/APKBUILD
deleted file mode 100644
index 365d129b54d..00000000000
--- a/testing/tfblib/APKBUILD
+++ /dev/null
@@ -1,28 +0,0 @@
-# Maintainer: Caleb Connolly <caleb@connolly.tech>
-# Contributor Caleb Connolly <caleb@connolly.tech>
-pkgname=tfblib
-pkgver=0.1.1
-pkgrel=0
-pkgdesc="A Tiny Linux Framebuffer Library"
-url="https://github.com/vvaltchev/tfblib"
-arch="all"
-license="BSD-2-Clause"
-options="!check" # no testsuite
-source="tfblib-$pkgver.tar.gz::https://github.com/vvaltchev/tfblib/archive/refs/tags/v$pkgver.tar.gz"
-makedepends="cmake linux-headers"
-
-build() {
- cmake -B build \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DCMAKE_BUILD_TYPE=MinSizeRel
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-
-sha512sums="
-f11072fa6ab50b7b532ff1e45d3e888fe83db40cb0dd44ccaff3d558c50d9bfd819c63a2eea79dc212e40a739606ac01e7de89470e41400638fd1740d9f2cdf3 tfblib-0.1.1.tar.gz
-"
diff --git a/testing/thanos/APKBUILD b/testing/thanos/APKBUILD
index 3887e208cd7..21847452e5e 100644
--- a/testing/thanos/APKBUILD
+++ b/testing/thanos/APKBUILD
@@ -1,34 +1,38 @@
# Contributor: wener <wenermail@gmail.com>
# Maintainer: wener <wenermail@gmail.com>
pkgname=thanos
-pkgver=0.23.1
-pkgrel=3
+pkgver=0.31.0
+pkgrel=5
pkgdesc="Highly available Prometheus setup with long term storage capabilities. CNCF Sandbox project."
url="https://github.com/thanos-io/thanos"
license="Apache-2.0"
-arch="all !riscv64" # prometheus
+# prometheus
+# 32-bit: doesn't build
+arch="all !x86 !armhf !armv7 !riscv64"
install="thanos.pre-install"
makedepends="go prometheus tzdata"
subpackages="$pkgname-openrc"
source="
$pkgname-$pkgver.tar.gz::https://github.com/thanos-io/thanos/archive/v$pkgver.tar.gz
+ assume-no-moving-gc.patch
thanos.initd
thanos.confd
"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
build() {
- GOFLAGS="$GOFLAGS -trimpath"
GOLDFLAGS="
- -extldflags '-static'
-X github.com/prometheus/common/version.Version=$pkgver
-X github.com/prometheus/common/version.Revision=AlpineLinux
-X github.com/prometheus/common/version.Branch=master
- -X github.com/prometheus/common/version.BuildUser=$USER@$HOSTNAME
+ -X github.com/prometheus/common/version.BuildUser=build@xyz
-X github.com/prometheus/common/version.BuildDate=$(date -u "+%Y%m%d-%H:%M:%S" ${SOURCE_DATE_EPOCH:+-d @$SOURCE_DATE_EPOCH})
"
go build \
- $GOFLAGS \
-ldflags "$GOLDFLAGS" \
./cmd/thanos
}
@@ -37,6 +41,7 @@ check() {
# some tests need external storage credentials or running server
# pkg/cacheutil go 1.15 compact
# pkg/pool alloc too much memory
+ # shellcheck disable=2046
go test $(go list ./... | grep -v \
-e 'test/e2e' \
-e 'pkg/shipper' \
@@ -64,7 +69,8 @@ package() {
}
sha512sums="
-50a6ba056ace9359d86ada006cb16ad810f79745b979ba405c61274a42d2aeb7e47ed65377777c619469d3055b3ce30bcd9f04ca0225dec9777e288a979ffacb thanos-0.23.1.tar.gz
+4bf4a0e3414c8157ca2ff1ae58c5e9c64d4966ac455495b95ccaa5bac2c726866e32cb30b8c87f2374f71b9eef27b6f8f05a578b69cabc535dd5cb806cb0a188 thanos-0.31.0.tar.gz
+bc9fe59136862b04c10a8e091ff90e9dcd08680a6debddc5321b0bf30efe5cc043f6c7a97c2422f6ee9eb6e19ad7288e4af85115689c62f96413e0e8b99ee5ab assume-no-moving-gc.patch
8407adbc29d90d36550ad16555d0b881d1d1745fba7bf5f4bd4a66bdf4abe196321106881dbba569c7e123d6abfbe78714b6e108b1e3c69b051270c3a46ba5c8 thanos.initd
c1bc9d71828b176eed964d5f673ea5e5d368f25ca21a3b12dcb8f8987f8bf12f35c06849d7fc4e6ffae52d98a5e636bdb63333930fe640c48e4d02a0b8db620a thanos.confd
"
diff --git a/testing/thanos/assume-no-moving-gc.patch b/testing/thanos/assume-no-moving-gc.patch
new file mode 100644
index 00000000000..49be26ea0a5
--- /dev/null
+++ b/testing/thanos/assume-no-moving-gc.patch
@@ -0,0 +1,28 @@
+bumps the version to make sure it works with go 1.20
+
+diff --git a/go.mod b/go.mod
+index c24c2aa..56ef923 100644
+--- a/go.mod
++++ b/go.mod
+@@ -126,7 +126,7 @@ require (
+ golang.org/x/exp v0.0.0-20230124195608-d38c7dcee874
+ )
+
+-require go4.org/unsafe/assume-no-moving-gc v0.0.0-20220617031537-928513b29760 // indirect
++require go4.org/unsafe/assume-no-moving-gc v0.0.0-20230525183740-e7c30c78aeb2 // indirect
+
+ require (
+ cloud.google.com/go/compute/metadata v0.2.3 // indirect
+diff --git a/go.sum b/go.sum
+index 05525ba..e6bbdb9 100644
+--- a/go.sum
++++ b/go.sum
+@@ -1026,6 +1026,8 @@ go4.org/intern v0.0.0-20220617035311-6925f38cc365 h1:t9hFvR102YlOqU0fQn1wgwhNvSb
+ go4.org/intern v0.0.0-20220617035311-6925f38cc365/go.mod h1:WXRv3p7T6gzt0CcJm43AAKdKVZmcQbwwC7EwquU5BZU=
+ go4.org/unsafe/assume-no-moving-gc v0.0.0-20220617031537-928513b29760 h1:FyBZqvoA/jbNzuAWLQE2kG820zMAkcilx6BMjGbL/E4=
+ go4.org/unsafe/assume-no-moving-gc v0.0.0-20220617031537-928513b29760/go.mod h1:FftLjUGFEDu5k8lt0ddY+HcrH/qU/0qk+H8j9/nTl3E=
++go4.org/unsafe/assume-no-moving-gc v0.0.0-20230525183740-e7c30c78aeb2 h1:WJhcL4p+YeDxmZWg141nRm7XC8IDmhz7lk5GpadO1Sg=
++go4.org/unsafe/assume-no-moving-gc v0.0.0-20230525183740-e7c30c78aeb2/go.mod h1:FftLjUGFEDu5k8lt0ddY+HcrH/qU/0qk+H8j9/nTl3E=
+ golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
+ golang.org/x/crypto v0.0.0-20181029021203-45a5f77698d3/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
+ golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
diff --git a/testing/theforceengine/APKBUILD b/testing/theforceengine/APKBUILD
new file mode 100644
index 00000000000..9a3762bece4
--- /dev/null
+++ b/testing/theforceengine/APKBUILD
@@ -0,0 +1,54 @@
+# Maintainer: Marian Buschsieweke <marian.buschsieweke@posteo.net>
+pkgname=theforceengine
+pkgver=1.09.540
+pkgrel=1
+pkgdesc="Modern rebuild of the Jedi Engine (needs purchased copy of game data files to run)"
+arch="all"
+url="https://theforceengine.github.io/"
+license="GPL-2.0-only"
+makedepends="$depends_dev
+ cmake
+ devil
+ devil-dev
+ glew-dev
+ libunwind-dev
+ rtmidi-dev
+ samurai
+ sdl2-dev
+ sdl2_image-dev
+ "
+source="
+ theforceengine-$pkgver.tar.gz::https://github.com/luciusDXL/TheForceEngine/archive/refs/tags/v$pkgver.tar.gz
+
+ backtrace.patch
+ path_max.patch
+ compilation_32bit_systems.patch
+ "
+subpackages="$pkgname-doc"
+options="!check" # no unit tests provided
+builddir="$srcdir/TheForceEngine-$pkgver"
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=RelWithDebInfo \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib
+ cmake --build build
+}
+
+doc() {
+ default_doc
+
+ amove usr/share/TheForceEngine/Documentation
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+db69909e6276e1a6a8ed9aad74566d1873970340ee2f49d6bb72b78e3b7c7eb46a6c415a0cff273f464292590cf924c96efe61f6dece73a0f063259772e0d4c0 theforceengine-1.09.540.tar.gz
+6bff94570ec327556b78dd1f967f00ff85c06325f5a017624a33c7b02a03dbf595b6921e7cb164f6556a485dfa5f269617d61213bde84056859c9719ef8c093c backtrace.patch
+d9b59854aa191fd18ff9b9a39f6f7ea1472cc60eb340ef86ef721f9f88a93fe2359eb0ed3b3253c2b44b6f28a2f5bd7bfaef6ec13ad287cadf0cf013ee5042c9 path_max.patch
+b5487f619da23f75babf735f42edfc58611791094135f1dca83c37aca30b6ab0bb138887a38f337237981cba8402e0bacc6a54315700fb9a3b36dae608ed5da3 compilation_32bit_systems.patch
+"
diff --git a/testing/theforceengine/backtrace.patch b/testing/theforceengine/backtrace.patch
new file mode 100644
index 00000000000..9ab6438505e
--- /dev/null
+++ b/testing/theforceengine/backtrace.patch
@@ -0,0 +1,32 @@
+Drop backtracing feature, as it is implemented using using glibc specific
+features.
+
+--- a/TheForceEngine/TFE_System/CrashHandler/crashHandlerLinux.cpp
++++ b/TheForceEngine/TFE_System/CrashHandler/crashHandlerLinux.cpp
+@@ -1,6 +1,5 @@
+ #include <cstring>
+ #include <errno.h>
+-#include <execinfo.h>
+ #include <fcntl.h>
+ #include <inttypes.h>
+ #include <unistd.h>
+@@ -68,18 +67,7 @@
+ TFE_System::logWrite(LOG_ERROR, "CrashHandler", "faulting address %p", siginfo->si_addr);
+ }
+
+- // backtrace() can also segfault; purposefully ignore SEGV before calling it.
+- signal(SIGSEGV, SIG_IGN);
+- entries = backtrace(buf, 512);
+- if (entries) {
+- ents = backtrace_symbols(buf, entries);
+- TFE_System::logWrite(LOG_ERROR, "CrashHandler", "Backtrace %d:", entries);
+- for (i = 0; i < entries; i++) {
+- TFE_System::logWrite(LOG_ERROR, "CrashHandler", "%03d %s", i, ents[i]);
+- }
+- } else {
+- TFE_System::logWrite(LOG_ERROR, "CrashHandler", "no backtrace possible");
+- }
++ TFE_System::logWrite(LOG_ERROR, "CrashHandler", "no backtrace possible");
+
+ // for certain signals, the default handler will create
+ // a coredump if enabled by administrator.
diff --git a/testing/theforceengine/compilation_32bit_systems.patch b/testing/theforceengine/compilation_32bit_systems.patch
new file mode 100644
index 00000000000..2e80cece7d2
--- /dev/null
+++ b/testing/theforceengine/compilation_32bit_systems.patch
@@ -0,0 +1,29 @@
+This fixes compilation on 32 bit systems where `size_t min(size_t, size_t)`
+and `uint32_t min(uint32_t, uint32_t)` is the same signature.
+
+--- a/TheForceEngine/TFE_Jedi/Math/core_math.h
++++ b/TheForceEngine/TFE_Jedi/Math/core_math.h
+@@ -6,6 +6,9 @@
+ #include <TFE_System/types.h>
+ #include "fixedPoint.h"
+ #include "cosTable.h"
++#include <climits>
++#include <cstddef>
++#include <cstdint>
+
+ namespace TFE_Jedi
+ {
+@@ -337,6 +340,7 @@
+ return x - (x >> 1);
+ }
+
++#if SIZE_MAX != UINT32_MAX
+ // Size_t
+ inline size_t min(size_t a, size_t b)
+ {
+@@ -352,4 +356,5 @@
+ {
+ return min(max(x, a), b);
+ }
++#endif
+ }
diff --git a/testing/theforceengine/path_max.patch b/testing/theforceengine/path_max.patch
new file mode 100644
index 00000000000..36e21875a4a
--- /dev/null
+++ b/testing/theforceengine/path_max.patch
@@ -0,0 +1,13 @@
+Fix compilation on ppc64le, where PATH_MAX is provided only if linux/limits.h
+is included directly.
+
+--- a/TheForceEngine/TFE_FileSystem/fileutil-posix.cpp
++++ b/TheForceEngine/TFE_FileSystem/fileutil-posix.cpp
+@@ -8,6 +8,7 @@
+ #include <strings.h>
+ #include <sys/stat.h>
+ #include <unistd.h>
++#include <linux/limits.h>
+ #include <TFE_System/system.h>
+ #include "fileutil.h"
+ #include "filestream.h"
diff --git a/testing/thefuck/APKBUILD b/testing/thefuck/APKBUILD
index b50af86895b..99c8cab3858 100644
--- a/testing/thefuck/APKBUILD
+++ b/testing/thefuck/APKBUILD
@@ -2,13 +2,14 @@
# Maintainer: Simon Frankenberger <simon-alpine@fraho.eu>
pkgname=thefuck
pkgver=3.32
-pkgrel=0
+pkgrel=3
pkgdesc="The Fuck is a magnificent app that corrects errors in previous console commands."
url="https://github.com/nvbn/thefuck"
arch="noarch"
license="MIT"
depends="py3-colorama py3-six py3-decorator py3-psutil py3-pyte"
makedepends="py3-setuptools"
+subpackages="$pkgname-pyc"
source="thefuck-$pkgver.tar.gz::https://github.com/nvbn/thefuck/archive/$pkgver.tar.gz
"
@@ -21,10 +22,9 @@ build() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
-
sha512sums="
961b9b6dc374cc0b854698455f688cf110adb21cfebd4cb645eb5f1ce11c14de6699bb4d40de86a5f9461273cbfc2eea318a9d437f803dc578dd431966cf26c1 thefuck-3.32.tar.gz
"
diff --git a/testing/thelounge/APKBUILD b/testing/thelounge/APKBUILD
new file mode 100644
index 00000000000..a08de3acb06
--- /dev/null
+++ b/testing/thelounge/APKBUILD
@@ -0,0 +1,81 @@
+# Contributor: Kay Thomas <kaythomas@pm.me>
+# Maintainer: Kay Thomas <kaythomas@pm.me>
+pkgname=thelounge
+pkgver=4.4.1
+pkgrel=0
+pkgdesc="Modern, responsive, cross-platform, self-hosted web IRC client"
+url="https://thelounge.chat"
+# x86: textrels
+# s390x: fails to check
+# riscv64: fails to build
+arch="all !x86 !s390x !riscv64"
+license="MIT"
+depends="nodejs"
+makedepends="yarn npm python3"
+subpackages="$pkgname-openrc"
+pkgusers="thelounge"
+pkggroups="thelounge"
+install="$pkgname.pre-install $pkgname.post-install"
+source="$pkgname-$pkgver.tar.gz::https://github.com/thelounge/thelounge/archive/v$pkgver.tar.gz
+ no-version-test.patch
+ thelounge.initd
+ "
+options="net" # npm
+
+prepare() {
+ default_prepare
+
+ yarn install --frozen-lockfile
+}
+
+build() {
+ NODE_ENV=production yarn run build
+}
+
+check() {
+ CI=yes yarn run test:mocha
+}
+
+package() {
+ yarn install --production --ignore-scripts --prefer-offline
+ NODE_ENV=production npm install --unsafe-perm -g --prefix "$pkgdir"/usr
+
+ # Remove incorrect symlink, copy correct files
+ rm "$pkgdir"/usr/lib/node_modules/thelounge
+ mkdir -p "$pkgdir"/usr/lib/node_modules/thelounge
+ cp -a index.js client public node_modules dist package.json "$pkgdir"/usr/lib/node_modules/thelounge/
+
+ # cleanup unused files
+ find "$pkgdir" -type f -a \( \
+ -name "*.ts" \
+ -o -name "webpack*" \
+ -o -name "tsconfig*" \
+ -o -name "babel.config*" \
+ -o -name "README*" \
+ -o -name "CHANGELOG*" \
+ -o -name "*.map" \
+ -o -name "LICENSE" \
+ \) \
+ -delete
+
+ # Set home location
+ echo /var/lib/thelounge > \
+ "$pkgdir"/usr/lib/node_modules/$pkgname/.thelounge_home
+
+ # Add default config
+ # this is only read from 'home' so we have to just put everything in var/lib
+ install -dm755 -o thelounge -g thelounge \
+ "$pkgdir"/var/lib/thelounge
+ install -m644 -o thelounge -g thelounge \
+ "$pkgdir"/usr/lib/node_modules/$pkgname/dist/defaults/config.js \
+ "$pkgdir"/var/lib/thelounge/config.js
+
+ install -Dm755 "$srcdir"/$pkgname.initd \
+ "$pkgdir"/etc/init.d/$pkgname
+}
+
+sha512sums="
+7695121a713a23688bc6f52dae2574bab1288eea930fd50d4dd85037233e9f23bd8e460980c69cdd14ea8648da4720d84e8196547b6a18e69d2f478b43d6e29a thelounge-4.4.1.tar.gz
+cbf80e23b0af8f0185699d6b03816c645c51b85fff7f163d3cd3d00296ed816b6ab01529b359fbfd549a79e8adb72bbc83bc7a389cf13e0afd50636ff79a138e no-version-test.patch
+f367d27ebcc412ff03c12ae98e50aeae5051fb5ffa9da6220f664c59993ed0e330b55b3b41fe941d546634901163d006e318891b4b886f6c49a93e0888fccd3e thelounge.initd
+"
diff --git a/testing/thelounge/no-version-test.patch b/testing/thelounge/no-version-test.patch
new file mode 100644
index 00000000000..dfae092df1f
--- /dev/null
+++ b/testing/thelounge/no-version-test.patch
@@ -0,0 +1,19 @@
+diff --git a/test/src/helperTest.ts b/test/src/helperTest.ts
+index 2a8ddc8..22f0532 100644
+--- a/test/src/helperTest.ts
++++ b/test/src/helperTest.ts
+@@ -40,14 +40,6 @@ describe("Helper", function () {
+ describe("#getVersion()", function () {
+ const version = Helper.getVersion();
+
+- it("should mention it is served from source code", function () {
+- expect(version).to.include("source");
+- });
+-
+- it("should include a short Git SHA", function () {
+- expect(version).to.match(/\([0-9a-f]{7,11} /);
+- });
+-
+ it("should include a valid semver version", function () {
+ expect(version).to.match(/v[0-9]+\.[0-9]+\.[0-9]+/);
+ });
diff --git a/testing/thelounge/thelounge.initd b/testing/thelounge/thelounge.initd
new file mode 100644
index 00000000000..b10d1c5f8c3
--- /dev/null
+++ b/testing/thelounge/thelounge.initd
@@ -0,0 +1,14 @@
+#!/sbin/openrc-run
+
+supervisor=supervise-daemon
+name="thelounge"
+command="/usr/bin/thelounge"
+command_args="start"
+command_user="thelounge:thelounge"
+command_background=true
+pidfile="/run/thelounge.pid"
+
+depend() {
+ need net localmount
+ after firewall
+}
diff --git a/testing/thelounge/thelounge.post-install b/testing/thelounge/thelounge.post-install
new file mode 100644
index 00000000000..16517802442
--- /dev/null
+++ b/testing/thelounge/thelounge.post-install
@@ -0,0 +1,13 @@
+#!/bin/sh
+
+cat >&2 <<-EOF
+*
+* The configuration is in /var/lib/thelounge/config.js.
+* To add users, use the cli:
+* doas -u thelounge thelounge ..
+* e.g.
+* doas -u thelounge thelounge add myuser
+*
+EOF
+
+exit 0
diff --git a/testing/thelounge/thelounge.pre-install b/testing/thelounge/thelounge.pre-install
new file mode 100644
index 00000000000..b91b1ef060c
--- /dev/null
+++ b/testing/thelounge/thelounge.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S thelounge 2>/dev/null
+adduser -S -D -H -s /sbin/nologin -G thelounge -g thelounge thelounge 2>/dev/null
+
+exit 0
diff --git a/testing/theme.sh/APKBUILD b/testing/theme.sh/APKBUILD
new file mode 100644
index 00000000000..088a7cb4988
--- /dev/null
+++ b/testing/theme.sh/APKBUILD
@@ -0,0 +1,29 @@
+# Contributor: Hugo Osvaldo Barrera <hugo@whynothugo.nl>
+# Maintainer: Hugo Osvaldo Barrera <hugo@whynothugo.nl>
+pkgname=theme.sh
+pkgver=1.1.5
+pkgrel=0
+pkgdesc="Script to change the terminal theme"
+url="https://github.com/lemnos/theme.sh"
+arch="noarch"
+license="MIT"
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/lemnos/theme.sh/archive/refs/tags/v$pkgver.tar.gz"
+
+build() {
+ make all
+}
+
+check() {
+ # Check that is runs okay:
+ ./bin/theme.sh -l > /dev/null
+}
+
+package() {
+ install -Dm 755 bin/theme.sh "$pkgdir/usr/bin/theme.sh"
+ install -Dm 644 LICENSE "$pkgdir/usr/share/licenses/theme.sh/LICENSE"
+}
+
+sha512sums="
+819b6154d70f4539e815072ed7da3c2d413301f4c721721e246331d95ceb0e83fbcdbc8b9853477397a0437519aef461dfed726de4910572fa2d26834d6f1ac1 theme.sh-1.1.5.tar.gz
+"
diff --git a/testing/thermald/APKBUILD b/testing/thermald/APKBUILD
index 9fe0a4795d0..e4eac61e00c 100644
--- a/testing/thermald/APKBUILD
+++ b/testing/thermald/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: mellotron <mellotron@tutanota.com>
-# Maintainer:
+# Maintainer: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
pkgname=thermald
_pkgname=thermal_daemon
-pkgver=2.4.7
+pkgver=2.5.6
pkgrel=0
pkgdesc="Thermal daemon for IA"
url="https://github.com/intel/thermal_daemon"
@@ -42,6 +42,6 @@ package() {
}
sha512sums="
-26b09a18d40812705d277416752f7afd0962f0562d9701c9072140089b869c328f6b0caaa08744a660cd83b6a0313098a07aef11e1a2b371a81d2e8014c38887 thermald-2.4.7.tar.gz
+d039e4bd4ed203caf786c8090c27910b5b5f3886e8e4d160d6347bb2b8c1d6aaaca14958ee91ad4aedb02e67f8a6403805719bf07d55f03fe1f28f3e4378ae73 thermald-2.5.6.tar.gz
ea8964b15fdebc2fb59e93c15b813b93691c2ba01689ac6080f1308a3063b23cba56b4539ccae87575689036f74300a1c22c9b0e77d4ecef9bc08198d7fe4892 thermald.initd
"
diff --git a/testing/thumbdrives/APKBUILD b/testing/thumbdrives/APKBUILD
index 81035630e79..9a368a3edd1 100644
--- a/testing/thumbdrives/APKBUILD
+++ b/testing/thumbdrives/APKBUILD
@@ -1,23 +1,25 @@
# Maintainer: Martijn Braam <martijn@brixit.nl>
pkgname=thumbdrives
-pkgver=0.3.1
-pkgrel=1
+pkgver=0.3.2
+pkgrel=0
pkgdesc="Mass storage and iso emulator"
url="https://git.sr.ht/~martijnbraam/thumbdrives"
arch="noarch"
license="MIT"
depends="python3 py3-gobject3 py3-xdg py3-setuptools gtk+3.0 libhandy"
-makedepends="py3-setuptools glib-dev libhandy-dev meson ninja"
+makedepends="glib-dev libhandy-dev meson ninja"
source="$pkgname-$pkgver.tar.gz::https://git.sr.ht/~martijnbraam/thumbdrives/archive/$pkgver.tar.gz"
options="!check" # There's no testsuite
build() {
abuild-meson . output
- meson compile ${JOBS:+-j ${JOBS}} -C output
+ meson compile -C output
}
package() {
DESTDIR="$pkgdir" meson install --no-rebuild -C output
}
-sha512sums="3d4d901975ef1f3ccda6df9a371944702f28ba4590ab9b3758f53b2f38bd5aa666660d720428836f99c6a7adb6333399e3991c6a641273f72fa9c4e0ec2362b2 thumbdrives-0.3.1.tar.gz"
+sha512sums="
+1594a303e375ca489fbe671e6917013c6d32239d8dfe325616ba94da81ca95cbe82fe0cb719f91a0f78e1b18d59713048899442749ead0a0cdd29508a0bea1d6 thumbdrives-0.3.2.tar.gz
+"
diff --git a/testing/thunarx-python/APKBUILD b/testing/thunarx-python/APKBUILD
index ce3bc7683d6..93f01145d73 100644
--- a/testing/thunarx-python/APKBUILD
+++ b/testing/thunarx-python/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=thunarx-python
pkgver=0.5.2
-pkgrel=0
+pkgrel=2
pkgdesc="Python bindings for the Thunar Extension Framework"
url="https://wiki.xfce.org/thunarx-python"
arch="all"
diff --git a/testing/tic-80/APKBUILD b/testing/tic-80/APKBUILD
new file mode 100644
index 00000000000..e13125f390b
--- /dev/null
+++ b/testing/tic-80/APKBUILD
@@ -0,0 +1,151 @@
+# Contributor: mio <miyopan@e.email>
+# Maintainer: mio <miyopan@e.email>
+pkgname=tic-80
+pkgver=1.1.2837
+# gitrev is used to insert the correct version hash during build
+_gitrev="be42d6f146cfa520b9b1050feba10cc8c14fb3bd"
+pkgrel=2
+pkgdesc="Fantasy computer for making, playing and sharing tiny games"
+url="https://tic80.com/"
+license="MIT"
+# ppc64le: build failed with libpng.a error
+# riscv64: blocked by janet-dev
+arch="all !ppc64le !riscv64"
+makedepends="
+ cmake
+ curl-dev
+ doxygen
+ freeglut-dev
+ giflib-dev
+ glu-dev
+ http-parser-dev
+ jack-dev
+ janet-dev
+ libpng-dev
+ libuv-dev
+ lua5.3-dev
+ pulseaudio-dev
+ ruby-dev
+ samurai
+ sdl2-dev
+ zlib-dev
+ "
+builddir="$srcdir"/TIC-80-"$pkgver"
+options="!check" # No tests
+
+# Submodules list from https://github.com/nesbox/TIC-80/tree/v$pkgver/vendor
+# moonscript: vendor library contains a required header file
+# mruby: repo mruby-dev errors when building vendor zip (zip.co.o)
+# quickjs: repo quickjs-dev errors when linking lib/tic80_libretro.so
+# sokol: not enabled by default, not included as dependency
+# zip: a minizip fork not directly replaceable by repo zip
+# s7: no gitrev in vendor/, using latest gitrev from upstream
+_argparse_rev="0d5f5d0745df14a3f373f7eed85bf524714f4524"
+_blip_buf_rev="330226d9b55ecbeea644e17b5e0f096a165ca07e"
+_dirent_rev="c885633e126a3a949ec0497273ec13e2c03e862c"
+_lpeg_rev="73d8614a8dea404cf7bfe25a6e4cea7183dc9fb7"
+_moonscript_rev="17179283012b392bff972ad66231d73bfeec6e90"
+_mruby_rev="7fe6f3976eca19a86fe533deb4c60b31cd80a236"
+_msf_gif_rev="7829c8f439d013deeb54eba94761403e1da2a960"
+_naett_rev="10a9624456829e5f2b4c264e14760301125d12eb"
+_pocketpy_rev="7312afdad24bb308037088d34b32ed0078fed7d2"
+_quickjs_rev="b7c0161f2ad1360f0837abafc6abf0edb82c0fa7"
+_s7_rev="60c3805e24d3ace68d8710e26d175c5c5dadcc74"
+_squirrel_rev="9dcf74f99097898dd5a111c4a55b89d1c4d606c0"
+_wasm3_rev="a3abb3f2d320994be59dfbe2cdafa8d0b6a8253e"
+_wren_rev="4a18fc489f9ea3d253b20dd40f4cdad0d6bb40eb"
+_zip_rev="d7df626f3aa457e01669f65e61bf8f484e352941"
+_submodules="
+ argparse-$_argparse_rev
+ blip-buf-$_blip_buf_rev
+ dirent-$_dirent_rev
+ lpeg-$_lpeg_rev
+ moonscript-$_moonscript_rev
+ mruby-$_mruby_rev
+ msf_gif-$_msf_gif_rev
+ naett-$_naett_rev
+ pocketpy-$_pocketpy_rev
+ quickjs-$_quickjs_rev
+ s7-$_s7_rev
+ squirrel-$_squirrel_rev
+ wasm3-$_wasm3_rev
+ wren-$_wren_rev
+ zip-$_zip_rev
+ "
+source="tic-80-$pkgver.tar.gz::https://github.com/nesbox/TIC-80/archive/v$pkgver/tic80-v$pkgver.tar.gz
+ argparse-$_argparse_rev.tar.gz::https://github.com/cofyc/argparse/archive/$_argparse_rev.tar.gz
+ blip-buf-$_blip_buf_rev.tar.gz::https://github.com/nesbox/blip-buf/archive/$_blip_buf_rev.tar.gz
+ dirent-$_dirent_rev.tar.gz::https://github.com/tronkko/dirent/archive/$_dirent_rev.tar.gz
+ lpeg-$_lpeg_rev.tar.gz::https://github.com/nesbox/lpeg/archive/$_lpeg_rev.tar.gz
+ moonscript-$_moonscript_rev.tar.gz::https://github.com/nesbox/moonscript/archive/$_moonscript_rev.tar.gz
+ mruby-$_mruby_rev.tar.gz::https://github.com/mruby/mruby/archive/$_mruby_rev.tar.gz
+ msf_gif-$_msf_gif_rev.tar.gz::https://github.com/notnullnotvoid/msf_gif/archive/$_msf_gif_rev.tar.gz
+ naett-$_naett_rev.tar.gz::https://github.com/erkkah/naett/archive/$_naett_rev.tar.gz
+ pocketpy-$_pocketpy_rev.tar.gz::https://github.com/blueloveTH/pocketpy/archive/$_pocketpy_rev.tar.gz
+ quickjs-$_quickjs_rev.tar.gz::https://github.com/nesbox/quickjs/archive/$_quickjs_rev.tar.gz
+ s7-$_s7_rev.tar.gz::https://cm-gitlab.stanford.edu/bil/s7/-/archive/$_s7_rev.tar.gz
+ squirrel-$_squirrel_rev.tar.gz::https://github.com/albertodemichelis/squirrel/archive/$_squirrel_rev.tar.gz
+ wasm3-$_wasm3_rev.tar.gz::https://github.com/wasm3/wasm3/archive/$_wasm3_rev.tar.gz
+ wren-$_wren_rev.tar.gz::https://github.com/wren-lang/wren/archive/$_wren_rev.tar.gz
+ zip-$_zip_rev.tar.gz::https://github.com/kuba--/zip/archive/$_zip_rev.tar.gz
+ use-repo-deps.patch
+ "
+
+prepare() {
+ default_prepare
+ cd "$srcdir"
+
+ # Copy extracted submodules into the main package source
+ _vendor_dir="$srcdir"/TIC-80-"$pkgver"/vendor/
+ # s7 submodule: replace with upstream version
+ rm -r "$_vendor_dir"/s7
+ for _mod in $_submodules; do
+ _mod_rev=${_mod##*-}
+ _mod_name=$(echo $_mod | sed -e "s/-$_mod_rev//")
+ mv $_mod $_mod_name
+ mv $_mod_name $_vendor_dir
+ done
+
+ # Set version revision for executable to display the correct version
+ _version_rev=${pkgver##*\.}
+ sed -i "s/VERSION_REVISION 0/VERSION_REVISION $_version_rev/" \
+ TIC-80-"$pkgver"/CMakeLists.txt
+}
+
+build() {
+ cmake -B build-tic -G Ninja \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DVERSION_HASH=${_gitrev:0:7} \
+ -DCMAKE_BUILD_WITH_INSTALL_RPATH=ON
+ cmake --build build-tic
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build-tic
+
+ # Extra tools need manual install
+ for tool in build-tic/bin/*; do
+ install -Dm755 $tool -t "$pkgdir"/usr/bin
+ done
+}
+
+sha512sums="
+9e42924923bf2f1e7b1f6edd54a0f1f8c930f634115f54ff3ae1f2fbeb15b46837598713eb689691d9bff9abed22ef0577e0360f7a2dd453b17fd1f722e35abb tic-80-1.1.2837.tar.gz
+2dba667249c19ec470421327f6cc20f11a168847a99f60db395980c28339a269041a778645355d8ecbac76e1eac0b77c12f3f2fb3573e0e372ccfffdc947ca1c argparse-0d5f5d0745df14a3f373f7eed85bf524714f4524.tar.gz
+69c42cd93cbb640952244c44cdaf75e0808536ca37300912d026c2aedc878b5f105ae109a5eef1a558b1fdc8a692112491515c6813113a007878908224eba5d8 blip-buf-330226d9b55ecbeea644e17b5e0f096a165ca07e.tar.gz
+ce4a2b445073b3bb82d31934ce2d1dcea771723d4cf1778e065cfe787e91128d995cfccc96d860aceb3637f35627dfbf597e423967f08c5ecf855992e9a84581 dirent-c885633e126a3a949ec0497273ec13e2c03e862c.tar.gz
+93956abcafe84d200fab41d54686cbba6ac8eae91292dc4282186543edef8211e2768dab83854b149e21cb0775b1c2ef8fd79b94f3f72a860b9710841c843b2e lpeg-73d8614a8dea404cf7bfe25a6e4cea7183dc9fb7.tar.gz
+05a26627c1a8686d876654751e590c024aa603fff6ff75ed4ed61d499c16c9fef5616222a6dfc5f11aaf9a7ed79786f92e5a15ca8a42fa79c5adba3228f3bdad moonscript-17179283012b392bff972ad66231d73bfeec6e90.tar.gz
+0211031f5ed457d0872f34dc959468c2c6f545c5eb76c878b6fb867df333e5c534e9d311fb8bf30d3c8b2624bcae1e54f92719060faa47211a9883151a19d977 mruby-7fe6f3976eca19a86fe533deb4c60b31cd80a236.tar.gz
+0f02b6ef21372ea744ce46d14072887acfa6b8e67d5b39a8b63b87a15e87f414cb3f4635e0f99f1a037904b65fb68b0186d2904761631ae920c7874b7f0e1bf1 msf_gif-7829c8f439d013deeb54eba94761403e1da2a960.tar.gz
+e17246e5b04120388cfb688bc9bf1895fcd198351b856a4f3da9116ea0091334ffaaca1cdf3a7f6df99c0181037e564c0b2501126617d93d5f37b84f8a6420f7 naett-10a9624456829e5f2b4c264e14760301125d12eb.tar.gz
+392ef1fe0d352c20ec7ede4676d0f1d6236c0d7d5e9db00594a84132b35bdb38d71a7fd09ee42bc5ee6607d882fdf2e31faeaf545f6a986c42b6f6771bd834f9 pocketpy-7312afdad24bb308037088d34b32ed0078fed7d2.tar.gz
+e7d5f7a9a39f4a7f93e8851f5f916e4122bd95c50efe52f864dbc5ec0aee31b76638cdc7d24059e5b6051d0e4021764d97ef37b596115c0991ebfac4274ba95e quickjs-b7c0161f2ad1360f0837abafc6abf0edb82c0fa7.tar.gz
+161c3768c3ce2106e32a1ca86f1e8ef2cc424fb54f03e7fe22856822a1afcebbe69f219677e66ebbb798edcc48e40cbc87d5966d6d5e26c9b17e348542d0ad14 s7-60c3805e24d3ace68d8710e26d175c5c5dadcc74.tar.gz
+0bc2e0842b429854a8f61f2ed0b2261f6af49849f1a90f2fc2aa3578a892b2a97131dcc209eb9c7ceda5544162542a757d4ca091797f0fc0324664f3cfe7fc7e squirrel-9dcf74f99097898dd5a111c4a55b89d1c4d606c0.tar.gz
+e23e24b697c068b27a5aba71dec33d84b5079155344aa52d2997e2267986167df30ee3e264ad8ff40c62ae73b95eb48896b9e8a47bf9904cc23bbae61818e245 wasm3-a3abb3f2d320994be59dfbe2cdafa8d0b6a8253e.tar.gz
+b3d79e9cb647e52db06d5cddfc8c93d05ae0e8d87f0f879ac2b812fcc7f55e018d21d3b04d62eaeb12e6d931b5e43fbe357b187e7f446e86e39be015c51c2eee wren-4a18fc489f9ea3d253b20dd40f4cdad0d6bb40eb.tar.gz
+ebfa73418963010277f112e1e652c8da54994087a1d8095c527f75a799e4d0933e4ff78bdb361cedb1c844b167145fe010c2805a08c2825476f755899eb68fdc zip-d7df626f3aa457e01669f65e61bf8f484e352941.tar.gz
+230712b0d3c42d924bc5f2b05e9c3aeac7ddd1fba4971ce9a43d4f67585cc1c89fba666c3a0c3fb43e227f7410b8cd6cbb9211bc4fcf39b7079c3f8f44ea210c use-repo-deps.patch
+"
diff --git a/testing/tic-80/use-repo-deps.patch b/testing/tic-80/use-repo-deps.patch
new file mode 100644
index 00000000000..cb733d714d7
--- /dev/null
+++ b/testing/tic-80/use-repo-deps.patch
@@ -0,0 +1,315 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -164,51 +164,15 @@
+ # LUA
+ ################################
+
+-set(LUA_DIR ${THIRDPARTY_DIR}/lua)
+-set(LUA_SRC
+- ${LUA_DIR}/lapi.c
+- ${LUA_DIR}/lcode.c
+- ${LUA_DIR}/lctype.c
+- ${LUA_DIR}/ldebug.c
+- ${LUA_DIR}/ldo.c
+- ${LUA_DIR}/ldump.c
+- ${LUA_DIR}/lfunc.c
+- ${LUA_DIR}/lgc.c
+- ${LUA_DIR}/llex.c
+- ${LUA_DIR}/lmem.c
+- ${LUA_DIR}/lobject.c
+- ${LUA_DIR}/lopcodes.c
+- ${LUA_DIR}/lparser.c
+- ${LUA_DIR}/lstate.c
+- ${LUA_DIR}/lstring.c
+- ${LUA_DIR}/ltable.c
+- ${LUA_DIR}/ltm.c
+- ${LUA_DIR}/lundump.c
+- ${LUA_DIR}/lvm.c
+- ${LUA_DIR}/lzio.c
+- ${LUA_DIR}/lauxlib.c
+- ${LUA_DIR}/lbaselib.c
+- ${LUA_DIR}/lcorolib.c
+- ${LUA_DIR}/ldblib.c
+- ${LUA_DIR}/liolib.c
+- ${LUA_DIR}/lmathlib.c
+- ${LUA_DIR}/loslib.c
+- ${LUA_DIR}/lstrlib.c
+- ${LUA_DIR}/ltablib.c
+- ${LUA_DIR}/lutf8lib.c
+- ${LUA_DIR}/loadlib.c
+- ${LUA_DIR}/linit.c
+-)
++# [patch] Use system lua
++find_package(PkgConfig)
++pkg_check_modules(Lua REQUIRED lua5.3 IMPORTED_TARGET GLOBAL)
++add_library(Lua::Lua ALIAS PkgConfig::Lua)
++set(LUA_INCLUDE_DIR "/usr/include/lua5.3")
++set(LUA_LIBRARIES "/usr/lib/lua5.3")
++include_directories(${LUA_INCLUDE_DIR})
++link_directories(${LUA_LIBRARIES})
+
+-add_library(lua STATIC ${LUA_SRC})
+-
+-target_compile_definitions(lua PRIVATE LUA_COMPAT_5_2)
+-target_include_directories(lua INTERFACE ${THIRDPARTY_DIR}/lua)
+-
+-if(N3DS)
+- target_compile_definitions(lua PUBLIC LUA_32BITS)
+-endif()
+-
+ ################################
+ # LPEG
+ ################################
+@@ -421,22 +403,10 @@
+ # GIFLIB
+ ################################
+
+-set(GIFLIB_DIR ${THIRDPARTY_DIR}/giflib)
+-set(GIFLIB_SRC
+- ${GIFLIB_DIR}/dgif_lib.c
+- ${GIFLIB_DIR}/egif_lib.c
+- ${GIFLIB_DIR}/gif_err.c
+- ${GIFLIB_DIR}/gif_font.c
+- ${GIFLIB_DIR}/gif_hash.c
+- ${GIFLIB_DIR}/gifalloc.c
+- ${GIFLIB_DIR}/openbsd-reallocarray.c
+-)
+-add_library(giflib STATIC ${GIFLIB_SRC})
+-target_include_directories(giflib
+- PRIVATE ${GIFLIB_DIR}
+- INTERFACE
+- ${THIRDPARTY_DIR}/giflib
+- ${THIRDPARTY_DIR}/msf_gif)
++# [patch] Use system giflib but include vendor msf_gif encoder
++find_package(GIF)
++set(MSF_GIF_INCLUDE_DIR ${THIRDPARTY_DIR}/msf_gif)
++include_directories(${MSF_GIF_INCLUDE_DIR})
+
+ ################################
+ # Blipbuf
+@@ -484,39 +451,10 @@
+ option(BUILD_WITH_JANET "Janet Enabled" ${BUILD_WITH_JANET_DEFAULT})
+ message("BUILD_WITH_JANET: ${BUILD_WITH_JANET}")
+
++# [patch] Use system janet
+ if(BUILD_WITH_JANET)
+-
+- if(MINGW)
+- find_program(GIT git)
+- get_filename_component(GIT_DIR ${GIT} DIRECTORY)
+- find_program(GITBASH bash PATHS "${GIT_DIR}/../bin" NO_DEFAULT_PATH)
+-
+- if(NOT GITBASH)
+- message(FATAL_ERROR "Git Bash not found!")
+- endif()
+-
+- add_custom_command(
+- OUTPUT ${THIRDPARTY_DIR}/janet/build/c/janet.c
+- COMMAND ${GITBASH} -c "CC=gcc mingw32-make build/c/janet.c"
+- WORKING_DIRECTORY ${THIRDPARTY_DIR}/janet/
+- )
+- elseif(WIN32)
+- add_custom_command(
+- OUTPUT ${THIRDPARTY_DIR}/janet/build/c/janet.c
+- COMMAND ./build_win.bat
+- WORKING_DIRECTORY ${THIRDPARTY_DIR}/janet/
+- )
+- else()
+- add_custom_command(
+- OUTPUT ${THIRDPARTY_DIR}/janet/build/c/janet.c
+- COMMAND make build/c/janet.c
+- WORKING_DIRECTORY ${THIRDPARTY_DIR}/janet/
+- )
+- endif()
+-
+- add_library(janet ${THIRDPARTY_DIR}/janet/build/c/janet.c)
+- target_include_directories(janet PUBLIC ${THIRDPARTY_DIR}/janet/src/include)
+- target_include_directories(janet PUBLIC ${CMAKE_SOURCE_DIR}/build/janet/)
++ set(JANET_INCLUDE_DIR "/usr/include/janet")
++ include_directories(${JANET_INCLUDE_DIR})
+ endif()
+
+ ################################
+@@ -580,7 +518,8 @@
+ scheme
+ quickjs
+ blipbuf
+- zlib
++ # [patch] Fix zlib name
++ z
+ )
+
+ if(BUILD_WITH_MRUBY)
+@@ -593,7 +532,8 @@
+
+ if(${BUILD_DEPRECATED})
+ target_compile_definitions(tic80core${SCRIPT} PRIVATE BUILD_DEPRECATED)
+- target_link_libraries(tic80core${SCRIPT} giflib)
++ # [patch] Fix giflib name
++ target_link_libraries(tic80core${SCRIPT} gif)
+ endif()
+
+ if(LINUX)
+@@ -639,21 +579,12 @@
+ ################################
+ # SDL2
+ ################################
+-if(BUILD_SDL AND NOT EMSCRIPTEN AND NOT RPI)
+
+- if(WIN32)
+- set(HAVE_LIBC TRUE)
+- endif()
+-
+- if(ANDROID)
+- include_directories(${ANDROID_NDK}/sources/android/cpufeatures)
+- set(SDL_STATIC_PIC ON CACHE BOOL "" FORCE)
+- endif()
+-
+- set(SDL_SHARED OFF CACHE BOOL "" FORCE)
+-
+- add_subdirectory(${THIRDPARTY_DIR}/sdl2)
+-
++# [patch] Use system sdl2
++if (BUILD_SDL)
++ find_package(SDL2)
++ set(SDL2_INCLUDE_DIR "/usr/include/SDL2")
++ include_directories(${SDL2_INCLUDE_DIR})
+ endif()
+
+ ################################
+@@ -679,7 +610,8 @@
+ target_link_options(player-sdl PRIVATE -static)
+ endif()
+
+- target_link_libraries(player-sdl tic80core SDL2-static SDL2main)
++ # [patch] Fix sdl2 name
++ target_link_libraries(player-sdl tic80core SDL2 SDL2main)
+ endif()
+
+ ################################
+@@ -820,34 +752,9 @@
+ # ZLIB
+ ################################
+
+-if (NOT N3DS)
++# [patch] Use system zlib
++find_package(ZLIB)
+
+-set(ZLIB_DIR ${THIRDPARTY_DIR}/zlib)
+-set(ZLIB_SRC
+- ${ZLIB_DIR}/adler32.c
+- ${ZLIB_DIR}/compress.c
+- ${ZLIB_DIR}/crc32.c
+- ${ZLIB_DIR}/deflate.c
+- ${ZLIB_DIR}/inflate.c
+- ${ZLIB_DIR}/infback.c
+- ${ZLIB_DIR}/inftrees.c
+- ${ZLIB_DIR}/inffast.c
+- ${ZLIB_DIR}/trees.c
+- ${ZLIB_DIR}/uncompr.c
+- ${ZLIB_DIR}/zutil.c
+-)
+-
+-add_library(zlib STATIC ${ZLIB_SRC})
+-target_include_directories(zlib INTERFACE ${THIRDPARTY_DIR}/zlib)
+-
+-else ()
+-
+-add_library(zlib STATIC IMPORTED)
+-set_target_properties( zlib PROPERTIES IMPORTED_LOCATION ${DEVKITPRO}/portlibs/3ds/lib/libz.a )
+-target_include_directories(zlib INTERFACE ${DEVKITPRO}/portlibs/3ds/include)
+-
+-endif ()
+-
+ ################################
+ # ZIP
+ ################################
+@@ -876,7 +783,8 @@
+ target_link_libraries(wasmp2cart tic80core)
+
+ add_executable(bin2txt ${TOOLS_DIR}/bin2txt.c)
+- target_link_libraries(bin2txt zlib)
++ # [patch] Fix zlib name
++ target_link_libraries(bin2txt z)
+
+ add_executable(xplode
+ ${TOOLS_DIR}/xplode.c
+@@ -993,36 +901,9 @@
+ # PNG
+ ################################
+
+-set(LIBPNG_DIR ${THIRDPARTY_DIR}/libpng)
+-set(LIBPNG_SRC
+- ${LIBPNG_DIR}/png.c
+- ${LIBPNG_DIR}/pngerror.c
+- ${LIBPNG_DIR}/pngget.c
+- ${LIBPNG_DIR}/pngmem.c
+- ${LIBPNG_DIR}/pngpread.c
+- ${LIBPNG_DIR}/pngread.c
+- ${LIBPNG_DIR}/pngrio.c
+- ${LIBPNG_DIR}/pngrtran.c
+- ${LIBPNG_DIR}/pngrutil.c
+- ${LIBPNG_DIR}/pngset.c
+- ${LIBPNG_DIR}/pngtrans.c
+- ${LIBPNG_DIR}/pngwio.c
+- ${LIBPNG_DIR}/pngwrite.c
+- ${LIBPNG_DIR}/pngwtran.c
+- ${LIBPNG_DIR}/pngwutil.c
+-)
++# [patch] Use system libpng
++find_package(PNG)
+
+-configure_file(${LIBPNG_DIR}/scripts/pnglibconf.h.prebuilt ${CMAKE_CURRENT_BINARY_DIR}/pnglibconf.h)
+-
+-add_library(png STATIC ${LIBPNG_SRC})
+-
+-target_compile_definitions(png PRIVATE PNG_ARM_NEON_OPT=0)
+-
+-target_include_directories(png
+- PUBLIC ${CMAKE_CURRENT_BINARY_DIR}
+- PRIVATE ${THIRDPARTY_DIR}/zlib
+- INTERFACE ${THIRDPARTY_DIR}/libpng)
+-
+ ################################
+ # TIC-80 studio
+ ################################
+@@ -1069,7 +950,8 @@
+
+ target_include_directories(tic80studio PUBLIC ${CMAKE_CURRENT_BINARY_DIR})
+
+-target_link_libraries(tic80studio tic80core zip wave_writer argparse giflib png)
++# [patch] Fix giflib name
++target_link_libraries(tic80studio tic80core zip wave_writer argparse gif png)
+
+ if(USE_NAETT)
+ target_compile_definitions(tic80studio PRIVATE USE_NAETT)
+@@ -1155,7 +1037,8 @@
+ endif()
+
+ if(NOT EMSCRIPTEN)
+- target_link_libraries(sdlgpu SDL2-static)
++ # [patch] Fix sdl2 name
++ target_link_libraries(sdlgpu SDL2)
+ endif()
+
+ endif()
+@@ -1228,7 +1111,8 @@
+ elseif(RPI)
+ target_link_libraries(tic80 libSDL2.a bcm_host)
+ else()
+- target_link_libraries(tic80 SDL2-static)
++ # [patch] Fix sdl2 name
++ target_link_libraries(tic80 SDL2)
+ endif()
+ endif()
+
+@@ -1377,7 +1261,8 @@
+ elseif(RPI)
+ target_link_libraries(tic80${SCRIPT} libSDL2.a bcm_host pthread dl)
+ else()
+- target_link_libraries(tic80${SCRIPT} SDL2-static)
++ # [patch] Fix sdl2 name
++ target_link_libraries(tic80${SCRIPT} SDL2)
+ endif()
+ endif()
+
diff --git a/testing/ticker/APKBUILD b/testing/ticker/APKBUILD
index d44983d6352..381174fafde 100644
--- a/testing/ticker/APKBUILD
+++ b/testing/ticker/APKBUILD
@@ -1,17 +1,32 @@
# Contributor: Hoang Nguyen <folliekazetani@protonmail.com>
# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
pkgname=ticker
-pkgver=4.5.2
-pkgrel=0
+pkgver=4.5.14
+pkgrel=5
pkgdesc="Terminal stock watcher and stock position tracker"
url="https://github.com/achannarasappa/ticker"
arch="all"
license="GPL-3.0-or-later"
makedepends="go"
+subpackages="
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
+ "
source="$pkgname-$pkgver.tar.gz::https://github.com/achannarasappa/ticker/archive/refs/tags/v$pkgver.tar.gz"
+options="!check" # fail presently with current yahoo finance api response
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
build() {
- go build -v -o bin/$pkgname -ldflags "-X github.com/achannarasappa/ticker/cmd.Version=v$pkgver"
+ go build -v -o bin/ticker \
+ -ldflags "-X github.com/achannarasappa/ticker/cmd.Version=v$pkgver"
+
+ ./bin/ticker completion bash > ticker.bash
+ ./bin/ticker completion zsh > ticker.zsh
+ ./bin/ticker completion fish > ticker.fish
}
check() {
@@ -20,8 +35,15 @@ check() {
package() {
install -Dm755 bin/$pkgname "$pkgdir"/usr/bin/$pkgname
+
+ install -Dm644 ticker.bash \
+ "$pkgdir"/usr/share/bash-completion/completions/ticker
+ install -Dm644 ticker.fish \
+ "$pkgdir"/usr/share/fish/vendor_completions.d/ticker.fish
+ install -Dm644 ticker.zsh \
+ "$pkgdir"/usr/share/zsh/site-functions/_ticker
}
sha512sums="
-cf704b03ba77f66e0886a7a25ec892046830abbc37dc2989a4857bbeb74921f27ffdedf185815480494216574fd429af4427d1220a8cddb88dec4c778426552e ticker-4.5.2.tar.gz
+ba0ed482c950a6056fd662140e00f6f25d9410dbf150232b9c759ee841020935e1cc2ef51b65892dc2e7e85443b01d448defa08adb103b0409863306d24a972e ticker-4.5.14.tar.gz
"
diff --git a/testing/tikzit/APKBUILD b/testing/tikzit/APKBUILD
deleted file mode 100644
index 93e03fd8b7e..00000000000
--- a/testing/tikzit/APKBUILD
+++ /dev/null
@@ -1,29 +0,0 @@
-# Contributor: Anjandev Momi <anjan@momi.ca>
-# Maintainer: Anjandev Momi <anjan@momi.ca>
-pkgname=tikzit
-pkgver=2.1.6
-pkgrel=0
-pkgdesc="Allows the creation and modification of TeX diagrams written using the pgf/TikZ macro library"
-url="https://tikzit.github.io"
-arch="all"
-license="GPL-3.0-only"
-depends="hicolor-icon-theme"
-makedepends="qt5-qtbase-dev flex-dev poppler-dev poppler-qt5-dev bison"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/tikzit/tikzit/archive/refs/tags/v$pkgver.tar.gz"
-options="!check" # no upstream checks
-
-build() {
- qmake-qt5 PREFIX=/usr \
- QMAKE_CFLAGS="$CFLAGS" \
- QMAKE_CXXFLAGS="$CXXFLAGS" -r
- make
-}
-
-package() {
- make INSTALL_ROOT="$pkgdir" install
-}
-
-sha512sums="
-e93249d1206f8af1c54a5a73aee0958dda75f21ef8c9a1301826f37c7bcc8764ff9d00b9acfe46ed98f30385f212138b6c93270b7d7fbe2b0efbec977945bd73 tikzit-2.1.6.tar.gz
-"
diff --git a/testing/tiled/APKBUILD b/testing/tiled/APKBUILD
deleted file mode 100644
index 45fe7c80074..00000000000
--- a/testing/tiled/APKBUILD
+++ /dev/null
@@ -1,29 +0,0 @@
-# Contributor: David Demelier <markand@malikania.fr>
-# Maintainer: David Demelier <markand@malikania.fr>
-pkgname=tiled
-pkgver=1.6.0
-pkgrel=0
-pkgdesc="powerful tile map editor"
-url="http://mapeditor.org"
-arch="all"
-license="Apache-2.0 AND BSD-2-Clause AND GPL-2.0-only"
-makedepends="qt5-qttools-dev qt5-qtdeclarative-dev"
-subpackages="$pkgname-dev $pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/bjorn/tiled/archive/v$pkgver.tar.gz
- patch-main.cpp.patch
- "
-options="!check" # No tests in qmake build
-
-build() {
- qmake-qt5 -r INSTALL_HEADERS=yes PREFIX=/usr
- make
-}
-
-package() {
- make install INSTALL_ROOT="$pkgdir"
-}
-
-sha512sums="
-73c8fbd8af6c47632317fe33207cc01fcd5cab357372f6322406d6315c1d8d66363aa0849b72a78c2b2fe952ee70e6c98efc5ab8f99ea98bf1c319d346594eae tiled-1.6.0.tar.gz
-232dd1a38e29b34a010978f22b4d3ef0e1344f6a963a50c99cc7dce24a5d2ec9c1f77ff0c08a9528455211a465f7d95c983736c19e5aa2e14b64ee1c094b1fe7 patch-main.cpp.patch
-"
diff --git a/testing/tiled/patch-main.cpp.patch b/testing/tiled/patch-main.cpp.patch
deleted file mode 100644
index b54d3b5eccd..00000000000
--- a/testing/tiled/patch-main.cpp.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-Upstream: already in repository.
---- tiled-1.6.0/src/tiled/main.cpp.orig
-+++ tiled-1.6.0/src/tiled/main.cpp
-@@ -66,10 +66,6 @@
- return ts;
- }
-
--#if QT_VERSION >= QT_VERSION_CHECK(5,14,0)
--using Qt::endl;
--#endif
--
- namespace {
-
- class CommandLineHandler : public CommandLineParser
-@@ -260,7 +256,7 @@
- if (!showedVersion) {
- showedVersion = true;
- stdOut() << QApplication::applicationDisplayName() << " "
-- << QApplication::applicationVersion() << endl;
-+ << QApplication::applicationVersion() << Qt::endl;
- quit = true;
- }
- }
-@@ -317,9 +313,9 @@
- }
- formats.sort(Qt::CaseSensitive);
-
-- stdOut() << tr("Map export formats:") << endl;
-+ stdOut() << tr("Map export formats:") << Qt::endl;
- for (const QString &name : formats)
-- stdOut() << " " << name << endl;
-+ stdOut() << " " << name << Qt::endl;
-
- formats.clear();
- const auto tilesetFormats = PluginManager::objects<TilesetFormat>();
-@@ -329,9 +325,9 @@
- }
- formats.sort(Qt::CaseSensitive);
-
-- stdOut() << tr("Tileset export formats:") << endl;
-+ stdOut() << tr("Tileset export formats:") << Qt::endl;
- for (const QString &name : formats)
-- stdOut() << " " << name << endl;
-+ stdOut() << " " << name << Qt::endl;
-
- quit = true;
- }
diff --git a/testing/tillitis-key1-apps/APKBUILD b/testing/tillitis-key1-apps/APKBUILD
new file mode 100644
index 00000000000..525f5695b7c
--- /dev/null
+++ b/testing/tillitis-key1-apps/APKBUILD
@@ -0,0 +1,42 @@
+# Contributor: omni <omni+alpine@hack.org>
+# Maintainer: omni <omni+alpine@hack.org>
+pkgname=tillitis-key1-apps
+pkgver=0.0.6
+pkgrel=6
+pkgdesc="Apps and host programs for TKey, the flexible open hardware/software USB security key"
+url="https://www.tillitis.se/"
+arch="all !s390x" # s390x lack lld package
+license="GPL-2.0-only"
+makedepends="go clang llvm lld"
+options="!check" # no test suite
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver-1.tar.gz::https://github.com/tillitis/tkey-ssh-agent/archive/refs/tags/v$pkgver.tar.gz
+ runsign.sh.patch
+ fix-cgo.patch
+ "
+builddir="$srcdir/tkey-ssh-agent-$pkgver"
+
+build() {
+ make
+}
+
+package() {
+ install -Dm755 -t "$pkgdir/usr/bin" run* tkey-*
+
+ install -Dm644 -t "$pkgdir/usr/lib/udev/rules.d" system/*.rules
+
+ for app in blink nx random rng_stream signer timer; do
+ install -Dm644 -t "$pkgdir/usr/share/$pkgname/$app" apps/"$app"/app.bin
+ done
+
+ install -Dm644 -t "$pkgdir/usr/share/man/man1" system/tkey-ssh-agent.1
+ install -Dm644 -t "$pkgdir/usr/share/doc/$pkgname" README.md
+ install -Dm644 apps/rng_stream/README.md \
+ "$pkgdir/usr/share/doc/$pkgname"/rng_stream_app.md
+}
+
+sha512sums="
+ecf030429ab713aa7a367a038fdc4fb5d376a47602a083d26f3e377fd28fbd075f403faaa1bccc4cc1508809400c29028edd01a70b21f149532848eaf4441f1b tillitis-key1-apps-0.0.6-1.tar.gz
+260b8c636b0244b904b91eafee419d14356b4db6877e1fcdd4b1deda189c1ef93aba8291b8a51282fac39197a5e915caa6d492dfdfebb5a05b822d4d0faa9f25 runsign.sh.patch
+07985e7e035a011e91e8fc9ab2eb970939315b745085babca29d8183c63a4faa9e6dfa1f5c5baf2f7d435300605a3cfca84494b4ef24212756684cbc4798c218 fix-cgo.patch
+"
diff --git a/testing/tillitis-key1-apps/fix-cgo.patch b/testing/tillitis-key1-apps/fix-cgo.patch
new file mode 100644
index 00000000000..6db1f54a42e
--- /dev/null
+++ b/testing/tillitis-key1-apps/fix-cgo.patch
@@ -0,0 +1,11 @@
+--- a/Makefile
++++ b/Makefile
+@@ -64,7 +64,7 @@
+ .PHONY: tkey-ssh-agent
+ tkey-ssh-agent: apps
+ cp -af apps/signer/app.bin cmd/tkey-ssh-agent/app.bin
+- CGO_ENABLED=0 go build -ldflags "-X main.version=$(TKEY_SSH_AGENT_VERSION) -X main.signerAppNoTouch=$(TKEY_SIGNER_APP_NO_TOUCH)" -trimpath ./cmd/tkey-ssh-agent
++ go build -ldflags "-X main.version=$(TKEY_SSH_AGENT_VERSION) -X main.signerAppNoTouch=$(TKEY_SIGNER_APP_NO_TOUCH)" -trimpath ./cmd/tkey-ssh-agent
+
+ .PHONY: clean
+ clean:
diff --git a/testing/tillitis-key1-apps/runsign.sh.patch b/testing/tillitis-key1-apps/runsign.sh.patch
new file mode 100644
index 00000000000..0efd24997aa
--- /dev/null
+++ b/testing/tillitis-key1-apps/runsign.sh.patch
@@ -0,0 +1,11 @@
+As we ship the tkey-runapp and -sign binaries as well as the signer app.bin
+--- a/apps/signer/runsign.sh
++++ b/apps/signer/runsign.sh
+@@ -21,5 +21,5 @@ fi
+ msgf="$1"
+ shift
+
+-./tkey-runapp "$@" apps/signer/app.bin
+-./tkey-sign "$@" "$msgf"
++tkey-runapp "$@" /usr/share/tillitis-key1-apps/signer/app.bin
++tkey-sign "$@" "$msgf"
diff --git a/testing/time/APKBUILD b/testing/time/APKBUILD
index 5ec2845cdfd..ba4e759b81e 100644
--- a/testing/time/APKBUILD
+++ b/testing/time/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Sascha Paunovic <azarus@posteo.net>
pkgname=time
pkgver=1.9
-pkgrel=0
+pkgrel=1
pkgdesc="utility to measure execution time"
url="https://www.gnu.org/software/time/"
arch="all"
diff --git a/testing/timeshift/APKBUILD b/testing/timeshift/APKBUILD
new file mode 100644
index 00000000000..6b1a14c64c4
--- /dev/null
+++ b/testing/timeshift/APKBUILD
@@ -0,0 +1,30 @@
+# Contributor: Robin Candau <robincandau@protonmail.com>
+# Maintainer: Robin Candau <robincandau@protonmail.com>
+pkgname=timeshift
+pkgver=24.01.1
+pkgrel=0
+pkgdesc="A system restore utility for Linux"
+url="https://github.com/linuxmint/timeshift"
+arch="all"
+license="GPL-2.0-or-later"
+depends="rsync cronie which xhost"
+makedepends="help2man meson vala gtk+3.0-dev json-glib-dev vte3-dev libgee-dev xapp-dev"
+subpackages="$pkgname-doc $pkgname-lang"
+source="$pkgname-$pkgver.tar.gz::https://github.com/linuxmint/timeshift/archive/refs/tags/$pkgver.tar.gz"
+
+build() {
+ meson setup --prefix=/usr --buildtype=plain "$srcdir/$pkgname-$pkgver" build
+ meson compile -C build
+}
+
+check() {
+ meson test -C build
+}
+
+package() {
+ meson install -C build --destdir "$pkgdir"
+}
+
+sha512sums="
+9a370f62a07912cc73cff981c87f56ba14b4179890d4b7293866a5c72b8611b6490def4ffee0ea7fc6c3424f581e2adc08d456d9341a2ae8a87241d2f2c871e1 timeshift-24.01.1.tar.gz
+"
diff --git a/testing/timew/APKBUILD b/testing/timew/APKBUILD
index aa43ffa8233..20ced67de17 100644
--- a/testing/timew/APKBUILD
+++ b/testing/timew/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Matthieu Monnier <matthieu.monnier@enalean.com>
pkgname=timew
pkgver=1.4.3
-pkgrel=0
+pkgrel=1
pkgdesc="Timewarrior is a command line time tracking application"
options="!check" # No testsuite
url="https://taskwarrior.org/"
diff --git a/testing/timewarrior/APKBUILD b/testing/timewarrior/APKBUILD
new file mode 100644
index 00000000000..98ed7d1933b
--- /dev/null
+++ b/testing/timewarrior/APKBUILD
@@ -0,0 +1,41 @@
+# Contributor: Edd Salkield <edd@salkield.uk>
+# Maintainer: Edd Salkield <edd@salkield.uk>
+pkgname=timewarrior
+pkgver=1.7.1
+pkgrel=0
+pkgdesc="command line time tracking and reporting"
+url="https://timewarrior.net"
+arch="all"
+license="MIT"
+depends="python3"
+makedepends="cmake asciidoctor samurai"
+checkdepends="py3-dateutil mandoc"
+subpackages="$pkgname-doc"
+source="timewarrior-v$pkgver.tar.gz::https://github.com/GothenburgBitFactory/timewarrior/releases/download/v$pkgver/timew-$pkgver.tar.gz"
+builddir="$srcdir/timew-$pkgver"
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=MinSizeRel \
+ -DCMAKE_INSTALL_PREFIX=/usr
+ cmake --build build
+}
+
+check() {
+ ninja -C build test
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+
+ # install the refresh holiday scripts in /usr/bin/ for user convenience
+ chmod 755 "$pkgdir/usr/share/doc/timew/holidays/refresh"
+ ln -s /usr/share/doc/timew/holidays/refresh "$pkgdir/usr/bin/timew-refresh-holidays"
+
+ # remove useless man pages
+ rm -r "$pkgdir"/usr/share/man/
+}
+
+sha512sums="
+f28f6c47cc05d8055cc3fae9e96d1936554c685090a40f8af1995e5357947cb9bdfab0ec091f68693a566a876e06eda502de074900f7368a913e85d7e4cf87f1 timewarrior-v1.7.1.tar.gz
+"
diff --git a/testing/timg/APKBUILD b/testing/timg/APKBUILD
deleted file mode 100644
index 688b0839d30..00000000000
--- a/testing/timg/APKBUILD
+++ /dev/null
@@ -1,23 +0,0 @@
-# Contributor: Milan P. Stanić <mps@arvanta.net>
-# Maintainer: Milan P. Stanić <mps@arvanta.net>
-pkgname=timg
-pkgver=0.9.9
-pkgrel=0
-pkgdesc="24-Bit color image viewer for terminal"
-url="https://github.com/hzeller/timg"
-arch="all"
-options="!check" # package doesn't have test
-license="GPL-2.0-only"
-makedepends="libwebp-dev graphicsmagick-dev freetype-dev xz-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/hzeller/timg/archive/v$pkgver.tar.gz"
-builddir="$srcdir/$pkgname-$pkgver"/src
-
-build() {
- make WITH_VIDEO_DECODING=0
-}
-
-package() {
- install -Dm755 timg "$pkgdir"/usr/bin/timg
-}
-
-sha512sums="f7e6d1d53631ee6b79c2770c3085768c2b4888d2c040f4f196bf543c919c1afde6cea08669d3a57f18fe5852d409e3499e9e1beb90ca07f7ad3c93a799a1d10d timg-0.9.9.tar.gz"
diff --git a/testing/tintin/APKBUILD b/testing/tintin/APKBUILD
new file mode 100644
index 00000000000..8e08f4dcfd7
--- /dev/null
+++ b/testing/tintin/APKBUILD
@@ -0,0 +1,26 @@
+# Contributor: Lazy Walker <lazywalkerz@gmail.com>
+# Maintainer: Lazy Walker <lazywalkerz@gmail.com>
+pkgname=tintin
+pkgver=2.02.31
+pkgrel=0
+pkgdesc="TinTin++ (aka tt++) is a free Mud client with features an advanced automapper, scripting language and VT100 interface."
+url="https://tintin.mudhalla.net"
+arch="all"
+license="GPL-3.0-or-later"
+makedepends="zlib-dev gnutls-dev pcre-dev"
+source="https://downloads.sf.net/tintin/tintin-$pkgver.tar.gz"
+builddir="$srcdir/tt/src"
+options="!check"
+
+build() {
+ ./configure --prefix=/usr
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+2084ac8903ded8ce7e24b6e3eb07cc0cd2c768113274a342042ae4d5ad3fb4a2e60702cba6efbd879c19e808648d20cbc4aaea1ecd808d7a5d0ca0b1493baaf5 tintin-2.02.31.tar.gz
+"
diff --git a/testing/tinycbor/0001-disable-failing-tests.patch b/testing/tinycbor/0001-disable-failing-tests.patch
new file mode 100644
index 00000000000..f0c406419ce
--- /dev/null
+++ b/testing/tinycbor/0001-disable-failing-tests.patch
@@ -0,0 +1,54 @@
+Comment out tests failing on at least one arch
+--- a/tests/tojson/tst_tojson.cpp
++++ b/tests/tojson/tst_tojson.cpp
+@@ -98,7 +98,7 @@
+ // negative integers
+ QTest::newRow("-1") << raw("\x20") << "-1";
+ QTest::newRow("-2") << raw("\x21") << "-2";
+- QTest::newRow("-2^53+1") << raw("\x3b\0\x1f\xff\xff""\xff\xff\xff\xfe") << "-9007199254740991";
++ //QTest::newRow("-2^53+1") << raw("\x3b\0\x1f\xff\xff""\xff\xff\xff\xfe") << "-9007199254740991";
+ QTest::newRow("-2^64+epsilon") << raw("\x3b\xff\xff\xff\xff""\xff\xff\xf8\x00") << "-18446744073709549568";
+
+ QTest::newRow("false") << raw("\xf4") << "false";
+@@ -123,8 +123,8 @@
+ QTest::newRow("2.^53-1") << raw("\xfb\x43\x3f\xff\xff""\xff\xff\xff\xff") << "9007199254740991";
+ QTest::newRow("2.f^64-epsilon") << raw("\xfa\x5f\x7f\xff\xff") << "18446742974197923840";
+ QTest::newRow("2.^64-epsilon") << raw("\xfb\x43\xef\xff\xff""\xff\xff\xff\xff") << "18446744073709549568";
+- QTest::newRow("2.f^64") << raw("\xfa\x5f\x80\0\0") << "1.8446744073709552e+19";
+- QTest::newRow("2.^64") << raw("\xfb\x43\xf0\0\0\0\0\0\0") << "1.8446744073709552e+19";
++ //QTest::newRow("2.f^64") << raw("\xfa\x5f\x80\0\0") << "1.8446744073709552e+19";
++ //QTest::newRow("2.^64") << raw("\xfb\x43\xf0\0\0\0\0\0\0") << "1.8446744073709552e+19";
+
+ // infinities and NaN are not supported in JSON, they convert to null
+ QTest::newRow("nan_f16") << raw("\xf9\x7e\x00") << "null";
+@@ -372,8 +372,8 @@
+ QTest::newRow("2.^53-1") << raw("\xfb\x43\x3f\xff\xff""\xff\xff\xff\xff") << "9007199254740991.";
+ QTest::newRow("2.f^64-epsilon") << raw("\xfa\x5f\x7f\xff\xff") << "18446742974197923840.f";
+ QTest::newRow("2.^64-epsilon") << raw("\xfb\x43\xef\xff\xff""\xff\xff\xff\xff") << "18446744073709549568.";
+- QTest::newRow("2.f^64") << raw("\xfa\x5f\x80\0\0") << "1.8446744073709552e+19f";
+- QTest::newRow("2.^64") << raw("\xfb\x43\xf0\0\0\0\0\0\0") << "1.8446744073709552e+19";
++ //QTest::newRow("2.f^64") << raw("\xfa\x5f\x80\0\0") << "1.8446744073709552e+19f";
++ //QTest::newRow("2.^64") << raw("\xfb\x43\xf0\0\0\0\0\0\0") << "1.8446744073709552e+19";
+
+ QTest::newRow("nan_f16") << raw("\xf9\x7e\x00") << "nan";
+ QTest::newRow("nan_f") << raw("\xfa\x7f\xc0\0\0") << "nan";
+@@ -556,7 +556,7 @@
+ QTest::newRow("emptytextstring") << raw("\x60") << QString();
+ QTest::newRow("textstring1") << raw("\x61 ") << QString();
+ QTest::newRow("0.5") << raw("\xfb\x3f\xe0\0\0\0\0\0\0") << QString();
+- QTest::newRow("2.^64") << raw("\xfb\x43\xf0\0\0\0\0\0\0") << QString();
++ //QTest::newRow("2.^64") << raw("\xfb\x43\xf0\0\0\0\0\0\0") << QString();
+ QTest::newRow("false") << raw("\xf4") << QString();
+ QTest::newRow("true") << raw("\xf5") << QString();
+ QTest::newRow("null") << raw("\xf6") << QString();
+@@ -589,8 +589,8 @@
+ << "\"t\":0,\"v\":\"+7ffffffffffffffe\"";
+ QTest::newRow("INT64_MAX+1") << raw("\x1b\x80\0\0\0""\0\0\0\1")
+ << "\"t\":0,\"v\":\"+8000000000000001\"";
+- QTest::newRow("-2^53-1") << raw("\x3b\0\x20\0\0""\0\0\0\0")
+- << "\"t\":0,\"v\":\"-20000000000000\"";
++ //QTest::newRow("-2^53-1") << raw("\x3b\0\x20\0\0""\0\0\0\0")
++ // << "\"t\":0,\"v\":\"-20000000000000\"";
+
+ // simple values
+ QTest::newRow("simple0") << raw("\xe0") << "\"t\":224,\"v\":0";
diff --git a/testing/tinycbor/APKBUILD b/testing/tinycbor/APKBUILD
index daa84568307..5f4f8918fcd 100644
--- a/testing/tinycbor/APKBUILD
+++ b/testing/tinycbor/APKBUILD
@@ -1,14 +1,18 @@
# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
pkgname=tinycbor
pkgver=0.6.0
-pkgrel=0
+pkgrel=1
pkgdesc="Concise Binary Object Representation (CBOR) Library"
url="https://github.com/intel/tinycbor"
checkdepends="qt5-qtbase-dev"
-arch="x86_64" # only works on x86_64
+# ppc64le: segfault in unit tests
+arch="all !ppc64le"
license="MIT"
subpackages="$pkgname-dev lib$pkgname:libs"
-source="$pkgname-$pkgver.tar.gz::https://github.com/intel/tinycbor/archive/v$pkgver.tar.gz"
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/intel/tinycbor/archive/v$pkgver.tar.gz
+ 0001-disable-failing-tests.patch
+ "
build() {
make
@@ -25,4 +29,5 @@ package() {
sha512sums="
af1ed05c03d3aed56e35fdcaad3235992f96b5043b594c0246e600e4b1f085df78c5345beaac8758c2b5db2952ab83997019de5940857eecb81d84b6fb642093 tinycbor-0.6.0.tar.gz
+752a91386a98f8d5073e2d4ebefa099442232561972cd8149cbf2aea64fcf9344b6519142555173a87da24b225b214ef4083caa0baf6f98f82caa26de7ae1ab1 0001-disable-failing-tests.patch
"
diff --git a/testing/tinyscheme/APKBUILD b/testing/tinyscheme/APKBUILD
index 9718ffbbac0..2c69fe26f7d 100644
--- a/testing/tinyscheme/APKBUILD
+++ b/testing/tinyscheme/APKBUILD
@@ -1,9 +1,9 @@
# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
pkgname=tinyscheme
pkgver=1.42
-pkgrel=0
+pkgrel=1
pkgdesc="lightweight Scheme interpreter implementing a large subset of R5RS"
-url="http://tinyscheme.sourceforge.net/home.html"
+url="https://tinyscheme.sourceforge.net/home.html"
arch="all"
license="BSD-3-Clause"
source="https://downloads.sourceforge.net/tinyscheme/tinyscheme-$pkgver.tar.gz"
diff --git a/testing/tiptop/APKBUILD b/testing/tiptop/APKBUILD
index 6481716b002..a1a42e6f7e8 100644
--- a/testing/tiptop/APKBUILD
+++ b/testing/tiptop/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Mitch Tishmack <mitch.tishmack@gmail.com>
pkgname=tiptop
pkgver=2.3.1
-pkgrel=0
+pkgrel=2
pkgdesc="Tiptop: Hardware Performance Counters for the Masses"
url="https://gitlab.inria.fr/rohou/tiptop"
# Note: This tool requires two things to work:
@@ -15,7 +15,9 @@ arch="x86 x86_64"
license="GPL-2.0"
makedepends="byacc flex linux-headers ncurses-dev libxml2-dev"
subpackages="$pkgname-doc"
-source="https://files.inria.fr/pacap/tiptop/tiptop-$pkgver.tar.gz"
+source="https://files.inria.fr/pacap/tiptop/tiptop-$pkgver.tar.gz
+ format-security.patch
+ "
# Note, arg parsing appears to happen after attempting a perf syscall
# so while it would be nice to run tiptop -h to validate the compile worked
# there is a chance it might error out for no reason than the system building
@@ -30,6 +32,8 @@ build() {
package() {
make install DESTDIR="$pkgdir"
}
+
sha512sums="
73d275bc3957583524c872b401cf4fa773de7b4e7b7177f1787851f43e7c4aeefd953eb50b2dbce3babfc7a1c46707370ba4ad06998260177994b2eafb91395b tiptop-2.3.1.tar.gz
+ab588d526c20806e26e8d02fb0828cc5ecef94114993490c7ff869cc3f8d80af89f4e274414a27dc539ab456c3a0b8a3b9eb0d76a2e0a99d43031e9bd73203b1 format-security.patch
"
diff --git a/testing/tiptop/format-security.patch b/testing/tiptop/format-security.patch
new file mode 100644
index 00000000000..f7bea792b68
--- /dev/null
+++ b/testing/tiptop/format-security.patch
@@ -0,0 +1,13 @@
+diff --git a/src/helpwin.c b/src/helpwin.c
+index 0d660f9..1623d9c 100644
+--- a/src/helpwin.c
++++ b/src/helpwin.c
+@@ -61,7 +61,7 @@ void show_help_win(WINDOW* win, screen_t* screen)
+ wattroff(win, A_REVERSE);
+
+ /* screen description */
+- mvwprintw(win, 2, 1, screen->desc);
++ mvwprintw(win, 2, 1, "%s", screen->desc);
+
+ /* max size of column headers */
+ for(i = 0; i < n; i++) {
diff --git a/testing/tk-lib/APKBUILD b/testing/tk-lib/APKBUILD
deleted file mode 100644
index 6e352f26115..00000000000
--- a/testing/tk-lib/APKBUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer: rubicon <rubicon@mailo.com>
-pkgname=tk-lib
-_pkgname=${pkgname//-/}
-pkgver=0.7
-pkgrel=0
-pkgdesc="Tk standard library"
-url="https://core.tcl-lang.org/tklib"
-arch="noarch"
-license="TCL"
-depends="tk"
-makedepends="tcl"
-options="!check"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.bz2::https://core.tcl-lang.org/tklib/attachdownload/$_pkgname-$pkgver.tar.bz2?page=Downloads&file=tklib-$pkgver.tar.bz2"
-builddir="$srcdir/$_pkgname-$pkgver"
-
-build() {
- ./configure \
- --prefix=/usr \
- --build=$CBUILD \
- --host=$CHOST
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-0322611c1dea8eebebe3f8f15ec33b695b074329ce9602aeb93d04985f486237f3ce89f1c42a5c148e12ae00b51be8c889c7db77977a0cc4204ac5eaad2cfec2 tk-lib-0.7.tar.bz2
-"
diff --git a/testing/tke/APKBUILD b/testing/tke/APKBUILD
deleted file mode 100644
index 6dd9defa135..00000000000
--- a/testing/tke/APKBUILD
+++ /dev/null
@@ -1,43 +0,0 @@
-# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer: rubicon <rubicon@mailo.com>
-pkgname=tke
-pkgver=3.6.1
-_pkgver=devel-$pkgver
-pkgrel=0
-pkgdesc="Advanced, modern code editor written in Tcl/Tk"
-url="http://tke.sourceforge.net/"
-arch="noarch"
-license="GPL-2.0-or-later"
-depends="tcl tk tclx tcl-lib tk-lib tcl-tls"
-options="!check"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/phase1geo/tke/archive/refs/tags/$_pkgver.tar.gz
- install-script.patch
- "
-builddir="$srcdir/$pkgname-$_pkgver"
-
-package() {
- mkdir -vp "$pkgdir"/usr/share/applications
- echo "$pkgdir"/usr | tclsh install.tcl
- find "$pkgdir" \( \
- -name .DS_Store \
- -o -name '*.dll' -o -name '*.dylib' \) \
- -delete
- rm -vf "$pkgdir"/usr/lib/tke/uninstall.tcl
- rm -rvf "$pkgdir"/usr/lib/tke/lib/macOS \
- "$pkgdir"/usr/lib/tke/lib/win
- mkdir -vp "$pkgdir"/usr/share/doc
- mv -v "$pkgdir"/usr/lib/tke/doc "$pkgdir"/usr/share/doc/"$pkgname"
-}
-
-doc() {
- license="GFDL-1.3-only"
- default_doc
- mkdir -vp "$subpkgdir"/usr/lib/tke
- ln -sv ../../share/doc/"$pkgname" "$subpkgdir"/usr/lib/tke/doc
-}
-
-sha512sums="
-ad50b8522ce0734b5e46d889bdfc3beb175d59a3cbb140998f1d7c30416d051192a124f59bf8dc232479d5e9a61b4a01887de9d4133f014ddf8825bb701ed6b1 tke-3.6.1.tar.gz
-16f9057252e42e7ff3bdda3ac15249bf64f9208b1045a979f33d05e2687ccd07aff9cc80c1a3d930d3613cbfe224714e090683790e664ec6d94117139e99d233 install-script.patch
-"
diff --git a/testing/tke/install-script.patch b/testing/tke/install-script.patch
deleted file mode 100644
index 121bbefed94..00000000000
--- a/testing/tke/install-script.patch
+++ /dev/null
@@ -1,84 +0,0 @@
---- a/install.tcl
-+++ b/install.tcl
-@@ -57,7 +57,6 @@
- if {[catch "package require Tk" rc]} {
- puts "Not Found! ($rc)"
- puts "Install tk8.6 package"
-- exit 1
- } else {
- puts "Found"
- }
-@@ -90,7 +89,6 @@
- if {[catch "package require tooltip" rc]} {
- puts "Not Found! ($rc)"
- puts "Install tklib package"
-- exit 1
- } else {
- puts "Found"
- }
-@@ -225,6 +223,7 @@
- }
-
- # Create the file
-+ set lib_dir /usr/lib/tke
- puts -nonewline "Creating [file join $bin_dir tke]... "
- flush stdout
- if {![catch "open [file join $bin_dir tke] w" rc]} {
-@@ -248,7 +247,8 @@
- }
-
- # If we are running on a system with a /usr/share/applications directory, create a tke.desktop file there
--if {[file exists [set app_dir [file join / usr share applications]]]} {
-+ set app_dir [file join $install_dir share applications]
-+ file mkdir $app_dir
- set app_file [file join $app_dir tke.desktop]
- puts -nonewline "Creating $app_file... "
- flush stdout
-@@ -267,12 +267,14 @@
- } else {
- puts "not done."
- }
--}
-
- # Create the MIME file so that the TKE theme and plugin bundle file extensions will be opened by TKE
--if {[file exists [set mime_dir [file join / usr share mime packages]]]} {
-+ set lib_dir [file join $install_dir lib tke]
-+ set mime_dir [file join $install_dir share mime packages]
-+ file mkdir $mime_dir
- set mime_file [file join $mime_dir tke.xml]
-- set mime_icon_dir [file join / usr share icons hicolor scalable mimetypes]
-+ set mime_icon_dir [file join $install_dir share icons hicolor scalable mimetypes]
-+ file mkdir $mime_icon_dir
- puts -nonewline "Creating mime file $mime_file... "
- flush stdout
- if {![catch "open $mime_file w" rc]} {
-@@ -295,19 +297,13 @@
- flush stdout
- catch { file copy -force [file join $lib_dir lib images tke_theme.svg] [file join $mime_icon_dir application-x-tkethemz.svg] }
- catch { file copy -force [file join $lib_dir lib images tke_plugin.svg] [file join $mime_icon_dir application-x-tkeplugz.svg] }
-- if {![catch { exec -ignorestderr update-mime-database [file join / usr share mime] }]} {
-- puts "done."
-- } else {
-- puts "not done."
-- catch { file delete -force $mime_file }
-- }
- } else {
- puts "not done."
- }
--}
-
- # If we are running on a system that can use appdata, add the file there
--if {[file exists [set appdata_dir [file join / usr share appdata]]]} {
-+ set appdata_dir [file join $install_dir share appdata]
-+ file mkdir $appdata_dir
- puts -nonewline "Copying tke.appdata.xml to [file join $appdata_dir tke.appdata.xml]... "
- flush stdout
- if {[catch "file copy [file join data tke.appdata.xml] $appdata_dir"]} {
-@@ -315,7 +311,6 @@
- } else {
- puts "done."
- }
--}
-
- # Check to see if the bin directory is in the user's path
- if {[lsearch [split $env(PATH) :] $bin_dir] == -1} {
diff --git a/testing/tkts/APKBUILD b/testing/tkts/APKBUILD
index 7a27d49638f..55d66b45cb1 100755..100644
--- a/testing/tkts/APKBUILD
+++ b/testing/tkts/APKBUILD
@@ -1,17 +1,23 @@
# Contributor: Will Sinatra <wpsinatra@gmail.com>
# Maintainer: Will Sinatra <wpsinatra@gmail.com>
pkgname=tkts
-pkgver=1.0.1
+pkgver=2.0
pkgrel=0
pkgdesc="CLI single user ticketing system"
-url="http://lambdacreate.com/dev/tkts"
+url="https://lambdacreate.com/dev/tkts"
arch="all !s390x !riscv64" #fennel is not packaged for s390x
license="GPL-3.0-only"
-makedepends="fennel lua5.3-dev luarocks"
-source="https://gitlab.com/Durrendal/tkts/-/archive/v$pkgver/tkts-v$pkgver.tar.bz2"
+depends="lua5.3-lume lua5.3-lsqlite3 sqlite groff"
+makedepends="fennel lua5.3-dev sqlite-dev luarocks"
+source="https://gitlab.com/Durrendal/tkts/-/archive/v$pkgver/tkts-v$pkgver.tar.bz2
+ correct_paths.patch"
builddir="$srcdir/tkts-v$pkgver"
options="!check" #no checks exist
+prepare() {
+ default_prepare
+}
+
build() {
make compile-bin
}
@@ -20,4 +26,7 @@ package() {
install -Dm755 "$builddir"/src/tkts-bin "$pkgdir"/usr/bin/tkts
}
-sha512sums="47e2c966d91c1e482a393cbfd581db425b9716ccaa92479cfae8b70ec66bdae211d67644adf48b94ec6b5c6674c6fb3075922d807b8e1eadd8c96468adce5b82 tkts-v1.0.1.tar.bz2"
+sha512sums="
+cf8eaf41a7faa0146126a18d519d819e9c25ee18b45841244c0dc6d349d8b70d3e51c6e03711aa2d07332a191186e778c727bb564be38991517dabb6c55daebc tkts-v2.0.tar.bz2
+3aacc0b958a68fd5c92e0e09c4f2b5e2d8990f65709541cabcf26bd7f0580240c2a40900a5885d01fd5925261d0bad280d44d6b64d03323baa514d9e160c9156 correct_paths.patch
+"
diff --git a/testing/tkts/correct_paths.patch b/testing/tkts/correct_paths.patch
new file mode 100644
index 00000000000..0ebd08898bd
--- /dev/null
+++ b/testing/tkts/correct_paths.patch
@@ -0,0 +1,11 @@
+--- a/Makefile
++++ b/Makefile
+@@ -24,7 +24,7 @@
+
+ #Ask Techno about this one
+ compile-bin:
+- CC_OPTS="-L/usr/local/lib/lua/5.3/ -llsqlite3 -static" cd ./src/ && fennel --compile-binary tkts.fnl tkts-bin $(STATIC_LUA_LIB) $(LUA_INCLUDE_DIR) --native-module /usr/local/lib/lua/5.3/lsqlite3.so
++ CC_OPTS="-L/usr/lib/lua/5.3/ -llsqlite3 -static" cd ./src/ && fennel5.3 --compile-binary tkts.fnl tkts-bin $(STATIC_LUA_LIB) $(LUA_INCLUDE_DIR) --native-library /usr/lib/lua/5.3/lsqlite3.so
+
+ install-bin:
+ install ./src/tkts-bin -D $(DESTDIR)/tkts
diff --git a/testing/tldr-python-client/APKBUILD b/testing/tldr-python-client/APKBUILD
index 2421c2a906a..d1648bbcf91 100644
--- a/testing/tldr-python-client/APKBUILD
+++ b/testing/tldr-python-client/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Keith Toh <ktprograms@gmail.com>
pkgname=tldr-python-client
-pkgver=3.1.0
-pkgrel=0
+pkgver=3.2.0
+pkgrel=1
pkgdesc="Command line client for tldr, a collection of simplified and community-driven man pages"
url="https://github.com/tldr-pages/tldr-python-client"
arch="noarch"
@@ -9,8 +9,9 @@ license="MIT"
depends="python3 py3-shtab py3-colorama py3-termcolor"
makedepends="py3-setuptools py3-sphinx py3-sphinx-argparse"
checkdepends="py3-pytest"
-subpackages="$pkgname-doc"
+subpackages="$pkgname-doc $pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/tldr-pages/tldr-python-client/archive/refs/tags/$pkgver.tar.gz"
+options="!check" # string compare fails now
build() {
make -C docs/ man
@@ -23,10 +24,10 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
install -Dm644 LICENSE.md -t "$pkgdir"/usr/share/licenses/$pkgname/
}
sha512sums="
-53796b789e325dcab7f49df2b304fcc2e4163254927c1ade29914f33fe41f54f4fed36d89fce5d6d1eba5266f2e709e12da6602aeac32e45b5c527906a10cd99 tldr-python-client-3.1.0.tar.gz
+1535979548b49cd8b0312f2cd11f69ba3f710e16a27c074dc5a8cb5617d7f343df30ba01a83388b460508ab519045140852767bfc8ff1189d612d71a3d35d76b tldr-python-client-3.2.0.tar.gz
"
diff --git a/testing/tlsrouter/APKBUILD b/testing/tlsrouter/APKBUILD
deleted file mode 100644
index 0e9774eadf9..00000000000
--- a/testing/tlsrouter/APKBUILD
+++ /dev/null
@@ -1,51 +0,0 @@
-# Contributor: Marvin Preuss <marvin@xsteadfastx.org>
-# Maintainer: Marvin Preuss <marvin@xsteadfastx.org>
-pkgname=tlsrouter
-pkgver=0_git20220202
-pkgrel=3
-_short_commit=2e577fe
-pkgdesc="tls proxy that routes connections to backends based on tls sni"
-pkgusers="tlsrouter"
-pkggroups="tlsrouter"
-url="https://github.com/inetaf/tcpproxy/tree/master/cmd/tlsrouter"
-arch="all"
-license="Apache-2.0"
-makedepends="go libcap"
-subpackages="$pkgname-openrc"
-install="$pkgname.pre-install"
-source="tlsrouter-$pkgver.tar.gz::https://github.com/inetaf/tcpproxy/tarball/$_short_commit
- $pkgname.initd
- $pkgname.confd
- "
-builddir="$srcdir/inetaf-tcpproxy-$_short_commit/cmd/tlsrouter"
-
-export GOFLAGS="$GOFLAGS -modcacherw"
-
-prepare() {
- default_prepare
-}
-
-build() {
- go build .
-}
-
-check() {
- go test ./...
-}
-
-package() {
- install -Dm755 "$builddir/$pkgname" "$pkgdir/usr/bin/$pkgname"
-
- install -Dm755 "$srcdir/$pkgname.initd" \
- "$pkgdir/etc/init.d/$pkgname"
-
- install -Dm644 "$srcdir/$pkgname.confd" \
- "$pkgdir/etc/conf.d/$pkgname"
-
- setcap cap_net_bind_service=+ep "$pkgdir/usr/bin/$pkgname"
-}
-sha512sums="
-5cecd7e8cf65d1aac29cf720ab6879df2a724b46b6ff8e042d79541b66d8ae415702a6c69670ea746883cf28a9ec51a8f67be15098a3d71654d9fdd3ba0a5150 tlsrouter-0_git20220202.tar.gz
-495b26eaba88b57f4e363b7e89e302ba73c89a38f69c3c299ba4dd3531e5a2231c92b90c11d79a0199fbe602059c43ad52ae3d6cdfe532b350a884a90b21983e tlsrouter.initd
-7dde09a46fa706fc7ef511c034bd8e1cb58a29d55320cc5fae9fdd6a5dc053948cb28ef76f1f8893edd656a3b99dd222a54f660b12a220011fcb949c1f64874c tlsrouter.confd
-"
diff --git a/testing/tlsrouter/tlsrouter.confd b/testing/tlsrouter/tlsrouter.confd
deleted file mode 100644
index 3332390b628..00000000000
--- a/testing/tlsrouter/tlsrouter.confd
+++ /dev/null
@@ -1,3 +0,0 @@
-# tlsrouter options
-
-tlsrouter_opts="-conf /etc/tlsrouter/tlsrouter.conf -listen :443"
diff --git a/testing/tlsrouter/tlsrouter.initd b/testing/tlsrouter/tlsrouter.initd
deleted file mode 100644
index 3f2bfa33884..00000000000
--- a/testing/tlsrouter/tlsrouter.initd
+++ /dev/null
@@ -1,14 +0,0 @@
-#!/sbin/openrc-run
-
-supervisor=supervise-daemon
-
-name=tlsrouter
-command="/usr/bin/tlsrouter"
-command_args="$tlsrouter_opts"
-command_user="tlsrouter"
-start_stop_daemon_args="--quiet"
-
-depend() {
- need net
- after firewall
-}
diff --git a/testing/tlsrouter/tlsrouter.pre-install b/testing/tlsrouter/tlsrouter.pre-install
deleted file mode 100644
index ba0f6eb29bc..00000000000
--- a/testing/tlsrouter/tlsrouter.pre-install
+++ /dev/null
@@ -1,9 +0,0 @@
-#!/bin/sh
-
-user=tlsrouter
-group=tlsrouter
-
-addgroup -S tlsrouter 2>/dev/null
-adduser -S -D -h /var/lib/$user -s /sbin/nologin -G $group -g $user $user 2>/dev/null
-
-exit 0
diff --git a/testing/tmate/APKBUILD b/testing/tmate/APKBUILD
index cf4890dc293..1d5c095af38 100644
--- a/testing/tmate/APKBUILD
+++ b/testing/tmate/APKBUILD
@@ -1,16 +1,28 @@
# Maintainer: Daniel Isaksen <d@duniel.no>
pkgname=tmate
pkgver=2.4.0
-pkgrel=0
+pkgrel=4
pkgdesc="Instant Terminal Sharing"
url="https://tmate.io/"
arch="all"
license="ISC"
depends="ncurses-terminfo"
-makedepends="ncurses-dev libevent-dev autoconf automake bsd-compat-headers
- libtool zlib-dev libssh-dev msgpack-c-dev"
+makedepends="
+ autoconf
+ automake
+ bsd-compat-headers
+ libevent-dev
+ libssh-dev
+ libtool
+ msgpack-c-dev
+ ncurses-dev
+ zlib-dev
+ "
subpackages="$pkgname-doc"
-source="tmate-$pkgver.tar.gz::https://github.com/tmate-io/tmate/archive/$pkgver.tar.gz"
+source="tmate-$pkgver.tar.gz::https://github.com/tmate-io/tmate/archive/$pkgver.tar.gz
+ msgpack-c.patch
+ implicit-decl.patch
+ "
prepare() {
default_prepare
@@ -18,6 +30,7 @@ prepare() {
}
build() {
+ CFLAGS="$CFLAGS -D_GNU_SOURCE"
./configure \
--build=$CBUILD \
--host=$CHOST \
@@ -42,4 +55,8 @@ package() {
done
}
-sha512sums="92d2ca354b295678bfc2747ca83a45ebafeaec40ebac94bd94c4926af4f820b3f3a087f365147f41c80d1c8ad032f52c697a2421839c39315d84f98f7eccada6 tmate-2.4.0.tar.gz"
+sha512sums="
+92d2ca354b295678bfc2747ca83a45ebafeaec40ebac94bd94c4926af4f820b3f3a087f365147f41c80d1c8ad032f52c697a2421839c39315d84f98f7eccada6 tmate-2.4.0.tar.gz
+39db11866fc76178630244da3d6d555a2090d9bab9a54425344767bda130b30931198af6eb0c775cbe6b4f14987e0271dd30b7110b0591ac94dfc81b32486036 msgpack-c.patch
+2d460f9caa6bf9bbd934512b545e8ef9c0616202aab7da7e4164f136efcffa341047a52b0c1879becd178fdb9e72914871916f0e2b5ac9990e95bbfd3ccb64a9 implicit-decl.patch
+"
diff --git a/testing/tmate/implicit-decl.patch b/testing/tmate/implicit-decl.patch
new file mode 100644
index 00000000000..2f8c97c2699
--- /dev/null
+++ b/testing/tmate/implicit-decl.patch
@@ -0,0 +1,12 @@
+diff --git a/tmux.h b/tmux.h
+index c60a044..ae356aa 100644
+--- a/tmux.h
++++ b/tmux.h
+@@ -25,6 +25,7 @@
+
+ #include <sys/time.h>
+ #include <sys/uio.h>
++#include <sys/types.h>
+
+ #include <event.h>
+ #include <limits.h>
diff --git a/testing/tmate/msgpack-c.patch b/testing/tmate/msgpack-c.patch
new file mode 100644
index 00000000000..b88f4629732
--- /dev/null
+++ b/testing/tmate/msgpack-c.patch
@@ -0,0 +1,13 @@
+diff --git a/configure.ac b/configure.ac
+index 028d555..9bbe2ae 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -201,7 +201,7 @@ fi
+
+ PKG_CHECK_MODULES(
+ MSGPACK,
+- msgpack >= 1.1.0,
++ msgpack-c >= 1.1.0,
+ [
+ CPPFLAGS="$MSGPACK_CFLAGS $CPPFLAGS"
+ LIBS="$MSGPACK_LIBS $LIBS"
diff --git a/testing/tmpl/APKBUILD b/testing/tmpl/APKBUILD
new file mode 100644
index 00000000000..eb506661841
--- /dev/null
+++ b/testing/tmpl/APKBUILD
@@ -0,0 +1,32 @@
+# Maintainer: Sergio Talens-Oliag <sto@mixinet.net>
+pkgname=tmpl
+pkgver=0.4.0
+pkgrel=3
+pkgdesc="Tool to process templates using Golang text/template and Sprig functions"
+url="https://github.com/krakozaure/tmpl"
+arch="all"
+license="MIT"
+makedepends="go"
+subpackages="$pkgname-doc"
+options="!check" # no tests provided
+
+source="$pkgname-$pkgver.tar.gz::https://github.com/krakozaure/tmpl/archive/refs/tags/v$pkgver.tar.gz"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+export GOFLAGS="$GOFLAGS -modcacherw"
+
+build() {
+ go build -v -o . \
+ -ldflags "-s -w -X github.com/krakozaure/tmpl/version.Version=v$pkgver"
+}
+
+package() {
+ install -Dm755 tmpl -t "$pkgdir"/usr/bin/
+ install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
+
+sha512sums="
+b45306b2592cfc0faf3549347c19904e023715152ed56a3aae0cc653b1445b01ce65b4c5357ab0a34e74633c27054e25e0d0c3d09c6637702c1e220f753e1392 tmpl-0.4.0.tar.gz
+"
diff --git a/testing/tmpmail/APKBUILD b/testing/tmpmail/APKBUILD
index 1b37c09721d..f2fac9a949f 100644
--- a/testing/tmpmail/APKBUILD
+++ b/testing/tmpmail/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Grigory Kirillov <txgk@bk.ru>
-# Maintainer: Grigory Kirillov <txgk@bk.ru>
+# Maintainer: Sergiy Stupar <owner@sestolab.pp.ua>
pkgname=tmpmail
pkgver=1.2.3
-pkgrel=0
+pkgrel=2
pkgdesc="Temporary email right from your terminal written in POSIX sh"
url="https://github.com/sdushantha/tmpmail"
arch="noarch"
@@ -13,6 +13,7 @@ depends="
curl
jq
cmd:xclip
+ cmd:column
"
subpackages="$pkgname-doc"
source="https://github.com/sdushantha/tmpmail/archive/v$pkgver/tmpmail-$pkgver.tar.gz"
diff --git a/testing/tmux-resurrect/APKBUILD b/testing/tmux-resurrect/APKBUILD
new file mode 100644
index 00000000000..80d28dc04ca
--- /dev/null
+++ b/testing/tmux-resurrect/APKBUILD
@@ -0,0 +1,27 @@
+# Maintainer: Thomas Faughnan <tom@tjf.sh>
+pkgname=tmux-resurrect
+pkgver=4.0.0
+pkgrel=0
+pkgdesc="Persists tmux environment across system restarts"
+url="https://github.com/tmux-plugins/tmux-resurrect"
+arch="noarch"
+license="MIT"
+depends="tmux>=1.9 bash"
+options="!check" # Tests rely on symlinks to another package, broken in releases
+subpackages="$pkgname-doc"
+source="https://github.com/tmux-plugins/tmux-resurrect/archive/v$pkgver/$pkgname-$pkgver.tar.gz
+ ps.patch"
+
+package() {
+ mkdir -p "$pkgdir/usr/share/$pkgname"
+ cp -r resurrect.tmux scripts/ strategies/ save_command_strategies/ \
+ "$pkgdir/usr/share/$pkgname"
+
+ mkdir -p "$pkgdir/usr/share/doc/$pkgname"
+ install -m644 docs/* "$pkgdir/usr/share/doc/$pkgname"
+}
+
+sha512sums="
+d7ceaec7bb7c2160f43b97f1c8a5315d5cf83a511531b13f93298cb4a3ae12cf0642cbbbb3b3e42acf674615b13d0003b6915abdc70751900ab24554cf181115 tmux-resurrect-4.0.0.tar.gz
+a8f544910a58c48181ee7aceca0f008ba2a58d6768c0144bb23d44ef47eaa20581f22795cfa577b2767d2c5c996fd2cabd1d5e77ad6cae77f2d7927bd1f6c3aa ps.patch
+"
diff --git a/testing/tmux-resurrect/ps.patch b/testing/tmux-resurrect/ps.patch
new file mode 100644
index 00000000000..9c205f84c89
--- /dev/null
+++ b/testing/tmux-resurrect/ps.patch
@@ -0,0 +1,16 @@
+Author: Thomas Faughnan <tom@tjf.sh>
+URL: https://github.com/tmux-plugins/tmux-resurrect/pull/455 (awaiting upstream merge)
+Summary: Fix ps arguments to work for busybox
+diff --git a/save_command_strategies/ps.sh b/save_command_strategies/ps.sh
+index 544426c..15bb5aa 100755
+--- a/save_command_strategies/ps.sh
++++ b/save_command_strategies/ps.sh
+@@ -11,7 +11,7 @@ exit_safely_if_empty_ppid() {
+ }
+
+ full_command() {
+- ps -ao "ppid command" |
++ ps -ao "ppid,args" |
+ sed "s/^ *//" |
+ grep "^${PANE_PID}" |
+ cut -d' ' -f2-
diff --git a/testing/tncattach/APKBUILD b/testing/tncattach/APKBUILD
index 4adc4b88dfb..b44250c3d2f 100644
--- a/testing/tncattach/APKBUILD
+++ b/testing/tncattach/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Mathew Meins <mm@blackhelicopters.net>
pkgname=tncattach
pkgver=0.1.9
-pkgrel=0
+pkgrel=1
pkgdesc="Attach amateur radio TNC devices as network interfaces"
url="https://github.com/markqvist/tncattach"
arch="all"
diff --git a/testing/tnef/APKBUILD b/testing/tnef/APKBUILD
new file mode 100644
index 00000000000..9491a6dc35b
--- /dev/null
+++ b/testing/tnef/APKBUILD
@@ -0,0 +1,32 @@
+# Contributor: Noel Kuntze <noel.kuntze@thermi.consulting>
+# Maintainer: Noel Kuntze <noel.kuntze@thermi.consulting>
+
+pkgname=tnef
+pkgdesc="Program for unpacking ms-tnef MIME attachment"
+pkgver=1.4.18
+pkgrel=0
+arch='all'
+url="https://github.com/verdammelt/tnef"
+license='GPL-2.0-or-later '
+makedepends='autoconf automake'
+source="$pkgname-$pkgver.tar.gz::https://github.com/verdammelt/tnef/archive/$pkgver.tar.gz"
+options="!check" # no test suite
+subpackages="$pkgname-doc"
+
+prepare() {
+ autoreconf -fi
+ default_prepare
+}
+
+build() {
+ ./configure --prefix=/usr
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+bc53daaca9c260a804681c040d01f80bbd8b0d3597678c774975e988cdf83dad6b0d6c66b22e0d40ed2300efddef0bc663236ead4dfe687eb33af7f27dbb6000 tnef-1.4.18.tar.gz
+"
diff --git a/testing/toapk/APKBUILD b/testing/toapk/APKBUILD
index 4fdda5914d2..8995c4dcb09 100755..100644
--- a/testing/toapk/APKBUILD
+++ b/testing/toapk/APKBUILD
@@ -1,27 +1,32 @@
# Contributor: Will Sinatra <wpsinatra@gmail.com>
# Maintainer: Will Sinatra <wpsinatra@gmail.com>
pkgname=toapk
-pkgver=0.8
+pkgver=1.0
pkgrel=0
pkgdesc="PKGBUILD to APKBUILD Conversion Tool"
-url="http://lambdacreate.com/dev/toAPK"
-# riscv64 blocked by fennel
-arch="all !riscv64"
+url="https://lambdacreate.com/dev/toAPK"
+arch="all"
license="GPL-3.0-only"
makedepends="fennel lua5.3-dev"
-source="https://gitlab.com/Durrendal/toAPK/-/archive/v$pkgver/toAPK-v$pkgver.zip"
+depends="lua5.3-sec"
+source="https://gitlab.com/Durrendal/toAPK/-/archive/v$pkgver/toAPK-v$pkgver.tar.gz
+ fennel5.3.patch
+ "
builddir="$srcdir/toAPK-v$pkgver"
-check() {
- make test
-}
-
build() {
make compile-bin
}
+check() {
+ make test
+}
+
package() {
install -Dm755 "$builddir"/src/toAPK-bin "$pkgdir"/usr/bin/toAPK
}
-sha512sums="016cf582b3c3a516241421d6bf5977fbcb9b57038be54f963800ae32e8c728a860bf7732e0d0d1b1e0445a03604115a0fd169f3044a83d6cc93ae19add7e79ac toAPK-v0.8.zip"
+sha512sums="
+507280fdc24730186b9ee6697b28bc97294bc6cd27ee859e0f740cecbc64b2a0c98d5daf88f02710a1b98b1d9f49f5f86fc592c8029375c26a408e45def4b0cf toAPK-v1.0.tar.gz
+5db5acd8a441de3176b57793f55da0a529feb0128e3e53b3d5574b79782193cea9aa620c49179ee4b9c1e17e06f35424aef8352d71cf32b4096d9c4d1f8a081b fennel5.3.patch
+"
diff --git a/testing/toapk/fennel5.3.patch b/testing/toapk/fennel5.3.patch
new file mode 100644
index 00000000000..cee52fb2bf5
--- /dev/null
+++ b/testing/toapk/fennel5.3.patch
@@ -0,0 +1,22 @@
+diff --git a/Makefile b/Makefile
+index 471f5fc..d41ba40 100644
+--- a/Makefile
++++ b/Makefile
+@@ -9,7 +9,7 @@ LUA_INCLUDE_DIR ?= /usr/include/lua5.3
+ DESTDIR=/usr/bin
+
+ compile-lua:
+- fennel --compile src/toAPK.fnl > src/toAPK.lua
++ fennel5.3 --compile src/toAPK.fnl > src/toAPK.lua
+ sed -i '1 i\-- Author: Will Sinatra <wpsinatra@gmail.com> | License: GPLv3' src/toAPK.lua
+ sed -i '1 i\#!/usr/bin/$(LUA)' src/toAPK.lua
+
+@@ -17,7 +17,7 @@ install-lua:
+ install ./src/toAPK.lua -D $(DESTDIR)/toAPK
+
+ compile-bin:
+- cd ./src/ && fennel --compile-binary toAPK.fnl toAPK-bin $(STATIC_LUA_LIB) $(LUA_INCLUDE_DIR)
++ cd ./src/ && fennel5.3 --compile-binary toAPK.fnl toAPK-bin $(STATIC_LUA_LIB) $(LUA_INCLUDE_DIR)
+
+ install-bin:
+ install ./src/toAPK-bin -D $(DESTDIR)/toAPK
diff --git a/testing/today/APKBUILD b/testing/today/APKBUILD
new file mode 100644
index 00000000000..2d439a87562
--- /dev/null
+++ b/testing/today/APKBUILD
@@ -0,0 +1,22 @@
+# Maintainer: Pedro Lucas Porcellis <porcellis@eletrotupi.com>
+pkgname=today
+pkgver=6.1.4
+pkgrel=0
+pkgdesc="Script for keeping a daily journal"
+url="https://sr.ht/~sotirisp/today"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="vim"
+makedepends="scdoc"
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://git.sr.ht/~sotirisp/today/archive/v$pkgver.tar.gz"
+builddir="$srcdir/today-v$pkgver"
+options="!check" # no tests
+
+package() {
+ make DESTDIR="$pkgdir" PREFIX=/usr install
+}
+
+sha512sums="
+195eb122b22dd0f241f992781ca69c5831dd1b87e44a634d0d4db3d0c395c2bbe0f01a8d472352ad248685411f9d25af0ccafa57aec92db4b6a79a48cb7431aa today-6.1.4.tar.gz
+"
diff --git a/testing/todoman/APKBUILD b/testing/todoman/APKBUILD
deleted file mode 100644
index 37d2f5f44dc..00000000000
--- a/testing/todoman/APKBUILD
+++ /dev/null
@@ -1,65 +0,0 @@
-# Contributor: Philipp Glaum <p@pglaum.de>
-# Maintainer: Dhruvin Gandhi <contact@dhruvin.dev>
-pkgname=todoman
-_pyname=todoman
-pkgver=4.1.0
-pkgrel=1
-pkgdesc="A simple CalDav-based todo manager"
-url="https://pypi.org/project/todoman/"
-arch="noarch"
-license="ISC"
-depends="
- python3
- py3-atomicwrites
- py3-click
- py3-click-log
- py3-dateutil
- py3-humanize
- py3-icalendar
- py3-parsedatetime
- py3-urwid
- py3-xdg
- "
-makedepends="
- py3-setuptools
- py3-setuptools_scm
- py3-sphinx
- py3-sphinx-autorun
- py3-sphinx-click
- py3-sphinx_rtd_theme
- "
-checkdepends="
- py-tox
- py3-flake8
- py3-flake8-import-order
- py3-freezegun
- py3-hypothesis
- py3-pytest
- py3-pytest-cov
- py3-pytest-runner
- "
-subpackages="$pkgname-doc $pkgname-bash-completion $pkgname-zsh-completion"
-source="https://files.pythonhosted.org/packages/source/${_pyname:0:1}/$_pyname/$_pyname-$pkgver.tar.gz"
-
-build() {
- python3 setup.py build
- make -C docs man PYTHONPATH="$PWD"
-}
-
-check() {
- TOX_TESTENV_PASSENV=PYTHONPATH PYTHONPATH=. \
- tox --sitepackages
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
- install -Dm644 docs/build/man/todo.1 "$pkgdir"/usr/share/man/man1/todo.1
- install -Dm644 contrib/completion/bash/_todo \
- "$pkgdir"/usr/share/bash-completion/completions/_todo
- install -Dm644 contrib/completion/zsh/_todo \
- "$pkgdir"/usr/share/zsh/site-functions/_todo
-}
-
-sha512sums="
-3e4789470794baf692a3d3d51952fafc35a18de40f4ddbf705b960208e8c4f406c3ea8adbd910d1bb603ef594346d57b18d698651c159e53068ca35ace23353b todoman-4.1.0.tar.gz
-"
diff --git a/testing/tomcat9/APKBUILD b/testing/tomcat9/APKBUILD
index 6f0e1714292..c64663d81a7 100644
--- a/testing/tomcat9/APKBUILD
+++ b/testing/tomcat9/APKBUILD
@@ -1,16 +1,15 @@
# Contributor: Holger Jaekel <holger.jaekel@gmx.de>
# Maintainer: Holger Jaekel <holger.jaekel@gmx.de>
pkgname=tomcat9
-pkgver=9.0.63
+pkgver=9.0.88
pkgrel=0
pkgdesc="Open source implementation of the Java Servlet 4.0 and JavaServer Pages 2.3 technologies"
url="https://tomcat.apache.org/"
-arch="noarch !x86 !armv7 !armhf !riscv64" # eclipse-ecj availability
+arch="noarch !x86 !armv7 !armhf !ppc64le !riscv64" # eclipse-ecj availability
license="Apache-2.0"
depends="eclipse-ecj java-common"
pkgusers="tomcat9"
pkggroups="tomcat9"
-makedepends="coreutils"
checkdepends="java-jre-headless"
install="$pkgname.pre-install"
subpackages="
@@ -19,7 +18,6 @@ subpackages="
$pkgname-doc
$pkgname-examples
"
-builddir="$srcdir/apache-tomcat-$pkgver-src/"
source="
https://archive.apache.org/dist/tomcat/tomcat-9/v$pkgver/bin/apache-tomcat-$pkgver.tar.gz
@@ -28,6 +26,18 @@ source="
builddir=$srcdir/apache-${pkgname//9/}-$pkgver
# secfixes:
+# 9.0.80-r0:
+# - CVE-2023-41080
+# 9.0.73-r0:
+# - CVE-2023-28708
+# 9.0.71-r0:
+# - CVE-2023-24998
+# 9.0.70-r0:
+# - CVE-2022-45143
+# 9.0.68-r0:
+# - CVE-2022-42252
+# 9.0.64-r0:
+# - CVE-2022-34305
# 9.0.63-r0:
# - CVE-2022-29885
# 9.0.58-r0:
@@ -42,7 +52,7 @@ package() {
install -dm 755 "$pkgdir"/usr/share/$pkgname
install -dm 755 "$pkgdir"/usr/share/$pkgname/bin
install -dm 755 "$pkgdir"/usr/share/java/$pkgname
- cp -dr --no-preserve=ownership bin "$pkgdir"/usr/share/$pkgname
+ cp -dr bin "$pkgdir"/usr/share/$pkgname
# commons-daemon and tomcat-natives are packaged on their own
chmod 644 "$pkgdir"/usr/share/$pkgname/bin/*.jar
chmod 755 "$pkgdir"/usr/share/$pkgname/bin/*.sh
@@ -115,6 +125,6 @@ openrc() {
}
sha512sums="
-4b905018164026756bd36ab9fde8f6b21c886acb8e5255d93f8938491e4d375dd18b9fc58ee23e3d78b16e8b81271c1c998e5592beedcac632567c2ca9411c69 apache-tomcat-9.0.63.tar.gz
+b2668f50339afdd266dbdf3ff20a98632a5552910179eda272b65ea0b18be4bef8fa9988e3cfc77e4eae4b74ae1e7abe2483b0e427a07628ed50fed3a13eefb9 apache-tomcat-9.0.88.tar.gz
7d16b14977c22e1ae998d15a0a83a574624b62c722a0adbfd05a4105581eee347d38e366a269ebca4c8fa894c3718d6fbdcea0e0974d20407075ec2af6ea07a4 10-daemon.patch
"
diff --git a/testing/toml-adapt/APKBUILD b/testing/toml-adapt/APKBUILD
deleted file mode 100644
index b27c7388a36..00000000000
--- a/testing/toml-adapt/APKBUILD
+++ /dev/null
@@ -1,29 +0,0 @@
-# Contributor: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-# Maintainer: Iztok Fister, Jr. <iztok@iztok-jr-fister.eu>
-pkgname=toml-adapt
-pkgver=0.2.6
-pkgrel=0
-pkgdesc="A simple command-line interface (CLI) for manipulating toml files"
-url="https://github.com/firefly-cpp/toml-adapt"
-arch="noarch"
-license="MIT"
-depends="python3 py3-toml py3-click"
-checkdepends="python3-dev py3-pytest"
-makedepends="py3-setuptools"
-source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/t/toml-adapt/toml-adapt-$pkgver.tar.gz"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 -m pytest
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-80090c91f9b56c99fdee9c620e13f70b287951b21c13a824a8f1bd7c2ee3aa543ced7a3d30034b31a687b9b173ac30407a800f9ff060d678a0ccc57651300561 toml-adapt-0.2.6.tar.gz
-"
diff --git a/testing/toml2json/APKBUILD b/testing/toml2json/APKBUILD
new file mode 100644
index 00000000000..ddde8f52bc8
--- /dev/null
+++ b/testing/toml2json/APKBUILD
@@ -0,0 +1,40 @@
+# Contributor: Orhun Parmaksız <orhunparmaksiz@gmail.com>
+# Maintainer: Orhun Parmaksız <orhunparmaksiz@gmail.com>
+pkgname=toml2json
+pkgver=1.3.1
+pkgrel=0
+pkgdesc="A very small CLI for converting TOML to JSON"
+url="https://github.com/woodruffw/toml2json"
+arch="all"
+license="MIT"
+makedepends="
+ cargo
+ cargo-auditable
+ "
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/woodruffw/toml2json/archive/v$pkgver.tar.gz"
+options="net"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm 755 "target/release/$pkgname" -t "$pkgdir/usr/bin"
+ install -Dm 644 README.md -t "$pkgdir/usr/share/doc/$pkgname"
+ install -Dm 644 LICENSE -t "$pkgdir/usr/share/licenses/$pkgname"
+}
+
+sha512sums="
+ae89a6cc3e3409c24f9c093036ab53d21c177775aec27c200b45971c94f1948c4140e64d17e634c097368ff2afd7ed2bbd29f51c7ef225b15a1dc88984750c6a toml2json-1.3.1.tar.gz
+"
diff --git a/testing/tootik/APKBUILD b/testing/tootik/APKBUILD
new file mode 100644
index 00000000000..f907d782ef6
--- /dev/null
+++ b/testing/tootik/APKBUILD
@@ -0,0 +1,68 @@
+# Contributor: Celeste <cielesti@protonmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
+pkgname=tootik
+pkgver=0.9.5
+pkgrel=1
+pkgdesc="Federated nanoblogging service with Gemini frontend"
+url="https://github.com/dimkr/tootik"
+arch="all"
+license="Apache-2.0"
+depends_openrc="openssl"
+makedepends="go"
+install="$pkgname.pre-install"
+pkgusers="tootik"
+pkggroups="tootik"
+subpackages="$pkgname-openrc"
+source="https://github.com/dimkr/tootik/archive/refs/tags/$pkgver/tootik-$pkgver.tar.gz
+ tootik.cfg
+ tootik.initd
+ tootik.confd
+
+ fix-32bit-maxint.patch
+ "
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+export CGO_ENABLED=1
+export _GOTAGS="fts5"
+
+build() {
+ local _goldflags="
+ -X github.com/dimkr/tootik/buildinfo.Version=$pkgver
+ "
+
+ go generate -v ./migrations
+ go vet -v -tags "$_GOTAGS" ./...
+ go build -v -ldflags "$_goldflags" -tags "$_GOTAGS" ./cmd/tootik
+}
+
+check() {
+ ./tootik --version
+
+ # cleanup sqlite database files used by test/register_test.go
+ rm -vf /tmp/TestRegister*.sqlite3
+
+ go test -v -tags "$_GOTAGS" -timeout 30m ./...
+}
+
+package() {
+ install -Dm755 tootik -t "$pkgdir"/usr/bin/
+ install -dm750 -o tootik -g tootik "$pkgdir"/var/lib/tootik
+
+ install -dm750 -o tootik -g tootik "$pkgdir"/etc/tootik
+ install -Dm640 -o tootik -g tootik "$srcdir"/tootik.cfg \
+ -t "$pkgdir"/etc/tootik/
+
+ install -Dm755 "$srcdir"/tootik.initd "$pkgdir"/etc/init.d/tootik
+ install -Dm644 "$srcdir"/tootik.confd "$pkgdir"/etc/conf.d/tootik
+}
+
+sha512sums="
+1f2a75d7abbf730637152037498b8b6872c8f165a7b52c5603c89a10900b4875e6bb09f9c89864fd966294403b4fae19cc468dc87e84c0582f966f2e82ca76a5 tootik-0.9.5.tar.gz
+b86a8d3fe428244b05a93d137ea38253801ccc8a72e5e941083158d7f7323c3bb25a1e00d5b1d084ee18f486c7e24a2076a6aae69a2a99812ee21fb1c6d6922f tootik.cfg
+7999e43dc50604cc0d0d97292aed9ee5fc658b08b46fc4d92b21916246ee43b54b79ba9306b6196ac8b86d6d53498266a499cd31e90f22749f78bc5d5c404b19 tootik.initd
+11fa51d25baaeb295c80cf3e154eb1eab67f9633e23f01cc0a25c427af368746d536bff17de2153b5be925489e3f84ca5ba492a4a43c32aaf33b8c4d00d14fd6 tootik.confd
+b1a49015c1e5115e420d04b33290b5726fda492fcca71b71bf9083f5ea66259c38cda308df1abb0c033042ea0da9f910cb64f7be242f7ba4cfc6fda8ff576275 fix-32bit-maxint.patch
+"
diff --git a/testing/tootik/fix-32bit-maxint.patch b/testing/tootik/fix-32bit-maxint.patch
new file mode 100644
index 00000000000..c119e880fac
--- /dev/null
+++ b/testing/tootik/fix-32bit-maxint.patch
@@ -0,0 +1,24 @@
+Patch-Source: https://github.com/dimkr/tootik/commit/eba68e3c0f3eaeeb02d2fd25553fcdb61cd814ee.patch
+--
+From eba68e3c0f3eaeeb02d2fd25553fcdb61cd814ee Mon Sep 17 00:00:00 2001
+From: Dima Krasner <dima@dimakrasner.com>
+Date: Sun, 31 Mar 2024 09:18:28 +0300
+Subject: [PATCH] fix build failure on 32-bit architectures (fixes #56)
+
+---
+ cfg/cfg.go | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/cfg/cfg.go b/cfg/cfg.go
+index 8cd17bb..3db5662 100644
+--- a/cfg/cfg.go
++++ b/cfg/cfg.go
+@@ -262,7 +262,7 @@ func (c *Config) FillDefaults() {
+ c.DeliveryTimeout = time.Minute * 5
+ }
+
+- if c.DeliveryWorkers <= 0 || c.DeliveryWorkers > math.MaxUint32 {
++ if c.DeliveryWorkers <= 0 || c.DeliveryWorkers > math.MaxInt {
+ c.DeliveryWorkers = 4
+ }
+
diff --git a/testing/tootik/tootik.cfg b/testing/tootik/tootik.cfg
new file mode 100644
index 00000000000..0dca7f4f02e
--- /dev/null
+++ b/testing/tootik/tootik.cfg
@@ -0,0 +1,63 @@
+{
+ "DatabaseOptions": "_journal_mode=WAL&_busy_timeout=5000",
+ "RegistrationInterval": 300000000000,
+ "MaxPostsLength": 3000,
+ "MaxPostsPerDay": 3000,
+ "PostThrottleFactor": 3000,
+ "PostThrottleUnit": 30000000000,
+ "EditThrottleFactor": 1,
+ "EditThrottleUnit": 30000000000,
+ "ShareThrottleFactor": 3000,
+ "ShareThrottleUnit": 30000000000,
+ "PollMaxOptions": 5,
+ "PollDuration": 2592000000000000,
+ "MaxDisplayNameLength": 30,
+ "MaxBioLength": 500,
+ "MinActorEditInterval": 1800000000000,
+ "MaxFollowsPerUser": 150,
+ "FollowAcceptTimeout": 172800000000000,
+ "PostsPerPage": 30,
+ "RepliesPerPage": 10,
+ "MaxOffset": 900,
+ "SharesPerPost": 1000,
+ "MaxRequestBodySize": 1048576,
+ "MaxRequestAge": 300000000000,
+ "CompactViewMaxRunes": 200,
+ "CompactViewMaxLines": 4,
+ "CacheUpdateTimeout": 5000000000,
+ "GeminiRequestTimeout": 30000000000,
+ "GopherRequestTimeout": 30000000000,
+ "LineWidth": 70,
+ "GuppyRequestTimeout": 30000000000,
+ "MaxGuppySessions": 30,
+ "GuppyChunkTimeout": 2000000000,
+ "GuppyResponseChunkSize": 512,
+ "MaxSentGuppyChunks": 8,
+ "DeliveryBatchSize": 16,
+ "DeliveryRetryInterval": 1800,
+ "MaxDeliveryAttempts": 5,
+ "DeliveryTimeout": 300000000000,
+ "DeliveryWorkers": 4,
+ "DeliveryWorkerBuffer": 16,
+ "OutboxPollingInterval": 5000000000,
+ "MaxActivitiesQueueSize": 10000,
+ "ActivitiesBatchSize": 64,
+ "ActivitiesPollingInterval": 5000000000,
+ "ActivitiesBatchDelay": 100000000,
+ "ActivityProcessingTimeout": 15000000000,
+ "MaxForwardingDepth": 5,
+ "MaxRecipients": 1000,
+ "MinActorAge": 3600000000000,
+ "ResolverCacheTTL": 259200000000000,
+ "ResolverRetryInterval": 21600000000000,
+ "ResolverMaxIdleConns": 128,
+ "ResolverIdleConnTimeout": 60000000000,
+ "MaxInstanceRecoveryTime": 2592000000000000,
+ "MaxResolverRequests": 16,
+ "FollowersSyncBatchSize": 64,
+ "FollowersSyncInterval": 259200000000000,
+ "NotesTTL": 2592000000000000,
+ "DeliveryTTL": 604800000000000,
+ "SharesTTL": 172800000000000,
+ "ActorTTL": 604800000000000
+}
diff --git a/testing/tootik/tootik.confd b/testing/tootik/tootik.confd
new file mode 100644
index 00000000000..ee6759289ed
--- /dev/null
+++ b/testing/tootik/tootik.confd
@@ -0,0 +1,56 @@
+# Configuration for /etc/init.d/tootik
+
+# Instance blocklist CSV file
+#blocklist=""
+
+# Uncomment to disable new user registration
+#disable_registration="yes"
+
+# HTTP(S) listening address
+#httpaddr=":8443"
+
+# Uncomment to serve HTTPS instead of HTTP
+# (requires httpscert and httpskey)
+#serve_https="yes"
+
+# HTTPS TLS certificate
+#httpscert="/etc/tootik/https-cert.pem"
+
+# HTTPS TLS key
+#httpskey="/etc/tootik/https-key.pem"
+
+# Domain name
+#tootik_domain="localhost.localdomain:8443"
+
+# Configuration file (Generated by `tootik -dumpcfg`)
+#tootik_cfg="/etc/tootik/tootik.cfg"
+
+# Database path
+#tootik_db="/var/lib/tootik/db.sqlite3"
+
+# Gemini listening address
+#gemaddr=":8965"
+
+# Gemini TLS certificate
+#gemcert="/etc/tootik/gemini-cert.pem"
+
+# Gemini TLS key
+#gemkey="/etc/tootik/gemini-key.pem"
+
+# Finger listening address
+#fingeraddr=":8079"
+
+# Gopher listening address
+#gopheraddr=":8070"
+
+# Guppy listening address
+#guppyaddr=":6775"
+
+# Logging verbosity (-4:debug 0:info 4:warn 8:error)
+#loglevel=0
+
+# Additional options to pass to Tootik
+#extra_opts=""
+
+# Uncomment to enable process supervision
+#supervisor=supervise-daemon
diff --git a/testing/tootik/tootik.initd b/testing/tootik/tootik.initd
new file mode 100644
index 00000000000..04037a7fc2f
--- /dev/null
+++ b/testing/tootik/tootik.initd
@@ -0,0 +1,73 @@
+#!/sbin/openrc-run
+
+name=tootik
+description="Tootik is a federated nanoblogging service for the small internet"
+
+: ${httpscert:="/etc/tootik/https-cert.pem"}
+: ${httpskey:="/etc/tootik/https-key.pem"}
+: ${gemcert:="/etc/tootik/gemini-cert.pem"}
+: ${gemkey:="/etc/tootik/gemini-key.pem"}
+: ${tootik_cfg:="/etc/tootik/tootik.cfg"}
+: ${tootik_db:="/var/lib/tootik/db.sqlite3"}
+
+command="/usr/bin/tootik"
+command_args="
+ ${blocklist:+-blocklist $blocklist}
+ ${httpaddr:+-addr $httpaddr}
+ ${tootik_domain:+-domain $tootik_domain}
+ -cfg $tootik_cfg
+ -db $tootik_db
+ ${gemaddr:+-gemaddr $gemaddr}
+ -gemcert $gemcert
+ -gemkey $gemkey
+ ${fingeraddr:+-fingeraddr $fingeraddr}
+ ${gopheraddr:+-gopheraddr $gopheraddr}
+ ${guppyaddr:+-guppyaddr $guppyaddr}
+ ${loglevel:+-loglevel $loglevel}
+ $extra_opts
+ "
+command_background="yes"
+command_user="tootik:tootik"
+pidfile="/run/${RC_SVCNAME}.pid"
+directory="/var/lib/tootik"
+error_log="/var/log/tootik.log"
+required_files="$tootik_cfg"
+
+if yesno "${disable_registration:-no}"; then
+ command_args="$command_args -closed"
+fi
+
+if yesno "${serve_https:-no}"; then
+ command_args="$command_args -cert $httpscert -key $httpskey"
+ required_files="$required_files $httpscert $httpskey"
+else
+ command_args="$command_args -plain"
+fi
+
+depend() {
+ need localmount net
+ after firewall
+}
+
+start_pre() {
+ checkpath -d -m 0750 -o "$command_user" \
+ "$directory" "/etc/tootik"
+
+ if [ ! -f "$gemcert" ] || [ ! -f "$gemkey" ]; then
+ gen_gemcert || return 1
+ fi
+
+ checkpath -f -m 0640 -o "$command_user" \
+ "$error_log" "$gemcert" "$gemkey" "$tootik_cfg"
+}
+
+gen_gemcert() {
+ local domain="${tootik_domain:-localhost.localdomain:8443}"
+
+ ebegin "Generating new Gemini TLS key & certificate for $domain"
+ openssl req -new -subj "/CN=$domain" -x509 -days 3650 \
+ -newkey ec -pkeyopt ec_paramgen_curve:prime256v1 \
+ -sha256 -nodes -out "$gemcert" -keyout "$gemkey" \
+ 2>/dev/null
+ eend $?
+}
diff --git a/testing/tootik/tootik.pre-install b/testing/tootik/tootik.pre-install
new file mode 100644
index 00000000000..6609c9abfa5
--- /dev/null
+++ b/testing/tootik/tootik.pre-install
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+addgroup -S tootik 2>/dev/null
+adduser -S -D -H \
+ -h /var/lib/tootik \
+ -s /sbin/nologin \
+ -G tootik \
+ -g "Tootik federated nanoblogging service" \
+ tootik 2>/dev/null
+
+exit 0
diff --git a/testing/topgit/APKBUILD b/testing/topgit/APKBUILD
index 53124b80ca3..cdc7bdce4e3 100644
--- a/testing/topgit/APKBUILD
+++ b/testing/topgit/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Joseph Benden <joe@benden.us>
pkgname=topgit
pkgver=0.19.13
-pkgrel=0
+pkgrel=1
pkgdesc="A different patch queue manager"
arch="noarch"
url="https://github.com/mackyle/topgit"
@@ -11,7 +11,7 @@ options="!check"
depends="git gawk sed"
makedepends="perl"
subpackages="$pkgname-doc $pkgname-bash-completion"
-source="$pkgname-$pkgver.tar.gz::$url/archive/$pkgname-$pkgver.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/mackyle/topgit/archive/$pkgname-$pkgver.tar.gz"
builddir="$srcdir/$pkgname-$pkgname-$pkgver"
build() {
diff --git a/testing/topgrade/APKBUILD b/testing/topgrade/APKBUILD
deleted file mode 100644
index 724cf2ade7f..00000000000
--- a/testing/topgrade/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Contributor: Sean McAvoy <seanmcavoy@gmail.com>
-# Maintainer: Sean McAvoy <seanmcavoy@gmail.com>
-pkgname=topgrade
-pkgver=9.0.0
-pkgrel=0
-pkgdesc="run upgrades of packages in OS and other package managers"
-url="https://github.com/r-darwish/topgrade"
-arch="all !s390x !riscv64"
-license="GPL-3.0-or-later"
-makedepends="rust cargo"
-subpackages="$pkgname-doc"
-source="topgrade-$pkgver.tar.gz::https://github.com/r-darwish/topgrade/archive/refs/tags/v$pkgver.tar.gz"
-
-build() {
- cargo build --release
-}
-
-check() {
- cargo test
-}
-
-package() {
- install -Dm755 target/release/topgrade "$pkgdir"/usr/bin/topgrade
- install -Dm644 topgrade.8 "$pkgdir"/usr/share/man/man8/topgrade.8
- install -Dm644 config.example.toml "$pkgdir"/usr/share/doc/topgrade/config.example.toml
- install -Dm644 LICENSE "$pkgdir"/usr/share/license/topgrade/LICENSE
-}
-
-sha512sums="
-a12228d04db4dc0624df18ebf1df6f67910ed6c1af72accee72765af742b7bee5a39625a73fd3a534488f2ed0f0fd73dfb8824f27ce816e33bf61be5a86ab60a topgrade-9.0.0.tar.gz
-"
diff --git a/testing/toppler/APKBUILD b/testing/toppler/APKBUILD
deleted file mode 100644
index f362668a6ee..00000000000
--- a/testing/toppler/APKBUILD
+++ /dev/null
@@ -1,48 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=toppler
-pkgver=1.1.6
-pkgrel=1
-pkgdesc="Clone of the Nebulus game on old 8 and 16 bit machines"
-url="http://toppler.sourceforge.net/"
-arch="all"
-license="GPL-2.0-only"
-depends="$pkgname-data"
-makedepends="sdl12-compat-dev sdl_mixer-dev libzip-dev"
-source="
- https://sourceforge.net/projects/aat-linux-repository/files/sources/alpine/toppler/toppler-$pkgver.tar.gz
- toppler.desktop
- "
-subpackages="$pkgname-data::noarch $pkgname-doc"
-
-prepare() {
- default_prepare
- update_config_guess
- update_config_sub
-}
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --localstatedir=/usr/share/
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- install -Dm644 "$srcdir"/toppler.desktop \
- "$pkgdir"/usr/share/applications/toppler.desktop
-}
-
-data() {
- pkgdesc="$pkgdesc (data files)"
- amove /usr/share/toppler
-}
-
-sha512sums="8debc79c971697c660eb918b84772d9e6f9a1a85c9660c43a52a49f19a31605ee3fabf526a88287916ef2e6073a938b4704536a3ef947d70d533a06d4569ab05 toppler-1.1.6.tar.gz
-bed53b15f35ab066248885116d0de5977668bd0dcbf25cd2e203b6b2d6b8a51a9c3f8683c00461efa74c32c05b57547e7397d73b58f0f46fc64620c479885cc6 toppler.desktop"
diff --git a/testing/toppler/toppler.desktop b/testing/toppler/toppler.desktop
deleted file mode 100644
index fe84a8f898e..00000000000
--- a/testing/toppler/toppler.desktop
+++ /dev/null
@@ -1,12 +0,0 @@
-[Desktop Entry]
-Encoding=UTF-8
-Categories=Application;Game;ArcadeGame;
-X-Desktop-File-Install-Version=0.2
-Name=Tower Toppler
-Comment=A clone of the 'Nebulus' game on old 8 and 16 bit machines.
-Comment[de]=Klon des alten Spiels 'Nebulus'
-Comment[cs]=Klon hry 'Nebulus' z dob 8 a 16 bitových poÄítaÄů.
-Icon=toppler
-Exec=/usr/bin/toppler
-Terminal=0
-Type=Application
diff --git a/testing/torrent-file-editor/APKBUILD b/testing/torrent-file-editor/APKBUILD
new file mode 100644
index 00000000000..e274b1ead18
--- /dev/null
+++ b/testing/torrent-file-editor/APKBUILD
@@ -0,0 +1,35 @@
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=torrent-file-editor
+pkgver=0.3.18
+pkgrel=0
+pkgdesc="Qt based GUI tool designed to create and edit .torrent files"
+url="https://torrent-file-editor.github.io/"
+arch="all"
+license="GPL-3.0-or-later"
+makedepends="
+ cmake
+ qt6-qt5compat-dev
+ qt6-qtbase-dev
+ qt6-qttools-dev
+ samurai
+ "
+source="https://github.com/torrent-file-editor/torrent-file-editor/releases/download/v$pkgver/torrent-file-editor-$pkgver.tar.gz"
+options="!check" # no tests provided
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DCMAKE_BUILD_TYPE=None \
+ -DENABLE_PCH=OFF \
+ -DQT6_BUILD=ON
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+6e12a0422f142c2d8d53267ca3cb9e0df3f2295aca896859c3794c2be89318597d62e8f2862878a156c5a5529d950c36e524f9fe309447691871a2cf44c446ea torrent-file-editor-0.3.18.tar.gz
+"
diff --git a/testing/toxcore/APKBUILD b/testing/toxcore/APKBUILD
deleted file mode 100644
index 42dea6b7fd4..00000000000
--- a/testing/toxcore/APKBUILD
+++ /dev/null
@@ -1,47 +0,0 @@
-# Contributor: Nicolas Lorin <androw95220@gmail.com>
-# Maintainer: Jonathan Sieber <mail@strfry.org>
-pkgname=toxcore
-pkgver=0.2.18
-pkgrel=0
-_cmpver=20
-pkgdesc="Tox communication project - Core Library"
-url="https://tox.chat/"
-arch="all"
-license="GPL-3.0-or-later"
-makedepends="linux-headers cmake libsodium-dev opus-dev libvpx-dev"
-subpackages="$pkgname-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/TokTok/c-toxcore/archive/v$pkgver.tar.gz
- cmp-$_cmpver.tar.gz::https://github.com/camgunz/cmp/archive/refs/tags/v$_cmpver.tar.gz"
-
-# Toxcore's tests do require networking and are not working properly in Travis-CI
-options="!check"
-
-builddir="$srcdir/c-$pkgname-$pkgver"
-
-prepare() {
- mv ../cmp-$_cmpver/* third_party/cmp/
- default_prepare
-}
-
-build() {
- cmake . \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_BUILD_TYPE=None \
- -DCMAKE_INSTALL_LIBDIR=lib
-
- make
-}
-
-check() {
- make test
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- rm -f "$pkgdir"/usr/lib/*.a
-}
-
-sha512sums="
-4bd8e90f395e7c8455b3e31bba0e72bb96a9fab2cbf0e3c2950a7f4b7fcaf8f250ef38fa30ba58a5a79d4cf2a4b5470e6c642597198bb7a7f711f28bbd13d65c toxcore-0.2.18.tar.gz
-f747cb9672592d8c06d08786152a0bfbd6ae4d759d7006805913781c502bf3796241ade636ce2cf9c049f68dd2899e2d5d7008815f29c1a91fc797590a26a9fd cmp-20.tar.gz
-"
diff --git a/testing/toxic/APKBUILD b/testing/toxic/APKBUILD
deleted file mode 100644
index 194eee8ef23..00000000000
--- a/testing/toxic/APKBUILD
+++ /dev/null
@@ -1,25 +0,0 @@
-# Maintainer: Jonathan Sieber <mail@strfry.org>
-pkgname=toxic
-pkgver=0.11.3
-pkgrel=1
-pkgdesc="ncurses-based Tox client"
-url="https://github.com/JFreegman/toxic"
-arch="all"
-license="GPL-3.0-or-later"
-options="!check"
-subpackages="$pkgname-doc"
-makedepends="toxcore-dev libconfig-dev ncurses-dev openal-soft-dev linux-headers
- libvpx-dev opus-dev libnotify-dev libqrencode-dev curl-dev libx11-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/JFreegman/toxic/archive/v$pkgver.tar.gz"
-
-build() {
- make
-}
-
-package() {
- make PREFIX="$pkgdir"/usr install
-}
-
-sha512sums="
-2c8408004d9644b52cbe9477d7c486622fcef52f1d10a1bcdf7555656a2f2e1bd4c6f0594a7b0b3156fd6908c470c5b41c55e6e0914c3eb2067614013f0f259f toxic-0.11.3.tar.gz
-"
diff --git a/testing/toybox/APKBUILD b/testing/toybox/APKBUILD
index aefbc299e66..224f441cd31 100644
--- a/testing/toybox/APKBUILD
+++ b/testing/toybox/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: André Klitzing <aklitzing@gmail.com>
# Contributor: André Klitzing <aklitzing@gmail.com>
pkgname=toybox
-pkgver=0.8.7
+pkgver=0.8.10
pkgrel=0
pkgdesc="A BSD-licensed alternative to busybox"
arch="all"
@@ -12,6 +12,9 @@ makedepends="bash linux-headers"
source="https://landley.net/toybox/downloads/toybox-$pkgver.tar.gz"
build() {
+ # Disable FORTIFY until build is fixed
+ export CFLAGS=-U_FORTIFY_SOURCE
+
scripts/genconfig.sh
make defconfig
make
@@ -26,5 +29,5 @@ package() {
}
sha512sums="
-a32a764c393edad55fe2e17120daf5b098e42886659a9dc15186db2795e980024be24c6276b4c5936733d3769a90bbf3918251c515450ec3eafb7a50ca8cc59f toybox-0.8.7.tar.gz
+b2c36bc4e41741893a4fe039dd653f552ab987b948f78c1e5d04abb13ffbb8f898af636967739067877afef9ac0af10c259f674acdc4a80084a846fb02742461 toybox-0.8.10.tar.gz
"
diff --git a/testing/tpm2-pkcs11/APKBUILD b/testing/tpm2-pkcs11/APKBUILD
index 160c3750291..fd512789247 100644
--- a/testing/tpm2-pkcs11/APKBUILD
+++ b/testing/tpm2-pkcs11/APKBUILD
@@ -1,16 +1,17 @@
# Contributor: Henrik Riomar <henrik.riomar@gmail.com>
# Maintainer:
pkgname=tpm2-pkcs11
-pkgver=1.5.0
-pkgrel=2
+pkgver=1.9.0
+pkgrel=1
pkgdesc="A PKCS#11 interface for TPM2 hardware"
url="https://github.com/tpm2-software/tpm2-pkcs11"
-arch="all"
+arch="all !armhf !armv7 !riscv64 !x86" # blocked by py3-tpm2-pytss
license="BSD-2-Clause"
depends="
bash
py3-asn1-modules
py3-cryptography
+ py3-tpm2-pytss
py3-yaml
python3
tpm2-tools
@@ -30,12 +31,13 @@ makedepends="
yaml-dev
"
options="!check" # Requires IBM TPM simulator
-subpackages="$pkgname-dev"
+subpackages="$pkgname-dev $pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/tpm2-software/tpm2-pkcs11/archive/$pkgver.tar.gz"
prepare() {
- sed -i "s|m4_esyscmd_s(\[git describe .*\])|[$pkgver]|" configure.ac
default_prepare
+ sed -i '/git describe/d' bootstrap
+ echo "$pkgver" > VERSION
./bootstrap
}
@@ -44,14 +46,16 @@ build() {
--build=$CBUILD \
--host=$CHOST \
--target="$CTARGET" \
- --prefix=/usr \
+ --prefix=/usr
make
cd tools && python3 setup.py build
}
package() {
make DESTDIR="$pkgdir" install
- cd tools && python3 setup.py install --prefix=/usr --root="$pkgdir"
+ cd tools && python3 setup.py install --skip-build --root="$pkgdir"
}
-sha512sums="b9b39d3a689312cf8e0b2fa1bff55f7aab2d6f0af817e8b99ecd0bc46d9954e1ce12f8375b220519fef418af6c086b00bb85a12b7425883df5304ecb9911d7ce tpm2-pkcs11-1.5.0.tar.gz"
+sha512sums="
+711f6608c30013b549e810e457728c36944a108866b975b2725d99893c747fcd3f74cfdb977b0b59d00fd5d72d92ba6a28f6b014dfa76a10cdbfd3f7c9289694 tpm2-pkcs11-1.9.0.tar.gz
+"
diff --git a/testing/tpm2-tools/APKBUILD b/testing/tpm2-tools/APKBUILD
index 072f8c37d9f..9436e5cb357 100644
--- a/testing/tpm2-tools/APKBUILD
+++ b/testing/tpm2-tools/APKBUILD
@@ -1,27 +1,23 @@
+# Contributor: Steve McMaster <code@mcmaster.io>
# Contributor: Alexander Sack <asac@pantacor.com>
# Maintainer: Alexander Sack <asac@pantacor.com>
pkgname=tpm2-tools
-pkgver=5.2
-pkgrel=1
+pkgver=5.6
+pkgrel=0
pkgdesc="TPM2 Tools"
url="https://github.com/tpm2-software/tpm2-tools/"
arch="all"
license="BSD-2-Clause"
-makedepends="tpm2-tss-dev openssl1.1-compat-dev curl-dev util-linux-dev libtool
- autoconf automake"
-subpackages="$pkgname-bash-completion"
-source="https://github.com/tpm2-software/tpm2-tools/releases/download/$pkgver/tpm2-tools-$pkgver.tar.gz
- dont-generate-manpages-without-pandoc.patch
- char16_t.patch
+makedepends="
+ curl-dev
+ openssl-dev>3
+ tpm2-tss-dev
+ util-linux-dev
"
+subpackages="$pkgname-doc $pkgname-bash-completion"
+source="https://github.com/tpm2-software/tpm2-tools/releases/download/$pkgver/tpm2-tools-$pkgver.tar.gz"
options="!check"
-prepare() {
- default_prepare
-
- autoreconf -fi
-}
-
build() {
./configure \
--build=$CBUILD \
@@ -35,7 +31,5 @@ package() {
}
sha512sums="
-9fb5dc298717a8a57c89d286e3590370a096c81b14d2d8d4eb5fca140d66148a8e24727ee04fb02057bbfcc3ede50e93ba0ef22396888c9df48bf6f42a5d6e6b tpm2-tools-5.2.tar.gz
-2e0862c3c5d07cd40f655fa762a881a243fcf63c966f9867032057f7d7373fea94785929d8ef8bba8961bafa7d4549ebb3b90a09b15d6cfd8d3f08acfd488364 dont-generate-manpages-without-pandoc.patch
-a88ad5447a0f7b6f2e591a90376a699b5ea4f1b16b66a86ec7c5f196b239b7be73f6090e4181d36c9d7c12487532e86b7265c7c3f534fb1a57c55d3fb2fec12a char16_t.patch
+14216f29ed3ecca5fbe356ed3744c8b6b25a62ff11b2aed596d11101328c8bfd29a02f6ca5a218f9a4477a5e9648c50f0ae96e71de0b4ff5ea1f98ebeeb73cd7 tpm2-tools-5.6.tar.gz
"
diff --git a/testing/tpm2-tools/char16_t.patch b/testing/tpm2-tools/char16_t.patch
deleted file mode 100644
index 0173547a4ac..00000000000
--- a/testing/tpm2-tools/char16_t.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/lib/tpm2_eventlog_yaml.c b/lib/tpm2_eventlog_yaml.c
-index 6e6923e5..9b048db1 100644
---- a/lib/tpm2_eventlog_yaml.c
-+++ b/lib/tpm2_eventlog_yaml.c
-@@ -475,7 +475,7 @@ static bool yaml_uefi_var(UEFI_VARIABLE_DATA *data, size_t size, UINT32 type,
- tpm2_tool_output(" Description: \"");
- int i;
- for (i = 0; (wchar_t)loadopt->Description[i] != 0; i++) {
-- wchar_t c = (wchar_t)loadopt->Description[i];
-+ char16_t c = (char16_t)loadopt->Description[i];
- tpm2_tool_output("%lc", c);
- }
- tpm2_tool_output("\"\n");
diff --git a/testing/tpm2-tools/dont-generate-manpages-without-pandoc.patch b/testing/tpm2-tools/dont-generate-manpages-without-pandoc.patch
deleted file mode 100644
index a6830c3e51e..00000000000
--- a/testing/tpm2-tools/dont-generate-manpages-without-pandoc.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-Author: Rasmus Thomsen <oss@cogitri.dev>
-Reason: The logic in the configure.ac is wrong: Pandoc is a hard requirement
-for the man pages and $srcdir/man/man1 always exists, so we need to use
-AND here and not OR.
-Upstream: No
-diff --git a/configure.ac b/configure.ac
-index 7b5c219..4331fd4 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -30,7 +30,7 @@ AS_IF(
- AM_CONDITIONAL([HAVE_PANDOC],[test "x${PANDOC}" = "xyes"])
- AM_CONDITIONAL(
- [HAVE_MAN_PAGES],
-- [test -d "${srcdir}/man/man1" -o "x${PANDOC}" = "xyes"])
-+ [test -d "${srcdir}/man/man1" -a "x${PANDOC}" = "xyes"])
-
- AC_ARG_ENABLE([fapi],
- [AS_HELP_STRING([--disable-fapi], [disable FAPI tools (default: auto)])],,
diff --git a/testing/trafficserver9/10-fix-PATH_MAX-on-ppc64le.patch b/testing/trafficserver9/10-fix-PATH_MAX-on-ppc64le.patch
new file mode 100644
index 00000000000..0bc356a92fa
--- /dev/null
+++ b/testing/trafficserver9/10-fix-PATH_MAX-on-ppc64le.patch
@@ -0,0 +1,10 @@
+--- trafficserver-9.1.2.orig/src/tscore/ts_file.cc
++++ trafficserver-9.1.2/src/tscore/ts_file.cc
+@@ -22,6 +22,7 @@
+ #include <fcntl.h>
+ #include <sys/types.h>
+ #include <dirent.h>
++#include <limits.h>
+
+ namespace ts
+ {
diff --git a/testing/trafficserver9/20-adapt-trafficserver.patch b/testing/trafficserver9/20-adapt-trafficserver.patch
new file mode 100644
index 00000000000..baef863d9b6
--- /dev/null
+++ b/testing/trafficserver9/20-adapt-trafficserver.patch
@@ -0,0 +1,56 @@
+--- trafficserver-9.1.2.orig/rc/trafficserver.in
++++ trafficserver-9.1.2/rc/trafficserver.in
+@@ -62,6 +62,8 @@
+ DISTRIB_ID="debian" # also exists on Ubuntu
+ elif [ -e /etc/slackware-version ]; then
+ DISTRIB_ID="slackware"
++elif [ -e /etc/alpine-release ]; then
++ DISTRIB_ID="alpine"
+ elif [ "$UNAME_S" = "Darwin" ]; then
+ DISTRIB_ID="Darwin"
+ elif [ "$UNAME_S" = "FreeBSD" ]; then
+@@ -311,7 +313,7 @@
+ test "$?" -ne 0 -a "$?" -ne 1 && retval=1
+ test "x$VERBOSE" != "xno" && log_end_msg "$retval"
+ exit "$retval"
+- elif [ "$DISTRIB_ID" = "gentoo" ]; then
++ elif [ "$DISTRIB_ID" = "gentoo" -o "$DISTRIB_ID" = "alpine" ]; then
+ ebegin "Starting ${TS_PACKAGE_NAME}"
+ do_start
+ eend $?
+@@ -348,7 +350,7 @@
+ elif [ "$DISTRIB_ID" = "fedora" -o "$DISTRIB_ID" = "redhat" ]; then
+ action "Stopping ${TM_NAME}:" killproc -p $TM_PIDFILE -d 35 $TM_DAEMON
+ action "Stopping ${TS_NAME}:" killproc -p $TS_PIDFILE -d 35 $TS_DAEMON
+- elif [ "$DISTRIB_ID" = "gentoo" ]; then
++ elif [ "$DISTRIB_ID" = "gentoo" -o "$DISTRIB_ID" = "alpine" ]; then
+ ebegin "Stopping ${TS_PACKAGE_NAME}"
+ do_stop
+ eend $?
+@@ -396,7 +398,7 @@
+ exit "$retval"
+ elif [ "$DISTRIB_ID" = "fedora" -o "$DISTRIB_ID" = "redhat" ]; then
+ action "Reloading ${NAME}:" $TL_BINARY config reload
+- elif [ "$DISTRIB_ID" = "gentoo" ]; then
++ elif [ "$DISTRIB_ID" = "gentoo" -o "$DISTRIB_ID" = "alpine" ]; then
+ ebegin "Reloading ${NAME}"
+ $TL_BINARY config reload
+ eend $?
+@@ -460,7 +462,7 @@
+ status=$?
+ [ $status -eq 0 ] || /bin/echo -n "not "
+ echo "running."
+- elif [ "$DISTRIB_ID" = "FreeBSD" -o "$DISTRIB_ID" = "gentoo" -o "$DISTRIB_ID" = "nixos" ]; then
++ elif [ "$DISTRIB_ID" = "FreeBSD" -o "$DISTRIB_ID" = "gentoo" -o "$DISTRIB_ID" = "nixos" -o "$DISTRIB_ID" = "alpine" ]; then
+ if pgrep $TM_NAME > /dev/null ; then
+ echo "$TM_NAME running as pid `cat $TM_PIDFILE`" ; else
+ echo "$TM_NAME not running"
+@@ -492,7 +494,7 @@
+ echo "Usage: $SCRIPTNAME {start|stop|status|restart}" >&2
+ elif [ "$DISTRIB_ID" = "fedora" -o "$DISTRIB_ID" = "redhat" ]; then
+ echo "Usage: $0 {start|stop|status|restart|condrestart}"
+- elif [ "$DISTRIB_ID" = "gentoo" ]; then
++ elif [ "$DISTRIB_ID" = "gentoo" -o "$DISTRIB_ID" = "alpine" ]; then
+ echo "Usage: $0 {start|stop|reload|restart|status}"
+ elif [ "$DISTRIB_ID" = "suse" ]; then
+ echo "Usage: $0 {start|stop|restart|status}"
diff --git a/testing/trafficserver9/30-fix-perl-installation.patch b/testing/trafficserver9/30-fix-perl-installation.patch
new file mode 100644
index 00000000000..7afdfeee1c3
--- /dev/null
+++ b/testing/trafficserver9/30-fix-perl-installation.patch
@@ -0,0 +1,11 @@
+--- trafficserver-9.1.2.orig/lib/perl/Makefile.in
++++ trafficserver-9.1.2/lib/perl/Makefile.in
+@@ -696,7 +696,7 @@
+ # copy them to the build directory if we are building out of tree.
+ Makefile-pl: Makefile.PL $(top_builddir)/config.status
+ test -f "$(top_builddir)/$(subdir)/Makefile.PL" || cp -rf "$(srcdir)/." "$(top_builddir)/$(subdir)/"
+- $(PERL) Makefile.PL INSTALLDIRS=$(INSTALLDIRS) INSTALL_BASE=$(prefix) PREFIX=
++ $(PERL) Makefile.PL INSTALLDIRS=$(INSTALLDIRS) INSTALL_BASE= PREFIX=$(prefix)
+
+ clean-local:
+ -rm -f Makefile-pl
diff --git a/testing/trafficserver9/40-alpine-dir-layout.patch b/testing/trafficserver9/40-alpine-dir-layout.patch
new file mode 100644
index 00000000000..77e1c01640b
--- /dev/null
+++ b/testing/trafficserver9/40-alpine-dir-layout.patch
@@ -0,0 +1,28 @@
+diff -Nurp trafficserver-9.1.2.orig/config.layout trafficserver-9.1.2/config.layout
+--- trafficserver-9.1.2.orig/config.layout 2021-11-08 22:01:21.000000000 +0300
++++ trafficserver-9.1.2/config.layout 2022-06-12 01:45:35.469908177 +0300
+@@ -277,3 +277,24 @@
+ logdir: /var/log+
+ cachedir: /var/lib+
+ </Layout>
++
++# Alpine Linux path layout.
++<Layout Alpine>
++ prefix: /usr/
++ exec_prefix: ${prefix}
++ bindir: ${exec_prefix}/bin
++ sbindir: ${exec_prefix}/sbin
++ libdir: ${exec_prefix}/lib
++ libexecdir: ${exec_prefix}/libexec+
++ infodir: ${prefix}/share/info
++ mandir: ${prefix}/share/man
++ sysconfdir: /etc+
++ datadir: ${prefix}/share+
++ docdir: ${prefix}/share/doc+
++ installbuilddir: ${datadir}/build
++ includedir: ${prefix}/include
++ localstatedir: /var/lib
++ runtimedir: ${localstatedir}+
++ logdir: /var/log+
++ cachedir: /var/cache+
++</Layout>
diff --git a/testing/trafficserver9/APKBUILD b/testing/trafficserver9/APKBUILD
new file mode 100644
index 00000000000..43c6f7b1fa9
--- /dev/null
+++ b/testing/trafficserver9/APKBUILD
@@ -0,0 +1,286 @@
+# Contributor: Peter Shkenev <santurysim@gmail.com>
+# Maintainer: Peter Shkenev <santurysim@gmail.com>
+pkgname=trafficserver9
+_pkgreal=trafficserver
+pkgver=9.2.4
+pkgrel=0
+provides="trafficserver=$pkgver-r$pkgrel"
+pkgdesc="Fast, scalable and extensible HTTP/1.1 and HTTP/2 compliant caching proxy server"
+url="https://trafficserver.apache.org/"
+# other platforms are unsupported
+# ppc64le: luajit
+arch="x86_64 aarch64"
+license="Apache-2.0"
+makedepends="
+ curl-dev
+ flex
+ hwloc-dev
+ libcap-dev
+ libtool
+ libunwind-dev
+ luajit-dev
+ ncurses-dev
+ openssl-dev>3
+ pcre-dev
+ perl
+ zlib-dev
+ "
+options="!check" # test suite fails, reported to upstream
+subpackages="
+ $pkgname-doc
+ $pkgname-dev
+ perl-$pkgname:perl_ts:noarch
+ $pkgname-openrc
+ $pkgname-utils
+ $pkgname-plugin-base:plugin_base
+ $pkgname-plugin-authproxy:plugin_authproxy
+ $pkgname-plugin-backgroundfetch:plugin_backgroundfetch
+ $pkgname-plugin-s3auth:plugin_s3auth
+ $pkgname-plugin-cachekey:plugin_cachekey
+ $pkgname-plugin-cachepromote:plugin_cachepromote
+ $pkgname-plugin-cacherangerequests:plugin_cacherangerequests
+ $pkgname-plugin-combohandler:plugin_combohandler
+ $pkgname-plugin-confremap:plugin_confremap
+ $pkgname-plugin-esi:plugin_esi
+ $pkgname-plugin-escalate:plugin_escalate
+ $pkgname-plugin-generator:plugin_generator
+ $pkgname-plugin-compress:plugin_compress
+ $pkgname-plugin-headerrewrite:plugin_headerrewrite
+ $pkgname-plugin-healthchecks:plugin_healthchecks
+ $pkgname-plugin-lua:plugin_lua
+ $pkgname-plugin-regexremap:plugin_regexremap
+ $pkgname-plugin-regexrevalidate:plugin_regexrevalidate
+ $pkgname-plugin-statsoverhttp:plugin_statsoverhttp
+ $pkgname-plugin-tcpinfo:plugin_tcpinfo
+ $pkgname-plugin-xdebug:plugin_xdebug
+ $pkgname-plugin-certifier:plugin_certifier
+ $pkgname-plugin-multiplexer:plugin_multiplexer
+ $pkgname-plugin-prefetch:plugin_prefetch
+ $pkgname-plugin-remappurge:plugin_remappurge
+ "
+source="
+ https://dlcdn.apache.org/trafficserver/trafficserver-$pkgver.tar.bz2
+ 10-fix-PATH_MAX-on-ppc64le.patch
+ 20-adapt-trafficserver.patch
+ 30-fix-perl-installation.patch
+ 40-alpine-dir-layout.patch
+ no-execinfo.patch
+ fix-pthread.patch
+ trafficserver.initd
+ "
+install="$pkgname.pre-install $pkgname.post-install"
+builddir="$srcdir/$_pkgreal-$pkgver"
+pkgusers="trafficserver"
+pkggroups="trafficserver"
+
+# secfixes:
+# 9.2.4-r0:
+# - CVE-2024-31309
+# 9.2.3-r0:
+# - CVE-2023-39456
+# - CVE-2023-41752
+# - CVE-2023-44487
+
+build() {
+ # Layout contains all dir variables
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --enable-layout=Alpine \
+ --with-user=trafficserver \
+ --with-group=trafficserver
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+ find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
+ install -Dm755 "$srcdir"/trafficserver.initd "$pkgdir"/etc/init.d/trafficserver
+}
+
+perl_ts() {
+ pkgdesc="Perl modules for managing Apache Traffic Server"
+ depends="perl $depends"
+ amove usr/lib/perl5
+ amove usr/share/perl5
+}
+
+plugin_base() {
+ pkgdesc="Apache Traffic Server plugin core libraries"
+ amove usr/lib/plugin*
+ amove usr/libexec/trafficserver/libloader.so
+ amove usr/libexec/trafficserver/server_push_preload.so
+}
+
+plugin_authproxy() {
+ pkgdesc="Apache Traffic Server AuthProxy plugin"
+ depends="$pkgname-plugin-base $depends"
+ amove usr/libexec/trafficserver/authproxy.so
+}
+
+plugin_backgroundfetch() {
+ pkgdesc="Apache Traffic Server Background Fetch plugin"
+ depends="$pkgname-plugin-base $depends"
+ amove usr/libexec/trafficserver/background_fetch.so
+}
+
+plugin_s3auth() {
+ pkgdesc="Apache Traffic Server AWS S3 Authentication plugin"
+ depends="$pkgname-plugin-base $depends"
+ amove usr/libexec/trafficserver/s3_auth.so
+}
+
+plugin_cachekey() {
+ pkgdesc="Apache Traffic Server Cache Key and Parent Selection URL Manipulation plugin"
+ depends="$pkgname-plugin-base $depends"
+ amove usr/libexec/trafficserver/cachekey.so
+}
+
+plugin_cachepromote() {
+ pkgdesc="Apache Traffic Server Cache Promotion Policies plugin"
+ depends="$pkgname-plugin-base $depends"
+ amove usr/libexec/trafficserver/cache_promote.so
+}
+
+plugin_cacherangerequests() {
+ pkgdesc="Apache Traffic Server Cache Range Requests plugin"
+ depends="$pkgname-plugin-base $depends"
+ amove usr/libexec/trafficserver/cache_range_requests.so
+}
+
+plugin_combohandler() {
+ pkgdesc="Apache Traffic Server Combo Handler plugin"
+ depends="$pkgname-plugin-base $depends"
+ amove usr/libexec/trafficserver/combo_handler.so
+}
+
+plugin_confremap() {
+ pkgdesc="Apache Traffic Server Configuration Remap plugin"
+ depends="$pkgname-plugin-base $depends"
+ amove usr/libexec/trafficserver/conf_remap.so
+}
+
+plugin_esi() {
+ pkgdesc="Apache Traffic Server ESI plugin"
+ depends="$pkgname-plugin-base $depends"
+ amove usr/libexec/trafficserver/esi.so
+}
+
+plugin_escalate() {
+ pkgdesc="Apache Traffic Server Escalate plugin"
+ depends="$pkgname-plugin-base $depends"
+ amove usr/libexec/trafficserver/escalate.so
+}
+
+plugin_generator() {
+ pkgdesc="Apache Traffic Server Generator plugin"
+ depends="$pkgname-plugin-base $depends"
+ amove usr/libexec/trafficserver/generator.so
+}
+
+plugin_compress() {
+ pkgdesc="Apache Traffic Server Compress plugin"
+ depends="$pkgname-plugin-base $depends"
+ amove usr/libexec/trafficserver/compress.so
+}
+
+plugin_headerrewrite() {
+ pkgdesc="Apache Traffic Server Header Rewrite plugin"
+ depends="$pkgname-plugin-base $depends"
+ amove usr/libexec/trafficserver/header_rewrite.so
+}
+
+plugin_healthchecks() {
+ pkgdesc="Apache Traffic Server Health Checks plugin"
+ depends="$pkgname-plugin-base $depends"
+ amove usr/libexec/trafficserver/healthchecks.so
+}
+
+plugin_lua() {
+ pkgdesc="Apache Traffic Server Lua plugin"
+ depends="$pkgname-plugin-base luajit $depends"
+ amove usr/libexec/trafficserver/tslua.so
+}
+
+plugin_regexremap() {
+ pkgdesc="Apache Traffic Server Regex Remap plugin"
+ depends="$pkgname-plugin-base $depends"
+ amove usr/libexec/trafficserver/regex_remap.so
+}
+
+plugin_regexrevalidate() {
+ pkgdesc="Apache Traffic Server Regex Revalidate plugin"
+ depends="$pkgname-plugin-base $depends"
+ amove usr/libexec/trafficserver/regex_revalidate.so
+}
+
+plugin_statsoverhttp() {
+ pkgdesc="Apache Traffic Server Stats over HTTP plugin"
+ depends="$pkgname-plugin-base $depends"
+ amove usr/libexec/trafficserver/stats_over_http.so
+}
+
+plugin_tcpinfo() {
+ pkgdesc="Apache Traffic Server TPCinfo plugin"
+ depends="$pkgname-plugin-base $depends"
+ amove usr/libexec/trafficserver/tcpinfo.so
+}
+
+plugin_xdebug() {
+ pkgdesc="Apache Traffic Server XDebug plugin"
+ depends="$pkgname-plugin-base $depends"
+ amove usr/libexec/trafficserver/xdebug.so
+}
+
+plugin_certifier() {
+ pkgdesc="Apache Traffic Server Certifier plugin"
+ depends="$pkgname-plugin-base $depends"
+ amove usr/libexec/trafficserver/certifier.so
+}
+
+plugin_multiplexer() {
+ pkgdesc="Apache Traffic Server Multiplexer plugin"
+ depends="$pkgname-plugin-base $depends"
+ amove usr/libexec/trafficserver/multiplexer.so
+}
+
+plugin_prefetch() {
+ pkgdesc="Apache Traffic Server Prefetch plugin"
+ depends="$pkgname-plugin-base $depends"
+ amove usr/libexec/trafficserver/prefetch.so
+}
+
+plugin_remappurge() {
+ pkgdesc="Apache Traffic Server Remap Purge plugin"
+ depends="$pkgname-plugin-base $depends"
+ amove usr/libexec/trafficserver/remap_purge.so
+}
+
+utils() {
+ pkgdesc="Apache Traffic Server auxiliary utils"
+ depends="curl $depends"
+ amove usr/bin/traffic_cache_tool
+ amove usr/bin/traffic_crashlog
+ amove usr/bin/traffic_layout
+ amove usr/bin/traffic_logcat
+ amove usr/bin/traffic_logstats
+ amove usr/bin/traffic_top
+ amove usr/bin/traffic_via
+ amove usr/bin/tspush
+ amove usr/bin/tsxs
+}
+
+sha512sums="
+8f75a1997466ddfaa2fad7ba7ea20dd46c6442eae4d75cf26670feb4ed0dc16b71e14ebd4ecf907abefed9e8d37ce7d7735de578659183c63c42d09adc744888 trafficserver-9.2.4.tar.bz2
+fbbe4fd4024b4656a3d4f67bdace7ae3a65892d40a92c67245e277520dfd53d5e9eb7934b2d213dfecc4de6895c63ec67cef0edee7b43ba28319cfaa3c75ddf3 10-fix-PATH_MAX-on-ppc64le.patch
+fe9b8344979fc5da885203146f4052016401354aa5310c30edc0e89f714e47492b1ec900e5f8ca02bd1910f0d4b4f4512536d9e7db9cf87f127e7259aba315dd 20-adapt-trafficserver.patch
+47d7d83be1e7798bb905c217efab9480aa6e6218eb09317c20c457f454895016a6104818d86223a051c8adc40f42c7436aa607f73e505c939bd2d5dd8e5efa45 30-fix-perl-installation.patch
+791b5ea9620574b172587fb2fcde97da53ca4c4a64110f1e1e13b9e475ffa255753fd98933a2f0f1ef44a2bf7810f6828445147fc6dcc8a41869b62271a728ad 40-alpine-dir-layout.patch
+53a834590ae5e4487229895f60fd1e34858418419655e37c03f8c4a1075905b40449dde817f10b39173ac27391ec9a6e75839bb5a4d8f631d8fb9d479d0a8d15 no-execinfo.patch
+b675d57791d427a75dce63b35574bbf49192451cf022c5332c042d0e578c0d89ceff4c4c79ac71e323710c935c2735ceb0e0ebcd12709c5e67be44dce0c9d7fb fix-pthread.patch
+a4d2e91d92579ba8b0c5361b0f4fd490d7a90e8a170552428f4781432eca89503a87a2c6f571a342eb77db5a43baa03d779a1fbe37ce1f4bba24fe89d5c97e7d trafficserver.initd
+"
diff --git a/testing/trafficserver9/fix-pthread.patch b/testing/trafficserver9/fix-pthread.patch
new file mode 100644
index 00000000000..48774639d3a
--- /dev/null
+++ b/testing/trafficserver9/fix-pthread.patch
@@ -0,0 +1,22 @@
+--- a/include/tscore/ink_rwlock.h
++++ b/include/tscore/ink_rwlock.h
+@@ -40,7 +40,7 @@
+ // Instead of calling ink_rwlock_init(), an ink_rwlock instance can be initialized with one of thsee values.
+ //
+ ink_rwlock const INK_RWLOCK_INIT = PTHREAD_RWLOCK_INITIALIZER;
+-#if defined(linux)
++#if defined(linux) && defined(__GLIBC__)
+ ink_rwlock const INK_RWLOCK_INIT_NO_WRITER_STARVATION = PTHREAD_RWLOCK_WRITER_NONRECURSIVE_INITIALIZER_NP;
+ #else
+ // Testing indicates that for MacOS/Darwin and FreeBSD, pthread rwlocks always prevent writer starvation.
+--- a/include/tscpp/util/TsSharedMutex.h
++++ b/include/tscpp/util/TsSharedMutex.h
+@@ -207,7 +207,7 @@
+ }
+ }
+
+-#if defined(linux)
++#if defined(linux) && defined(__GLIBC__)
+ // Use the initializer that prevents writer starvation.
+ //
+ pthread_rwlock_t _lock = PTHREAD_RWLOCK_WRITER_NONRECURSIVE_INITIALIZER_NP;
diff --git a/testing/trafficserver9/no-execinfo.patch b/testing/trafficserver9/no-execinfo.patch
new file mode 100644
index 00000000000..4cf9fc78ca1
--- /dev/null
+++ b/testing/trafficserver9/no-execinfo.patch
@@ -0,0 +1,49 @@
+diff --git a/include/tscore/Allocator.h b/include/tscore/Allocator.h
+index fd5200b..8b5ba64 100644
+--- a/include/tscore/Allocator.h
++++ b/include/tscore/Allocator.h
+@@ -45,7 +45,6 @@
+ #include "tscore/ink_queue.h"
+ #include "tscore/ink_defs.h"
+ #include "tscore/ink_resource.h"
+-#include <execinfo.h>
+
+ #define RND16(_x) (((_x) + 15) & ~15)
+
+@@ -200,14 +199,9 @@ public:
+ C *
+ alloc()
+ {
+- void *callstack[3];
+- int frames = backtrace(callstack, 3);
+ C *ptr = ClassAllocator<C, Destruct_on_free>::alloc();
+
+ const void *symbol = nullptr;
+- if (frames == 3 && callstack[2] != nullptr) {
+- symbol = callstack[2];
+- }
+
+ tracker.increment(symbol, (int64_t)sizeof(C), this->fl->name);
+ ink_mutex_acquire(&trackerLock);
+diff --git a/src/tscore/ink_resource.cc b/src/tscore/ink_resource.cc
+index 14a1904..d8160d3 100644
+--- a/src/tscore/ink_resource.cc
++++ b/src/tscore/ink_resource.cc
+@@ -24,7 +24,6 @@
+ #include "tscore/ink_assert.h"
+ #include "tscore/ink_atomic.h"
+ #include "tscore/ink_resource.h"
+-#include <execinfo.h>
+
+ int res_track_memory = 0; // Disabled by default
+ uint64_t ssl_memory_allocated = 0;
+--- a/iocore/eventsystem/P_UnixEThread.h
++++ b/iocore/eventsystem/P_UnixEThread.h
+@@ -32,7 +32,6 @@
+
+ #include "I_EThread.h"
+ #include "I_EventProcessor.h"
+-#include <execinfo.h>
+
+ const ink_hrtime DELAY_FOR_RETRY = HRTIME_MSECONDS(10);
+
diff --git a/testing/trafficserver9/trafficserver.initd b/testing/trafficserver9/trafficserver.initd
new file mode 100644
index 00000000000..13a9209593e
--- /dev/null
+++ b/testing/trafficserver9/trafficserver.initd
@@ -0,0 +1,43 @@
+#!/sbin/openrc-run
+
+name="Apache Traffic Server"
+command="/usr/bin/traffic_manager"
+command_background="yes"
+
+pidfile="/run/traffic_manager.pid"
+ts_pidfile=/var/lib/trafficserver/server.lock
+tm_pidfile=/var/lib/trafficserver/manager.lock
+
+tm_name="/usr/bin/traffic_manager"
+ts_name="/usr/bin/traffic_server"
+
+extra_started_commands="reload"
+
+depend() {
+ need net
+ after firewall
+}
+
+stop() {
+ ebegin "Stopping Apache Traffic Server manager"
+ start-stop-daemon --stop --quiet --retry=QUIT/30/KILL/5 --pidfile "$pidfile" --name "$tm_name"
+ eend $?
+
+ ebegin "Stopping remaining Apache Traffic Server manager instances"
+ start-stop-daemon --stop --quiet --retry=0/30/KILL/5 --exec "$ts_name"
+ eend $?
+
+ # Stop traffic_server instance
+ ebegin "Stopping remaining Apache Traffic Server instances"
+ start-stop-daemon --stop --quiet --retry=QUIT/30/KILL/5 --pidfile "$ts_pidfile" --name "$ts_name"
+ eend $?
+
+ # Clean up pidfiles
+ rm -f "$ts_pidfile" "$tm_pidfile"
+}
+
+reload() {
+ ebegin "Reloading Apache Traffic Server configuration"
+ traffic_ctl config reload
+ eend $?
+}
diff --git a/testing/trafficserver9/trafficserver9.post-install b/testing/trafficserver9/trafficserver9.post-install
new file mode 100644
index 00000000000..ad53532e11d
--- /dev/null
+++ b/testing/trafficserver9/trafficserver9.post-install
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+echo "Using rc-service trafficserver <cmd> is recommended over trafficserver <cmd>."
diff --git a/testing/trafficserver9/trafficserver9.pre-install b/testing/trafficserver9/trafficserver9.pre-install
new file mode 100644
index 00000000000..c8ceb213ade
--- /dev/null
+++ b/testing/trafficserver9/trafficserver9.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S trafficserver 2>/dev/null
+adduser -S -D -H -s /sbin/nologin -G trafficserver -g "Apache Traffic Server" trafficserver 2>/dev/null
+
+exit 0
diff --git a/testing/transmission-remote-gtk/APKBUILD b/testing/transmission-remote-gtk/APKBUILD
index 06a5cba5c63..ae6e34b77e5 100644
--- a/testing/transmission-remote-gtk/APKBUILD
+++ b/testing/transmission-remote-gtk/APKBUILD
@@ -1,7 +1,6 @@
-# Maintainer: Stacy Harper <contact@stacyharper.net>
-# Contributor: Stacy Harper <contact@stacyharper.net>
+# Maintainer: Willow Barraco <contact@willowbarraco.fr>
pkgname=transmission-remote-gtk
-pkgver=1.4.2
+pkgver=1.6.0
pkgrel=0
pkgdesc="GTK client for remote management of the Transmission BitTorrent client"
url="https://github.com/transmission-remote-gtk/transmission-remote-gtk"
@@ -9,30 +8,29 @@ arch="all"
license="GPL-2.0-or-later"
makedepends="
appstream-glib-dev
- curl-dev
geoip-dev
gtk+3.0-dev
json-glib-dev
- libmrss-dev
- libnotify-dev
- libproxy-dev
+ libayatana-appindicator-dev
+ libsoup3-dev
+ meson
+ perl
"
options="!check" # no tests
-source="https://github.com/transmission-remote-gtk/transmission-remote-gtk/releases/download/$pkgver/transmission-remote-gtk-$pkgver.tar.gz"
+source="https://github.com/transmission-remote-gtk/transmission-remote-gtk/releases/download/$pkgver/transmission-remote-gtk-$pkgver.tar.xz"
subpackages="$pkgname-doc $pkgname-lang"
build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- make
+ abuild-meson \
+ -Db_lto=true \
+ . output
+ meson compile -C output
}
package() {
- make install DESTDIR="$pkgdir" PREFIX="/usr"
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
}
sha512sums="
-221da4bdbbd73b392b295e21bb7a30ae7d6d038b8b8bfd4a710e1eb3830cd60f116b817cd1d393945a4de582cfd5a37c0ee2d05d74d8ed60def87f1c895d3da7 transmission-remote-gtk-1.4.2.tar.gz
+351079d91cc5b33c7955103cbc28d1010bf3d18668689ff5b690ff2214d9e44cdd9f841ebe207260d31c332650d6ae05a0d9ceb7696861c8be5beeae4d0a08d5 transmission-remote-gtk-1.6.0.tar.xz
"
diff --git a/testing/tre/APKBUILD b/testing/tre/APKBUILD
index 48a9903f720..3cbd8ae68b1 100644
--- a/testing/tre/APKBUILD
+++ b/testing/tre/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Al-Hassan Abdel-Raouf <alhassanaraouf@disroot.org>
pkgname=tre
pkgver=0.8.0
-pkgrel=0
+pkgrel=2
pkgdesc="POSIX compliant regexp matching library"
options="!check" # No testsuite
url="https://laurikari.net/tre"
diff --git a/testing/tree-sitter-c-sharp/APKBUILD b/testing/tree-sitter-c-sharp/APKBUILD
new file mode 100644
index 00000000000..0ad08acd4be
--- /dev/null
+++ b/testing/tree-sitter-c-sharp/APKBUILD
@@ -0,0 +1,25 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=tree-sitter-c-sharp
+pkgver=0.20.0
+pkgrel=1
+pkgdesc="C# Grammar for tree-sitter"
+url="https://github.com/tree-sitter/tree-sitter-c-sharp"
+arch="all"
+license="MIT"
+makedepends="tree-sitter-dev"
+install_if="tree-sitter-grammars"
+source="$pkgname-$pkgver.tar.gz::https://github.com/tree-sitter/tree-sitter-c-sharp/archive/refs/tags/v$pkgver.tar.gz"
+options="!check" # no tests for shared lib
+
+build() {
+ abuild-tree-sitter build
+}
+
+package() {
+ DESTDIR="$pkgdir" abuild-tree-sitter install
+}
+
+sha512sums="
+31530ff57d02b84c8e7e7183abb927c40839500afc225cfdbe685495962c3f129ea459efaf73abbb76951bfc14b890cbdfa9a847b3ae92c8db495d173d0e0e08 tree-sitter-c-sharp-0.20.0.tar.gz
+"
diff --git a/testing/tree-sitter-caddy/APKBUILD b/testing/tree-sitter-caddy/APKBUILD
new file mode 100644
index 00000000000..b2f71c21885
--- /dev/null
+++ b/testing/tree-sitter-caddy/APKBUILD
@@ -0,0 +1,34 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=tree-sitter-caddy
+pkgver=0_git20230322
+_gitrev=65b60437983933d00809c8927e7d8a29ca26dfa3
+pkgrel=0
+pkgdesc="Caddyfile grammar for tree-sitter"
+url="https://github.com/Samonitari/tree-sitter-caddy"
+arch="all"
+license="MIT"
+makedepends="tree-sitter-dev"
+checkdepends="tree-sitter-cli"
+install_if="tree-sitter-grammars"
+subpackages="$pkgname-doc"
+source="$pkgname-$_gitrev.tar.gz::https://github.com/Samonitari/tree-sitter-caddy/archive/$_gitrev.tar.gz"
+builddir="$srcdir/$pkgname-$_gitrev"
+
+build() {
+ abuild-tree-sitter build
+}
+
+check() {
+ tree-sitter test
+}
+
+package() {
+ DESTDIR="$pkgdir" abuild-tree-sitter install
+
+ install -Dm 644 LICENSE "$pkgdir"/usr/share/licenses/"$pkgname"/LICENSE
+}
+
+sha512sums="
+6bda2b1b7a7c4c4387021d26580eb99a91bc7756b737c7f7205428ea178744c4efafc38be3c8ad41065816113d127a2307c42bdaa05d9543d0b33fb8851865ee tree-sitter-caddy-65b60437983933d00809c8927e7d8a29ca26dfa3.tar.gz
+"
diff --git a/testing/tree-sitter-clojure/APKBUILD b/testing/tree-sitter-clojure/APKBUILD
new file mode 100644
index 00000000000..b18ebc53102
--- /dev/null
+++ b/testing/tree-sitter-clojure/APKBUILD
@@ -0,0 +1,29 @@
+# Contributor: Alex McGrath <amk@amk.ie>
+# Maintainer: Alex McGrath <amk@amk.ie>
+pkgname=tree-sitter-clojure
+pkgver=0.0.12
+pkgrel=0
+pkgdesc="Clojure for tree-sitter"
+url="https://github.com/sogaiu/tree-sitter-clojure"
+arch="all"
+license="CC0-1.0"
+makedepends="tree-sitter-dev"
+checkdepends="tree-sitter-cli"
+install_if="tree-sitter-grammars"
+source="https://github.com/sogaiu/tree-sitter-clojure/archive/v$pkgver/tree-sitter-clojure-v$pkgver.tar.gz"
+
+build() {
+ abuild-tree-sitter build
+}
+
+check() {
+ tree-sitter test
+}
+
+package() {
+ DESTDIR="$pkgdir" abuild-tree-sitter install
+}
+
+sha512sums="
+1946c657b04307e686bee251ebeab5a74b11acf758eac0cd5e60269c0e1a9dad645966f38251e3c92b546ff25b13f2f1543d69662bb90bc991a12d1ed6dc6bb2 tree-sitter-clojure-v0.0.12.tar.gz
+"
diff --git a/testing/tree-sitter-cmake/APKBUILD b/testing/tree-sitter-cmake/APKBUILD
deleted file mode 100644
index cd223c5f1b8..00000000000
--- a/testing/tree-sitter-cmake/APKBUILD
+++ /dev/null
@@ -1,27 +0,0 @@
-# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
-pkgname=tree-sitter-cmake
-pkgver=0_git20220126
-_gitrev=5020572408a386d5d2dfac3516584f5edda7a49b
-pkgrel=1
-pkgdesc="CMake grammar for tree-sitter"
-url="https://github.com/uyha/tree-sitter-cmake"
-arch="all"
-license="MIT"
-makedepends="tree-sitter-dev"
-install_if="tree-sitter-grammars"
-source="https://github.com/uyha/tree-sitter-cmake/archive/$_gitrev/tree-sitter-cmake-$_gitrev.tar.gz"
-builddir="$srcdir/$pkgname-$_gitrev"
-options="!check" # no tests for shared lib
-
-build() {
- abuild-tree-sitter build
-}
-
-package() {
- DESTDIR="$pkgdir" abuild-tree-sitter install
-}
-
-sha512sums="
-23ce7b172b8144c3ce267a08ceb16c2a841abec1be80e07bff6b58cbef914fab6743b6dc0b5c27cb95fb9b12f7a4a44d8e924aef9d1b3b1835f7eafb7ed52847 tree-sitter-cmake-5020572408a386d5d2dfac3516584f5edda7a49b.tar.gz
-"
diff --git a/testing/tree-sitter-dart/APKBUILD b/testing/tree-sitter-dart/APKBUILD
new file mode 100644
index 00000000000..f02d47db84e
--- /dev/null
+++ b/testing/tree-sitter-dart/APKBUILD
@@ -0,0 +1,27 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=tree-sitter-dart
+pkgver=0_git20230123
+_gitrev=23e3921190eb9746cec64167f6110c987c7f95c6
+pkgrel=1
+pkgdesc="A tree-sitter grammar written for the dart programming language"
+url="https://github.com/ast-grep/tree-sitter-dart"
+arch="all"
+license="MIT"
+makedepends="tree-sitter-dev"
+install_if="tree-sitter-grammars"
+source="$pkgname-$_gitrev.tar.gz::https://github.com/ast-grep/tree-sitter-dart/archive/$_gitrev.tar.gz"
+builddir="$srcdir/$pkgname-$_gitrev"
+options="!check" # no tests for shared lib
+
+build() {
+ abuild-tree-sitter build
+}
+
+package() {
+ DESTDIR="$pkgdir" abuild-tree-sitter install
+}
+
+sha512sums="
+bbbffe14d62791534f2f99af5874b49244e26bd6b66fc2c7bd48b64d170845baaf72e32d8e6018b6a631cd98dec9563d31f50c67c8f3c50aeb0eaa30b522df3d tree-sitter-dart-23e3921190eb9746cec64167f6110c987c7f95c6.tar.gz
+"
diff --git a/testing/tree-sitter-elixir/APKBUILD b/testing/tree-sitter-elixir/APKBUILD
index ee74d7c4f25..3e2c757160b 100644
--- a/testing/tree-sitter-elixir/APKBUILD
+++ b/testing/tree-sitter-elixir/APKBUILD
@@ -1,17 +1,15 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=tree-sitter-elixir
-pkgver=0_git20220110
-_gitrev=de20391afe5cb03ef1e8a8e43167e7b58cc52869
-pkgrel=1
+pkgver=0.1.1
+pkgrel=0
pkgdesc="Elixir grammar for tree-sitter"
url="https://github.com/elixir-lang/tree-sitter-elixir"
arch="all"
license="MIT"
makedepends="tree-sitter-dev"
install_if="tree-sitter-grammars"
-source="https://github.com/elixir-lang/tree-sitter-elixir/archive/$_gitrev/tree-sitter-elixir-$_gitrev.tar.gz"
-builddir="$srcdir/$pkgname-$_gitrev"
+source="https://github.com/elixir-lang/tree-sitter-elixir/archive/v$pkgver/tree-sitter-elixir-$pkgver.tar.gz"
options="!check" # no tests for shared lib
build() {
@@ -23,5 +21,5 @@ package() {
}
sha512sums="
-b12c9ec42d296e54d5be8f8d0ee36e126dc2e5305bda37c4f5d91dc42098fc72b94efbd048932b49bd09d6e77a5adfa9adac58de211755a2b8593f354f87896f tree-sitter-elixir-de20391afe5cb03ef1e8a8e43167e7b58cc52869.tar.gz
+d1ba3c9755004a281fa18785fe0d7d419f25fd50adcfb325724965dfcfb511043e3e385f79b71b7d0d35355767031575fad2c9f9eb3034cf93ff89eb61aa70c2 tree-sitter-elixir-0.1.1.tar.gz
"
diff --git a/testing/tree-sitter-git-commit/APKBUILD b/testing/tree-sitter-git-commit/APKBUILD
index 0a11f0b2a78..84c4255b3b5 100644
--- a/testing/tree-sitter-git-commit/APKBUILD
+++ b/testing/tree-sitter-git-commit/APKBUILD
@@ -3,7 +3,7 @@
pkgname=tree-sitter-git-commit
pkgver=0_git20211225
_gitrev=066e395e1107df17183cf3ae4230f1a1406cc972
-pkgrel=1
+pkgrel=2
pkgdesc="Tree-sitter grammar for git commit messages"
url="https://github.com/the-mikedavis/tree-sitter-git-commit"
arch="all"
diff --git a/testing/tree-sitter-git-diff/APKBUILD b/testing/tree-sitter-git-diff/APKBUILD
index 6a12260d932..6c5c662c2aa 100644
--- a/testing/tree-sitter-git-diff/APKBUILD
+++ b/testing/tree-sitter-git-diff/APKBUILD
@@ -1,17 +1,17 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=tree-sitter-git-diff
-pkgver=0_git20211225
-_gitrev=c12e6ecb54485f764250556ffd7ccb18f8e2942b
-pkgrel=1
+pkgver=0_git20230730
+_gitrev=c165725c28e69b36c5799ff0e458713a844f1aaf
+pkgrel=0
pkgdesc="Tree-sitter grammar for 'git diff' output"
-url="https://github.com/the-mikedavis/tree-sitter-git-diff"
+url="https://github.com/the-mikedavis/tree-sitter-diff"
arch="all"
license="MIT"
makedepends="tree-sitter-dev"
install_if="tree-sitter-grammars"
-source="https://github.com/the-mikedavis/tree-sitter-git-diff/archive/$_gitrev/tree-sitter-git-diff-$_gitrev.tar.gz"
-builddir="$srcdir/$pkgname-$_gitrev"
+source="https://github.com/the-mikedavis/tree-sitter-diff/archive/$_gitrev/tree-sitter-git-diff-$_gitrev.tar.gz"
+builddir="$srcdir/tree-sitter-diff-$_gitrev"
options="!check" # no tests for shared lib
build() {
@@ -23,5 +23,5 @@ package() {
}
sha512sums="
-95ccf5a0f84c9599dcbfa9a8f549b0efaf848362eea65f411739dc09c605556c2fee1e93a9547407f279339b13b1a1637b96f560658e1b22658c558351db5307 tree-sitter-git-diff-c12e6ecb54485f764250556ffd7ccb18f8e2942b.tar.gz
+d8cb76b412f7ebd781a74c0a7857c859d634d11d89b0ce4b94c6066f97c027ef45caa946e209442efe67e3b219629b267870ffd2b3a4dc83cd4e98e2aecd7500 tree-sitter-git-diff-c165725c28e69b36c5799ff0e458713a844f1aaf.tar.gz
"
diff --git a/testing/tree-sitter-git-rebase/APKBUILD b/testing/tree-sitter-git-rebase/APKBUILD
index 914274c9835..feb3014770e 100644
--- a/testing/tree-sitter-git-rebase/APKBUILD
+++ b/testing/tree-sitter-git-rebase/APKBUILD
@@ -3,7 +3,7 @@
pkgname=tree-sitter-git-rebase
pkgver=0_git20220110
_gitrev=cb290f68e3e67c835f4eb5ced08c37acc91c464f
-pkgrel=1
+pkgrel=2
pkgdesc="Tree-sitter grammar for git's interactive rebase file"
url="https://github.com/the-mikedavis/tree-sitter-git-rebase"
arch="all"
diff --git a/testing/tree-sitter-hare/APKBUILD b/testing/tree-sitter-hare/APKBUILD
new file mode 100644
index 00000000000..15616d8e460
--- /dev/null
+++ b/testing/tree-sitter-hare/APKBUILD
@@ -0,0 +1,28 @@
+# Maintainer: Pedro Lucas Porcellis <porcellis@eletrotupi.com>
+pkgname=tree-sitter-hare
+pkgver=0_git20230616
+_commit="7d9080c73eacb7b22900a71320058025615d57fa"
+pkgrel=1
+pkgdesc="Hare grammar for tree-sitter"
+url="https://git.sr.ht/~ghishadow/tree-sitter-hare"
+arch="all"
+license="GPL-3.0"
+makedepends="tree-sitter-dev"
+install_if="tree-sitter-grammars"
+source="
+ $pkgname-$_commit.tar.gz::https://git.sr.ht/~ghishadow/tree-sitter-hare/archive/$_commit.tar.gz
+ "
+options="!check" # no tests for shared lib
+builddir="$srcdir/$pkgname-$_commit"
+
+build() {
+ abuild-tree-sitter build
+}
+
+package() {
+ DESTDIR="$pkgdir" abuild-tree-sitter install
+}
+
+sha512sums="
+3e817ae02b39f67a32c2564db5961017736133a0afc747fe86c73c7910c881e57cc6ad3b9e473628e301759e60e20b45a8ad3df30147df93d094f49885befe5f tree-sitter-hare-7d9080c73eacb7b22900a71320058025615d57fa.tar.gz
+"
diff --git a/testing/tree-sitter-hcl/APKBUILD b/testing/tree-sitter-hcl/APKBUILD
new file mode 100644
index 00000000000..19465a2d2c9
--- /dev/null
+++ b/testing/tree-sitter-hcl/APKBUILD
@@ -0,0 +1,29 @@
+# Contributor: Galen Abell <galen@galenabell.com>
+# Maintainer: Galen Abell <galen@galenabell.com>
+pkgname=tree-sitter-hcl
+pkgver=1.1.0
+pkgrel=1
+pkgdesc="tree-sitter grammar for HCL"
+url="https://github.com/MichaHoffmann/tree-sitter-hcl"
+arch="all"
+license="Apache-2.0"
+makedepends="tree-sitter-dev"
+checkdepends="tree-sitter-cli"
+install_if="tree-sitter-grammars"
+source="$pkgname-$pkgver.tar.gz::https://github.com/MichaHoffmann/tree-sitter-hcl/archive/refs/tags/v$pkgver.tar.gz"
+
+build() {
+ abuild-tree-sitter build
+}
+
+check() {
+ tree-sitter test
+}
+
+package() {
+ DESTDIR="$pkgdir" abuild-tree-sitter install
+}
+
+sha512sums="
+d8bf5d558d9eb378c3dd8b740463b25062f5cf4f12756e32058824e28e3114e51bbedccd0de2981503ef873d227e56bb7a5069e362c5e77f0f9bc0e3f8bfacd5 tree-sitter-hcl-1.1.0.tar.gz
+"
diff --git a/testing/tree-sitter-just/APKBUILD b/testing/tree-sitter-just/APKBUILD
new file mode 100644
index 00000000000..08fd8f269ca
--- /dev/null
+++ b/testing/tree-sitter-just/APKBUILD
@@ -0,0 +1,37 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=tree-sitter-just
+pkgver=0_git20230318
+_gitrev=4e5f5f3ff37b12a1bbf664eb3966b3019e924594
+pkgrel=0
+pkgdesc="Treesitter grammar for Justfiles (casey/just)"
+url="https://github.com/IndianBoy42/tree-sitter-just"
+arch="all"
+license="Apache-2.0"
+makedepends="tree-sitter-dev"
+checkdepends="tree-sitter-cli"
+install_if="tree-sitter-grammars"
+source="$pkgname-$_gitrev.tar.gz::https://github.com/IndianBoy42/tree-sitter-just/archive/$_gitrev.tar.gz"
+builddir="$srcdir/$pkgname-$_gitrev"
+
+prepare() {
+ default_prepare
+
+ mv "$builddir"/queries/just/* -t "$builddir"/queries
+}
+
+build() {
+ abuild-tree-sitter build
+}
+
+check() {
+ tree-sitter test
+}
+
+package() {
+ DESTDIR="$pkgdir" abuild-tree-sitter install
+}
+
+sha512sums="
+ed40d42d6ca9d56d5ad6f55cd25534e482dae539a86f30149bb472d93b13ca9827f36bc6ab40d1e1f90a1e38f51ae3b354f547c11f17a9ddceb4d9391f233fb0 tree-sitter-just-4e5f5f3ff37b12a1bbf664eb3966b3019e924594.tar.gz
+"
diff --git a/testing/tree-sitter-kotlin/APKBUILD b/testing/tree-sitter-kotlin/APKBUILD
new file mode 100644
index 00000000000..910061e90d7
--- /dev/null
+++ b/testing/tree-sitter-kotlin/APKBUILD
@@ -0,0 +1,25 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=tree-sitter-kotlin
+pkgver=0.3.5
+pkgrel=0
+pkgdesc="Kotlin grammar for Tree-Sitter"
+url="https://github.com/fwcd/tree-sitter-kotlin"
+arch="all"
+license="MIT"
+makedepends="tree-sitter-dev"
+install_if="tree-sitter-grammars"
+source="$pkgname-$pkgver.tar.gz::https://github.com/fwcd/tree-sitter-kotlin/archive/refs/tags/$pkgver.tar.gz"
+options="!check" # no tests for shared lib
+
+build() {
+ abuild-tree-sitter build
+}
+
+package() {
+ DESTDIR="$pkgdir" abuild-tree-sitter install
+}
+
+sha512sums="
+b699463391cc811abb9368b59a789e8574e065573d93627e5a41590effe99f2318bda3bb1026e80435dc3cdd5998dc70955da15f57251394a0bbfcb5f60b8672 tree-sitter-kotlin-0.3.5.tar.gz
+"
diff --git a/testing/tree-sitter-make/APKBUILD b/testing/tree-sitter-make/APKBUILD
index c04522e7fc4..ce6c32359dc 100644
--- a/testing/tree-sitter-make/APKBUILD
+++ b/testing/tree-sitter-make/APKBUILD
@@ -3,7 +3,7 @@
pkgname=tree-sitter-make
pkgver=0_git20211216
_gitrev=a4b9187417d6be349ee5fd4b6e77b4172c6827dd
-pkgrel=1
+pkgrel=2
pkgdesc="Tree-sitter grammar for Make"
url="https://github.com/alemuller/tree-sitter-make"
arch="all"
diff --git a/testing/tree-sitter-markdown/APKBUILD b/testing/tree-sitter-markdown/APKBUILD
new file mode 100644
index 00000000000..a1990f3a5af
--- /dev/null
+++ b/testing/tree-sitter-markdown/APKBUILD
@@ -0,0 +1,34 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=tree-sitter-markdown
+pkgver=0.2.3
+pkgrel=0
+pkgdesc="A markdown grammar for tree-sitter"
+url="https://github.com/Mdeiml/tree-sitter-markdown"
+arch="all"
+license="MIT"
+makedepends="tree-sitter-dev"
+subpackages="$pkgname-doc"
+provides="tree-sitter-markdown-inline=$pkgver-r$pkgrel"
+install_if="tree-sitter-grammars"
+source="$pkgname-$pkgver.tar.gz::https://github.com/Mdeiml/tree-sitter-markdown/archive/refs/tags/v$pkgver.tar.gz"
+options="!check" # no tests for shared lib
+
+_langs='markdown markdown-inline'
+
+build() {
+ local lang; for lang in $_langs; do
+ abuild-tree-sitter build -s "tree-sitter-$lang/src"
+ done
+}
+
+package() {
+ local lang; for lang in $_langs; do
+ DESTDIR="$pkgdir" abuild-tree-sitter install -s "tree-sitter-$lang/src"
+ done
+ install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
+
+sha512sums="
+8b6849d6dc964c82e45c3d18599d9f3e0ee9656a5085a9ec47f72d0343969e379ce190628a04dae64cb4ecdca2497e6d33ca7175e1f73796742a3ee6ffea743f tree-sitter-markdown-0.2.3.tar.gz
+"
diff --git a/testing/tree-sitter-nix/APKBUILD b/testing/tree-sitter-nix/APKBUILD
new file mode 100644
index 00000000000..ce107b7f426
--- /dev/null
+++ b/testing/tree-sitter-nix/APKBUILD
@@ -0,0 +1,29 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=tree-sitter-nix
+pkgver=0_git20230713
+_gitrev=66e3e9ce9180ae08fc57372061006ef83f0abde7
+pkgrel=0
+pkgdesc="Nix grammar for tree-sitter"
+url="https://github.com/nix-community/tree-sitter-nix"
+arch="all"
+license="MIT"
+makedepends="tree-sitter-dev"
+subpackages="$pkgname-doc"
+install_if="tree-sitter-grammars"
+source="$pkgname-$_gitrev.tar.gz::https://github.com/nix-community/tree-sitter-nix/archive/$_gitrev.tar.gz"
+builddir="$srcdir/$pkgname-$_gitrev"
+options="!check" # no tests for shared lib
+
+build() {
+ abuild-tree-sitter build
+}
+
+package() {
+ DESTDIR="$pkgdir" abuild-tree-sitter install
+ install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
+
+sha512sums="
+9f2d3f44af8b0c4b17aae83112fdaa15e945e5cdd0938bc4f1043dfac762ba9d56e7e8f575d62dfbacc57447443cca7b9ff93ecc72721d393d25d3a2761891f9 tree-sitter-nix-66e3e9ce9180ae08fc57372061006ef83f0abde7.tar.gz
+"
diff --git a/testing/tree-sitter-ron/APKBUILD b/testing/tree-sitter-ron/APKBUILD
new file mode 100644
index 00000000000..73536a65455
--- /dev/null
+++ b/testing/tree-sitter-ron/APKBUILD
@@ -0,0 +1,27 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=tree-sitter-ron
+pkgver=0_git20220508
+_gitrev=7762d709a0f7c1f9e269d0125a2e8a7a69006146
+pkgrel=1
+pkgdesc="Rusty Object Notation (RON) grammar for tree-sitter"
+url="https://github.com/zee-editor/tree-sitter-ron"
+arch="all"
+license="Apache-2.0"
+makedepends="tree-sitter-dev"
+install_if="tree-sitter-grammars"
+source="$pkgname-$_gitrev.tar.gz::https://github.com/zee-editor/tree-sitter-ron/archive/$_gitrev.tar.gz"
+builddir="$srcdir/$pkgname-$_gitrev"
+options="!check" # no tests for shared lib
+
+build() {
+ abuild-tree-sitter build
+}
+
+package() {
+ DESTDIR="$pkgdir" abuild-tree-sitter install
+}
+
+sha512sums="
+da1b4e8154b8e2285982b27fa628aa72152cf1b6b5a90b0fab5109c5b6cdc3c217eb5cb13ba0306bf5fbec1c992ebd3e4d9042c81f982650542246ac82b2734b tree-sitter-ron-7762d709a0f7c1f9e269d0125a2e8a7a69006146.tar.gz
+"
diff --git a/testing/tree-sitter-scheme/APKBUILD b/testing/tree-sitter-scheme/APKBUILD
new file mode 100644
index 00000000000..5698269c61d
--- /dev/null
+++ b/testing/tree-sitter-scheme/APKBUILD
@@ -0,0 +1,27 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=tree-sitter-scheme
+pkgver=0.6.0
+pkgrel=0
+pkgdesc="Scheme grammar for tree-sitter"
+url="https://github.com/6cdh/tree-sitter-scheme"
+arch="all"
+license="MIT"
+makedepends="tree-sitter-dev"
+subpackages="$pkgname-doc"
+install_if="tree-sitter-grammars"
+source="$pkgname-$pkgver.tar.gz::https://github.com/6cdh/tree-sitter-scheme/archive/refs/tags/v$pkgver.tar.gz"
+options="!check" # no tests for shared lib
+
+build() {
+ abuild-tree-sitter build
+}
+
+package() {
+ DESTDIR="$pkgdir" abuild-tree-sitter install
+ install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
+
+sha512sums="
+67eaf3a4ae9e338727005fe79a9d1b9887d28f54a9dc73c521be1fb759e3832e659d46186574e48bc616e1da695792e63e69eaafc3e36197d31541e1f98c3319 tree-sitter-scheme-0.6.0.tar.gz
+"
diff --git a/testing/tree-sitter-ssh-client-config/APKBUILD b/testing/tree-sitter-ssh-client-config/APKBUILD
new file mode 100644
index 00000000000..0fff7d11e05
--- /dev/null
+++ b/testing/tree-sitter-ssh-client-config/APKBUILD
@@ -0,0 +1,25 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=tree-sitter-ssh-client-config
+pkgver=2024.4.18
+pkgrel=0
+pkgdesc="tree-sitter grammar for SSH client configuration files"
+url="https://github.com/metio/tree-sitter-ssh-client-config"
+arch="all"
+license="CC0-1.0"
+makedepends="tree-sitter-dev"
+install_if="tree-sitter-grammars"
+source="https://github.com/metio/tree-sitter-ssh-client-config/archive/refs/tags/$pkgver/tree-sitter-ssh-client-config-$pkgver.tar.gz"
+options="!check" # no tests for shared lib
+
+build() {
+ abuild-tree-sitter build
+}
+
+package() {
+ DESTDIR="$pkgdir" abuild-tree-sitter install
+}
+
+sha512sums="
+1d2416c1a51ff2dd2af8f5762efe5e83ddae4d149040017830f3e1d8b42e8eb8d7658ad0ac4cde101c7743e8ce5e89b33de40d96601a74cb7b76f567c9e626f9 tree-sitter-ssh-client-config-2024.4.18.tar.gz
+"
diff --git a/testing/tree-sitter-xml/APKBUILD b/testing/tree-sitter-xml/APKBUILD
new file mode 100644
index 00000000000..03162e7457e
--- /dev/null
+++ b/testing/tree-sitter-xml/APKBUILD
@@ -0,0 +1,34 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=tree-sitter-xml
+pkgver=0.6.2
+pkgrel=0
+pkgdesc="XML & DTD grammars for tree-sitter"
+url="https://github.com/ObserverOfTime/tree-sitter-xml"
+arch="all"
+license="MIT"
+makedepends="tree-sitter-dev"
+subpackages="$pkgname-doc"
+provides="tree-sitter-dtd=$pkgver-r$pkgrel"
+install_if="tree-sitter-grammars"
+source="$pkgname-$pkgver.tar.gz::https://github.com/ObserverOfTime/tree-sitter-xml/archive/refs/tags/v$pkgver.tar.gz"
+options="!check" # no tests for shared lib
+
+_langs='xml dtd'
+
+build() {
+ local lang; for lang in $_langs; do
+ abuild-tree-sitter build -s "$lang/src"
+ done
+}
+
+package() {
+ local lang; for lang in $_langs; do
+ DESTDIR="$pkgdir" abuild-tree-sitter install -s "$lang/src" -q "$lang/queries"
+ done
+ install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
+
+sha512sums="
+5034affe959b3fb5112f8074dce196eab09f3d3e1ec154e77f0bfb119110c3cd5edaddbb11495b0f393d0dbc735e56ae25a968fa5bc6897ee8bb6a281e3c0fe8 tree-sitter-xml-0.6.2.tar.gz
+"
diff --git a/testing/treecat/APKBUILD b/testing/treecat/APKBUILD
new file mode 100644
index 00000000000..793cef25498
--- /dev/null
+++ b/testing/treecat/APKBUILD
@@ -0,0 +1,29 @@
+# Maintainer: Umar Getagazov <umar@handlerug.me>
+pkgname=treecat
+_commit=d277aed99eb48eef891b76916a61029989c41d2d
+pkgver=1.0.2_git20231128
+pkgrel=1
+pkgdesc="Serialize a directory to a tree diagram, and vice versa"
+url="https://sr.ht/~autumnull/treecat"
+arch="x86_64 aarch64 riscv64" # Hare
+license="WTFPL"
+makedepends="hare haredo scdoc"
+subpackages="$pkgname-doc"
+source="$pkgname-$_commit.tar.gz::https://git.sr.ht/~autumnull/treecat/archive/$_commit.tar.gz"
+builddir="$srcdir/$pkgname-$_commit"
+
+build() {
+ haredo
+}
+
+check() {
+ haredo test
+}
+
+package() {
+ PREFIX="$pkgdir"/usr haredo install
+}
+
+sha512sums="
+dee6d7eaf5fe5d326cf424a3c6d28ec377970b97fc5dab37dcb410c7dd0551d3625617e85d879317a36b8d24b04044f1ce5bce47ae376f8abb211a7788ecca30 treecat-d277aed99eb48eef891b76916a61029989c41d2d.tar.gz
+"
diff --git a/testing/tremc/APKBUILD b/testing/tremc/APKBUILD
index 2dfe984a46e..939885bdd84 100644
--- a/testing/tremc/APKBUILD
+++ b/testing/tremc/APKBUILD
@@ -10,7 +10,7 @@ license="GPL-3.0-only"
depends="python3"
options="!check" # no test suite
subpackages="$pkgname-doc $pkgname-bash-completion $pkgname-zsh-completion"
-source="$pkgname-$pkgver.tar.gz::$url/archive/$pkgver.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/tremc/tremc/archive/$pkgver.tar.gz"
package() {
make PREFIX=/usr DESTDIR="$pkgdir" install
diff --git a/testing/trigger-rally/APKBUILD b/testing/trigger-rally/APKBUILD
index e9493bfb655..568c7c9e41e 100644
--- a/testing/trigger-rally/APKBUILD
+++ b/testing/trigger-rally/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
pkgname=trigger-rally
pkgver=0.6.7
-pkgrel=0
+pkgrel=2
pkgdesc="Fast-paced free software rally racing game"
url="https://trigger-rally.sourceforge.io/"
arch="all"
diff --git a/testing/trippy/APKBUILD b/testing/trippy/APKBUILD
new file mode 100644
index 00000000000..c3e3abf892d
--- /dev/null
+++ b/testing/trippy/APKBUILD
@@ -0,0 +1,43 @@
+# Contributor: Simon Frankenberger <simon-alpine@fraho.eu>
+# Maintainer: Simon Frankenberger <simon-alpine@fraho.eu>
+pkgname=trippy
+pkgver=0.10.0
+pkgrel=0
+pkgdesc="combines the functionality of traceroute and ping and is designed to assist with the analysis of networking issues."
+url="https://github.com/fujiapple852/trippy/"
+arch="all"
+license="Apache-2.0"
+makedepends="cargo cargo-auditable"
+subpackages="
+ $pkgname-bash-completion
+ $pkgname-zsh-completion
+ "
+source="https://github.com/fujiapple852/trippy/archive/$pkgver/trippy-v$pkgver.tar.gz"
+
+prepare() {
+ default_prepare
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+ local compgen="target/release/trip --generate"
+ [ -d completions ] || mkdir -v completions
+ $compgen bash >"completions/$pkgname"
+ $compgen zsh >"completions/_$pkgname"
+}
+
+check() {
+ cargo auditable test --frozen
+}
+
+package() {
+ install -Dm 755 -t "$pkgdir"/usr/bin target/release/trip
+ install -Dm 644 -t "$pkgdir"/usr/share/doc/"$pkgname" README.md
+ install -Dm 644 "completions/$pkgname" -t "$pkgdir/usr/share/bash-completion/completions/"
+ install -Dm 644 "completions/_$pkgname" -t "$pkgdir/usr/share/zsh/site-functions/"
+}
+
+sha512sums="
+888812ba578c53403769df7c1192577e8e7e23fbcd529a21edba7fa2e0ac7f9463ca40e5f4137aa732bec8407d7b5252d485e4a5b2d29ef4a9da41e20eaa5bee trippy-v0.10.0.tar.gz
+"
diff --git a/testing/trivy/APKBUILD b/testing/trivy/APKBUILD
index 72dcfba8da9..7aaf9db023c 100644
--- a/testing/trivy/APKBUILD
+++ b/testing/trivy/APKBUILD
@@ -1,31 +1,34 @@
# Contributor: TBK <alpine@jjtc.eu>
# Maintainer: TBK <alpine@jjtc.eu>
pkgname=trivy
-pkgver=0.28.1
-pkgrel=0
+pkgver=0.50.1
+pkgrel=2
pkgdesc="Simple and comprehensive vulnerability scanner for containers"
url="https://github.com/aquasecurity/trivy"
arch="all"
# s390x: tests SIGSEGV: https://github.com/aquasecurity/trivy/issues/430
-# ppc64le: FTBFS: build constraints exclude all Go files in [...]
-# riscv64: modernc.org/libc@v1.14.1 build constraints exclude all Go files
-arch="$arch !s390x !ppc64le !riscv64"
+arch="$arch !s390x"
license="Apache-2.0"
makedepends="btrfs-progs-dev go linux-headers lvm2-dev"
source="https://github.com/aquasecurity/trivy/archive/v$pkgver/trivy-$pkgver.tar.gz"
+options="net !check" # needs tinygo to turn go into wasm for tests
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
build() {
- make build VERSION=$pkgver
+ go build -o trivy -ldflags "-X main.version=$pkgver" cmd/trivy/main.go
}
check() {
- make test
+ go test ./...
}
package() {
- install -Dm755 $pkgname "$pkgdir"/usr/bin/$pkgname
+ install -Dm755 trivy -t "$pkgdir"/usr/bin/
}
sha512sums="
-03a01e66edcb09b4c47da086b433ad4fd762dfc6211132552ec9a4607b99215eb5dc8669bf8e01b917533305e85d6e795171c7c30e8c05c0dc052150effa1f28 trivy-0.28.1.tar.gz
+b2ef68484f2102325c60cfae45ff7b1aaa61b73b52d0904380bd623980631bb83ad28f42bb1a15a26a2966bb00433280412503ba47e8bf65ee70618dc842d812 trivy-0.50.1.tar.gz
"
diff --git a/testing/trunk-recorder/APKBUILD b/testing/trunk-recorder/APKBUILD
deleted file mode 100644
index 2af660e675d..00000000000
--- a/testing/trunk-recorder/APKBUILD
+++ /dev/null
@@ -1,47 +0,0 @@
-# Contributor: psykose <alice@ayaya.dev>
-# Maintainer: psykose <alice@ayaya.dev>
-pkgname=trunk-recorder
-pkgver=4.3.2
-pkgrel=3
-pkgdesc="Records calls from a Trunked Radio System (P25 & SmartNet)"
-url="https://github.com/robotastic/trunk-recorder"
-options="!check" # no tests
-arch="aarch64 x86_64" # blocked by gnuradio
-license="GPL-3.0-only"
-makedepends="
- boost-dev
- cmake
- curl-dev
- fftw-dev
- gmp-dev
- gnuradio-dev
- grpc-dev
- gr-osmosdr-dev
- hackrf-dev
- librtlsdr-dev
- libsndfile-dev
- libvolk-dev
- log4cpp-dev
- mpir-dev
- openssl-dev
- protobuf-dev
- samurai
- uhd-dev
- "
-source="$pkgname-$pkgver.tar.gz::https://github.com/robotastic/trunk-recorder/archive/v$pkgver.tar.gz"
-
-build() {
- cmake -B build -G Ninja \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_BUILD_TYPE=RelWithDebInfo \
- -DCMAKE_INSTALL_LIBDIR=/usr/lib
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-
-sha512sums="
-9cb08612493e915b1b9378ef13e1c1aba30a5184207bc73069bff4d97c350766c314cfb1576cbb6d1741500f5adeacd6533f2f1a45ddef9fd19af8ebb9f701e5 trunk-recorder-4.3.2.tar.gz
-"
diff --git a/testing/trunk/APKBUILD b/testing/trunk/APKBUILD
new file mode 100644
index 00000000000..81f17ea9380
--- /dev/null
+++ b/testing/trunk/APKBUILD
@@ -0,0 +1,49 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=trunk
+pkgver=0.19.2
+pkgrel=0
+pkgdesc="Build, bundle & ship your Rust WASM application to the web"
+url="https://trunkrs.dev"
+arch="all !s390x" # nix
+license="MIT OR Apache-2.0"
+makedepends="
+ bzip2-dev
+ cargo
+ cargo-auditable
+ openssl-dev
+"
+depends="
+ rust
+ wasm-bindgen
+"
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/trunk-rs/trunk/archive/refs/tags/v$pkgver.tar.gz
+"
+options="net"
+
+prepare() {
+ default_prepare
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+check() {
+ cargo test --frozen -- --skip tools::tests::download_and_install_binaries
+}
+
+package() {
+ install -Dm 755 target/release/trunk "$pkgdir"/usr/bin/trunk
+
+ for l in APACHE MIT
+ do
+ install -Dm 644 LICENSE-"$l" "$pkgdir"/usr/share/licenses/"$pkgname"/LICENSE-"$l"
+ done
+}
+
+sha512sums="
+0b107f5fb9ab96a3738d614efae38da254f57a36715d5591c2d8b5542b028152f48cf3f27edb715b5dc072014514e620e776d0774e937152b8df213c2619b7ba trunk-0.19.2.tar.gz
+"
diff --git a/testing/tsung/0005-Do-not-install-manpages-in-main-install.patch b/testing/tsung/0005-Do-not-install-manpages-in-main-install.patch
index d87071a7609..72a70a031d7 100644
--- a/testing/tsung/0005-Do-not-install-manpages-in-main-install.patch
+++ b/testing/tsung/0005-Do-not-install-manpages-in-main-install.patch
@@ -1,6 +1,8 @@
---- tsung-445d78213bb4360d78df3753b3e23e6a28d701f0/Makefile.in
-+++ tsung-445d78213bb4360d78df3753b3e23e6a28d701f0/Makefile.in
-@@ -211,6 +211,12 @@
+diff --git a/Makefile.in b/Makefile.in
+index 2906962..0ec4025 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -211,6 +211,12 @@ clean:
-rm -f $(EBIN)/*.beam tsung.sh tsung.spec tsung.xml tsung.sh tsung-recorder.sh
-rm -f *.xml config.log src/test/*.xml src/test/usersdb.csv
@@ -13,7 +15,7 @@
install: tsung doc install_recorder install_controller $(CONFFILE)
-rm -f $(TMP)
-@@ -230,10 +236,6 @@
+@@ -230,10 +236,6 @@ install: tsung doc install_recorder install_controller $(CONFFILE)
install -pm 0644 $(SRC) $(DESTDIR)$(TARGETDIR)/src/
@@ -24,13 +26,13 @@
# create startup script
install -pm 0755 tsung.sh $(DESTDIR)$(SCRIPT)
install -pm 0755 tsung-recorder.sh $(DESTDIR)$(REC_SCRIPT)
-@@ -244,9 +246,6 @@
- install -d $(DESTDIR)$(SHARE_DIR)/tsung_plotter
+@@ -245,9 +247,6 @@ install: tsung doc install_recorder install_controller $(CONFFILE)
install -pm 0644 $(TSUNG_PLOTTER_LIB) $(DESTDIR)$(LIBDIR)/tsung_plotter
install -pm 0644 $(TSUNG_PLOTTER_CONF) $(DESTDIR)$(SHARE_DIR)/tsung_plotter
--
+
- install -d $(DESTDIR)$(CONFDIR)
- install -pm 0644 $(CONFFILE) $(DESTDIR)$(CONFDIR)/
-
+-
install -d $(DESTDIR)$(TEMPLATES_DIR)
install -d $(DESTDIR)$(TEMPLATES_DIR)/style
+ install -pm 0644 $(TEMPLATES) $(DESTDIR)$(TEMPLATES_DIR)/
diff --git a/testing/tsung/APKBUILD b/testing/tsung/APKBUILD
index 75b63a00aa2..a70cc9bd862 100644
--- a/testing/tsung/APKBUILD
+++ b/testing/tsung/APKBUILD
@@ -2,8 +2,8 @@
# Maintainer: Michael Truog <mjtruog@gmail.com>
pkgname=tsung
-pkgver=1.7.0
-pkgrel=7
+pkgver=1.8.0
+pkgrel=2
pkgdesc="Tsung is a high-performance benchmark framework for various protocols including HTTP,XMPP,LDAP,etc."
url="https://www.process-one.net/en/tsung/"
options="!check" # Tests fail on CI
@@ -22,7 +22,7 @@ makedepends="
"
source="$pkgname-$pkgver.tar.gz::https://github.com/processone/tsung/archive/v$pkgver.tar.gz
0005-Do-not-install-manpages-in-main-install.patch
- support-python3.patch"
+ "
build() {
./configure --prefix=/usr \
@@ -42,6 +42,7 @@ package() {
make DESTDIR="$pkgdir" install
}
-sha512sums="63ec9b7b2f0a9fafde8182160b55513526009be056c6715ecff8dbeb40ab05f55d264f8f79e22b8987c6019c0b7eed9ac4e0e71792ad4cad67c758e64257c1d5 tsung-1.7.0.tar.gz
-ee80c21fe6a66c96b1aa68afd96209516a5a3fe1d51a1ee01a1f465d164c332bbe30f03de1cc20f3d6e0651770fa7e579d64f52d282b64d6ca02d098852f2a93 0005-Do-not-install-manpages-in-main-install.patch
-b105a692cba4168a364df92e2f2239f2a0bdd2018cedaba822bb3fc4159ed7a5fe20115dbeacdf016c8bc9f18797205372755a1bce9a2db59f989134077aa639 support-python3.patch"
+sha512sums="
+3afddd5cd427e75831efca034b9f88147e4a583ab9eb9ad8675d1db583ce1f61850ab9b21a0a25748b807e9ac8a647d446335b0ae5411e0746fc2cb1c73a47e3 tsung-1.8.0.tar.gz
+c6876e80b612a88c01c9971d3581f23b0145d274ca4354963c145f059bfd5f02969fc1a8ab35cd9fa1c567afd37004c34bc68834c050868d9c2da308de82bfa6 0005-Do-not-install-manpages-in-main-install.patch
+"
diff --git a/testing/tsung/support-python3.patch b/testing/tsung/support-python3.patch
deleted file mode 100644
index fe5a181cd24..00000000000
--- a/testing/tsung/support-python3.patch
+++ /dev/null
@@ -1,120 +0,0 @@
-From e37e82aa8778688c5b315c4fe54fa4f67e9a4a82 Mon Sep 17 00:00:00 2001
-From: Didier Fabert <didier.fabert@gmail.com>
-Date: Fri, 31 May 2019 22:52:47 +0200
-Subject: [PATCH] Support python3: print statement has been replaced with a
- function
-
----
- src/tsung-plotter/tsplot.py.in | 30 +++++++++++++++---------------
- src/tsung-plotter/tsung/tsung.py | 2 +-
- 2 files changed, 16 insertions(+), 16 deletions(-)
-
-diff --git a/src/tsung-plotter/tsplot.py.in b/src/tsung-plotter/tsplot.py.in
-index f7a180b3..f8eb7295 100644
---- a/src/tsung-plotter/tsplot.py.in
-+++ b/src/tsung-plotter/tsplot.py.in
-@@ -1,4 +1,4 @@
--#! /usr/bin/env python
-+#! /usr/bin/env python3
- # -*- Mode: python -*-
- # -*- coding: utf-8 -*-
-
-@@ -204,7 +204,7 @@ def main(conffile, logs, legends, outdir, verbose):
- stats = [x.strip().rsplit('.', 1)
- for x in config.get(s, 'stats').split(' ')]
- except:
-- print 'error: unable to read plot "%s" stats' % s
-+ print('error: unable to read plot "%s" stats' % s)
- continue
-
- if config.has_option(s, 'styles'):
-@@ -235,8 +235,8 @@ def main(conffile, logs, legends, outdir, verbose):
- try:
- p.__dict__['yfactor'] = map(float,config.get(s, 'yfactor').decode(encoding).split(','))
- except ValueError:
-- print 'warning: %s yfactor not a number: %s' \
-- % (p.name, config.get(s, yfactor))
-+ print('warning: %s yfactor not a number: %s' \
-+ % (p.name, config.get(s, yfactor)))
- # Text parameters - to decode into specified encoding
- for attr in ['title', 'xlabel', 'ylabel', 'plottype', 'yscale']:
- if config.has_option(s, attr):
-@@ -249,13 +249,13 @@ def main(conffile, logs, legends, outdir, verbose):
- try:
- p.__dict__[attr] = config.getfloat(s, attr)
- except ValueError:
-- print 'warning: %s %s not a number: %s' \
-- % (p.name, attr, config.get(s, attr))
-+ print('warning: %s %s not a number: %s' \
-+ % (p.name, attr, config.get(s, attr)))
-
- outfile = p.plot(stats, dataset)
-
- if verbose:
-- print 'Generated plot %s' % outfile
-+ print('Generated plot %s' % outfile)
-
- if __name__ == "__main__":
- from optparse import OptionParser
-@@ -280,10 +280,10 @@ if __name__ == "__main__":
- config = options.config
-
- if options.verbose:
-- print 'Using %s configuration file' % config
-+ print('Using %s configuration file' % config)
-
- if not os.access(config, os.R_OK):
-- print "can't read configuration file: %s" % config
-+ print("can't read configuration file: %s" % config)
- sys.exit(1)
-
- # FIXME: error control
-@@ -295,7 +295,7 @@ if __name__ == "__main__":
-
- # args are legend then file, any times wanted by user
- if len(args) % 2 != 0:
-- print "error: please provide legend and tsung log filename"
-+ print("error: please provide legend and tsung log filename")
- sys.exit(3)
-
- count = 0
-@@ -311,21 +311,21 @@ if __name__ == "__main__":
- count += 1
-
- if options.verbose:
-- print 'Using %s stats configuration file' % SYS_STATS_CONF
-+ print('Using %s stats configuration file' % SYS_STATS_CONF)
-
- logs = []
- for logfile in files:
- if not os.access(logfile, os.R_OK):
-- print "error: unable to read file %s" % logfile
-+ print("error: unable to read file %s" % logfile)
-
- else:
- if options.verbose:
-- print 'Parsing Tsung log file', logfile
-+ print('Parsing Tsung log file', logfile)
- logs.append((logfile, TsungLog(SYS_STATS_CONF, logfile)))
-
- if len(logs) != len(args) / 2:
-- print 'error while parsing files (%d != %d)' % (len(logs),
-- len(args)/2)
-+ print('error while parsing files (%d != %d)' % (len(logs),
-+ len(args)/2))
- sys.exit(2)
-
- main(config, logs, legends, options.outdir, options.verbose)
-diff --git a/src/tsung-plotter/tsung/tsung.py b/src/tsung-plotter/tsung/tsung.py
-index 72d32976..ffcca8af 100644
---- a/src/tsung-plotter/tsung/tsung.py
-+++ b/src/tsung-plotter/tsung/tsung.py
-@@ -204,7 +204,7 @@ def parse(self):
- break
-
- if name not in self.unknown and not is_re:
-- print 'WARNING: tsung %s data is not configured' % name
-+ print('WARNING: tsung %s data is not configured' % name)
- self.unknown.append(name)
-
- def stat(self, name, stat):
diff --git a/testing/ttdl/APKBUILD b/testing/ttdl/APKBUILD
new file mode 100644
index 00000000000..c7545c6113e
--- /dev/null
+++ b/testing/ttdl/APKBUILD
@@ -0,0 +1,39 @@
+# Contributor: Thomas Böhler <witcher@wiredspace.de>
+# Maintainer: Thomas Böhler <witcher@wiredspace.de>
+pkgname=ttdl
+pkgver=4.2.1
+pkgrel=0
+pkgdesc="Terminal Todo List Manager"
+url="https://github.com/VladimirMarkelov/ttdl"
+arch="all !ppc64le !s390x !riscv64"
+license="MIT"
+makedepends="cargo cargo-auditable"
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/VladimirMarkelov/ttdl/archive/refs/tags/v$pkgver.tar.gz"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm755 target/release/ttdl "$pkgdir"/usr/bin/ttdl
+
+ install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/"$pkgname"/LICENSE
+ install -Dm644 changelog "$pkgdir"/usr/share/doc/"$pkgname"/changelog
+ install -Dm644 intro.md "$pkgdir"/usr/share/doc/"$pkgname"/intro.md
+ install -Dm644 README.md "$pkgdir"/usr/share/doc/"$pkgname"/README.md
+}
+
+sha512sums="
+b00f8952546f533cf26d0d16f04469d7537d96af4e553452b7030991e962b881f46e1911a1b00a14af590c280fd5e2dbdf844fb953df3135cd24e55900a00ea5 ttdl-4.2.1.tar.gz
+"
diff --git a/testing/ttf-anonymous-pro/APKBUILD b/testing/ttf-anonymous-pro/APKBUILD
deleted file mode 100644
index 59136dc8c46..00000000000
--- a/testing/ttf-anonymous-pro/APKBUILD
+++ /dev/null
@@ -1,27 +0,0 @@
-# Contributor: Galen Abell <galen@galenabell.com>
-# Maintainer: Galen Abell <galen@galenabell.com>
-pkgname=ttf-anonymous-pro
-pkgver=1.002
-_pkgver=${pkgver/./_}
-pkgrel=1
-pkgdesc="A family of four fixed-width fonts designed especially with coding in mind"
-url="https://www.marksimonson.com/fonts/view/anonymous-pro"
-arch="noarch"
-license="OFL-1.1"
-depends="fontconfig"
-options="!check" # no tests
-source="https://www.marksimonson.com/assets/content/fonts/AnonymousPro-$_pkgver.zip"
-builddir="$srcdir/AnonymousPro-$pkgver.001"
-
-build() {
- :
-}
-
-package() {
- mkdir -p "$pkgdir"/usr/share/fonts/TTF
- install -m644 "$builddir"/*.ttf \
- "$pkgdir"/usr/share/fonts/TTF/
-}
-sha512sums="
-e34c757b6be907b84194b4506ec2389113bb0d3750d518d7b2f7f9deb992172fd625dfb5a9c105df985b796c15559a5fcf53b123e86449a3fb71fdbfb57b6dd1 AnonymousPro-1_002.zip
-"
diff --git a/testing/ttf-font-awesome-4/APKBUILD b/testing/ttf-font-awesome-4/APKBUILD
deleted file mode 100644
index 3ced320325f..00000000000
--- a/testing/ttf-font-awesome-4/APKBUILD
+++ /dev/null
@@ -1,24 +0,0 @@
-# Contributor: Dominic Fung <domokun997@gmail.com>
-# Maintainer: Dominic Fung <domokun997@gmail.com>
-pkgname=ttf-font-awesome-4
-_pkgname=Font-Awesome
-pkgver=4.7.0
-pkgrel=0
-pkgdesc="Completely free version of iconic font designed for Bootstrap"
-url="https://fontawesome.com/v4.7.0/"
-arch="noarch"
-license="CC"
-options="!check"
-depends="fontconfig mkfontdir mkfontscale"
-makedepends="font-util-dev"
-install="$pkgname.post-install"
-source="$pkgname-$pkgver.tar.gz::https://github.com/FortAwesome/$_pkgname/archive/v$pkgver.tar.gz"
-builddir="$srcdir/$_pkgname-$pkgver"
-
-package() {
- install -d "$pkgdir/usr/share/fonts/TTF"
- install -d "$pkgdir/usr/share/fonts/X11/OTF"
- install -m644 fonts/*.otf "$pkgdir/usr/share/fonts/X11/OTF/"
- install -m644 fonts/*.ttf "$pkgdir/usr/share/fonts/TTF/"
-}
-sha512sums="913e5eec2211111e9601c92059745344766f4c3a6f3563cbc6f8a5f3850a0101bab8f3f992a97c6f1c264a2bbb5163f3feecc6b3f64fcb22c9592d2d38cc777d ttf-font-awesome-4-4.7.0.tar.gz"
diff --git a/testing/ttf-font-awesome-4/ttf-font-awesome-4.post-install b/testing/ttf-font-awesome-4/ttf-font-awesome-4.post-install
deleted file mode 100644
index 984457d3e1b..00000000000
--- a/testing/ttf-font-awesome-4/ttf-font-awesome-4.post-install
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-fc-cache -f > /dev/null
-mkfontscale /usr/share/fonts/TTF
-mkfontdir /usr/share/fonts/TTF
diff --git a/testing/ttf-jetbrains-mono/APKBUILD b/testing/ttf-jetbrains-mono/APKBUILD
deleted file mode 100644
index 90ed327cd91..00000000000
--- a/testing/ttf-jetbrains-mono/APKBUILD
+++ /dev/null
@@ -1,19 +0,0 @@
-# Contributor: Grigory Kirillov <txgk@bk.ru>
-# Maintainer: Grigory Kirillov <txgk@bk.ru>
-pkgname=ttf-jetbrains-mono
-pkgver=2.242
-pkgrel=0
-pkgdesc="A monospaced typeface made for developers"
-url="https://jetbrains.com/mono"
-arch="noarch"
-license="OFL-1.1"
-options="!check" # no test suite
-depends="fontconfig mkfontscale"
-source="https://download.jetbrains.com/fonts/JetBrainsMono-$pkgver.zip"
-
-package() {
- mkdir -p "$pkgdir"/usr/share/fonts/$pkgname
- install -m644 "$srcdir"/fonts/ttf/*.ttf "$pkgdir"/usr/share/fonts/$pkgname
-}
-
-sha512sums="03c08a2cf5603103baaeed4fcef8aa7bdfced92fdc71b207caa7f913eea49dbe178d020f15a3396b11417f9b906778cc8bc8483f4eff2b04f25163fa373186a2 JetBrainsMono-2.242.zip"
diff --git a/testing/tty-clock/APKBUILD b/testing/tty-clock/APKBUILD
new file mode 100644
index 00000000000..30c5001effc
--- /dev/null
+++ b/testing/tty-clock/APKBUILD
@@ -0,0 +1,30 @@
+# Contributor: Adam Thiede <me@adamthiede.com>
+# Maintainer: Adam Thiede <me@adamthiede.com>
+pkgname=tty-clock
+_pkgbase=2.3
+_pkgsnap=20240104
+_commit=f2f847cf2cc2949c8a8b7779a778f366d3743474
+# No release since 2017 with required fixes in master
+pkgver=${_pkgbase}_git$_pkgsnap
+pkgrel=0
+pkgdesc="tty clock!"
+url="https://github.com/xorg62/tty-clock"
+arch="all"
+license="BSD-3-Clause"
+makedepends="ncurses-dev"
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/xorg62/tty-clock/archive/$_commit.tar.gz"
+builddir="$srcdir/$pkgname-$_commit/"
+options="!check" # no tests
+
+build() {
+ make
+}
+
+package() {
+ PREFIX=/usr DESTDIR=$pkgdir make install
+}
+
+sha512sums="
+d2deeecae844022bf75c020e39a1fbce92f752e42fd7967e08edf8032d93014b98129d33ff356437b8b22f7d72f1206db4eebe74716944270b89d2f891d65e06 tty-clock-2.3_git20240104.tar.gz
+"
diff --git a/testing/tty-proxy/APKBUILD b/testing/tty-proxy/APKBUILD
index 9d6cf26a1aa..4b6348b0756 100644
--- a/testing/tty-proxy/APKBUILD
+++ b/testing/tty-proxy/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Thomas Kienlen <kommander@laposte.net>
pkgname=tty-proxy
pkgver=0.0.2
-pkgrel=5
+pkgrel=20
pkgdesc="Proxy used by the tty-share command for public facing sessions"
url="https://github.com/elisescu/tty-proxy"
arch="all"
@@ -11,10 +11,13 @@ makedepends="go"
source="https://github.com/elisescu/tty-proxy/archive/v$pkgver/tty-proxy-$pkgver.tar.gz"
options="chmod-clean !check" # no test suite
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
build() {
go build \
- -trimpath \
- -ldflags "-s -w"
+ -trimpath
}
package() {
diff --git a/testing/tty-share/APKBUILD b/testing/tty-share/APKBUILD
index 89b5000748f..cce1a4149d6 100644
--- a/testing/tty-share/APKBUILD
+++ b/testing/tty-share/APKBUILD
@@ -1,20 +1,23 @@
# Contributor: Thomas Kienlen <kommander@laposte.net>
# Maintainer: Thomas Kienlen <kommander@laposte.net>
pkgname=tty-share
-pkgver=2.2.1
-pkgrel=3
+pkgver=2.4.0
+pkgrel=10
pkgdesc="Share your terminal over the Internet"
url="https://tty-share.com/"
-arch="all !riscv64" # FTBFS
+arch="all"
license="MIT"
makedepends="go"
source="https://github.com/elisescu/tty-share/archive/v$pkgver/tty-share-$pkgver.tar.gz"
options="chmod-clean !check" # no test suite
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
build() {
go build \
- -trimpath \
- -ldflags "-s -w"
+ -trimpath
}
package() {
@@ -22,5 +25,5 @@ package() {
}
sha512sums="
-a482a2551618a823bedda97f1284155b6df8681bfca29973f4f9511bbd6c7303ea31254d5985420acf974ed991e90438229e4caf4b817dccd997435b04b414d9 tty-share-2.2.1.tar.gz
+c28bd5b6367555544087238ef243e8408baf4e078b4807c1c08ad614ae63fd331fd52a5f3a0216a193b78563d0ce4c1bf81d9e8aae2941d9416af335287e6f84 tty-share-2.4.0.tar.gz
"
diff --git a/testing/ttyper/APKBUILD b/testing/ttyper/APKBUILD
new file mode 100644
index 00000000000..2242ed09663
--- /dev/null
+++ b/testing/ttyper/APKBUILD
@@ -0,0 +1,32 @@
+# Maintainer: Cowington Post <cowingtonpost@gmail.com>
+pkgname=ttyper
+pkgver=1.4.1
+pkgrel=0
+pkgdesc="Terminal-based typing test"
+url="https://github.com/max-niederman/ttyper/"
+arch="all"
+license="MIT"
+makedepends="cargo cargo-auditable"
+source="https://github.com/max-niederman/ttyper/archive/refs/tags/v$pkgver/ttyper-$pkgver.tar.gz"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm755 target/release/ttyper -t "$pkgdir"/usr/bin
+}
+
+sha512sums="
+6a7354b9725d961e2ad2709fcbe110f0e4c712a3b6a688468420bb29f507dade0de4eace140deff0ff3eec62d239d3a9484be732a6f90d1ad9d5e7f07c39e401 ttyper-1.4.1.tar.gz
+"
diff --git a/testing/tui-journal/APKBUILD b/testing/tui-journal/APKBUILD
new file mode 100644
index 00000000000..15bcf31443e
--- /dev/null
+++ b/testing/tui-journal/APKBUILD
@@ -0,0 +1,42 @@
+# Contributor: Orhun Parmaksız <orhunparmaksiz@gmail.com>
+# Maintainer: Orhun Parmaksız <orhunparmaksiz@gmail.com>
+pkgname=tui-journal
+_pkgname=tjournal
+pkgver=0.8.0
+pkgrel=0
+pkgdesc="Write and manage journals/notes from the terminal"
+url="https://github.com/AmmarAbouZor/tui-journal"
+arch="all !s390x" # s390x: nix crate
+license="MIT"
+makedepends="
+ cargo
+ cargo-auditable
+ openssl-dev
+ "
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/AmmarAbouZor/tui-journal/archive/v$pkgver.tar.gz"
+options="net"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm 755 "target/release/$_pkgname" -t "$pkgdir/usr/bin"
+ install -Dm 644 README.md -t "$pkgdir/usr/share/doc/$pkgname"
+ install -Dm 644 LICENSE -t "$pkgdir/usr/share/licenses/$pkgname"
+}
+
+sha512sums="
+ce29d19011186208287417c8a5ee0cb69a525f6e18fb785506eaf2ad3b7dcf1d5c2159635e2734b0739d7cf20e065b7398e7a45a098e36a45b95cd5feef21be9 tui-journal-0.8.0.tar.gz
+"
diff --git a/testing/tuigreet/APKBUILD b/testing/tuigreet/APKBUILD
deleted file mode 100644
index 97ca706a21d..00000000000
--- a/testing/tuigreet/APKBUILD
+++ /dev/null
@@ -1,38 +0,0 @@
-# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
-pkgname=tuigreet
-pkgver=0.7.2
-pkgrel=0
-pkgdesc="Graphical console greeter for greetd"
-url="https://github.com/apognu/tuigreet"
-arch="aarch64 armhf armv7 ppc64le x86 x86_64" # limited by rust/cargo
-license="GPL-3.0"
-depends="greetd"
-makedepends="cargo scdoc"
-subpackages="$pkgname-doc"
-source="https://github.com/apognu/tuigreet/archive/$pkgver/tuigreet-$pkgver.tar.gz
- minimize-size.patch
- "
-options="!check" # no tests provided
-
-build() {
- cargo build --release --locked
-
- scdoc < contrib/man/tuigreet-1.scd > contrib/man/tuigreet.1
-}
-
-check() {
- cargo test --release --locked
-}
-
-package() {
- cargo install --locked --path . --root="$pkgdir/usr"
- rm "$pkgdir"/usr/.crates*
-
- install -D -m644 contrib/man/tuigreet.1 -t "$pkgdir"/usr/share/man/man1/
-}
-
-sha512sums="
-15eb7798d530e1aaf93f09e97462f5a985325ece71b24c74d4321290eb4e5295c1d08900f069a1bc6e8447e083d3ca0be2dc35e347baacdb51a02b693ec1ad56 tuigreet-0.7.2.tar.gz
-cb9fe9598812c23ed62a1c52e01dd8a23fdb4cd8b55d303bc925ec3249e568b38b8771ef7eac82098b3f67584bf81d52058a9cf29c854286df4d8216d9ec1869 minimize-size.patch
-"
diff --git a/testing/tuigreet/minimize-size.patch b/testing/tuigreet/minimize-size.patch
deleted file mode 100644
index b3836f8b801..00000000000
--- a/testing/tuigreet/minimize-size.patch
+++ /dev/null
@@ -1,9 +0,0 @@
---- a/Cargo.toml
-+++ b/Cargo.toml
-@@ -25,3 +25,6 @@
-
- [profile.release]
- lto = true
-+codegen-units = 1
-+opt-level = "z"
-+panic = "abort"
diff --git a/testing/tup/APKBUILD b/testing/tup/APKBUILD
new file mode 100644
index 00000000000..96092e032a8
--- /dev/null
+++ b/testing/tup/APKBUILD
@@ -0,0 +1,58 @@
+# Contributor: Prokop RandáÄek <prokop@rdck.dev>
+# Maintainer: Prokop RandáÄek <prokop@rdck.dev>
+pkgname=tup
+pkgver=0.7.11
+pkgrel=0
+pkgdesc="A file-based build system"
+url="http://gittup.org/tup"
+arch="all"
+license="GPL-2.0-only"
+makedepends="fuse3-dev pcre-dev inih-dev sqlite-dev"
+checkdepends="sqlite ccache"
+subpackages="$pkgname-doc $pkgname-vim::noarch"
+source="$pkgname-$pkgver.tar.gz::https://github.com/gittup/tup/archive/refs/tags/v$pkgver.tar.gz
+ s390x_risc3264_support.patch
+ system_inih.patch
+ "
+options="!check" # tests need to run tup, which requires fuse
+
+prepare() {
+ default_prepare
+
+ sed "s/\`git describe\`/$pkgver/" -i src/tup/link.sh
+ echo "CFLAGS += $CFLAGS" >> Tuprules.tup
+ echo "LDFLAGS += $LDFLAGS" >> Tuprules.tup
+ echo "CONFIG_TUP_USE_SYSTEM_INIH=y" >> tup.config
+ echo "CONFIG_TUP_USE_SYSTEM_SQLITE=y" >> tup.config
+}
+
+build() {
+ # fuse not available so ./bootstrap.sh does not work
+ ./build.sh
+ ./build/tup init
+ ./build/tup generate runme.sh
+ ./runme.sh
+}
+
+vim() {
+ pkgdesc="$pkgname (vim syntax)"
+ install_if="$pkgname=$pkgver-r$pkgrel vim"
+ depends=
+
+ amove usr/share/vim
+}
+
+package() {
+ install -D -m755 tup "$pkgdir"/usr/bin/tup
+ install -D -m644 tup.1 -t "$pkgdir"/usr/share/man/man1
+ install -D -m644 contrib/syntax/tup.vim -t "$pkgdir"/usr/share/vim/vimfiles/syntax
+
+ mkdir -p "$pkgdir"/usr/share/vim/vimfiles/ftdetect
+ echo 'au BufNewFile,BufRead Tupfile,*.tup setf tup' > "$pkgdir"/usr/share/vim/vimfiles/ftdetect/tup.vim
+}
+
+sha512sums="
+b923366bb15ce6e5be027b6b3e98b1029cd7dbe6ce2a8dd37a8e4b71521c8ff6d95d88fe296f5ca4719bbc048c6aaa5eacdd8cac1410d46df54ac674d6fd8aee tup-0.7.11.tar.gz
+733282451020ae770e2ae3230f30df8b9ba10bbfe8f1e151f04d45819c4af9c425617c81fd24b0030a4fc530607bd9806ec69033e85eef7db013266648e0ebf2 s390x_risc3264_support.patch
+ae4c4fc929b3974945ca7c9f7bac51d9e78168497e932892f0dfc879499fea43255a2b02ff650e661d2019a60aeb03504743cef48f58b2c389076400012c257a system_inih.patch
+"
diff --git a/testing/tup/s390x_risc3264_support.patch b/testing/tup/s390x_risc3264_support.patch
new file mode 100644
index 00000000000..a44f45fc848
--- /dev/null
+++ b/testing/tup/s390x_risc3264_support.patch
@@ -0,0 +1,30 @@
+diff --git a/src/tup/platform.c b/src/tup/platform.c
+index f0e2bccd..eb39de48 100644
+--- a/src/tup/platform.c
++++ b/src/tup/platform.c
+@@ -58,6 +58,12 @@ const char *tup_arch = "sparc";
+ const char *tup_arch = "arm";
+ #elif __aarch64__
+ const char *tup_arch = "arm64";
++#elif __s390x__
++const char *tup_arch = "s390x";
++#elif (__riscv || __riscv__) && __riscv_xlen == 64
++const char *tup_arch = "riscv64";
++#elif (__riscv || __riscv__) && __riscv_xlen == 32
++const char *tup_arch = "riscv32";
+ #else
+ #error Unsupported cpu architecture. Please add support in tup/platform.c
+ #endif
+diff --git a/tup.1 b/tup.1
+index 208629fe..2ebc264d 100644
+--- a/tup.1
++++ b/tup.1
+@@ -765,7 +765,7 @@ In this case, the @-variable "FOO" is explicitly set to "n".
+ TUP_PLATFORM is a special @-variable. If CONFIG_TUP_PLATFORM is not set in the tup.config file, it has a default value according to the platform that tup itself was compiled in. Currently the default value is one of "linux", "solaris", "macosx", "win32", "freebsd" or "netbsd".
+ .TP
+ .B @(TUP_ARCH)
+-TUP_ARCH is another special @-variable. If CONFIG_TUP_ARCH is not set in the tup.config file, it has a default value according to the processor architecture that tup itself was compiled in. Currently the default value is one of "i386", "x86_64", "powerpc", "powerpc64", "ia64", "alpha", "sparc", "arm64", or "arm".
++TUP_ARCH is another special @-variable. If CONFIG_TUP_ARCH is not set in the tup.config file, it has a default value according to the processor architecture that tup itself was compiled in. Currently the default value is one of "i386", "x86_64", "powerpc", "powerpc64", "ia64", "alpha", "sparc", "arm64", "arm", "s390x", "riscv32" or "riscv64".
+
+ .SH "VARIANTS"
+ Tup supports variants, which allow you to build your project multiple times with different configurations. Perhaps the most common case is to build a release and a debug configuration with different compiler flags, though any number of variants can be used to support whatever configurations you like. Each variant is built in its own directory distinct from each other and from the source tree. When building with variants, the in-tree build is disabled. To create a variant, make a new directory at the top of the tup hierarchy and create a "tup.config" file there. For example:
diff --git a/testing/tup/system_inih.patch b/testing/tup/system_inih.patch
new file mode 100644
index 00000000000..568236b8a13
--- /dev/null
+++ b/testing/tup/system_inih.patch
@@ -0,0 +1,16 @@
+diff --git a/Tupfile b/Tupfile
+index 9b4ab820..6152ba7c 100644
+--- a/Tupfile
++++ b/Tupfile
+@@ -21,7 +21,11 @@ srcs += src/tup/tup/*.o
+ srcs += src/tup/monitor/*.o
+ srcs += src/tup/flock/*.o
+ srcs += src/tup/server/*.o
++ifeq (@(TUP_USE_SYSTEM_INIH),y)
++LDFLAGS += -linih
++else
+ srcs += src/inih/*.o
++endif
+ srcs += src/compat/*.o
+ ifeq (@(TUP_USE_SYSTEM_SQLITE),y)
+ LDFLAGS += -lsqlite3
diff --git a/testing/tuptime/APKBUILD b/testing/tuptime/APKBUILD
index be2c93f294f..21cdbef4002 100644
--- a/testing/tuptime/APKBUILD
+++ b/testing/tuptime/APKBUILD
@@ -1,26 +1,33 @@
# Contributor: Roberto Oliveira <robertoguimaraes8@gmail.com>
# Maintainer: Roberto Oliveira <robertoguimaraes8@gmail.com>
pkgname=tuptime
-pkgver=4.1.0
-pkgrel=1
+pkgver=5.2.2
+pkgrel=3
pkgdesc="Report the historical and statistical real time of the system"
-url="https://github.com/rfrail3/tuptime"
+url="https://github.com/rfmoz/tuptime"
arch="noarch"
license="GPL-2.0-only"
+pkgusers="tuptime"
+pkggroups="tuptime"
depends="python3"
-install="$pkgname.pre-install $pkgname-openrc.post-install"
+install="$pkgname.pre-install $pkgname.post-install"
subpackages="$pkgname-doc $pkgname-openrc"
-options="!check"
-source="$pkgname-$pkgver.tar.gz::https://github.com/rfrail3/tuptime/archive/$pkgver.tar.gz
- $pkgname.cron"
-
+source="$pkgname-$pkgver.tar.gz::https://github.com/rfmoz/tuptime/archive/refs/tags/$pkgver.tar.gz
+ $pkgname.initd
+ $pkgname.cron
+ "
+options="!check" # no tests
package() {
- install -Dm775 "src/$pkgname" "$pkgdir/usr/bin/$pkgname"
- install -Dm755 "$srcdir/$pkgname.cron" "$pkgdir"/etc/periodic/15min/$pkgname
- install -Dm644 "src/man/$pkgname.1" "$pkgdir/usr/share/man/man1/$pkgname.1"
- install -Dm755 "src/openrc/$pkgname" "$pkgdir/etc/init.d/$pkgname"
+ install -Dm775 src/tuptime -t "$pkgdir"/usr/bin/
+ install -Dm755 "$srcdir"/tuptime.cron "$pkgdir"/etc/periodic/15min/$pkgname
+ install -Dm755 "$srcdir"/tuptime.initd "$pkgdir"/etc/init.d/tuptime
+ install -Dm644 src/man/tuptime.1 -t "$pkgdir"/usr/share/man/man1/
+ install -dm755 -o tuptime -g tuptime "$pkgdir"/var/lib/tuptime/
}
-sha512sums="2811f2bf659bc1af3656230f87477a939ec22c3caa9283f7063e9e9c8ea2497f3c3581c3b7eb63cef15ce29d73f34d44c72fde4d2681f50021b4eb8986e0c812 tuptime-4.1.0.tar.gz
-d3a3f7820c2fbbc3a13412740934b5b62af462c35a9354a2f0d16b76500a406ea86dbec2cf368a24191df6c0221a8e6efff0dbf3e635af854cbe84eb6fe5630e tuptime.cron"
+sha512sums="
+3a4b0ab3776bdcbe1bf7afd88df9f700251d9072026338cecd139dbe4c8c00a259e3fc95fef094709417bfe5059ae9a6de0422e7286dc73f3caa7e737a25f526 tuptime-5.2.2.tar.gz
+f2009b2ef162b9fbb44e079d67688bee26b4459b8d6b223d4f26b311e72c2b0af313aef32a308ca7508ac9834eb21c172c761cb32cc2e6d4357ec719508f4125 tuptime.initd
+41a4f9e85b1aa23f03c0496fd76fb3c743ccdc251890352ce2d85e8ea5ef4a7040b7b8fb47fdd7ac3ae6c284285c52a7577ebd45de86ee9bddb7d997e874b8b2 tuptime.cron
+"
diff --git a/testing/tuptime/tuptime-openrc.post-install b/testing/tuptime/tuptime-openrc.post-install
deleted file mode 100644
index 9ea355f6634..00000000000
--- a/testing/tuptime/tuptime-openrc.post-install
+++ /dev/null
@@ -1,5 +0,0 @@
-#!/bin/sh
-
-echo 'Tuptime needs to be executed now and at boot time, do it with: "rc-update add tuptime default && rc-service tuptime start"' 1>&2
-
-exit 0
diff --git a/testing/tuptime/tuptime.cron b/testing/tuptime/tuptime.cron
index ff9b39b2606..b0684d47dd4 100644
--- a/testing/tuptime/tuptime.cron
+++ b/testing/tuptime/tuptime.cron
@@ -1,4 +1,4 @@
#!/bin/sh
if [ -x /usr/bin/tuptime ]; then
- su tuptime -s /bin/sh -c '/usr/bin/tuptime -x' > /dev/null
+ su tuptime -s /bin/sh -c '/usr/bin/tuptime -q' > /dev/null
fi
diff --git a/testing/tuptime/tuptime.initd b/testing/tuptime/tuptime.initd
new file mode 100644
index 00000000000..cc293b83edd
--- /dev/null
+++ b/testing/tuptime/tuptime.initd
@@ -0,0 +1,24 @@
+#!/sbin/openrc-run
+
+name="tuptime"
+command="/usr/bin/tuptime"
+command_user="tuptime"
+command_args="-q"
+
+depend() {
+ need localmount
+ after bootmisc
+ after clock
+}
+
+stop() {
+ ebegin "Stopping ${name}"
+ su ${command_user} -s /bin/sh -c "${command} ${command_args} -g"
+ eend $?
+}
+
+status() {
+ ebegin "Status ${name}"
+ su ${command_user} -s /bin/sh -c "${command} ${command_args}"
+ eend $?
+}
diff --git a/testing/tuptime/tuptime.post-install b/testing/tuptime/tuptime.post-install
new file mode 100644
index 00000000000..750318bec12
--- /dev/null
+++ b/testing/tuptime/tuptime.post-install
@@ -0,0 +1,5 @@
+#!/bin/sh
+
+su tuptime -s /bin/sh -c "tuptime -q"
+
+exit 0
diff --git a/testing/tuptime/tuptime.pre-install b/testing/tuptime/tuptime.pre-install
index 19600617dc8..bc42c9dc1ee 100644
--- a/testing/tuptime/tuptime.pre-install
+++ b/testing/tuptime/tuptime.pre-install
@@ -1,6 +1,6 @@
#!/bin/sh
addgroup -S tuptime 2>/dev/null
-adduser -S -D -h /var/lib/tuptime -s /bin/false -G tuptime -g tuptime tuptime 2>/dev/null
+adduser -S -D -h /var/lib/tuptime -s /sbin/nologin -G tuptime -g tuptime tuptime 2>/dev/null
exit 0
diff --git a/testing/turn-rs/APKBUILD b/testing/turn-rs/APKBUILD
new file mode 100644
index 00000000000..ccd24d0cb63
--- /dev/null
+++ b/testing/turn-rs/APKBUILD
@@ -0,0 +1,66 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=turn-rs
+pkgver=2.1.3
+pkgrel=0
+pkgdesc="A pure rust implemented turn server"
+url="https://github.com/mycrl/turn-rs"
+arch="all"
+license="GPL-3.0-only"
+makedepends="
+ cargo
+ cargo-auditable
+ protobuf-dev
+"
+install="turn-rs.pre-install"
+subpackages="
+ $pkgname-openrc
+ $pkgname-doc
+ $pkgname-cli
+ $pkgname-balance
+"
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/mycrl/turn-rs/archive/refs/tags/v$pkgver.tar.gz
+ turn-rs.initd
+ turn-rs.confd
+"
+options="net"
+
+prepare() {
+ default_prepare
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm 755 target/release/turn-server "$pkgdir"/usr/bin/turn-server
+ install -Dm 600 turn-server.toml "$pkgdir"/etc/turn-rs/turn-server.toml
+
+ install -Dm 755 "$srcdir"/turn-rs.initd "$pkgdir"/etc/init.d/turn-rs
+ install -Dm 644 "$srcdir"/turn-rs.confd "$pkgdir"/etc/conf.d/turn-rs
+
+ install -Dm 644 LICENSE "$pkgdir"/usr/share/licenses/"$pkgname"/LICENSE
+}
+
+cli() {
+ pkgdesc="$pkgdesc (command line monitoring tool)"
+ install -Dm 755 "$builddir"/target/release/turn-cli "$subpkgdir"/usr/bin/turn-cli
+}
+
+balance() {
+ pkgdesc="$pkgdesc (distributed load balancing service)"
+ install -Dm 755 "$builddir"/target/release/turn-balance-server "$subpkgdir"/usr/bin/turn-balance-server
+}
+
+sha512sums="
+01c5d978bbe70c018bf37e817a71b5e3bd030beba342f7567780feb837412bccd0fc56baeee1ff4abfb7ace092f71ca73be2b596091979110e3bbf72487508c1 turn-rs-2.1.3.tar.gz
+0be3a81c5c9c13e2ba36a867282b3cae90e311d314c6e3f05855ce743fb2457ca12c0b7540e800bfe48a8e2129eb3acc970bc85b9b22dac70648b1637ccfb80f turn-rs.initd
+cc6b17c4efe13d0cc100e20c2d855cb5aa1cb4c7a65ccfa91757f0e667aac77ea020a17fdbcf67ef0de9a32c6133705e1bca2fe239d5ac19234d4de6f425e89e turn-rs.confd
+"
diff --git a/testing/turn-rs/turn-rs.confd b/testing/turn-rs/turn-rs.confd
new file mode 100644
index 00000000000..6eeea7ffcad
--- /dev/null
+++ b/testing/turn-rs/turn-rs.confd
@@ -0,0 +1,3 @@
+#config=/etc/turn-server/config.toml
+#logdir=/var/log/turn-rs
+#_conf_path=/etc/turn-rs/turn-server.toml
diff --git a/testing/turn-rs/turn-rs.initd b/testing/turn-rs/turn-rs.initd
new file mode 100644
index 00000000000..306c6149ba8
--- /dev/null
+++ b/testing/turn-rs/turn-rs.initd
@@ -0,0 +1,25 @@
+#!/sbin/openrc-run
+supervisor="supervise-daemon"
+
+: ${command_user:=turn-rs:turn-rs}
+: ${logdir=/var/log/turn-rs}
+: ${_conf_path=/etc/turn-rs/turn-server.toml}
+
+name=turn-server
+description="Pure Rust turn server implementation"
+command="/usr/bin/turn-server"
+command_args="--config $_conf_path"
+command_background=true
+
+pidfile="/run/$RC_SVCNAME.pid"
+output_log="$logdir/output.log"
+error_log="$logdir/error.log"
+
+depend() {
+ need net
+}
+
+start_pre() {
+ checkpath -f -m 0644 -o "$command_user" "$output_log" "$error_log"
+ checkpath -f -m 0600 -o "$command_user" "$_conf_path"
+}
diff --git a/testing/turn-rs/turn-rs.pre-install b/testing/turn-rs/turn-rs.pre-install
new file mode 100644
index 00000000000..dc0cae739c8
--- /dev/null
+++ b/testing/turn-rs/turn-rs.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S turn-rs 2>/dev/null
+adduser -S -D -s /sbin/nologin -H -G turn-rs -g turn-rs turn-rs 2>/dev/null
+
+exit 0
diff --git a/testing/turnstile/APKBUILD b/testing/turnstile/APKBUILD
new file mode 100644
index 00000000000..d43cd72c14c
--- /dev/null
+++ b/testing/turnstile/APKBUILD
@@ -0,0 +1,42 @@
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=turnstile
+pkgver=0.1.8
+pkgrel=0
+pkgdesc="Independent session/login tracker"
+url="https://github.com/chimera-linux/turnstile"
+arch="all"
+license="BSD-2-Clause"
+makedepends="
+ linux-pam-dev
+ meson
+ scdoc
+ "
+subpackages="$pkgname-doc $pkgname-openrc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/chimera-linux/turnstile/archive/refs/tags/v$pkgver.tar.gz
+ turnstiled.confd
+ turnstiled.initd
+ "
+options="!check" # no tests
+
+build() {
+ abuild-meson \
+ -Db_lto=true \
+ -Ddinit=disabled \
+ -Dmanage_rundir=true \
+ . output
+ meson compile -C output
+}
+
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+
+ install -Dm755 "$srcdir"/turnstiled.initd "$pkgdir"/etc/init.d/turnstiled
+ install -Dm644 "$srcdir"/turnstiled.confd "$pkgdir"/etc/conf.d/turnstiled
+}
+
+sha512sums="
+f6fee2056707b480d0345c86c3fe0c81e00ad09f54e7b7ca447e805deef47a08a4ae05540a2f57c45d6253ee99d8c2fcf1e6e5f6cd7135dfca1941589271d726 turnstile-0.1.8.tar.gz
+4798d04b707e3b44467c1e75481a5123dbf4755ef1bdd09ac31d180762f67085a7030c4ba7d1f27b1ef30910785d8739375a730f32647c7d554142fac4d6b824 turnstiled.confd
+4824f233704b21e3a4ab931879f88ec716761065fd109038ea9a0c89383580c7a198e2372088b555cb894110b5067c26b99ac9c40c04bf9a2384af1417fa4ad0 turnstiled.initd
+"
diff --git a/testing/turnstile/turnstiled.confd b/testing/turnstile/turnstiled.confd
new file mode 100644
index 00000000000..c3a008de261
--- /dev/null
+++ b/testing/turnstile/turnstiled.confd
@@ -0,0 +1,2 @@
+# uncomment to not use supervisor
+supervisor=supervise-daemon
diff --git a/testing/turnstile/turnstiled.initd b/testing/turnstile/turnstiled.initd
new file mode 100644
index 00000000000..dfdecbd2c4e
--- /dev/null
+++ b/testing/turnstile/turnstiled.initd
@@ -0,0 +1,10 @@
+#!/sbin/openrc-run
+
+name=turnstiled
+command="/usr/bin/turnstiled"
+command_background=true
+pidfile="/run/$RC_SVCNAME.pid"
+
+depend() {
+ need seatd
+}
diff --git a/testing/twiggy/APKBUILD b/testing/twiggy/APKBUILD
index 3ddd4037155..aed853fc18d 100644
--- a/testing/twiggy/APKBUILD
+++ b/testing/twiggy/APKBUILD
@@ -2,16 +2,17 @@
# Maintainer: TBK <alpine@jjtc.eu>
pkgname=twiggy
pkgver=0.6.0
-pkgrel=1
+pkgrel=3
pkgdesc="Twiggy a code size profiler for Wasm"
url="https://github.com/rustwasm/twiggy"
arch="all !s390x !riscv64" # Limited by cargo
license="Apache-2.0"
-makedepends="cargo"
+makedepends="cargo cargo-auditable"
source="$pkgname-$pkgver.tar.gz::https://github.com/rustwasm/twiggy/archive/$pkgver.tar.gz"
+
build() {
- cargo build --release --locked
+ cargo auditable build --release --locked
}
check() {
diff --git a/testing/twinkle/APKBUILD b/testing/twinkle/APKBUILD
new file mode 100644
index 00000000000..2f8238772f7
--- /dev/null
+++ b/testing/twinkle/APKBUILD
@@ -0,0 +1,51 @@
+# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=twinkle
+pkgver=1.10.3
+pkgrel=2
+pkgdesc="SIP softphone"
+url="https://github.com/LubosD/twinkle"
+arch="all"
+license="GPL-2.0-or-later"
+makedepends="
+ alsa-lib-dev
+ bison
+ ccrtp-dev
+ cmake
+ commoncpp-dev
+ file-dev
+ flex
+ libsndfile-dev
+ libxml2-dev
+ qt5-qtbase-dev
+ qt5-qtdeclarative-dev
+ qt5-qttools-dev
+ readline-dev
+ samurai
+ speex-dev
+ speexdsp-dev
+"
+subpackages="$pkgname-doc"
+source="https://github.com/LubosD/twinkle/archive/refs/tags/v$pkgver/twinkle-$pkgver.tar.gz
+ glibc.patch
+ "
+options="!check" # no tests provided
+
+build() {
+ cmake -G Ninja -B build \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=True \
+ -DCMAKE_BUILD_TYPE=MinSizeRel \
+ -DWITH_SPEEX=ON
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+7b70a346e6d3f1dd08c1d019dd671da3cb3539815d8a14de7268b2bf43fc0b632834e00d3b63823b1338472a1b91f727a479e5381da8b1076327b112c8a9bea2 twinkle-1.10.3.tar.gz
+c537a0a83725435e60d436987713cd24f3e1a96ac0de5990a0fdeaeff8535baddc58ab567a217b9947938f6aede03d827de4ed6ffbdb28b15eb33390775700d8 glibc.patch
+"
diff --git a/testing/twinkle/glibc.patch b/testing/twinkle/glibc.patch
new file mode 100644
index 00000000000..004f9bd9e28
--- /dev/null
+++ b/testing/twinkle/glibc.patch
@@ -0,0 +1,22 @@
+--- a/src/sockets/dnssrv.cpp
++++ b/src/sockets/dnssrv.cpp
+@@ -162,7 +162,7 @@
+ result.clear();
+ for (ctr=0; ctr<num_srv; ctr++) {
+ name srvname;
+- if (ns_name_ntop (srv [ctr]+SRV_SERVER, srvname, MAXDNAME) < 0) {
++ if (ns_name_uncompress (names.buf, names.buf+names.len, srv [ctr]+SRV_SERVER, srvname, MAXDNAME) < 0) {
+ return -errno;
+ }
+
+--- a/src/threads/mutex.cpp
++++ b/src/threads/mutex.cpp
+@@ -36,7 +36,7 @@
+ pthread_mutexattr_init(&attr);
+
+
+- int ret = pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE_NP);
++ int ret = pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE);
+ if (ret != 0) throw string(
+ "t_mutex::t_mutex failed to create a recursive mutex.");
+
diff --git a/testing/txr/APKBUILD b/testing/txr/APKBUILD
deleted file mode 100644
index 8ed2427b40b..00000000000
--- a/testing/txr/APKBUILD
+++ /dev/null
@@ -1,42 +0,0 @@
-# Contributor: rubicon <rubicon@mailo.com>
-# Maintainer: rubicon <rubicon@mailo.com>
-pkgname=txr
-pkgver=276
-pkgrel=0
-pkgdesc="Programming language for convenient data munging"
-url="https://www.nongnu.org/txr/"
-# s390x: ftbfs (struct jmp in unwind.h not ported)
-# armhf: runtime error (open-subprocess used with non-string arg)
-# armv7: core dumped (while compiling stdlib/cadr.tl)
-# riscv64: ftbfs
-arch="all !s390x !armv7 !armhf !riscv64"
-license="BSD-2-Clause"
-makedepends="libffi-dev"
-subpackages="$pkgname-doc $pkgname-vim::noarch"
-source="https://www.kylheku.com/cgit/txr/snapshot/txr-$pkgver.tar.gz"
-
-build() {
- ./configure --prefix=/usr
- make
-}
-
-check() {
- make tests
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-vim() {
- pkgdesc="Vim syntax for $pkgname"
- depends=""
- install_if="$pkgname=$pkgver-r$pkgrel vim"
-
- install -Dvm644 "$builddir"/*.vim \
- -t "$subpkgdir"/usr/share/vim/vimfiles/syntax/
-}
-
-sha512sums="
-488f795fe6c9591be7ec85fb52f6c40a6e9e59e2add1f182a5bbdb0d4f712035d6f8e2bb32bdef44ca2f15bec7bf270624906030bfb539e28b9b782e74807d1a txr-276.tar.gz
-"
diff --git a/testing/typescript/APKBUILD b/testing/typescript/APKBUILD
new file mode 100644
index 00000000000..ca232a3b8ec
--- /dev/null
+++ b/testing/typescript/APKBUILD
@@ -0,0 +1,28 @@
+# Contributor: Díaz Urbaneja Diego <sodomon2@gmail.com>
+# Maintainer: Díaz Urbaneja Diego <sodomon2@gmail.com>
+pkgname=typescript
+pkgver=5.4.4
+pkgrel=0
+pkgdesc="TypeScript is a superset of JavaScript that compiles to clean JavaScript output."
+url="https://www.typescriptlang.org/"
+arch="noarch"
+license="Apache-2.0"
+depends="cmd:node"
+options="!check" # not implemented
+source="https://github.com/microsoft/TypeScript/releases/download/v$pkgver/typescript-$pkgver.tgz"
+builddir="$srcdir/package"
+
+package() {
+ local destdir="usr/share/node_modules/$pkgname"
+
+ mkdir -p "$pkgdir"/$destdir
+ cp -R "$builddir"/* "$pkgdir"/$destdir/
+
+ mkdir -p "$pkgdir"/usr/bin
+ ln -s /$destdir/bin/tsc "$pkgdir"/usr/bin/tsc
+ ln -s /$destdir/bin/tsserver "$pkgdir"/usr/bin/tsserver
+}
+
+sha512sums="
+74613656ff1ca55bf0dbcbfc1c23eac9bd3c1336c1511c43a6e849bd3aeeb128547c69e11c169f0ec2dd4b5121871c8be8125013ed9c4f77433c0bfe310ea82f typescript-5.4.4.tgz
+"
diff --git a/testing/typst-lsp/APKBUILD b/testing/typst-lsp/APKBUILD
new file mode 100644
index 00000000000..9e911209d08
--- /dev/null
+++ b/testing/typst-lsp/APKBUILD
@@ -0,0 +1,41 @@
+# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
+pkgname=typst-lsp
+pkgver=0.13.0
+pkgrel=0
+pkgdesc="Language server for typst"
+url="https://github.com/nvarner/typst-lsp"
+# typst, rust-analyzer
+arch="aarch64 ppc64le x86_64"
+license="MIT"
+depends="rust-analyzer"
+makedepends="
+ cargo
+ cargo-auditable
+ openssl-dev
+ "
+source="
+ https://github.com/nvarner/typst-lsp/archive/refs/tags/v$pkgver/typst-lsp-$pkgver.tar.gz
+ "
+options="net !check" # no tests
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build \
+ --release \
+ --frozen \
+ --no-default-features \
+ --features=remote-packages,native-tls
+}
+
+package() {
+ install -Dm755 target/release/typst-lsp -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+1287257320ab502d806d8df3d819ddfe803f98c96dfc9c9e50b7a1cd905527638bb8025107d828d54f846875b82d02e2862dc8a5da0e915009edb8ed133ba3f1 typst-lsp-0.13.0.tar.gz
+"
diff --git a/testing/typstfmt/APKBUILD b/testing/typstfmt/APKBUILD
new file mode 100644
index 00000000000..eae08b70f6b
--- /dev/null
+++ b/testing/typstfmt/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: lauren n. liberda <lauren@selfisekai.rocks>
+# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
+pkgname=typstfmt
+pkgver=0.2.7
+pkgrel=0
+pkgdesc="Basic formatter for the Typst language with a future"
+url="https://github.com/astrale-sharp/typstfmt"
+# typst
+arch="all !s390x !ppc64le !riscv64 !armhf"
+license="MIT"
+makedepends="cargo cargo-auditable"
+subpackages="$pkgname-doc"
+source="https://github.com/astrale-sharp/typstfmt/archive/$pkgver/typstfmt-$pkgver.tar.gz"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm755 target/release/typstfmt "$pkgdir"/usr/bin/typstfmt
+ install -Dm644 LICENSE.md -t "$pkgdir"/usr/share/licenses/$pkgname/
+}
+
+sha512sums="
+a274b9b26e9583494080a54d6dadf3c0f26db2846659c8fa29af6ca7a42120cb549eef57be2e7d8495a44c9c51d5f2b4d1ff5140f14670b17c12b62a505b5c22 typstfmt-0.2.7.tar.gz
+"
diff --git a/testing/u1db-qt/0001-point-qmlplugindump-to-qmlplugindump-qt5.patch b/testing/u1db-qt/0001-point-qmlplugindump-to-qmlplugindump-qt5.patch
new file mode 100644
index 00000000000..68f52f67698
--- /dev/null
+++ b/testing/u1db-qt/0001-point-qmlplugindump-to-qmlplugindump-qt5.patch
@@ -0,0 +1,25 @@
+From 55104fc641dc955ce0574c7b3ee67fc5ed249a94 Mon Sep 17 00:00:00 2001
+From: Brandon Boese <brandonboese@protonmail.com>
+Date: Sun, 26 Nov 2023 06:16:36 -0500
+Subject: [PATCH] point qmlplugindump to qmlplugindump-qt5
+
+---
+ modules/U1db/CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/modules/U1db/CMakeLists.txt b/modules/U1db/CMakeLists.txt
+index 05cc7c4..db4e97b 100644
+--- a/modules/U1db/CMakeLists.txt
++++ b/modules/U1db/CMakeLists.txt
+@@ -50,7 +50,7 @@ install(FILES qmldir
+ add_custom_command(
+ TARGET U1DBPlugin
+ POST_BUILD
+- COMMAND "qmlplugindump" "U1db" "1.0" "${CMAKE_BINARY_DIR}/modules" ">" "plugins.qmltypes"
++ COMMAND "qmlplugindump-qt5" "U1db" "1.0" "${CMAKE_BINARY_DIR}/modules" ">" "plugins.qmltypes"
+ WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
+ )
+
+--
+2.42.0
+
diff --git a/testing/u1db-qt/0002-point-qmltestrunner-to-qmltestrunner-qt5.patch b/testing/u1db-qt/0002-point-qmltestrunner-to-qmltestrunner-qt5.patch
new file mode 100644
index 00000000000..61738731e11
--- /dev/null
+++ b/testing/u1db-qt/0002-point-qmltestrunner-to-qmltestrunner-qt5.patch
@@ -0,0 +1,23 @@
+From eeaa315b792c728e18a46f41074a1839bf32ab92 Mon Sep 17 00:00:00 2001
+From: Brandon Boese <brandonboese@protonmail.com>
+Date: Sun, 26 Nov 2023 06:20:52 -0500
+Subject: [PATCH] point qmltestrunner to qmltestrunner-qt5
+
+---
+ tests/strict-qmltestrunner.sh | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/tests/strict-qmltestrunner.sh b/tests/strict-qmltestrunner.sh
+index 9986d1b..510451f 100755
+--- a/tests/strict-qmltestrunner.sh
++++ b/tests/strict-qmltestrunner.sh
+@@ -16,5 +16,5 @@
+ # along with this program. If not, see <http://www.gnu.org/licenses/>.
+ #
+ ################################################################################
+-qmltestrunner $* || exit 1
++qmltestrunner-qt5 $* || exit 1
+ test 0 -eq $(grep -c qwarn plugintest-xunit.xml) || exit 1
+--
+2.42.0
+
diff --git a/testing/u1db-qt/APKBUILD b/testing/u1db-qt/APKBUILD
new file mode 100644
index 00000000000..f49485fedc6
--- /dev/null
+++ b/testing/u1db-qt/APKBUILD
@@ -0,0 +1,45 @@
+# Maintainer: Luca Weiss <luca@z3ntu.xyz>
+# Contributor: Brandon Boese <brandonboese@protonmail.com>
+pkgname=u1db-qt
+pkgver=0.1.7
+pkgrel=0
+pkgdesc="Simple Qt5 binding and QtQuick2 plugin for U1DB"
+url="https://gitlab.com/ubports/development/core/u1db-qt"
+arch="all"
+license="GPL-3.0-only"
+makedepends="
+ cmake
+ samurai
+ qt5-qtdeclarative-dev
+ "
+checkdepends="
+ dbus-test-runner
+ "
+source="https://gitlab.com/ubports/development/core/u1db-qt/-/archive/$pkgver/u1db-qt-$pkgver.tar.gz
+ 0001-point-qmlplugindump-to-qmlplugindump-qt5.patch
+ 0002-point-qmltestrunner-to-qmltestrunner-qt5.patch
+ "
+options="!check" # requires a display
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=None
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+bd64c0f48e8a078c9393948d41e06eb13b337e6b5fa965cd01e2a854495b6fac1aa6567871d3f781952190c22a834f5fcc4f012499ef8374d0b985c21f57db0f u1db-qt-0.1.7.tar.gz
+69ae5a296e43d5429a4e32deaa777015d2ec2c8ca8a4946d6da36dd4aa934345f41e2449d16360a3f8ac061acf2e9f9b91c8ee777e849f399ec4818c10e39f17 0001-point-qmlplugindump-to-qmlplugindump-qt5.patch
+f57ec76224aab9600c2d0bbcd596231c1fe92f24475eba295b0bbbcc301df9f57695d9f2e3ed65f678f1e888081a782fa8789a5f721a1cb3d6cbe7f894ba86da 0002-point-qmltestrunner-to-qmltestrunner-qt5.patch
+"
diff --git a/testing/uasm/0001-Allow-multiple-symbol-definitions.patch b/testing/uasm/0001-Allow-multiple-symbol-definitions.patch
deleted file mode 100644
index 143fd760d6a..00000000000
--- a/testing/uasm/0001-Allow-multiple-symbol-definitions.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 36e0be7bf3a3314eb5632f46c71fc8bba559c40e Mon Sep 17 00:00:00 2001
-From: Olliver Schinagl <oliver@schinagl.nl>
-Date: Sat, 13 Feb 2021 14:36:55 +0100
-Subject: [PATCH] Allow multiple symbol definitions
-
-Compiling the codebase with GCC results in many errors about multiple
-redefinitions, such as:
-
-/usr/lib/gcc/x86_64-alpine-linux-musl/10.2.1/../../../../x86_64-alpine-linux-musl/bin/ld: GccUnixR/orgfixup.o:(.bss+0x8): multiple definition of `MODULEARCH'; GccUnixR/main.o:(.bss+0x0): first defined here
-/usr/lib/gcc/x86_64-alpine-linux-musl/10.2.1/../../../../x86_64-alpine-linux-musl/bin/ld: GccUnixR/orgfixup.o:(.bss+0x9): multiple definition of `ZEROLOCALS'; GccUnixR/main.o:(.bss+0x1): first defined here
-
-while this could be limited to musl, I believe even binutils has marked
-this as deprecated. There is a flag however allowing to work-around
-this, allowing proper compilation.
-
-Signed-off-by: Olliver Schinagl <oliver@schinagl.nl>
----
- gccLinux64.mak | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/gccLinux64.mak b/gccLinux64.mak
-index eb6e381..fc9c623 100644
---- a/gccLinux64.mak
-+++ b/gccLinux64.mak
-@@ -40,7 +40,7 @@ $(OUTD):
-
- $(OUTD)/$(TARGET1) : $(OUTD)/main.o $(proj_obj)
- ifeq ($(DEBUG),0)
-- $(CC) -D __UNIX__ $(OUTD)/main.o $(proj_obj) -s -o $@ -Wl,-Map,$(OUTD)/$(TARGET1).map
-+ $(CC) -D __UNIX__ $(OUTD)/main.o $(proj_obj) -s -o $@ -Wl,--allow-multiple-definition,-Map,$(OUTD)/$(TARGET1).map
- else
- $(CC) -D __UNIX__ $(OUTD)/main.o $(proj_obj) -o $@ -Wl,-Map,$(OUTD)/$(TARGET1).map
- endif
---
-2.30.0
-
diff --git a/testing/uasm/APKBUILD b/testing/uasm/APKBUILD
index 83edc4e01fc..ff19af3f550 100644
--- a/testing/uasm/APKBUILD
+++ b/testing/uasm/APKBUILD
@@ -1,30 +1,27 @@
# Contributor: Olliver Schinagl <oliver@schinagl.nl>
# Maintainer: Olliver Schinagl <oliver@schinagl.nl>
-pkgname="uasm"
-pkgver="2.50.0"
+pkgname=uasm
+pkgver=2.56.2
pkgrel=0
pkgdesc="UASM - Macro Assembler"
url="https://www.terraspace.co.uk/uasm.html"
arch="all"
license="custom"
options="!check !spdx" # No tests available, license is the JWasm open source license
-_commitish="16a853bd6de807fe2c42569f8375a029684c0f22" # UASM doesn't tag, but branch per version
-source="
- ${pkgname}-${pkgver}.zip::https://github.com/Terraspace/UASM/archive/${_commitish}.zip
- 0001-Allow-multiple-symbol-definitions.patch
-"
-builddir="${srcdir}/UASM-${_commitish}/"
+source="https://github.com/Terraspace/UASM/archive/v$pkgver/uasm-$pkgver.tar.gz"
+builddir="$srcdir/UASM-$pkgver"
build() {
- make ${JOBS:+-j ${JOBS}} -f "gccLinux64.mak"
+ make -f gccLinux64.mak
}
package() {
- install -D -m 0755 "${builddir}/GccUnixR/uasm" \
- "${pkgdir}/usr/bin/uasm"
- install -D -m 0755 "${builddir}/License.txt" \
- "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+ install -Dm0755 GccUnixR/uasm \
+ "$pkgdir"/usr/bin/uasm
+ install -Dm0644 License.txt \
+ "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
}
-sha512sums="63ceff7cf1947f4bdef3063e660e17de3f5df43fefcdfa92061d7f1cbfc3c2f441c6fad06665b5ac288b39ebe54526aaa5dfe77d9e49ec68bb5bcad5e66140a1 uasm-2.50.0.zip
-f276855ee446a66115b3a8e0a12f920ca7dd741862fcf6ef8fd21f3c5874a3be6545404368ad340d872b433c391f69d9e45bc3d92adf4584a2b192f1b890df0e 0001-Allow-multiple-symbol-definitions.patch"
+sha512sums="
+1f6c1037909d012f3293985c4e0516f4b61497de23cac6bbb58db735efb512599c0bba5d60d8ce999e6afc57e44484a094bf10f0ee185a51afd826f5541c9337 uasm-2.56.2.tar.gz
+"
diff --git a/testing/ubase/APKBUILD b/testing/ubase/APKBUILD
index 63598359106..fa03628e728 100644
--- a/testing/ubase/APKBUILD
+++ b/testing/ubase/APKBUILD
@@ -1,10 +1,10 @@
# Contributor: Ivan Tham <pickfire@riseup.net>
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer: Drew DeVault <sir@cmpwn.com>
+# Maintainer:
pkgname=ubase
pkgver=20200605
_gitrev=f152e7fc3bd1675060818ac224f96541a2d9d6e7
-pkgrel=1
+pkgrel=2
pkgdesc="Suckless collection of unportable base"
url="https://github.com/michaelforney/ubase"
arch="all"
diff --git a/testing/ubuntu-archive-keyring/APKBUILD b/testing/ubuntu-archive-keyring/APKBUILD
index 703afc30d70..b5fbc96e264 100644
--- a/testing/ubuntu-archive-keyring/APKBUILD
+++ b/testing/ubuntu-archive-keyring/APKBUILD
@@ -1,35 +1,23 @@
# Contributor: Francesco Colista <fcolista@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=ubuntu-archive-keyring
-pkgver=2016.05.13.1
-_pkgver=${pkgver%.*}${pkgver//*./-}
-pkgrel=1
-pkgdesc="GnuPG archive keys of the Debian archive"
-url="https://packages.debian.org/sid/debian-archive-keyring"
+pkgver=2023.11.28.1
+pkgrel=0
+pkgdesc="GnuPG keys of the Ubuntu Cloud Archive"
+url="https://launchpad.net/ubuntu/+source/ubuntu-keyring"
arch="noarch"
license="GPL"
depends="gnupg"
-makedepends="tar xz"
options="!check" # upstream doesn't have a test suite.
subpackages="$pkgname-doc"
-source="https://deb.debian.org/debian/pool/main/u/ubuntu-keyring/${pkgname}_${_pkgver}_all.deb"
-
-unpack() {
- cd "$srcdir"
- for i in $source; do
- case $i in
- *.deb) ar x ${i##*/} || return 1 ;;
- esac
- done
-}
-
-build() {
- return 0
-}
+source="https://launchpad.net/ubuntu/+archive/primary/+sourcefiles/ubuntu-keyring/$pkgver/ubuntu-keyring_$pkgver.tar.xz"
+builddir="$srcdir/ubuntu-keyring"
package() {
- mkdir -p "$pkgdir"
- tar -xJf "$srcdir"/data.tar.xz -C "$pkgdir"/
+ install -Dm644 keyrings/* -t "$pkgdir"/usr/share/keyrings/
+ install -Dm644 debian/copyright -t "$pkgdir"/usr/share/licenses/$pkgname/
}
-sha512sums="8234457c379d2a3d0524e5ab5abf806aa8c49806ec863e7fd1d95a63c2b32ccbcaf2375e186de3bd0611b1d8f227d4ee03428d63f30f5b45597036fd5d5a0a56 ubuntu-archive-keyring_2016.05.13-1_all.deb"
+sha512sums="
+b17824a91d6e25c5658eae8d9ae509a4158b406768d5d4a8e117a230226ab7cd4327cf7e5b9bbb7baae7c66f3807d27926de85a1ea5c11a82684a890aeb8fd18 ubuntu-keyring_2023.11.28.1.tar.xz
+"
diff --git a/testing/uclient/APKBUILD b/testing/uclient/APKBUILD
new file mode 100644
index 00000000000..26f8a661657
--- /dev/null
+++ b/testing/uclient/APKBUILD
@@ -0,0 +1,46 @@
+# Maintainer: Ariadne Conill <ariadne@dereferenced.org>
+pkgname=uclient
+pkgver=20210514
+pkgrel=0
+pkgdesc="ustream-based HTTP client library"
+url="https://git.openwrt.org/project/uclient.git"
+arch="all"
+license="ISC"
+depends=""
+depends_dev="libubox-dev ustream-ssl-dev"
+makedepends="cmake $depends_dev"
+subpackages="$pkgname-dev $pkgname-fetch:_fetch"
+_owrtgit=6a6011df
+_owrtver="${pkgver:0:4}-${pkgver:4:2}-${pkgver:6:2}-${_owrtgit}"
+source="https://sources.openwrt.org/uclient-${_owrtver}.tar.xz"
+builddir="$srcdir/uclient-${_owrtver}"
+
+build() {
+ if [ "$CBUILD" != "$CHOST" ]; then
+ CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ cmake -B build \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=True \
+ -DCMAKE_BUILD_TYPE=None \
+ $CMAKE_CROSSOPTS .
+ cmake --build build
+}
+
+check() {
+ cd build
+ CTEST_OUTPUT_ON_FAILURE=TRUE ctest
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+_fetch() {
+ amove usr/bin/uclient-fetch
+}
+
+sha512sums="
+91f0beccb367f39da998e46e160f5f73fcf7755f0ea88b72a970d9377efb5390deb6dd4d717a1b7b7cefffc61135cc1ffa24f1df78b87adb94a1a37b0b14abb3 uclient-2021-05-14-6a6011df.tar.xz
+"
diff --git a/testing/ucspi-tcp/APKBUILD b/testing/ucspi-tcp/APKBUILD
index 0927f1dfe4b..02bac52750e 100644
--- a/testing/ucspi-tcp/APKBUILD
+++ b/testing/ucspi-tcp/APKBUILD
@@ -3,7 +3,7 @@
pkgname=ucspi-tcp
pkgver=0.88
-pkgrel=1
+pkgrel=2
pkgdesc="Easy-to-use command-line tools for building TCP client-server applications."
url="https://cr.yp.to/ucspi-tcp.html"
arch="all"
diff --git a/testing/udpcast/APKBUILD b/testing/udpcast/APKBUILD
index d41e344047a..a90e10f7d20 100644
--- a/testing/udpcast/APKBUILD
+++ b/testing/udpcast/APKBUILD
@@ -1,21 +1,28 @@
-# Contributor:
-# Maintainer: Jay Christopherson <jaychris@gmail.com>
+# Contributor: Jay Christopherson <jaychris@gmail.com>
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=udpcast
-pkgver=20211207
-pkgrel=0
-pkgdesc="Port of UDPcast file transfer tool"
-url="https://www.udpcast.linux.lu/index.html"
+pkgver=20230924
+pkgrel=1
+pkgdesc="Multicast file transfer tool"
+url="https://www.udpcast.linux.lu/"
arch="all"
license="GPL-2.0-or-later AND BSD-2-Clause"
-makedepends="$depends_dev linux-headers m4 perl"
-subpackages="$pkgname-doc $pkgname-dev"
+makedepends="linux-headers m4 perl"
+subpackages="$pkgname-dev $pkgname-doc"
source="https://www.udpcast.linux.lu/download/udpcast-$pkgver.tar.gz
console.patch
fix-includes.patch
"
+options="!check" # no tests provided
build() {
- ./configure --prefix=/usr
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var
make
}
@@ -24,7 +31,7 @@ package() {
}
sha512sums="
-89010c781d99a60e335213e88867c9114b51f3d75bd4ebfa38bcd1382e5925be4f316faf8c24ea55b087edb2115e18b5fd3cceac70a65371f91227528d218e89 udpcast-20211207.tar.gz
+3b56e6e524d8e7ebc230cfecc9e3af590ad29963cba44f24663d0f361c294c85a54fa8cedbdf48276a76fcf772ce9a2b2d65854f71d8336e73a98aec56b822bc udpcast-20230924.tar.gz
7abfcf317b5985f680258abc913a48cfd21a26f77625780e57d93960f7efeb0f214ce4d4188bd75cedb9dccac5a5fe9befed2044e3df3b0e8228ac6e0663c41c console.patch
f10cc923f445fc5e0e828d2e7d21febcaa16a1ec65538c5736ae4eadd3251ab65740b827f9d5bfb77b5ce5908a490588751d349cf5f711a41951ddcee090de8a fix-includes.patch
"
diff --git a/testing/udpt/APKBUILD b/testing/udpt/APKBUILD
index 217c60a296a..cca54a0fd6b 100644
--- a/testing/udpt/APKBUILD
+++ b/testing/udpt/APKBUILD
@@ -1,30 +1,34 @@
# Contributor: Thomas Kienlen <kommander@laposte.net>
# Maintainer: Thomas Kienlen <kommander@laposte.net>
pkgname=udpt
-pkgver=3.1.1
+pkgver=3.1.2
pkgrel=0
pkgdesc="Lightweight UDP torrent tracker"
url="https://github.com/naim94a/udpt"
-arch="x86_64 armv7 armhf aarch64 x86 ppc64le" # limited by rust/cargo
+arch="all"
license="MIT"
-makedepends="cargo"
+makedepends="cargo cargo-auditable"
pkgusers="udpt"
pkggroups="udpt"
install="udpt.pre-install"
subpackages="$pkgname-openrc"
-source="https://github.com/naim94a/udpt/archive/udpt-$pkgver/udpt-$pkgver.tar.gz
+source="https://github.com/naim94a/udpt/archive/refs/tags/v$pkgver/udpt-$pkgver.tar.gz
+ lock.patch
udpt.initd
udpt.conf
- cargo.toml.patch
"
-builddir="$srcdir/udpt-udpt-$pkgver"
+
+prepare() {
+ default_prepare
+ cargo fetch --target="$CTARGET" --locked
+}
build() {
- cargo build --release --locked
+ cargo auditable build --release --frozen
}
check() {
- cargo test --locked --target-dir=target
+ cargo test --frozen
}
package() {
@@ -34,8 +38,8 @@ package() {
}
sha512sums="
-05a707ec22d0d27ef7ed47eb2144b27c448ae48cc78d7fa9492a81911a7a8759768b079ab71df2a1ae63897241b70712dc0728fe6877481680d53e87536b1ff5 udpt-3.1.1.tar.gz
+de0d715a87be3568448c61ae9b6484c4b9ad5863d956119ed80b3e821135208f59ca0a06dfa027b501dae51596d30f8f4ea81aba235f1f8464c77b9acc49e909 udpt-3.1.2.tar.gz
+b28ecc070fe27b7d71fa8812f5dc7412c1bbd28bbc160028fb8abf65c6408bbd39d416aa931ef41dd1733d9f92a54172e41b6083a8ed5ac996b2bb557e979f84 lock.patch
e233e4d76a0ad458579810ebb9d5697604bfebb0f51f218bcd27ceff55d2a86c50bc28b278da6793f6e688492eb962043f1e876852b3d8dcec046bff56abe78b udpt.initd
9646e424a2fe4355745241ce84f989453bf75b26bad772d2ba7e72eade6b51d5f8d4b6e3eb671edff3c892a47dda029a3aed93276a3a4f992db13cce57e1521d udpt.conf
-a154f539a10419fb7f3ff3c47938d15960ef74f41c537c8dbc8435a460b506506c431b1331d4e6b62dd6aaf0b7cf6d7f98fd17b9d49779043a308b6b4152497c cargo.toml.patch
"
diff --git a/testing/udpt/cargo.toml.patch b/testing/udpt/cargo.toml.patch
deleted file mode 100644
index ae2f8d33f21..00000000000
--- a/testing/udpt/cargo.toml.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-Optimize binary size (2.3 MB -> 1.5 MB)
-
---- a/Cargo.toml
-+++ b/Cargo.toml
-@@ -6,7 +6,10 @@ description = "High performance torrent
- edition = "2018"
-
- [profile.release]
--lto = "fat"
-+codegen-units = 1
-+lto = true
-+opt-level = "z"
-+panic = "abort"
-
- [dependencies]
- serde = {version = "1.0", features = ["derive"]}
diff --git a/testing/udpt/lock.patch b/testing/udpt/lock.patch
new file mode 100644
index 00000000000..e6dc30954a7
--- /dev/null
+++ b/testing/udpt/lock.patch
@@ -0,0 +1,13 @@
+diff --git a/Cargo.lock b/Cargo.lock
+index 48cd614..7dfed24 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -800,7 +800,7 @@ checksum = "dcf81ac59edc17cc8697ff311e8f5ef2d99fcbd9817b34cec66f90b6c3dfd987"
+
+ [[package]]
+ name = "udpt-rs"
+-version = "3.1.1"
++version = "3.1.2"
+ dependencies = [
+ "async-compression",
+ "binascii",
diff --git a/testing/ueberzug/APKBUILD b/testing/ueberzug/APKBUILD
new file mode 100644
index 00000000000..c5a9bba09ea
--- /dev/null
+++ b/testing/ueberzug/APKBUILD
@@ -0,0 +1,40 @@
+# Contributor: Sergiy Stupar <owner@sestolab.pp.ua>
+# Maintainer: Sergiy Stupar <owner@sestolab.pp.ua>
+pkgname=ueberzug
+pkgver=18.2.2
+pkgrel=1
+pkgdesc="Command line util which allows one to draw images on terminals by using child windows"
+url="https://github.com/ueber-devel/ueberzug"
+arch="all"
+license="GPL-3.0-or-later"
+depends="
+ py3-attrs
+ py3-docopt
+ py3-pillow
+ "
+makedepends="
+ libxext-dev
+ libxres-dev
+ py3-gpep517
+ py3-setuptools
+ py3-wheel
+ python3-dev
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/ueber-devel/ueberzug/archive/$pkgver.tar.gz"
+options="!check" # No tests
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+9253b687000a36a9d90408a6760c2ee8a78e48eabb72cab8fb5fb42bb7eaaacec6695b7c1e5bb51bfe651e4a06d19df0d9a82800054ff954c4825349fa72b872 ueberzug-18.2.2.tar.gz
+"
diff --git a/testing/uefitool/APKBUILD b/testing/uefitool/APKBUILD
index 4b8fea5d2c7..77594c54014 100644
--- a/testing/uefitool/APKBUILD
+++ b/testing/uefitool/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Mogens Jensen <mogens-jensen@protonmail.com>
pkgname=uefitool
pkgver=0.28.0
-pkgrel=0
+pkgrel=1
pkgdesc="UEFI firmware image viewer and editor"
url="https://github.com/LongSoft/UEFITool"
arch="all"
diff --git a/testing/uhd/APKBUILD b/testing/uhd/APKBUILD
deleted file mode 100644
index f8884821c0e..00000000000
--- a/testing/uhd/APKBUILD
+++ /dev/null
@@ -1,40 +0,0 @@
-# Contributor: psykose <alice@ayaya.dev>
-# Maintainer: psykose <alice@ayaya.dev>
-pkgname=uhd
-pkgver=4.2.0.0
-pkgrel=1
-pkgdesc="USRP Hardware Driver"
-url="https://github.com/EttusResearch/uhd"
-options="!check" # no tests
-arch="all !armhf !armv7 !s390x" # build failure
-license="GPL-3.0-or-later"
-makedepends="
- boost-dev
- cmake
- doxygen
- libusb-dev
- py3-mako
- py3-ruamel.yaml
- python3-dev
- samurai
- "
-subpackages="$pkgname-dev $pkgname-libs $pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/EttusResearch/uhd/archive/refs/tags/v$pkgver.tar.gz"
-
-build() {
- cmake -B build-host -G Ninja \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DCMAKE_BUILD_TYPE=MinSizeRel \
- host
- cmake --build build-host
- sed -i "s|Version:.*|Version: $pkgver|" build-host/uhd.pc
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build-host
-}
-
-sha512sums="
-a5f105a8765a06e53bed17dee760dfa985d40a97c61ca243127c8a912378d6f5ae81170a48e8e5f92a238bcfd66742798043b3fb0119e574dbac74291f15ec9c uhd-4.2.0.0.tar.gz
-"
diff --git a/testing/uhubctl/APKBUILD b/testing/uhubctl/APKBUILD
deleted file mode 100644
index 63a455f9350..00000000000
--- a/testing/uhubctl/APKBUILD
+++ /dev/null
@@ -1,24 +0,0 @@
-# Contributor: Steven Honson <steven@honson.id.au>
-# Maintainer: Steven Honson <steven@honson.id.au>
-pkgname=uhubctl
-pkgver=2.4.0
-pkgrel=0
-pkgdesc="USB hub per-port power control"
-url="https://github.com/mvp/uhubctl"
-license="GPL-2.0-only"
-arch="all"
-makedepends="libusb-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/mvp/uhubctl/archive/v$pkgver.tar.gz"
-options="!check" # no test suite
-
-build() {
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-d7f07679c4678565ce0174e1eb591263fae5629dd6fbb5aaa0321ca10176b8b2d662e75a3019caeb83aaf470c8386188848ba3095e1006451e8710b2a2c9bb1d uhubctl-2.4.0.tar.gz
-"
diff --git a/testing/undock/APKBUILD b/testing/undock/APKBUILD
new file mode 100644
index 00000000000..0588f1f8449
--- /dev/null
+++ b/testing/undock/APKBUILD
@@ -0,0 +1,35 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=undock
+pkgver=0.7.0
+pkgrel=2
+pkgdesc="Tool to extract contents of a container image into a local folder"
+url="https://crazymax.dev/undock/"
+arch="all"
+license="MIT"
+makedepends="go linux-headers gpgme-dev btrfs-progs-dev lvm2-dev sqlite-dev"
+source="$pkgname-$pkgver.tar.gz::https://github.com/crazy-max/undock/archive/refs/tags/v$pkgver.tar.gz"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+_gotags="containers_image_openpgp exclude_graphdriver_btrfs exclude_graphdriver_devicemapper libsqlite3"
+
+build() {
+ go build -v -o bin/$pkgname \
+ -ldflags "-X main.version=$pkgver" \
+ -tags "$_gotags" \
+ ./cmd
+}
+
+check() {
+ go test -tags "$_gotags" ./...
+}
+
+package() {
+ install -Dm755 bin/$pkgname -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+ac3bd91a67445b12ea6c5f9a5e40055a99da1718679fcb670cdd35c47d7bab67dd8fe8563baf922baeb741df9e0a4cd82b4bcfdc2cf2e65c19ed2b848354c18d undock-0.7.0.tar.gz
+"
diff --git a/testing/unicorn/APKBUILD b/testing/unicorn/APKBUILD
new file mode 100644
index 00000000000..7b204655408
--- /dev/null
+++ b/testing/unicorn/APKBUILD
@@ -0,0 +1,65 @@
+# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=unicorn
+pkgver=2.0.1
+pkgrel=3
+pkgdesc="Unicorn CPU emulator engine"
+url="https://www.unicorn-engine.org/"
+# ppc: fails check
+# rest: ftbfs
+arch="all !armv7 !armhf !ppc64le !s390x"
+license="GPL-2.0-or-later"
+makedepends="cmake linux-headers python3 py3-setuptools py3-gpep517 py3-wheel samurai"
+subpackages="$pkgname-dev py3-$pkgname-pyc:pyc py3-unicorn:py3"
+source="https://github.com/unicorn-engine/unicorn/archive/refs/tags/$pkgver/unicorn-$pkgver.tar.gz
+ endian.patch
+ python-libdir.patch
+ "
+
+# secfixes:
+# 2.0.1-r0:
+# - CVE-2022-29693
+# - CVE-2022-29694
+# - CVE-2022-29695
+
+build() {
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib
+ cmake --build build
+
+ cd bindings/python
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+check() {
+ cd build
+ CTEST_OUTPUT_ON_FAILURE=TRUE ctest
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+
+ cd bindings/python
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
+
+ # dupe of parent package
+ rm -r "$pkgdir"/usr/lib/python3*/site-packages/unicorn/lib/
+}
+
+py3() {
+ pkgdesc="$pkgdesc (Python bindings)"
+ depends="python3 $pkgname=$pkgver-r$pkgrel py3-setuptools"
+
+ amove usr/lib/python3*
+}
+
+sha512sums="
+4249d33d38614ea1ca51e38c7838cb276306100aa44c65ad1b3e39304e4b856ac643a9c6f9d13678fc07bea58989a08b64653d17afe9e62bcef2936ba63e1b1f unicorn-2.0.1.tar.gz
+c1373171c1d9ee106f9dab94e7d283b3b8c1eb19013ffc96d1b6156c1571057f9984f08db4f07ea98d6bd7855a6aa39386ca33cade4bb9e367cb8b2705c865c1 endian.patch
+994150b8625ff7198ef344f85b88f62a3cb9fe429a8985d03ec049fd99f223ccc8b59a1a909d025a0ef387fab4b2c22b96b5ee4de93efdda57a7747fae080704 python-libdir.patch
+"
diff --git a/testing/unicorn/endian.patch b/testing/unicorn/endian.patch
new file mode 100644
index 00000000000..0506d1354c4
--- /dev/null
+++ b/testing/unicorn/endian.patch
@@ -0,0 +1,57 @@
+diff --git a/tests/unit/endian.h b/tests/unit/endian.h
+index 5bc8630..3e24763 100644
+--- a/tests/unit/endian.h
++++ b/tests/unit/endian.h
+@@ -29,47 +29,13 @@
+ #ifndef BOOST_DETAIL_ENDIAN_HPP
+ #define BOOST_DETAIL_ENDIAN_HPP
+
+-// GNU libc offers the helpful header <endian.h> which defines
+-// __BYTE_ORDER
+-
+-#if defined (__GLIBC__)
+-# include <endian.h>
+-# if (__BYTE_ORDER == __LITTLE_ENDIAN)
+-# define BOOST_LITTLE_ENDIAN
+-# elif (__BYTE_ORDER == __BIG_ENDIAN)
+-# define BOOST_BIG_ENDIAN
+-# elif (__BYTE_ORDER == __PDP_ENDIAN)
+-# define BOOST_PDP_ENDIAN
+-# else
+-# error Unknown machine endianness detected.
+-# endif
+-# define BOOST_BYTE_ORDER __BYTE_ORDER
+-#elif defined(_BIG_ENDIAN) && !defined(_LITTLE_ENDIAN)
+-# define BOOST_BIG_ENDIAN
+-# define BOOST_BYTE_ORDER 4321
+-#elif defined(_LITTLE_ENDIAN) && !defined(_BIG_ENDIAN)
++#include <endian.h>
++#if (__BYTE_ORDER == __LITTLE_ENDIAN)
+ # define BOOST_LITTLE_ENDIAN
+-# define BOOST_BYTE_ORDER 1234
+-#elif defined(__sparc) || defined(__sparc__) \
+- || defined(_POWER) || defined(__powerpc__) \
+- || defined(__ppc__) || defined(__hpux) || defined(__hppa) \
+- || defined(_MIPSEB) || defined(_POWER) \
+- || defined(__s390__)
++#elif (__BYTE_ORDER == __BIG_ENDIAN)
+ # define BOOST_BIG_ENDIAN
+-# define BOOST_BYTE_ORDER 4321
+-#elif defined(__i386__) || defined(__alpha__) \
+- || defined(__ia64) || defined(__ia64__) \
+- || defined(_M_IX86) || defined(_M_IA64) \
+- || defined(_M_ALPHA) || defined(__amd64) \
+- || defined(__amd64__) || defined(_M_AMD64) \
+- || defined(__x86_64) || defined(__x86_64__) \
+- || defined(_M_X64) || defined(__bfin__)
+-
+-# define BOOST_LITTLE_ENDIAN
+-# define BOOST_BYTE_ORDER 1234
+-#else
+-# error The file boost/detail/endian.hpp needs to be set up for your CPU type.
++#elif (__BYTE_ORDER == __PDP_ENDIAN)
++# define BOOST_PDP_ENDIAN
+ #endif
+
+-
+ #endif
diff --git a/testing/unicorn/python-libdir.patch b/testing/unicorn/python-libdir.patch
new file mode 100644
index 00000000000..080acb0cef6
--- /dev/null
+++ b/testing/unicorn/python-libdir.patch
@@ -0,0 +1,13 @@
+diff --git a/bindings/python/unicorn/unicorn.py b/bindings/python/unicorn/unicorn.py
+index c782356..b7d0be2 100644
+--- a/bindings/python/unicorn/unicorn.py
++++ b/bindings/python/unicorn/unicorn.py
+@@ -86,7 +86,7 @@ _path_list = [os.getenv('LIBUNICORN_PATH', None),
+ os.path.join(os.path.split(__file__)[0], 'lib'),
+ '',
+ distutils.sysconfig.get_python_lib(),
+- "/usr/local/lib/" if sys.platform == 'darwin' else '/usr/lib64',
++ "/usr/local/lib/" if sys.platform == 'darwin' else '/usr/lib',
+ os.getenv('PATH', '')]
+
+ #print(_path_list)
diff --git a/testing/unit-php81/APKBUILD b/testing/unit-php81/APKBUILD
new file mode 100644
index 00000000000..3de005e1ce1
--- /dev/null
+++ b/testing/unit-php81/APKBUILD
@@ -0,0 +1,73 @@
+# Contributor: André Klitzing <aklitzing@gmail.com>
+# Contributor: Jakub Jirutka <jakub@jirutka.cz>
+# Maintainer: Andy Postnikov <apostnikov@gmail.com>
+pkgname=unit-php81
+pkgver=1.32.1
+pkgrel=0
+pkgdesc="PHP 8.1 module for NGINX Unit"
+url="https://unit.nginx.org/"
+arch="all"
+license="Apache-2.0"
+_phpver=81
+depends="unit"
+makedepends="
+ linux-headers
+ openssl-dev>3
+ php$_phpver-dev
+ php$_phpver-embed
+ "
+checkdepends="procps-ng
+ py3-openssl
+ py3-pytest
+ php$_phpver-opcache
+ "
+source="https://unit.nginx.org/download/unit-$pkgver.tar.gz
+ phpver.patch
+ fix-tls-tests.patch
+ "
+builddir="$srcdir/unit-$pkgver"
+
+build() {
+ ./configure \
+ --prefix="/usr" \
+ --localstatedir="/var" \
+ --statedir="/var/lib/unit" \
+ --control="unix:/run/control.unit.sock" \
+ --pid="/run/unit.pid" \
+ --log="/var/log/unit.log" \
+ --tmpdir=/tmp \
+ --modulesdir="/usr/lib/unit/modules" \
+ --openssl \
+ --user=unit \
+ --group=unit \
+ --tests
+ ./configure php --module=php$_phpver --config=php-config$_phpver
+
+ make
+ make php$_phpver tests
+}
+
+check() {
+ # FIXME: some tests fail in CI or locally in checkroot too
+ local _fds=160 # fds leaking in tests
+ local _allow_fail=no
+ case "$CARCH" in
+ armhf | armv7) _allow_fail=yes ;; # segfault
+ esac
+ pytest test --fds-threshold=$_fds -k "
+ test_php \
+ and not test_php_isolation \
+ and not test_php_application_forbidden \
+ and not test_php_application_shared_opcache \
+ " || [ "$_allow_fail" = yes ]
+}
+
+package() {
+ make php$_phpver-install DESTDIR="$pkgdir"
+}
+
+sha512sums="
+159b36f7afb8857188c9b64ee192e18d6990da3733caafcfb684b98e3f5182a7589ed2439f32af0cd3c763a3fa73f061f5a73ef01894182b1c12a4cd324c528a unit-1.32.1.tar.gz
+2fe9966f54fd5d23316810b0260d966e2093c303d8a9ecea693971fe2243c579ed5db0e41e01fc01e56801387bd19cc72f5b26c45d21e5d48084e9ded384965b phpver.patch
+aae610dd2e8056d278397af708926a8e24f282158dc539182f9dfd44582f6b8bba1a57df7769539572f4268db305d84f12eb9fe07dfeec9a8781a6f66ca28386 fix-tls-tests.patch
+"
diff --git a/testing/unit-php81/fix-tls-tests.patch b/testing/unit-php81/fix-tls-tests.patch
new file mode 100644
index 00000000000..fa8e35179c6
--- /dev/null
+++ b/testing/unit-php81/fix-tls-tests.patch
@@ -0,0 +1,40 @@
+Patch-Source: https://github.com/nginx/unit/commit/a625a0b1f0d822b3224b7b29565fe9733b634afd
+From a625a0b1f0d822b3224b7b29565fe9733b634afd Mon Sep 17 00:00:00 2001
+From: Andrei Zeliankou <zelenkov@nginx.com>
+Date: Mon, 8 Apr 2024 02:18:37 +0100
+Subject: [PATCH] Tests: compatibility with OpenSSL 3.2.0
+
+OpenSSL 3.2.0 generates X.509v3 certificates by default. These
+certificates, even self-signed, cannot sign other certificates unless
+"CA:TRUE" is explicitly set in the basicConstraints extension.
+As a result, tests attempting this are currently failing.
+
+Fix is to provide "CA:TRUE" in the basicConstraints for self-signed root
+certificates used in "openssl ca" commands.
+
+Closes: https://github.com/nginx/unit/issues/1202
+Tested-by: Andrew Clayton <a.clayton@nginx.com>
+Reviewed-by: Andrew Clayton <a.clayton@nginx.com>
+---
+ test/unit/applications/tls.py | 6 +++++-
+ 1 file changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/test/unit/applications/tls.py b/test/unit/applications/tls.py
+index 75354dd91..b48293be6 100644
+--- a/test/unit/applications/tls.py
++++ b/test/unit/applications/tls.py
+@@ -85,9 +85,13 @@ def openssl_conf(self, rewrite=False, alt_names=None):
+ default_bits = 2048
+ encrypt_key = no
+ distinguished_name = req_distinguished_name
++x509_extensions = myca_extensions
+
+ {a_sec if alt_names else ""}
+-[ req_distinguished_name ]'''
++[ req_distinguished_name ]
++
++[ myca_extensions ]
++basicConstraints = critical,CA:TRUE'''
+ )
+
+ def load(self, script, name=None):
diff --git a/testing/unit-php81/phpver.patch b/testing/unit-php81/phpver.patch
new file mode 100644
index 00000000000..8168a71b204
--- /dev/null
+++ b/testing/unit-php81/phpver.patch
@@ -0,0 +1,15 @@
+--- a/auto/modules/php
++++ b/auto/modules/php
+@@ -102,11 +102,7 @@
+ `${NXT_PHP_CONFIG} --libs`"
+
+ else
+- if [ $NXT_PHP_MAJOR_VERSION -ge 8 ]; then
+- NXT_PHP_LIB="-lphp"
+- else
+- NXT_PHP_LIB="-lphp${NXT_PHP_VERSION%%.*}"
+- fi
++ NXT_PHP_LIB="-lphp${NXT_PHP_MAJOR_VERSION}${NXT_PHP_MINOR_VERSION}"
+
+ if [ "$NXT_PHP_LIB_PATH" != "" ]; then
+ # "php-config --ldflags" does not contain path to libphp, but
diff --git a/testing/unrealircd/0001.configure-without-running-config.patch b/testing/unrealircd/0001.configure-without-running-config.patch
deleted file mode 100644
index f35245b7bc3..00000000000
--- a/testing/unrealircd/0001.configure-without-running-config.patch
+++ /dev/null
@@ -1,9 +0,0 @@
---- a/configure 2021-10-03 14:09:18.000000000 +0000
-+++ b/configure 2021-10-03 14:09:18:000000000 +0000
-@@ -2305,7 +2305,7 @@
-
--if test "x$enable_dynamic_linking" = "x"; then
-+if test "$enable_dynamic_linking" = "x"; then
- echo "Please use ./Config instead of ./configure"
- exit 1
- fi
diff --git a/testing/unrealircd/APKBUILD b/testing/unrealircd/APKBUILD
deleted file mode 100755
index 23bab40314e..00000000000
--- a/testing/unrealircd/APKBUILD
+++ /dev/null
@@ -1,66 +0,0 @@
-# Contributor: Alex Yam <alex@alexyam.com>
-# Maintainer: Alex Yam <alex@alexyam.com>
-pkgname=unrealircd
-pkgver=6.0.3
-pkgrel=0
-pkgdesc="internet relay chat daemon (ircd)"
-url="https://www.unrealircd.org/"
-arch="all"
-license="GPL-2.0-or-later"
-makedepends="
- argon2-dev
- c-ares-dev
- curl-dev
- jansson-dev
- libnsl-dev
- libsodium-dev
- openssl-dev
- pcre2-dev
- tre-dev
- "
-subpackages="$pkgname-doc"
-options="!check" # no test suite
-source="https://www.unrealircd.org/downloads/unrealircd-$pkgver.tar.gz
- 0001.configure-without-running-config.patch"
-
-prepare() {
- default_prepare
- #update_config_guess #No update needed for ./autoconf/config.guess
- update_config_sub
-}
-
-build() {
- ./configure \
- --prefix=/usr \
- --enable-dynamic-linking \
- --enable-ssl \
- --with-bindir=/usr/bin \
- --with-cachedir=/var/lib/unrealircd/cache \
- --with-confdir=/etc/unrealircd \
- --with-datadir=/var/lib/unrealircd/data \
- --with-docdir=/usr/share/man/unrealircd \
- --with-logdir=/var/log/unrealircd \
- --with-modulesdir=/usr/lib/unrealircd/modules \
- --with-nick-history=2000 \
- --with-permissions=0600 \
- --with-pidfile=/var/lib/unrealircd/run/unrealircd.pid \
- --with-privatelibdir=/usr/lib/unrealircd/private_lib \
- --with-scriptdir=/usr/lib/unrealircd/scripts \
- --with-tmpdir=/var/lib/unrealircd/tmp
- make
-}
-
-package() {
- install -dm755 \
- $pkgdir/var/lib/unrealircd/run \
- $pkgdir/usr/lib/unrealircd/scripts \
- $pkgdir/usr/lib/unrealircd/private_lib
- make DESTDIR="$pkgdir" install
- # remove symlink to source
- rm -v $pkgdir/usr/lib/unrealircd/scripts/source
-}
-
-sha512sums="
-be3b823eee42e5ecf7ffbdcac0d56cf4ff4cde8aa082affa8c2f78518a3c54a2d8bb3956cf2b95060958d7c3382ca8da00e6f7b816670cf3ba48e3b8588adba3 unrealircd-6.0.3.tar.gz
-532cb2419d2b79685a391113cf1f498417ff46ad545b41e3b9e2153966ba92e21e2ef8dc9010ab491bbc10c7758d38a61a1213caf7eabe1c066ccd12c0a6f13e 0001.configure-without-running-config.patch
-"
diff --git a/testing/up/APKBUILD b/testing/up/APKBUILD
index 3f44861ee99..256d2ed4f49 100644
--- a/testing/up/APKBUILD
+++ b/testing/up/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Francesco Camuffo <dev@fmac.xyz>
pkgname=up
pkgver=0.4
-pkgrel=5
+pkgrel=20
pkgdesc="Ultimate Plumber is a tool for writing Linux pipes with instant live preview"
url="https://github.com/akavel/up"
arch="all"
@@ -10,6 +10,10 @@ license="Apache-2.0"
makedepends="go"
source="$pkgname-$pkgver.tar.gz::https://github.com/akavel/up/archive/refs/tags/v$pkgver.tar.gz"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
build() {
go build -v -o bin/$pkgname
}
diff --git a/testing/upmpdcli/APKBUILD b/testing/upmpdcli/APKBUILD
deleted file mode 100644
index a4b454637a5..00000000000
--- a/testing/upmpdcli/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Contributor: Marvin Preuss <marvin@xsteadfastx.org>
-# Maintainer: Marvin Preuss <marvin@xsteadfastx.org>
-pkgname=upmpdcli
-pkgver=1.5.16
-pkgrel=0
-pkgdesc="upmpdcli is a UPnP Media Renderer front-end for MPD, the Music Player Daemon"
-pkgusers="upmpdcli"
-url="https://www.lesbonscomptes.com/upmpdcli"
-arch="all"
-license="LGPL-2.1-or-later"
-options="!check"
-makedepends="libupnpp-dev libmpdclient-dev libmicrohttpd-dev jsoncpp-dev"
-subpackages="$pkgname-doc $pkgname-openrc"
-install="$pkgname.pre-install $pkgname.post-install"
-source="$pkgname-$pkgver.tar.gz::https://www.lesbonscomptes.com/upmpdcli/downloads/upmpdcli-$pkgver.tar.gz
- $pkgname.initd
- $pkgname.conf"
-
-build() {
- ./configure --prefix=/usr --sysconfdir=/etc
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-
- install -Dm755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
- install -Dm644 "$srcdir"/$pkgname.conf "$pkgdir"/etc/$pkgname.conf
- mkdir -p "$pkgdir"/var/cache/upmpdcli
-}
-
-sha512sums="
-abf6324475f8c77dd78de4ca8f9ea6f27fc47af7682d80af2de8f80ebaa2727579128f511dc6b10067a163f23916256e6ab4e0ffa82fb9110ba91a74bf99df75 upmpdcli-1.5.16.tar.gz
-f586c538abb51f373bf8a8277132694ad289f9c23de9389cb5c9cb67fdbec192529645b759f745ddeca3ce24893580b0ce0d344a8e75b3fd1edd021a0335f617 upmpdcli.initd
-b6815c29e8c648fd7577f9137f1552dab96710e80458a19fc332c6382471c47fdc056c8e3e1353fc982610173e498b96df8fd18de93f5546773a22e02e58886d upmpdcli.conf
-"
diff --git a/testing/upmpdcli/upmpdcli.conf b/testing/upmpdcli/upmpdcli.conf
deleted file mode 100644
index 5b6d0be363d..00000000000
--- a/testing/upmpdcli/upmpdcli.conf
+++ /dev/null
@@ -1,242 +0,0 @@
-#The XML tags in the comments are used to help produce the documentation
-#from the sample/reference file, and not at all at run time, where
-#comments are just comments. Edit at will.
-#The command line options have higher priorities than the values in
-#this file.
-
-# Upmpdcli configuration
-
-
-# Upmpdcli general parameters
-
-# Log file name.
-#logfilename =
-# Log level.
-#loglevel = 2
-# XML and other constant data storage directory.
-#pkgdatadir=/usr/share/upmpdcli
-# Name of lock file used to store the current process pid.
-#pidfile = /var/run/upmpdcli.pid
-
-# UPnP network parameters
-
-# Network interface to use for UPnP.
-#upnpiface =
-# IP address to use for UPnP, alternative to using an interface name.
-#upnpip =
-# Port number used for UPnP.
-#upnpport =
-
-# Media Renderer parameters
-
-# "Friendly Name" for the UPnP Media Renderer.
-#friendlyname = UpMpd
-# Enable UPnP AV services (0/1).
-#upnpav = 1
-# Enable OpenHome services (0/1).
-#openhome = 1
-# For upmpdcli version 1.3: enable Lumin compatibility mode (lose ohcredentials) (0/1).
-#lumincompat = 0
-# Save the streaming services login parameters to disk.
-#saveohcredentials = 1
-# Check that input format is supported.
-#checkcontentformat = 1
-# Path to the openssl command
-#opensslcmd =
-# Path to the Renderer icon.
-#iconpath = /usr/share/upmpdcli/icon.png
-# Directory used to store cached data
-#cachedir = /var/cache/upmpdcli
-# Path to the presentation HTML document
-#presentationhtml = /usr/share/upmpdcli/presentation.html
-
-# MPD parameters
-
-# Host MPD runs on.
-#mpdhost = localhost
-# IP port used by MPD
-#mpdport = 6600
-# MPD password.
-#mpdpassword =
-# MPD connection timeout in milliseconds.
-#mpdtimeoutms = 2000
-# Set if we own the MPD queue.
-#ownqueue = 1
-
-# Audio control hooks
-
-# Command to run when playback is about to begin.
-#onstart =
-# Command to run when MPD state switches to "PLAY".
-#onplay =
-# Command to run when MPD state switches to "PAUSE".
-#onpause =
-# Command to run when MPD state switches to "STOP".
-#onstop =
-# Command to run when the setstandby action is called.
-#onstandby =
-# Use external command to manage the the sound volume (0/1).
-#externalvolumecontrol =
-# Command to run for reading the sound volume.
-#getexternalvolume =
-# Command to run to set the volume.
-#onvolumechange =
-
-# UPnP/AV tweaking
-
-# Automatically fake a Play command when track is set.
-#avtautoplay = 0
-
-# OpenHome parameters
-
-# The name of the room where the Product is located.
-#ohproductroom = Main Room
-# Path to an external file with radio definitions.
-radiolist = /usr/share/upmpdcli/radio_scripts/radiolist.conf
-# Manufacturer name.
-#ohmanufacturername = UpMPDCli heavy industries Co.
-# Manufacturer information.
-#ohmanufacturerinfo = Such nice guys and gals
-# URL for manufacturer web site.
-#ohmanufacturerurl = http://www.lesbonscomptes.com/upmpdcli
-# Uri for manufacturer’s logo.
-#ohmanufacturerimageuri =
-# Model name.
-#ohmodelname = UpMPDCli UPnP-MPD gateway
-# Model information.
-#ohmodelinfo =
-# URL for model web site.
-#ohmodelurl = http://www.lesbonscomptes.com/upmpdcli
-# Uri for model’s icon.
-#ohmodelimageuri =
-# User-visible product name. By default this is set to ModelName.
-#ohproductname = Upmpdcli
-# Product information.
-#ohproductinfo =
-# URL for product web site. This may be the UPnP presentation page.
-#ohproducturl =
-# Uri for product image.
-#ohproductimageuri =
-# Save queue metadata to disk (0/1).
-#ohmetapersist = 1
-# Mimimum interval (Seconds) between two cache saves.
-#ohmetasleep = 0
-
-# Media Server general parameters
-
-# Friendly name for the Media Server (if enabled).
-#msfriendlyname =
-# Hostname/IP address used in proxy URLs.
-#plgmicrohttphost =
-# IP port for the tidal/qobuz/gmusic local HTTP service.
-#plgmicrohttpport = 49149
-# Decide if we proxy (copy: fetch/serve), or redirect the streaming services streams.
-#plgproxymethod = redirect
-
-# Google Music streaming service parameters
-
-# Google Music user name.
-#gmusicuser = me@gmail.com
-# Google Music password.
-#gmusicpass = agoodpassword
-# Google Music stream quality.
-#gmusicquality = med
-# Google Music device id.
-#gmusicdeviceid =
-
-# Highresaudio streaming service parameters
-
-# Hra user name.
-#hrauser = your hra user name
-# Hra password.
-#hrapass = your Hra password
-# Hra language setting (en/de).
-#hralang = en
-
-# Spotify streaming service parameters
-
-# Spotify user name.
-#spotifyuser = me@some.place
-# Spotify password.
-#spotifypass = agoodpassword
-# Spotify preferred bitrate: 160 (default), 320 or 96.
-#spotifybitrate = 160
-
-# Tidal streaming service parameters
-
-# Tidal user name.
-#tidaluser = your tidal user name
-# Tidal password.
-#tidalpass = your Tidal password
-# Tidal API token.
-#tidalapitoken = thetoken
-# Tidal stream quality.
-#tidalquality = low
-
-# Qobuz streaming service parameters
-
-# Qobuz user name.
-#qobuzuser = me@some.place
-# Qobuz password.
-#qobuzpass = agoodpassword
-# Qobuz stream quality.
-#qobuzformatid = 5
-
-# Local Media Server parameters
-
-# Bogus user name variable.
-#uprcluser = bugsbunny
-# Plugin Title.
-#uprcltitle = Local Music
-# HTTP host and port for serving media files
-#uprclhostport =
-# uprcl Recoll index directory
-#uprclconfdir = /var/cache/upmpdcli/uprcl
-# Name of the user Recoll config additions file
-#uprclconfrecolluser = /var/cache/upmpdcli/uprcl/recoll.conf.user
-# Name of the Minim Server configuration file
-#uprclminimconfig =
-# Media directories
-#uprclmediadirs = /tmp
-# Path translations.
-#uprclpaths =
-
-# Songcast Receiver parameters
-
-#Parameters for the Songcast modes. These are read by either/both the
-#songcast and upmpdcli processes
-# Log file name for sc2mpd (default stderr)
-#sclogfilename =
-# Log verbosity for sc2mpd.
-#scloglevel = 3
-# sc2mpd play method (mpd/alsa).
-#scplaymethod = mpd
-# Port used by sc2mpd for MPD to connect to.
-#schttpport = 8768
-# Alsa device used by sc2mpd for playing audio.
-#scalsadevice = default
-# sc2mpd resampling method.
-#sccvttype = SRC_SINC_FASTEST
-# Scale songcast stream based on mpd volume value
-#scusempdvolume = 0
-# Path to sc2mpd.
-#sc2mpd =
-# Path to a screceiver state file.
-#screceiverstatefile =
-
-# Songcast Sender parameters
-
-#Parameters tor the Sender/Receiver mode. Only does anything if
-#scplaymethod is alsa
-# !!Standard Songcast receivers only support PCM!! Codec to use for the network stream.
-#scstreamcodec =
-# Path to starter script
-#scsenderpath =
-# Scale the Songcast stream.
-#scstreamscaled = 1
-# localhost port to be used by the auxiliary mpd.
-#scsendermpdport = 6700
-# External sources script directory.
-#scripts_dir = /usr/share/upmpdcli/src_scripts
-# Grace period to wait for a script process to exit before it is forcely killed.
-#scscriptgracesecs = 2
diff --git a/testing/upmpdcli/upmpdcli.initd b/testing/upmpdcli/upmpdcli.initd
deleted file mode 100644
index 68a45d02008..00000000000
--- a/testing/upmpdcli/upmpdcli.initd
+++ /dev/null
@@ -1,14 +0,0 @@
-#!/sbin/openrc-run
-supervisor=supervise-daemon
-
-name="upmpdcli UPnP Media Renderer"
-description="UPnP Media Renderer front-end for MPD, the Music Player Daemon"
-
-command=/usr/bin/upmpdcli
-command_args="-c /etc/upmpdcli.conf"
-command_user=upmpdcli:upmpdcli
-
-depend() {
- need net localmount
- after firewall
-}
diff --git a/testing/upmpdcli/upmpdcli.post-install b/testing/upmpdcli/upmpdcli.post-install
deleted file mode 100644
index d5e371cdaeb..00000000000
--- a/testing/upmpdcli/upmpdcli.post-install
+++ /dev/null
@@ -1,5 +0,0 @@
-#!/bin/sh
-
-chown upmpdcli:upmpdcli /var/cache/upmpdcli
-
-exit 0
diff --git a/testing/upmpdcli/upmpdcli.pre-install b/testing/upmpdcli/upmpdcli.pre-install
deleted file mode 100644
index a015483e17a..00000000000
--- a/testing/upmpdcli/upmpdcli.pre-install
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/bin/sh
-
-addgroup -S upmpdcli 2>/dev/null
-
-adduser -S -D -h /var/lib/upmpdcli -s /sbin/nologin -G upmpdcli -g upmpdcli upmpdcli 2>/dev/null
-
-exit 0
diff --git a/testing/upterm/APKBUILD b/testing/upterm/APKBUILD
new file mode 100644
index 00000000000..02feffefb8f
--- /dev/null
+++ b/testing/upterm/APKBUILD
@@ -0,0 +1,64 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=upterm
+pkgver=0.13.2
+pkgrel=2
+pkgdesc="Secure terminal sharing"
+url="https://upterm.dev/"
+arch="all"
+license="Apache-2.0"
+makedepends="go"
+checkdepends="bash"
+subpackages="
+ $pkgname-doc
+ $pkgname-bash-completion
+ $pkgname-zsh-completion
+ $pkgname-server
+ $pkgname-server-openrc
+ "
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/owenthereal/upterm/archive/refs/tags/v$pkgver.tar.gz
+ uptermd.initd
+ uptermd.confd
+ "
+options="net !check" # fail on network flakiness
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ for cli in upterm uptermd; do
+ go build -v -o out/$cli ./cmd/$cli
+ done
+
+ # Re-generate completion files and man pages
+ go run cmd/gendoc/main.go
+}
+
+check() {
+ go test ./...
+}
+
+package() {
+ install -Dm755 out/upterm out/uptermd \
+ -t "$pkgdir"/usr/bin/
+
+ install -Dm644 etc/man/man1/*.1 -t "$pkgdir"/usr/share/man/man1/
+ install -Dm644 etc/completion/upterm.bash_completion.sh \
+ "$pkgdir"/usr/share/bash-completion/completions/upterm
+ install -Dm644 etc/completion/upterm.zsh_completion \
+ "$pkgdir"/usr/share/zsh/site-functions/_upterm
+ install -Dm755 "$srcdir"/uptermd.initd "$pkgdir"/etc/init.d/uptermd
+ install -Dm644 "$srcdir"/uptermd.confd "$pkgdir"/etc/conf.d/uptermd
+}
+
+server() {
+ pkgdesc="$pkgdesc (server)"
+ amove usr/bin/uptermd
+}
+
+sha512sums="
+a0563f148bb8ab3d5222fed5644aefadb980c22f1368736f33438e9ecd0ef807cdedebc29b6035249b307eb41c80d910062965742ae0631646054cf6d7a9e378 upterm-0.13.2.tar.gz
+45165ca78a4f399583baaf151588d046b075c9632574720ec49887e542f8874fb63907ce390f40505d13499f2f35caa4b9aca5a10163c12c838fc9621ec897bd uptermd.initd
+8ffec044a02b1a0cd5ca7b5e31fdb6f1ee958b16e346c913b9387d6a5ef4fb8b9e7ac881d0b449eeb1e0fca945f401a5db0572cfcc5684028d1709588ff8e61b uptermd.confd
+"
diff --git a/testing/upterm/uptermd.confd b/testing/upterm/uptermd.confd
new file mode 100644
index 00000000000..4d2ee9813e6
--- /dev/null
+++ b/testing/upterm/uptermd.confd
@@ -0,0 +1,7 @@
+# Configuration file for /etc/init.d/uptermd
+
+# Additional arguments to pass to uptermd.
+command_args="--ssh-addr 0.0.0.0:2222"
+
+# Uncomment to use process supervisor.
+#supervisor="supervise-daemon"
diff --git a/testing/upterm/uptermd.initd b/testing/upterm/uptermd.initd
new file mode 100644
index 00000000000..47aa7acdc0d
--- /dev/null
+++ b/testing/upterm/uptermd.initd
@@ -0,0 +1,12 @@
+#!/sbin/openrc-run
+
+name=uptermd
+description="Secure terminal sharing deamon"
+command="/usr/bin/uptermd"
+command_args="${command_args:---ssh-addr 0.0.0.0:2222}"
+command_background="yes"
+
+depend() {
+ need net
+ after firewall
+}
diff --git a/testing/uranium/874_fix-simplebutton-use-of-um-colorimage.patch b/testing/uranium/874_fix-simplebutton-use-of-um-colorimage.patch
new file mode 100644
index 00000000000..3112c9c520a
--- /dev/null
+++ b/testing/uranium/874_fix-simplebutton-use-of-um-colorimage.patch
@@ -0,0 +1,34 @@
+From 88fd460a63263d66173f1e0127b0f208577d7f4e Mon Sep 17 00:00:00 2001
+Patch-Source: https://github.com/Ultimaker/Uranium/pull/874
+From: fieldOfView <aldo@fieldofview.com>
+Date: Sat, 20 May 2023 21:14:36 +0200
+Subject: [PATCH] Fix SimpleButton use of UM.ColorImage
+
+Fixes https://github.com/Ultimaker/Cura/issues/15524
+---
+ UM/Qt/qml/UM/SimpleButton.qml | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/UM/Qt/qml/UM/SimpleButton.qml b/UM/Qt/qml/UM/SimpleButton.qml
+index d3d398753c..d3bd0e8e14 100644
+--- a/UM/Qt/qml/UM/SimpleButton.qml
++++ b/UM/Qt/qml/UM/SimpleButton.qml
+@@ -1,7 +1,8 @@
+-// Copyright (c) 2018 Ultimaker B.V.
++// Copyright (c) 2023 Ultimaker B.V.
+ // Uranium is released under the terms of the LGPLv3 or higher.
+
+ import QtQuick 2.1
++import UM 1.5 as UM
+
+ MouseArea
+ {
+@@ -27,7 +28,7 @@ MouseArea
+ radius: 0
+ }
+
+- ColorImage
++ UM.ColorImage
+ {
+ id: image
+
diff --git a/testing/uranium/APKBUILD b/testing/uranium/APKBUILD
index 7a2b9c3df8c..2b98a85bec5 100644
--- a/testing/uranium/APKBUILD
+++ b/testing/uranium/APKBUILD
@@ -1,26 +1,29 @@
# Contributor: Anjandev Momi <anjan@momi.ca>
# Maintainer: Anjandev Momi <anjan@momi.ca>
pkgname=uranium
-pkgver=4.13.1
-pkgrel=0
+pkgver=5.2.2
+pkgrel=3
pkgdesc="A Python framework for building Desktop applications"
url="https://github.com/Ultimaker/Uranium"
arch="noarch !armhf !riscv64" # armhf: no py3-qt5, rv64: no py3-shapely
license="LGPL-3.0-or-later"
depends="
- python3
- py3-qt5
+ py3-cryptography
py3-numpy
- py3-libarcus
- py3-shapely
+ py3-qt6
py3-scipy
- py3-cryptography
- py3-twisted
+ python3
"
# add cura-binary-data to makedepends when packaged
-makedepends="samurai cmake doxygen gettext gettext-dev graphviz"
-checkdepends="py3-pytest py3-pytest-benchmark"
-source="$pkgname-$pkgver.tar.gz::https://github.com/Ultimaker/Uranium/archive/refs/tags/$pkgver.tar.gz"
+makedepends="samurai cmake doxygen gettext-dev graphviz"
+checkdepends="py3-pytest py3-pytest-benchmark py3-twisted"
+options="!check" # checks broken from 5.x onward
+source="$pkgname-$pkgver.tar.gz::https://github.com/Ultimaker/Uranium/archive/refs/tags/$pkgver.tar.gz
+ cmake.patch
+ 874_fix-simplebutton-use-of-um-colorimage.patch
+ fix-logger-used-but-not-imported.patch
+ qt-try-ints-then-bytes.patch
+ cmake-helpers.patch"
builddir="$srcdir/Uranium-$pkgver"
build() {
@@ -30,10 +33,10 @@ build() {
cmake -B build -G Ninja \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
- -DCMAKE_BUILD_TYPE=minsizerel \
+ -DCMAKE_BUILD_TYPE=MinSizeRel \
-DGETTEXT_MSGINIT_EXECUTABLE=msginit \
-DCURA_BINARY_DATA_DIRECTORY=/usr/share/cura \
- $CMAKE_CROSSOPTS .
+ $CMAKE_CROSSOPTS
cmake --build build
}
@@ -49,5 +52,10 @@ package() {
}
sha512sums="
-ff9573104c9cdf0a1ba3ff304c17dbbcdab561a7158138067067ea3c2d063c139545effb1b1c944da986053cb3ea68dc5b947c30c5578ef29f6858e3f9e461c3 uranium-4.13.1.tar.gz
+a9c222400022e05b5c42c72843b024204a58f5d233805bdffa610a2d9cbd1873773868b049aabbe52c6e859f235ca5428fcdfdbb86651f428483999060611e10 uranium-5.2.2.tar.gz
+196a04164de288f5bffeebb73ace9390059dcffebaf40395368f413d1af2e2c668d85dd4c761ad226732540d41598235c2c368152cc157d2e89445ce27738c9b cmake.patch
+c50b37a3a44c4d4f66d115e72a430b82a8125efa49ce51271d5cad7fac15b2941a6a82b71fd07cef751b159296b64d783b348cebe7dfd865f0121815d2cf41f4 874_fix-simplebutton-use-of-um-colorimage.patch
+78e1415133bc4135f93633375bdb71a9e04b9cd128067d223985d0878f0e3de3ed1d336117fc527f0804b99878bd56817e3eb7a5aa545cc877b9f43386e17e78 fix-logger-used-but-not-imported.patch
+26489638fcf80822d16b0a295aee21a8973c23a023b1daf7f2cf5f7be7c56e72a15edd87ac6993f8a2ad09086d7d1a8b7d32247522c9429183625e3a0b63f2ae qt-try-ints-then-bytes.patch
+aa185ce3592036f045e3386266015cc08443c2e4f9b9a4c03c77c13525af98d68eaa3360e8858e0561417a826c73bf8a2b209bcad91d2cc16cce32fb0231fcf8 cmake-helpers.patch
"
diff --git a/testing/uranium/cmake-helpers.patch b/testing/uranium/cmake-helpers.patch
new file mode 100644
index 00000000000..3c5d1f36122
--- /dev/null
+++ b/testing/uranium/cmake-helpers.patch
@@ -0,0 +1,89 @@
+--- /dev/null
++++ ./cmake/UraniumPluginInstall.cmake
+@@ -0,0 +1,86 @@
++# Copyright (c) 2022 Ultimaker B.V.
++# UraniumPluginInstall.cmake is released under the terms of the LGPLv3 or higher.
++
++#
++# This module detects all plugins that need to be installed and adds them using the CMake install() command.
++# It detects all plugin folder in the path "plugins/*" where there's a "plugin.json" in it.
++#
++# Plugins can be configured to NOT BE INSTALLED via the variable "UM_NO_INSTALL_PLUGINS" as a list of string in the
++# form of "a;b;c" or "a,b,c". By default all plugins will be installed.
++#
++
++# Options or configuration variables
++set(UM_NO_INSTALL_PLUGINS "" CACHE STRING "A list of plugins that should not be installed, separated with ';' or ','.")
++
++file(GLOB_RECURSE _plugin_json_list ${CMAKE_SOURCE_DIR}/plugins/*/plugin.json)
++list(LENGTH _plugin_json_list _plugin_json_list_len)
++
++# Sort the lists alphabetically so we can handle cases like this:
++# - plugins/my_plugin/plugin.json
++# - plugins/my_plugin/my_module/plugin.json
++# In this case, only "plugins/my_plugin" should be added via install().
++set(_no_install_plugin_list ${UM_NO_INSTALL_PLUGINS})
++# Sanitize the string so the comparison will be case-insensitive.
++string(STRIP "${_no_install_plugin_list}" _no_install_plugin_list)
++string(TOLOWER "${_no_install_plugin_list}" _no_install_plugin_list)
++
++# WORKAROUND counterpart of what's in cura-build.
++string(REPLACE "," ";" _no_install_plugin_list "${_no_install_plugin_list}")
++
++list(LENGTH _no_install_plugin_list _no_install_plugin_list_len)
++
++if(_no_install_plugin_list_len GREATER 0)
++ list(SORT _no_install_plugin_list)
++endif()
++if(_plugin_json_list_len GREATER 0)
++ list(SORT _plugin_json_list)
++endif()
++
++# Check all plugin directories and add them via install() if needed.
++set(_install_plugin_list "")
++foreach(_plugin_json_path ${_plugin_json_list})
++ get_filename_component(_plugin_dir ${_plugin_json_path} DIRECTORY)
++ file(RELATIVE_PATH _rel_plugin_dir ${CMAKE_CURRENT_SOURCE_DIR} ${_plugin_dir})
++ get_filename_component(_plugin_dir_name ${_plugin_dir} NAME)
++
++ # Make plugin name comparison case-insensitive
++ string(TOLOWER "${_plugin_dir_name}" _plugin_dir_name_lowercase)
++
++ # Check if this plugin needs to be skipped for installation
++ set(_add_plugin ON) # Indicates if this plugin should be added to the build or not.
++ set(_is_no_install_plugin OFF) # If this plugin will not be added, this indicates if it's because the plugin is
++ # specified in the NO_INSTALL_PLUGINS list.
++ if(_no_install_plugin_list)
++ if("${_plugin_dir_name_lowercase}" IN_LIST _no_install_plugin_list)
++ set(_add_plugin OFF)
++ set(_is_no_install_plugin ON)
++ endif()
++ endif()
++
++ # Make sure this is not a subdirectory in a plugin that's already in the install list
++ if(_add_plugin)
++ foreach(_known_install_plugin_dir ${_install_plugin_list})
++ if(_plugin_dir MATCHES "${_known_install_plugin_dir}.+")
++ set(_add_plugin OFF)
++ break()
++ endif()
++ endforeach()
++ endif()
++
++ if(_add_plugin)
++ message(STATUS "[+] PLUGIN TO INSTALL: ${_rel_plugin_dir}")
++ get_filename_component(_rel_plugin_parent_dir ${_rel_plugin_dir} DIRECTORY)
++ install(DIRECTORY ${_rel_plugin_dir}
++ DESTINATION lib${LIB_SUFFIX}/uranium/${_rel_plugin_parent_dir}
++ PATTERN "__pycache__" EXCLUDE
++ PATTERN "*.qmlc" EXCLUDE
++ )
++ list(APPEND _install_plugin_list ${_plugin_dir})
++ elseif(_is_no_install_plugin)
++ message(STATUS "[-] PLUGIN TO REMOVE : ${_rel_plugin_dir}")
++ execute_process(COMMAND ${Python_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/cmake/mod_bundled_packages_json.py
++ -d ${CMAKE_CURRENT_SOURCE_DIR}/resources/bundled_packages
++ ${_plugin_dir_name}
++ RESULT_VARIABLE _mod_json_result)
++ endif()
++endforeach()
diff --git a/testing/uranium/cmake.patch b/testing/uranium/cmake.patch
new file mode 100644
index 00000000000..b1a888ba059
--- /dev/null
+++ b/testing/uranium/cmake.patch
@@ -0,0 +1,16 @@
+--- ./CMakeLists.txt.orig
++++ ./CMakeLists.txt
+@@ -19,9 +19,12 @@
+ # Build Translations
+ CREATE_TRANSLATION_TARGETS()
+
++find_package(Python REQUIRED COMPONENTS Interpreter)
+
+-install(DIRECTORY UM DESTINATION "${Python_SITELIB_LOCAL}")
++install(DIRECTORY UM DESTINATION "${Python_SITELIB}")
+
+ install(FILES ${CMAKE_SOURCE_DIR}/cmake/UraniumTranslationTools.cmake
+ DESTINATION ${CMAKE_INSTALL_DATADIR}/cmake-${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}/Modules/ )
+ install(DIRECTORY resources DESTINATION ${CMAKE_INSTALL_DATADIR}/uranium)
++
++include(UraniumPluginInstall)
diff --git a/testing/uranium/fix-logger-used-but-not-imported.patch b/testing/uranium/fix-logger-used-but-not-imported.patch
new file mode 100644
index 00000000000..151893c2e04
--- /dev/null
+++ b/testing/uranium/fix-logger-used-but-not-imported.patch
@@ -0,0 +1,14 @@
+Patch-Source: https://src.fedoraproject.org/rpms/python-uranium/blob/rawhide/f/Uranium-5.3.0-qt-try-ints-then-bytes-for-gl-mask-functions.patch
+
+diff --git a/UM/View/SelectionPass.py.orig b/UM/View/SelectionPass.py
+index 945b789..ef042a5 100644
+--- a/UM/View/SelectionPass.py.orig
++++ b/UM/View/SelectionPass.py
+@@ -5,6 +5,7 @@ import enum
+ import random
+ from typing import TYPE_CHECKING
+
++from UM.Logger import Logger
+ from UM.Resources import Resources
+ from UM.Application import Application
+
diff --git a/testing/uranium/qt-try-ints-then-bytes.patch b/testing/uranium/qt-try-ints-then-bytes.patch
new file mode 100644
index 00000000000..8f7d6dbeeb6
--- /dev/null
+++ b/testing/uranium/qt-try-ints-then-bytes.patch
@@ -0,0 +1,96 @@
+Patch-Source: https://src.fedoraproject.org/rpms/python-uranium/blob/rawhide/f/Uranium-5.3.0-qt-try-ints-then-bytes-for-gl-mask-functions.patch
+
+diff --git a/UM/View/RenderBatch.py.orig b/UM/View/RenderBatch.py
+index 6deeeb1..5f1eda5 100644
+--- a/UM/View/RenderBatch.py.orig
++++ b/UM/View/RenderBatch.py
+@@ -186,10 +186,24 @@ class RenderBatch:
+
+ if self._render_type == self.RenderType.Solid:
+ self._gl.glEnable(self._gl.GL_DEPTH_TEST)
+- self._gl.glDepthMask(self._gl.GL_TRUE)
++ try:
++ self._gl.glDepthMask(self._gl.GL_TRUE)
++ except:
++ Logger.log("w", "glDepthMask does not like ints, trying bytes...")
++ try:
++ self._gl.glDepthMask(b'1')
++ except:
++ Logger.log("e", "glDepthMask does not like ints or bytes, no idea what it wants")
+ elif self._render_type == self.RenderType.Transparent:
+ self._gl.glEnable(self._gl.GL_DEPTH_TEST)
+- self._gl.glDepthMask(self._gl.GL_FALSE)
++ try:
++ self._gl.glDepthMask(self._gl.GL_FALSE)
++ except:
++ Logger.log("w", "glDepthMask does not like ints, trying bytes...")
++ try:
++ self._gl.glDepthMask(b'1')
++ except:
++ Logger.log("e", "glDepthMask does not like ints or bytes, no idea what it wants")
+ elif self._render_type == self.RenderType.Overlay:
+ self._gl.glDisable(self._gl.GL_DEPTH_TEST)
+
+diff --git a/UM/View/RenderPass.py.orig b/UM/View/RenderPass.py
+index 8068ddf..8cb4f67 100644
+--- a/UM/View/RenderPass.py.orig
++++ b/UM/View/RenderPass.py
+@@ -93,8 +93,22 @@ class RenderPass:
+ self._fbo.bind()
+
+ # Ensure we can actually write to the relevant FBO components.
+- self._gl.glColorMask(self._gl.GL_TRUE, self._gl.GL_TRUE,self._gl.GL_TRUE, self._gl.GL_TRUE)
+- self._gl.glDepthMask(self._gl.GL_TRUE)
++ try:
++ self._gl.glColorMask(self._gl.GL_TRUE, self._gl.GL_TRUE,self._gl.GL_TRUE, self._gl.GL_TRUE)
++ except:
++ Logger.log("w", "glColorMask does not like ints, trying bytes...")
++ try:
++ self._gl.glColorMask(b'1', b'1',b'1', b'1')
++ except:
++ Logger.log("e", "glColorMask does not like ints or bytes, no idea what it wants")
++ try:
++ self._gl.glDepthMask(self._gl.GL_TRUE)
++ except:
++ Logger.log("w", "glDepthMask does not like ints, trying bytes...")
++ try:
++ self._gl.glDepthMask(b'1')
++ except:
++ Logger.log("e", "glDepthMask does not like ints or bytes, no idea what it wants")
+
+ self._gl.glClear(self._gl.GL_COLOR_BUFFER_BIT | self._gl.GL_DEPTH_BUFFER_BIT)
+
+diff --git a/UM/View/SelectionPass.py.orig b/UM/View/SelectionPass.py
+index ef042a5..c28fe4f 100644
+--- a/UM/View/SelectionPass.py.orig
++++ b/UM/View/SelectionPass.py
+@@ -110,13 +110,27 @@ class SelectionPass(RenderPass):
+ if selectable_objects:
+ batch.render(self._scene.getActiveCamera())
+
+- self._gl.glColorMask(self._gl.GL_TRUE, self._gl.GL_TRUE, self._gl.GL_TRUE, self._gl.GL_FALSE)
++ try:
++ self._gl.glColorMask(self._gl.GL_TRUE, self._gl.GL_TRUE, self._gl.GL_TRUE, self._gl.GL_FALSE)
++ except:
++ Logger.log("w", "glColorMask does not like ints, trying bytes...")
++ try:
++ self._gl.glColorMask(b'1', b'1', b'1', b'0')
++ except:
++ Logger.log("e", "glColorMask does not like ints or bytes, no idea what it wants")
+ self._gl.glDisable(self._gl.GL_DEPTH_TEST)
+
+ tool_handle.render(self._scene.getActiveCamera())
+
+ self._gl.glEnable(self._gl.GL_DEPTH_TEST)
+- self._gl.glColorMask(self._gl.GL_TRUE, self._gl.GL_TRUE, self._gl.GL_TRUE, self._gl.GL_TRUE)
++ try:
++ self._gl.glColorMask(self._gl.GL_TRUE, self._gl.GL_TRUE, self._gl.GL_TRUE, self._gl.GL_TRUE)
++ except:
++ Logger.log("w", "glColorMask does not like ints, trying bytes...")
++ try:
++ self._gl.glColorMask(b'1', b'1', b'1', b'1')
++ except:
++ Logger.log("e", "glColorMask does not like ints or bytes, no idea what it wants")
+
+ self.release()
+
diff --git a/testing/urlwatch/APKBUILD b/testing/urlwatch/APKBUILD
index 3056ddb529f..1e0a9bccb17 100644
--- a/testing/urlwatch/APKBUILD
+++ b/testing/urlwatch/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Thiago Perrotta <tbperrotta@gmail.com>
# Maintainer: Thiago Perrotta <tbperrotta@gmail.com>
pkgname=urlwatch
-pkgver=2.24
-pkgrel=0
+pkgver=2.28
+pkgrel=1
pkgdesc="Tool for monitoring webpages for updates"
url="https://thp.io/2008/urlwatch/"
arch="noarch !ppc64le" # blocked by py3-keyring
@@ -19,8 +19,10 @@ depends="
"
makedepends="py3-setuptools"
checkdepends="py3-pytest py3-docutils py3-pycodestyle"
-subpackages="$pkgname-doc"
-source="https://files.pythonhosted.org/packages/source/u/urlwatch/urlwatch-$pkgver.tar.gz"
+subpackages="$pkgname-doc $pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/u/urlwatch/urlwatch-$pkgver.tar.gz
+ lxml-5.patch
+ "
build() {
python3 setup.py build
@@ -31,10 +33,10 @@ check() {
}
package() {
- python3 setup.py install --root="$pkgdir" --optimize=1 --skip-build
- install -Dm644 -t "$pkgdir/usr/share/licenses/$pkgname" COPYING
+ python3 setup.py install --root="$pkgdir" --skip-build
}
sha512sums="
-ed84cb69ecd8894851c3be0165edfa1dfee92a0b49ea1383e4cfd7c31eb0604f99b1a90d9508753064b58bdd8fc4c0369d817303858d07562b37c3f2ac4cae52 urlwatch-2.24.tar.gz
+21a662006dc92c0c636ef0beebc4f2ec90b82182aa0ba94a3348026c2c001b6d74198a14c198f681c8e773b640b6030b63de1a081984ea4d1bbc1e2648bc4161 urlwatch-2.28.tar.gz
+ade44bf3953406c26699d7dbf3377c283b75e7ba38cba9710aad2a4fe488ce49435874e73a52f8009572692d4cc23b25f06ecfc6c7e5866745b4617daa3e001a lxml-5.patch
"
diff --git a/testing/urlwatch/lxml-5.patch b/testing/urlwatch/lxml-5.patch
new file mode 100644
index 00000000000..1598ad4d942
--- /dev/null
+++ b/testing/urlwatch/lxml-5.patch
@@ -0,0 +1,35 @@
+Patch-Source: https://github.com/thp/urlwatch/commit/123de66d019aef7fc18fab6d56cc2a54d81fea3f
+--
+From 123de66d019aef7fc18fab6d56cc2a54d81fea3f Mon Sep 17 00:00:00 2001
+From: James Hewitt <james.hewitt@gmail.com>
+Date: Mon, 12 Feb 2024 18:12:49 +0000
+Subject: [PATCH] Update CSS Selector to use new style (#786)
+
+New style of calling the CSSSelector directly instead of using the
+evaluate function. This has been supported since lxml 1.1 [1] and the
+evaluate method has been deprecated since lxml 2.1 [2].
+
+[1] https://github.com/lxml/lxml/blob/lxml-1.1/src/lxml/xpath.pxi#L66
+[2] https://github.com/lxml/lxml/blob/lxml-2.1/src/lxml/xpath.pxi#L143
+
+Signed-off-by: James Hewitt <james.hewitt@uk.ibm.com>
+---
+ lib/urlwatch/filters.py | 4 ++--
+ 1 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/lib/urlwatch/filters.py b/lib/urlwatch/filters.py
+index 7b7c95b1..ed21b4c0 100644
+--- a/lib/urlwatch/filters.py
++++ b/lib/urlwatch/filters.py
+@@ -761,9 +761,9 @@ def _get_filtered_elements(self):
+ excluded_elems = None
+ if self.filter_kind == 'css':
+ selected_elems = CSSSelector(self.expression,
+- namespaces=self.namespaces).evaluate(root)
++ namespaces=self.namespaces)(root)
+ excluded_elems = CSSSelector(self.exclude,
+- namespaces=self.namespaces).evaluate(root) if self.exclude else None
++ namespaces=self.namespaces)(root) if self.exclude else None
+ elif self.filter_kind == 'xpath':
+ selected_elems = root.xpath(self.expression, namespaces=self.namespaces)
+ excluded_elems = root.xpath(self.exclude, namespaces=self.namespaces) if self.exclude else None
diff --git a/testing/usbguard-notifier/APKBUILD b/testing/usbguard-notifier/APKBUILD
index 6c34035d90b..28d955832b9 100644
--- a/testing/usbguard-notifier/APKBUILD
+++ b/testing/usbguard-notifier/APKBUILD
@@ -1,12 +1,12 @@
# Contributor: Michał Polański <michal@polanski.me>
# Maintainer:
pkgname=usbguard-notifier
-pkgver=0.0.6
-pkgrel=2
+pkgver=0.1.0
+pkgrel=0
pkgdesc="Notifies on USBGuard policy and device presence changes"
url="https://github.com/Cropi/usbguard-notifier"
license="GPL-2.0-or-later"
-arch="all !s390x !riscv64" # blocked by librsvg
+arch="all"
makedepends="
autoconf
automake
@@ -44,5 +44,7 @@ package() {
make install DESTDIR="$pkgdir"
}
-sha512sums="521b1cba292a5a1663bb36aad07d73ab1fae729da0a56794b34261c1b848366bac3637018c1cd371332f9d42bc73d5ba3c3b1ae0584cbc5bd9af1bb16a3a0599 usbguard-notifier-0.0.6.tar.gz
-09ca4890884d0a62d1b152c6cc5120c9856f46b778cba6f3d36a831ad6f0e5e6651e4e5532e8cefbc55583b862af4c649e6299591fed66b4c9187f7e4f363f85 no-systemd.patch"
+sha512sums="
+709afccec9fdc94d4cd1f2f941b6819c3b353dc2f60beeb12791cc9e3dfe9ad6e9d00664c3e5d5979b5d454374b1a633362f0de6513a767b3b6e2b6d2196eb6c usbguard-notifier-0.1.0.tar.gz
+09ca4890884d0a62d1b152c6cc5120c9856f46b778cba6f3d36a831ad6f0e5e6651e4e5532e8cefbc55583b862af4c649e6299591fed66b4c9187f7e4f363f85 no-systemd.patch
+"
diff --git a/testing/usbguard/APKBUILD b/testing/usbguard/APKBUILD
index 227b8ccf32a..ee11787c8ba 100644
--- a/testing/usbguard/APKBUILD
+++ b/testing/usbguard/APKBUILD
@@ -1,30 +1,27 @@
# Contributor: Michał Polański <michal@polanski.me>
# Contributor: Nicolas Lorin <androw95220@gmail.com>
-# Maintainer:
+# Maintainer: omni <omni+alpine@hack.org>
pkgname=usbguard
-pkgver=1.1.1
-pkgrel=0
+pkgver=1.1.2
+pkgrel=8
pkgdesc="Software framework for implementing USB device authorization policies"
url="https://usbguard.github.io/"
license="GPL-2.0-or-later"
arch="all"
makedepends="
- autoconf
- automake
- libtool
- libqb-dev
- libsodium-dev
- protobuf-dev
+ abseil-cpp-dev
+ asciidoc
audit-dev
- libseccomp-dev
- libcap-ng-dev
catch2
+ libcap-ng-dev
+ libqb-dev
+ libseccomp-dev
+ libsodium-dev
pegtl
- asciidoc
+ protobuf-dev
"
checkdepends="coreutils"
subpackages="
- libusbguard-static
libusbguard:libs
$pkgname-dev
$pkgname-doc
@@ -33,22 +30,20 @@ subpackages="
$pkgname-zsh-completion
"
source="https://github.com/USBGuard/usbguard/releases/download/usbguard-$pkgver/usbguard-$pkgver.tar.gz
+ gcc13.patch
usbguard.initd
"
-prepare() {
- default_prepare
- autoreconf -fiv
-}
-
build() {
+ CXXFLAGS="$CXXFLAGS -flto=auto" \
+ CFLAGS="$CFLAGS -flto=auto" \
./configure \
--build=$CBUILD \
--host=$CHOST \
--prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
- --enable-static \
+ --disable-static \
--without-bundled-catch \
--without-bundled-pegtl \
--without-dbus \
@@ -72,6 +67,7 @@ package() {
}
sha512sums="
-7810471a3778b4bca644565cefa2666f98d53c2747bff7262b9bbb0327e7dba7a1e8c067c96d89e6742ccec5f65410f4e273bf84ee2bb1fbc7ff5738df3af780 usbguard-1.1.1.tar.gz
+03b6dd026a0fe6a7a055208f09a56e2cc86985570388e33fde08671b8aa2d60ea4a0e59505e9646ddf50f42f5b6310d1b230379f9c26ec99c7ca736f3b4ad850 usbguard-1.1.2.tar.gz
+db5153bacfed442abbbb4bb4fc8250f6469a654600aa3eddb1dda3d5800a265099c9f6ff48e7987d8fd03d4f456cbd83a9012ea4e9983e753392149696f75f06 gcc13.patch
9d6752f08df0ba510fa02c0c9b55a92f063297653480c4d8863f87f159dc51449a34643e75af7619146e2e53c91d479be91ecc0c9adc0c764d037f4df466e534 usbguard.initd
"
diff --git a/testing/usbguard/gcc13.patch b/testing/usbguard/gcc13.patch
new file mode 100644
index 00000000000..50ce73eba64
--- /dev/null
+++ b/testing/usbguard/gcc13.patch
@@ -0,0 +1,12 @@
+diff --git a/src/Library/Base64.hpp b/src/Library/Base64.hpp
+index 0947f21..0badaf3 100644
+--- a/src/Library/Base64.hpp
++++ b/src/Library/Base64.hpp
+@@ -22,6 +22,7 @@
+ #include <build-config.h>
+ #endif
+
++#include <cstdint>
+ #include <string>
+ #include <cstddef>
+
diff --git a/testing/usbmuxd/APKBUILD b/testing/usbmuxd/APKBUILD
index 34cc0081c3d..8b94d9039c9 100644
--- a/testing/usbmuxd/APKBUILD
+++ b/testing/usbmuxd/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Leo <thinkabit.ukim@gmail.com>
-# Maintainer:
+# Maintainer: Hugo Osvaldo Barrera <hugo@whynothugo.nl>
pkgname=usbmuxd
pkgver=1.1.1
-pkgrel=2
+pkgrel=6
pkgdesc="Socket Daemon to multiplex connections from iOS"
url="https://github.com/libimobiledevice/usbmuxd"
arch="all"
@@ -12,7 +12,9 @@ license="GPL-2.0-or-later"
install="$pkgname.post-install"
subpackages="$pkgname-doc"
source="$pkgname-$pkgver.tar.gz::https://github.com/libimobiledevice/usbmuxd/archive/$pkgver.tar.gz
- 001-confiure-no-udev.patch"
+ 001-confiure-no-udev.patch
+ libplist-2.3.0.patch
+ "
prepare() {
default_prepare
@@ -39,5 +41,8 @@ package() {
make DESTDIR="$pkgdir" install
}
-sha512sums="500e5f9a3500ad49bd8c195da71586db88964dd62dd716bb6a30827cc42bfdab38326b98204afdf606b1795d270d7f0261a59576558405de3540f6038a575856 usbmuxd-1.1.1.tar.gz
-a8a4ed6877c691a44b53b2c554149c90034cbed8d48e0daf682aa7afbfb8f12cb05e4d99bd05dccc2e814f6001ccf19d61e9bff8c2da5e44ede386ea3565661f 001-confiure-no-udev.patch"
+sha512sums="
+500e5f9a3500ad49bd8c195da71586db88964dd62dd716bb6a30827cc42bfdab38326b98204afdf606b1795d270d7f0261a59576558405de3540f6038a575856 usbmuxd-1.1.1.tar.gz
+a8a4ed6877c691a44b53b2c554149c90034cbed8d48e0daf682aa7afbfb8f12cb05e4d99bd05dccc2e814f6001ccf19d61e9bff8c2da5e44ede386ea3565661f 001-confiure-no-udev.patch
+03351f2cd20846f168e4ae5b4a44397bbca44994b3345d534de9d3c5b376d2e696ccd09e96d72b48ead068cd28f502e460443a736633c6bf7f5a603a7a0620d1 libplist-2.3.0.patch
+"
diff --git a/testing/usbmuxd/libplist-2.3.0.patch b/testing/usbmuxd/libplist-2.3.0.patch
new file mode 100644
index 00000000000..6004066de74
--- /dev/null
+++ b/testing/usbmuxd/libplist-2.3.0.patch
@@ -0,0 +1,34 @@
+Patch-Source: https://github.com/archlinux/svntogit-packages/blob/72eb72074e5353b698875dcbd9edb4711c649de2/trunk/libplist-2.3.0.diff
+--
+diff --git i/src/utils.c w/src/utils.c
+index 206c684..a91faea 100644
+--- i/src/utils.c
++++ w/src/utils.c
+@@ -302,7 +302,7 @@ int plist_read_from_filename(plist_t *plist, const char *filename)
+ return 1;
+ }
+
+-int plist_write_to_filename(plist_t plist, const char *filename, enum plist_format_t format)
++int plist_write_to_filename(plist_t plist, const char *filename, plist_format_t format)
+ {
+ char *buffer = NULL;
+ uint32_t length;
+diff --git i/src/utils.h w/src/utils.h
+index b5cab3f..3e9eb41 100644
+--- i/src/utils.h
++++ w/src/utils.h
+@@ -78,13 +78,8 @@ char *string_concat(const char *str, ...);
+ int buffer_read_from_filename(const char *filename, char **buffer, uint64_t *length);
+ int buffer_write_to_filename(const char *filename, const char *buffer, uint64_t length);
+
+-enum plist_format_t {
+- PLIST_FORMAT_XML,
+- PLIST_FORMAT_BINARY
+-};
+-
+ int plist_read_from_filename(plist_t *plist, const char *filename);
+-int plist_write_to_filename(plist_t plist, const char *filename, enum plist_format_t format);
++int plist_write_to_filename(plist_t plist, const char *filename, plist_format_t format);
+
+ uint64_t mstime64(void);
+ void get_tick_count(struct timeval * tv);
diff --git a/testing/usbmuxd/usbmuxd.post-install b/testing/usbmuxd/usbmuxd.post-install
index 5c2e50ee9dc..6ef6673aa2d 100644
--- a/testing/usbmuxd/usbmuxd.post-install
+++ b/testing/usbmuxd/usbmuxd.post-install
@@ -1,4 +1,4 @@
#!/bin/sh
# creating default user required by usbmuxd
-adduser -S -G usb -H -g "usbmux daemon" usbmux 2>/dev/null
+adduser -S -G dialout -H -g "usbmux daemon" usbmux 2>/dev/null
diff --git a/testing/usql/APKBUILD b/testing/usql/APKBUILD
new file mode 100644
index 00000000000..dfc32a62910
--- /dev/null
+++ b/testing/usql/APKBUILD
@@ -0,0 +1,46 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=usql
+pkgver=0.15.6
+pkgrel=4
+pkgdesc="Universal command-line interface for SQL databases"
+url="https://github.com/xo/usql"
+# riscv64: not supported by go-ole (undefined: VARIANT)
+# x86, armhf, armv7: netezza and cockroachdb drivers fail to build on 32-bit
+# - https://github.com/xo/usql/issues/59
+# - https://github.com/IBM/nzgo/issues/38
+# - https://github.com/cockroachdb/pebble/issues/1575
+arch="all !riscv64 !armhf !armv7 !x86"
+license="MIT"
+makedepends="go unixodbc-dev icu-dev"
+source="$pkgname-$pkgver.tar.gz::https://github.com/xo/usql/archive/refs/tags/v$pkgver.tar.gz"
+
+export CGO_ENABLED=1 # needed for godror and odbc drivers
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+export _GOTAGS="all sqlite_app_armor sqlite_fts5 sqlite_introspect sqlite_json1 sqlite_stat4 sqlite_userauth sqlite_vtable sqlite_icu"
+
+build() {
+ export CGO_CFLAGS="$CFLAGS -D_LARGEFILE64_SOURCE"
+ local _goldflags="
+ -X github.com/xo/usql/text.CommandName=$pkgname
+ -X github.com/xo/usql/text.CommandVersion=$pkgver
+ "
+
+ go build -v -ldflags "$_goldflags" -tags "$_GOTAGS" -o $pkgname
+}
+
+check() {
+ # Tests for specific drivers require docker
+ # shellcheck disable=2046
+ go test $(go list ./... | grep -v /drivers)
+}
+
+package() {
+ install -Dm755 $pkgname -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+e843f35c8b4c2ae9af4fdc3ac966b1412580268ce7ba3d837189251db9b89a5042458e5b21b2b2f952dcbad27250e6b91d19645a8831f6aa13dbee13624b8908 usql-0.15.6.tar.gz
+"
diff --git a/testing/ustr/APKBUILD b/testing/ustr/APKBUILD
index e01a91828f0..80ec0018e83 100644
--- a/testing/ustr/APKBUILD
+++ b/testing/ustr/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=ustr
pkgver=1.0.4
-pkgrel=0
+pkgrel=1
pkgdesc="String library, very low memory overhead, simple to import"
url="http://www.and.org/ustr/"
arch="all"
diff --git a/testing/ustream-ssl/APKBUILD b/testing/ustream-ssl/APKBUILD
new file mode 100644
index 00000000000..ac212f7ce6e
--- /dev/null
+++ b/testing/ustream-ssl/APKBUILD
@@ -0,0 +1,42 @@
+# Maintainer: Ariadne Conill <ariadne@dereferenced.org>
+pkgname=ustream-ssl
+pkgver=20220116
+pkgrel=1
+pkgdesc="ustream SSL library"
+url="https://git.openwrt.org/project/ustream-ssl.git"
+arch="all"
+license="ISC"
+depends=""
+depends_dev="libubox-dev openssl-dev"
+makedepends="cmake $depends_dev"
+subpackages="$pkgname-dev"
+_owrtgit=868fd881
+_owrtver="${pkgver:0:4}-${pkgver:4:2}-${pkgver:6:2}-${_owrtgit}"
+source="https://sources.openwrt.org/ustream-ssl-${_owrtver}.tar.xz"
+builddir="$srcdir/ustream-ssl-${_owrtver}"
+
+build() {
+ if [ "$CBUILD" != "$CHOST" ]; then
+ CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ cmake -B build \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=True \
+ -DCMAKE_BUILD_TYPE=None \
+ $CMAKE_CROSSOPTS .
+ cmake --build build
+}
+
+check() {
+ cd build
+ CTEST_OUTPUT_ON_FAILURE=TRUE ctest
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+92d65c1163fe2d2fcd6ff28c825a54bb92c552a2b1fd698502c790bd8461bfe6e08a19df45a96c356ef63acf5c277a24c0ab438c4285649d8de60926171b9348 ustream-ssl-2022-01-16-868fd881.tar.xz
+"
diff --git a/testing/utfcpp/APKBUILD b/testing/utfcpp/APKBUILD
deleted file mode 100644
index a0726bd02e0..00000000000
--- a/testing/utfcpp/APKBUILD
+++ /dev/null
@@ -1,36 +0,0 @@
-# Contributor: Leon Marz <main@lmarz.org>
-# Maintainer: Leon Marz <main@lmarz.org>
-pkgname=utfcpp
-pkgver=3.2.1
-pkgrel=0
-pkgdesc="UTF-8 with C++ in a portable way"
-url="https://github.com/nemtrif/utfcpp"
-arch="noarch"
-license="BSL-1.0"
-makedepends="cmake"
-source="$pkgname-$pkgver.tar.gz::https://github.com/nemtrif/utfcpp/archive/v$pkgver.tar.gz"
-options="!check" # problems with gtest
-
-build() {
- cmake -B build \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- -DCMAKE_BUILD_TYPE=None \
- -DUTF8_TESTS=OFF \
- -DUTF8_SAMPLES=OFF
- cmake --build build
-}
-
-check() {
- cd build
- CTEST_OUTPUT_ON_FAILURE=1 ctest
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-
-sha512sums="
-5798487f12b1bc55d3e06aed38f7604271ca3402963efcf85d181fd590d8a088d21e961e77698e60dc2cdae8cf4506645903442c45fd328201752d9589180e0d utfcpp-3.2.1.tar.gz
-"
diff --git a/testing/utop/APKBUILD b/testing/utop/APKBUILD
index f680ae53a7b..ad78e473f97 100644
--- a/testing/utop/APKBUILD
+++ b/testing/utop/APKBUILD
@@ -1,25 +1,16 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer:
+# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=utop
pkgver=2.9.1
-pkgrel=0
+pkgrel=4
pkgdesc="Universal toplevel for OCaml"
url="https://github.com/ocaml-community/utop"
-arch="all !riscv64" # restricted by ocaml
+arch="all !riscv64 !loongarch64" # ocaml
license="BSD-3-Clause"
depends="
ocaml-$pkgname=$pkgver-r$pkgrel
$pkgname-common=$pkgver-r$pkgrel
"
-_depends_ocaml="
- ocaml-runtime
- ocaml-camomile
- ocaml-findlib>=1.7.2
- ocaml-lambda-term
- ocaml-lwt
- ocaml-lwt_react
- ocaml-react
- "
makedepends="
dune
ocaml
@@ -27,7 +18,7 @@ makedepends="
ocaml-camomile-dev
ocaml-charinfo_width-dev
ocaml-compiler-libs
- ocaml-cppo-dev
+ ocaml-cppo
ocaml-csexp-dev
ocaml-findlib-dev
ocaml-lambda-term-dev
@@ -37,7 +28,6 @@ makedepends="
ocaml-mew-dev
ocaml-mew_vi-dev
ocaml-mmap-dev
- ocaml-ocamlbuild-dev
ocaml-ocplib-endian-dev
ocaml-react-dev
ocaml-result-dev
@@ -54,7 +44,6 @@ subpackages="
ocaml-$pkgname:_lib
"
source="$pkgname-$pkgver.tar.bz2::https://github.com/ocaml-community/utop/releases/download/$pkgver/utop-$pkgver.tbz"
-builddir="$srcdir/$pkgname-$pkgver"
# 32-bit archs
case "$CARCH" in
@@ -111,14 +100,12 @@ _libdev() {
cd "$pkgdir"
- local path; for path in $(find $sitelib \( \
+ local path; find $sitelib \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
- -name '*.cmx' -o \
- -name '*.cmxa' -o \
-name '*.ml' -o \
-name '*.mli' \
- \))
+ \) | while read -r path
do
amove "$path"
done
@@ -127,11 +114,32 @@ _libdev() {
_lib() {
pkgdesc="$pkgdesc (library)"
- depends="$_depends_ocaml"
+ depends=""
amove usr/lib/ocaml
}
+prepare_py_provides() {
+ local datadir="${subpkgdir:-$pkgdir}"
+ local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
+ local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
+
+ options_has "!tracedeps" && return 0
+
+ ocaml4-abuild-find provides \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir" \
+ "$pkgver-r$pkgrel"
+}
+
+scan_python3_dependency() {
+ local controldir="$2" datadir="$3"
+
+ ocaml4-abuild-find requires \
+ "$datadir"/usr/lib/ocaml \
+ "$controldir"
+}
+
sha512sums="
002fa809d4924419f51b81df968b653a111ae5992837792fcb867adf2e44c15d40fadccc9784ef61f21ea3233f9da74016433920bf909d808752b7f825f8cdb1 utop-2.9.1.tar.bz2
"
diff --git a/testing/uucp/APKBUILD b/testing/uucp/APKBUILD
index 3856ee64613..8677683609c 100644
--- a/testing/uucp/APKBUILD
+++ b/testing/uucp/APKBUILD
@@ -3,7 +3,7 @@
# Maintainer: Mathew Meins <mathewm@sdf.lonestar.org>
pkgname=uucp
pkgver=1.07
-pkgrel=3
+pkgrel=5
pkgdesc="Taylor UUCP is a free implementation of UUCP"
url="https://airs.com/ian/uucp.html"
arch="all"
@@ -16,7 +16,8 @@ subpackages="$pkgname-doc"
options="suid"
pkgusers="uucp"
pkggroups="uucp"
-source="https://ftp.gnu.org/gnu/$pkgname/$pkgname-$pkgver.tar.gz"
+source="https://ftp.gnu.org/gnu/$pkgname/$pkgname-$pkgver.tar.gz
+ format-strings.patch"
builddir="$srcdir"/$pkgname-$pkgver
build() {
@@ -62,4 +63,7 @@ package() {
"$pkgdir"/etc/uucp/passwd || return 1
}
-sha512sums="13d215890234e638bed53dce7bab6eb78e0ce6b658f23ac1d7f8abc6e1d97963bef76aa4148ca644f450d5a1678fac940b73fbcd5845d7f5bea3afbd8055229b uucp-1.07.tar.gz"
+sha512sums="
+13d215890234e638bed53dce7bab6eb78e0ce6b658f23ac1d7f8abc6e1d97963bef76aa4148ca644f450d5a1678fac940b73fbcd5845d7f5bea3afbd8055229b uucp-1.07.tar.gz
+8b93f4e7708ba2d7830b6b4f3e2994ee56513de0ef406109572b1d550f7e44b3610c3e6b3cb357200976efc75854b9febdb8ea7b4ef7b881483ddcf9e6c5618c format-strings.patch
+"
diff --git a/testing/uucp/format-strings.patch b/testing/uucp/format-strings.patch
new file mode 100644
index 00000000000..7d7ad23ea36
--- /dev/null
+++ b/testing/uucp/format-strings.patch
@@ -0,0 +1,13 @@
+Patch-Source: https://sources.debian.org/patches/uucp/1.07-27/compiler-warnings.patch
+
+--- uucp.orig/uuconv.c 2013-04-26 16:06:16.000000000 +0200
++++ uucp/uuconv.c 2013-05-08 10:49:06.000000000 +0200
+@@ -676,7 +676,7 @@
+ {
+ if ((*pz)[0] != '-' && pz != pzarg)
+ fprintf (e, " ");
+- fprintf (e, *pz);
++ fprintf (e, "%s", *pz);
+ }
+ }
+
diff --git a/testing/uutils-coreutils/APKBUILD b/testing/uutils-coreutils/APKBUILD
deleted file mode 100644
index bac637bcfe1..00000000000
--- a/testing/uutils-coreutils/APKBUILD
+++ /dev/null
@@ -1,70 +0,0 @@
-# Maintainer: omni <omni+alpine@hack.org>
-pkgname=uutils-coreutils
-_pkgname=coreutils
-pkgver=0.0.14
-pkgrel=0
-pkgdesc="coreutils rewritten in Rust"
-# s390x, riscv64: limited by cargo
-# ppc64le: unsupported by at least the ioctl-sys and nix crates
-arch="all !s390x !ppc64le !riscv64"
-url="https://github.com/uutils/coreutils"
-license="MIT"
-makedepends="cargo help2man"
-checkdepends="coreutils" # test_ls.rs incompatible with busybox truncate
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/uutils/coreutils/archive/$pkgver.tar.gz
- disable_tests_armhf_patch"
-builddir="$srcdir/$_pkgname-$pkgver"
-
-# FIXME: fd issues on builders (mqtt-exec?)
-options="!check"
-
-build() {
- cargo build --release --locked
-
- mkdir bin
- cp target/release/"$_pkgname" bin/uutils
-
- mkdir man1
- help2man --no-info --name=uutils --manual=uutils \
- --version-string="$pkgver" bin/uutils > man1/uutils.1
-
- # create symlinks and individual man pages
- for uutil in $(./bin/uutils | tail -n +7 | tr -d '\n' | sed -e 's/,//g' -e 's/sha3-\s*512sum/sha3-512sum/'); do
- ln -s uutils bin/uutils-$uutil
- case "$uutil" in
- test) ;; # helpless
- \[) help2man --no-info --name=uutils-test --manual=uutils \
- bin/uutils-"$uutil" > man1/uutils-test.1 ;;
- cp) help2man --no-info --name=uutils-"$uutil" --manual=uutils \
- --no-discard-stderr bin/uutils-"$uutil" > man1/uutils-"$uutil".1 ;;
- *) help2man --no-info --name=uutils-"$uutil" --manual=uutils \
- bin/uutils-"$uutil" > man1/uutils-"$uutil".1 ;;
- esac
- done
-}
-
-check() {
- ulimit -n 2048 # running out of file descriptors
-
- case "$CARCH" in
- armhf)
- patch -p1 < "$srcdir"/disable_tests_armhf_patch
- ;;
- esac
- cargo test --release --locked
-}
-
-package() {
- mkdir -p "$pkgdir"/usr
- mv bin "$pkgdir"/usr
-
- mkdir -p "$pkgdir"/usr/share/man
- mv man1 "$pkgdir"/usr/share/man
- install -Dm0644 LICENSE -t "$pkgdir"/usr/share/licenses/"$pkgname"
-}
-
-sha512sums="
-99a023d192505bafc2cbd25bd1df63d35bb89ef6aca2d5a71404aef95f13d7cc42ceec5ad0cba8b2a63a6e5abefbb5be3e8c2375144b55e0cb47e1e2361d1577 uutils-coreutils-0.0.14.tar.gz
-d1bc4b511ef286a8c49c116994739e5706a95cfbc241939555d8099eed160a8023abff0ad91ed367996e2486bdcc8c81f11bd757542030c80cc20dcbce0fd1d8 disable_tests_armhf_patch
-"
diff --git a/testing/uutils-coreutils/disable_tests_armhf_patch b/testing/uutils-coreutils/disable_tests_armhf_patch
deleted file mode 100644
index c18b97d3e81..00000000000
--- a/testing/uutils-coreutils/disable_tests_armhf_patch
+++ /dev/null
@@ -1,54 +0,0 @@
-These tests seem to run forever on our gitlab CI armhf builder.
-
---- a/tests/by-util/test_factor.rs
-+++ b/tests/by-util/test_factor.rs
-@@ -27,6 +27,7 @@ use self::sieve::Sieve;
- const NUM_PRIMES: usize = 10000;
- const NUM_TESTS: usize = 100;
-
-+/*
- #[test]
- fn test_parallel() {
- // factor should only flush the buffer at line breaks
-@@ -63,6 +64,7 @@ fn test_parallel() {
- let hash_check = sha1::Sha1::from(result.stdout()).hexdigest();
- assert_eq!(hash_check, "cc743607c0ff300ff575d92f4ff0c87d5660c393");
- }
-+*/
-
- #[test]
- fn test_first_100000_integers() {
---- a/tests/by-util/test_sort.rs
-+++ b/tests/by-util/test_sort.rs
-@@ -24,6 +24,7 @@ fn test_helper(file_name: &str, possible
- }
- }
-
-+/*
- #[test]
- fn test_buffer_sizes() {
- let buffer_sizes = ["0", "50K", "50k", "1M", "100M"];
-@@ -53,6 +54,7 @@ fn test_buffer_sizes() {
- }
- }
- }
-+*/
-
- #[test]
- fn test_invalid_buffer_size() {
-@@ -958,6 +960,7 @@ fn test_merge_batch_size() {
- .stdout_only_fixture("merge_ints_interleaved.expected");
- }
-
-+/*
- #[test]
- fn test_sigpipe_panic() {
- let mut cmd = new_ucmd!();
-@@ -984,6 +987,7 @@ fn test_conflict_check_out() {
- );
- }
- }
-+*/
-
- #[test]
- fn test_key_takes_one_arg() {
diff --git a/testing/uvicorn/APKBUILD b/testing/uvicorn/APKBUILD
deleted file mode 100644
index 01b0790b195..00000000000
--- a/testing/uvicorn/APKBUILD
+++ /dev/null
@@ -1,56 +0,0 @@
-# Contributor: Michał Polański <michal@polanski.me>
-# Maintainer: Michał Polański <michal@polanski.me>
-pkgname=uvicorn
-pkgver=0.17.6
-pkgrel=0
-pkgdesc="Lightning-fast ASGI server"
-url="https://www.uvicorn.org/"
-license="BSD-3-Clause"
-arch="noarch"
-depends="
- python3
- py3-asgiref
- py3-click
- py3-h11
- "
-makedepends="py3-setuptools"
-checkdepends="
- py3-dotenv
- py3-httptools
- py3-httpx
- py3-pytest
- py3-pytest-asyncio
- py3-pytest-mock
- py3-yaml
- py3-trustme
- py3-watchgod
- py3-websockets
- py3-wsproto
- "
-subpackages="$pkgname-doc"
-source="https://github.com/encode/uvicorn/archive/$pkgver/uvicorn-$pkgver.tar.gz"
-
-case "$CARCH" in
- # test suite blocked by py3-httpx
- armhf|ppc64le) options="!check" ;;
- # test suite blocked by py3-watchgod
- s390x) options="!check" ;;
-esac
-
-build() {
- python3 setup.py build
-}
-
-check() {
- pytest
-}
-
-package() {
- python3 setup.py install --root="$pkgdir" --skip-build
-
- install -Dm644 LICENSE.md "$pkgdir"/usr/share/licenses/$pkgname/LICENSE.md
-}
-
-sha512sums="
-d5c5223759d59648f279e22f7e6af728fe8117ed75488d125c1db3e5e9d385a50d574cff72ac46db4eb0a78d0e4f690096cfe78c774674dfba61860e55b7494e uvicorn-0.17.6.tar.gz
-"
diff --git a/testing/uxn/APKBUILD b/testing/uxn/APKBUILD
index 194b1e21291..00a940daae7 100644
--- a/testing/uxn/APKBUILD
+++ b/testing/uxn/APKBUILD
@@ -1,7 +1,6 @@
# Maintainer: Waweic <waweic@activ.ism.rocks>
pkgname=uxn
-pkgver=0_git20220116
-_commit="4d9ba05045708f3051fff53e2aaefd77190bdb55"
+pkgver=1.0
pkgrel=0
pkgdesc="An assembler and emulator for the Uxn stack-machine"
url="https://wiki.xxiivv.com/site/uxn.html"
@@ -10,9 +9,8 @@ license="MIT"
makedepends="sdl2-dev"
subpackages="$pkgname-doc"
options="!check" #Tests not working yet
-source="$pkgname-$_commit.tar.gz::https://git.sr.ht/~rabbits/uxn/archive/$_commit.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://git.sr.ht/~rabbits/uxn/archive/$pkgver.tar.gz"
-builddir="$srcdir"/$pkgname-$_commit
build() {
HOME=$(mktemp -d) ./build.sh --no-run
}
@@ -23,9 +21,9 @@ package() {
install -Dm 755 -t "$pkgdir"/usr/bin/ "bin/uxncli"
install -Dm644 README.md "$pkgdir/usr/share/doc/$pkgname/README.md"
+ install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
}
-
sha512sums="
-f0edad9fe834dca122106012fa8555fda7b44e6f3219b308bed0454e3b34c0b6d4f2f728455aeef10d92c77e34172a4bee4569cd15e8f624de4d8778ae8c8d1c uxn-4d9ba05045708f3051fff53e2aaefd77190bdb55.tar.gz
+3d2f86f5dc702d73be8c9203dca10bdebf79f5052ab2fab044e46cb4189ddace46365b619e4da30b43804cb056fbb907ef9ff13b5f60e7ad30ce0f129724312c uxn-1.0.tar.gz
"
diff --git a/testing/v4l2loopback-src/APKBUILD b/testing/v4l2loopback-src/APKBUILD
deleted file mode 100644
index 173901b2b3b..00000000000
--- a/testing/v4l2loopback-src/APKBUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-# Contributor: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
-# Maintainer: Krystian Chachuła <krystian@krystianch.com>
-pkgname=v4l2loopback-src
-_modname=v4l2loopback
-pkgver=0.12.5
-pkgrel=0
-pkgdesc="Kernel module to create V4L2 loopback devices"
-url="https://github.com/umlaeute/v4l2loopback"
-arch="noarch"
-license="GPL-2.0-only"
-options="!check" # sources only
-source="$pkgname-$pkgver.tar.gz::https://github.com/umlaeute/v4l2loopback/archive/v$pkgver.tar.gz"
-builddir="$srcdir/v4l2loopback-$pkgver"
-
-prepare() {
- default_prepare
-
- cat >AKMBUILD <<-EOF
- modname=$_modname
- modver=$pkgver-r$pkgrel
- built_modules='v4l2loopback.ko'
- EOF
-}
-
-package() {
- install -D -m644 -t "$pkgdir"/usr/src/$_modname-$pkgver \
- ./*.c ./*.h Makefile AKMBUILD
-}
-
-sha512sums="
-5fd2affbb4a7f38bb78f996179de6570b2bd69cfed2a79c4505e7ea2cdf5b65c0a6807f1f4e03f320b667f5cbe62f26fadd412bc0fec5944e4e394635bf5fb3d v4l2loopback-src-0.12.5.tar.gz
-"
diff --git a/testing/vale/APKBUILD b/testing/vale/APKBUILD
new file mode 100644
index 00000000000..f05df856f74
--- /dev/null
+++ b/testing/vale/APKBUILD
@@ -0,0 +1,35 @@
+# Contributor: Andrej Kolchin <KAAtheWise@protonmail.com>
+# Maintainer: Andrej Kolchin <KAAtheWise@protonmail.com>
+pkgname=vale
+pkgver=3.4.1
+pkgrel=1
+pkgdesc="A markup-aware linter for prose built with speed and extensibility in mind"
+url="https://vale.sh/"
+arch="all"
+license="MIT"
+makedepends="go"
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/errata-ai/vale/archive/v$pkgver.tar.gz"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+export GOFLAGS="$GOFLAGS -modcacherw"
+
+build() {
+ go build -ldflags "-X main.version=v$pkgver" -o bin/vale ./cmd/vale
+}
+
+check() {
+ go test ./internal/core ./internal/lint ./internal/check ./internal/nlp ./internal/glob ./cmd/vale
+}
+
+package() {
+ install -Dm755 bin/vale -t "$pkgdir"/usr/bin
+
+ install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
+
+sha512sums="
+93a70954fa67e8f1a7c3c3c8681784b06c32388c70eb6c75ae90292ae3a913dbb89a0539361b689470ee6a77fd9e0419312a98f64af4d1236d32dc436e3a4d9d vale-3.4.1.tar.gz
+"
diff --git a/testing/vals/APKBUILD b/testing/vals/APKBUILD
new file mode 100644
index 00000000000..2700087ddab
--- /dev/null
+++ b/testing/vals/APKBUILD
@@ -0,0 +1,37 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=vals
+pkgver=0.35.0
+pkgrel=2
+pkgdesc="Helm-like configuration values loader with support for various sources"
+url="https://github.com/helmfile/vals"
+arch="all"
+license="Apache-2.0"
+makedepends="go"
+source="$pkgname-$pkgver.tar.gz::https://github.com/helmfile/vals/archive/refs/tags/v$pkgver.tar.gz"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ go build -v \
+ -o bin/$pkgname \
+ -ldflags "-X main.version=v$pkgver -X main.commit=AlpineLinux" \
+ ./cmd/vals
+}
+
+check() {
+ # TestValues_.* tests require the running backend services
+ # TestGetStringMap test fails in CI only (XXX: investigate more)
+ # Tests in pkg/providers/k8s module requires a kubeconfig file with a locally running k8s cluster
+ # shellcheck disable=2046
+ go test -skip 'TestValues_.*|TestGetStringMap' $(go list ./... | grep -v 'pkg/providers/k8s')
+}
+
+package() {
+ install -Dm755 bin/$pkgname -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+de74c28c3bf6766d3e1af92f561bd85d77825e25de8f4c2330ef7c1121a4c420b69bd3ef07d2edfa8e8abaccb76e741c1cb4289b9ef3e10f2246deb69d932255 vals-0.35.0.tar.gz
+"
diff --git a/testing/vamp-sdk/APKBUILD b/testing/vamp-sdk/APKBUILD
deleted file mode 100644
index 17b06a41082..00000000000
--- a/testing/vamp-sdk/APKBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# Contributor: Alexander Edland <alpine@ocv.me>
-# Maintainer:
-pkgname=vamp-sdk
-pkgver=2.9.0
-pkgrel=1
-pkgdesc="Framework for audio analysis and feature extraction"
-url="https://code.soundsoftware.ac.uk/projects/vamp-plugin-sdk"
-arch="all"
-license="BSD-3-Clause"
-options="!check" # testing is done by make
-makedepends="libsndfile-dev"
-subpackages="$pkgname-dev"
-source="https://code.soundsoftware.ac.uk/attachments/download/2588/vamp-plugin-sdk-$pkgver.tar.gz"
-builddir="$srcdir/vamp-plugin-sdk-$pkgver"
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var
- make
-}
-
-package() {
- make -j1 DESTDIR="$pkgdir" install
-}
-
-sha512sums="7ef7f837d19a08048b059e0da408373a7964ced452b290fae40b85d6d70ca9000bcfb3302cd0b4dc76cf2a848528456f78c1ce1ee0c402228d812bd347b6983b vamp-plugin-sdk-2.9.0.tar.gz"
diff --git a/testing/varnish-modules/APKBUILD b/testing/varnish-modules/APKBUILD
index 5026bc3dfaf..4136e65e8e9 100644
--- a/testing/varnish-modules/APKBUILD
+++ b/testing/varnish-modules/APKBUILD
@@ -1,13 +1,13 @@
# Contributor: Guillaume Quintard <guillaume.quintard@gmail.com>
# Maintainer: Guillaume Quintard <guillaume.quintard@gmail.com>
pkgname=varnish-modules
-pkgver=0.20.0
+pkgver=0.23.0
pkgrel=1
pkgdesc="collection of modules for varnish"
url="https://github.com/varnish/varnish-modules"
arch="all"
license="BSD-2-Clause"
-_vversion="7.1.0"
+_vversion="7.4.2"
makedepends="autoconf automake gcc libtool make py3-docutils python3
varnish-dev~=$_vversion"
depends="varnish~=$_vversion"
@@ -35,5 +35,5 @@ package() {
}
sha512sums="
-e63d6da8f63a5ce56bc7a5a1dd1a908e4ab0f6a36b5bdc5709dca2aa9c0b474bd8a06491ed3dee23636d335241ced4c7ef017b57413b05792ad382f6306a0b36 $pkgname-$pkgver.tar.gz
+913cba864261141cd38bae258960699b29e89e4a67025397b92a37d2677872305738a78bb14fe245517da3fd987613e68a41481e968565dd6da1ee2d85eca726 $pkgname-$pkgver.tar.gz
"
diff --git a/testing/vaultwarden/APKBUILD b/testing/vaultwarden/APKBUILD
deleted file mode 100644
index 4ae2db80ad6..00000000000
--- a/testing/vaultwarden/APKBUILD
+++ /dev/null
@@ -1,61 +0,0 @@
-# Contributor: Chris Kruger <alpine@krugerheavyindustries.com>
-# Maintainer: Chris Kruger <alpine@krugerheavyindustries.com>
-pkgname=vaultwarden
-pkgver=1.24.0
-pkgrel=1
-_pkgcommit=37fff3ef4a90449ccc6414d3ef253169d27d2563
-pkgdesc="bitwarden alternative backend"
-_bw_web_ver=2.28.0
-provides="bitwarden_rs-$pkgver-r$pkgrel"
-replaces="bitwarden_rs"
-url="https://github.com/dani-garcia/vaultwarden"
-arch="all !ppc64le !s390x !riscv64" # ring crate has platform specific asm - no ppc support, no rust on s390x
-license="GPL-3.0-only"
-makedepends="rust cargo sqlite-dev libpq-dev mariadb-dev openssl-dev"
-subpackages="$pkgname-doc $pkgname-openrc"
-install="$pkgname.pre-install"
-pkgusers="vaultwarden"
-pkggroups="vaultwarden"
-source="$pkgname-$pkgver.tar.gz::https://github.com/dani-garcia/vaultwarden/archive/$_pkgcommit.tar.gz
- $pkgname-webvault-$_bw_web_ver.tar.gz::https://github.com/dani-garcia/bw_web_builds/releases/download/v$_bw_web_ver/bw_web_v$_bw_web_ver.tar.gz
- $pkgname.initd
- $pkgname.confd"
-builddir="$srcdir/vaultwarden-$_pkgcommit"
-
-prepare() {
- default_prepare
- cargo fetch --locked
-}
-
-build() {
- cat >> Cargo.toml <<- EOF
- codegen-units = 1
- opt-level = "s"
- panic = "abort"
- EOF
- cargo build --release --features sqlite,postgresql,mysql,enable_mimalloc --frozen
-}
-
-check() {
- cargo test --release --features sqlite,postgresql,mysql,enable_mimalloc --frozen
-}
-
-package() {
- install -d "$pkgdir"/usr/sbin
- install -m755 target/release/vaultwarden "$pkgdir"/usr/sbin/
- install -d -m744 -o vaultwarden -g vaultwarden "$pkgdir"/var/lib/vaultwarden "$pkgdir"/var/log/"$pkgname"
- (cd "$srcdir"/web-vault; find . -type f -exec \
- install -Dm644 -o vaultwarden -g vaultwarden {} "$pkgdir"/var/lib/vaultwarden/web-vault/{} \;)
- (cd "$builddir"/src/static; find . -type f -exec \
- install -Dm644 -o vaultwarden -g vaultwarden {} "$pkgdir"/var/lib/vaultwarden/{} \;)
- install -Dm644 README.md "$pkgdir"/usr/share/doc/vaultwarden/README.md
- install -Dm755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
- install -Dm655 "$srcdir"/$pkgname.confd "$pkgdir"/etc/conf.d/$pkgname
-}
-
-sha512sums="
-11e4736745ce7134c55b909f6eb33c44bb9e46afdeb97f2b8c847ddfc2790a4f171879867df83ff2f6f431e786b7e67f5e5a401f112f34a6962e5b790adb543b vaultwarden-1.24.0.tar.gz
-b28a4a53deb0c82025d08a50e36fc84279ed24b41a557a7ca9afbd2a3ae012d6904edff137509fa81b606500eaccc219555fafbc72c6a530d58d0681048e80dc vaultwarden-webvault-2.28.0.tar.gz
-c15bbe6b21ab576c7532e1e2781068d99ef163a84a93414db0246113730e1cc058b6007ea2129d81c678aae035fd91be0e8c031f25de24b826a92d4ce8999aa3 vaultwarden.initd
-115cfa4ca84cdac41736b366a2c5e729adf5a5a8499c8a06dfd9d1544b64a365d6fbc3ceeb3aef54141aa29694e7054f03dd9589092c46be32d94e3537167e16 vaultwarden.confd
-"
diff --git a/testing/vaultwarden/vaultwarden.confd b/testing/vaultwarden/vaultwarden.confd
deleted file mode 100644
index eb6f0ea2a94..00000000000
--- a/testing/vaultwarden/vaultwarden.confd
+++ /dev/null
@@ -1,379 +0,0 @@
-## Vaultwarden Configuration File
-## Uncomment any of the following lines to change the defaults
-##
-## Be aware that most of these settings will be overridden if they were changed
-## in the admin interface. Those overrides are stored within DATA_FOLDER/config.json .
-##
-## By default, vaultwarden expects for this file to be named ".env" and located
-## in the current working directory. If this is not the case, the environment
-## variable ENV_FILE can be set to the location of this file prior to starting
-## vaultwarden.
-
-## Main data folder
-DATA_FOLDER=/var/lib/vaultwarden
-
-## Database URL
-## When using SQLite, this is the path to the DB file, default to %DATA_FOLDER%/db.sqlite3
-# export DATABASE_URL=data/db.sqlite3
-## When using MySQL, specify an appropriate connection URI.
-## Details: https://docs.diesel.rs/diesel/mysql/struct.MysqlConnection.html
-# export DATABASE_URL=mysql://user:password@host[:port]/database_name
-## When using PostgreSQL, specify an appropriate connection URI (recommended)
-## or keyword/value connection string.
-## Details:
-## - https://docs.diesel.rs/diesel/pg/struct.PgConnection.html
-## - https://www.postgresql.org/docs/current/libpq-connect.html#LIBPQ-CONNSTRING
-# export DATABASE_URL=postgresql://user:password@host[:port]/database_name
-
-## Database max connections
-## Define the size of the connection pool used for connecting to the database.
-# export DATABASE_MAX_CONNS=10
-
-## Individual folders, these override %DATA_FOLDER%
-# export RSA_KEY_FILENAME=data/rsa_key
-# export ICON_CACHE_FOLDER=data/icon_cache
-# export ATTACHMENTS_FOLDER=data/attachments
-# export SENDS_FOLDER=data/sends
-
-## Templates data folder, by default uses embedded templates
-## Check source code to see the format
-# export TEMPLATES_FOLDER=/path/to/templates
-## Automatically reload the templates for every request, slow, use only for development
-# export RELOAD_TEMPLATES=false
-
-## Client IP Header, used to identify the IP of the client, defaults to "X-Real-IP"
-## Set to the string "none" (without quotes), to disable any headers and just use the remote IP
-# export IP_HEADER=X-Real-IP
-
-## Cache time-to-live for successfully obtained icons, in seconds (0 is "forever")
-# export ICON_CACHE_TTL=2592000
-## Cache time-to-live for icons which weren't available, in seconds (0 is "forever")
-# export ICON_CACHE_NEGTTL=259200
-
-## Web vault settings
-# export WEB_VAULT_FOLDER=web-vault/
-# export WEB_VAULT_ENABLED=true
-
-## Enables websocket notifications
-# export WEBSOCKET_ENABLED=false
-
-## Controls the WebSocket server address and port
-# export WEBSOCKET_ADDRESS=0.0.0.0
-# export WEBSOCKET_PORT=3012
-
-## Controls whether users are allowed to create Bitwarden Sends.
-## This setting applies globally to all users.
-## To control this on a per-org basis instead, use the "Disable Send" org policy.
-# export SENDS_ALLOWED=true
-
-## Controls whether users can enable emergency access to their accounts.
-## This setting applies globally to all users.
-# export EMERGENCY_ACCESS_ALLOWED=true
-
-## Job scheduler settings
-##
-## Job schedules use a cron-like syntax (as parsed by https://crates.io/crates/cron),
-## and are always in terms of UTC time (regardless of your local time zone settings).
-##
-## How often (in ms) the job scheduler thread checks for jobs that need running.
-## Set to 0 to globally disable scheduled jobs.
-# export JOB_POLL_INTERVAL_MS=30000
-##
-## Cron schedule of the job that checks for Sends past their deletion date.
-## Defaults to hourly (5 minutes after the hour). Set blank to disable this job.
-# export SEND_PURGE_SCHEDULE="0 5 * * * *"
-##
-## Cron schedule of the job that checks for trashed items to delete permanently.
-## Defaults to daily (5 minutes after midnight). Set blank to disable this job.
-# export TRASH_PURGE_SCHEDULE="0 5 0 * * *"
-##
-## Cron schedule of the job that checks for incomplete 2FA logins.
-## Defaults to once every minute. Set blank to disable this job.
-# export INCOMPLETE_2FA_SCHEDULE="30 * * * * *"
-##
-## Cron schedule of the job that sends expiration reminders to emergency access grantors.
-## Defaults to hourly (5 minutes after the hour). Set blank to disable this job.
-# export EMERGENCY_NOTIFICATION_REMINDER_SCHEDULE="0 5 * * * *"
-##
-## Cron schedule of the job that grants emergency access requests that have met the required wait time.
-## Defaults to hourly (5 minutes after the hour). Set blank to disable this job.
-# export EMERGENCY_REQUEST_TIMEOUT_SCHEDULE="0 5 * * * *"
-
-## Enable extended logging, which shows timestamps and targets in the logs
-# export EXTENDED_LOGGING=true
-
-## Timestamp format used in extended logging.
-## Format specifiers: https://docs.rs/chrono/latest/chrono/format/strftime
-# export LOG_TIMESTAMP_FORMAT="%Y-%m-%d %H:%M:%S.%3f"
-
-## Logging to file
-## export It's recommended to also set 'ROCKET_CLI_COLORS=off'
-# export LOG_FILE=/path/to/log
-
-## Logging to Syslog
-## This requires extended logging
-## export It's recommended to also set 'ROCKET_CLI_COLORS=off'
-# export USE_SYSLOG=false
-
-## Log level
-## Change the verbosity of the log output
-## Valid values are "trace", "debug", "info", "warn", "error" and "off"
-## Setting it to "trace" or "debug" would also show logs for mounted
-## routes and static file, websocket and alive requests
-# export LOG_LEVEL=Info
-
-## Enable WAL for the DB
-## Set to false to avoid enabling WAL during startup.
-## Note that if the DB already has WAL enabled, you will also need to disable WAL in the DB,
-## this setting only prevents vaultwarden from automatically enabling it on start.
-## Please read project wiki page about this setting first before changing the value as it can
-## cause performance degradation or might render the service unable to start.
-# export ENABLE_DB_WAL=true
-
-## Database connection retries
-## Number of times to retry the database connection during startup, with 1 second delay between each retry, set to 0 to retry indefinitely
-# export DB_CONNECTION_RETRIES=15
-
-## Icon service
-## The predefined icon services are: internal, bitwarden, duckduckgo, google.
-## To specify a custom icon service, set a URL template with exactly one instance of `{}`,
-## which is replaced with the domain. For example: `https://icon.example.com/domain/{}`.
-##
-## `internal` refers to Vaultwarden's built-in icon fetching implementation.
-## If an external service is set, an icon request to Vaultwarden will return an HTTP
-## redirect to the corresponding icon at the external service. An external service may
-## be useful if your Vaultwarden instance has no external network connectivity, or if
-## you are concerned that someone may probe your instance to try to detect whether icons
-## for certain sites have been cached.
-# export ICON_SERVICE=internal
-
-## Icon redirect code
-## The HTTP status code to use for redirects to an external icon service.
-## The supported codes are 301 (legacy permanent), 302 (legacy temporary), 307 (temporary), and 308 (permanent).
-## Temporary redirects are useful while testing different icon services, but once a service
-## has been decided on, consider using permanent redirects for cacheability. The legacy codes
-## are currently better supported by the Bitwarden clients.
-# export ICON_REDIRECT_CODE=302
-
-## Disable icon downloading
-## Set to true to disable icon downloading in the internal icon service.
-## This still serves existing icons from $ICON_CACHE_FOLDER, without generating any external
-## network requests. $ICON_CACHE_TTL must also be set to 0; otherwise, the existing icons
-## will be deleted eventually, but won't be downloaded again.
-# export DISABLE_ICON_DOWNLOAD=false
-
-## Icon download timeout
-## Configure the timeout value when downloading the favicons.
-## The default is 10 seconds, but this could be to low on slower network connections
-# export ICON_DOWNLOAD_TIMEOUT=10
-
-## Icon blacklist Regex
-## Any domains or IPs that match this regex won't be fetched by the icon service.
-## Useful to hide other servers in the local network. Check the WIKI for more details
-## NOTE: Always enclose this regex withing single quotes!
-# export ICON_BLACKLIST_REGEX='^(192\.168\.0\.[0-9]+|192\.168\.1\.[0-9]+)$'
-
-## Any IP which is not defined as a global IP will be blacklisted.
-## Useful to secure your internal environment: See https://en.wikipedia.org/wiki/Reserved_IP_addresses for a list of IPs which it will block
-# export ICON_BLACKLIST_NON_GLOBAL_IPS=true
-
-## Disable 2FA remember
-## Enabling this would force the users to use a second factor to login every time.
-## Note that the checkbox would still be present, but ignored.
-# export DISABLE_2FA_REMEMBER=false
-
-## Maximum attempts before an email token is reset and a new email will need to be sent.
-# export EMAIL_ATTEMPTS_LIMIT=3
-
-## Token expiration time
-## Maximum time in seconds a token is valid. The time the user has to open email client and copy token.
-# export EMAIL_EXPIRATION_TIME=600
-
-## Email token size
-## Number of digits in an email 2FA token (min: 6, max: 255).
-## Note that the Bitwarden clients are hardcoded to mention 6 digit codes regardless of this setting!
-# export EMAIL_TOKEN_SIZE=6
-
-## Controls if new users can register
-# export SIGNUPS_ALLOWED=true
-
-## Controls if new users need to verify their email address upon registration
-## Note that setting this option to true prevents logins until the email address has been verified!
-## The welcome email will include a verification link, and login attempts will periodically
-## trigger another verification email to be sent.
-# export SIGNUPS_VERIFY=false
-
-## If SIGNUPS_VERIFY is set to true, this limits how many seconds after the last time
-## an email verification link has been sent another verification email will be sent
-# export SIGNUPS_VERIFY_RESEND_TIME=3600
-
-## If SIGNUPS_VERIFY is set to true, this limits how many times an email verification
-## email will be re-sent upon an attempted login.
-# export SIGNUPS_VERIFY_RESEND_LIMIT=6
-
-## Controls if new users from a list of comma-separated domains can register
-## even if SIGNUPS_ALLOWED is set to false
-# export SIGNUPS_DOMAINS_WHITELIST=example.com,example.net,example.org
-
-## Controls which users can create new orgs.
-## Blank or 'all' means all users can create orgs (this is the default):
-# export ORG_CREATION_USERS=
-## 'none' means no users can create orgs:
-# export ORG_CREATION_USERS=none
-## A comma-separated list means only those users can create orgs:
-# export ORG_CREATION_USERS=admin1@example.com,admin2@example.com
-
-## Token for the admin interface, preferably use a long random string
-## One option is to use 'openssl rand -base64 48'
-## If not set, the admin panel is disabled
-# export ADMIN_TOKEN=Vy2VyYTTsKPv8W5aEOWUbB/Bt3DEKePbHmI4m9VcemUMS2rEviDowNAFqYi1xjmp
-
-## Enable this to bypass the admin panel security. This option is only
-## meant to be used with the use of a separate auth layer in front
-# export DISABLE_ADMIN_TOKEN=false
-
-## Invitations org admins to invite users, even when signups are disabled
-# export INVITATIONS_ALLOWED=true
-## Name shown in the invitation emails that don't come from a specific organization
-# export INVITATION_ORG_NAME=Vaultwarden
-
-## Per-organization attachment storage limit (KB)
-## Max kilobytes of attachment storage allowed per organization.
-## When this limit is reached, organization members will not be allowed to upload further attachments for ciphers owned by that organization.
-# export ORG_ATTACHMENT_LIMIT=
-## Per-user attachment storage limit (KB)
-## Max kilobytes of attachment storage allowed per user.
-## When this limit is reached, the user will not be allowed to upload further attachments.
-# export USER_ATTACHMENT_LIMIT=
-
-## Number of days to wait before auto-deleting a trashed item.
-## If unset (the default), trashed items are not auto-deleted.
-## This setting applies globally, so make sure to inform all users of any changes to this setting.
-# export TRASH_AUTO_DELETE_DAYS=
-
-## Number of minutes to wait before a 2FA-enabled login is considered incomplete,
-## resulting in an email notification. An incomplete 2FA login is one where the correct
-## master password was provided but the required 2FA step was not completed, which
-## potentially indicates a master password compromise. Set to 0 to disable this check.
-## This setting applies globally to all users.
-# export INCOMPLETE_2FA_TIME_LIMIT=3
-
-## Controls the PBBKDF password iterations to apply on the server
-## The change only applies when the password is changed
-# export PASSWORD_ITERATIONS=100000
-
-## Controls whether a password hint should be shown directly in the web page if
-## SMTP service is not configured. Not recommended for publicly-accessible instances
-## as this provides unauthenticated access to potentially sensitive data.
-# export SHOW_PASSWORD_HINT=false
-
-## Domain settings
-## The domain must match the address from where you access the server
-## It's recommended to configure this value, otherwise certain functionality might not work,
-## like attachment downloads, email links and U2F.
-## For U2F to work, the server must use HTTPS, you can use Let's Encrypt for free certs
-# export DOMAIN=https://bw.domain.tld:8443
-
-## Allowed iframe ancestors (Know the risks!)
-## https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy/frame-ancestors
-## Allows other domains to embed the web vault into an iframe, useful for embedding into secure intranets
-## This adds the configured value to the 'Content-Security-Policy' headers 'frame-ancestors' value.
-## Multiple values must be separated with a whitespace.
-# export ALLOWED_IFRAME_ANCESTORS=
-
-## Number of seconds, on average, between login requests from the same IP address before rate limiting kicks in.
-# export LOGIN_RATELIMIT_SECONDS=60
-## Allow a burst of requests of up to this size, while maintaining the average indicated by `LOGIN_RATELIMIT_SECONDS`.
-## Note that this applies to both the login and the 2FA, so it's recommended to allow a burst size of at least 2.
-# export LOGIN_RATELIMIT_MAX_BURST=10
-
-## Number of seconds, on average, between admin requests from the same IP address before rate limiting kicks in.
-# export ADMIN_RATELIMIT_SECONDS=300
-## Allow a burst of requests of up to this size, while maintaining the average indicated by `ADMIN_RATELIMIT_SECONDS`.
-# export ADMIN_RATELIMIT_MAX_BURST=3
-
-## Yubico (Yubikey) Settings
-## Set your Client ID and Secret Key for Yubikey OTP
-## You can generate it here: https://upgrade.yubico.com/getapikey/
-## You can optionally specify a custom OTP server
-# export YUBICO_CLIENT_ID=11111
-# export YUBICO_SECRET_KEY=AAAAAAAAAAAAAAAAAAAAAAAA
-# export YUBICO_SERVER=http://yourdomain.com/wsapi/2.0/verify
-
-## Duo Settings
-## You need to configure all options to enable global Duo support, otherwise users would need to configure it themselves
-## Create an account and protect an application as mentioned in this link (only the first step, not the rest):
-## https://help.bitwarden.com/article/setup-two-step-login-duo/#create-a-duo-security-account
-## Then set the following options, based on the values obtained from the last step:
-# export DUO_IKEY=<Integration Key>
-# export DUO_SKEY=<Secret Key>
-# export DUO_HOST=<API Hostname>
-## After that, you should be able to follow the rest of the guide linked above,
-## ignoring the fields that ask for the values that you already configured beforehand.
-
-## Authenticator Settings
-## Disable authenticator time drifted codes to be valid.
-## TOTP codes of the previous and next 30 seconds will be invalid
-##
-## According to the RFC6238 (https://tools.ietf.org/html/rfc6238),
-## we allow by default the TOTP code which was valid one step back and one in the future.
-## This can however allow attackers to be a bit more lucky with there attempts because there are 3 valid codes.
-## You can disable this, so that only the current TOTP Code is allowed.
-## Keep in mind that when a sever drifts out of time, valid codes could be marked as invalid.
-## In any case, if a code has been used it can not be used again, also codes which predates it will be invalid.
-# export AUTHENTICATOR_DISABLE_TIME_DRIFT=false
-
-## Rocket specific settings
-## See https://rocket.rs/v0.4/guide/configuration/ for more details.
-# export ROCKET_ADDRESS=0.0.0.0
-# export ROCKET_PORT=80 # Defaults to 80 in the Docker images, or 8000 otherwise.
-# export ROCKET_WORKERS=10
-# export ROCKET_TLS={certs="/path/to/certs.pem",key="/path/to/key.pem"}
-
-## Mail specific settings, set SMTP_HOST and SMTP_FROM to enable the mail service.
-## To make sure the email links are pointing to the correct host, set the DOMAIN variable.
-## Note: if SMTP_USERNAME is specified, SMTP_PASSWORD is mandatory
-# export SMTP_HOST=smtp.domain.tld
-# export SMTP_FROM=vaultwarden@domain.tld
-# export SMTP_FROM_NAME=Vaultwarden
-# export SMTP_SECURITY=starttls # ("starttls", "force_tls", "off") Enable a secure connection. Default is "starttls" (Explicit - ports 587 or 25), "force_tls" (Implicit - port 465) or "off", no encryption (port 25)
-# export SMTP_PORT=587 # Ports 587 (submission) and 25 (smtp) are standard without encryption and with encryption via STARTTLS (Explicit TLS). Port 465 is outdated and used with Implicit TLS.
-# export SMTP_USERNAME=username
-# export SMTP_PASSWORD=password
-# export SMTP_TIMEOUT=15
-
-## Defaults for SSL is "Plain" and "Login" and nothing for Non-SSL connections.
-## Possible values: ["Plain", "Login", "Xoauth2"].
-## Multiple options need to be separated by a comma ','.
-# export SMTP_AUTH_MECHANISM="Plain"
-
-## Server name sent during the SMTP HELO
-## By default this value should be is on the machine's hostname,
-## but might need to be changed in case it trips some anti-spam filters
-# export HELO_NAME=
-
-## SMTP debugging
-## When set to true this will output very detailed SMTP messages.
-## WARNING: This could contain sensitive information like passwords and usernames! Only enable this during troubleshooting!
-# export SMTP_DEBUG=false
-
-## Accept Invalid Hostnames
-## DANGEROUS: This option introduces significant vulnerabilities to man-in-the-middle attacks!
-## Only use this as a last resort if you are not able to use a valid certificate.
-# export SMTP_ACCEPT_INVALID_HOSTNAMES=false
-
-## Accept Invalid Certificates
-## DANGEROUS: This option introduces significant vulnerabilities to man-in-the-middle attacks!
-## Only use this as a last resort if you are not able to use a valid certificate.
-## If the Certificate is valid but the hostname doesn't match, please use SMTP_ACCEPT_INVALID_HOSTNAMES instead.
-# export SMTP_ACCEPT_INVALID_CERTS=false
-
-## Require new device emails. When a user logs in an email is required to be sent.
-## If sending the email fails the login attempt will fail!!
-# export REQUIRE_DEVICE_EMAIL=false
-
-## HIBP Api Key
-## HaveIBeenPwned API Key, request it here: https://haveibeenpwned.com/API/Key
-# export HIBP_API_KEY=
-
-# vim: syntax=ini
diff --git a/testing/vaultwarden/vaultwarden.initd b/testing/vaultwarden/vaultwarden.initd
deleted file mode 100644
index 61cbbf9c7de..00000000000
--- a/testing/vaultwarden/vaultwarden.initd
+++ /dev/null
@@ -1,20 +0,0 @@
-#!/sbin/openrc-run
-
-name="vaultwarden"
-description="vaultwarden alternative bitwarden backend"
-supervisor="supervise-daemon"
-command="/usr/sbin/vaultwarden"
-command_user="vaultwarden:vaultwarden"
-output_log="/var/log/vaultwarden/access.log"
-error_log="/var/log/vaultwarden/error.log"
-directory=$DATA_FOLDER
-
-depend() {
- need localmount net
- after firewall
-}
-
-start_pre() {
- checkpath --directory --owner vaultwarden:vaultwarden --mode 0744 \
- /var/lib/vaultwarden /var/log/vaultwarden
-}
diff --git a/testing/vaultwarden/vaultwarden.pre-install b/testing/vaultwarden/vaultwarden.pre-install
deleted file mode 100644
index f07aa7dd001..00000000000
--- a/testing/vaultwarden/vaultwarden.pre-install
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/bin/sh
-
-addgroup -S vaultwarden 2>/dev/null
-adduser -S -D -H -h /var/lib/vaultwarden -g "Vaultwarden user" \
- -s /bin/sh -G vaultwarden vaultwarden 2>/dev/null
-
-exit 0
diff --git a/testing/vbindiff/APKBUILD b/testing/vbindiff/APKBUILD
index 838e40795d3..beed87d9f4d 100755..100644
--- a/testing/vbindiff/APKBUILD
+++ b/testing/vbindiff/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Alex Yam <alex@alexyam.com>
pkgname=vbindiff
pkgver=3.0_beta5
-pkgrel=0
+pkgrel=1
pkgdesc="ncurses hex editor with diff mode for binary file comparison, supports files up to 4GB"
url="https://www.cjmweb.net/vbindiff/"
arch="all"
diff --git a/testing/vcdimager/APKBUILD b/testing/vcdimager/APKBUILD
index 19fc7b43e04..b2617a1a62f 100644
--- a/testing/vcdimager/APKBUILD
+++ b/testing/vcdimager/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=vcdimager
pkgver=2.0.1
-pkgrel=1
+pkgrel=3
pkgdesc="Mastering suite for authoring disassembling and analyzing Video CD's and Super Video CD's"
url="http://www.vcdimager.org"
arch="all"
diff --git a/testing/vcmi/APKBUILD b/testing/vcmi/APKBUILD
new file mode 100644
index 00000000000..6f84d1ca83f
--- /dev/null
+++ b/testing/vcmi/APKBUILD
@@ -0,0 +1,54 @@
+# Maintainer: ovf <ovf@mm.st>
+pkgname=vcmi
+pkgver=1.4.5
+pkgrel=0
+pkgdesc="Open-source engine for Heroes of Might and Magic III"
+url="https://vcmi.eu"
+# ppc64le, riscv64: no luajit
+# game engine
+arch="aarch64 x86_64"
+license="GPL-2.0-or-later"
+makedepends="
+ boost-dev
+ cmake
+ ffmpeg-dev
+ fuzzylite-dev
+ luajit-dev
+ minizip-dev
+ onetbb-dev
+ qt6-qtbase-dev
+ qt6-qttools-dev
+ samurai
+ sdl2-dev
+ sdl2_image-dev
+ sdl2_mixer-dev
+ sdl2_ttf-dev
+ zlib-dev
+ "
+source="https://github.com/vcmi/vcmi/archive/refs/tags/$pkgver/vcmi-$pkgver.tar.gz"
+
+build() {
+ if [ "$CBUILD" != "$CHOST" ]; then
+ CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ cmake -B build -G Ninja -Wno-dev \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_DISABLE_PRECOMPILE_HEADERS=ON \
+ -DCMAKE_BUILD_TYPE=None \
+ -DFORCE_BUNDLED_FL=OFF \
+ -DFORCE_BUNDLED_MINIZIP=OFF \
+ $CMAKE_CROSSOPTS
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+538d1b065282f2ff234ad5101dfdc35d9b280473db897d2aaca91d7760f4a8fb2be7f91c7731515fdcdf19b9204b832b244381feda0988efa89c11a66f937a98 vcmi-1.4.5.tar.gz
+"
diff --git a/testing/vcsh/APKBUILD b/testing/vcsh/APKBUILD
index cb9c473cbdf..ee65a5aa076 100644
--- a/testing/vcsh/APKBUILD
+++ b/testing/vcsh/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Martin Kühl <martin.kuehl@posteo.net>
# Maintainer: Martin Kühl <martin.kuehl@posteo.net>
pkgname=vcsh
-pkgver=2.0.4
+pkgver=2.0.5
pkgrel=0
pkgdesc="config manager based on Git"
url="https://github.com/RichiH/vcsh"
@@ -31,5 +31,5 @@ package() {
}
sha512sums="
-36c823052c2e2d511b6a9e07e43e7c96255ed0fdcd620db3bb22ba3215060762c0ae556afab31522ff87a443affbee46d9ab4cc8a04aa3a6fa5fdae96aba8d09 vcsh-2.0.4.tar.xz
+e33be3ee1a6ed908704eb2e355840598595b711d47e5fb8d5b79e3d715d81faa410226641e374aecee98de2938117ec094a1fe3d21e54d68e3ae117d07185f6b vcsh-2.0.5.tar.xz
"
diff --git a/testing/vcstool/APKBUILD b/testing/vcstool/APKBUILD
index 9a46f332bb7..9ee5ca6576f 100644
--- a/testing/vcstool/APKBUILD
+++ b/testing/vcstool/APKBUILD
@@ -2,30 +2,38 @@
# Maintainer: Russ Webber <russ@rw.id.au>
pkgname=vcstool
pkgver=0.3.0
-pkgrel=1
+pkgrel=5
pkgdesc="A command line tool designed to make working with multiple repositories easier"
url="https://github.com/dirk-thomas/vcstool"
arch="noarch"
license="Apache-2.0"
-depends="python3 py3-yaml"
-makedepends="py3-setuptools"
-checkdepends="py3-pytest py3-flake8 py3-pydocstyle py3-flake8-import-order subversion mercurial git"
-subpackages="$pkgname-bash-completion
+depends="py3-yaml py3-setuptools"
+makedepends="py3-gpep517 py3-wheel"
+checkdepends="py3-pytest py3-flake8 py3-flake8-import-order subversion mercurial git"
+subpackages="
+ $pkgname-pyc
+ $pkgname-bash-completion
$pkgname-zsh-completion
$pkgname-tcsh-completion:tcshcomp:noarch
"
source="$pkgname-$pkgver.tar.gz::https://github.com/dirk-thomas/vcstool/archive/$pkgver.tar.gz"
+options="!check" # fail due to various git errors, and outdated dependency expectations
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- PYTHONPATH="$builddir/build" pytest -s -v test -k 'not test_import_shallow'
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ gpep517 install-wheel --destdir .testenv --prefix '' .dist/*.whl
+ .testenv/bin/python3 -m pytest
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ gpep517 install-wheel --destdir "$pkgdir" \
+ .dist/*.whl
mkdir -p "$pkgdir"/usr/share/bash-completion/completions
mkdir -p "$pkgdir"/usr/share/zsh/site-functions
diff --git a/testing/vdirsyncer/01-fix-ssl-tests.patch b/testing/vdirsyncer/01-fix-ssl-tests.patch
deleted file mode 100644
index 6dc4c401d25..00000000000
--- a/testing/vdirsyncer/01-fix-ssl-tests.patch
+++ /dev/null
@@ -1,113 +0,0 @@
-# From https://github.com/pimutils/vdirsyncer/pull/903
-diff --git a/tests/system/conftest.py b/tests/system/conftest.py
-new file mode 100644
-index 00000000..59271e57
---- /dev/null
-+++ b/tests/system/conftest.py
-@@ -0,0 +1,26 @@
-+import ssl
-+
-+import pytest
-+import trustme
-+
-+
-+@pytest.fixture(scope="session")
-+def ca():
-+ return trustme.CA()
-+
-+
-+@pytest.fixture(scope="session")
-+def localhost_cert(ca):
-+ return ca.issue_cert("localhost")
-+
-+
-+@pytest.fixture(scope="session")
-+def httpserver_ssl_context(localhost_cert):
-+ context = ssl.SSLContext(ssl.PROTOCOL_TLS_SERVER)
-+
-+ crt = localhost_cert.cert_chain_pems[0]
-+ key = localhost_cert.private_key_pem
-+ with crt.tempfile() as crt_file, key.tempfile() as key_file:
-+ context.load_cert_chain(crt_file, key_file)
-+
-+ return context
-diff --git a/tests/system/utils/test_main.py b/tests/system/utils/test_main.py
-index 5a3942db..db3e70fd 100644
---- a/tests/system/utils/test_main.py
-+++ b/tests/system/utils/test_main.py
-@@ -4,6 +4,8 @@
- import click_log
- import pytest
- import requests
-+from cryptography import x509
-+from cryptography.hazmat.primitives import hashes
-
- from vdirsyncer import http
- from vdirsyncer import utils
-@@ -38,27 +40,55 @@ def _fingerprints_broken():
- return broken_urllib3
-
-
-+def fingerprint_of_cert(cert, hash=hashes.SHA256):
-+ return x509.load_pem_x509_certificate(cert.bytes()).fingerprint(hash()).hex()
-+
-+
- @pytest.mark.skipif(
- _fingerprints_broken(), reason="https://github.com/shazow/urllib3/issues/529"
- )
--@pytest.mark.parametrize(
-- "fingerprint",
-- [
-- "94:FD:7A:CB:50:75:A4:69:82:0A:F8:23:DF:07:FC:69:3E:CD:90:CA",
-- "19:90:F7:23:94:F2:EF:AB:2B:64:2D:57:3D:25:95:2D",
-- ],
-+@pytest.mark.parametrize("hash_algorithm", [hashes.MD5, hashes.SHA256])
-+def test_request_ssl_leaf_fingerprint(httpserver, localhost_cert, hash_algorithm):
-+ fingerprint = fingerprint_of_cert(localhost_cert.cert_chain_pems[0], hash_algorithm)
-+
-+ # We have to serve something:
-+ httpserver.expect_request("/").respond_with_data("OK")
-+ url = f"https://{httpserver.host}:{httpserver.port}/"
-+
-+ http.request("GET", url, verify=False, verify_fingerprint=fingerprint)
-+ with pytest.raises(requests.exceptions.ConnectionError) as excinfo:
-+ http.request("GET", url, verify_fingerprint=fingerprint)
-+
-+ with pytest.raises(requests.exceptions.ConnectionError) as excinfo:
-+ http.request(
-+ "GET",
-+ url,
-+ verify=False,
-+ verify_fingerprint="".join(reversed(fingerprint)),
-+ )
-+ assert "Fingerprints did not match" in str(excinfo.value)
-+
-+
-+@pytest.mark.skipif(
-+ _fingerprints_broken(), reason="https://github.com/shazow/urllib3/issues/529"
- )
--def test_request_ssl_fingerprints(httpsserver, fingerprint):
-- httpsserver.serve_content("") # we need to serve something
-+@pytest.mark.xfail(reason="Not implemented")
-+@pytest.mark.parametrize("hash_algorithm", [hashes.MD5, hashes.SHA256])
-+def test_request_ssl_ca_fingerprint(httpserver, ca, hash_algorithm):
-+ fingerprint = fingerprint_of_cert(ca.cert_pem)
-+
-+ # We have to serve something:
-+ httpserver.expect_request("/").respond_with_data("OK")
-+ url = f"https://{httpserver.host}:{httpserver.port}/"
-
-- http.request("GET", httpsserver.url, verify=False, verify_fingerprint=fingerprint)
-+ http.request("GET", url, verify=False, verify_fingerprint=fingerprint)
- with pytest.raises(requests.exceptions.ConnectionError) as excinfo:
-- http.request("GET", httpsserver.url, verify_fingerprint=fingerprint)
-+ http.request("GET", url, verify_fingerprint=fingerprint)
-
- with pytest.raises(requests.exceptions.ConnectionError) as excinfo:
- http.request(
- "GET",
-- httpsserver.url,
-+ url,
- verify=False,
- verify_fingerprint="".join(reversed(fingerprint)),
- )
diff --git a/testing/vdirsyncer/APKBUILD b/testing/vdirsyncer/APKBUILD
deleted file mode 100644
index c6bbf444bce..00000000000
--- a/testing/vdirsyncer/APKBUILD
+++ /dev/null
@@ -1,52 +0,0 @@
-# Contributor: Galen Abell <galen@galenabell.com>
-# Maintainer: Galen Abell <galen@galenabell.com>
-pkgname=vdirsyncer
-_pyname=$pkgname
-pkgver=0.18.0
-pkgrel=1
-pkgdesc="CLI Synchronization for CalDAV and CardDAV"
-url="http://vdirsyncer.pimutils.org"
-arch="noarch"
-license="BSD-3-Clause"
-depends="
- python3
- py3-atomicwrites
- py3-click
- py3-click-log
- py3-click-threading
- py3-requests
- py3-requests-toolbelt
- "
-makedepends="py3-setuptools py3-setuptools_scm py3-sphinx"
-checkdepends="
- py3-pytest
- py3-pytest-cov
- py3-pytest-httpserver
- py3-hypothesis
- py3-subtesthack
- py3-trustme
- py3-werkzeug
- "
-subpackages="$pkgname-doc"
-source="https://files.pythonhosted.org/packages/source/${_pyname%"${_pyname#?}"}/$_pyname/$_pyname-$pkgver.tar.gz
- 01-fix-ssl-tests.patch"
-
-build() {
- python3 setup.py build
- PYTHONPATH="build:$PYTHONPATH" sphinx-build -b man docs/ build/
-}
-
-check() {
- # test_request_ssl requires network
- make DETERMINISTIC_TESTS=true PYTEST_ADDOPTS="--deselect tests/system/utils/test_main.py::test_request_ssl" test
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
- install -Dm644 build/$pkgname.1 "$pkgdir"/usr/share/man/man1/$pkgname.1
-}
-
-sha512sums="
-7fb3d0f7d982d8390d278de1a620231e6ead1ec64057c5dbac98dcff491fa3e6b9ed8ba953995458e393aab73b0b9ab8ba14010e06f90a04d8ee2c28c7c7fbfd vdirsyncer-0.18.0.tar.gz
-09493b5298212fc724b3dfd2a5cffe89fae0857ee1e0a27eb272bf5960b03bac2c0cc8e18a2b9b58de13b8287c2377b1d2fb22b725f10fb243777faa9fd2d3b2 01-fix-ssl-tests.patch
-"
diff --git a/testing/vector/APKBUILD b/testing/vector/APKBUILD
new file mode 100644
index 00000000000..7eddc588b8b
--- /dev/null
+++ b/testing/vector/APKBUILD
@@ -0,0 +1,96 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=vector
+pkgver=0.34.2
+pkgrel=0
+pkgdesc="High-performance observability data pipeline"
+url="https://vector.dev/"
+# s390x, ppc64le, riscv64: blocked by ring crate
+# 32-bit: memory allocation error
+arch="all !s390x !ppc64le !riscv64 !x86 !armhf !armv7"
+license="MPL-2.0"
+makedepends="
+ cargo
+ cargo-auditable
+ cmake
+ librdkafka-dev
+ openssl-dev
+ perl
+ protobuf-dev
+ protoc
+ python3
+ zlib-ng-dev
+ zstd-dev
+ "
+checkdepends="bash cargo-nextest tzdata"
+subpackages="$pkgname-doc $pkgname-openrc"
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/vectordotdev/vector/archive/refs/tags/v$pkgver.tar.gz
+ use-system-libs.patch
+ skip-failed-tests.patch
+ vector.initd
+ vector.confd
+ logrotate
+ "
+
+export OPENSSL_NO_VENDOR=1
+
+prepare() {
+ default_prepare
+
+ # Rust target triple.
+ local target=$(rustc -vV | sed -n 's/host: //p')
+
+ # Build against system-provided zlib-ng
+ mkdir -p .cargo
+ cat >> .cargo/config.toml <<-EOF
+ [target.$target]
+ z-ng = { rustc-link-lib = ["z-ng"], rustc-cfg = ["zng"] }
+ EOF
+
+ # "cargo auditable build" still tries to pull dependencies for other platforms
+ cargo fetch --locked
+}
+
+build() {
+ cargo auditable build \
+ --release \
+ --frozen \
+ --no-default-features \
+ --features default-musl,component-validation-runner
+
+ # cargo-nextest drops the release build, so back it up here
+ cp -r target/release releasebuild
+}
+
+check() {
+ # Upstream recommends running tests with "cargo nextest" instead of "cargo test"
+ cargo nextest run \
+ --fail-fast \
+ --frozen \
+ --no-default-features \
+ --offline \
+ --release \
+ --workspace \
+ --test-threads num-cpus
+}
+
+package() {
+ install -Dm755 releasebuild/vector -t "$pkgdir"/usr/bin/
+ install -Dm644 config/vector.yaml -t "$pkgdir"/etc/vector/
+ install -Dm644 "$srcdir"/logrotate "$pkgdir"/etc/logrotate.d/vector
+
+ mkdir -p "$pkgdir"/usr/share/doc/vector
+ cp -r config/examples "$pkgdir"/usr/share/doc/vector/examples
+
+ install -Dm755 "$srcdir"/vector.initd "$pkgdir"/etc/init.d/vector
+ install -Dm644 "$srcdir"/vector.confd "$pkgdir"/etc/conf.d/vector
+}
+
+sha512sums="
+9bebfc73509d748e43693b904f26469384ab70cc3c67c908a0d960b236fe6f44295c0a460a7eeb3bb17bd756860a407f95929c94060a681327c27b6ea907bacb vector-0.34.2.tar.gz
+7f4ed2bdfc8cf8116909e32f9b9caa70bd60d4c63763c8d8f2f47adfe725ea058e05d1e9891415433596260c9264cefdbcae9a70033fceca1c98ac24e964f087 use-system-libs.patch
+3e0d61d64411ce679241effccbe858ff2c68b20e96d8f9f12089671d8dcc84b0583f6db7512be90b716e3655e18d8a47e1359f4013444f448ec12f0de12f9c25 skip-failed-tests.patch
+806c2594d9d7b4bf1c24436a3982801a37ec3d8784acb97266eb7111fe35d8d05a64ef981100bd8aa35a71ad9c7c98de634428f696bded31993143ca572b6757 vector.initd
+313f79e65e61754e8a611f8221d7c0cf36ee5af6f30aeff720924e64bb03d7f44c54fc31ae20926c354905f61df347830a7cba0c37afd41c1f59a25c52fa6f06 vector.confd
+62db792de321655558bdb23ab9b3a7b35b84de445657011d88e8205cce4a926ff7b20f5304ec48fa646f1f259ad2136eceb5a377c4520071799da502eeff7592 logrotate
+"
diff --git a/testing/vector/logrotate b/testing/vector/logrotate
new file mode 100644
index 00000000000..61fbb96fe3c
--- /dev/null
+++ b/testing/vector/logrotate
@@ -0,0 +1,14 @@
+/var/log/vector.log {
+ rotate 4
+ weekly
+ compress
+ delaycompress
+ notifempty
+ missingok
+ copytruncate
+ minsize 100k
+ create 0644 vector vector
+ postrotate
+ /sbin/rc-service vector reload
+ endscript
+}
diff --git a/testing/vector/skip-failed-tests.patch b/testing/vector/skip-failed-tests.patch
new file mode 100644
index 00000000000..28f2025d71f
--- /dev/null
+++ b/testing/vector/skip-failed-tests.patch
@@ -0,0 +1,12 @@
+diff --git a/lib/codecs/src/encoding/format/native_json.rs b/lib/codecs/src/encoding/format/native_json.rs
+index 94fd6b3..715e554 100644
+--- a/lib/codecs/src/encoding/format/native_json.rs
++++ b/lib/codecs/src/encoding/format/native_json.rs
+@@ -87,6 +87,7 @@ mod tests {
+ }
+
+ #[test]
++ #[ignore]
+ fn serialize_aggregated_histogram() {
+ let histogram_event = Event::from(Metric::new(
+ "histogram",
diff --git a/testing/vector/use-system-libs.patch b/testing/vector/use-system-libs.patch
new file mode 100644
index 00000000000..de81d6edfaa
--- /dev/null
+++ b/testing/vector/use-system-libs.patch
@@ -0,0 +1,77 @@
+diff --git a/Cargo.lock b/Cargo.lock
+index d5b347b..81f95c4 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -3407,6 +3407,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e"
+ dependencies = [
+ "crc32fast",
++ "libz-ng-sys",
+ "miniz_oxide",
+ ]
+
+@@ -4890,6 +4891,16 @@ version = "0.2.8"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058"
+
++[[package]]
++name = "libz-ng-sys"
++version = "1.1.12"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "3dd9f43e75536a46ee0f92b758f6b63846e594e86638c61a9251338a65baea63"
++dependencies = [
++ "cmake",
++ "libc",
++]
++
+ [[package]]
+ name = "libz-sys"
+ version = "1.1.12"
+@@ -4897,6 +4908,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "d97137b25e321a73eef1418d1d5d2eda4d77e12813f8e6dead84bc52c5870a7b"
+ dependencies = [
+ "cc",
++ "cmake",
+ "libc",
+ "pkg-config",
+ "vcpkg",
+@@ -9950,6 +9962,7 @@ dependencies = [
+ "kube",
+ "lapin",
+ "libc",
++ "libz-sys",
+ "listenfd",
+ "logfmt",
+ "loki-logproto",
+diff --git a/Cargo.toml b/Cargo.toml
+index 21d8aa1..069db37 100644
+--- a/Cargo.toml
++++ b/Cargo.toml
+@@ -253,7 +253,7 @@ dyn-clone = { version = "1.0.16", default-features = false }
+ encoding_rs = { version = "0.8.33", default-features = false, features = ["serde"] }
+ enum_dispatch = { version = "0.3.12", default-features = false }
+ exitcode = { version = "1.1.2", default-features = false }
+-flate2 = { version = "1.0.28", default-features = false, features = ["default"] }
++flate2 = { version = "1.0.28", default-features = false, features = ["zlib-ng"] }
+ futures-util = { version = "0.3.29", default-features = false }
+ glob = { version = "0.3.1", default-features = false }
+ governor = { version = "0.6.0", default-features = false, features = ["dashmap", "jitter", "std"], optional = true }
+@@ -318,7 +318,8 @@ typetag = { version = "0.2.13", default-features = false }
+ url = { version = "2.4.1", default-features = false, features = ["serde"] }
+ uuid = { version = "1", default-features = false, features = ["serde", "v4"] }
+ warp = { version = "0.3.6", default-features = false }
+-zstd = { version = "0.13.0", default-features = false }
++zstd = { version = "0.13.0", default-features = false, features = ["pkg-config"] }
++libz-sys = { version = "1.1.12", default-features = false, features = ["zlib-ng"] }
+ arr_macro = { version = "0.2.1" }
+
+ # depending on fork for bumped nix dependency
+@@ -385,7 +386,7 @@ default-cmake = ["api", "api-client", "enrichment-tables", "rdkafka?/cmake_build
+ # Default features for *-pc-windows-msvc
+ # TODO: Enable SASL https://github.com/vectordotdev/vector/pull/3081#issuecomment-659298042
+ default-msvc = ["api", "api-client", "enrichment-tables", "rdkafka?/cmake_build", "sinks", "sources", "transforms", "enterprise"]
+-default-musl = ["api", "api-client", "enrichment-tables", "rdkafka?/cmake_build", "sinks", "sources", "sources-dnstap", "transforms", "unix", "rdkafka?/gssapi-vendored", "enterprise"]
++default-musl = ["api", "api-client", "enrichment-tables", "rdkafka?/dynamic-linking", "sinks", "sources", "sources-dnstap", "transforms", "unix", "rdkafka?/gssapi", "enterprise"]
+ default-no-api-client = ["api", "enrichment-tables", "sinks", "sources", "sources-dnstap", "transforms", "unix", "rdkafka?/gssapi-vendored", "enterprise"]
+ default-no-vrl-cli = ["api", "sinks", "sources", "sources-dnstap", "transforms", "unix", "rdkafka?/gssapi-vendored", "enterprise"]
+ tokio-console = ["dep:console-subscriber", "tokio/tracing"]
diff --git a/testing/vector/vector.confd b/testing/vector/vector.confd
new file mode 100644
index 00000000000..412c44580a3
--- /dev/null
+++ b/testing/vector/vector.confd
@@ -0,0 +1,13 @@
+# vector service configuration options
+
+# extra arguments to pass to vector
+command_args=""
+
+# user:group to run the process with
+command_user="vector:vector"
+
+# where to store logs for vector process output
+#logfile="/var/log/vector.log"
+
+# comment to use traditional service management
+supervisor=supervise-daemon
diff --git a/testing/vector/vector.initd b/testing/vector/vector.initd
new file mode 100644
index 00000000000..daebc119cd0
--- /dev/null
+++ b/testing/vector/vector.initd
@@ -0,0 +1,38 @@
+#!/sbin/openrc-run
+
+: ${command_user:="vector:vector"}
+: ${logfile:="/var/log/$RC_SVCNAME.log"}
+
+name=vector
+description="Vector high-performance observability data pipeline"
+command="/usr/bin/vector"
+command_background="yes"
+pidfile="/run/$RC_SVCNAME.pid"
+capabilities="^cap_net_bind_service"
+
+extra_started_commands="reload"
+description_reload="Reload vector daemon"
+
+output_log="$logfile"
+error_log="$logfile"
+
+depend() {
+ need net
+ after firewall
+}
+
+start_pre() {
+ checkpath -d -o $command_user /var/lib/vector
+ $command validate
+}
+
+reload() {
+ ebegin "Reloading $RC_SVCNAME"
+ $command validate
+ if [ -n "$supervisor" ]; then
+ $supervisor "$RC_SVCNAME" --signal HUP
+ else
+ start-stop-daemon --signal HUP --pidfile "$pidfile"
+ fi
+ eend $?
+}
diff --git a/testing/vector/vector.pre-install b/testing/vector/vector.pre-install
new file mode 100644
index 00000000000..e8ae285234a
--- /dev/null
+++ b/testing/vector/vector.pre-install
@@ -0,0 +1,7 @@
+#!/bin/sh
+
+addgroup -S vector 2>/dev/null
+adduser -S -D -h /var/lib/vector -s /sbin/nologin -G vector -g vector vector 2>/dev/null
+adduser vector adm 2>/dev/null
+
+exit 0
diff --git a/testing/venc/APKBUILD b/testing/venc/APKBUILD
new file mode 100644
index 00000000000..8c8383d4978
--- /dev/null
+++ b/testing/venc/APKBUILD
@@ -0,0 +1,31 @@
+# Contributor: Guy Godfroy <guy.godfroy@gugod.fr>
+# Maintainer: Guy Godfroy <guy.godfroy@gugod.fr>
+pkgname=venc
+_pkgname=VenC
+pkgver=3.1.1
+pkgrel=1
+pkgdesc="Static blog generator"
+url="https://venc.software/"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="py3-yaml py3-unidecode"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+source="$_pkgname-v$pkgver.tar.gz::https://framagit.org/denissalem/VenC/-/archive/v$pkgver/$_pkgname-v$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-v$pkgver/src"
+options="!check" # broken test scripts
+subpackages="$pkgname-pyc"
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+}
+
+sha512sums="
+fa4b34a53ff24074eb084a3e1c4b8b0b950e7bbcb03b88d4d11721a21b275f2092280dc1bbf2eaef8859fbf7dfdcb9ba5a3843e348b9328c5930f7f0524cde07 VenC-v3.1.1.tar.gz
+"
diff --git a/testing/vera++/APKBUILD b/testing/vera++/APKBUILD
index 3ca03df249b..3347c64568e 100644
--- a/testing/vera++/APKBUILD
+++ b/testing/vera++/APKBUILD
@@ -2,9 +2,9 @@
# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
pkgname=vera++
pkgver=1.3.0
-pkgrel=2
+pkgrel=9
pkgdesc="tool for verification, analysis and transformation of C++ source code"
-url="http://bitbucket.org/verateam/vera"
+url="https://bitbucket.org/verateam/vera"
arch="all"
license="BSL-1.0"
makedepends="cmake ninja tcl-dev tk-dev python3-dev boost-dev lua-dev"
@@ -18,7 +18,7 @@ source="
"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
-DVERA_LUA=OFF \
diff --git a/testing/veracrypt/10-ssize-t.patch b/testing/veracrypt/10-ssize-t.patch
deleted file mode 100644
index 95932298351..00000000000
--- a/testing/veracrypt/10-ssize-t.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/Crypto/jitterentropy.h
-+++ b/Crypto/jitterentropy.h
-@@ -41,6 +41,8 @@
-
- /* Adapted for VeraCrypt */
-
-+#include <sys/types.h>
-+
- #ifndef _JITTERENTROPY_H
- #define _JITTERENTROPY_H
-
diff --git a/testing/veracrypt/APKBUILD b/testing/veracrypt/APKBUILD
deleted file mode 100644
index c04a6be1e96..00000000000
--- a/testing/veracrypt/APKBUILD
+++ /dev/null
@@ -1,49 +0,0 @@
-# Contributor: Sascha Paunovic <azarus@posteo.net>
-# Contributor: Nicolas Lorin <androw95220@gmail.com>
-# Maintainer: Sascha Paunovic <azarus@posteo.net>
-pkgname=veracrypt
-_pkgname=VeraCrypt
-pkgver=1.25.9
-pkgrel=0
-pkgdesc="disk encryption with strong security based on TrueCrypt"
-url="https://www.veracrypt.fr/"
-arch="all !x86 !s390x" # issues on linking
-license="Apache-2.0"
-depends="device-mapper"
-makedepends="fuse-dev wxgtk-dev libsm-dev yasm"
-options="!check" # no test suite provided
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.bz2::https://launchpad.net/veracrypt/trunk/$pkgver/+download/${_pkgname}_${pkgver}_Source.tar.bz2
- 10-ssize-t.patch
- "
-builddir="$srcdir/src"
-
-build() {
- make TC_EXTRA_LFLAGS="-ldl $LDFLAGS" \
- TC_EXTRA_CXXFLAGS="$CXXFLAGS $CPPFLAGS" \
- TC_EXTRA_CFLAGS="$CFLAGS $CPPFLAGS"
-}
-
-package() {
- install -Dm 755 Main/$pkgname "$pkgdir"/usr/bin/$pkgname
- install -Dm 644 Resources/Icons/VeraCrypt-256x256.xpm \
- "$pkgdir"/usr/share/pixmaps/veracrypt.xpm
- install -Dm 644 License.txt "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
- mkdir -p "$pkgdir"/usr/share/applications
- cat >> "$pkgdir"/usr/share/applications/veracrypt.desktop <<-EOF
- [Desktop Entry]
- Type=Application
- Exec=veracrypt
- Icon=veracrypt.xpm
- Comment=Disk encryption with strong security based on TrueCrypt
- Terminal=false
- Name=VeraCrypt
- StartupNotify=true
- Categories=System;Administration;
- EOF
-}
-
-sha512sums="
-9b11c8d8e85770ae05960fef8fc9639731e4f9caf0cc4e50bc8c9c92b45d44c80eaeff483d3ab048fd6a82cc873a6027820e21abde7ddb92b3c368f85b837cf2 veracrypt-1.25.9.tar.bz2
-d0f31db39fd98a073e67cb70cc53e8b61a8fc47be12b84395b75607b4ba56c18a47cffc63b60f10421edb59ca464141e9cbc4221080a840fdb73cf2bedfb816d 10-ssize-t.patch
-"
diff --git a/testing/verco/APKBUILD b/testing/verco/APKBUILD
deleted file mode 100644
index 43bf33d6999..00000000000
--- a/testing/verco/APKBUILD
+++ /dev/null
@@ -1,29 +0,0 @@
-# Contributor: omni <omni+alpine@hack.org>
-# Maintainer: omni <omni+alpine@hack.org>
-pkgname=verco
-pkgver=6.11.0
-pkgrel=0
-pkgdesc="Simple Git/Mercurial/PlasticSCM tui client based on keyboard shortcuts"
-arch="all !s390x !riscv64" # limited by cargo
-url="https://github.com/vamolessa/verco"
-license="GPL-3.0-or-later"
-makedepends="cargo"
-options="!check" # No tests
-source="$pkgname-$pkgver.tar.gz::https://github.com/vamolessa/verco/archive/refs/tags/v$pkgver.tar.gz"
-
-prepare() {
- default_prepare
- cargo fetch --locked
-}
-
-build() {
- cargo build --release --frozen
-}
-
-package() {
- install -Dm0755 target/release/verco -t "$pkgdir"/usr/bin
-}
-
-sha512sums="
-49f5c07b9ae79c9f0d5a7837319ecb9e160e5431d290d00b9d8e89371fdf1105e02b184b57b5127f98762ccdfd2902c882a9058ce99ec0328620661aaf4d3673 verco-6.11.0.tar.gz
-"
diff --git a/testing/vfd-configurations/APKBUILD b/testing/vfd-configurations/APKBUILD
new file mode 100644
index 00000000000..17e8e0176d7
--- /dev/null
+++ b/testing/vfd-configurations/APKBUILD
@@ -0,0 +1,26 @@
+# Contributor: Petr Hodina <phodina@protonmail.com>
+# Maintainer: Petr Hodina <phodina@protonmail.com>
+pkgname=vfd-configurations
+pkgver=0_git20230612
+pkgrel=0
+_gitrev=beea98634cf9a4c7f70f6b565158ff7140c357f6
+pkgdesc="Collection of configuration files for linux devices with a front facing display"
+url="https://github.com/arthur-liberman/vfd-configurations"
+arch="noarch"
+license="GPL-3.0-or-later"
+source="vfd-configurations-$_gitrev.tar.gz::https://github.com/arthur-liberman/vfd-configurations/archive/$_gitrev.tar.gz"
+builddir="$srcdir/$pkgname-$_gitrev"
+options="!check" # has no test suite
+
+package() {
+ install -Dm644 ./*.conf -t "$pkgdir"/usr/share/$pkgname/
+ cp -r kvim2 "$pkgdir"/usr/share/$pkgname/
+ cp -r le-potato "$pkgdir"/usr/share/$pkgname/
+ cp -r odroid-c2 "$pkgdir"/usr/share/$pkgname/
+ cp -r odroid-hc4 "$pkgdir"/usr/share/$pkgname/
+ cp -r odroid-n2 "$pkgdir"/usr/share/$pkgname/
+}
+
+sha512sums="
+bda1ed5a405b12e35278853b88c270d631deebc46c0ac6995bb54f38865d91a4cebdca615002a984600aeb655b771307994379058658551211e9337ae42863ac vfd-configurations-beea98634cf9a4c7f70f6b565158ff7140c357f6.tar.gz
+"
diff --git a/testing/vice/APKBUILD b/testing/vice/APKBUILD
index e0794ed812a..825f0e9049a 100644
--- a/testing/vice/APKBUILD
+++ b/testing/vice/APKBUILD
@@ -1,24 +1,49 @@
# Contributor: Jean-Louis Fuchs <jean-louis.fuchs@adfinis-sygroup.ch>
# Maintainer: Jean-Louis Fuchs <jean-louis.fuchs@adfinis-sygroup.ch>
pkgname=vice
-pkgver=3.6.1
+pkgver=3.8
pkgrel=0
pkgdesc="emulates the C64/DTV, C128, VIC20, almost all PETs, PLUS4 and CBM-II"
-url="http://vice-emu.sourceforge.net/"
+url="https://vice-emu.sourceforge.net/"
arch="all"
license="GPL-2.0-or-later"
-makedepends="gtk+3.0-dev glew-dev giflib-dev ffmpeg4-dev jpeg-dev libpng-dev alsa-lib-dev
- linux-headers texinfo automake autoconf bison flex xa bdftopcf mkfontdir
- bash"
-subpackages="$pkgname-doc"
+makedepends="
+ alsa-lib-dev
+ autoconf
+ automake
+ bash
+ bdftopcf
+ bison
+ curl-dev
+ ffmpeg4-dev
+ flex
+ giflib-dev
+ glew-dev
+ gtk+3.0-dev
+ jpeg-dev
+ libpng-dev
+ linux-headers
+ texinfo
+ xa
+ "
source="https://downloads.sourceforge.net/vice-emu/vice-$pkgver.tar.gz
disable-fc-cache.patch
- fix__u_char.patch"
+ "
+
+# Starting with version 3.8, only PDF docs are installed to
+# /usr/share/doc/vice, texlive is required to generate that
+case "$CARCH" in
+ppc64le|s390x|riscv64)
+ ;;
+*)
+ makedepends="$makedepends texlive"
+ subpackages="$subpackages $pkgname-doc"
+ _extra_opts="--enable-pdf-docs"
+ ;;
+esac
prepare() {
- sed -i 's/\r//' "$builddir/src/opencbm.h"
default_prepare
- sed -i 's/lib64/lib/g' configure.ac
autoreconf -fi
}
@@ -28,9 +53,9 @@ build() {
--enable-native-gtk3ui \
--enable-x64 \
--disable-no-pic \
- --disable-pdf-docs \
--without-pulse \
- --enable-external-ffmpeg
+ --enable-external-ffmpeg \
+ $_extra_opts
make
}
@@ -43,7 +68,6 @@ check() {
}
sha512sums="
-9aeb1c84dc71976d12a9907d60c637ec4cc938aad103340b70a13906bbf2bebab579edc78221c7fba47f0750be3f9ded947200b42fcfc8a9169fb4bb9f288cb7 vice-3.6.1.tar.gz
+fe644667736c32386b62af53314a95bf510c75d476eaab14b4c37693f2f57d6815126ab3db2f0cb11300c1a4a07c29b3f25210800ce97a673a0460ab59d0ebba vice-3.8.tar.gz
ed6fee34eefcb04c42b4575591dfeffca8548eae354dee66dabdbc4abac0311cbbedcdc07cdfcb01da4840d57ab331a31583e17160820462a2c064835a75d75d disable-fc-cache.patch
-3132be50c402068865b530ed9df71a073012623ce48e3fa162f33af7bdcdd6d890590955868bb5591e018c17359e860ccff9eb0cde9bfd99582ac921400e8f2f fix__u_char.patch
"
diff --git a/testing/vice/fix__u_char.patch b/testing/vice/fix__u_char.patch
deleted file mode 100644
index 046ae82a05f..00000000000
--- a/testing/vice/fix__u_char.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff -ru a/src/opencbm.h b/src/opencbm.h
---- a/src/opencbm.h 2016-11-14 00:23:10.000000000 +0100
-+++ b/src/opencbm.h 2017-01-20 19:54:12.098939871 +0100
-@@ -131,6 +131,9 @@
-
- #endif
-
-+/* There is no __u_char on alpine linux */
-+#define __u_char unsigned char /*!< __u_char as unsigned char */
-+
- /* specifiers for the IEC bus lines */
- #define IEC_DATA 0x01 /*!< Specify the DATA line */
- #define IEC_CLOCK 0x02 /*!< Specify the CLOCK line */
diff --git a/testing/vidcutter/APKBUILD b/testing/vidcutter/APKBUILD
index 9acae0cbf23..1c8fac60af5 100644
--- a/testing/vidcutter/APKBUILD
+++ b/testing/vidcutter/APKBUILD
@@ -2,15 +2,24 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=vidcutter
pkgver=6.0.5.1
-pkgrel=1
+pkgrel=5
pkgdesc="A modern, simple to use, constantly evolving and hella fast MEDIA CUTTER"
url="https://vidcutter.ozmartians.com"
arch="all !armhf" # Blocked by py3-qt5 -> qt5-qtdeclarative
license="GPL-3.0-or-later"
depends="python3 ffmpeg mediainfo py3-qt5 py3-opengl"
-subpackages="$pkgname-doc"
-makedepends="mpv-dev python3-dev py3-setuptools"
-source="$pkgname-$pkgver.tar.gz::https://github.com/ozmartian/vidcutter/archive/$pkgver.tar.gz"
+subpackages="$pkgname-doc $pkgname-pyc"
+makedepends="cython mpv-dev python3-dev py3-setuptools"
+source="$pkgname-$pkgver.tar.gz::https://github.com/ozmartian/vidcutter/archive/$pkgver.tar.gz
+ pyqt5-5.15.8.patch
+ $pkgname-libmpv2-1.patch::https://github.com/ozmartian/vidcutter/commit/1d88825feb5a73a50d019914ba9d0008562a58ce.patch
+ "
+
+prepare() {
+ default_prepare
+
+ rm vidcutter/libs/pympv/mpv.c
+}
build() {
python3 setup.py build
@@ -21,9 +30,11 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 setup.py install --skip-build --root="$pkgdir"
}
sha512sums="
f2ea2a86d9eaa3c6593e785daad6869c151baa1add529c9edaf2282f7acad762fbb29804790aece5e4fcd89e9e9bc77f61d1f0b68a1b1f3ecf58951ee8f200e9 vidcutter-6.0.5.1.tar.gz
+b87193045ba826a1ce29d4c32f5c7da6e791117c66ba32bc6740a08f09f28cdbeec597215121ccc7b9958f81bf299a0fa14e3f8c8200a8e355e08f948601b95f pyqt5-5.15.8.patch
+063908bf939c03952d623cc0ae7ea301d4605660a548e3088f6c901f3d98cf13a5e49180414c8a1c05931d9c4ca2a251858951676632768ff30954a6df7a4e4a vidcutter-libmpv2-1.patch
"
diff --git a/testing/vidcutter/pyqt5-5.15.8.patch b/testing/vidcutter/pyqt5-5.15.8.patch
new file mode 100644
index 00000000000..5f2251de35c
--- /dev/null
+++ b/testing/vidcutter/pyqt5-5.15.8.patch
@@ -0,0 +1,17 @@
+diff --git a/vidcutter/about.py b/vidcutter/about.py
+index 4c8ea44..102f8b3 100644
+--- a/vidcutter/about.py
++++ b/vidcutter/about.py
+@@ -26,7 +26,11 @@ import logging
+ import sys
+ from datetime import datetime
+
+-from PyQt5.Qt import PYQT_VERSION_STR
++# import changed in PyQt 5.15.8, so try both
++try:
++ from PyQt5.Qt import PYQT_VERSION_STR
++except ImportError:
++ from PyQt5.QtCore import PYQT_VERSION_STR
+ from PyQt5.QtCore import QFile, QObject, QSize, QTextStream, Qt
+ from PyQt5.QtGui import QPixmap
+ from PyQt5.QtWidgets import (QDialog, QDialogButtonBox, QHBoxLayout, QLabel, QScrollArea, QSizePolicy, QStyleFactory,
diff --git a/testing/video-trimmer/APKBUILD b/testing/video-trimmer/APKBUILD
new file mode 100644
index 00000000000..9d9630cb202
--- /dev/null
+++ b/testing/video-trimmer/APKBUILD
@@ -0,0 +1,40 @@
+# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=video-trimmer
+pkgver=0.8.2
+pkgrel=0
+pkgdesc="Trim videos quickly"
+url="https://gitlab.gnome.org/YaLTeR/video-trimmer"
+# s390x, riscv64: blocked by blueprint-compiler
+arch="all !s390x !riscv64"
+license="GPL-3.0-or-later"
+depends="gst-libav"
+makedepends="
+ blueprint-compiler
+ cargo
+ desktop-file-utils
+ gtk4.0-dev
+ libadwaita-dev
+ meson
+ "
+subpackages="$pkgname-lang"
+source="https://gitlab.gnome.org/YaLTeR/video-trimmer/-/archive/v$pkgver/video-trimmer-v$pkgver.tar.gz"
+builddir="$srcdir/$pkgname-v$pkgver"
+
+
+build() {
+ abuild-meson . output
+ meson compile -C output
+}
+
+check() {
+ meson test --no-rebuild --print-errorlogs -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+sha512sums="
+4d46842b9c846b5724b7e685b2eebfc8877d97c96849d931270affa27ee0dc1f69b72a34e44dcb68d6179f4fe3a8cee49b0f872ddcc3da5f02717daec8c993f3 video-trimmer-v0.8.2.tar.gz
+"
diff --git a/testing/viewnior/APKBUILD b/testing/viewnior/APKBUILD
index 9b87768735c..d5e6d8a9d04 100644
--- a/testing/viewnior/APKBUILD
+++ b/testing/viewnior/APKBUILD
@@ -1,27 +1,36 @@
# Contributor: August Klein <amatcoder@gmail.com>
# Maintainer: August Klein <amatcoder@gmail.com>
pkgname=viewnior
-_pkgname=Viewnior
pkgver=1.8
-pkgrel=0
-pkgdesc="A fast and simple image viewer"
+pkgrel=1
+pkgdesc="Fast and simple image viewer"
url="http://siyanpanayotov.com/project/viewnior"
arch="all"
license="GPL-3.0-or-later"
-makedepends="gnome-common meson ninja gtk+2.0-dev exiv2-dev desktop-file-utils"
+makedepends="
+ desktop-file-utils
+ exiv2-dev
+ gtk+2.0-dev
+ meson
+ "
subpackages="$pkgname-lang $pkgname-doc"
-source="https://github.com/hellosiyan/$_pkgname/archive/viewnior-$pkgver.tar.gz"
-builddir="$srcdir"/$_pkgname-$pkgname-$pkgver
+source="https://github.com/hellosiyan/Viewnior/archive/viewnior-$pkgver.tar.gz
+ exiv2-0.28.patch
+ "
+builddir="$srcdir"/Viewnior-$pkgname-$pkgver
build() {
- abuild-meson builddir
- meson compile ${JOBS:+-j ${JOBS}} -C builddir
+ abuild-meson \
+ -Db_lto=true \
+ . output
+ meson compile -C output
}
package() {
- DESTDIR="$pkgdir" meson install --no-rebuild -C builddir
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
}
sha512sums="
0f9698801172ef6b8f5df4132526b2e605e9aa9fd69cf41a091a3623de9b2e84ca857e625aaa9e83f29df318f70a13fb458bac0df11ae46837b78ef257a00bee viewnior-1.8.tar.gz
+d1d83b1e0ef909f141e2e61fabdf11e9db6fb22caf61fb6ed0c002aac141750dd0a6f3c84df9a9354f473a80e816283fb24938c7cf9ff97fbdfc4be26aa843ff exiv2-0.28.patch
"
diff --git a/testing/viewnior/exiv2-0.28.patch b/testing/viewnior/exiv2-0.28.patch
new file mode 100644
index 00000000000..71459dee157
--- /dev/null
+++ b/testing/viewnior/exiv2-0.28.patch
@@ -0,0 +1,147 @@
+Patch-Source: https://gitlab.archlinux.org/archlinux/packaging/packages/viewnior/-/blob/f206ce6c22a3ec5f1f9ea1bde4077584f80458dd/exiv2-0.28.patch
+--
+From b6bb81a1b46e911d15bbf9a730972523de177705 Mon Sep 17 00:00:00 2001
+From: tastytea <tastytea@tastytea.de>
+Date: Tue, 16 May 2023 10:54:40 +0200
+Subject: [PATCH 1/2] change exiv2 AutoPtr to unique_ptr
+
+exiv2-0.28.0 removed Exiv2::Image::AutoPtr and added
+Exiv2::Image::UniquePtr instead. since it's a typedef for
+std::unique_ptr<Image>, i'm using that directly instead of adding a
+condition on the exiv2 version.
+---
+ src/uni-exiv2.cpp | 21 +++++++++++----------
+ 1 file changed, 11 insertions(+), 10 deletions(-)
+
+diff --git a/src/uni-exiv2.cpp b/src/uni-exiv2.cpp
+index 0d14b9f..77064c2 100644
+--- a/src/uni-exiv2.cpp
++++ b/src/uni-exiv2.cpp
+@@ -22,12 +22,13 @@
+
+ #include <exiv2/exiv2.hpp>
+ #include <iostream>
++#include <memory>
+
+ #include "uni-exiv2.hpp"
+
+ #define ARRAY_SIZE(array) (sizeof array/sizeof(array[0]))
+
+-static Exiv2::Image::AutoPtr cached_image;
++static std::unique_ptr<Exiv2::Image> cached_image;
+
+ extern "C"
+ void
+@@ -35,8 +36,8 @@ uni_read_exiv2_map(const char *uri, void (*callback)(const char*, const char*, v
+ {
+ Exiv2::LogMsg::setLevel(Exiv2::LogMsg::mute);
+ try {
+- Exiv2::Image::AutoPtr image = Exiv2::ImageFactory::open(uri);
+- if ( image.get() == 0 ) {
++ std::unique_ptr<Exiv2::Image> image = Exiv2::ImageFactory::open(uri);
++ if (image == nullptr) {
+ return;
+ }
+
+@@ -91,14 +92,14 @@ uni_read_exiv2_to_cache(const char *uri)
+ {
+ Exiv2::LogMsg::setLevel(Exiv2::LogMsg::mute);
+
+- if ( cached_image.get() != NULL ) {
++ if (cached_image != nullptr) {
+ cached_image->clearMetadata();
+- cached_image.reset(NULL);
++ cached_image.reset(nullptr);
+ }
+
+ try {
+ cached_image = Exiv2::ImageFactory::open(uri);
+- if ( cached_image.get() == 0 ) {
++ if (cached_image == nullptr) {
+ return 1;
+ }
+
+@@ -116,13 +117,13 @@ uni_write_exiv2_from_cache(const char *uri)
+ {
+ Exiv2::LogMsg::setLevel(Exiv2::LogMsg::mute);
+
+- if ( cached_image.get() == NULL ) {
++ if (cached_image == nullptr) {
+ return 1;
+ }
+
+ try {
+- Exiv2::Image::AutoPtr image = Exiv2::ImageFactory::open(uri);
+- if ( image.get() == 0 ) {
++ std::unique_ptr<Exiv2::Image> image = Exiv2::ImageFactory::open(uri);
++ if (image == nullptr) {
+ return 2;
+ }
+
+@@ -130,7 +131,7 @@ uni_write_exiv2_from_cache(const char *uri)
+ image->writeMetadata();
+
+ cached_image->clearMetadata();
+- cached_image.reset(NULL);
++ cached_image.reset(nullptr);
+
+ return 0;
+ } catch (Exiv2::AnyError& e) {
+
+From 47d0b98cb46526aa8aa035bebcabc14a11fa57ee Mon Sep 17 00:00:00 2001
+From: tastytea <tastytea@tastytea.de>
+Date: Tue, 16 May 2023 11:17:00 +0200
+Subject: [PATCH 2/2] add support for exiv-0.28.0 errors
+
+exiv2-0.28.0 changed Exiv2::AnyError to Exiv2::Error.
+---
+ src/uni-exiv2.cpp | 15 ++++++++++++---
+ 1 file changed, 12 insertions(+), 3 deletions(-)
+
+diff --git a/src/uni-exiv2.cpp b/src/uni-exiv2.cpp
+index 77064c2..567a50f 100644
+--- a/src/uni-exiv2.cpp
++++ b/src/uni-exiv2.cpp
+@@ -28,6 +28,15 @@
+
+ #define ARRAY_SIZE(array) (sizeof array/sizeof(array[0]))
+
++#define EXIV_ERROR Exiv2::AnyError
++#ifdef EXIV2_VERSION
++ #ifdef EXIV2_TEST_VERSION
++ #if EXIV2_TEST_VERSION(0,28,0)
++ #define EXIV_ERROR Exiv2::Error
++ #endif
++ #endif
++#endif
++
+ static std::unique_ptr<Exiv2::Image> cached_image;
+
+ extern "C"
+@@ -81,7 +90,7 @@ uni_read_exiv2_map(const char *uri, void (*callback)(const char*, const char*, v
+ }
+ }
+ }
+- } catch (Exiv2::AnyError& e) {
++ } catch (EXIV_ERROR& e) {
+ std::cerr << "Exiv2: '" << e << "'\n";
+ }
+ }
+@@ -104,7 +113,7 @@ uni_read_exiv2_to_cache(const char *uri)
+ }
+
+ cached_image->readMetadata();
+- } catch (Exiv2::AnyError& e) {
++ } catch (EXIV_ERROR& e) {
+ std::cerr << "Exiv2: '" << e << "'\n";
+ }
+
+@@ -134,7 +143,7 @@ uni_write_exiv2_from_cache(const char *uri)
+ cached_image.reset(nullptr);
+
+ return 0;
+- } catch (Exiv2::AnyError& e) {
++ } catch (EXIV_ERROR& e) {
+ std::cerr << "Exiv2: '" << e << "'\n";
+ }
+
diff --git a/testing/vile/APKBUILD b/testing/vile/APKBUILD
new file mode 100644
index 00000000000..1ddb38e3522
--- /dev/null
+++ b/testing/vile/APKBUILD
@@ -0,0 +1,42 @@
+# Contributor: Vlad Glagolev <scm@vaygr.net>
+# Maintainer: Vlad Glagolev <scm@vaygr.net>
+pkgname=vile
+pkgver=9.8z
+pkgrel=0
+pkgdesc="vi-like Emacs"
+url="https://invisible-island.net/vile/"
+arch="all"
+license="GPL-2.0-only"
+makedepends="flex ncurses-dev"
+subpackages="$pkgname-doc"
+source="https://invisible-island.net/archives/vile/current/vile-$pkgver.tgz"
+
+build() {
+ CFLAGS="$CFLAGS -D_GNU_SOURCE" \
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var \
+ --disable-stripping \
+ --enable-filters \
+ --enable-plugins \
+ --with-ncurses \
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+
+ install -Dm644 COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING
+}
+
+sha512sums="
+f5ff6f3d239f993d7b060e89650567e1c622cec1a024901e29d15cd9a588e8603097e12087d54e88beca91a3a7cd7328a541bac62889368da6636f143d6380ff vile-9.8z.tgz
+"
diff --git a/testing/vim-go/APKBUILD b/testing/vim-go/APKBUILD
deleted file mode 100644
index 74a896c2263..00000000000
--- a/testing/vim-go/APKBUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
-pkgname=vim-go
-pkgver=1.25
-pkgrel=4
-pkgdesc="Go development plugin for Vim"
-url="https://github.com/fatih/vim-go"
-license="BSD-3-Clause"
-arch="noarch"
-depends="vim go gopls git"
-source="$pkgname-$pkgver.tar.gz::https://github.com/fatih/vim-go/archive/v$pkgver.tar.gz"
-options="!check" # there are no tests
-
-package() {
- local destdir="$pkgdir/usr/share/vim/vimfiles"
- mkdir -p "$destdir"
- cp -ar \
- autoload \
- compiler \
- doc \
- ftdetect \
- ftplugin \
- gosnippets \
- indent \
- plugin \
- rplugin \
- syntax \
- templates \
- "$destdir"
- install -D LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
- find "$destdir" -name '.git*' -delete
-}
-
-sha512sums="42263050893c9ab939346d5572b67e86e3ef3095ab0164ce7932bcf8702703bddffe621e6a658fd772af0e20a9ed06906d9f6b7db4a1cbfb1095e948d5883f56 vim-go-1.25.tar.gz"
diff --git a/testing/vim-rust/APKBUILD b/testing/vim-rust/APKBUILD
index b1090a8317c..7e6efc09cc6 100644
--- a/testing/vim-rust/APKBUILD
+++ b/testing/vim-rust/APKBUILD
@@ -15,7 +15,6 @@ install=""
subpackages=""
source="https://github.com/rust-lang/rust.vim/archive/$_commit.zip"
-
builddir="$srcdir"/rust.vim-$_commit
build() {
:
diff --git a/testing/vimiv-qt/APKBUILD b/testing/vimiv-qt/APKBUILD
deleted file mode 100644
index 582d8b02689..00000000000
--- a/testing/vimiv-qt/APKBUILD
+++ /dev/null
@@ -1,28 +0,0 @@
-# Contributor: David Demelier <markand@malikania.fr>
-# Maintainer: David Demelier <markand@malikania.fr>
-pkgname=vimiv-qt
-pkgver=0.8.0
-pkgrel=2
-pkgdesc="an image viewer with vim-like keybindings"
-url="https://github.com/karlch/vimiv-qt"
-arch="all !armhf" # armhf blocked by py3-qt5 (qt5-qtdeclarative)
-license="GPL-3.0-only"
-depends="python3 py3-qt5"
-makedepends="python3-dev py3-setuptools"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/karlch/vimiv-qt/archive/v$pkgver.tar.gz"
-options="!check" # Not working yet.
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 setup.py test
-}
-
-package() {
- make -f misc/Makefile DESTDIR="$pkgdir" install
-}
-
-sha512sums="91f4cc151904d4b3aa1919006eabce03840ac633f48012c1500bf606e5332c5d7b4647d8c8581f16958e43b1e435a0a7749bb9ac7735920c23ae17718898bac9 vimiv-qt-0.8.0.tar.gz"
diff --git a/testing/vimiv/APKBUILD b/testing/vimiv/APKBUILD
deleted file mode 100644
index 2b1f6d8233f..00000000000
--- a/testing/vimiv/APKBUILD
+++ /dev/null
@@ -1,30 +0,0 @@
-# Contributor: David Demelier <markand@malikania.fr>
-# Maintainer: David Demelier <markand@malikania.fr>
-pkgname=vimiv
-pkgver=0.9.1
-pkgrel=3
-pkgdesc="an image viewer with vim-like keybindings"
-url="https://github.com/karlch/vimiv-qt"
-arch="all"
-license="GPL-3.0-only"
-depends="python3 py3-gobject3 gtk+3.0 py3-pillow"
-makedepends="python3-dev py3-setuptools"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/karlch/vimiv/archive/v$pkgver.tar.gz
- fix-appdata.patch::https://github.com/karlch/vimiv/pull/87.patch
- "
-
-build() {
- python3 setup.py build
-}
-
-check() {
- python3 setup.py test
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="b500e5b54450238b6471c1ea0c0831dc6b16238a99b9fcb531bc93bd0aa0b92fa192cbf2dd29f1679856f840dd6f6e4d27971403c85b71b6f333c525b77d9e69 vimiv-0.9.1.tar.gz
-faa13ca3dcb0ad0258369bdd32d094cf72f6b26d46d2605fae9931688b2fa9307e942565eb9be317f6ee6faf693aabf9e0ec4c4f1bdf6672e231c7a02ddb50d7 fix-appdata.patch"
diff --git a/testing/vinegar/APKBUILD b/testing/vinegar/APKBUILD
new file mode 100644
index 00000000000..50e7481883d
--- /dev/null
+++ b/testing/vinegar/APKBUILD
@@ -0,0 +1,38 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=vinegar
+pkgver=1.7.4
+pkgrel=2
+pkgdesc="An open-source, minimal, configurable, fast bootstrapper for running Roblox on Linux"
+url="https://vinegarhq.org"
+arch="x86_64" # Roblox only has binaries for x86_64 on windows
+license="GPL-3.0-only"
+depends="cmd:wine"
+makedepends="
+ go
+ make
+ mesa-dev
+ libxkbcommon-dev
+ libxcursor-dev
+ wayland-dev
+ vulkan-loader-dev
+ vulkan-validation-layers-dev
+"
+source="$pkgname-$pkgver.tar.gz::https://github.com/vinegarhq/vinegar/archive/refs/tags/v$pkgver.tar.gz"
+options="net"
+
+build() {
+ make
+}
+
+check() {
+ make tests
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+1f9130b91fcf1353b56da8cf5d1c7716ae5c611df940e413ae8d075f26f516fbfdcd92c047fc32f92fe9cc718a5018f3948c0dafdb37067aa4cdd0840ec75ed9 vinegar-1.7.4.tar.gz
+"
diff --git a/testing/virtctl/APKBUILD b/testing/virtctl/APKBUILD
new file mode 100644
index 00000000000..a1f3947acb3
--- /dev/null
+++ b/testing/virtctl/APKBUILD
@@ -0,0 +1,54 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=virtctl
+pkgver=1.1.1
+pkgrel=2
+pkgdesc="CLI client for KubeVirt - the Kubernetes Virtualization API"
+url="https://kubevirt.io/"
+arch="all"
+license="Apache-2.0"
+makedepends="go"
+subpackages="
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/kubevirt/kubevirt/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/kubevirt-$pkgver"
+
+_goldflags="
+-X kubevirt.io/client-go/version.gitVersion=v$pkgver
+-X kubevirt.io/client-go/version.gitCommit=AlpineLinux
+-X kubevirt.io/client-go/version.gitTreeState=clean
+-X kubevirt.io/client-go/version.buildDate=0
+"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ go build -v -ldflags "$_goldflags" ./cmd/virtctl/virtctl.go
+
+ for shell in bash fish zsh; do
+ ./$pkgname completion $shell > $pkgname.$shell
+ done
+}
+
+check() {
+ # Only run unittest for virtctl
+ go test -ldflags "$_goldflags" ./pkg/virtctl/...
+}
+
+package() {
+ install -Dm755 $pkgname -t "$pkgdir"/usr/bin/
+
+ install -Dm644 $pkgname.bash \
+ "$pkgdir"/usr/share/bash-completion/completions/$pkgname
+ install -Dm644 $pkgname.fish \
+ "$pkgdir"/usr/share/fish/vendor_completions.d/$pkgname.fish
+ install -Dm644 $pkgname.zsh \
+ "$pkgdir"/usr/share/zsh/site-functions/_$pkgname
+}
+
+sha512sums="
+ad74d916784ae06ff1395700d5d2d600348f06bc2e236d1614a57dc16ae339b480190a67bb65f943a64e4ceafd7b34e3ec6fe6622fa138ae2b78ab9c3228fc9a virtctl-1.1.1.tar.gz
+"
diff --git a/testing/virter/APKBUILD b/testing/virter/APKBUILD
new file mode 100644
index 00000000000..c2ffd90aff6
--- /dev/null
+++ b/testing/virter/APKBUILD
@@ -0,0 +1,58 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=virter
+pkgver=0.26.0
+pkgrel=3
+pkgdesc="CLI tool for simple creation and cloning of libvirt virtual machines"
+url="https://github.com/LINBIT/virter"
+arch="all"
+license="Apache-2.0"
+depends="libvirt dnsmasq-utils"
+makedepends="go"
+subpackages="
+ $pkgname-doc
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/LINBIT/virter/archive/refs/tags/v$pkgver.tar.gz
+ update-mockery.patch
+ "
+
+build() {
+ local _goldflags="
+ -X github.com/LINBIT/virter/cmd.version=v$pkgver
+ -X github.com/LINBIT/virter/cmd.builddate=$(date -u "+%Y-%m-%dT%H:%M:%S%z" ${SOURCE_DATE_EPOCH:+-d @$SOURCE_DATE_EPOCH})
+ -X github.com/LINBIT/virter/cmd.githash=AlpineLinux
+ "
+ go build -v -ldflags "$_goldflags"
+
+ for shell in bash fish zsh; do
+ ./virter completion $shell > virter.$shell
+ done
+}
+
+check() {
+ # Create mock files with mockery
+ go generate internal/virter/virter_test.go
+
+ go test ./...
+}
+
+package() {
+ install -Dm755 virter -t "$pkgdir"/usr/bin/
+
+ install -Dm644 doc/*.md -t "$pkgdir"/usr/share/doc/"$pkgname"/
+ cp -r examples "$pkgdir"/usr/share/doc/"$pkgname"/
+
+ install -Dm644 virter.bash \
+ "$pkgdir"/usr/share/bash-completion/completions/virter
+ install -Dm644 virter.fish \
+ "$pkgdir"/usr/share/fish/vendor_completions.d/virter.fish
+ install -Dm644 virter.zsh \
+ "$pkgdir"/usr/share/zsh/site-functions/_virter
+}
+
+sha512sums="
+c06885759beb9c8cb3310b070afb378413ec205ab1d503a08958b38f18d69789d4735a02528e329e823c250afde9e94a77ef4dc3297e315ad8aebafbf762e799 virter-0.26.0.tar.gz
+8e383f190f0f9489e328257cb974d50be9b1f2cf862f2454beb89866ebb79c4745a08850b964ad5da7bac0c39059fdc643fcc8ce58c6af7b1216112fbb50582b update-mockery.patch
+"
diff --git a/testing/virter/update-mockery.patch b/testing/virter/update-mockery.patch
new file mode 100644
index 00000000000..3596e300df4
--- /dev/null
+++ b/testing/virter/update-mockery.patch
@@ -0,0 +1,19 @@
+Update to latest for Go 1.22 compatibility
+
+--- a/internal/virter/virter_test.go
++++ b/internal/virter/virter_test.go
+@@ -7,10 +7,10 @@
+ "github.com/LINBIT/virter/internal/virter/mocks"
+ )
+
+-//go:generate go run github.com/vektra/mockery/v2@v2.38.0 --name=ShellClient
+-//go:generate go run github.com/vektra/mockery/v2@v2.38.0 --name=AfterNotifier
+-//go:generate go run github.com/vektra/mockery/v2@v2.38.0 --name=NetworkCopier --dir=../../pkg/netcopy
+-//go:generate go run github.com/vektra/mockery/v2@v2.38.0 --name=KeyStore --dir=../../pkg/sshkeys
++//go:generate go run github.com/vektra/mockery/v2@v2.42.1 --name=ShellClient
++//go:generate go run github.com/vektra/mockery/v2@v2.42.1 --name=AfterNotifier
++//go:generate go run github.com/vektra/mockery/v2@v2.42.1 --name=NetworkCopier --dir=../../pkg/netcopy
++//go:generate go run github.com/vektra/mockery/v2@v2.42.1 --name=KeyStore --dir=../../pkg/sshkeys
+
+ const poolName = "some-pool"
+ const networkName = "some-network"
diff --git a/testing/virtme-ng/APKBUILD b/testing/virtme-ng/APKBUILD
new file mode 100644
index 00000000000..1d032416575
--- /dev/null
+++ b/testing/virtme-ng/APKBUILD
@@ -0,0 +1,22 @@
+# Contributor: Milan P. Stanić <mps@arvanta.net>
+# Maintainer: Milan P. Stanić <mps@arvanta.net>
+pkgname=virtme-ng
+pkgver=1.23
+pkgrel=1
+pkgdesc="tool that allows to easily and quickly recompile and test a Linux kernel"
+url="https://github.com/arighi/virtme-ng"
+arch="all"
+license="GPL-2-or-later"
+depends="qemu python3"
+makedepends="py3-setuptools py3-argcomplete"
+options="!check" # no tests
+subpackages="$pkgname-bash-completion"
+source="$pkgname-$pkgver.tar.gz::https://github.com/arighi/virtme-ng/archive/refs/tags/v$pkgver.tar.gz"
+
+package() {
+ python setup.py install --root="$pkgdir/" --optimize=1
+}
+
+sha512sums="
+44e516c42e2fea074d2b7d81bdf9bf628d37531f388b17a38e2c025e2198b3625dcdd0092c8abbba07a610e5856af55eb8c7aea7dcbf90a8dce7a1e3063b4880 virtme-ng-1.23.tar.gz
+"
diff --git a/testing/virtualgl/APKBUILD b/testing/virtualgl/APKBUILD
index 710f6b39a1e..dac70db39a0 100644
--- a/testing/virtualgl/APKBUILD
+++ b/testing/virtualgl/APKBUILD
@@ -1,39 +1,54 @@
# Contributor: ScrumpyJack <scrumpyjack@st.ilet.to>
# Maintainer: ScrumpyJack <scrumpyjack@st.ilet.to>
pkgname=virtualgl
-_pkgname=VirtualGL
-pkgver=2.6.5
+pkgver=3.1
pkgrel=0
-pkgdesc="VirtualGL is a toolkit to run remote OpenGL applications with full 3D hardware acceleration."
+pkgdesc="Toolkit to run remote OpenGL applications with full 3D hardware acceleration"
url="https://virtualgl.org/"
arch="x86_64 ppc64le"
license="LGPL-2.1-or-later"
-makedepends="mesa-dev cmake openssl-dev libjpeg-turbo-dev libx11-dev glu-dev libxv-dev
- xcb-util-keysyms-dev libxtst-dev"
+makedepends="
+ cmake
+ fltk-dev
+ glu-dev
+ libjpeg-turbo-dev
+ libx11-dev
+ libxtst-dev
+ libxv-dev
+ mesa-dev
+ opencl-dev
+ openssl-dev
+ samurai
+ xcb-util-keysyms-dev
+ "
subpackages="$pkgname-dev $pkgname-doc"
-source="https://downloads.sourceforge.net/project/virtualgl/$pkgver/$_pkgname-$pkgver.tar.gz"
-builddir="$srcdir/$_pkgname-$pkgver"
+source="https://downloads.sourceforge.net/project/virtualgl/$pkgver/VirtualGL-$pkgver.tar.gz
+ install.patch
+ "
+builddir="$srcdir/VirtualGL-$pkgver"
build() {
- mkdir -p build && cd build
-
- cmake .. \
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_DOCDIR=/usr/share/doc/$pkgname \
- -DCMAKE_INSTALL_LIBDIR=/usr/lib \
- -DCMAKE_INSTALL_BINDIR=/usr/bin \
- -DTJPEG_INCLUDE_DIR=/usr/include \
- -DTJPEG_LIBRARY=/usr/lib/libturbojpeg.so \
- -DOPENGL_glu_LIBRARY=/usr/lib/libGLU.so \
- -DVGL_USESSL=1 \
- -DVGL_FAKEXCB=1 \
- -DVGL_FAKEOPENCL=0
- make
+ -DVGL_FAKEXCB=ON \
+ -DVGL_FAKEOPENCL=ON \
+ -DVGL_SYSTEMFLTK=ON
+ cmake --build build
}
package() {
- cd "$builddir/build"
- make DESTDIR="$pkgdir" install
+ DESTDIR="$pkgdir" cmake --install build
+ # conflicts with mesa-utils
+ mv "$pkgdir"/usr/bin/eglinfo "$pkgdir"/usr/bin/virtualgl-eglinfo
+ mv "$pkgdir"/usr/bin/glxinfo "$pkgdir"/usr/bin/virtualgl-glxinfo
+
+ # not required
+ rm "$pkgdir"/usr/bin/.vglrun.vars64
}
-sha512sums="0ab9e744e400d323bc16f6e2cf310905361745ea4da9e9e9a41cbeb45b1d661eebd38a0fad8ae5df4664d02b341de44c5730af8437e6ef49c7351b4afb953532 VirtualGL-2.6.5.tar.gz"
+sha512sums="
+cd1109b4dee426918e61348b22b3bfb0c45102bbb0bcde9b78c36b607a396bbff7d7c72cf3bf9626128da0f1776c42bbb59be863239e60e0f7307d2a73de463b VirtualGL-3.1.tar.gz
+3ccd2133d303c10f1447d24ab09c414e59039afe04744964b0dfa1371cf04b32292d46b2436e0feb88774e4d156762e0804bfd9dcd410607419f9754704af4db install.patch
+"
diff --git a/testing/virtualgl/install.patch b/testing/virtualgl/install.patch
new file mode 100644
index 00000000000..812a22bd054
--- /dev/null
+++ b/testing/virtualgl/install.patch
@@ -0,0 +1,13 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 25f1f00..7dab863 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -8,6 +8,8 @@ if(POLICY CMP0053)
+ cmake_policy(SET CMP0053 NEW)
+ endif()
+
++include(GNUInstallDirs)
++
+ if(WIN32)
+ project(VirtualGL-Utils)
+ else()
diff --git a/testing/visidata/APKBUILD b/testing/visidata/APKBUILD
new file mode 100644
index 00000000000..ae888f44c33
--- /dev/null
+++ b/testing/visidata/APKBUILD
@@ -0,0 +1,44 @@
+# Contributor: Dmitry Zakharchenko <dmitz@disroot.org>
+# Maintainer: Dmitry Zakharchenko <dmitz@disroot.org>
+pkgname=visidata
+pkgver=2.11.1
+pkgrel=2
+pkgdesc="Terminal spreadsheet multitool"
+url="https://visidata.org"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="python3 py3-appdirs py3-setuptools py3-dateutil"
+makedepends="py3-gpep517 py3-installer py3-setuptools py3-wheel"
+checkdepends="py3-pytest"
+subpackages="$pkgname-doc $pkgname-zsh-completion $pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/saulpw/visidata/archive/v$pkgver.tar.gz
+ devendor-appdirs.patch
+ sh-default.patch
+ use-importlib.patch
+ "
+
+build() {
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
+
+ ./dev/zsh-completion.py
+}
+
+check() {
+ pytest
+}
+
+package() {
+ python3 -m installer -d "$pkgdir" .dist/*.whl
+
+ install -Dm644 _visidata \
+ -t "$pkgdir"/usr/share/zsh/site-functions/
+}
+
+sha512sums="
+01905795ae6216e3cf662b43732394c68b43ffc8a4dc40da8552ebefaba4535fa3937aec1825cb108267dd83ab1b6a1072d1e698d416eae883dba915ca40b332 visidata-2.11.1.tar.gz
+506e62c230b166a22d5d73e539303ed12f4915685ee522a030b49fbd23685accd4ae0958f6dd90f921d4be740371036c91107d424b69acde45be12a922c42dad devendor-appdirs.patch
+44aa8c6ccba8f5e37e316a7891557ab7b895d907f72dcaba53cb3e143c31681b607831fa5cf2fbc255716215e75677ec8a476dfe91c600c437ca8b2017ff340e sh-default.patch
+f021d2f621e468b83e5284225ec715cfabb86c5a5050bf945aa8147d2d995862b7f03038c778f9ba6636463cd77b4d76ce7f5af01aab796a190f86a53b55395b use-importlib.patch
+"
diff --git a/testing/visidata/devendor-appdirs.patch b/testing/visidata/devendor-appdirs.patch
new file mode 100644
index 00000000000..fff01790fad
--- /dev/null
+++ b/testing/visidata/devendor-appdirs.patch
@@ -0,0 +1,26 @@
+diff --git a/setup.py b/setup.py
+index 68a7101..487cd0c 100755
+--- a/setup.py
++++ b/setup.py
+@@ -26,7 +26,7 @@ setup(name='visidata',
+ 'windows-curses; platform_system == "Windows"',
+ 'importlib-metadata >= 3.6',
+ ],
+- packages=['visidata', 'visidata.loaders', 'visidata.vendor', 'visidata.tests', 'visidata.ddw', 'visidata.man'],
++ packages=['visidata', 'visidata.loaders', 'visidata.ddw', 'visidata.man'],
+ data_files=[('share/man/man1', ['visidata/man/vd.1', 'visidata/man/visidata.1'])],
+ package_data={'visidata.man': ['vd.1', 'vd.txt'], 'visidata.ddw': ['input.ddw'], 'visidata.tests': ['sample.tsv']},
+ license='GPLv3',
+diff --git a/visidata/settings.py b/visidata/settings.py
+index 6db4157..b7b6e53 100644
+--- a/visidata/settings.py
++++ b/visidata/settings.py
+@@ -7,7 +7,7 @@ import os
+
+ import visidata
+ from visidata import VisiData, BaseSheet, vd, AttrDict
+-from visidata.vendor.appdirs import user_config_dir, user_cache_dir
++from appdirs import user_config_dir, user_cache_dir
+
+
+ # [settingname] -> { objname(Sheet-instance/Sheet-type/'global'/'default'): Option/Command/longname }
diff --git a/testing/visidata/sh-default.patch b/testing/visidata/sh-default.patch
new file mode 100644
index 00000000000..e534cfeeaa7
--- /dev/null
+++ b/testing/visidata/sh-default.patch
@@ -0,0 +1,13 @@
+diff --git a/visidata/shell.py b/visidata/shell.py
+index a05fe27..d6d1f62 100644
+--- a/visidata/shell.py
++++ b/visidata/shell.py
+@@ -67,7 +67,7 @@ class ColumnShell(Column):
+ else:
+ args.append(arg)
+
+- p = subprocess.Popen([os.getenv('SHELL', 'bash'), '-c', ' '.join(args)],
++ p = subprocess.Popen([os.getenv('SHELL', 'sh'), '-c', ' '.join(args)],
+ stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
+ return p.communicate()
+ except Exception as e:
diff --git a/testing/visidata/use-importlib.patch b/testing/visidata/use-importlib.patch
new file mode 100644
index 00000000000..7ec0054e308
--- /dev/null
+++ b/testing/visidata/use-importlib.patch
@@ -0,0 +1,25 @@
+diff --git a/setup.py b/setup.py
+index 23eed1d4..e84ce823 100755
+--- a/setup.py
++++ b/setup.py
+@@ -24,7 +24,6 @@ setup(name='visidata',
+ install_requires=[
+ 'python-dateutil',
+ 'windows-curses; platform_system == "Windows"',
+- 'importlib-metadata >= 3.6',
+ ],
+ packages=['visidata', 'visidata.loaders', 'visidata.vendor', 'visidata.tests', 'visidata.ddw', 'visidata.man'],
+ data_files=[('share/man/man1', ['visidata/man/vd.1', 'visidata/man/visidata.1'])],
+diff --git a/visidata/settings.py b/visidata/settings.py
+index 1fc62df4..d9c44ad6 100644
+--- a/visidata/settings.py
++++ b/visidata/settings.py
+@@ -375,7 +375,7 @@ def loadConfigAndPlugins(vd, args=AttrDict()):
+ # autoload installed plugins first
+ args_plugins_autoload = args.plugins_autoload if 'plugins_autoload' in args else True
+ if not args.nothing and args_plugins_autoload and vd.options.plugins_autoload:
+- from importlib_metadata import entry_points # a backport which supports < 3.8 https://github.com/pypa/twine/pull/732
++ from importlib.metadata import entry_points
+ try:
+ eps = entry_points()
+ eps_visidata = eps.select(group='visidata.plugins') if 'visidata.plugins' in eps.groups else []
diff --git a/testing/visurf/APKBUILD b/testing/visurf/APKBUILD
index 0968b0436e7..bdbb9b8c5b9 100644
--- a/testing/visurf/APKBUILD
+++ b/testing/visurf/APKBUILD
@@ -5,7 +5,7 @@ pkgver=0.0.0_git20220301
_commit=8f7036e440f47a37ec917b6856ba20cd747adceb
_netsurf=3.10
_libcss=f420dd16136de1dc07f18824c6d0f5540d5df6d1
-pkgrel=0
+pkgrel=1
pkgdesc="power-user frontend for netsurf with vi-inspired keybindings"
url="https://sr.ht/~sircmpwn/visurf/"
arch="all"
@@ -13,7 +13,7 @@ license="MIT GPL-2.0-only"
makedepends="
flex bison gperf wayland-protocols expat-dev curl-dev wayland-dev
cairo-dev pango-dev libxkbcommon-dev libjpeg-turbo-dev libwebp-dev
- openssl1.1-compat-dev libpng-dev perl
+ openssl-dev>3 libpng-dev perl
"
options="!check" # no tests
source="
diff --git a/testing/vit/APKBUILD b/testing/vit/APKBUILD
index 3bc3aa252bb..d96bd4d30c8 100644
--- a/testing/vit/APKBUILD
+++ b/testing/vit/APKBUILD
@@ -1,32 +1,32 @@
# Contributor: Edd Salkield <edd@salkield.uk>
# Maintainer: Edd Salkield <edd@salkield.uk>
pkgname=vit
-pkgver=2.2.0
-pkgrel=0
+pkgver=2.3.2
+pkgrel=1
pkgdesc="Lightweight, fast, curses-based front end to Taskwarrior"
url="https://github.com/vit-project/vit"
arch="noarch"
license="MIT"
depends="python3 py3-tasklib py3-urwid"
-makedepends="py3-setuptools"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+subpackages="$pkgname-pyc"
source="https://github.com/vit-project/vit/archive/v$pkgver/vit-v$pkgver.tar.gz"
build() {
- python3 setup.py build
+ gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2
}
check() {
export TERM=xterm-256color
- python3 -m unittest -v
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m unittest -v
}
package() {
- python3 setup.py install \
- --prefix=/usr \
- --root="$pkgdir" \
- --single-version-externally-managed
+ python3 -m installer -d "$pkgdir" .dist/*.whl
}
sha512sums="
-6efbf4fa3d2d6b188f8ad5152a1cd949d1d1c263de19669087ba439a8248c9dfe9354e70b83d945ae3edd44fb9cc0d9a4bf4331a5aaacfd64fdece2cb4b9454e vit-v2.2.0.tar.gz
+029311eb0ae67b8bd0b6e41715c85a1883d6d11218f45f7637e3f6f049c6eb022858adc3c72455c3bd1d9de39638926026b8849b9ed7e0b04406362fda836817 vit-v2.3.2.tar.gz
"
diff --git a/testing/vivid/APKBUILD b/testing/vivid/APKBUILD
new file mode 100644
index 00000000000..171f6daff44
--- /dev/null
+++ b/testing/vivid/APKBUILD
@@ -0,0 +1,33 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=vivid
+pkgver=0.9.0
+pkgrel=1
+pkgdesc="Themeable LS_COLORS generator with a rich filetype database"
+url="https://github.com/sharkdp/vivid"
+arch="all"
+license="Apache-2.0 AND MIT"
+makedepends="cargo cargo-auditable"
+source="$pkgname-$pkgver.tar.gz::https://github.com/sharkdp/vivid/archive/refs/tags/v$pkgver.tar.gz"
+
+export CARGO_PROFILE_RELEASE_OPT_LEVEL="z"
+
+prepare() {
+ default_prepare
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm755 target/release/vivid -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+fa5be2fdde6c157f0827c457a9b4642a4830994f8adc196ee0cb98032726eec97c538caa430712334acbd6310ad6e47bb3bc8c2bbd6bc786dfde61b6b6906818 vivid-0.9.0.tar.gz
+"
diff --git a/testing/vixl/0001-vixl-Meson-support.patch b/testing/vixl/0001-vixl-Meson-support.patch
new file mode 100644
index 00000000000..50b61939c46
--- /dev/null
+++ b/testing/vixl/0001-vixl-Meson-support.patch
@@ -0,0 +1,814 @@
+diff --git a/doc/aarch32/meson.build b/doc/aarch32/meson.build
+new file mode 100644
+index 00000000..6baf8d57
+--- /dev/null
++++ b/doc/aarch32/meson.build
+@@ -0,0 +1,13 @@
++# SPDX-FileCopyrightText: 2021 Andrea Pappacoda
++#
++# SPDX-License-Identifier: BSD-3-Clause
++
++custom_target(
++ 'doc_aarch32',
++ command: [markdown, '@INPUT@'],
++ input: 'getting-started-aarch32.md',
++ output: '@BASENAME@.html',
++ capture: true,
++ install: true,
++ install_dir: doc_dir/'aarch32'
++)
+diff --git a/doc/aarch64/meson.build b/doc/aarch64/meson.build
+new file mode 100644
+index 00000000..d6fe068d
+--- /dev/null
++++ b/doc/aarch64/meson.build
+@@ -0,0 +1,22 @@
++# SPDX-FileCopyrightText: 2021 Andrea Pappacoda
++#
++# SPDX-License-Identifier: BSD-3-Clause
++
++doc_aarch64_files = [
++ 'getting-started-aarch64',
++ 'supported-instructions-aarch64'
++]
++
++foreach file : doc_aarch64_files
++ custom_target(
++ 'doc_aarch64_' + file,
++ command: [markdown, '@INPUT@'],
++ input: file + '.md',
++ output: file + '.html',
++ capture: true,
++ install: true,
++ install_dir: doc_dir/'aarch64'
++ )
++endforeach
++
++subdir('topics')
+diff --git a/doc/aarch64/topics/meson.build b/doc/aarch64/topics/meson.build
+new file mode 100644
+index 00000000..40a4f7df
+--- /dev/null
++++ b/doc/aarch64/topics/meson.build
+@@ -0,0 +1,18 @@
++doc_aarch64_topics_files = [
++ 'extending-the-disassembler',
++ 'index',
++ 'state-trace',
++ 'ycm'
++]
++
++foreach file : doc_aarch64_topics_files
++ custom_target(
++ 'doc_aarch64_topics_' + file,
++ command: [markdown, '@INPUT@'],
++ input: file + '.md',
++ output: file + '.html',
++ capture: true,
++ install: true,
++ install_dir: doc_dir/'aarch64'/'topics'
++ )
++endforeach
+diff --git a/doc/meson.build b/doc/meson.build
+new file mode 100644
+index 00000000..f23f5c94
+--- /dev/null
++++ b/doc/meson.build
+@@ -0,0 +1,22 @@
++# SPDX-FileCopyrightText: 2021 Andrea Pappacoda
++#
++# SPDX-License-Identifier: BSD-3-Clause
++
++doc_dir = get_option('datadir')/'doc'/meson.project_name()
++
++custom_target(
++ 'doc',
++ command: [markdown, '@INPUT@'],
++ input: '..'/'README.md',
++ output: '@BASENAME@.html',
++ capture: true,
++ install: true,
++ install_dir: doc_dir
++)
++
++if build_a32 or build_t32
++ subdir('aarch32')
++endif
++if build_a64
++ subdir('aarch64')
++endif
+diff --git a/meson.build b/meson.build
+new file mode 100644
+index 00000000..1f4e5646
+--- /dev/null
++++ b/meson.build
+@@ -0,0 +1,151 @@
++# SPDX-FileCopyrightText: 2021 Andrea Pappacoda
++#
++# SPDX-License-Identifier: BSD-3-Clause
++
++project(
++ 'vixl',
++ 'cpp',
++ default_options: [
++ 'cpp_std=c++17',
++ 'buildtype=release',
++ 'warning_level=3',
++ 'werror=false',
++ 'd_ndebug=if-release',
++ 'b_lto=true'
++ ],
++ license: 'BSD-3-Clause',
++ meson_version: '>=0.49.0',
++ version: '5.1.0',
++)
++
++extra_args = []
++
++if get_option('debug')
++ extra_args += '-DVIXL_DEBUG'
++endif
++
++hosts_32bit = ['arc', 'arm', 'c2000', 'csky', 'mips', 'ppc', 'riscv32', 'rx', 'sparc', 'wasm32', 'x86']
++can_target_aarch64 = not (host_machine.cpu_family() in hosts_32bit)
++
++build_a32 = false
++build_t32 = false
++build_a64 = false
++
++targets = get_option('target')
++if 'auto' in targets or 'all' in targets
++ if can_target_aarch64 or 'all' in targets
++ extra_args += [
++ '-DVIXL_INCLUDE_TARGET_A32',
++ '-DVIXL_INCLUDE_TARGET_T32',
++ '-DVIXL_INCLUDE_TARGET_A64'
++ ]
++ build_a32 = true
++ build_t32 = true
++ build_a64 = true
++ else
++ extra_args += [
++ '-DVIXL_INCLUDE_TARGET_A32',
++ '-DVIXL_INCLUDE_TARGET_T32'
++ ]
++ build_a32 = true
++ build_t32 = true
++ endif
++else
++ if 'a32' in targets or 'aarch32' in targets
++ extra_args += [
++ '-DVIXL_INCLUDE_TARGET_A32'
++ ]
++ build_a32 = true
++ endif
++ if 't32' in targets or 'aarch32' in targets
++ extra_args += [
++ '-DVIXL_INCLUDE_TARGET_T32'
++ ]
++ build_t32 = true
++ endif
++ if 'a64' in targets or 'aarch64' in targets
++ extra_args += [
++ '-DVIXL_INCLUDE_TARGET_A64'
++ ]
++ build_a64 = true
++ endif
++endif
++
++target_sources = []
++if build_a32 or build_t32
++ subdir('src'/'aarch32')
++endif
++if build_a64
++ subdir('src'/'aarch64')
++endif
++
++if get_option('simulator') == 'auto'
++ if not (host_machine.cpu_family() == 'aarch64') and can_target_aarch64
++ extra_args += '-DVIXL_INCLUDE_SIMULATOR_AARCH64'
++ endif
++elif get_option('simulator') == 'aarch64'
++ if can_target_aarch64 and build_a64
++ extra_args += '-DVIXL_INCLUDE_SIMULATOR_AARCH64'
++ else
++ error('Building an AArch64 simulator implies that VIXL targets AArch64. Set `target` to include `aarch64` or `a64`.')
++ endif
++endif
++
++allocator = get_option('code_buffer_allocator')
++if (allocator == 'auto' and host_machine.system() == 'linux') or allocator == 'mmap'
++ extra_args += '-DVIXL_CODE_BUFFER_MMAP'
++else
++ extra_args += '-DVIXL_CODE_BUFFER_MALLOC'
++endif
++
++markdown = find_program('markdown', required: get_option('doc'))
++if markdown.found()
++ subdir('doc')
++endif
++
++libvixl = library(
++ 'vixl',
++ 'src'/'code-buffer-vixl.cc',
++ 'src'/'compiler-intrinsics-vixl.cc',
++ 'src'/'cpu-features.cc',
++ 'src'/'utils-vixl.cc',
++ cpp_args: extra_args,
++ include_directories: 'src',
++ install: true,
++ sources: target_sources,
++ version: meson.project_version()
++)
++
++vixl_dep = declare_dependency(
++ compile_args: extra_args,
++ include_directories: 'src',
++ link_with: libvixl
++)
++
++if meson.version().version_compare('>=0.54.0')
++ meson.override_dependency('vixl', vixl_dep)
++endif
++
++install_headers(
++ 'src'/'assembler-base-vixl.h',
++ 'src'/'code-buffer-vixl.h',
++ 'src'/'code-generation-scopes-vixl.h',
++ 'src'/'compiler-intrinsics-vixl.h',
++ 'src'/'cpu-features.h',
++ 'src'/'globals-vixl.h',
++ 'src'/'invalset-vixl.h',
++ 'src'/'macro-assembler-interface.h',
++ 'src'/'platform-vixl.h',
++ 'src'/'pool-manager-impl.h',
++ 'src'/'pool-manager.h',
++ 'src'/'utils-vixl.h',
++ subdir: 'vixl'
++)
++
++import('pkgconfig').generate(
++ libvixl,
++ description: 'ARMv8 Runtime Code Generation Library',
++ extra_cflags: extra_args,
++ subdirs: 'vixl',
++ url: 'https://github.com/Linaro/vixl'
++)
+diff --git a/meson.patch b/meson.patch
+new file mode 100644
+index 00000000..2360398d
+--- /dev/null
++++ b/meson.patch
+@@ -0,0 +1,421 @@
++Origin: upstream, https://github.com/Linaro/vixl/pull/7
++Last-Update: 2021-10-15
++
++From 21ac158c034e725442208fef93c7e67fcf92ac36 Mon Sep 17 00:00:00 2001
++From: Andrea Pappacoda <andrea@pappacoda.it>
++Date: Wed, 13 Oct 2021 22:06:34 +0200
++Subject: [PATCH] build: add Meson support
++
++I was trying to package Vixl, but the SCons build system does not
++provide an install target, so I would've had to add it. It seemed too
++difficult, so I directly created a quite basic Meson build script.
++
++It provides most features of the SCons script, except for tests and
++benchmarks, while adding a rich install target, with library soname
++versioning and a pkg-config file.
++
++Meson is a simple yet powerful build system, and you're interested in
++using it as your main build system I could add tests and benchmarks :)
++---
++ doc/aarch32/meson.build | 13 +++
++ doc/aarch64/meson.build | 22 +++++
++ doc/aarch64/topics/meson.build | 18 ++++
++ doc/meson.build | 22 +++++
++ meson.build | 151 +++++++++++++++++++++++++++++++++
++ meson_options.txt | 34 ++++++++
++ src/aarch32/meson.build | 31 +++++++
++ src/aarch64/meson.build | 45 ++++++++++
++ 8 files changed, 337 insertions(+)
++ create mode 100644 doc/aarch32/meson.build
++ create mode 100644 doc/aarch64/meson.build
++ create mode 100644 doc/aarch64/topics/meson.build
++ create mode 100644 doc/meson.build
++ create mode 100644 meson.build
++ create mode 100644 meson_options.txt
++ create mode 100644 src/aarch32/meson.build
++ create mode 100644 src/aarch64/meson.build
++
++diff --git a/doc/aarch32/meson.build b/doc/aarch32/meson.build
++new file mode 100644
++index 00000000..6baf8d57
++--- /dev/null
+++++ b/doc/aarch32/meson.build
++@@ -0,0 +1,13 @@
+++# SPDX-FileCopyrightText: 2021 Andrea Pappacoda
+++#
+++# SPDX-License-Identifier: BSD-3-Clause
+++
+++custom_target(
+++ 'doc_aarch32',
+++ command: [markdown, '@INPUT@'],
+++ input: 'getting-started-aarch32.md',
+++ output: '@BASENAME@.html',
+++ capture: true,
+++ install: true,
+++ install_dir: doc_dir/'aarch32'
+++)
++diff --git a/doc/aarch64/meson.build b/doc/aarch64/meson.build
++new file mode 100644
++index 00000000..d6fe068d
++--- /dev/null
+++++ b/doc/aarch64/meson.build
++@@ -0,0 +1,22 @@
+++# SPDX-FileCopyrightText: 2021 Andrea Pappacoda
+++#
+++# SPDX-License-Identifier: BSD-3-Clause
+++
+++doc_aarch64_files = [
+++ 'getting-started-aarch64',
+++ 'supported-instructions-aarch64'
+++]
+++
+++foreach file : doc_aarch64_files
+++ custom_target(
+++ 'doc_aarch64_' + file,
+++ command: [markdown, '@INPUT@'],
+++ input: file + '.md',
+++ output: file + '.html',
+++ capture: true,
+++ install: true,
+++ install_dir: doc_dir/'aarch64'
+++ )
+++endforeach
+++
+++subdir('topics')
++diff --git a/doc/aarch64/topics/meson.build b/doc/aarch64/topics/meson.build
++new file mode 100644
++index 00000000..40a4f7df
++--- /dev/null
+++++ b/doc/aarch64/topics/meson.build
++@@ -0,0 +1,18 @@
+++doc_aarch64_topics_files = [
+++ 'extending-the-disassembler',
+++ 'index',
+++ 'state-trace',
+++ 'ycm'
+++]
+++
+++foreach file : doc_aarch64_topics_files
+++ custom_target(
+++ 'doc_aarch64_topics_' + file,
+++ command: [markdown, '@INPUT@'],
+++ input: file + '.md',
+++ output: file + '.html',
+++ capture: true,
+++ install: true,
+++ install_dir: doc_dir/'aarch64'/'topics'
+++ )
+++endforeach
++diff --git a/doc/meson.build b/doc/meson.build
++new file mode 100644
++index 00000000..f23f5c94
++--- /dev/null
+++++ b/doc/meson.build
++@@ -0,0 +1,22 @@
+++# SPDX-FileCopyrightText: 2021 Andrea Pappacoda
+++#
+++# SPDX-License-Identifier: BSD-3-Clause
+++
+++doc_dir = get_option('datadir')/'doc'/meson.project_name()
+++
+++custom_target(
+++ 'doc',
+++ command: [markdown, '@INPUT@'],
+++ input: '..'/'README.md',
+++ output: '@BASENAME@.html',
+++ capture: true,
+++ install: true,
+++ install_dir: doc_dir
+++)
+++
+++if build_a32 or build_t32
+++ subdir('aarch32')
+++endif
+++if build_a64
+++ subdir('aarch64')
+++endif
++diff --git a/meson.build b/meson.build
++new file mode 100644
++index 00000000..96d8165e
++--- /dev/null
+++++ b/meson.build
++@@ -0,0 +1,151 @@
+++# SPDX-FileCopyrightText: 2021 Andrea Pappacoda
+++#
+++# SPDX-License-Identifier: BSD-3-Clause
+++
+++project(
+++ 'vixl',
+++ 'cpp',
+++ default_options: [
+++ 'cpp_std=c++14',
+++ 'buildtype=release',
+++ 'warning_level=3',
+++ 'werror=true',
+++ 'd_ndebug=if-release',
+++ 'b_lto=true'
+++ ],
+++ license: 'BSD-3-Clause',
+++ meson_version: '>=0.49.0',
+++ version: '5.1.0',
+++)
+++
+++extra_args = []
+++
+++if get_option('debug')
+++ extra_args += '-DVIXL_DEBUG'
+++endif
+++
+++hosts_32bit = ['arc', 'arm', 'c2000', 'csky', 'mips', 'ppc', 'riscv32', 'rx', 'sparc', 'wasm32', 'x86']
+++can_target_aarch64 = not (host_machine.cpu_family() in hosts_32bit)
+++
+++build_a32 = false
+++build_t32 = false
+++build_a64 = false
+++
+++targets = get_option('target')
+++if 'auto' in targets or 'all' in targets
+++ if can_target_aarch64 or 'all' in targets
+++ extra_args += [
+++ '-DVIXL_INCLUDE_TARGET_A32',
+++ '-DVIXL_INCLUDE_TARGET_T32',
+++ '-DVIXL_INCLUDE_TARGET_A64'
+++ ]
+++ build_a32 = true
+++ build_t32 = true
+++ build_a64 = true
+++ else
+++ extra_args += [
+++ '-DVIXL_INCLUDE_TARGET_A32',
+++ '-DVIXL_INCLUDE_TARGET_T32'
+++ ]
+++ build_a32 = true
+++ build_t32 = true
+++ endif
+++else
+++ if 'a32' in targets or 'aarch32' in targets
+++ extra_args += [
+++ '-DVIXL_INCLUDE_TARGET_A32'
+++ ]
+++ build_a32 = true
+++ endif
+++ if 't32' in targets or 'aarch32' in targets
+++ extra_args += [
+++ '-DVIXL_INCLUDE_TARGET_T32'
+++ ]
+++ build_t32 = true
+++ endif
+++ if 'a64' in targets or 'aarch64' in targets
+++ extra_args += [
+++ '-DVIXL_INCLUDE_TARGET_A64'
+++ ]
+++ build_a64 = true
+++ endif
+++endif
+++
+++target_sources = []
+++if build_a32 or build_t32
+++ subdir('src'/'aarch32')
+++endif
+++if build_a64
+++ subdir('src'/'aarch64')
+++endif
+++
+++if get_option('simulator') == 'auto'
+++ if not (host_machine.cpu_family() == 'aarch64') and can_target_aarch64
+++ extra_args += '-DVIXL_INCLUDE_SIMULATOR_AARCH64'
+++ endif
+++elif get_option('simulator') == 'aarch64'
+++ if can_target_aarch64 and build_a64
+++ extra_args += '-DVIXL_INCLUDE_SIMULATOR_AARCH64'
+++ else
+++ error('Building an AArch64 simulator implies that VIXL targets AArch64. Set `target` to include `aarch64` or `a64`.')
+++ endif
+++endif
+++
+++allocator = get_option('code_buffer_allocator')
+++if (allocator == 'auto' and host_machine.system() == 'linux') or allocator == 'mmap'
+++ extra_args += '-DVIXL_CODE_BUFFER_MMAP'
+++else
+++ extra_args += '-DVIXL_CODE_BUFFER_MALLOC'
+++endif
+++
+++markdown = find_program('markdown', required: get_option('doc'))
+++if markdown.found()
+++ subdir('doc')
+++endif
+++
+++libvixl = library(
+++ 'vixl',
+++ 'src'/'code-buffer-vixl.cc',
+++ 'src'/'compiler-intrinsics-vixl.cc',
+++ 'src'/'cpu-features.cc',
+++ 'src'/'utils-vixl.cc',
+++ cpp_args: extra_args,
+++ include_directories: 'src',
+++ install: true,
+++ sources: target_sources,
+++ version: meson.project_version()
+++)
+++
+++vixl_dep = declare_dependency(
+++ compile_args: extra_args,
+++ include_directories: 'src',
+++ link_with: libvixl
+++)
+++
+++if meson.version().version_compare('>=0.54.0')
+++ meson.override_dependency('vixl', vixl_dep)
+++endif
+++
+++install_headers(
+++ 'src'/'assembler-base-vixl.h',
+++ 'src'/'code-buffer-vixl.h',
+++ 'src'/'code-generation-scopes-vixl.h',
+++ 'src'/'compiler-intrinsics-vixl.h',
+++ 'src'/'cpu-features.h',
+++ 'src'/'globals-vixl.h',
+++ 'src'/'invalset-vixl.h',
+++ 'src'/'macro-assembler-interface.h',
+++ 'src'/'platform-vixl.h',
+++ 'src'/'pool-manager-impl.h',
+++ 'src'/'pool-manager.h',
+++ 'src'/'utils-vixl.h',
+++ subdir: 'vixl'
+++)
+++
+++import('pkgconfig').generate(
+++ libvixl,
+++ description: 'ARMv8 Runtime Code Generation Library',
+++ extra_cflags: extra_args,
+++ subdirs: 'vixl',
+++ url: 'https://github.com/Linaro/vixl'
+++)
++diff --git a/meson_options.txt b/meson_options.txt
++new file mode 100644
++index 00000000..602d4c82
++--- /dev/null
+++++ b/meson_options.txt
++@@ -0,0 +1,34 @@
+++# SPDX-FileCopyrightText: 2021 Andrea Pappacoda
+++#
+++# SPDX-License-Identifier: BSD-3-Clause
+++
+++option(
+++ 'target',
+++ type: 'array',
+++ choices: ['auto', 'all', 'aarch32', 'a32', 't32', 'aarch64', 'a64'],
+++ value: ['auto'],
+++ description: 'Target ISA/Architecture'
+++)
+++
+++option(
+++ 'simulator',
+++ type: 'combo',
+++ choices: ['auto', 'aarch64', 'none'],
+++ value: 'auto',
+++ description: 'Simulators to include'
+++)
+++
+++option(
+++ 'code_buffer_allocator',
+++ type: 'combo',
+++ choices: ['auto', 'malloc', 'mmap'],
+++ value: 'auto',
+++ description: 'Configure the allocation mechanism in the CodeBuffer'
+++)
+++
+++option(
+++ 'doc',
+++ type: 'feature',
+++ value: 'auto',
+++ description: 'Convert documentation to HTML (requires the `markdown` program)'
+++)
++diff --git a/src/aarch32/meson.build b/src/aarch32/meson.build
++new file mode 100644
++index 00000000..f4997860
++--- /dev/null
+++++ b/src/aarch32/meson.build
++@@ -0,0 +1,31 @@
+++# SPDX-FileCopyrightText: 2021 Andrea Pappacoda
+++#
+++# SPDX-License-Identifier: BSD-3-Clause
+++
+++# Need to wrap the filenames in files() otherwise this array would be treated
+++# as a simple array of strings, and when used in the master meson.build they
+++# would refer to nonexistent paths. Wrapping in files() ensures that the
+++# filenames will be always relative to this directory, even if referenced in
+++# a different one. As a general rule, when I need to refer to a file from a
+++# different build directory I should wrap it in files().
+++
+++target_sources += files(
+++ 'assembler-aarch32.cc',
+++ 'constants-aarch32.cc',
+++ 'disasm-aarch32.cc',
+++ 'instructions-aarch32.cc',
+++ 'location-aarch32.cc',
+++ 'macro-assembler-aarch32.cc',
+++ 'operands-aarch32.cc'
+++)
+++
+++install_headers(
+++ 'assembler-aarch32.h',
+++ 'constants-aarch32.h',
+++ 'disasm-aarch32.h',
+++ 'instructions-aarch32.h',
+++ 'location-aarch32.h',
+++ 'macro-assembler-aarch32.h',
+++ 'operands-aarch32.h',
+++ subdir: 'vixl'/'aarch32'
+++)
++diff --git a/src/aarch64/meson.build b/src/aarch64/meson.build
++new file mode 100644
++index 00000000..7cd353a3
++--- /dev/null
+++++ b/src/aarch64/meson.build
++@@ -0,0 +1,45 @@
+++# SPDX-FileCopyrightText: 2021 Andrea Pappacoda
+++#
+++# SPDX-License-Identifier: BSD-3-Clause
+++
+++# Need to wrap the filenames in files() otherwise this array would be treated
+++# as a simple array of strings, and when used in the master meson.build they
+++# would refer to nonexistent paths. Wrapping in files() ensures that the
+++# filenames will be always relative to this directory, even if referenced in
+++# a different one. As a general rule, when I need to refer to a file from a
+++# different build directory I should wrap it in files().
+++
+++target_sources += files(
+++ 'assembler-aarch64.cc',
+++ 'assembler-sve-aarch64.cc',
+++ 'cpu-aarch64.cc',
+++ 'cpu-features-auditor-aarch64.cc',
+++ 'decoder-aarch64.cc',
+++ 'disasm-aarch64.cc',
+++ 'instructions-aarch64.cc',
+++ 'logic-aarch64.cc',
+++ 'macro-assembler-aarch64.cc',
+++ 'macro-assembler-sve-aarch64.cc',
+++ 'operands-aarch64.cc',
+++ 'pointer-auth-aarch64.cc',
+++ 'registers-aarch64.cc',
+++ 'simulator-aarch64.cc'
+++)
+++
+++install_headers(
+++ 'abi-aarch64.h',
+++ 'assembler-aarch64.h',
+++ 'constants-aarch64.h',
+++ 'cpu-aarch64.h',
+++ 'cpu-features-auditor-aarch64.h',
+++ 'decoder-aarch64.h',
+++ 'decoder-constants-aarch64.h',
+++ 'disasm-aarch64.h',
+++ 'instructions-aarch64.h',
+++ 'macro-assembler-aarch64.h',
+++ 'operands-aarch64.h',
+++ 'registers-aarch64.h',
+++ 'simulator-aarch64.h',
+++ 'simulator-constants-aarch64.h',
+++ subdir: 'vixl'/'aarch64'
+++)
+diff --git a/meson_options.txt b/meson_options.txt
+new file mode 100644
+index 00000000..602d4c82
+--- /dev/null
++++ b/meson_options.txt
+@@ -0,0 +1,34 @@
++# SPDX-FileCopyrightText: 2021 Andrea Pappacoda
++#
++# SPDX-License-Identifier: BSD-3-Clause
++
++option(
++ 'target',
++ type: 'array',
++ choices: ['auto', 'all', 'aarch32', 'a32', 't32', 'aarch64', 'a64'],
++ value: ['auto'],
++ description: 'Target ISA/Architecture'
++)
++
++option(
++ 'simulator',
++ type: 'combo',
++ choices: ['auto', 'aarch64', 'none'],
++ value: 'auto',
++ description: 'Simulators to include'
++)
++
++option(
++ 'code_buffer_allocator',
++ type: 'combo',
++ choices: ['auto', 'malloc', 'mmap'],
++ value: 'auto',
++ description: 'Configure the allocation mechanism in the CodeBuffer'
++)
++
++option(
++ 'doc',
++ type: 'feature',
++ value: 'auto',
++ description: 'Convert documentation to HTML (requires the `markdown` program)'
++)
+diff --git a/src/aarch32/meson.build b/src/aarch32/meson.build
+new file mode 100644
+index 00000000..f4997860
+--- /dev/null
++++ b/src/aarch32/meson.build
+@@ -0,0 +1,31 @@
++# SPDX-FileCopyrightText: 2021 Andrea Pappacoda
++#
++# SPDX-License-Identifier: BSD-3-Clause
++
++# Need to wrap the filenames in files() otherwise this array would be treated
++# as a simple array of strings, and when used in the master meson.build they
++# would refer to nonexistent paths. Wrapping in files() ensures that the
++# filenames will be always relative to this directory, even if referenced in
++# a different one. As a general rule, when I need to refer to a file from a
++# different build directory I should wrap it in files().
++
++target_sources += files(
++ 'assembler-aarch32.cc',
++ 'constants-aarch32.cc',
++ 'disasm-aarch32.cc',
++ 'instructions-aarch32.cc',
++ 'location-aarch32.cc',
++ 'macro-assembler-aarch32.cc',
++ 'operands-aarch32.cc'
++)
++
++install_headers(
++ 'assembler-aarch32.h',
++ 'constants-aarch32.h',
++ 'disasm-aarch32.h',
++ 'instructions-aarch32.h',
++ 'location-aarch32.h',
++ 'macro-assembler-aarch32.h',
++ 'operands-aarch32.h',
++ subdir: 'vixl'/'aarch32'
++)
+diff --git a/src/aarch64/meson.build b/src/aarch64/meson.build
+new file mode 100644
+index 00000000..9eaf0f9d
+--- /dev/null
++++ b/src/aarch64/meson.build
+@@ -0,0 +1,47 @@
++# SPDX-FileCopyrightText: 2021 Andrea Pappacoda
++#
++# SPDX-License-Identifier: BSD-3-Clause
++
++# Need to wrap the filenames in files() otherwise this array would be treated
++# as a simple array of strings, and when used in the master meson.build they
++# would refer to nonexistent paths. Wrapping in files() ensures that the
++# filenames will be always relative to this directory, even if referenced in
++# a different one. As a general rule, when I need to refer to a file from a
++# different build directory I should wrap it in files().
++
++target_sources += files(
++ 'assembler-aarch64.cc',
++ 'assembler-sve-aarch64.cc',
++ 'cpu-aarch64.cc',
++ 'cpu-features-auditor-aarch64.cc',
++ 'decoder-aarch64.cc',
++ 'disasm-aarch64.cc',
++ 'instructions-aarch64.cc',
++ 'logic-aarch64.cc',
++ 'macro-assembler-aarch64.cc',
++ 'macro-assembler-sve-aarch64.cc',
++ 'operands-aarch64.cc',
++ 'pointer-auth-aarch64.cc',
++ 'registers-aarch64.cc',
++ 'simulator-aarch64.cc'
++)
++
++install_headers(
++ 'abi-aarch64.h',
++ 'assembler-aarch64.h',
++ 'constants-aarch64.h',
++ 'cpu-aarch64.h',
++ 'cpu-features-auditor-aarch64.h',
++ 'debugger-aarch64.h',
++ 'decoder-aarch64.h',
++ 'decoder-constants-aarch64.h',
++ 'decoder-visitor-map-aarch64.h',
++ 'disasm-aarch64.h',
++ 'instructions-aarch64.h',
++ 'macro-assembler-aarch64.h',
++ 'operands-aarch64.h',
++ 'registers-aarch64.h',
++ 'simulator-aarch64.h',
++ 'simulator-constants-aarch64.h',
++ subdir: 'vixl'/'aarch64'
++)
+
diff --git a/testing/vixl/APKBUILD b/testing/vixl/APKBUILD
new file mode 100644
index 00000000000..db4e913e94e
--- /dev/null
+++ b/testing/vixl/APKBUILD
@@ -0,0 +1,33 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
+pkgname=vixl
+pkgver=7.0.0
+pkgrel=0
+pkgdesc="AArch32 and AArch64 Runtime Code Generation Library"
+url="https://github.com/Linaro/vixl"
+arch="aarch64 armv7"
+license="BSD-3-Clause"
+makedepends="meson"
+subpackages="$pkgname-dev"
+source="$pkgname-$pkgver.tar.gz::https://github.com/Linaro/vixl/archive/refs/tags/$pkgver.tar.gz
+ 0001-vixl-Meson-support.patch
+ "
+
+build() {
+ abuild-meson \
+ . output
+ meson compile -C output
+}
+
+check() {
+ meson test --no-rebuild --print-errorlogs -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+sha512sums="
+4b883151b363a71e0b2109a544832be46d87a51de782d65cca66f5bf3f1f1e2c8c6fd42a180b95bd784b72f62a17fd659b05674579ed9566e8ba3a364dcbfd5f vixl-7.0.0.tar.gz
+158a3f3c34fe3b2a422c6cab2c98d6255f3c2f5a2c9c56401a992a01fa1943dd39a5cb8edcff39d9923f7c2498a8826062b0e5dceb002ed7355fd5ed2edea70d 0001-vixl-Meson-support.patch
+"
diff --git a/testing/vkbasalt/APKBUILD b/testing/vkbasalt/APKBUILD
new file mode 100644
index 00000000000..4eaf9ff094e
--- /dev/null
+++ b/testing/vkbasalt/APKBUILD
@@ -0,0 +1,45 @@
+# Contributor: Marian Buschsieweke <marian.buschsieweke@posteo.net>
+# Maintainer: Marian Buschsieweke <marian.buschsieweke@posteo.net>
+pkgname=vkbasalt
+pkgver=0.3.2.10
+pkgrel=0
+pkgdesc="vulkan post processing layer for linux"
+url="https://github.com/DadSchoorse/vkBasalt"
+license="Zlib"
+arch="all"
+makedepends="
+ glslang
+ libx11-dev
+ meson
+ spirv-headers
+ vulkan-headers
+ "
+subpackages="
+ $pkgname-doc
+ "
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/DadSchoorse/vkBasalt/releases/download/v0.3.2.10/vkBasalt-$pkgver.tar.gz
+ "
+
+builddir="$srcdir/vkBasalt-$pkgver"
+options="!check" # no test suite
+
+build() {
+ abuild-meson \
+ -Db_lto=true \
+ . output
+ meson compile -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+
+}
+
+doc() {
+ install -Dm 644 "$builddir"/config/vkBasalt.conf "$subpkgdir"/usr/share/vkBasalt/vkBasalt.conf.example
+}
+
+sha512sums="
+b80ca0320b99832d05d2d38e5e9d8f5981a5608d1509a1e4ea16bb4d0970ac13474e53e35a1634f2683e24c9ca0e4661545edd388b63b23c63782998ec0e03a4 vkbasalt-0.3.2.10.tar.gz
+"
diff --git a/testing/vlang/APKBUILD b/testing/vlang/APKBUILD
new file mode 100644
index 00000000000..61968720ba3
--- /dev/null
+++ b/testing/vlang/APKBUILD
@@ -0,0 +1,61 @@
+# Contributor: Jakob Meier <comcloudway@ccw.icu>
+# Maintainer: Jakob Meier <comcloudway@ccw.icu>
+
+pkgname=vlang
+pkgver=0.4.3
+# this has to be updated with the version
+_vc_commit_sha="5e691a82c01957870b451e06216a9fb3a4e83a18"
+pkgrel=0
+pkgdesc="Simple, fast, safe, compiled language for developing maintainable software."
+url="https://vlang.io"
+arch="x86_64 aarch64"
+license="MIT"
+# to be able to symlink /usr/lib/vlang/thirdparty/tcc/lib/libgc.a to /usr/lib/libgc.a
+depends="gc-dev"
+makedepends="gcc gc-dev libx11-dev"
+source="
+v-$pkgver.tar.gz::https://github.com/vlang/v/archive/refs/tags/$pkgver.tar.gz
+vc-$pkgver.tar.gz::https://github.com/vlang/vc/archive/$_vc_commit_sha.tar.gz
+"
+builddir="$srcdir/v-$pkgver"
+options="net"
+
+build() {
+ mv "../vc-$_vc_commit_sha" ./vc
+
+ # cannot rely on prebuild tcc libgc.a
+ # needs gc-dev
+ mkdir -p thirdparty/tcc/lib
+ ln -s /usr/lib/libgc.a thirdparty/tcc/lib/libgc.a
+
+ gcc -std=gnu11 -w -o v1 vc/v.c -lm -lpthread
+ ./v1 -no-parallel -o v2 -prod cmd/v
+ ./v2 -o v -prod cmd/v
+ rm -rf v1 v2
+
+ ./v run ./cmd/tools/detect_tcc.v
+
+ VEXE=$builddir/v ./v build-tools -v
+}
+
+check() {
+ ./v self
+}
+
+package() {
+ install -d $pkgdir/usr/lib/vlang $pkgdir/usr/share/vlang $pkgdir/usr/bin
+ install -Dm644 LICENSE pkgdir/usr/share/licenses/$pkgname/LICENSE
+ install -Dm755 v $pkgdir/usr/lib/vlang
+ cp -a cmd $pkgdir/usr/lib/vlang/
+ cp -a examples $pkgdir/usr/share/vlang/
+ cp -a thirdparty $pkgdir/usr/lib/vlang/
+ cp -a vlib $pkgdir/usr/lib/vlang/
+ cp v.mod $pkgdir/usr/lib/vlang/
+ ln -s /usr/lib/vlang/v $pkgdir/usr/bin/v
+
+ touch $pkgdir/usr/lib/vlang/cmd/tools/.disable_autorecompilation
+}
+sha512sums="
+b6646a2973ab1e9a718227113bd47440f72b559fbbd53760cfe441ac90f52dee0d12b082812a31ab2d0e0e96bde1c23ba79619c7a759361329ef9f8f33d1970a v-0.4.3.tar.gz
+b99a12bb006559dfe41f5205e83e18d0b238cd14f19a6452fc5f0f97110d09048cb25a0867dfb7bf96369f697a542ae66b26ddd47a5bb1e3fdd6098576abbb14 vc-0.4.3.tar.gz
+"
diff --git a/testing/vmtouch/APKBUILD b/testing/vmtouch/APKBUILD
new file mode 100644
index 00000000000..f9153902166
--- /dev/null
+++ b/testing/vmtouch/APKBUILD
@@ -0,0 +1,27 @@
+# Maintainer: ovf <ovf@mm.st>
+pkgname=vmtouch
+pkgver=1.3.1
+pkgrel=0
+pkgdesc="Portable file system cache diagnostics and control"
+url="https://hoytech.com/vmtouch/"
+arch="all"
+license="BSD-3-Clause"
+makedepends="perl"
+subpackages="$pkgname-doc"
+source="https://github.com/hoytech/vmtouch/archive/refs/tags/v$pkgver/vmtouch-$pkgver.tar.gz"
+options="!check" # there are no tests
+
+build() {
+ make PREFIX=/usr
+}
+
+
+package() {
+ make PREFIX=/usr DESTDIR="$pkgdir" install
+
+ install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname
+}
+
+sha512sums="
+77c4f55c003a03c06e894cc19fae651f4be85ab416d5ba64053580d6daa2ac59be59e8d4a93b243681ef7ead47fe7fb12b2efa3971af33af89c2ab39905ea854 vmtouch-1.3.1.tar.gz
+"
diff --git a/testing/vocage/APKBUILD b/testing/vocage/APKBUILD
deleted file mode 100644
index a5a54446968..00000000000
--- a/testing/vocage/APKBUILD
+++ /dev/null
@@ -1,23 +0,0 @@
-# Maintainer: Krystian Chachuła <krystian@krystianch.com>
-pkgname=vocage
-pkgver=1.1.0
-pkgrel=1
-pkgdesc="Minimalistic terminal-based vocabulary-learning tool"
-url="https://github.com/proycon/vocage"
-arch="all !s390x !riscv64"
-license="GPL-3.0-or-later"
-makedepends="rust cargo"
-source="$pkgname-$pkgver.tar.gz::https://github.com/proycon/vocage/archive/refs/tags/v$pkgver.tar.gz"
-options="!check" # No test suite / unit tests
-
-build() {
- cargo build --release --locked
-}
-
-package() {
- install -D -m755 "target/release/vocage" "$pkgdir/usr/bin/vocage"
-}
-
-sha512sums="
-c6cf955de66469c00e88b4dff1aa0a9686c3a1fe604e8c1f6fccd738de013c5490ed178f41a863b2a90419bb936a0a6e038a761dedf55b3e283d15a957373c31 vocage-1.1.0.tar.gz
-"
diff --git a/testing/voikko-fi/APKBUILD b/testing/voikko-fi/APKBUILD
new file mode 100644
index 00000000000..25eae00a401
--- /dev/null
+++ b/testing/voikko-fi/APKBUILD
@@ -0,0 +1,24 @@
+# Contributor: Timo Teräs <timo.teras@iki.fi>
+# Maintainer: Timo Teräs <timo.teras@iki.fi>
+pkgname=voikko-fi
+pkgver=2.5
+pkgrel=0
+pkgdesc="Finnish dictionary for libvoikko spell checker"
+url="https://voikko.puimula.org/"
+arch="noarch"
+license="GPL-2.0-or-later"
+makedepends="foma libvoikko"
+options="!check" # no tests
+source="https://www.puimula.org/voikko-sources/voikko-fi/voikko-fi-$pkgver.tar.gz"
+
+build() {
+ make vvfst
+}
+
+package() {
+ make DESTDIR="$pkgdir/usr/share/voikko/" vvfst-install
+}
+
+sha512sums="
+6de3c6c13a9fb05a463a55177dc1707d5e4ca01c7ccf08e0f8ab73cb3a353ee4935adc23a1b5f6c5da568dbb075c081a700d8d46eb99b6bcbed0efb4d977f59a voikko-fi-2.5.tar.gz
+"
diff --git a/testing/volatility3/APKBUILD b/testing/volatility3/APKBUILD
index fd788a4ed50..f615ed90f6e 100644
--- a/testing/volatility3/APKBUILD
+++ b/testing/volatility3/APKBUILD
@@ -1,19 +1,21 @@
# Contributor: Francesco Colista <fcolista@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=volatility3
-pkgver=2.0.1
-_pkgver=${pkgver/_beta1/-beta.1}
-pkgrel=0
+pkgver=2.5.2
+pkgrel=1
pkgdesc="Volatile memory forensics toolkit"
url="https://github.com/volatilityfoundation/volatility3"
arch="noarch !armhf !armv7" # py3-yara
license="custom"
-depends="py3-crypto py3-capstone py3-yara"
-makedepends="py3-setuptools"
-source="$pkgname-$pkgver.tar.gz::https://github.com/volatilityfoundation/volatility3/archive/v$_pkgver.tar.gz"
+depends="py3-crypto py3-capstone py3-yara py3-pefile"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+subpackages="$pkgname-doc $pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/volatilityfoundation/volatility3/archive/v$pkgver.tar.gz"
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
@@ -21,10 +23,12 @@ check() {
}
package() {
- python3 setup.py install --root "$pkgdir"
- install -Dm644 LICENSE.txt "$pkgdir/usr/share/licenses/$pkgname/LICENSE.txt"
+ python3 -m installer -d "$pkgdir" .dist/*.whl
+
+ install -Dm644 LICENSE.txt \
+ -t "$pkgdir"/usr/share/licenses/$pkgname/
}
sha512sums="
-752b3fc23b3668df4329f6dbefa2ff8eb2dd63bc6e22e18774096cebae93053567727e3dc6e5ecbf7a0731459c829c37cea8ac735564c62f96a4f652ad2b6cb9 volatility3-2.0.1.tar.gz
+02cfd06928f1667ec481e776c45e954d4a40fa6da6ffbdd30e0980bd5d09ce70d0e31de6e352a833c36045e67c2120ea6a10e2d3ec1327e9e4e4e1c2af494fcf volatility3-2.5.2.tar.gz
"
diff --git a/testing/volumeicon/APKBUILD b/testing/volumeicon/APKBUILD
index d61e070d33f..6139b4ab83f 100644
--- a/testing/volumeicon/APKBUILD
+++ b/testing/volumeicon/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: ScrumpyJack <scrumpyjack@st.ilet.to>
pkgname=volumeicon
pkgver=0.5.1
-pkgrel=0
+pkgrel=1
pkgdesc="Volume Icon is a lightweight volume control that sits in your systray"
url="http://softwarebakery.com/maato/volumeicon.html"
arch="all"
diff --git a/testing/vpn-slice/APKBUILD b/testing/vpn-slice/APKBUILD
deleted file mode 100644
index d130c521d2d..00000000000
--- a/testing/vpn-slice/APKBUILD
+++ /dev/null
@@ -1,25 +0,0 @@
-# Contributor: Michał Polański <michal@polanski.me>
-# Maintainer: Michał Polański <michal@polanski.me>
-pkgname=vpn-slice
-pkgver=0.16.1
-pkgrel=0
-pkgdesc="vpnc-script replacement for easy and secure split-tunnel VPN setup"
-url="https://github.com/dlenski/vpn-slice"
-license="GPL-3.0-or-later"
-arch="noarch"
-depends="python3 py3-dnspython py3-setproctitle"
-makedepends="py3-setuptools"
-source="https://github.com/dlenski/vpn-slice/archive/v$pkgver/vpn-slice-$pkgver.tar.gz"
-options="!check" # no test suite
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir" --skip-build
-}
-
-sha512sums="
-ba588927fd859691b768dfe2ee6e407ee133df303831d60828283b41f3bd3386f9b1f03e6df9c43191678490de68b81b0ed7c9c6853f92ab87158fa1362e26f7 vpn-slice-0.16.1.tar.gz
-"
diff --git a/testing/vym/APKBUILD b/testing/vym/APKBUILD
index f5e8338ca68..4bc7227c0c6 100644
--- a/testing/vym/APKBUILD
+++ b/testing/vym/APKBUILD
@@ -1,25 +1,38 @@
-# Contributor: llnu <llnu@ungleich.ch>
-# Maintainer: llnu <llnu@ungleich.ch>
+# Contributor: nu <llnu@protonmail.ch>
+# Maintainer: nu <llnu@protonmail.ch>
pkgname=vym
-pkgver=2.8.8
+pkgver=2.9.26
pkgrel=0
pkgdesc="View Your Mind (VYM) is a cross-platform concept mapping software"
url="https://www.insilmaril.de/vym/"
arch="all"
license="GPL-2.0-only"
-depends="dbus-x11"
-makedepends="qtchooser qt5-qtscript-dev qt5-qtsvg-dev"
-source="https://netcologne.dl.sourceforge.net/project/vym/$pkgver/vym-$pkgver.tar.bz2"
+makedepends="
+ cmake
+ qt5-qtbase-dev
+ qt5-qtscript-dev
+ qt5-qtsvg-dev
+ qt5-qttools-dev
+ samurai
+ "
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/insilmaril/vym/archive/refs/tags/v$pkgver.tar.gz"
build() {
- qmake PREFIX=/usr/share
- make
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=MinSizeRel \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DCMAKE_INSTALL_DATAROOTDIR=share/vym
+ cmake --build build
}
package() {
- make INSTALL_ROOT=$pkgdir install
+ DESTDIR="$pkgdir" cmake --install build
+ mv "$pkgdir"/usr/share/vym/doc "$pkgdir"/usr/share/doc
+ mv "$pkgdir"/usr/share/vym/man "$pkgdir"/usr/share/man
}
sha512sums="
-8179869eecc2a1732e7d645ce5ec1b1bbd3a4c3a3a8df73faf79f7bae46c9724d0af7d6b111197b4b4c8f8638f3f9d00e8cf9b438fd481c1c260a8106526596e vym-2.8.8.tar.bz2
+400d328877b18020a614af6784aa4c355c80d38366e606877d82f67d403ffef81097a32572ea46546c55bddae53bba78fce7d8313b07ffc346dc5ef7073cbbe1 vym-2.9.26.tar.gz
"
diff --git a/testing/w_scan2/APKBUILD b/testing/w_scan2/APKBUILD
index 56af19487bc..a5da338db89 100644
--- a/testing/w_scan2/APKBUILD
+++ b/testing/w_scan2/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Francesco Colista <fcolista@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=w_scan2
-pkgver=1.0.14
+pkgver=1.0.15
pkgrel=0
pkgdesc="Universal ATSC and DVB blind scanner"
url="https://github.com/stefantalpalaru/w_scan2"
@@ -29,5 +29,5 @@ package() {
}
sha512sums="
-d10bcd197deffb5e88e6f4bb02c81437b06333ad73fa52755b0f85e461d438f9670146db86f70a09694e51a40f2e05167ce48e951dfbeac2d92b563720cabb2d w_scan2-1.0.14.tar.gz
+bec567ca5b160083754e7ba31bfe625f16efe71916a00c800557598e0229361c629285017c495d2e50a37e1366d8b00780b4b0e9b081ac20e4f13382b4becf3f w_scan2-1.0.15.tar.gz
"
diff --git a/testing/wabt/APKBUILD b/testing/wabt/APKBUILD
index 9fbb122f423..f032addc1d5 100644
--- a/testing/wabt/APKBUILD
+++ b/testing/wabt/APKBUILD
@@ -1,42 +1,72 @@
# Contributor: Ian Douglas Scott <ian@iandouglasscott.com>
-# Maintainer: Ian Douglas Scott <ian@iandouglasscott.com>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=wabt
-pkgver=1.0.19
+pkgver=1.0.34
pkgrel=0
+_wasm_c_api="b6dd1fb658a282c64b029867845bc50ae59e1497"
+_picosha2="27fcf6979298949e8a462e16d09a0351c18fcaf2"
pkgdesc="WebAssembly binary toolkit"
-arch="all"
+# s390x: lld
+# riscv64: llvm still has broken lto on riscv with floating abi errors
+arch="all !s390x !riscv64"
url="https://github.com/WebAssembly/wabt"
license="Apache-2.0"
-makedepends="cmake"
+makedepends="
+ clang
+ cmake
+ lld
+ samurai
+ "
subpackages="$pkgname-doc"
-_wasm_c_api_commit="d9a80099d496b5cdba6f3fe8fc77586e0e505ddc"
-source="$pkgname-$pkgver.tar.gz::$url/archive/$pkgver.tar.gz
- wasm-c-api-$_wasm_c_api_commit.tar.gz::https://github.com/WebAssembly/wasm-c-api/archive/$_wasm_c_api_commit.tar.gz
+source="$pkgname-$pkgver.tar.gz::https://github.com/WebAssembly/wabt/archive/$pkgver.tar.gz
+ wasm-c-api-$_wasm_c_api.tar.gz::https://github.com/WebAssembly/wasm-c-api/archive/$_wasm_c_api.tar.gz
+ picosha2-$_picosha2.tar.gz::https://github.com/okdshin/PicoSHA2/archive/$_picosha2.tar.gz
"
# Tests require vendored dependencies (as git submodules). Should be modified
# to use copies from repository.
options="!check"
-build() {
- # https://github.com/WebAssembly/wabt/issues/1315
+# secfixes:
+# 1.0.30-r0:
+# - CVE-2022-43280
+# - CVE-2022-43282
+# - CVE-2022-43283
+
+prepare() {
+ default_prepare
+
rmdir third_party/wasm-c-api
- ln -s ../../wasm-c-api-$_wasm_c_api_commit third_party/wasm-c-api
+ ln -sfv "$srcdir"/wasm-c-api-$_wasm_c_api third_party/wasm-c-api
+
+ rmdir third_party/picosha2
+ ln -sfv "$srcdir"/PicoSHA2-$_picosha2 third_party/picosha2
+}
+build() {
if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ local crossopts="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
fi
- cmake -B build \
+
+ CC=clang \
+ CXX=clang++ \
+ CFLAGS="$CFLAGS -O2 -flto=thin" \
+ CXXFLAGS="$CXXFLAGS -O2 -flto=thin" \
+ LDFLAGS="$LDFLAGS -fuse-ld=lld" \
+ cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr \
-DBUILD_TESTS=OFF \
- -DBUILD_TESTS=OFF \
- $CMAKE_CROSSOPTS
- make -C build
+ $crossopts
+
+ cmake --build build
}
package() {
- make -C build DESTDIR="$pkgdir" install
+ DESTDIR="$pkgdir" cmake --install build
}
-sha512sums="cddcd598f1c7ccf87b1efed685571958f4169c07c10a1a7e62a69bd111debe6c6d20702b91a1206fe1aba9ff78d920b9284564f4d796a3583b474e8cfa4d141b wabt-1.0.19.tar.gz
-b6ee7d2d83a3ca7b3cb3ee110282f7d32eada1d9020cadd3fdec58f40478879fd9ac9fada526021d8f6e8a26e1df7353df313d4149be2ffe4aea3a28f856fd89 wasm-c-api-d9a80099d496b5cdba6f3fe8fc77586e0e505ddc.tar.gz"
+sha512sums="
+93be77d18b2311276af2abff8a954f3d029b1689ba8c89e1c3f0d199ddc0af505ffaa8489fbe0df4fc8beae1a37c645971d63794ff440e305042ff1b94bd83ef wabt-1.0.34.tar.gz
+5d3eec2184f8b66e2358b85f416afaea172f24155a61c9412a9d9374aa50347cf0ebe940f35727bc8c0ffe287033b967cc97a857feab6aa9e5098458e72b4fd0 wasm-c-api-b6dd1fb658a282c64b029867845bc50ae59e1497.tar.gz
+9bf66c70c5828a0b89210d1690078a3d418276e9615170cf5b0a72a28bc37087d075f27c07d525ccbb490102b263527e06516fa41ce6231bc918745abbc85fd9 picosha2-27fcf6979298949e8a462e16d09a0351c18fcaf2.tar.gz
+"
diff --git a/testing/waffle/APKBUILD b/testing/waffle/APKBUILD
deleted file mode 100644
index 75542be9b16..00000000000
--- a/testing/waffle/APKBUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-# Contributor: Simon Zeni <simon@bl4ckb0ne.ca>
-# Maintainer: Simon Zeni <simon@bl4ckb0ne.ca>
-pkgname=waffle
-pkgver=1.7.0
-pkgrel=0
-pkgdesc="C library for selecting an OpenGL API and window system at runtime"
-options="!check" # tests are platform dependant (x11/wayland)
-url="https://gitlab.freedesktop.org/mesa/waffle"
-arch="all"
-license="BSD-2-Clause"
-makedepends="eudev-dev mesa-dev mesa-gbm mesa-egl wayland-dev meson cmocka-dev
- cmake"
-subpackages="
- $pkgname-dev
- $pkgname-doc
- $pkgname-bash-completion
- "
-source="https://gitlab.freedesktop.org/mesa/waffle/-/archive/v$pkgver/waffle-v$pkgver.tar.gz"
-builddir="$srcdir/$pkgname-v$pkgver"
-
-build() {
- abuild-meson \
- -Dbuild-examples=false \
- build
- meson compile ${JOBS:+-j ${JOBS}} -C build
-}
-
-package() {
- DESTDIR="$pkgdir" meson install --no-rebuild -C build
-}
-sha512sums="
-49893570f9973c4b0ac3cbc9dcd61c05273226c4916ebc80ae238f96a6c17e906d3f025aaed310eb387bc4d31bb8f2b77a738c1b88a2bd30a6e0e855738b82bc waffle-v1.7.0.tar.gz
-"
diff --git a/testing/waifu2x-converter-cpp/APKBUILD b/testing/waifu2x-converter-cpp/APKBUILD
index df7c653df5b..dc3cb141b5f 100644
--- a/testing/waifu2x-converter-cpp/APKBUILD
+++ b/testing/waifu2x-converter-cpp/APKBUILD
@@ -2,13 +2,13 @@
# Maintainer: Maxim Karasev <begs@disroot.org>
pkgname=waifu2x-converter-cpp
pkgver=5.3.4
-pkgrel=1
+pkgrel=5
pkgdesc="image upscaler for anime-style art capable of opencl"
url="https://github.com/DeadSix27/waifu2x-converter-cpp"
-arch="all !ppc64le !s390x" # limited by opencv
+arch="all !ppc64le !s390x !riscv64" # limited by opencv
license="MIT"
-depends="opencl-icd-loader"
-makedepends="cmake opencl-headers opencl-icd-loader-dev opencv-dev samurai"
+depends="so:libOpenCL.so.1"
+makedepends="cmake opencl-dev opencv-dev samurai"
source="https://github.com/DeadSix27/waifu2x-converter-cpp/archive/v$pkgver/waifu2x-converter-cpp-$pkgver.tar.gz"
options="!check" # no tests
diff --git a/testing/warp-s3/APKBUILD b/testing/warp-s3/APKBUILD
new file mode 100644
index 00000000000..4339b2bd48e
--- /dev/null
+++ b/testing/warp-s3/APKBUILD
@@ -0,0 +1,34 @@
+# Maintainer: Michał Polański <michal@polanski.me>
+pkgname=warp-s3
+pkgver=0.8.0
+pkgrel=3
+pkgdesc="Benchmarking tool for S3"
+url="https://github.com/minio/warp"
+license="AGPL-3.0"
+arch="all !armhf !armv7 !x86" # tests fail on 32-bit architectures
+makedepends="go"
+options="net"
+source="https://github.com/minio/warp/archive/v$pkgver/warp-s3-$pkgver.tar.gz"
+builddir="$srcdir/warp-$pkgver"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ go build \
+ -ldflags "-X github.com/minio/warp/pkg.Version=$pkgver" \
+ -o warp-s3
+}
+
+check() {
+ go test ./...
+}
+
+package() {
+ install -Dm755 $pkgname -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+e6d3d48193c74d6468733440553c8be50075561ad75e4ce07d9a147fd5808bc1cbbe61a41fd4fb4e76eb1e4d2e723c706eae27d8ad97f17b8930d3926c167ad4 warp-s3-0.8.0.tar.gz
+"
diff --git a/testing/warpinator/APKBUILD b/testing/warpinator/APKBUILD
new file mode 100644
index 00000000000..9beafd07dc6
--- /dev/null
+++ b/testing/warpinator/APKBUILD
@@ -0,0 +1,71 @@
+# Contributor: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
+# Maintainer: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
+pkgname=warpinator
+pkgver=1.8.3
+pkgrel=0
+pkgdesc="Share files across the LAN"
+url="https://github.com/linuxmint/warpinator"
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="
+ bubblewrap
+ py3-cairo
+ py3-cryptography
+ py3-google-api-core
+ py3-grpcio
+ py3-landlock
+ py3-netifaces
+ py3-pynacl
+ py3-qrcode
+ py3-setproctitle
+ py3-setuptools
+ py3-xapp
+ py3-zeroconf
+ xapp
+ "
+makedepends="
+ appstream-dev
+ gettext-dev
+ gobject-introspection
+ grpc-dev
+ itstool
+ meson
+ polkit-dev
+ python3-dev
+ py3-protobuf
+ xapp-dev
+ "
+subpackages="
+ $pkgname-lang
+ $pkgname-nemo
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/linuxmint/warpinator/archive/refs/tags/$pkgver.tar.gz"
+options="!check" # No upstream testsuite defined
+build() {
+ meson setup \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var \
+ --buildtype=plain \
+ -Dbundle-grpc=false \
+ -Dbundle-landlock=false \
+ -Dbundle-zeroconf=false \
+ . output
+ meson compile ${JOBS:+-j ${JOBS}} -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+nemo() {
+ pkgdesc="$pkgdesc (nemo integration)"
+ install_if="$pkgname=$pkgver-r$pkgrel nemo"
+
+ amove usr/share/nemo
+}
+
+sha512sums="
+e8db3fb97bb5b17ad8e91fb48345f2a582382468281ad63776dc69fd703b3d4deedab0d6278c2902d417ae0bf32a8a46cbbdd84b9a2bd919c530967e7e9d9eb4 warpinator-1.8.3.tar.gz
+"
diff --git a/testing/warzone2100/APKBUILD b/testing/warzone2100/APKBUILD
index 73208eab2b4..1b6a0b4df71 100644
--- a/testing/warzone2100/APKBUILD
+++ b/testing/warzone2100/APKBUILD
@@ -1,57 +1,72 @@
# Contributor: Díaz Urbaneja Diego <sodomon2@gmail.com>
# Maintainer: Díaz Urbaneja Diego <sodomon2@gmail.com>
pkgname=warzone2100
-pkgver=3.4.1
-pkgrel=0
+pkgver=4.3.5
+pkgrel=1
pkgdesc="3D realtime strategy game on a future Earth"
url="https://wz2100.net/"
-arch="x86_64" # only available x86_64 for compiling problems
-license="GPL-1.0-only"
-depends="
- ttf-dejavu
- xrandr
- "
+# huge videogame
+arch="x86_64"
+license="GPL-2.0-or-later"
+# todo: bundles some font-dejavu/font-noto-cjk, but needs patching
makedepends="
- sdl2-dev
- glew-dev
- fribidi-dev
- openal-soft-dev
- libvorbis-dev
- libtheora-dev
- physfs-dev
- qt5-qtscript-dev
- libsodium-dev
- gawk
- flex
- zip
- unzip
asciidoc
- mesa
cmake
- harfbuzz-dev
+ curl-dev
freetype-dev
+ fribidi-dev
+ gawk
+ harfbuzz-dev
libpng-dev
+ libsodium-dev
+ libtheora-dev
+ libvorbis-dev
+ mesa-dev
+ openal-soft-dev
+ opus-dev
+ physfs-dev
+ qt5-qtscript-dev
+ samurai
+ sdl2-dev
sqlite-dev
- curl-dev
+ vulkan-headers
+ zip
+ zstd-dev
+ "
+subpackages="$pkgname-doc $pkgname-lang $pkgname-data::noarch"
+source="$pkgname-$pkgver.tar.xz::https://github.com/Warzone2100/warzone2100/releases/download/$pkgver/warzone2100_src.tar.xz
+ samurai.patch
"
-subpackages="$pkgname-doc $pkgname-lang"
-source="$pkgname-$pkgver.tar.xz::https://github.com/Warzone2100/warzone2100/releases/download/$pkgver/warzone2100_src.tar.xz"
builddir="$srcdir/warzone2100"
+options="!check" # who tests videogames
build() {
if [ "$CBUILD" != "$CHOST" ]; then
CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
fi
- cmake -B build \
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
-DWZ_DISTRIBUTOR="AlpineLinux" \
+ -DWZ_ENABLE_WARNINGS_AS_ERRORS=OFF \
+ -DENABLE_DISCORD=OFF \
$CMAKE_CROSSOPTS
cmake --build build
}
package() {
- DESTDIR="$pkgdir" cmake --build build --target install
+ depends="$pkgname-data=$pkgver-r$pkgrel"
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+data() {
+ pkgdesc="Data files for warzone2100"
+
+ amove usr/share/warzone2100
}
-sha512sums="26c026400e418ed3da94d96e7bb443c765ede3e0b347785ff8a9e687a5ad87afe03012c830fd509b927634484687efac951b2ef3417e7fe027ce0e684561ca84 warzone2100-3.4.1.tar.xz"
+sha512sums="
+ec65f22a0aad9fe482c4ea916cb321d171b10f0a9b181fea7db2eb17bf54e32b3828c8259082fff266713e2cab4e32dcc455d0d5b923a5ca221fc77b11137062 warzone2100-4.3.5.tar.xz
+7f2998c29a3d6e94b0d475f1d467752568533fe9c84ffdee7a441f62cd8027aecbfdd990d4b1ea00099d6bc1776a0d88cb5b3336f802e274d93ea0740b421be2 samurai.patch
+"
diff --git a/testing/warzone2100/samurai.patch b/testing/warzone2100/samurai.patch
new file mode 100644
index 00000000000..b92b32d331f
--- /dev/null
+++ b/testing/warzone2100/samurai.patch
@@ -0,0 +1,13 @@
+diff --git a/3rdparty/CMakeLists.txt b/3rdparty/CMakeLists.txt
+index 1336ebe..ceb926b 100644
+--- a/3rdparty/CMakeLists.txt
++++ b/3rdparty/CMakeLists.txt
+@@ -102,7 +102,7 @@ if (WZ_ENABLE_BASIS_UNIVERSAL)
+ message(FATAL_ERROR "Failed to create directory for basis_universal_host_build")
+ endif()
+ execute_process(
+- COMMAND ${CMAKE_COMMAND} -DCMAKE_BUILD_TYPE=Release "${CMAKE_CURRENT_SOURCE_DIR}/basis_universal_host_build"
++ COMMAND ${CMAKE_COMMAND} -G Ninja -DCMAKE_BUILD_TYPE=Release "${CMAKE_CURRENT_SOURCE_DIR}/basis_universal_host_build"
+ WORKING_DIRECTORY "${BASISU_BINARY_DIR}"
+ RESULT_VARIABLE _basis_result
+ )
diff --git a/testing/wasm-pack/APKBUILD b/testing/wasm-pack/APKBUILD
deleted file mode 100644
index e2121b6da86..00000000000
--- a/testing/wasm-pack/APKBUILD
+++ /dev/null
@@ -1,45 +0,0 @@
-# Contributor: psykose <alice@ayaya.dev>
-# Maintainer: psykose <alice@ayaya.dev>
-pkgname=wasm-pack
-pkgver=0.10.2
-pkgrel=0
-pkgdesc="rust to wasm build tool"
-url="https://github.com/rustwasm/wasm-pack"
-arch="all !s390x !riscv64" # rust
-license="Apache-2.0"
-depends="rust-wasm"
-makedepends="
- cargo
- curl-dev
- openssl-dev
- "
-source="https://github.com/rustwasm/wasm-pack/archive/refs/tags/v$pkgver/wasm-pack-v$pkgver.tar.gz"
-options="!check" # most tests fail outside of x86_64
-
-export CARGO_PROFILE_RELEASE_LTO=true
-export CARGO_PROFILE_RELEASE_PANIC=abort
-export CARGO_PROFILE_RELEASE_CODEGEN_UNITS=1
-export CARGO_PROFILE_RELEASE_OPT_LEVEL=s
-export OPENSSL_NO_VENDOR=1
-
-prepare() {
- default_prepare
- cargo fetch --locked
-}
-
-build() {
- cargo build --release --frozen
-}
-
-check() {
- cargo test --frozen
-}
-
-package() {
- install -Dm755 target/release/wasm-pack \
- -t "$pkgdir"/usr/bin
-}
-
-sha512sums="
-a88bb48abbbd653563f5a74b637d518af946e0a43cda659662831fa893b793f752e54ca274f8e187785b510399c80808b64142f41c23fdb4bdb74ae85eb86e88 wasm-pack-v0.10.2.tar.gz
-"
diff --git a/testing/wasmtime/APKBUILD b/testing/wasmtime/APKBUILD
new file mode 100644
index 00000000000..4ef7664e0c1
--- /dev/null
+++ b/testing/wasmtime/APKBUILD
@@ -0,0 +1,74 @@
+# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=wasmtime
+pkgver=18.0.3
+pkgrel=0
+pkgdesc="Fast and secure runtime for WebAssembly"
+url="https://wasmtime.dev/"
+# others unsupported
+arch="aarch64 x86_64"
+license="Apache-2.0"
+depends_dev="libwasmtime=$pkgver-r$pkgrel"
+makedepends="
+ cargo
+ cargo-auditable
+ chrpath
+ rust-wasm
+ zstd-dev
+ "
+subpackages="libwasmtime $pkgname-dev"
+source="https://github.com/bytecodealliance/wasmtime/releases/download/v$pkgver/wasmtime-v$pkgver-src.tar.gz
+ system-zstd.patch
+ "
+builddir="$srcdir/wasmtime-v$pkgver-src"
+# net: fetch dependencies
+# check: custom_limiter_detect_os_oom_failure fails with oom for some reason
+options="!check net"
+
+
+prepare() {
+ default_prepare
+
+ git init -q
+ # can't patch deps with vendor dir
+ rm -fv .cargo/config.toml
+ rm -rf vendor
+
+ # Rust target triple.
+ local target=$(rustc -vV | sed -n 's/host: //p')
+
+ # Build against system-provided libs
+ mkdir -p .cargo
+ cat >> .cargo/config.toml <<-EOF
+ [target.$target]
+ zstd = { rustc-link-lib = ["zstd"] }
+ EOF
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release
+ cargo auditable build --frozen --release -p wasmtime-c-api
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm755 target/release/wasmtime -t "$pkgdir"/usr/bin/
+ # remove gigantic useless rpath to /usr/lib
+ chrpath -d target/release/libwasmtime.so
+ install -Dm644 target/release/libwasmtime.so -t "$pkgdir"/usr/lib/
+ cp -a crates/c-api/include "$pkgdir"/usr/
+}
+
+libwasmtime() {
+ amove usr/lib
+}
+
+sha512sums="
+de00e97c7075b6b0bf1dc7b1189512bd47cad60cae30d4885bedd070d2efabeb2fb5bf3409b49ad2713e2f8cc141186811bcb0527fc92cb4c9c278aea8713af5 wasmtime-v18.0.3-src.tar.gz
+5441687022cee3a4774052cf81aef786bfb6385f0474c13964320c529b9f82128063f088c6a6e3e3f2883b592b118f13e0dacb309697d0e8d8e2d9670e33bba7 system-zstd.patch
+"
diff --git a/testing/wasmtime/system-zstd.patch b/testing/wasmtime/system-zstd.patch
new file mode 100644
index 00000000000..7dbdf11eebb
--- /dev/null
+++ b/testing/wasmtime/system-zstd.patch
@@ -0,0 +1,67 @@
+diff --git a/Cargo.lock b/Cargo.lock
+index f5a3e5e..dc23e54 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -2272,6 +2272,12 @@ dependencies = [
+ "zeroize",
+ ]
+
++[[package]]
++name = "pkg-config"
++version = "0.3.26"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6ac9a59f73473f1b8d852421e59e64809f025994837ef743615c6d0c5b305160"
++
+ [[package]]
+ name = "plotters"
+ version = "0.3.1"
+@@ -4641,18 +4647,18 @@ dependencies = [
+
+ [[package]]
+ name = "zstd"
+-version = "0.11.1+zstd.1.5.2"
++version = "0.12.3+zstd.1.5.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "77a16b8414fde0414e90c612eba70985577451c4c504b99885ebed24762cb81a"
++checksum = "76eea132fb024e0e13fd9c2f5d5d595d8a967aa72382ac2f9d39fcc95afd0806"
+ dependencies = [
+ "zstd-safe",
+ ]
+
+ [[package]]
+ name = "zstd-safe"
+-version = "5.0.1+zstd.1.5.2"
++version = "6.0.4+zstd.1.5.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "7c12659121420dd6365c5c3de4901f97145b79651fb1d25814020ed2ed0585ae"
++checksum = "7afb4b54b8910cf5447638cb54bf4e8a65cbedd783af98b98c62ffe91f185543"
+ dependencies = [
+ "libc",
+ "zstd-sys",
+@@ -4660,10 +4666,11 @@ dependencies = [
+
+ [[package]]
+ name = "zstd-sys"
+-version = "2.0.1+zstd.1.5.2"
++version = "2.0.8+zstd.1.5.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "9fd07cbbc53846d9145dbffdf6dd09a7a0aa52be46741825f5c97bdd4f73f12b"
++checksum = "5556e6ee25d32df2586c098bbfa278803692a20d0ab9565e049480d52707ec8c"
+ dependencies = [
+ "cc",
+ "libc",
++ "pkg-config",
+ ]
+diff --git a/crates/cache/Cargo.toml b/crates/cache/Cargo.toml
+index b7fb059..1d9419f 100644
+--- a/crates/cache/Cargo.toml
++++ b/crates/cache/Cargo.toml
+@@ -18,7 +18,7 @@ log = { workspace = true }
+ serde = { version = "1.0.94", features = ["derive"] }
+ sha2 = "0.10.2"
+ toml = "0.5.5"
+-zstd = { version = "0.11.1", default-features = false }
++zstd = { version = "0.12", default-features = false, features = ["pkg-config"] }
+
+ [target.'cfg(target_os = "windows")'.dependencies.windows-sys]
+ workspace = true
diff --git a/testing/watchbind/APKBUILD b/testing/watchbind/APKBUILD
new file mode 100644
index 00000000000..b4dc030d0b5
--- /dev/null
+++ b/testing/watchbind/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: Orhun Parmaksız <orhunparmaksiz@gmail.com>
+# Maintainer: Orhun Parmaksız <orhunparmaksiz@gmail.com>
+pkgname=watchbind
+pkgver=0.2.1
+pkgrel=0
+pkgdesc="Turn any shell command into a powerful TUI with custom keybindings"
+url="https://github.com/fritzrehde/watchbind"
+arch="all"
+license="GPL-3.0-or-later"
+makedepends="cargo cargo-auditable"
+subpackages="$pkgname-doc"
+options="net"
+source="$pkgname-$pkgver.tar.gz::https://github.com/fritzrehde/watchbind/archive/v$pkgver.tar.gz"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm 755 "target/release/$pkgname" -t "$pkgdir/usr/bin"
+ install -Dm 644 README.md -t "$pkgdir/usr/share/doc/$pkgname"
+}
+
+sha512sums="
+4084e854e070b2c9736e2ef10025f6703efcac8e9fb9c345f09e03a2048d0437e2d470b684f25306b66fca99cbeab40202d0560eba24aa2a69220b34369d2f46 watchbind-0.2.1.tar.gz
+"
diff --git a/testing/watchdog/APKBUILD b/testing/watchdog/APKBUILD
new file mode 100644
index 00000000000..3b23d94e372
--- /dev/null
+++ b/testing/watchdog/APKBUILD
@@ -0,0 +1,34 @@
+# Contributor: Milan P. Stanić <mps@arvanta.net>
+# Maintainer: Milan P. Stanić <mps@arvanta.net>
+pkgname=watchdog
+pkgver=5.16
+pkgrel=1
+pkgdesc="watchdog daemon"
+url="https://sourceforge.net/projects/watchdog/"
+arch="all"
+license="GPL-2.0-or-later"
+options="!check" # no test
+makedepends="linux-headers"
+subpackages="$pkgname-doc"
+source="https://downloads.sourceforge.net/watchdog/watchdog-$pkgver.tar.gz"
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var \
+ --with-pidfile=/run/watchdog.pid \
+ --with-ka_pidfile=/run/wd_keepalive.pid \
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+1c9c921570ec7ddc3e4ff88b2029f1c3865277e547fb8970575df4b61fdf1f06f443f49ad09f11c29d913ca7d6ab05c5b19ec049ac218a8bcebd20b1bf5f0bbd watchdog-5.16.tar.gz
+"
diff --git a/testing/watchexec/APKBUILD b/testing/watchexec/APKBUILD
deleted file mode 100644
index 78d2f7b432a..00000000000
--- a/testing/watchexec/APKBUILD
+++ /dev/null
@@ -1,55 +0,0 @@
-# Contributor: Chloe Kudryavtsev <toast@toast.cafe>
-# Maintainer: Chloe Kudryavtsev <toast@toast.cafe>
-pkgname=watchexec
-pkgver=1.18.7
-pkgrel=0
-pkgdesc='Executes commands in response to file modifications'
-url='https://github.com/watchexec/watchexec'
-arch='x86_64 x86 armhf armv7 aarch64 ppc64le' # limited by rust/cargo
-license='Apache-2.0'
-makedepends='cargo'
-checkdepends="bash"
-subpackages="$pkgname-doc
- $pkgname-zsh-completion
- "
-source="https://github.com/watchexec/watchexec/archive/refs/tags/cli-v$pkgver.tar.gz"
-builddir="$srcdir/watchexec-cli-v$pkgver"
-
-case "$CARCH" in
-arm*|aarch64|ppc64le)
- # weirdly failing tests
- options="$options !check"
- ;;
-esac
-
-export CARGO_HOME="$srcdir"/cargo
-
-prepare() {
- default_prepare
- cargo fetch --locked
-}
-
-build() {
- cargo build \
- --release \
- --verbose \
- --frozen
-}
-
-check() {
- cargo test --all \
- --release \
- --verbose \
- --frozen
-}
-
-package() {
- install -Dm755 target/release/"$pkgname" "$pkgdir"/usr/bin/"$pkgname"
- install -Dm644 doc/"$pkgname".1 "$pkgdir"/usr/share/man/man1/"$pkgname".1
- install -Dm644 "$builddir"/completions/zsh \
- "$pkgdir"/usr/share/zsh/site-functions/_watchexec
-}
-
-sha512sums="
-b3afc130d63767b0d5bd9120b22c8f462b758acc31db7fffccb27377471c4638294550404c89bef527ea938ab28d5800feca6cc375d994084ca66ef7754aabc0 cli-v1.18.7.tar.gz
-"
diff --git a/testing/watchman/APKBUILD b/testing/watchman/APKBUILD
deleted file mode 100644
index 8644014de47..00000000000
--- a/testing/watchman/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Maintainer: André Klitzing <aklitzing@gmail.com>
-pkgname=watchman
-pkgver=4.9.0
-pkgrel=2
-pkgdesc="A file watching service"
-url="https://facebook.github.io/watchman/"
-#arch="all !s390x" # broken tests on big-endian
-license="Apache-2.0"
-makedepends="pcre-dev autoconf automake linux-headers libtool openssl-dev python3-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/facebook/watchman/archive/v$pkgver.tar.gz
- e77eb9597c4c094a0b0bbeef0b957b49b40b87eb.patch
- Replaced-memset-calls-with-appropriate-C++11-init-or-assignment.patch
- "
-builddir="$srcdir/"$pkgname-$pkgver
-
-build() {
- cd "$builddir"
- ./autogen.sh
- ./configure --prefix= --exec-prefix=/usr --enable-lenient
- make
-}
-
-check() {
- cd "$builddir"
- make check
-}
-
-package() {
- cd "$builddir"
- make DESTDIR=$pkgdir install-binPROGRAMS
-}
-
-sha512sums="f25b77f73bca3e25a0254a98af5c8125b8a31133ec3702cac656459f3522d5f0bf2e96d5893ca9fb5ce3ae18adce58224746bd8ca9afc5c312bcd697cb5b2d5d watchman-4.9.0.tar.gz
-6bb0bb780c6f4067e74dcdeafdef3063ac8e1885e7e9529594e83261107975b152b4fde2693d026c275a7dc7b7dc08e209dd772aeea186678933dbbec5a8f1fe e77eb9597c4c094a0b0bbeef0b957b49b40b87eb.patch
-f511cd9bc3468fdf18b09fd7738755fce0cabc4aa1026dfb45066675e359f62ec5b1d69effa2d8cfb9c68520ce7c62bd619ad5681652c418427f0282a7930b99 Replaced-memset-calls-with-appropriate-C++11-init-or-assignment.patch"
diff --git a/testing/watchman/Replaced-memset-calls-with-appropriate-C++11-init-or-assignment.patch b/testing/watchman/Replaced-memset-calls-with-appropriate-C++11-init-or-assignment.patch
deleted file mode 100644
index 1b56062c490..00000000000
--- a/testing/watchman/Replaced-memset-calls-with-appropriate-C++11-init-or-assignment.patch
+++ /dev/null
@@ -1,482 +0,0 @@
-From 8ab92d2d307066f3aa44f13be0e4ac7c11c740ca Mon Sep 17 00:00:00 2001
-From: Sergey Zhupanov <zhupanov@fb.com>
-Date: Thu, 25 Jan 2018 14:58:21 -0800
-Subject: [PATCH] Replaced memset calls with appopriate C++11 init or
- assignment.
-
-Summary: Replaced memset calls with appropriate C++ init or assignment to default-constructed struct.
-
-Reviewed By: wez
-
-Differential Revision: D6770919
-
-fbshipit-source-id: 7d623da7935b54cf00c4775f56298845c528c9f1
----
- FileDescriptor.cpp | 6 ++----
- Pipe.cpp | 3 +--
- json.cpp | 2 +-
- listener.cpp | 6 ++----
- log.cpp | 3 +--
- main.cpp | 6 ++----
- opendir.cpp | 4 ++--
- scm/Mercurial.cpp | 2 +-
- stream_unix.cpp | 3 +--
- stream_win.cpp | 3 +--
- tests/bser.cpp | 2 +-
- watcher/eden.cpp | 2 +-
- watcher/fsevents.cpp | 6 ++----
- watcher/kqueue.cpp | 9 +++------
- watcher/win32.cpp | 3 +--
- winbuild/backtrace.cpp | 2 +-
- winbuild/dir.cpp | 2 +-
- winbuild/posix_spawn.cpp | 14 +++++---------
- 18 files changed, 29 insertions(+), 49 deletions(-)
-
-diff --git a/FileDescriptor.cpp b/FileDescriptor.cpp
-index 21c79285..4f4e220e 100644
---- a/FileDescriptor.cpp
-+++ b/FileDescriptor.cpp
-@@ -151,7 +151,7 @@ bool FileDescriptor::isNonBlock() const {
- * If the case does not match, throws an exception. */
- static void checkCanonicalBaseName(const char *path) {
- #ifdef __APPLE__
-- struct attrlist attrlist;
-+ struct attrlist attrlist = {};
- struct {
- uint32_t len;
- attrreference_t ref;
-@@ -160,7 +160,6 @@ static void checkCanonicalBaseName(const char *path) {
- w_string_piece pathPiece(path);
- auto base = pathPiece.baseName();
-
-- memset(&attrlist, 0, sizeof(attrlist));
- attrlist.bitmapcount = ATTR_BIT_MAP_COUNT;
- attrlist.commonattr = ATTR_CMN_NAME;
-
-@@ -237,7 +236,7 @@ FileDescriptor openFileHandle(const char *path,
- #else // _WIN32
- DWORD access = 0, share = 0, create = 0, attrs = 0;
- DWORD err;
-- SECURITY_ATTRIBUTES sec;
-+ SECURITY_ATTRIBUTES sec = {};
-
- if (!strcmp(path, "/dev/null")) {
- path = "NUL:";
-@@ -259,7 +258,6 @@ FileDescriptor openFileHandle(const char *path,
- // We want more posix-y behavior by default
- share = FILE_SHARE_DELETE | FILE_SHARE_READ | FILE_SHARE_WRITE;
-
-- memset(&sec, 0, sizeof(sec));
- sec.nLength = sizeof(sec);
- sec.bInheritHandle = TRUE;
- if (opts.closeOnExec) {
-diff --git a/Pipe.cpp b/Pipe.cpp
-index 6e087ba2..a6fe3100 100644
---- a/Pipe.cpp
-+++ b/Pipe.cpp
-@@ -11,9 +11,8 @@ Pipe::Pipe() {
- #ifdef _WIN32
- HANDLE readPipe;
- HANDLE writePipe;
-- SECURITY_ATTRIBUTES sec;
-+ SECURITY_ATTRIBUTES sec = {};
-
-- memset(&sec, 0, sizeof(sec));
- sec.nLength = sizeof(sec);
- sec.bInheritHandle = FALSE; // O_CLOEXEC equivalent
- constexpr DWORD kPipeSize = 64 * 1024;
-diff --git a/json.cpp b/json.cpp
-index f1a02121..257ec795 100644
---- a/json.cpp
-+++ b/json.cpp
-@@ -492,7 +492,7 @@ bool watchman_json_buffer::passThru(
- }
-
- json_ref watchman_json_buffer::decodeNext(w_stm_t stm, json_error_t* jerr) {
-- memset(jerr, 0, sizeof(*jerr));
-+ *jerr = json_error_t();
- if (!readAndDetectPdu(stm, jerr)) {
- return nullptr;
- }
-diff --git a/listener.cpp b/listener.cpp
-index 99f7126c..4953020d 100644
---- a/listener.cpp
-+++ b/listener.cpp
-@@ -446,7 +446,7 @@ static std::shared_ptr<watchman_client> make_new_client(
- #ifdef _WIN32
- static void named_pipe_accept_loop_internal(const char* path) {
- HANDLE handles[2];
-- OVERLAPPED olap;
-+ OVERLAPPED olap = {};
- HANDLE connected_event = CreateEvent(NULL, FALSE, TRUE, NULL);
-
- if (!connected_event) {
-@@ -459,7 +459,6 @@ static void named_pipe_accept_loop_internal(const char* path) {
-
- handles[0] = connected_event;
- handles[1] = listener_thread_event;
-- memset(&olap, 0, sizeof(olap));
- olap.hEvent = connected_event;
-
- w_log(W_LOG_ERR, "waiting for pipe clients on %s\n", path);
-@@ -592,7 +591,7 @@ static void accept_loop(FileDescriptor&& listenerDescriptor) {
- bool w_start_listener(const char *path)
- {
- #ifndef _WIN32
-- struct sigaction sa;
-+ struct sigaction sa = {};
- sigset_t sigset;
- #endif
-
-@@ -667,7 +666,6 @@ bool w_start_listener(const char *path)
-
- /* allow SIGUSR1 and SIGCHLD to wake up a blocked thread, without restarting
- * syscalls */
-- memset(&sa, 0, sizeof(sa));
- sa.sa_handler = wakeme;
- sa.sa_flags = 0;
- sigaction(SIGUSR1, &sa, NULL);
-diff --git a/log.cpp b/log.cpp
-index 9b0b96fa..489fbf90 100644
---- a/log.cpp
-+++ b/log.cpp
-@@ -298,9 +298,8 @@ static LONG WINAPI exception_filter(LPEXCEPTION_POINTERS excep) {
-
- void w_setup_signal_handlers(void) {
- #ifndef _WIN32
-- struct sigaction sa;
-+ struct sigaction sa = {};
-
-- memset(&sa, 0, sizeof(sa));
- sa.sa_sigaction = crash_handler;
- sa.sa_flags = SA_SIGINFO|SA_RESETHAND;
-
-diff --git a/main.cpp b/main.cpp
-index b43b3f6d..1f1783be 100644
---- a/main.cpp
-+++ b/main.cpp
-@@ -49,7 +49,7 @@ static bool lock_pidfile(void) {
-
- static bool lock_pidfile(void) {
- #if !defined(USE_GIMLI) && !defined(_WIN32)
-- struct flock lock;
-+ struct flock lock = {};
- pid_t mypid;
-
- // We defer computing this path until we're in the server context because
-@@ -58,7 +58,6 @@
- compute_file_name(&pid_file, compute_user_name(), "pid", "pidfile");
-
- mypid = getpid();
-- memset(&lock, 0, sizeof(lock));
- lock.l_type = F_WRLCK;
- lock.l_start = 0;
- lock.l_whence = SEEK_SET;
-@@ -1041,10 +1040,9 @@ static json_ref build_command(int argc, char** argv) {
-
- // Read blob from stdin
- if (json_input_arg) {
-- json_error_t err;
-+ json_error_t err = {};
- w_jbuffer_t buf;
-
-- memset(&err, 0, sizeof(err));
- auto cmd = buf.decodeNext(w_stm_stdin(), &err);
-
- if (buf.pdu_type == is_bser) {
-diff --git a/opendir.cpp b/opendir.cpp
-index 2d546983..eb4e22b0 100644
---- a/opendir.cpp
-+++ b/opendir.cpp
-@@ -142,7 +142,7 @@ DirHandle::DirHandle(const char* path, bool strict) {
- throw std::system_error(ENOTDIR, std::generic_category(), path);
- }
-
-- memset(&attrlist_, 0, sizeof(attrlist_));
-+ attrlist_ = attrlist();
- attrlist_.bitmapcount = ATTR_BIT_MAP_COUNT;
- attrlist_.commonattr = ATTR_CMN_RETURNED_ATTRS |
- ATTR_CMN_ERROR |
-@@ -216,7 +216,7 @@ const watchman_dir_ent* DirHandle::readDir() {
- return &ent_;
- }
-
-- memset(&ent_.stat, 0, sizeof(ent_.stat));
-+ ent_.stat = watchman::FileInformation();
-
- ent_.stat.dev = item->dev;
- memcpy(&ent_.stat.mtime, &item->mtime, sizeof(item->mtime));
-diff --git a/scm/Mercurial.cpp b/scm/Mercurial.cpp
-index 0b69702e..956b708c 100644
---- a/scm/Mercurial.cpp
-+++ b/scm/Mercurial.cpp
-@@ -29,7 +29,7 @@ ChildProcess::Options Mercurial::makeHgOptions() const {
- }
-
- Mercurial::infoCache::infoCache(std::string path) : dirStatePath(path) {
-- memset(&dirstate, 0, sizeof(dirstate));
-+ dirstate = FileInformation();
- }
-
- w_string Mercurial::infoCache::lookupMergeBase(const std::string& commitId) {
-diff --git a/stream_unix.cpp b/stream_unix.cpp
-index db5af1c3..c9082f3e 100644
---- a/stream_unix.cpp
-+++ b/stream_unix.cpp
-@@ -222,7 +222,7 @@ std::unique_ptr<watchman_stream> w_stm_fdopen(FileDescriptor&& fd) {
- std::unique_ptr<watchman_stream> w_stm_connect_unix(
- const char* path,
- int timeoutms) {
-- struct sockaddr_un un;
-+ struct sockaddr_un un = {};
- int max_attempts = timeoutms / 10;
- int attempts = 0;
- int bufsize = WATCHMAN_IO_BUF_SIZE;
-@@ -238,7 +238,6 @@ std::unique_ptr<watchman_stream> w_stm_connect_unix(
- return nullptr;
- }
-
-- memset(&un, 0, sizeof(un));
- un.sun_family = PF_LOCAL;
- memcpy(un.sun_path, path, strlen(path));
-
-diff --git a/stream_win.cpp b/stream_win.cpp
-index 85d1cb73..70831626 100644
---- a/stream_win.cpp
-+++ b/stream_win.cpp
-@@ -715,7 +715,7 @@ int w_poll_events(struct watchman_event_poll *p, int n, int timeoutms) {
- FileDescriptor w_handle_open(const char* path, int flags) {
- DWORD access = 0, share = 0, create = 0, attrs = 0;
- DWORD err;
-- SECURITY_ATTRIBUTES sec;
-+ SECURITY_ATTRIBUTES sec = {};
-
- if (!strcmp(path, "/dev/null")) {
- path = "NUL:";
-@@ -733,7 +733,6 @@ FileDescriptor w_handle_open(const char* path, int flags) {
- // We want more posix-y behavior by default
- share = FILE_SHARE_DELETE|FILE_SHARE_READ|FILE_SHARE_WRITE;
-
-- memset(&sec, 0, sizeof(sec));
- sec.nLength = sizeof(sec);
- sec.bInheritHandle = TRUE;
- if (flags & O_CLOEXEC) {
-diff --git a/tests/bser.cpp b/tests/bser.cpp
-index 881cb5bb..d6f0b9c8 100644
---- a/tests/bser.cpp
-+++ b/tests/bser.cpp
-@@ -155,7 +155,7 @@ static bool check_roundtrip(
- const char* end = dump_buf->data() + dump_buf->size();
- hexdump(dump_buf->data(), end);
-
-- memset(&jerr, 0, sizeof(jerr));
-+ jerr = json_error_t();
- auto decoded = bunser(dump_buf->data(), end, &needed, &jerr);
- ok(decoded, "decoded something (err = %s)", jerr.text);
-
-diff --git a/watcher/eden.cpp b/watcher/eden.cpp
-index a97bb3ea..55d6ba62 100644
---- a/watcher/eden.cpp
-+++ b/watcher/eden.cpp
-@@ -173,7 +173,7 @@ class EdenFileResult : public FileResult {
- exists_ = true;
- } else {
- exists_ = false;
-- memset(&stat_, 0, sizeof(stat_));
-+ stat_ = watchman::FileInformation();
- }
- }
-
-diff --git a/watcher/fsevents.cpp b/watcher/fsevents.cpp
-index 25a4f9cb..56da24cc 100644
---- a/watcher/fsevents.cpp
-+++ b/watcher/fsevents.cpp
-@@ -275,7 +275,7 @@ static fse_stream* fse_stream_make(
- const std::shared_ptr<w_root_t>& root,
- FSEventStreamEventId since,
- w_string& failure_reason) {
-- FSEventStreamContext ctx;
-+ FSEventStreamContext ctx = {};
- CFMutableArrayRef parray = nullptr;
- CFStringRef cpath = nullptr;
- double latency;
-@@ -328,7 +328,6 @@ static fse_stream* fse_stream_make(
- }
- }
-
-- memset(&ctx, 0, sizeof(ctx));
- ctx.info = fse_stream;
-
- parray = CFArrayCreateMutable(nullptr, 0, &kCFTypeArrayCallBacks);
-@@ -440,7 +439,7 @@ static fse_stream* fse_stream_make(
-
- void FSEventsWatcher::FSEventsThread(const std::shared_ptr<w_root_t>& root) {
- CFFileDescriptorRef fdref;
-- CFFileDescriptorContext fdctx;
-+ CFFileDescriptorContext fdctx = {};
-
- w_set_thread_name("fsevents %s", root->root_path.c_str());
-
-@@ -450,7 +449,6 @@ void FSEventsWatcher::FSEventsThread(const std::shared_ptr<w_root_t>& root) {
-
- attempt_resync_on_drop = root->config.getBool("fsevents_try_resync", true);
-
-- memset(&fdctx, 0, sizeof(fdctx));
- fdctx.info = root.get();
-
- fdref = CFFileDescriptorCreate(
-diff --git a/watcher/kqueue.cpp b/watcher/kqueue.cpp
-index 7c288fe6..554d188b 100644
---- a/watcher/kqueue.cpp
-+++ b/watcher/kqueue.cpp
-@@ -70,7 +70,7 @@ KQueueWatcher::KQueueWatcher(w_root_t* root)
- }
-
- bool KQueueWatcher::startWatchFile(struct watchman_file* file) {
-- struct kevent k;
-+ struct kevent k = {};
-
- auto full_name = w_dir_path_cat_str(file->parent, file->getName());
- {
-@@ -98,7 +98,6 @@ bool KQueueWatcher::startWatchFile(struct watchman_file* file) {
- return false;
- }
-
-- memset(&k, 0, sizeof(k));
- EV_SET(
- &k,
- rawFd,
-@@ -140,7 +139,7 @@ std::unique_ptr<watchman_dir_handle> KQueueWatcher::startWatchDir(
- struct timeval,
- const char* path) {
- struct stat st, osdirst;
-- struct kevent k;
-+ struct kevent k = {};
-
- auto osdir = w_dir_open(path);
-
-@@ -169,7 +168,6 @@ std::unique_ptr<watchman_dir_handle> KQueueWatcher::startWatchDir(
- std::string("directory replaced between opendir and open: ") + path);
- }
-
-- memset(&k, 0, sizeof(k));
- auto dir_name = dir->getFullPath();
- EV_SET(
- &k,
-@@ -256,7 +254,7 @@ bool KQueueWatcher::consumeNotify(
- fflags,
- flags_label);
- if ((fflags & (NOTE_DELETE|NOTE_RENAME|NOTE_REVOKE))) {
-- struct kevent k;
-+ struct kevent k = {};
-
- if (w_string_equal(path, root->root_path)) {
- w_log(
-@@ -269,7 +267,6 @@ bool KQueueWatcher::consumeNotify(
- }
-
- // Remove our watch bits
-- memset(&k, 0, sizeof(k));
- EV_SET(&k, fd, EVFILT_VNODE, EV_DELETE, 0, 0, nullptr);
- kevent(kq_fd.fd(), &k, 1, nullptr, 0, 0);
- wlock->name_to_fd.erase(path);
-diff --git a/watcher/win32.cpp b/watcher/win32.cpp
-index 561cc02b..45edc22b 100644
---- a/watcher/win32.cpp
-+++ b/watcher/win32.cpp
-@@ -108,7 +108,7 @@ void WinWatcher::signalThreads() {
- void WinWatcher::readChangesThread(const std::shared_ptr<w_root_t>& root) {
- std::vector<uint8_t> buf;
- DWORD err, filter;
-- OVERLAPPED olap;
-+ OVERLAPPED olap = {};
- BOOL initiate_read = true;
- HANDLE handles[2] = {olapEvent, ping};
- DWORD bytes;
-@@ -132,7 +132,6 @@ void WinWatcher::readChangesThread(const std::shared_ptr<w_root_t>& root) {
- FILE_NOTIFY_CHANGE_ATTRIBUTES | FILE_NOTIFY_CHANGE_SIZE |
- FILE_NOTIFY_CHANGE_LAST_WRITE;
-
-- memset(&olap, 0, sizeof(olap));
- olap.hEvent = olapEvent;
-
- buf.resize(size);
-diff --git a/winbuild/backtrace.cpp b/winbuild/backtrace.cpp
-index e949a578..d3488408 100644
---- a/winbuild/backtrace.cpp
-+++ b/winbuild/backtrace.cpp
-@@ -40,7 +40,7 @@ char **backtrace_symbols(void **array, size_t n_frames) {
-
- std::call_once(sym_init_once, sym_init);
-
-- memset(&sym.info, 0, sizeof(sym.info));
-+ sym.info = SYMBOL_INFO();
- sym.info.MaxNameLen = sizeof(sym) - sizeof(sym.info);
- sym.info.SizeOfStruct = sizeof(sym.info);
-
-diff --git a/winbuild/dir.cpp b/winbuild/dir.cpp
-index 747b1a9f..f0a69398 100644
---- a/winbuild/dir.cpp
-+++ b/winbuild/dir.cpp
-@@ -41,7 +41,7 @@ class WinDirHandle : public watchman_dir_handle {
- win7_ = true;
- }
-
-- memset(&ent_, 0, sizeof(ent_));
-+ ent_ = watchman_dir_ent();
- ent_.d_name = nameBuf_;
- ent_.has_stat = true;
- if (path[1] == ':') {
-diff --git a/winbuild/posix_spawn.cpp b/winbuild/posix_spawn.cpp
-index 7a12f548..532df654 100644
---- a/winbuild/posix_spawn.cpp
-+++ b/winbuild/posix_spawn.cpp
-@@ -37,7 +37,7 @@ pid_t waitpid(pid_t pid, int* status, int options) {
- }
-
- int posix_spawnattr_init(posix_spawnattr_t *attrp) {
-- memset(attrp, 0, sizeof(*attrp));
-+ *attrp = posix_spawnattr_t();
- return 0;
- }
-
-@@ -72,7 +72,7 @@ int posix_spawnattr_destroy(posix_spawnattr_t *attrp) {
- }
-
- int posix_spawn_file_actions_init(posix_spawn_file_actions_t *actions) {
-- memset(actions, 0, sizeof(*actions));
-+ *actions = posix_spawn_file_actions_t();
- return 0;
- }
-
-@@ -242,9 +242,9 @@ static int posix_spawn_common(
- const posix_spawn_file_actions_t *file_actions,
- const posix_spawnattr_t *attrp,
- char *const argv[], char *const envp[]) {
-- STARTUPINFOEX sinfo;
-- SECURITY_ATTRIBUTES sec;
-- PROCESS_INFORMATION pinfo;
-+ STARTUPINFOEX sinfo = {};
-+ SECURITY_ATTRIBUTES sec = {};
-+ PROCESS_INFORMATION pinfo = {};
- char *cmdbuf;
- char *env_block;
- DWORD create_flags = CREATE_NO_WINDOW|EXTENDED_STARTUPINFO_PRESENT;
-@@ -263,17 +263,13 @@ static int posix_spawn_common(
- return ENOMEM;
- }
-
-- memset(&sinfo, 0, sizeof(sinfo));
- sinfo.StartupInfo.cb = sizeof(sinfo);
- sinfo.StartupInfo.dwFlags = STARTF_USESTDHANDLES|STARTF_USESHOWWINDOW;
- sinfo.StartupInfo.wShowWindow = SW_HIDE;
-
-- memset(&sec, 0, sizeof(sec));
- sec.nLength = sizeof(sec);
- sec.bInheritHandle = TRUE;
-
-- memset(&pinfo, 0, sizeof(pinfo));
--
- if (attrp->flags & POSIX_SPAWN_SETPGROUP) {
- create_flags |= CREATE_NEW_PROCESS_GROUP;
- }
diff --git a/testing/watchman/e77eb9597c4c094a0b0bbeef0b957b49b40b87eb.patch b/testing/watchman/e77eb9597c4c094a0b0bbeef0b957b49b40b87eb.patch
deleted file mode 100644
index 17288fef58e..00000000000
--- a/testing/watchman/e77eb9597c4c094a0b0bbeef0b957b49b40b87eb.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-From e77eb9597c4c094a0b0bbeef0b957b49b40b87eb Mon Sep 17 00:00:00 2001
-From: Wez Furlong <wez@fb.com>
-Date: Mon, 8 Jan 2018 21:57:43 -0800
-Subject: [PATCH] fix art.t test failure on alpine linux
-
-Summary:
-Looks like we end up with root_ holding a nullptr after
-the associated test is finished. This only seems to be a problem
-in practice on Alpine linux's musl libc based environment, and
-only when built with `-O2`. Not sure if this is a c++ standard
-library implementation issue or a compiler optimization, or a
-combination of both of those things.
-
-Guard against that with a simple nullptr check.
-
-Refs https://github.com/facebook/watchman/issues/546
-
-Reviewed By: simpkins
-
-Differential Revision: D6681244
-
-fbshipit-source-id: f119b3552c0aeedc325fa83c71b12745536b1dac
----
- thirdparty/libart/src/art-inl.h | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/thirdparty/libart/src/art-inl.h b/thirdparty/libart/src/art-inl.h
-index fce055be..acc7cd67 100644
---- a/thirdparty/libart/src/art-inl.h
-+++ b/thirdparty/libart/src/art-inl.h
-@@ -760,7 +760,7 @@ art_tree<ValueType, KeyType>::Node::maximum() const {
- template <typename ValueType, typename KeyType>
- typename art_tree<ValueType, KeyType>::Leaf*
- art_tree<ValueType, KeyType>::minimum() const {
-- return root_->minimum();
-+ return root_ ? root_->minimum() : nullptr;
- }
-
- /**
-@@ -769,7 +769,7 @@ art_tree<ValueType, KeyType>::minimum() const {
- template <typename ValueType, typename KeyType>
- typename art_tree<ValueType, KeyType>::Leaf*
- art_tree<ValueType, KeyType>::maximum() const {
-- return root_->maximum();
-+ return root_ ? root_->maximum() : nullptr;
- }
-
- template <typename ValueType, typename KeyType>
diff --git a/testing/watchmate/APKBUILD b/testing/watchmate/APKBUILD
new file mode 100644
index 00000000000..6b66667769d
--- /dev/null
+++ b/testing/watchmate/APKBUILD
@@ -0,0 +1,52 @@
+# Contributor: Siva Mahadevan <me@svmhdvn.name>
+# Maintainer: Siva Mahadevan <me@svmhdvn.name>
+pkgname=watchmate
+pkgver=0.5.1
+pkgrel=1
+pkgdesc="Companion app for InfiniTime-powered PineTime smart watch"
+url="https://github.com/azymohliad/watchmate"
+# s390x: https://github.com/nix-rust/nix/issues/1968
+arch="all !s390x"
+license="GPL-3.0-only"
+makedepends="
+ cargo
+ cargo-auditable
+ dbus-dev
+ gdk-pixbuf-dev
+ graphene-dev
+ gtk4.0-dev
+ libadwaita-dev
+ openssl-dev
+ pango-dev
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/azymohliad/watchmate/archive/refs/tags/v$pkgver.tar.gz"
+options="net" # needed for downloading dependencies
+
+prepare() {
+ default_prepare
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+check() {
+ cargo test --release --frozen
+}
+
+package() {
+ local appid="io.gitlab.azymohliad.WatchMate"
+ install -Dm755 target/release/"$pkgname" -t "$pkgdir"/usr/bin/
+ install -Dm644 "assets/$appid.desktop" -t "$pkgdir/usr/share/applications/"
+ install -Dm644 "assets/$appid.gschema.xml" -t "$pkgdir/usr/share/glib-2.0/schemas/"
+ install -Dm644 "assets/$appid.metainfo.xml" -t "$pkgdir/usr/share/metainfo/"
+ install -Dm644 "assets/icons/$appid.svg" -t \
+ "$pkgdir/usr/share/icons/hicolor/scalable/apps/"
+ install -Dm644 "assets/icons/$appid-symbolic.svg" -t \
+ "$pkgdir/usr/share/icons/hicolor/symbolic/apps/"
+}
+
+sha512sums="
+24afe6c86710a712ff8e0aaa03d6b43b150ebae840abaeb61d4a3bc385e71dca6d9bde0f37f9577b1900519918e8bd212a994a823b73287085f08e58b0bf7e83 watchmate-0.5.1.tar.gz
+"
diff --git a/testing/watercloset/0001-remove-debug-flags-and-werror.patch b/testing/watercloset/0001-remove-debug-flags-and-werror.patch
deleted file mode 100644
index 244b3bd9d98..00000000000
--- a/testing/watercloset/0001-remove-debug-flags-and-werror.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/makefile
-+++ b/makefile
-@@ -26,7 +26,6 @@
-
- CXXFLAGS += `sdl2-config --cflags` -DVERSION=$(VERSION) -DREVISION=$(REVISION) -DDATA_DIR=\"$(DATA_DIR)\"
--CXXFLAGS += -Wall -Wempty-body -Werror -Wstrict-prototypes -Werror=maybe-uninitialized -Warray-bounds
-+CXXFLAGS += -Wall -Wempty-body -Wstrict-prototypes -Werror=maybe-uninitialized -Warray-bounds
--CXXFLAGS += -g -lefence
-
- LDFLAGS += `sdl2-config --libs` -lSDL2_mixer -lSDL2_image -lSDL2_ttf -lm
-
diff --git a/testing/watercloset/APKBUILD b/testing/watercloset/APKBUILD
deleted file mode 100644
index b5769e508ed..00000000000
--- a/testing/watercloset/APKBUILD
+++ /dev/null
@@ -1,44 +0,0 @@
-# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
-pkgname=watercloset
-pkgver=1.0
-pkgrel=0
-pkgdesc="2D platform puzzle game"
-url="https://www.parallelrealities.co.uk/games/wc/"
-arch="all"
-license="GPL-3.0-or-later"
-depends="$pkgname-data"
-makedepends="sdl2-dev sdl2_image-dev sdl2_mixer-dev sdl2_ttf-dev"
-subpackages="$pkgname-data::noarch"
-options="!check" # No testsuite
-source="
- $pkgname-$pkgver.tar.gz::https://github.com/stephenjsweeney/waterCloset/archive/v$pkgver.tar.gz
- 0001-remove-debug-flags-and-werror.patch
- "
-builddir="$srcdir/waterCloset-$pkgver"
-
-build() {
- # This game does not run with -Os optimizations
- unset CXXFLAGS;
- CFLAGS="$CFLAGS -O3"
-
- make DATA_DIR=/usr/share/waterCloset
-}
-
-package() {
- make install \
- DESTDIR="$pkgdir" \
- PREFIX=/usr \
- DATA_DIR=/usr/share/waterCloset
-}
-
-data() {
- pkgdesc="$pkgdesc (data files)"
- mkdir -p "$subpkgdir"/usr/share/waterCloset
- mv "$pkgdir"/usr/share/waterCloset/data \
- "$subpkgdir"/usr/share/waterCloset
-}
-
-sha512sums="
-63f55ea0f05c230dcdc971c3b65247650d360eae5cd255dca097b84a534563b5f9f46ed23279fbe23102c9ae1615084c3e82ce3c6d9a26576b070fff1e37fca9 watercloset-1.0.tar.gz
-04feaa487c3a4d2e3e3602403a350127bd2ae8a7301505b2bdedee6f5bfc1fc38cad14ba619c77bf12dc224cecd9dcf54d2741b3c75bd9d290cf745b63e67c4f 0001-remove-debug-flags-and-werror.patch
-"
diff --git a/testing/watershot/APKBUILD b/testing/watershot/APKBUILD
new file mode 100644
index 00000000000..f1b2fd77085
--- /dev/null
+++ b/testing/watershot/APKBUILD
@@ -0,0 +1,47 @@
+# Contributor: Jakub Jirutka <jakub@jirutka.cz>
+# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
+pkgname=watershot
+pkgver=0.2.0
+pkgrel=0
+pkgdesc="A simple wayland native screenshot tool"
+url="https://github.com/Kirottu/watershot"
+# s390x: no desktop on this arch
+arch="all !s390x"
+license="GPL-3.0-only"
+depends="grim"
+makedepends="
+ cargo
+ cargo-auditable
+ fontconfig-dev
+ libxkbcommon-dev
+ wayland-dev
+ "
+source="https://github.com/Kirottu/watershot/archive/v$pkgver/watershot-$pkgver.tar.gz
+ cargo-features.patch
+ "
+options="!check" # no tests provided
+
+export CARGO_PROFILE_RELEASE_OPT_LEVEL="z"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -D -m755 target/release/$pkgname -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+8997eaf8277c5abc166b064999d3ba7ddfe88b10536aea07cd91a7fc9e3720490fc6343b6b091d1c9e09d5f3de7b9251f01f926a4ad43600681527320bba4209 watershot-0.2.0.tar.gz
+a5b1c7b86970a056894fdb2e9cd174227982764b50fbd96a2765a2d3a1bd729593bee5ac2487dbbc94f247a76bceea17b6bf585c5bc0d734d3e978c8389103c0 cargo-features.patch
+"
diff --git a/testing/watershot/cargo-features.patch b/testing/watershot/cargo-features.patch
new file mode 100644
index 00000000000..f72a5bf28be
--- /dev/null
+++ b/testing/watershot/cargo-features.patch
@@ -0,0 +1,364 @@
+Patch-Source: https://github.com/Kirottu/watershot/pull/15
+--
+diff --git a/Cargo.lock b/Cargo.lock
+index bef75e4..dd3d142 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -44,15 +44,6 @@ dependencies = [
+ "version_check",
+ ]
+
+-[[package]]
+-name = "aho-corasick"
+-version = "0.7.20"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "cc936419f96fa211c1b9166887b38e5e40b19958e5b895be7c1f93adec7071ac"
+-dependencies = [
+- "memchr",
+-]
+-
+ [[package]]
+ name = "android_system_properties"
+ version = "0.1.5"
+@@ -128,12 +119,6 @@ version = "0.6.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb"
+
+-[[package]]
+-name = "bit_field"
+-version = "0.10.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "dcb6dd1c2376d2e096796e234a70e17e94cc2d5d54ff8ce42b28cef1d0d359a4"
+-
+ [[package]]
+ name = "bitflags"
+ version = "1.3.2"
+@@ -377,12 +362,6 @@ dependencies = [
+ "cfg-if",
+ ]
+
+-[[package]]
+-name = "crunchy"
+-version = "0.2.2"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7"
+-
+ [[package]]
+ name = "cxx"
+ version = "1.0.87"
+@@ -476,10 +455,8 @@ version = "0.10.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "85cdab6a89accf66733ad5a1693a4dcced6aeff64602b634530dd73c1f3ee9f0"
+ dependencies = [
+- "humantime",
+ "is-terminal",
+ "log",
+- "regex",
+ "termcolor",
+ ]
+
+@@ -504,21 +481,6 @@ dependencies = [
+ "libc",
+ ]
+
+-[[package]]
+-name = "exr"
+-version = "1.5.2"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "8eb5f255b5980bb0c8cf676b675d1a99be40f316881444f44e0462eaf5df5ded"
+-dependencies = [
+- "bit_field",
+- "flume",
+- "half",
+- "lebe",
+- "miniz_oxide",
+- "smallvec",
+- "threadpool",
+-]
+-
+ [[package]]
+ name = "fastrand"
+ version = "1.8.0"
+@@ -544,19 +506,6 @@ dependencies = [
+ "miniz_oxide",
+ ]
+
+-[[package]]
+-name = "flume"
+-version = "0.10.14"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "1657b4441c3403d9f7b3409e47575237dac27b1b5726df654a6ecbf92f0f7577"
+-dependencies = [
+- "futures-core",
+- "futures-sink",
+- "nanorand",
+- "pin-project",
+- "spin",
+-]
+-
+ [[package]]
+ name = "fnv"
+ version = "1.0.7"
+@@ -587,18 +536,6 @@ version = "0.1.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
+
+-[[package]]
+-name = "futures-core"
+-version = "0.3.25"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "04909a7a7e4633ae6c4a9ab280aeb86da1236243a77b694a49eacd659a4bd3ac"
+-
+-[[package]]
+-name = "futures-sink"
+-version = "0.3.25"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "39c15cf1a4aa79df40f1bb462fb39676d0ad9e366c2a33b590d7c66f4f81fcf9"
+-
+ [[package]]
+ name = "getrandom"
+ version = "0.2.8"
+@@ -606,20 +543,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "c05aeb6a22b8f62540c194aac980f2115af067bfe15a0734d7277a768d396b31"
+ dependencies = [
+ "cfg-if",
+- "js-sys",
+ "libc",
+ "wasi 0.11.0+wasi-snapshot-preview1",
+- "wasm-bindgen",
+-]
+-
+-[[package]]
+-name = "gif"
+-version = "0.11.4"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "3edd93c6756b4dfaf2709eafcc345ba2636565295c198a9cfbf75fa5e3e00b06"
+-dependencies = [
+- "color_quant",
+- "weezl",
+ ]
+
+ [[package]]
+@@ -730,15 +655,6 @@ dependencies = [
+ "bitflags 1.3.2",
+ ]
+
+-[[package]]
+-name = "half"
+-version = "2.1.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "ad6a9459c9c30b177b925162351f97e7d967c7ea8bab3b8352805327daf45554"
+-dependencies = [
+- "crunchy",
+-]
+-
+ [[package]]
+ name = "hashbrown"
+ version = "0.12.3"
+@@ -793,12 +709,6 @@ version = "0.2.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "dfa686283ad6dd069f105e5ab091b04c62850d3e4cf5d67debad1933f55023df"
+
+-[[package]]
+-name = "humantime"
+-version = "2.1.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4"
+-
+ [[package]]
+ name = "iana-time-zone"
+ version = "0.1.53"
+@@ -832,14 +742,10 @@ dependencies = [
+ "bytemuck",
+ "byteorder",
+ "color_quant",
+- "exr",
+- "gif",
+ "jpeg-decoder",
+ "num-rational",
+ "num-traits",
+ "png",
+- "scoped_threadpool",
+- "tiff",
+ "webp",
+ ]
+
+@@ -928,12 +834,6 @@ version = "1.4.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
+
+-[[package]]
+-name = "lebe"
+-version = "0.5.2"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "03087c2bad5e1034e8cace5926dec053fb3790248370865f5117a7d0213354c8"
+-
+ [[package]]
+ name = "libc"
+ version = "0.2.138"
+@@ -1097,15 +997,6 @@ dependencies = [
+ "unicode-xid",
+ ]
+
+-[[package]]
+-name = "nanorand"
+-version = "0.7.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "6a51313c5820b0b02bd422f4b44776fbf47961755c74ce64afc73bfad10226c3"
+-dependencies = [
+- "getrandom",
+-]
+-
+ [[package]]
+ name = "nix"
+ version = "0.24.3"
+@@ -1295,26 +1186,6 @@ dependencies = [
+ "indexmap",
+ ]
+
+-[[package]]
+-name = "pin-project"
+-version = "1.0.12"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "ad29a609b6bcd67fee905812e544992d216af9d755757c05ed2d0e15a74c6ecc"
+-dependencies = [
+- "pin-project-internal",
+-]
+-
+-[[package]]
+-name = "pin-project-internal"
+-version = "1.0.12"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "069bdb1e05adc7a8990dce9cc75370895fbe4e3d58b9b73bf1aee56359344a55"
+-dependencies = [
+- "proc-macro2",
+- "quote",
+- "syn 1.0.107",
+-]
+-
+ [[package]]
+ name = "pkg-config"
+ version = "0.3.26"
+@@ -1484,23 +1355,6 @@ dependencies = [
+ "bitflags 1.3.2",
+ ]
+
+-[[package]]
+-name = "regex"
+-version = "1.7.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "48aaa5748ba571fb95cd2c85c09f629215d3a6ece942baa100950af03a34f733"
+-dependencies = [
+- "aho-corasick",
+- "memchr",
+- "regex-syntax",
+-]
+-
+-[[package]]
+-name = "regex-syntax"
+-version = "0.6.28"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "456c603be3e8d448b072f410900c09faf164fbce2d480456f50eea6e25f9c848"
+-
+ [[package]]
+ name = "remove_dir_all"
+ version = "0.5.3"
+@@ -1559,12 +1413,6 @@ version = "1.0.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294"
+
+-[[package]]
+-name = "scoped_threadpool"
+-version = "0.1.9"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "1d51f5df5af43ab3f1360b429fa5e0152ac5ce8c0bd6485cae490332e96846a8"
+-
+ [[package]]
+ name = "scopeguard"
+ version = "1.1.0"
+@@ -1636,15 +1484,6 @@ dependencies = [
+ "xkbcommon",
+ ]
+
+-[[package]]
+-name = "spin"
+-version = "0.9.4"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "7f6002a767bff9e83f8eeecf883ecb8011875a21ae8da43bffb817a57e78cc09"
+-dependencies = [
+- "lock_api",
+-]
+-
+ [[package]]
+ name = "spirv"
+ version = "0.2.0+1.5.4"
+@@ -1732,26 +1571,6 @@ dependencies = [
+ "syn 1.0.107",
+ ]
+
+-[[package]]
+-name = "threadpool"
+-version = "1.8.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "d050e60b33d41c19108b32cea32164033a9013fe3b46cbd4457559bfbf77afaa"
+-dependencies = [
+- "num_cpus",
+-]
+-
+-[[package]]
+-name = "tiff"
+-version = "0.8.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "7449334f9ff2baf290d55d73983a7d6fa15e01198faef72af07e2a8db851e471"
+-dependencies = [
+- "flate2",
+- "jpeg-decoder",
+- "weezl",
+-]
+-
+ [[package]]
+ name = "time"
+ version = "0.1.45"
+@@ -2090,12 +1909,6 @@ dependencies = [
+ "libwebp-sys",
+ ]
+
+-[[package]]
+-name = "weezl"
+-version = "0.1.7"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "9193164d4de03a926d909d3bc7c30543cecb35400c02114792c2cae20d5e2dbb"
+-
+ [[package]]
+ name = "wgpu"
+ version = "0.16.1"
+diff --git a/Cargo.toml b/Cargo.toml
+index a73b6a2..03dab10 100644
+--- a/Cargo.toml
++++ b/Cargo.toml
+@@ -6,11 +6,15 @@ edition = "2021"
+
+ # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
+
++[features]
++default = ["webp"]
++webp = ["image/webp-encoder"]
++
+ [dependencies]
+ smithay-client-toolkit = "0.17.0"
+ wayland-backend = { version = "0.1.2", features = ["client_system"] }
+ wayland-client = { version = "0.30.2", features = ["calloop"] }
+-image = { version = "0.24.5", features = ["webp-encoder"] }
++image = { version = "0.24.5", default-features = false, features = ["farbfeld", "jpeg", "jpeg_rayon", "png"] }
+ ron = "0.8.0"
+ serde = { version = "1.0.152", features = ["derive"] }
+ fontconfig = "0.6.0"
+@@ -18,7 +22,7 @@ wl-clipboard-rs = "0.7.0"
+ nix = { version = "0.26.1", default-features = false, features = ["process"] }
+ clap = { version = "4.0.32", features = ["derive"] }
+ chrono = "0.4.23"
+-env_logger = "0.10.0"
++env_logger = { version = "0.10.0", default-features = false, features = ["auto-color"] }
+ log = "0.4.17"
+ wgpu = "0.16.1"
+ raw-window-handle = "0.5.2"
diff --git a/testing/way-displays/APKBUILD b/testing/way-displays/APKBUILD
index f3d4d4050b2..90020d7bc7b 100644
--- a/testing/way-displays/APKBUILD
+++ b/testing/way-displays/APKBUILD
@@ -1,17 +1,17 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer:
pkgname=way-displays
-pkgver=1.5.2
-pkgrel=0
+pkgver=1.8.1
+pkgrel=2
pkgdesc="Auto Manage Your Wayland Displays"
url="https://github.com/alex-courtis/way-displays"
arch="all"
license="MIT"
makedepends="
+ eudev-dev
libinput-dev
wayland-dev
wayland-protocols
- wlroots-dev
yaml-cpp-dev
"
subpackages="$pkgname-doc"
@@ -27,5 +27,5 @@ package() {
}
sha512sums="
-deccda61e13d63d803a4d1c2d880a078dced67735004b85de66b825d3bb4daab3a6ccd9a94ef22875c693eb61a3da39fb2812c71f0ab81c4f6dd909d91811edd way-displays-1.5.2.tar.gz
+e93f71f98cc3294b1973ca0c99ef72d284d882d37242128552416560990e055dc9fd77203934b8a3f1f0c034c24041728d0131d53eafe073066440896bcd3af9 way-displays-1.8.1.tar.gz
"
diff --git a/testing/wayfire-plugins-extra/APKBUILD b/testing/wayfire-plugins-extra/APKBUILD
new file mode 100644
index 00000000000..f0c771b299e
--- /dev/null
+++ b/testing/wayfire-plugins-extra/APKBUILD
@@ -0,0 +1,33 @@
+# Maintainer: Maarten van Gompel <proycon@anaproy.nl>
+pkgname=wayfire-plugins-extra
+pkgver=0.8.1
+pkgrel=0
+pkgdesc="Additional plugins for Wayfire"
+url="https://wayfire.org"
+arch="all"
+license="MIT"
+makedepends="
+ meson
+ wayfire-dev
+ wlroots-dev
+ glibmm-dev
+ libevdev-dev
+ nlohmann-json
+ wayland-protocols
+ wayland-dev
+ "
+options="!check" # no testsuite
+source="https://github.com/WayfireWM/wayfire-plugins-extra/releases/download/v$pkgver/wayfire-plugins-extra-$pkgver.tar.xz"
+
+build() {
+ abuild-meson . output
+ meson compile -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+sha512sums="
+ebe12545b0a0ca1c443f334b9bfa31d1f446636dbef2b91c280715ad58d8802ab129f6894959727c0b872558f799c973a158e679683f915a5ef89b67087eed01 wayfire-plugins-extra-0.8.1.tar.xz
+"
diff --git a/testing/wayfire/APKBUILD b/testing/wayfire/APKBUILD
index d265d3b7821..850bc345666 100644
--- a/testing/wayfire/APKBUILD
+++ b/testing/wayfire/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Danct12 <danct12@disroot.org>
# Maintainer: Danct12 <danct12@disroot.org>
pkgname=wayfire
-pkgver=0.7.3
+pkgver=0.8.1
pkgrel=0
pkgdesc="Compiz-clone Wayland compositor"
url="https://wayfire.org"
@@ -14,21 +14,21 @@ makedepends="
glm-dev
wf-config-dev
cairo-dev
- libexecinfo-dev
libxml2-dev
wayland-protocols
pango-dev
+ nlohmann-json
"
-options="!check" # no testsuite
-subpackages="$pkgname-dev"
+subpackages="$pkgname-dev $pkgname-doc"
source="https://github.com/WayfireWM/wayfire/releases/download/v$pkgver/wayfire-$pkgver.tar.xz"
+options="!check" # no testsuite
build() {
abuild-meson \
-Duse_system_wlroots=enabled \
-Duse_system_wfconfig=enabled \
. output
- meson compile ${JOBS:+--j ${JOBS}} -C output
+ meson compile -C output
}
package() {
@@ -39,5 +39,5 @@ package() {
}
sha512sums="
-7bb5b8492a632a9816e847ec72def74dc234bcc30da7c320a0cd3b1d60492f5521ad8ac76a12ef967d1b114bcde9be72eb8ffc618977aed8e198d4ace1e7056e wayfire-0.7.3.tar.xz
+7bce5656b6a7a7fe53b37492465dee3e591eb386666fdd3d6876f4a589f059510fb2d0c0a326df260ca6a293edf4ba43bb55f813e85d4d2d38d6ef1319280254 wayfire-0.8.1.tar.xz
"
diff --git a/testing/wayfire/wayfire.post-install b/testing/wayfire/wayfire.post-install
index 78f40b35edf..d71470fe486 100644
--- a/testing/wayfire/wayfire.post-install
+++ b/testing/wayfire/wayfire.post-install
@@ -1,5 +1,9 @@
#!/bin/sh
-echo -e "\nPlease copy the default config file from /usr/share/wayfire/wayfire.ini.default"
-echo -e "to ~/.config/wayfire.ini\n"
-echo -e "You can install wcm package to config Wayfire.\n"
+cat >&2 <<EOF
+*
+* Please copy the default config file from /usr/share/wayfire/wayfire.ini.default
+* to ~/.config/wayfire.ini
+* You can install wcm package to config Wayfire.
+*
+EOF
diff --git a/testing/wayland-utils/APKBUILD b/testing/wayland-utils/APKBUILD
deleted file mode 100644
index b0572e7110b..00000000000
--- a/testing/wayland-utils/APKBUILD
+++ /dev/null
@@ -1,24 +0,0 @@
-# Maintainer: Simon Zeni <simon@bl4ckb0ne.ca>
-pkgname=wayland-utils
-pkgver=1.0.0
-pkgrel=0
-pkgdesc="Wayland utils tools"
-url="https://wayland.freedesktop.org"
-arch="all"
-license="MIT"
-options="!check" # contains no test suite
-makedepends="wayland-dev wayland-protocols meson"
-subpackages="$pkgname-doc"
-source="https://wayland.freedesktop.org/releases/wayland-utils-$pkgver.tar.xz"
-
-build() {
- abuild-meson . build
- meson compile ${JOBS:+-j ${JOBS}} -C build
-}
-
-package() {
- DESTDIR="$pkgdir" meson install --no-rebuild -C build
-}
-sha512sums="
-4c6f1822435b36b3acd361c0c54e56150e8a2697a9c4b2c20a149fcfaafe237e45807df3471884ddf594d89558001099e2d938e3f48988ba6950a0f1e3538db2 wayland-utils-1.0.0.tar.xz
-"
diff --git a/testing/waylevel/APKBUILD b/testing/waylevel/APKBUILD
new file mode 100644
index 00000000000..3ff571f9eed
--- /dev/null
+++ b/testing/waylevel/APKBUILD
@@ -0,0 +1,42 @@
+# Contributor: Jakub Jirutka <jakub@jirutka.cz>
+# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
+pkgname=waylevel
+pkgver=1.0.0
+pkgrel=1
+pkgdesc="A tool to print Wayland toplevels status and info"
+url="https://git.sr.ht/~shinyzenith/waylevel"
+# s390x: nix crate fails to build
+# riscv64: rust broken
+arch="all !s390x !riscv64"
+license="BSD-2-Clause"
+depends="wayland-libs-client"
+makedepends="
+ cargo
+ cargo-auditable
+ wayland-dev
+ "
+source="$pkgname-$pkgver.tar.gz::https://git.sr.ht/~shinyzenith/waylevel/archive/$pkgver.tar.gz"
+
+export CARGO_PROFILE_RELEASE_OPT_LEVEL="z"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -D -m755 target/release/$pkgname -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+3bf9064c7c76fe0c034542a130ae8f016d6bca56ca89f8ed39a5358ad76f1bc3fb43fb64f762a0040755ddbe90604167088237dc09e2f7eca1d0139b180a87b2 waylevel-1.0.0.tar.gz
+"
diff --git a/testing/waylock/APKBUILD b/testing/waylock/APKBUILD
index f951636efee..8ec016c3be8 100644
--- a/testing/waylock/APKBUILD
+++ b/testing/waylock/APKBUILD
@@ -1,44 +1,43 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=waylock
-pkgver=0.3.5
+pkgver=0.6.5
pkgrel=0
-pkgdesc="A simple screenlocker for wayland compositors"
-url="https://github.com/ifreund/waylock"
-arch="aarch64 armhf armv7 ppc64le x86 x86_64" # limited by rust/cargo
-license="MIT"
-makedepends="cargo libxkbcommon-dev linux-pam-dev"
+pkgdesc="A small screenlocker for Wayland compositors"
+url="https://codeberg.org/ifreund/waylock"
+arch="aarch64 x86_64" # blocked by zig
+license="ISC"
+makedepends="
+ libxkbcommon-dev
+ linux-pam-dev
+ scdoc
+ wayland-dev
+ wayland-protocols
+ zig
+ "
subpackages="$pkgname-doc"
-source="https://github.com/ifreund/waylock/archive/v$pkgver/waylock-$pkgver.tar.gz"
-
-prepare() {
- default_prepare
-
- # Reduce binary for size.
- cat >> Cargo.toml <<-EOF
-
- [profile.release]
- codegen-units = 1
- lto = true
- opt-level = "z"
- EOF
-}
+source="https://codeberg.org/ifreund/waylock/releases/download/v$pkgver/waylock-$pkgver.tar.gz
+ fix-version-string.patch
+ pam-base-auth.patch
+ "
build() {
- cargo build --release --locked
-}
-
-check() {
- cargo test --release --locked
+ DESTDIR='.dest' zig build \
+ --prefix /usr \
+ -Doptimize=ReleaseSafe \
+ -Dcpu=baseline \
+ -Dpie=true \
+ -Dman-pages=true \
+ --prefix /usr install
}
package() {
- cargo install --locked --path . --root="$pkgdir/usr"
- rm "$pkgdir"/usr/.crates*
-
- install -D -m644 waylock.toml -t "$pkgdir"/usr/share/doc/$pkgname/
+ mkdir -p "$pkgdir"
+ cp -r .dest/* "$pkgdir"/
}
sha512sums="
-afc5f8ae0c44ec249bf365fad5f6e449415ee86c7aa72ddbd11ac68b7d204e4fd46c07362fc6524f72afab975df91704504080c3a1c733822d53ca91a8a642cd waylock-0.3.5.tar.gz
+1a158205c12c51946178ede06eded9f54aff03aefdb5c3e306b1570ef786a611405cfcb96bafb4bd29a82016077fce0630c406d56431ad7dc5cbfb9a5696b589 waylock-0.6.5.tar.gz
+c1782ce8f6e2a2eab4bc5cdfdba22e0e9b14e89c319737bd0c331a9b8c4b09cc9debafa33c6936631f6db14331ebecf0d327dc05d8c8a77a36ef45de35639750 fix-version-string.patch
+e3f5aa479908babbeea2febecdf7c57a5cf6b9153c4cd63731721cdf6d50bd0417077b37effec1520064918a422c4313d24ee9c2b2a77c328be931ffbeb03161 pam-base-auth.patch
"
diff --git a/testing/waylock/fix-version-string.patch b/testing/waylock/fix-version-string.patch
new file mode 100644
index 00000000000..d2d345f3fce
--- /dev/null
+++ b/testing/waylock/fix-version-string.patch
@@ -0,0 +1,15 @@
+This is a bug with the waylock 0.6.5 release tarball. The Git tag for 0.6.5
+does not have this problem. This patch can be removed on the next release.
+
+diff -upr waylock-0.6.5.orig/build.zig waylock-0.6.5/build.zig
+--- waylock-0.6.5.orig/build.zig 2024-03-03 10:47:47.439903112 +0100
++++ waylock-0.6.5/build.zig 2024-03-03 10:47:55.963263085 +0100
+@@ -10,7 +10,7 @@ const Scanner = @import("deps/zig-waylan
+ /// development with the "-dev" suffix.
+ /// When a release is tagged, the "-dev" suffix should be removed for the commit that gets tagged.
+ /// Directly after the tagged commit, the version should be bumped and the "-dev" suffix added.
+-const version = "0.6.6-dev";
++const version = "0.6.5";
+
+ pub fn build(b: *Build) !void {
+ const target = b.standardTargetOptions(.{});
diff --git a/testing/waylock/pam-base-auth.patch b/testing/waylock/pam-base-auth.patch
new file mode 100644
index 00000000000..6df43826f15
--- /dev/null
+++ b/testing/waylock/pam-base-auth.patch
@@ -0,0 +1,7 @@
+We don't have system-auth, but base-auth.
+
+--- a/pam.d/waylock
++++ b/pam.d/waylock
+@@ -1 +1 @@
+-auth include system-auth
++auth include base-auth
diff --git a/testing/waynergy/APKBUILD b/testing/waynergy/APKBUILD
index 193ca63ba55..a9dcac09041 100644
--- a/testing/waynergy/APKBUILD
+++ b/testing/waynergy/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer:
pkgname=waynergy
-pkgver=0.0.10
-pkgrel=1
+pkgver=0.0.16
+pkgrel=0
pkgdesc="A synergy client for Wayland compositors"
url="https://github.com/r-c-f/waynergy"
arch="all"
@@ -18,12 +18,12 @@ source="https://github.com/r-c-f/waynergy/archive/v$pkgver/waynergy-$pkgver.tar.
options="!check" # no tests defined
build() {
- abuild-meson . output
- meson compile -j ${JOBS:-0} -C output
+ abuild-meson -Db_lto=true . output
+ meson compile -C output
}
check() {
- meson test --no-rebuild -v -C output
+ meson test --no-rebuild --print-errorlogs -C output
}
package() {
@@ -31,5 +31,5 @@ package() {
}
sha512sums="
-664f17280b5d3da31fd20de99adaffa61cd34dfc058a1d562643e6c5b76a32180daa454f4f4f60536f766101a6961d5a966d15aa846148151a3d6455637ecf56 waynergy-0.0.10.tar.gz
+00b1e47da70960120baba0e195ea4806254bf1ab73261340d1d9947681b5590eb3a6dd4bc82af724dbe03c777e9986fbfdb91e0054acd77f3b4b2d76a40942c3 waynergy-0.0.16.tar.gz
"
diff --git a/testing/wayqt/APKBUILD b/testing/wayqt/APKBUILD
new file mode 100644
index 00000000000..a76904a01e1
--- /dev/null
+++ b/testing/wayqt/APKBUILD
@@ -0,0 +1,35 @@
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=wayqt
+pkgver=0.2.0
+pkgrel=0
+pkgdesc="Qt-based wrapper for various wayland protocols"
+url="https://gitlab.com/desktop-frameworks/wayqt"
+# armhf: blocked by wayqt
+arch="all !armhf"
+license="MIT"
+makedepends="
+ meson
+ qt5-qtbase-dev
+ qt5-qtwayland-dev
+ wayland-protocols
+ wlroots0.16-dev
+"
+subpackages="$pkgname-dev"
+source="https://gitlab.com/desktop-frameworks/wayqt/-/archive/v$pkgver/wayqt-v$pkgver.tar.gz"
+builddir="$srcdir/wayqt-v$pkgver"
+options="!check" # no test suite
+
+build() {
+ abuild-meson \
+ -Duse_qt_version=qt5 \
+ output
+ meson compile -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+sha512sums="
+885e8da87fa09957a3def467a499d7b6db4202a5102695ee54cd03ecefc74aaba342a1801b7b6b7c30074bd6e089f1148098069182489c88bc0cc025d3708e31 wayqt-v0.2.0.tar.gz
+"
diff --git a/testing/wazero/APKBUILD b/testing/wazero/APKBUILD
new file mode 100644
index 00000000000..a9ae1ac12bb
--- /dev/null
+++ b/testing/wazero/APKBUILD
@@ -0,0 +1,39 @@
+# Maintainer: Jason Staten <code.alpine@jxs.me>
+pkgname=wazero
+pkgver=1.6.0
+pkgrel=2
+pkgdesc="WebAssembly Core Specification 1.0 and 2.0 compliant runtime"
+url="https://wazero.io"
+# Tests fail on 32-bit and ppc64le architectures
+arch="x86_64 aarch64"
+license="Apache-2.0"
+makedepends="go"
+source="$pkgname-$pkgver.tar.gz::https://github.com/tetratelabs/wazero/archive/refs/tags/v$pkgver.tar.gz
+ debug-test-path.patch
+ "
+
+build() {
+ go build \
+ -ldflags "-X github.com/tetratelabs/wazero/internal/version.version=$pkgver" \
+ ./cmd/wazero
+}
+
+check() {
+ # gojs/goos -buildmode=pie not supported on js/wasm
+ export GOFLAGS="${GOFLAGS/-buildmode=pie}"
+ # integration_test/vs/compiler requires real paths for relative read
+ export GOFLAGS="${GOFLAGS/-trimpath}"
+
+ # Test_crypto is failing on Go 1.22, and gojs will be removed in
+ # wazero 1.7.0: https://github.com/tetratelabs/wazero/pull/2027
+ go test -skip Test_crypto github.com/tetratelabs/wazero/internal/...
+}
+
+package() {
+ install -Dm755 wazero -t "$pkgdir"/usr/bin
+}
+
+sha512sums="
+12b86ceda21c382ab4e4e071a2a8972556df41f580b2e24d383150907d9840cfbb471d823709a1f520dd20066095c06409bc83f6bd45c3315fa9fc9fac7b2efb wazero-1.6.0.tar.gz
+289e501d3604c7b4a2907d6b93c7ee93751c3d8dfe0565ec1bf9d275734cd973d03713056405d0adaa7a762a5748f47664fd24b900540ff5b9383fe54a72ac88 debug-test-path.patch
+"
diff --git a/testing/wazero/debug-test-path.patch b/testing/wazero/debug-test-path.patch
new file mode 100644
index 00000000000..324291a24a8
--- /dev/null
+++ b/testing/wazero/debug-test-path.patch
@@ -0,0 +1,14 @@
+diff --git a/debug_test.go b/debug_test.go
+index 1747423..26921d5 100644
+--- a/internal/wasmdebug/debug_test.go
++++ b/internal/wasmdebug/debug_test.go
+@@ -144,7 +144,7 @@ wasm stack trace:
+ x.y()`)
+ require.Contains(t, errStr, "Go runtime stack trace:")
+ require.Contains(t, errStr, "goroutine ")
+- require.Contains(t, errStr, "wazero/internal/wasmdebug/debug_test.go")
++ require.Contains(t, errStr, "internal/wasmdebug/debug_test.go")
+ }
+
+ // compile-time check to ensure testRuntimeErr implements runtime.Error.
+
diff --git a/testing/wbg/APKBUILD b/testing/wbg/APKBUILD
new file mode 100644
index 00000000000..c1a54e6594c
--- /dev/null
+++ b/testing/wbg/APKBUILD
@@ -0,0 +1,34 @@
+# Contributor: Dmitry Zakharchenko <dmitz@disroot.org>
+# Maintainer: Dmitry Zakharchenko <dmitz@disroot.org>
+pkgname=wbg
+pkgver=1.1.0
+pkgrel=0
+pkgdesc="Simple wallpaper application for Wayland compositors"
+url="https://codeberg.org/dnkl/wbg"
+arch="all"
+license="MIT"
+makedepends="meson
+ libjpeg-turbo-dev
+ libpng-dev
+ pixman-dev
+ tllist-dev
+ wayland-dev
+ wayland-protocols
+ "
+options="!check" # no test suite
+source="$pkgname-$pkgver.tar.gz::https://codeberg.org/dnkl/wbg/archive/$pkgver.tar.gz"
+builddir="$srcdir/$pkgname"
+
+build() {
+ abuild-meson \
+ . output
+ meson compile -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+sha512sums="
+78384b85074cb1803b47ec16e843c5de4b17a824a3826398902d18dcdd50d5b678cad8eba599e6e17a8ab60f795993c0f2bf2a4fa275f2a90effdfc0d1685175 wbg-1.1.0.tar.gz
+"
diff --git a/testing/wch-isp/APKBUILD b/testing/wch-isp/APKBUILD
new file mode 100644
index 00000000000..86839a36300
--- /dev/null
+++ b/testing/wch-isp/APKBUILD
@@ -0,0 +1,30 @@
+# Contributor: Jules Maselbas <jmaselbas@zdiv.net>
+# Maintainer: Jules Maselbas <jmaselbas@zdiv.net>
+pkgname=wch-isp
+pkgver=0.4.1
+pkgrel=1
+pkgdesc="Firmware programmer for WCH microcontrollers over USB"
+url="https://sr.ht/~jmaselbas/wch-isp"
+arch="all"
+license="GPL-2.0-only"
+makedepends="libusb-dev pkgconf"
+subpackages="$pkgname-doc $pkgname-udev-rules:udev_rules:noarch"
+options="!check" # no tests
+source="https://pub.zdiv.net/dist/wch-isp-$pkgver.tar.gz"
+
+build() {
+ make all
+}
+
+package() {
+ make DESTDIR="$pkgdir" PREFIX=/usr UDEVPREFIX=/lib/udev install install-rules
+}
+
+udev_rules() {
+ pkgdesc="udev rules for $pkgname"
+ amove lib/udev/rules.d/50-wchisp.rules
+}
+
+sha512sums="
+a2cd8806a7e5d02eae7641279e68f4b6d130c86476e8c3259199b294815c00208059f43060aa8b93eeafaf9adbd9ef71e7e3b4f39389104813f95c87fd86e9ad wch-isp-0.4.1.tar.gz
+"
diff --git a/testing/wcm/APKBUILD b/testing/wcm/APKBUILD
index f61fa0666c5..005151628ac 100644
--- a/testing/wcm/APKBUILD
+++ b/testing/wcm/APKBUILD
@@ -1,23 +1,25 @@
# Contributor: Danct12 <danct12@disroot.org>
# Maintainer: Danct12 <danct12@disroot.org>
pkgname=wcm
-pkgver=0.7.0
+pkgver=0.8.0
pkgrel=0
pkgdesc="Wayfire Config Manager"
url="https://wayfire.org"
arch="all"
license="MIT"
-makedepends="wf-config-dev meson libxml++-dev gtk+3.0-dev wayfire-dev"
+makedepends="wf-config-dev meson libxml2-dev gtkmm3-dev wayfire-dev"
options="!check" # no testsuite
source="https://github.com/WayfireWM/wcm/releases/download/v$pkgver/wcm-$pkgver.tar.xz"
build() {
abuild-meson build
- meson compile ${JOBS:+-j ${JOBS}} -C build
+ meson compile -C build
}
package() {
DESTDIR="$pkgdir" meson install --no-rebuild -C build
}
-sha512sums="190d8befafac69c27d99d10113160a1806a9dbd83f740216dd38e9cbe3c2638817b3471c9f46b60642e91abe02fbb72458b61f07bda9cd5fc5dbc7cdf880c6bb wcm-0.7.0.tar.xz"
+sha512sums="
+43d863cfd44dc10874f6ac0c511cd07d84721c53955315fb6eed54ba5f6ac9ebcdcf19e515639deafb333d8e45d95ce8e5222ce1d3344fc7d72f09b018bf517e wcm-0.8.0.tar.xz
+"
diff --git a/testing/wcslib/APKBUILD b/testing/wcslib/APKBUILD
new file mode 100644
index 00000000000..dfa5c61a82c
--- /dev/null
+++ b/testing/wcslib/APKBUILD
@@ -0,0 +1,37 @@
+# Contributor: Clayton Craft <clayton@craftyguy.net>
+# Maintainer: Clayton Craft <clayton@craftyguy.net>
+pkgname=wcslib
+pkgver=8.2.2
+pkgrel=0
+pkgdesc="implementation of the FITS WCS standard"
+url="https://www.atnf.csiro.au/people/mcalabre/WCS/wcslib/"
+arch="all"
+license="LGPL-3.0-or-later"
+makedepends="
+ cfitsio-dev
+"
+subpackages="$pkgname-dev $pkgname-doc"
+source="ftp://ftp.atnf.csiro.au/pub/software/wcslib/wcslib-$pkgver.tar.bz2"
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+cf540fdac03d2868902c9d4c2f1cd5919e878e79de635b01006b61f4d95f727659033d0d05172a7bcd00287ecc395609a643cf95a6498fbc3ff2d3fb26c136b4 wcslib-8.2.2.tar.bz2
+"
diff --git a/testing/websockify/APKBUILD b/testing/websockify/APKBUILD
deleted file mode 100644
index c3fd2ceeec8..00000000000
--- a/testing/websockify/APKBUILD
+++ /dev/null
@@ -1,22 +0,0 @@
-# Contributor: Valery Kartel <valery.kartel@gmail.com>
-# Maintainer: Valery Kartel <valery.kartel@gmail.com>
-pkgname=websockify
-pkgver=0.9.0
-pkgrel=4
-pkgdesc="WebSockets support for any application/server"
-url="https://github.com/kanaka/websockify"
-arch="noarch"
-license="LGPL-3.0-or-later"
-depends="python3 py3-numpy"
-makedepends="py3-setuptools"
-source="$pkgname-$pkgver.tar.gz::https://github.com/kanaka/websockify/archive/v$pkgver.tar.gz"
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="d2251f653a40dc6dca0e5541845565d968c60be96a20a9b70b0305c4b7578f7fe205d4b98a94bb77d7c9383a396833af90fe92a6ade7e1a6f2d9bf8513d372c8 websockify-0.9.0.tar.gz"
diff --git a/testing/weex/APKBUILD b/testing/weex/APKBUILD
deleted file mode 100644
index 456db581795..00000000000
--- a/testing/weex/APKBUILD
+++ /dev/null
@@ -1,34 +0,0 @@
-# Contributor: Milan P. Staniić <mps@arvanta.net>
-# Maintainer: Milan P. Stanić <mps@arvanta.net>
-pkgname=weex
-pkgver=2.8.4.1
-pkgrel=1
-pkgdesc="Non-interactive FTP and FTPS client for updating web pages"
-url="http://weex.sourceforge.net/"
-arch="all"
-license="GPL-2.0-or-later"
-makedepends="openssl-dev automake autoconf"
-options="!check" #no tests
-subpackages="$pkgname-doc"
-source="https://deb.debian.org/debian/pool/main/w/weex/weex_$pkgver.tar.gz"
-
-build() {
- export CBUILD=$CHOST
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --disable-dependency-tracking \
- --disable-nls
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-f7ddd0c578a1c01f1853d2ec45f6081ef879dfb0fff88f3867d9ccae11f26d0b2e3e83924af58f131774e64a60d566e53e2c4b705af4a3507965ec0ff0c40b4a weex_2.8.4.1.tar.gz
-"
diff --git a/testing/weggli/APKBUILD b/testing/weggli/APKBUILD
index 5403f8ca8b6..6337128a56a 100644
--- a/testing/weggli/APKBUILD
+++ b/testing/weggli/APKBUILD
@@ -1,28 +1,34 @@
# Contributor: Michał Polański <michal@polanski.me>
# Maintainer: Michał Polański <michal@polanski.me>
pkgname=weggli
-pkgver=0.2.3
-pkgrel=0
+pkgver=0.2.4
+pkgrel=1
pkgdesc="Semantic search tool for C and C++ codebases"
url="https://github.com/googleprojectzero/weggli"
license="Apache-2.0"
arch="all !s390x !riscv64" # blocked by rust/cargo
-makedepends="cargo"
+makedepends="cargo cargo-auditable"
source="https://github.com/googleprojectzero/weggli/archive/v$pkgver/weggli-$pkgver.tar.gz"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
build() {
- cargo build --release --locked
+ cargo auditable build --frozen --release
}
check() {
- cargo test --release --locked
+ cargo test --frozen
}
package() {
- cargo install --locked --path . --root="$pkgdir"/usr
- rm "$pkgdir"/usr/.crates*
+ install -Dm755 target/release/weggli -t "$pkgdir"/usr/bin
}
sha512sums="
-b6c8abf9f9eafc94ec9a5c109bd08bcdc786bc9e18a1e7bd7bff086e9e0a762881001a1fe3806f08e444a1d51a359ed5145b2153e4ebacebfbdecb432a962cb2 weggli-0.2.3.tar.gz
+2473415f60f2834e652d3f6f933bc648e659fca8fef85e82d2cfb87cb039727a38aa32b2eb90ac93cf7d2f11a803daeb73350e85ac1144ed9194757854bc225e weggli-0.2.4.tar.gz
"
diff --git a/testing/welle-io/APKBUILD b/testing/welle-io/APKBUILD
new file mode 100644
index 00000000000..40d5ae84b55
--- /dev/null
+++ b/testing/welle-io/APKBUILD
@@ -0,0 +1,66 @@
+# Contributor: Jakob Meier <comcloudway@ccw.icu>
+# Maintainer: Jakob Meier <comcloudway@ccw.icu>
+pkgname=welle-io
+pkgver=2.4
+pkgrel=4
+pkgdesc="A DAB/DAB+ Software Defined Radio (SDR)"
+url="https://www.welle.io/"
+arch="all"
+license="GPL-2.0-or-later"
+# potentally missing: airspy-dev
+makedepends="
+ cmake
+ faad2-dev
+ fftw-dev
+ lame-dev
+ librtlsdr-dev
+ mpg123-dev
+ qt5-qtbase-dev
+ qt5-qtcharts-dev
+ qt5-qtdeclarative-dev
+ qt5-qtmultimedia-dev
+ qt5-qtquickcontrols2-dev
+ qt5-qttools-dev
+ samurai
+ soapy-sdr-dev
+ alsa-lib-dev
+ "
+subpackages="$pkgname-doc welle-cli:cli"
+source="welle-$pkgver.tar.gz::https://github.com/AlbrechtL/welle.io/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/welle.io-$pkgver"
+
+build() {
+ if [ "$CBUILD" != "$CHOST" ]; then
+ CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ # DCMAKE_EXE_LINKER_FLAGS required,
+ # to prevent segfault when trying to interact with device
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=True \
+ -DCMAKE_BUILD_TYPE=None \
+ -DRTLSDR=ON \
+ -DSOAPYSDR=ON \
+ -DCMAKE_EXE_LINKER_FLAGS=-Wl,-z,stack-size=512000 \
+ $CMAKE_CROSSOPTS
+ cmake --build build
+}
+
+check() {
+ cd build
+ CTEST_OUTPUT_ON_FAILURE=TRUE ctest
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+cli() {
+ pkgdesc="$pkgdesc (cli frontend)"
+ amove usr/bin/welle-cli
+}
+
+sha512sums="
+2d03388ed9e39e400a423ced88616f267da0516f6db9c0391dcc8fb96dc02898fb36ee8dcbabe3024f681a7ba2cc72e478236ce2f19f0fa16ccd769989331927 welle-2.4.tar.gz
+"
diff --git a/testing/wesnoth/APKBUILD b/testing/wesnoth/APKBUILD
deleted file mode 100644
index c05aeb0c762..00000000000
--- a/testing/wesnoth/APKBUILD
+++ /dev/null
@@ -1,52 +0,0 @@
-# Contributor: David Demelier <markand@malikania.fr>
-# Maintainer: David Demelier <markand@malikania.fr>
-pkgname=wesnoth
-pkgver=1.16.2
-_major=${pkgver%.*}
-pkgrel=1
-pkgdesc="turn-based strategy game in fantasy world"
-url="https://www.wesnoth.org"
-arch="all !riscv64" # textrel on rv64
-license="GPL-2.0-only"
-makedepends="
- boost-dev
- cairo-dev
- cmake
- dbus-dev
- fontconfig-dev
- libvorbis-dev
- openssl-dev
- pango-dev
- readline-dev
- samurai
- sdl2-dev
- sdl2_image-dev
- sdl2_mixer-dev
- "
-subpackages="$pkgname-doc"
-source="https://sourceforge.net/projects/wesnoth/files/wesnoth-$_major/wesnoth-$pkgver/wesnoth-$pkgver.tar.bz2
- fix-segfault.patch
- "
-options="!check" # No tests
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build -G Ninja \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- -DCMAKE_BUILD_TYPE=Release \
- $CMAKE_CROSSOPTS
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-
-sha512sums="
-bb1c307981de4990fc341310b358c5e1c54673d7434bc0a0fa0a7b5caf11e6db3255ad0eb57b6b188ff6ab8f287321fc8821813d0ef3661cfa637985070bb540 wesnoth-1.16.2.tar.bz2
-8fc0f43719d0a5b7554a027f4367d5c7459549741b82c3c879385dd5c8e10e96a2064f329090ac2a0a5e853d5591a7ecd0ce650748f597cd81a90fb7d11581ae fix-segfault.patch
-"
diff --git a/testing/wesnoth/fix-segfault.patch b/testing/wesnoth/fix-segfault.patch
deleted file mode 100644
index 5574e899eac..00000000000
--- a/testing/wesnoth/fix-segfault.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/src/recall_list_manager.cpp
-+++ b/src/recall_list_manager.cpp
-@@ -57,7 +57,7 @@
- void recall_list_manager::erase_if_matches_id(const std::string &unit_id)
- {
- recall_list_.erase(std::remove_if(recall_list_.begin(), recall_list_.end(),
-- [&unit_id](const unit_ptr & ptr) { return ptr->id() == unit_id; }),
-+ [unit_id](const unit_ptr & ptr) { return ptr->id() == unit_id; }),
- recall_list_.end());
- }
-
diff --git a/testing/wf-config/APKBUILD b/testing/wf-config/APKBUILD
index 800ae68378d..8a4c7da1a40 100644
--- a/testing/wf-config/APKBUILD
+++ b/testing/wf-config/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Danct12 <danct12@disroot.org>
# Maintainer: Danct12 <danct12@disroot.org>
pkgname=wf-config
-pkgver=0.7.1
+pkgver=0.8.0
pkgrel=0
pkgdesc="Library for managing configuration files written for Wayfire"
url="https://wayfire.org"
@@ -20,7 +20,7 @@ source="https://github.com/WayfireWM/wf-config/releases/download/v$pkgver/wf-con
build() {
abuild-meson . output
- meson compile ${JOBS:+-j ${JOBS}} -C output
+ meson compile -C output
}
package() {
@@ -28,5 +28,5 @@ package() {
}
sha512sums="
-d535a09a3465a54a607df7b8764ee6818ab8b83536d68c85167b282b95a176636e4bf5cda6c0d1638c07721a1f4208203e9d41b83675038fb590a535314df719 wf-config-0.7.1.tar.xz
+79cca2429a39ee81f853043698c57fc08025634926773253cff73fc564dcf203335b4b861d82b60a769bbab7b07be6a7e181c9ea29ad98ce930de20f9723893f wf-config-0.8.0.tar.xz
"
diff --git a/testing/wf-osk/APKBUILD b/testing/wf-osk/APKBUILD
deleted file mode 100644
index a652e72b0a3..00000000000
--- a/testing/wf-osk/APKBUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-# Contributor: Sodface <sod@sodface.com>
-# Maintainer: Sodface <sod@sodface.com>
-pkgname=wf-osk
-pkgver=0_git20200901
-_commit=d2e2e3228913ffa800ca31402820d2d90619279e
-pkgrel=0
-pkgdesc="Basic on-screen keyboard for Wayland"
-url="https://github.com/WayfireWM/wf-osk"
-arch="all"
-license="MIT"
-makedepends="
- meson
- gtkmm3-dev
- gtk-layer-shell-dev
- wayland-protocols
- wayland-libs-client
- "
-options="!check" # no test suite
-source=$pkgname-$_commit.tar.gz::"https://github.com/WayfireWM/wf-osk/archive/$_commit/wf-osk-$_commit.tar.gz"
-builddir="$srcdir/$pkgname-$_commit"
-
-build() {
- abuild-meson . output
- meson compile ${JOBS:+-j ${JOBS}} -C output
-}
-
-package() {
- DESTDIR="$pkgdir" meson install --no-rebuild -C output
-}
-
-sha512sums="
-7164988a54b0ce16be53360b5487272e0f64b878e9ff231e8eaf6b7a3056d47cdcaa89204b3b5cc105e7addbbca80f0fa143b610d3ef472673f254fae45970d0 wf-osk-d2e2e3228913ffa800ca31402820d2d90619279e.tar.gz
-"
diff --git a/testing/wf-shell/APKBUILD b/testing/wf-shell/APKBUILD
new file mode 100644
index 00000000000..6c3b082eff9
--- /dev/null
+++ b/testing/wf-shell/APKBUILD
@@ -0,0 +1,34 @@
+# Maintainer: Maarten van Gompel <proycon@anaproy.nl>
+pkgname=wf-shell
+pkgver=0.8.1
+pkgrel=0
+pkgdesc="A GTK3-based panel for wayfire"
+url="https://wayfire.org"
+arch="all"
+license="MIT"
+install="$pkgname.post-install"
+makedepends="
+ meson
+ wayfire-dev
+ gtk-layer-shell-dev
+ libdbusmenu-gtk3-dev
+ pulseaudio-dev
+ alsa-lib-dev
+ gtkmm3-dev
+ "
+options="!check" # no testsuite
+subpackages="$pkgname-dev $pkgname-doc"
+source="https://github.com/WayfireWM/wf-shell/releases/download/v$pkgver/wf-shell-$pkgver.tar.xz"
+
+build() {
+ abuild-meson -Dpulse=enabled -Dwayland-logout=true . output
+ meson compile -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+sha512sums="
+b0d283dee712ed01bdabb373f8144e6c231aa68669be8851e6603678972d9f2bdcadda773df49510c902f8e8845fdb767f9da65356640fe37843dd92d0c240f2 wf-shell-0.8.1.tar.xz
+"
diff --git a/testing/wf-shell/wf-shell.post-install b/testing/wf-shell/wf-shell.post-install
new file mode 100644
index 00000000000..1eb9a2e56e5
--- /dev/null
+++ b/testing/wf-shell/wf-shell.post-install
@@ -0,0 +1,8 @@
+#!/bin/sh
+
+cat >&2 <<EOF
+*
+* Please copy the default config file from /usr/share/wf-shell/wf-shell.ini.example
+* to ~/.config/wf-shell.ini
+*
+EOF
diff --git a/testing/wgcf/APKBUILD b/testing/wgcf/APKBUILD
new file mode 100644
index 00000000000..42e907924a5
--- /dev/null
+++ b/testing/wgcf/APKBUILD
@@ -0,0 +1,47 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=wgcf
+pkgver=2.2.21
+pkgrel=2
+pkgdesc="Unofficial CLI for Cloudflare Warp"
+url="https://github.com/ViRb3/wgcf"
+arch="all"
+license="MIT"
+makedepends="go"
+subpackages="
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/ViRb3/wgcf/archive/refs/tags/v$pkgver.tar.gz"
+options="net" # download Go modules
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ go build -v
+
+ for shell in bash fish zsh; do
+ ./wgcf completion $shell > wgcf.$shell
+ done
+}
+
+check() {
+ go test ./...
+}
+
+package() {
+ install -Dm755 wgcf -t "$pkgdir"/usr/bin/
+
+ install -Dm644 wgcf.bash \
+ "$pkgdir"/usr/share/bash-completion/completions/wgcf
+ install -Dm644 wgcf.fish \
+ "$pkgdir"/usr/share/fish/vendor_completions.d/wgcf.fish
+ install -Dm644 wgcf.zsh \
+ "$pkgdir"/usr/share/zsh/site-functions/_wgcf
+}
+
+sha512sums="
+595c08cf266e06014d2978db94d452368a7ea86aa4fe90906903ac4a18aea2108329b4029b8909a9737e97e9f828112b04efc91aa61169fe07dc7ef364d4ec17 wgcf-2.2.21.tar.gz
+"
diff --git a/testing/wget2/APKBUILD b/testing/wget2/APKBUILD
index 62e08270443..105dfe536db 100644
--- a/testing/wget2/APKBUILD
+++ b/testing/wget2/APKBUILD
@@ -4,8 +4,8 @@
# Contributor: Carlo Landmeter <clandmeter@alpinelinux.org>
# Maintainer: Carlo Landmeter <clandmeter@alpinelinux.org>
pkgname=wget2
-pkgver=2.0.0
-pkgrel=1
+pkgver=2.1.0
+pkgrel=0
pkgdesc="Network utility to retrieve files from the Web"
url="https://www.gnu.org/software/wget/wget.html"
arch="all"
@@ -60,5 +60,5 @@ package() {
}
sha512sums="
-59be98a43057220f4eb4314d0876990c21bbc2606a82444e03282ca55d6de18a382fb75b3fcbb1e7f5a5930cd9a81c6c73cdac2ffba3932b55816fb8140c00eb wget2-2.0.0.tar.gz
+ae1fc267b1c2ee182ee59f0fc34fef238326a20f1ea1c15be6db2c16b70d49e89f61ca937d3e64d214f73ef9646ba4318782ac4210db51bd3d89c55ce4406872 wget2-2.1.0.tar.gz
"
diff --git a/testing/whipper/APKBUILD b/testing/whipper/APKBUILD
index d2dd6410a5f..299d87397b1 100644
--- a/testing/whipper/APKBUILD
+++ b/testing/whipper/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Galen Abell <galen@galenabell.com>
pkgname=whipper
pkgver=0.10.0
-pkgrel=1
+pkgrel=5
pkgdesc="python CD-DA ripper preferring accuracy over speed"
# https://github.com/whipper-team/whipper/issues/515
options="net !check"
@@ -24,31 +24,37 @@ depends="
flac
sox
"
-makedepends="py3-setuptools python3-dev py3-wheel libsndfile-dev"
-checkdepends="py3-setuptools_scm py3-twisted"
+makedepends="
+ py3-gpep517
+ py3-setuptools
+ py3-setuptools_scm
+ python3-dev
+ py3-wheel
+ libsndfile-dev
+ "
+checkdepends="py3-twisted"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/whipper-team/whipper/archive/v$pkgver.tar.gz"
-prepare() {
- default_prepare
-
- sed -e '/setuptools_scm/d' \
- -e "s/use_scm_verion=True/version='$pkgver'/" \
- -i setup.py
-}
-
build() {
export SETUPTOOLS_SCM_PRETEND_VERSION="$pkgver"
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- PYTHONPATH="$(echo $PWD/build/lib.*)" python3 -m unittest discover
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m unittest discover
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir" --skip-build
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
+
sha512sums="
728ad98185aa2d29f4fb215a597136691bb2c3590b3cac4f659238f90a3b4328c377fafe830a725b655f050538739f404b3eca853db4c39001d1b9d721dc7fd8 whipper-0.10.0.tar.gz
"
diff --git a/testing/wiimms-iso-tools/APKBUILD b/testing/wiimms-iso-tools/APKBUILD
index cec42681313..619e13aec72 100644
--- a/testing/wiimms-iso-tools/APKBUILD
+++ b/testing/wiimms-iso-tools/APKBUILD
@@ -2,14 +2,14 @@
# Maintainer: Sebastian Hudak <sebastian@sebsite.pw>
pkgname=wiimms-iso-tools
pkgver=3.04a
-pkgrel=0
+pkgrel=1
pkgdesc="Set of command-line tools to work with Wii/GameCube ISO and WBFS files"
# releases aren't tagged; this commit matches version 3.04a
_commit=e58ce7463bc8829c46bcba52e8232f550e49c17c
url="https://wit.wiimm.de/"
arch="x86 x86_64"
license="GPL-2.0-or-later"
-makedepends="bash linux-headers ncurses-dev openssl-dev zlib-dev"
+makedepends="bash linux-headers ncurses-dev openssl-dev>3 zlib-dev"
subpackages="$pkgname-doc"
source="$pkgname-$_commit.tar.gz::https://github.com/Wiimm/wiimms-iso-tools/archive/$_commit.tar.gz
$pkgname.patch"
diff --git a/testing/wiki-tui/APKBUILD b/testing/wiki-tui/APKBUILD
new file mode 100644
index 00000000000..8af1baa64bf
--- /dev/null
+++ b/testing/wiki-tui/APKBUILD
@@ -0,0 +1,41 @@
+# Contributor: Orhun Parmaksız <orhunparmaksiz@gmail.com>
+# Maintainer: Orhun Parmaksız <orhunparmaksiz@gmail.com>
+pkgname=wiki-tui
+pkgver=0.8.2
+pkgrel=0
+pkgdesc="Simple and easy to use Wikipedia Text User Interface"
+url="https://github.com/Builditluc/wiki-tui"
+arch="all"
+license="MIT"
+makedepends="
+ cargo
+ cargo-auditable
+ openssl-dev
+ "
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/Builditluc/wiki-tui/archive/v$pkgver.tar.gz"
+options="net"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm 755 target/release/wiki-tui -t "$pkgdir"/usr/bin
+ install -Dm 644 README.md -t "$pkgdir"/usr/share/doc/$pkgname
+ install -Dm 644 LICENSE -t "$pkgdir"/usr/share/licenses/$pkgname
+}
+
+sha512sums="
+9240c17ab9410bf4182349701d06df73f56b11fceb24415c5249a982026fb236d87ab151b7a5b62683d70c38414fe67270b8f2012eb9188fddebf2d6c366fd22 wiki-tui-0.8.2.tar.gz
+"
diff --git a/testing/wimlib/APKBUILD b/testing/wimlib/APKBUILD
deleted file mode 100644
index dec657a5441..00000000000
--- a/testing/wimlib/APKBUILD
+++ /dev/null
@@ -1,39 +0,0 @@
-# Contributor: alealexpro100 <alealexn@gmail.com>
-# Maintainer: alealexpro100 <alealexn@gmail.com>
-pkgname=wimlib
-pkgver=1.13.5
-pkgrel=0
-pkgdesc="Create, extract, and modify Windows Imaging archives"
-url="https://wimlib.net/"
-arch="all"
-license="GPL-3.0-or-later"
-makedepends="fuse-dev libxml2-dev"
-checkdepends="bash"
-subpackages="$pkgname-dev $pkgname-doc"
-source="https://wimlib.net/downloads/wimlib-$pkgver.tar.gz"
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var \
- --without-libcrypto \
- --with-fuse \
- --without-ntfs-3g \
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-46c25f31cb33a648f05c5984a13fc193bf54215efd69b09e055575d979b6c319b612a1b4f0800d8168794cb8f02fdf079e4caea40e6a93304616d4b403bd827e wimlib-1.13.5.tar.gz
-"
diff --git a/testing/wine-mono/APKBUILD b/testing/wine-mono/APKBUILD
index 9517e6aa853..b2d5f3c7ebf 100644
--- a/testing/wine-mono/APKBUILD
+++ b/testing/wine-mono/APKBUILD
@@ -1,15 +1,15 @@
# Contributor: Natanael Copa <ncopa@alpinelinux.org>
-# Maintainer:
+# Maintainer: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
pkgname=wine-mono
-pkgver=7.2.0
+pkgver=8.1.0
pkgrel=1
pkgdesc="Wine's built-in replacement for Microsoft's .NET"
url="https://wiki.winehq.org/Mono"
-arch="x86_64"
+arch="x86_64 x86"
license="MIT"
depends="wine"
options="!check"
-source="https://dl.winehq.org/wine/wine-mono/$pkgver/wine-mono-$pkgver-x86.msi"
+source="https://github.com/madewokherd/wine-mono/releases/download/wine-mono-$pkgver/wine-mono-$pkgver-x86.msi"
build() {
return 0
@@ -17,9 +17,9 @@ build() {
package() {
install -Dm644 "$srcdir"/$pkgname-$pkgver-x86.msi \
- "$pkgdir"/usr/share/wine/mono/$pkgname-$pkgver-x86.msi
+ -t "$pkgdir"/usr/share/wine/mono/
}
sha512sums="
-855a829a247de1e6ee31e07d06cc9d23b3011f43937c13a04f992fbc99080c32cd2dfc44e07bbdf6a71935b75192dd0648288c622eae00b3226e3c58ff55d826 wine-mono-7.2.0-x86.msi
+5c788dfa0c9b664242f3ce0ab24f3f9256dabf1e9fadc516140f267c763da1865b4536c707660acaf66e4a37d93198f5499971b4261e63d91252f6a7fc3eae4e wine-mono-8.1.0-x86.msi
"
diff --git a/testing/wine-staging/APKBUILD b/testing/wine-staging/APKBUILD
new file mode 100644
index 00000000000..31dc6a96ce8
--- /dev/null
+++ b/testing/wine-staging/APKBUILD
@@ -0,0 +1,174 @@
+# Contributor: Pedro Filipe <xpecex@outlook.com>
+# Contributor: Valery Kartel <valery.kartel@gmail.com>
+# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
+# Contributor: Åukasz Jendrysik <scadu@yandex.com>
+# Contributor: Martell Malone <martell@marinelayer.io>
+# Contributor: Craig Andrews <candrews@integralblue.com>
+# Contributor: Natanael Copa <ncopa@alpinelinux.org>
+# Contributor: sewn <sewn@disroot.org>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=wine-staging
+pkgver=9.6
+_pkgver="${pkgver%".${pkgver#*.*.}"}"
+pkgrel=0
+pkgdesc="Compatibility layer for running Windows programs -- Staging patchset"
+url="https://www.winehq.org"
+arch="x86 x86_64"
+license="LGPL-2.0-or-later"
+depends="
+ libxi
+ libxrandr
+ "
+depends_dev="$pkgname perl"
+makedepends="
+ alsa-lib-dev
+ autoconf
+ automake
+ bison
+ bash
+ python3
+ cups-dev
+ dbus-dev
+ flex-dev
+ fontconfig-dev
+ freetype-dev
+ gnutls-dev
+ gstreamer-dev
+ gst-plugins-base-dev
+ krb5-dev
+ libgphoto2-dev
+ libpcap-dev
+ libusb-dev
+ libxcomposite-dev
+ libxcursor-dev
+ libxi-dev
+ libxinerama-dev
+ libxkbcommon-dev
+ libxrandr-dev
+ libxrender-dev
+ mesa-dev
+ mingw-w64-gcc
+ ncurses-dev
+ opencl-dev
+ pcsc-lite-dev
+ pulseaudio-dev
+ sane-dev
+ sdl2-dev
+ udisks2-dev
+ v4l-utils-dev
+ vulkan-loader-dev
+ wayland-dev
+ "
+subpackages="$pkgname-dev $pkgname-doc"
+checkdepends="xvfb-run"
+source="https://dl.winehq.org/wine/source/${pkgver/.[1-9]*/.x}/wine-$_pkgver.tar.xz
+ wine-staging-$pkgver.tar.gz::https://gitlab.winehq.org/wine/wine-staging/-/archive/v$pkgver/wine-staging-v$pkgver.tar.gz
+ rpath.patch
+ "
+builddir="$srcdir/wine-$_pkgver"
+options="textrels !check" # As of 2.0.3 most of the tests fails
+# ignore tracing something in a weird rpath just to silence a warning
+# no effect
+somask="ntdll.so win32u.so"
+
+prepare() {
+ default_prepare
+ # fix opencl header detection
+ sed 's|OpenCL/opencl.h|CL/opencl.h|g' -i configure*
+
+ "$srcdir/wine-staging-v$pkgver"/staging/patchinstall.py DESTDIR="$builddir" --all
+}
+
+case "$CARCH" in
+x86_64)
+ # also pull in 32-target, enabled with --enable-archs
+ makedepends="$makedepends i686-mingw-w64-gcc"
+ ;;
+esac
+
+build() {
+ export CFLAGS="$CFLAGS -O2 -Wno-error=format-security"
+ export CXXFLAGS="$CXXFLAGS -O2 -Wno-error=format-security"
+ export CPPFLAGS="$CPPFLAGS -O2 -Wno-error=format-security"
+
+ # invalid to the msys linker
+ export LDFLAGS="${LDFLAGS/,-Wl,-z,pack-relative-relocs}"
+
+ case "$CARCH" in
+ x86_64)
+ local win64="--enable-win64"
+ local archs="--enable-archs=x86_64,i386"
+ ;;
+ x86)
+ local no_pie="-no-pie"
+ ;;
+ esac
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --libdir=/usr/lib \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --with-dbus \
+ --with-mingw \
+ --with-x \
+ --with-vulkan \
+ $win64 \
+ $archs
+ make LDFLAGS="$LDFLAGS $no_pie" tools/winedump/winedump
+ make
+}
+
+check() {
+ xvfb-run make test
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+
+ install -Dm755 tools/wineapploader \
+ "$pkgdir"/usr/bin/wineapploader
+
+ local file
+ for file in msiexec notepad regedit regsvr32 wineboot \
+ winecfg wineconsole winefile winemine winepath; do
+ rm -v "$pkgdir"/usr/bin/$file
+ ln -sfv /usr/bin/wineapploader "$pkgdir"/usr/bin/$file
+ done
+
+ case "$CARCH" in
+ x86_64)
+ x86_64-w64-mingw32-strip --strip-unneeded "$pkgdir"/usr/lib/wine/x86_64-windows/*.dll
+ i686-w64-mingw32-strip --strip-unneeded "$pkgdir"/usr/lib/wine/i386-windows/*.dll
+
+ # add compat links, since with archs these rename back to non-64
+ ln -sfv wine "$pkgdir"/usr/bin/wine64
+ ln -sfv wine-preloader "$pkgdir"/usr/bin/wine64-preloader
+ ;;
+ x86)
+ i686-w64-mingw32-strip --strip-unneeded "$pkgdir"/usr/lib/wine/i386-windows/*.dll
+ ;;
+ esac
+}
+
+dev() {
+ default_dev
+
+ local file
+ for file in widl wmc wrc winebuild winedump function_grep.pl \
+ winedbg winemaker winegcc winecpp wineg++; do
+ amove usr/bin/$file
+ done
+}
+
+doc() {
+ default_doc
+ rm -fr "$subpkgdir"/usr/share/man/*.UTF-8
+}
+
+sha512sums="
+cc2ea5597636da8d392d1d63b9c135679eff69ea671dc6b53b6f2d44a890aee0e17275174485f6e8dd99c7db737eb82a800a2b05c4966f15e28167c5a6098922 wine-9.6.tar.xz
+ed7d4bc5e834b79a15815971d12d5b27aa33a2f4104207724400e6c29f7d8a466944d889c98833787a1db8bbf3770f1b74b10705711cdac55e918d5026eb8d76 wine-staging-9.6.tar.gz
+9881abfd0e7e4589cd5724291f9ec06ccb9d88b842c69abb5ea7865b6c27c778a060e60a9776c3620a030555cf61b8cceded55db9f04d5e45d9c627306763bff rpath.patch
+"
diff --git a/testing/wine-staging/rpath.patch b/testing/wine-staging/rpath.patch
new file mode 100644
index 00000000000..b694468a27f
--- /dev/null
+++ b/testing/wine-staging/rpath.patch
@@ -0,0 +1,57 @@
+diff --git a/configure b/configure
+index 296c3e4..e838871 100755
+--- a/configure
++++ b/configure
+@@ -10306,6 +10306,38 @@ then :
+ fi
+ ;;
+ esac
++
++ # do this at the end because it needs double dollar for makefile
++ as_ac_var=`printf "%s\n" "ac_cv_cflags_-Wl,-rpath,\\\\\\$ORIGIN" | $as_tr_sh`
++{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports -Wl,-rpath,\\\$ORIGIN" >&5
++printf %s "checking whether the compiler supports -Wl,-rpath,\\\$ORIGIN... " >&6; }
++if eval test \${$as_ac_var+y}
++then :
++ printf %s "(cached) " >&6
++else $as_nop
++ ac_wine_try_cflags_saved=$CFLAGS
++CFLAGS="$CFLAGS -Wl,-rpath,\\\$ORIGIN"
++cat confdefs.h - <<_ACEOF >conftest.$ac_ext
++/* end confdefs.h. */
++int main(int argc, char **argv) { return 0; }
++_ACEOF
++if ac_fn_c_try_link "$LINENO"
++then :
++ eval "$as_ac_var=yes"
++else $as_nop
++ eval "$as_ac_var=no"
++fi
++rm -f core conftest.err conftest.$ac_objext conftest.beam \
++ conftest$ac_exeext conftest.$ac_ext
++CFLAGS=$ac_wine_try_cflags_saved
++fi
++eval ac_res=\$$as_ac_var
++ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
++printf "%s\n" "$ac_res" >&6; }
++if eval test \"x\$"$as_ac_var"\" = x"yes"
++then :
++ UNIXLDFLAGS="$UNIXLDFLAGS '-Wl,-rpath,\$\$ORIGIN'"
++fi
+ ;;
+ esac
+
+diff --git a/configure.ac b/configure.ac
+index 140f26a..02497c9 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -784,6 +784,9 @@ case $host_os in
+ [WINELOADER_LDFLAGS="$WINELOADER_LDFLAGS -Wl,-z,max-page-size=0x1000"])
+ ;;
+ esac
++
++ # do this at the end because it needs double dollar for makefile
++ WINE_TRY_CFLAGS([-Wl,-rpath,\\\$ORIGIN],[UNIXLDFLAGS="$UNIXLDFLAGS '-Wl,-rpath,\$\$ORIGIN'"])
+ ;;
+ esac
+
diff --git a/testing/winetricks/APKBUILD b/testing/winetricks/APKBUILD
index 49890ac1619..59c64bf6eec 100644
--- a/testing/winetricks/APKBUILD
+++ b/testing/winetricks/APKBUILD
@@ -1,14 +1,14 @@
# Contributor: Leonardo Arena <rnalrd@alpinelinux.org>
-# Maintainer:
+# Maintainer: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
pkgname=winetricks
-pkgver=20220411
-pkgrel=0
+pkgver=20230212
+pkgrel=1
pkgdesc="Winetricks is an easy way to work around problems in Wine"
url="https://github.com/Winetricks/winetricks"
arch="x86 x86_64" # Limited by the wine pkg
license="LGPL-2.1-or-later"
options="!check" # Missing depends bashate & shellcheck
-depends="cabextract unzip wine xmessage"
+depends="cabextract unzip wine xmessage wget"
subpackages="$pkgname-doc $pkgname-bash-completion"
source="https://github.com/Winetricks/winetricks/archive/$pkgver/winetricks-$pkgver.tar.gz"
@@ -17,5 +17,5 @@ package() {
}
sha512sums="
-c4e77c5e62d2df56db6aa75979cc775f26472917108b0498c975458fd6f7ecbef52c329b7b6f33c12510176e105190bc538447b39348a42b7f1a8e07e5d92d09 winetricks-20220411.tar.gz
+3d2211091754a2a254d5ac8dab27d59d488d512149d8060828cf9d69df96f5ccad183f2ba9f2172452a2ae322236e86e7fce560836a2bc05dc9a36c2a422f245 winetricks-20230212.tar.gz
"
diff --git a/testing/wireguard-go/APKBUILD b/testing/wireguard-go/APKBUILD
index 27581e83682..5308ead2788 100644
--- a/testing/wireguard-go/APKBUILD
+++ b/testing/wireguard-go/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Stefan Reiff <kroko87@hotmail.com>
# Maintainer: Stefan Reiff <kroko87@hotmail.com>
pkgname=wireguard-go
-pkgver=0.0.20220117
-pkgrel=3
+pkgver=0.0.20230223
+pkgrel=4
pkgdesc="Next generation secure network tunnel: userspace implementation in go"
url="https://www.wireguard.com"
license="GPL-2.0-only"
@@ -13,6 +13,10 @@ subpackages="$pkgname-doc"
options="!check"
source="https://git.zx2c4.com/wireguard-go/snapshot/wireguard-go-$pkgver.tar.xz"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
build() {
make
}
@@ -24,5 +28,5 @@ package() {
}
sha512sums="
-6924f520bc4ca72458d371bd00902b75576f0d372dcebae493c5e15e7b085b056f6ac9322346b83b617ef184e061e0f9797f619e02403ab0788fd779ca83ff21 wireguard-go-0.0.20220117.tar.xz
+221ecea400fdfdfd564d8ab3b1939cab289b28a00c8d2e8e41bd56484f09d66e20a3dd34dc81471e7fc5133bebffc621be984b8a8d3475a0e4b08daa350d5583 wireguard-go-0.0.20230223.tar.xz
"
diff --git a/testing/wiremapper/APKBUILD b/testing/wiremapper/APKBUILD
index f92511a3740..0c67d691883 100644
--- a/testing/wiremapper/APKBUILD
+++ b/testing/wiremapper/APKBUILD
@@ -5,7 +5,7 @@ pkgver=0.10.0
pkgrel=0
pkgdesc="GTK3 app for the Pockethernet hardware"
url="https://gitlab.com/MartijnBraam/wiremapper"
-arch="all !s390x !riscv64" # Blocked by libhandy1
+arch="all"
license="MIT"
source="https://gitlab.com/MartijnBraam/wiremapper/-/archive/$pkgver/wiremapper-$pkgver.tar.gz"
depends="python3 py3-pockethernet py3-gobject3 py3-setuptools gtk+3.0 libhandy1"
@@ -14,14 +14,13 @@ options="!check" # There's no testsuite
build() {
abuild-meson . output
- meson compile ${JOBS:+-j ${JOBS}} -C output
+ meson compile -C output
}
package() {
DESTDIR="$pkgdir" meson install --no-rebuild -C output
}
-
sha512sums="
dc961223626f84f4f7284087c40c8290b6dea56a5d3909909827ffefd7c576386eaac572a21bc73a3097723965b26f93c2a208fb45b44944166bab950b4c8cbf wiremapper-0.10.0.tar.gz
"
diff --git a/testing/wiringx/APKBUILD b/testing/wiringx/APKBUILD
index ec31faa6abc..ca06d10f69a 100644
--- a/testing/wiringx/APKBUILD
+++ b/testing/wiringx/APKBUILD
@@ -1,12 +1,12 @@
# Contributor: Milan P. Stanić <mps@arvanta.net>
# Maintainer: Milan P. Stanić <mps@arvanta.net>
-pkgname="wiringx"
-pkgver="0_git20191126"
-_commitid=8efb38935b92f86f4932d7bb52169694854f307c
+pkgname=wiringx
+pkgver=0_git20240317
+_commitid=a6bb3092d262f9801a685a4591eff937fbd4a403
pkgrel=1
pkgdesc="modular approach to several GPIO interfaces"
url="https://github.com/wiringX/wiringX"
-arch="aarch64 armv7 armhf"
+arch="aarch64 armv7 armhf riscv64"
license="MPL-2.0"
options="!check" # no testsuite
makedepends="cmake linux-headers"
@@ -27,7 +27,7 @@ build() {
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_CXX_FLAGS="$CXXFLAGS" \
-DCMAKE_C_FLAGS="$CFLAGS" \
- ${CMAKE_CROSSOPTS} .
+ $CMAKE_CROSSOPTS .
make
}
@@ -36,5 +36,7 @@ package() {
rm -rf "$pkgdir"/usr/sbin
}
-sha512sums="50642c0ec248f15e7a3c4a13fff296331c1e065157c5d36688ca3ee02be0f94668333dd0fe859782736ccccf93380d24d1e58b40f3e74137818da3776742353d wiringx-0_git20191126.tar.gz
-b7751f0396fb90a5550a064006eb5f75ff5835a9e0c7b419abfdb2ec42313ab4bd6365874415a41f4f2cf6e9c778eec72b317e14dfbc439216e21c6bc4f73294 fix_time_t.patch"
+sha512sums="
+79e0509eb37c659c695168b324a6fafebe0493d7bf559c6d20cf395ff14379c0abae5fdb3347c34acdac6bb81a1e912a418b6b51159b58ee213e81fe33293cf1 wiringx-0_git20240317.tar.gz
+b7751f0396fb90a5550a064006eb5f75ff5835a9e0c7b419abfdb2ec42313ab4bd6365874415a41f4f2cf6e9c778eec72b317e14dfbc439216e21c6bc4f73294 fix_time_t.patch
+"
diff --git a/testing/witchery/APKBUILD b/testing/witchery/APKBUILD
index 27e16afa17d..057c70e2504 100644
--- a/testing/witchery/APKBUILD
+++ b/testing/witchery/APKBUILD
@@ -1,9 +1,9 @@
# Maintainer: Ariadne Conill <ariadne@dereferenced.org>
pkgname=witchery
pkgver=0.0.3
-pkgrel=1
+pkgrel=2
pkgdesc="build distroless images with Alpine tools"
-url="https://github.com/kaniini/witchery"
+url="https://github.com/witchery-project/witchery"
arch="noarch"
license="ISC"
depends="alpine-sdk"
@@ -11,7 +11,7 @@ makedepends=""
checkdepends=""
install=""
subpackages=""
-source="https://github.com/kaniini/witchery/archive/v$pkgver/witchery-$pkgver.tar.gz
+source="https://github.com/witchery-project/witchery/archive/v$pkgver/witchery-$pkgver.tar.gz
correct-install-location.patch
"
builddir="$srcdir/witchery-$pkgver"
diff --git a/testing/wk-adblock/APKBUILD b/testing/wk-adblock/APKBUILD
index b797072f665..1d2f723bf3f 100644
--- a/testing/wk-adblock/APKBUILD
+++ b/testing/wk-adblock/APKBUILD
@@ -2,28 +2,42 @@
pkgname=wk-adblock
pkgver=0.0.4
_commit=665ffb4126ae924e345d04adcf6242066216a508
-pkgrel=2
+pkgrel=5
pkgdesc="Simple ad-blocker for Webkit2 Webview"
options="!check" # No testsuite
url="https://github.com/DavidVentura/webextension-adblocker/"
arch="x86_64 armv7 armhf aarch64 x86 ppc64le" # limited by rust
license="GPL-3.0-or-later"
-makedepends="cargo clang-libs llvm13-dev binutils glib-dev webkit2gtk-dev"
+makedepends="cargo clang-dev glib-dev llvm-dev webkit2gtk-4.1-dev cargo-auditable"
subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://codeload.github.com/DavidVentura/webextension-adblocker/tar.gz/$_commit"
+source="$pkgname-$pkgver.tar.gz::https://codeload.github.com/DavidVentura/webextension-adblocker/tar.gz/$_commit
+ cargo-lock.patch
+ webkit2gtk-4.1.patch
+ "
builddir="$srcdir/webextension-adblocker-$_commit"
+# optimise size
+export CARGO_FEATURE_USE_SYSTEM_LIBS=1
+
+prepare() {
+ default_prepare
+
+ cd wk-we-adblock
+ cargo fetch --target="$CTARGET" --locked
+}
+
build() {
cd wk-we-adblock
- cargo build --release
+ cargo auditable build --release --frozen
}
package() {
make install DESTDIR="$pkgdir"
- mkdir -p $pkgdir/usr/share/man
- cp manpage $pkgdir/usr/share/man/$pkgname
+ install -Dm644 manpage "$pkgdir"/usr/share/man/man1/$pkgname.1
}
sha512sums="
a2d1b36e364311c9e14849ee76628d0e1d1964b5f5b9ba4a3a4211ec798080d1ff97ce0c08bc708114e3ed6a40a7ef437406280e61a880340d691c5a5d0712b3 wk-adblock-0.0.4.tar.gz
+1808c2b078a29ee26a1f45818a81e11de0c5180efba0643e1d6c686d702dbf9dbff4b112f75a3e6ee1747887731ab3ecb892993e9bcca8975e107f63bc9f6661 cargo-lock.patch
+096887e59aea7c7a0b127c7735bc4f234ad26f785bdf895306ad1e95ad3a6dafbc5e74633774671a9989a847f4fd604365b09b3c4000a04a21adb68e3c597320 webkit2gtk-4.1.patch
"
diff --git a/testing/wk-adblock/cargo-lock.patch b/testing/wk-adblock/cargo-lock.patch
new file mode 100644
index 00000000000..2ba4b70a9ad
--- /dev/null
+++ b/testing/wk-adblock/cargo-lock.patch
@@ -0,0 +1,1062 @@
+--- /dev/null
++++ b/wk-we-adblock/Cargo.lock
+@@ -0,0 +1,1059 @@
++# This file is automatically @generated by Cargo.
++# It is not intended for manual editing.
++version = 3
++
++[[package]]
++name = "aho-corasick"
++version = "0.7.18"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "1e37cfd5e7657ada45f742d6e99ca5788580b5c529dc78faf11ece6dc702656f"
++dependencies = [
++ "memchr",
++]
++
++[[package]]
++name = "ansi_term"
++version = "0.12.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "d52a9bb7ec0cf484c551830a7ce27bd20d67eac647e1befb56b0be4ee39a55d2"
++dependencies = [
++ "winapi",
++]
++
++[[package]]
++name = "atty"
++version = "0.2.14"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8"
++dependencies = [
++ "hermit-abi",
++ "libc",
++ "winapi",
++]
++
++[[package]]
++name = "autocfg"
++version = "0.1.8"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "0dde43e75fd43e8a1bf86103336bc699aa8d17ad1be60c76c0bdfd4828e19b78"
++dependencies = [
++ "autocfg 1.1.0",
++]
++
++[[package]]
++name = "autocfg"
++version = "1.1.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
++
++[[package]]
++name = "bindgen"
++version = "0.53.3"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "c72a978d268b1d70b0e963217e60fdabd9523a941457a6c42a7315d15c7e89e5"
++dependencies = [
++ "bitflags",
++ "cexpr",
++ "cfg-if 0.1.10",
++ "clang-sys",
++ "clap",
++ "env_logger",
++ "lazy_static",
++ "lazycell",
++ "log",
++ "peeking_take_while",
++ "proc-macro2",
++ "quote",
++ "regex",
++ "rustc-hash",
++ "shlex",
++ "which",
++]
++
++[[package]]
++name = "bitflags"
++version = "1.3.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
++
++[[package]]
++name = "bstr"
++version = "0.2.17"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ba3569f383e8f1598449f1a423e72e99569137b47740b1da11ef19af3d5c3223"
++dependencies = [
++ "lazy_static",
++ "memchr",
++ "regex-automata",
++ "serde",
++]
++
++[[package]]
++name = "byteorder"
++version = "1.4.3"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610"
++
++[[package]]
++name = "cast"
++version = "0.2.7"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "4c24dab4283a142afa2fdca129b80ad2c6284e073930f964c3a1293c225ee39a"
++dependencies = [
++ "rustc_version 0.4.0",
++]
++
++[[package]]
++name = "cc"
++version = "1.0.73"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "2fff2a6927b3bb87f9595d67196a70493f627687a71d87a0d692242c33f58c11"
++
++[[package]]
++name = "cexpr"
++version = "0.4.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f4aedb84272dbe89af497cf81375129abda4fc0a9e7c5d317498c15cc30c0d27"
++dependencies = [
++ "nom",
++]
++
++[[package]]
++name = "cfg-if"
++version = "0.1.10"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
++
++[[package]]
++name = "cfg-if"
++version = "1.0.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
++
++[[package]]
++name = "clang-sys"
++version = "0.29.3"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "fe6837df1d5cba2397b835c8530f51723267e16abbf83892e9e5af4f0e5dd10a"
++dependencies = [
++ "glob",
++ "libc",
++ "libloading",
++]
++
++[[package]]
++name = "clap"
++version = "2.34.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "a0610544180c38b88101fecf2dd634b174a62eef6946f84dfc6a7127512b381c"
++dependencies = [
++ "ansi_term",
++ "atty",
++ "bitflags",
++ "strsim",
++ "textwrap",
++ "unicode-width",
++ "vec_map",
++]
++
++[[package]]
++name = "cloudabi"
++version = "0.0.3"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f"
++dependencies = [
++ "bitflags",
++]
++
++[[package]]
++name = "criterion"
++version = "0.2.11"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "0363053954f3e679645fc443321ca128b7b950a6fe288cf5f9335cc22ee58394"
++dependencies = [
++ "atty",
++ "cast",
++ "clap",
++ "criterion-plot",
++ "csv",
++ "itertools",
++ "lazy_static",
++ "libc",
++ "num-traits",
++ "rand_core 0.3.1",
++ "rand_os",
++ "rand_xoshiro",
++ "rayon",
++ "rayon-core",
++ "serde",
++ "serde_derive",
++ "serde_json",
++ "tinytemplate",
++ "walkdir",
++]
++
++[[package]]
++name = "criterion-plot"
++version = "0.3.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "76f9212ddf2f4a9eb2d401635190600656a1f88a932ef53d06e7fa4c7e02fb8e"
++dependencies = [
++ "byteorder",
++ "cast",
++ "itertools",
++]
++
++[[package]]
++name = "crossbeam-channel"
++version = "0.5.4"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "5aaa7bd5fb665c6864b5f963dd9097905c54125909c7aa94c9e18507cdbe6c53"
++dependencies = [
++ "cfg-if 1.0.0",
++ "crossbeam-utils",
++]
++
++[[package]]
++name = "crossbeam-deque"
++version = "0.8.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6455c0ca19f0d2fbf751b908d5c55c1f5cbc65e03c4225427254b46890bdde1e"
++dependencies = [
++ "cfg-if 1.0.0",
++ "crossbeam-epoch",
++ "crossbeam-utils",
++]
++
++[[package]]
++name = "crossbeam-epoch"
++version = "0.9.8"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "1145cf131a2c6ba0615079ab6a638f7e1973ac9c2634fcbeaaad6114246efe8c"
++dependencies = [
++ "autocfg 1.1.0",
++ "cfg-if 1.0.0",
++ "crossbeam-utils",
++ "lazy_static",
++ "memoffset",
++ "scopeguard",
++]
++
++[[package]]
++name = "crossbeam-utils"
++version = "0.8.8"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "0bf124c720b7686e3c2663cf54062ab0f68a88af2fb6a030e87e30bf721fcb38"
++dependencies = [
++ "cfg-if 1.0.0",
++ "lazy_static",
++]
++
++[[package]]
++name = "csv"
++version = "1.1.6"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "22813a6dc45b335f9bade10bf7271dc477e81113e89eb251a0bc2a8a81c536e1"
++dependencies = [
++ "bstr",
++ "csv-core",
++ "itoa 0.4.8",
++ "ryu",
++ "serde",
++]
++
++[[package]]
++name = "csv-core"
++version = "0.1.10"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "2b2466559f260f48ad25fe6317b3c8dac77b5bdb5763ac7d9d6103530663bc90"
++dependencies = [
++ "memchr",
++]
++
++[[package]]
++name = "either"
++version = "1.6.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457"
++
++[[package]]
++name = "env_logger"
++version = "0.7.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "44533bbbb3bb3c1fa17d9f2e4e38bbbaf8396ba82193c4cb1b6445d711445d36"
++dependencies = [
++ "atty",
++ "humantime",
++ "log",
++ "regex",
++ "termcolor",
++]
++
++[[package]]
++name = "fid-rs"
++version = "0.1.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6c28658c0c3420305705adde833a0d2d614207507d013a5f25707553fb2ae2cd"
++dependencies = [
++ "rayon",
++]
++
++[[package]]
++name = "fuchsia-cprng"
++version = "0.1.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba"
++
++[[package]]
++name = "glib-sys"
++version = "0.10.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "c7e9b997a66e9a23d073f2b1abb4dbfc3925e0b8952f67efd8d9b6e168e4cdc1"
++dependencies = [
++ "libc",
++ "system-deps",
++]
++
++[[package]]
++name = "glob"
++version = "0.3.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574"
++
++[[package]]
++name = "gobject-sys"
++version = "0.10.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "952133b60c318a62bf82ee75b93acc7e84028a093e06b9e27981c2b6fe68218c"
++dependencies = [
++ "glib-sys",
++ "libc",
++ "system-deps",
++]
++
++[[package]]
++name = "heck"
++version = "0.3.3"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c"
++dependencies = [
++ "unicode-segmentation",
++]
++
++[[package]]
++name = "hermit-abi"
++version = "0.1.19"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33"
++dependencies = [
++ "libc",
++]
++
++[[package]]
++name = "humantime"
++version = "1.3.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "df004cfca50ef23c36850aaaa59ad52cc70d0e90243c3c7737a4dd32dc7a3c4f"
++dependencies = [
++ "quick-error",
++]
++
++[[package]]
++name = "itertools"
++version = "0.8.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f56a2d0bc861f9165be4eb3442afd3c236d8a98afd426f65d92324ae1091a484"
++dependencies = [
++ "either",
++]
++
++[[package]]
++name = "itoa"
++version = "0.4.8"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "b71991ff56294aa922b450139ee08b3bfc70982c6b2c7562771375cf73542dd4"
++
++[[package]]
++name = "itoa"
++version = "1.0.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "112c678d4050afce233f4f2852bb2eb519230b3cf12f33585275537d7e41578d"
++
++[[package]]
++name = "lazy_static"
++version = "1.4.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
++
++[[package]]
++name = "lazycell"
++version = "1.3.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55"
++
++[[package]]
++name = "libc"
++version = "0.2.126"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "349d5a591cd28b49e1d1037471617a32ddcda5731b99419008085f72d5a53836"
++
++[[package]]
++name = "libloading"
++version = "0.5.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f2b111a074963af1d37a139918ac6d49ad1d0d5e47f72fd55388619691a7d753"
++dependencies = [
++ "cc",
++ "winapi",
++]
++
++[[package]]
++name = "lock_api"
++version = "0.3.4"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "c4da24a77a3d8a6d4862d95f72e6fdb9c09a643ecdb402d754004a557f2bec75"
++dependencies = [
++ "scopeguard",
++]
++
++[[package]]
++name = "log"
++version = "0.4.17"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e"
++dependencies = [
++ "cfg-if 1.0.0",
++]
++
++[[package]]
++name = "louds-rs"
++version = "0.4.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e16a91fb20f74b6d9a758a0103a2884af525a2fa34fbfe19f4b3c5482a4a54e9"
++dependencies = [
++ "fid-rs",
++]
++
++[[package]]
++name = "maybe-uninit"
++version = "2.0.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "60302e4db3a61da70c0cb7991976248362f30319e88850c487b9b95bbf059e00"
++
++[[package]]
++name = "memchr"
++version = "2.5.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d"
++
++[[package]]
++name = "memoffset"
++version = "0.6.5"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce"
++dependencies = [
++ "autocfg 1.1.0",
++]
++
++[[package]]
++name = "nom"
++version = "5.1.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ffb4262d26ed83a1c0a33a38fe2bb15797329c85770da05e6b828ddb782627af"
++dependencies = [
++ "memchr",
++ "version_check",
++]
++
++[[package]]
++name = "num-traits"
++version = "0.2.15"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd"
++dependencies = [
++ "autocfg 1.1.0",
++]
++
++[[package]]
++name = "num_cpus"
++version = "1.13.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "19e64526ebdee182341572e50e9ad03965aa510cd94427a4549448f285e957a1"
++dependencies = [
++ "hermit-abi",
++ "libc",
++]
++
++[[package]]
++name = "once_cell"
++version = "0.2.4"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "d584f08c2d717d5c23a6414fc2822b71c651560713e54fa7eace675f758a355e"
++dependencies = [
++ "parking_lot",
++]
++
++[[package]]
++name = "parking_lot"
++version = "0.9.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f842b1982eb6c2fe34036a4fbfb06dd185a3f5c8edfaacdf7d1ea10b07de6252"
++dependencies = [
++ "lock_api",
++ "parking_lot_core",
++ "rustc_version 0.2.3",
++]
++
++[[package]]
++name = "parking_lot_core"
++version = "0.6.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "b876b1b9e7ac6e1a74a6da34d25c42e17e8862aa409cbbbdcfc8d86c6f3bc62b"
++dependencies = [
++ "cfg-if 0.1.10",
++ "cloudabi",
++ "libc",
++ "redox_syscall",
++ "rustc_version 0.2.3",
++ "smallvec",
++ "winapi",
++]
++
++[[package]]
++name = "peeking_take_while"
++version = "0.1.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099"
++
++[[package]]
++name = "pkg-config"
++version = "0.3.25"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "1df8c4ec4b0627e53bdf214615ad287367e482558cf84b109250b37464dc03ae"
++
++[[package]]
++name = "proc-macro2"
++version = "1.0.39"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "c54b25569025b7fc9651de43004ae593a75ad88543b17178aa5e1b9c4f15f56f"
++dependencies = [
++ "unicode-ident",
++]
++
++[[package]]
++name = "quick-error"
++version = "1.2.3"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0"
++
++[[package]]
++name = "quote"
++version = "1.0.18"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "a1feb54ed693b93a84e14094943b84b7c4eae204c512b7ccb95ab0c66d278ad1"
++dependencies = [
++ "proc-macro2",
++]
++
++[[package]]
++name = "rand"
++version = "0.6.5"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6d71dacdc3c88c1fde3885a3be3fbab9f35724e6ce99467f7d9c5026132184ca"
++dependencies = [
++ "autocfg 0.1.8",
++ "libc",
++ "rand_chacha",
++ "rand_core 0.4.2",
++ "rand_hc",
++ "rand_isaac",
++ "rand_jitter",
++ "rand_os",
++ "rand_pcg",
++ "rand_xorshift",
++ "winapi",
++]
++
++[[package]]
++name = "rand_chacha"
++version = "0.1.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "556d3a1ca6600bfcbab7c7c91ccb085ac7fbbcd70e008a98742e7847f4f7bcef"
++dependencies = [
++ "autocfg 0.1.8",
++ "rand_core 0.3.1",
++]
++
++[[package]]
++name = "rand_core"
++version = "0.3.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b"
++dependencies = [
++ "rand_core 0.4.2",
++]
++
++[[package]]
++name = "rand_core"
++version = "0.4.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "9c33a3c44ca05fa6f1807d8e6743f3824e8509beca625669633be0acbdf509dc"
++
++[[package]]
++name = "rand_hc"
++version = "0.1.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7b40677c7be09ae76218dc623efbf7b18e34bced3f38883af07bb75630a21bc4"
++dependencies = [
++ "rand_core 0.3.1",
++]
++
++[[package]]
++name = "rand_isaac"
++version = "0.1.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ded997c9d5f13925be2a6fd7e66bf1872597f759fd9dd93513dd7e92e5a5ee08"
++dependencies = [
++ "rand_core 0.3.1",
++]
++
++[[package]]
++name = "rand_jitter"
++version = "0.1.4"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "1166d5c91dc97b88d1decc3285bb0a99ed84b05cfd0bc2341bdf2d43fc41e39b"
++dependencies = [
++ "libc",
++ "rand_core 0.4.2",
++ "winapi",
++]
++
++[[package]]
++name = "rand_os"
++version = "0.1.3"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7b75f676a1e053fc562eafbb47838d67c84801e38fc1ba459e8f180deabd5071"
++dependencies = [
++ "cloudabi",
++ "fuchsia-cprng",
++ "libc",
++ "rand_core 0.4.2",
++ "rdrand",
++ "winapi",
++]
++
++[[package]]
++name = "rand_pcg"
++version = "0.1.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "abf9b09b01790cfe0364f52bf32995ea3c39f4d2dd011eac241d2914146d0b44"
++dependencies = [
++ "autocfg 0.1.8",
++ "rand_core 0.4.2",
++]
++
++[[package]]
++name = "rand_xorshift"
++version = "0.1.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "cbf7e9e623549b0e21f6e97cf8ecf247c1a8fd2e8a992ae265314300b2455d5c"
++dependencies = [
++ "rand_core 0.3.1",
++]
++
++[[package]]
++name = "rand_xoshiro"
++version = "0.1.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "03b418169fb9c46533f326efd6eed2576699c44ca92d3052a066214a8d828929"
++dependencies = [
++ "byteorder",
++ "rand_core 0.3.1",
++]
++
++[[package]]
++name = "rayon"
++version = "1.5.3"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "bd99e5772ead8baa5215278c9b15bf92087709e9c1b2d1f97cdb5a183c933a7d"
++dependencies = [
++ "autocfg 1.1.0",
++ "crossbeam-deque",
++ "either",
++ "rayon-core",
++]
++
++[[package]]
++name = "rayon-core"
++version = "1.9.3"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "258bcdb5ac6dad48491bb2992db6b7cf74878b0384908af124823d118c99683f"
++dependencies = [
++ "crossbeam-channel",
++ "crossbeam-deque",
++ "crossbeam-utils",
++ "num_cpus",
++]
++
++[[package]]
++name = "rdrand"
++version = "0.4.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2"
++dependencies = [
++ "rand_core 0.3.1",
++]
++
++[[package]]
++name = "redox_syscall"
++version = "0.1.57"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "41cc0f7e4d5d4544e8861606a285bb08d3e70712ccc7d2b84d7c0ccfaf4b05ce"
++
++[[package]]
++name = "regex"
++version = "1.5.6"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "d83f127d94bdbcda4c8cc2e50f6f84f4b611f69c902699ca385a39c3a75f9ff1"
++dependencies = [
++ "aho-corasick",
++ "memchr",
++ "regex-syntax",
++]
++
++[[package]]
++name = "regex-automata"
++version = "0.1.10"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132"
++
++[[package]]
++name = "regex-syntax"
++version = "0.6.26"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "49b3de9ec5dc0a3417da371aab17d729997c15010e7fd24ff707773a33bddb64"
++
++[[package]]
++name = "rustc-hash"
++version = "1.1.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2"
++
++[[package]]
++name = "rustc_version"
++version = "0.2.3"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a"
++dependencies = [
++ "semver 0.9.0",
++]
++
++[[package]]
++name = "rustc_version"
++version = "0.4.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366"
++dependencies = [
++ "semver 1.0.10",
++]
++
++[[package]]
++name = "ryu"
++version = "1.0.10"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f3f6f92acf49d1b98f7a81226834412ada05458b7364277387724a237f062695"
++
++[[package]]
++name = "same-file"
++version = "1.0.6"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502"
++dependencies = [
++ "winapi-util",
++]
++
++[[package]]
++name = "scopeguard"
++version = "1.1.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd"
++
++[[package]]
++name = "semver"
++version = "0.9.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403"
++dependencies = [
++ "semver-parser",
++]
++
++[[package]]
++name = "semver"
++version = "1.0.10"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "a41d061efea015927ac527063765e73601444cdc344ba855bc7bd44578b25e1c"
++
++[[package]]
++name = "semver-parser"
++version = "0.7.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3"
++
++[[package]]
++name = "serde"
++version = "1.0.137"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "61ea8d54c77f8315140a05f4c7237403bf38b72704d031543aa1d16abbf517d1"
++
++[[package]]
++name = "serde_derive"
++version = "1.0.137"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "1f26faba0c3959972377d3b2d306ee9f71faee9714294e41bb777f83f88578be"
++dependencies = [
++ "proc-macro2",
++ "quote",
++ "syn",
++]
++
++[[package]]
++name = "serde_json"
++version = "1.0.81"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "9b7ce2b32a1aed03c558dc61a5cd328f15aff2dbc17daad8fb8af04d2100e15c"
++dependencies = [
++ "itoa 1.0.2",
++ "ryu",
++ "serde",
++]
++
++[[package]]
++name = "shlex"
++version = "0.1.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7fdf1b9db47230893d76faad238fd6097fd6d6a9245cd7a4d90dbd639536bbd2"
++
++[[package]]
++name = "smallvec"
++version = "0.6.14"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "b97fcaeba89edba30f044a10c6a3cc39df9c3f17d7cd829dd1446cab35f890e0"
++dependencies = [
++ "maybe-uninit",
++]
++
++[[package]]
++name = "strsim"
++version = "0.8.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
++
++[[package]]
++name = "strum"
++version = "0.18.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "57bd81eb48f4c437cadc685403cad539345bf703d78e63707418431cecd4522b"
++
++[[package]]
++name = "strum_macros"
++version = "0.18.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "87c85aa3f8ea653bfd3ddf25f7ee357ee4d204731f6aa9ad04002306f6e2774c"
++dependencies = [
++ "heck",
++ "proc-macro2",
++ "quote",
++ "syn",
++]
++
++[[package]]
++name = "syn"
++version = "1.0.96"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "0748dd251e24453cb8717f0354206b91557e4ec8703673a4b30208f2abaf1ebf"
++dependencies = [
++ "proc-macro2",
++ "quote",
++ "unicode-ident",
++]
++
++[[package]]
++name = "system-deps"
++version = "1.3.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "0f3ecc17269a19353b3558b313bba738b25d82993e30d62a18406a24aba4649b"
++dependencies = [
++ "heck",
++ "pkg-config",
++ "strum",
++ "strum_macros",
++ "thiserror",
++ "toml",
++ "version-compare",
++]
++
++[[package]]
++name = "termcolor"
++version = "1.1.3"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "bab24d30b911b2376f3a13cc2cd443142f0c81dda04c118693e35b3835757755"
++dependencies = [
++ "winapi-util",
++]
++
++[[package]]
++name = "textwrap"
++version = "0.11.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060"
++dependencies = [
++ "unicode-width",
++]
++
++[[package]]
++name = "thiserror"
++version = "1.0.31"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "bd829fe32373d27f76265620b5309d0340cb8550f523c1dda251d6298069069a"
++dependencies = [
++ "thiserror-impl",
++]
++
++[[package]]
++name = "thiserror-impl"
++version = "1.0.31"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "0396bc89e626244658bef819e22d0cc459e795a5ebe878e6ec336d1674a8d79a"
++dependencies = [
++ "proc-macro2",
++ "quote",
++ "syn",
++]
++
++[[package]]
++name = "tinytemplate"
++version = "1.2.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "be4d6b5f19ff7664e8c98d03e2139cb510db9b0a60b55f8e8709b689d939b6bc"
++dependencies = [
++ "serde",
++ "serde_json",
++]
++
++[[package]]
++name = "toml"
++version = "0.5.9"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "8d82e1a7758622a465f8cee077614c73484dac5b836c02ff6a40d5d1010324d7"
++dependencies = [
++ "serde",
++]
++
++[[package]]
++name = "trie-rs"
++version = "0.1.2-alpha.0"
++source = "git+https://github.com/davidventura/trie-rs#fab7d8cfca7cca35443d85e294655d6d73d85720"
++dependencies = [
++ "louds-rs",
++]
++
++[[package]]
++name = "unicode-ident"
++version = "1.0.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "d22af068fba1eb5edcb4aea19d382b2a3deb4c8f9d475c589b6ada9e0fd493ee"
++
++[[package]]
++name = "unicode-segmentation"
++version = "1.9.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7e8820f5d777f6224dc4be3632222971ac30164d4a258d595640799554ebfd99"
++
++[[package]]
++name = "unicode-width"
++version = "0.1.9"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "3ed742d4ea2bd1176e236172c8429aaf54486e7ac098db29ffe6529e0ce50973"
++
++[[package]]
++name = "vec_map"
++version = "0.8.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191"
++
++[[package]]
++name = "version-compare"
++version = "0.0.10"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "d63556a25bae6ea31b52e640d7c41d1ab27faba4ccb600013837a3d0b3994ca1"
++
++[[package]]
++name = "version_check"
++version = "0.9.4"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
++
++[[package]]
++name = "walkdir"
++version = "2.3.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "808cf2735cd4b6866113f648b791c6adc5714537bc222d9347bb203386ffda56"
++dependencies = [
++ "same-file",
++ "winapi",
++ "winapi-util",
++]
++
++[[package]]
++name = "which"
++version = "3.1.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "d011071ae14a2f6671d0b74080ae0cd8ebf3a6f8c9589a2cd45f23126fe29724"
++dependencies = [
++ "libc",
++]
++
++[[package]]
++name = "winapi"
++version = "0.3.9"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
++dependencies = [
++ "winapi-i686-pc-windows-gnu",
++ "winapi-x86_64-pc-windows-gnu",
++]
++
++[[package]]
++name = "winapi-i686-pc-windows-gnu"
++version = "0.4.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
++
++[[package]]
++name = "winapi-util"
++version = "0.1.5"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178"
++dependencies = [
++ "winapi",
++]
++
++[[package]]
++name = "winapi-x86_64-pc-windows-gnu"
++version = "0.4.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
++
++[[package]]
++name = "wk-we-adblock"
++version = "0.1.0"
++dependencies = [
++ "bindgen",
++ "criterion",
++ "gobject-sys",
++ "lazy_static",
++ "once_cell",
++ "pkg-config",
++ "rand",
++ "trie-rs",
++]
diff --git a/testing/wk-adblock/webkit2gtk-4.1.patch b/testing/wk-adblock/webkit2gtk-4.1.patch
new file mode 100644
index 00000000000..903a37fd2c1
--- /dev/null
+++ b/testing/wk-adblock/webkit2gtk-4.1.patch
@@ -0,0 +1,13 @@
+diff --git a/wk-we-adblock/build.rs b/wk-we-adblock/build.rs
+index f945e71..7153e04 100644
+--- a/wk-we-adblock/build.rs
++++ b/wk-we-adblock/build.rs
+@@ -5,7 +5,7 @@ use std::env;
+ use std::path::PathBuf;
+
+ fn main() {
+- let webkit2gtk = pkg_config::probe_library("webkit2gtk-4.0").unwrap();
++ let webkit2gtk = pkg_config::probe_library("webkit2gtk-4.1").unwrap();
+ let gtk = pkg_config::probe_library("gtk+-3.0").unwrap();
+
+ println!("cargo:rerun-if-changed=wrapper.h");
diff --git a/testing/wl-clipboard-x11/APKBUILD b/testing/wl-clipboard-x11/APKBUILD
index b3579950a3a..f38989d3c22 100644
--- a/testing/wl-clipboard-x11/APKBUILD
+++ b/testing/wl-clipboard-x11/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Robert Sacks <robert@sacks.email>
pkgname=wl-clipboard-x11
pkgver=5
-pkgrel=2
+pkgrel=3
pkgdesc="A wrapper to use wl-clipboard as a drop-in replacement to X11 clipboard tools"
url="https://github.com/brunelli/wl-clipboard-x11"
arch="noarch"
diff --git a/testing/wl-gammarelay/APKBUILD b/testing/wl-gammarelay/APKBUILD
index 367261debe8..33065da8cc5 100644
--- a/testing/wl-gammarelay/APKBUILD
+++ b/testing/wl-gammarelay/APKBUILD
@@ -1,18 +1,19 @@
# Contributor: Michał Polański <michal@polanski.me>
# Maintainer: Michał Polański <michal@polanski.me>
pkgname=wl-gammarelay
-pkgver=0.1.0
-pkgrel=3
+pkgver=0.1.1
+pkgrel=6
pkgdesc="Control color temperature and brightness under Wayland via DBus"
url="https://github.com/jeremija/wl-gammarelay"
license="GPL-3.0"
arch="all"
makedepends="go wayland-dev"
source="https://github.com/jeremija/wl-gammarelay/archive/v$pkgver/wl-gammarelay-$pkgver.tar.gz"
-options="!check" # no test suite
+options="!check net" # no test suite, fetch dependencies
-export GOFLAGS="$GOFLAGS -trimpath -mod=readonly -modcacherw"
-export GOPATH="$srcdir"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
build() {
make -C protocol
@@ -20,9 +21,9 @@ build() {
}
package() {
- install -Dm755 wl-gammarelay "$pkgdir"/usr/bin/wl-gammarelay
+ install -Dm755 wl-gammarelay "$pkgdir"/usr/bin/wl-gammarelay
}
sha512sums="
-170ddfcd52e3055803f365b0be7a1247b3afdbeed9993e0ef9a495bd3fec127075f3f324459beb5373eeeadb54e2eb28ff8b8e2e34e9b14e732d9b6690577602 wl-gammarelay-0.1.0.tar.gz
+94251802a30bc5ecad9755c95c740cf0c56b2483e6bd08d7a77c34ec87e13f7ebf8f029e408053e0e03f4ce202e36d24f23c0c463271bca680ad4fd72eec9391 wl-gammarelay-0.1.1.tar.gz
"
diff --git a/testing/wlavu/APKBUILD b/testing/wlavu/APKBUILD
index 0275afc9996..aa8ecf64f80 100644
--- a/testing/wlavu/APKBUILD
+++ b/testing/wlavu/APKBUILD
@@ -3,7 +3,7 @@
pkgname=wlavu
pkgver=0_git20201101
_commit="665d39e70c16521cb6f883f25b8c5c4eeb863d44"
-pkgrel=0
+pkgrel=1
pkgdesc="PipeWire VU-meter for Wayland"
url="https://git.sr.ht/~kennylevinsen/wlavu"
license="MIT"
@@ -20,7 +20,7 @@ builddir="$srcdir/$pkgname-$_commit"
build() {
abuild-meson . output
- meson compile ${JOBS:+-j ${JOBS}} -C output
+ meson compile -C output
}
package() {
diff --git a/testing/wlc/APKBUILD b/testing/wlc/APKBUILD
deleted file mode 100644
index fcb684f214c..00000000000
--- a/testing/wlc/APKBUILD
+++ /dev/null
@@ -1,30 +0,0 @@
-# Contributor: knuxify <knuxify@gmail.com>
-# Maintainer: knuxify <knuxify@gmail.com>
-pkgname=wlc
-pkgver=1.13
-pkgrel=0
-pkgdesc="Weblate command line client"
-url="https://weblate.org"
-arch="noarch"
-license="GPL-3.0-or-later"
-depends="python3 py3-argcomplete py3-dateutil py3-requests py3-xdg"
-makedepends="py3-setuptools"
-checkdepends="py3-pytest py3-responses"
-source="https://github.com/WeblateOrg/wlc/archive/refs/tags/$pkgver/wlc-$pkgver.tar.gz"
-
-build() {
- python3 setup.py build
-}
-
-check() {
- pytest wlc
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
- rm -r "$pkgdir"/usr/lib/python3.*/site-packages/wlc/test_*
-}
-
-sha512sums="
-a6de0a1f6e6298d980341bf9e3801a9ba310efe0c70105a8cc561552f778f2c4a8bd5d6c77c8d7588e709dc28129ee258f977785fe0eff916616c682f3d6cb32 wlc-1.13.tar.gz
-"
diff --git a/testing/wlclock/APKBUILD b/testing/wlclock/APKBUILD
index 1e895a2db17..83f308cb656 100644
--- a/testing/wlclock/APKBUILD
+++ b/testing/wlclock/APKBUILD
@@ -21,7 +21,7 @@ options="!check" # no test suite
build() {
abuild-meson . output
- meson compile ${JOBS:+-j ${JOBS}} -C output
+ meson compile -C output
}
package() {
diff --git a/testing/wlopm/APKBUILD b/testing/wlopm/APKBUILD
index 5976fc118dc..de77e83177a 100644
--- a/testing/wlopm/APKBUILD
+++ b/testing/wlopm/APKBUILD
@@ -1,8 +1,7 @@
# Contributor: Nulo <alpine@nulo.in>
# Maintainer: Nulo <alpine@nulo.in>
pkgname=wlopm
-pkgver=0_git20220103
-_commit=06ae5c5f6efbea3ffe058dc1c5066c12e3019d33
+pkgver=0.1.0
pkgrel=0
pkgdesc="Wayland output power management"
url="https://sr.ht/~leon_plickat/wlopm/"
@@ -11,8 +10,8 @@ license="GPL-3.0-or-later"
options="!check" # No test suite
makedepends="wayland-dev"
subpackages="$pkgname-doc"
-source="$pkgname-$_commit.tar.gz::https://git.sr.ht/~leon_plickat/wlopm/archive/$_commit.tar.gz"
-builddir="$srcdir/$pkgname-$_commit"
+source="$pkgname-$pkgver.tar.gz::https://git.sr.ht/~leon_plickat/wlopm/archive/v$pkgver.tar.gz"
+builddir="$srcdir/$pkgname-v$pkgver"
build() {
make
@@ -23,5 +22,5 @@ package() {
}
sha512sums="
-2c9b1bff911772294927190dbc46529199cc4dff47680467b7242e7dd5b54fcd371a554599a9e236161aa9638ee895032ff5c88e1cc607a79d668171f1b38e0c wlopm-06ae5c5f6efbea3ffe058dc1c5066c12e3019d33.tar.gz
+a9690051786cfef1f96b574c8afaf35a7e234c0fa3b35b210be1fc1a963304c94f77d60935b32030cc641e87279d58b74f55dd3a6a4fcef905fb9432dd58ecab wlopm-0.1.0.tar.gz
"
diff --git a/testing/wlrobs/APKBUILD b/testing/wlrobs/APKBUILD
index 00947f859a6..fa346994603 100644
--- a/testing/wlrobs/APKBUILD
+++ b/testing/wlrobs/APKBUILD
@@ -1,10 +1,10 @@
# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
pkgname=wlrobs
pkgver=1.0
-pkgrel=2
+pkgrel=4
pkgdesc="obs-studio plugin that allows you to screen capture on wlroots"
url="https://hg.sr.ht/~scoopta/wlrobs"
-arch="all"
+arch="all !riscv64 !ppc64le" # obs -> luajit
license="GPL-3.0-only"
makedepends="
libdrm-dev
@@ -31,11 +31,13 @@ build() {
abuild-meson \
-Duse_dmabuf=true \
build
- meson compile ${JOBS:+-j ${JOBS}} -C build
+ meson compile -C build
}
package() {
DESTDIR="$pkgdir" meson install --no-rebuild -C build
}
-sha512sums="801b95edc426d1c85567ff3dff5ae483090ba9e38e11564b60305a41096e496db2da27c472df92b22c2bd44be717432a9a62e051125eba77b30d2b57326f8683 wlrobs-1.0.tar.gz"
+sha512sums="
+801b95edc426d1c85567ff3dff5ae483090ba9e38e11564b60305a41096e496db2da27c472df92b22c2bd44be717432a9a62e051125eba77b30d2b57326f8683 wlrobs-1.0.tar.gz
+"
diff --git a/testing/wlroots0.12/0001-Revert-layer-shell-error-on-0-dimension-without-anch.patch b/testing/wlroots0.12/0001-Revert-layer-shell-error-on-0-dimension-without-anch.patch
new file mode 100644
index 00000000000..15d492cd0c9
--- /dev/null
+++ b/testing/wlroots0.12/0001-Revert-layer-shell-error-on-0-dimension-without-anch.patch
@@ -0,0 +1,51 @@
+Upstream: no
+
+From e43ba0857cb39eae30b5e02cb87723e6456dc61e Mon Sep 17 00:00:00 2001
+From: Oliver Smith <ollieparanoid@postmarketos.org>
+Date: Tue, 10 Nov 2020 20:57:04 +0100
+Subject: [PATCH] Revert "layer-shell: error on 0 dimension without anchors"
+
+This reverts commit 8dec751a6d84335fb04288b8efab6dd5c90288d3, which
+introduced a consistency check:
+https://github.com/swaywm/wlroots/commit/8dec751a6d84335fb04288b8efab6dd5c90288d3
+
+Currently this causes phosh to crash, so let's revert it temporarily:
+https://source.puri.sm/Librem5/phosh/-/issues/422
+---
+ types/wlr_layer_shell_v1.c | 20 --------------------
+ 1 file changed, 20 deletions(-)
+
+diff --git a/types/wlr_layer_shell_v1.c b/types/wlr_layer_shell_v1.c
+index bc681117..d83b22b8 100644
+--- a/types/wlr_layer_shell_v1.c
++++ b/types/wlr_layer_shell_v1.c
+@@ -307,26 +307,6 @@ static void layer_surface_role_commit(struct wlr_surface *wlr_surface) {
+ return;
+ }
+
+- const uint32_t horiz = ZWLR_LAYER_SURFACE_V1_ANCHOR_LEFT |
+- ZWLR_LAYER_SURFACE_V1_ANCHOR_RIGHT;
+- if (surface->client_pending.desired_width == 0 &&
+- (surface->client_pending.anchor & horiz) != horiz) {
+- wl_resource_post_error(surface->resource,
+- ZWLR_LAYER_SURFACE_V1_ERROR_INVALID_SIZE,
+- "width 0 requested without setting left and right anchors");
+- return;
+- }
+-
+- const uint32_t vert = ZWLR_LAYER_SURFACE_V1_ANCHOR_TOP |
+- ZWLR_LAYER_SURFACE_V1_ANCHOR_BOTTOM;
+- if (surface->client_pending.desired_height == 0 &&
+- (surface->client_pending.anchor & vert) != vert) {
+- wl_resource_post_error(surface->resource,
+- ZWLR_LAYER_SURFACE_V1_ERROR_INVALID_SIZE,
+- "height 0 requested without setting top and bottom anchors");
+- return;
+- }
+-
+ if (surface->closed) {
+ // Ignore commits after the compositor has closed it
+ return;
+--
+2.20.1
+
diff --git a/testing/wlroots0.12/APKBUILD b/testing/wlroots0.12/APKBUILD
new file mode 100644
index 00000000000..850ef11ba64
--- /dev/null
+++ b/testing/wlroots0.12/APKBUILD
@@ -0,0 +1,52 @@
+# Contributor: Henrik Riomar <henrik.riomar@gmail.com>
+# Maintainer:
+pkgname=wlroots0.12
+pkgver=0.12.0
+pkgrel=1
+pkgdesc="modular Wayland compositor library (version 0.12.0 for phoc)"
+url="https://github.com/swaywm/wlroots"
+arch="all"
+license="MIT"
+options="!check" # contains no test suite
+makedepends="
+ elogind-dev
+ eudev-dev
+ libcap-dev
+ libinput-dev
+ libxcb-dev
+ libxkbcommon-dev
+ mesa-dev
+ meson
+ ninja
+ pixman-dev
+ wayland-dev
+ wayland-protocols
+ xcb-util-image-dev
+ xcb-util-wm-dev
+ xkeyboard-config-dev
+ "
+subpackages="$pkgname-dbg $pkgname-dev"
+source="$pkgname-$pkgver.tar.gz::https://github.com/swaywm/wlroots/archive/$pkgver.tar.gz
+ 0001-Revert-layer-shell-error-on-0-dimension-without-anch.patch
+ "
+builddir="$srcdir/wlroots-$pkgver"
+
+replaces="wlroots"
+
+build() {
+ abuild-meson \
+ -Dlogind=enabled \
+ -Dlogind-provider=elogind \
+ -Dexamples=false \
+ . build
+ meson compile -C build
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C build
+}
+
+sha512sums="
+560eae30932b777c1f07fb44592d5601c5d10ef74b31b6b9e4166a14caadab2bfa88d39282f159785d4c7f22f78d204f9bb7fab65d58afaf14b72a8486f9b415 wlroots0.12-0.12.0.tar.gz
+5547741b35fc8364360dabb93a6f988b6be9299b77ee4adf2c7edfcd4a3c97f2f0cbbd19a41548254fe5d2327ed45300824920ce3c9d0cb0846a3ba5b5a83e02 0001-Revert-layer-shell-error-on-0-dimension-without-anch.patch
+"
diff --git a/testing/wlroots0.15/0001-wlr_output_commit_state_clear_back_buffer.patch b/testing/wlroots0.15/0001-wlr_output_commit_state_clear_back_buffer.patch
new file mode 100644
index 00000000000..5e4196762c9
--- /dev/null
+++ b/testing/wlroots0.15/0001-wlr_output_commit_state_clear_back_buffer.patch
@@ -0,0 +1,30 @@
+From 7b8609eeb67bfea90e2a20409f870fd229af9a5d Mon Sep 17 00:00:00 2001
+From: Alexander Orzechowski <orzechowski.alexander@gmail.com>
+Date: Sat, 4 Jun 2022 18:18:02 -0400
+Subject: [PATCH] wlr_output_commit_state: Make sure to clear the back buffer
+
+Fixes: #3445
+---
+ types/output/output.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/types/output/output.c b/types/output/output.c
+index 85590ab63..4cf0fa8f5 100644
+--- a/types/output/output.c
++++ b/types/output/output.c
+@@ -654,10 +654,12 @@ bool wlr_output_test(struct wlr_output *output) {
+ bool wlr_output_commit(struct wlr_output *output) {
+ if (!output_basic_test(output)) {
+ wlr_log(WLR_ERROR, "Basic output test failed for %s", output->name);
++ output_clear_back_buffer(output);
+ return false;
+ }
+
+ if (!output_ensure_buffer(output)) {
++ output_clear_back_buffer(output);
+ return false;
+ }
+
+--
+GitLab
+
diff --git a/testing/wlroots0.15/APKBUILD b/testing/wlroots0.15/APKBUILD
new file mode 100644
index 00000000000..9cc5e7a7ddf
--- /dev/null
+++ b/testing/wlroots0.15/APKBUILD
@@ -0,0 +1,57 @@
+# Contributor: Henrik Riomar <henrik.riomar@gmail.com>
+# Contributor:
+# Maintainer: Michał Polański <michal@polanski.me>
+pkgname=wlroots0.15
+pkgver=0.15.1
+pkgrel=6
+pkgdesc="Modular Wayland compositor library"
+url="https://gitlab.freedesktop.org/wlroots/wlroots"
+license="MIT"
+arch="all"
+makedepends="
+ eudev-dev
+ glslang-dev
+ hwdata-dev
+ libcap-dev
+ libinput-dev
+ libseat-dev
+ libxcb-dev
+ libxkbcommon-dev
+ mesa-dev
+ meson
+ ninja
+ pixman-dev
+ vulkan-loader-dev
+ wayland-dev
+ wayland-protocols
+ xcb-util-image-dev
+ xcb-util-renderutil-dev
+ xcb-util-wm-dev
+ xkeyboard-config-dev
+ xwayland-dev
+ "
+subpackages="$pkgname-dbg $pkgname-dev"
+source="https://gitlab.freedesktop.org/wlroots/wlroots/-/archive/$pkgver/wlroots-$pkgver.tar.gz
+ 0001-wlr_output_commit_state_clear_back_buffer.patch
+ "
+options="!check" # no test suite
+builddir="$srcdir/wlroots-$pkgver"
+
+replaces="wlroots"
+
+build() {
+ abuild-meson \
+ -Db_lto=true \
+ -Dexamples=false \
+ . build
+ meson compile -C build
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C build
+}
+
+sha512sums="
+6228160f2f350a406c612f1048d7075cf2f78206cc84bc16f889d5d0acd614f9e98845fffed03d7067cfdbd7558b77fcc5d8cedc3868d866e476523126a63677 wlroots-0.15.1.tar.gz
+5e163ed2b918287397cd7485207ea3ee19ef5585771c709f937b4dc442aa86153d9c8414295d336a9379896e1c9728614e6126d768c3efa6da41ef961d480970 0001-wlr_output_commit_state_clear_back_buffer.patch
+"
diff --git a/testing/wlvncc/APKBUILD b/testing/wlvncc/APKBUILD
new file mode 100644
index 00000000000..1d07c11d133
--- /dev/null
+++ b/testing/wlvncc/APKBUILD
@@ -0,0 +1,49 @@
+# Contributor: Maxim Karasev <mxkrsv@disroot.org>
+# Maintainer: Maxim Karasev <mxkrsv@disroot.org>
+pkgname=wlvncc
+pkgver=0.0.0_git20230105
+_commit=2b9a886edd38204ef36e9f9f65dd32aaa3784530
+pkgrel=0
+pkgdesc="wayland native VNC client"
+url="https://github.com/any1/wlvncc"
+arch="all"
+license="ISC AND GPL-2.0-or-later"
+makedepends="
+ aml-dev
+ cyrus-sasl-dev
+ ffmpeg-dev
+ gnutls-dev
+ libdrm-dev
+ libgcrypt-dev
+ libjpeg-turbo-dev
+ libpng-dev
+ libxkbcommon-dev
+ lzo-dev
+ mesa-dev
+ meson
+ openssl-dev
+ pixman-dev
+ wayland-dev
+ zlib-dev
+ "
+source="https://github.com/any1/wlvncc/archive/$_commit/wlvncc-$pkgver.tar.gz"
+builddir="$srcdir/wlvncc-$_commit"
+
+build() {
+ abuild-meson \
+ -Db_lto=true \
+ . output
+ meson compile -C output
+}
+
+check() {
+ meson test --no-rebuild --print-errorlogs -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+sha512sums="
+67fbd7c5c513113f6660d6711b09573de4bbd305c4f64ff4cc833864cf66c296ee23209a0ce4af6edb8e58ced462477f2105c1963e80471266d31a3ccc629db9 wlvncc-0.0.0_git20230105.tar.gz
+"
diff --git a/testing/wmi-client/APKBUILD b/testing/wmi-client/APKBUILD
index 96d09cce8e3..03b6879b7ea 100644
--- a/testing/wmi-client/APKBUILD
+++ b/testing/wmi-client/APKBUILD
@@ -3,7 +3,7 @@
pkgname=wmi-client
_pkgname="${pkgname/-*/}"
pkgver=1.3.16
-pkgrel=3
+pkgrel=4
pkgdesc="DCOM/WMI client implementation"
url="https://www.orvant.com/packages"
arch="all !aarch64"
diff --git a/testing/wmutils/APKBUILD b/testing/wmutils/APKBUILD
index f6dc47d2874..82d838b0246 100644
--- a/testing/wmutils/APKBUILD
+++ b/testing/wmutils/APKBUILD
@@ -1,6 +1,6 @@
-# Maintainer:
+# Maintainer: John Vogel <jvogel4@stny.rr.com>
pkgname=wmutils
-pkgver=1.5
+pkgver=1.7
pkgrel=1
pkgdesc="Set of X11 windows manipulation tools"
options="!check" # No testsuite
@@ -20,4 +20,6 @@ package() {
make DESTDIR="$pkgdir" PREFIX=/usr MANPREFIX=/usr/share/man install
}
-sha512sums="24989f53f9b42b927d285c25bcf25e09d89347b2d53232683c5de07318a4e3e535b87590bfcdd31309e63e1f0e85f6cdf8db7c32b039db883d6240bb210c78c2 wmutils-1.5.tar.gz"
+sha512sums="
+726fb328f503c6338f3b855ea77d797db647a78d1de02cfbb3778f27d10dbaa6cec14f46558d46da866b33467a1ab7871634075800d8f2ef00d3e0b5d331c65a wmutils-1.7.tar.gz
+"
diff --git a/testing/wok/APKBUILD b/testing/wok/APKBUILD
index 55dc038cf34..6b3578f32ff 100644
--- a/testing/wok/APKBUILD
+++ b/testing/wok/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=wok
pkgver=3.0.0
-pkgrel=2
+pkgrel=6
pkgdesc="Webserver of Kimchi - a cherrypy framework for multi-purpose plug-ins"
url="https://kimchi-project.github.io/wok/"
# s390x: blocked by polkist (py3-libvirt -> libvirt -> polkit)
@@ -10,13 +10,13 @@ url="https://kimchi-project.github.io/wok/"
arch="noarch !s390x !riscv64"
license="Apache-2.0 AND LGPL-2.1-only"
depends="python3 nginx logrotate py3-cherrypy py3-jsonschema
- py3-pyparted py3-pyldap py3-psutil py3-m2crypto py-cheetah
+ py3-pyparted py3-ldap py3-psutil py3-m2crypto py-cheetah
py3-augeas py3-pam py3-lxml py3-libvirt py3-yaml
- ttf-opensans ttf-font-awesome"
+ font-opensans font-awesome-free"
makedepends="automake autoconf libtool gettext-dev
python3-dev py3-pyflakes libxslt py3-setuptools websockify py3-mock"
options="!check" # depends on jaraco
-subpackages="$pkgname-lang $pkgname-doc"
+subpackages="$pkgname-lang $pkgname-doc $pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/kimchi-project/wok/archive/$pkgver.tar.gz
wokd.initd
alpine-specific-pushserver.patch
diff --git a/testing/wol/APKBUILD b/testing/wol/APKBUILD
index 6979abd976a..fcb0fd348e1 100644
--- a/testing/wol/APKBUILD
+++ b/testing/wol/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=wol
pkgver=0.7.1
-pkgrel=0
+pkgrel=2
pkgdesc="Wake On LAN functionality in a small program"
url="https://wake-on-lan.sourceforge.io/"
arch="all"
@@ -27,7 +27,8 @@ build() {
--prefix=/usr \
--sysconfdir=/etc \
--mandir=/usr/share/man \
- --localstatedir=/var
+ --localstatedir=/var \
+ --infodir=/usr/share/info
make
}
@@ -39,6 +40,7 @@ package() {
make DESTDIR="$pkgdir" install
rm -rf "$pkgdir"/usr/lib/charset.alias
+ rm -rf "$pkgdir"/usr/share/locale/locale.alias
rmdir -p "$pkgdir"/usr/lib 2>/dev/null || true
}
diff --git a/testing/wolfssh/APKBUILD b/testing/wolfssh/APKBUILD
new file mode 100644
index 00000000000..fcc38d2aa38
--- /dev/null
+++ b/testing/wolfssh/APKBUILD
@@ -0,0 +1,54 @@
+# Contributor: Jakub Jirutka <jakub@jirutka.cz>
+# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
+pkgname=wolfssh
+pkgver=1.4.17
+_pkgver=$pkgver-stable
+pkgrel=0
+pkgdesc="Small, fast, portable SSH implementation, including SCP and SFTP"
+url="https://www.wolfssl.com"
+arch="all"
+license="GPL-3.0-only"
+depends_dev="wolfssl-dev"
+makedepends="
+ $depends_dev
+ autoconf
+ automake
+ libtool
+ "
+checkdepends="bash"
+subpackages="$pkgname-dev"
+source="https://github.com/wolfSSL/wolfssh/archive/v$_pkgver/$pkgname-$_pkgver.tar.gz"
+builddir="$srcdir/$pkgname-$_pkgver"
+
+case "$CARCH" in
+ s390x) options="!check";; # tests fail
+esac
+
+prepare() {
+ default_prepare
+
+ ./autogen.sh
+}
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --enable-distro
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+8ade29fee96b36f1fbfd275ded26b4b1e16227e7c6a0a8ddb8a376977bd0f91ecb2f5e3a812b9bf0e1a5080e85ee1d776de5950fa76e4fe87418a82187dc03bc wolfssh-1.4.17-stable.tar.gz
+"
diff --git a/testing/woodpecker/0001-we-use-the-prebuild-webui.patch b/testing/woodpecker/0001-we-use-the-prebuild-webui.patch
new file mode 100644
index 00000000000..5fa28dc9169
--- /dev/null
+++ b/testing/woodpecker/0001-we-use-the-prebuild-webui.patch
@@ -0,0 +1,25 @@
+From bfda0d8509d3ce9e3e5e2b2744b9aa12fcd01f40 Mon Sep 17 00:00:00 2001
+From: 6543 <6543@obermui.de>
+Date: Sun, 21 Jan 2024 23:37:16 +0100
+Subject: [PATCH] we use the prebuild webui
+
+---
+ Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Makefile b/Makefile
+index 0b0f700f5..3d41d0193 100644
+--- a/Makefile
++++ b/Makefile
+@@ -185,7 +185,7 @@ test: test-agent test-server test-server-datastore test-cli test-lib test-ui ##
+ build-ui: ## Build UI
+ (cd web/; pnpm install --frozen-lockfile; pnpm build)
+
+-build-server: build-ui generate-swagger ## Build server
++build-server: generate-swagger ## Build server
+ CGO_ENABLED=${CGO_ENABLED} GOOS=${TARGETOS} GOARCH=${TARGETARCH} go build -ldflags '${LDFLAGS}' -o dist/woodpecker-server${BIN_SUFFIX} go.woodpecker-ci.org/woodpecker/v2/cmd/server
+
+ build-agent: ## Build agent
+--
+2.43.0
+
diff --git a/testing/woodpecker/APKBUILD b/testing/woodpecker/APKBUILD
new file mode 100644
index 00000000000..aa5a5cb9a69
--- /dev/null
+++ b/testing/woodpecker/APKBUILD
@@ -0,0 +1,74 @@
+# Contributor: Carlo Landmeter <clandmeter@alpinelinux.org>
+# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
+# Maintainer: Will Sinatra <wpsinatra@gmail.com>
+pkgname=woodpecker
+pkgver=2.3.0
+pkgrel=3
+pkgdesc="Simple yet powerful CI/CD engine with great extensibility"
+url="https://woodpecker-ci.org"
+arch="all"
+license="Apache-2.0"
+pkgusers="woodpecker"
+pkggroups="woodpecker"
+makedepends="
+ go
+ go-swag
+ sqlite-dev
+ "
+subpackages="$pkgname-doc $pkgname-openrc"
+install="$pkgname.pre-install"
+source="$pkgname-$pkgver.tar.gz::https://github.com/woodpecker-ci/woodpecker/releases/download/v$pkgver/woodpecker-src.tar.gz
+ 0001-we-use-the-prebuild-webui.patch
+ woodpecker.initd
+ woodpecker.confd
+ woodpecker.conf
+ fix-cgo.patch
+ "
+
+export GOFLAGS="$GOFLAGS -tags=libsqlite3"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+unpack() {
+ mkdir -p $builddir
+ tar -xzvf $srcdir/$pkgname-$pkgver.tar.gz -C $builddir
+}
+
+build() {
+ export TARGETARCH="$(go env GOHOSTARCH)"
+ make build -j1 STATIC_BUILD=false
+}
+
+check() {
+ go test ./...
+}
+
+package() {
+ install -Dm755 "$builddir"/dist/woodpecker-server \
+ "$pkgdir"/usr/bin/woodpecker-server
+ install -Dm755 "$builddir"/dist/woodpecker-agent \
+ "$pkgdir"/usr/bin/woodpecker-agent
+ install -Dm755 "$builddir"/dist/woodpecker-cli \
+ "$pkgdir"/usr/bin/woodpecker-cli
+ install -Dm 644 "$builddir"/LICENSE \
+ "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+
+ install -Dm755 "$srcdir"/woodpecker.initd \
+ "$pkgdir"/etc/init.d/woodpecker
+ install -Dm644 "$srcdir"/woodpecker.confd \
+ "$pkgdir"/etc/conf.d/woodpecker
+
+ install -Dm640 -o woodpecker -g woodpecker "$srcdir"/woodpecker.conf \
+ "$pkgdir"/etc/woodpecker.conf
+ install -dm755 -o woodpecker -g woodpecker "$pkgdir"/var/lib/woodpecker
+}
+
+sha512sums="
+3dc50ac720dfac5f7f558b3c0168a186b35751741af889d1330f968e8d7c3a34f6451fada002987c22336d14d34c952a94928a3733402f7bb58279bf4f0b9201 woodpecker-2.3.0.tar.gz
+aecf28a0e893ef39f4a9c834aab6d9cdfef5a7f01ba5918134e2e7f3784ae102e642b9e247957da9c480ac7486b5f82027bff8df3033e90a503de57597b69917 0001-we-use-the-prebuild-webui.patch
+69fe477f805dcb71b0220b9af2b3d0226b2e92f3c46764f37a139bb7303ad7cdb1caa2a711d1f9d22fccb357bbfbecb1c6cba2033c9101a11c0bb67b405c3e55 woodpecker.initd
+0be91432e730cb0ad3663bebe7a257437cbefe5fa5c2f3145d621545d6cd2ff89ae41f338a5874166d2b03dc8caab73d26cd4322ed1122d4949cae5d6002b823 woodpecker.confd
+cb15d7ff290d9b68d5f63c20401ab622c8a7067d336841c876a6d3325e9d2a3ede3a85b792131d7d77a4126cbdb6f30a5a6113468f1efd736a2c1bbf2bfefbe4 woodpecker.conf
+2e7a002378d9005a775efee97012ccf0bf1724382e89e4ff0a75cc9f29c57423d820b0ebdd3b72d5176a6e98ff82b60c9d98671d70e0c24b3e131ce513a520cb fix-cgo.patch
+"
diff --git a/testing/woodpecker/fix-cgo.patch b/testing/woodpecker/fix-cgo.patch
new file mode 100644
index 00000000000..74d3ec18103
--- /dev/null
+++ b/testing/woodpecker/fix-cgo.patch
@@ -0,0 +1,53 @@
+--- a/Makefile
++++ b/Makefile
+@@ -189,10 +189,10 @@
+ CGO_ENABLED=${CGO_ENABLED} GOOS=${TARGETOS} GOARCH=${TARGETARCH} go build -ldflags '${LDFLAGS}' -o dist/woodpecker-server${BIN_SUFFIX} go.woodpecker-ci.org/woodpecker/v2/cmd/server
+
+ build-agent: ## Build agent
+- CGO_ENABLED=0 GOOS=${TARGETOS} GOARCH=${TARGETARCH} go build -ldflags '${LDFLAGS}' -o dist/woodpecker-agent${BIN_SUFFIX} go.woodpecker-ci.org/woodpecker/v2/cmd/agent
++ CGO_ENABLED=${CGO_ENABLED} GOOS=${TARGETOS} GOARCH=${TARGETARCH} go build -ldflags '${LDFLAGS}' -o dist/woodpecker-agent${BIN_SUFFIX} go.woodpecker-ci.org/woodpecker/v2/cmd/agent
+
+ build-cli: ## Build cli
+- CGO_ENABLED=0 GOOS=${TARGETOS} GOARCH=${TARGETARCH} go build -ldflags '${LDFLAGS}' -o dist/woodpecker-cli${BIN_SUFFIX} go.woodpecker-ci.org/woodpecker/v2/cmd/cli
++ CGO_ENABLED=${CGO_ENABLED} GOOS=${TARGETOS} GOARCH=${TARGETARCH} go build -ldflags '${LDFLAGS}' -o dist/woodpecker-cli${BIN_SUFFIX} go.woodpecker-ci.org/woodpecker/v2/cmd/cli
+
+ build-tarball: ## Build tar archive
+ mkdir -p dist && tar chzvf dist/woodpecker-src.tar.gz \
+@@ -244,12 +244,12 @@
+
+ release-agent: ## Create agent binaries for release
+ # compile
+- GOOS=linux GOARCH=amd64 CGO_ENABLED=0 go build -ldflags '${LDFLAGS}' -o dist/agent/linux_amd64/woodpecker-agent go.woodpecker-ci.org/woodpecker/v2/cmd/agent
+- GOOS=linux GOARCH=arm64 CGO_ENABLED=0 go build -ldflags '${LDFLAGS}' -o dist/agent/linux_arm64/woodpecker-agent go.woodpecker-ci.org/woodpecker/v2/cmd/agent
+- GOOS=linux GOARCH=arm CGO_ENABLED=0 go build -ldflags '${LDFLAGS}' -o dist/agent/linux_arm/woodpecker-agent go.woodpecker-ci.org/woodpecker/v2/cmd/agent
+- GOOS=windows GOARCH=amd64 CGO_ENABLED=0 go build -ldflags '${LDFLAGS}' -o dist/agent/windows_amd64/woodpecker-agent.exe go.woodpecker-ci.org/woodpecker/v2/cmd/agent
+- GOOS=darwin GOARCH=amd64 CGO_ENABLED=0 go build -ldflags '${LDFLAGS}' -o dist/agent/darwin_amd64/woodpecker-agent go.woodpecker-ci.org/woodpecker/v2/cmd/agent
+- GOOS=darwin GOARCH=arm64 CGO_ENABLED=0 go build -ldflags '${LDFLAGS}' -o dist/agent/darwin_arm64/woodpecker-agent go.woodpecker-ci.org/woodpecker/v2/cmd/agent
++ GOOS=linux GOARCH=amd64 CGO_ENABLED=${CGO_ENABLED} go build -ldflags '${LDFLAGS}' -o dist/agent/linux_amd64/woodpecker-agent go.woodpecker-ci.org/woodpecker/v2/cmd/agent
++ GOOS=linux GOARCH=arm64 CGO_ENABLED=${CGO_ENABLED} go build -ldflags '${LDFLAGS}' -o dist/agent/linux_arm64/woodpecker-agent go.woodpecker-ci.org/woodpecker/v2/cmd/agent
++ GOOS=linux GOARCH=arm CGO_ENABLED=${CGO_ENABLED} go build -ldflags '${LDFLAGS}' -o dist/agent/linux_arm/woodpecker-agent go.woodpecker-ci.org/woodpecker/v2/cmd/agent
++ GOOS=windows GOARCH=amd64 CGO_ENABLED=${CGO_ENABLED} go build -ldflags '${LDFLAGS}' -o dist/agent/windows_amd64/woodpecker-agent.exe go.woodpecker-ci.org/woodpecker/v2/cmd/agent
++ GOOS=darwin GOARCH=amd64 CGO_ENABLED=${CGO_ENABLED} go build -ldflags '${LDFLAGS}' -o dist/agent/darwin_amd64/woodpecker-agent go.woodpecker-ci.org/woodpecker/v2/cmd/agent
++ GOOS=darwin GOARCH=arm64 CGO_ENABLED=${CGO_ENABLED} go build -ldflags '${LDFLAGS}' -o dist/agent/darwin_arm64/woodpecker-agent go.woodpecker-ci.org/woodpecker/v2/cmd/agent
+ # tar binary files
+ tar -cvzf dist/woodpecker-agent_linux_amd64.tar.gz -C dist/agent/linux_amd64 woodpecker-agent
+ tar -cvzf dist/woodpecker-agent_linux_arm64.tar.gz -C dist/agent/linux_arm64 woodpecker-agent
+@@ -260,12 +260,12 @@
+
+ release-cli: ## Create cli binaries for release
+ # compile
+- GOOS=linux GOARCH=amd64 CGO_ENABLED=0 go build -ldflags '${LDFLAGS}' -o dist/cli/linux_amd64/woodpecker-cli go.woodpecker-ci.org/woodpecker/v2/cmd/cli
+- GOOS=linux GOARCH=arm64 CGO_ENABLED=0 go build -ldflags '${LDFLAGS}' -o dist/cli/linux_arm64/woodpecker-cli go.woodpecker-ci.org/woodpecker/v2/cmd/cli
+- GOOS=linux GOARCH=arm CGO_ENABLED=0 go build -ldflags '${LDFLAGS}' -o dist/cli/linux_arm/woodpecker-cli go.woodpecker-ci.org/woodpecker/v2/cmd/cli
+- GOOS=windows GOARCH=amd64 CGO_ENABLED=0 go build -ldflags '${LDFLAGS}' -o dist/cli/windows_amd64/woodpecker-cli.exe go.woodpecker-ci.org/woodpecker/v2/cmd/cli
+- GOOS=darwin GOARCH=amd64 CGO_ENABLED=0 go build -ldflags '${LDFLAGS}' -o dist/cli/darwin_amd64/woodpecker-cli go.woodpecker-ci.org/woodpecker/v2/cmd/cli
+- GOOS=darwin GOARCH=arm64 CGO_ENABLED=0 go build -ldflags '${LDFLAGS}' -o dist/cli/darwin_arm64/woodpecker-cli go.woodpecker-ci.org/woodpecker/v2/cmd/cli
++ GOOS=linux GOARCH=amd64 CGO_ENABLED=${CGO_ENABLED} go build -ldflags '${LDFLAGS}' -o dist/cli/linux_amd64/woodpecker-cli go.woodpecker-ci.org/woodpecker/v2/cmd/cli
++ GOOS=linux GOARCH=arm64 CGO_ENABLED=${CGO_ENABLED} go build -ldflags '${LDFLAGS}' -o dist/cli/linux_arm64/woodpecker-cli go.woodpecker-ci.org/woodpecker/v2/cmd/cli
++ GOOS=linux GOARCH=arm CGO_ENABLED=${CGO_ENABLED} go build -ldflags '${LDFLAGS}' -o dist/cli/linux_arm/woodpecker-cli go.woodpecker-ci.org/woodpecker/v2/cmd/cli
++ GOOS=windows GOARCH=amd64 CGO_ENABLED=${CGO_ENABLED} go build -ldflags '${LDFLAGS}' -o dist/cli/windows_amd64/woodpecker-cli.exe go.woodpecker-ci.org/woodpecker/v2/cmd/cli
++ GOOS=darwin GOARCH=amd64 CGO_ENABLED=${CGO_ENABLED} go build -ldflags '${LDFLAGS}' -o dist/cli/darwin_amd64/woodpecker-cli go.woodpecker-ci.org/woodpecker/v2/cmd/cli
++ GOOS=darwin GOARCH=arm64 CGO_ENABLED=${CGO_ENABLED} go build -ldflags '${LDFLAGS}' -o dist/cli/darwin_arm64/woodpecker-cli go.woodpecker-ci.org/woodpecker/v2/cmd/cli
+ # tar binary files
+ tar -cvzf dist/woodpecker-cli_linux_amd64.tar.gz -C dist/cli/linux_amd64 woodpecker-cli
+ tar -cvzf dist/woodpecker-cli_linux_arm64.tar.gz -C dist/cli/linux_arm64 woodpecker-cli
diff --git a/testing/woodpecker/woodpecker.conf b/testing/woodpecker/woodpecker.conf
new file mode 100644
index 00000000000..d572938d207
--- /dev/null
+++ b/testing/woodpecker/woodpecker.conf
@@ -0,0 +1,8 @@
+# Woodpecker configuration
+# Reference: https://woodpecker-ci.org/docs/administration/server-config
+
+# WOODPECKER_GITHUB_CLIENT_ID=your-id
+# WOODPECKER_GITHUB_CLIENT_SECRET=super-duper-secret
+# WOODPECKER_RPC_SECRET=super-duper-secret
+# WOODPECKER_SERVER_HOST=drone.company.com
+# WOODPECKER_SERVER_PROTO=https
diff --git a/testing/woodpecker/woodpecker.confd b/testing/woodpecker/woodpecker.confd
new file mode 100644
index 00000000000..add1cb0f694
--- /dev/null
+++ b/testing/woodpecker/woodpecker.confd
@@ -0,0 +1,4 @@
+# Configuration for /etc/init.d/woodpecker
+
+# env file path
+#env_file="/etc/woodpecker.conf"
diff --git a/testing/woodpecker/woodpecker.initd b/testing/woodpecker/woodpecker.initd
new file mode 100644
index 00000000000..1838930561f
--- /dev/null
+++ b/testing/woodpecker/woodpecker.initd
@@ -0,0 +1,22 @@
+#!/sbin/openrc-run
+
+supervisor=supervise-daemon
+
+name="Woodpecker CI server"
+
+command="/usr/bin/woodpecker-server"
+command_args="-env-file ${env_file:-/etc/woodpecker.conf}"
+command_user="woodpecker:woodpecker"
+directory="/var/lib/woodpecker"
+
+error_log="/var/log/woodpecker.log"
+
+depend() {
+ need net
+ after firewall
+}
+
+start_pre() {
+ checkpath -d -m 755 -o "woodpecker:woodpecker" /var/lib/woodpecker
+ checkpath -f -m 644 -o "woodpecker:woodpecker" /var/log/woodpecker.log
+}
diff --git a/testing/woodpecker/woodpecker.pre-install b/testing/woodpecker/woodpecker.pre-install
new file mode 100644
index 00000000000..83ff0809e17
--- /dev/null
+++ b/testing/woodpecker/woodpecker.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S woodpecker 2>/dev/null
+adduser -S -D -H -h /var/lib/woodpecker -s /sbin/nologin -G woodpecker -g woodpecker woodpecker 2>/dev/null
+
+exit 0
diff --git a/testing/wordgrinder/APKBUILD b/testing/wordgrinder/APKBUILD
index bfb24d14da3..b3ded22922c 100644
--- a/testing/wordgrinder/APKBUILD
+++ b/testing/wordgrinder/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Roberto Oliveira <robertoguimaraes8@gmail.com>
pkgname=wordgrinder
pkgver=0.8
-pkgrel=0
+pkgrel=1
pkgdesc="A simple Unicode-aware word processor that runs on the console"
url="https://cowlark.com/wordgrinder/"
arch="all"
diff --git a/testing/words/APKBUILD b/testing/words/APKBUILD
deleted file mode 100644
index b6d26d2bffb..00000000000
--- a/testing/words/APKBUILD
+++ /dev/null
@@ -1,127 +0,0 @@
-# Contributor: Leo <thinkabit.ukim@gmail.com>
-# Maintainer:
-pkgname=words
-pkgver=2.1
-pkgrel=0
-pkgdesc="Collection of international 'words' file for /usr/share/dict"
-url="https://ftp.gnu.org/gnu/aspell/dict/0index.html"
-arch="noarch"
-license="GPL-2.0-or-later"
-makedepends="aspell-utils"
-subpackages="
- words-en:en:noarch
- words-gb:gb:noarch
- words-it:it:noarch
- words-es:es:noarch
- words-fi:fir:noarch
- words-fr:fr:noarch
- words-de:de:noarch
- "
-source="https://ftp.gnu.org/gnu/aspell/dict/en/aspell6-en-2017.08.24-0.tar.bz2
- https://ftp.gnu.org/gnu/aspell/dict/fi/aspell6-fi-0.7-0.tar.bz2
- https://ftp.gnu.org/gnu/aspell/dict/fr/aspell-fr-0.50-3.tar.bz2
- https://ftp.gnu.org/gnu/aspell/dict/de-alt/aspell6-de-alt-2.1-1.tar.bz2
- https://ftp.gnu.org/gnu/aspell/dict/it/aspell6-it-2.2_20050523-0.tar.bz2
- https://ftp.gnu.org/gnu/aspell/dict/de/aspell-de-0.50-2.tar.bz2
- https://ftp.gnu.org/gnu/aspell/dict/es/aspell6-es-1.11-2.tar.bz2
- "
-builddir="$srcdir/words"
-
-prepare() {
- mkdir -p "$builddir"
- default_prepare
-}
-
-build() {
- find "$srcdir" -name '*.cwl' -not -path "$srcdir/$pkgname/*" -exec cp -u '{}' './' \;
- preunzip *.cwl
- for wl in *.wl; do
- iconv -f ISO-8859-1 -t UTF-8 $wl | \
- cut -d '/' -f 1 | LC_ALL=C sort -df > $wl.utf8
- done
- rm *.wl
-
- # locale specific sort for other languages?
- # sort specified from FS#47262
- cat en-common.wl.utf8 en_US* | sort -u | LC_ALL=C sort -df > us-merged
- cat en-common.wl.utf8 en_GB* | sort -u | LC_ALL=C sort -df > gb-merged
- cat de-only.wl.utf8 de_* | sort -u | LC_ALL=C sort -df > de-merged
-}
-
-package() {
- install -Dm644 us-merged "$pkgdir/usr/share/dict/american-english"
- install -Dm644 gb-merged "$pkgdir/usr/share/dict/british-english"
- ln -s american-english "$pkgdir/usr/share/dict/usa"
- ln -s british-english "$pkgdir/usr/share/dict/british"
-
- install -Dm644 de-merged "$pkgdir/usr/share/dict/ngerman"
- install -Dm644 de-alt.wl.utf8 "$pkgdir/usr/share/dict/ogerman"
- ln -s ngerman "$pkgdir/usr/share/dict/german"
-
- install -Dm644 fr-40-only.wl.utf8 "$pkgdir/usr/share/dict/french"
-
- install -Dm644 es.wl.utf8 "$pkgdir/usr/share/dict/spanish"
- install -Dm644 fi.wl.utf8 "$pkgdir/usr/share/dict/finnish"
- install -Dm644 it.wl.utf8 "$pkgdir/usr/share/dict/italian"
-}
-
-en() {
- depends=""
- pkgdesc="American English dictionary in /usr/share/dict"
-
- amove usr/share/dict/usa
- amove usr/share/dict/american-english
-}
-
-gb() {
- depends=""
- pkgdesc="British English dictionary in /usr/share/dict"
-
- amove usr/share/dict/british
- amove usr/share/dict/british-english
-}
-
-it() {
- depends=""
- pkgdesc="Italian dictionary in /usr/share/dict"
-
- amove usr/share/dict/italian
-}
-
-es() {
- depends=""
- pkgdesc="Spanish dictionary in /usr/share/dict"
-
- amove usr/share/dict/spanish
-}
-
-fir() {
- depends=""
- pkgdesc="Finnish dictionary in /usr/share/dict"
-
- amove usr/share/dict/finnish
-}
-
-fr() {
- depends=""
- pkgdesc="French dictionary in /usr/share/dict"
-
- amove usr/share/dict/french
-}
-
-de() {
- depends=""
- pkgdesc="German dictionary in /usr/share/dict"
-
- amove usr/share/dict/german
- amove usr/share/dict/ngerman
- amove usr/share/dict/ogerman
-}
-
-sha512sums="2530f6bff61456ccf4e0e8383ab8583a1421b6001f156b4419385a272a54217b01e93d7aed8acff15f1e49afbb13bb81fd66002662ce7233c465ec0737fdfedc aspell6-en-2017.08.24-0.tar.bz2
-d1f27bc8e36033cba6ddaa978f2facfe8d134ab70124ec80d5397dba2b533b512755312feaf2afa838f68e4449479953a8b951264fbbfc28cdfd9457f67f67f7 aspell6-fi-0.7-0.tar.bz2
-bb5d1faada9283521096a19a8f5abada2a19cc02717f6dde57846ef46a4df253113b10a2bb72d2b0e32e4a3ab24b541a5acd9f4595b908d2f6cd2fc448d8bc3b aspell-fr-0.50-3.tar.bz2
-823324bc299e9adbbe5308681a5f74ee2a76a32816e8abc9d19c3da0c4eae756eaf1a3c76e2d75449b51010854ab869379073b1fe377e505662187d6c38230b4 aspell6-de-alt-2.1-1.tar.bz2
-2a2ccdbb8bb52e8e08525a40f985c1a2987c00d5e9fd39f57b8dc8689f3503f63751efe9ae4bec45fc5efea64666cd64abbda3e437ad0819f15b5a96987cda5a aspell6-it-2.2_20050523-0.tar.bz2
-79b0c9776c4a9b8bb0c5b3902bd1aa5daf6262b2a02753165d2fdb056b9bb0efcf5c4290d85bf98103cca29cf7aa81f99f725ea0faf5ab98b36ce080bdf8afbc aspell-de-0.50-2.tar.bz2
-5d0159f24d6bff43db682a4beb25e82dd362c205acf7c9e0d728808c0e54a8a566befe26316f384099c72e6c429713f8ad7d2dc66a8f04a15e1d5a9cfe2290d8 aspell6-es-1.11-2.tar.bz2"
diff --git a/testing/wormhole-william/APKBUILD b/testing/wormhole-william/APKBUILD
deleted file mode 100644
index bb053921f75..00000000000
--- a/testing/wormhole-william/APKBUILD
+++ /dev/null
@@ -1,28 +0,0 @@
-# Contributor: omni <omni+alpine@hack.org>
-# Maintainer: omni <omni+alpine@hack.org>
-pkgname=wormhole-william
-pkgver=1.0.6
-pkgrel=1
-pkgdesc="Go implementation of Magic Wormhole"
-arch="all"
-url="https://github.com/psanford/wormhole-william"
-license="MIT"
-makedepends="go"
-source="$pkgname-$pkgver.tar.gz::$url/archive/v$pkgver.tar.gz"
-
-export GOPATH="$srcdir"
-export GOFLAGS="$GOFLAGS -trimpath -mod=readonly -modcacherw"
-
-build() {
- go build -ldflags="-s -w" -v .
-}
-
-check() {
- go test -v ./...
-}
-
-package() {
- install -Dm755 $pkgname "$pkgdir"/usr/bin/$pkgname
-}
-
-sha512sums="767ac269931391ce6e50cf97b1035e7d5ce00004764e2bd30c14ee8d8f95f75eff094b759ca4da972f4f9fa4f708064ef09a6d8a4b3d45bb9494a7fca3bb2090 wormhole-william-1.0.6.tar.gz"
diff --git a/testing/wpa_actiond/APKBUILD b/testing/wpa_actiond/APKBUILD
index 0666ac4b814..92e0397288f 100644
--- a/testing/wpa_actiond/APKBUILD
+++ b/testing/wpa_actiond/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Marian <marian.buschsieweke@ovgu.de>
pkgname=wpa_actiond
pkgver=1.4
-pkgrel=6
+pkgrel=7
pkgdesc="Daemon that connects to wpa_supplicant and handles connect and disconnect events"
url="http://projects.archlinux.org/wpa_actiond.git"
arch="all"
diff --git a/testing/wpaperd/APKBUILD b/testing/wpaperd/APKBUILD
index 814c410fb33..5b518babecd 100644
--- a/testing/wpaperd/APKBUILD
+++ b/testing/wpaperd/APKBUILD
@@ -1,48 +1,52 @@
# Contributor: Michał Polański <michal@polanski.me>
# Maintainer: Michał Polański <michal@polanski.me>
pkgname=wpaperd
-pkgver=0.2.0
-pkgrel=0
+pkgver=0.3.0
+pkgrel=2
pkgdesc="Wallpaper daemon for Wayland"
url="https://github.com/danyspin97/wpaperd"
license="GPL-3.0-or-later"
arch="all !s390x !riscv64" # blocked by rust/cargo
-makedepends="cargo libxkbcommon-dev scdoc"
+makedepends="cargo libxkbcommon-dev scdoc cargo-auditable"
subpackages="
$pkgname-doc
$pkgname-bash-completion
$pkgname-fish-completion
$pkgname-zsh-completion
"
-source="https://github.com/danyspin97/wpaperd/archive/$pkgver/wpaperd-$pkgver.tar.gz"
+source="https://github.com/danyspin97/wpaperd/archive/$pkgver/wpaperd-$pkgver.tar.gz
+ cargo-lock.patch
+ "
options="!check" # no test suite
+
prepare() {
default_prepare
- cargo fetch --locked
+ cargo fetch --target="$CTARGET" --locked
}
build() {
- cargo build --frozen --release
+ cargo auditable build --frozen --release
scdoc <man/wpaperd-output.5.scd >man/wpaperd-output.5
}
package() {
- install -Dm755 target/release/wpaperd "$pkgdir"/usr/bin/wpaperd
+ install -Dm755 target/release/$pkgname -t "$pkgdir"/usr/bin/
- install -Dm644 man/wpaperd.1 -t "$pkgdir"/usr/share/man/man1
- install -Dm644 man/wpaperd-output.5 -t "$pkgdir"/usr/share/man/man5
+ install -Dm644 man/*.1 -t "$pkgdir"/usr/share/man/man1/
+ install -Dm644 man/*.5 -t "$pkgdir"/usr/share/man/man5/
install -Dm644 completions/$pkgname.bash \
"$pkgdir"/usr/share/bash-completion/completions/$pkgname
install -Dm644 completions/$pkgname.fish \
- "$pkgdir"/usr/share/fish/completions/$pkgname.fish
+ "$pkgdir"/usr/share/fish/vendor_completions.d/$pkgname.fish
install -Dm644 completions/_$pkgname \
"$pkgdir"/usr/share/zsh/site-functions/_$pkgname
}
sha512sums="
-1350a9a37f931021cb6a9296726af4ff3b7f1c5c58a6604235054292f9196c5afa37fbbbc7843ab850b71c76ee18629a5bfd1273317c5d9302f95a1532a5c9d8 wpaperd-0.2.0.tar.gz
+8fa4136e503e76f5c9b0cabe8679dedf6997f8fd6d0348f19743bfc7dfda2e3360e2ede3353539ada785816d07ac97fbc2b932c4cab76b06ed9db639be03af6a wpaperd-0.3.0.tar.gz
+8d8d5ce658f9ca48064ba1037669c775807eb4d8d7651551f97c5b386e910820c484c1b0d6a7740e8ccd672431bf9bc8759d72b763ac3b4e9a066507ed628604 cargo-lock.patch
"
diff --git a/testing/wpaperd/cargo-lock.patch b/testing/wpaperd/cargo-lock.patch
new file mode 100644
index 00000000000..bc4c8e864da
--- /dev/null
+++ b/testing/wpaperd/cargo-lock.patch
@@ -0,0 +1,11 @@
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -1988,7 +1988,7 @@ checksum = "447660ad36a13288b1db4d4248e857b510e8c3a225c822ba4fb748c0aafecffd"
+
+ [[package]]
+ name = "wpaperd"
+-version = "1.0.0"
++version = "0.3.0"
+ dependencies = [
+ "clap 4.1.6",
+ "clap_complete",
diff --git a/testing/wpewebkit/APKBUILD b/testing/wpewebkit/APKBUILD
deleted file mode 100644
index 0dbbedc626c..00000000000
--- a/testing/wpewebkit/APKBUILD
+++ /dev/null
@@ -1,73 +0,0 @@
-# Contributor: David Demelier <markand@malikania.fr>
-# Maintainer: David Demelier <markand@malikania.fr>
-pkgname=wpewebkit
-pkgver=2.33.2
-pkgrel=4
-pkgdesc="WebKit port optimized for embedded devices"
-url="https://wpewebkit.org"
-# armhf, x86: Out of memory
-# riscv64: fails to link
-# ppc64le: binutils 2.38 assertion failure
-arch="all !armhf !x86 !ppc64le !riscv64"
-license="other"
-makedepends="
- at-spi2-atk-dev
- atk-dev
- bubblewrap
- cairo-dev
- cmake
- gperf
- gst-plugins-base-dev
- gtk-doc
- harfbuzz-dev
- lcms2-dev
- libepoxy-dev
- libgcrypt-dev
- libseccomp-dev
- libsoup-dev
- libtasn1-dev
- libwpe-dev
- libwpebackend-fdo-dev
- libxkbcommon-dev
- libxslt-dev
- ninja
- openjpeg-dev
- perl
- ruby-dev
- wayland-dev
- wayland-protocols
- woff2-dev
- xdg-dbus-proxy
- "
-subpackages="$pkgname-dev $pkgname-doc"
-source="https://wpewebkit.org/releases/wpewebkit-$pkgver.tar.xz
- patch-gettext.patch
- "
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- -DCMAKE_BUILD_TYPE=None \
- -DPORT=WPE \
- -DENABLE_MINIBROWSER=On \
- -DENABLE_GTKDOC=On \
- -DUSE_SOUP2=On \
- -DUSE_SYSTEMD=Off \
- -GNinja \
- $CMAKE_CROSSOPTS .
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-
-sha512sums="
-223d6ab767acf2f9f9a3225f04f51df1071851544168149ebe7bcaa0e49468dbe418a19158e5fc5dcdfb340541432bb90da6042ff8fd1fde91a81690cdfc60c3 wpewebkit-2.33.2.tar.xz
-4316330f0c42fcfe800210bdbeabbb6bdcf532b71e2761550b8a753499d801fd0405cc961a516dfddfc28c3a6cf0c17b6db461ff51158238b8d874bf75b799f2 patch-gettext.patch
-"
diff --git a/testing/wpewebkit/patch-gettext.patch b/testing/wpewebkit/patch-gettext.patch
deleted file mode 100644
index 1c9e1658565..00000000000
--- a/testing/wpewebkit/patch-gettext.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-Add -lintl since it's not default in musl.
-
-Upstream: not yet.
-
---- a/Source/WebKit/CMakeLists.txt 2021-07-02 17:40:14.028879924 +0200
-+++ b/Source/WebKit/CMakeLists.txt 2021-07-02 17:41:31.015503465 +0200
-@@ -360,6 +360,8 @@
- list(APPEND WebKit_PRIVATE_LIBRARIES atomic)
- endif ()
-
-+list(APPEND WebKit_PRIVATE_LIBRARIES intl)
-+
- if (UNIX)
- check_function_exists(shm_open SHM_OPEN_EXISTS)
- if (NOT SHM_OPEN_EXISTS)
diff --git a/testing/wput/APKBUILD b/testing/wput/APKBUILD
index 33c03a96a88..6648a1df476 100644
--- a/testing/wput/APKBUILD
+++ b/testing/wput/APKBUILD
@@ -2,41 +2,36 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=wput
pkgver=0.6.2
-pkgrel=3
+pkgrel=4
pkgdesc="A command line tool to upload files to FTP site"
-url="http://wput.sourceforge.net/"
+url="https://wput.sourceforge.net/"
arch="all"
license="GPL-2.0-or-later"
makedepends="gnutls-dev"
subpackages="$pkgname-doc"
-source="https://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tgz
+source="https://downloads.sourceforge.net/wput/wput-$pkgver.tgz
$pkgname-destdir.patch"
-builddir="$srcdir/$pkgname-$pkgver"
# Fix build with gcc >= 10.X
export CFLAGS="$CFLAGS -fcommon"
prepare() {
- default_prepare || return 1
+ default_prepare
- cd "$builddir"
update_config_guess && update_config_sub
}
build() {
- cd "$builddir"
./configure \
--prefix=/usr \
--sysconfdir=/etc \
--mandir=/usr/share/man \
- --disable-g-switch \
- || return 1
- make || return 1
+ --disable-g-switch
+ make
}
package() {
- cd "$builddir"
- make DESTDIR="$pkgdir" install || return 1
+ make DESTDIR="$pkgdir" install
}
sha512sums="e1d0fb8570cbda44c97215ee1a021a9867f2e91323b3d7f7df1d7fd68a1b2aba40a7f3068e5e85e8c736b1dba1fba62df375af99e3fb96cd0fd414b139c641bd wput-0.6.2.tgz
diff --git a/testing/wroomd/APKBUILD b/testing/wroomd/APKBUILD
new file mode 100644
index 00000000000..1b1df2d1e95
--- /dev/null
+++ b/testing/wroomd/APKBUILD
@@ -0,0 +1,44 @@
+# Maintainer: Affe Null <affenull2345@gmail.com>
+pkgname=wroomd
+pkgver=0.1.0
+pkgrel=0
+pkgdesc="Modem management daemon for Qualcomm platforms"
+url="https://git.abscue.de/obp/wroomd"
+arch="all"
+license="GPL-3.0-or-later"
+makedepends="
+ cargo
+ cargo-auditable
+ eudev-dev
+ "
+pkggroups="wroomd"
+subpackages="$pkgname-openrc"
+source="https://git.abscue.de/obp/wroomd/-/archive/$pkgver/wroomd-$pkgver.tar.bz2
+ de.abscue.obp.Wroomd.conf
+ wroomd.initd"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+}
+
+check() {
+ cargo test --release --frozen
+}
+
+package() {
+ install -Dm755 target/release/wroomd -t "$pkgdir"/usr/bin
+ install -Dm755 "$srcdir"/wroomd.initd "$pkgdir"/etc/init.d/wroomd
+ install -Dm644 "$srcdir"/de.abscue.obp.Wroomd.conf -t "$pkgdir"/usr/share/dbus-1/system.d
+}
+
+sha512sums="
+9edbcac983a909f4337520632f864c1eeef92f0483659e2c82eb656933614c5b7d6bb79f4cf7ce70f5a34b46787f197f3a106b7c876a6eaba5f84d6bb41b895a wroomd-0.1.0.tar.bz2
+4295f59367c61f6e60216281aea95829f966d5e4239a006fe855777544995baebac69fde659d0e275d07ee76da043c2bdadf990952915ac0dd452a177025f48c de.abscue.obp.Wroomd.conf
+b31398173ee291020cbd09bc5af40e65bf0ce7f86229727ba75ab4d8ffe0c7a4c99cc07d159aa5091beb943ed2bc4fe55fff2e06634866482571fc5c353593f3 wroomd.initd
+"
diff --git a/testing/wroomd/de.abscue.obp.Wroomd.conf b/testing/wroomd/de.abscue.obp.Wroomd.conf
new file mode 100644
index 00000000000..6c1f4fb65e1
--- /dev/null
+++ b/testing/wroomd/de.abscue.obp.Wroomd.conf
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!DOCTYPE busconfig PUBLIC
+ "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
+ "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
+<busconfig>
+ <!-- Only root can own the service -->
+ <policy user="root">
+ <allow own="de.abscue.obp.Wroomd"/>
+ </policy>
+
+ <policy group="wroomd">
+ <allow send_destination="de.abscue.obp.Wroomd"/>
+ </policy>
+</busconfig>
diff --git a/testing/wroomd/wroomd.initd b/testing/wroomd/wroomd.initd
new file mode 100644
index 00000000000..14251e70847
--- /dev/null
+++ b/testing/wroomd/wroomd.initd
@@ -0,0 +1,11 @@
+#!/sbin/openrc-run
+supervisor=supervise-daemon
+
+name="wroomd"
+description="Modem management daemon for Qualcomm platforms"
+
+command="/usr/bin/wroomd"
+
+depend() {
+ need dbus
+}
diff --git a/testing/wsdd/0001-openrc-user.patch b/testing/wsdd/0001-openrc-user.patch
deleted file mode 100644
index 43baa9c8e4f..00000000000
--- a/testing/wsdd/0001-openrc-user.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-Author: Patrycja Rosa <alpine@ptrcnull.me>
-Date: Tue Jan 25 23:47:10 2022 +0100
-
- Change default user/group to wsdd
-
-diff --git a/etc/openrc/conf.d/wsdd b/etc/openrc/conf.d/wsdd
-index 7bb9ee0..0781ba2 100644
---- a/etc/openrc/conf.d/wsdd
-+++ b/etc/openrc/conf.d/wsdd
-@@ -2,7 +2,7 @@
-
- # Override the default user/group under which wsdd runs.
- # Must follow the user[:group] notation.
--#WSDD_USER="daemon:daemon"
-+#WSDD_USER="wsdd:wsdd"
-
- # Specify alternative log file location.
- #WSDD_LOG_FILE="/var/log/wsdd.log"
-diff --git a/etc/openrc/init.d/wsdd b/etc/openrc/init.d/wsdd
-index da2aa72..1456905 100755
---- a/etc/openrc/init.d/wsdd
-+++ b/etc/openrc/init.d/wsdd
-@@ -10,7 +10,7 @@ depend() {
- SMB_CONFIG_FILE="/etc/samba/smb.conf"
- LOG_FILE="${WSDD_LOG_FILE:-/var/log/wsdd.log}"
- WSDD_EXEC="/usr/bin/wsdd"
--RUN_AS_USER="${WSDD_USER:-daemon:daemon}"
-+RUN_AS_USER="${WSDD_USER:-wsdd:wsdd}"
-
- start() {
- ebegin "Starting ${RC_SVCNAME} daemon"
diff --git a/testing/wsdd/APKBUILD b/testing/wsdd/APKBUILD
deleted file mode 100644
index 3d13adb3742..00000000000
--- a/testing/wsdd/APKBUILD
+++ /dev/null
@@ -1,29 +0,0 @@
-# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
-# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
-pkgname=wsdd
-pkgver=0.7.0
-pkgrel=0
-pkgdesc="Web Service Discovery host daemon"
-url="https://github.com/christgau/wsdd"
-arch="noarch"
-license="MIT"
-depends="python3"
-install="$pkgname.pre-install"
-pkgusers="wsdd"
-pkggroups="wsdd"
-subpackages="$pkgname-openrc"
-source="https://github.com/christgau/wsdd/archive/refs/tags/v$pkgver/wsdd-$pkgver.tar.gz
- 0001-openrc-user.patch
- "
-options="!check" # no tests provided
-
-package() {
- install -Dm755 src/wsdd.py "$pkgdir"/usr/bin/wsdd
- install -Dm755 etc/openrc/init.d/wsdd "$pkgdir"/etc/init.d/wsdd
- install -Dm644 etc/openrc/conf.d/wsdd "$pkgdir"/etc/conf.d/wsdd
-}
-
-sha512sums="
-06926872a63b16526c315dd97e0b7711475c7a4f348db3cb994694256dd01ab099b98b0f6881a7a4fae97b9a8c6784da4b0dc7ec30bb607aa77c824d0687ee76 wsdd-0.7.0.tar.gz
-4d38d7cf7bcc924f94c52c0aa429b211570655f8207425512f80c75609206a0149464508f817206972e5d90bce144c898a30e8edc92c769f3fbd674e40b98a2f 0001-openrc-user.patch
-"
diff --git a/testing/wsdd/wsdd.pre-install b/testing/wsdd/wsdd.pre-install
deleted file mode 100644
index 71dfefb9ce2..00000000000
--- a/testing/wsdd/wsdd.pre-install
+++ /dev/null
@@ -1,6 +0,0 @@
-#!/bin/sh
-
-addgroup -S wsdd 2>/dev/null
-adduser -S -D -H -h /dev/null -s /sbin/nologin -G wsdd -g wsdd wsdd 2>/dev/null
-
-exit 0
diff --git a/testing/wshowkeys/APKBUILD b/testing/wshowkeys/APKBUILD
index b9067b6b88f..46308a5ee73 100644
--- a/testing/wshowkeys/APKBUILD
+++ b/testing/wshowkeys/APKBUILD
@@ -24,7 +24,7 @@ options="!check suid" # has no test suite; needs to be setuid to read input even
build() {
abuild-meson . output
- meson compile ${JOBS:+-j ${JOBS}} -C output
+ meson compile -C output
}
package() {
diff --git a/testing/wsmancli/APKBUILD b/testing/wsmancli/APKBUILD
index c5356fa4e57..6d34393e665 100644
--- a/testing/wsmancli/APKBUILD
+++ b/testing/wsmancli/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Francesco Colista <fcolista@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=wsmancli
-pkgver=2.6.0
+pkgver=2.6.2
pkgrel=0
pkgdesc="Openwsman command line client"
url="https://openwsman.github.io/"
@@ -34,4 +34,6 @@ package() {
make DESTDIR="$pkgdir" install
}
-sha512sums="40f69dfefd5cfc9c1d137c5c58bd0e84e1bb460ecb6770e1c56b023477f7521769f04e041682686d267796477704c7465d437f6fdb4068268a51d1136d5c8a56 wsmancli-2.6.0.tar.gz"
+sha512sums="
+9b1c99b18d2f9f6125a48bb4639ffa970b67fd4ac2dae401a0b9205ab7a0650ebd77737ce386761143aedefd18a59b92407a63831568ca5597e92281df8414b0 wsmancli-2.6.2.tar.gz
+"
diff --git a/testing/wtfutil/APKBUILD b/testing/wtfutil/APKBUILD
index 5fe5fa3c663..59a1e303cef 100644
--- a/testing/wtfutil/APKBUILD
+++ b/testing/wtfutil/APKBUILD
@@ -1,8 +1,8 @@
-# Contributor: guddaff <guddaff@protonmail.com>
-# Maintainer: guddaff <guddaff@protonmail.com>
+# Contributor: guddaff <alpine@guddaff.de>
+# Maintainer: guddaff <alpine@guddaff.de>
pkgname=wtfutil
-pkgver=0.41.0
-pkgrel=3
+pkgver=0.43.0
+pkgrel=5
pkgdesc="personal information dashboard"
url="https://wtfutil.com/"
arch="all"
@@ -11,18 +11,24 @@ makedepends="go"
source="$pkgname-$pkgver.tar.gz::https://github.com/wtfutil/wtf/archive/refs/tags/v$pkgver.tar.gz"
builddir="$srcdir/wtf-$pkgver"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
build() {
- make PREFIX=/usr
+ go build -o bin/wtfutil
}
check() {
- make test
+ # hangs
+ # shellcheck disable=2046
+ go test $(go list ./... | grep -Ev '(wtf/modules/urlcheck|wtf/view)')
}
package() {
- install -Dm755 bin/wtfutil $pkgdir/usr/bin/wtfutil
+ install -Dm755 bin/wtfutil "$pkgdir"/usr/bin/wtfutil
}
sha512sums="
-34e17784c3f3a0e26c5efaac2274131a5c68e79244ab842dd1977fb08972351cb43e410f129d0f0bdde226fb89fab5cc628ca66d5e17fd0a57b88f69b10eabff wtfutil-0.41.0.tar.gz
+0e6c67add5bc90795503b9f337b377ad2b0a13d1ff4357971ed518f49979eac2c67a1df0fc86846c79616f96ccbf40cb2089185d55596b77832ebdea9213e212 wtfutil-0.43.0.tar.gz
"
diff --git a/testing/x11-calc/APKBUILD b/testing/x11-calc/APKBUILD
new file mode 100644
index 00000000000..437e1bc11aa
--- /dev/null
+++ b/testing/x11-calc/APKBUILD
@@ -0,0 +1,25 @@
+# Contributor: macmpi <spam@ipik.org>
+# Maintainer: macmpi <spam@ipik.org>
+pkgname=x11-calc
+pkgver=0.14.0147
+pkgrel=0
+pkgdesc="An HP calculator emulator"
+url="https://github.com/mike632t/x11-calc"
+arch="all"
+license="GPL-3.0-or-later"
+makedepends="libx11-dev"
+source="$pkgname-$pkgver.tar.gz::https://github.com/mike632t/x11-calc/archive/refs/tags/v$pkgver.tar.gz"
+# does not have any tests
+options="!check"
+
+build() {
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" prefix=/usr DESKTOP=freedesktop install
+}
+
+sha512sums="
+8baf896c55b4b18bb7087d039d60a98d8cc4063bd7aabab8c462f773508e7841b300904c502eaf381d5771a2b853b2a1bd2d4b6826cadf39d5299212dee33714 x11-calc-0.14.0147.tar.gz
+"
diff --git a/testing/x11docker/APKBUILD b/testing/x11docker/APKBUILD
index aa7ddc8c054..a107cfd96ad 100644
--- a/testing/x11docker/APKBUILD
+++ b/testing/x11docker/APKBUILD
@@ -1,23 +1,32 @@
# Contributor: Rasmus Thomsen <oss@cogitri.dev>
-# Maintainer: Rasmus Thomsen <oss@cogitri.dev>
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=x11docker
-pkgver=6.9.0
-pkgrel=2
+pkgver=7.6.0
+pkgrel=1
pkgdesc="run GUI applications and desktops in docker. Focus on security"
url="https://github.com/mviereck/x11docker"
arch="noarch"
license="MIT"
-depends="bash docker xorg-server-xephyr xwayland xorg-server
- xvfb xdotool pulseaudio xinit cmd:xclip xauth xhost xrandr zenity
- xdpyinfo"
+install="$pkgname.post-install"
+subpackages="$pkgname-doc"
+depends="
+ bash
+ cmd:xclip
+ xauth
+ xdotool
+ xdpyinfo
+ xhost
+ xinit
+ zenity
+ "
options="!check" # no tests
source="https://github.com/mviereck/x11docker/archive/v$pkgver/x11docker-$pkgver.tar.gz"
package() {
- mkdir -p "$pkgdir"/usr/bin
- mv x11docker x11docker-gui "$pkgdir"/usr/bin
+ install -Dm755 x11docker -t "$pkgdir"/usr/bin
+ install -Dm644 x11docker.man "$pkgdir"/usr/share/man/man1/x11docker.1
}
sha512sums="
-1a537115f50c3fa482dad95631460134a456d569cffbc36412e698f7f4600cc56c7febc6dcbbc43506e270cb06df9f994ef9b2c91f6cfcd2412bb65f2a6add22 x11docker-6.9.0.tar.gz
+9cc6f4fb0bb87fed6aa37457278ad79bf3ba603c8c80b3af8a14fb150efffa6687dfad6509cb0f9a38517b550c56a91737892caaed3d62ca776136b5629f3ccc x11docker-7.6.0.tar.gz
"
diff --git a/testing/x11docker/x11docker.post-install b/testing/x11docker/x11docker.post-install
new file mode 100644
index 00000000000..86401f78c1b
--- /dev/null
+++ b/testing/x11docker/x11docker.post-install
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+cat >&2 <<-EOF
+* x11docker can utilise any of: podman, nerdctl, docker
+* ensure you have the one you want to use installed.
+* it can also use weston/xwayland/xorg-wm's for the containers, see the
+* official documentation for dependencies you might need and how to configure
+* it.
+EOF
+
+exit 0
diff --git a/testing/xa/APKBUILD b/testing/xa/APKBUILD
index 60af30908e2..40afb6159b9 100644
--- a/testing/xa/APKBUILD
+++ b/testing/xa/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Henrik Riomar <henrik.riomar@gmail.com>
# Maintainer: Henrik Riomar <henrik.riomar@gmail.com>
pkgname=xa
-pkgver=2.3.13
+pkgver=2.3.14
pkgrel=0
pkgdesc="cross-assembler and utility suite for 65xx/65816 processors"
url="https://www.floodgap.com/retrotech/xa"
@@ -24,5 +24,5 @@ package() {
}
sha512sums="
-b8a4c1856e51bbe212b98be06895987d6fb926a229511a67ea90a934da1fcc84daf29bd289c3c4c2254d2bce345333bb92747947f3286376761613b2e181e99b xa-2.3.13.tar.gz
+71d4631cb3e698b6522ca76c4b34078ded0632533bdaaa8b8d584eb27f0958ed288a6765136ff0ad03cd861a2dccbb76c6d8db0abf277a61ae864ad23212653d xa-2.3.14.tar.gz
"
diff --git a/testing/xandikos/APKBUILD b/testing/xandikos/APKBUILD
index 8bfbd801933..84de42aa7f9 100644
--- a/testing/xandikos/APKBUILD
+++ b/testing/xandikos/APKBUILD
@@ -1,17 +1,25 @@
# Contributor: Galen Abell <galen@galenabell.com>
# Maintainer: Galen Abell <galen@galenabell.com>
pkgname=xandikos
-pkgver=0.2.8
-pkgrel=0
+pkgver=0.2.11
+pkgrel=1
pkgdesc="a lightweight yet complete CardDAV/CalDAV server that backs onto a Git repository"
url="https://xandikos.org"
arch="noarch"
license="GPL-3.0-or-later"
-depends="python3 py3-aiohttp py3-icalendar py3-dulwich py3-defusedxml py3-jinja2 py3-multidict"
-makedepends="py3-setuptools"
+depends="
+ py3-aiohttp
+ py3-defusedxml
+ py3-dulwich
+ py3-icalendar
+ py3-jinja2
+ py3-multidict
+ py3-vobject
+ "
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
checkdepends="py3-pytest"
install="$pkgname.pre-install"
-subpackages="$pkgname-doc $pkgname-openrc"
+subpackages="$pkgname-doc $pkgname-openrc $pkgname-pyc"
source="
$pkgname-$pkgver.tar.gz::https://github.com/jelmer/xandikos/archive/v$pkgver.tar.gz
xandikos.initd
@@ -19,15 +27,19 @@ source="
"
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- PYTHONPATH="." pytest
+ python3 -m venv --clear --system-site-packages testenv
+ testenv/bin/python3 -m installer dist/*.whl
+ testenv/bin/python3 -m pytest
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" dist/*.whl
install -m644 -D man/$pkgname.8 \
"$pkgdir"/usr/share/man/man8/$pkgname
@@ -39,7 +51,7 @@ package() {
}
sha512sums="
-da1b76b79b27e63cbf5416ef215dbd97c8a968e7db8c084b451e432feea7db2d93b673f17e66d1518cbd1b5586368226d393e6cd12a28f5917d53d734a8d0cfd xandikos-0.2.8.tar.gz
+e65a7a5f7b063ce46a94ef9a3c62a761cc60a422b9f5199151824dc8eff70c31593ab854cf6b79fa2d9c1111c3b69320d7df2a1c28c5205858cc22cdb68b936a xandikos-0.2.11.tar.gz
8d49ef3ce004a666d4e9b1e97114d5bf381aa75538518ce7b15202bacf73ef90cd3ad751d6aae73b2b5768b37f58045ed3f34db0d004a8c5f479c1a79cbbcd60 xandikos.initd
8e1ef71e22809c9c7424dd518949e936d09d1da7f2911862d7943b71976554d74f72f186ea76bf8510b8fd95a75028fe369e5907c20695211425cf50c911388a xandikos.confd
"
diff --git a/testing/xastir/APKBUILD b/testing/xastir/APKBUILD
deleted file mode 100644
index f516fc6eff0..00000000000
--- a/testing/xastir/APKBUILD
+++ /dev/null
@@ -1,44 +0,0 @@
-# Contributor: Milan P. Stanić <mps@arvanta.net>
-# Maintainer: Milan P. Stanić <mps@arvanta.net>
-pkgname=xastir
-pkgver=2.1.8
-pkgrel=0
-pkgdesc="radio amateur mapping, tracking, messaging, weather, and Search & Rescue"
-url="https://xastir.org"
-arch="all"
-license="GPL-2.0-or-later"
-makedepends="linux-headers libxrender-dev libxt-dev libxp-dev curl-dev pcre-dev motif-dev libax25-dev autoconf automake"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/Xastir/Xastir/archive/Release-$pkgver.tar.gz
- fix-mutex.patch
- "
-builddir="$srcdir"/Xastir-Release-$pkgver
-prepare() {
- default_prepare
- ./bootstrap.sh
-}
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var
-
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-361c92381b385035af160578dcfc4c800edcfabdbaebc5eda1c4fd9a78e934f289a54813577d5b765bbed6eae50cb772735defec6f489dc65326941d2492850d xastir-2.1.8.tar.gz
-2ed800774f2cdbbe1e096e967a896f4e31ba53d5c7ca2c770c74c6ba56967b69a1b56ca940fdcc618853b62284532741ffe3051824deb1be6a98773693508d0c fix-mutex.patch
-"
diff --git a/testing/xastir/fix-mutex.patch b/testing/xastir/fix-mutex.patch
deleted file mode 100644
index 129cd38b4d1..00000000000
--- a/testing/xastir/fix-mutex.patch
+++ /dev/null
@@ -1,15 +0,0 @@
---- a/src/util.c 2019-07-15 00:30:31.000000000 +0200
-+++ b/src/util.c 2019-08-31 15:56:13.580212122 +0200
-@@ -5457,10 +5457,10 @@
- // NON_LSB VERSION
- // Check first for newer pthread function
- # ifdef HAVE_PTHREAD_MUTEXATTR_SETTYPE
-- (void)pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_ERRORCHECK_NP);
-+ (void)pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_ERRORCHECK);
- # else
- // Use older, deprecated pthread function
-- (void)pthread_mutexattr_setkind_np(&attr, PTHREAD_MUTEX_ERRORCHECK_NP);
-+ (void)pthread_mutexattr_setkind_np(&attr, PTHREAD_MUTEX_ERRORCHECK);
- # endif // HAVE_PTHREAD_MUTEXATTR_SETTYPE
- # endif // __LSB__
-
diff --git a/testing/xboard/APKBUILD b/testing/xboard/APKBUILD
new file mode 100644
index 00000000000..1ca60905234
--- /dev/null
+++ b/testing/xboard/APKBUILD
@@ -0,0 +1,53 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
+pkgname=xboard
+pkgver=4.9.1
+pkgrel=2
+pkgdesc="Graphical chessboard for the X Window System"
+url="https://www.gnu.org/software/xboard"
+arch="all"
+license="GPL-3.0-or-later"
+options="!check" # no test suite
+makedepends="
+ autoconf
+ automake
+ cairo-dev
+ gtk+2.0-dev
+ librsvg-dev
+ libtool
+ texinfo
+ xdg-utils
+ "
+source="https://ftp.gnu.org/gnu/xboard/xboard-$pkgver.tar.gz"
+subpackages="$pkgname-doc $pkgname-lang"
+
+prepare() {
+ default_prepare
+ sed -i s/fairymax/gnuchess/ \
+ gtk/xboard.h \
+ xaw/xboard.h \
+ xboard.conf \
+ xboard.man \
+ xboard.info \
+ xboard.texi
+
+ autoreconf -fvi
+}
+
+build() {
+ ./configure \
+ --target="$CTARGET" \
+ --build="$CBUILD" \
+ --host="$CHOST" \
+ --prefix=/usr \
+ --enable-zippy
+ make CFLAGS="$CFLAGS -fcommon"
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+7c6f17450edc3f56d5987f6363da01633850b87b0d6664524a4697216dc66aa58f84314ba57ee68aebfbb01ef96995e34be4e98fb4a5124e3f5090690f91ae08 xboard-4.9.1.tar.gz
+"
diff --git a/testing/xcaddy/APKBUILD b/testing/xcaddy/APKBUILD
new file mode 100644
index 00000000000..165695b3a42
--- /dev/null
+++ b/testing/xcaddy/APKBUILD
@@ -0,0 +1,33 @@
+# Contributor: Fabricio Silva <hi@fabricio.dev>
+# Maintainer: Fabricio Silva <hi@fabricio.dev>
+pkgname=xcaddy
+pkgver=0.3.5
+pkgrel=4
+pkgdesc="Build Caddy with plugins"
+url="https://github.com/caddyserver/xcaddy"
+license="Apache-2.0"
+arch="all"
+depends="go"
+source="https://github.com/caddyserver/xcaddy/archive/v$pkgver/caddy-$pkgver.tar.gz"
+options="net" # for downloading Go modules
+
+export GOFLAGS="$GOFLAGS -modcacherw"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ go build -trimpath -o bin/xcaddy ./cmd/xcaddy
+}
+
+check() {
+ go test ./...
+}
+
+package() {
+ install -Dm755 bin/xcaddy -t "$pkgdir"/usr/sbin/
+}
+
+sha512sums="
+7f37bf819618d51dcc4dfd89a90403c0841f277bcf5f9f3cf548ed89d486faf92608522df161ad3a2daf9f046feb91c4b4feb6f7ddeb336c9e0946576052b34e caddy-0.3.5.tar.gz
+"
diff --git a/testing/xcape/APKBUILD b/testing/xcape/APKBUILD
index 5ce43968ae3..b18b98e7f68 100644
--- a/testing/xcape/APKBUILD
+++ b/testing/xcape/APKBUILD
@@ -10,7 +10,7 @@ license="GPL-3.0"
options="!check" # no test suite
makedepends="libxtst-dev"
subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::$url/archive/v$pkgver.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/alols/xcape/archive/v$pkgver.tar.gz"
build() {
make
diff --git a/testing/xcb-imdkit/APKBUILD b/testing/xcb-imdkit/APKBUILD
deleted file mode 100755
index 12ea59e5be7..00000000000
--- a/testing/xcb-imdkit/APKBUILD
+++ /dev/null
@@ -1,40 +0,0 @@
-# Contributor: Alex Yam <alex@alexyam.com>
-# Maintainer: Alex Yam <alex@alexyam.com>
-pkgname=xcb-imdkit
-pkgver=1.0.3
-pkgrel=0
-pkgdesc="X input method support for XCB"
-url="https://github.com/fcitx/xcb-imdkit"
-arch="all !armhf" # Limited by extra-cmake-modules
-license="LGPL-2.1-only"
-makedepends="
- cmake
- extra-cmake-modules
- xcb-util-keysyms-dev
- uthash-dev
- "
-subpackages="$pkgname-dev"
-source="$pkgname-$pkgver.tar.gz::https://github.com/fcitx/xcb-imdkit/archive/$pkgver.tar.gz"
-
-build() {
- cmake \
- -DCMAKE_PREFIX_PATH=/usr \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DUSE_SYSTEM_UTHASH=on \
- -B build
- cmake --build build
-}
-
-check() {
- cd $builddir/build/test
- ctest -VV
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --build build --target install
-}
-
-sha512sums="
-ff2530ed4b172c33466169ec0f7b52abd049796f3328f336a5e839775242ce0500d40148448f82a78e16cfb8da428ad664a3479db697ee14f3336bcaa969e762 xcb-imdkit-1.0.3.tar.gz
-"
diff --git a/testing/xcompmgr/APKBUILD b/testing/xcompmgr/APKBUILD
index 1a81407e436..9e4b61bedee 100644
--- a/testing/xcompmgr/APKBUILD
+++ b/testing/xcompmgr/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Anjandev Momi <anjan@momi.ca>
# Maintainer: Anjandev Momi <anjan@momi.ca>
pkgname=xcompmgr
-pkgver=1.1.8
+pkgver=1.1.9
pkgrel=0
pkgdesc="Composite Window-effects manager for X.org"
url="https://xorg.freedesktop.org/"
@@ -9,7 +9,7 @@ arch="all"
license="MIT"
makedepends="libxcomposite-dev libxdamage-dev libxrender-dev libxext-dev"
subpackages="$pkgname-doc"
-source="https://xorg.freedesktop.org/releases/individual/app/xcompmgr-$pkgver.tar.gz"
+source="https://xorg.freedesktop.org/releases/individual/app/xcompmgr-$pkgver.tar.xz"
build() {
./configure \
@@ -31,5 +31,5 @@ package() {
}
sha512sums="
-974a49317a41c9c0e8c143bca9853c9164169b28fb6b22181cdde4b95bc7fd8ebaa2f4e6351774d6e6c2dc5a680a9e453322d0cf08d53f8abeae82893334c46d xcompmgr-1.1.8.tar.gz
+699117492af7fd84b36d317dcbf422d5ec86a7f21e29370caa737cd940d8ff866a5c8704ba2e7bd17a64e085d77fd23b628263d619813dead85cd669ff5b860e xcompmgr-1.1.9.tar.xz
"
diff --git a/testing/xdg-desktop-portal-hyprland/APKBUILD b/testing/xdg-desktop-portal-hyprland/APKBUILD
new file mode 100644
index 00000000000..c860c62c0f5
--- /dev/null
+++ b/testing/xdg-desktop-portal-hyprland/APKBUILD
@@ -0,0 +1,48 @@
+# Contributor: Rabindra Dhakal <contact@qaidvoid.dev>
+# Maintainer: Rabindra Dhakal <contact@qaidvoid.dev>
+pkgname=xdg-desktop-portal-hyprland
+pkgver=1.3.1
+pkgrel=2
+pkgdesc="xdg-desktop-portal backend for hyprland"
+url="https://github.com/hyprwm/xdg-desktop-portal-hyprland"
+arch="all !armhf !armv7 !x86" # 32bit builds broken
+license="BSD-3-Clause"
+options="!check" # No tests
+depends="
+ hyprlang
+ xdg-desktop-portal
+ "
+makedepends="
+ basu-dev
+ cmake
+ hyprland-protocols
+ pipewire-dev
+ qt6-qtwayland-dev
+ sdbus-cpp-dev
+ wayland-dev
+ "
+subpackages="$pkgname-doc"
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/hyprwm/xdg-desktop-portal-hyprland/archive/v$pkgver.tar.gz
+ use-system-installed-sdbus-c++.patch
+ "
+
+build() {
+ cmake -B build \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DCMAKE_INSTALL_LIBEXECDIR=/usr/libexec \
+ -DCMAKE_INSTALL_PREFIX=/usr
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+
+ rm -rf "$pkgdir"/usr/lib/systemd
+ install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
+
+sha512sums="
+8d0f9b97fca4566efe717de6d739d10ec51ce5aa33459940f759fc90543fcca3b094d3e570446c5f82c9146249ce39c00fa215b0b83573a466a9907aec9366f3 xdg-desktop-portal-hyprland-1.3.1.tar.gz
+dc93557c1faa0e903ad133cd96484b9b1bb7d6fceb09b5a8c71e5053deb6db1e34fd31a11f7b8a41d2468abe310414d831ca43cdf15b947a5dec562297e870a2 use-system-installed-sdbus-c++.patch
+"
diff --git a/testing/xdg-desktop-portal-hyprland/use-system-installed-sdbus-c++.patch b/testing/xdg-desktop-portal-hyprland/use-system-installed-sdbus-c++.patch
new file mode 100644
index 00000000000..1ecaa8ffc2a
--- /dev/null
+++ b/testing/xdg-desktop-portal-hyprland/use-system-installed-sdbus-c++.patch
@@ -0,0 +1,32 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 73f429b..e760098 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -38,17 +38,12 @@ add_compile_options(-Wall -Wextra -Wno-unused-parameter -Wno-unused-value
+ message(STATUS "Checking deps...")
+ add_subdirectory(hyprland-share-picker)
+
++find_package(sdbus-c++ REQUIRED)
+ find_package(Threads REQUIRED)
+ find_package(PkgConfig REQUIRED)
+ pkg_check_modules(deps REQUIRED IMPORTED_TARGET wayland-client wayland-protocols libpipewire-0.3 libspa-0.2 libdrm gbm hyprlang>=0.2.0)
+
+ # check whether we can find sdbus-c++ through pkg-config
+-pkg_check_modules(SDBUS IMPORTED_TARGET sdbus-c++)
+-if(NOT SDBUS_FOUND)
+- include_directories("subprojects/sdbus-cpp/include/")
+- add_subdirectory(subprojects/sdbus-cpp)
+- add_library(PkgConfig::SDBUS ALIAS sdbus-c++)
+-endif()
+
+ # same for hyprland-protocols
+ pkg_check_modules(HYPRLAND_PROTOS IMPORTED_TARGET hyprland-protocols)
+@@ -60,7 +55,7 @@ endif()
+
+ file(GLOB_RECURSE SRCFILES CONFIGURE_DEPENDS "src/*.cpp")
+ add_executable(xdg-desktop-portal-hyprland ${SRCFILES})
+-target_link_libraries(xdg-desktop-portal-hyprland PRIVATE rt PkgConfig::SDBUS Threads::Threads PkgConfig::deps)
++target_link_libraries(xdg-desktop-portal-hyprland PRIVATE rt sdbus-c++ Threads::Threads PkgConfig::deps)
+
+ # protocols
+ find_program(WaylandScanner NAMES wayland-scanner)
diff --git a/testing/xdg-ninja/APKBUILD b/testing/xdg-ninja/APKBUILD
new file mode 100644
index 00000000000..0e29ee93d03
--- /dev/null
+++ b/testing/xdg-ninja/APKBUILD
@@ -0,0 +1,24 @@
+# Maintainer: Cowington Post <cowingtonpost@gmail.com>
+pkgname=xdg-ninja
+pkgver=0.2.0.2
+pkgrel=0
+pkgdesc="Shell script which checks your home directory for unwanted files and directories"
+url="https://github.com/b3nj5m1n/xdg-ninja"
+arch="noarch"
+license="MIT"
+depends="jq"
+source="https://github.com/b3nj5m1n/xdg-ninja/archive/v$pkgver/xdg-ninja-$pkgver.tar.gz"
+options="!check" # no upstream tests
+
+package() {
+ local bin="$pkgdir/usr/bin"
+ local lib="$pkgdir/usr/lib/$pkgname"
+ install -Dm755 -t "$lib" "$pkgname.sh"
+ install -dm755 "$bin"
+ ln -s "${lib#"$pkgdir"}/$pkgname.sh" "$bin/$pkgname"
+ cp -rpt "$lib" "programs"
+}
+
+sha512sums="
+d96764067af5812869d53b99b0a04d224f8a5d70f2664df7149c11692c32d2b86105436d7aad3271192aeb8eb128a22571227cf2a1b6d99e80765f0a505ff71a xdg-ninja-0.2.0.2.tar.gz
+"
diff --git a/testing/xdg-user-dirs-gtk/APKBUILD b/testing/xdg-user-dirs-gtk/APKBUILD
new file mode 100644
index 00000000000..5d2c45475ed
--- /dev/null
+++ b/testing/xdg-user-dirs-gtk/APKBUILD
@@ -0,0 +1,33 @@
+# Maintainer: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
+pkgname=xdg-user-dirs-gtk
+pkgver=0.11
+pkgrel=2
+pkgdesc="GTK frontend for xdg-user-dirs"
+url="https://gitlab.gnome.org/GNOME/xdg-user-dirs-gtk"
+arch="all"
+license="GPL-2.0-or-later"
+depends="xdg-user-dirs"
+makedepends="gtk+3.0-dev intltool"
+subpackages="$pkgname-lang"
+source="https://download.gnome.org/sources/xdg-user-dirs-gtk/$pkgver/xdg-user-dirs-gtk-$pkgver.tar.xz
+ more-desktops.patch
+ "
+options="!check" # no tests
+
+build() {
+ ./configure \
+ --prefix=/usr \
+ --host=$CHOST \
+ --build=$CBUILD \
+ --sysconfdir=/etc
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+2a650c6372126f807ac90fb0508e1b11636b38b5960a3037b547e9f1bb1a6b82653f20da7d5aae1144eebec040e3af89a02fbf70c1768724019b384f6d9cf85a xdg-user-dirs-gtk-0.11.tar.xz
+276f8be2a09550238acf81cbbb037e89c49469d4d854fb5a26d394335698379d180a3ced48f71c12cf87efecff1f6ce057579b63456f8a2334652d77e1a8eb8c more-desktops.patch
+"
diff --git a/testing/xdg-user-dirs-gtk/more-desktops.patch b/testing/xdg-user-dirs-gtk/more-desktops.patch
new file mode 100644
index 00000000000..c92aec6a2ac
--- /dev/null
+++ b/testing/xdg-user-dirs-gtk/more-desktops.patch
@@ -0,0 +1,13 @@
+diff --git a/user-dirs-update-gtk.desktop.in b/user-dirs-update-gtk.desktop.in
+index 78d5f7c..6539552 100644
+--- a/user-dirs-update-gtk.desktop.in
++++ b/user-dirs-update-gtk.desktop.in
+@@ -4,7 +4,7 @@ Exec=xdg-user-dirs-gtk-update
+ _Name=User folders update
+ _Comment=Update common folders names to match current locale
+ Terminal=false
+-OnlyShowIn=GNOME;LXDE;Unity;
++OnlyShowIn=GNOME;LXDE;Unity;MATE;XFCE;
+ Type=Application
+ StartupNotify=false
+ X-KDE-autostart-after=panel
diff --git a/testing/xed/APKBUILD b/testing/xed/APKBUILD
new file mode 100644
index 00000000000..aaa5e573ce8
--- /dev/null
+++ b/testing/xed/APKBUILD
@@ -0,0 +1,53 @@
+# Maintainer: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
+pkgname=xed
+pkgver=3.4.5
+pkgrel=0
+pkgdesc="X-Apps Text Editor"
+url="https://github.com/linuxmint/xed"
+arch="all"
+license="GPL-2.0-or-later"
+makedepends="
+ intltool
+ itstool
+ libpeas-dev
+ gobject-introspection-dev
+ gspell-dev
+ gtksourceview4-dev
+ gvfs-dev
+ gzip
+ meson
+ python3
+ xapp-dev
+ "
+checkdepends="cage-run"
+subpackages="$pkgname-lang $pkgname-dev $pkgname-doc $pkgname-python"
+source="$pkgname-$pkgver.tar.gz::https://github.com/linuxmint/xed/archive/refs/tags/$pkgver.tar.gz"
+options="!check" # needs dogtail
+
+build() {
+ abuild-meson \
+ -Db_lto=true \
+ . output
+ meson compile -C output
+}
+
+check() {
+ cage-run meson test --no-rebuild --print-errorlogs -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+python() {
+ depends="$pkgname=$pkgver-r$pkgrel libpeas-python3"
+ pkgdesc="$pkgdesc (python plugins)"
+ amove \
+ usr/lib/xed/plugins/joinlines* \
+ usr/lib/xed/plugins/open-uri-context-menu* \
+ usr/lib/xed/plugins/textsize*
+}
+
+sha512sums="
+d136158ac2bbe52079e050682d74a4a3692a72bdd170d8f2875a329e7da3d21b947be4131e8d49fbca68ef473e9fb5924864e07c610cf6e0cfea1acd9a8f45e4 xed-3.4.5.tar.gz
+"
diff --git a/testing/xendmail/APKBUILD b/testing/xendmail/APKBUILD
new file mode 100644
index 00000000000..224487f3352
--- /dev/null
+++ b/testing/xendmail/APKBUILD
@@ -0,0 +1,40 @@
+# Maintainer: Hugo Osvaldo Barrera <hugo@whynothugo.nl>
+pkgname=xendmail
+pkgver=0.4.3
+pkgrel=0
+pkgdesc="Like sendmail, for users"
+url="https://git.sr.ht/~whynothugo/xendmail"
+# rust-ring
+arch="all !s390x !ppc64le !riscv64"
+license="Apache-2.0"
+makedepends="cargo cargo-auditable scdoc"
+subpackages="$pkgname-doc"
+source="xendmail-$pkgver.tar.gz::https://git.sr.ht/~whynothugo/xendmail/archive/v$pkgver.tar.gz"
+builddir="$srcdir/$pkgname-v$pkgver"
+options="net" # fetch dependencies
+
+prepare() {
+ default_prepare
+
+ cargo fetch --locked
+}
+
+build() {
+ cargo auditable build --release --frozen
+ make xendmail.1
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm 0755 target/release/$pkgname "$pkgdir/usr/bin/$pkgname"
+ install -dm 0755 "$pkgdir/usr/sbin"
+ install -Dm 0644 xendmail.1 -t "$pkgdir/usr/share/man/man8/"
+ ln -s /usr/bin/$pkgname "$pkgdir/usr/sbin/sendmail"
+}
+
+sha512sums="
+c7637e88b40ad7b1880822ff1f5b4fff495eb70ca5b3a59b5301eae7a18c9ca7236946d6b952f710ff9a41385bb10154299eb7562756c08eb1299bcbae86f00f xendmail-0.4.3.tar.gz
+"
diff --git a/testing/xf86-video-vboxvideo/APKBUILD b/testing/xf86-video-vboxvideo/APKBUILD
index 5b7eade6f78..6f05d130e05 100644
--- a/testing/xf86-video-vboxvideo/APKBUILD
+++ b/testing/xf86-video-vboxvideo/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=xf86-video-vboxvideo
pkgver=1.0.0
-pkgrel=0
+pkgrel=1
pkgdesc="VirtualBox guest video driver"
url="https://cgit.freedesktop.org/xorg/driver/xf86-video-vbox/"
arch="x86 x86_64"
@@ -14,7 +14,8 @@ source="https://www.x.org/releases/individual/driver/$pkgname-$pkgver.tar.gz"
builddir="$srcdir/"$pkgname-$pkgver
build() {
- cd "$builddir"
+ export CFLAGS="${CFLAGS/-fno-plt}"
+ export CXXFLAGS="${CXXFLAGS/-fno-plt}"
export LDFLAGS="$LDFLAGS -Wl,-z,lazy"
./configure \
--build=$CBUILD \
@@ -25,15 +26,14 @@ build() {
}
check() {
- cd "$builddir"
make check
}
package() {
- cd "$builddir"
make DESTDIR="$pkgdir" install
install -Dm644 COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING
}
-
-sha512sums="391fc70cb7774e6e4a15f59ae7c92b1ad4dd0cf0854d92d42d990562d35686892646cbf965fd33bc0087e75a23b04162fea67829bad47173401ebac928bdfe47 xf86-video-vboxvideo-1.0.0.tar.gz"
+sha512sums="
+391fc70cb7774e6e4a15f59ae7c92b1ad4dd0cf0854d92d42d990562d35686892646cbf965fd33bc0087e75a23b04162fea67829bad47173401ebac928bdfe47 xf86-video-vboxvideo-1.0.0.tar.gz
+"
diff --git a/testing/xfce4-calculator-plugin/APKBUILD b/testing/xfce4-calculator-plugin/APKBUILD
index e05dff549b9..fc625b8e3e4 100644
--- a/testing/xfce4-calculator-plugin/APKBUILD
+++ b/testing/xfce4-calculator-plugin/APKBUILD
@@ -1,6 +1,6 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=xfce4-calculator-plugin
-pkgver=0.7.1
+pkgver=0.7.2
pkgrel=0
pkgdesc="Calculator plugin for the Xfce4 panel"
url="https://goodies.xfce.org/projects/panel-plugins/xfce4-calculator-plugin"
@@ -10,10 +10,7 @@ makedepends="xfce4-panel-dev libxfce4ui-dev"
subpackages="$pkgname-lang"
source="https://archive.xfce.org/src/panel-plugins/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.bz2"
-builddir="$srcdir/$pkgname-$pkgver"
-
build() {
- cd "$builddir"
./configure \
--build=$CBUILD \
--host=$CHOST \
@@ -27,13 +24,13 @@ build() {
}
check() {
- cd "$builddir"
make check
}
package() {
- cd "$builddir"
make DESTDIR="$pkgdir" install
}
-sha512sums="05544e5f0e293fe44ae35b3e11a2e6fac8df13743649d0702c01c6a4b2df0557f8f9712acef6bd51aaa65f5542234a6a649017bf2fe2a6d2860ae2e534e7cff2 xfce4-calculator-plugin-0.7.1.tar.bz2"
+sha512sums="
+98fa51ff0afbb09e3066f629113f6a584c5afd9228c87ee67afd7a56b065060ece16ee646ec6a2c685907a0d9733cba19cbf25bc034e009a013af2122155cc2c xfce4-calculator-plugin-0.7.2.tar.bz2
+"
diff --git a/testing/xfce4-diskperf-plugin/APKBUILD b/testing/xfce4-diskperf-plugin/APKBUILD
new file mode 100644
index 00000000000..735ea91ded3
--- /dev/null
+++ b/testing/xfce4-diskperf-plugin/APKBUILD
@@ -0,0 +1,46 @@
+# Contributor: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
+# Maintainer: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
+pkgname=xfce4-diskperf-plugin
+pkgver=2.7.0
+pkgrel=0
+pkgdesc="Displays disk I/O performance"
+url="https://docs.xfce.org/panel-plugins/xfce4-diskperf-plugin/start"
+arch="all"
+license="BSD-2-Clause"
+makedepends="
+ gtk+3.0-dev
+ libxfce4ui-dev
+ xfce4-dev-tools
+ xfce4-panel-dev
+ "
+subpackages="$pkgname-lang"
+source="$pkgname-$pkgver.tar.gz::https://gitlab.xfce.org/panel-plugins/xfce4-diskperf-plugin/-/archive/xfce4-diskperf-plugin-$pkgver/xfce4-diskperf-plugin-xfce4-diskperf-plugin-$pkgver.tar.gz"
+builddir="$srcdir/$pkgname-$pkgname-$pkgver/"
+
+prepare() {
+ default_prepare
+ ./autogen.sh
+}
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+6a1df3f53728c4a4a95cf36c7218653a4fb6ff15fa337e64d7918528be632193ef31ef1d2f5e1da8593868230e4ece29672ceea0720ecae8bf0da3294e1d4ad2 xfce4-diskperf-plugin-2.7.0.tar.gz
+"
diff --git a/testing/xfce4-docklike-plugin/0001-basename-called-but-libgen.h-not-included.patch b/testing/xfce4-docklike-plugin/0001-basename-called-but-libgen.h-not-included.patch
deleted file mode 100644
index 81624f468ad..00000000000
--- a/testing/xfce4-docklike-plugin/0001-basename-called-but-libgen.h-not-included.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-From 1af295dba41c2a5a6a91b83ce4eebc0cf6225598 Mon Sep 17 00:00:00 2001
-From: Hakan Erduman <hakan@erduman.de>
-Date: Fri, 7 Jan 2022 18:22:43 +0100
-Subject: [PATCH] basename() called but <libgen.h> not included
-
- Seen while porting to alpine linux.
- This compiles on GNU libc since it is not posixly strict
- enough in regard to header files but fails on e.g. musl
- or other c libraries.
-
- The patch adresses this by using g_path_get_basename from
- glib instead. This may also help compilation on the *BSDs.
- and void linux, musl variety.
----
- src/Helpers.cpp | 2 +-
- src/Wnck.cpp | 4 ++--
- 2 files changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/src/Helpers.cpp b/src/Helpers.cpp
-index ece3e95..086dff3 100644
---- a/src/Helpers.cpp
-+++ b/src/Helpers.cpp
-@@ -83,7 +83,7 @@ namespace Help
- {
- char buffer[1024];
- strcpy(buffer, str.c_str());
-- return basename(buffer);
-+ return g_path_get_basename(buffer);
- }
-
- std::string trim(const std::string str)
-diff --git a/src/Wnck.cpp b/src/Wnck.cpp
-index 2ab598f..1c08335 100644
---- a/src/Wnck.cpp
-+++ b/src/Wnck.cpp
-@@ -35,7 +35,7 @@ namespace Wnck
- int nbr = read(fd, buffer, 512);
- ::close(fd);
-
-- char* exe = basename(buffer);
-+ char* exe = g_path_get_basename(buffer);
- if (strcmp(exe, "python") != 0) // ADDIT graphical interpreters here
- return exe;
-
-@@ -44,7 +44,7 @@ namespace Wnck
- ;
-
- if (it < buffer + nbr)
-- return basename(it);
-+ return g_path_get_basename(it);
- }
-
- // fallback : return window's name
---
-2.34.1
-
diff --git a/testing/xfce4-docklike-plugin/APKBUILD b/testing/xfce4-docklike-plugin/APKBUILD
index f8324567cb2..f1a7a34cc78 100644
--- a/testing/xfce4-docklike-plugin/APKBUILD
+++ b/testing/xfce4-docklike-plugin/APKBUILD
@@ -1,6 +1,6 @@
# Maintainer: Hakan Erduman <hakan@erduman.de>
pkgname=xfce4-docklike-plugin
-pkgver=0.4.0
+pkgver=0.4.2
pkgrel=0
pkgdesc="Modern, minimalist taskbar for Xfce"
url="https://docs.xfce.org/panel-plugins/xfce4-docklike-plugin/start"
@@ -8,9 +8,7 @@ arch="all"
license="GPL-3.0-only"
makedepends="xfce4-panel-dev libxfce4ui-dev libwnck3-dev"
subpackages="$pkgname-lang"
-source="https://archive.xfce.org/src/panel-plugins/xfce4-docklike-plugin/${pkgver%.*}/xfce4-docklike-plugin-$pkgver.tar.bz2
- 0001-basename-called-but-libgen.h-not-included.patch
- "
+source="https://archive.xfce.org/src/panel-plugins/xfce4-docklike-plugin/${pkgver%.*}/xfce4-docklike-plugin-$pkgver.tar.bz2"
build() {
./configure \
@@ -34,6 +32,5 @@ package() {
}
sha512sums="
-4da41fc9ebae96e706ce4def8c34d214bcd92910a19ea89d3a83bb2a24665a2382d5006908048756501c7e21475b5ff4043eedf6463a8b5294eaa2b2720149bc xfce4-docklike-plugin-0.4.0.tar.bz2
-1b9ac50fd20f1bbe17a7287326e69a8e86b8715209a03392a522b44bbe06912210f035e726979a0304222ac4bfd72e6c985906ec29ffbf4d23380fbfd4780da4 0001-basename-called-but-libgen.h-not-included.patch
+8e96abbde0f9f81bb4797302aba3a711307ab46c832aac92351e038543e078bbf42f86785ee06c28c9d38dff0655ee2933247e9086ba0925f5aa05416b3ef708 xfce4-docklike-plugin-0.4.2.tar.bz2
"
diff --git a/testing/xfce4-fsguard-plugin/APKBUILD b/testing/xfce4-fsguard-plugin/APKBUILD
new file mode 100644
index 00000000000..d98b7a105b4
--- /dev/null
+++ b/testing/xfce4-fsguard-plugin/APKBUILD
@@ -0,0 +1,47 @@
+# Contributor: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
+# Maintainer: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
+pkgname=xfce4-fsguard-plugin
+pkgver=1.1.3
+pkgrel=0
+pkgdesc="Checks the free space of a given mountpoint"
+url="https://docs.xfce.org/panel-plugins/xfce4-fsguard-plugin/start"
+arch="all"
+license="BSD-2-Clause"
+makedepends="
+ gtk+3.0-dev
+ libxfce4ui-dev
+ xfce4-dev-tools
+ xfce4-panel-dev
+ "
+subpackages="xfce4-fsguard-plugin-lang"
+source="xfce4-fsguard-plugin-$pkgver.tar.gz::https://gitlab.xfce.org/panel-plugins/xfce4-fsguard-plugin/-/archive/xfce4-fsguard-plugin-$pkgver/xfce4-fsguard-plugin-xfce4-fsguard-plugin-$pkgver.tar.gz"
+builddir="$srcdir/$pkgname-$pkgname-$pkgver/"
+
+prepare() {
+ default_prepare
+ ./autogen.sh
+}
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+e6786869b16fa22a65cea8b559a67c02845c5016ea2372f493d0d61d7cc4b85cdec6649bc93104549a7b24898359f6bbeb35356eae5b2afecc314e985e8c2e7a xfce4-fsguard-plugin-1.1.3.tar.gz
+"
+
diff --git a/testing/xfce4-genmon-plugin/APKBUILD b/testing/xfce4-genmon-plugin/APKBUILD
deleted file mode 100644
index 4f1e8cf3a62..00000000000
--- a/testing/xfce4-genmon-plugin/APKBUILD
+++ /dev/null
@@ -1,30 +0,0 @@
-# Maintainer: Robert Hencke <robert.hencke@gmail.com>
-pkgname=xfce4-genmon-plugin
-pkgver=4.1.1
-pkgrel=0
-pkgdesc="A generic, script-driven monitoring plugin for the Xfce panel"
-url="http://goodies.xfce.org/projects/panel-plugins/xfce4-genmon-plugin"
-arch="all"
-license="LGPL-2.1-or-later"
-makedepends="xfce4-panel-dev libxfce4ui-dev"
-options="!check" # no tests
-subpackages="$pkgname-lang"
-source="http://archive.xfce.org/src/panel-plugins/xfce4-genmon-plugin/${pkgver%.*}/xfce4-genmon-plugin-$pkgver.tar.bz2"
-
-build() {
- ./configure \
- --prefix=/usr \
- --sysconfdir=/etc \
- --libexecdir=/usr/lib \
- --localstatedir=/var \
- --disable-static
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-663dabcdfb9d85325be5bc000f44e6cd61f78143e6d49bc7c481d14eccc3601408e2a7bed1276de5fcb24e75af66d8765fd0dc373dc8b82c1118fb5da2673c03 xfce4-genmon-plugin-4.1.1.tar.bz2
-"
diff --git a/testing/xfce4-mailwatch-plugin/APKBUILD b/testing/xfce4-mailwatch-plugin/APKBUILD
index 84d5670a9d4..b4bb6338d9a 100644
--- a/testing/xfce4-mailwatch-plugin/APKBUILD
+++ b/testing/xfce4-mailwatch-plugin/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Carlo Landmeter <clandmeter@alpinelinux.org>
-# Maintainer:
+# Maintainer: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
pkgname=xfce4-mailwatch-plugin
-pkgver=1.3.0
-pkgrel=0
+pkgver=1.3.1
+pkgrel=1
pkgdesc="a multi-protocol, multi-mailbox mail watcher"
url="https://goodies.xfce.org/projects/panel-plugins/xfce4-mailwatch-plugin"
arch="all"
@@ -30,4 +30,6 @@ package() {
make DESTDIR="$pkgdir" install
}
-sha512sums="07d4e4cc2f7d299a142d9e9b307c2797892a5febd8451d5291cb9574be0bd5daba677ee893fea3af49b6a8acbfb827ae0125ba11014df37b6c68a2734ecde11b xfce4-mailwatch-plugin-1.3.0.tar.bz2"
+sha512sums="
+cc84c0511fff983283f6af132ff224f62373a1bb608f14b332a75f259f7842491b09f7d9f9d833cb31f81eb392a1b55fe4bf6da8a15b4c62abd2e9640392fb1d xfce4-mailwatch-plugin-1.3.1.tar.bz2
+"
diff --git a/testing/xfce4-mixer/APKBUILD b/testing/xfce4-mixer/APKBUILD
new file mode 100644
index 00000000000..d84625cbbcc
--- /dev/null
+++ b/testing/xfce4-mixer/APKBUILD
@@ -0,0 +1,37 @@
+# Maintainer: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
+pkgname=xfce4-mixer
+pkgver=4.18.1
+pkgrel=2
+pkgdesc="volume control for the xfce desktop"
+url="https://docs.xfce.org/apps/xfce4-mixer/start"
+arch="all"
+license="GPL-2.0-or-later"
+makedepends="
+ gstreamer-dev
+ keybinder3-dev
+ libxfce4ui-dev
+ pulseaudio-dev
+ xfce4-panel-dev
+ "
+subpackages="$pkgname-doc $pkgname-lang"
+source="https://archive.xfce.org/src/apps/xfce4-mixer/${pkgver%.*}/xfce4-mixer-$pkgver.tar.bz2"
+
+build() {
+ ./configure \
+ --host=$CHOST \
+ --build=$CBUILD \
+ --prefix=/usr
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+9123f1fca2f95687a0d9a1eeac435082956943f67e972331eab50534f8f44a8ed244e917bcaf19ca752ffdbbafb41435292c29cdbb85ad02107fc9cec31a652c xfce4-mixer-4.18.1.tar.bz2
+"
diff --git a/testing/xfce4-mpc-plugin/APKBUILD b/testing/xfce4-mpc-plugin/APKBUILD
new file mode 100644
index 00000000000..9049e3e9b26
--- /dev/null
+++ b/testing/xfce4-mpc-plugin/APKBUILD
@@ -0,0 +1,47 @@
+# Contributor: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
+# Maintainer: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
+pkgname=xfce4-mpc-plugin
+pkgver=0.5.3
+pkgrel=0
+pkgdesc="MPD Client Plugin"
+url="https://docs.xfce.org/panel-plugins/xfce4-mpc-plugin/start"
+arch="all"
+license="ISC"
+makedepends="
+ gtk+3.0-dev
+ libxfce4ui-dev
+ xfce4-dev-tools
+ xfce4-panel-dev
+ "
+subpackages="$pkgname-lang"
+source="$pkgname-$pkgver.tar.gz::https://gitlab.xfce.org/panel-plugins/xfce4-mpc-plugin/-/archive/xfce4-mpc-plugin-$pkgver/xfce4-mpc-plugin-xfce4-mpc-plugin-$pkgver.tar.gz"
+builddir="$srcdir/$pkgname-$pkgname-$pkgver/"
+
+prepare() {
+ default_prepare
+ ./autogen.sh
+}
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+66ec587ed5f67e28e93fa796b492f00393d8ee12011b12c93a73e4ac4c4b4cc2495f5774706e0d01c90caa74e819082bc214dd362cbaa10aa52dca08be3fe3b5 xfce4-mpc-plugin-0.5.3.tar.gz
+"
+
diff --git a/testing/xfce4-netload-plugin/APKBUILD b/testing/xfce4-netload-plugin/APKBUILD
new file mode 100644
index 00000000000..033ad8e62e7
--- /dev/null
+++ b/testing/xfce4-netload-plugin/APKBUILD
@@ -0,0 +1,46 @@
+# Contributor: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
+# Maintainer: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
+pkgname=xfce4-netload-plugin
+pkgver=1.4.1
+pkgrel=0
+pkgdesc="A netload plugin for the Xfce4 desktop environment"
+url="https://docs.xfce.org/panel-plugins/xfce4-netload-plugin/start"
+arch="all"
+license="GPL-2.0-or-later"
+makedepends="
+ gtk+3.0-dev
+ libxfce4ui-dev
+ xfce4-dev-tools
+ xfce4-panel-dev
+ "
+subpackages="$pkgname-lang"
+source="$pkgname-$pkgver.tar.gz::https://gitlab.xfce.org/panel-plugins/xfce4-netload-plugin/-/archive/xfce4-netload-plugin-$pkgver/xfce4-netload-plugin-xfce4-netload-plugin-$pkgver.tar.gz"
+builddir="$srcdir/$pkgname-$pkgname-$pkgver"
+
+prepare() {
+ default_prepare
+ ./autogen.sh
+}
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+2497936ede75260cdd8e654492517dcc653bab4905ce11cf3f769aabc2d7f9058cf414d6202d394abb905ba2aa1ebb189c0611e56790d0df383b5c703417f391 xfce4-netload-plugin-1.4.1.tar.gz
+"
diff --git a/testing/xfce4-panel-profiles/APKBUILD b/testing/xfce4-panel-profiles/APKBUILD
index f161173127d..cba0718b564 100644
--- a/testing/xfce4-panel-profiles/APKBUILD
+++ b/testing/xfce4-panel-profiles/APKBUILD
@@ -1,13 +1,13 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=xfce4-panel-profiles
-pkgver=1.0.13
+pkgver=1.0.14
pkgrel=1
pkgdesc="simple application to manage Xfce panel layouts"
url="https://gitlab.xfce.org/apps/xfce4-panel-profiles"
arch="all"
license="GPL-3.0"
-depends="python3"
-makedepends="libxfce4ui-dev bash"
+depends="python3 py3-gobject3 py3-psutil"
+makedepends="libxfce4ui-dev"
options="!check"
subpackages="$pkgname-doc $pkgname-lang"
source="https://archive.xfce.org/src/apps/xfce4-panel-profiles/${pkgver%.*}/xfce4-panel-profiles-$pkgver.tar.bz2"
@@ -20,7 +20,9 @@ build() {
}
package() {
- make DESTDIR="$pkgdir" SHELL=/bin/bash install
+ make DESTDIR="$pkgdir" install
}
-sha512sums="648324e5dd95ab0a513829d7d816e2113ae677d9ad6ac9b01d73c6b4105b54d5e773150d5440ad35a37b4dc75478f40a24e0223decf940f3cf658241547ce75a xfce4-panel-profiles-1.0.13.tar.bz2"
+sha512sums="
+e316e9d4f0d27b16ce83a50adfe1a3fe2102b7f5c3ed9e9ceebf5968e265064b4d4ade1e0dbd84180758a9c1fa72d8df1fb4d06a631d07956ea8add0f66da984 xfce4-panel-profiles-1.0.14.tar.bz2
+"
diff --git a/testing/xfce4-places-plugin/APKBUILD b/testing/xfce4-places-plugin/APKBUILD
index 11470624a0b..78a5e6e93dc 100644
--- a/testing/xfce4-places-plugin/APKBUILD
+++ b/testing/xfce4-places-plugin/APKBUILD
@@ -1,6 +1,6 @@
# Maintainer: Hakan Erduman <hakan@erduman.de>
pkgname=xfce4-places-plugin
-pkgver=1.8.1
+pkgver=1.8.3
pkgrel=0
pkgdesc="Quick access to folders, documents, and removable media"
url="https://docs.xfce.org/panel-plugins/xfce4-places-plugin/start"
@@ -37,5 +37,5 @@ package() {
}
sha512sums="
-c0db29050df6ff2862a6ebc6f89d92e39f0c0511f9e719a979b5132935655078a5f5418b8b87bee2fbccaa37f5489d503dc1ae329eb7fd88970dc55b31db3324 xfce4-places-plugin-1.8.1.tar.bz2
+31ab8a47606c6406e93a753c55eb902fb25828f2c89c31814c11534dde327e656678ffcd590b41ebfab0a761bfcf0dae72e1ca3bb84eef5d0592f52114556ac9 xfce4-places-plugin-1.8.3.tar.bz2
"
diff --git a/testing/xfce4-sensors-plugin/APKBUILD b/testing/xfce4-sensors-plugin/APKBUILD
deleted file mode 100644
index c74f3d8512a..00000000000
--- a/testing/xfce4-sensors-plugin/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Contributor: Carlo Landmeter <clandmeter@alpinelinux.org>
-# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
-pkgname=xfce4-sensors-plugin
-pkgver=1.4.1
-pkgrel=0
-pkgdesc="Reads your hardware sensor values and displays them in your panel"
-url="https://goodies.xfce.org/projects/panel-plugins/xfce4-sensors-plugin"
-arch="all"
-license="GPL-2.0-or-later"
-depends_dev="xfce4-panel-dev lm-sensors-dev"
-makedepends="$depends_dev bash libxfce4ui-dev"
-subpackages="$pkgname-dev $pkgname-lang $pkgname-doc"
-source="https://archive.xfce.org/src/panel-plugins/xfce4-sensors-plugin/${pkgver%.*}/xfce4-sensors-plugin-$pkgver.tar.bz2"
-
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --infodir=/usr/share/info \
- --localstatedir=/var \
- --disable-static
- make
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-d3f335e1f18fe748648be07ace6a88eb9f95222dd4d8dd4f6e5cbb3b7c69bd93b02fdbe12b9f08e65fbf7ba8461d7a685467f9e62c0682c85b3699fae5b7ed33 xfce4-sensors-plugin-1.4.1.tar.bz2
-"
diff --git a/testing/xfce4-smartbookmark-plugin/APKBUILD b/testing/xfce4-smartbookmark-plugin/APKBUILD
new file mode 100644
index 00000000000..a827ce685ea
--- /dev/null
+++ b/testing/xfce4-smartbookmark-plugin/APKBUILD
@@ -0,0 +1,46 @@
+# Contributor: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
+# Maintainer: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
+pkgname=xfce4-smartbookmark-plugin
+pkgver=0.5.2
+pkgrel=0
+pkgdesc="Query search engines from the panel"
+url="https://docs.xfce.org/panel-plugins/xfce4-smartbookmark-plugin/start"
+arch="all"
+license="GPL-2.0-or-later"
+makedepends="
+ gtk+3.0-dev
+ libxfce4ui-dev
+ xfce4-dev-tools
+ xfce4-panel-dev
+ "
+subpackages="$pkgname-lang"
+source="$pkgname-$pkgver.tar.gz::https://gitlab.xfce.org/panel-plugins/xfce4-smartbookmark-plugin/-/archive/0.5.2/xfce4-smartbookmark-plugin-0.5.2.tar.gz"
+builddir="$srcdir/$pkgname-$pkgver/"
+
+prepare() {
+ default_prepare
+ ./autogen.sh
+}
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+48203972cfc789b27d8363aa63f74f5b85f4c2bfe188458d208e968fdbdacb1a00c0ced28700b30807930b90fdc3980f75a74bccf50ac0f72bea08a172bafd38 xfce4-smartbookmark-plugin-0.5.2.tar.gz
+"
diff --git a/testing/xfce4-statusnotifier-plugin/APKBUILD b/testing/xfce4-statusnotifier-plugin/APKBUILD
deleted file mode 100644
index 976677a933d..00000000000
--- a/testing/xfce4-statusnotifier-plugin/APKBUILD
+++ /dev/null
@@ -1,34 +0,0 @@
-# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
-pkgname=xfce4-statusnotifier-plugin
-pkgver=0.2.3
-pkgrel=0
-pkgdesc="Panel area status notifier plugin for Xfce4"
-url="https://docs.xfce.org/panel-plugins/xfce4-statusnotifier-plugin"
-arch="all"
-license="GPL-2.0-only"
-makedepends="glib-dev libxfce4ui-dev xfce4-panel-dev libdbusmenu-gtk3-dev"
-subpackages="$pkgname-lang"
-source="https://archive.xfce.org/src/panel-plugins/xfce4-statusnotifier-plugin/${pkgver%.*}/xfce4-statusnotifier-plugin-$pkgver.tar.bz2"
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-4c56d4bc20a09b0fc3bb3c1e70e377ca65379bb765a8e86402cf1216ba0c7c3d9b9de28d3cde1e48a9c5509ca49cedf5fb8f90447189dc63bacac033cb1a7c98 xfce4-statusnotifier-plugin-0.2.3.tar.bz2
-"
diff --git a/testing/xfce4-systemload-plugin/10-wrong-var-type-on-32bit.patch b/testing/xfce4-systemload-plugin/10-wrong-var-type-on-32bit.patch
new file mode 100644
index 00000000000..54196904942
--- /dev/null
+++ b/testing/xfce4-systemload-plugin/10-wrong-var-type-on-32bit.patch
@@ -0,0 +1,21 @@
+From: Akbarkhon Variskhanov <akbarkhon.variskhanov AT gmail.com>
+Date: Tue, 20 Dec 2022 13:50:40 +0500
+Subject: Fix build failure due to wrong var type
+
+---
+ panel-plugin/network.cc | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/panel-plugin/network.cc b/panel-plugin/network.cc
+index 6a85dab..3de831d 100644
+--- a/panel-plugin/network.cc
++++ b/panel-plugin/network.cc
+@@ -114,7 +114,7 @@ read_netload_proc (gulong *bytes)
+ gint
+ read_netload (gulong *net, gulong *NTotal)
+ {
+- static guint64 bytes[2];
++ static gulong bytes[2];
+ static gint64 time[2];
+
+ *net = 0;
diff --git a/testing/xfce4-systemload-plugin/APKBUILD b/testing/xfce4-systemload-plugin/APKBUILD
new file mode 100644
index 00000000000..b8b59b51c8f
--- /dev/null
+++ b/testing/xfce4-systemload-plugin/APKBUILD
@@ -0,0 +1,35 @@
+# Maintainer: Daniel Fancsali <fancsali@gmail.com>
+pkgname=xfce4-systemload-plugin
+pkgver=1.3.2
+pkgrel=0
+pkgdesc="System load plugin for the Xfce Panel"
+url="https://goodies.xfce.org/projects/panel-plugins/xfce4-systemload-plugin"
+arch="all"
+license="BSD-2-Clause"
+makedepends="xfce4-panel-dev libxfce4ui-dev"
+subpackages="$pkgname-lang"
+source="
+ https://archive.xfce.org/src/panel-plugins/xfce4-systemload-plugin/${pkgver%.*}/xfce4-systemload-plugin-$pkgver.tar.bz2
+ 10-wrong-var-type-on-32bit.patch
+"
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --libexecdir=/usr/lib/xfce4 \
+ --localstatedir=/var \
+ --disable-static
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+f432988f439e5fd7ada16b3e6eaa42b3351531ba3e2b63e2570387bf4d7e605ff9d5a97fde3f5f5eb323ff08aaf3c050f161a5768392b80aa99fabaabda82431 xfce4-systemload-plugin-1.3.2.tar.bz2
+913a112a49c544d3b2a56e2b24621285e10178d188ee041bd12f62c7395ad3b8131fd951a9a33dc216a3d0322510d7c60daf7cd1c9d3169857fc920baac390c7 10-wrong-var-type-on-32bit.patch
+"
diff --git a/testing/xfce4-timer-plugin/APKBUILD b/testing/xfce4-timer-plugin/APKBUILD
index 9e7d81f7e61..0d1154beebb 100644
--- a/testing/xfce4-timer-plugin/APKBUILD
+++ b/testing/xfce4-timer-plugin/APKBUILD
@@ -1,6 +1,6 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=xfce4-timer-plugin
-pkgver=1.7.1
+pkgver=1.7.2
pkgrel=0
pkgdesc="Timer plugin for Xfce"
url="https://docs.xfce.org/panel-plugins/xfce4-timer-plugin"
@@ -9,7 +9,7 @@ license="GPL-2.0-or-later"
makedepends="xfce4-panel-dev libxfce4ui-dev gtk+3.0-dev"
options="!check" # no testsuite
subpackages="$pkgname-lang"
-source="http://archive.xfce.org/src/panel-plugins/xfce4-timer-plugin/${pkgver%.*}/xfce4-timer-plugin-$pkgver.tar.bz2"
+source="https://archive.xfce.org/src/panel-plugins/xfce4-timer-plugin/${pkgver%.*}/xfce4-timer-plugin-$pkgver.tar.bz2"
build() {
./configure \
@@ -26,4 +26,6 @@ package() {
make DESTDIR="$pkgdir" install
}
-sha512sums="4887dc2c524a8b749a20449dd491dc8f12f8babb26c64cecf33ae56b45d2446128cb65c25f11d534278ad39a2adf7ab718714e1bfa613fd39713e44642030c16 xfce4-timer-plugin-1.7.1.tar.bz2"
+sha512sums="
+11a3b146c56f1526530b7f810c76ba95ef4dc7c113fa0ad2839494a5bc66c09f4a3ff966bc5d76055482a284c6c082b08a4b6af4684e5ccdec67946b0cdd820d xfce4-timer-plugin-1.7.2.tar.bz2
+"
diff --git a/testing/xfce4-verve-plugin/APKBUILD b/testing/xfce4-verve-plugin/APKBUILD
new file mode 100644
index 00000000000..0521a52146f
--- /dev/null
+++ b/testing/xfce4-verve-plugin/APKBUILD
@@ -0,0 +1,47 @@
+# Contributor: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
+# Maintainer: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
+pkgname=xfce4-verve-plugin
+pkgver=2.0.3
+pkgrel=0
+pkgdesc="Command line interface with auto-completion and command history"
+url="https://docs.xfce.org/panel-plugins/xfce4-verve-plugin/start"
+arch="all"
+license="GPL-2.0-or-later"
+makedepends="
+ gtk+3.0-dev
+ libxfce4ui-dev
+ pcre2-dev
+ xfce4-dev-tools
+ xfce4-panel-dev
+ "
+subpackages="$pkgname-lang"
+source="$pkgname-$pkgver.tar.gz::https://gitlab.xfce.org/panel-plugins/xfce4-verve-plugin/-/archive/xfce4-verve-plugin-$pkgver/xfce4-verve-plugin-xfce4-verve-plugin-$pkgver.tar.gz"
+builddir="$srcdir/$pkgname-$pkgname-$pkgver/"
+
+prepare() {
+ default_prepare
+ ./autogen.sh
+}
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="
+baafbc0a6973e6392eea957ae384a7595df4277d9948b9e8a406eb3277b54460d937c11595787279605427f4244196480bfde5c80716dcca351db01eaf67b507 xfce4-verve-plugin-2.0.3.tar.gz
+"
diff --git a/testing/xfd/APKBUILD b/testing/xfd/APKBUILD
index f648013bff4..9c68031c957 100644
--- a/testing/xfd/APKBUILD
+++ b/testing/xfd/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Taner Tas <taner76@gmail.com>
# Maintainer: Taner Tas <taner76@gmail.com>
pkgname=xfd
-pkgver=1.1.3
+pkgver=1.1.4
pkgrel=0
pkgdesc="Xorg font display application."
url="https://xorg.freedesktop.org/"
@@ -19,7 +19,7 @@ makedepends="
"
subpackages="$pkgname-doc"
source="
- https://xorg.freedesktop.org/archive/individual/app/$pkgname-$pkgver.tar.gz
+ https://xorg.freedesktop.org/archive/individual/app/$pkgname-$pkgver.tar.xz
"
options="!check" # No test suite
@@ -33,4 +33,6 @@ package() {
make DESTDIR="$pkgdir" install
}
-sha512sums="6154c3014b407b6eb01615e214c7bda8ab7b2d11ca4e5e457fdd79d757c37cd6b358c46b45e782c5462324bfb539830520e228e9600546fb1b0878e0974abc78 xfd-1.1.3.tar.gz"
+sha512sums="
+fa1f8a7b5d89be20fb2b1e3e0e8f4d7f9463e91fd385d21e1403a398c2e263112043b568417c420c5ee33bec60e06658498dd55df6d7ac19da3af0844f932209 xfd-1.1.4.tar.xz
+"
diff --git a/testing/xfe/10-fix-build.patch b/testing/xfe/10-fix-build.patch
new file mode 100644
index 00000000000..4850e282fbf
--- /dev/null
+++ b/testing/xfe/10-fix-build.patch
@@ -0,0 +1,7 @@
+--- xfe-1.46.1.orig/po/POTFILES.skip
++++ xfe-1.46.1/po/POTFILES.skip
+@@ -5,3 +5,4 @@
+ xfw.desktop.in.in
+ intl/plural.c
+ org.root.xfe.policy.in
++org.xfe.root.policy.in
diff --git a/testing/xfe/APKBUILD b/testing/xfe/APKBUILD
new file mode 100644
index 00000000000..e5dec96f5db
--- /dev/null
+++ b/testing/xfe/APKBUILD
@@ -0,0 +1,62 @@
+# Contributor: Peter Shkenev <santurysim@gmail.com>
+# Maintainer: Peter Shkenev <santurysim@gmail.com>
+pkgname=xfe
+pkgver=1.46.1
+pkgrel=0
+pkgdesc="MS-Explorer or Commander like file manager for X"
+url="http://roland65.free.fr/xfe/index.php?page=home"
+arch="all"
+license="GPL-2.0-only"
+makedepends="
+ fox-dev
+ libx11-dev
+ freetype-dev
+ libxft-dev
+ xcb-util-dev
+ gettext-dev
+ intltool
+ "
+subpackages="$pkgname-doc $pkgname-lang $pkgname-xfi $pkgname-xfp $pkgname-xfw"
+source="
+ https://downloads.sourceforge.net/xfe/xfe-$pkgver.tar.xz
+ 10-fix-build.patch
+ "
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+}
+
+xfi() {
+ pkgdesc="$pkgdesc (image viewer)"
+ amove usr/bin/xfi
+}
+
+xfp() {
+ pkgdesc="$pkgdesc (DEB/RPM package viewer)"
+ amove usr/bin/xfp
+}
+
+xfw() {
+ pkgdesc="$pkgdesc (text editor)"
+ amove usr/bin/xfw
+}
+
+sha512sums="
+bdd0eb017797e8e5d0ea61e86cbcff686eaee5dd5a14fbe770630ccd0c31f2ea6e544e66cc8bc178760670e821caae388d12ba285c8556f618a540cffeb61593 xfe-1.46.1.tar.xz
+68e0357c2c13a1856d2de11f0b118ae0299e6c47654d9f5b03bc9cca6e675195694ed7ff408eb41546da90b26bc62d7f820399712714f7a79773d5c6adaef67d 10-fix-build.patch
+"
diff --git a/testing/xfig/APKBUILD b/testing/xfig/APKBUILD
deleted file mode 100644
index 75ccb29a20f..00000000000
--- a/testing/xfig/APKBUILD
+++ /dev/null
@@ -1,48 +0,0 @@
-# Contributor: Grigory Kirillov <txgk@bk.ru>
-# Maintainer: Grigory Kirillov <txgk@bk.ru>
-pkgname=xfig
-pkgver=3.2.8b
-pkgrel=0
-pkgdesc="Interactive drawing tool which runs under X Window System"
-url="http://mcj.sourceforge.net"
-arch="all"
-license="custom"
-makedepends="
- libpng-dev
- libjpeg-turbo-dev
- tiff-dev
- libxaw-dev
- libxaw3d-dev
- ghostscript-dev
- "
-subpackages="$pkgname-doc"
-source="
- http://downloads.sourceforge.net/mcj/xfig-$pkgver.tar.xz
- COPYING
- "
-
-build() {
- ./configure \
- --target="$CTARGET" \
- --build="$CBUILD" \
- --host="$CHOST" \
- --prefix=/usr
- make
-}
-
-check() {
- # Muffle third test because it always fails.
- echo 'int main(void){return 0;}' > tests/test3.c
-
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- install -Dm644 ../COPYING -t "$pkgdir"/usr/share/licenses/"$pkgname"/
-}
-
-sha512sums="
-5cc5e61977f97956baca77bf4bce09d0f47ea6fafb10055d0523f7cccd72d7af80e706daa62ae16df3fc54338b4f6cd4a6b71dc460311e65be749ec84fa662b3 xfig-3.2.8b.tar.xz
-0289c266555028702e15749e557c7f17eaecc908f61458dbcfc118f547dbfb831351ec7cfce290368d343a7d7e9fa6914e81103312d94939938571f2acdc9424 COPYING
-"
diff --git a/testing/xfig/COPYING b/testing/xfig/COPYING
deleted file mode 100644
index 3aa5314ad0e..00000000000
--- a/testing/xfig/COPYING
+++ /dev/null
@@ -1,20 +0,0 @@
-Original Copyright (c) 1985 by Supoj Sutanthavibul
-Parts Copyright (c) 1989-2012 by Brian V. Smith
-Parts Copyright (c) 1991 by Paul King
-Other Copyrights may be found in various files
-
-Main Xfig copyright notice:
-
-Any party obtaining a copy of these files is granted, free of charge, a full and unrestricted irrevocable, world-wide, paid up, royalty-free, nonexclusive right and license to deal in this software and documentation files (the "Software"), including without limitation the rights to use, copy, modify, merge, publish and/or distribute copies of the Software, and to permit persons who receive copies from any such party to do so, with the only requirement being that this copyright notice remain intact.
-
-No representations are made about the suitability of this software for any purpose. It is provided "as is" without express or implied warranty.
-
-Parts Copyright (C) 1993 by Alan Richardson (mppa3@uk.ac.sussex.syma)
-The text rotation code in w_rottext.c was written by Alan Richardson. The above copyright notice holds for this work as well.
-
-Parts Copyright (c) 1994 by Anthony Dekker
-The Kohonen neural network code for color optimization was written by Anthony Dekker.
-
-Parts Copyright (c) 1995 by C. Blanc and C. Schlick
-The X-Spline code was written Carole Blanc (blanc@labri.u-bordeaux.fr) and Christophe Schlick (schlick@labri.u-bordeaux.fr) starting from an initial implementation done by C. Feuille, S. Grosbois, L. Maziere and L. Minihot as a student practice (Universite Bordeaux, France). For additional information about X-splines, see:
-"X-Splines: A Spline Model Designed for the End User" by C. Blanc and C. Schlick, Proceedings of SIGGRAPH'95 http://dept-info.labri.u-bordeaux.fr/~schlick/DOC/sig1.html
diff --git a/testing/xgalaga/APKBUILD b/testing/xgalaga/APKBUILD
index c35b058fa3f..635af112d25 100644
--- a/testing/xgalaga/APKBUILD
+++ b/testing/xgalaga/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
pkgname=xgalaga
pkgver=2.1.1.0
-pkgrel=0
+pkgrel=1
pkgdesc="Clone of the classic game Galaga for the X Window System"
url="http://rumsey.org/xgal.html"
arch="all"
diff --git a/testing/xh/APKBUILD b/testing/xh/APKBUILD
deleted file mode 100644
index 8f61546b906..00000000000
--- a/testing/xh/APKBUILD
+++ /dev/null
@@ -1,54 +0,0 @@
-# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
-#
-# TODO: Link with system-provided openssl library.
-pkgname=xh
-pkgver=0.16.0
-pkgrel=0
-pkgdesc="Yet another HTTPie clone"
-url="https://github.com/ducaale/xh"
-# ppc64le fails to build
-# others are limited by rust/cargo
-arch="x86_64 armv7 armhf aarch64 x86"
-license="MIT"
-checkdepends="curl-dev openssl-dev"
-makedepends="cargo oniguruma-dev zlib-dev"
-subpackages="
- $pkgname-doc
- $pkgname-bash-completion
- $pkgname-fish-completion
- $pkgname-zsh-completion
- "
-source="https://github.com/ducaale/xh/archive/v$pkgver/xh-$pkgver.tar.gz
- minimize-size.patch
- "
-
-# Link with system-provided oniguruma library (instead building from source
-# and bundling).
-export RUSTONIG_DYNAMIC_LIBONIG=1
-
-build() {
- cargo build --release --locked
-}
-
-check() {
- cargo test --locked
-}
-
-package() {
- cargo install --locked --path . --root="$pkgdir/usr"
- rm "$pkgdir"/usr/.crates*
-
- ln -s xh "$pkgdir"/usr/bin/xhs
-
- install -Dm 644 doc/xh.1 "$pkgdir"/usr/share/man/man1/xh.1
-
- install -Dm 644 completions/xh.bash "$pkgdir"/usr/share/bash-completion/completions/xh
- install -Dm 644 completions/xh.fish "$pkgdir"/usr/share/fish/completions/xh.fish
- install -Dm 644 completions/_xh "$pkgdir"/usr/share/zsh/site-functions/_xh
-}
-
-sha512sums="
-5ea31e45b9cb3b23c53f1485a891f2a45181f61645d86084b9d904bacd1100cb48ce3c837de50a6eb1b4df88f417a707afb850171359c356fa1d8542e48ab3b1 xh-0.16.0.tar.gz
-d160a00303d48da6d8512aa17bf921923be8b5f25803838d4a92e84e2f9c0428a790c8f48500cdc8223b00d9d7ad92b0c77801834071673828c7365d7b7c4ad1 minimize-size.patch
-"
diff --git a/testing/xh/minimize-size.patch b/testing/xh/minimize-size.patch
deleted file mode 100644
index 9a4d0428df9..00000000000
--- a/testing/xh/minimize-size.patch
+++ /dev/null
@@ -1,15 +0,0 @@
---- a/Cargo.toml
-+++ b/Cargo.toml
-@@ -65,6 +65,12 @@
- [build-dependencies]
- syntect = { version = "4.4", default-features = false }
-
-+[profile.release]
-+codegen-units = 1
-+lto = true
-+opt-level = "z"
-+panic = "abort"
-+
- [features]
- default = ["online-tests"]
- online-tests = []
diff --git a/testing/xiccd/APKBUILD b/testing/xiccd/APKBUILD
index 1a3d170cb3f..8214345de8c 100644
--- a/testing/xiccd/APKBUILD
+++ b/testing/xiccd/APKBUILD
@@ -1,7 +1,6 @@
-# Contributor: psykose <alice@ayaya.dev>
# Maintainer: Saijin-Naib <Saijin-Naib_package-maintenance@outlook.com>
pkgname=xiccd
-pkgver=0_git20211219
+pkgver=0.3.0_git20211219
_pkgrev=b51882079dabd4025eefbf89f58bd18e3e63b769
pkgrel=1
pkgdesc="X Color Profile Daemon"
diff --git a/testing/xisxwayland/APKBUILD b/testing/xisxwayland/APKBUILD
new file mode 100644
index 00000000000..1a15788c80f
--- /dev/null
+++ b/testing/xisxwayland/APKBUILD
@@ -0,0 +1,32 @@
+# Maintainer:
+pkgname=xisxwayland
+pkgver=2
+pkgrel=1
+pkgdesc="Detect if X is XWayland"
+url="https://gitlab.freedesktop.org/xorg/app/xisxwayland"
+arch="all"
+license="MIT"
+makedepends="
+ libx11-dev
+ libxrandr-dev
+ meson
+ "
+subpackages="$pkgname-doc"
+source="https://xorg.freedesktop.org/archive/individual/app/xisxwayland-$pkgver.tar.xz"
+
+build() {
+ abuild-meson . output
+ meson compile -C output
+}
+
+check() {
+ meson test --print-errorlogs --no-rebuild -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+sha512sums="
+b89e19c85a5cd7e62a52e22772f80f03bfea069e31412ca11ac38174c4a2994be559e9d5fb49e6d1921b3f1b06ee71b50ede48990a1e7804a96207b08fc7827f xisxwayland-2.tar.xz
+"
diff --git a/testing/xkb-switch/APKBUILD b/testing/xkb-switch/APKBUILD
index 358e50cf9f7..19e104483e3 100644
--- a/testing/xkb-switch/APKBUILD
+++ b/testing/xkb-switch/APKBUILD
@@ -10,7 +10,7 @@ license="GPL-3.0-or-later"
options="!check"
makedepends="cmake libx11-dev libxkbfile-dev"
subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::$url/archive/$pkgver.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/grwlf/xkb-switch/archive/$pkgver.tar.gz"
prepare() {
default_prepare
diff --git a/testing/xlhtml/APKBUILD b/testing/xlhtml/APKBUILD
new file mode 100644
index 00000000000..5c6db8b7f7b
--- /dev/null
+++ b/testing/xlhtml/APKBUILD
@@ -0,0 +1,34 @@
+# Contributor: Noel Kuntze <noel.kuntze@thermi.consulting>
+# Maintainer: Noel Kuntze <noel.kuntze@thermi.consulting>
+
+pkgname=xlhtml
+pkgver=0.5.1
+pkgrel=0
+pkgdesc="An Excel spreadsheet (.xls) and PowerPoint (.ppt) to HTML converter"
+arch="all"
+url="https://chicago.sourceforge.net/xlhtml/"
+license='GPL-2.0-or-later '
+source="https://bitbucket.org/jsuto/piler/downloads/xlhtml-$pkgver-sj-mod.tar.gz"
+options="!check" # no test suite
+subpackages="$pkgname-doc"
+
+builddir="$srcdir/$pkgname-$pkgver-sj-mod"
+
+prepare() {
+ default_prepare
+ update_config_sub
+ update_config_guess
+}
+
+build() {
+ ./configure.real --prefix=/usr --mandir="$pkgdir/usr/share/man"
+ make
+}
+
+package() {
+ make prefix="$pkgdir/usr" install
+}
+
+sha512sums="
+1efb387e218a3d7fd3935a65398fba64561b45b1b7916ba1bf4e13edf5155748e811e4e0c35a6d3d83b30f4585a66186fae25199cdaf0c369d085f31ec52fe9d xlhtml-0.5.1-sj-mod.tar.gz
+"
diff --git a/testing/xmag/APKBUILD b/testing/xmag/APKBUILD
new file mode 100644
index 00000000000..df31e2274db
--- /dev/null
+++ b/testing/xmag/APKBUILD
@@ -0,0 +1,37 @@
+# Contributor: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
+pkgname=xmag
+pkgver=1.0.7
+pkgrel=1
+pkgdesc="Utility to display a magnified snapshot of a portion of an X11 screen"
+url="https://gitlab.freedesktop.org/xorg/app/xmag"
+arch="all"
+license="custom"
+options="!check" # no test suite
+makedepends="
+ libx11-dev
+ libxaw-dev
+ libxmu-dev
+ libxt-dev
+ util-macros
+ "
+source="https://xorg.freedesktop.org/archive/individual/app/xmag-$pkgver.tar.gz"
+subpackages="$pkgname-doc"
+
+build() {
+ ./configure \
+ --target="$CTARGET" \
+ --build="$CBUILD" \
+ --host="$CHOST" \
+ --prefix=/usr
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+ install -Dm644 COPYING -t "$pkgdir"/usr/share/licenses/"$pkgname"
+}
+
+sha512sums="
+aa0a2e00e618e80f0d7c8a9e49bdb92d8f27caab242ccb5a848c4b0f30cb00b5ea905157452ca99b7941b090d19f96e3e8e228da2285dbb7fa51159735d30f45 xmag-1.0.7.tar.gz
+"
diff --git a/testing/xmake/01-pkgconfig-libsv.patch b/testing/xmake/01-pkgconfig-libsv.patch
new file mode 100644
index 00000000000..4b361f89815
--- /dev/null
+++ b/testing/xmake/01-pkgconfig-libsv.patch
@@ -0,0 +1,11 @@
+--- a/core/xmake.sh
++++ b/core/xmake.sh
+@@ -160,7 +160,7 @@
+ # the sv option
+ option "sv"
+ add_cfuncs "semver_tryn"
+- add_cincludes "semver.h"
++ add_cincludes "sv/semver.h"
+ add_links "sv"
+ before_check "option_find_sv"
+ option_end
diff --git a/testing/xmake/02-system-include.patch b/testing/xmake/02-system-include.patch
new file mode 100644
index 00000000000..340c24808e3
--- /dev/null
+++ b/testing/xmake/02-system-include.patch
@@ -0,0 +1,22 @@
+--- a/core/src/xmake/hash/xxhash.c
++++ b/core/src/xmake/hash/xxhash.c
+@@ -32,7 +32,7 @@
+ #define XXH_NAMESPACE XM_
+ #define XXH_STATIC_LINKING_ONLY
+ #define XXH_IMPLEMENTATION
+-#include "xxhash/xxhash.h"
++#include "xxhash.h"
+
+ /* //////////////////////////////////////////////////////////////////////////////////////
+ * implementation
+--- a/core/src/xmake/semver/prefix.h
++++ b/core/src/xmake/semver/prefix.h
+@@ -25,7 +25,7 @@
+ * includes
+ */
+ #include "../prefix.h"
+-#include "semver.h"
++#include "sv/semver.h"
+
+ /* //////////////////////////////////////////////////////////////////////////////////////
+ * extern
diff --git a/testing/xmake/APKBUILD b/testing/xmake/APKBUILD
new file mode 100644
index 00000000000..5cd0b40c927
--- /dev/null
+++ b/testing/xmake/APKBUILD
@@ -0,0 +1,87 @@
+# Contributor: qaqland <qaq@qaq.land>
+# Maintainer: qaqland <qaq@qaq.land>
+pkgname=xmake
+pkgver=2.8.9
+pkgrel=0
+pkgdesc="A cross-platform build utility based on Lua"
+url="https://xmake.io/"
+arch="all"
+license="Apache-2.0"
+options="net"
+depends="bash"
+makedepends="
+ readline-dev
+ ncurses-dev
+ linux-headers
+ libsv-dev
+ lua5.4-dev
+ lz4-dev
+ xxhash-dev
+ libtbox-dev
+ "
+checkdepends="7zip"
+subpackages="
+ $pkgname-doc
+ $pkgname-bash-completion
+ $pkgname-zsh-completion
+ $pkgname-fish-completion
+ "
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/xmake-io/xmake/archive/refs/tags/v$pkgver.tar.gz
+ 01-pkgconfig-libsv.patch
+ 02-system-include.patch
+ "
+
+prepare() {
+ default_prepare
+ # Cleanup bundled deps
+ rm -rf core/src/lua-cjson/*/
+ rm -rf core/src/lua/*/
+ rm -rf core/src/luajit/*/
+ rm -rf core/src/lz4/*/
+ rm -rf core/src/pdcurses/*/
+ rm -rf core/src/sv/*/
+ rm -rf core/src/tbox/*/
+ rm -rf core/src/xxhash/*/
+ # Remove complicated toolchain tests
+ rm -rf tests/projects
+
+ sed -i '1 s|#!/bin/sh|#!/bin/bash|' configure
+}
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --external=yes \
+ --kind=shared
+ make
+}
+
+check() {
+ cp build/xmake xmake/xmake
+ cp scripts/xrepo.sh xmake/xrepo
+ PATH="$PATH:$builddir/xmake"; \
+ xmake lua -v -D tests/run.lua; \
+ xrepo --version
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+
+ install -Dm644 scripts/man/*1 -t "$pkgdir"/usr/share/man/man1/
+
+ install -Dm644 xmake/scripts/completions/register-completions.bash \
+ "$pkgdir"/usr/share/bash-completion/completions/xmake
+ install -Dm644 xmake/scripts/completions/register-completions.zsh \
+ "$pkgdir"/usr/share/zsh/site-functions/_xmake
+ install -Dm644 xmake/scripts/completions/register-completions.fish \
+ "$pkgdir"/usr/share/fish/vendor_completions.d/xmake.fish
+}
+
+sha512sums="
+4eb4a8e607c9edb79409d805645669acbd2d676c572135b1a14356ed6b68b3501fdc120fcdcc69792a1389f0b1d643c1ed46ad705d172c26356f9975891e23a8 xmake-2.8.9.tar.gz
+a2799a33230c849102f27e15c44b3972691132f551d7a571ed5c8d99a628d2f1923f093bcc41cc2b11c9fd431dfa4b2cb71438530ed3fe2c2daa656530a2fccc 01-pkgconfig-libsv.patch
+735560bb8a148818b3c1efeac612c2873c473fd6727e749de78053442fda09919e51292f1aae71e49e5b22ab432da0a981d2d7505bd6e25ae02e4b40b6084279 02-system-include.patch
+"
diff --git a/testing/xml2rfc/APKBUILD b/testing/xml2rfc/APKBUILD
index b687727b84e..c1a2a9a2e67 100644
--- a/testing/xml2rfc/APKBUILD
+++ b/testing/xml2rfc/APKBUILD
@@ -1,19 +1,21 @@
-# Contributor:
-# Maintainer:
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=xml2rfc
-pkgver=3.7.0
-pkgrel=1
+pkgver=3.21.0
+pkgrel=0
pkgdesc="tool for converting XML documents into internet drafts and RFCs"
options="!check" # Requires unpackaged i18naddress
-url="https://tools.ietf.org/"
+url="https://github.com/ietf-tools/xml2rfc"
arch="noarch"
license="BSD-2-Clause"
depends="python3 py3-six py3-requests py3-lxml"
-makedepends="py3-setuptools"
+makedepends="py3-gpep517 py3-setuptools py3-wheel"
+subpackages="$pkgname-pyc"
source="https://files.pythonhosted.org/packages/source/x/xml2rfc/xml2rfc-$pkgver.tar.gz"
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
@@ -21,7 +23,10 @@ check() {
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
-sha512sums="401b2179f1fba713270af79b391005c82a82a366465dc310ed5c4bdd9ce1b2f5414e3097a150ac116dce7d3fea5d1e44ab4361d0f5e7c01e79fcfa794e51250a xml2rfc-3.7.0.tar.gz"
+sha512sums="
+3f64b4692a51f201b6d8524c232e7e927829c0e8854e8f71d7f395f399be5ddd88195bbce5839979ea93abaf85fb3fc6527b80e699a74a6dababf8f35c1c1bab xml2rfc-3.21.0.tar.gz
+"
diff --git a/testing/xmp/APKBUILD b/testing/xmp/APKBUILD
index cd0b980ff8a..c00123e9017 100644
--- a/testing/xmp/APKBUILD
+++ b/testing/xmp/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Dominika Liberda <ja@sdomi.pl>
# Contributor: Dominika Liberda <ja@sdomi.pl>
pkgname=xmp
-pkgver=4.1.0
+pkgver=4.2.0
pkgrel=0
pkgdesc="Command-line mod player using libxmp"
url="https://github.com/libxmp/xmp-cli"
@@ -34,5 +34,5 @@ package() {
}
sha512sums="
-ed225ddf9e31fa0de19628a5346cb8238f18e55cf9cb06bfb50c448cb78805a6a257b2eac1a3530ee38c29285fad8daac9951204dee18298c11d0f64b065f24d xmp-4.1.0.tar.gz
+60d625e83cff6af80382d75b09a0ef1d9b60d86c2cae5ba79b619d8b4999bf15398efefde446670323a17e6f30ca17b0dc737a9265bd7299cf832074291c1c14 xmp-4.2.0.tar.gz
"
diff --git a/testing/xmpp-dns/APKBUILD b/testing/xmpp-dns/APKBUILD
index 3d085fc3f37..7a337c34f6f 100644
--- a/testing/xmpp-dns/APKBUILD
+++ b/testing/xmpp-dns/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Anjandev Momi <anjan@momi.ca>
pkgname=xmpp-dns
pkgver=0.2.4
-pkgrel=1
+pkgrel=16
pkgdesc="CLI tool to check XMPP SRV records"
url="https://salsa.debian.org/mdosch/xmpp-dns/"
arch="all"
@@ -11,8 +11,12 @@ makedepends="go"
source="$pkgname-$pkgver.tar.gz::https://salsa.debian.org/mdosch/xmpp-dns/-/archive/v$pkgver/xmpp-dns-v$pkgver.tar.gz"
builddir="$srcdir/$pkgname-v$pkgver"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+export GOFLAGS="$GOFLAGS -modcacherw"
+
build() {
- export GOFLAGS="$GOFLAGS -modcacherw"
go build -o xmpp-dns
}
@@ -23,8 +27,7 @@ check() {
}
package() {
- mkdir -p "$pkgdir"/usr/bin
- install xmpp-dns "$pkgdir"/usr/bin
+ install -Dm755 xmpp-dns -t "$pkgdir"/usr/bin/
}
sha512sums="
diff --git a/testing/xmppc/APKBUILD b/testing/xmppc/APKBUILD
deleted file mode 100644
index 6225733987f..00000000000
--- a/testing/xmppc/APKBUILD
+++ /dev/null
@@ -1,41 +0,0 @@
-# Maintainer: j.r <j.r@jugendhacker.de>
-pkgname=xmppc
-pkgver=0.1.2
-pkgrel=1
-pkgdesc="Command Line Interface Tool for XMPP"
-url="https://codeberg.org/Anoxinon_e.V./xmppc"
-arch="all"
-license="GPL-3.0-or-later"
-makedepends="libstrophe-dev autoconf automake libtool glib-dev gpgme-dev"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://codeberg.org/Anoxinon_e.V./xmppc/archive/$pkgver.tar.gz"
-builddir="$srcdir/$pkgname"
-
-prepare() {
- default_prepare
-
- ./bootstrap.sh
-}
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-c688e44c46e698c80291a2dab60c1f3fd298db2cc085e3ef6a4cb3ac6f110ac447cb4dc19498d6ab62111de26c86a0aa0c2ed5b261e1529176c020f7f4619f86 xmppc-0.1.2.tar.gz
-"
diff --git a/testing/xmppipe/APKBUILD b/testing/xmppipe/APKBUILD
index 61e2a050bd3..5e6980e50fa 100644
--- a/testing/xmppipe/APKBUILD
+++ b/testing/xmppipe/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Anjandev Momi <anjan@momi.ca>
# Maintainer: Anjandev Momi <anjan@momi.ca>
pkgname=xmppipe
-pkgver=0.14.2
+pkgver=0.16.0
pkgrel=1
pkgdesc="stdio over XMPP"
url="https://github.com/msantos/xmppipe"
@@ -21,10 +21,9 @@ check() {
}
package() {
- install -Dm755 "$builddir"/xmppipe \
- "$pkgdir"/usr/bin/xmppipe
+ install -Dm755 xmppipe -t "$pkgdir"/usr/bin/
}
sha512sums="
-3080b96dc533b9a9c874b6904c28e544663a3b1440c69d7d395ec5b6bdaf0ab0f9148b93db37ab458de0e16f1e3ce358b7fad0d7e561ea9fc2a751c172586456 xmppipe-0.14.2.tar.gz
+beb8e83d6d33989510812ae32d551c59ece1064a80817170ea3c0ab07986d30f1e7ee1f3dc2b976b2636b54b3892fd12bcf8b71a8e3cf443605989c29525d18e xmppipe-0.16.0.tar.gz
"
diff --git a/testing/xmrig-proxy/APKBUILD b/testing/xmrig-proxy/APKBUILD
deleted file mode 100644
index dc1364ad70d..00000000000
--- a/testing/xmrig-proxy/APKBUILD
+++ /dev/null
@@ -1,29 +0,0 @@
-# Contributor: Oleg Titov <oleg.titov@gmail.com>
-# Maintainer: Oleg Titov <oleg.titov@gmail.com>
-
-pkgname=xmrig-proxy
-pkgver=6.15.1
-pkgrel=1
-pkgdesc="XMRig Proxy is a high performance Monero (XMR) Stratum protocol proxy"
-url="https://xmrig.com/xmrig-proxy"
-arch="all"
-license="GPL-3.0-or-later"
-options="!check" # No test suite from upstream
-makedepends="cmake libuv-dev libmicrohttpd-dev openssl-dev util-linux-dev"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/xmrig/xmrig-proxy/archive/v$pkgver.tar.gz"
-
-build() {
- cmake -B build -DCMAKE_BUILD_TYPE=None
- make -C build
-}
-
-package() {
- install -Dm 755 build/xmrig-proxy $pkgdir/usr/bin/xmrig-proxy
-
- install -Dm 644 -t "$pkgdir"/usr/share/doc/$pkgname/ README.md
-}
-
-sha512sums="
-ce556f01bd4d9ba985b2e0aa4874ac72e51d3ab85116032e121d1fd42616b8fd628117992f867dd1589450b2941faeb6809a2de1ac31ff2bc253ee8dd975200a xmrig-proxy-6.15.1.tar.gz
-"
diff --git a/testing/xob/APKBUILD b/testing/xob/APKBUILD
new file mode 100644
index 00000000000..43507d07558
--- /dev/null
+++ b/testing/xob/APKBUILD
@@ -0,0 +1,31 @@
+# Contributor: Magnus Sandin <magnus.sandin@gmail.com>
+# Maintainer: Magnus Sandin <magnus.sandin@gmail.com>
+pkgname=xob
+pkgver=0.3
+pkgrel=0
+pkgdesc="A lightweight overlay bar for the X Window System"
+url="https://github.com/florentc/xob"
+arch="all"
+license="GPL-3.0-or-later"
+subpackages="$pkgname-doc"
+makedepends="
+ libconfig-dev
+ libxrender-dev
+ "
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/florentc/xob/archive/refs/tags/v$pkgver.tar.gz
+ "
+options="!check" # No tests available
+
+build() {
+ make sysconfdir="/etc" prefix="/usr"
+}
+
+package() {
+ make install DESTDIR="$pkgdir" sysconfdir="/etc" prefix="/usr"
+}
+
+
+sha512sums="
+b599ab37fb9eda15ecb4b6963eb4ca993905e8e34af8496a8a92de50b20724c799f222d5e37a430a9499df2b2c0ceb322f607e2d0e82db01cffba646ab9e3309 xob-0.3.tar.gz
+"
diff --git a/testing/xone-src/APKBUILD b/testing/xone-src/APKBUILD
index 0f8169e0ee0..af0b966d56d 100644
--- a/testing/xone-src/APKBUILD
+++ b/testing/xone-src/APKBUILD
@@ -2,18 +2,19 @@
# Maintainer: Umar Getagazov <umar@handlerug.me>
pkgname=xone-src
_modname=${pkgname%-src}
-pkgver=0.2
-pkgrel=1
+pkgver=0.3_git20230517
+pkgrel=0
+_gitrev=bbf0dcc484c3f5611f4e375da43e0e0ef08f3d18
pkgdesc="Linux kernel driver for Xbox One and Xbox Series X|S accessories (sources)"
url="https://github.com/medusalix/xone"
arch="noarch"
license="GPL-2.0-or-later"
install="$pkgname.post-install"
provides="xone=$pkgver"
-source="$_modname-$pkgver.tar.gz::https://github.com/medusalix/xone/archive/v$pkgver.tar.gz
+source="$_modname-$pkgver.tar.gz::https://github.com/medusalix/xone/archive/$_gitrev.tar.gz
modules-load.conf"
options="!check" # no tests
-builddir="$srcdir/$_modname-$pkgver"
+builddir="$srcdir/$_modname-$_gitrev"
package() {
install -Dm644 "$srcdir"/modules-load.conf \
@@ -22,20 +23,20 @@ package() {
"$pkgdir"/etc/modprobe.d/xone-blacklist.conf
install -Dm755 "$builddir"/install/firmware.sh \
"$pkgdir"/usr/bin/xone-get-firmware.sh
- install -Dm644 "$builddir"/Kbuild "$pkgdir"/usr/src/$_modname/Kbuild
+ install -Dm644 "$builddir"/Kbuild "$pkgdir"/usr/src/$_modname-$pkgver/Kbuild
cp -r "$builddir"/bus "$builddir"/driver "$builddir"/transport \
- "$pkgdir"/usr/src/$_modname/
+ "$pkgdir"/usr/src/$_modname-$pkgver/
- cat >"$pkgdir"/usr/src/$_modname/AKMBUILD <<-EOF
+ cat >"$pkgdir"/usr/src/$_modname-$pkgver/AKMBUILD <<-EOF
modname=$_modname
modver=$pkgver-r$pkgrel
- built_modules="$_modname-wired.ko $_modname-dongle.ko $_modname-gip-bus.ko "\\
- "$_modname-gip-common.ko $_modname-gip-gamepad.ko $_modname-gip-headset.ko "\\
- "$_modname-gip-chatpad.ko"
+ built_modules="$_modname-wired.ko $_modname-dongle.ko $_modname-gip.ko "\\
+ "$_modname-gip-gamepad.ko $_modname-gip-headset.ko $_modname-gip-chatpad.ko "\\
+ "$_modname-gip-guitar.ko"
EOF
}
sha512sums="
-63b31063e4a5b74f37e0ac09e5aed0d292d9d433b56e90e0449cd2e0371ae60206e87aeacb57e1c033302296c9989876cc2e66cdbe90a8bd80ff2780397b1520 xone-0.2.tar.gz
+78cd605a5d56c8230e8800dd43f9f423da52d896625242669480211a4105bbce3364669b742f678b6b48ecd3bc42ad2982d46fe0c6e99ec8e05b69a47c5c88ab xone-0.3_git20230517.tar.gz
838de6003c723dc3955986b9cde883cae6e29c90995798110f285b1b1b362116f9e3a065f541e8d5d132dc460d245b37ce7479e9189b63e5fe9adf0c5f37529f modules-load.conf
"
diff --git a/testing/xonotic-data/APKBUILD b/testing/xonotic-data/APKBUILD
deleted file mode 100644
index 3fbf8bb80e8..00000000000
--- a/testing/xonotic-data/APKBUILD
+++ /dev/null
@@ -1,19 +0,0 @@
-# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
-# Maintainer: Alex Denes <caskd@redxen.eu>
-pkgname=xonotic-data
-pkgver=0.8.2
-pkgrel=0
-pkgdesc="Data files for Xonotic"
-url="https://www.xonotic.org/"
-arch="noarch !s390x" # save space on builders
-license="GPL-2.0-or-later"
-options="!check"
-source="$pkgname-$pkgver.zip::https://dl.xonotic.org/${pkgname%-*}-$pkgver.zip"
-builddir="$srcdir"/Xonotic
-
-package() {
- mkdir -p "$pkgdir"/usr/share/xonotic/
- mv "$srcdir"/Xonotic/data "$pkgdir"/usr/share/xonotic/
-}
-
-sha512sums="0787fcf326827ae0292e5917c7ff2c7fd79947209d4b62e7f83b8b828bec15b575da304e0631f9f163c9b0bd93bed13616e142398ff08cbdaaea890a939dfca5 xonotic-data-0.8.2.zip"
diff --git a/testing/xonotic/APKBUILD b/testing/xonotic/APKBUILD
deleted file mode 100644
index 4a7b7c289e4..00000000000
--- a/testing/xonotic/APKBUILD
+++ /dev/null
@@ -1,107 +0,0 @@
-# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
-# Maintainer: Alex Denes <caskd@redxen.eu>
-pkgname=xonotic
-pkgver=0.8.2
-pkgrel=1
-pkgdesc="A free, fast-paced crossplatform first-person shooter"
-url="https://www.xonotic.org/"
-arch="x86 x86_64 aarch64 armv7 armhf ppc64le"
-license="GPL-2.0-or-later"
-depends="xonotic-data"
-makedepends="autoconf
- automake
- libtool
- alsa-lib-dev
- curl-dev
- libjpeg-turbo-dev
- libxpm-dev
- libxxf86vm-dev
- sdl2-dev
- libpng-dev
- mesa-dev
- gmp-dev"
-subpackages="$pkgname-server $pkgname-sdl $pkgname-glx"
-options="!check"
-source="$pkgname-$pkgver.zip::http://dl.xonotic.org/xonotic-$pkgver-source.zip
- xonotic-moncontrol.patch
- xonotic-sdl.desktop
- xonotic-glx.desktop"
-builddir="$srcdir"/Xonotic
-
-build() {
- local r
- for r in sv sdl cl; do
- make -C "$builddir"/source/darkplaces \
- CPUOPTIMIZATIONS="$CFLAGS" \
- DP_FS_BASEDIR="/usr/share/$pkgname" \
- DP_LINK_TO_LIBJPEG=1 \
- "$r"-release
- done
-
- cd "$builddir"/source/d0_blind_id
- sh autogen.sh
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var
- make
-}
-
-package() {
- cd "$builddir"/source/d0_blind_id
- make DESTDIR="$pkgdir" install
-
- cd "$pkgdir"/usr
- rm -r include
- cd lib
- rm -r pkgconfig -- *.a
-
- local size
- for size in 16 22 24 32 48 64 128 256 512; do
- install -Dm644 "$builddir"/misc/logos/icons_png/xonotic_"$size".png \
- "$pkgdir"/usr/share/icons/hicolor/"$size"x"$size"/apps/xonotic.png
- done
-}
-
-server() {
- pkgdesc="$pkgdesc (Server)"
- depends="xonotic"
-
- mkdir -p "$subpkgdir"/usr/bin
- install -Dm755 "$builddir"/source/darkplaces/darkplaces-dedicated \
- "$subpkgdir"/usr/bin/xonotic-dedicated
-}
-
-sdl() {
- pkgdesc="$pkgdesc (SDL client)"
- depends="xonotic"
-
- mkdir -p "$subpkgdir"/usr/bin
- install -Dm755 "$builddir"/source/darkplaces/darkplaces-sdl \
- "$subpkgdir"/usr/bin/xonotic-sdl
-
- mkdir -p "$subpkgdir"/usr/share/applications
- install -Dm644 "$srcdir"/xonotic-sdl.desktop \
- "$subpkgdir"/usr/share/applications/xonotic-sdl.desktop
-}
-
-glx() {
- pkgdesc="$pkgdesc (GLX client)"
- depends="xonotic"
-
- mkdir -p "$subpkgdir"/usr/bin
- install -Dm755 "$builddir"/source/darkplaces/darkplaces-glx \
- "$subpkgdir"/usr/bin/xonotic-glx
-
- mkdir -p "$subpkgdir"/usr/share/applications
- install -Dm644 "$srcdir"/xonotic-glx.desktop \
- "$subpkgdir"/usr/share/applications/xonotic-glx.desktop
-}
-
-sha512sums="1a803f3ebd2e1c3a2000e6b7a6ec0ab3a64c92a9c7b41c329a5054a51bb624a790a84bd6b3a344a59f3bd7bf18feecec0b39e2ddfc116c52ad85d22731a0fba0 xonotic-0.8.2.zip
-d74a1d1421dc68dbf46595510cea463382e69c8421110cd7b187419530dbfe9d262d9b65843b89b49aa91d9e32041e11941e411fe52f2dcb0ede18311ab821ec xonotic-moncontrol.patch
-963273811453f713ab70f5d12b918c1513a9a7995cd1d2572f0b9060d945391bf7db4ae04ae586531ecf3a088f837803a66ac267d9285928d8b2e82c98b7158b xonotic-sdl.desktop
-2e06d588d68d629a9690b4dd3372c7ad77b240afcd86cf0cdf2de15548d3feaa0e446df1a29339be4593d23bfcf389930bdd1d7021f1e2558d70bb15e28646bd xonotic-glx.desktop"
diff --git a/testing/xonotic/xonotic-glx.desktop b/testing/xonotic/xonotic-glx.desktop
deleted file mode 100644
index ebce0e19632..00000000000
--- a/testing/xonotic/xonotic-glx.desktop
+++ /dev/null
@@ -1,11 +0,0 @@
-[Desktop Entry]
-Type=Application
-Version=2.5
-Encoding=UTF-8
-Name=Xonotic (GLX)
-Comment=a free open-source first person shooter
-Icon=xonotic
-Exec=/usr/bin/xonotic-glx
-Terminal=false
-StartupNotify=false
-Categories=Game;
diff --git a/testing/xonotic/xonotic-moncontrol.patch b/testing/xonotic/xonotic-moncontrol.patch
deleted file mode 100644
index 4fdd6a663b6..00000000000
--- a/testing/xonotic/xonotic-moncontrol.patch
+++ /dev/null
@@ -1,12 +0,0 @@
---- Xonotic.orig/source/darkplaces/sys_shared.c
-+++ Xonotic/source/darkplaces/sys_shared.c
-@@ -69,9 +69,6 @@
- else
- moncleanup();
- #endif
--#elif defined(__linux__) || defined(__FreeBSD__)
-- extern int moncontrol(int);
-- moncontrol(enable);
- #endif
- }
-
diff --git a/testing/xonotic/xonotic-sdl.desktop b/testing/xonotic/xonotic-sdl.desktop
deleted file mode 100644
index 2c631916b24..00000000000
--- a/testing/xonotic/xonotic-sdl.desktop
+++ /dev/null
@@ -1,11 +0,0 @@
-[Desktop Entry]
-Type=Application
-Version=2.5
-Encoding=UTF-8
-Name=Xonotic (SDL)
-Comment=a free open-source first person shooter
-Icon=xonotic
-Exec=/usr/bin/xonotic-sdl
-Terminal=false
-StartupNotify=false
-Categories=Game;
diff --git a/testing/xonsh/APKBUILD b/testing/xonsh/APKBUILD
index 9e94d70bb13..8d4e5a899c6 100644
--- a/testing/xonsh/APKBUILD
+++ b/testing/xonsh/APKBUILD
@@ -1,31 +1,67 @@
+# Contributor: Hoang Nguyen <folliekazetani@protonmail.com>
# Contributor: vinnie <fz12345@gmail.com>
# Maintainer: vinnie <fz12345@gmail.com>
pkgname=xonsh
-pkgver=0.11.0
-pkgrel=0
+pkgver=0.15.1
+pkgrel=1
pkgdesc="Python-powered, cross-platform, Unix-gazing shell"
url="https://xon.sh"
arch="noarch"
license="BSD-2-Clause"
-options="!check" #flake8-docstrings missing, maybe later
depends="
- py3-pygments>=2.2
- py3-prompt_toolkit>=3.0
py3-distro
- py3-setproctitle
+ py3-prompt_toolkit>=3.0
+ py3-pygments>=2.2
+ py3-pyperclip
+ py3-ujson
+ "
+makedepends="py3-setuptools py3-gpep517 py3-installer py3-wheel"
+# man-db with groff-1.23.0 breaks "test_man.py" due to escape codes in output
+checkdepends="
+ mandoc
+ py3-pip
+ py3-pyte
+ py3-pytest
+ py3-pytest-mock
+ py3-pytest-rerunfailures
+ py3-pytest-subprocess
+ py3-pytest-timeout
+ py3-virtualenv
+ "
+subpackages="$pkgname-pyc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/xonsh/xonsh/archive/$pkgver.tar.gz
+ no-col.patch
"
-makedepends="py3-setuptools"
-source="$pkgname-$pkgver.tar.gz::https://github.com/xonsh/xonsh/archive/$pkgver.tar.gz"
build() {
- python3 setup.py 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 \
+ --ignore=tests/test_integrations.py \
+ --ignore=tests/test_pipelines.py \
+ --ignore=tests/test_ptk_shell.py \
+ --ignore=tests/completers/test_bash_completer.py \
+ --ignore=tests/procs/test_specs.py \
+ --deselect tests/test_man.py::test_man_completion
+}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
+
+ # The build process appends dirty bit into the version string
+ # if a git repo is detected
+ sed -i "s/^\(__version__ =\).*/\1 \"$pkgver\"/" \
+ "$pkgdir"/usr/lib/python*/site-packages/xonsh/__init__.py
}
sha512sums="
-e79c6b0ef78c8775f077d2e9a191144a5f37f42adda7305c40164231eff4bf2f54824cf7fb6baef038f91ada2b9901a6ebe32ecee93ffe5425c608f06f679227 xonsh-0.11.0.tar.gz
+5a8640a80c8aa1a08cabcd643880603ddf9d1181ca1dfb396b5970fb59205a19be4fbd5ff8f0a36779fd25d7204748ad2426f311b7a9e7b954fc3a541a1e2131 xonsh-0.15.1.tar.gz
+56e6548dde6faaa70e000f0d49a260ca0fe5297b0ec0abb1ab2cb0c22154479a957155f06037b91d9fda3736f3c7935d019a6c45adf506334e5940dfd8ac37d1 no-col.patch
"
diff --git a/testing/xonsh/no-col.patch b/testing/xonsh/no-col.patch
new file mode 100644
index 00000000000..9e54bf3a65a
--- /dev/null
+++ b/testing/xonsh/no-col.patch
@@ -0,0 +1,13 @@
+we can't use col(1), because it was [gated behind if(__GLIBC__)][1]
+in util-linux; according to upstream, it's also deprecated
+
+[1]: https://github.com/util-linux/util-linux/commit/8886d84e25a457702b45194d69a47313f76dc6bc
+
+diff --git a/xonsh/completers/man.py b/xonsh/completers/man.py
+index a2e56f1..944ae6b 100644
+--- a/xonsh/completers/man.py
++++ b/xonsh/completers/man.py
+@@ -25,2 +25,3 @@ def get_man_completions_path() -> Path:
+ def _get_man_page(cmd: str):
++ return None
+ """without control characters"""
diff --git a/testing/xonsh/xonsh.post-install b/testing/xonsh/xonsh.post-install
new file mode 100644
index 00000000000..253465b2ac5
--- /dev/null
+++ b/testing/xonsh/xonsh.post-install
@@ -0,0 +1,3 @@
+#!/bin/sh
+add-shell '/usr/bin/xonsh'
+exit 0
diff --git a/testing/xonsh/xonsh.post-upgrade b/testing/xonsh/xonsh.post-upgrade
new file mode 120000
index 00000000000..043e81e0c33
--- /dev/null
+++ b/testing/xonsh/xonsh.post-upgrade
@@ -0,0 +1 @@
+xonsh.post-install \ No newline at end of file
diff --git a/testing/xonsh/xonsh.pre-deinstall b/testing/xonsh/xonsh.pre-deinstall
new file mode 100644
index 00000000000..c2d7870a5df
--- /dev/null
+++ b/testing/xonsh/xonsh.pre-deinstall
@@ -0,0 +1,3 @@
+#!/bin/sh
+remove-shell '/usr/bin/xonsh'
+exit 0
diff --git a/testing/xosview/APKBUILD b/testing/xosview/APKBUILD
new file mode 100644
index 00000000000..52eaeeae788
--- /dev/null
+++ b/testing/xosview/APKBUILD
@@ -0,0 +1,27 @@
+# Contributor: Mark Hills <mark@xwax.org>
+# Maintainer: Mark Hills <mark@xwax.org>
+pkgname=xosview
+pkgver=1.24
+pkgrel=0
+pkgdesc="The classic system monitoring tool"
+url="https://www.pogo.org.uk/~mark/xosview/"
+arch="all"
+license="GPL-2.0-only"
+makedepends="libx11-dev libxpm-dev linux-headers"
+options="!check" # no tests provided
+subpackages="$pkgname-doc"
+source="https://www.pogo.org.uk/~mark/xosview/releases/xosview-$pkgver.tar.gz"
+
+build() {
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" \
+ PREFIX=/usr \
+ install
+}
+
+sha512sums="
+aeeecc3be8c4a22bb62062ca51c927ace186c0652f7cc16fbdd7b7d3acb247242d1ad64960cfb4622bd1626fdfcd26ef6938df2b4f788ee8fc44e5cf59396540 xosview-1.24.tar.gz
+"
diff --git a/testing/xpad/APKBUILD b/testing/xpad/APKBUILD
deleted file mode 100644
index 3a5746b8f0a..00000000000
--- a/testing/xpad/APKBUILD
+++ /dev/null
@@ -1,37 +0,0 @@
-# Contributor: Díaz Urbaneja Diego <sodomon2@gmail.com>
-# Maintainer: Díaz Urbaneja Diego <sodomon2@gmail.com>
-pkgname=xpad
-pkgver=5.4.0
-pkgrel=0
-pkgdesc="Stickies-like notes application"
-url="https://launchpad.net/xpad"
-arch="all"
-license="GPL-3.0-only"
-makedepends="automake autoconf libtool intltool gtk+3.0-dev
- gtksourceview-dev libsm-dev"
-subpackages="$pkgname-doc $pkgname-lang"
-source="https://launchpad.net/xpad/trunk/$pkgver/+download/xpad-$pkgver.tar.bz2"
-
-prepare() {
- default_prepare
- autoreconf -vfi
- cp -r data/xpad.desktop.in "$builddir"
-}
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="a20b1d16d0d9e4cb0b88c969165eb9514b69a0eaef91eca8a3fb4da08ea8a2db32891de3c8a2a4a97db21bf78f515c7b6f798c59ba155f480f866334fca7986f xpad-5.4.0.tar.bz2"
diff --git a/testing/xplr/APKBUILD b/testing/xplr/APKBUILD
index 63e9ec42dba..2de0488e31b 100644
--- a/testing/xplr/APKBUILD
+++ b/testing/xplr/APKBUILD
@@ -1,54 +1,60 @@
-# Contributor: Jakub Panek <me@panekj.dev>
-# Maintainer: Jakub Panek <me@panekj.dev>
+# Maintainer: omni <omni+alpine@hack.org>
pkgname=xplr
-pkgver=0.18.0
-pkgrel=0
-pkgdesc="A hackable, minimal, fast TUI file explorer"
+pkgver=0.21.5
+pkgrel=2
+pkgdesc="Hackable, minimal, fast TUI file explorer"
url="https://xplr.dev"
-# s390x, riscv64 limited by rust
-arch="all !s390x !riscv64"
+# s390x: nix crate
+arch="all !s390x"
license="MIT"
-makedepends="cargo luajit-dev"
+makedepends="cargo lua5.4-dev cargo-auditable"
+options="net"
+subpackages="$pkgname-doc"
source="
https://github.com/sayanarijit/xplr/archive/refs/tags/v$pkgver/xplr-$pkgver.tar.gz
remove-vendored-lua.patch
+ modified-field-lua54.patch
"
-export CARGO_PROFILE_RELEASE_LTO="true"
-export CARGO_PROFILE_RELEASE_PANIC="abort"
-export CARGO_PROFILE_RELEASE_OPT_LEVEL="s"
-export CARGO_PROFILE_RELEASE_CODEGEN_UNITS=1
-
prepare() {
default_prepare
- cargo fetch --locked
+ cargo fetch --target="$CTARGET" --locked
}
build() {
- cargo build --frozen --offline --release
+ cargo auditable build --release --frozen
}
check() {
- cargo build --frozen --offline
# cargo test doesn't build target/debug/xplr binary
+ cargo auditable build --frozen
cargo test --frozen
}
package() {
- cargo install --frozen --offline --path . --root="$pkgdir/usr"
- rm "$pkgdir"/usr/.crates*
-
- install -Dm644 -t "$pkgdir"/usr/share/applications "$builddir"/assets/desktop/xplr.desktop
- install -Dm644 "$builddir"/assets/icon/xplr.svg "$pkgdir"/usr/share/pixmaps/xplr.svg
- install -Dm644 "$builddir"/assets/icon/xplr.svg "$pkgdir"/usr/share/icons/hicolor/scalable/apps/xplr.svg
- install -Dm644 "$builddir"/assets/icon/xplr16.png "$pkgdir"/usr/share/icons/hicolor/16x16/apps/xplr.png
- install -Dm644 "$builddir"/assets/icon/xplr32.png "$pkgdir"/usr/share/icons/hicolor/32x32/apps/xplr.png
- install -Dm644 "$builddir"/assets/icon/xplr64.png "$pkgdir"/usr/share/icons/hicolor/64x64/apps/xplr.png
- install -Dm644 "$builddir"/assets/icon/xplr128.png "$pkgdir"/usr/share/icons/hicolor/128x128/apps/xplr.png
+ install -Dm755 target/release/xplr -t "$pkgdir"/usr/bin/
+
+ install -Dm644 "$builddir"/assets/desktop/xplr.desktop \
+ -t "$pkgdir"/usr/share/applications
+ install -Dm644 "$builddir"/assets/icon/xplr.svg \
+ "$pkgdir"/usr/share/pixmaps/xplr.svg
+ install -Dm644 "$builddir"/assets/icon/xplr.svg \
+ "$pkgdir"/usr/share/icons/hicolor/scalable/apps/xplr.svg
+ for res in 16 32 64 128; do
+ install -Dm 644 assets/icon/"$pkgname""$res".png \
+ "$pkgdir"/usr/share/icons/hicolor/"$res"x"$res"/apps/"$pkgname".png
+ done
+
+ install -Dm644 src/init.lua \
+ -t "$pkgdir"/usr/share/doc/"$pkgname"/examples/
+ install -Dm644 docs/en/src/* \
+ -t "$pkgdir"/usr/share/doc/"$pkgname"/
+ install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/"$pkgname"/LICENSE
}
sha512sums="
-e320e9284a3589637e89b688a67b22048469cf0dd5fece4c1bf1bc9a6525ecb8c08417178c1885008b26ad2346b575322700193054b7ba4932912bb1651c3c37 xplr-0.18.0.tar.gz
-f60713258cceb0ddece7eb5a0069922597fcb03b3c79ce2e5ef3a81af9b25793974471f7abaa420b6c8341718c1e471661ae0d51a8ef7cde755732b96e6e82cd remove-vendored-lua.patch
+4f6323d123e3963c1b427df55200771f2d3cf2d8cfc07dac488d513215030bf98c96bdcbdf5b801f319afd3fd780c82abfbc6b212a6178bdfae86f798dd0f0df xplr-0.21.5.tar.gz
+65886618305c63119e3be0e08f4fae7f9b63ad479767f1abe40c6de56356619caddc5b360f05018e64c758f59780bd265e51796d2fd29d95e41bffebe16abc6e remove-vendored-lua.patch
+9a4109b0988065ce4ae79535238c447e281f6e730957faab2c48b6a0c861eac2a6263c5cac24bc8dbdaa37e442e4c52ea4279b52d4e75df9a5ea1f0e3321728e modified-field-lua54.patch
"
diff --git a/testing/xplr/modified-field-lua54.patch b/testing/xplr/modified-field-lua54.patch
new file mode 100644
index 00000000000..4c394f8584b
--- /dev/null
+++ b/testing/xplr/modified-field-lua54.patch
@@ -0,0 +1,13 @@
+Switch to ISO 8601 while we're at it, but the important change here is to round
+down to a value that tostring() can always handle.
+--- a/src/init.lua
++++ b/src/init.lua
+@@ -3046,7 +3046,7 @@ end
+
+ -- Renders the fifth column in the table
+ xplr.fn.builtin.fmt_general_table_row_cols_4 = function(m)
+- return tostring(os.date("%a %b %d %H:%M:%S %Y", m.last_modified / 1000000000))
++ return tostring(os.date("%Y-%m-%d %H:%M:%S", math.floor(m.last_modified / 1000000000)))
+ end
+
+ -- This is where the custom functions can be added.
diff --git a/testing/xplr/remove-vendored-lua.patch b/testing/xplr/remove-vendored-lua.patch
index bffd22d402d..bea10dc954b 100644
--- a/testing/xplr/remove-vendored-lua.patch
+++ b/testing/xplr/remove-vendored-lua.patch
@@ -1,59 +1,48 @@
-commit 41f61f9a43fe38df92813c0083ebb3afc5826e97
-Author: Jakub Panek <me@panekj.dev>
-Date: Sun May 22 19:58:02 2022 +0200
-
- remove vendored lua
-
- Signed-off-by: Jakub Panek <me@panekj.dev>
-
-diff --git a/Cargo.lock b/Cargo.lock
-index 8852a7e..3181f57 100644
--- a/Cargo.lock
+++ b/Cargo.lock
-@@ -424,24 +424,6 @@ dependencies = [
- "cfg-if",
+@@ -774,25 +774,6 @@
]
--[[package]]
+ [[package]]
-name = "lua-src"
--version = "544.0.1"
+-version = "546.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "708ba3c844d5e9d38def4a09dd871c17c370f519b3c4b7261fbabe4a613a814c"
+-checksum = "2da0daa7eee611a4c30c8f5ee31af55266e26e573971ba9336d2993e2da129b2"
-dependencies = [
- "cc",
-]
-
-[[package]]
-name = "luajit-src"
--version = "210.3.4+resty073ac54"
+-version = "210.5.3+29b0b28"
-source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "640b09e99575a442b4da0ef406a78188a1a4313bb9ead7b5b20ec12cc480130f"
+-checksum = "0c2bb89013916ce5c949f01a1fbd6d435a58e1d980767a791d755911211d792d"
-dependencies = [
- "cc",
+- "which",
-]
-
- [[package]]
+-[[package]]
name = "memchr"
- version = "2.5.0"
-@@ -494,8 +476,6 @@ dependencies = [
- "bstr",
+ version = "2.7.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+@@ -865,8 +846,6 @@
+ dependencies = [
"cc",
- "erased-serde",
+ "cfg-if",
- "lua-src",
- "luajit-src",
- "num-traits",
- "once_cell",
"pkg-config",
-diff --git a/Cargo.toml b/Cargo.toml
-index ed53c06..453f184 100644
+ ]
+
--- a/Cargo.toml
+++ b/Cargo.toml
-@@ -67,7 +67,7 @@ features = ['serde']
+@@ -73,7 +73,7 @@
[dependencies.mlua]
- version = "0.7.4"
+ version = "0.9.2"
-features = ['luajit', 'vendored', 'serialize', 'send']
-+features = ['luajit', 'serialize', 'send']
++features = ['lua54', 'serialize', 'send']
[dependencies.tui-input]
- version = "0.4.0"
+ version = "0.8.0"
diff --git a/testing/xremap-wlr/APKBUILD b/testing/xremap-wlr/APKBUILD
new file mode 100644
index 00000000000..e87ea5dd697
--- /dev/null
+++ b/testing/xremap-wlr/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: Coco Liliace <coco@liliace.dev>
+# Maintainer: Coco Liliace <coco@liliace.dev>
+pkgname=xremap-wlr
+pkgver=0.8.18
+pkgrel=0
+pkgdesc="Key remapper for Wayland"
+url="https://github.com/k0kubun/xremap"
+# nix
+arch="all !s390x !riscv64"
+license="MIT"
+makedepends="cargo cargo-auditable"
+replaces="xremap-sway"
+source="$pkgname-$pkgver.tar.gz::https://github.com/k0kubun/xremap/archive/v$pkgver.tar.gz"
+builddir="$srcdir/xremap-$pkgver"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release --features wlroots
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm755 -t "$pkgdir"/usr/bin ./target/release/xremap
+}
+
+sha512sums="
+9ad0394e1824d5b423fd38d47f953844942119d69f6cf2c49f9e85dba18b6297957b30b77e265238b47e968921507620c4db1e6772d6cc69de278146556e6edf xremap-wlr-0.8.18.tar.gz
+"
diff --git a/testing/xsane/APKBUILD b/testing/xsane/APKBUILD
index b93929b4988..98160c3785d 100644
--- a/testing/xsane/APKBUILD
+++ b/testing/xsane/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=xsane
pkgver=0.999
-pkgrel=0
+pkgrel=1
pkgdesc="Graphical SANE frontend"
url="http://www.xsane.org/"
arch="all"
diff --git a/testing/xsct/APKBUILD b/testing/xsct/APKBUILD
deleted file mode 100644
index 86e71d54dcb..00000000000
--- a/testing/xsct/APKBUILD
+++ /dev/null
@@ -1,28 +0,0 @@
-# Contributor: Milan P. Stanić <mps@arvanta.net>
-# Maintainer: Milan P. Stanić <mps@arvanta.net>
-pkgname=xsct
-pkgver=1.6.1
-pkgrel=0
-pkgdesc="set the color temperature of xorg screen"
-url="https://github.com/faf0/sct/"
-arch="all"
-license="Public Domain Mark"
-makedepends="libx11-dev libxrandr-dev"
-subpackages="$pkgname-doc"
-options="!check" # no tests
-source="$pkgname-$pkgver.tar.gz::https://github.com/faf0/sct/archive/refs/tags/$pkgver.tar.gz"
-builddir="$srcdir/"sct-$pkgver
-
-build() {
- make
- :
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- :
-}
-
-sha512sums="
-600a851f22189d8dd11aa6c51d1aa307358d02daebb9993fadb81f69caf0eff9d514ca65b04d3eca45223a93f053aeb2c6306c53451e19d5ee18072c416bb5fe xsct-1.6.1.tar.gz
-"
diff --git a/testing/xsecurelock/APKBUILD b/testing/xsecurelock/APKBUILD
index 63de899ba12..7474dee2726 100644
--- a/testing/xsecurelock/APKBUILD
+++ b/testing/xsecurelock/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Grigory Kirillov <txgk@bk.ru>
-# Maintainer: Grigory Kirillov <txgk@bk.ru>
+# Maintainer:
pkgname=xsecurelock
-pkgver=1.7.0
+pkgver=1.9.0
pkgrel=1
pkgdesc="X11 screen lock utility with security in mind"
url="https://github.com/google/xsecurelock"
@@ -9,8 +9,6 @@ arch="all"
license="Apache-2.0"
options="!check" # no test suite
makedepends="
- autoconf
- automake
libx11-dev
libxcomposite-dev
libxext-dev
@@ -19,20 +17,19 @@ makedepends="
libxmu-dev
libxrandr-dev
libxscrnsaver-dev
- xorgproto
linux-pam-dev
- pkgconf
+ xorgproto
"
subpackages="$pkgname-doc"
-source="https://github.com/google/xsecurelock/archive/refs/tags/v$pkgver.zip"
-
-prepare() {
- default_prepare
- sh autogen.sh
-}
+source="https://github.com/google/xsecurelock/releases/download/v$pkgver/xsecurelock-$pkgver.tar.gz"
build() {
- ./configure --prefix=/usr --with-pam-service-name=su
+ ./configure \
+ --target="$CTARGET" \
+ --build="$CBUILD" \
+ --host="$CHOST" \
+ --prefix=/usr \
+ --with-pam-service-name=system-login
make GIT_VERSION="$pkgver"
}
@@ -40,4 +37,6 @@ package() {
make DESTDIR="$pkgdir" install
}
-sha512sums="6e79b6c3f93b72dc2c51e89194a3f1f3866929dd7ae8df73dc77b0da335762c3898c00289965dfb3d4eda10cd7d4f544b18d9fca470aa63824c603c58855ae80 v1.7.0.zip"
+sha512sums="
+23a3c0ac6302bf9550f26fd7a16034dc19899d2523e2211040332cc7ffd14927b9b6af7fdd577ab65e2a5f5c7d0b2b7156b1e2812d40bb4dc0d2ca04c6fc53cc xsecurelock-1.9.0.tar.gz
+"
diff --git a/testing/xsoldier/APKBUILD b/testing/xsoldier/APKBUILD
index 6346fcf715b..eb421c87337 100644
--- a/testing/xsoldier/APKBUILD
+++ b/testing/xsoldier/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
pkgname=xsoldier
pkgver=1.8
-pkgrel=0
+pkgrel=1
pkgdesc="A space-based shoot'em up game"
url="http://www.interq.or.jp/libra/oohara/xsoldier/"
arch="all"
diff --git a/testing/xsv/APKBUILD b/testing/xsv/APKBUILD
deleted file mode 100644
index cc75160f3d1..00000000000
--- a/testing/xsv/APKBUILD
+++ /dev/null
@@ -1,28 +0,0 @@
-# Contributor: guddaff <guddaff@protonmail.com>
-# Maintainer: guddaff <guddaff@protonmail.com>
-pkgname=xsv
-pkgver=0.13.0
-pkgrel=0
-pkgdesc="CSV command line toolkit"
-url="https://github.com/BurntSushi/xsv"
-arch="x86_64 armv7 armhf aarch64 x86 " # limited by rust/carg and dosn't build on ppc64le
-license="Unlicense"
-makedepends="cargo"
-source="$pkgname-$pkgver.tar.gz::https://github.com/BurntSushi/xsv/archive/refs/tags/$pkgver.tar.gz"
-
-build() {
- cargo build --release --locked
-}
-
-check() {
- cargo test --release --locked
-}
-
-package() {
- cargo install --locked --path . --root="$pkgdir/usr"
- rm "$pkgdir"/usr/.crates*
-}
-
-sha512sums="
-a0c9b914071514f6dd1fc19759ff88b7d457979385dd169350d27b0ee464fd21e7165bd81e769487d12ac63c46f78e1af684e690a7126ab9a2c336cee4aa6095 xsv-0.13.0.tar.gz
-"
diff --git a/testing/xtensor/APKBUILD b/testing/xtensor/APKBUILD
new file mode 100644
index 00000000000..d882124a496
--- /dev/null
+++ b/testing/xtensor/APKBUILD
@@ -0,0 +1,37 @@
+# Maintainer: Simon Zeni <simon@bl4ckb0ne.ca>
+pkgname=xtensor
+pkgver=0.24.7
+pkgrel=0
+pkgdesc="C++ tensors with broadcasting and lazy computing"
+url="https://github.com/xtensor-stack/xensor"
+arch="noarch !s390x" # test failure on s390x
+license="BSD-3-Clause"
+makedepends="cmake samurai doctest-dev xtl nlohmann-json"
+source="$pkgname-$pkgver.tar.gz::https://github.com/xtensor-stack/xtensor/archive/refs/tags/$pkgver.tar.gz"
+
+build() {
+ if [ "$CBUILD" != "$CHOST" ]; then
+ CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DCMAKE_BUILD_TYPE=MinSizeRel \
+ -DBUILD_TESTS="$(want_check && echo ON || echo OFF)" \
+ $CMAKE_CROSSOPTS
+ cmake --build build
+}
+
+check() {
+ cd build
+ CTEST_OUTPUT_ON_FAILURE=TRUE ctest
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+
+sha512sums="
+1b2683225a400e2ed06679eedc13c001be80163afb8b42918091670995c04f26ef03ffa9ef72ec7fe6c9d4c1aa88df9ad17698abe5ccd8b19a057ebc10956594 xtensor-0.24.7.tar.gz
+"
diff --git a/testing/xtitle/APKBUILD b/testing/xtitle/APKBUILD
index c1a1393ed6d..4c3bf4547f9 100644
--- a/testing/xtitle/APKBUILD
+++ b/testing/xtitle/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Camille Scholtz <onodera@openmailbox.org>
pkgname=xtitle
pkgver=0.4.4
-pkgrel=0
+pkgrel=1
pkgdesc="Outputs X window titles"
url="https://github.com/baskerville/xtitle"
arch="all"
diff --git a/testing/xtl/APKBUILD b/testing/xtl/APKBUILD
new file mode 100644
index 00000000000..ecabdb98631
--- /dev/null
+++ b/testing/xtl/APKBUILD
@@ -0,0 +1,37 @@
+# Maintainer: Simon Zeni <simon@bl4ckb0ne.ca>
+pkgname=xtl
+pkgver=0.7.7
+pkgrel=0
+pkgdesc="The x template library"
+url="https://github.com/xtensor-stack/xtl"
+arch="noarch"
+license="BSD-3-Clause"
+makedepends="cmake samurai doctest-dev"
+source="$pkgname-$pkgver.tar.gz::https://github.com/xtensor-stack/xtl/archive/refs/tags/$pkgver.tar.gz"
+
+build() {
+ if [ "$CBUILD" != "$CHOST" ]; then
+ CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DCMAKE_BUILD_TYPE=MinSizeRel \
+ -DBUILD_TESTS="$(want_check && echo ON || echo OFF)" \
+ $CMAKE_CROSSOPTS
+ cmake --build build
+}
+
+check() {
+ cd build
+ CTEST_OUTPUT_ON_FAILURE=TRUE ctest
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+
+sha512sums="
+07c2a68db3dbac556dbb0397e54792ddc7a3e87573bff04faa4262dc433b710392ff9c915d428f5abd1ae892ac9bc7744645e75fdb2bb2cee83c523e087c793e xtl-0.7.7.tar.gz
+"
diff --git a/testing/xva-img/APKBUILD b/testing/xva-img/APKBUILD
index b5d5c33085c..eeb50eebe22 100644
--- a/testing/xva-img/APKBUILD
+++ b/testing/xva-img/APKBUILD
@@ -2,12 +2,12 @@
# Maintainer:
pkgname=xva-img
pkgver=1.4.2
-pkgrel=0
+pkgrel=1
pkgdesc="tool for converting XVA images"
url="https://github.com/eriklax/xva-img"
arch="all"
license="GPL-2.0-or-later"
-makedepends="openssl-dev cmake"
+makedepends="openssl-dev>3 cmake"
source="xva-img-$pkgver.tar.gz::https://github.com/eriklax/xva-img/archive/$pkgver.tar.gz"
build() {
diff --git a/testing/xvidtune/APKBUILD b/testing/xvidtune/APKBUILD
index e6464fad9a3..aa926aa2a5a 100644
--- a/testing/xvidtune/APKBUILD
+++ b/testing/xvidtune/APKBUILD
@@ -1,25 +1,22 @@
# Maintainer: Taner Tas <taner76@gmail.com>
pkgname=xvidtune
-pkgver="1.0.3"
+pkgver=1.0.4
pkgrel=0
-pkgdesc="A client interface to the X server video mode extension."
+pkgdesc="Client interface to the X server video mode extension"
url="https://xorg.freedesktop.org/"
arch="all"
license="MIT"
-makedepends="libx11-dev libxxf86vm-dev libxaw-dev libxmu-dev libxt-dev"
+makedepends="
+ libx11-dev
+ libxaw-dev
+ libxmu-dev
+ libxt-dev
+ libxxf86vm-dev
+ "
subpackages="$pkgname-doc"
-source="https://www.x.org/archive/individual/app/${pkgname}-${pkgver}.tar.bz2"
-
-prepare() {
- default_prepare
-
- cd "$builddir"
- chmod +w config.guess config.sub
- update_config_guess && update_config_sub
-}
+source="https://www.x.org/archive/individual/app/xvidtune-$pkgver.tar.xz"
build() {
- cd "$builddir"
./configure \
--prefix=/usr \
--sysconfdir=/etc \
@@ -28,14 +25,14 @@ build() {
make
}
-check(){
- cd "$builddir"
+check() {
make check
}
package() {
- cd "$builddir"
make DESTDIR="$pkgdir" install
}
-sha512sums="0f8a4fca1b544ef8f9623246fb0ece75739a0889f2e729c040cd768c595f0bbbfa3a665576369032535c34c7d55784a29b62f0d51432bf2b75d2cec619db7352 xvidtune-1.0.3.tar.bz2"
+sha512sums="
+747d5358f4f7d3d7db508c3f034711ce4b9dd278160d35312e9c4d1604623e84a2438d039b536546fd2df7db8c5ea1907e8a6101985fad2932b6dee5a62c7b80 xvidtune-1.0.4.tar.xz
+"
diff --git a/testing/xvkbd/APKBUILD b/testing/xvkbd/APKBUILD
index f2435d1ce40..037b4dba741 100644
--- a/testing/xvkbd/APKBUILD
+++ b/testing/xvkbd/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer:
pkgname=xvkbd
pkgver=4.1
-pkgrel=1
+pkgrel=2
pkgdesc="The xvkbd virtual keyboard for X11"
url="http://t-sato.in.coocan.jp/xvkbd/"
arch="all !riscv64" # imake does not support riscv64
diff --git a/testing/xwaylandvideobridge/APKBUILD b/testing/xwaylandvideobridge/APKBUILD
new file mode 100644
index 00000000000..5f0c6b22216
--- /dev/null
+++ b/testing/xwaylandvideobridge/APKBUILD
@@ -0,0 +1,50 @@
+# Contributor: Bart Ribbers <bribbers@disroot.org>
+# Maintainer: team/kde <bribbers@disroot.org>
+
+# The group tag is just to easily find this APKBUILD by some scripts for automation
+# group=kde-other
+pkgname=xwaylandvideobridge
+pkgver=0.4.0
+pkgrel=1
+# armhf blocked by extra-cmake-modules
+arch="all !armhf"
+url="https://invent.kde.org/system/xwaylandvideobridge"
+pkgdesc="Utility to allow streaming Wayland windows to X applications"
+license="BSD-3-Clause AND LGPL-2.0-or-later"
+makedepends="
+ extra-cmake-modules
+ kcoreaddons-dev
+ ki18n-dev
+ knotifications-dev
+ kpipewire-dev
+ kstatusnotifieritem-dev
+ kwindowsystem-dev
+ qt6-qtbase-dev
+ samurai
+ "
+subpackages="$pkgname-lang"
+_repo_url="https://invent.kde.org/system/xwaylandvideobridge.git"
+source="https://download.kde.org/stable/xwaylandvideobridge/xwaylandvideobridge-$pkgver.tar.xz"
+
+install_if="xwayland xdg-desktop-portal-kde"
+
+build() {
+ cmake -B build -G Ninja \
+ -DBUILD_WITH_QT6=ON \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+d0352b7ce94f1a355d8fd8f42a45436483a87d90da1904295f984012859651472eabbca39df5107793790d48474b6de1c8766e31461d1548134547cbc7dfd5a4 xwaylandvideobridge-0.4.0.tar.xz
+"
diff --git a/testing/yaegi/APKBUILD b/testing/yaegi/APKBUILD
new file mode 100644
index 00000000000..7c8f1fabdb3
--- /dev/null
+++ b/testing/yaegi/APKBUILD
@@ -0,0 +1,45 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=yaegi
+pkgver=0.16.0
+pkgrel=2
+pkgdesc="Elegant Go interpreter"
+url="https://github.com/traefik/yaegi"
+# 32bit: TestEvalBuiltin test fails
+# riscv64: interp tests time out
+arch="all !x86 !armhf !armv7 !riscv64"
+license="Apache-2.0"
+makedepends="go"
+source="$pkgname-$pkgver.tar.gz::https://github.com/traefik/yaegi/archive/refs/tags/v$pkgver.tar.gz"
+# Required to pass tests.
+# Ref: https://github.com/traefik/yaegi/issues/1523#issuecomment-1465730351
+builddir="$srcdir/src/github.com/traefik/$pkgname"
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+prepare() {
+ export GOPATH="$srcdir"
+
+ mkdir -p "$(dirname $builddir)"
+ mv "$srcdir/$pkgname-$pkgver" "$builddir"/
+
+ default_prepare
+}
+
+build() {
+ go build -v -ldflags "-X main.version=v$pkgver" ./cmd/yaegi/
+}
+
+check() {
+ # extract_test.go:157: cannot find package "math"
+ GOFLAGS="${GOFLAGS/-trimpath/}" go test ./...
+}
+
+package() {
+ install -Dm755 $pkgname -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+68962e276c64ec9b681d183b48f179960709397233e4062b8338d35adf526a3ac14ecb52d45e5f0a5aaada206b184bd650a917110db962522bc0b83afd3a60b7 yaegi-0.16.0.tar.gz
+"
diff --git a/testing/yamkix/APKBUILD b/testing/yamkix/APKBUILD
index 1adb34ede09..daddb7bcc06 100644
--- a/testing/yamkix/APKBUILD
+++ b/testing/yamkix/APKBUILD
@@ -1,31 +1,49 @@
# Contributor: Galen Abell <galen@galenabell.com>
# Maintainer: Galen Abell <galen@galenabell.com>
pkgname=yamkix
-pkgver=0.9.0
-pkgrel=3
+pkgver=0.10.0
+pkgrel=1
pkgdesc="A python based yaml formatter"
url="https://github.com/looztra/yamkix"
arch="noarch"
license="Apache-2.0"
depends="python3 py3-ruamel.yaml"
-makedepends="py3-setuptools"
-checkdepends="py3-pytest py3-pytest-runner"
+makedepends="py3-gpep517 py3-poetry-core py3-setuptools py3-wheel"
+checkdepends="py3-pytest"
+subpackages="$pkgname-pyc"
source="$pkgname-$pkgver.tar.gz::https://github.com/looztra/yamkix/archive/v$pkgver.tar.gz"
[ "$CARCH" = "riscv64" ] && makedepends="$makedepends $checkdepends"
+prepare() {
+ default_prepare
+
+ # Use normal poetry build backend instead of poetry-dynamic-versioning.
+ sed -i "s/^__version__ = .*/__version__ = \"$pkgver\"/" \
+ src/yamkix/__init__.py
+ sed -i \
+ -e "s/^version = .*/version = \"$pkgver\"/" \
+ -e "s/^build-backend = .*/build-backend = \"poetry.core.masonry.api\"/" \
+ pyproject.toml
+}
+
build() {
- python3 setup.py build
+ gpep517 build-wheel \
+ --wheel-dir .dist \
+ --output-fd 3 3>&1 >&2
}
check() {
- python3 setup.py test
+ python3 -m venv --clear --without-pip --system-site-packages .testenv
+ .testenv/bin/python3 -m installer .dist/*.whl
+ .testenv/bin/python3 -m pytest
}
package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
+ python3 -m installer -d "$pkgdir" \
+ .dist/*.whl
}
sha512sums="
-5905a1849efc2b469a72fd274d984545bccfa0a0badb86dc69682171435188bf02b094604b768937c3b4423572f218bea72017db34d5daf0a3f2e4f94618a414 yamkix-0.9.0.tar.gz
+3f15ebc687b95c1b44c31146032713d51a87933bc3d10b4c44668a217e99b49e3ac26914434f6885bbdad58e8234a7eb6517b44097a832477b507a9697341ec1 yamkix-0.10.0.tar.gz
"
diff --git a/testing/yara/APKBUILD b/testing/yara/APKBUILD
deleted file mode 100644
index 569a36f3ee5..00000000000
--- a/testing/yara/APKBUILD
+++ /dev/null
@@ -1,47 +0,0 @@
-# Maintainer: Daniel Isaksen <d@duniel.no>
-pkgname=yara
-pkgver=4.2.0
-pkgrel=0
-pkgdesc="The pattern matching swiss knife for malware researchers"
-url="https://virustotal.github.io/yara/"
-arch="all !armhf !armv7" # armhf: tests fail
-license="BSD-3-Clause"
-makedepends="automake file-dev openssl-dev autoconf libtool flex"
-source="$pkgname-$pkgver.tar.gz::https://github.com/VirusTotal/yara/archive/v$pkgver.tar.gz
- remove-test-rules.patch"
-subpackages="$pkgname-dev $pkgname-doc"
-
-# secfixes:
-# 4.2.0-r0:
-# - CVE-2021-45429
-
-prepare() {
- default_prepare
- autoreconf -fiv
-}
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --with-crypto \
- --enable-magic
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- install -Dm 644 COPYING "$pkgdir/usr/share/licenses/$pkgname"/COPYING
- install -Dm 644 README.md "$pkgdir/usr/share/doc/$pkgname"/README.md
- cp -r docs "$pkgdir/usr/share/doc/$pkgname"
-}
-
-sha512sums="
-24ca707015c77d87126bcaac0991997f6b09403024765d615a06db47191a3f0177e1c1eb4a917ec8412876b61d28f4a708f36999ddd9214c3967968c71ae3b7c yara-4.2.0.tar.gz
-a725860d8e404326b61d633ae32a52e127b26c54dacad1f142ea20d760b926608f17d9ed0d0bd14c0f4987444211a868447e8c79d9d640053497f7f4974b6ee7 remove-test-rules.patch
-"
diff --git a/testing/yara/remove-test-rules.patch b/testing/yara/remove-test-rules.patch
deleted file mode 100644
index 38aa9135692..00000000000
--- a/testing/yara/remove-test-rules.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-diff --git a/Makefile.am b/Makefile.am
-index 062b77f..5bde105 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -65,11 +65,6 @@
- test_arena_LDADD = libyara/.libs/libyara.a
- test_atoms_SOURCES = tests/test-atoms.c tests/util.c
- test_atoms_LDADD = libyara/.libs/libyara.a
--test_rules_SOURCES = tests/test-rules.c tests/util.c
--test_rules_LDADD = libyara/.libs/libyara.a
--if POSIX
--EXTRA_test_rules_DEPENDENCIES = tests/mapper$(EXEEXT)
--endif
- test_pe_SOURCES = tests/test-pe.c tests/util.c
- test_pe_LDADD = libyara/.libs/libyara.a
- test_elf_SOURCES = tests/test-elf.c tests/util.c
-@@ -97,7 +92,6 @@
- test-alignment \
- test-atoms \
- test-api \
-- test-rules \
- test-pe \
- test-elf \
- test-version \
diff --git a/testing/yarr/APKBUILD b/testing/yarr/APKBUILD
new file mode 100644
index 00000000000..9bf86b1b66d
--- /dev/null
+++ b/testing/yarr/APKBUILD
@@ -0,0 +1,44 @@
+# Maintainer: Cowington Post <cowingtonpost@gmail.com>
+pkgname=yarr
+pkgver=2.4
+pkgrel=5
+pkgdesc="Yarr is a web-based feed aggregator which can be used both as a desktop application and a personal self-hosted server"
+url="https://github.com/nkanaev/yarr/"
+# fails tests on 32-bit
+arch="all !x86 !armhf !armv7"
+license="MIT"
+makedepends="go sqlite-dev"
+install="$pkgname.pre-install"
+subpackages="$pkgname-doc $pkgname-openrc"
+source="https://github.com/nkanaev/yarr/archive/refs/tags/v$pkgver/yarr-$pkgver.tar.gz
+ yarr.initd
+ yarr.confd
+ "
+
+build() {
+ go build -tags "sqlite_foreign_keys libsqlite3 release" -ldflags="-X 'main.Version=$pkgver'" -o yarr src/main.go
+}
+
+check() {
+ cd src
+ go test -tags "sqlite_foreign_keys libsqlite3 release" ./...
+
+}
+
+package() {
+ install -m755 -D yarr "$pkgdir"/usr/bin/"$pkgname"
+
+ install -m755 -D "$srcdir"/$pkgname.initd \
+ "$pkgdir"/etc/init.d/$pkgname
+ install -m644 -D "$srcdir"/$pkgname.confd \
+ "$pkgdir"/etc/conf.d/$pkgname
+
+ mkdir -p "$pkgdir"/usr/share/doc/"$pkgname"
+ cp -a doc "$pkgdir"/usr/share/doc/"$pkgname"
+}
+
+sha512sums="
+8a45012453db6ff5df3256b5bdf384fe426fb5ca408d9167669f28c7d948c3d94c7fc4b796d08b1d45c74e0df9e96b14ef16a0fa2a320d87510b49f92ccae849 yarr-2.4.tar.gz
+9373b444bd679b98b429fe935e6c397057cc834db477f3c2e1d75b07a8e5a8634de2a2159fa9157c479d1d1856cfa770e73328e58ce07ba2cb92d7ab7f1fe827 yarr.initd
+e2858394556bf6497969354c2a2c0514c334e3d745d0425fc606b44fdc68013a25df093160b6d6fcbec8e98ee623a3add0e51d8d9664397e27dc36f33d965be4 yarr.confd
+"
diff --git a/testing/yarr/yarr.confd b/testing/yarr/yarr.confd
new file mode 100755
index 00000000000..335b389fae4
--- /dev/null
+++ b/testing/yarr/yarr.confd
@@ -0,0 +1,12 @@
+output_log=/var/log/yarr.log
+error_log=/var/log/yarr.log
+
+export YARR_ADDR=0.0.0.0:7070
+export YARR_DB=/var/lib/yarr/yarr.db
+
+# uncomment and configure for serving over https
+# export YARR_CERTFILE=
+# export YARR_KEYFILE=
+
+# File containing username and password, not required
+# export YARR_AUTHFILE=
diff --git a/testing/yarr/yarr.initd b/testing/yarr/yarr.initd
new file mode 100755
index 00000000000..3a7b6fe0ac9
--- /dev/null
+++ b/testing/yarr/yarr.initd
@@ -0,0 +1,17 @@
+#!/sbin/openrc-run
+
+name=yarr
+command="/usr/bin/yarr"
+command_user="yarr:yarr"
+command_background=true
+pidfile="/run/$RC_SVCNAME.pid"
+
+depend() {
+ need net localmount
+ after firewall
+}
+
+start_pre() {
+ checkpath -f "$output_log" -o "$command_user"
+ checkpath -f "$error_log" -o "$command_user"
+}
diff --git a/testing/yarr/yarr.pre-install b/testing/yarr/yarr.pre-install
new file mode 100755
index 00000000000..c4cbf48eee6
--- /dev/null
+++ b/testing/yarr/yarr.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S yarr 2>/dev/null
+adduser -S -D -h /var/lib/yarr -s /sbin/nologin -G yarr -g yarr yarr 2>/dev/null
+
+exit 0
diff --git a/testing/yaru-common/APKBUILD b/testing/yaru-common/APKBUILD
new file mode 100644
index 00000000000..d0232b74216
--- /dev/null
+++ b/testing/yaru-common/APKBUILD
@@ -0,0 +1,334 @@
+# Contributor: Leo <thinkabit.ukim@gmail.com>
+# Maintainer: Brandon Boese <brandonboese@protonmail.com>
+pkgname=yaru-common
+_pkgname=yaru
+pkgver=23.10.0
+_minorpkgver=-0ubuntu2
+pkgrel=0
+pkgdesc="Ubuntu community theme"
+options="!check" # No testsuite
+url="https://community.ubuntu.com/c/desktop/theme-refresh"
+arch="noarch"
+license="GPL-3.0-or-later AND CC-BY-SA-4.0"
+makedepends="
+ bash
+ coreutils
+ dbus
+ glib-dev
+ meson
+ sassc
+ xvfb-run
+ "
+subpackages="
+ $_pkgname-icon-theme-bark:_icon_theme_bark
+ $_pkgname-icon-theme-blue:_icon_theme_blue
+ $_pkgname-icon-theme-magenta:_icon_theme_magenta
+ $_pkgname-icon-theme-mate:_icon_theme_mate
+ $_pkgname-icon-theme-olive:_icon_theme_olive
+ $_pkgname-icon-theme-prussiangreen:_icon_theme_prussiangreen
+ $_pkgname-icon-theme-purple:_icon_theme_purple
+ $_pkgname-icon-theme-red:_icon_theme_red
+ $_pkgname-icon-theme-sage:_icon_theme_sage
+ $_pkgname-icon-theme-viridian:_icon_theme_viridian
+ $_pkgname-icon-theme:_icon_theme
+ $_pkgname-schemas:_schemas
+ $_pkgname-shell:_shell
+ $_pkgname-sounds:_sounds
+ $_pkgname-theme-bark:_theme_bark
+ $_pkgname-theme-blue:_theme_blue
+ $_pkgname-theme-hdpi:_theme_hdpi
+ $_pkgname-theme-magenta:_theme_magenta
+ $_pkgname-theme-mate:_theme_mate
+ $_pkgname-theme-olive:_theme_olive
+ $_pkgname-theme-prussiangreen:_theme_prussiangreen
+ $_pkgname-theme-purple:_theme_purple
+ $_pkgname-theme-red:_theme_red
+ $_pkgname-theme-sage:_theme_sage
+ $_pkgname-theme-viridian:_theme_viridian
+ $_pkgname-theme:_theme
+ "
+source="$_pkgname-$pkgver.tar.gz::https://github.com/ubuntu/yaru/archive/$pkgver$_minorpkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver$_minorpkgver"
+
+build() {
+ abuild-meson \
+ -Dmate=true \
+ -Dmate-dark=true \
+ -Dubuntu-unity=true \
+ -Dxfwm4=true \
+ -Dcinnamon=true \
+ -Dcinnamon-dark=true \
+ -Dcinnamon-shell=true \
+ . output
+ meson compile -C output
+}
+
+package() {
+ DESTDIR="$pkgdir" meson install --no-rebuild -C output
+}
+
+_icon_theme_bark() {
+ depends=""
+ pkgdesc="Bark variant of Yaru icon theme"
+
+ mkdir -p "$subpkgdir"/usr/share/icons
+ mv "$pkgdir"/usr/share/icons/Yaru-bark "$subpkgdir"/usr/share/icons
+ mv "$pkgdir"/usr/share/icons/Yaru-bark-dark "$subpkgdir"/usr/share/icons
+}
+
+_theme_bark() {
+ depends="yaru-common"
+ pkgdesc="Bark variant of Yaru theme"
+
+ mkdir -p "$subpkgdir"/usr/share/themes
+ mv "$pkgdir"/usr/share/themes/Yaru-bark \
+ "$subpkgdir"/usr/share/themes/Yaru-bark
+ mv "$pkgdir"/usr/share/themes/Yaru-bark-dark \
+ "$subpkgdir"/usr/share/themes/Yaru-bark-dark
+}
+
+_icon_theme_blue() {
+ depends=""
+ pkgdesc="Blue variant of Yaru icon theme"
+
+ mkdir -p "$subpkgdir"/usr/share/icons
+ mv "$pkgdir"/usr/share/icons/Yaru-blue "$subpkgdir"/usr/share/icons
+ mv "$pkgdir"/usr/share/icons/Yaru-blue-dark "$subpkgdir"/usr/share/icons
+}
+
+_theme_blue() {
+ depends="yaru-common"
+ pkgdesc="Blue variant of Yaru theme"
+
+ mkdir -p "$subpkgdir"/usr/share/themes
+ mv "$pkgdir"/usr/share/themes/Yaru-blue \
+ "$subpkgdir"/usr/share/themes/Yaru-blue
+ mv "$pkgdir"/usr/share/themes/Yaru-blue-dark \
+ "$subpkgdir"/usr/share/themes/Yaru-blue-dark
+}
+
+_theme_hdpi() {
+ depends="yaru-common"
+ pkgdesc="Hdpi variant of Yaru theme"
+
+ mkdir -p "$subpkgdir"/usr/share/themes
+ mv "$pkgdir"/usr/share/themes/Yaru-hdpi \
+ "$subpkgdir"/usr/share/themes/Yaru-hdpi
+ mv "$pkgdir"/usr/share/themes/Yaru-dark-hdpi \
+ "$subpkgdir"/usr/share/themes/Yaru-dark-hdpi
+ mv "$pkgdir"/usr/share/themes/Yaru-xhdpi \
+ "$subpkgdir"/usr/share/themes/Yaru-xhdpi
+ mv "$pkgdir"/usr/share/themes/Yaru-dark-xhdpi \
+ "$subpkgdir"/usr/share/themes/Yaru-dark-xhdpi
+}
+
+_icon_theme_magenta() {
+ depends=""
+ pkgdesc="Magenta variant of Yaru icon theme"
+
+ mkdir -p "$subpkgdir"/usr/share/icons
+ mv "$pkgdir"/usr/share/icons/Yaru-magenta "$subpkgdir"/usr/share/icons
+ mv "$pkgdir"/usr/share/icons/Yaru-magenta-dark "$subpkgdir"/usr/share/icons
+}
+
+_theme_magenta() {
+ depends="yaru-common"
+ pkgdesc="Magenta variant of Yaru theme"
+
+ mkdir -p "$subpkgdir"/usr/share/themes
+ mv "$pkgdir"/usr/share/themes/Yaru-magenta \
+ "$subpkgdir"/usr/share/themes/Yaru-magenta
+ mv "$pkgdir"/usr/share/themes/Yaru-magenta-dark \
+ "$subpkgdir"/usr/share/themes/Yaru-magenta-dark
+}
+
+_icon_theme_mate() {
+ depends=""
+ pkgdesc="Mate variant of Yaru icon theme"
+
+ mkdir -p "$subpkgdir"/usr/share/icons
+ mv "$pkgdir"/usr/share/icons/Yaru-mate "$subpkgdir"/usr/share/icons
+ mv "$pkgdir"/usr/share/icons/Yaru-mate-dark "$subpkgdir"/usr/share/icons
+}
+
+_theme_mate() {
+ depends="yaru-common"
+ pkgdesc="Mate variant of Yaru theme"
+
+ mkdir -p "$subpkgdir"/usr/share/themes
+ mv "$pkgdir"/usr/share/themes/Yaru-mate \
+ "$subpkgdir"/usr/share/themes/Yaru-mate
+ mv "$pkgdir"/usr/share/themes/Yaru-mate-dark \
+ "$subpkgdir"/usr/share/themes/Yaru-mate-dark
+}
+
+_icon_theme_olive() {
+ depends=""
+ pkgdesc="Olive variant of Yaru icon theme"
+
+ mkdir -p "$subpkgdir"/usr/share/icons
+ mv "$pkgdir"/usr/share/icons/Yaru-olive "$subpkgdir"/usr/share/icons
+ mv "$pkgdir"/usr/share/icons/Yaru-olive-dark "$subpkgdir"/usr/share/icons
+}
+
+_theme_olive() {
+ depends="yaru-common"
+ pkgdesc="Olive variant of Yaru theme"
+
+ mkdir -p "$subpkgdir"/usr/share/themes
+ mv "$pkgdir"/usr/share/themes/Yaru-olive \
+ "$subpkgdir"/usr/share/themes/Yaru-olive
+ mv "$pkgdir"/usr/share/themes/Yaru-olive-dark \
+ "$subpkgdir"/usr/share/themes/Yaru-olive-dark
+}
+
+_icon_theme_prussiangreen() {
+ depends=""
+ pkgdesc="Prussian green variant of Yaru icon theme"
+
+ mkdir -p "$subpkgdir"/usr/share/icons
+ mv "$pkgdir"/usr/share/icons/Yaru-prussiangreen "$subpkgdir"/usr/share/icons
+ mv "$pkgdir"/usr/share/icons/Yaru-prussiangreen-dark "$subpkgdir"/usr/share/icons
+}
+
+_theme_prussiangreen() {
+ depends="yaru-common"
+ pkgdesc="Prussian green variant of Yaru theme"
+
+ mkdir -p "$subpkgdir"/usr/share/themes
+ mv "$pkgdir"/usr/share/themes/Yaru-prussiangreen \
+ "$subpkgdir"/usr/share/themes/Yaru-prussiangreen
+ mv "$pkgdir"/usr/share/themes/Yaru-prussiangreen-dark \
+ "$subpkgdir"/usr/share/themes/Yaru-prussiangreen-dark
+}
+
+_icon_theme_purple() {
+ depends=""
+ pkgdesc="Purple variant of Yaru icon theme"
+
+ mkdir -p "$subpkgdir"/usr/share/icons
+ mv "$pkgdir"/usr/share/icons/Yaru-purple "$subpkgdir"/usr/share/icons
+ mv "$pkgdir"/usr/share/icons/Yaru-purple-dark "$subpkgdir"/usr/share/icons
+}
+
+_theme_purple() {
+ depends="yaru-common"
+ pkgdesc="Purple variant of Yaru theme"
+
+ mkdir -p "$subpkgdir"/usr/share/themes
+ mv "$pkgdir"/usr/share/themes/Yaru-purple \
+ "$subpkgdir"/usr/share/themes/Yaru-purple
+ mv "$pkgdir"/usr/share/themes/Yaru-purple-dark \
+ "$subpkgdir"/usr/share/themes/Yaru-purple-dark
+}
+
+_icon_theme_red() {
+ depends=""
+ pkgdesc="Red variant of Yaru icon theme"
+
+ mkdir -p "$subpkgdir"/usr/share/icons
+ mv "$pkgdir"/usr/share/icons/Yaru-red "$subpkgdir"/usr/share/icons
+ mv "$pkgdir"/usr/share/icons/Yaru-red-dark "$subpkgdir"/usr/share/icons
+}
+
+_theme_red() {
+ depends="yaru-common"
+ pkgdesc="Red variant of Yaru theme"
+
+ mkdir -p "$subpkgdir"/usr/share/themes
+ mv "$pkgdir"/usr/share/themes/Yaru-red \
+ "$subpkgdir"/usr/share/themes/Yaru-red
+ mv "$pkgdir"/usr/share/themes/Yaru-red-dark \
+ "$subpkgdir"/usr/share/themes/Yaru-red-dark
+}
+
+_icon_theme_sage() {
+ depends=""
+ pkgdesc="Sage variant of Yaru icon theme"
+
+ mkdir -p "$subpkgdir"/usr/share/icons
+ mv "$pkgdir"/usr/share/icons/Yaru-sage "$subpkgdir"/usr/share/icons
+ mv "$pkgdir"/usr/share/icons/Yaru-sage-dark "$subpkgdir"/usr/share/icons
+}
+
+_theme_sage() {
+ depends="yaru-common"
+ pkgdesc="Sage variant of Yaru theme"
+
+ mkdir -p "$subpkgdir"/usr/share/themes
+ mv "$pkgdir"/usr/share/themes/Yaru-sage \
+ "$subpkgdir"/usr/share/themes/Yaru-sage
+ mv "$pkgdir"/usr/share/themes/Yaru-sage-dark \
+ "$subpkgdir"/usr/share/themes/Yaru-sage-dark
+}
+
+_icon_theme_viridian() {
+ depends=""
+ pkgdesc="Viridian variant of Yaru icon theme"
+
+ mkdir -p "$subpkgdir"/usr/share/icons
+ mv "$pkgdir"/usr/share/icons/Yaru-viridian "$subpkgdir"/usr/share/icons
+ mv "$pkgdir"/usr/share/icons/Yaru-viridian-dark "$subpkgdir"/usr/share/icons
+}
+
+_theme_viridian() {
+ depends="yaru-common"
+ pkgdesc="Viridian variant of Yaru theme"
+
+ mkdir -p "$subpkgdir"/usr/share/themes
+ mv "$pkgdir"/usr/share/themes/Yaru-viridian \
+ "$subpkgdir"/usr/share/themes/Yaru-viridian
+ mv "$pkgdir"/usr/share/themes/Yaru-viridian-dark \
+ "$subpkgdir"/usr/share/themes/Yaru-viridian-dark
+}
+
+_schemas() {
+ depends="yaru-common yaru-icon-theme yaru-theme"
+ pkgdesc="Schema files for Yaru theme"
+
+ mkdir -p "$subpkgdir"/usr/share
+ mv "$pkgdir"/usr/share/glib-2.0 "$subpkgdir"/usr/share
+}
+
+_shell() {
+ depends="yaru-common yaru-icon-theme yaru-schemas yaru-sounds yaru-theme"
+ pkgdesc="Yaru shell theme for the GNOME Desktop Environment"
+
+ install_if="yaru-common=$pkgver-r$pkgrel gnome-shell"
+
+ mkdir -p "$subpkgdir"/usr/share
+ mv "$pkgdir"/usr/share/gnome-shell "$subpkgdir"/usr/share
+
+ mv "$pkgdir"/usr/share/wayland-sessions \
+ "$pkgdir"/usr/share/xsessions \
+ "$subpkgdir"/usr/share
+}
+
+_sounds() {
+ depends=""
+ pkgdesc="Yaru sound resources"
+
+ mkdir -p "$subpkgdir"/usr/share
+ mv "$pkgdir"/usr/share/sounds "$subpkgdir"/usr/share
+}
+
+_icon_theme() {
+ depends=""
+ pkgdesc="Yaru icon theme"
+
+ mkdir -p "$subpkgdir"/usr/share
+ mv "$pkgdir"/usr/share/icons "$subpkgdir"/usr/share
+}
+
+_theme() {
+ depends="yaru-common"
+ pkgdesc="Yaru, the Ubuntu community theme"
+
+ mkdir -p "$subpkgdir"/usr/share
+ mv "$pkgdir"/usr/share/themes \
+ "$subpkgdir"/usr/share
+}
+
+sha512sums="
+4047df97026d79f4fcd541a0afea6c39294956761c9face9d5506cd188b05b52c6d627d2e25226bce09a6dcb682f4e1aff7411dc69ae4770c8cd9c19783f30de yaru-23.10.0.tar.gz
+"
diff --git a/testing/yass/0000-remove-com-sun.patch b/testing/yass/0000-remove-com-sun.patch
deleted file mode 100644
index be4c117325b..00000000000
--- a/testing/yass/0000-remove-com-sun.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-Author: Patrycja Rosa <alpine@ptrcnull.me>
-Date: Tue Jan 18 19:04:58 2022 +0100
-Patch-Source: https://github.com/SarutaSan72/Yass/pull/95
-
- Remove reference to com.sun package
-
- (it's not even used anyway)
-
-diff --git a/src/yass/I18.java b/src/yass/I18.java
---- a/src/yass/I18.java
-+++ b/src/yass/I18.java
-@@ -18,8 +18,6 @@
-
- package yass;
-
--import com.sun.xml.internal.ws.api.ResourceLoader;
--
- import javax.imageio.ImageIO;
- import javax.swing.*;
- import java.awt.*;
diff --git a/testing/yass/APKBUILD b/testing/yass/APKBUILD
index 84a5a1beb8d..c6a5f0df239 100644
--- a/testing/yass/APKBUILD
+++ b/testing/yass/APKBUILD
@@ -1,26 +1,23 @@
# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=yass
-pkgver=2.3.0
+pkgver=2.5.0
pkgrel=0
pkgdesc="Karaoke Editor"
-url="http://yass-along.com/"
+url="https://yass-along.com/"
# blocked by openjdk11-jre-headless
arch="all !x86 !armhf !armv7 !riscv64"
license="GPL-3.0-or-later"
depends="openjdk11-jre"
makedepends="apache-ant openjdk8"
source="https://github.com/SarutaSan72/Yass/archive/refs/tags/$pkgver/yass-$pkgver.tar.gz
- 0000-remove-com-sun.patch
- build.xml
yass
"
builddir="$srcdir/Yass-$pkgver"
options="!check" # no tests provided
build() {
- mv "$srcdir"/build.xml .
- JAVA_HOME="/usr/lib/jvm/java-8-openjdk" ant
+ JAVA_HOME="/usr/lib/jvm/java-8-openjdk" ant -f build-jar.xml compile jar
}
package() {
@@ -29,8 +26,6 @@ package() {
}
sha512sums="
-a4bb50ff3df2a53579420f735fd1aad5bc84e21c87f2b1be340a485ce98f967c99907ed947c69bef4eda1ad4c29eacac2a8ae69905624b3adb4f66883a3b2a48 yass-2.3.0.tar.gz
-ff9f500b81611b3c30e438a26dd35859f3338e5b8ba4962683036f5e9bcfdd0cc26954403b29e55e4a83bd1506d3bea8a636a31d04ca1b701d53c03cb5931ea8 0000-remove-com-sun.patch
-30ad101368508d4c9a55ec18b4a73899de60eb9971d21a302d555db57898482d6540e25b050f2b690b4064f562480c02b4e5232d09284e9d3dbd4493348e34c8 build.xml
+0d64caf7c34b0bb16473025941baff8f91573020cddea7a128386159f0580b955361a0afdd31c00a64779f360b4f46131ee43384011f8d09d25c831341cbd2fd yass-2.5.0.tar.gz
7f8fb663aeef66e1659ac3e4bafa0aec9074e4caa2bf7894be28e33a6efbea1199cb47d19068f6637269636c8ab5e254486fad2113fad854d70df0dc78b7a305 yass
"
diff --git a/testing/yazi/APKBUILD b/testing/yazi/APKBUILD
new file mode 100644
index 00000000000..f135367246c
--- /dev/null
+++ b/testing/yazi/APKBUILD
@@ -0,0 +1,50 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=yazi
+pkgver=0.2.4
+pkgrel=1
+pkgdesc="Blazing fast terminal file manager written in Rust, based on async I/O"
+url="https://yazi-rs.github.io"
+arch="all"
+license="MIT"
+makedepends="
+ cargo
+ cargo-auditable
+ lua5.4-dev
+"
+subpackages="$pkgname-doc
+ $pkgname-bash-completion
+ $pkgname-fish-completion
+ $pkgname-zsh-completion
+"
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/sxyazi/yazi/archive/refs/tags/v$pkgver.tar.gz
+ system-lua.patch
+"
+options="net"
+
+prepare() {
+ default_prepare
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ YAZI_GEN_COMPLETIONS=true cargo auditable build --release --frozen
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ install -Dm755 target/release/yazi "$pkgdir"/usr/bin/yazi
+ install -Dm644 yazi-boot/completions/yazi.bash "$pkgdir"/usr/share/bash-completion/completions/yazi
+ install -Dm644 yazi-boot/completions/yazi.fish "$pkgdir"/usr/share/fish/vendor_completions.d/yazi.fish
+ install -Dm644 yazi-boot/completions/_yazi "$pkgdir"/usr/share/zsh/site-functions/_yazi
+ install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
+
+sha512sums="
+185d0b35489907fae68b41381fbbbdcdded7536d6084bbd897e0c49f19e2e999b7a98537a840adbf768995af793727ad6607f026df5de2263c6469c72eac5e5a yazi-0.2.4.tar.gz
+6aea3e201908144142ae2b8bf21c1c8bef8721ed876ca77749742a87d6d5ace0bb2266e016c2656d72a92cae13cb82d14b4683ed8393622c79b93966606e9bb2 system-lua.patch
+"
diff --git a/testing/yazi/system-lua.patch b/testing/yazi/system-lua.patch
new file mode 100644
index 00000000000..7be8002f98a
--- /dev/null
+++ b/testing/yazi/system-lua.patch
@@ -0,0 +1,154 @@
+--- a/yazi-fm/Cargo.toml
++++ b/yazi-fm/Cargo.toml
+@@ -23,7 +23,7 @@
+ crossterm = { version = "^0", features = [ "event-stream" ] }
+ fdlimit = "^0"
+ futures = "^0"
+-mlua = { version = "^0", features = [ "lua54", "vendored" ] }
++mlua = { version = "^0", features = [ "lua54" ] }
+ ratatui = "^0"
+ tokio = { version = "^1", features = [ "parking_lot" ] }
+ unicode-width = "^0"
+--- a/yazi-plugin/Cargo.toml
++++ b/yazi-plugin/Cargo.toml
+@@ -19,7 +19,7 @@
+ crossterm = "^0"
+ futures = "^0"
+ md-5 = "^0"
+-mlua = { version = "^0", features = [ "lua54", "vendored", "serialize", "macros", "async" ] }
++mlua = { version = "^0", features = [ "lua54", "serialize", "macros", "async" ] }
+ parking_lot = "^0"
+ ratatui = "^0"
+ serde = "^1"
+--- a/yazi-proxy/Cargo.toml
++++ b/yazi-proxy/Cargo.toml
+@@ -14,5 +14,5 @@
+
+ # External dependencies
+ anyhow = "^1"
+-mlua = { version = "^0", features = [ "lua54", "vendored" ] }
++mlua = { version = "^0", features = [ "lua54" ] }
+ tokio = { version = "^1", features = [ "parking_lot" ] }
++++ a/Cargo.lock
+--- b/Cargo.lock
+@@ -611,16 +611,6 @@
+ ]
+
+ [[package]]
+-name = "errno"
+-version = "0.3.8"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245"
+-dependencies = [
+- "libc",
+- "windows-sys 0.52.0",
+-]
+-
+-[[package]]
+ name = "error-code"
+ version = "2.3.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+@@ -896,15 +886,6 @@
+ checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024"
+
+ [[package]]
+-name = "home"
+-version = "0.5.9"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5"
+-dependencies = [
+- "windows-sys 0.52.0",
+-]
+-
+-[[package]]
+ name = "iana-time-zone"
+ version = "0.1.60"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+@@ -1104,12 +1085,6 @@
+ ]
+
+ [[package]]
+-name = "linux-raw-sys"
+-version = "0.4.13"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c"
+-
+-[[package]]
+ name = "lock_api"
+ version = "0.4.11"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+@@ -1135,25 +1110,6 @@
+ ]
+
+ [[package]]
+-name = "lua-src"
+-version = "546.0.2"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "2da0daa7eee611a4c30c8f5ee31af55266e26e573971ba9336d2993e2da129b2"
+-dependencies = [
+- "cc",
+-]
+-
+-[[package]]
+-name = "luajit-src"
+-version = "210.5.6+9cc2e42"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "23b365d859c9ffc187f48bb3e25ec80c3b40cf3f68f53544f4adeaee70554157"
+-dependencies = [
+- "cc",
+- "which",
+-]
+-
+-[[package]]
+ name = "malloc_buf"
+ version = "0.0.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+@@ -1232,8 +1188,6 @@
+ dependencies = [
+ "cc",
+ "cfg-if",
+- "lua-src",
+- "luajit-src",
+ "pkg-config",
+ ]
+
+@@ -1651,19 +1605,6 @@
+ checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2"
+
+ [[package]]
+-name = "rustix"
+-version = "0.38.31"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "6ea3e1a662af26cd7a3ba09c0297a31af215563ecf42817c98df621387f4e949"
+-dependencies = [
+- "bitflags 2.4.2",
+- "errno",
+- "libc",
+- "linux-raw-sys",
+- "windows-sys 0.52.0",
+-]
+-
+-[[package]]
+ name = "rustversion"
+ version = "1.0.14"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+@@ -2426,19 +2367,6 @@
+ version = "0.1.8"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "53a85b86a771b1c87058196170769dd264f66c0782acf1ae6cc51bfd64b39082"
+-
+-[[package]]
+-name = "which"
+-version = "6.0.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "7fa5e0c10bf77f44aac573e498d1a82d5fbd5e91f6fc0a99e7be4b38e85e101c"
+-dependencies = [
+- "either",
+- "home",
+- "once_cell",
+- "rustix",
+- "windows-sys 0.52.0",
+-]
+
+ [[package]]
+ name = "winapi"
diff --git a/testing/ydcv/APKBUILD b/testing/ydcv/APKBUILD
index 635f7c36920..385bc97f59b 100644
--- a/testing/ydcv/APKBUILD
+++ b/testing/ydcv/APKBUILD
@@ -2,14 +2,14 @@
# Maintainer:
pkgname=ydcv
pkgver=0.7
-pkgrel=4
+pkgrel=7
pkgdesc="YouDao Console Version - Chinese online translate"
url="https://github.com/felixonmars/ydcv"
arch="noarch"
license="GPL-3.0-only"
depends="python3"
makedepends="py3-setuptools py3-setuptools_scm"
-subpackages="$pkgname-zsh-completion"
+subpackages="$pkgname-zsh-completion $pkgname-pyc"
source="ydcv-$pkgver.tar.gz::https://github.com/felixonmars/ydcv/archive/$pkgver.tar.gz"
options="!check"
diff --git a/testing/yices2/APKBUILD b/testing/yices2/APKBUILD
new file mode 100644
index 00000000000..70a6be0d242
--- /dev/null
+++ b/testing/yices2/APKBUILD
@@ -0,0 +1,44 @@
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=yices2
+pkgver=2.6.4
+pkgrel=0
+pkgdesc="Solver for Satisfiability Modulo Theories (SMT) problems"
+url="https://github.com/SRI-CSL/yices2"
+arch="all"
+license="GPL-3.0-or-later"
+makedepends="autoconf automake gperf gmp-dev"
+checkdepends="bash"
+subpackages="$pkgname-dev $pkgname-libs"
+source="https://github.com/SRI-CSL/yices2/archive/refs/tags/Yices-$pkgver/yices2-$pkgver.tar.gz"
+builddir="$srcdir/yices2-Yices-$pkgver"
+
+prepare() {
+ default_prepare
+ NOCONFIGURE=1 autoreconf -vfi
+}
+
+build() {
+ CFLAGS="$CFLAGS -O2 -flto=auto" \
+ CXXFLAGS="$CXXFLAGS -O2 -flto=auto" \
+ ./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --infodir=/usr/share/info \
+ --localstatedir=/var \
+ --enable-thread-safety
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+ rm "$pkgdir"/usr/lib/*.a
+}
+
+sha512sums="
+d8102c41fda0e200fd1336ae317b516d2797d10c187b8f7aecf0c9b08b4b487b90bef8c358099b2da51c0367326939f9610fd4e6d5a41a392cf1114bd04b8763 yices2-2.6.4.tar.gz
+"
diff --git a/testing/yodl/APKBUILD b/testing/yodl/APKBUILD
index c8931362361..69e0c6b6e04 100644
--- a/testing/yodl/APKBUILD
+++ b/testing/yodl/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Shiz <hi@shiz.me>
pkgname=yodl
pkgver=4.02.00
-pkgrel=0
+pkgrel=1
pkgdesc="Pre-document language and tools to process it"
url="https://fbb-git.github.io/yodl/"
arch="all"
diff --git a/testing/yoe-kiosk-browser/APKBUILD b/testing/yoe-kiosk-browser/APKBUILD
new file mode 100644
index 00000000000..37197fa178c
--- /dev/null
+++ b/testing/yoe-kiosk-browser/APKBUILD
@@ -0,0 +1,28 @@
+# Contributor: Khem Raj <raj.khem@gmail.com>
+# Maintainer: Khem Raj <raj.khem@gmail.com>
+pkgname=yoe-kiosk-browser
+pkgver=0_git20231118
+_gitrev=6e94c4013f4f636a9d65561243e675dff0ae381d
+pkgrel=0
+pkgdesc="Qt6 WebEngine (Chromium) based browser designed for embedded kiosk (full screen, single app) applications"
+url="https://github.com/YoeDistro/yoe-kiosk-browser"
+arch="aarch64 x86_64"
+license="BSD-3-Clause"
+depends="qt6-qtbase qt6-qtdeclarative qt6-qtwebengine qt6-qtwebview qt6-qtvirtualkeyboard"
+makedepends="cmake ninja qt6-qtbase-dev qt6-qtdeclarative-dev qt6-qtwebengine-dev qt6-qtwebview-dev"
+source="yoe-kiosk-browser-$_gitrev.tar.gz::https://github.com/YoeDistro/yoe-kiosk-browser/archive/$_gitrev.tar.gz"
+builddir="$srcdir/$pkgname-$_gitrev"
+options="!check" # no test suite
+
+build() {
+ cmake -B build -G Ninja
+ cmake --build build
+}
+
+package() {
+ install -Dm755 build/yoe-kiosk-browser -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+adc85d8733c9476cd8be5eeeec2af40f494fbde51d7b72f07a299b2209e057e73f97dfb60cb820e3fec9976df06e179e5b79389c2e511d1791df63f9e0545e21 yoe-kiosk-browser-6e94c4013f4f636a9d65561243e675dff0ae381d.tar.gz
+"
diff --git a/testing/yofi/APKBUILD b/testing/yofi/APKBUILD
deleted file mode 100644
index 3d39974f510..00000000000
--- a/testing/yofi/APKBUILD
+++ /dev/null
@@ -1,46 +0,0 @@
-# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
-pkgname=yofi
-pkgver=0.1.5
-pkgrel=0
-pkgdesc="A minimalistic menu for wayland"
-url="https://github.com/l4l/yofi"
-arch="aarch64 armhf armv7 ppc64le x86 x86_64" # blocked by rust/cargo
-license="MIT"
-makedepends="
- cargo
- fontconfig-dev
- freetype-dev
- wayland-dev
- "
-source="https://github.com/l4l/yofi/archive/$pkgver/yofi-$pkgver.tar.gz
- remove-systemd-logger.patch
- minimize-size.patch
- "
-
-# font-fontkit loads fonts via system libraries.
-_cargo_opts="--frozen --no-default-features --features=font-fontkit"
-
-prepare() {
- default_prepare
-
- cargo fetch --locked
-}
-
-build() {
- cargo build $_cargo_opts --release
-}
-
-check() {
- cargo test $_cargo_opts
-}
-
-package() {
- install -D -m755 target/release/yofi -t "$pkgdir"/usr/bin/
-}
-
-sha512sums="
-5c18fb9e1dd1c5b101b9676fff180fe64cd206d06fa7dc6a1a84fec5dbe13f30f7da101ca5cb8ee38acc6439b8d21f96baa7c1d60705f20abd3c67fac779a112 yofi-0.1.5.tar.gz
-455d9f8845e968f1445dd0dca636fb7ff19876d3a964ff85ad039b0c6a4cf13e326b1e1e59cb4f0e857c3301700e2591002051d400b03020d1049d9abd296297 remove-systemd-logger.patch
-b804606fe784c6d42b4b0c9236f80c0badd727ba906c828dad39c5b4073d1aff2db97bfb35927260fbe00be42e31e579204a8f4a626ea6ba62fb4082ac5a1807 minimize-size.patch
-"
diff --git a/testing/yofi/minimize-size.patch b/testing/yofi/minimize-size.patch
deleted file mode 100644
index 0137329ba94..00000000000
--- a/testing/yofi/minimize-size.patch
+++ /dev/null
@@ -1,12 +0,0 @@
---- a/Cargo.toml
-+++ b/Cargo.toml
-@@ -48,6 +48,9 @@
-
- [profile.release]
- lto = true
-+codegen-units = 1
-+opt-level = "s"
-+panic = "abort"
-
- [features]
- default = ["font-fontdue"]
diff --git a/testing/yofi/remove-systemd-logger.patch b/testing/yofi/remove-systemd-logger.patch
deleted file mode 100644
index 2b41108a1cf..00000000000
--- a/testing/yofi/remove-systemd-logger.patch
+++ /dev/null
@@ -1,29 +0,0 @@
---- a/src/main.rs
-+++ b/src/main.rs
-@@ -46,9 +46,8 @@
- }
-
- fn setup_logger(level: LevelFilter, log_file: Option<impl AsRef<Path>>) {
-- use log::Log;
-
-- let dispatcher = fern::Dispatch::new()
-+ let mut dispatcher = fern::Dispatch::new()
- .format(|out, message, record| {
- out.finish(format_args!(
- "{}[{}][{}] {}",
-@@ -61,13 +60,8 @@
- .level(level)
- .chain(std::io::stdout());
-
-- let dispatcher = if let Some(log_file) = log_file {
-- dispatcher.chain(fern::log_file(log_file).unwrap())
-- } else {
-- const VERSION: &str = env!("CARGO_PKG_VERSION");
-- let systemd_logger =
-- systemd_journal_logger::JournalLog::with_extra_fields(vec![("VERSION", VERSION)]);
-- dispatcher.chain(fern::Output::call(move |record| systemd_logger.log(record)))
-+ if let Some(log_file) = log_file {
-+ dispatcher = dispatcher.chain(fern::log_file(log_file).unwrap());
- };
-
- dispatcher.apply().unwrap();
diff --git a/testing/yoshimi/APKBUILD b/testing/yoshimi/APKBUILD
new file mode 100644
index 00000000000..763caddcd6e
--- /dev/null
+++ b/testing/yoshimi/APKBUILD
@@ -0,0 +1,44 @@
+# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
+# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
+pkgname=yoshimi
+pkgver=2.3.2
+pkgrel=0
+pkgdesc="Sophisticated software synthesizer"
+url="https://yoshimi.github.io/"
+arch="all"
+license="GPL-2.0-or-later"
+depends="fltk-fluid"
+makedepends="
+ alsa-lib-dev
+ argp-standalone
+ cairo-dev
+ cmake
+ fftw-dev
+ fltk-dev
+ fontconfig-dev
+ jack-dev
+ lv2-dev
+ mesa-dev
+ mxml-dev
+ readline-dev
+ samurai
+ "
+subpackages="$pkgname-doc"
+source="https://github.com/Yoshimi/yoshimi/archive/$pkgver/yoshimi-$pkgver.tar.gz"
+options="!check" # not sure if they even exist
+
+build() {
+ cmake -B build -G Ninja -S src \
+ -DCMAKE_BUILD_TYPE=MinSizeRel \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+6ddca4a5cffc609880fcbb625eca471b9926cb3cc0bef9f349ef3fafe6280f5e3957e62db0c103856c680d0a3dde0b15225569d7171553ae74ee4c78c848b598 yoshimi-2.3.2.tar.gz
+"
diff --git a/testing/yosys/APKBUILD b/testing/yosys/APKBUILD
new file mode 100644
index 00000000000..17bc8e86b40
--- /dev/null
+++ b/testing/yosys/APKBUILD
@@ -0,0 +1,74 @@
+# Contributor: Dominika Liberda <ja@sdomi.pl>
+# Maintainer: Dominika Liberda <ja@sdomi.pl>
+pkgname=yosys
+pkgver=0.36
+pkgrel=2
+pkgdesc="Yosys Open SYnthesis Suite"
+url="https://yosyshq.net"
+# doesn't build
+arch="all !s390x !riscv64"
+license="ISC"
+depends="
+ abc
+ "
+makedepends="
+ bash
+ bison
+ boost-dev
+ clang
+ flex
+ gawk
+ graphviz-dev
+ libffi-dev
+ lld
+ protobuf-dev
+ python3
+ readline-dev
+ tcl-dev
+ zlib-dev
+ "
+subpackages="$pkgname-dev py3-$pkgname:py3:noarch"
+source="https://github.com/YosysHQ/yosys/archive/refs/tags/yosys-$pkgver.tar.gz
+ "
+builddir="$srcdir/$pkgname-$pkgname-$pkgver/"
+options="!check" # current yosys employee confirmed those dont work
+
+build() {
+ export CFLAGS="$CFLAGS -flto=thin"
+ export CXXFLAGS="$CXXFLAGS -flto=thin"
+ export LDFLAGS="$LDFLAGS -fuse-ld=lld"
+
+ local pyver="$(python3 -c 'import sys; print(f"{sys.version_info.major}.{sys.version_info.minor}")')"
+
+ cat > Makefile.conf <<- EOF
+ CONFIG:=clang
+ PREFIX:=/usr
+ ABCEXTERNAL:=abc
+ BOOST_PYTHON_LIB:=-lpython$pyver -lboost_python${pyver/./}
+ ENABLE_LIBYOSYS:=1
+ ENABLE_NDEBUG:=1
+ ENABLE_PROTOBUF:=1
+ ENABLE_PYOSYS:=1
+ ENABLE_ABC:=1
+ EOF
+
+ make
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+
+ # link python to the global yosys
+ ln -sfv /usr/lib/yosys/libyosys.so "$pkgdir"/usr/lib/python3*/site-packages/pyosys/libyosys.so
+}
+
+py3() {
+ pkgdesc="$pkgdesc (python module)"
+ depends="python3 $pkgname=$pkgver-r$pkgrel"
+
+ amove usr/lib/python3*
+}
+
+sha512sums="
+3d496ab7efba75b6a8e3ded30d62214e868c52b7f0609f214ea4a336dcb9e38343fc3ae0ddea18c026028989d4caee06efa3822210d8e88e159a3fca28fcae4e yosys-0.36.tar.gz
+"
diff --git a/testing/youki/APKBUILD b/testing/youki/APKBUILD
index a2e41e33556..d085b73dc34 100644
--- a/testing/youki/APKBUILD
+++ b/testing/youki/APKBUILD
@@ -1,27 +1,30 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=youki
-pkgver=0.0.2
+pkgver=0.3.1
pkgrel=0
-pkgdesc="A container runtime written in Rust"
+pkgdesc="Container runtime written in Rust"
url="https://github.com/containers/youki"
-arch="aarch64 armhf armv7 ppc64le x86 x86_64" # blocked by rust/cargo
+# ppc64le: syscalls crate inline asm is unstable for ppc64le
+# s390x: nix crate lacks support
+# riscv64: syscalls crate lacks support
+# armv7: need for rustc to catch to up pass thumb-mode properly
+arch="all !armv7 !ppc64le !s390x !riscv64"
license="Apache-2.0"
makedepends="
cargo
+ cargo-auditable
dbus-dev
- libgit2-dev
libseccomp-dev
zlib-dev
"
subpackages="$pkgname-dbg"
-source="https://github.com/containers/youki/archive/v$pkgver/$pkgname-$pkgver.tar.gz
- libcgroups-workaround-magic-constants.patch
- fix-rlimit-type.patch
- minimize-size.patch
- ungit.patch
- "
-options="!check" # FIXME: some tests fail
+source="https://github.com/containers/youki/archive/v$pkgver/youki-$pkgver.tar.gz"
+options="!check" # FIXME: some tests fail
+
+# prioritize crun and runc
+provides="oci-runtime"
+provider_priority=80
# Disable systemd_cgroups
_cargo_opts='--frozen --no-default-features --features=libcgroups/v1,libcgroups/v2'
@@ -29,14 +32,11 @@ _cargo_opts='--frozen --no-default-features --features=libcgroups/v1,libcgroups/
prepare() {
default_prepare
- # This file shouldn't be here! https://github.com/containers/youki/issues/617
- rm .cargo/config*
-
- cargo fetch --locked
+ cargo fetch --target="$CTARGET" --locked
}
build() {
- cargo build $_cargo_opts --release
+ cargo auditable build $_cargo_opts --release
}
check() {
@@ -48,9 +48,5 @@ package() {
}
sha512sums="
-dea567a0da6c9544aaa530d310a01d7165fe27f4c28741d96d8ada26a1cd48eb210d4f1e070e75a59aa6e491d2e6bd07ca8a607bdb584da27f0da2fdcdae4311 youki-0.0.2.tar.gz
-11e3ad8869b39283e9720454311f7393f3d7618e5530978423230bd16e03c7d0e3f390a0bd740a769af35cc7c6c9f433c5b38a4aa1059aea0f93fa0cf0ea11af libcgroups-workaround-magic-constants.patch
-4f193c21b7efc2f7322eb490fe4ec0a077a21013e1bfff1281f362310a09be62d11925c8d4d7c47197b371ad9635e53bb486a4e032dc0f56bdf6d195258fdb0c fix-rlimit-type.patch
-7587c055bf03371486d43b476d32d9d4a0008ce4ee7d8c3865f4ec82aa64134157aed914f41ffc80561444241f9d249fde878f4c77cdde0afd23ea8dd6484d24 minimize-size.patch
-e6265e0cf567e1557491e2883b56bebfd7b23ced2fc65fc9c83e15beb5c0f53f90de10d5fe059ed933a878af2ee38fd00d9ce624622369e1101d32b71ac3b5a6 ungit.patch
+6c73f406e1717c45a45d1beba2ceb26b9ffd965880f517b72aa4753504fd8e40f502aea6587429c17f6dcff3b5fda38ed496f0794f35bb65f003ece48be85e6c youki-0.3.1.tar.gz
"
diff --git a/testing/youki/fix-rlimit-type.patch b/testing/youki/fix-rlimit-type.patch
deleted file mode 100644
index a846edfd5a7..00000000000
--- a/testing/youki/fix-rlimit-type.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-Fix the following error:
-
- error[E0308]: mismatched types
- --> crates/libcontainer/src/syscall/linux.rs:167:44
- |
- 167 | let res = unsafe { libc::setrlimit(rlimit.typ() as u32, rlim) };
- | ^^^^^^^^^^^^^^^^^^^ expected `i32`, found `u32`
- |
-
---- a/crates/libcontainer/src/syscall/linux.rs
-+++ b/crates/libcontainer/src/syscall/linux.rs
-@@ -164,7 +164,7 @@
- rlim_cur: rlimit.soft(),
- rlim_max: rlimit.hard(),
- };
-- let res = unsafe { libc::setrlimit(rlimit.typ() as u32, rlim) };
-+ let res = unsafe { libc::setrlimit(rlimit.typ() as i32, rlim) };
- if let Err(e) = Errno::result(res).map(drop) {
- bail!("Failed to set {:?}. {:?}", rlimit.typ(), e)
- }
diff --git a/testing/youki/libcgroups-workaround-magic-constants.patch b/testing/youki/libcgroups-workaround-magic-constants.patch
deleted file mode 100644
index 82e5d65cfb4..00000000000
--- a/testing/youki/libcgroups-workaround-magic-constants.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-nix crate doesn't provide _MAGIC constants because libc crate doesn't
-provide them. See https://github.com/rust-lang/libc/pull/2633.
-
---- a/crates/libcgroups/src/common.rs
-+++ b/crates/libcgroups/src/common.rs
-@@ -8,9 +8,13 @@
-
- use anyhow::{bail, Context, Result};
- use nix::{
-- sys::statfs::{statfs, CGROUP2_SUPER_MAGIC, TMPFS_MAGIC},
-+ sys::statfs::{statfs, FsType}, // XXX-Patched
- unistd::Pid,
- };
-+// XXX-Patched: Workaround for https://github.com/rust-lang/libc/pull/2633
-+const TMPFS_MAGIC: FsType = FsType(0x01021994);
-+const CGROUP2_SUPER_MAGIC: FsType = FsType(0x63677270);
-+
- use oci_spec::runtime::{
- LinuxDevice, LinuxDeviceBuilder, LinuxDeviceCgroup, LinuxDeviceCgroupBuilder, LinuxDeviceType,
- LinuxResources,
---- a/crates/libcontainer/src/utils.rs
-+++ b/crates/libcontainer/src/utils.rs
-@@ -131,13 +131,16 @@
- }
- }
-
-+// XXX-Patched: Workaround for https://github.com/rust-lang/libc/pull/2633.
-+const PROC_SUPER_MAGIC: statfs::FsType = statfs::FsType(0x01021994);
-+
- // Make sure a given path is on procfs. This is to avoid the security risk that
- // /proc path is mounted over. Ref: CVE-2019-16884
- pub fn ensure_procfs(path: &Path) -> Result<()> {
- let procfs_fd = fs::File::open(path)?;
- let fstat_info = statfs::fstatfs(&procfs_fd.as_raw_fd())?;
-
-- if fstat_info.filesystem_type() != statfs::PROC_SUPER_MAGIC {
-+ if fstat_info.filesystem_type() != PROC_SUPER_MAGIC {
- bail!(format!("{:?} is not on the procfs", path));
- }
-
diff --git a/testing/youki/minimize-size.patch b/testing/youki/minimize-size.patch
deleted file mode 100644
index fae44f8ff35..00000000000
--- a/testing/youki/minimize-size.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/Cargo.toml
-+++ b/Cargo.toml
-@@ -6,3 +6,6 @@
-
- [profile.release]
- lto = true
-+codegen-units = 1
-+opt-level = "s"
-+panic = "abort"
-+debug = 2
diff --git a/testing/youki/ungit.patch b/testing/youki/ungit.patch
deleted file mode 100644
index 0944ab704bc..00000000000
--- a/testing/youki/ungit.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-Don't include SHA of the HEAD of the aports repository in youki --version.
-
---- a/crates/youki/build.rs
-+++ b/crates/youki/build.rs
-@@ -3,6 +3,8 @@
-
- fn main() -> Result<()> {
- let mut config = Config::default();
-- *config.git_mut().sha_kind_mut() = ShaKind::Short;
-+ // XXX-Patched: Disabled git output.
-+ *config.git_mut().enabled_mut() = false;
-+ println!("cargo:rustc-env=VERGEN_GIT_SHA_SHORT=0");
- vergen(config)
- }
diff --git a/testing/youtube-tui/APKBUILD b/testing/youtube-tui/APKBUILD
new file mode 100644
index 00000000000..599152c0493
--- /dev/null
+++ b/testing/youtube-tui/APKBUILD
@@ -0,0 +1,28 @@
+# Maintainer: Cowington Post <cowingtonpost@gmail.com>
+pkgname=youtube-tui
+pkgver=0.8.0
+pkgrel=0
+pkgdesc="Aesthetically pleasing YouTube TUI written in Rust"
+url="https://siriusmart.github.io/youtube-tui/"
+arch="all"
+license="GPL-3.0-or-later"
+makedepends="cargo cargo-auditable mpv-dev libsixel-dev"
+source="https://github.com/Siriusmart/youtube-tui/archive/v$pkgver/youtube-tui-$pkgver.tar.gz"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --target="$CTARGET" --locked
+}
+
+build() {
+ cargo auditable build --frozen --release
+}
+
+package() {
+ install -Dm755 target/release/youtube-tui -t "$pkgdir"/usr/bin
+}
+
+sha512sums="
+85a6b164b82a965f5b95a451ebe4175114db89b3a7ce9741e3b373e677cd961cc582404414b60e7ca0a0ebe2f997d1fab63a24009285db33257368c8289df211 youtube-tui-0.8.0.tar.gz
+"
diff --git a/testing/youtube-viewer/APKBUILD b/testing/youtube-viewer/APKBUILD
index baf9f46c816..a9b368148ca 100644
--- a/testing/youtube-viewer/APKBUILD
+++ b/testing/youtube-viewer/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Dmitry Zakharchenko <dmitz@disroot.org>
# Maintainer: Dmitry Zakharchenko <dmitz@disroot.org>
pkgname=youtube-viewer
-pkgver=3.10.0
+pkgver=3.11.1
pkgrel=0
pkgdesc="Lightweight YouTube client"
url="https://github.com/trizen/youtube-viewer"
@@ -18,10 +18,13 @@ depends="
"
checkdepends="perl-test-pod"
subpackages="$pkgname-doc $pkgname-gtk"
-source="$pkgname-$pkgver.tar.gz::$url/archive/$pkgver.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/trizen/youtube-viewer/archive/$pkgver.tar.gz"
build() {
- perl Build.PL --gtk3
+ perl Build.PL --gtk3 \
+ --installdirs=vendor \
+ --create_packlist=0
+ ./Build
}
check() {
@@ -29,7 +32,7 @@ check() {
}
package() {
- ./Build install --destdir "$pkgdir" --installdirs vendor
+ ./Build install --destdir="$pkgdir"
}
gtk() {
@@ -42,5 +45,5 @@ gtk() {
}
sha512sums="
-600ff02154e97df2fcada7e9f49759271adda9129cc6e2342822066e6307806bbbb0e0a6683483c3f321f0a334a11fbde99ffde854874e5e8ab379832445b33a youtube-viewer-3.10.0.tar.gz
+4ad037bf0cd15405ad7eebfc3de18d7980759951a5dd5d773536558bd04c57fbb2219dd84a3f92bb738cefa9f0caec5814b5af77d4b57f4b49a612a7ace52524 youtube-viewer-3.11.1.tar.gz
"
diff --git a/testing/ytfzf/APKBUILD b/testing/ytfzf/APKBUILD
deleted file mode 100644
index a7bba5f73d1..00000000000
--- a/testing/ytfzf/APKBUILD
+++ /dev/null
@@ -1,25 +0,0 @@
-# Contributor: Grigory Kirillov <txgk@bk.ru>
-# Maintainer: Grigory Kirillov <txgk@bk.ru>
-pkgname=ytfzf
-pkgver=2.3
-pkgrel=1
-pkgdesc="Posix script to find and watch youtube videos from the terminal"
-url="https://github.com/pystardust/ytfzf"
-arch="noarch"
-license="GPL-3.0-only"
-options="!check" # no test suite
-depends="
- curl
- jq
- "
-subpackages="$pkgname-doc"
-source="https://github.com/pystardust/ytfzf/archive/v$pkgver/ytfzf-$pkgver.tar.gz"
-install="$pkgname.post-install"
-
-package() {
- make PREFIX=/usr DESTDIR="$pkgdir" install doc addons
-}
-
-sha512sums="
-a282f578459ec53e725d1089a5b5efb78dcc66684ce572d0318f6bfd6e222b706418c77eeeca34d4015ed2bae1cb54de10edaab36522d6012c2ac421796ef34b ytfzf-2.3.tar.gz
-"
diff --git a/testing/ytfzf/ytfzf.post-install b/testing/ytfzf/ytfzf.post-install
deleted file mode 100644
index 120b89e965a..00000000000
--- a/testing/ytfzf/ytfzf.post-install
+++ /dev/null
@@ -1,12 +0,0 @@
-#!/bin/sh
-cat <<EOF
-*
-* Attention! This is a minimal installation of ytfzf!
-*
-* To expand the functionality of the script, consider installing:
-* - menu application (fzf, dmenu, rofi...)
-* - video downloader (yt-dlp, youtube-dl...)
-* - media player (mpv, mplayer, vlc...)
-* - thumbnail viewer (chafa, catimg, imv...)
-*
-EOF
diff --git a/testing/ytmdl/APKBUILD b/testing/ytmdl/APKBUILD
new file mode 100644
index 00000000000..c2f3805a1a0
--- /dev/null
+++ b/testing/ytmdl/APKBUILD
@@ -0,0 +1,61 @@
+# Contributor: Dmitry Zakharchenko <dmitz@disroot.org>
+# Maintainer: Dmitry Zakharchenko <dmitz@disroot.org>
+pkgname=ytmdl
+pkgver=2023.11.26
+pkgrel=1
+pkgdesc="Download songs with metadata from Youtube"
+url="https://github.com/deepjyoti30/ytmdl"
+arch="noarch !armhf !ppc64le" # limited by py3-youtube-search
+license="MIT"
+depends="python3
+ py3-beautifulsoup4
+ py3-colorama
+ py3-downloader-cli
+ py3-ffmpeg
+ py3-itunespy
+ py3-lxml
+ py3-musicbrainzngs
+ py3-mutagen
+ py3-pydes
+ py3-pysocks
+ py3-requests
+ py3-rich
+ py3-simber
+ py3-spotipy
+ py3-unidecode
+ py3-urllib3
+ py3-xdg
+ py3-youtube-search
+ py3-ytmusicapi
+ yt-dlp
+ "
+makedepends="py3-setuptools"
+options="!check" # no test suite
+subpackages="$pkgname-bash-completion $pkgname-zsh-completion $pkgname-pyc"
+source="https://files.pythonhosted.org/packages/source/y/ytmdl/ytmdl-$pkgver.tar.gz"
+
+prepare() {
+ default_prepare
+ sed -e '/install_requires/d/setup_requires/d' -i setup.py
+# -e 's|etc/bash_completion.d|usr/share/bash-completion/completions|' \
+# -e 's|zsh/functions/Completion/Unix|zsh/site-functions|' \
+# setup.py
+}
+
+build() {
+ python3 setup.py build
+}
+
+package() {
+ python3 setup.py install --skip-build --root="$pkgdir"
+
+ rm -r "$pkgdir"/etc/bash_completion.d "$pkgdir"/usr/share/zsh/functions
+ install -Dm644 ytmdl.bash \
+ "$pkgdir"/usr/share/bash-completion/completions/"$pkgname"
+ install -Dm644 ytmdl.zsh \
+ "$pkgdir"/usr/share/zsh/site-functions/_"$pkgname"
+}
+
+sha512sums="
+cc2452eabff7727168bca3a37458985c8a664b9365ba11a74b921777a484221cad687637cf95a1ca6d4ba942442fc1120d5930139778c894bf4872c8c4afd40d ytmdl-2023.11.26.tar.gz
+"
diff --git a/testing/ytt/APKBUILD b/testing/ytt/APKBUILD
index c62a31ba916..ac7d4747f90 100644
--- a/testing/ytt/APKBUILD
+++ b/testing/ytt/APKBUILD
@@ -1,28 +1,24 @@
-# Contributor: techknowlogick <techknowlogick@gitea.io>
-# Maintainer: techknowlogick <techknowlogick@gitea.io>
+# Contributor: techknowlogick <techknowlogick@gitea.com>
+# Maintainer: techknowlogick <techknowlogick@gitea.com>
pkgname=ytt
-pkgver=0.41.1
-pkgrel=0
+pkgver=0.47.0
+pkgrel=2
pkgdesc="YAML templating tool that works on YAML structure instead of text"
-url="https://get-ytt.io/"
+url="https://carvel.dev/ytt/"
arch="all !armhf !armv7 !x86"
license="Apache-2.0"
makedepends="go"
options="chmod-clean net"
-source="$pkgname-$pkgver.tar.gz::https://github.com/vmware-tanzu/carvel-ytt/archive/v$pkgver.tar.gz
+source="$pkgname-$pkgver.tar.gz::https://github.com/carvel-dev/ytt/archive/v$pkgver.tar.gz
0001-e2e-tests.patch"
-builddir="$srcdir/src/github.com/k14s/$pkgname"
-prepare() {
- mkdir -p ${builddir%/*}
- mv "$srcdir"/carvel-$pkgname-$pkgver "$builddir"/
- default_prepare
-}
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
build() {
- local ldflags="-w -s -X github.com/vmware-tanzu/carvel-ytt/pkg/version.Version=$pkgver"
+ local ldflags="-X github.com/vmware-tanzu/carvel-ytt/pkg/version.Version=$pkgver"
export GOPATH="$srcdir"
- export CGO_ENABLED=0
rm -f website/generated.go
go fmt ./cmd/... ./pkg/...
@@ -66,6 +62,6 @@ package() {
}
sha512sums="
-6d03e20eabdf8bfb423add54015eb3b48acd352b4e65a330c9890fe3a45ef97b1642c2ff22b3ce11fb6b717b9b7875753c539779b10da56e7083982370694457 ytt-0.41.1.tar.gz
+820441b1fa7d3e89213f8187823005a6e1996cd7458f70f36a75bdd6e3bcfb779a95be0bbb7f73b0871e24eba6e5490dca75b51a31e69e037cf45147f34648be ytt-0.47.0.tar.gz
7e90b64b9f5ed789002f30e1dfbe0c0a8176f1e619c14aa1e9d541359f2f24ff17165785c09b2f7b7bcc21082b568527506c20b6a33987a03f9c88a0c418cfaf 0001-e2e-tests.patch
"
diff --git a/testing/yubico-piv-tool/APKBUILD b/testing/yubico-piv-tool/APKBUILD
deleted file mode 100644
index 30ea53175f4..00000000000
--- a/testing/yubico-piv-tool/APKBUILD
+++ /dev/null
@@ -1,34 +0,0 @@
-# Contributor: Christophe BERAUD-DUFOUR <christophe.berauddufour@gmail.com>
-# Maintainer:
-pkgname=yubico-piv-tool
-pkgver=2.0.0
-pkgrel=1
-pkgdesc="PIV Tools for yubikey"
-url="https://developers.yubico.com/yubico-piv-tool"
-arch="all"
-license="BSD-2-Clause"
-makedepends="openssl-dev pcsc-lite-dev check-dev"
-checkdepends="bash"
-subpackages="$pkgname-dev $pkgname-doc"
-source="https://developers.yubico.com/yubico-piv-tool/Releases/yubico-piv-tool-$pkgver.tar.gz"
-
-build() {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --disable-static
- make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
-}
-
-sha512sums="6aefdb84b11b41bc46bb6a5cdf0332a8288db1fbe5eb63c3deb0a6881616d2ae3ad48bd79fa40ce0d96ff076e2ee1b0b81054e7737984ec1db7bd0e48db85f3a yubico-piv-tool-2.0.0.tar.gz"
diff --git a/testing/yubikey-agent/APKBUILD b/testing/yubikey-agent/APKBUILD
new file mode 100644
index 00000000000..56ce0a66076
--- /dev/null
+++ b/testing/yubikey-agent/APKBUILD
@@ -0,0 +1,28 @@
+# Contributor: Michał Polański <michal@polanski.me>
+# Maintainer: Michał Polański <michal@polanski.me>
+pkgname=yubikey-agent
+pkgver=0.1.6
+pkgrel=4
+pkgdesc="Seamless ssh-agent for YubiKeys"
+url="https://github.com/FiloSottile/yubikey-agent"
+license="BSD-3-Clause"
+arch="all"
+makedepends="go pcsc-lite-dev"
+source="https://github.com/FiloSottile/yubikey-agent/archive/v$pkgver/yubikey-agent-$pkgver.tar.gz"
+options="!check" # no test suite
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+build() {
+ go build -ldflags "-X main.Version=$pkgver"
+}
+
+package() {
+ install -Dm755 $pkgname -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+6c444f068be53efef54fa6b37ea275d13056fbd1f3944a469e4e5bb485d7a75ff7e270dbe2b61bf159532f8828c89f3a42d85cc8ff31893c81eeb6005d3ea77c yubikey-agent-0.1.6.tar.gz
+"
diff --git a/testing/yyjson/APKBUILD b/testing/yyjson/APKBUILD
deleted file mode 100644
index 6f9488c0738..00000000000
--- a/testing/yyjson/APKBUILD
+++ /dev/null
@@ -1,45 +0,0 @@
-# Contributor: Grigory Kirillov <txgk@bk.ru>
-# Maintainer: Grigory Kirillov <txgk@bk.ru>
-pkgname=yyjson
-pkgver=0.4.0
-pkgrel=0
-pkgdesc="The fastest JSON library in C"
-url="https://github.com/ibireme/yyjson"
-# lack of support for 32-bit arches
-arch="all !x86 !armv7 !armhf !s390x"
-license="MIT"
-makedepends="cmake samurai"
-subpackages="$pkgname-dev $pkgname-doc"
-source="
- $pkgname-$pkgver.tar.gz::https://github.com/ibireme/yyjson/archive/refs/tags/$pkgver.tar.gz
- cmake-add-soname.patch
- "
-
-build() {
- cmake -B build -G Ninja \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_BUILD_TYPE=MinSizeRel \
- -DBUILD_SHARED_LIBS=ON \
- -DYYJSON_BUILD_TESTS=ON
- cmake --build build
-}
-
-check() {
- ctest --output-on-failure --test-dir build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
- ln -sf libyyjson.so."$pkgver" "$pkgdir"/usr/lib/libyyjson.so."${pkgver%%.*}"
- ln -sf libyyjson.so."$pkgver" "$pkgdir"/usr/lib/libyyjson.so
- install -Dm644 README.md "$pkgdir"/usr/share/doc/yyjson/README.md
- install -Dm644 doc/API.md "$pkgdir"/usr/share/doc/yyjson/API.md
- install -Dm644 doc/Building.md "$pkgdir"/usr/share/doc/yyjson/Building.md
- install -Dm644 doc/DataStructure.md "$pkgdir"/usr/share/doc/yyjson/DataStructure.md
- install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/yyjson/LICENSE
-}
-
-sha512sums="
-0d5824158f7491926e6d2a1fd1a1e637fdb2ce5a6bd1ec88301231dd567345295751c1e8f12f8a1ffc7179970081cf50b97301691a47ae5d418331f0d41479ce $pkgname-$pkgver.tar.gz
-344c49917dffc31d35bc8787d33ea5fee78194cec1972fdbd5a85a4baf3f2f96c38018ab919adaaf85a95746bc81c8afa54ce0fa6242b8a97cce3bb4393eb02d cmake-add-soname.patch
-"
diff --git a/testing/yyjson/cmake-add-soname.patch b/testing/yyjson/cmake-add-soname.patch
deleted file mode 100644
index 046747eb409..00000000000
--- a/testing/yyjson/cmake-add-soname.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -37,6 +37,7 @@
- # ------------------------------------------------------------------------------
- # Library
- add_library(yyjson src/yyjson.h src/yyjson.c)
-+set_target_properties(yyjson PROPERTIES VERSION ${PROJECT_VERSION})
- target_include_directories(yyjson PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/src>)
-
-
diff --git a/testing/z-push/APKBUILD b/testing/z-push/APKBUILD
deleted file mode 100644
index 965f8a69c2c..00000000000
--- a/testing/z-push/APKBUILD
+++ /dev/null
@@ -1,80 +0,0 @@
-# Maintainer: Noel Kuntze <noel.kuntze@thermi.consulting>
-pkgname=z-push
-pkgver=2.6.2
-pkgrel=0
-pkgdesc="open-source implementation of the ActiveSync protocol"
-arch="noarch"
-url="https://z-push.org/"
-license="GPL-3.0-only"
-options="!check" # No test suite
-depends="php7 php7-fpm php7-shmop php7-sysvsem php7-sysvshm"
-pkgusers="z-push"
-pkggroups="z-push"
-
-install="z-push.pre-install"
-
-source="$pkgname-$pkgver.tar.gz::https://github.com/Z-Hub/Z-Push/archive/refs/tags/$pkgver.tar.gz
- apache.example.conf
- htaccess
- z-push.ini
- z-push.conf
- nginx-location.conf
- nginx-ssl.example.conf
- php-fpm.example.conf
- z-push-admin
- z-push-top
- "
-
-builddir="$srcdir/Z-Push-$pkgver"
-
-prepare() {
- default_prepare
- sed "s/ZPUSHVERSION/$pkgver/" build/version.php.in > src/version.php
- sed -i -e "s|\('MAPI_SERVER', \).*$|\1'file:///var/run/kopano/server.sock'\);|" src/backend/kopano/config.php
- sed -i -e "s|\('BACKEND_PROVIDER', \).*$|\1'BackendKopano'\);|" src/config.php
-}
-
-package() {
- install -d "$pkgdir/etc/webapps/z-push" "$pkgdir/etc/php7/conf.d/" \
- "$pkgdir/etc/php7/php-fpm.d/" "$pkgdir/usr/share/webapps/z-push/" \
- "$pkgdir/usr/bin/"
-
- cp "$srcdir/z-push-admin" "$srcdir/z-push-top" "$pkgdir/usr/bin/"
-
- cp -r src/* "$pkgdir/usr/share/webapps/z-push/"
-
- install -Dm 0640 "$srcdir/htaccess" "$pkgdir/usr/share/webapps/z-push/.htaccess"
-
- install -Dm 0755 "$srcdir/z-push-admin" "$srcdir/z-push-top" "$pkgdir/usr/bin/"
-
- install -Dm 0644 "$srcdir/apache.example.conf" "$srcdir/php-fpm.example.conf" "$srcdir/nginx-ssl.example.conf" "$srcdir/nginx-location.conf" "$pkgdir/etc/webapps/z-push/"
- install -g z-push -m 0750 src/config.php "$pkgdir/etc/webapps/z-push/config.php"
- install -g z-push -m 0750 src/policies.ini "$pkgdir/etc/webapps/z-push/policies.ini"
-
- install -g z-push -dm 0750 "$pkgdir/etc/webapps/z-push/backends"
-
- cd src/backend
- for config_file in */config.php
- do
- install -Dm 0750 -g z-push "$config_file" "$pkgdir/etc/webapps/z-push/backends/$config_file"
- ln -sf "/etc/webapps/z-push/backends/$config_file" "$config_file"
- done
-
- ln -sf /etc/webapps/z-push/config.php "$pkgdir/usr/share/webapps/z-push/config.php"
- ln -sf /etc/webapps/z-push/policies.ini "$pkgdir/usr/share/webapps/z-push/policies.ini"
-
- install -Dm 0644 "$srcdir/z-push.ini" "$pkgdir/etc/php7/conf.d/"
- install -Dm 0644 "$srcdir/z-push.conf" "$pkgdir/etc/php7/php-fpm.d/"
- install -dm 0750 -o z-push -g z-push "$pkgdir/var/log/z-push/" "$pkgdir/var/lib/z-push"
-}
-
-sha512sums="deb7735e4eb296584d9ad9626d962068154794265233a5a0c5b057055bc92d31187667e00ce570545b17fb2502343305b75996625d6451bc2837901afecdde9a z-push-2.6.2.tar.gz
-cffa906fdf147e8e81ae5a6033762f5a0f5f33e718dca86b12aab973123d2ce094b8e3e7cffe4880403fb961626dc33cf54bb6b2d8a7a376976cdfc5ec4b9cf9 apache.example.conf
-f6f71969576b5f4524d980cca55ae445691d3ce1a35973657770a631fb8e0a17375d67245802eaf1a5b819528602ba88165e6fa873db5462937087521aee394d htaccess
-ebdcb8905f6fd49bc073aa7e884252daae1c7b6865bfd5cf7ce3ecd889d78a57a4979b09a8b02fbf16cdd8dbb236de8493b1896ac2f0693ddf41bd8bf87df11d z-push.ini
-7d77fedb1f22ee77ba091d54051b946ad048c4f63d83a27585e95b68f46eebc2376032cf3c7d8112205736dd1fd4e2fb0c976cc7b510796b79109b146469208d z-push.conf
-e39d2c101708274e02923869083ed613c1ad1d8df574ca4f1f01f0a0ed7c044a7422bd8532e52d0db8f8279dc04506582747ac83cac978044db62fb7e213c200 nginx-location.conf
-dad272b51824f21bfc2a5f41731cd20bca6e877b15756e1115304e9c353fbc4c98cbd1c66661e0974685d1a01e94b933d5c380c8a6b17aa18b65ab86cbfb4971 nginx-ssl.example.conf
-bad70098b919c4cacce3152b276da489d7a36ca195b607508ad316211401dc98f07433ef505deb82a91388993e58b398cce2bc3eb295cf812362bae96b40fb35 php-fpm.example.conf
-4f85dc2a316f2e5cce82c4a8b7310d5c8e8970c18d8726f9dec6bd5b5a6c657f4dd2f7f62dfead25be3c95dc26526c86f79ee1e7f6fd15248ad0429d0342b6dc z-push-admin
-1c21e770e2206b46e4950be7da3067fad6ee2bb2481156e50b169b93d155b89385003975aabeda3bd14fb4727bd26b518f7e370cb79ddad5a7786ef456d30e13 z-push-top"
diff --git a/testing/z-push/apache.example.conf b/testing/z-push/apache.example.conf
deleted file mode 100644
index 3815e984496..00000000000
--- a/testing/z-push/apache.example.conf
+++ /dev/null
@@ -1,8 +0,0 @@
-Alias /Microsoft-Server-ActiveSync /usr/share/webapps/z-push/index.php
-
-<Directory /usr/share/webapps/z-push/>
- DirectoryIndex index.php
- AllowOverride Options
-
- Require all granted
-</Directory>
diff --git a/testing/z-push/htaccess b/testing/z-push/htaccess
deleted file mode 100644
index 5968acaa485..00000000000
--- a/testing/z-push/htaccess
+++ /dev/null
@@ -1,4 +0,0 @@
-php_flag magic_quotes_gpc off
-php_flag register_globals off
-php_flag magic_quotes_runtime off
-php_flag short_open_tag on
diff --git a/testing/z-push/nginx-location.conf b/testing/z-push/nginx-location.conf
deleted file mode 100644
index 2ea6a503598..00000000000
--- a/testing/z-push/nginx-location.conf
+++ /dev/null
@@ -1,32 +0,0 @@
-
- ###
- ## In order to run this component you need to define a server-context in.
- ## /etc/nginx/nginx.conf:
- ##
- ## http {
- ## server {
- ## listen 80;
- ## include ${PATH_TO_THIS_LOCATION_FILE};
- ## }
- ## }
- ##
- ## Or include this file in your existing server-context.
- ##
- location /Microsoft-Server-ActiveSync {
- root /usr/share/webapps/z-push;
-
- ## [WARNING] The following header states that the browser should only communicate
- ## with your server over a secure connection for the next 24 months.
- add_header Strict-Transport-Security max-age=63072000;
- add_header X-Frame-Options DENY;
- add_header X-Content-Type-Options nosniff;
-
- fastcgi_connect_timeout 65;
- fastcgi_send_timeout 6000;
- fastcgi_read_timeout 6000;
-
- fastcgi_pass unix:/run/php-fpm/z-push.sock;
- include fastcgi_params;
- fastcgi_param SCRIPT_FILENAME $document_root/index.php;
- fastcgi_param SCRIPT_NAME $fastcgi_script_name;
- }
diff --git a/testing/z-push/nginx-ssl.example.conf b/testing/z-push/nginx-ssl.example.conf
deleted file mode 100644
index c2b0fef339b..00000000000
--- a/testing/z-push/nginx-ssl.example.conf
+++ /dev/null
@@ -1,56 +0,0 @@
-
- server {
- # server_name YOUR_SERVER_FQDN; ## uncomment replace this with something like www.example.com
- listen 443;
-
- server_tokens off; ## Don't show the nginx version number, a security best practice
- root /usr/share/nginx/html;
- index index.html index.htm;
-
- ## Strong SSL Security
- ## https://raymii.org/s/tutorials/Strong_SSL_Security_On_nginx.html & https://cipherli.st/
- ##
- ## Generate a strong SSL-Certificate and DHE parameter:
- ## openssl genrsa -out /etc/ssl/private/kopano.key 4096
- ## openssl req -new -sha512 -key /etc/ssl/private/kopano.key -out /tmp/kopano.csr
- ## openssl x509 -req -days 3650 -in /tmp/kopano.csr -signkey /etc/ssl/private/kopano.key -out /etc/ssl/private/kopano.crt
- ## openssl dhparam -out /etc/ssl/private/kopano.dh 4096
- ## chmod go-rwx /etc/ssl/private/kopano.*;
- ## chmod u+rw /etc/ssl/private/kopano.*
- ## chown root:root /etc/ssl/private/kopano.*
- ##
- ssl on;
- ssl_certificate_key /etc/ssl/private/kopano.key;
- ssl_certificate /etc/ssl/private/kopano.crt;
- ssl_dhparam /etc/ssl/private/kopano.dh;
-
- ## https://raymii.org/s/tutorials/Strong_SSL_Security_On_nginx.html
- ## The recommended cipher suite for backwards compatibility (IE6/WinXP):
- ssl_ciphers 'AES256+EECDH:AES256+EDH:!aNULL';
- ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
- ssl_prefer_server_ciphers on;
- ssl_session_cache shared:SSL:50m;
- ssl_session_timeout 5m;
-
- ## [Optional] If your certficate has OCSP, enable OCSP stapling to reduce the overhead and latency of running SSL.
- ## Replace with your ssl_trusted_certificate. For more info see:
- ## - https://medium.com/devops-programming/4445f4862461
- ## - https://www.ruby-forum.com/topic/4419319
- ## - https://www.digitalocean.com/community/tutorials/how-to-configure-ocsp-stapling-on-apache-and-nginx
- ## - https://raymii.org/s/tutorials/OCSP_Stapling_on_nginx.html
- ## - http://freiburg79.de/ocsp-stapling-mit-nginx/
- # ssl_stapling on;
- # ssl_stapling_verify on;
- # ssl_stapling_file /etc/ssl/private/de-autorisation-m.ocsp;
- # resolver 208.67.222.222 208.67.222.220 valid=300s; # Can change to your DNS resolver if desired
- # resolver_timeout 5s;
-
- # HIDDEN FILES AND FOLDERS
- rewrite ^(.*)\/\.(.*)$ @404 break;
-
- location = @404 {
- return 404;
- }
-
- include ${PATH_TO_ATTACHED_LOCATION_FILE};
- }
diff --git a/testing/z-push/php-fpm.example.conf b/testing/z-push/php-fpm.example.conf
deleted file mode 100644
index 97b9777f109..00000000000
--- a/testing/z-push/php-fpm.example.conf
+++ /dev/null
@@ -1,6 +0,0 @@
-include = /etc/php/fpm.d/*.conf
-
-[global]
-pid = /run/php-fpm/php-fpm.pid
-error_log = syslog
-log_level = notice
diff --git a/testing/z-push/z-push-admin b/testing/z-push/z-push-admin
deleted file mode 100755
index 8f875e2f208..00000000000
--- a/testing/z-push/z-push-admin
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/bin/sh
-/usr/share/webapps/z-push/z-push-admin.php "$@"
diff --git a/testing/z-push/z-push-top b/testing/z-push/z-push-top
deleted file mode 100755
index e71b216f8d2..00000000000
--- a/testing/z-push/z-push-top
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/bin/sh
-/usr/share/webapps/z-push/z-push-top.php "$@"
diff --git a/testing/z-push/z-push.conf b/testing/z-push/z-push.conf
deleted file mode 100644
index 1140875acd4..00000000000
--- a/testing/z-push/z-push.conf
+++ /dev/null
@@ -1,35 +0,0 @@
-[z-push]
-listen = /var/lib/php7/fpm/z-push.sock
-listen.owner = z-push
-listen.group = http
-listen.mode = 0660
-
-
-user = z-push
-group = http
-
-; z-push for 5 users
-pm = ondemand
-pm.max_children = 15
-pm.max_requests = 500
-
-env[HOSTNAME] = $HOSTNAME
-env[PATH] = /usr/local/bin:/usr/bin:/bin
-env[TMP] = /tmp
-env[TMPDIR] = /tmp
-env[TEMP] = /tmp
-env[HOME] = /home
-
-php_admin_value[memory_limit] = 128M
-php_admin_value[open_basedir] = ${open_basedir}:/usr/share/webapps/z-push:/etc/webapps/z-push:/var/lib/z-push:/var/log/z-push:/usr/share/php/mapi
-
-php_admin_value[upload_max_filesize] = 20M
-php_admin_value[post_max_size] = 20M
-;; php_admin_value[date.timezone] = Europe/Berlin
-
-;; https://z-push.org/svn/z-push/trunk/src/INSTALL
-;;
-php_flag[magic_quotes_gpc] = off
-php_flag[register_globals] = off
-php_flag[magic_quotes_runtime] = off
-php_flag[short_open_tag] = on
diff --git a/testing/z-push/z-push.ini b/testing/z-push/z-push.ini
deleted file mode 100644
index adbdf833cc3..00000000000
--- a/testing/z-push/z-push.ini
+++ /dev/null
@@ -1,9 +0,0 @@
-extension=mapi.so
-extension=iconv.so
-extension=shmop.so
-extension=soap.so
-extension=sysvsem.so
-extension=sysvshm.so
-
-; in order to use the utils this system wide is needed
-open_basedir=${open_basedir}:/usr/share/webapps/z-push:/etc/webapps/z-push:/var/lib/z-push:/var/log/z-push:/usr/share/php/mapi
diff --git a/testing/z-push/z-push.pre-install b/testing/z-push/z-push.pre-install
deleted file mode 100644
index f9b256c16a6..00000000000
--- a/testing/z-push/z-push.pre-install
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/bin/sh
-
-addgroup -S z-push >/dev/null 2>/dev/null
-addgroup -S kopano >/dev/null 2>/dev/null
-adduser -S -D -H -h /var/lib/z-push -s /sbin/nologin -G z-push -g z-push z-push >/dev/null 2>/dev/null
-# for access to server.sock
-addgroup -S z-push kopano >/dev/null 2>/dev/null
-exit 0
diff --git a/testing/z/APKBUILD b/testing/z/APKBUILD
index 400501a3b1e..1f12db99040 100644
--- a/testing/z/APKBUILD
+++ b/testing/z/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Anirudh Oppiliappan <x@icyphox.sh>
# Maintainer: Anirudh Oppiliappan <x@icyphox.sh>
-pkgname="z"
-pkgver="1.11"
+pkgname=z
+pkgver=1.12
pkgrel=0
pkgdesc="Tracks your most used directories, based on 'frecency'"
url="https://github.com/rupa/z"
@@ -18,4 +18,6 @@ package() {
install -Dm 644 z.1 "$pkgdir"/usr/share/man/man1/z.1
}
-sha512sums="e8463f8fe2781ff12814e47b1764ddc46875a3a01c0499cb174473df16ba28ea16c2577f7ec27a088c5bd98775ac29f81190b3131d4a953315f01be4e2d548c5 z-1.11.tar.gz"
+sha512sums="
+62c88893cd9f8c2d64a264a806aa97f86bb1876797b83f28db8291c8f06efcc6a7ad2be0550963c664b1c3cf6e689eb1aa9e68b1e75eabf2ec7fae55a9cda450 z-1.12.tar.gz
+"
diff --git a/testing/zabbix-agent2-alpine/APKBUILD b/testing/zabbix-agent2-alpine/APKBUILD
deleted file mode 100644
index 3347bec383d..00000000000
--- a/testing/zabbix-agent2-alpine/APKBUILD
+++ /dev/null
@@ -1,63 +0,0 @@
-# Contributor: Kevin Daudt <kdaudt@alpinelinux.org>
-# Maintainer: Kevin Daudt <kdaudt@alpinelinux.org>
-pkgname=zabbix-agent2-alpine
-pkgver=5.4.9
-pkgrel=5
-_plugins_version=0.2
-pkgdesc="Zabbix Agent2 with additional plugins"
-url="https://gitlab.alpinelinux.org/alpine/infra/infra-packages/-/tree/master/infra/zabbix-agent2-alpine"
-arch="all !riscv64" # missing riscv64-specific functionality
-license="GPL-2.0-or-later"
-makedepends="go autoconf automake pcre-dev zlib-dev openssl-dev openssl-libs-static"
-options="!check" # no test suite
-subpackages="$pkgname-openrc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/zabbix/zabbix/archive/$pkgver.tar.gz
- https://gitlab.alpinelinux.org/alpine/infra/zabbix-agent2-plugins/-/archive/v$_plugins_version/zabbix-agent2-plugins-v$_plugins_version.tar.gz
- zabbix-agent2.initd
- zabbix_agent2.conf
- enable-plugins.patch
- go-mod-add-dependencies.patch
- "
-install="$pkgname.pre-install"
-builddir="$srcdir/zabbix-$pkgver"
-
-export GOPATH="$srcdir/go"
-export GOCACHE="$srcdir/go-build"
-export GOTEMPDIR="$srcdir/go"
-
-export GOFLAGS="$GOFLAGS -modcacherw"
-
-prepare() {
- default_prepare
- ./bootstrap.sh
-
- cp -r "$srcdir"/zabbix-agent2-plugins-v$_plugins_version/plugins/* \
- "$builddir"/src/go/plugins/
-}
-
-build() {
- ./configure \
- --sysconfdir=/etc/zabbix \
- --mandir=/usr/share/man \
- --with-openssl \
- --enable-agent2 \
- --enable-static
- make
-}
-
-package() {
- install -Dm0755 src/go/bin/zabbix_agent2 $pkgdir/usr/sbin/zabbix_agent2
- install -Dm0755 $srcdir/zabbix-agent2.initd $pkgdir/etc/init.d/zabbix-agent2
- install -dm0755 $pkgdir/etc/zabbix/agent2.conf.d/
-
- install -Dm0644 $srcdir/zabbix_agent2.conf $pkgdir/etc/zabbix/zabbix_agent2.conf
-}
-
-sha512sums="
-446dd2803823daef00ebaaef1df53459d7ded6668908fd974d1134751b645cc14a28cdf537289a80f7faf4848e6d886043d487c77f7841bc0f64d5d134fc4f0e zabbix-agent2-alpine-5.4.9.tar.gz
-e3e1110f24f27b2d7ff314a7fdf89d3d76e690bd83a6c3c074320bb84ef1980586fb472a7e251b6dc6d07dbf4767fe381f0c3e3e24c89380f37c44a1a7e34ed9 zabbix-agent2-plugins-v0.2.tar.gz
-3d30e97e23c19057d89383b11c589bc0f1e0134f4a090f17baaf04c335dffd708c533596a4ff1b06cf36a4cfb1cb549a372cdb07081b186c991395c2156aaeaa zabbix-agent2.initd
-bdef1e8ae6d993fe28d4ed493800effdc499f7a9ebc3a2f71290f752d926912bef4726f60907ba932953bcfa1622a6aae514f132c339ef2b01a0ca6791178153 zabbix_agent2.conf
-fb5b237edd229c6300867084810c9bb051e9c7ee09fc4499837d8be9f99678549de757cf2c5dbecf513322e4705e7ea2be8e4f4965fded3d09a10a69ec17b37e enable-plugins.patch
-d49a2e707e09fdcbe5056f72ac3c6cff50025a4c39a539416cf99b292ad88b49426d9ee13ba93618b43d8a6a6556a5d1bd382476317d513a85f7de632755f0b9 go-mod-add-dependencies.patch
-"
diff --git a/testing/zabbix-agent2-alpine/enable-plugins.patch b/testing/zabbix-agent2-alpine/enable-plugins.patch
deleted file mode 100644
index 336483814c9..00000000000
--- a/testing/zabbix-agent2-alpine/enable-plugins.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-This makes the go agent aware of the added plugins
-
-diff --git a/src/go/plugins/plugins_linux.go b/src/go/plugins/plugins_linux.go
-index 714f783..7a57116 100644
---- a/src/go/plugins/plugins_linux.go
-+++ b/src/go/plugins/plugins_linux.go
-@@ -42,4 +42,5 @@ import (
- _ "zabbix.com/plugins/zabbix/async"
- _ "zabbix.com/plugins/zabbix/stats"
- _ "zabbix.com/plugins/zabbix/sync"
-+ _ "zabbix.com/plugins/alpine"
- )
diff --git a/testing/zabbix-agent2-alpine/go-mod-add-dependencies.patch b/testing/zabbix-agent2-alpine/go-mod-add-dependencies.patch
deleted file mode 100644
index 1c456105618..00000000000
--- a/testing/zabbix-agent2-alpine/go-mod-add-dependencies.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-Required for the extra plugins
-
-* go get -d gopkg.in/ini.v1
-
-diff --git a/src/go/go.mod b/src/go/go.mod
-index b6a06d0..3130b6e 100644
---- a/src/go/go.mod
-+++ b/src/go/go.mod
-@@ -26,6 +26,7 @@ require (
- golang.org/x/sys v0.0.0-20210104204734-6f8348627aad
- golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1 // indirect
- gopkg.in/asn1-ber.v1 v1.0.0-20181015200546-f715ec2f112d // indirect
-+ gopkg.in/ini.v1 v1.62.0 // indirect
- gopkg.in/mgo.v2 v2.0.0-20190816093944-a6b53ec6cb22
- gopkg.in/natefinch/npipe.v2 v2.0.0-20160621034901-c1b8fa8bdcce // indirect
- gopkg.in/yaml.v2 v2.2.8 // indirect
-diff --git a/src/go/go.sum b/src/go/go.sum
-index 49862de..50f15c2 100644
---- a/src/go/go.sum
-+++ b/src/go/go.sum
-@@ -239,6 +239,8 @@ gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127 h1:qIbj1fsPNlZgppZ+VLlY7N33
- gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
- gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI=
- gopkg.in/inconshreveable/log15.v2 v2.0.0-20180818164646-67afb5ed74ec/go.mod h1:aPpfJ7XW+gOuirDoZ8gHhLh3kZ1B08FtV2bbmy7Jv3s=
-+gopkg.in/ini.v1 v1.62.0 h1:duBzk771uxoUuOlyRLkHsygud9+5lrlGjdFBb4mSKDU=
-+gopkg.in/ini.v1 v1.62.0/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k=
- gopkg.in/mgo.v2 v2.0.0-20190816093944-a6b53ec6cb22 h1:VpOs+IwYnYBaFnrNAeB8UUWtL3vEUnzSCL1nVjPhqrw=
- gopkg.in/mgo.v2 v2.0.0-20190816093944-a6b53ec6cb22/go.mod h1:yeKp02qBN3iKW1OzL3MGk2IdtZzaj7SFntXj72NppTA=
- gopkg.in/natefinch/npipe.v2 v2.0.0-20160621034901-c1b8fa8bdcce h1:+JknDZhAj8YMt7GC73Ei8pv4MzjDUNPHgQWJdtMAaDU=
diff --git a/testing/zabbix-agent2-alpine/zabbix-agent2-alpine.pre-install b/testing/zabbix-agent2-alpine/zabbix-agent2-alpine.pre-install
deleted file mode 100644
index 175c11d7a51..00000000000
--- a/testing/zabbix-agent2-alpine/zabbix-agent2-alpine.pre-install
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/bin/sh
-
-addgroup -S zabbix 2>/dev/null
-adduser -S -D -H -h /dev/null -s /sbin/nologin -G zabbix -g zabbix zabbix 2>/dev/null
-
-exit 0
-
diff --git a/testing/zabbix-agent2-alpine/zabbix-agent2.initd b/testing/zabbix-agent2-alpine/zabbix-agent2.initd
deleted file mode 100644
index 518929f3113..00000000000
--- a/testing/zabbix-agent2-alpine/zabbix-agent2.initd
+++ /dev/null
@@ -1,11 +0,0 @@
-#!/sbin/openrc-run
-
-command=/usr/sbin/zabbix_agent2
-supervisor="supervise-daemon"
-command_user="zabbix:zabbix"
-
-start_pre() {
- checkpath --directory --owner zabbix:zabbix /run/zabbix/
- checkpath --file --owner zabbix:zabbix /var/log/zabbix/zabbix_agent2.log
- checkpath --directory --owner zabbix:zabbix /var/log/zabbix
-}
diff --git a/testing/zabbix-agent2-alpine/zabbix_agent2.conf b/testing/zabbix-agent2-alpine/zabbix_agent2.conf
deleted file mode 100644
index a224bf68fee..00000000000
--- a/testing/zabbix-agent2-alpine/zabbix_agent2.conf
+++ /dev/null
@@ -1,8 +0,0 @@
-DebugLevel=3
-HostnameItem=system.hostname
-LogFile=/var/log/zabbix/zabbix_agent2.log
-ControlSocket=/run/zabbix/agent2.sock
-
-DenyKey=system.run[*]
-
-Include=/etc/zabbix/agent2.conf.d/*.conf
diff --git a/testing/zafiro-icon-theme/APKBUILD b/testing/zafiro-icon-theme/APKBUILD
index 38e0168ea87..12329b90461 100644
--- a/testing/zafiro-icon-theme/APKBUILD
+++ b/testing/zafiro-icon-theme/APKBUILD
@@ -1,21 +1,20 @@
# Maintainer: Bradley Saulteaux <bradsoto@gmail.com>
pkgname=zafiro-icon-theme
-pkgver=1.2
+pkgver=1.3
pkgrel=0
pkgdesc="icon pack flat with light colors"
url="https://github.com/zayronxio/Zafiro-icons"
-arch="noarch !s390x !riscv64" # librsvg
+arch="noarch"
license="GPL-3.0-only"
-depends="librsvg"
-options="!check"
source="$pkgname-$pkgver.tar.gz::https://github.com/zayronxio/Zafiro-icons/archive/$pkgver.tar.gz"
builddir="$srcdir/Zafiro-icons-$pkgver"
+options="!check" # just icons
package() {
- mkdir -p $pkgdir/usr/share/icons
- mv $builddir $pkgdir/usr/share/icons/zafiro-icons
+ mkdir -p "$pkgdir"/usr/share/icons/zafiro-icons
+ cp -a Dark Light "$pkgdir"/usr/share/icons/zafiro-icons/
}
sha512sums="
-aebd9dec3f0cacfd59fa905a6f5c91289d2c479258817a43a042c0b595f376f274a221a6be86b0408471c3d633bc98972a145f84ac47b307f04644aef2538763 zafiro-icon-theme-1.2.tar.gz
+c1c6c6a8bf57cdfa880cdadcc3a0ac0c26020e802f4ad7c121c01600941ae7ea35225a6f05d67771ce4d28b77449d531456ffc97164c580c3e7d46e1cd6d0e1b zafiro-icon-theme-1.3.tar.gz
"
diff --git a/testing/zam-plugins/APKBUILD b/testing/zam-plugins/APKBUILD
deleted file mode 100644
index 650dfa6d5c2..00000000000
--- a/testing/zam-plugins/APKBUILD
+++ /dev/null
@@ -1,47 +0,0 @@
-# Contributor: psykose <alice@ayaya.dev>
-# Maintainer: psykose <alice@ayaya.dev>
-pkgname=zam-plugins
-pkgver=3.14
-_dpf_gitrev=08669d1bc30c6e971fde800eade4ca40104ba8b2
-pkgrel=0
-pkgdesc="Collection of LADSPA/LV2/VST/JACK audio plugins for high-quality processing"
-url="https://github.com/zamaudio/zam-plugins"
-arch="all"
-license="GPL-2.0-or-later"
-options="!check" # no testsuite
-makedepends="
- bash
- fftw-dev
- jack-dev
- ladspa-dev
- liblo-dev
- libsamplerate-dev
- lv2-dev
- mesa-dev
- zita-convolver-dev
- "
-source="
- $pkgname-$pkgver.tar.gz::https://github.com/zamaudio/zam-plugins/archive/refs/tags/$pkgver.tar.gz
- dpf-$_dpf_gitrev.tar.gz::https://github.com/DISTRHO/DPF/archive/$_dpf_gitrev.tar.gz
- "
-
-prepare() {
- default_prepare
-
- # overwrite folder
- rmdir "$builddir"/dpf
- mv "$srcdir"/DPF-$_dpf_gitrev "$builddir"/dpf
-}
-
-build() {
- make PREFIX=/usr
-}
-
-package() {
- make DESTDIR="$pkgdir" PREFIX=/usr install
-}
-
-sha512sums="
-30c168ee855011b2f17fcc5e440039628399ab40b69bed9af284713df6155360b38d8249b3de1616e9a2f39885cff43c9e2505868aae891fd22bc92297c1962c zam-plugins-3.14.tar.gz
-b24e32682ea38785a776d13f9fd58052d9e7813416ba59f05c9c4af28c4b61c26d832870c7d6b65a46863f122dd29fe573dc01994d1c601a10bea7b75d49ba5d dpf-08669d1bc30c6e971fde800eade4ca40104ba8b2.tar.gz
-"
diff --git a/testing/zangband/APKBUILD b/testing/zangband/APKBUILD
deleted file mode 100644
index 0e1f860999a..00000000000
--- a/testing/zangband/APKBUILD
+++ /dev/null
@@ -1,53 +0,0 @@
-# Contributor: Will Sinatra <wpsinatra@gmail.com>
-# Maintainer: Will Sinatra <wpsinatra@gmail.com>
-pkgname=zangband
-pkgver=2.7.5.1
-_pkgver=2.7.5pre1
-pkgrel=0
-pkgdesc="Roguelike computer role playing game based on Angband"
-url="http://www.zangband.org"
-license="custom"
-arch="all"
-makedepends="automake autoconf util-linux ncurses-dev"
-depends="ncurses"
-source="http://downloads.sourceforge.net/zangband/zangband-$_pkgver.tar.gz
- fix-bad-substitution.patch
- fix-bad-configure.patch
- fix-random-num-gen.patch
- fix-explosive-rune-error.patch
- fix-spear-of-hagen-error.patch"
-builddir="$srcdir/zangband"
-options="!check"
-
-prepare() {
- default_prepare
- autoreconf -vfi
-
- sed -i 's@# define DEFAULT_PATH "./lib/"@# define DEFAULT_PATH "/usr/lib/zangband/"@' $builddir/src/z-config.h
- sed -i 's@strcpy(path, "./lib/");@strcpy(path, "/usr/lib/zangband/");@' $builddir/src/main.c
-}
-
-build() {
- ./configure --prefix=/usr/lib --with-gtk=no
- make
-}
-
-package() {
- install -d "$pkgdir"/usr/lib/zangband
- install -D -m755 zangband "$pkgdir"/usr/bin/zangband
- cp -R "$srcdir"/zangband/lib "$pkgdir"/usr/lib
- rename "$pkgdir"/usr/lib/lib "$pkgdir"/usr/lib/zangband "$pkgdir"/usr/lib/lib
- chmod -R 775 "$pkgdir"/usr/lib/zangband
- chown -R root:users "$pkgdir"/usr/lib/zangband
-
- find "$pkgdir"/usr/lib/zangband -name makefile.zb -exec rm {} \;
- find "$pkgdir"/usr/lib/zangband -type f -exec chmod a-x {} \;
-}
-
-
-sha512sums="3eb0dc460c98278cceb06fedaec9e844418a92d791baccafcd3c6591cfb7021dc15188a52b4a5d951c23f55444650ed1b7005b49c3ac1773a19657f4ea1ac512 zangband-2.7.5pre1.tar.gz
-ad764771aecc5421a3f25f01b15fe72cf44b17f5a58915ef1f44d2f3d9d8c19f22efffcfc37513deb587f88f6c7ed3f3da82942a922d74ebb307213a3ad3e90b fix-bad-substitution.patch
-e0551b511c8b6c716704e2799f695f6314246a7c083f1f2ee23761a1d3227d4073e97f4af47e75daef271798b4b65d717a65cb56bae19eb45913321fd906c829 fix-bad-configure.patch
-937627adfe6897c6195e28015de2fe6b796f402147f45a76b39c1bb4c0ba5e4e6c65d9153bc500ec481f3b0a92c048043efd9fbfe1300dfb9f3e57974e0c3d06 fix-random-num-gen.patch
-2313da3a678212771cb5f51918bf7f1966e941b346d02538c5f13fdb0b43f208028cd61f50bb161180df1b2f3b496045c712fc39f4945c8ee029258faf6c7310 fix-explosive-rune-error.patch
-6e5193a15a5fbb3947cb07363b15761c89405e050bcc13196c5106177843351df2d1ed3c06b95de1c6ecde4f3f614ef102a944270b500c2494d875de0adca8c3 fix-spear-of-hagen-error.patch"
diff --git a/testing/zangband/fix-bad-configure.patch b/testing/zangband/fix-bad-configure.patch
deleted file mode 100644
index 372a88ea3de..00000000000
--- a/testing/zangband/fix-bad-configure.patch
+++ /dev/null
@@ -1,219 +0,0 @@
-#The initially available configure file uses non-posix forms leading to bad substitution errors, this allows the first configure run to pass
---- a/configure
-+++ b/configure
-@@ -9296,7 +9296,7 @@
- fi
- echo "$as_me:$LINENO: result: `eval echo '${'$FLAG'}'`" >&5
- echo "${ECHO_T}`eval echo '${'$FLAG'}'`" >&6
--if test ${!FLAG} = yes ; then
-+if test [ "$FLAG" != yes ] ; then
- CFLAGS="-pedantic $CFLAGS"
- fi
-
-@@ -9315,7 +9315,7 @@
- fi
- echo "$as_me:$LINENO: result: `eval echo '${'$FLAG'}'`" >&5
- echo "${ECHO_T}`eval echo '${'$FLAG'}'`" >&6
--if test ${!FLAG} = yes ; then
-+if test [ "$FLAG" != yes ] ; then
- CFLAGS="-W $CFLAGS"
- fi
-
-@@ -9334,7 +9334,7 @@
- fi
- echo "$as_me:$LINENO: result: `eval echo '${'$FLAG'}'`" >&5
- echo "${ECHO_T}`eval echo '${'$FLAG'}'`" >&6
--if test ${!FLAG} = yes ; then
-+if test [ "$FLAG" != yes ] ; then
- CFLAGS="-Wall $CFLAGS"
- fi
-
-@@ -9353,7 +9353,7 @@
- fi
- echo "$as_me:$LINENO: result: `eval echo '${'$FLAG'}'`" >&5
- echo "${ECHO_T}`eval echo '${'$FLAG'}'`" >&6
--if test ${!FLAG} = yes ; then
-+if test [ "$FLAG" != yes ] ; then
- CFLAGS="-Wmissing-prototypes $CFLAGS"
- fi
-
-@@ -9372,7 +9372,7 @@
- fi
- echo "$as_me:$LINENO: result: `eval echo '${'$FLAG'}'`" >&5
- echo "${ECHO_T}`eval echo '${'$FLAG'}'`" >&6
--if test ${!FLAG} = yes ; then
-+if test [ "$FLAG" != yes ] ; then
- CFLAGS="-Wmissing-declarations $CFLAGS"
- fi
-
-@@ -9391,7 +9391,7 @@
- fi
- echo "$as_me:$LINENO: result: `eval echo '${'$FLAG'}'`" >&5
- echo "${ECHO_T}`eval echo '${'$FLAG'}'`" >&6
--if test ${!FLAG} = yes ; then
-+if test [ "$FLAG" != yes ] ; then
- CFLAGS="-Wno-long-long $CFLAGS"
- fi
-
-@@ -9410,7 +9410,7 @@
- fi
- echo "$as_me:$LINENO: result: `eval echo '${'$FLAG'}'`" >&5
- echo "${ECHO_T}`eval echo '${'$FLAG'}'`" >&6
--if test ${!FLAG} = yes ; then
-+if test [ "$FLAG" != yes ] ; then
- CFLAGS="-Wwrite-strings $CFLAGS"
- fi
-
-@@ -9429,7 +9429,7 @@
- fi
- echo "$as_me:$LINENO: result: `eval echo '${'$FLAG'}'`" >&5
- echo "${ECHO_T}`eval echo '${'$FLAG'}'`" >&6
--if test ${!FLAG} = yes ; then
-+if test [ "$FLAG" != yes ] ; then
- CFLAGS="-Wpointer-arith $CFLAGS"
- fi
-
-@@ -9448,7 +9448,7 @@
- fi
- echo "$as_me:$LINENO: result: `eval echo '${'$FLAG'}'`" >&5
- echo "${ECHO_T}`eval echo '${'$FLAG'}'`" >&6
--if test ${!FLAG} = yes ; then
-+if test [ "$FLAG" != yes ] ; then
- CFLAGS="-Wbad-function-cast $CFLAGS"
- fi
-
-@@ -9467,7 +9467,7 @@
- fi
- echo "$as_me:$LINENO: result: `eval echo '${'$FLAG'}'`" >&5
- echo "${ECHO_T}`eval echo '${'$FLAG'}'`" >&6
--if test ${!FLAG} = yes ; then
-+if test [ "$FLAG" != yes ] ; then
- CFLAGS="-Waggregate-return $CFLAGS"
- fi
-
-@@ -9486,7 +9486,7 @@
- fi
- echo "$as_me:$LINENO: result: `eval echo '${'$FLAG'}'`" >&5
- echo "${ECHO_T}`eval echo '${'$FLAG'}'`" >&6
--if test ${!FLAG} = yes ; then
-+if test [ "$FLAG" != yes ] ; then
- CFLAGS="-Wstrict-prototypes $CFLAGS"
- fi
-
-@@ -9505,7 +9505,7 @@
- fi
- echo "$as_me:$LINENO: result: `eval echo '${'$FLAG'}'`" >&5
- echo "${ECHO_T}`eval echo '${'$FLAG'}'`" >&6
--if test ${!FLAG} = yes ; then
-+if test [ "$FLAG" != yes ] ; then
- CFLAGS="-Wredundant-decls $CFLAGS"
- fi
-
-@@ -9524,7 +9524,7 @@
- fi
- echo "$as_me:$LINENO: result: `eval echo '${'$FLAG'}'`" >&5
- echo "${ECHO_T}`eval echo '${'$FLAG'}'`" >&6
--if test ${!FLAG} = yes ; then
-+if test [ "$FLAG" != yes ] ; then
- CFLAGS="-Wchar-subscripts $CFLAGS"
- fi
-
-@@ -9543,7 +9543,7 @@
- fi
- echo "$as_me:$LINENO: result: `eval echo '${'$FLAG'}'`" >&5
- echo "${ECHO_T}`eval echo '${'$FLAG'}'`" >&6
--if test ${!FLAG} = yes ; then
-+if test [ "$FLAG" != yes ] ; then
- CFLAGS="-Wimplicit $CFLAGS"
- fi
-
-@@ -9562,7 +9562,7 @@
- fi
- echo "$as_me:$LINENO: result: `eval echo '${'$FLAG'}'`" >&5
- echo "${ECHO_T}`eval echo '${'$FLAG'}'`" >&6
--if test ${!FLAG} = yes ; then
-+if test [ "$FLAG" != yes ] ; then
- CFLAGS="-Wparentheses $CFLAGS"
- fi
-
-@@ -9581,7 +9581,7 @@
- fi
- echo "$as_me:$LINENO: result: `eval echo '${'$FLAG'}'`" >&5
- echo "${ECHO_T}`eval echo '${'$FLAG'}'`" >&6
--if test ${!FLAG} = yes ; then
-+if test [ "$FLAG" != yes ] ; then
- CFLAGS="-Wsequence-point $CFLAGS"
- fi
-
-@@ -9600,7 +9600,7 @@
- fi
- echo "$as_me:$LINENO: result: `eval echo '${'$FLAG'}'`" >&5
- echo "${ECHO_T}`eval echo '${'$FLAG'}'`" >&6
--if test ${!FLAG} = yes ; then
-+if test [ "$FLAG" != yes ] ; then
- CFLAGS="-Wreturn-type $CFLAGS"
- fi
-
-@@ -9619,7 +9619,7 @@
- fi
- echo "$as_me:$LINENO: result: `eval echo '${'$FLAG'}'`" >&5
- echo "${ECHO_T}`eval echo '${'$FLAG'}'`" >&6
--if test ${!FLAG} = yes ; then
-+if test [ "$FLAG" != yes ] ; then
- CFLAGS="-Wswitch $CFLAGS"
- fi
-
-@@ -9638,7 +9638,7 @@
- fi
- echo "$as_me:$LINENO: result: `eval echo '${'$FLAG'}'`" >&5
- echo "${ECHO_T}`eval echo '${'$FLAG'}'`" >&6
--if test ${!FLAG} = yes ; then
-+if test [ "$FLAG" != yes ] ; then
- CFLAGS="-Wunused $CFLAGS"
- fi
-
-@@ -9657,7 +9657,7 @@
- fi
- echo "$as_me:$LINENO: result: `eval echo '${'$FLAG'}'`" >&5
- echo "${ECHO_T}`eval echo '${'$FLAG'}'`" >&6
--if test ${!FLAG} = yes ; then
-+if test [ "$FLAG" != yes ] ; then
- CFLAGS="-Wuninitialized $CFLAGS"
- fi
-
-@@ -9676,7 +9676,7 @@
- fi
- echo "$as_me:$LINENO: result: `eval echo '${'$FLAG'}'`" >&5
- echo "${ECHO_T}`eval echo '${'$FLAG'}'`" >&6
--if test ${!FLAG} = yes ; then
-+if test [ "$FLAG" != yes ] ; then
- CFLAGS="-Wundef $CFLAGS"
- fi
-
-@@ -9695,7 +9695,7 @@
- fi
- echo "$as_me:$LINENO: result: `eval echo '${'$FLAG'}'`" >&5
- echo "${ECHO_T}`eval echo '${'$FLAG'}'`" >&6
--if test ${!FLAG} = yes ; then
-+if test [ "$FLAG" != yes ] ; then
- CFLAGS="-Wnested-externs $CFLAGS"
- fi
-
-@@ -9714,7 +9714,7 @@
- fi
- echo "$as_me:$LINENO: result: `eval echo '${'$FLAG'}'`" >&5
- echo "${ECHO_T}`eval echo '${'$FLAG'}'`" >&6
--if test ${!FLAG} = yes ; then
-+if test [ "$FLAG" != yes ] ; then
- CFLAGS="-Wdeclaration-after-statement $CFLAGS"
- fi
-
-@@ -9733,7 +9733,7 @@
- fi
- echo "$as_me:$LINENO: result: `eval echo '${'$FLAG'}'`" >&5
- echo "${ECHO_T}`eval echo '${'$FLAG'}'`" >&6
--if test ${!FLAG} = yes ; then
-+if test [ "$FLAG" != yes ] ; then
- CFLAGS="-Wsign-compare $CFLAGS"
- fi
-
diff --git a/testing/zangband/fix-bad-substitution.patch b/testing/zangband/fix-bad-substitution.patch
deleted file mode 100644
index b344940b34f..00000000000
--- a/testing/zangband/fix-bad-substitution.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-#The form ${!FLAG} throws bad substitution errors, converting to a posix complient form fixs it, and allows second pass generation to work
---- a/configure.in
-+++ b/configure.in
-@@ -249,7 +249,7 @@
- else
- eval $FLAG=no
- fi])
--if test ${!FLAG} = yes ; then
-+if test [ "$FLAG" != yes ] ; then
- CFLAGS="$1 $CFLAGS"
- fi
- ])
diff --git a/testing/zangband/fix-explosive-rune-error.patch b/testing/zangband/fix-explosive-rune-error.patch
deleted file mode 100644
index 8b32831baef..00000000000
--- a/testing/zangband/fix-explosive-rune-error.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-# Typo error, without this rune's won't break, which could lead to game breaking errors
---- a/lib/edit/t_info.txt
-+++ b/lib/edit/t_info.txt
-@@ -92,7 +92,7 @@
- L:MENTT:if (do_move == TRUE) then
- L:MENTT: if (bAnd(race.flags[0], RF0_NEVER_BLOW) ~= 0) and
- L:MENTT: (randint1(BREAK_MINOR_GLYPH) < race.level) then
--L:MENTT: if (field.fx == player.px) and (field.fy = player.py) then
-+L:MENTT: if (field.fx == player.px) and (field.fy == player.py) then
- L:MENTT: msgf("The rune explodes!")
- L:MENTT: fire_ball(GF_MANA, 0, 2 * ((player.lev / 2) + damroll(7, 7)), 2)
- L:MENTT: else
diff --git a/testing/zangband/fix-random-num-gen.patch b/testing/zangband/fix-random-num-gen.patch
deleted file mode 100644
index 21d8bdec03a..00000000000
--- a/testing/zangband/fix-random-num-gen.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-#RNG is not implemented properly for 64bit systems, without this Zangband hangs on character generation
-*** a/src/h-type.h 2005-06-05 01:54:21.000000000 +0900
---- b/src/h-type.h 2017-08-30 21:46:23.723911618 +0900
-***************
-*** 103,108 ****
---- 103,118 ----
- typedef signed short s16b;
- typedef unsigned short u16b;
-
-+ /* detect 64 bit GCC */
-+ #ifdef _LP64
-+ #ifndef L64
-+ #define L64 1
-+ #endif
-+ #ifndef USE_64B
-+ #define USE_64B 1
-+ #endif
-+ #endif
-+
- /* Signed/Unsigned 32 bit value */
- #ifdef L64 /* 64 bit longs */
- typedef signed int s32b; \ No newline at end of file
diff --git a/testing/zangband/fix-spear-of-hagen-error.patch b/testing/zangband/fix-spear-of-hagen-error.patch
deleted file mode 100644
index 3b0994922e6..00000000000
--- a/testing/zangband/fix-spear-of-hagen-error.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-#Typo causes artifact not to work, using it in game throws errors
---- a/lib/edit/a_info.txt
-+++ b/lib/edit/a_info.txt
-@@ -1491,7 +1491,7 @@
- F:STEALTH | RES_DARK | INFRA |
- F:BRAND_COLD | SLAY_UNDEAD | RES_COLD | SEE_INVIS | SHOW_MODS | THROW
- F:INSTA_ART
--L:BONUS: b.pspeed = (player.level + 4) / 5
-+L:BONUS: b.pspeed = (player.lev + 4) / 5
- L:SPOIL: return "+1 speed / 5 levels"
-
- # The Spear 'Soulsucker'
diff --git a/testing/zaproxy/APKBUILD b/testing/zaproxy/APKBUILD
new file mode 100644
index 00000000000..3c6d3c76ca5
--- /dev/null
+++ b/testing/zaproxy/APKBUILD
@@ -0,0 +1,37 @@
+# Contributor: Ado <ado@expedio.it>
+# Maintainer: Ado <ado@expedio.it>
+pkgname=zaproxy
+pkgver=2.14.0
+pkgrel=0
+pkgdesc="OWASP Zed Attack Proxy web app scanner"
+url="https://www.zaproxy.org/"
+arch="all !x86 !armhf !armv7 !riscv64 !aarch64 !ppc64le"
+license="Apache-2.0"
+_java_v=11
+depends="
+ bash
+ openjdk$_java_v-jre
+ font-liberation
+ "
+makedepends="
+ tar
+ gradle
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/zaproxy/zaproxy/archive/v$pkgver.tar.gz"
+options="!check"
+
+build() {
+ /usr/bin/gradle :zap:distLinux
+}
+
+package() {
+ install -d "$pkgdir/usr/share/$pkgname"
+ install -d "$pkgdir/usr/bin/"
+ tar -zxf "zap/build/distributions/ZAP_${pkgver}_Linux.tar.gz" -C "$pkgdir/usr/share/$pkgname" --strip-components=1
+ ln -s "/usr/share/zaproxy/zap.sh" "$pkgdir/usr/bin/$pkgname"
+}
+
+
+sha512sums="
+660bb3b8f4789a2ae76c040ae879136da294f189bb331abc5f1e249a7fe69b64433c8a3e66d56d4f4d41072b20963afaa5615d76df5ade4049ea9d592faf017b zaproxy-2.14.0.tar.gz
+"
diff --git a/testing/zarchive/APKBUILD b/testing/zarchive/APKBUILD
new file mode 100644
index 00000000000..88dd5abec21
--- /dev/null
+++ b/testing/zarchive/APKBUILD
@@ -0,0 +1,36 @@
+# Maintainer: Simon Rupf <simon@rupf.net>
+pkgname=zarchive
+pkgver=0.1.2
+pkgrel=2
+pkgdesc="Library for creating and reading zstd-compressed file archives (.zar)"
+url="https://github.com/Exzap/ZArchive"
+arch="all"
+license="MIT-0"
+depends_dev="$pkgname=$pkgver-r$pkgrel"
+makedepends="
+ cmake
+ samurai
+ zstd-dev
+ "
+subpackages="$pkgname-libs $pkgname-dev"
+source="$pkgname-$pkgver.tar.gz::https://github.com/Exzap/ZArchive/archive/refs/tags/v$pkgver.tar.gz"
+builddir="$srcdir/ZArchive-$pkgver"
+options="!check" # no tests
+
+build() {
+ CFLAGS="$CFLAGS -O2 -flto=auto -DNDEBUG" \
+ CXXFLAGS="$CXXFLAGS -O2 -flto=auto -DNDEBUG" \
+ cmake -B build -G Ninja -Wno-dev \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DBUILD_SHARED_LIBS=ON
+ cmake --build build
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+b9666e8e86e5162b4ee641905a288088311d5cd1af510b2fbf22eba722ad2d8ca43a081b14c0106743807eff256bac9a0cacbdeb06e8ccad0e8d5b9ed8fa886e zarchive-0.1.2.tar.gz
+"
diff --git a/testing/zarf/APKBUILD b/testing/zarf/APKBUILD
new file mode 100644
index 00000000000..f6d2a59844d
--- /dev/null
+++ b/testing/zarf/APKBUILD
@@ -0,0 +1,32 @@
+# Contributor: William Walker <w_walker@icloud.com>
+# Maintainer: William Walker <w_walker@icloud.com>
+pkgname=zarf
+pkgver=0.32.1
+pkgrel=2
+pkgdesc="DevSecOps for Air Gap & Limited-Connection Systems"
+url="https://zarf.dev/"
+# not useful/supported elsewhere
+arch="aarch64 x86_64"
+license="Apache-2.0"
+makedepends="go nodejs npm"
+source="$pkgname-v$pkgver.tar.gz::https://github.com/defenseunicorns/zarf/archive/refs/tags/v$pkgver.tar.gz"
+# tests are integration tests that need a full setup
+options="net !check"
+
+build() {
+ local ldflags="
+ -X github.com/defenseunicorns/zarf/src/config.CLIVersion=v$pkgver
+ -X k8s.io/component-base/version.gitVersion=v0.0.0+zarfv$pkgver
+ -X k8s.io/component-base/version.gitCommit=alpine
+ -X k8s.io/component-base/version.buildDate=null
+ "
+ go build -ldflags "$ldflags" -o build/zarf main.go
+}
+
+package() {
+ install -Dm755 build/zarf -t "$pkgdir"/usr/bin
+}
+
+sha512sums="
+b2730fb3594a0bfca6600d6e9c16f1a35b2c5f136501ebf0734aed7f1c57c1f6cc124e7d491b6a9edb8d837494a72158123d83728f54ef422338514d9181b1d2 zarf-v0.32.1.tar.gz
+"
diff --git a/testing/zathura-djvu/APKBUILD b/testing/zathura-djvu/APKBUILD
deleted file mode 100644
index a581139f838..00000000000
--- a/testing/zathura-djvu/APKBUILD
+++ /dev/null
@@ -1,24 +0,0 @@
-# Maintainer: Cormac Stephenson <c7s@kasku.net>
-pkgname=zathura-djvu
-pkgver=0.2.9
-pkgrel=0
-pkgdesc="djvu plugin for zathura"
-url="https://pwmt.org/projects/zathura-djvu/"
-arch="all"
-license="Zlib"
-options="!check" # no tests
-makedepends="meson zathura-dev djvulibre-dev"
-depends="zathura"
-source="https://pwmt.org/projects/zathura-djvu/download/zathura-djvu-$pkgver.tar.xz"
-
-build() {
- abuild-meson build
- meson compile ${JOBS:+-j ${JOBS}} -C build
-}
-
-package() {
- DESTDIR="$pkgdir" meson install --no-rebuild -C build
-}
-sha512sums="
-3c2815e7f1cdfb9fc594dc6ad65359245f322e5fa27f018fb9431747e4d474734f5efd134aaeb9dabde09b01de603b1d1dc7aede883b1ef81266e067b0490726 zathura-djvu-0.2.9.tar.xz
-"
diff --git a/testing/zeal/APKBUILD b/testing/zeal/APKBUILD
deleted file mode 100644
index 5e6e844e605..00000000000
--- a/testing/zeal/APKBUILD
+++ /dev/null
@@ -1,46 +0,0 @@
-# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
-pkgname=zeal
-pkgver=0.6.1_git20211225
-_gitrev=763edca12ccd6c67e51f10891d1ced8b2510904f
-pkgrel=0
-pkgdesc="Offline documentation browser inspired by Dash"
-url="https://zealdocs.org/"
-arch="all !armhf !ppc64le !s390x !riscv64" # blocked by qt5-qtwebengine
-license="GPL-3.0-only"
-depends="hicolor-icon-theme"
-makedepends="
- cmake
- extra-cmake-modules
- libarchive-dev
- qt5-qtbase-dev
- qt5-qtwebengine-dev
- qt5-qtx11extras-dev
- samurai
- sqlite-dev
- xcb-util-keysyms-dev
- "
-source="https://github.com/zealdocs/zeal/archive/$_gitrev/zeal-$_gitrev.tar.gz"
-builddir="$srcdir/$pkgname-$_gitrev"
-options="!check" # no tests provided
-
-build() {
- local crossopts=
- if [ "$CBUILD" != "$CHOST" ]; then
- crossopts="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -G Ninja -B build \
- -DCMAKE_BUILD_TYPE=MinSizeRel \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DBUILD_SHARED_LIBS=OFF \
- $crossopts .
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
-}
-
-sha512sums="
-19dcfa813521c1dc65a5abda6689f60b628ffc1847b4e2ea3dccfcf9f4575352dc081f7d82dc422da0370c82052b839a198262b8aafcf37d2f0e908bc063dc7e zeal-763edca12ccd6c67e51f10891d1ced8b2510904f.tar.gz
-"
diff --git a/testing/zerofree/APKBUILD b/testing/zerofree/APKBUILD
deleted file mode 100644
index ed055500838..00000000000
--- a/testing/zerofree/APKBUILD
+++ /dev/null
@@ -1,24 +0,0 @@
-# Contributor: Oleg Titov <oleg.titov@gmail.com>
-# Maintainer: Oleg Titov <oleg.titov@gmail.com>
-pkgname=zerofree
-pkgver=1.1.1
-pkgrel=0
-pkgdesc="Zero free blocks from ext2, ext3 and ext4 file-systems"
-url="https://frippery.org/uml/"
-arch="all"
-license="GPL-2.0-only"
-options="!check" # No test suite from upstream
-makedepends="e2fsprogs-dev"
-source="https://frippery.org/uml/zerofree-$pkgver.tgz
- types.patch"
-
-build() {
- make
-}
-
-package() {
- install -Dm 755 -t "$pkgdir/usr/bin/" zerofree
-}
-
-sha512sums="2d7ee57a877bff2491c48054338a26d624ae75c238ac2b0568a75de88b6621c16cc1e7d65500879825d14d8ba44a5173587a061459072769c165bee47c3f9f1c zerofree-1.1.1.tgz
-0cf3833271195c2f1da591af625928d8207d6bb39702cdc9f8ade0e7e773096e4f55860438863f06639f205283c0cccbaaf8b4d9ee98e3850a5075e38d06a187 types.patch"
diff --git a/testing/zerofree/types.patch b/testing/zerofree/types.patch
deleted file mode 100644
index fecdbd49b0a..00000000000
--- a/testing/zerofree/types.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- zerofree-1.1.1/zerofree.c.orig 2019-05-05 19:22:49.000000000 -0500
-+++ zerofree-1.1.1/zerofree.c 2019-05-05 19:21:50.000000000 -0500
-@@ -17,6 +17,7 @@
- * Jan Krämer.
- */
-
-+#include <sys/types.h>
- #include <ext2fs/ext2fs.h>
- #include <stdio.h>
- #include <unistd.h>
diff --git a/testing/zfs-src/4900-ppc-get-user-workaround.patch b/testing/zfs-src/4900-ppc-get-user-workaround.patch
deleted file mode 100644
index aa7c0c703b2..00000000000
--- a/testing/zfs-src/4900-ppc-get-user-workaround.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-Description: PPC get_user workaround
- Linux 5.12 PPC 5.12 get_user() and __copy_from_user_inatomic()
- inline helpers very indirecly include a reference to the GPL'd
- array mmu_feature_keys[] and fails to build. Workaround this by
- using copy_from_user() and throwing EFAULT for any calls to
- __copy_from_user_inatomic(). This is a workaround until a fix
- for Linux commit 7613f5a66becfd0e43a0f34de8518695888f5458
- "powerpc/64s/kuap: Use mmu_has_feature()" is fully addressed.
-Author: Colin Ian King <colin.king@canonical.com>
-Origin: ubuntu
-Forwarded: no
-Last-Update: 2021-04-28
-
-Index: zfs-linux-2.0.3/module/os/linux/zfs/zfs_uio.c
-===================================================================
---- zfs-linux-2.0.3.orig/module/os/linux/zfs/zfs_uio.c
-+++ zfs-linux-2.0.3/module/os/linux/zfs/zfs_uio.c
-@@ -47,6 +47,7 @@
- #include <sys/strings.h>
- #include <linux/kmap_compat.h>
- #include <linux/uaccess.h>
-+#include <linux/printk.h>
-
- /*
- * Move "n" bytes at byte address "p"; "rw" indicates the direction
-@@ -79,11 +80,16 @@ uiomove_iov(void *p, size_t n, enum uio_
- (iov->iov_base + skip), cnt)) {
- return (EFAULT);
- }
-+#if defined(__PPC64__)
-+ printk_ratelimited(KERN_ERR "uiomove_iov(): __copy_from_user_inatomic() not available to ZFS\n");
-+ return (EFAULT);
-+#else
- pagefault_disable();
- b_left =
- __copy_from_user_inatomic(p,
- (iov->iov_base + skip), cnt);
- pagefault_enable();
-+#endif
- } else {
- b_left =
- copy_from_user(p,
-@@ -248,7 +254,7 @@ uio_prefaultpages(ssize_t n, struct uio
- /* touch each page in this segment. */
- p = iov->iov_base + skip;
- while (cnt) {
-- if (get_user(tmp, (uint8_t *)p))
-+ if (copy_from_user(&tmp, p, 1))
- return (EFAULT);
- ulong_t incr = MIN(cnt, PAGESIZE);
- p += incr;
-@@ -256,7 +262,7 @@ uio_prefaultpages(ssize_t n, struct uio
- }
- /* touch the last byte in case it straddles a page. */
- p--;
-- if (get_user(tmp, (uint8_t *)p))
-+ if (copy_from_user(&tmp, p, 1))
- return (EFAULT);
- }
- }
diff --git a/testing/zfs-src/AKMBUILD b/testing/zfs-src/AKMBUILD
index 9f11dbee234..1e5892ca9e8 100644
--- a/testing/zfs-src/AKMBUILD
+++ b/testing/zfs-src/AKMBUILD
@@ -1,15 +1,8 @@
modname=zfs
-modver=2.1.4-r0
+modver=2.2.1
makedepends="libtool linux-headers glib-dev e2fsprogs-dev util-linux-dev libtirpc-dev"
-built_modules="module/avl/zavl.ko \
- module/icp/icp.ko \
- module/lua/zlua.ko \
- module/nvpair/znvpair.ko \
- module/spl/spl.ko \
- module/unicode/zunicode.ko \
- module/zcommon/zcommon.ko \
- module/zfs/zfs.ko \
- module/zstd/zzstd.ko"
+built_modules="module/spl.ko \
+ module/zfs.ko"
build() {
cd "$builddir"
diff --git a/testing/zfs-src/APKBUILD b/testing/zfs-src/APKBUILD
index e4e6aab3a95..22efbc43dfc 100644
--- a/testing/zfs-src/APKBUILD
+++ b/testing/zfs-src/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Umar Getagazov <umar@handlerug.me>
pkgname=zfs-src
_modname=${pkgname%-src}
-pkgver=2.1.4
+pkgver=2.2.1
pkgrel=0
pkgdesc="ZFS for Linux (sources, AKMS)"
url="https://zfsonlinux.org"
@@ -11,8 +11,8 @@ license="CDDL-1.0"
depends="akms"
options="!check" # irrelevant for a -src package
source="https://github.com/openzfs/zfs/releases/download/zfs-$pkgver/zfs-$pkgver.tar.gz
- 4900-ppc-get-user-workaround.patch
- AKMBUILD"
+ AKMBUILD
+ "
builddir="$srcdir/$_modname-$pkgver"
package() {
@@ -22,7 +22,6 @@ package() {
}
sha512sums="
-c7b57c43fc287b22905067ab022df4133d32e1a5dc335f7baf743b4ef88f64c2bf9d41318c2083230d077dd49e68f7d9e6172266e13d4b1eee29d359860f969e zfs-2.1.4.tar.gz
-2643a55f9aef3f3a4e9242d4ae1377d28ae8ca9b31b2e87eb19e8f0d32ef24ba03ec39d776553fcd38b77b407696f00224c129d4f3b16f0e36b49279055d2d87 4900-ppc-get-user-workaround.patch
-3f47d275abd0687459d6834ac0ba419004ea19d299d56c407c42f601208bbe7ad9c0a5c279f0d52155ec5e5da7a59b27ccbd766cea56f22e7288866f97ccf2f5 AKMBUILD
+05e17046ac4f0ba923151be3e554e075db4783c8936c5dcee2d3b6d459fb386ba33f9eb38d15c185db58a1d26926147a66c3b3fe14e9de40987f0e95efa2bb31 zfs-2.2.1.tar.gz
+0300d1e3a50f2fdab590b31d74cebb2bc2a94fa3872e8659cec9cb838fd89b76efea18cdb3e04837094633aea0a14f8d4060d8f0b23df0978dfa00c865490fc2 AKMBUILD
"
diff --git a/testing/zfsnap/APKBUILD b/testing/zfsnap/APKBUILD
deleted file mode 100644
index 51aed79265b..00000000000
--- a/testing/zfsnap/APKBUILD
+++ /dev/null
@@ -1,51 +0,0 @@
-# Contributor: Shyam Sunder <sgsunder1@gmail.com>
-# Maintainer: Shyam Sunder <sgsunder1@gmail.com>
-pkgname=zfsnap
-pkgver=2.0.0b3
-_ver=${pkgver/b/-beta}
-pkgrel=0
-pkgdesc="A portable, performant script to make rolling ZFS snapshots easy"
-url="https://www.zfsnap.org/"
-arch="noarch !armhf !armv7" # Limited by zfs
-license="BSD-3-Clause"
-depends="zfs"
-options="!check" # no unit tests, only consists of shell scripts
-subpackages="
- $pkgname-doc
- $pkgname-bash-completion
- $pkgname-zsh-completion
- "
-source="https://github.com/zfsnap/zfsnap/archive/v$_ver.tar.gz"
-builddir="$srcdir/$pkgname-$_ver"
-
-prepare() {
- default_prepare
- sed -i \
- -e 's#/sbin/zfs#/usr/sbin/zfs#g' \
- -e 's#/sbin/zpool#/usr/sbin/zpool#g' \
- "$builddir"/share/zfsnap/core.sh
-}
-
-package() {
- install -Dm755 "$builddir"/sbin/zfsnap.sh \
- "$pkgdir"/usr/sbin/zfsnap
- install -Dm755 "$builddir"/share/zfsnap/core.sh \
- "$pkgdir"/usr/share/zfsnap/core.sh
- install -Dm755 "$builddir"/share/zfsnap/commands/destroy.sh \
- "$pkgdir"/usr/share/zfsnap/commands/destroy.sh
- install -Dm755 "$builddir"/share/zfsnap/commands/recurseback.sh \
- "$pkgdir"/usr/share/zfsnap/commands/recurseback.sh
- install -Dm755 "$builddir"/share/zfsnap/commands/snapshot.sh \
- "$pkgdir"/usr/share/zfsnap/commands/snapshot.sh
- install -Dm644 "$builddir"/man/man8/zfsnap.8 \
- "$pkgdir"/usr/share/man/man8/zfsnap.8
-
- install -Dm644 "$builddir"/completion/$pkgname-completion.bash \
- "$pkgdir"/usr/share/bash-completion/completions/$pkgname
- install -Dm644 "$builddir"/completion/$pkgname-completion.zsh \
- "$pkgdir"/usr/share/zsh/site-functions/_$pkgname
-}
-
-sha512sums="
-85df793abd97a3db26fcb9d779627ea295b2132dc462c3b1afc70a877d8093196992a7912957157555714c5f1e07ae1694e7fbed9ebae2482fd5f2d846eaf694 v2.0.0-beta3.tar.gz
-"
diff --git a/testing/zig/APKBUILD b/testing/zig/APKBUILD
index b79c280576a..44f118a6efa 100644
--- a/testing/zig/APKBUILD
+++ b/testing/zig/APKBUILD
@@ -1,60 +1,72 @@
# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
# Contributor: Milan P. Stanić <mps@arvanta.net>
-# Maintainer: Milan P. Stanić <mps@arvanta.net>
+# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
pkgname=zig
-pkgver=0.9.1
-pkgrel=0
-pkgdesc="general-purpose programming language designed for robustness, optimality, and maintainability"
+pkgver=0.11.0
+pkgrel=3
+pkgdesc="General-purpose programming language designed for robustness, optimality, and maintainability"
url="https://ziglang.org/"
+# arm*, x86: fails to build (allocation failed)
+# ppc64le,riscv64: builds but the test command crashes
+# s390x: blocked by lld-dev
arch="x86_64 aarch64"
license="MIT"
+install="$pkgname.pre-upgrade"
+_llvmver=16
+makedepends="
+ clang$_llvmver-dev
+ cmake
+ libxml2-dev
+ lld$_llvmver-dev
+ llvm$_llvmver-dev
+ samurai
+ zlib-dev
+ "
provides="zig-dev=$pkgver-r$pkgrel"
-#subpackages="$pkgname-doc" # disable for now, fails on build
-options="!check" # fail, disable to unblock builders
-makedepends="cmake clang-dev clang-libs llvm13-libs llvm-dev lld-dev libstdc++
- zlib-static libxml2-dev llvm13-static clang-static lld-static"
-source="$pkgname-$pkgver.tar.gz::https://github.com/ziglang/zig/archive/$pkgver.tar.gz
- llvm-include.patch"
+subpackages="$pkgname-doc"
+source="zig-$pkgver-1.tar.xz::https://ziglang.org/download/$pkgver/zig-$pkgver.tar.xz
+ $pkgname-cbe-omit-trap-in-naked-fn-1.patch::https://github.com/ziglang/zig/commit/8c6a32ac28b9cccc9dd3f371c77458cac853b240.diff
+ "
build() {
+ local crossopts=
if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ crossopts="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
fi
- mkdir -p build
- cd build
- cmake \
- -DCMAKE_BUILD_TYPE=None \
+
+ cmake -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_CXX_FLAGS="$CXXFLAGS" \
- -DCMAKE_C_FLAGS="$CFLAGS" \
+ -DCMAKE_PREFIX_PATH=/usr \
+ -DCMAKE_VERBOSE_MAKEFILE=ON \
-DZIG_VERSION="$pkgver" \
- ${CMAKE_CROSSOPTS} \
- ..
- make
+ -DZIG_SHARED_LLVM=ON \
+ -DZIG_TARGET_MCPU=baseline \
+ -DCLANG_INCLUDE_DIRS=/usr/lib/llvm$_llvmver/include \
+ $crossopts
+
+ cmake --build build
+
+ ./build/stage3/bin/zig build docs
}
check() {
- cd build
- ./zig build test \
- -Dskip-release \
+ ./build/stage3/bin/zig build test \
+ -Dcpu=baseline \
+ -Dskip-debug \
+ -Dskip-release-safe \
-Dskip-release-small \
- -Dskip-release-fast \
- -Dskip-non-native \
- -Dskip-libc
+ -Dskip-non-native
}
package() {
- make -C build DESTDIR="$pkgdir" install
-
- # Documentation is generated as part of `./zig build test` in check().
- # If this is no longer the case at some point it can be
- # generated explicitly using `./zig build docs`.
- ### it is not built now ###
- #install -Dm644 zig-cache/langref.html \
- # "$pkgdir"/usr/share/doc/$pkgname/langref.html
+ DESTDIR="$pkgdir" cmake --install build
+
+ mkdir -p "$pkgdir/usr/share/doc/"
+ cp -r zig-out/doc "$pkgdir/usr/share/doc/$pkgname"
}
sha512sums="
-a9dc5fea25dde511122056832449658b00dbcf6d6bbfe658b375968a7bdb06c690abbdfe00c1afcfa481442392b051dcef5a5a5e81d4ceb23fa98a866b900f37 zig-0.9.1.tar.gz
-3d7a3f5ad1ba753bf8cffa7ddbb6785b9dec195121aad15b4ae66bac7123a84e0eb2cc347fcc8193b90a3e84abc99a8bfc9a77ab9205b14e6c0bdaaa20ce889a llvm-include.patch
+c19a8ae6d440a16dd5e77941fc77c036d1f284f1784376625e63b65f30b4acad62f9f4217bc818c401f88c2c33f8722f26fc467c3e23c29a89178c4b1882d1c4 zig-0.11.0-1.tar.xz
+cac6500b4aa6eb2129d7df73315cbf487b05577a6d1a1e300bcc8a5e950fa00fb2143e26105b0348393df26edb6a0b23b60ffefe68fa7fcbad2bd4a597bd72a6 zig-cbe-omit-trap-in-naked-fn-1.patch
"
diff --git a/testing/zig/llvm-include.patch b/testing/zig/llvm-include.patch
deleted file mode 100644
index 7cefa893156..00000000000
--- a/testing/zig/llvm-include.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-Our llvm include path is not in the include list tried by default.
-
---- zig-0.9.1.orig/cmake/Findllvm.cmake
-+++ zig-0.9.1/cmake/Findllvm.cmake
-@@ -12,6 +12,7 @@
- /usr/lib/llvm/13/include
- /usr/lib/llvm-13/include
- /usr/lib/llvm-13.0/include
-+ /usr/lib/llvm13/include
- /usr/local/llvm13/include
- /usr/local/llvm130/include
- /usr/local/opt/llvm@13/include
diff --git a/testing/zig/zig.pre-upgrade b/testing/zig/zig.pre-upgrade
new file mode 100644
index 00000000000..a396aae7ec2
--- /dev/null
+++ b/testing/zig/zig.pre-upgrade
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+ver_old=$2
+
+if [ "$(apk version -t "$ver_old" '0.10.0-r2')" = '<' ]; then
+ # zig 0.10 upgrades libcxx which renames the __string header to a directory
+ # https://gitlab.alpinelinux.org/alpine/apk-tools/-/issues/10856
+ rm -r /usr/lib/zig/libcxx/include/__string
+fi
+
+exit 0
diff --git a/testing/zile/APKBUILD b/testing/zile/APKBUILD
index dad6a79ecdd..3dfc58b475c 100644
--- a/testing/zile/APKBUILD
+++ b/testing/zile/APKBUILD
@@ -1,36 +1,38 @@
# Contributor: Jose Maria Garcia <josemaria.alkala@gmail.com>
# Maintainer: Jose Maria Garcia <josemaria.alkala@gmail.com>
pkgname=zile
-pkgver=2.4.15
+pkgver=2.6.2
pkgrel=0
pkgdesc="GNU Zile is a text editor development kit."
url="https://www.gnu.org/software/zile"
arch="all"
-license="GPL3"
-depends=""
-makedepends="ncurses-dev gc-dev perl help2man"
-install=""
-subpackages="${pkgname}-doc"
-source="https://ftp.gnu.org/gnu/zile/${pkgname}-${pkgver}.tar.gz"
-builddir="$srcdir/${pkgname}-${pkgver}"
+license="GPL-3.0-or-later"
+makedepends="
+ glib-dev
+ gobject-introspection-dev
+ help2man
+ libgee-dev
+ ncurses-dev
+ perl
+"
+subpackages="$pkgname-doc"
+source="https://ftp.gnu.org/gnu/zile/zile-$pkgver.tar.gz"
+options="!check"
build() {
- cd "$builddir"
- ./configure \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var
- make
+ ./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var
+ make
}
package() {
- cd "$builddir"
- make DESTDIR="$pkgdir" install
- rm -f "$pkgdir"/usr/lib/charset.alias
+ make DESTDIR="$pkgdir" install
+ rm -f "$pkgdir"/usr/lib/charset.alias
}
-
sha512sums="
-e2a04c280ae0c0038e6ef18abec0be55063a472f77a511bf31459712be24659edcaa2d1c861d7c00bdab87a1881af03d14eb561047c386cbff5f90b13b1a2575 zile-2.4.15.tar.gz
+16d5cece403fc215d53b35c31fe6f743d53d7a01cdc7d101cabe6760173539c9c31e092b29c374f28a723708027f6de626fcfee302962848091f85078fa81761 zile-2.6.2.tar.gz
"
diff --git a/testing/zimg/APKBUILD b/testing/zimg/APKBUILD
deleted file mode 100644
index 180565cb65c..00000000000
--- a/testing/zimg/APKBUILD
+++ /dev/null
@@ -1,65 +0,0 @@
-# Contributor: Alexander Edland <alpine@ocv.me>
-# Contributor: Nicolas Lorin <androw95220@gmail.com>
-# Maintainer:
-pkgname=zimg
-pkgver=3.0.3
-pkgrel=1
-pkgdesc="Scaling, colorspace conversion and dithering library"
-url="https://github.com/sekrit-twc/zimg"
-arch="all !s390x" # Tests fail on big-endian
-license="WTFPL-2.0"
-makedepends="autoconf automake libtool cmake linux-headers"
-subpackages="$pkgname-doc $pkgname-dev"
-source="zimg-$pkgver.tar.gz::https://github.com/sekrit-twc/zimg/archive/release-$pkgver.tar.gz
- zimg-gtest-1.11.0.tar.gz::https://github.com/google/googletest/archive/release-1.11.0.tar.gz
- musl-missing-include.patch
- "
-builddir="$srcdir/zimg-release-$pkgver"
-options="!check" # we run tests in the build stage
-
-prepare() {
- default_prepare
- mkdir -p "$pkgdir"
- # googletest is required in-tree
- ln -s "$srcdir"/googletest-*/* test/extra/googletest
- autoreconf -vfi
-}
-
-build() {
- # build and run test binaries here
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var \
- --disable-static \
- --enable-unit-test
- make
- make test/unit_test.log
- test/unit_test
-
- # build release binaries here without enabling tests,
- # as they make zimg slower
- make clean
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --localstatedir=/var \
- --disable-static
- make
-}
-
-package() {
- make -j1 DESTDIR="$pkgdir" install
-}
-
-sha512sums="
-859c625599b412ecdd72c73d7618f6c7f9760337f7c8aec69fb97e30e1e65e4da51f6cbc5a2c8ad58cb7fbccdccb5322b95f24166c0204da6a3a8cd862cfb2ab zimg-3.0.3.tar.gz
-6fcc7827e4c4d95e3ae643dd65e6c4fc0e3d04e1778b84f6e06e390410fe3d18026c131d828d949d2f20dde6327d30ecee24dcd3ef919e21c91e010d149f3a28 zimg-gtest-1.11.0.tar.gz
-06c1b1220e0418ed5051a6c594bbf48ba7ed10a4e2a95b51d6ae2451ba49b1f0be97347115c203fe82322c7f3b9f75756ba03eabe902898b3e3dd2c9e1765891 musl-missing-include.patch
-"
diff --git a/testing/zimg/musl-missing-include.patch b/testing/zimg/musl-missing-include.patch
deleted file mode 100644
index 198ea6dbba1..00000000000
--- a/testing/zimg/musl-missing-include.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-Otherwise fails to build with missing size_t
-
-diff --git a/src/zimg/colorspace/matrix3.cpp b/src/zimg/colorspace/matrix3.cpp
-index 06e0e2f..bf849c0 100644
---- a/src/zimg/colorspace/matrix3.cpp
-+++ b/src/zimg/colorspace/matrix3.cpp
-@@ -1,4 +1,5 @@
- #include "matrix3.h"
-+#include <sys/types.h>
-
- namespace zimg {
- namespace colorspace {
diff --git a/testing/zita-njbridge/APKBUILD b/testing/zita-njbridge/APKBUILD
index d56bcb30b3b..2ce9aec46d8 100644
--- a/testing/zita-njbridge/APKBUILD
+++ b/testing/zita-njbridge/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Jacek Pruciak <alpine@juniorjpdj.pl>
pkgname=zita-njbridge
pkgver=0.4.8
-pkgrel=0
+pkgrel=1
pkgdesc="Command line Jack clients to transmit full quality multichannel audio over a local IP network"
url="https://kokkinizita.linuxaudio.org/linuxaudio"
arch="all"
diff --git a/testing/zita-resampler/APKBUILD b/testing/zita-resampler/APKBUILD
index 87ecb3b7c24..9c364e94690 100644
--- a/testing/zita-resampler/APKBUILD
+++ b/testing/zita-resampler/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: David Demelier <markand@malikania.fr>
# Maintainer: David Demelier <markand@malikania.fr>
pkgname=zita-resampler
-pkgver=1.8.0
+pkgver=1.10.1
pkgrel=0
pkgdesc="library for resampling audio signals"
url="https://kokkinizita.linuxaudio.org/linuxaudio"
@@ -9,7 +9,7 @@ arch="all"
license="GPL-3.0-only"
makedepends="libsndfile-dev"
subpackages="$pkgname-dev $pkgname-doc"
-source="https://kokkinizita.linuxaudio.org/linuxaudio/downloads/zita-resampler-$pkgver.tar.bz2
+source="https://kokkinizita.linuxaudio.org/linuxaudio/downloads/zita-resampler-$pkgver.tar.xz
patch-Makefile.patch"
options="!check" # No tests
@@ -29,5 +29,7 @@ package() {
ln -sf libzita-resampler.so.$pkgver "$pkgdir"/usr/lib/libzita-resampler.so.1
}
-sha512sums="adf1f465ac09104be5a02c1cf0f052a44b4c1a448312f3aca016a889e98cfcdebfded38f60300ad85d18ae03eadca7e8e95efb2875267bc36435ccfac881a8e7 zita-resampler-1.8.0.tar.bz2
-2e198effce857831235f368cb7e97a64f37ac7f2eb2fafa9beb5459418f7126b1622e4c8090c2f397d82e785a71516b182b57444e22440f6922af6afd83095d6 patch-Makefile.patch"
+sha512sums="
+ba95286b0744df393194f4f94a8aad62f6c088cf80f6be71482ed55beef6503a9bab6644f2565b69002247611fcf0fb6561fc0072578466a0133311721b43cf5 zita-resampler-1.10.1.tar.xz
+787433be1250d83c30e1de129a41fcde4f96679b1e05b644f20ca7d47609cd032e08f1c925bf8cea9a7a66f4225eb64f15516cd010a9ad60534b5c13215aa647 patch-Makefile.patch
+"
diff --git a/testing/zita-resampler/patch-Makefile.patch b/testing/zita-resampler/patch-Makefile.patch
index ef281246578..e1d9f56358c 100644
--- a/testing/zita-resampler/patch-Makefile.patch
+++ b/testing/zita-resampler/patch-Makefile.patch
@@ -2,37 +2,20 @@ Calls ldconfig which is not available and remove -march=native because it's not
portable across platforms.
Upstream: no, upstream author isn't cooperative.
---- a/apps/Makefile
-+++ b/apps/Makefile
-@@ -55,8 +55,8 @@
-
-
- install: all
-- install -d $(BINDIR)
-- install -d $(MANDIR)
-+ install -d $(DESTDIR)$(BINDIR)
-+ install -d $(DESTDIR)$(MANDIR)
- install -m 755 zresample $(DESTDIR)$(BINDIR)
- install -m 755 zretune $(DESTDIR)$(BINDIR)
- install -m 644 zresample.1.gz $(DESTDIR)$(MANDIR)
+diff --git a/source/Makefile b/source/Makefile
+index c7aa3b3..b2140b9 100644
--- a/source/Makefile
+++ b/source/Makefile
-@@ -31,9 +31,7 @@
+@@ -31,11 +31,9 @@ VERSION = $(MAJVERS).$(MINVERS)
DISTDIR = zita-resampler-$(VERSION)
CPPFLAGS += -I. -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS
-CPPFLAGS += -DENABLE_SSE2
+ CPPFLAGS += -DZITA_RESAMPLER_MAJOR_VERSION=$(MAJVERS)
+ CPPFLAGS += -DZITA_RESAMPLER_MINOR_VERSION=$(MINVERS)
-CXXFLAGS += -Wall -fPIC -O2 -ffast-math
-CXXFLAGS += -march=native
+CXXFLAGS += -Wall -fPIC -O2
LDFLAGS +=
LDLIBS +=
-@@ -58,7 +56,6 @@
- install -d $(DESTDIR)$(LIBDIR)
- install -m 644 $(ZITA-RESAMPLER_H) $(DESTDIR)$(INCDIR)/zita-resampler
- install -m 755 $(ZITA-RESAMPLER_MIN) $(DESTDIR)$(LIBDIR)
-- ldconfig
- ln -sf $(ZITA-RESAMPLER_MIN) $(DESTDIR)$(LIBDIR)/$(ZITA-RESAMPLER_SO)
-
- uninstall:
diff --git a/testing/zkgroup/APKBUILD b/testing/zkgroup/APKBUILD
index 632eea57955..8071f771c78 100644
--- a/testing/zkgroup/APKBUILD
+++ b/testing/zkgroup/APKBUILD
@@ -2,16 +2,17 @@
# Maintainer: Siva Mahadevan <me@svmhdvn.name>
pkgname=zkgroup
pkgver=0.9.0
-pkgrel=0
+pkgrel=1
pkgdesc="Library for the Signal Private Group System"
url="https://github.com/signalapp/zkgroup"
arch="all !s390x !ppc64le !riscv64" # limited by cargo
license="GPL-3.0-only"
-makedepends="cargo"
+makedepends="cargo cargo-auditable"
source="$pkgname-$pkgver.tar.gz::https://github.com/signalapp/zkgroup/archive/v$pkgver.tar.gz"
+
build() {
- cargo build --release --locked
+ cargo auditable build --release --locked
}
check() {
diff --git a/testing/zls/APKBUILD b/testing/zls/APKBUILD
new file mode 100644
index 00000000000..7df2a3b7077
--- /dev/null
+++ b/testing/zls/APKBUILD
@@ -0,0 +1,54 @@
+# Maintainer: Rabindra Dhakal <contact@qaidvoid.dev>
+pkgname=zls
+pkgver=0.11.0
+pkgrel=1
+_knownfolders=a564f582122326328dad6b59209d070d57c4e6ae
+_diffz=90353d401c59e2ca5ed0abe5444c29ad3d7489aa
+_binned_allocator=6c3321e0969ff2463f8335da5601986cf2108690
+pkgdesc="Zig Language Server"
+url="https://github.com/zigtools/zls"
+arch="aarch64 x86_64"
+license="MIT"
+depends="zig"
+source="$pkgname-$pkgver.tar.gz::https://github.com/zigtools/zls/archive/refs/tags/$pkgver.tar.gz
+ known-folders-$_knownfolders.tar.gz::https://github.com/ziglibs/known-folders/archive/$_knownfolders.tar.gz
+ diffz-$_diffz.tar.gz::https://github.com/ziglibs/diffz/archive/$_diffz.tar.gz
+ binned_allocator-$_binned_allocator::https://gist.github.com/antlilja/8372900fcc09e38d7b0b6bbaddad3904/archive/$_binned_allocator.tar.gz"
+
+prepare() {
+ default_prepare
+
+ mkdir -p "$srcdir"/cache/p
+ mv "$srcdir"/known-folders-$_knownfolders "$srcdir"/cache/p/122048992ca58a78318b6eba4f65c692564be5af3b30fbef50cd4abeda981b2e7fa5
+ mv "$srcdir"/diffz-$_diffz "$srcdir"/cache/p/122089a8247a693cad53beb161bde6c30f71376cd4298798d45b32740c3581405864
+ mv "$srcdir"/binned_allocator-$_binned_allocator "$srcdir"/cache/1220363c7e27b2d3f39de6ff6e90f9537a0634199860fea237a55ddb1e1717f5d6a5
+}
+
+build() {
+ export ZIG_GLOBAL_CACHE_DIR="$srcdir"/cache
+ zig build \
+ -Dcpu=baseline \
+ -Dtarget=native-linux.6.1 \
+ -Doptimize=ReleaseSafe \
+ -Dpie=true
+}
+
+check() {
+ export ZIG_GLOBAL_CACHE_DIR="$srcdir"/cache
+ zig build test \
+ -Dcpu=baseline \
+ -Dtarget=native-linux.6.1 \
+ -Doptimize=ReleaseSafe \
+ -Dpie=true
+}
+
+package() {
+ install -Dm755 zig-out/bin/zls -t "$pkgdir"/usr/bin/
+}
+
+sha512sums="
+88a754cdd110997736ceda1c6f145267d1c72c83ff0d5946d8d0b40ec64668f2e6b826b9d3ca1c2f195b304097968a4fe61ae4778e3f571638dde87d8f03c21d zls-0.11.0.tar.gz
+4aa0148e859fb9cb0bc816906dedd204f16ce3001f07f13ad688b1307036d2517373a5bc9184a9aa3634be51851658f4da9b4484718e089c6cc65a30c725fe00 known-folders-a564f582122326328dad6b59209d070d57c4e6ae.tar.gz
+387ee728bdc96ba44e3a7a1974e109377f0ca8a4802198a3dc1d5160af682b9a8613309e105ab4f65e76fe1fae08b88463aa692f643e7d8cc03db4de2f94b847 diffz-90353d401c59e2ca5ed0abe5444c29ad3d7489aa.tar.gz
+62c7ed619b7cda6ca197c13066c3b6320baa16ff0f8e48b6ed1dd6dde26fd9cd652c78b8e975a43055fc5fad8b014531f32d95efc878ed863cf2b80b06668897 binned_allocator-6c3321e0969ff2463f8335da5601986cf2108690
+"
diff --git a/testing/zmusic/APKBUILD b/testing/zmusic/APKBUILD
deleted file mode 100644
index b904ddde930..00000000000
--- a/testing/zmusic/APKBUILD
+++ /dev/null
@@ -1,38 +0,0 @@
-# Contributor: Peter Shkenev <santurysim@gmail.com>
-# Maintainer: Peter Shkenev <santurysim@gmail.com>
-pkgname=zmusic
-pkgver=1.1.8
-pkgrel=0
-pkgdesc="GZDoom's music system as a standalone library"
-url="https://github.com/coelckers/ZMusic"
-arch="all !ppc64le" # ftbfs
-license="GPL-3.0-or-later AND LGPL-3.0-or-later AND LGPL-2.1-or-later AND custom"
-makedepends="cmake fluidsynth-dev libsndfile-dev mpg123-dev alsa-lib-dev samurai"
-subpackages="$pkgname-dev $pkgname-doc"
-options="!check" # No test suite
-source="https://github.com/coelckers/ZMusic/archive/refs/tags/$pkgver/zmusic-$pkgver.tar.gz"
-builddir="$srcdir/ZMusic-$pkgver"
-
-build() {
- if [ "$CBUILD" != "$CHOST" ]; then
- CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
- fi
- cmake -B build -G Ninja \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DBUILD_SHARED_LIBS=True \
- -DCMAKE_BUILD_TYPE=MinSizeRel \
- $CMAKE_CROSSOPTS
- cmake --build build
-}
-
-package() {
- DESTDIR="$pkgdir" cmake --install build
- install -Dm644 licenses/dumb.txt "$pkgdir"/usr/share/licenses/$pkgname/dumb.txt
-}
-
-
-
-sha512sums="
-b48d56d74c6206850303e7d19eafe44130836aa2ea326ca8bd78e8171b0658f4f870b697497a054da71a2b70f4b4db3e9bc62bc251f62ecf74ec9634a83b27d4 zmusic-1.1.8.tar.gz
-"
diff --git a/testing/znc-backlog/APKBUILD b/testing/znc-backlog/APKBUILD
index 9be410f3d23..74b73000f6c 100644
--- a/testing/znc-backlog/APKBUILD
+++ b/testing/znc-backlog/APKBUILD
@@ -2,12 +2,12 @@
# Maintainer: Mike Crute <mike@crute.us>
pkgname=znc-backlog
pkgver=0_git20210503
-pkgrel=3
+pkgrel=7
pkgdesc="Request backlog for IRC channels"
url="https://wiki.znc.in/Backlog"
arch="all"
license="Apache-2.0"
-makedepends="znc-dev icu-dev openssl-dev zlib-dev"
+makedepends="znc-dev icu-dev openssl-dev>3 zlib-dev"
# Upstream does not version, instead use the most recent hash of their master branch
_latest_upstream_hash="44314a6aca0409ae59b0d841807261be1159fff4"
source="$pkgname-$pkgver.tar.gz::https://github.com/FruitieX/znc-backlog/archive/$_latest_upstream_hash.tar.gz"
diff --git a/testing/znc-clientbuffer/APKBUILD b/testing/znc-clientbuffer/APKBUILD
index 0bdb87a95fb..9968fc0e77c 100644
--- a/testing/znc-clientbuffer/APKBUILD
+++ b/testing/znc-clientbuffer/APKBUILD
@@ -2,12 +2,12 @@
# Maintainer: Mike Crute <mike@crute.us>
pkgname=znc-clientbuffer
pkgver=1.0.48
-pkgrel=3
+pkgrel=7
pkgdesc="ZNC module for client specific buffers"
url="https://wiki.znc.in/Clientbuffer"
arch="all"
license="MIT"
-makedepends="znc-dev icu-dev openssl-dev zlib-dev"
+makedepends="znc-dev icu-dev openssl-dev>3 zlib-dev"
source="$pkgname-$pkgver.tar.gz::https://github.com/CyberShadow/znc-clientbuffer/archive/refs/tags/v$pkgver.tar.gz"
options="!check" # Upstream has no tests
builddir="$srcdir/$pkgname-$pkgver"
diff --git a/testing/znc-playback/APKBUILD b/testing/znc-playback/APKBUILD
index 7c86210130f..2455d41c228 100644
--- a/testing/znc-playback/APKBUILD
+++ b/testing/znc-playback/APKBUILD
@@ -2,12 +2,12 @@
# Maintainer: Mike Crute <mike@crute.us>
pkgname=znc-playback
pkgver=0_git20210503
-pkgrel=3
+pkgrel=7
pkgdesc="An advanced playback module for ZNC"
url="https://wiki.znc.in/Playback"
arch="all"
license="Unlicense"
-makedepends="znc-dev icu-dev openssl-dev zlib-dev"
+makedepends="znc-dev icu-dev openssl-dev>3 zlib-dev"
# Upstream does not version, instead use the most recent hash of their master branch
_latest_upstream_hash="8dd128bfe2b24b2cc6a9ea2e2d28bfaa28d2a833"
source="$pkgname-$pkgver.tar.gz::https://github.com/jpnurmi/znc-playback/archive/$_latest_upstream_hash.tar.gz"
diff --git a/testing/znc-push/APKBUILD b/testing/znc-push/APKBUILD
index 5687cd169eb..257b5729e28 100644
--- a/testing/znc-push/APKBUILD
+++ b/testing/znc-push/APKBUILD
@@ -1,15 +1,15 @@
# Contributor: Mike Crute <mike@crute.us>
# Maintainer: Mike Crute <mike@crute.us>
pkgname=znc-push
-pkgver=0_git20210507
-pkgrel=3
+pkgver=0_git20220823
+pkgrel=7
pkgdesc="Push notification service module for ZNC"
url="https://wiki.znc.in/Push"
arch="all"
license="MIT"
-makedepends="znc-dev icu-dev openssl-dev zlib-dev"
+makedepends="znc-dev icu-dev openssl-dev>3 zlib-dev"
# Upstream does not version, instead use the most recent hash of their master branch
-_latest_upstream_hash="21c4da3b3173c0138f5c9e49ae9863a70600518b"
+_latest_upstream_hash="23d84678de2696e0b1f51aa5074764d29a98d37b"
source="$pkgname-$pkgver.tar.gz::https://github.com/jreese/znc-push/archive/$_latest_upstream_hash.tar.gz"
options="!check" # Upstream has no tests
builddir="$srcdir/$pkgname-$_latest_upstream_hash"
@@ -23,5 +23,5 @@ package() {
}
sha512sums="
-da81fa3fef3acd69b2549fdb7689ea28c589a0e3026e81e57def902638a125c971027dd780e568204eec4ee23950677c5b620e0cfa72fdaf611eed900b4eaf33 znc-push-0_git20210507.tar.gz
+014361220ab8056157572117fe64f86c23b6ff398f4684d5e8b8c3687e668d3eba54d7866e5040474d55e9a364d2d2c812d68a521a1cebf74e6a23880a10a1ba znc-push-0_git20220823.tar.gz
"
diff --git a/testing/zot/APKBUILD b/testing/zot/APKBUILD
new file mode 100644
index 00000000000..7cc8c40ae51
--- /dev/null
+++ b/testing/zot/APKBUILD
@@ -0,0 +1,132 @@
+# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
+pkgname=zot
+pkgver=2.0.1
+_zui_commit=f4a6030d93c4111af699a3ea0c154bd212e5aa06
+pkgrel=3
+pkgdesc="Vendor-neutral OCI-native container image registry"
+url="https://zotregistry.io/"
+# 32-bit, s390x, riscv64: tests fail to build
+arch="all !armv7 !armhf !x86 !s390x !riscv64"
+license="Apache-2.0"
+makedepends="go linux-headers npm nodejs"
+subpackages="
+ $pkgname-doc
+ $pkgname-openrc
+ $pkgname-cli:_cli
+ $pkgname-exporter:_exporter
+ $pkgname-cli-bash-completion:_bashcomp:noarch
+ $pkgname-cli-fish-completion:_fishcomp:noarch
+ $pkgname-cli-zsh-completion:_zshcomp:noarch
+ "
+source="
+ $pkgname-$pkgver.tar.gz::https://github.com/project-zot/zot/archive/refs/tags/v$pkgver.tar.gz
+ zui-$_zui_commit.tar.gz::https://github.com/project-zot/zui/archive/$_zui_commit.tar.gz
+ zot.initd
+ zot.confd
+
+ basename_patch
+ bump-go-sqlite3.patch
+ "
+options="net" # download Go modules
+
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
+
+prepare() {
+ default_prepare
+ go mod vendor -v
+ patch -p1 -i "$srcdir"/basename_patch
+
+ cd "$srcdir"/zui-$_zui_commit
+ npm install --no-progress
+}
+
+build() {
+ cd "$srcdir"/zui-$_zui_commit
+ npm run build
+ cp -r build "$builddir"/pkg/extensions/
+
+ cd "$builddir"
+ local _extensions="sync,search,scrub,metrics,lint,ui,mgmt,profile,userprefs,imagetrust"
+ local _goldflags="
+ -X zotregistry.io/zot/pkg/api/config.ReleaseTag=v$pkgver
+ -X zotregistry.io/zot/pkg/api/config.Commit=AlpineLinux
+ -X zotregistry.io/zot/pkg/api/config.BinaryType=${_extensions//,/-}
+ -X zotregistry.io/zot/pkg/api/config.GoVersion=$(go env GOVERSION)
+ "
+
+ for binary in zot zb zli; do
+ go build -v \
+ -ldflags "$_goldflags" \
+ -tags "$_extensions,containers_image_openpgp" \
+ ./cmd/$binary
+ done
+ go build -v -tags containers_image_openpgp ./cmd/zxp
+
+ # Only generate shell completions for the CLI client
+ for shell in bash fish zsh; do
+ ./zli completion $shell > zli.$shell
+ done
+}
+
+check() {
+ # Skip tests requiring static container image tarballs (pulled via skopeo) in ./test/data/
+ # and oras binary in ./hack/tools/
+ # shellcheck disable=2046
+ go test -tags containers_image_openpgp \
+ -skip TestHTTPClient \
+ $(go list ./... | grep -v \
+ -e 'pkg/test/image-utils$' \
+ -e 'pkg/test/common$' \
+ -e 'pkg/storage/local$')
+}
+
+package() {
+ install -Dm755 zot -t "$pkgdir"/usr/bin/
+
+ install -Dm644 examples/config-*.json -t "$pkgdir"/usr/share/doc/zot/examples/
+
+ install -Dm755 "$srcdir"/zot.initd -t "$pkgdir"/etc/init.d/zot
+ install -Dm644 "$srcdir"/zot.confd -t "$pkgdir"/etc/conf.d/zot
+}
+
+_cli() {
+ pkgdesc="$pkgdesc - CLI tools"
+ install -Dm755 "$builddir"/zli "$builddir"/zb -t "$subpkgdir"/usr/bin/
+}
+
+_exporter() {
+ pkgdesc="$pkgdesc - metrics exporter"
+ install -Dm755 "$builddir"/zxp -t "$subpkgdir"/usr/bin/
+}
+
+_bashcomp() {
+ pkgdesc="Bash completions for $pkgname-cli"
+ install_if="bash-completion $pkgname-cli=$pkgver-r$pkgrel"
+ install -Dm644 "$builddir"/zli.bash \
+ "$subpkgdir"/usr/share/bash-completion/completions/zli
+}
+
+_fishcomp() {
+ pkgdesc="Fish completions for $pkgname-cli"
+ install_if="fish $pkgname-cli=$pkgver-r$pkgrel"
+ install -Dm644 "$builddir"/zli.fish \
+ "$subpkgdir"/usr/share/fish/vendor_completions.d/zli.fish
+}
+
+_zshcomp() {
+ pkgdesc="Zsh completions for $pkgname-cli"
+ install_if="zsh $pkgname-cli=$pkgver-r$pkgrel"
+ install -Dm644 "$builddir"/zli.zsh \
+ "$subpkgdir"/usr/share/zsh/site-functions/_zli
+}
+
+sha512sums="
+47fb6a87d6d9548c5add65ba9a3ba3b5bcd6e28a12989967c67ad491c0753521ba9b453d418cef32ecc4de6929868718a9cb4734c4dbadc1602bd9cd0ce9e81a zot-2.0.1.tar.gz
+8b0f168193c664bb9f22f3340c8fcf934cf20cb53f89e25be417efb5633deb01f2dcedbd4960b03a94490f89a44ac2e53def839e2aa9489eab6ca52759d02c18 zui-f4a6030d93c4111af699a3ea0c154bd212e5aa06.tar.gz
+86dfa273e97110b703fbc368757520ef6169dead185ff54b5b8ba45e764949bc3a21a51d53a1605d7163faef8c83c066e688577f5315b8c0afb09f69a2bbe3bb zot.initd
+b128ecaf3e35cfdab8069da9a8267a9faed50b892ae07b6a4a22a4108236d6cdbc10cc4cf0105c728e9e6da6ac773f56d1dd84de1ba4463110058b6c2f190b30 zot.confd
+640526de31a5eb21112c3d3fd30ce78331e5f5998166c9af9405ebad919a9a895ee82e3eed7067c2ce7e3e558e31907398fec1ad895be708e9f8ada696076216 basename_patch
+f7efef45062db2418d6b78d7767876ff9d37204ba66da764e94cff9492fc4c2807600f1d6574d2446db7f936a5bafdf4476d4ade400910f62d30ff675ee330e3 bump-go-sqlite3.patch
+"
diff --git a/testing/zot/basename_patch b/testing/zot/basename_patch
new file mode 100644
index 00000000000..4a11a3c1ba3
--- /dev/null
+++ b/testing/zot/basename_patch
@@ -0,0 +1,10 @@
+--- a/vendor/github.com/containers/storage/pkg/unshare/unshare.c
++++ b/vendor/github.com/containers/storage/pkg/unshare/unshare.c
+@@ -18,6 +18,7 @@
+ #include <sys/vfs.h>
+ #include <sys/mount.h>
+ #include <linux/limits.h>
++#include <libgen.h>
+
+ /* Open Source projects like conda-forge, want to package podman and are based
+ off of centos:6, Conda-force has minimal libc requirements and is lacking
diff --git a/testing/zot/bump-go-sqlite3.patch b/testing/zot/bump-go-sqlite3.patch
new file mode 100644
index 00000000000..da05ad0fb43
--- /dev/null
+++ b/testing/zot/bump-go-sqlite3.patch
@@ -0,0 +1,800 @@
+--- a/go.mod
++++ b/go.mod
+@@ -1,7 +1,9 @@
+ module zotregistry.io/zot
+
+-go 1.20
++go 1.21
+
++toolchain go1.22.0
++
+ require (
+ github.com/99designs/gqlgen v0.17.41
+ github.com/Masterminds/semver v1.5.0
+@@ -38,7 +40,7 @@
+ github.com/swaggo/swag v1.16.2
+ github.com/vektah/gqlparser/v2 v2.5.10
+ go.etcd.io/bbolt v1.3.8
+- golang.org/x/crypto v0.17.0
++ golang.org/x/crypto v0.18.0
+ gopkg.in/resty.v1 v1.12.0
+ gopkg.in/yaml.v2 v2.4.0
+ )
+@@ -60,13 +62,13 @@
+ github.com/swaggo/http-swagger v1.3.4
+ github.com/zitadel/oidc v1.13.5
+ golang.org/x/oauth2 v0.15.0
+- modernc.org/sqlite v1.27.0
++ modernc.org/sqlite v1.29.3
+ oras.land/oras-go/v2 v2.3.1
+ )
+
+ require (
+- golang.org/x/sync v0.5.0 // indirect
+- golang.org/x/sys v0.15.0 // indirect
++ golang.org/x/sync v0.6.0 // indirect
++ golang.org/x/sys v0.16.0 // indirect
+ golang.org/x/text v0.14.0 // indirect
+ )
+
+@@ -142,7 +144,6 @@
+ github.com/gosuri/uitable v0.0.4 // indirect
+ github.com/gregjones/httpcache v0.0.0-20180305231024-9cad4c3443a7 // indirect
+ github.com/jmoiron/sqlx v1.3.5 // indirect
+- github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51 // indirect
+ github.com/kylelemons/godebug v1.1.0 // indirect
+ github.com/lann/builder v0.0.0-20180802200727-47ae307949d0 // indirect
+ github.com/lann/ps v0.0.0-20150810152359-62de8c46ede0 // indirect
+@@ -157,7 +158,7 @@
+ github.com/masahiro331/go-ext4-filesystem v0.0.0-20230612143131-27ccd485b7a1 // indirect
+ github.com/masahiro331/go-vmdk-parser v0.0.0-20221225061455-612096e4bbbd // indirect
+ github.com/masahiro331/go-xfs-filesystem v0.0.0-20230608043311-a335f4599b70 // indirect
+- github.com/mattn/go-sqlite3 v1.14.18 // indirect
++ github.com/mattn/go-sqlite3 v1.14.22 // indirect
+ github.com/matttproud/golang_protobuf_extensions/v2 v2.0.0 // indirect
+ github.com/microsoft/go-rustaudit v0.0.0-20220808201409-204dfee52032 // indirect
+ github.com/mitchellh/hashstructure/v2 v2.0.2 // indirect
+@@ -169,6 +170,7 @@
+ github.com/monochromegane/go-gitignore v0.0.0-20200626010858-205db1a8cc00 // indirect
+ github.com/morikuni/aec v1.0.0 // indirect
+ github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect
++ github.com/ncruces/go-strftime v0.1.9 // indirect
+ github.com/nozzle/throttler v0.0.0-20180817012639-2ea982251481 // indirect
+ github.com/oleiade/reflections v1.0.1 // indirect
+ github.com/opencontainers/selinux v1.11.0 // indirect
+@@ -212,15 +214,12 @@
+ k8s.io/cli-runtime v0.28.2 // indirect
+ k8s.io/component-base v0.28.2 // indirect
+ k8s.io/kubectl v0.28.2 // indirect
+- lukechampine.com/uint128 v1.2.0 // indirect
+- modernc.org/cc/v3 v3.40.0 // indirect
+- modernc.org/ccgo/v3 v3.16.13 // indirect
+- modernc.org/libc v1.29.0 // indirect
++ modernc.org/gc/v3 v3.0.0-20240107210532-573471604cb6 // indirect
++ modernc.org/libc v1.41.0 // indirect
+ modernc.org/mathutil v1.6.0 // indirect
+ modernc.org/memory v1.7.2 // indirect
+- modernc.org/opt v0.1.3 // indirect
+- modernc.org/strutil v1.1.3 // indirect
+- modernc.org/token v1.0.1 // indirect
++ modernc.org/strutil v1.2.0 // indirect
++ modernc.org/token v1.1.0 // indirect
+ oras.land/oras-go v1.2.4-0.20230829103011-4d0bf161925b // indirect
+ sigs.k8s.io/kustomize/api v0.13.5-0.20230601165947-6ce0bf390ce3 // indirect
+ sigs.k8s.io/kustomize/kyaml v0.14.3-0.20230601165947-6ce0bf390ce3 // indirect
+@@ -469,10 +468,10 @@
+ go.uber.org/zap v1.26.0 // indirect
+ golang.org/x/exp v0.0.0-20231108232855-2478ac86f678
+ golang.org/x/mod v0.14.0 // indirect
+- golang.org/x/net v0.19.0 // indirect
+- golang.org/x/term v0.15.0 // indirect
++ golang.org/x/net v0.20.0 // indirect
++ golang.org/x/term v0.16.0 // indirect
+ golang.org/x/time v0.5.0 // indirect
+- golang.org/x/tools v0.15.0 // indirect
++ golang.org/x/tools v0.17.0 // indirect
+ golang.org/x/xerrors v0.0.0-20231012003039-104605ab7028 // indirect
+ google.golang.org/api v0.152.0 // indirect
+ google.golang.org/appengine v1.6.8 // indirect
+@@ -499,3 +498,5 @@
+
+ // https://github.com/gorilla/mux/issues/739
+ replace github.com/gorilla/mux => github.com/gorilla/mux v1.8.0
++
++replace modernc.org/sqlite v1.27.0 => modernc.org/sqlite v1.29.3
+--- a/go.sum
++++ b/go.sum
+@@ -115,6 +115,7 @@
+ cloud.google.com/go/iam v1.1.5 h1:1jTsCu4bcsNsE4iiqNT5SHwrDRCfRmIaaaVFhRveTJI=
+ cloud.google.com/go/iam v1.1.5/go.mod h1:rB6P/Ic3mykPbFio+vo7403drjlgvoWfYpJhMXEbzv8=
+ cloud.google.com/go/kms v1.15.5 h1:pj1sRfut2eRbD9pFRjNnPNg/CzJPuQAzUujMIM1vVeM=
++cloud.google.com/go/kms v1.15.5/go.mod h1:cU2H5jnp6G2TDpUGZyqTCoy1n16fbubHZjmVXSMtwDI=
+ cloud.google.com/go/language v1.4.0/go.mod h1:F9dRpNFQmJbkaop6g0JhSBXCNlO90e1KWx5iDdxbWic=
+ cloud.google.com/go/language v1.6.0/go.mod h1:6dJ8t3B+lUYfStgls25GusK04NLh3eDLQnWM3mdEbhI=
+ cloud.google.com/go/lifesciences v0.5.0/go.mod h1:3oIKy8ycWGPUyZDR/8RNnTOYevhaMLqh5vLUXs9zvT8=
+@@ -203,6 +204,7 @@
+ github.com/AdamKorcz/go-118-fuzz-build v0.0.0-20230306123547-8075edf89bb0 h1:59MxjQVfjXsBpLy+dbd2/ELV5ofnUkUZBvWSC85sheA=
+ github.com/AdamKorcz/go-118-fuzz-build v0.0.0-20230306123547-8075edf89bb0/go.mod h1:OahwfttHWG6eJ0clwcfBAHoDI6X/LV/15hx/wlMZSrU=
+ github.com/AdamKorcz/go-fuzz-headers-1 v0.0.0-20230618160516-e936619f9f18 h1:rd389Q26LMy03gG4anandGFC2LW/xvjga5GezeeaxQk=
++github.com/AdamKorcz/go-fuzz-headers-1 v0.0.0-20230618160516-e936619f9f18/go.mod h1:fgJuSBrJP5qZtKqaMJE0hmhS2tmRH+44IkfZvjtaf1M=
+ github.com/AliyunContainerService/ack-ram-tool/pkg/credentials/alibabacloudsdkgo/helper v0.2.0 h1:8+4G8JaejP8Xa6W46PzJEwisNgBXMvFcz78N6zG/ARw=
+ github.com/AliyunContainerService/ack-ram-tool/pkg/credentials/alibabacloudsdkgo/helper v0.2.0/go.mod h1:GgeIE+1be8Ivm7Sh4RgwI42aTtC9qrcj+Y9Y6CjJhJs=
+ github.com/Azure/azure-sdk-for-go v68.0.0+incompatible h1:fcYLmCpyNYRnvJbPerq7U0hS+6+I79yEDJBqVNcqUzU=
+@@ -214,7 +216,9 @@
+ github.com/Azure/azure-sdk-for-go/sdk/internal v1.5.0 h1:d81/ng9rET2YqdVkVwkb6EXeRrLJIwyGnJcAlAWKwhs=
+ github.com/Azure/azure-sdk-for-go/sdk/internal v1.5.0/go.mod h1:s4kgfzA0covAXNicZHDMN58jExvcng2mC/DepXiF1EI=
+ github.com/Azure/azure-sdk-for-go/sdk/security/keyvault/azkeys v1.0.1 h1:MyVTgWR8qd/Jw1Le0NZebGBUCLbtak3bJ3z1OlqZBpw=
++github.com/Azure/azure-sdk-for-go/sdk/security/keyvault/azkeys v1.0.1/go.mod h1:GpPjLhVR9dnUoJMyHWSPy71xY9/lcmpzIPZXmF0FCVY=
+ github.com/Azure/azure-sdk-for-go/sdk/security/keyvault/internal v1.0.0 h1:D3occbWoio4EBLkbkevetNMAVX197GkzbUMtqjGWn80=
++github.com/Azure/azure-sdk-for-go/sdk/security/keyvault/internal v1.0.0/go.mod h1:bTSOgj05NGRuHHhQwAdPnYr9TOdNmKlZTgGLL6nyAdI=
+ github.com/Azure/go-ansiterm v0.0.0-20230124172434-306776ec8161 h1:L/gRVlceqvL25UVaW/CKtUDjefjrs0SPonmDGUVOYP0=
+ github.com/Azure/go-ansiterm v0.0.0-20230124172434-306776ec8161/go.mod h1:xomTg63KZ2rFqZQzSB4Vz2SUXa1BpHTVz9L5PTmPC4E=
+ github.com/Azure/go-autorest v14.2.0+incompatible h1:V5VMDjClD3GiElqLWO7mz2MxNAK/vTfRHdAubSIPRgs=
+@@ -251,6 +255,7 @@
+ github.com/CycloneDX/cyclonedx-go v0.7.2 h1:kKQ0t1dPOlugSIYVOMiMtFqeXI2wp/f5DBIdfux8gnQ=
+ github.com/CycloneDX/cyclonedx-go v0.7.2/go.mod h1:K2bA+324+Og0X84fA8HhN2X066K7Bxz4rpMQ4ZhjtSk=
+ github.com/DATA-DOG/go-sqlmock v1.5.0 h1:Shsta01QNfFxHCfpW6YH2STWB0MudeXXEWMr20OEh60=
++github.com/DATA-DOG/go-sqlmock v1.5.0/go.mod h1:f/Ixk793poVmq4qj/V1dPUg2JEAKC73Q5eFN3EC/SaM=
+ github.com/GoogleCloudPlatform/docker-credential-gcr v2.0.5+incompatible h1:juIaKLLVhqzP55d8x4cSVgwyQv76Z55/fRv/UBr2KkQ=
+ github.com/GoogleCloudPlatform/docker-credential-gcr v2.0.5+incompatible/go.mod h1:BB1eHdMLYEFuFdBlRMb0N7YGVdM5s6Pt0njxgvfbGGs=
+ github.com/KyleBanks/depth v1.2.1 h1:5h8fQADFrWtarTdtDudMmGsC7GPbOAu6RVB3ffsVFHc=
+@@ -281,6 +286,7 @@
+ github.com/ProtonMail/go-crypto v0.0.0-20230923063757-afb1ddc0824c h1:kMFnB0vCcX7IL/m9Y5LO+KQYv+t1CQOiFe6+SV2J7bE=
+ github.com/ProtonMail/go-crypto v0.0.0-20230923063757-afb1ddc0824c/go.mod h1:EjAoLdwvbIOoOQr3ihjnSoLZRtE8azugULFRteWMNc0=
+ github.com/Shopify/logrus-bugsnag v0.0.0-20171204204709-577dee27f20d h1:UrqY+r/OJnIp5u0s1SbQ8dVfLCZJsnvazdBP5hS4iRs=
++github.com/Shopify/logrus-bugsnag v0.0.0-20171204204709-577dee27f20d/go.mod h1:HI8ITrYtUY+O+ZhtlqUnD8+KwNPOyugEhfP9fdUIaEQ=
+ github.com/ThalesIgnite/crypto11 v1.2.5 h1:1IiIIEqYmBvUYFeMnHqRft4bwf/O36jryEUpY+9ef8E=
+ github.com/ThalesIgnite/crypto11 v1.2.5/go.mod h1:ILDKtnCKiQ7zRoNxcp36Y1ZR8LBPmR2E23+wTQe/MlE=
+ github.com/VividCortex/ewma v1.2.0 h1:f58SaIzcDXrSy3kWaHNvuJgJ3Nmz59Zji6XoJR/q1ow=
+@@ -297,6 +303,7 @@
+ github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc=
+ github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0=
+ github.com/alessio/shellescape v1.4.1 h1:V7yhSDDn8LP4lc4jS8pFkt0zCnzVJlG5JXy9BVKJUX0=
++github.com/alessio/shellescape v1.4.1/go.mod h1:PZAiSCk0LJaZkiCSkPv8qIobYglO3FPpyFjDCtHLS30=
+ github.com/alexbrainman/sspi v0.0.0-20210105120005-909beea2cc74 h1:Kk6a4nehpJ3UuJRqlA3JxYxBZEqCeOmATOvrbT4p9RA=
+ github.com/alexbrainman/sspi v0.0.0-20210105120005-909beea2cc74/go.mod h1:cEWa1LVoE5KvSD9ONXsZrj0z6KqySlCCNKHlLzbqAt4=
+ github.com/alibabacloud-go/alibabacloud-gateway-spi v0.0.2/go.mod h1:sCavSAvdzOjul4cEqeVtvlSaSScfNsTQ+46HwlTL1hc=
+@@ -339,20 +346,25 @@
+ github.com/alibabacloud-go/tea-xml v1.1.3 h1:7LYnm+JbOq2B+T/B0fHC4Ies4/FofC4zHzYtqw7dgt0=
+ github.com/alibabacloud-go/tea-xml v1.1.3/go.mod h1:Rq08vgCcCAjHyRi/M7xlHKUykZCEtyBy9+DPF6GgEu8=
+ github.com/alicebob/gopher-json v0.0.0-20200520072559-a9ecdc9d1d3a h1:HbKu58rmZpUGpz5+4FfNmIU+FmZg2P3Xaj2v2bfNWmk=
++github.com/alicebob/gopher-json v0.0.0-20200520072559-a9ecdc9d1d3a/go.mod h1:SGnFV6hVsYE877CKEZ6tDNTjaSXYUk6QqoIK6PrAtcc=
+ github.com/alicebob/miniredis/v2 v2.30.4 h1:8S4/o1/KoUArAGbGwPxcwf0krlzceva2XVOSchFS7Eo=
++github.com/alicebob/miniredis/v2 v2.30.4/go.mod h1:b25qWj4fCEsBeAAR2mlb0ufImGC6uH3VlUfb/HS5zKg=
+ github.com/aliyun/credentials-go v1.1.2/go.mod h1:ozcZaMR5kLM7pwtCMEpVmQ242suV6qTJya2bDq4X1Tw=
+ github.com/aliyun/credentials-go v1.3.1 h1:uq/0v7kWrxmoLGpqjx7vtQ/s03f0zR//0br/xWDTE28=
+ github.com/aliyun/credentials-go v1.3.1/go.mod h1:8jKYhQuDawt8x2+fusqa1Y6mPxemTsBEN04dgcAcYz0=
+ github.com/anchore/go-struct-converter v0.0.0-20221118182256-c68fdcfa2092 h1:aM1rlcoLz8y5B2r4tTLMiVTrMtpfY0O8EScKJxaSaEc=
+ github.com/anchore/go-struct-converter v0.0.0-20221118182256-c68fdcfa2092/go.mod h1:rYqSE9HbjzpHTI74vwPvae4ZVYZd1lue2ta6xHPdblA=
+ github.com/andreyvit/diff v0.0.0-20170406064948-c7f18ee00883 h1:bvNMNQO63//z+xNgfBlViaCIJKLlCJ6/fmUseuG0wVQ=
++github.com/andreyvit/diff v0.0.0-20170406064948-c7f18ee00883/go.mod h1:rCTlJbsFo29Kk6CurOXKm700vrz8f0KW0JNfpkRJY/8=
+ github.com/anmitsu/go-shlex v0.0.0-20200514113438-38f4b401e2be h1:9AeTilPcZAjCFIImctFaOjnTIavg87rW78vTPkQqLI8=
++github.com/anmitsu/go-shlex v0.0.0-20200514113438-38f4b401e2be/go.mod h1:ySMOLuWl6zY27l47sB3qLNK6tF2fkHG55UZxx8oIVo4=
+ github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kdvxnR2qWY=
+ github.com/apparentlymart/go-cidr v1.1.0 h1:2mAhrMoF+nhXqxTzSZMUzDHkLjmIHC+Zzn4tdgBZjnU=
+ github.com/apparentlymart/go-cidr v1.1.0/go.mod h1:EBcsNrHc3zQeuaeCeCtQruQm+n9/YjEn/vI25Lg7Gwc=
+ github.com/apparentlymart/go-textseg/v13 v13.0.0 h1:Y+KvPE1NYz0xl601PVImeQfFyEy6iT90AvPUL1NNfNw=
+ github.com/apparentlymart/go-textseg/v13 v13.0.0/go.mod h1:ZK2fH7c4NqDTLtiYLvIkEghdlcqw7yxLeM89kiTRPUo=
+ github.com/aquasecurity/bolt-fixtures v0.0.0-20200903104109-d34e7f983986 h1:2a30xLN2sUZcMXl50hg+PJCIDdJgIvIbVcKqLJ/ZrtM=
++github.com/aquasecurity/bolt-fixtures v0.0.0-20200903104109-d34e7f983986/go.mod h1:NT+jyeCzXk6vXR5MTkdn4z64TgGfE5HMLC8qfj5unl8=
+ github.com/aquasecurity/defsec v0.93.1 h1:y4XgRknjs2M58XVLANBT1wulO7N6Rz1oyfwNuzID+h4=
+ github.com/aquasecurity/defsec v0.93.1/go.mod h1:i80K4WRNbcIWDOQDWnTHkutBwplzw/uZD4laKbhu4sE=
+ github.com/aquasecurity/go-dep-parser v0.0.0-20231030050624-4548cca9a5c9 h1:AYees+PQjw47SEdM6e/xxgrFzHA+UWxQl6WndDzILNY=
+@@ -369,6 +381,7 @@
+ github.com/aquasecurity/table v1.8.0 h1:9ntpSwrUfjrM6/YviArlx/ZBGd6ix8W+MtojQcM7tv0=
+ github.com/aquasecurity/table v1.8.0/go.mod h1:eqOmvjjB7AhXFgFqpJUEE/ietg7RrMSJZXyTN8E/wZw=
+ github.com/aquasecurity/testdocker v0.0.0-20230111101738-e741bda259da h1:pj/adfN0Wbzc0H8YkI1nX5K92wOU5/1/1TRuuc0y5Nw=
++github.com/aquasecurity/testdocker v0.0.0-20230111101738-e741bda259da/go.mod h1:852lbQLpK2nCwlR4ZLYIccxYCfoQao6q9Nl6tjz54v8=
+ github.com/aquasecurity/tml v0.6.1 h1:y2ZlGSfrhnn7t4ZJ/0rotuH+v5Jgv6BDDO5jB6A9gwo=
+ github.com/aquasecurity/tml v0.6.1/go.mod h1:OnYMWY5lvI9ejU7yH9LCberWaaTBW7hBFsITiIMY2yY=
+ github.com/aquasecurity/trivy v0.47.0 h1:Nlo5x5vCoBvPTz6QkHXgpYS7jT3WoCU7n7FHQ+A8FOk=
+@@ -385,6 +398,7 @@
+ github.com/armon/go-radix v0.0.0-20180808171621-7fddfc383310/go.mod h1:ufUuZ+zHj4x4TnLV4JWEpy2hxWSpsRywHrMgIH9cCH8=
+ github.com/armon/go-radix v1.0.0/go.mod h1:ufUuZ+zHj4x4TnLV4JWEpy2hxWSpsRywHrMgIH9cCH8=
+ github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5 h1:0CwZNZbxp69SHPdPJAN/hZIm0C4OItdklCFmMRWYpio=
++github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5/go.mod h1:wHh0iHkYZB8zMSxRWpUBQtwG5a7fFgvEO+odwuTv2gs=
+ github.com/asaskevich/govalidator v0.0.0-20200907205600-7a23bdc65eef/go.mod h1:WaHUgvxTVq04UNunO+XhnAqY/wQc+bxr74GqbsZ/Jqw=
+ github.com/asaskevich/govalidator v0.0.0-20230301143203-a9d515a09cc2 h1:DklsrG3dyBCFEj5IhUbnKptjxatkF07cF2ak3yi77so=
+ github.com/asaskevich/govalidator v0.0.0-20230301143203-a9d515a09cc2/go.mod h1:WaHUgvxTVq04UNunO+XhnAqY/wQc+bxr74GqbsZ/Jqw=
+@@ -453,6 +467,7 @@
+ github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.15.6 h1:9ulSU5ClouoPIYhDQdg9tpl83d5Yb91PXTKK+17q+ow=
+ github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.15.6/go.mod h1:lnc2taBsR9nTlz9meD+lhFZZ9EWY712QHrRflWpTcOA=
+ github.com/aws/aws-sdk-go-v2/service/kms v1.27.2 h1:I0NiSQiZu1UzP0akJWXSacjckEpYdN4VN7XYYfW6EYs=
++github.com/aws/aws-sdk-go-v2/service/kms v1.27.2/go.mod h1:E2IzqbIZfYuYUgib2KxlaweBbkxHCb3ZIgnp85TjKic=
+ github.com/aws/aws-sdk-go-v2/service/s3 v1.40.2 h1:Ll5/YVCOzRB+gxPqs2uD0R7/MyATC0w85626glSKmp4=
+ github.com/aws/aws-sdk-go-v2/service/s3 v1.40.2/go.mod h1:Zjfqt7KhQK+PO1bbOsFNzKgaq7TcxzmEoDWN8lM0qzQ=
+ github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.25.2 h1:JKbfiLwEqJp8zaOAOn6AVSMS96gdwP3TjBMvZYsbxqE=
+@@ -488,13 +503,18 @@
+ github.com/bmatcuk/doublestar/v4 v4.6.1 h1:FH9SifrbvJhnlQpztAx++wlkk70QBf0iBWDwNy7PA4I=
+ github.com/bmatcuk/doublestar/v4 v4.6.1/go.mod h1:xBQ8jztBU6kakFMg+8WGxn0c6z1fTSPVIjEY1Wr7jzc=
+ github.com/bradleyjkemp/cupaloy/v2 v2.8.0 h1:any4BmKE+jGIaMpnU8YgH/I2LPiLBufr6oMMlVBbn9M=
++github.com/bradleyjkemp/cupaloy/v2 v2.8.0/go.mod h1:bm7JXdkRd4BHJk9HpwqAI8BoAY1lps46Enkdqw6aRX0=
+ github.com/briandowns/spinner v1.23.0 h1:alDF2guRWqa/FOZZYWjlMIx2L6H0wyewPxo/CH4Pt2A=
+ github.com/briandowns/spinner v1.23.0/go.mod h1:rPG4gmXeN3wQV/TsAY4w8lPdIM6RX3yqeBQJSrbXjuE=
+ github.com/bshuster-repo/logrus-logstash-hook v1.0.0 h1:e+C0SB5R1pu//O4MQ3f9cFuPGoOVeF2fE4Og9otCc70=
++github.com/bshuster-repo/logrus-logstash-hook v1.0.0/go.mod h1:zsTqEiSzDgAa/8GZR7E1qaXrhYNDKBYy5/dWPTIflbk=
+ github.com/buger/jsonparser v1.1.1/go.mod h1:6RYKKt7H4d4+iWqouImQ9R2FZql3VbhNgx27UK13J/0=
+ github.com/bugsnag/bugsnag-go v0.0.0-20141110184014-b1d153021fcd h1:rFt+Y/IK1aEZkEHchZRSq9OQbsSzIT/OrI8YFFmRIng=
++github.com/bugsnag/bugsnag-go v0.0.0-20141110184014-b1d153021fcd/go.mod h1:2oa8nejYd4cQ/b0hMIopN0lCRxU0bueqREvZLWFrtK8=
+ github.com/bugsnag/osext v0.0.0-20130617224835-0dd3f918b21b h1:otBG+dV+YK+Soembjv71DPz3uX/V/6MMlSyD9JBQ6kQ=
++github.com/bugsnag/osext v0.0.0-20130617224835-0dd3f918b21b/go.mod h1:obH5gd0BsqsP2LwDJ9aOkm/6J86V6lyAXCoQWGw3K50=
+ github.com/bugsnag/panicwrap v0.0.0-20151223152923-e2c28503fcd0 h1:nvj0OLI3YqYXer/kZD8Ri1aaunCxIEsOst1BVJswV0o=
++github.com/bugsnag/panicwrap v0.0.0-20151223152923-e2c28503fcd0/go.mod h1:D/8v3kj0zr8ZAKg1AQ6crr+5VwKN5eIywRkfhyM/+dE=
+ github.com/buildkite/agent/v3 v3.59.0 h1:4+4gnl5DAgmDXs2JomzlVcYAiWJWkb6U9631Nh3wr0A=
+ github.com/buildkite/agent/v3 v3.59.0/go.mod h1:htNkEYNyaN7sNK63I1AIMJ30kR3l7IwxF5OCDh25jHY=
+ github.com/buildkite/go-pipeline v0.2.0 h1:+abnWSScMhJscxYgom2z0dzuXbjnYOz4RPeHmrfy31k=
+@@ -503,10 +523,13 @@
+ github.com/buildkite/interpolate v0.0.0-20200526001904-07f35b4ae251/go.mod h1:gbPR1gPu9dB96mucYIR7T3B7p/78hRVSOuzIWLHK2Y4=
+ github.com/bwesterb/go-ristretto v1.2.3/go.mod h1:fUIoIZaG73pV5biE2Blr2xEzDoMj7NFEuV9ekS419A0=
+ github.com/bytecodealliance/wasmtime-go/v3 v3.0.2 h1:3uZCA/BLTIu+DqCfguByNMJa2HVHpXvjfy0Dy7g6fuA=
++github.com/bytecodealliance/wasmtime-go/v3 v3.0.2/go.mod h1:RnUjnIXxEJcL6BgCvNyzCCRzZcxCgsZCi+RNlvYor5Q=
+ github.com/cenkalti/backoff v2.2.1+incompatible h1:tNowT99t7UNflLxfYYSlKYsBpXdEet03Pg2g16Swow4=
+ github.com/cenkalti/backoff v2.2.1+incompatible/go.mod h1:90ReRw6GdpyfrHakVjL/QHaoyV4aDUVVkXQJJJ3NXXM=
+ github.com/cenkalti/backoff/v3 v3.2.2 h1:cfUAAO3yvKMYKPrvhDuHSwQnhZNk/RMHKdZqKTxfm6M=
++github.com/cenkalti/backoff/v3 v3.2.2/go.mod h1:cIeZDE3IrqwwJl6VUwCN6trj1oXrTS4rc0ij+ULvLYs=
+ github.com/cenkalti/backoff/v4 v4.2.1 h1:y4OZtCnogmCPw98Zjyt5a6+QwPLGkiQsYW5oUqylYbM=
++github.com/cenkalti/backoff/v4 v4.2.1/go.mod h1:Y3VNntkOUPxTVeUxJ/G5vcM//AlwfmyYozVcomhLiZE=
+ github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU=
+ github.com/cespare/xxhash v1.1.0 h1:a6HrQnmkObjyL+Gs60czilIUGqrzKutQD6XZog3p+ko=
+ github.com/cespare/xxhash v1.1.0/go.mod h1:XrSqR1VqqWfGrhpAt58auRo0WTKS1nRRg3ghfAqPWnc=
+@@ -544,6 +567,7 @@
+ github.com/cockroachdb/apd/v3 v3.2.1 h1:U+8j7t0axsIgvQUqthuNm82HIrYXodOV2iWLWtEaIwg=
+ github.com/cockroachdb/apd/v3 v3.2.1/go.mod h1:klXJcjp+FffLTHlhIG69tezTDvdP065naDsHzKhYSqc=
+ github.com/codahale/rfc6979 v0.0.0-20141003034818-6a90f24967eb h1:EDmT6Q9Zs+SbUoc7Ik9EfrFqcylYqgPZ9ANSbTAntnE=
++github.com/codahale/rfc6979 v0.0.0-20141003034818-6a90f24967eb/go.mod h1:ZjrT6AXHbDs86ZSdt/osfBi5qfexBrKUdONk989Wnk4=
+ github.com/common-nighthawk/go-figure v0.0.0-20210622060536-734e95fb86be h1:J5BL2kskAlV9ckgEsNQXscjIaLiOYiZ75d4e94E6dcQ=
+ github.com/common-nighthawk/go-figure v0.0.0-20210622060536-734e95fb86be/go.mod h1:mk5IQ+Y0ZeO87b858TlA645sVcEcbiX6YqP98kt+7+w=
+ github.com/containerd/cgroups/v3 v3.0.2 h1:f5WFqIVSgo5IZmtTT3qVBo6TzI1ON6sycSBKkymb9L0=
+@@ -590,19 +614,24 @@
+ github.com/cpuguy83/go-md2man/v2 v2.0.3/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o=
+ github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E=
+ github.com/creack/pty v1.1.20 h1:VIPb/a2s17qNeQgDnkfZC35RScx+blkKF8GV68n80J4=
++github.com/creack/pty v1.1.20/go.mod h1:MOBLtS5ELjhRRrroQr9kyvTxUAFNvYEK993ew/Vr4O4=
+ github.com/cyberphone/json-canonicalization v0.0.0-20231011164504-785e29786b46 h1:2Dx4IHfC1yHWI12AxQDJM1QbRCDfk6M+blLzlZCXdrc=
+ github.com/cyberphone/json-canonicalization v0.0.0-20231011164504-785e29786b46/go.mod h1:uzvlm1mxhHkdfqitSA92i7Se+S9ksOn3a3qmv/kyOCw=
+ github.com/cyphar/filepath-securejoin v0.2.4 h1:Ugdm7cg7i6ZK6x3xDF1oEu1nfkyfH53EtKeQYTC3kyg=
+ github.com/cyphar/filepath-securejoin v0.2.4/go.mod h1:aPGpWjXOXUn2NCNjFvBE6aRxGGx79pTxQpKOJNYHHl4=
+ github.com/danieljoos/wincred v1.2.0 h1:ozqKHaLK0W/ii4KVbbvluM91W2H3Sh0BncbUNPS7jLE=
++github.com/danieljoos/wincred v1.2.0/go.mod h1:FzQLLMKBFdvu+osBrnFODiv32YGwCfx0SkRa/eYHgec=
+ github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
+ github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
+ github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1VwoXQT9A3Wy9MM3WgvqSxFWenqJduM=
+ github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
+ github.com/denisenkom/go-mssqldb v0.9.0/go.mod h1:xbL0rPBG9cCiLr28tMa8zpbdarY27NDyej4t/EjAShU=
+ github.com/depcheck-test/depcheck-test v0.0.0-20220607135614-199033aaa936 h1:foGzavPWwtoyBvjWyKJYDYsyzy+23iBV7NKTwdk+LRY=
++github.com/depcheck-test/depcheck-test v0.0.0-20220607135614-199033aaa936/go.mod h1:ttKPnOepYt4LLzD+loXQ1rT6EmpyIYHro7TAJuIIlHo=
+ github.com/dgraph-io/badger/v3 v3.2103.5 h1:ylPa6qzbjYRQMU6jokoj4wzcaweHylt//CH0AKt0akg=
++github.com/dgraph-io/badger/v3 v3.2103.5/go.mod h1:4MPiseMeDQ3FNCYwRbbcBOGJLf5jsE0PPFzRiKjtcdw=
+ github.com/dgraph-io/ristretto v0.1.1 h1:6CWw5tJNgpegArSHpNHJKldNeq03FQCwYvfMVWajOK8=
++github.com/dgraph-io/ristretto v0.1.1/go.mod h1:S1GPSBCYCIhmVNfcth17y2zZtQT6wzkzgwUve0VDWWA=
+ github.com/dgrijalva/jwt-go v3.2.0+incompatible/go.mod h1:E3ru+11k8xSBh+hMPgOLZmtrrCbhqsmaPHjLKYnJCaQ=
+ github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f h1:lO4WD4F/rVNCu3HqELle0jiPLLBs70cWOduZpkS1E78=
+ github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f/go.mod h1:cuUVRXasLTGF7a8hSLbxyZXjz+1KgoB3wDUb6vlszIc=
+@@ -619,11 +648,13 @@
+ github.com/dimchansky/utfbom v1.1.1 h1:vV6w1AhK4VMnhBno/TPVCoK9U/LP0PkLCS9tbxHdi/U=
+ github.com/dimchansky/utfbom v1.1.1/go.mod h1:SxdoEBH5qIqFocHMyGOXVAybYJdr71b1Q/j0mACtrfE=
+ github.com/distribution/distribution/v3 v3.0.0-20221208165359-362910506bc2 h1:aBfCb7iqHmDEIp6fBvC/hQUddQfg+3qdYjwzaiP9Hnc=
++github.com/distribution/distribution/v3 v3.0.0-20221208165359-362910506bc2/go.mod h1:WHNsWjnIn2V1LYOrME7e8KxSeKunYHsxEm4am0BUtcI=
+ github.com/distribution/reference v0.5.0 h1:/FUIFXtfc/x2gpa5/VGfiGLuOIdYa1t65IKK2OFGvA0=
+ github.com/distribution/reference v0.5.0/go.mod h1:BbU0aIcezP1/5jX/8MP0YiH4SdvB5Y4f/wlDRiLyi3E=
+ github.com/dlclark/regexp2 v1.4.0 h1:F1rxgk7p4uKjwIQxBs9oAXe5CqrXlCduYEJvrF4u93E=
+ github.com/dlclark/regexp2 v1.4.0/go.mod h1:2pZnwuY/m+8K6iRw6wQdMtk+rH5tNGR1i55kozfMjCc=
+ github.com/dnaeon/go-vcr v1.2.0 h1:zHCHvJYTMh1N7xnV7zf1m1GPBF9Ad0Jk/whtQ1663qI=
++github.com/dnaeon/go-vcr v1.2.0/go.mod h1:R4UdLID7HZT3taECzJs4YgbbH6PIGXB6W/sc5OLb6RQ=
+ github.com/docker/cli v24.0.7+incompatible h1:wa/nIwYFW7BVTGa7SWPVyyXU9lgORqUb1xfI36MSkFg=
+ github.com/docker/cli v24.0.7+incompatible/go.mod h1:JLrzqnKDaYBop7H2jaqPtU4hHvMKP+vjCwu2uszcLI8=
+ github.com/docker/distribution v2.8.3+incompatible h1:AtKxIZ36LoNK51+Z6RpzLpddBirtxJnzDrHLEKxTAYk=
+@@ -641,9 +672,11 @@
+ github.com/docker/go-units v0.5.0 h1:69rxXcBk27SvSaaxTtLh/8llcHD8vYHT7WSdRZ/jvr4=
+ github.com/docker/go-units v0.5.0/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk=
+ github.com/docker/libtrust v0.0.0-20160708172513-aabc10ec26b7 h1:UhxFibDNY/bfvqU5CAUmr9zpesgbU6SWc8/B4mflAE4=
++github.com/docker/libtrust v0.0.0-20160708172513-aabc10ec26b7/go.mod h1:cyGadeNEkKy96OOhEzfZl+yxihPEzKnqJwvfuSUqbZE=
+ github.com/dustin/go-humanize v1.0.1 h1:GzkhY7T5VNhEkwH0PVJgjz+fX1rhBrR7pRT3mDkpeCY=
+ github.com/dustin/go-humanize v1.0.1/go.mod h1:Mu1zIs6XwVuF/gI1OepvI0qD18qycQx+mFykh5fBlto=
+ github.com/elazarl/goproxy v0.0.0-20230808193330-2592e75ae04a h1:mATvB/9r/3gvcejNsXKSkQ6lcIaNec2nyfOdlTBR2lU=
++github.com/elazarl/goproxy v0.0.0-20230808193330-2592e75ae04a/go.mod h1:Ro8st/ElPeALwNFlcTpWmkr6IoMFfkjXAvTHpevnDsM=
+ github.com/emicklei/go-restful/v3 v3.11.0 h1:rAQeMHw1c7zTmncogyy8VvRZwtkmkZ4FxERmMY4rD+g=
+ github.com/emicklei/go-restful/v3 v3.11.0/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc=
+ github.com/emicklei/proto v1.12.1 h1:6n/Z2pZAnBwuhU66Gs8160B8rrrYKo7h2F2sCOnNceE=
+@@ -672,18 +705,24 @@
+ github.com/felixge/httpsnoop v1.0.4 h1:NFTV2Zj1bL4mc9sqWACXbQFVBBg2W3GPvqp8/ESS2Wg=
+ github.com/felixge/httpsnoop v1.0.4/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U=
+ github.com/fortytw2/leaktest v1.3.0 h1:u8491cBMTQ8ft8aeV+adlcytMZylmA5nnwwkRZjI8vw=
++github.com/fortytw2/leaktest v1.3.0/go.mod h1:jDsjWgpAGjm2CA7WthBh/CdZYEPF31XHquHwclZch5g=
+ github.com/foxcpp/go-mockdns v1.0.0 h1:7jBqxd3WDWwi/6WhDvacvH1XsN3rOLXyHM1uhvIx6FI=
++github.com/foxcpp/go-mockdns v1.0.0/go.mod h1:lgRN6+KxQBawyIghpnl5CezHFGS9VLzvtVlwxvzXTQ4=
+ github.com/frankban/quicktest v1.14.3/go.mod h1:mgiwOwqx65TmIk1wJ6Q7wvnVMocbUorkibMOrVTHZps=
+ github.com/frankban/quicktest v1.14.4 h1:g2rn0vABPOOXmZUj+vbmUp0lPoXEMuhTpIluN0XL9UY=
++github.com/frankban/quicktest v1.14.4/go.mod h1:4ptaffx2x8+WTWXmUCuVU6aPUX1/Mz7zb5vbUoiM6w0=
+ github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo=
+ github.com/fsnotify/fsnotify v1.4.9/go.mod h1:znqG4EE+3YCdAaPaxE2ZRY/06pZUdp0tY4IgpuI1SZQ=
+ github.com/fsnotify/fsnotify v1.5.4/go.mod h1:OVB6XrOHzAwXMpEM7uPOzcehqUV2UqJxmVXmkdnm1bU=
+ github.com/fsnotify/fsnotify v1.7.0 h1:8JEhPFa5W2WU7YfeZzPNqzMP6Lwt7L2715Ggo0nosvA=
+ github.com/fsnotify/fsnotify v1.7.0/go.mod h1:40Bi/Hjc2AVfZrqy+aj+yEI+/bRxZnMJyTJwOpGvigM=
+ github.com/fxamacker/cbor/v2 v2.5.0 h1:oHsG0V/Q6E/wqTS2O1Cozzsy69nqCiguo5Q1a1ADivE=
++github.com/fxamacker/cbor/v2 v2.5.0/go.mod h1:TA1xS00nchWmaBnEIxPSE5oHLuJBAVvqrtAnWBwBCVo=
+ github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04=
+ github.com/glebarez/go-sqlite v1.20.3 h1:89BkqGOXR9oRmG58ZrzgoY/Fhy5x0M+/WV48U5zVrZ4=
++github.com/glebarez/go-sqlite v1.20.3/go.mod h1:u3N6D/wftiAzIOJtZl6BmedqxmmkDfH3q+ihjqxC9u0=
+ github.com/gliderlabs/ssh v0.3.5 h1:OcaySEmAQJgyYcArR+gGGTHCyE7nvhEMTlYY+Dp8CpY=
++github.com/gliderlabs/ssh v0.3.5/go.mod h1:8XB4KraRrX39qHhT6yxPsHedjA08I/uBVwj4xC+/+z4=
+ github.com/go-asn1-ber/asn1-ber v1.5.5 h1:MNHlNMBDgEKD4TcKr36vQN68BA00aDfjIt3/bD50WnA=
+ github.com/go-asn1-ber/asn1-ber v1.5.5/go.mod h1:hEBeB/ic+5LoWskz+yKT7vGhhPYkProFKoKdwZRWMe0=
+ github.com/go-chi/chi v4.1.2+incompatible h1:fGFk2Gmi/YKXk0OmGfBh0WgmN3XB8lVnEyNz34tQRec=
+@@ -695,6 +734,7 @@
+ github.com/go-git/go-billy/v5 v5.5.0 h1:yEY4yhzCDuMGSv83oGxiBotRzhwhNr8VZyphhiu+mTU=
+ github.com/go-git/go-billy/v5 v5.5.0/go.mod h1:hmexnoNsr2SJU1Ju67OaNz5ASJY3+sHgFRpCtpDCKow=
+ github.com/go-git/go-git-fixtures/v4 v4.3.2-0.20231010084843-55a94097c399 h1:eMje31YglSBqCdIqdhKBW8lokaMrL3uTkpGYlE2OOT4=
++github.com/go-git/go-git-fixtures/v4 v4.3.2-0.20231010084843-55a94097c399/go.mod h1:1OCfN199q1Jm3HZlxleg+Dw/mwps2Wbk9frAWm+4FII=
+ github.com/go-git/go-git/v5 v5.11.0 h1:XIZc1p+8YzypNr34itUfSvYJcv+eYdTnTvOZ2vD3cA4=
+ github.com/go-git/go-git/v5 v5.11.0/go.mod h1:6GFcX2P3NM7FPBfpePbpLd21XxsgdAt+lKqXmCUiUCY=
+ github.com/go-gl/glfw v0.0.0-20190409004039-e6da0acd62b1/go.mod h1:vR7hzQXu2zJy9AVAgeJqvqgH9Q5CA+iKCZ2gyEVpxRU=
+@@ -756,15 +796,20 @@
+ github.com/go-pkgz/expirable-cache v0.0.3 h1:rTh6qNPp78z0bQE6HDhXBHUwqnV9i09Vm6dksJLXQDc=
+ github.com/go-pkgz/expirable-cache v0.0.3/go.mod h1:+IauqN00R2FqNRLCLA+X5YljQJrwB179PfiAoMPlTlQ=
+ github.com/go-quicktest/qt v1.100.0 h1:I7iSLgIwNp0E0UnSvKJzs7ig0jg/Iq83zsZjtQNW7jY=
++github.com/go-quicktest/qt v1.100.0/go.mod h1:leyLsQ4jksGmF1KaQEyabnqGIiJTbOU5S46QegToEj4=
+ github.com/go-redis/redis/v8 v8.11.5 h1:AcZZR7igkdvfVmQTPnu9WE37LRrO/YrBH5zWyjDC0oI=
+ github.com/go-redis/redis/v8 v8.11.5/go.mod h1:gREzHqY1hg6oD9ngVRbLStwAWKhA0FEgq8Jd4h5lpwo=
+ github.com/go-rod/rod v0.114.5 h1:1x6oqnslwFVuXJbJifgxspJUd3O4ntaGhRLHt+4Er9c=
++github.com/go-rod/rod v0.114.5/go.mod h1:aiedSEFg5DwG/fnNbUOTPMTTWX3MRj6vIs/a684Mthw=
+ github.com/go-sql-driver/mysql v1.6.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LBy8hT2VhHyBg=
+ github.com/go-sql-driver/mysql v1.7.1 h1:lUIinVbN1DY0xBg0eMOzmmtGoHwWBbvnWubQUrtU8EI=
++github.com/go-sql-driver/mysql v1.7.1/go.mod h1:OXbVy3sEdcQ2Doequ6Z5BW6fXNQTmx+9S1MCJN5yJMI=
+ github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY=
+ github.com/go-task/slim-sprig v0.0.0-20210107165309-348f09dbbbc0/go.mod h1:fyg7847qk6SyHyPtNmDHnmrv/HOrqktSC+C9fM+CJOE=
+ github.com/go-task/slim-sprig v0.0.0-20230315185526-52ccab3ef572 h1:tfuBGBXKqDEevZMzYi5KSi8KkcZtzBcTgAUUtapy0OI=
++github.com/go-task/slim-sprig v0.0.0-20230315185526-52ccab3ef572/go.mod h1:9Pwr4B2jHnOSGXyyzV8ROjYa2ojvAY6HCGYYfMoC3Ls=
+ github.com/go-test/deep v1.1.0 h1:WOcxcdHcvdgThNXjw0t76K42FXTU7HpNQWHpA2HHNlg=
++github.com/go-test/deep v1.1.0/go.mod h1:5C2ZWiW0ErCdrYzpqxLbTX7MG14M9iiw8DgHncVwcsE=
+ github.com/gobuffalo/logger v1.0.6 h1:nnZNpxYo0zx+Aj9RfMPBm+x9zAU2OayFh/xrAWi34HU=
+ github.com/gobuffalo/logger v1.0.6/go.mod h1:J31TBEHR1QLV2683OXTAItYIg8pv2JMHnF/quuAbMjs=
+ github.com/gobuffalo/packd v1.0.1 h1:U2wXfRr4E9DH8IdsDLlRFwTZTK7hLfq9qT/QHXGVe/0=
+@@ -774,8 +819,10 @@
+ github.com/gobwas/glob v0.2.3 h1:A4xDbljILXROh+kObIiy5kIaPYD8e96x1tgBhUI5J+Y=
+ github.com/gobwas/glob v0.2.3/go.mod h1:d3Ez4x06l9bZtSvzIay5+Yzi0fmZzPgnTbPcKjJAkT8=
+ github.com/goccy/go-yaml v1.8.1 h1:JuZRFlqLM5cWF6A+waL8AKVuCcqvKOuhJtUQI+L3ez0=
++github.com/goccy/go-yaml v1.8.1/go.mod h1:wS4gNoLalDSJxo/SpngzPQ2BN4uuZVLCmbM4S3vd4+Y=
+ github.com/godbus/dbus/v5 v5.0.4/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA=
+ github.com/godbus/dbus/v5 v5.1.0 h1:4KLkAxT3aOY8Li4FRJe/KvhoNFFxo0m6fNuFUO8QJUk=
++github.com/godbus/dbus/v5 v5.1.0/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA=
+ github.com/godror/godror v0.24.2/go.mod h1:wZv/9vPiUib6tkoDl+AZ/QLf5YZgMravZ7jxH2eQWAE=
+ github.com/gofrs/uuid v4.4.0+incompatible h1:3qXRTX8/NbyulANqlc0lchS1gqAVxRgsuW1YrTJupqA=
+ github.com/gofrs/uuid v4.4.0+incompatible/go.mod h1:b2aQJv3Z4Fp6yNu3cdSllBxTCLRxnplIgP/c0N/04lM=
+@@ -794,6 +841,7 @@
+ github.com/golang-sql/civil v0.0.0-20190719163853-cb61b32ac6fe/go.mod h1:8vg3r2VgvsThLBIFL93Qb5yWzgyZWhEmBwUJWevAkK0=
+ github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q=
+ github.com/golang/glog v1.1.2 h1:DVjP2PbBOzHyzA+dn3WhHIq4NdVu3Q+pvivFICf/7fo=
++github.com/golang/glog v1.1.2/go.mod h1:zR+okUeTbrL6EL3xHUDxZuEtGv04p5shwip1+mL/rLQ=
+ github.com/golang/groupcache v0.0.0-20190129154638-5b532d6fd5ef/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc=
+ github.com/golang/groupcache v0.0.0-20190702054246-869f871628b6/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc=
+ github.com/golang/groupcache v0.0.0-20191227052852-215e87163ea7/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc=
+@@ -842,6 +890,7 @@
+ github.com/google/certificate-transparency-go v1.1.7 h1:IASD+NtgSTJLPdzkthwvAG1ZVbF2WtFg4IvoA68XGSw=
+ github.com/google/certificate-transparency-go v1.1.7/go.mod h1:FSSBo8fyMVgqptbfF6j5p/XNdgQftAhSmXcIxV9iphE=
+ github.com/google/flatbuffers v2.0.8+incompatible h1:ivUb1cGomAB101ZM1T0nOiWz9pSrTMoa9+EiY7igmkM=
++github.com/google/flatbuffers v2.0.8+incompatible/go.mod h1:1AeVuKshWv4vARoZatz6mlQ0JxURH0Kv5+zNeJKJCa8=
+ github.com/google/gnostic-models v0.6.9-0.20230804172637-c7be7c783f49 h1:0VpGH+cDhbDtdcweoyCVsF3fhN8kejK6rFe/2FFX2nU=
+ github.com/google/gnostic-models v0.6.9-0.20230804172637-c7be7c783f49/go.mod h1:BkkQ4L1KS1xMt2aWSPStnn55ChGC0DPOn2FQYj+f25M=
+ github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M=
+@@ -882,6 +931,7 @@
+ github.com/google/martian/v3 v3.1.0/go.mod h1:y5Zk1BBys9G+gd6Jrk0W3cC1+ELVxBWuIGO+w/tUAp0=
+ github.com/google/martian/v3 v3.2.1/go.mod h1:oBOf6HBosgwRXnUGWUB05QECsc6uvmMiJ3+6W4l/CUk=
+ github.com/google/martian/v3 v3.3.2 h1:IqNFLAmvJOgVlpdEBiQbDc2EwKW77amAycfTuWKdfvw=
++github.com/google/martian/v3 v3.3.2/go.mod h1:oBOf6HBosgwRXnUGWUB05QECsc6uvmMiJ3+6W4l/CUk=
+ github.com/google/pprof v0.0.0-20181206194817-3ea8567a2e57/go.mod h1:zfwlbNMJ+OItoe0UupaVj+oy1omPYYDuagoSzA8v9mc=
+ github.com/google/pprof v0.0.0-20190515194954-54271f7e092f/go.mod h1:zfwlbNMJ+OItoe0UupaVj+oy1omPYYDuagoSzA8v9mc=
+ github.com/google/pprof v0.0.0-20191218002539-d4f498aebedc/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM=
+@@ -899,6 +949,7 @@
+ github.com/google/pprof v0.0.0-20210609004039-a478d1d731e9/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE=
+ github.com/google/pprof v0.0.0-20210720184732-4bb14d4b1be1/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE=
+ github.com/google/pprof v0.0.0-20231023181126-ff6d637d2a7b h1:RMpPgZTSApbPf7xaVel+QkoGPRLFLrwFO89uDUHEGf0=
++github.com/google/pprof v0.0.0-20231023181126-ff6d637d2a7b/go.mod h1:czg5+yv1E0ZGTi6S6vVK1mke0fV+FaUhNGcd6VRS9Ik=
+ github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI=
+ github.com/google/s2a-go v0.1.7 h1:60BLSyTrOV4/haCDW4zb1guZItoSq8foHCXrAnjBo/o=
+ github.com/google/s2a-go v0.1.7/go.mod h1:50CgR4k1jNlWBu4UfS4AcfhVe1r6pdZPygJ3R8F0Qdw=
+@@ -906,7 +957,9 @@
+ github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510/go.mod h1:pupxD2MaaD3pAXIBCelhxNneeOaAeabZDe5s4K6zSpQ=
+ github.com/google/subcommands v1.0.1/go.mod h1:ZjhPrFU+Olkh9WazFPsl27BQ4UPiG37m3yTrtFlrHVk=
+ github.com/google/tink/go v1.7.0 h1:6Eox8zONGebBFcCBqkVmt60LaWZa6xg1cl/DwAh/J1w=
++github.com/google/tink/go v1.7.0/go.mod h1:GAUOd+QE3pgj9q8VKIGTCP33c/B7eb4NhxLcgTJZStM=
+ github.com/google/trillian v1.5.3 h1:3ioA5p09qz+U9/t2riklZtaQdZclaStp0/eQNfewNRg=
++github.com/google/trillian v1.5.3/go.mod h1:p4tcg7eBr7aT6DxrAoILpc3uXNfcuAvZSnQKonVg+Eo=
+ github.com/google/uuid v1.0.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
+ github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
+ github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
+@@ -962,6 +1015,7 @@
+ github.com/grpc-ecosystem/grpc-gateway v1.16.0 h1:gmcG1KaJ57LophUzW0Hy8NmPhnMZb4M0+kPpLofRdBo=
+ github.com/grpc-ecosystem/grpc-gateway v1.16.0/go.mod h1:BDjrQk3hbvj6Nolgz8mAMFbcEtjT1g+wF4CSlocrBnw=
+ github.com/grpc-ecosystem/grpc-gateway/v2 v2.18.0 h1:RtRsiaGvWxcwd8y3BiRZxsylPT8hLWZ5SPcfI+3IDNk=
++github.com/grpc-ecosystem/grpc-gateway/v2 v2.18.0/go.mod h1:TzP6duP4Py2pHLVPPQp42aoYI92+PCrVotyR5e8Vqlk=
+ github.com/hashicorp/consul/api v1.1.0/go.mod h1:VmuI/Lkw1nC05EYQWNKwWGbkg+FbDBtguAZLlVdkD9Q=
+ github.com/hashicorp/consul/sdk v0.1.1/go.mod h1:VKf9jXwCTEY1QZP2MOLRhb5i/I/ssyNV1vwHyQBF0x8=
+ github.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4=
+@@ -974,6 +1028,7 @@
+ github.com/hashicorp/go-getter v1.7.2/go.mod h1:W7TalhMmbPmsSMdNjD0ZskARur/9GJ17cfHTRtXV744=
+ github.com/hashicorp/go-hclog v0.9.2/go.mod h1:5CU+agLiy3J7N7QjHK5d05KxGsuXiQLrjA0H7acj2lQ=
+ github.com/hashicorp/go-hclog v1.5.0 h1:bI2ocEMgcVlz55Oj1xZNBsVi900c7II+fWDyV9o+13c=
++github.com/hashicorp/go-hclog v1.5.0/go.mod h1:W4Qnvbt70Wk/zYJryRzDRU/4r0kIg0PVHBcfoyhpF5M=
+ github.com/hashicorp/go-immutable-radix v1.0.0/go.mod h1:0y9vanUI8NX6FsYoO3zeMjhV/C5i9g4Q3DwcSNZ4P60=
+ github.com/hashicorp/go-msgpack v0.5.3/go.mod h1:ahLV/dePpqEmjfWmKiqvPkv/twdG7iPBM1vqhUKIvfM=
+ github.com/hashicorp/go-multierror v1.0.0/go.mod h1:dHtQlpGsu+cZNNAkkCN/P3hoUDHhCYQXV3UM06sGGrk=
+@@ -983,12 +1038,16 @@
+ github.com/hashicorp/go-retryablehttp v0.7.5/go.mod h1:Jy/gPYAdjqffZ/yFGCFV2doI5wjtH1ewM9u8iYVjtX8=
+ github.com/hashicorp/go-rootcerts v1.0.0/go.mod h1:K6zTfqpRlCUIjkwsN4Z+hiSfzSTQa6eBIzfwKfwNnHU=
+ github.com/hashicorp/go-rootcerts v1.0.2 h1:jzhAVGtqPKbwpyCPELlgNWhE1znq+qwJtW5Oi2viEzc=
++github.com/hashicorp/go-rootcerts v1.0.2/go.mod h1:pqUvnprVnM5bf7AOirdbb01K4ccR319Vf4pU3K5EGc8=
+ github.com/hashicorp/go-safetemp v1.0.0 h1:2HR189eFNrjHQyENnQMMpCiBAsRxzbTMIgBhEyExpmo=
+ github.com/hashicorp/go-safetemp v1.0.0/go.mod h1:oaerMy3BhqiTbVye6QuFhFtIceqFoDHxNAB65b+Rj1I=
+ github.com/hashicorp/go-secure-stdlib/parseutil v0.1.7 h1:UpiO20jno/eV1eVZcxqWnUohyKRe1g8FPV/xH1s/2qs=
++github.com/hashicorp/go-secure-stdlib/parseutil v0.1.7/go.mod h1:QmrqtbKuxxSWTN3ETMPuB+VtEiBJ/A9XhoYGv8E1uD8=
+ github.com/hashicorp/go-secure-stdlib/strutil v0.1.2 h1:kes8mmyCpxJsI7FTwtzRqEy9CdjCtrXrXGuOpxEA7Ts=
++github.com/hashicorp/go-secure-stdlib/strutil v0.1.2/go.mod h1:Gou2R9+il93BqX25LAKCLuM+y9U2T4hlwvT1yprcna4=
+ github.com/hashicorp/go-sockaddr v1.0.0/go.mod h1:7Xibr9yA9JjQq1JpNB2Vw7kxv8xerXegt+ozgdvDeDU=
+ github.com/hashicorp/go-sockaddr v1.0.5 h1:dvk7TIXCZpmfOlM+9mlcrWmWjw/wlKT+VDq2wMvfPJU=
++github.com/hashicorp/go-sockaddr v1.0.5/go.mod h1:uoUUmtwU7n9Dv3O4SNLeFvg0SxQ3lyjsj6+CCykpaxI=
+ github.com/hashicorp/go-syslog v1.0.0/go.mod h1:qPfqrKkXGihmCqbJM2mZgkZGvKG1dFdvsLplgctolz4=
+ github.com/hashicorp/go-uuid v1.0.0/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro=
+ github.com/hashicorp/go-uuid v1.0.1/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro=
+@@ -1000,6 +1059,7 @@
+ github.com/hashicorp/golang-lru v0.5.0/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8=
+ github.com/hashicorp/golang-lru v0.5.1/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8=
+ github.com/hashicorp/golang-lru v1.0.2 h1:dV3g9Z/unq5DpblPpw+Oqcv4dU/1omnb4Ok8iPY6p1c=
++github.com/hashicorp/golang-lru v1.0.2/go.mod h1:iADmTwqILo4mZ8BN3D2Q6+9jd8WM5uGBxy+E8yxSoD4=
+ github.com/hashicorp/golang-lru/v2 v2.0.7 h1:a+bsQ5rvGLjzHuww6tVxozPZFVghXaHOwFs4luLUK2k=
+ github.com/hashicorp/golang-lru/v2 v2.0.7/go.mod h1:QeFd9opnmA6QUJc5vARoKUSoFhyfM2/ZepoAG6RGpeM=
+ github.com/hashicorp/hcl v1.0.0/go.mod h1:E5yfLk+7swimpb2L/Alb/PJmXilQ/rhwaUYs4T20WEQ=
+@@ -1012,7 +1072,9 @@
+ github.com/hashicorp/memberlist v0.1.3/go.mod h1:ajVTdAv/9Im8oMAAj5G31PhhMCZJV2pPBoIllUwCN7I=
+ github.com/hashicorp/serf v0.8.2/go.mod h1:6hOLApaqBFA1NXqRQAsxw9QxuDEvNxSQRwA/JwenrHc=
+ github.com/hashicorp/vault/api v1.10.0 h1:/US7sIjWN6Imp4o/Rj1Ce2Nr5bki/AXi9vAW3p2tOJQ=
++github.com/hashicorp/vault/api v1.10.0/go.mod h1:jo5Y/ET+hNyz+JnKDt8XLAdKs+AM0G5W0Vp1IrFI8N8=
+ github.com/howeyc/gopass v0.0.0-20210920133722-c8aef6fb66ef h1:A9HsByNhogrvm9cWb28sjiS3i7tcKCkflWFEkHfuAgM=
++github.com/howeyc/gopass v0.0.0-20210920133722-c8aef6fb66ef/go.mod h1:lADxMC39cJJqL93Duh1xhAs4I2Zs8mKS89XWXFGp9cs=
+ github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU=
+ github.com/huandu/xstrings v1.3.1/go.mod h1:y5/lhBue+AyNmUVz9RLU9xbLR0o4KIIExikq4ovT0aE=
+ github.com/huandu/xstrings v1.3.2/go.mod h1:y5/lhBue+AyNmUVz9RLU9xbLR0o4KIIExikq4ovT0aE=
+@@ -1035,12 +1097,15 @@
+ github.com/jedisct1/go-minisign v0.0.0-20230811132847-661be99b8267 h1:TMtDYDHKYY15rFihtRfck/bfFqNfvcabqvXAFQfAUpY=
+ github.com/jedisct1/go-minisign v0.0.0-20230811132847-661be99b8267/go.mod h1:h1nSAbGFqGVzn6Jyl1R/iCcBUHN4g+gW1u9CoBTrb9E=
+ github.com/jellydator/ttlcache/v3 v3.1.0 h1:0gPFG0IHHP6xyUyXq+JaD8fwkDCqgqwohXNJBcYE71g=
++github.com/jellydator/ttlcache/v3 v3.1.0/go.mod h1:hi7MGFdMAwZna5n2tuvh63DvFLzVKySzCVW6+0gA2n4=
+ github.com/jeremija/gosubmit v0.2.7 h1:At0OhGCFGPXyjPYAsCchoBUhE099pcBXmsb4iZqROIc=
++github.com/jeremija/gosubmit v0.2.7/go.mod h1:Ui+HS073lCFREXBbdfrJzMB57OI/bdxTiLtrDHHhFPI=
+ github.com/jmespath/go-jmespath v0.4.0 h1:BEgLn5cpjn8UN1mAw4NjwDrS35OdebyEtFe+9YPoQUg=
+ github.com/jmespath/go-jmespath v0.4.0/go.mod h1:T8mJZnbsbmF+m6zOOFylbeCJqk5+pHWvzYPziyZiYoo=
+ github.com/jmespath/go-jmespath/internal/testify v1.5.1 h1:shLQSRRSCCPj3f2gpwzGwWFoC7ycTf1rcQZHOlsJ6N8=
+ github.com/jmespath/go-jmespath/internal/testify v1.5.1/go.mod h1:L3OGu8Wl2/fWfCI6z80xFu9LTZmf1ZRjMHUOPmWr69U=
+ github.com/jmhodges/clock v1.2.0 h1:eq4kys+NI0PLngzaHEe7AmPT90XMGIEySD1JfV1PDIs=
++github.com/jmhodges/clock v1.2.0/go.mod h1:qKjhA7x7u/lQpPB1XAqX1b1lCI/w3/fNuYpI/ZjLynI=
+ github.com/jmoiron/sqlx v1.3.5 h1:vFFPA71p1o5gAeqtEAwLU4dnX2napprKtHr7PYIcN3g=
+ github.com/jmoiron/sqlx v1.3.5/go.mod h1:nRVWtLre0KfCLJvgxzCsLVMogSvQ1zNJtpYr2Ccp0mQ=
+ github.com/jonboulle/clockwork v0.1.0/go.mod h1:Ii8DK3G1RaLaWxj9trq07+26W01tbo22gdxWY5EU2bo=
+@@ -1059,8 +1124,6 @@
+ github.com/julienschmidt/httprouter v1.2.0/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7VTCxuUUipMqKk8s4w=
+ github.com/karrick/godirwalk v1.16.1 h1:DynhcF+bztK8gooS0+NDJFrdNZjJ3gzVzC545UNA9iw=
+ github.com/karrick/godirwalk v1.16.1/go.mod h1:j4mkqPuvaLI8mp1DroR3P6ad7cyYd4c1qeJ3RV7ULlk=
+-github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51 h1:Z9n2FFNUXsshfwJMBgNA0RU6/i7WVaAegv3PtuIHPMs=
+-github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51/go.mod h1:CzGEWj7cYgsdH8dAjBGEr58BoE7ScuLd+fwFZ44+/x8=
+ github.com/kevinburke/ssh_config v1.2.0 h1:x584FjTGwHzMwvHx18PXxbBVzfnxogHaAReU4gf13a4=
+ github.com/kevinburke/ssh_config v1.2.0/go.mod h1:CT57kijsi8u/K/BOFA39wgDQJ9CxiF4nAY/ojJ6r6mM=
+ github.com/kisielk/errcheck v1.1.0/go.mod h1:EZBBE59ingxPouuu3KfxchcWSUPOHkagtvWXihfKN4Q=
+@@ -1167,8 +1230,8 @@
+ github.com/mattn/go-runewidth v0.0.15/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w=
+ github.com/mattn/go-sqlite3 v1.14.6/go.mod h1:NyWgC/yNuGj7Q9rpYnZvas74GogHl5/Z4A/KQRfk6bU=
+ github.com/mattn/go-sqlite3 v1.14.15/go.mod h1:2eHXhiwb8IkHr+BDWZGa96P6+rkvnG63S2DGjv9HUNg=
+-github.com/mattn/go-sqlite3 v1.14.18 h1:JL0eqdCOq6DJVNPSvArO/bIV9/P7fbGrV00LZHc+5aI=
+-github.com/mattn/go-sqlite3 v1.14.18/go.mod h1:2eHXhiwb8IkHr+BDWZGa96P6+rkvnG63S2DGjv9HUNg=
++github.com/mattn/go-sqlite3 v1.14.22 h1:2gZY6PC6kBnID23Tichd1K+Z0oS6nE/XwU+Vz/5o4kU=
++github.com/mattn/go-sqlite3 v1.14.22/go.mod h1:Uh1q+B4BYcTPb+yiD3kU8Ct7aC0hY9fxUwlHK0RXw+Y=
+ github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0=
+ github.com/matttproud/golang_protobuf_extensions/v2 v2.0.0 h1:jWpvCLoY8Z/e3VKvlsiIGKtc+UG6U5vzxaoagmhXfyg=
+ github.com/matttproud/golang_protobuf_extensions/v2 v2.0.0/go.mod h1:QUyp042oQthUoa9bqDv0ER0wrtXnBruoNd7aNjkbP+k=
+@@ -1176,6 +1239,7 @@
+ github.com/microsoft/go-rustaudit v0.0.0-20220808201409-204dfee52032/go.mod h1:vYT9HE7WCvL64iVeZylKmCsWKfE+JZ8105iuh2Trk8g=
+ github.com/miekg/dns v1.0.14/go.mod h1:W1PPwlIAgtquWBMBEV9nkV9Cazfe8ScdGz/Lj7v3Nrg=
+ github.com/miekg/dns v1.1.55 h1:GoQ4hpsj0nFLYe+bWiCToyrBEJXkQfOOIvFGFy0lEgo=
++github.com/miekg/dns v1.1.55/go.mod h1:uInx36IzPl7FYnDcMeVWxj9byh7DutNykX4G9Sj60FY=
+ github.com/miekg/pkcs11 v1.0.3-0.20190429190417-a667d056470f/go.mod h1:XsNlhZGX73bx86s2hdc/FuaLm2CPZJemRLMA+WTFxgs=
+ github.com/miekg/pkcs11 v1.1.1 h1:Ugu9pdy6vAYku5DEpVWVFPYnzV+bxB+iRdbuFSu7TvU=
+ github.com/miekg/pkcs11 v1.1.1/go.mod h1:XsNlhZGX73bx86s2hdc/FuaLm2CPZJemRLMA+WTFxgs=
+@@ -1240,6 +1304,8 @@
+ github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq1c1nUAm88MOHcQC9l5mIlSMApZMrHA=
+ github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ=
+ github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U=
++github.com/ncruces/go-strftime v0.1.9 h1:bY0MQC28UADQmHmaF5dgpLmImcShSi2kHU9XLdhx/f4=
++github.com/ncruces/go-strftime v0.1.9/go.mod h1:Fwc5htZGVVkseilnfgOVb9mKy6w1naJmn9CehxcKcls=
+ github.com/nelsam/hel/v2 v2.3.2/go.mod h1:1ZTGfU2PFTOd5mx22i5O0Lc2GY933lQ2wb/ggy+rL3w=
+ github.com/nelsam/hel/v2 v2.3.3/go.mod h1:1ZTGfU2PFTOd5mx22i5O0Lc2GY933lQ2wb/ggy+rL3w=
+ github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLANZcx1PVRCS0qkT7pwLkGfwJo4zjcN/Tysno=
+@@ -1269,11 +1335,13 @@
+ github.com/onsi/ginkgo v1.16.5/go.mod h1:+E8gABHa3K6zRBolWtd+ROzc/U5bkGt0FwiG042wbpU=
+ github.com/onsi/ginkgo/v2 v2.1.3/go.mod h1:vw5CSIxN1JObi/U8gcbwft7ZxR2dgaR70JSE3/PpL4c=
+ github.com/onsi/ginkgo/v2 v2.13.1 h1:LNGfMbR2OVGBfXjvRZIZ2YCTQdGKtPLvuI1rMCCj3OU=
++github.com/onsi/ginkgo/v2 v2.13.1/go.mod h1:XStQ8QcGwLyF4HdfcZB8SFOS/MWCgDuXMSBe6zrvLgM=
+ github.com/onsi/gomega v1.7.1/go.mod h1:XdKZgCCFLUoM/7CFJVPcG8C1xQ1AJ0vpAezJrB7JYyY=
+ github.com/onsi/gomega v1.10.1/go.mod h1:iN09h71vgCQne3DLsj+A5owkum+a2tYe+TOCB1ybHNo=
+ github.com/onsi/gomega v1.17.0/go.mod h1:HnhC7FXeEQY45zxNK3PPoIUhzk/80Xly9PcubAlGdZY=
+ github.com/onsi/gomega v1.19.0/go.mod h1:LY+I3pBVzYsTBU1AnDwOSxaYi9WoWiqgwooUqq9yPro=
+ github.com/onsi/gomega v1.30.0 h1:hvMK7xYz4D3HapigLTeGdId/NcfQx1VHMJc60ew99+8=
++github.com/onsi/gomega v1.30.0/go.mod h1:9sxs+SwGrKI0+PWe4Fxa9tFQQBG5xSsSbMXOI8PPpoQ=
+ github.com/open-policy-agent/opa v0.59.0 h1:1WFU/KUhJAr3qatm0Lf8Ea5jp10ZmlE2M07oaLiHypg=
+ github.com/open-policy-agent/opa v0.59.0/go.mod h1:rdJSkEc4oQ+0074/3Fsgno5bkPsYxTjU5aLNmMujIvI=
+ github.com/opencontainers/distribution-spec/specs-go v0.0.0-20230117141039-067a0f5b0e25 h1:DpApB9YKcjGF1Lc8FmEAD5Xa1LRhVftJGgpe3+47Vc0=
+@@ -1295,6 +1363,7 @@
+ github.com/oras-project/artifacts-spec v1.0.0-rc.2 h1:9SMCNSxkJEHqWGDiMCuy6TXHgvjgwXGdXZZGXLKQvVE=
+ github.com/oras-project/artifacts-spec v1.0.0-rc.2/go.mod h1:Xch2aLzSwtkhbFFN6LUzTfLtukYvMMdXJ4oZ8O7BOdc=
+ github.com/otiai10/copy v1.14.0 h1:dCI/t1iTdYGtkvCuBG2BgR6KZa83PTclw4U5n2wAllU=
++github.com/otiai10/copy v1.14.0/go.mod h1:ECfuL02W+/FkTWZWgQqXPWZgW9oeKCSQ5qVfSc4qc4w=
+ github.com/owenrumney/go-sarif v1.1.1/go.mod h1:dNDiPlF04ESR/6fHlPyq7gHKmrM0sHUvAGjsoh8ZH0U=
+ github.com/owenrumney/go-sarif/v2 v2.3.0 h1:wP5yEpI53zr0v5cBmagXzLbHZp9Oylyo3AJDpfLBITs=
+ github.com/owenrumney/go-sarif/v2 v2.3.0/go.mod h1:MSqMMx9WqlBSY7pXoOZWgEsVB4FDNfhcaXDA1j6Sr+w=
+@@ -1377,18 +1446,22 @@
+ github.com/rogpeppe/go-internal v1.8.0/go.mod h1:WmiCO8CzOY8rg0OYDC4/i/2WRWAB6poM+XZ2dLUbcbE=
+ github.com/rogpeppe/go-internal v1.9.0/go.mod h1:WtVeX8xhTBvf0smdhujwtBcq4Qrzq/fJaraNFVN+nFs=
+ github.com/rogpeppe/go-internal v1.11.0 h1:cWPaGQEPrBb5/AsnsZesgZZ9yb1OQ+GOISoDNXVBh4M=
++github.com/rogpeppe/go-internal v1.11.0/go.mod h1:ddIwULY96R17DhadqLgMfk9H9tvdUzkipdSkR5nkCZA=
+ github.com/rs/cors v1.10.1 h1:L0uuZVXIKlI1SShY2nhFfo44TYvDPQ1w4oFkUJNfhyo=
++github.com/rs/cors v1.10.1/go.mod h1:XyqrcTp5zjWr1wsJ8PIRZssZ8b/WMcMf71DJnit4EMU=
+ github.com/rs/xid v1.5.0/go.mod h1:trrq9SKmegXys3aeAKXMUTdJsYXVwGY3RLcfgqegfbg=
+ github.com/rs/zerolog v1.31.0 h1:FcTR3NnLWW+NnTwwhFWiJSZr4ECLpqCm6QsEnyvbV4A=
+ github.com/rs/zerolog v1.31.0/go.mod h1:/7mN4D5sKwJLZQ2b/znpjC3/GQWY/xaDXUM0kKWRHss=
+ github.com/rubenv/sql-migrate v1.3.1 h1:Vx+n4Du8X8VTYuXbhNxdEUoh6wiJERA0GlWocR5FrbA=
+ github.com/rubenv/sql-migrate v1.3.1/go.mod h1:YzG/Vh82CwyhTFXy+Mf5ahAiiEOpAlHurg+23VEzcsk=
+ github.com/russross/blackfriday v1.6.0 h1:KqfZb0pUVN2lYqZUYRddxF4OR8ZMURnJIG5Y3VRLtww=
++github.com/russross/blackfriday v1.6.0/go.mod h1:ti0ldHuxg49ri4ksnFxlkCfN+hvslNlmVHqNRXXJNAY=
+ github.com/russross/blackfriday/v2 v2.0.1/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM=
+ github.com/russross/blackfriday/v2 v2.1.0 h1:JIOH55/0cWyOuilr9/qlrm0BSXldqnqwMsf35Ld67mk=
+ github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM=
+ github.com/ryanuber/columnize v0.0.0-20160712163229-9b3edd62028f/go.mod h1:sm1tb6uqfes/u+d4ooFouqFdy9/2g9QGwK3SQygK0Ts=
+ github.com/ryanuber/go-glob v1.0.0 h1:iQh3xXAumdQ+4Ufa5b25cRpC5TYKlno6hsv6Cb3pkBk=
++github.com/ryanuber/go-glob v1.0.0/go.mod h1:807d1WSdnB0XRJzKNil9Om6lcp/3a0v4qIHxIXzX/Yc=
+ github.com/sagikazarmark/locafero v0.3.0 h1:zT7VEGWC2DTflmccN/5T1etyKvxSxpHsjb9cJvm4SvQ=
+ github.com/sagikazarmark/locafero v0.3.0/go.mod h1:w+v7UsPNFwzF1cHuOajOOzoq4U7v/ig1mpRjqV+Bu1U=
+ github.com/sagikazarmark/slog-shim v0.1.0 h1:diDBnUNK9N/354PgrxMywXnAwEr1QZcOr6gto+ugjYE=
+@@ -1400,6 +1473,7 @@
+ github.com/sassoftware/relic v7.2.1+incompatible h1:Pwyh1F3I0r4clFJXkSI8bOyJINGqpgjJU3DYAZeI05A=
+ github.com/sassoftware/relic v7.2.1+incompatible/go.mod h1:CWfAxv73/iLZ17rbyhIEq3K9hs5w6FpNMdUT//qR+zk=
+ github.com/sassoftware/relic/v7 v7.6.1 h1:O5s8ewCgq5QYNpv45dK4u6IpBmDM9RIcsbf/G1uXepQ=
++github.com/sassoftware/relic/v7 v7.6.1/go.mod h1:NxwtWxWxlUa9as2qZi635Ye6bBT/tGnMALLq7dSfOOU=
+ github.com/sean-/seed v0.0.0-20170313163322-e2103e2c3529/go.mod h1:DxrIzT+xaE7yg65j358z/aeFdxmN0P9QXhEzd20vsDc=
+ github.com/secure-systems-lab/go-securesystemslib v0.7.0 h1:OwvJ5jQf9LnIAS83waAjPbcMsODrTQUpJ02eNLUoxBg=
+ github.com/secure-systems-lab/go-securesystemslib v0.7.0/go.mod h1:/2gYnlnHVQ6xeGtfIqFy7Do03K4cdCY0A/GlJLDKLHI=
+@@ -1423,9 +1497,13 @@
+ github.com/sigstore/sigstore v1.7.6 h1:zB0woXx+3Bp7dk7AjklHF1VhXBdCs84VXkZbp0IHLv8=
+ github.com/sigstore/sigstore v1.7.6/go.mod h1:FJE+NpEZIs4QKqZl4B2RtaVLVDcDtocAwTiNlexeBkY=
+ github.com/sigstore/sigstore/pkg/signature/kms/aws v1.7.6 h1:WzZExOcFanrFfCi7SUgkBtJicWnSNziBD9nSSQIrqhc=
++github.com/sigstore/sigstore/pkg/signature/kms/aws v1.7.6/go.mod h1:3zOHOLHnCE6EXyVH+6Z/lC9O1RDsbmR045NQ1DogiHw=
+ github.com/sigstore/sigstore/pkg/signature/kms/azure v1.7.6 h1:wsPt9kNXF1ZZyae2wO35NLsK+cjWqPGpuPaDdXzRe0g=
++github.com/sigstore/sigstore/pkg/signature/kms/azure v1.7.6/go.mod h1:LH+ct6D77J8Ks6PXijMYYhmlQ1mbqKHbmy7+Sw5/Woc=
+ github.com/sigstore/sigstore/pkg/signature/kms/gcp v1.7.6 h1:aMVT9XXFQEnBtJ6szzanyAdKT5gFK4emN+jLSlFlOso=
++github.com/sigstore/sigstore/pkg/signature/kms/gcp v1.7.6/go.mod h1:Hwhlx8JSZJF1R27JlwW/Bl2h40reG3MfKANREtBI0L8=
+ github.com/sigstore/sigstore/pkg/signature/kms/hashivault v1.7.6 h1:TdSHzcFtPJxbk4B+huWC6GDq7OpgHmLg18inRo9u70I=
++github.com/sigstore/sigstore/pkg/signature/kms/hashivault v1.7.6/go.mod h1:/l/PzSbTOuIAtglOwUdlzzYvjIZ2WyaBpt5722JTmLY=
+ github.com/sigstore/timestamp-authority v1.2.0 h1:Ffk10QsHxu6aLwySQ7WuaoWkD63QkmcKtozlEFot/VI=
+ github.com/sigstore/timestamp-authority v1.2.0/go.mod h1:ojKaftH78Ovfow9DzuNl5WgTCEYSa4m5622UkKDHRXc=
+ github.com/sirupsen/logrus v1.2.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo=
+@@ -1438,6 +1516,7 @@
+ github.com/skratchdot/open-golang v0.0.0-20200116055534-eef842397966 h1:JIAuq3EEf9cgbU6AtGPK4CTG3Zf6CKMNqf0MHTggAUA=
+ github.com/skratchdot/open-golang v0.0.0-20200116055534-eef842397966/go.mod h1:sUM3LWHvSMaG192sy56D9F7CNvL7jUJVXoqM1QKLnog=
+ github.com/smallstep/assert v0.0.0-20200723003110-82e2b9b3b262 h1:unQFBIznI+VYD1/1fApl1A+9VcBk+9dcqGfnePY87LY=
++github.com/smallstep/assert v0.0.0-20200723003110-82e2b9b3b262/go.mod h1:MyOHs9Po2fbM1LHej6sBUT8ozbxmMOFG+E+rx/GSGuc=
+ github.com/smarty/assertions v1.15.0 h1:cR//PqUBUiQRakZWqBiFFQ9wb8emQGDb0HeGdqGByCY=
+ github.com/smarty/assertions v1.15.0/go.mod h1:yABtdzeQs6l1brC900WlRNwj6ZR55d7B+E8C6HtKdec=
+ github.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d/go.mod h1:OnSkiWE9lh6wB0YB77sQom3nweQdgAjqCqsofrRNTgc=
+@@ -1447,6 +1526,7 @@
+ github.com/smartystreets/goconvey v1.8.1/go.mod h1:+/u4qLyY6x1jReYOp7GOM2FSt8aP9CzCZL03bI28W60=
+ github.com/soheilhy/cmux v0.1.4/go.mod h1:IM3LyeVVIOuxMH7sFAkER9+bJ4dT7Ms6E4xg4kGIyLM=
+ github.com/sosedoff/gitkit v0.4.0 h1:opyQJ/h9xMRLsz2ca/2CRXtstePcpldiZN8DpLLF8Os=
++github.com/sosedoff/gitkit v0.4.0/go.mod h1:V3EpGZ0nvCBhXerPsbDeqtyReNb48cwP9KtkUYTKT5I=
+ github.com/sosodev/duration v1.1.0 h1:kQcaiGbJaIsRqgQy7VGlZrVw1giWO+lDoX3MCPnpVO4=
+ github.com/sosodev/duration v1.1.0/go.mod h1:RQIBBX0+fMLc/D9+Jb/fwvVmo0eZvDDEERAikUR6SDg=
+ github.com/sourcegraph/conc v0.3.0 h1:OQTbbt6P72L20UqAkXXuLOj79LfEanQ+YQFNpLA9ySo=
+@@ -1517,6 +1597,7 @@
+ github.com/tchap/go-patricia/v2 v2.3.1 h1:6rQp39lgIYZ+MHmdEq4xzuk1t7OdC35z/xm0BGhTkes=
+ github.com/tchap/go-patricia/v2 v2.3.1/go.mod h1:VZRHKAb53DLaG+nA9EaYYiaEx6YztwDlLElMsnSHD4k=
+ github.com/terminalstatic/go-xsd-validate v0.1.5 h1:RqpJnf6HGE2CB/lZB1A8BYguk8uRtcvYAPLCF15qguo=
++github.com/terminalstatic/go-xsd-validate v0.1.5/go.mod h1:18lsvYFofBflqCrvo1umpABZ99+GneNTw2kEEc8UPJw=
+ github.com/tetratelabs/wazero v1.2.1 h1:J4X2hrGzJvt+wqltuvcSjHQ7ujQxA9gb6PeMs4qlUWs=
+ github.com/tetratelabs/wazero v1.2.1/go.mod h1:wYx2gNRg8/WihJfSDxA1TIL8H+GkfLYm+bIfbblu9VQ=
+ github.com/thales-e-security/pool v0.0.2 h1:RAPs4q2EbWsTit6tpzuvTFlgFRJ3S8Evf5gtvVDbmPg=
+@@ -1548,9 +1629,11 @@
+ github.com/vektah/gqlparser/v2 v2.5.10 h1:6zSM4azXC9u4Nxy5YmdmGu4uKamfwsdKTwp5zsEealU=
+ github.com/vektah/gqlparser/v2 v2.5.10/go.mod h1:1rCcfwB2ekJofmluGWXMSEnPMZgbxzwj6FaZ/4OT8Cc=
+ github.com/veraison/go-cose v1.2.0 h1:Ok0Hr3GMAf8K/1NB4sV65QGgCiukG1w1QD+H5tmt0Ow=
++github.com/veraison/go-cose v1.2.0/go.mod h1:7ziE85vSq4ScFTg6wyoMXjucIGOf4JkFEZi/an96Ct4=
+ github.com/vmihailenco/msgpack/v4 v4.3.12/go.mod h1:gborTTJjAo/GWTqqRjrLCn9pgNN+NXzzngzBKDPIqw4=
+ github.com/vmihailenco/tagparser v0.1.1/go.mod h1:OeAg3pn3UbLjkWt+rN9oFYB6u/cQgqMEUPoW2WPyhdI=
+ github.com/x448/float16 v0.8.4 h1:qLwI1I70+NjRFUR3zs1JPUCgaCXSh3SW62uAKT1mSBM=
++github.com/x448/float16 v0.8.4/go.mod h1:14CWIYCyZA/cWjXOioeEpHeN/83MdbZDRQHoFcYsOfg=
+ github.com/xanzy/go-gitlab v0.94.0 h1:GmBl2T5zqUHqyjkxFSvsT7CbelGdAH/dmBqUBqS+4BE=
+ github.com/xanzy/go-gitlab v0.94.0/go.mod h1:ETg8tcj4OhrB84UEgeE8dSuV/0h4BBL1uOV/qK0vlyI=
+ github.com/xanzy/ssh-agent v0.3.3 h1:+/15pJfg/RsTxqYcX6fHqOXZwwMP+2VyYWJeWM2qQFM=
+@@ -1577,10 +1660,15 @@
+ github.com/yashtewari/glob-intersection v0.2.0/go.mod h1:LK7pIC3piUjovexikBbJ26Yml7g8xa5bsjfx2v1fwok=
+ github.com/youmark/pkcs8 v0.0.0-20181117223130-1be2e3e5546d/go.mod h1:rHwXgn7JulP+udvsHwJoVG1YGAP6VLg4y9I5dyZdqmA=
+ github.com/ysmood/fetchup v0.2.3 h1:ulX+SonA0Vma5zUFXtv52Kzip/xe7aj4vqT5AJwQ+ZQ=
++github.com/ysmood/fetchup v0.2.3/go.mod h1:xhibcRKziSvol0H1/pj33dnKrYyI2ebIvz5cOOkYGns=
+ github.com/ysmood/goob v0.4.0 h1:HsxXhyLBeGzWXnqVKtmT9qM7EuVs/XOgkX7T6r1o1AQ=
++github.com/ysmood/goob v0.4.0/go.mod h1:u6yx7ZhS4Exf2MwciFr6nIM8knHQIE22lFpWHnfql18=
+ github.com/ysmood/got v0.34.1 h1:IrV2uWLs45VXNvZqhJ6g2nIhY+pgIG1CUoOcqfXFl1s=
++github.com/ysmood/got v0.34.1/go.mod h1:yddyjq/PmAf08RMLSwDjPyCvHvYed+WjHnQxpH851LM=
+ github.com/ysmood/gson v0.7.3 h1:QFkWbTH8MxyUTKPkVWAENJhxqdBa4lYTQWqZCiLG6kE=
++github.com/ysmood/gson v0.7.3/go.mod h1:3Kzs5zDl21g5F/BlLTNcuAGAYLKt2lV5G8D1zF3RNmg=
+ github.com/ysmood/leakless v0.8.0 h1:BzLrVoiwxikpgEQR0Lk8NyBN5Cit2b1z+u0mgL4ZJak=
++github.com/ysmood/leakless v0.8.0/go.mod h1:R8iAXPRaG97QJwqxs74RdwzcRHT1SWCGTNqY8q0JvMQ=
+ github.com/yuin/goldmark v1.1.25/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
+ github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
+ github.com/yuin/goldmark v1.1.30/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
+@@ -1590,10 +1678,15 @@
+ github.com/yuin/goldmark v1.4.0/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k=
+ github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY=
+ github.com/yuin/gopher-lua v1.1.0 h1:BojcDhfyDWgU2f2TOzYK/g5p2gxMrku8oupLDqlnSqE=
++github.com/yuin/gopher-lua v1.1.0/go.mod h1:GBR0iDaNXjAgGg9zfCvksxSRnQx76gclCIb7kdAd1Pw=
+ github.com/yvasiyarov/go-metrics v0.0.0-20140926110328-57bccd1ccd43 h1:+lm10QQTNSBd8DVTNGHx7o/IKu9HYDvLMffDhbyLccI=
++github.com/yvasiyarov/go-metrics v0.0.0-20140926110328-57bccd1ccd43/go.mod h1:aX5oPXxHm3bOH+xeAttToC8pqch2ScQN/JoXYupl6xs=
+ github.com/yvasiyarov/gorelic v0.0.0-20141212073537-a9bba5b9ab50 h1:hlE8//ciYMztlGpl/VA+Zm1AcTPHYkHJPbHqE6WJUXE=
++github.com/yvasiyarov/gorelic v0.0.0-20141212073537-a9bba5b9ab50/go.mod h1:NUSPSUX/bi6SeDMUh6brw0nXpxHnc96TguQh0+r/ssA=
+ github.com/yvasiyarov/newrelic_platform_go v0.0.0-20140908184405-b21fdbd4370f h1:ERexzlUfuTvpE74urLSbIQW0Z/6hF9t8U4NsJLaioAY=
++github.com/yvasiyarov/newrelic_platform_go v0.0.0-20140908184405-b21fdbd4370f/go.mod h1:GlGEuHIJweS1mbCqG+7vt2nvWLzLLnRHbXz5JKd/Qbg=
+ github.com/zalando/go-keyring v0.2.2 h1:f0xmpYiSrHtSNAVgwip93Cg8tuF45HJM6rHq/A5RI/4=
++github.com/zalando/go-keyring v0.2.2/go.mod h1:sI3evg9Wvpw3+n4SqplGSJUMwtDeROfD4nsFz4z9PG0=
+ github.com/zclconf/go-cty v1.10.0/go.mod h1:vVKLxnk3puL4qRAv72AO+W99LUD4da90g3uUAzyuvAk=
+ github.com/zclconf/go-cty v1.13.0 h1:It5dfKTTZHe9aeppbNOda3mN7Ag7sg6QkBNm6TkyFa0=
+ github.com/zclconf/go-cty v1.13.0/go.mod h1:YKQzy/7pZ7iq2jNFzy5go57xdxdWoLLpaEp4u238AE0=
+@@ -1602,6 +1695,7 @@
+ github.com/zeebo/errs v1.3.0 h1:hmiaKqgYZzcVgRL1Vkc1Mn2914BbzB0IBxs+ebeutGs=
+ github.com/zeebo/errs v1.3.0/go.mod h1:sgbWHsvVuTPHcqJJGQ1WhI5KbWlHYz+2+2C/LSEtCw4=
+ github.com/zitadel/logging v0.3.4 h1:9hZsTjMMTE3X2LUi0xcF9Q9EdLo+FAezeu52ireBbHM=
++github.com/zitadel/logging v0.3.4/go.mod h1:aPpLQhE+v6ocNK0TWrBrd363hZ95KcI17Q1ixAQwZF0=
+ github.com/zitadel/oidc v1.13.5 h1:7jhh68NGZitLqwLiVU9Dtwa4IraJPFF1vS+4UupO93U=
+ github.com/zitadel/oidc v1.13.5/go.mod h1:rHs1DhU3Sv3tnI6bQRVlFa3u0lCwtR7S21WHY+yXgPA=
+ go.etcd.io/bbolt v1.3.2/go.mod h1:IbVyRI1SCnLcuJnV2u8VeU0CEYM7e686BmAb1XKL+uU=
+@@ -1629,7 +1723,9 @@
+ go.opentelemetry.io/otel v1.21.0 h1:hzLeKBZEL7Okw2mGzZ0cc4k/A7Fta0uoPgaJCr8fsFc=
+ go.opentelemetry.io/otel v1.21.0/go.mod h1:QZzNPQPm1zLX4gZK4cMi+71eaorMSGT3A4znnUvNNEo=
+ go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.21.0 h1:cl5P5/GIfFh4t6xyruOgJP5QiA1pw4fYYdv6nc6CBWw=
++go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.21.0/go.mod h1:zgBdWWAu7oEEMC06MMKc5NLbA/1YDXV1sMpSqEeLQLg=
+ go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.21.0 h1:tIqheXEFWAZ7O8A7m+J0aPTmpJN3YQ7qetUAdkkkKpk=
++go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.21.0/go.mod h1:nUeKExfxAQVbiVFn32YXpXZZHZ61Cc3s3Rn1pDBGAb0=
+ go.opentelemetry.io/otel/metric v1.21.0 h1:tlYWfeo+Bocx5kLEloTjbcDwBuELRrIFxwdQ36PlJu4=
+ go.opentelemetry.io/otel/metric v1.21.0/go.mod h1:o1p3CA8nNHW8j5yuQLdc1eeqEaPfzug24uvsyIEJRWM=
+ go.opentelemetry.io/otel/sdk v1.21.0 h1:FTt8qirL1EysG6sTQRZ5TokkU8d0ugCj8htOgThZXQ8=
+@@ -1638,6 +1734,7 @@
+ go.opentelemetry.io/otel/trace v1.21.0/go.mod h1:LGbsEB0f9LGjN+OZaQQ26sohbOmiMR+BaslueVtS/qQ=
+ go.opentelemetry.io/proto/otlp v0.7.0/go.mod h1:PqfVotwruBrMGOCsRd/89rSnXhoiJIqeYNgFYFoEGnI=
+ go.opentelemetry.io/proto/otlp v1.0.0 h1:T0TX0tmXU8a3CbNXzEKGeU5mIVOdf0oykP+u2lIVU/I=
++go.opentelemetry.io/proto/otlp v1.0.0/go.mod h1:Sy6pihPLfYHkr3NkUbEhGHFhINUSI/v80hjKIs5JXpM=
+ go.starlark.net v0.0.0-20230525235612-a134d8f9ddca h1:VdD38733bfYv5tUZwEIskMM93VanwNIi5bIKnDrJdEY=
+ go.starlark.net v0.0.0-20230525235612-a134d8f9ddca/go.mod h1:jxU+3+j+71eXOW14274+SmmuW82qJzl6iZSeqEtTGds=
+ go.step.sm/crypto v0.38.0 h1:kRVtzOjplP5xDh9UlenXdDAtXWCfVL6GevZgpiom1Zg=
+@@ -1645,6 +1742,7 @@
+ go.uber.org/atomic v1.4.0/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE=
+ go.uber.org/atomic v1.7.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc=
+ go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto=
++go.uber.org/goleak v1.3.0/go.mod h1:CoHD4mav9JJNrW/WLlf7HGZPjdw8EucARQHekz1X6bE=
+ go.uber.org/multierr v1.1.0/go.mod h1:wR5kodmAFQ0UK8QlbwjlSNy0Z68gJhDJUG5sjR94q/0=
+ go.uber.org/multierr v1.6.0/go.mod h1:cdWPpRnG4AhwMwsgIHip0KRBQjJy5kYEpYjJxpXp9iU=
+ go.uber.org/multierr v1.11.0 h1:blXXJkSxSSfBVBlC76pxqeO+LN3aDfLQo+309xJstO0=
+@@ -1682,8 +1780,8 @@
+ golang.org/x/crypto v0.13.0/go.mod h1:y6Z2r+Rw4iayiXXAIxJIDAJ1zMW4yaTpebo8fPOliYc=
+ golang.org/x/crypto v0.14.0/go.mod h1:MVFd36DqK4CsrnJYDkBA3VC4m2GkXAM0PvzMCn4JQf4=
+ golang.org/x/crypto v0.15.0/go.mod h1:4ChreQoLWfG3xLDer1WdlH5NdlQ3+mwnQq1YTKY+72g=
+-golang.org/x/crypto v0.17.0 h1:r8bRNjWL3GshPW3gkd+RpvzWrZAwPS49OmTGZ/uhM4k=
+-golang.org/x/crypto v0.17.0/go.mod h1:gCAAfMLgwOJRpTjQ2zCCt2OcSfYMTeZVSRtQlPC7Nq4=
++golang.org/x/crypto v0.18.0 h1:PGVlW0xEltQnzFZ55hkuX5+KLyrMYhHld1YHO4AKcdc=
++golang.org/x/crypto v0.18.0/go.mod h1:R0j02AL6hcrfOiy9T4ZYp/rcWeMxM3L6QYxlOuEG1mg=
+ golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
+ golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
+ golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8=
+@@ -1794,8 +1892,8 @@
+ golang.org/x/net v0.11.0/go.mod h1:2L/ixqYpgIVXmeoSA/4Lu7BzTG4KIyPIryS4IsOd1oQ=
+ golang.org/x/net v0.17.0/go.mod h1:NxSsAGuq816PNPmqtQdLE42eU2Fs7NoRIZrHJAlaCOE=
+ golang.org/x/net v0.18.0/go.mod h1:/czyP5RqHAH4odGYxBJ1qz0+CE5WZ+2j1YgoEo8F2jQ=
+-golang.org/x/net v0.19.0 h1:zTwKpTd2XuCqf8huc7Fo2iSy+4RHPd10s4KzeTnVr1c=
+-golang.org/x/net v0.19.0/go.mod h1:CfAk/cbD4CthTvqiEl8NpboMuiuOYsAr/7NOjZJtv1U=
++golang.org/x/net v0.20.0 h1:aCL9BSgETF1k+blQaYUBx9hJ9LOGP3gAVemcZlf1Kpo=
++golang.org/x/net v0.20.0/go.mod h1:z8BVo6PvndSri0LbOE3hAn0apkU+1YvI6E70E9jsnvY=
+ golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
+ golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=
+ golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=
+@@ -1839,8 +1937,8 @@
+ golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
+ golang.org/x/sync v0.0.0-20220929204114-8fcdb60fdcc0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
+ golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
+-golang.org/x/sync v0.5.0 h1:60k92dhOjHxJkrqnwsfl8KuaHbn/5dl0lUPUklKo3qE=
+-golang.org/x/sync v0.5.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
++golang.org/x/sync v0.6.0 h1:5BMeUDZ7vkXGfEr1x9B4bRcTH4lpkTkpdh0T/J+qjbQ=
++golang.org/x/sync v0.6.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
+ golang.org/x/sys v0.0.0-20180823144017-11551d06cbcc/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
+ golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
+ golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
+@@ -1939,8 +2037,8 @@
+ golang.org/x/sys v0.12.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
+ golang.org/x/sys v0.13.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
+ golang.org/x/sys v0.14.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
+-golang.org/x/sys v0.15.0 h1:h48lPFYpsTvQJZF4EKyI4aLHaev3CxivZmv7yZig9pc=
+-golang.org/x/sys v0.15.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
++golang.org/x/sys v0.16.0 h1:xWw16ngr6ZMtmxDyKyIgsE93KNKz5HKmMa3b8ALHidU=
++golang.org/x/sys v0.16.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
+ golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
+ golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
+ golang.org/x/term v0.0.0-20220526004731-065cf7ba2467/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
+@@ -1954,8 +2052,8 @@
+ golang.org/x/term v0.12.0/go.mod h1:owVbMEjm3cBLCHdkQu9b1opXd4ETQWc3BhuQGKgXgvU=
+ golang.org/x/term v0.13.0/go.mod h1:LTmsnFJwVN6bCy1rVCoS+qHT1HhALEFxKncY3WNNh4U=
+ golang.org/x/term v0.14.0/go.mod h1:TySc+nGkYR6qt8km8wUhuFRTVSMIX3XPR58y2lC8vww=
+-golang.org/x/term v0.15.0 h1:y/Oo/a/q3IXu26lQgl04j/gjuBDOBlx7X6Om1j2CPW4=
+-golang.org/x/term v0.15.0/go.mod h1:BDl952bC7+uMoWR75FIrCDx79TPU9oHkTZ9yRbYOrX0=
++golang.org/x/term v0.16.0 h1:m+B6fahuftsE9qjo0VWp2FW0mB3MTJvR0BaMQrq0pmE=
++golang.org/x/term v0.16.0/go.mod h1:yn7UURbUtPyrVJPGPq404EukNFxcm/foM+bV/bfcDsY=
+ golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
+ golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
+ golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
+@@ -2046,8 +2144,8 @@
+ golang.org/x/tools v0.1.7/go.mod h1:LGqMHiF4EqQNHR1JncWGqT5BVaXmza+X+BDGol+dOxo=
+ golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc=
+ golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU=
+-golang.org/x/tools v0.15.0 h1:zdAyfUGbYmuVokhzVmghFl2ZJh5QhcfebBgmVPFYA+8=
+-golang.org/x/tools v0.15.0/go.mod h1:hpksKq4dtpQWS1uQ61JkdqWM3LscIS6Slf+VVkm+wQk=
++golang.org/x/tools v0.17.0 h1:FvmRgNOcs3kOa+T20R1uhfP9F6HgG2mfxDv1vrx1Htc=
++golang.org/x/tools v0.17.0/go.mod h1:xsh6VxdV005rRVaS6SSAf9oiAqljS7UZUacMZ8Bnsps=
+ golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
+ golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
+ golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
+@@ -2329,6 +2427,7 @@
+ gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
+ gotest.tools v2.2.0+incompatible h1:VsBPFP1AI068pPrMxtb/S8Zkgf9xEmTLJjfM+P5UIEo=
+ gotest.tools/v3 v3.5.1 h1:EENdUnS3pdur5nybKYIh2Vfgc8IUNBjxDPSjtiJcOzU=
++gotest.tools/v3 v3.5.1/go.mod h1:isy3WKz7GK6uNw/sbHzfKBLvlvXwUyV06n6brMxxopU=
+ helm.sh/helm/v3 v3.12.3 h1:5y1+Sbty12t48T/t/CGNYUIME5BJ0WKfmW/sobYqkFg=
+ helm.sh/helm/v3 v3.12.3/go.mod h1:KPKQiX9IP5HX7o5YnnhViMnNuKiL/lJBVQ47GHe1R0k=
+ honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
+@@ -2360,30 +2459,22 @@
+ k8s.io/kubectl v0.28.2/go.mod h1:6EQWTPySF1fn7yKoQZHYf9TPwIl2AygHEcJoxFekr64=
+ k8s.io/utils v0.0.0-20230726121419-3b25d923346b h1:sgn3ZU783SCgtaSJjpcVVlRqd6GSnlTLKgpAAttJvpI=
+ k8s.io/utils v0.0.0-20230726121419-3b25d923346b/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0=
+-lukechampine.com/uint128 v1.2.0 h1:mBi/5l91vocEN8otkC5bDLhi2KdCticRiwbdB0O+rjI=
+-lukechampine.com/uint128 v1.2.0/go.mod h1:c4eWIwlEGaxC/+H1VguhU4PHXNWDCDMUlWdIWl2j1gk=
+-modernc.org/cc/v3 v3.40.0 h1:P3g79IUS/93SYhtoeaHW+kRCIrYaxJ27MFPv+7kaTOw=
+-modernc.org/cc/v3 v3.40.0/go.mod h1:/bTg4dnWkSXowUO6ssQKnOV0yMVxDYNIsIrzqTFDGH0=
+-modernc.org/ccgo/v3 v3.16.13 h1:Mkgdzl46i5F/CNR/Kj80Ri59hC8TKAhZrYSaqvkwzUw=
+-modernc.org/ccgo/v3 v3.16.13/go.mod h1:2Quk+5YgpImhPjv2Qsob1DnZ/4som1lJTodubIcoUkY=
+-modernc.org/ccorpus v1.11.6 h1:J16RXiiqiCgua6+ZvQot4yUuUy8zxgqbqEEUuGPlISk=
+-modernc.org/httpfs v1.0.6 h1:AAgIpFZRXuYnkjftxTAZwMIiwEqAfk8aVB2/oA6nAeM=
+-modernc.org/libc v1.29.0 h1:tTFRFq69YKCF2QyGNuRUQxKBm1uZZLubf6Cjh/pVHXs=
+-modernc.org/libc v1.29.0/go.mod h1:DaG/4Q3LRRdqpiLyP0C2m1B8ZMGkQ+cCgOIjEtQlYhQ=
++modernc.org/fileutil v1.3.0 h1:gQ5SIzK3H9kdfai/5x41oQiKValumqNTDXMvKo62HvE=
++modernc.org/fileutil v1.3.0/go.mod h1:XatxS8fZi3pS8/hKG2GH/ArUogfxjpEKs3Ku3aK4JyQ=
++modernc.org/gc/v3 v3.0.0-20240107210532-573471604cb6 h1:5D53IMaUuA5InSeMu9eJtlQXS2NxAhyWQvkKEgXZhHI=
++modernc.org/gc/v3 v3.0.0-20240107210532-573471604cb6/go.mod h1:Qz0X07sNOR1jWYCrJMEnbW/X55x206Q7Vt4mz6/wHp4=
++modernc.org/libc v1.41.0 h1:g9YAc6BkKlgORsUWj+JwqoB1wU3o4DE3bM3yvA3k+Gk=
++modernc.org/libc v1.41.0/go.mod h1:w0eszPsiXoOnoMJgrXjglgLuDy/bt5RR4y3QzUUeodY=
+ modernc.org/mathutil v1.6.0 h1:fRe9+AmYlaej+64JsEEhoWuAYBkOtQiMEU7n/XgfYi4=
+ modernc.org/mathutil v1.6.0/go.mod h1:Ui5Q9q1TR2gFm0AQRqQUaBWFLAhQpCwNcuhBOSedWPo=
+ modernc.org/memory v1.7.2 h1:Klh90S215mmH8c9gO98QxQFsY+W451E8AnzjoE2ee1E=
+ modernc.org/memory v1.7.2/go.mod h1:NO4NVCQy0N7ln+T9ngWqOQfi7ley4vpwvARR+Hjw95E=
+-modernc.org/opt v0.1.3 h1:3XOZf2yznlhC+ibLltsDGzABUGVx8J6pnFMS3E4dcq4=
+-modernc.org/opt v0.1.3/go.mod h1:WdSiB5evDcignE70guQKxYUl14mgWtbClRi5wmkkTX0=
+-modernc.org/sqlite v1.27.0 h1:MpKAHoyYB7xqcwnUwkuD+npwEa0fojF0B5QRbN+auJ8=
+-modernc.org/sqlite v1.27.0/go.mod h1:Qxpazz0zH8Z1xCFyi5GSL3FzbtZ3fvbjmywNogldEW0=
+-modernc.org/strutil v1.1.3 h1:fNMm+oJklMGYfU9Ylcywl0CO5O6nTfaowNsh2wpPjzY=
+-modernc.org/strutil v1.1.3/go.mod h1:MEHNA7PdEnEwLvspRMtWTNnp2nnyvMfkimT1NKNAGbw=
+-modernc.org/tcl v1.15.2 h1:C4ybAYCGJw968e+Me18oW55kD/FexcHbqH2xak1ROSY=
+-modernc.org/token v1.0.1 h1:A3qvTqOwexpfZZeyI0FeGPDlSWX5pjZu9hF4lU+EKWg=
+-modernc.org/token v1.0.1/go.mod h1:UGzOrNV1mAFSEB63lOFHIpNRUVMvYTc6yu1SMY/XTDM=
+-modernc.org/z v1.7.3 h1:zDJf6iHjrnB+WRD88stbXokugjyc0/pB91ri1gO6LZY=
++modernc.org/sqlite v1.29.3 h1:6L71d3zXVB8oubdVSuwiurNyYRetQ3It8l1FSwylwQ0=
++modernc.org/sqlite v1.29.3/go.mod h1:MjUIBKZ+tU/lqjNLbVAAMjsQPdWdA/ciwdhsT9kBwk8=
++modernc.org/strutil v1.2.0 h1:agBi9dp1I+eOnxXeiZawM8F4LawKv4NzGWSaLfyeNZA=
++modernc.org/strutil v1.2.0/go.mod h1:/mdcBmfOibveCTBxUl5B5l6W+TTH1FXPLHZE6bTosX0=
++modernc.org/token v1.1.0 h1:Xl7Ap9dKaEs5kLoOQeQmPWevfnk/DM5qcLcYlA8ys6Y=
++modernc.org/token v1.1.0/go.mod h1:UGzOrNV1mAFSEB63lOFHIpNRUVMvYTc6yu1SMY/XTDM=
+ oras.land/oras-go v1.2.4-0.20230829103011-4d0bf161925b h1:l686f99tTmPu2ivMXCQeEup0BRgl+JH9IPNEbqAude0=
+ oras.land/oras-go v1.2.4-0.20230829103011-4d0bf161925b/go.mod h1:3epPRss3O+fN+y5SrffVQuubeSpw9atz1gcaAX+V0Tw=
+ oras.land/oras-go/v2 v2.3.1 h1:lUC6q8RkeRReANEERLfH86iwGn55lbSWP20egdFHVec=
+@@ -2405,3 +2496,4 @@
+ sigs.k8s.io/yaml v1.4.0 h1:Mk1wCc2gy/F0THH0TAp1QYyJNzRm2KCLy3o5ASXVI5E=
+ sigs.k8s.io/yaml v1.4.0/go.mod h1:Ejl7/uTz7PSA4eKMyQCUTnhZYNmLIl+5c2lQPGR2BPY=
+ software.sslmate.com/src/go-pkcs12 v0.2.0 h1:nlFkj7bTysH6VkC4fGphtjXRbezREPgrHuJG20hBGPE=
++software.sslmate.com/src/go-pkcs12 v0.2.0/go.mod h1:23rNcYsMabIc1otwLpTkCCPwUq6kQsTyowttG/as0kQ=
diff --git a/testing/zot/zot.confd b/testing/zot/zot.confd
new file mode 100644
index 00000000000..cd2532640b3
--- /dev/null
+++ b/testing/zot/zot.confd
@@ -0,0 +1,10 @@
+# zot service configuration options
+
+# user:group to run the process with
+#command_user="zot:zot"
+
+# location of the configuration file
+#cfgfile="/etc/zot/config.json"
+
+# comment to use traditional service management
+supervisor=supervise-daemon
diff --git a/testing/zot/zot.initd b/testing/zot/zot.initd
new file mode 100644
index 00000000000..50acbbf4ee2
--- /dev/null
+++ b/testing/zot/zot.initd
@@ -0,0 +1,22 @@
+#!/sbin/openrc-run
+
+: ${command_user:="zot:zot"}
+: ${cfgfile:="/etc/zot/config.json"}
+
+name=zot
+description="OCI-native container image registry"
+command="/usr/bin/zot"
+command_args="serve $cfgfile"
+command_background="yes"
+pidfile="/run/$RC_SVCNAME.pid"
+
+required_files="$cfgfile"
+
+depend() {
+ need net localmount
+ after firewall
+}
+
+start_pre() {
+ $command verify "$cfgfile"
+}
diff --git a/testing/zot/zot.pre-install b/testing/zot/zot.pre-install
new file mode 100644
index 00000000000..1172808ceef
--- /dev/null
+++ b/testing/zot/zot.pre-install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+addgroup -S zot 2>/dev/null
+adduser -S -D -h /var/lib/zot -s /sbin/nologin -G zot -g zot zot 2>/dev/null
+
+exit 0
diff --git a/testing/zrepl/APKBUILD b/testing/zrepl/APKBUILD
index e2ced22fa51..17376cf571b 100644
--- a/testing/zrepl/APKBUILD
+++ b/testing/zrepl/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Shawn Rose <shawnandrewrose@gmail.com>
# Maintainer: Shawn Rose <shawnandrewrose@gmail.com>
pkgname=zrepl
-pkgver=0.5.0
+pkgver=0.6.1
pkgrel=3
pkgdesc="one-stop, integrated solution for ZFS replication"
url="https://zrepl.github.io/"
@@ -20,7 +20,9 @@ source="
zrepl.initd
"
-export GOPATH="$srcdir"
+export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
+export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
+export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
build() {
export GO111MODULE=on
@@ -57,7 +59,7 @@ cleanup_srcdir() {
}
sha512sums="
-df92c0b98a3fd2d178cfc4063a2d8be15680a95437d172ba4d43ed0c97976c30a789fe8fd0c5d76fd918499319a0222ef5342325e351dec1ae7d40f424c55939 zrepl-0.5.0.tar.gz
+0fb28014f4c50d2512eec2b767883b342f8fc6cd5661dd04bebfb75d9774f4face9402202e2e830c0ca9b831502fdeac1c00e874ea3b0e9188c8df54e353dc70 zrepl-0.6.1.tar.gz
ae39a92de1bfd3f0e957b70d02fe05918426fab9203da99d9ee2ee81c173f67e3a55ae525126c4cb0966d0911d7a5bb4c0977915bc0bd11c9a1b607777d39286 zrepl.yml
a6c77686e0189aec4e1ab281d6473c530f9b4371738aca392a6dd6599ed554af9e7d50d68221b4d575bdf3f607640892da34a96d53847d74bbfcf75a25b1836a zrepl.initd
"
diff --git a/testing/zsh-fast-syntax-highlighting/APKBUILD b/testing/zsh-fast-syntax-highlighting/APKBUILD
new file mode 100644
index 00000000000..d307f0f3b8b
--- /dev/null
+++ b/testing/zsh-fast-syntax-highlighting/APKBUILD
@@ -0,0 +1,34 @@
+# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
+# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
+pkgname=zsh-fast-syntax-highlighting
+pkgver=1.55_git20230705
+_gitrev=cf318e06a9b7c9f2219d78f41b46fa6e06011fd9
+pkgrel=0
+pkgdesc="Feature-rich syntax highlighting for ZSH"
+url="https://github.com/zdharma-continuum/fast-syntax-highlighting"
+arch="noarch"
+license="BSD-3-Clause"
+depends="zsh"
+#checkdepends="zunit"
+subpackages="$pkgname-doc"
+source="fast-syntax-highlighting-$_gitrev.tar.gz::https://github.com/zdharma-continuum/fast-syntax-highlighting/archive/$_gitrev.tar.gz"
+builddir="$srcdir/fast-syntax-highlighting-$_gitrev"
+options="!check" # zunit is not currently packaged
+
+package() {
+ mkdir -p "$pkgdir"/usr/share/zsh/plugins
+ install -Dm 644 LICENSE "$pkgdir"/usr/share/licenses/"$pkgname"/LICENSE
+ install -Dm 644 CHROMA_GUIDE.adoc -t "$pkgdir"/usr/share/doc/"$pkgname"/
+ install -Dm 644 THEME_GUIDE.md -t "$pkgdir"/usr/share/doc/"$pkgname"/
+
+ rm test tests images .github -r
+ rm .fast* .gitignore .zunit.yml
+ rm CHANGELOG.md CHROMA_GUIDE.adoc LICENSE README.md THEME_GUIDE.md
+
+ mkdir -p "$pkgdir"/usr/share/zsh/plugins/fast-syntax-highlighting
+ mv ./* "$pkgdir"/usr/share/zsh/plugins/fast-syntax-highlighting
+}
+
+sha512sums="
+805bf31b305c32cc2509a3cf28d4f49d94dcdf32dcd91dab9d2933be71d34c15b1b8a948dc48fe00642d8799fda41743d914dca0c13b75b5b13277e07750d22c fast-syntax-highlighting-cf318e06a9b7c9f2219d78f41b46fa6e06011fd9.tar.gz
+"
diff --git a/testing/zsh-histdb-skim/APKBUILD b/testing/zsh-histdb-skim/APKBUILD
new file mode 100644
index 00000000000..6141ccf38f6
--- /dev/null
+++ b/testing/zsh-histdb-skim/APKBUILD
@@ -0,0 +1,45 @@
+# Contributor: Jakub Jirutka <jakub@jirutka.cz>
+# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
+pkgname=zsh-histdb-skim
+pkgver=0.8.6
+pkgrel=0
+pkgdesc="A zsh histdb browser using skim"
+url="https://github.com/m42e/zsh-histdb-skim"
+# riscv64: textrels
+# s390x: fails to build nix crate
+arch="all !riscv64 !s390x"
+license="MIT"
+depends="zsh-histdb"
+makedepends="
+ cargo
+ cargo-auditable
+ sqlite-dev
+ "
+source="https://github.com/m42e/zsh-histdb-skim/archive/v$pkgver/zsh-histdb-skim-$pkgver.tar.gz"
+
+prepare() {
+ default_prepare
+
+ cargo fetch --locked
+}
+
+build() {
+ cargo auditable build --frozen --release
+}
+
+check() {
+ cargo test --frozen
+}
+
+package() {
+ local plugname="${pkgname#zsh-}"
+
+ install -D -m755 target/release/$pkgname -t "$pkgdir"/usr/bin/
+
+ install -D -m644 zsh-histdb-skim-vendored.zsh \
+ "$pkgdir"/usr/share/zsh/plugins/$plugname/$plugname.plugin.zsh
+}
+
+sha512sums="
+36e5ecc5b1b4c4fa04b07d54b1e319b5726b721cbaff480dfa2c5c78528b94d120dcc35f6878fd3c34e1f5afc3b77171cb9f3f67b7c21e093bff2a789579c90f zsh-histdb-skim-0.8.6.tar.gz
+"
diff --git a/testing/zsh-manydots-magic/APKBUILD b/testing/zsh-manydots-magic/APKBUILD
new file mode 100644
index 00000000000..2147ab50460
--- /dev/null
+++ b/testing/zsh-manydots-magic/APKBUILD
@@ -0,0 +1,21 @@
+# Maintainer: Hugo Osvaldo Barrera <hugo@whynothugo.nl>
+pkgname=zsh-manydots-magic
+pkgver=0_git20230607
+_commit=4372de0718714046f0c7ef87b43fc0a598896af6
+pkgrel=1
+pkgdesc="zle tweak for emulating ...==../.. etc"
+url="https://github.com/knu/zsh-manydots-magic"
+arch="noarch"
+license="BSD-2-Clause"
+depends="zsh"
+source="$pkgname-$pkgver.tar.gz::https://github.com/knu/zsh-manydots-magic/archive/$_commit.tar.gz"
+builddir="$srcdir/$pkgname-$_commit"
+options="!check" # No testsuite
+
+package() {
+ install -Dm644 manydots-magic -t "$pkgdir/usr/share/zsh/site-functions/"
+}
+
+sha512sums="
+5221bfdd0893eed3fe7d3d2fbcd8e43c2eef484c7425dab846b986ae8b7068509c77a7412413a1e9644485ad0aae9683b4cd916d9669b2b62e65d8d53845be51 zsh-manydots-magic-0_git20230607.tar.gz
+"
diff --git a/testing/zulip-term/APKBUILD b/testing/zulip-term/APKBUILD
deleted file mode 100644
index bf58de89b0b..00000000000
--- a/testing/zulip-term/APKBUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-# Contributor: omni <omni+alpine@hack.org>
-# Maintainer: omni <omni+alpine@hack.org>
-pkgname=zulip-term
-_pkgname=zulip-terminal
-pkgver=0.6.0
-pkgrel=2
-pkgdesc="official terminal client for Zulip"
-url="https://github.com/zulip/zulip-terminal"
-arch="noarch"
-license="Apache-2.0"
-depends="py3-urwid py3-beautifulsoup4 py3-lxml py3-typing-extensions \
- py3-dateutil py3-tzlocal py3-urwid_readline py3-zulip"
-makedepends="py3-setuptools"
-subpackages="$pkgname-doc"
-options="!check" # legacy dependencies
-source="$pkgname-$pkgver.tar.gz::https://github.com/zulip/zulip-terminal/archive/$pkgver.tar.gz"
-builddir="$srcdir/$_pkgname-$pkgver"
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-
- install -Dm0644 -t "$pkgdir"/usr/share/doc/"$pkgname" \
- docs/getting-started.md \
- docs/FAQ.md
- install -Dm0644 LICENSE -t "$pkgdir"/usr/share/doc/"$pkgname"
-}
-
-sha512sums="df6b5d4364b42711e15d12519c89e301402bf921f61bdcd04bb445fe12c10de466c43f850785208b441bc0c95608d52f8da197716dd5ed80b483cd9aa14e21c3 zulip-term-0.6.0.tar.gz"
diff --git a/testing/zutty/APKBUILD b/testing/zutty/APKBUILD
new file mode 100644
index 00000000000..74120ef9601
--- /dev/null
+++ b/testing/zutty/APKBUILD
@@ -0,0 +1,37 @@
+# Contributor: Hakan Erduman <hakan@erduman.de>
+# Maintainer: Hakan Erduman <hakan@erduman.de>
+pkgname=zutty
+pkgver=0.14
+pkgrel=0
+pkgdesc="Zero-cost unicode teletype - a high-end terminal for low-end systems"
+url="https://tomscii.sig7.se/zutty"
+arch="all !x86"
+license="GPL-3.0-or-later"
+makedepends="
+ freetype-dev
+ libxmu-dev
+ mesa-dev
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/tomscii/zutty/archive/refs/tags/$pkgver.tar.gz"
+options="!check" # only manual tests available
+
+build() {
+ python3 waf configure --prefix=/usr
+ python3 waf build
+}
+
+package() {
+ python3 waf install --destdir="$pkgdir"
+ # upstream does not handle localization so .desktop and icons are as-is
+ install -Dm664 "$srcdir/$pkgname-$pkgver"/icons/zutty.desktop "$pkgdir"/usr/share/applications/zutty.desktop
+ install -Dm664 "$srcdir/$pkgname-$pkgver"/icons/zutty.svg "$pkgdir"/usr/share/icons/hicolor/scalable/apps/zutty.svg
+ for d in "$srcdir/$pkgname-$pkgver"/icons/zutty_*x*.png; do
+ dd=$(basename "$d" .png | cut -d'_' -f2)
+ install -Dm664 "$d" "$pkgdir"/usr/share/icons/hicolor/"$dd"/zutty.png
+ done
+ # upstream has no man-page, just org-mode ASCII text
+}
+
+sha512sums="
+d73894feefa1fb58c76aa5f9d68a47b9871ab8d02eb5dd2575769c4f082a65cb9df2bdb2478e5aa54d121eb19a16269f169e79d72f0df779760520f2d501c086 zutty-0.14.tar.gz
+"
diff --git a/testing/zycore/APKBUILD b/testing/zycore/APKBUILD
new file mode 100644
index 00000000000..797044f016a
--- /dev/null
+++ b/testing/zycore/APKBUILD
@@ -0,0 +1,38 @@
+# Contributor: Michael M <mic@hael.xyz>
+# Maintainer: Michael M <mic@hael.xyz>
+pkgname=zycore
+pkgver=1.5.0
+pkgrel=0
+pkgdesc="Independent types for Zyantific projects (development files)"
+url="https://github.com/zyantific/zycore-c"
+arch="x86 x86_64 aarch64 armhf armv7 ppc64le riscv64"
+license="MIT"
+makedepends="cmake samurai doxygen"
+subpackages="$pkgname-dev $pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/zyantific/zycore-c/archive/v$pkgver/zycore-c-$pkgver.tar.gz"
+builddir="$srcdir/zycore-c-$pkgver"
+
+build() {
+ if [ "$CBUILD" != "$CHOST" ]; then
+ local crossopts="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DZYCORE_BUILD_SHARED_LIB=ON \
+ -DCMAKE_BUILD_TYPE=None \
+ $crossopts
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+f57af4e5c6f919299e673ff4afd19a7e3cc01acaf5cde73db47063eb30881487fa33d2fd5707a3e55a8cd8df4bb4b668bc7273b8b8b5eebea1e78c1c36f715b2 zycore-1.5.0.tar.gz
+"
diff --git a/testing/zydis/APKBUILD b/testing/zydis/APKBUILD
new file mode 100644
index 00000000000..de687bade6e
--- /dev/null
+++ b/testing/zydis/APKBUILD
@@ -0,0 +1,42 @@
+# Contributor: Michael M <mic@hael.xyz>
+# Maintainer: Michael M <mic@hael.xyz>
+pkgname=zydis
+pkgver=4.1.0
+pkgrel=0
+pkgdesc="Fast and lightweight x86/x86-64 disassembler and code generation library"
+url="https://zydis.re"
+arch="x86 x86_64 aarch64 armhf armv7"
+license="MIT"
+depends_dev="zycore-dev"
+makedepends="cmake samurai doxygen zycore-dev"
+checkdepends="python3"
+subpackages="$pkgname-dev $pkgname-doc"
+source="https://github.com/zyantific/zydis/archive/v$pkgver/zydis-$pkgver.tar.gz"
+
+build() {
+ if [ "$CBUILD" != "$CHOST" ]; then
+ local crossopts="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DZYDIS_BUILD_SHARED_LIB=ON \
+ -DCMAKE_BUILD_TYPE=None \
+ -DZYAN_SYSTEM_ZYCORE=ON \
+ -DPACKAGE_PREFIX_DIR=/usr \
+ -DZYDIS_BUILD_TESTS="$(want_check && echo ON || echo OFF)" \
+ $crossopts
+ cmake --build build
+}
+
+check() {
+ ctest --test-dir build --output-on-failure
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install build
+}
+
+sha512sums="
+e07add4d43768ded02a238911fde6e74d2391abf8df282f774fca1a8c3fca3e97b03e90e0f3c7c0f3c75485fb29c0be4071d5e5b2e23dd5b8b1a864e3b713fbc zydis-4.1.0.tar.gz
+"